diff --git a/docker/statistics/.gitattributes b/docker/statistics/.gitattributes deleted file mode 100755 index 967315dd..00000000 --- a/docker/statistics/.gitattributes +++ /dev/null @@ -1,5 +0,0 @@ -* text=auto -*.css linguist-vendored -*.scss linguist-vendored -*.js linguist-vendored -CHANGELOG.md export-ignore diff --git a/docker/statistics/.gitmodules b/docker/statistics/.gitmodules deleted file mode 100644 index e69de29b..00000000 diff --git a/docker/statistics/.gitmodules.example b/docker/statistics/.gitmodules.example deleted file mode 100644 index fc4915ec..00000000 --- a/docker/statistics/.gitmodules.example +++ /dev/null @@ -1,70 +0,0 @@ -[submodule "Modules/WardManagement"] - path = Modules/WardManagement - url = https://bitbucket.org/dcsammi/streamline_ward_management.git - git clone git@bitbucket.org:dcsammi/streamline_hiv.git -[submodule "Modules/Reports"] - path = Modules/Reports - url = https://bitbucket.org/dcsammi/streamline_reports.git -[submodule "Modules/Theatre"] - path = Modules/Theatre - url = https://bitbucket.org/dcsammi/streamline_theatre.git -[submodule "Modules/Stores"] - path = Modules/Stores - url = https://bitbucket.org/dcsammi/streamline_stores.git -[submodule "Modules/Antenatal"] - path = Modules/Antenatal - url = https://bitbucket.org/dcsammi/streamline_ante_natal.git -[submodule "Modules/Banking"] - path = Modules/Banking - url = https://bitbucket.org/dcsammi/streamline_banking.git -[submodule "Modules/Budgets"] - path = Modules/Budgets - url = https://bitbucket.org/dcsammi/streamline_budgets.git -[submodule "Modules/Diabetes"] - path = Modules/Diabetes - url = https://bitbucket.org/dcsammi/streamline_diabetes.git -[submodule "Modules/Expenses"] - path = Modules/Expenses - url = https://bitbucket.org/dcsammi/streamline_expenses.git -[submodule "Modules/EyeClinic"] - path = Modules/EyeClinic - url = https://bitbucket.org/dcsammi/streamline_eye_clinic.git -[submodule "Modules/Finance"] - path = Modules/Finance - url = https://bitbucket.org/dcsammi/streamline_finance.git -[submodule "Modules/FinanceReports"] - path = Modules/FinanceReports - url = https://bitbucket.org/dcsammi/streamline_finance_reports.git -[submodule "Modules/Hiv"] - path = Modules/Hiv - url = https://bitbucket.org/dcsammi/streamline_hiv.git -[submodule "Modules/Insurance"] - path = Modules/Insurance - url = https://bitbucket.org/dcsammi/streamline_insurance.git -[submodule "Modules/Investigations"] - path = Modules/Investigations - url = https://bitbucket.org/dcsammi/streamline_investigations.git -[submodule "Modules/Invoices"] - path = Modules/Invoices - url = https://bitbucket.org/dcsammi/streamline_invoices.git -[submodule "Modules/Journals"] - path = Modules/Journals - url = https://bitbucket.org/dcsammi/streamline_journals.git -[submodule "Modules/Maternity"] - path = Modules/Maternity - url = https://bitbucket.org/dcsammi/streamline_maternity.git -[submodule "Modules/PatientDiscounts"] - path = Modules/PatientDiscounts - url = https://bitbucket.org/dcsammi/streamline_patient_discounts.git -[submodule "Modules/PatientFinance"] - path = Modules/PatientFinance - url = https://bitbucket.org/dcsammi/streamline_patient_finance.git -[submodule "Modules/Payroll"] - path = Modules/Payroll - url = https://bitbucket.org/dcsammi/streamline_payroll.git -[submodule "Modules/Pharmacy"] - path = Modules/Pharmacy - url = https://bitbucket.org/dcsammi/streamline_pharmacy.git -[submodule "Modules/Cancer"] - path = Modules/Cancer - url = https://bitbucket.org/dcsammi/streamline_cancer.git diff --git a/docker/statistics/Dockerfile b/docker/statistics/Dockerfile index 12a07b59..707fe3e5 100644 --- a/docker/statistics/Dockerfile +++ b/docker/statistics/Dockerfile @@ -18,7 +18,7 @@ RUN curl -sS https://getcomposer.org/installer | \ WORKDIR /app # install composer dependencies -COPY . . +COPY . /app RUN composer install diff --git a/docker/statistics/Makefile b/docker/statistics/Makefile deleted file mode 100644 index 953d424c..00000000 --- a/docker/statistics/Makefile +++ /dev/null @@ -1,70 +0,0 @@ -.PHONY: hello_world - -container=app - -hello_world: - @echo "Hello World, this is the makefile for Streamline" - -# make initialize_project -initialize_project: - bash ./scripts/add_submodules.sh - if ! [ -f .env ];then cp .env.example .env;fi - @echo "Please fill in the environmental variables in the .env file" - -# make remove_submodules -remove_submodules: - bash ./scripts/remove_submodules.sh - bash ./scripts/add_submodules.sh - -add_submodules: - bash ./scripts/add_submodules.sh - -add_submodules_local: - bash ./scripts/add_submodules_local.sh - -# make checkout_to_branch branch='the branch you want' -checkout_to_branch: - bash ./scripts/checkout_to_branch.sh - -# make update_instance -update_instance: - bash ./scripts/update_instance.sh - -# make update_instance_all_branches -update_instance_all_branches: - bash ./scripts/update_instance_all_branches.sh - -# make build_local_app for instances not using docker -build_local_app: - composer install - php artisan key:generate - php artisan storage:link - php artisan migrate --seed - sudo chmod 777 -R storage - sudo chmod 777 -R bootstrap/cache - sudo chmod 777 -R public/uploads - sudo chown -R www-data:www-data storage - sudo chown -R www-data:www-data bootstrap/cache - sudo chown -R www-data:www-data public/uploads - -# make build_docker_app -build_docker_app: - docker-compose build ${container} - docker-compose up -d - docker-compose run --rm ${container} composer install - docker-compose run --rm ${container} php artisan key:generate - docker-compose run --rm ${container} php artisan storage:link - docker-compose run --rm ${container} php artisan migrate --seed - docker-compose run --rm ${container} chmod 777 -R /var/www/storage - docker-compose run --rm ${container} chmod 777 -R /var/www/bootstrap/cache - docker-compose run --rm ${container} chmod 777 -R /var/www/public/uploads - docker-compose run --rm ${container} chown -R www-data:www-data /var/www/storage - docker-compose run --rm ${container} chown -R www-data:www-data /var/www/bootstrap/cache - docker-compose run --rm ${container} chown -R www-data:www-data /var/www/public/uploads - -# make clean_project -clean_project: - docker-compose run --rm ${container} php artisan cache:clear - docker-compose run --rm ${container} php artisan view:clear - - diff --git a/docker/statistics/Modules/Antenatal/Config/config.php b/docker/statistics/Modules/Antenatal/Config/config.php deleted file mode 100644 index 96ee2ac1..00000000 --- a/docker/statistics/Modules/Antenatal/Config/config.php +++ /dev/null @@ -1,5 +0,0 @@ - 'Antenatal' -]; diff --git a/docker/statistics/Modules/Antenatal/Http/Controllers/AnteNatalClinicController.php b/docker/statistics/Modules/Antenatal/Http/Controllers/AnteNatalClinicController.php deleted file mode 100755 index 10007f6d..00000000 --- a/docker/statistics/Modules/Antenatal/Http/Controllers/AnteNatalClinicController.php +++ /dev/null @@ -1,1746 +0,0 @@ -middleware('auth'); - } - public static $obstetric_outcomes = ['' => "-- Select--", '1' => "Fresh SB", '2' => "Live Multiple", '3' => "Live Singleton", '4' => "Mascerated SB", '5' => "Spontaneous Abortion"]; - public static $child_immunisation_status = ['' => "-- Select--", '1' => "Not Started", '2' => "Ongoing", '3' => "Completed"]; - public static $menses_amount = ['' => "-- Select--", '1' => "Heavy", '2' => "Normal", '3' => "Completed"]; - public static $family_history = ['1' => "Diabetes", '2' => "Sickel cell", '3' => "Hypertension", '4' => "Twins", '5' => "Others"]; - public static $fractures = ['1' => "Pelvis", '2' => "Spine", '3' => "Femur"]; - public static $obs_gyn = ['1' => "D & C", '2' => "Ectopic pregnancy", '3' => "PPH", '4' => "Retained Placenta"]; - public static $medical_presentations = ['1' => "STIs", '2' => "Cardiac Disease", '3' => "Asthma", '4' => "Sickel cell", '5' => "Kidney disease", '6' => "Diabetes", '7' => "Hypertension", '8' => "Cardiac disease", '9' => "Epilepsy (Seizures)", '10' => "Tuberculosis"]; - /** - * Display a listing of all patient pregnancies. - * - * @return \Illuminate\Http\Response - */ - public function index() - { - $episode_id = session()->get('episode_id'); - $patient_id = session()->get('patient_id'); - $patient = Patient::find($patient_id); - $categories = DB::table('patient_categories')->pluck("name", "id"); - $marital_statuses = DB::table('marital_statuses')->pluck("name", "id"); - $drug_categories = DB::table('drug_categories')->get(); - $documents = PatientDocument::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_allergies = Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->pluck('name', 'id'); - - $anc_registrations = AnteNatalClinicRegistration::where(['patient_id' => $patient_id])->orderBy('created_at', 'desc')->paginate(20); - return view('antenatal::ante_natal_clinic.index', compact('patient_id', 'patient', 'anc_registrations', 'categories', 'marital_statuses', 'drug_categories', 'documents', 'known_patient_allergies', 'known_patient_alerts', 'drug_categories_array')); - } - - /** - * Display a listing of all ante natal visits. - * - * @return \Illuminate\Http\Response - */ - public function index_visits() - { - $episode_id = session()->get('episode_id'); - $patient_id = session()->get('patient_id'); - $patient = Patient::find($patient_id); - $categories = DB::table('patient_categories')->pluck("name", "id"); - $marital_statuses = DB::table('marital_statuses')->pluck("name", "id"); - $drug_categories = DB::table('drug_categories')->get(); - $documents = PatientDocument::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_allergies = Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->pluck('name', 'id'); - - $anc_followup_records = AnteNatalClinicFollowup::where(['patient_id' => $patient_id])->orderBy('created_at', 'desc')->get()->groupBy('ante_natal_clinic_registration_id'); - return view('antenatal::ante_natal_clinic.index_visits', compact('patient_id', 'patient', 'anc_followup_records', 'categories', 'marital_statuses', 'drug_categories', 'documents', 'known_patient_allergies', 'known_patient_alerts', 'drug_categories_array')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - $episode_id = session()->get('episode_id'); - $patient_id = session()->get('patient_id'); - $existing_anc_registration = AnteNatalClinicRegistration::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - //if an anc_registration of this episode exists, show the details page instead - if (!is_null($existing_anc_registration)) { - if ($existing_anc_registration->complete == 0) { - // - } - flash('Pregnancy record for this episode already exists')->error(); - return redirect('ante_natal_clinic'); - } - - $patient = Patient::where(['id' => $patient_id])->first(); - $previous_medical_conditions = AnteNatalMotherHistory::where([['patient_id', $patient_id],['episode_id', '<>', $episode_id]])->latest()->first(['medical_presentations']); - $last_five_pregnancies = AnteNatalClinicRegistration::where([['patient_id', $patient_id],['episode_id', '<>', $episode_id]])->latest()->take(5)->get(); - $categories = DB::table('patient_categories')->pluck("name", "id"); - $marital_statuses = DB::table('marital_statuses')->pluck("name", "id"); - $diagnoses = DB::table('diagnoses')->whereNull('deleted_at')->orderBy('name', 'asc')->pluck("name", "id")->prepend('- select -', ''); - $drug_categories = DB::table('drug_categories')->get(); - $documents = PatientDocument::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_allergies = Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->pluck('name', 'id'); - $family_planning_methods = FamilyPlanningMethod::orderBy('name', 'asc')->pluck("name", "id")->prepend('- Select -', ''); - $gender_based_violence = GenderViolence::orderBy('name', 'asc')->pluck("name", "id")->prepend('- Select -', ''); - $uterus_operations = Procedure::where('hmis_category_inpatient', 10046)->orderBy('name', 'asc')->pluck("name", "id")->prepend('- Select -', ''); - $caesarian_sections = CaesarianSection::orderBy('name', 'asc')->pluck("name", "id")->prepend('- Select -', ''); - $triage_id = get_name($episode_id, "id", "triage_id", "patient_episodes"); - $triage = Triage::where(['id' => $triage_id])->first(); - // collect chronic drug ids as array - $chronic_drugs_array = ChronicPatient::where('patient_id', $patient_id)->whereNotNull('drug_id')->get(['drug_id']); - $chronic_results = Drug::whereIn('id', $chronic_drugs_array)->get(); - //select treatment - $treatment = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'tta' => 0])->first(); - $blood_groups = DB::table('blood_groups')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $referrals = DB::table('referral_hospitals')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $accuracies = DB::table('ante_natal_clinic_accuracies')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $anc_outcomes = DB::table('ante_natal_clinic_outcomes')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $obstetric_history_details = ObstetricHistory::where(['patient_id' => $patient_id])->orderBy('obstetric_date', 'desc')->get(); - $hiv_statuses = ['' => '-- Select --', '0' => 'Negative', '1' => 'Positive', '3' => 'Unknown']; - $previous_consultations = Consultation::leftJoin('patient_episodes as p','p.id','consultations.episode_id')->where([['consultations.patient_id', $patient_id],['episode_id', '<>',$episode_id]])->latest()->take(5)->get(['consultations.created_at','p.clinic_id', 'primary_diagnosis', 'other_diagnoses', 'consultations.created_by','episode_id','consultations.id']); - $previous_surgeries = Surgery::where([['patient_id', $patient_id],['episode_id', '<>',$episode_id]])->latest()->take(5)->get(['created_at', 'primary_diagnosis', 'other_diagnoses', 'created_by','episode_id','procedure_id']); - /* episode details */ - $episode = PatientEpisode::find($episode_id); - /* get treatment */ - $treatments = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'tta' => 0])->get(); - /* get ordered procedures */ - $ordered_procedures = OrderedProcedure::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - //check for ordered investigations,procedures and treatment - $ordered_investigations = OrderedInvestigation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - /* get ordered sundries */ - $ordered_sundries = OrderedSundry::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - //check for authenticated investigations - $investigation_results = InvestigationResults::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $diagnoses_all = DB::table('diagnoses')->select('id', 'prompts', 'reference_areas', 'reference_names')->get(); - /* ======== added to cater for review episode =========*/ - $is_episode_a_review = check_if_episode_is_a_followup($episode->id); - $parent_episode_treatments = []; - $parent_episode_ordered_procedures = []; - $parent_episode_ordered_investigations = []; - $parent_episode_ordered_sundries = []; - $parent_episode_investigation_results = []; - - if ($is_episode_a_review) { - $parent_episode_details = PatientEpisode::find($episode->parent_episode_id); - - $parent_episode_treatments = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $parent_episode_details->id, 'tta' => 0])->get(); - $parent_episode_ordered_procedures = OrderedProcedure::where(['patient_id' => $patient_id, 'episode_id' => $parent_episode_details->id])->get(); - $parent_episode_ordered_investigations = OrderedInvestigation::where(['patient_id' => $patient_id, 'episode_id' => $parent_episode_details->id])->get(); - /* get ordered sundries */ - $parent_episode_ordered_sundries = OrderedSundry::where(['patient_id' => $patient_id, 'episode_id' => $parent_episode_details->id])->get(); - //check for authenticated investigations - $parent_episode_investigation_results = InvestigationResults::where(['patient_id' => $patient_id, 'episode_id' => $parent_episode_details->id])->get(); - } - /* ========end of varibales added to cater for review episodes ========*/ - - return view('antenatal::ante_natal_clinic.create', compact('patient', 'patient_id', 'previous_surgeries','previous_medical_conditions', 'episode_id', 'gender_based_violence', 'last_five_pregnancies', 'uterus_operations', 'caesarian_sections', 'triage', 'treatment', 'categories', 'marital_statuses', 'drug_categories', 'documents', 'blood_groups', 'hiv_statuses', 'accuracies', 'referrals', 'anc_outcomes', 'known_patient_allergies', 'known_patient_alerts', 'drug_categories_array', 'obstetric_history_details', 'episode', 'ordered_procedures', 'ordered_investigations', 'investigation_results', 'treatments', 'ordered_sundries', 'parent_episode_treatments', 'parent_episode_ordered_procedures', 'parent_episode_ordered_sundries', 'parent_episode_ordered_investigations', 'parent_episode_investigation_results', 'family_planning_methods','previous_consultations', 'diagnoses','chronic_results')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - - - - $url = ""; - /* try to perform this set of db transactions and if any fails, rollback everything */ - DB::transaction(function () use ($request) { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $gravida = $request->gravida; - $para = $request->para; - $abortion = $request->abortion; - $postpartum = $request->postpartum; - $clinic_id = get_name('ante_natal', 'slug', 'id', 'clinics'); //get the id for antenatal clinic from clinics table - for ($k = 1; $k <= $request->pregnancy_number; $k++) { - $pregnancy = 'pregnancy_'.$k; - $obs_date = $pregnancy.'_obstetric_date'; - $gestation = $pregnancy.'_gestation'; - $outcome = $pregnancy.'_obstetric_outcome'; - $abortion_outcome = $pregnancy.'_abortion_outcome'; - $stillbirth_type = $pregnancy.'_stillbirth_type'; - $delivery_type = $pregnancy.'_delivery_type'; - $classification = $pregnancy.'_classification'; - $puerperium = $pregnancy.'_puerperium'; - $pregnancy_complication = $pregnancy.'_pregnancy_complication'; - $child_name = $pregnancy.'_child_name'; - $child_gender = $pregnancy.'_child_gender'; - $child_patient_number = $pregnancy.'_child_patient_number'; - $child_birth_weight = $pregnancy.'_child_birth_weight'; - $child_immunisation_status = $pregnancy.'_child_immunisation_status'; - $child_health_condition = $pregnancy.'_child_health_condition'; - $child_counter = !empty($request->$child_name[0]) ? count($request->$child_name) : 0; - $children = []; - if ($child_counter > 0) { - for ($t = 0; $t < $child_counter; $t++) { - $children[] = [ - 'health_condition' => $request->$child_health_condition[$t], 'immunisation_status' => $request->$child_immunisation_status[$t], 'birth_weight' => $request->$child_birth_weight[$t], - 'patient_number' => $request->$child_patient_number[$t], 'gender' => $request->$child_gender[$t], 'name' => $request->$child_name[$t] - ]; - } - } - $obstetric_history = new ObstetricHistory; - $obstetric_history->patient_id = $patient_id; - $obstetric_history->episode_id = $episode_id; - $obstetric_history->obstetric_date = isset($request->$obs_date) ? Carbon::createFromFormat('d/m/Y', $request->$obs_date)->toDateString() : null; - $obstetric_history->gestation = $request->$gestation; - $obstetric_history->outcome = $request->$outcome; - $obstetric_history->stillbirth_type = $request->$stillbirth_type; - $obstetric_history->clinic_id = $clinic_id; - $obstetric_history->abortion_outcome = $request->$abortion_outcome; - $obstetric_history->delivery_type = $request->$delivery_type; - $obstetric_history->classification = $request->$classification; - $obstetric_history->puerperium = $request->$puerperium; - $obstetric_history->pregnancy_complication = $request->$pregnancy_complication; - $obstetric_history->children = !empty($children)? json_encode($children) : null; - $obstetric_history->created_by = auth()->user()->id; - $obstetric_history->save(); - } - // PPH - $previous_pph = $request->previous_pph; - $pph_details = $request->pph_details; - $previous_scar = $request->previous_scar; - $scar_number = $request->scar_number; - $scar_indication = $request->scar_indication; - $other_comments = $request->other_comments; - // Blood Transfusion - $blood_group = $request->blood_group; - $transfusion_date_array = (!empty($request->transfusion_date[0]) && (!empty($request->no_of_units[0]) || !empty($request->transfusion_comment[0])))? $request->transfusion_date:null; - $number_of_units_array = $request->no_of_units; - $transfusion_comment_array = $request->transfusion_comment; - // VDRL/Hiv - $hiv_result = $request->hiv_result?? ''; - $vdrl_result = $request->vdrl_result?? ''; - $vdrl_date = !empty($request->vdrl_date) ? Carbon::createFromFormat('d/m/Y', $request->vdrl_date)->toDateString() : null; - $hiv_date = !empty($request->hiv_date) ? Carbon::createFromFormat('d/m/Y', $request->hiv_date)->toDateString() : null; - $vdrl_location = $request->vdrl_location; - $hiv_location = $request->hiv_location; - //physique - $height = $request->height; - $weight = $request->weight; - $bmi = $request->bmi; - // This pregnancy - $lmp = isset($request->lmp) ? Carbon::createFromFormat('d/m/Y', $request->lmp)->toDateString() : null; - $accuracy = $request->accuracy; - $edd = isset($request->edd) ? Carbon::createFromFormat('d/m/Y', $request->edd)->toDateString() : null; - $referral = $request->refferal; - $general_comments = $request->comments; - //$triage_details = Triage::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - //$clinic_id = $triage_details->clinic_allocation; - // ART - $art_treatment_center = $request->art_treatment_center; - $art_treatment_number = $request->art_treatment_number; - - $anc_registration = new AnteNatalClinicRegistration; - $anc_registration->patient_id = $patient_id; - $anc_registration->episode_id = $episode_id; - $anc_registration->gravida = $gravida; - $anc_registration->para = $para; - $anc_registration->abortion = $abortion; - $anc_registration->ectopic_pregnancies = $request->ectopic_pregnancies; - //$anc_registration->postpartum = $postpartum; - $anc_registration->previous_pph = $previous_pph; - $anc_registration->previous_pph_details = $pph_details; - $anc_registration->previous_scar = $previous_scar; - $anc_registration->previous_scar_number = $scar_number; - $anc_registration->previous_scar_indication = $scar_indication; - $anc_registration->other_comments = $other_comments; - $anc_registration->height = $height; - $anc_registration->weight = $weight; - $anc_registration->bmi = $bmi; - $anc_registration->lmp = $lmp; - $anc_registration->accuracy = $accuracy; - $anc_registration->edd = $edd; - $anc_registration->other_facility_visited_name = $request->other_facility_visited_name; - $anc_registration->other_facility_visit_date = isset($request->other_facility_visit_date)? Carbon::createFromFormat('d/m/Y',$request->other_facility_visit_date)->toDateString():null; - $anc_registration->woa_weeks = $request->woa_weeks; - $anc_registration->complications = !empty($request->complications)? implode(',', $request->complications):null; - $anc_registration->other_complications = $request->complications_others_input?? null; - $anc_registration->hospital_visits = $request->hospital_visits?? null; - $anc_registration->hospital_visit_reason = $request->hospital_visits_input?? null; - $anc_registration->referral_from = $referral; - $anc_registration->general_comments = $general_comments; - $anc_registration->created_by = auth()->user()->id; - if ($request->get('submit-btn') == 'complete') { - $anc_registration->completed = 1; - $anc_registration->save(); - } else { - $anc_registration->save(); - } - - $registration_id = $anc_registration->id; //get the registration id - if (!empty($vdrl_result) || isset($hiv_result)){ - $anc_vdrl_hiv_data = new AncVdrlHiv; - $anc_vdrl_hiv_data->patient_id = $patient_id; - $anc_vdrl_hiv_data->episode_id = $episode_id; - $anc_vdrl_hiv_data->registration_id = $registration_id; - $anc_vdrl_hiv_data->vdrl_result = $vdrl_result; - $anc_vdrl_hiv_data->vdrl_date = $vdrl_date; - $anc_vdrl_hiv_data->vdrl_location = $vdrl_location; - $anc_vdrl_hiv_data->hiv_result = $hiv_result; - $anc_vdrl_hiv_data->hiv_date = $hiv_date; - $anc_vdrl_hiv_data->hiv_location = $hiv_location; - $anc_vdrl_hiv_data->art_treatment_center = $art_treatment_center; - $anc_vdrl_hiv_data->art_treatment_number = $art_treatment_number; - $anc_vdrl_hiv_data->created_by = auth()->user()->id; - $anc_vdrl_hiv_data->save(); - } - - //store antenatal blood transfusions - if(!empty($transfusion_date_array)) for ($i = 0; $i < count($transfusion_date_array); $i++) { - $anc_blood_transfusion = new AnteNatalClinicBloodTransfusion; - $anc_blood_transfusion->patient_id = $patient_id; - $anc_blood_transfusion->episode_id = $episode_id; - $anc_blood_transfusion->registration_id = $registration_id; - $anc_blood_transfusion->blood_group_id = $blood_group; - $anc_blood_transfusion->transfusion_date = isset($transfusion_date_array[$i]) ? Carbon::createFromFormat('d/m/Y', $transfusion_date_array[$i])->toDateString() : null; - $anc_blood_transfusion->number_of_units = $number_of_units_array[$i]; - $anc_blood_transfusion->comments = $transfusion_comment_array[$i]; - $anc_blood_transfusion->created_by = auth()->user()->id; - $anc_blood_transfusion->save(); - } - - //Store Mother's History - $mother_history = new AntenatalMotherHistory(); - $mother_history->patient_id = $patient_id; - $mother_history->episode_id = $episode_id; - $mother_history->registration_id = $registration_id; - $mother_history->menses_length =$request->menses_length; - $mother_history->cycle_time =$request->cycle_time; - $mother_history->menses_amount =$request->menses_amount; - $mother_history->family_planning = $request->family_planning?? null; - $mother_history->date_discontinued =$request->date_discontinued; - $mother_history->why_stop_family_planning =$request->why_stop_family_planning; - $mother_history->any_medications =!empty($request->any_medications)? implode(',', $request->any_medications):null; - $mother_history->other_any_medications =$request->any_medications_others_input; - $mother_history->medical_presentations_others_input = $request->medical_presentations_others_input; - $mother_history->medical_presentations = !empty($request->medical_presentations)? implode(',', $request->medical_presentations):null; - $mother_history->surgical_history = !empty($request->surgical_history)? implode(',', $request->surgical_history):null; - $mother_history->surgical_history_operations =$request->surgical_history_operations_input; - $mother_history->surgical_history_blood_transfusion =$request->surgical_history_blood_transfusion_input; - $mother_history->obs_gyn =!empty($request->obs_gyn)? implode(',', $request->obs_gyn):null; - $mother_history->caesarian_section =$request->caesarian_section; - $mother_history->uterus_operations =$request->uterus_operations; - foreach($request->uterus_operations_name as $key => $operation){ - if(!empty($operation)) $uterine_operations[] =['name'=>$operation, 'date'=>$request->uterus_operations_date[$key], 'facility_name'=>$request->uterus_operations_facility_name[$key]]; - } - foreach($request->other_operations_name as $key => $operation){ - if(!empty($operation)) $other_surgeries[] =['name'=>$operation, 'date'=>$request->other_operations_date[$key], 'facility_name'=>$request->other_operations_facility_name[$key]]; - } - $mother_history->uterine_surgeries = !empty($uterine_operations)? json_encode($uterine_operations):null; - $mother_history->other_surgeries = !empty($other_surgeries)? json_encode($other_surgeries):null; - $mother_history->family_history =!empty($request->family_history)? implode(',', $request->family_history): null; - $mother_history->sgbv =$request->sgbv; - $mother_history->sgbv_risk =!empty($request->sgbv_sgbv_risk_input)? implode(',', $request->sgbv_sgbv_risk_input):null; - $mother_history->fractures =!empty($request->fractures)? implode(',', $request->fractures):null; - $fractures[] = ['date'=>$request->fractures_pelvis_date?? null, 'details'=>$request->fractures_pelvis_input?? null]; - $fractures[] = ['date'=>$request->fractures_spine_date?? null, 'details'=>$request->fractures_spine_input?? null]; - $fractures[] = ['date'=>$request->fractures_femur_date?? null, 'details'=>$request->fractures_femur_input?? null]; - $mother_history->fracture_details = json_encode($fractures); - $mother_history->husband_health =$request->husband_health; - $mother_history->created_by =auth()->user()->id; - $mother_history->save(); - }); - - // redirect according to what button has been clicked - switch ($request->get('submit-btn')): - case 'investigation': - $url = 'investigations/investigations_review'; - break; - - case 'treatment': - $url = 'prescriptions/create'; - break; - - case 'procedures': - $url = 'order_procedures'; - break; - - case 'sundries': - $url = 'order_sundries'; - break; - - case 'complete': - $url = 'patient_episodes'; - break; - - case 'save_consultation': - $url = '/patient_flow_monitoring/index'; - break; - - default: - break; - endswitch; - flash('Ante Natal Clinic Registration successful')->success(); - return redirect($url); - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - $anc_registration_details = AnteNatalClinicRegistration::find($id); - $episode_id = $anc_registration_details->episode_id; - $patient_id = session()->get('patient_id'); - $patient = Patient::where(['id' => $patient_id])->first(); - $last_five_pregnancies = AnteNatalClinicRegistration::where([['patient_id', $patient_id], ['id','<>', $id]])->orderBy('created_at','desc')->take(5)->get(); - $categories = DB::table('patient_categories')->pluck("name", "id"); - $marital_statuses = DB::table('marital_statuses')->pluck("name", "id"); - $drug_categories = DB::table('drug_categories')->get(); - $previous_medical_conditions = AnteNatalMotherHistory::where([['patient_id', $patient_id],['episode_id', '<>', $episode_id]])->latest()->first(['medical_presentations']); - $documents = \Streamline\Models\PatientDocument::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_allergies = \Streamline\Models\Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = \Streamline\Models\Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->pluck('name', 'id'); - $anc_outcomes = DB::table('ante_natal_clinic_outcomes')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $triage = Triage::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $obstetric_history_details = ObstetricHistory::where(['patient_id' => $patient_id])->orderBy('obstetric_date', 'desc')->get(); - $anc_blood_transfusion_details_collection = AnteNatalClinicBloodTransfusion::where(['patient_id' => $patient_id])->get(); - $dispensed_treatment = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'tta' => 0])->first(); - $ordered_procedures = OrderedProcedure::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $anc_vdrl_hiv_details = AncVdrlHiv::where(['registration_id' => $anc_registration_details->id])->first(); - $hiv_statuses = ['' => '-- Select --', '0' => 'Negative', '1' => 'Positive', '3' => 'Unknown']; - $family_planning_methods = FamilyPlanningMethod::orderBy('name', 'asc')->pluck("name", "id")->prepend('- Select -', ''); - $gender_based_violence = GenderViolence::orderBy('name', 'asc')->pluck("name", "id")->prepend('- Select -', ''); - $uterus_operations = Procedure::where('hmis_category_inpatient', 10046)->orderBy('name', 'asc')->pluck("name", "id")->prepend('- Select -', ''); - $caesarian_sections = CaesarianSection::orderBy('name', 'asc')->pluck("name", "id")->prepend('- Select -', ''); - $mother_history = AntenatalMotherHistory::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'registration_id' =>$anc_registration_details->id])->first(); - $accuracies = DB::table('ante_natal_clinic_accuracies')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $referrals = DB::table('referral_hospitals')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $blood_groups = DB::table('blood_groups')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - // collect chronic drug ids as array - $chronic_drugs_array = ChronicPatient::where('patient_id', $patient_id)->whereNotNull('drug_id')->get(['drug_id']); - $chronic_results = Drug::whereIn('id', $chronic_drugs_array)->get(['id', 'name']); - $previous_consultations = Consultation::leftJoin('patient_episodes as p','p.id','consultations.episode_id')->where([['consultations.patient_id', $patient_id],['episode_id', '<>',$episode_id]])->latest()->take(5)->get(['consultations.created_at','p.clinic_id', 'primary_diagnosis', 'other_diagnoses', 'consultations.created_by','episode_id','consultations.id']); - /* episode details */ - $episode = PatientEpisode::find($episode_id); - $previous_surgeries = Surgery::where([['patient_id', $patient_id],['episode_id', '<>',$episode_id]])->latest()->take(5)->get(['created_at', 'primary_diagnosis', 'other_diagnoses', 'created_by','episode_id','procedure_id']); - $diagnoses = DB::table('diagnoses')->whereNull('deleted_at')->orderBy('name', 'asc')->pluck("name", "id"); - /* get treatment */ - $treatments = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'tta' => 0])->get(); - /* get ordered procedures */ - $ordered_procedures = OrderedProcedure::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - //check for ordered investigations,procedures and treatment - $ordered_investigations = OrderedInvestigation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - /* get ordered sundries */ - $ordered_sundries = OrderedSundry::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - //check for authenticated investigations - $investigation_results = InvestigationResults::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $diagnoses_all = DB::table('diagnoses')->select('id', 'prompts', 'reference_areas', 'reference_names')->get(); - $anc_vdrl_details = null; - $anc_vdrl_episode_records = AncVdrlHiv::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - if (count($anc_vdrl_episode_records) > 0) $anc_vdrl_details = $anc_vdrl_episode_records->first(); - /* ======== added to cater for review episode =========*/ - $is_episode_a_review = check_if_episode_is_a_followup($episode_id); - $parent_episode_treatments = []; - $parent_episode_ordered_procedures = []; - $parent_episode_ordered_investigations = []; - $parent_episode_ordered_sundries = []; - $parent_episode_investigation_results = []; - - if ($is_episode_a_review) { - $parent_episode_details = PatientEpisode::find($episode->parent_episode_id); - - $parent_episode_treatments = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $parent_episode_details->id, 'tta' => 0])->get(); - $parent_episode_ordered_procedures = OrderedProcedure::where(['patient_id' => $patient_id, 'episode_id' => $parent_episode_details->id])->get(); - $parent_episode_ordered_investigations = OrderedInvestigation::where(['patient_id' => $patient_id, 'episode_id' => $parent_episode_details->id])->get(); - /* get ordered sundries */ - $parent_episode_ordered_sundries = OrderedSundry::where(['patient_id' => $patient_id, 'episode_id' => $parent_episode_details->id])->get(); - //check for authenticated investigations - $parent_episode_investigation_results = InvestigationResults::where(['patient_id' => $patient_id, 'episode_id' => $parent_episode_details->id])->get(); - } - /* ========end of varibales added to cater for review episodes ========*/ - - return view('antenatal::ante_natal_clinic.show_pregnancy', compact('patient', 'previous_consultations', 'previous_medical_conditions', 'previous_surgeries', 'chronic_results', 'diagnoses', 'patient_id','blood_groups','episode_id', 'referrals','accuracies','anc_vdrl_details','gender_based_violence','categories','mother_history','caesarian_sections','uterus_operations', 'marital_statuses', 'drug_categories', 'family_planning_methods','documents', 'known_patient_alerts', 'known_patient_allergies', 'anc_outcomes', 'triage', 'anc_registration_details', 'obstetric_history_details', 'anc_blood_transfusion_details_collection', 'dispensed_treatment', 'ordered_procedures', 'anc_vdrl_hiv_details', 'hiv_statuses', 'last_five_pregnancies', 'drug_categories_array', 'episode', 'ordered_procedures', 'ordered_investigations', 'investigation_results', 'treatments', 'ordered_sundries', 'parent_episode_treatments', 'parent_episode_ordered_procedures', 'parent_episode_ordered_sundries', 'parent_episode_ordered_investigations', 'parent_episode_investigation_results')); - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) - { - $existing_anc_registration = AnteNatalClinicRegistration::find($id); - $patient_id = $existing_anc_registration->patient_id; - $episode_id = $existing_anc_registration->episode_id; - - $patient = Patient::where(['id' => $patient_id])->first(); - $anc_blood_transfusion_details = AnteNatalClinicBloodTransfusion::where([['patient_id', $patient_id],['episode_id', $episode_id]])->get(); - $anc_vdrl_details = null; - $previous_medical_conditions = AnteNatalMotherHistory::where([['patient_id', $patient_id],['episode_id', '<>', $episode_id]])->latest()->first(['medical_presentations']); - $anc_vdrl_details = AncVdrlHiv::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'registration_id' => $id])->latest()->first(); - $categories = DB::table('patient_categories')->pluck("name", "id"); - $marital_statuses = DB::table('marital_statuses')->pluck("name", "id"); - $drug_categories = DB::table('drug_categories')->get(); - $documents = PatientDocument::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_allergies = Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->pluck('name', 'id'); - $family_planning_methods = FamilyPlanningMethod::orderBy('name', 'asc')->pluck("name", "id")->prepend('- Select -', ''); - $gender_based_violence = GenderViolence::orderBy('name', 'asc')->pluck("name", "id")->prepend('- Select -', ''); - $uterus_operations = Procedure::where('hmis_category_inpatient', 10046)->orderBy('name', 'asc')->pluck("name", "id")->prepend('- Select -', ''); - $caesarian_sections = CaesarianSection::orderBy('name', 'asc')->pluck("name", "id")->prepend('- Select -', ''); - $mother_history = AntenatalMotherHistory::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'registration_id' =>$id])->first(); - $triage_id = get_name($episode_id, "id", "triage_id", "patient_episodes"); - $triage = Triage::find($triage_id); - $last_five_pregnancies = AnteNatalClinicRegistration::where([['patient_id', $patient_id],['episode_id', '<>', $episode_id]])->latest()->take(5)->get(); - $previous_surgeries = Surgery::where([['patient_id', $patient_id],['episode_id', '<>',$episode_id]])->latest()->take(5)->get(['created_at', 'primary_diagnosis', 'other_diagnoses', 'created_by','episode_id','procedure_id']); - $diagnoses = DB::table('diagnoses')->whereNull('deleted_at')->orderBy('name', 'asc')->pluck("name", "id")->prepend('- select -', ''); - //select treatment - $treatment = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'tta' => 0])->first(); - $blood_groups = DB::table('blood_groups')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $referrals = DB::table('referral_hospitals')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $accuracies = DB::table('ante_natal_clinic_accuracies')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $anc_outcomes = DB::table('ante_natal_clinic_outcomes')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $obstetric_history_details = ObstetricHistory::where(['patient_id' => $patient_id])->orderBy('obstetric_date', 'desc')->get(); - $hiv_statuses = ['' => '-- Select --', '0' => 'Negative', '1' => 'Positive', '3' => 'Unknown']; - // collect chronic drug ids as array - $chronic_drugs_array = ChronicPatient::where('patient_id', $patient_id)->whereNotNull('drug_id')->get(['drug_id']); - $chronic_results = Drug::whereIn('id', $chronic_drugs_array)->get(['id', 'name']); - $previous_consultations = Consultation::leftJoin('patient_episodes as p','p.id','consultations.episode_id')->where([['consultations.patient_id', $patient_id],['episode_id', '<>',$episode_id]])->latest()->take(5)->get(['consultations.created_at','p.clinic_id', 'primary_diagnosis', 'other_diagnoses', 'consultations.created_by','episode_id','consultations.id']); - /* episode details */ - $episode = PatientEpisode::find($episode_id); - /* get treatment */ - $treatments = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'tta' => 0])->get(); - /* get ordered procedures */ - $ordered_procedures = OrderedProcedure::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - //check for ordered investigations,procedures and treatment - $ordered_investigations = OrderedInvestigation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - /* get ordered sundries */ - $ordered_sundries = OrderedSundry::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - //check for authenticated investigations - $investigation_results = InvestigationResults::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $diagnoses_all = DB::table('diagnoses')->select('id', 'prompts', 'reference_areas', 'reference_names')->get(); - - /* ======== added to cater for review episode =========*/ - $is_episode_a_review = check_if_episode_is_a_followup($episode->id); - $parent_episode_treatments = []; - $parent_episode_ordered_procedures = []; - $parent_episode_ordered_investigations = []; - $parent_episode_ordered_sundries = []; - $parent_episode_investigation_results = []; - - if ($is_episode_a_review) { - $parent_episode_details = PatientEpisode::find($episode->parent_episode_id); - - $parent_episode_treatments = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $parent_episode_details->id, 'tta' => 0])->get(); - $parent_episode_ordered_procedures = OrderedProcedure::where(['patient_id' => $patient_id, 'episode_id' => $parent_episode_details->id])->get(); - $parent_episode_ordered_investigations = OrderedInvestigation::where(['patient_id' => $patient_id, 'episode_id' => $parent_episode_details->id])->get(); - /* get ordered sundries */ - $parent_episode_ordered_sundries = OrderedSundry::where(['patient_id' => $patient_id, 'episode_id' => $parent_episode_details->id])->get(); - //check for authenticated investigations - $parent_episode_investigation_results = InvestigationResults::where(['patient_id' => $patient_id, 'episode_id' => $parent_episode_details->id])->get(); - } - $employees = DB::table('users')->whereNull('deleted_at')->orderBy('first_name', 'asc')->get(); - /* ========end of varibales added to cater for review episodes ========*/ - - return view('antenatal::ante_natal_clinic.edit', compact('existing_anc_registration', 'diagnoses', 'previous_medical_conditions', 'last_five_pregnancies','previous_surgeries','employees','previous_consultations','uterus_operations', 'patient', 'patient_id', 'mother_history', 'episode_id', 'triage', 'treatment', 'categories', 'marital_statuses', 'family_planning_methods', 'gender_based_violence', 'gender_based_violence', 'caesarian_sections','drug_categories', 'documents', 'blood_groups', 'hiv_statuses', 'accuracies', 'referrals', 'anc_outcomes', 'known_patient_allergies', 'known_patient_alerts', 'drug_categories_array', 'obstetric_history_details', 'anc_blood_transfusion_details', 'anc_vdrl_details', 'episode', 'ordered_procedures', 'ordered_investigations', 'investigation_results', 'treatments', 'ordered_sundries', 'parent_episode_treatments', 'parent_episode_ordered_procedures', 'parent_episode_ordered_sundries', 'parent_episode_ordered_investigations', 'parent_episode_investigation_results','chronic_results')); - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - $url = ""; - $anc_registration = AnteNatalClinicRegistration::find($id); - - /* try to perform this set of db transactions and if any fails, rollback everything */ - DB::transaction(function () use ($request, $anc_registration) { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $gravida = $request->gravida; - $para = $request->para; - $abortion = $request->abortion; - $postpartum = $request->postpartum; - $previous_pph = $request->previous_pph; - $pph_details = $request->pph_details; - $previous_scar = $request->previous_scar; - $scar_number = $request->scar_number; - $scar_indication = $request->scar_indication; - $other_comments = $request->other_comments; - // Blood Transfusion - $blood_group = $request->blood_group; - $transfusion_date_array = $transfusion_date_array = (!empty($request->transfusion_date[0]) && (!empty($request->no_of_units[0]) || !empty($request->transfusion_comment[0])))? $request->transfusion_date:[]; - $number_of_units_array = $request->no_of_units; - $transfusion_comment_array = $request->transfusion_comment; - // VDRL/Hiv - $hiv_result = $request->hiv_result; - $vdrl_result = $request->vdrl_result; - $vdrl_date = (isset($request->vdrl_date) && !empty($vdrl_result)) ? Carbon::createFromFormat('d/m/Y', $request->vdrl_date)->toDateString() : null; - $hiv_date = (isset($request->hiv_date) && isset($hiv_result)) ? Carbon::createFromFormat('d/m/Y', $request->hiv_date)->toDateString() : null; - $vdrl_location = $request->vdrl_location; - $hiv_location = $request->hiv_location; - //physique - $height = $request->height; - $weight = $request->weight; - $bmi = $request->bmi; - // This pregnancy - $lmp = isset($request->lmp) ? Carbon::createFromFormat('d/m/Y', $request->lmp)->toDateString() : null; - $accuracy = $request->accuracy; - $edd = isset($request->edd) ? Carbon::createFromFormat('d/m/Y', $request->edd)->toDateString() : null; - $referral = $request->refferal; - $general_comments = $request->comments; - //clinic - $clinic_id = get_name('ante_natal', 'slug', 'id', 'clinics'); //get the id for antenatal clinic from clinics table - //$triage_details = Triage::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - //$clinic_id = $triage_details->clinic_allocation; - // ART - $art_treatment_center = $request->art_treatment_center; - $art_treatment_number = $request->art_treatment_number; - - $anc_registration->patient_id = $patient_id; - $anc_registration->episode_id = $episode_id; - $anc_registration->gravida = $gravida; - $anc_registration->para = $para; - $anc_registration->abortion = $abortion; - $anc_registration->ectopic_pregnancies = $request->ectopic_pregnancies; - //$anc_registration->postpartum = $postpartum; - $anc_registration->other_facility_visited_name = $request->other_facility_visited_name; - $anc_registration->other_facility_visit_date = isset($request->other_facility_visit_date)? Carbon::createFromFormat('d/m/Y',$request->other_facility_visit_date)->toDateString():null; - $anc_registration->previous_pph = $previous_pph; - $anc_registration->previous_pph_details = $pph_details; - $anc_registration->previous_scar = $previous_scar; - $anc_registration->previous_scar_number = $scar_number; - $anc_registration->previous_scar_indication = $scar_indication; - $anc_registration->other_comments = $other_comments; - $anc_registration->height = $height; - $anc_registration->weight = $weight; - $anc_registration->bmi = $bmi; - $anc_registration->lmp = $lmp; - $anc_registration->woa_weeks = $request->woa_weeks; - $anc_registration->accuracy = $accuracy; - $anc_registration->edd = $edd; - $anc_registration->referral_from = $referral; - $anc_registration->general_comments = $general_comments; - $anc_registration->updated_by = auth()->user()->id; - if ($request->get('submit-btn') == 'complete') { - $anc_registration->completed = 1; - $anc_registration->save(); - } else { - $anc_registration->save(); - } - - $registration_id = $anc_registration->id; //get the registration id - - $anc_vdrl_hiv_data_records = AncVdrlHiv::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'registration_id' => $registration_id])->get(); - $anc_vdrl_hiv_data = count($anc_vdrl_hiv_data_records) > 0 ? $anc_vdrl_hiv_data_records->first() : new AncVdrlHiv; - $anc_vdrl_hiv_data->patient_id = $patient_id; - $anc_vdrl_hiv_data->episode_id = $episode_id; - $anc_vdrl_hiv_data->registration_id = $registration_id; - $anc_vdrl_hiv_data->vdrl_result = $vdrl_result; - $anc_vdrl_hiv_data->vdrl_date = $vdrl_date; - $anc_vdrl_hiv_data->vdrl_location = $vdrl_location; - $anc_vdrl_hiv_data->hiv_result = $hiv_result; - $anc_vdrl_hiv_data->hiv_date = $hiv_date; - $anc_vdrl_hiv_data->hiv_location = $hiv_location; - $anc_vdrl_hiv_data->art_treatment_center = $art_treatment_center; - $anc_vdrl_hiv_data->art_treatment_number = $art_treatment_number; - count($anc_vdrl_hiv_data_records) > 0 ? $anc_vdrl_hiv_data->updated_by = auth()->user()->id :$anc_vdrl_hiv_data->created_by = auth()->user()->id; - $anc_vdrl_hiv_data->save(); - - //store antenatal blood transfusions - for ($i = 0; $i < count($transfusion_date_array); $i++) { - - $transfuz_date = !empty($transfusion_date_array[$i]) ? Carbon::createFromFormat('d/m/Y', $transfusion_date_array[$i])->toDateString() : null; - - $anc_blood_transfusion_records = AnteNatalClinicBloodTransfusion::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->whereDate('transfusion_date', $transfuz_date)->get(); - - $anc_blood_transfusion = count($anc_blood_transfusion_records) > 0 ? $anc_blood_transfusion_records->first() : new AnteNatalClinicBloodTransfusion; - - $anc_blood_transfusion->patient_id = $patient_id; - $anc_blood_transfusion->episode_id = $episode_id; - $anc_blood_transfusion->registration_id = $registration_id; - $anc_blood_transfusion->blood_group_id = $blood_group; - $anc_blood_transfusion->transfusion_date = isset($transfusion_date_array[$i]) ? Carbon::createFromFormat('d/m/Y', $transfusion_date_array[$i])->toDateString() : null; - $anc_blood_transfusion->number_of_units = $number_of_units_array[$i]; - $anc_blood_transfusion->comments = $transfusion_comment_array[$i]; - count($anc_blood_transfusion_records) > 0 ? $anc_blood_transfusion->updated_by = auth()->user()->id : $anc_blood_transfusion->created_by = auth()->user()->id; - $anc_blood_transfusion->save(); - } - - //store obstetric history data - for ($k = 1; $k <= $request->pregnancy_number; $k++) { - $pregnancy = 'pregnancy_'.$k; - $obs_date = $pregnancy.'_obstetric_date'; - $gestation = $pregnancy.'_gestation'; - $outcome = $pregnancy.'_obstetric_outcome'; - $abortion_outcome = $pregnancy.'_abortion_outcome'; - $stillbirth_type = $pregnancy.'_stillbirth_type'; - $delivery_type = $pregnancy.'_delivery_type'; - $classification = $pregnancy.'_classification'; - $puerperium = $pregnancy.'_puerperium'; - $pregnancy_complication = $pregnancy.'_pregnancy_complication'; - $child_name = $pregnancy.'_child_name'; - $child_gender = $pregnancy.'_child_gender'; - $child_patient_number = $pregnancy.'_child_patient_number'; - $child_birth_weight = $pregnancy.'_child_birth_weight'; - $child_immunisation_status = $pregnancy.'_child_immunisation_status'; - $child_health_condition = $pregnancy.'_child_health_condition'; - $stored_pregnancy = $pregnancy.'_id'; - $deleted_pregnancy = 'delete_'.$pregnancy.'_id'; - $child_counter = !empty($request->$child_name[0]) ? count($request->$child_name) : 0; - $children = []; - if ($child_counter > 0) { - for ($t = 0; $t < $child_counter; $t++) { - $children[] = [ - 'health_condition' => $request->$child_health_condition[$t], 'immunisation_status' => $request->$child_immunisation_status[$t], 'birth_weight' => $request->$child_birth_weight[$t], - 'patient_number' => $request->$child_patient_number[$t], 'gender' => $request->$child_gender[$t], 'name' => $request->$child_name[$t] - ]; - } - } - if(!empty($request->$deleted_pregnancy)){ - $delete_pregnancy = ObstetricHistory::find($request->$deleted_pregnancy); - $delete_pregnancy->delete(); - } elseif (!empty($request->$stored_pregnancy) && empty($request->$deleted_pregnancy)) { - $update_obstetric_history = ObstetricHistory::find($request->$stored_pregnancy); - $update_obstetric_history->patient_id = $patient_id; - $update_obstetric_history->episode_id = $episode_id; - $update_obstetric_history->obstetric_date = isset($request->$obs_date) ? Carbon::createFromFormat('d/m/Y', $request->$obs_date)->toDateString() : null; - $update_obstetric_history->gestation = $request->$gestation; - $update_obstetric_history->outcome = $request->$outcome; - $update_obstetric_history->clinic_id = $clinic_id; - $update_obstetric_history->abortion_outcome = $request->$abortion_outcome; - $update_obstetric_history->stillbirth_type = $request->$stillbirth_type; - $update_obstetric_history->delivery_type = $request->$delivery_type; - $update_obstetric_history->classification = $request->$classification; - $update_obstetric_history->puerperium = $request->$puerperium; - $update_obstetric_history->pregnancy_complication = $request->$pregnancy_complication; - $update_obstetric_history->children = !empty($children)? json_encode($children) : null; - $update_obstetric_history->updated_by = auth()->user()->id; - $update_obstetric_history->save(); - } else{ - $obstetric_history = new ObstetricHistory; - $obstetric_history->patient_id = $patient_id; - $obstetric_history->episode_id = $episode_id; - $obstetric_history->obstetric_date = isset($request->$obs_date) ? Carbon::createFromFormat('d/m/Y', $request->$obs_date)->toDateString() : null; - $obstetric_history->gestation = $request->$gestation; - $obstetric_history->outcome = $request->$outcome; - $obstetric_history->stillbirth_type = $request->$stillbirth_type; - $obstetric_history->clinic_id = $clinic_id; - $obstetric_history->abortion_outcome = $request->$abortion_outcome; - $obstetric_history->delivery_type = $request->$delivery_type; - $obstetric_history->classification = $request->$classification; - $obstetric_history->puerperium = $request->$puerperium; - $obstetric_history->pregnancy_complication = $request->$pregnancy_complication; - $obstetric_history->children = !empty($children)? json_encode($children) : null; - $obstetric_history->created_by = auth()->user()->id; - $obstetric_history->save(); - } - } - - //Store Mother's History - if (!empty($request->mother_obs_history_id)) { - $mother_history = AntenatalMotherHistory::find($request->mother_obs_history_id); - $mother_history->updated_by =auth()->user()->id; - } else { - $mother_history = new AntenatalMotherHistory(); - $mother_history->created_by =auth()->user()->id; - } - $mother_history->patient_id = $patient_id; - $mother_history->episode_id = $episode_id; - $mother_history->registration_id = $registration_id; - $mother_history->menses_length =$request->menses_length; - $mother_history->cycle_time =$request->cycle_time; - $mother_history->menses_amount =$request->menses_amount; - $mother_history->family_planning = $request->family_planning?? null; - $mother_history->date_discontinued =$request->date_discontinued; - $mother_history->why_stop_family_planning =$request->why_stop_family_planning; - $mother_history->any_medications =!empty($request->any_medications)? implode(',', $request->any_medications): null; - $mother_history->other_any_medications =$request->any_medications_others_input; - $mother_history->medical_presentations_others_input = $request->medical_presentations_others_input; - $mother_history->medical_presentations = !empty($request->medical_presentations)? implode(',', $request->medical_presentations) : null; - $mother_history->surgical_history = !empty($request->surgical_history)? implode(',', $request->surgical_history):null; - $mother_history->surgical_history_operations =$request->surgical_history_operations_input; - $mother_history->surgical_history_blood_transfusion =$request->surgical_history_blood_transfusion_input; - $mother_history->obs_gyn =!empty($request->obs_gyn)? implode(',', $request->obs_gyn): null; - $mother_history->caesarian_section =$request->caesarian_section; - $mother_history->uterus_operations =$request->uterus_operations; - foreach($request->uterus_operations_name as $key => $operation){ - if(!empty($operation)) $uterine_operations[] =['name'=>$operation, 'date'=>$request->uterus_operations_date[$key], 'facility_name'=>$request->uterus_operations_facility_name[$key]]; - } - foreach($request->other_operations_name as $key => $operation){ - if(!empty($operation)) $other_surgeries[] =['name'=>$operation, 'date'=>$request->other_operations_date[$key], 'facility_name'=>$request->other_operations_facility_name[$key]]; - } - $mother_history->uterine_surgeries = !empty($uterine_operations)? json_encode($uterine_operations):null; - $mother_history->other_surgeries = !empty($other_surgeries)?json_encode($other_surgeries):null; - $mother_history->family_history =!empty($request->family_history)? implode(',', $request->family_history): null; - $mother_history->sgbv =$request->sgbv; - $mother_history->sgbv_risk =!empty($request->sgbv_sgbv_risk_input)? implode(',', $request->sgbv_sgbv_risk_input): null; - $mother_history->fractures =!empty($request->fractures)? implode(',', $request->fractures): null; - $fractures[] = ['date'=>$request->fractures_pelvis_date?? null, 'details'=>$request->fractures_pelvis_input?? null]; - $fractures[] = ['date'=>$request->fractures_spine_date?? null, 'details'=>$request->fractures_spine_input?? null]; - $fractures[] = ['date'=>$request->fractures_femur_date?? null, 'details'=>$request->fractures_femur_input?? null]; - $mother_history->fracture_details = json_encode($fractures); - $mother_history->husband_health =$request->husband_health; - $mother_history->save(); - }); - // performing an ordered procedure. - if (!empty($request->perform_selected)) { - foreach ($request->perform_selected as $procedure_array_id) { - $arr = explode(",", get_name($request->procedure_order_perform[$procedure_array_id], 'id', 'performed', 'ordered_procedures')); - $arr_id = explode(",", get_name($request->procedure_order_perform[$procedure_array_id], 'id', 'performed_id', 'ordered_procedures')); - - $performed_id = record_staff_that_has_performed_the_service( - session()->get('patient_id'), - session()->get('episode_id'), - 1, - $request->perform[$procedure_array_id], - 0, - $request->procedure_performed_by[$procedure_array_id] - ); - - if (isset($arr[$request->procedure_performed_position[$procedure_array_id]])) { - $arr[$request->procedure_performed_position[$procedure_array_id]] = 1; - $arr_id[$request->procedure_performed_position[$procedure_array_id]] = $performed_id; - $update = DB::table('ordered_procedures')->where('id', $request->procedure_order_perform[$procedure_array_id]) - ->update(['performed' => implode(",", $arr), 'performed_id' => implode(",", $arr_id)]); - } - } - } - // redirect according to what button has been clicked - switch ($request->get('submit-btn')): - case 'investigation': - $url = 'investigations/investigations_review'; - break; - - case 'treatment': - $url = 'prescriptions/create'; - break; - - case 'procedures': - $url = 'order_procedures'; - break; - - case 'sundries': - $url = 'order_sundries'; - break; - - case 'complete': - $url = '/ante_natal_clinic/'.$anc_registration->id; - break; - - case 'save_consultation': - $url = '/patient_flow_monitoring/index'; - break; - - default: - break; - endswitch; - - flash('AnteNatal clinic registration has been updated successfully')->success(); - return redirect($url); - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - // - } - - /* - Display Ante Natal Clinic menu - */ - public function menu() - { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $patient = Patient::where(['id' => $patient_id])->first(); - $categories = DB::table('patient_categories')->pluck("name", "id"); - $marital_statuses = DB::table('marital_statuses')->pluck("name", "id"); - $drug_categories = DB::table('drug_categories')->get(); - $documents = \Streamline\Models\PatientDocument::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_allergies = \Streamline\Models\Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = \Streamline\Models\Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->pluck('name', 'id'); - return view('antenatal::ante_natal_clinic.menu', compact('patient_id', 'episode_id', 'patient', 'documents', 'known_patient_alerts', 'known_patient_allergies', 'categories', 'marital_statuses', 'drug_categories', 'drug_categories_array')); - } - - /*view details of the last ante natal clinic visit */ - public function view_antenatal_visit($id) - { - $episode_id = $id; - $patient_id = session()->get('patient_id'); - $patient = Patient::find($patient_id); - - //used by the allergies partial - $categories = DB::table('patient_categories')->pluck("name", "id"); - $marital_statuses = DB::table('marital_statuses')->pluck("name", "id"); - $drug_categories = DB::table('drug_categories')->get(); - $triage_id = get_name($episode_id, "id", "triage_id", "patient_episodes"); - $triage = Triage::where(['id' => $triage_id])->first(); - $symptoms = DB::table('symptoms')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $treatment = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'tta' => 0])->first(); - $documents = \Streamline\Models\PatientDocument::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_allergies = \Streamline\Models\Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = \Streamline\Models\Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->pluck('name', 'id'); - - $last_anc_followup_record = AnteNatalClinicFollowup::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('created_at', 'desc')->first(); - $anc_followup_records = AnteNatalClinicFollowup::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('created_at', 'desc')->paginate(50); - //if there is no previous record of the anc follow up go back to ANC menu - if (is_null($last_anc_followup_record)) { - flash('No previous records for this patient')->error(); - return redirect()->back(); - } - $checklist = json_decode($last_anc_followup_record->checklist, true); - - return view('antenatal::ante_natal_clinic.last_antenatal_visit_details', compact('patient_id', 'episode_id', 'patient', 'categories', 'marital_statuses', 'drug_categories', 'documents', 'known_patient_alerts', 'known_patient_allergies', 'drug_categories_array', 'triage', 'symptoms', 'treatment', 'last_anc_followup_record', 'checklist', 'anc_followup_records')); - } - - /* create anc follow up form */ - public function antenatal_visit() - { - - $data = $this->getAncVisitData(); - $data['resume'] = FALSE; - - $data['resume_anc_followup'] = AnteNatalClinicFollowup::where(['patient_id' => $data['patient_id'], 'episode_id' => $data['episode_id'], 'completion_status' => 0])->first(); - - - $data['visit_number'] = !empty($data['anc_visit_records'])? count($data['anc_visit_records']) + 1:1; - - /*if the anc_followup exists then try to resume */ - if (!is_null($data['resume_anc_followup'])) { - $data['resume'] = TRUE; - $data['visit_number'] = $data['resume_anc_followup']->ante_natal_clinic_visit_number; - - return redirect('anc_visits/' . $data['resume_anc_followup']->id . '/edit'); - } - - - - $data['previous_anc_visits'] = AnteNatalClinicFollowup::where(['patient_id' => $data['patient_id']])->orderBy('created_at', 'desc')->take(5)->get()->groupBy('ante_natal_clinic_registration_id'); - return view('antenatal::ante_natal_clinic.antenatal_visit', $data); - } - - /* store anc template form details */ - public function store_anc_template(Request $request) - { - - $episode_id = session()->get('episode_id'); - $patient_id = session()->get('patient_id'); - $physical_exam = []; - // $existing_anc_followup_record = AnteNatalClinicFollowup::where(['episode_id' => $episode_id])->first(); - - /* instantiate a new eloquent model or get the existing one for updating */ - $anc_followup_record = new AnteNatalClinicFollowup; - $anc_followup_record->patient_id = $patient_id; - $anc_followup_record->episode_id = $episode_id; - $anc_followup_record->ante_natal_clinic_date = Carbon::today()->toDateString(); - $anc_followup_record->ante_natal_clinic_registration_id = $request->anc_registration_id; - $anc_followup_record->ante_natal_clinic_visit_number = $request->anc_visit_number; - $anc_followup_record->fundal_height = $request->fundal_height; - $anc_followup_record->lie = $request->lie; - $anc_followup_record->other_physicals = !empty($request->other_physicals)? implode(',', $request->other_physicals):null; - $anc_followup_record->presentation = $request->presentation; - $anc_followup_record->engagement = $request->engagement; - $anc_followup_record->position = $request->position; - $anc_followup_record->foetal_heart_rate = $request->foetal_heart_rate; - $anc_followup_record->foetal_heart_regularity = $request->foetal_heart_regularity; - $anc_followup_record->aph = $request->history_of_aph; - $anc_followup_record->aph_details = $request->aph_details; - $anc_followup_record->fits = $request->histoy_of_fits; - $anc_followup_record->fits_details = $request->fits_details; - $physical_exam['height'] =$request->height; - $physical_exam['weight'] =$request->weight; - $physical_exam['bmi'] =$request->bmi; - $physical_exam['muac'] =$request->muac; - $physical_exam['nut_status'] =$request->nut_status; - $physical_exam['temperature'] =$request->temperature; - $physical_exam['bp'] =$request->bp; - $physical_exam['pulse'] =$request->pulse; - $physical_exam['gait'] =$request->gait; - $physical_exam['oral'] =$request->oral; - $physical_exam['teeth'] =$request->teeth; - $physical_exam['neck'] =$request->neck; - $physical_exam['breasts'] =$request->breasts; - $physical_exam['legs'] =$request->legs; - $physical_exam['deformities'] =$request->deformities; - $physical_exam['lymph'] =$request->lymph; - $physical_exam['herpes'] =$request->herpes; - $physical_exam['anaemia'] =$request->anaemia; - $physical_exam['eyes'] =$request->eyes; - $physical_exam['nails'] =$request->nails; - $physical_exam['palms'] =$request->palms; - $physical_exam['jaundice'] =$request->jaundice; - $physical_exam['heart'] =$request->heart; - $physical_exam['lungs'] =$request->lungs; - $physical_exam['vulva'] =$request->vulva; - $physical_exam['vagina'] =$request->vagina; - $physical_exam['cervix'] =$request->cervix; - $physical_exam['vaginal_discharge'] =$request->vaginal_discharge; - $anc_followup_record->physical_exam = json_encode($physical_exam); - $symptoms_array = $request->symptoms; - $duration_array = $request->duration; - $time_array = $request->time; - - // Build symptoms and duration variables - $symptoms = ''; - $durations = ''; - for ($x = 0; $x < count($symptoms_array); $x++) { - if ($x == (count($symptoms_array) - 1)) { - $symptoms .= $symptoms_array[$x]; - $durations .= $duration_array[$x] . " " . $time_array[$x]; - } else { - $symptoms .= $symptoms_array[$x] . ","; - $durations .= $duration_array[$x] . " " . $time_array[$x] . ","; - } - } - $anc_followup_record->symptoms = $symptoms; - $anc_followup_record->symptom_duration = $durations; - - // $anc_followup_record->bp = $request->bp; - $anc_followup_record->scan_edd = is_null($request->scan_edd) ? null : Carbon::createFromFormat('d/m/Y', $request->scan_edd)->toDateString(); - $anc_followup_record->gestation_from_edd = $request->gestation_from_edd; - $anc_followup_record->gestation_from_scan = $request->gestation_from_scan; - $anc_followup_record->gestation_from_fundal = $request->gestation_from_fundal_height; - //checklist items - $first_dose_ipt = isset($request->first_dose_ipt) ? $request->first_dose_ipt : ''; - $second_dose_ipt = isset($request->second_dose_ipt) ? $request->second_dose_ipt : ''; - $third_dose_ipt = isset($request->third_dose_ipt) ? $request->third_dose_ipt : ''; - $fourth_dose_ipt = isset($request->fourth_dose_ipt) ? $request->fourth_dose_ipt : ''; - $hiv_status = isset($request->hiv_status) ? $request->hiv_status : ''; - $bed_net = isset($request->bed_net) ? $request->bed_net : ''; - $iron_folic = isset($request->iron_folic) ? $request->iron_folic : ''; - $vdrl = isset($request->vdrl) ? $request->vdrl : ''; - $health_education = isset($request->health_education) ? $request->health_education : ''; - $tetanus_toxoid = isset($request->tetanus_toxoid) ? $request->tetanus_toxoid : ''; - - $checklist = array($first_dose_ipt, $second_dose_ipt, $third_dose_ipt, $fourth_dose_ipt, $hiv_status, $bed_net, $iron_folic, $vdrl, $health_education, $tetanus_toxoid); - $anc_followup_record->checklist = json_encode($checklist); - $anc_followup_record->comments = $request->comments; - $anc_followup_record->history_comments = $request->history_comments; - $anc_followup_record->clinic_examination_comments = $request->clinic_examination_comments; - $anc_followup_record->investigation_and_management_plan_comments = $request->investigation_and_management_plan_comments; - $anc_followup_record->primary_diagnosis = $request->primary_diagnosis ?? NULL; - $anc_followup_record->other_diagnoses = $request->other_diagnosis ? implode(',', $request->other_diagnosis) : null; - /* check if any submit_btn(investigations,treatment,procedures,ultra_scan) button is clicked and set completion status to 0 i.s false */ - $completed = isset($request->complete_btn) ? 1 : 0; - $anc_followup_record->completion_status = $completed; - $anc_followup_record->outcome_id = $request->outcome; - - switch ($request->outcome): - case 1: //Admitted - $inpatient = new InpatientInfo; - $inpatient->patient_id = $patient_id; - $inpatient->episode_id = $episode_id; - $inpatient->admitted_on = !empty($request->admitted_on)? Carbon::createFromFormat('d/m/Y', $request->admitted_on)->toDateString() : date('Y-m-d'); - $inpatient->ward_id = $request->ward_id; - $inpatient->primary_diagnosis = $request->primary_diagnosis; - $inpatient->other_diagnoses = serialize($request->other_diagnosis); - $inpatient->comments = $request->comments; - $inpatient->created_by = auth()->user()->id; - $inpatient->save(); - - - - $anc_followup_record->ward_id = $request->ward_id; - $anc_followup_record->admitted_on = !is_null($request->admitted_on) ? Carbon::createFromFormat('d/m/Y', $request->admitted_on)->toDateString() : null; - break; - case 3: // Home with followup - $anc_followup_record->followup_where = "Hospital"; - $anc_followup_record->followup_when = !is_null($request->followup_when) ? Carbon::createFromFormat('d/m/Y', $request->followup_when)->toDateString() : null; - - // save information to the follow-up table - $appointment = new \Streamline\Models\PatientAppointment(); - $appointment->patient_id = $patient_id; - $appointment->incharge_id = $request->followup_in_charge; - $appointment->clinic_allocation = $request->followup_clinic_allocation; - $appointment->episode_id = $episode_id; - $appointment->appointment_date = !is_null($request->followup_when) ? Carbon::createFromFormat('d/m/Y', $request->followup_when)->toDateString() : null; - $appointment->appointment_time = $request->followup_in_time; - $appointment->created_from = "Antenatal"; - $appointment->created_by = auth()->user()->id; - $appointment->save(); - break; - case 4: // Referred - $anc_followup_record->referred_to = $request->referral_id; - break; - default: - break; - endswitch; - - $anc_followup_record->created_by = auth()->user()->id; - /* if $resume is set and also equal to true, then update the record else insert a new one */ - $save_or_update = isset($request->resume) ? $anc_followup_record->update() : $anc_followup_record->save(); - $url = ''; - //Store Delivery Plan details - if(!empty($request->delivery_plan_id)) { - $delivery_plan_record = AncDeliveryPlan::find($request->delivery_plan_id); - $delivery_plan_record->updated_by = auth()->user()->id; - } - else { - $delivery_plan_record = new AncDeliveryPlan(); - $delivery_plan_record->created_by = auth()->user()->id; - } - $delivery_plan_record->patient_id = $patient_id; - $delivery_plan_record->episode_id = $episode_id; - $delivery_plan_record->registration_id = $request->anc_registration_id; - $delivery_plan_record->live_in_support = $request->live_in_support; - $delivery_plan_record->emergency_support = $request->emergency_support; - $delivery_plan_record->facility_stay = $request->facility_stay; - $delivery_plan_record->transport_means = $request->transport_means; - $delivery_plan_record->home_keeper = $request->home_keeper; - $delivery_plan_record->delivery_method = $request->delivery_method; - $delivery_plan_record->family_planning_method = $request->family_planning_method; - $delivery_plan_record->health_screening = !empty($request->health_screening)? implode(',', $request->health_screening):null; - $delivery_plan_record->disposal = $request->disposal; - $delivery_plan_record->save(); - - if(empty($request->complete_btn)) session()->put('anc_visit_redirect','anc_visits/'.$anc_followup_record->id.'/edit'); - else { - if($save_or_update) flash('ANC record saved successfully')->success(); - return self::view_anc_visit_details($anc_followup_record->id); - } - - if ($save_or_update) { - /* redirect to the appropriate url after saving or updating the record depending on the clicked button */ - switch ($request->submit_btn) { - case 'investigation': - $url = 'investigations/investigations_review'; - break; - case 'treatment': - $url = 'prescriptions/create/'; - break; - case 'procedures': - $url = 'order_procedures'; - break; - case 'order_ultrasound': - $url = 'investigations/investigations_review_ultrasound_obstetric'; - break; - default: - $url = 'patient_episodes'; - break; - } - - flash('ANC record saved successfully')->success(); - return redirect($url); - } - - flash('Error occured in trying to save the anc record')->error(); - return redirect()->back()->withInput(); - } - - public function edit_anc_visit($id) - { - - $data = $this->getAncVisitData(); - $data['resume'] = TRUE; - $data['resume_anc_followup'] = AnteNatalClinicFollowup::find($id); - $data['visit_number'] = $data['resume_anc_followup']->ante_natal_clinic_visit_number; - $data['previous_anc_visits'] = AnteNatalClinicFollowup::where('patient_id', $data['patient_id'])->where('id','<>', $id)->orderBy('created_at', 'desc')->take(5)->get()->groupBy('ante_natal_clinic_registration_id'); - - return view('antenatal::ante_natal_clinic.antenatal_visit_edit', $data); - } - - /* update an edited ANC visit a.k.a ANC followup */ - public function update_anc_template(Request $request, $id) - { - $episode_id = session()->get('episode_id'); - $patient_id = session()->get('patient_id'); - $anc_followup_record = AnteNatalClinicFollowup::findOrFail($id); - $physical_exam = []; - $anc_followup_record->patient_id = $patient_id; - $anc_followup_record->episode_id = $episode_id; - $anc_followup_record->ante_natal_clinic_registration_id = $request->anc_registration_id; - $anc_followup_record->ante_natal_clinic_visit_number = $request->anc_visit_number; - $anc_followup_record->fundal_height = $request->fundal_height; - $anc_followup_record->lie = $request->lie; - $anc_followup_record->other_physicals = !empty($request->other_physicals)? implode(',', $request->other_physicals):null; - $anc_followup_record->presentation = $request->presentation; - $anc_followup_record->engagement = $request->engagement; - $anc_followup_record->position = $request->position; - $anc_followup_record->foetal_heart_rate = $request->foetal_heart_rate; - $anc_followup_record->foetal_heart_regularity = $request->foetal_heart_regularity; - $anc_followup_record->aph = $request->history_of_aph; - $anc_followup_record->aph_details = $request->aph_details; - $anc_followup_record->fits = $request->histoy_of_fits; - $anc_followup_record->fits_details = $request->fits_details; - $physical_exam['height'] =$request->height; - $physical_exam['weight'] =$request->weight; - $physical_exam['bmi'] =$request->bmi; - $physical_exam['muac'] =$request->muac; - $physical_exam['nut_status'] =$request->nut_status; - $physical_exam['temperature'] =$request->temperature; - $physical_exam['bp'] =$request->bp; - $physical_exam['pulse'] =$request->pulse; - $physical_exam['gait'] =$request->gait; - $physical_exam['oral'] =$request->oral; - $physical_exam['teeth'] =$request->teeth; - $physical_exam['neck'] =$request->neck; - $physical_exam['breasts'] =$request->breasts; - $physical_exam['legs'] =$request->legs; - $physical_exam['deformities'] =$request->deformities; - $physical_exam['lymph'] =$request->lymph; - $physical_exam['herpes'] =$request->herpes; - $physical_exam['anaemia'] =$request->anaemia; - $physical_exam['eyes'] =$request->eyes; - $physical_exam['nails'] =$request->nails; - $physical_exam['palms'] =$request->palms; - $physical_exam['jaundice'] =$request->jaundice; - $physical_exam['heart'] =$request->heart; - $physical_exam['lungs'] =$request->lungs; - $physical_exam['vulva'] =$request->vulva; - $physical_exam['vagina'] =$request->vagina; - $physical_exam['cervix'] =$request->cervix; - $physical_exam['vaginal_discharge'] =$request->vaginal_discharge; - $anc_followup_record->physical_exam = json_encode($physical_exam); - - $symptoms_array = $request->symptoms; - $duration_array = $request->duration; - $time_array = $request->time; - // Build symptoms and duration variables as copied from Triage Controller - $symptoms = ''; - $durations = ''; - for ($x = 0; $x < count($symptoms_array); $x++) { - if ($x == (count($symptoms_array) - 1)) { - $symptoms .= $symptoms_array[$x]; - $durations .= $duration_array[$x] . " " . $time_array[$x]; - } else { - $symptoms .= $symptoms_array[$x] . ","; - $durations .= $duration_array[$x] . " " . $time_array[$x] . ","; - } - } - $anc_followup_record->symptoms = $symptoms; - $anc_followup_record->symptom_duration = $durations; - - // $anc_followup_record->bp = $request->bp; - $anc_followup_record->scan_edd = is_null($request->scan_edd) ? null : Carbon::createFromFormat('d/m/Y', $request->scan_edd)->toDateString(); - $anc_followup_record->gestation_from_edd = $request->gestation_from_edd; - $anc_followup_record->gestation_from_scan = $request->gestation_from_scan; - $anc_followup_record->gestation_from_fundal = $request->gestation_from_fundal_height; - //checklist items - $first_dose_ipt = isset($request->first_dose_ipt) ? $request->first_dose_ipt : ''; - $second_dose_ipt = isset($request->second_dose_ipt) ? $request->second_dose_ipt : ''; - $third_dose_ipt = isset($request->third_dose_ipt) ? $request->third_dose_ipt : ''; - $fourth_dose_ipt = isset($request->fourth_dose_ipt) ? $request->fourth_dose_ipt : ''; - $hiv_status = isset($request->hiv_status) ? $request->hiv_status : ''; - $bed_net = isset($request->bed_net) ? $request->bed_net : ''; - $iron_folic = isset($request->iron_folic) ? $request->iron_folic : ''; - $vdrl = isset($request->vdrl) ? $request->vdrl : ''; - $health_education = isset($request->health_education) ? $request->health_education : ''; - $tetanus_toxoid = isset($request->tetanus_toxoid) ? $request->tetanus_toxoid : ''; - - $checklist = array($first_dose_ipt, $second_dose_ipt, $third_dose_ipt, $fourth_dose_ipt, $hiv_status, $bed_net, $iron_folic, $vdrl, $health_education, $tetanus_toxoid); - $anc_followup_record->checklist = json_encode($checklist); - $anc_followup_record->comments = $request->comments; - $anc_followup_record->history_comments = $request->history_comments; - $anc_followup_record->clinic_examination_comments = $request->clinic_examination_comments; - $anc_followup_record->investigation_and_management_plan_comments = $request->investigation_and_management_plan_comments; - $anc_followup_record->primary_diagnosis = $request->primary_diagnosis; - $anc_followup_record->other_diagnoses = (!empty($request->other_diagnosis[0])) ? implode(',', $request->other_diagnosis) : null; - /* check if any submit_btn(investigations,treatment,procedures,ultra_scan) button is clicked and set completion status to 0 i.s false */ - $completed = isset($request->complete_btn) ? 1 : 0; - $anc_followup_record->completion_status = $completed; - - $anc_followup_record->outcome_id = $request->outcome; - - switch ($request->outcome): - case 1: //Admitted - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'discharged' => 0])->orderBy('created_at', 'desc')->first(); - if ($inpatient_info) { - $inpatient_info->ward_id = $request->ward_id; - $inpatient_info->updated_by = auth()->user()->id; - $inpatient_info->save(); - } else { - $inpatient = new InpatientInfo; - $inpatient->patient_id = $patient_id; - $inpatient->episode_id = $episode_id; - $inpatient->admitted_on = !empty($request->admitted_on)? Carbon::createFromFormat('d/m/Y', $request->admitted_on)->toDateString() : date('Y-m-d'); - $inpatient->ward_id = $request->ward_id; - $inpatient->primary_diagnosis = $request->primary_diagnosis; - $inpatient->other_diagnoses = serialize($request->other_diagnosis); - $inpatient->comments = $request->comments; - $inpatient->created_by = auth()->user()->id; - $inpatient->save(); - } - - $anc_followup_record->ward_id = $request->ward_id; - $anc_followup_record->admitted_on = !is_null($request->admitted_on) ? Carbon::createFromFormat('d/m/Y', $request->admitted_on)->toDateString() : null; - break; - case 3: // Home with followup - /*$anc_followup_record->followup_where = $request->followup_where; - $anc_followup_record->followup_when = !is_null($request->followup_when) ? Carbon::createFromFormat('d/m/Y',$request->followup_when)->toDateString() : null;*/ - $anc_followup_record->followup_where = "Hospital"; - $anc_followup_record->followup_when = !is_null($request->followup_when) ? Carbon::createFromFormat('Y-m-d', $request->followup_when)->toDateString() : null; - - // save information to the follow-up table - $patient_appointment = \Streamline\Models\PatientAppointment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $appointment = $patient_appointment ? $patient_appointment : new \Streamline\Models\PatientAppointment(); - $appointment->patient_id = $patient_id; - $appointment->incharge_id = $request->followup_in_charge; - $appointment->clinic_allocation = $request->followup_clinic_allocation; - $appointment->episode_id = $episode_id; - $appointment->appointment_date = !is_null($request->followup_when) ? Carbon::createFromFormat('Y-m-d', $request->followup_when)->toDateString() : null; - $appointment->appointment_time = $request->followup_in_time; - $appointment->created_from = "Antenatal"; - $appointment->created_by = auth()->user()->id; - $appointment->updated_by = auth()->user()->id; - $appointment->save(); - break; - case 4: // Referred - $anc_followup_record->referred_to = $request->referral_id; - break; - default: - break; - endswitch; - - $anc_followup_record->updated_by = auth()->user()->id; - $save_or_update = $anc_followup_record->save(); - $url = ''; - //Store Delivery Plan details - if(!empty($request->delivery_plan_id)) { - $delivery_plan_record = AncDeliveryPlan::find($request->delivery_plan_id); - $delivery_plan_record->updated_by = auth()->user()->id; - } - else { - $delivery_plan_record = new AncDeliveryPlan(); - $delivery_plan_record->created_by = auth()->user()->id; - $delivery_plan_record->patient_id = $patient_id; - $delivery_plan_record->episode_id = $episode_id; - $delivery_plan_record->registration_id = $request->anc_registration_id; - } - $delivery_plan_record->live_in_support = $request->live_in_support; - $delivery_plan_record->emergency_support = $request->emergency_support; - $delivery_plan_record->facility_stay = $request->facility_stay; - $delivery_plan_record->transport_means = $request->transport_means; - $delivery_plan_record->home_keeper = $request->home_keeper; - $delivery_plan_record->delivery_method = $request->delivery_method; - $delivery_plan_record->family_planning_method = $request->family_planning_method; - $delivery_plan_record->health_screening = !empty($request->health_screening)? implode(',', $request->health_screening):null; - $delivery_plan_record->disposal = $request->disposal; - $delivery_plan_record->save(); - - if(empty($request->complete_btn)) session()->put('anc_visit_redirect','anc_visits/'.$anc_followup_record->id.'/edit'); - else { - if($save_or_update) flash('ANC record saved successfully')->success(); - return self::view_anc_visit_details($anc_followup_record->id); - } - - if ($save_or_update) { - /* redirect to the appropriate url after saving or updating the record depending on the clicked button */ - switch ($request->submit_btn) { - case 'investigation': - $url = 'investigations/investigations_review'; - break; - case 'treatment': - $url = 'prescriptions/create/'; - break; - case 'procedures': - $url = 'order_procedures'; - break; - case 'order_ultrasound': - $url = 'investigations/investigations_review_ultrasound_obstetric'; - break; - default: - $url = 'patient_episodes'; - break; - } - - flash('ANC record saved successfully')->success(); - return redirect($url); - } - - flash('Error occured in trying to save the anc record')->error(); - return redirect()->back()->withInput(); - } - - /* check if a pregnancy for that antenatal episode is registered. To record an Antenatal visit, thats epsiode - * must have a record in the the ANC registration table - */ - public function check_anc_registration() - { - $patient_id = session()->get('patient_id'); - $anc_registration_record = AnteNatalClinicRegistration::where('patient_id', $patient_id)->latest()->first(); - if (!empty($anc_registration_record)) { - $edd = Carbon::parse($anc_registration_record->edd); - $date_latest = $edd->addWeeks(6); - if (Carbon::now() < $date_latest) return "true"; - else return "false"; - } - else return "false"; - } - - public function view_anc_visit_details($id) - { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $visit_record_details = AnteNatalClinicFollowup::findOrFail($id); - - $patient = Patient::find($patient_id); - $diagnoses = DB::table('diagnoses')->whereNull('deleted_at')->orderBy('name', 'asc')->pluck("name", "id"); - $outcomes = DB::table('outcomes')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - - $anc_lies = AnteNatalClinicLie::pluck('name', 'id'); - $anc_presentations = AnteNatalClinicPresentation::pluck('name', 'id'); - $anc_positions = AnteNatalClinicPosition::pluck('name', 'id'); - $anc_engagements = AnteNatalClinicEngagement::pluck('name', 'id'); - $anc_registration = AnteNatalClinicRegistration::where(['patient_id' => $patient_id])->latest()->first(); - $delivery_plan = AncDeliveryPlan::where(['patient_id' => $patient_id, 'episode_id' => $anc_registration->episode_id])->first(); - return view('antenatal::ante_natal_clinic.antenatal_visit_details', compact('patient_id', 'episode_id', 'delivery_plan', 'anc_lies', 'anc_presentations', 'anc_positions', 'anc_engagements', 'visit_record_details', 'outcomes', 'patient', 'diagnoses')); - } - - public function route() - { - /* - * Check if a consultation is pending and then route it to edit page - * If a consultation is completed, route to the view page - */ - - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $existing_anc_registration = AnteNatalClinicRegistration::where(['patient_id' => $patient_id])->latest()->first(); - session()->put('previous_action', 'anc_consultation_page'); - if ($existing_anc_registration) { - $edd = Carbon::parse($existing_anc_registration->edd); - $date_latest = $edd->addMonths(6); - if (Carbon::now() > $date_latest) return self::create(); - else { - switch ($existing_anc_registration->completed) { - case '0': // Pending - return self::edit($existing_anc_registration->id); - break; - case '1': // Completed - return self::show($existing_anc_registration->id); - break; - default: // Not created yet - return self::create(); - break; - } - } - } else { - return self::create(); - } - } - - public function calculate_edd_from_lmp(Request $request) - { - $lmp_date = $request->lmp_date; - $lmp_date = Carbon::createFromFormat('d/m/Y', $request->lmp_date); - $edd = $lmp_date->addDays(280); - $edd = $edd->toDateString(); - - $date = date("d/m/Y", strtotime($edd)); - - return response()->json($date); - } - - public function calculate_woa_weeks_from_lmp(Request $request){ - $lmp_date = Carbon::createFromFormat('d/m/Y', $request->lmp_date); - $now = Carbon::now(); - $days = $lmp_date->diffInDays($now); - $weeks = floor($days / 7); - $dayRemainder = $days % 7; - $woa_weeks = $weeks.''.$dayRemainder.''; - return response()->json($woa_weeks); - } - - public function add_uterus_operation(Request $request) - { - - $referral_hospital = new UterusOperation; - $referral_hospital->name = $request->name; - $referral_hospital->created_by = Auth()->user()->id; - - if ($referral_hospital->save()) return $referral_hospital->id; - else return 0; - } - - public function add_family_planning_method(Request $request) - { - - $method = new FamilyPlanningMethod; - $method->name = $request->name; - $method->created_by = Auth()->user()->id; - - if ($method->save()) return $method->id; - else return 0; - } - - public function add_gender_based_violence(Request $request) - { - - $referral_hospital = new GenderViolence; - $referral_hospital->name = $request->name; - $referral_hospital->created_by = Auth()->user()->id; - - if ($referral_hospital->save()) return $referral_hospital->id; - else return 0; - } - - public function add_caesarian_section(Request $request) - { - - $referral_hospital = new CaesarianSection(); - $referral_hospital->name = $request->name; - $referral_hospital->created_by = Auth()->user()->id; - - if ($referral_hospital->save()) return $referral_hospital->id; - else return 0; - } - - /** - * Display a listing of all ante natal visits. - * - * @return \Illuminate\Http\Response - */ - public function previously_registered_pregnancy_anc_visits(Request $request) - { - $episode_id = session()->get('episode_id'); - $patient_id = session()->get('patient_id'); - $patient = Patient::find($patient_id); - $pregnancy_ids=unserialize($request->visits); - $categories = DB::table('patient_categories')->pluck("name", "id"); - $marital_statuses = DB::table('marital_statuses')->pluck("name", "id"); - $drug_categories = DB::table('drug_categories')->get(); - $documents = PatientDocument::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_allergies = Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->pluck('name', 'id'); - - $anc_followup_records = AnteNatalClinicFollowup::whereIn('id', $pregnancy_ids)->orderBy('created_at', 'desc')->get()->groupBy('ante_natal_clinic_registration_id'); - return view('antenatal::ante_natal_clinic.index_visits', compact('patient_id', 'patient', 'anc_followup_records', 'categories', 'marital_statuses', 'drug_categories', 'documents', 'known_patient_allergies', 'known_patient_alerts', 'drug_categories_array')); - } - - public function antenatal_card(){ - $episode_id = session()->get('episode_id');// Get episode id from session - $patient_id = session()->get('patient_id');// Get patient id from session - $anc_registration_details = AnteNatalClinicRegistration::where([['patient_id', $patient_id], ['episode_id', $episode_id]])->first(); - if(empty($anc_registration_details)) { - flash('No Pregnancy Registered for this episode.')->error(); - return redirect()->back(); - } - $patient = Patient::where('patients.id',$patient_id)->leftJoin('districts','districts.id','district_id')->leftJoin('subcounties','subcounties.id','subcounty_id')->leftJoin('parishes','parishes.id','parish_id')->leftJoin('villages','villages.id','village_id') - ->leftJoin('occupations','occupations.id','occupation_id')->leftJoin('family_relations','family_relations.id','next_of_kin_relationship')->leftJoin('marital_statuses','marital_statuses.id','marital_status')->leftJoin('religions','religions.id','religion_id') - ->first(['villages.name as village','districts.name as district','subcounties.name as subcounty','parishes.name as parish','occupations.name as occupation', 'family_relations.name as family_relation','marital_statuses.name as marital_status','religions.name as religion', - 'first_name', 'last_name', 'national_id','phone','date_of_birth','next_of_kin','phone_of_next_of_kin']); - $mother_history = AntenatalMotherHistory::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $family_planning_methods = FamilyPlanningMethod::orderBy('name', 'asc')->pluck("name", "id"); - $gender_based_violence = GenderViolence::orderBy('name', 'asc')->pluck("name", "id"); - $triage = Triage::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $obstetric_history_details = ObstetricHistory::where(['patient_id' => $patient_id])->orderBy('obstetric_date', 'desc')->get(); - $hospitalInfo = DB::table('hospital_information')->find(1); - $anc_visits = AnteNatalClinicFollowup::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $latest_anc_visit = $anc_visits->last(); - $anc_presentations = AnteNatalClinicPresentation::pluck('name', 'id'); - $anc_lies = AnteNatalClinicLie::pluck('name', 'id'); - $anc_positions = AnteNatalClinicPosition::pluck('name', 'id'); - $users = DB::table('users')->pluck(DB::raw("CONCAT(first_name,' ',last_name) AS name"), 'id'); - $obs_scan_results = InvestigationResults::leftJoin('obstetric_ultrasound_reports as o','o.order_id','investigation_results.order_id') - ->where(['patient_id'=>$patient_id, 'episode_id'=>$episode_id,'result_type'=>'Ultrasound_Obstetric', 'all_authenticated'=>1]) - ->select('o.*')->get(); - $treatments = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'tta' => 0])->get(); - $dosage_frequencies = DB::table('dosage_frequencies')->pluck('name', 'id'); - $drugs =Drug::pluck('name', 'id'); - $malaria_investigations =Investigation::whereIn('hmis_002_slug', [2,3])->pluck('id')->toArray(); - $malaria_ids = $malaria_inv_result = ''; - foreach($malaria_investigations as $key => $malaria_investigation) { - if($key == 0) $malaria_ids .= 'FIND_IN_SET('.$malaria_investigation.',investigation_id)'; - else $malaria_ids .= 'OR FIND_IN_SET('.$malaria_investigation.',investigation_id)'; - } - if(!empty( $malaria_ids)){ - $query = 'SELECT `id`, `investigation_id`, `value` FROM `investigation_results` WHERE `patient_id` = '.$patient_id.' AND `episode_id` = '.$episode_id.' AND `all_authenticated`= 1 AND `deleted_at` IS NULL AND ('.$malaria_ids.') ORDER BY `id` DESC LIMIT 1'; - $results = DB::select($query); - if(!empty($results[0])){ - $ids = explode(',', $results[0]->investigation_id); - $values = explode(',', $results[0]->value); - $id = array_search($malaria_investigation, $ids); - $malaria_inv_result = strtolower($values[$id]); - } - } - $results = InvestigationResults::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->latest()->first(); - $data = ['patient', 'anc_registration_details', 'mother_history', 'family_planning_methods', 'gender_based_violence', 'triage', - 'obstetric_history_details', 'hospitalInfo', 'anc_visits', 'latest_anc_visit', 'anc_presentations', 'anc_lies', 'anc_positions', - 'users', 'obs_scan_results', 'treatments', 'dosage_frequencies', 'drugs', 'malaria_inv_result']; - - // return view('antenatal::ante_natal_clinic.anc_card', compact($data)); - - $pdf = SnappyPDF::loadView('antenatal::ante_natal_clinic.anc_card', compact($data)) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('footer-html', ''.config('app.name').' - Printed On ' . streamline_date(date('Y-m-d')) . ' By ' . auth()->user()->first_name . " " . auth()->user()->last_name . ''); - return $pdf->inline('ANC Card' . date(" d-m-y h:ia") . '.pdf'); - - - } - - private function getAncVisitData(){ - $episode_id = session()->get('episode_id'); - $patient_id = session()->get('patient_id'); - $patient = Patient::findOrFail($patient_id); - $dob = new Carbon($patient->date_of_birth); - $age_diff_months = $dob->diffInMonths(Carbon::now()); - $categories = DB::table('patient_categories')->pluck("name", "id"); - $diagnoses = DB::table('diagnoses')->whereNull('deleted_at')->orderBy('name', 'asc')->pluck("name", "id")->prepend('- select -', ''); - $marital_statuses = DB::table('marital_statuses')->pluck("name", "id"); - $drug_categories = DB::table('drug_categories')->get(); - $symptoms = DB::table('symptoms')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - //select treatment - $treatment = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'tta' => 0])->first(); - $documents = PatientDocument::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_allergies = Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->pluck('name', 'id'); - $wards = DB::table('wards')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $referrals = DB::table('referral_hospitals')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - //drop down values - $anc_lies = AnteNatalClinicLie::pluck('name', 'id')->prepend('- select -', ''); - $anc_presentations = AnteNatalClinicPresentation::pluck('name', 'id')->prepend('- select -', ''); - $anc_positions = AnteNatalClinicPosition::pluck('name', 'id')->prepend('- select -', ''); - $anc_engagements = AnteNatalClinicEngagement::pluck('name', 'id')->prepend('- select -', ''); - $heart_regularity = HeartRegularity::pluck('name', 'id')->prepend('- select -', ''); - $symptoms = DB::table('symptoms')->orderBy('name')->pluck("name", "id")->toArray(); - $symptoms = ['' => '- select -'] + $symptoms; - $outcomes = DB::table('outcomes')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $anc_registration = AnteNatalClinicRegistration::where(['patient_id' => $patient_id])->orderBy('id', 'desc')->first(); - $delivery_plan = AncDeliveryPlan::where(['patient_id' => $patient_id, 'episode_id' => $anc_registration->episode_id])->first(); - $triage = Triage::where(['patient_id' => $patient_id, 'episode_id' => $anc_registration->episode_id])->first(); - $obs_scan_results = InvestigationResults::leftJoin('obstetric_ultrasound_reports as o','o.order_id','investigation_results.order_id') - ->where(['patient_id'=>$patient_id, 'episode_id'=>$anc_registration->episode_id,'result_type'=>'Ultrasound_Obstetric', 'all_authenticated'=>1]) - ->latest('o.created_at')->first(['expected_delivery_date', 'average_gestational_age', 'o.id']); - - //check if there exists anc visit records of this episode already - $anc_visit_records = AnteNatalClinicFollowup::where(['episode_id' => $episode_id, 'completion_status' => 1])->get(); - $obstetric_history_details = ObstetricHistory::where(['patient_id' => $patient_id])->orderBy('obstetric_date', 'desc')->get(); - - $clinics = Clinic::orderBy('name')->pluck("name", "id")->toArray(); - $clinics = ['0' => "Don't assign clinic"] + $clinics; - $users = \Streamline\Models\User::orderBy('first_name')->select("id", "first_name", "last_name")->get(); - - /* episode details */ - $episode = PatientEpisode::where('id', $episode_id)->first(); - /* get treatment */ - $treatments = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'tta' => 0])->get(); - /* get ordered procedures */ - $ordered_procedures = OrderedProcedure::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - //check for ordered investigations,procedures and treatment - $ordered_investigations = OrderedInvestigation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - /* get ordered sundries */ - $ordered_sundries = OrderedSundry::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - //check for authenticated investigations - $investigation_results = InvestigationResults::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $diagnoses_all = DB::table('diagnoses')->select('id', 'prompts', 'reference_areas', 'reference_names')->get(); - $hmis_categories = DB::table('hmis_categories')->orderBy('title', 'asc')->pluck('title', 'id')->toArray(); - $hmis_categories = ['' => '- select -'] + $hmis_categories; - - $inpatient_info = InpatientInfo::where('patient_id', $patient_id)->where('discharged', 0)->count(); - $visit_data = [ - 'episode_id' => $episode_id, - 'patient_id' => $patient_id, - 'patient' => $patient, - 'age_diff_months' => $age_diff_months, - 'categories' => $categories, - 'diagnoses' => $diagnoses, - 'marital_statuses' => $marital_statuses, - 'drug_categories' => $drug_categories, - 'symptoms' => $symptoms, - 'outcomes' => $outcomes, - 'anc_registration' => $anc_registration, - 'delivery_plan' => $delivery_plan, - 'triage' => $triage, - 'obs_scan_results' => $obs_scan_results, - 'known_patient_allergies' => $known_patient_allergies, - 'known_patient_alerts' => $known_patient_alerts, - 'drug_categories_array' => $drug_categories_array, - 'wards' => $wards, - 'referrals' => $referrals, - 'anc_lies' => $anc_lies, - 'anc_presentations' => $anc_presentations, - 'anc_positions' => $anc_positions, - 'anc_engagements' => $anc_engagements, - 'heart_regularity' => $heart_regularity, - 'diagnoses_all' => $diagnoses_all, - 'hmis_categories' => $hmis_categories, - 'inpatient_info' => $inpatient_info, - 'treatment' => $treatment, - 'documents' => $documents, - 'ordered_procedures' => $ordered_procedures, - 'ordered_investigations' => $ordered_investigations, - 'ordered_sundries' => $ordered_sundries, - 'investigation_results' => $investigation_results, - 'clinics' => $clinics, - 'users' => $users, - 'episode' => $episode, - 'treatments' => $treatments, - 'anc_visit_records' => $anc_visit_records, - 'obstetric_history_details' => $obstetric_history_details, - 'outcomes' => $outcomes, - - ]; - - return $visit_data; - } -} diff --git a/docker/statistics/Modules/Antenatal/Http/Controllers/Controller.php b/docker/statistics/Modules/Antenatal/Http/Controllers/Controller.php deleted file mode 100755 index 3d531f9e..00000000 --- a/docker/statistics/Modules/Antenatal/Http/Controllers/Controller.php +++ /dev/null @@ -1,13 +0,0 @@ -registerTranslations(); - $this->registerConfig(); - $this->registerViews(); - $this->loadMigrationsFrom(module_path($this->moduleName, 'Database/Migrations')); - } - - /** - * Register the service provider. - * - * @return void - */ - public function register() - { - $this->app->register(RouteServiceProvider::class); - } - - /** - * Register config. - * - * @return void - */ - protected function registerConfig() - { - $this->publishes([ - module_path($this->moduleName, 'Config/config.php') => config_path($this->moduleNameLower . '.php'), - ], 'config'); - $this->mergeConfigFrom( - module_path($this->moduleName, 'Config/config.php'), $this->moduleNameLower - ); - } - - /** - * Register views. - * - * @return void - */ - public function registerViews() - { - $viewPath = resource_path('views/modules/' . $this->moduleNameLower); - - $sourcePath = module_path($this->moduleName, 'Resources/views'); - - $this->publishes([ - $sourcePath => $viewPath - ], ['views', $this->moduleNameLower . '-module-views']); - - $this->loadViewsFrom(array_merge($this->getPublishableViewPaths(), [$sourcePath]), $this->moduleNameLower); - } - - /** - * Register translations. - * - * @return void - */ - public function registerTranslations() - { - $langPath = resource_path('lang/modules/' . $this->moduleNameLower); - - if (is_dir($langPath)) { - $this->loadTranslationsFrom($langPath, $this->moduleNameLower); - $this->loadJsonTranslationsFrom($langPath); - } else { - $this->loadTranslationsFrom(module_path($this->moduleName, 'Resources/lang'), $this->moduleNameLower); - $this->loadJsonTranslationsFrom(module_path($this->moduleName, 'Resources/lang')); - } - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides() - { - return []; - } - - private function getPublishableViewPaths(): array - { - $paths = []; - foreach (\Config::get('view.paths') as $path) { - if (is_dir($path . '/modules/' . $this->moduleNameLower)) { - $paths[] = $path . '/modules/' . $this->moduleNameLower; - } - } - return $paths; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/Antenatal/Providers/RouteServiceProvider.php b/docker/statistics/Modules/Antenatal/Providers/RouteServiceProvider.php deleted file mode 100755 index c6d5b625..00000000 --- a/docker/statistics/Modules/Antenatal/Providers/RouteServiceProvider.php +++ /dev/null @@ -1,68 +0,0 @@ -mapApiRoutes(); - $this->mapWebRoutes(); - } - - /** - * Define the "web" routes for the application. - * - * These routes all receive session state, CSRF protection, etc. - * - * @return void - */ - protected function mapWebRoutes() - { - Route::middleware('web') - ->namespace($this->namespace) - ->group(module_path('Antenatal', '/Routes/web.php')); - } - - /** - * Define the "api" routes for the application. - * - * These routes are typically stateless. - * - * @return void - */ - protected function mapApiRoutes() - { - Route::prefix('api') - ->middleware('api') - ->namespace($this->namespace) - ->group(module_path('Antenatal', '/Routes/api.php')); - } -} diff --git a/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/anc_card.blade.php b/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/anc_card.blade.php deleted file mode 100644 index 7ae327be..00000000 --- a/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/anc_card.blade.php +++ /dev/null @@ -1,719 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Streamline') }} - - - - - - - - - - -
- Responsive image -

Ministry of Health

-

{{ __('antenatal.ant_card') }}

-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Health Unit: {{ $hospitalInfo->name }} Reg no: {{ $hospitalInfo->code }}
Name: {{ $patient->first_name }} {{ $patient->last_name }}NIN: {{ strtoupper($patient->national_id) }}Phone No: {{ $patient->phone }}Age: {{ get_patients_age($patient->date_of_birth) }}
Village: {{ $patient->village }}Parish: {{ $patient->parish }}Sub-county: {{ $patient->subcounty }}District: {{ $patient->district }}
Occupation: {{ $patient->occupation }}Religion: {{ $patient->religion }}Education level: ________Tribe: __________
Marital Status: {{ $patient->marital_status }}
Next of Kin
Name: {{ $patient->next_of_kin }}Phone No: {{ $patient->phone_of_next_of_kin }}Relationship: {{ $patient->family_relation }}Address: __________
-
-
- -
-
- Gravida: {{ $anc_registration_details->gravida }} -
-
- Para: {{ $anc_registration_details->para }} -
-
- Abortions: {{ $anc_registration_details->abortion }} -
-
-
-

- - - - - - - - - - - - - - - - - - - - - - -
PRESENT PREGNANCY
ComplaintsLNMPEDDWeeks of AmenorrheaComplications
{{ streamline_date($anc_registration_details->lmp) }}{{ streamline_date($anc_registration_details->edd) }}{!! $anc_registration_details->woa_weeks !!} - @php - $complications = explode(',', $anc_registration_details->complications); - $menses = ['1' => __('antenatal.heavy'), '2' => __('antenatal.normal')]; - @endphp - @if (!empty($complications)) - @if (in_array(1,$complications))
  • {{ __('antenatal.bleeding') }}
  • @endif - @if (in_array(2,$complications))
  • {{ __('antenatal.excessive_vomiting') }}
  • @endif - @if (in_array(3,$complications))
  • {{ __('antenatal.others') }} : {{ $anc_registration_details->other_complications }}
  • @endif - @else - None - @endif -
    -
    -

    - - - - - - - - - - - - - - - - - - -
    MENSTRUAL AND CONTRACEPTIVE HISTORY
    Length of mensesAmountFamily Planning Method
    {{ $mother_history->menses_length?? '' }}{{ !empty($mother_history->menses_amount)? $menses[$mother_history->menses_amount]: '' }}{{ !empty($mother_history->family_planning)? $family_planning_methods[$mother_history->family_planning]: '' }}
    Date Discontinued: {{ !empty($mother_history->date_discontinued)? streamline_date(Carbon\Carbon::createFromFormat('d/m/Y', $mother_history->date_discontinued)->toDateString()):'' }}
    Reason: {{ $mother_history->why_stop_family_planning?? '' }}
    -
    -
    -
    -
    - - - - - - - - - - - - - - @php - $medical_presentations = !empty($mother_history->medical_presentations)? explode(',', $mother_history->medical_presentations):[]; - $any_medications = !empty($mother_history->any_medications)? explode(',', $mother_history->any_medications):[]; - $surgical_history =!empty($mother_history->surgical_history)? explode(',', $mother_history->surgical_history):[]; - $obs_gyn =!empty($mother_history->obs_gyn)? explode(',', $mother_history->obs_gyn):[]; - $family_history =!empty($mother_history->family_history)? explode(',', $mother_history->family_history):[]; - $fractures =!empty($mother_history->fractures)? explode(',', $mother_history->fractures):[]; - $fracture_details = !empty($mother_history->fracture_details)? json_decode($mother_history->fracture_details, true):[]; - $uterine_surgeries = !empty($mother_history->uterine_surgeries)? json_decode($mother_history->uterine_surgeries, true):[]; - $other_surgeries = !empty($mother_history->other_surgeries)? json_decode($mother_history->other_surgeries, true):[]; - $condition_names = [ - 1=> __('antenatal.sti'), 2=> __('antenatal.cardiac_disease'), 3=> __('antenatal.asthma'), 4=> __('antenatal.sickel_cell'), 5=> __('antenatal.kidney_disease'), - 6=> __('antenatal.diabetes'), 7=> __('antenatal.hypertension'), 8=> __('antenatal.ted'), 9=> __('antenatal.epilepsy'), 10=> __('antenatal.tb'),11=> __('antenatal.polio'), - 12=> __('antenatal.anaemia'), 13=> __('antenatal.herpes'), 14=> __('antenatal.hiv'), 15=> __('antenatal.oral_thrush'), 16=> __('antenatal.l_glands'), - 17=> __('antenatal.herpes_simplex'), 18=> __('antenatal.dermatitis'), 19=> __('antenatal.others') - ]; - @endphp - - - - - -
    PREVIOUS ILLNESS
    Presentations for over 2 weeksMedicalMedications
    -
      - @forelse ($medical_presentations as $previous_medical_condition) - @if ($previous_medical_condition == 19) -
    • {{ $condition_names[$previous_medical_condition]?? '' }}: {{ $mother_history->medical_presentations_others_input }}
    • - @else -
    • {{ $condition_names[$previous_medical_condition]?? '' }}
    • - @endif - @empty - None - @endforelse -
    -
    - @if (!empty($any_medications)) - @if (in_array(1,$any_medications))
  • {{ __('antenatal.arv') }}
  • @endif - @if (in_array(2,$any_medications))
  • {{ __('antenatal.others') }} : {{ $mother_history->other_any_medications }}
  • @endif - @else - None - @endif -
    -
    -
    - - - - - - - - - - - - - - - @forelse ($fractures as $fracture) - - @php - if (!empty($fracture_details[$fracture-1]['date'])) { - $date = Carbon\Carbon::createFromFormat('d/m/Y', $fracture_details[$fracture-1]['date'])->toDateString(); - } - @endphp - - - - - @empty - - @endforelse - - -
    Surgical
    - @if (!empty($surgical_history)) - @if (in_array(1,$surgical_history))
  • {{ __('antenatal.operations') }} : {{ $mother_history->surgical_history_operations }}
  • @endif - @if (in_array(2,$surgical_history))
  • {{ __('antenatal.blood_transfusion') }} had : {{ $mother_history->surgical_history_blood_transfusion }}
  • @endif - @else - None - @endif -
    {{ __('antenatal.fractures') }}{{ __('antenatal.date') }}{{ __('antenatal.details') }}
    - @if ($fracture == 1) - {{ __('antenatal.pelvis') }} - @elseif ($fracture == 2) - {{ __('antenatal.spine') }} - @elseif ($fracture == 3) - {{ __('antenatal.femur') }} - @endif - {{ streamline_date($date)?? '' }}{{ $fracture_details[$fracture-1]['details']?? '' }}
    No {{ __('antenatal.fractures') }} Recorded
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - -
    OBS/GYNSocial HistoryRisk of S/GBVFamily HistoryHealth of the Husband/partner
    - @php - $observations = !empty($triage)? explode(",", $triage->observations):[]; - @endphp - @if (in_array('Alcohol use=High', $observations) || in_array('Alcohol use=Moderate', $observations) || in_array('Alcohol use=Low', $observations)) - Alcohol
    - @endif - @if (in_array('Tobacco use=High', $observations) || in_array('Tobacco use=Moderate', $observations) || in_array('Tobacco use=Low', $observations)) - Smoking - @endif -
    - @if (!empty($mother_history->sgbv) && $mother_history->sgbv == 1) - @php - $risks =!empty($mother_history->sgbv_risk)? explode(',', $mother_history->sgbv_risk):[]; - @endphp - @foreach ($risks as $risk) -
  • {{ $gender_based_violence[$risk] }}
  • - @endforeach - @else -
  • No
  • - @endif -
    - @if (!empty($family_history)) - @if (in_array(1,$family_history))
  • {{ __('antenatal.diabetes') }}
  • @endif - @if (in_array(2,$family_history))
  • {{ __('antenatal.sickel_cell') }}
  • @endif - @if (in_array(3,$family_history))
  • {{ __('antenatal.hypertension') }}
  • @endif - @if (in_array(4,$family_history))
  • {{ __('antenatal.twins') }}
  • @endif - @if (in_array(5,$family_history))
  • {{ __('antenatal.others') }}
  • @endif - @else - None - @endif -
    {{ $mother_history->husband_health?? '' }}
    -
    -
    - - - - - @php - $physical_exam = !empty($latest_anc_visit)? json_decode($latest_anc_visit->physical_exam, true):[]; - $height = ''; - if(!empty($physical_exam['height'])) $height = ($physical_exam['height'] < 4)? $physical_exam['height'] * 100 .'cm': $physical_exam['height'].'cm'; - $temp = !empty($physical_exam['temperature'])? $physical_exam['temperature'].'oC':'Unknown'; - $pregnancy_comments = []; - @endphp - - - - - - - - - - - - - - - - - - -
    PHYSICAL EXAMINATION
    Gait: {{ $physical_exam['gait']?? 'Unknown' }} Height: {{ $height?? 'Unknown' }}
    Weight: {{ !empty($physical_exam['weight'])? $physical_exam['weight'].'kg':'Unknown' }}BP: {{ !empty($physical_exam['bp'])? $physical_exam['bp'].'mmHg':'Unknown' }}
    Pulse: {{ $physical_exam['pulse']?? 'Unknown' }}Temperature: {!! $temp !!}
    MUAC: {{ $physical_exam['muac']?? 'Unknown' }}Nutritional status: {{ $physical_exam['nut_status']?? 'Unknown' }}
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Examine and Comment on the following
    Oral thrush: {{ $physical_exam['oral']?? 'Unknown' }}Anaemia: {{ $physical_exam['anaemia']?? 'Unknown' }}Teeth: {{ $physical_exam['teeth']?? 'Unknown' }}Eyes: {{ $physical_exam['eyes']?? 'Unknown' }}
    Neck: {{ $physical_exam['neck']?? 'Unknown' }}Nails: {{ $physical_exam['nails']?? 'Unknown' }}Breasts: {{ $physical_exam['breasts']?? 'Unknown' }}Palms: {{ $physical_exam['palms']?? 'Unknown' }}
    Legs: {{ $physical_exam['legs']?? 'Unknown' }}Jaundice: {{ $physical_exam['jaundice']?? 'Unknown' }}Deformities: {{ $physical_exam['deformities']?? 'Unknown' }}Heart: {{ $physical_exam['heart']?? 'Unknown' }}
    Lymph Nodes: {{ $physical_exam['lymph']?? 'Unknown' }}Lungs: {{ $physical_exam['lungs']?? 'Unknown' }}Herpes zooster: {{ $physical_exam['herpes']?? 'Unknown' }}
    Pelvic Examination
    Vulva: {{ $physical_exam['vulva']?? 'Unknown' }}Cervix: {{ $physical_exam['cervix']?? 'Unknown' }}Vagina: {{ $physical_exam['vagina']?? 'Unknown' }}Abnormal vaginal discharge: {{ $physical_exam['vaginal_discharge']?? 'Unknown' }}
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @forelse ($obstetric_history_details as $key => $obstetric_history) - @php - $children =[]; - if(!empty($obstetric_history->children)) $children = json_decode($obstetric_history->children); - $full_term = [37,38,39, 40,41,42]; - $delivery_types = ['1' => __('antenatal.vaginal_delivery'), '2' => __('antenatal.vacuum_delivery'), '3' => __('antenatal.forceps_delivery'), '4' => __('antenatal.c_section'),'5' => __('antenatal.vbac')]; - $imunisation = ['1' => __('antenatal.not_started'), '2' => __('antenatal.ongoing'), '3' => __('antenatal.completed')]; - if(!empty($obstetric_history->comments)) $pregnancy_comments[] = $obstetric_history->comments; - @endphp - - - - - - - - - - - - @if (empty($children)) - - - - - - @endif - - @forelse ($children as $child) - - - - - - - - @empty - @endforelse - @empty - - @endforelse - -
    PREVIOUS OBSTETRIC HISTORY
    ABORTIONSDETAILS OF DELIVERIESCHILD
    PregnancyYearBelow 12 wksAbove 12 wksPre-matureFull-termType of DeliveryPlace of DeliveryThird StagePuerperiumAlive SB/NNSexBirth Weight{{ __('antenatal.child_immunisation_status') }}{{ __('antenatal.health_condition') }}
    {{ $key + 1 }}{{ streamline_date($obstetric_history->obstetric_date) }} - @if ($obstetric_history->gestation < 12 && $obstetric_history->outcome == 5) - Yes - @else - N/A - @endif - - @if ($obstetric_history->gestation > 12 && $obstetric_history->outcome == 5) - Yes - @else - N/A - @endif - - @if ($obstetric_history->gestation < 37 && ($obstetric_history->outcome == 1 || $obstetric_history->outcome == 2)) - Yes - @else - No - @endif - - @if (in_array($obstetric_history->gestation, $full_term) && ($obstetric_history->outcome == 1 || $obstetric_history->outcome == 2)) - Yes - @else - No - @endif - {{ !empty($delivery_types[$obstetric_history->delivery_type])? $delivery_types[$obstetric_history->delivery_type]:'' }}{{ $obstetric_history->puerperium?? '' }}
    Alive{{ ($child->gender == '1')? 'Male':'Female' }}{{ $child->birth_weight.'kg' }}{{ !empty($child->immunisation_status)? $imunisation[$child->immunisation_status]:'' }}{{ $child->health_condition?? '' }}
    No {{ __('antenatal.past_obstetric_history') }} Recorded
    -

    Comment(s) about previous pregnancies: -

      - @forelse ($pregnancy_comments as $pregnancy_comment) -
    • {{ $pregnancy_comment }}
    • - @empty - None - @endforelse -
    -

    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - @forelse ($anc_visits as $anc_visit) - @php - $physical_exam = json_decode($anc_visit->physical_exam); - $checklist = []; - if (!empty($anc_visit->checklist)) { - $checklist = json_decode($anc_visit->checklist, true); - if(empty($checklist)) $checklist = @unserialize($anc_visit->checklist); - if(!is_array($checklist)) $checklist = []; - } - $other_physicals = explode(',', $anc_visit->other_physicals); - $pp_brim = ['1' => '1/5', '2' => '2/5', '3' => '3/5', '4' => '4/5', '5' => '5/5']; - $lmp_date = Carbon\Carbon::parse($anc_registration_details->lmp); - $visit_date = Carbon\Carbon::parse($anc_visit->ante_natal_clinic_date); - $days = $lmp_date->diffInDays($visit_date); - $weeks = floor($days / 7); - $dayRemainder = $days % 7; - $woa_weeks = $weeks.''.$dayRemainder.''; - @endphp - - - - - - - - - - - - - - - - - - - - - @empty - - @endforelse - -
    ANTENATAL PROGRESS EXAMINATION
    DateWOAFundal HeightPresentationPosition / LieRelation (PP/Brim)Foetal Heart rateWeight (kg)BP (mmHg)Varicose (V) / Oedema (O)Urine test (Glucose, Protein, gram stain)HBIron / Folic Acid (No. of Pills)IPTNet UseComplaints and RemarksReturn DateName of Examiner and Cadre
    {{ streamline_date($anc_visit->ante_natal_clinic_date) }}{!! $woa_weeks !!}{{ $anc_visit->fundal_height }}{{ $anc_presentations[$anc_visit->presentation] ?? '' }}{{ $anc_positions[$anc_visit->position] ?? '' }} / {{ $anc_lies[$anc_visit->lie] ?? '' }}{{ $pp_brim[$anc_visit->pp_brim] ?? '' }}{{ $anc_visit->foetal_heart_rate }}{{ $physical_exam->weight?? '' }}{{ $physical_exam->bp }} - @if (in_array(1, $other_physicals) || in_array(3, $other_physicals)) - V and O - @elseif (in_array(1, $other_physicals)) - O - @elseif (in_array(3, $other_physicals)) - V - @else - N/A - @endif - UrineHB - @if (in_array("Iron/Folic", $checklist)) - Yes - @else - Unknown - @endif - - @if (in_array("First Dose IPT", $checklist)) - {{ __('antenatal.first_dose_ipt') }}
    - @endif - @if (in_array("Second Dose IPT", $checklist)) - {{ __('antenatal.second_dose_ipt') }}
    - @endif - @if (in_array("Third Dose IPT", $checklist)) - {{ __('antenatal.third_dose_ipt') }}
    - @endif - @if (in_array("Fourth Dose IPT", $checklist)) - {{ __('antenatal.fourth_dose_ipt') }} - @endif -
    - @if (in_array("Bednet", $checklist)) - Yes - @else - Unknown - @endif - {{ $anc_visit->history_comments?? '' }}
    {{ $anc_visit->clinic_examination_comments?? '' }}
    {{ !empty($anc_visit->followup_when)? streamline_date($anc_visit->followup_when):'' }}{{ $users[$anc_visit->created_by]?? '' }}
    Antenatal Progress is not recorded.
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - -
    INVESTIGATIONS
    Blood TestHep-BSickle Cell Screening ReportRandom Blood SugarSyphilis Test ResultsB/S for MPs / RDT for Malaria
    Group:
    Rh:
    {{ ucwords($malaria_inv_result) }}
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - @forelse ($obs_scan_results as $obs_scan_result) - - - - - - - - - @empty - - @endforelse - -
    ULTRASOUND REPORTS
    DateGestational AgePlacenta (site and Maturity)Amniotic FluidComplication / AbnormalityComments
    {{ streamline_date($obs_scan_result->scan_date) }}{{ $obs_scan_result->average_gestational_age?? '' }}{{ $obs_scan_result->placental_site?? '' }}{{ $obs_scan_result->liquor_volume?? '' }}Complication{{ $obs_scan_result->comments?? '' }}
    No {{ __('investigations.obstetric_ultrasound_results') }} recorded.
    -
    -
    -
    -
    -

    Notes / {{ __('consultations.treatment_given') }}

    - {{ $anc_registration_details->other_comments }} - @php - $all_treatments = []; - @endphp - @foreach ($treatments as $treatment) - @php - $drugs_array = explode(",", $treatment->drugs); - $dosage_array = explode(",", $treatment->doses); - $frequencies_array = explode(",", $treatment->frequencies); - $duration_array = explode(",", $treatment->durations); - @endphp - @foreach ($drugs_array as $key => $drug) - @php - $all_treatments[] = $drugs[$drug].' to be taken '. $dosage_frequencies[$frequencies_array[$key]].' for '.$duration_array[$key]; - @endphp - @endforeach - @endforeach -
      - @forelse ($all_treatments as $treatment_given) -
    • {{ $treatment_given }}
    • - @empty - {{ __('consultations.no_prescription_made_yet') }} - @endforelse -
    -
    -
    -
    - - - - diff --git a/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/antenatal_visit.blade.php b/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/antenatal_visit.blade.php deleted file mode 100755 index 0c8985fa..00000000 --- a/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/antenatal_visit.blade.php +++ /dev/null @@ -1,2455 +0,0 @@ -@php use Streamline\Models\User; @endphp -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('antenatal.register_anc_visit') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -{{-- Previous anc visits --}} -
    -
    -
    - -
    -
    -
    - - - - - - - - - - - - - - - @forelse($previous_anc_visits as $key => $anc_visits) - - - - @foreach ($anc_visits as $anc_visit) - - - - - - - - - - @endforeach - - @empty - - @endforelse - -
    Pregnancy Reg. DateVisit dateVisit no.Fundal heightGestation from EDDGestation from scanGestation from fundalActions
    {{ streamline_date_time_short(get_name($key, 'id', 'created_at', 'ante_natal_clinic_registrations')) }}
    {{ streamline_date($anc_visit->ante_natal_clinic_date) }}{{ $anc_visit->ante_natal_clinic_visit_number }}{{ $anc_visit->fundal_height }} cm - {{-- {{ $anc_visit->gestation_from_edd }} weeks--}} -
    {!! $anc_visit->gestation_from_edd !!}
    -
    {{ $anc_visit->gestation_from_scan }} weeks{{ $anc_visit->gestation_from_fundal }} weeks - Details - {{-- {{ __('antenatal.edit_details') }} --}} -
    {{ __('antenatal.no_last_five_anc_visits') }}
    -
    -
    -
    -
    -
    -
    - -{{-- triage / patient documents / services --}} -
    -
    -
    -
    - -
    -
    -
    - {{ __('consultations.triage_grade') }} : - @if($triage) - @switch($triage->severe_grade) - @case (1) -
    {{ __('consultations.green') }} -
    - @break - @case (2) -
    {{ __('consultations.yellow') }} -
    - @break - @case (3) -
    {{ __('consultations.red') }} -
    - @break - @default - {{ __('consultations.triage_grade_not_determined') }} - @endswitch - @endif -
    -
    - {{ __('consultations.symptoms') }} : - @if($triage) - @php $symptoms_array = explode(",", $triage->symptoms); @endphp - @php $symptoms_duration_array = explode(",", $triage->symptom_duration); @endphp - -
    -
    - - - - - - - - - @php $counter = 0; @endphp - @for($i = 0; $i < count($symptoms_array); $i++) - - - - - @endfor - -
    {{ __('consultations.symptom') }}{{ __('consultations.duration') }}
    {{ isset($symptoms_array[$i]) ? get_name($symptoms_array[$i], 'id', 'name', 'symptoms') : "" }}{{ $symptoms_duration_array[$i] ?? "" }}
    -
    -
    - @else - {{ __('consultations.no_symptom_recorded') }} - @endif -
    - -
    - - @if(!empty($triage)) - @php - $observations_array = explode(',', $triage->observations); //i.e[temp=44,height=2] - - $parent_observation_array = isset($parent_triage_details) ? explode(',', $parent_triage_details->observations): []; - @endphp -
    -
    - - - - - - @if(check_if_episode_is_a_followup($episode->id)) - - @endif - - - - @php $counter = 0; @endphp - @foreach($observations_array as $observation) - @php - $item_array = explode('=', $observation); //i.e[temp,44] - $counter++; - @endphp - @if($counter < 9) - - - - - @if(check_if_episode_is_a_followup($episode->id)) - @foreach($parent_observation_array as $parent_observation) - @php - $parent_item_array = isset($parent_triage_details) ? explode('=', $parent_observation) : []; - @endphp - @if($item_array[0] == $parent_item_array[0]) - - @endif - @endforeach - @endif - - @endif - @endforeach - -
    {{ __('consultations.observation') }}{{ __('consultations.value') }} - {{ __('consultations.previous_value') }} -
    {{ $item_array[0] }}{{ $item_array[1] }} - {{ $parent_item_array[1] }} -
    -
    - - -
    - - - - - - @if(check_if_episode_is_a_followup($episode->id)) - - @endif - - - - @php $counter=0; @endphp - @foreach($observations_array as $observation) - @php - $item_array = explode('=', $observation); //i.e[temp,44] - $counter++; - @endphp - @if($counter >= 9) - - - - - @if(check_if_episode_is_a_followup($episode->id)) - @foreach($parent_observation_array as $parent_observation) - @php - $parent_item_array = isset($parent_triage_details) ? explode('=', $parent_observation) : []; - @endphp - @if($item_array[0] == $parent_item_array[0]) - - @endif - @endforeach - @endif - - @endif - @endforeach - -
    {{ __('consultations.observation') }}{{ __('consultations.value') }} - {{ __('consultations.previous_value') }} -
    {{ isset($item_array[0]) ? $item_array[0] : "" }}{{ isset($item_array[1]) ? $item_array[1] : "" }} - {{ $parent_item_array[1] }} -
    -
    -
    - {{ __('consultations.comment') }} - : {{ !is_null($triage) ? $triage->comments : "" }} -
    - @else - {{ __('consultations.no_observations_recorded') }}
    - @endif - - {{ __('consultations.triage_done_by') }} {!! isset($triage) ? ''.User::withTrashed()->find($triage->created_by)->first_name. " ".User::withTrashed()->find($triage->created_by)->last_name.' on '.streamline_date_time($triage->created_at).'' : "" !!} -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    - @if(count($documents) > 0) - @foreach($documents as $document) -
  • - {{ is_null($document->title) ? substr($document->description, 0, 5) : $document->title }} - ({{ streamline_date_time($document->created_at) }}) -
  • - @endforeach - @else - {{ __('consultations.no_patient_documents_available') }} - @endif - -
    - - {{ __('consultations.add_new') }} -
    -
    -
    -
    - -
    -
    - -
    -
    - @php - $used_services = \Streamline\Models\OrderedService::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $service_performed_counter = 0; - @endphp - - @if(count($used_services) > 0) -
    - - - - - - - - - - - @foreach($used_services as $service) - @php - $service_ids = explode(",", $service->service_id); - $service_quantity = explode(",", $service->quantity); - $service_performed = explode(",", $service->performed); - $service_performed_id_array = explode(",", $service->performed_id); - @endphp - - @for($i = 0; $i < count($service_ids); $i++) - - - - - - - @endfor - @endforeach - -
    {{ __('consultations.service') }}{{ __('consultations.quantity') }}{{ __('consultations.payment_status') }}Performed By
    - {{ get_name($service_ids[$i], "id", "name", "services")}} - - {{ $service_quantity[$i]?? '' }} - - {!! $service->payment_status == 0 ? "Not Paid" : "Paid" !!} - - @if(!empty($service_performed[$i]) && $service_performed[$i] == 1) - By {{ get_full_name(get_name($service_performed_id_array[$i], 'id', 'performed_by', 'staff_performed_services'), 'id', 'first_name', 'last_name', 'users') }} - @endif -
    -
    - @else - {{ __('consultations.no_used_services') }} - @endif -
    -
    -
    -
    - -
    -
    - - -{{-- antenatal / maternity registration details --}} -
    -
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - -
    {{ __('antenatal.gravida') }}{{ $anc_registration->gravida }}
    {{ __('antenatal.para') }}{{ $anc_registration->para }}
    {{ __('antenatal.abortions') }}{{ $anc_registration->abortion }}
    {{ __('maternity.ectopic_pregnancies') }}{{ $anc_registration->ectopic_pregnancies }}
    -
    -
    -
    -
    -
    - - - - @if ($anc_registration->previous_pph == 1) - - @endif - - @if ($anc_registration->previous_scar == 1) - - - @endif - - - - @if ($anc_registration->previous_pph == 1) - - @endif - - @if ($anc_registration->previous_scar == 1) - - - @endif - - -
    {{ __('antenatal.previous_pph') }}{{ __('antenatal.previous_pph_details') }}{{ __('antenatal.previous_scar') }}{{ __('antenatal.previous_scar_number') }}{{ __('antenatal.previous_scar_indication') }}
    {{ $anc_registration->previous_pph == 1 ? __('antenatal.yes') : __('antenatal.no') }}{{ $anc_registration->previous_pph_details }}{{ $anc_registration->previous_scar == 1 ? __('antenatal.yes') : __('antenatal.no') }}{{ $anc_registration->previous_scar_number }}{{ $anc_registration->previous_scar_indication }}
    -
    -
    -
    -
    -
    -
    -
    -
    - - - -{{-- @if(isset($anc_visit_records) && count($anc_visit_records) > 0)--}} -{{--
    --}} -{{--
    --}} -{{--

    {{ __('antenatal.previous_anc_visits') }} {{ streamline_date(streamline_date($episode->created_at)) }}

    --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- @foreach($anc_visit_records as $visit_record)--}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- @endforeach--}} -{{-- --}} -{{--
    {{ __('antenatal.date') }}{{ __('antenatal.visit_number') }}{{ __('antenatal.registration_id') }}{{ __('antenatal.fundal_height') }}{{ __('antenatal.scan_edd') }}{{ __('antenatal.gestation_from_edd') }}{{ __('antenatal.gestation_from_scan') }}{{ __('antenatal.foetal_heart_rate') }}{{ __('antenatal.foetal_heart_regularity') }}Actions
    {{ streamline_date($visit_record->ante_natal_clinic_date) }}{{ $visit_record->ante_natal_clinic_visit_number }}{{ $visit_record->ante_natal_clinic_registration_id }}{{ $visit_record->fundal_height }}{{ $visit_record->scan_edd }}--}} -{{--
    {!! $visit_record->gestation_from_edd !!}
    --}} -{{--
    {{ $visit_record->gestation_from_scan }}{{ $visit_record->foetal_heart_rate }}{{ $visit_record->foetal_heart_regularity }}--}} -{{--

    {{ __('antenatal.view_details') }}--}} -{{--

    --}} -{{-- {{ __('antenatal.edit_details') }}--}} -{{--
    --}} -{{--
    --}} -{{--
    --}} -{{-- @endif--}} - - {{ Form::open(['route' => 'ante_natal_clinic.store_template','data-toggle'=>'validator','id'=>'consultation_form']) }} - -
    - @include('flash::message') - - {{ __('antenatal.anc_template') }}

    - - - - - - -
    -
    - {{ Form::label('anc_date',__('antenatal.date')) }} - {{ Form::text('anc_date',streamline_date(date("d-m-Y")),['class'=>'form-control compulsory','required','readonly'=>'true']) }} -
    - - @php - $session_patient_id = session()->get('patient_id'); - $anc_clinic_followup_check = \Streamline\Models\AnteNatalClinicFollowup::where('patient_id',$session_patient_id)->latest() - ->get(); - $pluck_visit_number = json_decode($anc_clinic_followup_check->pluck('ante_natal_clinic_visit_number'), true); - $new_anc_visit_number = ''; - - if(!empty($pluck_visit_number[0] )){ - $new_anc_visit_number = $pluck_visit_number[0] +1; - } else{ - $new_anc_visit_number = 1; - } - - - @endphp - - {{ Form::label('anc_visit_number',__('antenatal.anc_visit_number')) }} - {{ Form::number('anc_visit_number', isset($new_anc_visit_number) ? $new_anc_visit_number : $visit_number ,['class'=>'form-control compulsory','required']) }} -
    - {{ Form::label('lmp',__('antenatal.lmp')) }} - {{ Form::text('lmp',streamline_date($anc_registration->lmp),['class'=>'form-control','readonly'=>'true']) }} -
    -
    - {{ Form::label('edd',__('antenatal.edd')) }} - {{ Form::text('edd',streamline_date($anc_registration->edd),['class'=>'form-control','readonly'=>'true']) }} -
    - - @php - $lmp_date = Carbon\Carbon::parse($anc_registration->lmp); - $now = Carbon\Carbon::now(); - $days = $lmp_date->diffInDays($now); - $weeks = floor($days / 7); - $gestation_from_scan_weeks = ''; - - // Calculate weeks and days - $gestation_days = $days % 7; - $gestation_from_scan_period = $weeks . '' . $gestation_days . ''; - - $us_scan_edd = !empty($obs_scan_results->expected_delivery_date)? explode(',', $obs_scan_results->expected_delivery_date):null; - if(!empty($us_scan_edd)) $us_scan_edd = Carbon\Carbon::parse($us_scan_edd[0])->format('d/m/Y'); - //$gestation_from_scan = !empty($obs_scan_results->average_gestational_age)? explode(',', $obs_scan_results->average_gestational_age):''; - $gestation_from_scan = !empty($obs_scan_results) && !empty($obs_scan_results->average_gestational_age) ? explode(',', $obs_scan_results->average_gestational_age) : ''; - - if(!empty($gestation_from_scan)) $gestation_from_scan_weeks = !empty($gestation_from_scan[0])? $gestation_from_scan[0]: $gestation_from_scan[1]; - - @endphp - {{ Form::label('fundal_height', __('antenatal.us_scan_edd')) }}
    -
    - - - {{ Form::text('scan_edd', $us_scan_edd?? '',['class' => 'form-control col-sm-12','readonly','id'=>'datepicker-autoclose1']) }} - -
    -
    - - {{ Form::label('fundal_height', __('antenatal.fundal_height')) }} - {{ Form::text('fundal_height','',['class'=>'form-control']) }} -
    -
    - - - {{ Form::label('gestation_from_edd',__('antenatal.gestation_from_edd')) }} -{{-- {{ Form::number('gestation_from_edd',$weeks,['class'=>'form-control','readonly'=>'true']) }}--}} -
    {!! $gestation_from_scan_period !!}
    - {{ Form::hidden('gestation_from_edd', $gestation_from_scan_period ?? '') }} - -
    - - {{ Form::label('gestation_from_scan',__('antenatal.gestation_from_scan')) }} - {{ Form::number('gestation_from_scan',$gestation_from_scan_weeks ?? '',['class'=>'form-control']) }} - -
    - - {{ Form::label('gestation_from_fundal_height',__('antenatal.gestation_from_fundal_height')) }} - {{ Form::number('gestation_from_fundal_height','',['class'=>'form-control','id'=>'gestation_from_fundal_height']) }} -
    -
    -
    -
    -
    - {{ Form::label('lie',__('antenatal.lie')) }} - {{ Form::select('lie',$anc_lies,'',['class'=>'form-control compulsory','required']) }} -
    -
    - {{ Form::label('presentation',__('antenatal.presentation')) }} - {{ Form::select('presentation',$anc_presentations,'',['class'=>'form-control compulsory','required']) }} -
    -
    - {{ Form::label('position',__('antenatal.position')) }} - {{ Form::select('position',$anc_positions,'',['class'=>'form-control compulsory','required']) }} -
    -
    - {{ Form::label('engagement',__('antenatal.engagement')) }} ({{ __('antenatal.pp_brim') }}) - {{ Form::select('engagement',$anc_engagements,'',['class'=>'form-control compulsory','required']) }} -
    -
    -
    -
    -

    {{ __('antenatal.foetal_heart') }}
    -
    - {{ Form::label('foetal_heart_rate',__('antenatal.rate')) }} - {{ Form::number('foetal_heart_rate', '', ['class'=>'form-control', 'step'=> '.01']) }} -
    -
    - {{ Form::label('foetal_heart_regularity',__('antenatal.regularity')) }} - {{ Form::select('foetal_heart_regularity', $heart_regularity, '', ['class'=>'form-control']) }} -
    - * {{ __('antenatal.if_in_labour_check_heart_rate') }}. -
    - * {{ __('antenatal.if_heart_beat_is_more_than_30') }}. -
    -
    - {{ Form::label('history_of_aph',__('antenatal.history_of_aph')) }} -
    - {{ Form::radio('history_of_aph', 1, false, ["required","id" => "show_aph_details_div"]) }} {{ __('antenatal.yes') }}    - {{ Form::radio('history_of_aph', 0, false, ["required","id" => "hide_aph_details_div"]) }} {{ __('antenatal.no') }} - -
    -
    - {{ Form::label('histoy_of_fits',__('antenatal.history_of_fits')) }} -
    - {{ Form::radio('histoy_of_fits', 1, false, ["required","id" => "show_fits_details_div"]) }} {{ __('antenatal.yes') }}    - {{ Form::radio('histoy_of_fits', 0, false, ["required","id" => "hide_fits_details_div"]) }} {{ __('antenatal.no') }} - -
    -
    -
    -

    Physical Examination

    -
    - @php - $observations = []; - if(!empty($observations_array)) foreach ($observations_array as $observation) $observations[] = explode('=', $observation); - foreach ($observations as $item) $items_array[$item[0]] = $item[1]; - @endphp -
    - {{ Form::label('height', __('antenatal.Height')) }} - {{ Form::number('height',$items_array['Height']?? '',['class'=>'form-control', 'id'=>'height', 'step'=>'0.01']) }} -
    -
    - {{ Form::label('weight', __('antenatal.Weight')) }} - {{ Form::number('weight',$items_array['Weight']?? '',['class'=>'form-control', 'id'=>'weight', 'step'=>'0.01']) }} -
    -
    - {{ Form::label('bmi', __('antenatal.bmi')) }} - {{ Form::number('bmi',$items_array['BMI']?? '',['class'=>'form-control','readonly', 'id'=>'bmi', 'step'=>'0.01']) }} -
    -
    - {{ Form::label('muac', __('art_clinic.muac')) }} - {{ Form::number('muac',$items_array['MUAC']?? '',['class'=>'form-control', 'id'=>'muac', 'step'=>'0.01']) }} -
    -
    - {{ Form::label('nut_status', __('antenatal.nut_status')) }} - {{ Form::text('nut_status', '',['class'=>'form-control', 'id'=>'nut_status', 'readonly']) }} -
    -
    -
    -
    - {{ Form::label('temperature', __('antenatal.temperature')) }} - {{ Form::text('temperature',$items_array['Temperature']?? '',['class'=>'form-control']) }} -
    -
    - @php - // $bp = $items_array['Systolic bp'] .'/'. $items_array['Diastolic bp']; - $bp = ''; - @endphp - {{ Form::label('bp', __('antenatal.bp')) }} - {{ Form::text('bp', $bp?? '',['class'=>'form-control compulsory', 'required']) }} -
    -
    - {{ Form::label('pulse', __('antenatal.pulse')) }} - {{ Form::text('pulse',$items_array['Pulse']?? '',['class'=>'form-control']) }} -
    -
    - {{ Form::label('gait', __('antenatal.gait')) }} - {{ Form::text('gait', '',['class'=>'form-control']) }} -
    -
    - - - - - - - - - - - - - - -
    - {{ Form::checkbox('other_physicals[]', 1, false, ['id'=>'other_physicals_oedema', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('other_physicals[]', 2, false, ['id'=>'other_physicals_headache', 'class'=>'form-check-input']) }} - -
    - {{ Form::checkbox('other_physicals[]', 3, false, ['id'=>'other_physicals_varicose', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('other_physicals[]', 4, false, ['id'=>'other_physicals_blurred_vision', 'class'=>'form-check-input']) }} - -
    - {{ Form::checkbox('other_physicals[]', 5, false, ['id'=>'other_physicals_proteinuria', 'class'=>'form-check-input']) }} - -
    -
    -
    -
    -
    - * {{ __('antenatal.if_bp_above_160') }}. -
    -
    * {{ __('antenatal.if_bp_between_140_and_160') }}.
    -
    - * {{ __('antenatal.if_patient_relentless') }}. -
    Examine the following and comment:
    -
    -
    -
    -
    - - - - - -
    -
    - - - - - -
    -
    - - - - - -
    -

    -
    -
    - - - - - -
    -
    - - - -
    -
    - - - - - - -
    -
    - -
    -
    -
    - - - - - -
    -
    - - - - - -
    -
    - - - - - -
    -
    - -
    -
    -
    - - - - - - -
    -
    - - - - - -
    -
    - - - -
    -

    -
    -
    - - - - -
    -
    - - - - - - -
    -
    - - - -
    -
    -
    Pelvic Examination
    -
    -
    - {{ Form::label('vulva', __('antenatal.vulva')) }} - -
    -
    - {{ Form::label('vagina', __('antenatal.vagina')) }} - -
    -
    - {{ Form::label('cervix', __('antenatal.cervix')) }} - -
    -
    - {{ Form::label('vaginal_discharge', __('antenatal.vaginal_discharge')) }} - -
    -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - -
    {{ __('antenatal.symptoms') }}{{ __('antenatal.duration') }}{{ __('antenatal.prompt') }}{{ __('antenatal.reference') }}
    - {{ Form::select('symptoms[]', $symptoms, '', ['id' => '1000', 'class' => 'form-control col-sm-12 compulsory symptomsDropdown', 'required', 'onchange' => 'showPrompt(this.value, this.id)']) }} - -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    - - -
    -
    -
    -
    -
    -
    {{ __('antenatal.checklist') }}
    -
    - - - - - - - - - - - - - - - - - -
    - -   - - -   - - -   - - -   - - -   -
    - -   - - -   - - -   - - -   - - -   -
    -
    -
    -
    - -{{-- Delivery plan --}} -
    -
    -
    - -
    -
    -
    -
    - {{ Form::label('live_in_support', __('antenatal.live_in_support')) }} - {{ Form::text('live_in_support', $delivery_plan->live_in_support?? '',['class'=>'form-control']) }} -
    -
    - {{ Form::label('emergency_support', __('antenatal.emergency_support')) }} - {{ Form::text('emergency_support', $delivery_plan->emergency_support??'',['class'=>'form-control']) }} -
    -
    - {{ Form::label('facility_stay', __('antenatal.facility_stay')) }} - {{ Form::text('facility_stay', $delivery_plan->facility_stay??'',['class'=>'form-control']) }} -
    -
    -
    -
    -
    - {{ Form::label('transport_means',__('antenatal.transport_means')) }} -
    - {{ Form::select('transport_means', ['' => __('antenatal.select'), '1' => __('antenatal.foot'), '2' => __('antenatal.car'), '3' => __('antenatal.bike'), '4' => __('antenatal.public_means')], $delivery_plan->transport_means?? '', ['id' => 'transport_means', 'class' => 'form-control']) }} -
    -
    -
    -
    - {{ Form::label('home_keeper', __('antenatal.home_keeper')) }} - {{ Form::text('home_keeper', $delivery_plan->home_keeper?? '',['class'=>'form-control']) }} -
    -
    - {{ Form::label('delivery_method', __('antenatal.delivery_method')) }} - {{ Form::text('delivery_method', $delivery_plan->delivery_method?? '',['class'=>'form-control']) }} -
    -
    -
    -
    - {{ Form::label('family_planning_method', __('antenatal.family_planning_method_before_next_pregnancy')) }} - {{ Form::text('family_planning_method', $delivery_plan->family_planning_method?? '',['class'=>'form-control']) }} -
    - @php - $health_screening = !empty($delivery_plan->health_screening)? explode(',',$delivery_plan->health_screening):[]; - @endphp -
    - {{ Form::label('health_screening', __('antenatal.health_screening')) }} - - - - - - - - - - - -
    - {{ Form::checkbox('health_screening[]', 1, in_array(1,$health_screening), ['id'=>'health_screening_syphillis', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('health_screening[]', 2, in_array(2,$health_screening), ['id'=>'health_screening_sickel_cell', 'class'=>'form-check-input']) }} - -
    - {{ Form::checkbox('health_screening[]', 3, in_array(3,$health_screening), ['id'=>'health_screening_hiv', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('health_screening[]', 4, in_array(4,$health_screening), ['id'=>'health_screening_hepatitis', 'class'=>'form-check-input']) }} - -
    -
    -
    -
    - {{ Form::label('disposal',__('antenatal.disposal')) }} -
    - {{ Form::select('disposal', ['' => __('antenatal.select'), '1' => __('antenatal.placenta_home'), '2' => __('antenatal.placenta_dispose')], $delivery_plan->disposal?? '', ['id' => 'disposal', 'class' => 'form-control']) }} -
    -
    -
    -
    -
    -
    -
    {{ __('antenatal.delivery_items') }}
    - @php - $delivery_items = ['At least 4 pairs of gloves','Sanitary pads', '2 plastic sheets (ekiveera) measuring 2.5 metres','Money for emergency transport','Gauze', 'Baby clothing and sheets', 'Cotton wool (at least 500g)', 'Basin','Needle and syringe 5ml', 'Sugar and tea leaves','2 new razor blades','Soap', 'Clean clothing (personal)']; - @endphp -
      - @foreach ($delivery_items as $delivery_item) -
    • {{ $delivery_item }}
    • - @endforeach -
    -
    -
    -
    -
    -
    -
    -
    - - - @php - $option_diagnoses = ""; - foreach ($diagnoses as $key => $value){ - $option_diagnoses .= ""; - } - @endphp - @if(Auth::user()->can('view-patient-episode-primary-diagnoses')) -
    -
    - - - - - - - - - - - - - - - @if( Auth::user()->can('add-new-diagnosis-from-consultation')) - - - - @endif - -
    {{ __('inpatient.primary_diagnosis') }}{{ __('inpatient.prompt') }}{{ __('inpatient.references') }}
    -
    - {{ Form::select('primary_diagnosis', $diagnoses, '', ['id'=>'primary_diagnosis','class' => 'form-control col-sm-12 primaryDiagnosis compulsory', 'onchange' => 'get_diagnosis_info(this.value)', 'required']) }} -
    -
    -
     
    -
    -
     
    -
    - {{ __('consultations.add_new_diagnosis') }} -
    -
    - -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - -
    {{ __('consultations.OTHER_DIAGNOSIS') }}{{ __('consultations.PROMPT') }}{{ __('consultations.REFERENCES') }}#
    - - -
     
    -
    -
     
    -
    {{ __('inpatient.add_row') }}
    -
    -
    -
    - @endif - -
    -
    -
    -

    {{ __('consultations.history') }}

    - -
    -
    -

    {{ __('consultations.clinical_examination') }}

    - -
    -
    -

    {{ __('consultations.investigation_and_mgt_plan') }}

    - -
    -
    -
    - -
    -
    -
    -

    {{ __('consultations.ordered_investigations') }}

    -
    - - - - - - - - - - - - - @if(count($investigation_results) > 0) - - @if(check_if_episode_is_a_followup($episode->id)) - - - - @endif - - @foreach($investigation_results as $result) - @php - $investigation_ids_array = explode(',', $result->investigation_id); - - // authentication of investigations - $per_investigation_array = explode(',', $result->per_investigation); - - $comments = explode(",", $result->comment); - $results_values = explode(",", $result->value); - @endphp - - @for($i = 0 ; $i < count($investigation_ids_array) ; $i++) - @php - $investigation = \Streamline\Models\Investigation::withTrashed()->find($investigation_ids_array[$i]); - @endphp - @if($investigation) - @if($investigation->type == 1 && isset($results_values[$i])) - - - - - @php - $specialised_results = \Streamline\Models\InvestigationSpecialisedResult::where('id', $results_values[$i])->first(); - - if($specialised_results){ - $variable_id_array = explode(',', $specialised_results->specialised_variable_id); - - $variable_value_array = explode(',', $specialised_results->value); - - $variable_comment_array = explode(',', $specialised_results->comment); - - $variable_normal_range_array = explode(',', $specialised_results->normal_ranges); - } - @endphp - @if($specialised_results) - @for($x = 0; $x < count($variable_id_array); $x++) - - - - - - - - @endfor - @endif - - @elseif($investigation->slug == 'echo' && $results_values[$i] == "") - - - - - @else - - - - - - - - @endif - @endif - @endfor - - - - - @endforeach - @elseif(count($ordered_investigations) > 0) - - @if(check_if_episode_is_a_followup($episode->id)) - - - - @endif - - @foreach($ordered_investigations as $investigation) - @php $investigation_ids_array = explode(',', $investigation->investigation_id); @endphp - @for($i = 0 ; $i < count($investigation_ids_array) ; $i++) - @php - $investigation = \Streamline\Models\Investigation::withTrashed()->find($investigation_ids_array[$i]); - @endphp - - @if($investigation) - @if($investigation->slug == 'echo') - - - - - @else - - - - - - - - @endif - @endif - @endfor - @endforeach - @else - - - - @endif - -
    {{ __('investigations.investigation_name') }}{{ __('investigations.results') }}{{ __('investigations.normal_ranges') }}{{ __('investigations.unit') }}{{ __('investigations.comment') }}
    {{ __('consultations.investigation_for_review') }} - ({{ streamline_date($episode->created_at)}})
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif -
    {{ get_name($variable_id_array[$x], 'id', 'name', 'investigation_specialised_variables') }}{{ $variable_value_array[$x] }} - @if(get_name($variable_id_array[$x], 'id', 'range_type', 'investigation_specialised_variables') == 1) - - {{ get_dynamic_normal_range_specialized($variable_id_array[$x], get_patient_age_group($patient_id), get_name($patient_id, 'id', 'gender', 'patients')) }} - @else - {{ get_name($variable_id_array[$x], 'id', 'normal_ranges', 'investigation_specialised_variables') }} - @endif - - @if(get_name(get_name($variable_id_array[$x], 'id', 'units', 'investigation_specialised_variables'), 'id', 'name', 'unit_of_measure') != "N/A") - {{ get_name(get_name($variable_id_array[$x], 'id', 'units', 'investigation_specialised_variables'), 'id', 'name', 'unit_of_measure') }} - @endif - {{ $variable_comment_array[$x] }}
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - - View Results - -
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - @if($per_investigation_array[$i] == 0) - {{ __("consultations.pending") }} - @else - {{ isset($results_values[$i]) ? $results_values[$i] : "" }} - @endif - - @if($investigation->range_type == 1) - {{ get_dynamic_normal_range($investigation->id, get_patient_age_group($patient_id), get_name($patient_id, 'id', 'gender', 'patients')) }} - @else - {{ $investigation->normal_ranges }} - @endif - - {{ get_name(get_name($investigation->id, 'id', 'units', 'investigations'),'id', 'name', 'unit_of_measure') }} - - {!! $per_investigation_array[$i] == 0 ? '{{ __("consultations.pending") }}' : ($comments[$i] ?? '') !!} -
    {{ __('consultations.authenticated_by') }}{{ get_name($result->authenticated_by, 'id', 'first_name', 'users')}} {{ get_name($result->authenticated_by, 'id', 'last_name', 'users')}} -
    {{ __('consultations.investigation_for_review') }} - ({{ streamline_date($episode->created_at)}})
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - @if(($cardio_echo)) - - View results - - @else - Pending - @endif -
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - {{ __('consultations.pending') }} - @if($investigation->range_type == 1) - {{ get_dynamic_normal_range($investigation->id, get_patient_age_group($patient_id), get_name($patient_id, 'id', 'gender', 'patients')) }} - @else - {{ $investigation->normal_ranges }} - @endif - - {{ $investigation->comments }} -
    - {{ __('consultations.investigation_not_ordered') }} {{ check_if_episode_is_a_followup($episode->id) ? __('consultations.during_current_review') : '' }} - .
    -
    -
    -
    -

    {{ __('consultations.ordered_sundries') }}

    -
    - - - - - - - - - - @if(count($ordered_sundries) > 0) - - @if(check_if_episode_is_a_followup($episode->id)) - - - - @endif - - @foreach($ordered_sundries as $ordered_sundry) - @php - $sundry_ids = explode(",", $ordered_sundry->sundries_id); - $sundry_quantity = explode(",", $ordered_sundry->quantity); - @endphp - - @for($i = 0; $i < count($sundry_ids); $i++) - - - - - @endfor - @endforeach - @else - - - - @endif - - -
    {{ __('consultations.SUNDRY') }}{{ __('consultations.QUANTITY') }}
    {{ __('consultations.sundries_for_episode_review') }} - ({{ streamline_date($episode->created_at)}})
    {{ get_name($sundry_ids[$i], 'id', 'name', 'sundries') }} {!! $sundry_quantity[$i] !!}
    - {{ __('consultations.no_sundries_ordered') }} {{ check_if_episode_is_a_followup($episode->id) ? __('consultations.during_current_review') : '' }} - .
    -
    -
    -
    -
    - -
    -
    -
    -

    {{ __('consultations.treatment_given') }}

    -
    - - - - - - - - - - - - - @if(count($treatments) > 0) - @if(check_if_episode_is_a_followup($episode->id)) - - - - @endif - - @foreach($treatments as $treatment) - @php - $drugs_array = explode(",", $treatment->drugs); - $dosage_array = explode(",", $treatment->doses); - $dosage2_array = explode(",", $treatment->dose2); - $frequencies_array = explode(",", $treatment->frequencies); - $duration_array = explode(",", $treatment->durations); - $quantity_dispensed_array = explode(",", $treatment->quantities_dispensed); - $instructions_array = explode(",", $treatment->instruction); - $purchased_elsewhere_array = is_null($treatment->purchased_elsewhere) ? [] : explode(",", $treatment->purchased_elsewhere); - @endphp - @for($x = 0; $x < count($drugs_array); $x++) - @php - $frequency_name = get_name($frequencies_array[$x], 'id', 'name', 'dosage_frequencies'); - $unit = get_name($drugs_array[$x], 'id', 'name', 'drug_units'); - $unit = $unit=="N/A"?"":$unit; - $drug_unit = "" . $unit . ""; - $dose2 = (empty($dosage2_array[$x])) ? "" : " | " . $dosage2_array[$x] . $drug_unit; - @endphp - - - - - - @if(isset($purchased_elsewhere_array[$x]) && $purchased_elsewhere_array[$x] == 1) - - @else - @if($treatment->dispense_status == 1) - - @else - - @endif - @endif - - - @endfor - @endforeach - @else - - - - @endif - - -
    {{ __('consultations.DRUG_NAME') }}{{ __('consultations.DOSAGE') }}{{ __('consultations.DURATION') }}{{ __('consultations.QUANTITY') }}{{ __('consultations.STATUS') }}{{ __('consultations.INSTRUCTION') }}
    {{ __('consultations.treatment_for_episode_review') }} - ({{ streamline_date($episode->created_at)}})
    - {{ get_name($drugs_array[$x], 'id', "name", 'drugs') }} - - @if($treatment->is_treatment_progressive != 0) - (Progressive Treatment) - @endif - {{ $dosage_array[$x] }} {!! $drug_unit !!} {{ $dose2 }} -    {{ $frequency_name }}{{ $duration_array[$x] }}{{ $quantity_dispensed_array[$x] }}Purchased From Elsewhere{{ __('consultations.dispensed') }}{{ __('consultations.pending') }} - {{ isset($instructions_array[$x]) ? trim($instructions_array[$x]) : 'N/A' }} -
    - {{ __('consultations.no_prescription_made_yet') }} {{ check_if_episode_is_a_followup($episode->id) ? 'during current review' : '' }} -
    -
    -
    -
    -

    {{ __('consultations.ordered_procedures') }}

    -
    - - - - - - - - - - - @if(count($ordered_procedures) > 0) - @php $count = 1; $procedure_performed_counter = 0; @endphp - - @if(check_if_episode_is_a_followup($episode->id)) - - - - @endif - - @foreach($ordered_procedures as $ordered_procedure) - @php - $procedure_id = explode(",", $ordered_procedure->procedure_id); - $procedure_performed_array = explode(",", $ordered_procedure->performed); - $procedure_performed_id_array = explode(",", $ordered_procedure->performed_id); - @endphp - - @for($i = 0; $i < count($procedure_id); $i++) - - - - - - @endfor - @endforeach - @else - - - - @endif - - -
    {{ __('consultations.PROCEDURE') }}{{ __('consultations.STATUS') }}{{ __('consultations.PERFORMED') }}
    {{ __('consultations.procedures_for_episode_review') }} - ({{ streamline_date($episode->created_at)}})
    - {{ get_name($procedure_id[$i], 'id', 'name', 'procedures') }} - - {!! $procedure_performed_array[$i] == 1 ? ''.__("consultations.performed").'' : ''. __("consultations.pending").'' !!} - - @if($procedure_performed_array[$i] == 1) - By {{ get_full_name(get_name($procedure_performed_id_array[$i], 'id', 'performed_by', 'staff_performed_services'), 'id', 'first_name', 'last_name', 'users') }} - @endif -
    - {{ __('consultations.no_procedure_has_been_ordered') }} {{ check_if_episode_is_a_followup($episode->id) ? __('consultations.during_current_review') : '' }} - .
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - {{ Form::button(__('consultations.Investigation'),['type'=>'submit','class'=>'btn btn-info btn-sm','name'=>'submit_btn','value'=>'investigation']) }} - {{ Form::button(__('consultations.Treatment'),['type'=>'submit','class'=>'btn btn-default btn-sm','name'=>'submit_btn','value'=>'treatment']) }} - {{ Form::button(__('consultations.Procedures'),['type'=>'submit','class'=>'btn btn-inverse btn-sm','name'=>'submit_btn','value'=>'procedures']) }} -
    -
    -
    -
    -
    - {{ Form::button(__('consultations.Sundries'),['type'=>'submit','class'=>'btn btn-inverse btn-sm','name'=>'submit_btn','value'=>'sundries']) }} - {{ Form::button(__('antenatal.order_ultra_sound_scan'),['type'=>'submit','class'=>'btn btn-default btn-sm','name'=>'submit_btn','value'=>'order_ultrasound']) }} -
    -
    -
    - -
    -
    {{ __('consultations.comments') }}
    -
    - - - -
    -
    - -
    -
    - {{ Form::label('outcome',__('consultations.outcome')) }} -
    - {{ Form::select('outcome', $outcomes, 7, ['id' => 'outcome', 'class' => 'form-control compulsory col-sm-12', 'required']) }} -
    -
    - - - -
    -
    - @if($resume == TRUE) - - @endif -
    -  {{ Form::button(__('antenatal.save_visit'),['type'=>'submit','class'=>'btn btn-info pull-left col-sm-10','name'=>'save_btn','value'=>'save']) }} -

    -
    -{{--  {{ Form::button(__('antenatal.complete'),['type'=>'submit','class'=>'btn btn-success pull-left col-sm-10','name'=>'complete_btn','value'=>'complete', 'onclick'=>'return confirm_outcome()']) }}--}} -  {{ Form::button(__('antenatal.complete'),['class'=>'btn btn-success pull-left col-sm-10','name'=>'complete_btn','value'=>'complete', 'onclick'=>'return confirm_outcome()']) }} -{{--  {{ Form::button(__('antenatal.update_and_complete'),['class'=>'btn btn-success pull-left col-sm-10','name'=>'complete_btn','value'=>'complete', 'onclick'=>'return confirm_outcome()']) }}--}} - -
    -
    -
    -
    -
    -
    -
    -
    - - {{ Form::close() }} - - @include('patients::consultations.add_diagnosis') - - - - -@endsection - -@push('scripts') - - - - - - -{{-- physical examination inputs , show and hide --}} - -@endpush diff --git a/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/antenatal_visit_details.blade.php b/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/antenatal_visit_details.blade.php deleted file mode 100755 index 747ba9c4..00000000 --- a/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/antenatal_visit_details.blade.php +++ /dev/null @@ -1,423 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('antenatal.view_anc_visit_details') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    -

    {{ __('antenatal.details_of_anc_visit_of_episode') }} {{ streamline_date(get_name($episode_id, 'id', 'created_at', 'patient_episodes')) }}.


    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('antenatal.visit_date') }}{{ streamline_date($visit_record_details->ante_natal_clinic_date) }}
    {{ __('antenatal.visit_number') }}{{ $visit_record_details->ante_natal_clinic_visit_number }}
    {{ __('antenatal.anc_registration_id') }}{{ $visit_record_details->ante_natal_clinic_registration_id }}
    {{ __('antenatal.fundal_height') }}{{ $visit_record_details->fundal_height }}
    {{ __('antenatal.scan_edd') }}{{ $visit_record_details->scan_edd }}
    {{ __('antenatal.gestation_from_edd') }} -
    {!! $visit_record_details->gestation_from_edd !!}
    -
    {{ __('antenatal.gestation_from_scan') }}{{ $visit_record_details->gestation_from_scan }}
    {{ __('antenatal.gestation_from_fundal_height') }}{{ $visit_record_details->gestation_from_fundal }}
    {{ __('antenatal.lie') }}{{ $anc_lies[$visit_record_details->lie] ?? '' }}
    {{ __('antenatal.presentation') }}{{ $anc_presentations[$visit_record_details->presentation] ?? '' }}
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - @if (!empty($visit_record_details->aph)) - - - - - @endif - - - - - @if (!empty($visit_record_details->fits)) - - - - - @endif - - - - - - - - - -
    {{ __('antenatal.position') }}{{ $anc_positions[$visit_record_details->position] ?? '' }}
    {{ __('antenatal.engagement') }}{{ $anc_engagements[$visit_record_details->engagement] ?? '' }}
    {{ __('antenatal.foetal_heart_rate') }}{{ $visit_record_details->foetal_heart_rate }}
    {{ __('antenatal.foetal_heart_regularity') }}{{ $visit_record_details->foetal_heart_regularity }}
    {{ __('antenatal.completion_status') }}{{ $visit_record_details->completion_status }}
    {{ __('antenatal.aph') }}{{ ($visit_record_details->aph== '1')? 'Yes':'No' }}
    {{ __('antenatal.aph_details') }}{{ $visit_record_details->aph_details }}
    {{ __('antenatal.fits') }}{{ ($visit_record_details->fits == '1')? 'Yes':'No' }}
    {{ __('antenatal.fits_details') }}{{ $visit_record_details->fits_details }}
    {{ __('patients.primary_diagnosis') }}{{ isset($diagnoses[$visit_record_details->primary_diagnosis]) ? $diagnoses[$visit_record_details->primary_diagnosis] : "" }}
    {{ __('hmis_reports.other_diagnoses') }} - @php - $list = []; - $other_diagnoses_array = !empty($visit_record_details->other_diagnoses)? explode(',',$visit_record_details->other_diagnoses):[]; - foreach($other_diagnoses_array as $diagnosis) if(!empty($diagnosis)) $list[]=$diagnoses[$diagnosis]; - $other_diagnoses = !empty($list)? implode(', ', $list):''; - echo $other_diagnoses; - @endphp -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('inpatient.history') }}{{ $visit_record_details->history_comments }}
    {{ __('consultations.clinical_examination') }}{{ $visit_record_details->clinic_examination_comments }}
    {{ __('consultations.investigation_and_mgt_plan') }}{{ $visit_record_details->investigation_and_management_plan_comments }}
    {{ __('antenatal.bp') }}{{ $visit_record_details->bp }}
    {{ __('antenatal.scan') }}{{ $visit_record_details->scan }}
    {{ __('antenatal.checklist') }} -
      - @php - $checklist_array = json_decode($visit_record_details->checklist, true); - if (is_array($checklist_array)) { - for($i=0; $i < count($checklist_array) ; $i++){ - if($checklist_array[$i] != ""){ - echo "
    • ". $checklist_array[$i] ."
    • "; - } - } - } - @endphp -
    -
    {{ __('antenatal.outcome') }}{{ isset($outcomes[$visit_record_details->outcome_id]) ? $outcomes[$visit_record_details->outcome_id] : "" }}
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - @php - $means = ['1' => __('antenatal.foot'), '2' => __('antenatal.car'), '3' => __('antenatal.bike'), '4' => __('antenatal.public_means')]; - $health_screening = !empty($delivery_plan->health_screening)? explode(',',$delivery_plan->health_screening):[]; - $health_screening_options = ['1' => __('antenatal.syphillis'), '2' => __('antenatal.sickel_cell'), '3' => __('antenatal.hiv'), '4' => __('antenatal.hepatitis')]; - foreach ($health_screening as $value) $health_checks[] = $health_screening_options[$value]; - @endphp - - - - - - - - - - - - - - - - - - - - -
    Delivery Plan
    {{ __('antenatal.live_in_support') }}{{ $delivery_plan->live_in_support?? '' }}
    {{ __('antenatal.emergency_support') }}{{ $delivery_plan->emergency_support?? '' }}
    {{ __('antenatal.facility_stay') }}{{ $delivery_plan->facility_stay?? '' }}
    {{ __('antenatal.transport_means') }}{{ !empty($delivery_plan->transport_means)? $means[$delivery_plan->transport_means]: '' }}
    {{ __('antenatal.home_keeper') }}{{ $delivery_plan->home_keeper?? '' }}
    {{ __('antenatal.delivery_method') }}{{ $delivery_plan->delivery_method?? '' }}
    {{ __('antenatal.family_planning_method_before_next_pregnancy') }}{{ $delivery_plan->family_planning_method?? '' }}
    {{ __('antenatal.health_screening') }}{{ !empty($health_checks)? implode(', ', $health_checks):'' }}
    - -
    -
    -
    - -{{-- physical examination --}} - @php - $physical_exam = json_decode($visit_record_details->physical_exam, true); -// isset($physical_exam['oral']) ? '' - @endphp - - - -{{-- Physical examination --}} - - - - - - - -
    Physical Examination Details
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Oral thrush {{ isset($physical_exam['oral']) ? $physical_exam['oral'] : '' }}
    Breasts {{ isset($physical_exam['breasts']) ? $physical_exam['breasts'] : '' }}
    Lymph nodes{{ isset($physical_exam['lymph']) ? $physical_exam['lymph'] : '' }}
    Eyes{{ isset($physical_exam['eyes']) ? $physical_exam['eyes'] : '' }}
    Jaundice{{ isset($physical_exam['jaundice']) ? $physical_exam['jaundice'] : '' }}
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Teeth{{ isset($physical_exam['teeth']) ? $physical_exam['teeth'] : '' }}
    Legs{{ isset($physical_exam['legs']) ? $physical_exam['legs'] : '' }}
    Herpes zoster{{ isset($physical_exam['herpes']) ? $physical_exam['herpes'] : '' }}
    Nails{{ isset($physical_exam['nails']) ? $physical_exam['nails'] : '' }}
    Heart{{ isset($physical_exam['heart']) ? $physical_exam['heart'] : '' }}
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Neck{{ isset($physical_exam['neck']) ? $physical_exam['neck'] : '' }}
    Deformities{{ isset($physical_exam['deformities']) ? $physical_exam['deformities'] : '' }}
    Anaemia{{ isset($physical_exam['anaemia']) ? $physical_exam['anaemia'] : '' }}
    Palms{{ isset($physical_exam['palms']) ? $physical_exam['palms'] : '' }}
    Lungs{{ isset($physical_exam['lungs']) ? $physical_exam['lungs'] : '' }}
    -
    - - -
    - -{{-- pelvic examination --}} - - - - - - - -
    Pelvic Examination
    - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Vulva {{ isset($physical_exam['vulva']) ? $physical_exam['vulva'] : '' }}
    Vagina {{ isset($physical_exam['vagina']) ? $physical_exam['vagina'] : '' }}
    Cervix {{ isset($physical_exam['cervix']) ? $physical_exam['cervix'] : '' }}
    Abnormal Vaginal Discharge {{ isset($physical_exam['vaginal_discharge']) ? $physical_exam['vaginal_discharge'] : '' }}
    - - - -
    -
    -

    {{ __('patient_episode.started_by') }}

    - - {!! "".get_name($visit_record_details->created_by, 'id', 'first_name', 'users')."" !!} {!! "".get_name($visit_record_details->created_by, "id", 'last_name', "users")."" !!} on {{ streamline_date_time($visit_record_details->created_at) }} - - @if(!empty($visit_record_details->updated_by)) -

    -

    {{ __('antenatal.updated_by') }}

    - - {!! "".get_name($visit_record_details->updated_by, 'id', 'first_name', 'users')."" !!} {!! "".get_name($visit_record_details->updated_by, "id", 'last_name', "users")."" !!} on {{ streamline_date_time($visit_record_details->updated_at) }} - - @endif - @if(Auth::user()->can('edit-patient-consultation')) -

    - {{ __('antenatal.edit_anc_visit') }} - @endif -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/antenatal_visit_edit.blade.php b/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/antenatal_visit_edit.blade.php deleted file mode 100755 index 0a109a8f..00000000 --- a/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/antenatal_visit_edit.blade.php +++ /dev/null @@ -1,2412 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    Edit Antenatal Visit Details

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - - -{{-- Previous anc visits --}} -
    -
    -
    - -
    -
    -
    -
    -

    {{ __('antenatal.last_five_anc_visits') }}


    -
    - - - - - - - - - - - - - - - @forelse($previous_anc_visits as $key => $anc_visits) - - - - @foreach ($anc_visits as $anc_visit) - - - - - - - - - - @endforeach - - @empty - - @endforelse - -
    Pregnancy Reg. DateVisit dateVisit no.Fundal heightGestation from EDDGestation from scanGestation from fundalActions
    {{ streamline_date_time_short(get_name($key, 'id', 'created_at', 'ante_natal_clinic_registrations')) }}
    {{ streamline_date($anc_visit->ante_natal_clinic_date) }}{{ $anc_visit->ante_natal_clinic_visit_number }}{{ $anc_visit->fundal_height }} cm -
    {!! $resume_anc_followup->gestation_from_edd !!}   weeks
    -
    {{ $anc_visit->gestation_from_scan }} weeks{{ $anc_visit->gestation_from_fundal }} weeks - Details - {{-- {{ __('antenatal.edit_details') }} --}} -
    {{ __('antenatal.no_last_five_anc_visits') }}
    -
    -
    -
    -
    -
    -
    -
    -
    - - -
    - -{{-- Triage --}} -
    -
    -
    - -
    -
    -
    - {{ __('consultations.triage_grade') }} : - @if($triage) - @switch($triage->severe_grade) - @case (1) -
    {{ __('consultations.green') }}
    - @break - @case (2) -
    {{ __('consultations.yellow') }}
    - @break - @case (3) -
    {{ __('consultations.red') }}
    - @break - @default - {{ __('consultations.triage_grade_not_determined') }} - @endswitch - @endif -
    -
    - {{ __('consultations.symptoms') }} : - @if($triage) - @php $symptoms_array = explode(",", $triage->symptoms); @endphp - @php $symptoms_duration_array = explode(",", $triage->symptom_duration); @endphp - -
    -
    - - - - - - - - - @php $counter = 0; @endphp - @for($i = 0; $i < count($symptoms_array); $i++) - - - - - @endfor - -
    {{ __('consultations.symptom') }}{{ __('consultations.duration') }}
    {{ isset($symptoms_array[$i]) ? get_name($symptoms_array[$i], 'id', 'name', 'symptoms') : "" }}{{ $symptoms_duration_array[$i] ?? "" }}
    -
    -
    - @else - {{ __('consultations.no_symptom_recorded') }} - @endif -
    - -
    - - @if($triage) - @php - $observations_array = explode(',', $triage->observations); //i.e[temp=44,height=2] - - $parent_observation_array = isset($parent_triage_details) ? explode(',', $parent_triage_details->observations): []; - @endphp -
    -
    - - - - - - @if(check_if_episode_is_a_followup($episode->id)) - - @endif - - - - @php $counter = 0; @endphp - @foreach($observations_array as $observation) - @php - $item_array = explode('=', $observation); //i.e[temp,44] - $counter++; - @endphp - @if($counter < 9) - - - - - @if(check_if_episode_is_a_followup($episode->id)) - @foreach($parent_observation_array as $parent_observation) - @php - $parent_item_array = isset($parent_triage_details) ? explode('=', $parent_observation) : []; - @endphp - @if($item_array[0] == $parent_item_array[0]) - - @endif - @endforeach - @endif - - @endif - @endforeach - -
    {{ __('consultations.observation') }}{{ __('consultations.value') }} - {{ __('consultations.previous_value') }} -
    {{ $item_array[0] }}{{ $item_array[1] }} - {{ $parent_item_array[1] }} -
    -
    - -
    - - - - - - @if(check_if_episode_is_a_followup($episode->id)) - - @endif - - - - @php $counter=0; @endphp - @foreach($observations_array as $observation) - @php - $item_array = explode('=', $observation); //i.e[temp,44] - $counter++; - @endphp - @if($counter >= 9) - - - - - @if(check_if_episode_is_a_followup($episode->id)) - @foreach($parent_observation_array as $parent_observation) - @php - $parent_item_array = isset($parent_triage_details) ? explode('=', $parent_observation) : []; - @endphp - @if($item_array[0] == $parent_item_array[0]) - - @endif - @endforeach - @endif - - @endif - @endforeach - -
    {{ __('consultations.observation') }}{{ __('consultations.value') }} - {{ __('consultations.previous_value') }} -
    {{ isset($item_array[0]) ? $item_array[0] : "" }}{{ isset($item_array[1]) ? $item_array[1] : "" }} - {{ $parent_item_array[1] }} -
    -
    -
    - {{ __('consultations.comment') }}: {{ !is_null($triage) ? $triage->comments : "" }}
    - @else - {{ __('consultations.no_observations_recorded') }}
    - @endif - - {{ __('consultations.triage_done_by') }} {!! isset($triage) ? ''.\Streamline\Models\User::withTrashed()->find($triage->created_by)->first_name. " ".\Streamline\Models\User::withTrashed()->find($triage->created_by)->last_name.' on '.streamline_date_time($triage->created_at).'' : "" !!} -
    -
    -
    -
    -
    - - -
    -{{-- Documents --}} -
    -
    - -
    -
    - @if(count($documents) > 0) - @foreach($documents as $document) -
  • - {{ is_null($document->title) ? substr($document->description, 0, 5) : $document->title }} ({{ streamline_date_time($document->created_at) }}) -
  • - @endforeach - @else - {{ __('consultations.no_patient_documents_available') }} - @endif - -
    - - {{ __('consultations.add_new') }} -
    -
    -
    -
    - -
    -
    - -
    -
    - @php - $used_services = \Streamline\Models\OrderedService::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $service_performed_counter = 0; - @endphp - - @if(count($used_services) > 0) -
    - - - - - - - - - - - @foreach($used_services as $service) - @php - $service_ids = explode(",", $service->service_id); - $service_quantity = explode(",", $service->quantity); - $service_performed = explode(",", $service->performed); - $service_performed_id_array = explode(",", $service->performed_id); - @endphp - - @for($i = 0; $i < count($service_ids); $i++) - - - - - - - @endfor - @endforeach - -
    {{ __('consultations.service') }}{{ __('consultations.quantity') }}{{ __('consultations.payment_status') }}Performed By
    - {{ get_name($service_ids[$i], "id", "name", "services")}} - - {{ $service_quantity[$i] }} - - {!! $service->payment_status == 0 ? "Not Paid" : "Paid" !!} - - @if($service_performed[$i] == 1) - By {{ get_full_name(get_name($service_performed_id_array[$i], 'id', 'performed_by', 'staff_performed_services'), 'id', 'first_name', 'last_name', 'users') }} - @endif -
    -
    - @else - {{ __('consultations.no_used_services') }} - @endif -
    -
    -
    -
    - -
    -
    - - - - - - -
    - {{-- antenatal / maternity registration details --}} -
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - -
    {{ __('antenatal.gravida') }}{{ $anc_registration->gravida }}
    {{ __('antenatal.para') }}{{ $anc_registration->para }}
    {{ __('antenatal.abortions') }}{{ $anc_registration->abortion }}
    {{ __('maternity.ectopic_pregnancies') }}{{ $anc_registration->ectopic_pregnancies }}
    -
    -
    -
    -
    -
    - - - - @if ($anc_registration->previous_pph == 1) - - @endif - - @if ($anc_registration->previous_scar == 1) - - - @endif - - - - @if ($anc_registration->previous_pph == 1) - - @endif - - @if ($anc_registration->previous_scar == 1) - - - @endif - - -
    {{ __('antenatal.previous_pph') }}{{ __('antenatal.previous_pph_details') }}{{ __('antenatal.previous_scar') }}{{ __('antenatal.previous_scar_number') }}{{ __('antenatal.previous_scar_indication') }}
    {{ $anc_registration->previous_pph == 1 ? __('antenatal.yes') : __('antenatal.no') }}{{ $anc_registration->previous_pph_details }}{{ $anc_registration->previous_scar == 1 ? __('antenatal.yes') : __('antenatal.no') }}{{ $anc_registration->previous_scar_number }}{{ $anc_registration->previous_scar_indication }}
    -
    -
    -
    -
    -
    -
    -
    - -
    -

    {{ __('antenatal.past_obstetric_history') }}

    -
    -
    - - - - - - - - - - - - - - @foreach($obstetric_history_details as $obstetric_history) - @php - $children =[]; - if(!empty($obstetric_history->children)) $children = json_decode($obstetric_history->children); - @endphp - - - - - - - - @if (empty($children)) - - - - @endif - - @forelse ($children as $child) - - - - - - @empty - @endforelse - @endforeach - -
    {{ __('antenatal.date') }}{{ __('antenatal.gestation') }}{{ __('antenatal.outcome') }}{{ __('antenatal.classification') }}{{ __('antenatal.delivery_type') }}{{ __('antenatal.puerperium') }}{{ __('antenatal.name') }}{{ __('antenatal.patient_number') }}{{ __('antenatal.comments') }}
    {{ streamline_date($obstetric_history->obstetric_date) }}{{ $obstetric_history->gestation }} weeks - {{ isset($anc_outcomes[$obstetric_history->outcome]) ? $anc_outcomes[$obstetric_history->outcome] : "" }} - @if ($obstetric_history->outcome == '5') : - @if ($obstetric_history->abortion_outcome == '1') - {{ __('antenatal.below_12') }} - @elseif ($obstetric_history->abortion_outcome == '2') - {{ __('antenatal.12_and_above') }} - @endif - @endif - - @if ($obstetric_history->classification == '1') - {{ __('antenatal.premature') }} - @elseif ($obstetric_history->classification == '2') - {{ __('antenatal.fullterm') }} - @endif - - @if ($obstetric_history->delivery_type == '1') - {{ __('antenatal.vaginal_delivery') }} - @elseif ($obstetric_history->delivery_type == '2') - {{ __('antenatal.vacuum_delivery') }} - @elseif ($obstetric_history->delivery_type == '3') - {{ __('antenatal.forceps_delivery') }} - @elseif ($obstetric_history->delivery_type == '4') - {{ __('antenatal.c_section') }} - @elseif ($obstetric_history->delivery_type == '5') - {{ __('antenatal.vbac') }} - @endif - {{ $obstetric_history->puerperium }}
    {{ $child->name }}{{ $child->patient_number }}{{ $child->health_condition }}
    -
    -
    -
    -
    - -{{--@if(isset($anc_visit_records) && count($anc_visit_records) > 0)--}} -{{--
    --}} -{{--
    --}} -{{--

    {{ __('antenatal.previous_anc_visits') }} {{ streamline_date($episode->created_at) }}

    --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- @foreach($anc_visit_records as $visit_record)--}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- @endforeach--}} -{{-- --}} -{{--
    {{ __('antenatal.date') }}{{ __('antenatal.visit_number') }}{{ __('antenatal.registration_id') }}{{ __('antenatal.fundal_height') }}{{ __('antenatal.scan_edd') }}{{ __('antenatal.gestation_from_edd') }}{{ __('antenatal.gestation_from_scan') }}{{ __('antenatal.foetal_heart_rate') }}{{ __('antenatal.foetal_heart_regularity') }}
    {{ streamline_date($visit_record->ante_natal_clinic_date) }}{{ $visit_record->ante_natal_clinic_visit_number }}{{ $visit_record->ante_natal_clinic_registration_id }}{{ $visit_record->fundal_height }}{{ $visit_record->scan_edd }}--}} -{{--
    {!! $visit_record->gestation_from_edd !!}   weeks
    --}} -{{--
    {{ $visit_record->gestation_from_scan }}{{ $visit_record->foetal_heart_rate }}{{ $visit_record->foetal_heart_regularity }}{{ __('antenatal.view_details') }}
    --}} -{{--
    --}} -{{--
    --}} -{{--@endif--}} - -
    -
    - @include('flash::message') -
    - {{ __('antenatal.anc_template') }}

    - {{ Form::model($resume_anc_followup, ['route' => ['ante_natal_clinic.update_anc_template',$resume_anc_followup->id],'method'=>'PUT','id'=>'consultation_form']) }} - - - - -
    -
    - {{ Form::label('anc_date',__('antenatal.date')) }} - {{ Form::text('anc_date',streamline_date($resume_anc_followup->ante_natal_clinic_date),['class'=>'form-control compulsory','required','readonly'=>'true']) }} -
    - - {{ Form::label('anc_visit_number',__('antenatal.anc_visit_number')) }} - {{ Form::number('anc_visit_number',$visit_number,['class'=>'form-control compulsory','required']) }} -
    - {{ Form::label('lmp',__('antenatal.lmp')) }} - {{ Form::text('lmp',streamline_date($anc_registration->lmp),['class'=>'form-control','readonly'=>'true']) }} -
    -
    - {{ Form::label('edd',__('antenatal.edd')) }} - {{ Form::text('edd',streamline_date($anc_registration->edd),['class'=>'form-control','readonly'=>'true']) }} -
    - - {{ __('antenatal.us_scan_edd') }}
    -
    - @php - $customized_date_format_1 = $gestation_from_scan_weeks = null; - $us_scan_edd = !empty($obs_scan_results->expected_delivery_date)? explode(',', $obs_scan_results->expected_delivery_date):null; - if(!empty($us_scan_edd)) $customized_date_format_1 = Carbon\Carbon::parse($us_scan_edd[0])->format('d/m/Y'); - - if(!is_null($resume_anc_followup->scan_edd)){ - $format_db_date_1 = date_create($resume_anc_followup->scan_edd); - $customized_date_format_1 = date_format($format_db_date_1, 'd/m/Y'); - } - - $gestation_from_scan = !empty($obs_scan_results->average_gestational_age)? explode(',', $obs_scan_results->average_gestational_age):''; - if(!empty($gestation_from_scan)) $gestation_from_scan_weeks = !empty($gestation_from_scan[0])? $gestation_from_scan[0]: $gestation_from_scan[1]; - @endphp - - {{ Form::text('scan_edd', $customized_date_format_1, ['class' => 'form-control col-sm-12','readonly','id'=>'datepicker-autoclose1']) }} - -
    -
    - - {{ Form::label('fundal_height', __('antenatal.fundal_height')) }} - {{ Form::text('fundal_height', $resume_anc_followup->fundal_height, ['class'=>'form-control']) }} -
    -
    - {{ Form::label('gestation_from_edd',__('antenatal.gestation_from_edd')) }} -{{-- {{ Form::text('gestation_from_edd', $resume_anc_followup->gestation_from_edd, ['class'=>'form-control compulsory','required']) }}--}} - -
    {!! $resume_anc_followup->gestation_from_edd !!}
    - {{ Form::hidden('gestation_from_edd', $resume_anc_followup->gestation_from_edd ?? '') }} -
    - - {{ Form::label('gestation_from_scan',__('antenatal.gestation_from_scan')) }} - {{ Form::number('gestation_from_scan', !empty($resume_anc_followup->gestation_from_scan)? $resume_anc_followup->gestation_from_scan : $gestation_from_scan_weeks, ['class'=>'form-control']) }} -
    - - {{ Form::label('gestation_from_fundal_height',__('antenatal.gestation_from_fundal_height')) }} - {{ Form::number('gestation_from_fundal_height', $resume_anc_followup->gestation_from_fundal, ['class'=>'form-control', 'id'=>'gestation_from_fundal_height']) }} -
    -
    -
    -
    -
    - {{ Form::label('lie',__('antenatal.lie')) }} - {{ Form::select('lie', $anc_lies, $resume_anc_followup->lie, ['class'=>'form-control compulsory', 'required']) }} -
    -
    - {{ Form::label('presentation',__('antenatal.presentation')) }} - {{ Form::select('presentation', $anc_presentations, $resume_anc_followup->presentation, ['class'=>'form-control compulsory', 'required']) }} -
    -
    - {{ Form::label('position',__('antenatal.position')) }} - {{ Form::select('position', $anc_positions, $resume_anc_followup->position, ['class'=>'form-control compulsory','required']) }} -
    -
    - {{ Form::label('engagement',__('antenatal.engagement')) }} ({{ __('antenatal.pp_brim') }}) - {{ Form::select('engagement', $anc_engagements, $resume_anc_followup->engagement, ['class'=>'form-control compulsory', 'required']) }} -
    -
    -
    -
    -

    {{ __('antenatal.foetal_heart') }}
    -
    - {{ Form::label('foetal_heart_rate',__('antenatal.rate')) }} - {{ Form::number('foetal_heart_rate', $resume_anc_followup->foetal_heart_rate, ['class'=>'form-control', 'step'=> '.01']) }} -
    -
    - {{ Form::label('foetal_heart_regularity',__('antenatal.regularity')) }} - {{ Form::select('foetal_heart_regularity', $heart_regularity, $resume_anc_followup->foetal_heart_regularity, ['class'=>'form-control']) }} -
    - * {{ __('antenatal.if_in_labour_check_heart_rate') }}. -
    - * {{ __('antenatal.if_heart_beat_is_more_than_30') }}. -
    -
    - {{ Form::label('history_of_aph',__('antenatal.history_of_aph')) }} -
    - {{ Form::radio('history_of_aph', 1, $resume_anc_followup->aph == 1 ? true: false, ["required","id" => "show_aph_details_div"]) }} {{ __('antenatal.yes') }}    - {{ Form::radio('history_of_aph', 0, $resume_anc_followup->aph == 0 ? true: false, ["required","id" => "hide_aph_details_div"]) }} {{ __('antenatal.no') }} - -
    -
    - {{ Form::label('histoy_of_fits',__('antenatal.history_of_fits')) }} -
    - {{ Form::radio('histoy_of_fits', 1, $resume_anc_followup->fits == 1 ? true: false, ["required","id" => "show_fits_details_div"]) }} {{ __('antenatal.yes') }}    - {{ Form::radio('histoy_of_fits', 0, $resume_anc_followup->fits == 0 ? true: false, ["required","id" => "hide_fits_details_div"]) }} {{ __('antenatal.no') }} - -
    -
    -
    -

    Physical Examination

    -
    - @php - $physical_exam = json_decode($resume_anc_followup->physical_exam, true); - $other_physicals = explode(',',$resume_anc_followup->other_physicals); - @endphp -
    - {{ Form::label('height', __('antenatal.Height')) }} - {{ Form::number('height',$physical_exam['height']?? '',['class'=>'form-control', 'id'=>'height', 'step'=>'0.01']) }} -
    -
    - {{ Form::label('weight', __('antenatal.Weight')) }} - {{ Form::number('weight',$physical_exam['weight']?? '',['class'=>'form-control', 'id'=>'weight', 'step'=>'0.01']) }} -
    -
    - {{ Form::label('bmi', __('antenatal.bmi')) }} - {{ Form::number('bmi',$physical_exam['bmi']?? '',['class'=>'form-control','readonly', 'id'=>'bmi', 'step'=>'0.01']) }} -
    -
    - {{ Form::label('muac', __('art_clinic.muac')) }} - {{ Form::number('muac',$physical_exam['muac']?? '',['class'=>'form-control', 'id'=>'muac', 'step'=>'0.01']) }} -
    -
    - {{ Form::label('nut_status', __('antenatal.nut_status')) }} - {{ Form::text('nut_status', $physical_exam['nut_status']?? '',['class'=>'form-control', 'id'=>'nut_status', 'readonly']) }} -
    -
    -
    -
    - {{ Form::label('temperature', __('antenatal.temperature')) }} - {{ Form::text('temperature',$physical_exam['temperature']?? '',['class'=>'form-control']) }} -
    -
    - {{ Form::label('bp', __('antenatal.bp')) }} - {{ Form::text('bp', $physical_exam['bp']?? '',['class'=>'form-control compulsory', 'required']) }} -
    -
    - {{ Form::label('pulse', __('antenatal.pulse')) }} - {{ Form::text('pulse',$physical_exam['pulse']?? '',['class'=>'form-control']) }} -
    -
    - {{ Form::label('gait', __('antenatal.gait')) }} - {{ Form::text('gait', $physical_exam['gait']?? '',['class'=>'form-control']) }} -
    -
    - - - - - - - - - - - - - - -
    - {{ Form::checkbox('other_physicals[]', 1, in_array(1,$other_physicals), ['id'=>'other_physicals_oedema', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('other_physicals[]', 2, in_array(2,$other_physicals), ['id'=>'other_physicals_headache', 'class'=>'form-check-input']) }} - -
    - {{ Form::checkbox('other_physicals[]', 3, in_array(3,$other_physicals), ['id'=>'other_physicals_varicose', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('other_physicals[]', 4, in_array(4,$other_physicals), ['id'=>'other_physicals_blurred_vision', 'class'=>'form-check-input']) }} - -
    - {{ Form::checkbox('other_physicals[]', 5, in_array(5,$other_physicals), ['id'=>'other_physicals_proteinuria', 'class'=>'form-check-input']) }} - -
    -
    -
    -
    -
    - * {{ __('antenatal.if_bp_above_160') }}. -
    -
    * {{ __('antenatal.if_bp_between_140_and_160') }}.
    -
    - * {{ __('antenatal.if_patient_relentless') }}. -
    Examine the following and comment:
    -
    -
    -
    -
    - - - -
    - -
    - - -
    -
    - - - -
    - -
    - -
    -
    - - -
    - -
    - -
    -
    -
    -
    - - - - -
    - -
    - -
    -
    - - - -
    - -
    - - -
    -
    - - - - -
    - -
    - - -
    -
    -
    -
    - - - -
    - -
    - -
    -
    - - - -
    - -
    - - -
    -
    - - - -
    - -
    - - -
    -
    -
    -
    - - - -
    - -
    - - -
    -
    - - - -
    - -
    - - -
    -
    - - - -
    - -
    - - -
    -
    -
    -
    - - - -
    - -
    - - -
    -
    - - - -
    - -
    -
    -
    - - - - -
    - -
    - -
    -
    -
    Pelvic Examination
    -
    -
    - {{ Form::label('vulva', __('antenatal.vulva')) }} - -
    -
    - {{ Form::label('vagina', __('antenatal.vagina')) }} - -
    -
    - {{ Form::label('cervix', __('antenatal.cervix')) }} - -
    -
    - {{ Form::label('vaginal_discharge', __('antenatal.vaginal_discharge')) }} - -
    -
    -
    -
    -
    - @php - $symptoms_array = []; $symptom_duration_array = []; - if(!is_null($resume_anc_followup->symptoms) && !is_null($resume_anc_followup->symptom_duration)){ - $symptoms_string = $resume_anc_followup->symptoms; - $symptoms_array = explode(",", $resume_anc_followup->symptoms); - - $symptom_duration_string = $resume_anc_followup->symptom_duration; - $symptom_duration_array = explode(",", $resume_anc_followup->symptom_duration); //[2 days, 2 hours] - } - @endphp -
    - - - - - - - - - - @if(!empty($symptoms_array)) - @for($i=0; $i < count($symptoms_array); $i++) - - - - - - - - @endfor - @else - - - - - - - - @endif - -
    {{ __('antenatal.symptoms') }}{{ __('antenatal.duration') }}{{ __('antenatal.prompt') }}{{ __('antenatal.reference') }}
    - {{ Form::select('symptoms[]', $symptoms, $symptoms_array[$i], ['id' => '1000', 'class' => 'form-control col-sm-12 compulsory symptomsDropdown', 'required', 'onchange' => 'showPrompt(this.value, this.id)']) }} - -
    - @php $formatted_duration_array = explode(" ", $symptom_duration_array[$i]); @endphp -
    - -
    -
    - -
    -
    -
    -
    -
    - {{ Form::select('symptoms[]', $symptoms, '', ['id' => '1000', 'class' => 'form-control col-sm-12 compulsory symptomsDropdown', 'required', 'onchange' => 'showPrompt(this.value, this.id)']) }} - -
    -
    - -
    -
    - -
    -
    -
    -
    -
    - - -
    -
    -
    -
    -
    -
    {{ __('antenatal.checklist') }}
    -
    - @php - $checklist_array = []; - if (!empty($resume_anc_followup->checklist)) { - $checklist_array = json_decode($resume_anc_followup->checklist, true); - if(empty($checklist_array)) $checklist_array = @unserialize($resume_anc_followup->checklist); - if(!is_array($checklist_array)) $checklist_array = []; - } - @endphp - - - - - - - - - - - - - - - - - -
    - -   - - -   - - -   - - -   - - -   -
    - -   - - -   - - -   - - -   - - -   -
    -
    -
    -
    -
    -
    - - -{{-- Delivery Plan --}} -
    -
    -
    - -
    -
    -
    -
    - {{ Form::label('live_in_support', __('antenatal.live_in_support')) }} - {{ Form::text('live_in_support', $delivery_plan->live_in_support?? '',['class'=>'form-control']) }} -
    -
    - {{ Form::label('emergency_support', __('antenatal.emergency_support')) }} - {{ Form::text('emergency_support', $delivery_plan->emergency_support?? '',['class'=>'form-control']) }} -
    -
    - {{ Form::label('facility_stay', __('antenatal.facility_stay')) }} - {{ Form::text('facility_stay', $delivery_plan->facility_stay?? '',['class'=>'form-control']) }} -
    - @php - $health_screening = !empty($delivery_plan->health_screening)? explode(',',$delivery_plan->health_screening):[]; - @endphp -
    -
    -
    -
    - {{ Form::label('transport_means',__('antenatal.transport_means')) }} -
    - {{ Form::select('transport_means', ['' => __('antenatal.select'), '1' => __('antenatal.foot'), '2' => __('antenatal.car'), '3' => __('antenatal.bike'), '4' => __('antenatal.public_means')], $delivery_plan->transport_means?? '', ['id' => 'transport_means', 'class' => 'form-control']) }} -
    -
    -
    -
    - {{ Form::label('home_keeper', __('antenatal.home_keeper')) }} - {{ Form::text('home_keeper', $delivery_plan->home_keeper?? '',['class'=>'form-control']) }} -
    -
    - {{ Form::label('delivery_method', __('antenatal.delivery_method')) }} - {{ Form::text('delivery_method', $delivery_plan->delivery_method?? '',['class'=>'form-control']) }} -
    -
    -
    -
    - {{ Form::label('family_planning_method', __('antenatal.family_planning_method_before_next_pregnancy')) }} - {{ Form::text('family_planning_method', $delivery_plan->family_planning_method?? '',['class'=>'form-control']) }} -
    -
    - {{ Form::label('health_screening', __('antenatal.health_screening')) }} - - - - - - - - - - - -
    - {{ Form::checkbox('health_screening[]', 1, in_array(1,$health_screening), ['id'=>'health_screening_syphillis', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('health_screening[]', 2, in_array(2,$health_screening), ['id'=>'health_screening_sickel_cell', 'class'=>'form-check-input']) }} - -
    - {{ Form::checkbox('health_screening[]', 3, in_array(3,$health_screening), ['id'=>'health_screening_hiv', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('health_screening[]', 4, in_array(4,$health_screening), ['id'=>'health_screening_hepatitis', 'class'=>'form-check-input']) }} - -
    -
    -
    -
    - {{ Form::label('disposal',__('antenatal.disposal')) }} -
    - {{ Form::select('disposal', ['' => __('antenatal.select'), '1' => __('antenatal.placenta_home'), '2' => __('antenatal.placenta_dispose')], $delivery_plan->disposal?? '', ['id' => 'disposal', 'class' => 'form-control']) }} -
    -
    -
    -
    -
    -
    -
    {{ __('antenatal.delivery_items') }}
    - @php - $delivery_items = ['At least 4 pairs of gloves','Sanitary pads', '2 plastic sheets (ekiveera) measuring 2.5 metres','Money for emergency transport','Gauze', 'Baby clothing and sheets', 'Cotton wool (at least 500g)', 'Basin','Needle and syringe 5ml', 'Sugar and tea leaves','2 new razor blades','Soap', 'Clean clothing (personal)']; - @endphp -
      - @foreach ($delivery_items as $delivery_item) -
    • {{ $delivery_item }}
    • - @endforeach -
    - -
    -
    -
    -
    -
    -
    -
    - - - -@if( Auth::user()->can('view-patient-episode-primary-diagnoses')) -
    -
    - - - - - - - - - - - - - - - @if( Auth::user()->can('add-new-diagnosis-from-consultation')) - - - - - @endif - -
    {{ __('consultations.PRIMARY_DIAGNOSIS') }}{{ __('consultations.PROMPT') }}{{ __('consultations.REFERENCES') }}
    -
    - {{ Form::select('primary_diagnosis', $diagnoses, $resume_anc_followup->primary_diagnosis, ['id'=>'primary_diagnosis','class' => 'form-control col-sm-12 primaryDiagnosis', 'required']) }} -
    -
    {{ isset($resume_anc_followup->primary_diagnosis) ? $diagnoses_all->firstWhere('id',$resume_anc_followup->primary_diagnosis)->prompts : "" }} 
    -
    - @if(!is_null($resume_anc_followup->primary_diagnosis)) - @php - $reference_names = explode(",", get_name($resume_anc_followup->primary_diagnosis, 'id', 'reference_names', 'diagnoses')); - $reference_areas = explode(",", get_name($resume_anc_followup->primary_diagnosis, 'id', 'reference_areas', 'diagnoses')); - @endphp - @for($i = 0; $i < count($reference_areas); $i++) - @if(isset($reference_areas[$i]) && isset($reference_names[$i])) - {{ $reference_names[$i] }} | - @endif - @endfor - @endif -
    -
    - {{ __('consultations.add_new_diagnosis') }} -
    -
    -
    -
    - - - - - - - - - - - @php - $other_diagnoses = explode(',', $resume_anc_followup->other_diagnoses); - $counter=2; - @endphp - - @if(empty($other_diagnoses)) - - - - - - - @else - @foreach($other_diagnoses as $diagnosis) - @if($diagnosis != "") - - - - - - - @endif - @php $counter++; @endphp - @endforeach - {{-- - - - - - --}} - @endif - -
    #{{ __('consultations.OTHER_DIAGNOSIS') }}{{ __('consultations.PROMPT') }}{{ __('consultations.REFERENCES') }}
    - {{ Form::select('other_diagnosis[]', $diagnoses, '', ['class' => 'sec_d form-control col-sm-12']) }} -
     
     
    - {{ Form::select('other_diagnosis[]', $diagnoses, $diagnosis, ['class' => 'sec_d form-control col-sm-12']) }} -
    {{ is_object($diagnoses_all->firstWhere('id',$diagnosis)) ? $diagnoses_all->firstWhere('id',$diagnosis)->prompts : '' }} 
    {{ is_object($diagnoses_all->firstWhere('id',$diagnosis)) ? $diagnoses_all->firstWhere('id',$diagnosis)->reference_names : '' }} 
    - {{ Form::select('other_diagnosis[]', $diagnoses, '', ['class' => 'sec_d form-control col-sm-12', 'id'='other_diagnosis_1']) }} -
     
     
    -
    - {{ __('consultations.add_row') }} - {{ __('consultations.delete_row') }} -
    -@endif - -
    -
    -
    -

    {{ __('consultations.history') }}

    - -
    -
    -

    {{ __('consultations.clinical_examination') }}

    - -
    -
    -

    {{ __('consultations.investigation_and_mgt_plan') }}

    - -
    -
    -
    - -
    -
    -
    -

    {{ __('consultations.ordered_investigations') }}

    -
    - - - - - - - - - - - - - @if(count($investigation_results) > 0) - - @if(check_if_episode_is_a_followup($episode->id)) - - - - @endif - - @foreach($investigation_results as $result) - @php - $investigation_ids_array = explode(',', $result->investigation_id); - - // authentication of investigations - $per_investigation_array = explode(',', $result->per_investigation); - - $comments = explode(",", $result->comment); - $results_values = explode(",", $result->value); - @endphp - - @for($i = 0 ; $i < count($investigation_ids_array) ; $i++) - @php - $investigation = \Streamline\Models\Investigation::withTrashed()->find($investigation_ids_array[$i]); - @endphp - @if($investigation) - @if($investigation->type == 1 && isset($results_values[$i])) - - - - - @php - $specialised_results = \Streamline\Models\InvestigationSpecialisedResult::where('id', $results_values[$i])->first(); - - if($specialised_results){ - $variable_id_array = explode(',', $specialised_results->specialised_variable_id); - - $variable_value_array = explode(',', $specialised_results->value); - - $variable_comment_array = explode(',', $specialised_results->comment); - - $variable_normal_range_array = explode(',', $specialised_results->normal_ranges); - } - @endphp - @if($specialised_results) - @for($x = 0; $x < count($variable_id_array); $x++) - - - - - - - - @endfor - @endif - - @elseif($investigation->slug == 'echo' && $results_values[$i] == "") - - - - - @else - - - - - - - - @endif - @endif - @endfor - - - - @endforeach - @elseif(count($ordered_investigations) > 0) - - @if(check_if_episode_is_a_followup($episode->id)) - - - - @endif - - @foreach($ordered_investigations as $investigation) - @php $investigation_ids_array = explode(',', $investigation->investigation_id); @endphp - @for($i = 0 ; $i < count($investigation_ids_array) ; $i++) - @php - $investigation = \Streamline\Models\Investigation::withTrashed()->find($investigation_ids_array[$i]); - @endphp - - @if($investigation) - @if($investigation->slug == 'echo') - - - - - @else - - - - - - - - @endif - @endif - @endfor - @endforeach - @else - - - - @endif - -
    {{ __('investigations.investigation_name') }}{{ __('investigations.results') }}{{ __('investigations.normal_ranges') }}{{ __('investigations.unit') }}{{ __('investigations.comment') }}
    {{ __('consultations.investigation_for_review') }} ({{ streamline_date($episode->created_at)}})
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif -
    {{ get_name($variable_id_array[$x], 'id', 'name', 'investigation_specialised_variables') }}{{ $variable_value_array[$x] }} - @if(get_name($variable_id_array[$x], 'id', 'range_type', 'investigation_specialised_variables') == 1) - - {{ get_dynamic_normal_range_specialized($variable_id_array[$x], get_patient_age_group($patient_id), get_name($patient_id, 'id', 'gender', 'patients')) }} - @else - {{ get_name($variable_id_array[$x], 'id', 'normal_ranges', 'investigation_specialised_variables') }} - @endif - - @if(get_name(get_name($variable_id_array[$x], 'id', 'units', 'investigation_specialised_variables'), 'id', 'name', 'unit_of_measure') != "N/A") - {{ get_name(get_name($variable_id_array[$x], 'id', 'units', 'investigation_specialised_variables'), 'id', 'name', 'unit_of_measure') }} - @endif - {{ $variable_comment_array[$x] }}
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - - View Results - -
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - @if($per_investigation_array[$i] == 0) - {{ __("consultations.pending") }} - @else - {{ isset($results_values[$i]) ? $results_values[$i] : "" }} - @endif - - @if($investigation->range_type == 1) - {{ get_dynamic_normal_range($investigation->id, get_patient_age_group($patient_id), get_name($patient_id, 'id', 'gender', 'patients')) }} - @else - {{ $investigation->normal_ranges }} - @endif - - {{ get_name(get_name($investigation->id, 'id', 'units', 'investigations'),'id', 'name', 'unit_of_measure') }} - - {!! $per_investigation_array[$i] == 0 ? '{{ __("consultations.pending") }}' : ($comments[$i] ?? '') !!} -
    {{ __('consultations.authenticated_by') }}{{ get_name($result->authenticated_by, 'id', 'first_name', 'users')}} {{ get_name($result->authenticated_by, 'id', 'last_name', 'users')}}
    {{ __('consultations.investigation_for_review') }} ({{ streamline_date($episode->created_at)}})
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - @if(($cardio_echo)) - - View results - - @else - Pending - @endif -
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - {{ __('consultations.pending') }} - @if($investigation->range_type == 1) - {{ get_dynamic_normal_range($investigation->id, get_patient_age_group($patient_id), get_name($patient_id, 'id', 'gender', 'patients')) }} - @else - {{ $investigation->normal_ranges }} - @endif - - {{ $investigation->comments }} -
    {{ __('consultations.investigation_not_ordered') }} {{ check_if_episode_is_a_followup($episode->id) ? __('consultations.during_current_review') : '' }}.
    -
    -
    -
    -

    {{ __('consultations.ordered_sundries') }}

    -
    - - - - - - - - - - @if(count($ordered_sundries) > 0) - - @if(check_if_episode_is_a_followup($episode->id)) - - - - @endif - - @foreach($ordered_sundries as $ordered_sundry) - @php - $sundry_ids = explode(",", $ordered_sundry->sundries_id); - $sundry_quantity = explode(",", $ordered_sundry->quantity); - @endphp - - @for($i = 0; $i < count($sundry_ids); $i++) - - - - - @endfor - @endforeach - @else - - - - @endif - - -
    {{ __('consultations.SUNDRY') }}{{ __('consultations.QUANTITY') }}
    {{ __('consultations.sundries_for_episode_review') }} ({{ streamline_date($episode->created_at)}})
    {{ get_name($sundry_ids[$i], 'id', 'name', 'sundries') }} {!! $sundry_quantity[$i] !!}
    {{ __('consultations.no_sundries_ordered') }} {{ check_if_episode_is_a_followup($episode->id) ? __('consultations.during_current_review') : '' }}.
    -
    -
    -
    -
    - -
    -
    -
    -

    {{ __('consultations.treatment_given') }}

    -
    - - - - - - - - - - - - - @if(count($treatments) > 0) - @if(check_if_episode_is_a_followup($episode->id)) - - - - @endif - - @foreach($treatments as $treatment) - @php - $drugs_array = explode(",", $treatment->drugs); - $dosage_array = explode(",", $treatment->doses); - $dosage2_array = explode(",", $treatment->dose2); - $frequencies_array = explode(",", $treatment->frequencies); - $duration_array = explode(",", $treatment->durations); - $quantity_dispensed_array = explode(",", $treatment->quantities_dispensed); - $instructions_array = explode(",", $treatment->instruction); - $purchased_elsewhere_array = is_null($treatment->purchased_elsewhere) ? [] : explode(",", $treatment->purchased_elsewhere); - @endphp - @for($x = 0; $x < count($drugs_array); $x++) - @php - $frequency_name = get_name($frequencies_array[$x], 'id', 'name', 'dosage_frequencies'); - $unit = get_name($drugs_array[$x], 'id', 'name', 'drug_units'); - $unit = $unit=="N/A"?"":$unit; - $drug_unit = "" . $unit . ""; - $dose2 = (empty($dosage2_array[$x])) ? "" : " | " . $dosage2_array[$x] . $drug_unit; - @endphp - - - - - - @if(isset($purchased_elsewhere_array[$x]) && $purchased_elsewhere_array[$x] == 1) - - @else - @if($treatment->dispense_status == 1) - - @else - - @endif - @endif - - - @endfor - @endforeach - @else - - - - @endif - - -
    {{ __('consultations.DRUG_NAME') }}{{ __('consultations.DOSAGE') }}{{ __('consultations.DURATION') }}{{ __('consultations.QUANTITY') }}{{ __('consultations.STATUS') }}{{ __('consultations.INSTRUCTION') }}
    {{ __('consultations.treatment_for_episode_review') }} ({{ streamline_date($episode->created_at)}})
    - {{ get_name($drugs_array[$x], 'id', "name", 'drugs') }} - - @if($treatment->is_treatment_progressive != 0) - (Progressive Treatment) - @endif - {{ $dosage_array[$x] }} {!! $drug_unit !!} {{ $dose2 }}    {{ $frequency_name }}{{ $duration_array[$x] }}{{ $quantity_dispensed_array[$x] }}Purchased From Elsewhere{{ __('consultations.dispensed') }}{{ __('consultations.pending') }} - {{ isset($instructions_array[$x]) ? trim($instructions_array[$x]) : 'N/A' }} -
    {{ __('consultations.no_prescription_made_yet') }} {{ check_if_episode_is_a_followup($episode->id) ? 'during current review' : '' }}
    -
    -
    -
    -

    {{ __('consultations.ordered_procedures') }}

    -
    - - - - - - - - - - - @if(count($ordered_procedures) > 0) - @php $count = 1; $procedure_performed_counter = 0; @endphp - - @if(check_if_episode_is_a_followup($episode->id)) - - - - @endif - - @foreach($ordered_procedures as $ordered_procedure) - @php - $procedure_id = explode(",", $ordered_procedure->procedure_id); - $procedure_performed_array = explode(",", $ordered_procedure->performed); - $procedure_performed_id_array = explode(",", $ordered_procedure->performed_id); - @endphp - - @for($i = 0; $i < count($procedure_id); $i++) - - - - - - @endfor - @endforeach - @else - - - - @endif - - -
    {{ __('consultations.PROCEDURE') }}{{ __('consultations.STATUS') }}{{ __('consultations.PERFORMED') }}
    {{ __('consultations.procedures_for_episode_review') }} ({{ streamline_date($episode->created_at)}})
    - {{ get_name($procedure_id[$i], 'id', 'name', 'procedures') }} - - {!! $procedure_performed_array[$i] == 1 ? ''.__("consultations.performed").'' : ''. __("consultations.pending").'' !!} - - @if($procedure_performed_array[$i] == 1) - By {{ get_full_name(get_name($procedure_performed_id_array[$i], 'id', 'performed_by', 'staff_performed_services'), 'id', 'first_name', 'last_name', 'users') }} - @endif -
    {{ __('consultations.no_procedure_has_been_ordered') }} {{ check_if_episode_is_a_followup($episode->id) ? __('consultations.during_current_review') : '' }}.
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - {{ Form::button(__('consultations.Investigation'),['type'=>'submit','class'=>'btn btn-info btn-sm','name'=>'submit_btn','value'=>'investigation']) }} - {{ Form::button(__('consultations.Treatment'),['type'=>'submit','class'=>'btn btn-default btn-sm','name'=>'submit_btn','value'=>'treatment']) }} - {{ Form::button(__('consultations.Procedures'),['type'=>'submit','class'=>'btn btn-inverse btn-sm','name'=>'submit_btn','value'=>'procedures']) }} -
    -

    -
    -
    - {{ Form::button(__('consultations.Sundries'),['type'=>'submit','class'=>'btn btn-inverse btn-sm','name'=>'submit_btn','value'=>'sundries']) }} - {{ Form::button(__('antenatal.order_ultra_sound_scan'),['type'=>'submit','class'=>'btn btn-default btn-sm','name'=>'submit_btn','value'=>'order_ultrasound']) }} -
    -
    -
    - -
    -
    {{ __('consultations.comments') }}
    -
    - -
    -
    - -
    -
    - {{ Form::label('outcome',__('consultations.outcome')) }} -
    - {{ Form::select('outcome', $outcomes, is_null($resume_anc_followup->outcome_id) ? 7 : $resume_anc_followup->outcome_id, ['id' => 'outcome', 'class' => 'form-control compulsory']) }} -
    -
    -
    outcome_id != 1) style="display: none" @endif> -
    - {{ Form::label('ward_id',__('consultations.select_ward')) }} -
    - {{ Form::select('ward_id', $wards, $resume_anc_followup->ward_id, ['class' => 'form-control compulsory']) }} -
    -
    - -
    - {{ Form::label('admitted_on',__('consultations.admitted_on')) }} -
    - {{ Form::text('admitted_on',Carbon\Carbon::parse($resume_anc_followup->admitted_on)->format('d/m/Y'),['class' => 'form-control datepicker-autoclose compulsory', 'readonly', 'id'=>'admitted_on']) }} - -
    -
    -
    - -
    outcome_id != 3) style="display: none"@endif> - - @php - $appointment_record = \Streamline\Models\PatientAppointment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - - $allocated_clinic = 0; - $allocated_in_charge = null; - $appointment_time = null; - - if($appointment_record){ - $allocated_clinic = $appointment_record->clinic_allocation; - $allocated_in_charge = $appointment_record->incharge_id; - $appointment_time = $appointment_record->appointment_time; - } - @endphp - -
    - {{ Form::label('followup_clinic_allocation', 'Assign Clinic') }} - {{ Form::select('followup_clinic_allocation', $clinics, $allocated_clinic, ['class' => 'form-control col-sm-12 compulsory']) }} -
    - -
    - {{ Form::label('followup_in_charge', __('consultations.assign_incharge')) }} - -
    - -
    - {{ Form::label('followup_when',__('consultations.when')) }} -
    - {{ Form::text('followup_when',Carbon\Carbon::parse($resume_anc_followup->followup_when)->format('Y-m-d'),['class' => 'form-control compulsory datepicker-autoclose','readonly', 'id' => 'followup_when']) }} - -
    -
    - -
    - {{ Form::label('followup_in_time', __('consultations.appointment_time')) }} - {{ Form::time('followup_in_time',$appointment_time,['class' => 'form-control']) }} -
    -
    - -
    outcome_id != 4) style="display: none" @endif> -
    - {{ Form::label('referral_id',__('consultations.referred_to')) }} -
    - {{ Form::select('referral_id', $referrals, $resume_anc_followup->referred_to, ['class' => 'form-control compulsory']) }} -
    -
    -
    -
    -
    - @if($resume == TRUE) - - @endif -
    -  {{ Form::button(__('antenatal.save_visit'),['type'=>'submit','class'=>'btn btn-info pull-left col-sm-10','name'=>'save_btn','value'=>'save']) }} -

    -
    -  {{ Form::button(__('antenatal.update_and_complete'),['class'=>'btn btn-success pull-left col-sm-10','name'=>'complete_btn','value'=>'complete', 'onclick'=>'return confirm_outcome()']) }} - -
    -
    -
    -
    -
    -
    -
    -
    - -{{ Form::close() }} -@include('patients::consultations.add_diagnosis') - - - - -@endsection - -@push('scripts') - - - - - - - -{{-- physical examination inputs , show and hide --}} - - -@endpush diff --git a/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/create.blade.php b/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/create.blade.php deleted file mode 100755 index af5494ea..00000000 --- a/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/create.blade.php +++ /dev/null @@ -1,2505 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('antenatal.new_pregnancy_registration') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -@php - $episode_created_at = Carbon\Carbon::parse($episode->created_at); - $episode_has_grand_parent_episode = false; -@endphp - -@if(check_if_episode_is_a_followup($episode->id)) - @php - $parent_episode_details = \Streamline\Models\PatientEpisode::find($episode->parent_episode_id); - $parent_consultations = \Streamline\Models\Consultation::where(['episode_id' => $parent_episode_details->id])->get(); - $parent_consultation_details = count($parent_consultations) > 0 ? $parent_consultations->first() : null; - $parent_triage_details = \Streamline\Models\Triage::where(['id' => $parent_episode_details->triage_id])->first(); - - if(check_if_episode_is_a_followup($parent_episode_details->id)){ - $episode_has_grand_parent_episode = true; - - $grand_parent_episode_details = \Streamline\Models\PatientEpisode::find($parent_episode_details->parent_episode_id); - - $grand_parent_episode_treatments = \Streamline\Models\Treatment::where(['patient_id' => $patient_id, 'episode_id' => $grand_parent_episode_details->id, 'tta' => 0])->get(); - - $grand_parent_episode_ordered_procedures = \Streamline\Models\OrderedProcedure::where(['patient_id' => $patient_id, 'episode_id' => $grand_parent_episode_details->id])->get(); - - $grand_parent_episode_ordered_investigations = \Streamline\Models\OrderedInvestigation::where(['patient_id' => $patient_id, 'episode_id' => $grand_parent_episode_details->id])->get(); - - $grand_parent_episode_ordered_sundries = \Streamline\Models\OrderedSundry::where(['patient_id' => $patient_id, 'episode_id' => $grand_parent_episode_details->id])->get(); - - $grand_parent_episode_investigation_results = \Streamline\Models\InvestigationResults::where(['patient_id' => $patient_id, 'episode_id' => $grand_parent_episode_details->id])->get(); - } - @endphp -@endif - -
    -
    -
    -
    - -
    -
    -
    - {{ __('consultations.triage_grade') }} : - @if($triage) - @switch($triage->severe_grade) - @case (1) -
    {{ __('consultations.green') }}
    - @break - @case (2) -
    {{ __('consultations.yellow') }}
    - @break - @case (3) -
    {{ __('consultations.red') }}
    - @break - @default - {{ __('consultations.triage_grade_not_determined') }} - @endswitch - @endif -
    -
    - {{ __('consultations.symptoms') }} : - @if($triage) - @php $symptoms_array = explode(",", $triage->symptoms); @endphp - @php $symptoms_duration_array = explode(",", $triage->symptom_duration); @endphp - -
    -
    - - - - - - - - - @php $counter = 0; @endphp - @for($i = 0; $i < count($symptoms_array); $i++) - - - - - @endfor - -
    {{ __('consultations.symptom') }}{{ __('consultations.duration') }}
    {{ isset($symptoms_array[$i]) ? get_name($symptoms_array[$i], 'id', 'name', 'symptoms') : "" }}{{ $symptoms_duration_array[$i] ?? "" }}
    -
    -
    - @else - {{ __('consultations.no_symptom_recorded') }} - @endif -
    - -
    - - @if($triage) - @php - $observations_array = explode(',', $triage->observations); //i.e[temp=44,height=2] - - $parent_observation_array = isset($parent_triage_details) ? explode(',', $parent_triage_details->observations): []; - @endphp -
    -
    - - - - - - @if(check_if_episode_is_a_followup($episode->id)) - - @endif - - - - @php $counter = 0; @endphp - @foreach($observations_array as $observation) - @php - $item_array = explode('=', $observation); //i.e[temp,44] - $counter++; - @endphp - @if($counter < 9) - - - - - @if(check_if_episode_is_a_followup($episode->id)) - @foreach($parent_observation_array as $parent_observation) - @php - $parent_item_array = isset($parent_triage_details) ? explode('=', $parent_observation) : []; - @endphp - @if($item_array[0] == $parent_item_array[0]) - - @endif - @endforeach - @endif - - @endif - @endforeach - -
    {{ __('consultations.observation') }}{{ __('consultations.value') }} - {{ __('consultations.previous_value') }} -
    {{ $item_array[0] }}{{ $item_array[1] }} - {{ $parent_item_array[1] }} -
    -
    - -
    - - - - - - @if(check_if_episode_is_a_followup($episode->id)) - - @endif - - - - @php $counter=0; @endphp - @foreach($observations_array as $observation) - @php - $item_array = explode('=', $observation); //i.e[temp,44] - $counter++; - @endphp - @if($counter >= 9) - - - - - @if(check_if_episode_is_a_followup($episode->id)) - @foreach($parent_observation_array as $parent_observation) - @php - $parent_item_array = isset($parent_triage_details) ? explode('=', $parent_observation) : []; - @endphp - @if($item_array[0] == $parent_item_array[0]) - - @endif - @endforeach - @endif - - @endif - @endforeach - -
    {{ __('consultations.observation') }}{{ __('consultations.value') }} - {{ __('consultations.previous_value') }} -
    {{ isset($item_array[0]) ? $item_array[0] : "" }}{{ isset($item_array[1]) ? $item_array[1] : "" }} - {{ $parent_item_array[1] }} -
    -
    -
    - {{ __('consultations.comment') }}: {{ !is_null($triage) ? $triage->comments : "" }}
    - @else - {{ __('consultations.no_observations_recorded') }}
    - @endif - - {{ __('consultations.triage_done_by') }} {!! isset($triage) ? ''.\Streamline\Models\User::withTrashed()->find($triage->created_by)->first_name. " ".\Streamline\Models\User::withTrashed()->find($triage->created_by)->last_name.' on '.streamline_date_time($triage->created_at).'' : "" !!} -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    - @if(count($documents) > 0) - @foreach($documents as $document) -
  • - {{ is_null($document->title) ? substr($document->description, 0, 5) : $document->title }} ({{ streamline_date_time($document->created_at) }}) -
  • - @endforeach - @else - {{ __('consultations.no_patient_documents_available') }} - @endif - -
    - - {{ __('consultations.add_new') }} -
    -
    -
    -
    - -
    -
    - -
    -
    - @php - $used_services = \Streamline\Models\OrderedService::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $service_performed_counter = 0; - @endphp - - @if(count($used_services) > 0) -
    - - - - - - - - - - - @foreach($used_services as $service) - @php - $service_ids = explode(",", $service->service_id); - $service_quantity = explode(",", $service->quantity); - $service_performed = explode(",", $service->performed); - $service_performed_id_array = explode(",", $service->performed_id); - @endphp - - @for($i = 0; $i < count($service_ids); $i++) - - - - - - - @endfor - @endforeach - -
    {{ __('consultations.service') }}{{ __('consultations.quantity') }}{{ __('consultations.payment_status') }}Performed By
    - {{ get_name($service_ids[$i], "id", "name", "services")}} - - {{ $service_quantity[$i] }} - - {!! $service->payment_status == 0 ? "Not Paid" : "Paid" !!} - - @if($service_performed[$i] == 1) - By {{ get_full_name(get_name($service_performed_id_array[$i], 'id', 'performed_by', 'staff_performed_services'), 'id', 'first_name', 'last_name', 'users') }} - @endif -
    -
    - @else - {{ __('consultations.no_used_services') }} - @endif -
    -
    -
    -
    - -
    -
    -@if ($previous_consultations->count() > 0) -
    -
    -
    -

    {{ __('antenatal.previous_consultations') }}


    -
    - - - - - - - - - - - - - @foreach ($previous_consultations as $previous_consultation) - - - - - - - - - @endforeach - -
    DateClinicPrimary DiagnosisOther DiagnosesConsultation By
    {{ streamline_date_time($previous_consultation->created_at) }}{{ !empty($previous_consultation->clinic_id)? get_name($previous_consultation->clinic_id, 'id', 'name', 'clinics') : "N/A"; }}{{ get_name($previous_consultation->primary_diagnosis, 'id', 'name', 'diagnoses') }} - @php - $list = []; - $other_diagnoses_array = !empty($previous_consultation->other_diagnoses)? unserialize($previous_consultation->other_diagnoses):[]; - foreach($other_diagnoses_array as $diagnosis) if(!empty($diagnosis)) $list[]=$diagnoses[$diagnosis]; - $other_diagnoses = !empty($list)? implode(', ', $list):''; - echo $other_diagnoses; - @endphp - {{ get_full_name($previous_consultation->created_by, 'id', 'first_name', 'last_name', 'users'); }} {{ __('patients.details') }}
    -
    -
    -
    -
    -@endif -
    -
    -
    -

    {{ __('antenatal.previously_registered_pregnancies') }}


    -
    - - - - - - - - - - - - - - - @php $count = 1; @endphp - @if(count($last_five_pregnancies) > 0) - @foreach($last_five_pregnancies as $pregnancy) - - - - - - - - - - - @php $count++; @endphp - @endforeach - @else - - @endif - -
    Pregnancy registered onNumber of VisitsLMP DateE.D.DStatusRegistered ByActions
    {{ $count }}{{ streamline_date_time_short($pregnancy->created_at) }} - @php - $visits = \Streamline\Models\AnteNatalClinicFollowup::where(['patient_id' => $pregnancy->patient_id, 'episode_id' => $pregnancy->episode_id])->pluck('id'); - foreach ($visits as $key => $visit) { - $visit_ids[] = $visit; - } - @endphp - @if ($visits->count() > 0) - {{ Form::open(['method' => 'POST', 'route' => 'anc_visits.previous_visits', 'target' => "_blank", 'id'=>'previous_visits' ]) }} - - {{ commas($visits->count()) }} - {{ Form::close() }} - @else - 0 - @endif - {{ streamline_date($pregnancy->lmp) }}{{ streamline_date($pregnancy->edd) }}{{ !empty($pregnancy->completed)? 'Completed':'Unknown' }}{{ get_full_name($pregnancy->created_by, 'id', 'first_name', 'last_name', 'users') }} - Details - {{-- Edit --}} -
    {{ __('antenatal.no_previously_registered_pregnancies') }}
    -
    -
    -
    -
    - -
    - @include('flash::message') - - {{ __('antenatal.new_anc_registration_form_header') }}

    - {{ Form::open(['route' => 'ante_natal_clinic.store','data-toggle'=>'validator']) }} -
    -
    - {{ Form::label('gravida',__('antenatal.gravida')) }} - {{ Form::number('gravida','',['class'=>'form-control compulsory','required']) }} -
    -
    - {{ Form::label('para',__('antenatal.para')) }} - {{ Form::number('para','',['class'=>'form-control compulsory','required']) }} -
    -
    - {{ Form::label('abortion',__('antenatal.abortions')) }} - {{ Form::number('abortion','',['class'=>'form-control compulsory','required']) }} -
    -
    - {{ Form::label('ectopic_pregnancies',__('maternity.ectopic_pregnancies')) }} - {{ Form::number('ectopic_pregnancies','',['class'=>'form-control compulsory','required', 'id'=>'ectopic_pregnancies']) }} -
    -
    - {{ Form::label('postpartum',__('antenatal.postpartum')) }} -
    - {{ Form::radio('postpartum', 1, false, ["required"]) }} {{ __('antenatal.yes') }}    - {{ Form::radio('postpartum', 0, false, ["required"]) }} {{ __('antenatal.no') }} -
    -
    -
    -
    - {{ __('antenatal.past_obstetric_history') }} - @if ($obstetric_history_details->count() > 0) -
    -
    - - - - - - - - - - - @foreach($obstetric_history_details as $obstetric_history) - @php - $children =[]; - if(!empty($obstetric_history->children)) $children = json_decode($obstetric_history->children); - @endphp - - - - - - - - - @endforeach - -
    {{ __('antenatal.date') }}{{ __('antenatal.gestation') }}{{ __('antenatal.outcome') }}{{ __('antenatal.name') }}{{ __('antenatal.patient_number') }}{{ __('antenatal.comments') }}
    - {{ $obstetric_history->obstetric_date }} - - {{ $obstetric_history->gestation }} weeks - - {{ isset($anc_outcomes[$obstetric_history->outcome]) ? $anc_outcomes[$obstetric_history->outcome] : "" }} - - @if (!empty($children)) -
      - @foreach ($children as $child) -
    1. {{ $child->name }}
    2. - @endforeach -
    - @endif -
    - @if (!empty($children)) -
      - @foreach ($children as $child) -
    1. {{ $child->patient_number }}
    2. - @endforeach -
    - @endif -
    - {{-- {{ $obstetric_history->comments }} --}} - @if (!empty($children)) -
      - @foreach ($children as $child) -
    1. {{ $child->health_condition }}
    2. - @endforeach -
    - @endif -
    -
    -
    - @endif -
    -
    -
    -
    -
    - {{ Form::label('obstetric_date', __('antenatal.date')) }} -
    - {{ Form::text('pregnancy_1_obstetric_date','',['class' => 'form-control obstetric_date','readonly','id'=>'datepicker-autoclose1']) }} - -
    -
    -
    -
    - {{ Form::label('gestation', __('antenatal.gestation')) }} -
    - -
    -
    -
    -
    - {{ Form::label('outcome', __('antenatal.outcome')) }} -
    - {{ Form::select('pregnancy_1_obstetric_outcome',$anc_outcomes,'',['class'=>'form-control col-sm-12', 'id'=>'pregnancy_1_obstetric_outcome', 'onchange'=>'abortion_outcome(this.id)']) }} -
    -
    - - -
    - - - -
    - -
    -
    -
    -
    -
    -
    -
    - {{ Form::label('previous_pph',__('antenatal.previous_pph')) }} -
    - {{ Form::radio('previous_pph', 1, false, ["required","id" => "show_pph_details_div"]) }} {{ __('antenatal.yes') }}    - {{ Form::radio('previous_pph', 0, false, ["required","id" => "hide_pph_details_div"]) }} {{ __('antenatal.no') }} - -
    - -
    - {{ Form::label('previous_scar',__('antenatal.previous_scar')) }} -
    - {{ Form::radio('previous_scar', 1, false, ["required","id" => "show_scar_no_div"]) }} {{ __('antenatal.yes') }}    - {{ Form::radio('previous_scar', 0, false, ["required","id" => "hide_scar_no_div"]) }} {{ __('antenatal.no') }} - -
    - -
    - -
    -
    - {{ Form::label('other_comments',__('antenatal.other_comments')) }} - {{ Form::textarea('other_comments','',['class'=>'form-control','rows' =>'4']) }} -
    -
    -
    -
    -

    {{ __('antenatal.this_pregnancy') }}

    -
    - {{--
    -
    -
    - {{ Form::label('height', __('antenatal.height')) }} - {{ Form::number('height','',['class'=>'form-control compulsory','id'=>'height', 'step'=> '.01', 'required']) }} -
    -
    - {{ Form::label('weight', __('antenatal.weight')) }} - {{ Form::number('weight','',['class'=>'form-control compulsory','id'=>'weight', 'step'=> '.01','required']) }} -
    -
    - {{ Form::label('bmi', __('antenatal.bmi')) }} - {{ Form::number('bmi','',['class'=>'form-control', 'id'=>'bmi', 'step'=> '.01', 'readonly'=>'true']) }} -
    -
    -
    --}} - -
    -
    - {{ Form::label('lmp', __('antenatal.lmp')) }} -
    - {{ Form::text('lmp','',['class' => 'form-control compulsory', 'required','readonly','id'=>'lmp']) }} - -
    -
    -
    -
    -
    - {{ Form::label('accuracy', __('antenatal.accuracy')) }} - {{ Form::select('accuracy',$accuracies,'',['class'=>'form-control col-sm-12 compulsory','required']) }} -
    -
    -
    -
    - {{ Form::label('edd', __('antenatal.edd')) }} -
    - {{ Form::text('edd','',['class' => 'form-control compulsory', 'required','readonly','id'=>'edd']) }} - -
    -
    -
    -
    -
    - {{ Form::label('woa_weeks',__('antenatal.woa_weeks')) }} -
    - {{ Form::hidden('woa_weeks','',['id'=>'woa_weeks']) }} -
    -
    -
    - -
    -
    -
    - {{ Form::label('complications',__('antenatal.complications')) }}
    - - - - - - - - -
    - {{ Form::checkbox('complications[]', 1, false, ['id'=>'complications_bleeding', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('complications[]', 2, false, ['id'=>'complications_excessive_vomiting', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('complications[]', 3, false, ['id'=>'complications_others', 'class'=>'form-check-input']) }} -

    - {{ Form::text('complications_others_input','',['class'=>'form-control', 'id'=>'complications_others_input', 'placeholder'=>'Specify']) }} -
    -
    -
    -
    - {{ Form::label('complications','Hospital Visits') }} - - - - - - -
    - {{ Form::checkbox('hospital_visits', 1, false, ['id'=>'hospital_visits', 'class'=>'form-check-input']) }} -

    -
    - {{ Form::text('hospital_visits_input','',['class'=>'form-control', 'id'=>'hospital_visits_input', 'placeholder'=>'Specify Reason for visit']) }} -
    -
    -
    -
    -
    - {{ Form::label('refferal', __('antenatal.referral_from')) }} - {{ Form::select('refferal',$referrals,'',['class'=>'form-control col-sm-12','id'=>'referral']) }} -
    - Add new Referral -
    -
    -
    -
    -
    -

    {{ __('antenatal.mother_history') }}

    -

    {{ __('antenatal.menstrual_history') }}

    -
    -
    -
    -
    -
    - {{ Form::label('cycle_time',__('antenatal.cycle_length')) }} - {{ Form::number('cycle_time','',['class'=>'form-control', 'step'=>'1']) }} -
    -
    -
    -
    -
    - {{ Form::label('menses_length',__('antenatal.menses_length')) }} - {{ Form::number('menses_length','',['class'=>'form-control', 'step'=>'1']) }} -
    -
    -
    -
    -
    - {{ Form::label('menses_amount',__('antenatal.menses_amount')) }} - {{ Form::select('menses_amount',['' => __('antenatal.select'), '1' => __('antenatal.heavy'), '2' => __('antenatal.normal')],'',['class'=>'form-control']) }} -
    - Add new Family Planning Method -
    -
    -
    -
    - {{ Form::label('family_planning',__('antenatal.family_planning')) }} - {{ Form::select('family_planning', $family_planning_methods, '', ['class'=>'form-control', 'id'=>'family_planning_methods']) }} -
    -
    - - -
    -
    -

    {{ __('antenatal.medical_history') }}

    -
    -
    - @if (!empty($previous_medical_conditions) && $previous_medical_conditions->count() > 0) - - - - - - @php - $condition_names = [ - 1=> __('antenatal.sti'), 2=> __('antenatal.cardiac_disease'), 3=> __('antenatal.asthma'), 4=> __('antenatal.sickel_cell'), 5=> __('antenatal.kidney_disease'), - 6=> __('antenatal.diabetes'), 7=> __('antenatal.hypertension'), 8=> __('antenatal.ted'), 9=> __('antenatal.epilepsy'), 10=> __('antenatal.tb'),11=> __('antenatal.polio'), - 12=> __('antenatal.anaemia'), 13=> __('antenatal.herpes'), 14=> __('antenatal.hiv'), 15=> __('antenatal.oral_thrush'), 16=> __('antenatal.l_glands'), - 17=> __('antenatal.herpes_simplex'), 18=> __('antenatal.dermatitis'), 19=> __('antenatal.others') - ]; - $conditions = explode(',', $previous_medical_conditions->medical_presentations); - @endphp - - - - -
    {{ __('antenatal.previous_medical_conditions') }}
    -
      - @foreach ($conditions as $previous_medical_condition) -
    • {{ $condition_names[$previous_medical_condition]?? '' }}
    • - @endforeach -
    -
    - @endif - {{ Form::label('medical_presentations',__('antenatal.medical_presentations')) }}
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - {{ Form::checkbox('medical_presentations[]', 1, false, ['id'=>'medical_presentations_sti', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('medical_presentations[]', 2, false, ['id'=>'medical_presentations_cardiac_disease', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('medical_presentations[]', 3, false, ['id'=>'medical_presentations_asthma', 'class'=>'form-check-input']) }} - -
    - {{ Form::checkbox('medical_presentations[]', 4, false, ['id'=>'medical_presentations_sickel_cell', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('medical_presentations[]', 5, false, ['id'=>'medical_presentations_kidney_disease', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('medical_presentations[]', 6, false, ['id'=>'medical_presentations_diabetes', 'class'=>'form-check-input']) }} - -
    - {{ Form::checkbox('medical_presentations[]', 7, false, ['id'=>'medical_presentations_hypertension', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('medical_presentations[]', 8, false, ['id'=>'medical_presentations_ted', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('medical_presentations[]', 9, false, ['id'=>'medical_presentations_epilepsy', 'class'=>'form-check-input']) }} - -
    - {{ Form::checkbox('medical_presentations[]', 10, false, ['id'=>'medical_presentations_tb', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('medical_presentations[]', 11, false, ['id'=>'medical_presentations_polio', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('medical_presentations[]', 12, false, ['id'=>'medical_presentations_anaemia', 'class'=>'form-check-input']) }} - -
    - {{ Form::checkbox('medical_presentations[]', 13, false, ['id'=>'medical_presentations_herpes', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('medical_presentations[]', 14, false, ['id'=>'medical_presentations_hiv', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('medical_presentations[]', 15, false, ['id'=>'medical_presentations_oral_thrush', 'class'=>'form-check-input']) }} - -
    - {{ Form::checkbox('medical_presentations[]', 16, false, ['id'=>'medical_presentations_l_glands', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('medical_presentations[]', 17, false, ['id'=>'medical_presentations_herpes_simplex', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('medical_presentations[]', 18, false, ['id'=>'medical_presentations_dermatitis', 'class'=>'form-check-input']) }} - -
    - {{ Form::checkbox('medical_presentations[]', 19, false, ['id'=>'medical_presentations_others', 'class'=>'form-check-input']) }} -

    - {{ Form::text('medical_presentations_others_input','',['class'=>'form-control compulsory', 'id'=>'medical_presentations_others_input', 'placeholder'=>'Specify', 'style'=>'display:none']) }} -
    -
    -
    -
    - @if ($chronic_results->count() > 0) - - - - - - - - - -
    {{ __('prescriptions.chronic_drugs') }}
    -
      - @foreach ($chronic_results as $chronic_result) -
    • {{ ucwords($chronic_result->name ?? '') }}
    • - @endforeach -
    -
    - @endif - {{ Form::label('any_medications',__('antenatal.any_medications')) }}
    - - - - - - - -
    -
    - {{ Form::checkbox('any_medications[]', 1, false, ['id'=>'complications_bleeding', 'class'=>'form-check-input']) }} - -
    - {{ Form::checkbox('any_medications[]', 2, false, ['id'=>'any_medications_others', 'class'=>'form-check-input']) }} -

    - {{ Form::text('any_medications_others_input','',['class'=>'form-control', 'id'=>'any_medications_others_input', 'placeholder'=>'Specify']) }} -
    -
    - -
    -
    -
    -
    -

    {{ __('antenatal.surgical_history') }}

    -
    -
    - @if ($previous_surgeries->count() > 0) -
    -
    -
    - - - - - - - - - - - @foreach ($previous_surgeries as $previous_surgery) - - - - - - - @endforeach - -
    DateSurgeryDiagnosesPerformed By
    {{ streamline_date_time($previous_surgery->created_at) }}{{ !empty($previous_surgery->procedure_id)? get_name($previous_surgery->procedure_id, 'id', 'name', 'procedures') : "N/A"; }} - @php - $list[] =$diagnoses[$previous_surgery->primary_diagnosis]; - $other_diagnoses_array = !empty($previous_surgery->other_diagnoses)? unserialize($previous_surgery->other_diagnoses):[]; - foreach($other_diagnoses_array as $diagnosis) if(!empty($diagnosis)) $list[]=$diagnoses[$diagnosis]; - @endphp -
      - @foreach ($list as $value) -
    • {{ $value }}
    • - @endforeach -
    - -
    {{ get_full_name($previous_surgery->created_by, 'id', 'first_name', 'last_name', 'users'); }}
    -
    -
    -
    - @endif -
    -
    -

    {{ __('antenatal.operations_other_facilities') }}:

    -
    -
    -
    -
    - - - - - - - - - - - - - - - -
    {{ __('antenatal.uterus_operations') }}{{ __('antenatal.date') }}{{ __('antenatal.facility_name') }}
    - {{ Form::text('uterus_operations_name[]', '', ['class'=>'form-control uterus_operations', 'id'=>'uterus_operations_name_1']) }} - -
    - {{ Form::text('uterus_operations_date[]','',['class' => 'form-control fractures', 'id'=>'uterus_operations_date_1', 'placeholder'=>'When?']) }} -
    -
    - {{ Form::text('uterus_operations_facility_name[]', '', ['class' => 'form-control compulsory', 'id' => 'uterus_operations_facility_name_1']) }} -
    - {{ __('antenatal.add_uterus_operations_row') }} -
    -
    - - - - - - - - - - - - - - - -
    Other {{ __('antenatal.operations') }}{{ __('antenatal.date') }}{{ __('antenatal.facility_name') }}
    - {{ Form::text('other_operations_name[]', '', ['class' => 'form-control compulsory', 'id' => 'other_operations_name_1']) }} - -
    - {{ Form::text('other_operations_date[]','',['class' => 'form-control fractures', 'id'=>'other_operations_date_1', 'placeholder'=>'When?']) }} -
    -
    - {{ Form::text('other_operations_facility_name[]', '', ['class' => 'form-control compulsory', 'id' => 'other_operations_facility_name_1']) }} -
    - {{ __('antenatal.add_other_operations_row') }} -
    -

    -
    -
    - {{ Form::label('surgical_history',__('antenatal.blood_transfusion')) }} - - - - - - -
    - {{ Form::checkbox('surgical_history[]', 2, false, ['id'=>'surgical_history_blood_transfusion', 'class'=>'form-check-input', 'onchange' => 'show_and_hide(this.id)']) }} - - {{ Form::text('surgical_history_blood_transfusion_input','',['class'=>'form-control', 'id'=>'surgical_history_blood_transfusion_input', 'placeholder'=>'Why?', 'style'=>'margin-top:10px;']) }} -
    -
    -
    -
    - {{ Form::label('fractures',__('antenatal.fractures')) }} - - - - - - - - -
    - {{ Form::checkbox('fractures[]', 1, false, ['id'=>'fractures_pelvis', 'class'=>'form-check-input', 'onchange' => 'fractures_show_and_hide(this.id)']) }} - - - - {{ Form::checkbox('fractures[]', 2, false, ['id'=>'fractures_spine', 'class'=>'form-check-input', 'onchange' => 'fractures_show_and_hide(this.id)']) }} - - - - {{ Form::checkbox('fractures[]', 3, false, ['id'=>'fractures_femur', 'class'=>'form-check-input', 'onchange' => 'fractures_show_and_hide(this.id)']) }} - - -
    -
    -
    -
    -
    - {{ Form::label('family_history',__('antenatal.family_history')) }} - - - - - - - - - - - - - - - -
    - {{ Form::checkbox('family_history[]', 1, false, ['id'=>'family_history_diabetes', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('family_history[]', 2, false, ['id'=>'family_history_sickel_cell', 'class'=>'form-check-input']) }} - -
    - {{ Form::checkbox('family_history[]', 3, false, ['id'=>'family_history_hypertension', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('family_history[]', 4, false, ['id'=>'family_history_twins', 'class'=>'form-check-input']) }} - -
    - {{ Form::checkbox('family_history[]', 6, false, ['id'=>'family_history_mental_illness', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('family_history[]', 5, false, ['id'=>'family_history_others', 'class'=>'form-check-input']) }} - -
    -
    -
    - {{ Form::label('sgbv',__('antenatal.sgbv')) }} - - - - - - -
    - {{ Form::checkbox('sgbv', 1, false, ['id'=>'sgbv_sgbv_risk', 'class'=>'form-check-input', 'multiple'=>'multiple', 'onchange' => 'show_and_hide(this.id)']) }} -

    - {{ Form::select('sgbv_sgbv_risk_input[]', $gender_based_violence, '', ['class'=>'form-control', 'id'=>'sgbv_sgbv_risk_input','multiple']) }} -
    - -
    -
    -
    -
    - {{ Form::label('husband_health', __('antenatal.husband_health')) }} -
    - {{ Form::text('husband_health','',['class' =>'form-control','id'=>'husband_health']) }} -
    -
    -
    -
    -
    -
    -
    -
    - {{ Form::label('blood_group',__('antenatal.blood_group')) }} - {{ Form::select('blood_group',$blood_groups,'',['class'=>'form-control col-sm-12']) }} -
    - -
    - {{ __('antenatal.blood_transfusion') }} -
    - - - - - - - - - - - - - -
    {{ __('antenatal.date') }}{{ __('antenatal.number_of_units') }}{{ __('antenatal.comments') }}
    -
    -
    - {{ Form::text('transfusion_date[]','',['class' => 'form-control transfusion_date','readonly']) }} - -
    -
    -
    -
    - {{ __('consultations.add_row') }} -
    -
    - -
    -
    -
    -

    - {{ __('antenatal.vdrl_status') }}

    - {{ __('antenatal.hiv_status') }} -
    -
    -
    -
    -
    - {{ Form::label('result',__('antenatal.result')) }} -
    - {{ Form::select('hiv_result',$hiv_statuses,'',['class'=>'form-control col-sm-12','id'=>'hiv_result']) }} -
    -
    -
    -
    - {{ Form::label('date',__('antenatal.date')) }} -
    - {{ Form::text('vdrl_date','',['class' => 'form-control','readonly','id'=>'datepicker-autoclose3']) }} - -
    -
    -
    - {{ Form::text('hiv_date','',['class' => 'form-control','readonly','id'=>'datepicker-autoclose4']) }} - -
    -
    -
    -
    -
    -
    - {{ Form::label('location',__('antenatal.location')) }} -
    - -
    -
    -
    -
    -
    - - -
    -
    -
    - -
    -
    -
    -

    {{ __('consultations.ordered_investigations') }}

    -
    - - - - - - - - - - - - - @if(count($investigation_results) > 0) - - @if(check_if_episode_is_a_followup($episode->id)) - - - - @endif - - @foreach($investigation_results as $result) - @php - $investigation_ids_array = explode(',', $result->investigation_id); - - // authentication of investigations - $per_investigation_array = explode(',', $result->per_investigation); - - $comments = explode(",", $result->comment); - $results_values = explode(",", $result->value); - @endphp - - @for($i = 0 ; $i < count($investigation_ids_array) ; $i++) - @php - $investigation = \Streamline\Models\Investigation::withTrashed()->find($investigation_ids_array[$i]); - @endphp - @if($investigation) - @if($investigation->type == 1 && isset($results_values[$i])) - - - - - @php - $specialised_results = \Streamline\Models\InvestigationSpecialisedResult::where('id', $results_values[$i])->first(); - - if($specialised_results){ - $variable_id_array = explode(',', $specialised_results->specialised_variable_id); - - $variable_value_array = explode(',', $specialised_results->value); - - $variable_comment_array = explode(',', $specialised_results->comment); - - $variable_normal_range_array = explode(',', $specialised_results->normal_ranges); - } - @endphp - @if($specialised_results) - @for($x = 0; $x < count($variable_id_array); $x++) - - - - - - - - @endfor - @endif - - @elseif($investigation->slug == 'echo' && $results_values[$i] == "") - - - - - @else - - - - - - - - @endif - @endif - @endfor - - - - @endforeach - @elseif(count($ordered_investigations) > 0) - - @if(check_if_episode_is_a_followup($episode->id)) - - - - @endif - - @foreach($ordered_investigations as $investigation) - @php $investigation_ids_array = explode(',', $investigation->investigation_id); @endphp - @for($i = 0 ; $i < count($investigation_ids_array) ; $i++) - @php - $investigation = \Streamline\Models\Investigation::withTrashed()->find($investigation_ids_array[$i]); - @endphp - - @if($investigation) - @if($investigation->slug == 'echo') - - - - - @else - - - - - - - - @endif - @endif - @endfor - @endforeach - @else - - - - @endif - -
    {{ __('investigations.investigation_name') }}{{ __('investigations.results') }}{{ __('investigations.normal_ranges') }}{{ __('investigations.unit') }}{{ __('investigations.comment') }}
    {{ __('consultations.investigation_for_review') }} ({{ streamline_date($episode->created_at)}})
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif -
    {{ get_name($variable_id_array[$x], 'id', 'name', 'investigation_specialised_variables') }}{{ $variable_value_array[$x] }} - @if(get_name($variable_id_array[$x], 'id', 'range_type', 'investigation_specialised_variables') == 1) - - {{ get_dynamic_normal_range_specialized($variable_id_array[$x], get_patient_age_group($patient_id), get_name($patient_id, 'id', 'gender', 'patients')) }} - @else - {{ get_name($variable_id_array[$x], 'id', 'normal_ranges', 'investigation_specialised_variables') }} - @endif - - @if(get_name(get_name($variable_id_array[$x], 'id', 'units', 'investigation_specialised_variables'), 'id', 'name', 'unit_of_measure') != "N/A") - {{ get_name(get_name($variable_id_array[$x], 'id', 'units', 'investigation_specialised_variables'), 'id', 'name', 'unit_of_measure') }} - @endif - {{ $variable_comment_array[$x] }}
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - - View Results - -
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - @if($per_investigation_array[$i] == 0) - {{ __("consultations.pending") }} - @else - {{ isset($results_values[$i]) ? $results_values[$i] : "" }} - @endif - - @if($investigation->range_type == 1) - {{ get_dynamic_normal_range($investigation->id, get_patient_age_group($patient_id), get_name($patient_id, 'id', 'gender', 'patients')) }} - @else - {{ $investigation->normal_ranges }} - @endif - - {{ get_name(get_name($investigation->id, 'id', 'units', 'investigations'),'id', 'name', 'unit_of_measure') }} - - {!! $per_investigation_array[$i] == 0 ? '{{ __("consultations.pending") }}' : $comments[$i] !!} -
    {{ __('consultations.authenticated_by') }}{{ get_full_name($result->authenticated_by, 'id', 'first_name', 'last_name', 'users')}}
    {{ __('consultations.investigation_for_review') }} ({{ streamline_date($episode->created_at)}})
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - @if(($cardio_echo)) - - View results - - @else - Pending - @endif -
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - {{ __('consultations.pending') }} - @if($investigation->range_type == 1) - {{ get_dynamic_normal_range($investigation->id, get_patient_age_group($patient_id), get_name($patient_id, 'id', 'gender', 'patients')) }} - @else - {{ $investigation->normal_ranges }} - @endif - - {{ $investigation->comments }} -
    {{ __('consultations.investigation_not_ordered') }} {{ check_if_episode_is_a_followup($episode->id) ? __('consultations.during_current_review') : '' }}.
    -
    -
    -
    -

    {{ __('consultations.ordered_sundries') }}

    -
    - - - - - - - - - - @if(count($ordered_sundries) > 0) - - @if(check_if_episode_is_a_followup($episode->id)) - - - - @endif - - @foreach($ordered_sundries as $ordered_sundry) - @php - $sundry_ids = explode(",", $ordered_sundry->sundries_id); - $sundry_quantity = explode(",", $ordered_sundry->quantity); - @endphp - - @for($i = 0; $i < count($sundry_ids); $i++) - - - - - @endfor - @endforeach - @else - - - - @endif - - -
    {{ __('consultations.SUNDRY') }}{{ __('consultations.QUANTITY') }}
    {{ __('consultations.sundries_for_episode_review') }} ({{ streamline_date($episode->created_at)}})
    {{ get_name($sundry_ids[$i], 'id', 'name', 'sundries') }} {!! $sundry_quantity[$i] !!}
    {{ __('consultations.no_sundries_ordered') }} {{ check_if_episode_is_a_followup($episode->id) ? __('consultations.during_current_review') : '' }}.
    -
    -
    -
    -
    - -
    -
    -
    -

    {{ __('consultations.treatment_given') }}

    -
    - - - - - - - - - - - - - @if(count($treatments) > 0) - @if(check_if_episode_is_a_followup($episode->id)) - - - - @endif - - @foreach($treatments as $treatment) - @php - $drugs_array = explode(",", $treatment->drugs); - $dosage_array = explode(",", $treatment->doses); - $dosage2_array = explode(",", $treatment->dose2); - $frequencies_array = explode(",", $treatment->frequencies); - $duration_array = explode(",", $treatment->durations); - $quantity_dispensed_array = explode(",", $treatment->quantities_dispensed); - $instructions_array = explode(",", $treatment->instruction); - $purchased_elsewhere_array = is_null($treatment->purchased_elsewhere) ? [] : explode(",", $treatment->purchased_elsewhere); - @endphp - @for($x = 0; $x < count($drugs_array); $x++) - @php - $frequency_name = get_name($frequencies_array[$x], 'id', 'name', 'dosage_frequencies'); - $unit = get_name($drugs_array[$x], 'id', 'name', 'drug_units'); - $unit = $unit=="N/A"?"":$unit; - $drug_unit = "" . $unit . ""; - $dose2 = (empty($dosage2_array[$x])) ? "" : " | " . $dosage2_array[$x] . $drug_unit; - @endphp - - - - - - @if(isset($purchased_elsewhere_array[$x]) && $purchased_elsewhere_array[$x] == 1) - - @else - @if($treatment->dispense_status == 1) - - @else - - @endif - @endif - - - @endfor - @endforeach - @else - - - - @endif - - -
    {{ __('consultations.DRUG_NAME') }}{{ __('consultations.DOSAGE') }}{{ __('consultations.DURATION') }}{{ __('consultations.QUANTITY') }}{{ __('consultations.STATUS') }}{{ __('consultations.INSTRUCTION') }}
    {{ __('consultations.treatment_for_episode_review') }} ({{ streamline_date($episode->created_at)}})
    - {{ get_name($drugs_array[$x], 'id', "name", 'drugs') }} - - @if($treatment->is_treatment_progressive != 0) - (Progressive Treatment) - @endif - {{ $dosage_array[$x] }} {!! $drug_unit !!} {{ $dose2 }}    {{ $frequency_name }}{{ $duration_array[$x] }}{{ $quantity_dispensed_array[$x] }}Purchased From Elsewhere{{ __('consultations.dispensed') }}{{ __('consultations.pending') }} - {{ isset($instructions_array[$x]) ? trim($instructions_array[$x]) : 'N/A' }} -
    {{ __('consultations.no_prescription_made_yet') }} {{ check_if_episode_is_a_followup($episode->id) ? 'during current review' : '' }}
    -
    -
    -
    -

    {{ __('consultations.ordered_procedures') }}

    -
    - - - - - - - - - - - @if(count($ordered_procedures) > 0) - @php $count = 1; $procedure_performed_counter = 0; @endphp - - @if(check_if_episode_is_a_followup($episode->id)) - - - - @endif - - @foreach($ordered_procedures as $ordered_procedure) - @php - $procedure_id = explode(",", $ordered_procedure->procedure_id); - $procedure_performed_array = explode(",", $ordered_procedure->performed); - $procedure_performed_id_array = explode(",", $ordered_procedure->performed_id); - @endphp - - @for($i = 0; $i < count($procedure_id); $i++) - - - - - - @endfor - @endforeach - @else - - - - @endif - - -
    {{ __('consultations.PROCEDURE') }}{{ __('consultations.STATUS') }}{{ __('consultations.PERFORMED') }}
    {{ __('consultations.procedures_for_episode_review') }} ({{ streamline_date($episode->created_at)}})
    - {{ get_name($procedure_id[$i], 'id', 'name', 'procedures') }} - - {!! $procedure_performed_array[$i] == 1 ? ''.__("consultations.performed").'' : ''. __("consultations.pending").'' !!} - - @if($procedure_performed_array[$i] == 1) - By {{ get_full_name(get_name($procedure_performed_id_array[$i], 'id', 'performed_by', 'staff_performed_services'), 'id', 'first_name', 'last_name', 'users') }} - @endif -
    {{ __('consultations.no_procedure_has_been_ordered') }} {{ check_if_episode_is_a_followup($episode->id) ? __('consultations.during_current_review') : '' }}.
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    - {{ Form::hidden('pregnancy_number', 0, ['id'=>'pregnancy_number']) }} - {{ Form::button(__('consultations.Investigation'),['type'=>'submit','class'=>'btn btn-info btn-sm submit-btn','name'=>'submit-btn','value'=>'investigation']) }} - {{ Form::button(__('consultations.Treatment'),['type'=>'submit','class'=>'btn btn-default btn-sm submit-btn','name'=>'submit-btn','value'=>'treatment']) }} - {{ Form::button(__('consultations.Procedures'),['type'=>'submit','class'=>'btn btn-inverse btn-sm submit-btn','name'=>'submit-btn','value'=>'procedures']) }} - {{ Form::button(__('consultations.Sundries'),['type'=>'submit','class'=>'btn btn-primary btn-sm submit-btn','name'=>'submit-btn','value'=>'sundries']) }} -
    -
    -
    - {{ Form::label('comments',__('antenatal.comments')) }} - {{ Form::textarea('comments','',['class'=>'form-control','rows'=>'4']) }} -
    -
    -
    - {{ Form::button(__('antenatal.update_and_complete'),['type'=>'submit','class'=>'btn btn-success btn-md submit-btn','name'=>'submit-btn','value'=>'complete']) }}

    - {{ Form::button(__('consultations.save_consultation'),['type'=>'submit','class'=>'btn btn-default btn-md submit-btn','name'=>'submit-btn','value'=>'save_consultation']) }} -
    -
    -
    -
    -
    -
    -
    -{{ Form::close() }} - - - - - - - - - - - - - - - - - - -@endsection - -@push('scripts') - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/edit.blade.php b/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/edit.blade.php deleted file mode 100755 index 8e082e35..00000000 --- a/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/edit.blade.php +++ /dev/null @@ -1,2776 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('antenatal.edit_pregnancy_registration') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    -@php - $episode_created_at = Carbon\Carbon::parse($episode->created_at); - $episode_has_grand_parent_episode = false; -@endphp - -@if(check_if_episode_is_a_followup($episode->id)) - @php - $parent_episode_details = \Streamline\Models\PatientEpisode::find($episode->parent_episode_id); - $parent_consultations = \Streamline\Models\Consultation::where(['episode_id' => $parent_episode_details->id])->get(); - $parent_consultation_details = count($parent_consultations) > 0 ? $parent_consultations->first() : null; - $parent_triage_details = \Streamline\Models\Triage::where(['id' => $parent_episode_details->triage_id])->first(); - - if(check_if_episode_is_a_followup($parent_episode_details->id)){ - $episode_has_grand_parent_episode = true; - - $grand_parent_episode_details = \Streamline\Models\PatientEpisode::find($parent_episode_details->parent_episode_id); - - $grand_parent_episode_treatments = \Streamline\Models\Treatment::where(['patient_id' => $patient_id, 'episode_id' => $grand_parent_episode_details->id, 'tta' => 0])->get(); - - $grand_parent_episode_ordered_procedures = \Streamline\Models\OrderedProcedure::where(['patient_id' => $patient_id, 'episode_id' => $grand_parent_episode_details->id])->get(); - - $grand_parent_episode_ordered_investigations = \Streamline\Models\OrderedInvestigation::where(['patient_id' => $patient_id, 'episode_id' => $grand_parent_episode_details->id])->get(); - - $grand_parent_episode_ordered_sundries = \Streamline\Models\OrderedSundry::where(['patient_id' => $patient_id, 'episode_id' => $grand_parent_episode_details->id])->get(); - - $grand_parent_episode_investigation_results = \Streamline\Models\InvestigationResults::where(['patient_id' => $patient_id, 'episode_id' => $grand_parent_episode_details->id])->get(); - } - @endphp -@endif - -
    -
    -
    -
    - -
    -
    -
    - {{ __('consultations.triage_grade') }} : - @if($triage) - @switch($triage->severe_grade) - @case (1) -
    {{ __('consultations.green') }}
    - @break - @case (2) -
    {{ __('consultations.yellow') }}
    - @break - @case (3) -
    {{ __('consultations.red') }}
    - @break - @default - {{ __('consultations.triage_grade_not_determined') }} - @endswitch - @endif -
    -
    - {{ __('consultations.symptoms') }} : - @if($triage) - @php $symptoms_array = explode(",", $triage->symptoms); @endphp - @php $symptoms_duration_array = explode(",", $triage->symptom_duration); @endphp - -
    -
    - - - - - - - - - @php $counter = 0; @endphp - @for($i = 0; $i < count($symptoms_array); $i++) - - - - - @endfor - -
    {{ __('consultations.symptom') }}{{ __('consultations.duration') }}
    {{ isset($symptoms_array[$i]) ? get_name($symptoms_array[$i], 'id', 'name', 'symptoms') : "" }}{{ $symptoms_duration_array[$i] ?? "" }}
    -
    -
    - @else - {{ __('consultations.no_symptom_recorded') }} - @endif -
    - -
    - - @if($triage) - @php - $observations_array = explode(',', $triage->observations); //i.e[temp=44,height=2] - - $parent_observation_array = isset($parent_triage_details) ? explode(',', $parent_triage_details->observations): []; - @endphp -
    -
    - - - - - - @if(check_if_episode_is_a_followup($episode->id)) - - @endif - - - - @php $counter = 0; @endphp - @foreach($observations_array as $observation) - @php - $item_array = explode('=', $observation); //i.e[temp,44] - $counter++; - @endphp - @if($counter < 9) - - - - - @if(check_if_episode_is_a_followup($episode->id)) - @foreach($parent_observation_array as $parent_observation) - @php - $parent_item_array = isset($parent_triage_details) ? explode('=', $parent_observation) : []; - @endphp - @if($item_array[0] == $parent_item_array[0]) - - @endif - @endforeach - @endif - - @endif - @endforeach - -
    {{ __('consultations.observation') }}{{ __('consultations.value') }} - {{ __('consultations.previous_value') }} -
    {{ $item_array[0] }}{{ $item_array[1] }} - {{ $parent_item_array[1] }} -
    -
    - -
    - - - - - - @if(check_if_episode_is_a_followup($episode->id)) - - @endif - - - - @php $counter=0; @endphp - @foreach($observations_array as $observation) - @php - $item_array = explode('=', $observation); //i.e[temp,44] - $counter++; - @endphp - @if($counter >= 9) - - - - - @if(check_if_episode_is_a_followup($episode->id)) - @foreach($parent_observation_array as $parent_observation) - @php - $parent_item_array = isset($parent_triage_details) ? explode('=', $parent_observation) : []; - @endphp - @if($item_array[0] == $parent_item_array[0]) - - @endif - @endforeach - @endif - - @endif - @endforeach - -
    {{ __('consultations.observation') }}{{ __('consultations.value') }} - {{ __('consultations.previous_value') }} -
    {{ isset($item_array[0]) ? $item_array[0] : "" }}{{ isset($item_array[1]) ? $item_array[1] : "" }} - {{ $parent_item_array[1] }} -
    -
    -
    - {{ __('consultations.comment') }}: {{ !is_null($triage) ? $triage->comments : "" }}
    - @else - {{ __('consultations.no_observations_recorded') }}
    - @endif - - {{ __('consultations.triage_done_by') }} {!! isset($triage) ? ''.\Streamline\Models\User::withTrashed()->find($triage->created_by)->first_name. " ".\Streamline\Models\User::withTrashed()->find($triage->created_by)->last_name.' on '.streamline_date_time($triage->created_at).'' : "" !!} -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    - @if(count($documents) > 0) - @foreach($documents as $document) -
  • - {{ is_null($document->title) ? substr($document->description, 0, 5) : $document->title }} ({{ streamline_date_time($document->created_at) }}) -
  • - @endforeach - @else - {{ __('consultations.no_patient_documents_available') }} - @endif - -
    - - {{ __('consultations.add_new') }} -
    -
    -
    -
    - -
    -
    - -
    -
    - @php - $used_services = \Streamline\Models\OrderedService::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $service_performed_counter = 0; - $obs_history_counter = 1; - @endphp - - @if(count($used_services) > 0) -
    - - - - - - - - - - - @foreach($used_services as $service) - @php - $service_ids = explode(",", $service->service_id); - $service_quantity = explode(",", $service->quantity); - $service_performed = explode(",", $service->performed); - $service_performed_id_array = explode(",", $service->performed_id); - @endphp - - @for($i = 0; $i < count($service_ids); $i++) - - - - - - - @endfor - @endforeach - -
    {{ __('consultations.service') }}{{ __('consultations.quantity') }}{{ __('consultations.payment_status') }}Performed By
    - {{ get_name($service_ids[$i], "id", "name", "services")}} - - {{ $service_quantity[$i] }} - - {!! $service->payment_status == 0 ? "Not Paid" : "Paid" !!} - - @if($service_performed[$i] == 1) - By {{ get_full_name(get_name($service_performed_id_array[$i], 'id', 'performed_by', 'staff_performed_services'), 'id', 'first_name', 'last_name', 'users') }} - @endif -
    -
    - @else - {{ __('consultations.no_used_services') }} - @endif -
    -
    -
    -
    - -
    -
    - -@if ($previous_consultations->count() > 0) -
    -
    -
    -

    {{ __('antenatal.previous_consultations') }}


    -
    - - - - - - - - - - - - - @foreach ($previous_consultations as $previous_consultation) - - - - - - - - - @endforeach - -
    DateClinicPrimary DiagnosisOther DiagnosesConsultation By
    {{ streamline_date_time($previous_consultation->created_at) }}{{ isset($previous_consultation->clinic_id)? get_name($previous_consultation->clinic_id, 'id', 'name', 'clinics') : "N/A"; }}{{ get_name($previous_consultation->primary_diagnosis, 'id', 'name', 'diagnoses') }} - @php - $list = []; - $other_diagnoses_array = !empty($previous_consultation->other_diagnoses)? unserialize($previous_consultation->other_diagnoses):[]; - foreach($other_diagnoses_array as $diagnosis) if(!empty($diagnosis)) $list[]=$diagnoses[$diagnosis]; - $other_diagnoses = !empty($list)? implode(', ', $list):''; - echo $other_diagnoses; - @endphp - {{ get_full_name($previous_consultation->created_by, 'id', 'first_name', 'last_name', 'users'); }} {{ __('patients.details') }}
    -
    -
    -
    -
    -@endif - -
    -
    -
    -

    {{ __('antenatal.previously_registered_pregnancies') }}


    -
    - - - - - - - - - - - - - - - @php $count = 1; @endphp - @if(count($last_five_pregnancies) > 0) - @foreach($last_five_pregnancies as $pregnancy) - - - - - - - - - - - @php $count++; @endphp - @endforeach - @else - - @endif - -
    Pregnancy registered onNumber of VisitsLMP DateE.D.DStatusRegistered ByActions
    {{ $count }}{{ streamline_date_time_short($pregnancy->created_at) }} - @php - $visits = \Streamline\Models\AnteNatalClinicFollowup::where(['patient_id' => $pregnancy->patient_id, 'episode_id' => $pregnancy->episode_id])->pluck('id'); - foreach ($visits as $key => $visit) { - $visit_ids[] = $visit; - } - @endphp - @if ($visits->count() > 0) - {{ Form::open(['method' => 'POST', 'route' => 'anc_visits.previous_visits', 'target' => "_blank", 'id'=>'previous_visits' ]) }} - - {{ commas($visits->count()) }} - {{ Form::close() }} - @else - 0 - @endif - {{ streamline_date($pregnancy->lmp) }}{{ streamline_date($pregnancy->edd) }}{{ !empty($pregnancy->completed)? 'Completed':'Unknown' }}{{ get_full_name($pregnancy->created_by, 'id', 'first_name','last_name', 'users') }} - Details - {{-- Edit --}} -
    {{ __('antenatal.no_previously_registered_pregnancies') }}
    -
    -
    -
    -
    -{{ Form::model($existing_anc_registration, ['route' => ['ante_natal_clinic.update',$existing_anc_registration->id],'method'=>'PUT']) }} -
    - @include('flash::message') - {{ __('antenatal.edit_anc_registration') }}

    -
    -
    - {{ Form::label('gravida',__('antenatal.gravida')) }} - {{ Form::number('gravida', $existing_anc_registration->gravida, ['class'=>'form-control compulsory', 'required']) }} -
    -
    - {{ Form::label('para',__('antenatal.para')) }} - {{ Form::number('para', $existing_anc_registration->para ,['class'=>'form-control compulsory', 'required']) }} -
    -
    - {{ Form::label('abortion',__('antenatal.abortions')) }} - {{ Form::number('abortion', $existing_anc_registration->abortion, ['class'=>'form-control compulsory','required']) }} -
    -
    - {{ Form::label('ectopic_pregnancies',__('maternity.ectopic_pregnancies')) }} - {{ Form::number('ectopic_pregnancies',$existing_anc_registration->ectopic_pregnancies,['class'=>'form-control compulsory','required', 'id'=>'ectopic_pregnancies']) }} -
    -
    - {{ Form::label('postpartum',__('antenatal.postpartum')) }} -
    - {{ Form::radio('postpartum', 1, $existing_anc_registration->postpartum == 1 ? true :false, ["required"]) }} {{ __('antenatal.yes') }}    - {{ Form::radio('postpartum', 0, $existing_anc_registration->postpartum == 0 ? true :false, ["required"]) }} {{ __('antenatal.no') }} -
    -
    -
    -
    - {{ __('antenatal.past_obstetric_history') }} -
    - @if ($obstetric_history_details->count() > 0) - @foreach ($obstetric_history_details as $t => $obstetric_history) - @php - $children =[]; - if(!empty($obstetric_history->children)) $children = json_decode($obstetric_history->children); - @endphp - {{ Form::hidden('pregnancy_'.$obs_history_counter.'_id', $obstetric_history->id, ['id'=>'pregnancy_'.$obs_history_counter.'_id']) }} - {{ Form::hidden('delete_pregnancy_'.$obs_history_counter.'_id', '', ['id'=>'delete_pregnancy_'.$obs_history_counter.'_id']) }} -
    -
    -
    - {{ Form::label('pregnancy_'.$obs_history_counter.'_obstetric_date', __('antenatal.date')) }} -
    - {{ Form::text('pregnancy_'.$obs_history_counter.'_obstetric_date', Carbon\Carbon::parse($obstetric_history->obstetric_date)->format('d/m/Y'),['class' => 'form-control obstetric_date','readonly','id'=>'datepicker-autoclose1']) }} - -
    -
    -
    -
    - {{ Form::label('pregnancy_'.$obs_history_counter.'_gestation', __('antenatal.gestation')) }} -
    - gestation }}> -
    -
    -
    -
    - {{ Form::label('pregnancy_'.$obs_history_counter.'_obstetric_outcome', __('antenatal.outcome')) }} -
    - {{ Form::select('pregnancy_'.$obs_history_counter.'_obstetric_outcome',$anc_outcomes,$obstetric_history->outcome,['class'=>'form-control col-sm-12', 'id'=>'pregnancy_'.$obs_history_counter.'_obstetric_outcome', 'onchange'=>'abortion_outcome(this.id)']) }} -
    -
    - @if (!empty($obstetric_history->stillbirth_type)) -
    - {{ Form::label('pregnancy_'.$obs_history_counter.'_stillbirth_type', __('antenatal.stillbirth_type')) }} -
    - {{ Form::select('pregnancy_'.$obs_history_counter.'_stillbirth_type',['' => __('antenatal.select'), '1' => __('antenatal.antepartum'), '2' => __('antenatal.intrapartum')],$obstetric_history->stillbirth_type, ['class'=>'form-control col-sm-12', 'id'=> 'pregnancy_'.$obs_history_counter.'_stillbirth_type']) }} -
    -
    -
    - @else - - @endif -
    - @php - $display = ''; - if(empty($children)) $display = 'display:none;'; - @endphp -
    - {{ Form::label('pregnancy_'.$obs_history_counter.'_delivery_type', __('antenatal.delivery_type')) }} -
    - {{ Form::select('pregnancy_'.$obs_history_counter.'_delivery_type',['' => __('antenatal.select'), '1' => __('antenatal.vaginal_delivery'), '2' => __('antenatal.vacuum_delivery'), '3' => __('antenatal.forceps_delivery'), '4' => __('antenatal.c_section'),'5' => __('antenatal.vbac')], $obstetric_history->delivery_type, ['class'=>'form-control col-sm-12', 'id'=>'pregnancy_'.$obs_history_counter.'_delivery_type']) }} -
    -
    -
    -
    - {{ Form::label('pregnancy_'.$obs_history_counter.'_pregnancy_complication', __('antenatal.pregnancy_complication')) }} -
    - {{ Form::select('pregnancy_'.$obs_history_counter.'_pregnancy_complication',['' => __('antenatal.select'), '1' => __('antenatal.retained_placenta'), '2' => __('antenatal.eclampsia'), '3' => __('antenatal.pph')],'',['class'=>'form-control col-sm-12', 'id'=>'pregnancy_1_pregnancy_complication']) }} -
    -
    -
    -
    - {{ Form::label('pregnancy_'.$obs_history_counter.'_puerperium', __('antenatal.puerperium')) }} -
    - -
    -
    -
    - @if ($t > 0) -
    - @endif -
    - @if (!empty($children)) -
    -

    {{ (count($children) == 1)? "Child's Details": "Children's Details" }}

    - - - - - - - - - - - - @foreach ($children as $key => $child) - - - - - - - - - - @endforeach - -
    {{ __('patients.full_names') }}{{ __('patients.gender') }}{{ __('patients.patient_number') }}{{ __('antenatal.child_birth_weight') }}{{ __('antenatal.child_immunisation_status') }}{{ __('antenatal.health_condition') }}#
    - {{ Form::text('pregnancy_'.$obs_history_counter.'_child_name[]', $child->name, ['class' => 'form-control compulsory child_details_div_'.$obs_history_counter.'', 'id' => 'pregnancy_'.$obs_history_counter.'_child_name_'.$key.'']) }} - - - - {{ Form::number('pregnancy_'.$obs_history_counter.'_child_patient_number[]',$child->patient_number,['class'=>'form-control child_details_div_'.$obs_history_counter.'', 'step'=>'1']) }} - - {{ Form::number('pregnancy_'.$obs_history_counter.'_child_birth_weight[]', $child->birth_weight,['class'=>'form-control child_details_div_1', 'min' => 0.5, 'max' => 10, 'step'=>'0.1']) }} - - {{ Form::select('pregnancy_'.$obs_history_counter.'_child_immunisation_status[]',['' => __('antenatal.select'), '1' => __('antenatal.not_started'), '2' => __('antenatal.ongoing'), '3' => __('antenatal.completed')],$child->immunisation_status,['class'=>'form-control child_details_div_'.$obs_history_counter.'']) }} - - {{ Form::textarea('pregnancy_'.$obs_history_counter.'_child_health_condition[]', $child->health_condition, ['class' => 'form-control', 'id' => 'pregnancy_'.$obs_history_counter.'_health_condition', 'rows' =>'3']) }} - - @if ($key > 0) - - @endif -
    - {{ __('antenatal.add_child_row') }} -
    - @else - - @endif -

    - @php $obs_history_counter++; @endphp - @endforeach - @else -
    -
    -
    - {{ Form::label('pregnancy_1_obstetric_date', __('antenatal.date')) }} -
    - {{ Form::text('pregnancy_1_obstetric_date','',['class' => 'form-control obstetric_date','readonly','id'=>'datepicker-autoclose1']) }} - -
    -
    -
    -
    - {{ Form::label('pregnancy_1_gestation', __('antenatal.gestation')) }} -
    - -
    -
    -
    -
    - {{ Form::label('pregnancy_1_obstetric_outcome', __('antenatal.outcome')) }} -
    - {{ Form::select('pregnancy_1_obstetric_outcome',$anc_outcomes,'',['class'=>'form-control col-sm-12', 'id'=>'pregnancy_1_obstetric_outcome', 'onchange'=>'abortion_outcome(this.id)']) }} -
    -
    -
    - - - -
    - -
    - @endif -
    -
    -
    -
    -
    -
    -
    - {{ Form::label('previous_pph', __('antenatal.previous_pph')) }} -
    - {{ Form::radio('previous_pph', 1, false, ["required","id" => "show_pph_details_div"]) }} {{ __('antenatal.yes') }}    - {{ Form::radio('previous_pph', 0, false, ["required","id" => "hide_pph_details_div"]) }} {{ __('antenatal.no') }} - -
    - -
    - {{ Form::label('previous_scar',__('antenatal.previous_scar')) }} -
    - {{ Form::radio('previous_scar', 1, false, ["required","id" => "show_scar_no_div"]) }} {{ __('antenatal.yes') }}    - {{ Form::radio('previous_scar', 0, false, ["required","id" => "hide_scar_no_div"]) }} {{ __('antenatal.no') }} - -
    - -
    - -
    -
    - {{ Form::label('other_comments',__('antenatal.other_comments')) }} - {{ Form::textarea('other_comments', $existing_anc_registration->other_comments, ['class'=>'form-control','rows' =>'4']) }} -
    -
    -
    -
    -
    -

    {{ __('antenatal.this_pregnancy') }}

    -
    -
    -
    - {{ Form::label('lmp', __('antenatal.lmp')) }} -
    - {{ Form::text('lmp',isset($existing_anc_registration->lmp)? Carbon\Carbon::parse($existing_anc_registration->lmp)->format('d/m/Y'): '',['class' => 'form-control compulsory', 'required','readonly','id'=>'lmp']) }} - -
    -
    -
    -
    -
    - {{ Form::label('accuracy', __('antenatal.accuracy')) }} - {{ Form::select('accuracy',$accuracies,$existing_anc_registration->accuracy?? '',['class'=>'form-control col-sm-12 compulsory','required']) }} -
    -
    -
    -
    - {{ Form::label('edd', __('antenatal.edd')) }} -
    - {{ Form::text('edd', empty($existing_anc_registration->edd)? '': Carbon\Carbon::parse($existing_anc_registration->edd)->format('d/m/Y'),['class' => 'form-control compulsory', 'required','readonly','id'=>'edd']) }} - -
    -
    -
    -
    -
    - {{ Form::label('woa_weeks',__('antenatal.woa_weeks')) }} -
    {!! $existing_anc_registration->woa_weeks?? '' !!}
    - {{ Form::hidden('woa_weeks',$existing_anc_registration->woa_weeks?? '',['id'=>'woa_weeks']) }} -
    -
    -
    -
    -
    -
    - {{ Form::label('complications',__('antenatal.complications')) }}
    - - - @php - $complications = explode(',', $existing_anc_registration->complications); - @endphp - - - - - - -
    - {{ Form::checkbox('complications[]', 1, in_array(1,$complications), ['id'=>'complications_bleeding', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('complications[]', 2, in_array(2,$complications), ['id'=>'complications_excessive_vomiting', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('complications[]', 3, in_array(3,$complications), ['id'=>'complications_others', 'class'=>'form-check-input']) }} -

    - @if (in_array(3,$complications)) - {{ Form::text('complications_others_input', $existing_anc_registration->other_complications,['class'=>'form-control', 'id'=>'complications_others_input', 'placeholder'=>'Specify']) }} - @else - {{ Form::text('complications_others_input','',['class'=>'form-control', 'id'=>'complications_others_input', 'placeholder'=>'Specify', 'style'=>"display: none"]) }} - @endif -
    -
    -
    -
    - {{ Form::label('complications','Hospital Visits') }} - - - - - - -
    - {{ Form::checkbox('hospital_visits', 1, $existing_anc_registration->hospital_visits == 1, ['id'=>'hospital_visits', 'class'=>'form-check-input']) }} -

    - @if ($existing_anc_registration->hospital_visits == 1) - {{ Form::text('other_facility_visited_name',$existing_anc_registration->other_facility_visited_name,['class'=>'form-control', 'id'=>'other_facility_visited_name', 'placeholder'=>'Facility Name?']) }}
    -
    - {{ Form::text('other_facility_visit_date', !empty($existing_anc_registration->other_facility_visit_date)? Carbon\Carbon::parse($existing_anc_registration->other_facility_visit_date)->format('d/m/Y'):'',['class'=>'form-control', 'id'=>'other_facility_visit_date', 'placeholder'=>'When?']) }} -

    - {{ Form::text('hospital_visits_input', $existing_anc_registration->hospital_visit_reason, ['class'=>'form-control', 'id'=>'hospital_visits_input', 'placeholder'=>'Specify']) }} - @else -
    - @endif -
    -
    -
    -
    -
    - {{ Form::label('refferal', __('antenatal.referral_from')) }} - {{ Form::select('refferal', $referrals, $existing_anc_registration->referral_from,['class'=>'form-control col-sm-12','id'=>'referral']) }} -
    - Add new Referral -
    -
    -
    -
    -
    -

    {{ __('antenatal.mother_history') }}

    -

    {{ __('antenatal.menstrual_history') }}

    -
    -
    -
    -
    -
    - {{ Form::label('cycle_time',__('antenatal.cycle_length')) }} - {{ Form::number('cycle_time',$mother_history->cycle_time?? '',['class'=>'form-control', 'step'=>'1']) }} -
    -
    -
    -
    -
    - {{ Form::hidden('mother_obs_history_id', $mother_history->id?? '', ['id'=>'mother_obs_history_id']) }} - {{ Form::label('menses_length',__('antenatal.menses_length')) }} - {{ Form::number('menses_length', $mother_history->menses_length?? '', ['class'=>'form-control', 'step'=>'1']) }} -
    -
    -
    -
    -
    - {{ Form::label('menses_amount',__('antenatal.menses_amount')) }} - {{ Form::select('menses_amount',['' => __('antenatal.select'), '1' => __('antenatal.heavy'), '2' => __('antenatal.normal')],$mother_history->menses_amount?? '',['class'=>'form-control']) }} -
    -
    -
    -
    -
    - {{ Form::label('family_planning',__('antenatal.family_planning')) }} - {{ Form::select('family_planning', $family_planning_methods, $mother_history->family_planning?? '', ['class'=>'form-control', 'id'=>'family_planning_methods']) }} -
    - Add new Family Planning Method -
    - @php - $display = empty($mother_history->family_planning)? 'display:none;':''; - @endphp -
    - {{ Form::label('date_discontinued',__('antenatal.date_discontinued')) }} -
    - @if (!empty($mother_history->date_discontinued)) - {{ Form::text('date_discontinued', $mother_history->date_discontinued,['class' => 'form-control compulsory','readonly','id'=>'date_discontinued']) }} - @else - {{ Form::text('date_discontinued', '',['class' => 'form-control','readonly','id'=>'date_discontinued']) }} - @endif -
    -
    -
    -
    - {{ Form::label('why_stop_family_planning',__('antenatal.why_stop_family_planning')) }} - @if (!empty($mother_history->why_stop_family_planning)) - {{ Form::text('why_stop_family_planning', $mother_history->why_stop_family_planning,['class'=>'form-control compulsory', 'id'=>'why_stop_family_planning', 'placeholder'=>'Why?']) }} - @else - {{ Form::text('why_stop_family_planning', '',['class'=>'form-control', 'id'=>'why_stop_family_planning', 'placeholder'=>'Why?']) }} - @endif -
    -
    -
    -
    -

    {{ __('antenatal.medical_history') }}

    -
    -
    - @php - $medical_presentations = !empty($mother_history->medical_presentations)? explode(',', $mother_history->medical_presentations):[]; - $any_medications = !empty($mother_history->any_medications)? explode(',', $mother_history->any_medications):[]; - $surgical_history =!empty($mother_history->surgical_history)? explode(',', $mother_history->surgical_history):[]; - $obs_gyn =!empty($mother_history->obs_gyn)? explode(',', $mother_history->obs_gyn):[]; - $family_history =!empty($mother_history->family_history)? explode(',', $mother_history->family_history):[]; - $fractures =!empty($mother_history->fractures)? explode(',', $mother_history->fractures):[]; - $fracture_details = !empty($mother_history->fracture_details)? json_decode($mother_history->fracture_details, true):[]; - $pelvis_display = (!empty($fracture_details[0]['date']) || !empty($fracture_details[0]['details']))? '':'display:none;'; - $spine_display = (!empty($fracture_details[1]['date']) || !empty($fracture_details[1]['details']))? '':'display:none;'; - $femur_display = (!empty($fracture_details[2]['date']) || !empty($fracture_details[2]['details']))? '':'display:none;'; - $uterine_surgeries = !empty($mother_history->uterine_surgeries)? json_decode($mother_history->uterine_surgeries, true):[]; - $other_surgeries = !empty($mother_history->other_surgeries)? json_decode($mother_history->other_surgeries, true):[]; - $condition_names = [ - 1=> __('antenatal.sti'), 2=> __('antenatal.cardiac_disease'), 3=> __('antenatal.asthma'), 4=> __('antenatal.sickel_cell'), 5=> __('antenatal.kidney_disease'), - 6=> __('antenatal.diabetes'), 7=> __('antenatal.hypertension'), 8=> __('antenatal.ted'), 9=> __('antenatal.epilepsy'), 10=> __('antenatal.tb'),11=> __('antenatal.polio'), - 12=> __('antenatal.anaemia'), 13=> __('antenatal.herpes'), 14=> __('antenatal.hiv'), 15=> __('antenatal.oral_thrush'), 16=> __('antenatal.l_glands'), - 17=> __('antenatal.herpes_simplex'), 18=> __('antenatal.dermatitis'), 19=> __('antenatal.others') - ]; - @endphp - @if (!empty($previous_medical_conditions) && $previous_medical_conditions->count() > 0) - - - - - - @php - $conditions = explode(',', $previous_medical_conditions->medical_presentations); - @endphp - - - - -
    {{ __('antenatal.previous_medical_conditions') }}
    -
      - @foreach ($conditions as $previous_medical_condition) -
    • {{ $condition_names[$previous_medical_condition]?? '' }}
    • - @endforeach -
    -
    - @endif - {{ Form::label('medical_presentations',__('antenatal.medical_presentations')) }}
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - {{ Form::checkbox('medical_presentations[]', 1, in_array(1,$medical_presentations), ['id'=>'medical_presentations_sti', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('medical_presentations[]', 2, in_array(2,$medical_presentations), ['id'=>'medical_presentations_cardiac_disease', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('medical_presentations[]', 3, in_array(3,$medical_presentations), ['id'=>'medical_presentations_asthma', 'class'=>'form-check-input']) }} - -
    - {{ Form::checkbox('medical_presentations[]', 4, in_array(4,$medical_presentations), ['id'=>'medical_presentations_sickel_cell', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('medical_presentations[]', 5, in_array(5,$medical_presentations), ['id'=>'medical_presentations_kidney_disease', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('medical_presentations[]', 6, in_array(6,$medical_presentations), ['id'=>'medical_presentations_diabetes', 'class'=>'form-check-input']) }} - -
    - {{ Form::checkbox('medical_presentations[]', 7, in_array(7,$medical_presentations), ['id'=>'medical_presentations_hypertension', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('medical_presentations[]', 8, in_array(8,$medical_presentations), ['id'=>'medical_presentations_ted', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('medical_presentations[]', 9, in_array(9,$medical_presentations), ['id'=>'medical_presentations_epilepsy', 'class'=>'form-check-input']) }} - -
    - {{ Form::checkbox('medical_presentations[]', 10, in_array(10,$medical_presentations), ['id'=>'complications_tb', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('medical_presentations[]', 11, in_array(11,$medical_presentations), ['id'=>'medical_presentations_polio', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('medical_presentations[]', 12, in_array(12,$medical_presentations), ['id'=>'medical_presentations_anaemia', 'class'=>'form-check-input']) }} - -
    - {{ Form::checkbox('medical_presentations[]', 13, in_array(13,$medical_presentations), ['id'=>'medical_presentations_herpes', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('medical_presentations[]', 14, in_array(14,$medical_presentations), ['id'=>'medical_presentations_hiv', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('medical_presentations[]', 15, in_array(15,$medical_presentations), ['id'=>'medical_presentations_oral_thrush', 'class'=>'form-check-input']) }} - -
    - {{ Form::checkbox('medical_presentations[]', 16, in_array(16,$medical_presentations), ['id'=>'medical_presentations_l_glands', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('medical_presentations[]', 17, in_array(17,$medical_presentations), ['id'=>'medical_presentations_herpes_simplex', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('medical_presentations[]', 18, in_array(18,$medical_presentations), ['id'=>'medical_presentations_dermatitis', 'class'=>'form-check-input']) }} - -
    - {{ Form::checkbox('medical_presentations[]', 19, in_array(19,$medical_presentations), ['id'=>'medical_presentations_others', 'class'=>'form-check-input']) }} -

    - @if (in_array(19,$medical_presentations)) - {{ Form::text('medical_presentations_others_input', $mother_history->medical_presentations_others_input,['class'=>'form-control compulsory', 'id'=>'medical_presentations_others_input', 'placeholder'=>'Specify']) }} - @else - {{ Form::text('medical_presentations_others_input','',['class'=>'form-control compulsory', 'id'=>'medical_presentations_others_input', 'placeholder'=>'Specify', 'style'=>'display:none']) }} - @endif -
    -
    -
    -
    - @if ($chronic_results->count() > 0) - - - - - - - - - -
    {{ __('prescriptions.chronic_drugs') }}
    -
      - @foreach ($chronic_results as $chronic_result) -
    • {{ ucwords($chronic_result->name ?? '') }}
    • - @endforeach -
    -
    - @endif - {{ Form::label('any_medications',__('antenatal.any_medications')) }}
    - - - - - - - -
    - {{ Form::checkbox('any_medications[]', 1, in_array(1,$any_medications), ['id'=>'arv', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('any_medications[]', 2, in_array(2,$any_medications), ['id'=>'any_medications_others', 'class'=>'form-check-input']) }} -

    - @if (in_array(2,$any_medications)) - {{ Form::text('any_medications_others_input',$mother_history->other_any_medications,['class'=>'form-control', 'id'=>'any_medications_others_input', 'placeholder'=>'Specify']) }} - @else - {{ Form::text('any_medications_others_input','',['class'=>'form-control', 'id'=>'any_medications_others_input', 'placeholder'=>'Specify', 'style'=>"display: none"]) }} - @endif -
    -
    - - -
    -
    -
    -
    -

    {{ __('antenatal.surgical_history') }}

    -
    -
    - @if ($previous_surgeries->count() > 0) -
    -
    -
    - - - - - - - - - - - @foreach ($previous_surgeries as $previous_surgery) - - - - - - - @endforeach - -
    DateSurgeryDiagnosesPerformed By
    {{ streamline_date_time($previous_surgery->created_at) }}{{ !empty($previous_surgery->procedure_id)? get_name($previous_surgery->procedure_id, 'id', 'name', 'procedures') : "N/A"; }} - @php - $list[] =$diagnoses[$previous_surgery->primary_diagnosis]; - $other_diagnoses_array = !empty($previous_surgery->other_diagnoses)? unserialize($previous_surgery->other_diagnoses):[]; - foreach($other_diagnoses_array as $diagnosis) if(!empty($diagnosis)) $list[]=$diagnoses[$diagnosis]; - @endphp -
      - @foreach ($list as $value) -
    • {{ $value }}
    • - @endforeach -
    - -
    {{ get_full_name($previous_surgery->created_by, 'id', 'first_name', 'last_name', 'users'); }}
    -
    -
    -
    - @endif -
    -
    - - - - - - - - - @forelse ($uterine_surgeries as $key => $uterine_operation) - - - - - - - @empty - - - - - - - @endforelse - -
    {{ __('antenatal.uterus_operations') }}{{ __('antenatal.date') }}{{ __('antenatal.facility_name') }}
    - {{ Form::text('uterus_operations_name[]', $uterine_operation['name']?? '', ['class'=>'form-control uterus_operations', 'id'=>'uterus_operations_name_1']) }} - -
    - {{ Form::text('uterus_operations_date[]',$uterine_operation['date'],['class' => 'form-control fractures', 'id'=>'uterus_operations_date_1', 'placeholder'=>'When?']) }} -
    -
    - {{ Form::text('uterus_operations_facility_name[]', $uterine_operation['facility_name'], ['class' => 'form-control compulsory', 'id' => 'uterus_operations_facility_name_1']) }} -
    - {{ Form::text('uterus_operations_name[]', '', ['class'=>'form-control uterus_operations', 'id'=>'uterus_operations_name_1']) }} - -
    - {{ Form::text('uterus_operations_date[]','',['class' => 'form-control fractures', 'id'=>'uterus_operations_date_1', 'placeholder'=>'When?']) }} -
    -
    - {{ Form::text('uterus_operations_facility_name[]', '', ['class' => 'form-control compulsory', 'id' => 'uterus_operations_facility_name_1']) }} -
    - {{ __('antenatal.add_uterus_operations_row') }} -
    -
    - - - - - - - - - @forelse ($other_surgeries as $key => $other_surgery) - - - - - - - @empty - - - - - - - - @endforelse - -
    Other {{ __('antenatal.operations') }}{{ __('antenatal.date') }}{{ __('antenatal.facility_name') }}
    - {{ Form::text('other_operations_name[]', $other_surgery['name'], ['class' => 'form-control compulsory', 'id' => 'other_operations_name_1']) }} - -
    - {{ Form::text('other_operations_date[]', $other_surgery['date'],['class' => 'form-control fractures', 'id'=>'other_operations_date_1', 'placeholder'=>'When?']) }} -
    -
    - {{ Form::text('other_operations_facility_name[]', $other_surgery['facility_name'], ['class' => 'form-control compulsory', 'id' => 'other_operations_facility_name_1']) }} -
    - {{ Form::text('other_operations_name[]', '', ['class' => 'form-control compulsory', 'id' => 'other_operations_name_1']) }} - -
    - {{ Form::text('other_operations_date[]','',['class' => 'form-control fractures', 'id'=>'other_operations_date_1', 'placeholder'=>'When?']) }} -
    -
    - {{ Form::text('other_operations_facility_name[]', '', ['class' => 'form-control compulsory', 'id' => 'other_operations_facility_name_1']) }} -
    - {{ __('antenatal.add_other_operations_row') }} -
    -

    -
    -
    - {{ Form::label('surgical_history',__('antenatal.blood_transfusion')) }} - - - - - - -
    - {{ Form::checkbox('surgical_history[]', 2, in_array(2,$surgical_history), ['id'=>'surgical_history_blood_transfusion', 'class'=>'form-check-input', 'onchange' => 'show_and_hide(this.id)']) }} - - @if (in_array(2,$surgical_history)) - {{ Form::text('surgical_history_blood_transfusion_input',$mother_history->surgical_history_blood_transfusion?? '',['class'=>'form-control', 'id'=>'surgical_history_blood_transfusion_input', 'placeholder'=>'Why?', 'style'=>'margin-top:10px;']) }} - @else - {{ Form::text('surgical_history_blood_transfusion_input', '',['class'=>'form-control', 'id'=>'surgical_history_blood_transfusion_input', 'placeholder'=>'Why?', 'style'=>'margin-top:10px; display:none;']) }} - @endif -
    -
    -
    -
    - {{ Form::label('fractures',__('antenatal.fractures')) }} - - - - - - - - -
    - {{ Form::checkbox('fractures[]', 1, in_array(1,$fractures), ['id'=>'fractures_pelvis', 'class'=>'form-check-input', 'onchange' => 'fractures_show_and_hide(this.id)']) }} - -
    -
    - {{ Form::text('fractures_pelvis_date', $fracture_details[0]['date']?? '',['class' => 'form-control fractures', 'id'=>'fractures_pelvis_date', 'placeholder'=>'When?']) }} -

    - {{ Form::text('fractures_pelvis_input',$fracture_details[0]['details']?? '',['class'=>'form-control', 'id'=>'fractures_pelvis_input', 'placeholder'=>'Specify']) }} -
    -
    - {{ Form::checkbox('fractures[]', 2, in_array(2,$fractures), ['id'=>'fractures_spine', 'class'=>'form-check-input', 'onchange' => 'fractures_show_and_hide(this.id)']) }} - -
    -
    - {{ Form::text('fractures_spine_date',$fracture_details[1]['date']?? '',['class' => 'form-control fractures', 'id'=>'fractures_spine_date', 'placeholder'=>'When?']) }} -

    - {{ Form::text('fractures_spine_input',$fracture_details[1]['details']?? '',['class'=>'form-control', 'id'=>'fractures_spine_input', 'placeholder'=>'Specify']) }} -
    -
    - {{ Form::checkbox('fractures[]', 3, in_array(3,$fractures), ['id'=>'fractures_femur', 'class'=>'form-check-input', 'onchange' => 'fractures_show_and_hide(this.id)']) }} - -
    -
    - {{ Form::text('fractures_femur_date', $fracture_details[2]['date']?? '',['class' => 'form-control fractures', 'id'=>'fractures_femur_date', 'placeholder'=>'When?']) }} -

    - {{ Form::text('fractures_femur_input',$fracture_details[2]['details']?? '',['class'=>'form-control', 'id'=>'fractures_femur_input', 'placeholder'=>'Specify']) }} -
    -
    -
    -
    -
    -
    - {{ Form::label('family_history',__('antenatal.family_history')) }} - - - - - - - - - - - - - - - -
    - {{ Form::checkbox('family_history[]', 1, in_array(1,$family_history), ['id'=>'family_history_diabetes', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('family_history[]', 2, in_array(2,$family_history), ['id'=>'family_history_sickel_cell', 'class'=>'form-check-input']) }} - -
    - {{ Form::checkbox('family_history[]', 3, in_array(3,$family_history), ['id'=>'family_history_hypertension', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('family_history[]', 4, in_array(4,$family_history), ['id'=>'family_history_twins', 'class'=>'form-check-input']) }} - -
    - {{ Form::checkbox('family_history[]', 6, in_array(6,$family_history), ['id'=>'family_history_mental_illness', 'class'=>'form-check-input']) }} - - - {{ Form::checkbox('family_history[]', 5, in_array(5,$family_history), ['id'=>'family_history_others', 'class'=>'form-check-input']) }} - -
    -
    -
    - {{ Form::label('sgbv',__('antenatal.sgbv')) }} - - - - - - -
    - {{ Form::checkbox('sgbv', 1, (!empty($mother_history->sgbv) && $mother_history->sgbv == 1)? true:false, ['id'=>'sgbv_sgbv_risk', 'class'=>'form-check-input', 'onchange' => 'show_and_hide(this.id)']) }} -

    - @if (!empty($mother_history->sgbv) && $mother_history->sgbv == '1') - @php - $risks = explode(',', $mother_history->sgbv_risk); - @endphp - - @else - {{ Form::select('sgbv_sgbv_risk_input[]', $gender_based_violence, '', ['class'=>'form-control', 'id'=>'sgbv_sgbv_risk_input','multiple', 'style'=>'display:none']) }} - @endif -
    - Add new Risk -
    -
    -
    -
    - {{ Form::label('husband_health', __('antenatal.husband_health')) }} -
    - {{ Form::text('husband_health',$mother_history->husband_health?? '',['class' =>'form-control','id'=>'husband_health']) }} -
    -
    -
    -
    -
    -
    -
    -
    - {{ Form::label('blood_group',__('antenatal.blood_group')) }} - {{ Form::select('blood_group', $blood_groups, '',['class'=>'form-control col-sm-12']) }} -
    - -
    - {{ __('antenatal.blood_transfusion') }} -
    - - - - - - - - @if(count($anc_blood_transfusion_details) > 0) - @foreach($anc_blood_transfusion_details as $anc_blood_transfusion) - @php - $format_db_date_1 = date_create($anc_blood_transfusion->transfusion_date); - $customized_date_format_1 = date_format($format_db_date_1, 'd/m/Y'); - @endphp - - - - - - @endforeach - @else - - - - - - @endif - -
    {{ __('antenatal.date') }}{{ __('antenatal.number_of_units') }}{{ __('antenatal.comments') }}
    -
    -
    - {{ Form::text('transfusion_date[]', $customized_date_format_1, ['class' => 'form-control transfusion_date', 'readonly']) }} - -
    -
    -
    -
    -
    -
    - {{ Form::text('transfusion_date[]','',['class' => 'form-control transfusion_date','readonly']) }} - -
    -
    -
    -
    - {{ __('consultations.add_row') }} -
    -
    - -
    -
    -
    -

    - {{ __('antenatal.vdrl_status') }}

    - {{ __('antenatal.hiv_status') }} -
    -
    -
    -
    -
    - {{ Form::label('vdrl_result',__('antenatal.result')) }} -
    - {{ Form::select('hiv_result', $hiv_statuses, is_null($anc_vdrl_details) ? "" : $anc_vdrl_details->hiv_result, ['class'=>'form-control col-sm-12','id'=>'hiv_result']) }} -
    -
    -
    -
    - {{ Form::label('vdrl_date',__('antenatal.date')) }} - @php - $customized_date_format_2 = null; $customized_date_format_3 = null; - if(!is_null($anc_vdrl_details) && !is_null($anc_vdrl_details->vdrl_date)){ - $format_db_date_2 = date_create($anc_vdrl_details->vdrl_date); - $customized_date_format_2 = date_format($format_db_date_2, 'd/m/Y'); - } - - if(!is_null($anc_vdrl_details) && !is_null($anc_vdrl_details->hiv_date)){ - $format_db_date_3 = date_create($anc_vdrl_details->hiv_date); - $customized_date_format_3 = date_format($format_db_date_3, 'd/m/Y'); - } - @endphp -
    - {{ Form::text('vdrl_date', $customized_date_format_2, ['class' => 'form-control', 'readonly', 'id'=>'datepicker-autoclose3']) }} - -
    -
    -
    - {{ Form::text('hiv_date', $customized_date_format_3, ['class' => 'form-control', 'readonly', 'id'=>'datepicker-autoclose4']) }} - -
    -
    -
    -
    -
    -
    - {{ Form::label('location',__('antenatal.location')) }} -
    - -
    -
    -
    -
    -
    - - -
    -
    -
    -
    - -
    -
    -
    -

    {{ __('consultations.ordered_investigations') }}

    -
    - - - - - - - - - - - - - @if(count($investigation_results) > 0) - - @if(check_if_episode_is_a_followup($episode->id)) - - - - @endif - - @foreach($investigation_results as $result) - @php - $investigation_ids_array = explode(',', $result->investigation_id); - - // authentication of investigations - $per_investigation_array = explode(',', $result->per_investigation); - - $comments = explode(",", $result->comment); - $results_values = explode(",", $result->value); - @endphp - - @for($i = 0 ; $i < count($investigation_ids_array) ; $i++) - @php - $investigation = \Streamline\Models\Investigation::withTrashed()->find($investigation_ids_array[$i]); - @endphp - @if($investigation) - @if($investigation->type == 1 && isset($results_values[$i])) - - - - - @php - $specialised_results = \Streamline\Models\InvestigationSpecialisedResult::where('id', $results_values[$i])->first(); - - if($specialised_results){ - $variable_id_array = explode(',', $specialised_results->specialised_variable_id); - - $variable_value_array = explode(',', $specialised_results->value); - - $variable_comment_array = explode(',', $specialised_results->comment); - - $variable_normal_range_array = explode(',', $specialised_results->normal_ranges); - } - @endphp - @if($specialised_results) - @for($x = 0; $x < count($variable_id_array); $x++) - - - - - - - - @endfor - @endif - - @elseif($investigation->slug == 'echo' && $results_values[$i] == "") - - - - - @else - - - - - - - - @endif - @endif - @endfor - - - - @endforeach - @elseif(count($ordered_investigations) > 0) - - @if(check_if_episode_is_a_followup($episode->id)) - - - - @endif - - @foreach($ordered_investigations as $investigation) - @php $investigation_ids_array = explode(',', $investigation->investigation_id); @endphp - @for($i = 0 ; $i < count($investigation_ids_array) ; $i++) - @php - $investigation = \Streamline\Models\Investigation::withTrashed()->find($investigation_ids_array[$i]); - @endphp - - @if($investigation) - @if($investigation->slug == 'echo') - - - - - @else - - - - - - - - @endif - @endif - @endfor - @endforeach - @else - - - - @endif - -
    {{ __('investigations.investigation_name') }}{{ __('investigations.results') }}{{ __('investigations.normal_ranges') }}{{ __('investigations.unit') }}{{ __('investigations.comment') }}
    {{ __('consultations.investigation_for_review') }} ({{ streamline_date($episode->created_at)}})
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif -
    {{ get_name($variable_id_array[$x], 'id', 'name', 'investigation_specialised_variables') }}{{ $variable_value_array[$x] }} - @if(get_name($variable_id_array[$x], 'id', 'range_type', 'investigation_specialised_variables') == 1) - - {{ get_dynamic_normal_range_specialized($variable_id_array[$x], get_patient_age_group($patient_id), get_name($patient_id, 'id', 'gender', 'patients')) }} - @else - {{ get_name($variable_id_array[$x], 'id', 'normal_ranges', 'investigation_specialised_variables') }} - @endif - - @if(get_name(get_name($variable_id_array[$x], 'id', 'units', 'investigation_specialised_variables'), 'id', 'name', 'unit_of_measure') != "N/A") - {{ get_name(get_name($variable_id_array[$x], 'id', 'units', 'investigation_specialised_variables'), 'id', 'name', 'unit_of_measure') }} - @endif - {{ $variable_comment_array[$x] }}
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - - View Results - -
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - @if($per_investigation_array[$i] == 0) - {{ __("consultations.pending") }} - @else - {{ isset($results_values[$i]) ? $results_values[$i] : "" }} - @endif - - @if($investigation->range_type == 1) - {{ get_dynamic_normal_range($investigation->id, get_patient_age_group($patient_id), get_name($patient_id, 'id', 'gender', 'patients')) }} - @else - {{ $investigation->normal_ranges }} - @endif - - {{ get_name(get_name($investigation->id, 'id', 'units', 'investigations'),'id', 'name', 'unit_of_measure') }} - - {!! $per_investigation_array[$i] == 0 ? '{{ __("consultations.pending") }}' : $comments[$i] !!} -
    {{ __('consultations.authenticated_by') }}{{ get_full_name($result->authenticated_by, 'id', 'first_name', 'last_name', 'users')}}
    {{ __('consultations.investigation_for_review') }} ({{ streamline_date($episode->created_at)}})
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - @if(($cardio_echo)) - - View results - - @else - Pending - @endif -
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - {{ __('consultations.pending') }} - @if($investigation->range_type == 1) - {{ get_dynamic_normal_range($investigation->id, get_patient_age_group($patient_id), get_name($patient_id, 'id', 'gender', 'patients')) }} - @else - {{ $investigation->normal_ranges }} - @endif - - {{ $investigation->comments }} -
    {{ __('consultations.investigation_not_ordered') }} {{ check_if_episode_is_a_followup($episode->id) ? __('consultations.during_current_review') : '' }}.
    -
    -
    -
    -

    {{ __('consultations.ordered_sundries') }}

    -
    - - - - - - - - - - @if(count($ordered_sundries) > 0) - - @if(check_if_episode_is_a_followup($episode->id)) - - - - @endif - - @foreach($ordered_sundries as $ordered_sundry) - @php - $sundry_ids = explode(",", $ordered_sundry->sundries_id); - $sundry_quantity = explode(",", $ordered_sundry->quantity); - @endphp - - @for($i = 0; $i < count($sundry_ids); $i++) - - - - - @endfor - @endforeach - @else - - - - @endif - -
    {{ __('consultations.SUNDRY') }}{{ __('consultations.QUANTITY') }}
    {{ __('consultations.sundries_for_episode_review') }} ({{ streamline_date($episode->created_at)}})
    {{ get_name($sundry_ids[$i], 'id', 'name', 'sundries') }} {!! $sundry_quantity[$i] !!}
    {{ __('consultations.no_sundries_ordered') }} {{ check_if_episode_is_a_followup($episode->id) ? __('consultations.during_current_review') : '' }}.
    -
    -
    -
    -
    - -
    -
    -
    -

    {{ __('consultations.treatment_given') }}

    -
    - - - - - - - - - - - - - @if(count($treatments) > 0) - @if(check_if_episode_is_a_followup($episode->id)) - - - - @endif - - @foreach($treatments as $treatment) - @php - $drugs_array = explode(",", $treatment->drugs); - $dosage_array = explode(",", $treatment->doses); - $dosage2_array = explode(",", $treatment->dose2); - $frequencies_array = explode(",", $treatment->frequencies); - $duration_array = explode(",", $treatment->durations); - $quantity_dispensed_array = explode(",", $treatment->quantities_dispensed); - $instructions_array = explode(",", $treatment->instruction); - $purchased_elsewhere_array = is_null($treatment->purchased_elsewhere) ? [] : explode(",", $treatment->purchased_elsewhere); - @endphp - @for($x = 0; $x < count($drugs_array); $x++) - @php - $frequency_name = get_name($frequencies_array[$x], 'id', 'name', 'dosage_frequencies'); - $unit = get_name($drugs_array[$x], 'id', 'name', 'drug_units'); - $unit = $unit=="N/A"?"":$unit; - $drug_unit = "" . $unit . ""; - $dose2 = (empty($dosage2_array[$x])) ? "" : " | " . $dosage2_array[$x] . $drug_unit; - @endphp - - - - - - @if(isset($purchased_elsewhere_array[$x]) && $purchased_elsewhere_array[$x] == 1) - - @else - @if($treatment->dispense_status == 1) - - @else - - @endif - @endif - - - @endfor - @endforeach - @else - - - - @endif - -
    {{ __('consultations.DRUG_NAME') }}{{ __('consultations.DOSAGE') }}{{ __('consultations.DURATION') }}{{ __('consultations.QUANTITY') }}{{ __('consultations.STATUS') }}{{ __('consultations.INSTRUCTION') }}
    {{ __('consultations.treatment_for_episode_review') }} ({{ streamline_date($episode->created_at)}})
    - {{ get_name($drugs_array[$x], 'id', "name", 'drugs') }} - - @if($treatment->is_treatment_progressive != 0) - (Progressive Treatment) - @endif - {{ $dosage_array[$x] }} {!! $drug_unit !!} {{ $dose2 }}    {{ $frequency_name }}{{ $duration_array[$x] }}{{ $quantity_dispensed_array[$x] }}Purchased From Elsewhere{{ __('consultations.dispensed') }}{{ __('consultations.pending') }} - {{ isset($instructions_array[$x]) ? trim($instructions_array[$x]) : 'N/A' }} -
    {{ __('consultations.no_prescription_made_yet') }} {{ check_if_episode_is_a_followup($episode->id) ? 'during current review' : '' }}
    -
    -
    -
    -

    {{ __('consultations.ordered_procedures') }}

    -
    - - - - - - - - - - - @if(count($ordered_procedures) > 0) - @php - $count = 1; $users_array =[''=>'-Select-']; - $procedure_performed_counter = -1; - $option_employees = ""; - foreach ($employees as $employee){ - $users_array[$employee->id] =$employee->first_name.' '.$employee->last_name; - $option_employees .= ""; - } - @endphp - - @if(check_if_episode_is_a_followup($episode->id)) - - - - @endif - - @foreach($ordered_procedures as $ordered_procedure) - @php - $procedure_id = explode(",", $ordered_procedure->procedure_id); - $procedure_performed_array = explode(",", $ordered_procedure->performed); - $procedure_performed_id_array = explode(",", $ordered_procedure->performed_id); - - @endphp - - @for($i = 0; $i < count($procedure_id); $i++) - - - - - - @endfor - @endforeach - @else - - - - @endif - -
    {{ __('consultations.PROCEDURE') }}{{ __('consultations.STATUS') }}{{ __('consultations.PERFORMED') }}
    {{ __('consultations.procedures_for_episode_review') }} ({{ streamline_date($episode->created_at)}})
    - {{ get_name($procedure_id[$i], 'id', 'name', 'procedures') }} - - {!! $procedure_performed_array[$i] == 1 ? ''.__("consultations.performed").'' : ''. __("consultations.pending").'' !!} - - @if($procedure_performed_array[$i] == 1) - By {{ get_full_name(get_name($procedure_performed_id_array[$i], 'id', 'performed_by', 'staff_performed_services'), 'id', 'first_name', 'last_name', 'users') }} - @else - - {{ Form::hidden('perform[]', $procedure_id[$i]) }} - {{ Form::hidden('procedure_order_perform[]', $ordered_procedure->id) }} - {{ Form::hidden('procedure_performed_position[]', $i) }} - - - @endif -
    {{ __('consultations.no_procedure_has_been_ordered') }} {{ check_if_episode_is_a_followup($episode->id) ? __('consultations.during_current_review') : '' }}.
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    - {{ Form::button(__('consultations.Investigation'),['type'=>'submit','class'=>'btn btn-info btn-sm submit-btn','name'=>'submit-btn','value'=>'investigation']) }} - {{ Form::button(__('consultations.Treatment'),['type'=>'submit','class'=>'btn btn-default btn-sm submit-btn','name'=>'submit-btn','value'=>'treatment']) }} - {{ Form::button(__('consultations.Procedures'),['type'=>'submit','class'=>'btn btn-inverse btn-sm submit-btn','name'=>'submit-btn','value'=>'procedures']) }} - {{ Form::button(__('consultations.Sundries'),['type'=>'submit','class'=>'btn btn-primary btn-sm submit-btn','name'=>'submit-btn','value'=>'sundries']) }} -
    -
    -
    - {{ Form::label('comments',__('antenatal.comments')) }} - {{ Form::textarea('comments',$existing_anc_registration->general_comments,['class'=>'form-control','rows'=>'4']) }} -
    -
    -
    - {{ Form::button(__('antenatal.update_and_complete'),['type'=>'submit','class'=>'btn btn-success btn-md submit-btn','name'=>'submit-btn','value'=>'complete']) }}

    - {{ Form::button(__('antenatal.save_pregnancy'),['type'=>'submit','class'=>'btn btn-default btn-md submit-btn','name'=>'submit-btn','value'=>'save_consultation']) }} -
    -
    -
    -
    -
    -
    -
    -{{ Form::hidden('pregnancy_number', 0, ['id'=>'pregnancy_number']) }} -{{ Form::close() }} - - - - - - - - - - - - - - - -@endsection - -@push('scripts') - - - - - -@endpush diff --git a/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/index.blade.php b/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/index.blade.php deleted file mode 100755 index d2a8487b..00000000 --- a/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/index.blade.php +++ /dev/null @@ -1,100 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Ante Natal Clinic

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    -
    - @include('flash::message') -
    -
    - - - - - - - - - - - - - - - @php $count = 1; @endphp - @if(count($anc_registrations) > 0) - @foreach($anc_registrations as $pregnancy) - - - - - - - - - - - @php $count++; @endphp - @endforeach - @endif - -
    Pregnancy registered onNumber of VisitsLMP DateE.D.DStatusRegistered ByActions
    {{ $count }}{{ streamline_date_time_short($pregnancy->created_at) }} - @php - $visits = \Streamline\Models\AnteNatalClinicFollowup::where(['patient_id' => $pregnancy->patient_id, 'episode_id' => $pregnancy->episode_id])->pluck('id'); - foreach ($visits as $key => $visit) { - $visit_ids[] = $visit; - } - @endphp - @if ($visits->count() > 0) - {{ Form::open(['method' => 'POST', 'route' => 'anc_visits.previous_visits', 'target' => "_blank", 'id'=>'previous_visits' ]) }} - - {{ commas($visits->count()) }} - {{ Form::close() }} - @else - 0 - @endif - {{ streamline_date_time_short($pregnancy->lmp) }}{{ streamline_date_time_short($pregnancy->edd) }}{{ !empty($pregnancy->completed)? 'Completed':'Unknown' }}{{ get_name($pregnancy->created_by, 'id', 'first_name', 'users') }} {{ get_name($pregnancy->created_by, 'id', 'last_name', 'users') }} - Details - Edit -
    -
    - {{ $anc_registrations->links() }} -
    -
    -
    - -{{ Form::close() }} - -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/index_visits.blade.php b/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/index_visits.blade.php deleted file mode 100755 index 9f4daa83..00000000 --- a/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/index_visits.blade.php +++ /dev/null @@ -1,76 +0,0 @@ -@extends('layouts.main') - - -@section('content') -
    -
    -

    Ante Natal Clinic

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    -
    - @include('flash::message') -
    -
    - - - - - - - - - - - - - - - @if(count($anc_followup_records) > 0) - @foreach($anc_followup_records as $key => $anc_visits) - - - - @foreach ($anc_visits as $anc_visit) - - - - - - - - - - @endforeach - @endforeach - @endif - -
    Pregnancy Reg. DateVisit dateVisit no.Fundal heightGestation from EDDGestation from scanGestation from fundalActions
    {{ streamline_date_time_short(get_name($key, 'id', 'created_at', 'ante_natal_clinic_registrations')) }}
    {{ streamline_date($anc_visit->ante_natal_clinic_date) }}{{ $anc_visit->ante_natal_clinic_visit_number }}{{ $anc_visit->fundal_height }} cm{{ $anc_visit->gestation_from_edd }} weeks{{ $anc_visit->gestation_from_scan }} weeks{{ $anc_visit->gestation_from_fundal }} weeks - Details - {{ __('antenatal.edit_details') }} -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - -@endpush diff --git a/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/last_antenatal_visit_details.blade.php b/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/last_antenatal_visit_details.blade.php deleted file mode 100755 index b6fd9f45..00000000 --- a/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/last_antenatal_visit_details.blade.php +++ /dev/null @@ -1,203 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Ante Natal Clinic

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    -
    - @include('flash::message') -
    -
    - - - - - - - - - - - - - - - @php $count = 1; @endphp - @if(count($anc_followup_records) > 0) - @foreach($anc_followup_records as $anc_visit) - - - - - - - - - - - @php $count++; @endphp - @endforeach - @endif - -
    Visit dateVisit no.Fundal heightGestation from EDDGestation from scanGestation from fundalActions
    {{ $count }}{{ streamline_date_time_short($anc_visit->ante_natal_clinic_date) }}{{ $anc_visit->ante_natal_clinic_visit_number }}{{ $anc_visit->fundal_height }} cm{{ $anc_visit->gestation_from_edd }} weeks{{ $anc_visit->gestation_from_scan }} weeks{{ $anc_visit->gestation_from_fundal }} weeks - Details -
    -
    - {{ $anc_followup_records->links() }} -
    -
    -
    - -{{ Form::close() }} - -@endsection - -@push('scripts') - - - - -@endpush diff --git a/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/menu.blade.php b/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/menu.blade.php deleted file mode 100755 index d3434fb7..00000000 --- a/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/menu.blade.php +++ /dev/null @@ -1,97 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('antenatal.antanatal_clinic') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    -
    - @include('flash::message') - -
    -
    - - - -@endsection - -@push('scripts') - - -@endpush diff --git a/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/show_pregnancy.blade.php b/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/show_pregnancy.blade.php deleted file mode 100755 index 2fdd5155..00000000 --- a/docker/statistics/Modules/Antenatal/Resources/views/ante_natal_clinic/show_pregnancy.blade.php +++ /dev/null @@ -1,1340 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('antenatal.pregnancy_reg_details') }} ({{ __('antenatal.registered_on') }} {{ streamline_date($anc_registration_details->created_at) }})

    -
    -
    - -
    -
    - -@php - $episode_created_at = Carbon\Carbon::parse($episode->created_at); - $episode_has_grand_parent_episode = false; -@endphp - -@if(check_if_episode_is_a_followup($episode->id)) - @php - $parent_episode_details = \Streamline\Models\PatientEpisode::find($episode->parent_episode_id); - $parent_consultations = \Streamline\Models\Consultation::where(['episode_id' => $parent_episode_details->id])->get(); - $parent_consultation_details = count($parent_consultations) > 0 ? $parent_consultations->first() : null; - $parent_triage_details = \Streamline\Models\Triage::where(['id' => $parent_episode_details->triage_id])->first(); - - if(check_if_episode_is_a_followup($parent_episode_details->id)){ - $episode_has_grand_parent_episode = true; - - $grand_parent_episode_details = \Streamline\Models\PatientEpisode::find($parent_episode_details->parent_episode_id); - - $grand_parent_episode_treatments = \Streamline\Models\Treatment::where(['patient_id' => $patient_id, 'episode_id' => $grand_parent_episode_details->id, 'tta' => 0])->get(); - - $grand_parent_episode_ordered_procedures = \Streamline\Models\OrderedProcedure::where(['patient_id' => $patient_id, 'episode_id' => $grand_parent_episode_details->id])->get(); - - $grand_parent_episode_ordered_investigations = \Streamline\Models\OrderedInvestigation::where(['patient_id' => $patient_id, 'episode_id' => $grand_parent_episode_details->id])->get(); - - $grand_parent_episode_ordered_sundries = \Streamline\Models\OrderedSundry::where(['patient_id' => $patient_id, 'episode_id' => $grand_parent_episode_details->id])->get(); - - $grand_parent_episode_investigation_results = \Streamline\Models\InvestigationResults::where(['patient_id' => $patient_id, 'episode_id' => $grand_parent_episode_details->id])->get(); - } - @endphp -@endif - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    -
    -
    -
    - -
    -
    -
    - {{ __('consultations.triage_grade') }} : - @if($triage) - @switch($triage->severe_grade) - @case (1) -
    {{ __('consultations.green') }}
    - @break - @case (2) -
    {{ __('consultations.yellow') }}
    - @break - @case (3) -
    {{ __('consultations.red') }}
    - @break - @default - {{ __('consultations.triage_grade_not_determined') }} - @endswitch - @endif -
    -
    - {{ __('consultations.symptoms') }} : - @if($triage) - @php $symptoms_array = explode(",", $triage->symptoms); @endphp - @php $symptoms_duration_array = explode(",", $triage->symptom_duration); @endphp - -
    -
    - - - - - - - - - @php $counter = 0; @endphp - @for($i = 0; $i < count($symptoms_array); $i++) - - - - - @endfor - -
    {{ __('consultations.symptom') }}{{ __('consultations.duration') }}
    {{ isset($symptoms_array[$i]) ? get_name($symptoms_array[$i], 'id', 'name', 'symptoms') : "" }}{{ $symptoms_duration_array[$i] ?? "" }}
    -
    -
    - @else - {{ __('consultations.no_symptom_recorded') }} - @endif -
    - -
    - - @if($triage) - @php - $observations_array = explode(',', $triage->observations); //i.e[temp=44,height=2] - - $parent_observation_array = isset($parent_triage_details) ? explode(',', $parent_triage_details->observations): []; - @endphp -
    -
    - - - - - - @if(check_if_episode_is_a_followup($episode->id)) - - @endif - - - - @php $counter = 0; @endphp - @foreach($observations_array as $observation) - @php - $item_array = explode('=', $observation); //i.e[temp,44] - $counter++; - @endphp - @if($counter < 9) - - - - - @if(check_if_episode_is_a_followup($episode->id)) - @foreach($parent_observation_array as $parent_observation) - @php - $parent_item_array = isset($parent_triage_details) ? explode('=', $parent_observation) : []; - @endphp - @if($item_array[0] == $parent_item_array[0]) - - @endif - @endforeach - @endif - - @endif - @endforeach - -
    {{ __('consultations.observation') }}{{ __('consultations.value') }} - {{ __('consultations.previous_value') }} -
    {{ $item_array[0] }}{{ $item_array[1] }} - {{ $parent_item_array[1] }} -
    -
    - -
    - - - - - - @if(check_if_episode_is_a_followup($episode->id)) - - @endif - - - - @php $counter=0; @endphp - @foreach($observations_array as $observation) - @php - $item_array = explode('=', $observation); //i.e[temp,44] - $counter++; - @endphp - @if($counter >= 9) - - - - - @if(check_if_episode_is_a_followup($episode->id)) - @foreach($parent_observation_array as $parent_observation) - @php - $parent_item_array = isset($parent_triage_details) ? explode('=', $parent_observation) : []; - @endphp - @if($item_array[0] == $parent_item_array[0]) - - @endif - @endforeach - @endif - - @endif - @endforeach - -
    {{ __('consultations.observation') }}{{ __('consultations.value') }} - {{ __('consultations.previous_value') }} -
    {{ isset($item_array[0]) ? $item_array[0] : "" }}{{ isset($item_array[1]) ? $item_array[1] : "" }} - {{ $parent_item_array[1] }} -
    -
    -
    - {{ __('consultations.comment') }}: {{ !is_null($triage) ? $triage->comments : "" }}
    - @else - {{ __('consultations.no_observations_recorded') }}
    - @endif - - {{ __('consultations.triage_done_by') }} {!! isset($triage) ? ''.\Streamline\Models\User::withTrashed()->find($triage->created_by)->first_name. " ".\Streamline\Models\User::withTrashed()->find($triage->created_by)->last_name.' on '.streamline_date_time($triage->created_at).'' : "" !!} -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    - @if(count($documents) > 0) - @foreach($documents as $document) -
  • - {{ is_null($document->title) ? substr($document->description, 0, 5) : $document->title }} ({{ streamline_date_time($document->created_at) }}) -
  • - @endforeach - @else - {{ __('consultations.no_patient_documents_available') }} - @endif - -
    - - {{ __('consultations.add_new') }} -
    -
    -
    -
    - -
    -
    - -
    -
    - @php - $used_services = \Streamline\Models\OrderedService::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $service_performed_counter = 0; - @endphp - - @if(count($used_services) > 0) -
    - - - - - - - - - - - @foreach($used_services as $service) - @php - $service_ids = explode(",", $service->service_id); - $service_quantity = explode(",", $service->quantity); - $service_performed = explode(",", $service->performed); - $service_performed_id_array = explode(",", $service->performed_id); - @endphp - - @for($i = 0; $i < count($service_ids); $i++) - - - - - - - @endfor - @endforeach - -
    {{ __('consultations.service') }}{{ __('consultations.quantity') }}{{ __('consultations.payment_status') }}Performed By
    - {{ get_name($service_ids[$i], "id", "name", "services")}} - - {{ $service_quantity[$i] }} - - {!! $service->payment_status == 0 ? "Not Paid" : "Paid" !!} - - @if($service_performed[$i] == 1) - By {{ get_full_name(get_name($service_performed_id_array[$i], 'id', 'performed_by', 'staff_performed_services'), 'id', 'first_name', 'last_name', 'users') }} - @endif -
    -
    - @else - {{ __('consultations.no_used_services') }} - @endif -
    -
    -
    -
    - -
    -
    -
    -
    -
    -

    {{ __('antenatal.previously_registered_pregnancies') }}


    -
    - - - - - - - - - - - - - - - @php $count = 1; @endphp - @if(count($last_five_pregnancies) > 0) - @foreach($last_five_pregnancies as $pregnancy) - - - - - - - - - - - @php $count++; @endphp - @endforeach - @else - - @endif - -
    Pregnancy registered onNumber of VisitsLMP DateE.D.DStatusRegistered ByActions
    {{ $count }}{{ streamline_date_time_short($pregnancy->created_at) }} - @php - $visits = \Streamline\Models\AnteNatalClinicFollowup::where(['patient_id' => $pregnancy->patient_id, 'episode_id' => $pregnancy->episode_id])->pluck('id'); - foreach ($visits as $key => $visit) { - $visit_ids[] = $visit; - } - @endphp - @if ($visits->count() > 0) - {{ Form::open(['method' => 'POST', 'route' => 'anc_visits.previous_visits', 'target' => "_blank", 'id'=>'previous_visits' ]) }} - - {{ commas($visits->count()) }} - {{ Form::close() }} - @else - 0 - @endif - {{ streamline_date_time_short($pregnancy->lmp) }}{{ streamline_date_time_short($pregnancy->edd) }}{{ !empty($pregnancy->completed)? 'Completed':'Unknown' }}{{ get_name($pregnancy->created_by, 'id', 'first_name', 'users') }} {{ get_name($pregnancy->created_by, 'id', 'last_name', 'users') }} - Details - {{-- Edit --}} -
    {{ __('antenatal.no_previously_registered_pregnancies') }}
    -
    -
    -
    -
    - -
    - @include('flash::message') - -

    {{ __('antenatal.maternity_registration_details') }}


    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - -
    {{ __('antenatal.gravida') }}{{ $anc_registration_details->gravida }}
    {{ __('antenatal.para') }}{{ $anc_registration_details->para }}
    {{ __('antenatal.abortions') }}{{ $anc_registration_details->abortion }}
    {{ __('maternity.ectopic_pregnancies') }}{{ $anc_registration_details->ectopic_pregnancies }}
    -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - -
    {{ __('antenatal.previous_pph') }}{{ __('antenatal.previous_pph_details') }}{{ __('antenatal.previous_scar') }}{{ __('antenatal.previous_scar_number') }}{{ __('antenatal.previous_scar_indication') }}
    {{ $anc_registration_details->previous_pph == 1 ? __('antenatal.yes') : __('antenatal.no') }}{{ $anc_registration_details->previous_pph_details }}{{ $anc_registration_details->previous_scar == 1 ? __('antenatal.yes') : __('antenatal.no') }}{{ $anc_registration_details->previous_scar_number }}{{ $anc_registration_details->previous_scar_indication }}
    -
    -
    -
    -
    -

    {{ __('antenatal.past_obstetric_history') }}

    -
    -
    - - - - - - - - - - - - - - @foreach($obstetric_history_details as $obstetric_history) - @php - $children =[]; - if(!empty($obstetric_history->children)) $children = json_decode($obstetric_history->children); - @endphp - - - - - - - - @if (empty($children)) - - - - @endif - - @forelse ($children as $child) - - - - - - @empty - @endforelse - @endforeach - -
    {{ __('antenatal.date') }}{{ __('antenatal.gestation') }}{{ __('antenatal.outcome') }}{{ __('antenatal.classification') }}{{ __('antenatal.delivery_type') }}{{ __('antenatal.puerperium') }}{{ __('antenatal.name') }}{{ __('antenatal.patient_number') }}{{ __('antenatal.comments') }}
    {{ streamline_date($obstetric_history->obstetric_date) }}{{ $obstetric_history->gestation }} weeks - {{ isset($anc_outcomes[$obstetric_history->outcome]) ? $anc_outcomes[$obstetric_history->outcome] : "" }} - @if ($obstetric_history->outcome == '5') : - @if ($obstetric_history->abortion_outcome == '1') - {{ __('antenatal.below_12') }} - @elseif ($obstetric_history->abortion_outcome == '2') - {{ __('antenatal.12_and_above') }} - @endif - @endif - - @if ($obstetric_history->classification == '1') - {{ __('antenatal.premature') }} - @elseif ($obstetric_history->classification == '2') - {{ __('antenatal.fullterm') }} - @endif - - @if ($obstetric_history->delivery_type == '1') - {{ __('antenatal.vaginal_delivery') }} - @elseif ($obstetric_history->delivery_type == '2') - {{ __('antenatal.vacuum_delivery') }} - @elseif ($obstetric_history->delivery_type == '3') - {{ __('antenatal.forceps_delivery') }} - @elseif ($obstetric_history->delivery_type == '4') - {{ __('antenatal.c_section') }} - @elseif ($obstetric_history->delivery_type == '5') - {{ __('antenatal.vbac') }} - @endif - {{ $obstetric_history->puerperium }}
    {{ $child->name }}{{ $child->patient_number }}{{ $child->health_condition }}
    -
    -
    -
    -
    -
    -

    {{ __('antenatal.this_pregnancy') }}

    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - -
    {{ __('antenatal.lmp') }}{{ streamline_date($anc_registration_details->lmp) ?? '' }}
    {{ __('antenatal.accuracy') }}{{ $accuracies[$anc_registration_details->accuracy] ?? '' }}
    {{ __('antenatal.edd') }}{{ streamline_date($anc_registration_details->edd)?? '' }}
    {{ __('antenatal.woa_weeks') }}{!! $anc_registration_details->woa_weeks?? '' !!}
    -
    -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - -
    {{ __('antenatal.complications') }} - @php - $complications = explode(',', $anc_registration_details->complications); - @endphp - @if (!empty($complications)) - @if (in_array(1,$complications))
  • {{ __('antenatal.bleeding') }}
  • @endif - @if (in_array(2,$complications))
  • {{ __('antenatal.excessive_vomiting') }}
  • @endif - @if (in_array(3,$complications))
  • {{ __('antenatal.others') }} : {{ $anc_registration_details->other_complications }}
  • @endif - - @else - None - @endif -
    Recent Hospital Visits - @if ($anc_registration_details->hospital_visits == 1) - Reason : {{ $anc_registration_details->hospital_visit_reason }} - @else - None - @endif -
    {{ __('antenatal.referral_from') }} {{ $referrals[$anc_registration_details->referral_from] }}
    -
    -
    -
    -
    -
    -
    -
    -

    {{ __('antenatal.mother_history') }}

    -
    -
    -
    -
    -
    -

    {{ __('antenatal.menstrual_history') }}

    -
    - - - - - - - - - - - - - - - - @if (!empty($mother_history->date_discontinued)) - - - @endif - - - @if (!empty($mother_history->why_stop_family_planning)) - - - @endif - - -
    {{ __('antenatal.menses_length') }}
  • {{ $mother_history->menses_length?? '' }}
  • {{ __('antenatal.menses_amount') }}
  • - @php - $menses = ['' => __('antenatal.select'), '1' => __('antenatal.heavy'), '2' => __('antenatal.normal')]; - if(!empty($mother_history->menses_amount)) echo $menses[$mother_history->menses_amount]; - @endphp
  • -
    {{ __('antenatal.family_planning') }} - @php - $methods = !empty($mother_history->family_planning)? explode(',', $mother_history->family_planning):[]; - @endphp - @foreach ($methods as $method) -
  • {{ $family_planning_methods[$method] }}
  • - @endforeach -
    Date Discontinued
  • {{ streamline_date($mother_history->date_discontinued) }}
  • Why?
  • {{ $mother_history->why_stop_family_planning }}
  • -
    -
    -
    -
    -
    -

    {{ __('antenatal.medical_history') }}

    - @php - $medical_presentations = !empty($mother_history->medical_presentations)? explode(',', $mother_history->medical_presentations):[]; - $any_medications = !empty($mother_history->any_medications)? explode(',', $mother_history->any_medications):[]; - $surgical_history =!empty($mother_history->surgical_history)? explode(',', $mother_history->surgical_history):[]; - $obs_gyn =!empty($mother_history->obs_gyn)? explode(',', $mother_history->obs_gyn):[]; - $family_history =!empty($mother_history->family_history)? explode(',', $mother_history->family_history):[]; - $fractures =!empty($mother_history->fractures)? explode(',', $mother_history->fractures):[]; - $fracture_details = !empty($mother_history->fracture_details)? json_decode($mother_history->fracture_details, true):[]; - $uterine_surgeries = !empty($mother_history->uterine_surgeries)? json_decode($mother_history->uterine_surgeries, true):[]; - $other_surgeries = !empty($mother_history->other_surgeries)? json_decode($mother_history->other_surgeries, true):[]; - $condition_names = [ - 1=> __('antenatal.sti'), 2=> __('antenatal.cardiac_disease'), 3=> __('antenatal.asthma'), 4=> __('antenatal.sickel_cell'), 5=> __('antenatal.kidney_disease'), - 6=> __('antenatal.diabetes'), 7=> __('antenatal.hypertension'), 8=> __('antenatal.ted'), 9=> __('antenatal.epilepsy'), 10=> __('antenatal.tb'),11=> __('antenatal.polio'), - 12=> __('antenatal.anaemia'), 13=> __('antenatal.herpes'), 14=> __('antenatal.hiv'), 15=> __('antenatal.oral_thrush'), 16=> __('antenatal.l_glands'), - 17=> __('antenatal.herpes_simplex'), 18=> __('antenatal.dermatitis'), 19=> __('antenatal.others') - ]; - @endphp -
    - - - - - - - - - - - - - - - -
    - Previous Presentations - -
      - @forelse ($medical_presentations as $previous_medical_condition) - @if ($previous_medical_condition == 19) -
    • {{ $condition_names[$previous_medical_condition]?? '' }}: {{ $mother_history->medical_presentations_others_input }}
    • - @else -
    • {{ $condition_names[$previous_medical_condition]?? '' }}
    • - @endif - @empty - None - @endforelse -
    -
    Present Medication - @if (!empty($any_medications)) - @if (in_array(1,$any_medications))
  • {{ __('antenatal.arv') }}
  • @endif - @if (in_array(2,$any_medications))
  • {{ __('antenatal.others') }} : {{ $mother_history->other_any_medications }}
  • @endif - @else - None - @endif -
    {{ __('antenatal.surgical_history') }} - @if (!empty($surgical_history)) - @if (in_array(1,$surgical_history))
  • {{ __('antenatal.operations') }} : {{ $mother_history->surgical_history_operations }}
  • @endif - @if (in_array(2,$surgical_history))
  • {{ __('antenatal.blood_transfusion') }} had : {{ $mother_history->surgical_history_blood_transfusion }}
  • @endif - @else - None - @endif -
    -
    -
    -
    -
    -
    -

    Other Information

    -
    - - - - - - - - - - - - - - - -
    {{ __('antenatal.family_history') }} - @if (!empty($family_history)) - @if (in_array(1,$family_history))
  • {{ __('antenatal.diabetes') }}
  • @endif - @if (in_array(2,$family_history))
  • {{ __('antenatal.sickel_cell') }}
  • @endif - @if (in_array(3,$family_history))
  • {{ __('antenatal.hypertension') }}
  • @endif - @if (in_array(4,$family_history))
  • {{ __('antenatal.twins') }}
  • @endif - @if (in_array(5,$family_history))
  • {{ __('antenatal.others') }}
  • @endif - @else - None - @endif -
    Risk of {{ __('antenatal.sgbv') }} - @if (!empty($mother_history->sgbv) && $mother_history->sgbv == 1) - @php - $risks =!empty($mother_history->sgbv_risk)? explode(',', $mother_history->sgbv_risk):[]; - @endphp - @foreach ($risks as $risk) -
  • {{ $gender_based_violence[$risk] ?? '' }}
  • - @endforeach - @else -
  • No
  • - @endif -
    {{ __('antenatal.husband_health') }}
  • {{ $mother_history->husband_health?? '' }}
  • -
    -
    -
    -

    -
    -
    -
    - - - - - - - - @forelse ($fractures as $fracture) - - @php - if (!empty($fracture_details[$fracture-1]['date'])) { - $date = Carbon\Carbon::createFromFormat('d/m/Y', $fracture_details[$fracture-1]['date'])->toDateString(); - } - @endphp - - - - - @empty - - @endforelse - -
    {{ __('antenatal.fractures') }}{{ __('antenatal.date') }}{{ __('antenatal.details') }}
    - @if ($fracture == 1) - {{ __('antenatal.pelvis') }} - @elseif ($fracture == 2) - {{ __('antenatal.spine') }} - @elseif ($fracture == 3) - {{ __('antenatal.femur') }} - @endif - {{ !empty($date) ? streamline_date($date) : '' }}{{ $fracture_details[$fracture-1]['details']?? '' }}
    No {{ __('antenatal.fractures') }} Recorded
    -
    -
    -
    -
    -

    {{ __('antenatal.surgical_history') }}

    -
    -
    -
    - - - - - - - - - - @forelse ($uterine_surgeries as $uterine_operation) - - @php - if (!empty($uterine_operation['date'])) { - $uterine_operation_date = Carbon\Carbon::createFromFormat('d/m/Y',$uterine_operation['date'])->toDateString(); - } - @endphp - - - - - @empty - - @endforelse - -
    {{ __('antenatal.uterus_operations') }}{{ __('antenatal.date') }}{{ __('antenatal.facility_name') }}
    {{ $uterine_operation['name']?? '' }}{{ streamline_date($uterine_operation_date)?? '' }}{{ $uterine_operation['facility_name']?? '' }}
    {{ __('antenatal.uterus_operations') }} Not Recorded
    -
    -
    - - - - - - - - @forelse ($other_surgeries as $key => $other_surgery) - @php - if (!empty($other_surgery['date'])) { - $other_surgery_date = Carbon\Carbon::createFromFormat('d/m/Y',$other_surgery['date'])->toDateString(); - } - @endphp - - - - - - @empty - - @endforelse - -
    Other {{ __('antenatal.operations') }}{{ __('antenatal.date') }}{{ __('antenatal.facility_name') }}
    {{ $other_surgery['name']?? '' }}{{ streamline_date($other_surgery_date)?? '' }}{{ $other_surgery['facility_name']?? '' }}
    Other {{ __('antenatal.operations') }} Not Recorded
    -
    -
    - -
    -
    -
    -

    {{ __('antenatal.blood_group') }}

    -

    {{ !empty($anc_blood_transfusion_details_collection[0]->blood_group_id)? $blood_groups[$anc_blood_transfusion_details_collection[0]->blood_group_id] : 'Unknown' }}

    -
    - -
    - {{ __('antenatal.blood_transfusion') }} -
    - - - - - - - - - - @forelse($anc_blood_transfusion_details_collection as $anc_blood_transfusion) - - - - - - @empty - - @endforelse - -
    {{ __('antenatal.date') }}{{ __('antenatal.number_of_units') }}{{ __('antenatal.comments') }}
    {{ !empty($anc_blood_transfusion->transfusion_date)?streamline_date($anc_blood_transfusion->transfusion_date):'' }} {{ $anc_blood_transfusion->number_of_units }}{{ $anc_blood_transfusion->comments }}
    No Blood Transfunsions recorded
    -
    -
    - -
    - - - - - - - - - - - - - @if (empty($anc_vdrl_details->vdrl_result) && empty($anc_vdrl_details->vdrl_date) && empty( $anc_vdrl_details->vdrl_location)) - - @else - - - - @endif - - - - @if (empty($anc_vdrl_details->hiv_result) && empty($anc_vdrl_details->hiv_date) && empty( $anc_vdrl_details->hiv_location)) - - @else - - - - @endif - - -
    {{ __('antenatal.result') }}{{ __('antenatal.date') }}{{ __('antenatal.location') }}
    {{ __('antenatal.vdrl_status') }}{{ __('antenatal.vdrl_status') }} Not Recorded{{ $anc_vdrl_details->vdrl_result?? '' }}{{ !empty($anc_vdrl_details->vdrl_date)? streamline_date($anc_vdrl_details->vdrl_date):'' }}{{ $anc_vdrl_details->vdrl_location?? '' }}
    {{ __('antenatal.hiv_status') }}{{ __('antenatal.hiv_status') }} Not Recorded{{ isset($anc_vdrl_details->hiv_result)? $hiv_statuses[$anc_vdrl_details->hiv_result]:'' }} - @if (isset($anc_vdrl_details->hiv_result) && $anc_vdrl_details->hiv_result == '1')
    - {{ __('antenatal.art_treatment_number') }}: {{ $anc_vdrl_details->art_treatment_number }}
    - {{ __('antenatal.art_treatment_center') }}: {{ $anc_vdrl_details->art_treatment_center }} - @endif -
    {{ !empty($anc_vdrl_details->hiv_date)? streamline_date($anc_vdrl_details->hiv_date):'' }}{{ $anc_vdrl_details->hiv_location?? '' }}
    -
    -
    -
    - -
    -
    -
    -

    {{ __('consultations.ordered_investigations') }}

    -
    - - - - - - - - - - - - - @if(count($investigation_results) > 0) - - @if(check_if_episode_is_a_followup($episode->id)) - - - - @endif - - @foreach($investigation_results as $result) - @php - $investigation_ids_array = explode(',', $result->investigation_id); - - // authentication of investigations - $per_investigation_array = explode(',', $result->per_investigation); - - $comments = explode(",", $result->comment); - $results_values = explode(",", $result->value); - @endphp - - @for($i = 0 ; $i < count($investigation_ids_array) ; $i++) - @php - $investigation = \Streamline\Models\Investigation::withTrashed()->find($investigation_ids_array[$i]); - @endphp - @if($investigation) - @if($investigation->type == 1 && isset($results_values[$i])) - - - - - @php - $specialised_results = \Streamline\Models\InvestigationSpecialisedResult::where('id', $results_values[$i])->first(); - - if($specialised_results){ - $variable_id_array = explode(',', $specialised_results->specialised_variable_id); - - $variable_value_array = explode(',', $specialised_results->value); - - $variable_comment_array = explode(',', $specialised_results->comment); - - $variable_normal_range_array = explode(',', $specialised_results->normal_ranges); - } - @endphp - @if($specialised_results) - @for($x = 0; $x < count($variable_id_array); $x++) - - - - - - - - @endfor - @endif - - @elseif($investigation->slug == 'echo' && $results_values[$i] == "") - - - - - @else - - - - - - - - @endif - @endif - @endfor - - - - @endforeach - @elseif(count($ordered_investigations) > 0) - - @if(check_if_episode_is_a_followup($episode->id)) - - - - @endif - - @foreach($ordered_investigations as $investigation) - @php $investigation_ids_array = explode(',', $investigation->investigation_id); @endphp - @for($i = 0 ; $i < count($investigation_ids_array) ; $i++) - @php - $investigation = \Streamline\Models\Investigation::withTrashed()->find($investigation_ids_array[$i]); - @endphp - - @if($investigation) - @if($investigation->slug == 'echo') - - - - - @else - - - - - - - - @endif - @endif - @endfor - @endforeach - @else - - - - @endif - -
    {{ __('investigations.investigation_name') }}{{ __('investigations.results') }}{{ __('investigations.normal_ranges') }}{{ __('investigations.unit') }}{{ __('investigations.comment') }}
    {{ __('consultations.investigation_for_review') }} ({{ streamline_date($episode->created_at)}})
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif -
    {{ get_name($variable_id_array[$x], 'id', 'name', 'investigation_specialised_variables') }}{{ $variable_value_array[$x] }} - @if(get_name($variable_id_array[$x], 'id', 'range_type', 'investigation_specialised_variables') == 1) - - {{ get_dynamic_normal_range_specialized($variable_id_array[$x], get_patient_age_group($patient_id), get_name($patient_id, 'id', 'gender', 'patients')) }} - @else - {{ get_name($variable_id_array[$x], 'id', 'normal_ranges', 'investigation_specialised_variables') }} - @endif - - @if(get_name(get_name($variable_id_array[$x], 'id', 'units', 'investigation_specialised_variables'), 'id', 'name', 'unit_of_measure') != "N/A") - {{ get_name(get_name($variable_id_array[$x], 'id', 'units', 'investigation_specialised_variables'), 'id', 'name', 'unit_of_measure') }} - @endif - {{ $variable_comment_array[$x] }}
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - - View Results - -
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - @if($per_investigation_array[$i] == 0) - {{ __("consultations.pending") }} - @else - {{ isset($results_values[$i]) ? $results_values[$i] : "" }} - @endif - - @if($investigation->range_type == 1) - {{ get_dynamic_normal_range($investigation->id, get_patient_age_group($patient_id), get_name($patient_id, 'id', 'gender', 'patients')) }} - @else - {{ $investigation->normal_ranges }} - @endif - - {{ get_name(get_name($investigation->id, 'id', 'units', 'investigations'),'id', 'name', 'unit_of_measure') }} - - {!! $per_investigation_array[$i] == 0 ? '{{ __("consultations.pending") }}' : ($comments[$i] ?? '') !!} -
    {{ __('consultations.authenticated_by') }}{{ get_name($result->authenticated_by, 'id', 'first_name', 'users')}} {{ get_name($result->authenticated_by, 'id', 'last_name', 'users')}}
    {{ __('consultations.investigation_for_review') }} ({{ streamline_date($episode->created_at)}})
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - @if(($cardio_echo)) - - View results - - @else - Pending - @endif -
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - {{ __('consultations.pending') }} - @if($investigation->range_type == 1) - {{ get_dynamic_normal_range($investigation->id, get_patient_age_group($patient_id), get_name($patient_id, 'id', 'gender', 'patients')) }} - @else - {{ $investigation->normal_ranges }} - @endif - - {{ $investigation->comments }} -
    {{ __('consultations.investigation_not_ordered') }} {{ check_if_episode_is_a_followup($episode->id) ? __('consultations.during_current_review') : '' }}.
    -
    -
    -
    -

    {{ __('consultations.ordered_sundries') }}

    -
    - - - - - - - - - @if(count($ordered_sundries) > 0) - - @if(check_if_episode_is_a_followup($episode->id)) - - - - @endif - - @foreach($ordered_sundries as $ordered_sundry) - @php - $sundry_ids = explode(",", $ordered_sundry->sundries_id); - $sundry_quantity = explode(",", $ordered_sundry->quantity); - @endphp - - @for($i = 0; $i < count($sundry_ids); $i++) - - - - - @endfor - @endforeach - @else - - - - @endif - -
    {{ __('consultations.SUNDRY') }}{{ __('consultations.QUANTITY') }}
    {{ __('consultations.sundries_for_episode_review') }} ({{ streamline_date($episode->created_at)}})
    {{ get_name($sundry_ids[$i], 'id', 'name', 'sundries') }} {!! $sundry_quantity[$i] !!}
    {{ __('consultations.no_sundries_ordered') }} {{ check_if_episode_is_a_followup($episode->id) ? __('consultations.during_current_review') : '' }}.
    -
    -
    -
    -
    - -
    -
    -
    -

    {{ __('consultations.treatment_given') }}

    -
    - - - - - - - - - - - - - @if(count($treatments) > 0) - @if(check_if_episode_is_a_followup($episode->id)) - - - - @endif - - @foreach($treatments as $treatment) - @php - $drugs_array = explode(",", $treatment->drugs); - $dosage_array = explode(",", $treatment->doses); - $dosage2_array = explode(",", $treatment->dose2); - $frequencies_array = explode(",", $treatment->frequencies); - $duration_array = explode(",", $treatment->durations); - $quantity_dispensed_array = explode(",", $treatment->quantities_dispensed); - $instructions_array = explode(",", $treatment->instruction); - $purchased_elsewhere_array = is_null($treatment->purchased_elsewhere) ? [] : explode(",", $treatment->purchased_elsewhere); - @endphp - @for($x = 0; $x < count($drugs_array); $x++) - @php - $frequency_name = get_name($frequencies_array[$x], 'id', 'name', 'dosage_frequencies'); - $unit = get_name($drugs_array[$x], 'id', 'name', 'drug_units'); - $unit = $unit=="N/A"?"":$unit; - $drug_unit = "" . $unit . ""; - $dose2 = (empty($dosage2_array[$x])) ? "" : " | " . $dosage2_array[$x] . $drug_unit; - @endphp - - - - - - @if(isset($purchased_elsewhere_array[$x]) && $purchased_elsewhere_array[$x] == 1) - - @else - @if($treatment->dispense_status == 1) - - @else - - @endif - @endif - - - @endfor - @endforeach - @else - - - - @endif - - -
    {{ __('consultations.DRUG_NAME') }}{{ __('consultations.DOSAGE') }}{{ __('consultations.DURATION') }}{{ __('consultations.QUANTITY') }}{{ __('consultations.STATUS') }}{{ __('consultations.INSTRUCTION') }}
    {{ __('consultations.treatment_for_episode_review') }} ({{ streamline_date($episode->created_at)}})
    - {{ get_name($drugs_array[$x], 'id', "name", 'drugs') }} - - @if($treatment->is_treatment_progressive != 0) - (Progressive Treatment) - @endif - {{ $dosage_array[$x] }} {!! $drug_unit !!} {{ $dose2 }}    {{ $frequency_name }}{{ $duration_array[$x] }}{{ $quantity_dispensed_array[$x] }}Purchased From Elsewhere{{ __('consultations.dispensed') }}{{ __('consultations.pending') }} - {{ isset($instructions_array[$x]) ? trim($instructions_array[$x]) : 'N/A' }} -
    {{ __('consultations.no_prescription_made_yet') }} {{ check_if_episode_is_a_followup($episode->id) ? 'during current review' : '' }}
    -
    -
    -
    -

    {{ __('consultations.ordered_procedures') }}

    -
    - - - - - - - - - - - @if(count($ordered_procedures) > 0) - @php $count = 1; $procedure_performed_counter = 0; @endphp - - @if(check_if_episode_is_a_followup($episode->id)) - - - - @endif - - @foreach($ordered_procedures as $ordered_procedure) - @php - $procedure_id = explode(",", $ordered_procedure->procedure_id); - $procedure_performed_array = explode(",", $ordered_procedure->performed); - $procedure_performed_id_array = explode(",", $ordered_procedure->performed_id); - @endphp - - @for($i = 0; $i < count($procedure_id); $i++) - - - - - - @endfor - @endforeach - @else - - - - @endif - - -
    {{ __('consultations.PROCEDURE') }}{{ __('consultations.STATUS') }}{{ __('consultations.PERFORMED') }}
    {{ __('consultations.procedures_for_episode_review') }} ({{ streamline_date($episode->created_at)}})
    - {{ get_name($procedure_id[$i], 'id', 'name', 'procedures') }} - - {!! $procedure_performed_array[$i] == 1 ? ''.__("consultations.performed").'' : ''. __("consultations.pending").'' !!} - - @if($procedure_performed_array[$i] == 1) - By {{ get_full_name(get_name($procedure_performed_id_array[$i], 'id', 'performed_by', 'staff_performed_services'), 'id', 'first_name', 'last_name', 'users') }} - @endif -
    {{ __('consultations.no_procedure_has_been_ordered') }} {{ check_if_episode_is_a_followup($episode->id) ? __('consultations.during_current_review') : '' }}.
    -
    -
    -
    -
    - -
    -
    -
    -

    {{ __('antenatal.comments') }}

    -

    {{ $anc_registration_details->general_comments?? '' }}

    -
    -
    -
    - -
    -
    - -@endsection - -@push('scripts') - - -@endpush diff --git a/docker/statistics/Modules/Antenatal/Routes/api.php b/docker/statistics/Modules/Antenatal/Routes/api.php deleted file mode 100644 index fcc876e8..00000000 --- a/docker/statistics/Modules/Antenatal/Routes/api.php +++ /dev/null @@ -1,18 +0,0 @@ -get('/antenatal', function () { - return "Antenatal"; -}); diff --git a/docker/statistics/Modules/Antenatal/Routes/web.php b/docker/statistics/Modules/Antenatal/Routes/web.php deleted file mode 100644 index 9e88d20e..00000000 --- a/docker/statistics/Modules/Antenatal/Routes/web.php +++ /dev/null @@ -1,29 +0,0 @@ - ['auth', 'disablebackbutton', 'user-locale','subscription-tracking', 'password-expiry']], function () { - /* Ante Natal Clinic Controller */ - Route::get('ante_natal_clinic/route', 'AnteNatalClinicController@route'); - Route::resource('ante_natal_clinic', 'AnteNatalClinicController'); - Route::get('ante_natal_clinic_menu', 'AnteNatalClinicController@menu'); - Route::get('ante_natal_clinic_follow_up/create', 'AnteNatalClinicController@antenatal_visit'); - Route::post('store_anc_template', 'AnteNatalClinicController@store_anc_template')->name('ante_natal_clinic.store_template'); - Route::get('ante_natal_clinic_follow_up/{id}', 'AnteNatalClinicController@view_antenatal_visit'); - Route::get('check_if_pregnancy_is_registered', 'AnteNatalClinicController@check_anc_registration'); - Route::get('ante_natal_clinic_follow_up', 'AnteNatalClinicController@index_visits'); - Route::any('update_anc_template/{id}', 'AnteNatalClinicController@update_anc_template')->name('ante_natal_clinic.update_anc_template'); - Route::any('/anc_visits/view_history/{id}', 'AnteNatalClinicController@view_anc_visit_details')->name('anc_visits.view_anc_details'); - Route::any('anc_visits/{id}/edit', 'AnteNatalClinicController@edit_anc_visit')->name('anc_visit.edit'); - Route::post('previously_registered_pregnancy_anc_visits', 'AnteNatalClinicController@previously_registered_pregnancy_anc_visits')->name('anc_visits.previous_visits'); - - Route::post('calculate_edd_from_lmp', 'AnteNatalClinicController@calculate_edd_from_lmp')->name('ante_natal_clinic.calculate_edd_from_lmp'); - Route::post('calculate_woa_weeks_from_lmp', 'AnteNatalClinicController@calculate_woa_weeks_from_lmp')->name('ante_natal_clinic.calculate_woa_weeks_from_lmp'); - Route::get('antenatal_card', 'AnteNatalClinicController@antenatal_card')->name('ante_natal_clinic.antenatal_card'); - - Route::any('anc_visit_for_existing_pregnancy', 'AnteNatalClinicController@anc_visit_for_existing_pregnancy')->name('anc.anc_visit_for_existing_pregnancy'); - Route::any('/ante_natal_clinic/add_uterus_operation', 'AnteNatalClinicController@add_uterus_operation')->name('ante_natal_clinic.add_uterus_operation'); - Route::any('/ante_natal_clinic/add_gender_based_violence', 'AnteNatalClinicController@add_gender_based_violence')->name('ante_natal_clinic.add_gender_based_violence'); - Route::any('/ante_natal_clinic/add_caesarian_section', 'AnteNatalClinicController@add_caesarian_section')->name('ante_natal_clinic.add_caesarian_section'); - Route::post('/ante_natal_clinic/add_family_planning_method', 'AnteNatalClinicController@add_family_planning_method')->name('ante_natal_clinic.add_family_planning_method'); -}); \ No newline at end of file diff --git a/docker/statistics/Modules/Antenatal/bitbucket-pipelines.yml b/docker/statistics/Modules/Antenatal/bitbucket-pipelines.yml deleted file mode 100644 index e850a8fd..00000000 --- a/docker/statistics/Modules/Antenatal/bitbucket-pipelines.yml +++ /dev/null @@ -1,19 +0,0 @@ -image: alpine/git:latest - -pipelines: - branches: - main: - - step: - name: Merge To Beta - script: - - git remote set-url origin https://Kabricks:${APP_SECRET}@bitbucket.org/dcsammi/${BITBUCKET_REPO_SLUG} - - git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*" - - git fetch - - git checkout beta - - git merge main - - git commit --amend -m "[skip ci] Merge changes from main" - - git push - - step: - name: Deploy To Test - script: - - echo "Ready to deploy to demo or production!" diff --git a/docker/statistics/Modules/Antenatal/module.json b/docker/statistics/Modules/Antenatal/module.json deleted file mode 100644 index 6d4c2550..00000000 --- a/docker/statistics/Modules/Antenatal/module.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "Antenatal", - "alias": "antenatal", - "description": "Antenatal Clinic", - "keywords": [], - "priority": 0, - "providers": [ - "Modules\\Antenatal\\Providers\\AntenatalServiceProvider" - ], - "files": [] -} diff --git a/docker/statistics/Modules/Banking/Config/config.php b/docker/statistics/Modules/Banking/Config/config.php deleted file mode 100644 index e6c623d3..00000000 --- a/docker/statistics/Modules/Banking/Config/config.php +++ /dev/null @@ -1,5 +0,0 @@ - 'Banking' -]; diff --git a/docker/statistics/Modules/Banking/Http/Controllers/BankingController.php b/docker/statistics/Modules/Banking/Http/Controllers/BankingController.php deleted file mode 100755 index ab5f6488..00000000 --- a/docker/statistics/Modules/Banking/Http/Controllers/BankingController.php +++ /dev/null @@ -1,1156 +0,0 @@ -middleware('auth'); - $this->middleware('permission:banking-make-deposit'); - $this->middleware('permission:banking-make-transfers'); - $this->middleware('permission:banking-view-history'); - } - - public function register(Request $request) - { - $records = []; - $bank = $request->bank; - $staff_members = User::get(); - $display = bank_register_label_setter($request); - $today = Carbon::today()->toDateString(); - $banks = ChartOfAccount::where('type', 4)->get(); - $yesterday = Carbon::yesterday()->toDateString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $orderByTransIdQuery = "CAST(trans_id AS DECIMAL(10,0)) ASC"; - if ($request->staff_member == "ALL STAFF") { - switch ($request->dates) { - case 'today': - $records = DB::table('banking')->whereNull('deleted_at')->whereDate('trans_date', $today)->where('bank', $request->bank) - ->orderBy('trans_date', 'asc') - ->orderByRaw($orderByTransIdQuery) - ->get(); - break; - case 'yesterday': - $records = DB::table('banking')->whereNull('deleted_at')->whereDate('trans_date', $yesterday)->where('bank', $request->bank) - ->orderBy('trans_date', 'asc') - ->orderByRaw($orderByTransIdQuery) - ->get(); - break; - case 'custom_date': - $records = DB::table('banking')->whereNull('deleted_at')->whereDate('trans_date', $start)->where('bank', $request->bank) - ->orderBy('trans_date', 'asc') - ->orderByRaw($orderByTransIdQuery) - ->get(); - break; - case 'custom_date_range': - $records = DB::table('banking')->whereNull('deleted_at')->whereBetween('trans_date', [$start, $end])->where('bank', $request->bank) - ->orderBy('trans_date', 'asc') - ->orderByRaw($orderByTransIdQuery) - ->get(); - break; - } - } else { - switch ($request->dates) { - case 'today': - $records = DB::table('banking')->whereNull('deleted_at')->where('created_by', $request->staff_member)->whereDate('trans_date', $today) - ->where('bank', $request->bank) - ->orderBy('trans_date', 'asc') - ->orderByRaw($orderByTransIdQuery) - ->get(); - break; - case 'yesterday': - $records = DB::table('banking')->whereNull('deleted_at')->where('created_by', $request->staff_member)->whereDate('trans_date', $yesterday) - ->where('bank', $request->bank) - ->orderBy('trans_date', 'asc') - ->orderByRaw($orderByTransIdQuery) - ->get(); - break; - case 'custom_date': - $records = DB::table('banking')->whereNull('deleted_at')->where('created_by', $request->staff_member)->whereDate('trans_date', $start) - ->where('bank', $request->bank) - ->orderBy('trans_date', 'asc') - ->orderByRaw($orderByTransIdQuery) - ->get(); - break; - case 'custom_date_range': - $records = DB::table('banking')->whereNull('deleted_at')->where('created_by', $request->staff_member)->whereBetween('trans_date', [$start, $end]) - ->where('bank', $request->bank) - ->orderBy('trans_date', 'asc') - ->orderByRaw($orderByTransIdQuery) - ->get(); - break; - } - } - return view('banking::banking.register', compact('records', 'display', 'staff_members', 'banks', 'bank')); - } - - public function reconcile(Request $request) { - $orderByTransIdQuery = "CAST(trans_id AS DECIMAL(10,0)) ASC"; - $bank = $request->bank; - $banks = ChartOfAccount::where('type', 4)->where('id', '!=', 10)->get(); - $reconciliation_date = Carbon::parse($request->reconciliation_date)->endOfDay()->toDateTimeString(); - $beginning_of_month = Carbon::parse($request->reconciliation_date)->startOfMonth()->toDateTimeString(); - $income_expense_accounts = DB::table('chart_of_accounts')->whereNull('deleted_at')->whereIn('type', [1, 2])->orderBy('name', 'asc')->get(); - - $banking_records = Banking::whereBetween('trans_date', [$beginning_of_month, $reconciliation_date])->where('bank', $request->bank)->where('reconciled',0)->orderBy('trans_date', 'asc')->orderByRaw($orderByTransIdQuery)->get(); - - $display = bank_reconciliation_label_setter($request->bank, $beginning_of_month, $reconciliation_date); - $reconciliation_end_date = $reconciliation_date; - $reconciliation_reports = BankReconciliationReport::where('bank', $request->bank)->get(); - - $option_accounts = ""; - foreach ($income_expense_accounts as $account) { - $option_accounts .= ""; - } - - return view('banking::banking.reconcile.index', compact('banking_records', 'display', 'banks', 'bank', 'request', 'reconciliation_end_date', 'income_expense_accounts', 'reconciliation_reports', 'option_accounts')); - } - - public function finish_adjustment(Request $request) { - DB::beginTransaction(); - $logged_in_user = Auth::id(); - $reconciliation_period = Carbon::parse($request->reconciliation_period)->toDateString(); - $memo = 'bank reconciliation adjustment'; - - try{ - // track the receipt - $track_receipt = new TrackReceipt; - $track_receipt->reason = $memo; - $track_receipt->created_by = $logged_in_user; - $track_receipt->save(); - $receipt_number = sprintf("%04u", $track_receipt->id); - - if ($request->amount < 0) { - // Post PAYMENT in banking table - $bank_record = new Banking; - $bank_record->trans_type = 'PAYMENT'; - $bank_record->trans_date = $reconciliation_period; - $bank_record->bank = $request->bank; - $bank_record->other_accounts = $request->account; - $bank_record->account_balance = $request->ending_balance; - $bank_record->credit = 0; - $bank_record->debit = abs($request->amount); - $bank_record->memo = $memo; - $bank_record->trans_id = $receipt_number; - $bank_record->created_by = Auth::id(); - $bank_record->reconciliation_adjustment = 1; - $bank_record->save(); - - $last_insert_id = $bank_record->id; - - // recursively update balances for the undeposited funds account - update_banking_record_balances($reconciliation_period, $request->bank, $last_insert_id, $request->ending_balance); - - // Save entry to Payment table - $payment = new Payment; - $payment->item_id = ""; - $payment->vendor = "N/A"; - $payment->unit_cost = abs($request->amount); - $payment->amount = abs($request->amount); - $payment->quantity = 1; - $payment->memo = $memo; - $payment->account_balance = $request->ending_balance; - $payment->transaction_id = $receipt_number; - $payment->account_id = $request->bank; - $payment->created_by = $logged_in_user; - $payment->expense_date = Carbon::parse($request->reconciliation_period)->toDateTimeString(); - $payment->expense_account = $request->account; - - $payment->save(); - } else { - $bank_account_balance_record_on_deposit_date = get_latest_banking_record_based_on_transaction_date($request->bank, $reconciliation_period); - $bank_account_balance = $bank_account_balance_record_on_deposit_date ? (int)$bank_account_balance_record_on_deposit_date->account_balance : 0; - - // add the deposit amount to undeposited funds. - $this_bank_balance_after_deposit = ($bank_account_balance + $request->amount); - - // Post DEPOSIT in banking table - $bank_record = new Banking; - $bank_record->trans_type = 'DEPOSIT'; - $bank_record->trans_date = $reconciliation_period; - $bank_record->bank = $request->bank; - $bank_record->other_accounts = $request->account; - $bank_record->account_balance = $this_bank_balance_after_deposit; - $bank_record->credit = $request->amount; - $bank_record->debit = 0; - $bank_record->memo = $memo; - $bank_record->trans_id = $receipt_number; - $bank_record->created_by = Auth::id(); - $bank_record->reconciliation_adjustment = 1; - $bank_record->save(); - - $last_insert_id = $bank_record->id; - - // recursively update balances for the undeposited funds account - update_banking_record_balances($reconciliation_period, $request->bank, $last_insert_id, $this_bank_balance_after_deposit); - - // Save entry to OtherIncome table - $other_income = new OtherIncome; - $other_income->income_account = $request->account; - $other_income->deposit_amount = $request->amount; - $other_income->banked_amount = $request->amount; - $other_income->deposit_date = $reconciliation_period; - $other_income->deposit_memo = $memo; - $other_income->trans_id = $receipt_number; - $other_income->created_by = $logged_in_user; - $other_income->save(); - } - DB::commit(); - return 'success'; - } catch (\Exception | \Throwable | \Error $e){ - DB::rollBack(); - return 'fail'; - } - } - - public function finish_with_balance(Request $request) { - $logged_in_user = Auth::id(); - $reconciliation_period = Carbon::parse($request->reconciliation_period)->toDateString(); - - // track the receipt - $track_receipt = new TrackReceipt; - $track_receipt->reason = 'bank reconciliation process concluded with discrepancy.'; - $track_receipt->created_by = $logged_in_user; - $track_receipt->save(); - $receipt_number = sprintf("%04u", $track_receipt->id); - - $bank_record = new Banking; - $bank_record->trans_type = 'DEPOSIT'; - $bank_record->trans_date = $reconciliation_period; - $bank_record->bank = $request->bank; - $bank_record->other_accounts = $request->bank; - $bank_record->account_balance = $request->ending_balance; - $bank_record->credit = 0; - $bank_record->debit = 0; - $bank_record->memo = $request->memo; - $bank_record->trans_id = $receipt_number; - $bank_record->created_by = Auth::id(); - $bank_record->reconciliation_adjustment = 1; - - if ($bank_record->save()) { - return 'success'; - } else { - return 'fail'; - } - } - - public function finish_reconciling(Request $request) { - $logged_in_user = Auth::id(); - - // clean array to remove empty values - $reconciled_records_array = $request->reconciled_trans_ids ? array_filter($request->reconciled_trans_ids) : []; - $unreconciled_trans_ids_array = $request->unreconciled_trans_ids ? array_filter($request->unreconciled_trans_ids) : []; - - $report = new BankReconciliationReport; - $report->reconciled_trans_ids = implode(',', $reconciled_records_array); - $report->unreconciled_trans_ids = implode(',', $unreconciled_trans_ids_array); - $report->opening_streamline_balance = $request->opening_streamline_balance; - $report->ending_bank_statement_balance = $request->ending_bank_statement_balance; - $report->reconciliation_period = $request->reconciliation_period; - $report->memo = $request->memo; - $report->bank = $request->bank; - $report->created_by = $logged_in_user; - $report->save(); - - for ($x = 0; $x < count($reconciled_records_array); $x++) { - Banking::where('id', $reconciled_records_array[$x])->update(['reconciled' => $report->id]); - } - - //update the last inserted banking record of this bank with the reconciled id of the report - $last_record_of_bank = Banking::where('bank',$request->bank)->where('reconciliation_adjustment', 1)->orderBy('id','desc')->first(); - - if ($last_record_of_bank) { - $last_record_of_bank->reconciled = $report->id; - $last_record_of_bank->update(); - } - - flash('Bank Reconciliation Completed Successfully.')->success(); - return redirect()->route('bank.reconciliation.report', $report->id); - } - - public function print_bank_reconciliation($id) - { - $payment_items = PaymentItem::pluck('name', 'id')->toArray(); - $chart_of_accounts = ChartOfAccount::pluck('name', 'id')->toArray(); - $report = BankReconciliationReport::find($id); - $hospital_information = HospitalInformation::first(); - $data = [ - 'payment_items' => $payment_items, - 'chart_of_accounts' => $chart_of_accounts, - 'hospital_information' => $hospital_information, - 'report' => $report, - ]; - $pdf = SnappyPDF::loadView("banking::banking/reconcile/print", $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . streamline_date(date('Y-m-d')) . ' Stre@mline'); - return $pdf->inline('Banking Reconciliation Report generated on ' . date(" d-m-y h:ia") . '.pdf'); - } - - public function bank_reconciliation_report($id) - { - $payment_items = PaymentItem::pluck('name', 'id')->toArray(); - $chart_of_accounts = ChartOfAccount::pluck('name', 'id')->toArray(); - $report = BankReconciliationReport::find($id); - return view('banking::banking.reconcile.report', compact('report', 'chart_of_accounts', 'payment_items')); - } - - public function reverse($trans_id) - { - // update account balances on banking records - $deposit = Banking::where('trans_id', $trans_id)->where('trans_type', 'DEPOSIT')->first(); - $transfer = Banking::where('trans_id', $trans_id)->where('trans_type', 'TRANSFER')->first(); - $_payment = Banking::where('trans_id', $trans_id)->where('trans_type', 'PAYMENT')->first(); - $payment = Payment::where('transaction_id', $trans_id)->first(); - - if (!is_null($deposit)) { - // foreach ($deposits as $deposit){ - $deposit_amount = (int)$deposit->credit; - $current_deposit_to_balance = Banking::where('bank', $deposit->bank)->pluck('account_balance')->first(); - $current_deposit_from_balance = Banking::where('other_accounts', $deposit->other_accounts)->pluck('account_balance')->first(); - ChartOfAccount::where('id', $deposit->bank)->update(['balance' => ((int)$current_deposit_to_balance) - (int)$deposit_amount]); - ChartOfAccount::where('id', $deposit->other_accounts)->update(['balance' => ((int)$current_deposit_from_balance) + (int)$deposit_amount]); - $trans_date = Carbon::parse($deposit->trans_date)->toDateString(); - $bank_proceeding_deposits = DB::table('banking')->whereNull('deleted_at') - ->where('trans_date', '>', $trans_date) - ->where('bank', $deposit->bank)->get(); - foreach ($bank_proceeding_deposits as $proceeding_deposit) { - Banking::where('id', $proceeding_deposit->id)->update(['account_balance' => ((int)$proceeding_deposit->account_balance - (int)$deposit_amount)]); - } - $other_accounts_proceeding_deposits = []; - $other_accounts_array = explode(',', $deposit->other_accounts); - for ($x = 0; $x < count($other_accounts_array); $x++) { - $other_accounts_proceeding_deposits[$other_accounts_array[$x]] = DB::table('banking')->whereNull('deleted_at') - ->where('trans_date', '>', $trans_date) - ->where('bank', $other_accounts_array[$x]) - ->get(); - } - foreach ($other_accounts_array as $account) { - foreach ($other_accounts_proceeding_deposits[$account] as $proceeding_deposit) { - Banking::where('id', $proceeding_deposit->id)->update(['account_balance' => ((int)$proceeding_deposit->account_balance + (int)$deposit_amount)]); - } - } - $deposit->delete(); - flash('Bank Transaction successfully reversed.')->success(); - return redirect('/banking/register'); - // } - } elseif (!is_null($transfer)) { - // foreach ($transfers as $transfer) { - $transfer_amount = (int)$transfer->debit; - $current_transfer_to_balance = ChartOfAccount::where('id', $transfer->bank)->pluck('balance')->first(); - $current_transfer_from_balance = ChartOfAccount::where('id', $transfer->other_accounts)->pluck('balance')->first(); - ChartOfAccount::where('id', $transfer->bank)->update(['balance' => ((int)$current_transfer_to_balance) + (int)$transfer_amount]); - ChartOfAccount::where('id', $transfer->other_accounts)->update(['balance' => ((int)$current_transfer_from_balance) - (int)$transfer_amount]); - $bank_proceeding_transfers = DB::table('banking')->whereNull('deleted_at') - ->where('trans_date', '>', Carbon::parse($deposit->trans_date)->toDateString()) - ->where('bank', $deposit->bank)->get(); - foreach ($bank_proceeding_transfers as $transfer) { - Banking::where('id', $transfer->id)->update(['account_balance' => ((int)$transfer->account_balance + (int)$transfer_amount)]); - } - $other_accounts_proceeding_transfers = []; - $other_accounts_array = explode(',', $transfer->other_accounts); - for ($x = 0; $x < count($other_accounts_array); $x++) { - $other_accounts_proceeding_transfers[$other_accounts_array[$x]] = DB::table('banking')->whereNull('deleted_at') - ->where('trans_date', '>', Carbon::parse($deposit->trans_date)->toDateString()) - ->where('bank', $other_accounts_array[$x]) - ->get(); - } - foreach ($other_accounts_array as $account) { - foreach ($other_accounts_proceeding_transfers[$account] as $transfer) { - Banking::where('id', $transfer->id)->update(['account_balance' => ((int)$transfer->account_balance - (int)$transfer_amount)]); - } - } - $transfer->delete(); - // update chart of account balances - flash('Bank Transaction successfully reversed.')->success(); - return redirect('/banking/register'); - // } - } elseif (!is_null($payment)) { - // foreach ($payments as $payment){ - $bank_account = $payment->account_id; - $payment_item_account = get_name($payment->item_id, 'id', 'account_id', 'payment_items'); - $payment_amount = (int)$payment->amount; - $current_transfer_to_balance = ChartOfAccount::where('id', $payment_item_account)->pluck('balance')->first(); - $current_transfer_from_balance = ChartOfAccount::where('id', $bank_account)->pluck('balance')->first(); - ChartOfAccount::where('id', $payment_item_account)->update(['balance' => ((int)$current_transfer_to_balance) - (int)$payment_amount]); - ChartOfAccount::where('id', $bank_account)->update(['balance' => ((int)$current_transfer_from_balance) + (int)$payment_amount]); - $proceeding_transactions = DB::table('banking')->whereNull('deleted_at')->where('trans_date', '>', $payment->expense_date)->get(); - foreach ($proceeding_transactions as $transaction) { - Banking::where('id', $transaction->id)->update(['account_balance' => ((int)$transaction->account_balance + (int)$payment_amount)]); - } - $payment->delete(); - $_payment->delete(); - flash('Bank Transaction successfully reversed.')->success(); - return redirect('/banking/register'); - // } - } - - // update chart of account balances - flash('Bank Transaction Reversal Failed.')->error(); - return redirect('/banking/register'); - } - - public function deposit() - { - // $orderByTransIdQuery = "CAST(trans_id AS DECIMAL(10,0)) DESC"; - // $record = DB::table('other_incomes') - // ->whereNull('deleted_at') - // ->where('income_account', '=', 200) - // ->whereDate('donation_date', '<=', Carbon::parse('2021-04-14')->toDateString()) - // ->orderBy('donation_date', 'desc') - // ->orderByRaw($orderByTransIdQuery) - // ->first(); - $hospital_information = HospitalInformation::first(); - $income_accounts = DB::table('chart_of_accounts')->whereNull('deleted_at')->where('type', 1)->get()->toArray(); - $bank_accounts = DB::table('chart_of_accounts')->whereNull('deleted_at')->where('type', 4)->orWhere('type', 9)->get()->toArray(); - $payment_methods = DB::table('patient_payment_methods')->get()->toArray(); - - return view('banking::banking.deposit', compact('bank_accounts', 'income_accounts', 'hospital_information', 'payment_methods')); - } - - public function transfer() - { - $hospital_information = HospitalInformation::first(); - $all_accounts = DB::table('chart_of_accounts')->where('type', 1)->get()->toArray(); - $banks = DB::table('chart_of_accounts')->where('type', 4)->get()->toArray(); - return view('banking::banking.transfer', compact('all_accounts', 'banks', 'hospital_information')); - } - - public function transfer_history(Request $request) - { - $staff_members = User::get(); - $display = "report for today, the " . streamline_date(Carbon::now()->toDateString()); - $today = Carbon::today()->toDateString(); - $yesterday = Carbon::yesterday()->toDateString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $chart_of_accounts = ChartOfAccount::pluck('name', 'id')->toArray(); - $transfers = []; - if ($request->staff_member == "ALL STAFF") { - $display = dateLabelSetter2($request); - switch ($request->dates) { - case 'today': - $transfers = DB::table('banking')->where('trans_type', '=', 'TRANSFER')->whereDate('created_at', $today)->get(); - break; - case 'yesterday': - $transfers = DB::table('banking')->where('trans_type', '=', 'TRANSFER')->whereDate('created_at', $yesterday)->get(); - break; - case 'custom_date': - $transfers = DB::table('banking')->where('trans_type', '=', 'TRANSFER')->whereDate('created_at', $start)->get(); - break; - case 'custom_date_range': - $transfers = DB::table('banking')->where('trans_type', '=', 'TRANSFER')->whereBetween('created_at', [$start, $end])->get(); - break; - } - } else { - $display = dateLabelSetter2($request); - switch ($request->dates) { - case 'today': - $transfers = DB::table('banking')->where('trans_type', '=', 'TRANSFER')->where('created_by', $request->staff_member)->whereDate('created_at', $today)->get(); - break; - case 'yesterday': - $transfers = DB::table('banking')->where('trans_type', '=', 'TRANSFER')->where('created_by', $request->staff_member)->whereDate('created_at', $yesterday)->get(); - break; - case 'custom_date': - $transfers = DB::table('banking')->where('trans_type', '=', 'TRANSFER')->where('created_by', $request->staff_member)->whereDate('created_at', $start)->get(); - break; - case 'custom_date_range': - $transfers = DB::table('banking')->where('trans_type', '=', 'TRANSFER')->where('created_by', $request->staff_member)->whereBetween('created_at', [$start, $end])->get(); - break; - } - } - return view('banking::banking.transfer_history', compact('transfers', 'request', 'display', 'staff_members', 'chart_of_accounts')); - } - - public function deposit_history(Request $request) - { - $staff_members = User::get(); - $display = dateLabelSetter2($request); - $today = Carbon::today()->toDateString(); - $yesterday = Carbon::yesterday()->toDateString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $chart_of_accounts = ChartOfAccount::pluck('name', 'id')->toArray(); - $deposits = []; - if ($request->staff_member == "ALL STAFF") { - switch ($request->dates) { - case 'today': - $deposits = DB::table('banking')->where('trans_type', '=', 'DEPOSIT')->whereDate('created_at', $today)->get(); - break; - case 'yesterday': - $deposits = DB::table('banking')->where('trans_type', '=', 'DEPOSIT')->whereDate('created_at', $yesterday)->get(); - break; - case 'custom_date': - $deposits = DB::table('banking')->where('trans_type', '=', 'DEPOSIT')->whereDate('created_at', $start)->get(); - break; - case 'custom_date_range': - $deposits = DB::table('banking')->where('trans_type', '=', 'DEPOSIT')->whereBetween('created_at', [$start, $end])->get(); - break; - } - } else { - switch ($request->dates) { - case 'today': - $deposits = DB::table('banking')->where('trans_type', '=', 'DEPOSIT')->where('created_by', $request->staff_member)->whereDate('created_at', $today)->get(); - break; - case 'yesterday': - $deposits = DB::table('banking')->where('trans_type', '=', 'DEPOSIT')->where('created_by', $request->staff_member)->whereDate('created_at', $yesterday)->get(); - break; - case 'custom_date': - $deposits = DB::table('banking')->where('trans_type', '=', 'DEPOSIT')->where('created_by', $request->staff_member)->whereDate('created_at', $start)->get(); - break; - case 'custom_date_range': - $deposits = DB::table('banking')->where('trans_type', '=', 'DEPOSIT')->where('created_by', $request->staff_member)->whereBetween('created_at', [$start, $end])->get(); - break; - } - } - return view('banking::banking.deposit_history', compact('deposits', 'display', 'request', 'staff_members', 'chart_of_accounts')); - } - - public function process_transfer(Request $request) - { - $validator = Validator::make($request->all(), [ - 'transfer_memo' => 'required', - 'transfer_date' => 'required', - ]); - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth::id(); - - // track the receipt - $track_receipt = new TrackReceipt; - $track_receipt->created_by = $logged_in_user_id; - $track_receipt->save(); - $trans_id = sprintf("%04u", $track_receipt->id); - - $track_receipt_update = TrackReceipt::where('id', $track_receipt->id)->first(); - $track_receipt_update->reason = "Bank Transfer of " . $trans_id; - $track_receipt_update->update(); - - // transfer date balances - $transfer_date = Carbon::parse($request->transfer_date)->toDateString(); - $to_account_balance_on_transfer_date_record = get_latest_banking_record_based_on_transaction_date($request->transfer_to, $transfer_date); - $to_account_balance_on_transfer_date = ($to_account_balance_on_transfer_date_record != null) ? (int)$to_account_balance_on_transfer_date_record->account_balance : 0; - $from_account_balance_on_transfer_date_record = get_latest_banking_record_based_on_transaction_date($request->transfer_from, $transfer_date); - $from_account_balance_on_transfer_date = ($from_account_balance_on_transfer_date_record != null) ? (int)$from_account_balance_on_transfer_date_record->account_balance : 0; - - // present day balances - $to_account_balance_today_record = get_latest_banking_record_based_on_transaction_date($request->transfer_to, Carbon::today()->toDateString()); - $to_account_balance_today = ($to_account_balance_today_record != null) ? $to_account_balance_today_record->account_balance : 0; - $from_account_balance_today_record = get_latest_banking_record_based_on_transaction_date($request->transfer_from, Carbon::today()->toDateString()); - $from_account_balance_today = ($from_account_balance_today_record != null) ? $from_account_balance_today_record->account_balance : 0; - - // update current balances - ChartOfAccount::where('id', $request->transfer_from)->update(['balance' => ($from_account_balance_today - (int)$request->transfer_amount)]); - ChartOfAccount::where('id', $request->transfer_to)->update(['balance' => ($to_account_balance_today + (int)$request->transfer_amount)]); - - // deal with from account - $from_account_balance_after_transfer = ($from_account_balance_on_transfer_date - (int)$request->transfer_amount); - $last_insert_id_from_account = capture_bank_record( - 'TRANSFER', - $transfer_date, - $request->transfer_from, - $request->transfer_to, - $from_account_balance_after_transfer, - 0, - (int)$request->transfer_amount, - $request->transfer_memo, - $trans_id - ); - - update_banking_record_balances($transfer_date, $request->transfer_from, $last_insert_id_from_account, $from_account_balance_after_transfer); - - // deal with to account - $to_account_balance_after_transfer = ($to_account_balance_on_transfer_date + (int)$request->transfer_amount); - $last_insert_id_to_account = capture_bank_record( - 'DEPOSIT', - $transfer_date, - $request->transfer_to, - $request->transfer_from, - $to_account_balance_after_transfer, - (int)$request->transfer_amount, - 0, - $request->transfer_memo, - $trans_id - ); - - update_banking_record_balances($transfer_date, $request->transfer_to, $last_insert_id_to_account, $to_account_balance_after_transfer); - - flash(" Account Transfer has been saved")->success(); - return redirect("/banking/transfer"); - } - } - - public function process_deposit(Request $request) - { - $validator = Validator::make($request->all(), [ - 'deposit_date' => 'required', - 'deposit_memo' => 'required', - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth::id(); - - $deposit_counter = 0; - - // track the receipt - $track_receipt = new TrackReceipt; - $track_receipt->reason = $request->deposit_memo; - $track_receipt->created_by = $logged_in_user_id; - $track_receipt->save(); - $trans_id = sprintf("%04u", $track_receipt->id); - - $memo_array = $request->memo; - $account_array = array_filter($request->account); - $payment_method_array = $request->payment_method; - $amount_array = $request->amount; - $total_deposit_amount = array_sum($amount_array); - - $deposit_date = Carbon::parse($request->deposit_date)->toDateString(); - $account_balance_record_on_deposit_date = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), $deposit_date); - $account_balance_on_deposit_date = ($account_balance_record_on_deposit_date != null) ? (int)$account_balance_record_on_deposit_date->account_balance : 0; - - $cashier_income = new CashierIncome; - $cashier_income->cashier_id = $logged_in_user_id; - $cashier_income->brought_by = $logged_in_user_id; - $cashier_income->expected_amount = $total_deposit_amount; - $cashier_income->reason = $request->deposit_memo; - $cashier_income->amount = $total_deposit_amount; - $cashier_income->balance = 0; - $cashier_income->receipt_number = $trans_id; - $cashier_income->previous_balance = (int)$account_balance_on_deposit_date; - $cashier_income->account_balance = (int)$account_balance_on_deposit_date + (int)$total_deposit_amount; - $cashier_income->save(); - - $cashier_income_id = $cashier_income->id; - - for ($x = 0; $x < count($account_array); $x++) { - if ($account_array[$x]) { - - $other_income = new OtherIncome; - $other_income->income_account = $account_array[$x]; - $other_income->deposit_amount = $amount_array[$x]; - $other_income->banked_amount = $amount_array[$x]; - $other_income->deposit_date = Carbon::parse($request->deposit_date)->toDateString(); - $other_income->deposit_memo = $memo_array[$x]; - $other_income->payment_method = $payment_method_array[$x]; - $other_income->trans_id = $trans_id; - $other_income->created_by = Auth::id(); - $other_income->received = $cashier_income_id; - $other_income->save(); - - $track_receipt = new TrackReceipt; - $track_receipt->created_by = $logged_in_user_id; - $track_receipt->reason = "Bank Deposit from income accounts and is of id " . $trans_id; - $track_receipt->save(); - - ++$deposit_counter; - } - } - - $account_balance_after_deposit = ($account_balance_on_deposit_date + (int)$total_deposit_amount); - $last_insert_id = capture_bank_record( - 'DEPOSIT', - $deposit_date, - 10, - implode(',', $account_array), - $account_balance_after_deposit, - $total_deposit_amount, - 0, - $request->deposit_memo, - $trans_id - ); - update_banking_record_balances($deposit_date, $request->deposit_to, $last_insert_id, $account_balance_after_deposit); - - - if ($request->deposit_to != 10) : - - $to_account_balance_on_transfer_date_record = get_latest_banking_record_based_on_transaction_date($request->deposit_to, $deposit_date); - $to_account_balance_on_transfer_date = ($to_account_balance_on_transfer_date_record != null) ? (int)$to_account_balance_on_transfer_date_record->account_balance : 0; - $from_account_balance_on_transfer_date_record = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), $deposit_date); - $from_account_balance_on_transfer_date = ($from_account_balance_on_transfer_date_record != null) ? (int)$from_account_balance_on_transfer_date_record->account_balance : 0; - - // deal with from account - $from_account_balance_after_transfer = ($from_account_balance_on_transfer_date - $total_deposit_amount); - $last_insert_id_from_account = capture_bank_record( - 'TRANSFER', - $deposit_date, - 10, - $request->deposit_to, - $from_account_balance_after_transfer, - 0, - $total_deposit_amount, - $request->deposit_memo, - $trans_id - ); - update_banking_record_balances($deposit_date, 10, $last_insert_id_from_account, $from_account_balance_after_transfer); - - // deal with to account - $to_account_balance_after_transfer = ($to_account_balance_on_transfer_date + $total_deposit_amount); - $last_insert_id_to_account = capture_bank_record( - 'DEPOSIT', - $deposit_date, - $request->deposit_to, - 10, - $to_account_balance_after_transfer, - $total_deposit_amount, - 0, - $request->deposit_memo, - $trans_id - ); - update_banking_record_balances($deposit_date, $request->deposit_to, $last_insert_id_to_account, $to_account_balance_after_transfer); - - $last_cashier_income_record = CashierIncome::latest()->first(); - CashierIncome::where('id', $last_cashier_income_record->id)->update(['banked' => $last_insert_id_to_account]); - - endif; - - return redirect()->route('banking.bank_deposit_slip', ['trans_id' => $trans_id]); - } - } - - public function bank_deposit_slip($trans_id) - { - $hospital_information = HospitalInformation::first(); - $banking_record = DB::table('banking')->where('trans_id', $trans_id)->orderBy('id', 'DESC')->first(); - $banks_array = [$banking_record->bank]; - $amounts_array = [$banking_record->credit]; - $deposit_memo = $banking_record->memo; - $deposit_date = $banking_record->trans_date; - $deposit_amount = $banking_record->credit; - $banked_by = Auth::id(); - return view('banking::banking.bank_slip', compact('hospital_information', 'banks_array', 'amounts_array', 'deposit_memo', 'deposit_date', 'deposit_amount', 'banked_by')); - } - - public function get_current_account_balance(Request $request) - { - $acc = get_latest_banking_record_based_on_transaction_date($request->bank_id, Carbon::today()->toDateString()); - return json_encode($acc); - } - - public function get_current_account_balance_per_date(Request $request) - { - $acc = get_latest_banking_record_based_on_transaction_date($request->bank, $request->date); - return json_encode($acc); - } - - public function get_opening_account_balance(Request $request) - { - switch ($request->date_type) { - default: - case 'today': - $date = Carbon::today()->subMonth(1)->toDateString(); - break; - case 'yesterday': - $date = Carbon::yesterday()->subMonth(1)->toDateString(); - break; - case 'custom_date': - $date = Carbon::parse($request->custom_date)->subMonth(1)->toDateString(); - break; - } - // $acc = Banking::where('bank', $request->bank)->whereDate('trans_date','<=', $date)->latest()->first(); - $acc = get_latest_banking_record_based_on_transaction_date($request->bank, $date); - return json_encode($acc); - } - - public function quick_bank_deposit(Request $request) - { - $deposit_id_array = []; - $logged_in_user_id = Auth::id(); - DB::beginTransaction(); - // collect banks, amount to deposit and account balances as arrays. - try{ - $amounts_array = $request->amount; - $banks_array = $request->bank_account; - for ($x = 0; $x < count($banks_array); $x++) { - // get the most recent undeposited funds balance as per deposit date. - $deposit_date = Carbon::parse($request->deposit_date)->toDateString(); - $cash_account_balance_record_on_deposit_date = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), $deposit_date); - $cash_account_balance_on_deposit_date = ($cash_account_balance_record_on_deposit_date != null) ? (int)$cash_account_balance_record_on_deposit_date->account_balance : 0; - $bank_balance_record_record_on_deposit_date = get_latest_banking_record_based_on_transaction_date($banks_array[$x], $deposit_date); - $bank_balance_on_deposit_date = ($bank_balance_record_record_on_deposit_date != null) ? (int)$bank_balance_record_record_on_deposit_date->account_balance : 0; - // get the balances as of today - $cash_account_balance_record_today = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), Carbon::today()->toDateString()); - $cash_account_balance_today = ($cash_account_balance_record_today != null) ? (int)$cash_account_balance_record_today->account_balance : 0; - $bank_balance_record_today = get_latest_banking_record_based_on_transaction_date($banks_array[$x], Carbon::today()->toDateString()); - $bank_balance_today = ($bank_balance_record_today != null) ? (int)$bank_balance_record_today->account_balance : 0; - - // track the receipt - $track_receipt = new TrackReceipt; - $track_receipt->created_by = $logged_in_user_id; - $track_receipt->save(); - $trans_id = sprintf("%04u", $track_receipt->id); - - $track_receipt_update = TrackReceipt::where('id', $track_receipt->id)->first(); - $track_receipt_update->reason = "Quick Bank Deposit from Received Cash Report of " . $trans_id; - $track_receipt_update->update(); - - // populate bank deposit model - $deposit = new Banking; - $deposit->memo = $request->deposit_memo; - $deposit->trans_type = 'DEPOSIT'; - $deposit->trans_date = $deposit_date; - $deposit->bank = $banks_array[$x]; - $deposit->account_balance = ((int)$amounts_array[$x] + $bank_balance_on_deposit_date); - $deposit->other_accounts = 10; - $deposit->trans_id = $trans_id; - $deposit->credit = $amounts_array[$x]; - $deposit->debit = 0; - $deposit->created_by = $logged_in_user_id; - - // deduct the deposit amount from undeposited funds. - $undeposited_funds_balance_after_deduction = ($cash_account_balance_on_deposit_date - (int)$amounts_array[$x]); - - // record the bank transfer for undeposited funds - $last_insert_id_undeposited_funds = capture_bank_record( - 'TRANSFER', - $deposit_date, - 10, - $banks_array[$x], - $undeposited_funds_balance_after_deduction, - 0, - $amounts_array[$x], - 'Transfer to bank', - $trans_id - ); - - // recursively update balances for the undeposited funds account - update_banking_record_balances($deposit_date, 10, $last_insert_id_undeposited_funds, $undeposited_funds_balance_after_deduction); - - // update the bank account balance on the chart of accounts - ChartOfAccount::where('id', 10)->update(['balance' => $cash_account_balance_today - (int)$amounts_array[$x]]); - ChartOfAccount::where('id', $banks_array[$x])->update(['balance' => ($bank_balance_today + (int)$amounts_array[$x])]); - - // save the receipts and deposit records - $deposit->save(); - $deposit_id_array[] = $deposit->id; - - // recursively update balances for the bank receiving the deposit - update_banking_record_balances($deposit_date, $banks_array[$x], $deposit->id, $deposit->account_balance); - } - - // update the cashier income with the string of deposit ids. - CashierIncome::where('id', $request->cashier_income_id)->update(['banked' => implode(',', $deposit_id_array)]); - DB::commit(); - } catch (\Exception | \Throwable $e){ - DB::rollBack(); - flash('Transaction could not be finished')->error(); - return redirect()->back(); - } - - $hospital_information = HospitalInformation::first(); - $deposit_memo = $request->deposit_memo; - $deposit_amount = $request->deposit_amount; - $banked_by = $logged_in_user_id; - - return view('finance_reports::finance_reports.receipts.bank_slip', compact('hospital_information', 'banks_array', 'amounts_array', 'deposit_memo', 'deposit_date', 'deposit_amount', 'banked_by')); - } - - public function write_off_balance(Request $request) - { - $logged_in_user = Auth::id(); - - // track the receipt - $track_receipt = new TrackReceipt; - $track_receipt->reason = 'Balance Write Off From Received Cashier Income.'; - $track_receipt->created_by = $logged_in_user; - $track_receipt->save(); - $receipt_number = sprintf("%04u", $track_receipt->id); - - // get the most recent undeposited funds balance as per deposit date. - $write_off_date = Carbon::parse($request->write_off_date)->toDateString(); - $cash_account_balance_record_on_write_off_date = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), $write_off_date); - - // $cashier_income_record = CashierIncome::where('id', $request->cashier_income_id)->get(); - $undeposited_funds_balance_after_write_off = ((int)$cash_account_balance_record_on_write_off_date->account_balance - (int)$request->amount); - $last_insert_id = capture_bank_record( - 'PAYMENT', - $write_off_date, - 10, - $request->expense_account, - $undeposited_funds_balance_after_write_off, - 0, - (int)$request->amount, - $request->write_off_memo, - $receipt_number - ); - - // recursively update balances for the undeposited funds account - update_banking_record_balances($write_off_date, 10, $last_insert_id, $undeposited_funds_balance_after_write_off); - - $payment = new Payment; - $payment->item_id = ""; - $payment->vendor = "N/A"; - $payment->unit_cost = (int)$request->amount; - $payment->amount = (int)$request->amount; - $payment->quantity = 1; - $payment->memo = $request->write_off_memo ?? "N/A"; - $payment->account_balance = $undeposited_funds_balance_after_write_off; - $payment->transaction_id = $receipt_number; - $payment->account_id = $request->bank; - $payment->created_by = $logged_in_user; - $payment->expense_date = Carbon::parse($request->write_off_date)->toDateTimeString(); - $payment->expense_account = $request->expense_account; - - // CashierIncome::where('id', $request->cashier_income_id)->update(['amount' => ((int)$cashier_income_record->amount - (int)$request->amount) ]); - if ($payment->save()) { - return 'success'; - } else { - return 'fail'; - } - } - - public function compute_transfer(Request $request) - { - $amount_to_transfer = $request->amount; - $to_account_balance = Banking::where('bank', $request->to_account)->latest()->first(); - $from_account_balance = Banking::where('bank', $request->from_account)->latest()->first(); - if ($to_account_balance) { - $new_to_acc_bal = (int)$to_account_balance->account_balance + (int)$amount_to_transfer; - } else{ - $new_to_acc_bal = (int)$amount_to_transfer; - } - - $new_from_acc_bal = (int)$from_account_balance->account_balance - (int)$amount_to_transfer; - return array('new_to_acc_bal' => $new_to_acc_bal, 'new_from_acc_bal' => $new_from_acc_bal); - } - - public function get_latest_bank_balance(Request $request) - { - $to_bank = get_latest_banking_record_based_on_transaction_date($request->to, $request->date); - $from_bank = get_latest_banking_record_based_on_transaction_date($request->from, $request->date); - return array($to_bank ? $to_bank->account_balance : 0, $from_bank ? $from_bank->account_balance : 0); - } - - public function get_last_reconciliation_balance(Request $request) - { - $start_of_month = Carbon::parse($request->reconciliation_date)->startOfMonth()->toDateTimeString(); - $start_of_previous_month = Carbon::parse($start_of_month)->subMonth(1)->startOfMonth()->toDateTimeString(); - $end_of_previous_month = Carbon::parse($start_of_previous_month)->endOfMonth()->toDateTimeString(); - $latest_reconciliation_report_in_previous_month = BankReconciliationReport::where('bank', $request->bank)->whereBetween('reconciliation_period', [$start_of_previous_month, $end_of_previous_month])->orderBy('reconciliation_period', 'desc')->first(); - if ($latest_reconciliation_report_in_previous_month) { - // Different from $latest_reconciliation_report_in_previous_month->opening_streamline_balance !!! - return json_encode($latest_reconciliation_report_in_previous_month->ending_bank_statement_balance); - } else { - $date = Carbon::parse($request->reconciliation_date)->subMonthsNoOverflow(1)->endOfMonth()->toDateString(); - //$acc = get_latest_banking_record_based_on_transaction_date($request->bank, $date); - $acc = get_latest_banking_record_based_on_transaction_date($request->bank, $date); - if ($acc) { - return json_encode($acc->account_balance); - } - return json_encode(0); - } - } - - public function get_other_income_account_balance(Request $request) - { - $record = get_latest_other_income_record($request->income_account, $request->date); - return json_encode($record); - } - - public function store_other_income_deposit(Request $request) - { - $other_income = new OtherIncome; - $other_income->income_account = $request->income_account; - $other_income->donation_amount = $request->donation_amount; - $other_income->banked_amount = $request->banked_amount; - $other_income->donation_date = Carbon::parse($request->donation_date)->toDateString(); - $other_income->account_balance = $request->account_balance; - $other_income->donation_memo = $request->donation_memo; - $other_income->trans_id = $request->receipt_number; - $other_income->created_by = Auth::id(); - $other_income->save(); - $receipt = new TrackReceipt; - $receipt->reason = "Donation"; - $receipt->created_by = Auth::id(); - $receipt->save(); - return 'success'; - } - - public function undo_bank_reconciliation($id) { - // delete the recon report but preserve the data previously input - $report = BankReconciliationReport::find($id); - $reconciled_records_array = explode(',', $report->reconciled_trans_ids); - $reconciliation_period = $report->reconciliation_period; - $reconciliation_bank = $report->bank; - $report->delete(); - - // delete the reconciliation banking record and re-update the balances - $discrepancy_banking_record = Banking::where('reconciled',$id)->where('reconciliation_adjustment', 1)->orderBy('id', 'desc')->first(); - - if ($discrepancy_banking_record) { - // if it was a negative then delete from "payments", if it was a positive then delete from "other_incomes" - if ($discrepancy_banking_record->credit > 0) { - $other_income = OtherIncome::where('trans_id', $discrepancy_banking_record->trans_id)->orderBy('id','desc')->first(); - if ($other_income) { - $other_income->delete(); - } - } - - if ($discrepancy_banking_record->debit != 0) { - $payment = Payment::where('transaction_id', $discrepancy_banking_record->trans_id)->orderBy('id','desc')->first(); - if ($payment) { - $payment->delete(); - } - } - - // delete the last record if there was a discrepancy - $disc_id = $discrepancy_banking_record->id; - $disc_account_balance = $discrepancy_banking_record->account_balance; - $discrepancy_banking_record->delete(); - - // update the balances of this bank after deletion - update_banking_record_balances($reconciliation_period, $reconciliation_bank, $disc_id, $disc_account_balance); - } - - for ($x = 0; $x < count($reconciled_records_array); $x++) { - Banking::where('id', $reconciled_records_array[$x])->update(['reconciled' => 0, 'updated_by' => Auth::id()]); - } - - flash("Bank Reconciliation for " . streamline_date($reconciliation_period) . " has been undone!")->success(); - return redirect()->route('banking.reconcile'); - } - - public function reconciliation_reports(Request $request) - { - $records = BankReconciliationReport::get(); - $staff_members = User::get(); - $bank = $request->bank; - $today = Carbon::today()->toDateString(); - $banks = ChartOfAccount::where('type', 4)->get(); - $yesterday = Carbon::yesterday()->toDateString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $display = bank_reconciliation_label_setter($request->bank, $start, $end); - - if ($request->staff_member == "ALL STAFF") { - switch ($request->dates) { - case 'today': - if ($request->bank == "ALL BANKS" || $request->bank == '') { - $records = DB::table('bank_reconciliation_reports')->whereNull('deleted_at')->whereDate('created_at', $today) - ->orderBy('created_at', 'asc')->get(); - } else { - $records = DB::table('bank_reconciliation_reports')->whereNull('deleted_at')->whereDate('created_at', $today) - ->where('bank', $request->bank) - ->orderBy('created_at', 'asc')->get(); - } - break; - case 'yesterday': - if ($request->bank == "ALL BANKS" || $request->bank == '') { - $records = DB::table('bank_reconciliation_reports')->whereNull('deleted_at')->whereDate('created_at', $yesterday) - ->orderBy('created_at', 'asc')->get(); - } else { - $records = DB::table('bank_reconciliation_reports')->whereNull('deleted_at')->whereDate('created_at', $yesterday) - ->where('bank', $request->bank) - ->orderBy('created_at', 'asc')->get(); - } - break; - case 'custom_date': - if ($request->bank == "ALL BANKS" || $request->bank == '') { - $records = DB::table('bank_reconciliation_reports')->whereNull('deleted_at')->whereDate('created_at', $start) - ->orderBy('created_at', 'asc')->get(); - break; - } else { - $records = DB::table('bank_reconciliation_reports')->whereNull('deleted_at')->whereDate('created_at', $start) - ->where('bank', $request->bank) - ->orderBy('created_at', 'asc')->get(); - break; - } - case 'custom_date_range': - if ($request->bank == "ALL BANKS" || $request->bank == '') { - $records = DB::table('bank_reconciliation_reports')->whereNull('deleted_at')->whereBetween('created_at', [$start, $end]) - ->orderBy('created_at', 'asc')->get(); - } else { - $records = DB::table('bank_reconciliation_reports')->whereNull('deleted_at')->whereBetween('created_at', [$start, $end]) - ->where('bank', $request->bank) - ->orderBy('created_at', 'asc')->get(); - } - break; - } - } else { - switch ($request->dates) { - case 'today': - if ($request->bank == "ALL BANKS" || $request->bank == '') { - $records = DB::table('bank_reconciliation_reports')->whereNull('deleted_at')->whereDate('created_at', $today) - ->where('created_by', $request->staff_member) - ->orderBy('created_at', 'asc')->get(); - } else { - $records = DB::table('bank_reconciliation_reports')->whereNull('deleted_at')->whereDate('created_at', $today) - ->where('created_by', $request->staff_member) - ->where('bank', $request->bank) - ->orderBy('created_at', 'asc')->get(); - } - break; - case 'yesterday': - if ($request->bank == "ALL BANKS" || $request->bank == '') { - $records = DB::table('bank_reconciliation_reports')->whereNull('deleted_at')->whereDate('created_at', $yesterday) - ->where('created_by', $request->staff_member) - ->orderBy('created_at', 'asc')->get(); - } else { - $records = DB::table('bank_reconciliation_reports')->whereNull('deleted_at')->whereDate('created_at', $yesterday) - ->where('created_by', $request->staff_member) - ->where('bank', $request->bank) - ->orderBy('created_at', 'asc')->get(); - } - break; - case 'custom_date': - if ($request->bank == "ALL BANKS" || $request->bank == '') { - $records = DB::table('bank_reconciliation_reports')->whereNull('deleted_at')->whereDate('created_at', $start) - ->where('created_by', $request->staff_member) - ->orderBy('created_at', 'asc')->get(); - } else { - $records = DB::table('bank_reconciliation_reports')->whereNull('deleted_at')->whereDate('created_at', $start) - ->where('created_by', $request->staff_member) - ->where('bank', $request->bank) - ->orderBy('created_at', 'asc')->get(); - } - break; - case 'custom_date_range': - if ($request->bank == "ALL BANKS" || $request->bank == '') { - $records = DB::table('bank_reconciliation_reports')->whereNull('deleted_at')->whereBetween('created_at', [$start, $end]) - ->where('created_by', $request->staff_member) - ->orderBy('created_at', 'asc')->get(); - } else { - $records = DB::table('bank_reconciliation_reports')->whereNull('deleted_at')->whereBetween('created_at', [$start, $end]) - ->where('created_by', $request->staff_member) - ->where('bank', $request->bank) - ->orderBy('created_at', 'asc')->get(); - } - break; - } - } - return view('banking::banking.reconcile.reports', compact('records', 'display', 'staff_members', 'banks', 'bank')); - } -} diff --git a/docker/statistics/Modules/Banking/Http/Controllers/BankingRecordController.php b/docker/statistics/Modules/Banking/Http/Controllers/BankingRecordController.php deleted file mode 100755 index a25aa593..00000000 --- a/docker/statistics/Modules/Banking/Http/Controllers/BankingRecordController.php +++ /dev/null @@ -1,240 +0,0 @@ -bank; - $staff_members = User::get(); - $display = bank_register_label_setter($request); - $today = Carbon::today()->toDateString(); - $banks = ChartOfAccount::where('type', 4)->where('id', '!=', 10)->get(); - $yesterday = Carbon::yesterday()->toDateString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - - if($request->staff_member == "ALL STAFF"){ - switch ($request->dates){ - case 'today': - $records = BankingRecord::whereDate('record_date', $today)->where('bank', $request->bank) - ->get(); - break; - case 'yesterday': - $records = BankingRecord::whereDate('record_date', $yesterday)->where('bank', $request->bank) - ->get(); - break; - case 'custom_date': - $records = BankingRecord::whereDate('record_date', $start)->where('bank', $request->bank) - ->get(); - break; - case 'custom_date_range': - $records = BankingRecord::whereBetween('record_date', [$start, $end])->where('bank', $request->bank) - ->get(); - break; - } - } - else{ - switch ($request->dates){ - case 'today': - $records = BankingRecord::where('created_by', $request->staff_member)->whereDate('record_date', $today) - ->where('bank', $request->bank)->get(); - break; - case 'yesterday': - $records = BankingRecord::where('created_by', $request->staff_member)->whereDate('record_date', $yesterday) - ->where('bank', $request->bank)->get(); - break; - case 'custom_date': - $records = BankingRecord::where('created_by', $request->staff_member)->whereDate('record_date', $start) - ->where('bank', $request->bank)->get(); - break; - case 'custom_date_range': - $records = BankingRecord::where('created_by', $request->staff_member)->whereBetween('record_date', [$start, $end]) - ->where('bank', $request->bank)->get(); - break; - } - } - - return view('banking::banking_records.index', compact('records', 'display', 'staff_members', 'banks', 'bank')); - } - - public function reverse($trans_id){ - // update account balances on banking records - - $deposits = BankDeposit::where('trans_id', $trans_id)->get(); - $transfers = BankTransfer::where('trans_id', $trans_id)->get(); - $payments = Payment::where('transaction_id', $trans_id)->get(); - $records = BankingRecord::where('trans_id', $trans_id)->get(); - - if(count($deposits) > 0){ - foreach ($deposits as $deposit){ - - $deposit_amount = (int)$deposit->amount; - $current_deposit_to_balance = ChartOfAccount::where('id', $deposit->deposit_to)->pluck('balance')->first(); - $current_deposit_from_balance = ChartOfAccount::where('id', $deposit->from_account)->pluck('balance')->first(); - - ChartOfAccount::where('id', $deposit->deposit_to)->update(['balance' => ((int)$current_deposit_to_balance) - (int)$deposit_amount]); - ChartOfAccount::where('id', $deposit->from_account)->update(['balance' => ((int)$current_deposit_from_balance) + (int)$deposit_amount]); - - $proceeding_deposits = BankDeposit::where('created_at', '>', $deposit->created_at)->get(); - foreach ($proceeding_deposits as $proceeding_deposit){ - BankDeposit::where('id', $proceeding_deposit->id)->update(['previous_from_account_balance' => ((int)$proceeding_deposit->previous_from_account_balance + (int)$deposit_amount)]); - BankDeposit::where('id', $proceeding_deposit->id)->update(['previous_to_account_balance' => ((int)$proceeding_deposit->previous_to_account_balance - (int)$deposit_amount)]); - } - - $deposit->delete(); - - foreach ($records as $record){ - $proceeding_records = BankingRecord::where('created_at', '>', $record->created_at)->get(); - foreach ($proceeding_records as $proceeding_record){ - BankingRecord::where('id', $proceeding_record->id)->update(['account_balance' => ((int)$proceeding_record->account_balance - (int)$deposit_amount)]); - } - $record->delete(); - } - - // update chart of account balances - flash('Bank Transaction successfully reversed.')->success(); - return redirect('/banking/register'); - } - }elseif(count($transfers) > 0){ - - foreach ($transfers as $transfer){ - - $transfer_amount = (int)$transfer->balance; - $current_transfer_to_balance = ChartOfAccount::where('id', $transfer->to_account)->pluck('balance')->first(); - $current_transfer_from_balance = ChartOfAccount::where('id', $transfer->from_account)->pluck('balance')->first(); - - ChartOfAccount::where('id', $transfer->to_account)->update(['balance' => ((int)$current_transfer_to_balance) - (int)$transfer_amount]); - ChartOfAccount::where('id', $transfer->from_account)->update(['balance' => ((int)$current_transfer_from_balance) + (int)$transfer_amount]); - - $proceeding_transfers = BankDeposit::where('created_at', '>', $transfer->created_at)->get(); - foreach ($proceeding_transfers as $proceeding_transfer){ - BankTransfer::where('id', $proceeding_transfer->id)->update(['previous_from_account_balance' => ((int)$proceeding_transfer->previous_from_account_balance + (int)$transfer_amount)]); - BankTransfer::where('id', $proceeding_transfer->id)->update(['previous_to_account_balance' => ((int)$proceeding_transfer->previous_to_account_balance - (int)$transfer_amount)]); - } - $transfer->delete(); - - foreach ($records as $record){ - $proceeding_records = BankingRecord::where('created_at', '>', $record->created_at)->get(); - foreach ($proceeding_records as $proceeding_record){ - BankingRecord::where('id', $proceeding_record->id)->update(['account_balance' => ((int)$proceeding_record->account_balance - (int)$transfer_amount)]); - } - $record->delete(); - } - // update chart of account balances - flash('Bank Transaction successfully reversed.')->success(); - return redirect('/banking/register'); - } - - }elseif(count($payments) > 0){ - - foreach ($payments as $payment){ - - $bank_account = $payment->account_id; - $payment_item_account = get_name($payment->item_id, 'id', 'account_id', 'payment_items'); - - $payment_amount = (int)$payment->amount; - $current_transfer_to_balance = ChartOfAccount::where('id', $payment_item_account)->pluck('balance')->first(); - $current_transfer_from_balance = ChartOfAccount::where('id', $bank_account)->pluck('balance')->first(); - - ChartOfAccount::where('id', $payment_item_account)->update(['balance' => ((int)$current_transfer_to_balance) - (int)$payment_amount]); - ChartOfAccount::where('id', $bank_account)->update(['balance' => ((int)$current_transfer_from_balance) + (int)$payment_amount]); - - $proceeding_payments = Payment::where('created_at', '>', $payment->created_at)->get(); - foreach ($proceeding_payments as $proceeding_payment){ - Payment::where('id', $proceeding_payment->id)->update(['account_balance' => ((int)$proceeding_payment->account_balance + (int)$payment_amount)]); - } - $payment->delete(); - - foreach ($records as $record){ - $proceeding_records = BankingRecord::where('created_at', '>', $record->created_at)->get(); - foreach ($proceeding_records as $proceeding_record){ - BankingRecord::where('id', $proceeding_record->id)->update(['account_balance' => ((int)$proceeding_record->account_balance + (int)$payment_amount)]); - } - $record->delete(); - } - - // update chart of account balances - flash('Bank Transaction successfully reversed.')->success(); - return redirect('/banking/register'); - } - } - // update chart of account balances - flash('Bank Transaction Reversal Failed.')->error(); - return redirect('/banking/register'); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - // - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - // - } - - /** - * Display the specified resource. - * - */ - public function show(BankingRecord $bankingRecord) - { - // - } - - /** - * Show the form for editing the specified resource. - * - */ - public function edit(BankingRecord $bankingRecord) - { - // - } - - /** - * Update the specified resource in storage. - * - */ - public function update(Request $request, BankingRecord $bankingRecord) - { - // - } - - /** - * Remove the specified resource from storage. - * - */ - public function destroy(BankingRecord $bankingRecord) - { - // - } -} diff --git a/docker/statistics/Modules/Banking/Http/Controllers/Controller.php b/docker/statistics/Modules/Banking/Http/Controllers/Controller.php deleted file mode 100755 index b9aa685c..00000000 --- a/docker/statistics/Modules/Banking/Http/Controllers/Controller.php +++ /dev/null @@ -1,13 +0,0 @@ -registerTranslations(); - $this->registerConfig(); - $this->registerViews(); - $this->loadMigrationsFrom(module_path($this->moduleName, 'Database/Migrations')); - } - - /** - * Register the service provider. - * - * @return void - */ - public function register() - { - $this->app->register(RouteServiceProvider::class); - } - - /** - * Register config. - * - * @return void - */ - protected function registerConfig() - { - $this->publishes([ - module_path($this->moduleName, 'Config/config.php') => config_path($this->moduleNameLower . '.php'), - ], 'config'); - $this->mergeConfigFrom( - module_path($this->moduleName, 'Config/config.php'), $this->moduleNameLower - ); - } - - /** - * Register views. - * - * @return void - */ - public function registerViews() - { - $viewPath = resource_path('views/modules/' . $this->moduleNameLower); - - $sourcePath = module_path($this->moduleName, 'Resources/views'); - - $this->publishes([ - $sourcePath => $viewPath - ], ['views', $this->moduleNameLower . '-module-views']); - - $this->loadViewsFrom(array_merge($this->getPublishableViewPaths(), [$sourcePath]), $this->moduleNameLower); - } - - /** - * Register translations. - * - * @return void - */ - public function registerTranslations() - { - $langPath = resource_path('lang/modules/' . $this->moduleNameLower); - - if (is_dir($langPath)) { - $this->loadTranslationsFrom($langPath, $this->moduleNameLower); - $this->loadJsonTranslationsFrom($langPath); - } else { - $this->loadTranslationsFrom(module_path($this->moduleName, 'Resources/lang'), $this->moduleNameLower); - $this->loadJsonTranslationsFrom(module_path($this->moduleName, 'Resources/lang')); - } - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides() - { - return []; - } - - private function getPublishableViewPaths(): array - { - $paths = []; - foreach (\Config::get('view.paths') as $path) { - if (is_dir($path . '/modules/' . $this->moduleNameLower)) { - $paths[] = $path . '/modules/' . $this->moduleNameLower; - } - } - return $paths; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/Banking/Providers/RouteServiceProvider.php b/docker/statistics/Modules/Banking/Providers/RouteServiceProvider.php deleted file mode 100755 index 5d3cca83..00000000 --- a/docker/statistics/Modules/Banking/Providers/RouteServiceProvider.php +++ /dev/null @@ -1,68 +0,0 @@ -mapApiRoutes(); - $this->mapWebRoutes(); - } - - /** - * Define the "web" routes for the application. - * - * These routes all receive session state, CSRF protection, etc. - * - * @return void - */ - protected function mapWebRoutes() - { - Route::middleware('web') - ->namespace($this->namespace) - ->group(module_path('Banking', '/Routes/web.php')); - } - - /** - * Define the "api" routes for the application. - * - * These routes are typically stateless. - * - * @return void - */ - protected function mapApiRoutes() - { - Route::prefix('api') - ->middleware('api') - ->namespace($this->namespace) - ->group(module_path('Banking', '/Routes/api.php')); - } -} diff --git a/docker/statistics/Modules/Banking/Resources/views/banking/bank_slip.blade.php b/docker/statistics/Modules/Banking/Resources/views/banking/bank_slip.blade.php deleted file mode 100755 index 3c27fea8..00000000 --- a/docker/statistics/Modules/Banking/Resources/views/banking/bank_slip.blade.php +++ /dev/null @@ -1,132 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush -@section('content') -
    -
    -

    Bank Slip

    -
    -
    - -
    -
    - @include('flash::message') -
    -
    -
    -
    -
    -
    -
    - Responsive image -

    - name . ' | ' . $hospital_information->phone_number . ' | ' . $hospital_information->email . ' | ' . $hospital_information->address . ' ' . $hospital_information->country ?> -


    -

    Bank Slip

    -
    - - - - - - - - - - @php $total_banked = 0; @endphp - @for ($x = 0; $x < count($banks_array); $x++) - - - - - @php $total_banked += is_numeric($amounts_array[$x]) ? $amounts_array[$x] : 0; @endphp - @endfor - - - - - - - - - - - - - - - - - - - - - - -
    #Amount
    {{ get_name($banks_array[$x], "id", "name", "chart_of_accounts") }}{{ ugandan_shillings($amounts_array[$x]) }}
    Memo{{ $deposit_memo }}
     Total Banked {{ ugandan_shillings($total_banked) }}
     Deposite Date {{ streamline_date($deposit_date) }}
     Banked By {{ get_full_name($banked_by, 'id', 'first_name', 'last_name', 'users') }}
    -
    -
    -
    - {{ __('family_accounts.streamline') }} -
    -
    -
    -
    - -@endsection - -@push('styles') - -@endpush diff --git a/docker/statistics/Modules/Banking/Resources/views/banking/deposit.blade.php b/docker/statistics/Modules/Banking/Resources/views/banking/deposit.blade.php deleted file mode 100755 index 5b92c2a3..00000000 --- a/docker/statistics/Modules/Banking/Resources/views/banking/deposit.blade.php +++ /dev/null @@ -1,426 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('banking.bank_deposits') }}

    -
    -
    - -
    -
    -@php -$balance = 0; -@endphp - -@include('flash::message') -
    -
    -
    -
    -
    -
    -
    - - @php $hospital_information = \Streamline\Models\HospitalInformation::first(); @endphp - Home
    -
    -
    -

     {{ $hospital_information->name }}

    -

    {{ $hospital_information->phone_number }}, {{ $hospital_information->email }}, -
    {{ get_name($hospital_information->sub_county,'id', 'name', 'subcounties') }}, {{ get_name($hospital_information->district,'id', 'name', 'districts') }}, -
    {{ $hospital_information->country }}. -

    -
    -
    -
    -
    -

    {{ __('banking.deposit_date') }} {{ streamline_date_time(\Carbon\Carbon::now()->toDateTimeString()) }}

    -
    -
    -
    -
    -
    - {{ Form::open(['route' => 'banking.process_deposit', 'data-toggle' => 'validator']) }} -

    {{ __('banking.details') }}

    -
    {{ __('banking.deposit_to_account') }}
    -
    - - - - - - - - - - - - - - - - - - -
    {{ __('banking.select_account') }}{{ __('banking.deposit_date') }}{{ __('banking.current_balance') }}{{ __('banking.memo') }}
    -
    - -
    -
    -
    -
    - {{ Form::text('deposit_date', '', ['class'=>'form-control required compulsory', 'readonly', 'id'=>'deposit_date']) }} - -
    -
    -
    - - -
    -
    - {{ Form::text('deposit_memo', '', ['class'=>'form-control required compulsory', 'id'=>'memo']) }} -
    -
    -
    -
    - -

    {{ __('banking.deposit_details') }}

    -
    {{ __('banking.deposit_from_account') }}
    -
    - - @php - $options = ""; - foreach ($income_accounts as $item){ - $options .= ""; - } - @endphp - - -
    -
    -
    -
    -
    - -
    - -
    -
    -
    - - @php - $options = ""; - foreach ($income_accounts as $item){ - $options .= ""; - } - - $payment_method_options = ""; - @endphp - -
    -
    - -
    - -
    -
    -
    - - - -
    -
    - -
    - @php echo $payment_method_options; @endphp -
    -
    -
    - -
    -
    - -
    - -
    -
    -
    - -
    -
    - -
    -
    -
    -
    - -
    -
    -
    -
    - -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    - - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Banking/Resources/views/banking/deposit_history.blade.php b/docker/statistics/Modules/Banking/Resources/views/banking/deposit_history.blade.php deleted file mode 100755 index 86a9ec65..00000000 --- a/docker/statistics/Modules/Banking/Resources/views/banking/deposit_history.blade.php +++ /dev/null @@ -1,280 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('banking.bank_deposit_history') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    - {{ Form::open(['method'=>'post','route' => 'banking.deposit_history']) }} -
    -
    -
    - - -
    -
    - -
    -
    - - -
    -
    -
    - -
    -
    - -
    -
    -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success btn-rounded btn-block pull-right']) }} -
    -
    -
    - {{ Form::close() }} -
    - -
    -
    -

    {{ __('banking.deposit_history') }}

    -
    - @if(isset($display)) -

    {!! isset($display) ? $display : '' !!}

    - @endif -
    -
    - @php - $amount_total = 0; - $account_balance_total = 0; - @endphp -
    - - - - - - - - - - - - - @if(count($deposits) > 0) - @foreach($deposits as $item) - - - - - - - - - @php - $amount_total += $item->credit; - $account_balance_total += $item->account_balance; - @endphp - @endforeach - @endif - - - @if(count($deposits) > 0) - - - - - - - @endif -
    {{ __('banking.staff_in_charge') }}{{ __('banking.deposit_from') }}{{ __('banking.deposit_to') }}{{ __('banking.date') }}{{ __('banking.amount') }}{{ __('banking.account_balance') }}
    {{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ isset($chart_of_accounts[$item->other_accounts]) ? $chart_of_accounts[$item->other_accounts] : ("N/A") }}{{ get_name($item->bank, 'id', 'name', 'chart_of_accounts') }}{{ streamline_date($item->trans_date) }}{{ ugandan_shillings($item->credit) }}{{ ugandan_shillings($item->account_balance) }}
    - {{ __('banking.total') }} - - {{ ugandan_shillings($amount_total) }} - - {{ ugandan_shillings($account_balance_total) }} -
    - -
    -
    -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Banking/Resources/views/banking/reconcile/index.blade.php b/docker/statistics/Modules/Banking/Resources/views/banking/reconcile/index.blade.php deleted file mode 100755 index 09e6d501..00000000 --- a/docker/statistics/Modules/Banking/Resources/views/banking/reconcile/index.blade.php +++ /dev/null @@ -1,573 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - - - -@endpush - -@section('content') -
    -
    -

    Bank Reconciliation

    -
    -
    - -
    -
    -@php -$balance = 0; -@endphp - -
    - -@include('flash::message') - -
    -
    - -
    -
    - {{ Form::open(['route' => 'banking.reconcile', 'data-toggle' => 'validator']) }} - -
    -
    -
    - - -
    -
    - -
    -
    - -
    - - -
    -
    -
    - -
    -
    - -
    - - .UGX -
    -
    -
    - -
    -
    - -
    - - .UGX -
    -
    -
    - -
    -
    - -
    -
    -
    - - {{ Form::close() }} - -
    -
    -
    -
    - - @if(!empty($request->all())) - {{ Form::open(['route' => 'banking.finish_reconciling', 'data-toggle' => 'validator', 'id'=>'finish_reconciliation_form']) }} - @if(isset($display)) -
    -
    -

    {!! isset($display) ? $display : '' !!}

    -
    -
    - @endif -
    -
    -
    -
    -
    -

    Ending Bank Statement Balance:

    - {{ ugandan_shillings($request->ending_balance_input) }} -
    -
    - - -
    -
    -

    Opening Stre@mline Bank Balance:

    {{ is_null($request->opening_balance) ? 0 : $request->opening_balance }} - {{ is_null($request->opening_balance) ? 0 : ugandan_shillings($request->opening_balance) }} -
    -
    -
    -
    -

    Difference:

    - - {{ ugandan_shillings((int)$request->ending_balance_input - (int)$request->opening_balance) }} - -
    -
    - - - - - - - - - -
    -
    -
    -
    -
    -
    - @php - $sum_balance = 0; - $sum_credit = 0; - $sum_debit = 0; - @endphp -
    - - - - - - - - - - - - - - - - - - @php - $counter = 1; - @endphp - @if(count($banking_records) > 0) - @foreach($banking_records as $record) - @php - $sum_credit += $record->credit; - $sum_debit += $record->debit; - @endphp - - - - - - - @php - $banks = explode(',',$record->bank); - $other_accounts = explode(',',$record->other_accounts); - @endphp - - - - @if($record->debit != 0) - - - @else - - - @endif - @if($record->credit != 0) - - - @else - - - @endif - - - @if($loop->last) - @php $sum_balance = $record->account_balance; @endphp - @endif - - - - @php $counter++; @endphp - @endforeach - @endif - - -
    #Transaction Date :Record Date :Staff In-Charge :TypeAccountMemoDebitCreditBalanceAction
    {{ $counter }}.{{ streamline_date($record->trans_date) }}{{ streamline_date($record->created_at) }}{{ get_full_name($record->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ $record->trans_type }} - @for($x = 0; $x - < count($other_accounts); $x++) {{ get_name($other_accounts[$x], 'id', 'name', 'chart_of_accounts') }}
    - @endfor -
    {{ $record->memo }}{{ ugandan_shillings($record->debit) }}{{ ugandan_shillings(0) }}{{ ugandan_shillings($record->credit) }}{{ ugandan_shillings(0) }}{{ ugandan_shillings($record->account_balance) }} - @if($record->debit != 0) - - @elseif($record->credit != 0) - - @elseif($record->debit == 0 && $record->credit == 0) - - @endif - - -
    -
    -
    -
    -
    -
    - {{ Form::label('memo', 'Reconciliation Memo / Comment (Optional)', ['style' => 'font-size: 18px; font-weight: 400'])}} - {{ Form::textarea('memo','',['class' => 'form-control'])}} -
    -
    -
    - -
    -
    -
    -
    -
    -
    -

    Previous Reconciliation Reports

    - -
    -
    - - {{ Form::close() }} - @else -
    -
    -

    Please Be Sure To Fill In All The Necessary Fields And Then Submit.

    -
    -
    - @endif -
    -
    - -@include('banking::banking.reconcile.modals.finish_with_discrepancy') -@include('banking::banking.reconcile.modals.finish_reconciliation') -@include('banking::banking.reconcile.modals.perform_adjustment') - - - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Banking/Resources/views/banking/reconcile/modals/finish_reconciliation.blade.php b/docker/statistics/Modules/Banking/Resources/views/banking/reconcile/modals/finish_reconciliation.blade.php deleted file mode 100755 index 20bbb801..00000000 --- a/docker/statistics/Modules/Banking/Resources/views/banking/reconcile/modals/finish_reconciliation.blade.php +++ /dev/null @@ -1,55 +0,0 @@ - \ No newline at end of file diff --git a/docker/statistics/Modules/Banking/Resources/views/banking/reconcile/modals/finish_with_discrepancy.blade.php b/docker/statistics/Modules/Banking/Resources/views/banking/reconcile/modals/finish_with_discrepancy.blade.php deleted file mode 100755 index 8a37a721..00000000 --- a/docker/statistics/Modules/Banking/Resources/views/banking/reconcile/modals/finish_with_discrepancy.blade.php +++ /dev/null @@ -1,38 +0,0 @@ - \ No newline at end of file diff --git a/docker/statistics/Modules/Banking/Resources/views/banking/reconcile/modals/perform_adjustment.blade.php b/docker/statistics/Modules/Banking/Resources/views/banking/reconcile/modals/perform_adjustment.blade.php deleted file mode 100755 index 2a6ab7da..00000000 --- a/docker/statistics/Modules/Banking/Resources/views/banking/reconcile/modals/perform_adjustment.blade.php +++ /dev/null @@ -1,36 +0,0 @@ - \ No newline at end of file diff --git a/docker/statistics/Modules/Banking/Resources/views/banking/reconcile/print.blade.php b/docker/statistics/Modules/Banking/Resources/views/banking/reconcile/print.blade.php deleted file mode 100755 index 3ee9cc11..00000000 --- a/docker/statistics/Modules/Banking/Resources/views/banking/reconcile/print.blade.php +++ /dev/null @@ -1,403 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Inpatient Bill - Stre@mline') }} - - - - - - - -@php - $reconciled_transactions = explode(',',$report->reconciled_trans_ids); - $unreconciled_transactions = explode(',',$report->unreconciled_trans_ids); - $total_cleared_credit = $total_cleared_debit = 0; - $total_uncleared_credit = $total_uncleared_debit = 0; - $total_uncleared = $total_cleared = 0; -@endphp - - -
    - @include('layouts.header_pdf_print') -
    BANK RECONCILIATION REPORT
    -
    {{ $chart_of_accounts[$report->bank] }} as at {{ streamline_date($report->reconciliation_period) }}
    -
    {{-- RECONCILED BY: {{ get_full_name($report->created_by, "id", "first_name", "last_name", "users")}}
    --}}Date: {{ streamline_date($report->created_at) }}
    - -
    -
    - -
    -
    -
    -
    - - - - - - - @php - $beginning_of_month = \Carbon\Carbon::parse($report->reconciliation_period)->startOfMonth()->toDateTimeString(); - @endphp - - - - - - - - - - - - - - - @php - $last_banking_record = \Streamline\Models\Banking::where('reconciled',$report->id)->orderBy('id', 'desc')->first(); - @endphp - @if ($last_banking_record->memo == "bank reconciliation adjustment") - - - @else - - - @endif - - @if ($report->memo) - - - - - @endif - -
    - Reconciliation Summary -
    - Stre@mline Opening Balance As Of {{ streamline_date($beginning_of_month) }}: - - {{ ugandan_shillings($report->opening_streamline_balance) }} -
    - Bank Statement Ending Balance As Of {{ streamline_date($report->reconciliation_period) }}: - - {{ ugandan_shillings($report->ending_bank_statement_balance) }} -
    - @php - $banking_record = get_latest_banking_record($report->bank, $report->reconciliation_period); - $bank_balance_that_day = ($banking_record != null) ? (int)$banking_record->account_balance : 0; - - $orderByCreatedAtIfTransDateIsTheSame = "created_at DESC"; - $orderByIdIfTransDateIsTheSame = "id DESC"; - - $last_record_that_month = DB::table('banking') - ->whereNull('deleted_at') - ->where('bank', '=', $report->bank) - ->where('memo', '!=', 'bank reconciliation adjustment') - ->whereDate('trans_date', '<=', \Carbon\Carbon::parse($report->reconciliation_period)->toDateString()) - ->orderBy('trans_date', 'desc') - ->orderByRaw($orderByCreatedAtIfTransDateIsTheSame) - ->orderByRaw($orderByIdIfTransDateIsTheSame) - ->first(); - $last_running_balance_of_month = ($last_record_that_month != null) ? (int)$last_record_that_month->account_balance : 0; - @endphp - Bank Register Closing Balance As Of {{ streamline_date($report->reconciliation_period) }}: - - {{ ugandan_shillings($last_running_balance_of_month) }} -
    Reconciliation Discrepancy Balance : - {{ $last_banking_record->credit ? ugandan_shillings($last_banking_record->credit) : "-".ugandan_shillings(abs($last_banking_record->debit)) }} - Reconciliation Discrepancy Balance : - {{ ugandan_shillings(0) }} -
    Memo : - {{ $report->memo }} -
    - -
    Cleared Transactions
    - Checks and Payments - - - @if(count($reconciled_transactions) > 0) -
    - - - - - - - - - - - @foreach($reconciled_transactions as $trans_id) - @php $transaction = \Streamline\Models\Banking::find($trans_id); @endphp - @if(!is_null($transaction)) - @if($transaction->trans_type == 'PAYMENT' || $transaction->trans_type == 'TRANSFER') - - - - - @php - $other_accounts_array = explode(',',$transaction->other_accounts); - @endphp - - - - - - - @php $total_cleared_debit += (int)$transaction->debit; @endphp - - - - @endif - @endif - @endforeach -
    FromToMemoDateAmount
    {{ $chart_of_accounts[$transaction->bank] }} - @for($x = 0; $x < count($other_accounts_array); $x ++) - @if(isset($chart_of_accounts[$other_accounts_array[$x]])) - {{ $chart_of_accounts[$other_accounts_array[$x]] }} - @else - @php - $item = isset($payment_items[$other_accounts_array[$x]]) ? $payment_items[$other_accounts_array[$x]] : ""; - @endphp - {{ $item }} - @endif - @endfor - {{ $transaction->memo }}{{ streamline_date($transaction->trans_date) }} - {{ ugandan_shillings($transaction->debit) }}
    -
    - @endif - - - Deposits and Credits - - - - - - - - - - - - @if(count($reconciled_transactions) > 0) - @foreach($reconciled_transactions as $trans_id) - @php $transaction = \Streamline\Models\Banking::find($trans_id); @endphp - @if(!is_null($transaction)) - @if($transaction->trans_type == 'DEPOSIT') - @php $other_accounts_array = explode(',',$transaction->other_accounts); @endphp - - - - - - - @php $total_cleared_credit += (int)$transaction->credit; @endphp - - - - @endif - @endif - @endforeach - @endif -
    FromToMemoDateAmount
    - @for($x = 0; $x < count($other_accounts_array); $x ++) - @if(isset($chart_of_accounts[$other_accounts_array[$x]])) - {{ $chart_of_accounts[$other_accounts_array[$x]] }} - @else - @php - $item = isset($payment_items[$other_accounts_array[$x]]) ? $payment_items[$other_accounts_array[$x]] : ""; - @endphp - {{ $item }} - @endif - @endfor - {{ $chart_of_accounts[$transaction->bank] }}{{ $transaction->memo }}{{ streamline_date($transaction->trans_date) }}{{ ugandan_shillings($transaction->credit) }}
    - -
    Total Cleared Balance : {{ ugandan_shillings($total_cleared = ($total_cleared_credit - $total_cleared_debit)) }}
    - -
    -
    - -
    Uncleared Transactions
    - Checks and Payments - - - @if(count($unreconciled_transactions) > 0) - - - - - - - - - - - @foreach($unreconciled_transactions as $trans_id) - @php $transaction = \Streamline\Models\Banking::find($trans_id); @endphp - @if(!is_null($transaction)) - @if($transaction->trans_type == 'PAYMENT' || $transaction->trans_type == 'TRANSFER') - - - - - - - @php $total_uncleared_debit += (int)$transaction->debit; @endphp - - - - @endif - @endif - @endforeach -
    FromToMemoDateAmount
    {{ $chart_of_accounts[$transaction->bank] }} - @php - $uncleared_other_accounts_string = $transaction->other_accounts; - $uncleared_other_accounts_array = is_null($uncleared_other_accounts_string) ? [] : explode(",", $uncleared_other_accounts_string); - @endphp - @for($x = 0; $x < count($uncleared_other_accounts_array); $x ++) - @if(isset($chart_of_accounts[$uncleared_other_accounts_array[$x]])) - {{ $chart_of_accounts[$uncleared_other_accounts_array[$x]] }} - @else - @php - $item = $payment_items[$uncleared_other_accounts_array[$x]] ?? ""; - @endphp - {{ $item }} - @endif - @endfor - {{ $transaction->memo }}{{ streamline_date($transaction->trans_date) }}{{ ugandan_shillings($transaction->debit) }}
    - @endif - - Deposits and Credits - - - - - - - - - - - @if(count($unreconciled_transactions) > 0) - @foreach($unreconciled_transactions as $trans_id) - @php $transaction = \Streamline\Models\Banking::find($trans_id)@endphp - @if(!is_null($transaction)) - @if($transaction->trans_type == 'DEPOSIT') - @php $other_accounts_array = explode(',',$transaction->other_accounts); @endphp - - - - - - - @php $total_uncleared_credit += (int)$transaction->credit; @endphp - - - - @endif - @endif - @endforeach - @endif -
    - - - - - - - - - -
    FromToMemoDateAmount
    - @for($x = 0; $x < count($other_accounts_array); $x ++) - @if(isset($chart_of_accounts[$other_accounts_array[$x]])) - {{ $chart_of_accounts[$other_accounts_array[$x]] }} - @else - @php - $item = isset($payment_items[$other_accounts_array[$x]]) ? $payment_items[$other_accounts_array[$x]] : ""; - @endphp - {{ $item }} - @endif - @endfor - {{ $chart_of_accounts[$transaction->bank] }}{{ $transaction->memo }}{{ streamline_date($transaction->trans_date) }}{{ ugandan_shillings($transaction->credit) }}
    - -
    Total Uncleared Balance : {{ ugandan_shillings($total_uncleared = ($total_uncleared_credit - $total_uncleared_debit)) }}

    - - - - - - - - - - - - - - - - -
    Reconciled By: - {{ get_full_name($report->created_by, "id", "first_name", "last_name", "users")}} -
    Checked By: .................................
    Approved By: ..................................
    - - {{-- @php - $last_banking_record = \Streamline\Models\Banking::where('reconciled',$report->id)->orderBy('id', 'desc')->first(); - @endphp - @if ($last_banking_record->memo == "bank reconciliation adjustment") - Reconciliation Discrepancy Balance : {{ $last_banking_record->credit ? ugandan_shillings($last_banking_record->credit) : "-".ugandan_shillings(abs($last_banking_record->debit))}}
    - @else - Reconciliation Discrepancy Balance : {{ ugandan_shillings(0) }}
    - @endif - - @php $beginning_of_month = \Carbon\Carbon::parse($report->reconciliation_period)->startOfMonth()->toDateTimeString(); @endphp - Stre@mline Opening Balance ({{ streamline_date($beginning_of_month) }}): {{ ugandan_shillings($report->opening_streamline_balance) }} - Bank Statement Ending Balance ({{ streamline_date($report->reconciliation_period) }}): {{ ugandan_shillings($report->ending_bank_statement_balance) }} - @php - $banking_record = get_latest_banking_record($report->bank, $report->reconciliation_period); - $bank_balance_that_day = ($banking_record != null) ? (int)$banking_record->account_balance : 0; - @endphp - Register Bank Closing Balance ({{ streamline_date($report->reconciliation_period) }}): {{ ugandan_shillings($bank_balance_that_day) }} --}} -
    -
    -
    -
    - -
    -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/Banking/Resources/views/banking/reconcile/report.blade.php b/docker/statistics/Modules/Banking/Resources/views/banking/reconcile/report.blade.php deleted file mode 100755 index 05573617..00000000 --- a/docker/statistics/Modules/Banking/Resources/views/banking/reconcile/report.blade.php +++ /dev/null @@ -1,462 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - - - -@endpush - -@section('content') -
    -
    -

    Bank Reconciliation Report

    -
    -
    - -
    -
    - @php - $reconciled_transactions = explode(',',$report->reconciled_trans_ids); - $unreconciled_transactions = explode(',',$report->unreconciled_trans_ids); - $total_cleared_credit = $total_cleared_debit = 0; - $total_uncleared_credit = $total_uncleared_debit = 0; - $total_uncleared = $total_cleared = 0; - @endphp - -
    - -
    -
    -
    - - - - - - -
    -
    - - @include('flash::message') - -
    -
    - -
    -
    -
    - -
    -

    RECONCILIATION REPORT


    -

    {{ $chart_of_accounts[$report->bank] }} AS AT {{ streamline_date($report->reconciliation_period) }}

    -

    RECONCILED BY: {{ get_full_name($report->created_by, "id", "first_name", "last_name", "users")}}
    DATE: {{ streamline_date($report->created_at) }}

    -
    -
    - - - - - - - @php - $beginning_of_month = \Carbon\Carbon::parse($report->reconciliation_period)->startOfMonth()->toDateTimeString(); - @endphp - - - - - - - - - - - - - - - @php - $last_banking_record = \Streamline\Models\Banking::where('reconciled',$report->id)->orderBy('id', 'desc')->first(); - @endphp - @if ($last_banking_record->memo == "bank reconciliation adjustment") - - - @else - - - @endif - - - - - - -
    - Reconciliation Summary -
    - Stre@mline Opening Balance As Of {{ streamline_date($beginning_of_month) }}: - - {{ ugandan_shillings($report->opening_streamline_balance) }} -
    - Bank Statement Ending Balance As Of {{ streamline_date($report->reconciliation_period) }}: - - {{ ugandan_shillings($report->ending_bank_statement_balance) }} -
    - @php - $banking_record = get_latest_banking_record($report->bank, $report->reconciliation_period); - $bank_balance_that_day = ($banking_record != null) ? (int)$banking_record->account_balance : 0; - - $orderByCreatedAtIfTransDateIsTheSame = "created_at DESC"; - $orderByIdIfTransDateIsTheSame = "id DESC"; - - $last_record_that_month = DB::table('banking') - ->whereNull('deleted_at') - ->where('bank', '=', $report->bank) - ->where('memo', '!=', 'bank reconciliation adjustment') - ->whereDate('trans_date', '<=', \Carbon\Carbon::parse($report->reconciliation_period)->toDateString()) - ->orderBy('trans_date', 'desc') - ->orderByRaw($orderByCreatedAtIfTransDateIsTheSame) - ->orderByRaw($orderByIdIfTransDateIsTheSame) - ->first(); - $last_running_balance_of_month = ($last_record_that_month != null) ? (int)$last_record_that_month->account_balance : 0; - @endphp - Bank Register Closing Balance As Of {{ streamline_date($report->reconciliation_period) }}: - - {{ ugandan_shillings($last_running_balance_of_month) }} -
    Reconciliation Discrepancy Balance : - {{ $last_banking_record->credit ? ugandan_shillings($last_banking_record->credit) : "-".ugandan_shillings(abs($last_banking_record->debit)) }} - Reconciliation Discrepancy Balance : - {{ ugandan_shillings(0) }} -
    Memo : - {{ $report->memo }} -
    - -

    Cleared Transactions

    -
    Checks and Payments
    - -
    - - - - - - - - - - - @if(count($reconciled_transactions) > 0) - @foreach($reconciled_transactions as $trans_id) - @php $transaction = \Streamline\Models\Banking::find($trans_id); @endphp - @if(!is_null($transaction)) - @if($transaction->trans_type == 'PAYMENT' || $transaction->trans_type == 'TRANSFER') - - - - - @php - $other_accounts_array = explode(',',$transaction->other_accounts); - @endphp - - - - - - - @php $total_cleared_debit += (int)$transaction->debit; @endphp - - - - @endif - @endif - @endforeach - @endif -
    From :To : Memo : Date :Amount :
    {{ $chart_of_accounts[$transaction->bank] }} - @for($x = 0; $x < count($other_accounts_array); $x ++) - @if(isset($chart_of_accounts[$other_accounts_array[$x]])) - {{ $chart_of_accounts[$other_accounts_array[$x]] }} - @else - @php - $item = $payment_items[$other_accounts_array[$x]] ?? ""; - @endphp - {{ $item }} - @endif - @endfor - {{ $transaction->memo }}{{ streamline_date($transaction->trans_date) }} - {{ ugandan_shillings($transaction->debit) }}
    -
    - -
    Deposits and Credits
    - - - - - - - - - - - - @if(count($reconciled_transactions) > 0) - @foreach($reconciled_transactions as $trans_id) - @php $transaction = \Streamline\Models\Banking::find($trans_id); @endphp - @if(!is_null($transaction)) - @if($transaction->trans_type == 'DEPOSIT') - @php $other_accounts_array = explode(',',$transaction->other_accounts); @endphp - - - - - - - @php $total_cleared_credit += (int)$transaction->credit; @endphp - - - - @endif - @endif - @endforeach - @endif -
    From : To :Memo : Date :Amount :
    - @for($x = 0; $x < count($other_accounts_array); $x ++) - @if(isset($chart_of_accounts[$other_accounts_array[$x]])) - {{ $chart_of_accounts[$other_accounts_array[$x]] }} - @else - @php - $item = $payment_items[$other_accounts_array[$x]] ?? ""; - @endphp - {{ $item }} - @endif - @endfor - {{ $chart_of_accounts[$transaction->bank] }}{{ $transaction->memo }}{{ streamline_date($transaction->trans_date) }}{{ ugandan_shillings($transaction->credit) }}
    - -

    Total Cleared Balance : {{ ugandan_shillings($total_cleared = ($total_cleared_credit - $total_cleared_debit)) }}

    - -
    -
    - -

    Uncleared Transactions

    -
    Checks and Payments
    - - - - - - - - - - - - @if(count($unreconciled_transactions) > 0) - @foreach($unreconciled_transactions as $trans_id) - @php $transaction = \Streamline\Models\Banking::find($trans_id); @endphp - @if(!is_null($transaction)) - @if($transaction->trans_type == 'PAYMENT' || $transaction->trans_type == 'TRANSFER') - - - - - - - @php $total_uncleared_debit += (int)$transaction->debit; @endphp - - - - @endif - @endif - @endforeach - @endif -
    From :To : Memo : Date :Amount :
    {{ $chart_of_accounts[$transaction->bank] }} - @php - $uncleared_other_accounts_string = $transaction->other_accounts; - $uncleared_other_accounts_array = is_null($uncleared_other_accounts_string) ? [] : explode(",", $uncleared_other_accounts_string); - @endphp - @for($x = 0; $x < count($uncleared_other_accounts_array); $x ++) - @if(isset($chart_of_accounts[$uncleared_other_accounts_array[$x]])) - {{ $chart_of_accounts[$uncleared_other_accounts_array[$x]] }} - @else - @php - $item = $payment_items[$uncleared_other_accounts_array[$x]] ?? ""; - @endphp - {{ $item }} - @endif - @endfor - {{ $transaction->memo }}{{ streamline_date($transaction->trans_date) }}{{ ugandan_shillings($transaction->debit) }}
    - -
    Deposits and Credits
    - - - - - - - - - - - - @if(count($unreconciled_transactions) > 0) - @foreach($unreconciled_transactions as $trans_id) - @php $transaction = \Streamline\Models\Banking::find($trans_id)@endphp - @if(!is_null($transaction)) - @if($transaction->trans_type == 'DEPOSIT') - @php $other_accounts_array = explode(',',$transaction->other_accounts); @endphp - - - - - - - @php $total_uncleared_credit += (int)$transaction->credit; @endphp - - - - @endif - @endif - @endforeach - @endif -
    From : To :Memo : Date :Amount :
    - @for($x = 0; $x < count($other_accounts_array); $x ++) - @if(isset($chart_of_accounts[$other_accounts_array[$x]])) - {{ $chart_of_accounts[$other_accounts_array[$x]] }} - @else - @php - $item = $payment_items[$other_accounts_array[$x]] ?? ""; - @endphp - {{ $item }} - @endif - @endfor - {{ $chart_of_accounts[$transaction->bank] }}{{ $transaction->memo }}{{ streamline_date($transaction->trans_date) }}{{ ugandan_shillings($transaction->credit) }}
    - -

    Total Uncleared Balance : {{ ugandan_shillings($total_uncleared = ($total_uncleared_credit - $total_uncleared_debit)) }}


    - - - - - - - - @php - $beginning_of_month = \Carbon\Carbon::parse($report->reconciliation_period)->startOfMonth()->toDateTimeString(); - @endphp - - - - - - - - - - - - - - - @php - $last_banking_record = \Streamline\Models\Banking::where('reconciled',$report->id)->orderBy('id', 'desc')->first(); - @endphp - @if ($last_banking_record->memo == "bank reconciliation adjustment") - - - @else - - - @endif - - -
    - Reconciliation Summary -
    - Stre@mline Opening Balance As Of {{ streamline_date($beginning_of_month) }}: - - {{ ugandan_shillings($report->opening_streamline_balance) }} -
    - Bank Statement Ending Balance As Of {{ streamline_date($report->reconciliation_period) }}: - - {{ ugandan_shillings($report->ending_bank_statement_balance) }} -
    - @php - $banking_record = get_latest_banking_record($report->bank, $report->reconciliation_period); - $bank_balance_that_day = ($banking_record != null) ? (int)$banking_record->account_balance : 0; - - $orderByCreatedAtIfTransDateIsTheSame = "created_at DESC"; - $orderByIdIfTransDateIsTheSame = "id DESC"; - - $last_record_that_month = DB::table('banking') - ->whereNull('deleted_at') - ->where('bank', '=', $report->bank) - ->where('memo', '!=', 'bank reconciliation adjustment') - ->whereDate('trans_date', '<=', \Carbon\Carbon::parse($report->reconciliation_period)->toDateString()) - ->orderBy('trans_date', 'desc') - ->orderByRaw($orderByCreatedAtIfTransDateIsTheSame) - ->orderByRaw($orderByIdIfTransDateIsTheSame) - ->first(); - $last_running_balance_of_month = ($last_record_that_month != null) ? (int)$last_record_that_month->account_balance : 0; - @endphp - Register Bank Closing Balance As Of {{ streamline_date($report->reconciliation_period) }}: - - {{ ugandan_shillings($last_running_balance_of_month) }} -
    Reconciliation Discrepancy Balance : - {{ $last_banking_record->credit ? ugandan_shillings($last_banking_record->credit) : "-".ugandan_shillings(abs($last_banking_record->debit)) }} - Reconciliation Discrepancy Balance : - {{ ugandan_shillings(0) }} -
    -
    -
    -
    -
    - -
    -
    - -@endsection - -@push('scripts') - - -@endpush diff --git a/docker/statistics/Modules/Banking/Resources/views/banking/reconcile/reports.blade.php b/docker/statistics/Modules/Banking/Resources/views/banking/reconcile/reports.blade.php deleted file mode 100755 index 563429d4..00000000 --- a/docker/statistics/Modules/Banking/Resources/views/banking/reconcile/reports.blade.php +++ /dev/null @@ -1,263 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - - - -@endpush - -@section('content') -
    -
    -

    Bank Reconciliation Reports

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') - -
    -
    - {{ Form::open(['method'=>'post','route' => 'banking.reconcile.reports']) }} -
    -
    -
    - - -
    -
    - -
    -
    - - -
    -
    - -
    -
    - - -
    -
    - -
    - -
    - -
    - -
    - -
    -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success btn-rounded btn-block pull-right']) }} -
    -
    -
    - {{ Form::close() }} -
    - -
    -
    - - @if(isset($display)) -

    {!! isset($display) ? $display : '' !!}

    - @endif -

    - -
    - - - - - - - - - - - - - - - - - @if(count($records) > 0) - @foreach($records as $record) - - - - - - - - - - - - @endforeach - @endif - -
    Bank NameReconciliation PeriodDate SubmittedStre@mline Bank Opening BalanceBank Statement Ending BalanceBank Register Closing BalanceReconciliation DiscrepancyStaff Incharge{{ __('banking.action') }}
    {{ get_name($record->bank, 'id', 'name', 'chart_of_accounts') }} - @php $beginning_of_month = Carbon\Carbon::parse($record->reconciliation_period)->startOfMonth()->toDateString(); @endphp - From {{ streamline_date($beginning_of_month) }} to {{ streamline_date($record->reconciliation_period) }}. - {{ streamline_date_time_short($record->created_at) }}{{ ugandan_shillings($record->opening_streamline_balance) }}{{ ugandan_shillings($record->ending_bank_statement_balance) }} - @php - $banking_record = get_latest_banking_record($record->bank, $record->reconciliation_period); - $bank_balance_that_day = ($banking_record != null) ? (int)$banking_record->account_balance : 0; - - $orderByCreatedAtIfTransDateIsTheSame = "created_at DESC"; - $orderByIdIfTransDateIsTheSame = "id DESC"; - - $last_record_that_month = DB::table('banking') - ->whereNull('deleted_at') - ->where('bank', '=', $record->bank) - ->where('memo', '!=', 'bank reconciliation adjustment') - ->whereDate('trans_date', '<=', \Carbon\Carbon::parse($record->reconciliation_period)->toDateString()) - ->orderBy('trans_date', 'desc') - ->orderByRaw($orderByCreatedAtIfTransDateIsTheSame) - ->orderByRaw($orderByIdIfTransDateIsTheSame) - ->first(); - $last_running_balance_of_month = ($last_record_that_month != null) ? (int)$last_record_that_month->account_balance : 0; - @endphp - {{ ugandan_shillings($last_running_balance_of_month) }} - - @php - $discrepancy_banking_record = \Streamline\Models\Banking::where('reconciled',$record->id)->orderBy('id', 'desc')->first(); - @endphp - @if ($discrepancy_banking_record && $discrepancy_banking_record->memo == "bank reconciliation adjustment") - {{ $discrepancy_banking_record->credit ? ugandan_shillings($discrepancy_banking_record->credit) : "-".ugandan_shillings(abs($discrepancy_banking_record->debit))}} - @elseif($discrepancy_banking_record && $discrepancy_banking_record->memo != "bank reconciliation adjustment") - {{ ugandan_shillings(0) }} - @endif - {{ get_name($record->created_by, 'id', 'username', 'users') }} - - - View Report - -
    - -
    -
    -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Banking/Resources/views/banking/register.blade.php b/docker/statistics/Modules/Banking/Resources/views/banking/register.blade.php deleted file mode 100755 index 4a0927a5..00000000 --- a/docker/statistics/Modules/Banking/Resources/views/banking/register.blade.php +++ /dev/null @@ -1,343 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('banking.bank_register_report') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') - -
    -
    - {{ Form::open(['method'=>'post','route' => 'banking.register']) }} -
    -
    -
    - - -
    -
    - -
    -
    - - -
    -
    - -
    -
    - - -
    -
    - -
    - -
    - -
    - -
    - -
    -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success btn-rounded btn-block pull-right']) }} -
    -
    -
    - {{ Form::close() }} -
    - -
    -
    - - @if(isset($display)) -

    {!! isset($display) ? $display : '' !!}

    - @endif -

    - - @php - $sum_balance = 0; - $sum_credit = 0; - $sum_debit = 0; - @endphp - -
    - - - - - - - - - - - - - - {{-- - @if(Auth::user()->can('banking-reverse')) - - @endif - --}} - - - - - @if(count($records) > 0) - @foreach($records as $record) - @php - $sum_credit += $record->credit; - $sum_debit += $record->debit; - @endphp - - - - - - - @php - $banks = explode(',',$record->bank); - $other_accounts = explode(',',$record->other_accounts); - @endphp - - - - @if($record->debit != 0) @else @endif - @if($record->credit != 0) @else @endif - - - @if($loop->last) - @php $sum_balance = $record->account_balance; @endphp - @endif - - {{-- - @if(Auth::user()->can('banking-reverse')) - - @endif - --}} - - @endforeach - @endif - - - @if(count($records) > 0) - - - - - {{-- - @if(Auth::user()->can('banking-reverse')) - - @endif - --}} - - @endif -
    Transaction ID{{ __('banking.transaction_date') }}{{ __('banking.record_date') }}{{ __('banking.staff_in_charge') }}{{ __('banking.type') }}{{ __('banking.account') }}{{ __('banking.memo') }}{{ __('banking.decrease') }}{{ __('banking.increase') }}{{ __('banking.balance') }}{{ __('banking.action') }}
    {{ $record->trans_id }}{{ streamline_date($record->trans_date) }}{{ streamline_date_time_short($record->created_at) }}{{ get_full_name($record->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ $record->trans_type }} - @for($x = 0; $x < count($other_accounts); $x++) - {{ get_name($other_accounts[$x], 'id', 'name', 'chart_of_accounts') }}
    - @endfor -
    {{ $record->memo }}{{ ugandan_shillings($record->debit) }} - {{ ugandan_shillings($record->credit) }} - {{ ugandan_shillings($record->account_balance) }} - - - Reverse - -
    - {{ __('banking.current_running_balance') }} - - {{ ugandan_shillings($sum_balance) }} -
    - -
    -
    -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Banking/Resources/views/banking/transfer.blade.php b/docker/statistics/Modules/Banking/Resources/views/banking/transfer.blade.php deleted file mode 100755 index eab85e0c..00000000 --- a/docker/statistics/Modules/Banking/Resources/views/banking/transfer.blade.php +++ /dev/null @@ -1,311 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('banking.bank_transfer') }}

    -
    -
    - -
    -
    -@php -$balance = 0; -@endphp - -@include('flash::message') -
    -
    -
    -
    - {{ Form::open(['route' => 'banking.process_transfer', 'data-toggle' => 'validator', 'id'=>'bank_transfer_form']) }} - -

    {{ __('banking.transfer_funds') }}

    - -
    -
    - -
    - - -
    - -
    - - -
    - -
    - -
    - - -
    -
    -
    - -
    -
    - -
    - - {{ __('banking.ugx') }} -
    -
    - -
    - -
    - - {{ __('banking.ugx') }} -
    -
    - -
    - -
    - - {{ __('banking.ugx') }} -
    -
    -
    - -
    -
    - -
    - {{ Form::textarea('transfer_memo', '', ['class'=>'form-control compulsory required', 'id'=>'transfer_memo']) }} -
    -
    -
    -
    - -
    -
    -
    - -
    -
    - - {{ Form::close() }} - -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Banking/Resources/views/banking/transfer_history.blade.php b/docker/statistics/Modules/Banking/Resources/views/banking/transfer_history.blade.php deleted file mode 100755 index 79b5d69b..00000000 --- a/docker/statistics/Modules/Banking/Resources/views/banking/transfer_history.blade.php +++ /dev/null @@ -1,276 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('banking.bank_transfer_history') }}

    -
    -
    - -
    -
    - -
    -
    - -
    -
    - - {{ Form::open(['method'=>'post','route' => 'banking.transfer_history']) }} -
    -
    -
    - - -
    -
    - -
    -
    - - -
    -
    -
    - -
    -
    - -
    -
    -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success btn-rounded btn-block pull-right']) }} -
    -
    -
    - {{ Form::close() }} - -
    - - -

    {{ __('banking.transfer_history') }}

    -
    - @if(isset($display)) -

    {!! isset($display) ? $display : '' !!}

    - @endif - @php - $sum_total = 0; - @endphp -
    -
    -
    - - - - - - - - {{-- --}} - - - - - - @if(count($transfers) > 0) - @foreach($transfers as $item) - - - - - - {{-- --}} - - - - @php - $sum_total += $item->credit; - @endphp - @endforeach - @endif - - - @if(count($transfers) > 0) - - - - - - @endif -
    {{ __('banking.staff_in_charge') }}{{ __('banking.deposit_from') }}{{ __('banking.deposit_to') }}{{ __('banking.date') }}{{ __('banking.previous_balance_from_account') }}{{ __('banking.account_balance') }}{{ __('banking.amount') }}
    {{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ get_name($item->bank, 'id', 'name', 'chart_of_accounts') }}{{ isset($chart_of_accounts[$item->other_accounts]) ? $chart_of_accounts[$item->other_accounts] : ("N/A") }}{{ streamline_date($item->trans_date) }}{{ ugandan_shillings($item->previous_from_account_balance) }}{{ ugandan_shillings($item->account_balance) }}{{ ugandan_shillings($item->debit) }}
    - {{ __('banking.total') }} - - {{ ugandan_shillings($sum_total) }} -
    - -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Banking/Routes/api.php b/docker/statistics/Modules/Banking/Routes/api.php deleted file mode 100644 index 52164efb..00000000 --- a/docker/statistics/Modules/Banking/Routes/api.php +++ /dev/null @@ -1,18 +0,0 @@ -get('/banking', function () { - return "Banking"; -}); diff --git a/docker/statistics/Modules/Banking/Routes/web.php b/docker/statistics/Modules/Banking/Routes/web.php deleted file mode 100644 index adda6842..00000000 --- a/docker/statistics/Modules/Banking/Routes/web.php +++ /dev/null @@ -1,36 +0,0 @@ - ['auth', 'disablebackbutton', 'user-locale','subscription-tracking']], function () { - /* Banking */ - Route::any('/banking/deposit', 'BankingController@deposit')->name('banking.deposit'); - Route::any('/banking/bank_deposit_slip/{trans_id}', 'BankingController@bank_deposit_slip')->name('banking.bank_deposit_slip'); - Route::any('/banking/quick_bank_deposit', 'BankingController@quick_bank_deposit')->name('banking.quick_bank_deposit'); - Route::any('/banking/transfer', 'BankingController@transfer')->name('banking.transfer'); - Route::any('/banking/transfer/compute_transfer', 'BankingController@compute_transfer')->name('banking.transfer.compute_transfer'); - Route::any('/banking/transfer_history', 'BankingController@transfer_history')->name('banking.transfer_history'); - Route::any('/banking/deposit_history', 'BankingController@deposit_history')->name('banking.deposit_history'); - Route::any('/banking/process_deposit', 'BankingController@process_deposit')->name('banking.process_deposit'); - Route::any('/banking/process_transfer', 'BankingController@process_transfer')->name('banking.process_transfer'); - Route::any('/banking/get_current_account_balance', 'BankingController@get_current_account_balance')->name('banking.get_current_account_balance'); - Route::any('/banking/get_current_account_balance_per_date', 'BankingController@get_current_account_balance_per_date')->name('banking.get_current_account_balance_per_date'); - Route::any('/banking/get_opening_account_balance', 'BankingController@get_opening_account_balance')->name('banking.get_opening_account_balance'); - Route::any('/banking/get_latest_bank_balance', 'BankingController@get_latest_bank_balance')->name('banking.get_latest_bank_balance'); - Route::any('/banking/get_last_reconciliation_balance', 'BankingController@get_last_reconciliation_balance')->name('banking.get_last_reconciliation_balance'); - Route::any('/banking/get_other_income_account_balance', 'BankingController@get_other_income_account_balance')->name('banking.get_other_income_account_balance'); - Route::any('/banking/store_other_income_deposit', 'BankingController@store_other_income_deposit')->name('banking.store_other_income_deposit'); - - /* Banking Records */ - Route::any('/banking/reverse/{trans_id}', 'BankingController@reverse')->name('banking.reverse'); - Route::any('/banking/register', 'BankingController@register')->name('banking.register'); - Route::any('/banking/write_off_balance', 'BankingController@write_off_balance')->name('banking.write_off_balance'); - Route::any('/banking/reconcile', 'BankingController@reconcile')->name('banking.reconcile'); - Route::any('/banking/reconcile/reports', 'BankingController@reconciliation_reports')->name('banking.reconcile.reports'); - Route::any('/banking/finish_adjustment', 'BankingController@finish_adjustment')->name('banking.finish_adjustment'); - Route::any('/banking/finish_with_balance', 'BankingController@finish_with_balance')->name('banking.finish_with_balance'); - Route::any('/banking/finish_reconciling', 'BankingController@finish_reconciling')->name('banking.finish_reconciling'); - Route::any('/bank/reconciliation/report/{id}', 'BankingController@bank_reconciliation_report')->name('bank.reconciliation.report'); - Route::any('/banking/print_bank_reconciliation/{id}', 'BankingController@print_bank_reconciliation')->name('banking.print_bank_reconciliation'); - Route::any('/banking/undo_bank_reconciliation/{id}', 'BankingController@undo_bank_reconciliation')->name('banking.undo_bank_reconciliation'); -}); \ No newline at end of file diff --git a/docker/statistics/Modules/Banking/bitbucket-pipelines.yml b/docker/statistics/Modules/Banking/bitbucket-pipelines.yml deleted file mode 100644 index e850a8fd..00000000 --- a/docker/statistics/Modules/Banking/bitbucket-pipelines.yml +++ /dev/null @@ -1,19 +0,0 @@ -image: alpine/git:latest - -pipelines: - branches: - main: - - step: - name: Merge To Beta - script: - - git remote set-url origin https://Kabricks:${APP_SECRET}@bitbucket.org/dcsammi/${BITBUCKET_REPO_SLUG} - - git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*" - - git fetch - - git checkout beta - - git merge main - - git commit --amend -m "[skip ci] Merge changes from main" - - git push - - step: - name: Deploy To Test - script: - - echo "Ready to deploy to demo or production!" diff --git a/docker/statistics/Modules/Banking/module.json b/docker/statistics/Modules/Banking/module.json deleted file mode 100644 index 3063ecad..00000000 --- a/docker/statistics/Modules/Banking/module.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "Banking", - "alias": "banking", - "description": "Banking module", - "keywords": [], - "priority": 0, - "providers": [ - "Modules\\Banking\\Providers\\BankingServiceProvider" - ], - "files": [] -} diff --git a/docker/statistics/Modules/Budgets/Config/config.php b/docker/statistics/Modules/Budgets/Config/config.php deleted file mode 100644 index cb400918..00000000 --- a/docker/statistics/Modules/Budgets/Config/config.php +++ /dev/null @@ -1,5 +0,0 @@ - 'Budgets' -]; diff --git a/docker/statistics/Modules/Budgets/Http/Controllers/BudgetController.php b/docker/statistics/Modules/Budgets/Http/Controllers/BudgetController.php deleted file mode 100755 index e807dcd6..00000000 --- a/docker/statistics/Modules/Budgets/Http/Controllers/BudgetController.php +++ /dev/null @@ -1,681 +0,0 @@ -middleware('auth'); - $this->middleware('permission:budget-list', ['only' => ['index']]); - $this->middleware('permission:budget-create', ['only' => ['create', 'clone', 'store']]); - $this->middleware('permission:budget-edit', ['only' => ['edit', 'update', 'edit_all', 'update_all']]); - $this->middleware('permission:budget-delete', ['only' => ['destroy', 'inactive', 'activate']]); - $this->middleware('permission:budget-performance-report', ['only' => ['budget_performance']]); - $this->middleware('permission:budget-detail-performance-report', ['only' => ['budget_performance']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index(Request $request) - { - $created_by = $request->created_by; - $dates = $request->dates; - $filters = []; - - if ($created_by == null) : - // pass - elseif ($created_by != 'all') : - array_push($filters, ['created_by', '=', $created_by]); - endif; - - switch ($dates) { - case 'today': - $today = Carbon::today()->format('Y-m-d'); - $budgets = Budget::orderBy('created_at', 'desc')->where($filters)->whereDate('created_at', $today)->paginate(1000); - break; - - case 'yesterday': - $yesterday = Carbon::yesterday()->format('Y-m-d'); - $budgets = Budget::orderBy('created_at', 'desc')->where($filters)->whereDate('created_at', $yesterday)->paginate(1000); - break; - - case 'week': - $week_ago = Carbon::today()->subDays(7)->format('Y-m-d'); - $budgets = Budget::orderBy('created_at', 'desc')->where($filters)->whereDate('created_at', '>=', $week_ago)->paginate(1000); - break; - - case 'month': - $month_ago = Carbon::today()->subDays(30)->format('Y-m-d'); - $budgets = Budget::orderBy('created_at', 'desc')->where($filters)->whereDate('created_at', '>=', $month_ago)->paginate(1000); - break; - - case 'custom-date': - $start_date = Carbon::parse($request->start_date)->format('Y-m-d'); - - $budgets = Budget::orderBy('created_at', 'desc')->where($filters)->whereDate('created_at', '=', $start_date)->paginate(1000); - break; - - case 'custom-range': - $start_date = Carbon::parse($request->start_date)->format('Y-m-d'); - $end_date = Carbon::parse($request->end_date)->format('Y-m-d'); - - $budgets = Budget::orderBy('created_at', 'desc')->where($filters)->whereBetween('created_at', [$start_date, $end_date])->paginate(1000); - break; - - default: - $budgets = Budget::orderBy('created_at', 'desc')->where($filters)->paginate(1000); - break; - } - - - if ($budgets->count() <= 0) { - flash("There are no budgets found!")->error(); - } - - // users with activity - $created_by_array = DB::table('budgets')->groupBy('created_by')->select('created_by')->get()->toArray(); - $created_by = array(count($created_by_array)); - - foreach ($created_by_array as $value) { - $created_by[$value->created_by] = get_full_name($value->created_by, 'id', 'first_name', 'last_name', 'users'); - } - - // remove the count from the array - unset($created_by[0]); - - // add --select-- - $created_by = ['all' => 'ALL'] + $created_by; - - // $budgets = Budget::orderBy('id', 'asc')->paginate(2000); - $budgets = DB::table('budgets')->leftJoin('users', 'users.id', '=', 'budgets.created_by') - ->whereNull('budgets.deleted_at') - ->select('budgets.*', DB::raw("CONCAT(users.first_name,' ',users.last_name) AS user_by")) - ->orderBy('budgets.id', 'desc') - ->paginate(2000); - - return view('budgets::budgets.index', compact('budgets', 'created_by')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - $this_year = Carbon::today()->year; - $accounts = DB::table('chart_of_accounts as c') - ->leftJoin('account_types AS a', 'a.id', '=', 'c.type') - ->select('c.id', 'c.name', 'c.sub_account_of', 'a.name as type') - ->whereIn('c.type', [1, 2, 7]) // 1 - Income, 2 - Expense, 7 - Cost of Goods - ->get(); - return view('budgets::budgets.create', compact('this_year', 'accounts')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - $validator = Validator::make($request->all(), [ - 'period' => 'required', - 'budget_name' => 'required', - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth::user()->id; - $budget = new Budget; - - $period = $request->period; - $period_count = 0; - $period_start = 0; - - switch ($period) { - case 'months': - $period_count = $request->period_count_months; - // $period_start = $request->period_start; - break; - case 'quarters': - $period_count = $request->period_count_quarters; - // $period_start = $request->period_start; - break; - case 'years': - $period_count = $request->period_count_years; - // $period_start = $request->period_start; - break; - default: - break; - } - - $entries = []; - $accs = []; - $row_entry = explode(',', $request->accountsNumber); - for ($i = 0; $i < count($row_entry); $i++) { - $acc_id = 'account_id_row_' . $row_entry[$i]; - $entry_id = 'budget_entry_row_' . $row_entry[$i]; - $account = preg_split("/\~/", $request->$acc_id); - $entry = ['account_id' => $account[0], 'name' => $account[1], 'type' => $account[2], 'sub_account'=>$account[3], 'account_entries' => $request->$entry_id]; - array_push($entries, $entry); - array_push($accs, $account[0]); - } - - try { - Budget::create([ - "name" => $request->budget_name, - "period" => $period, // dropdown months, quarters, years - "period_count" => $period_count, // no. of months, quarters, years - "period_start" => $request->period_start, // date - "accounts" => implode(",", $accs), - "entries" => json_encode($entries), - "affected_tables" => implode(",", []), - "created_by" => $logged_in_user_id, - ]); - flash($request->budget_name . " Budget has been saved")->success(); - return redirect('/budgets/'); - } catch (QueryException $e) { - if ($e->errorInfo != null) { - flash($request->budget_name . " Budget already exists!")->error(); - return back()->withInput(); - } else { - flash($e->getMessage())->error(); - return back()->withInput(); - } - } - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - $budget = Budget::findOrFail($id); - $arr3 = json_decode($budget->entries, true); - $income = $income_section = $income_sub_accounts = $expense = $expense_section = $expense_sub_accounts = []; - $cost_of_goods = $cost_of_goods_section = $cost_of_goods_sub_accounts = $options = []; - foreach ($arr3 as $rkey => $resource) { - if ($resource['type'] == 'Income') { - $income[] = $resource; - if(!empty($resource['sub_account'])) $income_sub_accounts[$resource['sub_account']][] = $resource; - else $income_section[] = $resource; - } - else if ($resource['type'] == 'Cost Of Goods') { - $cost_of_goods[] = $resource; - if(!empty($resource['sub_account'])) $cost_of_goods_sub_sub_accounts[$resource['sub_account']][] = $resource; - else $cost_of_goods_section[] = $resource; - } - else { - $expense[] = $resource; - if(!empty($resource['sub_account'])) $expense_sub_accounts[$resource['sub_account']][] = $resource; - else $expense_section[] = $resource; - } - } - $options[] = ['section_header' => 'Income', 'total_header' => 'Total Income', 'entries' => $income, 'sub_accounts' =>$income_sub_accounts, 'section'=>$income_section]; - $options[] = ['section_header' => 'Cost of Goods', 'total_header' => 'Cost of Goods Total', 'entries' => $cost_of_goods, 'sub_accounts' =>$cost_of_goods_sub_accounts, 'section' => $cost_of_goods_section]; - $options[] = ['section_header' => 'Expenses', 'total_header' => 'Total Expenditure', 'entries' => $expense, 'sub_accounts' =>$expense_sub_accounts, 'section'=>$expense_section]; - // echo '
    ' . var_export($budgets, true) . '
    ';exit; - return view('budgets::budgets.show', compact('budget', 'options')); - } - - /** - * Print the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function print_budget($id) - { - $budget = Budget::findOrFail($id); - $arr3 = json_decode($budget->entries, true); - $income = $income_section = $income_sub_accounts = $expense = $expense_section = $expense_sub_accounts = []; - $cost_of_goods = $cost_of_goods_section = $cost_of_goods_sub_accounts = $options = []; - foreach ($arr3 as $rkey => $resource) { - if ($resource['type'] == 'Income') { - $income[] = $resource; - if(!empty($resource['sub_account'])) $income_sub_accounts[$resource['sub_account']][] = $resource; - else $income_section[] = $resource; - } - else if ($resource['type'] == 'Cost Of Goods') { - $cost_of_goods[] = $resource; - if(!empty($resource['sub_account'])) $cost_of_goods_sub_sub_accounts[$resource['sub_account']][] = $resource; - else $cost_of_goods_section[] = $resource; - } - else { - $expense[] = $resource; - if(!empty($resource['sub_account'])) $expense_sub_accounts[$resource['sub_account']][] = $resource; - else $expense_section[] = $resource; - } - } - $options[] = ['section_header' => 'Income', 'total_header' => 'Total Income', 'entries' => $income, 'sub_accounts' =>$income_sub_accounts, 'section'=>$income_section]; - $options[] = ['section_header' => 'Cost of Goods', 'total_header' => 'Cost of Goods Total', 'entries' => $cost_of_goods, 'sub_accounts' =>$cost_of_goods_sub_accounts, 'section' => $cost_of_goods_section]; - $options[] = ['section_header' => 'Expenses', 'total_header' => 'Total Expenditure', 'entries' => $expense, 'sub_accounts' =>$expense_sub_accounts, 'section'=>$expense_section]; - $data = [ - 'budget' => $budget, - 'options' => $options - ]; - $pdf = SnappyPDF::loadView('budgets::budgets/print_budget', $data) - ->setOrientation('landscape') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Stre@mline - Printed On ' . date('Y-m-d') . ' By ' . auth()->user()->first_name . " " . auth()->user()->last_name . ''); - - return $pdf->inline(ucfirst($budget->name) . date(" d-m-y h:ia") . '.pdf'); - } - - /** - * Display the clone resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function clone($id) - { - $budget = Budget::findOrFail($id); - $this_year = Carbon::today()->year; - $accounts = DB::table('chart_of_accounts as c') - ->leftJoin('account_types AS a', 'a.id', '=', 'c.type') - ->select('c.id', 'c.name', 'c.sub_account_of', 'a.name as type') - ->whereIn('c.type', [1, 2, 7]) - ->get(); - $arr = explode(',', $budget->accounts); - $budget_accounts_ids = []; - for ($i = 0; $i < count($arr); $i++) array_push($budget_accounts_ids, $arr[$i]); - $arr2 = explode(',', $budget->entries); - $entries = []; - for ($i = 0; $i < count($arr2); $i++) array_push($entries, $arr2[$i]); - $budget_accounts = DB::table('chart_of_accounts as c') - ->leftJoin('account_types AS a', 'a.id', '=', 'c.type') - ->select('c.id', 'c.name', 'c.sub_account_of', 'a.name as type') - ->whereIn('c.id', $budget_accounts_ids) - ->orderByRaw("FIELD(c.id, " . $budget->accounts . ")") - ->get(); - return view('budgets::budgets.clone', compact('budget', 'budget_accounts', 'entries', 'this_year', 'accounts')); - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) - { - $budget = Budget::findOrFail($id); - $this_year = Carbon::today()->year; - $accounts = DB::table('chart_of_accounts as c') - ->leftJoin('account_types AS a', 'a.id', '=', 'c.type') - ->select('c.id', 'c.name', 'c.sub_account_of', 'a.name as type') - ->whereIn('c.type', [1, 2, 7]) - ->get(); - $arr2 = explode(',', $budget->entries); - $entries = []; - for ($i = 0; $i < count($arr2); $i++) array_push($entries, $arr2[$i]); - return view('budgets::budgets.edit', compact('budget', 'this_year', 'accounts', 'entries')); - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - $budget = Budget::findOrFail($id); - $validator = Validator::make($request->all(), [ - 'budget_name' => 'required', - 'period' => 'required', - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - - $period_count = 0; - $period = $request->period; - switch ($period) { - case 'months': - $period_count = $request->period_count_months; - // $period_start = $request->period_start_month; - break; - case 'quarters': - $period_count = $request->period_count_quarters; - // $period_start = $request->period_start_quarter; - break; - case 'years': - $period_count = $request->period_count_years; - // $period_start = $request->period_start_year; - break; - default: - break; - } - } - $entries = []; - $row_ids = explode(',', $request->accountsNumber); - $accs = []; - for ($i = 0; $i < count($row_ids); $i++) { - $acc_id = 'account_id_row_' . $row_ids[$i]; - $entry_id = 'budget_entry_row_' . $row_ids[$i]; - $account = preg_split("/\~/", $request->$acc_id); - $entry = ['account_id' => $account[0], 'name' => $account[1], 'type' => $account[2], 'sub_account'=>$account[3], 'account_entries' => $request->$entry_id]; - array_push($entries, $entry); - array_push($accs, $account[0]); - } - - try { - $budget->update([ - 'name' => $request->budget_name, - 'period' => $request->period, - 'period_count' => $period_count, // no. of months, quarters, years - 'period_start' => $request->period_start, - 'accounts' => implode(",", $accs), - 'entries' => $entries, - 'updated_by' => Auth::user()->id, - ]); - flash($request->budget_name . " has been updated")->success(); - return redirect("/budgets/"); - } catch (QueryException $e) { - flash($request->budget_name . " already exists!")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - $budget = Budget::findOrFail($id); - - if ($budget->delete()) { - flash("Budget has been deleted.")->success(); - return redirect('/budgets/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() - { - $budgets = Budget::onlyTrashed()->orderBy('name', 'asc')->paginate(50); - // users with activity - $created_by_array = DB::table('budgets')->groupBy('created_by')->select('created_by')->get()->toArray(); - $created_by = array(count($created_by_array)); - - foreach ($created_by_array as $value) { - $created_by[$value->created_by] = get_full_name($value->created_by, 'id', 'first_name', 'last_name', 'users'); - } - - // remove the count from the array - unset($created_by[0]); - - // add --select-- - $created_by = ['all' => 'ALL'] + $created_by; - - if ($budgets->isEmpty()) { - flash()->error("There is no inactive budget."); - return redirect('/budgets/'); - } else { - return view('budgets::budgets.inactive', compact('budgets', 'created_by')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) - { - $budget = Budget::onlyTrashed()->findOrFail($id); - - if ($budget->restore()) { - flash("Budget has been activated.")->success(); - return redirect('/budgets/'); - } else { - flash()->error("Budget hasn't been activated."); - return redirect()->route('budgets.inactive'); - } - } - - /** - * Search a resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function search(Request $request) - { - - $filters = []; - if ($request->created_by != 'all') $filters[] = ['created_by', '=', $request->created_by]; - if ($request->dates && $request->dates != 'all') { - switch ($request->dates) { - case 'today': - $end_date = Carbon::today()->endOfDay(); - $start_date = Carbon::today()->startOfDay(); - $filters[] = ['created_at', '>=', $start_date]; - $filters[] = ['created_at', '<=', $end_date]; - break; - - case 'yesterday': - $end_date = Carbon::yesterday()->endOfDay(); - $start_date = Carbon::yesterday()->startOfDay(); - $filters[] = ['created_at', '>=', $start_date]; - $filters[] = ['created_at', '<=', $end_date]; - break; - - case 'week': - $end_date = Carbon::today()->endOfDay(); - $start_date = Carbon::today()->subDays(7)->startOfDay(); - $filters[] = ['created_at', '>=', $start_date]; - $filters[] = ['created_at', '<=', $end_date]; - break; - - case 'month': - $end_date = Carbon::today()->endOfDay(); - $start_date = Carbon::today()->subDays(7)->startOfDay(); - $filters[] = ['created_at', '>=', $start_date]; - $filters[] = ['created_at', '<=', $end_date]; - break; - - case 'custom-date': - $end_date = Carbon::parse($request->start_date)->endOfDay(); - $start_date = Carbon::parse($request->start_date)->startOfDay(); - $filters[] = ['created_at', '>=', $start_date]; - $filters[] = ['created_at', '<=', $end_date]; - break; - - case 'custom-range': - $end_date = Carbon::parse($request->end_date)->endOfDay(); - $start_date = Carbon::parse($request->start_date)->startOfDay(); - $filters[] = ['created_at', '>=', $start_date]; - $filters[] = ['created_at', '<=', $end_date]; - break; - } - } - - $created_by_array = DB::table('budgets')->groupBy('created_by')->select('created_by')->get()->toArray(); - $created_by = array(count($created_by_array)); - - foreach ($created_by_array as $value) { - $created_by[$value->created_by] = get_full_name($value->created_by, 'id', 'first_name', 'last_name', 'users'); - } - - // remove the count from the array - unset($created_by[0]); - - // add --select-- - $created_by = ['all' => 'ALL'] + $created_by; - - if ($request->query_active) { - if ($request->active_state == 'active') $budgets = Budget::where($filters)->orderBy('id', 'desc')->get(); - else $budgets = Budget::withTrashed()->where($filters)->orderBy('id', 'desc')->get(); - return view('budgets::budgets.index', compact('budgets', 'created_by')); - } else { - $budgets = Budget::where($filters)->onlyTrashed()->orderBy('deleted_at', 'desc')->get(); - return view('budgets::budgets.inactive', compact('budgets', 'created_by')); - } - } - - public function get_budgets() - { - //code to be returned to view - $code = ""; - - $budgets = Budget::orderBy('name', 'asc')->get(); - - foreach ($budgets as $budget) { - $code .= ""; - } - - return $code; - } - - /* test server side scolling with datatables */ - public function datatable_test() - { - $budgets = Budget::orderBy('name', 'asc')->get(); - - return response()->json($budgets); - } - - //budget vs actual report - public function budget_performance(Request $request) - { - $budget = (!empty($request->budget_id))? Budget::findOrFail($request->budget_id) : Budget::latest()->first(); - if (empty($budget)) return redirect('/budgets/'); - $other_budgets = Budget::where('id', '<>', $budget->id)->select('name', 'id')->get(); - $entries = json_decode($budget->entries, true); - $income = $income_ids = $expense = $expense_ids = $cost_of_goods = $cost_of_goods_ids = $options = []; - - foreach ($entries as $rkey => $resource) { - if ($resource['type'] == 'Income') $income_ids[] = $resource['account_id']; - else if ($resource['type'] == 'Cost Of Goods') $cost_of_goods_ids[] = $resource['account_id']; - else $expense_ids[] = $resource['account_id']; - } - - $budget_start_date = Carbon::parse($budget->period_start)->startOfDay()->toDateString(); - switch ($budget->period) - { - case 'months': - $budget_end_date = date("Y-m-t", strtotime("+". $budget->period_count - 1 ." month", strtotime($budget_start_date))); - $end_date =Carbon::parse($budget_end_date)->endOfDay()->toDateString(); - break; - - case 'quarters': - $budget_end_date = date("Y-m-t", strtotime("+". ($budget->period_count-1) * 3 ." month", strtotime('-1 day', strtotime($budget_start_date)))); - $end_date = Carbon::parse($budget_end_date)->endOfDay()->toDateString(); - break; - - case 'years': - $day = (date('d', strtotime($budget_start_date)) > 28)? date('Y-m-d', strtotime('-3 day', strtotime($budget_start_date))) : $budget_start_date; - $budget_end_date = date("Y-m-t", strtotime("+". $budget->period_count - 1 ." year", strtotime('-1 month', strtotime($day)))); - $end_date =Carbon::parse($budget_end_date)->endOfDay()->toDateString(); - break; - - default: - break; - } - - $request->request->add(['dates' => 'custom_date_range']); - $request->request->add(['start_date' => $budget_start_date]); - $request->request->add(['end_date' => $end_date]); - $request->request->add(['cost_of_goods_ids' => $cost_of_goods_ids]); - $request->request->add(['expense_ids' => $expense_ids]); - $request->request->add(['income_ids' => $income_ids]); - // echo '
    ' . var_export($budget, true) . '
    ';exit; - $data = getNetIncome($request); - - $actual_income = $data['accrual_income_total'] + $data['cash_income_total']; - $actual_cost_of_goods = $data['cog_accrual_total'] + $data['cog_cash_total']; - $actual_expense = $data['expenses_accrual_total'] + $data['expenses_cash_total']; - foreach ($entries as $entry) { - if ($entry['type'] == 'Income') { - $actual_entry = isset($data['revenue'][0][$entry['account_id']]['cash'])? $data['revenue'][0][$entry['account_id']]['cash'] + $data['revenue'][0][$entry['account_id']]['accrual'] : 0; - $entry['actual_entry'] = $actual_entry; - $income [] = $entry; - } - else if ($entry['type'] == 'Cost Of Goods') { - $actual_entry = isset($data['revenue'][1][$entry['account_id']]['cash'])? $data['revenue'][1][$entry['account_id']]['cash'] + $data['revenue'][1][$entry['account_id']]['accrual'] : 0; - $entry['actual_entry'] = $actual_entry; - $cost_of_goods[] = $entry; - } - else { - $actual_entry = isset($data['expense_accounts'][$entry['account_id']]['cash'])? $data['expense_accounts'][$entry['account_id']]['cash'] + $data['expense_accounts'][$entry['account_id']]['accrual'] : 0; - $entry['actual_entry'] = $actual_entry; - $expense[] = $entry; - } - } - $options[] = ['section_header' => 'Income', 'total_header' => 'Total Income', 'entries' => $income, 'actual' => $actual_income]; - $options[] = ['section_header' => 'Cost of Goods', 'total_header' => 'Cost of Goods Total', 'entries' => $cost_of_goods, 'actual' => $actual_cost_of_goods]; - $options[] = ['section_header' => 'Expenses', 'total_header' => 'Total Expenditure', 'entries' => $expense, 'actual' => $actual_expense]; - - $type = explode('/',$request->url()); - $view = ($type[count($type) - 1] == 'summary') ? 'budgets::budgets.budget_performance' : 'budgets::budgets.budget_performance_detail'; - return view($view, compact('budget', 'options', 'data','budget_start_date','budget_end_date','other_budgets')); - - } - - function print_budget_report(Request $request){ - - $budget = json_decode($request->budget); - $options = json_decode($request->options, true); - $data = json_decode($request->data, true); - $range = $request->range; - if ($request->type == 'summary') { - $view = 'budgets::budgets.print_budget_performance'; - $orientation = 'portrait'; - } - else { - $view = 'budgets::budgets.print_budget_performance_detail'; - $orientation = 'landscape'; - } - $pdf = SnappyPDF::loadView($view, compact('budget', 'options','data', 'range')) - ->setOrientation($orientation) - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Stre@mline - Printed On ' . date('Y-m-d') . ' By ' . auth()->user()->first_name . " " . auth()->user()->last_name . ''); - return $pdf->inline(ucfirst($budget->name) . date(" d-m-y h:ia") . '.pdf'); - } -} diff --git a/docker/statistics/Modules/Budgets/Http/Controllers/Controller.php b/docker/statistics/Modules/Budgets/Http/Controllers/Controller.php deleted file mode 100755 index 712e316c..00000000 --- a/docker/statistics/Modules/Budgets/Http/Controllers/Controller.php +++ /dev/null @@ -1,13 +0,0 @@ -registerTranslations(); - $this->registerConfig(); - $this->registerViews(); - $this->loadMigrationsFrom(module_path($this->moduleName, 'Database/Migrations')); - } - - /** - * Register the service provider. - * - * @return void - */ - public function register() - { - $this->app->register(RouteServiceProvider::class); - } - - /** - * Register config. - * - * @return void - */ - protected function registerConfig() - { - $this->publishes([ - module_path($this->moduleName, 'Config/config.php') => config_path($this->moduleNameLower . '.php'), - ], 'config'); - $this->mergeConfigFrom( - module_path($this->moduleName, 'Config/config.php'), $this->moduleNameLower - ); - } - - /** - * Register views. - * - * @return void - */ - public function registerViews() - { - $viewPath = resource_path('views/modules/' . $this->moduleNameLower); - - $sourcePath = module_path($this->moduleName, 'Resources/views'); - - $this->publishes([ - $sourcePath => $viewPath - ], ['views', $this->moduleNameLower . '-module-views']); - - $this->loadViewsFrom(array_merge($this->getPublishableViewPaths(), [$sourcePath]), $this->moduleNameLower); - } - - /** - * Register translations. - * - * @return void - */ - public function registerTranslations() - { - $langPath = resource_path('lang/modules/' . $this->moduleNameLower); - - if (is_dir($langPath)) { - $this->loadTranslationsFrom($langPath, $this->moduleNameLower); - $this->loadJsonTranslationsFrom($langPath); - } else { - $this->loadTranslationsFrom(module_path($this->moduleName, 'Resources/lang'), $this->moduleNameLower); - $this->loadJsonTranslationsFrom(module_path($this->moduleName, 'Resources/lang')); - } - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides() - { - return []; - } - - private function getPublishableViewPaths(): array - { - $paths = []; - foreach (\Config::get('view.paths') as $path) { - if (is_dir($path . '/modules/' . $this->moduleNameLower)) { - $paths[] = $path . '/modules/' . $this->moduleNameLower; - } - } - return $paths; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/Budgets/Providers/RouteServiceProvider.php b/docker/statistics/Modules/Budgets/Providers/RouteServiceProvider.php deleted file mode 100755 index 6420ae31..00000000 --- a/docker/statistics/Modules/Budgets/Providers/RouteServiceProvider.php +++ /dev/null @@ -1,68 +0,0 @@ -mapApiRoutes(); - $this->mapWebRoutes(); - } - - /** - * Define the "web" routes for the application. - * - * These routes all receive session state, CSRF protection, etc. - * - * @return void - */ - protected function mapWebRoutes() - { - Route::middleware('web') - ->namespace($this->namespace) - ->group(module_path('Budgets', '/Routes/web.php')); - } - - /** - * Define the "api" routes for the application. - * - * These routes are typically stateless. - * - * @return void - */ - protected function mapApiRoutes() - { - Route::prefix('api') - ->middleware('api') - ->namespace($this->namespace) - ->group(module_path('Budgets', '/Routes/api.php')); - } -} diff --git a/docker/statistics/Modules/Budgets/Resources/views/budgets/budget_performance.blade.php b/docker/statistics/Modules/Budgets/Resources/views/budgets/budget_performance.blade.php deleted file mode 100644 index cf536931..00000000 --- a/docker/statistics/Modules/Budgets/Resources/views/budgets/budget_performance.blade.php +++ /dev/null @@ -1,243 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('finance.budgets') }}

    -
    -
    - -
    -
    - -{{-- @include('budgets::budgets.menu') -@include('flash::message') --}} -
    -
    -
    - @php - $period_months = getMonthsList(); - $columns = ['Account', 'Budget Total', 'Actual Total', 'Percentage Variance
    Actual vs Budget', 'Actual Variance
    Actual vs Budget']; - switch ($budget->period) - { - case 'months': - $period = "Months"; - $budget_start_date = strtotime($budget->period_start);//y-m-d - $budget_end_date = date("Y-m-d", strtotime("+". $budget->period_count - 1 ." month", $budget_start_date)); - $period_range = date("M-Y", $budget_start_date) . " to " . date("M-Y", strtotime($budget_end_date)); - $interval = DateInterval::createFromDateString('1 month'); - $period = new DatePeriod(new DateTime($budget->period_start), $interval, new DateTime(date("Y-m-d", - strtotime("+". $budget->period_count ." month", $budget_start_date)))); - foreach ($period as $dt) $months_data[] = $dt->format("M-Y"); - $collength = count($columns); - - break; - - case 'quarters': - $period = "Quarters"; - $other_columns =[];$quarter_start_dates =['-01-01', '-04-01', '-07-01', '-10-01']; //m-d - $budget_start_date = $budget->period_start;//y-m-d - $budget_end_date = date("Y-m-d", strtotime("+". ($budget->period_count-1) * 3 ." month", strtotime('-1 day', strtotime($budget_start_date)))); - $quarters_data = get_quarters($budget_start_date, $budget_end_date); - for($y =0; $y < count($quarters_data); $y++) $other_columns[]=$quarters_data[$y]->period; - $period_range = $other_columns[0] . " to " . $other_columns[count($other_columns)-1]; - $collength = count($columns); - - break; - - case 'years': - $period = "Years"; - $year=date('Y', strtotime($budget->period_start)); - // $period_range = $budget_start_date . " to " . $budget_end_date; - $sec = substr($year, -2); - $years_data = [$year.'/'. ++$sec]; - for ($i = 1; $i <$budget->period_count; $i++) array_push($years_data, $year + $i .'/'. ++$sec); - $period_range = $years_data[0] . " to " . $years_data[count($years_data)-1]; - $collength = count($columns); - break; - - default: - break; - } - @endphp -
    - @if(isset($other_budgets)) - - @endif -
    - - {{ Form::open(['method' => 'POST', 'route' => 'budgets.print_reports', 'id' =>'budgetPrint']) }} - - - - - -
    - -
    - {{ Form::close() }} -
    -
    -
    -
    -
    -
    -

    -

    {{ __('budgets.performance') . ": " . $budget->name }}

    -

    -

    -

    {{ "Period(" . ucfirst($budget->period) . "): " . $period_range }}

    -

    -
    -
    -
    -
    - -
    - - - - - - - @php - for ($i = 0; $i < count($columns); $i++) echo ''; - $actual_totals = $totals_budgets = $summary_colums = $income_column_totals=[]; - $expense_column_totals=[];$cost_of_goods_column_totals=[]; - @endphp - - - - - @foreach ($options as $option) - - - - @foreach ($option['entries'] as $entry ) - - @php - for ($i =0; $i < $collength; $i++) { - $sum=0; - for ($j=0; $j < count($entry['account_entries']); $j++) $sum +=(int)$entry['account_entries'][$j]; $col_percent=($entry['actual_entry']>0)? round(((($entry['actual_entry'] - $sum) / $entry['actual_entry']) * 100),2).'%' : 'N/A'; - - if ($i==0) echo '' ; - else if ($i == 1) echo "" ;//Budget Total - else if ($i == 2) echo "" ; //Actual Total - else if ($i == 3) echo "" ; //Percentage variance - else if ($i == 4) echo "" ; //Actual Variance - } - @endphp - - @endforeach - {{-- Budget Section column Totals --}} - - @php - for ($i =0; $i < $collength; $i++) { - $budget_total_section = $columnTotal_section = 0; - if ($i==0) echo '' ; - else if ($i==1){ //Budget totals - for($k=0; $k < $budget->period_count; $k++){ - $columnTotal = 0; - for ($m = 0; $m < count($option['entries']); $m++) $columnTotal +=(int)($option['entries'][$m]['account_entries'][$k]); - $budget_total_section +=$columnTotal; - } - array_push($totals_budgets, $budget_total_section); - echo "" ; - } else if ($i==2) { - array_push($actual_totals, $option['actual']); - echo "" ; //Actual Total - } else if ($i==3) { - $percent=($option['actual'] != 0)? round(((($option['actual'] - $totals_budgets[count($totals_budgets) - 1]) / $option['actual'] ) * 100),2) .'%' : 'N/A'; - echo "" ; //Percentage variance - } - else if ($i == 4) echo "" ; //Actual Variance - - } - @endphp - - @endforeach - - {{-- Overall Budget Performance --}} - - @php - $overall_projection = $totals_budgets[0] - $totals_budgets[1] - $totals_budgets[2]; - array_push($summary_colums, $overall_projection); - $total_actual = $data['accrual_net_income'] + $data['cash_net_income']; - array_push($summary_colums, $total_actual); - $overall_percentage = ($summary_colums[1] != 0)? round(((($summary_colums[1] - $summary_colums[0]) / $summary_colums[1]) * 100),2) .'%' : 'N/A'; - @endphp - - {{-- Budget Projection --}} - {{-- Actual Total --}} - {{-- Percentage variance --}} - {{-- Actual Variance --}} - - - - - - - @php - for ($i = 0; $i < count($columns); $i++) echo ''; - @endphp - - -
    - Budget Name: {{ ucfirst($budget->name) .' - Period('. ucfirst($budget->period) .'): '.$period_range }} -
    ' .$columns[$i].'
    -
    {{ $option['section_header'] }}
    -
    ' .$entry['name']. '" . ugandan_shillings($sum) . "" . ugandan_shillings($entry['actual_entry']) . "" . $col_percent . "" . ugandan_shillings($entry['actual_entry'] - $sum) . "
    ' .$option['total_header']. '" . ugandan_shillings($budget_total_section) . "" . ugandan_shillings($option['actual']) . "" . $percent . "" .ugandan_shillings($option['actual'] - $totals_budgets[count($totals_budgets) - 1]). "
    Performance {{ ugandan_shillings($overall_projection) }} {{ ugandan_shillings($total_actual) }} {{ $overall_percentage }} {{ ugandan_shillings($summary_colums[1] - $summary_colums[0]) }}
    ' .$columns[$i].'
    -
    - {{--
    --}} -
    -
    - - -@endsection - -@push('scripts') - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Budgets/Resources/views/budgets/budget_performance_detail.blade.php b/docker/statistics/Modules/Budgets/Resources/views/budgets/budget_performance_detail.blade.php deleted file mode 100644 index 977ee464..00000000 --- a/docker/statistics/Modules/Budgets/Resources/views/budgets/budget_performance_detail.blade.php +++ /dev/null @@ -1,284 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('finance.budgets') }}

    -
    -
    - -
    -
    - -{{-- @include('budgets::budgets.menu') -@include('flash::message') --}} -
    -
    -
    - @php - $period_months = getMonthsList(); - $column_1 = ['Account']; - $colum_2 = ['Budget Total', 'Actual Total', 'Percentage Variance
    (Actual vs Budget)', 'Actual Variance
    (Actual vs Budget)']; - switch ($budget->period) - { - case 'months': - $period = "Months"; - $budget_start_date = strtotime($budget->period_start);//y-m-d - $budget_end_date = date("Y-m-d", strtotime("+". $budget->period_count - 1 ." month", $budget_start_date)); - $period_range = date("M-Y", $budget_start_date) . " to " . date("M-Y", strtotime($budget_end_date)); - $interval = DateInterval::createFromDateString('1 month'); - $period = new DatePeriod(new DateTime($budget->period_start), $interval, new DateTime(date("Y-m-d", - strtotime("+". $budget->period_count ." month", $budget_start_date)))); - foreach ($period as $dt) $months_data[] = $dt->format("M-Y"); - $columns = array_merge($column_1, $months_data); - $counter = count($columns); - $columns = array_merge($columns, $colum_2); - $collength = count($columns); - - break; - - case 'quarters': - $period = "Quarters"; - $other_columns =[];$quarter_start_dates =['-01-01', '-04-01', '-07-01', '-10-01']; //m-d - $budget_start_date = $budget->period_start;//y-m-d - $budget_end_date = date("Y-m-d", strtotime("+". ($budget->period_count-1) * 3 ." month", strtotime('-1 day', strtotime($budget_start_date)))); - $quarters_data = get_quarters($budget_start_date, $budget_end_date); - for($y =0; $y < count($quarters_data); $y++) $other_columns[]=$quarters_data[$y]->period; - $period_range = $other_columns[0] . " to " . $other_columns[count($other_columns)-1]; - $columns = array_merge($column_1, $other_columns); - $counter = count($columns); - $columns = array_merge($columns, $colum_2); - $collength = count($columns); - - break; - - case 'years': - $period = "Years"; - $year=date('Y', strtotime($budget->period_start)); - // $period_range = $budget_start_date . " to " . $budget_end_date; - $sec = substr($year, -2); - $years_data = [$year.'/'. ++$sec]; - for ($i = 1; $i <$budget->period_count; $i++) array_push($years_data, $year + $i .'/'. ++$sec); - $period_range = $years_data[0] . " to " . $years_data[count($years_data)-1]; - $columns = array_merge($column_1, $years_data); - $counter = count($columns); - $columns = array_merge($columns, $colum_2); - $collength = count($columns); - break; - - default: - break; - } - @endphp -
    - - {{ Form::open(['method' => 'POST', 'route' => 'budgets.print_reports', 'id' =>'budgetPrint']) }} - - - - - -
    - -
    - {{ Form::close() }} - @if(isset($other_budgets)) - - @endif -
    -
    -
    -
    -
    -
    -
    -

    -

    {{ __('budgets.performance_detail') . ": " . $budget->name }}

    -

    -

    -

    {{ "Period(" .ucfirst($budget->period) . "): " . $period_range }}

    -

    -
    -
    -
    -
    - -
    - - - - - - - @php - for ($i = 0; $i < count($columns); $i++) echo ''; - $actual_totals = $totals_budgets = $summary_colums = $income_column_totals=[]; - $expense_column_totals = $cost_of_goods_column_totals=[]; - @endphp - - - - - @foreach ($options as $option) - - - - @foreach ($option['entries'] as $entry) - - @php - for ($i =0; $i < $collength; $i++) { - $sum=0; - for ($j=0; $j < count($entry['account_entries']); $j++) $sum +=(int)$entry['account_entries'][$j]; $col_percent=($entry['actual_entry']>0)? round(((($entry['actual_entry'] - $sum) / $entry['actual_entry']) * 100),2).'%' : 'N/A'; - - if ($i==0) echo '' ; - else if ($i === $counter) echo "" ;//Budget Total - else if ($i == $counter + 1) echo "" ; //Actual Total - else if ($i == $counter + 2) echo "" ; //Percentage variance - else if ($i == $counter + 3) echo "" ; //Actual Variance - else { - echo "" ; - } - } - @endphp - - @endforeach - {{-- Budget Section column Totals --}} - - @php - for ($i =0; $i < $collength; $i++) { - $budget_total_section = $columnTotal_section = 0; - if ($i==0) echo '' ; - else if ($i == $counter){ //Budget totals - for($k=0; $k < $budget->period_count; $k++){ - $columnTotal = 0; - for ($m = 0; $m < count($option['entries']); $m++) $columnTotal +=(int)($option['entries'][$m]['account_entries'][$k]); - $budget_total_section +=$columnTotal; - } - array_push($totals_budgets, $budget_total_section); - echo "" ; - } else if ($i == $counter + 1) { - array_push($actual_totals, $option['actual']); - echo "" ; //Actual Total - } else if ($i== $counter+2) { - $percent=($option['actual']> 0)? round(((($option['actual'] - $totals_budgets[count($totals_budgets) - 1]) / $option['actual'] ) * 100),2) .'%' : 'N/A'; - echo "" ; //Percentage variance - } - else if ($i == $counter+3) echo "" ; //Actual Variance - else { - for ($b=0; $b < count($option['entries']); $b++) { - $columnTotal_section +=(int)($option['entries'][$b]['account_entries'][$i - 1]); - } - //Push to column total arrays - if($entry['type'] == 'Income') array_push($income_column_totals, $columnTotal_section); - else if($entry['type'] == 'Expense') array_push($expense_column_totals, $columnTotal_section); - else array_push($cost_of_goods_column_totals, $columnTotal_section); - - echo "" ; - } - - } - @endphp - - @endforeach - - {{-- Overall Budget Performance --}} - - - @php - $overall_projection = $totals_budgets[0] - $totals_budgets[1] - $totals_budgets[2]; - array_push($summary_colums, $overall_projection); - $total_actual = $data['accrual_net_income'] + $data['cash_net_income']; - array_push($summary_colums, $total_actual); - $overall_percentage = ($summary_colums[1] > 0)? round(((($summary_colums[1] - $summary_colums[0]) / $summary_colums[1]) * 100),2) .'%' : 'N/A'; - - for ($i =0; $i < $collength; $i++) { - if ($i==0) echo '' ; - else if ($i == $counter){ //Budget Totals - echo "" ; - } else if ($i == $counter + 1) { - echo "" ; - } else if ($i == $counter + 2) { - echo "" ; - } else if ($i == $counter + 3) { - echo "" ; - } else { - $columnTotal_projection=$income_column_totals[$i-1] - $expense_column_totals[$i-1] - $cost_of_goods_column_totals[$i-1]; - echo "" ; - } - } - @endphp - - - - - - @php - for ($i = 0; $i < count($columns); $i++) echo ''; - @endphp - - -
    - Budget Name: {{ ucfirst($budget->name) .' - Period('. ucfirst($budget->period) .'): '.$period_range }} -
    ' .$columns[$i].'
    -
    {{ $option['section_header'] }}
    -
    ' .$entry['name']. '" . ugandan_shillings($sum) . "" . ugandan_shillings($entry['actual_entry']) . "" . $col_percent . "" . ugandan_shillings($entry['actual_entry'] - $sum) . "" .ugandan_shillings($entry['account_entries'][$i - 1]). "
    ' .$option['total_header']. '" . ugandan_shillings($budget_total_section) . "" . ugandan_shillings($option['actual']) . "" . $percent . "" .ugandan_shillings($option['actual'] - $totals_budgets[count($totals_budgets) - 1]). "" .ugandan_shillings($columnTotal_section). "
    Summary" . ugandan_shillings($overall_projection) . "" . ugandan_shillings($total_actual) . "" . $overall_percentage . "" . ugandan_shillings($summary_colums[1] - $summary_colums[0]) . "".ugandan_shillings($columnTotal_projection). "
    ' .$columns[$i].'
    -
    - {{--
    --}} -
    -
    - - -@endsection - -@push('scripts') - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Budgets/Resources/views/budgets/clone.blade.php b/docker/statistics/Modules/Budgets/Resources/views/budgets/clone.blade.php deleted file mode 100644 index 6390e607..00000000 --- a/docker/statistics/Modules/Budgets/Resources/views/budgets/clone.blade.php +++ /dev/null @@ -1,1220 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('finance.budgets') }}

    -
    -
    - -
    -
    - -@include('budgets::budgets.menu') -@include('flash::message') -
    -
    -
    - {{ Form::open(['method' => 'POST', 'route' => 'budgets.store', 'data-toggle' => 'validator', 'id' => - 'budgetForm']) }} -
    - -
    -
    - {{ Form::label('budget_name', __('budgets.budget_name')) }} - {{ Form::text('budget_name', '', ['class' => 'form-control - compulsory','required','data-error'=> '']) }} -
    -
    - -
    -
    - {{ Form::label('period', 'Budget Breakdown') }} -
    - -
    -
    -
    - -
    -
    - {{ Form::label('period_start', 'Budget Start Date') }} -
    - {{ Form::text('period_start','',['class' => 'form-control compulsory', 'required','readonly','id'=>'period_start']) }} - -
    -
    -
    - -
    -
    - {{ Form::label('period_count_months', __('budgets.period_count_months')) }} - {{ Form::number('period_count_months', ($budget->period == "months") ? - $budget->period_count : '', ['class' => 'form-control compulsory', 'required', 'data-error' => - '', 'min' => 1, 'max' => 12]) }} -
    - -
    - {{ Form::label('period_count_quarters', __('budgets.period_count_quarters')) }} - {{ Form::number('period_count_quarters',($budget->period == "quarters") ? $budget->period_count - : '', ['class' => 'form-control compulsory', 'required', 'data-error' => '', 'min' => 1, 'max' - => 20]) }} -
    - -
    - {{ Form::label('period_count_years', __('budgets.period_count_years')) }} - {{ Form::number('period_count_years',($budget->period == "years") ? $budget->period_count :'', - ['class' => 'form-control compulsory', 'required', 'data-error' => '', 'min' => 1, 'max' => 5]) - }} -
    -
    - - {{--
    - @php - $period_months = getMonthsList(); - $months_select = array_merge(array(__('budgets.select')), $period_months); - - $period_quarters = array("First", "Second", "Third", "Fourth"); - $quarters_select = array_merge(array(__('budgets.select')), $period_quarters); - @endphp - -
    - {{ Form::label('period_start_month', __('budgets.period_start_month')) }} - {{ Form::select('period_start_month', $months_select, ($budget->period == "months") ? - $budget->period_start : '', ['class' =>'form-control compulsory required'])}} -
    - -
    - {{ Form::label('period_start_quarter', __('budgets.period_start_quarter')) }} - {{ Form::select('period_start_quarter', $quarters_select, ($budget->period == "quarters") ? - $budget->period_start : '', ['class' => 'form-control compulsory required'])}} -
    - -
    - {{ Form::label('period_start_year', __('budgets.period_start_year')) }} - {{ Form::number('period_start_year', ($budget->period == "years") ? $budget->period_start : - $this_year, ['class' => 'form-control compulsory','required', 'data-error' => '', 'min' => - $this_year]) }} -
    -
    --}} -
    - -
    - {{--
    - -
    -
    - Calculate totals -
    -
    - -
    -
    - Remove rows -
    -
    - -
    -
    --}} - -
    -
    - @php - $period_months = getMonthsList(); - $period_quarters = array("First", "Second", "Third", "Fourth"); - $option_accounts = ""; - $option_accounts_income=''; $option_accounts_expenses='';$option_accounts_cost_of_goods = ''; - foreach ($accounts as $account) { - $value=$account->id.'~'.$account->name.'~'.$account->type.'~'.$account->sub_account_of; - if($account->type == 'Income'){ - $option_accounts_income .= ""; - } - else if($account->type == 'Expense') $option_accounts_expenses .= ""; - else $option_accounts_cost_of_goods .= ""; - } - $option_accounts .= "" . $option_accounts_income . " - " . $option_accounts_expenses . ""; - - $new_accn_arr = count(explode(',', $budget->accounts)); - @endphp - -
    -
    -
    - -
    -
    -
    -
    -
    - - -
    -
    - - {{ Form::close() }} -
    -
    -
    - -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Budgets/Resources/views/budgets/create.blade.php b/docker/statistics/Modules/Budgets/Resources/views/budgets/create.blade.php deleted file mode 100755 index e2df63de..00000000 --- a/docker/statistics/Modules/Budgets/Resources/views/budgets/create.blade.php +++ /dev/null @@ -1,1000 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('finance.budgets') }}

    -
    -
    - -
    -
    - -@include('budgets::budgets.menu') -@include('flash::message') -
    -
    -
    - - {{ Form::open(['method' => 'POST', 'route' => 'budgets.store', 'data-toggle' => 'validator', 'id' => - 'budgetForm']) }} -
    - -
    -
    - {{ Form::label('budget_name', __('budgets.budget_name')) }} - {{ Form::text('budget_name', '', ['class' => 'form-control compulsory', 'required', 'data-error' - => '']) }} -
    -
    - -
    -
    - {{ Form::label('period', 'Budget Breakdown') }} -
    - -
    -
    -
    - -
    -
    - {{ Form::label('period_start', 'Budget Start Date') }} -
    - {{ Form::text('period_start','',['class' => 'form-control compulsory', 'required','readonly','id'=>'period_start']) }} - -
    -
    -
    - -
    -
    - {{ Form::label('period_count_months', __('budgets.period_count_months')) }} - {{ Form::number('period_count_months', '', ['class' => 'form-control compulsory', 'required', - 'data-error' => '', 'min' => 1, 'max' => 12]) }} -
    - -
    - {{ Form::label('period_count_quarters', __('budgets.period_count_quarters')) }} - {{ Form::number('period_count_quarters', '', ['class' => 'form-control compulsory', 'required', - 'data-error' => '', 'min' => 1, 'max' => 20]) }} -
    - -
    - {{ Form::label('period_count_years', __('budgets.period_count_years')) }} - {{ Form::number('period_count_years', '', ['class' => 'form-control compulsory', 'required', - 'data-error' => '', 'min' => 1, 'max' => 10]) }} -
    -
    - @php - $period_months = getMonthsList(); - $months_select = array_merge(array(__('budgets.select')), $period_months); - - $period_quarters = array("First", "Second", "Third", "Fourth"); - $quarters_select = array_merge(array(__('budgets.select')), $period_quarters); - @endphp -
    - -
    - -
    -
    - @php - $option_accounts = ""; - $option_accounts_income=''; $option_accounts_expenses='';$option_accounts_cost_of_goods = ''; - foreach ($accounts as $account) { - $value=$account->id.'~'.$account->name.'~'.$account->type.'~'.$account->sub_account_of; - if($account->type == 'Income'){ - $option_accounts_income .= ""; - } else if($account->type == 'Expense') $option_accounts_expenses .= ""; - else $option_accounts_cost_of_goods .= ""; - - } - $option_accounts .= "" . $option_accounts_income . " - " . $option_accounts_expenses . ""; - @endphp - -
    -
    -
    - -
    -
    -
    -
    -
    - -
    -
    - - {{ Form::close() }} -
    -
    -
    - -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Budgets/Resources/views/budgets/edit.blade.php b/docker/statistics/Modules/Budgets/Resources/views/budgets/edit.blade.php deleted file mode 100644 index 55a2123d..00000000 --- a/docker/statistics/Modules/Budgets/Resources/views/budgets/edit.blade.php +++ /dev/null @@ -1,1153 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('finance.budgets') }}

    -
    -
    - -
    -
    - -@include('budgets::budgets.menu') -@include('flash::message') -
    -
    -
    - {{ Form::model($budget, ['method' => 'PUT', 'route' => ['budgets.update', $budget], 'data-toggle' - =>'validator', 'id' =>'budgetForm']) }} -
    - -
    -
    - {{ Form::label('budget_name', __('budgets.budget_name')) }} - {{ Form::text('budget_name', $budget->name, ['class' => 'form-control - compulsory','required','data-error'=> '']) }} -
    -
    - -
    -
    - {{ Form::label('period', 'Budget Breakdown') }} -
    - -
    -
    -
    - -
    -
    - {{ Form::label('period_start', 'Budget Start Date') }} -
    - {{ Form::text('period_start', $budget->period_start,['class' => 'form-control compulsory', 'required','readonly','id'=>'period_start']) }} - -
    -
    -
    - -
    -
    - {{ Form::label('period_count_months', __('budgets.period_count_months')) }} - {{ Form::number('period_count_months', ($budget->period == "months") ? - $budget->period_count : '', ['class' => 'form-control compulsory', 'required', 'data-error' => - '', 'min' => 1, 'max' => 12]) }} -
    - -
    - {{ Form::label('period_count_quarters', __('budgets.period_count_quarters')) }} - {{ Form::number('period_count_quarters',($budget->period == "quarters") ? $budget->period_count - : '', ['class' => 'form-control compulsory', 'required', 'data-error' => '', 'min' => 1, 'max' - => 20]) }} -
    - -
    - {{ Form::label('period_count_years', __('budgets.period_count_years')) }} - {{ Form::number('period_count_years',($budget->period == "years") ? $budget->period_count :'', - ['class' => 'form-control compulsory', 'required', 'data-error' => '', 'min' => 1, 'max' => 5]) - }} -
    -
    -
    - -
    -
    -
    - @php - $period_months = getMonthsList(); - $period_quarters = array("First", "Second", "Third", "Fourth"); - $option_accounts = ""; - $option_accounts_income=''; $option_accounts_expenses='';$option_accounts_cost_of_goods = ''; - foreach ($accounts as $account) { - $value=$account->id.'~'.$account->name.'~'.$account->type.'~'.$account->sub_account_of; - if($account->type == 'Income') $option_accounts_income .= ""; - else if($account->type == 'Expense') $option_accounts_expenses .= ""; - else $option_accounts_cost_of_goods .= ""; - } - $option_accounts .= "" . $option_accounts_income . " - " . $option_accounts_expenses . ""; - - $new_accn_arr = count(explode(',', $budget->accounts)); - @endphp - -
    -
    -
    - -
    -
    -
    -
    -
    - - -
    - -
    - {{ Form::close() }} -
    -
    -
    - -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Budgets/Resources/views/budgets/inactive.blade.php b/docker/statistics/Modules/Budgets/Resources/views/budgets/inactive.blade.php deleted file mode 100644 index 5669fbe7..00000000 --- a/docker/statistics/Modules/Budgets/Resources/views/budgets/inactive.blade.php +++ /dev/null @@ -1,243 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('finance.budgets') }}

    -
    -
    - -
    -
    - -{{-- @include('budgets::budgets.menu') --}} - -
    - {{ Form::open(['route' => 'budgets.search']) }} -
    -
    -
    - {{ Form::label('created_by', "Staff member") }} - {{ Form::select('created_by', $created_by, null, ['class' => 'form-control compulsory','required']) }} -
    -
    -
    -
    - {{ Form::label('date_range', "Select the date") }} -
    - -
    -
    -
    - - - -
    -
    -
    - {{ Form::button("Search", ['type'=>'submit','style'=>"border-radius: 5px;", 'class'=>'btn btn-success - waves-effect waves-light m-r-10']) - }} -
    -
    - -
    - {{ Form::close() }} - @include('flash::message') - -
    -
    -
    - {{--

    {{ __('finance.export_data_to_copy_csv_pdf_print') }}

    --}} -
    - - - - - - - - - - - - - - @if(count($budgets) > 0) - @foreach($budgets as $budget) - @php - $period = "N/A"; - $period_count = $budget->period_count; - $period_start = $budget->period_start; - $period_range = "N/A"; - - switch ($budget->period) { - case 'months': - $period = "Months"; - - $period_months = getMonthsList(); - if (isset($period_months[$period_start]) && isset($period_months[$period_start + - $period_count])) { - $period_range = $period_months[$period_start] . " - " . $period_months[$period_start + - $period_count]; - } - break; - - case 'quarters': - $period = "Quarters"; - - $period_quarters = array("First", "Second", "Third", "Fourth"); - if (isset($period_quarters[$period_start]) && isset($period_quarters[$period_start + - $period_count])) { - $period_range = $period_quarters[$period_start] . " - " . $period_quarters[$period_start + - $period_count]; - } - break; - - case 'years': - $period = "Years"; - - if (is_numeric($period_start)) { - $period_range = $period_start . " - " . ($period_start + $period_count); - } - break; - - default: - break; - } - @endphp - - - - - - - - - - @endforeach - @endif - - - - - - - - - - - - -
    NameBudget BreakdownPeriodCreated ByDate & Time CreatedActions
    {{ $budget->name }}{{ ucfirst($budget->period) }}{{ $period_range }}{{ get_full_name($budget->created_by, 'id', 'first_name', 'last_name', 'users') }} - {{ streamline_date_time_short($budget->created_at) }} - @if( Auth::user()->can('budget-delete')) - {{ Form::model($budget->id ,['method' => 'POST', 'route' => ['budgets.activate', - $budget->id]]) }} - - {{ Form::close() }} - @endif - -
    NameBudget BreakdownPeriodCreated ByDate & Time CreatedActions
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Budgets/Resources/views/budgets/index.blade.php b/docker/statistics/Modules/Budgets/Resources/views/budgets/index.blade.php deleted file mode 100755 index 2ef1b313..00000000 --- a/docker/statistics/Modules/Budgets/Resources/views/budgets/index.blade.php +++ /dev/null @@ -1,309 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('finance.budgets') }}

    -
    -
    - -
    -
    - -@include('budgets::budgets.menu') - -
    - {{ Form::open(['route' => 'budgets.search']) }} -
    -
    -
    - {{ Form::label('created_by', "Staff member") }} - {{ Form::select('created_by', $created_by, null, ['class' => 'form-control compulsory','required']) }} -
    -
    -
    -
    - {{ Form::label('date_range', "Select the date") }} -
    - -
    -
    -
    -
    -
    - {{ Form::label('active_state', "Select Active/Inactive Budgets") }} -
    - -
    -
    -
    -
    -
    - -
    -
    - - -
    - -
    -
    -
    - {{ Form::hidden('query_active', 'active') }} - {{ Form::button("Search", ['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    - {{ Form::close() }} -
    - -@include('flash::message') - -
    -
    -
    -

    {{ __('finance.export_data_to_copy_csv_pdf_print') }}

    - {{--
    --}} - - - - - - - - - - - - - - - - - - @if(!empty($budgets)) - @foreach($budgets as $budget) - @php - $period = "N/A"; - $period_count = $budget->period_count; - $period_start = $budget->period_start; - $period_range = "N/A"; - - $arr3 = json_decode($budget->entries, true); - $income =[]; $expense=[]; $cost_of_goods =[]; - $income_total=0;$expense_total=0;$cost_of_goods_total = 0; - foreach ($arr3 as $rkey => $resource){ - if ($resource['type'] == 'Income') $income[] = $resource; - else if ($resource['type'] == 'Cost Of Goods') $cost_of_goods[] = $resource; - else $expense[] = $resource; - } - if(!empty($income)) { - for($counter =0; $counter < count($income); $counter++ ) if(!empty($income[$counter]['account_entries'])) $income_total +=array_sum($income[$counter]['account_entries']); - } - if(!empty($expense)) { - for($counter =0; $counter < count($expense); $counter++ ) if(!empty($expense[$counter]['account_entries'])) $expense_total +=array_sum($expense[$counter]['account_entries']); - } - if(!empty($cost_of_goods)) { - for($counter =0; $counter < count($cost_of_goods); $counter++ ) if(!empty($cost_of_goods[$counter]['account_entries'])) $cost_of_goods_total +=array_sum($cost_of_goods[$counter]['account_entries']); - } - $projection_total = $income_total - $expense_total - $cost_of_goods_total; - - switch ($budget->period) { - case 'months': - $period = "Months"; - - $period_months = getMonthsList(); - $budget_start_date = strtotime($budget->period_start);//y-m-d - $budget_end_date = date("Y-m-d", strtotime("+". $budget->period_count - 1 ." month", $budget_start_date)); - $period_range = date("M-Y", $budget_start_date) . " to " . date("M-Y", strtotime($budget_end_date)); - - break; - - case 'quarters': - $period = "Quarters"; - $other_columns =[];$quarter_start_dates =['-01-01', '-04-01', '-07-01', '-10-01']; //m-d - $budget_start_date = $budget->period_start;//y-m-d - $budget_end_date = date("Y-m-d", strtotime("+". ($budget->period_count-1) * 3 ." month", strtotime('-1 day', strtotime($budget_start_date)))); - $quarters_data = get_quarters($budget_start_date, $budget_end_date); - for($y =0; $y < count($quarters_data); $y++) $other_columns[] = $quarters_data[$y]->period; - $period_range = $other_columns[0] . " to " . $other_columns[count($other_columns)-1]; - break; - - case 'years': - $period = "Years"; - $year=date('Y', strtotime($budget->period_start)); - $sec = substr($year, -2); - $years_data = [$year.'/'. ++$sec]; - for ($i = 1; $i <$budget->period_count; $i++) array_push($years_data, $year + $i .'/'. ++$sec); - $period_range = $years_data[0] . " to " . $years_data[count($years_data)-1]; - break; - - default: - break; - } - @endphp - - - - - - - - - {{-- --}} - - - - - - @endforeach - @endif - - - - - - - - - - - - - - - - -
    NameBudget BreakdownPeriodIncomeCost of GoodsExpenseProjected Net IncomeCreated ByDate CreatedActions
    {{ $budget->name }}{{ $period }}{{ $period_range }}{{ ugandan_shillings($income_total) }}{{ ugandan_shillings($cost_of_goods_total) }}{{ ugandan_shillings($expense_total) }}{{ ugandan_shillings($projection_total) }}{{ get_full_name($budget->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ $budget->user_by }}{{ streamline_date_time_short($budget->created_at) }} - @if( Auth::user()->can('budget-view')) - {{ - __('budgets.view') }} - @endif - - @if( Auth::user()->can('budget-edit')) - {{ - __('budgets.edit') }} - @endif - - @if( Auth::user()->can('budget-delete')) - {{ Form::model($budget->id ,['method' => 'DELETE', 'route' => ['budgets.destroy', - $budget->id], 'style'=>'display:inline']) }} - - {{ Form::close() }} - @endif -
    NameBudget BreakdownPeriodIncomeCost of GoodsExpenseProjected Net IncomeCreated ByDate CreatedActions
    - {{--
    --}} -
    -
    -
    -@endsection - -@push('scripts') - - - - -{{-- --}} - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Budgets/Resources/views/budgets/menu.blade.php b/docker/statistics/Modules/Budgets/Resources/views/budgets/menu.blade.php deleted file mode 100755 index 26c64c71..00000000 --- a/docker/statistics/Modules/Budgets/Resources/views/budgets/menu.blade.php +++ /dev/null @@ -1,25 +0,0 @@ -
    -
    - @if( Auth::user()->can('budget-list')) - {{ __('budgets.view_budgets') }} - @endif - @if( Auth::user()->can('budget-create') ) - {{ __('budgets.add_new_budget') }} - @if(isset($budgets)) - - @endif - @endif - @if( Auth::user()->can('budget-delete')) - {{ __('budgets.view_inactive_budgets') }} - @endif -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Budgets/Resources/views/budgets/print_budget.blade.php b/docker/statistics/Modules/Budgets/Resources/views/budgets/print_budget.blade.php deleted file mode 100644 index 71d37dd5..00000000 --- a/docker/statistics/Modules/Budgets/Resources/views/budgets/print_budget.blade.php +++ /dev/null @@ -1,314 +0,0 @@ - - - - - - - - - - - - - - - {{ config('app.name', 'Streamline') }} - - - - - - - - - - - - -
    -
    -
    -
    -
    - @php - $second_col = "Account"; $end_col = "Budget Total"; - $hospital_info = \Streamline\Models\HospitalInformation::find(1); - switch ($budget->period) - { - case 'months': - $period = "Months"; - $budget_start_date = strtotime($budget->period_start);//y-m-d - $budget_end_date = date("Y-m-d", strtotime("+". $budget->period_count - 1 ." month", $budget_start_date)); - $period_range = date("M-Y", $budget_start_date) . " to " . date("M-Y", strtotime($budget_end_date)); - $interval = DateInterval::createFromDateString('1 month'); - $period = new DatePeriod(new DateTime($budget->period_start), $interval, new DateTime(date("Y-m-d", strtotime("+". $budget->period_count ." month", $budget_start_date)))); - foreach ($period as $dt) $months_data[] = $dt->format("M-Y"); - - $column_1 = [$second_col]; - $columns = array_merge($column_1, $months_data); - array_push($columns, $end_col); - $collength = count($columns); - - break; - - case 'quarters': - $period = "Quarters"; - $other_columns =[];$quarter_start_dates =['-01-01', '-04-01', '-07-01', '-10-01']; //m-d - $budget_start_date = $budget->period_start;//y-m-d - $budget_end_date = date("Y-m-d", strtotime("+". ($budget->period_count-1) * 3 ." month", strtotime('-1 day', strtotime($budget_start_date)))); - $quarters_data = get_quarters($budget_start_date, $budget_end_date); - for($y =0; $y < count($quarters_data); $y++) $other_columns[] = $quarters_data[$y]->period; - $period_range = $other_columns[0] . " to " . $other_columns[count($other_columns)-1]; - - $column_1 = [$second_col]; - $columns = array_merge($column_1, $other_columns); - array_push($columns, $end_col); - $collength = count($columns); - break; - - case 'years': - $period = "Years"; - $year=date('Y', strtotime($budget->period_start)); - // if (is_numeric($year)) $period_range = $year . " to " . ($year + $budget->period_count-1); - - $sec = substr($year, -2); - $years_data = [$year.'/'. ++$sec]; - for ($i = 1; $i <$budget->period_count; $i++) array_push($years_data, $year + $i .'/'. ++$sec); - $period_range = $years_data[0] . " to " . $years_data[count($years_data)-1]; - $column_1 = [$second_col]; - $columns = array_merge($column_1, $years_data); - array_push($columns, $end_col); - $collength = count($columns); - break; - - default: - break; - } - @endphp - - @if(is_null($hospital_info->pdf_print_header)) - Responsive image -

    - {{ $hospital_info->name . ' | ' . $hospital_info->phone_number . ' | ' . - $hospital_info->email . ' | ' . $hospital_info->address . ' ' . - $hospital_info->country }} -

    - @else - Responsive image - @endif -
    -
    -

    {{ __('budgets.budget_name') . ": " . $budget->name }}

    -

    {{ "Period(" .ucfirst($budget->period) . "): " . $period_range }}

    - -
    -
    -
    - - - - - - - - @php - for ($i = 0; $i < count($columns); $i++) echo ''; - $totals_budgets = $sub_accounts = $totals_budgets_colums = $income_column_totals = $expense_column_totals = $cost_of_goods_column_totals = []; - $sub_account_total= 0; - @endphp - - - - - @foreach ($options as $option) - - - - {{-- @foreach ($option['sub_accounts'] as $sub_account) - - - - @foreach ($sub_account as $sub_account_entry) - - @php - for ($i =0; $i < $collength; $i++) { - $sum=0; - for ($j=0; $j < count($sub_account_entry['account_entries']); $j++) $sum +=(int)$sub_account_entry['account_entries'][$j]; - if ($i==0) echo '' ; - else if ($i==$collength - 1) echo "" ; - else echo "" ; - } - @endphp - - @endforeach --}} - {{-- Sub Account Section column Totals --}} - {{-- - @php - for ($i =0; $i < $collength; $i++) { - $sub_account_total_section = $sub_account_columnTotal_section=0; $keys = array_keys($option['sub_accounts']); - if ($i==0) echo '' ; - else if ($i==$collength - 1){ //Sub account totals - for($k=0; $k < $budget->period_count; $k++){ - $columnTotal = 0; - for ($m = 0; $m < count($option['sub_accounts']); $m++) { - for ($l = 0; $l < count($option['sub_accounts'][$keys[$m]]); $l++) $columnTotal +=(int)($option['sub_accounts'][$keys[$m]][$l]['account_entries'][$k]); - } - $sub_account_total_section += $columnTotal; - } - echo "" ; - } else { - for ($b=0; $b < count($option['sub_accounts']); $b++) { - for ($l = 0; $l < count($option['sub_accounts'][$keys[$b]]); $l++) $sub_account_columnTotal_section +=(int)($option['sub_accounts'][$keys[$b]][$l]['account_entries'][$i - 1]); - - } - echo "" ; - } - } - @endphp - - @endforeach --}} - {{-- @if (!empty($option['sub_accounts'])) - - - - @endif --}} - @foreach ($option['entries'] as $entry ) - - @php - for ($i =0; $i < $collength; $i++) { - $sum=0; - for ($j=0; $j < count($entry['account_entries']); $j++) $sum +=(int)$entry['account_entries'][$j]; - $total=ugandan_shillings($sum); - - if ($i==0) echo '' ; - else if ($i==$collength - 1) echo "" ; - else echo "" ; - } - @endphp - - @endforeach - {{-- Other income Section column Totals --}} - {{-- @if (!empty($option['sub_accounts'])) - - - @php - for ($i =0; $i < $collength; $i++) { - $budget_total_section=0; $columnTotal_section=0; - if ($i==0) echo '' ; - else if ($i==$collength - 1){ //Budget totals for - for($k=0; $k < $budget->period_count; $k++){ - $columnTotal = 0; - for ($m = 0; $m < count($option['entries']); $m++) { - $columnTotal +=(int)($option['entries'][$m]['account_entries'][$k]); - } - $budget_total_section +=$columnTotal; - } - echo "" ; - } - else { - for ($b=0; $b < count($option['entries']); $b++) { - $columnTotal_section +=(int)($option['entries'][$b]['account_entries'][$i - 1]); - } - - echo "" ; - } - } - @endphp - - @endif --}} - {{-- Operating Budget Section Totals --}} - - @php - for ($i =0; $i < $collength; $i++) { - $budget_total_section=0; $columnTotal_section=0; - if ($i==0) echo '' ; - else if ($i==$collength - 1){ //Budget totals for - for($k=0; $k < $budget->period_count; $k++){ - $columnTotal = 0; - for ($m = 0; $m < count($option['entries']); $m++) { - $columnTotal +=(int)($option['entries'][$m]['account_entries'][$k]); - } - $budget_total_section +=$columnTotal; - } - array_push($totals_budgets, $budget_total_section); - echo "" ; - } else { - for ($b=0; $b < count($option['entries']); $b++) { - $columnTotal_section +=(int)($option['entries'][$b]['account_entries'][$i - 1]); - } - //Push to column total arrays - if($entry['type'] == 'Income') array_push($income_column_totals, $columnTotal_section); - else if($entry['type'] == 'Expense') array_push($expense_column_totals, $columnTotal_section); - else array_push($cost_of_goods_column_totals, $columnTotal_section); - - echo "" ; - } - } - @endphp - - @endforeach - - {{-- Budget Projections --}} - - @php - for ($i =0; $i < $collength; $i++) { - if ($i==0) echo '' ; - else if ($i==$collength - 1){ //Budget Totals - $overall_projection = $totals_budgets[0] - $totals_budgets[1] - $totals_budgets[2]; - echo "" ; - } else { - $columnTotal_projection=$income_column_totals[$i-1] - $expense_column_totals[$i-1] - $cost_of_goods_column_totals[$i-1]; - echo "" ; - } - } - @endphp - - - - - - - - @php - for ($i = 0; $i < count($columns); $i++) echo ''; - @endphp - - -
    - Budget Name: {{ ucfirst($budget->name) . " - Period(" .ucfirst($budget->period) . "): " . $period_range }} -
    ' .$columns[$i].'
    -
    {{ $option['section_header'] }}
    -
    -
    {{ get_name(key($option['sub_accounts']), 'id', 'name','chart_of_accounts') }}
    -
    ' .$sub_account_entry['name']. '" . ugandan_shillings($sum) . "" .ugandan_shillings($sub_account_entry['account_entries'][$i - 1]). "
    '. get_name(key($option['sub_accounts']), 'id', 'name','chart_of_accounts') . ' Total" .ugandan_shillings($sub_account_total_section) . "" .ugandan_shillings($sub_account_columnTotal_section). "
    -
    {{ 'Other '. $option['section_header'] }}
    -
    ' .$entry['name']. '" .$total. "" .ugandan_shillings($entry['account_entries'][$i - 1]). "
    Other '.$option['total_header']. '" .ugandan_shillings($budget_total_section) . "" .ugandan_shillings($columnTotal_section). "
    '.$option['total_header']. '" .ugandan_shillings($budget_total_section) . "" .ugandan_shillings($columnTotal_section). "
    Projected Net Income" . ugandan_shillings($overall_projection) . "".ugandan_shillings($columnTotal_projection). "
    ' .$columns[$i].'
    -
    - - - - - - - - - - - - - - \ No newline at end of file diff --git a/docker/statistics/Modules/Budgets/Resources/views/budgets/print_budget_performance.blade.php b/docker/statistics/Modules/Budgets/Resources/views/budgets/print_budget_performance.blade.php deleted file mode 100644 index 6212b810..00000000 --- a/docker/statistics/Modules/Budgets/Resources/views/budgets/print_budget_performance.blade.php +++ /dev/null @@ -1,222 +0,0 @@ - - - - - - - - - - - - - - - {{ config('app.name', 'Streamline') }} - - - - - - - - - - - - -
    -
    -
    -
    -
    - @php - $hospital_info = \Streamline\Models\HospitalInformation::find(1); - $period_months = getMonthsList(); - $columns = ['Account', 'Budget Total', 'Actual Total', 'Percentage Variance
    Actual vs Budget', 'Actual Variance
    Actual vs Budget']; - switch ($budget->period) - { - case 'months': - $period = "Months"; - $budget_start_date = strtotime($budget->period_start);//y-m-d - $budget_end_date = date("Y-m-d", strtotime("+". $budget->period_count - 1 ." month", $budget_start_date)); - $period_range = date("M-Y", $budget_start_date) . " to " . date("M-Y", strtotime($budget_end_date)); - $interval = DateInterval::createFromDateString('1 month'); - $period = new DatePeriod(new DateTime($budget->period_start), $interval, new DateTime(date("Y-m-d", - strtotime("+". $budget->period_count ." month", $budget_start_date)))); - foreach ($period as $dt) $months_data[] = $dt->format("M-Y"); - $collength = count($columns); - - break; - - case 'quarters': - $period = "Quarters"; - $other_columns =[];$quarter_start_dates =['-01-01', '-04-01', '-07-01', '-10-01']; //m-d - $budget_start_date = $budget->period_start;//y-m-d - $budget_end_date = date("Y-m-d", strtotime("+". ($budget->period_count-1) * 3 ." month", strtotime('-1 day', strtotime($budget_start_date)))); - $quarters_data = get_quarters($budget_start_date, $budget_end_date); - for($y =0; $y < count($quarters_data); $y++) $other_columns[]=$quarters_data[$y]->period; - $period_range = $other_columns[0] . " to " . $other_columns[count($other_columns)-1]; - $collength = count($columns); - - break; - - case 'years': - $period = "Years"; - $year=date('Y', strtotime($budget->period_start)); - // $period_range = $range; - $sec = substr($year, -2); - $years_data = [$year.'/'. ++$sec]; - for ($i = 1; $i <$budget->period_count; $i++) array_push($years_data, $year + $i .'/'. ++$sec); - $period_range = $years_data[0] . " to " . $years_data[count($years_data)-1]; - $columns = array_merge($column_1, $years_data); - $collength = count($columns); - break; - - default: - break; - } - @endphp - - @if(is_null($hospital_info->pdf_print_header)) - Responsive image -

    - {{ $hospital_info->name . ' | ' . $hospital_info->phone_number . ' | ' . - $hospital_info->email . ' | ' . $hospital_info->address . ' ' . - $hospital_info->country }} -

    - @else - Responsive image - @endif -
    -
    -

    {{ __('budgets.budget_name') . ": " . $budget->name }}

    -

    Period: {{ ucfirst($budget->period) . " (" . $period_range . ") " }}

    - -
    -
    - - - - @php - for ($i = 0; $i < count($columns); $i++) echo ''; - $actual_totals = $totals_budgets = $summary_colums = $income_column_totals=[]; - $expense_column_totals=[];$cost_of_goods_column_totals=[]; - @endphp - - - - - @foreach ($options as $option) - - - - @foreach ($option['entries'] as $entry ) - - @php - for ($i =0; $i < $collength; $i++) { - $sum=0; - for ($j=0; $j < count($entry['account_entries']); $j++) $sum +=(int)$entry['account_entries'][$j]; $col_percent=($entry['actual_entry']>0)? round(((($entry['actual_entry'] - $sum) / $entry['actual_entry']) * 100),2).'%' : 'N/A'; - - if ($i==0) echo '' ; - else if ($i == 1) echo "" ;//Budget Total - else if ($i == 2) echo "" ; //Actual Total - else if ($i == 3) echo "" ; //Percentage variance - else if ($i == 4) echo "" ; //Actual Variance - } - @endphp - - @endforeach - {{-- Budget Section column Totals --}} - - @php - for ($i =0; $i < $collength; $i++) { - $budget_total_section = $columnTotal_section = 0; - if ($i==0) echo '' ; - else if ($i==1){ //Budget totals - for($k=0; $k < $budget->period_count; $k++){ - $columnTotal = 0; - for ($m = 0; $m < count($option['entries']); $m++) $columnTotal +=(int)($option['entries'][$m]['account_entries'][$k]); - $budget_total_section +=$columnTotal; - } - array_push($totals_budgets, $budget_total_section); - echo "" ; - } else if ($i==2) { - array_push($actual_totals, $option['actual']); - echo "" ; //Actual Total - } else if ($i==3) { - $percent=($option['actual']> 0)? round(((($option['actual'] - $totals_budgets[count($totals_budgets) - 1]) / $option['actual'] ) * 100),2) .'%' : 'N/A'; - echo "" ; //Percentage variance - } - else if ($i == 4) echo "" ; //Actual Variance - - } - @endphp - - @endforeach - - {{-- Overall Budget Performance --}} - - @php - $overall_projection = $totals_budgets[0] - $totals_budgets[1] - $totals_budgets[2]; - array_push($summary_colums, $overall_projection); - $total_actual = $data['accrual_net_income'] + $data['cash_net_income']; - array_push($summary_colums, $total_actual); - $overall_percentage = ($summary_colums[1] > 0)? round(((($summary_colums[1] - $summary_colums[0]) / $summary_colums[1]) * 100),2) .'%' : 'N/A'; - @endphp - - {{-- Budget Projection --}} - {{-- Actual Total --}} - {{-- Percentage variance --}} - {{-- Actual Variance --}} - - - - - - - @php - for ($i = 0; $i < count($columns); $i++) echo ''; - @endphp - - -
    ' .$columns[$i].'
    -
    {{ $option['section_header'] }}
    -
    ' .$entry['name']. '" . ugandan_shillings($sum) . "" . ugandan_shillings($entry['actual_entry']) . "" . $col_percent . "" . ugandan_shillings($entry['actual_entry'] - $sum) . "
    ' .$option['total_header']. '" . ugandan_shillings($budget_total_section) . "" . ugandan_shillings($option['actual']) . "" . $percent . "" .ugandan_shillings($option['actual'] - $totals_budgets[count($totals_budgets) - 1]). "
    Performance {{ ugandan_shillings($overall_projection) }} {{ ugandan_shillings($total_actual) }} {{ $overall_percentage }} {{ ugandan_shillings($summary_colums[1] - $summary_colums[0]) }}
    ' .$columns[$i].'
    -
    - - -
    - - - - - - - - - - - - - - \ No newline at end of file diff --git a/docker/statistics/Modules/Budgets/Resources/views/budgets/print_budget_performance_detail.blade.php b/docker/statistics/Modules/Budgets/Resources/views/budgets/print_budget_performance_detail.blade.php deleted file mode 100644 index d60e5b23..00000000 --- a/docker/statistics/Modules/Budgets/Resources/views/budgets/print_budget_performance_detail.blade.php +++ /dev/null @@ -1,258 +0,0 @@ - - - - - - - - - - - - - - - {{ config('app.name', 'Streamline') }} - - - - - - - - - - - - -
    -
    -
    -
    -
    - @php - $hospital_info = \Streamline\Models\HospitalInformation::find(1); - $period_months = getMonthsList(); - $column_1 = ['Account']; - $colum_2 = ['Budget Total', 'Actual Total', 'Percentage Variance
    (Actual vs Budget)', 'Actual Variance
    (Actual vs Budget)']; - switch ($budget->period) - { - case 'months': - $period = "Months"; - $budget_start_date = strtotime($budget->period_start);//y-m-d - $budget_end_date = date("Y-m-d", strtotime("+". $budget->period_count - 1 ." month", $budget_start_date)); - $period_range = date("M-Y", $budget_start_date) . " to " . date("M-Y", strtotime($budget_end_date)); - $interval = DateInterval::createFromDateString('1 month'); - $period = new DatePeriod(new DateTime($budget->period_start), $interval, new DateTime(date("Y-m-d", - strtotime("+". $budget->period_count ." month", $budget_start_date)))); - foreach ($period as $dt) $months_data[] = $dt->format("M-Y"); - $columns = array_merge($column_1, $months_data); - $counter = count($columns); - $columns = array_merge($columns, $colum_2); - $collength = count($columns); - - break; - - case 'quarters': - $period = "Quarters"; - $other_columns =[];$quarter_start_dates =['-01-01', '-04-01', '-07-01', '-10-01']; //m-d - $budget_start_date = $budget->period_start;//y-m-d - $budget_end_date = date("Y-m-d", strtotime("+". ($budget->period_count-1) * 3 ." month", strtotime('-1 day', strtotime($budget_start_date)))); - $quarters_data = get_quarters($budget_start_date, $budget_end_date); - for($y =0; $y < count($quarters_data); $y++) $other_columns[]=$quarters_data[$y]->period; - $period_range = $other_columns[0] . " to " . $other_columns[count($other_columns)-1]; - $columns = array_merge($column_1, $other_columns); - $counter = count($columns); - $columns = array_merge($columns, $colum_2); - $collength = count($columns); - - break; - - case 'years': - $period = "Years"; - $year=date('Y', strtotime($budget->period_start)); - // $period_range = $range; - $sec = substr($year, -2); - $years_data = [$year.'/'. ++$sec]; - for ($i = 1; $i <$budget->period_count; $i++) array_push($years_data, $year + $i .'/'. ++$sec); - $period_range = $years_data[0] . " to " . $years_data[count($years_data)-1]; - $columns = array_merge($column_1, $years_data); - $counter = count($columns); - $columns = array_merge($columns, $colum_2); - $collength = count($columns); - break; - - default: - break; - } - @endphp - - @if(is_null($hospital_info->pdf_print_header)) - Responsive image -

    - {{ $hospital_info->name . ' | ' . $hospital_info->phone_number . ' | ' . - $hospital_info->email . ' | ' . $hospital_info->address . ' ' . - $hospital_info->country }} -

    - @else - Responsive image - @endif -
    -
    -

    {{ __('budgets.budget_name') . ": " . $budget->name }}

    -

    Period: {{ ucfirst($budget->period) . " (" . $period_range . ") " }}

    - -
    -
    - - - - @php - for ($i = 0; $i < count($columns); $i++) echo ''; - $actual_totals = $totals_budgets = $summary_colums = $income_column_totals=[]; - $expense_column_totals = $cost_of_goods_column_totals=[]; - @endphp - - - - - @foreach ($options as $option) - - - - @foreach ($option['entries'] as $entry) - - @php - for ($i =0; $i < $collength; $i++) { - $sum=0; - for ($j=0; $j < count($entry['account_entries']); $j++) $sum +=(int)$entry['account_entries'][$j]; $col_percent=($entry['actual_entry']>0)? round(((($entry['actual_entry'] - $sum) / $entry['actual_entry']) * 100),2).'%' : 'N/A'; - - if ($i==0) echo '' ; - else if ($i === $counter) echo "" ;//Budget Total - else if ($i == $counter + 1) echo "" ; //Actual Total - else if ($i == $counter + 2) echo "" ; //Percentage variance - else if ($i == $counter + 3) echo "" ; //Actual Variance - else { - echo "" ; - } - } - @endphp - - @endforeach - {{-- Budget Section column Totals --}} - - @php - for ($i =0; $i < $collength; $i++) { - $budget_total_section = $columnTotal_section = 0; - if ($i==0) echo '' ; - else if ($i == $counter){ //Budget totals - for($k=0; $k < $budget->period_count; $k++){ - $columnTotal = 0; - for ($m = 0; $m < count($option['entries']); $m++) $columnTotal +=(int)($option['entries'][$m]['account_entries'][$k]); - $budget_total_section +=$columnTotal; - } - array_push($totals_budgets, $budget_total_section); - echo "" ; - } else if ($i == $counter + 1) { - array_push($actual_totals, $option['actual']); - echo "" ; //Actual Total - } else if ($i== $counter+2) { - $percent=($option['actual']> 0)? round(((($option['actual'] - $totals_budgets[count($totals_budgets) - 1]) / $option['actual'] ) * 100),2) .'%' : 'N/A'; - echo "" ; //Percentage variance - } - else if ($i == $counter+3) echo "" ; //Actual Variance - else { - for ($b=0; $b < count($option['entries']); $b++) { - $columnTotal_section +=(int)($option['entries'][$b]['account_entries'][$i - 1]); - } - //Push to column total arrays - if($entry['type'] == 'Income') array_push($income_column_totals, $columnTotal_section); - else if($entry['type'] == 'Expense') array_push($expense_column_totals, $columnTotal_section); - else array_push($cost_of_goods_column_totals, $columnTotal_section); - - echo "" ; - } - - } - @endphp - - @endforeach - - {{-- Overall Budget Performance --}} - - - @php - $overall_projection = $totals_budgets[0] - $totals_budgets[1] - $totals_budgets[2]; - array_push($summary_colums, $overall_projection); - $total_actual = $data['accrual_net_income'] + $data['cash_net_income']; - array_push($summary_colums, $total_actual); - $overall_percentage = ($summary_colums[1] > 0)? round(((($summary_colums[1] - $summary_colums[0]) / $summary_colums[1]) * 100),2) .'%' : 'N/A'; - - for ($i =0; $i < $collength; $i++) { - if ($i==0) echo '' ; - else if ($i == $counter){ //Budget Totals - echo "" ; - } else if ($i == $counter + 1) { - echo "" ; - } else if ($i == $counter + 2) { - echo "" ; - } else if ($i == $counter + 3) { - echo "" ; - } else { - $columnTotal_projection=$income_column_totals[$i-1] - $expense_column_totals[$i-1] - $cost_of_goods_column_totals[$i-1]; - echo "" ; - } - } - @endphp - - - - - - @php - for ($i = 0; $i < count($columns); $i++) echo ''; - @endphp - - -
    ' .$columns[$i].'
    -
    {{ $option['section_header'] }}
    -
    ' .$entry['name']. '" . ugandan_shillings($sum) . "" . ugandan_shillings($entry['actual_entry']) . "" . $col_percent . "" . ugandan_shillings($entry['actual_entry'] - $sum) . "" .ugandan_shillings($entry['account_entries'][$i - 1]). "
    ' .$option['total_header']. '" . ugandan_shillings($budget_total_section) . "" . ugandan_shillings($option['actual']) . "" . $percent . "" .ugandan_shillings($option['actual'] - $totals_budgets[count($totals_budgets) - 1]). "" .ugandan_shillings($columnTotal_section). "
    Summary" . ugandan_shillings($overall_projection) . "" . ugandan_shillings($total_actual) . "" . $overall_percentage . "" . ugandan_shillings($summary_colums[1] - $summary_colums[0]) . "".ugandan_shillings($columnTotal_projection). "
    ' .$columns[$i].'
    -
    - - -
    - - - - - - - - - - - - - - \ No newline at end of file diff --git a/docker/statistics/Modules/Budgets/Resources/views/budgets/show.blade.php b/docker/statistics/Modules/Budgets/Resources/views/budgets/show.blade.php deleted file mode 100755 index db1a3f81..00000000 --- a/docker/statistics/Modules/Budgets/Resources/views/budgets/show.blade.php +++ /dev/null @@ -1,353 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('finance.budgets') }}

    -
    -
    - -
    -
    - -@include('budgets::budgets.menu') -@include('flash::message') -
    -
    -
    -
    -
    - -
    - - -
    - -
    - - {{--
    - -
    --}} - -
    - -
    - @php - $period_months = getMonthsList(); - $second_col = "Account"; $end_col = "Budget Total"; - switch ($budget->period) - { - case 'months': - $period = "Months"; - $budget_start_date = strtotime($budget->period_start);//y-m-d - $budget_end_date = date("Y-m-d", strtotime("+". $budget->period_count - 1 ." month", $budget_start_date)); - $period_range = date("M-Y", $budget_start_date) . " to " . date("M-Y", strtotime($budget_end_date)); - $interval = DateInterval::createFromDateString('1 month'); - $period = new DatePeriod(new DateTime($budget->period_start), $interval, new DateTime(date("Y-m-d", strtotime("+". $budget->period_count ." month", $budget_start_date)))); - foreach ($period as $dt) $months_data[] = $dt->format("M-Y"); - - $column_1 = [$second_col]; - $columns = array_merge($column_1, $months_data); - array_push($columns, $end_col); - $collength = count($columns); - - break; - - case 'quarters': - $period = "Quarters"; - $other_columns =[];$quarter_start_dates =['-01-01', '-04-01', '-07-01', '-10-01']; //m-d - $budget_start_date = $budget->period_start;//y-m-d - $budget_end_date = date("Y-m-d", strtotime("+". ($budget->period_count-1) * 3 ." month", strtotime('-1 day', strtotime($budget_start_date)))); - $quarters_data = get_quarters($budget_start_date, $budget_end_date); - for($y =0; $y < count($quarters_data); $y++) $other_columns[] = $quarters_data[$y]->period; - $period_range = $other_columns[0] . " to " . $other_columns[count($other_columns)-1]; - - $column_1 = [$second_col]; - $columns = array_merge($column_1, $other_columns); - array_push($columns, $end_col); - $collength = count($columns); - break; - - case 'years': - $period = "Years"; - $year=date('Y', strtotime($budget->period_start)); - $sec = substr($year, -2); - $years_data = [$year.'/'. ++$sec]; - for ($i = 1; $i <$budget->period_count; $i++) array_push($years_data, $year + $i .'/'. ++$sec); - $period_range = $years_data[0] . " to " . $years_data[count($years_data)-1]; - $column_1 = [$second_col]; - $columns = array_merge($column_1, $years_data); - array_push($columns, $end_col); - $collength = count($columns); - break; - - default: - break; - } - - - @endphp - -
    -
    -
    -
    -
    -
    -
    -
    -

    -

    {{ __('budgets.budget_name') . ": " . $budget->name }}

    -

    -

    -

    {{ "Period(" .ucfirst($budget->period) . "): " . $period_range }}

    -

    -
    -
    -
    -
    - -
    - - - - - - - @php - for ($i = 0; $i < count($columns); $i++) echo ''; - $totals_budgets = $sub_accounts = $totals_budgets_colums = $income_column_totals = $expense_column_totals = $cost_of_goods_column_totals = []; - $sub_account_total= 0; - @endphp - - - - - @foreach ($options as $option) - - - - {{-- @foreach ($option['sub_accounts'] as $keyid => $sub_account) --}} - {{-- - - --}} - {{-- @foreach ($sub_account as $sub_account_entry) - - @php - for ($i =0; $i < $collength; $i++) { - $sum=0; - for ($j=0; $j < count($sub_account_entry['account_entries']); $j++) $sum +=(int)$sub_account_entry['account_entries'][$j]; - if ($i==0) echo '' ; - else if ($i==$collength - 1) echo "" ; - else echo "" ; - } - @endphp - - @endforeach --}} - {{-- Sub Account Section column Totals --}} - {{-- - @php - for ($i =0; $i < $collength; $i++) { - $sub_account_total_section = $sub_account_columnTotal_section=0; $keys = array_keys($option['sub_accounts']); - if ($i==0) echo '' ; - else if ($i==$collength - 1){ //Sub account totals - for($k=0; $k < $budget->period_count; $k++){ - $columnTotal = 0; - for ($m = 0; $m < count($option['sub_accounts'][$keyid]); $m++) { - $columnTotal +=(int)($option['sub_accounts'][$keyid][$m]['account_entries'][$k]); - } - $sub_account_total_section += $columnTotal; - } - echo "" ; - } else { - for ($b=0; $b < count($option['sub_accounts'][$keyid]); $b++) { - $sub_account_columnTotal_section +=(int)($option['sub_accounts'][$keyid][$b]['account_entries'][$i - 1]); - - } - echo "" ; - } - } - @endphp - --}} - {{-- @endforeach - @if (!empty($option['sub_accounts'])) - - - - @endif --}} - @foreach ($option['entries'] as $entry ) - - @php - for ($i =0; $i < $collength; $i++) { - $sum=0; - for ($j=0; $j < count($entry['account_entries']); $j++) $sum +=(int)$entry['account_entries'][$j]; - $total=ugandan_shillings($sum); - - if ($i==0) echo '' ; - else if ($i==$collength - 1) echo "" ; - else echo "" ; - } - @endphp - - @endforeach - {{-- Other income Section column Totals --}} - {{-- @if (!empty($option['sub_accounts'])) - - - @php - for ($i =0; $i < $collength; $i++) { - $budget_total_section=0; $columnTotal_section=0; - if ($i==0) echo '' ; - else if ($i==$collength - 1){ //Budget totals for - for($k=0; $k < $budget->period_count; $k++){ - $columnTotal = 0; - for ($m = 0; $m < count($option['entries']); $m++) { - $columnTotal +=(int)($option['entries'][$m]['account_entries'][$k]); - } - $budget_total_section +=$columnTotal; - } - echo "" ; - } - else { - for ($b=0; $b < count($option['entries']); $b++) { - $columnTotal_section +=(int)($option['entries'][$b]['account_entries'][$i - 1]); - } - - echo "" ; - } - } - @endphp - - @endif --}} - {{-- Operating Budget Section Totals --}} - - @php - for ($i =0; $i < $collength; $i++) { - $budget_total_section=0; $columnTotal_section=0; - if ($i==0) echo '' ; - else if ($i==$collength - 1){ //Budget totals for - for($k=0; $k < $budget->period_count; $k++){ - $columnTotal = 0; - for ($m = 0; $m < count($option['entries']); $m++) { - $columnTotal +=(int)($option['entries'][$m]['account_entries'][$k]); - } - $budget_total_section +=$columnTotal; - } - array_push($totals_budgets, $budget_total_section); - echo "" ; - } else { - for ($b=0; $b < count($option['entries']); $b++) { - $columnTotal_section +=(int)($option['entries'][$b]['account_entries'][$i - 1]); - } - //Push to column total arrays - if($entry['type'] == 'Income') array_push($income_column_totals, $columnTotal_section); - else if($entry['type'] == 'Expense') array_push($expense_column_totals, $columnTotal_section); - else array_push($cost_of_goods_column_totals, $columnTotal_section); - - echo "" ; - } - } - @endphp - - @endforeach - - {{-- Budget Projections --}} - - @php - for ($i =0; $i < $collength; $i++) { - if ($i==0) echo '' ; - else if ($i==$collength - 1){ //Budget Totals - $overall_projection = $totals_budgets[0] - $totals_budgets[1] - $totals_budgets[2]; - echo "" ; - } else { - $columnTotal_projection=$income_column_totals[$i-1] - $expense_column_totals[$i-1] - $cost_of_goods_column_totals[$i-1]; - echo "" ; - } - } - @endphp - - - - - - - - @php - for ($i = 0; $i < count($columns); $i++) echo ''; - @endphp - - -
    - Budget Name: {{ ucfirst($budget->name) .' - Period('. ucfirst($budget->period) .'): '.$period_range }} -
    ' .$columns[$i].'
    -
    {{ $option['section_header'] }}
    -
    -
    {{ get_name($keyid, 'id', 'name','chart_of_accounts') }} -
    -
    ' .$sub_account_entry['name']. '" . ugandan_shillings($sum) . "" .ugandan_shillings($sub_account_entry['account_entries'][$i - 1]). "
    '. get_name($keyid, 'id', 'name','chart_of_accounts') . ' Total" .ugandan_shillings($sub_account_total_section) . "" .ugandan_shillings($sub_account_columnTotal_section). "
    -
    {{ 'Other '. $option['section_header'] }} -
    -
    ' .$entry['name']. '" .$total. "" .ugandan_shillings($entry['account_entries'][$i - 1]). "
    Other '.$option['section_header']. ' total" .ugandan_shillings($budget_total_section) . "" .ugandan_shillings($columnTotal_section). "
    '.$option['total_header']. '" .ugandan_shillings($budget_total_section) . "" .ugandan_shillings($columnTotal_section). "
    Projected Net Income" . ugandan_shillings($overall_projection) . "".ugandan_shillings($columnTotal_projection). "
    ' .$columns[$i].'
    -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Budgets/Routes/api.php b/docker/statistics/Modules/Budgets/Routes/api.php deleted file mode 100644 index 290334b3..00000000 --- a/docker/statistics/Modules/Budgets/Routes/api.php +++ /dev/null @@ -1,18 +0,0 @@ -get('/budgets', function () { - return "Budgets"; -}); diff --git a/docker/statistics/Modules/Budgets/Routes/web.php b/docker/statistics/Modules/Budgets/Routes/web.php deleted file mode 100644 index 952efd51..00000000 --- a/docker/statistics/Modules/Budgets/Routes/web.php +++ /dev/null @@ -1,16 +0,0 @@ - ['auth', 'disablebackbutton', 'user-locale','subscription-tracking', 'password-expiry']], function () { - /* budgets */ - Route::any('budgets_search', 'BudgetController@search')->name('budgets.search'); - Route::any('budget/performance/{type}', 'BudgetController@budget_performance')->name('budgets.performance'); - Route::get('budgets_inactive', 'BudgetController@inactive')->name('budgets.inactive'); - Route::get('budgets/clone/{id}', 'BudgetController@clone')->name('budgets.clone'); - Route::get('budgets/print/{id}', 'BudgetController@print_budget')->name('budgets.print'); - Route::post('budgets_activate/{id}', 'BudgetController@activate')->name('budgets.activate'); - Route::any('/budgets/get_budgets', 'BudgetController@get_budgets')->name('budgets.get_outcomes'); - Route::post('budgets/print_budget_report', 'BudgetController@print_budget_report')->name('budgets.print_reports'); - Route::resource('budgets', 'BudgetController'); -}); diff --git a/docker/statistics/Modules/Budgets/bitbucket-pipelines.yml b/docker/statistics/Modules/Budgets/bitbucket-pipelines.yml deleted file mode 100644 index e850a8fd..00000000 --- a/docker/statistics/Modules/Budgets/bitbucket-pipelines.yml +++ /dev/null @@ -1,19 +0,0 @@ -image: alpine/git:latest - -pipelines: - branches: - main: - - step: - name: Merge To Beta - script: - - git remote set-url origin https://Kabricks:${APP_SECRET}@bitbucket.org/dcsammi/${BITBUCKET_REPO_SLUG} - - git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*" - - git fetch - - git checkout beta - - git merge main - - git commit --amend -m "[skip ci] Merge changes from main" - - git push - - step: - name: Deploy To Test - script: - - echo "Ready to deploy to demo or production!" diff --git a/docker/statistics/Modules/Budgets/module.json b/docker/statistics/Modules/Budgets/module.json deleted file mode 100644 index 4f10e2e6..00000000 --- a/docker/statistics/Modules/Budgets/module.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "Budgets", - "alias": "budgets", - "description": "Budgets", - "keywords": [], - "priority": 0, - "providers": [ - "Modules\\Budgets\\Providers\\BudgetsServiceProvider" - ], - "files": [] -} diff --git a/docker/statistics/Modules/Cancer/Config/config.php b/docker/statistics/Modules/Cancer/Config/config.php deleted file mode 100644 index 04313283..00000000 --- a/docker/statistics/Modules/Cancer/Config/config.php +++ /dev/null @@ -1,5 +0,0 @@ - 'Cancer' -]; diff --git a/docker/statistics/Modules/Cancer/Http/Controllers/CancerProtocolController.php b/docker/statistics/Modules/Cancer/Http/Controllers/CancerProtocolController.php deleted file mode 100644 index 61e5ec69..00000000 --- a/docker/statistics/Modules/Cancer/Http/Controllers/CancerProtocolController.php +++ /dev/null @@ -1,735 +0,0 @@ - 'Standard', 1 => 'BSA', 2 => 'Weight']; - /** - * Display a listing of the resource. - * @return Renderable - */ - public function index() { - $cancer_protocols = CancerProtocol::all(); - - $drugs = $this->drugsService->pluckAvailableDrugs('name'); - $drug_with_units = $this->drugsService->pluckAvailableDrugs('unit_id'); - $drug_units = $this->drugUnitsService->pluckAvailableDrugUnits('name'); - $drug_routes = $this->drugRoutesService->pluckAvailableDrugRoutes('name'); - - $factors = static::$factors; - - return view('cancer::cancer_protocol.index', compact('cancer_protocols', 'drugs', 'drug_routes', - 'factors', 'drug_units', 'drug_with_units')); - } - - /** - * Show the form for creating a new resource. - * @return Renderable - */ - public function create() { - $drugs = $this->drugsService->pluckAvailableDrugs('name')->prepend('-- select drugs --', ''); - $drug_routes = $this->drugRoutesService->pluckAvailableDrugRoutes('name')->prepend('-- select routes --', ''); - - $factors = static::$factors; - - $option_drugs = ""; - foreach ($drugs as $key => $value){ - $drug_name = str_replace("'", '', $value); - $drug_name = str_replace("\"", '', $drug_name); - $drug_name = str_replace("+", '', $drug_name); - $option_drugs .= ""; - } - - $option_drug_routes = ""; - foreach ($drug_routes as $key => $value){ - $option_drug_routes .= ""; - } - - $option_factors = ""; - foreach ($factors as $key => $value){ - $option_factors .= ""; - } - - return view('cancer::cancer_protocol.create', compact('drugs', 'factors', 'drug_routes', - 'option_drugs', 'option_drug_routes', 'option_factors')); - } - - /** - * Store a newly created resource in storage. - * @param Request $request - * @return Application|\Illuminate\Foundation\Application|RedirectResponse|Redirector - */ - public function store(Request $request) { - $request->validate([ - "name" => "required", - "protocol_billing_type" => "required" - ]); - - $protocol_billing_type = $request->protocol_billing_type; - $protocol_cost = $request->protocol_cost; - - if ($protocol_billing_type == 0 && !is_numeric($protocol_cost)) { - flash("Please add a protocol cost when billing type is umbrella")->error(); - return back()->withInput(); - } - - /* Pre Chemo Section */ - $pre_chemo_row_counter_arr = $request->pre_chemo_row_counter; - $pre_chemo_drug_id_arr = $request->pre_chemo_drug_id; - $pre_chemo_drug_route_arr = $request->pre_chemo_drug_route; - $pre_chemo_drug_factor_id_arr = $request->pre_chemo_drug_factor_id; - $pre_chemo_drug_weight_range_arr = $request->pre_chemo_drug_weight_range; - $pre_chemo_drug_dose_arr = $request->pre_chemo_drug_dose; - $pre_chemo_drug_duration_arr = $request->pre_chemo_drug_duration; - $pre_chemo_drug_instructions_arr = $request->pre_chemo_drug_instructions; - $pre_chemo_child_row_id_arr = $request->pre_chemo_child_row_id; - $pre_chemo_child_drug_weight_range_arr = $request->pre_chemo_child_drug_weight_range; - $pre_chemo_child_drug_dose_arr = $request->pre_chemo_child_drug_dose; - $pre_chemo_child_drug_duration_arr = $request->pre_chemo_child_drug_duration; - $pre_chemo_child_drug_instructions_arr = $request->pre_chemo_child_drug_instructions; - - $pre_chemo_drugs = []; - - for ($x = 0; $x < count($pre_chemo_drug_id_arr); $x++) { - $pre_chemo_drugs[$pre_chemo_row_counter_arr[$x]] = [ - "drug_id" => $pre_chemo_drug_id_arr[$x], - "drug_route" => $pre_chemo_drug_route_arr[$x], - "drug_factor" => $pre_chemo_drug_factor_id_arr[$x], - "dose" => [[ - "weight_range" => $pre_chemo_drug_weight_range_arr[$x] ?? '', - "dose" => $pre_chemo_drug_dose_arr[$x] ?? '', - "duration" => $pre_chemo_drug_duration_arr[$x] ?? '', - "instructions" => $pre_chemo_drug_instructions_arr[$x] ?? '', - ]], - ]; - } - - if (is_array($pre_chemo_child_row_id_arr)) { - for ($x = 0; $x < count($pre_chemo_child_row_id_arr); $x++) { - if(isset($pre_chemo_drugs[$pre_chemo_child_row_id_arr[$x]])) { - $pre_chemo_drugs[$pre_chemo_child_row_id_arr[$x]]["dose"][] = [ - "weight_range" => $pre_chemo_child_drug_weight_range_arr[$x] ?? '', - "dose" => $pre_chemo_child_drug_dose_arr[$x] ?? '', - "duration" => $pre_chemo_child_drug_duration_arr[$x] ?? '', - "instructions" => $pre_chemo_child_drug_instructions_arr[$x] ?? '', - ]; - } - } - } - - /* Chemo Section */ - $chemo_row_counter_arr = $request->chemo_row_counter; - $chemo_drug_id_arr = $request->chemo_drug_id; - $chemo_drug_route_arr = $request->chemo_drug_route; - $chemo_drug_factor_id_arr = $request->chemo_drug_factor_id; - $chemo_drug_weight_range_arr = $request->chemo_drug_weight_range; - $chemo_drug_dose_arr = $request->chemo_drug_dose; - $chemo_drug_duration_arr = $request->chemo_drug_duration; - $chemo_drug_instructions_arr = $request->chemo_drug_instructions; - $chemo_child_row_id_arr = $request->chemo_child_row_id; - $chemo_child_drug_weight_range_arr = $request->chemo_child_drug_weight_range; - $chemo_child_drug_dose_arr = $request->chemo_child_drug_dose; - $chemo_child_drug_duration_arr = $request->chemo_child_drug_duration; - $chemo_child_drug_instructions_arr = $request->chemo_child_drug_instructions; - - $chemo_drugs = []; - - for ($x = 0; $x < count($chemo_drug_id_arr); $x++) { - $chemo_drugs[$chemo_row_counter_arr[$x]] = [ - "drug_id" => $chemo_drug_id_arr[$x], - "drug_route" => $chemo_drug_route_arr[$x], - "drug_factor" => $chemo_drug_factor_id_arr[$x], - "dose" => [[ - "weight_range" => $chemo_drug_weight_range_arr[$x] ?? '', - "dose" => $chemo_drug_dose_arr[$x] ?? '', - "duration" => $chemo_drug_duration_arr[$x] ?? '', - "instructions" => $chemo_drug_instructions_arr[$x] ?? '', - ]], - ]; - } - - if (is_array($chemo_child_row_id_arr)) { - for ($x = 0; $x < count($chemo_child_row_id_arr); $x++) { - if(isset($chemo_drugs[$chemo_child_row_id_arr[$x]])) { - $chemo_drugs[$chemo_child_row_id_arr[$x]]["dose"][] = [ - "weight_range" => $chemo_child_drug_weight_range_arr[$x] ?? '', - "dose" => $chemo_child_drug_dose_arr[$x] ?? '', - "duration" => $chemo_child_drug_duration_arr[$x] ?? '', - "instructions" => $chemo_child_drug_instructions_arr[$x] ?? '', - ]; - } - } - } - - /* Post Chemo Section */ - $post_chemo_row_counter_arr = $request->post_chemo_row_counter; - $post_chemo_drug_id_arr = $request->post_chemo_drug_id; - $post_chemo_drug_route_arr = $request->post_chemo_drug_route; - $post_chemo_drug_factor_id_arr = $request->post_chemo_drug_factor_id; - $post_chemo_drug_weight_range_arr = $request->post_chemo_drug_weight_range; - $post_chemo_drug_dose_arr = $request->post_chemo_drug_dose; - $post_chemo_drug_duration_arr = $request->post_chemo_drug_duration; - $post_chemo_drug_instructions_arr = $request->post_chemo_drug_instructions; - $post_chemo_child_row_id_arr = $request->post_chemo_child_row_id; - $post_chemo_child_drug_weight_range_arr = $request->post_chemo_child_drug_weight_range; - $post_chemo_child_drug_dose_arr = $request->post_chemo_child_drug_dose; - $post_chemo_child_drug_duration_arr = $request->post_chemo_child_drug_duration; - $post_chemo_child_drug_instructions_arr = $request->post_chemo_child_drug_instructions; - - $post_chemo_drugs = []; - - for ($x = 0; $x < count($post_chemo_drug_id_arr); $x++) { - $post_chemo_drugs[$post_chemo_row_counter_arr[$x]] = [ - "drug_id" => $post_chemo_drug_id_arr[$x], - "drug_route" => $post_chemo_drug_route_arr[$x], - "drug_factor" => $post_chemo_drug_factor_id_arr[$x], - "dose" => [[ - "weight_range" => $post_chemo_drug_weight_range_arr[$x] ?? '', - "dose" => $post_chemo_drug_dose_arr[$x] ?? '', - "duration" => $post_chemo_drug_duration_arr[$x] ?? '', - "instructions" => $post_chemo_drug_instructions_arr[$x] ?? '', - ]], - ]; - } - - if (is_array($post_chemo_child_row_id_arr)) { - for ($x = 0; $x < count($post_chemo_child_row_id_arr); $x++) { - if(isset($post_chemo_drugs[$post_chemo_child_row_id_arr[$x]])) { - $post_chemo_drugs[$post_chemo_child_row_id_arr[$x]]["dose"][] = [ - "weight_range" => $post_chemo_child_drug_weight_range_arr[$x] ?? '', - "dose" => $post_chemo_child_drug_dose_arr[$x] ?? '', - "duration" => $post_chemo_child_drug_duration_arr[$x] ?? '', - "instructions" => $post_chemo_child_drug_instructions_arr[$x] ?? '', - ]; - } - } - } - - $cancer_protocol = new CancerProtocol(); - $cancer_protocol->name = $request->name; - $cancer_protocol->protocol_billing_type = $protocol_billing_type; - $cancer_protocol->protocol_cost = $protocol_cost; - $cancer_protocol->pre_chemo_comments = $request->pre_chemo_comments; - $cancer_protocol->pre_chemo_drugs = json_encode(array_values($pre_chemo_drugs)); - $cancer_protocol->chemo_comments = $request->chemo_comments; - $cancer_protocol->chemo_drugs = json_encode(array_values($chemo_drugs)); - $cancer_protocol->post_chemo_comments = $request->post_chemo_comments; - $cancer_protocol->post_chemo_drugs = json_encode(array_values($post_chemo_drugs)); - $cancer_protocol->created_by = Auth::id(); - - try { - $cancer_protocol->save(); - return redirect('/cancer_protocol/'); - } catch (QueryException $exception) { - flash("An error occurred. Please try again later")->error(); - return back()->withInput(); - } - } - - /** - * Show the specified resource. - * @param int $id - * @return Renderable - */ - public function show($id) - { - return view('cancer::show'); - } - - /** - * Show the form for editing the specified resource. - * @param int $id - * @return Renderable - */ - public function edit($id) { - $drugs = DB::table('drugs')->whereNull('deleted_at') - ->where('available', 1) - ->pluck('name', 'id')->prepend('-- select drugs --', ''); - - $drug_routes = DB::table('drug_routes')->whereNull('deleted_at') - ->where('available', 1) - ->pluck('name', 'id')->prepend('-- select routes --', ''); - - $factors = static::$factors; - - $option_drugs = ""; - foreach ($drugs as $key => $value){ - $drug_name = str_replace("'", '', $value); - $drug_name = str_replace("\"", '', $drug_name); - $drug_name = str_replace("+", '', $drug_name); - $option_drugs .= ""; - } - - $option_drug_routes = ""; - foreach ($drug_routes as $key => $value){ - $option_drug_routes .= ""; - } - - $option_factors = ""; - foreach ($factors as $key => $value){ - $option_factors .= ""; - } - - $cancer_protocol = CancerProtocol::find($id); - - return view('cancer::cancer_protocol.edit', compact('drugs', 'factors', 'drug_routes', - 'option_drugs', 'option_drug_routes', 'option_factors', 'cancer_protocol')); - } - - /** - * Update the specified resource in storage. - * @param Request $request - * @param int $id - * @return Renderable - */ - public function update(Request $request, $id) { - $request->validate([ - "name" => "required", - "protocol_billing_type" => "required" - ]); - - $protocol_billing_type = $request->protocol_billing_type; - $protocol_cost = $request->protocol_cost; - - if ($protocol_billing_type == 0 && !is_numeric($protocol_cost)) { - flash("Please add a protocol cost when billing type is umbrella")->error(); - return back()->withInput(); - } - - /* Pre Chemo Section */ - $pre_chemo_row_counter_arr = $request->pre_chemo_row_counter; - $pre_chemo_drug_id_arr = $request->pre_chemo_drug_id; - $pre_chemo_drug_route_arr = $request->pre_chemo_drug_route; - $pre_chemo_drug_factor_id_arr = $request->pre_chemo_drug_factor_id; - $pre_chemo_drug_weight_range_arr = $request->pre_chemo_drug_weight_range; - $pre_chemo_drug_dose_arr = $request->pre_chemo_drug_dose; - $pre_chemo_drug_duration_arr = $request->pre_chemo_drug_duration; - $pre_chemo_drug_instructions_arr = $request->pre_chemo_drug_instructions; - $pre_chemo_child_row_id_arr = $request->pre_chemo_child_row_id; - $pre_chemo_child_drug_weight_range_arr = $request->pre_chemo_child_drug_weight_range; - $pre_chemo_child_drug_dose_arr = $request->pre_chemo_child_drug_dose; - $pre_chemo_child_drug_duration_arr = $request->pre_chemo_child_drug_duration; - $pre_chemo_child_drug_instructions_arr = $request->pre_chemo_child_drug_instructions; - - $pre_chemo_drugs = []; - - for ($x = 0; $x < count($pre_chemo_drug_id_arr); $x++) { - $pre_chemo_drugs[$pre_chemo_row_counter_arr[$x]] = [ - "drug_id" => $pre_chemo_drug_id_arr[$x], - "drug_route" => $pre_chemo_drug_route_arr[$x], - "drug_factor" => $pre_chemo_drug_factor_id_arr[$x], - "dose" => [[ - "weight_range" => $pre_chemo_drug_weight_range_arr[$x] ?? '', - "dose" => $pre_chemo_drug_dose_arr[$x] ?? '', - "duration" => $pre_chemo_drug_duration_arr[$x] ?? '', - "instructions" => $pre_chemo_drug_instructions_arr[$x] ?? '', - ]], - ]; - } - - if (is_array($pre_chemo_child_row_id_arr)) { - for ($x = 0; $x < count($pre_chemo_child_row_id_arr); $x++) { - if(isset($pre_chemo_drugs[$pre_chemo_child_row_id_arr[$x]])) { - $pre_chemo_drugs[$pre_chemo_child_row_id_arr[$x]]["dose"][] = [ - "weight_range" => $pre_chemo_child_drug_weight_range_arr[$x] ?? '', - "dose" => $pre_chemo_child_drug_dose_arr[$x] ?? '', - "duration" => $pre_chemo_child_drug_duration_arr[$x] ?? '', - "instructions" => $pre_chemo_child_drug_instructions_arr[$x] ?? '', - ]; - } - } - } - - /* Chemo Section */ - $chemo_row_counter_arr = $request->chemo_row_counter; - $chemo_drug_id_arr = $request->chemo_drug_id; - $chemo_drug_route_arr = $request->chemo_drug_route; - $chemo_drug_factor_id_arr = $request->chemo_drug_factor_id; - $chemo_drug_weight_range_arr = $request->chemo_drug_weight_range; - $chemo_drug_dose_arr = $request->chemo_drug_dose; - $chemo_drug_duration_arr = $request->chemo_drug_duration; - $chemo_drug_instructions_arr = $request->chemo_drug_instructions; - $chemo_child_row_id_arr = $request->chemo_child_row_id; - $chemo_child_drug_weight_range_arr = $request->chemo_child_drug_weight_range; - $chemo_child_drug_dose_arr = $request->chemo_child_drug_dose; - $chemo_child_drug_duration_arr = $request->chemo_child_drug_duration; - $chemo_child_drug_instructions_arr = $request->chemo_child_drug_instructions; - - $chemo_drugs = []; - - for ($x = 0; $x < count($chemo_drug_id_arr); $x++) { - $chemo_drugs[$chemo_row_counter_arr[$x]] = [ - "drug_id" => $chemo_drug_id_arr[$x], - "drug_route" => $chemo_drug_route_arr[$x], - "drug_factor" => $chemo_drug_factor_id_arr[$x], - "dose" => [[ - "weight_range" => $chemo_drug_weight_range_arr[$x] ?? '', - "dose" => $chemo_drug_dose_arr[$x] ?? '', - "duration" => $chemo_drug_duration_arr[$x] ?? '', - "instructions" => $chemo_drug_instructions_arr[$x] ?? '', - ]], - ]; - } - - if (is_array($chemo_child_row_id_arr)) { - for ($x = 0; $x < count($chemo_child_row_id_arr); $x++) { - if(isset($chemo_drugs[$chemo_child_row_id_arr[$x]])) { - $chemo_drugs[$chemo_child_row_id_arr[$x]]["dose"][] = [ - "weight_range" => $chemo_child_drug_weight_range_arr[$x] ?? '', - "dose" => $chemo_child_drug_dose_arr[$x] ?? '', - "duration" => $chemo_child_drug_duration_arr[$x] ?? '', - "instructions" => $chemo_child_drug_instructions_arr[$x] ?? '', - ]; - } - } - } - - /* Post Chemo Section */ - $post_chemo_row_counter_arr = $request->post_chemo_row_counter; - $post_chemo_drug_id_arr = $request->post_chemo_drug_id; - $post_chemo_drug_route_arr = $request->post_chemo_drug_route; - $post_chemo_drug_factor_id_arr = $request->post_chemo_drug_factor_id; - $post_chemo_drug_weight_range_arr = $request->post_chemo_drug_weight_range; - $post_chemo_drug_dose_arr = $request->post_chemo_drug_dose; - $post_chemo_drug_duration_arr = $request->post_chemo_drug_duration; - $post_chemo_drug_instructions_arr = $request->post_chemo_drug_instructions; - $post_chemo_child_row_id_arr = $request->post_chemo_child_row_id; - $post_chemo_child_drug_weight_range_arr = $request->post_chemo_child_drug_weight_range; - $post_chemo_child_drug_dose_arr = $request->post_chemo_child_drug_dose; - $post_chemo_child_drug_duration_arr = $request->post_chemo_child_drug_duration; - $post_chemo_child_drug_instructions_arr = $request->post_chemo_child_drug_instructions; - - $post_chemo_drugs = []; - - for ($x = 0; $x < count($post_chemo_drug_id_arr); $x++) { - $post_chemo_drugs[$post_chemo_row_counter_arr[$x]] = [ - "drug_id" => $post_chemo_drug_id_arr[$x], - "drug_route" => $post_chemo_drug_route_arr[$x], - "drug_factor" => $post_chemo_drug_factor_id_arr[$x], - "dose" => [[ - "weight_range" => $post_chemo_drug_weight_range_arr[$x] ?? '', - "dose" => $post_chemo_drug_dose_arr[$x] ?? '', - "duration" => $post_chemo_drug_duration_arr[$x] ?? '', - "instructions" => $post_chemo_drug_instructions_arr[$x] ?? '', - ]], - ]; - } - - if (is_array($post_chemo_child_row_id_arr)) { - for ($x = 0; $x < count($post_chemo_child_row_id_arr); $x++) { - if(isset($post_chemo_drugs[$post_chemo_child_row_id_arr[$x]])) { - $post_chemo_drugs[$post_chemo_child_row_id_arr[$x]]["dose"][] = [ - "weight_range" => $post_chemo_child_drug_weight_range_arr[$x] ?? '', - "dose" => $post_chemo_child_drug_dose_arr[$x] ?? '', - "duration" => $post_chemo_child_drug_duration_arr[$x] ?? '', - "instructions" => $post_chemo_child_drug_instructions_arr[$x] ?? '', - ]; - } - } - } - - $cancer_protocol = CancerProtocol::find($id); - $cancer_protocol->name = $request->name; - $cancer_protocol->protocol_billing_type = $protocol_billing_type; - $cancer_protocol->protocol_cost = $protocol_cost; - $cancer_protocol->pre_chemo_comments = $request->pre_chemo_comments; - $cancer_protocol->pre_chemo_drugs = json_encode(array_values($pre_chemo_drugs)); - $cancer_protocol->chemo_comments = $request->chemo_comments; - $cancer_protocol->chemo_drugs = json_encode(array_values($chemo_drugs)); - $cancer_protocol->post_chemo_comments = $request->post_chemo_comments; - $cancer_protocol->post_chemo_drugs = json_encode(array_values($post_chemo_drugs)); - $cancer_protocol->updated_by = Auth::id(); - - try { - $cancer_protocol->save(); - return redirect('/cancer_protocol/'); - } catch (QueryException $exception) { - flash("An error occurred. Please try again later")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * @param int $id - */ - public function destroy($id) { - $protocol = CancerProtocol::find($id); - - if ($protocol->delete()){ - flash("Protocol has been deleted.")->success(); - return redirect('/cancer_protocol/'); - } else { - flash("An error occurred. Please try again later")->error(); - return back()->withInput(); - } - } - - public function inactive() { - $cancer_protocols = CancerProtocol::onlyTrashed()->get(); - - return view('cancer::cancer_protocol.inactive', compact('cancer_protocols')); - } - - public function activate($id) { - $protocol = CancerProtocol::withTrashed()->find($id); - - if ($protocol->restore()){ - flash("Protocol has been activated")->success(); - return redirect('/cancer_protocol/'); - } else { - flash("An error occurred. Please try again later")->error(); - return back()->withInput(); - } - } - - public function print_all_protocols() { - $cancer_protocols = CancerProtocol::all(); - $hospital_information = HospitalInformation::find(1); - - $drugs = $this->drugsService->pluckAvailableDrugs('name'); - $drug_with_units = $this->drugsService->pluckAvailableDrugs('unit_id'); - $drug_units = $this->drugUnitsService->pluckAvailableDrugUnits('name'); - $drug_routes = $this->drugRoutesService->pluckAvailableDrugRoutes('name'); - - $factors = static::$factors; - - $data = [ - 'drugs' => $drugs, - 'hospitalInfo' => $hospital_information, - 'cancer_protocols' => $cancer_protocols, - 'drug_with_units' => $drug_with_units, - 'drug_units' => $drug_units, - 'drug_routes' => $drug_routes, - 'factors' => $factors - ]; - - $print_footer = (!is_null($hospital_information->print_footer)) ? '     ' . $hospital_information->print_footer . '' : ''; - - $pdf = SnappyPDF::loadView("cancer::cancer_protocol/print_all_protocols", $data) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline' . $print_footer); - - - return $pdf->inline('Cancer Protocols' . date(" d-m-y h:ia") . '.pdf'); - } - - public function order_protocol(Request $request) { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $inpatient_info_id = session()->get('inpatient_info_id'); - $selected_protocols = []; - - if (isset($request->cancer_protocols) && is_array($request->cancer_protocols)) { - $selected_protocols = CancerProtocol::whereIn('id', $request->cancer_protocols)->get(); - } - - $patient = Patient::find($patient_id); - - $cancer_protocols = CancerProtocol::pluck('name', 'id'); - - $drugs = $this->drugsService->pluckAvailableDrugs('name'); - $drug_with_units = $this->drugsService->pluckAvailableDrugs('unit_id'); - $drug_units = $this->drugUnitsService->pluckAvailableDrugUnits('name'); - $drug_routes = $this->drugRoutesService->pluckAvailableDrugRoutes('name'); - - $factors = static::$factors; - - return view('cancer::cancer_protocol.order_protocol', compact('patient_id', 'episode_id', 'inpatient_info_id', - 'cancer_protocols', 'patient', 'selected_protocols', 'drugs', 'drug_routes', 'drug_units', 'drug_with_units', 'factors')); - } - - public function save_protocol_order(Request $request) { - $protocol_ids = $request->protocol_id; - $inpatient_id = $request->inpatient_info_id; - $patient_id = $request->patient_id; - $episode_id = $request->episode_id; - $adjusted_dose = $request->adjusted_dose; - $adjusted_dose_reason = $request->adjusted_dose_reason; - $count = 0; - - foreach ($protocol_ids as $protocol_id) { - $pre_chemo_drugs_to_save = []; - $chemo_drugs_to_save = []; - $post_chemo_drugs_to_save = []; - $cancer_protocol = CancerProtocol::find($protocol_id); - - $pre_chemo_drugs = json_decode($cancer_protocol->pre_chemo_drugs, true); - $chemo_drugs = json_decode($cancer_protocol->chemo_drugs, true); - $post_chemo_drugs = json_decode($cancer_protocol->post_chemo_drugs, true); - - for($x = 0; $x < count($pre_chemo_drugs); $x++) { - $drug_doses = []; - - for($i = 0; $i < count($pre_chemo_drugs[$x]['dose']); $i++){ - $duration_array = explode(",", $pre_chemo_drugs[$x]['dose'][$i]['duration']); - $duration_array_to_store = []; - - foreach ($duration_array as $duration) { - $duration_array_to_store[] = [ - "name" => $duration, - "given_by" => NULL, - "given_on" => NULL, - "quantity_given" => 0, - ]; - } - - $drug_doses[] = [ - "dose" => (!empty($adjusted_dose[$count]) && is_numeric($adjusted_dose[$count])) ? $adjusted_dose[$count] : $pre_chemo_drugs[$x]['dose'][$i]['dose'], - "weight_range" => $pre_chemo_drugs[$x]['dose'][$i]['weight_range'], - "duration" => $duration_array_to_store, - "instructions" => $pre_chemo_drugs[$x]['dose'][$i]['instructions'], - "adjusted_dose_reason" => (!empty($adjusted_dose[$count]) && is_numeric($adjusted_dose[$count])) ? $adjusted_dose_reason[$count] : NULL - ]; - - $count++; - } - - $pre_chemo_drugs_to_save[] = [ - "protocol_id" => $protocol_id, - "drug_id" => $pre_chemo_drugs[$x]['drug_id'], - "drug_route" => $pre_chemo_drugs[$x]['drug_route'], - "drug_factor" => $pre_chemo_drugs[$x]['drug_factor'], - "dose" => $drug_doses - ]; - } - - for($x = 0; $x < count($chemo_drugs); $x++) { - $drug_doses = []; - - for($i = 0; $i < count($chemo_drugs[$x]['dose']); $i++){ - $duration_array = explode(",", $chemo_drugs[$x]['dose'][$i]['duration']); - $duration_array_to_store = []; - - foreach ($duration_array as $duration) { - $duration_array_to_store[] = [ - "name" => $duration, - "given_by" => NULL, - "given_on" => NULL, - "quantity_given" => 0, - ]; - } - - $drug_doses[] = [ - "dose" => (!empty($adjusted_dose[$count]) && is_numeric($adjusted_dose[$count])) ? $adjusted_dose[$count] : $chemo_drugs[$x]['dose'][$i]['dose'], - "weight_range" => $chemo_drugs[$x]['dose'][$i]['weight_range'], - "duration" => $duration_array_to_store, - "instructions" => $chemo_drugs[$x]['dose'][$i]['instructions'], - "adjusted_dose_reason" => (!empty($adjusted_dose[$count]) && is_numeric($adjusted_dose[$count])) ? $adjusted_dose_reason[$count] : NULL - ]; - - $count++; - } - - $chemo_drugs_to_save[] = [ - "protocol_id" => $protocol_id, - "drug_id" => $chemo_drugs[$x]['drug_id'], - "drug_route" => $chemo_drugs[$x]['drug_route'], - "drug_factor" => $chemo_drugs[$x]['drug_factor'], - "dose" => $drug_doses - ]; - } - - for($x = 0; $x < count($post_chemo_drugs); $x++) { - $drug_doses = []; - - for($i = 0; $i < count($post_chemo_drugs[$x]['dose']); $i++){ - $duration_array = explode(",", $post_chemo_drugs[$x]['dose'][$i]['duration']); - $duration_array_to_store = []; - - foreach ($duration_array as $duration) { - $duration_array_to_store[] = [ - "name" => $duration, - "given_by" => NULL, - "given_on" => NULL, - "quantity_given" => 0, - ]; - } - - $drug_doses[] = [ - "dose" => (!empty($adjusted_dose[$count]) && is_numeric($adjusted_dose[$count])) ? $adjusted_dose[$count] : $post_chemo_drugs[$x]['dose'][$i]['dose'], - "weight_range" => $post_chemo_drugs[$x]['dose'][$i]['weight_range'], - "duration" => $duration_array_to_store, - "instructions" => $post_chemo_drugs[$x]['dose'][$i]['instructions'], - "adjusted_dose_reason" => (!empty($adjusted_dose[$count]) && is_numeric($adjusted_dose[$count])) ? $adjusted_dose_reason[$count] : NULL - ]; - - $count++; - } - - $post_chemo_drugs_to_save[] = [ - "protocol_id" => $protocol_id, - "drug_id" => $post_chemo_drugs[$x]['drug_id'], - "drug_route" => $post_chemo_drugs[$x]['drug_route'], - "drug_factor" => $post_chemo_drugs[$x]['drug_factor'], - "dose" => $drug_doses - ]; - } - - $ordered_cancer_protocol = new OrderedCancerProtocols(); - $ordered_cancer_protocol->protocol_id = $protocol_id; - $ordered_cancer_protocol->patient_id = $patient_id; - $ordered_cancer_protocol->episode_id = $episode_id; - $ordered_cancer_protocol->inpatient_id = $inpatient_id; - $ordered_cancer_protocol->pre_chemo_drugs = json_encode($pre_chemo_drugs_to_save); - $ordered_cancer_protocol->chemo_drugs = json_encode($chemo_drugs_to_save); - $ordered_cancer_protocol->post_chemo_drugs = json_encode($post_chemo_drugs_to_save); - $ordered_cancer_protocol->created_by = Auth::id(); - - try { - $ordered_cancer_protocol->save(); - flash("Cancer protocol ordering successful")->success(); - } catch (QueryException $e) { - flash("An error occurred when adding cancer protocols")->error(); - } - } - - return redirect('in_patient_sheet'); - } - - public function cancel_protocol_order($id) { - $protocol = OrderedCancerProtocols::find($id); - - // check if any drugs have been dispensed - - if ($protocol && $protocol->pre_chemo_status == 0 && $protocol->chemo_status == 0 && $protocol->post_chemo_status == 0) { - if ($protocol->delete()){ - flash("Protocol has been deleted.")->success(); - } else { - flash("An error occurred. Please try again later")->error(); - } - } else { - flash("Drugs in the protocol have already been dispensed")->error(); - } - - return redirect('in_patient_sheet'); - } -} diff --git a/docker/statistics/Modules/Cancer/Providers/CancerServiceProvider.php b/docker/statistics/Modules/Cancer/Providers/CancerServiceProvider.php deleted file mode 100644 index 2c3af6d1..00000000 --- a/docker/statistics/Modules/Cancer/Providers/CancerServiceProvider.php +++ /dev/null @@ -1,114 +0,0 @@ -registerTranslations(); - $this->registerConfig(); - $this->registerViews(); - $this->loadMigrationsFrom(module_path($this->moduleName, 'Database/Migrations')); - } - - /** - * Register the service provider. - * - * @return void - */ - public function register() - { - $this->app->register(RouteServiceProvider::class); - } - - /** - * Register config. - * - * @return void - */ - protected function registerConfig() - { - $this->publishes([ - module_path($this->moduleName, 'Config/config.php') => config_path($this->moduleNameLower . '.php'), - ], 'config'); - $this->mergeConfigFrom( - module_path($this->moduleName, 'Config/config.php'), $this->moduleNameLower - ); - } - - /** - * Register views. - * - * @return void - */ - public function registerViews() - { - $viewPath = resource_path('views/modules/' . $this->moduleNameLower); - - $sourcePath = module_path($this->moduleName, 'Resources/views'); - - $this->publishes([ - $sourcePath => $viewPath - ], ['views', $this->moduleNameLower . '-module-views']); - - $this->loadViewsFrom(array_merge($this->getPublishableViewPaths(), [$sourcePath]), $this->moduleNameLower); - } - - /** - * Register translations. - * - * @return void - */ - public function registerTranslations() - { - $langPath = resource_path('lang/modules/' . $this->moduleNameLower); - - if (is_dir($langPath)) { - $this->loadTranslationsFrom($langPath, $this->moduleNameLower); - $this->loadJsonTranslationsFrom($langPath); - } else { - $this->loadTranslationsFrom(module_path($this->moduleName, 'Resources/lang'), $this->moduleNameLower); - $this->loadJsonTranslationsFrom(module_path($this->moduleName, 'Resources/lang')); - } - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides() - { - return []; - } - - private function getPublishableViewPaths(): array - { - $paths = []; - foreach (\Config::get('view.paths') as $path) { - if (is_dir($path . '/modules/' . $this->moduleNameLower)) { - $paths[] = $path . '/modules/' . $this->moduleNameLower; - } - } - return $paths; - } -} diff --git a/docker/statistics/Modules/Cancer/Providers/RouteServiceProvider.php b/docker/statistics/Modules/Cancer/Providers/RouteServiceProvider.php deleted file mode 100644 index c1f447e6..00000000 --- a/docker/statistics/Modules/Cancer/Providers/RouteServiceProvider.php +++ /dev/null @@ -1,69 +0,0 @@ -mapApiRoutes(); - - $this->mapWebRoutes(); - } - - /** - * Define the "web" routes for the application. - * - * These routes all receive session state, CSRF protection, etc. - * - * @return void - */ - protected function mapWebRoutes() - { - Route::middleware('web') - ->namespace($this->moduleNamespace) - ->group(module_path('Cancer', '/Routes/web.php')); - } - - /** - * Define the "api" routes for the application. - * - * These routes are typically stateless. - * - * @return void - */ - protected function mapApiRoutes() - { - Route::prefix('api') - ->middleware('api') - ->namespace($this->moduleNamespace) - ->group(module_path('Cancer', '/Routes/api.php')); - } -} diff --git a/docker/statistics/Modules/Cancer/Resources/views/cancer_protocol/create.blade.php b/docker/statistics/Modules/Cancer/Resources/views/cancer_protocol/create.blade.php deleted file mode 100644 index b0b3e349..00000000 --- a/docker/statistics/Modules/Cancer/Resources/views/cancer_protocol/create.blade.php +++ /dev/null @@ -1,560 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('cancer_protocol.add_cancer_protocol') }}

    -
    -
    - -
    -
    - - @include('cancer::cancer_protocol.menu') - - - @include('flash::message') -
    - {{ Form::open(['route' => 'cancer_protocol.store', 'data-toggle' => 'validator']) }} - -

    Protocol Details

    - -
    -
    -
    - {{ Form::label('name', "Protocol Name") }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    - {{ Form::label('name', "Protocol Billing Type") }} -
    - {{ Form::radio('protocol_billing_type', 0, false, ["required", "onclick" => "show('protocol_cost_div');"]) }}  Umbrella Cost    - {{ Form::radio('protocol_billing_type', 1, false, ["required", "onclick" => "hide('protocol_cost_div');"]) }}  Bill Per Drug -
    - -
    - - -
    -
    - -
    - -

    - -
    -
    - {{ Form::label('pre_chemo_comments', 'Comments') }} - {{ Form::textarea('pre_chemo_comments', '', ['class' => 'form-control compulsory', 'required', 'rows' => '5']) }} -
    -
    - -
    - - - - - - - - - - - - -
    -
    -
    Drug
    -
    Route
    -
    Factor
    -
    Dose
    -
    Duration(Separate with commas)
    -
    Instructions
    -
    -
    -
    -
    - {{ Form::hidden('pre_chemo_row_counter[]', 0) }} -
    -
    - {{ Form::select('pre_chemo_drug_id[]', $drugs, '', ['class' => 'form-control compulsory drugs_id_class', 'id' => 'pre_chemo_drug_id_0', 'onchange' => 'drugs_details(0, this.value, \'pre_chemo\')', 'required']) }} -
    -
    - {{ Form::select('pre_chemo_drug_route[]', $drug_routes, '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - {{ Form::select('pre_chemo_drug_factor_id[]', $factors, '', ['class' => 'form-control compulsory', 'onchange' => 'check_factor(0, \'pre_chemo\')', 'required', 'id' => 'pre_chemo_drug_factor_id_0']) }} - - -
    -
    - {{ Form::number('pre_chemo_drug_dose[]', '', ['class' => 'form-control compulsory', 'min' => 0, 'required', 'step' => 0.0001]) }} - - -
    -
    - {{ Form::textarea('pre_chemo_drug_duration[]', '', ['class' => 'form-control compulsory', 'rows' => '3', 'required']) }} -
    -
    - {{ Form::textarea('pre_chemo_drug_instructions[]', '', ['class' => 'form-control', 'rows' => '3']) }} -
    -
    - Add Dose -
    -
    -
    -
    - - Add Drug - -
    - -

    - -
    -
    - {{ Form::label('chemo_comments', 'Comments') }} - {{ Form::textarea('chemo_comments', '', ['class' => 'form-control compulsory', 'required', 'rows' => '5']) }} -
    -
    - -
    - - - - - - - - - - - - -
    -
    -
    Drug
    -
    Route
    -
    Factor
    -
    Dose
    -
    Duration(Separate with commas)
    -
    Instructions
    -
    -
    -
    -
    - {{ Form::hidden('chemo_row_counter[]', 0) }} -
    -
    - {{ Form::select('chemo_drug_id[]', $drugs, '', ['class' => 'form-control compulsory drugs_id_class', 'id' => 'chemo_drug_id_0', 'onchange' => 'drugs_details(0, this.value, \'chemo\')', 'required']) }} -
    -
    - {{ Form::select('chemo_drug_route[]', $drug_routes, '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - {{ Form::select('chemo_drug_factor_id[]', $factors, '', ['class' => 'form-control compulsory', 'onchange' => 'check_factor(0, \'chemo\')', 'required', 'id' => 'chemo_drug_factor_id_0']) }} - - -
    -
    - {{ Form::number('chemo_drug_dose[]', '', ['class' => 'form-control compulsory', 'min' => 0, 'required', 'step' => 0.0001]) }} - - -
    -
    - {{ Form::textarea('chemo_drug_duration[]', '', ['class' => 'form-control compulsory', 'rows' => '3', 'required']) }} -
    -
    - {{ Form::textarea('chemo_drug_instructions[]', '', ['class' => 'form-control', 'rows' => '3']) }} -
    -
    - Add Dose -
    -
    -
    -
    - - Add Drug - -
    - -

    - -
    -
    - {{ Form::label('post_chemo_comments', 'Comments') }} - {{ Form::textarea('post_chemo_comments', '', ['class' => 'form-control compulsory', 'required', 'rows' => '5']) }} -
    -
    - -
    - - - - - - - - - - - - -
    -
    -
    Drug
    -
    Route
    -
    Factor
    -
    Dose
    -
    Duration(Separate with commas)
    -
    Instructions
    -
    -
    -
    -
    - {{ Form::hidden('post_chemo_row_counter[]', 0) }} -
    -
    - {{ Form::select('post_chemo_drug_id[]', $drugs, '', ['class' => 'form-control compulsory drugs_id_class', 'id' => 'post_chemo_drug_id_0', 'onchange' => 'drugs_details(0, this.value, \'post_chemo\')', 'required']) }} -
    -
    - {{ Form::select('post_chemo_drug_route[]', $drug_routes, '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - {{ Form::select('post_chemo_drug_factor_id[]', $factors, '', ['class' => 'form-control compulsory', 'onchange' => 'check_factor(0, \'post_chemo\')', 'required', 'id' => 'post_chemo_drug_factor_id_0']) }} - - -
    -
    - {{ Form::number('post_chemo_drug_dose[]', '', ['class' => 'form-control compulsory', 'min' => 0, 'required', 'step' => 0.0001]) }} - - -
    -
    - {{ Form::textarea('post_chemo_drug_duration[]', '', ['class' => 'form-control compulsory', 'rows' => '3', 'required']) }} -
    -
    - {{ Form::textarea('post_chemo_drug_instructions[]', '', ['class' => 'form-control', 'rows' => '3']) }} -
    -
    - Add Dose -
    -
    -
    -
    - - Add Drug - -
    - - {{ Form::button(__('cancer_protocol.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::button(__('cancer_protocol.cancel'),['type'=>'reset','class'=>'btn btn-default btn-rounded waves-effect waves-light']) }} - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Cancer/Resources/views/cancer_protocol/edit.blade.php b/docker/statistics/Modules/Cancer/Resources/views/cancer_protocol/edit.blade.php deleted file mode 100644 index 94247816..00000000 --- a/docker/statistics/Modules/Cancer/Resources/views/cancer_protocol/edit.blade.php +++ /dev/null @@ -1,665 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Edit Cancer Protocol

    -
    -
    - -
    -
    - - @include('cancer::cancer_protocol.menu') - - - @include('flash::message') -
    - {{ Form::model($cancer_protocol, ['method' => 'PUT', 'route' => ['cancer_protocol.update',$cancer_protocol] , 'data-toggle' => 'validator']) }} - -

    Protocol Details

    - -
    -
    -
    - {{ Form::label('name', "Protocol Name") }} - {{ Form::text('name', $cancer_protocol->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    - {{ Form::label('name', "Protocol Billing Type") }} -
    - {{ Form::radio('protocol_billing_type', 0, $cancer_protocol->protocol_billing_type == 0, ["required", "onclick" => "show('protocol_cost_div');"]) }}  Umbrella Cost    - {{ Form::radio('protocol_billing_type', 1, $cancer_protocol->protocol_billing_type == 1, ["required", "onclick" => "hide('protocol_cost_div');"]) }}  Bill Per Drug -
    - -
    - -
    protocol_billing_type == 1) style="display: none" @endif> - {{ Form::label('protocol_cost', "Protocol Cost") }} - {{ Form::number('protocol_cost', $cancer_protocol->protocol_cost, ['class' => 'form-control compulsory', 'min' => 0]) }} -
    -
    -
    - - @php - $pre_chemo_drugs = json_decode($cancer_protocol->pre_chemo_drugs, true); - $chemo_drugs = json_decode($cancer_protocol->chemo_drugs, true); - $post_chemo_drugs = json_decode($cancer_protocol->post_chemo_drugs, true); - $pre_chemo_counter = 0; - $chemo_counter = 0; - $post_chemo_counter = 0; - @endphp - -
    - -

    - -
    -
    - {{ Form::label('pre_chemo_comments', 'Comments') }} - {{ Form::textarea('pre_chemo_comments', $cancer_protocol->pre_chemo_comments, ['class' => 'form-control compulsory', 'required', 'rows' => '5']) }} -
    -
    - -
    - - - - - - - - - @foreach($pre_chemo_drugs as $pre_chemo_drug) - - - - - @php $pre_chemo_counter++; @endphp - @endforeach - -
    -
    -
    Drug
    -
    Route
    -
    Factor
    -
    Dose
    -
    Duration(Separate with commas)
    -
    Instructions
    -
    -
    -
    -
    - {{ Form::hidden('pre_chemo_row_counter[]', $pre_chemo_counter) }} -
    -
    - {{ Form::select('pre_chemo_drug_id[]', $drugs, $pre_chemo_drug["drug_id"], ['class' => 'form-control compulsory drugs_id_class', 'id' => 'pre_chemo_drug_id_' . $pre_chemo_counter, 'onchange' => 'drugs_details(' . $pre_chemo_counter . ', this.value, \'pre_chemo\')', 'required']) }} -
    -
    - {{ Form::select('pre_chemo_drug_route[]', $drug_routes, $pre_chemo_drug["drug_route"], ['class' => 'form-control compulsory', 'required']) }} -
    -
    - {{ Form::select('pre_chemo_drug_factor_id[]', $factors, $pre_chemo_drug["drug_factor"], ['class' => 'form-control compulsory', 'onchange' => 'check_factor(' . $pre_chemo_counter . ', \'pre_chemo\')', 'required', 'id' => 'pre_chemo_drug_factor_id_' . $pre_chemo_counter]) }} - - -
    -
    - {{ Form::number('pre_chemo_drug_dose[]', $pre_chemo_drug["dose"][0]["dose"], ['class' => 'form-control compulsory', 'min' => 0, 'required', 'step' => 0.0001]) }} - - -
    -
    - {{ Form::textarea('pre_chemo_drug_duration[]', $pre_chemo_drug["dose"][0]["duration"], ['class' => 'form-control compulsory', 'rows' => '3', 'required']) }} -
    -
    - {{ Form::textarea('pre_chemo_drug_instructions[]', $pre_chemo_drug["dose"][0]["instructions"], ['class' => 'form-control', 'rows' => '3']) }} -
    -
    - Add Dose - - @if($pre_chemo_counter != 0) -

    - - @endif -
    -
    - - @for($x=1; $x < count($pre_chemo_drug["dose"]); $x++) -
    -
    -
    - -
    -
    - - - -
    -
    - -
    -
    - -
    -
    - @endfor -
    -
    - - Add Drug - -
    - -

    - -
    -
    - {{ Form::label('chemo_comments', 'Comments') }} - {{ Form::textarea('chemo_comments', $cancer_protocol->chemo_comments, ['class' => 'form-control compulsory', 'required', 'rows' => '5']) }} -
    -
    - -
    - - - - - - - - - @foreach($chemo_drugs as $chemo_drug) - - - - - @php $chemo_counter++; @endphp - @endforeach - -
    -
    -
    Drug
    -
    Route
    -
    Factor
    -
    Dose
    -
    Duration(Separate with commas)
    -
    Instructions
    -
    -
    -
    -
    - {{ Form::hidden('chemo_row_counter[]', $chemo_counter) }} -
    -
    - {{ Form::select('chemo_drug_id[]', $drugs, $chemo_drug["drug_id"], ['class' => 'form-control compulsory drugs_id_class', 'id' => 'chemo_drug_id_' . $chemo_counter, 'onchange' => 'drugs_details(' . $chemo_counter . ', this.value, \'chemo\')', 'required']) }} -
    -
    - {{ Form::select('chemo_drug_route[]', $drug_routes, $chemo_drug["drug_route"], ['class' => 'form-control compulsory', 'required']) }} -
    -
    - {{ Form::select('chemo_drug_factor_id[]', $factors, $chemo_drug["drug_factor"], ['class' => 'form-control compulsory', 'onchange' => 'check_factor(' . $chemo_counter . ', \'chemo\')', 'required', 'id' => 'chemo_drug_factor_id_' . $chemo_counter]) }} - - -
    -
    - {{ Form::number('chemo_drug_dose[]', $chemo_drug["dose"][0]["dose"], ['class' => 'form-control compulsory', 'min' => 0, 'required', 'step' => 0.0001]) }} - - -
    -
    - {{ Form::textarea('chemo_drug_duration[]', $chemo_drug["dose"][0]["duration"], ['class' => 'form-control compulsory', 'rows' => '3', 'required']) }} -
    -
    - {{ Form::textarea('chemo_drug_instructions[]', $chemo_drug["dose"][0]["instructions"], ['class' => 'form-control', 'rows' => '3']) }} -
    -
    - Add Dose - - @if($chemo_counter != 0) -

    - - @endif -
    -
    - - @for($x=1; $x < count($chemo_drug["dose"]); $x++) -
    -
    -
    - -
    -
    - - - -
    -
    - -
    -
    - -
    -
    - @endfor -
    -
    - - Add Drug - -
    - -

    - -
    -
    - {{ Form::label('post_chemo_comments', 'Comments') }} - {{ Form::textarea('post_chemo_comments', $cancer_protocol->post_chemo_comments, ['class' => 'form-control compulsory', 'required', 'rows' => '5']) }} -
    -
    - -
    - - - - - - - - - @foreach($post_chemo_drugs as $post_chemo_drug) - - - - - @php $post_chemo_counter++; @endphp - @endforeach - -
    -
    -
    Drug
    -
    Route
    -
    Factor
    -
    Dose
    -
    Duration(Separate with commas)
    -
    Instructions
    -
    -
    -
    -
    - {{ Form::hidden('post_chemo_row_counter[]', $post_chemo_counter) }} -
    -
    - {{ Form::select('post_chemo_drug_id[]', $drugs, $post_chemo_drug["drug_id"], ['class' => 'form-control compulsory drugs_id_class', 'id' => 'post_chemo_drug_id_' . $post_chemo_counter, 'onchange' => 'drugs_details(' . $post_chemo_counter . ', this.value, \'post_chemo\')', 'required']) }} -
    -
    - {{ Form::select('post_chemo_drug_route[]', $drug_routes, $post_chemo_drug["drug_route"], ['class' => 'form-control compulsory', 'required']) }} -
    -
    - {{ Form::select('post_chemo_drug_factor_id[]', $factors, $post_chemo_drug["drug_factor"], ['class' => 'form-control compulsory', 'onchange' => 'check_factor(' . $post_chemo_counter . ', \'post_chemo\')', 'required', 'id' => 'post_chemo_drug_factor_id_' . $post_chemo_counter]) }} - - -
    -
    - {{ Form::number('post_chemo_drug_dose[]', $post_chemo_drug["dose"][0]["dose"], ['class' => 'form-control compulsory', 'min' => 0, 'required', 'step' => 0.0001]) }} - - -
    -
    - {{ Form::textarea('post_chemo_drug_duration[]', $post_chemo_drug["dose"][0]["duration"], ['class' => 'form-control compulsory', 'rows' => '3', 'required']) }} -
    -
    - {{ Form::textarea('post_chemo_drug_instructions[]', $post_chemo_drug["dose"][0]["instructions"], ['class' => 'form-control', 'rows' => '3']) }} -
    -
    - Add Dose - - @if($post_chemo_counter != 0) -

    - - @endif -
    -
    - - @for($x=1; $x < count($post_chemo_drug["dose"]); $x++) -
    -
    -
    - -
    -
    - - - -
    -
    - -
    -
    - -
    -
    - @endfor -
    -
    - - Add Drug - -
    - - {{ Form::button(__('cancer_protocol.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::button(__('cancer_protocol.cancel'),['type'=>'reset','class'=>'btn btn-default btn-rounded waves-effect waves-light']) }} - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Cancer/Resources/views/cancer_protocol/inactive.blade.php b/docker/statistics/Modules/Cancer/Resources/views/cancer_protocol/inactive.blade.php deleted file mode 100644 index 39f1948b..00000000 --- a/docker/statistics/Modules/Cancer/Resources/views/cancer_protocol/inactive.blade.php +++ /dev/null @@ -1,84 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    Inactive Protocols

    -
    -
    - -
    -
    - - @include('cancer::cancer_protocol.menu') - -
    - - @include('flash::message') - -
    - - - - - - - - - - @foreach($cancer_protocols as $cancer_protocol) - - - - - - @endforeach - - -
    ProtocolBilling Type
    {{ $cancer_protocol->name }} - @if($cancer_protocol->protocol_billing_type == 0) - Total Cost of {{ ugandan_shillings($cancer_protocol->protocol_cost) }} - @else - Billing Per Drug - @endif - - {{ Form::model($cancer_protocol->id ,['method' => 'POST', 'route' => ['cancer_protocol.activate', $cancer_protocol->id]]) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Cancer/Resources/views/cancer_protocol/index.blade.php b/docker/statistics/Modules/Cancer/Resources/views/cancer_protocol/index.blade.php deleted file mode 100644 index c2f05b7d..00000000 --- a/docker/statistics/Modules/Cancer/Resources/views/cancer_protocol/index.blade.php +++ /dev/null @@ -1,227 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    Cancer Protocols

    -
    -
    - -
    -
    - - @include('cancer::cancer_protocol.menu') - -
    - - Print Protocols - - @include('flash::message') - -
    - - - - - - - - - - - - - - - - @foreach($cancer_protocols as $cancer_protocol) - @php - $pre_chemo_drugs = json_decode($cancer_protocol->pre_chemo_drugs, true); - $chemo_drugs = json_decode($cancer_protocol->chemo_drugs, true); - $post_chemo_drugs = json_decode($cancer_protocol->post_chemo_drugs, true); - - $pre_chemo_drugs_count = count($pre_chemo_drugs); - $chemo_drugs_count = count($chemo_drugs); - $post_chemo_drugs_count = count($post_chemo_drugs); - - $pre_chemo_doses_count = array_sum(array_map(function ($value) {return count($value['dose']);}, $pre_chemo_drugs)); - $chemo_doses_count = array_sum(array_map(function ($value) {return count($value['dose']);}, $chemo_drugs)); - $post_chemo_doses_count = array_sum(array_map(function ($value) {return count($value['dose']);}, $post_chemo_drugs)); - @endphp - - - - - - - - - - @for($x = 0; $x < $pre_chemo_drugs_count; $x++) - - - - - - - @php - $drug_dosage = $drug_units[$drug_with_units[$pre_chemo_drugs[$x]['drug_id']]]; - - if ($pre_chemo_drugs[$x]['drug_factor'] == 1) { - $drug_dosage .= '/m2'; - } else if ($pre_chemo_drugs[$x]['drug_factor'] == 2) { - $drug_dosage .= '/Kg'; - } - @endphp - - @for($i = 0; $i < count($pre_chemo_drugs[$x]['dose']); $i++) - - - - - - @endfor - @endfor - - - - - - - @for($x = 0; $x < $chemo_drugs_count; $x++) - - - - - - - @php - $drug_dosage = $drug_units[$drug_with_units[$chemo_drugs[$x]['drug_id']]]; - - if ($chemo_drugs[$x]['drug_factor'] == 1) { - $drug_dosage .= '/m2'; - } else if ($chemo_drugs[$x]['drug_factor'] == 2) { - $drug_dosage .= '/Kg'; - } - @endphp - - @for($i = 0; $i < count($chemo_drugs[$x]['dose']); $i++) - - - - - - @endfor - @endfor - - - - - - - @for($x = 0; $x < $post_chemo_drugs_count; $x++) - - - - - - - @php - $drug_dosage = $drug_units[$drug_with_units[$post_chemo_drugs[$x]['drug_id']]]; - - if ($post_chemo_drugs[$x]['drug_factor'] == 1) { - $drug_dosage .= '/m2'; - } else if ($post_chemo_drugs[$x]['drug_factor'] == 2) { - $drug_dosage .= '/Kg'; - } - @endphp - - @for($i = 0; $i < count($post_chemo_drugs[$x]['dose']); $i++) - - - - - - @endfor - @endfor - @endforeach - - -
    ProtocolSectionSection CommentDrugsRouteFactorDoseDurationInstructions
    -

    {{ $cancer_protocol->name }}

    - -
    - - @if($cancer_protocol->protocol_billing_type == 0) - Total Cost of {{ ugandan_shillings($cancer_protocol->protocol_cost) }} - @else - Billing Per Drug - @endif - -
    - - Edit - -

    - - {{ Form::model($cancer_protocol->id ,['method' => 'DELETE', 'route' => ['cancer_protocol.destroy', $cancer_protocol->id]]) }} - - {{ Form::close() }} -
    Pre-Chemo{{ $cancer_protocol->pre_chemo_comments }}
    {{ $drugs[$pre_chemo_drugs[$x]['drug_id']] ?? '' }}{{ $drug_routes[$pre_chemo_drugs[$x]['drug_route']] ?? '' }}{{ $factors[$pre_chemo_drugs[$x]['drug_factor']] ?? '' }}
    - {{ $pre_chemo_drugs[$x]['dose'][$i]['dose'] }} {!! $drug_dosage !!} - - @if(!empty($pre_chemo_drugs[$x]['dose'][$i]['weight_range'])) -

    - ({{ $pre_chemo_drugs[$x]['dose'][$i]['weight_range'] }}) - @endif -
    {{ $pre_chemo_drugs[$x]['dose'][$i]['duration'] }}{{ $pre_chemo_drugs[$x]['dose'][$i]['instructions'] }}
    Chemo{{ $cancer_protocol->chemo_comments }}
    {{ $drugs[$chemo_drugs[$x]['drug_id']] ?? '' }}{{ $drug_routes[$chemo_drugs[$x]['drug_route']] ?? '' }}{{ $factors[$chemo_drugs[$x]['drug_factor']] ?? '' }}
    - {{ $chemo_drugs[$x]['dose'][$i]['dose'] }} {!! $drug_dosage !!} - - @if(!empty($chemo_drugs[$x]['dose'][$i]['weight_range'])) -

    - ({{ $chemo_drugs[$x]['dose'][$i]['weight_range'] }}) - @endif -
    {{ $chemo_drugs[$x]['dose'][$i]['duration'] }}{{ $chemo_drugs[$x]['dose'][$i]['instructions'] }}
    Post-Chemo{{ $cancer_protocol->post_chemo_comments }}
    {{ $drugs[$post_chemo_drugs[$x]['drug_id']] ?? '' }}{{ $drug_routes[$post_chemo_drugs[$x]['drug_route']] ?? '' }}{{ $factors[$post_chemo_drugs[$x]['drug_factor']] ?? '' }}
    - {{ $post_chemo_drugs[$x]['dose'][$i]['dose'] }} {!! $drug_dosage !!} - - @if(!empty($post_chemo_drugs[$x]['dose'][$i]['weight_range'])) -

    - ({{ $post_chemo_drugs[$x]['dose'][$i]['weight_range'] }}) - @endif -
    {{ $post_chemo_drugs[$x]['dose'][$i]['duration'] }}{{ $post_chemo_drugs[$x]['dose'][$i]['instructions'] }}
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Cancer/Resources/views/cancer_protocol/menu.blade.php b/docker/statistics/Modules/Cancer/Resources/views/cancer_protocol/menu.blade.php deleted file mode 100644 index 1e7728ef..00000000 --- a/docker/statistics/Modules/Cancer/Resources/views/cancer_protocol/menu.blade.php +++ /dev/null @@ -1,5 +0,0 @@ -
    - @if(Auth::user()->can('cancer-protocol-create')) {{ __('cancer_protocol.add_cancer_protocol') }}@endif - @if(Auth::user()->can('cancer-protocol-list')) {{ __('cancer_protocol.view_cancer_protocols') }}@endif - @if(Auth::user()->can('cancer-protocol-delete')) {{ __('cancer_protocol.inactive_cancer_protocols') }}@endif -
    diff --git a/docker/statistics/Modules/Cancer/Resources/views/cancer_protocol/order_protocol.blade.php b/docker/statistics/Modules/Cancer/Resources/views/cancer_protocol/order_protocol.blade.php deleted file mode 100644 index 9dabe7f8..00000000 --- a/docker/statistics/Modules/Cancer/Resources/views/cancer_protocol/order_protocol.blade.php +++ /dev/null @@ -1,272 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') - -
    -
    -

    Prescribe Protocol

    -
    -
    - -
    -
    - - @include('patients::allergies.header') - -
    - @include('flash::message') - - {{ Form::open(['route' => 'cancer_protocol.order_protocol' , 'data-toggle' => 'validator']) }} - - {{ Form::label('cancer_protocols', 'Choose cancer protocols') }} - -
    - {{ Form::select('cancer_protocols[]', $cancer_protocols, '',['id'=>'cancer_protocols', 'multiple', 'class' => 'form-control', 'required']) }} -
    - - {{ Form::button(__('cancer_protocol.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - - {{ Form::close() }} - -
    - - @php $count = 1; @endphp - - @if(count($selected_protocols) > 0) - {{ Form::open(['route' => 'cancer_protocol.save_protocol_order' , 'data-toggle' => 'validator']) }} - - {{ Form::hidden('patient_id', $patient_id) }} - {{ Form::hidden('episode_id', $episode_id) }} - {{ Form::hidden('inpatient_info_id', $inpatient_info_id) }} - - - - - - - - - - - - - - - - - - @foreach($selected_protocols as $cancer_protocol) - @php - $pre_chemo_drugs = json_decode($cancer_protocol->pre_chemo_drugs, true); - $chemo_drugs = json_decode($cancer_protocol->chemo_drugs, true); - $post_chemo_drugs = json_decode($cancer_protocol->post_chemo_drugs, true); - - $pre_chemo_drugs_count = count($pre_chemo_drugs); - $chemo_drugs_count = count($chemo_drugs); - $post_chemo_drugs_count = count($post_chemo_drugs); - - $pre_chemo_doses_count = array_sum(array_map(function ($value) {return count($value['dose']);}, $pre_chemo_drugs)); - $chemo_doses_count = array_sum(array_map(function ($value) {return count($value['dose']);}, $chemo_drugs)); - $post_chemo_doses_count = array_sum(array_map(function ($value) {return count($value['dose']);}, $post_chemo_drugs)); - @endphp - - - - - - - - - - @for($x = 0; $x < $pre_chemo_drugs_count; $x++) - - - - - - - @php - $drug_dosage = $drug_units[$drug_with_units[$pre_chemo_drugs[$x]['drug_id']]]; - - if ($pre_chemo_drugs[$x]['drug_factor'] == 1) { - $drug_dosage .= '/m2'; - } else if ($pre_chemo_drugs[$x]['drug_factor'] == 2) { - $drug_dosage .= '/Kg'; - } - @endphp - - @for($i = 0; $i < count($pre_chemo_drugs[$x]['dose']); $i++) - - - - - - - @endfor - @endfor - - - - - - - @for($x = 0; $x < $chemo_drugs_count; $x++) - - - - - - - @php - $drug_dosage = $drug_units[$drug_with_units[$chemo_drugs[$x]['drug_id']]]; - - if ($chemo_drugs[$x]['drug_factor'] == 1) { - $drug_dosage .= '/m2'; - } else if ($chemo_drugs[$x]['drug_factor'] == 2) { - $drug_dosage .= '/Kg'; - } - @endphp - - @for($i = 0; $i < count($chemo_drugs[$x]['dose']); $i++) - - - - - - - @endfor - @endfor - - - - - - - @for($x = 0; $x < $post_chemo_drugs_count; $x++) - - - - - - - @php - $drug_dosage = $drug_units[$drug_with_units[$post_chemo_drugs[$x]['drug_id']]]; - - if ($post_chemo_drugs[$x]['drug_factor'] == 1) { - $drug_dosage .= '/m2'; - } else if ($post_chemo_drugs[$x]['drug_factor'] == 2) { - $drug_dosage .= '/Kg'; - } - @endphp - - @for($i = 0; $i < count($post_chemo_drugs[$x]['dose']); $i++) - - - - - - - @endfor - @endfor - - @php $count++ @endphp - @endforeach - - -
    ProtocolSectionSection CommentDrugsRouteFactorDoseAdjusted DoseDurationInstructions
    -

    {{ $cancer_protocol->name }}

    - {{ Form::hidden('protocol_id[]', $cancer_protocol->id) }} - -
    - - @if($cancer_protocol->protocol_billing_type == 0) - Total Cost of {{ ugandan_shillings($cancer_protocol->protocol_cost) }} - @else - Billing Per Drug - @endif - -
    - - Remove -
    Pre-Chemo{{ $cancer_protocol->pre_chemo_comments }}
    - {{ $drugs[$pre_chemo_drugs[$x]['drug_id']] ?? '' }} - - {{ $drug_routes[$pre_chemo_drugs[$x]['drug_route']] ?? '' }} - - {{ $factors[$pre_chemo_drugs[$x]['drug_factor']] ?? '' }} -
    - {{ $pre_chemo_drugs[$x]['dose'][$i]['dose'] }} {!! $drug_dosage !!} - - @if(!empty($pre_chemo_drugs[$x]['dose'][$i]['weight_range'])) -

    - ({{ $pre_chemo_drugs[$x]['dose'][$i]['weight_range'] }}) - @endif -
    - {{ Form::number('adjusted_dose[]', '', ['class' => 'form-control', 'step' => '0.0001']) }} - -

    - - {{ Form::label('adjusted_dose_reason', 'Reason') }} - {{ Form::textarea('adjusted_dose_reason[]', '', ['class' => 'form-control', 'rows' => 2]) }} -
    {{ $pre_chemo_drugs[$x]['dose'][$i]['duration'] }}{{ $pre_chemo_drugs[$x]['dose'][$i]['instructions'] }}
    Chemo{{ $cancer_protocol->chemo_comments }}
    {{ $drugs[$chemo_drugs[$x]['drug_id']] ?? '' }}{{ $drug_routes[$chemo_drugs[$x]['drug_route']] ?? '' }}{{ $factors[$chemo_drugs[$x]['drug_factor']] ?? '' }}
    - {{ $chemo_drugs[$x]['dose'][$i]['dose'] }} {!! $drug_dosage !!} - - @if(!empty($chemo_drugs[$x]['dose'][$i]['weight_range'])) -

    - ({{ $chemo_drugs[$x]['dose'][$i]['weight_range'] }}) - @endif -
    - {{ Form::number('adjusted_dose[]', '', ['class' => 'form-control', 'step' => '0.0001']) }} - -

    - - {{ Form::label('adjusted_dose_reason', 'Reason') }} - {{ Form::textarea('adjusted_dose_reason[]', '', ['class' => 'form-control', 'rows' => 2]) }} -
    {{ $chemo_drugs[$x]['dose'][$i]['duration'] }}{{ $chemo_drugs[$x]['dose'][$i]['instructions'] }}
    Post-Chemo{{ $cancer_protocol->post_chemo_comments }}
    {{ $drugs[$post_chemo_drugs[$x]['drug_id']] ?? '' }}{{ $drug_routes[$post_chemo_drugs[$x]['drug_route']] ?? '' }}{{ $factors[$post_chemo_drugs[$x]['drug_factor']] ?? '' }}
    - {{ $post_chemo_drugs[$x]['dose'][$i]['dose'] }} {!! $drug_dosage !!} - - @if(!empty($post_chemo_drugs[$x]['dose'][$i]['weight_range'])) -

    - ({{ $post_chemo_drugs[$x]['dose'][$i]['weight_range'] }}) - @endif -
    - {{ Form::number('adjusted_dose[]', '', ['class' => 'form-control', 'step' => '0.0001']) }} - -

    - - {{ Form::label('adjusted_dose_reason', 'Reason') }} - {{ Form::textarea('adjusted_dose_reason[]', '', ['class' => 'form-control', 'rows' => 2]) }} -
    {{ $post_chemo_drugs[$x]['dose'][$i]['duration'] }}{{ $post_chemo_drugs[$x]['dose'][$i]['instructions'] }}
    - - {{ Form::button(__('cancer_protocol.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - - {{ Form::close() }} - @else - Please select a protocol above to continue - @endif -
    -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Cancer/Resources/views/cancer_protocol/print_all_protocols.blade.php b/docker/statistics/Modules/Cancer/Resources/views/cancer_protocol/print_all_protocols.blade.php deleted file mode 100644 index 083c8cba..00000000 --- a/docker/statistics/Modules/Cancer/Resources/views/cancer_protocol/print_all_protocols.blade.php +++ /dev/null @@ -1,202 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Inpatient Bill - Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') - - - - - - - - - - - - - - - - - @foreach($cancer_protocols as $cancer_protocol) - @php - $pre_chemo_drugs = json_decode($cancer_protocol->pre_chemo_drugs, true); - $chemo_drugs = json_decode($cancer_protocol->chemo_drugs, true); - $post_chemo_drugs = json_decode($cancer_protocol->post_chemo_drugs, true); - - $pre_chemo_drugs_count = count($pre_chemo_drugs); - $chemo_drugs_count = count($chemo_drugs); - $post_chemo_drugs_count = count($post_chemo_drugs); - - $pre_chemo_doses_count = array_sum(array_map(function ($value) {return count($value['dose']);}, $pre_chemo_drugs)); - $chemo_doses_count = array_sum(array_map(function ($value) {return count($value['dose']);}, $chemo_drugs)); - $post_chemo_doses_count = array_sum(array_map(function ($value) {return count($value['dose']);}, $post_chemo_drugs)); - @endphp - - - - - - - - - - @for($x = 0; $x < $pre_chemo_drugs_count; $x++) - - - - - - - @php - $drug_dosage = $drug_units[$drug_with_units[$pre_chemo_drugs[$x]['drug_id']]]; - - if ($pre_chemo_drugs[$x]['drug_factor'] == 1) { - $drug_dosage .= '/m2'; - } else if ($pre_chemo_drugs[$x]['drug_factor'] == 2) { - $drug_dosage .= '/Kg'; - } - @endphp - - @for($i = 0; $i < count($pre_chemo_drugs[$x]['dose']); $i++) - - - - - - @endfor - @endfor - - - - - - - @for($x = 0; $x < $chemo_drugs_count; $x++) - - - - - - - @php - $drug_dosage = $drug_units[$drug_with_units[$chemo_drugs[$x]['drug_id']]]; - - if ($chemo_drugs[$x]['drug_factor'] == 1) { - $drug_dosage .= '/m2'; - } else if ($chemo_drugs[$x]['drug_factor'] == 2) { - $drug_dosage .= '/Kg'; - } - @endphp - - @for($i = 0; $i < count($chemo_drugs[$x]['dose']); $i++) - - - - - - @endfor - @endfor - - - - - - - @for($x = 0; $x < $post_chemo_drugs_count; $x++) - - - - - - - @php - $drug_dosage = $drug_units[$drug_with_units[$post_chemo_drugs[$x]['drug_id']]]; - - if ($post_chemo_drugs[$x]['drug_factor'] == 1) { - $drug_dosage .= '/m2'; - } else if ($post_chemo_drugs[$x]['drug_factor'] == 2) { - $drug_dosage .= '/Kg'; - } - @endphp - - @for($i = 0; $i < count($post_chemo_drugs[$x]['dose']); $i++) - - - - - - @endfor - @endfor - @endforeach - - -
    ProtocolSectionSection CommentDrugsRouteFactorDoseDurationInstructions
    -

    {{ $cancer_protocol->name }}

    - -
    - - @if($cancer_protocol->protocol_billing_type == 0) - Total Cost of {{ ugandan_shillings($cancer_protocol->protocol_cost) }} - @else - Billing Per Drug - @endif -
    Pre-Chemo{{ $cancer_protocol->pre_chemo_comments }}
    {{ $drugs[$pre_chemo_drugs[$x]['drug_id']] ?? '' }}{{ $drug_routes[$pre_chemo_drugs[$x]['drug_route']] ?? '' }}{{ $factors[$pre_chemo_drugs[$x]['drug_factor']] ?? '' }}
    - {{ $pre_chemo_drugs[$x]['dose'][$i]['dose'] }} {!! $drug_dosage !!} - - @if(!empty($pre_chemo_drugs[$x]['dose'][$i]['weight_range'])) -

    - ({{ $pre_chemo_drugs[$x]['dose'][$i]['weight_range'] }}) - @endif -
    {{ $pre_chemo_drugs[$x]['dose'][$i]['duration'] }}{{ $pre_chemo_drugs[$x]['dose'][$i]['instructions'] }}
    Chemo{{ $cancer_protocol->chemo_comments }}
    {{ $drugs[$chemo_drugs[$x]['drug_id']] ?? '' }}{{ $drug_routes[$chemo_drugs[$x]['drug_route']] ?? '' }}{{ $factors[$chemo_drugs[$x]['drug_factor']] ?? '' }}
    - {{ $chemo_drugs[$x]['dose'][$i]['dose'] }} {!! $drug_dosage !!} - - @if(!empty($chemo_drugs[$x]['dose'][$i]['weight_range'])) -

    - ({{ $chemo_drugs[$x]['dose'][$i]['weight_range'] }}) - @endif -
    {{ $chemo_drugs[$x]['dose'][$i]['duration'] }}{{ $chemo_drugs[$x]['dose'][$i]['instructions'] }}
    Post-Chemo{{ $cancer_protocol->post_chemo_comments }}
    {{ $drugs[$post_chemo_drugs[$x]['drug_id']] ?? '' }}{{ $drug_routes[$post_chemo_drugs[$x]['drug_route']] ?? '' }}{{ $factors[$post_chemo_drugs[$x]['drug_factor']] ?? '' }}
    - {{ $post_chemo_drugs[$x]['dose'][$i]['dose'] }} {!! $drug_dosage !!} - - @if(!empty($post_chemo_drugs[$x]['dose'][$i]['weight_range'])) -

    - ({{ $post_chemo_drugs[$x]['dose'][$i]['weight_range'] }}) - @endif -
    {{ $post_chemo_drugs[$x]['dose'][$i]['duration'] }}{{ $post_chemo_drugs[$x]['dose'][$i]['instructions'] }}
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/Cancer/Routes/api.php b/docker/statistics/Modules/Cancer/Routes/api.php deleted file mode 100644 index 27e7dc6d..00000000 --- a/docker/statistics/Modules/Cancer/Routes/api.php +++ /dev/null @@ -1,18 +0,0 @@ -get('/cancer', function (Request $request) { - return $request->user(); -}); \ No newline at end of file diff --git a/docker/statistics/Modules/Cancer/Routes/web.php b/docker/statistics/Modules/Cancer/Routes/web.php deleted file mode 100644 index 117d5dff..00000000 --- a/docker/statistics/Modules/Cancer/Routes/web.php +++ /dev/null @@ -1,13 +0,0 @@ - ['auth', 'disablebackbutton', 'user-locale','subscription-tracking', 'password-expiry']], function () { - Route::get('cancer_protocol/inactive', 'CancerProtocolController@inactive')->name('cancer_protocol.inactive'); - Route::post('cancer_protocol/activate/{id}', 'CancerProtocolController@activate')->name('cancer_protocol.activate'); - Route::any('cancer_protocol/print_all_protocols', 'CancerProtocolController@print_all_protocols')->name('cancer_protocol.print_all_protocols'); - Route::any('cancer_protocol/order_protocol', 'CancerProtocolController@order_protocol')->name('cancer_protocol.order_protocol'); - Route::any('cancer_protocol/save_protocol_order', 'CancerProtocolController@save_protocol_order')->name('cancer_protocol.save_protocol_order'); - Route::any('cancer_protocol/cancel_protocol_order/{id}', 'CancerProtocolController@cancel_protocol_order')->name('cancer_protocol.cancel_protocol_order'); - Route::resource('cancer_protocol', 'CancerProtocolController'); -}); diff --git a/docker/statistics/Modules/Cancer/bitbucket-pipelines.yml b/docker/statistics/Modules/Cancer/bitbucket-pipelines.yml deleted file mode 100644 index e850a8fd..00000000 --- a/docker/statistics/Modules/Cancer/bitbucket-pipelines.yml +++ /dev/null @@ -1,19 +0,0 @@ -image: alpine/git:latest - -pipelines: - branches: - main: - - step: - name: Merge To Beta - script: - - git remote set-url origin https://Kabricks:${APP_SECRET}@bitbucket.org/dcsammi/${BITBUCKET_REPO_SLUG} - - git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*" - - git fetch - - git checkout beta - - git merge main - - git commit --amend -m "[skip ci] Merge changes from main" - - git push - - step: - name: Deploy To Test - script: - - echo "Ready to deploy to demo or production!" diff --git a/docker/statistics/Modules/Cancer/module.json b/docker/statistics/Modules/Cancer/module.json deleted file mode 100644 index db1c0ba7..00000000 --- a/docker/statistics/Modules/Cancer/module.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "Cancer", - "alias": "cancer", - "description": "", - "keywords": [], - "priority": 0, - "providers": [ - "Modules\\Cancer\\Providers\\CancerServiceProvider" - ], - "files": [] -} diff --git a/docker/statistics/Modules/ClinicalData/Config/config.php b/docker/statistics/Modules/ClinicalData/Config/config.php deleted file mode 100644 index bc15de2b..00000000 --- a/docker/statistics/Modules/ClinicalData/Config/config.php +++ /dev/null @@ -1,5 +0,0 @@ - 'Clinical Data' -]; diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/AccountTypeController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/AccountTypeController.php deleted file mode 100755 index 99ecb3a2..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/AccountTypeController.php +++ /dev/null @@ -1,203 +0,0 @@ -middleware('auth'); - $this->middleware('permission:account-types-list', ['only' => ['index']]); - $this->middleware('permission:create-account-types', ['only' => ['create','store','edit','update']]); - $this->middleware('permission:view-account-type-details', ['only' => ['show']]); - $this->middleware('permission:activate-account-types', ['only' => ['activate']]); - $this->middleware('permission:de-activate-account-types', ['only' => ['inactive']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $account_types = AccountType::orderBy('name', 'asc') - ->paginate(50); - return view('clinical_data::account_types.index', compact('account_types')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - return view('clinical_data::account_types.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) { - //validation failed - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } -// flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - - //validation passed - $account_type = new AccountType; - $logged_in_user_id = Auth::user()->id; - - $account_type->name = $request->name; - $account_type->description = $request->description; - $account_type->created_by = $logged_in_user_id; - $account_type->updated_by = $logged_in_user_id; - - try { - $account_type->save(); - flash($request->name . " Account Type has been saved")->success(); - return redirect("/account_types/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $account_type = AccountType::where(['id' => $id])->first(); - - if (!$account_type) { - flash()->error("Account Type not found"); - return redirect('/account_types/'); - } else { - return view('clinical_data::account_types.edit', compact('account_type')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) { - //validation failed - - $string = ""; - - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - -// flash($string)->error(); - - return back()->withErrors($validator)->withInput(); - } else { - //validation passed - $account_type = AccountType::find($id); - $logged_in_user_id = Auth::user()->id; - - $account_type->name = $request->name; - $account_type->description = $request->description; - $account_type->updated_by = $logged_in_user_id; - - try { - $account_type->save(); - flash($request->name . " Account Type has been updated")->success(); - return redirect("/account_types/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $account_type = AccountType::find($id); - - if ($account_type->delete()): - flash("Account Type has been deleted.")->success(); - return redirect('/account_types/'); - endif; - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $account_types = AccountType::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($account_types) < 1) { - flash()->error("There is no inactive account type"); - return redirect('/account_types/'); - } else { - return view('clinical_data::account_types.inactive', compact('account_types')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $account_type = AccountType::withTrashed()->find($id); - - if ($account_type->restore()): - flash("Account Type has been activated.")->success(); - return redirect('/account_types/inactive'); - endif; - } - -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/AgeGroupController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/AgeGroupController.php deleted file mode 100755 index 096010db..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/AgeGroupController.php +++ /dev/null @@ -1,173 +0,0 @@ -middleware('auth'); - $this->middleware('permission:age-group-list', ['only' => ['index']]); - $this->middleware('permission:age-group-create', ['only' => ['create', 'store']]); - $this->middleware('permission:age-group-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:age-group-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - * - */ - public function index() - { - $age_groups = AgeGroup::orderBy('name','asc')->paginate(50); - - return view('clinical_data::age_groups.index', compact('age_groups')); - } - - /** - * Show the form for creating a new resource. - * - */ - public function create() - { - return view('clinical_data::age_groups.create'); - } - - /** - * Store a newly created resource in storage. - * - */ - public function store(Request $request) - { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - $age_group = new AgeGroup; - - $age_group->name = $request->name; - $age_group->age_type = $request->age_type; - $age_group->from_age = $request->from_age; - $age_group->to_age = $request->to_age; - $age_group->created_by = $logged_in_user_id; - $age_group->updated_by = $logged_in_user_id; - - try { - $age_group->save(); - flash($request->name . " Age Group has been saved")->success(); - return redirect("/age_groups/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - */ - public function edit($id) - { - $age_group = AgeGroup::where(['id' => $id])->first(); - - if (!$age_group) { - flash()->error("There is no such Age Group"); - return redirect('/age_groups/'); - } else { - return view('clinical_data::age_groups.edit', compact('age_group')); - } - } - - /** - * Update the specified resource in storage. - * - * @param int $id - */ - public function update(Request $request, $id) - { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - $age_group = AgeGroup::find($id); - - $age_group->name = $request->name; - $age_group->age_type = $request->age_type; - $age_group->from_age = $request->from_age; - $age_group->to_age = $request->to_age; - $age_group->updated_by = $logged_in_user_id; - - try { - $age_group->save(); - flash($request->name . " Age Group has been updated")->success(); - return redirect("/age_groups/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - */ - public function destroy($id) - { - $age_group = AgeGroup::find($id); - - if ($age_group->delete()): - flash("Age Group has been deleted.")->success(); - return redirect('/age_groups/'); - endif; - } - - /** - * Display a listing of the inactive resource(s). - * - */ - public function inactive() { - $age_groups = AgeGroup::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($age_groups) < 1) { - flash()->error("There is no inactive age group"); - return redirect('/age_groups/'); - } else { - return view('clinical_data::age_groups.inactive', compact('age_groups')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - */ - public function activate($id) { - $age_group= AgeGroup::withTrashed()->find($id); - - if ($age_group->restore()): - flash("Age Group has been activated.")->success(); - return redirect('/age_groups/inactive'); - endif; - } - -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/BedCategoriesController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/BedCategoriesController.php deleted file mode 100755 index 0cda00ae..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/BedCategoriesController.php +++ /dev/null @@ -1,181 +0,0 @@ -middleware('auth'); - $this->middleware('permission:bed_categories-list', ['only' => ['index']]); - $this->middleware('permission:bed_categories-detail', ['only' => ['show']]); - $this->middleware('permission:bed_categories-create', ['only' => ['create', 'store']]); - $this->middleware('permission:bed_categories-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:bed_categories-delete', ['only' => ['destroy']]); - $this->middleware('permission:bed_categories-status', ['only' => ['activate, inactive']]); - } - /** - * Display a listing of the resource. - * - */ - public function index() { - $bed_categories = InpatientBedCategory::orderBy('name', 'asc')->paginate(50); - $bed_data = []; - $bed_stays = WardBedStay::distinct('bed_category')->whereNotNull('bed_category')->get(['bed_category']); - foreach ($bed_stays as $value) $bed_data[] = $value->bed_category; - - return view('clinical_data::bed_categories.index',compact('bed_categories', 'bed_data')); - } - - /** - * Show the form for creating a new resource. - * - */ - public function create() { - $chart_of_accounts = ChartOfAccount::pluck('name', 'id')->prepend('-select-', '')->toArray(); - - $income_accounts = ChartOfAccount::where(['type' => 1]) - ->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $income_accounts = ['' => '- select -'] + $income_accounts; - - return view('clinical_data::bed_categories.create', compact('chart_of_accounts', 'income_accounts')); - } - - /** - * Store a newly created resource in storage. - * - */ - public function store(Request $request) { - request()->validate([ - 'name' => 'required' - ]); - - $bed_category = new InpatientBedCategory; - $bed_category->name = $request->name; - $bed_category->cost_type = $request->cost_type; - $bed_category->cost_per_night = $request->cost_per_night; - $bed_category->cost_first_night = $request->cost_first_night; - $bed_category->to_night = $request->to_night; - $bed_category->income_account = $request->income_account; - $bed_category->cost_range = $request->cost_range; - $bed_category->cost_after = $request->cost_after; - $bed_category->available = $request->available; - $bed_category->staff_in_charge = Auth::id(); - $bed_category->created_by = Auth::id(); - - try { - $bed_category->save(); - flash('successfully saved bed category')->success(); - return redirect('bed_categories'); - } catch (\Exception $e) { - flash('Error in saving bed category. Contact system admin')->error(); - return redirect()->back()->withInput(); - } - } - - /** - * Display the specified resource. - * - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - */ - public function edit($id) { - $inpatient_bed_category = InpatientBedCategory::where(['id' => $id])->first(); - $chart_of_accounts = ChartOfAccount::pluck('name', 'id')->prepend('-select-', '')->toArray(); - - if (!$inpatient_bed_category) { - flash()->error("There is no such bed category"); - return redirect('/bed_categories/'); - } else { - return view('clinical_data::bed_categories.edit', compact('inpatient_bed_category', 'chart_of_accounts')); - } - } - - /** - * Update the specified resource in storage. - * - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required' - ]); - - $bed_category = InpatientBedCategory::find($id); - $bed_category->name = $request->name; - $bed_category->cost_type = $request->cost_type; - $bed_category->cost_per_night = $request->cost_per_night; - $bed_category->cost_first_night = $request->cost_first_night; - $bed_category->to_night = $request->to_night; - $bed_category->cost_range = $request->cost_range; - $bed_category->income_account = $request->income_account; - $bed_category->cost_after = $request->cost_after; - $bed_category->available = $request->available; - $bed_category->updated_by = Auth::id(); - - try { - $bed_category->save(); - flash('successfully edited bed category')->success(); - return redirect('bed_categories'); - } catch (\Exception $e) { - flash('Error in editing bed category. Contact system admin')->error(); - return redirect()->back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - */ - public function destroy($id) { - $inpatient_bed_category = InpatientBedCategory::find($id); - - if ($inpatient_bed_category->delete()) { - flash($inpatient_bed_category->name. ' inpatient bed category has been successfully deleted')->success(); - return redirect('bed_categories'); - } - - flash('error occurred. Contact system admin')->error(); - return redirect()->back()->withInput(); - } - - /* - *Display inactive bed categories - */ - public function inactive() { - $bed_categories = InpatientBedCategory::onlyTrashed()->orderBy('name','asc')->paginate(50); - - if (empty($bed_categories)) { - flash()->error("There is no inactive occupation"); - return redirect('/bed_categories/'); - } else { - return view('clinical_data::bed_categories.inactive', compact('bed_categories')); - } - } - - /* - * Activate an inactive inpatient bed category - */ - public function activate($id) { - $bed_categories = InpatientBedCategory::withTrashed()->find($id); - - try { - $bed_categories->restore(); - flash("Bed Category has been activated.")->success(); - } catch (\Exception $e) { - flash("Bed Category activation failed.")->success(); - } - - return redirect('/inactive/bed_categories/'); - } -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/ChartOfAccountController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/ChartOfAccountController.php deleted file mode 100755 index 2a78028e..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/ChartOfAccountController.php +++ /dev/null @@ -1,298 +0,0 @@ -middleware('auth'); - $this->middleware('permission:chart-of-accounts-list', ['only' => ['index']]); - $this->middleware('permission:create-chart-of-accounts', ['only' => ['create','store','edit','update']]); - $this->middleware('permission:view-chart-of-account-details', ['only' => ['show']]); - $this->middleware('permission:activate-chart-of-accounts', ['only' => ['activate']]); - $this->middleware('permission:de-activate-chart-of-accounts', ['only' => ['inactive']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $chart_of_accounts = ChartOfAccount::orderBy('name', 'asc')->get(); - - $chart_of_accounts_list = ChartOfAccount::orderBy('name', 'asc') - ->pluck('name', 'id'); - - $account_types = DB::table('account_types') - ->orderBy('name', 'asc') - ->pluck('name', 'id'); - - return view('clinical_data::chart_of_accounts.index', compact('chart_of_accounts', 'chart_of_accounts_list', 'account_types')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - $chart_of_accounts_list = ChartOfAccount::orderBy('name', 'asc') - ->pluck('name', 'id') - ->toArray(); - $chart_of_accounts_list = ['' => '- select -'] + $chart_of_accounts_list; - - $account_types = AccountType::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - $coa_slugs = ChartOfAccountSlug::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $slugs = []; - $slugs = [" " => "- Select -"]; - foreach ($coa_slugs as $key => $value) { - $slug_item = str_replace("_", " ", $value); - $slugs[$value] = $slug_item; - } - - return view('clinical_data::chart_of_accounts.create', compact('chart_of_accounts_list', 'account_types', 'slugs')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) { - //validation failed - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - - //validation passed - $chart_of_account = new ChartOfAccount; - $logged_in_user_id = Auth::user()->id; - - $chart_of_account->name = $request->name; - $chart_of_account->type = $request->type; - $chart_of_account->description = $request->description; - $chart_of_account->sub_account_of = $request->sub_account_of; - $chart_of_account->balance = $request->balance ? $request->balance : 0; - $chart_of_account->slug = str_replace(" ", "_", strtolower($chart_of_account->name)); - $chart_of_account->core = $request->core; - $chart_of_account->created_by = $logged_in_user_id; - $chart_of_account->updated_by = $logged_in_user_id; - - try { - - $chart_of_account->save(); - - $trans_id = generateReceiptNumberFromDB('Initial Bank Deposit'); - - if($request->type == '4'){ - capture_bank_record('DEPOSIT', Carbon::parse($request->opening_balance_date)->toDateTimeString(), $chart_of_account->id, 'Initial Deposit', ($request->opening_balance ? $request->opening_balance : 0), - ($request->opening_balance ? $request->opening_balance : 0), 0, 'Initial Deposit', $trans_id); - /* capture_bank_record('DEPOSIT', Carbon::parse($current_balance_date=0)->toDateTimeString(), $chart_of_account->id, 'Current Balance', ($request->opening_balance ? $request->opening_balance : 0), - ($request->opening_balance ? $request->opening_balance : 0), 0, 'Current Balance', $trans_id_2); */ - } - - flash($request->name . " Chart of Account has been saved")->success(); - return redirect("/chart_of_accounts/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $chart_of_account = ChartOfAccount::where('id', $id)->first(); - - $chart_of_accounts_list = ChartOfAccount::orderBy('name', 'asc') - ->pluck('name', 'id') - ->toArray(); - $chart_of_accounts_list = ['' => '- select -'] + $chart_of_accounts_list; - - $account_types = AccountType::orderBy('name', 'asc') - ->pluck('name', 'id') - ->toArray(); - $account_types = ['' => '- select -'] + $account_types; - - $coa_slugs = ChartOfAccountSlug::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $slugs = [" " => "- Select -"]; - foreach ($coa_slugs as $key => $value) { - $slug_item = str_replace("_", " ", $value); - $slugs[$value] = $slug_item; - } - - if (!$chart_of_account) { - flash()->error("Chart of Account not found"); - return redirect('/chart_of_accounts/'); - } else { - return view('clinical_data::chart_of_accounts.edit', compact('chart_of_account', 'chart_of_accounts_list', 'account_types', 'slugs')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) { - //validation failed - - $string = ""; - - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - - return back()->withErrors($validator)->withInput(); - } else { - //validation passed - $chart_of_account = ChartOfAccount::find($id); - $logged_in_user_id = Auth::user()->id; - - $chart_of_account->name = $request->name; - $chart_of_account->type = $request->type ?? $chart_of_account->type; - $chart_of_account->description = $request->description; - $chart_of_account->sub_account_of = $request->sub_account_of ?? NULL; - $chart_of_account->balance = $request->balance; - $chart_of_account->core = $request->core ?? $chart_of_account->core; - $chart_of_account->updated_by = $logged_in_user_id; - if (!is_null($request->slug)) { - $chart_of_account->slug = $request->slug; - } - - try { - $initial_transaction = Banking::where(['bank' => $id, 'memo' => 'Initial Deposit']) - ->update([ - 'account_balance' => $request->balance - ]); - }catch (QueryException $_e){ - flash('Failed To Update Opening Bank Balance.')->error(); - } - - try { - $chart_of_account->save(); - flash($request->name . " Chart of Account has been updated")->success(); - return redirect("/chart_of_accounts/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $undeletable_core_chart_of_accounts = []; - //check if the account is a core before allowing deletion - $undeletable_core_chart_of_accounts = ChartOfAccount::where('core',1)->orderBy('id', 'asc')->pluck('id')->toArray(); - if (in_array($id, $undeletable_core_chart_of_accounts)) { - flash('You can not delete this chart of accounts. It is a core chart of account used by the system')->error(); - return redirect()->back(); - } - - //check if the account has any attached transaction without and not delete it - //Table to check 1. banking, 2. Quotations, 3.payments, 4.patient_category_invoices - //maybe checking many tables isn't the best idea. - - $chart_of_account = ChartOfAccount::find($id); - - if ($chart_of_account->delete()): - flash("Chart of Account has been deleted.")->success(); - return redirect('/chart_of_accounts/'); - endif; - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $chart_of_accounts = ChartOfAccount::onlyTrashed() - ->orderBy('name', 'asc') - ->get(); - - $chart_of_accounts_list = ChartOfAccount::onlyTrashed() - ->orderBy('name', 'asc') - ->pluck('name', 'id'); - - $account_types = AccountType::orderBy('name', 'asc') - ->pluck('name', 'id'); - - if (count($chart_of_accounts) < 1) { - flash()->error("There is no inactive chart_of_account"); - return redirect('/chart_of_accounts/'); - } else { -// Log::info($chart_of_accounts); - return view('clinical_data::chart_of_accounts.inactive', compact('chart_of_accounts', 'chart_of_accounts_list', 'account_types')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $chart_of_account = ChartOfAccount::withTrashed()->find($id); - - if ($chart_of_account->restore()): - flash("Chart of Account has been activated.")->success(); - return redirect('/chart_of_accounts/inactive'); - endif; - } - -} \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/ClinicController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/ClinicController.php deleted file mode 100755 index ca79a7b5..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/ClinicController.php +++ /dev/null @@ -1,214 +0,0 @@ -middleware('auth'); - $this->middleware('permission:clinic-list', ['only' => ['index']]); - $this->middleware('permission:clinic-create', ['only' => ['create', 'store']]); - $this->middleware('permission:clinic-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:clinic-delete', ['only' => ['destroy', 'inactive', 'activate']]); - - $this->clinicService = $clinicService; - $this->setupService = $setupService; - } - - /** - * Display a listing of the resource. - * - * @return View - */ - public function index(): View - { - $clinics = Clinic::orderBy('name', 'asc') - ->paginate(50); - $clinic_types = $this->clinicService->getClinicTypes(); - - $clinic_ids = PatientEpisode::distinct('clinic_id')->whereNotNull('clinic_id')->pluck('clinic_id', 'clinic_id')->toArray(); - $triage_clinics = Triage::distinct('clinic_allocation')->whereNotNull('clinic_allocation')->pluck('clinic_allocation', 'clinic_allocation')->toArray(); - foreach ($triage_clinics as $value) if(!empty($value) && !in_array($value,$clinic_ids)) $clinic_ids[$value] = $value; - - return view('clinical_data::clinics.index', compact('clinics', 'clinic_types', 'clinic_ids')); - } - - /** - * Show the form for creating a new resource. - * - * @return View - */ - public function create(): View - { - $clinics = $this->clinicService->getClinicsSeeder(); - $clinic_types = $this->clinicService->getClinicTypes(); - - return view('clinical_data::clinics.create',compact('clinics', 'clinic_types')); - } - - /** - * Store a newly created resource in storage. - * - * @param Request $request - * @return RedirectResponse - */ - public function store(Request $request): RedirectResponse - { - //validation passed - - if (isset($request->skip)&& session()->has('streamline_setup')) { - //update the streamline setup table with the new finished step - $this->setupService->saveStep("clinics registration", 1); - - return redirect("wards/create"); - } else { - $createdClinic = $this->clinicService->createClinic($request->name, $request->clinic_type, $request->available); - - if ($createdClinic) { - flash($request->name . " Clinic has been saved")->success(); - } else { - flash("An error occurred will saving the clinic")->error(); - } - - //in case more clinics have been added during the initial setup - if (session()->has('streamline_setup')) { - if (isset($request->other_clinics)) { - $other_clinics_array = $request->other_clinics; - for ($i=0; $i < count($other_clinics_array) ; $i++) { - $createdClinic = $this->clinicService->createClinic($other_clinics_array[$i]); - } - } - - if (isset($request->selected_clinics)) { - $selected_clinics_array = $request->selected_clinics; - $seeder_clinics = $this->clinicService->getClinicsSeeder(); - - for ($i=0; $i < count($selected_clinics_array) ; $i++) { - $clinic_name = $seeder_clinics[$selected_clinics_array[$i]]["name"]; - $clinic_slug = $seeder_clinics[$selected_clinics_array[$i]]["slug"]; - $createdClinic = $this->clinicService->createClinic($clinic_name, $clinic_slug); - } - } - - // update the streamline setup table with the new finished step - $this->setupService->saveStep("clinics registration", 1); - - flash("Clinics have been added")->success(); - - return redirect("wards/create"); - } - - return redirect("/clinics/"); - } - } - - /** - * Show the form for editing the specified resource. - * - */ - public function edit($id): View | RedirectResponse - { - $clinic = $this->clinicService->getClinicById($id); - $clinic_types = $this->clinicService->getClinicTypes(); - - if (!$clinic) { - flash()->error("Clinic not found"); - return redirect('/clinics/'); - } else { - return view('clinical_data::clinics.edit', compact('clinic', 'clinic_types')); - } - } - - /** - * Update the specified resource in storage. - * - * @param Request $request - * @param int $id - * @return RedirectResponse - */ - public function update(Request $request, int $id): RedirectResponse - { - request()->validate([ - 'name' => 'required' - ]); - - //validation passed - $updated_clinic = $this->clinicService->editClinic($id, $request->name, $request->available, $request->clinic_type); - - if ($updated_clinic) { - flash($request->name . " clinic has been updated")->success(); - return redirect("/clinics/"); - } else { - flash("An error occurred! Please try again later")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return RedirectResponse - */ - public function destroy(int $id): RedirectResponse { - $isClinicDeleted = $this->clinicService->deactivateClinic($id); - - if ($isClinicDeleted) { - flash("Clinic has been deleted.")->success(); - return redirect('/clinics/'); - } else { - flash("An error occurred")->error(); - return redirect('/clinics/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return RedirectResponse|View - */ - public function inactive(): RedirectResponse|View { - $clinics = Clinic::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (empty($clinics)) { - flash()->error("There is no inactive clinic"); - return redirect('/clinics/'); - } else { - return view('clinical_data::clinics.inactive', compact('clinics')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return RedirectResponse - */ - public function activate(int $id): RedirectResponse - { - $isClinicActive = $this->clinicService->activateClinic($id); - - if($isClinicActive[0]){ - flash($isClinicActive[1])->success(); - } else { - flash($isClinicActive[1])->error(); - } - - return redirect('/clinics/inactive'); - } - -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/ClinicalDataController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/ClinicalDataController.php deleted file mode 100755 index 68f4bad6..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/ClinicalDataController.php +++ /dev/null @@ -1,83 +0,0 @@ -paginate(50); - return view('clinical_data::companies.index', compact('companies')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View - */ - public function create() { - return view('clinical_data::companies.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\RedirectResponse - */ - public function store(Request $request) { - $validator = Validator::make($request->all(), [ - 'name' => 'required', - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth::user()->id; - $company = new Company; - - $company->name = $request->name; - $company->contact = $request->contact; - $company->slug = $request->identifier; - $company->created_by = $logged_in_user_id; - $company->updated_by = $logged_in_user_id; - - try { - $company->save(); - flash($request->name . " Company has been saved")->success(); - return redirect("/companies/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - public function quick_store(Request $request) { - - $company = new Company; - $logged_in_user_id = Auth::user()->id; - $company->name = $request->name; - $company->contact = $request->contact; - $company->slug = $request->slug; - $company->created_by = $logged_in_user_id; - $company->updated_by = $logged_in_user_id; - - if($company->save()){ - return 'success'; - }else{ - return 'fail'; - } - - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - public function edit($id) { - $company = Company::where(['id' => $id])->first(); - - if (!$company) { - flash()->error("There is no such Company"); - return redirect('/companies/'); - } else { - return view('clinical_data::companies.edit', compact('company')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\RedirectResponse - */ - public function update(Request $request, $id) { - $validator = Validator::make($request->all(), [ - 'name' => 'required', - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth::user()->id; - - $company = Company::find($id); - $company->name = $request->name; - $company->contact = $request->contact; - $company->slug = $request->slug; - $company->created_by = $logged_in_user_id; - $company->updated_by = $logged_in_user_id; - - try { - $company->save(); - flash($request->name . " Company has been updated")->success(); - return redirect("/companies/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector - */ - public function destroy($id) { - $company = Company::find($id); - - if ($company->delete()): - flash("Company has been deleted.")->success(); - return redirect('/companies/'); - endif; - } - - - public function inactive() { - - $companies = Company::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($companies) < 1) { - flash()->error("There is no inactive Company"); - return redirect('/companies/'); - } else { - return view('clinical_data::companies.inactive', compact('companies')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector - */ - public function activate($id) { - $company = Company::withTrashed()->find($id); - - if ($company->restore()): - flash("Company has been activated.")->success(); - return redirect('/companies/inactive'); - endif; - } -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/Controller.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/Controller.php deleted file mode 100755 index 026c6dd8..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/Controller.php +++ /dev/null @@ -1,13 +0,0 @@ -middleware('auth'); - $this->middleware('permission:countries-list', ['only' => ['index']]); - $this->middleware('permission:countries-detail', ['only' => ['show']]); - $this->middleware('permission:countries-create', ['only' => ['create', 'store']]); - $this->middleware('permission:countries-edit', ['only' => ['edit', 'edit_all', 'update', 'update_all', 'updatePatientEpisode']]); - $this->middleware('permission:countries-delete', ['only' => ['destroy']]); - $this->middleware('permission:countries-status', ['only' => ['activate, inactive']]); - } - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() - { - $countries = Country::orderBy('name', 'asc')->paginate(50); - - return view('clinical_data::countries.index', compact('countries')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - return view('clinical_data::countries.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) - { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } - - else { - $country = new Country; - - $country->name = $request->name; - $country->created_by = Auth::user()->id; - $country->updated_by = Auth::user()->id; - - try { - $country->save(); - flash($request->name . " Country has been saved")->success(); - return redirect("/countries/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Display the specified resource. - * - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - */ - public function edit($id) - { - $country = Country::where(['id' => $id])->first(); - - if (!$country) { - flash()->error("There is no such country"); - return redirect('/countries/'); - } else { - return view('clinical_data::countries.edit', compact('country')); - } - } - - /** - * Update the specified resource in storage. - * - */ - public function update(Request $request, Country $countries) - { - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - //flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth::user()->id; - - $country = Country::find($id); - $country->name = $request->name; - $country->updated_by = $logged_in_user_id; - - try { - $country->save(); - flash($request->name . " Country has been updated")->success(); - return redirect("/countries/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - } - - /** - * Remove the specified resource from storage. - * - */ - public function destroy($id) - { - $country = Country::find($id); - - if ($country->delete()): - flash("Country has been deleted.")->success(); - return redirect('/countries/'); - endif; - - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() - { - $countries = Country::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($countries) < 1) { - flash()->error("There is no inactive country"); - return redirect('/countries/'); - } else { - return view('clinical_data::countries.inactive', compact('countries')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) - { - $country = Country::withTrashed()->find($id); - - if ($country->restore()): - flash("Country has been activated.")->success(); - return redirect('/countries/inactive'); - endif; - } - -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/CountyController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/CountyController.php deleted file mode 100755 index 63e8e7f4..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/CountyController.php +++ /dev/null @@ -1,200 +0,0 @@ -middleware('auth'); - $this->middleware('permission:county-list', ['only' => ['index']]); - $this->middleware('permission:county-create', ['only' => ['create', 'store']]); - $this->middleware('permission:county-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:county-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $counties = County::orderBy('name', 'asc')->get(); - - $districts = District::pluck('name', 'id'); - - return view('clinical_data::counties.index', compact('counties', 'districts')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - $districts = District::pluck('name', 'id')->toArray(); - - $districts = ['' => '- select -'] + $districts; - - return view('clinical_data::counties.create', compact('districts')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - - $validator = Validator::make($request->all(), [ - 'name' => 'required', - 'district_id' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - - }else{ - - $user_id = Auth::user()->id; - $county = new County; - - $county->name = $request->name; - $county->district_id = $request->district_id; - $county->created_by = $user_id; - $county->updated_by = $user_id; - - try { - $county->save(); - flash($request->name . " County has been saved")->success(); - return redirect("/counties/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $county = County::where(['id' => $id])->first(); - - $districts = District::pluck('name', 'id')->toArray(); - - $districts = ['' => '- select -'] + $districts; - - if (!$county) { - flash()->error("That county is not registered"); - return redirect('/counties/'); - } else { - return view('clinical_data::counties.edit', compact('county', 'districts')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required', - 'district_id' => 'required' - ]); - - $county = County::find($id); - - $county->name = $request->name; - $county->district_id = $request->district_id; - $county->updated_by = Auth::user()->id; - - try { - $county->save(); - flash($request->name . " County has been updated")->success(); - return redirect("/counties/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $county = County::find($id); - - if ($county->delete()) { - flash("County has been deleted.")->success(); - return redirect('/counties/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $counties = County::onlyTrashed() - ->orderBy('name', 'asc') - ->get(); - - $districts = District::pluck('name', 'id'); - - if (count($counties) < 1) { - flash()->error("There is no inactive counties"); - return redirect('/counties/'); - } else { - return view('clinical_data::counties.inactive', compact('counties', 'districts')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $county = County::withTrashed()->find($id); - - if($county->restore()){ - flash("County has been activated.")->success(); - return redirect('/counties/inactive'); - } - } - -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/DepartmentController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/DepartmentController.php deleted file mode 100755 index 632bb1b9..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/DepartmentController.php +++ /dev/null @@ -1,263 +0,0 @@ -middleware('auth'); - $this->middleware('permission:departments-list', ['only' => ['index']]); - $this->middleware('permission:departments-detail', ['only' => ['show']]); - $this->middleware('permission:departments-create', ['only' => ['create', 'store']]); - $this->middleware('permission:departments-edit', ['only' => ['edit', 'edit_all', 'update', 'update_all', 'updatePatientEpisode']]); - $this->middleware('permission:departments-delete', ['only' => ['destroy']]); - $this->middleware('permission:departments-status', ['only' => ['activate, inactive']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() - { - $departments = Department::orderBy('name', 'asc')->paginate(50); - - return view('clinical_data::departments.index', compact('departments')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - return view('clinical_data::departments.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth::user()->id; - $department = new Department; - - $department->name = $request->name; - $department->created_by = $logged_in_user_id; - $department->updated_by = $logged_in_user_id; - - try { - $department->save(); - flash($request->name . " Department has been saved")->success(); - return redirect("/departments/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) - { - $department = Department::where(['id' => $id])->first(); - - if (!$department) { - flash()->error("There is no such department"); - return redirect('/departments/'); - } else { - return view('clinical_data::departments.edit', compact('department')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } -// flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth::user()->id; - - $department = Department::find($id); - $department->name = $request->name; - $department->updated_by = $logged_in_user_id; - - try { - $department->save(); - flash($request->name . " Department has been updated")->success(); - return redirect("/departments/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - $department = Department::find($id); - - if ($department->delete()): - flash("Department has been deleted.")->success(); - return redirect('/departments/'); - endif; - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() - { - $departments = Department::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($departments) < 1) { - flash()->error("There is no inactive department"); - return redirect('/departments/'); - } else { - return view('clinical_data::departments.inactive', compact('departments')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) - { - $department = Department::withTrashed()->find($id); - - if ($department->restore()): - flash("Department has been activated.")->success(); - return redirect('/departments/inactive'); - endif; - } - - /** - * Display a listing of the active resources for bulk editing. - * - * @return \Illuminate\Http\Response - */ - public function edit_all() - { - $departments = Department::orderBy('name', 'asc')->paginate(25); - - if (count($departments) < 1) { - flash()->error("There is no active department"); - return redirect('/departments/'); - } else { - return view('clinical_data::departments.edit.all', compact('departments')); - } - } - - /** - * Update all the resources in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function update_all(Request $request) - { - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } -// flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth::user()->id; - - $id_array = $request->id; - $name_array = $request->name; - - for ($x = 0; $x < count($id_array); $x++): - $department = Department::find($id_array[$x]); - - $department->name = $name_array[$x]; - $department->updated_by = $logged_in_user_id; - - try { - $department->save(); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - endfor; - - flash("Departments have been updated")->success(); - return redirect("/departments/"); - } - } -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/DiagnosisController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/DiagnosisController.php deleted file mode 100755 index 8e6399d6..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/DiagnosisController.php +++ /dev/null @@ -1,495 +0,0 @@ -middleware('auth'); - $this->middleware('permission:diagnosis-list', ['only' => ['index']]); - $this->middleware('permission:diagnosis-create', ['only' => ['create', 'store']]); - $this->middleware('permission:diagnosis-edit', ['only' => ['edit', 'update', 'edit_all', 'update_all']]); - $this->middleware('permission:diagnosis-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - * - */ - public function index() { - $diagnoses = Diagnosis::orderBy('name', 'asc')->leftJoin('hmis_category_options as h', 'h.id', 'diagnoses.hmis_no_inpatient') - ->select('diagnoses.*', 'h.number as inpatient_number') - ->paginate(10000); - - $hmis_categories = DB::table('hmis_categories') - ->orderBy('title', 'asc') - ->pluck('title', 'id'); - - $issued_diagnoses = []; - $hmis_category_options = HmisCategoryOptions::orderBy('name', 'asc')->pluck('name', 'id'); - $consultations_primary = Consultation::distinct('primary_diagnosis')->select('primary_diagnosis'); - $inpatient_primary = InpatientInfo::distinct('primary_diagnosis')->select('primary_diagnosis')->union($consultations_primary)->get()->toArray(); - foreach($inpatient_primary as $diagnosis) if(!in_array($diagnosis['primary_diagnosis'], $issued_diagnoses) && !empty($diagnosis['primary_diagnosis'])) $issued_diagnoses[]=$diagnosis['primary_diagnosis']; - $consultations_other = Consultation::distinct('other_diagnoses')->select('other_diagnoses'); - $inpatient_other = InpatientInfo::distinct('other_diagnoses')->select('other_diagnoses')->union($consultations_other)->get(); - foreach($inpatient_other as $diagnosis_other) { - $other_diagnoses = unserialize($diagnosis_other->other_diagnoses); - if(!empty($other_diagnoses)) foreach($other_diagnoses as $other_diagnosis) if(!in_array(intval($other_diagnosis), $issued_diagnoses)) $issued_diagnoses[]= intval($other_diagnosis); - } - - return view('clinical_data::diagnoses.index', compact('diagnoses', 'hmis_categories','issued_diagnoses', 'hmis_category_options')); - } - - /** - * Show the form for creating a new resource. - * - */ - public function create() { - $hmis_categories = DB::table('hmis_categories')->whereIn('section_number',[6,7,1])->orderBy('title', 'asc')->get(); - $inpatient_hmis_categories = $hmis_categories->filter(function($hmis_category){ - return $hmis_category->type == 1; - })->pluck('title', 'id')->prepend('- Select HMIS Inpatient Category -', ''); - $outpatient_hmis_categories = $hmis_categories->filter(function($hmis_category){ - return $hmis_category->type == 0; - })->pluck('title', 'id')->prepend('- Select HMIS Outpatient Category -', ''); - - $parent_categories = array_unique(HmisCategoryOptions::where('parent_option', '<>','')->pluck('parent_option')->toArray()); - $diagnosis_categories = DiagnosisCategory::orderBy('name', 'asc')->pluck('name', 'id')->prepend('None', 0); - - $insurance_tariffs = DB::table('insurance_tariffs')->whereNull('deleted_at')->pluck('name', 'id')->toArray(); - - return view('clinical_data::diagnoses.create', compact('hmis_categories', 'insurance_tariffs','parent_categories', 'inpatient_hmis_categories', 'outpatient_hmis_categories', 'diagnosis_categories')); - } - - /** - * Store a newly created resource in storage. - * - */ - public function store(Request $request) { - request()->validate([ - 'name' => 'required|unique:diagnoses' - ]); - - $logged_in_user_id = Auth()->user()->id; - $diagnosis = new Diagnosis; - - //Reference Names - $reference_names_array = $request->reference_names; - $reference_names = ""; - - //Processing reference areas - $reference_areas_array = $request->reference_areas; - $reference_areas = ""; - - if ($request->insurance_tariffs) { - $diagnosis->insurance_tariffs = implode(",", $request->insurance_tariffs); - } - - for ($x = 0; $x < count($reference_areas_array); $x++): - $reference_area = $reference_areas_array[$x]; - $reference_area_data = parse_url($reference_area); - if (empty($reference_area_data['scheme'])): - $reference_area = 'http://' . ltrim($reference_area, '/'); - endif; - - $reference_areas .= $reference_area . ","; - $reference_names .= rtrim($reference_names_array[$x], ", ") . ","; - endfor; - if (!empty($request->district_code) && $request->outpatient_hmis_category_option == '655') { - $district_code = HmisCategoryOptions::updateOrCreate(['name' => $request->district_code,'number' => 'Code', 'hmis_category_id' => 0],[ - 'name' => $request->district_code, - 'number' => 'Code', - 'hmis_category_id' => 0, - 'parent_option' => $request->outpatient_hmis_category_option, - 'created_by' => Auth()->user()->id - ]); - } - - $diagnosis->name = $request->name; - $diagnosis->icd10_code = $request->icd10_code; - $diagnosis->available = $request->available; - // $diagnosis->hmis_no_outpatient = $request->hmis_no_outpatient; - $diagnosis->hmis_no_inpatient = $request->hmis_no_inpatient; - $diagnosis->prompts = $request->prompts; - $diagnosis->diagnosis_category = $request->diagnosis_category?? null; - $diagnosis->chronic_status = $request->chronic_status; - $diagnosis->reference_areas = rtrim($reference_areas, ", "); - $diagnosis->reference_names = rtrim($reference_names, ", "); - $diagnosis->hmis_category = $request->hmis_category; - $diagnosis->dependent_option = $request->parent_dependent_option ?? null; - $diagnosis->outpatient_hmis_category = $request->outpatient_hmis_category ?? null; - $diagnosis->outpatient_hmis_category_option = $request->outpatient_hmis_category_option ?? null; - if(!empty($district_code->id)) $diagnosis->outpatient_dependent_option = $district_code->id; - else $diagnosis->outpatient_dependent_option = $request->outpatient_dependent_option ?? null; - $diagnosis->created_by = $logged_in_user_id; - - try { - $diagnosis->save(); - - if ($request->insurance_tariffs) { - // add diagnoses to the tariffs - foreach ($request->insurance_tariffs as $tariff_id) { - try { - $tariff = InsuranceTariff::find($tariff_id); - - if ($tariff->linked_diagnoses) { - $current_diagnoses = explode(",", $tariff->linked_diagnoses); - $current_diagnoses = array_merge($current_diagnoses, $diagnosis->id); - } else { - $current_diagnoses = [$diagnosis->id]; - } - - $tariff->linked_diagnoses = implode(",", $current_diagnoses); - $tariff->save(); - - } catch (\Exception $exception) {} - } - } - - flash($request->name . " Diagnosis has been saved")->success(); - return redirect("/diagnoses/"); - } catch (QueryException $e) { - flash("An error occurred!")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - */ - public function edit($id) { - $diagnosis = Diagnosis::findOrFail($id); - $hmis_categories = HmisCategory::whereIn('section_number',[6,7,1])->orderBy('title', 'asc')->get(); - $diagnosis_categories = DiagnosisCategory::orderBy('name', 'asc')->pluck('name', 'id')->prepend('None', 0); - $parent_categories = array_unique(HmisCategoryOptions::where('parent_option', '<>','')->pluck('parent_option')->toArray()); - $insurance_tariffs = DB::table('insurance_tariffs')->whereNull('deleted_at')->pluck('name', 'id')->toArray(); - - $inpatient_category_options_header = (!empty($diagnosis->hmis_no_inpatient) || $diagnosis->hmis_no_inpatient == '-')? '- Select HMIS Inpatient Category Option -': '- Firstly, Select HMIS Inpatient Category -'; - $outpatient_category_options_header = !empty($diagnosis->outpatient_hmis_category)? '- Select HMIS Outpatient Category Option -': '- Firstly, Select HMIS Outpatient Category -'; - $dependent_options_header = '- Select Dependent Option -';$inpatient_category_options = $outpatient_dependent_options = $dependent_options = $outpatient_category_options =[]; - if(!empty($diagnosis->hmis_no_inpatient) || $diagnosis->hmis_no_inpatient == '-') $inpatient_category_options = HmisCategoryOptions::where('hmis_category_id', $diagnosis->hmis_category)->pluck('name','id')->prepend($inpatient_category_options_header, ''); - if(!empty($diagnosis->outpatient_hmis_category)) $outpatient_category_options = HmisCategoryOptions::where('hmis_category_id', $diagnosis->outpatient_hmis_category)->pluck('name','id')->prepend($outpatient_category_options_header, ''); - if(!empty($diagnosis->hmis_no_inpatient) || $diagnosis->hmis_no_inpatient == '-' || in_array($diagnosis->hmis_no_inpatient, $parent_categories)) $dependent_options = HmisCategoryOptions::where('parent_option', $diagnosis->hmis_no_inpatient)->pluck('name','id')->prepend($dependent_options_header, ''); - if(!empty($diagnosis->outpatient_hmis_category_option) || in_array($diagnosis->outpatient_hmis_category_option, $parent_categories)) $outpatient_dependent_options = HmisCategoryOptions::where('parent_option', $diagnosis->outpatient_hmis_category_option)->pluck('name','id')->prepend($dependent_options_header, ''); - $inpatient_hmis_categories = $hmis_categories->filter(function($hmis_category){ - return $hmis_category->type == 1; - })->pluck('title', 'id')->prepend('- Select HMIS Inpatient Category -', ''); - $outpatient_hmis_categories = $hmis_categories->filter(function($hmis_category){ - return $hmis_category->type == 0; - })->pluck('title', 'id')->prepend('- Select HMIS Outpatient Category -', ''); - - return view('clinical_data::diagnoses.edit', compact('diagnosis', 'inpatient_hmis_categories', 'insurance_tariffs', 'outpatient_hmis_categories', 'outpatient_category_options', 'diagnosis_categories', 'inpatient_category_options', 'dependent_options', 'parent_categories', 'outpatient_dependent_options')); - } - - /** - * Update the specified resource in storage. - * - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required|unique:diagnoses,name,'.$id - ]); - - $logged_in_user_id = Auth()->user()->id; - - //Reference Names - $reference_names_array = $request->reference_names; - $reference_names = ""; - - //Processing reference areas - $reference_areas_array = $request->reference_areas; - $reference_areas = ""; - - if (!empty($reference_areas_array)) { - for ($x = 0; $x < count($reference_areas_array); $x++): - $reference_area = $reference_areas_array[$x]; - $reference_area_data = parse_url($reference_area); - if (empty($reference_area_data['scheme'])): - $reference_area = 'http://' . ltrim($reference_area, '/'); - endif; - - $reference_areas .= $reference_area . ","; - $reference_names .= rtrim($reference_names_array[$x], ", ") . ","; - endfor; - } - - if (!empty($request->district_code) && $request->outpatient_hmis_category_option == '655') { - $district_code = HmisCategoryOptions::updateOrCreate(['id' => $request->district_code_id,'number' => 'Code', 'hmis_category_id' => 0],[ - // 'id'=>$hmis_category_option['id'], - 'name' => $request->district_code, - 'number' => 'Code', - 'hmis_category_id' => 0, - 'parent_option' => $request->outpatient_hmis_category_option, - 'created_by' => Auth()->user()->id - ]); - } - - $diagnosis = Diagnosis::find($id); - $diagnosis->name = $request->name; - $diagnosis->icd10_code = $request->icd10_code; - $diagnosis->available = $request->available; - // $diagnosis->hmis_no_outpatient = $request->hmis_no_outpatient; - $diagnosis->hmis_no_inpatient = $request->hmis_no_inpatient; - $diagnosis->prompts = $request->prompts; - $diagnosis->chronic_status = $request->chronic_status; - $diagnosis->reference_areas = rtrim($reference_areas, ", "); - $diagnosis->reference_names = rtrim($reference_names, ", "); - $diagnosis->hmis_category = $request->hmis_category; - $diagnosis->diagnosis_category = $request->diagnosis_category?? null; - $diagnosis->dependent_option = $request->parent_dependent_option ?? null; - $diagnosis->outpatient_hmis_category = $request->outpatient_hmis_category ?? null; - $diagnosis->outpatient_hmis_category_option = $request->outpatient_hmis_category_option ?? null; - if(!empty($district_code->id) && $request->outpatient_hmis_category_option == '655') $diagnosis->outpatient_dependent_option = $district_code->id; - else $diagnosis->outpatient_dependent_option = $request->outpatient_dependent_option ?? null; - $diagnosis->updated_by = $logged_in_user_id; - - if ($request->insurance_tariffs) { - $original_tariffs = explode(",", $diagnosis->insurance_tariffs); - $diagnosis->insurance_tariffs = implode(",", $request->insurance_tariffs); - - $removed_tariffs = array_diff($original_tariffs, $request->insurance_tariffs); - $added_tariffs = array_diff($request->insurance_tariffs, $original_tariffs); - - // add diagnoses to the tariffs - foreach ($added_tariffs as $tariff_id) { - try { - $tariff = InsuranceTariff::find($tariff_id); - - if ($tariff->linked_diagnoses) { - $current_diagnoses = explode(",", $tariff->linked_diagnoses); - $current_diagnoses = array_merge($current_diagnoses, $diagnosis->id); - } else { - $current_diagnoses = [$diagnosis->id]; - } - - $tariff->linked_diagnoses = implode(",", $current_diagnoses); - $tariff->save(); - - } catch (\Exception $exception) {} - } - - // remove diagnosis from tariffs - foreach ($removed_tariffs as $tariff_id) { - try { - $tariff = InsuranceTariff::find($tariff_id); - $current_diagnoses = explode(",", $tariff->linked_diagnoses); - - if (in_array($diagnosis->id, $current_diagnoses)) { - unset($current_diagnoses[array_search($diagnosis->id, $current_diagnoses)]); - - $tariff->linked_diagnoses = implode(",", $current_diagnoses); - $tariff->save(); - } - } catch (\Exception $exception) {} - } - } - - try { - $diagnosis->save(); - flash($request->name . " Diagnosis has been updated")->success(); - return redirect("/diagnoses/"); - } catch (QueryException $e) { - flash("An error occurred!")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $diagnosis = Diagnosis::find($id); - - if ($diagnosis->delete()){ - flash("Diagnosis has been deleted.")->success(); - return redirect('/diagnoses/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $diagnoses = Diagnosis::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - $hmis_categories = DB::table('hmis_categories') - ->orderBy('title', 'asc') - ->pluck('title', 'id'); - - if (empty($diagnoses)) { - flash()->error("There is no inactive diagnosis"); - return redirect('/diagnoses/'); - } else { - return view('clinical_data::diagnoses.inactive', compact('diagnoses', 'hmis_categories')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $diagnosis = Diagnosis::withTrashed()->find($id); - - if ($diagnosis->restore()){ - flash("Diagnosis has been activated.")->success(); - return redirect('/diagnoses/inactive'); - } - } - - /** - * Display a listing of the active resources for bulk editing. - * - * @return \Illuminate\Http\Response - */ - public function edit_all() { - $diagnoses = Diagnosis::orderBy('name', 'asc') - ->get(); - - $hmis_categories = DB::table('hmis_categories') - ->pluck('title', 'id') - ->toArray(); - - $hmis_categories = ['' => '- select -'] + $hmis_categories; - - if (count($diagnoses) < 1) { - flash()->error("There is no active diagnosis"); - return redirect('/diagnoses/'); - } else { - return view('clinical_data::diagnoses.edit.all', compact('diagnoses', 'hmis_categories')); - } - } - - /** - * Update all the resources in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function update_all(Request $request) { - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } -// flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth()->user()->id; - - $id_array = $request->id; - $name_array = $request->name; - $icd10_code_array = $request->icd10_code; - $hmis_no_outpatient_array = $request->hmis_no_outpatient; - $hmis_no_inpatient_array = $request->hmis_no_inpatient; - $prompts_array = $request->prompts; - $chronic_status_array = $request->chronic_status; - $reference_areas_array = $request->reference_areas; - $reference_names_array = $request->reference_names; - $hmis_category_array = $request->hmis_category; - - for ($x = 0; $x < count($id_array); $x++): - $diagnosis = Diagnosis::find($id_array[$x]); - - $diagnosis->name = $name_array[$x]; - $diagnosis->icd10_code = $icd10_code_array[$x]; - $diagnosis->hmis_no_outpatient = $hmis_no_outpatient_array[$x]; - $diagnosis->hmis_no_inpatient = $hmis_no_inpatient_array[$x]; - $diagnosis->prompts = $prompts_array[$x]; - $diagnosis->chronic_status = $chronic_status_array[$x]; - $diagnosis->reference_areas = rtrim($reference_areas_array[$x], ", "); - $diagnosis->reference_names = rtrim($reference_names_array[$x], ", "); - $diagnosis->hmis_category = $hmis_category_array[$x]; - $diagnosis->updated_by = $logged_in_user_id; - - try { - $diagnosis->save(); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - endfor; - - flash("Diagnoses have been updated")->success(); - return redirect("/diagnoses/"); - } - } - - public function get_diagnosis(Request $request) { - $diagnosis_id = $request->diagnosis_id; - $diagnosis = Diagnosis::where('id', $diagnosis_id)->first(); - - $reference_areas_array = explode(",", $diagnosis->reference_areas); - $reference_names_array = explode(",", $diagnosis->reference_names); - - $prompt = empty($diagnosis->prompts) ? " " : $diagnosis->prompts; - - $links = ""; - - for ($x = 0; $x < count($reference_areas_array); $x++) { - if (isset($reference_areas_array[$x]) && isset($reference_names_array[$x])){ - $links .= "" . $reference_names_array[$x] . " | "; - } - } - - return $prompt . "&&" . $links; - } - - public function get_diagnosis_by_category($category){ - $code = ""; - $diagnoses = Diagnosis::where('diagnosis_category', $category)->orderBy('name', 'asc')->get(); - foreach ($diagnoses as $diagnosis) { - $code .= ""; - } - $code .= ""; - return $code; - } - - public function get_diagnosis_categories(){ - $diagnoses = DiagnosisCategory::all(); - $code = ""; - foreach ($diagnoses as $diagnosis) { - $code .= ""; - } - $code .= ""; - return $code; - } - -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/DistrictController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/DistrictController.php deleted file mode 100755 index 3c7005af..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/DistrictController.php +++ /dev/null @@ -1,142 +0,0 @@ -middleware('auth'); - $this->middleware('permission:district-list', ['only' => ['index']]); - $this->middleware('permission:district-create', ['only' => ['create', 'store']]); - $this->middleware('permission:district-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:district-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - public function index() { - $districts = District::orderBy('name', 'asc')->get(); - - return view('clinical_data::districts.index', compact('districts')); - } - - public function create() { - return view('clinical_data::districts.create'); - } - - public function store(Request $request) { - - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - - } else{ - - $user_id = Auth::user()->id; - $district = new District; - - $district->name = $request->name; - $district->created_by = $user_id; - $district->updated_by = $user_id; - - try { - $district->save(); - flash($request->name . " District has been saved")->success(); - return redirect("/districts/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - public function show($id) { - // - } - - public function edit($id) { - $district = District::where(['id' => $id])->first(); - - if (!$district) { - flash()->error("That district is not registered"); - return redirect('/districts/'); - } else { - return view('clinical_data::districts.edit', compact('district')); - } - } - - public function update(Request $request, $id) { - - request()->validate([ - 'name' => 'required' - ]); - - $district = District::find($id); - - $district->name = $request->name; - $district->updated_by = Auth::user()->id; - - try { - $district->save(); - flash($request->name . " District has been updated")->success(); - return redirect("/districts/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - public function destroy($id) { - $district = District::find($id); - - if ($district->delete()) { - flash("District has been deleted.")->success(); - return redirect('/districts/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $districts = District::onlyTrashed() - ->orderBy('name', 'asc') - ->get(); - - if (count($districts) < 1) { - flash()->error("There is no inactive district"); - } - - return view('clinical_data::districts.inactive', compact('districts')); - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $district = District::withTrashed()->find($id); - - if($district->restore()){ - flash("District has been activated.")->success(); - return redirect('/districts/inactive'); - } - } - -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/DonorsController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/DonorsController.php deleted file mode 100755 index 7d1f4259..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/DonorsController.php +++ /dev/null @@ -1,171 +0,0 @@ -middleware('auth'); - $this->middleware('permission:donors-list', ['only' => ['index']]); - $this->middleware('permission:donors-detail', ['only' => ['show']]); - $this->middleware('permission:donors-create', ['only' => ['create', 'store']]); - $this->middleware('permission:donors-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:donors-delete', ['only' => ['destroy']]); - $this->middleware('permission:donors-status', ['only' => ['activate, inactive']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index(){ - $donors = Donors::orderBy('name', 'asc')->paginate(50); - - return view('clinical_data::donors.index', compact('donors')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create(){ - return view('clinical_data::donors.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request){ - request()->validate([ - 'name' => 'required' - ]); - - //validation passed - $donor = new Donors; - $logged_in_user_id = Auth::user()->id; - - $donor->name = $request->name; - $donor->created_by = $logged_in_user_id; - $donor->updated_by = $logged_in_user_id; - - try { - $donor->save(); - flash($request->name . " donor has been saved")->success(); - return redirect("/donors/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param $id - * @return \Illuminate\Http\Response - */ - public function show($id){ - // - } - - /** - * Show the form for editing the specified resource. - * - * @param $id - * @return \Illuminate\Http\Response - */ - public function edit($id){ - $donor = Donors::where(['id' => $id])->first(); - - if (!$donor) { - flash()->error("Donor not found"); - return redirect('/donors/'); - } else { - return view('clinical_data::donors.edit', compact('donor')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id){ - request()->validate([ - 'name' => 'required' - ]); - - //validation passed - $donor = Donors::find($id); - $donor->name = $request->name; - - try { - $donor->save(); - flash($request->name . " donor has been updated")->success(); - return redirect("/donors/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param $id - * @return \Illuminate\Http\Response - */ - public function destroy($id){ - $donor = Donors::find($id); - - if ($donor->delete()){ - flash("Donor has been deleted.")->success(); - return redirect('/donors/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $donors = Donors::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($donors) < 1) { - flash()->error("There is no inactive donor"); - return redirect('/donors/'); - } else { - return view('clinical_data::donors.inactive', compact('donors')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $donor = Donors::withTrashed()->find($id); - - if ($donor->restore()): - flash("Donor has been activated.")->success(); - return redirect('/donors/inactive'); - endif; - } -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/DosageFrequencyController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/DosageFrequencyController.php deleted file mode 100755 index 3063a020..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/DosageFrequencyController.php +++ /dev/null @@ -1,188 +0,0 @@ -middleware('auth'); - $this->middleware('permission:dosage-frequency-list', ['only' => ['index']]); - $this->middleware('permission:dosage-frequency-create', ['only' => ['create', 'store']]); - $this->middleware('permission:dosage-frequency-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:dosage-frequency-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $frequencies = DosageFrequency::orderBy('name', 'asc')->paginate(50); - - return view('clinical_data::dosage_frequencies.index', compact('frequencies')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - return view('clinical_data::dosage_frequencies.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - $validator = Validator::make($request->all(), [ - 'name' => 'required', - 'factor' => 'required' - ]); - - request()->validate([ - 'name' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth::user()->id; - $frequency = new DosageFrequency; - - $frequency->name = $request->name; - $frequency->factor = $request->factor; - $frequency->created_by = $logged_in_user_id; - $frequency->updated_by = $logged_in_user_id; - - try { - $frequency->save(); - flash($request->name . " Dosage Frequency has been saved")->success(); - return redirect("/dosage_frequencies/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $frequency = DosageFrequency::where(['id' => $id])->first(); - - if (!$frequency) { - flash()->error("There is no such dosage frequency"); - return redirect('/dosage_frequencies/'); - } else { - return view('clinical_data::dosage_frequencies.edit', compact('frequency')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required', - 'factor' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - - $frequency = DosageFrequency::find($id); - $frequency->name = $request->name; - $frequency->factor = $request->factor; - $frequency->updated_by = $logged_in_user_id; - - try { - $frequency->save(); - flash($request->name . " Dosage Frequency has been updated")->success(); - return redirect("/dosage_frequencies/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $frequency = DosageFrequency::find($id); - - if ($frequency->delete()): - flash("Frequency has been deleted.")->success(); - return redirect('/dosage_frequencies/'); - endif; - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $frequencies = DosageFrequency::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($frequencies) < 1) { - flash()->error("There is no inactive frequency"); - return redirect('/dosage_frequencies/'); - } else { - return view('clinical_data::dosage_frequencies.inactive', compact('frequencies')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $dosage_frequency = DosageFrequency::withTrashed()->find($id); - - if ($dosage_frequency->restore()){ - flash("Frequency has been activated.")->success(); - return redirect('/dosage_frequencies/inactive'); - } - } - -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/DrugCategoryController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/DrugCategoryController.php deleted file mode 100755 index 192385ac..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/DrugCategoryController.php +++ /dev/null @@ -1,173 +0,0 @@ -middleware('auth'); - $this->middleware('permission:drug-category-list', ['only' => ['index']]); - $this->middleware('permission:drug-category-create', ['only' => ['create', 'store']]); - $this->middleware('permission:drug-category-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:drug-category-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $drug_categories = DrugCategory::orderBy('name', 'asc') - ->paginate(50); - - return view('clinical_data::drug_categories.index', compact('drug_categories')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - return view('clinical_data::drug_categories.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - request()->validate([ - 'name' => 'required', - 'anti_malarial'=>'required|integer' - ]); - - $logged_in_user_id = auth()->user()->id; - $drug_category = new DrugCategory; - - $drug_category->name = $request->name; - $drug_category->created_by = $logged_in_user_id; - $drug_category->anti_malarial = $request->anti_malarial; - - try { - $drug_category->save(); - flash($request->name . " Drug Category has been saved")->success(); - return redirect("/drug_categories/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $drug_category = DrugCategory::where(['id' => $id])->first(); - - if (!$drug_category) { - flash()->error("There is no such Category"); - return redirect('/drug_categories/'); - } else { - return view('clinical_data::drug_categories.edit', compact('drug_category')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required', - 'anti_malarial' => 'required|integer' - ]); - - $logged_in_user_id = auth()->user()->id; - - $drug_category = DrugCategory::find($id); - $drug_category->name = $request->name; - $drug_category->anti_malarial = $request->anti_malarial; - $drug_category->updated_by = $logged_in_user_id; - - try { - $drug_category->save(); - flash($request->name . " Drug Category has been updated")->success(); - return redirect("/drug_categories/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $drug_category = DrugCategory::find($id); - - if ($drug_category->delete()){ - flash("Category has been deleted.")->success(); - return redirect('/drug_categories/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $drug_categories = DrugCategory::onlyTrashed()->orderBy('name', 'asc')->paginate(50); - - if (empty($drug_categories)) { - flash()->error("There is no inactive Category"); - return redirect('/drug_categories/'); - } else { - return view('clinical_data::drug_categories.inactive', compact('drug_categories')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $drug_category = DrugCategory::withTrashed()->find($id); - - if ($drug_category->restore()){ - flash("Category has been activated.")->success(); - return redirect('/drug_categories/'); - } - } - -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/DrugController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/DrugController.php deleted file mode 100755 index b24d1141..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/DrugController.php +++ /dev/null @@ -1,994 +0,0 @@ -middleware('auth'); - $this->middleware('permission:drug-list', ['only' => ['index']]); - $this->middleware('permission:drug-detail', ['only' => ['show']]); - $this->middleware('permission:drug-create', ['only' => ['create', 'store']]); - $this->middleware('permission:drug-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:drug-delete', ['only' => ['destroy']]);*/ - $this->setupService = $setupService; - $this->itemsStockService = $itemsStockService; - } - - /** - * Display a listing of the resource. - * - */ - public function index() { - $drugs = Drug::orderBy('name', 'asc')->paginate(1500); - $ordered_drugs = []; - $treatment_ids = Treatment::distinct('drugs')->select('drugs'); - $ward_treatment_ids = WardTreatment::distinct('drugs')->select('drugs')->union($treatment_ids)->get(); - foreach ($ward_treatment_ids as $ward_treatment_id) { - $drug_ids = explode(',', $ward_treatment_id->drugs); - foreach ($drug_ids as $drug_id) if(!empty($drug_id) && !in_array($drug_id, $ordered_drugs)) $ordered_drugs[$drug_id] = $drug_id; - } - - return view('clinical_data::drugs.index', compact('drugs', 'ordered_drugs')); - } - - /** - * Show the form for creating a new resource. - * - */ - public function create() { - $drug_categories = DrugCategory::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $drug_categories = ['' => '- select -'] + $drug_categories; - - $drug_units = DrugUnit::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $drug_units = ['' => '- select -'] + $drug_units; - - $drug_forms = DrugForm::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $drug_forms = ['' => '- select -'] + $drug_forms; - - $suppliers = Supplier::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $suppliers = ['' => '- select -'] + $suppliers; - - $cost_of_goods_accounts = ChartOfAccount::where(['type' => 7])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $inventory_asset_accounts = ChartOfAccount::where(['type' => 10])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $income_accounts = ChartOfAccount::where(['type' => 1])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - $cost_of_goods_accounts = ['' => '- select -'] + $cost_of_goods_accounts; - $inventory_asset_accounts = ['' => '- select -'] + $inventory_asset_accounts; - $income_accounts = ['' => '- select -'] + $income_accounts; - - $default_drugs = StreamlineSetupManager::get_drugs_array(); - - $package_units = DB::table('package_units')->whereNull('deleted_at')->orderBy('name')->pluck('name','id')->toArray(); - $package_units = ['' => '- select -'] + $package_units; - - return view('clinical_data::drugs.create', compact('drug_categories', 'drug_units', 'drug_forms', 'suppliers', - 'income_accounts','default_drugs', 'inventory_asset_accounts', 'cost_of_goods_accounts', 'package_units')); - } - - /** - * Store a newly created resource in storage. - * - */ - public function store(Request $request) { - - if (session()->has('streamline_setup') && isset($request->skip)){ - //Artisan::call('db:seed', ['--class' => 'DrugsTableSeeder']); - //update the streamline setup table with the new finished step - $this->setupService->saveStep("drugs registration", 1); - - // flash("Default drugs list has been added")->success(); - return redirect("procedures/create"); - } else { - // get all current price lists - $price_list = PriceListCategories::withTrashed()->select('id')->get(); - $price_list_category = []; - $price_list_price = []; - - foreach ($price_list as $record){ - array_push($price_list_category, $record->id); - array_push($price_list_price, $request->non_insured_price); - } - - $logged_in_user_id = Auth()->user()->id; - $drug = new Drug; - - $drug->name = $request->name; - $drug->category_id = $request->category_id; - $drug->available = $request->available; - $drug->form_id = $request->form_id; - $drug->unit_id = $request->unit_id; - $drug->reference_areas = !empty($request->reference_areas)? implode(',',$request->reference_areas):null; - $drug->reference_name = !empty($request->reference_name)? implode(',',$request->reference_name):null; - $drug->pack = $request->pack; - $drug->strength = $request->strength; - $drug->prompt = $request->prompt; - $drug->info_english = $request->info_english; - $drug->info_vernacular = $request->info_vernacular; - $drug->store_stock = 0; //$request->store_stock; - $drug->pharmacy_stock = 0; //$request->pharmacy_stock; - $drug->reorder_level = $request->reorder_level; - $drug->long_term = $request->long_term; - /*if ($request->is_initial_stock_count == 1) { - $drug->opening_stock = $drug->store_stock + $drug->pharmacy_stock; - $drug->opening_cost_price = $request->cost_price; - }*/ - $drug->expiry_date = $request->expiry_date; - $drug->supplier_id = $request->supplier_id; - - if (isset($request->price_list_category_id)) { - $drug->price_list_category = !is_null($request->price_list_category_id) ? implode(",", $request->price_list_category_id) : null; - $drug->price_list_price = !is_null($request->price_list_price) ? implode(",", $request->price_list_price) : null; - } else { - $drug->price_list_category = NULL; - $drug->price_list_price = NULL; - } - - $drug->insurance_coverage = 0; - $drug->cost_price = $request->cost_price; - $drug->non_insured_price = $request->non_insured_price; - $drug->insured_price = 0; - $drug->account_id = $request->account_id; - $drug->inventory_account = $request->inventory_account; - $drug->cost_of_goods_account = $request->cog_account; - $drug->description = $request->description; - $drug->package_unit_id = $request->package_unit_id; - $drug->does_package_unit_have_sub_packages = $request->does_package_unit_have_sub_packages; - $drug->quantity_in_each_package_unit = $request->quantity_in_each_package_unit; - $drug->quantity_in_each_sub_package = $request->quantity_in_each_sub_package; - $drug->number_of_sub_packages_in_main_package_unit = $request->number_of_sub_packages_in_main_package; - $drug->created_by = $logged_in_user_id; - $drug->updated_by = $logged_in_user_id; - $drug->created_at = Carbon::now(); - $drug->updated_at = Carbon::now(); - - try { - if ($drug->name != "" && !is_null($drug->name)) { - $drug->save(); - } - - if (session()->has('streamline_setup')) { - if (isset($request->selected_drugs)) { - $selected_drugs_array = $request->selected_drugs; - if (!empty($selected_drugs_array)) { - - for ($i=0; $i < count($selected_drugs_array) ; $i++) { - /* try this magic to get details for the selected service */ - $drugs_array = StreamlineSetupManager::get_drugs_array(); - $key=array_search($selected_drugs_array[$i], array_column($drugs_array, 'name')); - $drug_details = $drugs_array[$key]; - /* end of magic trial */ - - $default_drug = new Drug; - $default_drug->name = $drug_details['name']; - $default_drug->cost_price = $drug_details['cost_price']; - $default_drug->insured_price = 0; - $default_drug->non_insured_price = $drug_details['non_insured_price']; - $default_drug->category_id = $drug_details['category_id']; - $drug->account_id = $request->account_id; - $drug->inventory_account = $request->inventory_account; - $drug->cost_of_goods_account = $request->cog_account; - $default_drug->form_id = $drug_details['form_id']; - $default_drug->unit_id = $drug_details['unit_id']; - $default_drug->expiry_date = Carbon::now()->addWeek(); - $default_drug->save(); - } - } - } - //update the streamline setup table with the new finished step - $this->setupService->saveStep("drugs registration", 1); - // $streamline_setup = new \Streamline\Models\StreamlineSetupStep; - // $streamline_setup->step = "drug registration"; - // $streamline_setup->completion_status = 1; - // $streamline_setup->save(); - flash("Drugs have been added. PLease ensure that you edit the expiry date before the end of the week")->success(); - - return redirect("procedures/create"); - } - - flash($request->name . " Drug has been saved")->success(); - return redirect("/drugs/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Display the specified resource. - * - * @param int $id - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - */ - public function edit($id) { - $drug_categories = DrugCategory::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $drug_units = DrugUnit::orderBy('name', 'asc')->pluck('name', 'id'); - $drug_forms = DrugForm::orderBy('name', 'asc')->pluck('name', 'id'); - - $drug = Drug::where(['id' => $id])->first(); - - $cost_of_goods_accounts = ChartOfAccount::where(['type' => 7])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $inventory_asset_accounts = ChartOfAccount::where(['type' => 10])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $income_accounts = ChartOfAccount::where(['type' => 1])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - $cost_of_goods_accounts = ['' => '- select -'] + $cost_of_goods_accounts; - $inventory_asset_accounts = ['' => '- select -'] + $inventory_asset_accounts; - $income_accounts = ['' => '- select -'] + $income_accounts; - - if (!$drug) { - flash()->error("There is no such drug"); - return redirect('/drugs/'); - } else { - return view('clinical_data::drugs.edit', compact('drug_units', 'drug_forms', 'drug', 'drug_categories', 'cost_of_goods_accounts', 'inventory_asset_accounts', - 'income_accounts')); - } - } - - /** - * Update the specified resource in storage. - * - * @param int $id - */ - public function update(Request $request, $id) { - - /** - * So a little explanation for this point, there are four methods for updating the column values - * for a drug in the drugs table and am using one update method to route them through here, - * differentiate them by the $request->id passed along since i guess no one will dare use the id - * field or value and then according to whatever value is passed in the id using if elseif statements - * tried a switch but the code was really messy and an if is the best, feel free to edit to your heart's content ;) - */ - if (isset($request->id)) { - if ($request->id == 0) { - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth()->user()->id; - - $drug = Drug::find($id); - $drug->name = $request->name; - $drug->prompt = $request->prompt; - $drug->info_vernacular = $request->info_vernacular; - $drug->info_english = $request->info_english; - $drug->pharmacy_comment = $request->pharmacy_comment; - $drug->description = $request->description; - $drug->updated_by = $logged_in_user_id; - - try { - $drug->save(); - flash($request->name . " Drug has been updated")->success(); - return redirect("/drugs/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } elseif ($request->id == 1) { - $validator = Validator::make($request->all(), [ - 'name' => 'required', - 'cost_price' => 'required', - 'non_insured_price' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth()->user()->id; - - $drug = Drug::find($id); - $drug->name = $request->name; - $drug->cost_price = $request->cost_price; - $drug->non_insured_price = $request->non_insured_price; - $drug->insured_price = 0; - $drug->price_list_category = !is_null($request->price_list_category_id) ? implode(",", $request->price_list_category_id) : null; - $drug->price_list_price = !is_null($request->price_list_price) ? implode(",", $request->price_list_price) : null; - $drug->pricing_factor_infant = $request->pricing_factor_infant; - $drug->pricing_factor_children = $request->pricing_factor_children; - $drug->pricing_factor_adult = $request->pricing_factor_adult; - $drug->ip_daily_cost_adult = $request->ip_daily_cost_adult; - $drug->ip_daily_cost_children = $request->ip_daily_cost_children; - $drug->ip_daily_cost_infant = $request->ip_daily_cost_infant; - $drug->ip_daily_cost_adult_insured = 0; - $drug->ip_daily_cost_children_insured = 0; - $drug->ip_daily_cost_infant_insured = 0; - $drug->updated_by = $logged_in_user_id; - - try { - $drug->save(); - flash($request->name . " Drug has been updated")->success(); - return redirect("/drugs/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } elseif ($request->id == 2) { - $validator = Validator::make($request->all(), [ - 'name' => 'required', - 'form_id' => 'required', - 'pack' => 'required', - 'strength' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth()->user()->id; - - $drug = Drug::find($id); - $drug->name = $request->name; - $drug->form_id = $request->form_id; - $drug->pack = $request->pack; - $drug->strength = $request->strength; - $drug->updated_by = $logged_in_user_id; - - if ($drug->save()): - flash($request->name . " has been saved")->success(); - return redirect("/drugs/"); - else: - flash("There was an error")->error(); - endif; - } - } - } else { - $validator = Validator::make($request->all(), [ - 'name' => 'required', - 'form_id' => 'required', - 'unit_id' => 'required', - 'pharmacy_stock' => 'required', - 'store_stock' => 'required', - 'reorder_level' => 'required', - 'long_term' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth()->user()->id; - - $drug = Drug::find($id); - $drug->name = $request->name; - $drug->category_id = $request->category_id; - $drug->form_id = $request->form_id; - $drug->available = $request->available; - $drug->reference_areas = !empty($request->reference_areas)? implode(',',$request->reference_areas):null; - $drug->reference_name = !empty($request->reference_name)? implode(',',$request->reference_name):null; - $drug->unit_id = $request->unit_id; - $drug->store_stock = $request->store_stock; - $drug->pharmacy_stock = $request->pharmacy_stock; - $drug->reorder_level = $request->reorder_level; - $drug->long_term = $request->long_term; - $drug->hssip = $request->hssip; - $drug->insurance_coverage = 0; - $drug->account_id = $request->account_id; - $drug->inventory_account = $request->inventory_account; - $drug->cost_of_goods_account = $request->cog_account; - $drug->updated_by = $logged_in_user_id; - - if ($drug->save()): - flash($request->name . " has been saved")->success(); - return redirect("/drugs/"); - else: - flash("There was an error")->error(); - endif; - } - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $drug = Drug::find($id); - if (empty($drug->pharmacy_stock) && empty($drug->store_stock) && empty($drug->opening_stock)) { - if ($drug->delete()): - flash("Drug has been deleted.")->success(); - return redirect('/drugs/'); - endif; - } else { - flash()->error($drug->name ." is still in stock."); - return redirect('/drugs/'); - } - } - - public function inactive() { - - $drugs = Drug::onlyTrashed()->orderBy('name', 'asc')->paginate(50); - - if (empty($drugs)) { - flash()->error("There is no inactive drug"); - return redirect('/drugs/'); - } else { - return view('clinical_data::drugs.inactive', compact('drugs')); - } - } - - public function activate($id) { - $drug = Drug::withTrashed()->find($id); - - if ($drug->restore()): - flash("Drug has been activated.")->success(); - return redirect('/drugs/'); - endif; - } - - public function edit_drugs_calculations($id) { - - $drug_forms = DrugForm::orderBy('name', 'asc')->pluck('name', 'id'); - - $drug = Drug::where(['id' => $id])->first(); - - if (!$drug) { - flash()->error("There is no such drug"); - return redirect('/drugs/'); - } else { - return view('clinical_data::drugs.edit.drugs_calculations', compact('drug_forms', 'drug')); - } - } - - public function edit_drugs_pricing($id) { - $drug = Drug::where(['id' => $id])->first(); - - if (!$drug) { - flash()->error("There is no such drug"); - return redirect('/drugs/'); - } else { - return view('clinical_data::drugs.edit.drugs_pricing', compact('drug')); - } - } - - public function edit_drugs_prompts($id) { - $drug = Drug::where(['id' => $id])->first(); - - if (!$drug) { - flash()->error("There is no such drug"); - return redirect('/drugs/'); - } else { - return view('clinical_data::drugs.edit.drugs_prompts', compact('drug')); - } - } - - public function index_drugs_expiring(Request $request) { - - $today = Carbon::now(); $range = !empty($request->time_period)? $request->time_period : 0; - $started =$request->start_date; $ended = $request->end_date; - if ($request->time_period) { - if ($request->time_period == 0) { - - $drugs = ItemBatchWatcher::where(function ($query) { - $query->where('store_stock', '>', 0) - ->orWhere('pharmacy_stock', '>', 0); - })->where('item_type', 1)->where('expiry_date', '<', DATE($today)) - ->orderBy('expiry_date', 'asc') - ->paginate(50); - - if (count($drugs) < 1) { - flash()->error("There are no expired drugs"); - } - } elseif ($request->time_period == 1) { - - $drugs = ItemBatchWatcher::where(function ($query) { - $query->where('store_stock', '>', 0) - ->orWhere('pharmacy_stock', '>', 0); - })->where('item_type', 1)->whereBetween('expiry_date', [DATE($today), DATE($today->addWeek())]) - ->orderBy('expiry_date', 'asc') - ->paginate(50); - - if (count($drugs) < 1) { - flash()->error("There are no drugs expiring in a week"); - } - } elseif ($request->time_period == 2) { - - $drugs = ItemBatchWatcher::where(function ($query) { - $query->where('store_stock', '>', 0) - ->orWhere('pharmacy_stock', '>', 0); - })->where('item_type', 1)->whereBetween('expiry_date', [DATE($today), DATE($today->addWeeks(2))]) - ->orderBy('expiry_date', 'asc') - ->paginate(50); - - if (count($drugs) < 1) { - flash()->error("There are no drugs expiring in two weeks"); - } - } elseif ($request->time_period == 3) { - $request->validate([ - 'start_date' => 'required|date|required_with:end_date', - 'end_date' => 'bail|required|required_with:start_date|date|after:start_date', - ]); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $drugs = ItemBatchWatcher::where(function ($query) { - $query->where('store_stock', '>', 0) - ->orWhere('pharmacy_stock', '>', 0); - })->where('item_type', 1)->whereBetween('expiry_date', [$start, $end]) - ->orderBy('expiry_date', 'asc') - ->paginate(50); - - if (count($drugs) < 1) flash()->error("There are no drugs expiring between ".$start. " and " .$end); - } elseif ($request->time_period == 4) { - - $drugs = ItemBatchWatcher::where(function ($query) { - $query->where('store_stock', '>', 0) - ->orWhere('pharmacy_stock', '>', 0); - })->where('item_type', 1)->whereBetween('expiry_date', [DATE($today), DATE($today->addWeeks(4))]) - ->orderBy('expiry_date', 'asc') - ->paginate(50); - - if (count($drugs) < 1) { - flash()->error("There are no drugs expiring in a month"); - } - } - } else { - $drugs = ItemBatchWatcher::where(function ($query) { - $query->where('store_stock', '>', 0) - ->orWhere('pharmacy_stock', '>', 0); - })->where('item_type', 1)->where('expiry_date', '<', DATE($today)) - ->orderBy('expiry_date', 'asc') - ->paginate(50); - - if (count($drugs) < 1) { - flash()->error("There are no expired drugs"); - } - } - - return view('clinical_data::drugs.index_drugs_expiring', compact('drugs', 'range', 'started', 'ended')); - } - - public function index_drugs_low_stock() { - - $drugs = Drug::whereColumn('store_stock', '<', 'reorder_level') - ->orWhere('store_stock', '<', '20') - ->orderBy('name', 'asc') - ->paginate(500); - - if (count($drugs) < 1) { - flash()->error("There is no out of stock drugs"); - return redirect('/drugs/'); - } else { - return view('clinical_data::drugs.index_drugs_low_stock', compact('drugs')); - } - } - - public function edit_all() { - $drugs = Drug::orderBy('name', 'asc') - ->get(); - - $drug_units = DrugUnit::orderBy('name', 'asc') - ->pluck('name', 'id'); - - $drug_forms = DrugForm::orderBy('name', 'asc') - ->pluck('name', 'id'); - - if (count($drugs) < 1) { - flash()->error("There is no active drug"); - return redirect('/drugs/'); - } else { - return view('clinical_data::drugs.edit.all', compact('drugs', 'drug_units', 'drug_forms')); - } - } - - public function update_all(Request $request) { - $validator = Validator::make($request->all(), [ - //'name' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth()->user()->id; - - $id_array = $request->id; - - $name_array = $request->name; - $form_id_array = $request->form_id; - $unit_id_array = $request->unit_id; - $store_stock_array = $request->store_stock; - $pharmacy_stock_array = $request->pharmacy_stock; - $reorder_level_array = $request->reorder_level; - $long_term_array = $request->long_term; - $hssip_array = $request->hssip; - - for ($x = 0; $x < count($id_array); $x++) { - $drug = Drug::find($id_array[$x]); - - $drug->name = isset($name_array[$x]) ? $name_array[$x] : $drug->name; - $drug->form_id = isset($form_id_array[$x]) ? $form_id_array[$x] : $drug->form_id; - $drug->unit_id = isset($unit_id_array[$x]) ? $unit_id_array[$x] : $drug->unit_id; - $drug->store_stock = isset($store_stock_array[$x]) ? $store_stock_array[$x] : $drug->store_stock; - $drug->pharmacy_stock = isset($pharmacy_stock_array[$x]) ? $pharmacy_stock_array[$x] : $drug->pharmacy_stock; - $drug->reorder_level = isset($reorder_level_array[$x]) ? $reorder_level_array[$x] : $drug->reorder_level; - $drug->long_term = isset($long_term_array[$x]) ? $long_term_array[$x] : $drug->long_term; - $drug->hssip = isset($hssip_array[$x]) ? $hssip_array[$x] : $drug->hssip; - $drug->insurance_coverage = 0; - $drug->updated_by = $logged_in_user_id; - - try { - $drug->save(); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - flash("Drugs have been updated")->success(); - return redirect("/drugs/"); - } - } - - public function edit_all_prompts() { - $drugs = Drug::orderBy('name', 'asc')->get(); - - if (count($drugs) < 1) { - flash()->error("There is no active drug"); - return redirect('/drugs/'); - } else { - return view('clinical_data::drugs.edit.all_prompts', compact('drugs')); - } - } - - public function update_all_prompts(Request $request) { - $validator = Validator::make($request->all(), [ - //'name' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth()->user()->id; - - $id_array = $request->id; - - $name_array = $request->name; - $prompt_array = $request->prompt; - $info_vernacular_array = $request->info_vernacular; - $info_english_array = $request->info_english; - $pharmacy_comment_array = $request->pharmacy_comment; - - for ($x = 0; $x < count($id_array); $x++) { - $drug = Drug::find($id_array[$x]); - - $drug->name = isset($name_array[$x]) ? $name_array[$x] : $drug->name; - $drug->prompt = isset($prompt_array[$x]) ? $prompt_array[$x] : $drug->prompt; - $drug->info_vernacular = isset($info_vernacular_array[$x]) ? $info_vernacular_array[$x] : $drug->info_vernacular; - $drug->info_english = isset($info_english_array[$x]) ? $info_english_array[$x] : $drug->info_english; - $drug->pharmacy_comment = isset($pharmacy_comment_array[$x]) ? $pharmacy_comment_array[$x] : $drug->pharmacy_comment; - $drug->updated_by = $logged_in_user_id; - - try { - $drug->save(); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - flash("Drug Prompts have been updated")->success(); - return redirect("/drugs/"); - } - } - - public function edit_all_pricing() { - $drugs = Drug::orderBy('name', 'asc') - ->get(); - - if (count($drugs) < 1) { - flash()->error("There is no active drug"); - return redirect('/drugs/'); - } else { - return view('clinical_data::drugs.edit.all_pricing', compact('drugs')); - } - } - - public function update_all_pricing(Request $request) { - $validator = Validator::make($request->all(), [ - //'name' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth()->user()->id; - - $id_array = $request->id; - - $name_array = $request->name; - $cost_price_array = $request->cost_price; - $non_insured_price_array = $request->non_insured_price; - $pricing_factor_infant_array = $request->pricing_factor_infant; - $pricing_factor_children_array = $request->pricing_factor_children; - $pricing_factor_adult_array = $request->pricing_factor_adult; - $ip_daily_cost_adult_array = $request->ip_daily_cost_adult; - $ip_daily_cost_children_array = $request->ip_daily_cost_children; - $ip_daily_cost_infant_array = $request->ip_daily_cost_infant; - - for ($x = 0; $x < count($id_array); $x++) { - $drug = Drug::find($id_array[$x]); - - $drug->name = isset($name_array[$x]) ? $name_array[$x] : $drug->name; - $drug->cost_price = isset($cost_price_array[$x]) ? $cost_price_array[$x] : $drug->cost_price; - $drug->non_insured_price = isset($non_insured_price_array[$x]) ? $non_insured_price_array[$x] : $drug->non_insured_price; - $drug->insured_price = 0; - $drug->pricing_factor_infant = isset($pricing_factor_infant_array[$x]) ? $pricing_factor_infant_array[$x] : $drug->pricing_factor_infant; - $drug->pricing_factor_children = isset($pricing_factor_children_array[$x]) ? $pricing_factor_children_array[$x] : $drug->pricing_factor_children; - $drug->pricing_factor_adult = isset($pricing_factor_adult_array[$x]) ? $pricing_factor_adult_array[$x] : $drug->pricing_factor_adult; - $drug->ip_daily_cost_adult = isset($ip_daily_cost_adult_array[$x]) ? $ip_daily_cost_adult_array[$x] : $drug->ip_daily_cost_adult; - $drug->ip_daily_cost_children = isset($ip_daily_cost_children_array[$x]) ? $ip_daily_cost_children_array[$x] : $drug->ip_daily_cost_children; - $drug->ip_daily_cost_infant = isset($ip_daily_cost_infant_array[$x]) ? $ip_daily_cost_infant_array[$x] : $drug->ip_daily_cost_infant; - $drug->ip_daily_cost_adult_insured = 0; - $drug->ip_daily_cost_children_insured = 0; - $drug->ip_daily_cost_infant_insured = 0; - $drug->updated_by = $logged_in_user_id; - - try { - $drug->save(); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - flash("Drugs Pricing have been updated")->success(); - return redirect("/drugs/"); - } - } - - public function edit_all_calculations() { - $drugs = Drug::orderBy('name', 'asc')->get(); - - $drug_forms = DrugForm::orderBy('name', 'asc')->pluck('name', 'id'); - - if (count($drugs) < 1) { - flash()->error("There is no active drug"); - return redirect('/drugs/'); - } else { - return view('clinical_data::drugs.edit.all_calculations', compact('drugs', 'drug_forms')); - } - } - - public function update_all_calculations(Request $request) { - $validator = Validator::make($request->all(), [ - //'name' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth()->user()->id; - - $id_array = $request->id; - - $name_array = $request->name; - $form_array = $request->form_id; - $pack_array = $request->pack; - $strength_array = $request->strength; - - for ($x = 0; $x < count($id_array); $x++) { - $drug = Drug::find($id_array[$x]); - - $drug->name = $name_array[$x]; - $drug->form_id = $form_array[$x]; - $drug->pack = $pack_array[$x]; - $drug->strength = $strength_array[$x]; - $drug->updated_by = $logged_in_user_id; - - try { - $drug->save(); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - flash("Drug Calculations have been updated")->success(); - - // This data is needed for redirection - $drugs = Drug::orderBy('name', 'asc')->get(); - $drug_forms = DrugForm::orderBy('name', 'asc')->pluck('name', 'id'); - - return view('clinical_data::drugs.edit.all_calculations', compact('drugs', 'drug_forms')); - } - } - - public function bulk_create() { - $drug_categories = DrugCategory::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $drug_categories = ['' => '- select -'] + $drug_categories; - - $drug_units = DrugUnit::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $drug_units = ['' => '- select -'] + $drug_units; - - $drug_forms = DrugForm::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $drug_forms = ['' => '- select -'] + $drug_forms; - - $suppliers = Supplier::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $suppliers = ['' => '- select -'] + $suppliers; - - $cost_of_goods_accounts = ChartOfAccount::where(['type' => 7])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $inventory_asset_accounts = ChartOfAccount::where(['type' => 10])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $income_accounts = ChartOfAccount::where(['type' => 1])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - $cost_of_goods_accounts = ['' => '- select -'] + $cost_of_goods_accounts; - $inventory_asset_accounts = ['' => '- select -'] + $inventory_asset_accounts; - $income_accounts = ['' => '- select -'] + $income_accounts; - - - return view('clinical_data::drugs.bulk_create', compact('drug_categories', 'drug_units', 'drug_forms', 'suppliers', - 'income_accounts', 'inventory_asset_accounts', 'cost_of_goods_accounts')); - } - - public function bulk_store(Request $request) { - $logged_in_user_id = Auth()->user()->id; - - $counter = 0; - - $name_array = $request->name; - $category_id_array = $request->category_id; - $form_id_array = $request->form_id; - $unit_id_array = $request->unit_id; - $prompt_array = $request->prompt; - $info_english_array = $request->info_english; - $info_vernacular_array = $request->info_vernacular; - $store_stock_array = $request->store_stock; - $reorder_level_array = $request->reorder_level; - $expiry_date_array = $request->expiry_date; - $supplier_id_array = $request->supplier_id; - $cost_price_array = $request->cost_price; - $non_insured_price_array = $request->non_insured_price; - $account_id_array = $request->account_id; - $inventory_account_array = $request->inventory_account; - $cost_of_goods_account_array = $request->cog_account; - $description_array = $request->description; - - for ($x = 0; $x < count($name_array); $x++) { - if ($name_array[$x]) { - $counter += 1; - $drug = new Drug; - - $drug->name = $name_array[$x]; - $drug->category_id = $category_id_array[$x]; - $drug->form_id = $form_id_array[$x]; - $drug->unit_id = $unit_id_array[$x]; - $drug->prompt = $prompt_array[$x]; - $drug->info_english = $info_english_array[$x]; - $drug->info_vernacular = $info_vernacular_array[$x]; - $drug->store_stock = $store_stock_array[$x]; - $drug->reorder_level = $reorder_level_array[$x]; - $drug->expiry_date = $expiry_date_array[$x]; - $drug->supplier_id = $supplier_id_array[$x]; - $drug->insurance_coverage = 0; - $drug->cost_price = $cost_price_array[$x]; - $drug->non_insured_price = $non_insured_price_array[$x]; - $drug->insured_price = 0; - $drug->account_id = $account_id_array[$x]; - $drug->cost_of_goods_account = $cost_of_goods_account_array[$x]; - $drug->inventory_account = $inventory_account_array[$x]; - $drug->description = $description_array[$x]; - $drug->created_by = $logged_in_user_id; - $drug->updated_by = $logged_in_user_id; - - try { - $drug->save(); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - flash($counter . " drugs have been saved")->success(); - return redirect("/drugs/"); - } - - public function edit_purchase_packaging(Request $request, $id) - { - $drug = Drug::find($id); - - if (!$drug) { - flash()->error("There is no such drug"); - return redirect('/drugs/'); - } else { - return view('clinical_data::drugs.edit.items_purchase_packaging', compact('drug')); - } - } - - public function update_purchase_packaging(Request $request) - { - $drug = Drug::find($request->id); - $drug->does_package_unit_have_sub_packages = $request->does_package_unit_have_sub_packages; - $drug->quantity_in_each_package_unit = $request->quantity_in_each_package_unit; - $drug->quantity_in_each_sub_package = $request->quantity_in_each_sub_package; - $drug->number_of_sub_packages_in_main_package_unit = $request->number_of_sub_packages_in_main_package; - $drug->update(); - - return redirect('drugs'); - } - - public function get_drug_store_stock($id){ - $drug = Drug::find($id); - - if ($drug) { - $stock_level = $this->itemsStockService->getItemAllQuantityByTotal($id, 1); - - if ($stock_level > 0) { - $message ='  
    '.$stock_level.' Units in Stock'; - } else { - $message = '  
    Drug is out of stock'; - } - } else { - $message = ""; - } - - return $message; - } - -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/DrugFormController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/DrugFormController.php deleted file mode 100755 index 394b6d11..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/DrugFormController.php +++ /dev/null @@ -1,171 +0,0 @@ -middleware('auth'); - $this->middleware('permission:drug-form-list', ['only' => ['index']]); - $this->middleware('permission:drug-form-create', ['only' => ['create', 'store']]); - $this->middleware('permission:drug-form-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:drug-form-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /**create - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $drug_forms = DrugForm::orderBy('name', 'asc') - ->paginate(50); - - return view('clinical_data::drug_forms.index', compact('drug_forms')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - return view('clinical_data::drug_forms.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - $drug_form = new DrugForm; - - $drug_form->name = $request->name; - $drug_form->created_by = $logged_in_user_id; - $drug_form->updated_by = $logged_in_user_id; - - try { - $drug_form->save(); - flash($request->name . " drug form has been saved")->success(); - return redirect("/drug_forms/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $drug_form = DrugForm::where(['id' => $id])->first(); - - if (!$drug_form) { - flash()->error("Drug Form not found"); - return redirect('/drug_forms/'); - } else { - return view('clinical_data::drug_forms.edit', compact('drug_form')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - - $drug_form = DrugForm::find($id); - $drug_form->name = $request->name; - $drug_form->updated_by = $logged_in_user_id; - - try { - $drug_form->save(); - flash($request->name . " Drug Form has been updated")->success(); - return redirect("/drug_forms/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $drug_form = DrugForm::find($id); - - if ($drug_form->delete()){ - flash("Form has been deleted.")->success(); - return redirect('/drug_forms/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $drug_forms = DrugForm::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($drug_forms) < 1) { - flash()->error("There is no inactive Forms"); - return redirect('/drug_forms/'); - } else { - return view('clinical_data::drug_forms.inactive', compact('drug_forms')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $drug_form = DrugForm::withTrashed()->find($id); - - if ($drug_form->restore()){ - flash("Form has been activated.")->success(); - return redirect('/drug_forms/'); - } - } -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/DrugRouteController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/DrugRouteController.php deleted file mode 100644 index 58d7b851..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/DrugRouteController.php +++ /dev/null @@ -1,165 +0,0 @@ -middleware('auth'); - $this->middleware('permission:drug-route-list', ['only' => ['index']]); - $this->middleware('permission:drug-route-create', ['only' => ['create', 'store']]); - $this->middleware('permission:drug-route-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:drug-route-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /**create - * Display a listing of the resource. - * - */ - public function index() { - $drug_routes = DrugRoute::orderBy('name', 'asc') - ->paginate(50); - - return view('clinical_data::drug_routes.index', compact('drug_routes')); - } - - /** - * Show the route for creating a new resource. - * - */ - public function create() { - return view('clinical_data::drug_routes.create'); - } - - /** - * Store a newly created resource in storage. - * - */ - public function store(Request $request) { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - $drug_route = new DrugRoute; - - $drug_route->name = $request->name; - $drug_route->created_by = $logged_in_user_id; - $drug_route->updated_by = $logged_in_user_id; - - try { - $drug_route->save(); - flash($request->name . " drug route has been saved")->success(); - return redirect("/drug_routes/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - */ - public function show($id) { - // - } - - /** - * Show the route for editing the specified resource. - * - * @param int $id - */ - public function edit($id) { - $drug_route = DrugRoute::where(['id' => $id])->first(); - - if (!$drug_route) { - flash()->error("Drug route not found"); - return redirect('/drug_routes/'); - } else { - return view('clinical_data::drug_routes.edit', compact('drug_route')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Contracts\Foundation\Application|\Illuminate\Foundation\Application|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - - $drug_route = DrugRoute::find($id); - $drug_route->name = $request->name; - $drug_route->updated_by = $logged_in_user_id; - - try { - $drug_route->save(); - flash($request->name . " Drug route has been updated")->success(); - return redirect("/drug_routes/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $drug_route = DrugRoute::find($id); - - if ($drug_route->delete()){ - flash("route has been deleted.")->success(); - return redirect('/drug_routes/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $drug_routes = DrugRoute::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($drug_routes) < 1) { - flash()->error("There is no inactive routes"); - return redirect('/drug_routes/'); - } else { - return view('clinical_data::drug_routes.inactive', compact('drug_routes')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $drug_route = DrugRoute::withTrashed()->find($id); - - if ($drug_route->restore()){ - flash("route has been activated.")->success(); - return redirect('/drug_routes/'); - } - } -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/DrugUnitController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/DrugUnitController.php deleted file mode 100755 index 011797f0..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/DrugUnitController.php +++ /dev/null @@ -1,172 +0,0 @@ -middleware('auth'); - $this->middleware('permission:drug-unit-list', ['only' => ['index']]); - $this->middleware('permission:drug-unit-create', ['only' => ['create', 'store']]); - $this->middleware('permission:drug-unit-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:drug-unit-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $drug_units = DrugUnit::orderBy('name', 'asc') - ->paginate(50); - - return view('clinical_data::drug_units.index', compact('drug_units')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - return view('clinical_data::drug_units.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - $drug_unit = new DrugUnit; - - $drug_unit->name = $request->name; - $drug_unit->created_by = $logged_in_user_id; - $drug_unit->updated_by = $logged_in_user_id; - - try { - $drug_unit->save(); - flash($request->name . " Drug Unit has been saved")->success(); - return redirect("/drug_units/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $drug_unit = DrugUnit::where(['id' => $id])->first(); - - if (!$drug_unit) { - flash()->error("There is no such Unit"); - return redirect('/drug_units/'); - } else { - return view('clinical_data::drug_units.edit', compact('drug_unit')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - - $drug_unit = DrugUnit::find($id); - $drug_unit->name = $request->name; - $drug_unit->updated_by = $logged_in_user_id; - - try { - $drug_unit->save(); - flash($request->name . " Drug Unit has been updated")->success(); - return redirect("/drug_units/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $drug_unit = DrugUnit::find($id); - - if ($drug_unit->delete()): - flash("Drug Unit has been deleted.")->success(); - return redirect('/drug_units/'); - endif; - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $drug_units = DrugUnit::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($drug_units) < 1) { - flash()->error("There is no inactive drug unit"); - return redirect('/drug_units/'); - } else { - return view('clinical_data::drug_units.inactive', compact('drug_units')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $drug_unit = DrugUnit::withTrashed()->find($id); - - if ($drug_unit->restore()){ - flash("Drug Unit has been activated.")->success(); - return redirect('/drug_units/'); - } - } - -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/EyeGlassesController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/EyeGlassesController.php deleted file mode 100644 index 550e9ca4..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/EyeGlassesController.php +++ /dev/null @@ -1,267 +0,0 @@ -middleware('auth'); - $this->middleware('permission:eye_glasses-list', ['only' => ['index']]); - $this->middleware('permission:eye_glasses-create', ['only' => ['create', 'store']]); - $this->middleware('permission:eye_glasses-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:eye_glasses-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - */ - public function index() { - $eye_glasses = EyeGlasses::orderBy('name', 'asc')->get(); - - $chart_of_accounts = ChartOfAccount::orderBy('name', 'asc')->pluck('name', 'id'); - - return view('clinical_data::eye_glasses.index', compact('eye_glasses', 'chart_of_accounts')); - } - - /** - * Show the form for creating a new resource. - */ - public function create() { - $cost_of_goods_accounts = ChartOfAccount::where(['type' => 7])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $inventory_asset_accounts = ChartOfAccount::where(['type' => 10])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $chart_of_accounts = ChartOfAccount::where(['type' => 1])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - $cost_of_goods_accounts = ['' => '- select -'] + $cost_of_goods_accounts; - $inventory_asset_accounts = ['' => '- select -'] + $inventory_asset_accounts; - $chart_of_accounts = ['' => '- select -'] + $chart_of_accounts; - - return view('clinical_data::eye_glasses.create', compact('chart_of_accounts', 'cost_of_goods_accounts', 'inventory_asset_accounts')); - } - - /** - * Store a newly created resource in storage. - */ - public function store(Request $request) { - request()->validate([ - 'name' => 'required', - 'price' => 'required', - 'account_id' => 'required' - ]); - - //validation passed - $eye_glass = new EyeGlasses; - $logged_in_user_id = Auth::user()->id; - - $eye_glass->name = $request->name; - $eye_glass->buying_price = $request->price; - $eye_glass->non_insured_price = $request->non_insured_price; - $eye_glass->account_id = $request->account_id; - $eye_glass->cost_of_goods_account = $request->cost_of_goods_account; - $eye_glass->inventory_account = $request->inventory_account; - $eye_glass->created_by = $logged_in_user_id; - $eye_glass->updated_by = $logged_in_user_id; - - try { - $eye_glass->save(); - flash($request->name . " Eye glasses has been saved")->success(); - return redirect("/opticals/"); - } catch (QueryException $e) { - flash("An error occurred!")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - */ - public function edit($id) { - $eye_glass = EyeGlasses::where(['id' => $id])->first(); - - $cost_of_goods_accounts = ChartOfAccount::where(['type' => 7])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $inventory_asset_accounts = ChartOfAccount::where(['type' => 10])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $chart_of_accounts = ChartOfAccount::where(['type' => 1])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - $cost_of_goods_accounts = ['' => '- select -'] + $cost_of_goods_accounts; - $inventory_asset_accounts = ['' => '- select -'] + $inventory_asset_accounts; - $chart_of_accounts = ['' => '- select -'] + $chart_of_accounts; - - if (!$eye_glass) { - flash()->error("Eye Glasses not found"); - return redirect('/opticals/'); - } else { - return view('clinical_data::eye_glasses.edit', compact('eye_glass', 'chart_of_accounts', 'cost_of_goods_accounts', 'inventory_asset_accounts')); - } - } - - /** - * Update the specified resource in storage. - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required', - 'account_id' => 'required' - ]); - - //validation passed - $eye_glass = EyeGlasses::find($id); - $eye_glass->name = $request->name; - $eye_glass->buying_price = $request->buying_price; - $eye_glass->non_insured_price = $request->non_insured_price; - $eye_glass->cost_of_goods_account = $request->cost_of_goods_account; - $eye_glass->inventory_account = $request->inventory_account; - $eye_glass->account_id = $request->account_id; - - try { - $eye_glass->save(); - flash($request->name . " Eye glasses has been updated")->success(); - return redirect("/opticals/"); - } catch (QueryException $e) { - flash("An error occurred!")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - */ - public function destroy($id) { - $eye_glass = EyeGlasses::find($id); - - if ($eye_glass->delete()): - flash("Eye glasses has been deleted.")->success(); - return redirect('/opticals/'); - endif; - } - - public function inactive() { - $eye_glasses = EyeGlasses::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - $chart_of_accounts = ChartOfAccount::orderBy('name', 'asc')->pluck('name', 'id'); - - return view('clinical_data::eye_glasses.inactive', compact('eye_glasses', 'chart_of_accounts')); - } - - public function activate($id) { - $eye_glass = EyeGlasses::withTrashed()->find($id); - - if ($eye_glass->restore()): - flash("Eye glasses have been activated.")->success(); - return redirect('/opticals/inactive'); - endif; - } - public function get_optical_pricing(Request $request){ - $item_id = $request->item; - $patient_id = $request->patient_id; - $patient_insurance_status = $request->patient_insurance_status ?? 0; - $optical = EyeGlasses::find($item_id); - if(is_numeric($patient_insurance_status) && $patient_insurance_status == 1 && $patient_id != 0 && is_numeric($patient_id)) { - $selling_price = get_item_insurance_co_payment($patient_id, $optical->id, 7, false, 0); - } else { - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_id) { - $selling_price = get_price_list_category_price($price_list_id, 7, $optical->id); - } else { - $selling_price = get_name($optical->id, "id", "non_insured_price", "eye_glasses"); - } - } - if (stock_levels_to_consider() == 0) { - $total_stock = $this->itemsStockService->getItemAllQuantityByTotal($optical->id, 7); - } else { - $total_stock = $this->itemsStockService->getItemPharmacyQuantity($optical->id, 7); - } - $out_of_stock = $total_stock < 1; - $out_of_stock = ($out_of_stock)?1:0; - $drug_expiry_date = $this->itemsStockService->getItemLatestExpiryDate($optical->id, 7) ?? $optical->expiry_date; - if (Carbon::createFromFormat('Y-m-d', $drug_expiry_date)->isBefore(Carbon::tomorrow())) { - $optical_is_expired = 1; - } else { - $optical_is_expired = 0; - } - return response()->json(['selling_price' => $selling_price,'total_stock'=>$out_of_stock,'expiry'=>$optical_is_expired]); - } - public function order(){ - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $patient = Patient::where('id', $patient_id)->first(); - - $eye_glasses = EyeGlasses::orderBy('name')->pluck('name', 'id'); - - $ordered_eye_glasses = OrderedEyeGlasses::where([ - 'patient_id' => $patient_id, - 'episode_id' => $episode_id, - 'payment_status' => 0 - ])->first(); - - return view('clinical_data::eye_glasses.order', compact('patient', 'patient_id', 'episode_id', 'eye_glasses', 'ordered_eye_glasses')); - } - - public function submit_order(Request $request){ - if(is_null($request->optical_id) || is_null($request->optical_id[0])) { - flash("No optical item has been selected")->error(); - return back()->withInput(); - } else { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $optical_ids_array = $request->optical_id; - $quantity_array = $request->item_quantity; - - if (isset($request->order_id) && get_name($request->order_id, 'id', 'payment_status', 'ordered_eye_glasses') == 0) { - $optical_order = OrderedEyeGlasses::find($request->order_id); - $optical_order->updated_by = Auth::id(); - } else { - $optical_order = new OrderedEyeGlasses; - $optical_order->patient_id = $patient_id; - $optical_order->episode_id = $episode_id; - $optical_order->payment_status = 0; - $optical_order->created_by = Auth::id(); - } - - $optical_order->eye_glasses_id = implode(",", $optical_ids_array); - $optical_order->quantity = implode(",", $quantity_array); - $optical_order->save(); - - flash("Optical Items have been saved")->success(); - - // redirect to consultation or patient_episode page depending on where the user is from - if (session()->has('redirect_to_consultation')) { - $url = session()->get('redirect_to_consultation'); - session()->forget('redirect_to_consultation'); - return redirect($url); - } else { - return redirect("/patient_episodes"); - } - } - } - - public function cancel_ordered_glasses($order_id) { - $orders = OrderedEyeGlasses::where(['id' => $order_id, 'payment_status' => 0])->delete(); - - if ($orders) { - return 1; - } else { - return 0; - } - } -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/GeneralItemsController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/GeneralItemsController.php deleted file mode 100755 index 49c1d437..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/GeneralItemsController.php +++ /dev/null @@ -1,226 +0,0 @@ -middleware('auth'); - // $this->middleware('permission:general_items-list', ['only' => ['index']]); - // $this->middleware('permission:general_items-create', ['only' => ['create', 'store']]); - // $this->middleware('permission:general_items-edit', ['only' => ['edit', 'update']]); - // $this->middleware('permission:general_items-delete', ['only' => ['destroy', 'inactive', 'activate']]); - // } - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() - { - $general_items = GeneralItem::get(); - $chart_of_accounts = ChartOfAccount::orderBy('name', 'asc')->pluck('name', 'id'); - $expense_accounts = ChartOfAccount::where(['type' => 2]) - ->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $payables_accounts = ChartOfAccount::where(['type' => 6]) - ->orWhere(['type' => 9])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - return view('clinical_data::general_items.index', compact('general_items', 'chart_of_accounts', 'payables_accounts', 'expense_accounts')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - $cost_of_goods_accounts = ChartOfAccount::where(['type' => 7]) - ->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $expense_accounts = ChartOfAccount::where(['type' => 2]) - ->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $payables_accounts = ChartOfAccount::where(['type' => 6]) - ->orWhere(['type' => 9])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - $cost_of_goods_accounts = ['' => '- select -'] + $cost_of_goods_accounts; - $expense_accounts = ['' => '- select -'] + $expense_accounts; - $payables_accounts = ['' => '- select -'] + $payables_accounts; - - return view('clinical_data::general_items.create', compact('cost_of_goods_accounts', 'payables_accounts', 'expense_accounts')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - request()->validate([ - 'name' => 'required', - 'cost_price' => 'required' - ]); - - $general_item = new GeneralItem(); - $logged_in_user_id = Auth::user()->id; - - $general_item->name = $request->name; - $general_item->cost_price = $request->cost_price; - $general_item->expenses_account_id = $request->expenses_account_id; - $general_item->payables_account_id = $request->payables_account_id; - //$general_item->supplier_id = $request->supplier_id; - //$general_item->store_stock = $request->store_stock; - //$general_item->cost_of_goods_account = $request->cost_of_goods_account; - //$general_item->item_type = $request->item_type; - $general_item->created_by = $logged_in_user_id; - $general_item->updated_by = $logged_in_user_id; - - try { - $general_item->save(); - flash("General item has been saved")->success(); - return redirect("/general_items/"); - } catch (QueryException $e) { - flash("Something went wrong. Please try again")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) - { - $general_item = GeneralItem::where(['id' => $id])->first(); - $units = UnitOfMeasure::get(); - - $cost_of_goods_accounts = ChartOfAccount::where(['type' => 7]) - ->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $expenses_accounts = ChartOfAccount::where(['type' => 2]) - ->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $payables_accounts = ChartOfAccount::where(['type' => 6]) - ->orWhere(['type' => 9])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - $cost_of_goods_accounts = ['' => '- select -'] + $cost_of_goods_accounts; - $expenses_accounts = ['' => '- select -'] + $expenses_accounts; - $payables_accounts = ['' => '- select -'] + $payables_accounts; - - - if (!$general_item) { - flash()->error("General item not found"); - return redirect('/general_items/'); - } else { - return view('clinical_data::general_items.edit', compact('general_item', 'payables_accounts', 'expenses_accounts', 'cost_of_goods_accounts')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - request()->validate([ - 'name' => 'required', - 'cost_price' => 'required', - ]); - - //validation passed - $general_item = GeneralItem::find($id); - $logged_in_user_id = Auth::user()->id; - - $general_item->name = $request->name; - $general_item->cost_price = $request->cost_price; - $general_item->expenses_account_id = $request->expenses_account_id; - $general_item->payables_account_id = $request->payables_account_id; - $general_item->updated_by = $logged_in_user_id; - - try { - $general_item->save(); - flash("General item has been updated")->success(); - return redirect("/general_items/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - $general_item = GeneralItem::find($id); - - if ($general_item->delete()) { - flash("The item has been deleted.")->success(); - return redirect('/general_items/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Contracts\View\Factory|\Illuminate\Foundation\Application|\Illuminate\View\View - */ - public function inactive() { - $general_items = GeneralItem::onlyTrashed()->get(); - $expense_accounts = ChartOfAccount::where(['type' => 2]) - ->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $payables_accounts = ChartOfAccount::where(['type' => 6]) - ->orWhere(['type' => 9])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - - if (count($general_items) < 1) { - flash()->error("There is no inactive General Item"); - return redirect('/general_items/'); - } else { - return view('clinical_data::general_items.inactive', compact('general_items', 'expense_accounts', 'payables_accounts')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Foundation\Application|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector - */ - public function activate($id) { - $general_item = GeneralItem::withTrashed()->find($id); - - if($general_item->restore()){ - flash("A general item has been activated.")->success(); - return redirect('/general_items/inactive'); - } - } -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/HmisCategoryController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/HmisCategoryController.php deleted file mode 100755 index a3a7873a..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/HmisCategoryController.php +++ /dev/null @@ -1,159 +0,0 @@ -middleware('auth'); - $this->middleware('permission:hmis-category-list', ['only' => ['index']]); - $this->middleware('permission:hmis-category-create', ['only' => ['create', 'store']]); - $this->middleware('permission:hmis-category-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:hmis-category-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - * - */ - public function index() { - $hmis_categories = HmisCategory::orderBy('title', 'asc')->paginate(50); - - return view('clinical_data::hmis_categories.index', compact('hmis_categories')); - } - - /** - * Show the form for creating a new resource. - * - */ - public function create() { - return view('clinical_data::hmis_categories.create'); - } - - /** - * Store a newly created resource in storage. - * - */ - public function store(Request $request) { - request()->validate([ - 'title' => 'required' - ]); - - $logged_in_user_id = Auth()->user()->id; - $hmis_category = new HmisCategory; - - $hmis_category->title = $request->title; - $hmis_category->number = $request->number; - $hmis_category->type = $request->type; - $hmis_category->created_by = $logged_in_user_id; - $hmis_category->updated_by = $logged_in_user_id; - - try { - $hmis_category->save(); - flash($request->title . " HMIS Category has been saved")->success(); - return redirect("/hmis_categories/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - */ - public function edit($id) { - $hmis_category = HmisCategory::where(['id' => $id])->first(); - - if (!$hmis_category) { - flash()->error("There is no such HMIS Category"); - return redirect('/hmis_categories/'); - } else { - return view('clinical_data::hmis_categories.edit', compact('hmis_category')); - } - } - - /** - * Update the specified resource in storage. - * - */ - public function update(Request $request, $id) { - request()->validate([ - 'title' => 'required' - ]); - - $logged_in_user_id = Auth()->user()->id; - $hmis_category = HmisCategory::find($id); - - $hmis_category->title = $request->title; - $hmis_category->number = $request->number; - $hmis_category->type = $request->type; - $hmis_category->updated_by = $logged_in_user_id; - - try { - $hmis_category->save(); - flash($request->title . " HMIS Category has been updated")->success(); - return redirect("/hmis_categories/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - */ - public function destroy($id) { - $hmis_category = HmisCategory::find($id); - - if ($hmis_category->delete()): - flash("HMIS Category has been deleted.")->success(); - return redirect('/hmis_categories/'); - endif; - } - - /** - * Display a listing of the inactive resource(s). - * - */ - public function inactive() { - $hmis_categories = HmisCategory::onlyTrashed() - ->orderBy('title', 'asc') - ->paginate(50); - - if (empty($hmis_categories)) { - flash()->error("There is no inactive HMIS Category"); - return redirect('/hmis_categories/'); - } else { - return view('clinical_data::hmis_categories.inactive', compact('hmis_categories')); - } - } - - /** - * Activate the specified resource in storage. - * - */ - public function activate($id) { - $hmis_category = HmisCategory::withTrashed()->find($id); - - if ($hmis_category->restore()): - flash("HMIS Category has been activated.")->success(); - return redirect('/hmis_categories/inactive'); - endif; - } - -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/HmisCategoryOptionsController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/HmisCategoryOptionsController.php deleted file mode 100644 index ed743555..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/HmisCategoryOptionsController.php +++ /dev/null @@ -1,168 +0,0 @@ -select("id","number","title","type","section_number")->get()->toArray(); - $category_options = HmisCategoryOptions::orderBy('name', 'asc')->select("id","name","number","hmis_category_id")->get(); - - return view('clinical_data::hmis_categories_options.index', compact('hmis_categories','category_options')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - $hmis_categories = HmisCategory::orderBy('title', 'asc')->get(); - return view('clinical_data::hmis_categories_options.create', compact('hmis_categories')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - request()->validate([ - 'name' => 'required', - 'number' => 'required', - 'hmis_category' => 'required' - ]); - - $option = new HmisCategoryOptions; - - $option->name = $request->name; - $option->number = $request->number; - $option->hmis_category_id = $request->hmis_category; - $option->created_by = Auth()->user()->id; - - try { - $option->save(); - flash($request->name . " HMIS Category Option has been saved")->success(); - return redirect("/hmis_categories_options/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) - { - $option = HmisCategoryOptions::findOrFail($id); - $type = HmisCategory::find($option->hmis_category_id); - $hmis_categories = HmisCategory::orderBy('title', 'asc')->get()->toArray(); - return view('clinical_data::hmis_categories_options.edit', compact('option', 'hmis_categories', 'type')); - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - - request()->validate([ - 'name' => 'required', - 'number' => 'required', - 'hmis_category' => 'required' - ]); - $option = HmisCategoryOptions::findOrFail($id); - - $option->name = $request->name; - $option->number = $request->number; - $option->hmis_category_id = $request->hmis_category; - $option->updated_by = Auth()->user()->id; - try { - $option->save(); - flash($request->name . " HMIS Category Option has been updated.")->success(); - return redirect("/hmis_categories_options/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - $option = HmisCategoryOptions::findOrFail($id); - - if ($option->delete()) { - flash("HMIS Category Option has been deleted.")->success(); - return redirect('/hmis_categories_options/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - */ - public function inactive() { - $options = HmisCategoryOptions::onlyTrashed()->orderBy('name', 'asc')->paginate(50); - return view('clinical_data::hmis_categories_options.inactive', compact('options')); - } - - /** - * Activate the specified resource in storage. - * - */ - public function activate($id) { - $option = HmisCategoryOptions::withTrashed()->find($id); - - if ($option->restore()): - flash("HMIS Category Option has been activated.")->success(); - return redirect('/hmis_categories_options/inactive'); - endif; - } - - public function get_hmis_type_options (Request $request) { - $options = HmisCategory::where('type', $request->type)->get(); - $data =''; - foreach($options as $option){ - $data .= ''; - } - return $data; - } -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/ObservationController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/ObservationController.php deleted file mode 100755 index 6307fa2a..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/ObservationController.php +++ /dev/null @@ -1,240 +0,0 @@ -middleware('auth'); - $this->middleware('permission:observation-list', ['only' => ['index']]); - $this->middleware('permission:observation-create', ['only' => ['create', 'store']]); - $this->middleware('permission:observation-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:observation-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $observations = Observation::orderBy('name', 'asc')->paginate(50); - - return view('clinical_data::observations.index', compact('observations')); - } - - /** - * Show the form for creating a new resource. - * - */ - public function create() { - $age_groups = AgeGroup::orderBy('name', 'asc') - ->pluck('name', 'id') - ->toArray(); - - return view('clinical_data::observations.create', compact('age_groups')); - } - - /** - * Store a newly created resource in storage. - * - */ - public function store(Request $request) { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - $observation = new Observation; - $observation->name = $request->name; - $observation->measurement = $request->measurement; - - if ($request->options_or_range == "2") { - $options = implode(',', $request->options); - - if ($options == "") { - flash("Please select options for this observation")->error(); - return back()->withInput(); - } - - $observation->options = $options; - } - - $observation->option_for_normal = $request->option_for_normal; - $observation->lower_limit = $request->lower_limit; - $observation->upper_limit = $request->upper_limit; - - if(is_array($request->age_group)){ - $age_group = implode(',', $request->age_group); - } else { - $age_group = ""; - } - - $observation->age_group = $age_group; - $observation->slug = str_replace(' ', '_', strtolower($request->name)); - $observation->compulsory = $request->compulsory; - $observation->created_by = $logged_in_user_id; - $observation->updated_by = $logged_in_user_id; - try { - $observation->save(); - flash($request->name . " Observation has been saved")->success(); - return redirect("/observations/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $observation = Observation::where(['id' => $id])->first(); - - $age_groups = AgeGroup::orderBy('name', 'asc') - ->pluck('name', 'id') - ->toArray(); - - if (!$observation) { - flash()->error("There is no such observation"); - return redirect('/observations/'); - } else { - return view('clinical_data::observations.edit', compact('observation', 'age_groups')); - } - } - - /** - * Update the specified resource in storage. - * - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - - $observation = Observation::find($id); - $observation->name = $request->name; - $observation->measurement = $request->measurement; - - if ($request->options_or_range == "2") { - if (!is_array($request->options)) { - flash("Please select options for this observation")->error(); - return back()->withInput(); - } - - $options = implode(',', $request->options); - - $observation->options = $options; - } else { - $observation->options = NULL; - } - - $observation->option_for_normal = $request->option_for_normal; - $observation->lower_limit = $request->lower_limit; - $observation->upper_limit = $request->upper_limit; - - if(is_array($request->age_group)){ - $age_group = implode(',', $request->age_group); - } else { - $age_group = ""; - } - - $observation->age_group = $age_group; - $observation->compulsory = $request->compulsory; - $observation->created_by = $logged_in_user_id; - $observation->updated_by = $logged_in_user_id; - try { - $observation->save(); - flash($request->name . " Observation has been updated")->success(); - return redirect("/observations/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $observation = Observation::find($id); - - if ($observation->delete()): - flash("Observation has been deleted.")->success(); - return redirect('/observations/'); - endif; - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $observations = Observation::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($observations) < 1) { - flash()->error("There is no inactive observation"); - return redirect('/observations/'); - } else { - return view('clinical_data::observations.inactive', compact('observations')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $observation = Observation::withTrashed()->find($id); - - if ($observation->restore()){ - flash("Observation has been activated.")->success(); - return redirect('/observations/inactive'); - } - } - - public function get_observation_info($id) { - $observation = Observation::find($id); - - $return_data = []; - - if ($observation) { - $return_data["error"] = 0; - $return_data["slug"] = $observation->slug; - $return_data["normal_range"] = $observation->lower_limit . ' - ' . $observation->upper_limit; - } else { - $return_data["error"] = 1; - } - - return json_encode($return_data); - } -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/OccupationController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/OccupationController.php deleted file mode 100755 index f17aad94..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/OccupationController.php +++ /dev/null @@ -1,191 +0,0 @@ -middleware('auth'); - $this->middleware('permission:occupation-list', ['only' => ['index']]); - $this->middleware('permission:occupation-detail', ['only' => ['show']]); - $this->middleware('permission:occupation-create', ['only' => ['create', 'store']]); - $this->middleware('permission:occupation-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:occupation-delete', ['only' => ['destroy']]); - $this->middleware('permission:occupation-status', ['only'=>['inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $occupations = Occupation::orderBy('name', 'asc') - ->paginate(50); - return view('clinical_data::occupations.index', compact('occupations')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - return view('clinical_data::occupations.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - - $validator = Validator::make($request->all(), [ - "name" => "required|min:4" - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $occupation = new Occupation; - - $occupation->name = $request->name; - $occupation->created_by = Auth::user()->id; - $occupation->updated_by = Auth::user()->id; - - try { - $occupation->save(); - flash($request->name . " Occupation has been saved")->success(); - return redirect("/occupations/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $occupation = Occupation::where(['id' => $id])->first(); - - if (!$occupation) { - flash()->error("Occupation not found"); - return redirect('/occupations/'); - } else { - return view('clinical_data::occupations.edit', compact('occupation')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } -// flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - //validation passed - $occupation = Occupation::find($id); - $occupation->name = $request->name; - - try { - $occupation->save(); - flash($request->name . " Occupation has been updated")->success(); - return redirect("/occupations/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $occupation = Occupation::find($id); - - if ($occupation->delete()): - flash("Occupation has been deleted.")->success(); - return redirect('/occupations/'); - endif; - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $occupations = Occupation::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($occupations) < 1) { - flash()->error("There is no inactive occupation"); - return redirect('/occupations/'); - } else { -// Log::info($occupations); - return view('clinical_data::occupations.inactive', compact('occupations')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $occupation = Occupation::withTrashed()->find($id); - - if ($occupation->restore()): - flash("Occupation has been activated.")->success(); - return redirect('/occupations/inactive'); - endif; - } - -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/OutcomeController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/OutcomeController.php deleted file mode 100755 index 30ef06a6..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/OutcomeController.php +++ /dev/null @@ -1,296 +0,0 @@ -middleware('auth'); - $this->middleware('permission:outcome-list', ['only' => ['index']]); - $this->middleware('permission:outcome-create', ['only' => ['create', 'store']]); - $this->middleware('permission:outcome-edit', ['only' => ['edit', 'update', 'edit_all', 'update_all']]); - $this->middleware('permission:outcome-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() - { - $outcomes = Outcome::orderBy('name', 'asc')->paginate(2000); - - return view('clinical_data::outcomes.index', compact('outcomes')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - return view('clinical_data::outcomes.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - $outcome = new Outcome; - - $outcome->name = $request->name; - $outcome->created_by = $logged_in_user_id; - $outcome->updated_by = $logged_in_user_id; - try { - $outcome->save(); - flash($request->name . " Outcome has been saved")->success(); - return redirect("/outcomes/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) - { - $outcome = Outcome::where(['id' => $id])->first(); - - if (!$outcome) { - flash()->error("There is no such outcome"); - return redirect('/outcomes/'); - } else { - return view('clinical_data::outcomes.edit', compact('outcome')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - - $outcome = Outcome::find($id); - $outcome->name = $request->name; - $outcome->updated_by = $logged_in_user_id; - - try { - $outcome->save(); - flash($request->name . " Outcome has been updated")->success(); - return redirect("/outcomes/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - $outcome = Outcome::find($id); - - if ($outcome->delete()) { - flash("Outcome has been deleted.")->success(); - return redirect('/outcomes/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() - { - $outcomes = Outcome::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($outcomes) < 1) { - flash()->error("There is no inactive outcome"); - return redirect('/outcomes/'); - } else { - return view('clinical_data::outcomes.inactive', compact('outcomes')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) - { - $outcome = Outcome::withTrashed()->find($id); - - if ($outcome->restore()) { - flash("Outcome has been activated.")->success(); - return redirect('/outcomes/inactive'); - } - } - - /** - * Search a resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function search(Request $request) - { - $query_name = $request->query_name; - $query_active = $request->query_active; - - if ($query_name != "") { - $outcomes = Outcome::where([ - ['active', '=', $query_active], - ['name', 'LIKE', '%' . $query_name . '%'] - ]) - ->orderBy('name', 'asc') - ->paginate(10) - ->setPath(''); - - $outcomes->appends(array( - 'query_name' => $query_name, - 'query_active' => $query_active - )); - - if (count($outcomes)) { - if ($query_active) { - return view('clinical_data::outcomes.index', compact('outcomes')) //; - ->withDetails($outcomes) - ->withQuery($query_name, $query_active); - } else { - return view('clinical_data::outcomes.inactive', compact('outcomes')) //; - ->withDetails($outcomes) - ->withQuery($query_name, $query_active); - } - } - } - flash()->error("No Details found. Try searching again!"); - return redirect('/outcomes/'); - } - - /** - * Display a listing of the active resources for bulk editing. - * - * @return \Illuminate\Http\Response - */ - public function edit_all() - { - $outcomes = Outcome::orderBy('name', 'asc')->paginate(2000); - - if (count($outcomes) < 1) { - flash()->error("There is no active outcome"); - return redirect('/outcomes/'); - } else { - return view('clinical_data::outcomes.edit.all', compact('outcomes')); - } - } - - /** - * Update all the resources in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function update_all(Request $request) - { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - - $id_array = $request->id; - $name_array = $request->name; - - for ($x = 0; $x < count($id_array); $x++) { - $outcome = Outcome::find($id_array[$x]); - - $outcome->name = $name_array[$x]; - $outcome->updated_by = $logged_in_user_id; - - try { - $outcome->save(); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - flash("Outcomes have been updated")->success(); - return redirect("/outcomes/"); - } - - public function get_outcomes() - { - //code to be returned to view - $code = ""; - - $outcomes = Outcome::orderBy('name', 'asc')->get(); - - foreach ($outcomes as $outcome) { - $code .= ""; - } - - return $code; - } - - /* test server side scolling with datatables */ - public function datatable_test() - { - $outcomes = Outcome::orderBy('name', 'asc')->get(); - - return response()->json($outcomes); - } -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/PackageUnitController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/PackageUnitController.php deleted file mode 100755 index 0516e34f..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/PackageUnitController.php +++ /dev/null @@ -1,167 +0,0 @@ -get(); - - return view('clinical_data::package_units.index', compact('package_units')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - return view('clinical_data::package_units.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = auth()->user()->id; - $package_unit = new PackageUnit; - - $package_unit->name = $request->name; - $package_unit->created_by = $logged_in_user_id; - $package_unit->updated_by = $logged_in_user_id; - - try { - $package_unit->save(); - flash($request->name . " has been saved")->success(); - return redirect("/package_unit/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit(PackageUnit $package_unit) - { - if (!$package_unit) { - flash()->error("There is no such Unit of Measure"); - return redirect('/package_unit/'); - } else { - return view('clinical_data::package_units.edit', compact('package_unit')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = auth()->user()->id; - $package_unit = PackageUnit::find($id); - - $package_unit->name = $request->name; - $package_unit->updated_by = $logged_in_user_id; - - try { - $package_unit->save(); - flash($request->name . " has been updated")->success(); - return redirect("/package_unit/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy(PackageUnit $package_unit) - { - if ($package_unit->delete()): - flash($package_unit->name." has been deleted.")->success(); - return redirect('/package_unit/'); - endif; - - flash('Unable to delete package unit')->error(); - return redirect('package_unit'); - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $package_units = PackageUnit::onlyTrashed() - ->orderBy('name', 'asc') - ->get(); - - if (count($package_units) < 1) { - flash()->error("There is no inactive package unit"); - return redirect('/package_unit/'); - } else { - return view('clinical_data::package_units.inactive', compact('package_units')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $package_unit = PackageUnit::withTrashed()->find($id); - - if ($package_unit->restore()): - flash("Unit has been activated.")->success(); - return redirect('/package_unit_inactive'); - endif; - } -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/ParishController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/ParishController.php deleted file mode 100755 index 4c156393..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/ParishController.php +++ /dev/null @@ -1,195 +0,0 @@ -middleware('auth'); - $this->middleware('permission:parish-list', ['only' => ['index']]); - $this->middleware('permission:parish-create', ['only' => ['create', 'store']]); - $this->middleware('permission:parish-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:parish-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $parishes = Parish::orderBy('name', 'asc')->get(); - - $sub_counties = Subcounty::withTrashed()->pluck('name', 'id'); - - return view('clinical_data::parishes.index', compact('parishes', 'sub_counties')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - $subcounties = Subcounty::all(['id', 'name', 'county_id'])->pluck("name_with_county", "id")->prepend('- select -', '')->toArray(); - - return view('clinical_data::parishes.create', compact('subcounties')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - - $validator = Validator::make($request->all(), [ - 'name' => 'required', - 'sub_county_id' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - - } - - $user_id = Auth::user()->id; - $parish = new Parish; - - $parish->name = $request->name; - $parish->subcounty_id = $request->sub_county_id; - $parish->created_by = $user_id; - $parish->updated_by = $user_id; - - try { - $parish->save(); - flash($request->name . " Parish has been saved")->success(); - return redirect("/parishes/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $parish = Parish::where(['id' => $id])->first(); - - $sub_counties = Subcounty::all(['id', 'name', 'county_id'])->pluck("name_with_county", "id")->prepend('- select -', '')->toArray(); - - if (!$parish) { - flash()->error("That parish is not registered"); - return redirect('/parishes/'); - } else { - return view('clinical_data::parishes.edit', compact('parish', 'sub_counties')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required', - 'sub_county_id' => 'required' - ]); - - $parish = Parish::find($id); - - $parish->name = $request->name; - $parish->subcounty_id = $request->sub_county_id; - $parish->updated_by = Auth::user()->id; - - try { - $parish->save(); - flash($request->name . " Parish has been updated")->success(); - return redirect("/parishes/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $parish = Parish::find($id); - - if ($parish->delete()) { - flash("Parish has been deleted.")->success(); - return redirect('/parishes/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $parishes = Parish::onlyTrashed() - ->orderBy('name', 'asc') - ->get(); - - $sub_counties = Subcounty::pluck('name', 'id'); - - if (count($parishes) < 1) { - flash()->error("There is no inactive parishes"); - return redirect('/parishes/'); - } - - return view('clinical_data::parishes.inactive', compact('parishes', 'sub_counties')); - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $parish = Parish::withTrashed()->find($id); - - if($parish->restore()){ - flash("Parish has been activated.")->success(); - return redirect('/parishes/inactive'); - } - } - -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/PatientCategoryController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/PatientCategoryController.php deleted file mode 100755 index dc7d3e5e..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/PatientCategoryController.php +++ /dev/null @@ -1,207 +0,0 @@ -middleware('auth'); - $this->middleware('permission:patient_category-list', ['only' => ['index']]); - $this->middleware('permission:patient_category-detail', ['only' => ['show']]); - $this->middleware('permission:patient_category-create', ['only' => ['create', 'store']]); - $this->middleware('permission:patient_category-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:patient_category-delete', ['only' => ['destroy']]); - $this->middleware('permission:patient_category-status', ['only' => ['activate, inactive']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $patient_categories = PatientCategory::orderBy('name', 'asc')->get(); - - $used_categories = Patient::distinct('category_id')->get(['category_id']); - $used_categories_data = []; - foreach ($used_categories as $value) if(!empty($value->category_id)) $used_categories_data[] = $value->category_id; - - return view('clinical_data::patient_categories.index', compact('patient_categories', 'used_categories_data')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - return view('clinical_data::patient_categories.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth()->user()->id; - $patient_category = new PatientCategory; - - $patient_category->name = $request->name; - $patient_category->available = $request->available; - if ($request->set_credit_limit == 1 && $request->credit_limit != 0) { - $patient_category->credit_limit = $request->credit_limit; - } - $patient_category->created_by = $logged_in_user_id; - $patient_category->updated_by = $logged_in_user_id; - - try { - $patient_category->save(); - flash($request->name . " Patient Category has been saved")->success(); - return redirect("/patient_categories/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) - { - $patient_categories = PatientCategory::where(['id' => $id])->first(); - - if (!$patient_categories) { - flash()->error("There is no such category"); - } else { - return view('clinical_data::patient_categories.edit', compact('patient_categories')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth()->user()->id; - - $patient_category = PatientCategory::find($id); - $patient_category->name = $request->name; - $patient_category->available = $request->available; - $patient_category->updated_by = $logged_in_user_id; - - try { - $patient_category->save(); - flash($request->name . " Patient Category has been updated")->success(); - return redirect("/patient_categories/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - $patient_categories = PatientCategory::find($id); - if ($patient_categories->delete()): - flash("Category has been deleted.")->success(); - return redirect('/patient_categories/'); - endif; - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $patient_categories = PatientCategory::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(10); - - if (empty($patient_categories)) { - flash()->error("There is no inactive patient category"); - return redirect('/patient_categories/'); - } else { - return view('clinical_data::patient_categories.inactive', compact('patient_categories')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $patient_category = PatientCategory::withTrashed()->find($id); - - if ($patient_category->restore()): - flash("Patient Category has been activated.")->success(); - return redirect('/patient_categories/'); - endif; - } -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/PatientRegistrationFieldController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/PatientRegistrationFieldController.php deleted file mode 100644 index 914a585c..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/PatientRegistrationFieldController.php +++ /dev/null @@ -1,171 +0,0 @@ -middleware('auth'); - $this->middleware('permission:list-patient-registration-fields', ['only' => ['index', 'select']]); - $this->middleware('permission:create-patient-registration-field', ['only' => ['create', 'store']]); - $this->middleware('permission:edit-patient-registration-field', ['only' => ['edit', 'update']]); - $this->middleware('permission:delete-patient-registration-field', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() - { - $patient_registration_fields = PatientRegistrationField::orderBy('name', 'asc')->paginate(50); - - return view('clinical_data::patient_registration_fields.index', compact('patient_registration_fields')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - return view('clinical_data::patient_registration_fields.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - request()->validate([ - 'name' => 'required|string|max:255|unique:patient_registration_fields', - 'compulsory'=> 'required|in:1,0' - ]); - - $patient_registration_field = new PatientRegistrationField(); - $patient_registration_field->name = $request->name; - $patient_registration_field->compulsory = $request->compulsory; - $patient_registration_field->options = ($request->options_or_range == '2')? implode(',', $request->options):null; - $patient_registration_field->created_by = Auth::id(); - - try { - $patient_registration_field->save(); - flash($request->name . " Patient registration field has been saved")->success(); - return redirect("/patient_registration_fields/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) - { - $patient_registration_field = PatientRegistrationField::findOrFail($id); - return view('clinical_data::patient_registration_fields.edit', compact('patient_registration_field')); - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - request()->validate([ - 'name' => 'required|string|max:255|unique:patient_registration_fields,name,'.$id, - 'compulsory'=> 'required|in:1,0' - ]); - - $patient_registration_field = PatientRegistrationField::find($id); - $patient_registration_field->name = $request->name; - $patient_registration_field->compulsory = $request->compulsory; - $patient_registration_field->options = ($request->options_or_range == '2')? implode(',', $request->options):null; - $patient_registration_field->updated_by = Auth::id(); - try { - $patient_registration_field->save(); - flash($request->name . " Patient registration field has been updated")->success(); - return redirect("/patient_registration_fields/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - $patient_registration_field = PatientRegistrationField::findOrFail($id); - - if ($patient_registration_field->delete()) { - flash("Patient Registration Field has been deleted.")->success(); - return redirect('/patient_registration_fields/'); - } - } - - /** - * Display a listing of the inactive resources. - * - * @return \Illuminate\Http\Response - */ - public function inactive() - { - $patient_registration_fields = PatientRegistrationField::onlyTrashed()->orderBy('created_at', 'desc')->paginate(50); - - return view('clinical_data::patient_registration_fields.inactive', compact('patient_registration_fields')); - - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) - { - $patient_registration_field = PatientRegistrationField::onlyTrashed()->findOrFail($id); - - if ($patient_registration_field->restore()) { - flash("Patient Registration Field has been activated.")->success(); - return redirect('/patient_registration_fields/'); - } else { - flash()->error("Patient Registration Field hasn't been activated."); - return redirect()->route('patient_registration_fields.inactive'); - } - } -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/ProcedureCategoriesController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/ProcedureCategoriesController.php deleted file mode 100755 index f21ec6b6..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/ProcedureCategoriesController.php +++ /dev/null @@ -1,173 +0,0 @@ -middleware('auth'); - $this->middleware('permission:procedure-category-list', ['only' => ['index']]); - $this->middleware('permission:procedure-category-create', ['only' => ['create', 'store']]); - $this->middleware('permission:procedure-category-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:procedure-category-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $categories = ProcedureCategory::orderBy('name', 'asc') ->paginate(50); - - return view('clinical_data::procedure_categories.index', compact('categories')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - return view('clinical_data::procedure_categories.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - request()->validate([ - 'name' => 'required' - ]); - - //validation passed - $procedure_category = new ProcedureCategory; - $logged_in_user_id = Auth::user()->id; - - $procedure_category->name = $request->name; - $procedure_category->created_by = $logged_in_user_id; - $procedure_category->updated_by = $logged_in_user_id; - - try { - $procedure_category->save(); - flash($request->name . " Procedure Category has been saved")->success(); - return redirect("/procedure_categories/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $categories = ProcedureCategory::where(['id' => $id])->first(); - - if (!$categories) { - flash()->error("Procedure Category not found"); - return redirect("/procedure_categories/"); - } else { - return view('clinical_data::procedure_categories.edit', compact('categories')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required' - ]); - - //validation passed - $procedure_category = ProcedureCategory::find($id); - $logged_in_user_id = Auth::user()->id; - - $procedure_category->name = $request->name; - $procedure_category->updated_by = $logged_in_user_id; - - try { - $procedure_category->save(); - flash($request->name . " Procedure Category has been updated")->success(); - return redirect("/procedure_categories/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $procedure_categories = ProcedureCategory::find($id); - - if ($procedure_categories->delete()): - flash("Category has been deleted.")->success(); - return redirect('/procedure_categories/'); - endif; - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $categories = ProcedureCategory::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($categories) < 1) { - flash()->error("There is no inactive Category"); - return redirect('/procedure_categories/'); - } else { - return view('clinical_data::procedure_categories.inactive', compact('categories')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $procedure_categories = ProcedureCategory::withTrashed()->find($id); - - if ($procedure_categories->restore()): - flash("Category has been activated.")->success(); - return redirect('/procedure_categories/inactive'); - endif; - } - -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/ProcedureController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/ProcedureController.php deleted file mode 100755 index 0e0a64b3..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/ProcedureController.php +++ /dev/null @@ -1,562 +0,0 @@ -middleware('auth'); - $this->middleware('permission:procedure-list', ['only' => ['index']]); - $this->middleware('permission:procedure-create', ['only' => ['create', 'store']]); - $this->middleware('permission:procedure-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:procedure-delete', ['only' => ['destroy', 'inactive', 'activate']]); - $this->setupService = $setupService; - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $procedures = Procedure::where('available', 1)->orderBy('name', 'asc')->get(); - $chart_of_accounts = ChartOfAccount::orderBy('name', 'asc')->pluck('name', 'id'); - - $ordered_procedures_array = []; - $ordered_procedures = OrderedProcedure::distinct('procedure_id')->get(['procedure_id']); - foreach ($ordered_procedures as $ordered_procedure) { - $actual = explode(',', $ordered_procedure->procedure_id); - foreach ($actual as $value) $ordered_procedures_array[] = $value; - } - $ordered_procedures_ids = array_unique($ordered_procedures_array); - - $categories = ProcedureCategory::orderBy('name', 'asc')->pluck('name', 'id'); - $hmis_categories = DB::table('hmis_categories')->orderBy('title', 'asc')->pluck('title', 'id')->toArray(); - - return view('clinical_data::procedures.index', compact('procedures', 'chart_of_accounts', 'categories', 'hmis_categories', 'ordered_procedures_ids')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - $procedure_categories = ProcedureCategory::pluck('name', 'id') - ->toArray(); - - $procedure_categories = ['' => '- select -'] + $procedure_categories; - - $chart_of_accounts = ChartOfAccount::orderBy('name', 'asc') - ->pluck('name', 'id') - ->toArray(); - - $chart_of_accounts = ['' => '- select -'] + $chart_of_accounts; - - $procedures = StreamlineSetupManager::get_procedures_array(); - - $hmis_categories = HmisCategory::all('title', 'id','number','type', 'section_number')->toArray(); - - return view('clinical_data::procedures.create', compact('procedure_categories', 'chart_of_accounts','procedures', 'hmis_categories')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - if (session()->has('streamline_setup')){ - //skip validation - } else { - request()->validate([ - 'name' => 'required', - 'non_insured_price' => 'required', - 'account_id' => 'required', - 'category' => 'required', - 'procedure_type' => 'required', - 'hmis_category_inpatient'=>'nullable|required_if:procedure_type,1|required_with:hmis_category_inpatient_options', - 'hmis_category_inpatient_options'=>'nullable|required_with:hmis_category_inpatient', - 'hysterectomy_type'=>'nullable|required_if:hmis_category_inpatient_options,5' - ]); - } - if (session()->has('streamline_setup')&& isset($request->skip)){ - //update the streamline setup table with the new finished step - $this->setupService->saveStep("procedures registration", 1); - return redirect("sundries/create"); - } - - // get all current price lists - $price_list = PriceListCategories::withTrashed()->select('id')->get(); - $price_list_category = []; - $price_list_price = []; - - foreach ($price_list as $record){ - array_push($price_list_category, $record->id); - array_push($price_list_price, $request->non_insured_price); - } - - $logged_in_user_id = Auth()->user()->id; - $procedure = new Procedure; - - $procedure->name = $request->name; - $procedure->code = $request->code; - $procedure->reference_link = !empty($request->reference_link)? implode(',',$request->reference_link):null; - $procedure->reference_text = !empty($request->reference_text)? implode(',',$request->reference_text):null; - $procedure->non_insured_price = $request->non_insured_price; - $procedure->insured_price = 0; - $procedure->available = $request->available; - - if (isset($request->price_list_category_id) && isset($request->price_list_price)) { - $procedure->price_list_category = !is_null($request->price_list_category_id) ? implode(",", $request->price_list_category_id) : null; - $procedure->price_list_price = !is_null($request->price_list_price) ? implode(",", $request->price_list_price) : null; - } else { - $procedure->price_list_category = implode(",", $price_list_category); - $procedure->price_list_price = implode(",", $price_list_price); - } - - $procedure->account_id = $request->account_id; - $procedure->category_id = $request->category; - $procedure->hmis_number = $request->hmis_number; - /*== hmis stuff =====*/ - $procedure->hmis_no_outpatient = (!empty($request->hmis_no_outpatient[0]))? implode(",", $request->hmis_no_outpatient) : null; - $procedure->hmis_category = is_array($request->hmis_category) ? implode(",", $request->hmis_category) : ""; - $procedure->hmis_no_inpatient = ($request->hmis_category_inpatient_options != '5')? $request->hmis_category_inpatient_options:$request->hysterectomy_type; - $procedure->hmis_category_inpatient = $request->hmis_category_inpatient; - $procedure->hmis_inpatient_type = $request->procedure_type; - /*===================*/ - $procedure->created_by = $logged_in_user_id; - $procedure->updated_by = $logged_in_user_id; - - try { - if ($procedure->name != "" && !is_null($procedure->name)) { - $procedure->save(); - } - - flash($request->name . " Procedure has been saved")->success(); - - if (session()->has('streamline_setup')) { - if (isset($request->selected_procedures)) { - $selected_procedures_array = $request->selected_procedures; - if (!empty($selected_procedures_array)) { - - for ($i=0; $i < count($selected_procedures_array) ; $i++) { - /* try this magic to get details for the selected service */ - $procedures_array = StreamlineSetupManager::get_procedures_array(); - $key = array_search($selected_procedures_array[$i], array_column($procedures_array, 'Procedure_Name')); - $procedure_details = $procedures_array[$key]; - /* end of magic trial */ - - $default_procedure = new Procedure; - $default_procedure->name = $procedure_details['Procedure_Name']; - $default_procedure->insured_price = 0; - $default_procedure->non_insured_price = 0; - $default_procedure->category_id = $procedure_details['Category']; - $default_procedure->account_id = $procedure_details['Account_Id']; - $default_procedure->save(); - } - } - } - //update the streamline setup table with the new finished step - $this->setupService->saveStep("procedures registration", 1); - // $streamline_setup = new \Streamline\Models\StreamlineSetupStep; - // $streamline_setup->step = "procedures registration"; - // $streamline_setup->completion_status = 1; - // $streamline_setup->save(); - return redirect("sundries/create"); - } - return redirect("/procedures/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $procedure = Procedure::where(['id' => $id])->first(); - - $procedure_categories = ProcedureCategory::pluck('name', 'id') - ->toArray(); - $procedure_categories = ['' => '- select -'] + $procedure_categories; - - $chart_of_accounts = ChartOfAccount::orderBy('name', 'asc') - ->pluck('name', 'id') - ->toArray(); - - $chart_of_accounts = ['' => '- select -'] + $chart_of_accounts; - - // $hmis_categories = DB::table('hmis_categories')->orderBy('title', 'asc')->pluck('title', 'id')->toArray(); - - // $hmis_categories = ['' => '- select -'] + $hmis_categories; - $hmis_categories_options = []; - $hmis_categories = HmisCategory::all('title', 'id','number','type', 'section_number')->toArray(); - $categories_options = DB::table('hmis_category_options')->where('hmis_category_id', $procedure->hmis_category_inpatient)->get(); - foreach ($categories_options as $options) $hmis_categories_options[] =['id'=>$options->id, 'name'=>$options->name, 'number'=>$options->number]; - if (!$procedure) { - flash()->error("There is no such procedure"); - return redirect('/procedures/'); - } else { - return view('clinical_data::procedures.edit', compact('procedure', 'procedure_categories', 'chart_of_accounts', 'hmis_categories','hmis_categories_options')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required', - 'non_insured_price' => 'required', - 'account_id' => 'required', - 'category' => 'required', - 'procedure_type' => 'required', - 'hmis_category_inpatient'=>'nullable|required_if:procedure_type,1|required_with:hmis_category_inpatient_options', - 'hmis_category_inpatient_options'=>'nullable|required_with:hmis_category_inpatient', - 'hysterectomy_type'=>'nullable|required_if:hmis_category_inpatient_options,5' - ]); - - $logged_in_user_id = Auth()->user()->id; - - $procedure = Procedure::find($id); - - $procedure->name = $request->name; - $procedure->code = $request->code; - $procedure->non_insured_price = $request->non_insured_price; - $procedure->available = $request->available; - $procedure->reference_link = !empty($request->reference_link)? implode(',',$request->reference_link):null; - $procedure->reference_text = !empty($request->reference_text)? implode(',',$request->reference_text):null; - $procedure->insured_price = 0; - $procedure->insurance = 0; - $procedure->price_list_category = !is_null($request->price_list_category_id) ? implode(",", $request->price_list_category_id) : null; - $procedure->price_list_price = !is_null($request->price_list_price) ? implode(",", $request->price_list_price) : null; - $procedure->account_id = $request->account_id; - $procedure->category_id = $request->category; - $procedure->hmis_number = $request->hmis_number; - /*== hmis stuff =====*/ - $procedure->hmis_no_outpatient = (!empty($request->hmis_no_outpatient[0]))? implode(",", $request->hmis_no_outpatient):null; - // $procedure->hmis_category = implode(",", $request->hmis_category); - /*== Hmis 108 stuff =====*/ - $procedure->hmis_no_inpatient = ($request->hmis_category_inpatient_options != '5')? $request->hmis_category_inpatient_options:$request->hysterectomy_type; - $procedure->hmis_category_inpatient = $request->hmis_category_inpatient; - $procedure->hmis_inpatient_type = $request->procedure_type; - /*===================*/ - $procedure->updated_by = $logged_in_user_id; - - try { - $procedure->save(); - flash($request->name . " Procedure has been updated")->success(); - return redirect("/procedures/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $procedure = Procedure::find($id); - - if ($procedure->delete()): - flash("Procedure has been deleted.")->success(); - return redirect('/procedures/'); - endif; - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $procedures = Procedure::onlyTrashed() - ->orderBy('name', 'asc') - ->get(); - - $chart_of_accounts = DB::table('chart_of_accounts') - ->orderBy('name', 'asc') - ->pluck('name', 'id'); - - $categories = DB::table('procedure_categories') - ->orderBy('name', 'asc') - ->pluck('name', 'id'); - - if (count($procedures) < 1) { - flash()->error("There is no inactive procedure"); - return redirect('/procedures/'); - } else { - return view('clinical_data::procedures.inactive', compact('procedures', 'chart_of_accounts', 'categories')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $procedure = Procedure::withTrashed()->find($id); - - if ($procedure->restore()): - flash("Procedure has been activated.")->success(); - return redirect('/procedures/inactive'); - endif; - } - - /** - * Order procedures for the patient - * - * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View - */ - public function order_procedures(){ - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $patient = Patient::where('id', $patient_id)->first(); - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $procedures = Procedure::where('available', 1)->orderBy('name')->pluck('name', 'id'); - - $ordered_procedures = DB::table('ordered_procedures')->whereNull('deleted_at') - ->where(['patient_id'=>$patient_id, 'episode_id'=>$episode_id, 'payment_status'=>0]) - ->first(); - - $users_collection = DB::table('users')->orderBy("first_name","asc")->select("id")->get()->toArray(); - $users_array = []; - foreach ($users_collection as $value){ - $user = \Streamline\Models\User::find($value->id); - if (!is_null($user)) { - $users_array[$value->id] = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users'); - } - } - $users_array = ['' => '- select -'] + $users_array; - - $employees = DB::table('users')->whereNull('deleted_at')->orderBy('first_name', 'asc')->get(); - - return view('clinical_data::procedures.order_procedures',compact('patient_id','episode_id','patient','categories','employees','procedures','ordered_procedures', 'users_array')); - } - - /** - * Store ordered procedures for a patient episode - * - * @param Request $request - * @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector - */ - public function store_ordered_procedures(Request $request){ - if(is_null($request->procedure_id)){ - flash("No procedure has been selected")->error(); - return back()->withInput(); - } else { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $procedure_ids_array = $request->procedure_id; - $procedure_cost_array = $request->item_cost; - $procedure_performed = []; - $procedure_performed_id = []; - - //loop through performed procedures and update the performed column - $performed_procedures_array = $request->performed_procedures; - $performed_by_array = $request->procedure_performed_by; - $procedure_performed_by_amount = $request->procedure_performed_by_amount; - $procedure_performed_date = $request->procedure_performed_date; - - // filter to check if all entries have been filled for performed by and discard otherwise - for ($i = 0; $i < count($procedure_ids_array); $i++) { - if ($performed_procedures_array[$i] == 1 && ($performed_by_array[$i] != "" || $performed_by_array[$i] != null) && - ($procedure_performed_by_amount[$i] != "" || $procedure_performed_by_amount[$i] != null) && - ($procedure_performed_date[$i] != "" || $procedure_performed_date[$i] != null)) { - $procedure_performed_id[] = record_staff_that_has_performed_the_service_with_price($patient_id, $episode_id, 1, $procedure_ids_array[$i], 0, - $performed_by_array[$i], $procedure_performed_by_amount[$i], $procedure_performed_date[$i]); - $procedure_performed[] = 1; - } else { - $procedure_performed[] = 0; - $procedure_performed_id[] = 0; - } - } - - if (isset($request->order_id) && get_name($request->order_id, 'id', 'payment_status', 'ordered_procedures') == 0) { - $procedure_order = OrderedProcedure::find($request->order_id); - - // delete the previous preformed_by_ids - try { - DB::table('staff_performed_services')->whereIn('id', explode(",", $procedure_order->performed_id))->delete(); - } catch (\Exception $e) {} - } else { - $procedure_order = new OrderedProcedure; - $procedure_order->patient_id = $patient_id; - $procedure_order->episode_id = $episode_id; - $procedure_order->payment_status = 0; //0 by default to mean not paid - $procedure_order->created_by = auth()->user()->id; - } - - $procedure_order->procedure_id = implode(",", $procedure_ids_array); - $procedure_order->procedure_amount = implode(",", $procedure_cost_array); - $procedure_order->performed = implode(",", $procedure_performed); - $procedure_order->performed_id = implode(",", $procedure_performed_id); - $procedure_order->eye = implode(",", $request->eye); - $procedure_order->updated_by = auth()->user()->id; - $procedure_order->save(); - - // create an insurance claim for the ordered items - if ($request->patient_insurance_status == 1) { - generate_insurance_claim($procedure_order->id, 2); - } - - flash("Procedures have been saved")->success(); - - // redirect to consultation or patient_episode page depending on where the user is from - if (session()->has('redirect_to_consultation')) { - $url = session()->get('redirect_to_consultation'); - session()->forget('redirect_to_consultation'); - return redirect($url); - } elseif (session()->has('anc_visit_redirect')) { - $url = session()->get('anc_visit_redirect'); - session()->forget('anc_visit_redirect'); - return redirect($url); - } else { - if(session()->has('previous_action') && session()->get('previous_action') == 'anc_consultation_page') { - return redirect("ante_natal_clinic/route"); - session()->forget('previous_action'); - } - else return redirect("/patient_episodes"); - } - } - } - - public function fetch_procedure_performance_fee(Request $request) { - $patient_id = $request->patient_id; - $patient_category_id = get_name($patient_id, 'id', 'category_id', 'patients'); - $performed_by = $request->performed_by; - $item_id = $request->item_id; - - $price_list_category_details = \Streamline\Models\PriceListCategories::where(['patient_category_id' => $patient_category_id])->first(); - - if ($price_list_category_details) { - $price_list_category_id = $price_list_category_details->id; - - $fees_array = get_item_price_and_performance_fee_based_on_price_list_category($performed_by, $item_id, 1, $price_list_category_id); - - return ($fees_array[1] == 0) ? $fees_array[0] : $fees_array[1]; - } else { - //do this for cases where the there are no price lists for the patient's patient_category - $fees_array = get_item_price_and_performance_fee_array_without_price_list($item_id, $performed_by, 1); - - return ($fees_array[1] == 0) ? $fees_array[0] : $fees_array[1]; - } - } - - public function cancel_ordered_procedures($order_id) { - $ordered_procedure = OrderedProcedure::find($order_id); - - try { - $ordered_procedure->delete(); - - // check if there are any insurance claims available - $claim = InsuranceClaim::where('order_id', $order_id)->where('item_type', 2)->first(); - - if ($claim) { - $claim->delete(); - } - - return 1; - } catch (\Exception $exception) { - return 0; - } - } - - public function get_procedure_details(Request $request) { - $patient_id = $request->patient_id; - $patient_insurance_status = $request->patient_insurance_status ?? 0; - $is_inpatient = $request->is_inpatient == 1; - $ward_id = $request->ward_id ?? 0; - - $procedure = DB::table('procedures')->find($request->procedure_id); - - if(is_numeric($patient_insurance_status) && $patient_insurance_status == 1 && $patient_id != 0 && is_numeric($patient_id)) { - $selling_price = get_item_insurance_co_payment($patient_id, $procedure->id, 2, $is_inpatient, $ward_id); - } else { - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_id) { - $selling_price = get_price_list_category_price($price_list_id, 4, $procedure->id); - } else { - $selling_price = $procedure->non_insured_price; - } - } - - if (is_chi_enabled() && is_patient_item_covered($patient_id, $procedure->id, 2)) { - $covered_by_chi = '  
    Covered by CHI'; - } else { - $covered_by_chi = ""; - } - - return json_encode([ - "selling_price" => $selling_price, - "covered_by_chi" => $covered_by_chi, - ]); - } - public function get_hmis_categories_options(Request $request) { - $options = DB::table('hmis_category_options')->where('hmis_category_id', $request->hmis_category)->orderBy('name', 'asc')->get(); - $data =''; - foreach($options as $option){ - $data .= ''; - } - return $data; - } - - public function get_dependent_hmis_category_options(Request $request) { - $options = DB::table('hmis_category_options')->where('parent_option', $request->parent_category)->orderBy('name', 'asc')->get(); - $data =''; - foreach($options as $option){ - $data .= ''; - } - return $data; - } -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/ReferralHospitalController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/ReferralHospitalController.php deleted file mode 100755 index 19202dd2..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/ReferralHospitalController.php +++ /dev/null @@ -1,184 +0,0 @@ -middleware('auth'); - $this->middleware('permission:referral-hospital-list', ['only' => ['index']]); - $this->middleware('permission:referral-hospital-create', ['only' => ['create', 'store']]); - $this->middleware('permission:referral-hospital-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:referral-hospital-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $referral_hospitals = ReferralHospital::orderBy('name', 'asc')->paginate(50); - - return view('clinical_data::referral_hospitals.index', compact('referral_hospitals')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - return view('clinical_data::referral_hospitals.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - $referral_hospital = new ReferralHospital; - - $referral_hospital->name = $request->name; - $referral_hospital->created_by = $logged_in_user_id; - $referral_hospital->updated_by = $logged_in_user_id; - - try { - $referral_hospital->save(); - flash($request->name . " Referral Hospital has been saved")->success(); - return redirect("/referral_hospitals/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $referral_hospital = ReferralHospital::where(['id' => $id])->first(); - - if (!$referral_hospital) { - flash()->error("There is no such referral hospital"); - return redirect('/referral_hospitals/'); - } else { - return view('clinical_data::referral_hospitals.edit', compact('referral_hospital')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - - $referral_hospital = ReferralHospital::find($id); - $referral_hospital->name = $request->name; - $referral_hospital->updated_by = $logged_in_user_id; - - try { - $referral_hospital->save(); - flash($request->name . " Referral Hospital has been updated")->success(); - return redirect("/referral_hospitals/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $referral_hospital = ReferralHospital::find($id); - - if ($referral_hospital->delete()): - flash("Hospital has been deleted.")->success(); - return redirect('/referral_hospitals/'); - endif; - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $referral_hospitals = ReferralHospital::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($referral_hospitals) < 1) { - flash()->error("There is no inactive referral hospital"); - return redirect('/referral_hospitals/'); - } else { - return view('clinical_data::referral_hospitals.inactive', compact('referral_hospitals')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $referral_hospital = ReferralHospital::withTrashed()->find($id); - - if ($referral_hospital->restore()): - flash("Hospital has been activated.")->success(); - return redirect('/referral_hospitals/inactive'); - endif; - } - - public function get_referrals(){ - //code to be returned to view - $code = ""; - - $referrals = ReferralHospital::orderBy('name', 'asc')->get(); - - foreach ($referrals as $referral) { - $code .= ""; - } - - return $code; - } - -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/ResidenceController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/ResidenceController.php deleted file mode 100644 index 98a520b7..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/ResidenceController.php +++ /dev/null @@ -1,481 +0,0 @@ - -- select -- "; - $counties = DB::table('counties') - ->whereNull('deleted_at') - ->where(['district_id' => $id]) - ->get(); - - foreach ($counties as $county) { - $code .= ""; - } - - return $code; - } - - public function get_subcounties($id) - { - $code = ""; - - $subcounties = DB::table('subcounties') - ->whereNull('deleted_at') - ->where(['county_id' => $id]) - ->get(); - - foreach ($subcounties as $subcounty) { - $code .= ""; - } - - $code .= ""; - - return $code; - } - - public function get_parishes($id) - { - $code = ""; - - $parishes = DB::table('parishes') - ->whereNull('deleted_at') - ->where(['subcounty_id' => $id]) - ->get(); - - foreach ($parishes as $parish) { - $code .= ""; - } - - return $code; - } - - public function get_villages($id) - { - $code = ""; - - $villages = DB::table('villages') - ->whereNull('deleted_at') - ->where(['parish_id' => $id]) - ->get(); - - foreach ($villages as $village) { - $code .= ""; - } - - return $code; - } - - /* - * get patient residences and send corresponding drop down options - */ - public function search_districts(Request $request) { - $data = []; - - if ($request->has('q')) { - $search = $request->q; - $data = DB::table('districts')->select("name", "id") - ->where('name', 'LIKE', "%$search%") - ->get(); - } - - return response()->json($data); - } - - public function search_counties(Request $request) { - $data = []; - - if ($request->has('q')) { - $search = $request->q; - $data = DB::table('counties')->leftJoin('districts', 'districts.id', '=', 'counties.district_id') - ->select("counties.name", "counties.id", "districts.name as district_name") - ->where('counties.name', 'LIKE', "%$search%") - ->get(); - } - - return response()->json($data); - } - - public function search_subcounties(Request $request) { - $data = []; - - if ($request->has('q')) { - $search = $request->q; - $data = DB::table('subcounties')->leftJoin('counties', 'counties.id', '=', 'subcounties.county_id') - ->select("subcounties.name", "subcounties.id", "counties.name as county_name") - ->where('subcounties.name', 'LIKE', "%$search%") - ->get(); - } - - return response()->json($data); - } - - public function search_parishes(Request $request) { - $data = []; - - if ($request->has('q')) { - $search = $request->q; - $data = DB::table('parishes')->leftJoin('subcounties', 'subcounties.id', '=', 'parishes.subcounty_id') - ->select("parishes.name", "parishes.id", "subcounties.name as sub_county_name") - ->where('parishes.name', 'LIKE', "%$search%") - ->get(); - } - - return response()->json($data); - } - - public function search_villages(Request $request) { - $data = []; - - if ($request->has('q')) { - $search = $request->q; - $data = DB::table('villages')->leftJoin('parishes', 'parishes.id', '=', 'villages.parish_id') - ->select("villages.name", "villages.id", "parishes.name as parish_name") - ->where('villages.name', 'LIKE', "%$search%") - ->get(); - } - - return response()->json($data); - } - - public function get_residence($district_id) - { - //loop is going to take long execution time - $villages_array = []; - $parishes_array = []; - $subcounties_array = []; - - $counties = DB::table('counties')->where(['district_id' => $district_id])->whereNull('deleted_at')->pluck("name", "id"); - foreach ($counties as $county_id => $county_name) { - $subcounties = DB::table('subcounties')->where(['county_id' => $county_id])->whereNull('deleted_at')->get(); - foreach ($subcounties as $subcounty) { - $subcounties_array[$subcounty->id] = $subcounty->name; - $parishes = DB::table('parishes')->where(['subcounty_id' => $subcounty->id])->whereNull('deleted_at')->get(); - foreach ($parishes as $parish) { - $parishes_array[$parish->id] = $parish->name; - $villages = DB::table('villages')->where(['parish_id' => $parish->id])->whereNull('deleted_at')->get(); - foreach ($villages as $village) { - $villages_array[$village->id] = $village->name; - } - } - } - } - - return ['subcounties' => $subcounties_array, 'parishes' => $parishes_array, 'villages' => $villages_array]; - } - - public function get_residence_district($district_id) - { - //loop is going to take long execution time - $villages_array = []; - $parishes_array = []; - $sub_counties_array = []; - $counties_array = []; - $residences_array = []; - - $counties = DB::table('counties')->where(['district_id' => $district_id])->whereNull('deleted_at')->orderBy("name", "asc")->pluck("name", "id"); - foreach ($counties as $county_id => $county_name) { - $counties_array[$county_id] = $county_name; - $subcounties = DB::table('subcounties')->where(['county_id' => $county_id])->whereNull('deleted_at')->get(); - foreach ($subcounties as $subcounty) { - $sub_counties_array[$subcounty->id] = $subcounty->name; - $parishes = DB::table('parishes')->where(['subcounty_id' => $subcounty->id])->whereNull('deleted_at')->get(); - foreach ($parishes as $parish) { - $parishes_array[$parish->id] = $parish->name; - $villages = DB::table('villages')->where(['parish_id' => $parish->id])->whereNull('deleted_at')->get(); - foreach ($villages as $village) { - $villages_array[$village->id] = $village->name; - } - } - } - } - - $residences_array['counties'] = $counties_array; - $residences_array['subcounties'] = $sub_counties_array; - $residences_array['parishes'] = $parishes_array; - $residences_array['villages'] = $villages_array; - - return json_encode($residences_array); - } - - public function get_residence_county($county_id) - { - //loop is going to take long execution time - $villages_array = []; - $parishes_array = []; - $sub_counties_array = []; - $residences_array = []; - - $subcounties = DB::table('subcounties')->where(['county_id' => $county_id])->whereNull('deleted_at')->orderBy("name", "asc")->get(); - foreach ($subcounties as $subcounty) { - $sub_counties_array[$subcounty->id] = $subcounty->name; - $parishes = DB::table('parishes')->where(['subcounty_id' => $subcounty->id])->whereNull('deleted_at')->get(); - foreach ($parishes as $parish) { - $parishes_array[$parish->id] = $parish->name; - $villages = DB::table('villages')->where(['parish_id' => $parish->id])->whereNull('deleted_at')->get(); - foreach ($villages as $village) { - $villages_array[$village->id] = $village->name; - } - } - } - - $residences_array['subcounties'] = $sub_counties_array; - $residences_array['parishes'] = $parishes_array; - $residences_array['villages'] = $villages_array; - - return json_encode($residences_array); - } - - public function get_residence_sub_county($sub_county_id) - { - //loop is going to take long execution time - $villages_array = []; - $parishes_array = []; - $residences_array = []; - - $parishes = DB::table('parishes')->where(['subcounty_id' => $sub_county_id])->whereNull('deleted_at')->orderBy("name", "asc")->get(); - foreach ($parishes as $parish) { - $parishes_array[$parish->id] = $parish->name; - $villages = DB::table('villages')->where(['parish_id' => $parish->id])->whereNull('deleted_at')->get(); - foreach ($villages as $village) { - $villages_array[$village->id] = $village->name; - } - } - - $residences_array['parishes'] = $parishes_array; - $residences_array['villages'] = $villages_array; - - return json_encode($residences_array); - } - - public function get_residence_parish($parish_id) - { - //loop is going to take long execution time - $villages_array = []; - $residences_array = []; - - $villages = DB::table('villages')->where(['parish_id' => $parish_id])->whereNull('deleted_at')->orderBy("name", "asc")->get(); - foreach ($villages as $village) { - $villages_array[$village->id] = $village->name; - } - - $residences_array['villages'] = $villages_array; - - return json_encode($residences_array); - } - - /* cater for adding a new occupation from a modal dynamically */ - public function add_new_occupation_dynamically(Request $request) - { - $occupation = new Occupation; - $occupation->name = $request->name; - $occupation->created_by = Auth::user()->id; - $occupation->updated_by = Auth::user()->id; - - try { - $occupation->save(); - return $occupation->id; - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - public function add_new_district_dynamically(Request $request) - { - $district = new District; - $district->name = $request->name; - $district->created_by = Auth::user()->id; - $district->updated_by = Auth::user()->id; - - $check = District::where('name', $request->name)->pluck('name')->first(); - if (is_null($check)) { - try { - $district->save(); - return $district->id; - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } else { - return 'false'; - } - } - - public function add_new_county_dynamically(Request $request) - { - $county = new County; - $county->name = $request->name; - $county->district_id = $request->district_id; - $county->created_by = Auth::user()->id; - $county->updated_by = Auth::user()->id; - - $check = County::where('name', $request->name)->pluck('name')->first(); - if (is_null($check)) { - try { - $county->save(); - return $county->id; - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } else { - return 'false'; - } - } - - public function add_new_subcounty_dynamically(Request $request) - { - $sub_county = new Subcounty; - $sub_county->name = $request->name; - $sub_county->county_id = $request->county_id; - $sub_county->created_by = Auth::user()->id; - $sub_county->updated_by = Auth::user()->id; - - $check = Subcounty::where('name', $request->name)->pluck('name')->first(); - if (is_null($check)) { - try { - $sub_county->save(); - return $sub_county->id; - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } else { - return 'false'; - } - } - - public function add_new_parish_dynamically(Request $request) - { - $parish = new Parish; - $parish->name = $request->name; - $parish->subcounty_id = $request->subcounty_id; - $parish->created_by = Auth::user()->id; - $parish->updated_by = Auth::user()->id; - - $check = Parish::where('name', $request->name)->pluck('name')->first(); - if (is_null($check)) { - try { - $parish->save(); - return $parish->id; - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } else { - return 'false'; - } - } - - public function add_new_village_dynamically(Request $request) - { - $village = new Village; - $village->name = $request->name; - $village->parish_id = $request->parish_id; - $village->created_by = Auth::user()->id; - $village->updated_by = Auth::user()->id; - - $check = Village::where('name', $request->name)->pluck('name')->first(); - if (is_null($check)) { - try { - $village->save(); - return $village->id; - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } else { - return 'false'; - } - } - - public function quick_add_residence(Request $request) - { - $district_id = $request->district_id; - $new_district_name = $request->new_district_name; - $county_id = $request->county_id; - $new_county_name = $request->new_county_name; - $subcounty_id = $request->subcounty_id; - $new_subcounty_name = $request->new_subcounty_name; - $parish_id = $request->parish_id; - $new_parish_name = $request->new_parish_name; - $village_id = 0; - $new_village_name = $request->new_village_name; - - if (!isset($district_id) && isset($new_district_name)) { - $district = new District; - $district->name = $new_district_name; - $district->created_by = Auth::user()->id; - $district->updated_by = Auth::user()->id; - $district->save(); - - $district_id = $district->id; - } - - if (!isset($county_id) && isset($new_county_name) && is_numeric($district_id)) { - $county = new County; - $county->name = $new_county_name; - $county->district_id = $district_id; - $county->created_by = Auth::user()->id; - $county->updated_by = Auth::user()->id; - $county->save(); - - $county_id = $county->id; - } - - if (!isset($subcounty_id) && isset($new_subcounty_name) && is_numeric($county_id)) { - $sub_county = new Subcounty; - $sub_county->name = $new_subcounty_name; - $sub_county->county_id = $county_id; - $sub_county->created_by = Auth::user()->id; - $sub_county->updated_by = Auth::user()->id; - $sub_county->save(); - - $subcounty_id = $sub_county->id; - } - - if (!isset($parish_id) && isset($new_parish_name) && is_numeric($subcounty_id)) { - $parish = new Parish; - $parish->name = $new_parish_name; - $parish->subcounty_id = $subcounty_id; - $parish->created_by = Auth::user()->id; - $parish->updated_by = Auth::user()->id; - $parish->save(); - - $parish_id = $parish->id; - } - - if (isset($new_village_name)) { - $village = new Village; - $village->name = $new_village_name; - $village->parish_id = is_numeric($parish_id) ? $parish_id : 0; - $village->created_by = Auth::user()->id; - $village->updated_by = Auth::user()->id; - $village->save(); - - $village_id = $village->id; - } - - return (is_numeric($village_id) ? $village_id : 0) . "," . (is_numeric($parish_id) ? $parish_id : 0) . "," . (is_numeric($subcounty_id) ? $subcounty_id : 0) . "," . - (is_numeric($county_id) ? $county_id : 0) . "," . (is_numeric($district_id) ? $district_id : 0); - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/ResourceCategoryController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/ResourceCategoryController.php deleted file mode 100755 index 2445a91e..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/ResourceCategoryController.php +++ /dev/null @@ -1,206 +0,0 @@ -middleware('auth'); - $this->middleware('permission:resource_category-list', ['only' => ['index']]); - $this->middleware('permission:resource_category-detail', ['only' => ['show']]); - $this->middleware('permission:resource_category-create', ['only' => ['create', 'store']]); - $this->middleware('permission:resource_category-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:resource_category-delete', ['only' => ['destroy']]); - $this->middleware('permission:resource_category-status', ['only'=>['inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() - { - // - $resource_categories = ResourceCategory::orderBy('name', 'asc') - ->paginate(50); - return view('clinical_data::resource_categories.index', compact('resource_categories')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - // - return view('clinical_data::resource_categories.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth::user()->id; - $resource_category = new ResourceCategory; - - $resource_category->name = $request->name; - $resource_category->created_by = $logged_in_user_id; - $resource_category->updated_by = $logged_in_user_id; - - try { - $resource_category->save(); - flash($request->name . " Resource Category has been saved")->success(); - return redirect("/resource_categories/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) - { - $resource_category = ResourceCategory::where(['id' => $id])->first(); - - if (!$resource_category) { - flash()->error("There is no such Category"); - return redirect('/resource_categories/'); - } else { - return view('clinical_data::resource_categories.edit', compact('resource_category')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth::user()->id; - - $resource_category = ResourceCategory::find($id); - $resource_category->name = $request->name; - $resource_category->updated_by = $logged_in_user_id; - - try { - $resource_category->save(); - flash($request->name . " Resource Category has been updated")->success(); - return redirect("/resource_categories/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - $resource_category = ResourceCategory::find($id); - - if ($resource_category->delete()): - - flash("Category has been deleted.")->success(); - return redirect('/resource_categories/'); - - endif; - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $resource_categories = ResourceCategory::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($resource_categories) < 1) { - - flash()->error("There is no inactive Category"); - return redirect('/resource_categories/'); - - } else { - return view('clinical_data::resource_categories.inactive', compact('resource_categories')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $resource_category = ResourceCategory::withTrashed()->find($id); - - if ($resource_category->restore()): - flash("Category has been activated.")->success(); - return redirect('/resource_categories/inactive'); - endif; - } -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/ResourceController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/ResourceController.php deleted file mode 100755 index 2600af39..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/ResourceController.php +++ /dev/null @@ -1,283 +0,0 @@ -middleware('auth'); - $this->middleware('permission:resources-list', ['only' => ['index', 'select']]); - $this->middleware('permission:resources-detail', ['only' => ['show']]); - $this->middleware('permission:resources-create', ['only' => ['create', 'store']]); - $this->middleware('permission:resources-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:resources-delete', ['only' => ['destroy']]); - $this->middleware('permission:resources-status', ['only' => ['activate, inactive']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() - { - $resources = DB::table('resources') - ->whereNull('deleted_at') - ->orderBy('title','asc') - ->get(); - - $categories = DB::table('resource_categories')->whereNull('deleted_at')->pluck("name", "id"); - $category_select = ResourceCategory::orderBy('name')->get(); - - return view('clinical_data::resources.index', compact('resources','categories','category_select')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - - public function create() - { - $resource_categories = DB::table('resource_categories') - ->whereNull('deleted_at') - ->orderBy('name', 'asc') - ->pluck('name', 'id') - ->toArray(); - $resource_categories = ['' => '- select -'] + $resource_categories; - - flash('BE SURE TO FILL IN ALL THE NEEDED FIELDS.')->error(); - - return view('clinical_data::resources.create', compact('resource_categories')); - } - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - $validator = Validator::make($request->all(), [ - 'title' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth::user()->id; - $resource = new Resource; - - - $resource->title = $request->title; - $resource->body = $request->body; - - $attach_path = $request->file('attach_path'); - $file_destination_path = $file_name = ''; - - if ($attach_path) { - $file_name = $attach_path->getClientOriginalName(); -// $file_source_path = $attach_path->getRealPath(); -// $file_size = $attach_path-->getSize(); -// $file_mime_type = $attach_path-->getMimeType(); - $file_destination_path = 'uploads/resources/'; - $attach_path->move($file_destination_path, $file_name); - } - - $resource->attach_path = $file_destination_path . $file_name; - $resource->category_id = $request->category_id; - $resource->created_by = $logged_in_user_id; - $resource->updated_by = $logged_in_user_id; - - try { - $resource->save(); - flash($request->title . " Resource has been saved")->success(); - return redirect("/resources/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - - public function edit($id) - { - $resources_categories = DB::table('resource_categories') - ->whereNull('deleted_at') - ->orderBy('name', 'asc') - ->pluck('name','id'); - - //$resource = Resource::where(['id' => $id])->first(); - $resource = Resource::find($id); - - if (!$resource) { - flash()->error("There is no such resource"); - return redirect('/resources/'); - } else { - return view('clinical_data::resources.edit', compact('resource')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - - public function update(Request $request, $id) { - - $validator = Validator::make($request->all(), [ - 'title' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth::user()->id; - $resource = Resource::find($id); - $resource->title = $request->title; - $resource->body = $request->body; - - $attach_path = $request->file('attach_path'); - $file_destination_path = $file_name = ''; - - if ($attach_path) { - $file_name = $attach_path->getClientOriginalName(); -// $file_source_path = $attach_path->getRealPath(); -// $file_size = $attach_path->getSize(); -// $file_mime_type = $attach_path->getMimeType(); - $file_destination_path = 'uploads/resources/'; - $attach_path->move($file_destination_path, $file_name); - } - - $current_file = $request->current_file; - $new_file = $file_destination_path . $file_name; - - $resource->attach_path = $new_file ? $new_file : $current_file; - $resource->updated_by = $logged_in_user_id; - - try { - $resource->save(); - flash($request->title . " Resource has been updated")->success(); - return redirect("/resources/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $resources = Resource::find($id); - $resources->delete(); - - if ($resources->save()): - flash("Resources has been deleted.")->success(); - return redirect('/resources/'); - endif; - } - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $resources = Resource::onlyTrashed() - ->orderBy('id', 'desc') - ->get(); - - $categories = DB::table('resource_categories')->whereNull('deleted_at')->pluck("name", "id"); - - $category_select = DB::table('resource_categories')->whereNull('deleted_at')->orderBy('name')->distinct()->pluck('name'); - - if (is_null($resources)) { - flash()->error("There is no inactive resource"); - return redirect('/resources/'); - } - - return view('clinical_data::resources.inactive', compact('resources', 'categories', 'category_select')); - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $resource = Resource::withTrashed()->find($id); - - $resource->deleted_at = null; - - if ($resource->restore()): - flash("The Resource has been activated.")->success(); - return redirect('/resources/'); - endif; - } - - /** - * select the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function select(Request $request) { - $resource_category_id = $request->category_select; - - $resources = Resource::orderBy('title', 'asc') - ->Where('category_id', $resource_category_id) - ->paginate(50); - - $category_select = ResourceCategory::orderBy('name')->get(); - - $categories = ResourceCategory::pluck("name", "id"); - - return view('clinical_data::resources.index', compact('resources', 'categories','category_select')); - - } -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/ServicesController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/ServicesController.php deleted file mode 100755 index 9dab1c17..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/ServicesController.php +++ /dev/null @@ -1,463 +0,0 @@ -middleware('auth'); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $service_items = Services::where('available', 1)->orderby('name', 'asc')->get(); - $chart_of_accounts = ChartOfAccount::where(['type' => 1])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $ordered_services_array = []; - $ordered_services = OrderedService::distinct('service_id')->get(['service_id']); - - foreach ($ordered_services as $ordered_service) { - $ordered_services_array = array_merge($ordered_services_array, explode(',', $ordered_service->service_id)); - } - - $ordered_service_ids = array_unique($ordered_services_array); - - return view('clinical_data::service_items.index',compact('service_items', 'chart_of_accounts','ordered_service_ids')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create(){ - $suppliers = Supplier::orderBy('name','asc')->pluck('name','id')->toArray(); - $suppliers = ['' => '- select -'] + $suppliers; - - $chart_of_accounts = ChartOfAccount::where(['type' => 1])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $chart_of_accounts = ['' => '- select -'] + $chart_of_accounts; - - $services = StreamlineSetupManager::get_services_array(); - - $users = DB::table('users')->orderBy("first_name","asc")->select("id")->get()->toArray(); - $users_array = []; - - foreach ($users as $value){ - $user = User::find($value->id); - if (!is_null($user)) { - $users_array[$value->id] = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users'); - } - } - $users_array = ['' => '- Select Staff -'] + $users_array; - - return view('clinical_data::service_items.create',compact('suppliers','chart_of_accounts','services','users_array')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - //if it for streamline setup then you can skip the request validation - if (session()->has('streamline_setup')){ - //skip validation - } else { - request()->validate([ - 'name' => 'required', - ]); - } - - if (isset($request->skip)) { - //Artisan::call('db:seed', ['--class' => 'ServicesTableSeeder']); - //update the streamline setup table with the new finished step - $this->setupService->saveStep("services registration", 1); - // $streamline_setup = new \Streamline\Models\StreamlineSetupStep; - // $streamline_setup->step = "services registration"; - // $streamline_setup->completion_status = 1; - // $streamline_setup->save(); - - return redirect("investigations/create"); - } else { - // get all current price lists - $price_list = PriceListCategories::withTrashed()->select('id')->get(); - $price_list_category = []; - $price_list_price = []; - - foreach ($price_list as $record){ - array_push($price_list_category, $record->id); - array_push($price_list_price, $request->non_insured_price); - } - - $service_item = new Services; - $service_item->name = $request->name; - - if ($request->attach_to_staff_name == 1) { - $attached_user_id = $request->user_id; - $attached_user_name = get_full_name($attached_user_id, "id", "first_name", "last_name", "users"); - $service_item->name = $service_item->name." - ".$attached_user_name; - } - - $service_item->insured_price = 0; - $service_item->available = $request->available; - $service_item->non_insured_price = $request->non_insured_price; - $service_item->cost_price = $request->non_insured_price; - $service_item->account_id = $request->account_id; - - if (isset($request->price_list_category_id) && isset($request->price_list_price)) { - $service_item->price_list_category = !is_null($request->price_list_category_id) ? implode(",", $request->price_list_category_id) : null; - $service_item->price_list_price = !is_null($request->price_list_price) ? implode(",", $request->price_list_price) : null; - } else { - $service_item->price_list_category = implode(",", $price_list_category); - $service_item->price_list_price = implode(",", $price_list_price); - } - - $service_item->insurance_coverage = 0; - $service_item->item_type = $request->type_of_service; - $service_item->supplier_id = 0; // not necessary - $service_item->description = $request->description; - - try{ - if ($service_item->name != "" && !is_null($service_item->name)) { - $service_item->save(); - } - - flash("New service item has been added")->success(); - - if (session()->has('streamline_setup')) { - - if (isset($request->selected_services)) { - $selected_services_array = $request->selected_services; - if (!empty($selected_services_array)) { - - for ($i=0; $i < count($selected_services_array) ; $i++) { - /* try this magic to get details for the selected service */ - $services_array = StreamlineSetupManager::get_services_array(); - $key=array_search($selected_services_array[$i], array_column($services_array, 'Item_Name')); - $service_details = $services_array[$key]; - /* end of magic trial */ - $service_item = new Services; - $service_item->name = $service_details['Item_Name']; - $service_item->cost_price = $service_details['Cost_Price']; - $service_item->insured_price = 0; - $service_item->non_insured_price = $service_details['Non_Insured_Amount']; - $service_item->account_id = $service_details['Account_Id']; - $service_item->item_type = $service_details['Item_Type']; - $service_item->description = $service_details['Description']; - $service_item->save(); - } - } - } - $this->setupService->saveStep("services registration", 1); - // $streamline_setup = new \Streamline\Models\StreamlineSetupStep; - // $streamline_setup->step = "services registration"; - // $streamline_setup->completion_status = 1; - // $streamline_setup->save(); - return redirect("investigations/create"); - } - return redirect('/service_items'); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - flash("Error occurred")->error(); - return back()->withInput(); - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id){ - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $service = Services::where(['id' => $id])->first(); - - $chart_of_accounts = ChartOfAccount::where(['type' => 1])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $chart_of_accounts = ['' => '- select -'] + $chart_of_accounts; - - if (!$service) { - flash()->error("Service not found"); - return redirect('/service_items/'); - } else { - return view('clinical_data::service_items.edit', compact('service', 'chart_of_accounts')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id){ - $service_item = Services::find($id); - $service_item->name = $request->name; - $service_item->available = $request->available; - $service_item->insured_price = 0; - $service_item->non_insured_price = $request->non_insured_price; - $service_item->price_list_category = !is_null($request->price_list_category_id) ? implode(",", $request->price_list_category_id) : null; - $service_item->price_list_price = !is_null($request->price_list_price) ? implode(",", $request->price_list_price) : null; - $service_item->account_id = $request->account_id; - $service_item->insurance_coverage = 0; - $service_item->item_type = $request->type_of_service; - $service_item->description = $request->description; - - if ($service_item->save()) { - flash("Service item has been edited")->success(); - return redirect('/service_items'); - } - - flash("Error occurred")->error(); - return back()->withInput(); - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $service = Services::find($id); - - if ($service->delete()) { - flash("Service item has been deleted")->success(); - return redirect('/service_items'); - } - - flash("Service has not been deleted")->success(); - return redirect('service_items'); - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $services = Services::onlyTrashed() - ->orderBy('name', 'asc') - ->get(); - - return view('clinical_data::service_items.inactive', compact('services')); - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $service = Services::withTrashed()->find($id); - - if($service->restore()){ - flash("Service has been activated.")->success(); - return redirect('/service_items/inactive'); - } - } - - /* - * order sundries for the patient - */ - public function order_services() { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $patient = Patient::where('id', $patient_id)->first(); - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $services = Services::where('available', 1)->orderBy('name')->pluck('name', 'id'); - - $ordered_services = DB::table('ordered_services')->whereNull('deleted_at')->where(['patient_id'=>$patient_id, 'episode_id'=>$episode_id, 'payment_status' => 0])->first(); - - $users_collection = DB::table('users')->orderBy("first_name","asc")->select("id")->get()->toArray(); - $users_array = []; - foreach ($users_collection as $value){ - $user = \Streamline\Models\User::find($value->id); - if (!is_null($user)) { - $users_array[$value->id] = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users'); - } - } - $users_array = ['' => '- select -'] + $users_array; - - $employees = DB::table('users')->whereNull('deleted_at')->orderBy('first_name', 'asc')->get(); - - return view('clinical_data::service_items.ordered_services',compact('patient_id','episode_id','patient','categories','employees','services','ordered_services', 'users_array')); - } - - /* - * store ordered sundries for a patient episode - */ - public function store_ordered_services(Request $request) { - if(is_null($request->service_id) || is_null($request->service_id[0])) { - flash("No service has been selected")->error(); - return back()->withInput(); - } else { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $service_ids_array = $request->service_id; - $quantity_array = $request->item_quantity; - $service_performed = []; - $service_performed_id = []; - $performed_service_array = $request->performed_services; - $performed_by_array = $request->service_performed_by; - $service_performed_by_amount = $request->service_performed_by_amount; - $service_performed_date = $request->service_performed_date; - - // filter to check if all entries have been filled for performed by and discard otherwise - for ($i = 0; $i < count($service_ids_array); $i++) { - // check if it is in the excluded item count - if (isset($performed_service_array[$i]) && $performed_service_array[$i] == 1 && isset($performed_by_array[$i]) && $performed_by_array[$i] != "" && - isset($service_performed_by_amount[$i]) && $service_performed_by_amount[$i] != "" && - isset($service_performed_date[$i]) && $service_performed_date[$i] != "") { - $service_performed_id[] = record_staff_that_has_performed_the_service_with_price($patient_id, $episode_id, 3, $service_ids_array[$i], 0, - $performed_by_array[$i], $service_performed_by_amount[$i], $service_performed_date[$i]); - $service_performed[] = 1; - } else { - $service_performed[] = 0; - $service_performed_id[] = 0; - } - } - - if (isset($request->order_id) && get_name($request->order_id, 'id', 'payment_status', 'ordered_services') == 0) { - $service_order = Orderedservice::find($request->order_id); - - // delete the previous preformed_by_ids - try { - DB::table('staff_performed_services')->whereIn('id', explode(",", $service_order->performed_id))->delete(); - } catch (\Exception $e) {} - } else { - $service_order = new Orderedservice; - $service_order->patient_id = $patient_id; - $service_order->episode_id = $episode_id; - $service_order->payment_status = 0; //0 by default to mean not paid - $service_order->created_by = auth()->user()->id; - } - - $service_order->service_id = implode(",", $service_ids_array); - $service_order->quantity = implode(",", $quantity_array); - $service_order->performed = implode(",", $service_performed); - $service_order->performed_id = implode(",", $service_performed_id); - $service_order->updated_by = auth()->user()->id; - $service_order->save(); - - // create an insurance claim for the ordered items - if ($request->patient_insurance_status == 1) { - generate_insurance_claim($service_order->id, 1); - } - - flash("Services have been saved")->success(); - - // redirect to consultation or patient_episode page depending on where the user is from - if (session()->has('redirect_to_consultation')) { - $url = session()->get('redirect_to_consultation'); - session()->forget('redirect_to_consultation'); - return redirect($url); - } else { - return redirect("/patient_episodes"); - } - } - } - - public function fetch_service_performance_fee(Request $request) { - $patient_id = $request->patient_id; - $patient_category_id = get_name($patient_id, 'id', 'category_id', 'patients'); - $performed_by = $request->performed_by; - $item_id = $request->item_id; - - $price_list_category_details = \Streamline\Models\PriceListCategories::where(['patient_category_id' => $patient_category_id])->first(); - - if ($price_list_category_details) { - $price_list_category_id = $price_list_category_details->id; - - $fees_array = get_item_price_and_performance_fee_based_on_price_list_category($performed_by, $item_id, 3, $price_list_category_id); - - return ($fees_array[1] == 0) ? $fees_array[0] : $fees_array[1]; - } else { - //do this for cases where the there are no price lists for the patient's patient_category - $fees_array = get_item_price_and_performance_fee_array_without_price_list($item_id, $performed_by, 3); - - return ($fees_array[1] == 0) ? $fees_array[0] : $fees_array[1]; - } - } - - public function cancel_ordered_services($order_id) { - $ordered_service = OrderedService::find($order_id); - - try { - $ordered_service->delete(); - - // check if there are any insurance claims available - $claim = InsuranceClaim::where('order_id', $order_id)->where('item_type', 1)->first(); - - if ($claim) { - $claim->delete(); - } - - return 1; - } catch (\Exception $exception) { - return 0; - } - } - - public function get_service_details(Request $request) { - $patient_id = $request->patient_id; - $patient_insurance_status = $request->patient_insurance_status ?? 0; - - $service = DB::table('services')->find($request->service_id); - - if(is_numeric($patient_insurance_status) && $patient_insurance_status == 1 && $patient_id != 0 && is_numeric($patient_id)) { - $selling_price = get_item_insurance_co_payment($patient_id, $service->id, 1, false, 0); - } else { - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_id) { - $selling_price = get_price_list_category_price($price_list_id, 6, $service->id); - } else { - $selling_price = $service->non_insured_price; - } - } - - if (is_chi_enabled() && is_patient_item_covered($patient_id, $service->id, 1)) { - $covered_by_chi = '  
    Covered by CHI'; - } else { - $covered_by_chi = ""; - } - - return json_encode([ - "selling_price" => $selling_price, - "covered_by_chi" => $covered_by_chi, - ]); - } -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/SlitLampTestAreaController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/SlitLampTestAreaController.php deleted file mode 100644 index 7272369b..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/SlitLampTestAreaController.php +++ /dev/null @@ -1,188 +0,0 @@ -paginate(50); - return view('clinical_data::test_areas.index', compact('test_areas')); - } - - /** - * Show the form for creating a new resource. - * - */ - public function create() { - return view('clinical_data::test_areas.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) { - //validation failed - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - - //validation passed - $test_area = new SlitLampTestArea; - $logged_in_user_id = Auth::user()->id; - - $test_area->name = $request->name; - $test_area->slug = "slit_".substr($request->name, 0, 2); - $test_area->created_by = $logged_in_user_id; - $test_area->updated_by = $logged_in_user_id; - - try { - $test_area->save(); - flash($request->name . " Staff Position has been saved")->success(); - return redirect("/test_areas/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $test_area = SlitLampTestArea::where(['id' => $id])->first(); - - if (!$test_area) { - flash()->error("There is no such staff position"); - return redirect('/test_areas/'); - } else { - return view('clinical_data::test_areas.edit', compact('test_area')); - } - - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) { - //validation failed - - $string = ""; - - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - -// flash($string)->error(); - - return back()->withErrors($validator)->withInput(); - } else { - //validation passed - $test_area = SlitLampTestArea::find($id); - $test_area->name = $request->name; - - try { - - $test_area->save(); - flash($request->name . " Staff Position has been updated")->success(); - return redirect("/test_areas/"); - - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $test_area = SlitLampTestArea::findOrFail($id); - - if ($test_area->delete()): - flash("Staff Position has been deleted.")->success(); - return redirect('/test_areas/'); - endif; - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $test_areas = SlitLampTestArea::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($test_areas) < 1) { - flash()->error("There is no inactive staff position"); - return redirect('/test_areas/'); - } else { - return view('clinical_data::test_areas.inactive', compact('test_areas')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $test_area = SlitLampTestArea::withTrashed()->findOrFail($id); - - if ($test_area->restore()): - flash("Staff Position has been activated.")->success(); - return redirect('/test_areas/inactive'); - endif; - } -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/SlitLampTestAreaValueController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/SlitLampTestAreaValueController.php deleted file mode 100644 index 7370e688..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/SlitLampTestAreaValueController.php +++ /dev/null @@ -1,198 +0,0 @@ -get(); - $test_areas = SlitLampTestArea::pluck('name', 'id')->toArray(); - return view('clinical_data::test_area_values.index', compact('test_area_values', 'test_areas')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - $test_areas = SlitLampTestArea::pluck('name', 'id')->prepend('-select-', '')->toArray(); - return view('clinical_data::test_area_values.create', compact('test_areas')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) { - //validation failed - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - - //validation passed - $test_area_value = new SlitLampTestAreaValue; - $logged_in_user_id = Auth::user()->id; - - $test_area_value->name = $request->name; - $test_area_value->slit_lamp_test_area_id = $request->area; - $test_area_value->created_by = $logged_in_user_id; - $test_area_value->updated_by = $logged_in_user_id; - - try { - $test_area_value->save(); - flash($request->name . " Staff Position has been saved")->success(); - return redirect("/test_area_values/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $test_area_value = SlitLampTestAreaValue::where(['id' => $id])->first(); - $test_areas = SlitLampTestArea::pluck('name', 'id')->toArray(); - - if (!$test_area_value) { - flash()->error("There is no such staff test_area_value"); - return redirect('/test_area_values/'); - } else { - return view('clinical_data::test_area_values.edit', compact('test_area_value', 'test_areas')); - } - - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) { - //validation failed - - $string = ""; - - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - -// flash($string)->error(); - - return back()->withErrors($validator)->withInput(); - } else { - - $logged_in_user_id = Auth::user()->id; - - //validation passed - $test_area_value = SlitLampTestAreaValue::find($id); - $test_area_value->name = $request->name; - $test_area_value->slit_lamp_test_area_id = $request->area; - $test_area_value->updated_by = $logged_in_user_id; - - try { - - $test_area_value->save(); - flash($request->name . " Staff Position has been updated")->success(); - return redirect("/test_area_values/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $test_area_value = SlitLampTestAreaValue::findOrFail($id); - - if ($test_area_value->delete()): - flash("Staff Position has been deleted.")->success(); - return redirect('/test_area_values/'); - endif; - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $test_area_values = SlitLampTestAreaValue::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($test_area_values) < 1) { - flash()->error("There is no inactive staff test_area_value"); - return redirect('/test_area_values/'); - } else { - return view('clinical_data::test_area_values.inactive', compact('test_area_values')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $test_area_value = SlitLampTestAreaValue::withTrashed()->findOrFail($id); - - if ($test_area_value->restore()): - flash("Staff Position has been activated.")->success(); - return redirect('/test_area_values/inactive'); - endif; - } -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/SpecialityController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/SpecialityController.php deleted file mode 100755 index 31fb6146..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/SpecialityController.php +++ /dev/null @@ -1,190 +0,0 @@ -middleware('auth'); - $this->middleware('permission:specialty-list', ['only' => ['index']]); - $this->middleware('permission:specialty-create', ['only' => ['create', 'store']]); - $this->middleware('permission:specialty-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:specialty-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $specialities = Speciality::orderBy('name', 'asc') - ->paginate(50); - - return view('clinical_data::specialities.index', compact('specialities')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - return view('clinical_data::specialities.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - $validator = Validator::make($request->all(), [ - 'name' => 'required', - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth::user()->id; - $speciality = new Speciality; - - $speciality->name = $request->name; - $speciality->created_by = $logged_in_user_id; - $speciality->updated_by = $logged_in_user_id; - - try { - $speciality->save(); - flash($request->name . " Speciality has been saved")->success(); - return redirect("/specialities/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $speciality = Speciality::where(['id' => $id])->first(); - - if (!$speciality) { - flash()->error("There is no such speciality"); - return redirect('/specialities/'); - } else { - return view('clinical_data::specialities.edit', compact('speciality')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - $validator = Validator::make($request->all(), [ - 'name' => 'required', - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth::user()->id; - - $speciality = Speciality::find($id); - $speciality->name = $request->name; - $speciality->updated_by = $logged_in_user_id; - - try { - $speciality->save(); - flash($request->name . " Speciality has been updated")->success(); - return redirect("/specialities/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $speciality = Speciality::find($id); - - if ($speciality->delete()): - flash("Speciality has been deleted.")->success(); - return redirect('/specialities/'); - endif; - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - - $specialities = Speciality::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (empty($specialities)) { - flash()->error("There is no inactive Speciality"); - return redirect('/specialities/'); - } else { - return view('clinical_data::specialities.inactive', compact('specialities')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $speciality = Speciality::withTrashed()->find($id); - - if ($speciality->restore()): - flash("Supplier has been activated.")->success(); - return redirect('/specialities/inactive'); - endif; - } -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/StaffPositionsController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/StaffPositionsController.php deleted file mode 100755 index b38001b2..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/StaffPositionsController.php +++ /dev/null @@ -1,200 +0,0 @@ -middleware('auth'); - $this->middleware('permission:staff_positions-list', ['only' => ['index']]); - $this->middleware('permission:staff_positions-detail', ['only' => ['show']]); - $this->middleware('permission:staff_positions-create', ['only' => ['create', 'store']]); - $this->middleware('permission:staff_positions-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:staff_positions-delete', ['only' => ['destroy']]); - $this->middleware('permission:staff_positions-status', ['only' => ['activate, inactive']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $positions = StaffPositions::orderBy('name', 'asc') - ->paginate(50); - return view('clinical_data::staff_positions.index', compact('positions')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - return view('clinical_data::staff_positions.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) { - //validation failed - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - - //validation passed - $position = new StaffPositions; - $logged_in_user_id = Auth::user()->id; - - $position->name = $request->name; - $position->created_by = $logged_in_user_id; - $position->updated_by = $logged_in_user_id; - - try { - $position->save(); - flash($request->name . " Staff Position has been saved")->success(); - return redirect("/staff_positions/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $position = StaffPositions::where(['id' => $id])->first(); - - if (!$position) { - flash()->error("There is no such staff position"); - return redirect('/staff_positions/'); - } else { - return view('clinical_data::staff_positions.edit', compact('position')); - } - - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) { - //validation failed - - $string = ""; - - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - -// flash($string)->error(); - - return back()->withErrors($validator)->withInput(); - } else { - //validation passed - $position = StaffPositions::find($id); - $position->name = $request->name; - - try { - - $position->save(); - flash($request->name . " Staff Position has been updated")->success(); - return redirect("/staff_positions/"); - - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $position = StaffPositions::find($id); - - if ($position->delete()): - flash("Staff Position has been deleted.")->success(); - return redirect('/staff_positions/'); - endif; - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $positions = StaffPositions::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($positions) < 1) { - flash()->error("There is no inactive staff position"); - return redirect('/staff_positions/'); - } else { - return view('clinical_data::staff_positions.inactive', compact('positions')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $position = StaffPositions::withTrashed()->find($id); - - if ($position->restore()): - flash("Staff Position has been activated.")->success(); - return redirect('/staff_positions/inactive'); - endif; - } -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/SubcountyController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/SubcountyController.php deleted file mode 100755 index 9f9fdf78..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/SubcountyController.php +++ /dev/null @@ -1,195 +0,0 @@ -middleware('auth'); - $this->middleware('permission:subcounty-list', ['only' => ['index']]); - $this->middleware('permission:subcounty-create', ['only' => ['create', 'store']]); - $this->middleware('permission:subcounty-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:subcounty-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $sub_counties = Subcounty::orderBy('name', 'asc')->get(); - $counties = County::pluck('name', 'id'); - - return view('clinical_data::sub_counties.index', compact('sub_counties', 'counties')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - - $counties = County::all(['id', 'name', 'district_id'])->pluck("name_with_district", "id")->prepend('- select -', '')->toArray(); - - return view('clinical_data::sub_counties.create', compact('counties')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - - $validator = Validator::make($request->all(), [ - 'name' => 'required', - 'county_id' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - - }else{ - - $user_id = Auth::user()->id; - $sub_county = new Subcounty; - - $sub_county->name = $request->name; - $sub_county->county_id = $request->county_id; - $sub_county->created_by = $user_id; - $sub_county->updated_by = $user_id; - - try { - $sub_county->save(); - flash($request->name . " Sub county has been saved")->success(); - return redirect("/subcounties/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $sub_county = Subcounty::where(['id' => $id])->first(); - - $counties = County::all(['id', 'name', 'district_id'])->pluck("name_with_district", "id")->prepend('- select -', '')->toArray(); - - if (!$sub_county) { - flash()->error("That sub county is not registered"); - return redirect('/sub_counties/'); - } else { - return view('clinical_data::sub_counties.edit', compact('sub_county', 'counties')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required', - 'county_id' => 'required' - ]); - - $sub_county = Subcounty::find($id); - - $sub_county->name = $request->name; - $sub_county->county_id = $request->county_id; - $sub_county->updated_by = Auth::user()->id; - - try { - $sub_county->save(); - flash($request->name . " Sub county has been updated")->success(); - return redirect("/subcounties/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $sub_county = Subcounty::find($id); - - if ($sub_county->delete()) { - flash("Sub county has been deleted.")->success(); - return redirect('/subcounties/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $sub_counties = Subcounty::onlyTrashed() - ->orderBy('name', 'asc') - ->get(); - - $counties = County::pluck('name', 'id'); - - if (count($sub_counties) < 1) { - flash()->error("There is no inactive sub counties"); - } - - return view('clinical_data::sub_counties.inactive', compact('counties', 'sub_counties')); - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $sub_county = Subcounty::withTrashed()->find($id); - - if($sub_county->restore()){ - flash("Sub county has been activated.")->success(); - return redirect('/subcounties/inactive'); - } - } - -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/SundryController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/SundryController.php deleted file mode 100755 index d72fcef0..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/SundryController.php +++ /dev/null @@ -1,495 +0,0 @@ -middleware('auth'); - $this->middleware('permission:sundry-list', ['only' => ['index']]); - $this->middleware('permission:sundry-create', ['only' => ['create', 'store']]); - $this->middleware('permission:sundry-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:sundry-delete', ['only' => ['destroy', 'inactive', 'activate']]); - $this->setupService = $setupService; - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $getSundries = Sundry::get(); - $chart_of_accounts = ChartOfAccount::orderBy('name', 'asc')->pluck('name', 'id'); - - $sundries = $getSundries->map(function ($user) { - return collect($user->toArray()) - ->all(); - }); - - $ordered_sundries_array = []; - $ordered_sundries = OrderedSundry::distinct('sundries_id')->get(['sundries_id']); - foreach ($ordered_sundries as $ordered_sundry) { - $actual = explode(',', $ordered_sundry->sundries_id); - foreach ($actual as $value) $ordered_sundries_array[] = $value; - } - $ordered_sundries_ids = array_unique($ordered_sundries_array); - - return view('clinical_data::sundries.index', compact('sundries', 'chart_of_accounts', 'ordered_sundries_ids')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - $cost_of_goods_accounts = ChartOfAccount::where(['type' => 7])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $inventory_asset_accounts = ChartOfAccount::where(['type' => 10])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $income_accounts = ChartOfAccount::where(['type' => 1])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $forms = ['' => '- select -'] + GeneralForm::where('item_type',2)->pluck('name', 'id')->toArray(); - - $cost_of_goods_accounts = ['' => '- select -'] + $cost_of_goods_accounts; - $inventory_asset_accounts = ['' => '- select -'] + $inventory_asset_accounts; - $income_accounts = ['' => '- select -'] + $income_accounts; - - $sundries = StreamlineSetupManager::get_sundries_array(); - - return view('clinical_data::sundries.create', compact('income_accounts','forms', 'inventory_asset_accounts', 'cost_of_goods_accounts','sundries')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - - if (session()->has('streamline_setup') && isset($request->skip)){ - //Artisan::call('db:seed', ['--class' => 'SundriesTableSeeder']); - //update the streamline setup table with the new finished step - $this->setupService->saveStep("sundries registration", 1); - return redirect("general_settings/edit"); - } else { - - /*request()->validate([ - 'name' => 'required', - 'price' => 'required', - 'account_id' => 'required' - ]);*/ - //dd($request->all()); - - // get all current price lists - $price_list = PriceListCategories::withTrashed()->select('id')->get(); - $price_list_category = []; - $price_list_price = []; - - foreach ($price_list as $record){ - array_push($price_list_category, $record->id); - array_push($price_list_price, $request->non_insured_price); - } - - //validation passed - $sundry = new Sundry; - $logged_in_user_id = Auth()->user()->id; - - $sundry->name = $request->name; - $sundry->insurance = 0; - $sundry->available = $request->available; - $sundry->cost_price = $request->price; - $sundry->form_id=$request->form_id; - $sundry->insured_price = 0; - $sundry->non_insured_price = $request->non_insured_price; - - if (isset($request->price_list_category_id) && isset($request->price_list_price)) { - $sundry->price_list_category = !is_null($request->price_list_category_id) ? implode(",", $request->price_list_category_id) : null; - $sundry->price_list_price = !is_null($request->price_list_price) ? implode(",", $request->price_list_price) : null; - } else { - $sundry->price_list_category = implode(",", $price_list_category); - $sundry->price_list_price = implode(",", $price_list_price); - } - - $sundry->account_id = $request->account_id; - $sundry->inventory_account = $request->inventory_account; - $sundry->cost_of_goods_account = $request->cog_account; - $sundry->created_by = $logged_in_user_id; - $sundry->updated_by = $logged_in_user_id; - $sundry->created_at = Carbon::now(); - $sundry->updated_at = Carbon::now(); - - try { - if ($sundry->name != "" && !is_null($sundry->name)) { - $sundry->save(); - } - - flash($request->name . " Sundry has been saved")->success(); - - if (session()->has('streamline_setup')) { - if (isset($request->selected_sundries)) { - $selected_sundries_array = $request->selected_sundries; - if (!empty($selected_sundries_array)) { - - for ($i=0; $i < count($selected_sundries_array) ; $i++) { - $default_sundry = new Sundry; - $default_sundry->name = $selected_sundries_array[$i]; - $default_sundry->account_id = 12; //12 == Sundry chart of account - $default_sundry->save(); - } - } - } - - //update the streamline setup table with the new finished step - $this->setupService->saveStep("sundries registration", 1); - return redirect("general_settings/edit"); - } - return redirect("/sundries/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $sundry = Sundry::where(['id' => $id])->first(); - - $cost_of_goods_accounts = ChartOfAccount::where(['type' => 7])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $inventory_asset_accounts = ChartOfAccount::where(['type' => 10])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $income_accounts = ChartOfAccount::where(['type' => 1])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $forms = ['' => '- select -'] + GeneralForm::where('item_type',2)->pluck('name', 'id')->toArray(); - - $cost_of_goods_accounts = ['' => '- select -'] + $cost_of_goods_accounts; - $inventory_asset_accounts = ['' => '- select -'] + $inventory_asset_accounts; - $income_accounts = ['' => '- select -'] + $income_accounts; - - if (!$sundry) { - flash()->error("Sundry not found"); - return redirect('/sundries/'); - } else { - return view('clinical_data::sundries.edit', compact('sundry','forms', 'cost_of_goods_accounts', 'inventory_asset_accounts', 'income_accounts')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required', - 'price' => 'required', - 'account_id' => 'required' - ]); - - //validation passed - $sundry = Sundry::find($id); - - $sundry->name = $request->name; - $sundry->insurance = 0; - $sundry->cost_price = $request->price; - $sundry->available = $request->available; - $sundry->form_id=$request->form_id; - $sundry->insured_price = 0; - $sundry->non_insured_price = $request->non_insured_price; - $sundry->price_list_category = !is_null($request->price_list_category_id) ? implode(",", $request->price_list_category_id) : null; - $sundry->price_list_price = !is_null($request->price_list_price) ? implode(",", $request->price_list_price) : null; - $sundry->account_id = $request->account_id; - $sundry->inventory_account = $request->inventory_account; - $sundry->cost_of_goods_account = $request->cog_account; - - try { - $sundry->save(); - flash($request->name . " Sundry has been updated")->success(); - return redirect("/sundries/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $sundry = Sundry::find($id); - if(empty($sundry->pharmacy_stock) && empty($sundry->store_stock) && empty($sundry->opening_stock)){ - if ($sundry->delete()): - flash("Sundry has been deleted.")->success(); - return redirect('/sundries/'); - endif; - }else { - flash()->error($sundry->name ." is still in stock."); - return redirect('/sundries/'); - } - } - - public function inactive() { - $sundries = Sundry::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - $chart_of_accounts = ChartOfAccount::orderBy('name', 'asc')->pluck('name', 'id'); - - if (empty($sundries)) { - flash()->error("There is no inactive sundry"); - return redirect('/sundries/'); - } else { - return view('clinical_data::sundries.inactive', compact('sundries', 'chart_of_accounts')); - } - } - - public function activate($id) { - $sundry = Sundry::withTrashed()->find($id); - - if ($sundry->restore()): - flash("Sundry has been activated.")->success(); - return redirect('/sundries/inactive'); - endif; - } - - /* - * order sundries for the patient - */ - public function order_sundries() { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $patient = Patient::where('id', $patient_id)->first(); - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $sundries = Sundry::where('available', 1)->orderBy('name')->pluck('name', 'id'); - - $ordered_sundries = DB::table('ordered_sundries') - ->whereNull('deleted_at') - ->where(['patient_id'=>$patient_id, 'episode_id'=>$episode_id, 'payment_status' => 0]) - ->first(); - - $users_collection = DB::table('users')->orderBy("first_name","asc")->select("id")->get()->toArray(); - $users_array = []; - - foreach ($users_collection as $value){ - $user = User::find($value->id); - if (!is_null($user)) { - $users_array[$value->id] = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users'); - } - } - - $users_array = ['' => '- select -'] + $users_array; - - $employees = DB::table('users')->whereNull('deleted_at')->orderBy('first_name', 'asc')->get(); - - return view('clinical_data::sundries.order_sundries',compact('patient_id','episode_id','patient','categories','employees','sundries','ordered_sundries', 'users_array')); - } - - /* - * store ordered sundries for a patient episode - */ - public function store_ordered_sundries(Request $request) { - if(is_null($request->sundries_id) || is_null($request->sundries_id[0])) { - flash("No sundry has been selected")->error(); - return back()->withInput(); - } else { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $patient_insurance_status = $request->patient_insurance_status ?? 0; - - $sundry_ids_array = $request->sundries_id; - $quantity_array = $request->item_quantity; - if (isset($request->order_id) && get_name($request->order_id, 'id', 'payment_status', 'ordered_sundries') == 0) { - $sundry_order = OrderedSundry::find($request->order_id); - } else { - $sundry_order = new OrderedSundry; - $sundry_order->patient_id = $patient_id; - $sundry_order->episode_id = $episode_id; - $sundry_order->payment_status = 0; //0 by default to mean not paid - $sundry_order->created_by = auth()->user()->id; - } - - /* === save current selling price for future billing not to use the original selling price == */ - $unit_selling_prices_array = []; - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - for ($i=0; $i < count($sundry_ids_array) ; $i++) { - if($patient_insurance_status == 1 && $patient_id != 0 && is_numeric($patient_id)) { - $opd_sundry_amount = get_item_insurance_co_payment($patient_id, $sundry_ids_array[$i], 5, false, 0); - } else { - if ($price_list_id) { - $opd_sundry_amount = get_price_list_category_price($price_list_id, 5, $sundry_ids_array[$i]); - } else { - $opd_sundry_amount = get_name($sundry_ids_array[$i], "id", "non_insured_price", "sundries"); - } - } - $unit_selling_prices_array[] = $opd_sundry_amount; - } - /* ================ */ - - $sundry_order->sundries_id = implode(",", $sundry_ids_array); - $sundry_order->quantity = implode(",", $quantity_array); - $sundry_order->sundries_amount = implode(",", $unit_selling_prices_array); - $sundry_order->save(); - //removed sundry stock reduction to only reduce at payment irrespective of the setting. - // if (get_inventory_reduction_point() == 1) { - // for ($i=0; $i < count($sundry_ids_array) ; $i++) { - // $sundry = \Streamline\Models\Sundry::withTrashed()->find($sundry_ids_array[$i]); - // $current_stock = $sundry->store_stock; - // $new_stock = $current_stock - $quantity_array[$i]; - // $sundry->store_stock = $new_stock; - // $sundry->update(); - // } - // } - - // create an insurance claim for the ordered items - if ($request->patient_insurance_status == 1) { - generate_insurance_claim($sundry_order->id, 5); - } - - flash("Sundries have been saved")->success(); - - // redirect to consultation or patient_episode page depending on where the user is from - if (session()->has('redirect_to_consultation')) { - $url = session()->get('redirect_to_consultation'); - session()->forget('redirect_to_consultation'); - return redirect($url); - } elseif (session()->has('anc_visit_redirect')) { - $url = session()->get('anc_visit_redirect'); - session()->forget('anc_visit_redirect'); - return redirect($url); - } else { - return redirect("/patient_episodes"); - } - } - } - - public function cancel_ordered_sundries($order_id) { - $ordered_sundries = OrderedSundry::find($order_id); - - try { - $ordered_sundries->delete(); - - // check if there are any insurance claims available - $claim = InsuranceClaim::where('order_id', $order_id)->where('item_type', 5)->first(); - - if ($claim) { - $claim->delete(); - } - - return 1; - } catch (\Exception $exception) { - return 0; - } - } - - public function expiring_sundries(Request $request) { - $today = Carbon::now(); - - if ($request->time_period == 0) { - $sundries = Sundry::where('expiry_date', '<', DATE($today)) - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($sundries) < 1) { - flash()->error("There are no expired sundries"); - } - } elseif ($request->time_period == 1) { - $sundries = Sundry::whereBetween('expiry_date', [DATE($today), DATE($today->addWeek())]) - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($sundries) < 1) { - flash()->error("There are no sundries expiring in a week"); - } - } elseif ($request->time_period == 2) { - $sundries = Sundry::whereBetween('expiry_date', [DATE($today), DATE($today->addWeeks(2))]) - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($sundries) < 1) { - flash()->error("There are no sundries expiring in two weeks"); - } - } elseif ($request->time_period == 4) { - $sundries = Sundry::whereBetween('expiry_date', [DATE($today), DATE($today->addWeeks(4))]) - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($sundries) < 1) { - flash()->error("There are no sundries expiring in a month"); - } - } else { - $sundries = Sundry::where('expiry_date', '<', DATE($today)) - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($sundries) < 1) { - flash()->error("There are no expired sundries"); - } - } - - return view('clinical_data::sundries.expiring_sundries', compact('sundries')); - } - - public function get_sundry_details(Request $request) { - $patient_id = $request->patient_id; - $patient_insurance_status = $request->patient_insurance_status ?? 0; - $ward_id = $request->ward_id ?? 0; - - $sundry = DB::table('sundries')->find($request->sundry_id); - - if(is_numeric($patient_insurance_status) && $patient_insurance_status == 1 && $patient_id != 0 && is_numeric($patient_id)) { - $selling_price = get_item_insurance_co_payment($patient_id, $sundry->id, 5, false, $ward_id); - } else { - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_id) { - $selling_price = get_price_list_category_price($price_list_id, 5, $sundry->id); - } else { - $selling_price = $sundry->non_insured_price; - } - } - - if (is_chi_enabled() && is_patient_item_covered($patient_id, $sundry->id, 5)) { - $covered_by_chi = '  
    Covered by CHI'; - } else { - $covered_by_chi = ""; - } - - return json_encode([ - "selling_price" => $selling_price, - "covered_by_chi" => $covered_by_chi, - ]); - } -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/SundryFormController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/SundryFormController.php deleted file mode 100644 index 3ff5ee81..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/SundryFormController.php +++ /dev/null @@ -1,163 +0,0 @@ -middleware('auth'); - $this->middleware('permission:sundry-form-list', ['only' => ['index']]); - $this->middleware('permission:sundry-form-create', ['only' => ['create', 'store']]); - // $this->middleware('permission:sundry-form-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:sundry-form-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $sundry_forms = GeneralForm::get_all_forms_type(2); - return view('clinical_data::sundry_form.index', compact('sundry_forms')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - - return view('clinical_data::sundry_form.create'); - } - - /** - * Store a newly created resource in storage. - */ - public function store(Request $request) { - $data['name']=$request->name; - $data['type']= 2; - try{ - //create new radiology form - $new_form = GeneralForm::add_new_form((object)$data); - flash("Sundry form has been created successfully")->success(); - return redirect('/sundry_form'); - } catch (QueryException $e){ - flash("Something went wrong. Please try again")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $sundry = GeneralForm::find($id); - - if (!$sundry) { - flash()->error("Sundry Form not found"); - return redirect('/sundry_form/'); - } else { - return view('clinical_data::sundry_form.edit', compact('sundry')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required', - ]); - - //validation passed - $data['name']=$request->name; - $data['type']= 2; - try{ - //update sundry form - $form = GeneralForm::find($id); - $form->update($data); - flash($request->name . " Sundry Form has been updated")->success(); - return redirect('/sundry_form'); - }catch (QueryException $e){ - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $sundry = GeneralForm::find($id); - if ($sundry->delete()): - flash("Sundry Form has been deleted.")->success(); - return redirect('/sundry_form'); - endif; - } - - public function inactive() { - $sundries = GeneralForm::onlyTrashed() - ->where('item_type', 2) - ->orderBy('name', 'asc') - ->get(); - - if (empty($sundries)) { - flash()->error("There is no inactive sundry"); - return redirect()->route('sundry_form.index'); - } else { - return view('clinical_data::sundry_form.inactive', compact('sundries')); - } - } - - public function activate($id) { - $sundry = GeneralForm::withTrashed()->find($id); - - if ($sundry->restore()): - flash("Sundry Form has been activated.")->success(); - return redirect()-route('sundry_forms.inactive'); - endif; - } - -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/SupplierController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/SupplierController.php deleted file mode 100755 index f21eaf9c..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/SupplierController.php +++ /dev/null @@ -1,207 +0,0 @@ -middleware('auth'); - $this->middleware('permission:suppliers-list', ['only' => ['index']]); - $this->middleware('permission:suppliers-detail', ['only' => ['show']]); - $this->middleware('permission:suppliers-create', ['only' => ['create', 'store']]); - $this->middleware('permission:suppliers-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:suppliers-delete', ['only' => ['destroy']]); - $this->middleware('permission:suppliers-status', ['only' => ['activate, inactive']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $suppliers = Supplier::orderBy('name', 'asc') - ->paginate(500); - - $quotations = Quotation::distinct('supplier_id')->pluck('supplier_id', 'supplier_id')->toArray(); - return view('clinical_data::suppliers.index', compact('suppliers', 'quotations')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - return view('clinical_data::suppliers.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - $validator = Validator::make($request->all(), [ - 'name' => 'required', - //'mobile_number' => 'regex:/07\d{2} \d{3} \d{3}/' - //'mobile_number' => 'regex:/(07)[0-9]{8}/' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth()->user()->id; - $supplier = new Supplier; - - $supplier->name = $request->name; - $supplier->available = $request->available; - $supplier->company = $request->company; - $supplier->mobile_number = $request->mobile_number; - $supplier->address = $request->address; - $supplier->created_by = $logged_in_user_id; - $supplier->updated_by = $logged_in_user_id; - - try { - $supplier->save(); - flash($request->name . " Supplier has been saved")->success(); - return redirect("/suppliers/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $supplier = Supplier::where(['id' => $id])->first(); - - if (!$supplier) { - flash()->error("There is no such supplier"); - return redirect('/suppliers/'); - } else { - return view('clinical_data::suppliers.edit', compact('supplier')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - $validator = Validator::make($request->all(), [ - 'name' => 'required', - 'mobile_number' => 'regex:/07\d{2} \d{3} \d{3}/' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth()->user()->id; - - $supplier = Supplier::find($id); - $supplier->name = $request->name; - $supplier->available = $request->available; - $supplier->company = $request->company; - $supplier->mobile_number = $request->mobile_number; - $supplier->address = $request->address; - $supplier->updated_by = $logged_in_user_id; - - try { - $supplier->save(); - flash($request->name . " Supplier has been updated")->success(); - return redirect("/suppliers/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $supplier = Supplier::find($id); - - if ($supplier->delete()): - flash("Supplier has been deleted.")->success(); - return redirect('/suppliers/'); - endif; - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - - $suppliers = Supplier::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (empty($suppliers)) { - flash()->error("There is no inactive supplier"); - return redirect('/suppliers/'); - } else { - return view('clinical_data::suppliers.inactive', compact('suppliers')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $supplier = Supplier::withTrashed()->find($id); - - if ($supplier->restore()): - flash("Supplier has been activated.")->success(); - return redirect('/suppliers/inactive'); - endif; - } - -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/SymptomController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/SymptomController.php deleted file mode 100755 index f433a4c2..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/SymptomController.php +++ /dev/null @@ -1,316 +0,0 @@ -middleware('auth'); - $this->middleware('permission:symptom-list', ['only' => ['index']]); - $this->middleware('permission:symptom-create', ['only' => ['create', 'store']]); - $this->middleware('permission:symptom-edit', ['only' => ['edit', 'update', 'edit_all', 'update_all']]); - $this->middleware('permission:symptom-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $symptoms = Symptom::orderBy('name', 'asc')->paginate(2000); - $symptom_data = []; - $triage_symptoms = Triage::distinct('symptoms')->get(['symptoms']); - foreach ($triage_symptoms as $value) { - $actual_symptoms = explode(',', $value->symptoms); - foreach ($actual_symptoms as $actual_symptom) if(!empty($actual_symptom) && !in_array($actual_symptom, $symptom_data)) $symptom_data[] = $actual_symptom; - } - - return view('clinical_data::symptoms.index', compact('symptoms', 'symptom_data')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - return view('clinical_data::symptoms.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = Auth()->user()->id; - $symptom = new Symptom; - - $symptom->name = $request->name; - $symptom->prompts = $request->prompts; - $symptom->reference_text = implode(',', $request->reference_text); - $symptom->reference_link = implode(',', $request->reference_link); - $symptom->created_by = $logged_in_user_id; - $symptom->available = $request->available; - - try { - $symptom->save(); - flash($request->name . " Symptom has been saved")->success(); - return redirect("/symptoms/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $symptom = Symptom::where(['id' => $id])->first(); - - if (!$symptom) { - flash()->error("There is no such symptom"); - return redirect('/symptoms/'); - } else { - return view('clinical_data::symptoms.edit', compact('symptom')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = Auth()->user()->id; - - $symptom = Symptom::find($id); - $symptom->name = $request->name; - $symptom->prompts = $request->prompts; - $symptom->reference_text = $request->reference_text; - $symptom->reference_link = $request->reference_link; - $symptom->available = $request->available; - $symptom->updated_by = $logged_in_user_id; - - try { - $symptom->save(); - flash($request->name . " Symptom has been updated")->success(); - return redirect("/symptoms/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $symptom = Symptom::find($id); - - if ($symptom->delete()){ - flash("Symptom has been deleted.")->success(); - return redirect('/symptoms/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $symptoms = Symptom::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (empty($symptoms)) { - flash()->error("There is no inactive symptom"); - return redirect('/symptoms/'); - } else { - return view('clinical_data::symptoms.inactive', compact('symptoms')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $symptom = Symptom::withTrashed()->find($id); - - if ($symptom->restore()){ - flash("Symptom has been activated.")->success(); - return redirect('/symptoms/inactive'); - } - } - - /** - * Search a resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function search(Request $request) { - $query_name = $request->query_name; - $query_active = $request->query_active; - - if ($query_name != "") { - $symptoms = Symptom::where([ - ['active', '=', $query_active], - ['name', 'LIKE', '%' . $query_name . '%'] - ]) - ->orderBy('name', 'asc') - ->paginate(10) - ->setPath(''); - - $symptoms->appends(array( - 'query_name' => $query_name, - 'query_active' => $query_active - )); - - if (count($symptoms)) { - if ($query_active) { - return view('clinical_data::symptoms.index', compact('symptoms'))//; - ->withDetails($symptoms) - ->withQuery($query_name, $query_active); - } else { - return view('clinical_data::symptoms.inactive', compact('symptoms'))//; - ->withDetails($symptoms) - ->withQuery($query_name, $query_active); - } - } - } - flash()->error("No Details found. Try searching again!"); - return redirect('/symptoms/'); - } - - /** - * Display a listing of the active resources for bulk editing. - * - * @return \Illuminate\Http\Response - */ - public function edit_all() { - $symptoms = Symptom::orderBy('name', 'asc')->paginate(2000); - - if (count($symptoms) < 1) { - flash()->error("There is no active symptom"); - return redirect('/symptoms/'); - } else { - return view('clinical_data::symptoms.edit.all', compact('symptoms')); - } - } - - /** - * Update all the resources in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function update_all(Request $request) { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = Auth()->user()->id; - - $id_array = $request->id; - $name_array = $request->name; - $prompts_array = $request->prompts; - $reference_text_array = $request->reference_text; - $reference_link_array = $request->reference_link; - - for ($x = 0; $x < count($id_array); $x++){ - $symptom = Symptom::find($id_array[$x]); - - $symptom->name = $name_array[$x]; - $symptom->prompts = $prompts_array[$x]; - $symptom->reference_text = $reference_text_array[$x]; - $symptom->reference_link = $reference_link_array[$x]; - $symptom->updated_by = $logged_in_user_id; - - try { - $symptom->save(); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - flash("Symptoms have been updated")->success(); - return redirect("/symptoms/"); - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return String - */ - public function get_prompt($id) { - $prompts = DB::table('symptoms')->where('id', $id)->value('prompts'); - $reference_text = DB::table('symptoms')->where('id', $id)->value('reference_text'); - $data = $prompts.'&&&&Ref 1'; - - return $data; - } - - public function get_symptoms(){ - //code to be returned to view - $code = ""; - - $symptoms = Symptom::orderBy('name', 'asc')->get(); - - foreach ($symptoms as $symptom) { - $code .= ""; - } - - return $code; - } - - /* test server side scolling with datatables */ - public function datatable_test(){ - $symptoms = Symptom::orderBy('name', 'asc')->get(); - - return response()->json($symptoms); - } -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/UnitOfMeasureController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/UnitOfMeasureController.php deleted file mode 100755 index f62fa843..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/UnitOfMeasureController.php +++ /dev/null @@ -1,171 +0,0 @@ -middleware('auth'); - $this->middleware('permission:unit-of-measure-list', ['only' => ['index']]); - $this->middleware('permission:unit-of-measure-create', ['only' => ['create', 'store']]); - $this->middleware('permission:unit-of-measure-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:unit-of-measure-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $units_of_measure = UnitOfMeasure::orderBy('name', 'asc')->paginate(50); - - return view('clinical_data::unit_of_measure.index', compact('units_of_measure')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - return view('clinical_data::unit_of_measure.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - $unit_of_measure = new UnitOfMeasure; - - $unit_of_measure->name = $request->name; - $unit_of_measure->created_by = $logged_in_user_id; - $unit_of_measure->updated_by = $logged_in_user_id; - - try { - $unit_of_measure->save(); - flash($request->name . " Unit of Measure has been saved")->success(); - return redirect("/unit_of_measure/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $unit_of_measure = UnitOfMeasure::where(['id' => $id])->first(); - - if (!$unit_of_measure) { - flash()->error("There is no such Unit of Measure"); - return redirect('/unit_of_measure/'); - } else { - return view('clinical_data::unit_of_measure.edit', compact('unit_of_measure')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - $unit_of_measure = UnitOfMeasure::find($id); - - $unit_of_measure->name = $request->name; - $unit_of_measure->updated_by = $logged_in_user_id; - - try { - $unit_of_measure->save(); - flash($request->name . " Unit of Measure has been updated")->success(); - return redirect("/unit_of_measure/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $unit_of_measure = UnitOfMeasure::find($id); - - if ($unit_of_measure->delete()): - flash("Unit of Measure has been deleted.")->success(); - return redirect('/unit_of_measure/'); - endif; - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $units_of_measure = UnitOfMeasure::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($units_of_measure) < 1) { - flash()->error("There is no inactive Unit of Measure"); - return redirect('/unit_of_measure/'); - } else { - return view('clinical_data::unit_of_measure.inactive', compact('units_of_measure')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $unit_of_measure = UnitOfMeasure::withTrashed()->find($id); - - if ($unit_of_measure->restore()): - flash("Unit of Measure has been activated.")->success(); - return redirect('/unit_of_measure/inactive'); - endif; - } - -} diff --git a/docker/statistics/Modules/ClinicalData/Http/Controllers/VillageController.php b/docker/statistics/Modules/ClinicalData/Http/Controllers/VillageController.php deleted file mode 100755 index 4e055f21..00000000 --- a/docker/statistics/Modules/ClinicalData/Http/Controllers/VillageController.php +++ /dev/null @@ -1,184 +0,0 @@ -middleware('auth'); - $this->middleware('permission:village-list', ['only' => ['index']]); - $this->middleware('permission:village-create', ['only' => ['create', 'store']]); - $this->middleware('permission:village-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:village-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $villages = Village::orderBy('name', 'asc')->paginate(5000); - - $parishes = Parish::pluck('name', 'id'); - - return view('clinical_data::villages.index', compact('villages', 'parishes')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - $parishes = Parish::all(['id', 'name', 'subcounty_id'])->pluck("name_with_subcounty", "id")->prepend('- select -', '')->toArray(); - - return view('clinical_data::villages.create', compact('parishes')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - - request()->validate([ - 'name' => 'required', - 'parish_id' => 'required' - ]); - - $user_id = Auth::user()->id; - $village = new Village; - - $village->name = $request->name; - $village->parish_id = $request->parish_id; - $village->created_by = $user_id; - $village->updated_by = $user_id; - - try { - $village->save(); - flash($request->name . " Village has been saved")->success(); - return redirect("/villages/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $village = Village::where(['id' => $id])->first(); - - $parishes = Parish::all(['id', 'name', 'subcounty_id'])->pluck("name_with_subcounty", "id")->prepend('- select -', '')->toArray(); - - if (!$village) { - flash()->error("That village is not registered"); - return redirect('/villages/'); - } else { - return view('clinical_data::villages.edit', compact('village', 'parishes')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required', - 'parish_id' => 'required' - ]); - - $village = Village::find($id); - - $village->name = $request->name; - $village->parish_id = $request->parish_id; - $village->updated_by = Auth::user()->id; - - try { - $village->save(); - flash($request->name . " Village has been updated")->success(); - return redirect("/villages/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $village = Village::find($id); - - if ($village->delete()) { - flash("Village has been deleted.")->success(); - return redirect('/villages/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $villages = Village::onlyTrashed() - ->orderBy('name', 'asc') - ->get(); - - $parishes = Parish::pluck('name', 'id'); - - if (count($villages) < 1) { - flash()->error("There is no inactive villages"); - return redirect('/villages/'); - } else { - return view('clinical_data::villages.inactive', compact('villages', 'parishes')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $village = Village::withTrashed()->find($id); - - if($village->restore()){ - flash("Village has been activated.")->success(); - return redirect('/villages/inactive'); - } - } - -} diff --git a/docker/statistics/Modules/ClinicalData/Providers/ClinicalDataServiceProvider.php b/docker/statistics/Modules/ClinicalData/Providers/ClinicalDataServiceProvider.php deleted file mode 100644 index 2a5ba04b..00000000 --- a/docker/statistics/Modules/ClinicalData/Providers/ClinicalDataServiceProvider.php +++ /dev/null @@ -1,116 +0,0 @@ -registerTranslations(); - $this->registerConfig(); - $this->registerViews(); - $this->loadMigrationsFrom(module_path($this->moduleName, 'Database/Migrations')); - } - - /** - * Register the service provider. - * - * @return void - */ - public function register() - { - $this->app->register(RouteServiceProvider::class); - $this->app->bind(ClinicsServiceInterface::class, ClinicsService::class); - } - - /** - * Register config. - * - * @return void - */ - protected function registerConfig() - { - $this->publishes([ - module_path($this->moduleName, 'Config/config.php') => config_path($this->moduleNameLower . '.php'), - ], 'config'); - $this->mergeConfigFrom( - module_path($this->moduleName, 'Config/config.php'), $this->moduleNameLower - ); - } - - /** - * Register views. - * - * @return void - */ - public function registerViews() - { - $viewPath = resource_path('views/modules/' . $this->moduleNameLower); - - $sourcePath = module_path($this->moduleName, 'Resources/views'); - - $this->publishes([ - $sourcePath => $viewPath - ], ['views', $this->moduleNameLower . '-module-views']); - - $this->loadViewsFrom(array_merge($this->getPublishableViewPaths(), [$sourcePath]), $this->moduleNameLower); - } - - /** - * Register translations. - * - * @return void - */ - public function registerTranslations() - { - $langPath = resource_path('lang/modules/' . $this->moduleNameLower); - - if (is_dir($langPath)) { - $this->loadTranslationsFrom($langPath, $this->moduleNameLower); - $this->loadJsonTranslationsFrom($langPath); - } else { - $this->loadTranslationsFrom(module_path($this->moduleName, 'Resources/lang'), $this->moduleNameLower); - $this->loadJsonTranslationsFrom(module_path($this->moduleName, 'Resources/lang')); - } - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides() - { - return []; - } - - private function getPublishableViewPaths(): array - { - $paths = []; - foreach (\Config::get('view.paths') as $path) { - if (is_dir($path . '/modules/' . $this->moduleNameLower)) { - $paths[] = $path . '/modules/' . $this->moduleNameLower; - } - } - return $paths; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Providers/RouteServiceProvider.php b/docker/statistics/Modules/ClinicalData/Providers/RouteServiceProvider.php deleted file mode 100755 index c1210ecd..00000000 --- a/docker/statistics/Modules/ClinicalData/Providers/RouteServiceProvider.php +++ /dev/null @@ -1,68 +0,0 @@ -mapApiRoutes(); - $this->mapWebRoutes(); - } - - /** - * Define the "web" routes for the application. - * - * These routes all receive session state, CSRF protection, etc. - * - * @return void - */ - protected function mapWebRoutes() - { - Route::middleware('web') - ->namespace($this->namespace) - ->group(module_path('ClinicalData', '/Routes/web.php')); - } - - /** - * Define the "api" routes for the application. - * - * These routes are typically stateless. - * - * @return void - */ - protected function mapApiRoutes() - { - Route::prefix('api') - ->middleware('api') - ->namespace($this->namespace) - ->group(module_path('ClinicalData', '/Routes/api.php')); - } -} diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/account_types/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/account_types/create.blade.php deleted file mode 100755 index 76f661ec..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/account_types/create.blade.php +++ /dev/null @@ -1,47 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('account_types.add_account_type') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'account_types.store', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('account_types.account_type_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('description', __('account_types.description')) }} - {{ Form::text('description', '', ['class' => 'form-control']) }} -
    - - {{ Form::button(__('account_types.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('account_types.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/account_types/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/account_types/edit.blade.php deleted file mode 100755 index 1918d255..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/account_types/edit.blade.php +++ /dev/null @@ -1,47 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('account_types.edit_account_type') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($account_type, ['method' => 'PUT', 'route' => ['account_types.update',$account_type], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('account_types.account_type_name')) }} - {{ Form::text('name', $account_type->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('description', __('account_types.description')) }} - {{ Form::text('description', $account_type->description, ['class' => 'form-control']) }} -
    - - {{ Form::button(__('account_types.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('account_types.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/account_types/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/account_types/inactive.blade.php deleted file mode 100755 index 2686bdec..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/account_types/inactive.blade.php +++ /dev/null @@ -1,84 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('account_types.activate_account_types') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    -
    - - - - - - - - - - - - - - - - - @foreach($account_types as $account_type) - - - - - - - @endforeach - -
    {{ __('account_types.account_type_name') }}{{ __('account_types.description') }}
    {{ __('account_types.account_type_name') }}{{ __('account_types.description') }}
    {{ $account_type->name }}{{ $account_type->description }} - {{ Form::model($account_type->id ,['method' => 'POST', 'route' => ['account_types.activate', $account_type->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/account_types/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/account_types/index.blade.php deleted file mode 100755 index 7521baa4..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/account_types/index.blade.php +++ /dev/null @@ -1,86 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('account_types.account_types') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    -
    - - - - - - - - - - - - - - - - - @foreach($account_types as $account_type) - - - - - - - @endforeach - -
    {{ __('account_types.account_type_name') }}{{ __('account_types.description') }}
    {{ __('account_types.account_type_name') }}{{ __('account_types.description') }}
    {{ $account_type->name }}{{ $account_type->description }}
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/age_groups/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/age_groups/create.blade.php deleted file mode 100755 index ce3f78f5..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/age_groups/create.blade.php +++ /dev/null @@ -1,59 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('age_groups.add_age_group') }}

    -
    -
    - -
    -
    - -@include('clinical_data::age_groups.menu') - -
    - @include('flash::message') - - {{ Form::open(['route' => 'age_groups.store', 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('age_groups.age_group')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('from_age', __('age_groups.from_age')) }} - {{ Form::number('from_age', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    -
    - {{ Form::label('age_type', __('age_groups.age_type')) }} - {{ Form::select('age_type', ['' => '--select--', 1 => 'Years', 2 => 'Months', 3 => 'Days'], '', ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('to_age', __('age_groups.to_age')) }} - {{ Form::number('to_age', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - - {{ Form::button(__('age_groups.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('age_groups.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/age_groups/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/age_groups/edit.blade.php deleted file mode 100755 index 8428fb9e..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/age_groups/edit.blade.php +++ /dev/null @@ -1,64 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('age_groups.edit_age_group') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::age_groups.menu') -
    -
    - - -
    - @include('flash::message') - - {{ Form::model($age_group, ['method' => 'PUT', 'route' => ['age_groups.update',$age_group], 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('age_groups.age_group')) }} - {{ Form::text('name', $age_group->name, ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('from_age', __('age_groups.from_age')) }} - {{ Form::number('from_age', $age_group->from_age, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    -
    - {{ Form::label('age_type', __('age_groups.age_type')) }} - {{ Form::select('age_type', ['' => '--select--', 1 => 'Years', 2 => 'Months', 3 => 'Days'], $age_group->age_type, ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('to_age', __('age_groups.to_age')) }} - {{ Form::number('to_age', $age_group->to_age, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - - {{ Form::button(__('age_groups.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('age_groups.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/age_groups/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/age_groups/inactive.blade.php deleted file mode 100755 index cfe3e8a4..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/age_groups/inactive.blade.php +++ /dev/null @@ -1,87 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('age_groups.age_groups') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::age_groups.menu') -
    -
    - - -
    -
    - - @include('flash::message') -
    -
    - - - - - - - - - - - - - - - @foreach($age_groups as $age_group) - - - - - @endforeach - -
    {{ __('age_groups.age_group') }}
    {{ __('age_groups.age_group') }}
    {{ $age_group->name }} - {{ Form::model($age_group->id ,['method' => 'POST', 'route' => ['age_groups.activate', $age_group->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/age_groups/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/age_groups/index.blade.php deleted file mode 100755 index c75522d3..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/age_groups/index.blade.php +++ /dev/null @@ -1,102 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('age_groups.age_groups') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::age_groups.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    -
    - - - - - - - - - - - - - - - - - - - - - - - @foreach($age_groups as $age_group) - @php $age_types = [1 => 'Years', 2 => 'Months', 3 => 'Days']; @endphp - - - - - - - - - - @endforeach - -
    {{ __('age_groups.age_group') }}{{ __('age_groups.age_type') }}{{ __('age_groups.from_age') }}{{ __('age_groups.to_age') }}
    {{ __('age_groups.age_group') }}{{ __('age_groups.age_type') }}{{ __('age_groups.from_age') }}{{ __('age_groups.to_age') }}
    {{ $age_group->name }}{{ $age_types[$age_group->age_type] ?? '' }}{{ $age_group->from_age }}{{ $age_group->to_age }} - {{ __('age_groups.edit') }} - - {{ Form::model($age_group->id ,['method' => 'DELETE', 'route' => ['age_groups.destroy', $age_group->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/age_groups/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/age_groups/menu.blade.php deleted file mode 100755 index 80145718..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/age_groups/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - {{ __('age_groups.add_age_group') }} - {{ __('age_groups.view_age_groups') }} - {{ __('age_groups.activate_age_group') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/bed_categories/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/bed_categories/create.blade.php deleted file mode 100755 index 10877d72..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/bed_categories/create.blade.php +++ /dev/null @@ -1,134 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('bed_categories.add_bed_categories') }}

    -
    -
    - -
    -
    - -@include('clinical_data::bed_categories.menu') - -
    -
    - - @include('flash::message') -
    -
    -
    - {{ Form::open(['route' => 'bed_categories.store', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('bed_categories.room_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('cost_type', __('bed_categories.type_of_pricing')) }} -
    - {{ Form::radio('cost_type', 1, false, ["required", "onclick" => "show('static_div');hide('structured_div');"]) }} {{ __('bed_categories.static_cost') }}    - {{ Form::radio('cost_type', 2, false, ["required", "onclick" => "show('structured_div');hide('static_div');"]) }} {{ __('bed_categories.structured_cost') }} -
    -
    - -
    - - {{ Form::select('income_account', $income_accounts, null, ['class'=>'form-control compulsory income_account', 'required']) }} -
    -
    - {{ Form::label('available',__('bed_categories.is_bed_category_available'), ["class"=>'col-md-12']) }} -   {{ __('bed_categories.yes') }} {{ Form::radio('available', 1, false, ['class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -   {{ __('bed_categories.no') }} {{ Form::radio('available', 0, false, ['class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    -
    -
    -
    - - - - {{ Form::button(__('bed_categories.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('bed_categories.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} -
    - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/bed_categories/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/bed_categories/edit.blade.php deleted file mode 100755 index c47a6032..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/bed_categories/edit.blade.php +++ /dev/null @@ -1,132 +0,0 @@ -@extends('layouts.main') -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('bed_categories.edit_bed_category') }}

    -
    -
    - -
    -
    - -@include('clinical_data::bed_categories.menu') - -
    -
    - - @include('flash::message') -
    -
    -
    - {{ Form::model($inpatient_bed_category, ['method' => 'PUT', 'route' => ['bed_categories.update',$inpatient_bed_category] , 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('bed_categories.room_name')) }} - {{ Form::text('name', $inpatient_bed_category->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('cost_type', __('bed_categories.type_of_pricing')) }} -
    - {{ Form::radio('cost_type', 1, false, ["required", "onclick" => "show('static_div');hide('structured_div');"]) }} {{ __('bed_categories.static_cost') }}    - {{ Form::radio('cost_type', 2, false, ["required", "onclick" => "show('structured_div');hide('static_div');"]) }} {{ __('bed_categories.structured_cost') }} -
    -
    - -
    - - {{ Form::select('income_account', $chart_of_accounts, $inpatient_bed_category->income_account, ['class'=>'form-control compulsory', 'required']) }} -
    -
    - {{ Form::label('', __('bed_categories.is_bed_category_available'), ["class"=>'col-md-12']) }} -   {{ __('bed_categories.yes') }} {{ Form::radio('available', 1, $inpatient_bed_category->available == 1, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -   {{ __('bed_categories.no') }} {{ Form::radio('available', 0, $inpatient_bed_category->available == 0, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    -
    -    -
    -
    -
    - {{ Form::label('cost_per_night', __('bed_categories.cost_per_night')) }} - {{ Form::number('cost_per_night', $inpatient_bed_category->cost_per_night, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    -
    - {{ Form::label('cost_first_night', __('bed_categories.cost_of_first_night')) }} - {{ Form::number('cost_first_night', $inpatient_bed_category->cost_first_night, ['class' => 'form-control', 'required']) }} -
    - -
    -
    -
    - - -
    -
    -
    -
    - - -
    -
    -
    - -
    - {{ Form::label('cost_range', __('bed_categories.range_cost')) }} - {{ Form::number('cost_range', $inpatient_bed_category->cost_range, ['class' => 'form-control compulsory']) }} -
    - -
    - {{ Form::label('cost_after', __('bed_categories.cost_for_nights_thereafter')) }} - {{ Form::number('cost_after', $inpatient_bed_category->cost_after, ['class' => 'form-control compulsory']) }} -
    -
    - - {{ Form::button(__('bed_categories.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('bed_categories.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} -
    - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/bed_categories/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/bed_categories/inactive.blade.php deleted file mode 100755 index 2c14d4f7..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/bed_categories/inactive.blade.php +++ /dev/null @@ -1,95 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('bed_categories.inactive_bed_categories') }}

    -
    -
    - -
    -
    - -@include('clinical_data::bed_categories.menu') - -
    -
    - @include('flash::message') -
    -

    Export data to Copy, CSV, Excel, PDF & Print

    -
    - - - - - - - - - - - - - - - - @php $counter = 1; @endphp - @foreach($bed_categories as $bed_category) - - - - - - - - - - - - @php $counter++; @endphp - @endforeach - -
    #{{ __('bed_categories.bed_category_name') }}{{ __('bed_categories.type_of_pricing') }}{{ __('bed_categories.per_night') }}{{ __('bed_categories.first_night') }}{{ __('bed_categories.range_of_nights') }}{{ __('bed_categories.cost_for_range') }}{{ __('bed_categories.cost_there_after') }}
    {{ $counter }}{{ $bed_category->name }}{{ $bed_category->cost_type == 1 ? 'Static Cost' : 'Structured cost' }}{{ !is_null($bed_category->cost_per_night) ? ugandan_shillings($bed_category->cost_per_night) : 'N/A' }}{{ !is_null($bed_category->cost_first_night) ? ugandan_shillings($bed_category->cost_first_night) : 'N/A' }}{{ $bed_category->to_night }}{{ !is_null($bed_category->cost_range) ? ugandan_shillings($bed_category->cost_range) : 'N/A'}}{{ !is_null($bed_category->cost_after) ? ugandan_shillings($bed_category->cost_after) : 'N/A' }} - {{ __('bed_categories.activate') }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/bed_categories/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/bed_categories/index.blade.php deleted file mode 100755 index c364b4d6..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/bed_categories/index.blade.php +++ /dev/null @@ -1,114 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('bed_categories.inpatient_bed_categories') }}

    -
    -
    - -
    -
    - -@include('clinical_data::bed_categories.menu') - -
    -
    - @include('flash::message') -
    -

    {{ __('bed_categories.export_data_to_csv_excel_print') }}

    -
    - - - - - - - - - - - - - - - - - - @php $counter = 1; @endphp - @foreach($bed_categories as $bed_category) - - - - - - - - - - - - - - @php $counter++; @endphp - @endforeach - -
    #{{ __('bed_categories.bed_category_name') }}{{ __('bed_categories.type_of_pricing') }}{{ __('bed_categories.per_night') }}{{ __('bed_categories.first_night') }}{{ __('bed_categories.range_of_nights') }}{{ __('bed_categories.cost_for_range') }}{{ __('bed_categories.cost_there_after') }}Income Account
    {{ $counter }}{{ $bed_category->name }}{{ $bed_category->cost_type == 1 ? 'Static Cost' : 'Structured cost' }}{{ !is_null($bed_category->cost_per_night) ? ugandan_shillings($bed_category->cost_per_night) : 'N/A' }}{{ !is_null($bed_category->cost_first_night) ? ugandan_shillings($bed_category->cost_first_night) : 'N/A' }} - @if(!is_null($bed_category->to_night)) - 2 - {{ $bed_category->to_night }} - @else - N/A - @endif - {{ !is_null($bed_category->cost_range) ? ugandan_shillings($bed_category->cost_range) : 'N/A'}}{{ !is_null($bed_category->cost_after) ? ugandan_shillings($bed_category->cost_after) : 'N/A' }}{{ get_name($bed_category->income_account, "id", "name", "chart_of_accounts" ) }} - {{ __('bed_categories.edit') }} - - @if (!in_array($bed_category->id, $bed_data)) - {{ Form::model($bed_category->id, ['method' => 'DELETE', 'route' => ['bed_categories.destroy', $bed_category->id]]) }} - - {{ Form::close() }} - @else - Bed Category in use - @endif -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/bed_categories/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/bed_categories/menu.blade.php deleted file mode 100755 index 1cd5b7b3..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/bed_categories/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - Add bed category - View bed category - Activate bed category -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/chart_of_accounts/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/chart_of_accounts/create.blade.php deleted file mode 100755 index 094db45b..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/chart_of_accounts/create.blade.php +++ /dev/null @@ -1,129 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('chart_of_accounts.add_chart_of_account') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('clinical_data::chart_of_accounts.menu') - - @include('flash::message') -
    - {{ Form::open(['route' => 'chart_of_accounts.store', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('chart_of_accounts.chart_of_account_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('type', __('chart_of_accounts.type')) }} - {{ Form::select('type',$account_types,[],['class' => 'form-control', 'id'=>'account_types']) }} -
    - - - - {{-- --}} - -
    - {{ Form::label('description', __('chart_of_accounts.description')) }} - {{ Form::text('description', '', ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('sub_account_of',__('chart_of_accounts.sub_account_of')) }} - {{ Form::select('sub_account_of',$chart_of_accounts_list,'',['class' => 'form-control']) }} -
    - - @if(Auth::user()->can('create-core-chart-of-account')) -
    - {{ Form::label('core','System core chart of account') }} -
    - {{ Form::radio('core', 1, false, ["required"]) }} Yes   - {{ Form::radio('core', 0, false, ["required"]) }} No -
    -
    - @endif - - @if(Auth::user()->can('add-chart-of-account-slug')) -
    - {{ Form::label('slug',__('chart_of_accounts.slug'). ' (Optional)') }} - {{ Form::select('slug',$slugs,'',['class' => 'form-control']) }} -
    - @endif - - {{ Form::button(__('chart_of_accounts.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('chart_of_accounts.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/chart_of_accounts/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/chart_of_accounts/edit.blade.php deleted file mode 100755 index ac7e6788..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/chart_of_accounts/edit.blade.php +++ /dev/null @@ -1,94 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('chart_of_accounts.edit_chart_of_account') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('clinical_data::chart_of_accounts.menu') - - @include('flash::message') -
    - {{ Form::model($chart_of_account, ['method' => 'PUT', 'route' => ['chart_of_accounts.update',$chart_of_account->id], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('chart_of_accounts.chart_of_account_name')) }} - {{ Form::text('name', $chart_of_account->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - @if($chart_of_account->core == 0) -
    - {{ Form::label('type', __('chart_of_accounts.type')) }} - {{ Form::select('type', $account_types, $chart_of_account->type, ['class' => 'form-control','id'=>'account_types']) }} -
    - @endif - -
    - {{ Form::label('description', __('chart_of_accounts.description')) }} - {{ Form::text('description', $chart_of_account->description, ['class' => 'form-control']) }} -
    - - @if($chart_of_account->core == 0) -
    - {{ Form::label('sub_account_of',__('chart_of_accounts.sub_account_of')) }} - {{ Form::select('sub_account_of', $chart_of_accounts_list, $chart_of_account->sub_account_of, ['class' => 'form-control']) }} -
    - @endif - -
    - {{ Form::label('balance', __('chart_of_accounts.opening_balance')) }} - @if($chart_of_account->core == 1) - {{ Form::number('balance', $chart_of_account->balance, ['class' => 'form-control', 'step' => 0.01, 'readonly']) }} - @else - {{ Form::number('balance', $chart_of_account->balance, ['class' => 'form-control', 'step' => 0.01]) }} - @endif -
    - - @if(Auth::user()->can('create-core-chart-of-account') && $chart_of_account->core == 0) -
    - {{ Form::label('core',__('chart_of_accounts.system_core_account')) }} -
    - {{ Form::radio('core', '1', $chart_of_account->core == "1" ? 1 : 0) }} Yes    - {{ Form::radio('core','0', $chart_of_account->core == "0" ? 1 : 0) }} No -
    -
    - @endif - - @if(Auth::user()->can('add-chart-of-account-slug') && $chart_of_account->core == 0) -
    - {{ Form::label('slug',__('chart_of_accounts.slug'). ' (Optional)') }} - {{ Form::select('slug',$slugs,$chart_of_account->slug,['class' => 'form-control']) }} -
    - @endif - - {{ Form::button(__('chart_of_accounts.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('chart_of_accounts.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/chart_of_accounts/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/chart_of_accounts/inactive.blade.php deleted file mode 100755 index a0f85c35..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/chart_of_accounts/inactive.blade.php +++ /dev/null @@ -1,98 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('chart_of_accounts.chart_of_accounts') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('clinical_data::chart_of_accounts.menu') - - @include('flash::message') -
    -

    {{ __('chart_of_accounts.export_data_to_copy_csv_pdf_print') }}

    -
    - - - - - - - - - - - - - - - - - - - - - - - @foreach($chart_of_accounts as $chart_of_account) - - - - -{{-- --}} - - - - - - @endforeach - -
    {{ __('chart_of_accounts.chart_of_account_name') }}{{ __('chart_of_accounts.type') }}{{ __('chart_of_accounts.description') }}{{ __('chart_of_accounts.sub_account_of') }}{{ __('chart_of_accounts.balance') }}
    {{ __('chart_of_accounts.chart_of_account_name') }}{{ __('chart_of_accounts.type') }}{{ __('chart_of_accounts.description') }}{{ __('chart_of_accounts.sub_account_of') }}{{ __('chart_of_accounts.balance') }}
    {{ $chart_of_account->name }}{{ $account_types[$chart_of_account->type]}}{{ $chart_of_account->description }}{{ $chart_of_accounts_list[$chart_of_account->sub_account_of] }}{{ get_name($chart_of_account->sub_account_of, 'id', 'name', 'chart_of_accounts') }}{{ ugandan_shillings($chart_of_account->balance) }} - {{ Form::model($chart_of_account->id ,['method' => 'POST', 'route' => ['chart_of_accounts.activate', $chart_of_account->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/chart_of_accounts/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/chart_of_accounts/index.blade.php deleted file mode 100755 index e90e1ddb..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/chart_of_accounts/index.blade.php +++ /dev/null @@ -1,162 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('chart_of_accounts.chart_of_accounts') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('clinical_data::chart_of_accounts.menu') - - @include('flash::message') -
    -

    {{ __('chart_of_accounts.export_data_to_copy_csv_pdf_print') }}

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @if(count($chart_of_accounts)>0) - @foreach($chart_of_accounts as $chart_of_account) - - - - {{----}} - - - - - - - - - @endforeach - @endif - -
    {{ __('chart_of_accounts.chart_of_account_name') }}{{ __('chart_of_accounts.type') }}{{ __('chart_of_accounts.description') }}{{ __('chart_of_accounts.sub_account_of') }}{{ __('chart_of_accounts.balance') }}{{ __('chart_of_accounts.created_by') }}
    {{ __('chart_of_accounts.chart_of_account_name') }}{{ __('chart_of_accounts.type') }}{{ __('chart_of_accounts.description') }}{{ __('chart_of_accounts.sub_account_of') }}{{ __('chart_of_accounts.balance') }}{{ __('chart_of_accounts.created_by') }}
    {{ $chart_of_account->name }} - @php - - $types = explode(',',$chart_of_account->type); - for($i = 0; $i < count($types); $i++){ - echo get_name($types[$i], 'id', 'name', 'account_types')."
    "; - } - @endphp -
    {{ isset($account_types[$chart_of_account->type]) ? $account_types[$chart_of_account->type] : "" }}{{ $chart_of_account->description }}{{ isset($chart_of_accounts_list[$chart_of_account->sub_account_of])? $chart_of_accounts_list[$chart_of_account->sub_account_of] : "" }} - @if(!in_array($chart_of_account->type, [1, 2, 4, 7])) - {{ ugandan_shillings($chart_of_account->balance) }} - @endif - - @if($chart_of_account->type == 4) - @php - $record = get_latest_banking_record($chart_of_account->id, getTodayCarbon()->toDateString()); - @endphp - {{ ugandan_shillings(is_null($record) ? 0 : $record->account_balance) }} - @endif - - {{ get_full_name($chart_of_account->created_by, "id", "first_name", "last_name", "users") }} - - {{ __('chart_of_accounts.edit') }} - - @if($chart_of_account->core == 0) - {{ Form::model($chart_of_account->id ,['method' => 'DELETE', 'route' => ['chart_of_accounts.destroy', $chart_of_account->id]]) }} - - {{ Form::close() }} - @endif - - @if($chart_of_account->type == 1) - @php - $search_type = 'custom_date_range'; - $end_of_month = \Carbon\Carbon::today()->endOfMonth()->toDateString(); - $start_of_month = \Carbon\Carbon::today()->startOfMonth()->toDateString(); - $string = $search_type.",".$start_of_month.",".$end_of_month.",".'incomes'.",".$chart_of_account->id.","."6"; - @endphp - {{ __('chart_of_accounts.report') }} - @endif - @if($chart_of_account->type == 2) - @php - $search_type = 'custom_date_range'; - $end_of_month = \Carbon\Carbon::today()->endOfMonth()->toDateString(); - $start_of_month = \Carbon\Carbon::today()->startOfMonth()->toDateString(); - $string = $search_type.",".$start_of_month.",".$end_of_month.",".'payments'.",".$chart_of_account->id; - @endphp - {{ __('chart_of_accounts.report') }} - @endif - @if($chart_of_account->type == 7) - @php - $search_type = 'custom_date_range'; - $end_of_month = \Carbon\Carbon::today()->endOfMonth()->toDateString(); - $start_of_month = \Carbon\Carbon::today()->startOfMonth()->toDateString(); - $string = $search_type.",".$start_of_month.",".$end_of_month.",".'cog'.",".$chart_of_account->id; - @endphp - - {{ __('chart_of_accounts.report') }} - @endif -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/chart_of_accounts/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/chart_of_accounts/menu.blade.php deleted file mode 100755 index b7769534..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/chart_of_accounts/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - {{ __('chart_of_accounts.add_chart_of_account') }} - {{ __('chart_of_accounts.view_chart_of_accounts') }} - {{ __('chart_of_accounts.activate_chart_of_accounts') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/clinical_data/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/clinical_data/index.blade.php deleted file mode 100755 index 0092d844..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/clinical_data/index.blade.php +++ /dev/null @@ -1,1172 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('clinical_data.clinical_data') }}

    -
    -
    - -
    -
    - -
    -
    - @if(Auth::user()->can('drug-form-create') || Auth::user()->can('drug-form-list') || Auth::user()->can('drug-form-delete')) -
    -

    {{ __('clinical_data.title_drug_forms') }}

    - -
    - @endif - - @if(Auth::user()->can('drug-unit-create') || Auth::user()->can('drug-unit-list') || Auth::user()->can('drug-unit-delete')) -
    -

    {{ __('clinical_data.title_drug_units') }}

    - -
    - @endif - - @if(Auth::user()->can('drug-category-create') || Auth::user()->can('drug-category-list') || Auth::user()->can('drug-category-delete')) -
    -

    {{ __('clinical_data.title_drug_categories') }}

    - -
    - @endif -
    -
    -
    - @if(Auth::user()->can('symptom-create') || Auth::user()->can('symptom-list') || Auth::user()->can('symptom-delete')) -
    -

    {{ __('clinical_data.title_symptoms') }}

    - -
    - @endif - - @if(Auth::user()->can('diagnosis-create') || Auth::user()->can('diagnosis-list') || Auth::user()->can('diagnosis-delete')) -
    -

    {{ __('clinical_data.title_diagnoses') }}

    - -
    - @endif - - @if(Module::has('Investigations') && Module::isEnabled('Investigations') && (Auth::user()->can('investigations-create') || Auth::user()->can('investigations-list') || Auth::user()->can('investigations-delete'))) -
    -

    {{ __('clinical_data.title_investigations') }}

    - -
    - @endif -
    -
    -
    - @if(Module::has('WardManagement') && Module::isEnabled('WardManagement') && (Auth::user()->can('ward-create') || Auth::user()->can('ward-list') || Auth::user()->can('ward-delete'))) -
    -

    {{ __('clinical_data.title_wards') }}

    - -
    - @endif - - @if(Auth::user()->can('clinic-create') || Auth::user()->can('clinic-list') || Auth::user()->can('clinic-delete')) -
    -

    {{ __('clinical_data.title_clinics') }}

    - -
    - @endif - - @if(Auth::user()->can('procedure-create') || Auth::user()->can('procedure-list') || Auth::user()->can('procedure-delete')) -
    -

    Procedures

    - -
    - @endif -
    -
    -
    - @if(Auth::user()->can('procedure-category-create') || Auth::user()->can('procedure-category-list') || Auth::user()->can('procedure-category-delete')) -
    -

    {{ __('clinical_data.title_procedure_categories') }}

    - -
    - @endif - - @if(Auth::user()->can('sundry-create') || Auth::user()->can('sundry-list') || Auth::user()->can('sundry-delete')) -
    -

    {{ __('clinical_data.title_sundries') }}

    - -
    - @endif - @if(Auth::user()->can('sundry-form-create') || Auth::user()->can('sundry-form-list') || Auth::user()->can('sundry-form-delete')) -
    -

    {{ __('clinical_data.title_sundries_forms') }}

    - -
    - @endif - @if(Module::has('Investigations') && Module::isEnabled('Investigations') && (Auth::user()->can('investigations-category-create') || Auth::user()->can('investigations-category-list') || Auth::user()->can('investigations-category-delete'))) -
    -

    {{ __('clinical_data.title_investigation_categories') }}

    - -
    - @endif -
    -
    -
    - @if(Auth::user()->can('observation-create') || Auth::user()->can('observation-list') || Auth::user()->can('observation-delete')) -
    -

    {{ __('clinical_data.title_observations') }}

    - -
    - @endif - - @if(Auth::user()->can('dosage-frequency-create') || Auth::user()->can('dosage-frequency-list') || Auth::user()->can('dosage-frequency-delete')) -
    -

    {{ __('clinical_data.title_dosage_frequencies') }}

    - -
    - @endif - - @if(Auth::user()->can('referral-hospital-create') || Auth::user()->can('referral-hospital-list') || Auth::user()->can('referral-hospital-delete')) -
    -

    {{ __('clinical_data.title_referral_hospitals') }}

    - -
    - @endif -
    -
    -
    - @if(Auth::user()->can('age-group-create') || Auth::user()->can('age-group-list') || Auth::user()->can('age-group-delete')) -
    -

    {{ __('clinical_data.title_age_groups') }}

    - -
    - @endif - - @if(Auth::user()->can('hmis-category-create') || Auth::user()->can('hmis-category-list') || Auth::user()->can('hmis-category-delete')) -
    -

    {{ __('clinical_data.title_hmis_categories') }}

    - -
    - @endif - - @if(Auth::user()->can('unit-of-measure-create') || Auth::user()->can('unit-of-measure-list') || Auth::user()->can('unit-of-measure-delete')) -
    -

    {{ __('clinical_data.title_units_of_measure') }}

    - -
    - @endif -
    -
    -
    - @if( Auth::user()->can('specialty-create') || Auth::user()->can('specialty-list') || Auth::user()->can('specialty-delete')) -
    -

    {{ __('clinical_data.title_specialities') }}

    - -
    - @endif - - @if(Auth::user()->can('hmis-category-option-create') || Auth::user()->can('hmis-category-option-list') || Auth::user()->can('hmis-category-option-delete')) -
    -

    {{ __('clinical_data.title_hmis_category_options') }}

    - -
    - @endif - - @if(Module::has('Investigations') && Module::isEnabled('Investigations') && (Auth::user()->can('investigations-create') || Auth::user()->can('investigations-list') || Auth::user()->can('investigations-delete'))) -
    -

    {{ __('clinical_data.title_specialised_variables') }}

    - -
    - @endif -
    -
    -
    - @if(Module::has('Investigations') && Module::isEnabled('Investigations') && (Auth::user()->can('investigations-codes-create') || Auth::user()->can('investigations-codes-list') || Auth::user()->can('investigations-codes-delete'))) -
    -

    {{ __('clinical_data.title_test_codes') }}

    - -
    - @endif - - @if(Module::has('Investigations') && Module::isEnabled('Investigations') && (Auth::user()->can('lab-instruments-create') || Auth::user()->can('lab-instruments-list') || Auth::user()->can('lab-instruments-delete'))) -
    -

    {{ __('clinical_data.title_lab_instruments') }}

    - -
    - @endif - - {{-- @if(Auth::user()->can('general_items-create') || Auth::user()->can('general_items-list') || Auth::user()->can('general_items-delete')) --}} -
    -

    {{ __('clinical_data.general_items') }}

    - -
    - {{-- @endif --}} -
    -
    -
    - @if(Module::has('Investigations') && Module::isEnabled('Investigations') && (Auth::user()->can('result-templates-create') || Auth::user()->can('result-templates-list') || Auth::user()->can('result-templates-delete'))) -
    -

    Investigation Result Templates

    - -
    - @endif - - @if(Auth::user()->can('outcome-create') || Auth::user()->can('outcome-list') || Auth::user()->can('outcome-delete')) -
    -

    {{ __('clinical_data.title_outcomes') }}

    - -
    - @endif - - @if(Module::has('Investigations') && Module::isEnabled('Investigations') && (Auth::user()->can('dental-create') || Auth::user()->can('dental-list') || Auth::user()->can('dental-delete'))) -
    -

    {{ __('clinical_data.title_dentals') }}

    - -
    - @endif -
    -
    -
    - @if(Module::has('Investigations') && Module::isEnabled('Investigations') && (Auth::user()->can('radiology-create') || Auth::user()->can('radiology-list') || Auth::user()->can('radiology-delete'))) -
    -

    {{ __('clinical_data.title_radiologies') }}

    - -
    - @endif - - @if(Auth::user()->can('eye_glasses-create') || Auth::user()->can('eye_glasses-list') || Auth::user()->can('eye_glasses-delete')) -
    -

    {{ __('clinical_data.opticals') }}

    - -
    - @endif - - @if( Auth::user()->can('test_areas-create') || Auth::user()->can('test_areas-list') || Auth::user()->can('test_areas-delete')) -
    -

    Slit Lamp Test Areas

    - -
    - @endif -
    - -
    - @if( Auth::user()->can('test_area_values-create') || Auth::user()->can('test_area_values-list') || Auth::user()->can('test_area_values-delete')) -
    -

    Slit Lamp Test Area Values

    - -
    - @endif - - @if( Auth::user()->can('hmis-ward-list') || Auth::user()->can('hmis-ward-create') || Auth::user()->can('hmis-ward-list')) -
    -

    {{ __('wards.hmis_ward_list') }}

    - -
    - @endif - - @if( Auth::user()->can('list-patient-registration-fields') || Auth::user()->can('create-patient-registration-field') || Auth::user()->can('delete-patient-registration-field')) -
    -

    {{ __('patients.patient_registration_fields') }}

    - -
    - @endif -
    -
    - @if( Auth::user()->can('services-create') || Auth::user()->can('services-list') || Auth::user()->can('services-delete')) -
    -

    {{ __('clinical_data.title_services') }}

    - -
    - @endif -
    - -
    - -
    - @if(Module::has('Cancer') && Module::isEnabled('Cancer') && (Auth::user()->can('cancer-protocol-list') || Auth::user()->can('cancer-protocol-create') || Auth::user()->can('cancer-protocol-delete'))) -
    -

    {{ __('cancer_protocol.cancer_protocols') }}

    - -
    - @endif - - @if(Auth::user()->can('drug-route-create') || Auth::user()->can('drug-route-list') || Auth::user()->can('drug-route-delete')) -
    -

    {{ __('clinical_data.title_drug_routes') }}

    - -
    - @endif -
    -
    -@endsection \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/clinics/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/clinics/create.blade.php deleted file mode 100755 index 622cbe22..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/clinics/create.blade.php +++ /dev/null @@ -1,136 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('clinics.add_clinic') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::clinics.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - @if (session()->has('streamline_setup')) -

    {{ __('clinics.streamline_setup') }}

    -
    -
    - {{ Form::open(['route' => 'clinics.store']) }} -
    - {{ Form::label('name', __('clinics.clinic_name')) }} - {{ Form::text('name', '', ['class' => 'form-control']) }} -
    -
    - {{ __('clinics.add_another') }}

    -
    -
    -

    {{ __('clinics.select_any_from_list') }}

    - @for($i=0; $i < count($clinics); $i++) -
    - {{ Form::checkbox('selected_clinics[]', $i, false) }} {{ $clinics[$i]["name"] }}    -
    - @endfor -
    -
    -
    - {{ Form::label('available',__('clinics.is_clinic_available'), ["class"=>'col-md-12']) }} -   {{ __('clinics.yes') }} {{ Form::radio('available', 1, false, ['class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -   {{ __('clinics.no') }} {{ Form::radio('available', 0, false, ['class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    -
    -
    - {{ Form::button(__('clinics.next'), ['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10 next']) }} - {{ Form::button(__('clinics.skip'),['type'=>'submit','name' => 'skip', 'class'=>'btn btn-default waves-effect waves-light m-r-10']) }} - {{ Form::close() }} - @else - {{ Form::open(['route' => 'clinics.store', 'data-toggle' => 'validator']) }} -
    -
    -
    - {{ Form::label('name', __('clinics.clinic_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    - {{ Form::label('clinic_type', __('clinics.clinic_type')) }} - {{ Form::select('clinic_type', $clinic_types, 'general', ['class' => 'form-control compulsory', 'required', 'id' => 'clinic_type']) }} -
    -
    -
    -
    - {{ Form::label('available',__('clinics.is_clinic_available'), ["class"=>'col-md-12']) }} -   {{ __('clinics.yes') }} {{ Form::radio('available', 1, false, ['class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -   {{ __('clinics.no') }} {{ Form::radio('available', 0, false, ['class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    -
    -
    - - {{ Form::button(__('clinics.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10 submit-btn']) }} - {{ Form::button(__('clinics.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - {{ Form::close() }} - @endif -
    -
    -
    -@endsection - -@push('scripts') - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/clinics/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/clinics/edit.blade.php deleted file mode 100755 index f6cfb849..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/clinics/edit.blade.php +++ /dev/null @@ -1,74 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('clinics.edit_clinic') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::clinics.menu') -
    -
    - -
    - @include('flash::message') - - {{ Form::model($clinic, ['method' => 'PUT', 'route' => ['clinics.update',$clinic], 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('clinics.clinic_name')) }} - {{ Form::text('name', $clinic->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    - {{ Form::label('clinic_type', __('clinics.clinic_type')) }} - {{ Form::select('clinic_type', $clinic_types, $clinic->clinic_type, ['class' => 'form-control compulsory', 'required', 'id' => 'clinic_type']) }} -
    -
    -
    -
    - {{ Form::label('', __('clinics.is_clinic_available'), ["class"=>'col-md-12']) }} -   {{ __('clinics.yes') }} {{ Form::radio('available', 1, $clinic->available == 1, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -   {{ __('clinics.no') }} {{ Form::radio('available', 0, $clinic->available == 0, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    -
    -
    - - {{ Form::button(__('clinics.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('clinics.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/clinics/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/clinics/inactive.blade.php deleted file mode 100755 index cac1b15b..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/clinics/inactive.blade.php +++ /dev/null @@ -1,87 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('clinics.activate_clinics') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::clinics.menu') -
    -
    - -
    -
    -
    -
    - - - - - - - - - - - - - - - @foreach($clinics as $clinic) - - - - - @endforeach - -
    {{ __('clinics.clinic_name') }}
    {{ __('clinics.clinic_name') }}
    {{ $clinic->name }} - {{ Form::model($clinic->id ,['method' => 'POST', 'route' => ['clinics.activate', $clinic->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/clinics/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/clinics/index.blade.php deleted file mode 100755 index 35b1cf1b..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/clinics/index.blade.php +++ /dev/null @@ -1,120 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('clinics.clinics') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::clinics.menu') -
    -
    - - -
    -
    -
    - - @include('flash::message') - -
    - - - - - - - - - - - - - - - - - - - @foreach($clinics as $clinic) - - - - - - - @endforeach - -
    {{ __('clinics.clinic_name') }}{{ __('clinics.clinic_type') }}
    {{ __('clinics.clinic_name') }}{{ __('clinics.clinic_type') }}
    {{ $clinic->name }}{{ $clinic_types[$clinic->slug] }} - {{ __('clinics.edit') }} - - @if (empty($clinic_ids[$clinic->id])) - {{ Form::model($clinic->id ,['method' => 'DELETE', 'route' => ['clinics.destroy', $clinic->id]]) }} - - {{ Form::close() }} - @else - Clinic in use - @endif -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/clinics/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/clinics/menu.blade.php deleted file mode 100755 index ee540d69..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/clinics/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - {{ __('clinics.add_clinic') }} - {{ __('clinics.view_clinics') }} - {{ __('clinics.activate_clinics') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/companies/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/companies/create.blade.php deleted file mode 100755 index 93953747..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/companies/create.blade.php +++ /dev/null @@ -1,63 +0,0 @@ -@extends('layouts.main') - -@section('title', '| Add Drug Route') - -@section('content') - -
    -
    -

    New Company

    -
    -
    - -
    - -
    - -
    -
    - @include('clinical_data::companies.menu') -
    -
    - -@include('flash::message') - -
    - -
    - {{ Form::open(['route' => 'companies.store','data-toggle'=>'validator']) }} - -
    - {{ Form::label('name', 'Company Name') }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('contact', 'Contact') }} - {{ Form::text('contact', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('identifier', 'Identifier') }} - {{ Form::text('identifier', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default btn-rounded waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -@endsection - - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/companies/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/companies/edit.blade.php deleted file mode 100755 index 415ab1c7..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/companies/edit.blade.php +++ /dev/null @@ -1,57 +0,0 @@ -@extends('layouts.main') - -@section('title', '| Edit Drug Route') - -@section('content') - -
    -
    -

    Edit Company

    -
    -
    - -
    - -
    - -
    -
    - @include('clinical_data::companies.menu') -
    -
    - -@include('flash::message') - -
    - -
    - {{ Form::model($company, ['method' => 'PUT', 'route' => ['companies.update',$company]]) }} - -
    - {{ Form::label('name', 'Company Name') }} - {{ Form::text('name', $company->name, ['class' => 'form-control compulsory']) }} -
    - -
    - {{ Form::label('contact', 'Contact') }} - {{ Form::text('contact', $company->contact, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('identifier', 'Identifier') }} - {{ Form::text('identifier', $company->slug, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default btn-rounded waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -@endsection diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/companies/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/companies/inactive.blade.php deleted file mode 100755 index 8b82ae17..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/companies/inactive.blade.php +++ /dev/null @@ -1,69 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    Inactive Companies

    -
    -
    - -
    - -
    - -
    -
    - @include('clinical_data::companies.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    - - - - - - - - - @foreach($companies as $route) - - - - - - @endforeach - - -
    CompanyAction
    {{ $route->name }} - {{ Form::model($route->id ,['method' => 'POST', 'route' => ['companies.activate', $route->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/companies/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/companies/index.blade.php deleted file mode 100755 index 076d1087..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/companies/index.blade.php +++ /dev/null @@ -1,76 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    Companies

    -
    -
    - -
    - -
    - -
    -
    - @include('clinical_data::companies.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    - - - - - - - - - - - - @foreach($companies as $route) - - - - - - - - - @endforeach - - -
    Company NameContactIdentifier
    {{ $route->name }}{{ $route->contact }}{{ $route->slug }} - Edit - - {{ Form::model($route->id ,['method' => 'DELETE', 'route' => ['companies.destroy', $route->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/companies/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/companies/menu.blade.php deleted file mode 100755 index 9827dc63..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/companies/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - Add Company - View Companies - Activate Companies -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/counties/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/counties/create.blade.php deleted file mode 100755 index d66a546d..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/counties/create.blade.php +++ /dev/null @@ -1,65 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('counties.add_county') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    - {{ Form::open(['route' => 'counties.store', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('district_id', __('counties.district')) }} - {{ Form::select('district_id', $districts, '', ['class' => 'form-control compulsory' , 'required', 'id' => 'district']) }} -
    -
    - -
    - {{ Form::label('name', __('counties.county_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('counties.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('counties.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/counties/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/counties/edit.blade.php deleted file mode 100755 index 6145288b..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/counties/edit.blade.php +++ /dev/null @@ -1,66 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('counties.edit_county') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($county, ['method' => 'PUT', 'route' => ['counties.update',$county], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('district_id', __('counties.district')) }} - {{ Form::select('district_id', $districts, $county->district_id, ['class' => 'form-control compulsory' , 'required', 'id' => 'district']) }} -
    -
    - -
    - {{ Form::label('name', __('counties.county_name')) }} - {{ Form::text('name', $county->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('counties.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('counties.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/counties/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/counties/inactive.blade.php deleted file mode 100755 index 53e658c4..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/counties/inactive.blade.php +++ /dev/null @@ -1,74 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('counties.activate_counties') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    - - - - - - - - - - @foreach($counties as $county) - - - - - - @endforeach - -
    {{ __('counties.county_name') }}{{ __('counties.district_name') }}
    {{ $county->name }}{{ $districts[$county->district_id] }} - {{ Form::model($county->id ,['method' => 'POST', 'route' => ['counties.activate', $county->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/counties/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/counties/index.blade.php deleted file mode 100755 index 39d041a5..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/counties/index.blade.php +++ /dev/null @@ -1,81 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('counties.counties') }}

    -
    -
    - -
    -
    - -
    -
    -
    - - @include('flash::message') - -
    - - - - - - - - - - - @foreach($counties as $county) - - - - - - - @endforeach - -
    {{ __('counties.county_name') }}{{ __('counties.district_name') }}
    {{ $county->name }}{{ (($county->district_id != 0) && isset($districts[$county->district_id])) ? $districts[$county->district_id] : '' }} - {{ __('counties.edit') }} - - {{ Form::model($county->id ,['method' => 'DELETE', 'route' => ['counties.destroy', $county->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/countries/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/countries/create.blade.php deleted file mode 100644 index 32193a84..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/countries/create.blade.php +++ /dev/null @@ -1,43 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('countries.add_country') }}

    -
    -
    - -
    -
    - -@include('clinical_data::countries.menu') - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'countries.store', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name',__('countries.country_name'))}} - {{ Form::text('name','',['class' => 'form-control compulsory', 'required', 'placeholder'=>'e.g. Uganda']) }} -
    -
    - - {{ Form::button(__('countries.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('countries.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/countries/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/countries/edit.blade.php deleted file mode 100644 index d8f7d9ab..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/countries/edit.blade.php +++ /dev/null @@ -1,43 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('countries.edit_countries') }}

    -
    -
    - -
    -
    - -@include('clinical_data::countries.menu') - -
    -
    - - @include('flash::message') -
    - {{ Form::model($country, ['method' => 'PUT', 'route' => ['countries.update',$country], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('countries.countries_name')) }} - {{ Form::text('name', $country->name, ['class' => 'form-control compulsory', 'required', 'placeholder'=>'e.g. Uganda']) }} -
    -
    - - {{ Form::button(__('countries.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('countries.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/countries/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/countries/inactive.blade.php deleted file mode 100644 index 92cb4d5c..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/countries/inactive.blade.php +++ /dev/null @@ -1,84 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('countries.activate_countries') }}

    -
    -
    - -
    -
    - -@include('clinical_data::countries.menu') - -
    -
    - @include('flash::message') -
    -

    {{ __('countries.export_data') }}

    -
    - - - - - - - - - - - - - - @foreach($countries as $country) - - - - - @endforeach - -
    {{ __('countries.country_name') }}
    {{ __('countries.country_name') }}
    {{ $country->name }} - {{ Form::model($country->id ,['method' => 'POST', 'route' => ['countries.activate', $country->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/countries/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/countries/index.blade.php deleted file mode 100644 index 6ba3a607..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/countries/index.blade.php +++ /dev/null @@ -1,88 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('countries.countries') }}

    -
    -
    - -
    -
    - - @include('clinical_data::countries.menu') - -
    -
    - @include('flash::message') -
    -

    {{ __('countries.export_data') }}

    -
    - - - - - - - - - - - - - - - - - @foreach($countries as $country) - - - - - - @endforeach - -
    {{ __('countries.country_name') }}
    {{ __('countries.country_name') }}
    {{ $country->name}} - {{ __('countries.edit') }} - - {{ Form::model($country->id ,['method' => 'DELETE', 'route' => ['countries.destroy', $country->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/countries/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/countries/menu.blade.php deleted file mode 100644 index a6a43d04..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/countries/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - {{ __('countries.add_country') }} - {{ __('countries.view_country') }} - {{ __('countries.activate_country') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/departments/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/departments/create.blade.php deleted file mode 100755 index 7403f7f8..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/departments/create.blade.php +++ /dev/null @@ -1,40 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('departments.add_department') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'departments.store', 'data-toggle' => 'validator']) }} -
    - - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/departments/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/departments/edit.blade.php deleted file mode 100755 index 2617e063..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/departments/edit.blade.php +++ /dev/null @@ -1,41 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('departments.edit_department') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($department, ['method' => 'PUT', 'route' => ['departments.update',$department], 'data-toggle' => 'validator']) }} - -
    - - {{ Form::text('name', $department->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/departments/edit/all.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/departments/edit/all.blade.php deleted file mode 100755 index 0bee70ef..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/departments/edit/all.blade.php +++ /dev/null @@ -1,90 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('departments.edit_all_departments') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($departments, ['method' => 'ANY', 'route' => ['departments.update_all'], 'data-toggle' => 'validator']) }} - -
    - - - - - - - - - - - - - - - @foreach($departments as $department) - - - - - @endforeach - -
    {{ __('departments.department_name') }}
    {{ __('departments.department_name') }}
    - {{ Form::text('name[]', $department->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/departments/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/departments/inactive.blade.php deleted file mode 100755 index 9762ea73..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/departments/inactive.blade.php +++ /dev/null @@ -1,83 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('departments.activate_departments') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    -

    {{ __('departments.export') }}

    -
    - - - - - - - - - - - - - - - @foreach($departments as $department) - - - - - @endforeach - -
    {{ __('departments.department_name') }}
    {{ __('departments.department_name') }}
    {{ $department->name }} - {{ Form::model($department->id ,['method' => 'POST', 'route' => ['departments.activate', $department->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/departments/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/departments/index.blade.php deleted file mode 100755 index 9d75ddaa..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/departments/index.blade.php +++ /dev/null @@ -1,88 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('departments.departments') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    -

    {{ __('departments.export') }}

    -
    - - - - - - - - - - - - - - - - - @foreach($departments as $department) - - - - - - @endforeach - -
    {{ __('departments.department_name') }}
    {{ __('departments.department_name') }}
    {{ $department->name }} - {{ __('departments.edit') }} - - {{ Form::model($department->id ,['method' => 'DELETE', 'route' => ['departments.destroy', $department->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/diagnoses/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/diagnoses/create.blade.php deleted file mode 100755 index 9ad19a62..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/diagnoses/create.blade.php +++ /dev/null @@ -1,268 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('diagnoses.add_diagnosis') }}

    -
    -
    - -
    -
    - -@include('clinical_data::diagnoses.menu') - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'diagnoses.store', 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('diagnoses.diagnosis_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    - @if (!empty($errors->get('name'))) -
    - @foreach ($errors->get('name') as $message) - {{ $message }} - @endforeach -
    - @endif -
    - -
    - {{ Form::label('icd10_code', __('diagnoses.icd_10_code')) }} - {{ Form::text('icd10_code', '', ['class' => 'form-control']) }} -
    - -

    HMIS Outpatient Report (105)

    -
    - {{ Form::select('outpatient_hmis_category', $outpatient_hmis_categories, '', ['class' => 'form-control compulsory', 'id'=>'outpatient_hmis_category', 'required']) }} -
    -
    -
    - -
    -
    -
    - {{ Form::label('outpatient_dependent_option', 'Outpatient Dependent Option') }} - -
    -
    -
    - {{ Form::label('district_code', 'District Disease Code') }} - {{ Form::text('district_code', '', ['class' => 'form-control', 'id'=>'district_code']) }} -
    -
    -
    -

    HMIS Inpatient Report (108)

    -
    - {{-- {{ Form::label('hmis_category', __('diagnoses.hmis_category')) }} --}} - {{ Form::select('hmis_category', $inpatient_hmis_categories, '', ['class' => 'form-control compulsory', 'id'=>'hmis_category_inpatient', 'required']) }} -
    -
    - -
    - {{ Form::label('hmis_category_inpatient_options', __('diagnoses.hmis_inpatient_category')) }} - -
    -
    -
    - {{ Form::label('hysterectomy_type', 'Dependent Option') }} - -
    -
    - - -
    - -
    - @if(is_chi_enabled()) -
    - {{ Form::label('insurance_tariffs', 'Insurance Tariffs') }} - {{ Form::select('insurance_tariffs[]', $insurance_tariffs,'',['id'=>'insurance_tariffs', 'multiple', 'class' => 'form-control']) }} -
    - @endif -
    - {{ Form::label('prompts', __('diagnoses.diagnosis_prompt')) }} - {{ Form::textArea('prompts', '', ['class'=>'form-control', 'rows' => 5]) }} -
    - -
    - {{ Form::label('', __('diagnoses.chronic_status'), ["class"=>'col-md-12']) }} -  {{ __('diagnoses.yes') }} {{ Form::radio('chronic_status', 1, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -  {{ __('diagnoses.no') }} {{ Form::radio('chronic_status', 0, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    - -
    - {{ Form::label('available', __('diagnoses.is_diagnosis_available'), ["class"=>'col-md-12']) }} -  {{ __('diagnoses.yes') }} {{ Form::radio('available', 1, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -  {{ __('diagnoses.no') }} {{ Form::radio('available', 0, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    -
    - {{ Form::label('diagnosis_category', __('diagnoses.diagnosis_category')) }} - {{ Form::select('diagnosis_category', $diagnosis_categories, '', ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('reference_areas', __('diagnoses.reference_areas')) }} -
    -

    -
    - {{ Form::text('reference_names[]', '', ['class' => 'form-control', 'placeholder' => 'Reference name']) }} -
    -
    - {{ Form::text('reference_areas[]', '', ['class' => 'form-control', 'placeholder' => 'e.g. http://google.com']) }} -
    -

    -
    -
    - {{ __('diagnoses.add_more')}} -

    -
    -
    - - {{ Form::button(__('diagnoses.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('diagnoses.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/diagnoses/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/diagnoses/edit.blade.php deleted file mode 100755 index ec16deea..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/diagnoses/edit.blade.php +++ /dev/null @@ -1,275 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('diagnoses.edit_diagnosis') }}

    -
    -
    - -
    -
    - -@include('clinical_data::diagnoses.menu') - -
    -
    - - @include('flash::message') -
    - {{ Form::model($diagnosis, ['method' => 'PUT', 'route' => ['diagnoses.update',$diagnosis], 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('diagnoses.diagnosis_name')) }} - {{ Form::text('name', $diagnosis->name, ['class' => 'form-control compulsory', 'required']) }} -
    - @if (!empty($errors->get('name'))) -
    - @foreach ($errors->get('name') as $message) - {{ $message }} - @endforeach -
    - @endif -
    - -
    - {{ Form::label('icd10_code', __('diagnoses.icd_10_code')) }} - {{ Form::text('icd10_code', $diagnosis->icd10_code, ['class' => 'form-control']) }} -
    - -

    HMIS Outpatient Report (105)

    -
    - {{ Form::label('outpatient_hmis_category', __('diagnoses.outpatient_hmis_category')) }} - {{ Form::select('outpatient_hmis_category', $outpatient_hmis_categories, $diagnosis->outpatient_hmis_category?? '', ['class' => 'form-control compulsory', 'id'=>'outpatient_hmis_category', 'required']) }} -
    -
    -
    - {{ Form::label('outpatient_hmis_category_option', __('diagnoses.hmis_outpatient_category')) }} - {{ Form::select('outpatient_hmis_category_option', $outpatient_category_options, $diagnosis->outpatient_hmis_category_option?? '', ['class'=>'form-control', 'id'=>'outpatient_hmis_category_option', 'required']) }} -
    -
    -
    - {{ Form::label('outpatient_dependent_option', 'Outpatient Dependent Option') }} - {{ Form::select('outpatient_dependent_option', $outpatient_dependent_options, $diagnosis->outpatient_dependent_option?? '', ['class'=>'form-control', 'id'=>'outpatient_dependent_option']) }} -
    -
    - - -

    HMIS Inpatient Report (108)

    -
    - {{ Form::label('hmis_category', __('diagnoses.hmis_category')) }} - {{ Form::select('hmis_category', $inpatient_hmis_categories, $diagnosis->hmis_category, ['class' => 'form-control compulsory', 'id'=>'hmis_category_inpatient', 'required']) }} -
    -
    -
    - {{ Form::label('hmis_no_inpatient', __('diagnoses.hmis_inpatient_category')) }} - {{ Form::select('hmis_no_inpatient', $inpatient_category_options, $diagnosis->hmis_no_inpatient?? '', ['class'=>'form-control', 'id'=>'hmis_category_inpatient_options', 'required']) }} -
    -
    -
    - {{ Form::label('dependent_option', 'Dependent Option') }} - {{ Form::select('parent_dependent_option', $dependent_options, $diagnosis->dependent_option, ['class'=>'form-control', 'id'=>'parent_dependent_option']) }} -
    -
    - - @if(is_chi_enabled()) -
    - {{ Form::label('insurance_tariffs', 'Insurance Tariffs') }} - {{ Form::select('insurance_tariffs[]', $insurance_tariffs, explode(",", $diagnosis->insurance_tariffs),['id'=>'insurance_tariffs', 'multiple', 'class' => 'form-control']) }} -
    - @endif -
    -
    -
    - {{ Form::label('prompts', __('diagnoses.diagnosis_prompt')) }} - {{ Form::textArea('prompts', $diagnosis->prompts, ['class'=>'form-control', 'rows' => 5]) }} -
    - -
    - {{ Form::label('', __('diagnoses.chronic_status'), ["class"=>'col-md-12']) }} -  {{ __('diagnoses.yes') }} {{ Form::radio('chronic_status', 1, ($diagnosis->chronic_status) ? true : false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -  {{ __('diagnoses.no') }} {{ Form::radio('chronic_status', 0, ($diagnosis->chronic_status) ? false : true, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    - -
    - {{ Form::label('available', __('diagnoses.is_diagnosis_available'), ["class"=>'col-md-12']) }} -  {{ __('diagnoses.yes') }} {{ Form::radio('available', 1, $diagnosis->available == 1, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -  {{ __('diagnoses.no') }} {{ Form::radio('available', 0, $diagnosis->available == 0, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    - -
    - {{ Form::label('diagnosis_category', __('diagnoses.diagnosis_category')) }} - {{ Form::select('diagnosis_category', $diagnosis_categories, $diagnosis->diagnosis_category, ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('reference_areas', __('diagnoses.reference_areas')) }} - reference_areas)); - $reference_names_array = array_filter(explode(",", $diagnosis->reference_names)); - ?> - @for ($x = 0; $x < count($reference_areas_array); $x++) -
    -

    -
    - {{ Form::text('reference_names[]', $reference_names_array ? $reference_names_array[$x] : '', ['class' => 'form-control', 'placeholder' => 'Reference name']) }} -
    -
    - {{ Form::text('reference_areas[]', $reference_areas_array ? $reference_areas_array[$x] : '', ['class' => 'form-control', 'placeholder' => 'e.g. http://google.com']) }} -
    - @if ($x > 0) - X - @endif -
    - @endfor -
    - {{ __('diagnoses.add_more')}} -
    -
    - - {{ Form::button(__('diagnoses.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('diagnoses.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/diagnoses/edit/all.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/diagnoses/edit/all.blade.php deleted file mode 100755 index 8b1ce803..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/diagnoses/edit/all.blade.php +++ /dev/null @@ -1,118 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('diagnoses.edit_all_diagnoses') }}

    -
    -
    - -
    -
    - - @include('clinical_data::diagnoses.menu') - -
    -
    - - @include('flash::message') -
    - {{ Form::model($diagnoses, ['method' => 'ANY', 'route' => ['diagnoses.update_all'], 'data-toggle' => 'validator']) }} - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @foreach($diagnoses as $diagnosis) - - - - - - - - - - - - - @endforeach - -
    {{ __('diagnoses.diagnosis_name') }}{{ __('diagnoses.icd_10_code') }}{{ __('diagnoses.hmis_out_patient_number') }}{{ __('diagnoses.hmis_inpatient_category') }}{{ __('diagnoses.diagnosis_prompt') }}{{ __('diagnoses.chronic_status') }}{{ __('diagnoses.reference_areas_seperate_with_commas') }}{{ __('diagnoses.reference_names_seperate_with_commas') }}{{ __('diagnoses.hmis_category') }}
    {{ __('diagnoses.diagnosis_name') }}{{ __('diagnoses.icd_10_code') }}{{ __('diagnoses.hmis_out_patient_number') }}{{ __('diagnoses.hmis_inpatient_category') }}{{ __('diagnoses.diagnosis_prompt') }}{{ __('diagnoses.chronic_status') }}{{ __('diagnoses.reference_areas_seperate_with_commas') }}{{ __('diagnoses.reference_names_seperate_with_commas') }}{{ __('diagnoses.hmis_category') }}
    -

    {{ $diagnosis->name }}

    - {{ Form::text('name[]', $diagnosis->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    {{ Form::text('icd10_code[]', $diagnosis->icd10_code, ['class' => 'form-control']) }}{{ Form::text('hmis_no_outpatient[]', $diagnosis->hmis_no_outpatient, ['class' => 'form-control']) }}{{ Form::text('hmis_no_inpatient[]', $diagnosis->hmis_no_inpatient, ['class' => 'form-control']) }}{{ Form::textArea('prompts[]', $diagnosis->prompts, ['class' => 'form-control', 'rows' => 5]) }}{{ Form::select('chronic_status[]', [1 => 'Yes', 0 => 'No'], $diagnosis->chronic_status, ['class' => 'form-control']) }}{{ Form::text('reference_areas[]', $diagnosis->reference_areas, ['class' => 'form-control']) }}{{ Form::text('reference_names[]', $diagnosis->reference_names, ['class' => 'form-control']) }}{{ Form::select('hmis_category[]', $hmis_categories, $diagnosis->hmis_category, ['class' => 'form-control']) }}
    -
    - - {{ Form::button(__('diagnoses.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('diagnoses.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    - - @include('clinical_data::diagnoses.menu') -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/diagnoses/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/diagnoses/inactive.blade.php deleted file mode 100755 index e9aa51d4..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/diagnoses/inactive.blade.php +++ /dev/null @@ -1,123 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('diagnoses.active_diagnoses') }}

    -
    -
    - -
    -
    - -@include('clinical_data::diagnoses.menu') - -
    -
    - - @include('flash::message') -
    -

    Export data to Copy, CSV, Excel, PDF & Print

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - @foreach($diagnoses as $diagnosis) - - - - - - - - - - - @endforeach - -
    {{ __('diagnoses.diagnosis_name') }}{{ __('diagnoses.icd_10_code') }}{{ __('diagnoses.outpatient_number') }}{{ __('diagnoses.inpatient_number') }}{{ __('diagnoses.diagnosis_prompt') }}{{ __('diagnoses.reference_areas') }}{{ __('diagnoses.chronic_status') }}
    {{ __('diagnoses.diagnosis_name') }}{{ __('diagnoses.icd_10_code') }}{{ __('diagnoses.outpatient_number') }}{{ __('diagnoses.inpatient_number') }}{{ __('diagnoses.diagnosis_prompt') }}{{ __('diagnoses.reference_areas') }}{{ __('diagnoses.chronic_status') }}
    {{ $diagnosis->name }}{{ $diagnosis->icd10_code }}{{ $diagnosis->hmis_no_outpatient }}{{ $diagnosis->hmis_no_inpatient }}{{ $diagnosis->prompts }} - reference_areas); - $reference_names_array = explode(",", $diagnosis->reference_names); - ?> - - @for ($x = 0; $x < count($reference_areas_array); $x++) - @if(isset($reference_areas_array[$x])) - - {{ isset($reference_names_array[$x]) ? $reference_names_array[$x] : '' }} - - @endif - @endfor - - @if ($diagnosis->chronic_status) - {{ __('diagnoses.yes') }} - @else - {{ __('diagnoses.no') }} - @endif - - {{ Form::model($diagnosis->id ,['method' => 'POST', 'route' => ['diagnoses.activate', $diagnosis->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/diagnoses/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/diagnoses/index.blade.php deleted file mode 100755 index 52adce46..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/diagnoses/index.blade.php +++ /dev/null @@ -1,185 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('diagnoses.diagnosis') }}

    -
    -
    - -
    -
    - -@include('clinical_data::diagnoses.menu') - -
    -
    - - @include('flash::message') -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @foreach($diagnoses as $diagnosis) - - - - - - - - - - - - @endforeach - -
    {{ __('diagnoses.diagnosis_name') }}{{ __('diagnoses.icd_10_code') }}{{ __('diagnoses.outpatient_hmis_category') }}{{ __('diagnoses.inpatient_hmis_category') }}{{ __('diagnoses.diagnosis_prompt') }}{{ __('diagnoses.reference_areas') }}{{ __('diagnoses.chronic_status') }}
    {{ __('diagnoses.diagnosis_name') }}{{ __('diagnoses.icd_10_code') }}{{ __('diagnoses.outpatient_hmis_category') }}{{ __('diagnoses.inpatient_hmis_category') }}{{ __('diagnoses.diagnosis_prompt') }}{{ __('diagnoses.reference_areas') }}{{ __('diagnoses.chronic_status') }}
    {{ $diagnosis->name }}{{ $diagnosis->icd10_code }} - @if (!empty($diagnosis->outpatient_dependent_option)) - {{ $hmis_category_options[$diagnosis->outpatient_hmis_category_option] .' ('. $hmis_category_options[$diagnosis->outpatient_dependent_option].')' }} - @else - {{ (!empty($diagnosis->outpatient_hmis_category_option) && is_int($diagnosis->outpatient_hmis_category_option))? $hmis_category_options[$diagnosis->outpatient_hmis_category_option]:'' }} - @endif - - @if (!empty($diagnosis->dependent_option)) - {{ $hmis_category_options[$diagnosis->hmis_no_inpatient] .' ('. $hmis_category_options[$diagnosis->dependent_option].')' }} - @else - {{ $hmis_category_options[$diagnosis->hmis_no_inpatient]?? '' }} - @endif - {{ $diagnosis->prompts }} - @php - $reference_areas_array = explode(",", $diagnosis->reference_areas); - $reference_names_array = explode(",", $diagnosis->reference_names); - @endphp - - @for ($x = 0; $x < count($reference_areas_array); $x++) - @if(isset($reference_areas_array[$x])) - - {{ isset($reference_names_array[$x]) ? $reference_names_array[$x] : '' }} - - @endif - @endfor - - @if ($diagnosis->chronic_status) - {{ __('diagnoses.yes') }} - @else - {{ __('diagnoses.no') }} - @endif - - {{ __('diagnoses.edit') }} - - @if (!in_array($diagnosis->id, $issued_diagnoses)) - {{ Form::model($diagnosis->id,['method' => 'DELETE', 'route' => ['diagnoses.destroy', $diagnosis->id]]) }} - - {{ Form::close() }} - @else - Diagnosis given - @endif - -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/diagnoses/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/diagnoses/menu.blade.php deleted file mode 100755 index b3d59915..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/diagnoses/menu.blade.php +++ /dev/null @@ -1,8 +0,0 @@ -
    -
    - {{ __('diagnoses.add_new_diagnosis') }} - {{ __('diagnoses.edit_all_diagnoses') }} - {{ __('diagnoses.view_activate_diagnoses') }} - {{ __('diagnoses.view_inactivate_diagnoses') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/districts/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/districts/create.blade.php deleted file mode 100755 index bdd3375e..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/districts/create.blade.php +++ /dev/null @@ -1,39 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('districts.add_new_district') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    - {{ Form::open(['route' => 'districts.store','data-toggle'=>'validator']) }} -
    - {{ Form::label('name', __('districts.district_name'))}} - {{ Form::text('name','',['class' => 'form-control compulsory', 'data-error'=>'', 'required','placeholder'=>'e.g Kampala']) }} -
    -
    - - {{ Form::button( __('districts.save'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('districts.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/districts/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/districts/edit.blade.php deleted file mode 100755 index eee0d048..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/districts/edit.blade.php +++ /dev/null @@ -1,38 +0,0 @@ -@extends('layouts.main') - -@section('title', '| Districts') - -@section('content') - -
    -
    -

    {{ __('districts.edit_district') }}

    -
    -
    - -
    -
    - @include('flash::message') -
    -
    {{ __('districts.edit_district') }}
    - -
    - {{ Form::model($district, ['method' => 'PUT', 'route' => ['districts.update',$district]]) }} - -
    - {{ Form::label('name', __('districts.district_name'))}} - {{ Form::text('name', $district->name, ['class' => 'form-control compulsory']) }} -
    - -
    - {{ Form::submit(__('districts.save'), ['class'=>'btn btn-success pull-right col-md-4']) }} -
    - - {{ Form::close() }} -
    -
    -@endsection \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/districts/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/districts/inactive.blade.php deleted file mode 100755 index f6776acb..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/districts/inactive.blade.php +++ /dev/null @@ -1,75 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('districts.activate_districts') }}

    -
    - -
    - -
    -
    - -
    -
    - @include('flash::message') -
    -

    {{ __('districts.export_to_pdf') }}

    -
    - - - - - - - - - @foreach($districts as $district) - - - - - @endforeach - -
    {{ __('districts.district') }}
    {{ $district->name }} - {{ Form::model($district->id ,['method' => 'POST', 'route' => ['districts.activate', $district->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/districts/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/districts/index.blade.php deleted file mode 100755 index d2e6cf1b..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/districts/index.blade.php +++ /dev/null @@ -1,81 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('districts.view_districts') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    -

    {{ __('districts.export_to_pdf') }}

    -
    - - - - - - - - - - @foreach($districts as $district) - - - - - - @endforeach - -
    {{ __('districts.district_name') }}
    {{ $district->name }} - {{ __('districts.edit') }} - - {{ Form::model($district->id ,['method' => 'DELETE', 'route' => ['districts.destroy', $district->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/donors/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/donors/create.blade.php deleted file mode 100755 index ee2935bc..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/donors/create.blade.php +++ /dev/null @@ -1,40 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('donors.add_donor') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    - {{ Form::open(['route' => 'donors.store', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('donors.donor_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('donors.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('donors.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/donors/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/donors/edit.blade.php deleted file mode 100755 index 58fa912e..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/donors/edit.blade.php +++ /dev/null @@ -1,41 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('donors.edit_donor') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($donor, ['method' => 'PUT', 'route' => ['donors.update',$donor], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('donors.donor_name')) }} - {{ Form::text('name', $donor->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('donors.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('donors.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/donors/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/donors/inactive.blade.php deleted file mode 100755 index 462538c3..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/donors/inactive.blade.php +++ /dev/null @@ -1,72 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('donors.activate_donors') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    - - - - - - - - - @foreach($donors as $donor) - - - - - @endforeach - -
    {{ __('donors.donor_name') }}
    {{ $donor->name }} - {{ Form::model($donor->id ,['method' => 'POST', 'route' => ['donors.activate', $donor->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/donors/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/donors/index.blade.php deleted file mode 100755 index ae6658f2..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/donors/index.blade.php +++ /dev/null @@ -1,75 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('donors.donors') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    - - - - - - - - - - @foreach($donors as $donor) - - - - - - @endforeach - -
    {{ __('donors.donor_name') }}
    {{ $donor->name }} - {{ __('donors.edit') }} - - {{ Form::model($donor->id ,['method' => 'DELETE', 'route' => ['donors.destroy', $donor->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/dosage_frequencies/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/dosage_frequencies/create.blade.php deleted file mode 100755 index ee2298bc..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/dosage_frequencies/create.blade.php +++ /dev/null @@ -1,53 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('dosage_frequencies.add_dosage_frequency') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::dosage_frequencies.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'dosage_frequencies.store', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('dosage_frequencies.frequency')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('factor', __('dosage_frequencies.factor')) }} - {{ Form::number('factor', '', ['class' => 'form-control compulsory', 'step' => '.01', 'required']) }} -
    -
    - - {{ Form::button(__('dosage_frequencies.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('dosage_frequencies.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/dosage_frequencies/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/dosage_frequencies/edit.blade.php deleted file mode 100755 index 2b617db1..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/dosage_frequencies/edit.blade.php +++ /dev/null @@ -1,53 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('dosage_frequencies.edit_dosage_frequency') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::dosage_frequencies.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($frequency, ['method' => 'PUT', 'route' => ['dosage_frequencies.update',$frequency], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('dosage_frequencies.frequency')) }} - {{ Form::text('name', $frequency->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('factor', __('dosage_frequencies.factor')) }} - {{ Form::number('factor', $frequency->factor, ['class' => 'form-control compulsory', 'step' => '.01', 'required']) }} -
    -
    - - {{ Form::button(__('dosage_frequencies.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('dosage_frequencies.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/dosage_frequencies/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/dosage_frequencies/inactive.blade.php deleted file mode 100755 index f451006c..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/dosage_frequencies/inactive.blade.php +++ /dev/null @@ -1,92 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('dosage_frequencies.activate_dosage_frequencies') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::dosage_frequencies.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    -
    - - - - - - - - - - - - - - - - - @foreach($frequencies as $frequency) - - - - - - @endforeach - -
    {{ __('dosage_frequencies.frequency') }}{{ __('dosage_frequencies.factor') }}
    {{ __('dosage_frequencies.frequency') }}{{ __('dosage_frequencies.factor') }}
    {{ $frequency->name }}{{ $frequency->factor }} - {{ Form::model($frequency->id ,['method' => 'POST', 'route' => ['dosage_frequencies.activate', $frequency->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/dosage_frequencies/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/dosage_frequencies/index.blade.php deleted file mode 100755 index e5ffa11a..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/dosage_frequencies/index.blade.php +++ /dev/null @@ -1,96 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('dosage_frequencies.dosage_frequencies') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::dosage_frequencies.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - @foreach($frequencies as $frequency) - - - - - - - @endforeach - -
    {{ __('dosage_frequencies.frequency') }}{{ __('dosage_frequencies.factor') }}
    {{ __('dosage_frequencies.frequency') }}{{ __('dosage_frequencies.factor') }}
    {{ $frequency->name }}{{ $frequency->factor }} - {{ __('dosage_frequencies.edit') }} - - {{ Form::model($frequency->id ,['method' => 'DELETE', 'route' => ['dosage_frequencies.destroy', $frequency->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/dosage_frequencies/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/dosage_frequencies/menu.blade.php deleted file mode 100755 index d4cbb7e5..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/dosage_frequencies/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - {{ __('dosage_frequencies.add_dosage_frequency') }} - {{ __('dosage_frequencies.dosage_frequencies') }} - {{ __('dosage_frequencies.activate_dosage_frequencies') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drug_categories/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drug_categories/create.blade.php deleted file mode 100755 index 24901123..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drug_categories/create.blade.php +++ /dev/null @@ -1,66 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - - -@section('title', '| Add Drug Category') - -@section('content') - -
    -
    -

    {{ __('drug_categories.new_drug_categories') }}

    -
    -
    - -
    - -
    - -
    -
    - @include('clinical_data::drug_categories.menu') -
    -
    - -@include('flash::message') - -
    - -
    - {{ Form::open(['route' => 'drug_categories.store','data-toggle'=>'validator']) }} - -
    - {{ Form::label('name', __('drug_categories.drug_category')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('anti_malarial', __('drug_categories.anti_malarial'), ["class"=>'col-md-12']) }} -  {{ __('drug_categories.yes') }} {{ Form::radio('anti_malarial', 1, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -  {{ __('drug_categories.no') }} {{ Form::radio('anti_malarial', 0, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    - - {{ Form::button(__('drug_categories.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::button(__('drug_categories.cancel'),['type'=>'reset','class'=>'btn btn-default btn-rounded waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -@endsection - - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drug_categories/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drug_categories/edit.blade.php deleted file mode 100755 index 662cbcef..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drug_categories/edit.blade.php +++ /dev/null @@ -1,64 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('title', '| Edit Drug Category') - -@section('content') - -
    -
    -

    {{ __('drug_categories.edit_drug_category') }}

    -
    -
    - -
    - -
    - -
    -
    - @include('clinical_data::drug_categories.menu') -
    -
    - -@include('flash::message') - -
    - -
    - {{ Form::model($drug_category, ['method' => 'PUT', 'route' => ['drug_categories.update',$drug_category]]) }} - -
    - {{ Form::label('name', __('drug_categories.drug_category')) }} - {{ Form::text('name', $drug_category->name, ['class' => 'form-control compulsory']) }} -
    - -
    - {{ Form::label('anti_malarial', __('drug_categories.anti_malarial'), ["class"=>'col-md-12']) }} -  {{ __('drug_categories.yes') }} {{ Form::radio('anti_malarial', 1, $drug_category->anti_malarial == 1? true: false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -  {{ __('drug_categories.no') }} {{ Form::radio('anti_malarial', 0, (isset($drug_category->anti_malarial) && $drug_category->anti_malarial == 0)? true: false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    - - - {{ Form::button(__('drug_categories.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::button(__('drug_categories.cancel'),['type'=>'reset','class'=>'btn btn-default btn-rounded waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drug_categories/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drug_categories/inactive.blade.php deleted file mode 100755 index af84a176..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drug_categories/inactive.blade.php +++ /dev/null @@ -1,70 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('drug_categories.inactive_drug_categories') }}

    -
    -
    - -
    - -
    - -
    -
    - @include('clinical_data::drug_categories.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    - - - - - - - - - @foreach($drug_categories as $drug_category) - - - - - - @endforeach - - -
    {{ __('drug_categories.drug_category') }}{{ __('drug_categories.action') }}
    {{ $drug_category->name }} - {{ Form::model($drug_category->id ,['method' => 'POST', 'route' => ['drug_categories.activate', $drug_category->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drug_categories/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drug_categories/index.blade.php deleted file mode 100755 index c1b7d298..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drug_categories/index.blade.php +++ /dev/null @@ -1,77 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('drug_categories.drug_categories') }}

    -
    -
    - -
    - -
    - -
    -
    - @include('clinical_data::drug_categories.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    - - - - - - - - - - - @foreach($drug_categories as $drug_category) - - - - - - - - @endforeach - - -
    {{ __('drug_categories.category') }}{{ __('drug_categories.anti_malarial') }}
    {{ $drug_category->name }} - {{ ($drug_category->anti_malarial == 1) ? __('drug_categories.yes') : __('drug_categories.no') }} - - {{ __('drug_categories.edit') }} - - {{ Form::model($drug_category->id ,['method' => 'DELETE', 'route' => ['drug_categories.destroy', $drug_category->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drug_categories/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drug_categories/menu.blade.php deleted file mode 100755 index 560c5005..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drug_categories/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - {{ __('drug_categories.add_drug_category') }} - {{ __('drug_categories.view_drug_categories') }} - {{ __('drug_categories.activate_drug_categories') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drug_forms/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drug_forms/create.blade.php deleted file mode 100755 index b9749ea7..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drug_forms/create.blade.php +++ /dev/null @@ -1,52 +0,0 @@ -@extends('layouts.main') - -@section('title', '| Add Drug Form') - -@section('content') - -
    -
    -

    {{ __('drug_forms.new_drug_form') }}

    -
    -
    - -
    - -
    - -
    -
    - @include('clinical_data::drug_forms.menu') -
    -
    - -@include('flash::message') - -
    - -
    - {{ Form::open(['route' => 'drug_forms.store','data-toggle'=>'validator']) }} - -
    - {{ Form::label('name', __('drug_forms.drug_form')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('drug_forms.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::button(__('drug_forms.cancel'),['type'=>'reset','class'=>'btn btn-default btn-rounded waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -@endsection - - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drug_forms/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drug_forms/edit.blade.php deleted file mode 100755 index ab804057..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drug_forms/edit.blade.php +++ /dev/null @@ -1,46 +0,0 @@ -@extends('layouts.main') - -@section('title', '| Edit Drug Form') - -@section('content') - -
    -
    -

    {{ __('drug_forms.edit_drug_form') }}

    -
    -
    - -
    - -
    - -
    -
    - @include('clinical_data::drug_forms.menu') -
    -
    - -@include('flash::message') - -
    - -
    - {{ Form::model($drug_form, ['method' => 'PUT', 'route' => ['drug_forms.update',$drug_form]]) }} - -
    - {{ Form::label('name', __('drug_forms.drug_form')) }} - {{ Form::text('name', $drug_form->name, ['class' => 'form-control compulsory']) }} -
    - - {{ Form::button(__('drug_forms.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::button(__('drug_forms.cancel'),['type'=>'reset','class'=>'btn btn-default btn-rounded waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -@endsection diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drug_forms/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drug_forms/inactive.blade.php deleted file mode 100755 index 9373b92c..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drug_forms/inactive.blade.php +++ /dev/null @@ -1,70 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('drug_forms.inactive_drug_form') }}

    -
    -
    - -
    - -
    - -
    -
    - @include('clinical_data::drug_forms.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    - - - - - - - - - @foreach($drug_forms as $drug_form) - - - - - - @endforeach - - -
    {{ __('drug_forms.drug_form') }}{{ __('drug_forms.action') }}
    {{ $drug_form->name }} - {{ Form::model($drug_form->id ,['method' => 'POST', 'route' => ['drug_forms.activate', $drug_form->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drug_forms/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drug_forms/index.blade.php deleted file mode 100755 index b38b0900..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drug_forms/index.blade.php +++ /dev/null @@ -1,73 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('drug_forms.drug_forms') }}

    -
    -
    - -
    - -
    - -
    -
    - @include('clinical_data::drug_forms.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    - - - - - - - - - - @foreach($drug_forms as $drug_form) - - - - - - - @endforeach - - -
    {{ __('drug_forms.drug_form') }}
    {{ $drug_form->name }} - {{ __('drug_forms.edit') }} - - {{ Form::model($drug_form->id ,['method' => 'DELETE', 'route' => ['drug_forms.destroy', $drug_form->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drug_forms/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drug_forms/menu.blade.php deleted file mode 100755 index 7fc16c6d..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drug_forms/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - {{ __('drug_forms.add_drug_form') }} - {{ __('drug_forms.view_drug_forms') }} - {{ __('drug_forms.activate_drug_forms') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drug_routes/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drug_routes/create.blade.php deleted file mode 100755 index 8b74ae60..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drug_routes/create.blade.php +++ /dev/null @@ -1,52 +0,0 @@ -@extends('layouts.main') - -@section('title', '| Add Drug route') - -@section('content') - -
    -
    -

    {{ __('drug_routes.new_drug_route') }}

    -
    -
    - -
    - -
    - -
    -
    - @include('clinical_data::drug_routes.menu') -
    -
    - -@include('flash::message') - -
    - -
    - {{ Form::open(['route' => 'drug_routes.store','data-toggle'=>'validator']) }} - -
    - {{ Form::label('name', __('drug_routes.drug_route')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('drug_routes.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::button(__('drug_routes.cancel'),['type'=>'reset','class'=>'btn btn-default btn-rounded waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -@endsection - - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drug_routes/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drug_routes/edit.blade.php deleted file mode 100755 index 0a886a1d..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drug_routes/edit.blade.php +++ /dev/null @@ -1,46 +0,0 @@ -@extends('layouts.main') - -@section('title', '| Edit Drug route') - -@section('content') - -
    -
    -

    {{ __('drug_routes.edit_drug_route') }}

    -
    -
    - -
    - -
    - -
    -
    - @include('clinical_data::drug_routes.menu') -
    -
    - -@include('flash::message') - -
    - -
    - {{ Form::model($drug_route, ['method' => 'PUT', 'route' => ['drug_routes.update',$drug_route]]) }} - -
    - {{ Form::label('name', __('drug_routes.drug_route')) }} - {{ Form::text('name', $drug_route->name, ['class' => 'form-control compulsory']) }} -
    - - {{ Form::button(__('drug_routes.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::button(__('drug_routes.cancel'),['type'=>'reset','class'=>'btn btn-default btn-rounded waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -@endsection diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drug_routes/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drug_routes/inactive.blade.php deleted file mode 100755 index ac4759cc..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drug_routes/inactive.blade.php +++ /dev/null @@ -1,70 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('drug_routes.inactive_drug_route') }}

    -
    -
    - -
    - -
    - -
    -
    - @include('clinical_data::drug_routes.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    - - - - - - - - - @foreach($drug_routes as $drug_route) - - - - - - @endforeach - - -
    {{ __('drug_routes.drug_route') }}{{ __('drug_routes.action') }}
    {{ $drug_route->name }} - {{ Form::model($drug_route->id ,['method' => 'POST', 'route' => ['drug_routes.activate', $drug_route->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drug_routes/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drug_routes/index.blade.php deleted file mode 100755 index 4147585f..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drug_routes/index.blade.php +++ /dev/null @@ -1,73 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('drug_routes.drug_routes') }}

    -
    -
    - -
    - -
    - -
    -
    - @include('clinical_data::drug_routes.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    - - - - - - - - - - @foreach($drug_routes as $drug_route) - - - - - - - @endforeach - - -
    {{ __('drug_routes.drug_route') }}
    {{ $drug_route->name }} - {{ __('drug_routes.edit') }} - - {{ Form::model($drug_route->id ,['method' => 'DELETE', 'route' => ['drug_routes.destroy', $drug_route->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drug_routes/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drug_routes/menu.blade.php deleted file mode 100755 index 0b566981..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drug_routes/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - {{ __('drug_routes.add_drug_route') }} - {{ __('drug_routes.view_drug_routes') }} - {{ __('drug_routes.activate_drug_routes') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drug_units/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drug_units/create.blade.php deleted file mode 100755 index 3ce927b4..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drug_units/create.blade.php +++ /dev/null @@ -1,53 +0,0 @@ -@extends('layouts.main') - -@section('title', '| Add Drug Unit') - -@section('content') - -
    -
    -

    {{ __('drug_units.add_new_drug_unit') }}

    -
    -
    - -
    - -
    - -
    -
    - @include('clinical_data::drug_units.menu') -
    -
    - - -@include('flash::message') - -
    - -
    - {{ Form::open(['route' => 'drug_units.store','data-toggle'=>'validator']) }} - -
    - {{ Form::label('name', __('drug_units.drug_unit_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('drug_units.save'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::button(__('drug_units.cancel'),['type'=>'reset','class'=>'btn btn-default btn-rounded waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -@endsection - - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drug_units/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drug_units/edit.blade.php deleted file mode 100755 index c4514b6d..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drug_units/edit.blade.php +++ /dev/null @@ -1,47 +0,0 @@ -@extends('layouts.main') - -@section('title', '| Edit Drug Unit') - -@section('content') - -
    -
    -

    {{ __('drug_units.edit_drug_unit') }}

    -
    -
    - -
    - -
    - -
    -
    - @include('clinical_data::drug_units.menu') -
    -
    - - -@include('flash::message') - -
    - -
    - {{ Form::model($drug_unit, ['method' => 'PUT', 'route' => ['drug_units.update',$drug_unit]]) }} - -
    - {{ Form::label('name', __('drug_units.drug_unit_name')) }} - {{ Form::text('name', $drug_unit->name, ['class' => 'form-control compulsory']) }} -
    - - {{ Form::button( __('drug_units.save'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::button( __('drug_units.cancel'),['type'=>'reset','class'=>'btn btn-default btn-rounded waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -@endsection diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drug_units/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drug_units/inactive.blade.php deleted file mode 100755 index 88d752ce..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drug_units/inactive.blade.php +++ /dev/null @@ -1,71 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('drug_units.activate_drug_unit') }}

    -
    -
    - -
    - -
    - -
    -
    - @include('clinical_data::drug_units.menu') -
    -
    - - -@include('flash::message') - -
    -
    -
    - - - - - - - - - @foreach($drug_units as $drug_unit) - - - - - - @endforeach - - -
    {{ __('drug_units.drug_unit_name') }}Action
    {{ $drug_unit->name }} - {{ Form::model($drug_unit->id ,['method' => 'POST', 'route' => ['drug_units.activate', $drug_unit->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drug_units/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drug_units/index.blade.php deleted file mode 100755 index 1bf7260b..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drug_units/index.blade.php +++ /dev/null @@ -1,73 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('drug_units.drug_units') }}

    -
    -
    - -
    - -
    - -
    -
    - @include('clinical_data::drug_units.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    - - - - - - - - - - @foreach($drug_units as $drug_unit) - - - - - - - @endforeach - - -
    {{ __('drug_units.drug_unit') }}
    {{ $drug_unit->name }} - {{ __('drug_units.edit') }} - - {{ Form::model($drug_unit->id ,['method' => 'DELETE', 'route' => ['drug_units.destroy', $drug_unit->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drug_units/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drug_units/menu.blade.php deleted file mode 100755 index a2d970ef..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drug_units/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - {{ __('drug_units.add_new_drug_unit') }} - {{ __('drug_units.view_drug_units') }} - {{ __('drug_units.activate_drug_units') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/bulk_create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drugs/bulk_create.blade.php deleted file mode 100755 index 55da5857..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/bulk_create.blade.php +++ /dev/null @@ -1,154 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('drugs.create_multiple_drugs') }}

    -
    -
    - -
    -
    - - -@include('flash::message') -@include ('errors.list') - -@include('clinical_data::drugs.menu') - -
    -
    -
    - {{ Form::open(['route' => ['drugs.bulk_store']]) }} - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @for($i = 0; $i < 50; $i++) - - - - - - - - - - - - - - - - - - - - @endfor - -
    {{ __('drugs.drug_name') }}{{ __('drugs.drug_categories') }}{{ __('drugs.drug_form') }}{{ __('drugs.drug_unit') }}{{ __('drugs.drug_prompt') }}{{ __('drugs.english_info') }}{{ __('drugs.vernacular_info') }}{{ __('drugs.stock_level') }}{{ __('drugs.re_order_level') }}{{ __('drugs.expiry_date') }}{{ __('drugs.supplier') }}{{ __('drugs.cost_price') }}{{ __('drugs.non_insured_price') }}{{ __('drugs.description') }}{{ __('drugs.income_account') }}{{ __('drugs.cost_of_goods_account') }}{{ __('drugs.inventory_account') }}
    {{ __('drugs.drug_name') }}{{ __('drugs.drug_categories') }}{{ __('drugs.drug_form') }}{{ __('drugs.drug_unit') }}{{ __('drugs.drug_prompt') }}{{ __('drugs.english_info') }}{{ __('drugs.vernacular_info') }}{{ __('drugs.stock_level') }}{{ __('drugs.re_order_level') }}{{ __('drugs.expiry_date') }}{{ __('drugs.supplier') }}{{ __('drugs.cost_price') }}{{ __('drugs.non_insured_price') }}{{ __('drugs.description') }}{{ __('drugs.income_account') }}{{ __('drugs.cost_of_goods_account') }}{{ __('drugs.inventory_account') }}
    - {{ Form::text('name[]', '', ['class' => 'form-control compulsory']) }} - - {{ Form::select('category_id[]', $drug_categories, null, ['class' => 'form-control compulsory']) }} - - {{ Form::select('form_id[]', $drug_forms, null, ['class'=>'form-control compulsory']) }} - - {{ Form::select('unit_id[]', $drug_units, null, ['class'=>'form-control compulsory']) }} - - {{ Form::textArea('prompt[]', '', ['class'=>'form-control', 'rows' => 4]) }} - - {{ Form::textArea('info_english[]', '', ['class'=>'form-control', 'rows' => 4]) }} - - {{ Form::textArea('info_vernacular[]', '', ['class'=>'form-control', 'rows' => 4]) }} - - {{ Form::number('store_stock[]', '', ['class' => 'form-control compulsory']) }} - - {{ Form::number('reorder_level[]', '', ['class' => 'form-control compulsory']) }} - - {{ Form::date('expiry_date[]', null, ['class' => 'form-control compulsory'])}} - - {{ Form::select('supplier_id[]', $suppliers, null, ['class'=>'form-control']) }} - - {{ Form::number('cost_price[]', '', ['class'=>'form-control compulsory']) }} - - {{ Form::number('non_insured_price[]', '', ['class'=>'form-control compulsory']) }} - - {{ Form::textArea('description[]', '', ['class'=>'form-control', 'rows' => 2]) }} - {{ Form::select('account_id[]', $income_accounts, null, ['class'=>'form-control compulsory']) }}{{ Form::select('cog_account[]', $cost_of_goods_accounts, null, ['class'=>'form-control compulsory']) }}{{ Form::select('inventory_account[]', $inventory_asset_accounts, null, ['class'=>'form-control compulsory']) }}
    -
    - - {{ Form::button(__('drugs.submit'),['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('drugs.cancel'),['type'=>'reset','class'=>'btn btn-rounded btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drugs/create.blade.php deleted file mode 100755 index 29878f37..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/create.blade.php +++ /dev/null @@ -1,534 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('drugs.new_drug') }}

    -
    -
    - -
    -
    - -@include('clinical_data::drugs.menu') - -
    -
    - - @include('flash::message') -
    - @if (session()->has('streamline_setup')) -

    {{ __('drugs.streamline_setup_eigth_of_ten') }}

    - {{ Form::open(['route' => 'drugs.store','data-toggle'=>'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('drugs.drug_name')) }} - {{ Form::text('name', '', ['class' => 'form-control']) }} -
    -
    - -
    - {{ Form::label('category_id', __('drugs.drug_category')) }} - {{ Form::select('category_id', $drug_categories, null, ['class' => 'form-control']) }} -
    -
    - -
    - {{ Form::label('form_id', __('drugs.drug_form')) }} - {{ Form::select('form_id', $drug_forms, null, ['class'=>'form-control']) }} -
    -
    - -
    - {{ Form::label('available', __('drugs.is_drug_available'), ["class"=>'col-md-12']) }} -  {{ __('drugs.yes') }} {{ Form::radio('available', 1, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -  {{ __('drugs.no') }} {{ Form::radio('available', 0, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    - -
    - {{ Form::label('unit_id', __('drugs.drug_unit')) }} - {{ Form::select('unit_id', $drug_units, null, ['class'=>'form-control']) }} -
    -
    - -
    - {{ Form::label('pack', __('drugs.pack')) }} - {{ Form::number('pack', '', ['class' => 'form-control']) }} -
    -
    - -
    - {{ Form::label('strength', __('drugs.strength')) }} - {{ Form::number('strength', '', ['class' => 'form-control', 'step' => '0.01']) }} -
    -
    - -
    - {{ Form::label('supplier_id', __('drugs.supplier')) }} - {{ Form::select('supplier_id', $suppliers, null, ['class'=>'form-control']) }} -
    -
    - -
    - {{ Form::label('package_unit_id', __('drugs.package_unit')) }} - {{ Form::select('package_unit_id', $package_units, null, ['class'=>'form-control']) }} -
    -
    - -
    - {{ Form::label('',__('drugs.does_package_unit_have_sub_packages'), ["class"=>'col-md-12']) }} -  {{ __('drugs.yes') }} {{ Form::radio('does_package_unit_have_sub_packages', 1, false, ['class' => 'check form-control have_sub_package', 'data-radio'=>'iradio_flat-green', 'id' => 'does_have_sub_package1', 'onclick'=>'displaySubPackagesDivs()']) }} -  {{ __('drugs.no') }} {{ Form::radio('does_package_unit_have_sub_packages', 0, false, ['class' => 'check form-control have_sub_package', 'data-radio'=>'iradio_flat-green', 'id' => 'does_not_have_sub_package1', 'onclick'=>'displaySubPackagesDivs()']) }} -
    -
    - -
    - {{ Form::label('quantity_in_each_package_unit', __('drugs.quantity_in_each_package_unit')) }} - {{ Form::number('quantity_in_each_package_unit', '', ['class' => 'form-control', 'step' => '0.01']) }} -
    -
    - -
    - {{ Form::label('quantity_in_each_sub_package', __('drugs.quantity_in_each_sub_package')) }} - {{ Form::number('quantity_in_each_sub_package', '', ['class' => 'form-control', 'step' => '0.01']) }} -
    -
    - -
    - {{ Form::label('number_of_sub_packages_in_main_package', __('drugs.number_of_sub_packages_in_main_package')) }} - {{ Form::number('number_of_sub_packages_in_main_package', '', ['class' => 'form-control', 'step' => '0.01']) }} -
    -
    - -
    - {{ Form::label('description', __('drugs.drug_description')) }} - {{ Form::textArea('description', '', ['class'=>'form-control', 'rows' => 4]) }} -
    - -
    - {{ Form::label('prompt', __('drugs.drug_prompt')) }} - {{ Form::textArea('prompt', '', ['class'=>'form-control', 'rows' => 4]) }} -
    -
    -
    - - -
    - {{ Form::label('reorder_level', __('drugs.re_order_level')) }} - {{ Form::number('reorder_level', '', ['class' => 'form-control']) }} -
    -
    - -
    - {{ Form::label('cost_price', __('drugs.cost_price')) }} - {{ Form::number('cost_price', '', ['class'=>'form-control']) }} -
    -
    - -
    - {{ Form::label('account_id', __('drugs.income_account')) }} - {{ Form::select('account_id', $income_accounts, null, ['class' => 'form-control']) }} -
    -
    - -
    - {{ Form::label('cog_account', __('drugs.cost_of_goods_account')) }} - {{ Form::select('cog_account', $cost_of_goods_accounts, null, ['class' => 'form-control']) }} -
    -
    - -
    - {{ Form::label('inventory_account', __('drugs.inventory_asset_account')) }} - {{ Form::select('inventory_account', $inventory_asset_accounts, null, ['class' => 'form-control']) }} -
    -
    - -
    - {{ Form::label('expiry_date', __('drugs.inventory_asset_account')) }} -
    - {{ Form::text('expiry_date', '', ['class'=>'form-control', 'readonly', 'id'=>'datepicker-autoclose']) }} - -
    -
    -
    - -
    - {{ Form::label('non_insured_price', __('drugs.non_insured_price')) }} - {{ Form::number('non_insured_price', '', ['class'=>'form-control']) }} -
    -
    - -
    - {{ Form::label('info_english', __('drugs.patient_info_in_english')) }} - {{ Form::textArea('info_english', '', ['class'=>'form-control', 'rows' => 4]) }} -
    - -
    - {{ Form::label('info_vernacular', __('drugs.patient_info_in_vernacular')) }} - {{ Form::textArea('info_vernacular', '', ['class'=>'form-control', 'rows' => 4]) }} -
    -
    -
    -

    {{ __('drugs.select_from_list') }}

    - Select All

    - @foreach ($default_drugs as $defaultDrug) -
    - {{ Form::checkbox('selected_drugs[]', $defaultDrug['name'], false, ['class' => 'item_checkbox']) }} {{ $defaultDrug['name'] }}    -
    - @endforeach -
    -
    - {{ Form::button(__('drugs.next'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10 next']) }} - {{ Form::button(__('drugs.skip'),['type'=>'submit','name' => 'skip', 'value' => 'skip','class'=>'btn btn-default waves-effect waves-light m-r-10']) }} - @else - - {{ Form::open(['route' => 'drugs.store','data-toggle'=>'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('drugs.drug_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory']) }} -
    -
    - -
    - {{ Form::label('category_id', __('drugs.drug_category')) }} - {{ Form::select('category_id', $drug_categories, null, ['class' => 'form-control compulsory']) }} -
    -
    - -
    - {{ Form::label('form_id', __('drugs.drug_form')) }} - {{ Form::select('form_id', $drug_forms, null, ['class'=>'form-control compulsory']) }} -
    -
    - -
    - {{ Form::label('available', __('drugs.is_drug_available'), ["class"=>'col-md-12']) }} -  {{ __('drugs.yes') }} {{ Form::radio('available', 1, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -  {{ __('drugs.no') }} {{ Form::radio('available', 0, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    - -
    - {{ Form::label('unit_id', __('drugs.drug_unit')) }} - {{ Form::select('unit_id', $drug_units, null, ['class'=>'form-control compulsory']) }} -
    -
    - -
    - {{ Form::label('pack', __('drugs.pack')) }} - {{ Form::number('pack', '', ['class' => 'form-control compulsory']) }} -
    -
    - -
    - {{ Form::label('strength', __('drugs.strength')) }} - {{ Form::number('strength', '', ['class' => 'form-control compulsory', 'step' => '0.01']) }} -
    -
    - -
    - {{ Form::label('supplier_id', __('drugs.supplier')) }} - {{ Form::select('supplier_id', $suppliers, null, ['class'=>'form-control compulsory']) }} -
    -
    - -
    - {{ Form::label('package_unit_id', __('drugs.purchasing_package_unit')) }} - {{ Form::select('package_unit_id', $package_units, null, ['class'=>'form-control compulsory']) }} -
    -
    - -
    - {{ Form::label('',__('drugs.does_package_unit_have_sub_packages'), ["class"=>'col-md-12']) }} -  {{ __('drugs.yes') }} {{ Form::radio('does_package_unit_have_sub_packages', 1, false, ['class' => 'check form-control', 'data-radio'=>'iradio_flat-green', 'required', 'id' => 'does_have_sub_package2', 'onclick'=>'displaySubPackagesDivs()']) }} -  {{ __('drugs.no') }} {{ Form::radio('does_package_unit_have_sub_packages', 0, false, ['class' => 'check form-control have_sub_package', 'data-radio'=>'iradio_flat-green', 'required', 'id' => 'does_not_have_sub_package2', 'onclick'=>'displaySubPackagesDivs()']) }} -
    -
    - -
    - {{ Form::label('quantity_in_each_package_unit', __('drugs.quantity_in_each_package_unit')) }} - {{ Form::number('quantity_in_each_package_unit', '', ['class' => 'form-control', 'step' => '0.01']) }} -
    -
    - -
    - {{ Form::label('quantity_in_each_sub_package', __('drugs.quantity_in_each_sub_package')) }} - {{ Form::number('quantity_in_each_sub_package', '', ['class' => 'form-control', 'step' => '0.01']) }} -
    -
    - -
    - {{ Form::label('number_of_sub_packages_in_main_package', __('drugs.number_of_sub_packages_in_main_package')) }} - {{ Form::number('number_of_sub_packages_in_main_package', '', ['class' => 'form-control', 'step' => '0.01']) }} -
    -
    -
    -
    - - - - -
    - {{ Form::label('reorder_level', __('drugs.re_order_level')) }} - {{ Form::number('reorder_level', '', ['class' => 'form-control compulsory']) }} -
    -
    - -
    - {{ Form::label('cost_price', __('drugs.cost_price')) }} - {{ Form::number('cost_price', '', ['class'=>'form-control compulsory']) }} -
    -
    - -
    - {{ Form::label('account_id', __('drugs.income_account')) }} - {{ Form::select('account_id', $income_accounts, null, ['class' => 'form-control']) }} -
    -
    - -
    - {{ Form::label('cog_account', __('drugs.cost_of_goods_account')) }} - {{ Form::select('cog_account', $cost_of_goods_accounts, null, ['class' => 'form-control']) }} -
    -
    - -
    - {{ Form::label('inventory_account', __('drugs.inventory_asset_account')) }} - {{ Form::select('inventory_account', $inventory_asset_accounts, null, ['class' => 'form-control']) }} -
    -
    - -
    - {{ Form::label('expiry_date', __('drugs.drug_expiry_date')) }} -
    - {{ Form::text('expiry_date', '', ['class'=>'form-control compulsory', 'readonly', 'id'=>'datepicker-autoclose']) }} - -
    -
    -
    -
    -
    -
    - {{ Form::label('', __('drugs.long_term'), ["class"=>'col-md-12']) }} -  {{ __('drugs.yes') }} {{ Form::radio('long_term', 1, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -  {{ __('drugs.no') }} {{ Form::radio('long_term', 0, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    - -
    - {{ Form::label('non_insured_price', 'Cash Price') }} - {{ Form::number('non_insured_price', '', ['class'=>'form-control compulsory', 'id' => 'non_insured_price']) }} -
    -
    - - @php - $price_list_categories = \Streamline\Models\PriceListCategories::select('patient_category_id', 'id')->get(); - @endphp - - @foreach($price_list_categories as $record) -
    - {{ Form::label('non_insured_price', get_name($record->patient_category_id, 'id', 'name', 'patient_categories').' Price') }} - {{ Form::hidden('price_list_category_id[]', $record->id) }} - {{ Form::number('price_list_price[]', '', ['class'=>'form-control price_list_price']) }} -
    - @endforeach - -
    - {{ Form::label('description', __('drugs.drug_description')) }} - {{ Form::textArea('description', '', ['class'=>'form-control', 'rows' => 4]) }} -
    - -
    - {{ Form::label('prompt', __('drugs.drug_prompt')) }} - {{ Form::textArea('prompt', '', ['class'=>'form-control', 'rows' => 4]) }} -
    - -
    - {{ Form::label('info_english', __('drugs.patient_info_in_english')) }} - {{ Form::textArea('info_english', '', ['class'=>'form-control', 'rows' => 4]) }} -
    - -
    - {{ Form::label('info_vernacular', __('drugs.patient_info_in_vernacular')) }} - {{ Form::textArea('info_vernacular', '', ['class'=>'form-control', 'rows' => 4]) }} -
    -
    -
    -
    - {{ Form::label('reference_text', __('symptoms.reference_area')) }} -
    -
    - {{ Form::text('reference_name[]', '', ['class'=>'form-control', 'placeholder' => 'Reference Name']) }} -
    -
    - {{ Form::url('reference_areas[]', '', ['class'=>'form-control', 'placeholder' => 'eg http://www.google.com']) }} -
    -
    -
    - -
    - {{ Form::button(__('drugs.submit'),['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10 submit-btn']) }} - {{ Form::button(__('drugs.cancel'),['type'=>'reset','class'=>'btn btn-rounded btn-default waves-effect waves-light']) }} - @endif - - {{ Form::close() }} -
    -
    -
    -@endsection - - -@push('scripts') - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit.blade.php deleted file mode 100755 index f6502732..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit.blade.php +++ /dev/null @@ -1,186 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') - -
    -
    -

    {{ __('drugs.edit_drug') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($drug, ['method' => 'PUT', 'route' => ['drugs.update',$drug], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('drugs.drug_name')) }} - {{ Form::text('name', $drug->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('category_id', __('drugs.drug_category')) }} - {{ Form::select('category_id', $drug_categories, $drug->category_id, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('form_id', __('drugs.drug_form')) }} - {{ Form::select('form_id', $drug_forms, $drug->form_id, ['class'=>'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('available', __('drugs.is_drug_available'), ["class"=>'col-md-12']) }} -  {{ __('drugs.yes') }} {{ Form::radio('available', 1, $drug->available == 1, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -  {{ __('drugs.no') }} {{ Form::radio('available', 0, $drug->available == 0, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    - -
    - {{ Form::label('unit_id', __('drugs.drug_unit')) }} - {{ Form::select('unit_id', $drug_units, $drug->unit_id, ['class'=>'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('pharmacy_stock', __('drugs.current_pharmacy_stock')) }} - {{ Form::number('pharmacy_stock', $drug->pharmacy_stock, ['class'=>'form-control compulsory', 'required', 'readonly']) }} -
    -
    - -
    - {{ Form::label('store_stock', __('drugs.current_store_stock')) }} - {{ Form::number('store_stock', $drug->quantity, ['class' => 'form-control compulsory', 'required', 'readonly']) }} -
    -
    - -
    - {{ Form::label('reorder_level', __('drugs.re_order_level')) }} - {{ Form::number('reorder_level', $drug->reorder_level, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('', __('drugs.long_term'), ["class"=>'col-md-12']) }} -  Yes {{ Form::radio('long_term', 1, $drug->long_term == 1, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -  No {{ Form::radio('long_term', 0, $drug->long_term == 0, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    - -
    - {{ Form::label('hssip', __('drugs.hssip')) }} - {{ Form::text('hssip', $drug->hssip, ['class'=>'form-control']) }} -
    - -
    - {{ Form::label('account_id', __('drugs.income_account')) }} - {{ Form::select('account_id', $income_accounts, $drug->account_id, ['class' => 'form-control']) }} -
    -
    - -
    - {{ Form::label('cog_account', __('drugs.cost_of_goods_account')) }} - {{ Form::select('cog_account', $cost_of_goods_accounts, $drug->cost_of_goods_account, ['class' => 'form-control']) }} -
    -
    - -
    - {{ Form::label('inventory_account', __('drugs.inventory_asset_account')) }} - {{ Form::select('inventory_account', $inventory_asset_accounts, $drug->inventory_account, ['class' => 'form-control']) }} -
    -
    - @php - $reference_array = !empty($drug->reference_areas)? explode(",", $drug->reference_areas):[]; - $reference_name = !empty($drug->reference_name)? explode(",", $drug->reference_name): []; - @endphp - @if (!empty($reference_array) && !empty($reference_name)) - @for($i = 0; $i < count($reference_array); $i++) -
    -
    - {{ Form::text('reference_name[]', $reference_name[$i] ?? '', ['class'=>'form-control', 'placeholder' => 'Reference Name']) }} -
    -
    - {{ Form::url('reference_areas[]', $reference_array[$i] ?? '', ['class'=>'form-control', 'placeholder' => 'eg http://www.google.com']) }} -
    -
    - @endfor - @if (count($reference_array) < 4) - - @endif - @else -
    - {{ Form::label('reference_text', __('symptoms.reference_area')) }} -
    -
    - {{ Form::text('reference_name[]', '', ['class'=>'form-control', 'placeholder' => 'Reference Name']) }} -
    -
    - {{ Form::url('reference_areas[]', '', ['class'=>'form-control', 'placeholder' => 'eg http://www.google.com']) }} -
    -
    -
    - -
    - @endif - - - {{ Form::button(__('drugs.submit'),['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('drugs.cancel'),['type'=>'reset','class'=>'btn btn-rounded btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit/all.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit/all.blade.php deleted file mode 100755 index d6c0aa6e..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit/all.blade.php +++ /dev/null @@ -1,123 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('drugs.edit_all_drugs') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -@include('clinical_data::drugs.menu') - -
    -
    -
    - {{ Form::model($drugs, ['method' => 'ANY', 'route' => ['drugs.update_all', 'data-toggle' => 'validator']]) }} - -
    - {{ Form::button(__('drugs.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @foreach($drugs as $drug) - - - - - - - - - - - - - @endforeach - -
    {{ __('drugs.drug_name') }}{{ __('drugs.drug_form') }}{{ __('drugs.drug_unit') }}{{ __('drugs.pharmacy_stock') }}{{ __('drugs.store_stock') }}{{ __('drugs.re_order_level') }}{{ __('drugs.insurance_coverage') }}{{ __('drugs.long_term') }}{{ __('drugs.hssip') }}
    {{ __('drugs.drug_name') }}{{ __('drugs.drug_form') }}{{ __('drugs.drug_unit') }}{{ __('drugs.pharmacy_stock') }}{{ __('drugs.store_stock') }}{{ __('drugs.re_order_level') }}{{ __('drugs.insurance_coverage') }}{{ __('drugs.long_term') }}{{ __('drugs.hssip') }}
    -

    {{ $drug->name }}

    - {{ Form::text('name[]', $drug->name, ['class' => 'form-control compulsory', 'required']) }} -
    - {{ Form::select('form_id[]', $drug_forms, $drug->form_id, ['class' => 'form-control']) }} - - {{ Form::select('unit_id[]', $drug_units, $drug->unit_id, ['class' => 'form-control']) }} - - {{ Form::number('pharmacy_stock[]', $drug->pharmacy_stock, ['class' => 'form-control', 'readonly']) }} - - {{ Form::number('store_stock[]', $drug->store_stock, ['class' => 'form-control', 'readonly']) }} - - {{ Form::number('reorder_level[]', $drug->reorder_level, ['class'=>'form-control']) }} - - {{ Form::select('insurance_coverage[]', [1 => 'Yes', 0 => 'No'], $drug->insurance_coverage, ['class' => 'form-control']) }} - - {{ Form::select('long_term[]', [1 => 'Yes', 0 => 'No'], $drug->long_term, ['class' => 'form-control']) }} - - {{ Form::text('hssip[]', $drug->hssip, ['class' => 'form-control']) }} -
    -
    - - {{ Form::button(__('drugs.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('drugs.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@include('clinical_data::drugs.menu') -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit/all_calculations.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit/all_calculations.blade.php deleted file mode 100755 index 3a3c0397..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit/all_calculations.blade.php +++ /dev/null @@ -1,98 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('drugs.edit_all_calculations') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -@include('clinical_data::drugs.menu') - -
    -
    -
    - {{ Form::model($drugs, ['method' => 'ANY', 'route' => ['drugs.update_all_calculations', 'data-toggle' => 'validator']]) }} - -
    - {{ Form::button(__('drugs.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    - -
    - - - - - - - - - - - - - - - - - - - - - @foreach($drugs as $drug) - - - - - - - - @endforeach - -
    {{ __('drugs.drug_name') }}{{ __('drugs.drug_form') }}{{ __('drugs.drug_pack') }}{{ __('drugs.drug_strength') }}
    {{ __('drugs.drug_name') }}{{ __('drugs.drug_form') }}{{ __('drugs.drug_pack') }}{{ __('drugs.drug_strength') }}
    -

    {{ $drug->name }}

    - {{ Form::text('name[]', $drug->name, ['class' => 'form-control compulsory', 'required']) }} -
    - {{ Form::select('form_id[]', $drug_forms, $drug->form_id, ['class' => 'form-control']) }} - - {{ Form::number('pack[]', $drug->pack, ['class' => 'form-control', 'step' => '.01']) }} - - {{ Form::number('strength[]', $drug->strength, ['class' => 'form-control', 'step' => '.01']) }} -
    -
    - - {{ Form::button(__('drugs.submit'),['type'=>'submit', 'class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('drugs.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@include('clinical_data::drugs.menu') -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit/all_pricing.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit/all_pricing.blade.php deleted file mode 100755 index e6be302a..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit/all_pricing.blade.php +++ /dev/null @@ -1,169 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('drugs.edit_all_pricing') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -@include('clinical_data::drugs.menu') - -
    -
    -
    - {{ Form::model($drugs, ['method' => 'ANY', 'route' => ['drugs.update_all_pricing']]) }} - - @php $id = 1; @endphp - -
    - {{ Form::button(__('drugs.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    - -
    - - - - - - - - @if(get_ward_prescription_model() == 2) - - - - - - - @endif - - - - - - - - - @if(get_ward_prescription_model() == 2) - - - - - - - @endif - - - - @foreach($drugs as $drug) - @php - $non_insured_price_id = 'non_insured_price' . $id; - $pricing_factor_adult = 'pricing_factor_adult' . $id; - $dc_adult = 'ip_daily_cost_adult' . $id; - $pricing_factor_children = 'pricing_factor_children' . $id; - $dc_children = 'ip_daily_cost_children' . $id; - $pricing_factor_infant = 'pricing_factor_infant' . $id; - $dc_infant = 'ip_daily_cost_infant' . $id; - @endphp - - - - - - @if(get_ward_prescription_model() == 2) - - - - - - - @endif - - @php $id++ @endphp - @endforeach - -
    {{ __('drugs.drug_name') }}{{ __('drugs.buying') }}{{ __('drugs.non_insured_price') }}{{ __('drugs.pf_adult') }}{{ __('drugs.daily_cost_adult') }}{{ __('drugs.pf_children') }}{{ __('drugs.daily_cost_children') }}{{ __('drugs.pf_infant') }}{{ __('drugs.daily_cost_infant') }}
    {{ __('drugs.drug_name') }}{{ __('drugs.buying') }}{{ __('drugs.non_insured_price') }}{{ __('drugs.pf_adult') }}{{ __('drugs.daily_cost_adult') }}{{ __('drugs.pf_children') }}{{ __('drugs.daily_cost_children') }}{{ __('drugs.pf_infant') }}{{ __('drugs.daily_cost_infant') }}
    -

    {{ $drug->name }}

    - {{ Form::text('name[]', $drug->name, ['class' => 'form-control compulsory', 'required']) }} -
    - {{ Form::number('cost_price[]', $drug->cost_price , ['class' => 'form-control compulsory']) }} - - {{ Form::number('non_insured_price[]', $drug->non_insured_price , ['class' => 'form-control compulsory', 'onchange' => 'calcPrices(' . $id . ');', 'id' => $non_insured_price_id]) }} - - {{ Form::number('pricing_factor_adult[]', $drug->pricing_factor_adult , ['class' => 'form-control compulsory', 'onchange' => 'calcPrices(' . $id . ');', 'step' => '0.01', 'id' => $pricing_factor_adult]) }} - - {{ Form::number('ip_daily_cost_adult[]', ($drug->pricing_factor_adult * $drug->non_insured_price) , ['class' => 'form-control', 'readonly' => 'true', 'id' => $dc_adult]) }} - - {{ Form::number('pricing_factor_children[]', $drug->pricing_factor_children , ['class' => 'form-control compulsory', 'onchange' => 'calcPrices(' . $id . ');', 'step' => '0.01', 'id' => $pricing_factor_children]) }} - - {{ Form::number('ip_daily_cost_children[]', ($drug->pricing_factor_children * $drug->non_insured_price) , ['class' => 'form-control', 'readonly' => 'true', 'id' => $dc_children]) }} - - {{ Form::number('pricing_factor_infant[]', $drug->pricing_factor_infant , ['class' => 'form-control compulsory', 'onchange' => 'calcPrices(' . $id . ');', 'step' => '0.01', 'id' => $pricing_factor_infant]) }} - - {{ Form::number('ip_daily_cost_infant[]', ($drug->pricing_factor_infant * $drug->non_insured_price) , ['class' => 'form-control', 'readonly' => 'true', 'id' => $dc_infant]) }} -
    -
    - - {{ Form::button(__('drugs.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('drugs.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@include('clinical_data::drugs.menu') -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit/all_prompts.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit/all_prompts.blade.php deleted file mode 100755 index 9538b4ea..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit/all_prompts.blade.php +++ /dev/null @@ -1,103 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('drugs.edit_all_prompts') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -@include('clinical_data::drugs.menu') - -
    -
    -
    - {{ Form::model($drugs, ['method' => 'ANY', 'route' => ['drugs.update_all_prompts', 'data-toggle' => 'validator']]) }} - -
    - {{ Form::button(__('drugs.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    - -
    - - - - - - - - - - - - - - - - - - - - - - - @foreach($drugs as $drug) - - - - - - - - - @endforeach - -
    {{ __('drugs.drug_name') }}{{ __('drugs.drug_prompt') }}{{ __('drugs.english_info') }}{{ __('drugs.vernacular_info') }}{{ __('drugs.pharmacy_comment') }}
    {{ __('drugs.drug_name') }}{{ __('drugs.drug_prompt') }}{{ __('drugs.english_info') }}{{ __('drugs.vernacular_info') }}{{ __('drugs.pharmacy_comment') }}
    -

    {{ $drug->name }}

    - {{ Form::text('name[]', $drug->name, ['class' => 'form-control compulsory', 'required']) }} -
    - {{ Form::textArea('prompt[]', $drug->prompt, ['class' => 'form-control', 'rows' => 4]) }} - - {{ Form::textArea('info_english[]', $drug->info_english, ['class' => 'form-control', 'rows' => 4]) }} - - {{ Form::textArea('info_vernacular[]', $drug->info_vernacular, ['class' => 'form-control', 'rows' => 4]) }} - - {{ Form::textArea('pharmacy_comment[]', $drug->pharmacy_comment, ['class' => 'form-control', 'rows' => 4]) }} -
    -
    - - {{ Form::button(__('drugs.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('drugs.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@include('clinical_data::drugs.menu') -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit/drugs_calculations.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit/drugs_calculations.blade.php deleted file mode 100755 index bca8a83b..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit/drugs_calculations.blade.php +++ /dev/null @@ -1,55 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('drugs.edit_drug_calculation') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($drug, ['method' => 'PUT', 'route' => ['drugs.update',$drug]]) }} - - - {{ Form::hidden('id', 2) }} - - -
    - {{ Form::label('name', __('drugs.drug_name')) }} - {{ Form::text('name', $drug->name, ['class' => 'form-control compulsory']) }} -
    - -
    - {{ Form::label('form_id', __('drugs.drug_form')) }} - {{ Form::select('form_id', $drug_forms, null, ['class'=>'form-control compulsory']) }} -
    - -
    - {{ Form::label('pack', __('drugs.drug_pack')) }} - {{ Form::number('pack', $drug->pack, ['class'=>'form-control compulsory', 'step' => '.01']) }} -
    - -
    - {{ Form::label('strength', __('drugs.drug_strength')) }} - {{ Form::number('strength', $drug->strength, ['class' => 'form-control compulsory', 'step' => '.01']) }} -
    -
    -
    - - {{ Form::button(__('drugs.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('drugs.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -@endsection diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit/drugs_pricing.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit/drugs_pricing.blade.php deleted file mode 100755 index 0653e807..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit/drugs_pricing.blade.php +++ /dev/null @@ -1,114 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('drugs.edit_drug_pricing') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($drug, ['method' => 'PUT', 'route' => ['drugs.update',$drug]]) }} - - {{ Form::hidden('id', 1) }} - -
    - {{ Form::label('name', __('drugs.drug_name')) }} - {{ Form::text('name', $drug->name, ['class' => 'form-control compulsory']) }} -
    - -
    - {{ Form::label('cost_price', __('drugs.buying')) }} - {{ Form::number('cost_price', $drug->cost_price , ['class' => 'form-control compulsory']) }} -
    - -
    - {{ Form::label('non_insured_price', __('drugs.non_insured_price')) }} - {{ Form::number('non_insured_price', $drug->non_insured_price , ['class' => 'form-control compulsory', 'id' => 'non_insured_price']) }} -
    - - @if($drug->price_list_category && $drug->price_list_category != '') - @php - $price_list_categories = explode(",", $drug->price_list_category); - $price_list_prices = explode(",", $drug->price_list_price); - @endphp - - @for($i = 0; $i < count($price_list_categories); $i++) -
    - {{ Form::label('non_insured_price', get_name(get_name($price_list_categories[$i], 'id', 'price_list_categories', 'price_list_categories'), 'id', 'name', 'patient_categories').' Price') }} - {{ Form::hidden('price_list_category_id[]', $price_list_categories[$i]) }} - {{ Form::number('price_list_price[]', $price_list_prices[$i], ['class'=>'form-control price_list_price']) }} -
    - @endfor - @endif - - @if(get_ward_prescription_model() == 2) -
    - {{ Form::label('pricing_factor_adult', __('drugs.pf_adult')) }} - {{ Form::number('pricing_factor_adult', $drug->pricing_factor_adult , ['class' => 'form-control compulsory', 'onchange' => 'calcAdult(this.value);', 'step' => '0.01']) }} -
    - -
    - {{ Form::label('ip_daily_cost_adult', __('drugs.daily_cost_adult')) }} - {{ Form::number('ip_daily_cost_adult', $drug->ip_daily_cost_adult , ['class' => 'form-control', 'readonly' => 'true', 'id' => 'ip_daily_cost_adult']) }} -
    - -
    - {{ Form::label('pricing_factor_children', __('drugs.pf_children')) }} - {{ Form::number('pricing_factor_children', $drug->pricing_factor_children , ['class' => 'form-control compulsory', 'onchange' => 'calcChild(this.value);', 'step' => '0.01']) }} -
    - -
    - {{ Form::label('ip_daily_cost_children', __('drugs.daily_cost_children')) }} - {{ Form::number('ip_daily_cost_children', $drug->ip_daily_cost_children , ['class' => 'form-control', 'readonly' => 'true', 'id' => 'ip_daily_cost_children']) }} -
    - -
    - {{ Form::label('pricing_factor_infant', __('drugs.pf_infant')) }} - {{ Form::number('pricing_factor_infant', $drug->pricing_factor_infant , ['class' => 'form-control compulsory', 'onchange' => 'calcInfant(this.value);', 'step' => '0.01']) }} -
    - -
    - {{ Form::label('ip_daily_cost_infant', __('drugs.daily_cost_infant')) }} - {{ Form::number('ip_daily_cost_infant', $drug->ip_daily_cost_infant , ['class' => 'form-control', 'readonly' => 'true', 'id' => 'ip_daily_cost_infant']) }} -
    - @endif - - {{ Form::button(__('drugs.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('drugs.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - -
    -
    - - {{ Form::close() }} -
    - - -@endsection diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit/drugs_prompts.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit/drugs_prompts.blade.php deleted file mode 100755 index 010b18ed..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit/drugs_prompts.blade.php +++ /dev/null @@ -1,65 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('drugs.edit_drug_prompt') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($drug, ['method' => 'PUT', 'route' => ['drugs.update',$drug]]) }} - - - {{ Form::hidden('id', 0) }} - -
    - {{ Form::label('name', __('drugs.drug_name')) }} - {{ Form::text('name', $drug->name, ['class' => 'form-control compulsory']) }} -
    - -
    - {{ Form::label('prompt', __('drugs.drug_prompt')) }} - {{ Form::textArea('prompt', $drug->prompt, ['class'=>'form-control', 'rows' => 4]) }} -
    - -
    - {{ Form::label('info_english', __('drugs.english_info')) }} - {{ Form::textArea('info_english', $drug->info_english, ['class' => 'form-control', 'rows' => 4]) }} -
    - -
    - {{ Form::label('info_vernacular', __('drugs.vernacular_info')) }} - {{ Form::textArea('info_vernacular', $drug->info_vernacular, ['class'=>'form-control', 'rows' => 4]) }} -
    - -
    - {{ Form::label('pharmacy_comment', __('drugs.pharmacy_comment')) }} - {{ Form::textArea('pharmacy_comment', $drug->pharmacy_comment, ['class' => 'form-control', 'rows' => 4]) }} -
    - -
    - {{ Form::label('description', __('drugs.drug_description')) }} - {{ Form::textArea('description', $drug->description, ['class' => 'form-control', 'rows' => 4]) }} -
    - -
    -
    - - {{ Form::button(__('drugs.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('drugs.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -@endsection \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit/items_purchase_packaging.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit/items_purchase_packaging.blade.php deleted file mode 100755 index 282804d3..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/edit/items_purchase_packaging.blade.php +++ /dev/null @@ -1,65 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('drugs.edit_drug_prompt') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($drug, ['method' => 'ANY', 'route' => ['drugs.update_purchase_packaging',$drug]]) }} - - - {{ Form::hidden('id', $drug->id) }} - -
    - {{ Form::label('name', __('drugs.drug_name')) }} - {{ Form::text('name', $drug->name, ['class' => 'form-control compulsory']) }} -
    - -
    - {{ Form::label('',__('drugs.does_package_unit_have_sub_packages')) }} -
    - {{ __('drugs.yes') }} {{ Form::radio('does_package_unit_have_sub_packages', 1, false, ['class' => 'have_sub_package', 'required', 'id' => 'does_have_sub_package1', 'onclick'=>'displaySubPackagesDivs()']) }} - {{ __('drugs.no') }} {{ Form::radio('does_package_unit_have_sub_packages', 0, false, ['class' => 'have_sub_package', 'required', 'id' => 'does_not_have_sub_package1', 'onclick'=>'displaySubPackagesDivs()']) }} -
    -
    - -
    - {{ Form::label('quantity_in_each_package_unit', __('drugs.quantity_in_each_package_unit')) }} - {{ Form::number('quantity_in_each_package_unit', $drug->quantity_in_each_package_unit, ['class' => 'form-control', 'step' => '0.01']) }} -
    -
    - -
    - {{ Form::label('quantity_in_each_sub_package', __('drugs.quantity_in_each_sub_package')) }} - {{ Form::number('quantity_in_each_sub_package', $drug->quantity_in_each_sub_package, ['class' => 'form-control', 'step' => '0.01']) }} -
    -
    - -
    - {{ Form::label('number_of_sub_packages_in_main_package', __('drugs.number_of_sub_packages_in_main_package')) }} - {{ Form::number('number_of_sub_packages_in_main_package', $drug->number_of_sub_packages_in_main_package_unit, ['class' => 'form-control', 'step' => '0.01']) }} -
    -
    - - {{ Form::button(__('drugs.submit'),['type' => 'submit','class' =>' btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('drugs.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} -
    -
    - - {{ Form::close() }} -
    -@endsection \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drugs/inactive.blade.php deleted file mode 100755 index d9ef95c9..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/inactive.blade.php +++ /dev/null @@ -1,99 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('drugs.activate_drugs') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -

    {{ __('drugs.export_data_to_csv_and_excel') }}

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - @foreach($drugs as $drug) - - - - - - - - - - - @endforeach - - -
    {{ __('drugs.drug_name') }}{{ __('drugs.selling') }}{{ __('drugs.prompt') }}{{ __('drugs.pharmacy') }}{{ __('drugs.store') }}{{ __('drugs.vernacular_info') }}{{ __('drugs.english_info') }}
    {{ __('drugs.drug_name') }}{{ __('drugs.selling') }}{{ __('drugs.prompt') }}{{ __('drugs.pharmacy') }}{{ __('drugs.store') }}{{ __('drugs.vernacular_info') }}{{ __('drugs.english_info') }}
    {{ get_drug_name($drug->id) }}{{ $drug->selling_price }}{{ $drug->prompt }}{{ $drug->pharmacy_stock }}{{ $drug->store_stock}}{{ $drug->info_vernacular }}{{ $drug->info_english }} - {{ Form::model($drug->id ,['method' => 'POST', 'route' => ['drugs.activate', $drug->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drugs/index.blade.php deleted file mode 100755 index a20ab65c..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/index.blade.php +++ /dev/null @@ -1,239 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('drugs.drugs') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -@include('clinical_data::drugs.menu') - -
    -
    -
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @foreach($drugs as $drug) - - - - @php - $reference_array = explode(",", $drug->reference_areas); - $reference_name = explode(",", $drug->reference_name); - $drug_pharmacy_stock = $drug_store_stock = 0; - - $batch_records = \Streamline\Models\ItemBatchWatcher::where(['item_type' => 1, 'item_id' => $drug->id])->get(); - if (count($batch_records) > 0) { - foreach ($batch_records as $batch_record) { - $drug_store_stock += $batch_record->store_stock; - $drug_pharmacy_stock += $batch_record->pharmacy_stock; - } - } - @endphp - - - - - - - - - - @endforeach - -
    {{ __('drugs.drug_name') }}{{ __('drugs.non_insured_price') }}{{ __('drugs.prompts_and_references') }}{{ __('drugs.pharmacy') }}{{ __('drugs.store') }}{{ __('drugs.vernacular_info') }}{{ __('drugs.english_info') }}
    {{ __('drugs.drug_name') }}{{ __('drugs.non_insured_price') }}{{ __('drugs.prompts_and_references') }}{{ __('drugs.pharmacy') }}{{ __('drugs.store') }}{{ __('drugs.vernacular_info') }}{{ __('drugs.english_info') }}
    {{ get_drug_name($drug->id) }}{{ $drug->non_insured_price }} - {{ $drug->prompt }}
    - @for ($i=0; $i{{ $reference_name[$i] ?? '' }} - @endfor - {{-- {{ $reference_name[0] }} --}} -
    {{ $drug_pharmacy_stock }}{{ $drug_store_stock}}{{ $drug->info_vernacular }}{{ $drug->info_english }} - @if( Auth::user()->can('drug-edit')) - {{ __('drugs.edit') }} - @endif - - @if(Auth::user()->can('drug-delete') && empty($drug->pharmacy_stock) && empty($drug->store_stock) && empty($drug->opening_stock) && empty($ordered_drugs[$drug->id])) - {{ Form::model($drug->id ,['method' => 'DELETE', 'route' => ['drugs.destroy', $drug->id]]) }} - - {{ Form::close() }} - @elseif (Auth::user()->can('drug-delete') && (!empty($drug->pharmacy_stock) || !empty($drug->store_stock) || !empty($drug->opening_stock))) - Still Stocked - @elseif (Auth::user()->can('drug-delete') && !empty($ordered_drugs[$drug->id])) - Drug was issued - @endif - - @if(Auth::user()->can('drug-edit')) - - @endif -
    -
    -
    -
    -
    - - - - - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/index_drugs_expiring.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drugs/index_drugs_expiring.blade.php deleted file mode 100755 index b7bf448e..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/index_drugs_expiring.blade.php +++ /dev/null @@ -1,143 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('drugs.expired_drugs') }}

    -
    -
    - -
    -
    - -@if ($errors->any()) -
    - -
    -@endif - -@include('flash::message') - -
    -
    -
    -
    - {{ Form::open(['route' => 'drugs.index_drugs_expiring']) }} - -
    - {{ Form::label('time_period', __('drugs.expiring_with_in')) }} - {{ Form::select('time_period', ['1' => __('drugs.1_week'), '2' => __('drugs.2_weeks'), '4' => __('drugs.1_month'), '3' => __('stores.date_range'), '0' => __('drugs.expired_drugs')], $range, ['class' => 'form-control', 'id'=>'time_period']) }} -
    - - - - {{ Form::button(__('drugs.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - - {{ Form::close() }} -
    -
    -
    - -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - @foreach($drugs as $drug) - - - - - - - @endforeach - - -
    {{ __('drugs.drug_name') }}{{ __('drugs.stock') }}{{ __('drugs.batch_details') }}{{ __('drugs.expiry_date') }}
    {{ __('drugs.drug_name') }}{{ __('drugs.stock') }}{{ __('drugs.batch_details') }}{{ __('drugs.expiry_date') }}
    {{ get_drug_name($drug->item_id) }}{{ ($drug->store_stock ?? 0) + ($drug->pharmacy_stock ?? 0) + ($drug->ward_stock ?? 0)}} - {{ $drug->batch_number }} - {{ streamline_date($drug->expiry_date) }}
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/index_drugs_low_stock.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drugs/index_drugs_low_stock.blade.php deleted file mode 100755 index 28366008..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/index_drugs_low_stock.blade.php +++ /dev/null @@ -1,81 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('drugs.drugs_out_of_stock') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -

    {{ __('drugs.export_data_to_csv_and_excel') }}

    -
    - - - - - - - - - - - - - - - - - @foreach($drugs as $drug) - - - - - - @endforeach - - -
    {{ __('drugs.drug_name') }}{{ __('drugs.store_stock') }}{{ __('drugs.expiry_date') }}
    {{ __('drugs.drug_name') }}{{ __('drugs.store_stock') }}{{ __('drugs.expiry_date') }}
    {{ get_drug_name($drug->id) }}{{ $drug->store_stock}}{{ streamline_date($drug->expiry_date) }}
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/drugs/menu.blade.php deleted file mode 100755 index 020e0c43..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/drugs/menu.blade.php +++ /dev/null @@ -1,9 +0,0 @@ -
    -
    - {{ __('drugs.add_bulk_drugs') }} - {{ __('drugs.edit_all_drugs') }} - {{ __('drugs.edit_all_prompts') }} - {{ __('drugs.edit_all_calculations') }} - {{ __('drugs.edit_all_pricing') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/eye_glasses/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/eye_glasses/create.blade.php deleted file mode 100644 index 1bc25623..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/eye_glasses/create.blade.php +++ /dev/null @@ -1,83 +0,0 @@ -@extends('layouts.main') - -@push('styles') -@endpush - -@section('content') -
    -
    -

    {{ __('clinical_data.add_opticals') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::eye_glasses.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'opticals.store' , 'data-toggle' => 'validator']) }} -
    - {{ Form::label('name', 'Name') }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('price', 'Buying price') }} - {{ Form::number('price', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('non_insured_price', 'Cash Price') }} - {{ Form::number('non_insured_price', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('account_id', 'Income Account') }} - {{ Form::select('account_id', $chart_of_accounts, null, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('cost_of_goods_account', 'Cost of Goods Account') }} - {{ Form::select('cost_of_goods_account', $cost_of_goods_accounts, null, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('inventory_account', 'Inventory Asset Account') }} - {{ Form::select('inventory_account', $inventory_asset_accounts, null, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - -@endpush - - diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/eye_glasses/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/eye_glasses/edit.blade.php deleted file mode 100644 index 4a4c1805..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/eye_glasses/edit.blade.php +++ /dev/null @@ -1,82 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Edit

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::eye_glasses.menu') -
    -
    - - @include('flash::message') -
    - {{ Form::model($eye_glass, ['method' => 'PUT', 'route' => ['opticals.update',$eye_glass], 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name','Optical Item Name') }} - {{ Form::text('name',$eye_glass->name,['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('non_insured_price','Cash Price') }} - {{ Form::text('non_insured_price', $eye_glass->non_insured_price,['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('inventory_account', 'Inventory Asset Account') }} - {{ Form::select('inventory_account', $inventory_asset_accounts, $eye_glass->inventory_account, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    - {{ Form::label('buying_price','Optical Item Buying Price') }} - {{ Form::text('buying_price', $eye_glass->buying_price,['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('account_id', 'Income Account') }} - {{ Form::select('account_id', $chart_of_accounts, $eye_glass->account_id, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('cost_of_goods_account', 'Cost of Goods Account') }} - {{ Form::select('cost_of_goods_account', $cost_of_goods_accounts, $eye_glass->cost_of_goods_account, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    - - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/eye_glasses/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/eye_glasses/inactive.blade.php deleted file mode 100644 index 4b65e60e..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/eye_glasses/inactive.blade.php +++ /dev/null @@ -1,92 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    Activate

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::eye_glasses.menu') -
    -
    - -
    -
    -
    -

    Export data to Copy, CSV, Excel, PDF & Print

    -
    - - - - - - - - - - - - @foreach($eye_glasses as $record) - - - - - - - - @endforeach - -
    NamePriceInsurance StatusAccount Name
    {{ $record->name }}{{ $record->buying_price }} - @if ($record->insurance) - Yes - @else - No - @endif - {{ $chart_of_accounts[$record->account_id] }} - {{ Form::model($record->id ,['method' => 'POST', 'route' => ['eye_glasses.activate', $record->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/eye_glasses/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/eye_glasses/index.blade.php deleted file mode 100644 index cff1c5b4..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/eye_glasses/index.blade.php +++ /dev/null @@ -1,107 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('clinical_data.opticals') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::eye_glasses.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    -

    Export data to Copy, CSV, Excel, PDF & Print

    -
    - - - - - - - - - - - - - - - @if(count($eye_glasses) > 0) - @foreach($eye_glasses as $record) - - - - - - - - - - - @endforeach - @else - - - - @endif - -
    NameBuying PriceInsurance StatusNon Insured PriceInsured PriceAccount Name
    {{ $record['name'] }}{{ ugandan_shillings($record['buying_price']) }} - @if ($record['insurance']) - Yes - @else - No - @endif - {{ ugandan_shillings($record['non_insured_price']) }}{{ ugandan_shillings($record['insured_price']) }}{{ $chart_of_accounts[$record['account_id']] }} - Edit - - {{ Form::model($record['id'] ,['method' => 'DELETE', 'route' => ['opticals.destroy', $record['id']]]) }} - - {{ Form::close() }} -
    No records available
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/eye_glasses/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/eye_glasses/menu.blade.php deleted file mode 100644 index 75128507..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/eye_glasses/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - {{ __('clinical_data.add_opticals') }} - {{ __('clinical_data.view_opticals') }} - {{ __('clinical_data.inactive_opticals') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/eye_glasses/order.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/eye_glasses/order.blade.php deleted file mode 100644 index 0a489481..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/eye_glasses/order.blade.php +++ /dev/null @@ -1,395 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    Order optical items for {{ $patient->last_name }} {{ __('sundries.for_episode') }}:{{ streamline_date(get_name($episode_id, 'id', 'created_at', 'patient_episodes')) }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    - -
    - - @include('flash::message') - - @foreach ($errors->all() as $error) -
    {{ $error }}
    - @endforeach - - {{ Form::open(['route' => 'eye_glasses.submit_order']) }} - -
    - - - - - - - @php - $patient_insurance_status = patient_insurance_status($patient_id); - $option_eye_glasses = ""; - foreach ($eye_glasses as $key => $value){ - $option_eye_glasses .= ""; - } - - $counter = 0; - @endphp - {{ Form::hidden('patient_id', $patient_id, ['id' => 'patient_id']) }} - {{ Form::hidden('patient_insurance_status', $patient_insurance_status, ['id' => 'patient_insurance_status']) }} - - - @if($ordered_eye_glasses) - - - - {{ Form::hidden('order_id', $ordered_eye_glasses->id) }} - @php - $item_ids = explode(",", $ordered_eye_glasses->eye_glasses_id); - $item_quantities = explode(",", $ordered_eye_glasses->quantity); - @endphp - - @for($i = 0; $i < count($item_ids); $i++) - - - - @php $counter++; @endphp - @endfor - @else - - - - @endif - -
    -
    -
    Optical Items
    -
    Quantity
    -
    Unit Cost
    -
    Total Cost
    -
    -
    -
    - Pending Optical Items - @if(Auth::user()->can('cancel-ordered-eye-glasses') ) - Cancel all ordered optical items - @endif -
    -
    -
    -
    -
    - {{ Form::select('optical_id[]', $eye_glasses, $item_ids[$i], ['class' => 'form-control compulsory required optical_id_class', 'id' => 'optical_id_' . $counter]) }} -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - - @php - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_id){ - $optical_cost = get_price_list_category_price($price_list_id, 7, $item_ids[$i]); - } else { - // check for insurance - if (get_name($item_ids[$i], 'id', 'insurance', 'eye_glasses') == 1 && patient_insurance_status($patient_id) == 1) { - $optical_cost = get_name($item_ids[$i], 'id', 'insured_price', 'eye_glasses'); - } else { - $optical_cost = get_name($item_ids[$i], 'id', 'non_insured_price', 'eye_glasses'); - } - } - @endphp - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    - @if($counter == 0) - - @else - - @endif -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    - - -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    - -
    -
    -

    Total:

    -
    -
    - -
    -
    -
    -
    - -
    -
    - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/general_items/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/general_items/create.blade.php deleted file mode 100755 index e0046296..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/general_items/create.blade.php +++ /dev/null @@ -1,64 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('general_items.add_general_items') }}

    -
    -
    - -
    -
    - -
    - {{ Form::open(['route' => 'general_items.store', 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name',__('general_items.general_items_name')) }} - {{ Form::text('name','',['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    - {{ Form::label('cost_price',__('general_items.general_item_cost_price')) }} - {{ Form::number('cost_price','',['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    -
    - {{ Form::label('payables_account_id', __('general_items.payables_account')) }} - {{ Form::select('payables_account_id', $payables_accounts, null, ['class' => 'form-control']) }} -
    -
    -
    -
    -
    - {{ Form::label('expenses_account_id', __('general_items.expense_account')) }} - {{ Form::select('expenses_account_id', $expense_accounts, null, ['class' => 'form-control']) }} -
    -
    -
    -
    - - {{ Form::button(__('general_items.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10 submit-btn']) }} - {{ Form::button(__('general_items.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - {{ Form::close() }} -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/general_items/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/general_items/edit.blade.php deleted file mode 100755 index be2a00e1..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/general_items/edit.blade.php +++ /dev/null @@ -1,85 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('general_items.edit_general_items') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::general_items.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($general_item, ['method' => 'PUT', 'route' => ['general_items.update',$general_item], 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name',__('general_items.general_items_name')) }} - {{ Form::text('name',$general_item->item_name,['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    - {{ Form::label('cost_price',__('general_items.general_item_cost_price')) }} - {{ Form::number('cost_price', $general_item->cost_price,['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    -
    - {{ Form::label('payables_account_id', __('general_items.payables_account')) }} - {{ Form::select('payables_account_id', $payables_accounts, $general_item->payables_account_id, ['class' => 'form-control']) }} -
    -
    -
    -
    -
    - {{ Form::label('expenses_account_id', __('general_items.expense_account')) }} - {{ Form::select('expenses_account_id', $expenses_accounts, $general_item->expenses_account_id, ['class' => 'form-control']) }} -
    -
    -
    -
    - - {{ Form::button(__('general_items.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('general_items.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/general_items/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/general_items/inactive.blade.php deleted file mode 100755 index 154fb7e5..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/general_items/inactive.blade.php +++ /dev/null @@ -1,85 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('general_items.activate_general_items') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::general_items.menu') -
    -
    - -
    -
    -
    -
    - - - - - - - - - - - - - @foreach($general_items as $general_item) - - - - - - - - @endforeach - -
    {{ __('general_items.general_item') }}{{ __('general_items.cost_price') }}{{ __('general_items.expense_account') }}{{ __('general_items.payables_account') }}
    {{ $general_item->name }}{{ $general_item->cost_price }}{{ $expense_accounts[$general_item->expenses_account_id] }}{{ $payables_accounts[$general_item->payables_account_id] }} - {{ Form::model($general_item->id ,['method' => 'POST', 'route' => ['general_items.activate', $general_item->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/general_items/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/general_items/index.blade.php deleted file mode 100755 index 5fb60e9b..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/general_items/index.blade.php +++ /dev/null @@ -1,90 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('general_items.general_items') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::general_items.menu') -
    -
    - - -
    -
    -
    - - @include('flash::message') -
    - - - - - - - - - - - - - @foreach($general_items as $general_item) - - - - - - - - - @endforeach - -
    {{ __('general_items.general_item') }}{{ __('general_items.cost_price') }}{{ __('general_items.expense_account') }}{{ __('general_items.payables_account') }}
    {{ $general_item->name }}{{ $general_item->cost_price }}{{ $expense_accounts[$general_item->expenses_account_id] }}{{ $payables_accounts[$general_item->payables_account_id] }} - {{ __('general_items.edit') }} - - {{ Form::model($general_item->id ,['method' => 'DELETE', 'route' => ['general_items.destroy', $general_item->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/general_items/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/general_items/menu.blade.php deleted file mode 100755 index deb5557f..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/general_items/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - {{ __('general_items.add_general_items') }} - {{ __('general_items.view_general_items') }} - {{ __('general_items.activate_general_items') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories/create.blade.php deleted file mode 100755 index 2a78d737..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories/create.blade.php +++ /dev/null @@ -1,65 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('hmis_categories.add_hmis_category') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::hmis_categories.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'hmis_categories.store', 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('title', __('hmis_categories.hmis_title')) }} - {{ Form::text('title', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - -
    - {{ Form::label('type', __('hmis_categories.type')) }} - {{ Form::select('type', [0 => 'OPD', 1 => 'IPD'], '', ['class' => 'form-control']) }} -
    -
    -
    -
    -
    - {{ Form::label('number', __('hmis_categories.hmis_number')) }} - {{ Form::text('number', '', ['class' => 'form-control']) }} -
    -
    -
    - - {{ Form::button(__('hmis_categories.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('hmis_categories.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories/edit.blade.php deleted file mode 100755 index 89af8679..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories/edit.blade.php +++ /dev/null @@ -1,65 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('hmis_categories.edit_hmis_category') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::hmis_categories.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($hmis_category, ['method' => 'PUT', 'route' => ['hmis_categories.update',$hmis_category], 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('title', __('hmis_categories.hmis_title')) }} - {{ Form::text('title', $hmis_category->title, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - -
    - {{ Form::label('type', __('hmis_categories.type')) }} - {{ Form::select('type', [0 => 'OPD', 1 => 'IPD'], $hmis_category->type, ['class' => 'form-control']) }} -
    -
    -
    -
    -
    - {{ Form::label('number', __('hmis_categories.hmis_number')) }} - {{ Form::text('number', $hmis_category->number, ['class' => 'form-control']) }} -
    -
    -
    - - {{ Form::button(__('hmis_categories.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('hmis_categories.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories/inactive.blade.php deleted file mode 100755 index d81d77ae..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories/inactive.blade.php +++ /dev/null @@ -1,92 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_categories.activate_hmis_categories') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::hmis_categories.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    -
    - - - - - - - - - - - - - - - - - @foreach($hmis_categories as $hmis_category) - - - - - - @endforeach - -
    {{ __('hmis_categories.hmis_category') }}{{ __('hmis_categories.hmis_number') }}
    {{ __('hmis_categories.hmis_category') }}{{ __('hmis_categories.hmis_number') }}
    {{ $hmis_category->title }}{{ $hmis_category->number }} - {{ Form::model($hmis_category->id ,['method' => 'POST', 'route' => ['hmis_categories.activate', $hmis_category->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories/index.blade.php deleted file mode 100755 index 30697e9d..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories/index.blade.php +++ /dev/null @@ -1,99 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_categories.hmis_categories') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::hmis_categories.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    -
    - - - - - - - - - - - - @foreach($hmis_categories as $hmis_category) - - - - - - - - @endforeach - -
    {{ __('hmis_categories.hmis_category') }}{{ __('hmis_categories.hmis_number') }}{{ __('hmis_categories.type') }}
    {{ $hmis_category->title }}{{ $hmis_category->number }}{{ $hmis_category->type == 1 ? 'IPD' : 'OPD' }} - @if (!empty($hmis_category->editable)) - {{ __('hmis_categories.edit') }} - @endif - - @if (!empty($hmis_category->editable)) - {{ Form::model($hmis_category->id ,['method' => 'DELETE', 'route' => ['hmis_categories.destroy', $hmis_category->id]]) }} - - {{ Form::close() }} - @endif -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories/menu.blade.php deleted file mode 100755 index 9c69085d..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - {{ __('hmis_categories.add_hmis_category') }} - {{ __('hmis_categories.hmis_categories') }} - {{ __('hmis_categories.activate_hmis_categories') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories_options/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories_options/create.blade.php deleted file mode 100644 index aa03c0f4..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories_options/create.blade.php +++ /dev/null @@ -1,106 +0,0 @@ -@extends('layouts.main') -@push('styles') - -@endpush -@section('content') -
    -
    -

    {{ __('hmis_categories.add_hmis_category_option') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::hmis_categories_options.menu') -
    -
    - -
    -
    - - @include('flash::message') - @if ($errors->any()) -
    -
      - @foreach ($errors->all() as $error) -
    • {{ $error }}
    • - @endforeach -
    -
    - @endif -
    - {{ Form::open(['route' => 'hmis_categories_options.store', 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('hmis_categories.name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    -
    - {{ Form::label('number', __('hmis_categories.hmis_number')) }} - {{ Form::text('number', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    -
    -
    - {{ Form::label('type', __('hmis_categories.type')) }} - {{ Form::select('type', ['' => '- Select Type-', 0 => 'OPD', 1 => 'IPD'], '', ['class' => 'form-control compulsory', 'required', 'id'=>'type', 'onchange'=>'type_options()']) }} -
    -
    -
    - {{ Form::label('hmis_category', __('hmis_categories.hmis_category')) }} - -
    -
    -
    -
    - {{ Form::button(__('hmis_categories.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('hmis_categories.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories_options/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories_options/edit.blade.php deleted file mode 100644 index 2d41d064..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories_options/edit.blade.php +++ /dev/null @@ -1,122 +0,0 @@ -@extends('layouts.main') -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_categories.edit_hmis_category_option') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::hmis_categories_options.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($option, ['method' => 'PUT', 'route' => ['hmis_categories_options.update', $option], 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('hmis_categories.name')) }} - {{ Form::text('name', $option->name, ['class' => 'form-control compulsory', 'required']) }} -
    - @error('name') -
    {{ $message }}
    - @enderror -
    -
    -
    -
    - {{ Form::label('number', __('hmis_categories.hmis_number')) }} - {{ Form::text('number', $option->number, ['class' => 'form-control compulsory', 'required']) }} -
    - @error('number') -
    {{ $message }}
    - @enderror -
    -
    -
    -
    -
    - {{ Form::label('type', __('hmis_categories.type')) }} - {{ Form::select('type', [0 => 'OPD', 1 => 'IPD'], $type->type, ['class' => 'form-control compulsory', 'required', 'id'=>'type', 'onchange'=>'type_options()']) }} -
    -
    -
    -
    - @php - $selected_option =$option->hmis_category_id; - $other_options = array_filter($hmis_categories, function ($item) use ($selected_option) { - return $item['id'] !== $selected_option; - }); - $real_option = array_filter($hmis_categories, function ($item) use ($selected_option) { - return $item['id'] == $selected_option; - }); - @endphp - {{ Form::label('hmis_category', __('hmis_categories.hmis_category')) }} - -
    - @error('hmis_category') -
    {{ $message }}
    - @enderror -
    -
    -
    - - {{ Form::button(__('hmis_categories.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('hmis_categories.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories_options/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories_options/inactive.blade.php deleted file mode 100644 index 84e0b22e..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories_options/inactive.blade.php +++ /dev/null @@ -1,93 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_categories.activate_hmis_categories_options') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::hmis_categories_options.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    -
    - - - - - - - - - - - - - - - - - - - @php $counter = 0; @endphp - @foreach($options as $option) - - - - - - - @endforeach - -
    {{ __('hmis_categories.hmis_category') }}{{ __('hmis_categories.hmis_number') }}
    {{ __('hmis_categories.hmis_category') }}{{ __('hmis_categories.hmis_number') }}
    {{ ++$counter }}{{ $option->name }}{{ $option->number }} - {{ Form::model($option->id ,['method' => 'POST', 'route' => ['hmis_categories_options.activate', $option->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories_options/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories_options/index.blade.php deleted file mode 100644 index 492d6d70..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories_options/index.blade.php +++ /dev/null @@ -1,144 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_categories.hmis_categories_option') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::hmis_categories_options.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    -
    - - - - - - - - - - - - - - @php $counter = 0; @endphp - @foreach($category_options as $category_option) - @php - $selected_option = $category_option->hmis_category_id; - $real_option = array_filter($hmis_categories, function ($item) use ($selected_option) { - return $item['id'] == $selected_option; - }); - @endphp - - - - - - - - - - @endforeach - -
    #{{ __('hmis_categories.name') }}{{ __('hmis_categories.hmis_number') }}{{ __('hmis_categories.hmis_category') }}{{ __('hmis_categories.type') }}
    {{ ++$counter }}{{ $category_option->name }}{{ $category_option->number }} - @foreach ($real_option as $selected) - {{ $selected['title'] }} - @endforeach - - @foreach ($real_option as $selected) - {{ $selected['type']== 1 ? 'IPD' : 'OPD' }} - @endforeach - - @if (!empty($category_option->editable)) - {{ __('hmis_categories.edit') }} - @endif - - @if (!empty($category_option->editable)) - {{ Form::model($category_option->id ,['method' => 'DELETE', 'route' => ['hmis_categories_options.destroy', $category_option->id]]) }} - - {{ Form::close() }} - @endif -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories_options/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories_options/menu.blade.php deleted file mode 100644 index ab4f206e..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/hmis_categories_options/menu.blade.php +++ /dev/null @@ -1,13 +0,0 @@ -
    -
    - @if( Auth::user()->can('hmis-category-option-list')) - {{ __('hmis_categories.view_hmis_category_option') }} - @endif - @if( Auth::user()->can('hmis-category-option-create')) - {{ __('hmis_categories.add_hmis_category_option') }} - @endif - @if( Auth::user()->can('hmis-category-option-delete')) - {{ __('hmis_categories.activate_hmis_categories_options') }} - @endif -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/observations/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/observations/create.blade.php deleted file mode 100755 index e357a6fa..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/observations/create.blade.php +++ /dev/null @@ -1,134 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('observations.add_observation') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::observations.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'observations.store', 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('observations.observation_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('measurement', __('observations.measurement_unit')) }} - {{ Form::text('measurement', '', ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('options_or_range',__('observations.options_or_range')) }} -
    - {{ Form::radio('options_or_range', 1, false, ["required",'id'=>'set_range','onclick'=>'setRangeOrOptions()']) }} {{ __('observations.set_ranges') }}    - {{ Form::radio('options_or_range', 2, false, ["required",'id'=>'set_option','onclick'=>'setRangeOrOptions()']) }} {{ __('observations.set_dropdown_options') }} -
    -
    - - - - -
    -
    -
    - {{ Form::label('option_for_normal', __('observations.set_normal_option')) }} - {{ Form::text('option_for_normal', '', ['class'=>'form-control']) }} -
    - -
    - {{ Form::label('age_group',__('observations.age_group')) }} -
    - @foreach($age_groups as $group => $value) - {{ Form::checkbox('age_group[]', $group, false) }} {{ $value }}    - @endforeach -
    -
    - -
    - {{ Form::label('compulsory',__('observations.is_observation_compulsory')) }} - {{ Form::radio('compulsory', 1, false, ['required']) }} {{ __('observations.yes') }}     - {{ Form::radio('compulsory', 0, false, ['required']) }} {{ __('observations.no') }} -
    -
    -
    -

    -
    - {{ Form::button(__('observations.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('observations.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/observations/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/observations/edit.blade.php deleted file mode 100755 index 5fb59c17..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/observations/edit.blade.php +++ /dev/null @@ -1,166 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('observations.edit_observation') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::observations.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($observation, ['method' => 'PUT', 'route' => ['observations.update',$observation], 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('observations.observation_name')) }} - {{ Form::text('name', $observation->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('measurement', __('observations.measurement_unit')) }} - {{ Form::text('measurement', $observation->measurement, ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('options_or_range',__('observations.options_or_range')) }} -
    - {{ Form::radio('options_or_range', 1, false, ["required",'id'=>'set_range','onclick'=>'setRangeOrOptions()']) }} {{ __('observations.set_ranges') }}    - {{ Form::radio('options_or_range', 2, false, ["required",'id'=>'set_option','onclick'=>'setRangeOrOptions()']) }} {{ __('observations.set_dropdown_options') }} -
    -
    - - - - -
    -
    -
    - {{ Form::label('option_for_normal', __('observations.set_normal_option')) }} - {{ Form::text('option_for_normal', $observation->option_for_normal , ['class'=>'form-control']) }} -
    - -
    - {{ Form::label('age_group',__('observations.age_group')) }} -
    - @php - $saved_age_groups_array = is_null($observation->age_group) ? [] : explode(",",$observation->age_group); - @endphp - @foreach($age_groups as $group => $value) - {{ Form::checkbox('age_group[]', $group, in_array($group,$saved_age_groups_array)) }} {{ $value }}    - @endforeach -
    -
    - -
    - {{ Form::label('compulsory',__('observations.is_observation_compulsory')) }} - {{ Form::checkbox('compulsory', 1, $observation->compulsory == 1) }} {{ __('observations.yes') }}     - {{ Form::checkbox('compulsory', 0, $observation->compulsory == 0) }} {{ __('observations.no') }} -
    -
    -
    -

    -
    - {{ Form::button(__('observations.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('observations.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/observations/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/observations/inactive.blade.php deleted file mode 100755 index d5a34381..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/observations/inactive.blade.php +++ /dev/null @@ -1,90 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('observations.observations') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::observations.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    -

    {{ __('observations.export_data') }}

    -
    - - - - - - - - - - - - @foreach($observations as $observation): - - - - - - - - @endforeach - -
    {{ __('observations.category') }}{{ __('observations.measurement') }}{{ __('observations.lower_limit') }}{{ __('observations.upper_limit') }}
    {{ $observation->name }}{{ $observation->measurement }}{{ $observation->lower_limit }}{{ $observation->upper_limit }} - {{ Form::model($observation->id ,['method' => 'POST', 'route' => ['observations.activate', $observation->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/observations/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/observations/index.blade.php deleted file mode 100755 index 4b68e8a0..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/observations/index.blade.php +++ /dev/null @@ -1,93 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('observations.observations') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::observations.menu') -
    -
    - - @include('flash::message') - -
    -
    -
    -

    {{ __('observations.export_data') }}

    -
    - - - - - - - - - - - - - - @foreach($observations as $observation) - - - - - - - - - - @endforeach - -
    {{ __('observations.category') }}{{ __('observations.measurement') }}{{ __('observations.options') }}{{ __('observations.lower_limit') }}{{ __('observations.upper_limit') }}
    {{ $observation->name }}{{ $observation->measurement }}{{ $observation->options }}{{ $observation->lower_limit }}{{ $observation->upper_limit }} - {{ __('observations.edit') }} - - {{ Form::model($observation->id ,['method' => 'DELETE', 'route' => ['observations.destroy', $observation->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/observations/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/observations/menu.blade.php deleted file mode 100755 index 714606fd..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/observations/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - {{ __('observations.add_observation') }} - {{ __('observations.view_observations') }} - {{ __('observations.activate_observation') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/occupations/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/occupations/create.blade.php deleted file mode 100755 index 52145382..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/occupations/create.blade.php +++ /dev/null @@ -1,43 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('occupations.add_occupation') }}

    -
    -
    - -
    -
    - -@include('clinical_data::occupations.menu') - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'occupations.store', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name',__('occupations.occupation_name'))}} - {{ Form::text('name','',['class' => 'form-control compulsory', 'required', 'placeholder'=>'e.g. Peasant']) }} -
    -
    - - {{ Form::button(__('occupations.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('occupations.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/occupations/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/occupations/edit.blade.php deleted file mode 100755 index 71ed6c8f..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/occupations/edit.blade.php +++ /dev/null @@ -1,43 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('occupations.edit_occupation') }}

    -
    -
    - -
    -
    - -@include('clinical_data::occupations.menu') - -
    -
    - - @include('flash::message') -
    - {{ Form::model($occupation, ['method' => 'PUT', 'route' => ['occupations.update',$occupation], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('occupations.occupation_name')) }} - {{ Form::text('name', $occupation->name, ['class' => 'form-control compulsory', 'required', 'placeholder'=>'e.g. Peasant']) }} -
    -
    - - {{ Form::button(__('occupations.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('occupations.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/occupations/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/occupations/inactive.blade.php deleted file mode 100755 index 64374437..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/occupations/inactive.blade.php +++ /dev/null @@ -1,84 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('occupations.activate_occupations') }}

    -
    -
    - -
    -
    - -@include('clinical_data::occupations.menu') - -
    -
    - @include('flash::message') -
    -

    {{ __('occupations.export_data') }}

    -
    - - - - - - - - - - - - - - @foreach($occupations as $occupation) - - - - - @endforeach - -
    {{ __('occupations.occupation_name') }}
    {{ __('occupations.occupation_name') }}
    {{ $occupation->name }} - {{ Form::model($occupation->id ,['method' => 'POST', 'route' => ['occupations.activate', $occupation->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/occupations/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/occupations/index.blade.php deleted file mode 100755 index 56f0ad5b..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/occupations/index.blade.php +++ /dev/null @@ -1,88 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('occupations.occupations') }}

    -
    -
    - -
    -
    - - @include('clinical_data::occupations.menu') - -
    -
    - @include('flash::message') -
    -

    {{ __('occupations.export_data') }}

    -
    - - - - - - - - - - - - - - - - - @foreach($occupations as $occupation) - - - - - - @endforeach - -
    {{ __('occupations.occupation_name') }}
    {{ __('occupations.occupation_name') }}
    {{ $occupation->name}} - {{ __('occupations.edit') }} - - {{ Form::model($occupation->id ,['method' => 'DELETE', 'route' => ['occupations.destroy', $occupation->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/occupations/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/occupations/menu.blade.php deleted file mode 100755 index 247b7aa1..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/occupations/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - {{ __('occupations.add_occupation') }} - {{ __('occupations.view_occupation') }} - {{ __('occupations.activate_occupation') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/outcomes/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/outcomes/create.blade.php deleted file mode 100755 index 12061d1c..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/outcomes/create.blade.php +++ /dev/null @@ -1,48 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('outcomes.add_outcome') }}

    -
    -
    - -
    -
    - -@include('clinical_data::outcomes.menu') - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'outcomes.store', 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('outcomes.outcome')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    - - {{ Form::button(__('outcomes.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::button(__('outcomes.cancel'),['type'=>'reset','class'=>'btn btn-default btn-rounded waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/outcomes/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/outcomes/edit.blade.php deleted file mode 100755 index 8ba36c77..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/outcomes/edit.blade.php +++ /dev/null @@ -1,48 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('outcomes.edit_outcome') }}

    -
    -
    - -
    -
    - -@include('clinical_data::outcomes.menu') - -
    -
    - - @include('flash::message') -
    - {{ Form::model($outcome, ['method' => 'PUT', 'route' => ['outcomes.update',$outcome] , 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('outcomes.outcome')) }} - {{ Form::text('name', $outcome->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    - - {{ Form::button(__('outcomes.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::button(__('outcomes.cancel'),['type'=>'reset','class'=>'btn btn-default btn-rounded waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/outcomes/edit/all.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/outcomes/edit/all.blade.php deleted file mode 100755 index 4b82b314..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/outcomes/edit/all.blade.php +++ /dev/null @@ -1,98 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('outcomes.edit_all_outcomes') }}

    -
    -
    - -
    -
    - -@include('clinical_data::outcomes.menu') - -
    -
    - - @include('flash::message') -
    - {{ Form::model($outcomes, ['method' => 'ANY', 'route' => ['outcomes.update_all'], 'data-toggle' => 'validator']) }} - -
    -
    -
    - - - - - - - - - - - - - - - @foreach($outcomes as $outcome) - - - - - @endforeach - -
    {{ __('outcomes.outcome') }}
    {{ __('outcomes.outcome') }}
    -

    {{ $outcome->name }}

    - {{ Form::text('name[]', $outcome->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    - - {{ Form::button(__('outcomes.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('outcomes.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    - -@include('clinical_data::outcomes.menu') -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/outcomes/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/outcomes/inactive.blade.php deleted file mode 100755 index 1216d3a7..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/outcomes/inactive.blade.php +++ /dev/null @@ -1,84 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('outcomes.activate_outcomes') }}

    -
    -
    - -
    -
    - -@include('clinical_data::outcomes.menu') - -
    -
    -
    - -

    {{ __('outcomes.export_data_to_copy_csv_pdf_print') }}

    -
    - - - - - - - - - - - - - - - @foreach($outcomes as $outcome) - - - - - @endforeach - -
    {{ __('outcomes.outcome') }}
    {{ __('outcomes.outcome') }}
    {{ $outcome->name }} - {{ Form::model($outcome->id ,['method' => 'POST', 'route' => ['outcomes.activate', $outcome->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/outcomes/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/outcomes/index.blade.php deleted file mode 100755 index 38805b5c..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/outcomes/index.blade.php +++ /dev/null @@ -1,128 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('outcomes.outcomes') }}

    -
    -
    - -
    -
    - -@include('clinical_data::outcomes.menu') -@include('flash::message') - -
    -
    -
    - -
    - - - - - - - - - - @foreach($outcomes as $outcome) - - - - - - @endforeach - -
    {{ __('outcomes.outcome') }}
    {{ $outcome->name }} - {{ __('outcomes.edit') }} - - {{ Form::model($outcome->id ,['method' => 'DELETE', 'route' => ['outcomes.destroy', $outcome->id]]) }} - - {{ Form::close() }} -
    -
    - - {{ $outcomes->links() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/outcomes/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/outcomes/menu.blade.php deleted file mode 100755 index 63156f74..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/outcomes/menu.blade.php +++ /dev/null @@ -1,8 +0,0 @@ -
    -
    - {{ __('outcomes.add_new_outcome') }} - {{ __('outcomes.edit_all_outcomes') }} - {{ __('outcomes.view_outcomes') }} - {{ __('outcomes.view_inactive_outcomes') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/package_units/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/package_units/create.blade.php deleted file mode 100755 index c51cada2..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/package_units/create.blade.php +++ /dev/null @@ -1,47 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('package_unit.add_package_unit') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::package_units.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'package_unit.store', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('package_unit.package_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('package_unit.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('package_unit.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/package_units/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/package_units/edit.blade.php deleted file mode 100755 index 52bce293..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/package_units/edit.blade.php +++ /dev/null @@ -1,47 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('package_unit.package_units') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::package_units.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($package_unit, ['method' => 'PUT', 'route' => ['package_unit.update',$package_unit], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('package_unit.package_name')) }} - {{ Form::text('name', $package_unit->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('package_unit.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('package_unit.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/package_units/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/package_units/inactive.blade.php deleted file mode 100755 index 89fcf53f..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/package_units/inactive.blade.php +++ /dev/null @@ -1,87 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('package_unit.activate_package_unit') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::package_units.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    -

    {{ __('package_unit.export_data') }}

    -
    - - - - - - - - - - - - - - - @foreach($package_units as $package_unit) - - - - - @endforeach - -
    {{ __('package_unit.package_unit') }}
    {{ __('package_unit.package_unit') }}
    {{ $package_unit->name }} - {{ Form::model($package_unit->id ,['method' => 'POST', 'route' => ['package_unit.activate', $package_unit->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/package_units/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/package_units/index.blade.php deleted file mode 100755 index 54ffff88..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/package_units/index.blade.php +++ /dev/null @@ -1,92 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('package_unit.package_units') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::package_units.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    -

    {{ __('package_unit.export_data') }}

    -
    - - - - - - - - - - - - - - - - - @foreach($package_units as $package_unit) - - - - - - @endforeach - -
    {{ __('package_unit.package_unit') }}
    {{ __('package_unit.package_unit') }}
    {{ $package_unit->name }} - {{ __('package_unit.edit') }} - - {{ Form::model($package_unit->id ,['method' => 'DELETE', 'route' => ['package_unit.destroy', $package_unit->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/package_units/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/package_units/menu.blade.php deleted file mode 100755 index 5c2149a3..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/package_units/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - {{ __('package_unit.add_package_unit') }} - {{ __('package_unit.view_package_units') }} - {{ __('package_unit.activate_package_units') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/parishes/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/parishes/create.blade.php deleted file mode 100755 index 7f16e088..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/parishes/create.blade.php +++ /dev/null @@ -1,65 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('parishes.add_parish') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    - {{ Form::open(['route' => 'parishes.store', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('sub_county_id', __('parishes.sub_county')) }} - {{ Form::select('sub_county_id', $subcounties, '', ['class' => 'form-control compulsory' , 'required', 'id' => 'sub_county']) }} -
    -
    - -
    - {{ Form::label('name', __('parishes.parish_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('parishes.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('parishes.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/parishes/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/parishes/edit.blade.php deleted file mode 100755 index 0dcbbd2c..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/parishes/edit.blade.php +++ /dev/null @@ -1,66 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('parishes.edit_parish') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($parish, ['method' => 'PUT', 'route' => ['parishes.update',$parish], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('sub_county_id', __('parishes.sub_county')) }} - {{ Form::select('sub_county_id', $sub_counties, $parish->subcounty_id, ['class' => 'form-control compulsory' , 'required', 'id' => 'sub_county']) }} -
    -
    - -
    - {{ Form::label('name', __('parishes.parish_name')) }} - {{ Form::text('name', $parish->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('parishes.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('parishes.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/parishes/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/parishes/inactive.blade.php deleted file mode 100755 index 0331e12f..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/parishes/inactive.blade.php +++ /dev/null @@ -1,74 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('parishes.activate_parish') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    - - - - - - - - - - @foreach($parishes as $parish) - - - - - - @endforeach - -
    {{ __('parishes.parish_name') }}{{ __('parishes.sub_county') }}
    {{ $parish->name }}{{ $sub_counties[$parish->subcounty_id] }} - {{ Form::model($parish->id ,['method' => 'POST', 'route' => ['parishes.activate', $parish->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/parishes/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/parishes/index.blade.php deleted file mode 100755 index 7561d386..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/parishes/index.blade.php +++ /dev/null @@ -1,80 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('parishes.parishes') }}

    -
    -
    - -
    -
    - -
    -
    -
    - - @include('flash::message') - -
    - - - - - - - - - - - @foreach($parishes as $parish) - - - - - - - @endforeach - -
    {{ __('parishes.parish_name') }}{{ __('parishes.sub_county') }}
    {{ $parish->name }}{{ isset($sub_counties[$parish->subcounty_id]) ? $sub_counties[$parish->subcounty_id] : "" }} - {{ __('parishes.edit') }} - - {{ Form::model($parish->id ,['method' => 'DELETE', 'route' => ['parishes.destroy', $parish->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/patient_categories/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/patient_categories/create.blade.php deleted file mode 100755 index 1e1a5474..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/patient_categories/create.blade.php +++ /dev/null @@ -1,77 +0,0 @@ -@extends('layouts.main') -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('patient_categories.add_patient_category') }}

    -
    -
    - -
    -
    - -
    -@include('clinical_data::patient_categories.menu') -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'patient_categories.store', 'data-toggle' => 'validator']) }} -
    - {{ Form::label('name', __('patient_categories.category_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{--
    - -
    - {{ Form::radio('set_credit_limit', 1, false, ["required", 'id' => 'set_credit_limit_yes','onclick' => 'setOptions()']) }} Yes    - {{ Form::radio('set_credit_limit', 0, false, ["required", 'id' => 'set_credit_limit_no', 'onclick' => 'setOptions()']) }} No -
    -
    - - --}} -
    - {{ Form::label('available', __('patient_categories.is_patient_category_available'), ["class"=>'col-md-12']) }} -  {{ __('patient_categories.yes') }} {{ Form::radio('available', 1, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -  {{ __('patient_categories.no') }} {{ Form::radio('available', 0, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    - - {{ Form::button(__('patient_categories.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('patient_categories.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/patient_categories/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/patient_categories/edit.blade.php deleted file mode 100755 index 78fb2407..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/patient_categories/edit.blade.php +++ /dev/null @@ -1,54 +0,0 @@ -@extends('layouts.main') -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('patient_categories.edit_patient_category') }}

    -
    -
    - -
    -
    - -
    -@include('clinical_data::patient_categories.menu') -
    - - @include('flash::message') -
    - {{ Form::model($patient_categories, ['method' => 'PUT', 'route' => ['patient_categories.update',$patient_categories], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('patient_categories.category_name')) }} - {{ Form::text('name', $patient_categories->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - {{ Form::label('available', __('patient_categories.is_patient_category_available'), ["class"=>'col-md-12']) }} -  {{ __('patient_categories.yes') }} {{ Form::radio('available', 1, $patient_categories->available == 1, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -  {{ __('patient_categories.no') }} {{ Form::radio('available', 0, $patient_categories->available == 0, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    - - {{ Form::button(__('patient_categories.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('patient_categories.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/patient_categories/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/patient_categories/inactive.blade.php deleted file mode 100755 index 5db5cc3a..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/patient_categories/inactive.blade.php +++ /dev/null @@ -1,84 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('patient_categories.activate_patient_category') }}

    -
    -
    - -
    -
    - -
    -@include('clinical_data::patient_categories.menu') -
    - @include('flash::message') -
    -

    {{ __('patient_categories.export_to_csv_pdf_print') }}

    -
    - - - - - - - - - - - - - - - @foreach($patient_categories as $patient_category) - - - - - @endforeach - -
    {{ __('patient_categories.category_name') }}
    {{ __('patient_categories.category_name') }}
    {{ $patient_category->name }} - {{ Form::model($patient_category->id ,['method' => 'POST', 'route' => ['patient_categories.activate', $patient_category->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/patient_categories/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/patient_categories/index.blade.php deleted file mode 100755 index faa297bf..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/patient_categories/index.blade.php +++ /dev/null @@ -1,94 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('patient_categories.patient_categories') }}

    -
    -
    - -
    -
    - -
    -@include('clinical_data::patient_categories.menu') -
    - @include('flash::message') -
    -

    {{ __('patient_categories.export_to_csv_pdf_print') }}

    -
    - - - - - - - - - - - - - - - - - @foreach($patient_categories as $patient_category) - - - - - - @endforeach - -
    {{ __('patient_categories.category_name') }}
    {{ __('patient_categories.category_name') }}
    {{ $patient_category->name }} - {{ __('patient_categories.edit') }} - - @if (!in_array($patient_category->id, $used_categories_data)) - {{ Form::model($patient_category->id ,['method' => 'DELETE', 'route' => ['patient_categories.destroy', $patient_category->id]]) }} - - {{ Form::close() }} - @else - Patient Category in use - @endif -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/patient_categories/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/patient_categories/menu.blade.php deleted file mode 100644 index 01407049..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/patient_categories/menu.blade.php +++ /dev/null @@ -1,26 +0,0 @@ - -
    -
    - @if(Route::currentRouteName() !== 'patient_categories.create') - - - New Category - - @endif - - @if(Route::currentRouteName() !== 'patient_categories.index') - - - View Categories - - @endif - - @if(Route::currentRouteName() !== 'patient_categories.inactive') - - - Inactive Categories - - @endif - -
    -
    diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/patient_registration_fields/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/patient_registration_fields/create.blade.php deleted file mode 100644 index 2822651a..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/patient_registration_fields/create.blade.php +++ /dev/null @@ -1,104 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('patients.create_patient_registration_fields') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::patient_registration_fields.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'patient_registration_fields.store', 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('patients.patient_registration_field_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    - {{ Form::label('compulsory',__('patients.patient_registration_field_compulsory')) }}
    - {{ Form::radio('compulsory', 1, false, ['required']) }} {{ __('observations.yes') }}     - {{ Form::radio('compulsory', 0, false, ['required']) }} {{ __('observations.no') }} -
    -
    -
    -
    -
    - {{ Form::label('options_or_range',__('patients.patient_registration_field_options')) }} -
    - {{ Form::radio('options_or_range', 1, false, ["required",'id'=>'free_text', 'onclick'=>'setRangeOrOptions()']) }} {{ __('patients.text') }}    - {{ Form::radio('options_or_range', 2, false, ["required",'id'=>'set_option','onclick'=>'setRangeOrOptions()']) }} {{ __('observations.set_dropdown_options') }} -
    -
    - - -
    -
    -
    -

    -
    - {{ Form::button(__('observations.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('observations.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/patient_registration_fields/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/patient_registration_fields/edit.blade.php deleted file mode 100644 index c2da4c5b..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/patient_registration_fields/edit.blade.php +++ /dev/null @@ -1,115 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('patients.edit_patient_registration_fields') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::patient_registration_fields.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($patient_registration_field, ['method' => 'PUT', 'route' => ['patient_registration_fields.update',$patient_registration_field], 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('observations.observation_name')) }} - {{ Form::text('name', $patient_registration_field->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - {{ Form::label('compulsory',__('patients.patient_registration_field_compulsory')) }}
    - {{ Form::radio('compulsory', 1, ($patient_registration_field->compulsory == 1)? true: false, ["required"]) }} {{ __('observations.yes') }}     - {{ Form::radio('compulsory', 0, ($patient_registration_field->compulsory == 0)? true: false, ["required"]) }} {{ __('observations.no') }} -
    -
    -
    - {{ Form::label('options_or_range',__('patients.patient_registration_field_options')) }}
    - {{ Form::radio('options_or_range', 1, empty($patient_registration_field->options) ? true: false, ["required",'id'=>'free_text', 'onclick'=>'setRangeOrOptions()']) }} {{ __('patients.text') }}    - {{ Form::radio('options_or_range', 2, !empty($patient_registration_field->options) ? true: false, ["required",'id'=>'set_option','onclick'=>'setRangeOrOptions()']) }} {{ __('observations.set_dropdown_options') }} -
    -
    - - -
    -
    -
    -

    -
    - {{ Form::button(__('observations.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('observations.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/patient_registration_fields/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/patient_registration_fields/inactive.blade.php deleted file mode 100644 index 5a975680..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/patient_registration_fields/inactive.blade.php +++ /dev/null @@ -1,89 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('patients.patient_registration_fields') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::patient_registration_fields.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    -

    {{ __('observations.export_data') }}

    -
    - - - - - - - - - - - - @foreach($patient_registration_fields as $patient_registration_field) - - - - - - - - @endforeach - -
    {{ __('observations.category') }}{{ __('patients.compulsory') }}{{ __('observations.options') }}Created byActions
    {{ $patient_registration_field->name }}{{ ($patient_registration_field->compulsory == '1')? 'Yes':'No' }}{{ $patient_registration_field->options }}{{ get_name( $patient_registration_field->created_by, 'id', 'first_name', 'users') . " " . get_name( $patient_registration_field->created_by, 'id', 'last_name', 'users'); }} - {{ Form::model($patient_registration_field->id ,['method' => 'POST', 'route' => ['patient_registration_fields.activate', $patient_registration_field->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/patient_registration_fields/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/patient_registration_fields/index.blade.php deleted file mode 100644 index c7eaf25c..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/patient_registration_fields/index.blade.php +++ /dev/null @@ -1,94 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('patients.patient_registration_fields') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::patient_registration_fields.menu') -
    -
    - - @include('flash::message') - -
    -
    -
    -

    {{ __('observations.export_data') }}

    -
    - - - - - - - - - - - - - @php $counter = 0; @endphp - @foreach($patient_registration_fields as $patient_registration_field) - - - - - - - - - @endforeach - -
    #{{ __('patients.name') }}{{ __('patients.compulsory') }}{{ __('observations.options') }}Created byActions
    {{ ++$counter }}{{ $patient_registration_field->name }}{{ ($patient_registration_field->compulsory == '1')? 'Yes':'No' }}{{ $patient_registration_field->options }}{{ get_name( $patient_registration_field->created_by, 'id', 'first_name', 'users') . " " . get_name( $patient_registration_field->created_by, 'id', 'last_name', 'users'); }} - {{ __('observations.edit') }}   - @php $in_use = Streamline\Patient::where('registration_fields', 'LIKE', '%reg_field_'.$patient_registration_field->id.'%')->first(); @endphp - @if (empty($in_use)) - {{ Form::model($patient_registration_field->id ,['method' => 'DELETE', 'route' => ['patient_registration_fields.destroy', $patient_registration_field->id]]) }} - - {{ Form::close() }} - @endif -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/patient_registration_fields/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/patient_registration_fields/menu.blade.php deleted file mode 100644 index 236924ff..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/patient_registration_fields/menu.blade.php +++ /dev/null @@ -1,13 +0,0 @@ -
    -
    - @if( Auth::user()->can('list-patient-registration-fields')) - {{ __('patients.view_patient_registration_fields') }} - @endif - @if( Auth::user()->can('create-patient-registration-field') ) - {{ __('patients.create_patient_registration_fields') }} - @endif - @if( Auth::user()->can('delete-patient-registration-field')) - {{ __('patients.inactive_patient_registration_fields') }} - @endif -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/procedure_categories/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/procedure_categories/create.blade.php deleted file mode 100755 index 1cb44959..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/procedure_categories/create.blade.php +++ /dev/null @@ -1,47 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('procedure_categories.add_procedure_category') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::procedure_categories.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'procedure_categories.store', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('procedure_categories.procedure_category_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('procedure_categories.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('procedure_categories.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/procedure_categories/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/procedure_categories/edit.blade.php deleted file mode 100755 index ccace686..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/procedure_categories/edit.blade.php +++ /dev/null @@ -1,47 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('procedure_categories.edit_procedure_category') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::procedure_categories.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($categories, ['method' => 'PUT', 'route' => ['procedure_categories.update',$categories], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('procedure_categories.procedure_category_name')) }} - {{ Form::text('name', $categories->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('procedure_categories.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('procedure_categories.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/procedure_categories/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/procedure_categories/inactive.blade.php deleted file mode 100755 index daa115c6..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/procedure_categories/inactive.blade.php +++ /dev/null @@ -1,89 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('procedure_categories.activate_procedure_categories') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::procedure_categories.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    -
    - - - - - - - - - - - - - - - @foreach($categories as $category): - - - - - @endforeach - -
    {{ __('procedure_categories.procedure_category_name') }}
    {{ __('procedure_categories.procedure_category_name') }}
    {{ $category->name }} - {{ Form::model($category->id ,['method' => 'POST', 'route' => ['procedure_categories.activate', $category->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/procedure_categories/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/procedure_categories/index.blade.php deleted file mode 100755 index ff8ba6ce..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/procedure_categories/index.blade.php +++ /dev/null @@ -1,91 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('procedure_categories.procedure_categories') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::procedure_categories.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    -
    - - - - - - - - - - - - - - - @foreach($categories as $category) - - - - - - @endforeach - -
    {{ __('procedure_categories.procedure_category_name') }}
    {{ __('procedure_categories.procedure_category_name') }}
    {{ $category->name }} - {{ __('procedure_categories.edit') }} - - {{ Form::model($category->id ,['method' => 'DELETE', 'route' => ['procedure_categories.destroy', $category->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/procedure_categories/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/procedure_categories/menu.blade.php deleted file mode 100755 index f234bc9d..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/procedure_categories/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - {{ __('procedure_categories.add_procedure_category') }} - {{ __('procedure_categories.procedure_categories') }} - {{ __('procedure_categories.activate_procedure_categories') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/procedures/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/procedures/create.blade.php deleted file mode 100755 index eecdb92b..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/procedures/create.blade.php +++ /dev/null @@ -1,387 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('procedures.add_procedure') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::procedures.menu') -
    -
    -@php - $section_number = '3'; - $inpatient =array_filter($hmis_categories, function ($item) use ($section_number) { - return $item['section_number'] == $section_number; - }); - $type = '0'; - $outpatient =array_filter($hmis_categories, function ($item) use ($type) { - return $item['type'] == $type; - }); -@endphp - -
    -
    - - @include('flash::message') -
    - @if (session()->has('streamline_setup')) -

    Stre@mline {{ __('procedures.setup') }} ({{ __('procedures.step') }} 9 {{ __('procedures.of') }} 12)

    - {{ Form::open(['route' => 'procedures.store']) }} - -
    -
    -
    - {{ Form::label('name', __('procedures.procedure_name')) }} - {{ Form::text('name', '', ['class' => 'form-control']) }} -
    -
    - -
    - {{ Form::label('non_insured_price', __('procedures.non_insured_price')) }} - {{ Form::number('non_insured_price', '', ['class' => 'form-control']) }} -
    -
    - -
    - {{ Form::label('category', __('procedures.category')) }} - {{ Form::select('category', $procedure_categories, null, ['class' => 'form-control']) }} -
    -
    - -
    - {{ Form::label('available', __('procedures.is_diagnosis_available'), ["class"=>'col-md-12']) }} -  {{ __('procedures.yes') }} {{ Form::radio('available', 1, false, [ 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -  {{ __('procedures.no') }} {{ Form::radio('available', 0, false, [ 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    - -
    - {{ Form::label('hmis_number', 'HMIS No.') }} - {{ Form::number('hmis_number', '', ['class'=>'form-control']) }} -
    - -
    - {{ Form::label('account_id',__('procedures.chart_of_account_name')) }} - {{ Form::select('account_id',$chart_of_accounts,'',['class' => 'form-control']) }} -
    -
    -
    -
    -
    -

    {{ __('procedures.select_any_from_list') }}

    - Select All

    - @foreach ($procedures as $defaultProcedure) -
    - {{ Form::checkbox('selected_procedures[]', $defaultProcedure['Procedure_Name'], false, ['class' => 'item_checkbox']) }} {{ $defaultProcedure['Procedure_Name'] }}    -
    - @endforeach -
    -
    - {{ Form::button(__('procedures.next'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10 next']) }} - {{ Form::button(__('procedures.skip'),['type'=>'submit','name' => 'skip','value'=>'Skip','class'=>'btn btn-default waves-effect waves-light m-r-10']) }} - @else - - {{ Form::open(['route' => 'procedures.store', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('procedures.procedure_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory']) }} -
    -
    - -
    - {{ Form::label('code', 'Item Code') }} - {{ Form::text('code', '', ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('non_insured_price', __('procedures.non_insured_price')) }} - {{ Form::number('non_insured_price', '', ['class' => 'form-control compulsory', 'id' => 'non_insured_price']) }} -
    -
    - - @php - $price_list_categories = \Streamline\Models\PriceListCategories::select('patient_category_id', 'id')->get(); - @endphp - - @foreach($price_list_categories as $record) -
    - {{ Form::label('non_insured_price', get_name($record->patient_category_id, 'id', 'name', 'patient_categories').' Price') }} - {{ Form::hidden('price_list_category_id[]', $record->id) }} - {{ Form::number('price_list_price[]', '', ['class'=>'form-control price_list_price']) }} -
    - @endforeach - -
    - {{ Form::label('category', __('procedures.category')) }} - {{ Form::select('category', $procedure_categories, null, ['class' => 'form-control compulsory', 'id' =>'category']) }} -
    -
    - -
    - {{ Form::label('available', __('procedures.is_procedure_available'), ["class"=>'col-md-12']) }} -  {{ __('procedures.yes') }} {{ Form::radio('available', 1, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -  {{ __('procedures.no') }} {{ Form::radio('available', 0, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    - -
    - {{ Form::label('reference_text', __('symptoms.reference_area')) }} -
    -
    - {{ Form::text('reference_text[]', '', ['class'=>'form-control', 'placeholder' => 'reference name']) }} -
    -
    - {{ Form::url('reference_link[]', '', ['class'=>'form-control', 'placeholder' => 'eg http://www.google.com']) }} -
    -
    - -
    -
    - -
    - {{ Form::label('hmis_number', 'HMIS No.') }} - {{ Form::number('hmis_number', '', ['class'=>'form-control']) }} -
    - -
    - {{ Form::label('account_id',__('procedures.chart_of_account_name')) }} - {{ Form::select('account_id',$chart_of_accounts,'',['class' => 'form-control compulsory', 'id' =>'account_id', 'required']) }} -
    -
    - -
    -
    -
    - {{ Form::label('hmis_no_outpatient', 'HMIS-out-patient No.') }} - {{ Form::text('hmis_no_outpatient[]', '', ['class'=>'form-control']) }} -
    -
    - {{ Form::label('hmis_category', 'HMIS category (Out Patient)') }} - -
    -
    - -
    - {{ __('procedures.add_more') }}

    -
    -

    HMIS Inpatient Report (108)

    -
    - -
    -
    -
    - {{--
    - {{ Form::label('hmis_no_inpatient', 'HMIS-in-patient No.') }} - {{ Form::text('hmis_no_inpatient', '', ['class'=>'form-control']) }} -
    --}} -
    - {{ Form::label('hmis_category_inpatient', __('diagnoses.hmis_inpatient_category')) }} - -
    -
    - {{ Form::label('hmis_category_inpatient_options', __('diagnoses.hmis_inpatient_category')) }} - -
    -
    - {{ Form::label('hysterectomy_type', 'Hysterectomy type') }} - -
    -
    - {{ Form::button(__('procedures.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10 submit-btn']) }} - {{ Form::button(__('procedures.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - @endif - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/procedures/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/procedures/edit.blade.php deleted file mode 100755 index f1834637..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/procedures/edit.blade.php +++ /dev/null @@ -1,408 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush -@php - $section_number = '3'; - $inpatient =array_filter($hmis_categories, function ($item) use ($section_number) { - return $item['section_number'] == $section_number; - }); - $type = '0'; - $outpatient =array_filter($hmis_categories, function ($item) use ($type) { - return $item['type'] == $type; - }); -@endphp -@section('content') -
    -
    -

    {{ __('procedures.edit_procedure') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::procedures.menu') -
    -
    - - -
    -
    - - @include('flash::message') -
    - {{ Form::model($procedure, ['method' => 'PUT', 'route' => ['procedures.update',$procedure], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('procedures.procedure_name')) }} - {{ Form::text('name', $procedure->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('code', 'Item Code') }} - {{ Form::text('code', $procedure->code, ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('non_insured_price', __('procedures.non_insured_price')) }} - {{ Form::text('non_insured_price', $procedure->non_insured_price, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - @if($procedure->price_list_category && $procedure->price_list_category != '') - @php - $price_list_categories = explode(",", $procedure->price_list_category); - $price_list_prices = explode(",", $procedure->price_list_price); - @endphp - - @for($i = 0; $i < count($price_list_categories); $i++) -
    - {{ Form::label('non_insured_price', get_name($price_list_categories[$i], 'id', 'name', 'patient_categories').' Price') }} - {{ Form::hidden('price_list_category_id[]', $price_list_categories[$i]) }} - {{ Form::number('price_list_price[]', $price_list_prices[$i], ['class'=>'form-control price_list_price']) }} -
    - @endfor - @endif - -
    - {{ Form::label('category', __('procedures.category')) }} - {{ Form::select('category', $procedure_categories, $procedure->category_id, ['class' => 'form-control compulsory', 'required','id' =>'category']) }} -
    -
    - -
    - {{ Form::label('available', __('procedures.is_procedure_available')) }}  - {{ Form::radio('available', 1, $procedure->available == 1, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} {{ __('procedures.yes') }}    - {{ Form::radio('available', 0, $procedure->available == 0, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} {{ __('procedures.no') }} -
    -
    - - @php - $reference_name = !empty($procedure->reference_text)? explode(",", $procedure->reference_text):[]; - $reference_array = !empty($procedure->reference_link)? explode(",", $procedure->reference_link): []; - @endphp - @if (!empty($reference_array) && !empty($reference_name)) - {{ Form::label('reference_text', __('symptoms.reference_area')) }} - @for($i = 0; $i < count($reference_array); $i++) -
    -
    - {{ Form::text('reference_text[]', $reference_name[$i] ?? '', ['class'=>'form-control', 'placeholder' => 'Reference Name']) }} -
    -
    - {{ Form::url('reference_link[]', $reference_array[$i] ?? '', ['class'=>'form-control', 'placeholder' => 'eg http://www.google.com']) }} -
    -
    - @endfor - @if (count($reference_array) < 4) - - @endif - @else -
    - {{ Form::label('reference_text', __('symptoms.reference_area')) }} -
    -
    - {{ Form::text('reference_text[]', '', ['class'=>'form-control', 'placeholder' => 'Reference Name']) }} -
    -
    - {{ Form::url('reference_link[]', '', ['class'=>'form-control', 'placeholder' => 'eg http://www.google.com']) }} -
    -
    -
    - -
    - @endif - -
    - {{ Form::label('hmis_number', 'HMIS No.') }} - {{ Form::text('hmis_number', $procedure->hmis_number, ['class'=>'form-control']) }} -
    - -
    - {{ Form::label('account_id',__('procedures.chart_of_account_name')) }} - {{ Form::select('account_id',$chart_of_accounts, $procedure->account_id,['class' => 'form-control compulsory', 'required', 'id' =>'account_id']) }} -
    -
    - -
    - hmis_no_outpatient)); - $hmis_category_array = array_filter(explode(",", $procedure->hmis_category)); - ?> - @if(count($hmis_no_outpatient_array) > 0 && count($hmis_category_array) > 0) - @for ($x = 0; $x < count($hmis_no_outpatient_array); $x++) -
    -
    - {{ Form::label('hmis_no_outpatient', 'HMIS-out-patient No.') }} - {{ Form::text('hmis_no_outpatient[]', $hmis_no_outpatient_array[$x], ['class'=>'form-control']) }} -
    -
    - {{ Form::label('hmis_category', 'HMIS category (Out Patient)') }} - {{ Form::select('hmis_category[]', $hmis_categories, $hmis_category_array[$x], ['class' => 'form-control']) }} -
    -
    - @endfor - @else -
    -
    - {{ Form::label('hmis_no_outpatient', 'HMIS-out-patient No.') }} - {{ Form::text('hmis_no_outpatient[]', '', ['class'=>'form-control']) }} -
    -
    - {{ Form::label('hmis_category', 'HMIS category (Out Patient)') }} - -
    -
    - @endif -
    - {{ __('procedures.add_more') }}

    -
    -

    HMIS Inpatient Report (108)

    -
    - -
    -
    - @if (is_null($procedure->hmis_inpatient_type) || $procedure->hmis_inpatient_type == '0') -
    -
    - {{ Form::label('hmis_category_inpatient', 'HMIS category (In Patient)') }} - -
    -
    - {{ Form::label('hmis_category_inpatient_options', __('diagnoses.hmis_inpatient_category')) }} - -
    -
    - {{ Form::label('hysterectomy_type', 'Hysterectomy type') }} - -
    -
    - @else - @php - $inpatient_option =$procedure->hmis_category_inpatient; - $inpatient_other = array_filter($inpatient, function ($item) use ($inpatient_option) { - return $item['id'] !== $inpatient_option; - }); - $inpatient_selected = array_filter($inpatient, function ($item) use ($inpatient_option) { - return $item['id'] == $inpatient_option; - }); - $categories_option = $procedure->hmis_no_inpatient; - $selected_hmis_categories_option=array_filter($hmis_categories_options, function ($item) use ($categories_option) { - return $item['id'] == $categories_option; - }); - $other_hmis_categories_options= array_filter($hmis_categories_options, function ($item) use ($categories_option) { - return $item['id'] != $categories_option; - }); - @endphp -
    -
    - {{ Form::label('hmis_category_inpatient', 'HMIS category (In Patient)') }} - -
    -
    - {{ Form::label('hmis_category_inpatient_options', 'HMIS Category Options') }} - -
    -
    - {{ Form::label('hysterectomy_type', 'Hysterectomy type') }} - -
    -
    - @endif - - - {{ Form::button(__('procedures.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('procedures.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/procedures/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/procedures/inactive.blade.php deleted file mode 100755 index e02c815d..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/procedures/inactive.blade.php +++ /dev/null @@ -1,88 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('procedures.activate_procedures') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::procedures.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    -
    - - - - - - - - - - - - - @foreach($procedures as $procedure) - - - - - - - - - @endforeach - -
    {{ __('procedures.procedure_name') }}{{ __('procedures.non_insured_price') }}{{ __('procedures.chart_of_account_name') }}{{ __('procedures.category') }}HMIS No.
    {{ $procedure->name }}{{ ugandan_shillings($procedure->non_insured_price) }}{{ $chart_of_accounts[$procedure->account_id] ?? '' }}{{ $categories[$procedure->category_id] ?? '' }}{{ $procedure->hmis_number }} - {{ Form::model($procedure->id ,['method' => 'POST', 'route' => ['procedures.activate', $procedure->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/procedures/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/procedures/index.blade.php deleted file mode 100755 index 0ea2d1be..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/procedures/index.blade.php +++ /dev/null @@ -1,134 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('procedures.procedures') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::procedures.menu') -
    -
    - - @include('flash::message') - -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - @foreach($procedures as $procedure) - - - - - - - @php - $hmis_no_outpatient_array = explode(",", $procedure->hmis_no_outpatient); - $hmis_outpatient_category_array = explode(",", $procedure->hmis_category); - $reference_name = !empty($procedure->reference_text)? explode(",", $procedure->reference_text):[]; - $reference_array = !empty($procedure->reference_link)? explode(",", $procedure->reference_link): []; - - if($procedure->hmis_no_inpatient == 'SP05a') $hmis_no_inpatient = $procedure->hmis_no_inpatient; - elseif ($procedure->hmis_no_inpatient == 'SP05b') $hmis_no_inpatient = $procedure->hmis_no_inpatient; - elseif(!empty($procedure->hmis_no_inpatient)) $hmis_no_inpatient = get_name($procedure->hmis_no_inpatient, "id", "number", "hmis_category_options"); - else $hmis_no_inpatient = ''; - @endphp - - - - - - - - - - @endforeach - -
    {{ __('procedures.procedure_name') }}{{ __('procedures.non_insured_price') }}{{ __('procedures.chart_of_account_name') }}{{ __('procedures.category') }}HMIS No.HMIS No (Out-patient)HMIS category (Out Patient)HMIS No (In-patient)HMIS category (In Patient)References
    {{ $procedure->name }}{{ ugandan_shillings($procedure->non_insured_price) }}{{ $chart_of_accounts[$procedure->account_id] ?? '' }}{{ $categories[$procedure->category_id] ?? '' }}{{ $procedure->hmis_number }}{{ $procedure->hmis_no_outpatient }} - @if(count($hmis_no_outpatient_array) > 0 && !empty($hmis_no_outpatient_array[0])) -
      - @for($i=0; $i < count($hmis_outpatient_category_array); $i++) -
    • {{ isset($hmis_categories[$hmis_outpatient_category_array[$i]]) ? $hmis_categories[$hmis_outpatient_category_array[$i]] : "" }}
    • - @endfor -
    - @endif -
    {{ $hmis_no_inpatient }}{{ isset($hmis_categories[$procedure->hmis_category_inpatient]) ? $hmis_categories[$procedure->hmis_category_inpatient] : "" }} - @if (!empty($reference_array) && !empty($reference_name)) - @for ($i=0; $i{{ $reference_name[$i] ?? '' }} - @endfor - @endif - - {{ __('procedures.edit') }} - - @if (!in_array($procedure->id, $ordered_procedures_ids)) - {{ Form::model($procedure->id ,['method' => 'DELETE', 'route' => ['procedures.destroy', $procedure->id]]) }} - - {{ Form::close() }} - @endif -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/procedures/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/procedures/menu.blade.php deleted file mode 100755 index 15dd937f..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/procedures/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - {{ __('procedures.add_procedure') }} - {{ __('procedures.view_procedures') }} - {{ __('procedures.activate_procedures') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/procedures/order_procedures.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/procedures/order_procedures.blade.php deleted file mode 100755 index 5ba7975e..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/procedures/order_procedures.blade.php +++ /dev/null @@ -1,654 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('procedures.order_procedures') }} {{ $patient->last_name }} {{ __('procedures.episode_started_on') }}:{{ streamline_date(get_name($episode_id, 'id', 'created_at', 'patient_episodes')) }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    -
    - -
    - - @include('flash::message') - - @foreach ($errors->all() as $error) -
    {{ $error }}
    - @endforeach - - {{ Form::open(['route' => 'procedures.ordered']) }} - - @php $patient_insurance_status = patient_insurance_status($patient_id); @endphp - - {{ Form::hidden('patient_id', $patient_id, ['id' => 'patient_id'])}} - {{ Form::hidden('patient_insurance_status', $patient_insurance_status, ['id' => 'patient_insurance_status'])}} - -
    - - - - - - - - @php - $option_procedures = ""; - foreach ($procedures as $key => $value){ - $option_procedures .= ""; - } - - $option_employees = ""; - foreach ($employees as $employee){ - $option_employees .= ""; - } - - $counter = 0; - @endphp - - - @if($ordered_procedures) - - - - - {{ Form::hidden('order_id', $ordered_procedures->id) }} - @php - $procedure_ids = explode(",", $ordered_procedures->procedure_id); - $procedure_amount = explode(",", $ordered_procedures->procedure_amount); - $procedure_performed = explode(",", $ordered_procedures->performed); - $procedure_performed_id = explode(",", $ordered_procedures->performed_id); - $eye_array = explode(",", $ordered_procedures->eye); - @endphp - - @for($i = 0; $i < count($procedure_ids); $i++) - - - - @php $counter++; @endphp - @endfor - @else - - - - @endif - - @if( Auth::user()->can('add-row-on-prescription')) - - - - @endif -
    -
    -
    {{ __('procedures.procedures') }}
    - -
    {{ __('procedures.performed') }}
    -
    -
    -
    - {{ __('procedures.pending_procedures') }} - @if(Auth::user()->can('cancel-ordered-procedures') ) - Cancel all ordered procedures - @endif -
    -
    -
    -
    -
    - @if($procedure_performed[$i] == 1) - {{ $procedures[$procedure_ids[$i]] }} - {{ Form::hidden('procedure_id[]', $procedure_ids[$i]) }} - @else - {{ Form::select('procedure_id[]', $procedures, $procedure_ids[$i], ['class' => 'form-control compulsory required procedure_id_class', 'id' => 'procedure_id_' . $counter]) }} - @endif -
    - -
    - @if (is_chi_enabled() && is_patient_item_covered($patient_id, $procedure_ids[$i], 2)) -   
    Covered by CHI - @endif -
    -
    - -
    -
    - - {{ Form::select('eye[]', [2 => 'Both', 0 => 'Left', 1 => 'Right'], $eye_array[$i] ?? 2, ['class' => 'form-control compulsory', 'required', 'onchange' => 'eye_select(this.value, ' . $counter . ')']) }} -
    -
    - - @php - if(!is_null($procedure_amount[$i])){ - if ($patient_insurance_status == 1){ - $price = get_item_insurance_co_payment($patient_id, $procedure_ids[$i], 2, false, 0); - } else { - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_id){ - $price = get_price_list_category_price($price_list_id, 4, $procedure_ids[$i]); - } else { - $price = get_name($procedure_ids[$i], 'id', 'non_insured_price', 'procedures'); - } - } - } else { - $price = $procedure_amount[$i]; - } - @endphp - - - -
    - @if($procedure_performed[$i] == 1) - @php - $performed_record = \Streamline\Models\StaffPerformedService::where('id', $procedure_performed_id[$i])->first(); - @endphp - - @if($performed_record) - - Performed By:
    {{ get_full_name($performed_record->performed_by, "id", "first_name", "last_name", "users") }}
    - - @if(Auth::user()->can('edit-performed-by')) -

    - Edit - Remove - @endif - {{ Form::hidden('performed_procedures[]', 1) }} - {{ Form::hidden('procedure_performed_by[]', $performed_record->performed_by) }} - {{ Form::hidden('procedure_performed_by_amount[]', $performed_record->performance_fee) }} - {{ Form::hidden('procedure_performed_date[]', $performed_record->date_performed) }} - @else - {{ Form::hidden('performed_procedures[]', 0) }} - @endif - @else - - - - - @endif -
    - -
    -
    - @if($procedure_performed[$i] == 0) - @if($counter == 0) - - @else - - @endif - @endif -
    -
    -
    -
    -
    -
    -
    -
    - - -
    -
    -
    - -
    -
    - - -
    -
    - - - -
    - - - - -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - -
    -
    -
    -
    - -
    -
    -
    -
    -
    - - -
    -
    -
    -
    - -
    -
    - - {{ Form::close() }} -
    - - -@endsection -@push('scripts') - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/referral_hospitals/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/referral_hospitals/create.blade.php deleted file mode 100755 index c3327c14..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/referral_hospitals/create.blade.php +++ /dev/null @@ -1,50 +0,0 @@ -@extends('layouts.main') - -@section('title', '| Add Referral Hospital') - -@section('content') - -
    -
    -

    {{ __('referral_hospitals.add_referral_hospital') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::referral_hospitals.menu') -
    -
    - -
    -
    - @include('flash::message') -
    - - {{ Form::open(['route' => 'referral_hospitals.store','data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('referral_hospitals.hospital_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory' , 'required']) }} -
    -
    - - {{ Form::button(__('referral_hospitals.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('referral_hospitals.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/referral_hospitals/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/referral_hospitals/edit.blade.php deleted file mode 100755 index b41a8bf2..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/referral_hospitals/edit.blade.php +++ /dev/null @@ -1,47 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('referral_hospitals.edit_referral_hospital') }}

    -
    -
    - -
    - -
    - -
    -
    - @include('clinical_data::referral_hospitals.menu') -
    -
    - -
    -
    - @include('flash::message') -
    - {{ Form::model($referral_hospital, ['method' => 'PUT', 'route' => ['referral_hospitals.update',$referral_hospital] , 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('referral_hospitals.hospital_name')) }} - {{ Form::text('name', $referral_hospital->name, ['class' => 'form-control compulsory','required']) }} -
    -
    - - {{ Form::button(__('referral_hospitals.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('referral_hospitals.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/referral_hospitals/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/referral_hospitals/inactive.blade.php deleted file mode 100755 index 328bbf98..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/referral_hospitals/inactive.blade.php +++ /dev/null @@ -1,85 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('referral_hospitals.activate_referral_hospital') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::referral_hospitals.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    -
    - - - - - - - - - @foreach($referral_hospitals as $referral_hospital): - - - - - - @endforeach - -
    {{ __('referral_hospitals.hospital_name') }}
    {{ $referral_hospital->name }} - {{ Form::model($referral_hospital->id ,['method' => 'POST', 'route' => ['referral_hospitals.activate', $referral_hospital->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/referral_hospitals/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/referral_hospitals/index.blade.php deleted file mode 100755 index 4f87063e..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/referral_hospitals/index.blade.php +++ /dev/null @@ -1,95 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('referral_hospitals.referral_hospital') }}

    -
    -
    - -
    - -
    - -
    -
    - @include('clinical_data::referral_hospitals.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    -
    - - - - - - - - - - - - - - - - - @foreach($referral_hospitals as $referral_hospital) - - - - - - @endforeach - -
    {{ __('referral_hospitals.hospital_name') }}
    {{ __('referral_hospitals.hospital_name') }}
    {{ $referral_hospital->name }} - {{ __('referral_hospitals.edit') }} - - {{ Form::model($referral_hospital->id ,['method' => 'DELETE', 'route' => ['referral_hospitals.destroy', $referral_hospital->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/referral_hospitals/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/referral_hospitals/menu.blade.php deleted file mode 100755 index b19c3e2e..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/referral_hospitals/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - {{ __('referral_hospitals.add_referral_hospital') }} - {{ __('referral_hospitals.view_referral_hospital') }} - {{ __('referral_hospitals.activate_referral_hospital') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/resource_categories/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/resource_categories/create.blade.php deleted file mode 100755 index 392f1bbe..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/resource_categories/create.blade.php +++ /dev/null @@ -1,40 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    Add Resource category

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    - {{ Form::open(['route' => 'resource_categories.store', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', 'Resource Category') }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/resource_categories/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/resource_categories/edit.blade.php deleted file mode 100755 index 83614976..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/resource_categories/edit.blade.php +++ /dev/null @@ -1,41 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    Edit Resource category

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($resource_category, ['method' => 'PUT', 'route' => ['resource_categories.update',$resource_category], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', 'Resource Category') }} - {{ Form::text('name', $resource_category->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/resource_categories/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/resource_categories/inactive.blade.php deleted file mode 100755 index 8b621fb3..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/resource_categories/inactive.blade.php +++ /dev/null @@ -1,84 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    Activate Resource categories

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -

    Export data to Copy, CSV, Excel, PDF & Print

    -
    - - - - - - - - - - - - - - - @foreach($resource_categories as $resource_category) - - - - - @endforeach - -
    Resource Category
    Resource Category
    {{ $resource_category->name }} - {{ Form::model($resource_category->id ,['method' => 'POST', 'route' => ['resource_categories.activate', $resource_category->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/resource_categories/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/resource_categories/index.blade.php deleted file mode 100755 index 31d4426a..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/resource_categories/index.blade.php +++ /dev/null @@ -1,89 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    Resource Categories

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -

    Export data to Copy, CSV, Excel, PDF & Print

    -
    - - - - - - - - - - - - - - - - - @foreach($resource_categories as $resource_category) - - - - - - @endforeach - -
    Resource Category
    Resource Category
    {{ $resource_category->name }} - Edit - - {{ Form::model($resource_category->id ,['method' => 'DELETE', 'route' => ['resource_categories.destroy', $resource_category->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/resources/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/resources/create.blade.php deleted file mode 100755 index fabd0061..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/resources/create.blade.php +++ /dev/null @@ -1,72 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('resources.create_resource') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    - {{ Form::open(['route' => 'resources.store', 'data-toggle' => 'validator', 'files' => true]) }} - -
    - {{ Form::label('title', __('resources.title')) }} - {{ Form::text('title', '', ['class' => 'form-control compulsory']) }} -
    -
    - -
    - {{ Form::label('body', __('resources.body')) }} - {{ Form::textArea('body', '', ['class' => 'textarea_editor form-control compulsory', 'required', 'rows' => 5]) }} -
    -
    - -
    - {{ Form::label('attach_path', __('resources.attachment_path')) }} - {{ Form::file('attach_path', null ) }} -
    -
    - -
    - {{ Form::label('category_id', __('resources.categories')) }}    - {{ Form::select('category_id', $resource_categories, ['class'=>'form-control']) }} -   {{ __('resources.add_category') }} -
    -
    - - {{ Form::button(__('resources.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('resources.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} - -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush - diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/resources/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/resources/edit.blade.php deleted file mode 100755 index db6383dc..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/resources/edit.blade.php +++ /dev/null @@ -1,62 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('resources.edit_resource') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    - {{ Form::model($resource, ['method' => 'PUT', 'route' => ['resources.update',$resource], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('title', __('resources.title')) }} - {{ Form::text('title', $resource->title, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('body', __('resources.body')) }} - {{ Form::textArea('body', $resource->body, ['class' => 'textarea_editor form-control compulsory', 'required', 'rows' => 5]) }} -
    -
    -
    - {{ Form::label('attach_path', __('resources.attachment_path')) }} - {{ Form::file('attach_path', null) }} - {{ Form::text('current_file', $resource->attach_path, ['class' => 'form-control', 'hidden']) }} -
    - {{ Form::button(__('resources.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('resources.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush - diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/resources/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/resources/inactive.blade.php deleted file mode 100755 index 1eb54fd8..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/resources/inactive.blade.php +++ /dev/null @@ -1,91 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('resources.activate_resources') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    -
    - - - - - - - - - - - - - - - - - - - - - @foreach($resources as $resource) - - - - - - - - @endforeach - -
    {{ __('resources.title') }}{{ __('resources.body') }}{{ __('resources.attachment_path') }}{{ __('resources.categories') }}
    {{ __('resources.title') }}{{ __('resources.body') }}{{ __('resources.attachment_path') }}{{ __('resources.categories') }}
    {{ $resource->title }}{{ $resource->body }}{{ $resource->attach_path }}{{ $categories[$resource->category_id] }} - {{ Form::model($resource->id ,['method' => 'POST', 'route' => ['resources.activate', $resource->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/resources/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/resources/index.blade.php deleted file mode 100755 index 0b0d2ad8..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/resources/index.blade.php +++ /dev/null @@ -1,114 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('resources.resources') }}

    -
    -
    - -
    -
    - -
    - -
    -
    - {{ Form::open(['route' => ['resources.select'], 'method' => 'ANY', 'role' => 'select']) }} -
    - {{ Form::label('category_label', __('resources.categories')) }} - - - -
    - - {{ Form::button(__('resources.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_resource']) }} - {{ Form::close() }} - -   
    {{ __('resources.add_new_resource') }}
    -
    -
    - -
    - @include('flash::message') -
    -
    - - - - - - - - - - - - - @foreach($resources as $resource) - title)): - continue; - endif; - ?> - - - - - - - - - @endforeach - -
    {{ __('resources.title') }}{{ __('resources.body') }}{{ __('resources.categories') }}{{ __('resources.edit') }}{{ __('resources.delete') }}{{ __('resources.download') }}
    {{ $resource->title }}{{ $resource->body }}{{ $categories[$resource->category_id] ?? "" }} - {{ __('resources.edit') }} - - {{ Form::model($resource->id ,['method' => 'DELETE', 'route' => ['resources.destroy', $resource->id]]) }} - - {{ Form::close() }} - - - -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/service_items/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/service_items/create.blade.php deleted file mode 100755 index a0b8e60b..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/service_items/create.blade.php +++ /dev/null @@ -1,233 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('service_items.add_service') }}

    -
    -
    - -
    -
    - - @include('flash::message') - - @include('clinical_data::service_items.menu') - -
    -
    -
    - @if (session()->has('streamline_setup')) -

    {{ __('service_items.streamline_setup') }}

    - {{ Form::open(['route' => 'service_items.store','data-toggle'=>'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('service_items.service_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory']) }} -
    -
    - -
    - {{ Form::label('non_insured_price', __('service_items.non_insured_price')) }} - {{ Form::number('non_insured_price', '', ['class' => 'form-control compulsory']) }} -
    -
    - -
    - {{ Form::label('account_id', __('service_items.chart_account_name')) }} - {{ Form::select('account_id', $chart_of_accounts, null, ['class'=>'form-control compulsory']) }} -
    -
    - -
    - {{ Form::label('description', __('service_items.description')) }} - {{ Form::textArea('description', '', ['class'=>'form-control', 'rows' => 4]) }} -
    - -
    - {{ Form::label('type_of_service',__('service_items.type_of_service')) }} -
    -
    - {{ Form::radio('type_of_service', 'Consultation', false, []) }} {{ __('service_items.consultation') }}
    - {{ Form::radio('type_of_service', 'Co_Payment', false, []) }} {{ __('service_items.copayment') }}
    - {{ Form::radio('type_of_service', 'Service', false, []) }} {{ __('service_items.service') }}
    -
    -
    -
    -
    - -
    -

    {{ __('service_items.select_any_list') }}

    - @foreach ($services as $service) -
    - {{ Form::checkbox('selected_services[]', $service['Item_Name'], false) }} {{ $service['Item_Name'] }}    -
    - @endforeach -
    -
    - {{ Form::button(__('service_items.next'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('service_items.skip'),['type'=>'submit','name' => 'skip', 'value' => 'skip','class'=>'btn btn-default waves-effect waves-light m-r-10']) }} - @else - {{ Form::open(['route' => 'service_items.store','data-toggle'=>'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('service_items.service_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory']) }} -
    -
    - - {{-- -
    - {{ Form::label('attach_to_staff_name', __('service_items.attach_staff_name')) }} -
    -
    -  {{ Form::radio('attach_to_staff_name', 1, false, ["id"=> "attach_staff_name", "onclick" => "show('attach_staff_name_div')"]) }} {{ __('service_items.yes') }} -  {{ Form::radio('attach_to_staff_name', 0, false, ["id"=> "do_not_attach_staff","onclick" => "hide('attach_staff_name_div')"]) }} {{ __('service_items.no') }} -
    -
    -
    - --}} - - - -
    - {{ Form::label('non_insured_price', 'Cash Price') }} - {{ Form::number('non_insured_price', '', ['class' => 'form-control compulsory', 'id' => 'non_insured_price']) }} -
    -
    - -
    - {{ Form::label('available', __('service_items.is_service_available')) }}  - {{ Form::radio('available', 1, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} {{ __('service_items.yes') }}    - {{ Form::radio('available', 0, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} {{ __('service_items.no') }} -
    -
    - - @php - $price_list_categories = \Streamline\Models\PriceListCategories::select('patient_category_id', 'id')->get(); - @endphp - - @foreach($price_list_categories as $record) -
    - {{ Form::label('non_insured_price', get_name($record->patient_category_id, 'id', 'name', 'patient_categories').' Price') }} - {{ Form::hidden('price_list_category_id[]', $record->id) }} - {{ Form::number('price_list_price[]', '', ['class'=>'form-control price_list_price']) }} -
    - @endforeach - -
    - {{ Form::label('account_id', __('service_items.chart_account_name')) }} - {{ Form::select('account_id', $chart_of_accounts, null, ['class'=>'form-control compulsory']) }} -
    -
    -
    - -
    -
    - {{ Form::label('description', __('service_items.description')) }} - {{ Form::textArea('description', '', ['class'=>'form-control', 'rows' => 4]) }} -
    - -
    - {{ Form::label('type_of_service',__('service_items.type_of_service')) }} -
    -
    - {{ Form::radio('type_of_service', 'Consultation', false, []) }} {{ __('service_items.consultation') }}
    - {{ Form::radio('type_of_service', 'Co_Payment', false, []) }} {{ __('service_items.copayment') }}
    - {{ Form::radio('type_of_service', 'Service', false, []) }} {{ __('service_items.service') }}
    -
    -
    -
    -
    -
    - {{ Form::button(__('service_items.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('service_items.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - @endif - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/service_items/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/service_items/edit.blade.php deleted file mode 100755 index 03223472..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/service_items/edit.blade.php +++ /dev/null @@ -1,121 +0,0 @@ -@extends('layouts.main') -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('service_items.edit_service') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::service_items.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($service, ['method' => 'PUT', 'route' => ['service_items.update',$service], 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('service_items.service_name')) }} - {{ Form::text('name', $service->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('non_insured_price', __('service_items.non_insured_price')) }} - {{ Form::number('non_insured_price', $service->non_insured_price, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - @if($service->price_list_category && $service->price_list_category != '') - @php - $price_list_categories = explode(",", $service->price_list_category); - $price_list_prices = explode(",", $service->price_list_price); - @endphp - - @for($i = 0; $i < count($price_list_categories); $i++) -
    - {{ Form::label('non_insured_price', get_name($price_list_categories[$i], 'id', 'name', 'patient_categories').' Price') }} - {{ Form::hidden('price_list_category_id[]', $price_list_categories[$i]) }} - {{ Form::number('price_list_price[]', $price_list_prices[$i], ['class'=>'form-control price_list_price']) }} -
    - @endfor - @endif - -
    - {{ Form::label('account_id', __('service_items.chart_account_name')) }} - {{ Form::select('account_id', $chart_of_accounts, $service->account_id, ['class'=>'form-control compulsory', 'required']) }} -
    -
    -
    - -
    -
    - {{ Form::label('available', __('service_items.is_service_available')) }}  - {{ Form::radio('available', 1, $service->available == 1, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} {{ __('service_items.yes') }}    - {{ Form::radio('available', 0, $service->available == 0, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} {{ __('service_items.no') }} -
    -
    - -
    - {{ Form::label('description', __('service_items.description')) }} - {{ Form::textArea('description', $service->description, ['class'=>'form-control', 'rows' => 4]) }} -
    - -
    - {{ Form::label('type_of_service',__('service_items.type_of_service')) }} -
    -
    - {{ Form::radio('type_of_service', 'Consultation', ($service->item_type == 'Consultation'), ["required"]) }} {{ __('service_items.consultation') }}
    - {{ Form::radio('type_of_service', 'Co_Payment', ($service->item_type == 'Co_Payment'), ["required"]) }} {{ __('service_items.copayment') }}
    - {{ Form::radio('type_of_service', 'Service', ($service->item_type == 'Service'), ["required"]) }} {{ __('service_items.service') }}
    -
    -
    -
    -
    -
    - - {{ Form::button(__('service_items.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('service_items.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/service_items/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/service_items/inactive.blade.php deleted file mode 100755 index 02dc880c..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/service_items/inactive.blade.php +++ /dev/null @@ -1,78 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('service_items.activate_services') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::service_items.menu') -
    -
    - -
    -
    -
    -
    - - - - - - - - - @foreach($services as $service) - - - - - @endforeach - -
    {{ __('service_items.service_name') }}
    {{ $service->name }} - {{ Form::model($service->id ,['method' => 'POST', 'route' => ['service_items.activate', $service->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/service_items/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/service_items/index.blade.php deleted file mode 100755 index a0334920..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/service_items/index.blade.php +++ /dev/null @@ -1,89 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('service_items.services') }}

    -
    -
    - -
    -
    - - @include('flash::message') - - @include('clinical_data::service_items.menu') - -
    -
    -
    -
    - - - - - - - - - - - - - @foreach($service_items as $item) - - - - - - - - - @endforeach - -
    {{ __('service_items.service_name') }}{{ __('service_items.chart_of_account') }}{{ __('service_items.type_of_service') }}{{ __('service_items.price') }}
    {{ $item->name }}{{ (isset($chart_of_accounts[$item->account_id])) ? $chart_of_accounts[$item->account_id] : '' }}{{ $item->item_type }}{{ ugandan_shillings($item->non_insured_price) }} - {{ __('service_items.edit') }} - - @if (!in_array($item->id, $ordered_service_ids)) - {{ Form::model($item->id ,['method' => 'DELETE', 'route' => ['service_items.destroy', $item->id]]) }} - - {{ Form::close() }} - @endif -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/service_items/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/service_items/menu.blade.php deleted file mode 100755 index 6003e849..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/service_items/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - {{ __('service_items.add_service') }} - {{ __('service_items.view_services') }} - {{ __('service_items.activate_services') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/service_items/ordered_services.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/service_items/ordered_services.blade.php deleted file mode 100755 index 63bb4c20..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/service_items/ordered_services.blade.php +++ /dev/null @@ -1,648 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('service_items.order_service') }} {{ $patient->last_name }} {{ __('service_items.for_episode') }}:{{ streamline_date(get_name($episode_id, 'id', 'created_at', 'patient_episodes')) }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    - -
    - - @include('flash::message') - - @foreach ($errors->all() as $error) -
    {{ $error }}
    - @endforeach - - {{ Form::open(['route' => 'services.store_ordered']) }} - - @php $patient_insurance_status = patient_insurance_status($patient_id); @endphp - - {{ Form::hidden('patient_id', $patient_id, ['id' => 'patient_id'])}} - {{ Form::hidden('patient_insurance_status', $patient_insurance_status, ['id' => 'patient_insurance_status'])}} - -
    - - - - - - - - @php - $option_services = ""; - foreach ($services as $key => $value){ - $option_services .= ""; - } - - $option_employees = ""; - foreach ($employees as $employee){ - $option_employees .= ""; - } - - $counter = 0; - @endphp - - - @if($ordered_services) - - - - - {{ Form::hidden('order_id', $ordered_services->id) }} - @php - $service_ids = explode(",", $ordered_services->service_id); - $service_quantity = explode(",", $ordered_services->quantity); - $service_performed = explode(",", $ordered_services->performed); - $service_performed_id = explode(",", $ordered_services->performed_id); - @endphp - - @for($i = 0; $i < count($service_ids); $i++) - - - - @php $counter++; @endphp - @endfor - @else - - - - @endif - -
    -
    -
    Service
    -
    Quantity
    - - -
    Performed
    -
    -
    -
    - {{ __('service_items.pending_services') }} - @if(Auth::user()->can('cancel-ordered-services') ) - Cancel all ordered services - @endif -
    -
    -
    -
    -
    - @if($service_performed[$i] == 1) - {{ $services[$service_ids[$i]] }} - {{ Form::hidden('service_id[]', $service_ids[$i]) }} - @else - {{ Form::select('service_id[]', $services, $service_ids[$i], ['class' => 'form-control compulsory required service_id_class', 'id' => 'service_id_' . $counter]) }} - @endif -
    - -
    - @if (is_chi_enabled() && is_patient_item_covered($patient_id, $service_ids[$i], 1)) -   
    Covered by CHI - @endif -
    -
    -
    - -
    -
    -
    - @if($service_performed[$i] == 1) - {{ $service_quantity[$i] }} - {{ Form::hidden('item_quantity[]', $service_quantity[$i]) }} - @else - - @endif -
    -
    -
    - - @php - if ($patient_insurance_status == 1){ - $services_cost = get_item_insurance_co_payment($patient_id, $service_ids[$i], 1, false, 0); - } else { - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_id){ - $services_cost = get_price_list_category_price($price_list_id, 6, $service_ids[$i]); - } else { - $services_cost = get_name($service_ids[$i], 'id', 'non_insured_price', 'services'); - } - } - @endphp - - - - - -
    - @if($service_performed[$i] == 1) - @php - $performed_record = \Streamline\Models\StaffPerformedService::where('id', $service_performed_id[$i])->first(); - @endphp - @if($performed_record) - Performed By:
    {{ get_full_name($performed_record->performed_by, "id", "first_name", 'last_name', "users") }}
    - - @if($performed_record && Auth::user()->can('edit-performed-by')) -

    - Edit - Remove - @endif - {{ Form::hidden('performed_services[]', 1) }} - {{ Form::hidden('service_performed_by[]', $performed_record->performed_by) }} - {{ Form::hidden('service_performed_by_amount[]', $performed_record->performance_fee) }} - {{ Form::hidden('service_performed_date[]', $performed_record->date_performed) }} - @else - {{ Form::hidden('performed_services[]', 0) }} - @endif - @else - - - - - @endif -
    - -
    -
    - @if($counter == 0) - - @else - - @endif -
    -
    -
    -
    -
    -
    -
    -
    - -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - - - - - -
    - - - - -
    - -
    -
    - -
    -
    -
    -
    -
    - - -
    -
    -
    -
    - -
    -
    - - {{ Form::close() }} -
    - - -@endsection -@push('scripts') - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/specialities/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/specialities/create.blade.php deleted file mode 100755 index 60873ece..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/specialities/create.blade.php +++ /dev/null @@ -1,48 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('specialities.add_new_speciality') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::specialities.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'specialities.store' , 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('specialities.speciality_name'))}} - {{ Form::text('name', '', ['class' => 'form-control compulsory','required']) }} -
    -
    - - {{ Form::button(__('specialities.save'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('specialities.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/specialities/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/specialities/edit.blade.php deleted file mode 100755 index e1beb528..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/specialities/edit.blade.php +++ /dev/null @@ -1,47 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('specialities.edit_speciality') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::specialities.menu') -
    -
    - -
    -
    - @include('flash::message') -
    - {{ Form::model($speciality, ['method' => 'PUT', 'route' => ['specialities.update',$speciality] , 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('specialities.speciality_name'))}} - {{ Form::text('name', $speciality->name, ['class' => 'form-control compulsory','required']) }} -
    -
    - - {{ Form::button(__('specialities.save'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button( __('specialities.cancel') ,['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/specialities/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/specialities/inactive.blade.php deleted file mode 100755 index d3c259e2..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/specialities/inactive.blade.php +++ /dev/null @@ -1,91 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('specialities.activate_specialities') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::specialities.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    -

    {{ __('specialities.export_to_pdf') }}

    -
    - - - - - - - - - - - - - - - @foreach($specialities as $speciality) - - - - - - @endforeach - -
    {{ __('specialities.speciality_name') }}
    {{ __('specialities.speciality_name') }}
    {{ $speciality->name }} - {{ Form::model($speciality->id ,['method' => 'POST', 'route' => ['specialities.activate', $speciality->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/specialities/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/specialities/index.blade.php deleted file mode 100755 index 2aaaf542..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/specialities/index.blade.php +++ /dev/null @@ -1,94 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('specialities.specialities') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::specialities.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    -

    {{ __('specialities.export_to_pdf') }}

    -
    - - - - - - - - - - - - - - - - - @foreach($specialities as $speciality) - - - - - - @endforeach - -
    {{ __('specialities.speciality_name') }}
    {{ __('specialities.speciality_name') }}
    {{ $speciality->name }} - {{ __('specialities.edit') }} - - {{ Form::model($speciality->id ,['method' => 'DELETE', 'route' => ['specialities.destroy', $speciality->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/specialities/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/specialities/menu.blade.php deleted file mode 100755 index b3b7efc6..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/specialities/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - {{ __('specialities.add_new_speciality') }} - {{ __('specialities.view_specialities') }} - {{ __('specialities.activate_specialities') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/staff_positions/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/staff_positions/create.blade.php deleted file mode 100755 index 7ec255ee..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/staff_positions/create.blade.php +++ /dev/null @@ -1,41 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('staff_positions.add_new_staff_position') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'staff_positions.store', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('staff_positions.staff_position_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('staff_positions.save'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('staff_positions.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/staff_positions/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/staff_positions/edit.blade.php deleted file mode 100755 index dc9b59c0..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/staff_positions/edit.blade.php +++ /dev/null @@ -1,41 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('staff_positions.edit_staff_position') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($position, ['method' => 'PUT', 'route' => ['staff_positions.update',$position], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('staff_positions.staff_position_name')) }} - {{ Form::text('name', $position->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('staff_positions.save'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('staff_positions.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/staff_positions/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/staff_positions/inactive.blade.php deleted file mode 100755 index 9527ba91..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/staff_positions/inactive.blade.php +++ /dev/null @@ -1,76 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('staff_positions.activate_staff_positions') }}

    -
    -
    - -
    -
    - -
    -
    -
    -

    {{ __('staff_positions.export_to_pdf') }}

    -
    - - - - - - - - - @foreach($positions as $position) - - - - - @endforeach - -
    {{ __('staff_positions.activate_staff_positions') }}
    {{ $position->name }} - {{ Form::model($position->id ,['method' => 'POST', 'route' => ['staff_positions.activate', $position->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/staff_positions/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/staff_positions/index.blade.php deleted file mode 100755 index 9ec335bb..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/staff_positions/index.blade.php +++ /dev/null @@ -1,79 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('staff_positions.staff_positions') }}

    -
    -
    - -
    -
    - - @include('flash::message') - -
    -
    -
    -

    {{ __('staff_positions.export_to_pdf') }}

    -
    - - - - - - - - - - @foreach($positions as $position) - - - - - - @endforeach - -
    {{ __('staff_positions.staff_position') }}
    {{ $position->name }} - {{ __('staff_positions.edit') }} - - {{ Form::model($position->id ,['method' => 'DELETE', 'route' => ['staff_positions.destroy', $position->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/sub_counties/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/sub_counties/create.blade.php deleted file mode 100755 index 0410f236..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/sub_counties/create.blade.php +++ /dev/null @@ -1,63 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('sub_counties.add_sub_county') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    - {{ Form::open(['route' => 'subcounties.store', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('county_id', __('sub_counties.county')) }} - {{ Form::select('county_id', $counties, '', ['class' => 'form-control compulsory' , 'required', 'id' => 'county']) }} -
    -
    - -
    - {{ Form::label('name', __('sub_counties.sub_county_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('sub_counties.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('sub_counties.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/sub_counties/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/sub_counties/edit.blade.php deleted file mode 100755 index 67e51961..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/sub_counties/edit.blade.php +++ /dev/null @@ -1,66 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('sub_counties.edit_sub_county') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($sub_county, ['method' => 'PUT', 'route' => ['subcounties.update',$sub_county], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('county_id', __('sub_counties.county')) }} - {{ Form::select('county_id', $counties, $sub_county->county_id, ['class' => 'form-control compulsory' , 'required', 'id' => 'county']) }} -
    -
    - -
    - {{ Form::label('name', __('sub_counties.sub_county_name')) }} - {{ Form::text('name', $sub_county->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('sub_counties.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('sub_counties.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/sub_counties/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/sub_counties/inactive.blade.php deleted file mode 100755 index 20200e62..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/sub_counties/inactive.blade.php +++ /dev/null @@ -1,74 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('sub_counties.activate_sub_counties') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    - - - - - - - - - - @foreach($sub_counties as $sub_county) - - - - - - @endforeach - -
    {{ __('sub_counties.sub_county_name') }}{{ __('sub_counties.county') }}
    {{ $sub_county->name }}{{ $counties[$sub_county->county_id] }} - {{ Form::model($sub_county->id ,['method' => 'POST', 'route' => ['subcounties.activate', $sub_county->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/sub_counties/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/sub_counties/index.blade.php deleted file mode 100755 index 5a4415ed..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/sub_counties/index.blade.php +++ /dev/null @@ -1,80 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('sub_counties.sub_counties') }}

    -
    -
    - -
    -
    - -
    -
    -
    - - @include('flash::message') - -
    - - - - - - - - - - - @foreach($sub_counties as $sub_county) - - - - - - - @endforeach - -
    {{ __('sub_counties.sub_county_name') }}{{ __('sub_counties.county') }}
    {{ $sub_county->name }}{{ isset($counties[$sub_county->county_id]) ? $counties[$sub_county->county_id] : "" }} - {{ __('sub_counties.edit') }} - - {{ Form::model($sub_county->id ,['method' => 'DELETE', 'route' => ['subcounties.destroy', $sub_county->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/sundries/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/sundries/create.blade.php deleted file mode 100755 index a3d8531d..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/sundries/create.blade.php +++ /dev/null @@ -1,224 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('sundries.add_sundry') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::sundries.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - @if (session()->has('streamline_setup')) -

    {{ __('sundries.streamline_setup') }}

    - {{ Form::open(['route' => 'sundries.store' ,]) }} - -
    -
    -
    - {{ Form::label('name', __('sundries.sundry_name')) }} - {{ Form::text('name', '', ['class' => 'form-control']) }} -
    -
    - -
    - {{ Form::label('price', __('sundries.buying_price')) }} - {{ Form::number('price', '', ['class' => 'form-control']) }} -
    -
    - -
    - {{ Form::label('non_insured_price', __('sundries.non_insured_price')) }} - {{ Form::number('non_insured_price', '', ['class' => 'form-control']) }} -
    -
    - -
    - {{ Form::label('available', __('sundries.is_sundry_available')) }}  - {{ Form::radio('available', 1, false, ['class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} {{ __('sundries.yes') }}    - {{ Form::radio('available', 0, false, ['class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} {{ __('sundries.no') }} -
    -
    - -
    - {{ Form::label('account_id', __('sundries.income_account')) }} - {{ Form::select('account_id', $income_accounts, null, ['class' => 'form-control']) }} -
    -
    - -
    - {{ Form::label('cog_account', __('sundries.cost_of_goods')) }} - {{ Form::select('cog_account', $cost_of_goods_accounts, null, ['class' => 'form-control']) }} -
    -
    - -
    - {{ Form::label('inventory_account', __('sundries.inventory_asset_account')) }} - {{ Form::select('inventory_account', $inventory_asset_accounts, null, ['class' => 'form-control']) }} -
    -
    -
    -
    -
    -

    {{ __('sundries.select_from_list') }}

    - Select All

    - @foreach ($sundries as $defaultSundry) -
    - {{ Form::checkbox('selected_sundries[]', $defaultSundry['Item_Name'], false, ['class' => 'item_checkbox']) }} {{ $defaultSundry['Item_Name'] }}    -
    - @endforeach -
    -
    - - {{ Form::button(__('sundries.next'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10 next']) }} - {{ Form::button(__('sundries.skip'),['type'=>'submit','name' => 'skip','value'=>'skip','class'=>'btn btn-default waves-effect waves-light m-r-10']) }} - @else - - {{ Form::open(['route' => 'sundries.store' , 'data-toggle' => 'validator']) }} -
    - {{ Form::label('name', __('sundries.sundry_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory']) }} -
    -
    - -
    - {{ Form::label('price', __('sundries.buying_price')) }} - {{ Form::number('price', '', ['class' => 'form-control compulsory']) }} -
    -
    - -
    - {{ Form::label('non_insured_price', __('sundries.non_insured_price')) }} - {{ Form::number('non_insured_price', '', ['class' => 'form-control compulsory', 'id' => 'non_insured_price']) }} -
    -
    - -
    - {{ Form::label('available', __('sundries.is_sundry_available')) }}  - {{ Form::radio('available', 1, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} {{ __('sundries.yes') }}    - {{ Form::radio('available', 0, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} {{ __('sundries.no') }} -
    -
    - - @php - $price_list_categories = \Streamline\Models\PriceListCategories::select('patient_category_id', 'id')->get(); - @endphp - - @foreach($price_list_categories as $record) -
    - {{ Form::label('non_insured_price', get_name($record->patient_category_id, 'id', 'name', 'patient_categories').' Price') }} - {{ Form::hidden('price_list_category_id[]', $record->id) }} - {{ Form::number('price_list_price[]', '', ['class'=>'form-control price_list_price']) }} -
    - @endforeach - -
    - {{ Form::label('account_id', __('sundries.income_account')) }} - {{ Form::select('account_id', $income_accounts, null, ['class' => 'form-control']) }} -
    -
    -
    - {{ Form::label('form_id', __('sundries.form')) }} - {{ Form::select('form_id', $forms, null, ['class' => 'form-control']) }} -
    -
    -
    - {{ Form::label('cog_account', __('sundries.cost_of_goods')) }} - {{ Form::select('cog_account', $cost_of_goods_accounts, null, ['class' => 'form-control']) }} -
    -
    - -
    - {{ Form::label('inventory_account', __('sundries.inventory_asset_account')) }} - {{ Form::select('inventory_account', $inventory_asset_accounts, null, ['class' => 'form-control']) }} -
    -
    - {{ Form::button(__('sundries.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10 submit-btn']) }} - {{ Form::button(__('sundries.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - @endif - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - -@endpush - - diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/sundries/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/sundries/edit.blade.php deleted file mode 100755 index f6553710..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/sundries/edit.blade.php +++ /dev/null @@ -1,111 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('sundries.edit_sundry') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::sundries.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($sundry, ['method' => 'PUT', 'route' => ['sundries.update',$sundry] , 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('sundries.sundry_name')) }} - {{ Form::text('name', $sundry->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('price', __('sundries.buying_price')) }} - {{ Form::number('price', $sundry->cost_price, ['class' => 'form-control compulsory', 'required', 'step' => '.01']) }} -
    -
    - -
    - {{ Form::label('non_insured_price', __('sundries.non_insured_price')) }} - {{ Form::number('non_insured_price', $sundry->non_insured_price, ['class' => 'form-control', 'step' => '.01']) }} -
    -
    - -
    - {{ Form::label('available', __('sundries.is_sundry_available')) }}  - {{ Form::radio('available', 1, $sundry->available == 1, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} {{ __('sundries.yes') }}    - {{ Form::radio('available', 0, $sundry->available == 0, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} {{ __('sundries.no') }} -
    -
    - - @if($sundry->price_list_category && $sundry->price_list_category != '') - @php - $price_list_categories = explode(",", $sundry->price_list_category); - $price_list_prices = explode(",", $sundry->price_list_price); - @endphp - - @for($i = 0; $i < count($price_list_categories); $i++) -
    - {{ Form::label('non_insured_price', get_name($price_list_categories[$i], 'id', 'name', 'patient_categories').' Price') }} - {{ Form::hidden('price_list_category_id[]', $price_list_categories[$i]) }} - {{ Form::number('price_list_price[]', $price_list_prices[$i], ['class'=>'form-control price_list_price']) }} -
    - @endfor - @endif - -
    - {{ Form::label('account_id', __('sundries.income_account')) }} - {{ Form::select('account_id', $income_accounts, null, ['class' => 'form-control']) }} -
    -
    -
    - {{ Form::label('form_id', __('sundries.form')) }} - {{ Form::select('form_id', $forms, $sundry->form_id, ['class' => 'form-control']) }} -
    -
    -
    - {{ Form::label('cog_account', __('sundries.cost_of_goods')) }} - {{ Form::select('cog_account', $cost_of_goods_accounts, $sundry->cost_of_goods_account, ['class' => 'form-control']) }} -
    -
    - -
    - {{ Form::label('inventory_account', __('sundries.inventory_asset_account')) }} - {{ Form::select('inventory_account', $inventory_asset_accounts, $sundry->inventory_account, ['class' => 'form-control']) }} -
    -
    - - {{ Form::button(__('sundries.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('sundries.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/sundries/expiring_sundries.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/sundries/expiring_sundries.blade.php deleted file mode 100644 index 8ce20493..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/sundries/expiring_sundries.blade.php +++ /dev/null @@ -1,112 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('drugs.expired_drugs') }}

    -
    -
    - -
    -
    - - @include('flash::message') - -
    -
    -
    -
    - {{ Form::open(['route' => 'sundries.expiring_sundries']) }} - -
    - {{ Form::label('time_period', __('drugs.expiring_with_in')) }} - {{ Form::select('time_period', ['1' => __('drugs.1_week'), '2' => __('drugs.2_weeks'), '4' => __('drugs.1_month'), '0' => __('drugs.expired_drugs')], null, ['class' => 'form-control']) }} -
    - - {{ Form::button(__('drugs.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - - {{ Form::close() }} -
    -
    -
    - -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - @foreach($sundries as $sundry) - - - - - - - @endforeach - - -
    {{ __('drugs.drug_name') }}{{ __('drugs.store_stock') }}{{ __('drugs.batch_details') }}Expiry Date
    {{ __('drugs.drug_name') }}{{ __('drugs.store_stock') }}{{ __('drugs.batch_details') }}Expiry Date
    {{ get_drug_name($sundry->id) }}{{ $sundry->store_stock}} - @php - $quotation_records = get_all_batches_for_this_drug_with_balances($sundry->id, $item_type = 2); - $details_of_batch_in_use = details_of_batch_currently_in_use_sundries($sundry->id); - @endphp - - @if(count($quotation_records) > 0) - @foreach($quotation_records as $record) -
    batch_number == $details_of_batch_in_use['batch_number']) && ($record->id == $details_of_batch_in_use['quotation_id'])) style="background-color: #e1e1ef; border-radius: 5px 5px; padding: 5px 0px;" @endif> -
    - {{ __('drugs.quantity') }} {{ $record->batch_balance }} -
    -
    - {{ __('drugs.batch') }} {{ $record->batch_number }} -
    -
    - {{ __('drugs.expiry_date') }} {{ streamline_date($record->expiry_date) }} -
    -

    - @endforeach - @endif -
    {{ streamline_date($sundry->expiry_date) }}
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/sundries/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/sundries/inactive.blade.php deleted file mode 100755 index 7fdda7e9..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/sundries/inactive.blade.php +++ /dev/null @@ -1,93 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('sundries.activate_sundries') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::sundries.menu') -
    -
    - -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - @foreach($sundries as $sundry) - - - - - - - @endforeach - -
    {{ __('sundries.sundry_name') }}{{ __('sundries.buying_price') }}{{ __('sundries.income_account') }}
    {{ __('sundries.sundry_name') }}{{ __('sundries.buying_price') }}{{ __('sundries.income_account') }}
    {{ $sundry->name }}{{ $sundry->buying_price }}{{ $chart_of_accounts[$sundry->account_id] ?? '' }} - {{ Form::model($sundry->id ,['method' => 'POST', 'route' => ['sundries.activate', $sundry->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/sundries/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/sundries/index.blade.php deleted file mode 100755 index 109dc975..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/sundries/index.blade.php +++ /dev/null @@ -1,112 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('sundries.sundries') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::sundries.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - @foreach($sundries as $sundry) - - - - - - - - - - - @endforeach - -
    {{ __('sundries.sundry_name') }}{{ __('sundries.buying_price') }}{{ __('sundries.non_insured_price') }}{{ __('sundries.income_account') }}Cost of Goods AccountInventory Account
    {{ __('sundries.sundry_name') }}{{ __('sundries.buying_price') }}{{ __('sundries.non_insured_price') }}{{ __('sundries.income_account') }}Cost of Goods AccountInventory Account
    {{ $sundry['name'] }}{{ ugandan_shillings($sundry['cost_price']) }}{{ ugandan_shillings($sundry['non_insured_price']) }}{{ isset($chart_of_accounts[$sundry['account_id']]) ? $chart_of_accounts[$sundry['account_id']] : 'N/A' }}{{ isset($chart_of_accounts[$sundry['cost_of_goods_account']]) ? $chart_of_accounts[$sundry['cost_of_goods_account']] : 'N/A' }}{{ isset($chart_of_accounts[$sundry['inventory_account']]) ? $chart_of_accounts[$sundry['inventory_account']] : 'N/A' }} - {{ __('sundries.edit') }} - - @if (Auth::user()->can('sundry-delete') && empty($sundry['pharmacy_stock']) && empty($sundry['store_stock']) && empty($sundry['opening_stock']) && !in_array($sundry['id'], $ordered_sundries_ids)) - {{ Form::model($sundry['id'] ,['method' => 'DELETE', 'route' => ['sundries.destroy', $sundry['id']]]) }} - - {{ Form::close() }} - @elseif (Auth::user()->can('sundry-delete') && (!empty($sundry['pharmacy_stock']) || !empty($sundry['store_stock']) || !empty($sundry['opening_stock']))) - Still Stocked - @elseif (in_array($sundry['id'], $ordered_sundries_ids)) - Sundry was Ordered - @endif -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/sundries/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/sundries/menu.blade.php deleted file mode 100755 index 97a41519..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/sundries/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - {{ __('sundries.add_sundry') }} - {{ __('sundries.sundries') }} - {{ __('sundries.activate_sundries') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/sundries/order_sundries.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/sundries/order_sundries.blade.php deleted file mode 100755 index 9766f27f..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/sundries/order_sundries.blade.php +++ /dev/null @@ -1,405 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('sundries.order_sundries') }} {{ $patient->last_name }} {{ __('sundries.for_episode') }}:{{ streamline_date(get_name($episode_id, 'id', 'created_at', 'patient_episodes')) }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    - -
    - - @include('flash::message') - - @foreach ($errors->all() as $error) -
    {{ $error }}
    - @endforeach - - {{ Form::open(['route' => 'sundries.ordered']) }} - - @php $patient_insurance_status = patient_insurance_status($patient_id); @endphp - - {{ Form::hidden('patient_id', $patient_id, ['id' => 'patient_id'])}} - {{ Form::hidden('patient_insurance_status', $patient_insurance_status, ['id' => 'patient_insurance_status'])}} - -
    - - - - - - - - @php - $option_sundries = ""; - foreach ($sundries as $key => $value){ - $option_sundries .= ""; - } - - $option_employees = ""; - foreach ($employees as $employee){ - $option_employees .= ""; - } - - $counter = 0; - @endphp - - - @if($ordered_sundries) - - - - {{ Form::hidden('order_id', $ordered_sundries->id) }} - @php - $sundry_ids = explode(",", $ordered_sundries->sundries_id); - $sundry_quantities = explode(",", $ordered_sundries->quantity); - @endphp - - @for($i = 0; $i < count($sundry_ids); $i++) - - - - @php $counter++; @endphp - @endfor - @else - - - - @endif - -
    -
    -
    Sundry
    -
    Quantity
    - - -
    -
    -
    - {{ __('sundries.pending_sundries') }} - @if(Auth::user()->can('cancel-ordered-sundries') ) - Cancel all ordered sundries - @endif -
    -
    -
    -
    -
    - {{ Form::select('sundries_id[]', $sundries, $sundry_ids[$i], ['class' => 'form-control compulsory required sundries_id_class', 'id' => 'sundries_id_' . $counter]) }} -
    - -
    - @if (is_chi_enabled() && is_patient_item_covered($patient_id, $sundry_ids[$i], 5)) -   
    Covered by CHI - @endif -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - - @php - if ($patient_insurance_status == 1){ - $sundries_cost = get_item_insurance_co_payment($patient_id, $sundry_ids[$i], 5, false, 0); - } else { - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_id){ - $sundries_cost = get_price_list_category_price($price_list_id, 5, $sundry_ids[$i]); - } else { - $sundries_cost = get_name($sundry_ids[$i], 'id', 'non_insured_price', 'sundries'); - } - } - @endphp - - - - - -
    -
    - @if($counter == 0) - - @else - - @endif -
    -
    -
    -
    -
    -
    -
    -
    - -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - - - - - -
    -
    - -
    -
    -
    -
    -
    - - - -
    -
    -
    -
    - -
    -
    - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/sundry_form/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/sundry_form/create.blade.php deleted file mode 100644 index 6b4b2187..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/sundry_form/create.blade.php +++ /dev/null @@ -1,73 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('sundries.add_sundry_form') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::sundry_form.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - - {{ Form::open(['route' => 'sundry_form.store' , 'data-toggle' => 'validator']) }} -
    - {{ Form::label('name', __('sundries.sundry_form_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory']) }} -
    -
    - {{ Form::button(__('sundries.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10 submit-btn']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush - - diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/sundry_form/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/sundry_form/edit.blade.php deleted file mode 100644 index 9798d415..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/sundry_form/edit.blade.php +++ /dev/null @@ -1,73 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('sundries.edit_sundry_form') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::sundry_form.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - - {{ Form::open([ 'method' => 'PUT','route' => ['sundry_form.update',$sundry->id ], 'data-toggle' => 'validator']) }} -
    - {{ Form::label('name', __('sundries.sundry_form_name')) }} - {{ Form::text('name', $sundry->name, ['class' => 'form-control compulsory']) }} -
    -
    - {{ Form::button(__('sundries.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10 submit-btn']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush - - diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/sundry_form/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/sundry_form/inactive.blade.php deleted file mode 100644 index 07bcbc82..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/sundry_form/inactive.blade.php +++ /dev/null @@ -1,88 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('sundries.sundry_forms') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::sundry_form.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    -
    - - - - - - - - - - - - - - - @foreach($sundries as $sundry) - - - - - @endforeach - -
    {{ __('sundries.sundry_form_name') }}
    {{ __('sundries.sundry_form_name') }}
    {{ $sundry->name }} - @if (Auth::user()->can('sundry-form-delete')) - {{ Form::model($sundry->id ,['method' => 'POST', 'route' => ['sundry_forms.activate', $sundry->id]]) }} - - {{ Form::close() }} - @endif -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/sundry_form/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/sundry_form/index.blade.php deleted file mode 100644 index 7f1b643a..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/sundry_form/index.blade.php +++ /dev/null @@ -1,105 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('sundries.sundry_forms') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::sundry_form.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    -
    - - - - - {{-- - - - - --}} - - - - - - - - {{-- - - - - --}} - - - - - - @foreach($sundry_forms as $sundry) - - - - - - @endforeach - -
    {{ __('sundries.sundry_form_name') }}{{ __('sundries.buying_price') }}{{ __('sundries.non_insured_price') }}{{ __('sundries.income_account') }}Cost of Goods AccountInventory Account
    {{ __('sundries.sundry_form_name') }}{{ __('sundries.buying_price') }}{{ __('sundries.non_insured_price') }}{{ __('sundries.income_account') }}Cost of Goods AccountInventory Account
    {{ $sundry->name }} - {{-- @if (Auth::user()->can('sundry-form-edit')) --}} - {{ __('sundries.edit') }} - {{-- @endif --}} - - @if (Auth::user()->can('sundry-form-delete')) - {{ Form::model($sundry->id,['method' => 'DELETE', 'route' => ['sundry_form.destroy', $sundry->id]]) }} - - {{ Form::close() }} - @endif -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/sundry_form/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/sundry_form/menu.blade.php deleted file mode 100644 index 6fea2a68..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/sundry_form/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - {{ __('sundries.add_sundry_form') }} - {{ __('sundries.sundry_form') }} - {{ __('sundries.activate_sundry_form') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/suppliers/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/suppliers/create.blade.php deleted file mode 100755 index aaeaf121..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/suppliers/create.blade.php +++ /dev/null @@ -1,70 +0,0 @@ -@extends('layouts.main') -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('suppliers.add_new_supplier') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'suppliers.store' , 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('suppliers.supplier_name'))}} - {{ Form::text('name', '', ['class' => 'form-control compulsory','required']) }} -
    -
    - -
    - {{ Form::label('company', __('suppliers.company_name'))}} - {{ Form::text('company', '', ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('mobile_number', __('suppliers.mobile_number'))}} - {{ Form::text('mobile_number', '', ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('available',__('suppliers.is_bed_supplier_available'), ["class"=>'col-md-12']) }} -   {{ __('suppliers.yes') }} {{ Form::radio('available', 1, false, ['class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -   {{ __('suppliers.no') }} {{ Form::radio('available', 0, false, ['class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    - -
    - {{ Form::label('address', __('suppliers.address'))}} - {{ Form::text('address', '', ['class' => 'form-control']) }} -
    -
    - - {{ Form::button(__('suppliers.save'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('suppliers.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/suppliers/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/suppliers/edit.blade.php deleted file mode 100755 index 03baa28e..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/suppliers/edit.blade.php +++ /dev/null @@ -1,69 +0,0 @@ -@extends('layouts.main') -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('suppliers.edit_supplier') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    - {{ Form::model($supplier, ['method' => 'PUT', 'route' => ['suppliers.update',$supplier] , 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('suppliers.supplier_name'))}} - {{ Form::text('name', $supplier->name, ['class' => 'form-control compulsory','required']) }} -
    -
    - -
    - {{ Form::label('company', __('suppliers.company_name'))}} - {{ Form::text('company', $supplier->company, ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('mobile_number', __('suppliers.mobile_number'))}} - {{ Form::text('mobile_number', $supplier->mobile_number, ['class' => 'form-control', 'data-mask' => '0799 999 999']) }} -
    - -
    - {{ Form::label('', __('suppliers.is_bed_supplier_available'), ["class"=>'col-md-12']) }} -   {{ __('suppliers.yes') }} {{ Form::radio('available', 1, $supplier->available == 1, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -   {{ __('suppliers.no') }} {{ Form::radio('available', 0, $supplier->available == 0, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    - -
    - {{ Form::label('address', __('suppliers.address'))}} - {{ Form::text('address', $supplier->address, ['class' => 'form-control']) }} -
    - - {{ Form::button(__('suppliers.save'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('suppliers.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/suppliers/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/suppliers/inactive.blade.php deleted file mode 100755 index 77ac5948..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/suppliers/inactive.blade.php +++ /dev/null @@ -1,95 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('suppliers.activate_suppliers') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -

    {{ __('suppliers.export_to_pdf') }}

    -
    - - - - - - - - - - - - - - - - - - - - - @foreach($suppliers as $supplier) - - - - - - - - - @endforeach - -
    {{ __('suppliers.supplier_name') }}{{ __('suppliers.company_name') }}{{ __('suppliers.mobile_number') }}{{ __('suppliers.address') }}
    {{ __('suppliers.supplier_name') }}{{ __('suppliers.company_name') }}{{ __('suppliers.mobile_number') }}{{ __('suppliers.address') }}
    {{ $supplier->name }}{{ $supplier->company }}{{ $supplier->mobile_number }}{{ $supplier->address }} - {{ Form::model($supplier->id ,['method' => 'POST', 'route' => ['suppliers.activate', $supplier->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/suppliers/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/suppliers/index.blade.php deleted file mode 100755 index 0f82232c..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/suppliers/index.blade.php +++ /dev/null @@ -1,104 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('suppliers.suppliers') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -

    {{ __('suppliers.export_to_pdf') }}

    -
    - - - - - - - - - - - - - - - - - - - - - - - @foreach($suppliers as $supplier) - - - - - - - - - @endforeach - -
    {{ __('suppliers.supplier_name') }}{{ __('suppliers.company_name') }}{{ __('suppliers.mobile_number') }}{{ __('suppliers.address') }}
    {{ __('suppliers.supplier_name') }}{{ __('suppliers.company_name') }}{{ __('suppliers.mobile_number') }}{{ __('suppliers.address') }}
    {{ $supplier->name }}{{ $supplier->company }}{{ $supplier->mobile_number }}{{ $supplier->address }} - - {{ __('suppliers.edit') }} - - @if (empty($quotations[$supplier->id])) - {{ Form::model($supplier->id ,['method' => 'DELETE', 'route' => ['suppliers.destroy', $supplier->id]]) }} - - {{ Form::close() }} - @else - Supplier has quotations. - @endif - -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/symptoms/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/symptoms/create.blade.php deleted file mode 100755 index dda240fe..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/symptoms/create.blade.php +++ /dev/null @@ -1,107 +0,0 @@ -@extends('layouts.main') -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('symptoms.add_symptom') }}

    -
    -
    - -
    -
    - -@include('clinical_data::symptoms.menu') - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'symptoms.store', 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('symptoms.symptom')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('prompts', __('symptoms.prompt')) }} - {{ Form::textArea('prompts', '', ['class' => 'form-control', 'rows' => 5]) }} -
    -
    -
    -
    - {{ Form::label('reference_text', __('symptoms.reference_area')) }} -
    -
    - {{ Form::text('reference_text[]', '', ['class'=>'form-control', 'placeholder' => 'reference name']) }} -
    -
    - {{ Form::url('reference_link[]', '', ['class'=>'form-control', 'placeholder' => 'eg http://www.google.com']) }} -
    -
    - -
    -
    -
    - {{ Form::label('', __('symptoms.is_symptom_available'), ["class"=>'col-md-12']) }} -  {{ __('symptoms.yes') }} {{ Form::radio('available', 1, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -  {{ __('symptoms.no') }} {{ Form::radio('available', 0, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    -
    -
    - - - - - {{ Form::button(__('symptoms.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::button(__('symptoms.cancel'),['type'=>'reset','class'=>'btn btn-default btn-rounded waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/symptoms/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/symptoms/edit.blade.php deleted file mode 100755 index 861e344d..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/symptoms/edit.blade.php +++ /dev/null @@ -1,73 +0,0 @@ -@extends('layouts.main') -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('symptoms.edit_symptom') }}

    -
    -
    - -
    -
    - -@include('clinical_data::symptoms.menu') - -
    -
    - - @include('flash::message') -
    - {{ Form::model($symptom, ['method' => 'PUT', 'route' => ['symptoms.update',$symptom] , 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('symptoms.symptom')) }} - {{ Form::text('name', $symptom->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('prompts', __('symptoms.prompt')) }} - {{ Form::textArea('prompts', $symptom->prompts, ['class' => 'form-control', 'rows' => 5]) }} -
    - -
    - {{ Form::label('reference_text', __('symptoms.reference_text')) }} - {{ Form::textArea('reference_text', $symptom->reference_text, ['class'=>'form-control', 'rows' => 5]) }} -
    - -
    - {{ Form::label('reference_link', __('symptoms.reference_link')) }} - {{ Form::url('reference_link', $symptom->reference_link, ['class'=>'form-control', 'rows' => 5, 'placeholder' => 'eg http://www.google.com']) }} -
    - -
    - {{ Form::label('', __('symptoms.is_symptom_available'), ["class"=>'col-md-12']) }} -  {{ __('symptoms.yes') }} {{ Form::radio('available', 1, $symptom->available == 1, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -  {{ __('symptoms.no') }} {{ Form::radio('available', 0, $symptom->available == 0, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    - - {{ Form::button(__('symptoms.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::button(__('symptoms.cancel'),['type'=>'reset','class'=>'btn btn-default btn-rounded waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush - diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/symptoms/edit/all.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/symptoms/edit/all.blade.php deleted file mode 100755 index 1dc12db1..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/symptoms/edit/all.blade.php +++ /dev/null @@ -1,103 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('symptoms.edit_all_symptoms') }}

    -
    -
    - -
    -
    - -@include('clinical_data::symptoms.menu') - -
    -
    - - @include('flash::message') -
    - {{ Form::model($symptoms, ['method' => 'ANY', 'route' => ['symptoms.update_all'], 'data-toggle' => 'validator']) }} - -
    - - - - - - - - - - - - - - - - - - - - - @foreach($symptoms as $symptom) - - - - - - - - @endforeach - -
    {{ __('symptoms.symptom') }}{{ __('symptoms.prompt') }}{{ __('symptoms.reference_text') }}{{ __('symptoms.reference_link') }}
    {{ __('symptoms.symptom') }}{{ __('symptoms.prompt') }}{{ __('symptoms.reference_text') }}{{ __('symptoms.reference_link') }}
    -

    {{ $symptom->name }}

    - {{ Form::text('name[]', $symptom->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    {{ Form::textArea('prompts[]', $symptom->prompts, ['class' => 'form-control', 'rows' => 2]) }}{{ Form::textArea('reference_text[]', $symptom->reference_text, ['class' => 'form-control', 'rows' => 2]) }}{{ Form::textArea('reference_link[]', $symptom->reference_link, ['class' => 'form-control', 'rows' => 2]) }}
    -
    - - {{ Form::button(__('symptoms.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('symptoms.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    - -@include('clinical_data::symptoms.menu') -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/symptoms/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/symptoms/inactive.blade.php deleted file mode 100755 index baffa2cb..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/symptoms/inactive.blade.php +++ /dev/null @@ -1,110 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('symptoms.activate_symptoms') }}

    -
    -
    - -
    -
    - -@include('clinical_data::symptoms.menu') - -
    -
    -
    - - - - - - - - -

    {{ __('symptoms.export_data_to_copy_csv_pdf_print') }}

    -
    - - - - - - - - - - - - - - - - - - - @foreach($symptoms as $symptom) - - - - - - - @endforeach - -
    {{ __('symptoms.symptom') }}{{ __('symptoms.prompt') }}{{ __('symptoms.reference_text') }}
    {{ __('symptoms.symptom') }}{{ __('symptoms.prompt') }}{{ __('symptoms.reference_text') }}
    {{ $symptom->name }}{{ $symptom->prompts }}{{ $symptom->reference_text }} - {{ Form::model($symptom->id ,['method' => 'POST', 'route' => ['symptoms.activate', $symptom->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/symptoms/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/symptoms/index.blade.php deleted file mode 100755 index 784cb9a4..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/symptoms/index.blade.php +++ /dev/null @@ -1,150 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('symptoms.symptoms') }}

    -
    -
    - -
    -
    - - @include('clinical_data::symptoms.menu') - @include('flash::message') - -
    -
    -
    - -
    - - - - - - - - - - - - @foreach($symptoms as $symptom) - - - - - - - - @endforeach - -
    {{ __('symptoms.symptom') }}{{ __('symptoms.prompt') }}{{ __('symptoms.reference_text') }}
    {{ $symptom->name }}{{ $symptom->prompts }} - @php - $reference_areas_array = explode(",", $symptom->reference_link); - $reference_names_array = explode(",", $symptom->reference_text); - @endphp - -
      - @for ($x = 0; $x < count($reference_areas_array); $x++) - @if($reference_areas_array[$x] != '') -
    1. - - {{ isset($reference_names_array[$x]) ? $reference_names_array[$x] : '' }} - -
    2. - @endif - @endfor -
    -
    - {{ __('symptoms.edit') }} - - @if (!in_array($symptom->id, $symptom_data)) - {{ Form::model($symptom->id ,['method' => 'DELETE', 'route' => ['symptoms.destroy', $symptom->id]]) }} - - {{ Form::close() }} - @else - Symptom recorded - @endif - -
    -
    - - {{ $symptoms->links() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/symptoms/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/symptoms/menu.blade.php deleted file mode 100755 index cfc219f3..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/symptoms/menu.blade.php +++ /dev/null @@ -1,8 +0,0 @@ -
    -
    - {{ __('symptoms.add_new_symptom') }} - {{ __('symptoms.edit_all_symptoms') }} - {{ __('symptoms.view_symptoms') }} - {{ __('symptoms.view_inactive_symptoms') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/test_area_values/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/test_area_values/create.blade.php deleted file mode 100644 index 54bbb047..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/test_area_values/create.blade.php +++ /dev/null @@ -1,50 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    Add Slit Lamp Test Area Value

    -
    -
    - -
    -
    - - @include('clinical_data::test_area_values.menu') - @include('flash::message') - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'test_area_values.store', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', 'Value') }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('area', 'Slit Lamp Test Area') }} - {{ Form::select('area', $test_areas,'', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/test_area_values/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/test_area_values/edit.blade.php deleted file mode 100644 index 39a79897..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/test_area_values/edit.blade.php +++ /dev/null @@ -1,48 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    Edit Slit Lamp Test Area Value

    -
    -
    - -
    -
    - - @include('clinical_data::test_area_values.menu') - @include('flash::message') - -
    -
    -
    - {{ Form::model($test_area_value, ['method' => 'PUT', 'route' => ['test_area_values.update',$test_area_value], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', 'Test Area Name') }} - {{ Form::text('name', $test_area_value->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('area', 'Slit Lamp Test Area') }} - {{ Form::select('area', $test_areas, $test_area_value->slit_lamp_test_area_id, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/test_area_values/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/test_area_values/inactive.blade.php deleted file mode 100644 index f1e291f1..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/test_area_values/inactive.blade.php +++ /dev/null @@ -1,79 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    Activate Slit Lamp Test Areas

    -
    -
    - -
    -
    - - @include('clinical_data::test_area_values.menu') - @include('flash::message') - -
    -
    -
    -

    Export data to PDF or Print

    -
    - - - - - - - - - @foreach($test_area_values as $value) - - - - - @endforeach - -
    Value Name
    {{ $value->name }} - {{ Form::model($value->id ,['method' => 'POST', 'route' => ['test_area_values.activate', $value->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/test_area_values/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/test_area_values/index.blade.php deleted file mode 100644 index 9ae07c0b..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/test_area_values/index.blade.php +++ /dev/null @@ -1,82 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    Slit Lamp Test Areas Values

    -
    -
    - -
    -
    - - @include('clinical_data::test_area_values.menu') - @include('flash::message') - -
    -
    -
    -

    Export PDF or Print

    -
    - - - - - - - - - - - @foreach($test_area_values as $value) - - - - - - - @endforeach - -
    Test Area ValueLamp Test Area
    {{ $value->name }}{{ $test_areas[$value->slit_lamp_test_area_id] }} - Edit - - {{ Form::model($value->id ,['method' => 'DELETE', 'route' => ['test_area_values.destroy', $value->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/test_area_values/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/test_area_values/menu.blade.php deleted file mode 100644 index 2f7d2420..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/test_area_values/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - Add New Value - View Values - View Inactive Values -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/test_areas/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/test_areas/create.blade.php deleted file mode 100644 index e0686cbe..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/test_areas/create.blade.php +++ /dev/null @@ -1,44 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    Add Slit Lamp Test Area

    -
    -
    - -
    -
    - - @include('clinical_data::test_areas.menu') - @include('flash::message') - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'test_areas.store', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', 'Test Area Name') }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/test_areas/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/test_areas/edit.blade.php deleted file mode 100644 index 7246fa18..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/test_areas/edit.blade.php +++ /dev/null @@ -1,42 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    Edit Slit Lamp Test Area

    -
    -
    - -
    -
    - - @include('clinical_data::test_areas.menu') - @include('flash::message') - -
    -
    -
    - {{ Form::model($test_area, ['method' => 'PUT', 'route' => ['test_areas.update',$test_area], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', 'Test Area Name') }} - {{ Form::text('name', $test_area->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/test_areas/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/test_areas/inactive.blade.php deleted file mode 100644 index 2a18cce6..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/test_areas/inactive.blade.php +++ /dev/null @@ -1,79 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    Activate Slit Lamp Test Areas

    -
    -
    - -
    -
    - - @include('clinical_data::test_areas.menu') - @include('flash::message') - -
    -
    -
    -

    Export data to PDF or Print

    -
    - - - - - - - - - @foreach($test_areas as $test_area) - - - - - @endforeach - -
    Test Area Name
    {{ $test_area->name }} - {{ Form::model($test_area->id ,['method' => 'POST', 'route' => ['test_areas.activate', $test_area->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/test_areas/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/test_areas/index.blade.php deleted file mode 100644 index 5acd0402..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/test_areas/index.blade.php +++ /dev/null @@ -1,80 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    Slit Lamp Test Areas

    -
    -
    - -
    -
    - - @include('clinical_data::test_areas.menu') - @include('flash::message') - -
    -
    -
    -

    Export PDF or Print

    -
    - - - - - - - - - - @foreach($test_areas as $test_area) - - - - - - @endforeach - -
    Test Area
    {{ $test_area->name }} - Edit - - {{ Form::model($test_area->id ,['method' => 'DELETE', 'route' => ['test_areas.destroy', $test_area->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/test_areas/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/test_areas/menu.blade.php deleted file mode 100644 index 209ea5b2..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/test_areas/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - Add New Slit Lamp Test Area - View Slit Lamp Test Area - View Inactive Slit Lamp Test Area -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/unit_of_measure/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/unit_of_measure/create.blade.php deleted file mode 100755 index a8d787d5..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/unit_of_measure/create.blade.php +++ /dev/null @@ -1,47 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('unit_of_measure.add_unit_of_measure') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::unit_of_measure.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'unit_of_measure.store', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('unit_of_measure.unit_of_measure')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('unit_of_measure.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('unit_of_measure.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/unit_of_measure/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/unit_of_measure/edit.blade.php deleted file mode 100755 index 48e1e0d3..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/unit_of_measure/edit.blade.php +++ /dev/null @@ -1,47 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('unit_of_measure.edit_unit_of_measure') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::unit_of_measure.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($unit_of_measure, ['method' => 'PUT', 'route' => ['unit_of_measure.update',$unit_of_measure], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('unit_of_measure.unit_of_measure')) }} - {{ Form::text('name', $unit_of_measure->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/unit_of_measure/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/unit_of_measure/inactive.blade.php deleted file mode 100755 index f05286de..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/unit_of_measure/inactive.blade.php +++ /dev/null @@ -1,90 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('unit_of_measure.activate_units_of_measure') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::unit_of_measure.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    -

    {{ __('unit_of_measure.export_data_to_csv_and_excel') }}

    -
    - - - - - - - - - - - - - - - @foreach($units_of_measure as $unit_of_measure) - - - - - @endforeach - -
    {{ __('unit_of_measure.unit_of_measure') }}
    {{ __('unit_of_measure.unit_of_measure') }}
    {{ $unit_of_measure->name }} - {{ Form::model($unit_of_measure->id ,['method' => 'POST', 'route' => ['unit_of_measure.activate', $unit_of_measure->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/unit_of_measure/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/unit_of_measure/index.blade.php deleted file mode 100755 index 0220e4cd..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/unit_of_measure/index.blade.php +++ /dev/null @@ -1,95 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('unit_of_measure.units_of_measure') }}

    -
    -
    - -
    -
    - -
    -
    - @include('clinical_data::unit_of_measure.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    -

    {{ __('unit_of_measure.export_data_to_csv_and_excel') }}

    -
    - - - - - - - - - - - - - - - - - @foreach($units_of_measure as $unit_of_measure) - - - - - - @endforeach - -
    {{ __('unit_of_measure.unit_of_measure') }}
    {{ __('unit_of_measure.unit_of_measure') }}
    {{ $unit_of_measure->name }} - {{ __('unit_of_measure.edit') }} - - {{ Form::model($unit_of_measure->id ,['method' => 'DELETE', 'route' => ['unit_of_measure.destroy', $unit_of_measure->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/unit_of_measure/menu.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/unit_of_measure/menu.blade.php deleted file mode 100755 index 4d75b213..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/unit_of_measure/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - {{ __('unit_of_measure.add_unit_of_measure') }} - {{ __('unit_of_measure.view_units_of_measure') }} - {{ __('unit_of_measure.activate_units_of_measure') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/villages/create.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/villages/create.blade.php deleted file mode 100755 index c84c33a8..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/villages/create.blade.php +++ /dev/null @@ -1,65 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('villages.add_village') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    - {{ Form::open(['route' => 'villages.store', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('parish_id', __('villages.parish')) }} - {{ Form::select('parish_id', $parishes, '', ['class' => 'form-control compulsory' , 'required', 'id' => 'parish']) }} -
    -
    - -
    - {{ Form::label('name', __('villages.village_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('villages.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('villages.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/villages/edit.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/villages/edit.blade.php deleted file mode 100755 index e6d42bc9..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/villages/edit.blade.php +++ /dev/null @@ -1,66 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('villages.edit_county') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($village, ['method' => 'PUT', 'route' => ['villages.update',$village], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('parish_id', __('villages.parish')) }} - {{ Form::select('parish_id', $parishes, $village->parish_id, ['class' => 'form-control compulsory' , 'required', 'id' => 'parish']) }} -
    -
    - -
    - {{ Form::label('name', __('villages.village_name')) }} - {{ Form::text('name', $village->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('villages.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('villages.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/villages/inactive.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/villages/inactive.blade.php deleted file mode 100755 index c8abd5ac..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/villages/inactive.blade.php +++ /dev/null @@ -1,74 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('villages.activate_villages') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    - - - - - - - - - - @foreach($villages as $village) - - - - - - @endforeach - -
    {{ __('villages.village_name') }}{{ __('villages.parish') }}
    {{ $village->name }}{{ $parishes[$village->parish_id] }} - {{ Form::model($village->id ,['method' => 'POST', 'route' => ['villages.activate', $village->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Resources/views/villages/index.blade.php b/docker/statistics/Modules/ClinicalData/Resources/views/villages/index.blade.php deleted file mode 100755 index a2c60584..00000000 --- a/docker/statistics/Modules/ClinicalData/Resources/views/villages/index.blade.php +++ /dev/null @@ -1,83 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('villages.villages') }}

    -
    -
    - -
    -
    - -
    -
    -
    - - @include('flash::message') - -
    - - - - - - - - - - - @foreach($villages as $village) - - - - - - - @endforeach - -
    {{ __('villages.village_name') }}{{ __('villages.parish') }}
    {{ $village->name }}{{ isset($parishes[$village->parish_id]) ? $parishes[$village->parish_id] : "" }} - {{ __('villages.edit') }} - - {{ Form::model($village->id ,['method' => 'DELETE', 'route' => ['villages.destroy', $village->id]]) }} - - {{ Form::close() }} -
    -
    - - {{ $villages->links() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/ClinicalData/Routes/api.php b/docker/statistics/Modules/ClinicalData/Routes/api.php deleted file mode 100644 index e508fcfe..00000000 --- a/docker/statistics/Modules/ClinicalData/Routes/api.php +++ /dev/null @@ -1,18 +0,0 @@ -get('/clinical_data', function () { - return "Clinical Data"; -}); diff --git a/docker/statistics/Modules/ClinicalData/Routes/web.php b/docker/statistics/Modules/ClinicalData/Routes/web.php deleted file mode 100644 index 1ae26634..00000000 --- a/docker/statistics/Modules/ClinicalData/Routes/web.php +++ /dev/null @@ -1,340 +0,0 @@ - ['auth', 'disablebackbutton', 'user-locale','subscription-tracking', 'password-expiry']], function () { - /* Account Type Routes */ - Route::get('/account_types/inactive', 'AccountTypeController@inactive')->name('account_types.inactive'); - Route::post('/account_types/activate{id}', 'AccountTypeController@activate')->name('account_types.activate'); - Route::resource('account_types', 'AccountTypeController'); - - /* Age Groups Routes */ - Route::get('/age_groups/inactive', 'AgeGroupController@inactive')->name('age_groups.inactive'); - Route::post('/age_groups/activate{id}', 'AgeGroupController@activate')->name('age_groups.activate'); - Route::resource('age_groups', 'AgeGroupController'); - - /* Clinical Data */ - Route::resource('clinical_data', 'ClinicalDataController'); - /* Sundry Form */ - Route::resource('sundry_form', 'SundryFormController'); - Route::get('/sundry_forms/inactive','SundryFormController@inactive')->name('sundry_forms.inactive'); - Route::post('/sundry_forms/activate{id}', 'SundryFormController@activate')->name('sundry_forms.activate'); - - - /* Companies */ - Route::get('/companies/inactive', 'CompanyController@inactive')->name('companies.inactive'); - Route::post('/companies/activate{id}', 'CompanyController@activate')->name('companies.activate'); - Route::post('/companies/quick_store', 'CompanyController@quick_store')->name('companies.quick_store'); - Route::resource('companies', 'CompanyController'); - - /* Countries Routes */ - Route::get('/countries/inactive', 'CountriesController@inactive')->name('countries.inactive'); - Route::post('/countries/activate/{id}', 'CountriesController@activate')->name('countries.activate'); - Route::resource('countries', 'CountriesController'); - - /* Counties Routes */ - Route::get('/counties/inactive', 'CountyController@inactive')->name('counties.inactive'); - Route::post('/counties/activate{id}', 'CountyController@activate')->name('counties.activate'); - Route::resource('counties', 'CountyController'); - - /* Department Routes */ - Route::get('/departments/inactive', 'DepartmentController@inactive')->name('departments.inactive'); - Route::post('/departments/activate{id}', 'DepartmentController@activate')->name('departments.activate'); - Route::get('/departments/edit/all', 'DepartmentController@edit_all')->name('departments.edit.all'); - Route::any('/departments/update_all', 'DepartmentController@update_all')->name('departments.update_all'); - Route::resource('departments', 'DepartmentController'); - - /* Districts Routes */ - Route::get('/districts/inactive', 'DistrictController@inactive')->name('districts.inactive'); - Route::post('/districts/activate{id}', 'DistrictController@activate')->name('districts.activate'); - Route::resource('districts', 'DistrictController'); - - /* Donor Routes */ - Route::get('/donors/inactive', 'DonorsController@inactive')->name('donors.inactive'); - Route::get('/donors', 'DonorsController@index')->name('donors.index'); - Route::get('/donors/create', 'DonorsController@create')->name('donors.create'); - Route::post('/donors/activate{id}', 'DonorsController@activate')->name('donors.activate'); - Route::resource('donors', 'DonorsController'); - - /* Dosage Frequency Routes */ - Route::get('/dosage_frequencies/inactive', 'DosageFrequencyController@inactive')->name('dosage_frequencies.inactive'); - Route::post('/dosage_frequencies/activate{id}', 'DosageFrequencyController@activate')->name('dosage_frequencies.activate'); - Route::resource('dosage_frequencies', 'DosageFrequencyController'); - - /* Drug Category Routes */ - Route::get('/drug_categories/inactive', 'DrugCategoryController@inactive')->name('drug_categories.inactive'); - Route::post('/drug_categories/activate{id}', 'DrugCategoryController@activate')->name('drug_categories.activate'); - Route::resource('drug_categories', 'DrugCategoryController'); - - /* Drug Form Routes */ - Route::get('/drug_forms/inactive', 'DrugFormController@inactive')->name('drug_forms.inactive'); - Route::post('/drug_forms/activate{id}', 'DrugFormController@activate')->name('drug_forms.activate'); - Route::resource('drug_forms', 'DrugFormController'); - - /* Drug Routes Routes */ - Route::get('/drug_routes/inactive', 'DrugRouteController@inactive')->name('drug_routes.inactive'); - Route::post('/drug_routes/activate{id}', 'DrugRouteController@activate')->name('drug_routes.activate'); - Route::resource('drug_routes', 'DrugRouteController'); - - /* Drug Unit Routes */ - Route::get('/drug_units/inactive', 'DrugUnitController@inactive')->name('drug_units.inactive'); - Route::post('/drug_units/activate{id}', 'DrugUnitController@activate')->name('drug_units.activate'); - Route::resource('drug_units', 'DrugUnitController'); - - /* Hmis Category Routes */ - Route::get('/hmis_categories/inactive', 'HmisCategoryController@inactive')->name('hmis_categories.inactive'); - Route::post('/hmis_categories/activate{id}', 'HmisCategoryController@activate')->name('hmis_categories.activate'); - Route::resource('hmis_categories', 'HmisCategoryController'); - - /* Hmis Category Options Routes */ - Route::get('/hmis_categories_options/inactive', 'HmisCategoryOptionsController@inactive')->name('hmis_categories_options.inactive'); - Route::post('/hmis_categories_options/activate/{id}', 'HmisCategoryOptionsController@activate')->name('hmis_categories_options.activate'); - Route::resource('hmis_categories_options', 'HmisCategoryOptionsController'); - Route::post('get_hmis_type_options', 'HmisCategoryOptionsController@get_hmis_type_options'); - - /* Unit of Measure Routes */ - Route::get('/unit_of_measure/inactive', 'UnitOfMeasureController@inactive')->name('unit_of_measure.inactive'); - Route::post('/unit_of_measure/activate{id}', 'UnitOfMeasureController@activate')->name('unit_of_measure.activate'); - Route::resource('unit_of_measure', 'UnitOfMeasureController'); - - /* Observation Routes */ - Route::get('/observations/inactive', 'ObservationController@inactive')->name('observations.inactive'); - Route::post('/observations/activate{id}', 'ObservationController@activate')->name('observations.activate'); - Route::get('/observations/get_observation_info/{id}', 'ObservationController@get_observation_info'); - Route::resource('observations', 'ObservationController'); - Route::get('set_kews', 'ObservationController@store_kews'); - - /* Occupation Routes */ - Route::get('/occupations/inactive', 'OccupationController@inactive')->name('occupations.inactive'); - Route::post('/occupations/activate/{id}', 'OccupationController@activate')->name('occupations.activate'); - Route::resource('occupations', 'OccupationController'); - - /* Outcome Routes */ - Route::any('/outcomes/search', 'OutcomeController@search')->name('outcomes.search'); - Route::get('/outcomes/inactive', 'OutcomeController@inactive')->name('outcomes.inactive'); - Route::post('/outcomes/activate{id}', 'OutcomeController@activate')->name('outcomes.activate'); - Route::get('/outcomes/edit/all', 'OutcomeController@edit_all')->name('outcomes.edit.all'); - Route::any('/outcomes/update_all', 'OutcomeController@update_all')->name('outcomes.update_all'); - Route::any('/outcomes/get_outcomes', 'OutcomeController@get_outcomes')->name('outcomes.get_outcomes'); - Route::resource('outcomes', 'OutcomeController'); - - /* route for package units */ - Route::resource('package_unit', 'PackageUnitController'); - Route::get('package_unit_inactive', 'PackageUnitController@inactive')->name('package_unit.inactive'); - Route::post('package_unit/activate{id}', 'PackageUnitController@activate')->name('package_unit.activate'); - - /* Parishes Routes */ - Route::get('/parishes/inactive', 'ParishController@inactive')->name('parishes.inactive'); - Route::post('/parishes/activate{id}', 'ParishController@activate')->name('parishes.activate'); - Route::resource('parishes', 'ParishController'); - - /* Procedure Category Routes */ - Route::get('/procedure_categories/inactive', 'ProcedureCategoriesController@inactive')->name('procedure_categories.inactive'); - Route::post('/procedure_categories/activate{id}', 'ProcedureCategoriesController@activate')->name('procedure_categories.activate'); - Route::resource('procedure_categories', 'ProcedureCategoriesController'); - - /* Referral Hospital Routes */ - Route::get('/referral_hospitals/inactive', 'ReferralHospitalController@inactive')->name('referral_hospitals.inactive'); - Route::post('/referral_hospitals/activate{id}', 'ReferralHospitalController@activate')->name('referral_hospitals.activate'); - Route::any('/referral_hospitals/get_referrals', 'ReferralHospitalController@get_referrals')->name('referral_hospitals.get_referrals'); - Route::resource('referral_hospitals', 'ReferralHospitalController'); - - /* Resource Category Routes */ - Route::get('/resource_categories/inactive', 'ResourceCategoryController@inactive')->name('resource_categories.inactive'); - Route::post('/resource_categories/activate{id}', 'ResourceCategoryController@activate')->name('resource_categories.activate'); - Route::resource('resource_categories', 'ResourceCategoryController'); - - /* Resources Routes */ - Route::get('/resources/inactive', 'ResourceController@inactive')->name('resources.inactive'); - Route::post('/resources/activate/{id}', 'ResourceController@activate')->name('resources.activate'); - Route::any('/resources/index', 'ResourceController@select')->name('resources.select'); - Route::resource('resources', 'ResourceController'); - - /* Speciality Routes */ - Route::get('/specialities/inactive', 'SpecialityController@inactive')->name('specialities.inactive'); - Route::post('/specialities/activate{id}', 'SpecialityController@activate')->name('specialities.activate'); - Route::resource('specialities', 'SpecialityController'); - - /* Staff Positions Routes */ - Route::get('/staff_positions/inactive', 'StaffPositionsController@inactive')->name('staff_positions.inactive'); - Route::post('/staff_positions/activate/{id}', 'StaffPositionsController@activate')->name('staff_positions.activate'); - Route::resource('staff_positions', 'StaffPositionsController'); - - /* Suppliers Routes */ - Route::get('/suppliers/inactive', 'SupplierController@inactive')->name('suppliers.inactive'); - Route::post('/suppliers/activate{id}', 'SupplierController@activate')->name('suppliers.activate'); - Route::resource('suppliers', 'SupplierController'); - - /* Symptom Routes */ - Route::any('/symptoms/search', 'SymptomController@search')->name('symptoms.search'); - Route::get('/symptoms/inactive', 'SymptomController@inactive')->name('symptoms.inactive'); - Route::post('/symptoms/activate{id}', 'SymptomController@activate')->name('symptoms.activate'); - Route::get('/symptoms/edit/all', 'SymptomController@edit_all')->name('symptoms.edit.all'); - Route::any('/symptoms/update_all', 'SymptomController@update_all')->name('symptoms.update_all'); - Route::post('get_prompt', 'SymptomController@get_prompt'); - Route::any('/symptoms/get_symptoms', 'SymptomController@get_symptoms')->name('symptoms.get_symptoms'); - Route::resource('symptoms', 'SymptomController'); - Route::get('/datatable_test/symptoms', 'SymptomController@datatable_test'); - - /* Villages Routes */ - Route::get('/villages/inactive', 'VillageController@inactive')->name('villages.inactive'); - Route::post('/villages/activate{id}', 'VillageController@activate')->name('villages.activate'); - Route::resource('villages', 'VillageController'); - - /* Inpatient bed categories */ - Route::resource('bed_categories', 'BedCategoriesController'); - Route::get('inactive/bed_categories', 'BedCategoriesController@inactive')->name('bed_categories.inactive'); - Route::get('bed_categories/{id}/activate', 'BedCategoriesController@activate')->name('bed_categories.activate'); - - /* Chart Of Account Routes */ - Route::get('/chart_of_accounts/inactive', 'ChartOfAccountController@inactive')->name('chart_of_accounts.inactive'); - Route::post('/chart_of_accounts/activate{id}', 'ChartOfAccountController@activate')->name('chart_of_accounts.activate'); - Route::resource('chart_of_accounts', 'ChartOfAccountController'); - - /* Clinic Routes */ - Route::get('/clinics/inactive', 'ClinicController@inactive')->name('clinics.inactive'); - Route::post('/clinics/activate{id}', 'ClinicController@activate')->name('clinics.activate'); - Route::resource('clinics', 'ClinicController'); - - /* Diagnosis Routes */ - Route::get('/diagnoses/inactive', 'DiagnosisController@inactive')->name('diagnoses.inactive'); - Route::post('/diagnoses/activate{id}', 'DiagnosisController@activate')->name('diagnoses.activate'); - Route::get('/diagnoses/get_diagnosis', 'DiagnosisController@get_diagnosis'); - Route::get('/diagnoses/edit/all', 'DiagnosisController@edit_all')->name('diagnoses.edit.all'); - Route::any('/diagnoses/update_all', 'DiagnosisController@update_all')->name('diagnoses.update_all'); - Route::get('/diagnoses/get_diagnosis_by_category/{category}', 'DiagnosisController@get_diagnosis_by_category'); - Route::get('/diagnoses/get_diagnosis_categories', 'DiagnosisController@get_diagnosis_categories'); - Route::resource('diagnoses', 'DiagnosisController'); - - // activate a drug - Route::get('/drugs/inactive', 'DrugController@inactive')->name('drugs.inactive'); - Route::post('/drugs/activate{id}', 'DrugController@activate')->name('drugs.activate'); - - // config drug calculations - Route::get('/drugs/edit/drugs_calculations/{id}', 'DrugController@edit_drugs_calculations')->name('drugs.edit.drugs_calculations'); - - // config drug pricing - Route::get('/drugs/edit/drugs_pricing/{id}', 'DrugController@edit_drugs_pricing')->name('drugs.edit.drugs_pricing'); - - // config drug prompts - Route::get('/drugs/edit/drugs_prompts/{id}', 'DrugController@edit_drugs_prompts')->name('drugs.edit.drugs_prompts'); - - // view expiring drugs - Route::match(['get', 'post'], '/drugs/index_drugs_expiring', ['uses' => 'DrugController@index_drugs_expiring', 'as' => 'drugs.index_drugs_expiring']); - - // view out of stock drugs - Route::get('/drugs/index_drugs_low_stock', 'DrugController@index_drugs_low_stock')->name('drugs.index_drugs_low_stock'); - - - // bulk create for drugs - Route::get('/drugs/bulk_create', 'DrugController@bulk_create')->name('drugs.bulk_create'); - Route::any('/drugs/bulk_store', 'DrugController@bulk_store')->name('drugs.bulk_store'); - - // bulk edits for drugs - Route::get('/drugs/edit/all', 'DrugController@edit_all')->name('drugs.edit.all'); - Route::any('/drugs/update_all', 'DrugController@update_all')->name('drugs.update_all'); - - // bulk edits for drugs prompts - Route::get('/drugs/edit/all_prompts', 'DrugController@edit_all_prompts')->name('drugs.edit.all_prompts'); - Route::any('/drugs/update_all_prompts', 'DrugController@update_all_prompts')->name('drugs.update_all_prompts'); - - // bulk edits for drugs calculations - Route::get('/drugs/edit/all_calculations', 'DrugController@edit_all_calculations')->name('drugs.edit.all_calculations'); - Route::any('/drugs/update_all_calculations', 'DrugController@update_all_calculations')->name('drugs.update_all_calculations'); - - // bulk edits for drugs pricing - Route::get('/drugs/edit/all_pricing', 'DrugController@edit_all_pricing')->name('drugs.edit.all_pricing'); - Route::any('/drugs/update_all_pricing', 'DrugController@update_all_pricing')->name('drugs.update_all_pricing'); - - // main thing - Route::resource('drugs', 'DrugController'); - - /* drug package edit routes */ - Route::get('/edit_items_purchase_packaging/{id}', 'DrugController@edit_purchase_packaging')->name('drugs.edit_purchase_packaging'); - Route::any('update_items_purchase_packaging', 'DrugController@update_purchase_packaging')->name('drugs.update_purchase_packaging'); - - /* General Items Routes */ - Route::get('/general_items/inactive', 'GeneralItemsController@inactive')->name('general_items.inactive'); - Route::post('/general_items/activate{id}', 'GeneralItemsController@activate')->name('general_items.activate'); - Route::resource('general_items', 'GeneralItemsController'); - Route::any('general_items_stock_sheet', 'GeneralItemsController@general_items_stock_sheet')->name('stores.general_items_stock_sheet'); - Route::any('update_general_items_stock_sheet', 'GeneralItemsController@update_general_items_stock_sheet'); - Route::any('general_items_stock_reconciliation', 'GeneralItemsController@general_items_stock_reconciliation_report')->name('general_items_stock_reconciliation'); - Route::any('general_items_stock_reconciliation_report_details', 'GeneralItemsController@general_items_stock_reconciliation_report_details')->name('stores.general_items_stock_reconciliation_report_details'); - - /* Patient Categories Routes */ - Route::get('/patient_categories/inactive', 'PatientCategoryController@inactive')->name('patient_categories.inactive'); - Route::post('/patient_categories/activate/{id}', 'PatientCategoryController@activate')->name('patient_categories.activate'); - Route::get('/patient_categories/create', 'PatientCategoryController@create')->name('patient_categories.create'); - Route::get('/patient_categories', 'PatientCategoryController@index')->name('patient_categories.index'); - Route::resource('patient_categories', 'PatientCategoryController'); - - /* Procedure Routes */ - Route::get('/procedures/inactive', 'ProcedureController@inactive')->name('procedures.inactive'); - Route::post('/procedures/activate{id}', 'ProcedureController@activate')->name('procedures.activate'); - Route::any('order_procedures', 'ProcedureController@order_procedures')->name('procedures.order'); - Route::any('cancel_ordered_procedures/{order_id}', 'ProcedureController@cancel_ordered_procedures'); - Route::post('store_ordered_procedures', 'ProcedureController@store_ordered_procedures')->name('procedures.ordered'); - Route::any('/procedures/fetch_procedure_performance_fee', 'ProcedureController@fetch_procedure_performance_fee'); - Route::resource('procedures', 'ProcedureController'); - - //get Hmis category options - Route::post('get_hmis_categories_options', 'ProcedureController@get_hmis_categories_options'); - Route::post('get_dependent_hmis_category_options', 'ProcedureController@get_dependent_hmis_category_options'); - Route::any('get_procedure_details', 'ProcedureController@get_procedure_details'); - - /* Services */ - Route::get('/service_items/inactive', 'ServicesController@inactive')->name('service_items.inactive'); - Route::post('/service_items/activate{id}', 'ServicesController@activate')->name('service_items.activate'); - Route::resource('service_items', 'ServicesController'); - - Route::any('/services/fetch_service_performance_fee', 'ServicesController@fetch_service_performance_fee'); - Route::any('order_services', 'ServicesController@order_services')->name('services.order'); - Route::any('cancel_ordered_services/{order_id}', 'ServicesController@cancel_ordered_services'); - Route::post('store_ordered_services', 'ServicesController@store_ordered_services')->name('services.store_ordered'); - - Route::any('get_service_details', 'ServicesController@get_service_details'); - - /* Subcounties Routes */ - Route::get('/subcounties/inactive', 'SubcountyController@inactive')->name('subcounties.inactive'); - Route::post('/subcounties/activate{id}', 'SubcountyController@activate')->name('subcounties.activate'); - Route::resource('subcounties', 'SubcountyController'); - - /* Sundry Routes */ - Route::get('/sundries/inactive', 'SundryController@inactive')->name('sundries.inactive'); - Route::post('/sundries/activate{id}', 'SundryController@activate')->name('sundries.activate'); - Route::any('cancel_ordered_sundries/{order_id}', 'SundryController@cancel_ordered_sundries'); - Route::any('/sundries/expiring_sundries', 'SundryController@expiring_sundries')->name('sundries.expiring_sundries'); - Route::resource('sundries', 'SundryController'); - Route::any('order_sundries', 'SundryController@order_sundries')->name('sundries.order'); - Route::post('store_ordered_sundries', 'SundryController@store_ordered_sundries')->name('sundries.ordered'); - - Route::any('get_sundry_details', 'SundryController@get_sundry_details'); - - //drug stock level - Route::any('drugs/get_drug_store_stock/{id}','DrugController@get_drug_store_stock'); - - /* Eye Glasses */ - Route::any('/opticals/order', 'EyeGlassesController@order')->name('eye_glasses.order'); - Route::any('/eye_glasses/submit_order', 'EyeGlassesController@submit_order')->name('eye_glasses.submit_order'); - Route::get('/opticals/inactive', 'EyeGlassesController@inactive')->name('opticals.inactive'); - Route::get('/get_optical_pricing','EyeGlassesController@get_optical_pricing'); - Route::post('/opticals/activate{id}', 'EyeGlassesController@activate')->name('opticals.activate'); - Route::any('cancel_ordered_glasses/{order_id}', 'EyeGlassesController@cancel_ordered_glasses'); - Route::resource('opticals', 'EyeGlassesController'); - - /* Slit Lamp Test Areas */ - Route::get('/test_areas/inactive', 'SlitLampTestAreaController@inactive')->name('test_areas.inactive'); - Route::post('/test_areas/activate/{id}', 'SlitLampTestAreaController@activate')->name('test_areas.activate'); - Route::resource('test_areas', 'SlitLampTestAreaController'); - - /* Slit Lamp Test Area Values */ - Route::get('/test_area_values/inactive', 'SlitLampTestAreaValueController@inactive')->name('test_area_values.inactive'); - Route::post('/test_area_values/activate/{id}', 'SlitLampTestAreaValueController@activate')->name('test_area_values.activate'); - Route::resource('test_area_values', 'SlitLampTestAreaValueController'); - - /* Patient Registration Fields Routes */ - Route::get('patient_registration_fields/inactive', 'PatientRegistrationFieldController@inactive')->name('patient_registration_fields.inactive'); - Route::post('patient_registration_fields/activate{id}', 'PatientRegistrationFieldController@activate')->name('patient_registration_fields.activate'); - Route::resource('patient_registration_fields', 'PatientRegistrationFieldController'); -}); \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Services/Clinics/ClinicsService.php b/docker/statistics/Modules/ClinicalData/Services/Clinics/ClinicsService.php deleted file mode 100644 index a56ca879..00000000 --- a/docker/statistics/Modules/ClinicalData/Services/Clinics/ClinicsService.php +++ /dev/null @@ -1,99 +0,0 @@ - $id])->first(); - } - - public function createClinic($name, $clinic_type = null, $available = 1): ?Clinic - { - $clinic = new Clinic; - - $clinic->name = $name; - $clinic->available = $available; - $clinic->slug = $clinic_type ?? 'general'; - $clinic->created_by = Auth::id(); - $clinic->updated_by = Auth::id(); - - try { - $clinic->save(); - return $clinic; - } catch (\Exception $e) { - return null; - } - } - - public function editClinic($id, $name, $available, $clinic_type = null): ?Clinic - { - $clinic = $this->getClinicById($id); - $clinic->name = $name; - $clinic->available = $available; - $clinic->slug = $clinic_type ?? 'general'; - - try { - $clinic->save(); - return $clinic; - } catch (\Exception $e) { - return null; - } - } - - public function deactivateClinic(int $id): bool - { - $clinic = $this->getClinicById($id); - - try { - $clinic->delete(); - return true; - } catch (\Exception $e) { - return false; - } - } - - public function activateClinic($clinicId): array - { - $clinic= Clinic::withTrashed()->find($clinicId); - - if($clinic->restore()){ - return [true, "Clinic has been activated"]; - } else { - return [false, ""]; - } - } - - public function getClinicTypes(): array{ - return [ - 'ante_natal' => 'ANTE-NATAL Clinic', 'art' => 'A.R.T Clinic', - 'diabetes' => 'Diabetes Clinic', 'mental_health' => 'Mental Health Clinic', - 'maternity' => 'Maternity Clinic', 'general' => 'General', 'eye' => 'Eye Clinic', - ]; - } - - public function getClinicsSeeder(): array{ - return [ - ['name' => 'ANTE-NATAL Clinic', 'slug' => 'ante_natal'], - ['name' => 'A.R.T Clinic', 'slug' => 'art'], - ['name' => 'Dental Clinic', 'slug' => 'general'], - ['name' => 'Diabetes Clinic', 'slug' => 'diabetes'], - ['name' => 'Paediatric Clinic', 'slug' => 'general'], - ['name' => 'Psychiatry Clinic', 'slug' => 'mental_health'], - ['name' => 'TB Clinic', 'slug' => 'general'], - ['name' => 'Accident & Emergency Clinic', 'slug' => 'general'], - ['name' => 'General Adult Clinic', 'slug' => 'general'], - ['name' => 'Maternity Clinic', 'slug' => 'maternity'], - ]; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Services/Clinics/ClinicsServiceInterface.php b/docker/statistics/Modules/ClinicalData/Services/Clinics/ClinicsServiceInterface.php deleted file mode 100644 index 77981b82..00000000 --- a/docker/statistics/Modules/ClinicalData/Services/Clinics/ClinicsServiceInterface.php +++ /dev/null @@ -1,25 +0,0 @@ -whereNull('deleted_at') - ->pluck($valueColumn, 'id'); - } - - public function pluckAvailableDrugFormsModels(): DrugForm - { - return DrugForm::pluck('name', 'id'); - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Services/Drugs/DrugRoutesService.php b/docker/statistics/Modules/ClinicalData/Services/Drugs/DrugRoutesService.php deleted file mode 100644 index 7e6df5a8..00000000 --- a/docker/statistics/Modules/ClinicalData/Services/Drugs/DrugRoutesService.php +++ /dev/null @@ -1,27 +0,0 @@ -whereNull('deleted_at') - ->where('available', 1) - ->pluck($valueColumn, 'id'); - } - - public function pluckAvailableDrugRoutesModels(): DrugRoute - { - return DrugRoute::where('available', 1) - ->pluck('name', 'id'); - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Services/Drugs/DrugUnitsService.php b/docker/statistics/Modules/ClinicalData/Services/Drugs/DrugUnitsService.php deleted file mode 100644 index 782d0f61..00000000 --- a/docker/statistics/Modules/ClinicalData/Services/Drugs/DrugUnitsService.php +++ /dev/null @@ -1,25 +0,0 @@ -whereNull('deleted_at') - ->pluck($valueColumn, 'id'); - } - - public function pluckAvailableDrugUnitsModels(): DrugUnit - { - return DrugUnit::pluck('name', 'id'); - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Services/Drugs/DrugsService.php b/docker/statistics/Modules/ClinicalData/Services/Drugs/DrugsService.php deleted file mode 100644 index 1429d316..00000000 --- a/docker/statistics/Modules/ClinicalData/Services/Drugs/DrugsService.php +++ /dev/null @@ -1,27 +0,0 @@ -whereNull('deleted_at') - ->where('available', 1) - ->pluck($valueColumn, 'id'); - } - - public function pluckAvailableDrugsModels(): Drug - { - return Drug::where('available', 1) - ->pluck('name', 'id'); - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/Services/Investigations/InvestigationsService.php b/docker/statistics/Modules/ClinicalData/Services/Investigations/InvestigationsService.php deleted file mode 100644 index 4e74c040..00000000 --- a/docker/statistics/Modules/ClinicalData/Services/Investigations/InvestigationsService.php +++ /dev/null @@ -1,36 +0,0 @@ -pluck('super_category_id', 'id')->toArray(); - } - - public function getInvestigationSuperCategories(): array - { - return DB::table('investigation_super_categories') - ->pluck('name', 'id')->toArray(); - } - - public function getInvestigationsByName(): array - { - return DB::table('investigations') - ->pluck('name', 'id')->toArray(); - } - - public function getInvestigationsByCategory(): array - { - return DB::table('investigations') - ->pluck('category', 'id')->toArray(); - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/ClinicalData/module.json b/docker/statistics/Modules/ClinicalData/module.json deleted file mode 100644 index 455b16da..00000000 --- a/docker/statistics/Modules/ClinicalData/module.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "ClinicalData", - "alias": "clinical_data", - "description": "Clinical Data", - "keywords": [], - "priority": 0, - "providers": [ - "Modules\\ClinicalData\\Providers\\ClinicalDataServiceProvider" - ], - "files": [] -} diff --git a/docker/statistics/Modules/Diabetes/Config/config.php b/docker/statistics/Modules/Diabetes/Config/config.php deleted file mode 100644 index 42526a61..00000000 --- a/docker/statistics/Modules/Diabetes/Config/config.php +++ /dev/null @@ -1,5 +0,0 @@ - 'Diabetes' -]; diff --git a/docker/statistics/Modules/Diabetes/Http/Controllers/Controller.php b/docker/statistics/Modules/Diabetes/Http/Controllers/Controller.php deleted file mode 100755 index e9aaaf6d..00000000 --- a/docker/statistics/Modules/Diabetes/Http/Controllers/Controller.php +++ /dev/null @@ -1,13 +0,0 @@ -get('patient_id'); - $patient = Patient::where('id', $patient_id)->first(); - - $drugs = Drug::where('available', 1)->orderby('name','asc')->get(); - $dosage_frequencies = DosageFrequency::get(); - - // prep the dropdowns - $hiv_status = array('N/A' => '--select--', 'Positive' => 'Positive', 'Negative' => 'Negative', 'Exposed' => 'Exposed'); - $tb_status = array('N/A' => '--select--', 'Negative' => 'Negative', 'Gene-expert positive' => 'Gene-expert positive', 'Extra-pulmonary positive' => 'Extra-pulmonary positive', 'Previous treated' => 'Previous treated', 'Exposed asymptomatic' => 'Exposed asymptomatic'); - $alcohol = array('N/A' => '--select--', 'High' => 'High', 'Moderate' => 'Moderate', 'Low' => 'Low', 'Nil' => 'Nil'); - $mood = array('N/A' => '--select--', 'Fine' => 'Fine', 'Swings' => 'Swings', 'Anxiety' => 'Anxiety'); - $pulse_rhythm = array('N/A' => '--select--', 'Sinus' => 'Sinus', 'AF' => 'AF', 'Heart Block' => 'Heart Block', 'Ectopics' => 'Ectopics'); - $sensation = array('N/A' => '--select--', 'Normal' => 'Normal', 'Impaired' => 'Impaired'); - $fundoscopy = array('N/A' => '--select--', 'Normal' => 'Normal', 'Diabetic retinopathy' => 'Diabetic retinopathy', 'Hypertensive changes' => 'Hypertensive changes', 'Papilloedema' => 'Papilloedema', 'Other' => 'Other'); - $injection_site_inspection = array('N/A' => '--select--', 'Satisfactory' => 'Satisfactory', 'Unsatisfactory' => '“Unsatisfactory'); - - return view('diabetes::diabetes_clinic.follow_up', compact('patient', 'tb_status', 'hiv_status', 'injection_site_inspection', 'pulse_rhythm', 'alcohol', 'mood', 'sensation', 'fundoscopy', 'drugs', 'dosage_frequencies')); - } - - public function save_follow_up(Request $request){ - $follow_up = new DiabetesFollowUp(); - - $follow_up->patient_id = session()->get('patient_id'); - $follow_up->episode_id = session()->get('episode_id'); - $follow_up->hypoglycaemic = isset($request->hypoglycaemic) ? 1 : 0; - $follow_up->hyperglycaemic_episodes = isset($request->hyperglycaemic_episodes) ? 1 : 0; - $follow_up->visual_symptoms = isset($request->visual_symptoms) ? 1 : 0; - $follow_up->feet_sensation = isset($request->feet_sensation) ? 1 : 0; - $follow_up->impotence = isset($request->impotence) ? 1 : 0; - $follow_up->smoker = isset($request->smoker) ? 1 : 0; - $follow_up->hiv_status = $request->hiv_status; - $follow_up->tb_status = $request->tb_status; - $follow_up->alcohol = $request->alcohol; - $follow_up->mood = $request->mood; - $follow_up->immunisation_date = $request->immunisation_date; - $follow_up->comments = $request->comments; - $follow_up->height = $request->height; - $follow_up->weight = $request->weight; - $follow_up->waist = $request->waist; - $follow_up->hip = $request->hip; - $follow_up->bp_lying = $request->bp_lying; - $follow_up->bp_standing = $request->bp_standing; - $follow_up->pulse_rate = $request->pulse_rate; - $follow_up->pulse_rhythm = $request->pulse_rhythm; - $follow_up->sensation = $request->sensation; - $follow_up->pedal_pulses = isset($request->pedal_pulses) ? 1 : 0; - $follow_up->feet_inspection = isset($request->feet_inspection) ? 1 : 0; - $follow_up->visual_acuity = isset($request->visual_acuity) ? 1 : 0; - $follow_up->fundoscopy = $request->fundoscopy; - $follow_up->injection_site_inspection = $request->injection_site_inspection; - $follow_up->examination_comments = $request->examination_comments; - $follow_up->bmi = $request->bmi; - $follow_up->waist_hip_ratio = $request->waist_hip_ratio; - $follow_up->blood_glucose = $request->blood_glucose; - $follow_up->creatinine = $request->creatinine; - $follow_up->hdl_cholesterol = $request->hdl_cholesterol; - $follow_up->ldl_cholesterol = $request->ldl_cholesterol; - $follow_up->total_choresterol = $request->total_choresterol; - $follow_up->triglyceride = $request->triglyceride; - $follow_up->urine_protein = $request->urine_protein; - $follow_up->urine_ketones = $request->urine_ketones; - $follow_up->hba1c = $request->hba1c; - $follow_up->drug_id = implode(",", $request->drug_id); - $follow_up->dose = implode(",", $request->dose); - $follow_up->frequency_id = implode(",", $request->frequency_id); - $follow_up->dispense_number = implode(",", $request->dispense_number); - $follow_up->overview_diabetes = isset($request->overview_diabetes) ? 1 : 0; - $follow_up->overview_diabetes_date = $request->overview_diabetes_date; - $follow_up->management_diabetes = isset($request->management_diabetes) ? 1 : 0; - $follow_up->management_diabetes_date = $request->management_diabetes_date; - $follow_up->diabetic_clinic_date = $request->diabetic_clinic_date; - $follow_up->eye_clinic_referral = isset($request->eye_clinic_referral) ? 1 : 0; - $follow_up->psychological_assessment_referral = isset($request->psychological_assessment_referral) ? 1 : 0; - $follow_up->chaplain_support_referral = isset($request->chaplain_support_referral) ? 1 : 0; - $follow_up->other_clinic_follow_up = $request->other_clinic_follow_up; - $follow_up->created_by = Auth::user()->id; - - if ($follow_up->save()){ - flash("Diabetes follow up details saved successfully")->success(); - return redirect("/patient_episodes"); - } else { - flash("Something went wrong. Please try again.")->error(); - return back()->withInput(); - } - } - - public function follow_up_details($id){ - $patient_id = session()->get('patient_id'); - $patient = Patient::where('id', $patient_id)->first(); - - $follow_up = DiabetesFollowUp::find($id); - - $drugs = Drug::where('available', 1)->pluck('name', 'id'); - $dosage_frequencies = DosageFrequency::pluck('name', 'id'); - - return view('diabetes::diabetes_clinic.follow_up_details', compact('patient', 'drugs', 'dosage_frequencies', 'follow_up')); - } - - public function get_dispensable_drug_units($drug_id){ - return get_name($drug_id, 'id', 'pharmacy_stock', 'drugs'); - } - - public function clinic_registration(){ - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $patient = Patient::where('id', $patient_id)->first(); - - $drugs = Drug::where('available', 1)->orderby('name','asc')->get(); - $dosage_frequencies = DosageFrequency::get(); - - // prep the dropdowns - $hiv_status = array('N/A' => '--select--', 'Positive' => 'Positive', 'Negative' => 'Negative', 'Exposed' => 'Exposed'); - $tb_status = array('N/A' => '--select--', 'Negative' => 'Negative', 'Gene-expert positive' => 'Gene-expert positive', 'Extra-pulmonary positive' => 'Extra-pulmonary positive', 'Previous treated' => 'Previous treated', 'Exposed asymptomatic' => 'Exposed asymptomatic'); - $type = array('N/A' => '--select--', 'Type 1' => 'Type 1', 'Type 2' => 'Type 2', 'Type 2 on insuline' => 'Type 2 on insulin'); - $alcohol = array('N/A' => '--select--', 'High' => 'High', 'Moderate' => 'Moderate', 'Low' => 'Low', 'Nil' => 'Nil'); - - // check if the patient has already been registered - $clinic_registration = DiabetesRegistration::where('episode_id', $episode_id)->first(); - - if ($clinic_registration){ - // redirect to the view details page - $drugs = Drug::where('available', 1)->pluck('name', 'id'); - $dosage_frequencies = DosageFrequency::pluck('name', 'id'); - - // get follow up history if available - $follow_up = DiabetesFollowUp::where('episode_id', $episode_id)->get(); - - return view('diabetes::diabetes_clinic.clinic_registration_details', compact('clinic_registration','patient', 'drugs', 'dosage_frequencies', 'hiv_status', 'tb_status', 'type', 'alcohol', 'follow_up')); - } else { - return view('diabetes::diabetes_clinic.clinic_registration', compact('patient', 'drugs', 'dosage_frequencies', 'hiv_status', 'tb_status', 'type', 'alcohol')); - } - } - - public function save_clinic_registration(Request $request){ - $registration = new DiabetesRegistration(); - - $registration->patient_id = session()->get('patient_id'); - $registration->episode_id = session()->get('episode_id'); - $registration->family_history = $request->family_history; - $registration->family_member_with_diabetes = $request->family_member_with_diabetes; - $registration->diagnosis_date = $request->diagnosis_date; - $registration->diabetes_type = $request->diabetes_type; - $registration->presenting_none = isset($request->presenting_none) ? 1 : 0; - $registration->presenting_dka = isset($request->presenting_dka) ? 1 : 0; - $registration->presenting_excessive_thirst = isset($request->presenting_excessive_thirst) ? 1 : 0; - $registration->presenting_polyuria = isset($request->presenting_polyuria) ? 1 : 0; - $registration->presenting_weight_loss = isset($request->presenting_weight_loss) ? 1 : 0; - $registration->presenting_visual_problems = isset($request->presenting_visual_problems) ? 1 : 0; - $registration->presenting_peripheral_neuropathy = isset($request->presenting_peripheral_neuropathy) ? 1 : 0; - $registration->other_symptoms = $request->other_symptoms; - $registration->other_diagnosis = $request->other_diagnosis; - $registration->hiv_status = $request->hiv_status; - $registration->tb_status = $request->tb_status; - $registration->height = $request->height; - $registration->weight = $request->weight; - $registration->bmi = $request->bmi; - $registration->waist = $request->waist; - $registration->hip_circumference = $request->hip_circumference; - $registration->waist_to_hip_ratio = $request->waist_to_hip_ratio; - $registration->smoker = isset($request->smoker) ? 1 : 0; - $registration->alcohol = $request->alcohol; - $registration->immunisation_date = $request->immunisation_date; - $registration->drug_id = implode(",", $request->drug_id); - $registration->dose = implode(",", $request->dose); - $registration->frequency_id = implode(",", $request->frequency_id); - $registration->dispense_number = implode(",", $request->dispense_number); - $registration->hba1c = $request->hba1c; - $registration->bp = $request->bp; - $registration->cholesterol = $request->cholesterol; - $registration->waist_hip_ratio = $request->waist_hip_ratio; - $registration->overview_diabetes = isset($request->overview_diabetes) ? 1 : 0; - $registration->overview_diabetes_date = $request->overview_diabetes_date; - $registration->management_diabetes = isset($request->management_diabetes) ? 1 : 0; - $registration->management_diabetes_date = $request->management_diabetes_date; - $registration->diet_review = $request->diet_review; - $registration->comment = $request->comment; - $registration->created_by = Auth::user()->id; - - if ($registration->save()){ - flash("Diabetes registration details saved successfully")->success(); - return redirect("/patient_episodes"); - } else { - flash("Something went wrong. Please try again.")->error(); - return back()->withInput(); - } - } -} diff --git a/docker/statistics/Modules/Diabetes/Providers/DiabetesServiceProvider.php b/docker/statistics/Modules/Diabetes/Providers/DiabetesServiceProvider.php deleted file mode 100644 index d26b2a17..00000000 --- a/docker/statistics/Modules/Diabetes/Providers/DiabetesServiceProvider.php +++ /dev/null @@ -1,113 +0,0 @@ -registerTranslations(); - $this->registerConfig(); - $this->registerViews(); - $this->loadMigrationsFrom(module_path($this->moduleName, 'Database/Migrations')); - } - - /** - * Register the service provider. - * - * @return void - */ - public function register() - { - $this->app->register(RouteServiceProvider::class); - } - - /** - * Register config. - * - * @return void - */ - protected function registerConfig() - { - $this->publishes([ - module_path($this->moduleName, 'Config/config.php') => config_path($this->moduleNameLower . '.php'), - ], 'config'); - $this->mergeConfigFrom( - module_path($this->moduleName, 'Config/config.php'), $this->moduleNameLower - ); - } - - /** - * Register views. - * - * @return void - */ - public function registerViews() - { - $viewPath = resource_path('views/modules/' . $this->moduleNameLower); - - $sourcePath = module_path($this->moduleName, 'Resources/views'); - - $this->publishes([ - $sourcePath => $viewPath - ], ['views', $this->moduleNameLower . '-module-views']); - - $this->loadViewsFrom(array_merge($this->getPublishableViewPaths(), [$sourcePath]), $this->moduleNameLower); - } - - /** - * Register translations. - * - * @return void - */ - public function registerTranslations() - { - $langPath = resource_path('lang/modules/' . $this->moduleNameLower); - - if (is_dir($langPath)) { - $this->loadTranslationsFrom($langPath, $this->moduleNameLower); - $this->loadJsonTranslationsFrom($langPath); - } else { - $this->loadTranslationsFrom(module_path($this->moduleName, 'Resources/lang'), $this->moduleNameLower); - $this->loadJsonTranslationsFrom(module_path($this->moduleName, 'Resources/lang')); - } - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides() - { - return []; - } - - private function getPublishableViewPaths(): array - { - $paths = []; - foreach (\Config::get('view.paths') as $path) { - if (is_dir($path . '/modules/' . $this->moduleNameLower)) { - $paths[] = $path . '/modules/' . $this->moduleNameLower; - } - } - return $paths; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/Diabetes/Providers/RouteServiceProvider.php b/docker/statistics/Modules/Diabetes/Providers/RouteServiceProvider.php deleted file mode 100755 index 41a416df..00000000 --- a/docker/statistics/Modules/Diabetes/Providers/RouteServiceProvider.php +++ /dev/null @@ -1,68 +0,0 @@ -mapApiRoutes(); - $this->mapWebRoutes(); - } - - /** - * Define the "web" routes for the application. - * - * These routes all receive session state, CSRF protection, etc. - * - * @return void - */ - protected function mapWebRoutes() - { - Route::middleware('web') - ->namespace($this->namespace) - ->group(module_path('Diabetes', '/Routes/web.php')); - } - - /** - * Define the "api" routes for the application. - * - * These routes are typically stateless. - * - * @return void - */ - protected function mapApiRoutes() - { - Route::prefix('api') - ->middleware('api') - ->namespace($this->namespace) - ->group(module_path('Diabetes', '/Routes/api.php')); - } -} diff --git a/docker/statistics/Modules/Diabetes/Resources/views/diabetes_clinic/clinic_registration.blade.php b/docker/statistics/Modules/Diabetes/Resources/views/diabetes_clinic/clinic_registration.blade.php deleted file mode 100755 index 5ecff018..00000000 --- a/docker/statistics/Modules/Diabetes/Resources/views/diabetes_clinic/clinic_registration.blade.php +++ /dev/null @@ -1,457 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Diabetes Registration

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    -
    - {{ Form::open(['route' => 'diabetes_clinic.save_clinic_registration', 'data-toggle' => 'validator']) }} - -
    -
    - -
    -

    - - - - - - - - - - - -
    {{ __('diabetes_clinic.registration_summary') }}
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.family_history_of_diabetes') }} - {{ Form::radio('family_history', 'Yes', false, ['id' => 'family_history_yes']) }} Yes - {{ Form::radio('family_history', 'No', false, ['id' => 'family_history_no']) }} No -
    {{ __('diabetes_clinic.date_of_diabetes') }} - {{ Form::text('diagnosis_date', '', ['class'=>'form-control', 'id'=>'diagnosis_date', 'readonly']) }} -
    {{ __('diabetes_clinic.type') }} - {{ Form::select('diabetes_type', $type, '', ['class' => 'form-control']) }} -
    {{ __('diabetes_clinic.presenting_symptoms') }} - {{ Form::checkbox('presenting_none', 1) }} {{ __('diabetes_clinic.none') }} -

    - {{ Form::checkbox('presenting_dka', 1) }} {{ __('diabetes_clinic.dka') }} -

    - {{ Form::checkbox('presenting_excessive_thirst', 1) }} {{ __('diabetes_clinic.excessive_thirst') }} -

    - {{ Form::checkbox('presenting_polyuria', 1) }} {{ __('diabetes_clinic.polyuria') }} -

    - {{ Form::checkbox('presenting_weight_loss', 1) }} {{ __('diabetes_clinic.weight_loss') }} -

    - {{ Form::checkbox('presenting_visual_problems', 1) }} {{ __('diabetes_clinic.visual_problems') }} -

    - {{ Form::checkbox('presenting_peripheral_neuropathy', 1) }} {{ __('diabetes_clinic.peripheral_neuropathy') }} -
    {{ __('diabetes_clinic.other_symptoms') }} - {{ Form::textarea('other_symptoms', '', ['class'=>'form-control', 'rows' => 4]) }} -
    {{ __('diabetes_clinic.other_diagnoses') }} - {{ Form::textarea('other_diagnosis', '', ['class'=>'form-control', 'rows' => 4]) }} -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.hiv_status') }} - {{ Form::select('hiv_status', $hiv_status, '', ['class' => 'form-control']) }} -
    {{ __('diabetes_clinic.tb_status') }} - {{ Form::select('tb_status', $tb_status, '', ['class' => 'form-control']) }} -
    {{ __('diabetes_clinic.height') }} - {{ Form::text('height', '', ['class' => 'form-control', 'id' => 'height']) }} -
    {{ __('diabetes_clinic.weight') }} - {{ Form::number('weight', '', ['class' => 'form-control', 'id' => 'weight']) }} -
    {{ __('diabetes_clinic.bmi') }} - {{ Form::text('bmi', '', ['class' => 'form-control', 'readonly', 'id' => 'bmi']) }} -
    {{ __('diabetes_clinic.waist') }} - {{ Form::text('waist', '', ['class' => 'form-control', 'id' => 'waist']) }} -
    {{ __('diabetes_clinic.hip_circumference') }} - {{ Form::text('hip_circumference', '', ['class' => 'form-control', 'id' => 'hip_circumference']) }} -
    {{ __('diabetes_clinic.waist_to_hip_ratio') }} - {{ Form::text('waist_to_hip_ratio', '', ['class' => 'form-control', 'readonly', 'id' => 'waist_to_hip_ratio']) }} -
    {{ __('diabetes_clinic.smoker') }}{{ Form::checkbox('smoker', 1) }}
    {{ __('diabetes_clinic.alcohol') }} - {{ Form::select('alcohol', $alcohol, '', ['class' => 'form-control']) }} -
    {{ __('diabetes_clinic.pneumococcal_immunisation_date') }} - {{ Form::text('immunisation_date', '', ['class'=>'form-control', 'id'=>'immunisation_date', 'readonly']) }} -
    -
    -
    -
    -
    - - - - - - - - - - - - -
    {{ __('diabetes_clinic.medication') }}
    - - - - - - - - - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.drug_name') }}{{ __('diabetes_clinic.dose') }}{{ __('diabetes_clinic.frequency') }}{{ __('diabetes_clinic.number_to_dispense') }}{{ __('diabetes_clinic.stock_status') }}
    - - - - - -
    - -
    - - -
    -
    -
    - - - - - - - - - - - -
    {{ __('diabetes_clinic.target_and_patient_education') }}
    -
    -
    - - - - - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.hba1c') }} - {{ Form::text('hba1c', '', ['class' => 'form-control']) }} -
    {{ __('diabetes_clinic.bp') }} - {{ Form::text('bp', '', ['class' => 'form-control']) }} -
    {{ __('diabetes_clinic.cholesterol') }} - {{ Form::text('cholesterol', '', ['class' => 'form-control']) }} -
    {{ __('diabetes_clinic.waist_to_hip_ratio') }} - {{ Form::text('waist_hip_ratio', '', ['class' => 'form-control']) }} -
    -
    -
    - - - - - - - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.video_overview_of_diabetes') }} - {{ Form::checkbox('overview_diabetes', 1) }} - - {{ Form::text('overview_diabetes_date', '', ['class'=>'form-control', 'id'=>'overview_diabetes_date', 'readonly']) }} -
    {{ __('diabetes_clinic.video_management_of_diabetes') }} - {{ Form::checkbox('management_diabetes', 1) }} - - {{ Form::text('management_diabetes_date', '', ['class'=>'form-control', 'id'=>'management_diabetes_date', 'readonly']) }} -
    {{ __('diabetes_clinic.diet_review') }} - {{ Form::textarea('diet_review', '', ['class'=>'form-control', 'rows' => 4]) }} -
    {{ __('diabetes_clinic.comment') }} - {{ Form::textarea('comment', '', ['class'=>'form-control', 'rows' => 4]) }} -
    -
    -
    -
    -

    -
    -
    -
    - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} -
    -
    -
    -
    - - {{ Form::close() }} - -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/Diabetes/Resources/views/diabetes_clinic/clinic_registration_details.blade.php b/docker/statistics/Modules/Diabetes/Resources/views/diabetes_clinic/clinic_registration_details.blade.php deleted file mode 100755 index 700b1e61..00000000 --- a/docker/statistics/Modules/Diabetes/Resources/views/diabetes_clinic/clinic_registration_details.blade.php +++ /dev/null @@ -1,339 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('diabetes_clinic.diabetes_registration_details') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    -
    -
    -
    -
    - - - - - - - - - - - -
    {{ __('diabetes_clinic.follow_up_history') }}
    - @if($follow_up->count() > 0) - - - @foreach($follow_up as $record) - - - - - - @endforeach - -
    {{ __('diabetes_clinic.date') }} {{ streamline_date_time($record->created_at) }} - {{ __('diabetes_clinic.view_details') }} -
    - @else -

    {{ __('diabetes_clinic.no_follow_ups_conducted') }}

    - @endif -
    -
    - -
    -
    -
    -
    - - - - - - - - - - - -
    {{ __('diabetes_clinic.registration_summary') }}
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.family_history_to_diabetes') }} - {{ Form::text('family_history', $clinic_registration->family_history, ['class' => 'form-control', 'disabled']) }} -
    {{ __('diabetes_clinic.specify_who_has_diabetes') }} - {{ Form::text('family_member_with_diabetes', $clinic_registration->family_member_with_diabetes, ['class'=>'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.date_of_diagnosis') }} - {{ Form::text('diagnosis_date', $clinic_registration->diagnosis_date, ['class'=>'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.type') }} - {{ Form::text('diabetes_type', $clinic_registration->diabetes_type, ['class' => 'form-control', 'disabled']) }} -
    {{ __('diabetes_clinic.presenting_symptoms') }} - {{ Form::checkbox('presenting_none', 1, $clinic_registration->presenting_none, ['disabled']) }} {{ __('diabetes_clinic.none') }} -

    - {{ Form::checkbox('presenting_dka', 1, $clinic_registration->presenting_dka, ['disabled']) }} {{ __('diabetes_clinic.dka') }} -

    - {{ Form::checkbox('presenting_excessive_thirst', 1, $clinic_registration->presenting_excessive_thirst, ['disabled']) }} {{ __('diabetes_clinic.excessive_thirst') }} -

    - {{ Form::checkbox('presenting_polyuria', 1, $clinic_registration->presenting_polyuria, ['disabled']) }} {{ __('diabetes_clinic.polyuria') }} -

    - {{ Form::checkbox('presenting_weight_loss', 1, $clinic_registration->presenting_weight_loss, ['disabled']) }} {{ __('diabetes_clinic.weight_loss') }} -

    - {{ Form::checkbox('presenting_visual_problems', 1, $clinic_registration->presenting_visual_problems, ['disabled']) }} {{ __('diabetes_clinic.visual_problems') }} -

    - {{ Form::checkbox('presenting_peripheral_neuropathy', 1, $clinic_registration->presenting_peripheral_neuropathy, ['disabled']) }} {{ __('diabetes_clinic.peripheral_neuropathy') }} -
    {{ __('diabetes_clinic.other_symptoms') }} - {{ Form::textarea('other_symptoms', $clinic_registration->other_symptoms, ['class'=>'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.other_diagnoses') }} - {{ Form::textarea('other_diagnosis', $clinic_registration->other_diagnosis, ['class'=>'form-control', 'readonly']) }} -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.hiv_status') }} - {{ Form::text('hiv_status', $clinic_registration->hiv_status, ['class' => 'form-control', 'disabled']) }} -
    {{ __('diabetes_clinic.tb_status') }} - {{ Form::text('tb_status', $clinic_registration->tb_status, ['class' => 'form-control', 'disabled']) }} -
    Height - {{ Form::text('height', $clinic_registration->height, ['class' => 'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.weight') }} - {{ Form::number('weight', $clinic_registration->weight, ['class' => 'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.bmi') }} - {{ Form::text('bmi', $clinic_registration->bmi, ['class' => 'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.waist') }} - {{ Form::text('waist', $clinic_registration->waist, ['class' => 'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.hip_circumference') }} - {{ Form::text('hip_circumference', $clinic_registration->hip_circumference, ['class' => 'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.waist_to_hip_ratio') }} - {{ Form::text('waist_to_hip_ratio', $clinic_registration->waist_to_hip_ratio, ['class' => 'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.smoker') }}{{ Form::checkbox('smoker', 1, $clinic_registration->smoker, ['disabled']) }}
    {{ __('diabetes_clinic.alcohol') }} - {{ Form::text('alcohol', $clinic_registration->alcohol, ['class' => 'form-control', 'disabled']) }} -
    {{ __('diabetes_clinic.pneumococcal_immunisation_date') }} - {{ Form::text('immunisation_date', $clinic_registration->immunisation_date, ['class'=>'form-control', 'readonly']) }} -
    -
    -
    -
    -
    - - - - - - - - - - - - -
    {{ __('diabetes_clinic.medication') }}
    - @if($clinic_registration->drug_id == 0) -

    {{ __('diabetes_clinic.no_medication_issued') }}

    - @else - - - - - - - - - - - @php - $drug_ids_array = explode(',', $clinic_registration->drug_id); - $dose_array = explode(',', $clinic_registration->dose); - $frequency_ids_array = explode(',', $clinic_registration->frequency_id); - $dispensed_array = explode(',', $clinic_registration->dispense_number); - @endphp - @for($i = 0; $i < count($drug_ids_array); $i++) - - - - - - - @endfor - -
    {{ __('diabetes_clinic.drug_name') }}{{ __('diabetes_clinic.dose') }}{{ __('diabetes_clinic.frequency') }}{{ __('diabetes_clinic.number_to_dispense') }}
    - {{ Form::text('drug_id', $drugs[$drug_ids_array[$i]], ['class' => 'form-control', 'readonly']) }} - - {{ Form::text('dose', $dose_array[$i], ['class' => 'form-control', 'readonly']) }} - - {{ Form::text('frequency_id', $dosage_frequencies[$frequency_ids_array[$i]], ['class' => 'form-control', 'readonly']) }} - - {{ Form::text('dispense_number', $dispensed_array[$i], ['class' => 'form-control', 'readonly']) }} -
    - @endif -
    -
    - - - - - - - - - - - -
    {{ __('diabetes_clinic.targets_and_patient_education') }}
    -
    -
    - - - - - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.hba1c') }} - {{ Form::text('hba1c', $clinic_registration->hba1c, ['class' => 'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.bp') }} - {{ Form::text('bp', $clinic_registration->bp, ['class' => 'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.cholesterol') }} - {{ Form::text('cholesterol', $clinic_registration->cholesterol, ['class' => 'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.waist_to_hip_ratio') }} - {{ Form::text('waist_hip_ratio', $clinic_registration->waist_hip_ratio, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    - - - - - - - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.view_overview_of_diabetes') }} - {{ Form::checkbox('overview_diabetes', 1, $clinic_registration->overview_diabetes, ['disabled']) }} - - {{ Form::text('overview_diabetes_date', $clinic_registration->overview_diabetes_date, ['class'=>'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.view_management_of_diabetes') }} - {{ Form::checkbox('management_diabetes', 1, $clinic_registration->management_diabetes, ['disabled']) }} - - {{ Form::text('management_diabetes_date', $clinic_registration->management_diabetes_date, ['class'=>'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.diet_review') }} - {{ Form::textarea('diet_review', $clinic_registration->diet_review, ['class'=>'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.comment') }} - {{ Form::textarea('comment', $clinic_registration->comment, ['class'=>'form-control', 'readonly']) }} -
    -
    -
    -
    -
    - -@endsection diff --git a/docker/statistics/Modules/Diabetes/Resources/views/diabetes_clinic/follow_up.blade.php b/docker/statistics/Modules/Diabetes/Resources/views/diabetes_clinic/follow_up.blade.php deleted file mode 100755 index 0c429c31..00000000 --- a/docker/statistics/Modules/Diabetes/Resources/views/diabetes_clinic/follow_up.blade.php +++ /dev/null @@ -1,614 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('diabetes_clinic.diabetes_follow_up') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - - {{ Form::open(['route' => 'diabetes_clinic.save_follow_up', 'data-toggle' => 'validator']) }} -
    - - - - - - - - - - - - -
    {{ __('diabetes_clinic.history_symptoms') }}
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.general_health') }}
    {{ __('diabetes_clinic.hypoglycaemic_episodes') }}{{ Form::checkbox('hypoglycaemic', 1) }}
    {{ __('diabetes_clinic.hyperglycaemic_episodes') }}{{ Form::checkbox('hyperglycaemic_episodes', 1) }}
    {{ __('diabetes_clinic.visual_symptoms') }}{{ Form::checkbox('visual_symptoms', 1) }}
    {{ __('diabetes_clinic.feet_sensation') }}{{ Form::checkbox('feet_sensation', 1) }}
    {{ __('diabetes_clinic.impotence') }}{{ Form::checkbox('impotence', 1) }}
    {{ __('diabetes_clinic.smoker') }}{{ Form::checkbox('smoker', 1) }}
    -
    -
    - - - - - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.hiv_status') }} - {{ Form::select('hiv_status', $hiv_status, '', ['class' => 'form-control']) }} -
    {{ __('diabetes_clinic.tb_status') }} - {{ Form::select('tb_status', $tb_status, '', ['class' => 'form-control']) }} -
    {{ __('diabetes_clinic.alcohol') }} - {{ Form::select('alcohol', $alcohol, '', ['class' => 'form-control']) }} -
    {{ __('diabetes_clinic.mood') }} - {{ Form::select('mood', $mood, '', ['class' => 'form-control']) }} -
    -
    -
    - - - - - - - - - -
    {{ __('diabetes_clinic.pneumococcal_immunisation_date') }} - {{ Form::text('immunisation_date', '', ['class'=>'form-control', 'id'=>'immunisation_date', 'readonly']) }} -
    {{ __('diabetes_clinic.comments') }} - {{ Form::textarea('comments', '', ['class'=>'form-control', 'rows' => 4]) }} -
    -
    -
    -
    -
    - - - - - - - - - - - - -
    {{ __('diabetes_clinic.examination_physical_symptoms') }}
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.height') }} - {{ Form::text('height', '', ['class' => 'form-control', 'id' => 'height']) }} -
    {{ __('diabetes_clinic.weight') }} - {{ Form::number('weight', '', ['class' => 'form-control', 'id' => 'weight']) }} -
    {{ __('diabetes_clinic.waist') }} - {{ Form::number('waist', '', ['class' => 'form-control']) }} -
    {{ __('diabetes_clinic.hip') }} - {{ Form::number('hip', '', ['class' => 'form-control']) }} -
    {{ __('diabetes_clinic.bp_lying') }} - {{ Form::number('bp_lying', '', ['class' => 'form-control']) }} -
    {{ __('diabetes_clinic.bp_standing') }} - {{ Form::number('bp_standing', '', ['class' => 'form-control']) }} -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.pulse_rate') }} - {{ Form::number('pulse_rate', '', ['class' => 'form-control']) }} -
    {{ __('diabetes_clinic.pulse_rhythm') }} - {{ Form::select('pulse_rhythm', $pulse_rhythm, '', ['class' => 'form-control']) }} -
    {{ __('diabetes_clinic.sensation') }} - {{ Form::select('sensation', $sensation, '', ['class' => 'form-control']) }} -
    {{ __('diabetes_clinic.pedal_pulses') }}{{ Form::checkbox('pedal_pulses', 1) }}
    {{ __('diabetes_clinic.feet_inspection') }}{{ Form::checkbox('feet_inspection', 1) }}
    {{ __('diabetes_clinic.visual_acuity') }}{{ Form::checkbox('visual_acuity', 1) }}
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.general_examination') }}
    {{ __('diabetes_clinic.fundoscopy') }} - {{ Form::select('fundoscopy', $fundoscopy, '', ['class' => 'form-control']) }} -
    {{ __('diabetes_clinic.injection_site_inspection') }} - {{ Form::select('injection_site_inspection', $injection_site_inspection, '', ['class' => 'form-control']) }} -
    {{ __('diabetes_clinic.comments') }} - {{ Form::textarea('examination_comments', '', ['class'=>'form-control', 'rows' => 4]) }} -
    {{ __('diabetes_clinic.bmi') }} - {{ Form::text('bmi', '', ['class' => 'form-control', 'readonly', 'id' => 'bmi']) }} -
    {{ __('diabetes_clinic.waist_hip_ration') }} - {{ Form::text('waist_hip_ratio', '', ['class' => 'form-control']) }} -
    -
    -
    -
    -
    - - - - - - - - - - - -
    {{ __('diabetes_clinic.investigations') }}
    -
    -
    - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.blood_glucose') }} - {{ Form::text('blood_glucose', '', ['class' => 'form-control']) }} -
    {{ __('diabetes_clinic.creatinine') }} - {{ Form::text('creatinine', '', ['class' => 'form-control']) }} -
    {{ __('diabetes_clinic.hdl_cholesterol') }} - {{ Form::text('hdl_cholesterol', '', ['class' => 'form-control']) }} -
    -
    -
    - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.ldl_cholesterol') }} - {{ Form::text('ldl_cholesterol', '', ['class' => 'form-control']) }} -
    {{ __('diabetes_clinic.total_cholesterol') }} - {{ Form::text('total_choresterol', '', ['class' => 'form-control']) }} -
    {{ __('diabetes_clinic.triglyceride') }} - {{ Form::text('triglyceride', '', ['class' => 'form-control']) }} -
    -
    -
    - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.urine_protein') }} - {{ Form::text('urine_protein', '', ['class' => 'form-control']) }} -
    {{ __('diabetes_clinic.urine_ketones') }} - {{ Form::text('urine_ketones', '', ['class' => 'form-control']) }} -
    {{ __('diabetes_clinic.hba1c') }} - {{ Form::text('hba1c', '', ['class' => 'form-control']) }} -
    -
    -
    -
    -
    - - - - - - - - - - - - -
    {{ __('diabetes_clinic.medication') }}
    - - - - - - - - - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.drug_name') }}{{ __('diabetes_clinic.dose') }}{{ __('diabetes_clinic.frequency') }}{{ __('diabetes_clinic.number_to_dispense') }}{{ __('diabetes_clinic.stock_status') }}
    - - - - - -
    - -
    - - -
    -
    -
    - - - - - - - - - - - - -
    {{ __('diabetes_clinic.other_advice_management') }}
    -
    -
    - - - - - - - - - - - - -
    {{ __('diabetes_clinic.patient_education') }}
    - - - - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.diet_overview') }}
    {{ __('diabetes_clinic.video_overview_of_diabetes') }} - {{ Form::checkbox('overview_diabetes', 1) }} - - {{ Form::text('overview_diabetes_date', '', ['class'=>'form-control', 'id'=>'overview_diabetes_date', 'readonly']) }} -
    {{ __('diabetes_clinic.video_management_of_diabetes') }} - {{ Form::checkbox('management_diabetes', 1) }} - - {{ Form::text('management_diabetes_date', '', ['class'=>'form-control', 'id'=>'management_diabetes_date', 'readonly']) }} -
    -
    -
    -
    - - - - - - - - - - - - -
    {{ __('diabetes_clinic.comments_follow_up') }}
    - - - - - - - - - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.diabetic_clinic_date') }} - {{ Form::text('diabetic_clinic_date', '', ['class'=>'form-control', 'id'=>'diabetic_clinic_date', 'readonly']) }} -
    {{ __('diabetes_clinic.eye_clinic_referral') }} - {{ Form::checkbox('eye_clinic_referral', 1) }} -
    {{ __('diabetes_clinic.psychological_assessment_referral') }} - {{ Form::checkbox('psychological_assessment_referral', 1) }} -
    {{ __('diabetes_clinic.chaplain_support_referral') }} - {{ Form::checkbox('chaplain_support_referral', 1) }} -
    {{ __('diabetes_clinic.other_clinic_follow_up') }} - {{ Form::textarea('other_clinic_follow_up', '', ['class'=>'form-control', 'rows' => 4]) }} -
    -
    -
    -
    -
    -

    -
    -
    -
    - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} -
    -
    -
    -
    - - {{ Form::close() }} - -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/Diabetes/Resources/views/diabetes_clinic/follow_up_details.blade.php b/docker/statistics/Modules/Diabetes/Resources/views/diabetes_clinic/follow_up_details.blade.php deleted file mode 100755 index 75d41da5..00000000 --- a/docker/statistics/Modules/Diabetes/Resources/views/diabetes_clinic/follow_up_details.blade.php +++ /dev/null @@ -1,492 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('diabetes_clinic.diabetes_follow_up_details') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    -
    -
    - - - - - - - - - - - - -
    {{ __('diabetes_clinic.history_symptoms') }}
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - impotence - - - - -
    {{ __('diabetes_clinic.general_health') }}
    {{ __('diabetes_clinic.hypoglycaemic_episodes') }}{{ Form::checkbox('hypoglycaemic', 1, $follow_up->hypoglycaemic, ['disabled']) }}
    {{ __('diabetes_clinic.hyperglycaemic_episodes') }}{{ Form::checkbox('hyperglycaemic_episodes', 1, $follow_up->hyperglycaemic_episodes, ['disabled']) }}
    {{ __('diabetes_clinic.visual_symptoms') }}{{ Form::checkbox('visual_symptoms', 1, $follow_up->visual_symptoms, ['disabled']) }}
    {{ __('diabetes_clinic.feet_sensation') }}{{ Form::checkbox('feet_sensation', 1, $follow_up->feet_sensation, ['disabled']) }}
    {{ __('diabetes_clinic.impotence') }}{{ Form::checkbox('impotence', 1, $follow_up->impotence, ['disabled']) }}
    {{ __('diabetes_clinic.smoker') }}{{ Form::checkbox('smoker', 1, $follow_up->smoker, ['disabled']) }}
    -
    -
    - - - - - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.hiv_status') }} - {{ Form::text('hiv_status', $follow_up->hiv_status, ['class'=>'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.tb_status') }} - {{ Form::text('tb_status', $follow_up->tb_status, ['class'=>'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.alcohol') }} - {{ Form::text('alcohol', $follow_up->alcohol, ['class'=>'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.mood') }} - {{ Form::text('mood', $follow_up->mood, ['class'=>'form-control', 'readonly']) }} -
    -
    -
    - - - - - - - - - -
    {{ __('diabetes_clinic.pneumococcal_immunisation_date') }} - {{ Form::text('immunisation_date', $follow_up->immunisation_date, ['class'=>'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.comments') }} - {{ Form::textarea('comments', $follow_up->comments, ['class'=>'form-control', 'readonly']) }} -
    -
    -
    -
    -
    - - - - - - - - - - - - -
    {{ __('diabetes_clinic.examination_physical_symptoms') }}
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.height') }} - {{ Form::text('height', $follow_up->height, ['class' => 'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.weight') }} - {{ Form::number('weight', $follow_up->weight, ['class' => 'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.waist') }} - {{ Form::number('waist', $follow_up->waist, ['class' => 'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.hip') }} - {{ Form::number('hip', $follow_up->hip, ['class' => 'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.bp_lying') }} - {{ Form::number('bp_lying', $follow_up->bp_lying, ['class' => 'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.bp_standing') }} - {{ Form::number('bp_standing', $follow_up->bp_standing, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.pulse_rate') }} - {{ Form::number('pulse_rate', $follow_up->pulse_rate, ['class' => 'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.pulse_rhythm') }} - {{ Form::text('pulse_rhythm', $follow_up->pulse_rhythm, ['class'=>'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.sensation') }} - {{ Form::text('sensation', $follow_up->sensation, ['class'=>'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.pedal_pulses') }}{{ Form::checkbox('pedal_pulses', 1, $follow_up->pedal_pulses, ['disabled']) }}
    {{ __('diabetes_clinic.feet_inspection') }}{{ Form::checkbox('feet_inspection', 1, $follow_up->feet_inspection, ['disabled']) }}
    {{ __('diabetes_clinic.visual_acuity') }}{{ Form::checkbox('visual_acuity', 1, $follow_up->visual_acuity, ['disabled']) }}
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.general_examination') }}
    {{ __('diabetes_clinic.fundoscopy') }} - {{ Form::text('fundoscopy', $follow_up->fundoscopy, ['class'=>'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.injection_site_inspection') }} - {{ Form::text('injection_site_inspection', $follow_up->injection_site_inspection, ['class'=>'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.comments') }} - {{ Form::textarea('examination_comments', $follow_up->examination_comments, ['class'=>'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.bmi') }} - {{ Form::text('bmi', $follow_up->bmi, ['class' => 'form-control', 'readonly', 'readonly']) }} -
    {{ __('diabetes_clinic.waist_hip_ration') }} - {{ Form::text('waist_hip_ratio', $follow_up->waist_hip_ratio, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    -
    - - - - - - - - - - - -
    {{ __('diabetes_clinic.investigations') }}
    -
    -
    - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.blood_glucose') }} - {{ Form::text('blood_glucose', $follow_up->blood_glucose, ['class' => 'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.creatinine') }} - {{ Form::text('creatinine', $follow_up->creatinine, ['class' => 'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.hdl_cholesterol') }} - {{ Form::text('hdl_cholesterol', $follow_up->hdl_cholesterol, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.ldl_cholesterol') }} - {{ Form::text('ldl_cholesterol', $follow_up->ldl_cholesterol, ['class' => 'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.total_cholesterol') }} - {{ Form::text('total_choresterol', $follow_up->total_choresterol, ['class' => 'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.triglyceride') }} - {{ Form::text('triglyceride', $follow_up->triglyceride, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.urine_protein') }} - {{ Form::text('urine_protein', $follow_up->urine_protein, ['class' => 'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.urine_ketones') }} - {{ Form::text('urine_ketones', $follow_up->urine_ketones, ['class' => 'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.hba1c') }} - {{ Form::text('hba1c', $follow_up->hba1c, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    -
    - - - - - - - - - - - - -
    {{ __('diabetes_clinic.medication') }}
    - @if($follow_up->drug_id == 0) -

    {{ __('diabetes_clinic.no_issued_medication') }}

    - @else - - - - - - - - - - - @php - $drug_ids_array = explode(',', $follow_up->drug_id); - $dose_array = explode(',', $follow_up->dose); - $frequency_ids_array = explode(',', $follow_up->frequency_id); - $dispensed_array = explode(',', $follow_up->dispense_number); - @endphp - @for($i = 0; $i < count($drug_ids_array); $i++) - - - - - - - @endfor - -
    {{ __('diabetes_clinic.drug_name') }}{{ __('diabetes_clinic.dose') }}{{ __('diabetes_clinic.frequency') }}{{ __('diabetes_clinic.number_to_dispense') }}
    - {{ Form::text('drug_id', $drugs[$drug_ids_array[$i]], ['class' => 'form-control', 'readonly']) }} - - {{ Form::text('dose', $dose_array[$i], ['class' => 'form-control', 'readonly']) }} - - {{ Form::text('frequency_id', $dosage_frequencies[$frequency_ids_array[$i]], ['class' => 'form-control', 'readonly']) }} - - {{ Form::text('dispense_number', $dispensed_array[$i], ['class' => 'form-control', 'readonly']) }} -
    - @endif -
    -
    - - - - - - - - - - - - -
    {{ __('diabetes_clinic.other_advice_management') }}
    -
    -
    - - - - - - - - - - - - -
    {{ __('diabetes_clinic.patient_education') }}
    - - - - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.diet_overview') }}
    {{ __('diabetes_clinic.video_overview_of_diabetes') }} - {{ Form::checkbox('overview_diabetes', 1, $follow_up->overview_diabetes, ['disabled']) }} - - {{ Form::text('overview_diabetes_date', $follow_up->overview_diabetes_date, ['class'=>'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.video_management_of_diabetes') }} - {{ Form::checkbox('management_diabetes', 1, $follow_up->management_diabetes, ['disabled']) }} - - {{ Form::text('management_diabetes_date', $follow_up->management_diabetes_date, ['class'=>'form-control', 'readonly']) }} -
    -
    -
    -
    - - - - - - - - - - - - -
    {{ __('diabetes_clinic.comments_follow_up') }}
    - - - - - - - - - - - - - - - - - - - - - -
    {{ __('diabetes_clinic.diabetic_clinic_date') }} - {{ Form::text('diabetic_clinic_date', $follow_up->diabetic_clinic_date, ['class'=>'form-control', 'readonly']) }} -
    {{ __('diabetes_clinic.eye_clinic_referral') }} - {{ Form::checkbox('eye_clinic_referral', 1, $follow_up->eye_clinic_referral, ['disabled']) }} -
    {{ __('diabetes_clinic.psychological_assessment_referral') }} - {{ Form::checkbox('psychological_assessment_referral', 1, $follow_up->psychological_assessment_referral, ['disabled']) }} -
    {{ __('diabetes_clinic.chaplain_support_referral') }} - {{ Form::checkbox('chaplain_support_referral', 1, $follow_up->chaplain_support_referral) }} -
    {{ __('diabetes_clinic.other_clinic_follow_up') }} - {{ Form::textarea('other_clinic_follow_up', $follow_up->other_clinic_follow_up, ['class'=>'form-control', 'readonly']) }} -
    -
    -
    -
    -
    -
    - -@endsection - diff --git a/docker/statistics/Modules/Diabetes/Routes/api.php b/docker/statistics/Modules/Diabetes/Routes/api.php deleted file mode 100644 index b2c8e36b..00000000 --- a/docker/statistics/Modules/Diabetes/Routes/api.php +++ /dev/null @@ -1,18 +0,0 @@ -get('/diabetes', function () { - return "Diabetes"; -}); diff --git a/docker/statistics/Modules/Diabetes/Routes/web.php b/docker/statistics/Modules/Diabetes/Routes/web.php deleted file mode 100644 index f06d140b..00000000 --- a/docker/statistics/Modules/Diabetes/Routes/web.php +++ /dev/null @@ -1,13 +0,0 @@ - ['auth', 'disablebackbutton', 'user-locale','subscription-tracking', 'password-expiry']], function () { - /* Diabetes Clinic */ - Route::any('/diabetes_clinic/follow_up', 'DiabetesClinicController@follow_up')->name('diabetes_clinic.follow_up'); - Route::any('/diabetes_clinic/save_follow_up', 'DiabetesClinicController@save_follow_up')->name('diabetes_clinic.save_follow_up'); - Route::any('/diabetes_clinic/follow_up_details/{id}', 'DiabetesClinicController@follow_up_details'); - Route::any('/diabetes_clinic/get_dispensable_drug_units/{drug_id}', 'DiabetesClinicController@get_dispensable_drug_units'); - Route::any('/diabetes_clinic/clinic_registration', 'DiabetesClinicController@clinic_registration')->name('diabetes_clinic.clinic_registration'); - Route::any('/diabetes_clinic/save_clinic_registration', 'DiabetesClinicController@save_clinic_registration')->name('diabetes_clinic.save_clinic_registration'); -}); \ No newline at end of file diff --git a/docker/statistics/Modules/Diabetes/bitbucket-pipelines.yml b/docker/statistics/Modules/Diabetes/bitbucket-pipelines.yml deleted file mode 100644 index e850a8fd..00000000 --- a/docker/statistics/Modules/Diabetes/bitbucket-pipelines.yml +++ /dev/null @@ -1,19 +0,0 @@ -image: alpine/git:latest - -pipelines: - branches: - main: - - step: - name: Merge To Beta - script: - - git remote set-url origin https://Kabricks:${APP_SECRET}@bitbucket.org/dcsammi/${BITBUCKET_REPO_SLUG} - - git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*" - - git fetch - - git checkout beta - - git merge main - - git commit --amend -m "[skip ci] Merge changes from main" - - git push - - step: - name: Deploy To Test - script: - - echo "Ready to deploy to demo or production!" diff --git a/docker/statistics/Modules/Diabetes/module.json b/docker/statistics/Modules/Diabetes/module.json deleted file mode 100644 index 9224848c..00000000 --- a/docker/statistics/Modules/Diabetes/module.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "Diabetes", - "alias": "diabetes", - "description": "Diabetes", - "keywords": [], - "priority": 0, - "providers": [ - "Modules\\Diabetes\\Providers\\DiabetesServiceProvider" - ], - "files": [] -} diff --git a/docker/statistics/Modules/Expenses/Config/config.php b/docker/statistics/Modules/Expenses/Config/config.php deleted file mode 100644 index 6b8abdec..00000000 --- a/docker/statistics/Modules/Expenses/Config/config.php +++ /dev/null @@ -1,5 +0,0 @@ - 'Expenses' -]; diff --git a/docker/statistics/Modules/Expenses/Http/Controllers/Controller.php b/docker/statistics/Modules/Expenses/Http/Controllers/Controller.php deleted file mode 100755 index 6db5c208..00000000 --- a/docker/statistics/Modules/Expenses/Http/Controllers/Controller.php +++ /dev/null @@ -1,13 +0,0 @@ -middleware('auth'); - $this->middleware('permission:Payments-create-payment-item'); - $this->middleware('permission:Payments-edit-payment-item'); - $this->middleware('permission:Payments-list-payment-items'); - $this->middleware('permission:Payments-delete-payment-item'); - $this->middleware('permission:Payments-activate-payment-item'); - $this->middleware('permission:Payments-make-payment'); - $this->middleware('permission:Payments-view-payments-history'); - } - - public function index() - { - - $hospital_information = HospitalInformation::first(); - $suppliers = Supplier::get(); - $banks = DB::table('chart_of_accounts')->whereNull('deleted_at')->where('type', 4)->get()->toArray(); - $items = DB::table('payment_items')->whereNull('deleted_at')->get()->toArray(); - $expense_accounts = DB::table('chart_of_accounts')->whereNull('deleted_at')->whereIn('type', [2])->get()->toArray(); - - return view('expenses::payments.index', compact('banks', 'items', 'suppliers', 'hospital_information', 'expense_accounts')); - } - - public function make_payment(Request $request) - { - $validator = Validator::make($request->all(), [ - 'account_balance' => 'required', - 'bank' => 'required', - 'memo' => 'required', - 'item_id' => 'required', - 'expense_date' => 'required', - 'total_amount' => 'required', - ]); - - $is_payment_of_greater_expense_allowed = is_payment_of_greater_expense_allowed(); - - //if the stre@mline is set to not allow banks with less balance pay for bigger expenses then fail & go back - if (($is_payment_of_greater_expense_allowed == 0) && ((int)$request->total_amount > (int)$request->account_balance)) { - flash('Your account balance is low.')->error(); - return back()->withInput(); - } - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - - $logged_in_user_id = Auth::user()->id; - - // actual number of records saved because those with missing fields are disregarded - $payment_counter = 0; - $memo = isset($request->memo) ? $request->memo : "N/A"; - $trans_id = generateReceiptNumberFromDB($memo); - $qty_array = $request->quantity; - $amt_array = $request->amount; - $item_array = $request->item_id; - $expense_acc_id_array = $request->expense_acc_id; - $vendor_array = $request->supplier_id; - $unit_cost_array = $request->amount; - $item_memo_array = $request->item_memo; - - $account_balance = ((int)$request->account_balance - (int)$request->total_amount); - $bank = ChartOfAccount::where('id', $request->bank)->update(['balance' => $account_balance]); - - // insert this payment - $expense_date = Carbon::parse($request->expense_date)->toDateString(); - $account_balance_record_on_expense_date = get_latest_banking_record_based_on_transaction_date($request->bank, $expense_date); - $account_balance_on_expense_date = $account_balance_record_on_expense_date ? (int)$account_balance_record_on_expense_date->account_balance : 0; - $account_balance_on_expense_date_after_payment = ($account_balance_on_expense_date - (int)$request->total_amount); - $last_insert_id = capture_bank_record( - 'PAYMENT', - $expense_date, - $request->bank, - implode(',', $expense_acc_id_array), - $account_balance_on_expense_date_after_payment, - 0, - (int)$request->total_amount, - $request->memo, - $trans_id - ); - - update_banking_record_balances($expense_date, $request->bank, $last_insert_id, $account_balance_on_expense_date_after_payment); - - for ($x = 0; $x < count($qty_array); $x++) { - if ($qty_array[$x]) { - $payment = new Payment; - $current = ChartOfAccount::where('id', $expense_acc_id_array[$x])->first(); - $new = ChartOfAccount::where('id', $expense_acc_id_array[$x])->update(['balance' => ($amt_array[$x] + $current->balance)]); - - $payment->item_id = $item_array[$x]; - $payment->vendor = $vendor_array[$x]; - $payment->unit_cost = $unit_cost_array[$x]; - $payment->amount = $amt_array[$x]; - $payment->quantity = $qty_array[$x]; - $payment->memo = $memo; - $payment->item_memo = $item_memo_array[$x]; - $payment->account_balance = $account_balance_on_expense_date_after_payment; - $payment->transaction_id = $trans_id; - $payment->account_id = $request->bank; - $payment->created_by = $logged_in_user_id; - $payment->expense_date = Carbon::parse($request->expense_date)->toDateTimeString(); - $payment->expense_account = $expense_acc_id_array[$x]; //get_name($item_array[$x], 'id', 'account_id', 'payment_items'); - - $track_receipt = new TrackReceipt; - $track_receipt->created_by = $logged_in_user_id; - $track_receipt->reason = "Payment transaction of id " . $trans_id; - - try { - if (!is_null($new) && !is_null($bank)) { - $payment->save(); - $track_receipt->save(); - ++$payment_counter; - } - - ++$payment_counter; - } catch (QueryException $e) { - // - } - } - } - flash(" Payment has been successfully made")->success(); - return redirect()->route('payments.payment_details', $trans_id); - } - } - - public function history(Request $request) - { - $payments = []; - $suppliers = Supplier::get(); - $staff_members = User::get(); - $display = expense_report_label_setter($request); - $today = Carbon::today()->toDateString(); - $yesterday = Carbon::yesterday()->toDateString(); - $hospital_information = HospitalInformation::first(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - - if ($request->vendor == "ALL VENDORS") { - if ($request->staff_member == "ALL STAFF") { - switch ($request->dates) { - case 'today': - $payments = DB::table('payments')->whereNull('deleted_at')->whereDate('expense_date', $today)->groupBy('transaction_id')->selectRaw('*, sum(amount) as sum') - ->orderBy('id', 'asc')->get()->toArray(); - break; - case 'yesterday': - $payments = DB::table('payments')->whereNull('deleted_at')->whereDate('expense_date', $yesterday)->groupBy('transaction_id')->selectRaw('*, sum(amount) as sum') - ->orderBy('id', 'asc')->get()->toArray(); - break; - case 'custom_date': - $payments = DB::table('payments')->whereNull('deleted_at')->whereDate('expense_date', $start)->groupBy('transaction_id')->selectRaw('*, sum(amount) as sum') - ->orderBy('id', 'asc')->get()->toArray(); - break; - case 'custom_date_range': - $payments = DB::table('payments')->whereNull('deleted_at')->whereBetween('expense_date', [$start, $end])->groupBy('transaction_id')->selectRaw('*, sum(amount) as sum') - ->orderBy('id', 'asc')->get()->toArray(); - break; - } - } else { - switch ($request->dates) { - case 'today': - $payments = DB::table('payments')->whereNull('deleted_at')->whereDate('expense_date', $today)->where('created_by', $request->staff_member)->groupBy('transaction_id')->selectRaw('*, sum(amount) as sum') - ->orderBy('id', 'asc')->get()->toArray(); - break; - case 'yesterday': - $payments = DB::table('payments')->whereNull('deleted_at')->whereDate('expense_date', $yesterday)->where('created_by', $request->staff_member)->groupBy('transaction_id')->selectRaw('*, sum(amount) as sum') - ->orderBy('id', 'asc')->get()->toArray(); - break; - case 'custom_date': - $payments = DB::table('payments')->whereNull('deleted_at')->whereDate('expense_date', $start)->where('created_by', $request->staff_member)->groupBy('transaction_id')->selectRaw('*, sum(amount) as sum') - ->orderBy('id', 'asc')->get()->toArray(); - break; - case 'custom_date_range': - $payments = DB::table('payments')->whereNull('deleted_at')->whereBetween('expense_date', [$start, $end])->where('created_by', $request->staff_member)->groupBy('transaction_id')->selectRaw('*, sum(amount) as sum') - ->orderBy('id', 'asc')->get()->toArray(); - break; - } - } - } else { - if ($request->staff_member == "ALL STAFF") { - switch ($request->dates) { - case 'today': - $payments = DB::table('payments')->whereNull('deleted_at')->where('vendor', $request->vendor)->whereDate('expense_date', $today)->groupBy('transaction_id')->selectRaw('*, sum(amount) as sum') - ->orderBy('id', 'asc')->get()->toArray(); - break; - case 'yesterday': - $payments = DB::table('payments')->whereNull('deleted_at')->where('vendor', $request->vendor)->whereDate('expense_date', $yesterday)->groupBy('transaction_id')->selectRaw('*, sum(amount) as sum') - ->orderBy('id', 'asc')->get()->toArray(); - break; - case 'custom_date': - $payments = DB::table('payments')->whereNull('deleted_at')->where('vendor', $request->vendor)->whereDate('expense_date', $start)->groupBy('transaction_id')->selectRaw('*, sum(amount) as sum') - ->orderBy('id', 'asc')->get()->toArray(); - break; - case 'custom_date_range': - $payments = DB::table('payments')->whereNull('deleted_at')->where('vendor', $request->vendor)->whereBetween('expense_date', [$start, $end])->groupBy('transaction_id')->selectRaw('*, sum(amount) as sum') - ->orderBy('id', 'asc')->get()->toArray(); - break; - } - } else { - switch ($request->dates) { - case 'today': - $payments = DB::table('payments')->whereNull('deleted_at')->where('vendor', $request->vendor)->whereDate('expense_date', $today)->where('created_by', $request->staff_member)->groupBy('transaction_id')->selectRaw('*, sum(amount) as sum') - ->orderBy('id', 'asc')->get()->toArray(); - break; - case 'yesterday': - $payments = DB::table('payments')->whereNull('deleted_at')->where('vendor', $request->vendor)->whereDate('expense_date', $yesterday)->where('created_by', $request->staff_member)->groupBy('transaction_id')->selectRaw('*, sum(amount) as sum') - ->orderBy('id', 'asc')->get()->toArray(); - break; - case 'custom_date': - $payments = DB::table('payments')->whereNull('deleted_at')->where('vendor', $request->vendor)->whereDate('expense_date', $start)->where('created_by', $request->staff_member)->groupBy('transaction_id')->selectRaw('*, sum(amount) as sum') - ->orderBy('id', 'asc')->get()->toArray(); - break; - case 'custom_date_range': - $payments = DB::table('payments')->whereNull('deleted_at')->where('vendor', $request->vendor)->whereBetween('expense_date', [$start, $end])->where('created_by', $request->staff_member)->groupBy('transaction_id')->selectRaw('*, sum(amount) as sum') - ->orderBy('id', 'asc')->get()->toArray(); - break; - } - } - } - - return view('expenses::payments.history', compact('payments', 'hospital_information', 'staff_members', 'suppliers', 'display', 'request')); - } - - public function detail($trans_id) - { - $hospital_information = HospitalInformation::first(); - $payment = DB::table('payments')->whereNull('deleted_at')->where('transaction_id', $trans_id)->get()->toArray(); - if (count($payment) > 0) { - foreach ($payment as $item) { - $memo = $item->memo; - $date = $item->created_at; - $expense_date = $item->expense_date; - } - } - return view('expenses::payments.details', compact('payment', 'hospital_information', 'memo', 'date', 'expense_date', 'trans_id')); - } - - public function print_payment_voucher_detail(Request $request) - { - $hospital_information = json_decode($request->hospital_information); - $payment = json_decode($request->payment); - $memo = $request->memo; - $date = $request->created_at; - $expense_date = $request->expense_date; - $trans_id = $request->trans_id; - $pdf = SnappyPDF::loadView("expenses::payments.print_voucher_details", compact('payment', 'hospital_information', 'memo', 'date', 'expense_date', 'trans_id')) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('footer-html', ''.config('app.name').' - Printed On ' . date('Y-m-d') . ' By ' . auth()->user()->first_name . " " . auth()->user()->last_name . ''); - return $pdf->inline('Payment Voucher' . date(" d-m-y h:ia") . '.pdf'); - } - - public function edit_payments($trans_id) - { - $hospital_information = HospitalInformation::first(); - $suppliers = Supplier::get(); - $items = DB::table('payment_items')->whereNull('deleted_at')->get()->toArray(); - $expense_and_payable_accounts = DB::table('chart_of_accounts')->whereIn('type', [2, 6, 9])->pluck('name', 'id')->toArray(); - $payments_total = 0; - - $payments = DB::table('payments')->whereNull('deleted_at')->where('transaction_id', $trans_id)->orderBy('id', 'asc')->get()->toArray(); - if (count($payments) > 0) { - foreach ($payments as $item) { - $memo = $item->memo; - $date = $item->created_at; - $expense_date = $item->expense_date; - $bank = $item->account_id; - $payments_total += (int)$item->amount; - $max_id = $item->id; - } - } - - $today = Carbon::today()->toDateString(); - $latest_bank_record = get_latest_banking_record_based_on_transaction_date($bank, $today); - $bank_balance = $latest_bank_record->account_balance; - - return view('expenses::payments.details_edit', compact('trans_id', 'max_id', 'payments', 'payments_total', 'hospital_information', 'memo', 'date', 'expense_date', 'trans_id', 'bank', 'bank_balance', 'items', 'suppliers', 'expense_and_payable_accounts')); - } - - public function update_payments(Request $request) - { - $validator = Validator::make($request->all(), [ - 'account_balance' => 'required', - 'bank' => 'required', - 'memo' => 'required', - 'item_id' => 'required', - 'expense_date' => 'required', - 'total_amount' => 'required', - ]); - - if ((int)$request->total_amount <= (int)$request->account_balance) { - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth::user()->id; - - $qty_array = $request->quantity; - $amt_array = $request->amount; - $item_array = $request->item_id; - $expense_acc_id_array = $request->expense_acc_id; - $vendor_array = $request->supplier_id; - $unit_cost_array = $request->amount; - - $expense_date = Carbon::parse($request->expense_date)->toDateString(); // same as the one in the db since edit is blocked on UI - - // simply editing the past records - $past_total_expense = 0; - $past_total_expense_update = 0; - $payment_index = 0; - $past_payments = Payment::where('transaction_id', $request->trans_id)->whereNull('deleted_at')->orderBy('id', 'asc')->get(); - if (count($past_payments) > 0) { - foreach ($past_payments as $payment) { - $past_total_expense += $payment->amount; - $past_total_expense_update += $amt_array[$payment_index]; - - // if changes have been submitted - $payment_copy = clone $payment; - $payment->quantity = $qty_array[$payment_index]; - $old_payment_amount = $payment->amount; - $new_payment_amount = $amt_array[$payment_index]; - $payment->amount = $new_payment_amount; - $payment->item_id = $item_array[$payment_index]; - $payment->expense_account = $expense_acc_id_array[$payment_index]; - $payment->vendor = $vendor_array[$payment_index]; - $payment->unit_cost = $unit_cost_array[$payment_index]; - if ($payment_copy == $payment) { - continue; - } else { - $bill_id = $payment->bill_id; - if ($bill_id != null) { - $bill = HospitalBill::where('id', $bill_id)->first(); - if ($bill) { - $bill->balance = $bill->balance + $old_payment_amount - $new_payment_amount; - $bill->updated_by = $logged_in_user_id; - $bill->update(); - flash("Bill (" . $bill->bill_number . ") has been updated")->success(); - } - } - $payment->updated_by = $logged_in_user_id; - $payment->update(); - flash("Payment (" . $payment->id . ") has been successfully updated")->success(); - } - $payment_index++; - } - - // if total payment changed, the bank payment record needs an update (amount) - if ($past_total_expense != $past_total_expense_update) { - $past_bank_records = Banking::where('trans_id', $request->trans_id) - ->whereNull('deleted_at') - ->where('trans_type', 'PAYMENT') - ->get(); // expect one record - if (count($past_bank_records) > 0) { - foreach ($past_bank_records as $record) { - $account_balance_record_on_expense_date = get_latest_banking_record_based_on_transaction_date($record->bank, $expense_date); - $account_balance_on_expense_date = (int)$account_balance_record_on_expense_date->account_balance; - $account_balance_on_expense_date_after_payment = ($account_balance_on_expense_date - $past_total_expense_update); - - $record->debit = $past_total_expense_update; - $record->account_balance = $account_balance_on_expense_date_after_payment; - $record->update(); - flash("Bank Payment record: " . $record->id . " updated!"); - - // use the bank record before the one just deleted - $previous_bank_record = Banking::where('bank', $record->bank) - ->whereNull('deleted_at') - ->where('id', '<', $record->id) - ->orderBy('id', 'desc') - ->first(); - - if ($previous_bank_record) { - update_banking_record_balances(Carbon::parse($previous_bank_record->trans_date)->toDateString(), $record->bank, $previous_bank_record->id, $previous_bank_record->account_balance); - } else { - update_banking_record_balances($expense_date, $record->bank, $record->id, $account_balance_on_expense_date_after_payment); - } - flash("Payment has been deleted successfully from Bank: " . get_name($record->bank, 'id', 'name', 'chart_of_accounts'))->success(); - } - } - } - } - return redirect()->route('payments.payment_details', $request->trans_id); - } - } else { - flash('Your account balance is low.')->error(); - return back()->withInput(); - } - } - - public function delete_payments(Request $request) - { - $logged_in_user_id = Auth::user()->id; - - // deleting the past records - $past_total_expense = 0; - $past_payments = Payment::where('transaction_id', $request->trans_id)->whereNull('deleted_at')->orderBy('id', 'asc')->get(); - if (count($past_payments) > 0) { - foreach ($past_payments as $payment) { - $past_total_expense += $payment->amount; - - $payment->updated_by = $logged_in_user_id; - $payment->update(); - $payment->delete(); - flash("Payment (" . $payment->id . ") has been successfully deleted")->success(); - } - - // delete related bank records - if ($past_total_expense > 0) { - $past_bank_records = Banking::where('trans_id', $request->trans_id) - ->whereNull('deleted_at') - ->where('trans_type', 'PAYMENT') - ->get(); // expect one record - if (count($past_bank_records) > 0) { - foreach ($past_bank_records as $record) { - $expense_date = Carbon::parse($record->trans_date)->toDateString(); - $account_balance_record_on_expense_date = get_latest_banking_record_based_on_transaction_date($record->bank, $expense_date); - $account_balance_on_expense_date = (int)$account_balance_record_on_expense_date->account_balance; - $account_balance_on_expense_date_after_payment = ($account_balance_on_expense_date - $past_total_expense); - - $record->updated_by = $logged_in_user_id; - $record->update(); - $record->delete(); - flash("Bank Payment record: " . $record->id . " deleted!")->success(); - - // use the bank record before the one just deleted - $previous_bank_record = Banking::where('bank', $record->bank) - ->whereNull('deleted_at') - ->where('id', '<', $record->id) - ->orderBy('id', 'desc') - ->first(); - - if ($previous_bank_record) { - flash("Recursive update based on previous_bank_record: " . $previous_bank_record->id . "!")->success(); - update_banking_record_balances(Carbon::parse($previous_bank_record->trans_date)->toDateString(), $record->bank, $previous_bank_record->id, $previous_bank_record->account_balance); - } else { - flash("Recursive update based on current_bank_record: " . $record->id . "!")->success(); - update_banking_record_balances($expense_date, $record->bank, $record->id, $account_balance_on_expense_date_after_payment); - } - } - } - } - return 'success'; - } - return 'fail'; - } - - public function get_account_balance(Request $request) - { - $acc = DB::table('chart_of_accounts')->where('id', $request->bank_id)->get()->toArray(); - return $acc; - } - - public function __get_payment_item_details(Request $request) - { - - $item = DB::table('payment_items')->where('id', $request->item_id)->get()->toArray(); - foreach ($item as $i) { - $account = get_name($i->account_id, 'id', 'name', 'chart_of_accounts'); - $unit_cost = $i->unit_cost; - } - return array($item, $account, $unit_cost); - } - - public function get_payment_item_details(Request $request) - { - - $response_text = ""; - - $item = DB::table('payment_items')->where('id', $request->item_id)->first(); - - $response_text .= "
    "; - - $response_text .= "
    "; - // $response_text .= ""; - $response_text .= ""; - $response_text .= "
    "; - - $response_text .= "
    "; - // $response_text .= ""; - $response_text .= ""; - $response_text .= "
    "; - - $response_text .= "
    "; - // $response_text .= ""; - $response_text .= ""; - $response_text .= ""; - $response_text .= ""; - - $response_text .= "
    "; - - $response_text .= "
    "; - - return $response_text; - } - - public function get_expense_acc(Request $request) - { - - $item = PaymentItem::where('id', $request->item_id)->first(); - $expense_acc = ChartOfAccount::where('id', $item->account_id)->first(); - $payable_acc = ChartOfAccount::where('id', $item->payable_account)->first(); - - return array($expense_acc, $payable_acc); - } - - public function total_price(Request $request) - { - - $unit_cost = get_name($request->item_id, 'id', 'unit_cost', 'payment_items'); - $quantity = $request->quantity; - $amount = (int)$unit_cost * (int)$quantity; - return array($amount, $unit_cost); - } - - public function store_bill_payment(Request $request) { - $logged_in_user = Auth::id(); - - $bill_update = HospitalBill::find($request->bill_id); - - $payment_memo = (isset($request->payment_memo) && $request->payment_memo != "") ? $request->payment_memo : "N/A"; - - $track_receipt = new TrackReceipt; - $track_receipt->reason = "Bill Payment on Bill number " . $bill_update->bill_number; - $track_receipt->created_by = $logged_in_user; - $track_receipt->save(); - $receipt_number = sprintf("%04u", $track_receipt->id); - - $bill_update->balance = (int)$request->bill_balance; - - $date_paid_history = unserialize($bill_update->date_paid_history); - array_push($date_paid_history, $request->payment_date); - $date_paid_serial = serialize($date_paid_history); - - $amount_paid_history = unserialize($bill_update->amount_paid_history); - array_push($amount_paid_history, (int)$request->amount_to_pay); - $amount_paid_serial = serialize($amount_paid_history); - - $staff_incharge_history = unserialize($bill_update->staff_incharge_history); - array_push($staff_incharge_history, Auth::id()); - $staff_in_charge_serial = serialize($staff_incharge_history); - - $receipt_history = unserialize($bill_update->receipt_history); - array_push($receipt_history, $receipt_number); - $receipt_serial = serialize($receipt_history); - - $balance_history = unserialize($bill_update->balance_history); - array_push($balance_history, (int)$request->bill_balance); - $balance_serial = serialize($balance_history); - - $bill_update->amount_paid_history = $amount_paid_serial; - $bill_update->date_paid_history = $date_paid_serial; - $bill_update->staff_incharge_history = $staff_in_charge_serial; - $bill_update->receipt_history = $receipt_serial; - $bill_update->balance_history = $balance_serial; - - $bill_update->payment_status = 1; - $bill_update->updated_by = $logged_in_user; - $bill_update->update(); - - clearBill($request->bill_id); - - $item_id_array = explode(',', $bill_update->item_ids); - $item_accounts = ($bill_update->item_accounts != '' && $bill_update->item_accounts != null) ? $bill_update->item_accounts : '' . $bill_update->payable_account; - $items_quantity_array = explode(',', $bill_update->item_quantities); - $items_amount_array = explode(',', $bill_update->item_subtotals); - - $account_balance = ((int)$request->current_account_balance - (int)$request->amount_to_pay); - ChartOfAccount::where('id', $request->bank_account)->update(['balance' => $account_balance]); - - // insert this payment - $payment_date = Carbon::parse($request->payment_date)->toDateString(); - $account_balance_record_on_expense_date = get_latest_banking_record_based_on_transaction_date($request->bank_account, $payment_date); - $account_balance_on_expense_date = (int)$account_balance_record_on_expense_date->account_balance; - $account_balance_on_expense_date_after_payment = ($account_balance_on_expense_date - (int)$request->amount_to_pay); - $last_insert_id = capture_bank_record( - 'PAYMENT', - $payment_date, - $request->bank_account, - $item_accounts, - $account_balance_on_expense_date_after_payment, - 0, - (int)$request->amount_to_pay, - $payment_memo, - $receipt_number - ); - - update_banking_record_balances($payment_date, $request->bank_account, $last_insert_id, $account_balance_on_expense_date_after_payment); - - $bill_payment = new Payment; - $bill_payment->item_id = $item_id_array[0]; - $bill_payment->vendor = $bill_update->vendor; - $bill_payment->unit_cost = get_name($item_id_array[0], 'id', 'unit_cost', 'payment_items'); - $bill_payment->amount = (int)$request->amount_to_pay; - $bill_payment->quantity = $items_quantity_array[0]; - $bill_payment->memo = $payment_memo; - $bill_payment->account_balance = $account_balance; - $bill_payment->transaction_id = $receipt_number; - $bill_payment->account_id = $request->bank_account; - $bill_payment->created_by = $logged_in_user; - $bill_payment->expense_date = Carbon::parse($request->payment_date)->toDateTimeString(); - $bill_payment->bill_id = $request->bill_id; - - if ($bill_update->bill_type != "ASSETS") { - $bill_payment->expense_account = get_name($item_id_array[0], 'id', 'account_id', 'payment_items'); - } - - $bill_payment->save(); - - $accounts_payable_balance = ChartOfAccount::find(14); - ChartOfAccount::where('id', 14)->update(['balance' => (int)$accounts_payable_balance->balance - (int)$request->amount_to_pay]); - - return (int)$request->bill_balance; - } - - public function create_bills() - { - - $suppliers = Supplier::orderBy('name', 'asc')->get(); - $staff_members = User::orderBy('first_name', 'asc')->get(); - $payments = []; - $banks = DB::table('chart_of_accounts')->whereNull('deleted_at')->where('type', 4)->orderBy('name', 'asc')->get()->toArray(); - $items = DB::table('payment_items')->whereNull('deleted_at')->orderBy('name', 'asc')->get()->toArray(); - $hospital_information = HospitalInformation::first(); - - return view('expenses::payments.bills.create', compact( - 'staff_members', - 'suppliers', - 'hospital_information', - 'payments', - 'banks', - 'items' - )); - } - - public function edit_bill($id) - { - $suppliers = Supplier::orderBy('name', 'asc')->pluck('name', 'id')->prepend('-select-', '')->toArray(); - $staff_members = User::orderBy('first_name', 'asc')->get(); - $banks = DB::table('chart_of_accounts')->whereNull('deleted_at')->where('type', 4)->orderBy('name', 'asc')->get()->toArray(); - $payment_items = PaymentItem::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $chart_of_accounts = ChartOfAccount::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $option_items_array = DB::table('payment_items')->whereNull('deleted_at')->orderBy('name', 'asc')->get()->toArray(); - $option_suppliers_array = DB::table('suppliers')->where('available', 1)->whereNull('deleted_at')->orderBy('name', 'asc')->get()->toArray(); - $hospital_information = HospitalInformation::first(); - $bill = HospitalBill::find($id); - $payments = Payment::where('bill_id', $id)->get(); - - return view('expenses::payments.bills.edit', compact( - 'staff_members', - 'suppliers', - 'hospital_information', - 'payments', - 'option_items_array', - 'chart_of_accounts', - 'option_suppliers_array', - 'banks', - 'payment_items', - 'bill' - )); - } - - public function update_bill(Request $request, $id) - { - - $validator = Validator::make($request->all(), [ - 'vendor' => 'required', - 'bill_date' => 'required', - 'bill_number' => 'required', - 'bill_due_date' => 'required', - 'bill_memo' => 'required', - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - if ($request->bill_action == 'save') { - - $logged_in_user = Auth::id(); - $bill_date = Carbon::parse($request->bill_date)->toDateString(); - $bill_due_date = Carbon::parse($request->bill_due_date)->toDateString(); - - $bill = HospitalBill::find($id); - $bill->vendor = $request->vendor; - $bill->bill_date = $bill_date; - $bill->bill_term = $request->bill_term; - $bill->bill_memo = $request->bill_memo; - $bill->bill_number = $request->bill_number; - $bill->bill_due_date = $bill_due_date; - $bill->total_amount = (int)$request->total_amount; - $bill->item_ids = implode(',', $request->item_id); - $bill->item_accounts = implode(',', $request->expense_acc_id); - $bill->item_quantities = implode(',', $request->quantity); - $bill->item_subtotals = implode(',', $request->amount); - $bill->payable_account = implode(',', $request->payable_acc_id); - $bill->created_by = $logged_in_user; - $bill->bill_type = 'PAY'; - - // update the bill balance - $item_amounts_paid = array_map('intval', explode(',', $bill->item_amount_paid)); - $amount_paid = array_sum($item_amounts_paid); - $bill->balance = (int)$request->total_amount - $amount_paid; - - $track_invoice = new TrackInvoice; - $track_invoice->reason = $request->bill_memo; - $track_invoice->created_by = $logged_in_user; - - if ($bill->save() && $track_invoice->save()) { - - flash('Bill has successfully been Updated.')->info(); - } else { - - flash('Failed to save Bill.')->error(); - } - return redirect()->route('payments.bills'); - } - } - } - - public function save_bill(Request $request) - { - $validator = Validator::make($request->all(), [ - 'vendor' => 'required', - 'bill_date' => 'required', - 'bill_number' => 'required', - 'bill_due_date' => 'required', - 'bill_memo' => 'required', - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - if ($request->bill_action == 'save') { - - $logged_in_user = Auth::id(); - $bill_date = Carbon::parse($request->bill_date)->toDateString(); - $bill_due_date = Carbon::parse($request->bill_due_date)->toDateString(); - - $bill = new HospitalBill; - $bill->vendor = $request->vendor; - $bill->bill_date = $bill_date; - $bill->bill_term = $request->bill_term; - $bill->bill_memo = $request->bill_memo; - $bill->bill_number = $request->bill_number; - $bill->bill_due_date = $bill_due_date; - $bill->total_amount = (int)$request->total_amount; - $bill->item_ids = implode(',', $request->item_id); - $bill->item_accounts = implode(',', $request->expense_acc_id); - $bill->item_quantities = implode(',', $request->quantity); - $bill->item_subtotals = implode(',', $request->amount); - $bill->payable_account = implode(',', $request->payable_acc_id); - $bill->created_by = $logged_in_user; - $bill->bill_type = 'PAY'; - - $bill->balance_history = serialize(array()); - $bill->receipt_history = serialize(array()); - $bill->staff_incharge_history = serialize(array()); - $bill->amount_paid_history = serialize(array()); - $bill->date_paid_history = serialize(array()); - - $track_invoice = new TrackInvoice; - $track_invoice->reason = $request->bill_memo; - $track_invoice->created_by = $logged_in_user; - - if ($bill->save() && $track_invoice->save()) { - // TODO: tag the correct accounts payable each time - // Note that multiple items can be selected when paying a bill and can be linked to different accounts payables - // CC: @koomabenjamin - $accounts_payable_balance = ChartOfAccount::find(14); - ChartOfAccount::where('id', 14)->update(['balance' => (int)$request->total_amount + (int)$accounts_payable_balance->balance]); - flash('Bill has successfully been saved.')->success(); - } else { - flash('Failed to save Bill.')->error(); - } - return redirect()->route('payments.bills'); - } - } - } - - public function save_inventory_bill(Request $request) - { - - $validator = Validator::make($request->all(), [ - 'vendor' => 'required', - 'bill_date' => 'required', - 'bill_number' => 'required', - 'bill_due_date' => 'required', - 'bill_memo' => 'required', - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - // return back()->withErrors($validator)->withInput(); - return redirect()->route('payments.bills.inventory'); - } else { - $logged_in_user = Auth::id(); - $bill_date = Carbon::parse($request->bill_date)->toDateString(); - $bill_due_date = Carbon::parse($request->bill_due_date)->toDateString(); - - /* == start:delete this existing temporary bill that was attached to quotation used for enforcing double entry === */ - $quotation_record = Quotation::where('quotation_number', $request->quotation_number)->first(); - $dentals_radiologies_and_general_items_expe_accounts = ""; - $item_type = null; - if($quotation_record){ - $temp_bill_id_to_delete = $quotation_record->bill_id; - $bill_to_delete = HospitalBill::find($temp_bill_id_to_delete); - - if($bill_to_delete){ - $item_type = $bill_to_delete->quotation_type_id; - $dentals_radiologies_and_general_items_expe_accounts = $bill_to_delete->item_accounts; - $bill_to_delete->delete(); - $restore_order = Quotation::where('quotation_number', $request->quotation_number) - ->update(['bill_id' => null, 'invoice_generated' => null, 'invoice_date' => null, 'invoice_number' => null]); - } - } - /* =============== end: ==================== */ - - - $bill = new HospitalBill; - $bill->vendor = $request->vendor; - $bill->bill_date = $bill_date; - $bill->bill_term = $request->bill_term; - $bill->bill_memo = $request->bill_memo; - $bill->bill_number = $request->bill_number; - $bill->bill_due_date = $bill_due_date; - $bill->total_amount = (int)$request->total_amount; - $bill->item_ids = implode(',', $request->item_id); - $bill->item_accounts = in_array($item_type, [1,2]) ? implode(',', $request->expense_acc_id) : $dentals_radiologies_and_general_items_expe_accounts; - $bill->item_quantities = implode(',', $request->quantity); - $bill->item_subtotals = implode(',', $request->amount); - $bill->created_by = $logged_in_user; - - $bill->balance_history = serialize(array()); - $bill->receipt_history = serialize(array()); - $bill->staff_incharge_history = serialize(array()); - $bill->amount_paid_history = serialize(array()); - $bill->date_paid_history = serialize(array()); - - $track_invoice = new TrackInvoice; - $track_invoice->reason = $request->bill_memo; - $track_invoice->created_by = $logged_in_user; - - switch ($request->quotation_type_id) { - case 1: - $bill->bill_type = 'DRU'; - break; - case 2: - $bill->bill_type = 'SUN'; - break; - case 3: - $bill->bill_type = 'DEN'; - break; - case 4: - $bill->bill_type = 'RAD'; - break; - case 5: - $bill->bill_type = 'LAB'; - break; - case 6: - $bill->bill_type = 'GEN'; - break; - case 7: - $bill->bill_type = 'EYE'; - break; - default: - // bill type is supposed to be defined - throw new \Exception("Bill Type was not found"); - } - - if ($bill->save() && $track_invoice->save()) { - $accounts_payable_balance = ChartOfAccount::find(14); - ChartOfAccount::where('id', 14)->update(['balance' => (int)$request->total_amount + (int)$accounts_payable_balance->balance]); - flash('Bill has successfully been saved.')->success(); - } else { - flash('Failed to save Bill.')->error(); - } - - $update = Quotation::where('quotation_number', $request->quotation_number) - ->update(['bill_id' => $bill->id, 'invoice_generated' => 1, 'invoice_date' => $request->bill_date, 'invoice_number' => $request->bill_number]); - // ->update(['invoice_generated' => 1, 'invoice_date' => $request->bill_date, 'invoice_number' => $request->bill_number]); - - return redirect('/payments/bills/inventory'); - } - } - - public function voucher($id) { - $payments = Payment::where('bill_id', $id)->groupBy('transaction_id')->get(); - $hospital_information = HospitalInformation::first(); - return view('expenses::payments.bills.voucher', compact('payments', 'hospital_information')); - } - - public function get_bill_number() - { - return generateInvoiceNumberFromDB("Get Bill Number"); - } - - public function bills(Request $request) { - $banks = ChartOfAccount::where('type', 4)->get(); - $suppliers = Supplier::get(); - $staff_members = User::get(); - $display = ""; - $bank_accounts = ChartOfAccount::where('type', 4)->pluck('name', 'id')->prepend('-select-', '')->toArray(); - $filters = []; - - if ($request->dates == "today") { - $filters[] = ['bill_date', '=', date('Y-m-d')]; - $display .= "Today | "; - } elseif ($request->dates == "yesterday") { - $filters[] = ['bill_date', '=', date("Y-m-d", strtotime("yesterday"))]; - $display .= "Yesterday | "; - } elseif ($request->dates == "custom_date") { - $filters[] = ['bill_date', '=', date('Y-m-d', strtotime($request->start_date))]; - $display .= "On: " . streamline_date($request->start_date) . " | "; - } elseif ($request->dates == "custom_date_range") { - $filters[] = ['bill_date', '>=', date('Y-m-d', strtotime($request->start_date))]; - $filters[] = ['bill_date', '<=', date('Y-m-d', strtotime($request->end_date))]; - $display .= "From: " . streamline_date($request->start_date) . " To: " . streamline_date($request->end_date) . " | "; - } - - if ($request->vendor != "ALL VENDORS") { - $filters[] = ['vendor', '=', $request->vendor]; - $display .= "Vendor: " . get_name($request->vendor, 'id', 'name', 'suppliers') . " | "; - } else { - $display .= "All Vendors | "; - } - - if ($request->staff_member != "ALL STAFF") { - $filters[] = ['created_by', '=', $request->staff_member]; - $display .= "Staff: " . get_full_name($request->staff_member, 'id', 'first_name', 'last_name', 'users') . " | "; - } else { - $display .= "All Staff | "; - } - - if ($request->bill_status == "paid") { - $display .= 'Paid Bills'; - $filters[] = ['balance', '=', 0]; - } elseif ($request->bill_status == "unpaid") { - $display .= 'Unpaid Bills'; - $filters[] = ['balance', '=', NULL]; - } elseif ($request->bill_status == "paid_but_with_balance") { - $display .= 'Paid Bills with balance'; - $filters[] = ['balance', '>', 0]; - } else { - $display .= 'All Bills'; - } - - $bills = DB::table('hospital_bills')->whereNull('deleted_at')->where($filters)->get()->toArray(); - - return view('expenses::payments.bills.index', compact('bills', 'staff_members', 'suppliers', 'display', 'banks', 'request', 'bank_accounts')); - } - - public function bills_bulk_pay(Request $request) - { - $bill_id_array = explode(',', $request->selected_bill_ids); - $deductions = $bill_deductions = []; - $logged_in_user = Auth::id(); - - $track_receipt = new TrackReceipt; - $track_receipt->reason = "Bulk Bill Payment"; - $track_receipt->created_by = $logged_in_user; - $track_receipt->save(); - $receipt_number = sprintf("%04u", $track_receipt->id); - - $bill_amount_paid = (int)$request->amount_to_pay + (int)$request->total_amount_paid_off; - - // split amounts for the bills - - for ($i = 0; $i < count($bill_id_array); $i++) { - - $bill = HospitalBill::find($bill_id_array[$i]); - $bill_total = $bill->total_amount; - $bill_balance = $bill->balance; - $item_amount_paid = []; - $item_balance_remaining = []; - $items_array = explode(',', $bill->item_ids); - $items_quantity_array = explode(',', $bill->item_quantities); - $items_subtotal_array = explode(',', $bill->item_subtotals); - - for ($x = 0; $x < count($items_array); $x++) { - - $new_amount = $bill_amount_paid - array_sum($deductions); - - $bill_payment = new Payment; - - if ($items_subtotal_array[$x] <= $new_amount) { - - $item_amount_paid[] = $items_subtotal_array[$x]; - $item_balance_remaining[] = 0; - $deductions[] = $items_subtotal_array[$x]; - $bill_payment->amount = $items_subtotal_array[$x]; - } else { - - $item_amount_paid[] = $new_amount; - $item_balance_remaining[] = (int)$items_subtotal_array[$x] - (int)$new_amount; - $deductions[] = $new_amount; - $bill_payment->amount = $new_amount; - } - - if ($bill->bill_type == "PAY") { - - $bill_payment->item_id = $items_array[$x]; - $bill_payment->vendor = $bill->vendor; - $bill_payment->unit_cost = get_name($items_array[$x], 'id', 'unit_cost', 'payment_items'); - $bill_payment->quantity = $items_quantity_array[$x]; - $bill_payment->memo = 'A portion of a Bulk Payment'; - $bill_payment->account_balance = 0; - $bill_payment->transaction_id = $receipt_number; - $bill_payment->account_id = $request->bank_account; - $bill_payment->created_by = $logged_in_user; - $bill_payment->expense_date = Carbon::parse($request->payment_date)->toDateTimeString(); - $bill_payment->bill_id = $bill->id; - $bill_payment->expense_account = get_name($items_array[$x], 'id', 'account_id', 'payment_items'); - $bill_payment->save(); - } - } - - HospitalBill::where('id', $bill_id_array[$i])->update([ - 'balance' => array_sum($item_balance_remaining), - 'item_amount_paid' => implode(',', $item_amount_paid), - 'item_balance_remaining' => implode(',', $item_balance_remaining) - ]); - - $date_paid_history = unserialize($bill->date_paid_history); - array_push($date_paid_history, $request->payment_date); - $date_paid_serial = serialize($date_paid_history); - - $amount_paid_history = unserialize($bill->amount_paid_history); - array_push($amount_paid_history, array_sum($item_amount_paid)); - $amount_paid_serial = serialize($amount_paid_history); - - $staff_incharge_history = unserialize($bill->staff_incharge_history); - array_push($staff_incharge_history, Auth::id()); - $staff_in_charge_serial = serialize($staff_incharge_history); - - $receipt_history = unserialize($bill->receipt_history); - array_push($receipt_history, $receipt_number); - $receipt_serial = serialize($receipt_history); - - $balance_history = unserialize($bill->balance_history); - array_push($balance_history, array_sum($item_balance_remaining)); - $balance_serial = serialize($balance_history); - - $bill->amount_paid_history = $amount_paid_serial; - $bill->date_paid_history = $date_paid_serial; - $bill->staff_incharge_history = $staff_in_charge_serial; - $bill->receipt_history = $receipt_serial; - $bill->balance_history = $balance_serial; - - $bill->payment_status = 1; - $bill->updated_by = $logged_in_user; - $bill->save(); - } - - if (Carbon::parse($request->payment_date)->toDateString() < Carbon::today()->toDateString()) { - $to_banking_records = Banking::where('bank', $request->transfer_to)->where('trans_date', '>', Carbon::parse($request->transfer_date)->toDateString())->get(); - $from_banking_records = Banking::where('bank', $request->transfer_from)->where('trans_date', '>', Carbon::parse($request->transfer_date)->toDateString())->get(); - - foreach ($to_banking_records as $record) { - Banking::where('id', $record->id)->update(['account_balance' => ((int)$record->account_balance + (int)$request->transfer_amount)]); - } - - foreach ($from_banking_records as $record) { - Banking::where('id', $record->id)->update(['account_balance' => ((int)$record->account_balance - (int)$request->transfer_amount)]); - } - } - - // record bank transfers / payments - capture_bank_record( - 'PAYMENT', - Carbon::parse($request->payment_date)->toDateString(), - $request->bank_account, - "", - ((int)$request->account_balance - (int)$request->amount_to_pay), - 0, - (int)$request->amount_to_pay, - $request->payment_memo, - $receipt_number - ); - - return redirect()->route('payments.bills'); - } - - public function delete_bill(Request $request) - { - - $bill_id = $request->bill_id; - $bill = HospitalBill::find($bill_id); - - if ($bill) { - $accounts_payable_balance = ChartOfAccount::find(14); - ChartOfAccount::where('id', 14)->update(['balance' => (int)$accounts_payable_balance->balance - (int)$bill->total_amount]); - Quotation::where('bill_id', $bill_id)->update(['bill_id' => null, 'invoice_generated' => 0, 'invoice_date' => null, 'invoice_number' => null]); - $bill->delete(); - return 'success'; - } else { - return 'fail'; - } - } - - public function get_bill_details($id) - { - $bill = HospitalBill::find($id); - //dd($bill); - return response()->json($bill); - } - - public function bills_inactive() - { - $bills = HospitalBill::onlyTrashed()->orderBy('created_at', 'asc')->paginate(50); - $banks = ChartOfAccount::where('type', 4)->get(); - $suppliers = Supplier::get(); - $staff_members = User::get(); - - if (empty($bills)) { - flash()->error("There is no inactive bills"); - return redirect('/payments/bills/'); - } else { - return view('expenses::payments.bills.inactive', compact('bills', 'staff_members', 'suppliers', 'banks')); - } - } - - public function bill_activate($id) - { - $bill = HospitalBill::withTrashed()->find($id); - $accounts_payable_balance = ChartOfAccount::find(14); - ChartOfAccount::where('id', 14)->update(['balance' => (int)$accounts_payable_balance->balance - (int)$bill->total_amount]); - - if ($bill->restore()) : - flash("Bill has been activated.")->success(); - return redirect('/payments/bills/inactive'); - endif; - } - - public function inventory(Request $request) { - $suppliers = Supplier::get(); - $staff_members = User::get(); - $display = ""; - $filters = []; - - if ($request->dates == "yesterday") { - $start = Carbon::yesterday()->startOfDay(); - $end = Carbon::yesterday()->endOfDay(); - $display .= "Yesterday | "; - } elseif ($request->dates == "custom_date") { - $end = Carbon::parse($request->start_date)->endOfDay()->toDateTimeString(); - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $display .= "On: " . streamline_date($request->start_date) . " | "; - } elseif ($request->dates == "custom_date_range") { - $end = Carbon::parse($request->end_date)->endOfDay(); - $start = Carbon::parse($request->start_date)->startOfDay(); - $display .= "From: " . streamline_date($request->start_date) . " To: " . streamline_date($request->end_date) . " | "; - } else { - $start = Carbon::today()->startOfDay(); - $end = Carbon::today()->endOfDay(); - $display .= "Today | "; - } - - if ($request->vendor != "ALL VENDORS") { - $filters[] = ['supplier_id', '=', $request->vendor]; - $display .= "Vendor: " . get_name($request->vendor, 'id', 'name', 'suppliers') . " | "; - } else { - $display .= "All Vendors | "; - } - - if ($request->staff_member != "ALL STAFF") { - $filters[] = ['created_by', '=', $request->staff_member]; - $display .= "Staff: " . get_full_name($request->staff_member, 'id', 'first_name', 'last_name', 'users'); - } else { - $display .= "All Staff"; - } - - $quotations = Quotation::whereBetween('receive_date', [$start, $end])->where($filters) - ->where('receive_status', 1) - ->where('invoice_generated', 0) - ->groupBy('quotation_number') - ->get(); - - return view('expenses::payments.inventory.index', compact('quotations', 'staff_members', 'suppliers', 'display')); - } - - public function create_inventory_bill(Request $request) - { - $suppliers = Supplier::get(); - $staff_members = User::get(); - $chart_of_accounts = ChartOfAccount::get(); - $quotation_type_options = QuotationType::pluck('name', 'id')->toArray(); - $quotation_number = $request->quotation_number; - $quotations = Quotation::where('quotation_number', $quotation_number)->get(); - $quotation = Quotation::where('quotation_number', $quotation_number)->first(); - - return view('expenses::payments.inventory.create', compact( - 'quotations', - 'quotation', - 'quotation_type_options', - 'quotation_number', - 'suppliers', - 'staff_members', - 'chart_of_accounts' - )); - } - - public function custom_bills($vendor, $category) - { - $bills = []; - $request = new Request(); - $banks = ChartOfAccount::where('type', 4)->get(); - $suppliers = Supplier::get(); - $staff_members = User::get(); - $hospital_information = HospitalInformation::first(); - $bank_accounts = ChartOfAccount::where('type', 4)->pluck('name', 'id')->prepend('-select-', '')->toArray(); - - $today = Carbon::now()->toDateString(); - $today_minus_thirty = Carbon::now()->subDays(30)->toDateString(); - $today_minus_sixty = Carbon::now()->subDays(60)->toDateString(); - $today_minus_ninety = Carbon::now()->subDays(90)->toDateString(); - - $display = get_name($vendor, 'id', 'name', 'suppliers') . ' - UNPAID BILLS AND PAID BILLS (BUT WITH BALANCE) '; - - $request->staff_member = "ALL STAFF"; - $request->vendor = $vendor; - $request->bill_status = "UNPAID BILLS"; - $request->dates = 'custom_date_range'; - $request->start_date = $today; - $request->end_date = $today; - - switch ($category) { - case 'current': - $display .= " for today, the " . streamline_date($today); - $bills_query = "SELECT * FROM hospital_bills WHERE deleted_at IS NULL AND (balance IS NULL OR balance > 0) AND vendor = {$vendor} AND bill_date = '{$today}' ORDER BY id ASC"; - if ($vendor == 0) { - $bills_query = "SELECT * FROM hospital_bills WHERE deleted_at IS NULL AND (balance IS NULL OR balance > 0) AND vendor IS NULL AND bill_date = '{$today}' ORDER BY id ASC"; - } - $bills = DB::select($bills_query); - break; - - case 'one_to_thirty': - $request->start_date = $today_minus_thirty; - $display .= " from " . streamline_date($today_minus_thirty) . " to " . streamline_date($today); - $bills_query = "SELECT * FROM hospital_bills WHERE deleted_at IS NULL AND (balance IS NULL OR balance > 0) AND vendor = {$vendor} AND bill_date BETWEEN '{$today_minus_thirty}' AND '{$today}' ORDER BY id ASC"; - if ($vendor == 0) { - $bills_query = "SELECT * FROM hospital_bills WHERE deleted_at IS NULL AND (balance IS NULL OR balance > 0) AND vendor IS NULL AND bill_date BETWEEN '{$today_minus_thirty}' AND '{$today}' ORDER BY id ASC"; - } - $bills = DB::select($bills_query); - break; - - case 'thirty_one_to_sixty': - $request->start_date = $today_minus_sixty; - $request->end_date = $today_minus_thirty; - $display .= " from " . streamline_date($today_minus_sixty) . " to " . streamline_date($today_minus_thirty); - $bills_query = "SELECT * FROM hospital_bills WHERE deleted_at IS NULL AND (balance IS NULL OR balance > 0) AND vendor = {$vendor} AND bill_date BETWEEN '{$today_minus_sixty}' AND '{$today_minus_thirty}' ORDER BY id ASC"; - if ($vendor == 0) { - $bills_query = "SELECT * FROM hospital_bills WHERE deleted_at IS NULL AND (balance IS NULL OR balance > 0) AND vendor IS NULL AND bill_date BETWEEN '{$today_minus_sixty}' AND '{$today_minus_thirty}' ORDER BY id ASC"; - } - $bills = DB::select($bills_query); - break; - - case 'sixty_one_to_ninety': - $request->start_date = $today_minus_ninety; - $request->end_date = $today_minus_sixty; - $display .= " from " . streamline_date($today_minus_ninety) . " to " . streamline_date($today_minus_sixty); - $bills_query = "SELECT * FROM hospital_bills WHERE deleted_at IS NULL AND (balance IS NULL OR balance > 0) AND vendor = {$vendor} AND bill_date BETWEEN '{$today_minus_ninety}' AND '{$today_minus_sixty}' ORDER BY id ASC"; - if ($vendor == 0) { - $bills_query = "SELECT * FROM hospital_bills WHERE deleted_at IS NULL AND (balance IS NULL OR balance > 0) AND vendor IS NULL AND bill_date BETWEEN '{$today_minus_ninety}' AND '{$today_minus_sixty}' ORDER BY id ASC"; - } - $bills = DB::select($bills_query); - break; - - case 'ninety_one_and_over': - $request->start_date = Carbon::now()->startOfYear()->toDateString(); - $request->end_date = $today_minus_ninety; - $display .= " before " . streamline_date($today_minus_ninety); - $bills_query = "SELECT * FROM hospital_bills WHERE deleted_at IS NULL AND (balance IS NULL OR balance > 0) AND vendor = {$vendor} AND bill_date < '{$today_minus_ninety}' ORDER BY id ASC"; - if ($vendor == 0) { - $bills_query = "SELECT * FROM hospital_bills WHERE deleted_at IS NULL AND (balance IS NULL OR balance > 0) AND vendor IS NULL AND bill_date < '{$today_minus_ninety}' ORDER BY id ASC"; - } - $bills = DB::select($bills_query); - break; - } - - return view('expenses::payments.bills.index', compact('bills', 'hospital_information', 'staff_members', 'suppliers', 'display', 'banks', 'request', 'bank_accounts')); - } - - public function custom_bill($vendor, $category, $id) - { - $bills = []; - $request = new Request(); - $banks = ChartOfAccount::where('type', 4)->get(); - $suppliers = Supplier::get(); - $staff_members = User::get(); - $hospital_information = HospitalInformation::first(); - $bank_accounts = ChartOfAccount::where('type', 4)->pluck('name', 'id')->prepend('-select-', '')->toArray(); - - $today = Carbon::now()->toDateString(); - $today_minus_thirty = Carbon::now()->subDays(30)->toDateString(); - $today_minus_sixty = Carbon::now()->subDays(60)->toDateString(); - $today_minus_ninety = Carbon::now()->subDays(90)->toDateString(); - - $display = get_name($vendor, 'id', 'name', 'suppliers') . ' - UNPAID BILLS AND PAID BILLS (BUT WITH BALANCE) '; - - $request->staff_member = "ALL STAFF"; - $request->vendor = $vendor; - $request->bill_status = "UNPAID BILLS"; - $request->dates = 'custom_date_range'; - $request->start_date = $today; - $request->end_date = $today; - - if ($vendor == 0) { - $vendor = null; - } - - $bills = DB::table('hospital_bills')->where('id', $id)->get()->toArray(); - - switch ($category) { - case 'current': - $display .= " for today, the " . streamline_date($today); - break; - - case 'one_to_thirty': - $request->start_date = $today_minus_thirty; - $display .= " from " . streamline_date($today_minus_thirty) . " to " . streamline_date($today); - break; - - case 'thirty_one_to_sixty': - $request->start_date = $today_minus_sixty; - $request->end_date = $today_minus_thirty; - $display .= " from " . streamline_date($today_minus_sixty) . " to " . streamline_date($today_minus_thirty); - break; - - case 'sixty_one_to_ninety': - $request->start_date = $today_minus_ninety; - $request->end_date = $today_minus_sixty; - $display .= " from " . streamline_date($today_minus_ninety) . " to " . streamline_date($today_minus_sixty); - break; - - case 'ninety_one_and_over': - $request->start_date = Carbon::now()->startOfYear()->toDateString(); - $request->end_date = $today_minus_ninety; - $display .= " before " . streamline_date($today_minus_ninety); - break; - } - - return view('expenses::payments.bills.index', compact('bills', 'hospital_information', 'staff_members', 'suppliers', 'display', 'banks', 'request', 'bank_accounts')); - } - - public function undo_bill_payment($transaction_id) { - $payment = Payment::where('transaction_id', $transaction_id)->get(); - - if (isset($payment[0])) { - $amount = $payment[0]->amount; - $bill_id = $payment[0]->bill_id; - $account_id = $payment[0]->account_id; - - if (Payment::where('transaction_id', $transaction_id)->delete()) { - $bill_update = HospitalBill::find($bill_id); - $new_bill_balance = $bill_update->balance + $amount; - $bill_update->balance = $new_bill_balance; - $bill_update->payment_status = 0; - $bill_update->updated_by = Auth::id(); - $bill_update->save(); - - // update general payables balance - $accounts_payable_balance = ChartOfAccount::find(14); - ChartOfAccount::where('id', 14)->update(['balance' => (int)$accounts_payable_balance->balance + $amount]); - - // Delete related bank entry - $bank_record = Banking::where('bank', $account_id) - ->where('trans_id', $transaction_id) - ->where('trans_type', 'PAYMENT') - ->where('debit', $amount) - - ->first(); - - $account_balance_record_on_expense_date = get_latest_banking_record_based_on_transaction_date($bank_record->bank, $bank_record->trans_date); - $account_balance_on_expense_date = ($account_balance_record_on_expense_date != null) ? (int)$account_balance_record_on_expense_date->account_balance : 0; - $account_balance_on_expense_date_after_payment_reversal = ($account_balance_on_expense_date + $amount); - - $bank_record->debit = 0; - $bank_record->account_balance = $account_balance_on_expense_date_after_payment_reversal; - $bank_record->updated_by = Auth::id(); - $bank_record->update(); - flash("Bank Payment record: " . $bank_record->id . " updated!"); - - // use the bank record before the one just deleted - $previous_bank_record = Banking::where('bank', $bank_record->bank) - ->whereNull('deleted_at') - ->where('id', '<', $bank_record->id) - ->orderBy('id', 'desc') - ->first(); - - if ($previous_bank_record) { - update_banking_record_balances(Carbon::parse($previous_bank_record->trans_date)->toDateString(), $bank_record->bank, $previous_bank_record->id, $previous_bank_record->account_balance); - } else { - update_banking_record_balances(Carbon::parse($bank_record->trans_date)->toDateString(), $bank_record->bank, $bank_record->id, $account_balance_on_expense_date_after_payment_reversal); - } - flash("Payment has been deleted successfully from Bank: " . get_name($bank_record->bank, 'id', 'name', 'chart_of_accounts') . " and the bill balance has been update to " . ugandan_shillings($new_bill_balance))->success(); - return 'success'; - } else { - return 'fail'; - } - } else { - return 'fail'; - } - } -} diff --git a/docker/statistics/Modules/Expenses/Http/Controllers/PaymentItemController.php b/docker/statistics/Modules/Expenses/Http/Controllers/PaymentItemController.php deleted file mode 100755 index c7dd0c01..00000000 --- a/docker/statistics/Modules/Expenses/Http/Controllers/PaymentItemController.php +++ /dev/null @@ -1,197 +0,0 @@ -paginate(5000); - return view('expenses::payment_items.index', compact('payment_items')); - } - - /** - * Show the form for creating a new resource. - * - */ - public function create() - { - $expense_accounts = ChartOfAccount::orderBy('name', 'asc')->where('type', 2)->pluck('name', 'id')->prepend('-select-', '')->toArray(); - $payable_accounts = ChartOfAccount::orderBy('name', 'asc')->where('type', 6)->orWhere('type', 9)->pluck('name', 'id')->toArray(); - - return view('expenses::payment_items.create', compact('expense_accounts', 'payable_accounts')); - } - - /** - * Store a newly created resource in storage. - * - */ - public function store(Request $request) - { - $validator = Validator::make($request->all(), [ - 'name' => 'required', - 'unit_cost' => 'required' - ]); - - if ($validator->fails()) { - //validation failed - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - - return back()->withErrors($validator)->withInput(); - } else { - - //validation passed - $payment_item = new PaymentItem; - - $payment_item->name = $request->name; - $payment_item->unit_cost = $request->unit_cost; - $payment_item->account_id = $request->account_id; - $payment_item->payable_account = $request->payable_account; - $payment_item->created_by = Auth::user()->id; - - try { - $payment_item->save(); - flash($request->name . " Payment Item has been saved")->success(); - return redirect("/payment_items/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Display the specified resource. - * - */ - public function show() - { - - } - - public function edit($id) - { - $payment_item = PaymentItem::where(['id' => $id])->first(); - - $expense_accounts = ChartOfAccount::orderBy('name', 'asc')->where('type', 2)->pluck('name', 'id')->prepend('-select-', '')->toArray(); - $payable_accounts = ChartOfAccount::orderBy('name', 'asc')->where('type', 6)->orWhere('type', 9)->pluck('name', 'id')->prepend('-select-', '')->toArray(); - - if (!$payment_item) { - flash()->error("Payment Item not found"); - return redirect('/payment_items/'); - } else { - return view('expenses::payment_items.edit', compact('payment_item', 'expense_accounts', 'payable_accounts')); - } - } - - - public function quick_update(Request $request) - { - $payment_item = PaymentItem::find($request->item_id); - - $old_name = $payment_item->name; - $old_created_by = $payment_item->created_by; - $old_account_id = $payment_item->account_id; - - $logged_in_user_id = Auth::id(); - $payment_item->name = $old_name; - $payment_item->unit_cost = (int)$request->amount; - $payment_item->account_id = $request->account_id; - $payment_item->payable_account = $request->payable_account; - $payment_item->created_by = $old_created_by; - $payment_item->updated_by = $logged_in_user_id; - - if($payment_item->save()){ - return 'success'; - }else{ - return $payment_item; - } - } - - public function update(Request $request, $id) - { - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) { - //validation failed - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } - else { - //validation passed - $payment_item = PaymentItem::find($id); - $logged_in_user_id = Auth::user()->id; - - $payment_item->name = $request->name; - $payment_item->unit_cost = $request->unit_cost; - $payment_item->account_id = $request->account_id; - $payment_item->payable_account = $request->payable_account; - $payment_item->updated_by = $logged_in_user_id; - - try { - $payment_item->save(); - flash($request->name . " Payment Item has been updated")->success(); - return redirect("/payment_items/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - - public function destroy($id) { - $payment_item = PaymentItem::find($id); - - if ($payment_item->delete()) { - flash("Payment Item has been deleted.")->success(); - } - return redirect('/payment_items/'); - } - - public function inactive() { - - $payment_items = PaymentItem::onlyTrashed() - ->orderBy('name', 'asc') - ->get() - ->toArray(); - - if (count($payment_items) < 1) { - flash()->error("There is no inactive PaymentItem"); - return redirect('/payment_items/'); - } else { - - return view('expenses::payment_items.inactive', compact('payment_items')); - } - } - - - public function activate($id) { - $payment = PaymentItem::withTrashed()->find($id); - - if($payment->restore()){ - flash("Parish has been activated.")->success(); - return redirect('/payment_items/inactive'); - } - } -} diff --git a/docker/statistics/Modules/Expenses/Providers/ExpensesServiceProvider.php b/docker/statistics/Modules/Expenses/Providers/ExpensesServiceProvider.php deleted file mode 100644 index ae686178..00000000 --- a/docker/statistics/Modules/Expenses/Providers/ExpensesServiceProvider.php +++ /dev/null @@ -1,113 +0,0 @@ -registerTranslations(); - $this->registerConfig(); - $this->registerViews(); - $this->loadMigrationsFrom(module_path($this->moduleName, 'Database/Migrations')); - } - - /** - * Register the service provider. - * - * @return void - */ - public function register() - { - $this->app->register(RouteServiceProvider::class); - } - - /** - * Register config. - * - * @return void - */ - protected function registerConfig() - { - $this->publishes([ - module_path($this->moduleName, 'Config/config.php') => config_path($this->moduleNameLower . '.php'), - ], 'config'); - $this->mergeConfigFrom( - module_path($this->moduleName, 'Config/config.php'), $this->moduleNameLower - ); - } - - /** - * Register views. - * - * @return void - */ - public function registerViews() - { - $viewPath = resource_path('views/modules/' . $this->moduleNameLower); - - $sourcePath = module_path($this->moduleName, 'Resources/views'); - - $this->publishes([ - $sourcePath => $viewPath - ], ['views', $this->moduleNameLower . '-module-views']); - - $this->loadViewsFrom(array_merge($this->getPublishableViewPaths(), [$sourcePath]), $this->moduleNameLower); - } - - /** - * Register translations. - * - * @return void - */ - public function registerTranslations() - { - $langPath = resource_path('lang/modules/' . $this->moduleNameLower); - - if (is_dir($langPath)) { - $this->loadTranslationsFrom($langPath, $this->moduleNameLower); - $this->loadJsonTranslationsFrom($langPath); - } else { - $this->loadTranslationsFrom(module_path($this->moduleName, 'Resources/lang'), $this->moduleNameLower); - $this->loadJsonTranslationsFrom(module_path($this->moduleName, 'Resources/lang')); - } - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides() - { - return []; - } - - private function getPublishableViewPaths(): array - { - $paths = []; - foreach (\Config::get('view.paths') as $path) { - if (is_dir($path . '/modules/' . $this->moduleNameLower)) { - $paths[] = $path . '/modules/' . $this->moduleNameLower; - } - } - return $paths; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/Expenses/Providers/RouteServiceProvider.php b/docker/statistics/Modules/Expenses/Providers/RouteServiceProvider.php deleted file mode 100755 index 551c94c6..00000000 --- a/docker/statistics/Modules/Expenses/Providers/RouteServiceProvider.php +++ /dev/null @@ -1,68 +0,0 @@ -mapApiRoutes(); - $this->mapWebRoutes(); - } - - /** - * Define the "web" routes for the application. - * - * These routes all receive session state, CSRF protection, etc. - * - * @return void - */ - protected function mapWebRoutes() - { - Route::middleware('web') - ->namespace($this->namespace) - ->group(module_path('Expenses', '/Routes/web.php')); - } - - /** - * Define the "api" routes for the application. - * - * These routes are typically stateless. - * - * @return void - */ - protected function mapApiRoutes() - { - Route::prefix('api') - ->middleware('api') - ->namespace($this->namespace) - ->group(module_path('Expenses', '/Routes/api.php')); - } -} diff --git a/docker/statistics/Modules/Expenses/Resources/views/payment_items/create.blade.php b/docker/statistics/Modules/Expenses/Resources/views/payment_items/create.blade.php deleted file mode 100755 index 36e10214..00000000 --- a/docker/statistics/Modules/Expenses/Resources/views/payment_items/create.blade.php +++ /dev/null @@ -1,66 +0,0 @@ -@extends('layouts.main') - -@push('styles') -@endpush - -@section('content') -
    -
    -

    {{ __('payment_items.create_payment_item') }}

    -
    -
    - -
    -
    - - @include('expenses::payment_items.menu') - -
    -
    - @include('flash::message') -
    - {{ Form::open(['method'=>'post','route' => 'payment_items.store', 'data-toggle' => 'validator', 'files' => true]) }} - -
    - {{ Form::label('item_label', __('payment_items.item_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('unit_cost_label', __('payment_items.unit_cost')) }} - {{ Form::text('unit_cost', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('account_id', __('payment_items.expense_account')) }} - {{ Form::select('account_id', $expense_accounts, '', ['class'=>'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('payable_account', __('payment_items.payable_account')) }} - {{ Form::select('payable_account', $payable_accounts, '', ['class'=>'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('payment_items.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('payment_items.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} - -
    -
    -
    -@endsection - -@push('scripts') - - -@endpush - diff --git a/docker/statistics/Modules/Expenses/Resources/views/payment_items/edit.blade.php b/docker/statistics/Modules/Expenses/Resources/views/payment_items/edit.blade.php deleted file mode 100755 index b9d4fabf..00000000 --- a/docker/statistics/Modules/Expenses/Resources/views/payment_items/edit.blade.php +++ /dev/null @@ -1,65 +0,0 @@ -@extends('layouts.main') - -@push('styles') -@endpush - -@section('content') -
    -
    -

    {{ __('payment_items.edit_payment_item') }}

    -
    -
    - -
    -
    - - @include('expenses::payment_items.menu') - -
    -
    - @include('flash::message') -
    - {{ Form::model($payment_item, ['method' => 'PUT', 'route' => ['payment_items.update',$payment_item], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('item_label', __('payment_items.item_name')) }} - {{ Form::text('name', $payment_item->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('unit_cost_label', __('payment_items.unit_cost')) }} - {{ Form::text('unit_cost', $payment_item->unit_cost, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('account_id', __('payment_items.expense_account')) }} - {{ Form::select('account_id', $expense_accounts, $payment_item->account_id, ['class'=>'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('payable_account', __('payment_items.payable_account')) }} - {{ Form::select('payable_account', $payable_accounts, $payment_item->payable_account, ['class'=>'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('payment_items.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('payment_items.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - -@endpush - diff --git a/docker/statistics/Modules/Expenses/Resources/views/payment_items/inactive.blade.php b/docker/statistics/Modules/Expenses/Resources/views/payment_items/inactive.blade.php deleted file mode 100755 index f192b8be..00000000 --- a/docker/statistics/Modules/Expenses/Resources/views/payment_items/inactive.blade.php +++ /dev/null @@ -1,95 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('payment_items.payment_items') }}

    -
    -
    - -
    -
    - - @include('expenses::payment_items.menu') - -
    -
    - @include('flash::message') -
    -

    {{ __('payment_items.export_data_to_csv_excel') }}

    -
    - - - - - - - - - - - - - - - - - - - - - - @foreach($payment_items as $payment_item) - - - - - - - - @endforeach - -
    #{{ __('payment_items.name') }}{{ __('payment_items.unit_cost') }}{{ __('payment_items.expense_account') }}{{ __('payment_items.action') }}
    #{{ __('payment_items.name') }}{{ __('payment_items.unit_cost') }}{{ __('payment_items.expense_account') }}{{ __('payment_items.action') }}
    {{ $payment_item['id'] }}{{ $payment_item['name'] }}{{ $payment_item['unit_cost'] }}{{ get_name($payment_item['account_id'], 'id', 'name', 'chart_of_accounts') }} - {{ Form::model($payment_item['id'] ,['method' => 'POST', 'route' => ['payment_items.activate', $payment_item['id']]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Expenses/Resources/views/payment_items/index.blade.php b/docker/statistics/Modules/Expenses/Resources/views/payment_items/index.blade.php deleted file mode 100755 index 5e32bc12..00000000 --- a/docker/statistics/Modules/Expenses/Resources/views/payment_items/index.blade.php +++ /dev/null @@ -1,99 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('payment_items.payment_items') }}

    -
    -
    - -
    -
    - - @include('expenses::payment_items.menu') - -
    -
    - - @include('flash::message') -
    -

    {{ __('payment_items.export_data_to_csv_excel') }}

    -
    - - - - - - - - @can('Payments-edit-payment-item') - - @endcan - @can('Payments-delete-payment-item') - - @endcan - - - - @if(count($payment_items)>0) - @foreach($payment_items as $item) - - - - - - @can('Payments-edit-payment-item') - - @endcan - @can('Payments-delete-payment-item') - - @endcan - - - @endforeach - @endif - -
    #{{ __('payment_items.name') }}{{ __('payment_items.unit_cost') }}{{ __('payment_items.expense_account') }}{{ __('payment_items.edit') }}{{ __('payment_items.delete') }}
    {{ $item->id }}{{ $item->name }}{{ ugandan_shillings($item->unit_cost) }}{{ get_name($item->account_id,'id', 'name', 'chart_of_accounts') }} - {{ __('payment_items.edit') }} - - {{ Form::model($item->id ,['method' => 'DELETE', 'route' => ['payment_items.destroy', $item->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Expenses/Resources/views/payment_items/menu.blade.php b/docker/statistics/Modules/Expenses/Resources/views/payment_items/menu.blade.php deleted file mode 100755 index 7dea3dc8..00000000 --- a/docker/statistics/Modules/Expenses/Resources/views/payment_items/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - {{ __('payment_items.add_payment_item') }} - {{ __('payment_items.view_payment_items') }} - {{ __('payment_items.inactive_payment_item') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Expenses/Resources/views/payments/bills/create.blade.php b/docker/statistics/Modules/Expenses/Resources/views/payments/bills/create.blade.php deleted file mode 100755 index 0c3387f6..00000000 --- a/docker/statistics/Modules/Expenses/Resources/views/payments/bills/create.blade.php +++ /dev/null @@ -1,702 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('finance.create_bills') }}

    -
    -
    - -
    -
    - - @include('expenses::payments.menu') - - @include('flash::message') - -
    -
    -
    - - {{ Form::open(['method'=>'post','route' => 'payments.save_bill']) }} -
    - -
    -
    - - - {{ __('payments.add_vendor') }} -
    -
    - -
    -
    -
    - {{ Form::label('start_date', __('finance.bill_date')) }} -
    - {{ Form::text('bill_date', '', ['class'=>'form-control required compulsory', 'readonly', 'id'=>'bill_date']) }} - -
    -
    -
    -
    - -
    -
    -
    - {{ Form::label('end_date', __('payments.bill_due_date')) }} -
    - {{ Form::text('bill_due_date', '', ['class'=>'form-control required compulsory', 'readonly', 'id'=>'bill_due_date']) }} - -
    -
    -
    -
    - -
    -
    -
    - {{ Form::label('bill_number', __('payments.bill_number')) }} - {{ Form::text('bill_number', '', ['class'=>'form-control required compulsory', 'id'=>'bill_number']) }} -
    -
    -
    - -
    -
    -
    -
    -
    - - - - - - - - - - - -
    -
    -
    #
    -
    {{ __('payments.item') }}
    -
    {{ __('payments.quantity') }}
    -
    {{ __('payments.unit_cost') }}
    -
    {{ __('payments.amount') }}
    -
    {{ __('payments.expense_account') }}
    -
    {{ __('payments.payable_account') }}
    -
    {{ __('payments.action') }}
    -
    -
    -
    - -
    - -
    - -
    -
    -
    - -
    -
    -
    - - @php - $option_items = ""; - foreach ($items as $item){ - $option_items .= ""; - } - $back_date = \Streamline\Models\HospitalInformation::first()->pluck('back_date'); - $option_suppliers = ""; - foreach ($suppliers as $item){ - $option_suppliers .= ""; - } - $option_suppliers .= ""; - @endphp - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - - -
    -
    -
    - -
    -
    -
    - - -
    -
    -
    - -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    - - -
    -
    -
    -
    - -
    - -
    -
    -
    -{{-- --}} - -
    -
    - {{ Form::close() }} -
    -
    -
    - - - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Expenses/Resources/views/payments/bills/edit.blade.php b/docker/statistics/Modules/Expenses/Resources/views/payments/bills/edit.blade.php deleted file mode 100755 index 101b9270..00000000 --- a/docker/statistics/Modules/Expenses/Resources/views/payments/bills/edit.blade.php +++ /dev/null @@ -1,830 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('payments.edit_bill') }}

    -
    -
    - -
    -
    - - @include('expenses::payments.menu') - - @include('flash::message') - - @php $back_date = \Streamline\Models\HospitalInformation::first()->pluck('back_date'); @endphp - -
    -
    -
    - - {{ Form::model($bill, ['method' => 'PATCH','route' => ['payments.update_bill', $bill->id]]) }} -
    - -
    -
    - - {{ Form::select('vendor', $suppliers, $bill->vendor, ['class' => 'form-control', 'id'=>'vendor']) }} - {{ __('payments.add_vendor') }} -
    -
    - -
    -
    -
    - {{ Form::label('start_date', __('finance.bill_date')) }} -
    - {{ Form::text('bill_date', \Carbon\Carbon::parse($bill->bill_date)->format('d-m-Y'), ['class'=>'form-control required compulsory', 'readonly', 'id'=>'bill_date']) }} - -
    -
    -
    -
    - -
    -
    -
    - {{ Form::label('end_date', __('payments.bill_due_date')) }} -
    - {{ Form::text('bill_due_date', \Carbon\Carbon::parse($bill->bill_due_date)->format('d-m-Y'), ['class'=>'form-control required compulsory', 'readonly', 'id'=>'bill_due_date']) }} - -
    -
    -
    -
    - -
    -
    -
    - {{ Form::label('bill_number', __('payments.bill_number')) }} - {{ Form::text('bill_number', $bill->bill_number, ['class'=>'form-control required compulsory', 'id'=>'bill_number']) }} -
    -
    -
    - -
    -
    - @if(count($payments) > 0) -

    Payments

    -
    -
    - - - - - - - - - - - - - - - @php - $total = 0; - @endphp - - @foreach($payments as $item) - - - - - - - - - - @php - $total += $item->amount; - @endphp - - @endforeach - - - - - - - - - - - - - -
    {{ __('payments.item') }}{{ __('payments.vendor') }}{{ __('payments.quantity') }}{{ __('payments.staff') }}{{ __('payments.date') }}{{ __('payments.unit_cost') }}{{ __('payments.amount') }}
    - @php - $bill = \Streamline\Models\HospitalBill::find($item->bill_id); - $items = explode(',', $bill->item_ids); - $quantities = explode(',', $bill->item_quantities); - @endphp - @if($bill->bill_type == 'DRU') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'drugs') }}
    - @endfor - @elseif($bill->bill_type == 'SUN') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'sundries') }}
    - @endfor - @elseif($bill->bill_type == 'DEN') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'dentals') }}
    - @endfor - @elseif($bill->bill_type == 'RAD') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'radiologies') }}
    - @endfor - @elseif($bill->bill_type == 'LAB') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'labs') }}
    - @endfor - @elseif($bill->bill_type == 'GEN') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'general_items') }}
    - @endfor - @elseif($bill->bill_type == 'PAY') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'payment_items') }}
    - @endfor - @endif -
    {{ get_name($item->vendor, 'id', 'name', 'suppliers') }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date_time_short($item->created_at) }} - @for($x = 0; $x < count($items); $x++) - {{ $quantities[$x]." units" }}
    - @endfor -
    - @if($bill->bill_type == 'DRU') - @for($x = 0; $x < count($items); $x++) - {{ ugandan_shillings(get_name($items[$x], 'id', 'cost_price', 'drugs')) }}
    - @endfor - @elseif($bill->bill_type == 'SUN') - @for($x = 0; $x < count($items); $x++) - {{ ugandan_shillings(get_name($items[$x], 'id', 'cost_price', 'sundries')) }}
    - @endfor - @elseif($bill->bill_type == 'DEN') - @for($x = 0; $x < count($items); $x++) - {{ ugandan_shillings(get_name($items[$x], 'id', 'cost_price', 'dentals')) }}
    - @endfor - @elseif($bill->bill_type == 'RAD') - @for($x = 0; $x < count($items); $x++) - {{ ugandan_shillings(get_name($items[$x], 'id', 'cost_price', 'radiologies')) }}
    - @endfor - @elseif($bill->bill_type == 'LAB') - @for($x = 0; $x < count($items); $x++) - {{ ugandan_shillings(get_name($items[$x], 'id', 'cost_price', 'labs')) }}
    - @endfor - @elseif($bill->bill_type == 'GEN') - @for($x = 0; $x < count($items); $x++) - {{ ugandan_shillings(get_name($items[$x], 'id', 'unit_cost', 'general_items')) }}
    - @endfor - @elseif($bill->bill_type == 'PAY') - @for($x = 0; $x < count($items); $x++) - {{ ugandan_shillings(get_name($items[$x], 'id', 'unit_cost', 'payment_items')) }}
    - @endfor - @endif -
    {{ ugandan_shillings($item->amount) }}
    {{ __('payments.total') }}{{ ugandan_shillings($total) }}
    - -
    - - @endif - -
    - - - - - - - @php - $items = explode(',', $bill->item_ids); - $item_quantity = explode(',', $bill->item_quantities); - $item_subtotals = explode(',', $bill->item_subtotals); - $expense_accounts = explode(',', $bill->item_accounts); - $payable_accounts = explode(',', $bill->payable_account); - //$item = explode(',', $bill->item_ids); - @endphp - - - @for($i = 0; $i < count($items); $i++) - - - - @endfor - -
    -
    -
    {{ __('payments.item') }}
    -
    {{ __('payments.quantity') }}
    -
    {{ __('payments.unit_cost') }}
    -
    {{ __('payments.amount') }}
    -
    {{ __('payments.expense_account') }}
    -
    {{ __('payments.payable_account') }}
    -
    {{ __('payments.action') }}
    -
    -
    -
    - -
    -
    -
    - {{ Form::select('item_id[]', $payment_items, $items[$i], ['class' => 'form-control compulsory', 'id'=>"item_$i"]) }} -
    -
    -
    - - @php - $option_items = ""; - foreach ($option_items_array as $item){ - $option_items .= ""; - } - - $option_suppliers = ""; - foreach ($option_suppliers_array as $item){ - $option_suppliers .= ""; - } - $option_suppliers .= ""; - @endphp - -
    -
    -
    - {{ Form::number('quantity[]', (is_null($item_quantity[$i]) ? 1 : $item_quantity[$i]), ['class' => 'form-control compulsory qty', 'id'=>"quantity_$i"]) }} -
    -
    -
    - -
    -
    -
    - {{ Form::number('unit_cost[]', ($item_subtotals[$i] / $item_quantity[$i]), ['class' => 'form-control compulsory unit_cost', 'id'=>"unit_cost_$i"]) }} -
    -
    -
    - -
    -
    -
    - {{ Form::number('amount[]', $item_subtotals[$i], ['class' => 'form-control amount', 'id'=>"amount_$i"]) }} -
    -
    -
    - -
    -
    -
    - {{ Form::text('expense_acc_name[]', isset($chart_of_accounts[$expense_accounts[$i]]) ? $chart_of_accounts[$expense_accounts[$i]] : '', ['class' => 'form-control', 'id'=>"expense_acc_name_$i", 'readonly']) }} - -
    -
    -
    - -
    -
    -
    - {{ Form::text('payable_acc_name[]', $chart_of_accounts[$payable_accounts[$i]], ['class' => 'form-control', 'id'=>"payable_acc_name_$i", 'readonly']) }} - -
    -
    -
    - -
    -
    - @if($i == 0) - - @else - - @endif -
    -
    - -
    -
    -
    - -
    -
    -
    - - -
    -
    -
    -
    - -
    - -
    -
    -
    - -
    -
    - {{ Form::close() }} -
    -
    -
    - - - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Expenses/Resources/views/payments/bills/inactive.blade.php b/docker/statistics/Modules/Expenses/Resources/views/payments/bills/inactive.blade.php deleted file mode 100755 index 0b57f710..00000000 --- a/docker/statistics/Modules/Expenses/Resources/views/payments/bills/inactive.blade.php +++ /dev/null @@ -1,599 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('payments.inactive_bills') }}

    -
    -
    - -
    -
    - - @include('expenses::payments.menu') - @include('flash::message') - -
    -
    -
    - -{{-- {{ Form::open(['method'=>'post','route' => 'payments.bills']) }}--}} -{{--
    --}} -{{--
    --}} -{{--
    --}} -{{-- --}} -{{-- --}} -{{--
    --}} -{{--
    --}} - -{{--
    --}} -{{--
    --}} -{{-- --}} -{{-- --}} -{{--
    --}} -{{--
    --}} - -{{--
    --}} -{{--
    --}} -{{-- --}} -{{-- --}} -{{--
    --}} -{{--
    --}} -{{--
    --}} -{{-- --}} -{{--
    --}} -{{--
    --}} -{{-- --}} -{{--
    --}} -{{--
    --}} -{{--
    --}} -{{-- {{ Form::submit('Submit', ['class'=>'btn btn-success btn-rounded btn-block pull-right']) }}--}} -{{--
    --}} -{{--
    --}} -{{--
    --}} -{{-- {{ Form::close() }}--}} -{{--
    --}} - -
    -
    - @if(isset($display)) -

    {!! isset($display) ? $display : '' !!}

    - @endif -
    -
    -
    - - - - - - - - - - - - - - - - @php - $count = 0; - $total = 0; - @endphp - - @if($bills) - @if(count($bills) > 0) - @foreach( $bills as $bill) - - - - - - @php - $items = explode(',', $bill->item_ids); - $quantities = explode(',', $bill->item_quantities); - $subtotals = explode(',', $bill->item_subtotals); - @endphp - - - - - - - @php - $count ++; - $total += $bill->total_amount; - @endphp - @endforeach - @endif - @endif - - - - - - - - - - - - - -
    #{{ __('payments.vendor') }}{{ __('payments.billing_number') }}{{ __('payments.due_date') }}{{ __('payments.items') }}{{ __('payments.item_quantities') }}{{ __('payments.item_amounts') }}{{ __('payments.bill_total') }}{{ __('payments.action') }}
    {{ ($count + 1)."." }}{{ get_name($bill->vendor, 'id', 'name', 'suppliers') }}{{ $bill->bill_number }}{{ streamline_date($bill->bill_due_date) }} - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'payment_items') }}
    - @endfor -
    - @for($x = 0; $x < count($quantities); $x++) - {{ ($quantities[$x] == 1) ? $quantities[$x]." unit": $quantities[$x]." units" }}
    - @endfor -
    - @for($x = 0; $x < count($subtotals); $x++) - {{ ugandan_shillings($subtotals[$x]) }}
    - @endfor -
    {{ ugandan_shillings($bill->total_amount) }} - {{ Form::model($bill->id ,['method' => 'POST', 'route' => ['payments.bill.activate', $bill->id]]) }} - - {{ Form::close() }} -
    {{ __('payments.total') }}{{ ugandan_shillings($total) }}
    - -
    -
    -
    - -
    -
    -
    - - - - - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Expenses/Resources/views/payments/bills/index.blade.php b/docker/statistics/Modules/Expenses/Resources/views/payments/bills/index.blade.php deleted file mode 100755 index 4f49072f..00000000 --- a/docker/statistics/Modules/Expenses/Resources/views/payments/bills/index.blade.php +++ /dev/null @@ -1,993 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('finance.bills') }}

    -
    -
    - -
    -
    - -@include('expenses::payments.menu') -@include('flash::message') - -
    - {{ Form::open(['method'=>'post','route' => 'payments.bills']) }} -
    -
    -
    - - -
    -
    - -
    -
    - - -
    -
    - -
    -
    - - -
    -
    - -
    -
    - - -
    -
    -
    - -
    -
    - -
    -
    -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success btn-rounded btn-block pull-right']) }} -
    -
    -
    - {{ Form::close() }} - -
    - -

    {{ $display }}

    - -

    - -
    - - - - - - - - - - - - - - - - - - - - - - - @php - $count = 0; - $total = 0; - $_amount_paid = 0; - $amount_paid = 0; - $balance = 0; - $back_date = \Streamline\Models\HospitalInformation::first()->pluck('back_date'); - @endphp - - @foreach( $bills as $bill) - - - - - - - - - - - @php - $items = explode(',', $bill->item_ids); - $quantities = explode(',', $bill->item_quantities); - $subtotals = explode(',', $bill->item_subtotals); - @endphp - - - - - - - - - @php $_amount_paid = (int)$bill->total_amount - (!is_null($bill->balance) ? (int)$bill->balance : (int)$bill->total_amount) ; @endphp - - - - - - - - @php - $count ++; - $total += $bill->total_amount; - $balance += (is_null($bill->balance) ? $bill->total_amount : $bill->balance); - $amount_paid += (is_null($bill->balance) ? 0 : ((int)$bill->total_amount - (int)$bill->balance)); - @endphp - @endforeach - - - - - - - - - - - - - - - - - - - - -
    #{{ __('finance.vendor') }}{{ __('finance.bill_number') }}{{ __('finance.bill_date') }}{{ __('finance.bill_due_date') }}{{ __('finance.bill_age') }}{{ __('finance.memo') }}{{ __('finance.payable_account') }}{{ __('finance.items') }}{{ __('finance.item_quantities') }}{{ __('finance.item_amounts') }}{{ __('finance.bill_total') }}{{ __('finance.amount_paid') }}{{ __('finance.balance') }}{{ __('finance.action') }}
    - {{ ($count + 1)."." }} - {{ get_name($bill->vendor, 'id', 'name', 'suppliers') }}{{ $bill->bill_number }}{{ streamline_date($bill->bill_date) }}{{ isset($bill->bill_due_date) ? streamline_date($bill->bill_due_date) : "" }}{{ getDaysTillNow($bill->bill_date) }}{{ $bill->bill_memo }} - @php $payable_accounts = explode(',', $bill->payable_account); @endphp - @foreach ($payable_accounts as $payable_account) - {{ get_name($payable_account, 'id', 'name', 'chart_of_accounts') }}
    - @endforeach -
    - @if($bill->bill_type == 'DRU') - @php $items_string = ""; @endphp - @for($x = 0; $x < count($items); $x++) @php $items_string .=get_name($items[$x], 'id' , 'name' , 'drugs' ) . "
    " ; @endphp @endfor {!! read_more($items_string, 'short_items' . $bill->bill_number, 'long_items' . $bill->bill_number) !!} - - @elseif($bill->bill_type == 'SUN') - @php $items_string = ""; @endphp - @for($x = 0; $x < count($items); $x++) @php $items_string .=get_name($items[$x], 'id' , 'name' , 'sundries' ) . ",
    " ; @endphp @endfor {!! read_more($items_string, 'short_items' . $bill->bill_number, 'long_items' . $bill->bill_number) !!} - - @elseif($bill->bill_type == 'DEN') - @php $items_string = ""; @endphp - @for($x = 0; $x < count($items); $x++) @php $items_string .=get_name($items[$x], 'id' , 'name' , 'dentals' ) . ",
    " ; @endphp @endfor {!! read_more($items_string, 'short_items' . $bill->bill_number, 'long_items' . $bill->bill_number) !!} - - @elseif($bill->bill_type == 'RAD') - @php $items_string = ""; @endphp - @for($x = 0; $x < count($items); $x++) @php $items_string .=get_name($items[$x], 'id' , 'name' , 'radiologies' ) . ",
    " ; @endphp @endfor {!! read_more($items_string, 'short_items' . $bill->bill_number, 'long_items' . $bill->bill_number) !!} - - @elseif($bill->bill_type == 'LAB') - @php $items_string = ""; @endphp - @for($x = 0; $x < count($items); $x++) @php $items_string .=get_name($items[$x], 'id' , 'name' , 'labs' ) . ",
    " ; @endphp @endfor {!! read_more($items_string, 'short_items' . $bill->bill_number, 'long_items' . $bill->bill_number) !!} - - @elseif($bill->bill_type == 'PAY') - @php $items_string = ""; @endphp - @for($x = 0; $x < count($items); $x++) @php $items_string .=get_name($items[$x], 'id' , 'name' , 'payment_items' ) . ",
    " ; @endphp @endfor {!! read_more($items_string, 'short_items' . $bill->bill_number, 'long_items' . $bill->bill_number) !!} - - @elseif($bill->bill_type == 'GEN') - @php $items_string = ""; @endphp - @for($x = 0; $x < count($items); $x++) @php $items_string .=get_name($items[$x], 'id' , 'name' , 'general_items' ) . ",
    " ; @endphp @endfor {!! read_more($items_string, 'short_items' . $bill->bill_number, 'long_items' . $bill->bill_number) !!} - - @elseif($bill->bill_type == 'EYE') - @php $items_string = ""; @endphp - @for($x = 0; $x < count($items); $x++) @php $items_string .=get_name($items[$x], 'id' , 'name' , 'eye_glasses' ) . ",
    " ; @endphp @endfor {!! read_more($items_string, 'short_items' . $bill->bill_number, 'long_items' . $bill->bill_number) !!} - - @endif -
    - @php $quantities_string = ""; @endphp - @for($x = 0; $x < count($quantities); $x++) @php $quantities_string .=($quantities[$x]==1) ? $quantities[$x]." unit": $quantities[$x]." units" . "
    " ; @endphp @endfor {!! read_more($quantities_string, 'short_quantities' . $bill->bill_number, 'long_quantities' . $bill->bill_number) !!} - -
    - @php $subtotals_string = ""; @endphp - @for($x = 0; $x < count($subtotals); $x++) @php $subtotals_string .=ugandan_shillings_with_decimals($subtotals[$x]) . "
    " ; @endphp @endfor {!! read_more($subtotals_string, 'short_subtotals' . $bill->bill_number, 'long_subtotals' . $bill->bill_number) !!} - -
    {{ ugandan_shillings_with_decimals($bill->total_amount) }}{{ ugandan_shillings_with_decimals($_amount_paid) }} - {{ ugandan_shillings_with_decimals(is_null($bill->balance) ? $bill->total_amount : $bill->balance) }} - - - @if ($bill->bill_memo != "UN-VERIFIED AUTO CREATED STRE@MLINE INVENTORY BILL") - @if(is_null($bill->balance)) - @if( Auth::user()->can('pay-hospital-bills') ) - - - @endif - - @elseif($bill->balance > 0) - @if( Auth::user()->can('pay-hospital-bills') ) - - @endif - {{ __('finance.view_payment_vouchers') }} - @elseif($bill->balance == 0) - {{ __('finance.view_payment_vouchers') }} - @endif - - @if((Auth::user()->can('edit-hospital-bills')) && ($bill->bill_type == 'PAY') && (strpos($bill->bill_number, "Journal") !== 0)) - @if(is_bill_payment_transaction_reconciled($bill->id)) - {{ __('payments.edit_bill') }} - @elseif($bill->payment_status == 1) - {{ __('payments.edit_bill') }} - @else - {{ __('payments.edit_bill') }} - @endif - @endif - {{-- check if it's not a journal before displaying delete --}} - @php - $bill_number = $bill->bill_number; - @endphp - - @if(Auth::user()->can('delete-hospital-bills') && strpos($bill_number, 'Journal') === false) - @if(is_bill_payment_transaction_reconciled($bill->id)) - {{ __('finance.delete_bill') }} - @elseif($bill->payment_status == 1) - {{ __('finance.delete_bill') }} - @else - - @endif - @endif - @else - {{ __('payments.bill_not_yet_verified') }} - @endif -
    {{ __('payments.total') }}{{ ugandan_shillings($total) }}{{ ugandan_shillings($amount_paid) }}{{ ugandan_shillings($balance) }}
    -
    - - @if(Auth::user()->can('Payments-make-bulk-bill-payments')) -
    - -
    - @endif - - -
    - -{{ Form::open(['method'=>'post','route' => 'payments.bills', 'id'=>'reload_bills_form']) }} -{{ Form::hidden('staff_member', $request->staff_member) }} -{{ Form::hidden('vendor', $request->vendor) }} -{{ Form::hidden('bill_status', $request->bill_status) }} -{{ Form::hidden('dates', $request->dates) }} -{{ Form::hidden('start_date', $request->start_date) }} -{{ Form::hidden('end_date', $request->end_date) }} -{{ Form::close() }} - - - - - - - - - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Expenses/Resources/views/payments/bills/voucher.blade.php b/docker/statistics/Modules/Expenses/Resources/views/payments/bills/voucher.blade.php deleted file mode 100755 index d70bf06a..00000000 --- a/docker/statistics/Modules/Expenses/Resources/views/payments/bills/voucher.blade.php +++ /dev/null @@ -1,292 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('payments.bill_payments_voucher') }}

    -
    -
    - -
    -
    - @include('flash::message') -
    -
    - -
    -
    -
    - -
    -
    -
    -
    -
    -
    - -

     {{ $hospital_information->name }}

    -

    {{ $hospital_information->phone_number }}, {{ $hospital_information->email }}, -
    {{ get_name($hospital_information->sub_county,'id', 'name', 'subcounties') }}, {{ get_name($hospital_information->district,'id', 'name', 'districts') }}, -
    {{ $hospital_information->country }}.

    -
    -
    -
    -
    -
    - -
    -
    -
    -
    - - - - - - - - - - - - - @if(Auth::user()->can('delete-payment-record')) - - @endif - - - - @php - $total = 0; - @endphp - - @foreach($payments as $item) - - - - - - - - - - - @if(Auth::user()->can('delete-payment-record')) - - @endif - - @php - $total += $item->amount; - @endphp - - @endforeach - - - - - - - - - - - - - @if(Auth::user()->can('delete-payment-record')) - - @endif - -
    {{ __('payments.items') }}{{ __('payments.vendor') }}{{ __('payments.quantity') }}{{ __('payments.unit_cost') }}{{ __('payments.amount_paid') }}{{ __('payments.paid_from_bank') }}{{ __('payments.staff') }}{{ __('payments.transaction_date') }}{{ __('payments.record_date') }}{{ __('payments.action') }}
    - @php - $bill = \Streamline\Models\HospitalBill::find($item->bill_id); - $items = explode(',', $bill->item_ids); - $quantities = explode(',', $bill->item_quantities); - @endphp - @if($bill->bill_type == 'DRU') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'drugs') }}
    - @endfor - @elseif($bill->bill_type == 'SUN') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'sundries') }}
    - @endfor - @elseif($bill->bill_type == 'DEN') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'dentals') }}
    - @endfor - @elseif($bill->bill_type == 'RAD') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'radiologies') }}
    - @endfor - @elseif($bill->bill_type == 'LAB') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'labs') }}
    - @endfor - @elseif($bill->bill_type == 'GEN') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'general_items') }}
    - @endfor - @elseif($bill->bill_type == 'PAY') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'payment_items') }}
    - @endfor - @elseif($bill->bill_type == 'EYE') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'eye_glasses') }}
    - @endfor - @endif -
    {{ get_name($item->vendor, 'id', 'name', 'suppliers') }} - @for($x = 0; $x < count($items); $x++) - {{ $quantities[$x]." units" }}
    - @endfor -
    - @if($bill->bill_type == 'DRU') - @for($x = 0; $x < count($items); $x++) - {{ ugandan_shillings(get_name($items[$x], 'id', 'cost_price', 'drugs')) }}
    - @endfor - @elseif($bill->bill_type == 'SUN') - @for($x = 0; $x < count($items); $x++) - {{ ugandan_shillings(get_name($items[$x], 'id', 'cost_price', 'sundries')) }}
    - @endfor - @elseif($bill->bill_type == 'DEN') - @for($x = 0; $x < count($items); $x++) - {{ ugandan_shillings(get_name($items[$x], 'id', 'cost_price', 'dentals')) }}
    - @endfor - @elseif($bill->bill_type == 'RAD') - @for($x = 0; $x < count($items); $x++) - {{ ugandan_shillings(get_name($items[$x], 'id', 'cost_price', 'radiologies')) }}
    - @endfor - @elseif($bill->bill_type == 'LAB') - @for($x = 0; $x < count($items); $x++) - {{ ugandan_shillings(get_name($items[$x], 'id', 'cost_price', 'labs')) }}
    - @endfor - @elseif($bill->bill_type == 'GEN') - @for($x = 0; $x < count($items); $x++) - {{ ugandan_shillings(get_name($items[$x], 'id', 'cost_price', 'general_items')) }}
    - @endfor - @elseif($bill->bill_type == 'PAY') - @for($x = 0; $x < count($items); $x++) - {{ ugandan_shillings(get_name($items[$x], 'id', 'unit_cost', 'payment_items')) }}
    - @endfor - @elseif($bill->bill_type == 'EYE') - @for($x = 0; $x < count($items); $x++) - {{ ugandan_shillings(get_name($items[$x], 'id', 'buying_price', 'eye_glasses')) }}
    - @endfor - @endif -
    {{ ugandan_shillings($item->amount) }}{{ get_name($item->account_id, 'id', 'name', 'chart_of_accounts') }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item->expense_date) }}{{ streamline_date_time_short($item->created_at) }} - @if(is_payment_transaction_reconciled($item->id) == false) - - @else - {{ __('payments.undo_payment') }} - @endif -
    {{ __('payments.total') }}{{ ugandan_shillings($total) }}
    - -
    -
    -
    - -
    -
    -
    - - - -@endsection - -@push('scripts') - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Expenses/Resources/views/payments/details.blade.php b/docker/statistics/Modules/Expenses/Resources/views/payments/details.blade.php deleted file mode 100755 index e2305ffd..00000000 --- a/docker/statistics/Modules/Expenses/Resources/views/payments/details.blade.php +++ /dev/null @@ -1,111 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('payments.payments_voucher') }}

    -
    -
    - -
    -
    - -
    - @include('flash::message') -
    - {{ Form::open(['method' => 'POST', 'route' => 'payments.print_payment_voucher_detail', 'id' =>'voucherPrint', 'target'=>'_blank']) }} - - - - - - -
    - {{ __('payments.new_payment') }} - -
    - {{ Form::close() }} - -
    - -
    - -
    - - - - - - - - - - - - - @php - $total = 0; - @endphp - - @foreach( $payment as $item) - - - - - - - - - @php - $total += $item->amount; - @endphp - - @endforeach - - - - - - - - - - -
    {{ __('payments.item') }}{{ __('payments.vendor') }}{{ __('payments.item_memo') }}{{ __('payments.quantity') }}{{ __('payments.unit_cost') }}{{ __('payments.amount') }}
    {{ get_name($item->item_id, 'id', 'name', 'payment_items') }}{{ get_name($item->vendor, 'id', 'name', 'suppliers') }}{{ $item->item_memo }}{{ $item->quantity }}{{ ugandan_shillings($item->unit_cost) }}{{ ugandan_shillings($item->amount) }}
    {{ __('payments.total') }}{{ ugandan_shillings($total) }}
    - -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Expenses/Resources/views/payments/details_edit.blade.php b/docker/statistics/Modules/Expenses/Resources/views/payments/details_edit.blade.php deleted file mode 100755 index 36bc9df8..00000000 --- a/docker/statistics/Modules/Expenses/Resources/views/payments/details_edit.blade.php +++ /dev/null @@ -1,505 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('payments.edit_payments') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') - - {{ Form::model($trans_id ,['method' => 'PATCH', 'route' => ['payments.update_payments', $trans_id], 'data-toggle' => 'validator', 'data-confirm' => 'Are you sure you want to update these payments?']) }} - {{ Form::hidden('trans_id', $trans_id) }} -
    -
    -
    -
    -
    -
    -
    -
    -
    - {{ __('payments.items') }} -
    -
    -
    -
    -
    -
    -
    - -
    - -
    - -
    - -
    - -
    - -
    - -
    - -
    - -
    -
    - -
    - @if(count($payments) > 0) - @foreach($payments as $item) -
    -
    -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - @php $expense_acc_name = get_name($item->expense_account, 'id', 'name', 'chart_of_accounts'); @endphp - - -
    -
    -
    -
    - @endforeach - - -
    - - @php - $option_items = ""; - foreach ($items as $item){ - $option_items .= ""; - } - - $option_suppliers = ""; - foreach ($suppliers as $item){ - $option_suppliers .= ""; - } - $option_suppliers .= ""; - @endphp - - - -
    - -
    -
    -
    - - @endif -
    -
    -
    -
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('payments.payment') }}: #{{ $trans_id }}
    {{ __('finance.account_to_pay_from') }}:{{ __('finance.date_of_expense') }}:{{ __('finance.current_account_balance') }}:{{ __('finance.payment_items_total') }}:
    -
    - @php $bank_name = get_name($bank, 'id', 'name', 'chart_of_accounts') @endphp - {{ Form::text('bank', $bank_name, ['class'=>'form-control compulsory', 'id'=>'bank', 'readonly']) }} -
    -
    -
    -
    - {{ Form::text('expense_date', \Carbon\Carbon::parse($expense_date)->format('d-m-Y'), ['class'=>'form-control required compulsory', 'id'=>'expense_date', 'readonly']) }} - -
    -
    -
    -
    - {{ Form::text('account_balance', $bank_balance, ['class'=>'form-control compulsory', 'id'=>'account_balance', 'readonly']) }} -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    - {{ Form::textarea('memo', $memo, ['class'=>'form-control compulsory', 'placeholder'=>'Memo']) }} -
    -
    - -
    -
    -
    - -
    -
    -
    -
    -
    - -
    - {{ Form::close() }} -
    -
    - -@endsection - -@push('scripts') - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Expenses/Resources/views/payments/history.blade.php b/docker/statistics/Modules/Expenses/Resources/views/payments/history.blade.php deleted file mode 100755 index 357cd5c6..00000000 --- a/docker/statistics/Modules/Expenses/Resources/views/payments/history.blade.php +++ /dev/null @@ -1,391 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -

    Cash Expenses Report

    -
    -
    - -
    -
    - -@include('expenses::payments.menu') -@include('flash::message') -
    -
    -
    -
    - - {{ Form::open(['method'=>'post','route' => 'payments.view_payments']) }} -
    -
    -
    - - -
    -
    - -
    -
    - - -
    -
    - -
    -
    - - -
    -
    -
    - -
    -
    - -
    -
    -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success btn-rounded btn-block pull-right']) }} -
    -
    -
    - {{ Form::close() }} -
    - -
    -
    - @if(isset($display)) -

    {!! isset($display) ? $display : '' !!}

    - @endif -
    -
    -
    - - - - - - - - - - - - - - - - - @php - $count = 0; - $total = 0; - @endphp - - @if($payments) - @if(count($payments) > 0) - @foreach( $payments as $item) - @php - $display_state = ""; - $hospital_bill_id = $item->bill_id; - $hospital_bill = is_null($item->bill_id) ? null : \Streamline\Models\HospitalBill::withTrashed()->find($item->bill_id); - if ($hospital_bill) { - $hospital_bill_type = $hospital_bill->bill_type; - $display_state = in_array($hospital_bill_type, ['DRU','SUN']) ? 'none' : ''; - } - @endphp - - - - - - - - - - - - - @php - if ($display_state != 'none') { - $count ++; - $total += $item->sum; - } - @endphp - @endforeach - @endif - @endif - - - - - - - - - - - - - - -
    #Staff In-ChargeVendorTranscation IDPaid From AccountMemoPayment DateRecord DateAmountAction
    {{ $count + 1 }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ get_name($item->vendor, 'id', 'name', 'suppliers') }}{{ $item->transaction_id }}{{ get_name($item->account_id, 'id', 'name', 'chart_of_accounts') }}{{ $item->memo }}{{ streamline_date($item->expense_date) }}{{ streamline_date_time_short($item->created_at) }}{{ ugandan_shillings($item->sum) }} - @if($item->bill_id) - Detail - @else - Detail - @endif - - @if(Auth::user()->can('edit-payment-record')) - @if (is_payment_transaction_reconciled($item->id) == false) - {{ __('payments.edit') }} - @else - {{ __('payments.edit') }} - @endif - @endif - - @if(Auth::user()->can('delete-payment-record')) - @if (is_payment_transaction_reconciled($item->id) == false) - - @else - {{ __('payments.delete') }} - @endif - @endif -
    Total{{ ugandan_shillings($total) }}
    - -
    -
    -
    - -
    -
    -
    -
    - -{{ Form::open(['method'=>'post','route' => 'payments.view_payments', 'id'=>'reload_payments']) }} -{{ Form::hidden('staff_member', $request->staff_member) }} -{{ Form::hidden('vendor', $request->vendor) }} -{{ Form::hidden('dates', $request->dates) }} -{{ Form::hidden('start_date', $request->start_date) }} -{{ Form::hidden('end_date', $request->end_date) }} -{{ Form::close() }} - - - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Expenses/Resources/views/payments/index.blade.php b/docker/statistics/Modules/Expenses/Resources/views/payments/index.blade.php deleted file mode 100755 index da1d665f..00000000 --- a/docker/statistics/Modules/Expenses/Resources/views/payments/index.blade.php +++ /dev/null @@ -1,746 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('payments.payments') }}

    -
    -
    - -
    -
    - -@include('expenses::payments.menu') - -
    - @include('flash::message') - - {{ Form::open(['route' => 'payments.make_payment', 'data-toggle' => 'validator', 'data-confirm' => 'Are you sure you want proceed with this payment?']) }} - -
    -
    -
    -
    -
    -
    -
    -
    - {{ __('payments.items') }} - {{ __('payments.add_item') }} -
    - -
    -
    -
    -
    -
    -
    -
    -
    - -
    - -
    -
    -
    - -
    -
    - -
    - - {{ __('payments.add_vendor') }} -
    -
    -
    - - @php - $back_date = \Streamline\Models\HospitalInformation::first()->pluck('back_date'); - - $option_items = ""; - foreach ($items as $item){ - $option_items .= ""; - } - - $option_suppliers = ""; - foreach ($suppliers as $item){ - $option_suppliers .= ""; - } - $option_suppliers .= ""; - - $option_expense_accounts = ""; - foreach ($expense_accounts as $exp_account){ - $option_expense_accounts .= ""; - } - @endphp - -
    -
    - -
    - -
    -
    -
    - -
    -
    - -
    - -
    -
    -
    - -
    -
    - -
    - -
    -
    -
    - -
    -
    - -
    - @if (Auth::user()->can('change-expense-account-on-make-payment')) - @php $can_change_expense_account = 1; @endphp - - @else - @php $can_change_expense_account = 0; @endphp - - - @endif -
    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('payments.payment') }}
    {{ __('finance.account_to_pay_from') }}:{{ __('finance.date_of_expense') }}:{{ __('finance.current_account_balance') }}:{{ __('finance.payment_items_total') }}:
    -
    - -
    -
    -
    - {{ Form::text('expense_date', '', ['class'=>'form-control compulsory', 'id'=>'expense_date', 'readonly']) }} -
    -
    -
    - {{ Form::text('account_balance', 0, ['class'=>'form-control compulsory', 'id'=>'account_balance', 'readonly']) }} -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    - {{ Form::textarea('memo', '', ['class'=>'form-control compulsory', 'placeholder'=>'Memo']) }} -
    -
    - -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    - {{ Form::close() }} -
    - - - -@endsection - -@push('scripts') - - - - -@endpush diff --git a/docker/statistics/Modules/Expenses/Resources/views/payments/inventory/create.blade.php b/docker/statistics/Modules/Expenses/Resources/views/payments/inventory/create.blade.php deleted file mode 100755 index c0c03b39..00000000 --- a/docker/statistics/Modules/Expenses/Resources/views/payments/inventory/create.blade.php +++ /dev/null @@ -1,255 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('payments.create_inventory_bill') }}

    -
    -
    - -
    -
    - - @include('expenses::payments.menu') - @include('flash::message') - -
    - - {{ Form::open(['method'=>'post','route' => 'payments.bills.inventory.save']) }} -
    - -
    -
    - -
    - {{ Form::text('vendor_name', get_name($quotation->supplier_id, 'id', 'name', 'suppliers'), ['class'=>'form-control required compulsory', 'readonly']) }} - {{ Form::hidden('vendor', $quotation->supplier_id) }} -
    -
    -
    - -
    -
    -
    - {{ Form::label('start_date', __('payments.bill_date')) }} -
    - {{ Form::text('bill_date', '', ['class'=>'form-control required compulsory', 'readonly','required', 'id'=>'bill_date']) }} - -
    -
    -
    -
    - -
    -
    -
    - {{ Form::label('end_date', __('payments.bill_due_date')) }} -
    - {{ Form::text('bill_due_date', '', ['class'=>'form-control required compulsory', 'readonly','required', 'id'=>'bill_due_date']) }} - -
    -
    -
    -
    - -
    -
    -
    - {{ Form::label('bill_number', __('payments.bill_number')) }} - {{ Form::text('bill_number', '', ['class'=>'form-control required compulsory','required', 'id'=>'bill_number']) }} -
    -
    -
    - -
    - -
    - - - - - - - - - - -{{-- --}} - - - - @php - $total_amount = 0; - $approved_amount =0; - @endphp - @foreach($quotations as $result) - - - - - - - - - - - - - - -{{-- --}} - - @endforeach - -
    {{ __('payments.item_name') }}{{ __('payments.approved_quantity') }}{{ __('payments.approved_bill_per_item') }}{{ __('payments.approved_cost') }}{{ __('payments.received_quantity') }}{{ __('payments.received_bill_per_item') }}{{ __('payments.received_cost') }}Chart Of Account
    - @if($result->quotation_type_id == 1) - - - {{ get_name($result->drug_id, 'id', 'name', 'drugs') }} - @elseif($result->quotation_type_id == 2) - - - {{ get_name($result->drug_id, 'id', 'name', 'sundries') }} - @elseif($result->quotation_type_id == 3) - - - {{ get_name($result->drug_id, 'id', 'name', 'dentals') }} - @elseif($result->quotation_type_id == 4) - - - {{ get_name($result->drug_id, 'id', 'name', 'radiologies') }} - @elseif($result->quotation_type_id == 5) - - - {{ get_name($result->drug_id, 'id', 'name', 'labs') }} - @elseif($result->quotation_type_id == 6) - - - {{ get_name($result->drug_id, 'id', 'name', 'general_items') }} - @elseif($result->quotation_type_id == 7) - - - {{ get_name($result->drug_id, 'id', 'name', 'eye_glasses') }} - @endif - - - - - - - - - - - - @php - $total = $result->total_price; - $total_amount += $total; - $approved_amount += ($result->bill * $result->quantity); - @endphp - - @if($result->quotation_type_id != 6) - - @else - - @endif - --}} -{{-- --}} -{{--
    -
    - -
    -
    -
    - - -
    -
    -
    -
    - -
    - -
    -

    -
    - -
    - -
    -
    -
    - -
    -
    -

    {{ __('payments.quotation_approved_by') }}: {{ get_full_name($quotations[0]->approval_user, 'id', 'first_name', 'last_name', 'users') }}

    -

    {{ __('payments.quotation_received_by') }}: {{ get_full_name($quotations[0]->receive_user, 'id', 'first_name', 'last_name', 'users') }}

    -

    {{ __('payments.items_received_on') }}: {{ streamline_date($quotations[0]->receive_date) }}

    -
    -
    - -
    -
    -
    -
    - -
    - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Expenses/Resources/views/payments/inventory/index.blade.php b/docker/statistics/Modules/Expenses/Resources/views/payments/inventory/index.blade.php deleted file mode 100755 index 975e4890..00000000 --- a/docker/statistics/Modules/Expenses/Resources/views/payments/inventory/index.blade.php +++ /dev/null @@ -1,311 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('payments.create_bill_received_inventory') }}

    -
    -
    - -
    -
    - - @include('expenses::payments.menu') - @include('flash::message') - -
    -
    -
    -
    - - {{ Form::open(['method'=>'post','route' => 'payments.bills.inventory']) }} -
    -
    -
    - - -
    -
    - -
    -
    - - -
    -
    - -
    -
    - - -
    -
    -
    - -
    -
    - -
    -
    -
    - {{ Form::submit(__('payments.submit'), ['class'=>'btn btn-success btn-rounded btn-block pull-right']) }} -
    -
    -
    - {{ Form::close() }} -
    - -
    -
    - @if(isset($display)) -

    {!! isset($display) ? $display : '' !!}

    - @endif -
    -
    -
    - - - - - - - - - - - - - - @if(count($quotations) > 0) - @foreach($quotations as $result) - - - - - - - - - - @endforeach - @endif - -
    {{ __('payments.item_type') }}{{ __('payments.quantity') }}{{ __('payments.cost') }}{{ __('payments.supplier') }}{{ __('payments.approved_by') }}{{ __('payments.received_on') }}
    - {{ get_name($result->quotation_type_id, 'id', 'name', 'quotation_types') }} - - @php - $results_to_count = []; - $quotation_number = $result->quotation_number; - if ($quotation_number) { - $results_to_count = DB::select("select drug_id from quotations where quotation_number = {$quotation_number} AND deleted_at IS NULL"); - } - @endphp - {{ count($results_to_count) }} {{ __('payments.items') }} - - @php - $quote_total = 0; - $quotation_number = $result->quotation_number; - if ($quotation_number) { - $total_amount = DB::select("select SUM(total_price) as total from quotations where quotation_number = {$quotation_number} AND deleted_at IS NULL"); - $quote_total = $total_amount[0]->total; - } - @endphp - {{ ugandan_shillings($quote_total) }} - - {{ get_name(get_name($result->quotation_number, "quotation_number", "supplier_id", 'quotations'), "id", "name", "suppliers") }} - - @php - $user_id = get_name($result->quotation_number, "quotation_number", "approval_user", 'quotations'); - @endphp - {{ get_full_name($user_id, "id", "first_name", "last_name", "users") }} - - {{ streamline_date(get_name($result->quotation_number, "quotation_number", "receive_date", 'quotations')) }} - - {{ Form::open(['method'=>'post','route'=>'payments.bills.inventory.create' ]) }} - {{ Form::hidden('quotation_number', $result->quotation_number) }} - - {{ Form::close() }} -
    -
    -
    -
    - -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Expenses/Resources/views/payments/inventory/print.blade.php b/docker/statistics/Modules/Expenses/Resources/views/payments/inventory/print.blade.php deleted file mode 100755 index e69de29b..00000000 diff --git a/docker/statistics/Modules/Expenses/Resources/views/payments/menu.blade.php b/docker/statistics/Modules/Expenses/Resources/views/payments/menu.blade.php deleted file mode 100755 index fbc6f711..00000000 --- a/docker/statistics/Modules/Expenses/Resources/views/payments/menu.blade.php +++ /dev/null @@ -1,10 +0,0 @@ -
    -
    - {{ __('payments.new_payment') }} - {{ __('payments.create_or_register_bill') }} - {{ __('payments.received_inventory_bills') }} - {{ __('payments.bills') }} - {{ __('payments.expenses_report') }} - {{ __('payments.inactive_bills') }} -
    -
    diff --git a/docker/statistics/Modules/Expenses/Resources/views/payments/new_functioning.blade.php b/docker/statistics/Modules/Expenses/Resources/views/payments/new_functioning.blade.php deleted file mode 100755 index 75f63354..00000000 --- a/docker/statistics/Modules/Expenses/Resources/views/payments/new_functioning.blade.php +++ /dev/null @@ -1,574 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('payments.make_payment') }}

    -
    -
    - -
    -
    - - - -
    -
    - - @include('flash::message') - -
    - -
    -
    -
    -
    -

     {{ $hospital_information->name }}

    -

    {{ $hospital_information->phone_number }}, {{ $hospital_information->email }}, -
    {{ get_name($hospital_information->sub_county,'id', 'name', 'subcounties') }}, {{ get_name($hospital_information->district,'id', 'name', 'districts') }}, -
    {{ $hospital_information->country }}.

    -
    -
    -
    -
    -

    {{ __('payments.payment_date') }} : {{ streamline_date_time(\Carbon\Carbon::now()->toDateTimeString()) }}

    -
    -
    -
    -
    -
    - -
    - {{ Form::open(['route' => 'payments.make_payment', 'data-toggle' => 'validator']) }} - -
    -
    -
    -
    -
    -
    -
    -
    - {{ __('payments.items') }} -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    - -
    -
    -
    - - @php - $options = ""; - foreach ($items as $item){ - $options .= ""; - } - @endphp - -
    -
    - -
    - -
    -
    -
    - -
    -
    -
    -
    - -
    -
    - -
    -
    - -
    - -
    - -
    -
    - -
    -
    - - {{ __('payments.add_item') }} -
    - -
    -
    -
    - - -
    -
    - -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('payments.payment') }}
    {{ __('payments.bank_account_details') }}
    -
    - - -
    -
    -
    - - {{ Form::text('account_balance', 0, ['class'=>'form-control compulsory', 'id'=>'account_balance', 'readonly']) }} - {{ Form::hidden('bank_id', 0, ['class'=>'form-control compulsory', 'id'=>'bank_id']) }} -
    -
    - -
    -
    -
    - -
    - -
    -
    -
    -
    - -
    -
    -
    -
    -
    - {{ Form::textarea('memo', '', ['class'=>'form-control', 'placeholder'=>'Memo']) }} -
    -
    - -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    - {{ Form::close() }} - -
    -
    -
    - - - - -@endsection - -@push('scripts') - - - - - - -@endpush - - - - diff --git a/docker/statistics/Modules/Expenses/Resources/views/payments/print_voucher_details.blade.php b/docker/statistics/Modules/Expenses/Resources/views/payments/print_voucher_details.blade.php deleted file mode 100644 index 66f5b67d..00000000 --- a/docker/statistics/Modules/Expenses/Resources/views/payments/print_voucher_details.blade.php +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Patient Receipt - Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') - - - - - - - - - - - - - - -
    {{ __('payments.payment') }}#{{ $trans_id }}{{ __('payments.payment_made_on') }}{{ streamline_date($expense_date) }}{{ __('payments.record_date') }}{{ streamline_date_time_short($date) }}
    {{ __('payments.memo') }}{{ $memo }}
    - - - - - - - - - - - - - - @php - $total = 0; - @endphp - - @foreach( $payment as $item) - - - - - - - - - @php - $total += $item->amount; - @endphp - - @endforeach - - - - - - - - - -
    {{ __('payments.item') }}{{ __('payments.vendor') }}{{ __('payments.item_memo') }}{{ __('payments.quantity') }}{{ __('payments.unit_cost') }}{{ __('payments.amount') }}
    {{ get_name($item->item_id, 'id', 'name', 'payment_items') }}{{ get_name($item->vendor, 'id', 'name', 'suppliers') }}{{ $item->item_memo }}{{ $item->quantity }}{{ ugandan_shillings($item->unit_cost) }}{{ ugandan_shillings($item->amount) }}
    {{ __('payments.total') }}{{ ugandan_shillings($total) }}
    -
    - -
    -
    -

    {{ __('payments.received_by') }}:

    - {{ __('payments.name') }}: ..............................................................

    - {{ __('payments.signature') }}: ...............................


    -

    {{ __('payments.printed_by') }}: {{ get_full_name(auth()->User()->id, 'id', 'first_name', 'last_name', 'users') }}

    -
    -
    -
    - - - \ No newline at end of file diff --git a/docker/statistics/Modules/Expenses/Resources/views/payments/receipt.blade.php b/docker/statistics/Modules/Expenses/Resources/views/payments/receipt.blade.php deleted file mode 100755 index 9c36150c..00000000 --- a/docker/statistics/Modules/Expenses/Resources/views/payments/receipt.blade.php +++ /dev/null @@ -1,136 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('payments.services_receipt') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - {{ __('patient_finance.tel') }}: {{ $hospital_information->phone_number }}
    - {{ __('patient_finance.email') }}: {{ $hospital_information->email }}
    - {{ __('patient_finance.cashier') }}: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - {{ __('patient_finance.date') }}: {{ streamline_date_time_short($receipt_date) }}
    - {{ __('patient_finance.receipt_number') }}: {{ $receipt_number }}
    - REF : {{ $patient->first_name }} {{ $patient->last_name }}
    - {{ __('patient_finance.patient_category') }} : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - @for($i = 0; $i < count($service_ids_array); $i++) - - - - - @endfor - - - - - - - - - - - @if($discounts_applied > 0) - - - - - @endif - - - - - - -
    {{ __('patient_finance.description') }}{{ __('patient_finance.price') }}
    {{ get_name($service_ids_array[$i], "id", "name", "services") }}{{ ugandan_shillings($service_prices_array[$i]) }}
    {{ __('patient_finance.total_to_pay') }}{{ ugandan_shillings($total_amount_pay) }}
    {{ __('payments.discounts_applied') }}{{ ugandan_shillings($discounts_applied) }}
    {{ __('payments.patient_to_pay') }}{{ ugandan_shillings($patient_to_pay) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Expenses/Routes/api.php b/docker/statistics/Modules/Expenses/Routes/api.php deleted file mode 100644 index 79c17909..00000000 --- a/docker/statistics/Modules/Expenses/Routes/api.php +++ /dev/null @@ -1,18 +0,0 @@ -get('/expenses', function () { - return "Expenses"; -}); diff --git a/docker/statistics/Modules/Expenses/Routes/web.php b/docker/statistics/Modules/Expenses/Routes/web.php deleted file mode 100644 index 657287f0..00000000 --- a/docker/statistics/Modules/Expenses/Routes/web.php +++ /dev/null @@ -1,52 +0,0 @@ - ['auth', 'disablebackbutton', 'user-locale','subscription-tracking', 'password-expiry']], function () { - /* Payments */ - Route::any('payments/get_expense_acc', 'PaymentController@get_expense_acc')->name('payments.get_expense_acc'); - Route::any('payments/total_price', 'PaymentController@total_price')->name('payments.total_price'); - - Route::get('payments/new_payment', 'PaymentController@index')->name('payments.new_payment'); - Route::any('/payments/get_payment_item_details', 'PaymentController@get_payment_item_details')->name('payments.get_payment_item_details'); - Route::any('/payments/get_account_balance', 'PaymentController@get_account_balance')->name('payments.get_account_balance'); - Route::any('/payments/make_payment', 'PaymentController@make_payment')->name('payments.make_payment'); - Route::any('/payments/view_payments', 'PaymentController@history')->name('payments.view_payments'); - Route::any('/payments/payment_details/{id}', 'PaymentController@detail')->name('payments.payment_details'); - Route::post('/print_payment_voucher_details', 'PaymentController@print_payment_voucher_detail')->name('payments.print_payment_voucher_detail'); - Route::any('/payments/payment_details_edit/{id}', 'PaymentController@edit_payments')->name('payments.payment_details_edit'); - Route::any('/payments/update_payments', 'PaymentController@update_payments')->name('payments.update_payments'); - Route::any('/payments/delete_payments', 'PaymentController@delete_payments')->name('payments.delete_payments'); - Route::any('/payments/streamline_bill/transfer', 'PaymentController@transfer_to_account')->name('payments.streamline_bill.transfer'); - - /* bills */ - Route::any('/payments/bills', 'PaymentController@bills')->name('payments.bills'); - Route::any('/payments/bills_bulk_pay', 'PaymentController@bills_bulk_pay')->name('payments.bills_bulk_pay'); - Route::any('/payments/save_bill', 'PaymentController@save_bill')->name('payments.save_bill'); - Route::any('/payments/create_bills', 'PaymentController@create_bills')->name('payments.create_bills'); - Route::any('/payments/edit_bill/{id}', 'PaymentController@edit_bill')->name('payments.edit_bill'); - Route::any('/payments/update_bill/{id}', 'PaymentController@update_bill')->name('payments.update_bill'); - Route::any('/payments/delete_bill', 'PaymentController@delete_bill')->name('payments.delete_bill'); - Route::any('/payments/pending_bills', 'PaymentController@pending_bills')->name('payments.pending_bills'); - Route::any('/payments/inactive_bills', 'PaymentController@inactive_bills')->name('payments.inactive_bills'); - Route::any('/payments/get_bill_details/{id}', 'PaymentController@get_bill_details')->name('payments.get_bill_details'); - Route::any('/payments/get_bill_number', 'PaymentController@get_bill_number')->name('payments.get_bill_number'); - Route::any('/payments/store_bill_payment', 'PaymentController@store_bill_payment')->name('payments.store_bill_payment'); - Route::any('payments/undo_bill_payment/{id}', 'PaymentController@undo_bill_payment')->name('payments.undo_bill_payment'); - Route::any('/payments/voucher/{id}', 'PaymentController@voucher')->name('payments.voucher'); - Route::any('/payments/bills/inactive', 'PaymentController@bills_inactive')->name('payments.bills.inactive'); - Route::post('/payments/bill/activate{id}', 'PaymentController@bill_activate')->name('payments.bill.activate'); - Route::any('/payments/custom_bills/{vendor}/{category}', 'PaymentController@custom_bills')->name('payments.custom_bills'); - Route::any('/payments/custom_bill/{vendor}/{category}/{id}', 'PaymentController@custom_bill')->name('payments.custom_bill'); - - /* inventory bills */ - Route::any('/payments/bills/inventory', 'PaymentController@inventory')->name('payments.bills.inventory'); - Route::any('/payments/bills/inventory/create', 'PaymentController@create_inventory_bill')->name('payments.bills.inventory.create'); - Route::any('/payments/bills/inventory/save', 'PaymentController@save_inventory_bill')->name('payments.bills.inventory.save'); - - /* Payment Items */ - Route::any('/payment_items/inactive', 'PaymentItemController@inactive')->name('payment_items.inactive'); - Route::post('/payment_items/activate{id}', 'PaymentItemController@activate')->name('payment_items.activate'); - Route::resource('payment_items', 'PaymentItemController'); - Route::any('/payment_items/quick_update', 'PaymentItemController@quick_update')->name('payment_items.quick_update'); -}); \ No newline at end of file diff --git a/docker/statistics/Modules/Expenses/bitbucket-pipelines.yml b/docker/statistics/Modules/Expenses/bitbucket-pipelines.yml deleted file mode 100644 index e850a8fd..00000000 --- a/docker/statistics/Modules/Expenses/bitbucket-pipelines.yml +++ /dev/null @@ -1,19 +0,0 @@ -image: alpine/git:latest - -pipelines: - branches: - main: - - step: - name: Merge To Beta - script: - - git remote set-url origin https://Kabricks:${APP_SECRET}@bitbucket.org/dcsammi/${BITBUCKET_REPO_SLUG} - - git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*" - - git fetch - - git checkout beta - - git merge main - - git commit --amend -m "[skip ci] Merge changes from main" - - git push - - step: - name: Deploy To Test - script: - - echo "Ready to deploy to demo or production!" diff --git a/docker/statistics/Modules/Expenses/module.json b/docker/statistics/Modules/Expenses/module.json deleted file mode 100644 index 354e001f..00000000 --- a/docker/statistics/Modules/Expenses/module.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "Expenses", - "alias": "expenses", - "description": "Expenses", - "keywords": [], - "priority": 0, - "providers": [ - "Modules\\Expenses\\Providers\\ExpensesServiceProvider" - ], - "files": [] -} diff --git a/docker/statistics/Modules/EyeClinic/Config/config.php b/docker/statistics/Modules/EyeClinic/Config/config.php deleted file mode 100644 index cdead7ea..00000000 --- a/docker/statistics/Modules/EyeClinic/Config/config.php +++ /dev/null @@ -1,5 +0,0 @@ - 'EyeClinic' -]; diff --git a/docker/statistics/Modules/EyeClinic/Http/Controllers/Controller.php b/docker/statistics/Modules/EyeClinic/Http/Controllers/Controller.php deleted file mode 100755 index a1e533b8..00000000 --- a/docker/statistics/Modules/EyeClinic/Http/Controllers/Controller.php +++ /dev/null @@ -1,13 +0,0 @@ -get('patient_id'); - $episode_id = session()->get('episode_id'); - - $main_exam = EyeClinicMainExam::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->first(); - - if (is_null($main_exam)){ - return self::create_main_exam(); - } - - switch ($main_exam->completed) { - case '0': // Pending - return self::edit_main_exam($main_exam->id); - - case '1': // Completed - return self::show_main_exam($main_exam->id); - - default: // Not created yet - return self::create_main_exam(); - } - } - - public function base_exam_refraction(){ - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $patient = Patient::where(['id' => $patient_id])->first(); - - // formulate the CVF dropdown - $visual_acuity_distance = array("0" => "--Select--","6/4" => "6/4","6/5" => "6/5","6/6" => "6/6","6/9" => "6/9","6/12" => "6/12","6/18" => "6/18","6/24" => "6/24","6/36" => "6/36","6/60" => "6/60","5/60" => "5/60","4/60" => "4/60","3/60" => "3/60","2/60" => "2/60","1/60" => "1/60","HM" => "HM","PL" => "PL","NPL" => "NPL"); - $visual_acuity_near = array("0" => "--Select--","N4" => "N4","N5" => "N5","N6" => "N6","N7" => "N7","N8" => "N8","N9" => "N9","N10" => "N10","N11" => "N11"); - $cvf = array("0" => "--Select--","Sector A" => "Sector A","Sector B" => "Sector B","Sector C" => "Sector C","Sector D" => "Sector D","Sector E" => "Sector E","Sector F" => "Sector F","Sector H" => "Sector H","Sector G" => "Sector G"); - - // check if there is a previous exam - $base_exam = EyeClinicBaseExamRefraction::where(['episode_id' => $episode_id])->first(); - if ($base_exam){ - return view('eye_clinic::eye_clinic.base_exam_refraction_details', compact('patient', 'base_exam')); - } else { - return view('eye_clinic::eye_clinic.base_exam_refraction', compact('patient', 'cvf', 'visual_acuity_distance', 'visual_acuity_near')); - } - } - - public function edit_base_exam_refraction(){ - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $patient = Patient::where(['id' => $patient_id])->first(); - - // formulate the CVF dropdown - $visual_acuity_distance = array("0" => "--Select--","6/4" => "6/4","6/5" => "6/5","6/6" => "6/6","6/9" => "6/9","6/12" => "6/12","6/18" => "6/18","6/24" => "6/24","6/36" => "6/36","6/60" => "6/60","5/60" => "5/60","4/60" => "4/60","3/60" => "3/60","2/60" => "2/60","1/60" => "1/60","HM" => "HM","PL" => "PL","NPL" => "NPL"); - $visual_acuity_near = array("0" => "--Select--","N4" => "N4","N5" => "N5","N6" => "N6","N7" => "N7","N8" => "N8","N9" => "N9","N10" => "N10","N11" => "N11"); - $cvf = array("0" => "--Select--","Sector A" => "Sector A","Sector B" => "Sector B","Sector C" => "Sector C","Sector D" => "Sector D","Sector E" => "Sector E","Sector F" => "Sector F","Sector H" => "Sector H","Sector G" => "Sector G"); - - // check if there is a previous exam - $base_exam = EyeClinicBaseExamRefraction::where(['episode_id' => $episode_id])->first(); - - return view('eye_clinic::eye_clinic.edit_base_exam_refraction', compact('patient', 'cvf', 'visual_acuity_distance', 'visual_acuity_near', 'base_exam')); - } - - public function save_base_exam_refraction(Request $request){ - $base_exam = new EyeClinicBaseExamRefraction; - - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $base_exam->patient_id = $patient_id; - $base_exam->episode_id = $episode_id; - $base_exam->neuro_oriented = isset($request->neuro_oriented) ? 1 : 0; - $base_exam->neuro_mood = $request->neuro_mood; - $base_exam->pupils_perrl = isset($request->pupils_perrl) ? 1 : 0; - $base_exam->pupils_right_dark = $request->pupils_right_dark; - $base_exam->pupils_right_light = $request->pupils_right_light; - $base_exam->pupils_right_shape = $request->pupils_right_shape; - $base_exam->pupils_right_react = $request->pupils_right_react; - $base_exam->pupils_right_apd = $request->pupils_right_apd; - $base_exam->pupils_left_dark = $request->pupils_left_dark; - $base_exam->pupils_left_light = $request->pupils_left_light; - $base_exam->pupils_left_shape = $request->pupils_left_shape; - $base_exam->pupils_left_react = $request->pupils_left_react; - $base_exam->pupils_left_apd = $request->pupils_left_apd; - $base_exam->visual_acuity_method = $request->visual_acuity_method; - $base_exam->visual_acuity_distance_sc_right = $request->visual_acuity_distance_sc_right; - $base_exam->visual_acuity_distance_sc_right_scale = $request->visual_acuity_distance_sc_right_scale; - $base_exam->visual_acuity_distance_sc_left = $request->visual_acuity_distance_sc_left; - $base_exam->visual_acuity_distance_sc_left_scale = $request->visual_acuity_distance_sc_left_scale; - $base_exam->visual_acuity_distance_cc_right = $request->visual_acuity_distance_cc_right; - $base_exam->visual_acuity_distance_cc_right_scale = $request->visual_acuity_distance_cc_right_scale; - $base_exam->visual_acuity_distance_cc_left = $request->visual_acuity_distance_cc_left; - $base_exam->visual_acuity_distance_cc_left_scale = $request->visual_acuity_distance_cc_left_scale; - $base_exam->visual_acuity_distance_ph_right = $request->visual_acuity_distance_ph_right; - $base_exam->visual_acuity_distance_ph_right_scale = $request->visual_acuity_distance_ph_right_scale; - $base_exam->visual_acuity_distance_ph_left = $request->visual_acuity_distance_ph_left; - $base_exam->visual_acuity_distance_ph_left_scale = $request->visual_acuity_distance_ph_left_scale; - $base_exam->visual_acuity_near_sc_right = $request->visual_acuity_near_sc_right; - $base_exam->visual_acuity_near_sc_right_scale = $request->visual_acuity_near_sc_right_scale; - $base_exam->visual_acuity_near_sc_left = $request->visual_acuity_near_sc_left; - $base_exam->visual_acuity_near_sc_left_scale = $request->visual_acuity_near_sc_left_scale; - $base_exam->visual_acuity_near_cc_right = $request->visual_acuity_near_cc_right; - $base_exam->visual_acuity_near_cc_right_scale = $request->visual_acuity_near_cc_right_scale; - $base_exam->visual_acuity_near_cc_left = $request->visual_acuity_near_cc_left; - $base_exam->visual_acuity_near_cc_left_scale = $request->visual_acuity_near_cc_left_scale; - $base_exam->manifest_retinoscope = 1; - $base_exam->manifest_autorefractor = 1; - - //autorefrator - $base_exam->manifest_auto_right_sphere = $request->manifest_auto_right_sphere; - $base_exam->manifest_auto_right_cylinder = $request->manifest_auto_right_cylinder; - $base_exam->manifest_auto_right_axis = $request->manifest_auto_right_axis; - $base_exam->manifest_auto_left_sphere = $request->manifest_auto_left_sphere; - $base_exam->manifest_auto_left_cylinder = $request->manifest_auto_left_cylinder; - $base_exam->manifest_auto_left_axis = $request->manifest_auto_left_axis; - - //retinoscope - $base_exam->manifest_ret_right_sphere = $request->manifest_ret_right_sphere; - $base_exam->manifest_ret_right_cylinder = $request->manifest_ret_right_cylinder; - $base_exam->manifest_ret_right_axis = $request->manifest_ret_right_axis; - $base_exam->manifest_ret_left_sphere = $request->manifest_ret_left_sphere; - $base_exam->manifest_ret_left_cylinder = $request->manifest_ret_left_cylinder; - $base_exam->manifest_ret_left_axis = $request->manifest_ret_left_axis; - - $base_exam->keratometry_k1_left = $request->keratometry_k1_left; - $base_exam->keratometry_k2_left = $request->keratometry_k2_left; - $base_exam->keratometry_axis_left = $request->keratometry_axis_left; - $base_exam->keratometry_k1_right = $request->keratometry_k1_right; - $base_exam->keratometry_k2_right = $request->keratometry_k2_right; - $base_exam->keratometry_axis_right = $request->keratometry_axis_right; - $base_exam->subjective_left_sphere = $request->subjective_left_sphere; - $base_exam->subjective_right_sphere = $request->subjective_right_sphere; - $base_exam->subjective_left_cylinder = $request->subjective_left_cylinder; - $base_exam->subjective_right_cylinder = $request->subjective_right_cylinder; - $base_exam->subjective_left_axis = $request->subjective_left_axis; - $base_exam->subjective_right_axis = $request->subjective_right_axis; - $base_exam->best_left_vision = $request->best_left_vision; - $base_exam->best_right_vision = $request->best_right_vision; - $base_exam->added_values = $request->added_values; - $base_exam->comment = $request->comment; - - $base_exam->pd_right_eye = $request->pd_right_eye; - $base_exam->pd_left_eye = $request->pd_left_eye; - - - $base_exam->created_by = Auth::id(); - - if ($base_exam->save()){ - flash("Eye clinic base exam refraction details saved successfully")->success(); - return redirect("/patient_episodes"); - } else { - flash("Something went wrong. Please try again.")->error(); - return back()->withInput(); - } - } - - public function update_base_exam_refraction($id, Request $request){ - $base_exam = EyeClinicBaseExamRefraction::find($id); - - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $base_exam->patient_id = $patient_id; - $base_exam->episode_id = $episode_id; - $base_exam->neuro_oriented = isset($request->neuro_oriented) ? 1 : 0; - $base_exam->neuro_mood = $request->neuro_mood; - $base_exam->pupils_perrl = isset($request->pupils_perrl) ? 1 : 0; - $base_exam->pupils_right_dark = $request->pupils_right_dark; - $base_exam->pupils_right_light = $request->pupils_right_light; - $base_exam->pupils_right_shape = $request->pupils_right_shape; - $base_exam->pupils_right_react = $request->pupils_right_react; - $base_exam->pupils_right_apd = $request->pupils_right_apd; - $base_exam->pupils_left_dark = $request->pupils_left_dark; - $base_exam->pupils_left_light = $request->pupils_left_light; - $base_exam->pupils_left_shape = $request->pupils_left_shape; - $base_exam->pupils_left_react = $request->pupils_left_react; - $base_exam->pupils_left_apd = $request->pupils_left_apd; - $base_exam->visual_acuity_method = $request->visual_acuity_method; - $base_exam->visual_acuity_distance_sc_right = $request->visual_acuity_distance_sc_right; - $base_exam->visual_acuity_distance_sc_right_scale = $request->visual_acuity_distance_sc_right_scale; - $base_exam->visual_acuity_distance_sc_left = $request->visual_acuity_distance_sc_left; - $base_exam->visual_acuity_distance_sc_left_scale = $request->visual_acuity_distance_sc_left_scale; - $base_exam->visual_acuity_distance_cc_right = $request->visual_acuity_distance_cc_right; - $base_exam->visual_acuity_distance_cc_right_scale = $request->visual_acuity_distance_cc_right_scale; - $base_exam->visual_acuity_distance_cc_left = $request->visual_acuity_distance_cc_left; - $base_exam->visual_acuity_distance_cc_left_scale = $request->visual_acuity_distance_cc_left_scale; - $base_exam->visual_acuity_distance_ph_right = $request->visual_acuity_distance_ph_right; - $base_exam->visual_acuity_distance_ph_right_scale = $request->visual_acuity_distance_ph_right_scale; - $base_exam->visual_acuity_distance_ph_left = $request->visual_acuity_distance_ph_left; - $base_exam->visual_acuity_distance_ph_left_scale = $request->visual_acuity_distance_ph_left_scale; - $base_exam->visual_acuity_near_sc_right = $request->visual_acuity_near_sc_right; - $base_exam->visual_acuity_near_sc_right_scale = $request->visual_acuity_near_sc_right_scale; - $base_exam->visual_acuity_near_sc_left = $request->visual_acuity_near_sc_left; - $base_exam->visual_acuity_near_sc_left_scale = $request->visual_acuity_near_sc_left_scale; - $base_exam->visual_acuity_near_cc_right = $request->visual_acuity_near_cc_right; - $base_exam->visual_acuity_near_cc_right_scale = $request->visual_acuity_near_cc_right_scale; - $base_exam->visual_acuity_near_cc_left = $request->visual_acuity_near_cc_left; - $base_exam->visual_acuity_near_cc_left_scale = $request->visual_acuity_near_cc_left_scale; - $base_exam->manifest_retinoscope = 1; - $base_exam->manifest_autorefractor = 1; - - //autorefrator - $base_exam->manifest_auto_right_sphere = $request->manifest_auto_right_sphere; - $base_exam->manifest_auto_right_cylinder = $request->manifest_auto_right_cylinder; - $base_exam->manifest_auto_right_axis = $request->manifest_auto_right_axis; - $base_exam->manifest_auto_left_sphere = $request->manifest_auto_left_sphere; - $base_exam->manifest_auto_left_cylinder = $request->manifest_auto_left_cylinder; - $base_exam->manifest_auto_left_axis = $request->manifest_auto_left_axis; - - //retinoscope - $base_exam->manifest_ret_right_sphere = $request->manifest_ret_right_sphere; - $base_exam->manifest_ret_right_cylinder = $request->manifest_ret_right_cylinder; - $base_exam->manifest_ret_right_axis = $request->manifest_ret_right_axis; - $base_exam->manifest_ret_left_sphere = $request->manifest_ret_left_sphere; - $base_exam->manifest_ret_left_cylinder = $request->manifest_ret_left_cylinder; - $base_exam->manifest_ret_left_axis = $request->manifest_ret_left_axis; - - $base_exam->keratometry_k1_left = $request->keratometry_k1_left; - $base_exam->keratometry_k2_left = $request->keratometry_k2_left; - $base_exam->keratometry_axis_left = $request->keratometry_axis_left; - $base_exam->keratometry_k1_right = $request->keratometry_k1_right; - $base_exam->keratometry_k2_right = $request->keratometry_k2_right; - $base_exam->keratometry_axis_right = $request->keratometry_axis_right; - $base_exam->subjective_left_sphere = $request->subjective_left_sphere; - $base_exam->subjective_right_sphere = $request->subjective_right_sphere; - $base_exam->subjective_left_cylinder = $request->subjective_left_cylinder; - $base_exam->subjective_right_cylinder = $request->subjective_right_cylinder; - $base_exam->subjective_left_axis = $request->subjective_left_axis; - $base_exam->subjective_right_axis = $request->subjective_right_axis; - $base_exam->best_left_vision = $request->best_left_vision; - $base_exam->best_right_vision = $request->best_right_vision; - $base_exam->added_values = $request->added_values; - $base_exam->comment = $request->comment; - - $base_exam->pd_right_eye = $request->pd_right_eye; - $base_exam->pd_left_eye = $request->pd_left_eye; - - - $base_exam->created_by = Auth::id(); - - if ($base_exam->save()){ - flash("Eye clinic base exam refraction details Updated successfully")->info(); - return redirect("/patient_episodes"); - } else { - flash("Something went wrong. Please try again.")->error(); - return back()->withInput(); - } - } - - public function create_main_exam(){ - $clinics = Clinic::orderBy('name')->pluck("name", "id")->toArray(); - $clinics = array_prepend($clinics, "Don't assign clinic", '0'); - $users = User::orderBy('first_name')->select("id", "first_name", "last_name")->get(); - - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $patient = Patient::where(['id' => $patient_id])->first(); - $diagnoses = Diagnosis::orderBy('name')->pluck("name", "id")->prepend('- select -', ''); - $diagnosis_categories = DiagnosisCategory::all(); - $documents = PatientDocument::where('patient_id', $patient_id)->where('episode_id', $episode_id)->orderBy('created_at', 'desc')->get(); - - $outcomes = DB::table('outcomes')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $wards = DB::table('wards')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $referrals = DB::table('referral_hospitals')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - - $slit_lamp_test_areas = SlitLampTestArea::get(); - $slit_lamp_test_area_values = SlitLampTestAreaValue::get(); - - $treatment = Treatment::where(['patient_id'=>$patient_id,'episode_id'=>$episode_id,'tta'=>0])->first(); - /* get ordered procedures */ - $ordered_procedures = OrderedProcedure::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->get(); - //check for ordered investigations,procedures and treatment - $ordered_investigations = OrderedInvestigation::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->get(); - //check for investigation results - $investigation_results = InvestigationResults::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->get(); - /* get ordered sundries */ - $ordered_sundries = OrderedSundry::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->get(); - //check for authenticated investigations - $ordered_eye_glasses = OrderedEyeGlasses::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->get(); - - // check if there is a previous exam - $main_exam = EyeClinicMainExam::where(['episode_id' => $episode_id])->first(); - $base_exam = EyeClinicBaseExamRefraction::where(['episode_id' => $episode_id])->first(); - $users_collection = DB::table('users')->orderBy("first_name","asc")->select("id")->get()->toArray(); - $users_array = []; - foreach ($users_collection as $value){ - $user = User::find($value->id); - if (!is_null($user)) { - $users_array[$value->id] = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users'); - } - } - $users_array = ['' => '- select -'] + $users_array; - - return view('eye_clinic::eye_clinic.main_exam', compact('patient', 'base_exam', 'diagnoses', 'outcomes', 'wards', 'referrals','users_array', - 'ordered_investigations', 'ordered_sundries', 'ordered_procedures', 'ordered_eye_glasses', 'treatment', 'slit_lamp_test_areas', 'slit_lamp_test_area_values', - 'investigation_results', 'diagnosis_categories', 'patient_id', 'documents', 'clinics', 'users')); - - } - - public function show_main_exam($id){ - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $patient = Patient::where(['id' => $patient_id])->first(); - - $slit_lamp_test_areas = SlitLampTestArea::get(); - $slit_lamp_test_area_values = SlitLampTestAreaValue::get(); - $documents = PatientDocument::where('patient_id', $patient_id)->where('episode_id', $episode_id)->orderBy('created_at', 'desc')->get(); - - $diagnoses = Diagnosis::orderBy('name')->pluck("name", "id")->prepend('- select -', ''); - $diagnosis_categories = DiagnosisCategory::orderBy('name', 'asc')->pluck("name", "id")->prepend('- select -', '')->prepend('N/A', 'N/A'); - - $outcomes = DB::table('outcomes')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $wards = DB::table('wards')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $referrals = DB::table('referral_hospitals')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - - $treatment = Treatment::where(['patient_id'=>$patient_id,'episode_id'=>$episode_id,'tta'=>0])->first(); - /* get ordered procedures */ - $ordered_procedures = OrderedProcedure::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->get(); - //check for ordered investigations,procedures and treatment - $ordered_investigations = OrderedInvestigation::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->get(); - //check for investigation results - $investigation_results = InvestigationResults::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->get(); - /* get ordered sundries */ - $ordered_sundries = OrderedSundry::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->get(); - //check for authenticated investigations - $ordered_eye_glasses = OrderedEyeGlasses::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->get(); - $clinics = Clinic::orderBy('name')->pluck("name", "id")->toArray(); - $users = DB::table('users')->orderBy('name')->pluck(DB::raw("CONCAT(first_name,' ',last_name) AS name"), 'id'); - $appointment = PatientAppointment::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->first(); - - - // check if there is a previous exam - $main_exam = EyeClinicMainExam::where(['episode_id' => $episode_id])->first(); - - return view('eye_clinic::eye_clinic.main_exam_details', compact('patient', 'main_exam', 'diagnoses', 'outcomes', 'wards', 'referrals', - 'ordered_investigations', 'ordered_sundries', 'ordered_procedures', 'ordered_eye_glasses', 'treatment', 'slit_lamp_test_areas', 'slit_lamp_test_area_values', - 'investigation_results', 'diagnosis_categories', 'patient_id', 'documents', 'clinics', 'users', 'appointment')); - - } - - public function edit_main_exam($id){ - - $clinics = Clinic::orderBy('name')->pluck("name", "id")->toArray(); - $clinics = array_prepend($clinics, "Don't assign clinic", '0'); - $users = User::orderBy('first_name')->select("id", "first_name", "last_name")->get(); - - $base_exam = $main_exam = []; - - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $patient = Patient::where(['id' => $patient_id])->first(); - $diagnoses = Diagnosis::orderBy('name', 'asc')->where('available', 1)->whereNotNull('diagnosis_category')->get(["name", "id", "diagnosis_category"])->toArray(); - $diagnosis_categories = DiagnosisCategory::all(); - $documents = PatientDocument::where('patient_id', $patient_id)->where('episode_id', $episode_id)->orderBy('created_at', 'desc')->get(); - - $outcomes = DB::table('outcomes')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $wards = DB::table('wards')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $referrals = DB::table('referral_hospitals')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - - $treatment = Treatment::where(['patient_id'=>$patient_id,'episode_id'=>$episode_id,'tta'=>0])->first(); - /* get ordered procedures */ - $ordered_procedures = OrderedProcedure::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->get(); - //check for ordered investigations,procedures and treatment - $ordered_investigations = OrderedInvestigation::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->get(); - //check for investigation results - $investigation_results = InvestigationResults::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->get(); - /* get ordered sundries */ - $ordered_sundries = OrderedSundry::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->get(); - //check for authenticated investigations - $ordered_eye_glasses = OrderedEyeGlasses::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->get(); - - $slit_lamp_test_areas = SlitLampTestArea::get(); - $slit_lamp_test_area_values = SlitLampTestAreaValue::get(); - $users_collection = DB::table('users')->orderBy("first_name","asc")->select("id")->get()->toArray(); - $users_array = []; - foreach ($users_collection as $value){ - $user = User::find($value->id); - if (!is_null($user)) { - $users_array[$value->id] = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users'); - } - } - $users_array = ['' => '- select -'] + $users_array; - - - // check if there is a previous exam - $main_exam = EyeClinicMainExam::where(['episode_id' => $episode_id])->first(); - - return view('eye_clinic::eye_clinic.edit_main_exam', compact('patient', 'base_exam', 'diagnoses', 'outcomes', 'wards', 'referrals', 'users_array', - 'ordered_investigations', 'ordered_sundries', 'ordered_procedures', 'ordered_eye_glasses', 'treatment', 'main_exam', 'slit_lamp_test_areas', - 'slit_lamp_test_area_values', 'investigation_results', 'diagnosis_categories', 'patient_id', 'documents', 'clinics', 'users')); - - } - - public function save_main_exam(Request $request){ - $test = new EyeClinicMainExam(); - - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - // performing an ordered procedure. - if(!is_null($request->perform)){ - for($i = 0; $i < count($request->perform); $i++){ - OrderedProcedure::where('procedure_id', $request->perform[$i])->update([ - 'performed' => '1' - ]); - } - } - // performing an ordered procedure. - if (!is_null($request->perform_selected)) { - foreach ($request->perform_selected as $procedure_array_id) { - $arr = explode(",", get_name($request->procedure_order_perform[$procedure_array_id], 'id', 'performed', 'ordered_procedures')); - $arr_id = explode(",", get_name($request->procedure_order_perform[$procedure_array_id], 'id', 'performed_id', 'ordered_procedures')); - - $performed_id = record_staff_that_has_performed_the_service($patient_id, $episode_id, 1, $request->perform[$procedure_array_id], - 0, $request->procedure_performed_by[$procedure_array_id]); - - if (isset($arr[$request->procedure_performed_position[$procedure_array_id]])) { - $arr[$request->procedure_performed_position[$procedure_array_id]] = 1; - $arr_id[$request->procedure_performed_position[$procedure_array_id]] = $performed_id; - $update = DB::table('ordered_procedures')->where('id', $request->procedure_order_perform[$procedure_array_id]) - ->update(['performed' => implode(",", $arr), 'performed_id' => implode(",", $arr_id)]); - } - } - } - - $test->patient_id = $patient_id; - $test->episode_id = $episode_id; - $test->external_right = $request->external_right; - $test->external_left = $request->external_left; - - $test->slit_ll_right = isset($request->slit_ll_right) ? implode(",",$request->slit_ll_right): ""; - $test->slit_ll_left = isset($request->slit_ll_left) ? implode(",",$request->slit_ll_left): ""; - $test->slit_cs_right = isset($request->slit_cs_right) ? implode(",",$request->slit_cs_right): ""; - $test->slit_cs_left = isset($request->slit_cs_left) ? implode(",",$request->slit_cs_left): ""; - $test->slit_cornea_right = isset($request->slit_cornea_right) ? implode(",",$request->slit_cornea_right): ""; - $test->slit_cornea_left = isset($request->slit_cornea_left) ? implode(",",$request->slit_cornea_left): ""; - $test->slit_ac_right = isset($request->slit_ac_right) ? implode(",",$request->slit_ac_right): ""; - $test->slit_ac_left = isset($request->slit_ac_left) ? implode(",",$request->slit_ac_left): ""; - $test->slit_iris_right = isset($request->slit_iris_right) ? implode(",",$request->slit_iris_right): ""; - $test->slit_iris_left = isset($request->slit_iris_left) ? implode(",",$request->slit_iris_left): ""; - $test->slit_lens_right = isset($request->slit_lens_right) ? implode(",",$request->slit_lens_right): ""; - $test->slit_lens_left = isset($request->slit_lens_left) ? implode(",",$request->slit_lens_left): ""; - $test->slit_vit_right = isset($request->slit_vit_right) ? implode(",",$request->slit_vit_right): ""; - $test->slit_vit_left = isset($request->slit_vit_left) ? implode(",",$request->slit_vit_left): ""; - $test->slit_retina_right = isset($request->slit_retina_right) ? implode(",",$request->slit_retina_right): ""; - $test->slit_retina_left = isset($request->slit_retina_left) ? implode(",",$request->slit_retina_left): ""; - $test->slit_optic_disc_right = isset($request->slit_optic_disc_right) ? implode(",",$request->slit_optic_disc_right): ""; - $test->slit_optic_disc_left = isset($request->slit_optic_disc_left) ? implode(",",$request->slit_optic_disc_left): ""; - - $test->slit_ll_other_right = $request->slit_ll_other_right ?? ""; - $test->slit_ll_other_left = $request->slit_ll_other_left ?? ""; - $test->slit_cs_other_right = $request->slit_cs_other_right ?? ""; - $test->slit_cs_other_left = $request->slit_cs_other_left ?? ""; - $test->slit_cornea_other_right = $request->slit_cornea_other_right ?? ""; - $test->slit_cornea_other_left = $request->slit_cornea_other_left ?? ""; - $test->slit_ac_other_right = $request->slit_ac_other_right ?? ""; - $test->slit_ac_other_left = $request->slit_ac_other_left ?? ""; - $test->slit_iris_other_right = $request->slit_iris_other_right ?? ""; - $test->slit_iris_other_left = $request->slit_iris_other_left ?? ""; - $test->slit_lens_other_right = $request->slit_lens_other_right ?? ""; - $test->slit_lens_other_left = $request->slit_lens_other_left ?? ""; - $test->slit_vit_other_right = $request->slit_vit_other_right ?? ""; - $test->slit_vit_other_left = $request->slit_vit_other_left ?? ""; - $test->slit_retina_other_right = $request->slit_retina_other_right ?? ""; - $test->slit_retina_other_left = $request->slit_retina_other_left ?? ""; - $test->slit_optic_disc_other_right = $request->slit_optic_disc_other_right ?? ""; - $test->slit_optic_disc_other_left = $request->slit_optic_disc_other_left ?? ""; - - $test->cdr_left = $request->cdr_left; - $test->cdr_right = $request->cdr_right; - $test->iop_left = $request->iop_left; - $test->iop_right = $request->iop_right; - $test->advice = $request->advice; - $test->outcome_id = $request->outcome; - $test->completed = 0; - - $test->left_eye_diagnosis = implode(',',$request->left_eye_diagnosis); - $test->right_eye_diagnosis = implode(',',$request->right_eye_diagnosis); - - $test->review_date = $request->review_date; - $test->doctors_notes = $request->doctors_notes; - $test->history_comments = $request->history_comments; - - $test->time = $request->time; - - $test->created_by = Auth::id(); - - $episode = PatientEpisode::find($episode_id); - - // Handle the buttons on the test page - switch ($request->get('submit-btn')): - case 'eye_glasses': - session()->put('redirect_to_consultation', '/eye_clinic/main_exam_route'); - $url = '/eye_glasses/order'; - break; - - case 'treatment': - session()->put('redirect_to_consultation', '/eye_clinic/main_exam_route'); - $url = '/prescriptions/create/'; - break; - - case 'procedures': - session()->put('redirect_to_consultation', '/eye_clinic/main_exam_route'); - $url = '/order_procedures/'; - break; - - case 'sundries': - session()->put('redirect_to_consultation', '/eye_clinic/main_exam_route'); - $url = '/order_sundries/'; - break; - - case 'investigations': - session()->put('redirect_to_consultation', '/eye_clinic/main_exam_route'); - $url = '/investigations/investigations_review'; - break; - - case 'patient_documents': - session()->put('redirect_to_consultation', '/eye_clinic/main_exam_route'); - $url = '/patient_documents/create'; - break; - - case 'complete': - $test->completed = 1; - $url = '/patient_flow_monitoring/index'; - break; - - case 'save_main_exam': - $test->completed = 0; - $url = '/patient_flow_monitoring/index'; - break; - - default: - break; - endswitch; - - $test->save(); - $episode->consultation_id = $test->id; - $episode->save(); - - switch ($request->outcome): - case 1: //Admitted - $inpatient = new InpatientInfo; - $inpatient->patient_id = $patient_id; - $inpatient->episode_id = $episode_id; - $inpatient->admitted_on = Carbon::parse($request->admitted_on)->format('Y-m-d'); - $inpatient->ward_id = $request->ward_id; - $inpatient->left_eye_diagnosis = implode(",",$request->left_eye_diagnosis); - $inpatient->right_eye_diagnosis = implode(",",$request->right_eye_diagnosis); - $inpatient->comments = $request->comments; - $inpatient->created_by = Auth::id(); - $inpatient->save(); - - $test->ward_id = $request->ward_id; - $test->admitted_on = Carbon::parse($request->admitted_on)->format('Y-m-d'); - break; - case 3: // Home with followup - $test->followup_where = 'Hospital'; - $test->followup_when = Carbon::parse($request->followup_when)->format('Y-m-d'); - - // save information to the follow-up table - $appointment = new PatientAppointment(); - $appointment->patient_id = $patient_id; - $appointment->incharge_id = $request->followup_in_charge; - $appointment->clinic_allocation = 1; - $appointment->episode_id = $episode_id; - $appointment->appointment_date = Carbon::parse($request->followup_when)->format('Y-m-d'); - $appointment->appointment_time = $request->followup_in_time; - $appointment->created_from = "Eye Clinic Main Exam"; - $appointment->created_by = Auth::id(); - $appointment->updated_by = Auth::id(); - $appointment->save(); - - break; - case 4: // Referred - $test->referred_to = $request->referral_id; - $test->referral_notes = $request->referral_notes; - break; - default: - break; - endswitch; - - if ($test->save()){ - flash("Eye clinic main exam saved successfully")->success(); - return redirect($url); - } else { - flash("Something went wrong. Please try again.")->error(); - return back()->withInput(); - } - } - - public function update_main_exam(Request $request, $id){ - $test = EyeClinicMainExam::find($id); - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - if(!is_null($request->perform)){ - for($i = 0; $i < count($request->perform); $i++){ - OrderedProcedure::where('procedure_id', $request->perform[$i])->update([ - 'performed' => '1' - ]); - } - } - // performing an ordered procedure. - if (!is_null($request->perform_selected)) { - foreach ($request->perform_selected as $procedure_array_id) { - $arr = explode(",", get_name($request->procedure_order_perform[$procedure_array_id], 'id', 'performed', 'ordered_procedures')); - $arr_id = explode(",", get_name($request->procedure_order_perform[$procedure_array_id], 'id', 'performed_id', 'ordered_procedures')); - - $performed_id = record_staff_that_has_performed_the_service($patient_id, $episode_id, 1, $request->perform[$procedure_array_id], - 0, $request->procedure_performed_by[$procedure_array_id]); - - if (isset($arr[$request->procedure_performed_position[$procedure_array_id]])) { - $arr[$request->procedure_performed_position[$procedure_array_id]] = 1; - $arr_id[$request->procedure_performed_position[$procedure_array_id]] = $performed_id; - $update = DB::table('ordered_procedures')->where('id', $request->procedure_order_perform[$procedure_array_id]) - ->update(['performed' => implode(",", $arr), 'performed_id' => implode(",", $arr_id)]); - } - } - } - - $test->patient_id = $patient_id; - $test->episode_id = $episode_id; - $test->external_right = $request->external_right; - $test->external_left = $request->external_left; - - $test->slit_ll_right = isset($request->slit_ll_right) ? implode(",",$request->slit_ll_right): ""; - $test->slit_ll_left = isset($request->slit_ll_left) ? implode(",",$request->slit_ll_left): ""; - $test->slit_cs_right = isset($request->slit_cs_right) ? implode(",",$request->slit_cs_right): ""; - $test->slit_cs_left = isset($request->slit_cs_left) ? implode(",",$request->slit_cs_left): ""; - $test->slit_cornea_right = isset($request->slit_cornea_right) ? implode(",",$request->slit_cornea_right): ""; - $test->slit_cornea_left = isset($request->slit_cornea_left) ? implode(",",$request->slit_cornea_left): ""; - $test->slit_ac_right = isset($request->slit_ac_right) ? implode(",",$request->slit_ac_right): ""; - $test->slit_ac_left = isset($request->slit_ac_left) ? implode(",",$request->slit_ac_left): ""; - $test->slit_iris_right = isset($request->slit_iris_right) ? implode(",",$request->slit_iris_right): ""; - $test->slit_iris_left = isset($request->slit_iris_left) ? implode(",",$request->slit_iris_left): ""; - $test->slit_lens_right = isset($request->slit_lens_right) ? implode(",",$request->slit_lens_right): ""; - $test->slit_lens_left = isset($request->slit_lens_left) ? implode(",",$request->slit_lens_left): ""; - $test->slit_vit_right = isset($request->slit_vit_right) ? implode(",",$request->slit_vit_right): ""; - $test->slit_vit_left = isset($request->slit_vit_left) ? implode(",",$request->slit_vit_left): ""; - $test->slit_retina_right = isset($request->slit_retina_right) ? implode(",",$request->slit_retina_right): ""; - $test->slit_retina_left = isset($request->slit_retina_left) ? implode(",",$request->slit_retina_left): ""; - $test->slit_optic_disc_right = isset($request->slit_optic_disc_right) ? implode(",",$request->slit_optic_disc_right): ""; - $test->slit_optic_disc_left = isset($request->slit_optic_disc_left) ? implode(",",$request->slit_optic_disc_left): ""; - - $test->slit_ll_other_right = $request->slit_ll_other_right ?? ""; - $test->slit_ll_other_left = $request->slit_ll_other_left ?? ""; - $test->slit_cs_other_right = $request->slit_cs_other_right ?? ""; - $test->slit_cs_other_left = $request->slit_cs_other_left ?? ""; - $test->slit_cornea_other_right = $request->slit_cornea_other_right ?? ""; - $test->slit_cornea_other_left = $request->slit_cornea_other_left ?? ""; - $test->slit_ac_other_right = $request->slit_ac_other_right ?? ""; - $test->slit_ac_other_left = $request->slit_ac_other_left ?? ""; - $test->slit_iris_other_right = $request->slit_iris_other_right ?? ""; - $test->slit_iris_other_left = $request->slit_iris_other_left ?? ""; - $test->slit_lens_other_right = $request->slit_lens_other_right ?? ""; - $test->slit_lens_other_left = $request->slit_lens_other_left ?? ""; - $test->slit_vit_other_right = $request->slit_vit_other_right ?? ""; - $test->slit_vit_other_left = $request->slit_vit_other_left ?? ""; - $test->slit_retina_other_right = $request->slit_retina_other_right ?? ""; - $test->slit_retina_other_left = $request->slit_retina_other_left ?? ""; - $test->slit_optic_disc_other_right = $request->slit_optic_disc_other_right ?? ""; - $test->slit_optic_disc_other_left = $request->slit_optic_disc_other_left ?? ""; - - $test->cdr_left = $request->cdr_left; - $test->cdr_right = $request->cdr_right; - - $test->iop_left = $request->iop_left; - $test->iop_right = $request->iop_right; - $test->advice = $request->advice; - $test->outcome_id = $request->outcome; - $test->review_date = $request->review_date; - $test->doctors_notes = $request->doctors_notes; - $test->history_comments = $request->history_comments; - $test->time = $request->time; - - if(!empty($request->left_eye_diagnosis)){ $test->left_eye_diagnosis = implode(",",$request->left_eye_diagnosis); } - if(!empty($request->right_eye_diagnosis)){ $test->right_eye_diagnosis = implode(",",$request->right_eye_diagnosis); } - - $test->created_by = Auth::id(); - - switch ($request->outcome): - case 1: //Admitted - $inpatient = new InpatientInfo; - $inpatient->patient_id = $patient_id; - $inpatient->episode_id = $episode_id; - $inpatient->admitted_on = Carbon::parse($request->admitted_on)->format('Y-m-d'); - $inpatient->ward_id = $request->ward_id; - $inpatient->left_eye_diagnosis = implode(",",$request->left_eye_diagnosis); - $inpatient->right_eye_diagnosis = implode(",",$request->right_eye_diagnosis); - $inpatient->comments = $request->comments; - $inpatient->created_by = Auth::id(); - $inpatient->save(); - - $test->ward_id = $request->ward_id; - $test->admitted_on = Carbon::parse($request->admitted_on)->format('Y-m-d'); - break; - case 3: // Home with followup - $test->followup_where = $request->followup_where; - $test->followup_when = Carbon::parse($request->followup_when)->format('Y-m-d'); - - // check if there is an appointment for this episode - $previous_appointment = PatientAppointment::where(['episode_id' => $episode_id])->first(); - - if ($previous_appointment) { - $appointment = $previous_appointment; - } else { - $appointment = new PatientAppointment(); - $appointment->patient_id = $patient_id; - $appointment->created_by = Auth::id(); - $appointment->episode_id = $episode_id; - } - - $appointment->incharge_id = $request->followup_in_charge; - $appointment->clinic_allocation = $request->followup_clinic_allocation; - $appointment->appointment_date = Carbon::parse($request->followup_when)->format('Y-m-d'); - $appointment->appointment_time = $request->followup_in_time; - $appointment->created_from = "Consultation"; - $appointment->updated_by = Auth::id(); - $appointment->save(); - - break; - case 4: // Referred - $test->referred_to = $request->referral_id; - $test->referral_notes = $request->referral_notes; - break; - default: - break; - endswitch; - - $episode = PatientEpisode::find($episode_id); - - // Handle the buttons on the test page - switch ($request->get('submit-btn')): - case 'eye_glasses': - session()->put('redirect_to_consultation', '/eye_clinic/main_exam_route'); - $url = '/eye_glasses/order'; - break; - - case 'treatment': - session()->put('redirect_to_consultation', '/eye_clinic/main_exam_route'); - $url = '/prescriptions/create/'; - break; - - case 'procedures': - session()->put('redirect_to_consultation', '/eye_clinic/main_exam_route'); - $url = '/order_procedures/'; - break; - - case 'sundries': - session()->put('redirect_to_consultation', '/eye_clinic/main_exam_route'); - $url = '/order_sundries/'; - break; - - case 'investigations': - session()->put('redirect_to_consultation', '/eye_clinic/main_exam_route'); - $url = '/investigations/investigations_review'; - break; - - case 'patient_documents': - session()->put('redirect_to_consultation', '/eye_clinic/main_exam_route'); - $url = '/patient_documents/create'; - break; - - case 'complete': - $test->completed = 1; - $url = '/patient_flow_monitoring/index'; - break; - - case 'save_main_exam': - $test->completed = 0; - $url = '/patient_flow_monitoring/index'; - break; - - default: - break; - endswitch; - - $test->save(); - - $episode->consultation_id = $test->id; - - if ($episode->save()){ - flash("Eye clinic main exam Updated successfully")->success(); - return redirect($url); - } else { - flash("Something went wrong. Please try again.")->error(); - return back()->withInput(); - } - } - - public function additional_tests(){ - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $patient = Patient::where(['id' => $patient_id])->first(); - - // check if there is a previous test - $test = EyeClinicAdditionalTests::where(['episode_id' => $episode_id])->first(); - if ($test){ - return view('eye_clinic::eye_clinic.additional_tests_details', compact('patient', 'test')); - } else { - return view('eye_clinic::eye_clinic.additional_tests', compact('patient')); - } - } - - public function save_additional_tests(Request $request){ - $test = new EyeClinicAdditionalTests(); - - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $test->patient_id = $patient_id; - $test->episode_id = $episode_id; - $test->pachymetry_right = $request->pachymetry_right; - $test->pachymetry_left = $request->pachymetry_left; - $test->pachymetry_date = $request->pachymetry_date; - $test->schirmers_right = $request->schirmers_right; - $test->schirmers_left = $request->schirmers_left; - $test->anesthesia = isset($request->anesthesia) ? 1 : 0; - $test->keratometry_right_1 = $request->keratometry_right_1; - $test->keratometry_right_2 = $request->keratometry_right_2; - $test->keratometry_right_3 = $request->keratometry_right_3; - $test->keratometry_left_1 = $request->keratometry_left_1; - $test->keratometry_left_2 = $request->keratometry_left_2; - $test->keratometry_left_3 = $request->keratometry_left_3; - $test->keratometry_method = $request->keratometry_method; - $test->glare_testing_method = $request->glare_testing_method; - $test->glare_testing_right_off = $request->glare_testing_right_off; - $test->glare_testing_right_low = $request->glare_testing_right_low; - $test->glare_testing_right_med = $request->glare_testing_right_med; - $test->glare_testing_right_high = $request->glare_testing_right_high; - $test->glare_testing_left_off = $request->glare_testing_left_off; - $test->glare_testing_left_low = $request->glare_testing_left_low; - $test->glare_testing_left_med = $request->glare_testing_left_med; - $test->glare_testing_left_high = $request->glare_testing_left_high; - $test->gonioscopy_right_one = $request->gonioscopy_right_one; - $test->gonioscopy_left_one = $request->gonioscopy_left_one; - $test->gonioscopy_right_two = $request->gonioscopy_right_two; - $test->gonioscopy_right_three = $request->gonioscopy_right_three; - $test->gonioscopy_left_two = $request->gonioscopy_left_two; - $test->gonioscopy_left_three = $request->gonioscopy_left_three; - $test->gonioscopy_right_four = $request->gonioscopy_right_four; - $test->gonioscopy_left_four = $request->gonioscopy_left_four; - $test->worth_distance = $request->worth_distance; - $test->worth_near = $request->worth_near; - $test->amsler_right = $request->amsler_right; - $test->amsler_left = $request->amsler_left; - $test->pam_right = $request->pam_right; - $test->pam_left = $request->pam_left; - $test->test_osmo_right = $request->test_osmo_right; - $test->test_osmo_left = $request->test_osmo_left; - $test->stereo_unable = isset($request->stereo_unable) ? 1 : 0; - $test->stereo_animals = $request->stereo_animals; - $test->stereo_circles = $request->stereo_circles; - $test->stereo_lang = $request->stereo_lang; - $test->dye_disap_right = $request->dye_disap_right; - $test->dye_disap_left = $request->dye_disap_left; - $test->created_by = Auth::id(); - - if ($test->save()){ - flash("Eye clinic additional tests saved successfully")->success(); - return redirect("/patient_episodes"); - } else { - flash("Something went wrong. Please try again.")->error(); - return back()->withInput(); - } - } - - /* - * Create Strabismus resource - */ - public function strabismus() - { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $patient = Patient::where(['id' => $patient_id])->first(); - - $strabismus = Strabismus::where(['episode_id' => $episode_id])->first(); - if ($strabismus){ - return view('eye_clinic::eye_clinic.strabismus_details', compact('patient', 'strabismus')); - } else { - return view('eye_clinic::eye_clinic.strabismus_create', compact('patient')); - } - } - - /* - * Store strabismus form details - */ - public function store_strabismus(Request $request) - { - $strabismus = new Strabismus; - - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $strabismus->patient_id = $patient_id; - $strabismus->episode_id = $episode_id; - $strabismus->method = $request->_method; - $strabismus->ortho = $request->ortho; - $strabismus->correction_sc = $request->correction_sc; - $strabismus->correction_cc = $request->correction_cc; - $strabismus->fixing_eye_right = $request->fixing_eye_right; - $strabismus->fixing_eye_left = $request->fixing_eye_left; - $strabismus->distance_top_big = $request->distance_top_big; - $strabismus->distance_top_small = $request->distance_top_small; - $strabismus->near_top_big = $request->near_top_big; - $strabismus->near_top_small = $request->near_top_small; - $strabismus->near_top_3ds_big = $request->near_top_3ds_big; - $strabismus->near_top_3ds_small = $request->near_top_3ds_small; - $strabismus->near_top_bifocals_big = $request->near_top_bifocals_big; - $strabismus->near_top_bifocals_small = $request->near_top_bifocals_small; - $strabismus->distance_bottom_big = $request->distance_bottom_big; - $strabismus->distance_bottom_small = $request->distance_bottom_small; - $strabismus->near_bottom_big = $request->near_bottom_big; - $strabismus->near_bottom_small = $request->near_bottom_small; - $strabismus->near_bottom_3ds_big = $request->near_bottom_3ds_big; - $strabismus->near_bottom_3ds_small = $request->near_bottom_3ds_small; - $strabismus->near_bottom_bifocals_big = $request->near_bottom_bifocals_big; - $strabismus->near_bottom_bifocals_small = $request->near_bottom_bifocals_small; - $strabismus->convergence_distance_right = $request->convergence_distance_right; - $strabismus->convergence_distance_left = $request->convergence_distance_left; - $strabismus->convergence_near_right = $request->convergence_near_right; - $strabismus->convergence_near_left = $request->convergence_near_left; - $strabismus->divergence_distance_right = $request->divergence_distance_right; - $strabismus->divergence_distance_left = $request->divergence_distance_left; - $strabismus->divergence_near_right = $request->divergence_near_right; - $strabismus->divergence_near_left = $request->divergence_near_left; - $strabismus->near_point_of_convergence = $request->near_point_of_convergence; - $strabismus->npa_right = $request->npa_right; - $strabismus->aa_right = $request->aa_right; - $strabismus->npa_left = $request->npa_left; - $strabismus->aa_left = $request->aa_left; - $strabismus->npa_both = $request->npa_both; - $strabismus->aa_both = $request->aa_both; - $strabismus->left_eye_drawing_big1 = $request->left_eye_drawing_big1; - $strabismus->left_eye_drawing_small1 = $request->left_eye_drawing_small1; - $strabismus->left_near_eye_box1 = $request->left_near_eye_box1; - $strabismus->left_eye_drawing_big2 = $request->left_eye_drawing_big2; - $strabismus->left_eye_drawing_small2 = $request->left_eye_drawing_small2; - $strabismus->left_eye_drawing_big3 = $request->left_eye_drawing_big3; - $strabismus->left_eye_drawing_small3 = $request->left_eye_drawing_small3; - $strabismus->left_near_eye_box2 = $request->left_near_eye_box2; - $strabismus->left_eye_drawing_big4 = $request->left_eye_drawing_big4; - $strabismus->left_eye_drawing_small4 = $request->left_eye_drawing_small4; - $strabismus->left_eye_drawing_big5 = $request->left_eye_drawing_big5; - $strabismus->left_eye_drawing_small5 = $request->left_eye_drawing_small5; - $strabismus->left_near_eye_box3 = $request->left_near_eye_box3; - $strabismus->left_eye_drawing_big6 = $request->left_eye_drawing_big6; - $strabismus->left_eye_drawing_small6 = $request->left_eye_drawing_small6; - $strabismus->right_eye_left_single_box1 = $request->right_eye_left_single_box1; - $strabismus->eyes_drawing_seperator_big1 = $request->eyes_drawing_seperator_big1; - $strabismus->eyes_drawing_seperator_small1 = $request->eyes_drawing_seperator_small1; - $strabismus->eyes_drawing_seperator_big2 = $request->eyes_drawing_seperator_big2; - $strabismus->eyes_drawing_seperator_small2 = $request->eyes_drawing_seperator_small2; - $strabismus->right_eye_left_single_box2 = $request->right_eye_left_single_box2; - $strabismus->eyes_drawing_seperator_big3 = $request->eyes_drawing_seperator_big3; - $strabismus->eyes_drawing_seperator_small3 = $request->eyes_drawing_seperator_small3; - $strabismus->eyes_drawing_seperator_big4 = $request->eyes_drawing_seperator_big4; - $strabismus->eyes_drawing_seperator_small4 = $request->eyes_drawing_seperator_small4; - $strabismus->right_eye_left_single_box3 = $request->right_eye_left_single_box3; - $strabismus->eyes_drawing_seperator_big5 = $request->eyes_drawing_seperator_big5; - $strabismus->eyes_drawing_seperator_small5 = $request->eyes_drawing_seperator_small5; - $strabismus->eyes_drawing_seperator_big6 = $request->eyes_drawing_seperator_big6; - $strabismus->eyes_drawing_seperator_small6 = $request->eyes_drawing_seperator_small6; - $strabismus->left_eye_right_single_box1 = $request->left_eye_right_single_box1; - $strabismus->left_eye_right_single_box2 = $request->left_eye_right_single_box2; - $strabismus->left_eye_right_single_box3 = $request->left_eye_right_single_box3; - $strabismus->left_eye_left_single_box1 = $request->left_eye_left_single_box1; - $strabismus->right_eye_drawing_big1 = $request->right_eye_drawing_big1; - $strabismus->right_eye_drawing_small1 = $request->right_eye_drawing_small1; - $strabismus->right_eye_drawing_big2 = $request->right_eye_drawing_big2; - $strabismus->right_eye_drawing_small2 = $request->right_eye_drawing_small2; - $strabismus->left_eye_left_single_box2 = $request->left_eye_left_single_box2; - $strabismus->right_eye_drawing_big3 = $request->right_eye_drawing_big3; - $strabismus->right_eye_drawing_small3 = $request->right_eye_drawing_small3; - $strabismus->right_eye_drawing_big4 = $request->right_eye_drawing_big4; - $strabismus->right_eye_drawing_small4 = $request->right_eye_drawing_small4; - $strabismus->left_eye_left_single_box3 = $request->left_eye_left_single_box3; - $strabismus->right_eye_drawing_big5 = $request->right_eye_drawing_big5; - $strabismus->right_eye_drawing_small5 = $request->right_eye_drawing_small5; - $strabismus->right_eye_drawing_big6 = $request->right_eye_drawing_big6; - $strabismus->right_eye_drawing_small6 = $request->right_eye_drawing_small6; - $strabismus->right_head_tilt_top_big = $request->right_head_tilt_top_big; - $strabismus->right_head_tilt_top_small = $request->right_head_tilt_top_small; - $strabismus->right_head_tilt_bottom_big = $request->right_head_tilt_bottom_big; - $strabismus->right_head_tilt_bottom_small = $request->right_head_tilt_bottom_small; - $strabismus->left_head_tilt_top_big = $request->left_head_tilt_top_big; - $strabismus->left_head_tilt_top_small = $request->left_head_tilt_top_small; - $strabismus->left_head_tilt_bottom_big = $request->left_head_tilt_bottom_big; - $strabismus->left_head_tilt_bottom_small = $request->left_head_tilt_bottom_small; - $strabismus->nystagmus = $request->nystagmus; - $strabismus->abnormal_head_position = $request->abnormal_head_position; - $strabismus->next_to_nystagmus = $request->next_to_nystagmus; - $strabismus->next_to_abnormal_head_position = $request->next_to_abnormal_head_position; - $strabismus->fly_positive = $request->fly_positive; - $strabismus->fly_negative = $request->fly_negative; - $strabismus->unable = $request->unable; - $strabismus->animals = $request->animals; - $strabismus->circles = $request->circles; - $strabismus->lang = $request->lang; - $strabismus->bruckner = $request->bruckner; - $strabismus->induced_tropia = $request->induced_tropia; - $strabismus->angle_toppa = $request->angle_toppa; - $strabismus->bagolini_lens = $request->bagolini_lens ; - $strabismus->double_maddox_right_small = $request->double_maddox_right_small; - $strabismus->double_maddox_right_big = $request->double_maddox_right_big; - $strabismus->double_maddox_left_small = $request->double_maddox_left_small; - $strabismus->worth_4_dot_distance = $request->worth_4_dot_distance; - $strabismus->worth_4_dot_near = $request->worth_4_dot_near; - $strabismus->created_by = Auth::id(); - - if ($strabismus->save()){ - flash("Strabismus saved successfully")->success(); - return redirect("/patient_episodes"); - } else { - flash("Something went wrong. Please try again.")->error(); - return back()->withInput(); - } - } - - public function store_new_test_area_value(Request $request){ - $new_value = new SlitLampTestAreaValue; - $new_value->name = $request->test_area_new_value; - $new_value->slit_lamp_test_area_id = $request->test_area_id; - $new_value->created_by = Auth::id(); - $new_value->save(); - - $slit_lamp_test_area = SlitLampTestArea::find($request->test_area_id); - - $ext_left = ""; - $ext_left .= "
    "; - $ext_left .= "
    "; - $ext_left .= ""; - $ext_left .= ""; - $ext_left .= "
    "; - $ext_left .= "
    "; - - $ext_right = ""; - $ext_right .= "
    "; - $ext_right .= "
    "; - $ext_right .= ""; - $ext_right .= ""; - $ext_right .= "
    "; - $ext_right .= "
    "; - - if($new_value->save()){ - return array($ext_left, $ext_right); - }else{ - return 'fail'; - } - } -} diff --git a/docker/statistics/Modules/EyeClinic/Providers/EyeClinicServiceProvider.php b/docker/statistics/Modules/EyeClinic/Providers/EyeClinicServiceProvider.php deleted file mode 100644 index 707274d5..00000000 --- a/docker/statistics/Modules/EyeClinic/Providers/EyeClinicServiceProvider.php +++ /dev/null @@ -1,113 +0,0 @@ -registerTranslations(); - $this->registerConfig(); - $this->registerViews(); - $this->loadMigrationsFrom(module_path($this->moduleName, 'Database/Migrations')); - } - - /** - * Register the service provider. - * - * @return void - */ - public function register() - { - $this->app->register(RouteServiceProvider::class); - } - - /** - * Register config. - * - * @return void - */ - protected function registerConfig() - { - $this->publishes([ - module_path($this->moduleName, 'Config/config.php') => config_path($this->moduleNameLower . '.php'), - ], 'config'); - $this->mergeConfigFrom( - module_path($this->moduleName, 'Config/config.php'), $this->moduleNameLower - ); - } - - /** - * Register views. - * - * @return void - */ - public function registerViews() - { - $viewPath = resource_path('views/modules/' . $this->moduleNameLower); - - $sourcePath = module_path($this->moduleName, 'Resources/views'); - - $this->publishes([ - $sourcePath => $viewPath - ], ['views', $this->moduleNameLower . '-module-views']); - - $this->loadViewsFrom(array_merge($this->getPublishableViewPaths(), [$sourcePath]), $this->moduleNameLower); - } - - /** - * Register translations. - * - * @return void - */ - public function registerTranslations() - { - $langPath = resource_path('lang/modules/' . $this->moduleNameLower); - - if (is_dir($langPath)) { - $this->loadTranslationsFrom($langPath, $this->moduleNameLower); - $this->loadJsonTranslationsFrom($langPath); - } else { - $this->loadTranslationsFrom(module_path($this->moduleName, 'Resources/lang'), $this->moduleNameLower); - $this->loadJsonTranslationsFrom(module_path($this->moduleName, 'Resources/lang')); - } - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides() - { - return []; - } - - private function getPublishableViewPaths(): array - { - $paths = []; - foreach (\Config::get('view.paths') as $path) { - if (is_dir($path . '/modules/' . $this->moduleNameLower)) { - $paths[] = $path . '/modules/' . $this->moduleNameLower; - } - } - return $paths; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/EyeClinic/Providers/RouteServiceProvider.php b/docker/statistics/Modules/EyeClinic/Providers/RouteServiceProvider.php deleted file mode 100755 index 10b6f403..00000000 --- a/docker/statistics/Modules/EyeClinic/Providers/RouteServiceProvider.php +++ /dev/null @@ -1,68 +0,0 @@ -mapApiRoutes(); - $this->mapWebRoutes(); - } - - /** - * Define the "web" routes for the application. - * - * These routes all receive session state, CSRF protection, etc. - * - * @return void - */ - protected function mapWebRoutes() - { - Route::middleware('web') - ->namespace($this->namespace) - ->group(module_path('EyeClinic', '/Routes/web.php')); - } - - /** - * Define the "api" routes for the application. - * - * These routes are typically stateless. - * - * @return void - */ - protected function mapApiRoutes() - { - Route::prefix('api') - ->middleware('api') - ->namespace($this->namespace) - ->group(module_path('EyeClinic', '/Routes/api.php')); - } -} diff --git a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/additional_tests.blade.php b/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/additional_tests.blade.php deleted file mode 100644 index 013752a3..00000000 --- a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/additional_tests.blade.php +++ /dev/null @@ -1,561 +0,0 @@ -@extends('layouts.main') - -@push('scripts') - -@endpush - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Create Triage

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    -
    - {{ Form::open(['route' => 'eye_clinic.save_additional_tests','data-toggle'=>'validator']) }} -
    -
    -
    -
    -
    - @include('eye_clinic::eye_clinic.menu') - -
    -
    -
    -
    -
    - - - - - - - - - - - -
    Pachymetry
    -
    -
    Right
    -
    Left
    -
    Date
    -
    -
    -
    - {{ Form::text('pachymetry_right','',['class' => 'form-control']) }} -
    -
    - {{ Form::text('pachymetry_left','',['class' => 'form-control']) }} -
    -
    - {{ Form::text('pachymetry_date','',['class' => 'form-control', 'readonly', 'id' => 'pachymetry_date']) }} -
    -
    -
    -
    -
    - - - - - - - - - - - -
    Schirmers
    -
    -
    R
    -
    - {{ Form::text('schirmers_right','',['class' => 'form-control']) }} -
    -
    mm
    -
    L
    -
    - {{ Form::text('schirmers_left','',['class' => 'form-control']) }} -
    -
    mm
    -
    - -
    -
    -
    - {{ Form::checkbox('anesthesia', 1) }} Anesthesia -
    -
    -
    -
    -
    - -
    - -
    -
    - - - - - - - - - - - -
    Keratometry
    -
    -
    R
    -
    - {{ Form::text('keratometry_right_1','',['class' => 'form-control']) }} -
    -
    /
    -
    - {{ Form::text('keratometry_right_2','',['class' => 'form-control']) }} -
    -
    @
    -
    - {{ Form::text('keratometry_right_3','',['class' => 'form-control']) }} -
    -
    -
    -
    -
    L
    -
    - {{ Form::text('keratometry_left_1','',['class' => 'form-control']) }} -
    -
    /
    -
    - {{ Form::text('keratometry_left_2','',['class' => 'form-control']) }} -
    -
    @
    -
    - {{ Form::text('keratometry_left_3','',['class' => 'form-control']) }} -
    -
    -
    -
    -
    Method
    -
    - {{ Form::text('keratometry_method','',['class' => 'form-control']) }} -
    -
    -
    -
    -
    - - - - - - - - - - - -
    Glare Testing
    -
    -
    Method
    -
    - {{ Form::text('glare_testing_method','',['class' => 'form-control']) }} -
    -
    - -
    - -
    -
    -
    -
    -
    Off
    -
    Low
    -
    Med
    -
    High
    -
    -
    -
    - -
    -
    R
    -
    -
    -
    - {{ Form::text('glare_testing_right_off','',['class' => 'form-control']) }} -
    -
    - {{ Form::text('glare_testing_right_low','',['class' => 'form-control']) }} -
    -
    - {{ Form::text('glare_testing_right_med','',['class' => 'form-control']) }} -
    -
    - {{ Form::text('glare_testing_right_high','',['class' => 'form-control']) }} -
    -
    -
    -
    - -
    -
    L
    -
    -
    -
    - {{ Form::text('glare_testing_left_off','',['class' => 'form-control']) }} -
    -
    - {{ Form::text('glare_testing_left_low','',['class' => 'form-control']) }} -
    -
    - {{ Form::text('glare_testing_left_med','',['class' => 'form-control']) }} -
    -
    - {{ Form::text('glare_testing_left_high','',['class' => 'form-control']) }} -
    -
    -
    -
    -
    -
    -
    - -
    - -
    -
    - - - - - - - - - - - -
    Gonioscopy
    -
    -
    -

    Right

    -
    -
    - - -
    -
    Left
    -
    - -
    -
    -
    - {{ Form::text('gonioscopy_right_one','',['class' => 'form-control', 'id' => 'gonioscopy_right_one']) }} -
    -
    -
    - {{ Form::text('gonioscopy_left_one','',['class' => 'form-control', 'id' => 'gonioscopy_left_one']) }} -
    -
    -
    - -
    -
    - {{ Form::text('gonioscopy_right_two','',['class' => 'form-control', 'id' => 'gonioscopy_right_two']) }} -
    -
    - {{ Form::text('gonioscopy_right_three','',['class' => 'form-control', 'id' => 'gonioscopy_right_three']) }} -
    -
    - {{ Form::text('gonioscopy_left_two','',['class' => 'form-control', 'id' => 'gonioscopy_left_two']) }} -
    -
    - {{ Form::text('gonioscopy_left_three','',['class' => 'form-control', 'id' => 'gonioscopy_left_three']) }} -
    -
    - -
    -
    -
    - {{ Form::text('gonioscopy_right_four','',['class' => 'form-control', 'id' => 'gonioscopy_right_four']) }} -
    -
    -
    - {{ Form::text('gonioscopy_left_four','',['class' => 'form-control', 'id' => 'gonioscopy_left_four']) }} -
    -
    -
    -
    -
    -
    - - - - - - - - - - - -
    Worth 4 Dot
    -
    -
    Distance
    -
    - {{ Form::text('worth_distance','',['class' => 'form-control']) }} -
    -
    - -
    -
    Near
    -
    - {{ Form::text('worth_near','',['class' => 'form-control']) }} -
    -
    -
    -
    -
    - -
    - -
    -
    - - - - - - - - - - - -
    Amsler
    -
    -
    R
    -
    - {{ Form::text('amsler_right','',['class' => 'form-control']) }} -
    -
    - -
    -
    L
    -
    - {{ Form::text('amsler_left','',['class' => 'form-control']) }} -
    -
    -
    -
    -
    - - - - - - - - - - - -
    PAM
    -
    -
    R
    -
    - {{ Form::text('pam_right','',['class' => 'form-control']) }} -
    -
    - -
    -
    L
    -
    - {{ Form::text('pam_left','',['class' => 'form-control']) }} -
    -
    -
    -
    -
    - -
    - -
    -
    - - - - - - - - - - - -
    Tear Osmolarity
    -
    -
    R
    -
    - {{ Form::text('test_osmo_right','',['class' => 'form-control']) }} -
    -
    mosm
    -
    L
    -
    - {{ Form::text('test_osmo_left','',['class' => 'form-control']) }} -
    -
    mosm
    -
    -
    -
    -
    - - - - - - - - - - - -
    Stereo
    -
    -
    Fly
    -
    - + -
    -
    - - -
    -
    -
    - {{ Form::checkbox('stereo_unable', 2) }} Unable -
    -
    - -
    -
    Animals
    -
    - {{ Form::text('stereo_animals','',['class' => 'form-control']) }} -
    -
    - -
    -
    Circles
    -
    - {{ Form::text('stereo_circles','',['class' => 'form-control']) }} -
    -
    - -
    -
    Language
    -
    - {{ Form::text('stereo_lang','',['class' => 'form-control']) }} -
    -
    -
    -
    -
    - -
    - -
    -
    - - - - - - - - - - - -
    Dye Disappearance
    -
    -
    R
    -
    - {{ Form::text('dye_disap_right','',['class' => 'form-control']) }} -
    -
    - -
    -
    L
    -
    - {{ Form::text('dye_disap_left','',['class' => 'form-control']) }} -
    -
    -
    -
    -
    -
    - -
    -
    -
    - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - {{ Form::close() }} -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/additional_tests_details.blade.php b/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/additional_tests_details.blade.php deleted file mode 100644 index 37193136..00000000 --- a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/additional_tests_details.blade.php +++ /dev/null @@ -1,520 +0,0 @@ -@extends('layouts.main') - -@push('scripts') - -@endpush - -@section('content') -
    -
    -

    Triage Details

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    -
    -
    - -
    -
    -
    -
    - @include('eye_clinic::eye_clinic.menu') - -
    -
    -
    -

    Recorded on {{ streamline_date($test->created_at) }}

    -
    -
    -
    - - - - - - - - - - - -
    Pachymetry
    -
    -
    Right
    -
    Left
    -
    Date
    -
    -
    -
    - {{ Form::text('pachymetry_right',$test->pachymetry_right,['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('pachymetry_left',$test->pachymetry_left,['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('pachymetry_date',streamline_date($test->pachymetry_date),['class' => 'form-control', 'readonly', 'readonly', 'id' => 'pachymetry_date']) }} -
    -
    -
    -
    -
    - - - - - - - - - - - -
    Schirmers
    -
    -
    R
    -
    - {{ Form::text('schirmers_right',$test->schirmers_right,['class' => 'form-control', 'readonly']) }} -
    -
    mm
    -
    L
    -
    - {{ Form::text('schirmers_left',$test->schirmers_left,['class' => 'form-control', 'readonly']) }} -
    -
    mm
    -
    - -
    -
    -
    - {{ Form::checkbox('anesthesia', 1, $test->anesthesia, ['disabled']) }} Anesthesia -
    -
    -
    -
    -
    - -
    - -
    -
    - - - - - - - - - - - -
    Keratometry
    -
    -
    R
    -
    - {{ Form::text('keratometry_right_1',$test->keratometry_right_1,['class' => 'form-control', 'readonly']) }} -
    -
    /
    -
    - {{ Form::text('keratometry_right_2',$test->keratometry_right_2,['class' => 'form-control', 'readonly']) }} -
    -
    @
    -
    - {{ Form::text('keratometry_right_3',$test->keratometry_right_3,['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    -
    L
    -
    - {{ Form::text('keratometry_left_1',$test->keratometry_left_1,['class' => 'form-control', 'readonly']) }} -
    -
    /
    -
    - {{ Form::text('keratometry_left_2',$test->keratometry_left_2,['class' => 'form-control', 'readonly']) }} -
    -
    @
    -
    - {{ Form::text('keratometry_left_3',$test->keratometry_left_3,['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    -
    Method
    -
    - {{ Form::text('keratometry_method',$test->keratometry_method,['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    -
    - - - - - - - - - - - -
    Glare Testing
    -
    -
    Method
    -
    - {{ Form::text('glare_testing_method',$test->glare_testing_method,['class' => 'form-control', 'readonly']) }} -
    -
    - -
    - -
    -
    -
    -
    -
    Off
    -
    Low
    -
    Med
    -
    High
    -
    -
    -
    - -
    -
    R
    -
    -
    -
    - {{ Form::text('glare_testing_right_off',$test->glare_testing_right_off,['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('glare_testing_right_low',$test->glare_testing_right_low,['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('glare_testing_right_med',$test->glare_testing_right_med,['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('glare_testing_right_high',$test->glare_testing_right_high,['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    - -
    -
    L
    -
    -
    -
    - {{ Form::text('glare_testing_left_off',$test->glare_testing_left_off,['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('glare_testing_left_low',$test->glare_testing_left_low,['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('glare_testing_left_med',$test->glare_testing_left_med,['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('glare_testing_left_high',$test->glare_testing_left_high,['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    -
    -
    -
    - -
    - -
    -
    - - - - - - - - - - - -
    Gonioscopy
    -
    -
    -

    Right

    -
    -
    -
    Left
    -
    - -
    -
    -
    - {{ Form::text('gonioscopy_right_one',$test->gonioscopy_right_one,['class' => 'form-control', 'readonly', 'id' => 'gonioscopy_right_one']) }} -
    -
    -
    - {{ Form::text('gonioscopy_left_one',$test->gonioscopy_left_one,['class' => 'form-control', 'readonly', 'id' => 'gonioscopy_left_one']) }} -
    -
    -
    - -
    -
    - {{ Form::text('gonioscopy_right_two',$test->gonioscopy_right_two,['class' => 'form-control', 'readonly', 'id' => 'gonioscopy_right_two']) }} -
    -
    - {{ Form::text('gonioscopy_right_three',$test->gonioscopy_right_three,['class' => 'form-control', 'readonly', 'id' => 'gonioscopy_right_three']) }} -
    -
    - {{ Form::text('gonioscopy_left_two',$test->gonioscopy_left_two,['class' => 'form-control', 'readonly', 'id' => 'gonioscopy_left_two']) }} -
    -
    - {{ Form::text('gonioscopy_left_three',$test->gonioscopy_left_three,['class' => 'form-control', 'readonly', 'id' => 'gonioscopy_left_three']) }} -
    -
    - -
    -
    -
    - {{ Form::text('gonioscopy_right_four',$test->gonioscopy_right_four,['class' => 'form-control', 'readonly', 'id' => 'gonioscopy_right_four']) }} -
    -
    -
    - {{ Form::text('gonioscopy_left_four',$test->gonioscopy_left_four,['class' => 'form-control', 'readonly', 'id' => 'gonioscopy_left_four']) }} -
    -
    -
    -
    -
    -
    - - - - - - - - - - - -
    Worth 4 Dot
    -
    -
    Distance
    -
    - {{ Form::text('worth_distance',$test->worth_distance,['class' => 'form-control', 'readonly']) }} -
    -
    - -
    -
    Near
    -
    - {{ Form::text('worth_near',$test->worth_near,['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    -
    - -
    - -
    -
    - - - - - - - - - - - -
    Amsler
    -
    -
    R
    -
    - {{ Form::text('amsler_right',$test->amsler_right,['class' => 'form-control', 'readonly']) }} -
    -
    - -
    -
    L
    -
    - {{ Form::text('amsler_left',$test->amsler_left,['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    -
    - - - - - - - - - - - -
    PAM
    -
    -
    R
    -
    - {{ Form::text('pam_right',$test->pam_right,['class' => 'form-control', 'readonly']) }} -
    -
    - -
    -
    L
    -
    - {{ Form::text('pam_left',$test->pam_left,['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    -
    - -
    - -
    -
    - - - - - - - - - - - -
    Tear Osmolarity
    -
    -
    R
    -
    - {{ Form::text('test_osmo_right',$test->test_osmo_right,['class' => 'form-control', 'readonly']) }} -
    -
    mosm
    -
    L
    -
    - {{ Form::text('test_osmo_left',$test->test_osmo_left,['class' => 'form-control', 'readonly']) }} -
    -
    mosm
    -
    -
    -
    -
    - - - - - - - - - - - -
    Stereo
    -
    -
    Fly
    -
    - + -
    -
    - - -
    -
    -
    - {{ Form::checkbox('stereo_unable', 2, $test->stereo_unable, ['disabled']) }} Unable -
    -
    - -
    -
    Animals
    -
    - {{ Form::text('stereo_animals',$test->stereo_animals,['class' => 'form-control', 'readonly']) }} -
    -
    - -
    -
    Circles
    -
    - {{ Form::text('stereo_circles',$test->stereo_circles,['class' => 'form-control', 'readonly']) }} -
    -
    - -
    -
    Language
    -
    - {{ Form::text('stereo_lang',$test->stereo_lang,['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    -
    - -
    - -
    -
    - - - - - - - - - - - -
    Dye Disappearance
    -
    -
    R
    -
    - {{ Form::text('dye_disap_right',$test->dye_disap_right,['class' => 'form-control', 'readonly']) }} -
    -
    - -
    -
    L
    -
    - {{ Form::text('dye_disap_left',$test->dye_disap_left,['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -@endsection diff --git a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/base_exam_refraction.blade.php b/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/base_exam_refraction.blade.php deleted file mode 100644 index 86bb0bf1..00000000 --- a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/base_exam_refraction.blade.php +++ /dev/null @@ -1,523 +0,0 @@ -@extends('layouts.main') - -@push('scripts') - -@endpush - -@section('content') -
    -
    -

    Create Triage

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    - -
    - {{ Form::open(['route' => 'eye_clinic.save_base_exam_refraction','data-toggle'=>'validator']) }} -
    -
    -
    -
    - - @include('eye_clinic::eye_clinic.menu') - -
    -
    -
    -
    -
    -
    - - - - - - - - - - - -
    Neuro/Psych
    - {{ Form::checkbox('neuro_oriented', 1, 0, ['id' => 'neuro_oriented']) }} Oriented x3 -
    -
    -

    Mood/Affect

    -
    -
    - nl -
    -
    - {{ Form::text('neuro_mood','',['class' => 'form-control', 'id' => 'neuro_mood']) }} -
    -
    -
    -
    - -
    - - - - - - - - - - - -
    Pupils
    - {{ Form::checkbox('pupils_perrl', 1, 0, ['id' => 'pupils_perrl']) }} PERRL -
    -
    -
    -
    Dark
    -
    Light
    -
    Shape
    -
    React
    -
    APD
    -
    -
    -
    -
    R
    -
    - {{ Form::text('pupils_right_dark','',['class' => 'form-control', 'id' => 'pupils_right_dark']) }} -
    -
    - {{ Form::text('pupils_right_light','',['class' => 'form-control', 'id' => 'pupils_right_light']) }} -
    -
    - {{ Form::text('pupils_right_shape', '',['class' => 'form-control', 'id' => 'pupils_right_shape']) }} -
    -
    - {{ Form::text('pupils_right_react','',['class' => 'form-control', 'id' => 'pupils_right_react']) }} -
    -
    - {{ Form::text('pupils_right_apd','',['class' => 'form-control', 'id' => 'pupils_right_apd']) }} -
    -
    -
    -
    L
    -
    - {{ Form::text('pupils_left_dark','',['class' => 'form-control', 'id' => 'pupils_left_dark']) }} -
    -
    - {{ Form::text('pupils_left_light', '',['class' => 'form-control', 'id' => 'pupils_left_light']) }} -
    -
    - {{ Form::text('pupils_left_shape','',['class' => 'form-control', 'id' => 'pupils_left_shape']) }} -
    -
    - {{ Form::text('pupils_left_react','',['class' => 'form-control', 'id' => 'pupils_left_react']) }} -
    -
    - {{ Form::text('pupils_left_apd','',['class' => 'form-control', 'id' => 'pupils_left_apd']) }} -
    -
    -
    -
    - -
    - - - - - - - - - - - -
    Visual Acuity
    -
    -
    -
    Distance
    -
    Right
    -
    Left
    -
    -
    -
    -
    sc
    -
    - {{ Form::select('visual_acuity_distance_sc_right', $visual_acuity_distance, null, ['class' => 'form-control']) }} -
    -
    - {{ Form::select('visual_acuity_distance_sc_left', $visual_acuity_distance, null, ['class' => 'form-control']) }} -
    -
    -
    -
    ph
    -
    - {{ Form::select('visual_acuity_distance_ph_right', $visual_acuity_distance, null, ['class' => 'form-control']) }} -
    -
    - {{ Form::select('visual_acuity_distance_ph_left', $visual_acuity_distance, null, ['class' => 'form-control']) }} -
    -
    -
    -
    cc
    -
    - {{ Form::select('visual_acuity_distance_cc_right', $visual_acuity_distance, null, ['class' => 'form-control']) }} -
    -
    - {{ Form::select('visual_acuity_distance_cc_left', $visual_acuity_distance, null, ['class' => 'form-control']) }} -
    -
    -
    -
    Near
    -
    -
    -
    -
    sc
    -
    - {{ Form::select('visual_acuity_near_sc_right', $visual_acuity_near, null, ['class' => 'form-control']) }} -
    -
    - {{ Form::select('visual_acuity_near_sc_left', $visual_acuity_near, null, ['class' => 'form-control']) }} -
    -
    -
    -
    cc
    -
    - {{ Form::select('visual_acuity_near_cc_right', $visual_acuity_near, null, ['class' => 'form-control']) }} -
    -
    - {{ Form::select('visual_acuity_near_cc_left', $visual_acuity_near, null, ['class' => 'form-control']) }} -
    -
    -
    -
    -
    - -
    -
    - - - - - - - - - - - -
    Refraction
    -
    -
    - Autorefractor -
    -
    -
    -
    -
    -
    -
    -
    Sphere
    -
    Cylinder
    -
    Axis
    -
    -
    -
    -
    -
    R
    -
    -
    -
    - {{ Form::text('manifest_auto_right_sphere','',['class' => 'form-control']) }} -
    -
    - {{ Form::text('manifest_auto_right_cylinder','',['class' => 'form-control']) }} -
    -
    - {{ Form::text('manifest_auto_right_axis','',['class' => 'form-control']) }} -
    -
    -
    -
    -
    -
    L
    -
    -
    -
    - {{ Form::text('manifest_auto_left_sphere','',['class' => 'form-control']) }} -
    -
    - {{ Form::text('manifest_auto_left_cylinder','',['class' => 'form-control']) }} -
    -
    - {{ Form::text('manifest_auto_left_axis','',['class' => 'form-control']) }} -
    -
    -
    -
    - Keratometry - -
    -
    -
    -
    -
    K1
    -
    K2
    -
    Axis
    -
    -
    -
    -
    -
    R
    -
    -
    -
    - {{ Form::text('keratometry_k1_right','',['class' => 'form-control']) }} -
    -
    - {{ Form::text('keratometry_k2_right','',['class' => 'form-control']) }} -
    -
    - {{ Form::text('keratometry_axis_right','',['class' => 'form-control']) }} -
    -
    -
    -
    -
    -
    L
    -
    -
    -
    - {{ Form::text('keratometry_k1_left','',['class' => 'form-control']) }} -
    -
    - {{ Form::text('keratometry_k2_left','',['class' => 'form-control']) }} -
    -
    - {{ Form::text('keratometry_axis_left','',['class' => 'form-control']) }} -
    -
    -
    -
    - - Retinoscope -
    -
    -
    -
    -
    Sphere
    -
    Cylinder
    -
    Axis
    -
    -
    -
    -
    -
    R
    -
    -
    -
    - {{ Form::text('manifest_ret_right_sphere','',['class' => 'form-control']) }} -
    -
    - {{ Form::text('manifest_ret_right_cylinder','',['class' => 'form-control']) }} -
    -
    - {{ Form::text('manifest_ret_right_axis','',['class' => 'form-control']) }} -
    -
    -
    -
    -
    -
    L
    -
    -
    -
    - {{ Form::text('manifest_ret_left_sphere','',['class' => 'form-control']) }} -
    -
    - {{ Form::text('manifest_ret_left_cylinder','',['class' => 'form-control']) }} -
    -
    - {{ Form::text('manifest_ret_left_axis','',['class' => 'form-control']) }} -
    -
    -
    -
    - - Subjective -
    -
    -
    -
    -
    Sphere
    -
    Cylinder
    -
    Axis
    -
    -
    -
    -
    -
    R
    -
    -
    -
    - {{ Form::text('subjective_right_sphere','',['class' => 'form-control']) }} -
    -
    - {{ Form::text('subjective_right_cylinder','',['class' => 'form-control']) }} -
    -
    - {{ Form::text('subjective_right_axis','',['class' => 'form-control']) }} -
    -
    -
    -
    -
    -
    L
    -
    -
    -
    - {{ Form::text('subjective_left_sphere','',['class' => 'form-control']) }} -
    -
    - {{ Form::text('subjective_left_cylinder','',['class' => 'form-control']) }} -
    -
    - {{ Form::text('subjective_left_axis','',['class' => 'form-control']) }} -
    -
    -
    -
    - -
    - - Add -
    -
    - {{ Form::text('added_values','',['class' => 'form-control']) }} -
    -
    -
    - - -
    -
    - - {{ Form::select('best_right_vision', $visual_acuity_distance, null, ['class' => 'form-control']) }} -
    -
    - - {{ Form::select('best_left_vision', $visual_acuity_distance, null, ['class' => 'form-control']) }} -
    -
    -
    - -
    -
    - - {{ Form::text('pd_right_eye', '', ['class' => 'form-control']) }} -
    -
    - - {{ Form::text('pd_left_eye', '', ['class' => 'form-control']) }} -
    -
    -
    - - -
    -
    -
    -
    - Comments -
    -
    - {{ Form::textarea('comment','',['class' => 'form-control']) }} -
    -
    - -
    - -
    -
    -
    - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - {{ Form::close() }} -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/base_exam_refraction_details.blade.php b/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/base_exam_refraction_details.blade.php deleted file mode 100644 index 3539acdc..00000000 --- a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/base_exam_refraction_details.blade.php +++ /dev/null @@ -1,476 +0,0 @@ -@extends('layouts.main') - -@push('scripts') - -@endpush - -@section('content') -
    -
    -

    Triage Details

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    - -
    -
    -
    -
    -
    - - @include('eye_clinic::eye_clinic.menu') - -
    -
    -
    -
    -
    -
    - - - - - - - - - - - -
    Neuro/Psych
    - {{ Form::checkbox('neuro_oriented', 1, 0, ['id' => 'neuro_oriented']) }} Oriented x3 -
    -
    -

    Mood/Affect

    -
    -
    - nl -
    -
    - {{ Form::text('neuro_mood',$base_exam->neuro_mood,['class' => 'form-control', 'id' => 'neuro_mood', 'readonly']) }} -
    -
    -
    -
    - -
    - - - - - - - - - - - -
    Pupils
    - {{ Form::checkbox('pupils_perrl', 1, 0, ['id' => 'pupils_perrl']) }} PERRL -
    -
    -
    -
    Dark
    -
    Light
    -
    Shape
    -
    React
    -
    APD
    -
    -
    -
    -
    R
    -
    - {{ Form::text('pupils_right_dark',$base_exam->pupils_right_dark,['class' => 'form-control', 'id' => 'pupils_right_dark', 'readonly']) }} -
    -
    - {{ Form::text('pupils_right_light',$base_exam->pupils_right_light,['class' => 'form-control', 'id' => 'pupils_right_light', 'readonly']) }} -
    -
    - {{ Form::text('pupils_right_shape',$base_exam->pupils_right_shape,['class' => 'form-control', 'id' => 'pupils_right_shape', 'readonly']) }} -
    -
    - {{ Form::text('pupils_right_react',$base_exam->pupils_right_react,['class' => 'form-control', 'id' => 'pupils_right_react', 'readonly']) }} -
    -
    - {{ Form::text('pupils_right_apd',$base_exam->pupils_right_apd,['class' => 'form-control', 'id' => 'pupils_right_apd', 'readonly']) }} -
    -
    -
    -
    L
    -
    - {{ Form::text('pupils_left_dark',$base_exam->pupils_left_dark,['class' => 'form-control', 'id' => 'pupils_left_dark', 'readonly']) }} -
    -
    - {{ Form::text('pupils_left_light',$base_exam->pupils_left_light,['class' => 'form-control', 'id' => 'pupils_left_light', 'readonly']) }} -
    -
    - {{ Form::text('pupils_left_shape',$base_exam->pupils_left_shape,['class' => 'form-control', 'id' => 'pupils_left_shape', 'readonly']) }} -
    -
    - {{ Form::text('pupils_left_react',$base_exam->pupils_left_react,['class' => 'form-control', 'id' => 'pupils_left_react', 'readonly']) }} -
    -
    - {{ Form::text('pupils_left_apd',$base_exam->pupils_left_apd,['class' => 'form-control', 'id' => 'pupils_left_apd', 'readonly']) }} -
    -
    -
    -
    - -
    - - - - - - - - - - - -
    Visual Acuity
    -
    -
    -
    Distance
    -
    Right
    -
    Left
    -
    -
    -
    -
    sc
    -
    - {{ Form::text('visual_acuity_distance_sc_right', $base_exam->visual_acuity_distance_sc_right, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('visual_acuity_distance_sc_left', $base_exam->visual_acuity_distance_sc_left, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    ph
    -
    - {{ Form::text('visual_acuity_distance_ph_right', $base_exam->visual_acuity_distance_ph_right, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('visual_acuity_distance_ph_left', $base_exam->visual_acuity_distance_ph_left, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    cc
    -
    - {{ Form::text('visual_acuity_distance_cc_right', $base_exam->visual_acuity_distance_cc_right, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('visual_acuity_distance_cc_left', $base_exam->visual_acuity_distance_cc_left, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    Near
    -
    -
    -
    -
    sc
    -
    - {{ Form::text('visual_acuity_near_sc_right', $base_exam->visual_acuity_near_sc_right, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('visual_acuity_near_sc_left', $base_exam->visual_acuity_near_sc_left, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    cc
    -
    - {{ Form::text('visual_acuity_near_cc_right', $base_exam->visual_acuity_near_cc_right, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('visual_acuity_near_cc_left', $base_exam->visual_acuity_near_cc_left, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    -
    - -
    -
    - - - - - - - - - - - -
    Refraction
    -
    -
    - Autorefractor -
    -
    -
    -
    -
    -
    -
    -
    Sphere
    -
    Cylinder
    -
    Axis
    -
    -
    -
    -
    -
    R
    -
    -
    -
    - {{ Form::text('manifest_auto_right_sphere',$base_exam->manifest_auto_right_sphere, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('manifest_auto_right_cylinder',$base_exam->manifest_auto_right_cylinder, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('manifest_auto_right_axis',$base_exam->manifest_auto_right_axis, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    -
    -
    L
    -
    -
    -
    - {{ Form::text('manifest_auto_left_sphere',$base_exam->manifest_auto_left_sphere, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('manifest_auto_left_cylinder',$base_exam->manifest_auto_left_cylinder, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('manifest_auto_left_axis',$base_exam->manifest_auto_left_axis, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    - Keratometry - -
    -
    -
    -
    -
    K1
    -
    K2
    -
    Axis
    -
    -
    -
    -
    -
    R
    -
    -
    -
    - {{ Form::text('keratometry_k1_right',$base_exam->keratometry_k1_right, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('keratometry_k2_right',$base_exam->keratometry_k2_right, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('keratometry_axis_right',$base_exam->keratometry_axis_right, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    -
    -
    L
    -
    -
    -
    - {{ Form::text('keratometry_k1_left',$base_exam->keratometry_k1_left, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('keratometry_k2_left',$base_exam->keratometry_k2_left, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('keratometry_axis_left',$base_exam->keratometry_axis_left, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    - - Retinoscope -
    -
    -
    -
    -
    Sphere
    -
    Cylinder
    -
    Axis
    -
    -
    -
    -
    -
    R
    -
    -
    -
    - {{ Form::text('manifest_ret_right_sphere',$base_exam->manifest_ret_right_sphere, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('manifest_ret_right_cylinder',$base_exam->manifest_ret_right_cylinder, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('manifest_ret_right_axis',$base_exam->manifest_ret_right_axis, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    -
    -
    L
    -
    -
    -
    - {{ Form::text('manifest_ret_left_sphere',$base_exam->manifest_ret_left_sphere, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('manifest_ret_left_cylinder',$base_exam->manifest_ret_left_cylinder, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('manifest_ret_left_axis',$base_exam->manifest_ret_left_axis, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    - - Subjective -
    -
    -
    -
    -
    Sphere
    -
    Cylinder
    -
    Axis
    -
    -
    -
    -
    -
    R
    -
    -
    -
    - {{ Form::text('subjective_right_sphere',$base_exam->subjective_right_sphere, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('subjective_right_cylinder',$base_exam->subjective_right_cylinder, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('subjective_right_axis',$base_exam->subjective_right_axis, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    -
    -
    L
    -
    -
    -
    - {{ Form::text('subjective_left_sphere',$base_exam->subjective_left_sphere, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('subjective_left_cylinder',$base_exam->subjective_left_cylinder, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('subjective_left_axis',$base_exam->subjective_left_axis, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    - -
    - - Add -
    -
    - {{ Form::text('added_values',$base_exam->added_values, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    - - -
    -
    - - {{ Form::text('best_right_vision',$base_exam->best_right_vision, ['class' => 'form-control', 'readonly']) }} -
    -
    - - {{ Form::text('best_left_vision',$base_exam->best_left_vision, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    - -
    -
    - - {{ Form::text('pd_right_eye', $base_exam->pd_right_eye, ['class' => 'form-control', 'readonly']) }} -
    -
    - - {{ Form::text('pd_left_eye', $base_exam->pd_left_eye, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    - -
    -
    -
    -
    - Comments -
    -
    - {{ Form::textarea('comment',$base_exam->comment,['class' => 'form-control', 'readonly']) }} -
    -
    -
    - - - -{{--
    --}} - -{{--
    --}} -{{--
    --}} -{{--
    --}} -{{-- {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }}--}} -{{-- {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }}--}} -{{--
    --}} -{{--
    --}} - -
    -
    -
    -
    -
    -
    -
    -
    -@endsection diff --git a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/consultation.blade.php b/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/consultation.blade.php deleted file mode 100755 index 3d92098f..00000000 --- a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/consultation.blade.php +++ /dev/null @@ -1,735 +0,0 @@ -@extends('layouts.main') - -@push('scripts') - - -@endpush - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    Add consultation

    -
    -
    - -
    -
    - - @php - $patient_id = session('patient_id'); - $episode_id = session('episode_id'); - $episode_created_at = Carbon\Carbon::parse($episode->created_at); - @endphp - -
    -
    - @include('patients::allergies.header') -
    -
    -
    - -
    -
    -
    -
    -
    - - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -

    - Triage Details -

    -
    -
    -
    -
    - TRIAGE GRADE : - @if($triage) - @switch($triage->severe_grade) - @case (1) -
    GREEN
    - @break - @case (2) -
    YELLOW
    - @break - @case (3) -
    RED
    - @break - @default - Triage grade not determined - @endswitch - @endif -
    -
    - Symptoms : - @if($triage) - @php $symptoms_array = explode(",", $triage->symptoms); @endphp - @php $symptoms_duration_array = explode(",", $triage->symptom_duration); @endphp - -
    -
    - - - - - - - - - @php $counter = 0; @endphp - @for($i = 0; $i < count($symptoms_array); $i++) - - - - - @endfor - -
    SymptomDuration
    {{ isset($symptoms[$symptoms_array[$i]]) ? $symptoms[$symptoms_array[$i]] : "" }}{{ isset($symptoms_duration_array[$i]) ? $symptoms_duration_array[$i] : "" }}
    -
    -
    - @else - No symptoms recorded - @endif -
    -
    - -
    -
    -
    -
    - @if($triage) - @php - $observations_array = explode(',', $triage->observations); //i.e[temp=44,height=2] - @endphp -
    -
    - - - - - - - - - @php $counter = 0; @endphp - @foreach($observations_array as $observation) - @php - $item_array = explode('=', $observation); //i.e[temp,44] - $counter++; - @endphp - @if($counter < 9) - - - - - @endif - @endforeach - -
    ObservationValue
    {{ $item_array[0] }}{{ $item_array[1] }}
    -
    - -
    - - - - - - - - - @php $counter=0; @endphp - @foreach($observations_array as $observation) - @php - $item_array = explode('=', $observation); //i.e[temp,44] - $counter++; - @endphp - @if($counter >= 9) - - - - - @endif - @endforeach - -
    ObservationValue
    {{ isset($item_array[0]) ? $item_array[0] : "" }}{{ isset($item_array[1]) ? $item_array[1] : "" }}
    -
    -
    - @else - No observations recorded - @endif -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    - Triage done by {!! isset($triage) ? ''.\Streamline\Models\User::withTrashed()->find($triage->created_by)->first_name. " ".\Streamline\Models\User::withTrashed()->find($triage->created_by)->last_name.' on '.streamline_date_time($triage->created_at).'' : "" !!} -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    - @if(count($documents) > 0) - @foreach($documents as $document) -
  • - {{ is_null($document->title) ? substr($document->description, 0, 5) : $document->title }} -
  • - @endforeach - @else - No patient documents available - @endif -
    -
    - Add new -
    -
    -
    -
    -
    -
    -
    -
    - - {{ Form::open(['route' => 'consultation.store','data-toggle'=>'validator']) }} - -
    -
    -
    -
    - - - - - - - - - - - - - - - - -
    PRIMARY DIAGNOSISPROMPTREFERENCES
    -
    - {{ Form::select('primary_diagnosis', $diagnoses, '', ['id'=>'primary_diagnosis','class' => 'form-control col-sm-12 compulsory', 'required']) }} -
    -
     
     
    -
    -
    -
    -
    - -
    -
    -
    -
    - - - - - - - - - - - - - - - - -
    - -
    #OTHER DIAGNOSISPROMPTREFERENCES
    - {{ Form::select('other_diagnosis[]', $diagnoses, '', ['id'=>'other_diagnosis_id_1','class' => 'form-control col-sm-12 sec_d']) }} -
     
     
    - Add row - Delete row -
    -
    -
    -
    - -
    - - - - - - - - - - - - - - -
    RDTRBS
    - {{ Form::checkbox('rdt', 1, false, ['id'=>'rdt_pos']) }} - - - {{ Form::checkbox('rdt', 0, false, ['id'=>'rdt_neg']) }} - - - {{ Form::text('rbs','',['class'=>'form-control']) }} -
    -
    - -
    -
    -
    -

    Ordered Investigations

    -
    - - - - - - - - - - - @if(count($investigation_results) > 0) - @foreach($investigation_results as $result) - @php - $investigation_ids_array = explode(',', $result->investigation_id); - - // authentication of investigations - $per_investigation_array = explode(',', $result->per_investigation); - - $comments = explode(",", $result->comment); - $results_values = explode(",", $result->value); - @endphp - @for($i = 0 ; $i < count($investigation_ids_array) ; $i++) - @php - $investigation = \Streamline\Models\Investigation::find($investigation_ids_array[$i]); - @endphp - - - - - - - @endfor - - - - @endforeach - @elseif(count($ordered_investigations) > 0) - @foreach($ordered_investigations as $investigation) - @php $investigation_ids_array = explode(',', $investigation->investigation_id); @endphp - @for($i = 0 ; $i < count($investigation_ids_array) ; $i++) - @php - $investigation = \Streamline\Models\Investigation::find($investigation_ids_array[$i]); - @endphp - - - - - - - @endfor - @endforeach - @else - - - - @endif - -
    InvestigationReference rangeValueComment
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - {{ $investigation->normal_ranges }} - - {!! $per_investigation_array[$i] == 0 ? 'Pending' : $results_values[$i] !!} - - {!! $per_investigation_array[$i] == 0 ? 'Pending' : $comments[$i] !!} -
    Authenticated by{{ get_name($result->authenticated_by, 'id', 'first_name', 'users')}} {{ get_name($result->authenticated_by, 'id', 'last_name', 'users')}}
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - {{ $investigation->normal_ranges }} - Pending - {{ $investigation->comments }} -
    Investigations not ordered
    -
    -
    -
    -

    Ordered Sundries

    -
    - - - - - - - - - - @if(count($ordered_sundries) > 0) - @php $count = 1; @endphp - @foreach($ordered_sundries as $ordered_sundry) - - - - - - @php $count++; @endphp - @endforeach - @else - - - - @endif - - -
    #SUNDRYQUANTITY
    {{ $count }} - {{ \Streamline\Models\Sundry::find($ordered_sundry->sundries_id)->name }} - - {!! $ordered_sundry->quantity !!} -
    No sundry has been ordered.
    -
    -
    -
    -
    - -
    -
    -
    -

    Treatment Given

    -
    - - - - - - - - - - - - - - @if(!is_null($treatment)) - @if($treatment->altered == 0) - - @php - $drugs_array = explode(",", $treatment->drugs); - $dosage_array = explode(",", $treatment->doses); - $dosage2_array = explode(",", $treatment->dose2); - $frequencies_array = explode(",", $treatment->frequencies); - $duration_array = explode(",", $treatment->durations); - $quantity_dispensed_array = explode(",", $treatment->quantities_dispensed); - $instructions_array = explode(",", $treatment->instruction); - - for ($x = 0; $x < count($drugs_array); $x++) { - - $frequency_name = get_name($frequencies_array[$x], 'id', 'name', 'dosage_frequencies'); - $unit = get_name($drugs_array[$x], 'id', 'name', 'drug_units'); - $unit = $unit=="N/A"?"":$unit; - $drug_unit = "" . $unit . ""; - $dose2 = (empty($dosage2_array[$x])) ? "" : " | " . $dosage2_array[$x] . $drug_unit; - $row_num = $x+1; - - echo "" - ."" - . "" - . "" - . "" - . ""; - if ($treatment->dispensed == 1): - echo ""; - else: - echo ""; - endif; - - if(isset($instructions_array[$x])){ - echo ""; - } else { - echo ""; - } - - echo ""; - } - @endphp - - @endif - @else - - - - @endif - - -
    #DRUG NAMEDOSAGEDURATIONQUANTITYSTATUSINSTRUCTION
    " .$row_num."."."" . get_name($drugs_array[$x], 'id', "name", 'drugs') . "" . $dosage_array[$x] . $drug_unit . $dose2 . "  " . $frequency_name . "" . $duration_array[$x] . "" . $quantity_dispensed_array[$x] . "DispensedPending" . trim($instructions_array[$x]). "
    No prescription made yet
    -
    -
    -
    -

    Ordered Procedures

    -
    - - - - - - - - - - - @if(count($ordered_procedures) > 0) - @php $count = 1; @endphp - @foreach($ordered_procedures as $ordered_procedure) - - - - - - - @php $count++; @endphp - @endforeach - @else - - - - @endif - - -
    #PROCEDURESTATUSPERFORMED
    {{ $count }} - {{ \Streamline\Models\Procedure::find($ordered_procedure->procedure_id)->name }} - - {!! $ordered_procedure->performed == 1 ? 'Performed' : 'Pending' !!} - - -
    No procedure has been ordered.
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    - {{ Form::button('Investigation',['type'=>'submit','class'=>'btn btn-info btn-block','name'=>'submit-btn','value'=>'investigation']) }} -
    -
    - {{ Form::button('Treatment',['type'=>'submit','class'=>'btn btn-default btn-block','name'=>'submit-btn','value'=>'treatment']) }} -
    -
    -
    -
    -
    - {{ Form::button('Procedures',['type'=>'submit','class'=>'btn btn-inverse btn-block','name'=>'submit-btn','value'=>'procedures']) }} -
    -
    - {{ Form::button('Sundries',['type'=>'submit','class'=>'btn btn-primary btn-block','name'=>'submit-btn','value'=>'sundries']) }} -
    -
    -
    -
    -

    Comments

    - -
    -
    -

    Outcome

    - -
    -
    - {{ Form::select('outcome', $outcomes, '7', ['id' => 'outcome', 'class' => 'form-control compulsory']) }} -
    -
    - - - -
    -
    - {{ Form::button('Complete consultation',['type'=>'submit','class'=>'btn btn-success btn-block','name'=>'submit-btn','value'=>'complete', 'onclick'=>'return confirm_outcome()']) }} -
    -
    -
    - {{ Form::close() }} - - @include('consultations.document.add') - -@endsection - -@push('scripts') - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/edit_base_exam_refraction.blade.php b/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/edit_base_exam_refraction.blade.php deleted file mode 100644 index 3f72dfeb..00000000 --- a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/edit_base_exam_refraction.blade.php +++ /dev/null @@ -1,521 +0,0 @@ -@extends('layouts.main') - -@push('scripts') - -@endpush - -@section('content') -
    -
    -

    Triage Details

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    - -
    -
    -
    -
    -
    - - @include('eye_clinic::eye_clinic.menu') - -
    -
    -
    - {{ Form::model($base_exam, ['method' => 'PUT', 'route' => ['eye_clinic.update_base_exam_refraction',$base_exam->id] , 'data-toggle' => 'validator']) }} - -
    -
    -
    - - - - - - - - - - - -
    Neuro/Psych
    - {{ Form::checkbox('neuro_oriented', 1, 0, ['id' => 'neuro_oriented']) }} Oriented x3 -
    -
    -

    Mood/Affect

    -
    -
    - nl -
    -
    - {{ Form::text('neuro_mood',$base_exam->neuro_mood,['class' => 'form-control', 'id' => 'neuro_mood']) }} -
    -
    -
    -
    - -
    - - - - - - - - - - - -
    Pupils
    - {{ Form::checkbox('pupils_perrl', 1, 0, ['id' => 'pupils_perrl']) }} PERRL -
    -
    -
    -
    Dark
    -
    Light
    -
    Shape
    -
    React
    -
    APD
    -
    -
    -
    -
    R
    -
    - {{ Form::text('pupils_right_dark',$base_exam->pupils_right_dark,['class' => 'form-control', 'id' => 'pupils_right_dark']) }} -
    -
    - {{ Form::text('pupils_right_light',$base_exam->pupils_right_light,['class' => 'form-control', 'id' => 'pupils_right_light']) }} -
    -
    - {{ Form::text('pupils_right_shape',$base_exam->pupils_right_shape,['class' => 'form-control', 'id' => 'pupils_right_shape']) }} -
    -
    - {{ Form::text('pupils_right_react',$base_exam->pupils_right_react,['class' => 'form-control', 'id' => 'pupils_right_react']) }} -
    -
    - {{ Form::text('pupils_right_apd',$base_exam->pupils_right_apd,['class' => 'form-control', 'id' => 'pupils_right_apd']) }} -
    -
    -
    -
    L
    -
    - {{ Form::text('pupils_left_dark',$base_exam->pupils_left_dark,['class' => 'form-control', 'id' => 'pupils_left_dark']) }} -
    -
    - {{ Form::text('pupils_left_light',$base_exam->pupils_left_light,['class' => 'form-control', 'id' => 'pupils_left_light']) }} -
    -
    - {{ Form::text('pupils_left_shape',$base_exam->pupils_left_shape,['class' => 'form-control', 'id' => 'pupils_left_shape']) }} -
    -
    - {{ Form::text('pupils_left_react',$base_exam->pupils_left_react,['class' => 'form-control', 'id' => 'pupils_left_react']) }} -
    -
    - {{ Form::text('pupils_left_apd',$base_exam->pupils_left_apd,['class' => 'form-control', 'id' => 'pupils_left_apd']) }} -
    -
    -
    -
    - -
    - - - - - - - - - - - -
    Visual Acuity
    -
    -
    -
    Distance
    -
    Right
    -
    Left
    -
    -
    -
    -
    sc
    -
    - {{ Form::select('visual_acuity_distance_sc_right', $visual_acuity_distance, $base_exam->visual_acuity_distance_sc_right, ['class' => 'form-control']) }} -
    -
    - {{ Form::select('visual_acuity_distance_sc_left', $visual_acuity_distance, $base_exam->visual_acuity_distance_sc_left, ['class' => 'form-control']) }} -
    -
    -
    -
    ph
    -
    - {{ Form::select('visual_acuity_distance_ph_right', $visual_acuity_distance, $base_exam->visual_acuity_distance_ph_right, ['class' => 'form-control']) }} -
    -
    - {{ Form::select('visual_acuity_distance_ph_left', $visual_acuity_distance, $base_exam->visual_acuity_distance_ph_left, ['class' => 'form-control']) }} -
    -
    -
    -
    cc
    -
    - {{ Form::select('visual_acuity_distance_cc_right', $visual_acuity_distance, $base_exam->visual_acuity_distance_cc_right, ['class' => 'form-control']) }} -
    -
    - {{ Form::select('visual_acuity_distance_cc_left', $visual_acuity_distance, $base_exam->visual_acuity_distance_cc_left, ['class' => 'form-control']) }} -
    -
    -
    -
    Near
    -
    -
    -
    -
    sc
    -
    - {{ Form::select('visual_acuity_near_sc_right', $visual_acuity_near, $base_exam->visual_acuity_near_sc_right, ['class' => 'form-control']) }} -
    -
    - {{ Form::select('visual_acuity_near_sc_left', $visual_acuity_near, $base_exam->visual_acuity_near_sc_left, ['class' => 'form-control']) }} -
    -
    -
    -
    cc
    -
    - {{ Form::select('visual_acuity_near_cc_right', $visual_acuity_near, $base_exam->visual_acuity_near_cc_right, ['class' => 'form-control']) }} -
    -
    - {{ Form::select('visual_acuity_near_cc_left', $visual_acuity_near, $base_exam->visual_acuity_near_cc_left, ['class' => 'form-control']) }} -
    -
    -
    -
    -
    - -
    -
    - - - - - - - - - - - -
    Refraction
    -
    -
    - Autorefractor -
    -
    -
    -
    -
    -
    -
    -
    Sphere
    -
    Cylinder
    -
    Axis
    -
    -
    -
    -
    -
    R
    -
    -
    -
    - {{ Form::text('manifest_auto_right_sphere',$base_exam->manifest_auto_right_sphere, ['class' => 'form-control']) }} -
    -
    - {{ Form::text('manifest_auto_right_cylinder',$base_exam->manifest_auto_right_cylinder, ['class' => 'form-control']) }} -
    -
    - {{ Form::text('manifest_auto_right_axis',$base_exam->manifest_auto_right_axis, ['class' => 'form-control']) }} -
    -
    -
    -
    -
    -
    L
    -
    -
    -
    - {{ Form::text('manifest_auto_left_sphere',$base_exam->manifest_auto_left_sphere, ['class' => 'form-control']) }} -
    -
    - {{ Form::text('manifest_auto_left_cylinder',$base_exam->manifest_auto_left_cylinder, ['class' => 'form-control']) }} -
    -
    - {{ Form::text('manifest_auto_left_axis',$base_exam->manifest_auto_left_axis, ['class' => 'form-control']) }} -
    -
    -
    -
    - Keratometry - -
    -
    -
    -
    -
    K1
    -
    K2
    -
    Axis
    -
    -
    -
    -
    -
    R
    -
    -
    -
    - {{ Form::text('keratometry_k1_right',$base_exam->keratometry_k1_right, ['class' => 'form-control']) }} -
    -
    - {{ Form::text('keratometry_k2_right',$base_exam->keratometry_k2_right, ['class' => 'form-control']) }} -
    -
    - {{ Form::text('keratometry_axis_right',$base_exam->keratometry_axis_right, ['class' => 'form-control']) }} -
    -
    -
    -
    -
    -
    L
    -
    -
    -
    - {{ Form::text('keratometry_k1_left',$base_exam->keratometry_k1_left, ['class' => 'form-control']) }} -
    -
    - {{ Form::text('keratometry_k2_left',$base_exam->keratometry_k2_left, ['class' => 'form-control']) }} -
    -
    - {{ Form::text('keratometry_axis_left',$base_exam->keratometry_axis_left, ['class' => 'form-control']) }} -
    -
    -
    -
    - - Retinoscope -
    -
    -
    -
    -
    Sphere
    -
    Cylinder
    -
    Axis
    -
    -
    -
    -
    -
    R
    -
    -
    -
    - {{ Form::text('manifest_ret_right_sphere',$base_exam->manifest_ret_right_sphere, ['class' => 'form-control']) }} -
    -
    - {{ Form::text('manifest_ret_right_cylinder',$base_exam->manifest_ret_right_cylinder, ['class' => 'form-control']) }} -
    -
    - {{ Form::text('manifest_ret_right_axis',$base_exam->manifest_ret_right_axis, ['class' => 'form-control']) }} -
    -
    -
    -
    -
    -
    L
    -
    -
    -
    - {{ Form::text('manifest_ret_left_sphere',$base_exam->manifest_ret_left_sphere, ['class' => 'form-control']) }} -
    -
    - {{ Form::text('manifest_ret_left_cylinder',$base_exam->manifest_ret_left_cylinder, ['class' => 'form-control']) }} -
    -
    - {{ Form::text('manifest_ret_left_axis',$base_exam->manifest_ret_left_axis, ['class' => 'form-control']) }} -
    -
    -
    -
    - - Subjective -
    -
    -
    -
    -
    Sphere
    -
    Cylinder
    -
    Axis
    -
    -
    -
    -
    -
    R
    -
    -
    -
    - {{ Form::text('subjective_right_sphere',$base_exam->subjective_right_sphere, ['class' => 'form-control']) }} -
    -
    - {{ Form::text('subjective_right_cylinder',$base_exam->subjective_right_cylinder, ['class' => 'form-control']) }} -
    -
    - {{ Form::text('subjective_right_axis',$base_exam->subjective_right_axis, ['class' => 'form-control']) }} -
    -
    -
    -
    -
    -
    L
    -
    -
    -
    - {{ Form::text('subjective_left_sphere',$base_exam->subjective_left_sphere, ['class' => 'form-control']) }} -
    -
    - {{ Form::text('subjective_left_cylinder',$base_exam->subjective_left_cylinder, ['class' => 'form-control']) }} -
    -
    - {{ Form::text('subjective_left_axis',$base_exam->subjective_left_axis, ['class' => 'form-control']) }} -
    -
    -
    -
    - -
    - - Add -
    -
    - {{ Form::text('added_values',$base_exam->added_values, ['class' => 'form-control']) }} -
    -
    -
    - - -
    -
    - - {{ Form::select('best_right_vision', $visual_acuity_distance, $base_exam->best_right_vision, ['class' => 'form-control']) }} -
    -
    - - {{ Form::select('best_left_vision', $visual_acuity_distance, $base_exam->best_left_vision, ['class' => 'form-control']) }} -
    -
    -
    - -
    -
    - - {{ Form::text('pd_right_eye', $base_exam->pd_right_eye, ['class' => 'form-control']) }} -
    -
    - - {{ Form::text('pd_left_eye', $base_exam->pd_left_eye, ['class' => 'form-control']) }} -
    -
    -
    - -
    -
    -
    -
    - Comments -
    -
    - {{ Form::textarea('comment',$base_exam->comment,['class' => 'form-control']) }} -
    -
    -
    - -
    -
    - -
    -
    - - {{ Form::close() }} -
    -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/edit_main_exam.blade.php b/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/edit_main_exam.blade.php deleted file mode 100644 index ff8e46c6..00000000 --- a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/edit_main_exam.blade.php +++ /dev/null @@ -1,1992 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@push('scripts') - - -@endpush - -@section('content') -
    -
    -

    Create Consultation

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - @php - $procedure_performed_counter = 0; - @endphp -
    -
    -
    -
    -
    -
    - - @include('eye_clinic::eye_clinic.menu') - - {{ Form::model($main_exam, ['method' => 'PUT', 'route' => ['eye_clinic.update_main_exam',$main_exam->id] , 'data-toggle' => 'validator']) }} - -
    -
    -
    -
    -
    - - - - - - - - - - - -
    External
    -
    - - -
    - -
    -
    Right
    -
    Left
    -
    -
    -
    Ext
    - -
    - {{ Form::textarea('external_right',$main_exam->external_right,['class' => 'form-control', 'id' => 'external_right', 'rows' => "2"]) }} -
    - -
    - {{ Form::textarea('external_left',$main_exam->external_left,['class' => 'form-control', 'id' => 'external_left', 'rows' => "2"]) }} -
    -
    -
    - - - - - - - - - - - - -
    Slit Lamp
    -
    - - -
    - -
    -
    Right
    -
    Left
    -
    - - @php - $selected_values_left_array = array_merge( - (explode(',',$main_exam->slit_ll_left)), - (explode(',',$main_exam->slit_cornea_left)), - (explode(',',$main_exam->slit_cs_left)), - (explode(',',$main_exam->slit_ac_left)), - (explode(',',$main_exam->slit_iris_left)), - (explode(',',$main_exam->slit_lens_left)), - (explode(',',$main_exam->slit_vit_left)), - (explode(',',$main_exam->slit_retina_left)), - (explode(',',$main_exam->slit_optic_disc_left)) - ); - - $selected_values_right_array = array_merge( - (explode(',',$main_exam->slit_ll_right)), - (explode(',',$main_exam->slit_cornea_right)), - (explode(',',$main_exam->slit_cs_right)), - (explode(',',$main_exam->slit_ac_right)), - (explode(',',$main_exam->slit_iris_right)), - (explode(',',$main_exam->slit_lens_right)), - (explode(',',$main_exam->slit_vit_right)), - (explode(',',$main_exam->slit_retina_right)), - (explode(',',$main_exam->slit_optic_disc_right)) - ); - @endphp - @foreach($slit_lamp_test_areas as $area) -
    -
    {{ $area->name }}
    -
    -
    -
    -
    -
    -
    - @foreach($slit_lamp_test_area_values as $value) - @if($area->id == $value->slit_lamp_test_area_id) - @if(in_array($value->id, $selected_values_right_array)) -
    -
    - id }}" type="checkbox" name="{{ $area->slug."_right[]" }}" checked value="{{ $value->id }}"> - -
    -
    - @else -
    -
    - id }}" type="checkbox" name="{{ $area->slug."_right[]" }}" value="{{ $value->id }}"> - -
    -
    - @endif - @endif - @endforeach - - @php $other_string = $area->slug."_other_right"; @endphp - - @if($main_exam->$other_string) -
    -
    - id }}"> - -
    -
    - @else -
    -
    - id }}"> - -
    -
    - @endif -
    - - @if($main_exam->$other_string) -
    -
    - -
    -
    -
    - @else -
    -
    - -
    -
    -
    - @endif - -
    -
    - add value -
    -
    -
    -
    -
    - -
    -
    -
    -
    - @foreach($slit_lamp_test_area_values as $value) - @if($area->id == $value->slit_lamp_test_area_id) - @if(in_array($value->id, $selected_values_left_array)) -
    -
    - id }}" type="checkbox" name="{{ $area->slug."_left[]" }}" checked value="{{ $value->id }}"> - -
    -
    - @else -
    -
    - id }}" type="checkbox" name="{{ $area->slug."_left[]" }}" value="{{ $value->id }}"> - -
    -
    - @endif - @endif - @endforeach - - @php $other_string = $area->slug."_other_left"; @endphp - - @if($main_exam->$other_string) -
    -
    - id }}"> - -
    -
    - @else -
    -
    - id }}"> - -
    -
    - @endif -
    - - @if($main_exam->$other_string) -
    -
    - -
    -
    -
    - @else -
    -
    - -
    -
    -
    - @endif - -
    -
    - add value -
    -
    -
    -
    -
    -
    -
    -
    - @endforeach -
    - - - -
    - - -
    - -
    -
    Right
    -
    Left
    -
    - - - - -
    -
    - - @if(!isset($main_exam->cdr_right)) - - @else - - @endif -
    -
    - - @if(!isset($main_exam->cdr_left)) - - @else - - @endif -
    -
    - - - -
    -
    -
    - - -
    -
    - - -
    -
    -
    - - @php - $diagnosis_categories_options = ""; - foreach ($diagnosis_categories as $item){ - $diagnosis_categories_options .= ""; - } - @endphp - -
    -
    - -
    -
    - - - -
    - -
    - -
    - - @if($main_exam->right_eye_diagnosis) - - - -
    - - - - - - - - @php - $diagnosis_id_array = explode(",", $main_exam->right_eye_diagnosis); - @endphp - @forelse ($diagnosis_id_array as $key => $id ) - @php - $category_id = get_name(get_name($id, 'id', 'diagnosis_category', 'diagnoses'), 'id', 'id', 'diagnosis_categories'); - $category_diagnoses = array_filter($diagnoses, function ($item) use ($category_id) { - return $item['diagnosis_category'] == $category_id; - }); - @endphp - - - - @empty - - - -
    - @endforelse - - - - - -
    -
    -
    - SECTION -
    -
    - DIAGNOSIS -
    -
    -
    -
    -
    -
    - -
    -
    - {{-- {{ Form::select('right_eye_diagnosis[]', $diagnoses, $id, ['class' => 'form-control select', 'id'=>'right_eye_diagnosis_'.$key]) }} --}} - -
    -
    -
    -
    No Diagnosis was recorded for this patient.
    -
    - @else -
    - - - - - - - - - - - -
    -
    -
    - SECTION -
    -
    - DIAGNOSIS -
    -
    -
    -
    -
    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    - @endif -
    -
    - @if($main_exam->left_eye_diagnosis) - -
    - - - - - - - - @php - $diagnosis_id_array = explode(",", $main_exam->left_eye_diagnosis); - @endphp - @forelse ($diagnosis_id_array as $key => $id) - @php - $category_id = get_name(get_name($id, 'id', 'diagnosis_category', 'diagnoses'), 'id', 'id', 'diagnosis_categories'); - $category_diagnoses = array_filter($diagnoses, function ($item) use ($category_id) { - return $item['diagnosis_category'] == $category_id; - }); - @endphp - - - - @empty - - - -
    - @endforelse - - - - - -
    -
    -
    - SECTION -
    -
    - DIAGNOSIS -
    -
    -
    -
    -
    -
    - -
    -
    - {{-- {{ Form::select('left_eye_diagnosis[]', $diagnoses, $id, ['class' => 'form-control select', 'id'=>'left_eye_diagnosis_'.$key]) }} --}} - -
    -
    - -
    -
    -
    No Diagnosis was registered for this patient...
    -
    - @else -
    - - - - - - - - - - - -
    -
    -
    - SECTION -
    -
    - DIAGNOSIS -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    - @endif -
    -

    - - -
    -
    - - - - - - - - - - - - - - - - - @if(!is_null($treatment)) - @if($treatment->altered == 0) - - @php - $drugs_array = explode(",", $treatment->drugs); - $dosage_array = explode(",", $treatment->doses); - $dosage2_array = explode(",", $treatment->dose2); - $frequencies_array = explode(",", $treatment->frequencies); - $duration_array = explode(",", $treatment->durations); - $quantity_dispensed_array = explode(",", $treatment->quantities_dispensed); - $eye_array = explode(",", $treatment->eye); - $instructions_array = explode(",", $treatment->instruction); - - - for ($x = 0; $x < count($drugs_array); $x++) { - - $frequency_name = get_name($frequencies_array[$x], 'id', 'name', 'dosage_frequencies'); - $drug_unit = " " . get_name(get_name($drugs_array[$x], 'id', "unit_id", 'drugs'), 'id', 'name', 'drug_units') . " "; - $dose2 = (empty($dosage2_array[$x])) ? "" : " | " . $dosage2_array[$x] . $drug_unit; - - if($eye_array[$x] == 1 || $eye_array[$x] == 2){ - $row_num = $x+1; - echo "" - ."" - . "" - . "" - . "" - . ""; - if ($treatment->dispense_status == 1): - echo ""; - else: - echo ""; - endif; - - if(isset($instructions_array[$x])){ - echo ""; - } else { - echo ""; - } - - echo ""; - } - } - @endphp - - @endif - @else - - - - @endif - -
    RIGHT EYE REQUESTED TREATMENTS
    #Drug NameFrequencyDurationQuantityDispensedInstruction
    " .$row_num."."."" . get_name($drugs_array[$x], 'id', "name", 'drugs') . "" . $dosage_array[$x] . $drug_unit . $dose2 . "  " . $frequency_name . "" . $duration_array[$x] . "" . $quantity_dispensed_array[$x] . "DispensedPending" . trim($instructions_array[$x]). "
    No prescription made yet
    -
    -
    - - - - - - - - - - - - - - - - - @if(!is_null($treatment)) - @if($treatment->altered == 0) - - @php - $drugs_array = explode(",", $treatment->drugs); - $dosage_array = explode(",", $treatment->doses); - $dosage2_array = explode(",", $treatment->dose2); - $frequencies_array = explode(",", $treatment->frequencies); - $duration_array = explode(",", $treatment->durations); - $quantity_dispensed_array = explode(",", $treatment->quantities_dispensed); - $eye_array = explode(",", $treatment->eye); - $instructions_array = explode(",", $treatment->instruction); - - for ($x = 0; $x < count($drugs_array); $x++) { - - $frequency_name = get_name($frequencies_array[$x], 'id', 'name', 'dosage_frequencies'); - $drug_unit = " " . get_name(get_name($drugs_array[$x], 'id', "unit_id", 'drugs'), 'id', 'name', 'drug_units') . " "; - $dose2 = (empty($dosage2_array[$x])) ? "" : " | " . $dosage2_array[$x] . $drug_unit; - - if($eye_array[$x] == 0 || $eye_array[$x] == 2){ - $row_num = $x+1; - echo "" - ."" - . "" - . "" - . "" - . ""; - if ($treatment->dispense_status == 1): - echo ""; - else: - echo ""; - endif; - - if(isset($instructions_array[$x])){ - echo ""; - } else { - echo ""; - } - - echo ""; - } - } - @endphp - - @endif - @else - - - - @endif - -
    LEFT EYE REQUESTED TREATMENTS
    #Drug NameFrequencyDurationQuantityDispensedInstruction
    " .$row_num."."."" . get_name($drugs_array[$x], 'id', "name", 'drugs') . "" . $dosage_array[$x] . $drug_unit . $dose2 . "  " . $frequency_name . "" . $duration_array[$x] . "" . $quantity_dispensed_array[$x] . "DispensedPending" . trim($instructions_array[$x]). "
    No prescription made yet
    -
    -

    - - -
    -
    - - - - - - - - - - - - - @if(count($ordered_procedures) > 0) - @php $count = 1;@endphp - @foreach($ordered_procedures as $ordered_procedure) - @php - $procedure_id = explode(",", $ordered_procedure->procedure_id); - $procedure_eye = explode(",", $ordered_procedure->eye); - $procedure_performed_array = explode(",", $ordered_procedure->performed); - $procedure_performed_id_array = explode(",", $ordered_procedure->performed_id); - @endphp - - @for($i = 0; $i < count($procedure_id); $i++) - @if($procedure_eye[$i] == 1 || $procedure_eye[$i] == 2) - - - - - - @endif - @endfor - @endforeach - @else - - - - @endif - -
    RIGHT EYE ORDERED PROCEDURES
    {{ __('consultations.PROCEDURE') }}{{ __('consultations.STATUS') }}{{ __('consultations.PERFORMED') }}
    - {{ \Streamline\Models\Procedure::find($procedure_id[$i])->name }} - - {!! $procedure_performed_array[$i] == 1 ? 'Performed' : 'Pending' !!} - - @if($procedure_performed_array[$i] != 1) - - {{ Form::hidden('perform[]', $procedure_id[$i]) }} - {{ Form::hidden('procedure_order_perform[]', $ordered_procedure->id) }} - {{ Form::hidden('procedure_performed_position[]', $i) }} - - - - @php $procedure_performed_counter++ @endphp - @else - By {{ get_full_name(get_name($procedure_performed_id_array[$i], 'id', 'performed_by', 'staff_performed_services'), 'id', 'first_name', 'last_name', 'users') }} - @endif -
    No procedure has been ordered.
    -
    -
    - - - - - - - - - - - - - @if(count($ordered_procedures) > 0) - @php $count = 1;@endphp - @foreach($ordered_procedures as $ordered_procedure) - @php - $procedure_id = explode(",", $ordered_procedure->procedure_id); - $procedure_eye = explode(",", $ordered_procedure->eye); - $procedure_performed_array = explode(",", $ordered_procedure->performed); - $procedure_performed_id_array = explode(",", $ordered_procedure->performed_id); - @endphp - - @for($i = 0; $i < count($procedure_id); $i++) - @if($procedure_eye[$i] == 0 || $procedure_eye[$i] == 2) - - - - - - @endif - @endfor - @endforeach - @else - - - - @endif - -
    LEFT EYE ORDERED PROCEDURES
    {{ __('consultations.PROCEDURE') }}{{ __('consultations.STATUS') }}{{ __('consultations.PERFORMED') }}
    - {{ \Streamline\Models\Procedure::find($procedure_id[$i])->name }} - - {!! $procedure_performed_array[$i] == 1 ? 'Performed' : 'Pending' !!} - - @if($procedure_performed_array[$i] != 1) - - {{ Form::hidden('perform[]', $procedure_id[$i]) }} - {{ Form::hidden('procedure_order_perform[]', $ordered_procedure->id) }} - {{ Form::hidden('procedure_performed_position[]', $i) }} - - - - @php $procedure_performed_counter++ @endphp - @else - By {{ get_full_name(get_name($procedure_performed_id_array[$i], 'id', 'performed_by', 'staff_performed_services'), 'id', 'first_name', 'last_name', 'users') }} - @endif -
    No procedure has been ordered.
    -
    -

    - - -
    -
    - - - - - - - - - - - - - - @if(count($investigation_results) > 0) - @foreach($investigation_results as $result) - @php - $eyes = \Streamline\Models\OrderedInvestigation::where('patient_id', $result->patient_id) - ->where('episode_id', $result->episode_id)->where('investigation_id', $result->investigation_id)->pluck('eye')->first(); - - $eye_array = explode(',', $eyes); - - $investigation_ids_array = explode(',', $result->investigation_id); - - // authentication of investigations - $per_investigation_array = explode(',', $result->per_investigation); - - $comments = explode(",", $result->comment); - $results_values = explode(",", $result->value); - @endphp - @for($i = 0 ; $i < count($investigation_ids_array) ; $i++) - @if(isset($investigation_ids_array[$i]) && $investigation_ids_array[$i] != "") - @php - $investigation = \Streamline\Models\Investigation::find($investigation_ids_array[$i]); - @endphp - - @if($eye_array[$i] == 1 || $eye_array[$i] == 2) - - - - - - - @endif - - @endif - @endfor - - - - @endforeach - @elseif(count($ordered_investigations) > 0) - @foreach($ordered_investigations as $investigation) - @php - $eye_array = explode(',', $investigation->eye); - $investigation_ids_array = explode(',', $investigation->investigation_id); - @endphp - @for($i = 0 ; $i < count($investigation_ids_array) ; $i++) - @if(isset($investigation_ids_array[$i]) && $investigation_ids_array[$i] != "") - @php - $investigation = \Streamline\Models\Investigation::find($investigation_ids_array[$i]); - @endphp - @if(isset($eye_array[$i])) - @if($eye_array[$i] == 1 || $eye_array[$i] == 2) - - - - - - - @endif - @endif - @endif - @endfor - @endforeach - @else - - - - @endif - -
    RIGHT EYE ORDERED INVESTIGATIONS
    InvestigationNormal rangeValueComment
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - {{ $investigation->normal_ranges }} - - @if($per_investigation_array[$i] == 0) - Pending - @else - {{ isset($results_values[$i]) ? $results_values[$i] : "" }} - @endif - - {!! $per_investigation_array[$i] == 0 ? 'Pending' : $comments[$i] !!} -
    Authenticated by{{ get_name($result->authenticated_by, 'id', 'first_name', 'users')}} {{ get_name($result->authenticated_by, 'id', 'last_name', 'users')}}
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - {{ $investigation->normal_ranges }} - Pending - {{ $investigation->comments }} -
    No Ordered Investigations.
    -
    - -
    - - - - - - - - - - - - - - @if(count($investigation_results) > 0) - @foreach($investigation_results as $result) - @php - $eyes = \Streamline\Models\OrderedInvestigation::where('patient_id', $result->patient_id) - ->where('episode_id', $result->episode_id)->where('investigation_id', $result->investigation_id)->pluck('eye')->first(); - - $eye_array = explode(',', $eyes); - - $investigation_ids_array = explode(',', $result->investigation_id); - - // authentication of investigations - $per_investigation_array = explode(',', $result->per_investigation); - - $comments = explode(",", $result->comment); - $results_values = explode(",", $result->value); - @endphp - @for($i = 0 ; $i < count($investigation_ids_array) ; $i++) - @if(isset($investigation_ids_array[$i]) && $investigation_ids_array[$i] != "") - @php - $investigation = \Streamline\Models\Investigation::find($investigation_ids_array[$i]); - @endphp - - @if($eye_array) - @if($eye_array[$i] == 0 || $eye_array[$i] == 2) - - - - - - - @endif - @endif - @endif - @endfor - - - - @endforeach - @elseif(count($ordered_investigations) > 0) - @foreach($ordered_investigations as $investigation) - @php - $eye_array = explode(',', $investigation->eye); - $investigation_ids_array = explode(',', $investigation->investigation_id); - @endphp - @for($i = 0 ; $i < count($investigation_ids_array) ; $i++) - @if(isset($investigation_ids_array[$i]) && $investigation_ids_array[$i] != "") - @php - $investigation = \Streamline\Models\Investigation::find($investigation_ids_array[$i]); - @endphp - @if(isset($eye_array[$i])) - @if($eye_array[$i] == 0 || $eye_array[$i] == 2) - - - - - - - @endif - @endif - @endif - @endfor - @endforeach - @else - - - - @endif - -
    LEFT EYE ORDERED INVESTIGATIONS
    InvestigationNormal rangeValueComment
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - {{ $investigation->normal_ranges }} - - @if($per_investigation_array[$i] == 0) - Pending - @else - {{ isset($results_values[$i]) ? $results_values[$i] : "" }} - @endif - - {!! $per_investigation_array[$i] == 0 ? 'Pending' : $comments[$i] !!} -
    Authenticated by{{ get_name($result->authenticated_by, 'id', 'first_name', 'users')}} {{ get_name($result->authenticated_by, 'id', 'last_name', 'users')}}
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - {{ $investigation->normal_ranges }} - Pending - {{ $investigation->comments }} -
    No Ordered Investigations.
    -
    -
    -
    - - -
    -
    - - - - - - - - - - - - @if(count($documents) > 0) - @foreach($documents as $document) - - - - @endforeach - @else - No Patient Documents Available - @endif - -
    PATIENT DOCUMENTS
    - DOCUMENT NAME - - {{ Form::button('Add New Patient Documents',['type'=>'submit','class'=>'btn btn-rounded btn-success btn-sm','name'=>'submit-btn','value'=>'patient_documents']) }} -
    - - - {{ is_null($document->title) ? substr($document->description, 0, 5) : $document->title }} - ({{ streamline_date_time($document->created_at) }}) - -
    - -
    -
    - - - - - - - - - - - - - - - @if(count($ordered_eye_glasses) > 0) - @foreach($ordered_eye_glasses as $ordered_eye_glass) - @php - $eye_glass = explode(',', $ordered_eye_glass->eye_glasses_id); - $eye_glass_quantity = explode(',', $ordered_eye_glass->quantity); - @endphp - @for($i = 0 ; $i < count($eye_glass) ; $i++) - - - - - - @endfor - @endforeach - @else - - - - @endif - - -
    ORDERED EYE GLASSES
    #EYE GLASSQUANTITY
    {{ $i + 1 }} - {{ \Streamline\Models\EyeGlasses::find($eye_glass[$i])->name }} - {{ $eye_glass_quantity[$i] ?? '' }}
    No Eye Glasses has been ordered.
    -
    - - - - - - - - - - - - - - - @if(count($ordered_sundries) > 0) - @php $count = 0; @endphp - @foreach($ordered_sundries as $ordered_sundry) - @php - $sundry_ids = explode(',', $ordered_sundry->sundries_id); - $sundry_quantities = explode(',', $ordered_sundry->quantity); - @endphp - @for ($i=0; $i < count($sundry_ids); $i++) - - - - - - @endfor - @endforeach - @else - - - - @endif - - -
    ORDERED SUNDRIES
    #SUNDRYQUANTITY
    {{ ++$count }} - {{ \Streamline\Models\Sundry::find($sundry_ids[$i])->name }} - - {{ $sundry_quantities[$i] }} -
    No sundry has been ordered.
    -
    - - -
    -
    -
    -
    - {{ Form::button('Treatment',['type'=>'submit','class'=>'btn btn-success btn-rounded btn-block','name'=>'submit-btn','value'=>'treatment']) }} -
    -
    - {{ Form::button('Procedures',['type'=>'submit','class'=>'btn btn-danger btn-rounded btn-block','name'=>'submit-btn','value'=>'procedures']) }} -
    -
    -
    - -
    -
    -
    - {{ Form::button('Sundries',['type'=>'submit','class'=>'btn btn-info btn-rounded btn-block','name'=>'submit-btn','value'=>'sundries']) }} -
    -
    - {{ Form::button('Eye Glasses',['type'=>'submit','class'=>'btn btn-warning btn-rounded btn-block','name'=>'submit-btn','value'=>'eye_glasses']) }} -
    -
    - {{ Form::button('Investigations',['type'=>'submit','class'=>'btn btn-primary btn-rounded btn-block','name'=>'submit-btn','value'=>'investigations']) }} -
    -
    -
    -
    - -
    -
    -
    -

    Advice

    - -
    -
    -
    -

    {{ __('consultations.history') }}

    - -
    -
    -
    -

    Notes

    - -
    -
    -
    -
    -
    -

    Time :

    - {{ Form::time('time', \Carbon\Carbon::now(),['class' => 'form-control', 'readonly', 'data-error'=>'','id'=>'time_surgery_completed']) }} -
    - -
    -
    -

    Outcome

    -
    -
    - {{ Form::select('outcome', $outcomes, $main_exam->outcome_id, ['id' => 'outcome', 'class' => 'form-control compulsory select']) }} -
    -
    -
    outcome_id != 1) style="display: none" @endif> -
    - {{ Form::label('ward_id','Select the ward') }} -
    - {{ Form::select('ward_id', $wards, '', ['class' => 'form-control compulsory select']) }} -
    -
    - -
    - {{ Form::label('admitted_on','Admitted on') }} -
    - {{ Form::text('admitted_on',date('d-m-Y'),['class' => 'form-control datepicker-autoclose compulsory', 'readonly', 'id'=>'admitted_on']) }} - -
    -
    -
    - -
    outcome_id != 4) style="display: none" @endif> -
    - {{ Form::label('referral_id',__('consultations.referred_to')) }} -
    - {{ Form::select('referral_id', $referrals, $main_exam->referred_to?? '', ['class' => 'form-control compulsory select', 'id' => 'referral_hospital']) }} -
    - - {{ __('triage.add_new') }} -
    - -
    - -
    - {{ Form::label('referral_notes', 'Referral Notes') }} - -
    -
    - -
    outcome_id != 3) style="display: none" @endif> -
    - {{ Form::label('followup_clinic_allocation', __('consultations.assigned_clinic')) }} - {{ Form::select('followup_clinic_allocation', $clinics, 0, ['class' => 'form-control col-sm-12 compulsory select']) }} -
    - -
    - {{ Form::label('followup_in_charge', __('consultations.assign_incharge')) }} - -
    - -
    - {{ Form::label('followup_when','Review Date') }} -
    - {{ Form::text('followup_when','',['class' => 'form-control compulsory datepicker-autoclose','readonly']) }} - -
    -
    - -
    - {{ Form::label('followup_in_time', __('consultations.appointment_time')) }} - {{ Form::time('followup_in_time','',['class' => 'form-control']) }} -
    -
    -
    - -
    -
    {{ Form::button('Save Main Exam',['type'=>'submit','class'=>'btn btn-default btn-block','name'=>'submit-btn','value'=>'save_main_exam', 'style'=>'border-radius: 5px;']) }}
    -
    {{ Form::button('Complete Main Exam',['type'=>'submit','style'=>'border-radius: 5px;','class'=>'btn btn-success btn-block','name'=>'submit-btn','value'=>'complete', 'onclick'=>'return confirm_outcome()']) }}
    - -
    -
    -
    -
    -
    - -
    -
    -
    - {{ Form::close() }} -
    -
    -
    -
    -
    - - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/index.blade.php b/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/index.blade.php deleted file mode 100755 index 1f9360be..00000000 --- a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/index.blade.php +++ /dev/null @@ -1,30 +0,0 @@ -@extends('layouts.main') - -@section('content') - -
    -
    -

    Eye Clinic

    -
    -
    - -
    -
    - -
    -
    -
    - - -
    -
    -
    - -@endsection \ No newline at end of file diff --git a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/main_exam.blade.php b/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/main_exam.blade.php deleted file mode 100644 index 54ed52c5..00000000 --- a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/main_exam.blade.php +++ /dev/null @@ -1,1580 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@push('scripts') - - -@endpush - -@section('content') -
    -
    -

    Create Consultation

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - @php - $procedure_performed_counter = 0; - @endphp - -
    - - {{ Form::open(['route' => 'eye_clinic.save_main_exam','data-toggle'=>'validator']) }} -
    -
    -
    -
    -
    - - @include('eye_clinic::eye_clinic.menu') - -
    -
    -
    -
    -
    - - - - - - - - - - - -
    External
    -
    - - -
    - -
    -
    -
    nl
    -
    Right
    -
    nl
    -
    Left
    -
    -
    -
    Ext
    -
    - {{ Form::checkbox('external_check_right', 1, 0, ['id' => 'external_check_right']) }} -
    -
    - {{ Form::textarea('external_right','',['class' => 'form-control', 'id' => 'external_right', 'rows' => "2"]) }} -
    -
    -
    - {{ Form::checkbox('external_check_left', 1, 0, ['id' => 'external_check_left']) }} -
    -
    - {{ Form::textarea('external_left','',['class' => 'form-control', 'id' => 'external_left', 'rows' => "2"]) }} -
    -
    -
    - - - - - - - - - - - - -
    Slit Lamp
    -
    - - -
    - -
    -
    Right
    -
    Left
    -
    - @foreach($slit_lamp_test_areas as $area) -
    -
    {{ $area->name }}
    -
    -
    -
    -
    -
    -
    - @foreach($slit_lamp_test_area_values as $value) - @if($area->id == $value->slit_lamp_test_area_id) - @if ($value->name == "Normal") -
    -
    - id }}" type="checkbox" name="{{ $area->slug."_right[]" }}" value="{{ $value->id }}"> - -
    -
    - @else -
    -
    - id }}" class="{{ "not_normal_right_".$area->id }}" type="checkbox" name="{{ $area->slug."_right[]" }}" value="{{ $value->id }}"> - -
    -
    - @endif - @endif - @endforeach -
    -
    - id }}"> - -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    - add value -
    -
    -
    -
    -
    - -
    -
    -
    -
    - @foreach($slit_lamp_test_area_values as $value) - @if($area->id == $value->slit_lamp_test_area_id) - @if ($value->name == "Normal") -
    -
    - id }}" type="checkbox" name="{{ $area->slug."_left[]" }}" value="{{ $value->id }}"> - -
    -
    - @else -
    -
    - id }}" class="{{ "not_normal_left_".$area->id }}" type="checkbox" name="{{ $area->slug."_left[]" }}" value="{{ $value->id }}"> - -
    -
    - @endif - @endif - @endforeach -
    -
    - id }}"> - -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    - add value -
    -
    -
    -
    -
    -
    -
    -
    - @endforeach -
    - - - -
    - - -
    - -
    -
    Right
    -
    Left
    -
    - - -
    -
    -
    - - -
    -
    - - -
    -
    -
    - -
    -
    -
    - - -
    -
    - - -
    -
    -
    - - - @php - $diagnosis_categories_options = ""; - foreach ($diagnosis_categories as $item){ - $diagnosis_categories_options .= ""; - } - @endphp -
    -
    - -
    -
    - - - -
    -
    -
    -
    -
    - - - - - - - - - - - -
    -
    -
    SECTION
    -
    DIAGNOSIS
    -
    -
    -
    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - - - - -
    -
    -
    SECTION
    -
    DIAGNOSIS
    -
    -
    -
    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -


    - - -
    -
    - - - - - - - - - - - - - - - - - @if(!is_null($treatment)) - @if($treatment->altered == 0) - - @php - $drugs_array = explode(",", $treatment->drugs); - $dosage_array = explode(",", $treatment->doses); - $dosage2_array = explode(",", $treatment->dose2); - $frequencies_array = explode(",", $treatment->frequencies); - $duration_array = explode(",", $treatment->durations); - $quantity_dispensed_array = explode(",", $treatment->quantities_dispensed); - $eye_array = explode(",", $treatment->eye); - $instructions_array = explode(",", $treatment->instruction); - @endphp - - @for($x = 0; $x < count($drugs_array); $x++) - @php - $frequency_name = get_name($frequencies_array[$x], 'id', 'name', 'dosage_frequencies'); - $drug_unit = " " . get_name(get_name($drugs_array[$x], 'id', "unit_id", 'drugs'), 'id', 'name', 'drug_units') . " "; - $dose2 = (empty($dosage2_array[$x])) ? "" : " | " . $dosage2_array[$x] . $drug_unit; - @endphp - - - - - - - - @if ($treatment->dispense_status == 1) - - @else - - @endif - - - @endfor - - @endif - @else - - - - @endif - -
    REQUESTED TREATMENTS
    EyeDrug NameFrequencyDurationQuantityDispensedInstruction
    - @if($eye_array[$x] == 1) - Right - @elseif($eye_array[$x] == 2) - Both - @else - Left - @endif - {{ get_name($drugs_array[$x], 'id', "name", 'drugs') }}{{ $dosage_array[$x] . $drug_unit . $dose2 . "  " . $frequency_name }}{{ $duration_array[$x] }}{{ $quantity_dispensed_array[$x] }}DispensedPending{{ $instructions_array[$x] ?? '' }}
    No prescription made yet
    -
    -
    - - - - - - - - - - - - - - @if(count($ordered_procedures) > 0) - @php $count = 1;@endphp - @foreach($ordered_procedures as $ordered_procedure) - @php - $procedure_id = explode(",", $ordered_procedure->procedure_id); - $procedure_eye = explode(",", $ordered_procedure->eye); - $procedure_performed_array = explode(",", $ordered_procedure->performed); - $procedure_performed_id_array = explode(",", $ordered_procedure->performed_id); - @endphp - - @for($i = 0; $i < count($procedure_id); $i++) - - - - - - - @endfor - @endforeach - @else - - - - @endif - -
    ORDERED PROCEDURES
    {{ __('consultations.PROCEDURE') }}{{ __('consultations.STATUS') }}{{ __('consultations.PERFORMED') }}{{ __('consultations.eye') }}
    - {{ \Streamline\Models\Procedure::find($procedure_id[$i])->name }} - - {!! $procedure_performed_array[$i] == 1 ? 'Performed' : 'Pending' !!} - - @if($procedure_performed_array[$i] != 1) - - {{ Form::hidden('perform[]', $procedure_id[$i]) }} - {{ Form::hidden('procedure_order_perform[]', $ordered_procedure->id) }} - {{ Form::hidden('procedure_performed_position[]', $i) }} - - - - @php $procedure_performed_counter++ @endphp - @else - By {{ get_full_name(get_name($procedure_performed_id_array[$i], 'id', 'performed_by', 'staff_performed_services'), 'id', 'first_name', 'last_name', 'users') }} - @endif - - @if($procedure_eye[$i] == 1) - Right - @elseif($procedure_eye[$i] == 2) - Both - @else - Left - @endif -
    No procedure has been ordered.
    -
    -
    - -
    - - -
    -
    - - - - - - - - - - - - - - - @if(count($investigation_results) > 0) - @foreach($investigation_results as $result) - @php - $eyes = \Streamline\Models\OrderedInvestigation::where('patient_id', $result->patient_id) - ->where('episode_id', $result->episode_id)->where('investigation_id', $result->investigation_id)->pluck('eye')->first(); - - $eye_array = explode(',', $eyes); - - $investigation_ids_array = explode(',', $result->investigation_id); - - // authentication of investigations - $per_investigation_array = explode(',', $result->per_investigation); - - $comments = explode(",", $result->comment); - $results_values = explode(",", $result->value); - @endphp - @for($i = 0 ; $i < count($investigation_ids_array) ; $i++) - @if(isset($investigation_ids_array[$i]) && $investigation_ids_array[$i] != "") - @php - $investigation = \Streamline\Models\Investigation::find($investigation_ids_array[$i]); - @endphp - - - - - - - - - - @endif - @endfor - - - - @endforeach - @elseif(count($ordered_investigations) > 0) - @foreach($ordered_investigations as $investigation) - @php - $eye_array = explode(',', $investigation->eye); - $investigation_ids_array = explode(',', $investigation->investigation_id); - @endphp - @for($i = 0 ; $i < count($investigation_ids_array) ; $i++) - @if(isset($investigation_ids_array[$i]) && $investigation_ids_array[$i] != "") - @php - $investigation = \Streamline\Models\Investigation::find($investigation_ids_array[$i]); - @endphp - - - - - - - - @endif - @endfor - @endforeach - @else - - - - @endif - -
    ORDERED INVESTIGATIONS
    InvestigationNormal rangeValueCommentEye
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - {{ $investigation->normal_ranges }} - - @if($per_investigation_array[$i] == 0) - Pending - @else - {{ isset($results_values[$i]) ? $results_values[$i] : "" }} - @endif - - {!! $per_investigation_array[$i] == 0 ? 'Pending' : $comments[$i] !!} - - @if($eye_array[$i] == 1) - Right - @elseif($eye_array[$i] == 2) - Both - @else - Left - @endif -
    Authenticated by{{ get_name($result->authenticated_by, 'id', 'first_name', 'users')}} {{ get_name($result->authenticated_by, 'id', 'last_name', 'users')}}
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - {{ $investigation->normal_ranges }} - Pending - {{ $investigation->comments }} - - @if($eye_array[$i] == 1) - Right - @elseif($eye_array[$i] == 2) - Both - @else - Left - @endif -
    No Ordered Investigations.
    -
    - -
    - - - - - - - - - - - - - @if(count($ordered_sundries) > 0) - @php $count = 0; @endphp - @foreach($ordered_sundries as $ordered_sundry) - @php - $sundry_ids = explode(',', $ordered_sundry->sundries_id); - $sundry_quantities = explode(',', $ordered_sundry->quantity); - @endphp - @for ($i=0; $i < count($sundry_ids); $i++) - - - - - - @endfor - @endforeach - @else - - - - @endif - - -
    ORDERED SUNDRIES
    #SUNDRYQUANTITY
    {{ ++$count }} - {{ \Streamline\Models\Sundry::find($sundry_ids[$i])->name }} - - {{ $sundry_quantities[$i] }} -
    No sundry has been ordered.
    -
    -
    -
    - - -
    -
    - - - - - - - - - - - - @if(count($documents) > 0) - @foreach($documents as $document) - - - - @endforeach - @else - No Patient Documents Available - @endif - -
    PATIENT DOCUMENTS
    - DOCUMENT NAME - - {{ Form::button('Add New Patient Documents',['type'=>'submit','class'=>'btn btn-rounded btn-success btn-sm','name'=>'submit-btn','value'=>'patient_documents']) }} -
    - - - {{ is_null($document->title) ? substr($document->description, 0, 5) : $document->title }} - ({{ streamline_date_time($document->created_at) }}) - -
    - -
    -
    - - - - - - - - - - - - - @if(count($ordered_eye_glasses) > 0) - @foreach($ordered_eye_glasses as $ordered_eye_glass) - @php - $eye_glass = explode(',', $ordered_eye_glass->eye_glasses_id); - $eye_glass_quantity = explode(',', $ordered_eye_glass->quantity); - @endphp - @for($i = 0 ; $i < count($eye_glass) ; $i++) - - - - - - @endfor - @endforeach - @else - - - - @endif - - -
    ORDERED EYE GLASSES
    #EYE GLASSQUANTITY
    {{ $i + 1 }} - {{ \Streamline\Models\EyeGlasses::find($eye_glass[$i])->name }} - {{ $eye_glass_quantity[$i] ?? '' }}
    No Eye Glasses has been ordered.
    -
    -
    - -
    - -
    -
    -
    -
    - {{ Form::button('Treatment',['type'=>'submit','class'=>'btn btn-rounded btn-success btn-block','name'=>'submit-btn','value'=>'treatment']) }} -
    -
    - {{ Form::button('Procedures',['type'=>'submit','class'=>'btn btn-rounded btn-danger btn-block','name'=>'submit-btn','value'=>'procedures']) }} -
    -
    -
    - -
    -
    -
    - {{ Form::button('Sundries',['type'=>'submit','class'=>'btn btn-rounded btn-info btn-block','name'=>'submit-btn','value'=>'sundries']) }} -
    -
    - {{ Form::button('Eye Glasses',['type'=>'submit','class'=>'btn btn-rounded btn-warning btn-block','name'=>'submit-btn','value'=>'eye_glasses']) }} -
    -
    - {{ Form::button('Investigations',['type'=>'submit','class'=>'btn btn-rounded btn-primary btn-block','name'=>'submit-btn','value'=>'investigations']) }} -
    -
    -
    -
    - -
    -
    -
    -

    Advice

    - -
    -
    -
    -

    {{ __('consultations.history') }}

    - -
    -
    -
    -

    Notes

    - -
    -
    -
    -
    -
    -

    Time :

    - {{ Form::time('time', \Carbon\Carbon::now(),['class' => 'form-control', 'readonly', 'data-error'=>'','id'=>'time_surgery_completed']) }} -
    - -
    -
    -

    Outcome

    -
    -
    - {{ Form::select('outcome', $outcomes, 7, ['id' => 'outcome', 'class' => 'form-control compulsory select']) }} -
    -
    - - - - - -
    - -
    -
    {{ Form::button('Save Main Exam',['type'=>'submit','class'=>'btn btn-default btn-block','name'=>'submit-btn','value'=>'save_main_exam', 'style'=>'border-radius: 5px;']) }}
    -
    {{ Form::button('Complete Main Exam',['type'=>'submit','style'=>'border-radius: 5px;','class'=>'btn btn-success btn-block','name'=>'submit-btn','value'=>'complete', 'onclick'=>'return confirm_outcome()']) }}
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - {{ Form::close() }} - - -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/main_exam_details.blade.php b/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/main_exam_details.blade.php deleted file mode 100644 index 23403f1e..00000000 --- a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/main_exam_details.blade.php +++ /dev/null @@ -1,1502 +0,0 @@ -@extends('layouts.main') - -@push('scripts') - -@endpush - -@section('content') -
    -
    -

    Create Consultation

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    -
    -
    -
    -
    -
    -
    - - @include('eye_clinic::eye_clinic.menu') - -
    -
    -
    -
    -
    - - - - - - - - - - - -
    External
    -
    - - -
    - -
    -
    Right
    -
    Left
    -
    -
    -
    Ext
    - -
    - {{ Form::textarea('external_right',$main_exam->external_right,['class' => 'form-control', 'id' => 'external_right', 'rows' => "2", 'readonly']) }} -
    - -
    - {{ Form::textarea('external_left',$main_exam->external_left,['class' => 'form-control', 'id' => 'external_left', 'rows' => "2", 'readonly']) }} -
    -
    -
    - - - - - - - - - - - - -
    Slit Lamp
    -
    - - -
    - -
    -
    Right
    -
    Left
    -
    - - @php - $selected_values_left_array = array_merge( - (explode(',',$main_exam->slit_ll_left)), - (explode(',',$main_exam->slit_cornea_left)), - (explode(',',$main_exam->slit_cs_left)), - (explode(',',$main_exam->slit_ac_left)), - (explode(',',$main_exam->slit_iris_left)), - (explode(',',$main_exam->slit_lens_left)), - (explode(',',$main_exam->slit_vit_left)), - (explode(',',$main_exam->slit_retina_left)), - (explode(',',$main_exam->slit_optic_disc_left)) - ); - - $selected_values_right_array = array_merge( - (explode(',',$main_exam->slit_ll_right)), - (explode(',',$main_exam->slit_cornea_right)), - (explode(',',$main_exam->slit_cs_right)), - (explode(',',$main_exam->slit_ac_right)), - (explode(',',$main_exam->slit_iris_right)), - (explode(',',$main_exam->slit_lens_right)), - (explode(',',$main_exam->slit_vit_right)), - (explode(',',$main_exam->slit_retina_right)), - (explode(',',$main_exam->slit_optic_disc_right)) - ); - @endphp -
    -
    Lid
    -
    -
    -
    -
    -
    -
    - @if($main_exam->slit_ll_right) - @php - $ids = explode(',',$main_exam->slit_ll_right); - @endphp - @for($x = 0; $x < count($ids); $x++) -
    -
    - - -
    -
    - @endfor - @elseif($main_exam->slit_ll_other_right) -
    - - -
    - @else -

    - @endif -
    -
    -
    -
    - -
    -
    -
    -
    - @if($main_exam->slit_ll_left) - @php - $ids = explode(',',$main_exam->slit_ll_left); - @endphp - @for($x = 0; $x < count($ids); $x++) -
    -
    - - -
    -
    - @endfor - @elseif($main_exam->slit_ll_other_left) -
    - - -
    - @else -

    - @endif -
    -
    -
    -
    -
    -
    -
    -
    -
    Cornea
    -
    -
    -
    -
    -
    -
    - @if($main_exam->slit_cornea_right) - @php - $ids = explode(',',$main_exam->slit_cornea_right); - @endphp - @for($x = 0; $x < count($ids); $x++) -
    -
    - - -
    -
    - @endfor - @elseif($main_exam->slit_cornea_other_right) -
    - - -
    - @else -

    - @endif -
    -
    -
    -
    - -
    -
    -
    -
    - @if($main_exam->slit_cornea_left) - @php - $ids = explode(',',$main_exam->slit_cornea_left); - @endphp - @for($x = 0; $x < count($ids); $x++) -
    -
    - - -
    -
    - @endfor - @elseif($main_exam->slit_cornea_other_left) -
    - - -
    - @else -

    - @endif -
    - -
    -
    -
    -
    -
    -
    -
    -
    Conjunctiva
    -
    -
    -
    -
    -
    -
    - @if($main_exam->slit_cs_right) - @php - $ids = explode(',',$main_exam->slit_cs_right); - @endphp - @for($x = 0; $x < count($ids); $x++) -
    -
    - - -
    -
    - @endfor - @elseif($main_exam->slit_cs_other_right) -
    - - -
    - @else -

    - @endif -
    - -
    -
    -
    - -
    -
    -
    -
    - @if($main_exam->slit_cs_left) - @php - $ids = explode(',',$main_exam->slit_cs_left); - @endphp - @for($x = 0; $x < count($ids); $x++) -
    -
    - - -
    -
    - @endfor - @elseif($main_exam->slit_cs_other_left) -
    - - -
    - @else -

    - @endif -
    - -
    -
    -
    -
    -
    -
    -
    -
    AC
    -
    -
    -
    -
    -
    -
    - @if($main_exam->slit_ac_right) - @php - $ids = explode(',',$main_exam->slit_ac_right); - @endphp - @for($x = 0; $x < count($ids); $x++) -
    -
    - - -
    -
    - @endfor - @elseif($main_exam->slit_ac_other_right) -
    - - -
    - @else -

    - @endif -
    - -
    -
    -
    - -
    -
    -
    -
    - @if($main_exam->slit_ac_left) - @php - $ids = explode(',',$main_exam->slit_ac_left); - @endphp - @for($x = 0; $x < count($ids); $x++) -
    -
    - - -
    -
    - @endfor - @elseif($main_exam->slit_ac_other_left) -
    - - -
    - @else -

    - @endif -
    -
    -
    -
    -
    -
    -
    -
    -
    Iris
    -
    -
    -
    -
    -
    -
    - @if($main_exam->slit_iris_right) - @php - $ids = explode(',',$main_exam->slit_iris_right); - @endphp - @for($x = 0; $x < count($ids); $x++) -
    -
    - - -
    -
    - @endfor - @elseif($main_exam->slit_iris_other_right) -
    - - -
    - @else -

    - @endif -
    -
    -
    -
    - -
    -
    -
    -
    - @if($main_exam->slit_iris_left) - @php - $ids = explode(',',$main_exam->slit_iris_left); - @endphp - @for($x = 0; $x < count($ids); $x++) -
    -
    - - -
    -
    - @endfor - @elseif($main_exam->slit_iris_other_left) -
    - - -
    - @else -

    - @endif -
    -
    -
    -
    -
    -
    -
    -
    -
    Lens
    -
    -
    -
    -
    -
    -
    - @if($main_exam->slit_lens_right) - @php - $ids = explode(',',$main_exam->slit_lens_right); - @endphp - @for($x = 0; $x < count($ids); $x++) -
    -
    - - -
    -
    - @endfor - @elseif($main_exam->slit_lens_other_right) -
    - - -
    - @else -

    - @endif -
    - -
    -
    -
    - -
    -
    -
    -
    - @if($main_exam->slit_lens_left) - @php - $ids = explode(',',$main_exam->slit_lens_left); - @endphp - @for($x = 0; $x < count($ids); $x++) -
    -
    - - -
    -
    - @endfor - @elseif($main_exam->slit_lens_other_left) -
    - - -
    - @else -

    - @endif -
    -
    -
    -
    -
    -
    -
    -
    -
    Vit
    -
    -
    -
    -
    -
    -
    - @if($main_exam->slit_vit_right) - @php - $ids = explode(',',$main_exam->slit_vit_right); - @endphp - @for($x = 0; $x < count($ids); $x++) -
    -
    - - -
    -
    - @endfor - @elseif($main_exam->slit_vit_other_right) -
    - - -
    - @else -

    - @endif -
    -
    -
    -
    - -
    -
    -
    -
    - @if($main_exam->slit_vit_left) - @php - $ids = explode(',',$main_exam->slit_vit_left); - @endphp - @for($x = 0; $x < count($ids); $x++) -
    -
    - - -
    -
    - @endfor - @elseif($main_exam->slit_vit_other_left) -
    - - -
    - @else -

    - @endif -
    -
    -
    -
    -
    -
    -
    -
    -
    Retina
    -
    -
    -
    -
    -
    -
    - @if($main_exam->slit_retina_right) - @php - $ids = explode(',',$main_exam->slit_retina_right); - @endphp - @for($x = 0; $x < count($ids); $x++) -
    -
    - - -
    -
    - @endfor - @elseif($main_exam->slit_retina_other_right) -
    - - -
    - @else -

    - @endif -
    -
    -
    -
    - -
    -
    -
    -
    - @if($main_exam->slit_retina_left) - @php - $ids = explode(',',$main_exam->slit_retina_left); - @endphp - @for($x = 0; $x < count($ids); $x++) -
    -
    - - -
    -
    - @endfor - @elseif($main_exam->slit_retina_other_left) -
    - - -
    - @else -

    - @endif -
    -
    -
    -
    -
    -
    -
    -
    -
    Optic Disc
    -
    -
    -
    -
    -
    -
    - @if($main_exam->slit_optic_disc_right) - @php - $ids = explode(',',$main_exam->slit_optic_disc_right); - @endphp - @for($x = 0; $x < count($ids); $x++) -
    -
    - - -
    -
    - @endfor - @elseif($main_exam->slit_optic_disc_other_right) -
    - - -
    - @else -

    - @endif -
    -
    -
    -
    - -
    -
    -
    -
    - @if($main_exam->slit_optic_disc_left) - @php - $ids = explode(',',$main_exam->slit_optic_disc_left); - @endphp - @for($x = 0; $x < count($ids); $x++) -
    -
    - - -
    -
    - @endfor - @elseif($main_exam->slit_optic_disc_other_left) -
    - - -
    - @else -

    - @endif -
    -
    -
    -
    -
    -
    -
    -
    - -
    - - -
    - -
    -
    Right
    -
    Left
    -
    - - -
    -
    -
    - - - -
    -
    - - -
    -
    -
    - - -
    -
    -
    - - -
    -
    - - -
    -
    -
    - - -
    -
    -
    -
    - - - - - - - - - @php - $diagnosis_id_array = explode(",", $main_exam->right_eye_diagnosis); - @endphp - @if(count($diagnosis_id_array) > 0) - @foreach($diagnosis_id_array as $id) - - - - - @endforeach - @else - - - -
    - @endif - -
    SECTIONDIAGNOSIS
    {{ $diagnosis_categories[get_name($id, 'id', 'diagnosis_category', 'diagnoses')] }}{{ get_name($id, 'id', 'name', 'diagnoses') }}
    No Diagnosis was registered for this patient...
    -
    -
    -
    -
    -
    -
    - - - - - - - - - @php - $diagnosis_id_array = explode(",", $main_exam->left_eye_diagnosis); - @endphp - @if(count($diagnosis_id_array) > 0) - @foreach($diagnosis_id_array as $id) - - - - - @endforeach - @else - - - -
    - @endif - -
    SECTIONDIAGNOSIS
    {{ $diagnosis_categories[get_name($id, 'id', 'diagnosis_category', 'diagnoses')] }}{{ get_name($id, 'id', 'name', 'diagnoses') }}
    No Diagnosis was registered for this patient...
    -
    -
    -
    -

    - - -
    -
    - - - - - - - - - - - - - - - - - @if(!is_null($treatment)) - @if($treatment->altered == 0) - - @php - $drugs_array = explode(",", $treatment->drugs); - $dosage_array = explode(",", $treatment->doses); - $dosage2_array = explode(",", $treatment->dose2); - $frequencies_array = explode(",", $treatment->frequencies); - $duration_array = explode(",", $treatment->durations); - $quantity_dispensed_array = explode(",", $treatment->quantities_dispensed); - $eye_array = explode(",", $treatment->eye); - $instructions_array = explode(",", $treatment->instruction); - - - for ($x = 0; $x < count($drugs_array); $x++) { - $frequency_name = get_name($frequencies_array[$x], 'id', 'name', 'dosage_frequencies'); - $drug_unit = " " . get_name(get_name($drugs_array[$x], 'id', "unit_id", 'drugs'), 'id', 'name', 'drug_units') . " "; - $row_num = $x+1; - - if($eye_array[$x] == 1 || $eye_array[$x] == 2){ - echo "" - ."" - . "" - . "" - . "" - . ""; - if ($treatment->dispense_status == 1): - echo ""; - else: - echo ""; - endif; - - if(isset($instructions_array[$x])){ - echo ""; - } else { - echo ""; - } - - echo ""; - } - } - @endphp - - @endif - @else - - - - @endif - -
    RIGHT EYE REQUESTED TREATMENTS
    #Drug NameFrequencyDurationQuantityDispensedInstruction
    " .$row_num."."."" . get_name($drugs_array[$x], 'id', "name", 'drugs') . "" . $dosage_array[$x] . $drug_unit . "  " . $frequency_name . "" . $duration_array[$x] . "" . $quantity_dispensed_array[$x] . "DispensedPending" . trim($instructions_array[$x]). "
    No prescription made yet
    -
    -
    - - - - - - - - - - - - - - - - - @if(!is_null($treatment)) - @if($treatment->altered == 0) - - @php - $drugs_array = explode(",", $treatment->drugs); - $dosage_array = explode(",", $treatment->doses); - $dosage2_array = explode(",", $treatment->dose2); - $frequencies_array = explode(",", $treatment->frequencies); - $duration_array = explode(",", $treatment->durations); - $quantity_dispensed_array = explode(",", $treatment->quantities_dispensed); - $eye_array = explode(",", $treatment->eye); - $instructions_array = explode(",", $treatment->instruction); - - for ($x = 0; $x < count($drugs_array); $x++) { - - $frequency_name = get_name($frequencies_array[$x], 'id', 'name', 'dosage_frequencies'); - $drug_unit = " " . get_name(get_name($drugs_array[$x], 'id', "unit_id", 'drugs'), 'id', 'name', 'drug_units') . " "; - $row_num = $x+1; - - if($eye_array[$x] == 0 || $eye_array[$x] == 2){ - echo "" - ."" - . "" - . "" - . "" - . ""; - if ($treatment->dispense_status == 1): - echo ""; - else: - echo ""; - endif; - - if(isset($instructions_array[$x])){ - echo ""; - } else { - echo ""; - } - - echo ""; - } - } - @endphp - - @endif - @else - - - - @endif - -
    LEFT EYE REQUESTED TREATMENTS
    #Drug NameFrequencyDurationQuantityDispensedInstruction
    " .$row_num."."."" . get_name($drugs_array[$x], 'id', "name", 'drugs') . "" . $dosage_array[$x] . $drug_unit . "  " . $frequency_name . "" . $duration_array[$x] . "" . $quantity_dispensed_array[$x] . "DispensedPending" . trim($instructions_array[$x]). "
    No prescription made yet
    -
    -

    - - -
    -
    - - - - - - - - - - - - - @if(count($ordered_procedures) > 0) - @php $count = 1; $procedure_performed_counter = 0;@endphp - @foreach($ordered_procedures as $ordered_procedure) - @php - $procedure_id = explode(",", $ordered_procedure->procedure_id); - $procedure_eye = explode(",", $ordered_procedure->eye); - $procedure_performed_array = explode(",", $ordered_procedure->performed); - $procedure_performed_id_array = explode(",", $ordered_procedure->performed_id); - @endphp - - @for($i = 0; $i < count($procedure_id); $i++) - @if($procedure_eye[$i] == 1 || $procedure_eye[$i] == 2) - - - - - - @endif - @endfor - @endforeach - @else - - - - @endif - -
    RIGHT EYE ORDERED PROCEDURES
    {{ __('consultations.PROCEDURE') }}{{ __('consultations.STATUS') }}{{ __('consultations.PERFORMED') }}
    - {{ \Streamline\Models\Procedure::find($procedure_id[$i])->name }} - - {!! $procedure_performed_array[$i] == 1 ? 'Performed' : 'Pending' !!} - - @if($procedure_performed_array[$i] == 1) - By {{ get_full_name(get_name($procedure_performed_id_array[$i], 'id', 'performed_by', 'staff_performed_services'), 'id', 'first_name', 'last_name', 'users') }} - @endif -
    No procedure has been ordered.
    -
    -
    - - - - - - - - - - - - - @if(count($ordered_procedures) > 0) - @php $count = 1; $procedure_performed_counter = 0;@endphp - @foreach($ordered_procedures as $ordered_procedure) - @php - $procedure_id = explode(",", $ordered_procedure->procedure_id); - $procedure_eye = explode(",", $ordered_procedure->eye); - $procedure_performed_array = explode(",", $ordered_procedure->performed); - $procedure_performed_id_array = explode(",", $ordered_procedure->performed_id); - @endphp - - @for($i = 0; $i < count($procedure_id); $i++) - @if($procedure_eye[$i] == 0 || $procedure_eye[$i] == 2) - - - - - - @endif - @endfor - @endforeach - @else - - - - @endif - -
    LEFT EYE ORDERED PROCEDURES
    {{ __('consultations.PROCEDURE') }}{{ __('consultations.STATUS') }}{{ __('consultations.PERFORMED') }}
    - {{ \Streamline\Models\Procedure::find($procedure_id[$i])->name }} - - {!! $procedure_performed_array[$i] == 1 ? 'Performed' : 'Pending' !!} - - @if($procedure_performed_array[$i] != 1) - Pending - @else - By {{ get_full_name(get_name($procedure_performed_id_array[$i], 'id', 'performed_by', 'staff_performed_services'), 'id', 'first_name', 'last_name', 'users') }} - @endif -
    No procedure has been ordered.
    -
    -

    - - -
    -
    - - - - - - - - - - - - - - @if(count($investigation_results) > 0) - @foreach($investigation_results as $result) - @php - $eyes = \Streamline\Models\OrderedInvestigation::where('patient_id', $result->patient_id) - ->where('episode_id', $result->episode_id)->where('investigation_id', $result->investigation_id)->pluck('eye')->first(); - - $eye_array = explode(',', $eyes); - - $investigation_ids_array = explode(',', $result->investigation_id); - - // authentication of investigations - $per_investigation_array = explode(',', $result->per_investigation); - - $comments = explode(",", $result->comment); - $results_values = explode(",", $result->value); - @endphp - @for($i = 0 ; $i < count($investigation_ids_array) ; $i++) - @if(isset($investigation_ids_array[$i]) && $investigation_ids_array[$i] != "") - @php - $investigation = \Streamline\Models\Investigation::find($investigation_ids_array[$i]); - @endphp - - @if($eye_array[$i] == 1 || $eye_array[$i] == 2) - - - - - - - @endif - - @endif - @endfor - - - - @endforeach - @elseif(count($ordered_investigations) > 0) - @foreach($ordered_investigations as $investigation) - @php - $eye_array = explode(',', $investigation->eye); - $investigation_ids_array = explode(',', $investigation->investigation_id); - @endphp - @for($i = 0 ; $i < count($investigation_ids_array) ; $i++) - @if(isset($investigation_ids_array[$i]) && $investigation_ids_array[$i] != "") - @php - $investigation = \Streamline\Models\Investigation::find($investigation_ids_array[$i]); - @endphp - @if(isset($eye_array[$i])) - @if($eye_array[$i] == 1 || $eye_array[$i] == 2) - - - - - - - @endif - @endif - @endif - @endfor - @endforeach - @else - - - - @endif - -
    RIGHT EYE ORDERED INVESTIGATIONS
    InvestigationNormal rangeValueComment
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - {{ $investigation->normal_ranges }} - - @if($per_investigation_array[$i] == 0) - Pending - @else - {{ isset($results_values[$i]) ? $results_values[$i] : "" }} - @endif - - {!! $per_investigation_array[$i] == 0 ? 'Pending' : $comments[$i] !!} -
    Authenticated by{{ get_name($result->authenticated_by, 'id', 'first_name', 'users')}} {{ get_name($result->authenticated_by, 'id', 'last_name', 'users')}}
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - {{ $investigation->normal_ranges }} - Pending - {{ $investigation->comments }} -
    No Ordered Investigations.
    -
    - -
    - - - - - - - - - - - - - - @if(count($investigation_results) > 0) - @foreach($investigation_results as $result) - @php - $eyes = \Streamline\Models\OrderedInvestigation::where('patient_id', $result->patient_id) - ->where('episode_id', $result->episode_id)->where('investigation_id', $result->investigation_id)->pluck('eye')->first(); - - $eye_array = explode(',', $eyes); - - $investigation_ids_array = explode(',', $result->investigation_id); - - // authentication of investigations - $per_investigation_array = explode(',', $result->per_investigation); - - $comments = explode(",", $result->comment); - $results_values = explode(",", $result->value); - @endphp - @for($i = 0 ; $i < count($investigation_ids_array) ; $i++) - @if(isset($investigation_ids_array[$i]) && $investigation_ids_array[$i] != "") - @php - $investigation = \Streamline\Models\Investigation::find($investigation_ids_array[$i]); - @endphp - - @if($eye_array) - @if($eye_array[$i] == 0 || $eye_array[$i] == 2) - - - - - - - @endif - @endif - @endif - @endfor - - - - @endforeach - @elseif(count($ordered_investigations) > 0) - @foreach($ordered_investigations as $investigation) - @php - $eye_array = explode(',', $investigation->eye); - $investigation_ids_array = explode(',', $investigation->investigation_id); - @endphp - @for($i = 0 ; $i < count($investigation_ids_array) ; $i++) - @if(isset($investigation_ids_array[$i]) && $investigation_ids_array[$i] != "") - @php - $investigation = \Streamline\Models\Investigation::find($investigation_ids_array[$i]); - @endphp - @if(isset($eye_array[$i])) - @if($eye_array[$i] == 0 || $eye_array[$i] == 2) - - - - - - - @endif - @endif - @endif - @endfor - @endforeach - @else - - - - @endif - -
    LEFT EYE ORDERED INVESTIGATIONS
    InvestigationNormal rangeValueComment
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - {{ $investigation->normal_ranges }} - - @if($per_investigation_array[$i] == 0) - Pending - @else - {{ isset($results_values[$i]) ? $results_values[$i] : "" }} - @endif - - {!! $per_investigation_array[$i] == 0 ? 'Pending' : $comments[$i] !!} -
    Authenticated by{{ get_name($result->authenticated_by, 'id', 'first_name', 'users')}} {{ get_name($result->authenticated_by, 'id', 'last_name', 'users')}}
    - @if($investigation->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - {{ $investigation->name }} - @else - {{ $investigation->name }} - @endif - - {{ $investigation->normal_ranges }} - Pending - {{ $investigation->comments }} -
    No Ordered Investigations.
    -
    -

    - - -
    -
    - - - - - - - - - - - - @if(count($documents) > 0) - @foreach($documents as $document) - - - - @endforeach - @else - No Patient Documents Available - @endif - -
    PATIENT DOCUMENTS
    - DOCUMENT NAME - - Add New Patient Documents -
    - - - {{ is_null($document->title) ? substr($document->description, 0, 5) : $document->title }} - ({{ streamline_date_time($document->created_at) }}) - -
    - -
    -
    - - - - - - - - - - - - - - - @if(count($ordered_eye_glasses) > 0) - @php $count = 1; @endphp - @foreach($ordered_eye_glasses as $ordered_sundry) - - - - - - @php $count++; @endphp - @endforeach - @else - - - - @endif - - -
    ORDERED EYE GLASSES
    #EYE GLASSQUANTITY
    {{ $count }} - {{ \Streamline\Models\EyeGlasses::find($ordered_sundry->eye_glasses_id)->name }} - - {!! $ordered_sundry->quantity !!} -
    No Eye Glasses has been ordered.
    -
    - - - - - - - - - - - - - - - @if(count($ordered_sundries) > 0) - @php $count = 0; @endphp - @foreach($ordered_sundries as $ordered_sundry) - @php - $sundry_ids = explode(',', $ordered_sundry->sundries_id); - $sundry_quantities = explode(',', $ordered_sundry->quantity); - @endphp - @for ($i=0; $i < count($sundry_ids); $i++) - - - - - - @endfor - @endforeach - @else - - - - @endif - - -
    ORDERED SUNDRIES
    #SUNDRYQUANTITY
    {{ ++$count }} - {{ \Streamline\Models\Sundry::find($sundry_ids[$i])->name }} - - {{ $sundry_quantities[$i] }} -
    No sundry has been ordered.
    -
    - -
    -
    -
    -

    Advice

    -

    {{ $main_exam->advice }}

    -
    -
    -
    -

    {{ __('consultations.history') }}

    -

    {{ $main_exam->history_comments?? '' }}

    -
    -
    -

    Notes

    -

    {{ $main_exam->doctors_notes }}

    -
    -
    -
    -
    -

    Time :

    - {{ Form::time('time', \Carbon\Carbon::now(),['class' => 'form-control', 'readonly', 'data-error'=>'','id'=>'time_surgery_completed']) }} -
    - -
    -

    Outcome

    -
    -

    {{ $outcomes[$main_exam->outcome_id] }}

    -
    -
    outcome_id != 1) style="display: none" @endif> -
    - {{ Form::label('ward_id','Select the ward') }} -
    - {{ Form::select('ward_id', $wards, '', ['class' => 'form-control compulsory select']) }} -
    -
    - -
    - {{ Form::label('admitted_on','Admitted on') }} -
    - {{ Form::text('admitted_on',date('d-m-Y'),['class' => 'form-control datepicker-autoclose compulsory', 'readonly', 'id'=>'admitted_on']) }} - -
    -
    -
    - -
    outcome_id != 4) style="display: none" @endif> -
    - {{ Form::label('referral_id',__('consultations.referred_to')) }}

    {{ $referrals[ $main_exam->referred_to] }}

    -
    -
    - {{ Form::label('referral_notes', 'Referral Notes') }} -

    {{ $main_exam->referral_notes }}

    -
    -
    - -
    outcome_id != 3) style="display: none" @endif> -
    - {{ Form::label('followup_clinic_allocation', __('consultations.assigned_clinic')) }} - {{ Form::select('followup_clinic_allocation', $clinics, 0, ['class' => 'form-control col-sm-12 compulsory select']) }} -
    - -
    - {{ Form::label('followup_in_charge', __('consultations.assign_incharge')) }} - {{ $users[$main_exam->incharge_id]?? '' }} -
    - -
    - {{ Form::label('followup_when','Review Date') }} -
    - {{ Form::text('followup_when','',['class' => 'form-control compulsory datepicker-autoclose','readonly']) }} - -
    -
    - -
    - {{ Form::label('followup_in_time', __('consultations.appointment_time')) }} - {{ Form::time('followup_in_time','',['class' => 'form-control']) }} -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/menu.blade.php b/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/menu.blade.php deleted file mode 100644 index 26534ac2..00000000 --- a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/menu.blade.php +++ /dev/null @@ -1,28 +0,0 @@ -@php -$_episode_id = session()->get('episode_id'); - -$_base_exam = Streamline\Models\EyeClinicBaseExamRefraction::where(['episode_id' => $_episode_id])->first(); -$_main_exam = Streamline\Models\EyeClinicMainExam::where(['episode_id' => $_episode_id])->first(); -$_consultation = Streamline\Models\Consultation::where(['episode_id' => $_episode_id])->first(); -$_test = Streamline\Models\EyeClinicAdditionalTests::where(['episode_id' => $_episode_id])->first(); -$_strabismus = Streamline\Models\Strabismus::where(['episode_id' => $_episode_id])->first(); - -@endphp - - - diff --git a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/print_eye_clinic_report.blade.php b/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/print_eye_clinic_report.blade.php deleted file mode 100644 index b4259a7d..00000000 --- a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/print_eye_clinic_report.blade.php +++ /dev/null @@ -1,145 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Report - Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') - - - - - - - - - - - - - - - - - - - - - - - - - @foreach ($main_exams as $record) - - - - - - - - - - - - - - - @php - $right_eye_diagnoses = explode(",", $record->right_eye_diagnosis); - $left_eye_diagnoses = explode(",", $record->left_eye_diagnosis); - @endphp - - - @php - $procedures_id = explode(",", $record->procedure_id); - $procedures_eye = explode(",", $record->eye); - $left_eye_pro = []; - $right_eye_pro = []; - - for ($i = 0; $i < count($procedures_id); $i++) { - if (isset($procedures_eye[$i])) { - if ($procedures_eye[$i] == 0) { - $left_eye_pro[] = $procedures_id[$i] ?? ''; - } elseif ($procedures_eye[$i] == 1) { - $right_eye_pro[] = $procedures_id[$i] ?? ''; - } else { - $left_eye_pro[] = $procedures_id[$i] ?? ''; - $right_eye_pro[] = $procedures_id[$i] ?? ''; - } - } - } - @endphp - - - - @endforeach - -
    PatientAge / GenderDistrictSC vision right eyeSC vision left eyeCC vision right eyeCC vision left eyePH vision right eyePH vision left eyeIOP right eyeIOP left eyeCDR right eyeCDR left eyeDiagnosis right eyeDiagnosis left eyeProcedure right eyeProcedure left eye
    {{ $record->first_name }} {{ $record->last_name }}{{ get_patients_age($record->date_of_birth) }} / {{ $record->gender == 1 ? __('allergies.male') : __('allergies.female') }}{{ $districts[$record->district_id] ?? '' }}Near: {{ $record->visual_acuity_near_sc_right }}
    Distance: {{ $record->visual_acuity_distance_sc_right }}
    Near: {{ $record->visual_acuity_near_sc_left }}
    Distance: {{ $record->visual_acuity_distance_sc_left }}
    Near: {{ $record->visual_acuity_near_cc_right }}
    Distance: {{ $record->visual_acuity_distance_cc_right }}
    Near: {{ $record->visual_acuity_near_cc_left }}
    Distance: {{ $record->visual_acuity_distance_cc_left }}
    {{ $record->visual_acuity_distance_ph_right }}{{ $record->visual_acuity_distance_ph_left }}{{ $record->iop_right }}{{ $record->iop_left }}{{ $record->cdr_right }}{{ $record->cdr_left }} -
      - @foreach($right_eye_diagnoses as $diagnosis) -
    • {{ $diagnoses[$diagnosis] ?? '' }}
    • - @endforeach -
    -
    -
      - @foreach($left_eye_diagnoses as $diagnosis) -
    • {{ $diagnoses[$diagnosis] ?? '' }}
    • - @endforeach -
    -
    -
      - @foreach($right_eye_pro as $right_pro) -
    • {{ $procedures[$right_pro] ?? '' }}
    • - @endforeach -
    -
    -
      - @foreach($left_eye_pro as $left_pro) -
    • {{ $procedures[$left_pro] ?? '' }}
    • - @endforeach -
    -
    - - - @if (is_add_stamp_feature_enabled() && !empty($hospitalInfo->stamp)) - - - - - - -
    - {{ $hospitalInfo->name}} stamp -
    - @endif -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/strabismus_create.blade.php b/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/strabismus_create.blade.php deleted file mode 100644 index c382503f..00000000 --- a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/strabismus_create.blade.php +++ /dev/null @@ -1,810 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Strabismus

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    - -
    -
    -
    -
    -
    - @include('eye_clinic::eye_clinic.menu') - -
    -
    -
    -
    - Basic exam form -
    -
    -
    -
    -
    - additional test form -
    -
    -
    -
    -
    -
    - {{ Form::open(['route'=>'strabismus.store']) }} -
    -
    -
    -
    -
    - Method -
    -
    - {{ Form::text('_method', '', ['class' => 'form-control', 'id'=>'method']) }} -
    -
    -
    -
    -
    - {{ Form::checkbox('ortho', 'Ortho', false) }} Ortho   -
    -
    -
    -
    -
    - Correction -
    -
    - {{ Form::text('correction_sc', '', ['class' => 'form-control', 'id'=>'correction', 'placeholder'=>'SC']) }} -
    -
    - {{ Form::text('correction_cc', '', ['class' => 'form-control', 'id'=>'correction', 'placeholder'=>'CC']) }} -
    -
    -
    -
    -
    -
    -
    -
    - Fixing Eye -
    -
    - {{ Form::text('fixing_eye_right', '', ['class' => 'form-control', 'id'=>'fixing_eye', 'placeholder'=>'Right']) }} -
    -
    - {{ Form::text('fixing_eye_left', '', ['class' => 'form-control', 'id'=>'fixing_eye', 'placeholder'=>'Left']) }} -
    -
    -
    -
    - -
    -
    - Distance -
    -
    - Near -
    -
    - Near +3DS -
    -
    - Near Bifocals -
    -
    -
    -
    -
    -
    - {{ Form::text('distance_top_big', '', ['class' => 'form-control', 'id'=>'distance_big']) }} -
    -
    - {{ Form::text('distance_top_small', '', ['class' => 'form-control', 'id'=>'distance_small']) }} -
    -
    -
    -
    -
    -
    - {{ Form::text('near_top_big', '', ['class' => 'form-control', 'id'=>'near_big']) }} -
    -
    - {{ Form::text('near_top_small', '', ['class' => 'form-control', 'id'=>'near_small']) }} -
    -
    -
    -
    -
    -
    - {{ Form::text('near_top_3ds_big', '', ['class' => 'form-control', 'id'=>'near_3ds_big']) }} -
    -
    - {{ Form::text('near_top_3ds_small', '', ['class' => 'form-control', 'id'=>'near_3ds_small']) }} -
    -
    -
    -
    -
    -
    - {{ Form::text('near_top_bifocals_big', '', ['class' => 'form-control', 'id'=>'near_bifocals_big']) }} -
    -
    - {{ Form::text('near_top_bifocals_small', '', ['class' => 'form-control', 'id'=>'near_bifocals_small']) }} -
    -
    -
    -
    -
    -
    -
    -
    - {{ Form::text('distance_bottom_big', '', ['class' => 'form-control', 'id'=>'distance_big']) }} -
    -
    - {{ Form::text('distance_bottom_small', '', ['class' => 'form-control', 'id'=>'distance_small']) }} -
    -
    -
    -
    -
    -
    - {{ Form::text('near_bottom_big', '', ['class' => 'form-control', 'id'=>'near_big']) }} -
    -
    - {{ Form::text('near_bottom_small', '', ['class' => 'form-control', 'id'=>'near_small']) }} -
    -
    -
    -
    -
    -
    - {{ Form::text('near_bottom_3ds_big', '', ['class' => 'form-control', 'id'=>'near_3ds_big']) }} -
    -
    - {{ Form::text('near_bottom_3ds_small', '', ['class' => 'form-control', 'id'=>'near_3ds_small']) }} -
    -
    -
    -
    -
    -
    - {{ Form::text('near_bottom_bifocals_big', '', ['class' => 'form-control', 'id'=>'near_bifocals_big']) }} -
    -
    - {{ Form::text('near_bottom_bifocals_small', '', ['class' => 'form-control', 'id'=>'near_bifocals_small']) }} -
    -
    -
    -
    -
    -
    -
    - clear -
    -
    - nl -
    -
    - A pattern -
    -
    - V pattern -
    -
    -
    - -
    -
    -
    -
    Fusional Vergence
    -
    -
    -
    Convergence
    -
    -
    -
    Divergence
    -
    -
    -
    -
    -
    -
    - Distance -
    -
    - {{ Form::text('convergence_distance_right', '', ['class' => 'form-control', 'id'=>'distance_right', 'placeholder'=>'Right']) }} -
    -
    - {{ Form::text('convergence_distance_left', '', ['class' => 'form-control', 'id'=>'distance_left', 'placeholder'=>'Left']) }} -
    -
    -
    -
    - Near -
    -
    - {{ Form::text('convergence_near_right', '', ['class' => 'form-control', 'id'=>'near_right', 'placeholder'=>'Right']) }} -
    -
    - {{ Form::text('convergence_near_left', '', ['class' => 'form-control', 'id'=>'near_left', 'placeholder'=>'Left']) }} -
    -
    -
    - -
    -
    -
    - -
    -
    - {{ Form::text('divergence_distance_right', '', ['class' => 'form-control', 'id'=>'distance_right', 'placeholder'=>'Right']) }} -
    -
    - {{ Form::text('divergence_distance_left', '', ['class' => 'form-control', 'id'=>'distance_left', 'placeholder'=>'Left']) }} -
    -
    -
    -
    - -
    -
    - {{ Form::text('divergence_near_right', '', ['class' => 'form-control', 'id'=>'near_right', 'placeholder'=>'Right']) }} -
    -
    - {{ Form::text('divergence_near_left', '', ['class' => 'form-control', 'id'=>'near_left', 'placeholder'=>'Left']) }} -
    -
    -
    -
    -
    -
    - Near point of convergence -
    -
    - {{ Form::text('near_point_of_convergence', '', ['class' => 'form-control', 'id'=>'near_point_of_convergence']) }} -
    -
    -

    -
    - -

    - -
    -
    Accomodation
    -
    -
    -
    NPA
    -
    -
    -
    AA
    -
    -
    -
    -
    -
    -
    -   Right -
    -
    - {{ Form::text('npa_right', '', ['class' => 'form-control', 'id'=>'distance_right', 'placeholder'=>'NPA Right']) }} -
    -
    - {{ Form::text('aa_right', '', ['class' => 'form-control', 'id'=>'distance_left', 'placeholder'=>'AA Right']) }} -
    -
    -
    -
    -   Left -
    -
    - {{ Form::text('npa_left', '', ['class' => 'form-control', 'id'=>'near_right', 'placeholder'=>'NPA Left']) }} -
    -
    - {{ Form::text('aa_left', '', ['class' => 'form-control', 'id'=>'near_left', 'placeholder'=>'AA Left']) }} -
    -
    -
    -
    -   Both -
    -
    - {{ Form::text('npa_both', '', ['class' => 'form-control', 'id'=>'near_left', 'placeholder'=>'NPA Both']) }} -
    -
    - {{ Form::text('aa_both', '', ['class' => 'form-control', 'id'=>'aa_both', 'placeholder' => 'AA Both']) }} -
    -
    -
    -
    -
    -
    -
    - -
    - -
    - -
    -
    -
    -
    -
    - {{ Form::text('left_eye_drawing_big1', '', ['class' => 'form-control', 'id'=>'left_eye_drawing_big']) }} -
    -
    - {{ Form::text('left_eye_drawing_small1', '', ['class' => 'form-control', 'id'=>'left_eye_drawing_small']) }} -
    -
    - {{ Form::text('left_near_eye_box1', '', ['class' => 'form-control', 'id'=>'left_eye_drawing_small']) }} -
    - -
    - {{ Form::text('left_eye_drawing_big2', '', ['class' => 'form-control', 'id'=>'left_eye_drawing_big']) }} -
    -
    - {{ Form::text('left_eye_drawing_small2', '', ['class' => 'form-control', 'id'=>'left_eye_drawing_small']) }} -
    -
    -
    - -
    - {{ Form::text('left_eye_drawing_big3', '', ['class' => 'form-control', 'id'=>'left_eye_drawing_big']) }} -
    -
    - {{ Form::text('left_eye_drawing_small3', '', ['class' => 'form-control', 'id'=>'left_eye_drawing_small']) }} -
    -
    - {{ Form::text('left_near_eye_box2', '', ['class' => 'form-control', 'id'=>'left_eye_drawing_small']) }} -
    - -
    - {{ Form::text('left_eye_drawing_big4', '', ['class' => 'form-control', 'id'=>'left_eye_drawing_big']) }} -
    -
    - {{ Form::text('left_eye_drawing_small4', '', ['class' => 'form-control', 'id'=>'left_eye_drawing_small']) }} -
    -
    -
    - -
    - {{ Form::text('left_eye_drawing_big5', '', ['class' => 'form-control', 'id'=>'left_eye_drawing_big']) }} -
    -
    - {{ Form::text('left_eye_drawing_small5', '', ['class' => 'form-control', 'id'=>'left_eye_drawing_small']) }} -
    -
    - {{ Form::text('left_near_eye_box3', '', ['class' => 'form-control', 'id'=>'left_eye_drawing_small']) }} -
    - -
    - {{ Form::text('left_eye_drawing_big6', '', ['class' => 'form-control', 'id'=>'left_eye_drawing_big']) }} -
    -
    - {{ Form::text('left_eye_drawing_small6', '', ['class' => 'form-control', 'id'=>'left_eye_drawing_small']) }} -
    -
    -
    -
    -
    -
    - {{ Form::text('on_top_of_the_left_eye', '', ['class' => 'form-control']) }}
    - Your browser does not support the HTML5 canvas tag. - {{ Form::text('on_bottom_of_the_left_eye', '', ['class' => 'form-control','style'=>'width:50%;align--']) }} - {{ Form::text('left_dvd', '', ['class' => 'form-control','Placeholder' => 'DVD']) }} -
    -
    -
    -
    - {{ Form::text('right_eye_left_single_box1', '', ['class' => 'form-control']) }} -
    -
    - {{ Form::text('eyes_drawing_seperator_big1', '', ['class' => 'form-control', 'id'=>'eyes_drawing_seperator_big']) }} -
    -
    - {{ Form::text('eyes_drawing_seperator_small1', '', ['class' => 'form-control', 'id'=>'eyes_drawing_seperator_small']) }} -
    -
    -
    - {{ Form::text('eyes_drawing_seperator_big2', '', ['class' => 'form-control', 'id'=>'eyes_drawing_seperator_big']) }} -
    -
    - {{ Form::text('eyes_drawing_seperator_small2', '', ['class' => 'form-control', 'id'=>'eyes_drawing_seperator_small']) }} -
    -
    - -
    - {{ Form::text('right_eye_left_single_box2', '', ['class' => 'form-control']) }} -
    -
    - {{ Form::text('eyes_drawing_seperator_big3', '', ['class' => 'form-control', 'id'=>'eyes_drawing_seperator_big']) }} -
    -
    - {{ Form::text('eyes_drawing_seperator_small3', '', ['class' => 'form-control', 'id'=>'eyes_drawing_seperator_small']) }} -
    -
    -
    - {{ Form::text('eyes_drawing_seperator_big4', '', ['class' => 'form-control', 'id'=>'eyes_drawing_seperator_big']) }} -
    -
    - {{ Form::text('eyes_drawing_seperator_small4', '', ['class' => 'form-control', 'id'=>'left_eye_drawing_small']) }} -
    -
    - -
    - {{ Form::text('right_eye_left_single_box3', '', ['class' => 'form-control']) }} -
    -
    - {{ Form::text('eyes_drawing_seperator_big5', '', ['class' => 'form-control', 'id'=>'eyes_drawing_seperator_big']) }} -
    -
    - {{ Form::text('eyes_drawing_seperator_small5', '', ['class' => 'form-control', 'id'=>'left_eye_drawing_small']) }} -
    -
    -
    - {{ Form::text('eyes_drawing_seperator_big6', '', ['class' => 'form-control', 'id'=>'eyes_drawing_seperator_big']) }} -
    -
    - {{ Form::text('eyes_drawing_seperator_small6', '', ['class' => 'form-control', 'id'=>'left_eye_drawing_small']) }} -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    - {{ Form::text('left_eye_right_single_box1', '', ['class' => 'form-control']) }} -
    -
    -

    -
    - -
    - {{ Form::text('left_eye_right_single_box2', '', ['class' => 'form-control']) }} -
    -
    -

    -
    - -
    - {{ Form::text('left_eye_right_single_box3', '', ['class' => 'form-control']) }} -
    -
    -
    -
    -
    -
    - {{ Form::text('on_top_of_the_right_eye', '', ['class' => 'form-control']) }}
    - Your browser does not support the HTML5 canvas tag. - {{ Form::text('on_bottom_of_the_right_eye', '', ['class' => 'form-control']) }} - {{ Form::text('right_dvd', '', ['class' => 'form-control','Placeholder' => 'DVD']) }} -
    -
    -
    -
    - {{ Form::text('left_eye_left_single_box1', '', ['class' => 'form-control']) }} -
    -
    - {{ Form::text('right_eye_drawing_big1', '', ['class' => 'form-control', 'id'=>'left_eye_drawing_big']) }} -
    -
    - {{ Form::text('right_eye_drawing_small1', '', ['class' => 'form-control', 'id'=>'right_eye_drawing_small']) }} -
    - -
    -
    - {{ Form::text('right_eye_drawing_big2', '', ['class' => 'form-control', 'id'=>'right_eye_drawing_big']) }} -
    -
    - {{ Form::text('right_eye_drawing_small2', '', ['class' => 'form-control', 'id'=>'right_eye_drawing_small']) }} -
    -
    - -
    - {{ Form::text('left_eye_left_single_box2', '', ['class' => 'form-control']) }} -
    -
    - {{ Form::text('right_eye_drawing_big3', '', ['class' => 'form-control', 'id'=>'right_eye_drawing_big']) }} -
    -
    - {{ Form::text('right_eye_drawing_small3', '', ['class' => 'form-control', 'id'=>'right_eye_drawing_small']) }} -
    -
    -
    - {{ Form::text('right_eye_drawing_big4', '', ['class' => 'form-control', 'id'=>'right_eye_drawing_big']) }} -
    -
    - {{ Form::text('right_eye_drawing_small4', '', ['class' => 'form-control', 'id'=>'right_eye_drawing_small']) }} -
    -
    - -
    - {{ Form::text('left_eye_left_single_box3', '', ['class' => 'form-control']) }} -
    -
    - {{ Form::text('right_eye_drawing_big5', '', ['class' => 'form-control', 'id'=>'right_eye_drawing_big']) }} -
    -
    - {{ Form::text('right_eye_drawing_small5', '', ['class' => 'form-control', 'id'=>'right_eye_drawing_small']) }} -
    - -
    -
    - {{ Form::text('right_eye_drawing_big6', '', ['class' => 'form-control', 'id'=>'right_eye_drawing_big']) }} -
    -
    - {{ Form::text('right_eye_drawing_small6', '', ['class' => 'form-control', 'id'=>'right_eye_drawing_small']) }} -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    Right Head tilt
    -
    - {{ Form::text('right_head_tilt_top_big', '', ['class' => 'form-control', 'placeholder'=>'']) }} -
    -
    - {{ Form::text('right_head_tilt_top_small', '', ['class' => 'form-control', 'placeholder'=>'']) }} -
    -
    - {{ Form::text('right_head_tilt_bottom_big', '', ['class' => 'form-control', 'placeholder'=>'']) }} -
    -
    - {{ Form::text('right_head_tilt_bottom_small', '', ['class' => 'form-control', 'placeholder'=>'']) }} -
    -
    -
    -
    -
    -
    Left Head tilt
    -
    - {{ Form::text('left_head_tilt_top_big', '', ['class' => 'form-control', 'placeholder'=>'']) }} -
    -
    - {{ Form::text('left_head_tilt_top_small', '', ['class' => 'form-control', 'placeholder'=>'']) }} -
    -
    - {{ Form::text('left_head_tilt_bottom_big', '', ['class' => 'form-control', 'placeholder'=>'']) }} -
    -
    - {{ Form::text('left_head_tilt_bottom_small', '', ['class' => 'form-control', 'placeholder'=>'']) }} -
    -
    -
    -
    -
    -
    -
    - {{ Form::checkbox('nystagmus', 'nystagmus', false) }} Nystagmus   -
    -
    - {{ Form::checkbox('abnormal_head_position', 'abnormal_head_position', false) }} Abnormal head position   -
    -
    -
    -
    -
    - {{ Form::text('next_to_nystagmus', '', ['class' => 'form-control', 'placeholder'=>'']) }} - {{ Form::text('next_to_abnormal_head_position', '', ['class' => 'form-control', 'placeholder'=>'']) }} -
    -
    -
    - -
    - -
    -
    -
    Stereo
    -
    -
    - Fly -
    -
    - {{ Form::text('fly_positive', '', ['class' => 'form-control', 'id'=>'fly_positive', 'placeholder'=>'+']) }} -
    -
    - {{ Form::text('fly_negative', '', ['class' => 'form-control', 'id'=>'fly_negative', 'placeholder'=>'-']) }} -
    -
    - {{ Form::checkbox('unable', 'unable', false) }} Unable   -
    -
    -
    -
    - Animals -
    -
    - {{ Form::text('animals', '', ['class' => 'form-control', 'placeholder'=>'']) }} -
    -
    -
    -
    -
    -
    - Circles -
    -
    - {{ Form::text('circles', '', ['class' => 'form-control', 'placeholder'=>'']) }} -
    -
    -
    -
    Lang
    - {{ Form::text('lang', '', ['class' => 'form-control', 'placeholder'=>'Lang']) }} -
    -
    -
    -
    -
    Bruckner
    - {{ Form::text('bruckner', '', ['class' => 'form-control', 'placeholder'=>'']) }} -
    Induced Tropia
    - {{ Form::text('induced_tropia', '', ['class' => 'form-control', 'placeholder'=>'']) }} -
    -
    -
    Angle Kappa
    - {{ Form::text('angle_toppa', '', ['class' => 'form-control', 'placeholder'=>'']) }} -
    Bagolini lens
    - {{ Form::text('bagolini_lens', '', ['class' => 'form-control', 'placeholder'=>'']) }} -
    -
    -
    -
    Double maddox rod
    -
    -
    - Right -
    -
    - {{ Form::text('double_maddox_right_small', '', ['class' => 'form-control', 'id'=>'double_maddox_right_small', 'placeholder'=>'']) }} -
    -
    - {{ Form::text('double_maddox_right_big', '', ['class' => 'form-control', 'id'=>'double_maddox_right_big', 'placeholder'=>'']) }} -
    -
    -
    -
    - Left -
    -
    - {{ Form::text('double_maddox_left_small', '', ['class' => 'form-control', 'id'=>'double_maddox_left_small', 'placeholder'=>'']) }} -
    -
    - {{ Form::text('double_maddox_right_big', '', ['class' => 'form-control', 'id'=>'double_maddox_left_big', 'placeholder'=>'']) }} -
    -
    -
    -
    - -

    - -
    -
    -
    Worth 4 Dot
    -
    -
    - Distance -
    -
    - {{ Form::text('worth_4_dot_distance', '', ['class' => 'form-control', 'placeholder'=>'']) }} -
    -
    -
    -
    - Near -
    -
    - {{ Form::text('worth_4_dot_near', '', ['class' => 'form-control', 'placeholder'=>'']) }} -
    -
    -
    -
    -
    -
    {{ Form::submit('Submit',['class'=>'btn btn-success btn-lg']) }}
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -@endsection - - -@push('scripts') - -@endpush - - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/strabismus_details.blade.php b/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/strabismus_details.blade.php deleted file mode 100644 index d52c2439..00000000 --- a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/strabismus_details.blade.php +++ /dev/null @@ -1,811 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Strabismus

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    - -
    -
    -
    -
    -
    - @include('eye_clinic::eye_clinic.menu') - -
    -
    -
    -
    - Basic exam form -
    -
    -
    -
    -
    - additional test form -
    -
    -
    -
    -

    Recorded on {{ streamline_date_time($strabismus->created_at) }}

    -
    -
    -
    -
    -
    -
    -
    -
    - Method -
    -
    - {{ Form::text('method', $strabismus->method, ['class' => 'form-control', 'id'=>'method', 'readonly']) }} -
    -
    -
    -
    -
    - {{ Form::checkbox('ortho', true, $strabismus->ortho, ['disabled']) }} Ortho   -
    -
    -
    -
    -
    - Correction -
    -
    - {{ Form::text('correction_sc', $strabismus->correction_sc, ['class' => 'form-control', 'id'=>'correction', 'placeholder'=>'SC','readonly']) }} -
    -
    - {{ Form::text('correction_cc', $strabismus->correction_cc, ['class' => 'form-control', 'id'=>'correction', 'placeholder'=>'CC','readonly']) }} -
    -
    -
    -
    -
    -
    -
    -
    - Fixing Eye -
    -
    - {{ Form::text('fixing_eye_right', $strabismus->fixing_eye_right, ['class' => 'form-control', 'id'=>'fixing_eye', 'placeholder'=>'Right','readonly']) }} -
    -
    - {{ Form::text('fixing_eye_left', $strabismus->fixing_eye_left, ['class' => 'form-control', 'id'=>'fixing_eye', 'placeholder'=>'Left','readonly']) }} -
    -
    -
    -
    - -
    -
    - Distance -
    -
    - Near -
    -
    - Near +3DS -
    -
    - Near Bifocals -
    -
    -
    -
    -
    -
    - {{ Form::text('distance_top_big', $strabismus->distance_top_big, ['class' => 'form-control', 'id'=>'distance_big','readonly']) }} -
    -
    - {{ Form::text('distance_top_small', $strabismus->distance_top_small, ['class' => 'form-control', 'id'=>'distance_small','readonly']) }} -
    -
    -
    -
    -
    -
    - {{ Form::text('near_top_big', $strabismus->near_top_big, ['class' => 'form-control', 'id'=>'near_big','readonly']) }} -
    -
    - {{ Form::text('near_top_small', $strabismus->near_top_small, ['class' => 'form-control', 'id'=>'near_small','readonly']) }} -
    -
    -
    -
    -
    -
    - {{ Form::text('near_top_3ds_big', $strabismus->near_top_3ds_big, ['class' => 'form-control', 'id'=>'near_3ds_big','readonly']) }} -
    -
    - {{ Form::text('near_top_3ds_small', $strabismus->near_top_3ds_small, ['class' => 'form-control', 'id'=>'near_3ds_small','readonly']) }} -
    -
    -
    -
    -
    -
    - {{ Form::text('near_top_bifocals_big', $strabismus->near_top_bifocals_big, ['class' => 'form-control', 'id'=>'near_bifocals_big','readonly']) }} -
    -
    - {{ Form::text('near_top_bifocals_small', $strabismus->near_top_bifocals_small, ['class' => 'form-control', 'id'=>'near_bifocals_small','readonly']) }} -
    -
    -
    -
    -
    -
    -
    -
    - {{ Form::text('distance_bottom_big', $strabismus->distance_bottom_big, ['class' => 'form-control', 'id'=>'distance_big','readonly']) }} -
    -
    - {{ Form::text('distance_bottom_small', $strabismus->distance_bottom_small, ['class' => 'form-control', 'id'=>'distance_small','readonly']) }} -
    -
    -
    -
    -
    -
    - {{ Form::text('near_bottom_big', $strabismus->near_bottom_big, ['class' => 'form-control', 'id'=>'near_big','readonly']) }} -
    -
    - {{ Form::text('near_bottom_small', $strabismus->near_bottom_small, ['class' => 'form-control', 'id'=>'near_small','readonly']) }} -
    -
    -
    -
    -
    -
    - {{ Form::text('near_bottom_3ds_big', $strabismus->near_bottom_3ds_big, ['class' => 'form-control', 'id'=>'near_3ds_big','readonly']) }} -
    -
    - {{ Form::text('near_bottom_3ds_small', $strabismus->near_bottom_3ds_small, ['class' => 'form-control', 'id'=>'near_3ds_small','readonly']) }} -
    -
    -
    -
    -
    -
    - {{ Form::text('near_bottom_bifocals_big', $strabismus->near_bottom_bifocals_big, ['class' => 'form-control', 'id'=>'near_bifocals_big','readonly']) }} -
    -
    - {{ Form::text('near_bottom_bifocals_small', $strabismus->near_bottom_bifocals_small, ['class' => 'form-control', 'id'=>'near_bifocals_small','readonly']) }} -
    -
    -
    -
    -
    -
    -
    - clear -
    -
    - nl -
    -
    - A pattern -
    -
    - V pattern -
    -
    -
    - -
    -
    -
    -
    Fusional Vergence
    -
    -
    -
    Convergence
    -
    -
    -
    Divergence
    -
    -
    -
    -
    -
    -
    - Distance -
    -
    - {{ Form::text('convergence_distance_right', $strabismus->convergence_distance_right, ['class' => 'form-control', 'id'=>'distance_right', 'placeholder'=>'Right','readonly']) }} -
    -
    - {{ Form::text('convergence_distance_left', $strabismus->convergence_distance_left, ['class' => 'form-control', 'id'=>'distance_left', 'placeholder'=>'Left','readonly']) }} -
    -
    -
    -
    - Near -
    -
    - {{ Form::text('convergence_near_right', $strabismus->convergence_near_right, ['class' => 'form-control', 'id'=>'near_right', 'placeholder'=>'Right','readonly']) }} -
    -
    - {{ Form::text('convergence_near_left', $strabismus->convergence_near_left, ['class' => 'form-control', 'id'=>'near_left', 'placeholder'=>'Left','readonly']) }} -
    -
    -
    - -
    -
    -
    - -
    -
    - {{ Form::text('divergence_distance_right', $strabismus->divergence_distance_right, ['class' => 'form-control', 'id'=>'distance_right', 'placeholder'=>'Right','readonly']) }} -
    -
    - {{ Form::text('divergence_distance_left', $strabismus->divergence_distance_left, ['class' => 'form-control', 'id'=>'distance_left', 'placeholder'=>'Left','readonly']) }} -
    -
    -
    -
    - -
    -
    - {{ Form::text('divergence_near_right', $strabismus->divergence_near_right, ['class' => 'form-control', 'id'=>'near_right', 'placeholder'=>'Right','readonly']) }} -
    -
    - {{ Form::text('divergence_near_left', $strabismus->divergence_near_left, ['class' => 'form-control', 'id'=>'near_left', 'placeholder'=>'Left','readonly']) }} -
    -
    -
    -
    -
    -
    - Near point of convergence -
    -
    - {{ Form::text('near_point_of_convergence', $strabismus->near_point_of_convergence, ['class' => 'form-control', 'id'=>'near_point_of_convergence','readonly']) }} -
    -
    -

    -
    - -

    - -
    -
    Accomodation
    -
    -
    -
    NPA
    -
    -
    -
    AA
    -
    -
    -
    -
    -
    -
    -   Right -
    -
    - {{ Form::text('npa_right', $strabismus->npa_right, ['class' => 'form-control', 'id'=>'distance_right', 'placeholder'=>'NPA Right','readonly']) }} -
    -
    - {{ Form::text('aa_right', $strabismus->aa_right, ['class' => 'form-control', 'id'=>'distance_left', 'placeholder'=>'AA Right','readonly']) }} -
    -
    -
    -
    -   Left -
    -
    - {{ Form::text('npa_left', $strabismus->npa_left, ['class' => 'form-control', 'id'=>'near_right', 'placeholder'=>'NPA Left','readonly']) }} -
    -
    - {{ Form::text('aa_left', $strabismus->aa_left, ['class' => 'form-control', 'id'=>'near_left', 'placeholder'=>'AA Left','readonly']) }} -
    -
    -
    -
    -   Both -
    -
    - {{ Form::text('npa_both', $strabismus->npa_both, ['class' => 'form-control', 'id'=>'near_left', 'placeholder'=>'NPA Both','readonly']) }} -
    -
    - {{ Form::text('aa_both', $strabismus->aa_both, ['class' => 'form-control', 'id'=>'aa_both', 'placeholder' => 'AA Both','readonly']) }} -
    -
    -
    -
    -
    -
    -
    - -
    - -
    - -
    -
    -
    -
    -
    - {{ Form::text('left_eye_drawing_big1', $strabismus->left_eye_drawing_big1, ['class' => 'form-control', 'id'=>'left_eye_drawing_big','readonly']) }} -
    -
    - {{ Form::text('left_eye_drawing_small1', $strabismus->left_eye_drawing_small1, ['class' => 'form-control', 'id'=>'left_eye_drawing_small','readonly']) }} -
    -
    - {{ Form::text('left_near_eye_box1', $strabismus->left_near_eye_box1, ['class' => 'form-control', 'id'=>'left_eye_drawing_small','readonly']) }} -
    - -
    - {{ Form::text('left_eye_drawing_big2', $strabismus->left_eye_drawing_big2, ['class' => 'form-control', 'id'=>'left_eye_drawing_big','readonly']) }} -
    -
    - {{ Form::text('left_eye_drawing_small2', $strabismus->left_eye_drawing_small2, ['class' => 'form-control', 'id'=>'left_eye_drawing_small','readonly']) }} -
    -
    -
    - -
    - {{ Form::text('left_eye_drawing_big3', $strabismus->left_eye_drawing_big3, ['class' => 'form-control', 'id'=>'left_eye_drawing_big','readonly']) }} -
    -
    - {{ Form::text('left_eye_drawing_small3', $strabismus->left_eye_drawing_small3, ['class' => 'form-control', 'id'=>'left_eye_drawing_small','readonly']) }} -
    -
    - {{ Form::text('left_near_eye_box2', $strabismus->left_near_eye_box2, ['class' => 'form-control', 'id'=>'left_eye_drawing_small','readonly']) }} -
    - -
    - {{ Form::text('left_eye_drawing_big4', $strabismus->left_eye_drawing_big4, ['class' => 'form-control', 'id'=>'left_eye_drawing_big','readonly']) }} -
    -
    - {{ Form::text('left_eye_drawing_small4', $strabismus->left_eye_drawing_small4, ['class' => 'form-control', 'id'=>'left_eye_drawing_small','readonly']) }} -
    -
    -
    - -
    - {{ Form::text('left_eye_drawing_big5', $strabismus->left_eye_drawing_big5, ['class' => 'form-control', 'id'=>'left_eye_drawing_big','readonly']) }} -
    -
    - {{ Form::text('left_eye_drawing_small5', $strabismus->left_eye_drawing_small5, ['class' => 'form-control', 'id'=>'left_eye_drawing_small','readonly']) }} -
    -
    - {{ Form::text('left_near_eye_box3', $strabismus->left_near_eye_box3, ['class' => 'form-control', 'id'=>'left_eye_drawing_small','readonly']) }} -
    - -
    - {{ Form::text('left_eye_drawing_big6', $strabismus->left_eye_drawing_big6, ['class' => 'form-control', 'id'=>'left_eye_drawing_big','readonly']) }} -
    -
    - {{ Form::text('left_eye_drawing_small6', $strabismus->left_eye_drawing_small6, ['class' => 'form-control', 'id'=>'left_eye_drawing_small','readonly']) }} -
    -
    -
    -
    -
    -
    - {{ Form::text('on_top_of_the_left_eye', $strabismus->on_top_of_the_left_eye, ['class' => 'form-control','readonly']) }}
    - Your browser does not support the HTML5 canvas tag. - {{ Form::text('on_bottom_of_the_left_eye', $strabismus->on_bottom_of_the_left_eye, ['class' => 'form-control','readonly']) }} - {{ Form::text('left_dvd', $strabismus->left_dvd, ['class' => 'form-control','Placeholder' => 'DVD','readonly']) }} -
    -
    -
    -
    - {{ Form::text('right_eye_left_single_box1', $strabismus->right_eye_left_single_box1, ['class' => 'form-control','readonly']) }} -
    -
    - {{ Form::text('eyes_drawing_seperator_big1', $strabismus->eyes_drawing_seperator_big1, ['class' => 'form-control', 'id'=>'eyes_drawing_seperator_big','readonly']) }} -
    -
    - {{ Form::text('eyes_drawing_seperator_small1', $strabismus->eyes_drawing_seperator_small1, ['class' => 'form-control', 'id'=>'eyes_drawing_seperator_small','readonly']) }} -
    -
    -
    - {{ Form::text('eyes_drawing_seperator_big2', $strabismus->eyes_drawing_seperator_big2, ['class' => 'form-control', 'id'=>'eyes_drawing_seperator_big','readonly']) }} -
    -
    - {{ Form::text('eyes_drawing_seperator_small2', $strabismus->eyes_drawing_seperator_small2, ['class' => 'form-control', 'id'=>'eyes_drawing_seperator_small','readonly']) }} -
    -
    - -
    - {{ Form::text('right_eye_left_single_box2', $strabismus->right_eye_left_single_box2, ['class' => 'form-control','readonly']) }} -
    -
    - {{ Form::text('eyes_drawing_seperator_big3', $strabismus->eyes_drawing_seperator_big3, ['class' => 'form-control', 'id'=>'eyes_drawing_seperator_big','readonly']) }} -
    -
    - {{ Form::text('eyes_drawing_seperator_small3', $strabismus->eyes_drawing_seperator_small3, ['class' => 'form-control', 'id'=>'eyes_drawing_seperator_small','readonly']) }} -
    -
    -
    - {{ Form::text('eyes_drawing_seperator_big4', $strabismus->eyes_drawing_seperator_big4, ['class' => 'form-control', 'id'=>'eyes_drawing_seperator_big','readonly']) }} -
    -
    - {{ Form::text('eyes_drawing_seperator_small4', $strabismus->eyes_drawing_seperator_small4, ['class' => 'form-control', 'id'=>'left_eye_drawing_small','readonly']) }} -
    -
    - -
    - {{ Form::text('right_eye_left_single_box3', $strabismus->right_eye_left_single_box3, ['class' => 'form-control','readonly']) }} -
    -
    - {{ Form::text('eyes_drawing_seperator_big5', $strabismus->eyes_drawing_seperator_big5, ['class' => 'form-control', 'id'=>'eyes_drawing_seperator_big','readonly']) }} -
    -
    - {{ Form::text('eyes_drawing_seperator_small5', $strabismus->eyes_drawing_seperator_small5, ['class' => 'form-control', 'id'=>'left_eye_drawing_small','readonly']) }} -
    -
    -
    - {{ Form::text('eyes_drawing_seperator_big6', $strabismus->eyes_drawing_seperator_big6, ['class' => 'form-control', 'id'=>'eyes_drawing_seperator_big','readonly']) }} -
    -
    - {{ Form::text('eyes_drawing_seperator_small6', $strabismus->eyes_drawing_seperator_small6, ['class' => 'form-control', 'id'=>'left_eye_drawing_small','readonly']) }} -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    - {{ Form::text('left_eye_right_single_box1', $strabismus->left_eye_right_single_box1, ['class' => 'form-control','readonly']) }} -
    -
    -

    -
    - -
    - {{ Form::text('left_eye_right_single_box2', $strabismus->left_eye_right_single_box2, ['class' => 'form-control','readonly']) }} -
    -
    -

    -
    - -
    - {{ Form::text('left_eye_right_single_box3', $strabismus->left_eye_right_single_box3, ['class' => 'form-control','readonly']) }} -
    -
    -
    -
    -
    -
    - {{ Form::text('on_top_of_the_right_eye', $strabismus->on_top_of_the_right_eye, ['class' => 'form-control','readonly']) }}
    - Your browser does not support the HTML5 canvas tag. - {{ Form::text('on_bottom_of_the_right_eye', $strabismus->on_bottom_of_the_right_eye, ['class' => 'form-control','readonly']) }} - {{ Form::text('right_dvd', $strabismus->right_dvd, ['class' => 'form-control','Placeholder' => 'DVD','readonly']) }} -
    -
    -
    -
    - {{ Form::text('left_eye_left_single_box1', $strabismus->left_eye_left_single_box1, ['class' => 'form-control','readonly']) }} -
    -
    - {{ Form::text('right_eye_drawing_big1', $strabismus->right_eye_drawing_big1, ['class' => 'form-control', 'id'=>'left_eye_drawing_big','readonly']) }} -
    -
    - {{ Form::text('right_eye_drawing_small1', $strabismus->right_eye_drawing_small1, ['class' => 'form-control', 'id'=>'right_eye_drawing_small','readonly']) }} -
    - -
    -
    - {{ Form::text('right_eye_drawing_big2', $strabismus->right_eye_drawing_big2, ['class' => 'form-control', 'id'=>'right_eye_drawing_big','readonly']) }} -
    -
    - {{ Form::text('right_eye_drawing_small2', $strabismus->right_eye_drawing_small2, ['class' => 'form-control', 'id'=>'right_eye_drawing_small','readonly']) }} -
    -
    - -
    - {{ Form::text('left_eye_left_single_box2', $strabismus->left_eye_left_single_box2, ['class' => 'form-control','readonly']) }} -
    -
    - {{ Form::text('right_eye_drawing_big3', $strabismus->right_eye_drawing_big3, ['class' => 'form-control', 'id'=>'right_eye_drawing_big','readonly']) }} -
    -
    - {{ Form::text('right_eye_drawing_small3', $strabismus->right_eye_drawing_small3, ['class' => 'form-control', 'id'=>'right_eye_drawing_small','readonly']) }} -
    -
    -
    - {{ Form::text('right_eye_drawing_big4', $strabismus->right_eye_drawing_big4, ['class' => 'form-control', 'id'=>'right_eye_drawing_big','readonly']) }} -
    -
    - {{ Form::text('right_eye_drawing_small4', $strabismus->right_eye_drawing_small4, ['class' => 'form-control', 'id'=>'right_eye_drawing_small','readonly']) }} -
    -
    - -
    - {{ Form::text('left_eye_left_single_box3', $strabismus->left_eye_left_single_box3, ['class' => 'form-control','readonly']) }} -
    -
    - {{ Form::text('right_eye_drawing_big5', $strabismus->right_eye_drawing_big5, ['class' => 'form-control', 'id'=>'right_eye_drawing_big','readonly']) }} -
    -
    - {{ Form::text('right_eye_drawing_small5', $strabismus->right_eye_drawing_small5, ['class' => 'form-control', 'id'=>'right_eye_drawing_small','readonly']) }} -
    - -
    -
    - {{ Form::text('right_eye_drawing_big6', $strabismus->right_eye_drawing_big6, ['class' => 'form-control', 'id'=>'right_eye_drawing_big','readonly']) }} -
    -
    - {{ Form::text('right_eye_drawing_small6', $strabismus->right_eye_drawing_small6, ['class' => 'form-control', 'id'=>'right_eye_drawing_small','readonly']) }} -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    Right Head tilt
    -
    - {{ Form::text('right_head_tilt_top_big', $strabismus->right_head_tilt_top_big, ['class' => 'form-control', 'placeholder'=>'','readonly']) }} -
    -
    - {{ Form::text('right_head_tilt_top_small', $strabismus->right_head_tilt_top_small, ['class' => 'form-control', 'placeholder'=>'','readonly']) }} -
    -
    - {{ Form::text('right_head_tilt_bottom_big', $strabismus->right_head_tilt_bottom_big, ['class' => 'form-control', 'placeholder'=>'','readonly']) }} -
    -
    - {{ Form::text('right_head_tilt_bottom_small', $strabismus->right_head_tilt_bottom_small, ['class' => 'form-control', 'placeholder'=>'','readonly']) }} -
    -
    -
    -
    -
    -
    Left Head tilt
    -
    - {{ Form::text('left_head_tilt_top_big', $strabismus->left_head_tilt_top_big, ['class' => 'form-control', 'placeholder'=>'','readonly']) }} -
    -
    - {{ Form::text('left_head_tilt_top_small', $strabismus->left_head_tilt_top_small, ['class' => 'form-control', 'placeholder'=>'','readonly']) }} -
    -
    - {{ Form::text('left_head_tilt_bottom_big', $strabismus->left_head_tilt_bottom_big, ['class' => 'form-control', 'placeholder'=>'','readonly']) }} -
    -
    - {{ Form::text('left_head_tilt_bottom_small', $strabismus->left_head_tilt_bottom_small, ['class' => 'form-control', 'placeholder'=>'','readonly']) }} -
    -
    -
    -
    -
    -
    -
    - {{ Form::checkbox('nystagmus', 'nystagmus', false) }} Nystagmus   -
    -
    - {{ Form::checkbox('abnormal_head_position', 'abnormal_head_position', false) }} Abnormal head position   -
    -
    -
    -
    -
    - {{ Form::text('next_to_nystagmus', $strabismus->next_to_nystagmus, ['class' => 'form-control', 'placeholder'=>'','readonly']) }} - {{ Form::text('next_to_abnormal_head_position', $strabismus->next_to_abnormal_head_position, ['class' => 'form-control', 'placeholder'=>'','readonly']) }} -
    -
    -
    - -
    - -
    -
    -
    Stereo
    -
    -
    - Fly -
    -
    - {{ Form::text('fly_positive', $strabismus->fly_positive, ['class' => 'form-control', 'id'=>'fly_positive', 'placeholder'=>'+','readonly']) }} -
    -
    - {{ Form::text('fly_negative', $strabismus->fly_negative, ['class' => 'form-control', 'id'=>'fly_negative', 'placeholder'=>'-','readonly']) }} -
    -
    - {{ Form::checkbox('unable', 'unable', false) }} Unable   -
    -
    -
    -
    - Animals -
    -
    - {{ Form::text('animals', $strabismus->animals, ['class' => 'form-control', 'placeholder'=>'','readonly']) }} -
    -
    -
    -
    -
    -
    - Circles -
    -
    - {{ Form::text('circles', $strabismus->circles, ['class' => 'form-control', 'placeholder'=>'','readonly']) }} -
    -
    -
    -
    Lang
    - {{ Form::text('lang', $strabismus->lang, ['class' => 'form-control', 'placeholder'=>'Lang','readonly']) }} -
    -
    -
    -
    -
    Bruckner
    - {{ Form::text('bruckner', $strabismus->bruckner, ['class' => 'form-control', 'placeholder'=>'','readonly']) }} -
    Induced Tropia
    - {{ Form::text('induced_tropia', $strabismus->induced_tropia, ['class' => 'form-control', 'placeholder'=>'','readonly']) }} -
    -
    -
    Angle Kappa
    - {{ Form::text('angle_toppa', $strabismus->angle_toppa, ['class' => 'form-control', 'placeholder'=>'','readonly']) }} -
    Bagolini lens
    - {{ Form::text('bagolini_lens', $strabismus->bagolini_lens, ['class' => 'form-control', 'placeholder'=>'','readonly']) }} -
    -
    -
    -
    Double maddox rod
    -
    -
    - Right -
    -
    - {{ Form::text('double_maddox_right_small', $strabismus->double_maddox_right_small, ['class' => 'form-control', 'id'=>'double_maddox_right_small', 'placeholder'=>'','readonly']) }} -
    -
    - {{ Form::text('double_maddox_right_big', $strabismus->double_maddox_right_big, ['class' => 'form-control', 'id'=>'double_maddox_right_big', 'placeholder'=>'','readonly']) }} -
    -
    -
    -
    - Left -
    -
    - {{ Form::text('double_maddox_left_small', $strabismus->double_maddox_left_small, ['class' => 'form-control', 'id'=>'double_maddox_left_small', 'placeholder'=>'','readonly']) }} -
    -
    - {{ Form::text('double_maddox_right_big', $strabismus->double_maddox_right_big, ['class' => 'form-control', 'id'=>'double_maddox_left_big', 'placeholder'=>'','readonly']) }} -
    -
    -
    -
    - -

    - -
    -
    -
    Worth 4 Dot
    -
    -
    - Distance -
    -
    - {{ Form::text('worth_4_dot_distance', $strabismus->worth_4_dot_distance, ['class' => 'form-control', 'placeholder'=>'','readonly']) }} -
    -
    -
    -
    - Near -
    -
    - {{ Form::text('worth_4_dot_near', $strabismus->worth_4_dot_near, ['class' => 'form-control', 'placeholder'=>'','readonly']) }} -
    -
    -
    -

    -
    -
    {{ Form::button('Alter',['class'=>'btn btn-warning btn-lg']) }}
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -@endsection - - -@push('scripts') - -@endpush - - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/view_eye_clinic_report.blade.php b/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/view_eye_clinic_report.blade.php deleted file mode 100644 index 67ec029f..00000000 --- a/docker/statistics/Modules/EyeClinic/Resources/views/eye_clinic/view_eye_clinic_report.blade.php +++ /dev/null @@ -1,187 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    Eye Clinic Report

    -
    -
    - -
    -
    - -
    - {{ Form::open(['method'=>'post','route' => 'memorised_reports.view_eye_clinic_report']) }} - -
    -
    -
    - {{ Form::label('start_date', 'Start Date') }} - {{ Form::text('start_date', '', ['class'=>'form-control compulsory', 'readonly', 'id'=>'start_date']) }} -
    -
    - -
    -
    - {{ Form::label('end_date', __('pharmacy.end_date')) }} - {{ Form::text('end_date', '', ['class'=>'form-control compulsory', 'readonly', 'id'=>'end_date']) }} -
    -
    - -
    -
    - {{ Form::submit(__('investigations.search'), ['class'=>'btn btn-success pull-right']) }} -
    -
    -
    - {{ Form::close() }} -
    - -
    -

    Search between {{ streamline_date($start_date) }} and {{ streamline_date($end_date) }}

    -

    - Print PDF -

    -
    - - - - - - - - - - - - - - - - - - - - - - - - @foreach ($main_exams as $record) - - - - - - - - - - - - - - - @php - $right_eye_diagnoses = explode(",", $record->right_eye_diagnosis); - $left_eye_diagnoses = explode(",", $record->left_eye_diagnosis); - @endphp - - - @php - $procedures_id = explode(",", $record->procedure_id); - $procedures_eye = explode(",", $record->eye); - $left_eye_pro = []; - $right_eye_pro = []; - - for ($i = 0; $i < count($procedures_id); $i++) { - if (isset($procedures_eye[$i])) { - if ($procedures_eye[$i] == 0) { - $left_eye_pro[] = $procedures_id[$i] ?? ''; - } elseif ($procedures_eye[$i] == 1) { - $right_eye_pro[] = $procedures_id[$i] ?? ''; - } else { - $left_eye_pro[] = $procedures_id[$i] ?? ''; - $right_eye_pro[] = $procedures_id[$i] ?? ''; - } - } - } - @endphp - - - - @endforeach - -
    PatientAge / GenderDistrictSC vision right eyeSC vision left eyeCC vision right eyeCC vision left eyePH vision right eyePH vision left eyeIOP right eyeIOP left eyeCDR right eyeCDR left eyeDiagnosis right eyeDiagnosis left eyeProcedure right eyeProcedure left eye
    {{ $record->first_name }} {{ $record->last_name }}{{ get_patients_age($record->date_of_birth) }} / {{ $record->gender == 1 ? __('allergies.male') : __('allergies.female') }}{{ $districts[$record->district_id] ?? '' }}Near: {{ $record->visual_acuity_near_sc_right }}
    Distance: {{ $record->visual_acuity_distance_sc_right }}
    Near: {{ $record->visual_acuity_near_sc_left }}
    Distance: {{ $record->visual_acuity_distance_sc_left }}
    Near: {{ $record->visual_acuity_near_cc_right }}
    Distance: {{ $record->visual_acuity_distance_cc_right }}
    Near: {{ $record->visual_acuity_near_cc_left }}
    Distance: {{ $record->visual_acuity_distance_cc_left }}
    {{ $record->visual_acuity_distance_ph_right }}{{ $record->visual_acuity_distance_ph_left }}{{ $record->iop_right }}{{ $record->iop_left }}{{ $record->cdr_right }}{{ $record->cdr_left }} -
      - @foreach($right_eye_diagnoses as $diagnosis) -
    • {{ $diagnoses[$diagnosis] ?? '' }}
    • - @endforeach -
    -
    -
      - @foreach($left_eye_diagnoses as $diagnosis) -
    • {{ $diagnoses[$diagnosis] ?? '' }}
    • - @endforeach -
    -
    -
      - @foreach($right_eye_pro as $right_pro) -
    • {{ $procedures[$right_pro] ?? '' }}
    • - @endforeach -
    -
    -
      - @foreach($left_eye_pro as $left_pro) -
    • {{ $procedures[$left_pro] ?? '' }}
    • - @endforeach -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/EyeClinic/Routes/api.php b/docker/statistics/Modules/EyeClinic/Routes/api.php deleted file mode 100644 index 1883fe98..00000000 --- a/docker/statistics/Modules/EyeClinic/Routes/api.php +++ /dev/null @@ -1,18 +0,0 @@ -get('/eye_clinic', function () { - return "Eye Clinic"; -}); diff --git a/docker/statistics/Modules/EyeClinic/Routes/web.php b/docker/statistics/Modules/EyeClinic/Routes/web.php deleted file mode 100644 index e500e075..00000000 --- a/docker/statistics/Modules/EyeClinic/Routes/web.php +++ /dev/null @@ -1,23 +0,0 @@ - ['auth', 'disablebackbutton', 'user-locale','subscription-tracking', 'password-expiry']], function () { - /* Eye Clinic */ - Route::any('/eye_clinic/base_exam_refraction', 'EyeClinicController@base_exam_refraction')->name('eye_clinic.base_exam_refraction'); - Route::any('/eye_clinic/edit_base_exam_refraction', 'EyeClinicController@edit_base_exam_refraction')->name('eye_clinic.edit_base_exam_refraction'); - Route::any('/eye_clinic/save_base_exam_refraction', 'EyeClinicController@save_base_exam_refraction')->name('eye_clinic.save_base_exam_refraction'); - Route::any('/eye_clinic/update_base_exam_refraction/{id}', 'EyeClinicController@update_base_exam_refraction')->name('eye_clinic.update_base_exam_refraction'); - - Route::any('/eye_clinic/main_exam/edit/{id}', 'EyeClinicController@edit_main_exam')->name('eye_clinic.edit_main_exam'); - Route::any('/eye_clinic/store_new_test_area_value', 'EyeClinicController@store_new_test_area_value')->name('eye_clinic.store_new_test_area_value'); - Route::any('/eye_clinic/main_exam/update/{id}', 'EyeClinicController@update_main_exam')->name('eye_clinic.update_main_exam'); - Route::any('/eye_clinic/main_exam', 'EyeClinicController@main_exam')->name('eye_clinic.main_exam'); - Route::any('/eye_clinic/save_main_exam', 'EyeClinicController@save_main_exam')->name('eye_clinic.save_main_exam'); - Route::any('/eye_clinic/main_exam_route', 'EyeClinicController@main_exam_route')->name('eye_clinic.main_exam_route'); - - Route::any('/eye_clinic/additional_tests', 'EyeClinicController@additional_tests')->name('eye_clinic.additional_tests'); - Route::any('/eye_clinic/save_additional_tests', 'EyeClinicController@save_additional_tests')->name('eye_clinic.save_additional_tests'); - Route::any('/eye_clinic/strabismus', 'EyeClinicController@strabismus')->name('eye_clinic.strabismus'); - Route::any('/store_strabismus', 'EyeClinicController@store_strabismus')->name('strabismus.store'); -}); \ No newline at end of file diff --git a/docker/statistics/Modules/EyeClinic/bitbucket-pipelines.yml b/docker/statistics/Modules/EyeClinic/bitbucket-pipelines.yml deleted file mode 100644 index e850a8fd..00000000 --- a/docker/statistics/Modules/EyeClinic/bitbucket-pipelines.yml +++ /dev/null @@ -1,19 +0,0 @@ -image: alpine/git:latest - -pipelines: - branches: - main: - - step: - name: Merge To Beta - script: - - git remote set-url origin https://Kabricks:${APP_SECRET}@bitbucket.org/dcsammi/${BITBUCKET_REPO_SLUG} - - git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*" - - git fetch - - git checkout beta - - git merge main - - git commit --amend -m "[skip ci] Merge changes from main" - - git push - - step: - name: Deploy To Test - script: - - echo "Ready to deploy to demo or production!" diff --git a/docker/statistics/Modules/EyeClinic/module.json b/docker/statistics/Modules/EyeClinic/module.json deleted file mode 100644 index 0ca15314..00000000 --- a/docker/statistics/Modules/EyeClinic/module.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "EyeClinic", - "alias": "eye_clinic", - "description": "", - "keywords": [], - "priority": 0, - "providers": [ - "Modules\\EyeClinic\\Providers\\EyeClinicServiceProvider" - ], - "files": [] -} diff --git a/docker/statistics/Modules/Finance/Config/config.php b/docker/statistics/Modules/Finance/Config/config.php deleted file mode 100644 index 4dc86608..00000000 --- a/docker/statistics/Modules/Finance/Config/config.php +++ /dev/null @@ -1,5 +0,0 @@ - 'Finance' -]; diff --git a/docker/statistics/Modules/Finance/Http/Controllers/Controller.php b/docker/statistics/Modules/Finance/Http/Controllers/Controller.php deleted file mode 100755 index a56377e0..00000000 --- a/docker/statistics/Modules/Finance/Http/Controllers/Controller.php +++ /dev/null @@ -1,13 +0,0 @@ -where('available', 1)->whereNull('deleted_at')->pluck('name','id')->toArray(); - $cost_centers = ['OPD' => 'OPD'] + $cost_centers; - $cost_centers = ['all_cost_centers' => 'ALL COST CENTERS'] + $cost_centers; - $cost_centers = ['' => '- select -'] + $cost_centers; - - return view('finance::cost_center_performance.index',compact('cost_centers','request')); - } - - public function store(Request $request) - { - /* - Note: remember to ignore test patients - 1. get the expenses that are used by the cost center - 2. get the money that they have made - 3. See how much they have made - */ - $cost_centers = DB::table('wards')->where('available', 1)->whereNull('deleted_at')->pluck('name','id')->toArray(); - $cost_centers = ['OPD' => 'OPD'] + $cost_centers; - $cost_centers = ['all_cost_centers' => 'ALL COST CENTERS'] + $cost_centers; - $cost_centers = ['' => '- select -'] + $cost_centers; - - $inpatient_bills_cash_array = []; - $ward_inpatient_array_of_collections = []; - $per_wards_total_amounts_array = []; - $total_opd_debt_payments = 0; - $display = ""; - - if (isset($request)) { - if ($request->dates == "custom_date_range") { - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - } else if($request->dates == "custom_date"){ - $end = Carbon::parse($request->start_date)->endOfDay()->toDateTimeString(); - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - } else if($request->dates == "yesterday") { - $end = Carbon::yesterday()->endOfDay()->toDateTimeString(); - $start = Carbon::yesterday()->startOfDay()->toDateTimeString(); - } else { - // includes today - $end = Carbon::today()->endOfDay()->toDateTimeString(); - $start = Carbon::today()->startOfDay()->toDateTimeString(); - } - - $ward_id = $request->cost_center; - - //start get the payments from all debts invoices,donor invoices, debt_plan - $debt_amount_paid = 0; - $invoice_payments_array = $this->getCostCenterInvoicePayments('invoice_payments', 'amount_paid_history', $request); - if (!empty($invoice_payments_array)) { - foreach ($invoice_payments_array as $invoice_payment) { - $debt_amount_paid += $invoice_payment->amount_paid; - } - } - $donor_invoices_array = $this->getCostCenterInvoicePayments('donor_invoice_payments', 'amount_paid_history', $request); - if (!empty($donor_invoices_array)) { - foreach ($donor_invoices_array as $donor_payment) { - $debt_amount_paid += $donor_payment->amount_paid; - } - } - $debt_plan_payment_staffs_array = $this->getCostCenterInvoicePayments('debt_plan_payment_staffs', 'amount_paid_history', $request); - if (!empty($debt_plan_payment_staffs_array)) { - foreach ($debt_plan_payment_staffs_array as $debt_plan_payment) { - $debt_amount_paid += $debt_plan_payment->amount_paid; - } - } - - $debtor_payments = $this->getCostCenterDebtorPaymentsSum('debtor_payments', 'amount_paid', $request); - $total_opd_debt_payments = $debt_amount_paid + $debtor_payments; - //end payments of all debt plans - - if ($request->cost_center == "all_cost_centers") { - foreach ($cost_centers as $key => $value) { - $inpatient_bills = DB::table('service_deposits') - ->join('inpatient_info','inpatient_info.episode_id', '=', 'service_deposits.episode_id') - ->where('inpatient_info.ward_id', $key) - ->whereNotIn('inpatient_info.patient_id', findTestOrDemoPatients()) - ->whereBetween('service_deposits.created_at',[$start, $end]) - ->where('service_deposits.service_type','Inpatient_Deposit') - ->select('service_deposits.*','inpatient_info.ward_id') - ->get(); - if (count($inpatient_bills) > 0) - { - $ward_inpatient_array_of_collections[$key] = $inpatient_bills; - } else { - $ward_inpatient_array_of_collections[$key] = []; - } - } - //add OPD collections to the array - $treatment_deposits = TreatmentDeposits::whereBetween('created_at',[$start, $end])->whereNotIn('patient_id', findTestOrDemoPatients())->get(); - $ward_inpatient_array_of_collections["OPD"][] = $treatment_deposits; - $investigation_deposits = InvestigationDeposit::whereBetween('created_at',[$start, $end])->whereNotIn('patient_id', findTestOrDemoPatients())->get(); - $ward_inpatient_array_of_collections["OPD"][] = $investigation_deposits; - $procedures_deposits = ProcedureDeposit::whereBetween('created_at',[$start, $end])->whereNotIn('patient_id', findTestOrDemoPatients())->get(); - $ward_inpatient_array_of_collections["OPD"][] = $procedures_deposits; - $sundries_deposits = SundryDeposit::whereBetween('created_at',[$start, $end])->whereNotIn('patient_id', findTestOrDemoPatients())->get(); - $ward_inpatient_array_of_collections["OPD"][] = $sundries_deposits; - $service_deposits = ServiceDeposit::where('service_type', 'Services')->whereBetween('created_at',[$start, $end])->whereNotIn('patient_id', findTestOrDemoPatients())->get(); - $ward_inpatient_array_of_collections["OPD"][] = $service_deposits; - $consultation_deposits = ServiceDeposit::where('service_type','Consultation')->whereBetween('created_at',[$start, $end])->whereNotIn('patient_id', findTestOrDemoPatients())->get(); - $ward_inpatient_array_of_collections["OPD"][] = $consultation_deposits; - }else if ($request->cost_center == "OPD") { - //add OPD collections to the array - $treatment_deposits = TreatmentDeposits::whereBetween('created_at',[$start, $end])->whereNotIn('patient_id', findTestOrDemoPatients())->get(); - $ward_inpatient_array_of_collections["OPD"][] = $treatment_deposits; - $investigation_deposits = InvestigationDeposit::whereBetween('created_at',[$start, $end])->whereNotIn('patient_id', findTestOrDemoPatients())->get(); - $ward_inpatient_array_of_collections["OPD"][] = $investigation_deposits; - $procedures_deposits = ProcedureDeposit::whereBetween('created_at',[$start, $end])->whereNotIn('patient_id', findTestOrDemoPatients())->get(); - $ward_inpatient_array_of_collections["OPD"][] = $procedures_deposits; - $sundries_deposits = SundryDeposit::whereBetween('created_at',[$start, $end])->whereNotIn('patient_id', findTestOrDemoPatients())->get(); - $ward_inpatient_array_of_collections["OPD"][] = $sundries_deposits; - $service_deposits = ServiceDeposit::where('service_type', 'Services')->whereBetween('created_at',[$start, $end])->whereNotIn('patient_id', findTestOrDemoPatients())->get(); - $ward_inpatient_array_of_collections["OPD"][] = $service_deposits; - $consultation_deposits = ServiceDeposit::where('service_type','Consultation')->whereBetween('created_at',[$start, $end])->whereNotIn('patient_id', findTestOrDemoPatients())->get(); - $ward_inpatient_array_of_collections["OPD"][] = $consultation_deposits; - } else { - - $inpatient_bills = DB::table('service_deposits') - ->join('inpatient_info','inpatient_info.episode_id', '=', 'service_deposits.episode_id') - ->where('inpatient_info.ward_id', $request->cost_center) - ->whereNotIn('inpatient_info.patient_id', findTestOrDemoPatients()) - ->whereBetween('service_deposits.created_at',[$start, $end]) - ->where('service_deposits.service_type','Inpatient_Deposit') - ->select('service_deposits.*','inpatient_info.ward_id') - ->get(); - $subtotal = 0; - - if (count($inpatient_bills) > 0) { - foreach ($inpatient_bills as $bill_with_treatment_details) { - $subtotal += $bill_with_treatment_details->patient_amount_paid; - } - } - $per_wards_total_amounts_array[$ward_id] = $subtotal; - } - - //do this for specifically when all cost_centers option is selected - if (!empty($ward_inpatient_array_of_collections)) { - foreach($ward_inpatient_array_of_collections as $ward_id => $inpatient_bill_details_collections){ - $particular_ward_amounts = 0; - foreach ($inpatient_bill_details_collections as $bill_record) { - if ($ward_id == "OPD") { - // loop through the "opd" key collection - foreach ($bill_record as $record) { - $particular_ward_amounts += $record->patient_amount_paid; - } - } else { - $particular_ward_amounts += $bill_record->patient_amount_paid; - } - } - $per_wards_total_amounts_array[$ward_id] = $particular_ward_amounts; - } - } - - $display = dateLabelSetter($request); - } - return view('finance::cost_center_performance.index',compact('cost_centers','request','display','inpatient_bills_cash_array','per_wards_total_amounts_array','total_opd_debt_payments')); - } - - /* display the over view of the performance of the cost centers */ - public function over_view_perfomance(Request $request) - { - # code.. - } - - public function cost_center_details(Request $request) - { - if ($request->date_type == "today") { - $end = Carbon::today()->endOfDay()->toDateTimeString(); - $start = Carbon::today()->startOfDay()->toDateTimeString(); - } else if($request->date_type == "yesterday"){ - $end = Carbon::yesterday()->endOfDay()->toDateTimeString(); - $start = Carbon::yesterday()->startOfDay()->toDateTimeString(); - } else if($request->date_type == "custom_date"){ - $dates = explode("/", $request->dates); - $end = Carbon::parse($dates[0])->endOfDay()->toDateTimeString(); - $start = Carbon::parse($dates[0])->startOfDay()->toDateTimeString(); - }else if($request->date_type == "custom_date_range"){ - $dates = explode("/", $request->dates); - $end = Carbon::parse($dates[1])->endOfDay()->toDateTimeString(); - $start = Carbon::parse($dates[0])->startOfDay()->toDateTimeString(); - } - - $inpatient_record_results = []; - - if ($request->ward_id == "OPD") { - //add OPD collections to the array - $treatment_deposits = TreatmentDeposits::whereBetween('created_at',[$start, $end])->whereNotIn('patient_id', findTestOrDemoPatients())->get(); - $ward_inpatient_array_of_collections["OPD"][] = $treatment_deposits; - $investigation_deposits = InvestigationDeposit::whereBetween('created_at',[$start, $end])->whereNotIn('patient_id', findTestOrDemoPatients())->get(); - $ward_inpatient_array_of_collections["OPD"][] = $investigation_deposits; - $procedures_deposits = ProcedureDeposit::whereBetween('created_at',[$start, $end])->whereNotIn('patient_id', findTestOrDemoPatients())->get(); - $ward_inpatient_array_of_collections["OPD"][] = $procedures_deposits; - $sundries_deposits = SundryDeposit::whereBetween('created_at',[$start, $end])->whereNotIn('patient_id', findTestOrDemoPatients())->get(); - $ward_inpatient_array_of_collections["OPD"][] = $sundries_deposits; - $consultation_deposits = ServiceDeposit::whereBetween('created_at',[$start, $end])->whereNotIn('patient_id', findTestOrDemoPatients())->where('service_type','Consultation')->get(); - $ward_inpatient_array_of_collections["OPD"][] = $consultation_deposits; - $service_deposits = ServiceDeposit::whereBetween('created_at',[$start, $end])->whereNotIn('patient_id', findTestOrDemoPatients())->where('service_type','Services')->get(); - $ward_inpatient_array_of_collections["OPD"][] = $service_deposits; - $optic_deposits = EyeGlassesDeposits::whereBetween('created_at',[$start, $end])->whereNotIn('patient_id', findTestOrDemoPatients())->get(); - - } else { - $inpatient_bills = DB::table('service_deposits') - ->join('inpatient_info','inpatient_info.episode_id', '=', 'service_deposits.episode_id') - ->where('inpatient_info.ward_id', $request->ward_id) - ->whereBetween('service_deposits.created_at',[$start, $end]) - ->where('service_deposits.service_type','Inpatient_Deposit') - ->select('service_deposits.*','inpatient_info.ward_id') - ->get(); - } - - $drugs = []; - $consultations = []; - $sundries = []; - $investigations = []; - $procedures = []; - $extras = []; - $tta_cost = []; - $services = []; - $optics = []; - - if ($request->ward_id == "OPD") { - - foreach ($treatment_deposits as $treament) { - $drugs[] = $treament->patient_amount_paid; - } - - foreach ($investigation_deposits as $investigation) { - $investigations[] = $investigation->patient_amount_paid; - } - - foreach ($procedures_deposits as $procedure) { - $procedures[] = $procedure->patient_amount_paid; - } - - foreach ($sundries_deposits as $sundry) { - $sundries[] = $sundry->patient_amount_paid; - } - - foreach ($consultation_deposits as $service) { - $consultations[] = $service->patient_amount_paid; - } - - foreach ($service_deposits as $service) { - $services[] = $service->patient_amount_paid; - } - - foreach ($optic_deposits as $optic) { - $optics[] = $optic->patient_amount_paid; - } - } else { - $inpatient_record_results = $inpatient_bills; - /*foreach ($inpatient_bills as $inpatient_bill_and_info_detail) { - - $inpatient_deposit = $inpatient_bill_and_info_detail->patient_amount_paid; - $drugs[] = $inpatient_bill_and_info_detail->treatment_cost; - $consultations[] = $inpatient_bill_and_info_detail->services_cost; - $sundries[] = $inpatient_bill_and_info_detail->sundries_cost; - $investigations[] = $inpatient_bill_and_info_detail->investigation_cost; - $tta_cost[] = $inpatient_bill_and_info_detail->tta_cost; - $procedures[] = $inpatient_bill_and_info_detail->procedures_cost; - $extras[] = $inpatient_bill_and_info_detail->extras_cost; - } - return ;*/ - } - - $ward_name = $request->ward_id == "OPD" ? "OPD" : get_name($request->ward_id, 'id', 'name', 'wards'); - $cost_centers = DB::table('wards')->where('available', 1)->whereNull('deleted_at')->pluck('name','id')->toArray(); - $cost_centers = ['all_cost_centers' => 'ALL COST CENTERS'] + $cost_centers; - $cost_centers = ['' => '- select -'] + $cost_centers; - - return view('finance::cost_center_performance.center_performance_details',compact('request','drugs','consultations','sundries','investigations','tta_cost','procedures','services','extras','cost_centers','ward_name','inpatient_record_results', 'optics')); - } - - public function costCenterIncomeDetailedReport(Request $request){ - - if (isset($request->per_staff_details)) { /* if it is viewing all collection details from particular staff then go to this function */ - return $this->incomeCashDetailedReportOfParticularStaff($request); - } - - $result = []; - $inv_lab = []; - $inv_ultrasound = []; - $inv_x_ray = []; - $discount = ""; - $patient = ""; - $staff_member = ""; - $group = ""; - $pending_donor_invoices = ""; - $pending_invoices = ""; - $debtors = ""; - $debt_plan = ""; - - $patient_category_payments = []; - $donor_invoice_payments = []; - $debt_plan_payments = []; - $debtor_payments = []; - $donor_amount_paid = 0; - $today = Carbon::today()->toDateString(); - $yesterday = Carbon::yesterday()->toDateString(); - - if($request->date_type == "yesterday"){ - $end = Carbon::yesterday()->endOfDay()->toDateTimeString(); - $start = Carbon::yesterday()->startOfDay()->toDateTimeString(); - }else if($request->date_type == "custom_date"){ - $dates = explode("/", $request->dates); - $end = Carbon::parse($dates[0])->endOfDay()->toDateTimeString(); - $start = Carbon::parse($dates[0])->startOfDay()->toDateTimeString(); - } else if($request->date_type == "custom_date_range"){ - $dates = explode("/", $request->dates); - $end = Carbon::parse($dates[1])->endOfDay()->toDateTimeString(); - $start = Carbon::parse($dates[0])->startOfDay()->toDateTimeString(); - } else { - // includes today - $end = Carbon::today()->endOfDay()->toDateTimeString(); - $start = Carbon::today()->startOfDay()->toDateTimeString(); - } - - $staff_members = DB::table('users')->pluck('username','id')->toArray(); - - if($request->comparator == "CON"){ - $result = DB::table('service_deposits') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->where('service_type', 'Consultation') - ->whereBetween('created_at', [$start, $end]) - ->groupBy('receipt_number') - ->get() - ->toArray(); - - foreach ($result as $item){ - $donor_amount_paid = get_name($item->receipt_number, 'receipt_number', 'donor_to_pay', 'donor_discount_details'); - - $discount = get_name($item->receipt_number, 'receipt_number', 'discount_amount', 'discounts'); - $patient = DB::table('patients')->where('id', $item->patient_id)->select('first_name', 'last_name')->get()->toArray(); - $staff_member = DB::table('users')->where('id', $item->created_by)->select('first_name', 'last_name')->get()->toArray(); - } - - } - - if($request->comparator == "OTH"){ - $result = DB::table('service_deposits') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereIn('service_type', ['Services', 'Other Services', 'Service']) - ->whereBetween('created_at', [$start, $end]) - ->groupBy('receipt_number') - ->get() - ->toArray(); - - foreach ($result as $item){ - $donor_amount_paid = get_name($item->receipt_number, 'receipt_number', 'donor_to_pay', 'donor_discount_details'); - - $discount = get_name($item->receipt_number, 'receipt_number', 'discount_amount', 'discounts'); - $patient = DB::table('patients')->where('id', $item->patient_id)->select('first_name', 'last_name')->get()->toArray(); - $staff_member = DB::table('users')->where('id', $item->created_by)->select('first_name', 'last_name')->get()->toArray(); - - } - } - - if($request->comparator == "IA"){ - $result = DB::table('investigation_deposits') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereBetween('created_at', [$start, $end]) - ->groupBy('receipt_number') - ->get() - ->toArray(); - - $sorted = $this->incomeInvestigationDetail($result); - - $inv_lab = $sorted[0]; - $inv_x_ray = $sorted[1]; - $inv_ultrasound = $sorted[2]; - - foreach ($result as $item){ - $donor_amount_paid = get_name($item->receipt_number, 'receipt_number', 'donor_to_pay', 'donor_discount_details'); - - $discount = get_name($item->receipt_number, 'receipt_number', 'discount_amount', 'discounts'); - $patient = DB::table('patients')->where('id', $item->patient_id)->select('first_name', 'last_name')->get()->toArray(); - $staff_member = DB::table('users')->where('id', $item->created_by)->select('first_name', 'last_name')->get()->toArray(); - } - } - - if($request->comparator == "IC"){ - $result = DB::table('investigation_deposits') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereBetween('created_at', [$start, $end]) - ->groupBy('receipt_number') - ->get() - ->toArray(); - - $sorted = $this->incomeInvestigationDetail($result); - - $inv_lab = $sorted[0]; - $inv_x_ray = $sorted[1]; - $inv_ultrasound = $sorted[2]; - - foreach ($result as $item){ - $donor_amount_paid = get_name($item->receipt_number, 'receipt_number', 'donor_to_pay', 'donor_discount_details'); - - $discount = get_name($item->receipt_number, 'receipt_number', 'discount_amount', 'discounts'); - $patient = DB::table('patients')->where('id', $item->patient_id)->select('first_name', 'last_name')->get()->toArray(); - $staff_member = DB::table('users')->where('id', $item->created_by)->select('first_name', 'last_name')->get()->toArray(); - } - } - - if($request->comparator == "DR"){ - $result = DB::table('treatment_deposits') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereBetween('created_at', [$start, $end]) - ->groupBy('receipt_number') - ->get() - ->toArray(); - - foreach ($result as $item){ - $donor_amount_paid = get_name($item->receipt_number, 'receipt_number', 'donor_to_pay', 'donor_discount_details'); - - $discount = get_name($item->receipt_number, 'receipt_number', 'discount_amount', 'discounts'); - $patient = DB::table('patients')->where('id', $item->patient_id)->select('first_name', 'last_name')->get()->toArray(); - $staff_member = DB::table('users')->where('id', $item->created_by)->select('first_name', 'last_name')->get()->toArray(); - } - - } - - if($request->comparator == "CO"){ - $result = DB::table('service_deposits') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->where('service_type', 'Co_Payment') - ->whereBetween('created_at', [$start, $end]) - ->groupBy('receipt_number') - ->get() - ->toArray(); - - foreach ($result as $item){ - $donor_amount_paid = get_name($item->receipt_number, 'receipt_number', 'donor_to_pay', 'donor_discount_details'); - - $discount = get_name($item->receipt_number, 'receipt_number', 'discount_amount', 'discounts'); - $patient = DB::table('patients')->where('id', $item->patient_id)->select('first_name', 'last_name')->get()->toArray(); - $staff_member = DB::table('users')->where('id', $item->created_by)->select('first_name', 'last_name')->get()->toArray(); - } - } - - if($request->comparator == "ID"){ - $result = DB::table('service_deposits') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->where('service_type', 'Inpatient_Deposit') - ->whereBetween('created_at', [$start, $end]) - ->groupBy('receipt_number') - ->get() - ->toArray(); - - return view('finance_reports::finance_reports.detail.inpatient_deposits', compact('result', 'request')); - } - - if($request->comparator == "IBP"){ - - $result = DB::table('inpatient_bills') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereBetween('created_at', [$start, $end]) - ->groupBy('receipt_id') - ->get() - ->toArray(); - - return view('finance_reports::finance_reports.detail.inpatient_bill_payment', compact('result', 'request')); - } - - if($request->comparator == "PR"){ - - $result = DB::table('procedure_deposits') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereBetween('created_at', [$start, $end]) - ->groupBy('receipt_number') - ->get() - ->toArray(); - - foreach ($result as $item){ - $donor_amount_paid = get_name($item->receipt_number, 'receipt_number', 'donor_to_pay', 'donor_discount_details'); - - $discount = get_name($item->receipt_number, 'receipt_number', 'discount_amount', 'discounts'); - $patient = DB::table('patients')->where('id', $item->patient_id)->select('first_name', 'last_name')->get()->toArray(); - $staff_member = DB::table('users')->where('id', $item->created_by)->select('first_name', 'last_name')->get()->toArray(); - } - } - - if($request->comparator == "PRE"){ - - $result = DB::table('insurance_subscriptions') - ->where('created_by', $staff_member) - ->whereBetween('created_at', [$start, $end]) - ->groupBy('receipt_number') - ->get() - ->toArray(); - - foreach ($result as $item){ - $donor_amount_paid = get_name($item->receipt_number, 'receipt_number', 'donor_to_pay', 'donor_discount_details'); - - $discount = get_name($item->receipt_number, 'receipt_number', 'discount_amount', 'discounts'); - $group = DB::table('insurance_groups')->where('id', $item->group_id)->select('name')->get()->toArray(); - $staff_member = DB::table('users')->where('id', $item->created_by)->select('first_name', 'last_name')->get()->toArray(); - } - } - - if($request->comparator == "SUN"){ - - $result = DB::table('sundries_deposits') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereBetween('created_at', [$start, $end]) - ->groupBy('receipt_number') - ->get() - ->toArray(); - - foreach ($result as $item){ - $donor_amount_paid = get_name($item->receipt_number, 'receipt_number', 'donor_to_pay', 'donor_discount_details'); - - $discount = get_name($item->receipt_number, 'receipt_number', 'discount_amount', 'discounts'); - $patient = DB::table('patients')->where('id', $item->patient_id)->select('first_name', 'last_name')->get()->toArray(); - $staff_member = DB::table('users')->where('id', $item->created_by)->select('first_name', 'last_name')->get()->toArray(); - } - - } - - if($request->comparator == "ACRD"){ - $debtors = DB::table('debtors') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereBetween('created_at', [$start, $end]) - ->get() - ->toArray(); - - $debt_plan = DB::table('debt_plan') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereBetween('created_at', [$start, $end]) - ->get() - ->toArray(); - } - - if($request->comparator == "ACRI"){ - $pending_invoices = DB::table('patient_category_invoices') - ->whereBetween('created_at', [$start, $end]) - ->get() - ->toArray(); - - $pending_donor_invoices = DB::table('donor_discount_details') - ->whereBetween('created_at', [$start, $end]) - ->get() - ->toArray(); - } - - if($request->comparator == "PD"){ - $debtor_payments = DB::table('debtor_payments') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereBetween('created_at', [$start, $end]) - ->groupBy('patient_id') - ->get() - ->toArray(); - - $debt_plan_payments = DB::table('debt_plan_payment_staffs') - ->whereBetween('created_at', [$start, $end]) - ->groupBy('created_by') - ->get() - ->toArray(); - } - - if($request->comparator == "PI"){ - $patient_category_payments = DB::table('invoice_payment_records') - ->whereBetween('created_at', [$start, $end]) - ->get() - ->toArray(); - - $donor_invoice_payments = DB::table('donor_invoice_payments') - ->whereBetween('created_at', [$start, $end]) - ->get() - ->toArray(); - } - - $display = dateLabelSetter($request); - - return view('finance_reports::finance_reports.incomeDetailedReport', compact('result', 'request', 'donor_amount_paid', - 'discount', 'patient', 'staff_member','group', 'donor_invoice_payments', 'patient_category_payments', - 'debtor_payments', 'debt_plan_payments', 'pending_donor_invoices', 'pending_invoices', 'debtors', 'debt_plan', - 'inv_lab', 'inv_x_ray', 'inv_ultrasound', 'staff_members', 'display')); - } - - public function getCostCenterInvoicePayments($table, $sum_column, Request $request){ - - $result = 0; - $today = Carbon::today()->toDateTimeString(); - $yesterday = Carbon::yesterday()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - - if($request->dates == "today"){ - $result = DB::table($table) - ->whereDate('created_at', $today) - ->get() - ->toArray(); - } - else if($request->dates == "yesterday"){ - $result = DB::table($table) - ->whereDate('created_at', $yesterday) - ->get() - ->toArray(); - } - else if($request->dates == "custom_date"){ - $result = DB::table($table) - ->whereDate('created_at', $start) - ->get() - ->toArray(); - } - else if($request->dates == "custom_date_range"){ - $result = DB::table($table) - ->whereBetween('created_at', [$start, $end]) - ->get() - ->toArray(); - } - - return $result; - } - - public function getCostCenterDebtorPaymentsSum($table, $sum_column, Request $request){ - $result = 0; - $insurance_amount = 0; - $today = Carbon::today()->toDateTimeString(); - $yesterday = Carbon::yesterday()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - - if($table != "insurance_subscriptions"){ - - if($request->dates == "today"){ - $result = DB::table($table) - ->whereDate('created_at', $today) - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->get() - ->sum($sum_column); - } - else if($request->dates == "yesterday"){ - $result = DB::table($table) - ->whereDate('created_at', $yesterday) - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->get() - ->sum($sum_column); - } - else if($request->dates == "custom_date"){ - $result = DB::table($table) - ->whereDate('created_at', $request->start_date) - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->get() - ->sum($sum_column); - } - else if($request->dates == "custom_date_range"){ - $result = DB::table($table) - ->whereBetween('created_at', [$start, $end]) - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->get() - ->sum($sum_column); - } - }else{ - - if($request->dates == "today"){ - $result = DB::table($table)->whereDate('created_at', $today)->get()->pluck('family_amount'); - foreach ($result as $item){ - $insurance_amount += array_sum(explode(",",$item)); - } - } - else if($request->dates == "yesterday"){ - $result = DB::table($table)->whereDate('created_at', $yesterday)->get()->pluck('family_amount'); - foreach ($result as $item){ - $insurance_amount += array_sum(explode(",",$item)); - } - } - else if($request->dates == "custom_date"){ - $result = DB::table($table)->whereDate('created_at', $request->start_date)->pluck('family_amount'); - foreach ($result as $item){ - $insurance_amount += array_sum(explode(",",$item)); - } - } - else if($request->dates == "custom_date_range"){ - $result = DB::table($table)->whereBetween('created_at', [$start, $end])->pluck('family_amount'); - foreach ($result as $item){ - $insurance_amount += array_sum(explode(",",$item)); - } - } - - return $insurance_amount; - } - - return $result; - } - - public function labPerformanceReport(Request $request) - { - /* opd cash */ - $today = Carbon::today()->toDateTimeString(); - $yesterday = Carbon::yesterday()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - - $inv_lab = []; - $inv_ultrasound = []; - $inv_x_ray = []; - - if($request->date_type == "today"){ - - $result = DB::table('investigation_deposits') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereDate('created_at', $today) - ->groupBy('receipt_number') - ->get() - ->toArray(); - - $sorted = $this->incomeInvestigationDetail($result); - - $inv_lab = $sorted[0]; - $inv_x_ray = $sorted[1]; - $inv_ultrasound = $sorted[2]; - - }else if($request->date_type == "yesterday"){ - - $result = DB::table('investigation_deposits') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereDate('created_at', $yesterday) - ->groupBy('receipt_number') - ->get() - ->toArray(); - - $sorted = $this->incomeInvestigationDetail($result); - - $inv_lab = $sorted[0]; - $inv_x_ray = $sorted[1]; - $inv_ultrasound = $sorted[2]; - - }else if($request->date_type == "custom_date"){ - - $result = DB::table('investigation_deposits') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereDate('created_at', $start) - ->groupBy('receipt_number') - ->get() - ->toArray(); - - $sorted = $this->incomeInvestigationDetail($result); - - $inv_lab = $sorted[0]; - $inv_x_ray = $sorted[1]; - $inv_ultrasound = $sorted[2]; - - }else if($request->date_type == "custom_date_range"){ - - $result = DB::table('investigation_deposits') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereBetween('created_at', [$start, $end]) - ->groupBy('receipt_number') - ->get() - ->toArray(); - - $sorted = $this->incomeInvestigationDetail($result); - - $inv_lab = $sorted[0]; - $inv_x_ray = $sorted[1]; - $inv_ultrasound = $sorted[2]; - - } else { - $result = DB::table('investigation_deposits') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereDate('created_at', $today) - ->groupBy('receipt_number') - ->get() - ->toArray(); - - $sorted = $this->incomeInvestigationDetail($result); - - $inv_lab = $sorted[0]; - $inv_x_ray = $sorted[1]; - $inv_ultrasound = $sorted[2]; - } - //dd($inv_lab); - //start doing the chart things - $lab_money = 0; $x_ray_money = 0; $ultrasound_money = 0; - foreach ($inv_lab as $item){ - $lab_money += $item['cost_price']; - } - - foreach ($inv_x_ray as $item){ - $x_ray_money += $item['cost_price']; - } - - foreach ($inv_ultrasound as $item){ - $ultrasound_money += $item['cost_price']; - } - - $display = dateLabelSetter($request); - $chartjs = app()->chartjs - ->name('barChart') - ->type('bar') - ->size(['width' => 600, 'height' => 400]) - ->labels(['Lab','Xray','Ultrasound']) - ->datasets([ - [ - "label" => "Investigations performance", - 'backgroundColor' => '#9a04f0', - 'data' => [$lab_money, $x_ray_money, $ultrasound_money] - ] - ]) - ->optionsRaw([ - 'scales' => [ - 'yAxes' => [ - [ - 'ticks' => [ - 'beginAtZero' => true, - ], - ], - ], - 'xAxes' => [ - [ - 'ticks' => [ - 'autoSkip' => false - ], - ] - ] - ] - ]) - ->options([]); - //end doing the chart things - //dd($result); - /* end of opd cash */ - return view('finance::cost_center_performance.lab_perfomance',compact('request','result','display','inv_lab','inv_x_ray','inv_ultrasound', 'chartjs')); - } - - public function labPerformanceReportDetails(Request $request) - { - $investigations_array = $request->investigations_array; - $patient_names_array = $request->patient_names_array; - $patients_array = $request->patients_array; - $receipt_number_array = $request->receipt_number_array; - $investigations_name_array = $request->investigations_name_array; - $investigations_date_array = $request->investigations_date_array; - $investigations_amountpaid_array = $request->investigations_amountpaid_array; - $investigations_cost_array = $request->investigations_cost_array; - $invs_grand_total = $request->total; - - return view('finance::cost_center_performance.lab_perfomance_details',compact('request','investigations_array','patient_names_array','patients_array','receipt_number_array','investigations_name_array','investigations_date_array','investigations_amountpaid_array','investigations_cost_array','invs_grand_total')); - } - - public function incomeInvestigationDetail($result){ - - $inv_lab = []; - $inv_ultrasound = []; - $inv_x_ray = []; - - $total_patient_amount_paid = 0; - $is_opd_investigation = false; - - foreach ($result as $investigation_deposit){ - - $investigation_deposit_ids_array = explode(',', $investigation_deposit->investigation_items); - - //sort this array to help in comparison with the sorted ordered inv array then check inpatient status - sort($investigation_deposit_ids_array); - - $investigation_deposit_amounts_array = explode(',', $investigation_deposit->investigation_amounts); - - $ordered_investigations = DB::table('ordered_investigations')->where('episode_id', $investigation_deposit->episode_id)->get(); - - foreach ($ordered_investigations as $order_record) { - - $investigation_ordered_ids_array = explode(",", $order_record->investigation_id); - - //sort this array too do comparison with the sorted inv deposits array from above - sort($investigation_ordered_ids_array); - - /* if same investigation ids for deposits and ordered ones then enter if stmt */ - if ($investigation_deposit_ids_array == $investigation_ordered_ids_array) { - - $investigation_ordered_inpatient_status = $order_record->inpatient; - - /* Further check if the inpatient status is that of OPD then enter if stmt */ - if ($investigation_ordered_inpatient_status === 0) { - - /*=============================start original block by Benji ===========================*/ - for($i = 0; $i < count($investigation_deposit_ids_array); $i++){ - - if( $investigation_deposit_ids_array[$i] != ""){ - $inv_category = get_name( $investigation_deposit_ids_array[$i], 'id', 'category', 'investigations'); - - if($inv_category == 6){ - - $category = get_name($inv_category, 'id', 'name', 'investigation_categories'); - - array_push($inv_ultrasound, array("investigation"=>"labs","item"=> $investigation_deposit_ids_array[$i], "receipt_number"=>$investigation_deposit->receipt_number,"date"=>$investigation_deposit->created_at, - "patient_amount_paid"=>$investigation_deposit->patient_amount_paid, "cost_price"=>$investigation_deposit_amounts_array[$i], 'patient_id'=>$investigation_deposit->patient_id, 'category'=>$category, - "category_id"=>$inv_category)); - } else if($inv_category == 4){ - - $category = get_name($inv_category, 'id', 'name', 'investigation_categories'); - - array_push($inv_x_ray, array("investigation"=>"labs","item"=> $investigation_deposit_ids_array[$i], "receipt_number"=>$investigation_deposit->receipt_number,"date"=>$investigation_deposit->created_at, - "patient_amount_paid"=>$investigation_deposit->patient_amount_paid, "cost_price"=>$investigation_deposit_amounts_array[$i], 'patient_id'=>$investigation_deposit->patient_id, 'category'=>$category, - "category_id"=>$inv_category)); - } elseif ($inv_category != 4 && $inv_category != 6 && $inv_category != 7) { - - $category = get_name($inv_category, 'id', 'name', 'investigation_categories'); - - array_push($inv_lab, array("investigation"=>"labs","item"=> $investigation_deposit_ids_array[$i], "receipt_number"=>$investigation_deposit->receipt_number,"date"=>$investigation_deposit->created_at, - "patient_amount_paid"=>$investigation_deposit->patient_amount_paid, "cost_price"=>$investigation_deposit_amounts_array[$i], 'patient_id'=>$investigation_deposit->patient_id, 'category'=>$category, - "category_id"=>$inv_category)); - } - } - } - /* ======================== end of original block by Benji ======================*/ - } - } - } - } - - return array($inv_lab, $inv_x_ray, $inv_ultrasound); - } - - /* display the top 10 performing investigations */ - public function topPerformingInvestigationsReport(Request $request) - { - $today = Carbon::today()->toDateTimeString(); - $yesterday = Carbon::yesterday()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - - $result = []; - $ids_and_paid_amounts_array = []; - $topPerformingArray = []; - - if($request->date_type == "today"){ - - $result = DB::table('investigation_deposits') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereDate('created_at', $today) - ->groupBy('receipt_number') - ->get() - ->toArray(); - - $ids_and_paid_amounts_array = $this->investigationIdsWithTheirAmountsPaidArray($result); - - }else if($request->date_type == "yesterday"){ - - $result = DB::table('investigation_deposits') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereDate('created_at', $yesterday) - ->groupBy('receipt_number') - ->get() - ->toArray(); - - $ids_and_paid_amounts_array = $this->investigationIdsWithTheirAmountsPaidArray($result); - - }else if($request->date_type == "custom_date"){ - - $result = DB::table('investigation_deposits') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereDate('created_at', $start) - ->groupBy('receipt_number') - ->get() - ->toArray(); - - $ids_and_paid_amounts_array = $this->investigationIdsWithTheirAmountsPaidArray($result); - - }else if($request->date_type == "custom_date_range"){ - - $result = DB::table('investigation_deposits') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereBetween('created_at', [$start, $end]) - ->groupBy('receipt_number') - ->get() - ->toArray(); - - $ids_and_paid_amounts_array = $this->investigationIdsWithTheirAmountsPaidArray($result); - - } else { - $result = DB::table('investigation_deposits') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereDate('created_at', $today) - ->groupBy('receipt_number') - ->get() - ->toArray(); - - $ids_and_paid_amounts_array = $this->investigationIdsWithTheirAmountsPaidArray($result); - } - //dd($ids_and_paid_amounts_array); - //arrange by the money values - arsort($ids_and_paid_amounts_array); - //dd($ids_and_paid_amounts_array); - //slice the top 3 - $sliced_array = array_slice($ids_and_paid_amounts_array, 0, 10, true); //keep the true parameter and life will be ok - //dd($sliced_array); - - $investigationIdsArray = array_keys($sliced_array); - $investigationNamesArray = []; - for ($i=0; $i < count($investigationIdsArray) ; $i++) { - $investigationName = get_name($investigationIdsArray[$i], 'id', 'name', 'investigations'); - array_push($investigationNamesArray, $investigationName); - } - $investigationPaidAmountsArray = array_values($sliced_array); - //add an empty and a zero - - $chartjs = app()->chartjs - ->name('barChartTest') - ->type('bar') - ->size(['width' => 600, 'height' => 400]) - ->labels($investigationNamesArray) - ->datasets([ - [ - "label" => "Top performing investigations (Cash)", - 'backgroundColor' => '#9a04f0', - 'data' => $investigationPaidAmountsArray - ] - ]) - ->optionsRaw([ - 'scales' => [ - 'yAxes' => [ - [ - 'ticks' => [ - 'beginAtZero' => true, - ], - ], - ], - 'xAxes' => [ - [ - 'ticks' => [ - 'autoSkip' => false - ], - ] - ] - ] - ]) - ->options([]); - - /*$chartjs = app()->chartjs - ->name('barChartTest') - ->type('bar') - ->size(['width' => 400, 'height' => 200]) - ->labels(['Label x', 'Label y']) - ->datasets([ - [ - "label" => "My First dataset", - 'backgroundColor' => ['rgba(255, 99, 132, 0.2)', 'rgba(54, 162, 235, 0.2)'], - 'data' => [69, 59] - ], - [ - "label" => "My First dataset", - 'backgroundColor' => ['rgba(255, 99, 132, 0.3)', 'rgba(54, 162, 235, 0.3)'], - 'data' => [65, 12] - ] - ]) - ->options([]);*/ - - return view('finance::cost_center_performance.top_performing_investigations',compact('chartjs','request')); - } - - public function investigationIdsWithTheirAmountsPaidArray($result){ - - $inv_lab = []; - $inv_ultrasound = []; - $inv_x_ray = []; - $investigation_id_and_amount_array = []; - $investigation_ids = []; - $investigation_amounts = []; - $two_elements_array = []; - - foreach ($result as $item){ - $ids = explode(',', $item->investigation_items); - $items = explode(',', $item->investigation_amounts); - $count = count($ids); - for($i = 0; $i < $count; $i++){ - - if($ids[$i] != ""){ - $inv_category = get_name($ids[$i], 'id', 'category', 'investigations'); - if(($inv_category == 1) || ($inv_category == 2) || ($inv_category == 3) || ($inv_category == 5)){ - - $category = get_name($inv_category, 'id', 'name', 'investigation_categories'); - - array_push($inv_lab, array("investigation"=>"labs","item"=>$ids[$i], "receipt_number"=>$item->receipt_number,"date"=>$item->created_at, "patient_amount_paid"=>$item->patient_amount_paid, "cost_price"=>$items[$i], 'patient_id'=>$item->patient_id, 'category'=>$category, - "category_id"=>$inv_category)); - - //$investigation_id_and_amount_array[$ids[$i]] = $item->patient_amount_paid; - $new_item_amount = $items[$i]; - if (array_key_exists($ids[$i], $investigation_id_and_amount_array)) { - $existing_amount = $investigation_id_and_amount_array[$ids[$i]]; - $investigation_id_and_amount_array[$ids[$i]] = $new_item_amount + $existing_amount; - } else { - $investigation_id_and_amount_array[$ids[$i]] = $new_item_amount; - } - //$investigation_ids[] = $ids[$i]; - //$investigation_amounts[] = $item->patient_amount_paid; - } - else if($inv_category == 4){ - - $category = get_name($inv_category, 'id', 'name', 'investigation_categories'); - - array_push($inv_x_ray, array("investigation"=>"labs","item"=>$ids[$i], "receipt_number"=>$item->receipt_number,"date"=>$item->created_at, - "patient_amount_paid"=>$item->patient_amount_paid, "cost_price"=>$items[$i], 'patient_id'=>$item->patient_id, 'category'=>$category, - "category_id"=>$inv_category)); - - //$investigation_id_and_amount_array[$ids[$i]] = $item->patient_amount_paid; - $new_item_amount = $items[$i]; - if (array_key_exists($ids[$i], $investigation_id_and_amount_array)) { - $existing_amount = $investigation_id_and_amount_array[$ids[$i]]; - $investigation_id_and_amount_array[$ids[$i]] = $new_item_amount + $existing_amount; - } else { - $investigation_id_and_amount_array[$ids[$i]] = $new_item_amount; - } - //$investigation_ids[] = $ids[$i]; - //$investigation_amounts[] = $item->patient_amount_paid; - } - else { - $category = get_name($inv_category, 'id', 'name', 'investigation_categories'); - - array_push($inv_ultrasound, array("investigation"=>"labs","item"=>$ids[$i], "receipt_number"=>$item->receipt_number,"date"=>$item->created_at, - "patient_amount_paid"=>$item->patient_amount_paid, "cost_price"=>$items[$i], 'patient_id'=>$item->patient_id, 'category'=>$category, - "category_id"=>$inv_category)); - - //$investigation_id_and_amount_array[$ids[$i]] = $item->patient_amount_paid; - $new_item_amount = $items[$i]; - if (array_key_exists($ids[$i], $investigation_id_and_amount_array)) { - $existing_amount = $investigation_id_and_amount_array[$ids[$i]]; - $investigation_id_and_amount_array[$ids[$i]] = $new_item_amount + $existing_amount; - } else { - $investigation_id_and_amount_array[$ids[$i]] = $new_item_amount; - } - //$investigation_ids[] = $ids[$i]; - //$investigation_amounts[] = $item->patient_amount_paid; - } - } - } - } - $two_elements_array = [$investigation_ids,$investigation_amounts]; - return $investigation_id_and_amount_array; - //return $two_elements_array; - } -} diff --git a/docker/statistics/Modules/Finance/Http/Controllers/EquityController.php b/docker/statistics/Modules/Finance/Http/Controllers/EquityController.php deleted file mode 100755 index 0a2d4d9d..00000000 --- a/docker/statistics/Modules/Finance/Http/Controllers/EquityController.php +++ /dev/null @@ -1,200 +0,0 @@ -paginate(1000); - - return view('finance::equity.index', compact('equities')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - $banks = ChartOfAccount::where('type', 4)->orderBy('name', 'asc')->pluck('name', 'id')->prepend('- select -', '')->toArray(); - $chart_of_accounts = ChartOfAccount::where('type', 5)->orderBy('name', 'asc')->pluck('name', 'id')->prepend('- select -', '')->toArray(); - - return view('finance::equity.create', compact('chart_of_accounts', 'banks')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - $validator = Validator::make($request->all(), [ - 'name' => 'required', - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth::user()->id; - - $trans_id = generateReceiptNumberFromDB('Equity Deposit to bank account'); - - $equity = new Equity; - - $equity->name = $request->name; - $equity->amount = $request->amount; - $equity->account_id = $request->account_id; - $equity->deposit_to = $request->deposit_to; - $equity->deposit_date = $request->deposit_date; - $equity->created_by = $logged_in_user_id; - $equity->updated_by = $logged_in_user_id; - - $equity->save(); - - $current_bank_balance = Banking::where('bank', $request->deposit_to)->latest()->first(); - $balance_after_addition = (int)$current_bank_balance->account_balance + (int)$request->amount; - - capture_bank_record('DEPOSIT', Carbon::parse($request->deposit_date)->toDateString(), $request->deposit_to, - $request->account_id, $balance_after_addition, $request->amount, 0, $request->amount, $trans_id); - - flash($request->name . " Equity has been saved")->success(); - return redirect("/equities/"); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $equity = Equity::where(['id' => $id])->first(); - $banks = ChartOfAccount::where('type', 4)->orderBy('name', 'asc')->pluck('name', 'id')->prepend('- select -', '')->toArray(); - $chart_of_accounts = ChartOfAccount::where('type', 5)->orderBy('name', 'asc')->pluck('name', 'id')->prepend('- select -', '')->toArray(); - - if (!$equity) { - flash()->error("There is no such equity"); - return redirect('/equities/'); - } else { - return view('finance::equity.edit', compact('equity', 'chart_of_accounts', 'banks')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - $validator = Validator::make($request->all(), [ - 'name' => 'required', - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth::user()->id; - - $equity = Equity::find($id); - $equity->name = $request->name; - $equity->amount = $request->amount; - $equity->account_id = $request->account_id; - $equity->updated_by = $logged_in_user_id; - - try { - $equity->save(); - flash($request->name . " Equity has been updated")->success(); - return redirect("/equities/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $equity = Equity::find($id); - - if ($equity->delete()): - flash("Equity has been deleted.")->success(); - return redirect('/equities/'); - endif; - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - - $equities = Equity::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($equities) < 1) { - flash()->error("There is no inactive equity"); - return redirect('/equities/'); - } else { - return view('finance::equity.inactive', compact('equities')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $equity = Equity::withTrashed()->find($id); - - if ($equity->restore()): - flash("Equity has been activated.")->success(); - return redirect('/equities/inactive'); - endif; - } - -} diff --git a/docker/statistics/Modules/Finance/Http/Controllers/FinanceController.php b/docker/statistics/Modules/Finance/Http/Controllers/FinanceController.php deleted file mode 100755 index 04ca587e..00000000 --- a/docker/statistics/Modules/Finance/Http/Controllers/FinanceController.php +++ /dev/null @@ -1,77 +0,0 @@ -clinic_id; - $search_by = $request->search_by; - - $patient_categories = DB::table('patient_categories')->pluck("name", "id"); - - $filters = []; - if($search_by == 0){ - $start_date = Carbon::now()->startOfDay()->toDateTimeString(); - $end_date = Carbon::now()->endOfDay()->toDateTimeString(); - } elseif ($search_by == 1) { - $start_date = Carbon::now()->subDay()->startOfDay()->toDateTimeString(); - $end_date = Carbon::now()->subDay()->endOfDay()->toDateTimeString(); - } elseif ($search_by == 2) { - $start_date = Carbon::parse($request->reg_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->reg_date)->endOfDay()->toDateTimeString(); - } elseif ($search_by ==3) { - // custom date range - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - } else { - $start_date = Carbon::now()->toDateTimeString(); - $end_date = Carbon::now()->toDateTimeString(); - } - - if ($clinic_id != 0) { - $filters[] = ['patient_episodes.clinic_id', '=', $clinic_id]; - } - - if (is_numeric($request->patient_number)) { - $filters[] = ['patient_episodes.patient_id', '=', $request->patient_number]; - $start_date = Carbon::now()->startOfCentury()->toDateTimeString(); - $end_date = Carbon::now()->endOfDay()->toDateTimeString(); - } - - $patient_episodes = DB::table('patient_episodes') - ->leftJoin('patients', 'patients.id', '=', 'patient_episodes.patient_id') - ->leftJoin('treatments', 'treatments.episode_id', '=', 'patient_episodes.id') - ->leftJoin('ordered_procedures', 'ordered_procedures.episode_id', '=', 'patient_episodes.id') - ->leftJoin('ordered_investigations', 'ordered_investigations.episode_id', '=', 'patient_episodes.id') - ->leftJoin('ordered_sundries', 'ordered_sundries.episode_id', '=', 'patient_episodes.id') - ->leftJoin('ordered_services', 'ordered_services.episode_id', '=', 'patient_episodes.id') - ->where($filters) - ->groupBy('patient_episodes.id') - ->whereBetween('patient_episodes.created_at', [$start_date, $end_date]) - ->select('patient_episodes.id as episode_id', 'patient_episodes.patient_id', 'patients.first_name', 'patients.last_name', 'patients.date_of_birth', 'patients.number', - 'patients.phone', 'patients.category_id', - 'treatments.id as treatment_id', 'treatments.payment_status as treatment_payment_status', 'treatments.inpatient_bill_generated as treatment_is_inpatient', - 'ordered_procedures.id as procedure_id', 'ordered_procedures.payment_status as procedures_payment_status', 'ordered_procedures.inpatient_bill_generated as procedures_is_inpatient', - 'ordered_investigations.id as investigation_id', 'ordered_investigations.payment_status as investigation_payment_status', 'ordered_investigations.inpatient_bill_generated as invs_is_inpatient', - 'ordered_sundries.id as sundries_id', 'ordered_sundries.payment_status as sundries_payment_status', 'ordered_sundries.inpatient_bill_generated as sundry_is_inpatient', - 'ordered_services.id as service_id', 'ordered_services.payment_status as service_payment_status', 'ordered_services.inpatient_bill_generated as service_is_inpatient') - ->get(); - - $clinics = DB::table("clinics")->whereNull("deleted_at")->orderBy("name")->pluck("name", "id")->toArray(); - $clinics = [0 => 'OPD'] + ['' => '- select -'] + $clinics; - - return view('finance::finance.incoming_opd_payments', compact('patient_categories', 'clinics', 'patient_episodes')); - } -} diff --git a/docker/statistics/Modules/Finance/Http/Controllers/FixedAssetsController.php b/docker/statistics/Modules/Finance/Http/Controllers/FixedAssetsController.php deleted file mode 100755 index 796d4c45..00000000 --- a/docker/statistics/Modules/Finance/Http/Controllers/FixedAssetsController.php +++ /dev/null @@ -1,635 +0,0 @@ -middleware('auth'); - $this->middleware('permission:fixed-assets-list', ['only' => ['index']]); - $this->middleware('permission:create-fixed-assets', ['only' => ['create', 'store']]); - $this->middleware('permission:edit-fixed-assets', ['only' => ['edit', 'update']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() - { - $fixed_assets = FixedAsset::orderBy('name', 'asc')->get(); - $suppliers = DB::table('suppliers')->where('available', 1)->pluck("name", "id"); - return view('finance::fixed_assets.index', compact('fixed_assets', 'suppliers')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - $suppliers = Supplier::where('available', 1)->pluck('name', 'id')->toArray(); - $suppliers = ['' => '- select -'] + $suppliers; - $fixed_asset_chart_of_accounts = ChartOfAccount::where(['type' => 3])->pluck('name', 'id')->toArray();/*4-fixed asset*/ - $fixed_asset_chart_of_accounts = ['' => '- select -'] + $fixed_asset_chart_of_accounts; - $bank_chart_of_accounts = ChartOfAccount::where(['type' => 4])->pluck('name', 'id')->toArray();/*3-bank*/ - $bank_chart_of_accounts = ['' => '- select -'] + $bank_chart_of_accounts; - $payable_accounts = ChartOfAccount::whereIn('type', [6, 9])->pluck('name', 'id')->toArray(); - - return view('finance::fixed_assets.create', compact('suppliers', 'fixed_asset_chart_of_accounts', 'bank_chart_of_accounts', 'payable_accounts')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - $validator = Validator::make($request->all(), [ - 'acquisition_date' => 'required', - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - - $fixed_asset = new FixedAsset; - $fixed_asset->name = $request->name; - $fixed_asset->serial_number = $request->serial_number; - $fixed_asset->cost_price = $request->cost_price; - $fixed_asset->acquisition_date = $acquisition_date = $request->acquisition_date != null ? Carbon::createFromFormat('d-m-Y', $request->acquisition_date)->toDateString() : null; - $fixed_asset->item_condition = $request->item_condition; - $fixed_asset->depreciation = $request->depreciation; - $fixed_asset->supplier_id = $request->supplier; - $fixed_asset->fixed_asset_account_id = $request->fixed_asset_account; - $fixed_asset->warranty_expiration_date = $request->warranty_expiration_date != null ? Carbon::createFromFormat('d-m-Y', $request->warranty_expiration_date)->toDateString() : null; - $fixed_asset->bank_account_id = $request->bank_account_id; - $fixed_asset->description = $request->description; - $fixed_asset->payment_type = $request->payment_type; - $fixed_asset->created_by = Auth::id(); - - if ($fixed_asset->save()) { - - if ($request->payment_type == 'cash') : - - $current_bank_balance = get_latest_banking_record_based_on_transaction_date($request->bank_account_id, getTodayCarbon()->toDateString()); - - if (!is_null($current_bank_balance)) : - - $balance_after_deduction = (int)$current_bank_balance->account_balance - (int)$request->amount_paid; - $track_receipt = new TrackReceipt; - $track_receipt->created_by = Auth::id(); - $track_receipt->reason = 'Fixed Asset Purchase'; - $track_receipt->save(); - $trans_id = sprintf("%04u", $track_receipt->id); - - $last_insert_id_from_account = capture_bank_record( - 'PAYMENT', - $acquisition_date, - $request->bank_account_id, - $request->fixed_asset_account, - $balance_after_deduction, - 0, - $request->cost_price, - 'Fixed Asset Purchase', - $trans_id - ); - - $fixed_asset->banking_id = $last_insert_id_from_account; - $fixed_asset->save(); - - //update running bank balance - update_banking_record_balances($acquisition_date, $request->bank_account_id, $last_insert_id_from_account, $balance_after_deduction); - - if ($request->balance > 0) : - // track the invoice - $track_invoice = new TrackInvoice; - $track_invoice->reason = (!is_null($request->description) ? $request->description : "Fixed Assets Creation"); - $track_invoice->created_by = Auth::id(); - $track_invoice->save(); - $invoice_number = sprintf("%04u", $track_invoice->id); - - $bill = new HospitalBill; - $bill->vendor = $request->supplier; - $bill->bill_date = $acquisition_date; - $bill->bill_memo = $request->description; - $bill->bill_number = $invoice_number; - $bill->total_amount = $request->balance; - $bill->item_ids = $fixed_asset->id; - $bill->item_accounts = $request->fixed_asset_account; - $bill->item_quantities = 1; - $bill->item_subtotals = $request->balance; - $bill->payable_account = $request->payable_account; - $bill->account_type = 3; - $bill->created_by = Auth::id(); - $bill->bill_type = 'ASSETS'; - - $bill->balance_history = serialize(array()); - $bill->receipt_history = serialize(array()); - $bill->staff_incharge_history = serialize(array()); - $bill->amount_paid_history = serialize(array()); - $bill->date_paid_history = serialize(array()); - - $bill->save(); - endif; - - else : - - flash('error occured. contact system admin')->error(); - return redirect()->back()->withInput(); - endif; - - elseif ($request->payment_type == 'bill') : - // track the invoice - $track_invoice = new TrackInvoice; - $track_invoice->reason = (!is_null($request->description) ? $request->description : "Fixed Assets Creation"); - $track_invoice->created_by = Auth::id(); - $track_invoice->save(); - $invoice_number = sprintf("%04u", $track_invoice->id); - - $bill = new HospitalBill; - $bill->vendor = $request->supplier; - $bill->bill_date = $acquisition_date; - $bill->bill_memo = $request->description; - $bill->bill_number = $invoice_number; - $bill->total_amount = $request->cost_price; - $bill->item_ids = $fixed_asset->id; - $bill->item_accounts = $request->fixed_asset_account; - $bill->item_quantities = 1; - $bill->item_subtotals = $request->cost_price; - $bill->payable_account = $request->payable_account; - $bill->account_type = 3; - $bill->created_by = Auth::id(); - $bill->bill_type = 'ASSETS'; - - $bill->balance_history = serialize(array()); - $bill->receipt_history = serialize(array()); - $bill->staff_incharge_history = serialize(array()); - $bill->amount_paid_history = serialize(array()); - $bill->date_paid_history = serialize(array()); - - $bill->save(); - - elseif ($request->payment_type == 'asset_exists') : - // Update the opening_fixed_assets Equity Account - $opening_fixed_assets = ChartOfAccount::where(['slug' => 'opening_fixed_assets'])->first(); - $opening_fixed_assets_balance = $opening_fixed_assets->balance; - $opening_fixed_assets->balance = $opening_fixed_assets_balance + $request->cost_price; - $opening_fixed_assets->updated_by = Auth::id(); - $opening_fixed_assets->update(); - - $equity = new Equity; - $equity->name = $fixed_asset->name; - $equity->amount = $request->cost_price; - $equity->account_id = $opening_fixed_assets->id; - $equity->created_by = Auth::id(); - $equity->updated_by = Auth::id(); - $equity->save(); - endif; - - flash($fixed_asset->name . ' has been saved')->success(); - return redirect('fixed_assets'); - } - flash('error occured. contact system admin')->error(); - return redirect()->back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) - { - $fixed_asset = FixedAsset::find($id); - $suppliers = Supplier::where('available', 1)->pluck('name', 'id')->toArray(); - $suppliers = ['' => '- select -'] + $suppliers; - $fixed_asset_chart_of_accounts = ChartOfAccount::where(['type' => 3])->pluck('name', 'id')->toArray();/*4-fixed asset*/ - $fixed_asset_chart_of_accounts = ['' => '- select -'] + $fixed_asset_chart_of_accounts; - $bank_chart_of_accounts = ChartOfAccount::where(['type' => 4])->pluck('name', 'id')->toArray();/*3-bank*/ - $bank_chart_of_accounts = ['' => '- select -'] + $bank_chart_of_accounts; - $payable_accounts = ChartOfAccount::whereIn('type', [6, 9])->pluck('name', 'id')->toArray(); - - return view('finance::fixed_assets.edit', compact('suppliers', 'fixed_asset_chart_of_accounts', 'bank_chart_of_accounts', 'fixed_asset', 'payable_accounts')); - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - $validator = Validator::make($request->all(), [ - 'acquisition_date' => 'required', - 'warranty_expiration_date' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - //1. check if payment type's been edited - //2. if it is a bill, ensure that the bill does not have a payment else reject - //3. if already existing, do adjustments in equities - //4. if cash, check if all was paid then check for the bill created for unpaid balance - $hospital_bill = null; - if ($request->edit_payment_type == 1) { - $hospital_bill = HospitalBill::where(['item_ids' => $id, 'bill_type' => 'ASSETS'])->first(); - - $amount_paid_history_array = unserialize($hospital_bill->amount_paid_history); - if (count($amount_paid_history_array) > 0) { - //bill has a paid payment so can not be edited - flash('Bill has some payments so first undo the payments')->error(); - return redirect()->back()->withInput(); - } - } - //dd($request->all()); - $acquisition_date = Carbon::parse($request->acquisition_date)->toDateString(); - - $fixed_asset = FixedAsset::find($id); - - $previous_acquisition_date = $fixed_asset->acquisition_date; - $previous_asset_name = $fixed_asset->name; - $previous_bank_account_id = $fixed_asset->bank_account_id; - $previous_cost_price = $fixed_asset->cost_price; - $previous_asset_account = $fixed_asset->fixed_asset_account_id; - - $fixed_asset->name = $request->name; - $fixed_asset->serial_number = $request->serial_number; - $fixed_asset->cost_price = $request->cost_price; - $fixed_asset->acquisition_date = $acquisition_date; - $fixed_asset->item_condition = $request->item_condition; - $fixed_asset->supplier_id = $request->supplier; - $fixed_asset->depreciation = $request->depreciation; - $fixed_asset->fixed_asset_account_id = $request->fixed_asset_account; - $fixed_asset->warranty_expiration_date = Carbon::parse($request->warranty_expiration_date)->toDateString(); - $fixed_asset->bank_account_id = $request->bank_account_id; - $fixed_asset->description = $request->description; - $fixed_asset->created_by = Auth::id(); - - //if the payment has been edited then we do - if ($request->edit_payment_type == 1) { - //payment type has not changed so handle accordingly - if ($fixed_asset->payment_type == $request->payment_type) { - # if it has a bill or bank and has no payment then adjust amount, if exisiting asset adjust the equity - if ($fixed_asset->payment_type == "bill") { - // track the invoice - $track_invoice = new TrackInvoice; - $track_invoice->reason = (!is_null($request->description) ? $request->description : "Fixed Assets Creation"); - $track_invoice->created_by = Auth::id(); - $track_invoice->save(); - $invoice_number = sprintf("%04u", $track_invoice->id); - - $bill = HospitalBill::where(['item_ids' => $id, 'bill_type' => 'ASSETS'])->first(); - $bill->vendor = $request->supplier; - $bill->bill_date = $fixed_asset->acquisition_date; - $bill->bill_memo = $request->description; - $bill->bill_number = $invoice_number; - $bill->total_amount = $request->balance; - $bill->item_ids = $fixed_asset->id; - $bill->item_accounts = $request->fixed_asset_account; - $bill->item_quantities = 1; - $bill->item_subtotals = $request->balance; - $bill->payable_account = $request->payable_account; - $bill->account_type = 3; - $bill->created_by = Auth::id(); - $bill->bill_type = 'ASSETS'; - - $bill->balance_history = serialize(array()); - $bill->receipt_history = serialize(array()); - $bill->staff_incharge_history = serialize(array()); - $bill->amount_paid_history = serialize(array()); - $bill->date_paid_history = serialize(array()); - $bill->save(); - } elseif ($fixed_asset->payment_type == "cash" && ($fixed_asset->cost_price != $previous_cost_price)) { - //but first check it the money has changed - $banking_record = Banking::where(["bank" => $previous_bank_account_id, "debit" => $previous_cost_price, "memo" => "Fixed Asset Purchase", "trans_date" => $previous_acquisition_date])->first(); - - if ($banking_record) { - $banking_record->trans_date = $acquisition_date; - $banking_record->bank = $request->bank_account_id; - $banking_record->credit = $request->amount_paid; - $current_bank_balance_record = get_latest_banking_record_based_on_transaction_date($request->bank_account_id, getTodayCarbon()->toDateString()); - $balance_after_deduction = is_null($current_bank_balance_record) ? 0 : (int)$current_bank_balance_record->account_balance - (int)$request->amount_paid; - $banking_record->account_balance = $balance_after_deduction; - $banking_record->update(); - } - - //remember to re-calculate the running balance of this bank - update_banking_record_balances($acquisition_date, $request->bank_account_id, $banking_record, $balance_after_deduction); - - // track the invoice - $track_invoice = new TrackInvoice; - $track_invoice->reason = (!is_null($request->description) ? $request->description : "Fixed Assets Creation"); - $track_invoice->created_by = Auth::id(); - $track_invoice->save(); - $invoice_number = sprintf("%04u", $track_invoice->id); - - //If the balance is more, find existing bill and adjust figures or create a new bill - $hospital_bill = HospitalBill::where(['item_ids' => $id,'bill_type'=>'ASSETS'])->first(); - $bill = is_null($hospital_bill) ? new HospitalBill : $hospital_bill; - - $bill->vendor = $request->supplier; - $bill->bill_date = $acquisition_date; - $bill->bill_memo = $request->description; - $bill->bill_number = $invoice_number; - $bill->total_amount = $request->balance; - $bill->item_ids = $fixed_asset->id; - $bill->item_accounts = $request->fixed_asset_account; - $bill->item_quantities = 1; - $bill->item_subtotals = $request->balance; - $bill->payable_account = $request->payable_account; - $bill->account_type = 3; - $bill->created_by = Auth::id(); - $bill->bill_type = 'ASSETS'; - - $bill->balance_history = serialize(array()); - $bill->receipt_history = serialize(array()); - $bill->staff_incharge_history = serialize(array()); - $bill->amount_paid_history = serialize(array()); - $bill->date_paid_history = serialize(array()); - - $bill->save(); - } elseif ($fixed_asset->payment_type == "asset_exists") { - $equity = Equity::where(['account_id' => $previous_asset_account, 'name' => $previous_asset_name, 'amount' => $previous_cost_price])->first(); - - // Update the opening_fixed_assets Equity Account - $opening_fixed_assets = ChartOfAccount::where(['slug' => 'opening_fixed_assets'])->first(); - $opening_fixed_assets_balance = $opening_fixed_assets->balance; - $opening_fixed_assets->balance = $opening_fixed_assets_balance + $request->cost_price; - $opening_fixed_assets->updated_by = Auth::id(); - $opening_fixed_assets->update(); - - $equity->name = $fixed_asset->name; - $equity->amount = $request->cost_price; - $equity->account_id = $opening_fixed_assets->id; - $equity->updated_by = Auth::id(); - $equity->save(); - } - } - - //payment type has changed deal with new payment type and old payment type too - else { - // if the previous payment type is bill and the payment type has changed then delete the bill - if ($fixed_asset->payment_type == "bill") { - $hospital_bill->delete(); - } - - // if previous payment was already existing and payment has changed then delete equity and update chart of account with deduction - if ($fixed_asset->payment_type == "asset_exists") { - $equity = Equity::where(['account_id' => $previous_asset_account, 'name' => $previous_asset_name, 'amount' => $previous_cost_price])->first(); - $equity->delete(); - - $opening_fixed_assets = ChartOfAccount::where(['slug' => 'opening_fixed_assets'])->first(); - $opening_fixed_assets->balance = $opening_fixed_assets->balance - $fixed_asset->cost_price; - $opening_fixed_assets->updated_by = Auth::id(); - $opening_fixed_assets->update(); - } - - //if previous payment was cash and payment has changed then increase the balance of the bank the asset was paid from - if ($fixed_asset->payment_type == "cash") { - $track_receipt = new TrackReceipt; - $track_receipt->created_by = Auth::id(); - $track_receipt->reason = 'Fixed Asset Purchase Edit'; - $track_receipt->save(); - $trans_id = sprintf("%04u", $track_receipt->id); - - $current_bank_balance = get_latest_banking_record_based_on_transaction_date($previous_bank_account_id, getTodayCarbon()->toDateString()); - if (!is_null($current_bank_balance)) : - - $balance_after_addition = (int)$current_bank_balance->account_balance + (int)$fixed_asset->amount_paid; - endif; - - $last_insert_id_from_account = capture_bank_record( - 'DEPOSIT', - $fixed_asset->acquisition_date, - $previous_bank_account_id, - $fixed_asset->fixed_asset_account_id, - $balance_after_addition, - $previous_cost_price, - 0, - 'Fixed Asset Purchase Edit', - $trans_id - ); - - update_banking_record_balances($fixed_asset->acquisition_date, $previous_bank_account_id, $last_insert_id_from_account, $balance_after_addition); - } - - //deal with the new selected payment type - if ($request->payment_type == 'cash') : - - $current_bank_balance = get_latest_banking_record_based_on_transaction_date($request->bank_account_id, getTodayCarbon()->toDateString()); - - if (!is_null($current_bank_balance)) : - - $balance_after_deduction = (int)$current_bank_balance->account_balance - (int)$request->amount_paid; - $track_receipt = new TrackReceipt; - $track_receipt->created_by = Auth::id(); - $track_receipt->reason = 'Fixed Asset Purchase'; - $track_receipt->save(); - $trans_id = sprintf("%04u", $track_receipt->id); - - $last_insert_id_from_account = capture_bank_record( - 'PAYMENT', - $fixed_asset->acquisition_date, - $request->bank_account_id, - $request->fixed_asset_account, - $balance_after_deduction, - 0, - $request->cost_price, - 'Fixed Asset Purchase', - $trans_id - ); - - update_banking_record_balances($fixed_asset->acquisition_date, $request->bank_account_id, $last_insert_id_from_account, $balance_after_deduction); - - if ($request->balance > 0) : - // track the invoice - $track_invoice = new TrackInvoice; - $track_invoice->reason = (!is_null($request->description) ? $request->description : "Fixed Assets Creation"); - $track_invoice->created_by = Auth::id(); - $track_invoice->save(); - $invoice_number = sprintf("%04u", $track_invoice->id); - - $bill = new HospitalBill; - $bill->vendor = $request->supplier; - $bill->bill_date = $fixed_asset->acquisition_date; - $bill->bill_memo = $request->description; - $bill->bill_number = $invoice_number; - $bill->total_amount = $request->balance; - $bill->item_ids = $fixed_asset->id; - $bill->item_accounts = $request->fixed_asset_account; - $bill->item_quantities = 1; - $bill->item_subtotals = $request->balance; - $bill->payable_account = $request->payable_account; - $bill->account_type = 3; - $bill->created_by = Auth::id(); - $bill->bill_type = 'ASSETS'; - - $bill->balance_history = serialize(array()); - $bill->receipt_history = serialize(array()); - $bill->staff_incharge_history = serialize(array()); - $bill->amount_paid_history = serialize(array()); - $bill->date_paid_history = serialize(array()); - - $bill->save(); - endif; - - else : - - flash('error occured. contact system admin')->error(); - return redirect()->back()->withInput(); - endif; - - elseif ($request->payment_type == 'asset_exists') : - // Update the opening_fixed_assets Equity Account - $opening_fixed_assets = ChartOfAccount::where(['slug' => 'opening_fixed_assets'])->first(); - $opening_fixed_assets_balance = $opening_fixed_assets->balance; - $opening_fixed_assets->balance = $opening_fixed_assets_balance + $request->cost_price; - $opening_fixed_assets->updated_by = Auth::id(); - $opening_fixed_assets->update(); - - $equity = new Equity; - $equity->name = $fixed_asset->name; - $equity->amount = $request->cost_price; - $equity->account_id = $opening_fixed_assets->id; - $equity->created_by = Auth::id(); - $equity->updated_by = Auth::id(); - $equity->save(); - endif; - } - } - - if ($fixed_asset->update()) { - flash($fixed_asset->name . ' has been updated')->success(); - return redirect('fixed_assets'); - } - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - */ - public function destroy($id) - { - $fixed_asset = FixedAsset::find($id); - - $bill = HospitalBill::where(['item_ids' => $id, 'bill_type' => 'ASSETS'])->first(); - - if ($bill) { - if (is_null($bill->balance)) { - # no money has been paid on this bill so delete it - $bill->delete(); - } elseif ($bill->total_amount > 0) { - # reverse the partial payment back to the respective bank then delete the bill - $payments = Payment::where('bill_id', $bill->id)->get(); - - foreach ($payments as $payment) { - $delete_result = delete_hospital_bill_payment($payment->id); - } - - # finally the bill with the fixed asset - $bill->delete(); - } - } - - if ($fixed_asset->payment_type == 'cash') { - if (is_null($fixed_asset->banking_id)) { - $current_bank_balance = get_latest_banking_record_based_on_transaction_date($fixed_asset->bank_account_id, getTodayCarbon()->toDateString()); - - if (!is_null($current_bank_balance)) { - $balance_after_deduction = (int)$current_bank_balance->account_balance + (int)$fixed_asset->cost_price; - - $track_receipt = new TrackReceipt; - $track_receipt->created_by = Auth::id(); - $track_receipt->reason = 'Fixed Asset Purchase Deletion'; - $track_receipt->save(); - $trans_id = sprintf("%04u", $track_receipt->id); - - $last_insert_id = capture_bank_record('DEPOSIT', getTodayCarbon()->toDateString(), $fixed_asset->bank_account_id, $fixed_asset->fixed_asset_account_id, - $balance_after_deduction, $fixed_asset->cost_price, 0, 'Fixed Asset Purchase Deletion', $trans_id); - - update_banking_record_balances(date('Y-m-d'), $fixed_asset->bank_account_id, $last_insert_id, $balance_after_deduction); - } - } else { - $bank_record = Banking::find($fixed_asset->banking_id); - - if ($bank_record) { - $bank_record->account_balance = $bank_record->account_balance + $fixed_asset->cost_price; - $bank_record->debit = 0; - $bank_record->update(); - - update_banking_record_balances($bank_record->trans_date, $fixed_asset->bank_account_id, $fixed_asset->banking_id, $bank_record->account_balance); - } - } - } - - if ($fixed_asset->delete()) { - flash($fixed_asset->name . ' has been deleted')->success(); - return redirect('fixed_assets'); - } - - return redirect()->back()->withInput(); - } - - public function is_fixed_asset_attached_to_bill(Request $request) - { - $fixed_asset = FixedAsset::find($request->fixed_asset_id); - - $bill = HospitalBill::where(['item_ids' => $fixed_asset->id, 'bill_type' => 'ASSETS'])->first(); - - if ($bill) { - if ($bill->total_amount > 0) { - return "has_attached_bill"; - } - } - - return "no_attached_bill"; - } -} diff --git a/docker/statistics/Modules/Finance/Http/Controllers/MarkupTagController.php b/docker/statistics/Modules/Finance/Http/Controllers/MarkupTagController.php deleted file mode 100755 index 955e7eda..00000000 --- a/docker/statistics/Modules/Finance/Http/Controllers/MarkupTagController.php +++ /dev/null @@ -1,281 +0,0 @@ -get(); - return view('finance::markup_tags.index',compact('markup_tags')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - return view('finance::markup_tags.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $markup = new MarkupTag; - $markup->name = $request->name; - $markup->percentage = $request->percentage; - $markup->created_by = auth()->user()->id; - if ($markup->save()) { - flash('successfully saved markup')->success(); - return redirect('markup_tag'); - } - flash('Error in saving new markup. Contact system admin')->error(); - return redirect()->back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) - { - $tag = MarkupTag::find($id); - - if (!$tag) { - flash()->error("There is no such bed category"); - return redirect('markup_tag'); - } else { - return view('finance::markup_tags.edit', compact('tag')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - $tag = MarkupTag::find($id); - $tag->update($request->all()); - flash('successfully updated details for '.$tag->name)->success(); - return redirect('markup_tag'); - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - $tag = MarkupTag::find($id); - if ($tag->delete()) { - flash($tag->name. ' has been successfully deleted')->success(); - return redirect('markup_tag'); - } - flash('error occurred. Contact system admin')->error(); - return redirect()->back()->withInput(); - } - - /* - *Display inactive markup - */ - public function inactive() - { - $tags = MarkupTag::onlyTrashed()->orderBy('name','asc')->paginate(50); - - if (count($tags) < 1) { - flash()->error("There is no inactive occupation"); - return redirect('markup_tag'); - } else { - return view('finance::markup_tags.inactive', compact('tags')); - } - } - - /* - * Activate an inactive - */ - public function activate($id) - { - $tag = MarkupTag::withTrashed()->find($id); - - if ($tag->restore()): - flash("Tag has been activated.")->success(); - return redirect('/inactive/markup_tag/'); - endif; - } - - /* Add markups to drugs */ - public function add_markups_to_drugs(Request $request) - { - $tags = MarkupTag::orderBy('name', 'asc')->get(); - $tags_select = MarkupTag::pluck('name','id')->toArray(); - $tags_select = ['' => '- Select Markup -'] + $tags_select; - $drugs = DB::table('drugs')->where('available', 1)->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - $tags_array = MarkupTag::pluck('name','id')->toArray(); - $names_array = Drug::where('available', 1)->orderby('name')->distinct()->pluck('name'); - return view('finance::markup_tags.add_markups_to_drugs', compact('tags','tags_select','drugs','tags_array','names_array')); - } - - /* Apply mark ups to drugs */ - public function update_mark_up_to_drug(Request $request) - { - $markup_tag_id = $request->markup_tag; - $markup_tag = MarkupTag::find($markup_tag_id); - if (!is_null($markup_tag)) { - $markup_percentage = $markup_tag->percentage; - - //use the markup percentage to calculate and set the selling price of the checked drugs - $checked_drug_array = $request->checked_drug; - for ($i=0; $i < count($checked_drug_array) ; $i++) { - $drug = Drug::find($checked_drug_array[$i]); - if (!is_null($drug)) { - if ($drug->cost_price != 0) { /* add this to avoid */ - $markup = ($markup_percentage/100) * $drug->cost_price; - $selling_price = $drug->cost_price + $markup; - $drug->non_insured_price = $selling_price; - $drug->markup_tag_id = $markup_tag_id; - $price_has_been_updated = $drug->update(); - } - } - } - } - - if (isset($price_has_been_updated)) { - flash("Drug selling prices have been updated with the new markup")->success(); - return redirect('stores'); - } - - flash("Something went wrong. Contact your IT personel for help")->error(); - return redirect()->back()->withInput(); - } - - /* drug search */ - public function drug_markup_search(Request $request) - { - $drugs = DB::select("select * from drugs where deleted_at IS NULL AND name like '%".$request->drug_name."%' ORDER BY name ASC"); - $names_array = Drug::where('available', 1)->orderby('name')->distinct()->pluck('name'); - $tags = MarkupTag::orderBy('name', 'asc')->get(); - $tags_select = MarkupTag::pluck('name','id')->toArray(); - $tags_select = ['' => '- Select Markup -'] + $tags_select; - //$drugs = DB::table('drugs')->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - $tags_array = MarkupTag::pluck('name','id')->toArray(); - - return view('finance::markup_tags.add_markups_to_drugs', compact('names_array','tags','tags_select','drugs','tags_array')); - } - - /* view drugs of selected markup tag */ - public function view_markup_drugs($id) - { - $drugs = Drug::where('markup_tag_id',$id)->orderBy('name')->get(); - $tag = MarkupTag::find($id); - return view('finance::markup_tags.view_drugs_of_a_markup', compact('drugs','tag')); - } - - /* Add markups to sundries */ - public function add_markups_to_sundries(Request $request) - { - $tags = MarkupTag::orderBy('name', 'asc')->get(); - $tags_select = MarkupTag::pluck('name','id')->toArray(); - $tags_select = ['' => '- Select Markup -'] + $tags_select; - $sundries = DB::table('sundries')->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - $tags_array = MarkupTag::pluck('name','id')->toArray(); - $names_array = Sundry::where('available', 1)->orderby('name')->distinct()->pluck('name'); - return view('finance::markup_tags.add_markups_to_sundries', compact('tags','tags_select','sundries','tags_array','names_array')); - } - - /* Apply mark ups to sundries */ - public function update_mark_up_to_sundry(Request $request) - { - $markup_tag_id = $request->markup_tag; - $markup_tag = MarkupTag::find($markup_tag_id); - if (!is_null($markup_tag)) { - $markup_percentage = $markup_tag->percentage; - - //use the markup percentage to calculate and set the selling price of the checked sundries - $checked_sundry_array = $request->checked_sundry; - for ($i=0; $i < count($checked_sundry_array) ; $i++) { - $sundry = Sundry::find($checked_sundry_array[$i]); - if (!is_null($sundry)) { - if ($sundry->cost_price != 0) { /* add this to avoid division by zero */ - $markup = ($markup_percentage/100) * $sundry->cost_price; - $selling_price = $sundry->cost_price + $markup; - $sundry->non_insured_price = $selling_price; - $sundry->markup_tag_id = $markup_tag_id; - $price_has_been_updated = $sundry->update(); - } - } - } - } - - if (isset($price_has_been_updated)) { - flash("Sundry selling prices have been updated with the new markup")->success(); - return redirect('sundries_stock_sheet'); - } - - flash("Make sure the cost price is not 0 else something went wrong. Contact your IT personel for help")->error(); - return redirect()->back()->withInput(); - } - - /* sundry search */ - public function sundry_markup_search(Request $request) - { - $sundries = DB::select("select * from sundries where deleted_at IS NULL AND name like '%".$request->sundry_name."%' ORDER BY name ASC"); - $names_array = Sundry::where('available', 1)->orderby('name')->distinct()->pluck('name'); - $tags = MarkupTag::orderBy('name', 'asc')->get(); - $tags_select = MarkupTag::pluck('name','id')->toArray(); - $tags_select = ['' => '- Select Markup -'] + $tags_select; - $tags_array = MarkupTag::pluck('name','id')->toArray(); - - return view('finance::markup_tags.add_markups_to_sundries', compact('names_array','tags','tags_select','sundries','tags_array')); - } -} diff --git a/docker/statistics/Modules/Finance/Http/Controllers/StaffPaymentsConfigurationController.php b/docker/statistics/Modules/Finance/Http/Controllers/StaffPaymentsConfigurationController.php deleted file mode 100755 index 62535f77..00000000 --- a/docker/statistics/Modules/Finance/Http/Controllers/StaffPaymentsConfigurationController.php +++ /dev/null @@ -1,1076 +0,0 @@ -select(DB::raw('DISTINCT(user_id)'))->pluck('user_id')->toArray(); - $users_array = []; - - for ($i=0; $i < count($staff_ids_with_configurations) ; $i++) { - $user = User::find($staff_ids_with_configurations[$i]); - if (!is_null($user)) { - $users_array[$staff_ids_with_configurations[$i]] = get_full_name($staff_ids_with_configurations[$i], 'id', 'first_name', 'last_name', 'users'); - } - } - $users_array = ['' => '- Select Staff -'] + $users_array; - - $procedures = Procedure::where('available', 1)->orderBy("name","asc")->get(); - $investigations = Investigation::where('available', 1)->orderby("name","asc")->get(); - $services = Services::where('available', 1)->orderby("name","asc")->get(); - $price_list_categories = PriceListCategories::select('patient_category_id', 'id')->get(); - $price_list_category_id = null; - - return view('finance::staff_payments_configuration.index',compact('users_array', 'procedures', 'investigations', 'services', 'price_list_categories', 'price_list_category_id')); - } - - public function staff_payment_configuration_search(Request $request) - { - $staff_ids_with_configurations = DB::table('staff_payment_configurations')->select(DB::raw('DISTINCT(user_id)'))->pluck('user_id')->toArray(); - $users_array = []; - - for ($i=0; $i < count($staff_ids_with_configurations) ; $i++) { - $user = User::find($staff_ids_with_configurations[$i]); - if (!is_null($user)) { - $users_array[$staff_ids_with_configurations[$i]] = get_full_name($staff_ids_with_configurations[$i], 'id', 'first_name', 'last_name', 'users'); - } - } - $users_array = ['' => '- Select Staff -'] + $users_array; - $procedures = Procedure::withTrashed()->orderBy("name","asc")->get(); - $investigations = Investigation::withTrashed()->orderBy("name","asc")->get(); - $services = Services::withTrashed()->orderBy("name","asc")->get(); - $price_list_category_id = $request->price_list_category_id; - - if ($price_list_category_id) { - $staff_payment_configurations = StaffPaymentConfiguration::where(['user_id' => $request->staff_id, 'price_list_category_id' => $price_list_category_id])->get(); - } elseif ($price_list_category_id == 0) { - $staff_payment_configurations = StaffPaymentConfiguration::where('price_list_category_id', 0)->where(['user_id' => $request->staff_id])->get(); - } else { - $staff_payment_configurations = StaffPaymentConfiguration::where('price_list_category_id', 0)->where(['user_id' => $request->staff_id])->get(); - } - - $search_complete = true; - $searched_staff_name = get_full_name($request->staff_id, 'id', 'first_name', 'last_name', 'users'); - - $price_list_categories = PriceListCategories::select('patient_category_id', 'id')->get(); - - return view('finance::staff_payments_configuration.index',compact('users_array', 'procedures', 'investigations', 'services', 'search_complete', 'staff_payment_configurations', 'searched_staff_name', 'price_list_categories', 'price_list_category_id')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - $users = DB::table('users')->orderBy("first_name","asc")->select("id")->get()->toArray(); - $users_array = []; - - foreach ($users as $value){ - $user = User::find($value->id); - if (!is_null($user)) { - $users_array[$value->id] = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users'); - } - } - $users_array = ['' => '- Select Staff -'] + $users_array; - - $procedures = Procedure::where('available', 1)->orderBy("name","asc")->get(); - $investigations = Investigation::where('available', 1)->orderby("name","asc")->get(); - $services = Services::where('available', 1)->orderby("name","asc")->get(); - $price_list_categories = PriceListCategories::select('patient_category_id', 'id')->get(); - - $price_list_category_id = session()->has('price_list_category_id') ? session()->get('price_list_category_id') : null; - //forget the patient cetgory - session()->forget('price_list_category_id'); - - return view('finance::staff_payments_configuration.create',compact('users_array', 'procedures', 'investigations', 'services', 'price_list_categories', 'price_list_category_id')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - if ($request->get('submit-btn') == 'change_pricing') { - //first forget the existing price list category if it exists - session()->forget('price_list_category_id'); - - $price_list_category_id = $request->price_list_category_id; - session()->put(['price_list_category_id' => $price_list_category_id]); - return redirect('staff_payment_configuration/create'); - } - - /* handle procedures */ - $procedures_ids_array = $request->procedure_id; - $procedures_fees_array = $request->procedure_fee; - $procedures_percentages_array = $request->procedure_percentage; - - /* handle services */ - $services_ids_array = $request->service_id; - $services_fees_array = $request->service_fee; - $services_percentages_array = $request->service_percentage; - - /* handle investigations */ - $investigation_ids_array = $request->investigation_id; - $investigation_fees_array = $request->investigation_fee; - $investigation_percentages_array = $request->investigation_percentage; - - $selected_price_list_category_id = $request->selected_price_list_category_id; - - for ($i=0; $i < count($procedures_ids_array) ; $i++) { - $staff_payment = new StaffPaymentConfiguration; - $staff_payment->user_id = $request->user_id; - $staff_payment->item_category = 1; // 1-procedures - $staff_payment->payment_type = $request->payment_type; - $staff_payment->item_id = $procedures_ids_array[$i]; - $staff_payment->price_list_category_id = is_null($selected_price_list_category_id) ? 0 : $selected_price_list_category_id; - - if ($request->payment_type == 0) { - $staff_payment->amount_fee = $procedures_fees_array[$i]; - } elseif ($request->payment_type == 1) { - $staff_payment->amount_percentage = $procedures_percentages_array[$i]; - } - $staff_payment->created_by = Auth::id(); - - /* only save a record in the db if both the fee and percentage are not null i.e when atleast one is filled */ - if (!is_null($procedures_fees_array[$i]) || !is_null($procedures_percentages_array[$i])) { - $staff_payment->save(); - } - } - - for ($i=0; $i < count($services_ids_array) ; $i++) { - $staff_payment = new StaffPaymentConfiguration; - $staff_payment->user_id = $request->user_id; - $staff_payment->item_category = 3; // 3-Consultation and services - $staff_payment->payment_type = $request->payment_type; - $staff_payment->item_id = $services_ids_array[$i]; - $staff_payment->price_list_category_id = is_null($selected_price_list_category_id) ? 0 : $selected_price_list_category_id; - - if ($request->payment_type == 0) { - $staff_payment->amount_fee = $services_fees_array[$i]; - } elseif ($request->payment_type == 1) { - $staff_payment->amount_percentage = $services_percentages_array[$i]; - } - $staff_payment->created_by = Auth::id(); - - /* only save a record in the db if both the fee and percentage are not null i.e when atleast one is filled */ - if (!is_null($services_fees_array[$i]) || !is_null($services_percentages_array[$i])) { - $staff_payment->save(); - } - } - - for ($i=0; $i < count($investigation_ids_array) ; $i++) { - $staff_payment = new StaffPaymentConfiguration; - $staff_payment->user_id = $request->user_id; - $staff_payment->item_category = 2; // 3-Investigations - $staff_payment->payment_type = $request->payment_type; - $staff_payment->item_id = $investigation_ids_array[$i]; - $staff_payment->price_list_category_id = is_null($selected_price_list_category_id) ? 0 : $selected_price_list_category_id; - - if ($request->payment_type == 0) { - $staff_payment->amount_fee = $investigation_fees_array[$i]; - } elseif ($request->payment_type == 1) { - $staff_payment->amount_percentage = $investigation_percentages_array[$i]; - } - $staff_payment->created_by = Auth::id(); - - /* only save a record in the db if both the fee and percentage are not null i.e when atleast one is filled */ - if (!is_null($investigation_fees_array[$i]) || !is_null($investigation_percentages_array[$i])) { - $staff_payment->save(); - } - } - - flash('staff payment fees for '.get_full_name($request->user_id, 'id', 'first_name', 'last_name', 'users').' have been set')->success(); - return redirect('staff_payment_configuration/create'); - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) - { - // - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - // - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - // - } - - public function payments_report(Request $request) - { - $search_complete = null; - $filters = []; - $start_date = null; $end_date = null; - $results = null; - $report_by = null; - $search_text = ""; - $whole_amount = 0; - - $users = DB::table('users')->orderBy("first_name","asc")->select("id")->get()->toArray(); - $users_array = []; - foreach ($users as $value){ - $user = User::find($value->id); - if (!is_null($user)) { - $users_array[$value->id] = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users'); - } - } - $users_array = ['each_staff' => 'Each Staff'] + $users_array; - $users_array = ['' => '- Select Staff -'] + $users_array; - - $services_rendered_array = ['' => '-- Select --',1 => 'Procedures', 2 => 'Investigations', 3 => 'Consultations']; - $services_rendered_array = ['all_services' => 'All Services'] + $services_rendered_array; - - if($request->search_by == 0){ - // last 24 hours - $last_day = Carbon::now()->subDay(); - array_push($filters, ['created_at', '>', $last_day]); - - $search_text = "Showing payment report for last 24 Hours"; - } elseif($request->search_by == 1){ - // custom date - $start_date = Carbon::parse($request->reg_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->reg_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date]); - array_push($filters, ['created_at', '<', $end_date]); - - $search_text = "Showing payment report for " . streamline_date_plain($request->reg_date); - } elseif($request->search_by == 2){ - // custom date range - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date]); - array_push($filters, ['created_at', '<', $end_date]); - - $search_text = "Showing payment report for period between " . streamline_date_plain($start_date) . " and " . streamline_date_plain($end_date); - } - - - $staff_performed_items_array = []; - if ($request->report_by == 1) { - $search_complete = true; - $report_by = $request->report_by; - # report by staff - $staff_id = $request->staff; - if ($staff_id == "each_staff") { - $results = StaffPerformedService::where($filters)->get(); - $staff_ids_array = []; - foreach ($results as $record) { - if ( array_key_exists($record->performed_by, $staff_performed_items_array)) { - if(is_null($record->performance_fee)){ - $staff_fee = null; - $staff_fee = get_fee_owed_to_staff_for_perfomed_service($record->item_id, $record->item_category, $record->performed_by); - $staff_fee = is_numeric($staff_fee) ? $staff_fee : 0; - $staff_performed_items_array[$record->performed_by] += $staff_fee; - } else{ - $staff_performed_items_array[$record->performed_by] += $record->performance_fee; - } - } else { - if(is_null($record->performance_fee)){ - $staff_fee = null; - $staff_fee = get_fee_owed_to_staff_for_perfomed_service($record->item_id, $record->item_category, $record->performed_by); - $staff_fee = is_numeric($staff_fee) ? $staff_fee : 0; - $staff_performed_items_array[$record->performed_by] = $staff_fee; - } else{ - $staff_performed_items_array[$record->performed_by] = get_fee_owed_to_staff_for_perfomed_service($record->item_id, $record->item_category, $record->performed_by); - } - } - } - } else { - $results = StaffPerformedService::where('performed_by', $staff_id)->where($filters)->get(); - foreach ($results as $record) { - if ( array_key_exists($record->performed_by, $staff_performed_items_array)) { - $this_staff_fee = 0; - - if(is_null($record->performance_fee)){ - $this_staff_fee = get_fee_owed_to_staff_for_perfomed_service($record->item_id, $record->item_category, $record->performed_by); - $this_staff_fee = is_numeric($this_staff_fee) ? $this_staff_fee : 0; - } else { - $this_staff_fee = $record->performance_fee; - } - - $staff_performed_items_array[$record->performed_by] += $this_staff_fee; - } else { - $this_staff_fee = 0; - - if(is_null($record->performance_fee)){ - $this_staff_fee = get_fee_owed_to_staff_for_perfomed_service($record->item_id, $record->item_category, $record->performed_by); - $this_staff_fee = is_numeric($this_staff_fee) ? $this_staff_fee : 0; - } else { - $this_staff_fee = $record->performance_fee; - } - - $staff_performed_items_array[$record->performed_by] = $this_staff_fee; - } - } - $staff_ward_procedures_total = 0; - $ward_procedures_records = WardProcedure::where('performed_by', $staff_id)->where($filters)->orderBy('created_at', 'desc')->get(); - if (count($ward_procedures_records) > 0) { - foreach ($ward_procedures_records as $ward_procedure) { - $staff_ward_procedures_total += $ward_procedure->staff_fee; - } - } - $staff_performed_items_array[$staff_id] = $staff_performed_items_array[$staff_id] + $staff_ward_procedures_total; - - $staff_ward_services_total = 0; - $searchTerm = "__".$staff_id; - $ward_services_records = WardConsultationsAndService::where('service_id', 'LIKE', "%{$searchTerm}")->where($filters)->orderBy('created_at', 'desc')->get(); - if (count($ward_services_records) > 0) { - foreach ($ward_services_records as $ward_service) { - $staff_ward_services_total += $ward_service->staff_fee; - } - } - $staff_performed_items_array[$staff_id] = $staff_performed_items_array[$staff_id] + $staff_ward_services_total; - } - } elseif ($request->report_by == 2) { - $search_complete = true; - $report_by = $request->report_by; - # report by services rendered i.e 1-procedures, 2-investigations, 3-services and consultation all_services-all services - $services_rendered_id = $request->services_rendered_id; - if ($services_rendered_id == "all_services") { - $results = StaffPerformedService::where($filters)->get(); - $staff_ids_array = []; - foreach ($results as $record) { - if ( array_key_exists($record->item_category, $staff_performed_items_array)) { - if(is_null($record->performance_fee)){ - $staff_performed_items_array[$record->item_category] += get_fee_owed_to_staff_for_perfomed_service_based_on_category($record->item_id, $record->performed_by, $record->item_category); - } else{ - $staff_performed_items_array[$record->item_category] += $record->performance_fee; - } - } else { - if(is_null($record->performance_fee)){ - $staff_performed_items_array[$record->item_category] = get_fee_owed_to_staff_for_perfomed_service_based_on_category($record->item_id, $record->performed_by, $record->item_category); - } else{ - $staff_performed_items_array[$record->item_category] = $record->performance_fee; - } - } - } - //include records from inpatient procedures - $inpatient_procedures_total = 0; - $ward_procedures_records = WardProcedure::where($filters)->orderBy('created_at', 'desc')->get(); - if (count($ward_procedures_records) > 0) { - foreach ($ward_procedures_records as $ward_procedure) { - $inpatient_procedures_total += $ward_procedure->staff_fee; - } - } - $staff_performed_items_array[1] = isset($staff_performed_items_array[1]) ? $staff_performed_items_array[1] + $inpatient_procedures_total : $inpatient_procedures_total; - //include records from inpatient services - $inpatient_services_total = 0; - $ward_services_records = WardConsultationsAndService::where($filters)->orderBy('created_at', 'desc')->get(); - if (count($ward_services_records) > 0) { - foreach ($ward_services_records as $ward_services) { - $inpatient_services_total += $ward_services->staff_fee; - } - } - $staff_performed_items_array[3] = isset($staff_performed_items_array[3]) ? $staff_performed_items_array[3] + $inpatient_services_total : $inpatient_services_total; - } else { - $results = StaffPerformedService::where('item_category', $services_rendered_id)->where($filters)->get(); - - foreach ($results as $record) { - if ( array_key_exists($record->item_category, $staff_performed_items_array)) { - if(is_null($record->performance_fee)){ - $whole_amount += get_fee_owed_to_staff_for_perfomed_service_based_on_category($record->item_id, $record->performed_by, $record->item_category); - } else{ - $whole_amount += $record->performance_fee; - } - $staff_performed_items_array[$record->item_category] = $whole_amount; - } else { - if(is_null($record->performance_fee)){ - $whole_amount = $record->performance_fee; - } else{ - $whole_amount = get_fee_owed_to_staff_for_perfomed_service_based_on_category($record->item_id, $record->performed_by, $record->item_category); - } - $staff_performed_items_array[$record->item_category] = $whole_amount; - } - } - //include records from inpatient procedures - $inpatient_procedures_total = 0; - if ($services_rendered_id == 1) { - $ward_procedures_records = WardProcedure::where($filters)->orderBy('created_at', 'desc')->get(); - if (count($ward_procedures_records) > 0) { - foreach ($ward_procedures_records as $ward_procedure) { - $inpatient_procedures_total += $ward_procedure->staff_fee; - } - } - $staff_performed_items_array[1] = isset($staff_performed_items_array[1]) ? $staff_performed_items_array[1] + $inpatient_procedures_total : $inpatient_procedures_total; - } - //include records from inpatient services - $inpatient_services_total = 0; - if ($services_rendered_id == 3) { - $ward_services_records = WardConsultationsAndService::where($filters)->orderBy('created_at', 'desc')->get(); - if (count($ward_services_records) > 0) { - foreach ($ward_services_records as $ward_services) { - $inpatient_services_total += $ward_services->staff_fee; - } - } - $staff_performed_items_array[3] = isset($staff_performed_items_array[3]) ? $staff_performed_items_array[3] + $inpatient_services_total : $inpatient_services_total; - } - } - } - - $details_report_by = $request->report_by; - $details_staff = $request->staff; - $details_services_rendered_id = $request->services_rendered_id; - $details_search_by = $request->search_by; - $details_reg_date = $request->reg_date; - $details_start_date = $request->start_date; - $details_end_date = $request->end_date; - - return view('finance::staff_payments_configuration.payments_report', compact('users_array', 'services_rendered_array', 'search_complete', 'results', 'report_by', 'staff_performed_items_array', 'details_report_by', 'details_staff', 'details_services_rendered_id', 'details_search_by', 'details_reg_date', 'details_start_date', 'details_end_date', 'search_text')); - } - - public function payments_details_report(Request $request) - { - /* - *show money from patient, what the doctor made - */ - $filters = $ward_procedures_records = $ward_services_records = []; - $staff_performed_services = null; - $search_string = null; - - if($request->details_search_by == 0){ - // last 24 hours - $last_day = Carbon::now()->subDay(); - - array_push($filters, ['created_at', '>', $last_day]); - $search_string = "

    Showing results of ".streamline_date($last_day)."

    "; - } elseif($request->details_search_by == 1){ - // custom date - $start_date = Carbon::parse($request->details_reg_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->details_reg_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date]); - array_push($filters, ['created_at', '<', $end_date]); - $search_string = "

    Showing results of ".streamline_date($request->details_reg_date)."

    "; - } elseif($request->details_search_by == 2){ - // custom date range - $start_date = Carbon::parse($request->details_start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->details_end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date]); - array_push($filters, ['created_at', '<', $end_date]); - $search_string = "

    Showing between ".streamline_date($start_date). " and ".streamline_date($end_date)."

    "; - } - - if ($request->details_report_by == 1) { - $report_by = $request->details_report_by; - # report by staff - $staff_id = $request->details_staff; - if ($staff_id == "each_staff") { - $staff_performed_services = StaffPerformedService::where($filters)->get(); - } else { - $staff_performed_services = StaffPerformedService::where('performed_by', $staff_id)->where($filters)->get(); - $ward_procedures_records = WardProcedure::where('performed_by', $staff_id)->where($filters)->orderBy('created_at', 'desc')->get(); - $searchTerm = "__".$staff_id; - $ward_services_records = WardConsultationsAndService::where('service_id', 'LIKE', "%{$searchTerm}")->where($filters)->orderBy('created_at', 'desc')->get(); - } - } elseif ($request->details_report_by == 2) { - $report_by = $request->details_report_by; - # report by services rendered i.e 1-procedures, 2-investigations, 3-services, all_services-all services - $services_rendered_id = $request->details_services_rendered_id; - if ($services_rendered_id == "all_services") { - $staff_performed_services = StaffPerformedService::where($filters)->get(); - } else { - $staff_performed_services = StaffPerformedService::where('item_category', $services_rendered_id)->where($filters)->get(); - //include records from inpatient services - if ($services_rendered_id == 1) { - $ward_procedures_records = WardProcedure::where($filters)->orderBy('created_at', 'desc')->get(); - } - //include records from inpatient services - if ($services_rendered_id == 3) { - $ward_services_records = WardConsultationsAndService::where($filters)->orderBy('created_at', 'desc')->get(); - } - } - } - - $report_based_on_staff_or_category = $request->details_report_by; - - return view('finance::staff_payments_configuration.payments_report_details', compact('staff_performed_services', 'report_by', 'report_based_on_staff_or_category', 'ward_procedures_records', 'ward_services_records', 'search_string')); - } - - public function delete_staff_configuration(Request $request) { - $spc = StaffPaymentConfiguration::find($request->config_id); - - if ($spc->delete()) { - return 1; - } else { - return 0; - } - } - - public function edit_staff_configuration(Request $request) { - $spc = StaffPaymentConfiguration::find($request->config_id); - $spc->amount_fee = $request->amount_fee; - - if ($spc->save()) { - return 1; - } else { - return 0; - } - } - - public function clean_staff_payments() - { - $filters = []; - $start_date = Carbon::parse("2020-10-14")->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse("2020-10-15")->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date]); - array_push($filters, ['created_at', '<', $end_date]); - - $staff_performed_services = StaffPerformedService::where($filters)->get(); - - if(count($staff_performed_services) > 0){ - foreach($staff_performed_services as $record){ - - if ($record->item_category == 1){ - $procedure = Procedure::find($record->item_id); - $non_insured_price = $procedure->non_insured_price; - $item_name = $procedure->name; - }elseif ($record->item_category == 2){ - $investigation = Investigation::find($record->item_id); - $non_insured_price = $investigation->non_insured_price; - $item_name = $investigation->name; - }elseif ($record->item_category == 3){ - $service = Services::find($record->item_id); - $non_insured_price = $service->cost_price; - $item_name = $service->name; - } - - - if (get_name($record->patient_id, "id", "category_id", "patients") == 1) { - record_staff_that_has_performed_the_service($record->patient_id, $record->episode_id, $record->item_category, $record->item_id, $record->inpatient, $record->performed_by); - } - } - } - - return response()->json("successfully cleaned staff configs"); - } - - public function fetch_performed_by_info($id) { - $record = DB::table('staff_performed_services')->where('id', $id)->first(); - - return $record->performed_by . "," . $record->performance_fee . "," . \Carbon\Carbon::createFromFormat('Y-m-d H:i:s', $record->created_at)->toDateString(); - } - - public function edit_performed_by_info(Request $request) { - $update = DB::table('staff_performed_services')->where('id', $request->id) - ->update([ - 'performed_by' => $request->edit_performed_by, - 'performance_fee' => $request->edit_performed_by_amount, - 'created_at' => $request->edit_performed_date . " " . \Carbon\Carbon::now()->toTimeString() - ]); - - if ($update) { - return get_full_name($request->edit_performed_by, 'id', 'first_name', 'last_name', 'users'); - } else { - return "0"; - } - } - - public function delete_performed_by($id, $position, $order_id, $type) { - $staff_payment = DB::table('staff_performed_services')->where(['id' => $id])->delete(); - - if ($staff_payment) { - if($type == 1) { - $arr = explode(",", get_name($order_id, 'id', 'performed', 'ordered_procedures')); - $arr_id = explode(",", get_name($order_id, 'id', 'performed_id', 'ordered_procedures')); - - if (isset($arr[$position])) { - $arr[$position] = 0; - $arr_id[$position] = 0; - $update = DB::table('ordered_procedures')->where('id', $order_id) - ->update(['performed' => implode(",", $arr), 'performed_id' => implode(",", $arr_id)]); - } - } else { - $arr = explode(",", get_name($order_id, 'id', 'performed', 'ordered_services')); - $arr_id = explode(",", get_name($order_id, 'id', 'performed_id', 'ordered_services')); - - if (isset($arr[$position])) { - $arr[$position] = 0; - $arr_id[$position] = 0; - $update = DB::table('ordered_services')->where('id', $order_id) - ->update(['performed' => implode(",", $arr), 'performed_id' => implode(",", $arr_id)]); - } - } - return 1; - } else { - return 0; - } - } - - public function record_staff_service_performance() { - #record that staff has performed a service so that they are paid their money - $employees = DB::table('users')->whereNull('deleted_at')->orderBy('first_name', 'asc')->get(); - - $patient_id = session()->get('patient_id'); - - $procedures = DB::table('procedures')->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - $investigations = DB::table('investigations')->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - $services = DB::table('services')->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - $sundries = DB::table('sundries')->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - - return view('finance::staff_payments_configuration.record_service_perfomance', compact('employees', 'procedures', 'investigations', 'services', 'sundries', 'patient_id')); - } - - public function store_recorded_performed_service(Request $request) { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - if(session()->has('patient_id') == false){ - flash('No patient selected')->error(); - return back()->withInput(); - } - - $item_categories_array = $request->item_category; - $performed_investigations_array = $request->performed_investigation_item; - $performed_procedures_array = $request->performed_procedure_item; - $performed_services_array = $request->performed_service_item; - $performed_sundries_array = $request->performed_sundry_item; - $items_prices_array = $request->item_price; - $items_quantities_array = $request->item_quantity; - $performed_by_ids_array = $request->performed_by_id; - $performance_fees_array = $request->performance_fee; - - $lab_investigation_array = []; - $xray_investigation_array = []; - $obstetric_ultrasound_investigation_array = []; - $ultrasound_investigation_array = []; - $cardiology_investigation_array = []; - $lab_inv_prices_array = []; - $xray_inv_prices_array = []; - $ultrasound_inv_prices_array = []; - $obstetric_inv_prices_array = []; - $cardiology_inv_prices_array = []; - $ordered_procedures_array = []; - $ordered_procedures_amount_array = []; - $ordered_services_array = []; - $ordered_services_amounts_array = []; - $ordered_services_quantity_array = []; - $ordered_sundries_array = []; - $ordered_sundries_amounts_array = []; - $ordered_sundries_quantity_array = []; - $is_procedure_performed_array = []; - $is_service_performed_array = []; - $is_procedure_performed_id_array = []; - $is_service_performed_id_array = []; - - for ($i=0; $i < count($item_categories_array) ; $i++) { - - if ($item_categories_array[$i] == 1) { - if (!is_null($performed_procedures_array[$i])) { - $ordered_procedures_array[] = $performed_procedures_array[$i]; - $ordered_procedures_amount_array[] = $items_prices_array[$i]; - } - - if (!is_null($performance_fees_array[$i]) && !is_null($performed_by_ids_array[$i])) { - $is_procedure_performed_array[] = 1; - $is_procedure_performed_id_array[] = record_staff_that_has_performed_the_service_with_price($patient_id, $episode_id, 1, $performed_procedures_array[$i], 0, - $performed_by_ids_array[$i], $performance_fees_array[$i], date('Y-m-d')); - } else { - $is_procedure_performed_array[] = 0; - $is_procedure_performed_id_array[] = 0; - } - } elseif ($item_categories_array[$i] == 2) { - - $inv_order_type = get_name(get_name(get_name($performed_investigations_array[$i], "id", "category", "investigations"), "id", "super_category_id", "investigation_categories"),"id", "id", "investigation_super_categories"); - - if ($inv_order_type == 1) { - $lab_investigation_array[] = $performed_investigations_array[$i]; - $lab_inv_prices_array[] = $items_prices_array[$i]; - } elseif ($inv_order_type == 2) { - $xray_investigation_array[] = $performed_investigations_array[$i]; - $xray_inv_prices_array[] = $items_prices_array[$i]; - } elseif ($inv_order_type == 3) { - $ultrasound_investigation_array[] = $performed_investigations_array[$i]; - $ultrasound_inv_prices_array[] = $items_prices_array[$i]; - } elseif ($inv_order_type == 4) { - $obstetric_ultrasound_investigation_array[] = $performed_investigations_array[$i]; - $obstetric_inv_prices_array[] = $items_prices_array[$i]; - } elseif ($inv_order_type == 5) { - $cardiology_investigation_array[] = $performed_investigations_array[$i]; - $cardiology_inv_prices_array[] = $items_prices_array[$i]; - } - - if (!is_null($performance_fees_array[$i]) && !is_null($performed_by_ids_array[$i])) { - $ignored_return_value = record_staff_that_has_performed_the_service_with_price($patient_id, $episode_id, 2, $performed_investigations_array[$i], 0, - $performed_by_ids_array[$i], $performance_fees_array[$i], date('Y-m-d')); - } - } elseif ($item_categories_array[$i] == 3) { - if (!is_null($performed_services_array[$i])) { - $ordered_services_array[] = $performed_services_array[$i]; - $ordered_services_amounts_array[] = $items_prices_array[$i]; - $ordered_services_quantity_array[] = $items_quantities_array[$i]; - } - - if (!is_null($performance_fees_array[$i]) && !is_null($performed_by_ids_array[$i])) { - $is_service_performed_array[] = 1; - $is_service_performed_id_array[] = record_staff_that_has_performed_the_service_with_price($patient_id, $episode_id, 3, $performed_services_array[$i], 0, - $performed_by_ids_array[$i], $performance_fees_array[$i], date('Y-m-d')); - } else { - $is_service_performed_array[] = 0; - $is_service_performed_id_array[] = 0; - } - } elseif ($item_categories_array[$i] == 4) { - if (!is_null($performed_sundries_array[$i])) { - $ordered_sundries_array[] = $performed_sundries_array[$i]; - $ordered_sundries_amounts_array[] = $items_prices_array[$i]; - $ordered_sundries_quantity_array[] = $items_quantities_array[$i]; - } - } - } - - // submit the orders to the respective tables - if (count($ordered_procedures_array) > 0) { - $new_ordered_procedure = new OrderedProcedure; - $new_ordered_procedure->patient_id = $patient_id; - $new_ordered_procedure->episode_id = $episode_id; - $new_ordered_procedure->procedure_id = implode(",", $ordered_procedures_array); - $new_ordered_procedure->procedure_amount = implode(",", $ordered_procedures_amount_array); - $new_ordered_procedure->payment_status = 0; //0 by default to mean not paid - $new_ordered_procedure->performed = implode(",", $is_procedure_performed_array); - $new_ordered_procedure->performed_id = implode(",", $is_procedure_performed_id_array); - $new_ordered_procedure->created_by = Auth::id(); - $new_ordered_procedure->save(); - - // create an insurance claim for the ordered items - if ($request->patient_insurance_status == 1) { - generate_insurance_claim($new_ordered_procedure->id, 2); - } - } - - if (count($ordered_services_array) > 0) { - $new_ordered_service = new OrderedService; - $new_ordered_service->patient_id = $patient_id; - $new_ordered_service->episode_id = $episode_id; - $new_ordered_service->service_id = implode(",", $ordered_services_array); - $new_ordered_service->service_amount = implode(",", $ordered_services_amounts_array); - $new_ordered_service->quantity = implode(",", $ordered_services_quantity_array); - $new_ordered_service->payment_status = 0; //0 by default to mean not paid - $new_ordered_service->performed = implode(",", $is_service_performed_array); - $new_ordered_service->performed_id = implode(",", $is_service_performed_id_array); - $new_ordered_service->created_by = Auth::id(); - $new_ordered_service->save(); - - // create an insurance claim for the ordered items - if ($request->patient_insurance_status == 1) { - generate_insurance_claim($new_ordered_service->id, 1); - } - } - - if (count($ordered_sundries_array) > 0) { - $new_ordered_sundry = new OrderedSundry; - $new_ordered_sundry->patient_id = $patient_id; - $new_ordered_sundry->episode_id = $episode_id; - $new_ordered_sundry->sundries_id = implode(",", $ordered_sundries_array); - $new_ordered_sundry->sundries_amount = implode(",", $ordered_sundries_amounts_array); - $new_ordered_sundry->quantity = implode(",", $ordered_sundries_quantity_array); - $new_ordered_sundry->payment_status = 0; //0 by default to mean not paid - $new_ordered_sundry->created_by = Auth::id(); - $new_ordered_sundry->save(); - - // create an insurance claim for the ordered items - if ($request->patient_insurance_status == 1) { - generate_insurance_claim($new_ordered_sundry->id, 5); - } - } - - // start looping thru for any investigations - if (count($lab_investigation_array) > 0) { - $investigation_ids_string = ""; - $for_inpatient_string = ""; - $urgent_ids = ""; - $commments_string = ""; - for ($i = 0; $i < count($lab_investigation_array); $i++) { - if ($i == (count($lab_investigation_array) - 1)) { - $investigation_ids_string .= $lab_investigation_array[$i]; - $for_inpatient_string .= "0"; - $urgent_ids .= ""; - $commments_string .= ""; - } else { - $investigation_ids_string .= $lab_investigation_array[$i] . ","; - $for_inpatient_string .= "0" . ","; - $urgent_ids .= ","; - $commments_string .= ","; - } - } - - $order = new OrderedInvestigation; - $order->investigation_id = $investigation_ids_string; - $order->investigation_amount = implode(",", $lab_inv_prices_array); - $order->patient_id = $patient_id; - $order->episode_id = $episode_id; - $order->urgent_ids = $urgent_ids; - $order->inpatient = 0; - $order->for_inpatient = $for_inpatient_string; - $order->order_type = "Lab"; - $order->order_comments = $commments_string; - $order->created_by = Auth::id(); - $order->save(); - - // create an insurance claim for the ordered items - if ($request->patient_insurance_status == 1) { - generate_insurance_claim($order->id, 3); - } - } - - if (count($xray_investigation_array) > 0) { - $investigation_ids_string = ""; - $for_inpatient_string = ""; - $urgent_ids = ""; - $commments_string = ""; - for ($i = 0; $i < count($xray_investigation_array); $i++) { - if ($i == (count($xray_investigation_array) - 1)) { - $investigation_ids_string .= $xray_investigation_array[$i]; - $for_inpatient_string .= "0"; - $urgent_ids .= ""; - $commments_string .= ""; - } else { - $investigation_ids_string .= $xray_investigation_array[$i] . ","; - $for_inpatient_string .= "0" . ","; - $urgent_ids .= ","; - $commments_string .= ","; - } - } - - $order = new OrderedInvestigation; - $order->investigation_id = $investigation_ids_string; - $order->investigation_amount = implode(",", $xray_inv_prices_array); - $order->patient_id = $patient_id; - $order->episode_id = $episode_id; - $order->urgent_ids = $urgent_ids; - $order->inpatient = 0; - $order->for_inpatient = $for_inpatient_string; - $order->order_type = "Imaging"; - $order->order_comments = $commments_string; - $order->created_by = Auth::id(); - $order->save(); - - // create an insurance claim for the ordered items - if ($request->patient_insurance_status == 1) { - generate_insurance_claim($order->id, 3); - } - } - - if (count($ultrasound_investigation_array) > 0) { - $investigation_ids_string = ""; - $for_inpatient_string = ""; - $urgent_ids = ""; - $commments_string = ""; - for ($i = 0; $i < count($ultrasound_investigation_array); $i++) { - if ($i == (count($ultrasound_investigation_array) - 1)) { - $investigation_ids_string .= $ultrasound_investigation_array[$i]; - $for_inpatient_string .= "0"; - $urgent_ids .= ""; - $commments_string .= ""; - } else { - $investigation_ids_string .= $ultrasound_investigation_array[$i] . ","; - $for_inpatient_string .= "0" . ","; - $urgent_ids .= ","; - $commments_string .= ","; - } - } - - $order = new OrderedInvestigation; - $order->investigation_id = $investigation_ids_string; - $order->investigation_amount = implode(",", $ultrasound_inv_prices_array); - $order->patient_id = $patient_id; - $order->episode_id = $episode_id; - $order->urgent_ids = $urgent_ids; - $order->inpatient = 0; - $order->for_inpatient = $for_inpatient_string; - $order->order_type = "Ultrasound"; - $order->order_comments = $commments_string; - $order->created_by = Auth::id(); - $order->save(); - - // create an insurance claim for the ordered items - if ($request->patient_insurance_status == 1) { - generate_insurance_claim($order->id, 3); - } - } - - if (count($obstetric_ultrasound_investigation_array) > 0) { - $investigation_ids_string = ""; - $for_inpatient_string = ""; - $urgent_ids = ""; - $commments_string = ""; - for ($i = 0; $i < count($obstetric_ultrasound_investigation_array); $i++) { - if ($i == (count($obstetric_ultrasound_investigation_array) - 1)) { - $investigation_ids_string .= $obstetric_ultrasound_investigation_array[$i]; - $for_inpatient_string .= "0"; - $urgent_ids .= ""; - $commments_string .= ""; - } else { - $investigation_ids_string .= $obstetric_ultrasound_investigation_array[$i] . ","; - $for_inpatient_string .= "0" . ","; - $urgent_ids .= ","; - $commments_string .= ","; - } - } - - $order = new OrderedInvestigation; - $order->investigation_id = $investigation_ids_string; - $order->investigation_amount = implode(",", $obstetric_inv_prices_array); - $order->patient_id = $patient_id; - $order->episode_id = $episode_id; - $order->urgent_ids = $urgent_ids; - $order->inpatient = 0; - $order->for_inpatient = $for_inpatient_string; - $order->order_type = "Ultrasound_Obstetric"; - $order->order_comments = $commments_string; - $order->created_by = Auth::id(); - $order->save(); - - // create an insurance claim for the ordered items - if ($request->patient_insurance_status == 1) { - generate_insurance_claim($order->id, 3); - } - } - - if (count($cardiology_investigation_array) > 0) { - $investigation_ids_string = ""; - $for_inpatient_string = ""; - $urgent_ids = ""; - $commments_string = ""; - for ($i = 0; $i < count($cardiology_investigation_array); $i++) { - if ($i == (count($cardiology_investigation_array) - 1)) { - $investigation_ids_string .= $cardiology_investigation_array[$i]; - $for_inpatient_string .= "0"; - $urgent_ids .= ""; - $commments_string .= ""; - } else { - $investigation_ids_string .= $cardiology_investigation_array[$i] . ","; - $for_inpatient_string .= "0" . ","; - $urgent_ids .= ","; - $commments_string .= ","; - } - } - - $order = new OrderedInvestigation; - $order->investigation_id = $investigation_ids_string; - $order->investigation_amount = implode(",", $cardiology_inv_prices_array); - $order->patient_id = $patient_id; - $order->episode_id = $episode_id; - $order->urgent_ids = $urgent_ids; - $order->inpatient = 0; - $order->for_inpatient = $for_inpatient_string; - $order->order_type = "Cardio"; - $order->order_comments = $commments_string; - $order->created_by = Auth::id(); - $order->save(); - - // create an insurance claim for the ordered items - if ($request->patient_insurance_status == 1) { - generate_insurance_claim($order->id, 3); - } - } - // end looping thru for any investigations - - flash('Items have been added')->success(); - return redirect('patient_episodes'); - } - - public function get_item_price(Request $request) { - //categories 1-procedures, 2-investigations, 3-procedures - $category_id = $request->category; - $item_id = $request->item; - $patient_insurance_status = $request->patient_insurance_status ?? 0; - $patient_id = $request->patient_id ?? 0; - $item_price = 0; - $price_list_id = $request->price_list_id; - $item_category = $request->item_category?? 0; - - if (!empty($item_category) && !empty($price_list_id)) $item_price = get_price_list_category_price($price_list_id, $item_category, $item_id); - else { - if (is_numeric($patient_insurance_status) && $patient_insurance_status == 1 && $patient_id != 0 && is_numeric($patient_id)) { - if ($category_id == 1) { - $item_price = get_item_insurance_co_payment($patient_id, $item_id, 2, false, 0); - } elseif ($category_id == 2) { - $item_price = get_item_insurance_co_payment($patient_id, $item_id, 3, false, 0); - } elseif ($category_id == 3) { - $item_price = get_item_insurance_co_payment($patient_id, $item_id, 1, false, 0); - } elseif ($category_id == 4) { - $item_price = get_item_insurance_co_payment($patient_id, $item_id, 5, false, 0); - } - } else { - if ($category_id == 1) { - $item_price = get_name($item_id, "id", "non_insured_price", "procedures"); - } elseif ($category_id == 2) { - $item_price = get_name($item_id, "id", "non_insured_price", "investigations"); - } elseif ($category_id == 3) { - $item_price = get_name($item_id, "id", "non_insured_price", "services"); - } elseif ($category_id == 4) { - $item_price = get_name($item_id, "id", "non_insured_price", "sundries"); - } elseif ($category_id == 5) { - $item_price = get_name($item_id, "id", "non_insured_price", "eye_glasses"); - } - } - - } - return $item_price; - } -} diff --git a/docker/statistics/Modules/Finance/Http/Controllers/StreamlineBillsController.php b/docker/statistics/Modules/Finance/Http/Controllers/StreamlineBillsController.php deleted file mode 100755 index 1c95bda7..00000000 --- a/docker/statistics/Modules/Finance/Http/Controllers/StreamlineBillsController.php +++ /dev/null @@ -1,150 +0,0 @@ -middleware('auth'); - $this->middleware('permission:streamline-bills-create'); - $this->middleware('permission:streamline-bills-index'); - } - - public function index(){ - $reports = StreamlineBillReport::all(); - $hospital_information = HospitalInformation::first(); - return view('finance::streamline_bills.index', compact('reports', 'hospital_information')); - } - - public function create(Request $request) - { - $episodes = []; - $patients = []; - $user = Auth::id(); - $date_string = ''; - $patient_string = ''; - $report = new StreamlineBillReport; - $hospital_information = HospitalInformation::first(); - - return view('finance::streamline_bills.create', compact( 'hospital_information','user', 'episodes', 'patients', 'date_string', - 'patient_string', 'patients')); - } - - public function detail($id) - { - $user = Auth::id(); - $report = StreamlineBillReport::where('id', $id)->first(); - $hospital_information = HospitalInformation::first(); - - return view('finance::streamline_bills.detail', compact( 'hospital_information', 'report', 'user')); - } - - public function generate(Request $request){ - $user = Auth::id(); - $patients = []; - $report = new StreamlineBillReport; - $hospital_information = HospitalInformation::first(); - - if($request->dates == "yesterday") { - $start = Carbon::yesterday()->startOfDay()->toDateTimeString(); - $end = Carbon::yesterday()->endOfDay()->toDateTimeString(); - } else if($request->dates == "custom_date") { - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->start_date)->endOfDay()->toDateTimeString(); - } else if($request->dates == "custom_date_range") { - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - } else { - $start = Carbon::today()->startOfDay()->toDateTimeString(); - $end = Carbon::today()->endOfDay()->toDateTimeString(); - } - - $dates = array($start, $end); - $date_string = implode('&', $dates); - $episodes = PatientEpisode::whereBetween('created_at', [$start, $end])->groupBy('patient_id')->get(); - foreach ($episodes as $item){ - $patient = Patient::where('id', $item->patient_id)->whereNotIn('id', findTestOrDemoPatients())->whereBetween('created_at', [$start, $end])->first(); - if(isset($patient->number)){ - array_push($patients, $patient->id); - } - } - - $patient_string = implode('/', $patients); - $report_check = StreamlineBillReport::where('patients', '=', $patient_string)->first(); - if($report_check === null){ - $report->patients = $patient_string; - $report->time_frame = $date_string; - $report->type = 3; - $report->created_by = Auth::id(); - $report->save(); - } - - return view('finance::streamline_bills.create', compact( 'hospital_information','user', 'dates', - 'episodes', 'request', 'patients', 'date_string', 'patient_string')); - } - - public function transfer(Request $request){ - - $result = StreamlineBillReport::where('patients', $request->patient_string)->update([ - 'amount_to_be_paid'=>$request->total, - 'amount_paid'=>0 - ]); - - $current_balance = ChartOfAccount::where('id', 14)->pluck('balance')->first(); - $transfer = ChartOfAccount::where('id', 14)->update(['balance' => ((int)$request->total + $current_balance)]); - $total_amount_transfer = ((int)$request->total); - $deposit_on_item = PaymentItem::where('name', 'streamline bill')->update(['unit_cost'=> $total_amount_transfer]); - - if($transfer == 1 && $deposit_on_item == 1){ - flash('Streamline Bill Transfer was Successful')->success(); - }else{ - flash('Streamline Bill Transfer Failed')->error(); - } - - return redirect('/streamline_bill'); - } - - public function view_patients(Request $request){ - $patients_string = StreamlineBillReport::where('id', $request->id)->pluck('patients')->first(); - $patients = explode("/", $patients_string); - $display = ""; - foreach ($patients as $patient){ - $display .= "
  • ".get_full_name($patient, 'id', 'first_name', 'last_name', 'patients')."
  • "; - } - return $display; - } - - public function delete($id){ - $streamline_bill = StreamlineBillReport::find($id); - - if ($streamline_bill->delete()): - flash("Streamline Bill has been deleted.")->success(); - return redirect('/streamline_bill/'); - endif; - } - - public function verify_patients($patient_id){ - $reports = StreamlineBillReport::all(); - foreach($reports as $item){ - $patient_array = explode('/', $item['patients']); - for($i = 0; $i < count($patient_array); $i++){ - if($patient_array[$i] == $patient_id){ - return null; - } - else{ - return $patient_id; - } - } - } - } -} diff --git a/docker/statistics/Modules/Finance/Providers/FinanceServiceProvider.php b/docker/statistics/Modules/Finance/Providers/FinanceServiceProvider.php deleted file mode 100644 index d0329af8..00000000 --- a/docker/statistics/Modules/Finance/Providers/FinanceServiceProvider.php +++ /dev/null @@ -1,113 +0,0 @@ -registerTranslations(); - $this->registerConfig(); - $this->registerViews(); - $this->loadMigrationsFrom(module_path($this->moduleName, 'Database/Migrations')); - } - - /** - * Register the service provider. - * - * @return void - */ - public function register() - { - $this->app->register(RouteServiceProvider::class); - } - - /** - * Register config. - * - * @return void - */ - protected function registerConfig() - { - $this->publishes([ - module_path($this->moduleName, 'Config/config.php') => config_path($this->moduleNameLower . '.php'), - ], 'config'); - $this->mergeConfigFrom( - module_path($this->moduleName, 'Config/config.php'), $this->moduleNameLower - ); - } - - /** - * Register views. - * - * @return void - */ - public function registerViews() - { - $viewPath = resource_path('views/modules/' . $this->moduleNameLower); - - $sourcePath = module_path($this->moduleName, 'Resources/views'); - - $this->publishes([ - $sourcePath => $viewPath - ], ['views', $this->moduleNameLower . '-module-views']); - - $this->loadViewsFrom(array_merge($this->getPublishableViewPaths(), [$sourcePath]), $this->moduleNameLower); - } - - /** - * Register translations. - * - * @return void - */ - public function registerTranslations() - { - $langPath = resource_path('lang/modules/' . $this->moduleNameLower); - - if (is_dir($langPath)) { - $this->loadTranslationsFrom($langPath, $this->moduleNameLower); - $this->loadJsonTranslationsFrom($langPath); - } else { - $this->loadTranslationsFrom(module_path($this->moduleName, 'Resources/lang'), $this->moduleNameLower); - $this->loadJsonTranslationsFrom(module_path($this->moduleName, 'Resources/lang')); - } - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides() - { - return []; - } - - private function getPublishableViewPaths(): array - { - $paths = []; - foreach (\Config::get('view.paths') as $path) { - if (is_dir($path . '/modules/' . $this->moduleNameLower)) { - $paths[] = $path . '/modules/' . $this->moduleNameLower; - } - } - return $paths; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/Finance/Providers/RouteServiceProvider.php b/docker/statistics/Modules/Finance/Providers/RouteServiceProvider.php deleted file mode 100755 index 5587ac52..00000000 --- a/docker/statistics/Modules/Finance/Providers/RouteServiceProvider.php +++ /dev/null @@ -1,68 +0,0 @@ -mapApiRoutes(); - $this->mapWebRoutes(); - } - - /** - * Define the "web" routes for the application. - * - * These routes all receive session state, CSRF protection, etc. - * - * @return void - */ - protected function mapWebRoutes() - { - Route::middleware('web') - ->namespace($this->namespace) - ->group(module_path('Finance', '/Routes/web.php')); - } - - /** - * Define the "api" routes for the application. - * - * These routes are typically stateless. - * - * @return void - */ - protected function mapApiRoutes() - { - Route::prefix('api') - ->middleware('api') - ->namespace($this->namespace) - ->group(module_path('Finance', '/Routes/api.php')); - } -} diff --git a/docker/statistics/Modules/Finance/Resources/views/cost_center_performance/center_performance_details.blade.php b/docker/statistics/Modules/Finance/Resources/views/cost_center_performance/center_performance_details.blade.php deleted file mode 100755 index f2586887..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/cost_center_performance/center_performance_details.blade.php +++ /dev/null @@ -1,408 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('cost_center_performance.center_performance') }}

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    - - - {{ Form::open(['method'=>'post','route' => 'cost_centers.store']) }} - -
    -

    {{ __('cost_center_performance.select_cost_center') }}

    -
    - -
    - {{ Form::select('cost_center',$cost_centers,'',['class' => 'form-control compulsory required']) }} -
    - -
    -

    {{ __('cost_center_performance.select_date_range') }}

    -
    - -
    - -
    - - - - -
    - {{ Form::submit(__('cost_center_performance.submit'), ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    - - - -
    -
    -
    -
    -
    -

    {!! __('cost_center_performance.showing_performance_of') . " " . $ward_name !!}

    -
    -
    -
    - @if($ward_name == "OPD") - - - - - - - - - - @php $total = 0; @endphp - - - - - - @php $total += array_sum($drugs) + array_sum($tta_cost); @endphp - - - - - - @php $total += array_sum($consultations); @endphp - - - - - - - @php $total += array_sum($services); @endphp - - - - @if(is_eye_module_enabled()) - - - - @php $total += array_sum($optics); @endphp - - - @endif - - - - - @php $total += array_sum($sundries); @endphp - - - - - - @php $total += array_sum($investigations); @endphp - - - - - - @php $total += array_sum($procedures); @endphp - - - @if($ward_name != "OPD") - - - - @php $total += array_sum($extras); @endphp - - - @endif - - - - - - -
    {{ __('cost_center_performance.item') }}{{ __('cost_center_performance.total') }}{{ __('cost_center_performance.action') }}
    {{ __('cost_center_performance.drug') }}{{ ugandan_shillings(array_sum($drugs) + array_sum($tta_cost)) }} - @if(array_sum($drugs) > 0) - {{ Form::open(['method'=>'post','route' => 'cost_center.income_detailed_report']) }} - {{ Form::hidden('service_type', $request) }} - {{ Form::hidden('dates', $request->dates) }} - {{ Form::hidden('comparator', 'DR') }} - {{ Form::hidden('date_type', $request->date_type) }} - {{ Form::hidden('request', $request) }} - {{ Form::submit(__('cost_center_performance.details'), ['class'=>'btn btn-success']) }} - {{ Form::close() }} - @else - - @endif -
    {{ __('cost_center_performance.consultation') }}{{ ugandan_shillings(array_sum($consultations)) }} - - @if(array_sum($consultations) > 0) - {{ Form::open(['method'=>'post','route' => 'cost_center.income_detailed_report']) }} - {{ Form::hidden('service_type', $request) }} - {{ Form::hidden('dates', $request->dates) }} - {{ Form::hidden('comparator', 'CON') }} - {{ Form::hidden('date_type', $request->date_type) }} - {{ Form::hidden('request', $request) }} - {{ Form::submit(__('cost_center_performance.details'), ['class'=>'btn btn-success']) }} - {{ Form::close() }} - @else - - @endif -
    {{ __('cost_center_performance.services') }}{{ ugandan_shillings(array_sum($services)) }} - @if(array_sum($services) > 0) - {{ Form::open(['method'=>'post','route' => 'cost_center.income_detailed_report']) }} - {{ Form::hidden('service_type', $request) }} - {{ Form::hidden('dates', $request->dates) }} - {{ Form::hidden('comparator', 'OTH') }} - {{ Form::hidden('date_type', $request->date_type) }} - {{ Form::hidden('request', $request) }} - {{ Form::submit(__('cost_center_performance.details'), ['class'=>'btn btn-success']) }} - {{ Form::close() }} - @else - - @endif -
    {{ __('cost_center_performance.optical_items') }}{{ ugandan_shillings(array_sum($optics)) }} - @if(array_sum($optics) > 0) - {{ Form::open(['method'=>'post','route' => 'cost_center.income_detailed_report']) }} - {{ Form::hidden('service_type', $request) }} - {{ Form::hidden('dates', $request->dates) }} - {{ Form::hidden('comparator', 'OPTICS') }} - {{ Form::hidden('date_type', $request->date_type) }} - {{ Form::hidden('request', $request) }} - {{ Form::submit(__('cost_center_performance.details'), ['class'=>'btn btn-success']) }} - {{ Form::close() }} - @else - - @endif -
    {{ __('cost_center_performance.sundries') }}{{ ugandan_shillings(array_sum($sundries)) }} - @if(array_sum($sundries) > 0) - {{ Form::open(['method'=>'post','route' => 'cost_center.income_detailed_report']) }} - {{ Form::hidden('service_type', $request) }} - {{ Form::hidden('dates', $request->dates) }} - {{ Form::hidden('comparator', 'SUN') }} - {{ Form::hidden('date_type', $request->date_type) }} - {{ Form::hidden('request', $request) }} - {{ Form::submit(__('cost_center_performance.details'), ['class'=>'btn btn-success']) }} - {{ Form::close() }} - @else - - @endif -
    {{ __('cost_center_performance.investigations') }}{{ ugandan_shillings(array_sum($investigations)) }} - @if(array_sum($investigations) > 0) - {{ Form::open(['method'=>'post','route' => 'cost_center.income_detailed_report']) }} - {{ Form::hidden('service_type', $request) }} - {{ Form::hidden('dates', $request->dates) }} - {{ Form::hidden('comparator', 'IA') }} - {{ Form::hidden('date_type', $request->date_type) }} - {{ Form::hidden('request', $request) }} - {{ Form::submit(__('cost_center_performance.details'), ['class'=>'btn btn-success']) }} - {{ Form::close() }} - @else - - @endif -
    {{ __('cost_center_performance.procedures') }}{{ ugandan_shillings(array_sum($procedures)) }} - @if(array_sum($procedures) > 0) - {{ Form::open(['method'=>'post','route' => 'cost_center.income_detailed_report']) }} - {{ Form::hidden('service_type', $request) }} - {{ Form::hidden('dates', $request->dates) }} - {{ Form::hidden('comparator', 'PR') }} - {{ Form::hidden('date_type', $request->date_type) }} - {{ Form::hidden('request', $request) }} - {{ Form::submit(__('cost_center_performance.details'), ['class'=>'btn btn-success']) }} - {{ Form::close() }} - @else - - @endif -
    {{ __('cost_center_performance.extras') }}{{ ugandan_shillings(array_sum($extras)) }}
    {{ __('cost_center_performance.total') }}{{ ugandan_shillings($total) }}
    - @else - - - - - - - - - - @php - $sum_total = 0; - @endphp - - - @if(count($inpatient_record_results) > 0) - @foreach($inpatient_record_results as $record) - - - - - - - @php - $sum_total += $record->patient_amount_paid; - @endphp - - @endforeach - @endif - - - - - - - - -
    {{ __('cost_center_performance.patient') }}{{ __('cost_center_performance.staff_in_charge') }}{{ __('cost_center_performance.receipts') }}{{ __('cost_center_performance.amount') }}{{ __('cost_center_performance.action') }}
    {{ get_full_name($record->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ get_full_name($record->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ $record->receipt_number }}{{ ugandan_shillings($record->patient_amount_paid) }} - {{ __('cost_center_performance.print_receipt') }} -
    {{ __('cost_center_performance.total') }}{{ ugandan_shillings($sum_total) }}
    - @endif -
    -
    -
    -
    -
    - -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Finance/Resources/views/cost_center_performance/center_performance_details_opd.blade.php b/docker/statistics/Modules/Finance/Resources/views/cost_center_performance/center_performance_details_opd.blade.php deleted file mode 100755 index c97838f6..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/cost_center_performance/center_performance_details_opd.blade.php +++ /dev/null @@ -1,226 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('cost_center_performance.center_performance_details') }}

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    - - - {{ Form::open(['method'=>'post','route' => 'cost_centers.store']) }} - -
    -

    {{ __('cost_center_performance.select_cost_center') }}

    -
    - -
    - {{ Form::select('cost_center',$cost_centers,'',['class' => 'form-control compulsory required']) }} -
    - -
    -

    {{ __('cost_center_performance.select_date_range') }}

    -
    - -
    - -
    - - - - -
    - {{ Form::submit(__('cost_center_performance.submit'), ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    - - - -
    -
    -
    -
    -
    -

    {!! __('cost_center_performance.showing_performance_of') . " "!!}

    -
    -
    -
    - - - - - - - - - - - - - - - - - - - @foreach($result as $item) - - - - - - - - - - - - - - - - @endforeach - -
    {{ __('cost_center_performance.patient_number') }}{{ __('cost_center_performance.patient_name') }}{{ __('cost_center_performance.staff') }}{{ __('cost_center_performance.date') }}{{ __('cost_center_performance.receipt_number') }}{{ __('cost_center_performance.item_name') }}{{ __('cost_center_performance.amount') }}{{ __('cost_center_performance.amount_patient_paid') }}{{ __('cost_center_performance.donor_discount') }}{{ __('cost_center_performance.gen_discount') }}{{ __('cost_center_performance.action') }}
    {{ get_name($item->patient_id, 'id', 'number', 'patients') }}{{ get_name($item->patient_id, 'id', 'first_name', 'patients') }} {{ get_name($item->patient_id, 'id', 'last_name', 'patients') }}{{ $staff_member[0]->first_name." ".$staff_member[0]->last_name }}{{ streamline_date($item->created_at) }}{{ $item->receipt_number }} - @php - $ids = explode(",",$item->items_ids); - - for($i = 0; $i < count($ids); $i++){ - echo $i+1 ." ." . get_name($ids[$i], 'id', 'name', 'services') ."
    " ; - } - @endphp -
    - @php - $ids = explode(",",$item->items_ids); - - for($i = 0; $i < count($ids); $i++){ - echo $i+1 ." ." . ugandan_shillings(get_name($ids[$i], 'id', 'non_insured_price', 'services')) ."
    " ; - } - @endphp -
    {{ ugandan_shillings($item->patient_amount_paid) }}{{ ugandan_shillings(get_name($item->receipt_number, 'receipt_number', 'donor_to_pay', 'donor_discount_details')) }}{{ ugandan_shillings(get_name($item->receipt_number, 'receipt_number', 'discount_amount', 'discounts')) }} - @php - $id = $item->id; - @endphp - - - {{ __('cost_center_performance.print_receipt') }} - -
    -
    -
    -
    -
    -
    - -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Finance/Resources/views/cost_center_performance/index.blade.php b/docker/statistics/Modules/Finance/Resources/views/cost_center_performance/index.blade.php deleted file mode 100755 index 5c929e04..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/cost_center_performance/index.blade.php +++ /dev/null @@ -1,303 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('cost_center_performance.center_performance') }}

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    - - - {{ Form::open(['method'=>'post','route' => 'cost_centers.store']) }} - -
    -

    {{ __('cost_center_performance.select_cost_center') }}

    -
    - -
    - {{ Form::select('cost_center',$cost_centers,'',['class' => 'form-control compulsory required cost_centers']) }} -
    - -
    -

    {{ __('cost_center_performance.select_date_range') }}

    -
    - -
    - -
    - - - - -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    - - - - -
    -
    -
    -
    - - - @if($request != []) - @if($request->dates != "-select-" || $request->cost_center != "0") - @if(($request->dates == "today") || ($request->dates == "yesterday") || ($request->dates == "custom_date") || ($request->dates == "custom_date_range")) - -
    - @if(isset($display)) -

    {!! isset($display) ? $display : '' !!}

    - @endif -
    -
    - -
    - - - - - - - - - - @php $total = 0; @endphp - @if($request->cost_center == "") - - - - - - @elseif($request->cost_center == "all_cost_centers") - @foreach($per_wards_total_amounts_array as $ward => $amount) - - - @php - $ward_amount = $ward == "OPD" ? $amount + $total_opd_debt_payments : $amount; - @endphp - - @php $total += $ward_amount ; @endphp - - - @endforeach - @else - @foreach($per_wards_total_amounts_array as $ward => $amount) - - - - @php $total += $amount ; @endphp - - - @endforeach - @endif - - - - - - - - -
    {{ __('cost_center_performance.item') }}{{ __('cost_center_performance.total') }}{{ __('cost_center_performance.action') }}
    {{ $ward == "OPD" ? "OPD" : get_name($ward, "id", "name", "wards") }}{{ ugandan_shillings($ward_amount) }} - @if($ward_amount > 0) - {{ Form::open(['method'=>'post', 'route' => 'cost_centers.details']) }} - {{ Form::hidden('ward_id', $ward) }} - {{ Form::hidden('dates', ($request->start_date)."/".$request->end_date) }} - {{ Form::hidden('date_type', $request->dates) }} - {{ Form::submit(__('cost_center_performance.details'), ['class'=>'btn btn-success ']) }} - {{ Form::close() }} - @else - - @endif -
    {{ $ward == "OPD" ? "OPD" : get_name($ward, "id", "name", "wards") }}{{ ugandan_shillings($amount) }} - @if($amount > 0) - {{ Form::open(['method'=>'post', 'route' => 'cost_centers.details']) }} - {{ Form::hidden('ward_id', $ward) }} - {{ Form::hidden('dates', ($request->start_date)."/".$request->end_date) }} - {{ Form::hidden('date_type', $request->dates) }} - {{ Form::submit(__('cost_center_performance.details'), ['class'=>'btn btn-success ']) }} - {{ Form::close() }} - @else - - @endif -
    {{ __('cost_center_performance.total') }}{{ ugandan_shillings($total) }}
    -
    - @else -
    -
    -
    -

    {{ __('cost_center_performance.select_valid_date') }}

    -
    -
    - @endif - @else -
    -
    -
    -

    {{ __('cost_center_performance.select_valid_date') }}

    -
    -
    - @endif - @else -
    -
    -
    -

    {{ __('cost_center_performance.select_valid_date') }}

    -
    -
    - @endif -
    -
    -
    -
    - -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Finance/Resources/views/cost_center_performance/lab_perfomance.blade.php b/docker/statistics/Modules/Finance/Resources/views/cost_center_performance/lab_perfomance.blade.php deleted file mode 100755 index 993e9a2a..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/cost_center_performance/lab_perfomance.blade.php +++ /dev/null @@ -1,446 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('cost_center_performance.investigation_performance') }}

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    - - - {{ Form::open(['method'=>'post','route' => 'lab_performance.index']) }} - -
    -

    {{ __('cost_center_performance.select_date_range') }}

    -
    - -
    - -
    - - - - -
    - {{ Form::submit(__('cost_center_performance.submit'), ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    - - - - -
    -
    -
    -
    - - - @if($request != []) - @if($request->date_type != "-select-") - @if(($request->dates == "today") || ($request->date_type == "yesterday") || ($request->date_type == "custom_date") || ($request->date_type == "custom_date_range")) - -
    - @if(isset($display)) -

    {!! isset($display) ? $display : '' !!}

    - @endif -
    -
    -
    - {!! $chartjs->render() !!} -
    -
    - - - - - - - - - - @php - $grand_total = 0; - $total = 0; - foreach ($inv_lab as $item){ - $total += $item['cost_price']; - } - @endphp - - - - - @php $grand_total = $total; @endphp - - - @php - $total = 0; - foreach ($inv_x_ray as $item){ - $total += $item['cost_price']; - } - @endphp - - - - - @php $grand_total += $total; @endphp - - - @php - $total = 0; - foreach ($inv_ultrasound as $item){ - $total += $item['cost_price']; - } - @endphp - - - - - @php $grand_total += $total; @endphp - - - - - - - - -
    {{ __('cost_center_performance.investigation_type') }}{{ __('cost_center_performance.amount') }}
    {{ __('cost_center_performance.lab') }}{{ ugandan_shillings($total) }} - {{ Form::open(['method'=>'post','route' => 'lab_performance.details']) }} - - {{ Form::hidden('inv_type', "lab") }} - - @foreach ($inv_lab as $item) - {{ Form::hidden('investigations_array[]', $item['item']) }} - - {{ Form::hidden('patient_names_array[]',get_full_name($item['patient_id'],'id', 'first_name', 'last_name', 'patients') ) }} - - {{ Form::hidden('patients_array[]',get_name($item['patient_id'],'id','number', 'patients') ) }} - {{ Form::hidden('receipt_number_array[]', $item['receipt_number'] ) }} - {{ Form::hidden('investigations_name_array[]',get_name($item['item'], 'id', 'name', 'investigations') ) }} - {{ Form::hidden('investigations_date_array[]',streamline_date($item['date']) ) }} - {{ Form::hidden('investigations_amountpaid_array[]',ugandan_shillings($item['patient_amount_paid']) ) }} - {{ Form::hidden('investigations_cost_array[]',ugandan_shillings($item['cost_price']) ) }} - @endforeach - - {{ Form::hidden('total', $total) }} - - {{ Form::submit(__('cost_center_performance.details'), ['class'=>'btn btn-success ']) }} - - {{ Form::close() }} -
    {{ __('cost_center_performance.xray') }}{{ ugandan_shillings($total) }} - {{ Form::open(['method'=>'post','route' => 'lab_performance.details']) }} - - {{ Form::hidden('inv_type', "xray") }} - - @foreach ($inv_x_ray as $item) - {{ Form::hidden('investigations_array[]', $item['item']) }} - - {{ Form::hidden('patient_names_array[]',get_full_name($item['patient_id'],'id', 'first_name', 'last_name', 'patients') ) }} - - {{ Form::hidden('patients_array[]',get_name($item['patient_id'],'id','number', 'patients') ) }} - {{ Form::hidden('receipt_number_array[]', $item['receipt_number'] ) }} - {{ Form::hidden('investigations_name_array[]',get_name($item['item'], 'id', 'name', 'investigations') ) }} - {{ Form::hidden('investigations_date_array[]',streamline_date($item['date']) ) }} - {{ Form::hidden('investigations_amountpaid_array[]',ugandan_shillings($item['patient_amount_paid']) ) }} - {{ Form::hidden('investigations_cost_array[]',ugandan_shillings($item['cost_price']) ) }} - @endforeach - - {{ Form::hidden('total', $total) }} - - {{ Form::submit(__('cost_center_performance.details'), ['class'=>'btn btn-success ']) }} - - {{ Form::close() }} -
    {{ __('cost_center_performance.ultrasound') }}{{ ugandan_shillings($total) }} - {{ Form::open(['method'=>'post','route' => 'lab_performance.details']) }} - - {{ Form::hidden('inv_type', "ultrasound") }} - - @foreach ($inv_ultrasound as $item) - {{ Form::hidden('investigations_array[]', $item['item']) }} - - {{ Form::hidden('patient_names_array[]',get_full_name($item['patient_id'],'id', 'first_name', 'last_name', 'patients') ) }} - - {{ Form::hidden('patients_array[]',get_name($item['patient_id'],'id','number', 'patients') ) }} - {{ Form::hidden('receipt_number_array[]', $item['receipt_number'] ) }} - {{ Form::hidden('investigations_name_array[]',get_name($item['item'], 'id', 'name', 'investigations') ) }} - {{ Form::hidden('investigations_date_array[]',streamline_date($item['date']) ) }} - {{ Form::hidden('investigations_amountpaid_array[]',ugandan_shillings($item['patient_amount_paid']) ) }} - {{ Form::hidden('investigations_cost_array[]',ugandan_shillings($item['cost_price']) ) }} - @endforeach - - {{ Form::hidden('total', $total) }} - - {{ Form::submit(__('cost_center_performance.details'), ['class'=>'btn btn-success ']) }} - - {{ Form::close() }} -
    {{ __('cost_center_performance.total') }}{{ ugandan_shillings($grand_total) }}
    -
    - @else -
    -
    -
    - {!! $chartjs->render() !!} -
    -
    -
    - @if(isset($display)) -

    {!! __('cost_center_performance.') . "Records displayed are of ".streamline_date(date('Y-m-d')) !!}

    -

    - @endif -
    - - - - - - - - - - @php - $grand_total = 0; - $total = 0; - foreach ($inv_lab as $item){ - $total += $item['cost_price']; - } - @endphp - - - - - @php $grand_total = $total; @endphp - - - @php - $total = 0; - foreach ($inv_x_ray as $item){ - $total += $item['cost_price']; - } - @endphp - - - - - @php $grand_total += $total; @endphp - - - @php - $total = 0; - foreach ($inv_ultrasound as $item){ - $total += $item['cost_price']; - } - @endphp - - - - - @php $grand_total += $total; @endphp - - - - - - - - -
    {{ __('cost_center_performance.investigation_type') }}{{ __('cost_center_performance.amount') }}
    {{ __('cost_center_performance.lab') }}{{ ugandan_shillings($total) }} - {{ Form::open(['method'=>'post','route' => 'lab_performance.details']) }} - - {{ Form::hidden('inv_type', "lab") }} - - @foreach ($inv_lab as $item) - {{ Form::hidden('investigations_array[]', $item['item']) }} - - {{ Form::hidden('patient_names_array[]',get_full_name($item['patient_id'],'id', 'first_name', 'last_name', 'patients') ) }} - - {{ Form::hidden('patients_array[]',get_name($item['patient_id'],'id','number', 'patients') ) }} - {{ Form::hidden('receipt_number_array[]', $item['receipt_number'] ) }} - {{ Form::hidden('investigations_name_array[]',get_name($item['item'], 'id', 'name', 'investigations') ) }} - {{ Form::hidden('investigations_date_array[]',streamline_date($item['date']) ) }} - {{ Form::hidden('investigations_amountpaid_array[]',ugandan_shillings($item['patient_amount_paid']) ) }} - {{ Form::hidden('investigations_cost_array[]',ugandan_shillings($item['cost_price']) ) }} - @endforeach - - {{ Form::submit(__('cost_center_performance.details'), ['class'=>'btn btn-success ']) }} - - {{ Form::close() }} -
    {{ __('cost_center_performance.xray') }}{{ ugandan_shillings($total) }} - {{ Form::open(['method'=>'post','route' => 'lab_performance.details']) }} - - {{ Form::hidden('inv_type', "xray") }} - - @foreach ($inv_x_ray as $item) - {{ Form::hidden('investigations_array[]', $item['item']) }} - {{ Form::hidden('patient_names_array[]',get_full_name($item['patient_id'],'id', 'first_name', 'last_name', 'patients') ) }} - - {{ Form::hidden('patients_array[]',get_name($item['patient_id'],'id','number', 'patients') ) }} - {{ Form::hidden('receipt_number_array[]', $item['receipt_number'] ) }} - {{ Form::hidden('investigations_name_array[]',get_name($item['item'], 'id', 'name', 'investigations') ) }} - {{ Form::hidden('investigations_date_array[]',streamline_date($item['date']) ) }} - {{ Form::hidden('investigations_amountpaid_array[]',ugandan_shillings($item['patient_amount_paid']) ) }} - {{ Form::hidden('investigations_cost_array[]',ugandan_shillings($item['cost_price']) ) }} - @endforeach - - {{ Form::submit(__('cost_center_performance.details'), ['class'=>'btn btn-success ']) }} - - {{ Form::close() }} -
    {{ __('cost_center_performance.ultrasound') }}{{ ugandan_shillings($total) }} - {{ Form::open(['method'=>'post','route' => 'lab_performance.details']) }} - - {{ Form::hidden('inv_type', "ultrasound") }} - - @foreach ($inv_ultrasound as $item) - {{ Form::hidden('investigations_array[]', $item['item']) }} - {{ Form::hidden('patient_names_array[]',get_full_name($item['patient_id'],'id', 'first_name', 'last_name', 'patients') ) }} - - {{ Form::hidden('patients_array[]',get_name($item['patient_id'],'id','number', 'patients') ) }} - {{ Form::hidden('receipt_number_array[]', $item['receipt_number'] ) }} - {{ Form::hidden('investigations_name_array[]',get_name($item['item'], 'id', 'name', 'investigations') ) }} - {{ Form::hidden('investigations_date_array[]',streamline_date($item['date']) ) }} - {{ Form::hidden('investigations_amountpaid_array[]',ugandan_shillings($item['patient_amount_paid']) ) }} - {{ Form::hidden('investigations_cost_array[]',ugandan_shillings($item['cost_price']) ) }} - @endforeach - - {{ Form::submit(__('cost_center_performance.details'), ['class'=>'btn btn-success ']) }} - - {{ Form::close() }} -
    {{ __('cost_center_performance.total') }}{{ ugandan_shillings($grand_total) }}
    -
    -
    -
    - @endif - @else -
    -
    -
    -

    {{ __('cost_center_performance.select_valid_date') }}

    -
    -
    - @endif - @else -
    -
    -
    -

    {{ __('cost_center_performance.select_valid_date') }}

    -
    -
    - @endif -
    -
    -
    -
    - -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Finance/Resources/views/cost_center_performance/lab_perfomance_details.blade.php b/docker/statistics/Modules/Finance/Resources/views/cost_center_performance/lab_perfomance_details.blade.php deleted file mode 100755 index 9fcb5501..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/cost_center_performance/lab_perfomance_details.blade.php +++ /dev/null @@ -1,207 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('cost_center_performance.investigation_performance_details') }}

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    - - - {{ Form::open(['method'=>'post','route' => 'lab_performance.index']) }} - -
    -

    {{ __('cost_center_performance.select_date_range') }}

    -
    - -
    - -
    - - - - -
    - {{ Form::submit(__('cost_center_performance.submit'), ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    - - - - -
    -
    -
    -
    - - -
    - @if(isset($display)) -

    {!! isset($display) ? $display : '' !!}

    - @endif -
    -
    - -
    - - - - - - - - - - - - - @php - $amount_patient_paid_total = 0; - $donor_discount_total = 0; - $general_discount_total = 0; - @endphp - - @for($i=0; $i < count($investigations_array); $i++) - - - - - - - - - @endfor - - - - - - - - - - - -
    {{ __('cost_center_performance.patient_number') }}{{ __('cost_center_performance.patient_name') }}{{ __('cost_center_performance.receipt_number') }}{{ __('cost_center_performance.item_name') }}{{ __('cost_center_performance.date') }}{{ __('cost_center_performance.amount') }}
    {{ $patient_names_array[$i] }}{{ $patients_array[$i] }}{{ $receipt_number_array[$i] }}{{ $investigations_name_array[$i] }}{{ $investigations_date_array[$i] }} - {{ isset($investigations_cost_array[$i]) ? $investigations_cost_array[$i] : "" }} -
    {{ __('cost_center_performance.total') }}{{ ugandan_shillings($invs_grand_total) }}
    -
    -
    -
    -
    -
    - -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Finance/Resources/views/cost_center_performance/top_performing_investigations.blade.php b/docker/statistics/Modules/Finance/Resources/views/cost_center_performance/top_performing_investigations.blade.php deleted file mode 100755 index 0fd48ffc..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/cost_center_performance/top_performing_investigations.blade.php +++ /dev/null @@ -1,166 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('cost_center_performance.top_performing_investigations') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    - - @include('flash::message') - - - {{ Form::open(['method'=>'post','route' => 'top_performing_investigations']) }} - -
    -

    {{ __('cost_center_performance.select_cost_center') }}

    -
    - -
    - -
    - - - - -
    - {{ Form::submit(__('cost_center_performance.submit'), ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    -
    -
    -
    -
    - {!! isset($display) ? ''.$display.'' : '' !!} -
    -
    - -
    - @if($request != []) -
    - {!! $chartjs->render() !!} -
    - @else -
    -
    -

    {{ __('cost_center_performance.select_valid_date') }}

    -
    - @endif -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Finance/Resources/views/equity/create.blade.php b/docker/statistics/Modules/Finance/Resources/views/equity/create.blade.php deleted file mode 100755 index 7a823792..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/equity/create.blade.php +++ /dev/null @@ -1,85 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('title', '| Add Equity') - -@section('content') - -
    -
    -

    New Equity

    -
    -
    - -
    - -
    - -
    -
    - @include('finance::equity.menu') -
    -
    - - @include('flash::message') - -
    - -
    - {{ Form::open(['route' => 'equities.store','data-toggle'=>'validator']) }} - -
    - {{ Form::label('name', 'Equity Name') }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - {{ Form::label('amount', 'Amount') }} - {{ Form::number('amount', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - {{ Form::label('account_id', 'Chart Of Account') }} - {{ Form::select('account_id', $chart_of_accounts, '', ['class' => 'form-control compulsory' , 'required']) }} -
    -
    - -
    - {{ Form::label('deposit_to', 'Deposit To ?') }} - {{ Form::select('deposit_to', $banks, '', ['class' => 'form-control compulsory' , 'required']) }} -
    -
    - -
    - {{ Form::label('deposit_date', 'Deposit Date ?') }} - {{ Form::text('deposit_date', '', ['class' => 'form-control compulsory' , 'readonly', 'required']) }} -
    -
    - - - - {{ Form::close() }} -
    -
    -@endsection - - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Finance/Resources/views/equity/edit.blade.php b/docker/statistics/Modules/Finance/Resources/views/equity/edit.blade.php deleted file mode 100755 index 2c4c4503..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/equity/edit.blade.php +++ /dev/null @@ -1,86 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('title', '| Add Equity') - -@section('content') - -
    -
    -

    Edit Equity

    -
    -
    - -
    - -
    - -
    -
    - @include('finance::equity.menu') -
    -
    - - @include('flash::message') - -
    - -
    - {{ Form::model($equity, ['method' => 'PUT', 'route' => ['equities.update',$equity]]) }} - -
    - {{ Form::label('name', 'Equity Name') }} - {{ Form::text('name', $equity->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - {{ Form::label('amount', 'Amount') }} - {{ Form::number('amount', $equity->amount, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - {{ Form::label('account_id', 'Chart Of Account') }} - {{ Form::select('account_id', $chart_of_accounts, $equity->account_id, ['class' => 'form-control compulsory' , 'required']) }} -
    -
    - -
    - {{ Form::label('deposit_to', 'Deposit To ?') }} - {{ Form::select('deposit_to', $banks, $equity->deposited_to, ['class' => 'form-control compulsory' , 'required']) }} -
    -
    - -
    - {{ Form::label('deposit_date', 'Deposit Date ?') }} - {{ Form::text('deposit_date', $equity->deposit_date, ['class' => 'form-control compulsory' , 'readonly', 'required']) }} -
    -
    - - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default btn-rounded waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -@endsection - - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Finance/Resources/views/equity/inactive.blade.php b/docker/statistics/Modules/Finance/Resources/views/equity/inactive.blade.php deleted file mode 100755 index 73391f59..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/equity/inactive.blade.php +++ /dev/null @@ -1,72 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    Equities

    -
    -
    - -
    - -
    - -
    -
    - @include('finance::equity.menu') -
    -
    - - @include('flash::message') - -
    -
    -
    - - - - - - - - - - - @foreach($equities as $equity) - - - - - - - - @endforeach - - -
    NameAmountChart Of Account
    {{ $equity->name }}{{ ugandan_shillings($equity->amount) }}{{ get_name($equity->account_id, 'id', 'name', 'chart_of_accounts') }} - {{ Form::model($equity->id ,['method' => 'POST', 'route' => ['equities.activate', $equity->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Finance/Resources/views/equity/index.blade.php b/docker/statistics/Modules/Finance/Resources/views/equity/index.blade.php deleted file mode 100755 index b88a96ee..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/equity/index.blade.php +++ /dev/null @@ -1,78 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    Equities

    -
    -
    - -
    - -
    - -
    -
    - @include('finance::equity.menu') -
    -
    - - @include('flash::message') - -
    -
    -
    - - - - - - - - - - - - @foreach($equities as $equity) - - - - - - - - - @endforeach - - -
    NameAmountChart Of Account
    {{ $equity->name }}{{ ugandan_shillings($equity->amount) }}{{ get_name($equity->account_id, 'id', 'name', 'chart_of_accounts') }} - Edit - - {{ Form::model($equity->id ,['method' => 'DELETE', 'route' => ['equities.destroy', $equity->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Finance/Resources/views/equity/menu.blade.php b/docker/statistics/Modules/Finance/Resources/views/equity/menu.blade.php deleted file mode 100755 index 893ec3cb..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/equity/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - Add Equity - View Equities - Activate Equities -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Finance/Resources/views/finance/incoming_opd_payments.blade.php b/docker/statistics/Modules/Finance/Resources/views/finance/incoming_opd_payments.blade.php deleted file mode 100755 index 7f6af41b..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/finance/incoming_opd_payments.blade.php +++ /dev/null @@ -1,255 +0,0 @@ -@php use Illuminate\Support\Facades\Auth; @endphp -@extends('layouts.main') - -@push('styles') - - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('finance.incoming_patient_payments') }}

    -
    -
    - -
    -
    - -
    - @include('flash::message') - {{ Form::open(['route' => 'finance.incoming_opd_payments', 'method' => 'ANY']) }} -
    -
    -
    - {{ Form::label('clinic_id', __('finance.clinic')) }} - {{ Form::select('clinic_id', $clinics, '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - -
    -
    - {{ Form::label('search_by', __('finance.date')) }} - {{ Form::select('search_by', ['0'=>'Today','1'=>'Yesterday','2'=>'Custom Date','3'=>'Custom Range'], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - - -
    - {{ Form::label('search_patient', 'Search By Patient') }} -
    - -
    -
    - -
    -

    - {{ Form::button('Filter',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    -
    - {{ Form::close() }} - -
    - - - - - - - - - - - - - - @foreach($patient_episodes as $episode) - @php - $dob = new Carbon\Carbon($episode->date_of_birth); - - $has_procedures = is_integer($episode->procedure_id) && $episode->procedures_payment_status == 0 && $episode->procedures_is_inpatient == 0; - $has_investigations = is_integer($episode->investigation_id) && $episode->investigation_payment_status == 0 && $episode->invs_is_inpatient == 0; - $has_sundries = is_integer($episode->sundries_id) && $episode->sundries_payment_status == 0 && $episode->sundry_is_inpatient == 0; - $has_services = is_integer($episode->service_id) && $episode->service_payment_status == 0 && $episode->service_is_inpatient == 0; - $has_treatment = is_integer($episode->treatment_id) && $episode->treatment_payment_status == 0 && $episode->treatment_is_inpatient == 0; - @endphp - - - - - - - - - - - @endforeach - -
    {{ __('finance.patient_number') }}{{ __('finance.full_names') }}{{ __('finance.age') }}{{ __('finance.phone') }}{{ __('finance.category') }}{{ __('finance.un-billed_items') }}
    {{ $episode->number }}{!! insurance_flag($episode->patient_id) !!}{{ $dob->diffInYears(Carbon\Carbon::now()) }} (yrs){{ $episode->phone }}{{ $patient_categories[$episode->category_id] ?? "N/A" }} - {{ Form::open(['route' => 'patient_finance.select_payment_option']) }} - - {{ Form::hidden('episode_id', $episode->episode_id)}} - {{ Form::hidden('patient_id', $episode->patient_id)}} -
      - @if($has_services && Auth::user()->can('make-consultation-deposits')) -
    1. -
      - @endif - @if($has_treatment && Auth::user()->can('make-treatment-deposits')) -
    2. -
      - @endif - @if($has_investigations && Auth::user()->can('make-investigations-deposits')) -
    3. -
      - @endif - @if($has_procedures && Auth::user()->can('make-procedures-deposits')) -
    4. -
      - @endif - @if($has_sundries && Auth::user()->can('make-sundries-deposits')) -
    5. -
      - @endif - @if(Auth::user()->can('make-central-billing')) -
    6. - @endif -
    - {{ Form::close() }} -
    - {{ Form::model($episode->patient_id ,['method' => 'POST', 'route' => ['patient_finance.set_patient_session', $episode->patient_id]]) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Finance/Resources/views/finance/index.blade.php b/docker/statistics/Modules/Finance/Resources/views/finance/index.blade.php deleted file mode 100755 index 05c0b68e..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/finance/index.blade.php +++ /dev/null @@ -1,524 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -
    {{ __('finance.finance') }}
    -
    -
    - -
    -
    - -
    - - @if(Auth::user()->can('finance-patient-search') || Auth::user()->can('incoming-inpatient-bills') || Auth::user()->can('nssf-rate-edit') - || Auth::user()->can('streamline-bills-create') || Auth::user()->can('streamline-bills-index')) -
    -
    -

    {{ __('finance.patient_finance') }}

    - -
    - -
    -

    {{ __('finance.streamline_bills') }}

    - -
    - -
    -

    {{ __('finance.payroll_defaults') }}

    - -
    - -
    - @if(Auth::user()->can('payroll-category-create') || Auth::user()->can('payroll-category-view') || Auth::user()->can('payroll-category-delete')) -

    {{ __('payroll_categories.payroll_categories') }}

    - - @endif -
    -
    -
    - @endif - -
    - -
    -

    {{ __('finance.expenses_or_payments') }}

    - - -
    - -
    - @if(Auth::user()->can('price-list-category-create') || Auth::user()->can('price-list-category-view') || Auth::user()->can('price-list-category-delete')) -

    {{ __('finance.price_list') }}

    - - @endif -
    - -
    -

    {{ __('finance.chart_of_accounts') }}

    - -
    - -
    -

    {{ __('finance.account_types') }}

    - -
    - -
    -
    - -
    - -
    -

    {{ __('finance.banking') }}

    - -
    - - @if( Auth::user()->can('payroll-create') || Auth::user()->can('payroll-list') || Auth::user()->can('payroll-delete')) -
    -

    {{ __('finance.payrolls') }}

    - -
    - @endif - -
    -

    {{ __('finance.items') }}

    - -
    - -
    -

    {{ __('finance.discounts') }}

    - -
    - -
    -
    - -
    - -
    -

    {{ __('finance.reports_title') }}

    - -
    - -
    -

    {{ __('finance.invoices_title') }}

    -
      - @if(Auth::user()->can('Invoices-generate') || Auth::user()->can('Invoices-receive-payments') || Auth::user()->can('Invoices-view-payments-history')) - -
    • -
      {{ __('finance.invoices') }} -
    • -
      - @endif -
    -
    - - @if( Auth::user()->can('journals-view') ) -
    -

    {{ __('finance.journals_title') }}

    - -
    - @endif - - @if( Auth::user()->can('budget-list') ) -
    -

    {{ __('finance.title_budgets') }}

    - -
    - @endif -
    - -
    -@endsection diff --git a/docker/statistics/Modules/Finance/Resources/views/fixed_assets/create.blade.php b/docker/statistics/Modules/Finance/Resources/views/fixed_assets/create.blade.php deleted file mode 100755 index b59cd63a..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/fixed_assets/create.blade.php +++ /dev/null @@ -1,206 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('fixed_assets.fixed_assets') }}

    -
    -
    - -
    -
    - -@include('flash::message') -@if ($errors->any()) -
    - -
    -@endif - -@include('finance::fixed_assets.menu') - -
    -
    -
    - {{ Form::open(['route' => 'fixed_assets.store','data-toggle'=>'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('fixed_assets.asset_name')) }} - {{ Form::text('name', '', ['class'=>'form-control compulsory','required']) }} -
    - -
    - {{ Form::label('serial_number', __('fixed_assets.serial_number')) }} - {{ Form::text('serial_number', '', ['class'=>'form-control']) }} -
    - -
    - {{ Form::label('cost_price', __('fixed_assets.cost_price') ." / Asset Value") }} - {{ Form::number('cost_price', '', ['class'=>'form-control compulsory', 'id'=>'cost_price', 'required']) }} -
    - -
    - {{ Form::label('acquisition_date', __('fixed_assets.acquisition_date')) }} -
    - {{ Form::text('acquisition_date','',['class' => 'form-control compulsory','required'=>'true','readonly'=>'true','id'=>'datepicker-autoclose']) }} - -
    -
    - -
    - {{ Form::label('depreciation', __('fixed_assets.depreciation')) }} - {{ Form::number('depreciation', '', ['class'=>'form-control', 'step' => 'any']) }} -
    - -
    - {{ Form::label('item_condition',__('fixed_assets.item_condition')) }} -
    -
    -  {{ Form::radio('item_condition', 1, false, ["required"]) }} New -  {{ Form::radio('item_condition', 0, false, ["required"]) }} Used -
    -
    -
    - -
    - {{ Form::label('supplier', __('fixed_assets.supplier')) }} - {{ Form::select('supplier', $suppliers, null, ['class'=>'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('fixed_asset_account', __('fixed_assets.fixed_asset_account')) }} - {{ Form::select('fixed_asset_account', $fixed_asset_chart_of_accounts, null, ['class'=>'form-control compulsory', 'required']) }} -
    -
    -
    - -
    -
    - {{ Form::label('warranty_expiration_date',__('fixed_assets.warranty_expiry')) }} -
    - {{ Form::text('warranty_expiration_date','',['class' => 'form-control','readonly'=>'true','id'=>'datepicker-autoclose2']) }} - -
    -
    - - @php $payment_type = array(''=>'-select-','cash'=>'Cash / EFT / CHEQUE', 'bill'=>'Bill', 'asset_exists'=>'Already Existing Asset'); @endphp -
    - {{ Form::label('payment_type', 'Payment Type') }} - {{ Form::select('payment_type', $payment_type, null, ['class'=>'form-control compulsory', 'required', 'id'=>'payment_type']) }} -
    - - - - - -
    - {{ Form::label('description', __('fixed_assets.description')) }} - {{ Form::textArea('description', '', ['class'=>'form-control', 'rows' => 4]) }} -
    - - -
    -
    - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Finance/Resources/views/fixed_assets/edit.blade.php b/docker/statistics/Modules/Finance/Resources/views/fixed_assets/edit.blade.php deleted file mode 100755 index 533f7130..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/fixed_assets/edit.blade.php +++ /dev/null @@ -1,248 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('fixed_assets.fixed_assets') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -@include('finance::fixed_assets.menu') - -
    -
    -
    - {{ Form::model($fixed_asset, ['method' => 'PUT', 'route' => ['fixed_assets.update',$fixed_asset], 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('fixed_assets.asset_name')) }} - {{ Form::text('name', $fixed_asset->name, ['class'=>'form-control compulsory','required']) }} -
    - -
    - {{ Form::label('serial_number', __('fixed_assets.serial_number')) }} - {{ Form::text('serial_number', $fixed_asset->serial_number , ['class'=>'form-control']) }} -
    - -
    - {{ Form::label('cost_price', __('fixed_assets.cost_price')) }} - {{ Form::number('cost_price', $fixed_asset->cost_price , ['class'=>'form-control', 'readonly','onkeyup'=>'get_balance()']) }} -
    - -
    @php $acquisition_date = \Carbon\Carbon::parse($fixed_asset->acquisition_date)->format('d-m-Y'); @endphp - {{ Form::label('acquisition_date', __('fixed_assets.acquisition_date')) }} -
    - {{ Form::text('acquisition_date', $acquisition_date, ['class' => 'form-control compulsory', 'required','readonly'=>'true','id'=>'datepicker-autoclose']) }} - -
    -
    - -
    - {{ Form::label('depreciation', __('fixed_assets.depreciation')) }} - {{ Form::number('depreciation', $fixed_asset->depreciation , ['class'=>'form-control', 'step' => 'any']) }} -
    - -
    - {{ Form::label('item_condition',__('fixed_assets.item_condition')) }} -
    -
    -  {{ Form::radio('item_condition', 1, false, ["required"]) }} New -  {{ Form::radio('item_condition', 0, false, ["required"]) }} Used -
    -
    -
    - -
    - {{ Form::label('supplier', __('fixed_assets.supplier')) }} - {{ Form::select('supplier', $suppliers, $fixed_asset->supplier_id, ['class'=>'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('fixed_asset_account', __('fixed_assets.fixed_asset_account')) }} - {{ Form::select('fixed_asset_account', $fixed_asset_chart_of_accounts, $fixed_asset->fixed_asset_account_id, ['class'=>'form-control compulsory', 'required']) }} -
    -
    -
    - -
    -
    - {{ Form::label('warranty_expiration_date',__('fixed_assets.warranty_expiry')) }} -
    - {{ Form::text('warranty_expiration_date',$fixed_asset->warranty_expiration_date,['class' => 'form-control compulsory', 'required','readonly'=>'true','id'=>'datepicker-autoclose2']) }} - -
    -
    - -
    - {{ Form::label('edit_payment_type', 'Edit payment options') }} -
    -
    -  {{ Form::radio('edit_payment_type', 1, false, ["required", "id" => "edit_payment"]) }} Yes -  {{ Form::radio('edit_payment_type', 0, false, ["required", "id" => "do_not_edit_payment"]) }} No -
    -
    -
    - - @php - $payment_type = array(''=>'-select-','cash'=>'Cash / EFT / CHEQUE', 'bill'=>'Bill', 'asset_exists'=>'Already Existing Asset'); - - $balance = 0; - $payable_account_id = 14; //default payable - - $bill = \Streamline\Models\HospitalBill::where(['item_ids' => $fixed_asset->id, 'bill_type' => 'ASSETS'])->first(); - - if ($bill) { - $balance = (int)$bill->total_amount; - $payable_account_id = $bill->payable_account; - } - @endphp - -
    - {{ Form::button(__('fixed_assets.update'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('fixed_assets.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} -
    - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Finance/Resources/views/fixed_assets/index.blade.php b/docker/statistics/Modules/Finance/Resources/views/fixed_assets/index.blade.php deleted file mode 100755 index 948e3019..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/fixed_assets/index.blade.php +++ /dev/null @@ -1,151 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('fixed_assets.fixed_assets') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -@include('finance::fixed_assets.menu') - -
    -
    -
    -

    {{ __('fixed_assets.export_to_pdf') }}

    -
    - - - - - - - - - - - - - - - - - - - @php $total_fixed_assets_value = 0; @endphp - @if(count($fixed_assets) > 0) - @foreach($fixed_assets as $fixed_asset) - @php $total_fixed_assets_value += $fixed_asset->cost_price; @endphp - - - - - - - - - - - - - - @endforeach - @endif - - - - - - - - - -
    {{ __('fixed_assets.asset_name') }}{{ __('fixed_assets.serial_number') }}{{ __('fixed_assets.cost_price') }}{{ __('fixed_assets.acquisition_date') }}{{ __('fixed_assets.description') }}{{ __('fixed_assets.warranty_expiry') }}{{ __('fixed_assets.item_condition') }}{{ __('fixed_assets.supplier') }}{{ __('fixed_assets.payment_type') }}
    {{ $fixed_asset->name }}{{ $fixed_asset->serial_number }}{{ ugandan_shillings($fixed_asset->cost_price) }}{{ $fixed_asset->acquisition_date }}{{ $fixed_asset->description }}{{ $fixed_asset->warranty_expiration_date }}{{ $fixed_asset->item_condition == 1 ? 'New' : 'Used' }}{{ isset($suppliers[$fixed_asset->supplier_id]) ? $suppliers[$fixed_asset->supplier_id] : "" }} - @switch($fixed_asset->payment_type) - @case("cash") - Cash/EFT/Cheque - @break - @case("bill") - Bill - @break - @case("asset_exists") - Already existing asset - @break - @default - - @endswitch - - @if(Auth::user()->can('edit-fixed-assets')) - {{ __('fixed_assets.edit') }} - @endif - - @if(Auth::user()->can('delete-fixed-assets')) - {{ Form::model($fixed_asset->id ,['method' => 'DELETE', 'route' => ['fixed_assets.destroy', $fixed_asset->id]]) }} - - {{ Form::close() }} - @endif -
    {{ __('family_accounts.total') }}{{ ugandan_shillings($total_fixed_assets_value) }}
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Finance/Resources/views/fixed_assets/menu.blade.php b/docker/statistics/Modules/Finance/Resources/views/fixed_assets/menu.blade.php deleted file mode 100755 index 3095b429..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/fixed_assets/menu.blade.php +++ /dev/null @@ -1,8 +0,0 @@ -
    -
    - {{ __('fixed_assets.add_fixed_asset') }} - - {{ __('fixed_assets.view_fixed_assets') }} - -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Finance/Resources/views/markup_tags/add_markups_to_drugs.blade.php b/docker/statistics/Modules/Finance/Resources/views/markup_tags/add_markups_to_drugs.blade.php deleted file mode 100755 index b047d90d..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/markup_tags/add_markups_to_drugs.blade.php +++ /dev/null @@ -1,188 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('markup_tags.create_markup_tag') }}

    -
    -
    - -
    -
    - -@include('finance::markup_tags.menu') - -
    -
    - - @include('flash::message') -
    -
    -
    - {{ __('markup_tags.existing_markups') }} - -
    - - - - - - - - - - @php $counter = 1; @endphp - @foreach($tags as $tag) - - - - - - @php $counter++; @endphp - @endforeach - -
    #{{ __('markup_tags.name') }}{{ __('markup_tags.percentage') }}
    {{ $counter }}{{ $tag->name }}{{ $tag->percentage }}%
    -
    -
    -
    - {{ Form::open(['route' => 'markup_tag.drug_markup_search', 'method' => 'ANY', 'role' => 'search']) }} -
    -
    -
    - {{ Form::text('drug_name', '', ['class' => 'form-control typeahead', 'placeholder' => __('markup_tags.search_name'), 'autocomplete' => 'off', 'spellcheck' => false]) }} -
    -
    - -
    - -
    -
    - - @if(isset($criteria) && isset($resultCount)) -

    - {{ __('markup_tags.search_criteria') }} : {{ $criteria }}    {{ __('markup_tags.total_results') }} : {{ $resultCount }}    {{ __('markup_tags.clear_search') }} -

    - @endif - {{ Form::close() }} - - {{ Form::open(['route' => 'markup_tag.update_mark_up_to_drug', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('markup_tag', __('markup_tags.select_markup')) }} - {{ Form::select('markup_tag', $tags_select, '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ __('markup_tags.select_all_drugs') }} - -
    - - - - - - - - - - - @php $counter = 1; @endphp - @foreach($drugs as $drug) - - - - - - - @php $counter++; @endphp - @endforeach - -
    #{{ __('markup_tags.name') }}{{ __('markup_tags.current_markup') }}
    {{ $counter }}{{ $drug->name }}{{ isset($tags_array[$drug->markup_tag_id]) ? $tags_array[$drug->markup_tag_id] : "" }}
    -
    - - {{ Form::button(__('markup_tags.apply'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('markup_tags.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} -
    - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Finance/Resources/views/markup_tags/add_markups_to_sundries.blade.php b/docker/statistics/Modules/Finance/Resources/views/markup_tags/add_markups_to_sundries.blade.php deleted file mode 100755 index 2bcfd8ca..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/markup_tags/add_markups_to_sundries.blade.php +++ /dev/null @@ -1,187 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('markup_tags.create_markup_tag') }}

    -
    -
    - -
    -
    - -@include('finance::markup_tags.menu') - -
    -
    - - @include('flash::message') -
    -
    -
    - {{ __('markup_tags.existing_markups') }} -
    - - - - - - - - - - @php $counter = 1; @endphp - @foreach($tags as $tag) - - - - - - @php $counter++; @endphp - @endforeach - -
    #{{ __('markup_tags.name') }}{{ __('markup_tags.percentage') }}
    {{ $counter }}{{ $tag->name }}{{ $tag->percentage }}%
    -
    -
    -
    - {{ Form::open(['route' => 'markup_tag.sundry_markup_search', 'method' => 'ANY', 'role' => 'search']) }} -
    -
    -
    - {{ Form::text('sundry_name', '', ['class' => 'form-control typeahead', 'placeholder' => __('markup_tags.search_name'), 'autocomplete' => 'off', 'spellcheck' => false]) }} -
    -
    - -
    - -
    -
    - - @if(isset($criteria) && isset($resultCount)) -

    - {{ __('markup_tags.search_criteria') }} : {{ $criteria }}    {{ __('markup_tags.total_results') }} : {{ $resultCount }}    {{ __('markup_tags.clear_search') }} -

    - @endif - {{ Form::close() }} - - {{ Form::open(['route' => 'markup_tag.update_mark_up_to_sundry', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('markup_tag', __('markup_tags.select_markup')) }} - {{ Form::select('markup_tag', $tags_select, '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ __('markup_tags.select_all_drugs') }} - -
    - - - - - - - - - - - @php $counter = 1; @endphp - @foreach($sundries as $sundry) - - - - - - - @php $counter++; @endphp - @endforeach - -
    #{{ __('markup_tags.name') }}{{ __('markup_tags.current_markup') }}
    {{ $counter }}{{ $sundry->name }}{{ isset($tags_array[$sundry->markup_tag_id]) ? $tags_array[$sundry->markup_tag_id] : "" }}
    -
    - - {{ Form::button(__('markup_tags.apply'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('markup_tags.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} -
    - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Finance/Resources/views/markup_tags/create.blade.php b/docker/statistics/Modules/Finance/Resources/views/markup_tags/create.blade.php deleted file mode 100755 index 6f450d14..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/markup_tags/create.blade.php +++ /dev/null @@ -1,87 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('markup_tags.create_markup_tag') }}

    -
    -
    - -
    -
    - -@include('finance::markup_tags.menu') - -
    -
    - - @include('flash::message') -
    -
    -
    -

    {{ __('markup_tags.create_new_markup_tag') }}

    -
    -
    - {{ Form::open(['route' => 'markup_tag.store', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('markup_tags.name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('percentage', __('markup_tags.percentage')) }} - {{ Form::number('percentage', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('markup_tags.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('markup_tags.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} -
    -    -
    -
    -
    - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Finance/Resources/views/markup_tags/edit.blade.php b/docker/statistics/Modules/Finance/Resources/views/markup_tags/edit.blade.php deleted file mode 100755 index bcb3dfca..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/markup_tags/edit.blade.php +++ /dev/null @@ -1,87 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('markup_tags.edit_markup_tag') }}

    -
    -
    - -
    -
    - -@include('finance::markup_tags.menu') - -
    -
    - - @include('flash::message') -
    -
    -
    -

    {{ __('markup_tags.edit_markup_tag_per') }}

    -
    -
    - {{ Form::model($tag, ['method' => 'PUT', 'route' => ['markup_tag.update',$tag] , 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('markup_tags.name')) }} - {{ Form::text('name', $tag->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('percentage', __('markup_tags.percentage')) }} - {{ Form::number('percentage', $tag->percentage, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('markup_tags.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('markup_tags.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} -
    -    -
    -
    -
    - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Finance/Resources/views/markup_tags/inactive.blade.php b/docker/statistics/Modules/Finance/Resources/views/markup_tags/inactive.blade.php deleted file mode 100755 index 0006389a..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/markup_tags/inactive.blade.php +++ /dev/null @@ -1,89 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('markup_tags.inactive_markup_tag') }}

    -
    -
    - -
    -
    - -@include('finance::markup_tags.menu') - -
    -
    - @include('flash::message') -
    -
    - - - - - - - - - - - - @php $counter = 1; @endphp - @foreach($tags as $tag) - - - - - - - - @php $counter++; @endphp - @endforeach - -
    #{{ __('markup_tags.name') }}{{ __('markup_tags.percentage') }}
    {{ $counter }}{{ $tag->name }}{{ $tag->percentage }}% - {{ __('markup_tags.edit') }} - - {{ Form::model($tag->id ,['method' => 'DELETE', 'route' => ['markup_tag.destroy', $tag->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Finance/Resources/views/markup_tags/index.blade.php b/docker/statistics/Modules/Finance/Resources/views/markup_tags/index.blade.php deleted file mode 100755 index 140eafbe..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/markup_tags/index.blade.php +++ /dev/null @@ -1,90 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('markup_tags.markup_tags') }}

    -
    -
    - -
    -
    - -@include('finance::markup_tags.menu') - -
    -
    - @include('flash::message') -
    -
    - - - - - - - - - - - - @php $counter = 1; @endphp - @foreach($markup_tags as $tag) - - - - - - - - @php $counter++; @endphp - @endforeach - -
    #{{ __('markup_tags.name') }}{{ __('markup_tags.percentage') }}
    {{ $counter }}{{ $tag->name }} ({{ __('markup_tags.click_view_drug_list') }}){{ $tag->percentage }}% - {{ __('markup_tags.edit') }} - - {{ Form::model($tag->id ,['method' => 'DELETE', 'route' => ['markup_tag.destroy', $tag->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Finance/Resources/views/markup_tags/menu.blade.php b/docker/statistics/Modules/Finance/Resources/views/markup_tags/menu.blade.php deleted file mode 100755 index 5d377422..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/markup_tags/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    -
    - {{ __('markup_tags.create_markup_tag') }} - {{ __('markup_tags.view_markup_tag') }} - {{ __('markup_tags.activate_markup_tag') }} -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Finance/Resources/views/markup_tags/view_drugs_of_a_markup.blade.php b/docker/statistics/Modules/Finance/Resources/views/markup_tags/view_drugs_of_a_markup.blade.php deleted file mode 100755 index 42feb69d..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/markup_tags/view_drugs_of_a_markup.blade.php +++ /dev/null @@ -1,98 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('markup_tags.markup_tags') }}

    -
    -
    - -
    -
    - -@include('finance::markup_tags.menu') - -
    -
    - - @include('flash::message') -
    -
    -
    - {{ __('markup_tags.markup') }} -
    - - - - - - - - - - - - - -
    {{ __('markup_tags.name') }}{{ __('markup_tags.percentage') }}
    {{ $tag->name }}{{ $tag->percentage }}%
    -
    -
    -
    -
    - - - - - - - - - - - @php $counter = 1; @endphp - @foreach($drugs as $drug) - - - - - - - @php $counter++; @endphp - @endforeach - -
    #{{ __('markup_tags.name') }}{{ __('markup_tags.cost_price') }}{{ __('markup_tags.sell_price') }}
    {{ $counter }}{{ $drug->name }}{{ ugandan_shillings($drug->cost_price) }}{{ ugandan_shillings($drug->non_insured_price) }}
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Finance/Resources/views/staff_payments_configuration/create.blade.php b/docker/statistics/Modules/Finance/Resources/views/staff_payments_configuration/create.blade.php deleted file mode 100755 index 9cd589af..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/staff_payments_configuration/create.blade.php +++ /dev/null @@ -1,328 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('general_settings.create_staff_payment_configuration') }} {!! (is_null($price_list_category_id) || $price_list_category_id == 0) ? "Cash" : "".get_name(get_name($price_list_category_id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories')."" !!}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    -
    - - {{ Form::open(['route' => 'staff_payment_configuration.store']) }} -
    -
    -
    -
    -
    - {{ Form::label('staff', 'Staff:') }} - {{ Form::select('user_id', $users_array, '', ['class' => 'form-control', 'id' => 'staff_id']) }} -
    -
    - {{ Form::label('price_list', 'Price List:') }} - -
    -
    - {{ Form::label('payment_type', 'Payment Type:') }}
    - {{ Form::radio('payment_type', 0, false, ['id'=> 'fixed_amount','onclick'=>'setRangeOrOptions()']) }} {{ __('general_settings.fixed_amount') }}   - {{ Form::radio('payment_type', 1, false, ['id'=> 'percentage','onclick'=>'setRangeOrOptions()']) }} {{ __('general_settings.percentage') }} -
    -
    -
    - {{ Form::button('Change Price List',['type'=>'submit','class'=>'btn btn-success btn-rounded','name'=>'submit-btn','value'=>'change_pricing']) }} -
    -
    -
    -
    -
    -
    You are setting price for category : {!! (is_null($price_list_category_id) || $price_list_category_id == 0) ? "Cash" : get_name(get_name($price_list_category_id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') !!}
    -
    -
    -
    - -
    - - -
    -
    -
    - -
    - - - - - - - - - - - @if(count($procedures) > 0) - @foreach($procedures as $procedure) - - - - - - - @endforeach - @endif - -
    NamePriceStaff Fee
    - {{ $procedure->name }} - - @if(!is_null($price_list_category_id)) - @php - $key = array_search($price_list_category_id, explode(",", $procedure->price_list_category)); - - $price_list_price_array = explode(",", $procedure->price_list_price); - - $price_list_price = isset($price_list_price_array[$key]) ? $price_list_price_array[$key] : 0; - @endphp - - {{ ugandan_shillings($price_list_price) }} - - - @else - {{ ugandan_shillings($procedure->non_insured_price) }} - @endif - - {{ Form::hidden('procedure_id[]', $procedure->id) }} - {{ Form::number('procedure_fee[]', '', ['class' => 'form-control']) }} -
    -
    -
    - -
    -
    - - - - - - - - - - - @if(count($services) > 0) - @foreach($services as $service) - - - - - - - @endforeach - @endif - -
    NamePriceStaff Fee
    - {{ $service->name }} - - @if(!is_null($price_list_category_id)) - @php - $key = array_search($price_list_category_id, explode(",", $service->price_list_category)); - - $price_list_price_array = explode(",", $service->price_list_price); - - $price_list_price = isset($price_list_price_array[$key]) ? $price_list_price_array[$key] : 0; - @endphp - - {{ ugandan_shillings($price_list_price) }} - - - @else - {{ ugandan_shillings($service->cost_price) }} - @endif - - {{ Form::hidden('service_id[]', $service->id) }} - {{ Form::number('service_fee[]', '', ['class' => 'form-control']) }} -
    -
    -
    - -
    -
    - - - - - - - - - - - - @if(count($investigations) > 0) - @foreach($investigations as $investigation) - - - - - - - - @endforeach - @endif - -
    NamePriceStaff Fee
    - {{ $investigation->name }} - - @if(!is_null($price_list_category_id)) - @php - $key = array_search($price_list_category_id, explode(",", $investigation->price_list_category)); - - $price_list_price_array = explode(",", $investigation->price_list_price); - - $price_list_price = isset($price_list_price_array[$key]) ? $price_list_price_array[$key] : 0; - @endphp - - {{ ugandan_shillings($price_list_price) }} - - - @else - {{ ugandan_shillings($investigation->non_insured_price) }} - @endif - - {{ Form::hidden('investigation_id[]', $investigation->id) }} - {{ Form::number('investigation_fee[]', '', ['class' => 'form-control']) }} -
    -
    -
    - - {{ Form::button('Save Fees', ['type' => 'submit', 'name' => 'submit_fees', 'class' => 'btn btn-success', 'id' => 'save_fees']) }} -
    -
    -
    -
    -
    -
    - {{ Form::close() }} - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Finance/Resources/views/staff_payments_configuration/index.blade.php b/docker/statistics/Modules/Finance/Resources/views/staff_payments_configuration/index.blade.php deleted file mode 100755 index cf2ae7dd..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/staff_payments_configuration/index.blade.php +++ /dev/null @@ -1,555 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    - {{ __('general_settings.view_staff_payment_configurations') }} {{ isset($searched_staff_name) ? $searched_staff_name : "" }} {!! (is_null($price_list_category_id) || $price_list_category_id == 0) ? "" : " for ".get_name(get_name($price_list_category_id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories')."" !!} - - - {!! $price_list_category_id == 0 ? "for Cash" : "" !!} -

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    -
    - -
    -
    -
    -
    - {{ Form::open(['method'=>'post','route' => 'staff_payment_configuration.search']) }} -
    - {{ Form::label('staff_id', 'Staff') }} - {{ Form::select('staff_id', $users_array, null, ['class' => 'form-control', 'id' => 'staff_member', 'required']) }} -
    - -
    - {{ Form::label('price_list', 'Price List:') }} - -
    - -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    - -
    -
    -
    -
    -
    - - - @php - $counter = 0; - $consultations_counter = 0; - $invs_counter = 0; - @endphp - -
    -
    -
    - -
    - - - - - - - - - - - - - @if(isset($search_complete)) - @if(count($staff_payment_configurations) > 0) - @foreach($staff_payment_configurations as $config_record) - @if($config_record->item_category == 1) - @php - $procedure = \Streamline\Models\Procedure::withTrashed()->find($config_record->item_id); - @endphp - - @if(!is_null($procedure)) - - - - - - - - @php $counter++; @endphp - @endif - @endif - @endforeach - @endif - @endif - -
    NamePriceStaff FeeActions
    - {{ $procedure->name }} - - @if(!is_null($price_list_category_id) && $price_list_category_id != 0) - @php - $key = array_search($price_list_category_id, explode(",", $procedure->price_list_category)); - - $price_list_price_array = explode(",", $procedure->price_list_price); - - $price_list_price = isset($price_list_price_array[$key]) ? $price_list_price_array[$key] : 0; - @endphp - - {{ ugandan_shillings($price_list_price) }} - @else - {{ ugandan_shillings($procedure->non_insured_price) }} - @endif - amount_fee)) style="display: none" @endif class="staff_fixed_amount"> - {{ Form::hidden('procedure_id[]', $procedure->id) }} - {{ Form::number('procedure_fee[]', $config_record->amount_fee, ['class' => 'form-control', 'readonly', 'id' => 'procedures' . $counter]) }} - amount_percentage)) style="display: none" @endif class="staff_percentage"> - Percentage - {{ Form::number('procedure_percentage[]', $config_record->amount_percentage, ['class' => 'form-control', 'max' => '100', 'readonly']) }} - -
    -
    - Edit -
    -
    - Delete -
    -
    - - -
    -
    -
    - -
    -
    - - - - - - - - - - - - @if(isset($search_complete)) - @if(count($staff_payment_configurations) > 0) - @foreach($staff_payment_configurations as $config_record) - @if($config_record->item_category == 3) - @php - $service = \Streamline\Models\Services::withTrashed()->find($config_record->item_id); - @endphp - - @if(!is_null($service)) - - - - - - - - @endif - @endif - @php $consultations_counter++; @endphp - @endforeach - @endif - @endif - -
    NamePriceStaff FeeActions
    - {{ $service->name }} - - @if(!is_null($price_list_category_id) && $price_list_category_id != 0) - @php - $key = array_search($price_list_category_id, explode(",", $service->price_list_category)); - - $price_list_price_array = explode(",", $service->price_list_price); - - $price_list_price = isset($price_list_price_array[$key]) ? $price_list_price_array[$key] : 0; - @endphp - - {{ ugandan_shillings($price_list_price) }} - @else - {{ ugandan_shillings($service->cost_price) }} - @endif - amount_fee)) style="display: none" @endif class="staff_fixed_amount"> - {{ Form::hidden('service_id[]', $service->id) }} - {{ Form::number('service_fee[]', $config_record->amount_fee, ['class' => 'form-control', 'readonly','id' => 'consultations' . $consultations_counter]) }} - amount_percentage)) style="display: none" @endif class="staff_percentage"> - {{ Form::number('service_percentage[]', $config_record->amount_percentage, ['class' => 'form-control', 'max' => '100', 'readonly']) }} - -
    -
    - Edit -
    -
    - Delete -
    -
    - - -
    -
    -
    - -
    - -
    - - - - - - - - - - - - @if(isset($search_complete)) - @if(count($staff_payment_configurations) > 0) - @foreach($staff_payment_configurations as $config_record) - @if($config_record->item_category == 2) - @php - $investigation = \Streamline\Models\Investigation::withTrashed()->find($config_record->item_id); - @endphp - - @if(!is_null($investigation)) - - - - - - - - @endif - @endif - @php $invs_counter++; @endphp - @endforeach - @endif - @endif - -
    NamePriceStaff FeeActions
    - {{ $investigation->name }} - - @if(!is_null($price_list_category_id) && $price_list_category_id != 0) - @php - $key = array_search($price_list_category_id, explode(",", $investigation->price_list_category)); - - $price_list_price_array = explode(",", $investigation->price_list_price); - - $price_list_price = isset($price_list_price_array[$key]) ? $price_list_price_array[$key] : 0; - @endphp - - {{ ugandan_shillings($price_list_price) }} - @else - {{ ugandan_shillings($investigation->non_insured_price) }} - @endif - amount_fee)) style="display: none" @endif class="staff_fixed_amount"> - {{ Form::hidden('investigation_id[]', $investigation->id) }} - {{ Form::number('investigation_fee[]', $config_record->amount_fee, ['class' => 'form-control', 'readonly','id' => 'investigations' . $invs_counter]) }} - amount_percentage)) style="display: none" @endif class="staff_percentage"> - {{ Form::number('investigation_percentage[]', $config_record->amount_percentage, ['class' => 'form-control', 'max' => '100', 'readonly']) }} - -
    -
    - Edit -
    -
    - Delete -
    -
    - - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Finance/Resources/views/staff_payments_configuration/payments_report.blade.php b/docker/statistics/Modules/Finance/Resources/views/staff_payments_configuration/payments_report.blade.php deleted file mode 100755 index 5bbefce0..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/staff_payments_configuration/payments_report.blade.php +++ /dev/null @@ -1,382 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('general_settings.payments_report') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    -
    - -
    -
    - {{ Form::open(['route' => 'staff_payments.payments_report' , 'data-toggle' => 'validator']) }} -
    -
    -
    -
    - {{ Form::label('report_by', __('general_settings.report_by')) }} - {{ Form::select('report_by', ['' => __('ward_consumption.select'), 1 => __('general_settings.staff'), 2 => __('general_settings.services')], '', ['class' => 'form-control', 'id'=>'report_by', 'required']) }} -
    -
    -
    - -
    - - - -
    - -
    -
    - {{ Form::label('search_by', __('ward_consumption.date')) }} - {{ Form::select('search_by', ['0'=>__('ward_consumption.last_24_hours'),'1'=>__('ward_consumption.custom_date'),'2'=>__('ward_consumption.custom_range')], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - - -
    -
    - {{ Form::button(__('ward_consumption.search'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    -
    - {{ Form::close() }} -
    -
    - - @if($search_complete) - @if($report_by == 1) - -
    -
    -
    - -

    {{ $search_text }}

    -
    - - - - - - - - - - - @php - $grand_total = 0; - $counter = 1; - @endphp - - @if(count($staff_performed_items_array) > 0) - @foreach($staff_performed_items_array as $staff_id => $amount) - - - - - - - @php - $grand_total += $amount; - $counter++; - @endphp - @endforeach - @endif - - - - - - - -
    #StaffAmountAction
    {{ $counter }} - {{ get_full_name($staff_id, "id", "first_name", "last_name", "users") }} - - {{ ugandan_shillings((int)$amount) }} - - {{ Form::open(['route' => 'staff_payments.payments_details_report']) }} - {{ Form::hidden('details_report_by', $details_report_by) }} - {{ Form::hidden('details_staff', $staff_id) }} - {{ Form::hidden('details_services_rendered_id', $details_services_rendered_id) }} - {{ Form::hidden('details_search_by', $details_search_by) }} - {{ Form::hidden('details_reg_date', $details_reg_date) }} - {{ Form::hidden('details_start_date', $details_start_date) }} - {{ Form::hidden('details_end_date', $details_end_date) }} - - {{ Form::close() }} -
    Total{{ ugandan_shillings((int)$grand_total) }}
    -
    -
    -
    -
    - @elseif($report_by == 2) -
    -
    -
    - -

    {{ $search_text }}

    -
    - - - - - - - - - - - @php - $grand_total = 0; - $counter = 1; - @endphp - - @if(count($staff_performed_items_array) > 0) - @foreach($staff_performed_items_array as $item_category => $amount) - - - - - - - @php - $grand_total += $amount; - $counter++; - @endphp - @endforeach - @endif - - - - - - - - - -
    #CategoryAmountAction
    {{ $counter }} - @if($item_category == 1) - Procedures - @elseif($item_category == 2) - Investigations - @elseif($item_category == 3) - Consultations - @endif - - {{ ugandan_shillings((int)$amount) }} - - {{ Form::open(['route' => 'staff_payments.payments_details_report']) }} - {{ Form::hidden('details_report_by', $details_report_by) }} - {{ Form::hidden('details_staff', $details_staff) }} - {{ Form::hidden('details_services_rendered_id', $item_category) }} - {{ Form::hidden('details_search_by', $details_search_by) }} - {{ Form::hidden('details_reg_date', $details_reg_date) }} - {{ Form::hidden('details_start_date', $details_start_date) }} - {{ Form::hidden('details_end_date', $details_end_date) }} - - {{ Form::close() }} -
    Total{{ ugandan_shillings((int)$grand_total) }}
    -
    -
    -
    -
    - @endif - @endif -@endsection -@push('scripts') - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Finance/Resources/views/staff_payments_configuration/payments_report_details.blade.php b/docker/statistics/Modules/Finance/Resources/views/staff_payments_configuration/payments_report_details.blade.php deleted file mode 100755 index 8489e507..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/staff_payments_configuration/payments_report_details.blade.php +++ /dev/null @@ -1,336 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('general_settings.payments_report_details') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    -
    - - -
    -
    -
    - {!! $search_string ?? $search_string !!} - -
    - - - - - - - - - - - - - - - - - @php - $grand_staff_amount_total = 0; - $grand_prices_amount_total = 0; - $counter = 1; - @endphp - - @if(count($staff_performed_services) > 0) - @foreach($staff_performed_services as $record) - @php - if ($record->item_category == 1){ - $procedure = \Streamline\Models\Procedure::withTrashed()->find($record->item_id); - $non_insured_price = $procedure->non_insured_price; - $item_name = $procedure->name; - }elseif ($record->item_category == 2){ - $investigation = \Streamline\Models\Investigation::withTrashed()->find($record->item_id); - $non_insured_price = $investigation->non_insured_price; - $item_name = $investigation->name; - }elseif ($record->item_category == 3){ - $service = \Streamline\Models\Services::withTrashed()->find($record->item_id); - $non_insured_price = $service->cost_price; - $item_name = $service->name; - } - @endphp - - - - - - - - - - - - - - @php - $counter++; - @endphp - @endforeach - @endif - - @if (count($ward_procedures_records) > 0) - @foreach ($ward_procedures_records as $ward_procedure) - - - - - - - - - - - - - @php - $ward_procedure_cost = $ward_procedure->hospital_fee + $ward_procedure->staff_fee; - $grand_prices_amount_total += $ward_procedure_cost; - $grand_staff_amount_total += $ward_procedure->staff_fee; - $counter++; - @endphp - @endforeach - @endif - - @if (count($ward_services_records) > 0) - @foreach ($ward_services_records as $ward_service) - - - - - - - - @php - $service_consumed = $ward_service->service_id; - $performed_by = null; - if (str_contains($service_consumed, '__')){ - $service_and_performed_by_array = explode("__", $service_consumed); - $service_id = $service_and_performed_by_array[0]; - $performed_by = $service_and_performed_by_array[1]; - } else{ - $service_id = $service_consumed; - } - @endphp - - - - - - @php - $ward_service_cost = $ward_service->unit_price; - $grand_prices_amount_total += $ward_service_cost; - $grand_staff_amount_total += $ward_service->staff_fee; - $counter++; - @endphp - @endforeach - @endif - - - - - - - - - - - - - -
    #{{ __('general_settings.patient_name') }}{{ __('general_settings.patient_category') }}{{ __('general_settings.staff_payment_status') }}{{ __('general_settings.patient_payment_status') }}{{ __('general_settings.date') }}{{ __('general_settings.item_name') }}{{ __('general_settings.item_price') }}{{ __('general_settings.staff_name') }}{{ __('general_settings.amount_for_staff') }}
    {{ $counter }} - {{ get_full_name($record->patient_id, "id", "first_name", "last_name", "patients") }} ({{ get_name($record->patient_id, "id", "number", "patients") }}) - - {{ get_name(get_name($record->patient_id, "id", "category_id", "patients"), "id", "name", "patient_categories") }} - - @if($record->is_staff_paid == 0) - {{ __('investigations.not_paid') }} - @else - {{ __('investigations.paid') }} - @endif - - @if(is_null($record->patient_receipt_number)) - {{ __('investigations.not_paid') }} - @else - {{ __('investigations.paid') }} - @endif - - {{ streamline_date($record->created_at) }} - - {{ $item_name }} - - @php - //handle previous records b4 i added performace fee column - $item_price = 0; - if(is_null($record->item_price)){ - $item_price = $non_insured_price; - } else { - $item_price = $record->item_price; - } - @endphp - - {{ ugandan_shillings((int)$item_price) }} - - @php - $grand_prices_amount_total += $item_price; - @endphp - - {{ get_full_name($record->performed_by, "id", "first_name", "last_name", "users") }} - - performance_fee; - //handle previous records b4 i added performace fee column - if(is_null($record->performance_fee)){ - if ($report_based_on_staff_or_category == 1 /*staff*/) { - $staff_fee_amount = get_fee_owed_to_staff_for_perfomed_service($record->item_id, $record->item_category, $record->performed_by); - } - - if ($report_based_on_staff_or_category == 2 /*item_categ*/) { - $staff_fee_amount = get_fee_owed_to_staff_for_perfomed_service_based_on_category($record->item_id, $record->performed_by, $record->item_category); - } - - $staff_fee_amount = is_numeric($staff_fee_amount) ? $staff_fee_amount : 0; - } else { - $staff_fee_amount = $record->performance_fee; - } - - $grand_staff_amount_total += $staff_fee_amount; - ?> - - {{ ugandan_shillings((int)$staff_fee_amount) }} -
    {{ $counter }} - {{ get_full_name($ward_procedure->patient_id, "id", "first_name", "last_name", "patients") }} ({{ get_name($ward_procedure->patient_id, "id", "number", "patients") }}) - - {{ get_name(get_name($ward_procedure->patient_id, "id", "category_id", "patients"), "id", "name", "patient_categories") }} - - {{ get_name($ward_procedure->ward_id, "id", "name", "wards") }} - - - {{ streamline_date($ward_procedure->created_at) }} - - {{ get_name($ward_procedure->procedure_id, "id", "name", "procedures") }} - - {{ ugandan_shillings($ward_procedure->hospital_fee + $ward_procedure->staff_fee) }} - - {{ get_full_name($ward_procedure->performed_by, "id", "first_name", "last_name", "users") }} - - {{ ugandan_shillings((int)$ward_procedure->staff_fee) }} -
    {{ $counter }} - {{ get_full_name($ward_service->patient_id, "id", "first_name", "last_name", "patients") }} ({{ get_name($ward_service->patient_id, "id", "number", "patients") }}) - - {{ get_name(get_name($ward_service->patient_id, "id", "category_id", "patients"), "id", "name", "patient_categories") }} - - {{ get_name($ward_service->ward_id, "id", "name", "wards") }} - - - {{ streamline_date($ward_service->created_at) }} - - {{ get_name($service_id, "id", "name", "services") }} - - {{ ugandan_shillings($ward_service->unit_price) }} - - {{ get_full_name($performed_by, "id", "first_name", "last_name", "users") }} - - {{ ugandan_shillings((int)$ward_service->staff_fee) }} -
    Total{{ ugandan_shillings($grand_prices_amount_total) }}{{ ugandan_shillings($grand_staff_amount_total) }}
    -
    -
    -
    -
    -@endsection -@push('scripts') - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Finance/Resources/views/staff_payments_configuration/record_service_perfomance.blade.php b/docker/statistics/Modules/Finance/Resources/views/staff_payments_configuration/record_service_perfomance.blade.php deleted file mode 100755 index 4186ba31..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/staff_payments_configuration/record_service_perfomance.blade.php +++ /dev/null @@ -1,478 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    Record performed services

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    -
    - -
    -
    -
    - {{ Form::open(['method'=>'post','url' => 'store_recorded_performed_service']) }} - - @php $patient_insurance_status = patient_insurance_status($patient_id); @endphp - - {{ Form::hidden('patient_id', $patient_id, ['id' => 'patient_id'])}} - {{ Form::hidden('patient_insurance_status', $patient_insurance_status, ['id' => 'patient_insurance_status'])}} - -
    -
    -
    - - - - - - - - @php - $option_employees = ""; - foreach ($employees as $employee){ - $employee_first_name = str_replace("'", '', $employee->first_name); - $employee_first_name = str_replace("\"", '', $employee_first_name); - $employee_last_name = str_replace("'", '', $employee->last_name); - $employee_last_name = str_replace("\"", '', $employee_last_name); - $option_employees .= ""; - } - - $option_procedures = ""; - foreach ($procedures as $procedure){ - $procedure_name = str_replace("'", '', $procedure->name); - $procedure_name = str_replace("\"", '', $procedure_name); - $procedure_name = preg_replace('/[^A-Za-z0-9\-]/', '', $procedure_name); - $option_procedures .= ""; - } - - $option_investigations = ""; - foreach ($investigations as $investigation){ - $inv_name = str_replace("'", '', $investigation->name); - $inv_name = str_replace("\"", '', $inv_name); - $inv_name = preg_replace('/[^A-Za-z0-9\-]/', '', $inv_name); - $option_investigations .= ""; - } - - $option_services = ""; - foreach ($services as $service){ - $service_name = str_replace("'", '', $service->name); - $service_name = str_replace("\"", '', $service_name); - $service_name = str_replace("+", '', $service_name); - $service_name = preg_replace('/[^A-Za-z0-9\-]/', '', $service_name); - $option_services .= ""; - } - - $option_sundries = ""; - foreach ($sundries as $sundry){ - $sundry_name = str_replace("'", '', $sundry->name); - $sundry_name = str_replace("\"", '', $sundry_name); - $sundry_name = preg_replace('/[^A-Za-z0-9\-]/', '', $sundry_name); - $option_sundries .= ""; - } - @endphp - - - - - - -
    -
    -
    Item Category
    -
    Performed Item
    -
    Item Unit Price
    -
    Item Total Price
    -
    Quantity
    -
    Performed By
    -
    Performance Fee
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    - - - - - - -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    Total:

    -
    -
    -
    -
    -
    -
    - -
    -
    - {{ Form::close() }} -
    -
    -
    -@endsection -@push('scripts') - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Finance/Resources/views/streamline_bills/create.blade.php b/docker/statistics/Modules/Finance/Resources/views/streamline_bills/create.blade.php deleted file mode 100755 index 534de638..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/streamline_bills/create.blade.php +++ /dev/null @@ -1,275 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('streamline_bills.streamline_bills') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') - -
    - -
    -
    -
    -
    -

     {{ $hospital_information->name }}

    -

    {{ $hospital_information->phone_number }}, {{ $hospital_information->email }}, -
    {{ get_name($hospital_information->sub_county,'id', 'name', 'subcounties') }}, {{ get_name($hospital_information->district,'id', 'name', 'districts') }}, -
    {{ $hospital_information->country }}.

    -
    -
    -
    -
    -

    {{ __('streamline_bills.date') }} : {{ streamline_date_time(\Carbon\Carbon::now()->toDateTimeString()) }}

    -
    -
    -
    -
    -
    - -
    - -
    -
    - -
    -
    -
    -
    -
    -
    - {{ __('streamline_bills.details') }} -
    -
    -
    - {{ Form::open(['method'=>'post','route' => 'streamline_bill.generate']) }} -
    -
    -
    -
    -
    -
    - -
    -
    - {{ Form::text('processed_by', get_full_name($user, 'id', 'first_name', 'last_name', 'users'), - ['class'=>'form-control required compulsory', 'readonly', 'id'=>'processed_by']) }} -
    -
    -
    -
    - -
    - - -
    - - - - -
    -
    - -
    -
    - -
    -
    - -
    - {{ Form::close() }} -
    -
    -
    - -
    -
    -
    - - - - - - - - - - - - @if(count($patients) > 0) - @foreach($patients as $id) - - - - - @php $created_by = get_name($id, 'id', 'created_by', 'patients'); @endphp - - - @endforeach - @else - - - - - - - @endif - -
    {{ __('streamline_bills.patient_name') }}{{ __('streamline_bills.patient_number') }}{{ __('streamline_bills.first_visit') }}{{ __('streamline_bills.recorded_by') }}
    {{ get_name($id, 'id', 'first_name', 'patients') }} {{ get_name($id, 'id', 'last_name', 'patients') }}{{ get_name($id, 'id', 'number', 'patients') }}{{ streamline_date(get_name($id, 'id', 'created_at', 'patients')) }}{{ get_full_name($created_by, 'id', 'first_name', 'last_name', 'users') }}
    {{ __('streamline_bills.no_results_found') }}
    - -
    - -
    - -
    {{ __('streamline_bills.number_of_patients') }}:
    {{ count($patients) }}

    -
    {{ __('streamline_bills.cost_per_patient_annually') }} :
    {{ ugandan_shillings(1000) }}

    - @php - $total = count($patients) * 1000; - @endphp -

    {{ __('streamline_bills.total') }} : {{ ugandan_shillings($total) }}


    - - {{ Form::open(['method'=>'post', 'route'=>'streamline_bill.transfer']) }} - - - - - - {{ Form::close() }} -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - - -@endpush - - - - diff --git a/docker/statistics/Modules/Finance/Resources/views/streamline_bills/detail.blade.php b/docker/statistics/Modules/Finance/Resources/views/streamline_bills/detail.blade.php deleted file mode 100755 index 3993a7b9..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/streamline_bills/detail.blade.php +++ /dev/null @@ -1,201 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('streamline_bills.streamline_bills') }}

    -
    -
    - -
    -
    - -
    -
    - -
    -
    -
    - -
    -
    -
    -

    - - @include('flash::message') - -
    - -
    -
    -
    -
    -

     {{ $hospital_information->name }}

    -

    {{ $hospital_information->phone_number }}, {{ $hospital_information->email }}, -
    {{ get_name($hospital_information->sub_county,'id', 'name', 'subcounties') }}, {{ get_name($hospital_information->district,'id', 'name', 'districts') }}, -
    {{ $hospital_information->country }}.

    -
    -
    -
    -
    -

    {{ __('streamline_bills.date') }} : {{ streamline_date_time(\Carbon\Carbon::now()->toDateTimeString()) }}

    -
    - -
    -
    -
    -
    - -
    - -
    -
    - -
    -
    -
    -
    -
    -
    - {{ __('streamline_bills.billing_date') }} -
    -
    - @php - if(isset($report->time_frame)){ $time_frame = explode("&", $report->time_frame);} - @endphp -
    {{ streamline_date(isset($time_frame[0]) ? streamline_date($time_frame[0]) : "" ) }} - @if(isset($time_frame[1])) - {{ __('streamline_bills.to') }} - {{ streamline_date($time_frame[1]) }} - @endif -
    -
    -
    -
    -
    -
    -
    - -
    - -
    -
    -
    - - - - - - - - - - - - @if(isset($report) > 0) - @php - $patients = explode("/", $report->patients); - @endphp - @foreach($patients as $id) - - - - - - - @endforeach - @else - - - - - - - @endif - - -
    {{ __('streamline_bills.patient_name') }}{{ __('streamline_bills.patient_number') }}{{ __('streamline_bills.first_visit') }}{{ __('streamline_bills.recorded_by') }}
    {{ get_full_name($id, 'id', 'first_name', 'last_name', 'patients') }}{{ get_name($id, 'id', 'number', 'patients') }}r - @php - $episode_date = \Streamline\Models\PatientEpisode::where('patient_id', $id)->pluck('created_at')->first(); - echo streamline_date($episode_date); - @endphp - - @php - $recorded_by = \Streamline\Models\PatientEpisode::where('patient_id', $id)->pluck('created_by')->first(); - echo get_full_name($recorded_by, 'id', 'first_name', 'last_name', 'users'); - @endphp -
    {{ __('streamline_bills.no_records_found') }}
    - -
    - -
    - -
    {{ __('streamline_bills.number_of_patients') }}:

    -
    {{ __('streamline_bills.cost_per_patient_annually') }} :
    {{ ugandan_shillings(1000) }}

    - @php - $total = count($patients) * 1000; - @endphp -

    Total : {{ ugandan_shillings($total) }}


    -
    -
    -
    -
    - -
    -
    -
    -
    -
    - - - -@endsection - -@push('scripts') - @push('scripts') - - @endpush - - -@endpush - - - - diff --git a/docker/statistics/Modules/Finance/Resources/views/streamline_bills/index.blade.php b/docker/statistics/Modules/Finance/Resources/views/streamline_bills/index.blade.php deleted file mode 100755 index a11c96f2..00000000 --- a/docker/statistics/Modules/Finance/Resources/views/streamline_bills/index.blade.php +++ /dev/null @@ -1,232 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('streamline_bills.streamline_bills') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') - -
    - -
    -
    -
    -
    -

     {{ $hospital_information->name }}

    -

    {{ $hospital_information->phone_number }}, {{ $hospital_information->email }}, -
    {{ get_name($hospital_information->sub_county,'id', 'name', 'subcounties') }}, {{ get_name($hospital_information->district,'id', 'name', 'districts') }}, -
    {{ $hospital_information->country }}.

    -
    -
    - {{ __('streamline_bills.generate_bill') }} -
    -
    -
    -

    {{ __('streamline_bills.date') }} : {{ streamline_date_time(\Carbon\Carbon::now()->toDateTimeString()) }}

    -
    -
    -
    -
    -
    - -
    - -
    -
    - -
    -
    -
    - - - - - - - - - - - - - - - @if(count($reports) > 0) - @foreach($reports as $item) - @php - $ids = explode('/', $item['patients']); - $dates = explode('&', $item['time_frame']); - $count = count($ids); - @endphp - - - - - - - - - - @endforeach - @else - - - - - - - @endif - -
    {{ __('streamline_bills.number_of_patients') }}{{ __('streamline_bills.time_frame') }}{{ __('streamline_bills.amount_to_be_paid') }}{{ __('streamline_bills.amount_paid') }}{{ __('streamline_bills.generated_by') }}{{ __('streamline_bills.action') }}
    - - -
    - {{ streamline_date($dates[0]) }} to @php if(isset($dates[1])){ echo streamline_date($dates[1]); }else{ echo ""; } @endphp -
    -
    {{ ugandan_shillings($item['amount_to_be_paid']) }}{{ ugandan_shillings($item['amount_paid']) }}{{ get_full_name($item['created_by'], 'id', 'first_name', 'last_name', 'users') }} {{ __('streamline_bills.view_invoice') }} - - - {{ __('streamline_bills.delete') }} - -
    {{ __('streamline_bills.no_results_found') }}
    -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - -@endpush - - - - diff --git a/docker/statistics/Modules/Finance/Routes/api.php b/docker/statistics/Modules/Finance/Routes/api.php deleted file mode 100644 index 60f62687..00000000 --- a/docker/statistics/Modules/Finance/Routes/api.php +++ /dev/null @@ -1,18 +0,0 @@ -get('/finance', function () { - return "Finance"; -}); diff --git a/docker/statistics/Modules/Finance/Routes/web.php b/docker/statistics/Modules/Finance/Routes/web.php deleted file mode 100644 index ee6b0df1..00000000 --- a/docker/statistics/Modules/Finance/Routes/web.php +++ /dev/null @@ -1,67 +0,0 @@ - ['auth', 'disablebackbutton', 'user-locale','subscription-tracking', 'password-expiry']], function () { - /* cost centers */ - Route::resource('cost_centers', 'CostCenterController'); - Route::any('cost_centers_details', 'CostCenterController@cost_center_details')->name('cost_centers.details'); - Route::any('lab_performance', 'CostCenterController@labPerformanceReport')->name('lab_performance.index'); - Route::any('lab_performance_details', 'CostCenterController@labPerformanceReportDetails')->name('lab_performance.details'); - Route::any('top_performing_investigations', 'CostCenterController@topPerformingInvestigationsReport')->name('top_performing_investigations'); - Route::any('cost_center_income_details', 'CostCenterController@costCenterIncomeDetailedReport')->name('cost_center.income_detailed_report'); - Route::any('opd_details_drilldown', 'CostCenterController@opd_details_drilldown')->name('cost_centers.opd_details_drilldown'); - - /* Equities */ - Route::get('/inactive/equities', 'EquityController@inactive')->name('equities.inactive'); - Route::post('/equities/activate/{id}', 'EquityController@activate')->name('equities.activate'); - Route::resource('equities', 'EquityController'); - - /* Finance Home */ - Route::get('finance', 'FinanceController@index')->name('finance'); - Route::any('incoming_opd_payments', 'FinanceController@incoming_opd_payments')->name('finance.incoming_opd_payments'); - - /* Fixed Assets */ - Route::resource('fixed_assets', 'FixedAssetsController'); - Route::any('is_fixed_asset_attached_to_bill', 'FixedAssetsController@is_fixed_asset_attached_to_bill'); - - /* staff payment configuration */ - Route::any('/staff_payment_configuration/fetch_performed_by_info/{id}', 'StaffPaymentsConfigurationController@fetch_performed_by_info'); - Route::any('/staff_payment_configuration/edit_performed_by_info', 'StaffPaymentsConfigurationController@edit_performed_by_info'); - Route::any('/staff_payment_configuration/delete_performed_by/{id}/{position}/{order_id}/{type}', 'StaffPaymentsConfigurationController@delete_performed_by'); - Route::resource('staff_payment_configuration', 'StaffPaymentsConfigurationController'); - Route::any('staff_payment_configuration_search', 'StaffPaymentsConfigurationController@staff_payment_configuration_search')->name('staff_payment_configuration.search'); - Route::any('delete_staff_configuration', 'StaffPaymentsConfigurationController@delete_staff_configuration')->name('staff_payment_configuration.delete_staff_configuration'); - Route::any('edit_staff_configuration', 'StaffPaymentsConfigurationController@edit_staff_configuration')->name('staff_payment_configuration.edit_staff_configuration'); - - /* report for incomes owed to staff */ - Route::any('staff_payments_report', 'StaffPaymentsConfigurationController@payments_report')->name('staff_payments.payments_report'); - Route::any('staff_payments_details_report', 'StaffPaymentsConfigurationController@payments_details_report')->name('staff_payments.payments_details_report'); - Route::any('record_staff_service_performance', 'StaffPaymentsConfigurationController@record_staff_service_performance')->name('staff_performance.create_record'); - Route::post('store_recorded_performed_service', 'StaffPaymentsConfigurationController@store_recorded_performed_service'); - Route::any('get_item_price', 'StaffPaymentsConfigurationController@get_item_price'); - - /* Streamline Bills */ - Route::any('/streamline_bill', 'StreamlineBillsController@index')->name('streamline_bill'); - Route::any('/streamline_bill/create', 'StreamlineBillsController@create')->name('streamline_bill.create'); - Route::any('/streamline_bill/detail/{id}', 'StreamlineBillsController@detail')->name('streamline_bill.detail'); - Route::any('/streamline_bill/generate', 'StreamlineBillsController@generate')->name('streamline_bill.generate'); - Route::any('/streamline_bill/transfer', 'StreamlineBillsController@transfer')->name('streamline_bill.transfer'); - Route::any('/streamline_bill/delete/{id}', 'StreamlineBillsController@delete')->name('streamline_bill.delete'); - Route::post('/streamline_bill/view_patients', 'StreamlineBillsController@view_patients')->name('streamline_bill.view_patients'); - - /* markup tags */ - Route::get('/markup_tag/inactive', 'MarkupTagController@inactive')->name('markup_tag.inactive'); - Route::post('/markup_tag/activate{id}', 'MarkupTagController@activate')->name('markup_tag.activate'); - Route::resource('markup_tag', 'MarkupTagController'); - /* markup tags to drugs*/ - Route::any('add_markups_to_drugs', 'MarkupTagController@add_markups_to_drugs'); - Route::any('update_mark_up_to_drug', 'MarkupTagController@update_mark_up_to_drug')->name('markup_tag.update_mark_up_to_drug'); - Route::any('drug_markup_search', 'MarkupTagController@drug_markup_search')->name('markup_tag.drug_markup_search'); - Route::any('view_markup_drugs/{id}', 'MarkupTagController@view_markup_drugs'); - - /* markup tags to sundries*/ - Route::any('add_markups_to_sundries', 'MarkupTagController@add_markups_to_sundries'); - Route::any('update_mark_up_to_sundry', 'MarkupTagController@update_mark_up_to_sundry')->name('markup_tag.update_mark_up_to_sundry'); - Route::any('sundry_markup_search', 'MarkupTagController@sundry_markup_search')->name('markup_tag.sundry_markup_search'); -}); diff --git a/docker/statistics/Modules/Finance/bitbucket-pipelines.yml b/docker/statistics/Modules/Finance/bitbucket-pipelines.yml deleted file mode 100644 index e850a8fd..00000000 --- a/docker/statistics/Modules/Finance/bitbucket-pipelines.yml +++ /dev/null @@ -1,19 +0,0 @@ -image: alpine/git:latest - -pipelines: - branches: - main: - - step: - name: Merge To Beta - script: - - git remote set-url origin https://Kabricks:${APP_SECRET}@bitbucket.org/dcsammi/${BITBUCKET_REPO_SLUG} - - git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*" - - git fetch - - git checkout beta - - git merge main - - git commit --amend -m "[skip ci] Merge changes from main" - - git push - - step: - name: Deploy To Test - script: - - echo "Ready to deploy to demo or production!" diff --git a/docker/statistics/Modules/Finance/module.json b/docker/statistics/Modules/Finance/module.json deleted file mode 100644 index 0bf64337..00000000 --- a/docker/statistics/Modules/Finance/module.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "Finance", - "alias": "finance", - "description": "Finance", - "keywords": [], - "priority": 0, - "providers": [ - "Modules\\Finance\\Providers\\FinanceServiceProvider" - ], - "files": [] -} diff --git a/docker/statistics/Modules/FinanceReports/Config/config.php b/docker/statistics/Modules/FinanceReports/Config/config.php deleted file mode 100644 index 8f4f3920..00000000 --- a/docker/statistics/Modules/FinanceReports/Config/config.php +++ /dev/null @@ -1,5 +0,0 @@ - 'Finance Reports' -]; diff --git a/docker/statistics/Modules/FinanceReports/Http/Controllers/Controller.php b/docker/statistics/Modules/FinanceReports/Http/Controllers/Controller.php deleted file mode 100755 index f7d60bed..00000000 --- a/docker/statistics/Modules/FinanceReports/Http/Controllers/Controller.php +++ /dev/null @@ -1,13 +0,0 @@ -middleware('auth'); - $this->middleware('permission:finance-reports-activate'); - } - - public function index() - { - return view('finance_reports::finance_reports.index'); - } - - public function pointOfSale(Request $request): View - { - $treatments = []; - $sundries = []; - $counter = 0; - $staff_members = User::get(); - $display = dateLabelSetter($request); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - - $pos_episodes = PatientEpisode::where('paid_over', 'pos')->get()->pluck('id'); - - if ($request->staff_member == "ALL STAFF") { - switch ($request->dates) { - case 'today': - foreach ($pos_episodes as $episode) { - $sundries[$counter] = SundryDeposit::where('episode_id', $episode)->whereDate('created_at', Carbon::today()->toDateTimeString())->get()->toArray(); - $treatments[$counter] = TreatmentDeposits::where('episode_id', $episode)->whereDate('created_at', Carbon::today()->toDateTimeString())->get()->toArray(); - ++$counter; - } - break; - case 'yesterday': - foreach ($pos_episodes as $episode) { - $sundries[$counter] = SundryDeposit::where('episode_id', $episode)->whereDate('created_at', Carbon::yesterday()->toDateTimeString())->get()->toArray(); - $treatments[$counter] = TreatmentDeposits::where('episode_id', $episode)->whereDate('created_at', Carbon::yesterday()->toDateTimeString())->get()->toArray(); - ++$counter; - } - break; - case 'custom_date': - foreach ($pos_episodes as $episode) { - $sundries[$counter] = SundryDeposit::where('episode_id', $episode)->whereDate('created_at', Carbon::parse($start)->toDateTimeString())->get()->toArray(); - $treatments[$counter] = TreatmentDeposits::where('episode_id', $episode)->whereDate('created_at', Carbon::parse($start)->toDateTimeString())->get()->toArray(); - ++$counter; - } - break; - case 'custom_date_range': - foreach ($pos_episodes as $episode) { - $sundries[$counter] = SundryDeposit::where('episode_id', $episode)->whereBetween('created_at', [$start, $end])->get()->toArray(); - $treatments[$counter] = TreatmentDeposits::where('episode_id', $episode)->whereBetween('created_at', [$start, $end])->get()->toArray(); - ++$counter; - } - break; - } - } else { - switch ($request->dates) { - case 'today': - foreach ($pos_episodes as $episode) { - $sundries[$episode] = SundryDeposit::where('episode_id', $episode)->where('created_by', $request->staff_member)->whereDate('created_at', Carbon::today()->toDateTimeString())->get()->toArray(); - $treatments[$episode] = TreatmentDeposits::where('episode_id', $episode)->where('created_by', $request->staff_member)->whereDate('created_at', Carbon::today()->toDateTimeString())->get()->toArray(); - ++$counter; - } - break; - case 'yesterday': - foreach ($pos_episodes as $episode) { - $sundries[$counter] = SundryDeposit::where('episode_id', $episode)->where('created_by', $request->staff_member)->whereDate('created_at', Carbon::yesterday()->toDateTimeString())->get()->toArray(); - $treatments[$counter] = TreatmentDeposits::where('episode_id', $episode)->where('created_by', $request->staff_member)->whereDate('created_at', Carbon::yesterday()->toDateTimeString())->get()->toArray(); - ++$counter; - } - break; - case 'custom_date': - foreach ($pos_episodes as $episode) { - $sundries[$counter] = SundryDeposit::where('episode_id', $episode)->where('created_by', $request->staff_member)->whereDate('created_at', Carbon::parse($start)->toDateTimeString())->get()->toArray(); - $treatments[$counter] = TreatmentDeposits::where('episode_id', $episode)->where('created_by', $request->staff_member)->whereDate('created_at', Carbon::parse($start)->toDateTimeString())->get()->toArray(); - ++$counter; - } - break; - case 'custom_date_range': - foreach ($pos_episodes as $episode) { - $sundries[$counter] = SundryDeposit::where('episode_id', $episode)->where('created_by', $request->staff_member)->whereBetween('created_at', [$start, $end])->get()->toArray(); - $treatments[$counter] = TreatmentDeposits::where('episode_id', $episode)->where('created_by', $request->staff_member)->whereBetween('created_at', [$start, $end])->get()->toArray(); - ++$counter; - } - break; - } - } - - return view('finance_reports::finance_reports.point_of_sale', compact('staff_members', 'pos_episodes', 'request', 'display', 'treatments', 'sundries')); - } - - public function incomeCashReport(Request $request): View - { - if ($request->dates == "yesterday") { - $start = Carbon::yesterday()->startOfDay(); - $end = Carbon::yesterday()->endOfDay(); - } elseif ($request->dates == "custom_date") { - $start = Carbon::parse($request->start_date)->startOfDay(); - $end = Carbon::parse($request->start_date)->endOfDay(); - } elseif ($request->dates == "custom_date_range") { - $start = Carbon::parse($request->start_date)->startOfDay(); - $end = Carbon::parse($request->end_date)->endOfDay(); - } else { - // includes $request->dates == 'today' - $start = Carbon::today()->startOfDay(); - $end = Carbon::today()->endOfDay(); - } - - $result = $this->incomeCashService->getSumServiceDeposit('service_deposits', $request); - - $consult_sum = $result[3]; - $co_payments = $result[4]; - $service_sum = $result[5]; - $inpatient_deposit_sum = $result[7]; - - $staff_members = $this->userService->pluckUserFullName(); - $staff_members = [0 => 'All Staff'] + $staff_members; - - $investigations = $this->incomeCashService->getSumByTableColumn('investigation_deposits', 'patient_amount_paid', $request); - $drugs = $this->incomeCashService->getSumByTableColumn('treatment_deposits', 'patient_amount_paid', $request); - $procedures = $this->incomeCashService->getSumByTableColumn('procedure_deposits', 'patient_amount_paid', $request); - $sundries = $this->incomeCashService->getSumByTableColumn('sundries_deposits', 'patient_amount_paid', $request); - $optics = $this->incomeCashService->getSumByTableColumn('eye_glasses_deposits', 'patient_amount_paid', $request); - $inpatient_bill_payments = $this->incomeCashService->getSumByTableColumn('inpatient_bills', 'amount_paid', $request); - - // unreceived income within a given time frame... - $unreceived_services = $this->incomeCashService->getUnReceivedSumServiceDeposit('service_deposits', $request); - $unreceived_investigations = $this->incomeCashService->getUnReceivedSumByTableColumn('investigation_deposits', 'patient_amount_paid', $request); - $unreceived_drugs = $this->incomeCashService->getUnReceivedSumByTableColumn('treatment_deposits', 'patient_amount_paid', $request); - $unreceived_procedures = $this->incomeCashService->getUnReceivedSumByTableColumn('procedure_deposits', 'patient_amount_paid', $request); - $unreceived_sundries = $this->incomeCashService->getUnReceivedSumByTableColumn('sundries_deposits', 'patient_amount_paid', $request); - $unreceived_optics = $this->incomeCashService->getUnReceivedSumByTableColumn('eye_glasses_deposits', 'patient_amount_paid', $request); - - $invoice_payments = $this->invoicesService->getInvoicePayments($request); - $donor_invoice_payments = $this->invoicesService->getDonorInvoicePayments($start, $end, $request->staff_member); - - // get the debtor payments - $debtor_payments = $this->debtorsService->getDebtPaymentsSum($request); - $debt_plan_payments = $this->debtPlanService->getDebtPlanPaymentsSum($request); - - $other_incomes = 0; - - $display = dateLabelSetter($request); - - $family_accounts_consumption = $this->familyAccountsService->getFamilyAccountsConsumptionAmounts($request->staff_member, $start, $end); - $family_accounts_consumption_amount = array_sum($family_accounts_consumption); - $family_accounts_consumption_unreceived_amount = $family_accounts_consumption[1]; - $family_accounts_deposits = $this->familyAccountsService->getFamilyAccountsDepositAmounts($request->staff_member, $start, $end); - $family_accounts_deposits_amount = array_sum($family_accounts_deposits); - $unreceived_family_accounts_deposits_amount = $family_accounts_deposits[1]; - - $patient_accounts_consumption = $this->patientAccountsService->getPatientAccountsConsumptionAmounts($request->staff_member, $start, $end); - $patient_accounts_consumption_amount = array_sum($patient_accounts_consumption); - $patient_accounts_consumption_unreceived_amount = $patient_accounts_consumption[1]; - $patient_accounts_deposits = $this->patientAccountsService->getPatientAccountsDepositAmounts($request->staff_member, $start, $end); - $patient_accounts_deposits_amount = array_sum($patient_accounts_deposits); - $unreceived_patient_accounts_deposits_amount = $patient_accounts_deposits[1]; - - $direct_bank_deposits_amount = get_direct_bank_deposits_amount($request); - $unreceived_direct_bank_deposits_amount = get_unreceived_direct_bank_deposits_amount($request); - - return view('finance_reports::finance_reports.incomeCashReport', compact('staff_members', 'consult_sum', 'service_sum', 'debtor_payments', 'donor_invoice_payments', - 'sundries', 'procedures', 'investigations', 'other_incomes', 'drugs', 'co_payments', 'display', 'request', 'inpatient_deposit_sum', 'inpatient_bill_payments', 'unreceived_drugs', - 'invoice_payments', 'debt_plan_payments', 'unreceived_investigations', 'unreceived_sundries', 'unreceived_procedures', 'unreceived_services', 'family_accounts_consumption_amount', 'optics', 'unreceived_optics', - 'family_accounts_deposits_amount', 'unreceived_family_accounts_deposits_amount', 'family_accounts_consumption_unreceived_amount', 'patient_accounts_consumption_amount', 'patient_accounts_consumption_unreceived_amount', - 'patient_accounts_deposits_amount', 'unreceived_patient_accounts_deposits_amount', 'direct_bank_deposits_amount', 'unreceived_direct_bank_deposits_amount')); - } - - public function incomeDetailedReport(Request $request): View - { - $test_patients = findTestOrDemoPatients(); - $result = $hospital_invoice_payments = $sorted_investigations = []; - $patient_category_payments = $donor_invoice_payments = $debt_plan_payments = $debtor_payments = []; - - if ($request->date_type == "yesterday") { - $end = Carbon::yesterday()->endOfDay(); - $start = Carbon::yesterday()->startOfDay(); - } else if ($request->date_type == "custom_date") { - $dates = explode("/", $request->dates); - $end = Carbon::parse($dates[0])->endOfDay(); - $start = Carbon::parse($dates[0])->startOfDay(); - } else if ($request->date_type == "custom_date_range") { - $dates = explode("/", $request->dates); - $end = Carbon::parse($dates[1])->endOfDay(); - $start = Carbon::parse($dates[0])->startOfDay(); - } else { - $end = Carbon::today()->endOfDay(); - $start = Carbon::today()->startOfDay(); - } - - $filters = []; - $staff_members = $this->userService->pluckUserFullName(); - - if ($request->user_id != 0) { - $filters[] = ['created_by', '=', $request->user_id]; - } - - if ($request->comparator == "consultations") { - $result = DB::table('service_deposits') - ->whereNotIn('patient_id', $test_patients) - ->where('service_type', 'Consultation') - ->whereBetween('created_at', [$start, $end]) - ->where($filters) - ->get() - ->toArray(); - } - - if ($request->comparator == "other_services") { - $result = DB::table('service_deposits') - ->whereNotIn('patient_id', $test_patients) - ->where($filters) - ->whereIn('service_type', ['Services', 'Other Services', 'Service']) - ->whereBetween('created_at', [$start, $end]) - ->get() - ->toArray(); - } - - if ($request->comparator == "investigations") { - $sorted_investigations = $this->incomeCashService->getInvestigationDepositsByCategory($filters, $start, $end); - } - - if ($request->comparator == "drugs") { - $result = DB::table('treatment_deposits') - ->whereNotIn('patient_id', $test_patients) - ->where($filters) - ->whereBetween('created_at', [$start, $end]) - ->get() - ->toArray(); - } - - if ($request->comparator == "co_payments") { - $result = DB::table('service_deposits') - ->whereNotIn('patient_id', $test_patients) - ->where('service_type', 'Co_Payment') - ->where($filters) - ->whereBetween('created_at', [$start, $end]) - ->get() - ->toArray(); - } - - if ($request->comparator == "inpatient_deposits") { - $result = DB::table('service_deposits') - ->whereNotIn('patient_id', $test_patients) - ->where('service_type', 'Inpatient_Deposit') - ->where($filters) - ->whereBetween('created_at', [$start, $end]) - ->get() - ->toArray(); - - return view('finance_reports::finance_reports.detail.inpatient_deposits', compact('result', 'request')); - } - - if ($request->comparator == "procedures") { - $result = DB::table('procedure_deposits') - ->whereNotIn('patient_id', $test_patients) - ->where($filters) - ->whereBetween('created_at', [$start, $end]) - ->get() - ->toArray(); - } - - if ($request->comparator == "sundries") { - $result = DB::table('sundries_deposits') - ->whereNotIn('patient_id', $test_patients) - ->where($filters) - ->whereBetween('created_at', [$start, $end]) - ->get() - ->toArray(); - } - - if ($request->comparator == "optics") { - $result = DB::table('eye_glasses_deposits') - ->whereNotIn('patient_id', $test_patients) - ->where($filters) - ->whereBetween('created_at', [$start, $end]) - ->get() - ->toArray(); - } - - if ($request->comparator == "paid_patient_debts") { - $debtor_payments = $this->debtorsService->getDebtPaymentsRecords($start, $end, $filters); - $debt_plan_payments = $this->debtPlanService->getDebtPlanPaymentsRecords($request); - } - - if ($request->comparator == "paid_invoices") { - $patient_category_payments = DB::table('invoice_payment_records') - ->whereBetween('created_at', [$start, $end]) - ->where($filters) - ->get() - ->toArray(); - - $donor_invoice_payments = DB::table('donor_invoice_payments') - ->whereBetween('created_at', [$start, $end]) - ->where($filters) - ->get() - ->toArray(); - - $hospital_invoice_payments = DB::table('hospital_invoice_payments') - ->whereBetween('created_at', [$start, $end]) - ->where($filters) - ->get() - ->toArray(); - } - - $display = dateLabelSetter($request); - - return view('finance_reports::finance_reports.incomeDetailedReport', compact('result', 'request', 'donor_invoice_payments', 'patient_category_payments', - 'debtor_payments', 'debt_plan_payments', 'staff_members', 'display', 'hospital_invoice_payments', 'sorted_investigations')); - } - - public function receivedCash(Request $request) - { - - $staff_members = DB::table('users')->get()->toArray(); - $result = receivedCashFilter($request); - $display = dateLabelSetter($request); - $banks = DB::table('chart_of_accounts')->whereNotIn('slug', ['undeposited_funds', 'daily_cash_collections'])->where('type', 4)->whereNull('deleted_at')->get(); - $expense_accounts = ChartOfAccount::where('type', 2)->pluck('name', 'id')->prepend('-select-', '')->toArray(); - - return view('finance_reports::finance_reports.receivedCash', compact('staff_members', 'request', 'result', 'display', 'banks', 'expense_accounts')); - } - - public function cashier_income_detail($id) - { - - $service_deposits = ServiceDeposit::where('received', $id)->get(); - $sundry_deposits = SundryDeposit::where('received', $id)->get(); - $treatment_deposits = TreatmentDeposits::where('received', $id)->get(); - $procedure_deposits = ProcedureDeposit::where('received', $id)->get(); - $investigation_deposits = InvestigationDeposit::where('received', $id)->get(); - $debt_plan_payments = DebtPlanPaymentStaff::where('received_id', $id)->get(); - $donor_invoice_payments = DonorInvoicePayment::where('received', $id)->get(); - $patient_category_invoice_payments = InvoicePaymentRecord::where('received_id', $id)->groupBy('invoice_number')->get(); - $other_incomes = []; - - return view('finance_reports::finance_reports.detail.received_cash', compact( - 'service_deposits', - 'sundry_deposits', - 'treatment_deposits', - 'procedure_deposits', - 'investigation_deposits', - 'debt_plan_payments', - 'donor_invoice_payments', - 'patient_category_invoice_payments', - 'other_incomes' - )); - } - - public function discountsReport(Request $request) - { - - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $patient_categories = DB::table('patient_categories')->get()->toArray(); - if ($request->patient_category == "ALL") { - $discounts = DB::table('discounts')->whereBetween('created_at', [$start, $end])->get() - ->toArray(); - } else { - $discounts = DB::table('discounts')->whereBetween('created_at', [$start, $end])->where('patient_category', $request->patient_category) - ->get() - ->toArray(); - } - - $display = dateLabelSetter($request); - - return view('finance_reports::finance_reports.discountsReport', compact('patient_categories', 'discounts', 'display', 'request')); - } - - public function donorDiscountsReport(Request $request) - { - - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $donors = DB::table('donors')->get()->toArray(); - - if ($request->donor == "ALL") { - $discounts = DB::table('donor_discount_details')->whereBetween('created_at', [$start, $end]) - ->groupBy('patient_category') - ->get() - ->toArray(); - } else { - $discounts = DB::table('donor_discount_details')->whereBetween('created_at', [$start, $end]) - ->where('donor_id', $request->donor) - ->groupBy('patient_category') - ->get() - ->toArray(); - } - - $display = dateLabelSetter($request); - - return view('finance_reports::finance_reports.donorDiscountsReport', compact('donors', 'discounts', 'display', 'request')); - } - - public function hospitalDiscountsReport(Request $request) - { - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - - $result = DB::table('donor_discount_details')->whereBetween('created_at', [$start, $end])->get()->toArray(); //->where('hospital_to_pay', '>', 0) - $display = dateLabelSetter($request); - return view('finance_reports::finance_reports.hospitalDiscountsReport', compact('result', 'request', 'display')); - } - - public function discrepancies(Request $request) { - $filters = []; - - $users = User::pluck('id')->toArray(); - - if (isset($request->staff_member) && $request->staff_member != "ALL STAFF") { - $filters[] = ['brought_by', '=', $request->staff_member]; - } - - if (isset($request->start_date) && isset($request->end_date)) { - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - - $display = streamline_date($start) . ' to ' . streamline_date($end); - } else { - $start = Carbon::today()->startOfDay()->toDateTimeString(); - $end = Carbon::today()->endOfDay()->toDateTimeString(); - - $display = "Today"; - } - - $filters[] = ['balance', '!=', 0]; - - $discrepancies = DB::table('cashier_income') - ->whereBetween('created_at', [$start, $end]) - ->where($filters) - ->whereNull('deleted_at') - ->get() - ->toArray(); - - return view('finance_reports::finance_reports.discrepancyReport', compact('users', 'display', 'discrepancies')); - } - - public function receiveCashierPayments(Request $request) - { - $received_by = Auth::id(); - $total = $request->total; - $tracker = "Money Received From "; - return view('finance_reports::finance_reports.receiveCashierPayments', compact( - 'request', - 'received_by', - 'total', - 'tracker', - 'request' - )); - } - - public function processCashierReceipt(Request $request) - { - $validator = Validator::make($request->all(), [ - 'amount_received' => 'required', - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $track_receipt = new TrackReceipt; - $track_receipt->reason = $request->reason; - $track_receipt->created_by = Auth::id(); - $track_receipt->save(); - $receipt_number = sprintf("%04u", $track_receipt->id); - - $most_recent_undeposited_funds_banking_record = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), Carbon::today()); - - $cashier_income = new CashierIncome; - $cashier_income->cashier_id = $request->received_from_id; - $cashier_income->brought_by = $request->received_by_id; - $cashier_income->expected_amount = $request->expected_amount; - $cashier_income->reason = $request->reason; - $cashier_income->amount = $request->amount_received; - $cashier_income->balance = $balance = ($request->expected_amount - $request->amount_received); - $cashier_income->receipt_number = $receipt_number; - $cashier_income->previous_balance = ($most_recent_undeposited_funds_banking_record) ? (int)$most_recent_undeposited_funds_banking_record->account_balance : 0; - $cashier_income->date_string = getDateStringBasedOnDateSearchType($request); - - if ($cashier_income->save()) { - flash("Cashier Receipt Created Successfully.")->success(); - } else { - flash("Cashier Receipt Not Created.")->error(); - } - - $balance_after_addition = ($most_recent_undeposited_funds_banking_record) ? ((int)$most_recent_undeposited_funds_banking_record->account_balance + (int)$request->amount_received) : (int)$request->amount_received; - - capture_bank_record('DEPOSIT', Carbon::today()->toDateString(), 10, 'sales and payments', $balance_after_addition, - $request->amount_received, 0, 'deposit to un-deposited funds.', $receipt_number); - - // subtract the money from the cash collection - record_cash_debits_to_daily_collection_account($request->amount_received, $receipt_number, "Cashiers Collection"); - - $latest_cashier_income = CashierIncome::latest()->first(); - $service_points = explode(',', $request->service_points); - $filters = date_query_builder_using_date_time($request->start_date, $request->end_date, 'created_at', $request->dates); - $created_by_filter = ['created_by', '=', $request->received_from_id]; - ($request->received_from_id == "ALL STAFF") ? $filters : array_push($filters, $created_by_filter); - - for ($i = 0; $i < count($service_points); $i++) { - switch ($service_points[$i]) { - case 'services': - ServiceDeposit::where($filters)->whereNull('received')->update(['received' => $latest_cashier_income->id]); - break; - case 'drugs': - TreatmentDeposits::where($filters)->whereNull('received')->update(['received' => $latest_cashier_income->id]); - break; - case 'procedures': - ProcedureDeposit::where($filters)->whereNull('received')->update(['received' => $latest_cashier_income->id]); - break; - case 'investigations': - InvestigationDeposit::where($filters)->whereNull('received')->update(['received' => $latest_cashier_income->id]); - break; - case 'sundries': - SundryDeposit::where($filters)->whereNull('received')->update(['received' => $latest_cashier_income->id]); - break; - case 'optics': - EyeGlassesDeposits::where($filters)->whereNull('received')->update(['received' => $latest_cashier_income->id]); - break; - case 'premiums': - SingleGroupPremium::where($filters)->whereNull('received')->update(['received' => $latest_cashier_income->id]); - /* InsurancePremiums::where($filters)->whereNull('received')->update(['received' => $latest_cashier_income->id]); Note: Winfred says we remove these */ - break; - case 'debt_plan': - $payments = DebtPlanPaymentStaff::where($filters)->get(); - foreach ($payments as $payment) { - DebtPlanPaymentStaff::where('id', $payment->id)->update([ - 'received_id' => $latest_cashier_income->id, - 'received_amount' => $payment->amount_paid - ]); - } - break; - case 'debtors': - $payments = DebtorPayment::where($filters)->get(); - foreach ($payments as $payment) { - DebtorPayment::where('id', $payment->id)->update([ - 'received_id' => $latest_cashier_income->id, - 'received_amount' => $payment->amount_paid - ]); - } - break; - case 'family_account_deposits': - FamilyAccountDeposit::where($filters)->whereNull('received')->update(['received' => $latest_cashier_income->id]); - break; - case 'family_account_consumptions': - FamilyAccountConsumption::where($filters)->whereNull('received')->update(['received' => $latest_cashier_income->id]); - break; - case 'patient_account_deposits': - PatientAccountsDeposit::where($filters)->whereNull('received')->update(['received' => $latest_cashier_income->id]); - break; - case 'patient_account_consumptions': - PatientAccountConsumption::where($filters)->whereNull('received')->update(['received' => $latest_cashier_income->id]); - break; - case 'direct_bank_deposits': - //OtherIncome::where($filters)->whereNull('received')->update(['received' => $latest_cashier_income->id]); - $other_income_table = OtherIncome::where($filters)->whereNull('received')->get(); - if (count($other_income_table) > 0) { - foreach ($other_income_table as $other_income_record) { - if (str_contains($other_income_record->deposit_memo, 'Journal (')) { - //in this if, it is a journal so first check if it's a receivable account and skip it - $journal_number = getStringBetweenCharacters($other_income_record->deposit_memo,"(",")"); - $journal = Journal::withTrashed()->find($journal_number); - if($journal){ - $account_types_to_exclude = [8]; // 8 - receivables - $journaled_account_ids_array = explode(",", $journal->account_ids); - $journaled_account_types = []; - for ($i=0; $i < count($journaled_account_ids_array) ; $i++) { - $journaled_account_types[] = get_name($journaled_account_ids_array[$i], "id", "type", "chart_of_accounts"); - } - - $journaled_and_not_receivable = array_intersect($journaled_account_types, $account_types_to_exclude); - if (empty($journaled_and_not_receivable)) { - //if the journaled account types are cash, then go ahead and it to the result - $other_income_record->received = $latest_cashier_income->id; - $other_income_record->save(); - } - } - } else { - $other_income_record->received = $latest_cashier_income->id; - $other_income_record->save(); - } - } - } - break; - } - } - - return redirect()->route('finance_reports.print_cashier_receipt'); - } - } - - public function print_cashier_receipt() - { - $cashier_income = CashierIncome::latest()->first(); - $hospital_information = HospitalInformation::first(); - return view('finance_reports::finance_reports.receipts.cashierReceipt', compact('hospital_information', 'cashier_income')); - } - - public function reconcile_cashier_income_records(Request $request) - { - $all_ids = []; - $ids = CashierIncome::whereNull('banked')->pluck('id')->toArray(); - $received_record_ids = []; - $today = Carbon::today()->toDateString(); - $yesterday = Carbon::yesterday()->toDateString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $tables = [ - 'service_deposits', 'investigation_deposits', 'treatment_deposits', 'procedure_deposits', 'sundries_deposits', 'invoice_payments', - 'debtor_payments', 'debt_plan_payment_staffs', 'eye_glasses_deposits' - ]; - - foreach ($tables as $table) { - switch ($request->dates) { - case 'today': - $received_record_ids[] = DB::table($table)->whereDate('created_at', $today)->groupBy('received') - ->pluck('received')->toArray(); - break; - case 'yesterday': - $received_record_ids[] = DB::table($table)->whereDate('created_at', $yesterday)->groupBy('received') - ->pluck('received')->toArray(); - break; - case 'custom_date': - $received_record_ids[] = DB::table($table)->whereDate('created_at', $start)->get()->groupBy('received') - ->pluck('received')->toArray(); - break; - case 'custom_date_range': - $received_record_ids[] = DB::table($table)->whereBetween('created_at', [$start, $end])->groupBy('received') - ->pluck('received')->toArray(); - break; - } - } - for ($i = 0; $i < count($received_record_ids); $i++) { - $all_ids = array_merge($all_ids, $received_record_ids[$i]); - }; - foreach ($ids as $id) { - if (!in_array($id, $all_ids)) { - CashierIncome::find($id)->delete(); - } - } - flash('reconciliation successfully')->success(); - return back(); - } - - public function delete_cashier_income($id) - { - $track_receipt = new TrackReceipt; - $track_receipt->reason = "deduction from undeposited funds."; - $track_receipt->created_by = Auth::id(); - $track_receipt->save(); - $receipt_number = sprintf("%04u", $track_receipt->id); - - $received_cash = CashierIncome::where('id', $id)->first(); - $latest_undeposited_funds_bank_record = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), Carbon::now()); - - capture_bank_record( - 'PAYMENT', - Carbon::today()->toDateString(), - 10, - 'Deduction', - (int)$latest_undeposited_funds_bank_record->account_balance - $received_cash->amount, - 0, - $received_cash->amount, - 'deletion of received undeposited money', - $receipt_number - ); - - record_cash_credits_to_daily_collection_account($received_cash->amount, $receipt_number, 'Cancel Received Cash Collection'); - - ServiceDeposit::where('received', $received_cash->id)->update(['received' => null]); - ProcedureDeposit::where('received', $received_cash->id)->update(['received' => null]); - SundryDeposit::where('received', $received_cash->id)->update(['received' => null]); - TreatmentDeposits::where('received', $received_cash->id)->update(['received' => null]); - InvestigationDeposit::where('received', $received_cash->id)->update(['received' => null]); - FamilyAccountDeposit::where('received', $received_cash->id)->update(['received' => null]); - FamilyAccountConsumption::where('received', $received_cash->id)->update(['received' => null]); - PatientCategoryInvoice::where('received', $received_cash->id)->update(['received' => null]); - - $this->debtPlanService->reverseCashReceived($received_cash->id); - $this->debtorsService->reverseCashReceived($received_cash->id); - $this->invoicesService->reverseCashReceived($received_cash->id); - - // update the other incomes if was a direct bank deposit - $other_income_record = OtherIncome::where('received', $received_cash->id)->update(['received' => null]); - - if ($received_cash->delete()) : - flash("Received Cash has been deducted from undeposited funds.")->success(); - endif; - return redirect()->route('finance_reports.received_cash'); - } - - public function receiveDonorDiscountPayment(Request $request) - { - return view('finance_reports::finance_reports.donorDiscountPayment', 'request'); - } - - /*======================Company and Financial Reports=============================*/ - - public function trial_balance(Request $request) { - $income_accounts = $cost_of_sales_accounts = $expense_accounts = array(); - $non_current_assets = $current_assets = $other_current_assets = array(); - $current_liabilities = $non_current_liabilities = $other_current_liabilities = array(); - $equities = array(); - - if (empty($request->all())) { - $request->request->add(['dates' => 'custom_date']); - $today = $date = Carbon::today()->toDateString(); - $request->request->add(['start_date' => $today]); - } - - $non_current_assets = getNonCurrentAssetsByAccount($request); - $current_assets = getCurrentAssetsByAccountBalanceSheet($request); - $other_current_assets = getOtherCurrentAssetsByAccountBalanceSheet($request); - $non_current_liabilities = getNonCurrentLiabilitiesByAccountBalanceSheet($request); - $current_liabilities = getCurrentLiabilitiesByAccountBalanceSheet($request); - $other_current_liabilities = getOtherCurrentLiabilitiesByAccountBalanceSheet($request); - $equities = getEquitiesByAccount($request); - - /*========== enter this creed ==============*/ - switch ($request->dates) { - case 'yesterday': - $start_of_fiscal_year = get_fiscal_year_start_from_hospital_information(Carbon::yesterday()); - $end_date = Carbon::yesterday()->toDateString(); - break; - case 'custom_date': - $start_of_fiscal_year = get_fiscal_year_start_from_hospital_information(Carbon::parse($request->start_date)); - $end_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - break; - case 'today': - default: - $start_of_fiscal_year = get_fiscal_year_start_from_hospital_information(Carbon::today()); - $end_date = Carbon::today()->toDateString(); - break; - } - - $request->request->add(['dates' => 'custom_date_range']); - $request->request->add(['start_date' => $start_of_fiscal_year]); - $request->request->add(['end_date' => $end_date]); - /*============== leave this creed after becoming a better man =================*/ - - if (!empty($request->all())) { - $revenue = getRevenueSumByAccount($request); - $income_accounts = $revenue[0]; - $cost_of_sales_accounts = $revenue[1]; - $expense_accounts = getExpensesByAccount($request); - } - - $display = "Trial Balance as of " . streamline_date($end_date); - - return view('finance_reports::finance_reports.trial_balance', compact('other_current_liabilities', 'current_liabilities', 'non_current_liabilities', 'other_current_assets', 'current_assets', 'non_current_assets', 'income_accounts', 'cost_of_sales_accounts', 'expense_accounts', 'equities', 'display', 'request')); - } - - public function profit_or_loss_statement(Request $request): View - { - /*========== enter this creed ==============*/ - - if ($request->dates == "yesterday") { - $start_of_fiscal_year = Carbon::yesterday(); - $end_date = Carbon::yesterday()->toDateString(); - } elseif ($request->dates == "custom_date") { - $start_of_fiscal_year = Carbon::parse($request->start_date); - $end_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - } elseif ($request->dates == "custom_date_range") { - $start_of_fiscal_year = Carbon::parse($request->start_date); - $end_date = Carbon::parse($request->end_date)->startOfDay()->toDateTimeString(); - } else { - $start_of_fiscal_year = Carbon::today(); - $end_date = Carbon::today()->toDateString(); - } - - $request->request->add(['dates' => 'custom_date_range']); - $request->request->add(['start_date' => $start_of_fiscal_year]); - $request->request->add(['end_date' => $end_date]); - /*============== leave this creed after becoming a better man =================*/ - - $revenue = getRevenueSumByAccount($request); - $income_accounts = $revenue[0]; - $cost_of_sales_accounts = $revenue[1]; - $expense_accounts = getExpensesByAccount($request); - - $display = dateLabelSetter($request); - - $income_account_names = $i_cash_per_account = $i_accrued_per_account = []; - $cog_account_names = $c_cash_per_account = $c_accrued_per_account = []; - $expense_account_names = $e_cash_per_account = $e_accrued_per_account = []; - - $c = $e = $i = $accrual_income_total = $cash_income_total = $expenses_accrual_total = $expenses_cash_total = 0; - - foreach ($income_accounts as $account) { - $income_account_names[$i] = get_name($account['id'], 'id', 'name', 'chart_of_accounts'); - $i_accrued_per_account[$i] = $account['accrual'] ?? 0; - $i_cash_per_account[$i] = $account['cash']; - $cash_income_total += $account['cash']; - $accrual_income_total += $account['accrual']; - $i++; - } - - foreach ($expense_accounts as $account) { - $expense_account_names[$e] = get_name($account['id'], 'id', 'name', 'chart_of_accounts'); - $e_accrued_per_account[$e] = $account['accrual'] ?? 0; - $e_cash_per_account[$e] = $account['cash']; - $expenses_cash_total += $account['cash']; - $expenses_accrual_total += $account['accrual']; - $e++; - } - - foreach ($cost_of_sales_accounts as $account) { - $cog_account_names[$c] = get_name($account['id'], 'id', 'name', 'chart_of_accounts'); - $c_accrued_per_account[$c] = $account['accrual'] ?? 0; - $c_cash_per_account[$c] = $account['cash']; - $c++; - } - - $c_gross_profit = $cash_income_total - $expenses_cash_total; - $c_gross_profit_chart = profit_v_loss_multi_color_graph( - 'GROSS_CASH_PROFIT', - 'bar', - ['incomes', 'expenses'], - [$c_gross_profit, $expenses_cash_total] - ); - - $a_gross_profit = $accrual_income_total - $expenses_accrual_total; - $a_gross_profit_chart = profit_v_loss_multi_color_graph( - 'GROSS_ACCRUED_PROFIT', - 'bar', - ['incomes', 'expenses'], - [$a_gross_profit, $expenses_accrual_total] - ); - - if (count($income_accounts) != 1) { - $income_cash_chart = plot_graph('INCOMES_CASH', 'bar', $income_account_names, $i_cash_per_account, 'green'); - } else { - $data = dataForIncomeAccrualGraph($request); - $income_cash_chart = plot_graph('INCOMES_CASH', 'line', $data['dates'], $data['amounts'], 'green'); - } - - if (count($income_accounts) != 1) { - $income_accrual_chart = plot_graph('INCOMES_ACCRUAL', 'bar', $income_account_names, $i_accrued_per_account, 'green'); - } else { - $data = dataForIncomeCashGraph($request); - $income_accrual_chart = plot_graph('INCOMES_ACCRUAL', 'line', $data['dates'], $data['amounts'], 'green'); - } - - if (count($cost_of_sales_accounts) != 1) { - $cog_chart = plot_graph('COG', 'bar', $cog_account_names, $c_cash_per_account, 'orange'); - } else { - $data = dataForCogGraph($request); - $cog_chart = plot_graph('COG', 'line', $data['dates'], $data['amounts'], 'orange'); - } - - if (count($expense_accounts) != 1) { - $expense_accrual_chart = plot_graph('EXPENSES_ACCRUAL', 'bar', $expense_account_names, $e_accrued_per_account, 'red'); - } else { - $data = dataForExpenseGraph($request); - $expense_accrual_chart = plot_graph('EXPENSES_ACCRUAL', 'line', $data['dates'], $data['amounts'], 'red'); - } - - if (count($expense_accounts) != 1) { - $expense_cash_chart = plot_graph('EXPENSES_CASH', 'bar', $expense_account_names, $e_cash_per_account, 'red'); - } else { - $data = dataForExpenseGraph($request); - $expense_cash_chart = plot_graph('EXPENSES_CASH', 'line', $data['dates'], $data['amounts'], 'red'); - } - - return view('finance_reports::finance_reports.profit_or_loss_statement', compact('income_accounts', 'expense_accounts', 'cost_of_sales_accounts', 'request', 'display', - 'income_cash_chart', 'income_accrual_chart', 'expense_accrual_chart', 'expense_cash_chart', 'cog_chart', 'c_gross_profit_chart', 'a_gross_profit_chart')); - } - - - public function income_detail($data): View - { - $data = explode(',', $data); - $search_type = $data[0]; - $accounting_basis = $data[6]; - $start = $data[1]; - $end = $data[2]; - $tag_id = $data[5]; - $chart_of_account = $data[4]; - $title = get_name($data[4], 'id', 'name', 'chart_of_accounts'); - - $incomes = $receivables = $ward_incomes = $other_incomes = []; - - $today = Carbon::today()->toDateString(); - $yesterday = Carbon::yesterday()->toDateString(); - $end = Carbon::parse($end)->endOfDay()->toDateTimeString(); - $start = Carbon::parse($start)->startOfDay()->toDateTimeString(); - - $sales_tables = [ - 'service_deposits', - 'investigation_deposits', - 'treatment_deposits', - 'procedure_deposits', - 'sundries_deposits', - 'eye_glasses_deposits' - ]; - - $ward_item_tables = [ - 'ward_extras', - 'ward_procedures', - 'ward_bed_stays', - 'ward_consultations_and_services', - 'ward_investigation_pricings', - 'ward_sundry_dispensations', - 'ward_treatment_dispensations' - ]; - - foreach ($sales_tables as $table) { - switch ($search_type) { - case 'today': - $incomes[$table] = DB::table($table)->whereNull('deleted_at')->whereDate('created_at', $today)->get()->toArray(); - break; - case 'yesterday': - $incomes[$table] = DB::table($table)->whereNull('deleted_at')->whereDate('created_at', $yesterday)->get()->toArray(); - break; - case 'custom_date': - $incomes[$table] = DB::table($table)->whereNull('deleted_at')->whereDate('created_at', $start)->get()->toArray(); - break; - case 'custom_date_range': - $incomes[$table] = DB::table($table)->whereNull('deleted_at')->whereBetween('created_at', [$start, $end])->get()->toArray(); - break; - } - } - - switch ($search_type) { - case 'today': - $other_incomes = DB::table('other_incomes')->whereDate('deposit_date', '=', $today)->where('income_account', $chart_of_account) - ->whereNull('deleted_at')->get()->toArray(); - break; - case 'yesterday': - $other_incomes = DB::table('other_incomes')->whereNull('deleted_at')->whereDate('deposit_date', $yesterday)->where('income_account', $chart_of_account) - ->get()->toArray(); - break; - case 'custom_date': - $other_incomes = DB::table('other_incomes')->whereNull('deleted_at')->whereDate('deposit_date', $start)->where('income_account', $chart_of_account) - ->get()->toArray(); - break; - case 'custom_date_range': - $other_incomes = DB::table('other_incomes')->where('income_account', $chart_of_account)->whereNull('deleted_at')->whereBetween('deposit_date', [$start, $end]) - ->get()->toArray(); - break; - } - - foreach ($ward_item_tables as $table) { - if ($accounting_basis == 'accrual') { - switch ($search_type) { - case 'today': - $ward_item_amounts[$table] = DB::table($table)->whereDate('created_at', $today)->where('current_chart_of_account', $chart_of_account) - ->whereNull('deleted_at')->get()->toArray(); - break; - case 'yesterday': - $ward_item_amounts[$table] = DB::table($table)->whereNull('deleted_at')->whereDate('created_at', $yesterday)->where('current_chart_of_account', $chart_of_account) - ->get()->toArray(); - break; - case 'custom_date': - $ward_item_amounts[$table] = DB::table($table)->whereNull('deleted_at')->whereDate('created_at', $start)->where('current_chart_of_account', $chart_of_account) - ->get()->toArray(); - break; - case 'custom_date_range': - $ward_item_amounts[$table] = DB::table($table)->whereNull('deleted_at')->whereBetween('created_at', [$start, $end])->where('current_chart_of_account', $chart_of_account) - ->get()->toArray(); - break; - } - } else { - switch ($search_type) { - case 'today': - $ward_item_amounts[$table] = DB::table($table)->whereDate('payment_date', $today)->where('current_chart_of_account', $chart_of_account) - ->whereNull('deleted_at')->get()->toArray(); - break; - case 'yesterday': - $ward_item_amounts[$table] = DB::table($table)->whereNull('deleted_at')->whereDate('payment_date', $yesterday)->where('current_chart_of_account', $chart_of_account) - ->get()->toArray(); - break; - case 'custom_date': - $ward_item_amounts[$table] = DB::table($table)->whereNull('deleted_at')->whereDate('payment_date', $start)->where('current_chart_of_account', $chart_of_account) - ->get()->toArray(); - break; - case 'custom_date_range': - $ward_item_amounts[$table] = DB::table($table)->whereNull('deleted_at')->whereBetween('payment_date', [$start, $end])->where('current_chart_of_account', $chart_of_account) - ->get()->toArray(); - break; - } - } - } - - if (!empty($ward_item_amounts)) { - if ($ward_item_amounts['ward_procedures']) { - foreach ($ward_item_amounts['ward_procedures'] as $item) { - if ($item->current_chart_of_account == $chart_of_account) { - $ward_incomes['ward_procedures'][] = $item; - } - } - } - - if ($ward_item_amounts['ward_bed_stays']) { - foreach ($ward_item_amounts['ward_bed_stays'] as $item) { - if ($item->current_chart_of_account == $chart_of_account) { - $ward_incomes['ward_bed_stays'][] = $item; - } - } - } - - if ($ward_item_amounts['ward_consultations_and_services']) { - foreach ($ward_item_amounts['ward_consultations_and_services'] as $item) { - if ($item->current_chart_of_account == $chart_of_account) { - $ward_incomes['ward_consultations_and_services'][] = $item; - } - } - } - - if ($ward_item_amounts['ward_investigation_pricings']) { - foreach ($ward_item_amounts['ward_investigation_pricings'] as $item) { - if ($item->current_chart_of_account == $chart_of_account) { - $ward_incomes['ward_investigation_pricings'][] = $item; - } - } - } - - if ($ward_item_amounts['ward_sundry_dispensations']) { - foreach ($ward_item_amounts['ward_sundry_dispensations'] as $item) { - if ($item->current_chart_of_account == $chart_of_account) { - $ward_incomes['ward_sundry_dispensations'][] = $item; - } - } - } - - if ($ward_item_amounts['ward_treatment_dispensations']) { - foreach ($ward_item_amounts['ward_treatment_dispensations'] as $item) { - if ($item->current_chart_of_account == $chart_of_account) { - $ward_incomes['ward_treatment_dispensations'][] = $item; - } - } - } - - if ($ward_item_amounts['ward_extras']) { - foreach ($ward_item_amounts['ward_extras'] as $item) { - if ($item->current_chart_of_account == $chart_of_account) { - $ward_incomes['ward_extras'][] = $item; - } - } - } - } - - if (count($incomes['service_deposits']) > 0) { - - foreach ($incomes['service_deposits'] as $payment) : - - $item_id_array = explode(',', $payment->items_ids); - $item_account_array = explode(',', $payment->current_chart_of_accounts); - $item_amounts_array = explode(',', $payment->items_amounts); - $item_amount_paid_array = explode(',', $payment->item_amount_paid); - $item_balance_remaining_array = explode(',', $payment->item_balance_remaining); - - for ($x = 0; $x < count($item_id_array); $x++) : - if (isset($item_account_array[$x])) { - if ($chart_of_account == $item_account_array[$x]) { - $incomes['new_service_deposits'][] = [ - 'item_id' => $item_id_array[$x], - 'item_amount' => $item_amounts_array[$x], - 'item_account' => $chart_of_account, - 'item_amount_paid' => $item_amount_paid_array[$x], - 'balance' => $item_balance_remaining_array[$x], - 'created_by' => $payment->created_by, - 'patient_id' => $payment->patient_id, - 'created_at' => $payment->created_at, - 'receipt_number' => $payment->receipt_number - ]; - } - } - endfor; - endforeach; - } - - if (count($incomes['investigation_deposits']) > 0) { - - foreach ($incomes['investigation_deposits'] as $payment) : - - $item_id_array = explode(',', $payment->investigation_items); - $item_account_array = explode(',', $payment->current_chart_of_accounts); - $investigation_amounts_array = explode(',', $payment->investigation_amounts); - $item_amount_paid_array = explode(',', $payment->item_amount_paid); - $item_balance_remaining_array = explode(',', $payment->item_balance_remaining); - - for ($x = 0; $x < count($item_id_array); $x++) : - if (isset($item_account_array[$x])) { - if ($chart_of_account == $item_account_array[$x]) { - $incomes['new_investigation_deposits'][] = [ - 'item_id' => $item_id_array[$x], - 'item_amount' => $investigation_amounts_array[$x], - 'item_account' => $chart_of_account, - 'item_amount_paid' => $item_amount_paid_array[$x], - 'balance' => $item_balance_remaining_array[$x], - 'created_by' => $payment->created_by, - 'patient_id' => $payment->patient_id, - 'created_at' => $payment->created_at, - 'receipt_number' => $payment->receipt_number - ]; - } - } - endfor; - endforeach; - } - - if (count($incomes['sundries_deposits']) > 0) { - foreach ($incomes['sundries_deposits'] as $payment) : - - $item_id_array = explode(',', $payment->sundry_items); - $item_account_array = explode(',', $payment->current_chart_of_accounts); - $investigation_amounts_array = explode(',', $payment->sundry_subtotals); - $item_amount_paid_array = explode(',', $payment->item_amount_paid); - $item_balance_remaining_array = explode(',', $payment->item_balance_remaining); - - for ($x = 0; $x < count($item_id_array); $x++) : - if (isset($item_account_array[$x])) { - if ($chart_of_account == $item_account_array[$x]) { - $incomes['new_sundries_deposits'][] = [ - 'item_id' => $item_id_array[$x], - 'item_amount' => $investigation_amounts_array[$x], - 'item_account' => $chart_of_account, - 'item_amount_paid' => $item_amount_paid_array[$x], - 'balance' => $item_balance_remaining_array[$x], - 'created_by' => $payment->created_by, - 'patient_id' => $payment->patient_id, - 'created_at' => $payment->created_at, - 'receipt_number' => $payment->receipt_number - ]; - } - } - endfor; - endforeach; - } - - if (count($incomes['procedure_deposits']) > 0) { - - foreach ($incomes['procedure_deposits'] as $payment) : - - $item_id_array = explode(',', $payment->procedure_items); - $item_account_array = explode(',', $payment->current_chart_of_accounts); - $investigation_amounts_array = explode(',', $payment->procedure_amounts); - $item_amount_paid_array = explode(',', $payment->item_amount_paid); - $item_balance_remaining_array = explode(',', $payment->item_balance_remaining); - - for ($x = 0; $x < count($item_id_array); $x++) : - if (isset($item_account_array[$x])) { - if ($chart_of_account == $item_account_array[$x]) { - $incomes['new_procedure_deposits'][] = [ - 'item_id' => $item_id_array[$x], - 'item_amount' => $investigation_amounts_array[$x], - 'item_account' => $chart_of_account, - 'item_amount_paid' => $item_amount_paid_array[$x], - 'balance' => $item_balance_remaining_array[$x], - 'created_by' => $payment->created_by, - 'patient_id' => $payment->patient_id, - 'created_at' => $payment->created_at, - 'receipt_number' => $payment->receipt_number - ]; - } - } - endfor; - endforeach; - } - - if (count($incomes['treatment_deposits']) > 0) { - - foreach ($incomes['treatment_deposits'] as $payment) : - - $item_id_array = explode(',', $payment->treatment_items); - $item_account_array = explode(',', $payment->current_chart_of_accounts); - $investigation_amounts_array = explode(',', $payment->treatment_subtotals); - $item_amount_paid_array = explode(',', $payment->item_amount_paid); - $item_balance_remaining_array = explode(',', $payment->item_balance_remaining); - - for ($x = 0; $x < count($item_id_array); $x++) : - if (isset($item_account_array[$x])) { - if ($chart_of_account == $item_account_array[$x]) { - $incomes['new_treatment_deposits'][] = [ - 'item_id' => $item_id_array[$x], - 'item_amount' => $investigation_amounts_array[$x], - 'item_account' => $chart_of_account, - 'item_amount_paid' => $item_amount_paid_array[$x], - 'balance' => $item_balance_remaining_array[$x], - 'created_by' => $payment->created_by, - 'patient_id' => $payment->patient_id, - 'created_at' => $payment->created_at, - 'receipt_number' => $payment->receipt_number - ]; - } - } - endfor; - endforeach; - } - - if (count($incomes['eye_glasses_deposits']) > 0) { - foreach ($incomes['eye_glasses_deposits'] as $payment) { - $item_id_array = explode(',', $payment->items); - $item_account_array = explode(',', $payment->current_chart_of_accounts); - $items_amounts_array = explode(',', $payment->subtotals); - $item_amount_paid_array = explode(',', $payment->item_amount_paid); - $item_balance_remaining_array = explode(',', $payment->item_balance_remaining); - - for ($x = 0; $x < count($item_id_array); $x++) { - if (isset($item_account_array[$x]) && $chart_of_account == $item_account_array[$x]) { - $incomes['new_eye_glasses_deposits'][] = [ - 'item_id' => $item_id_array[$x], - 'item_amount' => $items_amounts_array[$x], - 'item_account' => $chart_of_account, - 'item_amount_paid' => $item_amount_paid_array[$x] ?? $items_amounts_array[$x], - 'balance' => $item_balance_remaining_array[$x] ?? 0, - 'created_by' => $payment->created_by, - 'patient_id' => $payment->patient_id, - 'created_at' => $payment->created_at, - 'receipt_number' => $payment->receipt_number - ]; - } - } - } - } - - $receivables['debtors'] = DB::table('debtor_payments')->join('debtors', 'debtors.id', '=', 'debtor_payments.debt_id') - ->where('debtors.income_account', $chart_of_account) - ->whereNull('debtor_payments.deleted_at')->whereBetween('debtor_payments.date_paid', [$start, $end]) - ->get(['debtor_payments.amount_paid', 'debtor_payments.date_paid', 'debtors.balance_remaining', 'debtors.patient_id', - 'debtor_payments.created_by', 'debtor_payments.created_at', 'debtor_payments.receipt_number']); - - $receivables['debt_plan'] = DB::table('debt_plan_payment_staffs') - ->leftJoin('debt_plan', 'debt_plan.id', '=', 'debt_plan_payment_staffs.debt_plan_id') - ->where('debt_plan.income_account', $chart_of_account) - ->whereNull('debt_plan_payment_staffs.deleted_at') - ->whereBetween('debt_plan_payment_staffs.date_paid', [$start, $end]) - ->get(['debt_plan.patient_id', 'debt_plan.staff_guarantor', 'debt_plan.balance_remaining', 'debt_plan_payment_staffs.created_by', - 'debt_plan_payment_staffs.created_at', 'debt_plan_payment_staffs.amount_paid', 'debt_plan_payment_staffs.comment', 'debt_plan.staff_guarantor_to_pay']); - - if ($accounting_basis == 'accrual') { - $invoice_filters = [ - ['transaction_date', '>=', $start], - ['transaction_date', '<=', $end], - ]; - } else { - $invoice_filters = [ - ['payment_date', '>=', $start], - ['payment_date', '<=', $end], - ]; - } - - $receivables['patient_category_invoices'] = DB::table('patient_category_invoices') - ->whereRaw('FIND_IN_SET(' . $chart_of_account . ',income_account)') - ->whereNull('deleted_at') - ->where($invoice_filters) - ->get(['amount_paid_off', 'patient_amount', 'receipt_number', 'created_by', 'payment_date', 'transaction_date']); - - if ($accounting_basis === 'accrual') { - $opd_treatments = DB::table('treatments')->whereNull('deleted_at') - ->where('inpatient_bill_generated', 1) - ->whereRaw('FIND_IN_SET(' . $chart_of_account . ',current_chart_of_account)') - ->whereBetween('created_at', [$start, $end]) - ->get(); - } else { - $opd_treatments = DB::table('treatments')->whereNull('deleted_at') - ->where('inpatient_bill_generated', 1) - ->whereRaw('FIND_IN_SET(' . $chart_of_account . ',current_chart_of_account)') - ->whereBetween('payment_date', [$start, $end]) - ->get(); - } - - return view('finance_reports::finance_reports.accounts.incomes', compact( - 'title', 'accounting_basis', 'tag_id', 'incomes', 'table', - 'receivables', 'chart_of_account', 'ward_incomes', 'other_incomes', 'opd_treatments' - )); - } - - public function cost_of_sales_detail($data) { - $data = explode(',', $data); - $search_type = $data[0]; - $_start = $data[1]; - $_end = $data[2]; - $tables = ['treatment_deposits', 'sundries_deposits']; - $ward_item_tables = ['ward_treatment_dispensations', 'ward_sundry_dispensations']; - $title = get_name($data[4], 'id', 'name', 'chart_of_accounts'); - $chart_of_account = $data[4]; - $result = $ward_incomes = []; - $accounting_basis = $data[6] ?? 'accrual'; - - $today = Carbon::today()->toDateString(); - $yesterday = Carbon::yesterday()->toDateString(); - $end = Carbon::parse($_end)->endOfDay()->toDateTimeString(); - $start = Carbon::parse($_start)->startOfDay()->toDateTimeString(); - - foreach ($tables as $table) { - switch ($search_type) { - case 'today': - $result[$table] = DB::table($table)->whereDate('created_at', $today)->where('cost_of_goods_account', $chart_of_account)->get(); - break; - case 'yesterday': - $result[$table] = DB::table($table)->whereDate('created_at', $yesterday)->where('cost_of_goods_account', $chart_of_account)->get(); - break; - case 'custom_date': - $result[$table] = DB::table($table)->whereDate('created_at', $start)->where('cost_of_goods_account', $chart_of_account)->get(); - break; - case 'custom_date_range': - $result[$table] = DB::table($table)->whereBetween('created_at', [$start, $end])->where('cost_of_goods_account', $chart_of_account)->get(); - break; - } - } - - foreach ($ward_item_tables as $table) { - switch ($search_type) { - case 'today': - $ward_incomes[$table] = DB::table($table)->whereDate('created_at', $today)->where('cost_of_goods_account', $chart_of_account) - ->whereNull('deleted_at')->get()->toArray(); - break; - case 'yesterday': - $ward_incomes[$table] = DB::table($table)->whereNull('deleted_at')->whereDate('created_at', $yesterday)->where('cost_of_goods_account', $chart_of_account) - ->get()->toArray(); - break; - case 'custom_date': - $ward_incomes[$table] = DB::table($table)->whereNull('deleted_at')->whereDate('created_at', $start)->where('cost_of_goods_account', $chart_of_account) - ->get()->toArray(); - break; - case 'custom_date_range': - $ward_incomes[$table] = DB::table($table)->whereNull('deleted_at')->where('cost_of_goods_account', $chart_of_account)->whereBetween('created_at', [$start, $end]) - ->get()->toArray(); - break; - } - } - - $drugs = DB::table('drugs')->where('available', 1)->pluck('name', 'id'); - $sundries = DB::table('sundries')->where('available', 1)->pluck('name', 'id'); - - $patient_category_invoices = DB::table('patient_category_invoices')->whereRaw('FIND_IN_SET(' . $chart_of_account . ',cost_of_goods_account)')->whereNull('deleted_at')->whereBetween('transaction_date', [$start, $end]) - ->get(['amount_paid_off', 'balance_remaining', 'patient_amount', 'income_account', 'receipt_number', 'items_amounts', - 'tag_id', 'cost_price', 'items_quantity', 'created_by', 'patient_id', 'patient_category', 'cost_of_goods_account','created_at','items_ids']); - - return view('finance_reports::finance_reports.accounts.cost_of_sales', compact('ward_incomes', 'patient_category_invoices', 'result', 'table', 'title', 'search_type', 'start', 'end', 'chart_of_account', 'accounting_basis', 'drugs', 'sundries')); - } - - public function expense_detail($_data) { - $data = explode(',', $_data); - $search_type = $data[0]; - $_start = $data[1]; - $_end = $data[2]; - $table = $data[3]; - $title = get_name($data[4], 'id', 'name', 'chart_of_accounts'); - $chart_of_account = $data[4]; - - $payments = $bills = $_bills = $discounts = []; - $one_off_discounts = $ward_discounts = []; - - $today = Carbon::today(); - $yesterday = Carbon::yesterday(); - $end = Carbon::parse($_end)->endOfDay(); - $start = Carbon::parse($_start)->startOfDay(); - $tracked_patient_categories = PatientDiscount::whereNotNull('tracking_expense_account')->where('tracking_expense_account', $chart_of_account)->pluck('patient_category')->toArray(); - - if ($chart_of_account == '14') { - return redirect()->route('finance_reports.liability_detail', $_data); - } - - $chart_of_account_slug = get_name($chart_of_account, "id", "slug", "chart_of_accounts"); - if ($chart_of_account_slug == "professional_fees") { - return redirect()->route('finance_reports.professional_fees_detail', $_data); - } - - if ($chart_of_account_slug == "ward_discounts") { - switch ($search_type) { - case 'today': - $ward_discounts = DB::table('inpatient_ward_discounts')->whereNull('deleted_at')->whereDate('created_at', $today)->get()->toArray(); - break; - case 'yesterday': - $ward_discounts = DB::table('inpatient_ward_discounts')->whereNull('deleted_at')->whereDate('created_at', $yesterday)->get()->toArray(); - break; - case 'custom_date': - $ward_discounts = DB::table('inpatient_ward_discounts')->whereNull('deleted_at')->whereDate('created_at', $start)->get()->toArray(); - break; - case 'custom_date_range': - $ward_discounts = DB::table('inpatient_ward_discounts')->whereNull('deleted_at')->whereBetween('created_at', [$start, $end])->get()->toArray(); - break; - } - } - - if ($chart_of_account_slug == "one_off_discounts") { - switch ($search_type) { - case 'today': - $one_off_discounts = DB::table('patient_one_off_discounts')->whereDate('created_at', $today)->get()->toArray(); - break; - case 'yesterday': - $one_off_discounts = DB::table('patient_one_off_discounts')->whereDate('created_at', $yesterday)->get()->toArray(); - break; - case 'custom_date': - $one_off_discounts = DB::table('patient_one_off_discounts')->whereDate('created_at', $start)->get()->toArray(); - break; - case 'custom_date_range': - $one_off_discounts = DB::table('patient_one_off_discounts')->whereBetween('created_at', [$start, $end])->get()->toArray(); - break; - } - } - - switch ($search_type) { - case 'today': - $_bills = DB::table('hospital_bills')->whereNull('deleted_at')->whereDate('bill_date', $today->toDateString())->get()->toArray(); - $discounts = DB::table('discounts')->whereNull('deleted_at')->whereIn('patient_category', $tracked_patient_categories)->whereDate('created_at', $today)->get()->toArray(); - $payments = DB::table('payments')->whereNull('deleted_at')->whereDate('expense_date', $today)->where('expense_account', $chart_of_account)->groupBy('transaction_id')->selectRaw('*, sum(amount) as sum')->get()->toArray(); - break; - case 'yesterday': - $_bills = DB::table('hospital_bills')->whereNull('deleted_at')->whereDate('bill_date', $yesterday->toDateString())->get()->toArray(); - $discounts = DB::table('discounts')->whereNull('deleted_at')->whereIn('patient_category', $tracked_patient_categories)->whereDate('created_at', $yesterday)->get()->toArray(); - $payments = DB::table($table)->whereNull('deleted_at')->whereDate('expense_date', $yesterday)->where('expense_account', $chart_of_account)->groupBy('transaction_id')->selectRaw('*, sum(amount) as sum')->get()->toArray(); - break; - case 'custom_date': - $_bills = DB::table('hospital_bills')->whereNull('deleted_at')->whereDate('bill_date', $start->toDateString())->get()->toArray(); - $discounts = DB::table('discounts')->whereNull('deleted_at')->whereDate('created_at', $start)->get()->toArray(); - $payments = DB::table($table)->whereNull('deleted_at')->whereDate('expense_date', $start)->where('expense_account', $chart_of_account)->groupBy('transaction_id')->selectRaw('*, sum(amount) as sum')->get()->toArray(); - break; - case 'custom_date_range': - $_bills = DB::table('hospital_bills')->whereNull('deleted_at')->whereBetween('bill_date', [$start->toDateString(), $end->toDateString()])->get()->toArray(); - $discounts = DB::table('discounts')->whereNull('deleted_at')->whereIn('patient_category', $tracked_patient_categories)->whereBetween('created_at', [$start, $end])->get()->toArray(); - $payments = DB::table('payments')->whereNull('deleted_at')->whereBetween('expense_date', [$start, $end])->where('expense_account', $chart_of_account)->groupBy('transaction_id')->selectRaw('*, sum(amount) as sum')->get()->toArray(); - break; - } - - if (count($_bills) > 0) { - foreach ($_bills as $bill) : - $item_id_array = explode(',', $bill->item_ids); - $item_account_array = explode(',', $bill->item_accounts); - $item_amounts_array = explode(',', $bill->item_subtotals); - $item_quantites_array = explode(',', $bill->item_quantities); - $item_amount_paid_array = explode(',', $bill->item_amount_paid); - $item_balance_remaining_array = explode(',', $bill->item_balance_remaining); - - for ($x = 0; $x < count($item_id_array); $x++) : - if (isset($item_account_array[$x]) && ($chart_of_account == $item_account_array[$x])) { - $bills[] = [ - 'bill_id' => $bill->id, - 'bill_type' => $bill->bill_type, - 'item' => $item_id_array[$x], - 'item_amount' => $item_amounts_array[$x], - 'item_quantity' => $item_quantites_array[$x], - 'item_account' => $chart_of_account, - 'item_amount_paid' => !is_null($bill->item_amount_paid) ? $item_amount_paid_array[$x] : 0, - 'item_balance_remaining' => !is_null($bill->item_amount_paid) ? $item_balance_remaining_array[$x] : $item_amounts_array[$x], - 'created_by' => $bill->created_by, - 'created_at' => $bill->created_at, - 'vendor' => $bill->vendor, - 'bill_number' => $bill->bill_number, - 'bill_date' => $bill->bill_date, - 'bill_due_date' => $bill->bill_due_date, - 'bill_memo' => $bill->bill_memo, - ]; - } - endfor; - endforeach; - } - - return view('finance_reports::finance_reports.accounts.expenses', compact('payments', 'table', 'title', 'search_type', 'start', 'end', 'chart_of_account', 'bills', 'discounts', 'one_off_discounts', 'ward_discounts')); - } - - public function print_profit_or_loss_statement(Request $request) - { - $income_accounts = unserialize($request->income_accounts); - $expense_accounts = unserialize($request->expense_accounts); - $cost_of_sales_accounts = unserialize($request->cost_of_sales_accounts); - $display = $request->display; - $switch_to_cash_print = $request->switch_to_cash_print; - - $data = [ - 'income_accounts' => $income_accounts, - 'expense_accounts' => $expense_accounts, - 'cost_of_sales_accounts' => $cost_of_sales_accounts, - 'display' => $display, - 'switch_to_cash_print' => $switch_to_cash_print, - ]; - - $pdf = SnappyPDF::loadView("finance_reports::finance_reports/print_profit_or_loss_statement", $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline'); - - - return $pdf->inline('Profit and Loss Statement' . date(" d-m-y h:ia") . '.pdf'); - } - - public function balance_sheet(Request $request) { - // liabilities - $non_current_liabilities = getNonCurrentLiabilitiesByAccountBalanceSheet($request); - $current_liabilities = getCurrentLiabilitiesByAccountBalanceSheet($request); - $other_current_liabilities = getOtherCurrentLiabilitiesByAccountBalanceSheet($request); - - // assets - $non_current_assets = getNonCurrentAssetsByAccount($request); - $current_assets = getCurrentAssetsByAccountBalanceSheet($request); - $other_current_assets = getOtherCurrentAssetsByAccountBalanceSheet($request); - $individual_accounts_receivables = getIndividualAccountsReceivablesBalanceSheet($request); - - // equity - $equities = getEquitiesByAccount($request); - - /*========== enter this creed ==============*/ - switch ($request->dates) { - case 'yesterday': - $start_of_fiscal_year = get_fiscal_year_start_from_hospital_information(Carbon::yesterday()); - $end_date = Carbon::yesterday()->toDateString(); - break; - case 'custom_date': - $start_of_fiscal_year = get_fiscal_year_start_from_hospital_information(Carbon::parse($request->start_date)); - $end_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - break; - case 'today': - default: - $start_of_fiscal_year = get_fiscal_year_start_from_hospital_information(Carbon::today()); - $end_date = Carbon::today()->toDateString(); - break; - } - - $request->request->add(['dates' => 'custom_date_range']); - $request->request->add(['start_date' => $start_of_fiscal_year]); - $request->request->add(['end_date' => $end_date]); - $display = "As of " . streamline_date($end_date); - /*============== leave this creed after becoming a better man =================*/ - - /* ===== start of net income ======= */ - $net_income = getNetIncome($request); - $accrual_net_income = $net_income['accrual_net_income']; - /* ============== */ - - //retained earnings::::::::: VERY IMPORTANT: let this variable be the last variable in this function coz it plays with the $request to load previous net incomes - $retained_earnings = getRetainedEarnings($request, $start_of_fiscal_year); - //loop through equities and find retained earnings account using slug and add this figure - $new_equities_array = []; - foreach ($equities as $equity) { - $equity_details = ChartOfAccount::withTrashed()->find($equity['id']); - if ($equity_details && $equity_details->slug == "retained_earnings") { - $new_amount = $equity["amount"] + $retained_earnings; - } else{ - $new_amount = $equity["amount"]; - } - $new_equities_array[] = ["id" => $equity["id"], "amount" => $new_amount, "data" => $equity["data"]]; - } - $equities = $new_equities_array; //overide the original equities - - return view('finance_reports::finance_reports.balance_sheet', compact('request', 'display', 'non_current_assets', 'current_assets', 'retained_earnings', - 'other_current_assets', 'non_current_liabilities', 'current_liabilities', 'other_current_liabilities', 'equities', 'accrual_net_income', 'individual_accounts_receivables')); - } - - public function print_balance_sheet(Request $request) - { - $non_current_assets = unserialize($request->non_current_assets); - $current_assets = unserialize($request->current_assets); - $other_current_assets = unserialize($request->other_current_assets); - $non_current_liabilities = unserialize($request->non_current_liabilities); - $current_liabilities = unserialize($request->current_liabilities); - $other_current_liabilities = unserialize($request->other_current_liabilities); - $display = $request->display; - $equities = unserialize($request->equities); - - $data = [ - 'non_current_assets' => $non_current_assets, - 'current_assets' => $current_assets, - 'other_current_assets' => $other_current_assets, - 'non_current_liabilities' => $non_current_liabilities, - 'current_liabilities' => $current_liabilities, - 'other_current_liabilities' => $other_current_liabilities, - 'equities' => $equities, - 'display' => $display, - ]; - - $pdf = SnappyPDF::loadView("finance_reports::finance_reports/print_balance_sheet", $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline'); - - - return $pdf->inline('Balance Sheet' . date(" d-m-y h:ia") . '.pdf'); - } - - public function fixed_asset_detail($data) { - $data = explode(',', $data); - - $chart_of_account = $data[4]; - $title = get_name($chart_of_account, 'id', 'name', 'chart_of_accounts'); - $filters = []; - - if ($data[0] == "custom_date") { - $filters[] = ['acquisition_date', '<=', $data[1]]; - } elseif ($data[0] == "custom_date_range") { - $filters[] = ['acquisition_date', '>', Carbon::parse($data[2])->subDay()->toDateString()]; - $filters[] = ['acquisition_date', '<', Carbon::parse($data[1])->addDay()->toDateString()]; - } - - $result = DB::table('fixed_assets') - ->whereNull('deleted_at') - ->where('fixed_asset_account_id', $chart_of_account)->where($filters)->get(); - - return view('finance_reports::finance_reports.accounts.fixed_assets', compact('result', 'chart_of_account', 'title')); - } - - public function current_asset_detail($data) { - $data = explode(',', $data); - - $result = $undeposited_funds_banking_records = []; - $table = $data[3]; - $search_type = $data[0]; - $chart_of_account = $data[4]; - $today = Carbon::today()->endOfDay()->toDateTimeString(); - $yesterday = Carbon::yesterday()->endOfDay()->toDateTimeString(); - $end = Carbon::parse($data[2])->endOfDay()->toDateTimeString(); - $start = Carbon::parse($data[1])->startOfDay()->toDateTimeString(); - $accounts_receivables_tables = ['patient_category_invoices', 'debtors', 'debt_plan']; - $title = get_name($chart_of_account, 'id', 'name', 'chart_of_accounts'); - - if ($table == 'cashier_income') { - switch ($search_type) { - case 'today': - $result = Banking::where('bank', 10)->whereDate('created_at', '<=', $today)->whereNull('deleted_at')->get(); - break; - case 'yesterday': - $result = Banking::where('bank', 10)->whereDate('created_at', '<=', $yesterday)->whereNull('deleted_at')->get(); - break; - case 'custom_date': - $result = Banking::where('bank', 10)->whereDate('created_at', '<=', $start)->whereNull('deleted_at')->get(); - break; - case 'custom_date_range': - $result = Banking::where('bank', 10)->whereBetween('created_at', [$start, $end])->whereNull('deleted_at')->get(); - break; - } - - foreach ($result as $key => $row) : - $total = 0; - for ($i = 0; $i <= $key; $i++) : - $total = $total + $result[$i]->credit - $result[$i]->debit; - endfor; - $undeposited_funds_banking_records[] = [ - 'trans_id' => $row->trans_id, - 'trans_date' => $row->trans_date, - 'trans_type' => $row->trans_type, - 'memo' => $row->memo, - 'debit' => $row->debit, - 'credit' => $row->credit, - 'account_balance' => $total, - 'created_by' => $row->created_by, - ]; - endforeach; - - return view('finance_reports::finance_reports.accounts.undeposited_funds', - compact('undeposited_funds_banking_records', 'chart_of_account', 'title', 'table') - ); - } else if ($table == 'banking') { - switch ($search_type) { - case 'today': - $result = Banking::whereNull('deleted_at')->whereDate('trans_date', '<=', $today)->where('bank', $chart_of_account)->get(); - break; - case 'yesterday': - $result = Banking::whereNull('deleted_at')->whereDate('trans_date', '<=', $yesterday)->where('bank', $chart_of_account)->get(); - break; - case 'custom_date': - $result = Banking::whereNull('deleted_at')->whereDate('trans_date', '<=', $start)->where('bank', $chart_of_account)->get(); - break; - case 'custom_date_range': - $result = Banking::whereNull('deleted_at')->whereBetween('trans_date', [$start, $end])->where('bank', $chart_of_account)->get(); - break; - } - return view('finance_reports::finance_reports.accounts.banking', compact('result', 'chart_of_account', 'title', 'table')); - } elseif ($table == 'stock_watcher') { - $date_of_interest = $end; - - /* $result['drugs'] = DB::table('drugs')->whereNull('deleted_at')->whereDate('created_at', '<=', $today) - ->where('inventory_account', $chart_of_account)->get(['id', 'cost_price', 'pharmacy_stock', 'inventory_account', 'store_stock', 'insurance_coverage', 'brand_name', 'name']); - $result['sundries'] = DB::table('sundries')->whereNull('deleted_at')->whereDate('created_at', '<=', $today) - ->where('inventory_account', $chart_of_account)->get(['id', 'cost_price', 'pharmacy_stock', 'inventory_account', 'store_stock', 'name']); */ - - $drugs = DB::table('drugs')->whereNull('deleted_at') - ->where('inventory_account', $chart_of_account)->get(['id', 'name', 'insurance_coverage', 'cost_price', 'pharmacy_stock', 'inventory_account', 'store_stock']); - $sundries = DB::table('sundries')->whereNull('deleted_at') - ->where('inventory_account', $chart_of_account)->get(['id', 'name', 'insurance', 'cost_price', 'pharmacy_stock', 'inventory_account', 'store_stock']); - - $inventory_items = [ - ["item_type" => 1, "data" => $drugs], - ["item_type" => 2, "data" => $sundries] - ]; - - foreach ($inventory_items as $inventory_item) { - foreach ($inventory_item['data'] as $inventory_item_data) { - $stock_watcher_record = DB::table('batch_stock_watcher')->where('item_type', $inventory_item['item_type']) - ->where('item_id', $inventory_item_data->id)->first(); - $cost_price = $pharmacy_stock = $store_stock = $ward_stock = 0; - if ($stock_watcher_record) { - $details_arr = json_decode($stock_watcher_record->details, true); - - if (!isset($details_arr[$date_of_interest])) { - // just get the dates into their own array - $dates_array = array_keys($details_arr); - - // search for the closest date to ours of interest and set that as our reference - $closest_date = get_closest_element_in_array($dates_array, $date_of_interest); - - if ($closest_date < $date_of_interest) { - // we should only get dates less than that of interest since if it is greater calculations will be wrong - $details = $details_arr[$closest_date]; - } else { - $details = ["buying_price" => 0, "pharmacy_stock" => 0, "store_stock" => 0, "ward_stock" => 0]; - } - } else { - $details = $details_arr[$date_of_interest]; - } - - $stock_value = ($details["buying_price"] * ($details["pharmacy_stock"] + $details["store_stock"] + ($details["ward_stock"] ?? 0))); - - $cost_price = $details["buying_price"]; - $pharmacy_stock = $details["pharmacy_stock"]; - $store_stock = $details["store_stock"]; - $ward_stock = $details["ward_stock"]; - - } else { - // just bring up the previous since having no stock watcher record means it has never changed - switch ($inventory_item['item_type']) { - case 1: - case 2: - $stock_value = ($inventory_item_data->cost_price * ($inventory_item_data->pharmacy_stock + $inventory_item_data->store_stock)); - break; - - $cost_price = $inventory_item_data->cost_price; - $pharmacy_stock = $inventory_item_data->pharmacy_stock; - $store_stock = $inventory_item_data->store_stock; - $ward_stock = 0; - } - } - - if($inventory_item['item_type'] == 1){ - $result["drugs"][$inventory_item_data->id] = (object)["name" => $inventory_item_data->name, "insurance_coverage" => $inventory_item_data->insurance_coverage, "cost_price" => $cost_price, "pharmacy_stock" => $pharmacy_stock, "store_stock" => $store_stock, "ward_stock" => $ward_stock]; - } elseif ($inventory_item['item_type'] == 2) { - $result["sundries"][$inventory_item_data->id] = (object)["name" => $inventory_item_data->name, "cost_price" => $cost_price, "pharmacy_stock" => $pharmacy_stock, "store_stock" => $store_stock, "ward_stock" => $ward_stock]; - } - } - } - - return view('finance_reports::finance_reports.accounts.inventory', compact('result', 'chart_of_account', 'title', 'table')); - } elseif ($table == 'accounts_receivables') { - foreach ($accounts_receivables_tables as $table) { - switch ($search_type) { - case 'today': - $result[$table] = DB::table($table)->whereDate('created_at', '<=', $today)->whereNull('deleted_at') - ->whereNull('balance_remaining')->orWhere('balance_remaining', '>', 0)->get(); - break; - case 'yesterday': - $result[$table] = DB::table($table)->whereDate('created_at', '<=', $yesterday)->whereNull('deleted_at') - ->whereNull('balance_remaining')->orWhere('balance_remaining', '>', 0)->get(); - break; - case 'custom_date': - $result[$table] = DB::table($table)->whereDate('created_at', '<=', $start)->whereNull('deleted_at') - ->whereNull('balance_remaining')->orWhere('balance_remaining', '>', 0)->get(); - break; - case 'custom_date_range': - $result[$table] = DB::table($table)->whereBetween('created_at', [$start, $end])->whereNull('deleted_at') - ->whereNull('balance_remaining')->orWhere('balance_remaining', '>', 0)->get(); - break; - } - } - - $result['inpatient_bills'] = DB::table('inpatient_bills') - ->whereBetween('updated_at', [$start, $end]) - ->get(['amount_to_pay', 'updated_at', 'patient_id', 'updated_by', 'original_bill', 'amount_paid']); - - return view('finance_reports::finance_reports.accounts.accounts_receivables', compact('result', 'chart_of_account', 'title', 'table')); - } elseif ($table == 'incomes') { - $tag_id = $data[5]; - (isset($data[6])) ? $accounting_basis = $data[6] : $accounting_basis = 'cash'; - $incomes = $receivables = []; - $sales_tables = ['service_deposits', 'investigation_deposits', 'treatment_deposits', 'procedure_deposits', 'sundries_deposits']; - foreach ($sales_tables as $table) { - switch ($search_type) { - case 'today': - $incomes[$table] = DB::table($table)->whereNull('deleted_at')->whereDate('created_at', '<=', $today)->where('current_chart_of_accounts', $chart_of_account)->get(); - break; - case 'yesterday': - $incomes[$table] = DB::table($table)->whereNull('deleted_at')->whereDate('created_at', '<=', $yesterday)->where('current_chart_of_accounts', $chart_of_account)->get(); - break; - case 'custom_date': - $incomes[$table] = DB::table($table)->whereNull('deleted_at')->whereDate('created_at', '<=', $start)->where('current_chart_of_accounts', $chart_of_account)->get(); - break; - case 'custom_date_range': - $incomes[$table] = DB::table($table)->whereNull('deleted_at')->whereBetween('created_at', [$start, $end])->where('current_chart_of_accounts', $chart_of_account)->get(); - break; - } - } - return view('finance_reports::finance_reports.accounts.incomes', compact('title', 'accounting_basis', 'tag_id', 'incomes', 'receivables', 'chart_of_account')); - } - } - - public function other_current_asset_detail($data) - { - $data = explode(',', $data); - - $result = []; - $table = $data[3]; - $search_type = $data[0]; - $chart_of_account = $data[4]; - $today = Carbon::today()->toDateString(); - $yesterday = Carbon::yesterday()->toDateString(); - $end = Carbon::parse($data[2])->endOfDay()->toDateTimeString(); - $start = Carbon::parse($data[1])->startOfDay()->toDateTimeString(); - - if ($table == 'chart_of_accounts') { - $title = get_name($chart_of_account, 'id', 'name', 'chart_of_accounts'); - switch ($search_type) { - case 'today': - $result = ChartOfAccount::whereDate('created_at', '<=', $today)->where('id', $chart_of_account)->get(); - break; - case 'yesterday': - $result = ChartOfAccount::whereDate('created_at', '<=', $yesterday)->where('id', $chart_of_account)->get(); - break; - case 'custom_date': - $result = ChartOfAccount::whereDate('created_at', '<=', $start)->where('id', $chart_of_account)->get(); - break; - case 'custom_date_range': - $result = ChartOfAccount::whereBetween('created_at', [$start, $end])->where('id', $chart_of_account)->get(); - break; - } - return view('finance_reports::finance_reports.accounts.other_current_assets', compact('result', 'chart_of_account', 'title', 'table')); - } - } - - public function liability_detail($data) - { - $data = explode(',', $data); - - $table = $data[3]; - $search_type = $data[0]; - $chart_of_account = $data[4]; - $today = Carbon::today()->toDateString(); - $yesterday = Carbon::yesterday()->toDateString(); - $end = Carbon::parse($data[2])->endOfDay()->toDateTimeString(); - $start = Carbon::parse($data[1])->startOfDay()->toDateTimeString(); - $title = get_name($chart_of_account, 'id', 'name', 'chart_of_accounts'); - - (isset($data[6])) ? $accounting_basis = $data[6] : $accounting_basis = 'cash'; - $result = $result_bills = []; - - if ($table == "hospital_bills") { - switch ($search_type) { - case 'today': - //$result = DB::table($table)->whereNull('deleted_at')->whereDate('created_at', '<=', $today)->where('payable_account', 'LIKE', $chart_of_account)->get(); - $result = DB::table($table)->whereNull('deleted_at')->whereDate('bill_date', '<=', $today)->whereRaw('FIND_IN_SET(' . $chart_of_account . ',payable_account)')->get(); - break; - case 'yesterday': - $result = DB::table($table)->whereNull('deleted_at')->whereDate('bill_date', '<=', $yesterday)->whereRaw('FIND_IN_SET(' . $chart_of_account . ',payable_account)')->get(); - break; - case 'custom_date': - $result = DB::table($table)->whereNull('deleted_at')->whereDate('bill_date', '<=', $start)->whereRaw('FIND_IN_SET(' . $chart_of_account . ',payable_account)')->get(); - break; - case 'custom_date_range': - $result = DB::table($table)->whereNull('deleted_at')->whereBetween('bill_date', [$start, $end])->whereRaw('FIND_IN_SET(' . $chart_of_account . ',payable_account)')->get(); - break; - } - } else if ($table == "journals") { - $probable_duplicate_records = []; - switch ($search_type) { - case 'today': - $result_bills = DB::table("hospital_bills")->whereNull('deleted_at')->whereDate('created_at', '<=', $today)->where('payable_account', 'LIKE', $chart_of_account)->get(); - foreach ($result_bills as $bill) { - $bill_number = $bill->bill_number; - if (strpos($bill_number, 'Journal') !== false) { - $bill_number_trim1 = trim($bill_number, "Journal ("); - $bill_number_trim2 = trim($bill_number_trim1, ")"); - $journal_number = (int)$bill_number_trim2; - $probable_duplicate_records[] = $journal_number; - } - } - $result = DB::table($table)->whereNull('deleted_at')->whereDate('journal_date', '<=', $today)->whereNotIn('journal_number', $probable_duplicate_records)->get(); - break; - case 'yesterday': - $result_bills = DB::table("hospital_bills")->whereNull('deleted_at')->whereDate('created_at', '<=', $yesterday)->where('payable_account', 'LIKE', $chart_of_account)->get(); - foreach ($result_bills as $bill) { - $bill_number = $bill->bill_number; - if (strpos($bill_number, 'Journal') !== false) { - $bill_number_trim1 = trim($bill_number, "Journal ("); - $bill_number_trim2 = trim($bill_number_trim1, ")"); - $journal_number = (int)$bill_number_trim2; - $probable_duplicate_records[] = $journal_number; - } - } - $result = DB::table($table)->whereNull('deleted_at')->whereDate('journal_date', '<=', $yesterday)->whereNotIn('journal_number', $probable_duplicate_records)->get(); - break; - case 'custom_date': - $result_bills = DB::table("hospital_bills")->whereNull('deleted_at')->whereDate('created_at', '<=', $start)->where('payable_account', 'LIKE', $chart_of_account)->get(); - foreach ($result_bills as $bill) { - $bill_number = $bill->bill_number; - if (strpos($bill_number, 'Journal') !== false) { - $bill_number_trim1 = trim($bill_number, "Journal ("); - $bill_number_trim2 = trim($bill_number_trim1, ")"); - $journal_number = (int)$bill_number_trim2; - $probable_duplicate_records[] = $journal_number; - } - } - $result = DB::table($table)->whereNull('deleted_at')->whereDate('journal_date', $start)->whereNotIn('journal_number', $probable_duplicate_records)->get(); - break; - case 'custom_date_range': - $result_bills = DB::table("hospital_bills")->whereNull('deleted_at')->whereBetween('created_at', [$start, $end])->where('payable_account', 'LIKE', $chart_of_account)->get(); - foreach ($result_bills as $bill) { - $bill_number = $bill->bill_number; - if (strpos($bill_number, 'Journal') !== false) { - $bill_number_trim1 = trim($bill_number, "Journal ("); - $bill_number_trim2 = trim($bill_number_trim1, ")"); - $journal_number = (int)$bill_number_trim2; - $probable_duplicate_records[] = $journal_number; - } - } - $result = DB::table($table)->whereNull('deleted_at')->whereBetween('journal_date', [$start, $end])->whereNotIn('journal_number', $probable_duplicate_records)->get(); - break; - } - } else if ($table == "patient_accounts_deposits") { - switch ($search_type) { - case 'today': - $result["patient_accounts_deposits"] = DB::table('patient_accounts_deposits')->whereNull('deleted_at')->whereDate('deposit_date', '<=', $today)->get(); - $result["patient_account_consumptions"] = DB::table('patient_account_consumptions')->whereNull('deleted_at')->whereDate('created_at', '<=', Carbon::parse($today)->endOfDay())->get(); - $result["patient_accounts_refunds"] = DB::table('patient_accounts_refunds')->whereNull('deleted_at')->whereDate('refund_date', '<=', $today)->get(); - break; - case 'yesterday': - $result["patient_accounts_deposits"] = DB::table('patient_accounts_deposits')->whereNull('deleted_at')->whereDate('deposit_date', '<=', $yesterday)->get(); - $result["patient_account_consumptions"] = DB::table('patient_account_consumptions')->whereNull('deleted_at')->whereDate('created_at', '<=', Carbon::parse($yesterday)->endOfDay())->get(); - $result["patient_accounts_refunds"] = DB::table('patient_accounts_refunds')->whereNull('deleted_at')->whereDate('refund_date', '<=', $yesterday)->get(); - break; - case 'custom_date': - $result["patient_accounts_deposits"] = DB::table('patient_accounts_deposits')->whereNull('deleted_at')->whereDate('deposit_date', '<=', $start)->get(); - $result["patient_account_consumptions"] = DB::table('patient_account_consumptions')->whereNull('deleted_at')->whereDate('created_at', '<=', Carbon::parse($start)->endOfDay())->get(); - $result["patient_accounts_refunds"] = DB::table('patient_accounts_refunds')->whereNull('deleted_at')->whereDate('refund_date', '<=', $start)->get(); - break; - case 'custom_date_range': - $result["patient_accounts_deposits"] = DB::table('patient_accounts_deposits')->whereNull('deleted_at')->whereBetween('deposit_date', [$start, $end])->get(); - $result["patient_account_consumptions"] = DB::table('patient_account_consumptions')->whereNull('deleted_at')->whereBetween('created_at', [Carbon::parse($start)->startOfDay(), Carbon::parse($end)->endOfDay()])->get(); - $result["patient_accounts_refunds"] = DB::table('patient_accounts_refunds')->whereNull('deleted_at')->whereBetween('refund_date', [$start, $end])->get(); - break; - } - } else { - switch ($search_type) { - case 'today': - $result = DB::table($table)->whereNull('deleted_at')->whereDate('created_at', '<=', $today)->get(); - break; - case 'yesterday': - $result = DB::table($table)->whereNull('deleted_at')->whereDate('created_at', '<=', $yesterday)->get(); - break; - case 'custom_date': - $result = DB::table($table)->whereNull('deleted_at')->whereDate('created_at', '<=', $start)->get(); - break; - case 'custom_date_range': - $result = DB::table($table)->whereNull('deleted_at')->whereBetween('created_at', [$start, $end])->get(); - break; - } - } - - return view('finance_reports::finance_reports.accounts.liabilities', compact('result', 'result_bills', 'chart_of_account', 'title', 'table', 'accounting_basis')); - } - - public function equity_detail(Request $request, $data) - { - $data = explode(',', $data); - - $table = $data[3]; - $chart_of_account = $data[4]; - $chart_of_account_detail = ChartOfAccount::withTrashed()->find($chart_of_account); - $title = $chart_of_account_detail ? $chart_of_account_detail->name : ""; - $slug = $chart_of_account_detail ? $chart_of_account_detail->slug : ""; - if ($slug == "retained_earnings") { - return redirect('finance_reports/profit_or_loss_statement'); - } - - $result_equities = []; - - if ($table == 'banking') { - $result = $opening_balance_record = []; - switch ($data[0]) { - case 'today': - $_today = Carbon::today(); - $opening_balance_record = get_latest_opening_balance_record($chart_of_account, $_today); - break; - case 'yesterday': - $_yesterday = Carbon::yesterday(); - $opening_balance_record = get_latest_opening_balance_record($chart_of_account, $_yesterday); - break; - case 'custom_date': - $start_date = $data[1]; - $start = Carbon::parse($start_date)->startOfDay()->toDateTimeString(); - $opening_balance_record = get_latest_opening_balance_record($chart_of_account, $start); - break; - case 'custom_date_range': - $end_date = $data[2]; - $end = Carbon::parse($end_date)->endOfDay()->toDateTimeString(); - $opening_balance_record = get_latest_opening_balance_record($chart_of_account, $end); - break; - } - - $result['name'] = $title; - $result['amount'] = (!is_null($opening_balance_record) && !empty($opening_balance_record)) ? $opening_balance_record->account_balance : 0; - $result['created_by'] = get_name($chart_of_account, 'id', 'created_by', 'chart_of_accounts'); - $result['created_at'] = get_name($chart_of_account, 'id', 'created_at', 'chart_of_accounts'); - - $result_equities = DB::table('equities')->where('account_id', $chart_of_account)->get(); - } elseif ($table == 'opening_inventory') { - $result = $drugs_data = $sundries_data = []; - $total_inventory_opening_balance = 0; - - $drugs = Drug::get(); - $sundries = Sundry::get(); - switch ($data[0]) { - case 'today': - $_today = Carbon::today(); - $drugs = DB::table('drugs')->whereNotNull('opening_stock')->whereDate('opening_stock_date', '<=', $_today)->get(); - $sundries = DB::table('sundries')->whereNotNull('opening_stock')->whereDate('opening_stock_date', '<=', $_today)->get(); - break; - case 'yesterday': - $_yesterday = Carbon::yesterday(); - $drugs = DB::table('drugs')->whereNotNull('opening_stock')->whereDate('opening_stock_date', '<=', $_yesterday)->get(); - $sundries = DB::table('sundries')->whereNotNull('opening_stock')->whereDate('opening_stock_date', '<=', $_yesterday)->get(); - break; - case 'custom_date': - $start_date = $data[1]; - $start = Carbon::parse($start_date)->startOfDay()->toDateTimeString(); - $drugs = DB::table('drugs')->whereNotNull('opening_stock')->whereDate('opening_stock_date', '<=', $start)->get(); - $sundries = DB::table('sundries')->whereNotNull('opening_stock')->whereDate('opening_stock_date', '<=', $start)->get(); - break; - case 'custom_date_range': - $start_date = $data[1]; - $end_date = $data[2]; - $drugs = DB::table('drugs')->whereNotNull('opening_stock')->whereDate('opening_stock_date', '<=', $end_date)->get(); - $sundries = DB::table('sundries')->whereNotNull('opening_stock')->whereDate('opening_stock_date', '<=', $end_date)->get(); - break; - } - - $result['drugs'] = []; - foreach ($drugs as $drug) { - $drugs_data['name'] = $drug->name; - - if ($drug->opening_cost_price == 0 && !is_null($drug->opening_stock)) { - $drugs_data['amount'] = get_first_cost_of_good($drug->id, 1) * $drug->opening_stock; - } else { - $drugs_data['amount'] = (!is_null($drug->opening_stock) && !empty($drug->opening_stock)) ? ($drug->opening_cost_price * $drug->opening_stock) : 0; - } - - $drugs_data['created_by'] = $drug->created_by; - $drugs_data['updated_at'] = $drug->updated_at; - array_push($result['drugs'], $drugs_data); - } - - $result['sundries'] = []; - foreach ($sundries as $sundry) { - $sundries_data['name'] = $sundry->name; - - if ($sundry->opening_cost_price == 0 && !is_null($sundry->opening_stock)) { - $sundries_data['amount'] = get_first_cost_of_good($sundry->id, 2) * $sundry->opening_stock; - } else { - $sundries_data['amount'] = (!is_null($sundry->opening_stock) && !empty($sundry->opening_stock)) ? ($sundry->opening_cost_price * $sundry->opening_stock) : 0; - } - - $sundries_data['created_by'] = $sundry->created_by; - $sundries_data['updated_at'] = $sundry->updated_at; - array_push($result['sundries'], $sundries_data); - } - } else { - $result = DB::table($table)->where('account_id', $chart_of_account)->get(); - } - - $request->request->add(['start_date' => $data[1]]); - $request->request->add(['end_date' => $data[2]]); - $retained_earnings = getRetainedEarnings($request, $data[1]); - - $banks = ChartOfAccount::where('type', 4)->orderBy('name', 'asc')->get(); - return view('finance_reports::finance_reports.accounts.equities', compact('result', 'chart_of_account', 'title', 'table', 'banks', 'data', 'result_equities')); - } - - public function cash_flow_statement(Request $request) - { - $hospital_information = HospitalInformation::first(); - - $operating_activities = $this->operating_activities($request); - $working_capital = $this->working_capital($request); - $investing_activities = getAssetTransactions($request); - $financing_activities = $this->financing_activities($request); - $peroid_start_cash = $this->peroid_start_cash($request); - - return view('finance_reports::finance_reports.cash_flow_statement', compact('hospital_information', 'operating_activities', 'working_capital', 'investing_activities', 'financing_activities', 'peroid_start_cash')); - } - - public function print_cash_flow_statement(Request $request) - { - $operating_activities = $this->operating_activities($request); - $working_capital = $this->working_capital($request); - $investing_activities = getAssetTransactions($request); - $financing_activities = $this->financing_activities($request); - $peroid_start_cash = $this->peroid_start_cash($request); - - $data = [ - "operating_activities" => $operating_activities, - "working_capital" => $working_capital, - "investing_activities" => $investing_activities, - "financing_activities" => $financing_activities, - "peroid_start_cash" => $peroid_start_cash - ]; - - $pdf = SnappyPDF::loadView("finance_reports::finance_reports/print_cash_flow_statement", $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline'); - - return $pdf->inline('Cash Flow Statement - ' . date("d-m-y h:ia") . '.pdf'); - } - - /*===================RECEIPTS======================*/ - - public function debtPlanPaymentReceipt(Request $request, $new_receipt_number) - { - - $patient = Patient::where(['id' => $request->patient_id])->first(); - $hospital_information = HospitalInformation::first(); - $compact_values = compact('hospital_information', 'request', 'new_receipt_number', 'patient'); - - return view('finance_reports::finance_reports.receipts.debt_plan_payment', $compact_values); - } - - public function patientDiscountReceipt(Request $request) - { - - $total_amount_pay = 0; - $patient_to_pay = 0; - $service_payment = false; - - // central billing has an insurance expenditure tag of "11" - if (!($request->reason == "11")) { - $reason = $request->reason; - } else { - - $reason = get_name($request->reason, 'id', 'name', 'finance_point_tags'); - } - - if ($reason == "Consultation" || $reason == "Services" || $reason == "Other Services" || $reason == "Co_Payment") { - - // get payment details for the services - $service_payment = ServiceDeposit::where(['receipt_number' => $request->receipt_number])->first(); - $patient_to_pay = $service_payment->patient_amount_paid; - $service_prices_array = explode(",", $service_payment->items_amounts); - $service_ids_array = explode(",", $service_payment->items_ids); - $total_amount_pay = 0; - foreach ($service_prices_array as $price) { - $total_amount_pay += is_numeric($price) ? $price : 0; - } - $receipt_date = $service_payment->created_at; - // receipt number - $receipt_number = $service_payment->receipt_number; - } else if ($reason == "Investigations") { - - // get payment details for the services - $service_payment = InvestigationDeposit::where(['receipt_number' => $request->receipt_number])->first(); - $patient_to_pay = $service_payment->patient_amount_paid; - $service_prices_array = explode(",", $service_payment->investigation_amounts); - $service_ids_array = explode(",", $service_payment->investigation_items); - $total_amount_pay = 0; - foreach ($service_prices_array as $price) { - $total_amount_pay += $price; - } - $receipt_date = $service_payment->created_at; - // receipt number - $receipt_number = $service_payment->receipt_number; - } else if ($reason == "Procedures") { - - // get payment details for the services - $service_payment = ProcedureDeposit::where(['receipt_number' => $request->receipt_number])->first(); - $patient_to_pay = $service_payment->patient_amount_paid; - $service_prices_array = explode(",", $service_payment->procedure_amounts); - $service_ids_array = explode(",", $service_payment->procedure_items); - $total_amount_pay = 0; - foreach ($service_prices_array as $price) { - $total_amount_pay += is_numeric($price) ? $price : 0; - } - $receipt_date = $service_payment->created_at; - // receipt number - $receipt_number = $service_payment->receipt_number; - } else if ($reason == "Sundries") { - - // get payment details for the services - $service_payment = SundryDeposit::where(['receipt_number' => $request->receipt_number])->first(); - $patient_to_pay = $service_payment->patient_amount_paid; - $service_prices_array = explode(",", $service_payment->sundry_amount); - $service_ids_array = explode(",", $service_payment->sundry_items); - $total_amount_pay = 0; - foreach ($service_prices_array as $price) { - $total_amount_pay += is_numeric($price) ? $price : 0; - } - $receipt_date = $service_payment->created_at; - // receipt number - $receipt_number = $service_payment->receipt_number; - } else if ($reason == "Treatment") { - - // get payment details for the services - $service_payment = TreatmentDeposits::where(['receipt_number' => $request->receipt_number])->first(); - $patient_to_pay = $service_payment->patient_amount_paid; - $service_prices_array = explode(",", $service_payment->treatment_items); - $service_ids_array = explode(",", $service_payment->treatment_subtotals); - $total_amount_pay = 0; - foreach ($service_prices_array as $price) { - $total_amount_pay += is_numeric($price) ? $price : 0; - } - $receipt_date = $service_payment->created_at; - // receipt number - $receipt_number = $service_payment->receipt_number; - } else if ($reason == "Central Billing") { - - // get payment details for the services - $service_payment = CentralBillingDeposits::where(['receipt_number' => $request->receipt_number])->get()->toArray(); - } else if ($reason == "Dependant-Consultation" || $reason == "Dependant-Procedures" || $reason == "Dependant-Investigations" || $reason == "Dependant-Treatment" || $reason == "Dependant-Sundries") { - - // dependant consumptions - $reason = substr($reason, 10); //now remove the substring "Dependant-" - $service_payment = DependantsConsumption::where(['episode_id' => $request->episode_id, 'dependant_patient_id' => $request->patient_id, 'reason' => $reason, 'receipt_number' => $request->receipt_number])->first(); - - $service_prices_array = explode(",", $service_payment->items_prices); - $service_ids_array = explode(",", $service_payment->items_ids); - $total_amount_pay = $service_payment->amount_consumed; - $patient_to_pay = $service_payment->unpaid_balance; - $receipt_date = $service_payment->created_at; - // receipt number - $receipt_number = $service_payment->receipt_number; - $service_payment->patient_id = $request->patient_id; - } - - // details to be used for receipt - $hospital_information = HospitalInformation::first(); - $discounts_applied = $total_amount_pay - $patient_to_pay; - if ($reason != "Central Billing") { - $patient = Patient::find($request->patient_id); - } - - $compact_values = compact( - 'hospital_information', - 'receipt_date', - 'receipt_number', - 'discounts_applied', - 'patient', - 'service_prices_array', - 'service_ids_array', - 'total_amount_pay', - 'patient_to_pay', - 'reason', - 'service_payment' - ); - - return view('finance_reports::finance_reports.receipts.patient_discount', $compact_values); - } - - public function servicesReceiptReprint($id) - { - - // get payment details for the services - $service_payment = ServiceDeposit::where(['id' => $id])->first(); - $patient_to_pay = $service_payment->patient_amount_paid; - $service_prices_array = explode(",", $service_payment->items_amounts); - $service_ids_array = explode(",", $service_payment->items_ids); - $total_amount_pay = 0; - foreach ($service_prices_array as $price) { - $total_amount_pay += $price; - } - $receipt_date = $service_payment->created_at; - // receipt number - $receipt_number = $service_payment->receipt_number; - // details to be used for receipt - $hospital_information = HospitalInformation::first(); - $discounts_applied = $total_amount_pay - $patient_to_pay; - $patient = Patient::find($service_payment->patient_id); - $compact_values = compact( - 'hospital_information', - 'receipt_date', - 'receipt_number', - 'discounts_applied', - 'patient', - 'service_prices_array', - 'service_ids_array', - 'total_amount_pay', - 'patient_to_pay' - ); - - return view('finance_reports::finance_reports.receipts.services_reprint', $compact_values); - } - - public function inpatient_deposit_receipt_reprint($id) - { - - $deposit = ServiceDeposit::where('id', $id)->first(); - $hospital_information = HospitalInformation::first(); - - return view('finance_reports::finance_reports.receipts.inpatient_deposits', compact('hospital_information', 'deposit')); - } - - public function proceduresReceiptReprint($id) - { - - // get payment details for the services - $service_payment = ProcedureDeposit::where(['id' => $id])->first(); - $patient_to_pay = $service_payment->patient_amount_paid; - $service_prices_array = explode(",", $service_payment->procedure_amounts); - $service_ids_array = explode(",", $service_payment->procedure_items); - $total_amount_pay = 0; - // foreach ($service_prices_array as $price){ - // $total_amount_pay += $price; - // } - $receipt_date = $service_payment->created_at; - // receipt number - $receipt_number = $service_payment->receipt_number; - // details to be used for receipt - $hospital_information = HospitalInformation::first(); - $discounts_applied = $total_amount_pay - $patient_to_pay; - $patient = Patient::find($service_payment->patient_id); - $compact_values = compact( - 'hospital_information', - 'receipt_date', - 'receipt_number', - 'discounts_applied', - 'patient', - 'service_prices_array', - 'service_ids_array', - 'total_amount_pay', - 'patient_to_pay' - ); - - return view('finance_reports::finance_reports.receipts.procedures_reprint', $compact_values); - } - - public function treatmentReceiptReprint($id) - { - - // get payment details for the services - $service_payment = TreatmentDeposits::where(['id' => $id])->first(); - $patient_to_pay = $service_payment->patient_amount_paid; - $service_prices_array = explode(",", $service_payment->treatment_subtotals); - $service_ids_array = explode(",", $service_payment->treatment_items); - $total_amount_pay = 0; - foreach ($service_prices_array as $price) { - $total_amount_pay += $price; - } - $receipt_date = $service_payment->created_at; - // receipt number - $receipt_number = $service_payment->receipt_number; - // details to be used for receipt - $hospital_information = HospitalInformation::first(); - $discounts_applied = $total_amount_pay - $patient_to_pay; - $patient = Patient::find($service_payment->patient_id); - $compact_values = compact( - 'hospital_information', - 'receipt_date', - 'receipt_number', - 'discounts_applied', - 'patient', - 'service_prices_array', - 'service_ids_array', - 'total_amount_pay', - 'patient_to_pay' - ); - - return view('finance_reports::finance_reports.receipts.treatment_reprint', $compact_values); - } - - public function sundriesReceiptReprint($id) - { - - // get payment details for the services - $service_payment = SundryDeposit::where(['id' => $id])->first(); - $patient_to_pay = $service_payment->patient_amount_paid; - $service_prices_array = explode(",", $service_payment->sundry_amounts); - $service_ids_array = explode(",", $service_payment->sundry_items); - $total_amount_pay = 0; - $receipt_date = $service_payment->created_at; - // receipt number - $receipt_number = $service_payment->receipt_number; - // details to be used for receipt - $hospital_information = HospitalInformation::first(); - $discounts_applied = $total_amount_pay - $patient_to_pay; - $patient = Patient::find($service_payment->patient_id); - $compact_values = compact( - 'hospital_information', - 'receipt_date', - 'receipt_number', - 'discounts_applied', - 'patient', - 'service_prices_array', - 'service_ids_array', - 'total_amount_pay', - 'patient_to_pay' - ); - - return view('finance_reports::finance_reports.receipts.sundries_reprint', $compact_values); - } - - public function investigationsReceiptReprint($id) - { - - // get payment details for the services - $service_payment = InvestigationDeposit::where(['id' => $id])->first(); - $patient_to_pay = $service_payment->patient_amount_paid; - $service_prices_array = explode(",", $service_payment->investigation_amounts); - $service_ids_array = explode(",", $service_payment->investigation_items); - $total_amount_pay = 0; - foreach ($service_prices_array as $price) { - $total_amount_pay += $price; - } - $receipt_date = $service_payment->created_at; - // receipt number - $receipt_number = $service_payment->receipt_number; - // details to be used for receipt - $hospital_information = HospitalInformation::first(); - $discounts_applied = $total_amount_pay - $patient_to_pay; - $patient = Patient::find($service_payment->patient_id); - $compact_values = compact( - 'hospital_information', - 'receipt_date', - 'receipt_number', - 'discounts_applied', - 'patient', - 'service_prices_array', - 'service_ids_array', - 'total_amount_pay', - 'patient_to_pay' - ); - - return view('finance_reports::finance_reports.receipts.investigations_reprint', $compact_values); - } - - public function PremiumsReceiptReprint($id) - { - - $insurance_deposit = InsuranceSubscription::where(['id' => $id])->first(); - $insurance_amount = $insurance_deposit->amount; - $insurance_start_date = $insurance_deposit->start_date; - $insurance_end_date = $insurance_deposit->end_date; - $insurance_payment_date = $insurance_deposit->payment_date; - $insurance_family_amount = $insurance_deposit->family_amount; - - $receipt_date = $insurance_deposit->created_at; - $receipt_number = $insurance_deposit->receipt_number; - $hospital_information = HospitalInformation::first(); - - $insurance_group = InsuranceGroup::find($insurance_deposit->group_id); - $compact_values = compact( - 'hospital_information', - 'receipt_date', - 'receipt_number', - 'insurance_group', - 'insurance_amount', - 'insurance_start_date', - 'insurance_end_date', - 'insurance_payment_date', - 'insurance_family_amount' - ); - - return view('finance_reports::finance_reports.receipts.premiums_reprint', $compact_values); - } - - public function patient_payment_receipt($id) - { - $payment = InvoicePayment::where('id', $id)->first(); - $hospital_information = HospitalInformation::first(); - return view('finance_reports::finance_reports.receipts.patient_invoice_reprint', compact('hospital_information', 'payment')); - } - - public function donor_payment_receipt($id) - { - $payment = DonorInvoicePayment::where('id', $id)->first(); - $hospital_information = HospitalInformation::first(); - return view('finance_reports::finance_reports.receipts.donor_invoice_reprint', compact('hospital_information', 'payment')); - } - - public function debt_plan_payment($id) - { - - $payment = DebtPlanPaymentStaff::where(['id' => $id])->first(); - $hospital_information = HospitalInformation::first(); - $compact_values = compact('hospital_information', 'payment'); - - return view('finance_reports::finance_reports.receipts.debt_plan_payment_detail', $compact_values); - } - - public function patient_refunds_report(Request $request) - { - if ($request->start_date) { - $start_date = $request->start_date; - $end_date = $request->end_date; - } else { - $start_date = date('Y-m-d h:i:s'); - $end_date = date('Y-m-d h:i:s'); - } - - $start_date = Carbon::parse($start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($end_date)->endOfDay()->toDateTimeString(); - - $criteria = 'Between (' . streamline_date($start_date) . ') And (' . streamline_date($end_date) . ')'; - - if ($request->refunded_by != 0) { - $criteria .= ' User: ' . get_full_name($request->refunded_by, 'id', 'first_name', 'last_name', 'users'); - $refunds = PatientRefunds::whereBetween('refund_date', [DATE($start_date), DATE($end_date)])->where('created_by', $request->refunded_by)->get(); - } else { - $criteria .= ' All Users'; - $refunds = PatientRefunds::whereBetween('refund_date', [DATE($start_date), DATE($end_date)])->get(); - } - - $users = User::select('id')->get(); - - return view('finance_reports::finance_reports.patient_refunds_report', compact('refunds', 'criteria', 'users')); - } - - public function ward_discounts_report(Request $request) { - $wards = Ward::pluck('name', 'id')->toArray(); - $wards = ['' => '- select -'] + $wards; - $wards = [0 => 'All Wards'] + $wards; - - if (isset($request->start_date) && isset($request->end_date)) { - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - } else { - $start_date = Carbon::now()->startOfDay()->toDateTimeString(); - $end_date = Carbon::now()->endOfDay()->toDateTimeString(); - } - - if (!empty($request->ward)) { - $discounts = InpatientWardDiscounts::where('ward_id', $request->ward) - ->whereBetween('created_at', [$start_date, $end_date])->get(); - } else { - $discounts = InpatientWardDiscounts::whereBetween('created_at', [$start_date, $end_date])->get(); - } - - return view('finance_reports::finance_reports.ward_discounts_report', compact('wards', 'start_date', 'end_date', 'discounts')); - } - - public function one_off_discounts_report(Request $request) - { - if ($request->start_date) { - $start_date = $request->start_date; - $end_date = $request->end_date; - } else { - $start_date = date('Y-m-d h:i:s'); - $end_date = date('Y-m-d h:i:s'); - } - - $start_date = Carbon::parse($start_date)->startOfDay(); - $end_date = Carbon::parse($end_date)->endOfDay(); - - $criteria = 'Between (' . streamline_date($start_date) . ') And (' . streamline_date($end_date) . ')'; - - $discounts = DB::table('patient_one_off_discounts') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(); - - $tags = DB::table('finance_point_tags')->pluck('name', 'id'); - - return view('finance_reports::finance_reports.one_off_discounts_report', compact('criteria', 'discounts', 'tags')); - } - - public function professional_fees_detail($data) - { - $data = explode(',', $data); - - $result = []; - $table = $data[3]; - $search_type = $data[0]; - $chart_of_account = $data[4]; - $today = Carbon::today()->toDateString(); - $yesterday = Carbon::yesterday()->toDateString(); - $end = Carbon::parse($data[2])->endOfDay()->toDateTimeString(); - $start = Carbon::parse($data[1])->startOfDay()->toDateTimeString(); - $title = get_name($chart_of_account, 'id', 'name', 'chart_of_accounts'); - - switch ($search_type) { - case 'today': - $ward_procedure_staff_fees = DB::table('ward_procedures')->whereNull('deleted_at')->whereDate('created_at', $today)->where('expense_chart_of_account', $chart_of_account) - ->get()->toArray(); - break; - case 'yesterday': - $ward_procedure_staff_fees = DB::table('ward_procedures')->whereNull('deleted_at')->whereDate('created_at', $yesterday)->where('expense_chart_of_account', $chart_of_account) - ->get()->toArray(); - break; - case 'custom_date': - $ward_procedure_staff_fees = DB::table('ward_procedures')->whereNull('deleted_at')->whereDate('created_at', $start)->where('expense_chart_of_account', $chart_of_account) - ->get()->toArray(); - break; - case 'custom_date_range': - $ward_procedure_staff_fees = DB::table('ward_procedures')->whereNull('deleted_at')->where('expense_chart_of_account', $chart_of_account)->whereBetween('created_at', [$start, $end]) - ->get()->toArray(); - } - - return view('finance_reports::finance_reports.accounts.proffesional_fees', - compact('table', 'title', 'search_type', 'start', 'end', 'chart_of_account', 'ward_procedure_staff_fees') - ); - } - - public function undo_banking($cashier_income_id) - { - $record = CashierIncome::where('id', $cashier_income_id)->first(); - if ($record->banked) { - $deposit_id_array = explode(",", $record->banked); - foreach ($deposit_id_array as $deposit_id) { - $bank_record = Banking::where('id', $deposit_id)->first(); - $new_memo = $bank_record->memo . " (Deleted by " . get_name(Auth::id(), 'id', 'username', 'users') . ")"; - $bank_record->memo = $new_memo; - $bank_record->update(); - if ($bank_record->delete()) : - flash("Bank Record has been deleted.")->success(); - - /* ******* try getting previous record using this instead of the one commented out code above ******* */ - $orderByCreatedAtIfTransDateIsTheSame = "created_at ASC"; - $orderByIdIfTransDateIsTheSame = "id ASC"; - - $previous_bank_record = Banking::where('bank', $bank_record->bank) - ->whereNull('deleted_at') - ->where('trans_date', '<', $bank_record->trans_date) - ->orderBy('trans_date', 'asc') - ->orderByRaw($orderByCreatedAtIfTransDateIsTheSame) - ->orderByRaw($orderByIdIfTransDateIsTheSame) - ->first(); - /* ************************************************************** */ - - if ($previous_bank_record) { - update_banking_record_balances(Carbon::parse($previous_bank_record->trans_date)->toDateString(), $bank_record->bank, $previous_bank_record->id, $previous_bank_record->account_balance); - } else { - //there exists no previous record i.e what we deleted is the first bank record so let bal = - $balance_to_use_for_updating = 0;//$bank_record->account_balance; - update_banking_record_balances(Carbon::parse($bank_record->trans_date)->toDateString(), $bank_record->bank, $deposit_id, $balance_to_use_for_updating); - } - flash("Payment has been deleted successfully from Bank: " . get_name($bank_record->bank, 'id', 'name', 'chart_of_accounts'))->success(); - - //NOTE: check if the undo is from direct bank deposit, transfer the money back to undeposited fund - /* $this_transactions_records = Banking::where('trans_id',$bank_record->trans_id)->pluck('other_accounts')->toArray(); */ - $transaction_id_string = $bank_record->trans_id; //how banking table stores it using sprintf() - $transaction_id_int = (int)$transaction_id_string; //how other_incomes table stores it - - $other_income_record = OtherIncome::where('trans_id', $transaction_id_int)->first(); - if ($other_income_record) { - // add the deposit amount to undeposited funds account. - $cash_account_balance_record_on_deposit_date = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), $other_income_record->deposit_date); - - $cash_account_balance_on_deposit_date = is_null($cash_account_balance_record_on_deposit_date) ? 0 : (int)$cash_account_balance_record_on_deposit_date->account_balance; - - $undeposited_funds_balance_after_addition = ($cash_account_balance_on_deposit_date + $other_income_record->deposit_amount); - - $last_insert_id_to_account = capture_bank_record( - 'TRANSFER', - $other_income_record->deposit_date, - get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), - $bank_record->bank, - $undeposited_funds_balance_after_addition, - $other_income_record->deposit_amount, - 0, - "undone banking from direct bank deposit", - $transaction_id_string - ); - - update_banking_record_balances($other_income_record->deposit_date, 10, $last_insert_id_to_account, $undeposited_funds_balance_after_addition); - } - endif; - } - - $record->banked = null; - $record->update(); - return 'success'; - } else { - return 'fail'; - } - } - - public function undo_payment($payment_id) - { - return delete_hospital_bill_payment($payment_id); - } - - public function accounts_payable_aging_summary() - { - $suppliers = Supplier::get(); - $hospital_information = HospitalInformation::first(); - - $bills_query = "SELECT * FROM hospital_bills WHERE deleted_at IS NULL AND (balance IS NULL OR balance > 0) ORDER BY vendor ASC"; - $bills = DB::select($bills_query); - - $data = $this->get_payable_aging_report_data($bills); - - return view('finance_reports::finance_reports.accounts.accounts_payable_aging_summary', compact('bills', 'hospital_information', 'suppliers', 'data')); - } - - public function accounts_payable_aging_detail(Request $request) - { - $suppliers = Supplier::get(); - $hospital_information = HospitalInformation::first(); - $vendor_id = $request->vendor; - - if ($vendor_id == '0' || $vendor_id == null) { - $bills_query = "SELECT * FROM hospital_bills WHERE deleted_at IS NULL AND (balance IS NULL OR balance > 0) ORDER BY vendor ASC"; - $bills = DB::select($bills_query); - } else { - $bills_query = "SELECT * FROM hospital_bills WHERE deleted_at IS NULL AND vendor = {$vendor_id} AND (balance IS NULL OR balance > 0) ORDER BY id ASC"; - if ($vendor_id == 0) { - $bills_query = "SELECT * FROM hospital_bills WHERE deleted_at IS NULL AND vendor IS NULL AND (balance IS NULL OR balance > 0) ORDER BY id ASC"; - } - $bills = DB::select($bills_query); - } - - $data = $this->get_payable_aging_report_data($bills); - - return view('finance_reports::finance_reports.accounts.accounts_payable_aging_detail', compact('bills', 'hospital_information', 'suppliers', 'data', 'vendor_id')); - } - - public function get_payable_aging_report_data($bills) - { - $data = []; - $today = Carbon::now()->toDateString(); - $today_minus_thirty = Carbon::now()->subDays(30)->toDateString(); - $today_minus_sixty = Carbon::now()->subDays(60)->toDateString(); - $today_minus_ninety = Carbon::now()->subDays(90)->toDateString(); - foreach ($bills as $bill) { - $balance = is_null($bill->balance) ? (int)$bill->total_amount : (int)$bill->balance; - if ($bill->bill_date == $today) { - if (isset($data[$bill->vendor]['current'])) { - $data[$bill->vendor]['current'] += $balance; - } else { - $data[$bill->vendor]['current'] = $balance; - $data[$bill->vendor]['current_bills'] = []; - } - array_push($data[$bill->vendor]['current_bills'], ["id" => $bill->id, "bill_number" => $bill->bill_number, "bill_memo" => $bill->bill_memo, "bill_date" => $bill->bill_date, "bill_due_date" => $bill->bill_due_date, "balance" => $balance, "category" => "current"]); - } elseif ($bill->bill_date < $today && $bill->bill_date >= $today_minus_thirty) { - if (isset($data[$bill->vendor]['one_to_thirty'])) { - $data[$bill->vendor]['one_to_thirty'] += $balance; - } else { - $data[$bill->vendor]['one_to_thirty'] = $balance; - $data[$bill->vendor]['one_to_thirty_bills'] = []; - } - array_push($data[$bill->vendor]['one_to_thirty_bills'], ["id" => $bill->id, "bill_number" => $bill->bill_number, "bill_memo" => $bill->bill_memo, "bill_date" => $bill->bill_date, "bill_due_date" => $bill->bill_due_date, "balance" => $balance, "category" => "one_to_thirty"]); - } elseif ($bill->bill_date < $today_minus_thirty && $bill->bill_date >= $today_minus_sixty) { - if (isset($data[$bill->vendor]['thirty_one_to_sixty'])) { - $data[$bill->vendor]['thirty_one_to_sixty'] += $balance; - } else { - $data[$bill->vendor]['thirty_one_to_sixty'] = $balance; - $data[$bill->vendor]['thirty_one_to_sixty_bills'] = []; - } - array_push($data[$bill->vendor]['thirty_one_to_sixty_bills'], ["id" => $bill->id, "bill_number" => $bill->bill_number, "bill_memo" => $bill->bill_memo, "bill_date" => $bill->bill_date, "bill_due_date" => $bill->bill_due_date, "balance" => $balance, "category" => "thirty_one_to_sixty"]); - } elseif ($bill->bill_date < $today_minus_sixty && $bill->bill_date >= $today_minus_ninety) { - if (isset($data[$bill->vendor]['sixty_one_to_ninety'])) { - $data[$bill->vendor]['sixty_one_to_ninety'] += $balance; - } else { - $data[$bill->vendor]['sixty_one_to_ninety'] = $balance; - $data[$bill->vendor]['sixty_one_to_ninety_bills'] = []; - } - array_push($data[$bill->vendor]['sixty_one_to_ninety_bills'], ["id" => $bill->id, "bill_number" => $bill->bill_number, "bill_memo" => $bill->bill_memo, "bill_date" => $bill->bill_date, "bill_due_date" => $bill->bill_due_date, "balance" => $balance, "category" => "sixty_one_to_ninety"]); - } elseif ($bill->bill_date < $today_minus_ninety) { - if (isset($data[$bill->vendor]['ninety_one_and_over'])) { - $data[$bill->vendor]['ninety_one_and_over'] += $balance; - } else { - $data[$bill->vendor]['ninety_one_and_over'] = $balance; - $data[$bill->vendor]['ninety_one_and_over_bills'] = []; - } - array_push($data[$bill->vendor]['ninety_one_and_over_bills'], ["id" => $bill->id, "bill_number" => $bill->bill_number, "bill_memo" => $bill->bill_memo, "bill_date" => $bill->bill_date, "bill_due_date" => $bill->bill_due_date, "balance" => $balance, "category" => "ninety_one_and_over"]); - } - } - return $data; - } - - public function print_accounts_payable_aging_summary(Request $request) - { - $bills_query = "SELECT * FROM hospital_bills WHERE deleted_at IS NULL AND (balance IS NULL OR balance > 0) ORDER BY vendor ASC"; - $bills = DB::select($bills_query); - - $data = ["data" => $this->get_payable_aging_report_data($bills)]; - - $pdf = SnappyPDF::loadView("finance_reports::finance_reports/print_accounts_payable_aging_summary", $data) - ->setOrientation('landscape') - ->setPaper('a4') - ->setOption('margin-bottom', 10) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline') - ->setOption('footer-right', '[page] of [toPage]'); - - return $pdf->inline('Accounts Payable Aging Summary Report - ' . date("d-m-y h:ia") . '.pdf'); - } - - public function print_accounts_payable_aging_detail(Request $request) - { - $vendor_id = $request->vendor; - if ($vendor_id == '0' || $vendor_id == null) { - $bills_query = "SELECT * FROM hospital_bills WHERE deleted_at IS NULL AND (balance IS NULL OR balance > 0) ORDER BY vendor ASC"; - $bills = DB::select($bills_query); - } else { - $bills_query = "SELECT * FROM hospital_bills WHERE deleted_at IS NULL AND vendor = {$vendor_id} AND (balance IS NULL OR balance > 0) ORDER BY id ASC"; - if ($vendor_id == 0) { - $bills_query = "SELECT * FROM hospital_bills WHERE deleted_at IS NULL AND vendor IS NULL AND (balance IS NULL OR balance > 0) ORDER BY id ASC"; - } - $bills = DB::select($bills_query); - } - - $data = ["data" => $this->get_payable_aging_report_data($bills)]; - - $pdf = SnappyPDF::loadView("finance_reports::finance_reports/print_accounts_payable_aging_detail", $data) - ->setOrientation('landscape') - ->setPaper('a4') - ->setOption('margin-bottom', 10) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline') - ->setOption('footer-right', '[page] of [toPage]'); - - return $pdf->inline('Accounts Payable Aging Detail Report - ' . date("d-m-y h:ia") . '.pdf'); - } - - public function operating_activities(Request $request) - { - /*========== enter this creed ==============*/ - $start_of_fiscal_year = $end_date = null; - if (empty($request->all())) { - $start_of_fiscal_year = get_fiscal_year_start_from_hospital_information(Carbon::today()); - $request->request->add(['start_date' => $start_of_fiscal_year]); - $end_date = Carbon::today()->toDateString(); - } else { - switch ($request->dates) { - case 'custom_date_range': - $start_of_fiscal_year = Carbon::parse($request->start_date); - $end_date = Carbon::parse($request->end_date)->startOfDay()->toDateString(); - break; - } - } - $request->request->add(['dates' => 'custom_date_range']); - $request->request->add(['start_date' => $start_of_fiscal_year]); - $request->request->add(['end_date' => $end_date]); - $display = "As at " . streamline_date($end_date); - /*============== leave this creed after becoming a better man =================*/ - - $display = dateLabelSetter($request); - - $net_income_data = getNetIncome($request); - - $depreciation_data = getDepreciation($request); - - $data = [ - 'a_net_profit' => $net_income_data["accrual_net_income"], - 'c_net_profit' => $net_income_data["cash_net_income"], - 'depreciation_data' => $depreciation_data, - 'display' => $display - ]; - return $data; - } - - /** - * The Start date constitutes the opening period so all computations up to that date make up the opening figure - * The end date is the closing so all computations till then make up that figure - */ - public function working_capital(Request $request) - { - $accounts_receivable_closing = $accounts_receivable_opening = $inventory_closing = $inventory_opening = $accounts_payable_closing = $accounts_payable_opening = 0; - - - // Receivables Closing & Opening - $receivables = $this->receivables_data($request); - $accounts_receivable_opening = $receivables['receivables_opening']; - $accounts_receivable_closing = $receivables['receivables_closing']; - $receivables_data_string = $receivables['receivables_data_string']; - - - // Inventory Closing & Opening - $inventory = $this->inventory_data($request); - $inventory_opening = $inventory['inventory_opening']; - $inventory_closing = $inventory['inventory_closing']; - $inventory_data_strings = $inventory['inventory_data_strings']; - - - // Payables Closing & Opening - $payables = $this->payables_data($request); - $accounts_payable_opening = $payables['payables_opening']; - $accounts_payable_closing = $payables['payables_closing']; - $payables_data_strings = $payables['payables_data_strings']; - - - $data = [ - 'accounts_receivable_closing' => $accounts_receivable_closing, - 'accounts_receivable_opening' => $accounts_receivable_opening, - 'receivables_data_string' => $receivables_data_string, - 'inventory_closing' => $inventory_closing, - 'inventory_opening' => $inventory_opening, - 'inventory_data_strings' => $inventory_data_strings, - 'accounts_payable_closing' => $accounts_payable_closing, - 'accounts_payable_opening' => $accounts_payable_opening, - 'accounts_payable_data_strings' => $payables_data_strings - ]; - return $data; - } - - public function receivables_data(Request $request) - { - $receivables = []; - $receivables_closing = $receivables_opening = 0; - $accounts_receivables_tables = ['patient_category_invoices', 'debtors', 'debt_plan']; - foreach ($accounts_receivables_tables as $table) { - if (empty($request->all())) { - $start_of_fiscal_year = get_fiscal_year_start_from_hospital_information(Carbon::today()); - $request->request->add(['start_date' => $start_of_fiscal_year]); - $end_date = Carbon::today()->toDateString(); - } else { - switch ($request->dates) { - case 'custom_date_range': - $start_of_fiscal_year = Carbon::parse($request->start_date); - $end_date = Carbon::parse($request->end_date)->startOfDay()->toDateString(); - break; - } - } - if ($table == 'patient_category_invoices') { - $receivables[$table]['closing'] = DB::table($table)->whereDate('created_at', '<=', $end_date)->whereNull('deleted_at')->where('invoice_generated', 1)->whereNull('balance_remaining')->orWhere('balance_remaining', '>', 0)->get(); - $receivables[$table]['opening'] = DB::table($table)->whereDate('created_at', '<=', $start_of_fiscal_year)->whereNull('deleted_at')->where('invoice_generated', 1)->whereNull('balance_remaining')->orWhere('balance_remaining', '>', 0)->get(); - } else { - $receivables[$table]['closing'] = DB::table($table)->whereDate('created_at', '<=', $end_date)->whereNull('deleted_at')->whereNull('balance_remaining')->orWhere('balance_remaining', '>', 0)->get(); - $receivables[$table]['opening'] = DB::table($table)->whereDate('created_at', '<=', $start_of_fiscal_year)->whereNull('deleted_at')->whereNull('balance_remaining')->orWhere('balance_remaining', '>', 0)->get(); - } - } - - // patient_category_invoices - if (count($receivables['patient_category_invoices']['closing']) > 0) { - foreach ($receivables['patient_category_invoices']['closing'] as $item) { - $amount = is_null($item->balance_remaining) ? $item->patient_amount : $item->balance_remaining; - $receivables_closing += $amount; - } - } - - if (count($receivables['patient_category_invoices']['opening']) > 0) { - foreach ($receivables['patient_category_invoices']['opening'] as $item) { - $amount = is_null($item->balance_remaining) ? $item->patient_amount : $item->balance_remaining; - $receivables_opening += $amount; - } - } - - - // debtors - if (count($receivables['debtors']['closing']) > 0) { - foreach ($receivables['debtors']['closing'] as $item) { - $amount = is_null($item->balance_remaining) ? $item->balance : $item->balance_remaining; - $receivables_closing += $amount; - } - } - - if (count($receivables['debtors']['opening']) > 0) { - foreach ($receivables['debtors']['opening'] as $item) { - $amount = is_null($item->balance_remaining) ? $item->balance : $item->balance_remaining; - $receivables_opening += $amount; - } - } - - - // debt_plan - if (count($receivables['debt_plan']['closing']) > 0) { - foreach ($receivables['debt_plan']['closing'] as $item) { - $amount = is_null($item->balance_remaining) ? $item->staff_guarantor_to_pay : $item->balance_remaining; - $receivables_closing += $amount; - } - } - - if (count($receivables['debt_plan']['opening']) > 0) { - foreach ($receivables['debt_plan']['opening'] as $item) { - $amount = is_null($item->balance_remaining) ? $item->staff_guarantor_to_pay : $item->balance_remaining; - $receivables_opening += $amount; - } - } - - $receivables_data_string = $request->dates . "," . $request->start_date . "," . $request->end_date . "," . 'accounts_receivables' . "," . '16' . ","; - - $data = [ - 'receivables_closing' => $receivables_closing, - 'receivables_opening' => $receivables_opening, - 'receivables_data_string' => $receivables_data_string - ]; - - return $data; - } - - public function inventory_data(Request $request) { - $inventory_closing = $inventory_opening = 0; - $stock_data_strings = []; - $inventory_accounts = ChartOfAccount::where('type', 10)->whereNull('deleted_at')->pluck('id')->toArray(); - - if ($request->dates == 'custom_date_range') { - $start = Carbon::parse($request->start_date)->startOfDay(); - $end = Carbon::parse($request->end_date)->endOfDay(); - } else { - $start = Carbon::today()->startOfDay(); - $end = Carbon::today()->endOfDay(); - } - - $inventory_accounts_array = []; - - foreach ($inventory_accounts as $inventory_account) { - $inventory_accounts_array[$inventory_account] = [ - 'id' => $inventory_account, 'closing_stock_value' => 0, 'opening_stock_value' => 0, 'data' => $request->dates . "," . $request->start_date . "," . $request->end_date . "," . 'stock_watcher' . "," . $inventory_account - ]; - } - - $drugs = DB::table('drugs')->whereNull('deleted_at')->whereBetween('created_at', [$start, $end]) - ->whereIn('inventory_account', $inventory_accounts)->get(['id', 'cost_price', 'pharmacy_stock', 'inventory_account', 'store_stock']); - $sundries = DB::table('sundries')->whereNull('deleted_at')->whereBetween('created_at', [$start, $end]) - ->whereIn('inventory_account', $inventory_accounts)->get(['id', 'cost_price', 'pharmacy_stock', 'inventory_account', 'store_stock']); - - // turn dates to ->toDateString() - $start = $start->toDateString(); - $end = $end->toDateString(); - - foreach ($drugs as $drug) { - $stock_watcher_record = DB::table('batch_stock_watcher')->where('item_type', 1) - ->where('item_id', $drug->id)->first(); - - if ($stock_watcher_record) { - $details_arr = json_decode($stock_watcher_record->details, true); - - if (!isset($details_arr[$start])) { - // just get the dates into their own array - $dates_array = array_keys($details_arr); - - // search for the closest date to ours of interest and set that as our reference - $details = $details_arr[get_closest_element_in_array($dates_array, $start)]; - } else { - $details = $details_arr[$start]; - } - - $opening_stock_value = ($details["buying_price"] * ($details["pharmacy_stock"] + $details["store_stock"])); - - if (!isset($details_arr[$end])) { - // just get the dates into their own array - $dates_array = array_keys($details_arr); - - // search for the closest date to ours of interest and set that as our reference - $details = $details_arr[get_closest_element_in_array($dates_array, $end)]; - } else { - $details = $details_arr[$end]; - } - - $closing_stock_value = ($details["buying_price"] * ($details["pharmacy_stock"] + $details["store_stock"])); - } else { - $opening_stock_value = ($drug->cost_price * ($drug->pharmacy_stock + $drug->store_stock)); - $closing_stock_value = ($drug->cost_price * ($drug->pharmacy_stock + $drug->store_stock)); - } - - $inventory_accounts_array[$drug->inventory_account]['opening_stock_value'] = $inventory_accounts_array[$drug->inventory_account]['opening_stock_value'] + $opening_stock_value; - $inventory_accounts_array[$drug->inventory_account]['closing_stock_value'] = $inventory_accounts_array[$drug->inventory_account]['closing_stock_value'] + $closing_stock_value; - } - - foreach ($sundries as $sundry) { - $stock_watcher_record = DB::table('batch_stock_watcher')->where('item_type', 2) - ->where('item_id', $sundry->id)->first(); - - if ($stock_watcher_record) { - $details_arr = json_decode($stock_watcher_record->details, true); - - if (!isset($details_arr[$start])) { - // just get the dates into their own array - $dates_array = array_keys($details_arr); - - // search for the closest date to ours of interest and set that as our reference - $details = $details_arr[get_closest_element_in_array($dates_array, $start)]; - } else { - $details = $details_arr[$start]; - } - - $opening_stock_value = ($details["buying_price"] * ($details["pharmacy_stock"] + $details["store_stock"])); - - if (!isset($details_arr[$end])) { - // just get the dates into their own array - $dates_array = array_keys($details_arr); - - // search for the closest date to ours of interest and set that as our reference - $details = $details_arr[get_closest_element_in_array($dates_array, $end)]; - } else { - $details = $details_arr[$end]; - } - - $closing_stock_value = ($details["buying_price"] * ($details["pharmacy_stock"] + $details["store_stock"])); - } else { - $opening_stock_value = ($sundry->cost_price * ($sundry->pharmacy_stock + $sundry->store_stock)); - $closing_stock_value = ($sundry->cost_price * ($sundry->pharmacy_stock + $sundry->store_stock)); - } - - $inventory_accounts_array[$sundry->inventory_account]['opening_stock_value'] = $inventory_accounts_array[$sundry->inventory_account]['opening_stock_value'] + $opening_stock_value; - $inventory_accounts_array[$sundry->inventory_account]['closing_stock_value'] = $inventory_accounts_array[$sundry->inventory_account]['closing_stock_value'] + $closing_stock_value; - } - - foreach ($inventory_accounts_array as $account) { - $inventory_closing += $account["closing_stock_value"]; - $inventory_opening += $account["opening_stock_value"]; - $stock_data_strings[] = $account["data"]; - } - - return [ - 'inventory_closing' => $inventory_closing, - 'inventory_opening' => $inventory_opening, - 'inventory_data_strings' => $stock_data_strings - ]; - } - - public function payables_data(Request $request) - { - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $hospital_bills_opening_total = $hospital_bills_closing_total = 0; - $probable_duplicate_records = []; - $payables_data_strings = []; - //Current Liabilities - $accounts = ChartOfAccount::where('type', 6)->whereNotIn('id', [15,])->orWhere('type', 9)->pluck('id')->toArray(); - foreach ($accounts as $account_id) { - - $hospital_bills = []; - switch ($request->dates) { - case 'custom_date_range': - $hospital_bills = DB::table('hospital_bills')->whereNull('deleted_at')->whereDate('created_at', '<=', $end)->whereRaw('FIND_IN_SET(' . $account_id . ',payable_account)')->get(); - break; - } - - foreach ($hospital_bills as $bill) { - $bill_number = $bill->bill_number; - if (strpos($bill_number, 'Journal') !== false) { - $bill_number_trim1 = trim($bill_number, "Journal ("); - $bill_number_trim2 = trim($bill_number_trim1, ")"); - $journal_number = (int)$bill_number_trim2; - $probable_duplicate_records[] = $journal_number; - } - - $_amount_paid = (int)$bill->total_amount - (!is_null($bill->balance) ? (int)$bill->balance : (int)$bill->total_amount); - $hospital_bill_balance = (int)$bill->total_amount - $_amount_paid; - if ($bill->created_at <= $start) { - $hospital_bills_opening_total += $hospital_bill_balance; - } else { - $hospital_bills_closing_total += $hospital_bill_balance; - } - } - - array_push($payables_data_strings, $request->dates . "," . $request->start_date . "," . $request->end_date . "," . 'hospital_bills' . "," . $account_id . ","); - } - - $journals = []; - switch ($request->dates) { - case 'custom_date_range': - $journals = DB::table('journals')->whereNull('deleted_at')->where('journal_date', '<=', $end)->whereNotIn('journal_number', $probable_duplicate_records)->get(); - break; - } - - $journals_opening_total = $journals_closing_total = 0; - foreach ($journals as $journal) { - $account_ids = explode(",", $journal->account_ids); - $credits = explode(",", $journal->credits); - $liability_account_id = null; - - for ($i = 0; $i < count($account_ids); $i++) { - // If it's a current liability account - if (get_name($account_ids[$i], 'id', 'type', 'chart_of_accounts') == 6) { - $liability_account_id = $account_ids[$i]; - $credit = $credits[$i]; - if ($credit != null) { - // This Liability Account's value was Increased via the Journal - $liabilty_value = (int)$credit; - - foreach ($accounts as $account_id) { - if ($account_id == $liability_account_id) { - if ($bill->created_at <= $start) { - $journals_opening_total += $liabilty_value; - } else { - $journals_closing_total += $liabilty_value; - } - } - } - } - } - } - } - - - // TODO: Figure out why the difference is too big; compare with current liabilities total in balance sheet - $data = [ - 'payables_closing' => $hospital_bills_closing_total + $journals_closing_total, - 'payables_opening' => $hospital_bills_opening_total + $journals_opening_total, - 'payables_data_strings' => $payables_data_strings - ]; - - return $data; - } - - public function financing_activities(Request $request) - { - $non_current_liabilities = getNonCurrentLiabilitiesByAccountBalanceSheet($request); - $equities = getEquitiesByAccountCustom($request); - $data = [ - 'non_current_liabilities' => $non_current_liabilities, - 'equities' => $equities - ]; - return $data; - } - - /** - * From bank and cash balances at the end of the previous period - */ - public function peroid_start_cash(Request $request) - { - $cash = 0; - $banks = ChartOfAccount::where('type', 4)->pluck('id')->toArray(); - $latest_banking_record = []; - foreach ($banks as $bank) { - switch ($request->dates) { - case 'custom_date_range': - $latest_banking_record = get_latest_banking_record($bank, Carbon::parse($request->start_date)->subDays(1)->toDateString()); - break; - } - - $cash += (!is_null($latest_banking_record) && !empty($latest_banking_record)) ? (int)($latest_banking_record->account_balance) : (int)(get_name($bank, 'id', 'balance', 'chart_of_accounts')); - } - - return $cash; - } - - public function patient_dependants_report(Request $request) - { - $dependants_consumption_colllections_array = []; - $patient_discounts = DB::table('patient_discounts')->whereNotNull('threshold_type')->orderBy('created_at', 'desc')->get(); - $patient_categories_array = []; - - foreach ($patient_discounts as $patient_discount) { - $patient_categories_array[] = $patient_discount->patient_category; - } - - $patient_categories = DB::table('patient_categories')->whereIn('id', $patient_categories_array)->pluck("name", "id")->toArray(); - $patient_categories = ['' => '- select -'] + $patient_categories; - $search_string = ""; - - if (!is_null($request->patient_category)) { - - $category_patient_dependants = CategoryPatientDependant::where('patient_category_id', $request->patient_category)->get(); - $today = Carbon::today()->toDateTimeString(); - $yesterday = Carbon::yesterday()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - - foreach ($category_patient_dependants as $record) { - $dependants_array = explode(",", $record->dependant_patient_ids); - $main_patient_id = $record->main_patient_id; - $dependants_array[] = $main_patient_id; //add the main patient fro easy querying - - if ($request->dates == "today") { - - $patient_consumptions = DependantsConsumption::whereIn('dependant_patient_id', $dependants_array)->whereDate('created_at', $today)->get(); - - $dependants_consumption_colllections_array[][$main_patient_id] = $patient_consumptions; - $search_string = "Showing results for ".streamline_date(Carbon::today()->toDateString()).""; - } else if ($request->dates == "yesterday") { - - $patient_consumptions = DependantsConsumption::whereIn('dependant_patient_id', $dependants_array)->whereDate('created_at', $yesterday)->get(); - - $dependants_consumption_colllections_array[][$main_patient_id] = $patient_consumptions; - $search_string = "Showing results for ".streamline_date(Carbon::yesterday()->toDateString()).""; - } else if ($request->dates == "custom_date") { - - $patient_consumptions = DependantsConsumption::whereIn('dependant_patient_id', $dependants_array)->whereDate('created_at', $start_date)->get(); - - $dependants_consumption_colllections_array[][$main_patient_id] = $patient_consumptions; - $search_string = "Showing results for ".streamline_date(Carbon::parse($start_date)->toDateString()).""; - } else if ($request->dates == "custom_date_range") { - - $patient_consumptions = DependantsConsumption::whereIn('dependant_patient_id', $dependants_array)->whereBetween('created_at', [$start_date, $end_date])->get(); - - $dependants_consumption_colllections_array[][$main_patient_id] = $patient_consumptions; - $search_string = "Showing results between ".streamline_date(Carbon::parse($start_date)->toDateString())." and ".streamline_date(Carbon::parse($end_date)->toDateString()).""; - } - } - - $patients = Patient::where('category_id', $request->patient_category)->get(); - } - - return view('finance_reports::finance_reports.patient_dependants_report', compact('request', 'patient_discounts', 'patient_categories', 'dependants_consumption_colllections_array', 'search_string')); - } - - public function dependant_consumption_details(Request $request) - { - $main_patient_id = $request->main_patient_id; - $today = Carbon::today()->toDateTimeString(); - $yesterday = Carbon::yesterday()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $search_string = ""; - - if ($request->dates == "today") { - $patient_consumptions = DependantsConsumption::where('main_patient_id', $main_patient_id)->whereDate('created_at', $today)->get(); - $search_string = "Showing results for ".streamline_date(Carbon::today()->toDateString()).""; - } else if ($request->dates == "yesterday") { - $patient_consumptions = DependantsConsumption::where('main_patient_id', $main_patient_id)->whereDate('created_at', $yesterday)->get(); - $search_string = "Showing results for ".streamline_date(Carbon::yesterday()->toDateString()).""; - } else if ($request->dates == "custom_date") { - $patient_consumptions = DependantsConsumption::where('main_patient_id', $main_patient_id)->whereDate('created_at', $start_date)->get(); - $search_string = "Showing results for ".streamline_date(Carbon::parse($start_date)->toDateString()).""; - } else if ($request->dates == "custom_date_range") { - $patient_consumptions = DependantsConsumption::where('main_patient_id', $main_patient_id)->whereBetween('created_at', [$start_date, $end_date])->get(); - $search_string = "Showing results between ".streamline_date(Carbon::parse($start_date)->toDateString())." and ".streamline_date(Carbon::parse($end_date)->toDateString()).""; - } - - return view('finance_reports::finance_reports.patient_dependants_report_details', compact('main_patient_id', 'patient_consumptions', 'search_string')); - } - - public function renew_dependant_threshold(Request $request){ - //1. record it as a new consumption with -negative consumption - //2. Put all the excessive consumptions into an invoice to be paid by the patient - //3. Let the running balance be reset to the threshold amount - $category_dependants_record = CategoryPatientDependant::where('main_patient_id', $request->main_patient_id)->first(); - - $group_consumed_amount = $group_unpaid_balances = 0; - $consumptions = DependantsConsumption::where('main_patient_id', $request->main_patient_id)->get(); - foreach($consumptions as $dependant_consumption){ - $group_consumed_amount += $dependant_consumption->amount_consumed; - - $group_unpaid_balances += $dependant_consumption->unpaid_balance; - if ($dependant_consumption->unpaid_balance > 0 && $dependant_consumption->invoice_number == null) { - $invoice_generated_status_array[] = 1; - } - $dependant_consumption->is_consumption_in_previous_subscription = 1; //mark this consumption as one in a past consumption - $dependant_consumption->update(); - } - - if ($group_unpaid_balances > 0){ - if (in_array(1, $invoice_generated_status_array)){ - $this->generate_dependant_invoice($request->main_patient_id); - } - } - - //record it as a new consumption with -negative consumption - $new_consumption_record = new DependantsConsumption; - $renewal_record = new PatientDependantRenewal; - $patient = Patient::withTrashed()->find($request->main_patient_id); - if ($patient) { - $theshold_amt = is_null($patient->category_id) ? 0 : get_name($patient->category_id, "patient_category", "threshold_amount", "patient_discounts"); - - $renewal_record->main_patient_id = $request->main_patient_id; - $renewal_record->renewal_amount = $theshold_amt; - $renewal_record->renewal_date = now(); - $renewal_record->save(); - - //update the current subscription dates in the category_patient_dependants table - $category_dependants_record->current_subscription_start_date = $category_dependants_record->start_date ?? $category_dependants_record->created_at; - - $category_duration_in_months = 0; - $threshold_type = get_name($patient->category_id, "patient_category", "threshold_type", "patient_discounts"); - if ($threshold_type == 2) { - $category_duration_in_months = 12; //12 months - } - if ($threshold_type == 1) { - $category_duration_in_months = 1; //1 month - } - - $carbon_start_date = Carbon::parse($category_dependants_record->current_subscription_start_date); - $calculated_end_date = $carbon_start_date->addMonth($category_duration_in_months); - $category_dependants_record->current_subscription_end_date = $calculated_end_date; - //if the start and duration date do not exit, update them too - $category_dependants_record->start_date = $category_dependants_record->start_date ?? $category_dependants_record->current_subscription_start_date; - $category_dependants_record->duration = $category_dependants_record->duration ?? $category_duration_in_months; - if ($category_dependants_record->update()) { - flash("Subscription for ".get_full_name($patient->id, 'id', 'first_name', 'last_name', 'patients')." has been renewed")->success(); - return redirect('patient_dependants_report'); - } - - // $new_consumption_record->dependant_patient_id = $request->main_patient_id; - // $new_consumption_record->main_patient_id = $request->main_patient_id; - // $new_consumption_record->episode_id = 0; - // $new_consumption_record->amount_consumed = -$theshold_amt; - // $new_consumption_record->dependant_patient_category = $patient->category_id; - // $new_consumption_record->main_patient_category = $patient->category_id; - // $new_consumption_record->tag_id = 0; - // $new_consumption_record->created_by = auth()->user()->id; - // $new_consumption_record->created_at = now(); - // if ($new_consumption_record->save()) { - // flash("Subscription for ".get_full_name($patient->id, 'id', 'first_name', 'last_name', 'patients')." has been renewed")->success(); - // return redirect('patient_dependants_report'); - // } - } - - flash("System could not renew subsription ")->error(); - return redirect('patient_dependants_report'); - } - - public function generate_dependant_invoice($main_patient_id){ - $dependants_array = []; - $dependants = CategoryPatientDependant::where('main_patient_id', $main_patient_id)->get(); - $consumptions = DependantsConsumption::where('main_patient_id', $main_patient_id)->get(); - $patient_category_id = 0; - foreach ($dependants as $record) { - $dependants_array = explode(",", $record->dependant_patient_ids); - $patient_category_id = $record->patient_category_id; - } - $dependants_array[] = $main_patient_id; //add the main patient in array - - $start_of_year = Carbon::now()->startOfYear(); - $start = $start_of_year->toDateTimeString(); - $end = Carbon::now()->toDateString(); - $patient_category_name = get_name($patient_category_id, "id", "name", "patient_categories"); - $invoice_number = generateInvoiceNumberFromDB($patient_category_name); - $invoice_start = Carbon::parse($start)->format('d-m-Y'); - $invoice_date = $invoice_start."/".$end; //according to how Benjamin organized it - $invoice_with_payment_amount_paid = $invoice_with_payment_balance = 0; - - $update = PatientCategoryInvoice::where('invoice_generated', 0) - ->where('patient_category', $patient_category_id) - ->whereIn('patient_id', $dependants_array) - ->update( - [ - 'invoice_generated' => 1, - 'invoice_date' => $invoice_date, - 'invoice_number' => $invoice_number, - 'is_invoice_for_individual' => $main_patient_id - ] - ); - - $track_invoice = new TrackInvoice; - $track_invoice->reason = $patient_category_id; - $track_invoice->created_by = auth()->user()->id; - - if (!is_null($update) && $track_invoice->save()) { - - $start_date = Carbon::parse($start)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($end)->endOfDay()->toDateTimeString(); - - //update the dependant consumption table with the generated invoices number - $consumption = DependantsConsumption::where('main_patient_id', $main_patient_id)->whereNull('invoice_number') - ->where('unpaid_balance', '>', 0) - ->whereBetween('created_at', [$start_date, $end_date]) - ->update(['invoice_number' => $invoice_number]); - - $last_invoice = DB::table('patient_category_invoices')->select('invoice_number')->distinct()->orderBy('invoice_number', 'desc')->first(); - $last_invoice_number = $invoice_number; - - $invoices = DB::table('patient_category_invoices') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereBetween('created_at', [$start_date, $end_date]) - ->where('patient_category', $patient_category_id) - ->where('invoice_generated', 1) - ->where('status', 0) - ->where('invoice_number', $last_invoice_number) - ->groupBy('episode_id')->selectRaw('*, sum(patient_amount) as sum') - ->get() - ->toArray(); - } else { - return back()->withInput(); - } - } - - public function dependants_renewals_report(Request $request) - { - if ($request->start_date) { - $start_date = $request->start_date; - $end_date = $request->end_date; - } else { - $start_date = date('Y-m-d h:i:s'); - $end_date = date('Y-m-d h:i:s'); - } - - $start_date = Carbon::parse($start_date)->startOfDay(); - $end_date = Carbon::parse($end_date)->endOfDay(); - $patient_categories = PatientCategory::pluck('name', 'id')->prepend('-select-', '')->toArray(); - - $criteria = 'Renewals Made Between ' . streamline_date($start_date) . ' And ' . streamline_date($end_date); - - //$records = PatientDependantRenewal::where('patient')->whereBetween('created_at', [$start_date, $end_date])->orderBy('created_at', 'desc')->get(); - - $records = DB::table('patient_dependant_renewals')->join('patients', 'patients.id', '=', 'patient_dependant_renewals.main_patient_id') - ->whereNull('patient_dependant_renewals.deleted_at') - ->whereNull('patients.deleted_at') - ->where('patients.category_id', $request->patient_category) - ->get(); - - return view('finance_reports::finance_reports.dependants_renewals_report', compact('criteria', 'records', 'start_date', 'end_date', 'patient_categories')); - } - - public function sales_by_patient_category(Request $request) - { - if ($request->start_date) { - $start_date = $request->start_date; - $end_date = $request->end_date; - } else { - $start_date = date('Y-m-d h:i:s'); - $end_date = date('Y-m-d h:i:s'); - } - - $start_date = Carbon::parse($start_date)->startOfDay(); - $end_date = Carbon::parse($end_date)->endOfDay(); - - $criteria = 'Sales Made Between ' . streamline_date($start_date) . ' And ' . streamline_date($end_date) . ' By Patient Categories'; - - $patient_categories = DB::table('patient_categories')->whereNull('deleted_at')->orderBy('id', 'asc')->pluck('name', 'id'); - - // copy array to another to keep track of the money using the keys of the previous array - $patient_categories_amounts = array_fill_keys(array_keys($patient_categories->toArray()), 0); - - // begin to check each deposits table and add the amounts - $invoices = DB::table('patient_category_invoices') - ->whereNull('deleted_at') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(['patient_category', 'patient_amount']); - - foreach ($invoices as $invoice) { - if (isset($patient_categories_amounts[$invoice->patient_category])) { - $patient_categories_amounts[$invoice->patient_category] += $invoice->patient_amount; - } - } - - $treatments = DB::table('treatment_deposits') - ->whereNull('deleted_at') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(['patient_id', 'patient_amount_paid']); - - foreach ($treatments as $record) { - $patient_category_id = get_name($record->patient_id, 'id', 'category_id', 'patients'); - if (isset($patient_categories_amounts[$patient_category_id])) { - $patient_categories_amounts[$patient_category_id] += $record->patient_amount_paid; - } - } - - $sundries = DB::table('sundries_deposits') - ->whereNull('deleted_at') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(['patient_id', 'patient_amount_paid']); - - foreach ($sundries as $record) { - $patient_category_id = get_name($record->patient_id, 'id', 'category_id', 'patients'); - if (isset($patient_categories_amounts[$patient_category_id])) { - $patient_categories_amounts[$patient_category_id] += $record->patient_amount_paid; - } - } - - $optics = DB::table('eye_glasses_deposits') - ->whereNull('deleted_at') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(['patient_id', 'patient_amount_paid']); - - foreach ($optics as $record) { - $patient_category_id = get_name($record->patient_id, 'id', 'category_id', 'patients'); - if (isset($patient_categories_amounts[$patient_category_id])) { - $patient_categories_amounts[$patient_category_id] += $record->patient_amount_paid; - } - } - - $services = DB::table('service_deposits') - ->whereNull('deleted_at') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(['patient_id', 'patient_amount_paid']); - - foreach ($services as $record) { - $patient_category_id = get_name($record->patient_id, 'id', 'category_id', 'patients'); - if (isset($patient_categories_amounts[$patient_category_id])) { - $patient_categories_amounts[$patient_category_id] += $record->patient_amount_paid; - } - } - - $procedures = DB::table('procedure_deposits') - ->whereNull('deleted_at') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(['patient_id', 'patient_amount_paid']); - - foreach ($procedures as $record) { - $patient_category_id = get_name($record->patient_id, 'id', 'category_id', 'patients'); - if (isset($patient_categories_amounts[$patient_category_id])) { - $patient_categories_amounts[$patient_category_id] += $record->patient_amount_paid; - } - } - - $investigations = DB::table('investigation_deposits') - ->whereNull('deleted_at') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(['patient_id', 'patient_amount_paid']); - - foreach ($investigations as $record) { - $patient_category_id = get_name($record->patient_id, 'id', 'category_id', 'patients'); - if (isset($patient_categories_amounts[$patient_category_id])) { - $patient_categories_amounts[$patient_category_id] += $record->patient_amount_paid; - } - } - - $debtor_payments = DB::table('debtor_payments') - ->whereNull('deleted_at') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(['patient_id', 'amount_paid']); - - foreach ($debtor_payments as $record) { - $patient_category_id = get_name($record->patient_id, 'id', 'category_id', 'patients'); - if (isset($patient_categories_amounts[$patient_category_id])) { - $patient_categories_amounts[$patient_category_id] += $record->amount_paid; - } - } - - $debt_plans = DB::table('debt_plan') - ->whereNull('deleted_at') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(['patient_id', 'amount_paid_off']); - - foreach ($debt_plans as $record) { - $patient_category_id = get_name($record->patient_id, 'id', 'category_id', 'patients'); - if (isset($patient_categories_amounts[$patient_category_id])) { - $patient_categories_amounts[$patient_category_id] += $record->amount_paid_off; - } - } - - // combine the arrays here - $records = []; - $counter = 0; - - foreach ($patient_categories as $key => $value) { - $records[$counter]['id'] = $key; - $records[$counter]['name'] = $value; - $records[$counter]['amount'] = $patient_categories_amounts[$key]; - - $counter++; - } - - return view('finance_reports::finance_reports.sales_by_patient_category', compact('criteria', 'records', 'start_date', 'end_date')); - } - - public function get_patient_category_sales_details($id, $start_date, $end_date) - { - - $treatments_total = 0; - $consultation_total = 0; - $services_total = 0; - $inpatient_total = 0; - $procedures_total = 0; - $investigations_total = 0; - $sundries_total = 0; - $optics_total = 0; - $other_total = 0; - - $treatments = DB::table('treatment_deposits') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(['patient_id', 'patient_amount_paid']); - - foreach ($treatments as $record) { - $patient_category_id = get_name($record->patient_id, 'id', 'category_id', 'patients'); - if ($patient_category_id == $id) { - $treatments_total += $record->patient_amount_paid; - } - } - - $sundries = DB::table('sundries_deposits') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(['patient_id', 'patient_amount_paid']); - - foreach ($sundries as $record) { - $patient_category_id = get_name($record->patient_id, 'id', 'category_id', 'patients'); - if ($patient_category_id == $id) { - $sundries_total += $record->patient_amount_paid; - } - } - - $services = DB::table('service_deposits') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(['patient_id', 'patient_amount_paid', 'service_type']); - - foreach ($services as $record) { - $patient_category_id = get_name($record->patient_id, 'id', 'category_id', 'patients'); - if ($patient_category_id == $id) { - switch ($record->service_type) { - case "Consultation": - $consultation_total += $record->patient_amount_paid; - break; - case "Services": - $services_total += $record->patient_amount_paid; - break; - case "Inpatient_Deposit": - $inpatient_total += $record->patient_amount_paid; - break; - } - } - } - - $procedures = DB::table('procedure_deposits') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(['patient_id', 'patient_amount_paid']); - - foreach ($procedures as $record) { - $patient_category_id = get_name($record->patient_id, 'id', 'category_id', 'patients'); - if ($patient_category_id == $id) { - $procedures_total += $record->patient_amount_paid; - } - } - - $investigations = DB::table('investigation_deposits') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(['patient_id', 'patient_amount_paid']); - - foreach ($investigations as $record) { - $patient_category_id = get_name($record->patient_id, 'id', 'category_id', 'patients'); - if ($patient_category_id == $id) { - $investigations_total += $record->patient_amount_paid; - } - } - - $optics = DB::table('eye_glasses_deposits') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(['patient_id', 'patient_amount_paid']); - - foreach ($optics as $record) { - $patient_category_id = get_name($record->patient_id, 'id', 'category_id', 'patients'); - if ($patient_category_id == $id) { - $optics_total += $record->patient_amount_paid; - } - } - - // begin to check each deposits table and add the amounts - $invoices = DB::table('patient_category_invoices') - ->whereBetween('created_at', [$start_date, $end_date]) - ->where('patient_category', $id) - ->get(['tag_id', 'patient_amount']); - - foreach ($invoices as $invoice) { - switch ($invoice->tag_id) { - case 2: - $investigations_total += $invoice->patient_amount; - break; - case 3: - $treatments_total += $invoice->patient_amount; - break; - case 4: - $procedures_total += $invoice->patient_amount; - break; - case 5: - $sundries_total += $invoice->patient_amount; - break; - case 6: - $consultation_total += $invoice->patient_amount; - break; - case 8: - $services_total += $invoice->patient_amount; - break; - case 10: - $inpatient_total += $invoice->patient_amount; - break; - } - } - - $debtor_payments = DB::table('debtor_payments') - ->leftJoin('debtors', 'debtors.id', '=', 'debtor_payments.debt_id') - ->whereNull('debtor_payments.deleted_at') - ->whereBetween('debtor_payments.created_at', [$start_date, $end_date]) - ->get(['debtor_payments.patient_id', 'debtor_payments.amount_paid', 'debtors.tag_id']); - - foreach ($debtor_payments as $record) { - $patient_category_id = get_name($record->patient_id, 'id', 'category_id', 'patients'); - if ($patient_category_id == $id) { - switch ($record->tag_id) { - case 2: - $investigations_total += $record->amount_paid; - break; - case 3: - $treatments_total += $record->amount_paid; - break; - case 4: - $procedures_total += $record->amount_paid; - break; - case 5: - $sundries_total += $record->amount_paid; - break; - case 6: - $consultation_total += $record->amount_paid; - break; - case 8: - $services_total += $record->amount_paid; - break; - case 10: - $other_total += $record->amount_paid; - break; - } - } - } - - $debt_plans = DB::table('debt_plan') - ->whereNull('deleted_at') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(['patient_id', 'amount_paid_off', 'tag_id']); - - foreach ($debt_plans as $record) { - $patient_category_id = get_name($record->patient_id, 'id', 'category_id', 'patients'); - if ($patient_category_id == $id) { - switch ($record->tag_id) { - case 2: - $investigations_total += $record->amount_paid_off; - break; - case 3: - $treatments_total += $record->amount_paid_off; - break; - case 4: - $procedures_total += $record->amount_paid_off; - break; - case 5: - $sundries_total += $record->amount_paid_off; - break; - case 6: - $consultation_total += $record->amount_paid_off; - break; - case 8: - $services_total += $record->amount_paid_off; - break; - case 10: - $other_total += $record->amount_paid_off; - break; - } - } - } - - return json_encode([ - "treatments_total" => $treatments_total, - "consultation_total" => $consultation_total, - "services_total" => $services_total, - "inpatient_total" => $inpatient_total, - "procedures_total" => $procedures_total, - "investigations_total" => $investigations_total, - "sundries_total" => $sundries_total, - "optics_total" => $optics_total, - "other_total" => $other_total - ]); - } - - public function accounts_receivable_aging_summary() { - $patient_categories = DB::table('patient_discounts')->where(['pay_later' => 1])->pluck('patient_category')->toArray(); - $hospital_information = HospitalInformation::first(); - $testOrDemoPatientsString = empty(findTestOrDemoPatients()) ? "''" : implode(",", findTestOrDemoPatients()); - - $invoices_query = "SELECT * FROM patient_category_invoices WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining != 0) ORDER BY patient_category ASC"; - $invoices = DB::select($invoices_query); - - $debtors_query = "SELECT * FROM debtors WHERE deleted_at IS NULL AND ((balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL) AND patient_id NOT IN (" . $testOrDemoPatientsString . ") ORDER BY patient_id ASC"; - $debtors = DB::select($debtors_query); - - $debt_plans_query = "SELECT * FROM debt_plan WHERE deleted_at IS NULL AND ((balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL) AND patient_id NOT IN (" . $testOrDemoPatientsString . ") ORDER BY patient_id ASC"; - $debt_plans = DB::select($debt_plans_query); - - $family_accounts_query = "SELECT * FROM family_accounts WHERE deleted_at IS NULL AND current_balance < 0 ORDER BY id ASC"; - $family_accounts = DB::select($family_accounts_query); - - $data = [ - 'invoices' => $this->get_invoices_aging_report_data($invoices), - 'debtors' => $this->get_debtors_aging_report_data($debtors), - 'debt_plans' => $this->get_debt_plans_aging_report_data($debt_plans), - 'family_accounts' => $this->get_family_accounts_aging_report_data($family_accounts), - ]; - - return view('finance_reports::finance_reports.accounts.accounts_receivable_aging_summary', compact('hospital_information', 'patient_categories', 'data')); - } - - public function accounts_receivable_aging_detail(Request $request) - { - $invoices = []; - $debtors = []; - $debt_plans = []; - $family_accounts = []; - - $patient_categories = DB::table('patient_discounts')->where(['pay_later' => 1])->pluck('patient_category')->toArray(); - $hospital_information = HospitalInformation::first(); - $patient_category_id = $request->patient_category; - - if ($patient_category_id == 'All') { - $invoices_query = "SELECT * FROM patient_category_invoices WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) ORDER BY patient_category ASC"; - $invoices = DB::select($invoices_query); - - $debtors_query = "SELECT * FROM debtors WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL ORDER BY patient_id ASC"; - $debtors = DB::select($debtors_query); - - $debt_plans_query = "SELECT * FROM debt_plan WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL ORDER BY patient_id ASC"; - $debt_plans = DB::select($debt_plans_query); - - $family_accounts_query = "SELECT * FROM family_accounts WHERE deleted_at IS NULL AND current_balance < 0 ORDER BY id ASC"; - $family_accounts = DB::select($family_accounts_query); - } else if ($patient_category_id == 'Debtors') { - $debtors_query = "SELECT * FROM debtors WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL ORDER BY patient_id ASC"; - $debtors = DB::select($debtors_query); - } else if ($patient_category_id == 'DebtPlan') { - $debt_plans_query = "SELECT * FROM debt_plan WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL ORDER BY patient_id ASC"; - $debt_plans = DB::select($debt_plans_query); - } else if ($patient_category_id == 'Family') { - $family_accounts_query = "SELECT * FROM family_accounts WHERE deleted_at IS NULL AND current_balance < 0 ORDER BY id ASC"; - $family_accounts = DB::select($family_accounts_query); - } else if ($patient_category_id != null || $patient_category_id == '') { - $invoices_query = "SELECT * FROM patient_category_invoices WHERE deleted_at IS NULL AND patient_category = {$patient_category_id} AND (balance_remaining IS NULL OR balance_remaining > 0) ORDER BY id ASC"; - if ($patient_category_id == 0) { - $invoices_query = "SELECT * FROM patient_category_invoices WHERE deleted_at IS NULL AND patient_category IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) ORDER BY id ASC"; - } - $invoices = DB::select($invoices_query); - } - - $data = [ - 'invoices' => $this->get_invoices_aging_report_data($invoices), - 'debtors' => $this->get_debtors_aging_report_data($debtors), - 'debt_plans' => $this->get_debt_plans_aging_report_data($debt_plans), - 'family_accounts' => $this->get_family_accounts_aging_report_data($family_accounts), - ]; - - return view('finance_reports::finance_reports.accounts.accounts_receivable_aging_detail', compact('invoices', 'hospital_information', 'patient_categories', 'data', 'patient_category_id')); - } - - public function get_invoices_aging_report_data($invoices) - { - $data = []; - $today = Carbon::today()->toDateTimeString(); - $today_minus_thirty = Carbon::today()->subDays(30)->toDateTimeString(); - $today_minus_sixty = Carbon::today()->subDays(60)->toDateTimeString(); - $today_minus_ninety = Carbon::today()->subDays(90)->toDateTimeString(); - foreach ($invoices as $invoice) { - $balance = is_null($invoice->balance_remaining) ? (int)$invoice->patient_amount - (int)$invoice->amount_paid_off : (int)$invoice->balance_remaining; - $created_at = Carbon::parse($invoice->created_at)->toDateTimeString(); - if ($created_at >= $today) { - if (isset($data[$invoice->patient_category]['current'])) { - if ($invoice->invoice_generated == 1) { - if (isset($data[$invoice->patient_category]['current']['generated'])) { - $data[$invoice->patient_category]['current']['generated'] += $balance; - } else { - $data[$invoice->patient_category]['current']['generated'] = $balance; - } - } else { - if (isset($data[$invoice->patient_category]['current']['not_generated'])) { - $data[$invoice->patient_category]['current']['not_generated'] += $balance; - } else { - $data[$invoice->patient_category]['current']['not_generated'] = $balance; - } - } - } else { - if ($invoice->invoice_generated == 1) { - $data[$invoice->patient_category]['current']['generated'] = $balance; - } else { - $data[$invoice->patient_category]['current']['not_generated'] = $balance; - } - $data[$invoice->patient_category]['current_invoices']['generated'] = []; - $data[$invoice->patient_category]['current_invoices']['not_generated'] = []; - } - if ($invoice->invoice_generated == 1) { - array_push($data[$invoice->patient_category]['current_invoices']['generated'], ["id" => $invoice->id, "patient_id" => $invoice->patient_id, "created_at" => $created_at, "invoice_date" => $invoice->invoice_date, "receipt_number" => $invoice->receipt_number, "invoice_number" => $invoice->invoice_number, "balance" => $balance, "category" => "current"]); - } else { - array_push($data[$invoice->patient_category]['current_invoices']['not_generated'], ["id" => $invoice->id, "patient_id" => $invoice->patient_id, "created_at" => $created_at, "invoice_date" => $invoice->invoice_date, "receipt_number" => $invoice->receipt_number, "invoice_number" => $invoice->invoice_number, "balance" => $balance, "category" => "current"]); - } - } elseif ($created_at < $today && $created_at >= $today_minus_thirty) { - if (isset($data[$invoice->patient_category]['one_to_thirty'])) { - if ($invoice->invoice_generated == 1) { - if (isset($data[$invoice->patient_category]['one_to_thirty']['generated'])) { - $data[$invoice->patient_category]['one_to_thirty']['generated'] += $balance; - } else { - $data[$invoice->patient_category]['one_to_thirty']['generated'] = $balance; - } - } else { - if (isset($data[$invoice->patient_category]['one_to_thirty']['not_generated'])) { - $data[$invoice->patient_category]['one_to_thirty']['not_generated'] += $balance; - } else { - $data[$invoice->patient_category]['one_to_thirty']['not_generated'] = $balance; - } - } - } else { - if ($invoice->invoice_generated == 1) { - $data[$invoice->patient_category]['one_to_thirty']['generated'] = $balance; - } else { - $data[$invoice->patient_category]['one_to_thirty']['not_generated'] = $balance; - } - $data[$invoice->patient_category]['one_to_thirty_invoices']['generated'] = []; - $data[$invoice->patient_category]['one_to_thirty_invoices']['not_generated'] = []; - } - if ($invoice->invoice_generated == 1) { - array_push($data[$invoice->patient_category]['one_to_thirty_invoices']['generated'], ["id" => $invoice->id, "patient_id" => $invoice->patient_id, "created_at" => $created_at, "invoice_date" => $invoice->invoice_date, "receipt_number" => $invoice->receipt_number, "invoice_number" => $invoice->invoice_number, "balance" => $balance, "category" => "one_to_thirty"]); - } else { - array_push($data[$invoice->patient_category]['one_to_thirty_invoices']['not_generated'], ["id" => $invoice->id, "patient_id" => $invoice->patient_id, "created_at" => $created_at, "invoice_date" => $invoice->invoice_date, "receipt_number" => $invoice->receipt_number, "invoice_number" => $invoice->invoice_number, "balance" => $balance, "category" => "one_to_thirty"]); - } - } elseif ($created_at < $today_minus_thirty && $created_at >= $today_minus_sixty) { - if (isset($data[$invoice->patient_category]['thirty_one_to_sixty'])) { - if ($invoice->invoice_generated == 1) { - if (isset($data[$invoice->patient_category]['thirty_one_to_sixty']['generated'])) { - $data[$invoice->patient_category]['thirty_one_to_sixty']['generated'] += $balance; - } else { - $data[$invoice->patient_category]['thirty_one_to_sixty']['generated'] = $balance; - } - } else { - if (isset($data[$invoice->patient_category]['thirty_one_to_sixty']['not_generated'])) { - $data[$invoice->patient_category]['thirty_one_to_sixty']['not_generated'] += $balance; - } else { - $data[$invoice->patient_category]['thirty_one_to_sixty']['not_generated'] = $balance; - } - } - } else { - if ($invoice->invoice_generated == 1) { - $data[$invoice->patient_category]['thirty_one_to_sixty']['generated'] = $balance; - } else { - $data[$invoice->patient_category]['thirty_one_to_sixty']['not_generated'] = $balance; - } - $data[$invoice->patient_category]['thirty_one_to_sixty_invoices']['generated'] = []; - $data[$invoice->patient_category]['thirty_one_to_sixty_invoices']['not_generated'] = []; - } - if ($invoice->invoice_generated == 1) { - array_push($data[$invoice->patient_category]['thirty_one_to_sixty_invoices']['generated'], ["id" => $invoice->id, "patient_id" => $invoice->patient_id, "created_at" => $created_at, "invoice_date" => $invoice->invoice_date, "receipt_number" => $invoice->receipt_number, "invoice_number" => $invoice->invoice_number, "balance" => $balance, "category" => "thirty_one_to_sixty"]); - } else { - array_push($data[$invoice->patient_category]['thirty_one_to_sixty_invoices']['not_generated'], ["id" => $invoice->id, "patient_id" => $invoice->patient_id, "created_at" => $created_at, "invoice_date" => $invoice->invoice_date, "receipt_number" => $invoice->receipt_number, "invoice_number" => $invoice->invoice_number, "balance" => $balance, "category" => "thirty_one_to_sixty"]); - } - } elseif ($created_at < $today_minus_sixty && $created_at >= $today_minus_ninety) { - if (isset($data[$invoice->patient_category]['sixty_one_to_ninety'])) { - if ($invoice->invoice_generated == 1) { - if (isset($data[$invoice->patient_category]['sixty_one_to_ninety']['generated'])) { - $data[$invoice->patient_category]['sixty_one_to_ninety']['generated'] += $balance; - } else { - $data[$invoice->patient_category]['sixty_one_to_ninety']['generated'] = $balance; - } - } else { - if (isset($data[$invoice->patient_category]['sixty_one_to_ninety']['not_generated'])) { - $data[$invoice->patient_category]['sixty_one_to_ninety']['not_generated'] += $balance; - } else { - $data[$invoice->patient_category]['sixty_one_to_ninety']['not_generated'] = $balance; - } - } - } else { - if ($invoice->invoice_generated == 1) { - $data[$invoice->patient_category]['sixty_one_to_ninety']['generated'] = $balance; - } else { - $data[$invoice->patient_category]['sixty_one_to_ninety']['not_generated'] = $balance; - } - $data[$invoice->patient_category]['sixty_one_to_ninety_invoices']['generated'] = []; - $data[$invoice->patient_category]['sixty_one_to_ninety_invoices']['not_generated'] = []; - } - if ($invoice->invoice_generated == 1) { - array_push($data[$invoice->patient_category]['sixty_one_to_ninety_invoices']['generated'], ["id" => $invoice->id, "patient_id" => $invoice->patient_id, "created_at" => $created_at, "invoice_date" => $invoice->invoice_date, "receipt_number" => $invoice->receipt_number, "invoice_number" => $invoice->invoice_number, "balance" => $balance, "category" => "sixty_one_to_ninety"]); - } else { - array_push($data[$invoice->patient_category]['sixty_one_to_ninety_invoices']['not_generated'], ["id" => $invoice->id, "patient_id" => $invoice->patient_id, "created_at" => $created_at, "invoice_date" => $invoice->invoice_date, "receipt_number" => $invoice->receipt_number, "invoice_number" => $invoice->invoice_number, "balance" => $balance, "category" => "sixty_one_to_ninety"]); - } - } elseif ($created_at < $today_minus_ninety) { - if (isset($data[$invoice->patient_category]['ninety_one_and_over'])) { - if ($invoice->invoice_generated == 1) { - if (isset($data[$invoice->patient_category]['ninety_one_and_over']['generated'])) { - $data[$invoice->patient_category]['ninety_one_and_over']['generated'] += $balance; - } else { - $data[$invoice->patient_category]['ninety_one_and_over']['generated'] = $balance; - } - } else { - if (isset($data[$invoice->patient_category]['ninety_one_and_over']['not_generated'])) { - $data[$invoice->patient_category]['ninety_one_and_over']['not_generated'] += $balance; - } else { - $data[$invoice->patient_category]['ninety_one_and_over']['not_generated'] = $balance; - } - } - } else { - if ($invoice->invoice_generated == 1) { - $data[$invoice->patient_category]['ninety_one_and_over']['generated'] = $balance; - } else { - $data[$invoice->patient_category]['ninety_one_and_over']['not_generated'] = $balance; - } - $data[$invoice->patient_category]['ninety_one_and_over_invoices']['generated'] = []; - $data[$invoice->patient_category]['ninety_one_and_over_invoices']['not_generated'] = []; - } - if ($invoice->invoice_generated == 1) { - array_push($data[$invoice->patient_category]['ninety_one_and_over_invoices']['generated'], ["id" => $invoice->id, "patient_id" => $invoice->patient_id, "created_at" => $created_at, "invoice_date" => $invoice->invoice_date, "receipt_number" => $invoice->receipt_number, "invoice_number" => $invoice->invoice_number, "balance" => $balance, "category" => "ninety_one_and_over"]); - } else { - array_push($data[$invoice->patient_category]['ninety_one_and_over_invoices']['not_generated'], ["id" => $invoice->id, "patient_id" => $invoice->patient_id, "created_at" => $created_at, "invoice_date" => $invoice->invoice_date, "receipt_number" => $invoice->receipt_number, "invoice_number" => $invoice->invoice_number, "balance" => $balance, "category" => "ninety_one_and_over"]); - } - } - } - return $data; - } - - public function get_debtors_aging_report_data($debtors) - { - $data = []; - $today = Carbon::today()->toDateTimeString(); - $today_minus_thirty = Carbon::today()->subDays(30)->toDateTimeString(); - $today_minus_sixty = Carbon::today()->subDays(60)->toDateTimeString(); - $today_minus_ninety = Carbon::today()->subDays(90)->toDateTimeString(); - foreach ($debtors as $debtor) { - $balance = is_null($debtor->balance_remaining) ? (int)$debtor->balance : (int)$debtor->balance_remaining; - if ($debtor->created_at >= $today) { - if (isset($data[$debtor->patient_id]['current'])) { - $data[$debtor->patient_id]['current'] += $balance; - } else { - $data[$debtor->patient_id]['current_debtors'] = $balance; - $data[$debtor->patient_id]['current_debtors'] = []; - } - array_push($data[$debtor->patient_id]['current_debtors'], ["id" => $debtor->id, "balance" => $balance, "created_at" => $debtor->created_at, "created_by" => $debtor->created_by, "receipt_number" => $debtor->receipt_number, "category" => "current"]); - } elseif ($debtor->created_at < $today && $debtor->created_at >= $today_minus_thirty) { - if (isset($data[$debtor->patient_id]['one_to_thirty'])) { - $data[$debtor->patient_id]['one_to_thirty'] += $balance; - } else { - $data[$debtor->patient_id]['one_to_thirty'] = $balance; - $data[$debtor->patient_id]['one_to_thirty_debtors'] = []; - } - array_push($data[$debtor->patient_id]['one_to_thirty_debtors'], ["id" => $debtor->id, "balance" => $balance, "created_at" => $debtor->created_at, "created_by" => $debtor->created_by, "receipt_number" => $debtor->receipt_number, "category" => "one_to_thirty"]); - } elseif ($debtor->created_at < $today_minus_thirty && $debtor->created_at >= $today_minus_sixty) { - if (isset($data[$debtor->patient_id]['thirty_one_to_sixty'])) { - $data[$debtor->patient_id]['thirty_one_to_sixty'] += $balance; - } else { - $data[$debtor->patient_id]['thirty_one_to_sixty'] = $balance; - $data[$debtor->patient_id]['thirty_one_to_sixty_debtors'] = []; - } - array_push($data[$debtor->patient_id]['thirty_one_to_sixty_debtors'], ["id" => $debtor->id, "balance" => $balance, "created_at" => $debtor->created_at, "created_by" => $debtor->created_by, "receipt_number" => $debtor->receipt_number, "category" => "thirty_one_to_sixty"]); - } elseif ($debtor->created_at < $today_minus_sixty && $debtor->created_at >= $today_minus_ninety) { - if (isset($data[$debtor->patient_id]['sixty_one_to_ninety'])) { - $data[$debtor->patient_id]['sixty_one_to_ninety'] += $balance; - } else { - $data[$debtor->patient_id]['sixty_one_to_ninety'] = $balance; - $data[$debtor->patient_id]['sixty_one_to_ninety_debtors'] = []; - } - array_push($data[$debtor->patient_id]['sixty_one_to_ninety_debtors'], ["id" => $debtor->id, "balance" => $balance, "created_at" => $debtor->created_at, "created_by" => $debtor->created_by, "receipt_number" => $debtor->receipt_number, "category" => "sixty_one_to_ninety"]); - } elseif ($debtor->created_at < $today_minus_ninety) { - if (isset($data[$debtor->patient_id]['ninety_one_and_over'])) { - $data[$debtor->patient_id]['ninety_one_and_over'] += $balance; - } else { - $data[$debtor->patient_id]['ninety_one_and_over'] = $balance; - $data[$debtor->patient_id]['ninety_one_and_over_debtors'] = []; - } - array_push($data[$debtor->patient_id]['ninety_one_and_over_debtors'], ["id" => $debtor->id, "balance" => $balance, "created_at" => $debtor->created_at, "created_by" => $debtor->created_by, "receipt_number" => $debtor->receipt_number, "category" => "ninety_one_and_over"]); - } - } - return $data; - } - - public function get_debt_plans_aging_report_data($debt_plans) - { - $data = []; - $today = Carbon::today()->toDateTimeString(); - $today_minus_thirty = Carbon::today()->subDays(30)->toDateTimeString(); - $today_minus_sixty = Carbon::today()->subDays(60)->toDateTimeString(); - $today_minus_ninety = Carbon::today()->subDays(90)->toDateTimeString(); - foreach ($debt_plans as $debt_plan) { - $balance = is_null($debt_plan->balance_remaining) ? ((int)$debt_plan->staff_guarantor_to_pay > 0 ? (int)$debt_plan->staff_guarantor_to_pay : (int)$debt_plan->amount_owed) : (int)$debt_plan->balance_remaining; - if ($debt_plan->created_at >= $today) { - if (isset($data[$debt_plan->patient_id]['current'])) { - $data[$debt_plan->patient_id]['current'] += $balance; - } else { - $data[$debt_plan->patient_id]['current_debt_plans'] = $balance; - $data[$debt_plan->patient_id]['current_debt_plans'] = []; - } - array_push($data[$debt_plan->patient_id]['current_debt_plans'], ["id" => $debt_plan->id, "balance" => $balance, "created_at" => $debt_plan->created_at, "staff_guarantor" => $debt_plan->staff_guarantor, "authorised_by" => $debt_plan->authorised_by, "category" => "current"]); - } elseif ($debt_plan->created_at < $today && $debt_plan->created_at >= $today_minus_thirty) { - if (isset($data[$debt_plan->patient_id]['one_to_thirty'])) { - $data[$debt_plan->patient_id]['one_to_thirty'] += $balance; - } else { - $data[$debt_plan->patient_id]['one_to_thirty'] = $balance; - $data[$debt_plan->patient_id]['one_to_thirty_debt_plans'] = []; - } - array_push($data[$debt_plan->patient_id]['one_to_thirty_debt_plans'], ["id" => $debt_plan->id, "balance" => $balance, "created_at" => $debt_plan->created_at, "staff_guarantor" => $debt_plan->staff_guarantor, "authorised_by" => $debt_plan->authorised_by, "category" => "one_to_thirty"]); - } elseif ($debt_plan->created_at < $today_minus_thirty && $debt_plan->created_at >= $today_minus_sixty) { - if (isset($data[$debt_plan->patient_id]['thirty_one_to_sixty'])) { - $data[$debt_plan->patient_id]['thirty_one_to_sixty'] += $balance; - } else { - $data[$debt_plan->patient_id]['thirty_one_to_sixty'] = $balance; - $data[$debt_plan->patient_id]['thirty_one_to_sixty_debt_plans'] = []; - } - array_push($data[$debt_plan->patient_id]['thirty_one_to_sixty_debt_plans'], ["id" => $debt_plan->id, "balance" => $balance, "created_at" => $debt_plan->created_at, "staff_guarantor" => $debt_plan->staff_guarantor, "authorised_by" => $debt_plan->authorised_by, "category" => "thirty_one_to_sixty"]); - } elseif ($debt_plan->created_at < $today_minus_sixty && $debt_plan->created_at >= $today_minus_ninety) { - if (isset($data[$debt_plan->patient_id]['sixty_one_to_ninety'])) { - $data[$debt_plan->patient_id]['sixty_one_to_ninety'] += $balance; - } else { - $data[$debt_plan->patient_id]['sixty_one_to_ninety'] = $balance; - $data[$debt_plan->patient_id]['sixty_one_to_ninety_debt_plans'] = []; - } - array_push($data[$debt_plan->patient_id]['sixty_one_to_ninety_debt_plans'], ["id" => $debt_plan->id, "balance" => $balance, "created_at" => $debt_plan->created_at, "staff_guarantor" => $debt_plan->staff_guarantor, "authorised_by" => $debt_plan->authorised_by, "category" => "sixty_one_to_ninety"]); - } elseif ($debt_plan->created_at < $today_minus_ninety) { - if (isset($data[$debt_plan->patient_id]['ninety_one_and_over'])) { - $data[$debt_plan->patient_id]['ninety_one_and_over'] += $balance; - } else { - $data[$debt_plan->patient_id]['ninety_one_and_over'] = $balance; - $data[$debt_plan->patient_id]['ninety_one_and_over_debt_plans'] = []; - } - array_push($data[$debt_plan->patient_id]['ninety_one_and_over_debt_plans'], ["id" => $debt_plan->id, "balance" => $balance, "created_at" => $debt_plan->created_at, "staff_guarantor" => $debt_plan->staff_guarantor, "authorised_by" => $debt_plan->authorised_by, "category" => "ninety_one_and_over"]); - } - } - return $data; - } - - public function get_family_accounts_aging_report_data($family_accounts) - { - $data = []; - $today = Carbon::today()->toDateTimeString(); - $today_minus_thirty = Carbon::today()->subDays(30)->toDateTimeString(); - $today_minus_sixty = Carbon::today()->subDays(60)->toDateTimeString(); - $today_minus_ninety = Carbon::today()->subDays(90)->toDateTimeString(); - foreach ($family_accounts as $family_account) { - $balance = (int)$family_account->current_balance * -1; - if ($family_account->created_at >= $today) { - if (isset($data[$family_account->family_head_id]['current'])) { - $data[$family_account->family_head_id]['current'] += $balance; - } else { - $data[$family_account->family_head_id]['current'] = $balance; - $data[$family_account->family_head_id]['current_family_accounts'] = []; - } - array_push($data[$family_account->family_head_id]['current_family_accounts'], ["id" => $family_account->id, "balance" => $balance, "created_at" => $family_account->created_at, "created_by" => $family_account->created_by, "family_head_id" => $family_account->family_head_id, "category" => "current"]); - } elseif ($family_account->created_at < $today && $family_account->created_at >= $today_minus_thirty) { - if (isset($data[$family_account->family_head_id]['one_to_thirty'])) { - $data[$family_account->family_head_id]['one_to_thirty'] += $balance; - } else { - $data[$family_account->family_head_id]['one_to_thirty'] = $balance; - $data[$family_account->family_head_id]['one_to_thirty_family_accounts'] = []; - } - array_push($data[$family_account->family_head_id]['one_to_thirty_family_accounts'], ["id" => $family_account->id, "balance" => $balance, "created_at" => $family_account->created_at, "created_by" => $family_account->created_by, "family_head_id" => $family_account->family_head_id, "category" => "one_to_thirty"]); - } elseif ($family_account->created_at < $today_minus_thirty && $family_account->created_at >= $today_minus_sixty) { - if (isset($data[$family_account->family_head_id]['thirty_one_to_sixty'])) { - $data[$family_account->family_head_id]['thirty_one_to_sixty'] += $balance; - } else { - $data[$family_account->family_head_id]['thirty_one_to_sixty'] = $balance; - $data[$family_account->family_head_id]['thirty_one_to_sixty_family_accounts'] = []; - } - array_push($data[$family_account->family_head_id]['thirty_one_to_sixty_family_accounts'], ["id" => $family_account->id, "balance" => $balance, "created_at" => $family_account->created_at, "created_by" => $family_account->created_by, "family_head_id" => $family_account->family_head_id, "category" => "thirty_one_to_sixty"]); - } elseif ($family_account->created_at < $today_minus_sixty && $family_account->created_at >= $today_minus_ninety) { - if (isset($data[$family_account->family_head_id]['sixty_one_to_ninety'])) { - $data[$family_account->family_head_id]['sixty_one_to_ninety'] += $balance; - } else { - $data[$family_account->family_head_id]['sixty_one_to_ninety'] = $balance; - $data[$family_account->family_head_id]['sixty_one_to_ninety_family_accounts'] = []; - } - array_push($data[$family_account->family_head_id]['sixty_one_to_ninety_family_accounts'], ["id" => $family_account->id, "balance" => $balance, "created_at" => $family_account->created_at, "created_by" => $family_account->created_by, "family_head_id" => $family_account->family_head_id, "category" => "sixty_one_to_ninety"]); - } elseif ($family_account->created_at < $today_minus_ninety) { - if (isset($data[$family_account->family_head_id]['ninety_one_and_over'])) { - $data[$family_account->family_head_id]['ninety_one_and_over'] += $balance; - } else { - $data[$family_account->family_head_id]['ninety_one_and_over'] = $balance; - $data[$family_account->family_head_id]['ninety_one_and_over_family_accounts'] = []; - } - array_push($data[$family_account->family_head_id]['ninety_one_and_over_family_accounts'], ["id" => $family_account->id, "balance" => $balance, "created_at" => $family_account->created_at, "created_by" => $family_account->created_by, "family_head_id" => $family_account->family_head_id, "category" => "ninety_one_and_over"]); - } - } - return $data; - } - - public function print_accounts_receivable_aging_summary(Request $request) - { - $invoices_query = "SELECT * FROM patient_category_invoices WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) ORDER BY patient_category ASC"; - $invoices = DB::select($invoices_query); - - $debtors_query = "SELECT * FROM debtors WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL ORDER BY patient_id ASC"; - $debtors = DB::select($debtors_query); - - $debt_plans_query = "SELECT * FROM debt_plan WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL ORDER BY patient_id ASC"; - $debt_plans = DB::select($debt_plans_query); - - $family_accounts_query = "SELECT * FROM family_accounts WHERE deleted_at IS NULL AND current_balance < 0 ORDER BY id ASC"; - $family_accounts = DB::select($family_accounts_query); - - $data = [ - "data" => [ - 'invoices' => $this->get_invoices_aging_report_data($invoices), - 'debtors' => $this->get_debtors_aging_report_data($debtors), - 'debt_plans' => $this->get_debt_plans_aging_report_data($debt_plans), - 'family_accounts' => $this->get_family_accounts_aging_report_data($family_accounts), - ] - ]; - - $pdf = SnappyPDF::loadView("finance_reports::finance_reports/print_accounts_receivable_aging_summary", $data) - ->setOrientation('landscape') - ->setPaper('a4') - ->setOption('margin-bottom', 10) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline') - ->setOption('footer-right', '[page] of [toPage]'); - - return $pdf->inline('Accounts Receivable Aging Summary Report - ' . date("d-m-y h:ia") . '.pdf'); - } - - public function print_accounts_receivable_aging_detail(Request $request) - { - $debtors = []; - $debt_plans = []; - $family_accounts = []; - - $patient_category_id = $request->patient_category; - - if ($patient_category_id == 'All') { - $invoices_query = "SELECT * FROM patient_category_invoices WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) ORDER BY patient_category ASC"; - $invoices = DB::select($invoices_query); - - $debtors_query = "SELECT * FROM debtors WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL ORDER BY patient_id ASC"; - $debtors = DB::select($debtors_query); - - $debt_plans_query = "SELECT * FROM debt_plan WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL ORDER BY patient_id ASC"; - $debt_plans = DB::select($debt_plans_query); - - $family_accounts_query = "SELECT * FROM family_accounts WHERE deleted_at IS NULL AND current_balance < 0 ORDER BY id ASC"; - $family_accounts = DB::select($family_accounts_query); - } else if ($patient_category_id == 'Debtors') { - $debtors_query = "SELECT * FROM debtors WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL ORDER BY patient_id ASC"; - $debtors = DB::select($debtors_query); - } else if ($patient_category_id == 'DebtPlan') { - $debt_plans_query = "SELECT * FROM debt_plan WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL ORDER BY patient_id ASC"; - $debt_plans = DB::select($debt_plans_query); - } else if ($patient_category_id == 'Family') { - $family_accounts_query = "SELECT * FROM family_accounts WHERE deleted_at IS NULL AND current_balance < 0 ORDER BY id ASC"; - $family_accounts = DB::select($family_accounts_query); - } else if ($patient_category_id != null || $patient_category_id == '') { - $invoices_query = "SELECT * FROM patient_category_invoices WHERE deleted_at IS NULL AND patient_category = {$patient_category_id} AND (balance_remaining IS NULL OR balance_remaining > 0) ORDER BY id ASC"; - if ($patient_category_id == 0) { - $invoices_query = "SELECT * FROM patient_category_invoices WHERE deleted_at IS NULL AND patient_category IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) ORDER BY id ASC"; - } - $invoices = DB::select($invoices_query); - } - - $data = [ - "data" => [ - 'invoices' => $this->get_invoices_aging_report_data($invoices), - 'debtors' => $this->get_debtors_aging_report_data($debtors), - 'debt_plans' => $this->get_debt_plans_aging_report_data($debt_plans), - 'family_accounts' => $this->get_family_accounts_aging_report_data($family_accounts), - ] - ]; - - $pdf = SnappyPDF::loadView("finance_reports::finance_reports/print_accounts_receivable_aging_detail", $data) - ->setOrientation('landscape') - ->setPaper('a4') - ->setOption('margin-bottom', 10) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline') - ->setOption('footer-right', '[page] of [toPage]'); - - return $pdf->inline('Accounts Receivable Aging Detail Report - ' . date("d-m-y h:ia") . '.pdf'); - } - - public function patient_accounts_sales_details(Request $request) { - $staff_member = $request->user_id; - - if ($request->date_type == "yesterday") { - $end_date = Carbon::yesterday()->endOfDay(); - $start_date = Carbon::yesterday()->startOfDay(); - } else if ($request->date_type == "custom_date") { - $dates = explode("/", $request->dates); - $end_date = Carbon::parse($dates[0])->endOfDay(); - $start_date = Carbon::parse($dates[0])->startOfDay(); - } else if ($request->date_type == "custom_date_range") { - $dates = explode("/", $request->dates); - $end_date = Carbon::parse($dates[1])->endOfDay(); - $start_date = Carbon::parse($dates[0])->startOfDay(); - } else { - $end_date = Carbon::today()->endOfDay(); - $start_date = Carbon::today()->startOfDay(); - } - - - if ($staff_member == 0) { - $patient_consumptions = PatientAccountConsumption::whereBetween('created_at', [$start_date, $end_date])->get(); - } else { - $patient_consumptions = PatientAccountConsumption::whereBetween('created_at', [$start_date, $end_date])->where('created_by', $staff_member)->get(); - } - - $reg_date = $start_date; - - $patient_numbers = DB::table('patients')->orderBy('number')->distinct()->pluck('number'); - - return view('patient_discounts::patient_accounts.consumptions_report', compact('patient_consumptions', 'reg_date', 'start_date', 'end_date', 'patient_numbers')); - } - - public function patient_accounts_deposits_details(Request $request) { - $staff_member = $request->user_id; - - if ($request->date_type == "yesterday") { - $end_date = Carbon::yesterday()->endOfDay(); - $start_date = Carbon::yesterday()->startOfDay(); - } else if ($request->date_type == "custom_date") { - $dates = explode("/", $request->dates); - $end_date = Carbon::parse($dates[0])->endOfDay(); - $start_date = Carbon::parse($dates[0])->startOfDay(); - } else if ($request->date_type == "custom_date_range") { - $dates = explode("/", $request->dates); - $end_date = Carbon::parse($dates[1])->endOfDay(); - $start_date = Carbon::parse($dates[0])->startOfDay(); - } else { - $end_date = Carbon::today()->endOfDay(); - $start_date = Carbon::today()->startOfDay(); - } - - if ($staff_member == 0) { - $patient_deposits = PatientAccountsDeposit::whereBetween('created_at', [$start_date, $end_date])->get(); - } else { - $patient_deposits = PatientAccountsDeposit::whereBetween('created_at', [$start_date, $end_date])->where('created_by', $staff_member)->get(); - } - - $reg_date = $start_date; - - $patient_numbers = DB::table('patients')->orderBy('number')->distinct()->pluck('number'); - - return view('patient_discounts::patient_accounts.deposits_report', compact('patient_deposits', 'reg_date', 'start_date', 'end_date', 'patient_numbers')); - } - - public function direct_bank_deposits_details(Request $request) { - if ($request->date_type == "yesterday") { - $end = Carbon::yesterday()->endOfDay(); - $start = Carbon::yesterday()->startOfDay(); - } else if ($request->date_type == "custom_date") { - $dates = explode("/", $request->dates); - $end = Carbon::parse($dates[0])->endOfDay(); - $start = Carbon::parse($dates[0])->startOfDay(); - } else if ($request->date_type == "custom_date_range") { - $dates = explode("/", $request->dates); - $end = Carbon::parse($dates[1])->endOfDay(); - $start = Carbon::parse($dates[0])->startOfDay(); - } else { - $end = Carbon::today()->endOfDay(); - $start = Carbon::today()->startOfDay(); - } - - $filters = []; - - if ($request->user_id != 0) { - $filters[] = ['created_by', '=', $request->user_id]; - } - - $direct_deposits = DB::table('other_incomes') - ->whereNull('deleted_at') - ->where('deposit_memo', 'NOT LIKE', '%Stock reconciliation%') - ->whereBetween('deposit_date', [$start, $end]) - ->where($filters) - ->get(); - - return view('finance_reports::finance_reports.otherIncomes', compact('direct_deposits', 'start', 'end')); - } - - public function check_if_cash_is_direct_deposit(Request $request) - { - $cashier_income_id = $request->cashier_income_id; - $other_income_record = OtherIncome::where('received',$cashier_income_id)->first(); - if ($other_income_record) { - return true; - } - return false; - } - - public function delete_direct_deposit_from_cashier_income($id) - { - $track_receipt = new TrackReceipt; - $track_receipt->reason = "deduction from undeposited funds."; - $track_receipt->created_by = Auth::id(); - $track_receipt->save(); - $receipt_number = sprintf("%04u", $track_receipt->id); - - $received_cash = CashierIncome::where('id', $id)->first(); - if ($received_cash) { - $undeposited_funds_account_id = get_name("undeposited_funds", "slug", "id", "chart_of_accounts"); - //$latest_undeposited_funds_bank_record = get_latest_banking_record_based_on_transaction_date($undeposited_funds_account_id, Carbon::now()); - - //if cashier income has already been update with 'received' as null, the only link remaining with cashier_income and other_incomes table can only be with cashier_incomes.reason == other_incomes.deposit_memo, brought_by=created_by - $other_incomes = OtherIncome::where('received',$id)->get(); - if (count($other_incomes) > 0) { - foreach ($other_incomes as $record) { - $transaction_id_string = sprintf("%04u", $record->trans_id); //how banking table stores it using sprintf() - $bank_records = Banking::where('bank', $undeposited_funds_account_id) - ->where('trans_id', $transaction_id_string) - //->where('credit', $record->deposit_amount) - ->whereNull('deleted_at') - ->get(); - if (count($bank_records) > 0) { - foreach ($bank_records as $bank_record) { - $new_memo = $bank_record->memo . " (Deleted by " . get_name(Auth::id(), 'id', 'username', 'users') . ")"; - $bank_record->memo = $new_memo; - $bank_record->update(); - if ($bank_record->delete()) : - $orderByCreatedAtIfTransDateIsTheSame = "created_at ASC"; - $orderByIdIfTransDateIsTheSame = "id ASC"; - - $previous_bank_record = Banking::where('bank', $bank_record->bank) - ->whereNull('deleted_at') - ->where('trans_date', '<', $bank_record->trans_date) - ->orderBy('trans_date', 'asc') - ->orderByRaw($orderByCreatedAtIfTransDateIsTheSame) - ->orderByRaw($orderByIdIfTransDateIsTheSame) - ->first(); - - if ($previous_bank_record) { - update_banking_record_balances(Carbon::parse($previous_bank_record->trans_date)->toDateString(), $bank_record->bank, $previous_bank_record->id, $previous_bank_record->account_balance); - } else { - //there exists no previous record i.e what we deleted is the first bank record so let bal = - $balance_to_use_for_updating = 0;//$bank_record->account_balance; - update_banking_record_balances(Carbon::parse($bank_record->trans_date)->toDateString(), $bank_record->bank, $bank_record->id, $balance_to_use_for_updating); - } - flash("Money has been deleted successfully from Bank: " . get_name($bank_record->bank, 'id', 'name', 'chart_of_accounts'))->success(); - endif; - } - } - - //delete the money from the other_incomes table - $record->delete(); - } - } - - if ($received_cash->delete()) : - flash("Received direct income has been deducted from undeposited funds.")->success(); - endif; - } else{ - flash('Sorry, system could not find the received money')->error(); - } - return redirect()->route('finance_reports.received_cash'); - } - - public function clean_equities_transaction_date() - { - $equities = Equity::all(); - foreach ($equities as $equity) { - $equity->transaction_date = $equity->created_at; - $equity->update(); - - //pick the equity and update it with the journal date if it was journaled - if (str_contains($equity, 'Journal (')) { - $journal_number = getStringBetweenCharacters($equity->name,"(",")"); - $journal = Journal::find($journal_number); - if($journal){ - //update the equity record's transaction date with the date it was journaled - $equity->transaction_date = $journal->journal_date; - $equity->update(); - } - } - } - return "equities cleaned"; - } - - public function custom_debtors($category) { - $debtors = []; - - $today = Carbon::today()->toDateTimeString(); - $today_minus_thirty = Carbon::today()->subDays(30)->toDateTimeString(); - $today_minus_sixty = Carbon::today()->subDays(60)->toDateTimeString(); - $today_minus_ninety = Carbon::today()->subDays(90)->toDateTimeString(); - - $chart_of_account = get_name('accounts_receivables', 'slug', 'id', 'chart_of_accounts'); - $title = get_name($chart_of_account, 'id', 'name', 'chart_of_accounts'); - $title .= ' - (Debtors)'; - - switch ($category) { - case 'current_debtors': - $title .= " for today, the " . streamline_date($today); - $debtors_query = "SELECT * FROM debtors WHERE deleted_at IS NULL AND ((balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL) AND created_at >= '{$today}' ORDER BY patient_id ASC"; - $debtors = DB::select($debtors_query); - break; - - case 'one_to_thirty_debtors': - $title .= " from " . streamline_date($today_minus_thirty) . " to " . streamline_date($today); - $debtors_query = "SELECT * FROM debtors WHERE deleted_at IS NULL AND ((balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL) AND created_at BETWEEN '{$today_minus_thirty}' AND '{$today}' ORDER BY patient_id ASC"; - $debtors = DB::select($debtors_query); - break; - - case 'thirty_one_to_sixty_debtors': - $title .= " from " . streamline_date($today_minus_sixty) . " to " . streamline_date($today_minus_thirty); - $debtors_query = "SELECT * FROM debtors WHERE deleted_at IS NULL AND ((balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL) AND created_at BETWEEN '{$today_minus_sixty}' AND '{$today_minus_thirty}' ORDER BY patient_id ASC"; - $debtors = DB::select($debtors_query); - break; - - case 'sixty_one_to_ninety_debtors': - $title .= " from " . streamline_date($today_minus_ninety) . " to " . streamline_date($today_minus_sixty); - $debtors_query = "SELECT * FROM debtors WHERE deleted_at IS NULL AND ((balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL) AND created_at BETWEEN '{$today_minus_ninety}' AND '{$today_minus_sixty}' ORDER BY patient_id ASC"; - $debtors = DB::select($debtors_query); - break; - - case 'ninety_one_and_over_debtors': - $title .= " before " . streamline_date($today_minus_ninety); - $debtors_query = "SELECT * FROM debtors WHERE deleted_at IS NULL AND ((balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL) AND created_at < '{$today_minus_ninety}' ORDER BY patient_id ASC"; - $debtors = DB::select($debtors_query); - break; - } - - $table = 'accounts_receivables'; - $result['debtors'] = $debtors; - $result['patient_category_invoices'] = []; - $result['debt_plan'] = []; - $result['inpatient_bills'] = []; - - return view('finance_reports::finance_reports.accounts.accounts_receivables', compact('result', 'chart_of_account', 'title', 'table')); - } - - public function custom_debtor($debtor, $category) - { - $debtors = []; - $debtor = intval($debtor); - - $today = Carbon::today()->toDateTimeString(); - $today_minus_thirty = Carbon::today()->subDays(30)->toDateTimeString(); - $today_minus_sixty = Carbon::today()->subDays(60)->toDateTimeString(); - $today_minus_ninety = Carbon::today()->subDays(90)->toDateTimeString(); - - $chart_of_account = get_name('accounts_receivables', 'slug', 'id', 'chart_of_accounts'); - $title = get_name($chart_of_account, 'id', 'name', 'chart_of_accounts'); - $title .= ' - (Debtor) ' . get_full_name($debtor, 'id', 'first_name', 'last_name', 'patients') . ' '; - - switch ($category) { - case 'current': - $title .= " for today, the " . streamline_date($today); - $debtors_query = "SELECT * FROM debtors WHERE deleted_at IS NULL AND patient_id = {$debtor} AND ((balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL) AND created_at >= '{$today}' ORDER BY id ASC"; - if ($debtor == 0) { - $debtors_query = "SELECT * FROM debtors WHERE deleted_at IS NULL AND patient_id IS NULL AND ((balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL) AND created_at >= '{$today}' ORDER BY id ASC"; - } - $debtors = DB::select($debtors_query); - break; - - case 'one_to_thirty': - $title .= " from " . streamline_date($today_minus_thirty) . " to " . streamline_date($today); - $debtors_query = "SELECT * FROM debtors WHERE deleted_at IS NULL AND patient_id = {$debtor} AND ((balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL) AND created_at BETWEEN '{$today_minus_thirty}' AND '{$today}' ORDER BY id ASC"; - if ($debtor == 0) { - $debtors_query = "SELECT * FROM debtors WHERE deleted_at IS NULL AND patient_id IS NULL AND ((balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL) AND created_at BETWEEN '{$today_minus_thirty}' AND '{$today}' ORDER BY id ASC"; - } - $debtors = DB::select($debtors_query); - break; - - case 'thirty_one_to_sixty': - $title .= " from " . streamline_date($today_minus_sixty) . " to " . streamline_date($today_minus_thirty); - $debtors_query = "SELECT * FROM debtors WHERE deleted_at IS NULL AND patient_id = {$debtor} AND ((balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL) AND created_at BETWEEN '{$today_minus_sixty}' AND '{$today_minus_thirty}' ORDER BY id ASC"; - if ($debtor == 0) { - $debtors_query = "SELECT * FROM debtors WHERE deleted_at IS NULL AND patient_id IS NULL AND ((balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL) AND created_at BETWEEN '{$today_minus_sixty}' AND '{$today_minus_thirty}' ORDER BY id ASC"; - } - $debtors = DB::select($debtors_query); - break; - - case 'sixty_one_to_ninety': - $title .= " from " . streamline_date($today_minus_ninety) . " to " . streamline_date($today_minus_sixty); - $debtors_query = "SELECT * FROM debtors WHERE deleted_at IS NULL AND patient_id = {$debtor} AND ((balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL) AND created_at BETWEEN '{$today_minus_ninety}' AND '{$today_minus_sixty}' ORDER BY id ASC"; - if ($debtor == 0) { - $debtors_query = "SELECT * FROM debtors WHERE deleted_at IS NULL AND patient_id IS NULL AND ((balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL) AND created_at BETWEEN '{$today_minus_ninety}' AND '{$today_minus_sixty}' ORDER BY id ASC"; - } - $debtors = DB::select($debtors_query); - break; - - case 'ninety_one_and_over': - $title .= " before " . streamline_date($today_minus_ninety); - $debtors_query = "SELECT * FROM debtors WHERE deleted_at IS NULL AND patient_id = {$debtor} AND ((balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL) AND created_at < '{$today_minus_ninety}' ORDER BY id ASC"; - if ($debtor == 0) { - $debtors_query = "SELECT * FROM debtors WHERE deleted_at IS NULL AND patient_id IS NULL AND ((balance_remaining IS NULL OR balance_remaining > 0) OR amount_paid_off IS NULL) AND created_at < '{$today_minus_ninety}' ORDER BY id ASC"; - } - $debtors = DB::select($debtors_query); - break; - } - - $table = 'accounts_receivables'; - $result['debtors'] = $debtors; - $result['patient_category_invoices'] = []; - $result['debt_plan'] = []; - $result['inpatient_bills'] = []; - - return view('finance_reports::finance_reports.accounts.accounts_receivables', compact('result', 'chart_of_account', 'title', 'table')); - } - - public function custom_debt_plans($category) - { - $debt_plans = []; - - $today = Carbon::today()->toDateTimeString(); - $today_minus_thirty = Carbon::today()->subDays(30)->toDateTimeString(); - $today_minus_sixty = Carbon::today()->subDays(60)->toDateTimeString(); - $today_minus_ninety = Carbon::today()->subDays(90)->toDateTimeString(); - - $chart_of_account = get_name('accounts_receivables', 'slug', 'id', 'chart_of_accounts'); - $title = get_name($chart_of_account, 'id', 'name', 'chart_of_accounts'); - $title .= ' - (Debt Plans)'; - - switch ($category) { - case 'current': - $title .= " for today, the " . streamline_date($today); - $debt_plans_query = "SELECT * FROM debt_plan WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) AND created_at >= '{$today}' ORDER BY id ASC"; - $debt_plans = DB::select($debt_plans_query); - break; - - case 'one_to_thirty': - $title .= " from " . streamline_date($today_minus_thirty) . " to " . streamline_date($today); - $debt_plans_query = "SELECT * FROM debt_plan WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) AND created_at BETWEEN '{$today_minus_thirty}' AND '{$today}' ORDER BY id ASC"; - $debt_plans = DB::select($debt_plans_query); - break; - - case 'thirty_one_to_sixty': - $title .= " from " . streamline_date($today_minus_sixty) . " to " . streamline_date($today_minus_thirty); - $debt_plans_query = "SELECT * FROM debt_plan WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) AND created_at BETWEEN '{$today_minus_sixty}' AND '{$today_minus_thirty}' ORDER BY id ASC"; - $debt_plans = DB::select($debt_plans_query); - break; - - case 'sixty_one_to_ninety': - $title .= " from " . streamline_date($today_minus_ninety) . " to " . streamline_date($today_minus_sixty); - $debt_plans_query = "SELECT * FROM debt_plan WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) AND created_at BETWEEN '{$today_minus_ninety}' AND '{$today_minus_sixty}' ORDER BY id ASC"; - $debt_plans = DB::select($debt_plans_query); - break; - - case 'ninety_one_and_over': - $title .= " before " . streamline_date($today_minus_ninety); - $debt_plans_query = "SELECT * FROM debt_plan WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) AND created_at < '{$today_minus_ninety}' ORDER BY id ASC"; - $debt_plans = DB::select($debt_plans_query); - break; - } - - $table = 'accounts_receivables'; - $result['debt_plan'] = $debt_plans; - $result['patient_category_invoices'] = []; - $result['debtors'] = []; - $result['inpatient_bills'] = []; - - return view('finance_reports::finance_reports.accounts.accounts_receivables', compact('result', 'chart_of_account', 'title', 'table')); - } - - public function custom_debt_plan($patient_id, $category) - { - $debt_plans = []; - - $today = Carbon::today()->toDateTimeString(); - $today_minus_thirty = Carbon::today()->subDays(30)->toDateTimeString(); - $today_minus_sixty = Carbon::today()->subDays(60)->toDateTimeString(); - $today_minus_ninety = Carbon::today()->subDays(90)->toDateTimeString(); - - $chart_of_account = get_name('accounts_receivables', 'slug', 'id', 'chart_of_accounts'); - $title = get_name($chart_of_account, 'id', 'name', 'chart_of_accounts'); - $title .= ' - (Debt Plan) ' . get_full_name($patient_id, 'id', 'first_name', 'last_name', 'patients') . ' '; - - switch ($category) { - case 'current': - $title .= " for today, the " . streamline_date($today); - $debt_plans_query = "SELECT * FROM debt_plan WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) AND patient_id = {$patient_id} AND created_at >= '{$today}' ORDER BY id ASC"; - if ($patient_id == 0) { - $debt_plans_query = "SELECT * FROM debt_plan WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) AND patient_id IS NULL AND created_at >= '{$today}' ORDER BY id ASC"; - } - $debt_plans = DB::select($debt_plans_query); - break; - - case 'one_to_thirty': - $title .= " from " . streamline_date($today_minus_thirty) . " to " . streamline_date($today); - $debt_plans_query = "SELECT * FROM debt_plan WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) AND patient_id = {$patient_id} AND created_at BETWEEN '{$today_minus_thirty}' AND '{$today}' ORDER BY id ASC"; - if ($patient_id == 0) { - $debt_plans_query = "SELECT * FROM debt_plan WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) AND patient_id IS NULL AND created_at BETWEEN '{$today_minus_thirty}' AND '{$today}' ORDER BY id ASC"; - } - $debt_plans = DB::select($debt_plans_query); - break; - - case 'thirty_one_to_sixty': - $title .= " from " . streamline_date($today_minus_sixty) . " to " . streamline_date($today_minus_thirty); - $debt_plans_query = "SELECT * FROM debt_plan WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) AND patient_id = {$patient_id} AND created_at BETWEEN '{$today_minus_sixty}' AND '{$today_minus_thirty}' ORDER BY id ASC"; - if ($patient_id == 0) { - $debt_plans_query = "SELECT * FROM debt_plan WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) AND patient_id IS NULL AND created_at BETWEEN '{$today_minus_sixty}' AND '{$today_minus_thirty}' ORDER BY id ASC"; - } - $debt_plans = DB::select($debt_plans_query); - break; - - case 'sixty_one_to_ninety': - $title .= " from " . streamline_date($today_minus_ninety) . " to " . streamline_date($today_minus_sixty); - $debt_plans_query = "SELECT * FROM debt_plan WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) AND patient_id = {$patient_id} AND created_at BETWEEN '{$today_minus_ninety}' AND '{$today_minus_sixty}' ORDER BY id ASC"; - if ($patient_id == 0) { - $debt_plans_query = "SELECT * FROM debt_plan WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) AND patient_id IS NULL AND created_at BETWEEN '{$today_minus_ninety}' AND '{$today_minus_sixty}' ORDER BY id ASC"; - } - $debt_plans = DB::select($debt_plans_query); - break; - - case 'ninety_one_and_over': - $title .= " before " . streamline_date($today_minus_ninety); - $debt_plans_query = "SELECT * FROM debt_plan WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) AND patient_id = {$patient_id} AND created_at < '{$today_minus_ninety}' ORDER BY id ASC"; - if ($patient_id == 0) { - $debt_plans_query = "SELECT * FROM debt_plan WHERE deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) AND patient_id IS NULL AND created_at < '{$today_minus_ninety}' ORDER BY id ASC"; - } - $debt_plans = DB::select($debt_plans_query); - break; - } - - $table = 'accounts_receivables'; - $result['debt_plan'] = $debt_plans; - $result['patient_category_invoices'] = []; - $result['debtors'] = []; - $result['inpatient_bills'] = []; - - return view('finance_reports::finance_reports.accounts.accounts_receivables', compact('result', 'chart_of_account', 'title', 'table')); - } -} diff --git a/docker/statistics/Modules/FinanceReports/Providers/FinanceReportsServiceProvider.php b/docker/statistics/Modules/FinanceReports/Providers/FinanceReportsServiceProvider.php deleted file mode 100644 index c2e36a5a..00000000 --- a/docker/statistics/Modules/FinanceReports/Providers/FinanceReportsServiceProvider.php +++ /dev/null @@ -1,113 +0,0 @@ -registerTranslations(); - $this->registerConfig(); - $this->registerViews(); - $this->loadMigrationsFrom(module_path($this->moduleName, 'Database/Migrations')); - } - - /** - * Register the service provider. - * - * @return void - */ - public function register() - { - $this->app->register(RouteServiceProvider::class); - } - - /** - * Register config. - * - * @return void - */ - protected function registerConfig() - { - $this->publishes([ - module_path($this->moduleName, 'Config/config.php') => config_path($this->moduleNameLower . '.php'), - ], 'config'); - $this->mergeConfigFrom( - module_path($this->moduleName, 'Config/config.php'), $this->moduleNameLower - ); - } - - /** - * Register views. - * - * @return void - */ - public function registerViews() - { - $viewPath = resource_path('views/modules/' . $this->moduleNameLower); - - $sourcePath = module_path($this->moduleName, 'Resources/views'); - - $this->publishes([ - $sourcePath => $viewPath - ], ['views', $this->moduleNameLower . '-module-views']); - - $this->loadViewsFrom(array_merge($this->getPublishableViewPaths(), [$sourcePath]), $this->moduleNameLower); - } - - /** - * Register translations. - * - * @return void - */ - public function registerTranslations() - { - $langPath = resource_path('lang/modules/' . $this->moduleNameLower); - - if (is_dir($langPath)) { - $this->loadTranslationsFrom($langPath, $this->moduleNameLower); - $this->loadJsonTranslationsFrom($langPath); - } else { - $this->loadTranslationsFrom(module_path($this->moduleName, 'Resources/lang'), $this->moduleNameLower); - $this->loadJsonTranslationsFrom(module_path($this->moduleName, 'Resources/lang')); - } - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides() - { - return []; - } - - private function getPublishableViewPaths(): array - { - $paths = []; - foreach (\Config::get('view.paths') as $path) { - if (is_dir($path . '/modules/' . $this->moduleNameLower)) { - $paths[] = $path . '/modules/' . $this->moduleNameLower; - } - } - return $paths; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Providers/RouteServiceProvider.php b/docker/statistics/Modules/FinanceReports/Providers/RouteServiceProvider.php deleted file mode 100755 index ab0170ee..00000000 --- a/docker/statistics/Modules/FinanceReports/Providers/RouteServiceProvider.php +++ /dev/null @@ -1,68 +0,0 @@ -mapApiRoutes(); - $this->mapWebRoutes(); - } - - /** - * Define the "web" routes for the application. - * - * These routes all receive session state, CSRF protection, etc. - * - * @return void - */ - protected function mapWebRoutes() - { - Route::middleware('web') - ->namespace($this->namespace) - ->group(module_path('FinanceReports', '/Routes/web.php')); - } - - /** - * Define the "api" routes for the application. - * - * These routes are typically stateless. - * - * @return void - */ - protected function mapApiRoutes() - { - Route::prefix('api') - ->middleware('api') - ->namespace($this->namespace) - ->group(module_path('FinanceReports', '/Routes/api.php')); - } -} diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/accounts_payable_aging_detail.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/accounts_payable_aging_detail.blade.php deleted file mode 100755 index d1d31560..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/accounts_payable_aging_detail.blade.php +++ /dev/null @@ -1,301 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('finance_reports.accounts_payable_aging_detail') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    -
    -
    - {{ Form::open(['method'=>'post','route' => 'finance_reports.accounts_payable_aging_detail']) }} -
    -
    -
    - - -
    -
    - -
    -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success btn-rounded btn-block pull-right']) }} -
    -
    - -
    -
    - {{ Form::close() }} -
    - -
    - -
    - -
    -
    - {{ Form::open(['method'=>'post','route' => 'finance_reports.print_accounts_payable_aging_detail', 'target' => "_blank"]) }} - - {{ Form::hidden('vendor', $vendor_id) }} - - - - {{ Form::close() }} -
    -
    - -
    - -
    -
    -
    - -
    -
    -

    {{ $hospital_information->name }}

    -

    Aged Payables Detail

    -

    As of {{ Carbon\Carbon::today()->format('jS M, Y') }}

    -
    -
    - - - - - - - - - - - - - - - - - - @php - $current = $one_to_thirty = $thirty_one_to_sixty = $sixty_one_to_ninety = $ninety_one_and_over = 0; - @endphp - - @if($data) - @if(count($data) > 0) - @foreach($data as $vendor_id => $vendor_record) - @php - $vendor = get_name($vendor_id, 'id', 'name', 'suppliers'); - if ($vendor_id == null) { - $vendor_id = 0; - $vendor = "No Vendor"; - } - - $titles = array_keys($vendor_record); - $category_bills = []; - $_current = $_one_to_thirty = $_thirty_one_to_sixty = $_sixty_one_to_ninety = $_ninety_one_and_over = 0; - foreach ($titles as $title) { - switch ($title) { - case 'current': - $_current += isset($vendor_record[$title]) ? (int)$vendor_record[$title] : 0; - break; - case 'current_bills': - $category_bills = array_merge($category_bills, $vendor_record[$title]); - break; - case 'one_to_thirty': - $_one_to_thirty += isset($vendor_record[$title]) ? (int)$vendor_record[$title] : 0; - break; - case 'one_to_thirty_bills': - $category_bills = array_merge($category_bills, $vendor_record[$title]); - break; - case 'thirty_one_to_sixty': - $_thirty_one_to_sixty += isset($vendor_record[$title]) ? (int)$vendor_record[$title] : 0; - break; - case 'thirty_one_to_sixty_bills': - $category_bills = array_merge($category_bills, $vendor_record[$title]); - break; - case 'sixty_one_to_ninety': - $_sixty_one_to_ninety += isset($vendor_record[$title]) ? (int)$vendor_record[$title] : 0; - break; - case 'sixty_one_to_ninety_bills': - $category_bills = array_merge($category_bills, $vendor_record[$title]); - break; - case 'ninety_one_and_over': - $_ninety_one_and_over += isset($vendor_record[$title]) ? (int)$vendor_record[$title] : 0; - break; - case 'ninety_one_and_over_bills': - $category_bills = array_merge($category_bills, $vendor_record[$title]); - break; - } - } - $current += $_current; - $one_to_thirty += $_one_to_thirty; - $thirty_one_to_sixty += $_thirty_one_to_sixty; - $sixty_one_to_ninety += $_sixty_one_to_ninety; - $ninety_one_and_over += $_ninety_one_and_over; - $counter = 0; - @endphp - - - - - - @foreach($category_bills as $bill) - @php - $counter++; - $category = $bill['category']; - @endphp - - - - - - - - - - - - - @endforeach - - - - - - - - - - - - - - @endforeach - @endif - @endif - - - - - - - - - - - - - - - - -
    #Bill DateDue DateBill NumberBill MemoCurrent1 - 3031 - 6061 - 90>90
    {{ $vendor }}
    {{ $counter }}.@if ($bill['bill_date'] != null) {{ streamline_date($bill['bill_date']) }} @else N/A @endif@if ($bill['bill_due_date'] != null) {{ streamline_date($bill['bill_due_date']) }} @else N/A @endif{{ $bill['bill_number'] }}{{ $bill['bill_memo'] }} - @if($category == 'current') - @if($bill['balance'] > 0) - {{ ugandan_shillings($bill['balance']) }} - @else - {{ ugandan_shillings($bill['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'one_to_thirty') - @if($bill['balance'] > 0) - {{ ugandan_shillings($bill['balance']) }} - @else - {{ ugandan_shillings($bill['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'thirty_one_to_sixty') - @if($bill['balance'] > 0) - {{ ugandan_shillings($bill['balance']) }} - @else - {{ ugandan_shillings($bill['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'sixty_one_to_ninety') - @if($bill['balance'] > 0) - {{ ugandan_shillings($bill['balance']) }} - @else - {{ ugandan_shillings($bill['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'ninety_one_and_over') - @if($bill['balance'] > 0) - {{ ugandan_shillings($bill['balance']) }} - @else - {{ ugandan_shillings($bill['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif -
    Total {{ $vendor }}{{ ugandan_shillings($_current) }}{{ ugandan_shillings($_one_to_thirty) }}{{ ugandan_shillings($_thirty_one_to_sixty) }}{{ ugandan_shillings($_sixty_one_to_ninety) }}{{ ugandan_shillings($_ninety_one_and_over) }}
    Total{{ ugandan_shillings($current) }}{{ ugandan_shillings($one_to_thirty) }}{{ ugandan_shillings($thirty_one_to_sixty) }}{{ ugandan_shillings($sixty_one_to_ninety) }}{{ ugandan_shillings($ninety_one_and_over) }}
    -
    -
    -
    - -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/accounts_payable_aging_summary.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/accounts_payable_aging_summary.blade.php deleted file mode 100755 index afd348d9..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/accounts_payable_aging_summary.blade.php +++ /dev/null @@ -1,234 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('finance_reports.accounts_payable_aging_summary') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    - -
    -
    - -
    -
    - {{ Form::open(['method'=>'post','route' => 'finance_reports.print_accounts_payable_aging_summary', 'target' => "_blank"]) }} - - {{ Form::close() }} -
    -
    - -
    - -
    -
    -
    - -
    -
    -

    {{ $hospital_information->name }}

    -

    A/P Aging Summary

    -

    As of {{ Carbon\Carbon::today()->format('jS M, Y') }}

    -
    -
    - - - - - - - - - - - - - - - - @php - $count = 0; - $total = 0; - $current = 0; - $one_to_thirty = 0; - $thirty_one_to_sixty = 0; - $sixty_one_to_ninety = 0; - $ninety_one_and_over = 0; - @endphp - - @if($data) - @if(count($data) > 0) - @foreach($data as $vendor_id => $vendor_record) - @php - ++$count; - $vendor = get_name($vendor_id, 'id', 'name', 'suppliers'); - if ($vendor_id == null) { - $vendor_id = 0; - $vendor = "No Vendor"; - } - - $titles = array_keys($vendor_record); - $category_bills = []; - $_current = $_one_to_thirty = $_thirty_one_to_sixty = $_sixty_one_to_ninety = $_ninety_one_and_over = 0; - foreach ($titles as $title) { - switch ($title) { - case 'current': - $_current += isset($vendor_record[$title]) ? (int)$vendor_record[$title] : 0; - break; - case 'current_bills': - $category_bills = array_merge($category_bills, $vendor_record[$title]); - break; - case 'one_to_thirty': - $_one_to_thirty += isset($vendor_record[$title]) ? (int)$vendor_record[$title] : 0; - break; - case 'one_to_thirty_bills': - $category_bills = array_merge($category_bills, $vendor_record[$title]); - break; - case 'thirty_one_to_sixty': - $_thirty_one_to_sixty += isset($vendor_record[$title]) ? (int)$vendor_record[$title] : 0; - break; - case 'thirty_one_to_sixty_bills': - $category_bills = array_merge($category_bills, $vendor_record[$title]); - break; - case 'sixty_one_to_ninety': - $_sixty_one_to_ninety += isset($vendor_record[$title]) ? (int)$vendor_record[$title] : 0; - break; - case 'sixty_one_to_ninety_bills': - $category_bills = array_merge($category_bills, $vendor_record[$title]); - break; - case 'ninety_one_and_over': - $_ninety_one_and_over += isset($vendor_record[$title]) ? (int)$vendor_record[$title] : 0; - break; - case 'ninety_one_and_over_bills': - $category_bills = array_merge($category_bills, $vendor_record[$title]); - break; - } - } - $_total = $_current + $_one_to_thirty + $_thirty_one_to_sixty + $_sixty_one_to_ninety + $_ninety_one_and_over; - $current += $_current; - $one_to_thirty += $_one_to_thirty; - $thirty_one_to_sixty += $_thirty_one_to_sixty; - $sixty_one_to_ninety += $_sixty_one_to_ninety; - $ninety_one_and_over += $_ninety_one_and_over; - @endphp - - - - - - - - - - - @endforeach - @php - $total = $current + $one_to_thirty + $thirty_one_to_sixty + $sixty_one_to_ninety + $ninety_one_and_over; - @endphp - @endif - @endif - - - - - - - - - - - - - - -
    #VendorCurrent1 - 3031 - 6061 - 90>90Total
    {{ $count . "." }}{{ $vendor }} - @if($_current > 0) - {{ ugandan_shillings($_current) }} - @else - {{ ugandan_shillings($_current) }} - @endif - - @if($_one_to_thirty > 0) - {{ ugandan_shillings($_one_to_thirty) }} - @else - {{ ugandan_shillings($_one_to_thirty) }} - @endif - - @if($_thirty_one_to_sixty > 0) - {{ ugandan_shillings($_thirty_one_to_sixty) }} - @else - {{ ugandan_shillings($_thirty_one_to_sixty) }} - @endif - - @if($_sixty_one_to_ninety > 0) - {{ ugandan_shillings($_sixty_one_to_ninety) }} - @else - {{ ugandan_shillings($_sixty_one_to_ninety) }} - @endif - - @if($_ninety_one_and_over > 0) - {{ ugandan_shillings($_ninety_one_and_over) }} - @else - {{ ugandan_shillings($_ninety_one_and_over) }} - @endif - {{ ugandan_shillings($_total) }}
    Total{{ ugandan_shillings($current) }}{{ ugandan_shillings($one_to_thirty) }}{{ ugandan_shillings($thirty_one_to_sixty) }}{{ ugandan_shillings($sixty_one_to_ninety) }}{{ ugandan_shillings($ninety_one_and_over) }}{{ ugandan_shillings($total) }}
    -
    -
    -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/accounts_receivable_aging_detail.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/accounts_receivable_aging_detail.blade.php deleted file mode 100755 index e7eed6bf..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/accounts_receivable_aging_detail.blade.php +++ /dev/null @@ -1,984 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('finance_reports.accounts_receivable_aging_detail') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    -
    -
    - {{ Form::open(['method'=>'post','route' => 'finance_reports.accounts_receivable_aging_detail']) }} -
    -
    -
    - {{ Form::label('patient_category',__('finance.patient_category')) }} - -
    -
    - -
    -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success btn-rounded btn-block pull-right']) }} -
    -
    - -
    -
    - {{ Form::close() }} -
    - -
    - -
    - -
    -
    - {{ Form::open(['method'=>'post','route' => 'finance_reports.print_accounts_receivable_aging_detail', 'target' => "_blank"]) }} - - {{ Form::hidden('patient_category', $patient_category_id) }} - - - - {{ Form::close() }} -
    -
    - -
    - -
    -
    -
    - -
    -
    -

    {{ $hospital_information->name }}

    -

    Aged Receivables Detail

    -

    As of {{ Carbon\Carbon::today()->format('jS M, Y') }}

    - -
    Pay Later Categories
    -
    -
    - - - - - - - - - - - - - - - - - - @php - $total_generated = 0; - $current_generated = 0; - $one_to_thirty_generated = 0; - $thirty_one_to_sixty_generated = 0; - $sixty_one_to_ninety_generated = 0; - $ninety_one_and_over_generated = 0; - - $total_not_generated = 0; - $current_not_generated = 0; - $one_to_thirty_not_generated = 0; - $thirty_one_to_sixty_not_generated = 0; - $sixty_one_to_ninety_not_generated = 0; - $ninety_one_and_over_not_generated = 0; - @endphp - - @if($data['invoices']) - @if(count($data['invoices']) > 0) - @foreach($data['invoices'] as $patient_category_id => $patient_category_record) - @php - $patient_category = get_name($patient_category_id, 'id', 'name', 'patient_categories'); - if ($patient_category_id == null) { - $patient_category_id = 0; - $patient_category = "No Patient Category"; - } - - $titles = array_keys($patient_category_record); - $category_invoices_generated = []; - $category_invoices_not_generated = []; - $_current_generated = $_one_to_thirty_generated = $_thirty_one_to_sixty_generated = $_sixty_one_to_ninety_generated = $_ninety_one_and_over_generated = 0; - $_current_not_generated = $_one_to_thirty_not_generated = $_thirty_one_to_sixty_not_generated = $_sixty_one_to_ninety_not_generated = $_ninety_one_and_over_not_generated = 0; - foreach ($titles as $title) { - switch ($title) { - case 'current': - $_current_generated += isset($patient_category_record[$title]['generated']) ? (int)$patient_category_record[$title]['generated'] : 0; - $_current_not_generated += isset($patient_category_record[$title]['not_generated']) ? (int)$patient_category_record[$title]['not_generated'] : 0; - break; - case 'current_invoices': - $category_invoices_generated = array_merge($category_invoices_generated, $patient_category_record[$title]['generated']); - $category_invoices_not_generated = array_merge($category_invoices_not_generated, $patient_category_record[$title]['not_generated']); - break; - case 'one_to_thirty': - $_one_to_thirty_generated += isset($patient_category_record[$title]['generated']) ? (int)$patient_category_record[$title]['generated'] : 0; - $_one_to_thirty_not_generated += isset($patient_category_record[$title]['not_generated']) ? (int)$patient_category_record[$title]['not_generated'] : 0; - break; - case 'one_to_thirty_invoices': - $category_invoices_generated = array_merge($category_invoices_generated, $patient_category_record[$title]['generated']); - $category_invoices_not_generated = array_merge($category_invoices_not_generated, $patient_category_record[$title]['not_generated']); - break; - case 'thirty_one_to_sixty': - $_thirty_one_to_sixty_generated += isset($patient_category_record[$title]['generated']) ? (int)$patient_category_record[$title]['generated'] : 0; - $_thirty_one_to_sixty_not_generated += isset($patient_category_record[$title]['not_generated']) ? (int)$patient_category_record[$title]['not_generated'] : 0; - break; - case 'thirty_one_to_sixty_invoices': - $category_invoices_generated = array_merge($category_invoices_generated, $patient_category_record[$title]['generated']); - $category_invoices_not_generated = array_merge($category_invoices_not_generated, $patient_category_record[$title]['not_generated']); - break; - case 'sixty_one_to_ninety': - $_sixty_one_to_ninety_generated += isset($patient_category_record[$title]['generated']) ? (int)$patient_category_record[$title]['generated'] : 0; - $_sixty_one_to_ninety_not_generated += isset($patient_category_record[$title]['not_generated']) ? (int)$patient_category_record[$title]['not_generated'] : 0; - break; - case 'sixty_one_to_ninety_invoices': - $category_invoices_generated = array_merge($category_invoices_generated, $patient_category_record[$title]['generated']); - $category_invoices_not_generated = array_merge($category_invoices_not_generated, $patient_category_record[$title]['not_generated']); - break; - case 'ninety_one_and_over': - $_ninety_one_and_over_generated += isset($patient_category_record[$title]['generated']) ? (int)$patient_category_record[$title]['generated'] : 0; - $_ninety_one_and_over_not_generated += isset($patient_category_record[$title]['not_generated']) ? (int)$patient_category_record[$title]['not_generated'] : 0; - break; - case 'ninety_one_and_over_invoices': - $category_invoices_generated = array_merge($category_invoices_generated, $patient_category_record[$title]['generated']); - $category_invoices_not_generated = array_merge($category_invoices_not_generated, $patient_category_record[$title]['not_generated']); - break; - } - } - - $_total_generated = $_current_generated + $_one_to_thirty_generated + $_thirty_one_to_sixty_generated + $_sixty_one_to_ninety_generated + $_ninety_one_and_over_generated; - $current_generated += $_current_generated; - $one_to_thirty_generated += $_one_to_thirty_generated; - $thirty_one_to_sixty_generated += $_thirty_one_to_sixty_generated; - $sixty_one_to_ninety_generated += $_sixty_one_to_ninety_generated; - $ninety_one_and_over_generated += $_ninety_one_and_over_generated; - - $_total_not_generated = $_current_not_generated + $_one_to_thirty_not_generated + $_thirty_one_to_sixty_not_generated + $_sixty_one_to_ninety_not_generated + $_ninety_one_and_over_not_generated; - $current_not_generated += $_current_not_generated; - $one_to_thirty_not_generated += $_one_to_thirty_not_generated; - $thirty_one_to_sixty_not_generated += $_thirty_one_to_sixty_not_generated; - $sixty_one_to_ninety_not_generated += $_sixty_one_to_ninety_not_generated; - $ninety_one_and_over_not_generated += $_ninety_one_and_over_not_generated; - - $count_generated = 0; - $count_not_generated = 0; - @endphp - - - @if($_total_generated > 0) - - - - - - - @foreach($category_invoices_generated as $invoice) - @php - $count_generated++; - $category = $invoice['category']; - @endphp - @if($invoice['balance'] > 0) - - - - - - - - - - - - - @endif - @endforeach - - - - - - - - - - - - - - @endif - - - @if($_total_not_generated > 0) - - - - - - - @foreach($category_invoices_not_generated as $invoice) - @php - $count_not_generated++; - $category = $invoice['category']; - @endphp - @if($invoice['balance'] > 0) - - - - - - - - - - - - - @endif - @endforeach - - - - - - - - - - - - - - @endif - @endforeach - @php - $total_generated = $current_generated + $one_to_thirty_generated + $thirty_one_to_sixty_generated + $sixty_one_to_ninety_generated + $ninety_one_and_over_generated; - $total_not_generated = $current_not_generated + $one_to_thirty_not_generated + $thirty_one_to_sixty_not_generated + $sixty_one_to_ninety_not_generated + $ninety_one_and_over_not_generated; - @endphp - @endif - @endif - - - - - - - - - - - - - - - - -
    #PatientDate CreatedInvoice DateInvoice NumberCurrent1 - 3031 - 6061 - 90>90
    {{ $patient_category }} (Cummulative Invoice Generated)
    {{ $count_generated }}.{{ get_name($invoice['patient_id'], 'id', 'number', 'patients') . " - " . get_full_name($invoice['patient_id'], 'id', 'first_name', 'last_name', 'patients') }}@if ($invoice['created_at'] != null) {{ streamline_date($invoice['created_at']) }} @else N/A @endif@if ($invoice['invoice_date'] != null) {{ $invoice['invoice_date'] }} @else N/A @endif{{ $invoice['receipt_number'] }} - @if($category == 'current') - @if($invoice['balance'] > 0) - {{ ugandan_shillings($invoice['balance']) }} - @else - {{ ugandan_shillings($invoice['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'one_to_thirty') - @if($invoice['balance'] > 0) - {{ ugandan_shillings($invoice['balance']) }} - @else - {{ ugandan_shillings($invoice['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'thirty_one_to_sixty') - @if($invoice['balance'] > 0) - {{ ugandan_shillings($invoice['balance']) }} - @else - {{ ugandan_shillings($invoice['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'sixty_one_to_ninety') - @if($invoice['balance'] > 0) - {{ ugandan_shillings($invoice['balance']) }} - @else - {{ ugandan_shillings($invoice['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'ninety_one_and_over') - @if($invoice['balance'] > 0) - {{ ugandan_shillings($invoice['balance']) }} - @else - {{ ugandan_shillings($invoice['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif -
    Total {{ $patient_category }} (Cummulative Invoice Generated){{ ugandan_shillings($_current_generated) }}{{ ugandan_shillings($_one_to_thirty_generated) }}{{ ugandan_shillings($_thirty_one_to_sixty_generated) }}{{ ugandan_shillings($_sixty_one_to_ninety_generated) }}{{ ugandan_shillings($_ninety_one_and_over_generated) }}
    {{ $patient_category }} (Cummulative Invoice Not Generated)
    {{ $count_not_generated }}.{{ get_name($invoice['patient_id'], 'id', 'number', 'patients') . " - " . get_full_name($invoice['patient_id'], 'id', 'first_name', 'last_name', 'patients') }}@if ($invoice['created_at'] != null) {{ streamline_date($invoice['created_at']) }} @else N/A @endif@if ($invoice['invoice_date'] != null) {{ $invoice['invoice_date'] }} @else N/A @endif{{ $invoice['receipt_number'] }} - @if($category == 'current') - @if($invoice['balance'] > 0) - {{ ugandan_shillings($invoice['balance']) }} - @else - {{ ugandan_shillings($invoice['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'one_to_thirty') - @if($invoice['balance'] > 0) - {{ ugandan_shillings($invoice['balance']) }} - @else - {{ ugandan_shillings($invoice['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'thirty_one_to_sixty') - @if($invoice['balance'] > 0) - {{ ugandan_shillings($invoice['balance']) }} - @else - {{ ugandan_shillings($invoice['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'sixty_one_to_ninety') - @if($invoice['balance'] > 0) - {{ ugandan_shillings($invoice['balance']) }} - @else - {{ ugandan_shillings($invoice['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'ninety_one_and_over') - @if($invoice['balance'] > 0) - {{ ugandan_shillings($invoice['balance']) }} - @else - {{ ugandan_shillings($invoice['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif -
    Total {{ $patient_category }} (Cummulative Invoice Not Generated){{ ugandan_shillings($_current_not_generated) }}{{ ugandan_shillings($_one_to_thirty_not_generated) }}{{ ugandan_shillings($_thirty_one_to_sixty_not_generated) }}{{ ugandan_shillings($_sixty_one_to_ninety_not_generated) }}{{ ugandan_shillings($_ninety_one_and_over_not_generated) }}
    Total{{ ugandan_shillings($current_generated + $current_not_generated) }}{{ ugandan_shillings($one_to_thirty_generated + $one_to_thirty_not_generated) }}{{ ugandan_shillings($thirty_one_to_sixty_generated + $thirty_one_to_sixty_not_generated) }}{{ ugandan_shillings($sixty_one_to_ninety_generated + $sixty_one_to_ninety_not_generated) }}{{ ugandan_shillings($ninety_one_and_over_generated + $ninety_one_and_over_not_generated) }}
    -
    - - -
    -
    Debtors
    -
    -
    - - - - - - - - - - - - - - - - - @php - $count_debtors = 0; - $total_debtors = 0; - $current_debtors = 0; - $one_to_thirty_debtors = 0; - $thirty_one_to_sixty_debtors = 0; - $sixty_one_to_ninety_debtors = 0; - $ninety_one_and_over_debtors = 0; - @endphp - @if($data['debtors']) - @if(count($data['debtors']) > 0) - @foreach($data['debtors'] as $debtor_id => $debtor_record) - @php - $debtor_name = get_full_name($debtor_id, 'id', 'first_name', 'last_name', 'patients'); - $debtor_identifier = get_name($debtor_id, 'id', 'number', 'patients'); - if ($debtor_id == null) { - $debtor_id = 0; - $debtor_name = "No Patient"; - $debtor_identifier = "#"; - } - - $titles_debtors = array_keys($debtor_record); - $category_debtors = []; - $_current_debtors = $_one_to_thirty_debtors = $_thirty_one_to_sixty_debtors = $_sixty_one_to_ninety_debtors = $_ninety_one_and_over_debtors = 0; - foreach ($titles_debtors as $title) { - switch ($title) { - case 'current': - $_current_debtors += isset($debtor_record[$title]) ? (int)$debtor_record[$title] : 0; - break; - case 'current_debtors': - $category_debtors = array_merge($category_debtors, $debtor_record[$title]); - break; - case 'one_to_thirty': - $_one_to_thirty_debtors += isset($debtor_record[$title]) ? (int)$debtor_record[$title] : 0; - break; - case 'one_to_thirty_debtors': - $category_debtors = array_merge($category_debtors, $debtor_record[$title]); - break; - case 'thirty_one_to_sixty': - $_thirty_one_to_sixty_debtors += isset($debtor_record[$title]) ? (int)$debtor_record[$title] : 0; - break; - case 'thirty_one_to_sixty_debtors': - $category_debtors = array_merge($category_debtors, $debtor_record[$title]); - break; - case 'sixty_one_to_ninety': - $_sixty_one_to_ninety_debtors += isset($debtor_record[$title]) ? (int)$debtor_record[$title] : 0; - break; - case 'sixty_one_to_ninety_debtors': - $category_debtors = array_merge($category_debtors, $debtor_record[$title]); - break; - case 'ninety_one_and_over': - $_ninety_one_and_over_debtors += isset($debtor_record[$title]) ? (int)$debtor_record[$title] : 0; - break; - case 'ninety_one_and_over_debtors': - $category_debtors = array_merge($category_debtors, $debtor_record[$title]); - break; - } - } - $_total_debtors = $_current_debtors + $_one_to_thirty_debtors + $_thirty_one_to_sixty_debtors + $_sixty_one_to_ninety_debtors + $_ninety_one_and_over_debtors; - $current_debtors += $_current_debtors; - $one_to_thirty_debtors += $_one_to_thirty_debtors; - $thirty_one_to_sixty_debtors += $_thirty_one_to_sixty_debtors; - $sixty_one_to_ninety_debtors += $_sixty_one_to_ninety_debtors; - $ninety_one_and_over_debtors += $_ninety_one_and_over_debtors; - @endphp - - @foreach($category_debtors as $debtor) - @php - $count_debtors++; - $category = $debtor['category']; - @endphp - - - - - - - - - - - - - @endforeach - @endforeach - @endif - @endif - @php - $total_debtors = $current_debtors + $one_to_thirty_debtors + $thirty_one_to_sixty_debtors + $sixty_one_to_ninety_debtors + $ninety_one_and_over_debtors; - @endphp - - - - - - - - - - - - - - - -
    #DebtorDate CreatedStaffInvoice NumberCurrent1 - 3031 - 6061 - 90>90
    {{ $count_debtors . "." }}{{ $debtor_identifier }}@if ($debtor['created_at'] != null) {{ streamline_date($debtor['created_at']) }} @else N/A @endif@if ($debtor['created_by'] != null) {{ get_full_name($debtor['created_by'], 'id', 'first_name', 'last_name', 'users') }} @else N/A @endif{{ $debtor['receipt_number'] }} - @if($category == 'current') - @if($debtor['balance'] > 0) - {{ ugandan_shillings($debtor['balance']) }} - @else - {{ ugandan_shillings($debtor['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'one_to_thirty') - @if($debtor['balance'] > 0) - {{ ugandan_shillings($debtor['balance']) }} - @else - {{ ugandan_shillings($debtor['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'thirty_one_to_sixty') - @if($debtor['balance'] > 0) - {{ ugandan_shillings($debtor['balance']) }} - @else - {{ ugandan_shillings($debtor['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'sixty_one_to_ninety') - @if($debtor['balance'] > 0) - {{ ugandan_shillings($debtor['balance']) }} - @else - {{ ugandan_shillings($debtor['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'ninety_one_and_over') - @if($debtor['balance'] > 0) - {{ ugandan_shillings($debtor['balance']) }} - @else - {{ ugandan_shillings($debtor['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif -
    Total{{ ugandan_shillings($current_debtors) }}{{ ugandan_shillings($one_to_thirty_debtors) }}{{ ugandan_shillings($thirty_one_to_sixty_debtors) }}{{ ugandan_shillings($sixty_one_to_ninety_debtors) }}{{ ugandan_shillings($ninety_one_and_over_debtors) }}
    -
    - - -
    -
    Debt Plan
    -
    -
    - - - - - - - - - - - - - - - - - @php - $count_debt_plans = 0; - $total_debt_plans = 0; - $current_debt_plans = 0; - $one_to_thirty_debt_plans = 0; - $thirty_one_to_sixty_debt_plans = 0; - $sixty_one_to_ninety_debt_plans = 0; - $ninety_one_and_over_debt_plans = 0; - @endphp - @if($data['debt_plans']) - @if(count($data['debt_plans']) > 0) - @foreach($data['debt_plans'] as $patient_id => $debt_plan_record) - @php - $patient_name = get_full_name($patient_id, 'id', 'first_name', 'last_name', 'patients'); - $patient_number = get_name($patient_id, 'id', 'number', 'patients'); - if ($patient_id == null) { - $patient_id = 0; - $patient_name = "No Patient"; - $patient_number = "#"; - } - - $titles_debt_plans = array_keys($debt_plan_record); - $category_debt_plans = []; - $_current_debt_plans = $_one_to_thirty_debt_plans = $_thirty_one_to_sixty_debt_plans = $_sixty_one_to_ninety_debt_plans = $_ninety_one_and_over_debt_plans = 0; - foreach ($titles_debt_plans as $title) { - switch ($title) { - case 'current': - $_current_debt_plans += isset($debt_plan_record[$title]) ? (int)$debt_plan_record[$title] : 0; - break; - case 'current_debt_plans': - $category_debt_plans = array_merge($category_debt_plans, $debt_plan_record[$title]); - break; - case 'one_to_thirty': - $_one_to_thirty_debt_plans += isset($debt_plan_record[$title]) ? (int)$debt_plan_record[$title] : 0; - break; - case 'one_to_thirty_debt_plans': - $category_debt_plans = array_merge($category_debt_plans, $debt_plan_record[$title]); - break; - case 'thirty_one_to_sixty': - $_thirty_one_to_sixty_debt_plans += isset($debt_plan_record[$title]) ? (int)$debt_plan_record[$title] : 0; - break; - case 'thirty_one_to_sixty_debt_plans': - $category_debt_plans = array_merge($category_debt_plans, $debt_plan_record[$title]); - break; - case 'sixty_one_to_ninety': - $_sixty_one_to_ninety_debt_plans += isset($debt_plan_record[$title]) ? (int)$debt_plan_record[$title] : 0; - break; - case 'sixty_one_to_ninety_debt_plans': - $category_debt_plans = array_merge($category_debt_plans, $debt_plan_record[$title]); - break; - case 'ninety_one_and_over': - $_ninety_one_and_over_debt_plans += isset($debt_plan_record[$title]) ? (int)$debt_plan_record[$title] : 0; - break; - case 'ninety_one_and_over_debt_plans': - $category_debt_plans = array_merge($category_debt_plans, $debt_plan_record[$title]); - break; - } - } - $_total_debt_plans = $_current_debt_plans + $_one_to_thirty_debt_plans + $_thirty_one_to_sixty_debt_plans + $_sixty_one_to_ninety_debt_plans + $_ninety_one_and_over_debt_plans; - $current_debt_plans += $_current_debt_plans; - $one_to_thirty_debt_plans += $_one_to_thirty_debt_plans; - $thirty_one_to_sixty_debt_plans += $_thirty_one_to_sixty_debt_plans; - $sixty_one_to_ninety_debt_plans += $_sixty_one_to_ninety_debt_plans; - $ninety_one_and_over_debt_plans += $_ninety_one_and_over_debt_plans; - @endphp - - @foreach($category_debt_plans as $debt_plan) - @php - $count_debt_plans++; - $category = $debt_plan['category']; - @endphp - - - - - - - - - - - - - @endforeach - @endforeach - @endif - @endif - @php - $total_debt_plans = $current_debt_plans + $one_to_thirty_debt_plans + $thirty_one_to_sixty_debt_plans + $sixty_one_to_ninety_debt_plans + $ninety_one_and_over_debt_plans; - @endphp - - - - - - - - - - - - - - - -
    #Debt Plan PatientDate CreatedStaff GuarantorAuthorised ByCurrent1 - 3031 - 6061 - 90>90
    {{ $count_debt_plans . "." }}{{ $patient_number }}@if ($debt_plan['created_at'] != null) {{ streamline_date($debt_plan['created_at']) }} @else N/A @endif@if ($debt_plan['staff_guarantor'] != null) {{ get_full_name($debt_plan['staff_guarantor'], 'id', 'first_name', 'last_name', 'users') }} @else N/A @endif@if ($debt_plan['authorised_by'] != null) {{ get_full_name($debt_plan['authorised_by'], 'id', 'first_name', 'last_name', 'users') }} @else N/A @endif - @if($category == 'current') - @if($debt_plan['balance'] > 0) - {{ ugandan_shillings($debt_plan['balance']) }} - @else - {{ ugandan_shillings($debt_plan['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'one_to_thirty') - @if($debt_plan['balance'] > 0) - {{ ugandan_shillings($debt_plan['balance']) }} - @else - {{ ugandan_shillings($debt_plan['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'thirty_one_to_sixty') - @if($debt_plan['balance'] > 0) - {{ ugandan_shillings($debt_plan['balance']) }} - @else - {{ ugandan_shillings($debt_plan['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'sixty_one_to_ninety') - @if($debt_plan['balance'] > 0) - {{ ugandan_shillings($debt_plan['balance']) }} - @else - {{ ugandan_shillings($debt_plan['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'ninety_one_and_over') - @if($debt_plan['balance'] > 0) - {{ ugandan_shillings($debt_plan['balance']) }} - @else - {{ ugandan_shillings($debt_plan['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif -
    Total{{ ugandan_shillings($current_debt_plans) }}{{ ugandan_shillings($one_to_thirty_debt_plans) }}{{ ugandan_shillings($thirty_one_to_sixty_debt_plans) }}{{ ugandan_shillings($sixty_one_to_ninety_debt_plans) }}{{ ugandan_shillings($ninety_one_and_over_debt_plans) }}
    -
    - - -
    -
    Family Accounts
    -
    -
    - - - - - - - - - - - - - - - - - @php - $count_family_accounts = 0; - $total_family_accounts = 0; - $current_family_accounts = 0; - $one_to_thirty_family_accounts = 0; - $thirty_one_to_sixty_family_accounts = 0; - $sixty_one_to_ninety_family_accounts = 0; - $ninety_one_and_over_family_accounts = 0; - @endphp - @if($data['family_accounts']) - @if(count($data['family_accounts']) > 0) - @foreach($data['family_accounts'] as $patient_id => $family_account_record) - @php - $patient_name = get_full_name($patient_id, 'id', 'first_name', 'last_name', 'patients'); - $patient_number = get_name($patient_id, 'id', 'number', 'patients'); - $patient_phone = get_name($patient_id, 'id', 'phone', 'patients'); - if ($patient_id == null) { - $patient_id = 0; - $patient_name = "No Patient"; - $patient_number = "#"; - $patient_phone = "#"; - } - - $titles_family_accounts = array_keys($family_account_record); - $category_family_accounts = []; - $_current_family_accounts = $_one_to_thirty_family_accounts = $_thirty_one_to_sixty_family_accounts = $_sixty_one_to_ninety_family_accounts = $_ninety_one_and_over_family_accounts = 0; - foreach ($titles_family_accounts as $title) { - switch ($title) { - case 'current': - $_current_family_accounts += isset($family_account_record[$title]) ? (int)$family_account_record[$title] : 0; - break; - case 'current_family_accounts': - $category_family_accounts = array_merge($category_family_accounts, $family_account_record[$title]); - break; - case 'one_to_thirty': - $_one_to_thirty_family_accounts += isset($family_account_record[$title]) ? (int)$family_account_record[$title] : 0; - break; - case 'one_to_thirty_family_accounts': - $category_family_accounts = array_merge($category_family_accounts, $family_account_record[$title]); - break; - case 'thirty_one_to_sixty': - $_thirty_one_to_sixty_family_accounts += isset($family_account_record[$title]) ? (int)$family_account_record[$title] : 0; - break; - case 'thirty_one_to_sixty_family_accounts': - $category_family_accounts = array_merge($category_family_accounts, $family_account_record[$title]); - break; - case 'sixty_one_to_ninety': - $_sixty_one_to_ninety_family_accounts += isset($family_account_record[$title]) ? (int)$family_account_record[$title] : 0; - break; - case 'sixty_one_to_ninety_family_accounts': - $category_family_accounts = array_merge($category_family_accounts, $family_account_record[$title]); - break; - case 'ninety_one_and_over': - $_ninety_one_and_over_family_accounts += isset($family_account_record[$title]) ? (int)$family_account_record[$title] : 0; - break; - case 'ninety_one_and_over_family_accounts': - $category_family_accounts = array_merge($category_family_accounts, $family_account_record[$title]); - break; - } - } - $_total_family_accounts = $_current_family_accounts + $_one_to_thirty_family_accounts + $_thirty_one_to_sixty_family_accounts + $_sixty_one_to_ninety_family_accounts + $_ninety_one_and_over_family_accounts; - $current_family_accounts += $_current_family_accounts; - $one_to_thirty_family_accounts += $_one_to_thirty_family_accounts; - $thirty_one_to_sixty_family_accounts += $_thirty_one_to_sixty_family_accounts; - $sixty_one_to_ninety_family_accounts += $_sixty_one_to_ninety_family_accounts; - $ninety_one_and_over_family_accounts += $_ninety_one_and_over_family_accounts; - @endphp - - @foreach($category_family_accounts as $family_account) - @php - $count_family_accounts++; - $category = $family_account['category']; - @endphp - - - - - - - - - - - - - @endforeach - @endforeach - @endif - @endif - @php - $total_family_accounts = $current_family_accounts + $one_to_thirty_family_accounts + $thirty_one_to_sixty_family_accounts + $sixty_one_to_ninety_family_accounts + $ninety_one_and_over_family_accounts; - @endphp - - - - - - - - - - - - - - - -
    #Family HeadPhoneDate CreatedCreated ByCurrent1 - 3031 - 6061 - 90>90
    {{ $count_family_accounts . "." }}{{ $patient_number . " - " . $patient_name }}{{ $patient_phone }}@if ($family_account['created_at'] != null) {{ streamline_date($family_account['created_at']) }} @else N/A @endif@if ($family_account['created_by'] != null) {{ get_full_name($family_account['created_by'], 'id', 'first_name', 'last_name', 'users') }} @else N/A @endif - @if($category == 'current') - @if($family_account['balance'] > 0) - {{ ugandan_shillings($family_account['balance']) }} - @else - {{ ugandan_shillings($family_account['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'one_to_thirty') - @if($family_account['balance'] > 0) - {{ ugandan_shillings($family_account['balance']) }} - @else - {{ ugandan_shillings($family_account['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'thirty_one_to_sixty') - @if($family_account['balance'] > 0) - {{ ugandan_shillings($family_account['balance']) }} - @else - {{ ugandan_shillings($family_account['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'sixty_one_to_ninety') - @if($family_account['balance'] > 0) - {{ ugandan_shillings($family_account['balance']) }} - @else - {{ ugandan_shillings($family_account['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'ninety_one_and_over') - @if($family_account['balance'] > 0) - {{ ugandan_shillings($family_account['balance']) }} - @else - {{ ugandan_shillings($family_account['balance']) }} - @endif - @else - {{ ugandan_shillings(0) }} - @endif -
    Total{{ ugandan_shillings($current_family_accounts) }}{{ ugandan_shillings($one_to_thirty_family_accounts) }}{{ ugandan_shillings($thirty_one_to_sixty_family_accounts) }}{{ ugandan_shillings($sixty_one_to_ninety_family_accounts) }}{{ ugandan_shillings($ninety_one_and_over_family_accounts) }}
    -
    -
    -
    - -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/accounts_receivable_aging_summary.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/accounts_receivable_aging_summary.blade.php deleted file mode 100755 index 8f0c00a9..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/accounts_receivable_aging_summary.blade.php +++ /dev/null @@ -1,761 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('finance_reports.accounts_receivable_aging_summary') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    - -
    -
    - -
    - -
    - -
    -
    - {{ Form::open(['method'=>'post','route' => 'finance_reports.print_accounts_receivable_aging_summary', 'target' => "_blank"]) }} - - {{ Form::close() }} -
    -
    - -
    - -
    -
    -
    - -
    -
    -

    {{ $hospital_information->name }}

    -

    A/R Aging Summary

    -

    As of {{ Carbon\Carbon::today()->format('jS M, Y') }}

    - -
    Pay Later Categories
    -
    -
    - - - - - - - - - - - - - - - - @php - $count = 0; - - $total_generated = 0; - $current_generated = 0; - $one_to_thirty_generated = 0; - $thirty_one_to_sixty_generated = 0; - $sixty_one_to_ninety_generated = 0; - $ninety_one_and_over_generated = 0; - - $total_not_generated = 0; - $current_not_generated = 0; - $one_to_thirty_not_generated = 0; - $thirty_one_to_sixty_not_generated = 0; - $sixty_one_to_ninety_not_generated = 0; - $ninety_one_and_over_not_generated = 0; - @endphp - - @if($data['invoices']) - @if(count($data['invoices']) > 0) - @foreach($data['invoices'] as $patient_category_id => $patient_category_record) - @php - $patient_category = get_name($patient_category_id, 'id', 'name', 'patient_categories'); - if ($patient_category_id == null) { - $patient_category_id = 0; - $patient_category = "No Patient Category"; - } - - $titles = array_keys($patient_category_record); - $category_invoices = []; - $_current_generated = $_one_to_thirty_generated = $_thirty_one_to_sixty_generated = $_sixty_one_to_ninety_generated = $_ninety_one_and_over_generated = 0; - $_current_not_generated = $_one_to_thirty_not_generated = $_thirty_one_to_sixty_not_generated = $_sixty_one_to_ninety_not_generated = $_ninety_one_and_over_not_generated = 0; - foreach ($titles as $title) { - switch ($title) { - case 'current': - $_current_generated += isset($patient_category_record[$title]['generated']) ? (int)$patient_category_record[$title]['generated'] : 0; - $_current_not_generated += isset($patient_category_record[$title]['not_generated']) ? (int)$patient_category_record[$title]['not_generated'] : 0; - break; - case 'current_invoices': - $category_invoices = array_merge($category_invoices, $patient_category_record[$title]); - break; - case 'one_to_thirty': - $_one_to_thirty_generated += isset($patient_category_record[$title]['generated']) ? (int)$patient_category_record[$title]['generated'] : 0; - $_one_to_thirty_not_generated += isset($patient_category_record[$title]['not_generated']) ? (int)$patient_category_record[$title]['not_generated'] : 0; - break; - case 'one_to_thirty_invoices': - $category_invoices = array_merge($category_invoices, $patient_category_record[$title]); - break; - case 'thirty_one_to_sixty': - $_thirty_one_to_sixty_generated += isset($patient_category_record[$title]['generated']) ? (int)$patient_category_record[$title]['generated'] : 0; - $_thirty_one_to_sixty_not_generated += isset($patient_category_record[$title]['not_generated']) ? (int)$patient_category_record[$title]['not_generated'] : 0; - break; - case 'thirty_one_to_sixty_invoices': - $category_invoices = array_merge($category_invoices, $patient_category_record[$title]); - break; - case 'sixty_one_to_ninety': - $_sixty_one_to_ninety_generated += isset($patient_category_record[$title]['generated']) ? (int)$patient_category_record[$title]['generated'] : 0; - $_sixty_one_to_ninety_not_generated += isset($patient_category_record[$title]['not_generated']) ? (int)$patient_category_record[$title]['not_generated'] : 0; - break; - case 'sixty_one_to_ninety_invoices': - $category_invoices = array_merge($category_invoices, $patient_category_record[$title]); - break; - case 'ninety_one_and_over': - $_ninety_one_and_over_generated += isset($patient_category_record[$title]['generated']) ? (int)$patient_category_record[$title]['generated'] : 0; - $_ninety_one_and_over_not_generated += isset($patient_category_record[$title]['not_generated']) ? (int)$patient_category_record[$title]['not_generated'] : 0; - break; - case 'ninety_one_and_over_invoices': - $category_invoices = array_merge($category_invoices, $patient_category_record[$title]); - break; - } - } - - $_total_generated = $_current_generated + $_one_to_thirty_generated + $_thirty_one_to_sixty_generated + $_sixty_one_to_ninety_generated + $_ninety_one_and_over_generated; - $current_generated += $_current_generated; - $one_to_thirty_generated += $_one_to_thirty_generated; - $thirty_one_to_sixty_generated += $_thirty_one_to_sixty_generated; - $sixty_one_to_ninety_generated += $_sixty_one_to_ninety_generated; - $ninety_one_and_over_generated += $_ninety_one_and_over_generated; - - $_total_not_generated = $_current_not_generated + $_one_to_thirty_not_generated + $_thirty_one_to_sixty_not_generated + $_sixty_one_to_ninety_not_generated + $_ninety_one_and_over_not_generated; - $current_not_generated += $_current_not_generated; - $one_to_thirty_not_generated += $_one_to_thirty_not_generated; - $thirty_one_to_sixty_not_generated += $_thirty_one_to_sixty_not_generated; - $sixty_one_to_ninety_not_generated += $_sixty_one_to_ninety_not_generated; - $ninety_one_and_over_not_generated += $_ninety_one_and_over_not_generated; - @endphp - - @if($_total_generated > 0) - @php ++$count; @endphp - - - - - - - - - - - @endif - - - @if($_total_not_generated > 0) - @php ++$count; @endphp - - - - - - - - - - - @endif - @endforeach - @php - $total_generated = $current_generated + $one_to_thirty_generated + $thirty_one_to_sixty_generated + $sixty_one_to_ninety_generated + $ninety_one_and_over_generated; - $total_not_generated = $current_not_generated + $one_to_thirty_not_generated + $thirty_one_to_sixty_not_generated + $sixty_one_to_ninety_not_generated + $ninety_one_and_over_not_generated; - @endphp - @endif - @endif - - - - - - - - - - - - - - -
    #Patient CategoryCurrent1 - 3031 - 6061 - 90>90Total
    {{ $count . "." }}{{ $patient_category }} (Cummulative Invoice Generated) - @if($_current_generated > 0) - {{ ugandan_shillings($_current_generated) }} - @else - {{ ugandan_shillings($_current_generated) }} - @endif - - @if($_one_to_thirty_generated > 0) - {{ ugandan_shillings($_one_to_thirty_generated) }} - @else - {{ ugandan_shillings($_one_to_thirty_generated) }} - @endif - - @if($_thirty_one_to_sixty_generated > 0) - {{ ugandan_shillings($_thirty_one_to_sixty_generated) }} - @else - {{ ugandan_shillings($_thirty_one_to_sixty_generated) }} - @endif - - @if($_sixty_one_to_ninety_generated > 0) - {{ ugandan_shillings($_sixty_one_to_ninety_generated) }} - @else - {{ ugandan_shillings($_sixty_one_to_ninety_generated) }} - @endif - - @if($_ninety_one_and_over_generated > 0) - {{ ugandan_shillings($_ninety_one_and_over_generated) }} - @else - {{ ugandan_shillings($_ninety_one_and_over_generated) }} - @endif - {{ ugandan_shillings($_total_generated) }}
    {{ $count . "." }}{{ $patient_category }} (Cummulative Invoice Not Generated) - @if($_current_not_generated > 0) - {{ ugandan_shillings($_current_not_generated) }} - @else - {{ ugandan_shillings($_current_not_generated) }} - @endif - - @if($_one_to_thirty_not_generated > 0) - {{ ugandan_shillings($_one_to_thirty_not_generated) }} - @else - {{ ugandan_shillings($_one_to_thirty_not_generated) }} - @endif - - @if($_thirty_one_to_sixty_not_generated > 0) - {{ ugandan_shillings($_thirty_one_to_sixty_not_generated) }} - @else - {{ ugandan_shillings($_thirty_one_to_sixty_not_generated) }} - @endif - - @if($_sixty_one_to_ninety_not_generated > 0) - {{ ugandan_shillings($_sixty_one_to_ninety_not_generated) }} - @else - {{ ugandan_shillings($_sixty_one_to_ninety_not_generated) }} - @endif - - @if($_ninety_one_and_over_not_generated > 0) - {{ ugandan_shillings($_ninety_one_and_over_not_generated) }} - @else - {{ ugandan_shillings($_ninety_one_and_over_not_generated) }} - @endif - {{ ugandan_shillings($_total_not_generated) }}
    Total{{ ugandan_shillings($current_generated + $current_not_generated) }}{{ ugandan_shillings($one_to_thirty_generated + $one_to_thirty_not_generated) }}{{ ugandan_shillings($thirty_one_to_sixty_generated + $thirty_one_to_sixty_not_generated) }}{{ ugandan_shillings($sixty_one_to_ninety_generated + $sixty_one_to_ninety_not_generated) }}{{ ugandan_shillings($ninety_one_and_over_generated + $ninety_one_and_over_not_generated) }}{{ ugandan_shillings($total_generated + $total_not_generated) }}
    -
    - - -
    -
    Debtors
    -
    -
    - - - - - - - - - - - - - - - @php - $count_debtors = 0; - $total_debtors = 0; - $current_debtors = 0; - $one_to_thirty_debtors = 0; - $thirty_one_to_sixty_debtors = 0; - $sixty_one_to_ninety_debtors = 0; - $ninety_one_and_over_debtors = 0; - @endphp - @if($data['debtors']) - @if(count($data['debtors']) > 0) - @foreach($data['debtors'] as $debtor_id => $debtor_record) - @php - $debtor = get_full_name($debtor_id, 'id', 'first_name', 'last_name', 'patients'); - $debtor_identifier = get_name($debtor_id, 'id', 'number', 'patients'); - if ($debtor_id == null) { - $debtor_id = 0; - $debtor = "No Patient"; - $debtor_identifier = "#"; - } - - $titles_debtors = array_keys($debtor_record); - $category_debtors = []; - $_current_debtors = $_one_to_thirty_debtors = $_thirty_one_to_sixty_debtors = $_sixty_one_to_ninety_debtors = $_ninety_one_and_over_debtors = 0; - foreach ($titles_debtors as $title) { - switch ($title) { - case 'current': - $_current_debtors += isset($debtor_record[$title]) ? (int)$debtor_record[$title] : 0; - break; - case 'current_debtors': - $category_debtors = array_merge($category_debtors, $debtor_record[$title]); - break; - case 'one_to_thirty': - $_one_to_thirty_debtors += isset($debtor_record[$title]) ? (int)$debtor_record[$title] : 0; - break; - case 'one_to_thirty_debtors': - $category_debtors = array_merge($category_debtors, $debtor_record[$title]); - break; - case 'thirty_one_to_sixty': - $_thirty_one_to_sixty_debtors += isset($debtor_record[$title]) ? (int)$debtor_record[$title] : 0; - break; - case 'thirty_one_to_sixty_debtors': - $category_debtors = array_merge($category_debtors, $debtor_record[$title]); - break; - case 'sixty_one_to_ninety': - $_sixty_one_to_ninety_debtors += isset($debtor_record[$title]) ? (int)$debtor_record[$title] : 0; - break; - case 'sixty_one_to_ninety_debtors': - $category_debtors = array_merge($category_debtors, $debtor_record[$title]); - break; - case 'ninety_one_and_over': - $_ninety_one_and_over_debtors += isset($debtor_record[$title]) ? (int)$debtor_record[$title] : 0; - break; - case 'ninety_one_and_over_debtors': - $category_debtors = array_merge($category_debtors, $debtor_record[$title]); - break; - } - } - $_total_debtors = $_current_debtors + $_one_to_thirty_debtors + $_thirty_one_to_sixty_debtors + $_sixty_one_to_ninety_debtors + $_ninety_one_and_over_debtors; - $current_debtors += $_current_debtors; - $one_to_thirty_debtors += $_one_to_thirty_debtors; - $thirty_one_to_sixty_debtors += $_thirty_one_to_sixty_debtors; - $sixty_one_to_ninety_debtors += $_sixty_one_to_ninety_debtors; - $ninety_one_and_over_debtors += $_ninety_one_and_over_debtors; - $count_debtors += count($category_debtors); - @endphp - @endforeach - @endif - - @php - $total_debtors = $current_debtors + $one_to_thirty_debtors + $thirty_one_to_sixty_debtors + $sixty_one_to_ninety_debtors + $ninety_one_and_over_debtors; - @endphp - - - - - - - - - - - - @endif - - - - - - - - - - - - - -
    #DebtorsCurrent1 - 3031 - 6061 - 90>90Total
    {{ $count_debtors }}{{ ugandan_shillings($current_debtors) }}{{ ugandan_shillings($one_to_thirty_debtors) }}{{ ugandan_shillings($thirty_one_to_sixty_debtors) }}{{ ugandan_shillings($sixty_one_to_ninety_debtors) }}{{ ugandan_shillings($ninety_one_and_over_debtors) }}{{ ugandan_shillings($total_debtors) }}
    Total - @if ($current_debtors > 0) - {{ ugandan_shillings($current_debtors) }} - @else - {{ ugandan_shillings($current_debtors) }} - @endif - - @if ($one_to_thirty_debtors > 0) - {{ ugandan_shillings($one_to_thirty_debtors) }} - @else - {{ ugandan_shillings($one_to_thirty_debtors) }} - @endif - - @if ($thirty_one_to_sixty_debtors > 0) - {{ ugandan_shillings($thirty_one_to_sixty_debtors) }} - @else - {{ ugandan_shillings($thirty_one_to_sixty_debtors) }} - @endif - - @if ($sixty_one_to_ninety_debtors > 0) - {{ ugandan_shillings($sixty_one_to_ninety_debtors) }} - @else - {{ ugandan_shillings($sixty_one_to_ninety_debtors) }} - @endif - - @if ($ninety_one_and_over_debtors > 0) - {{ ugandan_shillings($ninety_one_and_over_debtors) }} - @else - {{ ugandan_shillings($ninety_one_and_over_debtors) }} - @endif - {{ ugandan_shillings($total_debtors) }}
    -
    - - -
    -
    Debt Plan
    -
    -
    - - - - - - - - - - - - - - - @php - $count_debt_plans = 0; - $total_debt_plans = 0; - $current_debt_plans = 0; - $one_to_thirty_debt_plans = 0; - $thirty_one_to_sixty_debt_plans = 0; - $sixty_one_to_ninety_debt_plans = 0; - $ninety_one_and_over_debt_plans = 0; - @endphp - @if($data['debt_plans']) - @if(count($data['debt_plans']) > 0) - @foreach($data['debt_plans'] as $patient_id => $debt_plan_record) - @php - $patient_name = get_full_name($patient_id, 'id', 'first_name', 'last_name', 'patients'); - $patient_number = get_name($patient_id, 'id', 'number', 'patients'); - if ($patient_id == null) { - $patient_id = 0; - $patient_name = "No Patient"; - $patient_number = "#"; - } - - $titles_debt_plans = array_keys($debt_plan_record); - $category_debt_plans = []; - $_current_debt_plans = $_one_to_thirty_debt_plans = $_thirty_one_to_sixty_debt_plans = $_sixty_one_to_ninety_debt_plans = $_ninety_one_and_over_debt_plans = 0; - foreach ($titles_debt_plans as $title) { - switch ($title) { - case 'current': - $_current_debt_plans += isset($debt_plan_record[$title]) ? (int)$debt_plan_record[$title] : 0; - break; - case 'current_debt_plans': - $category_debt_plans = array_merge($category_debt_plans, $debt_plan_record[$title]); - break; - case 'one_to_thirty': - $_one_to_thirty_debt_plans += isset($debt_plan_record[$title]) ? (int)$debt_plan_record[$title] : 0; - break; - case 'one_to_thirty_debt_plans': - $category_debt_plans = array_merge($category_debt_plans, $debt_plan_record[$title]); - break; - case 'thirty_one_to_sixty': - $_thirty_one_to_sixty_debt_plans += isset($debt_plan_record[$title]) ? (int)$debt_plan_record[$title] : 0; - break; - case 'thirty_one_to_sixty_debt_plans': - $category_debt_plans = array_merge($category_debt_plans, $debt_plan_record[$title]); - break; - case 'sixty_one_to_ninety': - $_sixty_one_to_ninety_debt_plans += isset($debt_plan_record[$title]) ? (int)$debt_plan_record[$title] : 0; - break; - case 'sixty_one_to_ninety_debt_plans': - $category_debt_plans = array_merge($category_debt_plans, $debt_plan_record[$title]); - break; - case 'ninety_one_and_over': - $_ninety_one_and_over_debt_plans += isset($debt_plan_record[$title]) ? (int)$debt_plan_record[$title] : 0; - break; - case 'ninety_one_and_over_debt_plans': - $category_debt_plans = array_merge($category_debt_plans, $debt_plan_record[$title]); - break; - } - } - $_total_debt_plans = $_current_debt_plans + $_one_to_thirty_debt_plans + $_thirty_one_to_sixty_debt_plans + $_sixty_one_to_ninety_debt_plans + $_ninety_one_and_over_debt_plans; - $current_debt_plans += $_current_debt_plans; - $one_to_thirty_debt_plans += $_one_to_thirty_debt_plans; - $thirty_one_to_sixty_debt_plans += $_thirty_one_to_sixty_debt_plans; - $sixty_one_to_ninety_debt_plans += $_sixty_one_to_ninety_debt_plans; - $ninety_one_and_over_debt_plans += $_ninety_one_and_over_debt_plans; - $count_debt_plans += count($category_debt_plans); - @endphp - @endforeach - @endif - - @php - $total_debt_plans = $current_debt_plans + $one_to_thirty_debt_plans + $thirty_one_to_sixty_debt_plans + $sixty_one_to_ninety_debt_plans + $ninety_one_and_over_debt_plans; - @endphp - - - - - - - - - - - - @endif - - - - - - - - - - - - - -
    #Debt Plan PatientsCurrent1 - 3031 - 6061 - 90>90Total
    {{ $count_debt_plans }} - @if ($current_debt_plans > 0) - {{ ugandan_shillings($current_debt_plans) }} - @else - {{ ugandan_shillings($current_debt_plans) }} - @endif - - @if ($one_to_thirty_debt_plans > 0) - {{ ugandan_shillings($one_to_thirty_debt_plans) }} - @else - {{ ugandan_shillings($one_to_thirty_debt_plans) }} - @endif - - @if ($thirty_one_to_sixty_debt_plans > 0) - {{ ugandan_shillings($thirty_one_to_sixty_debt_plans) }} - @else - {{ ugandan_shillings($thirty_one_to_sixty_debt_plans) }} - @endif - - @if ($sixty_one_to_ninety_debt_plans > 0) - {{ ugandan_shillings($sixty_one_to_ninety_debt_plans) }} - @else - {{ ugandan_shillings($sixty_one_to_ninety_debt_plans) }} - @endif - - @if ($ninety_one_and_over_debt_plans > 0) - {{ ugandan_shillings($ninety_one_and_over_debt_plans) }} - @else - {{ ugandan_shillings($ninety_one_and_over_debt_plans) }} - @endif - {{ ugandan_shillings($total_debt_plans) }}
    Total{{ ugandan_shillings($current_debt_plans) }}{{ ugandan_shillings($one_to_thirty_debt_plans) }}{{ ugandan_shillings($thirty_one_to_sixty_debt_plans) }}{{ ugandan_shillings($sixty_one_to_ninety_debt_plans) }}{{ ugandan_shillings($ninety_one_and_over_debt_plans) }}{{ ugandan_shillings($total_debt_plans) }}
    -
    - - -
    -
    Family Accounts
    -
    -
    - - - - - - - - - - - - - - - @php - $count_family_accounts = 0; - $total_family_accounts = 0; - $current_family_accounts = 0; - $one_to_thirty_family_accounts = 0; - $thirty_one_to_sixty_family_accounts = 0; - $sixty_one_to_ninety_family_accounts = 0; - $ninety_one_and_over_family_accounts = 0; - @endphp - @if($data['family_accounts']) - @if(count($data['family_accounts']) > 0) - @foreach($data['family_accounts'] as $patient_id => $family_account_record) - @php - ++$count_family_accounts; - $patient_name = get_full_name($patient_id, 'id', 'first_name', 'last_name', 'patients'); - $patient_number = get_name($patient_id, 'id', 'number', 'patients'); - if ($patient_id == null) { - $patient_id = 0; - $patient_name = "No Patient"; - $patient_number = "#"; - } - - $titles_family_accounts = array_keys($family_account_record); - $category_family_accounts = []; - $_current_family_accounts = $_one_to_thirty_family_accounts = $_thirty_one_to_sixty_family_accounts = $_sixty_one_to_ninety_family_accounts = $_ninety_one_and_over_family_accounts = 0; - foreach ($titles_family_accounts as $title) { - switch ($title) { - case 'current': - $_current_family_accounts += isset($family_account_record[$title]) ? (int)$family_account_record[$title] : 0; - break; - case 'current_family_accounts': - $category_family_accounts = array_merge($category_family_accounts, $family_account_record[$title]); - break; - case 'one_to_thirty': - $_one_to_thirty_family_accounts += isset($family_account_record[$title]) ? (int)$family_account_record[$title] : 0; - break; - case 'one_to_thirty_family_accounts': - $category_family_accounts = array_merge($category_family_accounts, $family_account_record[$title]); - break; - case 'thirty_one_to_sixty': - $_thirty_one_to_sixty_family_accounts += isset($family_account_record[$title]) ? (int)$family_account_record[$title] : 0; - break; - case 'thirty_one_to_sixty_family_accounts': - $category_family_accounts = array_merge($category_family_accounts, $family_account_record[$title]); - break; - case 'sixty_one_to_ninety': - $_sixty_one_to_ninety_family_accounts += isset($family_account_record[$title]) ? (int)$family_account_record[$title] : 0; - break; - case 'sixty_one_to_ninety_family_accounts': - $category_family_accounts = array_merge($category_family_accounts, $family_account_record[$title]); - break; - case 'ninety_one_and_over': - $_ninety_one_and_over_family_accounts += isset($family_account_record[$title]) ? (int)$family_account_record[$title] : 0; - break; - case 'ninety_one_and_over_family_accounts': - $category_family_accounts = array_merge($category_family_accounts, $family_account_record[$title]); - break; - } - } - $_total_family_accounts = $_current_family_accounts + $_one_to_thirty_family_accounts + $_thirty_one_to_sixty_family_accounts + $_sixty_one_to_ninety_family_accounts + $_ninety_one_and_over_family_accounts; - $current_family_accounts += $_current_family_accounts; - $one_to_thirty_family_accounts += $_one_to_thirty_family_accounts; - $thirty_one_to_sixty_family_accounts += $_thirty_one_to_sixty_family_accounts; - $sixty_one_to_ninety_family_accounts += $_sixty_one_to_ninety_family_accounts; - $ninety_one_and_over_family_accounts += $_ninety_one_and_over_family_accounts; - @endphp - @endforeach - @endif - - @php - $total_family_accounts = $current_family_accounts + $one_to_thirty_family_accounts + $thirty_one_to_sixty_family_accounts + $sixty_one_to_ninety_family_accounts + $ninety_one_and_over_family_accounts; - @endphp - - - - - - - - - - - - @endif - - - - - - - - - - - - - -
    #Family HeadsCurrent1 - 3031 - 6061 - 90>90Total
    {{ $count_family_accounts }} - @if ($current_family_accounts > 0) - {{ ugandan_shillings($current_family_accounts) }} - @else - {{ ugandan_shillings($current_family_accounts) }} - @endif - - @if ($one_to_thirty_family_accounts > 0) - {{ ugandan_shillings($one_to_thirty_family_accounts) }} - @else - {{ ugandan_shillings($one_to_thirty_family_accounts) }} - @endif - - @if ($thirty_one_to_sixty_family_accounts > 0) - {{ ugandan_shillings($thirty_one_to_sixty_family_accounts) }} - @else - {{ ugandan_shillings($thirty_one_to_sixty_family_accounts) }} - @endif - - @if ($sixty_one_to_ninety_family_accounts > 0) - {{ ugandan_shillings($sixty_one_to_ninety_family_accounts) }} - @else - {{ ugandan_shillings($sixty_one_to_ninety_family_accounts) }} - @endif - - @if ($ninety_one_and_over_family_accounts > 0) - {{ ugandan_shillings($ninety_one_and_over_family_accounts) }} - @else - {{ ugandan_shillings($ninety_one_and_over_family_accounts) }} - @endif - {{ ugandan_shillings($total_family_accounts) }}
    Total{{ ugandan_shillings($current_family_accounts) }}{{ ugandan_shillings($one_to_thirty_family_accounts) }}{{ ugandan_shillings($thirty_one_to_sixty_family_accounts) }}{{ ugandan_shillings($sixty_one_to_ninety_family_accounts) }}{{ ugandan_shillings($ninety_one_and_over_family_accounts) }}{{ ugandan_shillings($total_family_accounts) }}
    -
    - -
    -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/accounts_receivables.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/accounts_receivables.blade.php deleted file mode 100755 index bd3fcdbc..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/accounts_receivables.blade.php +++ /dev/null @@ -1,344 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    Current Asset Accounts

    -
    -
    - -
    -
    - -
    -

    {{ $title }}

    - -
    -
    - -
    -
    -
    -
    - - - - - - - - - - - - - - - - @php $patient_categories_total_sum = 0; @endphp - - @foreach($result['patient_category_invoices'] as $item) - @php $tag_id = $item->tag_id; @endphp - - - - - - - - - - - @php $amount_paid = (is_null($item->balance_remaining)) ? $item->patient_amount : $item->balance_remaining;@endphp - - @php $patient_categories_total_sum += (int)$amount_paid; @endphp - - - @endforeach - - - - - - - - - - - - - - - -
    PatientPatient CategoryStaffDateInvoice NoReceipt NoItem NameItem AmountsAmount To Be Paid
    {{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ get_name ($item->patient_category, 'id', 'name' , 'patient_categories') }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item->transaction_date) }}{{ $item->invoice_number }}{{ $item->receipt_number }} - @if($tag_id == 6 || $tag_id == 8) - @php $items = explode(',', $item->items_ids); @endphp - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'services') }}
    - @endfor - @elseif($tag_id == 3) - @php $items = explode(',', $item->items_ids); @endphp - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'drugs') }}
    - @endfor - @elseif($tag_id == 4) - @php $items = explode(',', $item->items_ids); @endphp - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'procedures') }}
    - @endfor - @elseif($tag_id == 5) - @php $items = explode(',', $item->items_ids); @endphp - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'sundries') }}
    - @endfor - @elseif($tag_id == 2) - @php $items = explode(',', $item->items_ids); @endphp - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'investigations') }}
    - @endfor - @endif -
    - {{ ugandan_shillings((array_sum(explode(',',$item->items_amounts)))) }} - {{ ugandan_shillings($amount_paid) }}
    Total :{{ ugandan_shillings($patient_categories_total_sum) }}
    -
    -
    -
    -
    - - - - - - - - - - - - - @php $debtors_sum = 0; @endphp - - @foreach($result['debtors'] as $item) - - - - - - - @php $debtors_sum += ($amount_paid = (is_null($item->balance_remaining)) ? $item->balance : $item->balance_remaining);@endphp - - - - @endforeach - - - - - - - - - - - - -
    Patient NumberPatient NameStaffDateReceipt NoAmount To Be Paid
    {{ get_name($item->patient_id, 'id', 'number', 'patients') }}{{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item->created_at) }}{{ $item->receipt_number }}{{ ugandan_shillings($amount_paid) }}
    Total :{{ ugandan_shillings($debtors_sum) }}
    -
    -
    -
    -
    - - - - - - - - - - - - - @php $debt_plan_sum = 0; @endphp - - @foreach($result['debt_plan'] as $item) - - - - - - - - @php $debt_plan_sum += ($amount_paid = (is_null($item->balance_remaining)) ? ($item->staff_guarantor_to_pay > 0 ? $item->staff_guarantor_to_pay : $item->amount_owed) : $item->balance_remaining);@endphp - - - @endforeach - - - - - - - - - - - - -
    Patient NumberPatient NameStaff GuarantorAuthorised ByDateCommentAmount To Be Paid
    {{ get_name($item->patient_id, 'id', 'number', 'patients') }}{{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ get_full_name($item->staff_guarantor, 'id', 'first_name', 'last_name', 'users') }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item->created_at) }}{{ $item->comment }}{{ ugandan_shillings($amount_paid) }}
    Total :{{ ugandan_shillings($debt_plan_sum) }}
    -
    -
    -
    -
    - - - - - - - - - - - - @php $inpatient_sum = 0; @endphp - - @foreach($result['inpatient_bills'] as $item) - - - - - - - @php $inpatient_sum += $item->amount_to_pay; @endphp - - - @endforeach - - - - - - - - - - - -
    Patient NamesLast Updated ByLast Updated AtOriginal Amount To PayAmount PaidAmount To Be Paid
    {{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($item->patient_id, 'id', 'number', 'patients') }}){{ get_full_name($item->updated_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date_time($item->updated_at) }}{{ ugandan_shillings($item->original_bill) }}{{ ugandan_shillings($item->amount_paid) }}{{ ugandan_shillings($item->amount_to_pay) }}
    Total :{{ ugandan_shillings($inpatient_sum) }}
    -
    -
    -
    -
    -
    - -
    - -

    Totals

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - -
    Patient Categories Total{{ ugandan_shillings($patient_categories_total_sum) }}
    Debtors Total{{ ugandan_shillings($debtors_sum) }}
    Debt Plan Total{{ ugandan_shillings($debt_plan_sum) }}
    Inpatient Bills Total{{ ugandan_shillings($inpatient_sum) }}
    Total{{ ugandan_shillings($patient_categories_total_sum + $debtors_sum + $debt_plan_sum + $inpatient_sum) }}
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/banking.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/banking.blade.php deleted file mode 100755 index 4431a951..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/banking.blade.php +++ /dev/null @@ -1,165 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    Current Asset Accounts

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    -
    -
    - -

    {{ $title }}

    - -
    - -
    - - - - - - - - - - - - - - - @php $sum_credit = $sum_debit = $sum_balance = 0; @endphp - @if(count($result) > 0) - @foreach($result as $record) - @php - $sum_credit += $record->credit; - $sum_debit += $record->debit; - @endphp - - - - - - @php - $banks = explode(',',$record->bank); - $other_accounts = explode(',',$record->other_accounts); - @endphp - - - - @if($record->debit != 0) @else @endif - @if($record->credit != 0) @else @endif - - - @if($loop->last) - @php $sum_balance = $record->account_balance; @endphp - @endif - - @endforeach - @endif - - - - - - - - - - - - - -
    Transaction Date :Record Date :Staff In-Charge :TypeAccountMemoDebitCreditBalance
    {{ streamline_date($record->trans_date) }}{{ streamline_date_time($record->created_at) }}{{ get_full_name($record->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ $record->trans_type }} - @for($x = 0; $x < count($other_accounts); $x++) - {{ get_name($other_accounts[$x], 'id', 'name', 'chart_of_accounts') }}
    - @endfor -
    {{ $record->memo }}{{ ugandan_shillings($record->debit) }} - {{ ugandan_shillings($record->credit) }} - {{ ugandan_shillings($record->account_balance) }}
    - Current Running Balance - - {{ ugandan_shillings($sum_balance) }} -
    -
    -
    -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/cost_of_sales.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/cost_of_sales.blade.php deleted file mode 100755 index 74a042bb..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/cost_of_sales.blade.php +++ /dev/null @@ -1,598 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('finance_reports.cost_of_goods_accounts') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    - - -
    -
    - {{ Form::hidden('account', $chart_of_account, ['id'=>'account']) }} -
    - -
    -
    - -
    -
    -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success btn-rounded btn-block pull-right', 'id'=>'search_btn']) }} -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    - -

    {{ $title }}

    - - @if(count($result['treatment_deposits']) > 0) -
    -

    Treatments

    -
    -
    - - - - - - - - - - - - - - @php $sum = $accrual_sum = 0; @endphp - - @foreach($result['treatment_deposits'] as $item) - - - - - - - - - - - @php - $total_cost = 0; - $accrual_sum += $subtotal; - - if($patient_amount_paid == $total_amount){ - $total_cost = $subtotal; - $sum += $total_cost; - }else{ - $total_cost = ($subtotal > 0 && $patient_amount_paid > 0) ? (((int)$patient_amount_paid / $total_amount) * $subtotal) : 0; - $sum += $total_cost; - } - - @endphp - - - @endforeach - - - - - - - - - - - - - -
    {{ __('finance_reports.patient_name') }}{{ __('finance_reports.staff_member') }}{{ __('finance_reports.date') }}{{ __('finance_reports.item_name') }}{{ __('finance_reports.item_quantities') }}{{ __('finance_reports.cost_price') }}{{ __('finance_reports.patient_amount_paid') }}{{ __('finance_reports.sub_total') }}
    {{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item->created_at) }} - - @php $items = explode(',', $item->treatment_items); @endphp - @for($x = 0; $x < count($items); $x++) - {{ $drugs[$items[$x]] ?? '' }}
    - @endfor - -
    - - @php $quantities = explode(',', $item->treatment_quantities); @endphp - @for($x = 0; $x < count($quantities); $x++) - {{ $quantities[$x]." units"}}
    - @endfor - -
    - - @php - $items = explode(',', $item->treatment_items); - $quantities = explode(',', $item->treatment_quantities); - $total_amount = array_sum(explode(',', $item->treatment_subtotals)); - $cost_prices = explode(',', $item->cost_price); - $amount = $subtotal = 0; - $patient_amount_paid = $item->patient_amount_paid; - @endphp - @for($x = 0; $x < count($items); $x++) - @php - //check if this record exists in batch consumption trackings table to use particular batch details else use generic - $batch_tracking_record = \Streamline\Models\BatchConsumptionTracking::where(['item_type'=> 1, 'item_id' => $items[$x], 'patient_id' => $item->patient_id, 'reduction_table' => 'treatments', 'reduction_table_id' => $item->treatment_id])->first(); - if($batch_tracking_record){ - - $batch_record = \Streamline\Models\ItemBatchWatcher::where(['item_type'=> 1, 'item_id' => $items[$x], 'batch_number' => $batch_tracking_record->batch_number])->first(); - - $subtotal += $batch_record->cost_price * (is_numeric($quantities[$x]) ? $quantities[$x] : 0); - } else{ - $subtotal += ((is_int($cost_prices[$x]) ? $cost_prices[$x] : 0) * (is_numeric($quantities[$x]) ? $quantities[$x] : 0)); - } - @endphp - {{ugandan_shillings($cost_prices[$x])." per unit" }}
    - @endfor - -
    {{ ugandan_shillings($item->patient_amount_paid) }}{{ ugandan_shillings(($accounting_basis == 'accrual') ? $subtotal : $total_cost) }}
    {{ __('finance_reports.total') }} :{{ ugandan_shillings(intval(($accounting_basis == 'accrual') ? $accrual_sum : $sum)) }}
    -
    - @endif - - @if(count($result['sundries_deposits']) > 0) -
    -

    Sundries

    -
    -
    - - - - - - - - - - - - - @php $sum = $accrual_sum = 0; @endphp - - @foreach($result['sundries_deposits'] as $item) - - - - - - - - - - @php - $total_cost = 0; - $accrual_sum += $subtotal; - - if($patient_amount_paid == $total_amount){ - $total_cost = $subtotal; - $sum += $total_cost; - }else{ - $total_cost = ($subtotal > 0 && $patient_amount_paid > 0) ? (((int)$patient_amount_paid / $total_amount) * $subtotal) : 0; - $sum += $total_cost; - } - - @endphp - - - @endforeach - - - - - - - - - - - - - -
    PatientStaffDateItem NameItem QuantitiesCost PriceSubtotal
    {{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item->created_at) }} - - @php $items = explode(',', $item->sundry_items); @endphp - @for($x = 0; $x < count($items); $x++) - {{ $sundries[$items[$x]] ?? '' }}
    - @endfor - -
    - - @php $items = explode(',', $item->sundry_quantity); @endphp - @for($x = 0; $x < count($items); $x++) - {{ $items[$x]." units"}}
    - @endfor - -
    - - @php - $items = explode(',', $item->sundry_items); - $quantities = explode(',', $item->sundry_quantity); - $total_amount = array_sum(explode(',', $item->sundry_subtotals)); - $cost_prices = explode(',', $item->cost_price); - $amount = $subtotal = 0; - $patient_amount_paid = $item->patient_amount_paid; - @endphp - @for($x = 0; $x < count($items); $x++) - @php - $subtotal += ($cost_prices[$x] * $quantities[$x]); - @endphp - {{ugandan_shillings($cost_prices[$x])." per unit" }}
    - @endfor - -
    {{ ugandan_shillings(($accounting_basis == 'accrual') ? $subtotal : $total_cost) }}
    {{ __('finance_reports.total') }} :{{ ugandan_shillings(intval(($accounting_basis == 'accrual') ? $accrual_sum : $sum)) }}
    -
    - @endif - - @if(count($patient_category_invoices) > 0) -
    -

    Patient Category Invoices

    -
    -
    - - - - - - - - - - - - - @php $sum = $accrual_sum = 0; @endphp - - @foreach ($patient_category_invoices as $item) - @php - $invoice_items_ids_array = explode(",", $item->items_ids); - $pat_cat_item_amounts = array_sum(explode(",", $item->items_amounts)); - $pat_cat_items_quantity = explode(",", $item->items_quantity); - $pat_cat_cost_price = explode(",", $item->cost_price); - $cost_of_goods_account = $item->cost_of_goods_account; - $cost_of_goods_account_array = explode(",", $item->cost_of_goods_account); - - // for drugs and sundries, get the cost of goods if there is no cash payment - if (($item->tag_id == 3 || $item->tag_id == 5)) { - $cost_price = 0; - //====== check if the patient is a dependant of another patient and overide category ========// - $patient_is_a_dependant_of = patient_is_a_dependant_of($item->patient_id); - $does_patient_category_have_threshold = does_patient_category_have_threshold($item->patient_category); - if($does_patient_category_have_threshold == true || !is_null($patient_is_a_dependant_of)){ - for($i = 0; $i < count($pat_cat_items_quantity); $i++) { - $cost_price += (is_numeric($pat_cat_items_quantity[$i]) ? $pat_cat_items_quantity[$i] : 0) * (is_numeric($pat_cat_cost_price[$i]) ? $pat_cat_cost_price[$i] : 0); - } - - //$patient_category_cog['cash'] = 0; - } else{ - if ($pat_cat_item_amounts == $item->patient_amount) { - for($i = 0; $i < count($pat_cat_items_quantity); $i++) { - $cost_price += (is_numeric($pat_cat_items_quantity[$i]) ? $pat_cat_items_quantity[$i] : 0) * (is_numeric($pat_cat_cost_price[$i]) ? $pat_cat_cost_price[$i] : 0); - } - //$patient_category_cog['cash'] = 0; - } - } - $accrual_sum += $cost_price; - //$sum += $patient_category_cog['cash']; - } - $subtotal = $total_cost = 0; - @endphp - {{-- loop through per item of record coz they are stored in "aceclo, aciclovir " --}} - @for ($z=0; $z < count($invoice_items_ids_array) ; $z++) - @if ($cost_of_goods_account_array[$z] == $chart_of_account) - - - - - - - - - - @endif - @endfor - @endforeach - - - - - - - - - - - - -
    PatientStaffDateItem NameItem QuantitiesCost PriceSubtotal
    {{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item->created_at) }} - @if($item->tag_id == 3) - {{ $drugs[$invoice_items_ids_array[$z]] ?? '' }}
    - @endif - @if($item->tag_id == 5) - {{ $sundries[$invoice_items_ids_array[$z]] ?? '' }}
    - @endif -
    - {{ $pat_cat_items_quantity[$z]." units"}} - - @php - $subtotal += ((is_int($pat_cat_cost_price[$z]) ? $pat_cat_cost_price[$z] : 0) * (is_int($pat_cat_items_quantity[$z]) ? $pat_cat_items_quantity[$z] : 0)); - @endphp - {{ugandan_shillings($pat_cat_cost_price[$z])." per unit" }} - {{ ugandan_shillings(($accounting_basis == 'accrual') ? $subtotal : $total_cost) }}
    {{ __('finance_reports.total') }} :{{ ugandan_shillings(intval(($accounting_basis == 'accrual') ? $accrual_sum : $sum)) }}
    -
    - @endif - - @if(isset($ward_incomes['ward_sundry_dispensations']) && count($ward_incomes['ward_sundry_dispensations']) > 0) -

    Ward Sundries

    -
    -
    - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - - @php $sum = 0; $expected_amount_sum = 0; @endphp - - @foreach($ward_incomes['ward_sundry_dispensations'] as $item) - - - - - - - @php - //check if this record exists in batch consumption trackings table to use particular batch details else use generic - $batch_tracking_record = \Streamline\Models\BatchConsumptionTracking::where(['item_type'=> 2, 'item_id' => $item->sundry_id, 'patient_id' => $item->patient_id, 'reduction_table' => 'ward_sundry_dispensations', 'reduction_table_id' => $item->id])->first(); - - if($batch_tracking_record){ - - $batch_record = \Streamline\Models\ItemBatchWatcher::where(['item_type'=> 2, 'item_id' => $item->sundry_id, 'batch_number' => $batch_tracking_record->batch_number])->first(); - - $ward_record_subtotal = $batch_record->cost_price * (is_numeric($item->quantity_given) ? (int)$item->quantity_given : 0); - } else{ - $ward_record_subtotal = (int)$item->quantity_given * (int)$item->cost_price; - } - @endphp - @if($accounting_basis == 'cash') - - @endif - @if($accounting_basis == 'accrual') - - @endif - - @php - $sum += $item->amount_paid; - $expected_amount_sum += ($ward_record_subtotal); - @endphp - - @endforeach - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - -
    PatientStaffDateReceipt NoItem NamePatient Amount PaidExpected Amount
    {{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item->created_at) }}{{ $item->receipt_number }}{{ $sundries[$item->sundry_id] ?? '' }} - {{ ugandan_shillings($item->amount_paid) }} - - {{ ugandan_shillings($ward_record_subtotal) }} -
    Total :{{ ugandan_shillings($sum) }}{{ ugandan_shillings($expected_amount_sum) }}
    -
    - @endif - - @if(isset($ward_incomes['ward_treatment_dispensations']) && count($ward_incomes['ward_treatment_dispensations']) > 0) -

    Ward Drugs

    -
    -
    - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - - @php $sum = 0; $expected_amount_sum = 0; @endphp - - @foreach($ward_incomes['ward_treatment_dispensations'] as $item) - - - - - - - @if($accounting_basis == 'cash') - - @endif - @php - //check if this record exists in batch consumption trackings table to use particular batch details else use generic - $batch_tracking_record = \Streamline\Models\BatchConsumptionTracking::where(['item_type'=> 1, 'item_id' => $item->drug_id, 'patient_id' => $item->patient_id, 'reduction_table' => 'ward_treatment_dispensations', 'reduction_table_id' => $item->id])->first(); - - if($batch_tracking_record){ - - $batch_record = \Streamline\Models\ItemBatchWatcher::where(['item_type'=> 1, 'item_id' => $item->drug_id, 'batch_number' => $batch_tracking_record->batch_number])->first(); - - $ward_record_subtotal = $batch_record->cost_price * (is_numeric($item->quantity_given) ? (int)$item->quantity_given : 0); - } else{ - $ward_record_subtotal = (int)$item->quantity_given * (int)$item->cost_price; - } - @endphp - @if($accounting_basis == 'accrual') - - @endif - - @php - $sum += $item->amount_paid; - $expected_amount_sum += ($ward_record_subtotal); - @endphp - - @endforeach - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - -
    PatientStaffDateReceipt NoItem NamePatient Amount PaidExpected Amount
    {{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item->created_at) }}{{ $item->receipt_number }}{{ $drugs[$item->drug_id] ?? '' }}{{ ugandan_shillings($item->amount_paid) }}{{ ugandan_shillings($ward_record_subtotal) }}
    Total :{{ ugandan_shillings($sum) }}{{ ugandan_shillings($expected_amount_sum) }}
    -
    - @endif -
    -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/equities.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/equities.blade.php deleted file mode 100755 index b9eb7182..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/equities.blade.php +++ /dev/null @@ -1,217 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('finance_reports.equity_accounts') }}

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    -
    -
    - -

    {{ $title }}

    - -
    - -
    - - - - - - - - - - @php $sum = 0; @endphp - - @if ($table == 'banking') - @php - $opening_balance_record = []; - $_today = getTodayCarbon(); - $_yesterday = getYesterdayCarbon(); - $dates = ""; - $search_type = $data[0]; - @endphp - - @foreach ($banks as $bank) - @switch ($search_type) - @case('today') - @php $opening_balance_record = get_latest_opening_balance_record($bank->id, $_today); @endphp - @break - @case('yesterday') - @php $opening_balance_record = get_latest_opening_balance_record($bank->id, $_yesterday); @endphp - @break - @case('custom_date') - @php - $start = getStartOfDayCarbon($data[1]); - $opening_balance_record = get_latest_opening_balance_record($bank->id, $start); - @endphp - @break - @case('custom_date_range') - @php - $end = getEndOfDayCarbon($data[2]); - $opening_balance_record = get_latest_opening_balance_record($bank->id, $end); - @endphp - @break - @endswitch - - - - @if (!is_null($opening_balance_record) && !empty($opening_balance_record)) - - - - @php $sum += $opening_balance_record->account_balance; @endphp - @else - - - {{-- - @php $sum += $bank->balance; @endphp--}} - - @endif - - - @endforeach - - @if(count($result_equities) > 0) - @foreach($result_equities as $item) - - - - - - - @php $sum += $item->amount; @endphp - @endforeach - @endif - - @elseif ($table == 'opening_inventory') - @if(count($result) > 0) - @foreach($result['drugs'] as $item) - - - - - - - @php $sum += $item['amount']; @endphp - @endforeach - - @foreach($result['sundries'] as $item) - - - - - - - @php $sum += $item['amount']; @endphp - @endforeach - @endif - - @else - @if(count($result) > 0) - @foreach($result as $item) - - - - - - - @php $sum += $item->amount; @endphp - @endforeach - @endif - @endif - - - - - - - - - -
    {{ __('finance_reports.name') }}{{ __('finance_reports.registered_by') }}:{{ __('finance_reports.registered_on') }}:{{ __('finance_reports.amount') }}
    {{ $bank->name }}{{ get_full_name($opening_balance_record->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($opening_balance_record->trans_date) }}{{ ugandan_shillings($opening_balance_record->account_balance) }}{{ get_full_name($bank->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($bank->created_at) }}{{ ugandan_shillings($bank->balance) }}{{ ugandan_shillings(0) }}
    {{ $item->name }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item->created_at) }}{{ ugandan_shillings($item->amount) }}
    {{ $item['name'] }}{{ get_full_name($item['created_by'], 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item['updated_at']) }}{{ ugandan_shillings($item['amount']) }}
    {{ $item['name'] }}{{ get_full_name($item['created_by'], 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item['updated_at']) }}{{ ugandan_shillings($item['amount']) }}
    {{ $item->name }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item->created_at) }}{{ ugandan_shillings($item->amount) }}
    {{ __('finance_reports.total') }} :{{ ugandan_shillings($sum) }}
    -
    -
    -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/expenses.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/expenses.blade.php deleted file mode 100755 index fa1ac731..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/expenses.blade.php +++ /dev/null @@ -1,434 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    Expenses

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    - - -
    -
    - {{ Form::hidden('account', $chart_of_account, ['id'=>'account']) }} -
    - -
    -
    - -
    -
    -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success btn-rounded btn-block pull-right', 'id'=>'search_btn']) }} -
    -
    -
    -
    -
    -
    -
    - -
    - @if($payments && count($payments) > 0) -

    Payments

    -
    -
    - - - - - - - - - - - - - - - - @php - $count = 0; - $total = 0; - @endphp - - @foreach( $payments as $item) - - - - - - - - - - - - @php - $count ++; - $total += $item->sum; - @endphp - @endforeach - - - - - - - - - - - - -
    #Staff In-ChargeVendorTranscation IDPaid From AccountMemoPayment DateAmountAction
    {{ $count + 1 }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ get_name($item->vendor, 'id', 'name', 'suppliers') }}{{ $item->transaction_id }}{{ get_name($item->account_id, 'id', 'name', 'chart_of_accounts') }}{{ $item->memo }}{{ streamline_date($item->created_at) }}{{ ugandan_shillings($item->sum) }} - @if($item->bill_id) - Detail - @else - {{ Form::model($item->transaction_id ,['method' => 'POST', 'route' => ['payments.payment_details', $item->transaction_id]]) }} - {{ Form::hidden('trans_id', $item->transaction_id) }} - - {{ Form::close() }} - @endif -
    Total{{ ugandan_shillings($total) }}
    -
    - @endif - - @if(count($discounts) > 0) -
    -

    Discounts

    -
    - - - - - - - - - - - @php $discount_total = 0; @endphp - - @foreach($discounts as $discount) - - - - - - - - - @php $discount_total += $discount->discount_amount; @endphp - @endforeach - - - - - - - - - - -
    Patient NumberPatient NamePatient CategoryReceipt NumberAmount
    {{ get_name($discount->patient_id, 'id', 'number', 'patients') }}{{ get_full_name($discount->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ get_name($discount->patient_category, 'id', 'name', 'patient_categories') }}{{ $discount->receipt_number }}{{ ugandan_shillings($discount->discount_amount) }}
    Total :{{ ugandan_shillings($discount_total) }}
    -
    - @endif - - @if(count($one_off_discounts) > 0) -
    -

    One-Off Discounts

    - -
    - - - - - - - - - - - - - @foreach($one_off_discounts as $discount) - - - - - - - - - @endforeach - -
    PatientAmountMemoReceipt NumberGiven ByGiven On
    {{ get_full_name($discount->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ ugandan_shillings($discount->amount_discounted) }}{{ $discount->memo }}{{ $discount->receipt_number }}{{ get_full_name($discount->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date_time($discount->created_at) }}
    -
    - @endif - - @if(count($ward_discounts) > 0) -
    -

    Ward Discounts

    - -
    - - - - - - - - - - - - - - @foreach($ward_discounts as $discount) - - - - - - - - - - @endforeach - -
    PatientPatient CategoryWardAmountReceipt No.Given ByGiven On
    - {{ get_full_name($discount->patient_id, 'id', 'first_name', 'last_name', 'patients') }} - - ({{ get_name($discount->patient_id, 'id', 'number', 'patients') }}) - {{ get_name(get_name($discount->patient_id, 'id', 'category_id', 'patients'), 'id', 'name', 'patient_categories') }}{{ get_name($discount->ward_id, 'id', 'name', 'wards') }}{{ ugandan_shillings($discount->amount) }}{{ $discount->receipt_number }}{{ get_full_name($discount->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date_time($discount->created_at) }}
    -
    - @endif - - @if(count($bills) > 0) -
    -

    Bills

    - -
    - - - - - - - - - - - - - - - - - @php - $count = 0; - $total = 0; - $_amount_paid = 0; - $amount_paid = 0; - $balance = 0; - @endphp - - @foreach( $bills as $bill) - - - - - - - - - - - - - - - - @php - $count ++; - $total += (int)$bill['item_amount']; - $balance += (int)$bill['item_balance_remaining']; - $amount_paid += (int)$bill['item_amount_paid']; - @endphp - @endforeach - - - - - - - - - - - - - - -
    #VendorBill NumberBill DateMemoItemsItem QuantitiesItem AmountsAmountBalance
    {{ ($count + 1)."." }}{{ get_name($bill['vendor'], 'id', 'name', 'suppliers') }}{{ $bill['bill_number'] }}{{ streamline_date($bill['bill_date']) }}{{ $bill['bill_memo'] }} - @if($bill['bill_type'] == 'DRU') - {{ get_name($bill['item'], 'id', 'name', 'drugs') }}
    - - @elseif($bill['bill_type'] == 'SUN') - - {{ get_name($bill['item'], 'id', 'name', 'sundries') }}
    - - @elseif($bill['bill_type'] == 'DEN') - - {{ get_name($bill['item'], 'id', 'name', 'dentals') }}
    - - @elseif($bill['bill_type'] == 'RAD') - - {{ get_name($bill['item'], 'id', 'name', 'radiologies') }}
    - - @elseif($bill['bill_type'] == 'LAB') - - {{ get_name($bill['item'], 'id', 'name', 'labs') }}
    - - @elseif($bill['bill_type'] == 'GEN') - - {{ get_name($bill['item'], 'id', 'name', 'general_items') }}
    - - @elseif($bill['bill_type'] == 'PAY') - - {{ get_name($bill['item'], 'id', 'name', 'payment_items') }}
    - - @endif -
    - {{ ($bill['item_quantity'] == 1) ? $bill['item_quantity']." unit": $bill['item_quantity']." units" }}
    - -
    - {{ ugandan_shillings($bill['item_amount']) }}
    - -
    {{ ugandan_shillings($bill['item_amount_paid']) }}{{ ugandan_shillings($bill['item_balance_remaining']) }}
    Total{{ ugandan_shillings($total) }}{{ ugandan_shillings($amount_paid) }}{{ ugandan_shillings($balance) }}
    -
    - @endif -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/fixed_assets.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/fixed_assets.blade.php deleted file mode 100755 index 6448bbe8..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/fixed_assets.blade.php +++ /dev/null @@ -1,142 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    Fixed Asset Account

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    -
    -
    - -

    {{ $title }}

    - -
    - -
    - - - - - - - - - - - - - - @php $sum = 0; @endphp - - @if(count($result) > 0) - @foreach($result as $item) - - - - - - - - - - - @php $sum += $item->cost_price; @endphp - @endforeach - @endif - - - - - - - - - - - - - -
    NameMemoSerial NumberAcquisition DateWarranty Expiration DateSupplierPurchase ConditionCost Price
    {{ $item->name }}{{ $item->description }}{{ $item->serial_number }}{{ streamline_date($item->acquisition_date) }}{{ streamline_date($item->warranty_expiration_date) }}{{ get_name($item->supplier_id, 'id', 'name', 'suppliers') }}{{ ($item->item_condition == 0) ? 'used' : 'new' }}{{ ugandan_shillings($item->cost_price) }}
    Total :{{ ugandan_shillings($sum) }}
    -
    -
    -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/incomes.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/incomes.blade.php deleted file mode 100755 index 2a9be8cb..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/incomes.blade.php +++ /dev/null @@ -1,1075 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ get_name($chart_of_account, 'id', 'name', 'chart_of_accounts') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    - - -
    -
    - {{ Form::hidden('account', $chart_of_account, ['id'=>'account']) }} -
    - -
    -
    - -
    -
    -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success btn-rounded btn-block pull-right', 'id'=>'search_btn']) }} -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -

    {{ $title }}

    - @if(count($incomes) > 0) - @if(isset($incomes['new_service_deposits']) && count($incomes['new_service_deposits']) > 0) -

    Services

    -
    -
    - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - - @php $sum = 0; $expected_amount_sum = 0; @endphp - - @foreach($incomes['new_service_deposits'] as $item) - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - @php - $sum += (int)$item['item_amount_paid']; - $expected_amount_sum += $item['item_amount']; - @endphp - - @endforeach - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - -
    PatientStaffDateReceipt NoItem NamePatient Amount PaidExpected Amount
    {{ get_full_name($item['patient_id'], 'id', 'first_name', 'last_name', 'patients') }}{{ get_full_name($item['created_by'], 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item['created_at']) }}{{ $item['receipt_number'] }}{{ get_name($item['item_id'], 'id', 'name', 'services') }}{{ ugandan_shillings($item['item_amount_paid']) }}{{ ugandan_shillings($item['item_amount']) }}
    Total :{{ ugandan_shillings($sum) }}{{ ugandan_shillings($expected_amount_sum) }}
    -
    - @endif - - @if(isset($incomes['new_investigation_deposits']) && count($incomes['new_investigation_deposits']) > 0) -

    Investigations

    -
    -
    - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - - @php $sum = 0; $expected_amount_sum = 0; @endphp - - @foreach($incomes['new_investigation_deposits'] as $item) - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - @php - $sum += (int)$item['item_amount_paid']; - $expected_amount_sum += $item['item_amount']; - @endphp - @endforeach - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - -
    PatientStaffDateReceipt NoItem NamePatient Amount PaidExpected Amount
    {{ get_full_name($item['patient_id'], 'id', 'first_name', 'last_name', 'patients') }}{{ get_full_name($item['created_by'], 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item['created_at']) }}{{ $item['receipt_number'] }}{{ get_name($item['item_id'], 'id', 'name', 'investigations') }}{{ ugandan_shillings($item['item_amount_paid']) }}{{ ugandan_shillings($item['item_amount']) }}
    Total :{{ ugandan_shillings($sum) }}{{ ugandan_shillings($expected_amount_sum) }}
    -
    - @endif - - @if(isset($incomes['new_treatment_deposits']) || count($opd_treatments) > 0) -

    Drugs

    -
    -
    - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - - @php $sum = 0; $expected_amount_sum = 0; @endphp - - - @if(isset($incomes['new_treatment_deposits'])) - @foreach($incomes['new_treatment_deposits'] as $item) - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - @php - $sum += (int)$item['item_amount_paid']; - $expected_amount_sum += $item['item_amount']; - @endphp - - @endforeach - @endif - - @foreach($opd_treatments as $item) - - - - - - @php - $drugs_arr = explode(",", $item->drugs); - $amount_paid_arr = explode(",", $item->amount_paid); - $quantities_dispensed_arr = explode(",", $item->quantities_dispensed); - $unit_selling_prices_arr = explode(",", $item->unit_selling_prices); - $drug_amount_paid = 0; - $drug_amount_to_pay = 0; - @endphp - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - @php - $sum += $drug_amount_paid; - $expected_amount_sum += $drug_amount_to_pay; - @endphp - - @endforeach - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - -
    PatientStaffDateReceipt NoItem NamePatient Amount PaidExpected Amount
    {{ get_full_name($item['patient_id'], 'id', 'first_name', 'last_name', 'patients') }}{{ get_full_name($item['created_by'], 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item['created_at']) }}{{ $item['receipt_number'] }}{{ get_name($item['item_id'], 'id', 'name', 'drugs') }}{{ ugandan_shillings($item['item_amount_paid']) }}{{ ugandan_shillings($item['item_amount']) }}
    {{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item->created_at) }} -
      - @for($x = 0; $x < count($drugs_arr); $x++) -
    • {{ get_name($drugs_arr[$x], 'id', 'name', 'drugs') }}
    • - @php - $drug_amount_paid += $amount_paid_arr[$x]; - $drug_amount_to_pay += $unit_selling_prices_arr[$x] * $quantities_dispensed_arr[$x]; - @endphp - @endfor -
    -
    {{ ugandan_shillings($drug_amount_paid) }}{{ ugandan_shillings($drug_amount_to_pay) }}
    Total :{{ ugandan_shillings($sum) }}{{ ugandan_shillings($expected_amount_sum) }}
    -
    - @endif - - @if(isset($incomes['new_procedure_deposits']) && count($incomes['new_procedure_deposits']) > 0) -

    Procedures

    -
    -
    - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - - @php $sum = 0; $expected_amount_sum = 0; @endphp - - @foreach($incomes['new_procedure_deposits'] as $item) - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - @php - $sum += (int)$item['item_amount_paid']; - $expected_amount_sum += $item['item_amount']; - @endphp - @endforeach - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - -
    PatientStaffDateReceipt NoItem NamePatient Amount PaidExpected Amount
    {{ get_full_name($item['patient_id'], 'id', 'first_name', 'last_name', 'patients') }}{{ get_full_name($item['created_by'], 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item['created_at']) }}{{ $item['receipt_number'] }}{{ get_name($item['item_id'], 'id', 'name', 'procedures') }}{{ ugandan_shillings($item['item_amount_paid']) }}{{ ugandan_shillings($item['item_amount']) }}
    Total :{{ ugandan_shillings($sum) }}{{ ugandan_shillings($expected_amount_sum) }}
    -
    - @endif - - @if(isset($incomes['new_sundries_deposits']) && count($incomes['new_sundries_deposits']) > 0) -

    Sundries

    -
    -
    - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - - @php $sum = 0; $expected_amount_sum = 0; @endphp - - @foreach($incomes['new_sundries_deposits'] as $item) - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - @php - $sum += (int)$item['item_amount_paid']; - $expected_amount_sum += $item['item_amount']; - @endphp - @endforeach - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - -
    PatientStaffDateReceipt NoItem NamePatient Amount PaidExpected Amount
    {{ get_full_name($item['patient_id'], 'id', 'first_name', 'last_name', 'patients') }}{{ get_full_name($item['created_by'], 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item['created_at']) }}{{ $item['receipt_number'] }}{{ get_name($item['item_id'], 'id', 'name', 'sundries') }}{{ ugandan_shillings($item['item_amount_paid']) }}{{ ugandan_shillings($item['item_amount']) }}
    Total :{{ ugandan_shillings($sum) }}{{ ugandan_shillings($expected_amount_sum) }}
    -
    - @endif - - @if(isset($incomes['new_eye_glasses_deposits']) && count($incomes['new_eye_glasses_deposits']) > 0) -

    Optical Items

    -
    -
    - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - - @php $sum = 0; $expected_amount_sum = 0; @endphp - - @foreach($incomes['new_eye_glasses_deposits'] as $item) - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - @php - $sum += (int)$item['item_amount_paid']; - $expected_amount_sum += $item['item_amount']; - @endphp - - @endforeach - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - -
    PatientStaffDateReceipt NoItem NamePatient Amount PaidExpected Amount
    {{ get_full_name($item['patient_id'], 'id', 'first_name', 'last_name', 'patients') }}{{ get_full_name($item['created_by'], 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item['created_at']) }}{{ $item['receipt_number'] }}{{ get_name($item['item_id'], 'id', 'name', 'eye_glasses') }}{{ ugandan_shillings($item['item_amount_paid']) }}{{ ugandan_shillings($item['item_amount']) }}
    Total :{{ ugandan_shillings($sum) }}{{ ugandan_shillings($expected_amount_sum) }}
    -
    - @endif - - @endif - - @if(count($other_incomes) > 0) -

    Other Incomes

    - -
    - - - - - - - - - - - - @php $other_incomes_total = 0; @endphp - - @foreach($other_incomes as $item) - - - - - - - - - @php - $other_incomes_total += $item->deposit_amount; - @endphp - @endforeach - - - - - - - - - - - -
    Transaction Date :Record Date :Staff In-Charge :MemoPayment MethodAmount
    {{ streamline_date($item->deposit_date) }}{{ streamline_date($item->created_at) }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ $item->deposit_memo }}{{ get_name($item->payment_method, 'id', 'name', 'patient_payment_methods') }}{{ ugandan_shillings($item->deposit_amount) }}
    Total :{{ ugandan_shillings($other_incomes_total) }}
    -
    - -
    - - @endif - - @if(count($ward_incomes) > 0) -

    Ward Incomes

    - - @if(isset($ward_incomes['ward_consultations_and_services']) && count($ward_incomes['ward_consultations_and_services']) > 0) -

    Services

    -
    -
    - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - - @php $sum = 0; $expected_amount_sum = 0; @endphp - - @foreach($ward_incomes['ward_consultations_and_services'] as $item) - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - @php - $sum += $item->amount_paid; - $expected_amount_sum += ($item->unit_price * $item->quantity_given); - @endphp - @endforeach - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - -
    PatientStaffDateReceipt NoItem NamePatient Amount PaidExpected Amount
    {{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item->created_at) }}{{ $item->receipt_number }}{{ get_name($item->service_id, 'id', 'name', 'services') }}{{ ugandan_shillings($item->amount_paid) }}{{ ugandan_shillings($item->unit_price * $item->quantity_given) }}
    Total :{{ ugandan_shillings($sum) }}{{ ugandan_shillings($expected_amount_sum) }}
    -
    - @endif - - @if(isset($ward_incomes['ward_investigation_pricings']) && count($ward_incomes['ward_investigation_pricings']) > 0) -

    Investigations

    -
    -
    - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - - @php $sum = 0; $expected_amount_sum = 0; @endphp - - @foreach($ward_incomes['ward_investigation_pricings'] as $item) - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - @php - $sum += $item->amount_paid; - $expected_amount_sum += $item->price; - @endphp - @endforeach - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - -
    PatientStaffDateReceipt NoItem NamePatient Amount PaidExpected Amount
    {{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item->created_at) }}{{ $item->receipt_number }}{{ get_name($item->investigation_id, 'id', 'name', 'investigations') }}{{ ugandan_shillings($item->amount_paid) }}{{ ugandan_shillings($item->price) }}
    Total :{{ ugandan_shillings($sum) }}{{ ugandan_shillings($expected_amount_sum) }}
    -
    - @endif - - @if(isset($ward_incomes['ward_treatment_dispensations']) && count($ward_incomes['ward_treatment_dispensations']) > 0) -

    Drugs

    -
    -
    - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - - @php $sum = 0; $expected_amount_sum = 0; @endphp - - @foreach($ward_incomes['ward_treatment_dispensations'] as $item) - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - @php - $sum += $item->amount_paid; - $expected_amount_sum += ((int)$item->quantity_given * (int)$item->price); - @endphp - - @endforeach - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - -
    PatientStaffDateReceipt NoItem NamePatient Amount PaidExpected Amount
    {{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item->created_at) }}{{ $item->receipt_number }}{{ get_name($item->drug_id, 'id', 'name', 'drugs') }}{{ ugandan_shillings($item->amount_paid) }}{{ ugandan_shillings((int)$item->quantity_given * (int)$item->price) }}
    Total :{{ ugandan_shillings($sum) }}{{ ugandan_shillings($expected_amount_sum) }}
    -
    - @endif - - @if(isset($ward_incomes['ward_procedures']) && count($ward_incomes['ward_procedures']) > 0) -

    Procedures

    -
    -
    - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - - @php $sum = 0; $expected_amount_sum = 0; @endphp - - @foreach($ward_incomes['ward_procedures'] as $item) - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - @php - $sum += $item->amount_paid; - $expected_amount_sum += $item->hospital_fee; - @endphp - @endforeach - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - -
    PatientStaffDateReceipt NoItem NamePatient Amount PaidExpected Amount
    {{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item->created_at) }}{{ $item->receipt_number }}{{ get_name($item->procedure_id, 'id', 'name', 'procedures') }}{{ ugandan_shillings($item->amount_paid) }}{{ ugandan_shillings($item->hospital_fee) }}
    Total :{{ ugandan_shillings($sum) }}{{ ugandan_shillings($expected_amount_sum) }}
    -
    - @endif - - @if(isset($ward_incomes['ward_sundry_dispensations']) && count($ward_incomes['ward_sundry_dispensations']) > 0) -

    Sundries

    -
    -
    - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - - @php $sum = 0; $expected_amount_sum = 0; @endphp - - @foreach($ward_incomes['ward_sundry_dispensations'] as $item) - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - @php - $sum += $item->amount_paid; - $expected_amount_sum += ($item->price * $item->quantity_given); - @endphp - @endforeach - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - -
    PatientStaffDateReceipt NoItem NamePatient Amount PaidExpected Amount
    {{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item->created_at) }}{{ $item->receipt_number }}{{ get_name($item->sundry_id, 'id', 'name', 'sundries') }}{{ ugandan_shillings($item->amount_paid) }}{{ ugandan_shillings($item->price * $item->quantity_given) }}
    Total :{{ ugandan_shillings($sum) }}{{ ugandan_shillings($expected_amount_sum) }}
    -
    - @endif - - @if(isset($ward_incomes['ward_bed_stays']) && count($ward_incomes['ward_bed_stays']) > 0) -

    Bed Stays

    -
    -
    - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - - @php $sum = 0; $expected_amount_sum = 0; @endphp - - @foreach($ward_incomes['ward_bed_stays'] as $item) - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - @php - $sum += $item->amount_paid; - $expected_amount_sum += ($item->bed_fee_rate * $item->duration); - @endphp - @endforeach - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - -
    PatientStaffDateReceipt NoItem NamePatient Amount PaidExpected Amount
    {{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item->created_at) }}{{ $item->receipt_number }}{{ get_name($item->bed_category, 'id', 'name', 'inpatient_bed_categories') }}{{ ugandan_shillings($item->amount_paid) }}{{ ugandan_shillings($item->bed_fee_rate * $item->duration) }}
    Total :{{ ugandan_shillings($sum) }}{{ ugandan_shillings($expected_amount_sum) }}
    -
    - @endif - - @if(isset($ward_incomes['ward_extras']) && count($ward_incomes['ward_extras']) > 0) -

    Extras

    -
    -
    - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - - @php $sum = 0; $expected_amount_sum = 0; @endphp - - @foreach($ward_incomes['ward_extras'] as $item) - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - @php - $sum += $item->amount_paid; - $expected_amount_sum += $item->extra_cost; - @endphp - - @endforeach - - - - - - - - - @if($accounting_basis == 'cash')@endif - @if($accounting_basis == 'accrual')@endif - - -
    PatientStaffDateReceipt NoItem NamePatient Amount PaidExpected Amount
    {{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item->created_at) }}{{ $item->receipt_number }}{{ $item->extra_item }}{{ ugandan_shillings($item->amount_paid) }}{{ ugandan_shillings($item->extra_cost) }}
    Total :{{ ugandan_shillings($sum) }}{{ ugandan_shillings($expected_amount_sum) }}
    -
    - @endif - - @endif - - @if(count($receivables) > 0) -
    - @if($accounting_basis == 'accrual') -

    Accounts Receivable for {{$title}}

    - @else -

    Received Cash for {{$title}}

    - @endif -
    -
    - -
    -
    - - - -
    -
    -
    - @endif -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/inventory.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/inventory.blade.php deleted file mode 100755 index 8e06cb13..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/inventory.blade.php +++ /dev/null @@ -1,197 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    Current Asset Accounts

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    -
    -
    - -

    {{ $title }}

    - -
    - -
    - @if($table == 'stock_watcher') - @if(isset($result['drugs'])) -

    Drugs


    - - - - - - - - - - - - - - @php $total_pharmacy_stock_value = $total_store_stock_value = $total_ward_stock_value = 0;@endphp - @foreach($result['drugs'] as $drug) - - @if($drug->insurance_coverage == 1) - - @else - - @endif - - - - - @php $total_pharmacy_stock_value += ($pharmacy_stock_value = (int)$drug->pharmacy_stock * (int)$drug->cost_price); @endphp - - @php $total_store_stock_value += ($store_stock_value = (int)$drug->store_stock * (int)$drug->cost_price); @endphp - - @php $total_ward_stock_value += ($ward_stock_value = (int)$drug->ward_stock * (int)$drug->cost_price); @endphp - - - @endforeach - - - - - - - - - - - - - -
    Drug NameCost PricePharmacy StockStore StockWard StockPharmacy Stock ValueStore Stock ValueWard Stock Value
    {{ $drug->name }} {{ (show_drug_brand_name() && (isset($drug->brand_name) && !is_null($drug->brand_name))) ? $drug->brand_name : '' }}{{ $drug->name }} {{ (show_drug_brand_name() && (isset($drug->brand_name) && !is_null($drug->brand_name))) ? $drug->brand_name : '' }}{{ ugandan_shillings($drug->cost_price) }}{{ $drug->pharmacy_stock }}{{ $drug->store_stock}}{{ $drug->ward_stock}}{{ ugandan_shillings($pharmacy_stock_value) }}{{ ugandan_shillings($store_stock_value) }}{{ ugandan_shillings($ward_stock_value) }}
    Total{{ ugandan_shillings($total_pharmacy_stock_value) }}{{ ugandan_shillings($total_store_stock_value) }}{{ ugandan_shillings($total_ward_stock_value) }}
    - @endif - - @if(isset($result['sundries'])) -

    Sundries


    - - - - - - - - - - - - - - @php $total_pharmacy_stock_value = $total_store_stock_value = $total_ward_stock_value = 0;@endphp - @foreach($result['sundries'] as $sundry) - - - - - - - @php $total_pharmacy_stock_value += ($pharmacy_stock_value = (int)$sundry->pharmacy_stock * (int)$sundry->cost_price); @endphp - - @php $total_store_stock_value += ($store_stock_value = (int)$sundry->store_stock * (int)$sundry->cost_price); @endphp - - @php $total_ward_stock_value += ($ward_stock_value = (int)$sundry->ward_stock * (int)$sundry->cost_price); @endphp - - - @endforeach - - - - - - - - - - - - - -
    Sundry NameCost PricePharmacy StockStore StockWard StockPharmacy Stock ValueStore Stock ValueWard Stock Value
    {{ $sundry->name }}{{ ugandan_shillings($sundry->cost_price) }}{{ $sundry->pharmacy_stock }}{{ $sundry->store_stock }}{{ $sundry->ward_stock }}{{ ugandan_shillings($pharmacy_stock_value) }}{{ ugandan_shillings($store_stock_value) }}{{ ugandan_shillings($ward_stock_value) }}
    Total:{{ ugandan_shillings($total_pharmacy_stock_value) }}{{ ugandan_shillings($total_store_stock_value) }}{{ ugandan_shillings($total_ward_stock_value) }}
    - @endif - @endif -
    -
    -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/liabilities.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/liabilities.blade.php deleted file mode 100755 index 7b3eb0b5..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/liabilities.blade.php +++ /dev/null @@ -1,950 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('finance_reports.liability_accounts') }}

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    -
    -
    - -

    {{ $title }}

    -
    -
    - @if($table == 'family_account_deposits') - - - - - - - - - - - - @php $sum = 0; @endphp - - @if(count($result) > 0) - @foreach($result as $item) - - - - - - - @php $sum += $item->deposit_amount; @endphp - @endforeach - @endif - - - - - - - - - - -
    {{ __('finance_reports.deposited_by') }}{{ __('finance_reports.deposit_date') }}{{ __('finance_reports.record_date') }}{{ __('finance_reports.amount') }}
    {{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item->deposit_date) }}{{ streamline_date($item->created_at) }}{{ ugandan_shillings($item->deposit_amount) }}
    {{ __('finance_reports.total') }} :{{ ugandan_shillings($sum) }}
    - @elseif($table == 'patient_accounts_deposits') - - @if(isset($result["patient_accounts_deposits"]) && count($result["patient_accounts_deposits"]) > 0) - @php $results = $result["patient_accounts_deposits"]; @endphp - -

    Deposits

    - - - - - - - - - - - - - @php $sum = 0; @endphp - - @foreach($results as $item) - - - - - - - - @php $sum += $item->deposit_amount; @endphp - @endforeach - - - - - - - - - - - -
    Patient NameReceived By{{ __('finance_reports.deposit_date') }}{{ __('finance_reports.record_date') }}{{ __('finance_reports.amount') }}
    - {{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }} - ({{ get_name($item->patient_id, 'id', 'number', 'patients') }}) - {{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item->deposit_date) }}{{ streamline_date_time($item->created_at) }}{{ ugandan_shillings($item->deposit_amount) }}
    {{ __('finance_reports.total') }} :{{ ugandan_shillings($sum) }}
    - @endif - - @if(isset($result["patient_account_consumptions"]) && count($result["patient_account_consumptions"]) > 0) - @php $results = $result["patient_account_consumptions"]; @endphp - -
    - -

    Consumptions

    - - - - - - - - - - - - @php $sum = 0; @endphp - - @foreach($results as $item) - - - - - - - @php $sum += $item->amount_consumed; @endphp - @endforeach - - - - - - - - - - -
    Patient NameStaff{{ __('finance_reports.record_date') }}{{ __('finance_reports.amount') }}
    - {{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }} - ({{ get_name($item->patient_id, 'id', 'number', 'patients') }}) - {{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date_time($item->created_at) }}{{ ugandan_shillings($item->amount_consumed) }}
    {{ __('finance_reports.total') }} :{{ ugandan_shillings($sum) }}
    - @endif - - @if(isset($result["patient_accounts_refunds"]) && count($result["patient_accounts_refunds"]) > 0) - @php $results = $result["patient_accounts_refunds"]; @endphp - -
    - -

    Refunds

    - - - - - - - - - - - - - @php $sum = 0; @endphp - - @foreach($results as $item) - - - - - - - - @php $sum += $item->refund_amount; @endphp - @endforeach - - - - - - - - - - - -
    Patient NameStaffRefund Date{{ __('finance_reports.record_date') }}{{ __('finance_reports.amount') }}
    - {{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }} - ({{ get_name($item->patient_id, 'id', 'number', 'patients') }}) - {{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($item->refund_date) }}{{ streamline_date_time($item->created_at) }}{{ ugandan_shillings($item->refund_amount) }}
    {{ __('finance_reports.total') }} :{{ ugandan_shillings($sum) }}
    - @endif - @elseif($table == 'hospital_bills') -

    Hospital Bills


    - - - - - - - - - - - - - - {{----}} - - - - - - - - @php - $count = 0; - $total = 0; - $_amount_paid = 0; - $amount_paid = 0; - $balance = 0; - $chart_of_account_total_amount = 0; - @endphp - - @if($result) - @if(count($result) > 0) - @if($accounting_basis == 'accrual') - @foreach( $result as $bill) - - - - - - - - - @php - $items = explode(',', $bill->item_ids); - $quantities = explode(',', $bill->item_quantities); - $subtotals = explode(',', $bill->item_subtotals); - @endphp - - - - - {{----}} - - @php - $_amount_paid = (int)$bill->total_amount - (!is_null($bill->balance) ? (int)$bill->balance : (int)$bill->total_amount) ; - - $hospital_bill_balance = (int)$bill->total_amount - $_amount_paid; - @endphp - - - @if(is_null($bill->balance)) - {{----}} - - - @elseif($bill->balance > 0) - {{----}} - - - @else - {{----}} - - - @endif - - @php - $count ++; - $total += $bill->total_amount; - //$balance += $bill->balance; - $balance += $hospital_bill_balance; - $amount_paid += $_amount_paid; - @endphp - @endforeach - @php - $count ++; - $total += $bill->total_amount; - //$balance += $bill->balance; - $balance += $hospital_bill_balance; - $amount_paid += $_amount_paid; - @endphp - @else - @foreach( $result as $bill) - - - - - - - - - - - {{----}} - @php - $_amount_paid = (int)$bill->total_amount - (!is_null($bill->balance) ? (int)$bill->balance : (int)$bill->total_amount) ; - - $hospital_bill_balance = (int)$bill->total_amount - $_amount_paid; - @endphp - - @if(is_null($bill->balance)) - {{----}} - - - @elseif($bill->balance > 0) - {{----}} - - - @else - {{----}} - - - @endif - - @php - $count ++; - $total += $bill->total_amount; - //$balance += $bill->balance; - $balance += $hospital_bill_balance; - $amount_paid += $_amount_paid; - @endphp - @endforeach - @endif - @endif - @endif - - - - - - - - - - - - - - {{----}} - - - - - -
    #{{ __('finance_reports.vendor') }}{{ __('finance_reports.bill_number') }}{{ __('finance_reports.bill_date') }}{{ __('finance.memo') }}{{ __('finance.payable_account') }}{{ __('finance_reports.items') }}{{ __('finance_reports.item_quantities') }}{{ __('finance_reports.item_amounts') }}{{ __('finance_reports.bill_total') }}{{ __('finance_reports.amount_paid') }}{{ __('finance_reports.balance') }}{{ __('finance_reports.status') }}
    {{ ($count + 1)."." }}{{ get_name($bill->vendor, 'id', 'name', 'suppliers') }}{{ $bill->bill_number }}{{ streamline_date($bill->bill_date) }}{{ $bill->bill_memo }} - @php - $payable_accounts = explode(',', $bill->payable_account); - @endphp - - @foreach ($payable_accounts as $payable_account) - {{ get_name($payable_account, 'id', 'name', 'chart_of_accounts') }}
    - @endforeach -
    - @if($bill->bill_type == 'DRU') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'drugs') }}
    - @endfor - @elseif($bill->bill_type == 'SUN') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'sundries') }}
    - @endfor - @elseif($bill->bill_type == 'DEN') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'dentals') }}
    - @endfor - @elseif($bill->bill_type == 'RAD') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'radiologies') }}
    - @endfor - @elseif($bill->bill_type == 'LAB') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'labs') }}
    - @endfor - @elseif($bill->bill_type == 'GEN') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'general_items') }}
    - @endfor - @elseif($bill->bill_type == 'PAY') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'payment_items') }}
    - @endfor - @endif -
    - @for($x = 0; $x < count($quantities); $x++) - {{ ($quantities[$x] == 1) ? $quantities[$x]." unit": $quantities[$x]." units" }}
    - @endfor -
    - @for($x = 0; $x < count($subtotals); $x++) - {{ ugandan_shillings($subtotals[$x]) }}
    - @endfor -
    {{ ugandan_shillings($bill->total_amount) }}{{ ugandan_shillings($_amount_paid) }} - {{ ugandan_shillings($hospital_bill_balance) }}{{ ugandan_shillings($bill->balance) }}{{ ugandan_shillings($hospital_bill_balance) }}{{ ugandan_shillings($bill->balance) }}{{ ugandan_shillings($hospital_bill_balance) }}
    {{ ($count + 1)."." }}{{ get_name($bill->vendor, 'id', 'name', 'suppliers') }}{{ $bill->bill_number }}{{ streamline_date($bill->bill_date) }}{{ $bill->bill_memo }} - @php - $payable_accounts = explode(',', $bill->payable_account); - - $items = explode(',', $bill->item_ids); - - $quantities = explode(',', $bill->item_quantities); - - $subtotals = explode(',', $bill->item_subtotals); - - $item_accounts = explode(',', $bill->item_accounts); - - $payable_accounts_belonging_to_account = []; - $items_belonging_to_account = []; - $quantities_belonging_to_account = []; - $subtotals_belonging_to_account = []; - @endphp - - bill_memo == "UN-VERIFIED AUTO CREATED STRE@MLINE INVENTORY BILL") { - for ($i=0; $i < count($item_accounts) ; $i++) { - if ($chart_of_account == $item_accounts[$i]) { - $payable_accounts_belonging_to_account[] = $item_accounts[$i] ?? ''; - $items_belonging_to_account[] = $items[$i] ?? ''; - $quantities_belonging_to_account[] = $quantities[$i] ?? ''; - $subtotals_belonging_to_account[] = $subtotals[$i] ?? ''; - } - } - } else { - for ($i=0; $i < count($payable_accounts) ; $i++) { - if ($chart_of_account == $payable_accounts[$i]) { - $payable_accounts_belonging_to_account[] = $payable_accounts[$i]; - $items_belonging_to_account[] = $items[$i]; - $quantities_belonging_to_account[] = $quantities[$i]; - $subtotals_belonging_to_account[] = $subtotals[$i]; - } - } - } - ?> - - @foreach ($payable_accounts_belonging_to_account as $payable_account) - {{ get_name($payable_account, 'id', 'name', 'chart_of_accounts') }}
    - @endforeach -
    - @if($bill->bill_type == 'DRU') - @for($x = 0; $x < count($items_belonging_to_account); $x++) - {{ get_name($items_belonging_to_account[$x], 'id', 'name', 'drugs') }}
    - @endfor - @elseif($bill->bill_type == 'SUN') - @for($x = 0; $x < count($items_belonging_to_account); $x++) - {{ get_name($items_belonging_to_account[$x], 'id', 'name', 'sundries') }}
    - @endfor - @elseif($bill->bill_type == 'DEN') - @for($x = 0; $x < count($items_belonging_to_account); $x++) - {{ get_name($items_belonging_to_account[$x], 'id', 'name', 'dentals') }}
    - @endfor - @elseif($bill->bill_type == 'RAD') - @for($x = 0; $x < count($items_belonging_to_account); $x++) - {{ get_name($items_belonging_to_account[$x], 'id', 'name', 'radiologies') }}
    - @endfor - @elseif($bill->bill_type == 'LAB') - @for($x = 0; $x < count($items_belonging_to_account); $x++) - {{ get_name($items_belonging_to_account[$x], 'id', 'name', 'labs') }}
    - @endfor - @elseif($bill->bill_type == 'GEN') - @for($x = 0; $x < count($items_belonging_to_account); $x++) - {{ get_name($items_belonging_to_account[$x], 'id', 'name', 'general_items') }}
    - @endfor - @elseif($bill->bill_type == 'PAY') - @for($x = 0; $x < count($items_belonging_to_account); $x++) - {{ get_name($items_belonging_to_account[$x], 'id', 'name', 'payment_items') }}
    - @endfor - @endif -
    - @for($x = 0; $x < count($quantities_belonging_to_account); $x++) - {{ ($quantities_belonging_to_account[$x] == 1) ? $quantities_belonging_to_account[$x]." unit": $quantities_belonging_to_account[$x]." units" }}
    - @endfor -
    - @for($x = 0; $x < count($subtotals_belonging_to_account); $x++) - {{ ugandan_shillings($subtotals_belonging_to_account[$x]) }}
    - @php - $chart_of_account_total_amount += (int)$subtotals_belonging_to_account[$x]; - @endphp - @endfor -
    - {{ ugandan_shillings($bill->total_amount) }} - {{ ugandan_shillings($_amount_paid) }} - {{ ugandan_shillings($hospital_bill_balance) }}{{ ugandan_shillings($bill->balance) }}{{ ugandan_shillings($hospital_bill_balance) }}{{ ugandan_shillings($bill->balance) }}{{ ugandan_shillings($hospital_bill_balance) }}
    {{ __('finance_reports.total') }}{{ ugandan_shillings($chart_of_account_total_amount) }} {{ ugandan_shillings($total) }} {{ ugandan_shillings($amount_paid) }}{{ ugandan_shillings($balance) }}
    - - @elseif($table == 'journals') - - - - - - - - - - - - - - - - - - @php $total_credits = 0 @endphp - @if($result) - @if(count($result) > 0) - @foreach($result as $journal) - @php - $account_ids = explode(",", $journal->account_ids); - $accounts_text = ""; - for ($i = 0; $i < count($account_ids); $i++) { - $credits = explode(",", $journal->credits); - if ($chart_of_account == $account_ids[$i] && $credits[$i] != null) { - $accounts_text = get_name($account_ids[$i], 'id', 'name', 'chart_of_accounts'); - - $credits_text = ""; - $credits_text = ugandan_shillings((int)$credits[$i]); - $total_credits += (int)$credits[$i]; - - $descriptions = explode(",", $journal->descriptions); - $descriptions_text = $descriptions[$i]; - - $type_ids = explode(",", $journal->type_ids); - $name_ids = explode(",", $journal->name_ids); - $types_text = ""; - $names_text = ""; - - if (isset($type_ids[$i])) { - if ($type_ids[$i] == '1') { - $types_text = "Customer"; - if ($name_ids[$i] != null) { - $names_text = get_full_name($name_ids[$i], 'id', 'first_name', 'last_name', 'patients'); - } - } - - else if ($type_ids[$i] == '2') { - $types_text = "Supplier"; - if ($name_ids[$i] != null) { - $names_text = get_name($name_ids[$i], 'id', 'name', 'suppliers'); - } - } - - else if ($type_ids[$i] == '3') { - $types_text = "Employee"; - if ($name_ids[$i] != null) { - $names_text = get_full_name($name_ids[$i], 'id', 'first_name', 'last_name', 'users'); - } - } - - else if ($type_ids[$i] == '4') { - $types_text = "Patient Categories"; - if ($name_ids[$i] != null) { - $names_text = get_name($name_ids[$i], 'id', 'name', 'patient_categories'); - } - } - - else if ($type_ids[$i] == '5') { - $types_text = "Payment Item"; - if ($name_ids[$i] != null) { - $names_text = get_name($name_ids[$i], 'id', 'name', 'payment_items'); - } - } - } - @endphp - - - - - - - - - - - - - @php - } - } - @endphp - @endforeach - @endif - @endif - - - - - - - - - - - - - - - -
    Journal No.Journal DateAccountCreditsDescriptionTypeNameCreated ByDate & Time
    {{ $journal->journal_number }}{{ streamline_date($journal->journal_date) }}{{ $accounts_text }}{{ $credits_text }}{{ $descriptions_text }}{{ $types_text }}{{ $names_text }}{{ get_full_name($journal->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date_time_short($journal->created_at) }}
    {{ __('finance_reports.total') }} :{{ ugandan_shillings($total_credits) }}
    - - @if(count($result_bills) > 0) -
    -

    Hospital Bills


    - - - - - - - - - - - - - - - - - - - - - - @php - $count = 0; - $total = 0; - $_amount_paid = 0; - $amount_paid = 0; - $balance = 0; - @endphp - - @if($result_bills) - @if(count($result_bills) > 0) - @if($accounting_basis == 'accrual') - @foreach( $result_bills as $bill) - - - - - - - - @php - $items = explode(',', $bill->item_ids); - $quantities = explode(',', $bill->item_quantities); - $subtotals = explode(',', $bill->item_subtotals); - @endphp - - - - - @php - $_amount_paid = (int)$bill->total_amount - (!is_null($bill->balance) ? (int)$bill->balance : (int)$bill->total_amount) ; - - $hospital_bill_balance = (int)$bill->total_amount - $_amount_paid; - @endphp - - @if(is_null($bill->balance)) - {{----}} - - - @elseif($bill->balance > 0) - {{----}} - - - @else - {{----}} - - - @endif - - @php - $count ++; - $total += $bill->total_amount; - //$balance += $bill->balance; - $balance += $hospital_bill_balance; - $amount_paid += $_amount_paid; - @endphp - @endforeach - @php - $count ++; - $total += $bill->total_amount; - //$balance += $bill->balance; - $balance += $hospital_bill_balance; - $amount_paid += $_amount_paid; - @endphp - @else - @foreach( $result_bills as $bill) - - - - - - - - @php - $items = explode(',', $bill->item_ids); - $quantities = explode(',', $bill->item_quantities); - $subtotals = explode(',', $bill->item_subtotals); - @endphp - - - - - @php - $_amount_paid = (int)$bill->total_amount - (!is_null($bill->balance) ? (int)$bill->balance : (int)$bill->total_amount) ; - - $hospital_bill_balance = (int)$bill->total_amount - $_amount_paid; - @endphp - - @if(is_null($bill->balance)) - {{----}} - - - @elseif($bill->balance > 0) - {{----}} - - - @else - {{----}} - - - @endif - - @php - $count ++; - $total += $bill->total_amount; - //$balance += $bill->balance; - $balance += $hospital_bill_balance; - $amount_paid += $_amount_paid; - @endphp - @endforeach - @endif - @endif - @endif - - - - - - - - - - - - - - - - - - - -
    #{{ __('finance_reports.vendor') }}{{ __('finance_reports.bill_number') }}{{ __('finance_reports.due_date') }}{{ __('finance.memo') }}{{ __('finance.payable_account') }}{{ __('finance_reports.items') }}{{ __('finance_reports.item_quantities') }}{{ __('finance_reports.item_amounts') }}{{ __('finance_reports.bill_total') }}{{ __('finance_reports.amount_paid') }}{{ __('finance_reports.balance') }}{{ __('finance_reports.status') }}
    {{ ($count + 1)."." }}{{ get_name($bill->vendor, 'id', 'name', 'suppliers') }}{{ $bill->bill_number }}{{ streamline_date($bill->bill_due_date) }}{{ $bill->bill_memo }} - @php $payable_accounts = explode(',', $bill->payable_account); @endphp - @foreach ($payable_accounts as $payable_account) - {{ get_name($payable_account, 'id', 'name', 'chart_of_accounts') }}
    - @endforeach -
    - @if($bill->bill_type == 'DRU') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'drugs') }}
    - @endfor - @elseif($bill->bill_type == 'SUN') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'sundries') }}
    - @endfor - @elseif($bill->bill_type == 'DEN') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'dentals') }}
    - @endfor - @elseif($bill->bill_type == 'RAD') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'radiologies') }}
    - @endfor - @elseif($bill->bill_type == 'LAB') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'labs') }}
    - @endfor - @elseif($bill->bill_type == 'GEN') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'general_items') }}
    - @endfor - @elseif($bill->bill_type == 'PAY') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'payment_items') }}
    - @endfor - @endif -
    - @for($x = 0; $x < count($quantities); $x++) - {{ ($quantities[$x] == 1) ? $quantities[$x]." unit": $quantities[$x]." units" }}
    - @endfor -
    - @for($x = 0; $x < count($subtotals); $x++) - {{ ugandan_shillings($subtotals[$x]) }}
    - @endfor -
    {{ ugandan_shillings($bill->total_amount) }}{{ ugandan_shillings($_amount_paid) }} - {{ ugandan_shillings($hospital_bill_balance) }}{{ ugandan_shillings($bill->balance) }}{{ ugandan_shillings($hospital_bill_balance) }}{{ ugandan_shillings($bill->balance) }}{{ ugandan_shillings($hospital_bill_balance) }}
    {{ ($count + 1)."." }}{{ get_name($bill->vendor, 'id', 'name', 'suppliers') }}{{ $bill->bill_number }}{{ streamline_date($bill->bill_due_date) }}{{ $bill->bill_memo }} - @php $payable_accounts = explode(',', $bill->payable_account); @endphp - @foreach ($payable_accounts as $payable_account) - {{ get_name($payable_account, 'id', 'name', 'chart_of_accounts') }}
    - @endforeach -
    - @if($bill->bill_type == 'DRU') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'drugs') }}
    - @endfor - @elseif($bill->bill_type == 'SUN') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'sundries') }}
    - @endfor - @elseif($bill->bill_type == 'DEN') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'dentals') }}
    - @endfor - @elseif($bill->bill_type == 'RAD') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'radiologies') }}
    - @endfor - @elseif($bill->bill_type == 'LAB') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'labs') }}
    - @endfor - @elseif($bill->bill_type == 'GEN') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'general_items') }}
    - @endfor - @elseif($bill->bill_type == 'PAY') - @for($x = 0; $x < count($items); $x++) - {{ get_name($items[$x], 'id', 'name', 'payment_items') }}
    - @endfor - @endif -
    - @for($x = 0; $x < count($quantities); $x++) - {{ ($quantities[$x] == 1) ? $quantities[$x]." unit": $quantities[$x]." units" }}
    - @endfor -
    - @for($x = 0; $x < count($subtotals); $x++) - {{ ugandan_shillings($subtotals[$x]) }}
    - @endfor -
    {{ ugandan_shillings($bill->total_amount) }}{{ ugandan_shillings($_amount_paid) }} - {{ ugandan_shillings($hospital_bill_balance) }}{{ ugandan_shillings($bill->balance) }}{{ ugandan_shillings($hospital_bill_balance) }}{{ ugandan_shillings($bill->balance) }}{{ ugandan_shillings($hospital_bill_balance) }}
    {{ __('finance_reports.total') }}{{ ugandan_shillings($total) }}{{ ugandan_shillings($amount_paid) }}{{ ugandan_shillings($balance) }}
    - @endif - - @else - - - - - - - - - - - @php - $name = get_name($chart_of_account, 'id', 'name', 'chart_of_accounts'); - $created_by = get_name($chart_of_account, 'id', 'created_by', 'chart_of_accounts'); - $created_at = get_name($chart_of_account, 'id', 'created_at', 'chart_of_accounts'); - $balance = get_name($chart_of_account, 'id', 'balance', 'chart_of_accounts'); - @endphp - - - - - - - - - - - - - - - -
    {{ __('finance_reports.name') }}{{ __('finance_reports.registered_by') }}:{{ __('finance_reports.registered_on') }}:{{ __('finance_reports.amount') }}
    {{ $name }}{{ get_full_name($created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($created_at) }}{{ ugandan_shillings($balance) }}
    {{ __('finance_reports.total') }} :{{ ugandan_shillings($balance) }}
    - @endif -
    -
    -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/non_current_liabilities.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/non_current_liabilities.blade.php deleted file mode 100755 index 5bd70fd5..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/non_current_liabilities.blade.php +++ /dev/null @@ -1,136 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    Non-Current Liabilities Accounts

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    -
    -
    - -

    {{ $title }}

    - -
    - -
    - - - - - - - - - - @php $sum_balance = 0; @endphp - @if(count($result) > 0) - @foreach($result as $record) - @php $sum_balance += $record->balance; @endphp - - - - - - - @if($loop->last) - @php $sum_balance = $record->balance; @endphp - @endif - - @endforeach - @endif - - - - - - - - -
    {{ __('finance_reports.record_date') }} :{{ __('finance_reports.staff_in_charge') }} :{{ __('finance_reports.type') }}{{ __('finance_reports.balance') }}
    {{ streamline_date($record->created_at) }}{{ get_full_name($record->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ get_name($record->type, 'id', 'name', 'account_types') }}{{ ugandan_shillings($record->balance) }}
    - {{ __('finance_reports.current_running_balance') }} - - {{ ugandan_shillings($sum_balance) }} -
    -
    -
    -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/other_current_assets.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/other_current_assets.blade.php deleted file mode 100755 index 1e9a890a..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/other_current_assets.blade.php +++ /dev/null @@ -1,136 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    Other Current Asset Accounts

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    -
    -
    - -

    {{ $title }}

    - -
    - -
    - - - - - - - - - - @php $sum_balance = 0; @endphp - @if(count($result) > 0) - @foreach($result as $record) - @php $sum_balance += $record->balance; @endphp - - - - - - - @if($loop->last) - @php $sum_balance = $record->balance; @endphp - @endif - - @endforeach - @endif - - - - - - - - -
    {{ __('finance_reports.record_date') }} :{{ __('finance_reports.staff_in_charge') }} :{{ __('finance_reports.type') }}{{ __('finance_reports.balance') }}
    {{ streamline_date($record->created_at) }}{{ get_full_name($record->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ get_name($record->type, 'id', 'name', 'account_types') }}{{ ugandan_shillings($record->balance) }}
    - {{ __('finance_reports.current_running_balance') }} - - {{ ugandan_shillings($sum_balance) }} -
    -
    -
    -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/other_current_liabilities.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/other_current_liabilities.blade.php deleted file mode 100755 index 3802acff..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/other_current_liabilities.blade.php +++ /dev/null @@ -1,136 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    Other Current Liabilities Accounts

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    -
    -
    - -

    {{ $title }}

    - -
    - -
    - - - - - - - - - - @php $sum_balance = 0; @endphp - @if(count($result) > 0) - @foreach($result as $record) - @php $sum_balance += $record->balance; @endphp - - - - - - - @if($loop->last) - @php $sum_balance = $record->balance; @endphp - @endif - - @endforeach - @endif - - - - - - - - -
    {{ __('finance_reports.record_date') }} :{{ __('finance_reports.staff_in_charge') }} :{{ __('finance_reports.type') }}{{ __('finance_reports.balance') }}
    {{ streamline_date($record->created_at) }}{{ get_full_name($record->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ get_name($record->type, 'id', 'name', 'account_types') }}{{ ugandan_shillings($record->balance) }}
    - {{ __('finance_reports.current_running_balance') }} - - {{ ugandan_shillings($sum_balance) }} -
    -
    -
    -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/proffesional_fees.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/proffesional_fees.blade.php deleted file mode 100755 index d597afc8..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/proffesional_fees.blade.php +++ /dev/null @@ -1,203 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    Expenses

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    - - -
    -
    - {{ Form::hidden('account', $chart_of_account, ['id'=>'account']) }} -
    - -
    -
    - -
    -
    -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success btn-rounded btn-block pull-right', 'id'=>'search_btn']) }} -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    - -

    {{ $title }}

    - -
    -
    - - - - - - - - - - - @php $professional_fees_total = 0; @endphp - - @foreach($ward_procedure_staff_fees as $ward_procedure) - - - - - - - - - @php $professional_fees_total += $ward_procedure->staff_fee; @endphp - @endforeach - - - - - - - - - - -
    Patient NumberPatient NamePatient CategoryProcedureAmount
    {{ get_name($ward_procedure->patient_id, 'id', 'number', 'patients') }}{{ get_full_name($ward_procedure->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ get_name(get_name($ward_procedure->patient_id, 'id', 'category_id', 'patients'), 'id', 'name', 'patient_categories') }}{{ get_name($ward_procedure->procedure_id, 'id', 'name', 'procedures') }}{{ ugandan_shillings($ward_procedure->staff_fee) }}
    Total :{{ ugandan_shillings($professional_fees_total) }}
    -
    -
    -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/undeposited_funds.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/undeposited_funds.blade.php deleted file mode 100755 index ca9b5429..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/accounts/undeposited_funds.blade.php +++ /dev/null @@ -1,138 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    Current Asset Accounts

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    -
    -
    - -

    {{ $title }}

    - -
    - -
    - - - - - - - - - - - - - @php - $debit_total = 0; - $credit_total = 0; - $running_account_balance = 0; - @endphp - @if(count($undeposited_funds_banking_records) > 0 ) - - @foreach($undeposited_funds_banking_records as $record) - - - - - - - - - - @php - $debit_total += $record['debit']; - $credit_total += $record['credit']; - $running_account_balance = $record['account_balance']; - @endphp - @endforeach - - - - - - - - - - - - - - - - - - - - @endif -
    DateTransaction IDTransaction TypememoCreditDebitAccount Balance
    {{ streamline_date($record['trans_date']) }}{{ $record['trans_id'] }}{{ $record['trans_type'] }}{{ $record['memo'] }}{{ ugandan_shillings($record['credit']) }}{{ ugandan_shillings($record['debit']) }}{{ ugandan_shillings($record['account_balance']) }}
    Total :{{ ugandan_shillings($credit_total) }}{{ ugandan_shillings($debit_total) }}
    Running Balance :{{ ugandan_shillings($running_account_balance) }}
    -
    - -
    -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/balance_sheet.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/balance_sheet.blade.php deleted file mode 100755 index ff555a6d..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/balance_sheet.blade.php +++ /dev/null @@ -1,653 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('finance_reports.balance_sheet') }}

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    - - @include('flash::message') - - {{ Form::open(['method'=>'post','route' => 'finance_reports.balance_sheet']) }} - -
    -
    -
    - - -
    -
    -
    - -
    -
    - -
    -
    -
    - {{ Form::submit(__('finance_reports.submit'), ['class'=>'btn btn-success btn-rounded btn-block pull-right']) }} -
    -
    -
    -
    - {{ Form::close() }} - -
    - - - @if($request != []) - @if(($request->dates == "today") || ($request->dates == "yesterday") || ($request->dates == "custom_date") || ($request->dates == "custom_date_range")) - -
    - -
    - {{ Form::open(['method'=>'post','route' => 'finance_reports.print_balance_sheet', 'target' => "_blank"]) }} - - {{ Form::hidden('non_current_assets', serialize($non_current_assets)) }} - {{ Form::hidden('current_assets', serialize($current_assets)) }} - {{ Form::hidden('other_current_assets', serialize($other_current_assets)) }} - {{ Form::hidden('non_current_liabilities', serialize($non_current_liabilities)) }} - {{ Form::hidden('current_liabilities', serialize($current_liabilities)) }} - {{ Form::hidden('other_current_liabilities', serialize($other_current_liabilities)) }} - {{ Form::hidden('equities', serialize($equities)) }} - {{ Form::hidden('display', $display) }} - - - - {{ Form::close() }} -
    - -
    -
    -
    - @php $hospital_information = \Streamline\Models\HospitalInformation::first(); @endphp -
    -
    -

    {{ $hospital_information->name }}

    -

    Email: {{ $hospital_information->email }} | Tel: {{ $hospital_information->phone_number }}

    -

    Address: {{ $hospital_information->address }}, {{ $hospital_information->country }}

    -

    {{ __('finance_reports.balance_sheet') }}

    -

    {{ $display }}

    -
    - - - -
    -
    -

    ASSETS

    -
    -
    - - -
    -
    -

    Non-Current Assets

    -
    -
    - -
    -
    - - @php $non_current_assets_sum = 0; @endphp - - @if(count($non_current_assets) > 0) - @foreach($non_current_assets as $data) - @php $non_current_assets_sum += is_numeric($data['amount']) ? (int)$data['amount'] : 0 ; @endphp - - - - - - @endforeach - @else - - @endif - - - - - -
    {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }}{{ ugandan_shillings((int)$data['amount']) }} - - - {{ __('finance_reports.details') }} - -
    {{ __('finance_reports.no_available_records') }}

    Total Non-Current Assets :

    {{ ugandan_shillings((int)$non_current_assets_sum) }}

    -
    -
    - - - -
    -
    -

    Current Assets

    -
    -
    - -
    -
    - - @php $current_assets_sum = 0; @endphp - - @if(count($current_assets) > 0) - @foreach($current_assets as $data) - @php $current_assets_sum += (int)$data['amount']; @endphp - - - - - - @endforeach - @else - - @endif - - @if(count($individual_accounts_receivables) > 0) - @foreach($individual_accounts_receivables as $data) - @php $current_assets_sum += (int)$data['amount']; @endphp - - - - - - @endforeach - @endif - - - - - - -
    {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }}{{ ugandan_shillings((int)$data['amount']) }} - - - {{ __('finance_reports.details') }} - -
    {{ __('finance_reports.no_available_records') }}
    {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }}{{ ugandan_shillings((int)$data['amount']) }} - - - {{ __('finance_reports.details') }} - -

    Total Current Assets :

    {{ ugandan_shillings((int)$current_assets_sum) }}

    -
    -
    - - - -
    -
    -

    Other Current Assets

    -
    -
    - -
    -
    - - @php $other_current_assets_sum = 0; @endphp - - @if(count($other_current_assets) > 0) - @foreach($other_current_assets as $data) - @php $other_current_assets_sum += (int)$data['amount']; @endphp - - - - - - @endforeach - @else - - @endif - - - - - -
    {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }}{{ ugandan_shillings((int)$data['amount']) }} - - - {{ __('finance_reports.details') }} - -
    {{ __('finance_reports.no_available_records') }}

    Total Other Current Assets :

    {{ ugandan_shillings((int)$other_current_assets_sum) }}

    -
    -
    - - - -
    - @php $total_assets_sum = $non_current_assets_sum + $current_assets_sum + $other_current_assets_sum; @endphp -

    TOTAL ASSETS :

    -

    {{ ugandan_shillings($total_assets_sum) }}

    -
    - - - - - - - - - -
    -
    -

    LIABILITIES & EQUITY

    -
    -
    - - - - - -
    -
    -

    Non-Current Liabilities

    -
    -
    - -
    -
    - - @php $non_current_liabilities_sum = 0; @endphp - - @if(count($non_current_liabilities) > 0) - @foreach($non_current_liabilities as $data) - @php $non_current_liabilities_sum += (int)$data['amount']; @endphp - - - - - - @endforeach - @else - - @endif - - - - - -
    {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }}{{ ugandan_shillings((int)$data['amount']) }} - - {{ __('finance_reports.details') }} - -
    {{ __('finance_reports.no_available_records') }}

    Total Non-Current Liabilities :

    {{ ugandan_shillings((int)$non_current_liabilities_sum) }}

    -
    -
    - - - -
    -
    -

    Current Liabilities

    -
    -
    - -
    -
    - - @php $current_liabilities_sum = 0; @endphp - - @if(count($current_liabilities) > 0) - @foreach($current_liabilities as $data) - @php $current_liabilities_sum += (int)$data['amount']; @endphp - - - - - - @endforeach - @else - - @endif - - - - - -
    {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }}{{ ugandan_shillings((int)$data['amount']) }} - - {{ __('finance_reports.details') }} - -
    {{ __('finance_reports.no_available_records') }}

    Total Current Liabilities :

    {{ ugandan_shillings((int)$current_liabilities_sum) }}

    -
    -
    - - - -
    -
    -

    Other Current Liabilities

    -
    -
    - -
    -
    - - @php $other_current_liabilities_sum = 0; @endphp - - @if(count($other_current_liabilities) > 0) - @foreach($other_current_liabilities as $data) - @php $other_current_liabilities_sum += (int)$data['amount']; @endphp - - - - - - @endforeach - @else - - @endif - - - - - -
    {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }}{{ ugandan_shillings((int)$data['amount']) }} - - {{ __('finance_reports.details') }} - -
    {{ __('finance_reports.no_available_records') }}

    Total Other Current Liabilities :

    {{ ugandan_shillings((int)$other_current_liabilities_sum) }}

    -
    -
    - - - -
    - @php $total_liabilities_sum = $non_current_liabilities_sum + $current_liabilities_sum + $other_current_liabilities_sum; @endphp -

    Total Liabilities :

    -

    {{ ugandan_shillings($total_liabilities_sum) }}

    -
    - - - - - - -
    -
    -

    Equity

    -
    -
    - -
    -
    - - @php $a_revenue_sum = $c_revenue_sum = $equities_sum = 0; @endphp - - @if(count($equities) > 0) - @foreach($equities as $data) - @php - $equities_sum += (int)$data['amount']; - $a_revenue_sum += (int)$data['amount']; - @endphp - - - - - @endforeach - - - - @php - $equities_sum += (int)$accrual_net_income; - $a_revenue_sum += (int)$accrual_net_income; - @endphp - - - - {{-- - - @php - $equities_sum += (int)$retained_earnings; - $a_revenue_sum += (int)$retained_earnings; - @endphp - - --}} - @else - - @endif - - - - - - -
    {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }} {{ ugandan_shillings((int)$data['amount']) }} - - - - {{ __('finance_reports.details') }} - -
    Net Income {{ ugandan_shillings((int)$accrual_net_income) }} - - - - {{ __('finance_reports.details') }} - -
    Retained Earnings (Stre@mline generated) {{ ugandan_shillings((int)$retained_earnings) }} - - - - {{ __('finance_reports.details') }} - -
    {{ __('finance_reports.no_available_records') }}

    Total Equity :

    {{ ugandan_shillings((int)$a_revenue_sum) }}

    -
    -
    - - - - -
    -

    TOTAL LIABILITIES & EQUITY :

    -

    {{ ugandan_shillings($total_liabilities_sum + $a_revenue_sum) }}

    -
    - - - - - - -
    -

    ASSETS

    -

    =

    -

    LIABILITIES

    -

    +

    -

    EQUITY

    -
    -
    -

    {{ ugandan_shillings($total_assets_sum) }}

    -

    =

    -

    {{ ugandan_shillings($total_liabilities_sum) }}

    -

    +

    -

    {{ ugandan_shillings($equities_sum) }}

    -
    -
    -
    - - @else -
    -
    -
    -

    {{ __('finance_reports.select_valid_date') }}

    -
    -
    - @endif - @else -
    -
    -
    -

    {{ __('finance_reports.select_valid_date') }}e

    -
    -
    - @endif - -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/cash_flow_statement.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/cash_flow_statement.blade.php deleted file mode 100755 index 207b2f1f..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/cash_flow_statement.blade.php +++ /dev/null @@ -1,454 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('finance_reports.cash_flow_statement') }}

    -
    -
    - -
    -
    - - @include('flash::message') -
    -
    -
    -
    -
    -
    - {{ Form::open(['method'=>'post','route' => 'finance_reports.cash_flow_statement']) }} -
    -
    -
    - - -
    -
    - -
    - -
    - -
    - -
    - -
    -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success btn-rounded btn-block pull-right']) }} -
    -
    - -
    -
    - {{ Form::close() }} -
    - -
    - -
    - -
    -
    - {{ Form::open(['method'=>'post','route' => 'finance_reports.print_cash_flow_statement', 'target' => "_blank"]) }} - - {{ Form::close() }} -
    -
    -
    - -
    - -
    -
    -

    {{ $hospital_information->name }}

    -

    {{ __('finance_reports.cash_flow_statement') }}

    -

    {{ $operating_activities['display'] }}

    - - - - - - - - - - - - - @php - $depreciation_data = $operating_activities['depreciation_data']; - $depreciation_data_sum = 0; - foreach ($depreciation_data as $key => $value) { - $cost_price = $value['cost_price']; - $display_cost_price = ""; - if ($cost_price == 0) { - $display_cost_price = ugandan_shillings($cost_price); - } else if ($cost_price < 0) { - $display_cost_price = ugandan_shillings(-$cost_price); - $depreciation_data_sum += -$cost_price; - } else { - $display_cost_price = "(" . ugandan_shillings($cost_price) . ")"; - $depreciation_data_sum -= $cost_price; - } - @endphp - - - - - @php - } - $display_depreciation_data_sum = ($depreciation_data_sum >= 0) ? ugandan_shillings($depreciation_data_sum) : "(" . ugandan_shillings(-$depreciation_data_sum) . ")"; - @endphp - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @php - $asset_transactions = $investing_activities; - $net_investing_activities = 0; - foreach ($asset_transactions as $key => $value) { - $cost_price = $value['cost_price']; - $display_cost_price = ""; - if ($cost_price == 0) { - $display_cost_price = ugandan_shillings($cost_price); - } else if ($cost_price < 0) { - $display_cost_price = ugandan_shillings(-$cost_price); - $net_investing_activities += -$cost_price; - } else { - $display_cost_price = "(" . ugandan_shillings($cost_price) . ")"; - $net_investing_activities -= $cost_price; - } - @endphp - - - - - @php - } - $display_net_investing_activities = ($net_investing_activities >= 0) ? ugandan_shillings($net_investing_activities) : "(" . ugandan_shillings(-$net_investing_activities) . ")"; - @endphp - - - - - - - - - - - - - - @php - $non_current_liabilities_data_sum = 0; - $non_current_liabilities = $financing_activities['non_current_liabilities']; - $equities_data_sum = 0; - $equities = $financing_activities['equities']; - - if(count($non_current_liabilities) > 0) { - foreach($non_current_liabilities as $data) { - $amount = (int)$data['amount']; - $bill_paid_amount = (int)$data['bill_paid_amount']; - $amount_to_use = ($bill_paid_amount > 0) ? $bill_paid_amount : $amount; - - $non_current_liabilities_data_sum += $amount_to_use; - $display_non_current_liability = ($amount_to_use >= 0) ? ugandan_shillings($amount_to_use) : "(" . ugandan_shillings(-$amount_to_use) . ")"; - @endphp - - - - - @php - } - } - $display_non_current_liabilities_data_sum = ($non_current_liabilities_data_sum >= 0) ? ugandan_shillings($non_current_liabilities_data_sum) : "(" . ugandan_shillings(-$non_current_liabilities_data_sum) . ")"; - @endphp - - - - - - - - - - @php - $equities_sum = 0; - - if(count($equities) > 0) { - foreach($equities as $data) { - $amount_to_use = (int)$data['amount']; - $equities_sum += $amount_to_use; - $display_equity = ($amount_to_use >= 0) ? ugandan_shillings($amount_to_use) : "(" . ugandan_shillings(-$amount_to_use) . ")"; - @endphp - - - - - @php - } - } - $display_equities_data_sum = ($equities_sum >= 0) ? ugandan_shillings($equities_sum) : "(" . ugandan_shillings(-$equities_sum) . ")"; - $net_financing_activities = $non_current_liabilities_data_sum + $equities_sum; - $display_financing_activities = ($net_financing_activities >= 0) ? ugandan_shillings($net_financing_activities) : "(" . ugandan_shillings(-$net_financing_activities) . ")"; - @endphp - - - - - - - - - - - - - - - - - - - - - - - - -
    Operating activities
    - Net income - - @php - $net_income = intval($operating_activities['c_net_profit']); - $display_net_income = ($net_income >= 0) ? ugandan_shillings($net_income) : "(" . ugandan_shillings(-$net_income) . ")"; - @endphp - {{ $display_net_income }} -
    Depreciation:
    {{ get_name($key, 'id', 'name', 'chart_of_accounts') }} - {{ $display_cost_price }} -
    Total transactions:{{ $display_depreciation_data_sum }}
    Sum - @php - $inc_n_dep = $net_income + $depreciation_data_sum; - $display_inc_n_dep = ($inc_n_dep >= 0) ? ugandan_shillings($inc_n_dep) : "(" . ugandan_shillings(-$inc_n_dep) . ")"; - @endphp - {{ $display_inc_n_dep }} -
    Changes in Working Capital
    Accounts receivable - @php - $accounts_receivable_closing = intval($working_capital['accounts_receivable_closing']); - $accounts_receivable_opening = intval($working_capital['accounts_receivable_opening']); - $accounts_receivable = $accounts_receivable_opening - $accounts_receivable_closing; - $display_accounts_receivable = ($accounts_receivable >= 0) ? ugandan_shillings($accounts_receivable) : "(" . ugandan_shillings(-$accounts_receivable) . ")"; - @endphp - {{ $display_accounts_receivable }} -
    - Inventory - - @php - $inventory_closing = intval($working_capital['inventory_closing']); - $inventory_opening = intval($working_capital['inventory_opening']); - $inventory = $inventory_opening - $inventory_closing; - $display_inventory = ($inventory >= 0) ? ugandan_shillings($inventory) : "(" . ugandan_shillings(-$inventory) . ")"; - @endphp - {{ $display_inventory }}   - @for($i = 0; $i < count($working_capital['inventory_data_strings']); $i++) - #{{ $i+1 }}, - @endfor -
    - Accounts payable - - @php - $accounts_payable_closing = intval($working_capital['accounts_payable_closing']); - $accounts_payable_opening = intval($working_capital['accounts_payable_opening']); - $accounts_payable = $accounts_payable_closing - $accounts_payable_opening; - $display_accounts_payable = ($accounts_payable >= 0) ? ugandan_shillings($accounts_payable) : "(" . ugandan_shillings(-$accounts_payable) . ")"; - @endphp - {{ $display_accounts_payable }}   - @for($i = 0; $i < count($working_capital['accounts_payable_data_strings']); $i++) - #{{ $i+1 }}, - @endfor -
    - Net changes from Working Capital - - @php - // for assets, when the closing balance is bigger, it's a cash outflow hence a negative. The reverse is true. - $inventory_computed = ($inventory > 0) ? -$inventory : -$inventory; - $net_working_capital = $accounts_receivable + $inventory_computed + $accounts_payable; - $display_working_capital = ($net_working_capital >= 0) ? ugandan_shillings($net_working_capital) : "(" . ugandan_shillings(-$net_working_capital) . ")"; - @endphp - {{ $display_working_capital }} -
    - Net cash from Operating Activities - - @php - $net_operating_activities = $inc_n_dep + $net_working_capital; - $display_operating_activities = ($net_operating_activities >= 0) ? ugandan_shillings($net_operating_activities) : "(" . ugandan_shillings(-$net_operating_activities) . ")"; - @endphp - {{ $display_operating_activities }} -
    Investing Activities
    {{ get_name($key, 'id', 'name', 'chart_of_accounts') }} - {{ $display_cost_price }} -
    Net cash from Investing Activities{{ $display_net_investing_activities }}
    Financing Activities
    Non-current liabilities:
    {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }} - {{ $display_non_current_liability }} -
    Total transactions (Non-current liabilities):{{ $display_non_current_liabilities_data_sum }}
    Equities:
    {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }} - {{ $display_equity }} -
    Total transactions (Equities):{{ $display_equities_data_sum }}
    Net cash from Financing Activities{{ $display_financing_activities }}
    - Net cash increase - - @php - $net_cash_increase = $net_operating_activities + $net_investing_activities + $net_financing_activities; - $display_net_cash_increase = ($net_cash_increase >= 0) ? ugandan_shillings($net_cash_increase) : "(" . ugandan_shillings(-$net_cash_increase) . ")"; - @endphp - {{ $display_net_cash_increase }} -
    - Cash at the beginning of the period - - @php - $cash_beginning = intval($peroid_start_cash); - $display_cash_beginning = ($cash_beginning >= 0) ? ugandan_shillings($cash_beginning) : "(" . ugandan_shillings(-$cash_beginning) . ")"; - @endphp - {{ $display_cash_beginning }} -
    - Cash at the end of the period - - @php - $cash_end = $net_cash_increase + $cash_beginning; - $display_cash_end = ($cash_end >= 0) ? ugandan_shillings($cash_end) : "(" . ugandan_shillings(-$cash_end) . ")"; - @endphp - {{ $display_cash_end }} -
    -
    -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/debt_plan_guarantor_agreement.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/debt_plan_guarantor_agreement.blade.php deleted file mode 100755 index 4f368a9b..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/debt_plan_guarantor_agreement.blade.php +++ /dev/null @@ -1,85 +0,0 @@ -@extends('layouts.main') - -@push('styles') -@endpush - -@section('content') - -
    -
    -

    {{ __('finance_reports.guarantor_agreement') }}

    -
    -
    - -
    -
    - -
    -
    - -
    -
    -
    - -
    -
    -
    -
    -
    - {{ __('patient_finance.agreement1') }} - {{ ugandan_shillings($amount_to_pay) }} - {{ __('patient_finance.agreement2') }} - {{ ugandan_shillings($amount_owed) }} - {{ __('patient_finance.agreement3') }} - ({{ $patient_names }}) - {{ __('patient_finance.agreement4') }} - {{ $payment_date }} - {{ __('patient_finance.agreement5') }} - {{ $arrangement }} - {{ __('patient_finance.agreement6') }}. -


    -
    -
    {{ __('patient_finance.signed_by') }}:
    -
    {{ __('patient_finance.name') }}:
      @foreach ($guarantor_name as $guarantor)
    • {{ $guarantor }}
    • @endforeach
    -
    {{ __('patient_finance.grade') }}:
    -
    {{ __('patient_finance.department') }}:
    -
    {{ __('patient_finance.date') }}:
    -
    -

    -
    -
    {{ __('patient_finance.witnessed_by') }}:
    -
    {{ __('patient_finance.name') }}:
    -
    {{ __('patient_finance.grade') }}:
    -
    {{ __('patient_finance.department') }}:
    -
    {{ __('patient_finance.date') }}:
    -
    -
    -
    - -

    - - {{ __('patient_finance.date') }} Printed: {{ \Carbon\Carbon::now()->format('D m Y') }} -
    -
    - -@endsection - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/dependants_renewals_report.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/dependants_renewals_report.blade.php deleted file mode 100644 index 382442c8..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/dependants_renewals_report.blade.php +++ /dev/null @@ -1,183 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    Dependant Renewals Report

    -
    -
    - -
    -
    - - {{ Form::open(['route' => 'finance_reports.dependants_renewals_report' , 'data-toggle' => 'validator']) }} -
    -
    -
    -
    - {{ Form::label('patient_category', 'Patient Category') }} - {{ Form::select('patient_category', $patient_categories,'',['class' => 'form-control compulsory', 'required','id'=>'patient_category']) }} -
    -
    -
    -
    - {{ Form::label('start_date', 'Date From') }} - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'start_date']) }} -
    -
    -
    -
    - {{ Form::label('end_date', 'Date To') }} - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'end_date']) }} -
    -
    -
    -
    - {{ Form::button('Search',['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    -
    -
    - {{ Form::close() }} - -
    -

    {{ $criteria }}

    - - {{ Form::hidden('start_date_hidden', $start_date, ['id' => 'start_date_hidden']) }} - {{ Form::hidden('end_date_hidden', $end_date, ['id' => 'end_date_hidden']) }} - -
    - -
    - - - - - - - - - - - - - @if(count($records) > 0) - @foreach($records as $record) - @php - $dependants_record = DB::table('category_patient_dependants')->whereNull('deleted_at')->where('main_patient_id', $record->main_patient_id)->orderBy('id','desc')->first(); - - $dependants_array = explode(",", $dependants_record->dependant_patient_ids); - @endphp - - - - - - - - - @endforeach - @endif - -
    Date FromDate ToNameDependants CoveredThreshold AmountRenewal Date
    {{ streamline_date($dependants_record->current_subscription_start_date) }}{{ streamline_date($dependants_record->current_subscription_end_date) }}{{ get_full_name($record->main_patient_id, "id", "first_name", "last_name", "patients") }} - {{ count($dependants_array) }} - {{ ugandan_shillings($record->renewal_amount) }}{{ streamline_date($record->renewal_date) }}
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/detail/inpatient_deposits.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/detail/inpatient_deposits.blade.php deleted file mode 100755 index 7767fcfa..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/detail/inpatient_deposits.blade.php +++ /dev/null @@ -1,159 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') - -
    -
    -

    Inpatient Deposit Details

    -
    -
    - -
    -
    - -
    -
    -
    -
    - -
    -
    -

    Deposits

    - - - - - - - - - - - - @php - $sum_total = 0; - @endphp - - - @if(count($result) > 0) - @foreach($result as $item) - - - - - - - - - @php - $sum_total += $item->patient_amount_paid; - @endphp - - @endforeach - @endif - - - - - - - - - - -
    Patient NumberPatient NameDateStaff In ChargeReceiptsAmountAction
    {{ get_patient_number($item->patient_id) }}{{ get_patient_name($item->patient_id) }}{{ streamline_date($item->created_at) }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ $item->receipt_number }}{{ ugandan_shillings($item->patient_amount_paid) }} - Print Receipt -
    Total{{ ugandan_shillings($sum_total) }}
    -
    -
    - -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - - - - - -@endpush - diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/detail/investigations.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/detail/investigations.blade.php deleted file mode 100644 index bb9911b0..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/detail/investigations.blade.php +++ /dev/null @@ -1,97 +0,0 @@ -
    -
    - -
    -
    -
    - @php $counter = 0; @endphp - @foreach($sorted_investigations as $super_category => $items) -
    -
    - - - - - - - - - - @if(is_donor_feature_enabled()) - - @endif - - - - - - - @php - $total_patient_paid = $total_general_discount = 0; - @endphp - @foreach($items as $receipt_number => $invs) - @php - $patient_paid = 0; - $central_billing_count = \Illuminate\Support\Facades\DB::table('central_billing_deposits')->where('receipt_number', $receipt_number)->count(); - @endphp - - - - - - - - @if(is_donor_feature_enabled()) - - @endif - - - - - @php - if (is_numeric(get_name($receipt_number, 'receipt_number', 'discount_amount', 'discounts'))){ - $total_general_discount += get_name($receipt_number, 'receipt_number', 'discount_amount', 'discounts'); - } - @endphp - @endforeach - - - - - - - - - - - - - - - -
    PatientStaffDateReceipt NoItem NameAmount Patient PaidDonor Discount if anyGeneral Discount if anyPatient CategoryAction
    {{ get_full_name($invs[0]['patient'], 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($invs[0]['patient'], 'id', 'number', 'patients') }}){{ $staff_members[$invs[0]['staff']] ?? '' }}{{ streamline_date($invs[0]['date']) }}{{ $receipt_number }} - @foreach($invs as $inv) -
  • {{ get_name($inv['item_id'], 'id', 'name', 'investigations') }}
  • - @php $patient_paid += $inv['amount_patient_paid']; @endphp - @php $total_patient_paid += $inv['amount_patient_paid']; @endphp - @endforeach -
    {{ ugandan_shillings($patient_paid) }}{{ ugandan_shillings(get_name($receipt_number, 'receipt_number', 'donor_to_pay', 'donor_discount_details')) }}{{ ugandan_shillings(get_name($receipt_number, 'receipt_number', 'discount_amount', 'discounts')) }}{{ get_name(get_name($invs[0]['patient'], 'id', 'category_id', 'patients'), 'id', 'name', 'patient_categories') }} - @if($central_billing_count > 0) - {{ __('patient_finance.print') }} - @else - {{ __('patient_finance.print') }} - @endif -
    Total{{ ugandan_shillings($total_patient_paid) }}{{ ugandan_shillings($total_general_discount) }}
    -
    -
    - @php $counter++; @endphp - @endforeach -
    -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/detail/received_cash.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/detail/received_cash.blade.php deleted file mode 100755 index 7de3e21c..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/detail/received_cash.blade.php +++ /dev/null @@ -1,695 +0,0 @@ -@php use Streamline\Models\InvoicePayment; @endphp -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    Received Cash Detail

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    - -
    -
    -
    -
    - - - - - - - - - - - @php - $sum_amount_total = 0; - @endphp - - - @if(count($service_deposits) > 0) - @foreach($service_deposits as $payment) - - - - - @php - $count = 1; - $service_items = explode(',',$payment->items_ids); - $service_amounts = explode(',',$payment->items_amounts); - - $sum_amount_total += $payment->patient_amount_paid; - @endphp - - - - - @endforeach - - - - - - - - - - - - @else - - - - @endif -
    Patient NumberPatient NameRecorded OnItemsItem AmountPatient Amount Paid
    {{ get_name($payment->patient_id, 'id', 'number', 'patients') }}{{ get_full_name($payment->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ streamline_date($payment->created_at) }} - @foreach($service_items as $item) - {{ $count.". ".get_name($item, 'id', 'name', 'services') }} - @endforeach - - @foreach($service_amounts as $item) - {{ $count.". ".ugandan_shillings($item) }} - @endforeach - {{ ugandan_shillings($payment->patient_amount_paid) }}
    Total :{{ ugandan_shillings($sum_amount_total) }}
    No Records Available
    -
    -
    -
    -
    - - - - - - - - - - - - @php - $sum_amount_total = 0; - @endphp - - - @if(count($treatment_deposits) > 0) - @foreach($treatment_deposits as $payment) - - - - - @php - $count = 1; - $treatment_items = explode(',',$payment->treatment_items); - $treatment_quantities = explode(',',$payment->treatment_quantities); - $treatment_subtotals = explode(',',$payment->treatment_subtotals); - - $sum_amount_total += $payment->patient_amount_paid; - @endphp - - - - - - @endforeach - - - - - - - - - - - - - @else - - - - @endif -
    Patient NumberPatient NameRecorded OnItemsQuantitiesSubtotalsPatient Amount Paid
    {{ get_name($payment->patient_id, 'id', 'number', 'patients') }}{{ get_full_name($payment->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ streamline_date($payment->created_at) }} - @foreach($treatment_items as $item) - {{ $count.". ".get_name($item, 'id', 'name', 'drugs') }} - @endforeach - - @foreach($treatment_quantities as $item) - {{ $count.". ".$item }} - @endforeach - - @foreach($treatment_subtotals as $item) - {{ $count.". ".ugandan_shillings($item) }} - @endforeach - {{ ugandan_shillings($payment->patient_amount_paid) }}
    Total :{{ ugandan_shillings($sum_amount_total) }}
    No Records Available
    -
    -
    -
    -
    - - - - - - - - - - - @php - $sum_amount_total = 0; - @endphp - - - @if(count($investigation_deposits) > 0) - @foreach($investigation_deposits as $payment) - - - - - @php - $count = 1; - $investigation_items = explode(',',$payment->investigation_items); - $investigation_amounts = explode(',',$payment->investigation_amounts); - - $sum_amount_total += $payment->patient_amount_paid; - @endphp - - - - - @endforeach - - - - - - - - - - - - @else - - - - @endif -
    Patient NumberPatient NameRecorded OnItemsItem AmountsPatient Amount Paid
    {{ get_name($payment->patient_id, 'id', 'number', 'patients') }}{{ get_full_name($payment->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ streamline_date($payment->created_at) }} - @foreach($investigation_items as $item) - {{ $count.". ".get_name($item, 'id', 'name', 'investigations') }} - @endforeach - - @foreach($investigation_amounts as $item) - {{ $count.". ".ugandan_shillings($item) }} - @endforeach - {{ ugandan_shillings($payment->patient_amount_paid) }}
    Total :{{ ugandan_shillings($sum_amount_total) }}
    No Records Available
    -
    -
    -
    -
    - - - - - - - - - - - @php - $sum_amount_total = 0; - @endphp - - - @if(count($procedure_deposits) > 0) - @foreach($procedure_deposits as $payment) - - - - @php - $count = 1; - $procedure_items = explode(',',$payment->procedure_items); - $procedure_amounts = explode(',',$payment->procedure_amounts); - - $sum_amount_total += $payment->patient_amount_paid; - @endphp - - - - - - @endforeach - - - - - - - - - - - - @else - - - - @endif -
    Patient NumberPatient NameRecorded OnItemsSubtotalsPatient Amount Paid
    {{ get_name($payment->patient_id, 'id', 'number', 'patients') }}{{ get_full_name($payment->patient_id, 'id', 'first_name', 'last_name', 'patients') }} - @foreach($procedure_items as $item) - {{ $count.". ".get_name($item, 'id', 'name', 'procedures') }} - @endforeach - - @foreach($procedure_amounts as $item) - {{ $count.". ".ugandan_shillings($item) }} - @endforeach - {{ ugandan_shillings(array_sum($procedure_amounts)) }}{{ ugandan_shillings($payment->patient_amount_paid) }}
    Total :{{ ugandan_shillings($sum_amount_total) }}
    No Records Available
    -
    -
    -
    -
    - - - - - - - - - - - - @php - $sum_amount_total = 0; - @endphp - - - @if(count($sundry_deposits) > 0) - @foreach($sundry_deposits as $payment) - - - - @php - $count = 1; - $sundry_items = explode(',',$payment->sundry_items); - $sundry_quantities = explode(',',$payment->sundry_quantity); - $sundry_subtotals = explode(',',$payment->sundry_subtotals); - - $sum_amount_total += $payment->patient_amount_paid; - @endphp - - - - - - - @endforeach - - - - - - - - - - - - - @else - - - - @endif -
    Patient NumberPatient NameRecorded OnItemsQuantitiesSubtotalsPatient Amount Paid
    {{ get_name($payment->patient_id, 'id', 'number', 'patients') }}{{ get_full_name($payment->patient_id, 'id', 'first_name', 'last_name', 'patients') }} - @foreach($sundry_items as $item) - {{ $count.". ".get_name($item, 'id', 'name', 'sundries') }} - @endforeach - - @foreach($sundry_quantities as $item) - {{ $count.". ".$item }} - @endforeach - - @foreach($sundry_subtotals as $item) - {{ $count.". ".ugandan_shillings($item) }} - @endforeach - {{ ugandan_shillings(array_sum($sundry_subtotals)) }}{{ ugandan_shillings($payment->patient_amount_paid) }}
    Total :{{ ugandan_shillings($sum_amount_total) }}
    No Records Available
    -
    -
    -
    -
    - - - - - - - - - @php - $sum_amount_total = 0; - $sum_amount_paid_total = 0; - @endphp - - @if(count($patient_category_invoice_payments) > 0) - - @foreach($patient_category_invoice_payments as $payment) - @php - $invoice_details = InvoicePayment::where('invoice_number', $payment->invoice_number)->first(); - - if (!$invoice_details) {continue;} - - $sum_amount_paid_total += $invoice_details->amount_paid; - $sum_amount_total += $invoice_details->total; - @endphp - - - - - - - @endforeach - - - - - - - - - - @else - - - - - - @endif -
    Patient CategoryRecorded ByAmount OwedAmount Paid
    {{ get_name($invoice_details->patient_category, 'id', 'name', 'patient_categories') }}{{ streamline_date($invoice_details->created_at) }}{{ ugandan_shillings($invoice_details->total) }}{{ ugandan_shillings($invoice_details->amount_paid) }}
    Total :{{ ugandan_shillings($sum_amount_total) }}{{ ugandan_shillings($sum_amount_paid_total) }}
    No Records Available
    -
    -
    -
    -
    - - - - - - - - - - - @php - $sum_amount_total = 0; - $sum_amount_paid_total = 0; - @endphp - - - @if(count($donor_invoice_payments) > 0) - @foreach($donor_invoice_payments as $payment) - - - @php - $sum_amount_paid_total += $payment->amount_paid; - $sum_amount_total += $payment->total; - $patient_id = get_name($payment->invoice_number, 'id', 'patient_id', 'donor_discount_details'); - @endphp - - - - - - - @endforeach - - - - - - - - - - - - @else - - - - @endif -
    DonorPatient NumberPatient NameRecorded ByAmount OwedAmount Paid
    {{ get_full_name($payment->donor_id, 'id', 'first_name', 'last_name', 'donors') }}{{ get_name($patient_id, 'id', 'number', 'patients') }}{{ get_full_name($patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ get_full_name($payment->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ ugandan_shillings($payment->total) }}{{ ugandan_shillings($payment->amount_paid) }}
    Total :{{ ugandan_shillings($sum_amount_total) }}{{ ugandan_shillings($sum_amount_paid_total) }}
    No Records Available
    -
    -
    -
    -
    - - - - - - - - - - - @php - $sum_amount_paid_total = 0; - $sum_amount_owed_total = 0; - @endphp - - - @if(count($debt_plan_payments) > 0) - @foreach($debt_plan_payments as $payment) - - @php - $debt_plan = \Streamline\Models\DebtPlan::find($payment->debt_plan_id); - $sum_amount_paid_total += $payment->amount_paid; - $sum_amount_owed_total += $payment->amount_owed; - @endphp - - - - - - - - @endforeach - - - - - - - - - - - - @else - - - - @endif -
    Staff GuarantorPatient NumberPatient NameRecorded ByAmount OwedAmount Paid
    {{ get_full_name($debt_plan->staff_guarantor, 'id', 'first_name', 'last_name', 'users') }}{{ get_name($debt_plan->patient_id, 'id', 'number', 'patients') }}{{ get_full_name($debt_plan->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ get_full_name($payment->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ ugandan_shillings($payment->amount_owed) }}{{ ugandan_shillings($payment->amount_paid) }}
    Total :{{ ugandan_shillings($sum_amount_owed_total) }}{{ ugandan_shillings($sum_amount_paid_total) }}
    No Records Available
    -
    -
    -
    -
    - - - - - - - - - @php - $sum_amount_owed_total = 0; - @endphp - - - @if(count($other_incomes) > 0) - @foreach($other_incomes as $payment) - - @php - $sum_amount_paid_total += $payment->deposit_amount; - @endphp - - - - - - @endforeach - - - - - - - - - - @else - - - - @endif -
    Authorized ByTransaction DateRecorded DateAmount
    {{ get_full_name($payment->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($payment->deposit_date) }}{{ streamline_date($payment->created_at) }}{{ ugandan_shillings($payment->deposit_amount) }}
    Total :{{ ugandan_shillings($sum_amount_paid_total) }}
    No Records Available
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/discountsReport.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/discountsReport.blade.php deleted file mode 100755 index 152318d4..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/discountsReport.blade.php +++ /dev/null @@ -1,252 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    Discounts Report

    -
    -
    - -
    -
    - -
    -
    -
    - -
    - - {{ Form::open(['method'=>'post','route' => 'finance_reports.discounts_report']) }} - -
    -

    Select A Patient Category

    -
    - -
    - {{ Form::label('category_label', 'Patient Category') }} - - -
    - -
    -

    Select A Date Or Date Range

    -
    - -
    - {{ Form::label('start_date', 'Start Date') }} -
    - {{ Form::text('start_date', '', ['class'=>'form-control compulsory','readonly', 'id'=>'start_date']) }} - -
    -
    - -
    - {{ Form::label('end_date', 'End Date') }} -
    - {{ Form::text('end_date', '', ['class'=>'form-control compulsory', 'readonly','id'=>'end_date']) }} - -
    -
    - -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    - -
    -
    -
    -
    - - @if($request != []) - @if($request->patient_category != "-select-") - @if(isset($request->start_date) && isset($request->end_date)) -
    - @if(isset($display)) -

    {!! isset($display) ? $display : '' !!}

    -
    -
    - @endif - -
    - - - - - - - - - - - - - @php - $sum_total = 0; - @endphp - @if(count($discounts) > 0) - - @foreach($discounts as $item) - - - - - @if($item->reason == "11") - - @else - - @endif - - - - - @php - $sum_total += $item->discount_amount; - @endphp - @endforeach - - - - - - - - - - - - - - @elseif(count($discounts) == 0) - - - - @endif -
    PatientNumberNameDateReasonReceipt NumberAmountAction
    {{ get_patient_number($item->patient_id) }}{{ get_patient_name($item->patient_id) }}{{ streamline_date($item->created_at) }}{{ get_name($item->reason,'id', 'name', 'finance_point_tags') }}{{ $item->reason }}{{ $item->receipt_number }}{{ ugandan_shillings($item->discount_amount) }} - {{ Form::open(['method'=>'post', 'route'=>'finance_reports.patient_discount_receipt']) }} - {{ Form::hidden('episode_id', $item->episode_id) }} - {{ Form::hidden('patient_id', $item->patient_id) }} - {{ Form::hidden('reason', $item->reason) }} - {{ Form::hidden('receipt_number', $item->receipt_number) }} - {{ Form::hidden('discount_amount', $item->discount_amount) }} - {{ Form::submit('Print Receipt', ['class'=>'btn btn-success']) }} - {{ Form::close() }} -
    Total{{ ugandan_shillings($sum_total) }}
    RECORDS NOT FOUND
    - - @if(true) - {{ Form::open(['method'=>'post','route' => 'finance_reports.receive_cashier_payments']) }} - - {{--{{ Form::hidden('user_id', $selected_user) }}--}} - {{--{{ Form::hidden('dates', ($request->start_date)."/".$request->end_date) }}--}} - {{--{{ Form::hidden('date_type', $request->dates) }}--}} - {{--{{ Form::hidden('total', $total) }}--}} - {{--{{ Form::submit('Receive Money', ['class'=>'btn btn-success ']) }}--}} - - {{ Form::close() }} - @endif -
    - @else -
    -
    -
    -

    Select a date or date range

    -
    -
    - @endif - @else -
    -
    -
    -

    Select a Valid date or date range

    -
    -
    - @endif - @else -
    -
    -
    -

    Select a Valid date or date rangee

    -
    -
    - @endif -
    -
    -
    -
    - -
    - - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/discrepancyReport.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/discrepancyReport.blade.php deleted file mode 100755 index 395bc857..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/discrepancyReport.blade.php +++ /dev/null @@ -1,204 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    Discrepancy Report

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    - - {{ Form::open(['method'=>'post','route' => 'finance_reports.discrepancies']) }} - -
    -

    Select A Staff Member

    -
    - -
    - - -
    - -
    -

    Select A Date Or Date Range

    -
    - -
    - {{ Form::label('start_date', 'Start Date') }} -
    - {{ Form::text('start_date', '', ['class'=>'form-control', 'readonly', 'id'=>'start_date']) }} - -
    -
    - -
    - {{ Form::label('end_date', 'End Date') }} -
    - {{ Form::text('end_date', '', ['class'=>'form-control', 'readonly', 'id'=>'end_date']) }} - -
    -
    - -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    - -
    -
    -

    Report For Discrepancies

    -
    - -

    {!! $display !!}

    - -
    -
    -
    - - - - - - - - - - - @php - $sum_balance_total = 0; - @endphp - - @if(count($discrepancies) > 0) - - @foreach($discrepancies as $discrepancy) - - - - @if($discrepancy->cashier_id == "ALL STAFF") - - @else - - @endif - - - - - @php $sum_balance_total += $discrepancy->balance; @endphp - @endforeach - - - - - - - - - - @else - - - - @endif - -
    DateBrought ByCashier In-chargeReasonReceipt NoBalance
    - {{ streamline_date($discrepancy->created_at) }} - - {{ get_full_name($discrepancy->brought_by, 'id', 'first_name', 'last_name', 'users') }} - - ALL CASHIERS - {{ get_full_name($discrepancy->cashier_id, 'id', 'first_name', 'last_name', 'users') }} - {{ $discrepancy->reason }} - - {{ $discrepancy->receipt_number }} - - {{ ugandan_shillings($discrepancy->balance) }} -
    Total{{ ugandan_shillings($sum_balance_total) }}
    RECORDS NOT FOUND
    -
    -
    -
    - -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/donorDiscountPayment.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/donorDiscountPayment.blade.php deleted file mode 100755 index dd9093e5..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/donorDiscountPayment.blade.php +++ /dev/null @@ -1,105 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -
    -

    Receive Cashier Payment

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - - - - -
    Received AmountDate Paid
    {{ ugandan_shillings($request->donor_to_pay) }}{{ streamline_date_plain(date("Y-m-d")) }}
    -
    -
    -
    -
    - - {{--
    --}} - -
    -
    -
    - {{ Form::open(['method'=>'post','route' => 'finance_reports.cashier_receipt']) }} - - {{--{{ Form::hidden('user_id', $request->user_id) }}--}} - {{--{{ Form::hidden('total', $total) }}--}} - {{--{{ Form::hidden('tracker', $tracker.$received_by) }}--}} - - {{--
    --}} - {{--{{ Form::label('received_from', 'Received From') }}--}} - {{--{{ Form::text('received_from', get_full_name($received_from, 'id', 'first_name', 'last_name', 'users'), ['class'=>'form-control compulsory', 'readonly', ]) }}--}} - {{--{{ Form::hidden('received_from_id', $received_from) }}--}} - {{--
    --}} - -
    -
    - {{ Form::label('received_by', "Received By") }} - {{ Form::text('received_by', get_full_name($received_by, 'id', 'first_name', 'last_name', 'users'), ['class'=>'form-control compulsory', 'readonly']) }} - {{ Form::hidden('received_by_id', $received_by) }} -
    -
    - -
    -
    - {{ Form::label('amount_received', "Amount Received") }} - {{ Form::number('amount_received', '', ['class'=>'form-control compulsory']) }} -
    -
    - -
    -
    - {{ Form::label('expected_amount', "Expected Amount") }} - {{ Form::text('expected_amount', $total, ['class'=>'form-control compulsory', 'readonly']) }} -
    -
    - -
    -
    - {{ Form::label('reason_name', 'Reason') }} - {{ Form::textarea('reason', '', ['class'=>'form-control compulsory', 'rows'=>'5', 'cols' => '10']) }} -
    -
    - - -
    - {{ Form::submit('Save', ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    -
    -
    - -@endsection \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/donorDiscountsReport.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/donorDiscountsReport.blade.php deleted file mode 100755 index 2d94335d..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/donorDiscountsReport.blade.php +++ /dev/null @@ -1,258 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    Donor Discount Report

    -
    -
    - -
    -
    - -
    -
    -
    - -
    - - {{ Form::open(['method'=>'post','route' => 'finance_reports.donor_discounts_report']) }} - -
    -

    Select A Donor

    -
    - -
    - -
    - -
    -

    Select A Date Or Date Range

    -
    - -
    - {{ Form::label('start_date', 'Start Date') }} -
    - {{ Form::text('start_date', '', ['class'=>'form-control compulsory', 'readonly', 'id'=>'start_date']) }} - -
    -
    - -
    - {{ Form::label('end_date', 'End Date') }} -
    - {{ Form::text('end_date', '', ['class'=>'form-control compulsory', 'readonly','id'=>'end_date']) }} - -
    -
    - -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    - -
    -
    -
    -
    - - {{--@if($request != [])--}} - @if($request != []) - @if($request->donor != "-select-") - @if(isset($request->start_date) && $request->end_date) - - @if($request->donor == "ALL") -

    Discounts Report for ALL Donors

    - @else -

    - Discounts Report for - {{ get_name($request->donor, 'id', 'name', 'donors') }} - -

    - @endif -
    - @if(isset($display)) -

    {!! isset($display) ? $display : '' !!}

    - @endif -
    -
    - - @php - $sum_donor_amount_total = 0; - $sum_hospital_amount_total = 0; - @endphp -
    - - - - - - - - - - - - - - @if(count($discounts) > 0) - - @foreach($discounts as $item) - - - - - - - - - - - @php - $sum_donor_amount_total += $item->donor_to_pay; - $sum_hospital_amount_total += $item->hospital_to_pay; - @endphp - @endforeach - - - - - - - - -{{-- --}} - - - @elseif(count($discounts) == 0) - - - - @endif - -
    Patient No.DonorPatient CategoryReceipt NumberPayment StatusHospital To PayDonor To Pay
    {{ get_patient_number($item->patient_id) }}{{ get_donor_name($item->donor_id) }}{{ get_name($item->patient_category, 'id', 'name', 'patient_categories') }} - {{ $item->receipt_number }} - - @php - if($item->payment_status == 0){ - - echo "

    NOT RECEIVED

    "; - - }else{ - - echo "

    RECEIVED

    "; - } - @endphp -
    {{ ugandan_shillings($item->hospital_to_pay) }}{{ ugandan_shillings($item->donor_to_pay) }}
    Total{{ ugandan_shillings($sum_hospital_amount_total) }}{{ ugandan_shillings($sum_donor_amount_total) }}
    RECORDS NOT FOUND
    - - @if(true) - {{ Form::open(['method'=>'post','route' => 'finance_reports.receive_cashier_payments']) }} - {{ Form::close() }} - @endif -
    - @else -
    -
    -
    -

    Select a date or date range

    -
    -
    - @endif - @else -
    -
    -
    -

    Select a Valid date or date range

    -
    -
    - @endif - @else -
    -
    -
    -

    Select a Valid date or date rangee

    -
    -
    - @endif -
    -
    -
    - -
    - -
    - - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/hospitalDiscountsReport.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/hospitalDiscountsReport.blade.php deleted file mode 100755 index 2dbba01e..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/hospitalDiscountsReport.blade.php +++ /dev/null @@ -1,203 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    Hospital Discounts Report

    -
    -
    - -
    -
    - -
    -
    - -
    - -
    - - {{ Form::open(['method'=>'post','route' => 'finance_reports.hospital_discounts_report']) }} - -
    -

    Select A Date Or Date Range

    -
    -
    -
    -
    - {{ Form::label('start_date', 'Start Date') }} -
    - {{ Form::text('start_date', '', ['class'=>'form-control compulsory','readonly', 'id'=>'start_date']) }} - -
    -
    - -
    - {{ Form::label('end_date', 'End Date') }} -
    - {{ Form::text('end_date', '', ['class'=>'form-control compulsory','readonly', 'id'=>'end_date']) }} - -
    -
    - -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    - - -
    -
    -
    -
    - @if($request != []) - @if(isset($request->start_date) && isset($request->end_date)) -
    -

    Hospital Discounts Report

    -
    - @if(isset($display)) -

    {!! isset($display) ? $display : '' !!}

    -
    -
    - @endif - -
    - - - - - - - - - - - - - - @php - $sum_donor_amount_total = 0; - $sum_hospital_amount_total = 0; - @endphp - @if(count($result) > 0) - - @foreach($result as $item) - - - - - - - - - - - @php - $sum_donor_amount_total += $item->donor_to_pay; - $sum_hospital_amount_total += $item->hospital_to_pay; - @endphp - @endforeach - - - - - - - - - - - - @else - - - - @endif -
    Patient CategoryPatientStaff MemberReasonReceipt NumberDateDonor AmountHospital Amount
    {{ get_name($item->patient_category, 'id', 'name', 'patient_categories') }}{{ get_patient_number($item->patient_id) }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ get_name($item->tag_id, 'id', 'name', 'finance_point_tags') }}{{ $item->receipt_number }}{{ streamline_date($item->created_at) }}{{ ugandan_shillings($item->donor_to_pay) }}{{ ugandan_shillings($item->hospital_to_pay) }}
    Total{{ ugandan_shillings($sum_hospital_amount_total) }}
    RECORDS NOT FOUND
    -
    - @else -
    -
    -
    -

    Select a Valid date or date range

    -
    -
    - @endif - @else -
    -
    -
    -

    Select a Valid date or date range

    -
    -
    - @endif -
    -
    -
    -
    - - -
    - - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/incomeCashReport.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/incomeCashReport.blade.php deleted file mode 100755 index 80376433..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/incomeCashReport.blade.php +++ /dev/null @@ -1,719 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') - -
    -
    -

    Income Cash Report

    -
    -
    - -
    -
    - -
    -
    -
    - @include('flash::message') - - {{ Form::open(['method'=>'post','route' => 'finance_reports.income_cash']) }} -
    - {{ Form::label('staff_member', 'Staff Member') }} - {{ Form::select('staff_member', $staff_members, null, ['class' => 'form-control', 'id' => 'staff_member', 'required']) }} -
    - -
    - {{ Form::label('staff_member', 'Cash received on') }} - -
    - - - - -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} - -

    -
    -
    - -
    -
    - @if($request != []) - @if($request->dates != "-select-" || $request->staff_member != "0") - @if(($request->dates == "today") || ($request->dates == "yesterday") || ($request->dates == "custom_date") || ($request->dates == "custom_date_range")) -
    - @if(isset($display)) -

    {{ $display }}

    - @endif -
    -
    - - @php $total = 0; @endphp - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @php $invoice_payments_sum = ($invoice_payments['total'] + $donor_invoice_payments['total']) ;@endphp - - - - - - - @php $debt_payments_sum = ($debtor_payments['total'] + $debt_plan_payments['total']); @endphp - - - - - @if($other_incomes != 0) - - - - - - @endif - - @if($direct_bank_deposits_amount != 0) - - - - - - @endif - - @php - $selected_user = $request->staff_member; - $cash_not_received = - $unreceived_drugs + - $unreceived_procedures + - $unreceived_sundries + - $unreceived_optics + - $unreceived_investigations + - $unreceived_services[3] + - $unreceived_services[4] + - $unreceived_services[5] + - $unreceived_services[7] + - $debtor_payments['unreceived'] + - $debt_plan_payments['unreceived']; - - $cash_made_that_day = ($total + $family_accounts_deposits_amount + $patient_accounts_deposits_amount + $direct_bank_deposits_amount) - ($family_accounts_consumption_amount + $patient_accounts_consumption_amount); - - $cashier_income_not_yet_received = ($cash_not_received + $unreceived_family_accounts_deposits_amount + $unreceived_patient_accounts_deposits_amount + $unreceived_direct_bank_deposits_amount) - ($family_accounts_consumption_unreceived_amount + $patient_accounts_consumption_unreceived_amount); - @endphp - - @if($total != 0) - - - - - - @endif - - @if(is_family_account_feature_enabled()) - @if($family_accounts_deposits_amount != 0) - - - - - - @endif - - @if($family_accounts_consumption_amount != 0) - - - - - - @endif - @endif - - @if($patient_accounts_deposits_amount != 0) - - - - - - @endif - - @if($patient_accounts_consumption_amount != 0) - - - - - - @endif - - - - - - - - - - - - - - - - - - -
    ItemTotalAction
    Consultation{{ ugandan_shillings($consult_sum) }} - @if($consult_sum != 0) - @php $total += $consult_sum; @endphp - {{ Form::open(['method'=>'post','route' => 'finance_reports.income_detailed_report']) }} - - {{ Form::hidden('user_id', $request->staff_member) }} - {{ Form::hidden('dates', ($request->start_date)."/".$request->end_date) }} - {{ Form::hidden('date_type', $request->dates) }} - {{ Form::hidden('staff_member', $request->staff_member) }} - {{ Form::hidden('comparator', 'consultations') }} - {{ Form::submit('Details', ['class'=>'btn btn-success', 'id'=>'consult']) }} - - {{ Form::close() }} - @else - - @endif -
    Other Services{{ ugandan_shillings($service_sum) }} - @if($service_sum != 0) - @php $total += $service_sum; @endphp - {{ Form::open(['method'=>'post','route' => 'finance_reports.income_detailed_report']) }} - - {{ Form::hidden('user_id', $request->staff_member) }} - {{ Form::hidden('dates', ($request->start_date)."/".$request->end_date) }} - {{ Form::hidden('date_type', $request->dates) }} - {{ Form::hidden('staff_member', $request->staff_member) }} - {{ Form::hidden('comparator', 'other_services') }} - {{ Form::submit('Details', ['class'=>'btn btn-success ']) }} - - {{ Form::close() }} - @else - - @endif -
    Co-payments{{ ugandan_shillings($co_payments) }} - @if($co_payments != 0) - @php $total += $co_payments; @endphp - {{ Form::open(['method'=>'post','route' => 'finance_reports.income_detailed_report']) }} - - {{ Form::hidden('user_id', $request->staff_member) }} - {{ Form::hidden('dates', ($request->start_date)."/".$request->end_date) }} - {{ Form::hidden('date_type', $request->dates) }} - {{ Form::hidden('staff_member', $request->staff_member) }} - {{ Form::hidden('comparator', 'co_payments') }} - {{ Form::submit('Details', ['class'=>'btn btn-success ']) }} - - {{ Form::close() }} - @else - - @endif -
    Investigation{{ ugandan_shillings($investigations) }} - @if($investigations != 0) - @php $total += $investigations; @endphp - {{ Form::open(['method'=>'post','route' => 'finance_reports.income_detailed_report']) }} - - {{ Form::hidden('user_id', $request->staff_member) }} - {{ Form::hidden('dates', ($request->start_date)."/".$request->end_date) }} - {{ Form::hidden('date_type', $request->dates) }} - {{ Form::hidden('comparator', 'investigations') }} - {{ Form::submit('Details', ['class'=>'btn btn-success ']) }} - - {{ Form::close() }} - @else - - @endif -
    Drugs{{ ugandan_shillings($drugs) }} - @if($drugs != 0) - @php $total += $drugs; @endphp - {{ Form::open(['method'=>'post','route' => 'finance_reports.income_detailed_report']) }} - - {{ Form::hidden('user_id', $request->staff_member) }} - {{ Form::hidden('dates', ($request->start_date)."/".$request->end_date) }} - {{ Form::hidden('date_type', $request->dates) }} - {{ Form::hidden('comparator', "drugs") }} - {{ Form::submit('Details', ['class'=>'btn btn-success ']) }} - - {{ Form::close() }} - @else - - @endif -
    Sundries{{ ugandan_shillings($sundries) }} - @if($sundries != 0) - @php $total += $sundries; @endphp - {{ Form::open(['method'=>'post','route' => 'finance_reports.income_detailed_report']) }} - - {{ Form::hidden('user_id', $request->staff_member) }} - {{ Form::hidden('dates', ($request->start_date)."/".$request->end_date) }} - {{ Form::hidden('date_type', $request->dates) }} - {{ Form::hidden('comparator', 'sundries') }} - {{ Form::submit('Details', ['class'=>'btn btn-success ']) }} - - {{ Form::close() }} - @else - - @endif -
    Optical Items{{ ugandan_shillings($optics) }} - @if($optics != 0) - @php $total += $optics; @endphp - {{ Form::open(['method'=>'post','route' => 'finance_reports.income_detailed_report']) }} - - {{ Form::hidden('user_id', $request->staff_member) }} - {{ Form::hidden('dates', ($request->start_date)."/".$request->end_date) }} - {{ Form::hidden('date_type', $request->dates) }} - {{ Form::hidden('comparator', 'optics') }} - {{ Form::submit('Details', ['class'=>'btn btn-success ']) }} - - {{ Form::close() }} - @else - - @endif -
    Procedures{{ ugandan_shillings($procedures) }} - @if($procedures != 0) - @php $total += $procedures; @endphp - {{ Form::open(['method'=>'post','route' => 'finance_reports.income_detailed_report']) }} - - {{ Form::hidden('user_id', $request->staff_member) }} - {{ Form::hidden('dates', ($request->start_date)."/".$request->end_date) }} - {{ Form::hidden('date_type', $request->dates) }} - {{ Form::hidden('comparator', "procedures") }} - {{ Form::submit('Details', ['class'=>'btn btn-success ']) }} - - {{ Form::close() }} - @else - - @endif -
    Inpatient Deposits{{ ugandan_shillings($inpatient_deposit_sum) }} - @if($inpatient_deposit_sum != 0) - @php $total += $inpatient_deposit_sum; @endphp - {{ Form::open(['method'=>'post','route' => 'finance_reports.income_detailed_report']) }} - - {{ Form::hidden('user_id', $request->staff_member) }} - {{ Form::hidden('dates', ($request->start_date)."/".$request->end_date) }} - {{ Form::hidden('date_type', $request->dates) }} - {{ Form::hidden('comparator', "inpatient_deposits") }} - {{ Form::submit('Details', ['class'=>'btn btn-success ']) }} - - {{ Form::close() }} - @else - - @endif -
    Paid Invoices{{ ugandan_shillings($invoice_payments_sum) }} - @if($invoice_payments_sum != 0) - @php $total += $invoice_payments_sum; @endphp - {{ Form::open(['method'=>'post','route' => 'finance_reports.income_detailed_report']) }} - - {{ Form::hidden('user_id', $request->staff_member) }} - {{ Form::hidden('dates', ($request->start_date)."/".$request->end_date) }} - {{ Form::hidden('date_type', $request->dates) }} - {{ Form::hidden('comparator', 'paid_invoices') }} - {{ Form::submit('Details', ['class'=>'btn btn-success ']) }} - - {{ Form::close() }} - @else - - @endif -
    Paid Patient Debts{{ ugandan_shillings($debt_payments_sum) }} - @if($debt_payments_sum != 0) - @php $total += $debt_payments_sum; @endphp - {{ Form::open(['method'=>'post','route' => 'finance_reports.income_detailed_report']) }} - - {{ Form::hidden('user_id', $request->staff_member) }} - {{ Form::hidden('dates', ($request->start_date)."/".$request->end_date) }} - {{ Form::hidden('date_type', $request->dates) }} - {{ Form::hidden('comparator', 'paid_patient_debts') }} - {{ Form::submit('Details', ['class'=>'btn btn-success ']) }} - - {{ Form::close() }} - @else - - @endif -
    Other Incomes{{ ugandan_shillings($other_incomes) }} - @php $total += $other_incomes; @endphp - -
    Other Incomes{{ ugandan_shillings($direct_bank_deposits_amount) }} - {{ Form::open(['method'=>'post','route' => 'finance_reports.direct_bank_deposits_details']) }} - {{ Form::hidden('user_id', $request->staff_member) }} - {{ Form::hidden('dates', ($request->start_date)."/".$request->end_date) }} - {{ Form::hidden('date_type', $request->dates) }} - {{ Form::submit('Details', ['class'=>'btn btn-success ']) }} - {{ Form::close() }} -
    Total Sales{{ ugandan_shillings($total) }} -
    Family Accounts Deposits{{ ugandan_shillings($family_accounts_deposits_amount) }} - {{ Form::open(['method'=>'post','route' => 'family_accounts.deposit_report']) }} - {{ Form::hidden('staff_member', $request->staff_member) }} - {{ Form::hidden('start_date', $request->start_date) }} - {{ Form::hidden('end_date', $request->end_date) }} - @php - if ($request->dates == "yesterday") { - $family_account_search_by = 1; - } else if ($request->dates == "custom_date") { - $family_account_search_by = 2; - } else if ($request->dates == "custom_date_range") { - $family_account_search_by = 3; - } else { - $family_account_search_by = 0; - } - @endphp - {{ Form::hidden('search_by', $family_account_search_by) }} - {{ Form::hidden('family_account_id', 0) }} - {{ Form::submit('Details', ['class'=>'btn btn-success ']) }} - {{ Form::close() }} -
    Family Accounts Total Sales{{ ugandan_shillings($family_accounts_consumption_amount) }} - {{ Form::open(['method'=>'post','route' => 'family_accounts.consumption_report']) }} - {{ Form::hidden('staff_member', $request->staff_member) }} - {{ Form::hidden('start_date', $request->start_date) }} - {{ Form::hidden('end_date', $request->end_date) }} - @php - if ($request->dates == "yesterday") { - $family_account_search_by = 1; - } else if ($request->dates == "custom_date") { - $family_account_search_by = 2; - } else if ($request->dates == "custom_date_range") { - $family_account_search_by = 3; - } else { - $family_account_search_by = 0; - } - @endphp - {{ Form::hidden('search_by', $family_account_search_by) }} - {{ Form::hidden('family_account_id', 0) }} - {{ Form::submit('Details', ['class'=>'btn btn-success ']) }} - {{ Form::close() }} -
    Patient Accounts Deposits{{ ugandan_shillings($patient_accounts_deposits_amount) }} - {{ Form::open(['method'=>'post','route' => 'finance_reports.patient_accounts_deposits_details']) }} - {{ Form::hidden('user_id', $request->staff_member) }} - {{ Form::hidden('dates', ($request->start_date)."/".$request->end_date) }} - {{ Form::hidden('date_type', $request->dates) }} - {{ Form::submit('Details', ['class'=>'btn btn-success ']) }} - {{ Form::close() }} -
    Patient Accounts Total Sales{{ ugandan_shillings($patient_accounts_consumption_amount) }} - {{ Form::open(['method'=>'post','route' => 'finance_reports.patient_accounts_sales_details']) }} - {{ Form::hidden('user_id', $request->staff_member) }} - {{ Form::hidden('dates', ($request->start_date)."/".$request->end_date) }} - {{ Form::hidden('date_type', $request->dates) }} - {{ Form::submit('Details', ['class'=>'btn btn-success ']) }} - {{ Form::close() }} -
    Total Cash Collected{{ ugandan_shillings($cash_made_that_day) }}
    Total Received Invoice Payments{{ ugandan_shillings($invoice_payments['received']) }}
    Total Cash (Not received){{ ugandan_shillings($cashier_income_not_yet_received) }} - @if(($cashier_income_not_yet_received != 0) || ($cash_made_that_day != 0)) - {{ Form::open(['method'=>'post','route' => 'finance_reports.receive_cashier_payments']) }} - - @if($consult_sum != 0 || $service_sum != 0 || $co_payments != 0 || $inpatient_deposit_sum != 0) - {{ Form::hidden('service_points[]', 'services') }} - @endif - - @if($procedures != 0) - {{ Form::hidden('service_points[]', 'procedures') }} - @endif - - @if($investigations != 0) - {{ Form::hidden('service_points[]', 'investigations') }} - @endif - - @if($drugs != 0) - {{ Form::hidden('service_points[]', 'drugs') }} - @endif - - @if($sundries != 0) - {{ Form::hidden('service_points[]', 'sundries') }} - @endif - - @if($optics != 0) - {{ Form::hidden('service_points[]', 'optics') }} - @endif - - @if($invoice_payments['unreceived'] != 0) - {{ Form::hidden('service_points[]', 'patient_category_invoices') }} - @endif - - @if($donor_invoice_payments['unreceived'] != 0) - {{ Form::hidden('service_points[]', 'donor_invoices') }} - @endif - - @if($debtor_payments['unreceived'] != 0) - {{ Form::hidden('service_points[]', 'debtors') }} - @endif - - @if($debt_plan_payments['unreceived'] != 0) - {{ Form::hidden('service_points[]', 'debt_plan') }} - @endif - - @if($unreceived_family_accounts_deposits_amount != 0) - {{ Form::hidden('service_points[]', 'family_account_deposits') }} - @endif - - @if($family_accounts_consumption_unreceived_amount != 0) - {{ Form::hidden('service_points[]', 'family_account_consumptions') }} - @endif - - @if($unreceived_patient_accounts_deposits_amount != 0) - {{ Form::hidden('service_points[]', 'patient_account_deposits') }} - @endif - - @if($patient_accounts_consumption_unreceived_amount != 0) - {{ Form::hidden('service_points[]', 'patient_account_consumptions') }} - @endif - - @if($unreceived_direct_bank_deposits_amount != 0) - {{ Form::hidden('service_points[]', 'direct_bank_deposits') }} - @endif - - {{ Form::hidden('user_id', $selected_user) }} - {{ Form::hidden('start_date', $request->start_date) }} - {{ Form::hidden('end_date', $request->end_date) }} - {{ Form::hidden('dates', $request->dates) }} - {{ Form::hidden('total', $cashier_income_not_yet_received) }} - - @if($cashier_income_not_yet_received != 0) - {{ Form::submit('Receive Money', ['class'=>'btn btn-success ']) }} - @else - @if(isset($request->start_date) && isset($request->end_date)) - - @else - - @endif - @endif - - {{ Form::close() }} - @endif -
    -
    - @if(is_family_account_feature_enabled()) -
    - - - Note: Total Cash Collected = Total Sales + Family Accounts Deposits + Patient Accounts Deposits - Family Accounts Total Sales - Patient Accounts Total Sales - -
    - @endif - @else -
    -
    -
    -

    Select a date or date range

    -
    -
    - @endif - @else -
    -
    -
    -

    Select a Valid date or date range

    -
    -
    - @endif - @else -
    -
    -
    -

    Select a Valid date or date rangee

    -
    -
    - @endif -
    -
    - -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/incomeDetailedReport.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/incomeDetailedReport.blade.php deleted file mode 100755 index 16d07e53..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/incomeDetailedReport.blade.php +++ /dev/null @@ -1,695 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') - -
    -
    -

    Income Detail

    -
    -
    - -
    -
    - -
    -

    {{ $display }}

    - -
    - - @if($request->comparator == "paid_patient_debts") -

    Debt Plan Payments

    -
    - - - - - - - - - - @php - $sum_total = 0; - @endphp - - - - @if(count($debt_plan_payments) > 0) - @for($x = 0; $x < count($debt_plan_payments); $x++) - - - - - - - @php $sum_total += $debt_plan_payments[$x]['amount_paid']; @endphp - - @endfor - @endif - - - - - - - - -
    DateStaff In ChargeReceiptsAmountAction
    {{ streamline_date($debt_plan_payments[$x]['date_paid']) }}{{ $staff_members[$debt_plan_payments[$x]['created_by']] ?? '' }}{{ $debt_plan_payments[$x]['receipt_number'] }}{{ ugandan_shillings($debt_plan_payments[$x]['amount_paid']) }} - Print Receipt -
    Total{{ ugandan_shillings($sum_total) }}
    -
    - -
    -
    - -

    Debtor Payments

    -
    - - - - - - - - - - - @php - $sum_total = 0; - @endphp - - - @if(count($debtor_payments) > 0) - @for($x = 0; $x < count($debtor_payments); $x++) - @php $patient_id = get_name($debtor_payments[$x]['debt_id'], 'id', 'patient_id', 'debtors'); @endphp - - - - - - - - @php $sum_total += $debtor_payments[$x]['amount_paid']; @endphp - - @endfor - @endif - - - - - - - - - -
    Patient NameDate PaidStaff In ChargeReceiptsAmountAction
    {{ get_full_name($patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($patient_id, 'id', 'number', 'patients') }}){{ streamline_date($debtor_payments[$x]['date_paid']) }}{{ $staff_members[$debtor_payments[$x]['staff_in_charge']] ?? '' }}{{ $debtor_payments[$x]['receipt_number'] }}{{ ugandan_shillings($debtor_payments[$x]['amount_paid']) }} - Print Receipt -
    Total{{ ugandan_shillings($sum_total) }}
    -
    - @elseif($request->comparator == "paid_invoices") -

    Hospital Invoice Payments

    -
    - - - - - - - - - - @php - $sum_total = 0; - @endphp - - - @foreach($hospital_invoice_payments as $item) - - - - - - - - - @endforeach - - - - - - - - -
    DateStaff In ChargeReceiptsAmountAction
    - @php - $dates = unserialize($item->date_paid_history); - for($i = 0; $i< count($dates); $i++){ - echo $i+1 .". " . streamline_date_time($dates[$i]) ."
    " ; - } - @endphp -
    - @php - $staff = unserialize($item->staff_incharge_history); - for($i = 0; $i< count($staff); $i++){ - echo $i+1 .". " . ($staff_members[$staff[$i]] ?? '') ."
    " ; - } - @endphp -
    - @php - $receipts = unserialize($item->receipt_number); - for($i = 0; $i< count($receipts); $i++){ - echo $i+1 .". " . $receipts[$i] ."
    " ; - } - @endphp -
    - @php - $amounts = unserialize($item->amount_paid_history); - for($i = 0; $i< count($amounts); $i++){ - $sum_total += $amounts[$i]; - echo $i+1 .". " . ugandan_shillings($amounts[$i]) ."
    " ; - } - @endphp -
    - Print Receipt -
    Total{{ ugandan_shillings($sum_total) }}
    -
    - -

    Patient Category Invoice Payments

    -
    - - - - - - - - - - @php - $sum_total = 0; - @endphp - - - @foreach($patient_category_payments as $item) - - - - - - - - @endforeach - - - - - - - - -
    DateStaff In ChargeReceiptsAmountAction
    {{ streamline_date($item->date_paid) }}{{ $staff_members[$item->created_by] ?? '' }}{{ $item->receipt_number }}{{ $item->amount_paid }} - Print Receipt -
    Total{{ ugandan_shillings($sum_total) }}
    -
    - - @if(is_donor_feature_enabled()) -

    Donor Discount Invoice Payments

    -
    - - - - - - - - - - @php - $sum_total = 0; - @endphp - - - @foreach($donor_invoice_payments as $item) - - - - - - - - - @endforeach - - - - - - - - -
    DateStaff In ChargeReceiptsAmountAction
    - @php - $dates = unserialize($item->date_paid_history); - for($i = 0; $i< count($dates); $i++){ - echo $i+1 .". " . streamline_date_time($dates[$i]) ."
    " ; - } - @endphp -
    - @php - $staff = unserialize($item->staff_incharge_history); - for($i = 0; $i< count($staff); $i++){ - echo $i+1 .". " . ($staff_members[$staff[$i]] ?? '') ."
    " ; - } - @endphp -
    - @php - $receipts = unserialize($item->receipt_number); - for($i = 0; $i< count($receipts); $i++){ - echo $i+1 .". " . $receipts[$i] ."
    " ; - } - @endphp -
    - @php - $amounts = unserialize($item->amount_paid_history); - for($i = 0; $i< count($amounts); $i++){ - $sum_total += $amounts[$i]; - echo $i+1 .". " . ugandan_shillings($amounts[$i]) ."
    " ; - } - @endphp -
    - Print Receipt -
    Total{{ ugandan_shillings($sum_total) }}
    -
    - @endif - @elseif($request->comparator == "investigations") - @include('finance_reports::finance_reports.detail.investigations') - @else -
    - - - - - - - - - - @if(is_donor_feature_enabled()) - - @endif - - - - - - - @php - $total_patient_paid = 0; - $total_general_discount = 0; - @endphp - @if(in_array($request->comparator, ["consultations", "other_services", "co_payments", "inpatient_deposits"])) - - @foreach($result as $item) - - - - - - - - @if(is_donor_feature_enabled()) - - @endif - - - - - @php - $total_patient_paid += $item->patient_amount_paid; - if (is_numeric(get_name($item->receipt_number, 'receipt_number', 'discount_amount', 'discounts'))){ - $total_general_discount += get_name($item->receipt_number, 'receipt_number', 'discount_amount', 'discounts'); - } - @endphp - @endforeach - - - - - - - - - - - - - - - - - @elseif($request->comparator == "drugs") - - @foreach($result as $item) - - - - - - - - - @if(is_donor_feature_enabled()) - - @endif - - - - - @php - $total_patient_paid += $item->patient_amount_paid; - if (is_numeric(get_name($item->receipt_number, 'receipt_number', 'discount_amount', 'discounts'))){ - $total_general_discount += get_name($item->receipt_number, 'receipt_number', 'discount_amount', 'discounts'); - } - @endphp - @endforeach - - - - - - - - - - - - - - - - @elseif($request->comparator == "sundries") - - @foreach($result as $item) - - - - - - - - @if(is_donor_feature_enabled()) - - @endif - - - - - @php - $total_patient_paid += $item->patient_amount_paid; - if (is_numeric(get_name($item->receipt_number, 'receipt_number', 'discount_amount', 'discounts'))){ - $total_general_discount += get_name($item->receipt_number, 'receipt_number', 'discount_amount', 'discounts'); - } - @endphp - @endforeach - - - - - - - - - - - - - - - - @elseif($request->comparator == "optics") - - @foreach($result as $item) - - - - - - - - @if(is_donor_feature_enabled()) - - @endif - - - - - @php - $total_patient_paid += $item->patient_amount_paid; - if (is_numeric(get_name($item->receipt_number, 'receipt_number', 'discount_amount', 'discounts'))){ - $total_general_discount += get_name($item->receipt_number, 'receipt_number', 'discount_amount', 'discounts'); - } - @endphp - @endforeach - - - - - - - - - - - - - - - - @elseif($request->comparator == "procedures") - - - @foreach($result as $item) - - - - - - - - - - - @if(is_donor_feature_enabled()) - - @endif - - - - - @php - $total_patient_paid += $item->patient_amount_paid; - if (is_numeric(get_name($item->receipt_number, 'receipt_number', 'discount_amount', 'discounts'))){ - $total_general_discount += get_name($item->receipt_number, 'receipt_number', 'discount_amount', 'discounts'); - } - @endphp - @endforeach - - - - - - - - - - - - - - - - @endif -
    PatientStaffDateReceipt NoItem NameAmount Patient PaidDonor Discount if anyGeneral Discount if anyPatient CategoryAction
    {{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($item->patient_id, 'id', 'number', 'patients') }}){{ $staff_members[$item->created_by] ?? '' }}{{ streamline_date($item->created_at) }}{{ $item->receipt_number }} - @php - $ids = explode(",",$item->items_ids); - - for($i = 0; $i < count($ids); $i++){ - $name = get_name($ids[$i], 'id', 'name', 'services'); - - echo $i+1 .". " . $name."
    " ; - } - @endphp -
    {{ ugandan_shillings($item->patient_amount_paid) }}{{ ugandan_shillings(get_name($item->receipt_number, 'receipt_number', 'donor_to_pay', 'donor_discount_details')) }}{{ ugandan_shillings(get_name($item->receipt_number, 'receipt_number', 'discount_amount', 'discounts')) }}{{ get_name(get_name($item->patient_id, 'id', 'category_id', 'patients'), 'id', 'name', 'patient_categories') }} - Print Receipt -
    Total{{ ugandan_shillings($total_patient_paid) }}{{ ugandan_shillings($total_general_discount) }}
    {{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($item->patient_id, 'id', 'number', 'patients') }}){{ $staff_members[$item->created_by] ?? '' }}{{ $item->created_at }}{{ $item->receipt_number }} - @php - - $ids = explode(",",$item->treatment_items); - - for($i = 0; $i < count($ids); $i++){ - $name = get_name($ids[$i], 'id', 'name', 'drugs'); - - echo $i+1 .". " . $name ."
    " ; - } - @endphp -
    {{ $item->patient_amount_paid }}{{ ugandan_shillings(get_name($item->receipt_number, 'receipt_number', 'donor_to_pay', 'donor_discount_details')) }}{{ ugandan_shillings(get_name($item->receipt_number, 'receipt_number', 'discount_amount', 'discounts')) }}{{ get_name(get_name($item->patient_id, 'id', 'category_id', 'patients'), 'id', 'name', 'patient_categories') }} - - Print Receipt - -
    Total{{ ugandan_shillings($total_patient_paid) }}{{ ugandan_shillings($total_general_discount) }}
    {{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($item->patient_id, 'id', 'number', 'patients') }}){{ $staff_members[$item->created_by] ?? '' }}{{ $item->created_at }}{{ $item->receipt_number }} - @php - $ids = explode(",",$item->sundry_items); - if(is_serialized($ids[0])){ - $data = unserialize($ids[0]); - for($i = 0; $i < count($data); $i++){ - $name = get_name($data[$i], 'id', 'name', 'sundries'); //dd($data); - echo $i+1 .". " . $name ."
    " ; - } - }else{ - for($i = 0; $i < count($ids); $i++){ - $name = get_name($ids[$i], 'id', 'name', 'sundries'); - echo $i+1 .". " . $name ."
    " ; - } - } - @endphp -
    {{ ugandan_shillings($item->patient_amount_paid) }}{{ ugandan_shillings(get_name($item->receipt_number, 'receipt_number', 'donor_to_pay', 'donor_discount_details')) }}{{ ugandan_shillings(get_name($item->receipt_number, 'receipt_number', 'discount_amount', 'discounts')) }}{{ get_name(get_name($item->patient_id, 'id', 'category_id', 'patients'), 'id', 'name', 'patient_categories') }} - - Print Receipt - -
    Total{{ ugandan_shillings($total_patient_paid) }}{{ ugandan_shillings($total_general_discount) }}
    {{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($item->patient_id, 'id', 'number', 'patients') }}){{ $staff_members[$item->created_by] ?? '' }}{{ $item->created_at }}{{ $item->receipt_number }} - @php - $ids = explode(",",$item->items); - for($i = 0; $i < count($ids); $i++){ - echo $i+1 .". " . get_name($ids[$i], 'id', 'name', 'eye_glasses') ."
    " ; - } - @endphp -
    {{ ugandan_shillings($item->patient_amount_paid) }}{{ ugandan_shillings(get_name($item->receipt_number, 'receipt_number', 'donor_to_pay', 'donor_discount_details')) }}{{ ugandan_shillings(get_name($item->receipt_number, 'receipt_number', 'discount_amount', 'discounts')) }}{{ get_name(get_name($item->patient_id, 'id', 'category_id', 'patients'), 'id', 'name', 'patient_categories') }}
    Total{{ ugandan_shillings($total_patient_paid) }}{{ ugandan_shillings($total_general_discount) }}
    {{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($item->patient_id, 'id', 'number', 'patients') }}){{ $staff_members[$item->created_by] }}{{ $item->created_at }}{{ $item->receipt_number }} - @php - $ids = explode(",",$item->procedure_items); - for($i = 0; $i < count($ids); $i++){ - - $name = get_name($ids[$i], 'id', 'name', 'procedures'); - - echo $i+1 .". " . $name ."
    " ; - } - @endphp -
    {{ ugandan_shillings($item->patient_amount_paid) }}{{ ugandan_shillings(get_name($item->receipt_number, 'receipt_number', 'donor_to_pay', 'donor_discount_details')) }}{{ ugandan_shillings(get_name($item->receipt_number, 'receipt_number', 'discount_amount', 'discounts')) }}{{ get_name(get_name($item->patient_id, 'id', 'category_id', 'patients'), 'id', 'name', 'patient_categories') }} - - Print Receipt - -
    Total{{ ugandan_shillings($total_patient_paid) }}{{ ugandan_shillings($total_general_discount) }}
    -
    - @endif -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - - - - - - -@endpush - diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/index.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/index.blade.php deleted file mode 100755 index 396239bc..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/index.blade.php +++ /dev/null @@ -1,346 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    Finance Reports

    -
    -
    - -
    -
    - -
    -
    - @if( Auth::user()->can('finance-reports-income-cash') || Auth::user()->can('finance-reports-income-accrual') || Auth::user()->can('finance-reports-received-cash')) -
    -

    Sales

    - -
    - @endif - - @if( Auth::user()->can('finance-discount-report') || Auth::user()->can('finance-donor-discount-report') || Auth::user()->can('finance-hospital-discount-report')) -
    -

    Discounts

    - -
    - @endif -
    - -
    - -
    - - @if( Auth::user()->can('finance-debtors-report') || Auth::user()->can('finance-discrepancy-report')) -
    -

    Debtors and Discrepancies

    - -
    - @endif - - @if( Auth::user()->can('finance-patient-debtors') || Auth::user()->can('finance-staff-guarantors') || Auth::user()->can('finance-debt-plan-payments')) -
    -

    Debt Plan

    - -
    - @endif - -
    -
    -
    -
    -

    Company and Financial

    - -
    - -
    -

    Patient Refunds

    - - - @if( Auth::user()->can('view-patient-dependants-consumption-report')) -
    - -

    MORE REPORTS

    - - @endif - - @if( Auth::user()->can('budget-performance-report')) -
    - -

    BUDGET REPORTS

    - - @endif -
    -
    -
    - @if( Auth::user()->can('finance-reports-income-cash')) -
    -
    -

    Cost Center Perfomance

    - -
    - - @if(is_patient_accounts_enabled() && (Auth::user()->can('view-patient-accounts-deposits') || Auth::user()->can('view-patient-accounts-refunds') || Auth::user()->can('view-patient-accounts-consumptions'))) -
    -

    Patient Accounts

    - -
    - @endif -
    - @endif -
    -
    - -@endsection \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/one_off_discounts_report.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/one_off_discounts_report.blade.php deleted file mode 100755 index c2ae1bd0..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/one_off_discounts_report.blade.php +++ /dev/null @@ -1,118 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    One-Off Discounts

    -
    -
    - -
    -
    - - {{ Form::open(['route' => 'finance_reports.one_off_discounts_report' , 'data-toggle' => 'validator']) }} -
    -
    -
    -
    -
    - {{ Form::label('start_date', 'Date From') }} - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'start_date']) }} -
    -
    -
    -
    - {{ Form::label('end_date', 'Date To') }} - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'end_date']) }} -
    -
    -
    -
    - {{ Form::button('Search',['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    -
    -
    - {{ Form::close() }} - -
    -
    -
    -
    - - - - - - - - - - - - - - @foreach($discounts as $discount) - - - - - - - - - - @endforeach - -
    PatientAmountMemoReceipt NumberGiven FromGiven ByGiven On
    {{ get_full_name($discount->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ ugandan_shillings($discount->amount_discounted) }}{{ $discount->memo }}{{ $discount->receipt_number }}{{ $tags[$discount->tag_id] ?? '' }}{{ get_full_name($discount->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date_time($discount->created_at) }}
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/otherIncomes.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/otherIncomes.blade.php deleted file mode 100644 index 291e722d..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/otherIncomes.blade.php +++ /dev/null @@ -1,159 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') - -
    -
    -

    Other income Details

    -
    -
    - -
    -
    - -
    -
    -
    -
    - -
    -
    -

    Direct Deposits

    - - - - - - - - - - - - @php - $sum_total = 0; - $counter = 1; - @endphp - - - @if(count($direct_deposits) > 0) - @foreach($direct_deposits as $item) - - - - - - - - - @php - $counter++; - $sum_total += $item->deposit_amount; - @endphp - - @endforeach - @endif - - - - - - - - - - -
    #Income_accountTransaction IDDeposit DateDeposit MemoDeposit AmountReceived By
    {{ $counter }}{{ get_name($item->income_account, "id", "name", "chart_of_accounts") }}{{ $item->trans_id }}{{ streamline_date($item->deposit_date) }}{{ $item->deposit_memo }}{{ ugandan_shillings($item->deposit_amount) }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}
    Total{{ ugandan_shillings($sum_total) }}
    -
    -
    - -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - - - - - -@endpush - diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/patientDebtors.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/patientDebtors.blade.php deleted file mode 100755 index 0f7c4878..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/patientDebtors.blade.php +++ /dev/null @@ -1,150 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -
    -

    Patient Debtors

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    -
    -

    Select the Date Range

    -
    -
    - {{ Form::open(['method'=>'post','route' => 'finance_reports.patient_debtors']) }} - -
    - {{ Form::label('parish', 'Select A Parish') }} - {{ Form::select('parish', $parishes, null ,['class'=>'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('start_date', 'Start Date') }} -
    - {{ Form::text('start_date', '', ['class'=>'form-control', 'readonly', 'id'=>'start_date']) }} - -
    -
    - -
    - {{ Form::label('end_date', 'End Date') }} -
    - {{ Form::text('end_date', '', ['class'=>'form-control', 'readonly', 'id'=>'end_date']) }} - -
    -
    - -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    - - - - -
    -
    - -
    -

    Report For Patient Debtors

    -
    - @if(isset($display)) -

    {!! isset($display) ? $display : '' !!}

    - @endif -
    -
    - -
    - - - - - - - - - - - - @if(count($debts) > 0 && $debts != 0) - @foreach($debts as $debt) - - - - - - - - @endforeach - @elseif(count($debts) == 0) - - @endif - -
    Patient IDEpisode IDBalanceReceipt NumberStatus
    - {{ $debt->patient_id }} - - {{ $debt->episode_id }} - - {{ $debt->balance }} - - {{ $debt->receipt_number }} - - {{ $debt->status }} - RECORDS NOT FOUND
    -
    -
    -
    - -
    - -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/patient_dependants_report.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/patient_dependants_report.blade.php deleted file mode 100755 index a4902ff1..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/patient_dependants_report.blade.php +++ /dev/null @@ -1,320 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    Patient Dependants Report

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    - - - {{ Form::open(['method'=>'post','route' => 'finance_reports.patient_dependants_report']) }} - -
    -

    Select category

    -
    - -
    - {{ Form::select('patient_category',$patient_categories,'',['class' => 'form-control compulsory required cost_centers']) }} -
    - -
    -

    Select a date or date range

    -
    - -
    - -
    - - - - -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    - - -
    - @include('flash::message') -
    -
    -
    - @php - $threshold_amount = $patient_discounts = DB::table('patient_discounts')->whereNotNull('threshold_type')->orderBy('created_at', 'desc')->get(); - @endphp - -

    Showing {{ is_null($request->patient_category) ? "" : get_name($request->patient_category, "id", "name", "patient_categories") }} with threshold amount of : {{ is_null($request->patient_category) ? "" : ugandan_shillings(get_name($request->patient_category, "patient_category", "threshold_amount", "patient_discounts")) }}

    - {!! $search_string !!} -
    - - - - - - - - - - - - - - @php $counter = 1; $grand_consumed_total = 0; $grand_balance_total = 0; @endphp - @if(count($dependants_consumption_colllections_array) > 0) - @for($i=0; $i < count($dependants_consumption_colllections_array); $i++) - @foreach($dependants_consumption_colllections_array[$i] as $main_patient_id => $consumptions) - - - - - - - - - - @php - $counter++; - $grand_consumed_total += $group_consumed_amount; - $grand_balance_total += $group_unpaid_balances; - @endphp - @endforeach - @endfor - @endif - - - - - - - - - - - - -
    #NameNumberDependantsAmount consumedUnpaid BalanceAction
    - {{ $counter }} - - {{ get_full_name($main_patient_id, "id", "first_name", "last_name", "patients") }} - - {{ get_name($main_patient_id, "id", "number", "patients") }} - -
      - @php - $group_consumed_amount = 0; $group_unpaid_balances = 0;$invoice_generated_status_array = []; - $dependant_ids_string = get_name($main_patient_id, "main_patient_id", "dependant_patient_ids", "category_patient_dependants"); - $dependant_ids_array = explode(",", $dependant_ids_string); - @endphp - - @for ($j = 0; $j < count($dependant_ids_array); $j++) -
    • - {{ get_full_name($dependant_ids_array[$j], "id","first_name","last_name","patients") }} - ({{ get_name($dependant_ids_array[$j], "id", "number", "patients")}}) -
    • - @endfor - - @foreach($consumptions as $dependant_consumption) - @php - if($dependant_consumption->is_consumption_in_previous_subscription == 0): - $group_consumed_amount += $dependant_consumption->amount_consumed; - - $group_unpaid_balances += $dependant_consumption->unpaid_balance; - if ($dependant_consumption->unpaid_balance > 0 && $dependant_consumption->invoice_number == null) { - $invoice_generated_status_array[] = 1; - } - endif; - @endphp - @endforeach -
    -
    - {{ ugandan_shillings($group_consumed_amount) }} - - @php - $balance = get_name($request->patient_category, "patient_category", "threshold_amount", "patient_discounts") - $group_consumed_amount; - @endphp - {{ ugandan_shillings($group_unpaid_balances) }} - - @if ($group_unpaid_balances > 0) - @if (in_array(1, $invoice_generated_status_array)) - {{ Form::open(['url' => 'generate_dependants_payment_invoice']) }} - {{ Form::hidden('main_patient_id',$main_patient_id)}} - {{ Form::button('Generate Invoice',['type'=>'submit', 'class'=>'btn btn-success btn-rounded', 'onclick'=>'return confirm("Are you sure you want to generate an invoice?")']) }} - {{ Form::close() }} - @else - Invoices Generated - @endif -
    - @endif - - {{ Form::open(['url'=>'dependant_consumption_details']) }} - {{ Form::hidden('main_patient_id',$main_patient_id)}} - {{ Form::hidden('dates',$request->dates)}} - {{ Form::hidden('start_date',$request->start_date)}} - {{ Form::hidden('end_date',$request->end_date)}} - {{ Form::submit('View Consumption', ['class' => 'btn btn-primary btn-sm btn-rounded'])}} - {{ Form::close() }} - - @if( Auth::user()->can('renew-patient-dependants-subscription')) - {{ Form::open(['url'=>'renew_dependant_threshold']) }} - {{ Form::hidden('main_patient_id',$main_patient_id)}} - {{ Form::hidden('dates',$request->dates)}} - {{ Form::hidden('start_date',$request->start_date)}} - {{ Form::hidden('end_date',$request->end_date)}} - {{ Form::submit('Renew Subscription', ['class' => 'btn btn-info btn-sm btn-rounded','onclick' => 'return confirm("Are you sure ?")'])}} - {{ Form::close() }} - @endif -
    Total :{{ ugandan_shillings($grand_consumed_total) }}{{ ugandan_shillings($grand_balance_total) }}
    -
    -
    -
    -
    -
    - -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/patient_dependants_report_details.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/patient_dependants_report_details.blade.php deleted file mode 100755 index 194bdd84..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/patient_dependants_report_details.blade.php +++ /dev/null @@ -1,194 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    Patient Dependants Report

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    - -

    Showing consumption of {{ get_full_name($main_patient_id, "id", "first_name", "last_name", "patients") }} ({{ get_name($main_patient_id, "id", "number", "patients")}})

    - {!! $search_string !!} -
    - - - - - - - - - - - - - @php $counter = 1; $grand_consumed_total = 0; $grand_unpaid_balance = 0; @endphp - @if(count($patient_consumptions) > 0) - @foreach($patient_consumptions as $consumption) - - - - - - - - - @php - $counter++; - $grand_consumed_total += $consumption->amount_consumed; - $grand_unpaid_balance += $consumption->unpaid_balance; - @endphp - @endforeach - @endif - - - - - - - - - - - -
    #DependantsDateAmount consumedUnpaid BalanceReason
    - {{ $counter }} - - {{ get_full_name($consumption->dependant_patient_id , "id","first_name","last_name","patients") }} - ({{ get_name($consumption->dependant_patient_id , "id", "number", "patients")}}) - - {{ streamline_date($consumption->created_at) }} - - {{ ugandan_shillings($consumption->amount_consumed) }} - - {{ ugandan_shillings($consumption->unpaid_balance) }} - - {{ $consumption->reason }} -
    Total :{{ ugandan_shillings($grand_consumed_total) }}{{ ugandan_shillings($grand_unpaid_balance) }}
    -
    -
    -
    -
    -
    - -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/patient_refunds_report.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/patient_refunds_report.blade.php deleted file mode 100755 index db691575..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/patient_refunds_report.blade.php +++ /dev/null @@ -1,141 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    Patient Refunds Report

    -
    -
    - -
    -
    - -
    -
    - {{ Form::open(['method'=>'post','route' => 'finance_reports.patient_refunds_report']) }} -
    -
    - {{ Form::label('staff_member', 'Select Staff') }} - -
    -
    -
    -
    - {{ Form::label('start_date', 'Start Date') }} -
    - {{ Form::text('start_date', '', ['class'=>'form-control compulsory required', 'readonly', 'id'=>'start_date']) }} - -
    -
    -
    -
    -
    - {{ Form::label('end_date', 'End Date') }} -
    - {{ Form::text('end_date', '', ['class'=>'form-control compulsory required', 'readonly', 'id'=>'end_date']) }} - -
    -
    -
    -
    -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success pull-right']) }} -
    -
    - {{ Form::close() }} -
    -
    - -
    -
    -
    - -

    Search criteria : {{ $criteria }}    Clear search

    - -

    Export data to Copy, CSV, Excel, PDF & Print

    -
    - - - - - - - - - - - - @php $total = 0; @endphp - @foreach($refunds as $refund) - @php $total += $refund->refund_amount; @endphp - - - - - - - - @endforeach - - - - - - - - -
    Patient NameRefund DateRefund ReasonRefunded ByRefund Amount
    {{ get_full_name($refund->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ streamline_date_time($refund->created_at) }}{{ $refund->refund_reason }}{{ get_full_name($refund->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ ugandan_shillings($refund->refund_amount) }}
    Totals{{ ugandan_shillings($total) }}
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/point_of_sale.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/point_of_sale.blade.php deleted file mode 100755 index 638a155c..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/point_of_sale.blade.php +++ /dev/null @@ -1,321 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    Point Of Sale Report

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    - - {{ Form::open(['method'=>'post','route' => 'finance_reports.point_of_sale']) }} - -
    -
    -
    - - -
    -
    -
    -
    - - -
    -
    -
    - -
    -
    - -
    -
    -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success btn-rounded btn-block pull-right']) }} -
    -
    -
    - {{ Form::close() }} -
    -
    -
    - -
    -
    - @if($request != []) - @if($request->dates != "-select-" || $request->staff_member != "0") - @if(($request->dates == "today") || ($request->dates == "yesterday") || ($request->dates == "custom_date") || ($request->dates == "custom_date_range")) -
    -
    - @if(isset($display)) -

    {!! isset($display) ? $display : '' !!}

    - @endif -
    -
    - @if($request->staff_member != "ALL STAFF") -

    {!! isset($request->staff_member) ? get_full_name($request->staff_member, 'id', 'first_name', 'last_name', 'users') : '' !!}

    - @else -

    ALL STAFF

    - @endif -
    -
    - -
    -
    - -
    -
    - -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - @foreach($treatments as $episodes) - @foreach($episodes as $item) - - - - - - - - - - - - @endforeach - @endforeach - - -
    DatePatient NameItemsItem AmountsTotal AmountReceived ByReceipt NumberAmount PaidActions
    {{ streamline_date($item['created_at']) }}{{ get_full_name($item['patient_id'], 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($item['patient_id'], 'id', 'number', 'patients') }}) - @php - $ids = explode(',',$item['treatment_items']); - for ($i = 0; $i < count($ids); $i++){ - echo ($i+1).". ".get_name($ids[$i], 'id', 'name', 'drugs')."
    "; - } - @endphp -
    - @php - $treatment_subtotals = explode(',',$item['treatment_subtotals']); - $total_amount_received = 0; - for ($i = 0; $i < count($treatment_subtotals); $i++){ - echo ($i+1).". " . ugandan_shillings($treatment_subtotals[$i]) ."
    "; - $total_amount_received += $treatment_subtotals[$i]; - } - @endphp -
    {{ ugandan_shillings($total_amount_received) }}{{ get_full_name($item['created_by'], 'id', 'first_name', 'last_name', 'users') }}{{ $item['receipt_number'] }}{{ ugandan_shillings($item['patient_amount_paid']) }} - - - Print Receipt - -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - @foreach($sundries as $episodes) - @foreach($episodes as $item) - - - - - - - - - - - - @endforeach - @endforeach - - -
    DatePatient NumberPatient NameItemsItem AmountsTotal AmountReceived ByReceipt NumberAmount PaidActions
    {{ streamline_date($item['created_at']) }}{{ get_full_name($item['patient_id'], 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($item['patient_id'], 'id', 'number', 'patients') }}) - @php - $ids = explode(',',$item['sundry_items']); - for ($i = 0; $i < count($ids); $i++){ - echo ($i+1).". ".get_name($ids[$i], 'id', 'name', 'sundries')."
    "; - } - @endphp -
    - @php - $sundry_subtotals = explode(',',$item['sundry_subtotals']); - $total_amount_received = 0; - for ($i = 0; $i < count($sundry_subtotals); $i++){ - echo ($i+1).". ".ugandan_shillings($sundry_subtotals[$i])."
    "; - $total_amount_received += $sundry_subtotals[$i]; - } - @endphp -
    {{ ugandan_shillings($total_amount_received) }}{{ get_full_name($item['created_by'], 'id', 'first_name', 'last_name', 'users') }}{{ $item['receipt_number'] }}{{ ugandan_shillings($item['patient_amount_paid']) }} - - - Print Receipt - -
    -
    -
    -
    -
    -
    - @endif - @endif - @endif -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/print_accounts_payable_aging_detail.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/print_accounts_payable_aging_detail.blade.php deleted file mode 100755 index f45c4df0..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/print_accounts_payable_aging_detail.blade.php +++ /dev/null @@ -1,212 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Customer Statement - Stre@mline') }} - - - - - - - - - -
    - @php - $hospital_information = \Streamline\Models\HospitalInformation::first(); - @endphp -
    -
    -

    {{ $hospital_information->name }}

    -

    Aged Payables Detail

    -

    As of {{ Carbon\Carbon::today()->format('jS M, Y') }}

    - -
    - - - - - - - - - - - - - - - - - - @php - $current = $one_to_thirty = $thirty_one_to_sixty = $sixty_one_to_ninety = $ninety_one_and_over = 0; - @endphp - - @if($data) - @if(count($data) > 0) - @foreach($data as $vendor_id => $vendor_record) - @php - $vendor = get_name($vendor_id, 'id', 'name', 'suppliers'); - if ($vendor_id == null) { - $vendor_id = 0; - $vendor = "No Vendor"; - } - - $titles = array_keys($vendor_record); - $category_bills = []; - $_current = $_one_to_thirty = $_thirty_one_to_sixty = $_sixty_one_to_ninety = $_ninety_one_and_over = 0; - foreach ($titles as $title) { - switch ($title) { - case 'current': - $_current += isset($vendor_record[$title]) ? (int)$vendor_record[$title] : 0; - break; - case 'current_bills': - $category_bills = array_merge($category_bills, $vendor_record[$title]); - break; - case 'one_to_thirty': - $_one_to_thirty += isset($vendor_record[$title]) ? (int)$vendor_record[$title] : 0; - break; - case 'one_to_thirty_bills': - $category_bills = array_merge($category_bills, $vendor_record[$title]); - break; - case 'thirty_one_to_sixty': - $_thirty_one_to_sixty += isset($vendor_record[$title]) ? (int)$vendor_record[$title] : 0; - break; - case 'thirty_one_to_sixty_bills': - $category_bills = array_merge($category_bills, $vendor_record[$title]); - break; - case 'sixty_one_to_ninety': - $_sixty_one_to_ninety += isset($vendor_record[$title]) ? (int)$vendor_record[$title] : 0; - break; - case 'sixty_one_to_ninety_bills': - $category_bills = array_merge($category_bills, $vendor_record[$title]); - break; - case 'ninety_one_and_over': - $_ninety_one_and_over += isset($vendor_record[$title]) ? (int)$vendor_record[$title] : 0; - break; - case 'ninety_one_and_over_bills': - $category_bills = array_merge($category_bills, $vendor_record[$title]); - break; - } - } - $current += $_current; - $one_to_thirty += $_one_to_thirty; - $thirty_one_to_sixty += $_thirty_one_to_sixty; - $sixty_one_to_ninety += $_sixty_one_to_ninety; - $ninety_one_and_over += $_ninety_one_and_over; - $counter = 0; - @endphp - - - - - - @foreach($category_bills as $bill) - @php - $counter++; - $category = $bill['category']; - @endphp - - - - - - - - - - - - - @endforeach - - - - - - - - - - - - - - @endforeach - @endif - @endif - - - - - - - - - - - - - - - - -
    #Bill DateDue DateBill NumberBill MemoCurrent1 - 3031 - 6061 - 90>90
    {{ $vendor }}
    {{ $counter }}@if ($bill['bill_date'] != null) {{ streamline_date($bill['bill_date']) }} @else N/A @endif@if ($bill['bill_due_date'] != null) {{ streamline_date($bill['bill_due_date']) }} @else N/A @endif{{ $bill['bill_number'] }}{{ $bill['bill_memo'] }} - @if($category == 'current') - {{ ugandan_shillings($bill['balance']) }} - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'one_to_thirty') - {{ ugandan_shillings($bill['balance']) }} - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'thirty_one_to_sixty') - {{ ugandan_shillings($bill['balance']) }} - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'sixty_one_to_ninety') - {{ ugandan_shillings($bill['balance']) }} - @else - {{ ugandan_shillings(0) }} - @endif - - @if($category == 'ninety_one_and_over') - {{ ugandan_shillings($bill['balance']) }} - @else - {{ ugandan_shillings(0) }} - @endif -
    Total {{ $vendor }}{{ ugandan_shillings($_current) }}{{ ugandan_shillings($_one_to_thirty) }}{{ ugandan_shillings($_thirty_one_to_sixty) }}{{ ugandan_shillings($_sixty_one_to_ninety) }}{{ ugandan_shillings($_ninety_one_and_over) }}
    Total{{ ugandan_shillings($current) }}{{ ugandan_shillings($one_to_thirty) }}{{ ugandan_shillings($thirty_one_to_sixty) }}{{ ugandan_shillings($sixty_one_to_ninety) }}{{ ugandan_shillings($ninety_one_and_over) }}
    - -
    -
    -
    - - - diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/print_accounts_payable_aging_summary.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/print_accounts_payable_aging_summary.blade.php deleted file mode 100755 index 398b9d5b..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/print_accounts_payable_aging_summary.blade.php +++ /dev/null @@ -1,171 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Customer Statement - Stre@mline') }} - - - - - - - - - -
    - @php - $hospital_information = \Streamline\Models\HospitalInformation::first(); - @endphp -
    -
    -
    -
    -
    -
    -

    {{ $hospital_information->name }}

    -

    A/P Aging Summary

    -

    As of {{ Carbon\Carbon::today()->format('jS M, Y') }}

    - -
    - - - - - - - - - - - - - - - - @php - $count = 0; - $total = 0; - $current = 0; - $one_to_thirty = 0; - $thirty_one_to_sixty = 0; - $sixty_one_to_ninety = 0; - $ninety_one_and_over = 0; - @endphp - - @if($data) - @if(count($data) > 0) - @foreach($data as $vendor_id => $vendor_record) - @php - ++$count; - $vendor = get_name($vendor_id, 'id', 'name', 'suppliers'); - if ($vendor_id == null) { - $vendor_id = 0; - $vendor = "No Vendor"; - } - - $titles = array_keys($vendor_record); - $category_bills = []; - $_current = $_one_to_thirty = $_thirty_one_to_sixty = $_sixty_one_to_ninety = $_ninety_one_and_over = 0; - foreach ($titles as $title) { - switch ($title) { - case 'current': - $_current += isset($vendor_record[$title]) ? (int)$vendor_record[$title] : 0; - break; - case 'current_bills': - $category_bills = array_merge($category_bills, $vendor_record[$title]); - break; - case 'one_to_thirty': - $_one_to_thirty += isset($vendor_record[$title]) ? (int)$vendor_record[$title] : 0; - break; - case 'one_to_thirty_bills': - $category_bills = array_merge($category_bills, $vendor_record[$title]); - break; - case 'thirty_one_to_sixty': - $_thirty_one_to_sixty += isset($vendor_record[$title]) ? (int)$vendor_record[$title] : 0; - break; - case 'thirty_one_to_sixty_bills': - $category_bills = array_merge($category_bills, $vendor_record[$title]); - break; - case 'sixty_one_to_ninety': - $_sixty_one_to_ninety += isset($vendor_record[$title]) ? (int)$vendor_record[$title] : 0; - break; - case 'sixty_one_to_ninety_bills': - $category_bills = array_merge($category_bills, $vendor_record[$title]); - break; - case 'ninety_one_and_over': - $_ninety_one_and_over += isset($vendor_record[$title]) ? (int)$vendor_record[$title] : 0; - break; - case 'ninety_one_and_over_bills': - $category_bills = array_merge($category_bills, $vendor_record[$title]); - break; - } - } - $_total = $_current + $_one_to_thirty + $_thirty_one_to_sixty + $_sixty_one_to_ninety + $_ninety_one_and_over; - $current += $_current; - $one_to_thirty += $_one_to_thirty; - $thirty_one_to_sixty += $_thirty_one_to_sixty; - $sixty_one_to_ninety += $_sixty_one_to_ninety; - $ninety_one_and_over += $_ninety_one_and_over; - @endphp - - - - - - - - - - - @endforeach - @php - $total = $current + $one_to_thirty + $thirty_one_to_sixty + $sixty_one_to_ninety + $ninety_one_and_over; - @endphp - @endif - @endif - - - - - - - - - - - - - - -
    #VendorCurrent1 - 3031 - 6061 - 90>90Total
    {{ $count . "." }}{{ $vendor }}{{ ugandan_shillings($_current) }}{{ ugandan_shillings($_one_to_thirty) }}{{ ugandan_shillings($_thirty_one_to_sixty) }}{{ ugandan_shillings($_sixty_one_to_ninety) }}{{ ugandan_shillings($_ninety_one_and_over) }}{{ ugandan_shillings($_total) }}
    Total{{ ugandan_shillings($current) }}{{ ugandan_shillings($one_to_thirty) }}{{ ugandan_shillings($thirty_one_to_sixty) }}{{ ugandan_shillings($sixty_one_to_ninety) }}{{ ugandan_shillings($ninety_one_and_over) }}{{ ugandan_shillings($total) }}
    - -
    -
    - -
    -
    -
    -
    -
    - - - diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/print_accounts_receivable_aging_detail.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/print_accounts_receivable_aging_detail.blade.php deleted file mode 100755 index d9037e60..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/print_accounts_receivable_aging_detail.blade.php +++ /dev/null @@ -1,652 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Customer Statement - Stre@mline') }} - - - - - - - - - -
    - @php - $hospital_information = \Streamline\Models\HospitalInformation::first(); - @endphp -
    -
    -

    {{ $hospital_information->name }}

    -

    Aged Receivables Detail

    -

    As of {{ Carbon\Carbon::today()->format('jS M, Y') }}

    - -
    -
    Pay Later Categories
    - - - - - - - - - - - - - - - - - - @php - $total_generated = 0; - $current_generated = 0; - $one_to_thirty_generated = 0; - $thirty_one_to_sixty_generated = 0; - $sixty_one_to_ninety_generated = 0; - $ninety_one_and_over_generated = 0; - - $total_not_generated = 0; - $current_not_generated = 0; - $one_to_thirty_not_generated = 0; - $thirty_one_to_sixty_not_generated = 0; - $sixty_one_to_ninety_not_generated = 0; - $ninety_one_and_over_not_generated = 0; - @endphp - - @if($data['invoices']) - @if(count($data['invoices']) > 0) - @foreach($data['invoices'] as $patient_category_id => $patient_category_record) - @php - $patient_category = get_name($patient_category_id, 'id', 'name', 'patient_categories'); - if ($patient_category_id == null) { - $patient_category_id = 0; - $patient_category = "No Patient Category"; - } - - $titles = array_keys($patient_category_record); - $category_invoices_generated = []; - $category_invoices_not_generated = []; - $_current_generated = $_one_to_thirty_generated = $_thirty_one_to_sixty_generated = $_sixty_one_to_ninety_generated = $_ninety_one_and_over_generated = 0; - $_current_not_generated = $_one_to_thirty_not_generated = $_thirty_one_to_sixty_not_generated = $_sixty_one_to_ninety_not_generated = $_ninety_one_and_over_not_generated = 0; - foreach ($titles as $title) { - switch ($title) { - case 'current': - $_current_generated += isset($patient_category_record[$title]['generated']) ? (int)$patient_category_record[$title]['generated'] : 0; - $_current_not_generated += isset($patient_category_record[$title]['not_generated']) ? (int)$patient_category_record[$title]['not_generated'] : 0; - break; - case 'current_invoices': - $category_invoices_generated = array_merge($category_invoices_generated, $patient_category_record[$title]['generated']); - $category_invoices_not_generated = array_merge($category_invoices_not_generated, $patient_category_record[$title]['not_generated']); - break; - case 'one_to_thirty': - $_one_to_thirty_generated += isset($patient_category_record[$title]['generated']) ? (int)$patient_category_record[$title]['generated'] : 0; - $_one_to_thirty_not_generated += isset($patient_category_record[$title]['not_generated']) ? (int)$patient_category_record[$title]['not_generated'] : 0; - break; - case 'one_to_thirty_invoices': - $category_invoices_generated = array_merge($category_invoices_generated, $patient_category_record[$title]['generated']); - $category_invoices_not_generated = array_merge($category_invoices_not_generated, $patient_category_record[$title]['not_generated']); - break; - case 'thirty_one_to_sixty': - $_thirty_one_to_sixty_generated += isset($patient_category_record[$title]['generated']) ? (int)$patient_category_record[$title]['generated'] : 0; - $_thirty_one_to_sixty_not_generated += isset($patient_category_record[$title]['not_generated']) ? (int)$patient_category_record[$title]['not_generated'] : 0; - break; - case 'thirty_one_to_sixty_invoices': - $category_invoices_generated = array_merge($category_invoices_generated, $patient_category_record[$title]['generated']); - $category_invoices_not_generated = array_merge($category_invoices_not_generated, $patient_category_record[$title]['not_generated']); - break; - case 'sixty_one_to_ninety': - $_sixty_one_to_ninety_generated += isset($patient_category_record[$title]['generated']) ? (int)$patient_category_record[$title]['generated'] : 0; - $_sixty_one_to_ninety_not_generated += isset($patient_category_record[$title]['not_generated']) ? (int)$patient_category_record[$title]['not_generated'] : 0; - break; - case 'sixty_one_to_ninety_invoices': - $category_invoices_generated = array_merge($category_invoices_generated, $patient_category_record[$title]['generated']); - $category_invoices_not_generated = array_merge($category_invoices_not_generated, $patient_category_record[$title]['not_generated']); - break; - case 'ninety_one_and_over': - $_ninety_one_and_over_generated += isset($patient_category_record[$title]['generated']) ? (int)$patient_category_record[$title]['generated'] : 0; - $_ninety_one_and_over_not_generated += isset($patient_category_record[$title]['not_generated']) ? (int)$patient_category_record[$title]['not_generated'] : 0; - break; - case 'ninety_one_and_over_invoices': - $category_invoices_generated = array_merge($category_invoices_generated, $patient_category_record[$title]['generated']); - $category_invoices_not_generated = array_merge($category_invoices_not_generated, $patient_category_record[$title]['not_generated']); - break; - } - } - - $_total_generated = $_current_generated + $_one_to_thirty_generated + $_thirty_one_to_sixty_generated + $_sixty_one_to_ninety_generated + $_ninety_one_and_over_generated; - $current_generated += $_current_generated; - $one_to_thirty_generated += $_one_to_thirty_generated; - $thirty_one_to_sixty_generated += $_thirty_one_to_sixty_generated; - $sixty_one_to_ninety_generated += $_sixty_one_to_ninety_generated; - $ninety_one_and_over_generated += $_ninety_one_and_over_generated; - - $_total_not_generated = $_current_not_generated + $_one_to_thirty_not_generated + $_thirty_one_to_sixty_not_generated + $_sixty_one_to_ninety_not_generated + $_ninety_one_and_over_not_generated; - $current_not_generated += $_current_not_generated; - $one_to_thirty_not_generated += $_one_to_thirty_not_generated; - $thirty_one_to_sixty_not_generated += $_thirty_one_to_sixty_not_generated; - $sixty_one_to_ninety_not_generated += $_sixty_one_to_ninety_not_generated; - $ninety_one_and_over_not_generated += $_ninety_one_and_over_not_generated; - - $count_generated = 0; - $count_not_generated = 0; - @endphp - - - @if($_total_generated > 0) - - - - - - - @foreach($category_invoices_generated as $invoice) - @php - $count_generated++; - $category = $invoice['category']; - @endphp - @if($invoice['balance'] > 0) - - - - - - - - - - - - - @endif - @endforeach - - - - - - - - - - - - - - @endif - - - @if($_total_not_generated > 0) - - - - - - - @foreach($category_invoices_not_generated as $invoice) - @php - $count_not_generated++; - $category = $invoice['category']; - @endphp - @if($invoice['balance'] > 0) - - - - - - - - - - - - - @endif - @endforeach - - - - - - - - - - - - - - @endif - @endforeach - @php - $total_generated = $current_generated + $one_to_thirty_generated + $thirty_one_to_sixty_generated + $sixty_one_to_ninety_generated + $ninety_one_and_over_generated; - $total_not_generated = $current_not_generated + $one_to_thirty_not_generated + $thirty_one_to_sixty_not_generated + $sixty_one_to_ninety_not_generated + $ninety_one_and_over_not_generated; - @endphp - @endif - @endif - - - - - - - - - - - - - - - - -
    #PatientDate CreatedInvoice DateInvoice NumberCurrent1 - 3031 - 6061 - 90>90
    {{ $patient_category }} (Cummulative Invoice Generated)
    {{ $count_generated }}.{{ get_name($invoice['patient_id'], 'id', 'number', 'patients') . " - " . get_full_name($invoice['patient_id'], 'id', 'first_name', 'last_name', 'patients') }}@if ($invoice['created_at'] != null) {{ streamline_date($invoice['created_at']) }} @else N/A @endif@if ($invoice['invoice_date'] != null) {{ $invoice['invoice_date'] }} @else N/A @endif{{ $invoice['invoice_number'] }}{{ ($category == 'current') ? ugandan_shillings($invoice['balance']) : ugandan_shillings(0) }}{{ ($category == 'one_to_thirty') ? ugandan_shillings($invoice['balance']) : ugandan_shillings(0) }}{{ ($category == 'thirty_one_to_sixty') ? ugandan_shillings($invoice['balance']) : ugandan_shillings(0) }}{{ ($category == 'sixty_one_to_ninety') ? ugandan_shillings($invoice['balance']) : ugandan_shillings(0) }}{{ ($category == 'ninety_one_and_over') ? ugandan_shillings($invoice['balance']) : ugandan_shillings(0) }}
    Total {{ $patient_category }} (Cummulative Invoice Generated){{ ugandan_shillings($_current_generated) }}{{ ugandan_shillings($_one_to_thirty_generated) }}{{ ugandan_shillings($_thirty_one_to_sixty_generated) }}{{ ugandan_shillings($_sixty_one_to_ninety_generated) }}{{ ugandan_shillings($_ninety_one_and_over_generated) }}
    {{ $patient_category }} (Cummulative Invoice Not Generated)
    {{ $count_not_generated }}.{{ get_name($invoice['patient_id'], 'id', 'number', 'patients') . " - " . get_full_name($invoice['patient_id'], 'id', 'first_name', 'last_name', 'patients') }}@if ($invoice['created_at'] != null) {{ streamline_date($invoice['created_at']) }} @else N/A @endif@if ($invoice['invoice_date'] != null) {{ $invoice['invoice_date'] }} @else N/A @endif{{ $invoice['receipt_number'] }}{{ ($category == 'current') ? ugandan_shillings($invoice['balance']) : ugandan_shillings(0) }}{{ ($category == 'one_to_thirty') ? ugandan_shillings($invoice['balance']) : ugandan_shillings(0) }}{{ ($category == 'thirty_one_to_sixty') ? ugandan_shillings($invoice['balance']) : ugandan_shillings(0) }}{{ ($category == 'sixty_one_to_ninety') ? ugandan_shillings($invoice['balance']) : ugandan_shillings(0) }}{{ ($category == 'ninety_one_and_over') ? ugandan_shillings($invoice['balance']) : ugandan_shillings(0) }}
    Total {{ $patient_category }} (Cummulative Invoice Not Generated){{ ugandan_shillings($_current_not_generated) }}{{ ugandan_shillings($_one_to_thirty_not_generated) }}{{ ugandan_shillings($_thirty_one_to_sixty_not_generated) }}{{ ugandan_shillings($_sixty_one_to_ninety_not_generated) }}{{ ugandan_shillings($_ninety_one_and_over_not_generated) }}
    Total{{ ugandan_shillings($current_generated + $current_not_generated) }}{{ ugandan_shillings($one_to_thirty_generated + $one_to_thirty_not_generated) }}{{ ugandan_shillings($thirty_one_to_sixty_generated + $thirty_one_to_sixty_not_generated) }}{{ ugandan_shillings($sixty_one_to_ninety_generated + $sixty_one_to_ninety_not_generated) }}{{ ugandan_shillings($ninety_one_and_over_generated + $ninety_one_and_over_not_generated) }}
    - - -
    -
    Debtors
    - - - - - - - - - - - - - - - - - @php - $count_debtors = 0; - $total_debtors = 0; - $current_debtors = 0; - $one_to_thirty_debtors = 0; - $thirty_one_to_sixty_debtors = 0; - $sixty_one_to_ninety_debtors = 0; - $ninety_one_and_over_debtors = 0; - @endphp - @if($data['debtors']) - @if(count($data['debtors']) > 0) - @foreach($data['debtors'] as $debtor_id => $debtor_record) - @php - $debtor_name = get_full_name($debtor_id, 'id', 'first_name', 'last_name', 'patients'); - $debtor_identifier = get_name($debtor_id, 'id', 'number', 'patients'); - if ($debtor_id == null) { - $debtor_id = 0; - $debtor_name = "No Patient"; - $debtor_identifier = "#"; - } - - $titles_debtors = array_keys($debtor_record); - $category_debtors = []; - $_current_debtors = $_one_to_thirty_debtors = $_thirty_one_to_sixty_debtors = $_sixty_one_to_ninety_debtors = $_ninety_one_and_over_debtors = 0; - foreach ($titles_debtors as $title) { - switch ($title) { - case 'current': - $_current_debtors += isset($debtor_record[$title]) ? (int)$debtor_record[$title] : 0; - break; - case 'current_debtors': - $category_debtors = array_merge($category_debtors, $debtor_record[$title]); - break; - case 'one_to_thirty': - $_one_to_thirty_debtors += isset($debtor_record[$title]) ? (int)$debtor_record[$title] : 0; - break; - case 'one_to_thirty_debtors': - $category_debtors = array_merge($category_debtors, $debtor_record[$title]); - break; - case 'thirty_one_to_sixty': - $_thirty_one_to_sixty_debtors += isset($debtor_record[$title]) ? (int)$debtor_record[$title] : 0; - break; - case 'thirty_one_to_sixty_debtors': - $category_debtors = array_merge($category_debtors, $debtor_record[$title]); - break; - case 'sixty_one_to_ninety': - $_sixty_one_to_ninety_debtors += isset($debtor_record[$title]) ? (int)$debtor_record[$title] : 0; - break; - case 'sixty_one_to_ninety_debtors': - $category_debtors = array_merge($category_debtors, $debtor_record[$title]); - break; - case 'ninety_one_and_over': - $_ninety_one_and_over_debtors += isset($debtor_record[$title]) ? (int)$debtor_record[$title] : 0; - break; - case 'ninety_one_and_over_debtors': - $category_debtors = array_merge($category_debtors, $debtor_record[$title]); - break; - } - } - $_total_debtors = $_current_debtors + $_one_to_thirty_debtors + $_thirty_one_to_sixty_debtors + $_sixty_one_to_ninety_debtors + $_ninety_one_and_over_debtors; - $current_debtors += $_current_debtors; - $one_to_thirty_debtors += $_one_to_thirty_debtors; - $thirty_one_to_sixty_debtors += $_thirty_one_to_sixty_debtors; - $sixty_one_to_ninety_debtors += $_sixty_one_to_ninety_debtors; - $ninety_one_and_over_debtors += $_ninety_one_and_over_debtors; - @endphp - - @foreach($category_debtors as $debtor) - @php - $count_debtors++; - $category = $debtor['category']; - @endphp - - - - - - - - - - - - - @endforeach - @endforeach - @endif - @endif - @php - $total_debtors = $current_debtors + $one_to_thirty_debtors + $thirty_one_to_sixty_debtors + $sixty_one_to_ninety_debtors + $ninety_one_and_over_debtors; - @endphp - - - - - - - - - - - - - - - -
    #DebtorDate CreatedStaffInvoice NumberCurrent1 - 3031 - 6061 - 90>90
    {{ $count_debtors . "." }}{{ $debtor_identifier }}@if ($debtor['created_at'] != null) {{ streamline_date($debtor['created_at']) }} @else N/A @endif@if ($debtor['created_by'] != null) {{ get_full_name($debtor['created_by'], 'id', 'first_name', 'last_name', 'users') }} @else N/A @endif{{ $debtor['receipt_number'] }}{{ ($category == 'current') ? ugandan_shillings($debtor['balance']) : ugandan_shillings(0) }}{{ ($category == 'one_to_thirty') ? ugandan_shillings($debtor['balance']) : ugandan_shillings(0) }}{{ ($category == 'thirty_one_to_sixty') ? ugandan_shillings($debtor['balance']) : ugandan_shillings(0) }}{{ ($category == 'sixty_one_to_ninety') ? ugandan_shillings($debtor['balance']) : ugandan_shillings(0) }}{{ ($category == 'ninety_one_and_over') ? ugandan_shillings($debtor['balance']) : ugandan_shillings(0) }}
    Total{{ ugandan_shillings($current_debtors) }}{{ ugandan_shillings($one_to_thirty_debtors) }}{{ ugandan_shillings($thirty_one_to_sixty_debtors) }}{{ ugandan_shillings($sixty_one_to_ninety_debtors) }}{{ ugandan_shillings($ninety_one_and_over_debtors) }}
    - - -
    -
    Debt Plan
    - - - - - - - - - - - - - - - - - @php - $count_debt_plans = 0; - $total_debt_plans = 0; - $current_debt_plans = 0; - $one_to_thirty_debt_plans = 0; - $thirty_one_to_sixty_debt_plans = 0; - $sixty_one_to_ninety_debt_plans = 0; - $ninety_one_and_over_debt_plans = 0; - @endphp - @if($data['debt_plans']) - @if(count($data['debt_plans']) > 0) - @foreach($data['debt_plans'] as $patient_id => $debt_plan_record) - @php - $patient_name = get_full_name($patient_id, 'id', 'first_name', 'last_name', 'patients'); - $patient_number = get_name($patient_id, 'id', 'number', 'patients'); - if ($patient_id == null) { - $patient_id = 0; - $patient_name = "No Patient"; - $patient_number = "#"; - } - - $titles_debt_plans = array_keys($debt_plan_record); - $category_debt_plans = []; - $_current_debt_plans = $_one_to_thirty_debt_plans = $_thirty_one_to_sixty_debt_plans = $_sixty_one_to_ninety_debt_plans = $_ninety_one_and_over_debt_plans = 0; - foreach ($titles_debt_plans as $title) { - switch ($title) { - case 'current': - $_current_debt_plans += isset($debt_plan_record[$title]) ? (int)$debt_plan_record[$title] : 0; - break; - case 'current_debt_plans': - $category_debt_plans = array_merge($category_debt_plans, $debt_plan_record[$title]); - break; - case 'one_to_thirty': - $_one_to_thirty_debt_plans += isset($debt_plan_record[$title]) ? (int)$debt_plan_record[$title] : 0; - break; - case 'one_to_thirty_debt_plans': - $category_debt_plans = array_merge($category_debt_plans, $debt_plan_record[$title]); - break; - case 'thirty_one_to_sixty': - $_thirty_one_to_sixty_debt_plans += isset($debt_plan_record[$title]) ? (int)$debt_plan_record[$title] : 0; - break; - case 'thirty_one_to_sixty_debt_plans': - $category_debt_plans = array_merge($category_debt_plans, $debt_plan_record[$title]); - break; - case 'sixty_one_to_ninety': - $_sixty_one_to_ninety_debt_plans += isset($debt_plan_record[$title]) ? (int)$debt_plan_record[$title] : 0; - break; - case 'sixty_one_to_ninety_debt_plans': - $category_debt_plans = array_merge($category_debt_plans, $debt_plan_record[$title]); - break; - case 'ninety_one_and_over': - $_ninety_one_and_over_debt_plans += isset($debt_plan_record[$title]) ? (int)$debt_plan_record[$title] : 0; - break; - case 'ninety_one_and_over_debt_plans': - $category_debt_plans = array_merge($category_debt_plans, $debt_plan_record[$title]); - break; - } - } - $_total_debt_plans = $_current_debt_plans + $_one_to_thirty_debt_plans + $_thirty_one_to_sixty_debt_plans + $_sixty_one_to_ninety_debt_plans + $_ninety_one_and_over_debt_plans; - $current_debt_plans += $_current_debt_plans; - $one_to_thirty_debt_plans += $_one_to_thirty_debt_plans; - $thirty_one_to_sixty_debt_plans += $_thirty_one_to_sixty_debt_plans; - $sixty_one_to_ninety_debt_plans += $_sixty_one_to_ninety_debt_plans; - $ninety_one_and_over_debt_plans += $_ninety_one_and_over_debt_plans; - @endphp - - @foreach($category_debt_plans as $debt_plan) - @php - $count_debt_plans++; - $category = $debt_plan['category']; - @endphp - - - - - - - - - - - - - @endforeach - @endforeach - @endif - @endif - @php - $total_debt_plans = $current_debt_plans + $one_to_thirty_debt_plans + $thirty_one_to_sixty_debt_plans + $sixty_one_to_ninety_debt_plans + $ninety_one_and_over_debt_plans; - @endphp - - - - - - - - - - - - - - - -
    #Debt Plan PatientDate CreatedStaff GuarantorAuthorised ByCurrent1 - 3031 - 6061 - 90>90
    {{ $count_debt_plans . "." }}{{ $patient_number }}@if ($debt_plan['created_at'] != null) {{ streamline_date($debt_plan['created_at']) }} @else N/A @endif@if ($debt_plan['staff_guarantor'] != null) {{ get_full_name($debt_plan['staff_guarantor'], 'id', 'first_name', 'last_name', 'users') }} @else N/A @endif@if ($debt_plan['authorised_by'] != null) {{ get_full_name($debt_plan['authorised_by'], 'id', 'first_name', 'last_name', 'users') }} @else N/A @endif{{ ($category == 'current') ? ugandan_shillings($debt_plan['balance']) : ugandan_shillings(0) }}{{ ($category == 'one_to_thirty') ? ugandan_shillings($debt_plan['balance']) : ugandan_shillings(0) }}{{ ($category == 'thirty_one_to_sixty') ? ugandan_shillings($debt_plan['balance']) : ugandan_shillings(0) }}{{ ($category == 'sixty_one_to_ninety') ? ugandan_shillings($debt_plan['balance']) : ugandan_shillings(0) }}{{ ($category == 'ninety_one_and_over') ? ugandan_shillings($debt_plan['balance']) : ugandan_shillings(0) }}
    Total{{ ugandan_shillings($current_debt_plans) }}{{ ugandan_shillings($one_to_thirty_debt_plans) }}{{ ugandan_shillings($thirty_one_to_sixty_debt_plans) }}{{ ugandan_shillings($sixty_one_to_ninety_debt_plans) }}{{ ugandan_shillings($ninety_one_and_over_debt_plans) }}
    - - -
    -
    Family Accounts
    - - - - - - - - - - - - - - - - - @php - $count_family_accounts = 0; - $total_family_accounts = 0; - $current_family_accounts = 0; - $one_to_thirty_family_accounts = 0; - $thirty_one_to_sixty_family_accounts = 0; - $sixty_one_to_ninety_family_accounts = 0; - $ninety_one_and_over_family_accounts = 0; - @endphp - @if($data['family_accounts']) - @if(count($data['family_accounts']) > 0) - @foreach($data['family_accounts'] as $patient_id => $family_account_record) - @php - $patient_name = get_full_name($patient_id, 'id', 'first_name', 'last_name', 'patients'); - $patient_number = get_name($patient_id, 'id', 'number', 'patients'); - $patient_phone = get_name($patient_id, 'id', 'phone', 'patients'); - if ($patient_id == null) { - $patient_id = 0; - $patient_name = "No Patient"; - $patient_number = "#"; - $patient_phone = "#"; - } - - $titles_family_accounts = array_keys($family_account_record); - $category_family_accounts = []; - $_current_family_accounts = $_one_to_thirty_family_accounts = $_thirty_one_to_sixty_family_accounts = $_sixty_one_to_ninety_family_accounts = $_ninety_one_and_over_family_accounts = 0; - foreach ($titles_family_accounts as $title) { - switch ($title) { - case 'current': - $_current_family_accounts += isset($family_account_record[$title]) ? (int)$family_account_record[$title] : 0; - break; - case 'current_family_accounts': - $category_family_accounts = array_merge($category_family_accounts, $family_account_record[$title]); - break; - case 'one_to_thirty': - $_one_to_thirty_family_accounts += isset($family_account_record[$title]) ? (int)$family_account_record[$title] : 0; - break; - case 'one_to_thirty_family_accounts': - $category_family_accounts = array_merge($category_family_accounts, $family_account_record[$title]); - break; - case 'thirty_one_to_sixty': - $_thirty_one_to_sixty_family_accounts += isset($family_account_record[$title]) ? (int)$family_account_record[$title] : 0; - break; - case 'thirty_one_to_sixty_family_accounts': - $category_family_accounts = array_merge($category_family_accounts, $family_account_record[$title]); - break; - case 'sixty_one_to_ninety': - $_sixty_one_to_ninety_family_accounts += isset($family_account_record[$title]) ? (int)$family_account_record[$title] : 0; - break; - case 'sixty_one_to_ninety_family_accounts': - $category_family_accounts = array_merge($category_family_accounts, $family_account_record[$title]); - break; - case 'ninety_one_and_over': - $_ninety_one_and_over_family_accounts += isset($family_account_record[$title]) ? (int)$family_account_record[$title] : 0; - break; - case 'ninety_one_and_over_family_accounts': - $category_family_accounts = array_merge($category_family_accounts, $family_account_record[$title]); - break; - } - } - $_total_family_accounts = $_current_family_accounts + $_one_to_thirty_family_accounts + $_thirty_one_to_sixty_family_accounts + $_sixty_one_to_ninety_family_accounts + $_ninety_one_and_over_family_accounts; - $current_family_accounts += $_current_family_accounts; - $one_to_thirty_family_accounts += $_one_to_thirty_family_accounts; - $thirty_one_to_sixty_family_accounts += $_thirty_one_to_sixty_family_accounts; - $sixty_one_to_ninety_family_accounts += $_sixty_one_to_ninety_family_accounts; - $ninety_one_and_over_family_accounts += $_ninety_one_and_over_family_accounts; - @endphp - - @foreach($category_family_accounts as $family_account) - @php - $count_family_accounts++; - $category = $family_account['category']; - @endphp - - - - - - - - - - - - - @endforeach - @endforeach - @endif - @endif - @php - $total_family_accounts = $current_family_accounts + $one_to_thirty_family_accounts + $thirty_one_to_sixty_family_accounts + $sixty_one_to_ninety_family_accounts + $ninety_one_and_over_family_accounts; - @endphp - - - - - - - - - - - - - - - -
    #Family HeadPhoneDate CreatedCreated ByCurrent1 - 3031 - 6061 - 90>90
    {{ $count_family_accounts . "." }}{{ $patient_number . " - " . $patient_name }}{{ $patient_phone }}@if ($family_account['created_at'] != null) {{ streamline_date($family_account['created_at']) }} @else N/A @endif@if ($family_account['created_by'] != null) {{ get_full_name($family_account['created_by'], 'id', 'first_name', 'last_name', 'users') }} @else N/A @endif{{ ($category == 'current') ? ugandan_shillings($family_account['balance']) : ugandan_shillings(0) }}{{ ($category == 'one_to_thirty') ? ugandan_shillings($family_account['balance']) : ugandan_shillings(0) }}{{ ($category == 'thirty_one_to_sixty') ? ugandan_shillings($family_account['balance']) : ugandan_shillings(0) }}{{ ($category == 'sixty_one_to_ninety') ? ugandan_shillings($family_account['balance']) : ugandan_shillings(0) }}{{ ($category == 'ninety_one_and_over') ? ugandan_shillings($family_account['balance']) : ugandan_shillings(0) }}
    Total{{ ugandan_shillings($current_family_accounts) }}{{ ugandan_shillings($one_to_thirty_family_accounts) }}{{ ugandan_shillings($thirty_one_to_sixty_family_accounts) }}{{ ugandan_shillings($sixty_one_to_ninety_family_accounts) }}{{ ugandan_shillings($ninety_one_and_over_family_accounts) }}
    - -
    -
    -
    - - - diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/print_accounts_receivable_aging_summary.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/print_accounts_receivable_aging_summary.blade.php deleted file mode 100755 index 1e01e1c7..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/print_accounts_receivable_aging_summary.blade.php +++ /dev/null @@ -1,561 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Customer Statement - Stre@mline') }} - - - - - - - - - -
    - @php - $hospital_information = \Streamline\Models\HospitalInformation::first(); - @endphp -
    -
    -
    -
    -
    -
    -

    {{ $hospital_information->name }}

    -

    A/R Aging Summary

    -

    As of {{ Carbon\Carbon::today()->format('jS M, Y') }}

    - -
    -
    Pay Later Categories
    - - - - - - - - - - - - - - - - @php - $count = 0; - - $total_generated = 0; - $current_generated = 0; - $one_to_thirty_generated = 0; - $thirty_one_to_sixty_generated = 0; - $sixty_one_to_ninety_generated = 0; - $ninety_one_and_over_generated = 0; - - $total_not_generated = 0; - $current_not_generated = 0; - $one_to_thirty_not_generated = 0; - $thirty_one_to_sixty_not_generated = 0; - $sixty_one_to_ninety_not_generated = 0; - $ninety_one_and_over_not_generated = 0; - @endphp - - @if($data['invoices']) - @if(count($data['invoices']) > 0) - @foreach($data['invoices'] as $patient_category_id => $patient_category_record) - @php - $patient_category = get_name($patient_category_id, 'id', 'name', 'patient_categories'); - if ($patient_category_id == null) { - $patient_category_id = 0; - $patient_category = "No Patient Category"; - } - - $titles = array_keys($patient_category_record); - $category_invoices = []; - $_current_generated = $_one_to_thirty_generated = $_thirty_one_to_sixty_generated = $_sixty_one_to_ninety_generated = $_ninety_one_and_over_generated = 0; - $_current_not_generated = $_one_to_thirty_not_generated = $_thirty_one_to_sixty_not_generated = $_sixty_one_to_ninety_not_generated = $_ninety_one_and_over_not_generated = 0; - foreach ($titles as $title) { - switch ($title) { - case 'current': - $_current_generated += isset($patient_category_record[$title]['generated']) ? (int)$patient_category_record[$title]['generated'] : 0; - $_current_not_generated += isset($patient_category_record[$title]['not_generated']) ? (int)$patient_category_record[$title]['not_generated'] : 0; - break; - case 'current_invoices': - $category_invoices = array_merge($category_invoices, $patient_category_record[$title]); - break; - case 'one_to_thirty': - $_one_to_thirty_generated += isset($patient_category_record[$title]['generated']) ? (int)$patient_category_record[$title]['generated'] : 0; - $_one_to_thirty_not_generated += isset($patient_category_record[$title]['not_generated']) ? (int)$patient_category_record[$title]['not_generated'] : 0; - break; - case 'one_to_thirty_invoices': - $category_invoices = array_merge($category_invoices, $patient_category_record[$title]); - break; - case 'thirty_one_to_sixty': - $_thirty_one_to_sixty_generated += isset($patient_category_record[$title]['generated']) ? (int)$patient_category_record[$title]['generated'] : 0; - $_thirty_one_to_sixty_not_generated += isset($patient_category_record[$title]['not_generated']) ? (int)$patient_category_record[$title]['not_generated'] : 0; - break; - case 'thirty_one_to_sixty_invoices': - $category_invoices = array_merge($category_invoices, $patient_category_record[$title]); - break; - case 'sixty_one_to_ninety': - $_sixty_one_to_ninety_generated += isset($patient_category_record[$title]['generated']) ? (int)$patient_category_record[$title]['generated'] : 0; - $_sixty_one_to_ninety_not_generated += isset($patient_category_record[$title]['not_generated']) ? (int)$patient_category_record[$title]['not_generated'] : 0; - break; - case 'sixty_one_to_ninety_invoices': - $category_invoices = array_merge($category_invoices, $patient_category_record[$title]); - break; - case 'ninety_one_and_over': - $_ninety_one_and_over_generated += isset($patient_category_record[$title]['generated']) ? (int)$patient_category_record[$title]['generated'] : 0; - $_ninety_one_and_over_not_generated += isset($patient_category_record[$title]['not_generated']) ? (int)$patient_category_record[$title]['not_generated'] : 0; - break; - case 'ninety_one_and_over_invoices': - $category_invoices = array_merge($category_invoices, $patient_category_record[$title]); - break; - } - } - - $_total_generated = $_current_generated + $_one_to_thirty_generated + $_thirty_one_to_sixty_generated + $_sixty_one_to_ninety_generated + $_ninety_one_and_over_generated; - $current_generated += $_current_generated; - $one_to_thirty_generated += $_one_to_thirty_generated; - $thirty_one_to_sixty_generated += $_thirty_one_to_sixty_generated; - $sixty_one_to_ninety_generated += $_sixty_one_to_ninety_generated; - $ninety_one_and_over_generated += $_ninety_one_and_over_generated; - - $_total_not_generated = $_current_not_generated + $_one_to_thirty_not_generated + $_thirty_one_to_sixty_not_generated + $_sixty_one_to_ninety_not_generated + $_ninety_one_and_over_not_generated; - $current_not_generated += $_current_not_generated; - $one_to_thirty_not_generated += $_one_to_thirty_not_generated; - $thirty_one_to_sixty_not_generated += $_thirty_one_to_sixty_not_generated; - $sixty_one_to_ninety_not_generated += $_sixty_one_to_ninety_not_generated; - $ninety_one_and_over_not_generated += $_ninety_one_and_over_not_generated; - @endphp - - @if($_total_generated > 0) - @php ++$count; @endphp - - - - - - - - - - - @endif - - - @if($_total_not_generated > 0) - @php ++$count; @endphp - - - - - - - - - - - @endif - @endforeach - @php - $total_generated = $current_generated + $one_to_thirty_generated + $thirty_one_to_sixty_generated + $sixty_one_to_ninety_generated + $ninety_one_and_over_generated; - $total_not_generated = $current_not_generated + $one_to_thirty_not_generated + $thirty_one_to_sixty_not_generated + $sixty_one_to_ninety_not_generated + $ninety_one_and_over_not_generated; - @endphp - @endif - @endif - - - - - - - - - - - - - - -
    #Patient CategoryCurrent1 - 3031 - 6061 - 90>90Total
    {{ $count . "." }}{{ $patient_category }} (Cummulative Invoice Generated){{ ugandan_shillings($_current_generated) }}{{ ugandan_shillings($_one_to_thirty_generated) }}{{ ugandan_shillings($_thirty_one_to_sixty_generated) }}{{ ugandan_shillings($_sixty_one_to_ninety_generated) }}{{ ugandan_shillings($_ninety_one_and_over_generated) }}{{ ugandan_shillings($_total_generated) }}
    {{ $count . "." }}{{ $patient_category }} (Cummulative Invoice Not Generated){{ ugandan_shillings($_current_not_generated) }}{{ ugandan_shillings($_one_to_thirty_not_generated) }}{{ ugandan_shillings($_thirty_one_to_sixty_not_generated) }}{{ ugandan_shillings($_sixty_one_to_ninety_not_generated) }}{{ ugandan_shillings($_ninety_one_and_over_not_generated) }}{{ ugandan_shillings($_total_not_generated) }}
    Total{{ ugandan_shillings($current_generated + $current_not_generated) }}{{ ugandan_shillings($one_to_thirty_generated + $one_to_thirty_not_generated) }}{{ ugandan_shillings($thirty_one_to_sixty_generated + $thirty_one_to_sixty_not_generated) }}{{ ugandan_shillings($sixty_one_to_ninety_generated + $sixty_one_to_ninety_not_generated) }}{{ ugandan_shillings($ninety_one_and_over_generated + $ninety_one_and_over_not_generated) }}{{ ugandan_shillings($total_generated + $total_not_generated) }}
    - - -
    -
    Debtors
    - - - - - - - - - - - - - - - @php - $count_debtors = 0; - $total_debtors = 0; - $current_debtors = 0; - $one_to_thirty_debtors = 0; - $thirty_one_to_sixty_debtors = 0; - $sixty_one_to_ninety_debtors = 0; - $ninety_one_and_over_debtors = 0; - @endphp - @if($data['debtors']) - @if(count($data['debtors']) > 0) - @foreach($data['debtors'] as $debtor_id => $debtor_record) - @php - $debtor = get_full_name($debtor_id, 'id', 'first_name', 'last_name', 'patients'); - $debtor_identifier = get_name($debtor_id, 'id', 'number', 'patients'); - if ($debtor_id == null) { - $debtor_id = 0; - $debtor = "No Patient"; - $debtor_identifier = "#"; - } - - $titles_debtors = array_keys($debtor_record); - $category_debtors = []; - $_current_debtors = $_one_to_thirty_debtors = $_thirty_one_to_sixty_debtors = $_sixty_one_to_ninety_debtors = $_ninety_one_and_over_debtors = 0; - foreach ($titles_debtors as $title) { - switch ($title) { - case 'current': - $_current_debtors += isset($debtor_record[$title]) ? (int)$debtor_record[$title] : 0; - break; - case 'current_debtors': - $category_debtors = array_merge($category_debtors, $debtor_record[$title]); - break; - case 'one_to_thirty': - $_one_to_thirty_debtors += isset($debtor_record[$title]) ? (int)$debtor_record[$title] : 0; - break; - case 'one_to_thirty_debtors': - $category_debtors = array_merge($category_debtors, $debtor_record[$title]); - break; - case 'thirty_one_to_sixty': - $_thirty_one_to_sixty_debtors += isset($debtor_record[$title]) ? (int)$debtor_record[$title] : 0; - break; - case 'thirty_one_to_sixty_debtors': - $category_debtors = array_merge($category_debtors, $debtor_record[$title]); - break; - case 'sixty_one_to_ninety': - $_sixty_one_to_ninety_debtors += isset($debtor_record[$title]) ? (int)$debtor_record[$title] : 0; - break; - case 'sixty_one_to_ninety_debtors': - $category_debtors = array_merge($category_debtors, $debtor_record[$title]); - break; - case 'ninety_one_and_over': - $_ninety_one_and_over_debtors += isset($debtor_record[$title]) ? (int)$debtor_record[$title] : 0; - break; - case 'ninety_one_and_over_debtors': - $category_debtors = array_merge($category_debtors, $debtor_record[$title]); - break; - } - } - $_total_debtors = $_current_debtors + $_one_to_thirty_debtors + $_thirty_one_to_sixty_debtors + $_sixty_one_to_ninety_debtors + $_ninety_one_and_over_debtors; - $current_debtors += $_current_debtors; - $one_to_thirty_debtors += $_one_to_thirty_debtors; - $thirty_one_to_sixty_debtors += $_thirty_one_to_sixty_debtors; - $sixty_one_to_ninety_debtors += $_sixty_one_to_ninety_debtors; - $ninety_one_and_over_debtors += $_ninety_one_and_over_debtors; - $count_debtors += count($category_debtors); - @endphp - @endforeach - @endif - - @php - $total_debtors = $current_debtors + $one_to_thirty_debtors + $thirty_one_to_sixty_debtors + $sixty_one_to_ninety_debtors + $ninety_one_and_over_debtors; - @endphp - - - - - - - - - - - - @endif - - - - - - - - - - - - - -
    #DebtorsCurrent1 - 3031 - 6061 - 90>90Total
    {{ $count_debtors }}{{ ugandan_shillings($current_debtors) }}{{ ugandan_shillings($one_to_thirty_debtors) }}{{ ugandan_shillings($thirty_one_to_sixty_debtors) }}{{ ugandan_shillings($sixty_one_to_ninety_debtors) }}{{ ugandan_shillings($ninety_one_and_over_debtors) }}{{ ugandan_shillings($total_debtors) }}
    Total{{ ugandan_shillings($current_debtors) }}{{ ugandan_shillings($one_to_thirty_debtors) }}{{ ugandan_shillings($thirty_one_to_sixty_debtors) }}{{ ugandan_shillings($sixty_one_to_ninety_debtors) }}{{ ugandan_shillings($ninety_one_and_over_debtors) }}{{ ugandan_shillings($total_debtors) }}
    - - -
    -
    Debt Plan
    - - - - - - - - - - - - - - - @php - $count_debt_plans = 0; - $total_debt_plans = 0; - $current_debt_plans = 0; - $one_to_thirty_debt_plans = 0; - $thirty_one_to_sixty_debt_plans = 0; - $sixty_one_to_ninety_debt_plans = 0; - $ninety_one_and_over_debt_plans = 0; - @endphp - @if($data['debt_plans']) - @if(count($data['debt_plans']) > 0) - @foreach($data['debt_plans'] as $patient_id => $debt_plan_record) - @php - $patient_name = get_full_name($patient_id, 'id', 'first_name', 'last_name', 'patients'); - $patient_number = get_name($patient_id, 'id', 'number', 'patients'); - if ($patient_id == null) { - $patient_id = 0; - $patient_name = "No Patient"; - $patient_number = "#"; - } - - $titles_debt_plans = array_keys($debt_plan_record); - $category_debt_plans = []; - $_current_debt_plans = $_one_to_thirty_debt_plans = $_thirty_one_to_sixty_debt_plans = $_sixty_one_to_ninety_debt_plans = $_ninety_one_and_over_debt_plans = 0; - foreach ($titles_debt_plans as $title) { - switch ($title) { - case 'current': - $_current_debt_plans += isset($debt_plan_record[$title]) ? (int)$debt_plan_record[$title] : 0; - break; - case 'current_debt_plans': - $category_debt_plans = array_merge($category_debt_plans, $debt_plan_record[$title]); - break; - case 'one_to_thirty': - $_one_to_thirty_debt_plans += isset($debt_plan_record[$title]) ? (int)$debt_plan_record[$title] : 0; - break; - case 'one_to_thirty_debt_plans': - $category_debt_plans = array_merge($category_debt_plans, $debt_plan_record[$title]); - break; - case 'thirty_one_to_sixty': - $_thirty_one_to_sixty_debt_plans += isset($debt_plan_record[$title]) ? (int)$debt_plan_record[$title] : 0; - break; - case 'thirty_one_to_sixty_debt_plans': - $category_debt_plans = array_merge($category_debt_plans, $debt_plan_record[$title]); - break; - case 'sixty_one_to_ninety': - $_sixty_one_to_ninety_debt_plans += isset($debt_plan_record[$title]) ? (int)$debt_plan_record[$title] : 0; - break; - case 'sixty_one_to_ninety_debt_plans': - $category_debt_plans = array_merge($category_debt_plans, $debt_plan_record[$title]); - break; - case 'ninety_one_and_over': - $_ninety_one_and_over_debt_plans += isset($debt_plan_record[$title]) ? (int)$debt_plan_record[$title] : 0; - break; - case 'ninety_one_and_over_debt_plans': - $category_debt_plans = array_merge($category_debt_plans, $debt_plan_record[$title]); - break; - } - } - $_total_debt_plans = $_current_debt_plans + $_one_to_thirty_debt_plans + $_thirty_one_to_sixty_debt_plans + $_sixty_one_to_ninety_debt_plans + $_ninety_one_and_over_debt_plans; - $current_debt_plans += $_current_debt_plans; - $one_to_thirty_debt_plans += $_one_to_thirty_debt_plans; - $thirty_one_to_sixty_debt_plans += $_thirty_one_to_sixty_debt_plans; - $sixty_one_to_ninety_debt_plans += $_sixty_one_to_ninety_debt_plans; - $ninety_one_and_over_debt_plans += $_ninety_one_and_over_debt_plans; - $count_debt_plans += count($category_debt_plans); - @endphp - @endforeach - @endif - - @php - $total_debt_plans = $current_debt_plans + $one_to_thirty_debt_plans + $thirty_one_to_sixty_debt_plans + $sixty_one_to_ninety_debt_plans + $ninety_one_and_over_debt_plans; - @endphp - - - - - - - - - - - - @endif - - - - - - - - - - - - - -
    #Debt Plan PatientsCurrent1 - 3031 - 6061 - 90>90Total
    {{ $count_debt_plans }}{{ ugandan_shillings($current_debt_plans) }}{{ ugandan_shillings($one_to_thirty_debt_plans) }}{{ ugandan_shillings($thirty_one_to_sixty_debt_plans) }}{{ ugandan_shillings($sixty_one_to_ninety_debt_plans) }}{{ ugandan_shillings($ninety_one_and_over_debt_plans) }}{{ ugandan_shillings($total_debt_plans) }}
    Total{{ ugandan_shillings($current_debt_plans) }}{{ ugandan_shillings($one_to_thirty_debt_plans) }}{{ ugandan_shillings($thirty_one_to_sixty_debt_plans) }}{{ ugandan_shillings($sixty_one_to_ninety_debt_plans) }}{{ ugandan_shillings($ninety_one_and_over_debt_plans) }}{{ ugandan_shillings($total_debt_plans) }}
    - - -
    -
    Family Accounts
    - - - - - - - - - - - - - - - @php - $count_family_accounts = 0; - $total_family_accounts = 0; - $current_family_accounts = 0; - $one_to_thirty_family_accounts = 0; - $thirty_one_to_sixty_family_accounts = 0; - $sixty_one_to_ninety_family_accounts = 0; - $ninety_one_and_over_family_accounts = 0; - @endphp - @if($data['family_accounts']) - @if(count($data['family_accounts']) > 0) - @foreach($data['family_accounts'] as $patient_id => $family_account_record) - @php - ++$count_family_accounts; - $patient_name = get_full_name($patient_id, 'id', 'first_name', 'last_name', 'patients'); - $patient_number = get_name($patient_id, 'id', 'number', 'patients'); - if ($patient_id == null) { - $patient_id = 0; - $patient_name = "No Patient"; - $patient_number = "#"; - } - - $titles_family_accounts = array_keys($family_account_record); - $category_family_accounts = []; - $_current_family_accounts = $_one_to_thirty_family_accounts = $_thirty_one_to_sixty_family_accounts = $_sixty_one_to_ninety_family_accounts = $_ninety_one_and_over_family_accounts = 0; - foreach ($titles_family_accounts as $title) { - switch ($title) { - case 'current': - $_current_family_accounts += isset($family_account_record[$title]) ? (int)$family_account_record[$title] : 0; - break; - case 'current_family_accounts': - $category_family_accounts = array_merge($category_family_accounts, $family_account_record[$title]); - break; - case 'one_to_thirty': - $_one_to_thirty_family_accounts += isset($family_account_record[$title]) ? (int)$family_account_record[$title] : 0; - break; - case 'one_to_thirty_family_accounts': - $category_family_accounts = array_merge($category_family_accounts, $family_account_record[$title]); - break; - case 'thirty_one_to_sixty': - $_thirty_one_to_sixty_family_accounts += isset($family_account_record[$title]) ? (int)$family_account_record[$title] : 0; - break; - case 'thirty_one_to_sixty_family_accounts': - $category_family_accounts = array_merge($category_family_accounts, $family_account_record[$title]); - break; - case 'sixty_one_to_ninety': - $_sixty_one_to_ninety_family_accounts += isset($family_account_record[$title]) ? (int)$family_account_record[$title] : 0; - break; - case 'sixty_one_to_ninety_family_accounts': - $category_family_accounts = array_merge($category_family_accounts, $family_account_record[$title]); - break; - case 'ninety_one_and_over': - $_ninety_one_and_over_family_accounts += isset($family_account_record[$title]) ? (int)$family_account_record[$title] : 0; - break; - case 'ninety_one_and_over_family_accounts': - $category_family_accounts = array_merge($category_family_accounts, $family_account_record[$title]); - break; - } - } - $_total_family_accounts = $_current_family_accounts + $_one_to_thirty_family_accounts + $_thirty_one_to_sixty_family_accounts + $_sixty_one_to_ninety_family_accounts + $_ninety_one_and_over_family_accounts; - $current_family_accounts += $_current_family_accounts; - $one_to_thirty_family_accounts += $_one_to_thirty_family_accounts; - $thirty_one_to_sixty_family_accounts += $_thirty_one_to_sixty_family_accounts; - $sixty_one_to_ninety_family_accounts += $_sixty_one_to_ninety_family_accounts; - $ninety_one_and_over_family_accounts += $_ninety_one_and_over_family_accounts; - @endphp - @endforeach - @endif - - @php - $total_family_accounts = $current_family_accounts + $one_to_thirty_family_accounts + $thirty_one_to_sixty_family_accounts + $sixty_one_to_ninety_family_accounts + $ninety_one_and_over_family_accounts; - @endphp - - - - - - - - - - - - @endif - - - - - - - - - - - - - -
    #Family HeadsCurrent1 - 3031 - 6061 - 90>90Total
    {{ $count_family_accounts }}{{ ugandan_shillings($current_family_accounts) }}{{ ugandan_shillings($one_to_thirty_family_accounts) }}{{ ugandan_shillings($thirty_one_to_sixty_family_accounts) }}{{ ugandan_shillings($sixty_one_to_ninety_family_accounts) }}{{ ugandan_shillings($ninety_one_and_over_family_accounts) }}{{ ugandan_shillings($total_family_accounts) }}
    Total{{ ugandan_shillings($current_family_accounts) }}{{ ugandan_shillings($one_to_thirty_family_accounts) }}{{ ugandan_shillings($thirty_one_to_sixty_family_accounts) }}{{ ugandan_shillings($sixty_one_to_ninety_family_accounts) }}{{ ugandan_shillings($ninety_one_and_over_family_accounts) }}{{ ugandan_shillings($total_family_accounts) }}
    - -
    -
    - -
    -
    -
    -
    -
    - - - diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/print_balance_sheet.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/print_balance_sheet.blade.php deleted file mode 100755 index 079f87ed..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/print_balance_sheet.blade.php +++ /dev/null @@ -1,297 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Customer Statement - Stre@mline') }} - - - - - - - - - -
    - @include('layouts.header_pdf_print') - -
    -

    {{ __('finance_reports.balance_sheet') }}

    -

    {{ $display }}

    -
    - -

    - -
    - - -
    -
    -

    ASSETS

    -
    -
    - - - - - - - @php $non_current_assets_sum = 0; @endphp - - @if(count($non_current_assets) > 0) - @foreach($non_current_assets as $data) - @php $non_current_assets_sum += ((int)$data['amount'] > 0 ) ? (int)$data['amount'] : 0 ; @endphp - - - - - @endforeach - @else - - @endif - - - - - -
    Non-Current Assets
    {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }}{{ ugandan_shillings((int)$data['amount']) }}
    {{ __('finance_reports.no_available_records') }}
    Total Non-Current Assets :{{ ugandan_shillings((int)$non_current_assets_sum) }}
    - -

    - - - - - - - @php $current_assets_sum = 0; @endphp - - @if(count($current_assets) > 0) - @foreach($current_assets as $data) - @php $current_assets_sum += (int)$data['amount']; @endphp - - - - - @endforeach - @else - - @endif - - - - - -
    Current Assets
    {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }}{{ ugandan_shillings((int)$data['amount']) }}
    {{ __('finance_reports.no_available_records') }}
    Total Current Assets{{ ugandan_shillings($current_assets_sum) }}
    - -

    - - - - - - - @php $other_current_assets_sum = 0; @endphp - - @if(count($other_current_assets) > 0) - @foreach($other_current_assets as $data) - @php $other_current_assets_sum += (int)$data['amount']; @endphp - - - - - @endforeach - @else - - @endif - - - - - -
    Other Current Assets
    {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }}{{ ugandan_shillings((int)$data['amount']) }}
    {{ __('finance_reports.no_available_records') }}
    Total Other Current Assets :{{ ugandan_shillings($other_current_assets_sum) }}
    - -

    - - -
    - @php $total_assets_sum = $non_current_assets_sum + $current_assets_sum + $other_current_assets_sum; @endphp -

    TOTAL ASSETS :

    -

    {{ ugandan_shillings($total_assets_sum) }}

    -
    - -

    - -
    -
    -

    LIABILITIES & EQUITY

    -
    -
    - - - - - - - @php $non_current_liabilities_sum = 0; @endphp - - @if(count($non_current_liabilities) > 0) - @foreach($non_current_liabilities as $data) - @php $non_current_liabilities_sum += (int)$data['amount']; @endphp - - - - - @endforeach - @else - - @endif - - - - - -
    Non-Current Liabilities
    {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }}{{ ugandan_shillings((int)$data['amount']) }}
    {{ __('finance_reports.no_available_records') }}
    Total Non-Current Liabilities:{{ ugandan_shillings($non_current_liabilities_sum) }}
    - -

    - - - - - - - @php $current_liabilities_sum = 0; @endphp - - @if(count($current_liabilities) > 0) - @foreach($current_liabilities as $data) - @php $current_liabilities_sum += (int)$data['amount']; @endphp - - - - - @endforeach - @else - - @endif - - - - - -
    Current Liabilities
    {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }}{{ ugandan_shillings((int)$data['amount']) }}
    {{ __('finance_reports.no_available_records') }}
    Total Current Liabilities:{{ ugandan_shillings($current_liabilities_sum) }}
    - -

    - - - - - - - @php $other_current_liabilities_sum = 0; @endphp - - @if(count($other_current_liabilities) > 0) - @foreach($other_current_liabilities as $data) - @php $other_current_liabilities_sum += (int)$data['amount']; @endphp - - - - - @endforeach - @else - - @endif - - - - - -
    Other Current Liabilities
    {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }}{{ ugandan_shillings((int)$data['amount']) }}
    {{ __('finance_reports.no_available_records') }}
    Total Other Current Liabilities:{{ ugandan_shillings($other_current_liabilities_sum) }}
    - -

    - - -
    - @php $total_liabilities_sum = $non_current_liabilities_sum + $current_liabilities_sum + $other_current_liabilities_sum; @endphp -

    Total Liabilities :

    -

    {{ ugandan_shillings($total_liabilities_sum) }}

    -
    - - - - - - - - @php $a_revenue_sum = $c_revenue_sum = $equities_sum = 0; @endphp - - @if(count($equities) > 0) - @foreach($equities as $data) - @php - $equities_sum += (int)$data['amount']; - $a_revenue_sum += (int)$data['amount']; - @endphp - - - - - @endforeach - @else - - @endif - - - - - -
    Equity
    {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }}{{ ugandan_shillings((int)$data['amount']) }}
    {{ __('finance_reports.no_available_records') }}
    Total Equity :{{ ugandan_shillings($a_revenue_sum) }}
    - - -
    -

    TOTAL LIABILITIES & EQUITY :

    -

    {{ ugandan_shillings($total_liabilities_sum + $a_revenue_sum) }}

    -
    - - -

    - - - - - - - - - - - - - - - - -
    ASSETSLIABILITIESEQUITY
    {{ ugandan_shillings($total_assets_sum) }}{{ ugandan_shillings($total_liabilities_sum) }}{{ ugandan_shillings($equities_sum) }}
    -
    -
    - - - diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/print_cash_flow_statement.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/print_cash_flow_statement.blade.php deleted file mode 100755 index 6ec8aa79..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/print_cash_flow_statement.blade.php +++ /dev/null @@ -1,308 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Customer Statement - Stre@mline') }} - - - - - - - - - -
    - @php - $hospital_information = \Streamline\Models\HospitalInformation::first(); - @endphp -
    -
    -

    {{ $hospital_information->name }}

    -

    {{ __('finance_reports.cash_flow_statement') }}

    -

    {{ $operating_activities['display'] }}

    - - - - - - - - - - - - - @php - $depreciation_data = $operating_activities['depreciation_data']; - $depreciation_data_sum = 0; - foreach ($depreciation_data as $key => $value) { - $cost_price = $value['cost_price']; - $display_cost_price = ""; - if ($cost_price == 0) { - $display_cost_price = ugandan_shillings($cost_price); - } else if ($cost_price < 0) { - $display_cost_price = ugandan_shillings(-$cost_price); - $depreciation_data_sum += -$cost_price; - } else { - $display_cost_price = "(" . ugandan_shillings($cost_price) . ")"; - $depreciation_data_sum -= $cost_price; - } - @endphp - - - - - @php - } - $display_depreciation_data_sum = ($depreciation_data_sum >= 0) ? ugandan_shillings($depreciation_data_sum) : "(" . ugandan_shillings(-$depreciation_data_sum) . ")"; - @endphp - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @php - $asset_transactions = $investing_activities; - $net_investing_activities = 0; - foreach ($asset_transactions as $key => $value) { - $cost_price = $value['cost_price']; - $display_cost_price = ""; - if ($cost_price == 0) { - $display_cost_price = ugandan_shillings($cost_price); - } else if ($cost_price < 0) { - $display_cost_price = ugandan_shillings(-$cost_price); - $net_investing_activities += -$cost_price; - } else { - $display_cost_price = "(" . ugandan_shillings($cost_price) . ")"; - $net_investing_activities -= $cost_price; - } - @endphp - - - - - @php - } - $display_net_investing_activities = ($net_investing_activities >= 0) ? ugandan_shillings($net_investing_activities) : "(" . ugandan_shillings(-$net_investing_activities) . ")"; - @endphp - - - - - - - - - - - - - - @php - $non_current_liabilities_data_sum = 0; - $non_current_liabilities = $financing_activities['non_current_liabilities']; - $equities_data_sum = 0; - $equities = $financing_activities['equities']; - - if(count($non_current_liabilities) > 0) { - foreach($non_current_liabilities as $data) { - $amount = (int)$data['amount']; - $bill_paid_amount = (int)$data['bill_paid_amount']; - $amount_to_use = ($bill_paid_amount > 0) ? $bill_paid_amount : $amount; - - $non_current_liabilities_data_sum += $amount_to_use; - $display_non_current_liability = ($amount_to_use >= 0) ? ugandan_shillings($amount_to_use) : "(" . ugandan_shillings(-$amount_to_use) . ")"; - @endphp - - - - - @php - } - } - $display_non_current_liabilities_data_sum = ($non_current_liabilities_data_sum >= 0) ? ugandan_shillings($non_current_liabilities_data_sum) : "(" . ugandan_shillings(-$non_current_liabilities_data_sum) . ")"; - @endphp - - - - - - - - - - @php - $equities_sum = 0; - - if(count($equities) > 0) { - foreach($equities as $data) { - $amount_to_use = (int)$data['amount']; - $equities_sum += $amount_to_use; - $display_equity = ($amount_to_use >= 0) ? ugandan_shillings($amount_to_use) : "(" . ugandan_shillings(-$amount_to_use) . ")"; - @endphp - - - - @php - } - } - $display_equities_data_sum = ($equities_sum >= 0) ? ugandan_shillings($equities_sum) : "(" . ugandan_shillings(-$equities_sum) . ")"; - $net_financing_activities = $non_current_liabilities_data_sum + $equities_sum; - $display_financing_activities = ($net_financing_activities >= 0) ? ugandan_shillings($net_financing_activities) : "(" . ugandan_shillings(-$net_financing_activities) . ")"; - @endphp - - - - - - - - - - - - - - - - - - - - - - - - -
    Operating activities
    Net income - @php - $net_income = intval($operating_activities['c_net_profit']); - $display_net_income = ($net_income >= 0) ? ugandan_shillings($net_income) : "(" . ugandan_shillings(-$net_income) . ")"; - echo $display_net_income; - @endphp -
    Depreciation:
    {{ get_name($key, 'id', 'name', 'chart_of_accounts') }}{{ $display_cost_price }}
    Total transactions:{{ $display_depreciation_data_sum }}
    Sum - @php - $inc_n_dep = $net_income + $depreciation_data_sum; - $display_inc_n_dep = ($inc_n_dep >= 0) ? ugandan_shillings($inc_n_dep) : "(" . ugandan_shillings(-$inc_n_dep) . ")"; - @endphp - {{ $display_inc_n_dep }} -
    Changes in Working Capital
    Accounts receivable - @php - $accounts_receivable_closing = intval($working_capital['accounts_receivable_closing']); - $accounts_receivable_opening = intval($working_capital['accounts_receivable_opening']); - $accounts_receivable = $accounts_receivable_opening - $accounts_receivable_closing; - $display_accounts_receivable = ($accounts_receivable >= 0) ? ugandan_shillings($accounts_receivable) : "(" . ugandan_shillings(-$accounts_receivable) . ")"; - @endphpecho $display_accounts_receivable; - @endphp -
    Inventory - @php - $inventory_closing = intval($working_capital['inventory_closing']); - $inventory_opening = intval($working_capital['inventory_opening']); - $inventory = $inventory_opening - $inventory_closing; - $display_inventory = ($inventory >= 0) ? ugandan_shillings($inventory) : "(" . ugandan_shillings(-$inventory) . ")"; - echo $display_inventory; - @endphp -
    Accounts payable - @php - $accounts_payable_closing = intval($working_capital['accounts_payable_closing']); - $accounts_payable_opening = intval($working_capital['accounts_payable_opening']); - $accounts_payable = $accounts_payable_closing - $accounts_payable_opening; - $display_accounts_payable = ($accounts_payable >= 0) ? ugandan_shillings($accounts_payable) : "(" . ugandan_shillings(-$accounts_payable) . ")"; - echo $display_accounts_payable; - @endphp -
    Net changes from Working Capital - @php - // for assets, when the closing balance is bigger, it's a cash outflow hence a negative. The reverse is true. - $inventory_computed = ($inventory > 0) ? -$inventory : -$inventory; - $net_working_capital = $accounts_receivable + $inventory_computed + $accounts_payable; - $display_working_capital = ($net_working_capital >= 0) ? ugandan_shillings($net_working_capital) : "(" . ugandan_shillings(-$net_working_capital) . ")"; - @endphp - {{ $display_working_capital }} -
    Net cash from Operating Activities - @php - $net_operating_activities = $inc_n_dep + $net_working_capital; - $display_operating_activities = ($net_operating_activities >= 0) ? ugandan_shillings($net_operating_activities) : "(" . ugandan_shillings(-$net_operating_activities) . ")"; - @endphp - {{ $display_operating_activities }} -
    Investing Activities
    {{ get_name($key, 'id', 'name', 'chart_of_accounts') }}{{ $display_cost_price }}
    Net cash from Investing Activities{{ $display_investing_activities }}
    Financing Activities
    Non-current liabilities:
    {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }}{{ $display_non_current_liability }}
    Total transactions (Non-current liabilities):{{ $display_non_current_liabilities_data_sum }}
    Equities:
    {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }}{{ $display_equity }} -
    Total transactions (Equities):{{ $display_equities_data_sum }}
    Net cash from Financing Activities{{ $display_financing_activities }}
    Net cash increase - @php - $net_cash_increase = $net_operating_activities + $net_investing_activities + $net_financing_activities; - $display_net_cash_increase = ($net_cash_increase >= 0) ? ugandan_shillings($net_cash_increase) : "(" . ugandan_shillings(-$net_cash_increase) . ")"; - @endphp - {{ $display_net_cash_increase }} -
    Cash at the beginning of the period - @php - $cash_beginning = intval($peroid_start_cash); - $display_cash_beginning = ($cash_beginning >= 0) ? ugandan_shillings($cash_beginning) : "(" . ugandan_shillings(-$cash_beginning) . ")"; - @endphp - {{ $display_cash_beginning }} -
    Cash at the end of the period - @php - $cash_end = $net_cash_increase + $cash_beginning; - $display_cash_end = ($cash_end >= 0) ? ugandan_shillings($cash_end) : "(" . ugandan_shillings(-$cash_end) . ")"; - @endphp - {{ $display_cash_end }} -
    -
    -
    -
    - - - diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/print_profit_or_loss_statement.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/print_profit_or_loss_statement.blade.php deleted file mode 100755 index 0006a008..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/print_profit_or_loss_statement.blade.php +++ /dev/null @@ -1,235 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Customer Statement - Stre@mline') }} - - - - - - - - - -
    - @include('layouts.header_pdf_print') - -
    -

    Profit Or Loss Statement

    -

    {{ $display }}

    -
    - -

    - -
    -
    -

    INCOME / REVENUES

    -
    -
    -

    All Revenues

    -
    - - - - - - - - - - @php $a_revenue_sum = $c_revenue_sum = 0; @endphp - - - - @foreach($income_accounts as $data) - @php - $a_revenue_sum += $data['accrual']; - $c_revenue_sum += $data['cash']; - @endphp - - - - - @endforeach - - - - - - - - -
    {{ __('finance_reports.account_name') }}{{ __('finance_reports.amount') }}
    {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }} -
    - {{ ugandan_shillings_with_decimals($data['accrual']) }} -
    -
    - {{ ugandan_shillings_with_decimals($data['cash']) }} -
    -
    Total Income : -
    {{ ugandan_shillings_with_decimals($a_revenue_sum) }}
    -
    {{ ugandan_shillings_with_decimals($c_revenue_sum) }}
    -
    - -
    -
    - -
    -
    -

    COST OF GOODS

    -
    -
    -

    All Cost Of Goods

    -
    - - - - - - - - - - @php $cog_cash_sum = $cog_accrual_sum = 0; @endphp - @foreach($cost_of_sales_accounts as $account) - - - - - @php $cog_cash_sum += intval($account['cash']); $cog_accrual_sum += intval($account['accrual']);@endphp - @endforeach - - - - - - - - -
    {{ __('finance_reports.account_name') }}{{ __('finance_reports.amount') }}
    {{ get_name($account['id'], 'id', 'name', 'chart_of_accounts') }} -
    {{ ugandan_shillings_with_decimals(intval($account['cash'])) }}
    -
    {{ ugandan_shillings_with_decimals(intval($account['accrual'])) }}
    -
    Total Cost Of Goods : - -
    {{ ugandan_shillings_with_decimals($cog_cash_sum) }}
    -
    {{ ugandan_shillings_with_decimals($cog_accrual_sum) }}
    -
    -
    - -
    -
    -
    -

    {{ __('finance_reports.gross_profit') }}

    -
    -
    -

    {{ ugandan_shillings_with_decimals($a_revenue_sum - $cog_accrual_sum) }}

    -

    {{ ugandan_shillings_with_decimals($c_revenue_sum - $cog_cash_sum) }}

    -
    -
    -
    - -
    -
    -

    EXPENSES

    -
    -
    -

    All Expenses

    -
    - - @php - $total = 0; - @endphp - - - - - - - - - @php $expense_cash_sum = $expense_accrual_sum = 0; @endphp - @foreach($expense_accounts as $account) - - @php - $e_accrual_sum = $account['accrual']; - $e_cash_sum = $account['cash']; - @endphp - - - - - @php - $expense_cash_sum += $e_cash_sum; - $expense_accrual_sum += $e_accrual_sum; - @endphp - @endforeach - - - - - - - -
    {{ __('finance_reports.account_name') }}{{ __('finance_reports.amount') }}
    {{ get_name($account['id'], 'id', 'name', 'chart_of_accounts') }} -
    {{ ugandan_shillings_with_decimals($e_cash_sum) }}
    -
    {{ ugandan_shillings_with_decimals($e_accrual_sum) }}
    -
    Total Expenses : -
    {{ ugandan_shillings_with_decimals($expense_cash_sum) }}
    -
    {{ ugandan_shillings_with_decimals($expense_accrual_sum) }}
    -
    -
    - -

    Summary

    - -
    - -
    - @php - $a_profit = $a_revenue_sum - ($expense_accrual_sum + $cog_accrual_sum); - $c_profit = $c_revenue_sum - ($expense_cash_sum + $cog_cash_sum); - @endphp - @if($a_profit > 0 || $c_profit > 0) -
    -

    Net Profit

    -
    -
    -

    {{ ugandan_shillings_with_decimals($a_profit) }}

    -

    {{ ugandan_shillings_with_decimals($c_profit) }}

    -
    - @else -
    -

    Net Loss

    -
    -
    -

    {{ ugandan_shillings_with_decimals($a_profit) }}

    -

    {{ ugandan_shillings_with_decimals($c_profit) }}

    -
    - @endif - -
    -
    - - - diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/procedureReport.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/procedureReport.blade.php deleted file mode 100755 index a0173025..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/procedureReport.blade.php +++ /dev/null @@ -1,142 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -
    -

    Procedure Payments

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    -
    -

    Select the Date Range

    -
    -
    - {{ Form::open(['method'=>'post','route' => 'finance_reports.procedure']) }} - -
    - {{ Form::label('start_date', 'Start Date') }} -
    - {{ Form::text('start_date', '', ['class'=>'form-control', 'readonly', 'id'=>'start_date']) }} - -
    -
    - -
    - {{ Form::label('end_date', 'End Date') }} -
    - {{ Form::text('end_date', '', ['class'=>'form-control', 'readonly', 'id'=>'end_date']) }} - -
    -
    - -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    - - - - -
    -
    - -
    -

    Procedures Report

    -
    - @if(isset($display)) -

    {!! isset($display) ? $display : '' !!}

    - @endif -
    -
    -
    - - - - - - - - - - - - - @if(count($procedures) > 0) - @foreach($procedures as $procedure) - - - - - - - - - @endforeach - @elseif(count($procedures) == 0) - @endif - -
    #Procedure NameUnit CostAmount ReceivedPayment DateReceived By
    -
    -
    -
    - -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/profit_or_loss_statement.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/profit_or_loss_statement.blade.php deleted file mode 100644 index d2f914bf..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/profit_or_loss_statement.blade.php +++ /dev/null @@ -1,593 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@push('scripts') - - -@endpush - -@section('content') - -
    -
    -

    Profit or Loss Statement

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    - - {{ Form::open(['method'=>'post','route' => 'finance_reports.profit_or_loss_statement']) }} - -
    - -
    -
    - - -
    -
    -
    - -
    -
    - -
    -
    -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success btn-rounded btn-block pull-right']) }} -
    -
    -
    -
    - {{ Form::close() }} - -
    - - - @if($request->all() != []) -
    -
    -
    - - -
    -
    -
    -
    - - -
    -
    -
    -
    - {{ Form::open(['method'=>'post','route' => 'finance_reports.print_profit_or_loss_statement', 'target' => "_blank"]) }} - - {{ Form::hidden('income_accounts', serialize($income_accounts)) }} - {{ Form::hidden('expense_accounts', serialize($expense_accounts)) }} - {{ Form::hidden('cost_of_sales_accounts', serialize($cost_of_sales_accounts)) }} - {{ Form::hidden('switch_to_cash_print', 0, ['id' => 'switch_to_cash_print']) }} - {{ Form::hidden('display', $display) }} - - - - {{ Form::close() }} -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    - @php - $hospital_information = \Streamline\Models\HospitalInformation::first(); - @endphp -
    -
    -

    {{ $hospital_information->name }}

    -

    {{ $hospital_information->email }}

    -

    Profit Or Loss Statement

    -

    {{ $display }}

    -
    - -
    -
    -
    - - - - - - - - - - - - - - - - - - @php $a_revenue_sum = $c_revenue_sum = 0; @endphp - - @foreach($income_accounts as $data) - @php - $a_revenue_sum += $data['accrual']; - $c_revenue_sum += $data['cash']; - @endphp - - - - - - - @endforeach - - - - - - - - - - - - - - - - - - - - @php $cog_cash_sum = $cog_accrual_sum = 0; @endphp - @foreach($cost_of_sales_accounts as $account) - - - - - - - @php $cog_cash_sum += intval($account['cash']); $cog_accrual_sum += intval($account['accrual']);@endphp - @endforeach - - - - - - - - - - - - - - - - - - - - - @php - $total = 0; - @endphp - - - - - - - @php $expense_cash_sum = $expense_accrual_sum = 0; @endphp - @foreach($expense_accounts as $account) - - @php - $e_accrual_sum = $account['accrual']; - $e_cash_sum = $account['cash']; - @endphp - - - - - - - @php - $expense_cash_sum += $e_cash_sum; - $expense_accrual_sum += $e_accrual_sum; - @endphp - @endforeach - - - - - - - - - - - - - - - @php - $a_profit = $a_revenue_sum - ($expense_accrual_sum + $cog_accrual_sum); - $c_profit = $c_revenue_sum - ($expense_cash_sum + $cog_cash_sum); - @endphp - @if($a_profit > 0 || $c_profit > 0) - - - - - @else - - - - - @endif - - -

    INCOME / REVENUES

    All Revenues

    {{ __('finance_reports.account_name') }}{{ __('finance_reports.amount') }}{{ __('finance_reports.amount') }}{{ __('finance_reports.action') }}
    {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }} - {{ ugandan_shillings_with_decimals($data['accrual']) }} - - {{ ugandan_shillings_with_decimals($data['cash']) }} - - - -
    Total Income : - {{ ugandan_shillings_with_decimals($a_revenue_sum) }} - - {{ ugandan_shillings_with_decimals($c_revenue_sum) }} -

    COST OF GOODS

    All Cost Of Goods

    {{ __('finance_reports.account_name') }}{{ __('finance_reports.amount') }}{{ __('finance_reports.amount') }}{{ __('finance_reports.action') }}
    {{ get_name($account['id'], 'id', 'name', 'chart_of_accounts') }} - {{ ugandan_shillings_with_decimals(intval($account['accrual'])) }} - - {{ ugandan_shillings_with_decimals(intval($account['cash'])) }} - - - -
    Total Cost Of Goods : - {{ ugandan_shillings_with_decimals($cog_accrual_sum) }} - - {{ ugandan_shillings_with_decimals($cog_cash_sum) }} -
    {{ __('finance_reports.gross_profit') }} -

    {{ ugandan_shillings_with_decimals($a_revenue_sum - $cog_accrual_sum) }}

    -
    -

    {{ ugandan_shillings_with_decimals($c_revenue_sum - $cog_cash_sum) }}

    -

    EXPENSES

    All Expenses

    {{ __('finance_reports.account_name') }}{{ __('finance_reports.amount') }}{{ __('finance_reports.amount') }}{{ __('finance_reports.action') }}
    {{ get_name($account['id'], 'id', 'name', 'chart_of_accounts') }}{{ ugandan_shillings_with_decimals($e_accrual_sum) }}{{ ugandan_shillings_with_decimals($e_cash_sum) }} - - -
    Total Expenses : - {{ ugandan_shillings_with_decimals($expense_accrual_sum) }} - - {{ ugandan_shillings_with_decimals($expense_cash_sum) }} -

    Summary

    -

    Net Profit

    -
    -

    {{ ugandan_shillings_with_decimals($a_profit) }}

    -
    -

    {{ ugandan_shillings_with_decimals($c_profit) }}

    -
    -

    Net Loss

    -
    -

    {{ ugandan_shillings_with_decimals($a_profit) }}

    -
    -

    {{ ugandan_shillings_with_decimals($c_profit) }}

    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - {!! $income_accrual_chart->render() !!} -
    -
    - {!! $income_cash_chart->render() !!} -
    -
    - {!! $cog_chart->render() !!} -
    -
    - {!! $expense_accrual_chart->render() !!} -
    -
    - {!! $expense_cash_chart->render() !!} -
    -
    -
    -
    -
    -
    -

    Gross Profit Vs Total Expenses

    -
    -
    - {!! $a_gross_profit_chart->render() !!} -
    -
    - {!! $c_gross_profit_chart->render() !!} -
    -
    -
    -
    -
    -
    - @else -
    -
    -
    -

    Select a Valid date or date range

    -
    -
    - @endif - -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/bank_slip.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/bank_slip.blade.php deleted file mode 100755 index 446b56be..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/bank_slip.blade.php +++ /dev/null @@ -1,137 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush -@section('content') -
    -
    -

    Bank Slip

    -
    -
    - -
    -
    - @include('flash::message') -
    -
    -
    -
    -
    -
    -
    - Responsive image -

    - name . ' | ' . $hospital_information->phone_number . ' | ' . $hospital_information->email . ' | ' . $hospital_information->address . ' ' . $hospital_information->country ?> -


    -

    Bank Slip

    -
    - - - - - - - - - - @php $total_banked = 0; @endphp - @for ($x = 0; $x < count($banks_array); $x++) - - - - - @php $total_banked += is_numeric($amounts_array[$x]) ? $amounts_array[$x] : 0; @endphp - @endfor - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    #Amount
    {{ get_name($banks_array[$x], "id", "name", "chart_of_accounts") }}{{ ugandan_shillings($amounts_array[$x]) }}
    Memo{{ $deposit_memo }}
     Total Banked {{ ugandan_shillings($total_banked) }}
     Balance Pending {{ ugandan_shillings($deposit_amount) }}
     Deposite Date {{ streamline_date($deposit_date) }}
     Banked By {{ get_full_name($banked_by, 'id', 'first_name', 'last_name', 'users') }}
    -
    -
    -
    - {{ __('family_accounts.streamline') }} -
    -
    -
    -
    - -@endsection - -@push('styles') - -@endpush diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/cashierReceipt.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/cashierReceipt.blade.php deleted file mode 100755 index 109f67a5..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/cashierReceipt.blade.php +++ /dev/null @@ -1,141 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush -@section('content') -
    -
    -

    Cashier Receipt

    -
    -
    - -
    -
    - @include('flash::message') -
    -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - Email: {{ $hospital_information->email }}
    - Cashier: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - Receipt Number: {{ $cashier_income->receipt_number }}
    -

    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    DescriptionAmount
    Received From: - @if($cashier_income->cashier_id == 'ALL STAFF') - ALL STAFF - @else - {{ get_full_name($cashier_income->cashier_id, 'id', 'first_name', 'last_name', 'users') }} - @endif -
    Amount:{{ ugandan_shillings($cashier_income->amount) }}
    Expected Amount:{{ ugandan_shillings($cashier_income->expected_amount) }}
    Balance:{{ ugandan_shillings($cashier_income->balance) }}
    Reason:{{ $cashier_income->reason }}
    Received By - - @if($cashier_income->brought_by == 'ALL STAFF') - ALL STAFF - @else - {{ get_full_name($cashier_income->brought_by, 'id', 'first_name', 'last_name', 'users') }} - @endif - -
    -
    -
    - © Stre@mline -
    -
    -
    -
    - -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/donor_discounts.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/donor_discounts.blade.php deleted file mode 100755 index 1a03f422..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/donor_discounts.blade.php +++ /dev/null @@ -1,97 +0,0 @@ -@section('content') - -
    -
    -

    Services Receipt

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - Email: {{ $hospital_information->email }}
    - Cashier: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - Date: {{ streamline_date_time_short($receipt_date) }}
    - Receipt Number: {{ $receipt_number }}
    - REF : {{ $patient->first_name }} {{ $patient->last_name }}
    - Category : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - @for($i = 0; $i < count($service_ids_array); $i++) - - - - - @endfor - - - - - - - - - - - @if($discounts_applied > 0) - - - - - @endif - - - - - - -
    DescriptionPrice
    {{ get_name($service_ids_array[$i], "id", "name", "services") }}{{ ugandan_shillings($service_prices_array[$i]) }}
    Total to pay{{ ugandan_shillings($total_amount_pay) }}
    Discounts Applied{{ ugandan_shillings($discounts_applied) }}
    Patient to pay{{ ugandan_shillings($patient_to_pay) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/donor_invoice_reprint.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/donor_invoice_reprint.blade.php deleted file mode 100755 index 948b09a2..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/donor_invoice_reprint.blade.php +++ /dev/null @@ -1,141 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush -@section('content') -
    -
    -

    Cashier Receipt

    -
    -
    - -
    -
    - @include('flash::message') -
    -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - Email: {{ $hospital_information->email }}
    - Cashier: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - Receipt Number: - @php - $receipts = unserialize($payment->receipt_number); - @endphp - @foreach ($receipts as $item) - @if($loop->last) - {{ $receipt = $item }} - @endif - @endforeach -
    -

    - -
    - - - - - - - - - {{----}} - {{----}} - {{----}} - {{----}} - - - - - - - - - - - - - - - - - - {{----}} - {{----}} - {{----}} - {{----}} - - - - - -
    DescriptionAmount
    Received From:{{ $payment->received_from }}
    Total Amount:{{ ugandan_shillings($payment->total) }}
    Amount Paid:{{ ugandan_shillings($payment->amount_paid) }}
    Balance:{{ ugandan_shillings($payment->balance) }}
    Reason:Payment By {{ get_name($payment->donor_id, 'id', 'name', 'donors') }}
    Total Paid:{{ ugandan_shillings($payment->amount_received) }}
    Received By{{ get_full_name($payment->created_by, 'id', 'first_name', 'last_name', 'users') }}
    -
    -
    - © Stre@mline -
    -
    -
    -
    - -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/inpatient_bill_payments.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/inpatient_bill_payments.blade.php deleted file mode 100755 index d69d6b70..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/inpatient_bill_payments.blade.php +++ /dev/null @@ -1,144 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    Inpatient Payment

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - Email: {{ $hospital_information->email }}
    - Cashier: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - Date: {{ streamline_date_time_short($payment->created_at) }}
    - Receipt Number {{ $payment->receipt_id }}
    - REF : {{ get_full_name($payment->patient_id, 'id', 'first_name', 'last_name', 'patients') }}
    -

    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    DescriptionPrice
    Investigations{{ ugandan_shillings($payment->investigations) }}
    Treatment{{ ugandan_shillings($payment->treatment) }}
    Sundries{{ ugandan_shillings($payment->sundries) }}
    Procedures{{ ugandan_shillings($payment->procedures) }}
    Extras{{ ugandan_shillings($payment->extras) }}
    TTA{{ ugandan_shillings($payment->TTA) }}
    Total{{ ugandan_shillings($payment->amount_to_pay) }}
    Amount Paid{{ ugandan_shillings($payment->amount_paid) }}
    Balance{{ ugandan_shillings($payment->Balance) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/inpatient_deposits.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/inpatient_deposits.blade.php deleted file mode 100755 index 9039311a..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/inpatient_deposits.blade.php +++ /dev/null @@ -1,111 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    Inpatient Deposit

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - Email: {{ $hospital_information->email }}
    - Cashier: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - Date: {{ streamline_date_time_short($deposit->created_at) }}
    - Receipt Number {{ $deposit->receipt_id }}
    - REF : {{ get_full_name($deposit->patient_id, 'id', 'first_name', 'last_name', 'patients') }}
    -

    - -
    - - - - - - - - - - - -
    DescriptionPrice
    Inpatient Deposit{{ ugandan_shillings($deposit->patient_amount_paid) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/investigations_reprint.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/investigations_reprint.blade.php deleted file mode 100755 index b27e81e0..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/investigations_reprint.blade.php +++ /dev/null @@ -1,136 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    Services Receipt

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - Email: {{ $hospital_information->email }}
    - Cashier: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - Date: {{ streamline_date_time_short($receipt_date) }}
    - Receipt Number: {{ $receipt_number }}
    - REF : {{ $patient->first_name }} {{ $patient->last_name }}
    - Category : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - @for($i = 0; $i < count($service_ids_array); $i++) - - - - - @endfor - - - - - - - - - - - @if($discounts_applied > 0) - - - - - @endif - - - - - - -
    DescriptionPrice
    {{ get_name($service_ids_array[$i], "id", "name", "investigations") }}{{ ugandan_shillings($service_prices_array[$i]) }}
    Total to pay{{ ugandan_shillings($total_amount_pay) }}
    Discounts Applied{{ ugandan_shillings($discounts_applied) }}
    Patient to pay{{ ugandan_shillings($patient_to_pay) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/invoice_payments_reprint.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/invoice_payments_reprint.blade.php deleted file mode 100755 index e69de29b..00000000 diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/patient_discount.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/patient_discount.blade.php deleted file mode 100755 index 5fdf435d..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/patient_discount.blade.php +++ /dev/null @@ -1,361 +0,0 @@ -@extends('layouts.main') -@push('styles') - - - -@endpush - - -@section('content') - -
    -
    -

    Services Receipt

    -
    -
    - -
    -
    - - @if(!($reason == "Central Billing")) -
    -
    -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - Email: {{ $hospital_information->email }}
    - Cashier: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - Date: {{ streamline_date_time_short($receipt_date) }}
    - Receipt Number: {{ $receipt_number }}
    - REF : {{ $patient->first_name }} {{ $patient->last_name }}
    - Category : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - @for($i = 0; $i < count($service_ids_array); $i++) - @for($i = 0; $i < count($service_ids_array); $i++) - @if($service_payment->investigation_items) - - - - - @elseif($service_payment->procedure_items) - - - - - @elseif($service_payment->sundry_items) - - - - - @elseif($service_payment->treatment_items) - - - - - @else - - - - - @endif - @endfor - @endfor - - - - - - - - - - - @if($discounts_applied > 0) - - - - - @endif - - - - - - -
    DescriptionPrice
    {{ get_name($service_ids_array[$i], "id", "name", "investigations") }}{{ ugandan_shillings($service_prices_array[$i]) }}
    {{ get_name($service_ids_array[$i], "id", "name", "procedures") }}{{ ugandan_shillings($service_prices_array[$i]) }}
    {{ get_name($service_ids_array[$i], "id", "name", "sundries") }}{{ ugandan_shillings($service_prices_array[$i]) }}
    {{ get_name($service_ids_array[$i], "id", "name", "drugs") }}{{ ugandan_shillings($service_prices_array[$i]) }}
    {{ get_name($service_ids_array[$i], "id", "name", "services") }}{{ ugandan_shillings($service_prices_array[$i]) }}
    Total to pay{{ ugandan_shillings($total_amount_pay) }}
    Discounts Applied{{ ugandan_shillings($discounts_applied) }}
    Patient to pay{{ ugandan_shillings($patient_to_pay) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    - @else - - @php - $receipt_date = ''; - $patient = ''; - $receipt_number = ''; - $total_amount = 0; - - //-----------getting the first item of the Service payments array - - foreach($service_payment as $key => $element) { - reset($service_payment); - if ($key === key($service_payment)) - $receipt_date = $element['created_at']; - $receipt_number = $element['receipt_number']; - $patient = get_full_name($element['patient_id'], 'id', 'first_name', 'last_name', 'patients'); - $patient_amount_paid = $element['patient_amount_paid']; - end($service_payment); - // if ($key === key($service_payment)) - } - - @endphp -
    - -
    -
    -
    -
    -
    -
    -

    - - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - Email: {{ $hospital_information->email }}
    - Cashier: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - Date: {{ streamline_date_time_short($receipt_date) }}
    - Receipt Number: {{ $receipt_number }}
    - REF : {{ $patient }}
    -{{-- Category : {{ get_name($patient->category_id, "id", "name", "patient_categories") }}--}} -

    - -
    - - - - - - - @foreach($service_payment as $item) - - @php - $service_ids_array = explode(",", $item['items_ids']); - $service_prices_array = explode(",", $item['items_amounts']); - $total_amount_pay = 0; - foreach ($service_prices_array as $price){ - $total_amount += $price; - } - @endphp - - @switch($item['tag_id']) - @case('2') - - - - @break - @case('3') - - - - @break - @case('4') - - - - @break - @case('5') - - - - @break - @case('6') - - - - @break - @case('7') - - - - @break - @case('8') - - - - @break - @endswitch - - - @for($i = 0; $i < count($service_ids_array); $i++) - - @switch($item['tag_id']) - @case('2') - - - - - - @break - @case('3') - - - - - @break - @case('4') - - - - - @break - @case('5') - - - - - @break - @case('6') - - - - - @break - @case('7') - - - - - @break - @case('8') - - - - - @break -{{-- @case('9')--}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- @break--}} -{{-- @case('10')--}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- @break--}} -{{-- @case('11')--}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- --}} -{{-- @break--}} - @endswitch - @endfor - - - - - @endforeach - - - - - - - @if($discounts_applied > 0) - - - - - @endif - - - - - - -
    DescriptionPrice
    Investigations
    Drugs
    Procedures
    Sundries
    Consultations
    Co-Payments
    Other-Services
    {{ get_name($service_ids_array[$i], "id", "name", "investigations") }}{{ ugandan_shillings($service_prices_array[$i]) }}
    {{ get_name($service_ids_array[$i], "id", "name", "drugs") }}{{ ugandan_shillings($service_prices_array[$i]) }}
    {{ get_name($service_ids_array[$i], "id", "name", "procedures") }}{{ ugandan_shillings($service_prices_array[$i]) }}
    {{ get_name($service_ids_array[$i], "id", "name", "sundries") }}{{ ugandan_shillings($service_prices_array[$i]) }}
    {{ get_name($service_ids_array[$i], "id", "name", "services") }}{{ ugandan_shillings($service_prices_array[$i]) }}
    {{ get_name($service_ids_array[$i], "id", "name", "services") }}{{ ugandan_shillings($service_prices_array[$i]) }}
    {{ get_name($service_ids_array[$i], "id", "name", "services") }}{{ ugandan_shillings($service_prices_array[$i]) }}
    {{ get_name($service_ids_array[$i], "id", "name", "services") }}{{ ugandan_shillings($service_prices_array[$i]) }}
    {{ get_name($service_ids_array[$i], "id", "name", "services") }}{{ ugandan_shillings($service_prices_array[$i]) }}
    {{ get_name($service_ids_array[$i], "id", "name", "services") }}{{ ugandan_shillings($service_prices_array[$i]) }}
    Total to pay{{ ugandan_shillings($total_amount) }}
    Discounts Applied{{ ugandan_shillings($discounts_applied) }}
    Patient to pay{{ ugandan_shillings($patient_amount_paid) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    - @endif -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/patient_invoice_reprint.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/patient_invoice_reprint.blade.php deleted file mode 100755 index d00ab778..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/patient_invoice_reprint.blade.php +++ /dev/null @@ -1,126 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush -@section('content') -
    -
    -

    Cashier Receipt

    -
    -
    - -
    -
    - @include('flash::message') -
    -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - Email: {{ $hospital_information->email }}
    - Cashier: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - Receipt Number:{{ $payment->receipt_number }} -
    -

    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    DescriptionAmount
    Total Amount:{{ ugandan_shillings($payment->total) }}
    Amount Paid:{{ ugandan_shillings($payment->amount_paid) }}
    Balance:{{ ugandan_shillings($payment->balance) }}
    Reason:Payment for {{ get_name($payment->patient_category, 'id', 'name', 'patient_categories') }} Bills
    Received By{{ get_full_name($payment->created_by, 'id', 'first_name', 'last_name', 'users') }}
    -
    -
    - © Stre@mline -
    -
    -
    -
    - -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/premiums_reprint.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/premiums_reprint.blade.php deleted file mode 100755 index 4140554c..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/premiums_reprint.blade.php +++ /dev/null @@ -1,148 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    Services Receipt

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - Email: {{ $hospital_information->email }}
    - Cashier: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - Date: {{ streamline_date_time_short($receipt_date) }}
    - Receipt Number: {{ $receipt_number }}
    -{{-- REF : {{ $patient->first_name }} {{ $patient->last_name }}
    --}} -{{-- Category : {{ get_name($patient->category_id, "id", "name", "patient_categories") }}--}} - -

    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    DescriptionDate
    Payment Date{{ streamline_date($insurance_payment_date) }}
    Insurance Expiry Date{{ streamline_date($insurance_end_date) }}
    DescriptionPrice
    Insurance Amount{{ ugandan_shillings($insurance_amount) }}
    Insurance Family Amount{{ ugandan_shillings($insurance_family_amount) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/procedures_reprint.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/procedures_reprint.blade.php deleted file mode 100755 index b95bdf77..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/procedures_reprint.blade.php +++ /dev/null @@ -1,142 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    Procedures Receipt

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - Email: {{ $hospital_information->email }}
    - Cashier: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - Date: {{ streamline_date_time_short($receipt_date) }}
    - Receipt Number: {{ $receipt_number }}
    - REF : {{ $patient->first_name }} {{ $patient->last_name }}
    - Category : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - @for($i = 0; $i < count($service_ids_array); $i++) - @php - $total_amount = 0; - $x = $service_prices_array[$i]; - $total_amount += $x; - @endphp - - - - - @endfor - - - - - - - - - - - @if($discounts_applied > 0) - - - - - @endif - - - - - - - -
    DescriptionPrice
    {{ get_name($service_ids_array[$i], "id", "name", "procedures") }}{{ ugandan_shillings($service_prices_array[$i]) }}
    Patient to pay{{ ugandan_shillings($patient_to_pay) }}
    Discounts Applied{{ ugandan_shillings($discounts_applied) }}
    Total to pay{{ ugandan_shillings($total_amount) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/services_reprint.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/services_reprint.blade.php deleted file mode 100755 index 829780ac..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/services_reprint.blade.php +++ /dev/null @@ -1,136 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    Services Receipt

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - Email: {{ $hospital_information->email }}
    - Cashier: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - Date: {{ streamline_date_time_short($receipt_date) }}
    - Receipt Number: {{ $receipt_number }}
    - REF : {{ $patient->first_name }} {{ $patient->last_name }}
    - Category : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - @for($i = 0; $i < count($service_ids_array); $i++) - - - - - @endfor - - - - - - - - - - - @if($discounts_applied > 0) - - - - - @endif - - - - - - -
    DescriptionPrice
    {{ get_name($service_ids_array[$i], "id", "name", "services") }}{{ ugandan_shillings(get_name($service_ids_array[$i], "id", "non_insured_price", "services")) }}
    Total to pay{{ ugandan_shillings($total_amount_pay) }}
    Discounts Applied{{ ugandan_shillings($discounts_applied) }}
    Patient to pay{{ ugandan_shillings($patient_to_pay) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/sundries_reprint.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/sundries_reprint.blade.php deleted file mode 100755 index 3efa9d4f..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/sundries_reprint.blade.php +++ /dev/null @@ -1,151 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    Services Receipt

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - Email: {{ $hospital_information->email }}
    - Cashier: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - Date: {{ streamline_date_time_short($receipt_date) }}
    - Receipt Number: {{ $receipt_number }}
    - REF : {{ $patient->first_name }} {{ $patient->last_name }}
    - Category : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - @php - $x = $service_ids_array[0]; - if(is_serialized($x)){ - $data = unserialize($x); - } - @endphp - @if(is_serialized($x)) - @for($i = 0; $i < count($data); $i++) - - - - - @endfor - @else - @for($i = 0; $i < count($service_ids_array); $i++) - - - - - @endfor - @endif - - - - - - - - - - - @if($discounts_applied > 0) - - - - - @endif - - - - - - -
    DescriptionPrice
    {{ get_name($data[$i], "id", "name", "sundries") }}{{ ugandan_shillings(get_name($data[$i], "id", "non_insured_price", "sundries")) }}
    {{ get_name($service_ids_array[$i], "id", "name", "sundries") }}{{ ugandan_shillings(get_name($service_ids_array[$i], "id", "non_insured_price", "sundries")) }}
    Total to pay{{ ugandan_shillings($total_amount_pay) }}
    Discounts Applied{{ ugandan_shillings($discounts_applied) }}
    Patient to pay{{ ugandan_shillings($patient_to_pay) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/treatment_reprint.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/treatment_reprint.blade.php deleted file mode 100755 index 11402b7d..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receipts/treatment_reprint.blade.php +++ /dev/null @@ -1,136 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    Services Receipt

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - Email: {{ $hospital_information->email }}
    - Cashier: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - Date: {{ streamline_date_time_short($receipt_date) }}
    - Receipt Number: {{ $receipt_number }}
    - REF : {{ $patient->first_name }} {{ $patient->last_name }}
    - Category : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - @for($i = 0; $i < count($service_ids_array); $i++) - - - - - @endfor - - - - - - - - - - - @if($discounts_applied > 0) - - - - - @endif - - - - - - -
    DescriptionPrice
    {{ get_name($service_ids_array[$i], "id", "name", "drugs") }}{{ ugandan_shillings(get_name($service_ids_array[$i], "id", "non_insured_price", "drugs")) }}
    Total to pay{{ ugandan_shillings($total_amount_pay) }}
    Discounts Applied{{ ugandan_shillings($discounts_applied) }}
    Patient to pay{{ ugandan_shillings($patient_to_pay) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receiveCashierPayments.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receiveCashierPayments.blade.php deleted file mode 100755 index 9f2c0098..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receiveCashierPayments.blade.php +++ /dev/null @@ -1,119 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    Receive Cashier Payment

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - - - - -
    Expected AmountDate
    {{ ugandan_shillings($total) }}{{ streamline_date_plain(date("Y-m-d")) }}
    -
    -
    -
    -
    - -
    -
    -
    - @php - $received_by_name = get_full_name($received_by, 'id', 'first_name', 'last_name', 'users'); - - if($request->user_id == "0"){ - $received_from = "ALL STAFF"; - $received_from_id = "ALL STAFF"; - }else{ - $received_from = get_full_name($request->user_id, 'id', 'first_name', 'last_name', 'users'); - $received_from_id = $request->user_id; - } - @endphp - {{ Form::open(['method'=>'post','route' => 'finance_reports.cashier_receipt']) }} - - {{ Form::hidden('user_id', $request->user_id) }} - {{ Form::hidden('total', $total) }} - {{ Form::hidden('tracker', $tracker.$received_by) }} - {{ Form::hidden('dates', $request->dates) }} - {{ Form::hidden('start_date', $request->start_date) }} - {{ Form::hidden('end_date', $request->end_date) }} - - @php $service_points = implode(',',$request->service_points); @endphp - {{ Form::hidden('service_points', $service_points) }} - -
    - {{ Form::label('received_from', 'Received From') }} - {{ Form::text('received_from', $received_from, ['class'=>'form-control compulsory', 'readonly', ]) }} - {{ Form::hidden('received_from_id', $received_from_id) }} -
    - -
    -
    - {{ Form::label('received_by', "Received By") }} - {{ Form::text('received_by', $received_by_name, ['class'=>'form-control compulsory', 'readonly']) }} - {{ Form::hidden('received_by_id', $received_by) }} -
    -
    - -
    -
    - {{ Form::label('amount_received', "Amount Received") }} - {{ Form::number('amount_received', '', ['class'=>'form-control compulsory', 'required']) }} -
    -
    - -
    -
    - {{ Form::label('expected_amount', "Expected Amount") }} - {{ Form::text('expected_amount', $total, ['class'=>'form-control compulsory required', 'readonly']) }} -
    -
    - -
    -
    - {{ Form::label('reason_name', 'Reason') }} - {{ Form::textarea('reason', '', ['class'=>'form-control compulsory', 'required', 'rows'=>'5', 'cols' => '10']) }} -
    -
    - - -
    - {{ Form::submit('Save', ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    -
    -
    - -@endsection diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receivedCash.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receivedCash.blade.php deleted file mode 100755 index 140af079..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/receivedCash.blade.php +++ /dev/null @@ -1,917 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('finance_reports.received_cash_report') }}

    -
    -
    - -
    -
    -@php -$options_banks = ""; -foreach ($banks as $item){ -$options_banks .= ""; -} -@endphp -@include('flash::message') -
    - -
    -
    - -
    - - {{ Form::open(['method'=>'post','route' => 'finance_reports.received_cash']) }} - -
    -
    - -
    - - -
    -
    -
    -
    - - -
    -
    -
    -
    - - -
    -
    -
    - -
    -
    - -
    -
    -
    - {{ Form::submit(__('finance_reports.submit'), ['class'=>'btn btn-success btn-rounded btn-block pull-right']) }} -
    -
    -
    - {{ Form::close() }} -
    -
    -
    - - - - -
    -
    -
    -
    -
    - @if($request != []) - @if($request->dates != "-select-" || $request->staff_member != "0") - @if(($request->dates == "today") || ($request->dates == "yesterday") || ($request->dates == "custom_date") || ($request->dates == "custom_date_range")) - -
    -

    {{ __('finance_reports.received_cash') }}

    -
    - @if(isset($display)) -

    {!! isset($display) ? $display : '' !!}

    - @endif - -
    - {{-- @if( Auth::user()->can('finance-clear_duplicate_receipts) )--}} - {{--
    --}} - {{--
    --}} - {{--
    --}} - {{-- {{ Form::open(['method'=>'post','route' => 'finance_reports.reconcile_cashier_income_records']) }}--}} - {{-- {{ Form::hidden('dates', $request->dates) }}--}} - {{-- {{ Form::hidden('start_date', $request->start_date) }}--}} - {{-- {{ Form::hidden('end_date', $request->end_date) }}--}} - {{-- --}} - {{-- {{ Form::close() }}--}} - {{--
    --}} - {{--
    --}} - {{--
    --}} - {{-- @endif--}} - -
    - - - - - - - - - - - - - - - - - @php - $sum_amount_total = 0; - $sum_balance_total = 0; - @endphp - - @if(count($result) > 0 ) - - @foreach($result as $item) - - - - - - - @php - $period_array = explode("/", $item->date_string); - @endphp - - - - - - - - - @php - $sum_amount_total += $item->amount; - $sum_balance_total += $item->balance; - @endphp - - @endforeach - - - - - - - - - - - - - - - - - @endif -
    {{ __('finance_reports.date') }}{{ __('finance_reports.cashier') }}{{ __('finance_reports.reason') }}{{ __('finance_reports.received_by') }}Period{{ __('finance_reports.receipt_number') }}{{ __('finance_reports.amount') }}{{ __('finance_reports.balance') }}{{ __('finance_reports.action') }}
    {{ streamline_date_time($item->created_at) }}{{ get_full_name($item->cashier_id, 'id', 'first_name', 'last_name', 'users') }}{{ $item->reason }}{{ get_full_name($item->brought_by, 'id', 'first_name', 'last_name', 'users') }} - {{ isset($period_array[0]) ? streamline_date($period_array[0]) : "" }} to {{ isset($period_array[1]) ? streamline_date($period_array[1]): "" }} - {{ $item->receipt_number }}{{ ugandan_shillings($item->amount) }}{{ ugandan_shillings($item->balance) }} - @if($item->banked) - banked); - $account_names = $banked_amt = ""; - $date = ""; - - foreach ($deposit_id_array as $deposit_id) { - $account_id = get_name($deposit_id, 'id', 'bank', 'banking'); - $banked_amt = get_name($deposit_id, 'id', 'credit', 'banking'); - $banked_by = get_name($deposit_id, 'id', 'created_by', 'banking'); - $banked_by_name = get_full_name($banked_by, 'id', 'first_name', 'last_name', 'users'); - $account_name = ($account_id != 'N/A') ? get_name($account_id, 'id', 'name', 'chart_of_accounts') : $account_id; - $account_names .= "Banked by: ".$banked_by_name. " to ".$account_name ."(Amount: ".$banked_amt.")" . ", "; - - $trans_date = get_name($deposit_id, 'id', 'trans_date', 'banking'); - $date = (($trans_date != 'N/A') ? streamline_date_time_short($trans_date) : $trans_date) . " - "; - } - $tooltip_info = $date . rtrim($account_names, ', '); - ?> - - - @else -
    - -
    - @endif -
    - {{ __('finance_reports.details') }} - - @if(!$item->banked) - {{ __('finance_reports.delete') }} - @else - @if (is_cashier_income_record_bank_reconciled($item->id)) - Undo Banking - @else - @if(Auth::user()->can('undo-banking')) - - @endif - @endif - @endif -
    {{ __('finance_reports.total') }}{{ ugandan_shillings($sum_amount_total) }}{{ ugandan_shillings($sum_balance_total) }}
    -
    - - @else -
    -
    -
    -

    {{ __('finance_reports.select_valid_date') }}

    -
    -
    - @endif - @else -
    -
    -
    -

    {{ __('finance_reports.select_valid_date') }}

    -
    -
    - @endif - @else -
    -
    -
    -

    {{ __('finance_reports.select_valid_date') }}

    -
    -
    - @endif -
    -
    -
    -
    -
    -
    - -{{ Form::open(['method'=>'post','route' => 'banking.quick_bank_deposit', 'id'=>'quick_deposit_form']) }} - -{{ Form::close() }} - - - -{{ Form::open(['method'=>'post','route' => 'finance_reports.received_cash', 'id'=>'reload_records']) }} -{{ Form::hidden('staff_member_cashier', $request->staff_member_cashier) }} -{{ Form::hidden('staff_member_accountant', $request->staff_member_accountant) }} -{{ Form::hidden('dates', $request->dates) }} -{{ Form::hidden('start_date', $request->start_date) }} -{{ Form::hidden('end_date', $request->end_date) }} -{{ Form::close() }} - - - - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/sales_by_patient_category.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/sales_by_patient_category.blade.php deleted file mode 100755 index 0e02a831..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/sales_by_patient_category.blade.php +++ /dev/null @@ -1,174 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    Sales By Patient Category

    -
    -
    - -
    -
    - - {{ Form::open(['route' => 'finance_reports.sales_by_patient_category' , 'data-toggle' => 'validator']) }} -
    -
    -
    -
    -
    - {{ Form::label('start_date', 'Date From') }} - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'start_date']) }} -
    -
    -
    -
    - {{ Form::label('end_date', 'Date To') }} - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'end_date']) }} -
    -
    -
    -
    - {{ Form::button('Search',['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    -
    -
    - {{ Form::close() }} - -
    -

    {{ $criteria }}

    - - {{ Form::hidden('start_date_hidden', $start_date, ['id' => 'start_date_hidden']) }} - {{ Form::hidden('end_date_hidden', $end_date, ['id' => 'end_date_hidden']) }} - -
    - -
    - - - - - - - - - - @php $total = 0; @endphp - @foreach($records as $record) - @php $total += $record["amount"]; @endphp - - - - - - @endforeach - - - - - - - - - - -
    Patient CategoryAmount
    {{ $record["name"] }}{{ ugandan_shillings($record["amount"]) }}Details
    Total{{ ugandan_shillings($total) }}
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/stockStatusReport.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/stockStatusReport.blade.php deleted file mode 100755 index 6d09ef92..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/stockStatusReport.blade.php +++ /dev/null @@ -1,143 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -
    -

    Stock Status Report

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    -
    -

    Use for this Section yet to be discussed

    -
    -
    - {{ Form::open(['method'=>'post','route' => 'finance_reports.stock_status']) }} - -
    - {{ Form::label('start_date', 'Start Date') }} -
    - {{ Form::text('start_date', '', ['class'=>'form-control', 'readonly', 'id'=>'start_date']) }} - -
    -
    - -
    - {{ Form::label('end_date', 'End Date') }} -
    - {{ Form::text('end_date', '', ['class'=>'form-control', 'readonly', 'id'=>'end_date']) }} - -
    -
    - -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    - -
    -
    - -
    -

    Report For Stock Status

    -
    - @if(isset($display)) -

    {!! isset($display) ? $display : '' !!}

    - @endif -
    -
    - -
    - - - - - - - - - - - - - - - - @if(count($stocks) > 0 && $debts != 0) - @foreach($stocks as $stock) - - - - - - - - - - - @endforeach - @elseif(count($stocks) == 0) - @if($stocks == 0) - - @elseif($stocks == []) - - @endif - @endif - -
    IDDrug NameUnit CostSelling PriceStore StockPharmacy StockCategoryExpiry Date
    {{ $stock->id }}{{ $stock->name }}{{ $stock->cost_price }}{{ $stock->selling_price }}{{ $stock->store_stock }}{{ $stock->pharmacy_stock }}{{ $stock->category_id }}{{ $stock->expiry_date }}
    RECORDSNOT FOUND
    -
    -
    -
    - -
    - -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/totalPurchasesReport.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/totalPurchasesReport.blade.php deleted file mode 100755 index 9df6e62a..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/totalPurchasesReport.blade.php +++ /dev/null @@ -1,132 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -
    -

    Total Purchases

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    -
    -

    Select the Date Range

    -
    -
    - {{ Form::open(['method'=>'post','route' => 'finance_reports.total_purchases']) }} - -
    - {{ Form::label('start_date', 'Start Date') }} -
    - {{ Form::text('start_date', '', ['class'=>'form-control', 'readonly', 'id'=>'start_date']) }} - -
    -
    - -
    - {{ Form::label('end_date', 'End Date') }} -
    - {{ Form::text('end_date', '', ['class'=>'form-control', 'readonly', 'id'=>'end_date']) }} - -
    -
    - -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    - - - - -
    -
    - -
    -

    Report of Total Purchases

    -
    - @if(isset($display)) -

    {!! isset($display) ? $display : '' !!}

    - @endif -
    -
    - -
    - - - - - - - - - - - - - - - @if(count($result) > 0 || $result != 0) - @foreach($result as $item) - - @endforeach - @elseif(count($result) == 0 || $result == 0) - - @endif - -
    Purchase NumberItem NameQuantityCost PriceSub TotalPayment MethodMoney Transferred FromMemo
    RECORDS NOT FOUND
    -
    -
    -
    - -
    - -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/trial_balance.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/trial_balance.blade.php deleted file mode 100755 index 19d594f7..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/trial_balance.blade.php +++ /dev/null @@ -1,643 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    Trial Balance

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    - - {{ Form::open(['method'=>'post','route' => 'finance_reports.trial_balance']) }} - -
    - -
    -
    - - -
    -
    - - -
    -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success btn-rounded btn-block pull-right']) }} -
    -
    -
    -
    - {{ Form::close() }} - -
    - - - @if(!empty($request->all())) -
    -
    - @php - $hospital_information = \Streamline\Models\HospitalInformation::first(); - @endphp -
    -
    -

    {{ $hospital_information->name }}

    -

    {{ $hospital_information->email }}

    -

    Trial Balance

    -

    {{ $display }}

    -
    - -
    -
    -
    - - - - - - - - - - - @php - $credit_total = $debit_total = 0; - $fixed_asset_sum = $liability_sum = 0; - @endphp - - - - @php $non_current_assets_sum = 0; @endphp - - @if(count($non_current_assets) > 0) - @php $single_record = 0; @endphp - @foreach($non_current_assets as $data) - @php - $single_record = is_numeric($data['amount']) ? (int)$data['amount'] : 0 ; - if ($single_record < 0) { - $credit_total += abs($single_record); - } else{ - $debit_total += $single_record; - } - @endphp - - - - - - - @endforeach - @endif - - @php $current_assets_sum = 0; @endphp - - @if(count($current_assets) > 0) - @php $single_record = 0; @endphp - @foreach($current_assets as $data) - @php - $single_record = is_numeric($data['amount']) ? (int)$data['amount'] : 0 ; - if ($single_record < 0) { - $credit_total += abs($single_record); - } else{ - $debit_total += $single_record; - } - @endphp - - - - - - - @endforeach - @endif - - @if(count($other_current_assets) > 0) - @php $single_record = 0; @endphp - @foreach($other_current_assets as $data) - @php - $single_record = is_numeric($data['amount']) ? (int)$data['amount'] : 0 ; - if ($single_record < 0) { - $credit_total += abs($single_record); - } else{ - $debit_total += $single_record; - } - @endphp - - - - - - - @endforeach - @endif - - @if(count($cost_of_sales_accounts) > 0) - @php $single_accrual_record = $single_cash_record = 0; @endphp - @foreach($cost_of_sales_accounts as $account) - @php - /* $single_cash_record = intval($account['cash']); - if ($single_cash_record < 0) { - $credit_total += abs($single_cash_record); - } else{ - $debit_total += $single_cash_record; - } */ - - $single_accrual_record = intval($account['accrual']); - if ($single_accrual_record < 0) { - $credit_total += abs($single_accrual_record); - } else{ - $debit_total += $single_accrual_record; - } - @endphp - - - - - - - @endforeach - @endif - - @if(count($expense_accounts) > 0) - @php $single_accrual_record = 0; @endphp - @foreach($expense_accounts as $account) - @php - $single_accrual_record = $account['accrual']; - if ($single_accrual_record < 0) { - $credit_total += abs($single_accrual_record); - } else{ - $debit_total += $single_accrual_record; - } - @endphp - - - - - - - @endforeach - @endif - - @if(count($income_accounts) > 0) - @php $single_accrual_record = $single_cash_record = 0; @endphp - @foreach($income_accounts as $data) - @php - $single_accrual_record = $data['accrual']; - if ($single_accrual_record < 0) { - $debit_total += abs($single_accrual_record); - } else{ - $credit_total += $data['accrual']; - } - - /* $single_cash_record = $data['cash']; - if ($single_cash_record < 0) { - $debit_total += abs($single_cash_record); - } else{ - $credit_total += $data['cash']; - } */ - @endphp - - - - - - - @endforeach - @endif - - @if(count($non_current_liabilities) > 0) - @php $single_record = 0; @endphp - @foreach($non_current_liabilities as $data) - @php - $single_record = (int)$data['amount']; - if ($single_record < 0) { - $debit_total += abs($single_record); - } else{ - $credit_total += (int)$data['amount']; - } - @endphp - - - - - - - @endforeach - @endif - - @php $current_liabilities_sum = 0; @endphp - - @if(count($current_liabilities) > 0) - @php $single_record = 0; @endphp - @foreach($current_liabilities as $data) - @php - $single_record = (int)$data['amount']; - if ($single_record < 0) { - $debit_total += abs($single_record); - } else{ - $credit_total += (int)$data['amount']; - } - @endphp - - - - - - - @endforeach - @endif - - @if(count($other_current_liabilities) > 0) - @php $single_record = 0; @endphp - @foreach($other_current_liabilities as $data) - @php - $single_record = (int)$data['amount']; - if ($single_record < 0) { - $debit_total += abs($single_record); - } else{ - $credit_total += (int)$data['amount']; - } - @endphp - - - - - - - @endforeach - @endif - - @if(count($equities) > 0) - @php $single_record = 0; @endphp - @foreach($equities as $data) - @php - $single_record = (int)$data['amount']; - if ($single_record < 0) { - $debit_total += abs($single_record); - } else{ - $credit_total += (int)$data['amount']; - } - @endphp - - - - - - - @endforeach - @endif - - - - - - - - - - -
    Account NameDebits (UGX)Credits (UGX)Action
    - {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }} ({{ get_name(get_name($data['id'],'id', 'type', 'chart_of_accounts'), 'id', 'name', 'account_types') }}) - - @if ($single_record >= 0) - {{ ugandan_shillings((int)$data['amount']) }} - @endif - - @if ($single_record < 0) - {{ ugandan_shillings(abs((int)$data['amount'])) }} - @endif - - - - {{ __('finance_reports.details') }} - -
    - {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }} - ({{ get_name(get_name($data['id'],'id', 'type', 'chart_of_accounts'), 'id', 'name', 'account_types') }}) - - @if ($single_record >= 0) - {{ ugandan_shillings((int)$data['amount']) }} - @endif - - @if ($single_record < 0) - {{ ugandan_shillings(abs((int)$data['amount'])) }} - @endif - - - - {{ __('finance_reports.details') }} - -
    - {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }}({{ get_name(get_name($data['id'],'id', 'type', 'chart_of_accounts'), 'id', 'name', 'account_types') }}) - - @if ($single_record >= 0) - {{ ugandan_shillings((int)$data['amount']) }} - @endif - - @if ($single_record < 0) - {{ ugandan_shillings(abs((int)$data['amount'])) }} - @endif - - - - {{ __('finance_reports.details') }} - -
    - {{ get_name($account['id'], 'id', 'name', 'chart_of_accounts') }}({{ get_name(get_name($account['id'],'id', 'type', 'chart_of_accounts'), 'id', 'name', 'account_types') }}) - - {{-- @if ($single_cash_record >= 0) -
    - {{ ugandan_shillings(intval($account['cash'])) }} -
    - @endif --}} - - @if ($single_accrual_record >= 0) -
    - {{ ugandan_shillings(intval($account['accrual'])) }} -
    - @endif -
    - {{-- @if ($single_cash_record < 0) -
    - {{ ugandan_shillings(abs(intval($account['cash']))) }} -
    - @endif --}} - - @if ($single_accrual_record < 0) -
    - {{ ugandan_shillings(abs(intval($account['accrual']))) }} -
    - @endif -
    - - -
    - {{ get_name($account['id'], 'id', 'name', 'chart_of_accounts') }} - ({{ get_name(get_name($account['id'],'id', 'type', 'chart_of_accounts'), 'id', 'name', 'account_types') }}) - - @if ($single_accrual_record >= 0) -
    - {{ ugandan_shillings($account['accrual']) }} -
    - @endif -
    - @if ($single_accrual_record < 0) -
    - {{ ugandan_shillings(abs($account['accrual'])) }} -
    - @endif -
    - -
    - {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }}({{ get_name(get_name($data['id'],'id', 'type', 'chart_of_accounts'), 'id', 'name', 'account_types') }}) - - {{-- @if ($single_cash_record < 0) -
    - {{ ugandan_shillings(abs($data['cash'])) }} -
    - @endif --}} - - @if ($single_accrual_record < 0) -
    - {{ ugandan_shillings(abs($data['accrual'])) }} -
    - @endif -
    - {{-- @if ($single_cash_record >= 0) -
    - {{ ugandan_shillings($data['cash']) }} -
    - @endif --}} - - @if ($single_accrual_record >= 0) -
    - {{ ugandan_shillings($data['accrual']) }} -
    - @endif -
    - - -
    - {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }}({{ get_name(get_name($data['id'],'id', 'type', 'chart_of_accounts'), 'id', 'name', 'account_types') }}) - - @if ($single_record < 0) - {{ ugandan_shillings(abs((int)$data['amount'])) }} - @endif - - @if ($single_record >= 0) - {{ ugandan_shillings((int)$data['amount']) }} - @endif - - - {{ __('finance_reports.details') }} - -
    - {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }}({{ get_name(get_name($data['id'],'id', 'type', 'chart_of_accounts'), 'id', 'name', 'account_types') }}) - - @if ($single_record < 0) - {{ ugandan_shillings(abs((int)$data['amount'])) }} - @endif - - @if ($single_record >= 0) - {{ ugandan_shillings((int)$data['amount']) }} - @endif - - - {{ __('finance_reports.details') }} - -
    - {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }}({{ get_name(get_name($data['id'],'id', 'type', 'chart_of_accounts'), 'id', 'name', 'account_types') }}) - - @if ($single_record < 0) - {{ ugandan_shillings(abs((int)$data['amount'])) }} - @endif - - @if ($single_record >= 0) - {{ ugandan_shillings((int)$data['amount']) }} - @endif - - - {{ __('finance_reports.details') }} - -
    - {{ get_name($data['id'],'id', 'name', 'chart_of_accounts') }}({{ get_name(get_name($data['id'],'id', 'type', 'chart_of_accounts'), 'id', 'name', 'account_types') }}) - - @if ($single_record < 0) - {{ ugandan_shillings(abs((int)$data['amount'])) }} - @endif - - @if ($single_record >= 0) - {{ ugandan_shillings((int)$data['amount']) }} - @endif - - -

    Total

    {{ ugandan_shillings($debit_total) }}{{ ugandan_shillings($credit_total) }}
    -
    -
    -
    -
    -
    - @else -
    -
    -
    -

    Select a Valid date or date range

    -
    -
    - @endif -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/ward_discounts_report.blade.php b/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/ward_discounts_report.blade.php deleted file mode 100755 index 52763484..00000000 --- a/docker/statistics/Modules/FinanceReports/Resources/views/finance_reports/ward_discounts_report.blade.php +++ /dev/null @@ -1,124 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    Ward Discounts

    -
    -
    - -
    -
    - - {{ Form::open(['route' => 'finance_reports.ward_discounts_report' , 'data-toggle' => 'validator']) }} -
    -
    -
    -
    -
    - {{ Form::label('ward', 'Select Ward') }} - {{ Form::select('ward',$wards,'',['id'=>'prescription-drugs','class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    - {{ Form::label('start_date', 'Date From') }} - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'start_date']) }} -
    -
    -
    -
    - {{ Form::label('end_date', 'Date To') }} - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'end_date']) }} -
    -
    -
    -
    - {{ Form::button('Search',['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    -
    -
    - {{ Form::close() }} - -
    -

    {{ streamline_date($start_date) }} To {{ streamline_date($end_date) }}

    -
    - - - - - - - - - - - - - - @foreach($discounts as $discount) - - - - - - - - - - @endforeach - -
    PatientPatient CategoryWardAmountReceipt No.Received ByReceived On
    - {{ get_full_name($discount->patient_id, 'id', 'first_name', 'last_name', 'patients') }} - - ({{ get_name($discount->patient_id, 'id', 'number', 'patients') }}) - {{ get_name(get_name($discount->patient_id, 'id', 'category_id', 'patients'), 'id', 'name', 'patient_categories') }}{{ $wards[$discount->ward_id] ?? '' }}{{ ugandan_shillings($discount->amount) }}{{ $discount->receipt_number }}{{ get_full_name($discount->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date_time($discount->created_at) }}
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/FinanceReports/Routes/api.php b/docker/statistics/Modules/FinanceReports/Routes/api.php deleted file mode 100644 index f99734fa..00000000 --- a/docker/statistics/Modules/FinanceReports/Routes/api.php +++ /dev/null @@ -1,18 +0,0 @@ -get('/finance_reports', function () { - return "Finance Reports"; -}); diff --git a/docker/statistics/Modules/FinanceReports/Routes/web.php b/docker/statistics/Modules/FinanceReports/Routes/web.php deleted file mode 100644 index 515c1d2b..00000000 --- a/docker/statistics/Modules/FinanceReports/Routes/web.php +++ /dev/null @@ -1,106 +0,0 @@ - ['auth', 'disablebackbutton', 'user-locale','subscription-tracking', 'password-expiry']], function () { - /* Finance Reports */ - Route::get('finance_reports', 'FinanceReportsController@index')->name('finance_reports.index'); - Route::any('finance_reports/procedure', 'FinanceReportsController@procedureReport')->name('finance_reports.procedure'); - Route::any('finance_reports/income_cash', 'FinanceReportsController@incomeCashReport')->name('finance_reports.income_cash'); - Route::any('finance_reports/received_cash', 'FinanceReportsController@receivedCash')->name('finance_reports.received_cash'); - Route::any('finance_reports/ward_discounts_report', 'FinanceReportsController@ward_discounts_report')->name('finance_reports.ward_discounts_report'); - - Route::any('finance_reports/income_detailed_report', 'FinanceReportsController@incomeDetailedReport')->name('finance_reports.income_detailed_report'); - Route::any('finance_reports/custom_investigation_search', 'FinanceReportsController@customInvestigationSearch')->name('finance_reports.custom_investigation_search'); - - Route::any('finance_reports/stock_status', 'FinanceReportsController@stockStatus')->name('finance_reports.stock_status'); - Route::any('finance_reports/purchases_per_supplier', 'FinanceReportsController@purchasesPerSupplier')->name('finance_reports.purchases_per_supplier'); - Route::any('finance_reports/total_purchases', 'FinanceReportsController@totalPurchases')->name('finance_reports.total_purchases'); - Route::any('finance_reports/accounts_payable_aging_summary', 'FinanceReportsController@accounts_payable_aging_summary')->name('finance_reports.accounts_payable_aging_summary'); - Route::any('finance_reports/accounts_payable_aging_detail', 'FinanceReportsController@accounts_payable_aging_detail')->name('finance_reports.accounts_payable_aging_detail'); - Route::any('finance_reports/print_accounts_payable_aging_summary', 'FinanceReportsController@print_accounts_payable_aging_summary')->name('finance_reports.print_accounts_payable_aging_summary'); - Route::any('finance_reports/print_accounts_payable_aging_detail', 'FinanceReportsController@print_accounts_payable_aging_detail')->name('finance_reports.print_accounts_payable_aging_detail'); - Route::any('finance_reports/accounts_receivable_aging_summary', 'FinanceReportsController@accounts_receivable_aging_summary')->name('finance_reports.accounts_receivable_aging_summary'); - Route::any('finance_reports/accounts_receivable_aging_detail', 'FinanceReportsController@accounts_receivable_aging_detail')->name('finance_reports.accounts_receivable_aging_detail'); - Route::any('finance_reports/print_accounts_receivable_aging_summary', 'FinanceReportsController@print_accounts_receivable_aging_summary')->name('finance_reports.print_accounts_receivable_aging_summary'); - Route::any('finance_reports/print_accounts_receivable_aging_detail', 'FinanceReportsController@print_accounts_receivable_aging_detail')->name('finance_reports.print_accounts_receivable_aging_detail'); - Route::any('finance_reports/patient_accounts_deposits_details', 'FinanceReportsController@patient_accounts_deposits_details')->name('finance_reports.patient_accounts_deposits_details'); - Route::any('finance_reports/patient_accounts_sales_details', 'FinanceReportsController@patient_accounts_sales_details')->name('finance_reports.patient_accounts_sales_details'); - - Route::any('finance_reports/income_detail/{data}', 'FinanceReportsController@income_detail')->name('finance_reports.income_detail'); - Route::any('finance_reports/cost_of_sales_detail/{data}', 'FinanceReportsController@cost_of_sales_detail')->name('finance_reports.cost_of_sales_detail'); - Route::any('finance_reports/expense_detail/{data}', 'FinanceReportsController@expense_detail')->name('finance_reports.expense_detail'); - Route::any('finance_reports/fixed_asset_detail/{data}', 'FinanceReportsController@fixed_asset_detail')->name('finance_reports.fixed_asset_detail'); - Route::any('finance_reports/current_asset_detail/{data}', 'FinanceReportsController@current_asset_detail')->name('finance_reports.current_asset_detail'); - Route::any('finance_reports/other_current_asset_detail/{data}', 'FinanceReportsController@other_current_asset_detail')->name('finance_reports.other_current_asset_detail'); - Route::any('finance_reports/liability_detail/{data}', 'FinanceReportsController@liability_detail')->name('finance_reports.liability_detail'); - Route::any('finance_reports/equity_detail/{data}', 'FinanceReportsController@equity_detail')->name('finance_reports.equity_detail'); - - Route::any('finance_reports/trial_balance', 'FinanceReportsController@trial_balance')->name('finance_reports.trial_balance'); - Route::any('finance_reports/profit_or_loss_statement', 'FinanceReportsController@profit_or_loss_statement')->name('finance_reports.profit_or_loss_statement'); - Route::any('finance_reports/print_profit_or_loss_statement', 'FinanceReportsController@print_profit_or_loss_statement')->name('finance_reports.print_profit_or_loss_statement'); - Route::any('finance_reports/balance_sheet', 'FinanceReportsController@balance_sheet')->name('finance_reports.balance_sheet'); - Route::any('finance_reports/print_balance_sheet', 'FinanceReportsController@print_balance_sheet')->name('finance_reports.print_balance_sheet'); - Route::any('finance_reports/cash_flow_statement', 'FinanceReportsController@cash_flow_statement')->name('finance_reports.cash_flow_statement'); - Route::any('finance_reports/print_cash_flow_statement', 'FinanceReportsController@print_cash_flow_statement')->name('finance_reports.print_cash_flow_statement'); - - Route::any('finance_reports/income_received', 'FinanceReportsController@incomeReceived')->name('finance_reports.income_received'); - Route::any('finance_reports/banking_deposits', 'FinanceReportsController@bankingDeposits')->name('finance_reports.banking_deposits_reports'); - Route::any('finance_reports/discrepancies', 'FinanceReportsController@discrepancies')->name('finance_reports.discrepancies'); - - Route::any('finance_reports/discounts_report', 'FinanceReportsController@discountsReport')->name('finance_reports.discounts_report'); - Route::any('finance_reports/donor_discounts_report', 'FinanceReportsController@donorDiscountsReport')->name('finance_reports.donor_discounts_report'); - Route::any('finance_reports/hospital_discounts_report', 'FinanceReportsController@hospitalDiscountsReport')->name('finance_reports.hospital_discounts_report'); - - Route::any('finance_reports/receive_cashier_payments', 'FinanceReportsController@receiveCashierPayments')->name('finance_reports.receive_cashier_payments'); - Route::any('finance_reports/cashier_receipt', 'FinanceReportsController@processCashierReceipt')->name('finance_reports.cashier_receipt'); - Route::any('finance_reports/print_cashier_receipt', 'FinanceReportsController@print_cashier_receipt')->name('finance_reports.print_cashier_receipt'); - Route::any('finance_reports/cashier_income_detail/{id}', 'FinanceReportsController@cashier_income_detail')->name('finance_reports.cashier_income_detail'); - Route::any('finance_reports/reconcile_cashier_income_records', 'FinanceReportsController@reconcile_cashier_income_records')->name('finance_reports.reconcile_cashier_income_records'); - Route::any('finance_reports/delete_cashier_income/{id}', 'FinanceReportsController@delete_cashier_income')->name('finance_reports.delete_cashier_income'); - Route::any('finance_reports/undo_banking/{id}', 'FinanceReportsController@undo_banking')->name('finance_reports.undo_banking'); - Route::any('finance_reports/undo_payment/{id}', 'FinanceReportsController@undo_payment')->name('finance_reports.undo_payment'); - Route::any('finance_reports/discounts', 'FinanceReportsController@discounts')->name('finance_reports.discounts'); - Route::any('/finance_reports/custom_debtors/{category}', 'FinanceReportsController@custom_debtors')->name('finance_reports.custom_debtors'); - Route::any('/finance_reports/custom_debtor/{debtor}/{category}', 'FinanceReportsController@custom_debtor')->name('finance_reports.custom_debtor'); - Route::any('/finance_reports/custom_debt_plans/{category}', 'FinanceReportsController@custom_debt_plans')->name('finance_reports.custom_debt_plans'); - Route::any('/finance_reports/custom_debt_plan/{patient_id}/{category}', 'FinanceReportsController@custom_debt_plan')->name('finance_reports.custom_debt_plan'); - - Route::any('finance_reports/inpatient_deposit_receipt_reprint/{id}', 'FinanceReportsController@inpatient_deposit_receipt_reprint')->name('finance_reports.inpatient_deposit_receipt_reprint'); - Route::any('finance_reports/inpatient_payment_receipt_reprint/{id}', 'FinanceReportsController@inpatient_payment_receipt_reprint')->name('finance_reports.inpatient_payment_receipt_reprint'); - - Route::any('finance_reports/services_receipt_reprint/{id}', 'FinanceReportsController@servicesReceiptReprint')->name('finance_reports.services_receipt_reprint'); - Route::any('finance_reports/treatment_receipt_reprint/{id}', 'FinanceReportsController@treatmentReceiptReprint')->name('finance_reports.treatment_receipt_reprint'); - Route::any('finance_reports/procedures_receipt_reprint/{id}', 'FinanceReportsController@proceduresReceiptReprint')->name('finance_reports.procedures_receipt_reprint'); - Route::any('finance_reports/sundries_receipt_reprint/{id}', 'FinanceReportsController@sundriesReceiptReprint')->name('finance_reports.sundries_receipt_reprint'); - Route::any('finance_reports/premiums_receipt_reprint/{id}', 'FinanceReportsController@premiumsReceiptReprint')->name('finance_reports.premiums_receipt_reprint'); - Route::any('finance_reports/investigations_receipt_reprint/{id}', 'FinanceReportsController@investigationsReceiptReprint')->name('finance_reports.investigations_receipt_reprint'); - Route::any('finance_reports/patient_payment_receipt/{id}', 'FinanceReportsController@patient_payment_receipt')->name('finance_reports.patient_payment_receipt'); - Route::any('finance_reports/donor_payment_receipt/{id}', 'FinanceReportsController@donor_payment_receipt')->name('finance_reports.donor_payment_receipt'); - - Route::any('finance_reports/donorDiscountPayment', 'FinanceReportsController@receiveDonorDiscountPayment')->name('finance_reports.donor_discount_payment'); - Route::any('finance_reports/patient_discount_receipt', 'FinanceReportsController@patientDiscountReceipt')->name('finance_reports.patient_discount_receipt'); - Route::any('finance_reports/donor_discount_receipt', 'FinanceReportsController@donorDiscountsReceipt')->name('finance_reports.donor_discounts_receipt'); - Route::any('finance_reports/patient_refunds_report', 'FinanceReportsController@patient_refunds_report')->name('finance_reports.patient_refunds_report'); - Route::any('finance_reports/point_of_sale', 'FinanceReportsController@pointOfSale')->name('finance_reports.point_of_sale'); - - Route::any('finance_reports/one_off_discounts_report', 'FinanceReportsController@one_off_discounts_report')->name('finance_reports.one_off_discounts_report'); - - Route::any('finance_reports/sales_by_patient_category', 'FinanceReportsController@sales_by_patient_category')->name('finance_reports.sales_by_patient_category'); - Route::any('finance_reports/get_patient_category_sales_details/{id}/{start}/{end}', 'FinanceReportsController@get_patient_category_sales_details')->name('finance_reports.get_patient_category_sales_details'); - - Route::resource('finance_reports', 'FinanceReportsController'); - - Route::any('finance_reports/professional_fees_detail/{data}', 'FinanceReportsController@professional_fees_detail')->name('finance_reports.professional_fees_detail'); - - Route::any('check_if_cash_is_direct_deposit','FinanceReportsController@check_if_cash_is_direct_deposit'); - Route::any('direct_bank_deposits_details','FinanceReportsController@direct_bank_deposits_details')->name('finance_reports.direct_bank_deposits_details'); - Route::any('finance_reports/delete_direct_deposit_from_cashier_income/{id}', 'FinanceReportsController@delete_direct_deposit_from_cashier_income')->name('finance_reports.delete_direct_deposit_from_cashier_income'); - - Route::any('patient_dependants_report', 'FinanceReportsController@patient_dependants_report')->name('finance_reports.patient_dependants_report'); - Route::any('dependants_renewals_report', 'FinanceReportsController@dependants_renewals_report')->name('finance_reports.dependants_renewals_report'); - Route::any('dependant_consumption_details', 'FinanceReportsController@dependant_consumption_details'); - Route::any('renew_dependant_threshold', 'FinanceReportsController@renew_dependant_threshold')->name('finance_reports.renew_dependant_threshold'); - - Route::any('clean_equities_transaction_date', 'FinanceReportsController@clean_equities_transaction_date'); -}); diff --git a/docker/statistics/Modules/FinanceReports/bitbucket-pipelines.yml b/docker/statistics/Modules/FinanceReports/bitbucket-pipelines.yml deleted file mode 100644 index e850a8fd..00000000 --- a/docker/statistics/Modules/FinanceReports/bitbucket-pipelines.yml +++ /dev/null @@ -1,19 +0,0 @@ -image: alpine/git:latest - -pipelines: - branches: - main: - - step: - name: Merge To Beta - script: - - git remote set-url origin https://Kabricks:${APP_SECRET}@bitbucket.org/dcsammi/${BITBUCKET_REPO_SLUG} - - git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*" - - git fetch - - git checkout beta - - git merge main - - git commit --amend -m "[skip ci] Merge changes from main" - - git push - - step: - name: Deploy To Test - script: - - echo "Ready to deploy to demo or production!" diff --git a/docker/statistics/Modules/FinanceReports/module.json b/docker/statistics/Modules/FinanceReports/module.json deleted file mode 100644 index 9cbca601..00000000 --- a/docker/statistics/Modules/FinanceReports/module.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "FinanceReports", - "alias": "finance_reports", - "description": "Finance Reports", - "keywords": [], - "priority": 0, - "providers": [ - "Modules\\FinanceReports\\Providers\\FinanceReportsServiceProvider" - ], - "files": [] -} diff --git a/docker/statistics/Modules/Hiv/Config/config.php b/docker/statistics/Modules/Hiv/Config/config.php deleted file mode 100644 index af759666..00000000 --- a/docker/statistics/Modules/Hiv/Config/config.php +++ /dev/null @@ -1,5 +0,0 @@ - 'Hiv' -]; diff --git a/docker/statistics/Modules/Hiv/Http/Controllers/AntiretralViralTherapyController.php b/docker/statistics/Modules/Hiv/Http/Controllers/AntiretralViralTherapyController.php deleted file mode 100755 index 82109120..00000000 --- a/docker/statistics/Modules/Hiv/Http/Controllers/AntiretralViralTherapyController.php +++ /dev/null @@ -1,324 +0,0 @@ -middleware('auth'); - } - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() - { - // - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - $episode_id = session()->get('episode_id'); - $patient_id = session()->get('patient_id'); - $patient = Patient::find($patient_id); - - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $marital_statuses = DB::table('marital_statuses')->pluck("name", "id")->prepend('-- Select --',''); - $districts = DB::table('districts')->pluck("name", "id")->prepend('-- Select --',''); - $care_entry_points = DB::table('care_entry_points')->pluck("name", "id")->prepend('-- Select --',''); - $drug_categories = DB::table('drug_categories')->get(); - $triage_id = get_name($episode_id, "id", "triage_id", "patient_episodes"); - $triage = Triage::find($triage_id); - $documents = PatientDocument::where('patient_id',$patient_id)->orderBy('created_at','desc')->take(2)->get(); - $known_patient_allergies = Allergy::where('patient_id' , $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id' , $patient_id)->orderBy('created_at','desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->pluck('name', 'id'); - - //check if there is ART clinic registration data for this paatient - $existing_episode_art_clinic_registration = ArtClinicRegistration::where(['patient_id' => $patient_id])->get(); - //dd($existing_episode_art_clinic_registration); - - return view('hiv::art_clinic.create',compact('patient_id','episode_id','patient','categories','marital_statuses','drug_categories','documents','known_patient_alerts','known_patient_allergies','drug_categories_array','triage','districts','care_entry_points')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - $test_type_array = array( - "Test_Type" => $request->test_type, - "Where?" => $request->where - ); - $test_type_serial = serialize($test_type_array); - - //Care Entry Point - $care_entry_point_array = array( - "Care_Entry_Point" => $request->care_entry_point, - "Other(Specify)" => $request->other_care_entry_point - ); - $care_entry_point_serial = serialize($care_entry_point_array); - - //Treatment supporter - $treatment_supporter_array = array( - "Treatment_Supporter_Name" => $request->treatment_supporter_name, - "Phone" => $request->treatment_supporter_phone, - "District" => $request->district, - "County" => $request->county_id, - "Subcounty" => $request->subcounty_id, - "Parish" => $request->parish, - "Village" => $request->village - ); - $treatment_supporter_serial = serialize($treatment_supporter_array); - - //save data into the art_clinic_registration - $art_clinic_registration = new ArtClinicRegistration; - $art_clinic_registration->patient_id = $request->patient_id; - $art_clinic_registration->marital_status = $request->marital_status; - $art_clinic_registration->art_clinic_number = $request->art_clinic_number; - /* ========== register the patient in hiv_patients table ========== */ - $hiv_patient = new HivPatient; - $hiv_patient->patient_id = session()->get('patient_id'); - $hiv_patient->art_clinic_number = $request->art_clinic_number; - $hiv_patient->save(); - /* ===================== */ - $art_clinic_registration->date_confirmed_HIV = isset($request->date_hiv_confirmed) ? Carbon::createFromFormat('d/m/Y', $request->date_hiv_confirmed)->toDateString() : null; - $art_clinic_registration->test_type = $test_type_serial; - $art_clinic_registration->care_entry_point = $care_entry_point_serial; - $art_clinic_registration->treatment_supporter = $treatment_supporter_serial; - $art_clinic_registration->home_based_care_by = $request->home_based_care_provided_by; - $art_clinic_registration->created_by = auth()->user()->id; - if ($art_clinic_registration->save()) { - flash('ART details have been filled. Please fill out the ART continuation card')->success(); - return redirect('art_continuation_card'); - } - return redirect()->back()->withInput(); - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) - { - // - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - // - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - // - } - - /* Display ART continuation card */ - public function create_art_continuation_card() - { - $patient_id = session()->get('patient_id'); - $patient = Patient::find($patient_id); - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $marital_statuses = DB::table('marital_statuses')->pluck("name", "id")->prepend('-- Select --',''); - $districts = DB::table('districts')->pluck("name", "id")->prepend('-- Select --',''); - $fp_options = DB::table('art_card_family_planning_methods')->pluck("name", "id")->prepend('-- Select --',''); - $tb_statuses = DB::table('tuberclosis_statuses')->pluck("name", "id")->prepend('-- Select --',''); - $potential_side_effects = DB::table('art_potential_side_effects')->pluck("name","id")->prepend('-- Select --',''); - $oi_options = DB::table('art_oi')->pluck("name","id")->prepend('-- Select --',''); - $nutrition = DB::table('nutrition')->pluck("name","id")->prepend('-- Select --',''); - $arv_adherence_reasons = DB::table('arv_adherence_reasons')->pluck("name","id")->prepend('-- Select --',''); - $drug_categories = DB::table('drug_categories')->get(); - $documents = PatientDocument::where('patient_id',$patient_id)->orderBy('created_at','desc')->take(2)->get(); - $known_patient_allergies = Allergy::where('patient_id',$patient_id)->orderBy('created_at','desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id' , $patient_id)->orderBy('created_at','desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->pluck('name', 'id'); - - //check if there is ART clinic registration data for this paatient - $existing_art_continuation_card_records = ArtContinuationCard::where(['patient_id' => $patient_id])->get(); - $existing_art_continuation_card_records_array = $existing_art_continuation_card_records->toArray(); - - return view('hiv::art_clinic.create_ART_continuation_card',compact('patient_id','patient','categories','marital_statuses','drug_categories','documents','known_patient_alerts','known_patient_allergies','drug_categories_array','districts','fp_options','tb_statuses','potential_side_effects','oi_options','nutrition','arv_adherence_reasons','existing_art_continuation_card_records_array','existing_art_continuation_card_records')); - } - - /* Store art continuation card details */ - public function store_art_continuation_card(Request $request) - { - //ART - $art_array = array( - "Date started ART" => isset($request->date_started_art) ? Carbon::createFromFormat('d/m/Y', $request->date_started_art)->toDateString() : null, - "Duration" => $request->art_duration, - "Date started current ART regime" => isset($request->art_regime_start_date) ? Carbon::createFromFormat('d/m/Y', $request->art_regime_start_date)->toDateString() : null, - "Current Regime Duration" => $request->art_regime_duration - ); - $art_serial = serialize($art_array); - //MUAC and oedema - $muac_array = array( - "muac" => $request->muac, - "oedema" => $request->oedema - ); - $muac_serial = serialize($muac_array); - //Pregnacy - $pregnancy_array = array( - "Pregnant" => $request->pregnant, - "EDD" => isset($request->edd) ? Carbon::createFromFormat('d/m/Y', $request->edd)->toDateString() : null, - "EMTCT" => $request->emtct, - "ANC Location" => $request->anc_location, - "Gestation" => $request->gestation, - "FP" => $request->fp - ); - $pregnancy_serial = serialize($pregnancy_array); - //TB - $tb_array = array( - "TB Status" => $request->tb_status, - "TB Rx start date" => isset($request->tb_rx_start_date) ? Carbon::createFromFormat('d/m/Y', $request->tb_rx_start_date)->toDateString() : null, - "Stop date" => isset($request->tb_rx_stop_date) ? Carbon::createFromFormat('d/m/Y', $request->tb_rx_stop_date)->toDateString() : null, - "District TB Register Number" => $request->district_tb_register_no - ); - $tb_serial = serialize($tb_array); - //Side effects - $side_effects_array = array( - "Potential side effects" => $request->potential_side_effects, - "Others" => $request->other_side_effects - ); - $side_effects_serial = serialize($side_effects_array); - //New OI - $new_oi = array( - "New OI / other problems" => $request->new_oi, - "Other" => $request->new_oi_other - ); - $new_oi_serial = serialize($new_oi); - //Nutrition - $nutrition_array = array( - "Nutrition" => $request->nutrition, - "Functional Status" => $request->functional_status, - "WHO Stage" => $request->who_stage - ); - $nutrition_serial = serialize($nutrition_array); - //CPT / Dapsone - $cpt_dapsone_array = array( - "Adherence" => $request->cpt_dapsone_adherence, - "Number of pills dispensed" => $request->cpt_no_pills_dispensed, - "Number of days passed" => $request->cpt_no_days_passed - ); - $cpt_dapsone_serial = serialize($cpt_dapsone_array); - //INH - $inh_array = array( - "Number of pills dispensed" => $request->inh_no_pills_dispensed, - "Number of days passed" => $request->inh_no_days_passed - ); - $inh_serial = serialize($inh_array); - //Other meds - $other_meds_array = array( - "Other Meds Dispensed including nutritional supplement" => $request->other_meds - ); - $other_meds_serial = serialize($other_meds_array); - //ARVs - $arvs_array = array( - "Adherence" => $request->arvs_adherence, - "Why?" => $request->arvs_adherence_why, - "Others" => $request->arvs_other, - "Regime" => $request->arvs_regime, - "Number of pills dispensed" => $request->arvs_no_pills_dispensed, - "Number of days passed" => $request->arvs_no_days_passed, - ); - $arvs_serial = serialize($arvs_array); - //Ix - $ix_array = array( - "CD4 count" => $request->cd4_count, - "Date" => isset($request->cd4_count_date) ? Carbon::createFromFormat('d/m/Y', $request->cd4_count_date)->toDateString() : null, - "Other Ix" => $request->other_ix, - "Nutrition supplements" => $request->nutritional_supplements - ); - $ix_serial = serialize($ix_array); - //Referrals - $referrals_array = array( - "Consultation / link/provide" => $request->consultation_link_provide, - "Date" => isset($request->consultation_link_provide_date) ? Carbon::createFromFormat('d/m/Y', $request->consultation_link_provide_date)->toDateString() : null, - "Nutrition support" => $request->nutritional_support, - "Nutrition support Date" => isset($request->nutritional_support_date) ? Carbon::createFromFormat('d/m/Y', $request->nutritional_support_date)->toDateString() : null, - "Hospitalization" => $request->hospitalisation, - "Duration" => $request->hospitalisation_duration - ); - $referrals_serial = serialize($referrals_array); - //Appointments - $appointment_array = array( - "Next Appointment ART date" => isset($request->next_appointment_date) ? Carbon::createFromFormat('d/m/Y', $request->next_appointment_date)->toDateString() : null, - "Other Appointment" => $request->other_appointment, - "Other Appointment Date" => isset($request->other_appointment_date) ? Carbon::createFromFormat('d/m/Y', $request->other_appointment_date)->toDateString() : null - ); - $appointment_serial = serialize($appointment_array); - - $art_continuation_card = new ArtContinuationCard; - $art_continuation_card->patient_id = $request->patient_id; - $art_continuation_card->episode_id = session()->get('episode_id'); - $art_continuation_card->clinician_id = auth()->user()->id; - $art_continuation_card->follow_up = $request->follow_up; - $art_continuation_card->ART = $art_serial; - $art_continuation_card->muac_oedema = $muac_serial; - $art_continuation_card->pregnancy = $pregnancy_serial; - $art_continuation_card->TB = $tb_serial; - $art_continuation_card->side_effects = $side_effects_serial; - $art_continuation_card->OI = $new_oi_serial; - $art_continuation_card->nutrition = $nutrition_serial; - $art_continuation_card->cpt_dapsone = $cpt_dapsone_serial; - $art_continuation_card->INH = $inh_serial; - $art_continuation_card->other_meds = $other_meds_serial; - $art_continuation_card->ARVs = $arvs_serial; - $art_continuation_card->Ix = $ix_serial; - $art_continuation_card->referrals = $referrals_serial; - $art_continuation_card->appointments = $appointment_serial; - if ($art_continuation_card->save()) { - flash("ART continuation details have been added")->success(); - return redirect('patient_episodes'); - } - return redirect()->back()->withInput(); - } -} diff --git a/docker/statistics/Modules/Hiv/Http/Controllers/Controller.php b/docker/statistics/Modules/Hiv/Http/Controllers/Controller.php deleted file mode 100755 index a8dc1cbe..00000000 --- a/docker/statistics/Modules/Hiv/Http/Controllers/Controller.php +++ /dev/null @@ -1,13 +0,0 @@ -get('patient_id'); - $episode_id = session()->get('episode_id'); - $patient = Patient::where('id', $patient_id)->first(); - $categories = PatientCategory::pluck("name", "id"); - $marital_statuses = MaritalStatus::pluck("name", "id"); - $drug_categories = DrugCategory::get(); - - return view('hiv::hiv.menu',compact('patient_id', 'episode_id', 'patient', 'categories', 'marital_statuses','drug_categories')); - } - - public function hiv_counselling_and_testing() - { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $patient = Patient::where('id', $patient_id)->first(); - $categories = PatientCategory::pluck("name", "id"); - $marital_statuses = MaritalStatus::pluck("name", "id"); - $drug_categories = DrugCategory::get(); - - return view('hiv::hiv.hiv_counselling_and_testing',compact('patient_id', 'episode_id', 'patient', 'categories', 'marital_statuses','drug_categories')); - } - - public function store_hct_form(Request $request) - { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $hiv_counselling_and_testing = new HivCounsellingAndTesting; - $hiv_counselling_and_testing->patient_id = $patient_id; - $hiv_counselling_and_testing->episode_id = $episode_id; - $hiv_counselling_and_testing->counselling_date = isset($request->counselling_date) ? Carbon::createFromFormat('d/m/Y', $request->counselling_date)->toDateString() : null; - $hiv_counselling_and_testing->is_center_static = $request->is_center_static; - $hiv_counselling_and_testing->registration_number = $request->registration_number; - $hiv_counselling_and_testing->accompanied_by = $request->accompanied_by; - $hiv_counselling_and_testing->counselled_as = $request->counselled_as; - $hiv_counselling_and_testing->approach = $request->approach; - $hiv_counselling_and_testing->hct_entry_point = $request->hct_entry_point; - $hiv_counselling_and_testing->ever_tested_for_hiv_before = $request->ever_tested_for_hiv_before; - $hiv_counselling_and_testing->times_tested_in_last_12_months = $request->times_tested_in_last_12_months; - $hiv_counselling_and_testing->number_of_sexual_partners_in_last_12_months = $request->number_of_sexual_partners_in_last_12_months; - $hiv_counselling_and_testing->partner_tested_before = $request->partner_tested_before; - $hiv_counselling_and_testing->partner_results = $request->partner_results; - $hiv_counselling_and_testing->confirmatory_lab = $request->confirmatory_lab; - $hiv_counselling_and_testing->results_received = $request->results_received; - $hiv_counselling_and_testing->results_received_as_a_couple = $request->results_received_as_a_couple; - $hiv_counselling_and_testing->is_there_suspision_for_tb = $request->is_there_suspision_for_tb; - $hiv_counselling_and_testing->has_client_started_cotrimoxazole_prophylaxis = $request->has_client_started_cotrimoxazole_prophylaxis; - $hiv_counselling_and_testing->has_client_been_linked_to_care = $request->has_client_been_linked_to_care; - $hiv_counselling_and_testing->where_is_the_client_care = $request->where_is_the_client_care; - $hiv_counselling_and_testing->cd4_count_results = $request->cd4_count_results; - $hiv_counselling_and_testing->hiv_recency_test_result = $request->hiv_recency_test_result; - $hiv_counselling_and_testing->counsellor = $request->counsellor; - $hiv_counselling_and_testing->save(); - flash("couselling and testing details have been saved")->success(); - - return redirect('hiv_counselling_and_testing'); - } - /* - * appointment follow up form - */ - public function appointment_follow_up() - { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $patient = Patient::where('id', $patient_id)->first(); - $categories = PatientCategory::pluck("name", "id"); - $marital_statuses = MaritalStatus::pluck("name", "id"); - $drug_categories = DrugCategory::get(); - - return view('hiv::hiv.appointment_follow_up',compact('patient_id', 'episode_id', 'patient', 'categories', 'marital_statuses','drug_categories')); - } - - public function health_unit_tb_form() - { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $patient = Patient::where('id', $patient_id)->first(); - $categories = PatientCategory::pluck("name", "id"); - $marital_statuses = MaritalStatus::pluck("name", "id"); - $drug_categories = DrugCategory::get(); - return view('hiv::hiv.health_unit_tuberclosis_form',compact('patient_id', 'episode_id', 'patient', 'categories', 'marital_statuses','drug_categories')); - } -} diff --git a/docker/statistics/Modules/Hiv/Providers/HivServiceProvider.php b/docker/statistics/Modules/Hiv/Providers/HivServiceProvider.php deleted file mode 100644 index 4bc33e49..00000000 --- a/docker/statistics/Modules/Hiv/Providers/HivServiceProvider.php +++ /dev/null @@ -1,113 +0,0 @@ -registerTranslations(); - $this->registerConfig(); - $this->registerViews(); - $this->loadMigrationsFrom(module_path($this->moduleName, 'Database/Migrations')); - } - - /** - * Register the service provider. - * - * @return void - */ - public function register() - { - $this->app->register(RouteServiceProvider::class); - } - - /** - * Register config. - * - * @return void - */ - protected function registerConfig() - { - $this->publishes([ - module_path($this->moduleName, 'Config/config.php') => config_path($this->moduleNameLower . '.php'), - ], 'config'); - $this->mergeConfigFrom( - module_path($this->moduleName, 'Config/config.php'), $this->moduleNameLower - ); - } - - /** - * Register views. - * - * @return void - */ - public function registerViews() - { - $viewPath = resource_path('views/modules/' . $this->moduleNameLower); - - $sourcePath = module_path($this->moduleName, 'Resources/views'); - - $this->publishes([ - $sourcePath => $viewPath - ], ['views', $this->moduleNameLower . '-module-views']); - - $this->loadViewsFrom(array_merge($this->getPublishableViewPaths(), [$sourcePath]), $this->moduleNameLower); - } - - /** - * Register translations. - * - * @return void - */ - public function registerTranslations() - { - $langPath = resource_path('lang/modules/' . $this->moduleNameLower); - - if (is_dir($langPath)) { - $this->loadTranslationsFrom($langPath, $this->moduleNameLower); - $this->loadJsonTranslationsFrom($langPath); - } else { - $this->loadTranslationsFrom(module_path($this->moduleName, 'Resources/lang'), $this->moduleNameLower); - $this->loadJsonTranslationsFrom(module_path($this->moduleName, 'Resources/lang')); - } - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides() - { - return []; - } - - private function getPublishableViewPaths(): array - { - $paths = []; - foreach (\Config::get('view.paths') as $path) { - if (is_dir($path . '/modules/' . $this->moduleNameLower)) { - $paths[] = $path . '/modules/' . $this->moduleNameLower; - } - } - return $paths; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/Hiv/Providers/RouteServiceProvider.php b/docker/statistics/Modules/Hiv/Providers/RouteServiceProvider.php deleted file mode 100755 index 17afcdad..00000000 --- a/docker/statistics/Modules/Hiv/Providers/RouteServiceProvider.php +++ /dev/null @@ -1,68 +0,0 @@ -mapApiRoutes(); - $this->mapWebRoutes(); - } - - /** - * Define the "web" routes for the application. - * - * These routes all receive session state, CSRF protection, etc. - * - * @return void - */ - protected function mapWebRoutes() - { - Route::middleware('web') - ->namespace($this->namespace) - ->group(module_path('Hiv', '/Routes/web.php')); - } - - /** - * Define the "api" routes for the application. - * - * These routes are typically stateless. - * - * @return void - */ - protected function mapApiRoutes() - { - Route::prefix('api') - ->middleware('api') - ->namespace($this->namespace) - ->group(module_path('Hiv', '/Routes/api.php')); - } -} diff --git a/docker/statistics/Modules/Hiv/Resources/views/art_clinic/create.blade.php b/docker/statistics/Modules/Hiv/Resources/views/art_clinic/create.blade.php deleted file mode 100755 index 132ccd56..00000000 --- a/docker/statistics/Modules/Hiv/Resources/views/art_clinic/create.blade.php +++ /dev/null @@ -1,762 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('art_clinic.art_clinic') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    -
    -
    -
    {{ __('art_clinic.triage_details') }} -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    - @if($triage) - {{ get_name($triage->symptoms,'id','name','symptoms') }} - @else - {{ __('art_clinic.no_symptoms_records') }} - @endif -
    -
    -
    -
    -
    - @if($triage) - @switch($triage->severe_grade) - @case (1) - {{ __('art_clinic.green') }} - @break - @case (2) - {{ __('art_clinic.yellow') }} - @break - @case (3) - {{ __('art_clinic.red') }} - @break - @default - {{ __('art_clinic.triage_grade_not_determined') }} - @endswitch - @endif -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    {{ __('art_clinic.patient_documents') }} - -
    - -
    -
    -
    - - - @foreach($documents as $document) - - - - - @endforeach - -
    {{ $document->title }}{{ Carbon\Carbon::parse($document->date_taken)->format('jS M Y') }}
    -
    -
    -
    -
    - -
    -
    - @include('flash::message') -
    - {{ __('art_clinic.art_clinic') }}

    -
    -
    {{ __('art_clinic.clinician') }} : {{ isset($triage) ? get_name($triage->created_by,'id','last_name','users') : ""}}
    -
    -
    - {{ Form::open(['route' => 'antiretral_viral_therapy.store','data-toggle'=>'validator']) }} - - - - -
    -
    - {{ Form::label('age','Age') }} - @php - $age_array = days_months_years($patient->date_of_birth, Carbon\Carbon::now()); - $age_days = $age_array[0]; - $age_months = $age_array[1]; - $age_years = $age_array[2]; - @endphp -
    -
    - {{ $age_years }} Years {{ $age_months }} Months
    -
    -
    - -
    - -
    - - {{ Form::select('marital_status',$marital_statuses,'',['class'=>'form-control compulsory']) }} -
    - -
    - -
    - {{ Form::label('art_clinic_number','ART CLINIC NUMBER') }} - {{ Form::text('art_clinic_number','',['class'=>'form-control compulsory']) }} -
    - -
    - -
    - -
    - {{ Form::text('date_hiv_confirmed','',['class'=>'form-control compulsory','id'=>'datepicker-autoclose1','required']) }} - -
    -
    -
    -
    -
    -
    - -
    - -
    - -
    - {{ Form::radio('test_type', 'AB', false, ['required']) }} Yes    - {{ Form::radio('test_type', 'PCR', false, ['required']) }} No -
    - -
    - -
    - - {{ Form::text('where','',['class'=>'form-control']) }} -
    - -
    -
    - -
    -
    -
    -
    -
    - -
    - -
    - -
    - {{ Form::select('care_entry_point',$care_entry_points,'',['class' => 'form-control compulsory']) }} -
    - -
    - -
    - - {{ Form::text('other_care_entry_point','',['class'=>'form-control']) }} -
    - -
    -
    - -
    -
    -
    -
    -
    - -
    - -
    - -
    - - {{ Form::text('treatment_supporter_name','',['class'=>'form-control compulsory']) }} -
    - -
    - -
    - - {{ Form::text('treatment_supporter_phone','',['class'=>'form-control compulsory']) }} -
    - -
    - -
    - - {{ Form::select('district',$districts,'',['class'=>'form-control compulsory district','id'=>'district_id']) }} - {{ __('art_clinic.add_new_district') }} -
    -
    -
    - - -
    - - - -
    - - - -
    - - -
    -
    -
    -
    - -
    - -
    - {{ Form::label('','') }} - {{ Form::text('home_based_care_provided_by','',['class'=>'form-control compulsory']) }} -
    - -
    -
    - -
    - {{ Form::button('Complete registration',['type'=>'submit','class'=>'btn btn-success btn-lg col-sm-12','id'=>'submit_art_registration','value'=>'complete']) }} -
    -
    -
    -
    -
    -{{ Form::close() }} - - - - - - - - - - - - - - - - - -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/Hiv/Resources/views/art_clinic/create_ART_continuation_card.blade.php b/docker/statistics/Modules/Hiv/Resources/views/art_clinic/create_ART_continuation_card.blade.php deleted file mode 100755 index c1805173..00000000 --- a/docker/statistics/Modules/Hiv/Resources/views/art_clinic/create_ART_continuation_card.blade.php +++ /dev/null @@ -1,475 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('art_clinic.art_clinic_continuation_card') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -@if($existing_art_continuation_card_records_array) -
    -
    -
    -

    {{ __('art_clinic.existing_art_card_details') }}

    - - - - - - - - - - - - - - - - - - @php $counter = 1; @endphp - @foreach($existing_art_continuation_card_records as $existing_record) - @php - $unserialized_ART_details = unserialize($existing_record->ART); - $date_ART_started = $unserialized_ART_details['Date started ART']; - $duration = $unserialized_ART_details['Duration']; - $date_started_current_ART_regime = $unserialized_ART_details['Date started current ART regime']; - $current_regime_duration = $unserialized_ART_details['Current Regime Duration']; - - $unserialized_muac_oedema = unserialize($existing_record->muac_oedema); - $muac = $unserialized_muac_oedema['muac']; - $oedema = $unserialized_muac_oedema['oedema']; - - $unserialized_pregnancy_details = unserialize($existing_record->pregnancy); - $pregnant = $unserialized_pregnancy_details['Pregnant']; - $edd = $unserialized_pregnancy_details['EDD']; - $emtct = $unserialized_pregnancy_details['EMTCT']; - $anc_location = $unserialized_pregnancy_details['ANC Location']; - $gestation = $unserialized_pregnancy_details['Gestation']; - $family_planning = $unserialized_pregnancy_details['FP']; - @endphp - - - - - - - - - - - - - @php $counter++; @endphp - @endforeach - - -
    -
    -
    -@endif - -
    -
    - @include('flash::message') -
    -

    {{ __('art_clinic.art_continuation_card') }}

    - {{ Form::open(['route' => 'antiretral_viral_therapy.store_continuation_card','data-toggle'=>'validator']) }} - - -
    -
    -
    {{ __('art_clinic.clinician') }} : {{ auth()->user()->first_name . " " . auth()->user()->last_name }}
    -
    {{ __('art_clinic.scheduled_follow_up') }}
    -
    {{ Form::select('follow_up',['' => ' -- Select --', '1' => 'yes', '0' => 'no'],'',['class'=>'form-control compulsory']) }}
    -
    -
    -
    -
    - -
    - {{ Form::text('date_started_art','',['class'=>'form-control compulsory','id'=>'datepicker-autoclose1','required']) }} - -
    -
    -
    - - {{ Form::text('art_duration','',['class'=>'form-control compulsory','id' => 'art_duration']) }} -
    -


    {{ __('art_clinic.months') }}
    -
    - -
    - {{ Form::text('art_regime_start_date','',['class'=>'form-control','id'=>'datepicker-autoclose2','required']) }} - -
    -
    -
    - - {{ Form::text('art_regime_duration','',['class'=>'form-control compulsory','id' => 'art_regime_duration']) }} -
    -


    {{ __('art_clinic.months') }}
    -
    -
    -
    -
    - - {{ Form::text('muac', '', ['class'=>'form-control compulsory','id'=>'muac']) }} -
    -


    cm
    -
    - - {{ Form::select('oedema',['' => '-- Select --', '-' => ' - ', '+' => ' + '],'',['class'=>'form-control compulsory','id'=>'oedema']) }} -
    -
    -
    -
    -
    - -
    - {{ Form::radio('pregnant', 'Yes', false, ['required']) }} Yes    - {{ Form::radio('pregnant', 'No', false, ['required']) }} No -
    -
    -
    - -
    - {{ Form::text('edd','',['class'=>'form-control compulsory','id'=>'edd']) }} - -
    -
    -
    - -
    - {{ Form::radio('emtct', 'Yes', false, ['required']) }} Yes    - {{ Form::radio('emtct', 'No', false, ['required']) }} No -
    -
    -
    - - {{ Form::text('anc_location','',['class'=>'form-control']) }} -
    -
    - - {{ Form::number('gestation','',['class'=>'form-control', 'min' => '0']) }} -
    -


    {{ __('art_clinic.weeks') }}
    -
    -
    -
    -
    - - {{ Form::select('fp',$fp_options,'',['class'=>'form-control compulsory','id'=>'fp']) }} -
    -
    -
    -
    -
    -
    -
    -
    -
    - - {{ Form::select('tb_status',$tb_statuses,'',['class'=>'form-control compulsory','id'=>'tb_status']) }} -
    -
    -
    - -
    - {{ Form::text('tb_rx_start_date', '', ['class'=>'form-control','id'=>'tb_rx_start_date']) }} - -
    -
    -
    - -
    - {{ Form::text('tb_rx_stop_date', '' , ['class'=>'form-control','id'=>'tb_rx_stop_date']) }} - -
    -
    -
    - - {{ Form::text('district_tb_register_no','',['class'=>'form-control']) }} -
    -
    -
    -
    -
    -
    - - {{ Form::select('potential_side_effects',$potential_side_effects,'',['class'=>'form-control compulsory','id'=>'potential_side_effects']) }} -
    -
    - - {{ Form::text('other_side_effects','',['class'=>'form-control', 'id' => 'other_side_effects']) }} -
    -
    -
    -
    -
    -
    -
    - - {{ Form::select('new_oi',$oi_options,'',['class'=>'form-control compulsory','id'=>'new_oi']) }} -
    -
    - - {{ Form::text('new_oi_other','',['class'=>'form-control', 'id' => 'new_oi_other']) }} -
    -
    -
    -
    -
    -
    -
    - - {{ Form::select('nutrition',$nutrition,'',['class'=>'form-control compulsory','id'=>'nutrition']) }} -
    -
    - - {{ Form::select('functional_status',['' => '-- Select --','W' => 'Work / playing','A' => 'Ambulatory','B' => 'Bed'],'',['class'=>'form-control compulsory','id'=>'functional_status']) }} -
    -
    - - {{ Form::select('who_stage',[''=>'-- Select --','1'=>'WHO clinical stage 1','2'=>'WHO clinical stage 2','3'=>'WHO clinical stage 3','4'=>'WHO clinical stage 4'],'',['class'=>'form-control compulsory','id'=>'who_stage']) }} -
    -
    -
    -
    -
    -
    -
    - - {{ Form::select('cpt_dapsone_adherence',['' => '-- Select --','G' => 'Good', 'F' => 'Fair', 'P' => 'Poor'],'',['class'=>'form-control compulsory','id'=>'cpt_dapsone_adherence']) }} -
    -
    - - {{ Form::number('cpt_no_pills_dispensed','',['class'=>'form-control compulsory','id'=>'cpt_no_pills_dispensed']) }} -
    -
    - - {{ Form::number('cpt_no_days_passed','',['class'=>'form-control compulsory','id'=>'cpt_no_days_passed']) }} -
    -
    -
    -
    -
    -
    -
    - {{ __('art_clinic.inh') }} -
    -
    - - {{ Form::number('inh_no_pills_dispensed','',['class'=>'form-control compulsory','id'=>'inh_no_pills_dispensed']) }} -
    -
    - - {{ Form::number('inh_no_days_passed','',['class'=>'form-control compulsory','id'=>'inh_no_days_passed']) }} -
    -
    -
    -
    -
    -
    -
    - - {{ Form::textarea('other_meds','',['class'=>'form-control compulsory','id'=>'other_meds']) }} -
    -
    -
    -
    -
    - - {{ Form::select('arvs_adherence',['' => '-- Select --','G' => 'Good', 'F' => 'Fair', 'P' => 'Poor'],'',['class'=>'form-control compulsory','id'=>'arvs_adherence']) }} -
    -
    - - {{ Form::select('arvs_adherence_why',$arv_adherence_reasons,'',['class'=>'form-control compulsory','id'=>'arvs_adherence_why']) }} -
    -
    - - {{ Form::text('arvs_other','',['class'=>'form-control','id'=>'arvs_other']) }} -
    -
    -
    -
    -
    -
    - - {{ Form::select('arvs_regime',['regimes_to_be_added'=>'Regimes to be added'],'',['class'=>'form-control compulsory','id'=>'arvs_regime']) }} -
    -
    - - {{ Form::number('arvs_no_pills_dispensed','',['class'=>'form-control compulsory','id'=>'arvs_no_pills_dispensed']) }} -
    -
    - - {{ Form::text('arvs_no_days_passed','',['class'=>'form-control compulsory','id'=>'arvs_no_days_passed']) }} -
    -
    -
    -
    -
    -
    -
    - {{ __('art_clinic.ix') }} -
    -
    - - {{ Form::number('cd4_count','',['class'=>'form-control compulsory','id'=>'cd4_count']) }} -
    -
    - -
    - {{ Form::text('cd4_count_date', '', ['class' => 'form-control compulsory', 'id'=>'cd4_count_date']) }} - -
    -
    -
    -
    -
    -
    -
    - - {{ Form::text('other_ix','',['class'=>'form-control','id'=>'other_ix']) }} -
    -
    - - {{ Form::select('nutritional_supplements',$nutrition,'',['class'=>'form-control compulsory','id'=>'nutritional_supplements']) }} -
    -
    -
    -
    -
    -
    - Referrals : -
    -
    - - {{ Form::number('consultation_link_provide','',['class'=>'form-control compulsory','id'=>'consultation_link_provide']) }} -
    -
    - -
    - {{ Form::text('consultation_link_provide_date', '', ['class'=>'form-control compulsory','id'=>'consultation_link_provide_date']) }} - -
    -
    -
    -
    -
    -
    -
    -
    -
    - - {{ Form::text('nutritional_support','',['class'=>'form-control compulsory','id'=>'nutritional_support']) }} -
    -
    - -
    - {{ Form::text('nutritional_support_date', '', ['class'=>'form-control compulsory','id'=>'nutritional_support_date']) }} - -
    -
    -
    -
    -
    -
    -
    - - {{ Form::text('hospitalisation','',['class'=>'form-control compulsory','id'=>'hospitalisation']) }} -
    -
    - - {{ Form::number('hospitalisation_duration','',['class'=>'form-control compulsory', 'min' => '0']) }} -
    -


    Days
    -
    -
    -
    -
    -
    -
    - -
    - {{ Form::text('next_appointment_date', '', ['class'=>'form-control compulsory','id'=>'next_appointment_date']) }} - -
    -
    -
    - - {{ Form::text('other_appointment', '' ,['class'=>'form-control','id'=>'other_appointment']) }} -
    -
    - -
    - {{ Form::text('other_appointment_date', '', ['class'=>'form-control','id'=>'other_appointment_date']) }} - -
    -
    -
    -
    -
    -
    -
    -
    - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success btn-lg col-sm-12','id'=>'submit_art_continuation_card','value'=>'complete']) }} -
    -
    -
    -
    -
    -{{ Form::close() }} -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/Hiv/Resources/views/hiv/appointment_follow_up.blade.php b/docker/statistics/Modules/Hiv/Resources/views/hiv/appointment_follow_up.blade.php deleted file mode 100755 index 842503b6..00000000 --- a/docker/statistics/Modules/Hiv/Resources/views/hiv/appointment_follow_up.blade.php +++ /dev/null @@ -1,150 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('hiv.appointment_follow_up') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    -
    - @include('flash::message') -
    - {{ Form::open(['route' => 'hct.store','data-toggle'=>'validator']) }} -
    -

    {{ __('hiv.appointment_book') }}

    -
    -
    -
    -
    - {{ Form::label('date',__('hiv.date')) }} -
    - {{ Form::text('follow_up_date','',['class' => 'form-control compulsory','readonly','id'=>'follow_up_date']) }} - -
    -
    - -
    - {{ Form::label('type_of_care',__('hiv.type_of_care')) }}
    - {{ Form::checkbox('type_of_care[]', 'Pre ART', false) }} {{ __('hiv.pre_art') }}   - {{ Form::checkbox('type_of_care[]', 'ART', false) }} {{ __('hiv.art') }}   - {{ Form::checkbox('type_of_care[]', 'HIV Exposed Infant', false) }} {{ __('hiv.hiv_exposed_infant') }}   -
    - -
    - {{ Form::label('follow_up_type','Followup Type :'__('hiv.')) }}
    - {{ Form::checkbox('follow_up_type[]', 'SMS Message', false) }} {{ __('hiv.sms_message') }}  
    - {{ Form::checkbox('follow_up_type[]', 'Phone call', false) }} {{ __('hiv.phone_call') }}  
    - {{ Form::checkbox('follow_up_type[]', 'Home visit', false) }} {{ __('hiv.home_visit') }}  
    - {{ Form::checkbox('follow_up_type[]', 'Other', false, ['id' => 'other_follow_up_chbx']) }} {{ __('hiv.other') }}   -
    - - -
    -
    -
    -
    - {{ Form::label('outcome',__('hiv.outcome')) }}
    - {{ Form::checkbox('outcome[]', 'Spoke with patient', false) }} {{ __('hiv.spoke_with_patient') }}  
    - {{ Form::checkbox('outcome[]', 'Phone not answered', false) }} {{ __('hiv.phone_not_answered') }}  
    - {{ Form::checkbox('outcome[]', 'Spoke with someone else', false) }} {{ __('hiv.spoke_with_someone_else') }}  
    - {{ Form::checkbox('outcome[]', 'Telephone off', false) }} {{ __('hiv.telephone_off') }}  
    - {{ Form::checkbox('outcome[]', 'Client Visit Rescheduled', false, ['id' => 'client_visit_rescheduled_chbx']) }} Client Visit Rescheduled{{ __('hiv.') }}  
    - {{ Form::checkbox('outcome[]', 'Other', false, ['id' => 'other_outcome_chbx']) }} {{ __('hiv.other_specify') }}   -
    - - - - - -
    - {{ Form::label('next_step',__('hiv.next_step')) }}
    - {{ Form::checkbox('next_step[]', 'Call Treatment Supporter', false) }} {{ __('hiv.call_treatment_supporter') }}  
    - {{ Form::checkbox('next_step[]', 'Try to followup patient again', false, ['id' => 'follow_up_again_on_chbx']) }} {{ __('hiv.try_to_followup_again') }}  
    - {{ Form::checkbox('next_step[]', 'Home visit', false, ['id' => 'home_visit_chbx']) }} {{ __('hiv.home_visit') }}  
    -
    - - - - - -
    -
    {{ Form::submit(__('hiv.submit'),['class'=>'btn btn-success']) }}
    -
    -
    -
    - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Hiv/Resources/views/hiv/health_unit_tuberclosis_form.blade.php b/docker/statistics/Modules/Hiv/Resources/views/hiv/health_unit_tuberclosis_form.blade.php deleted file mode 100755 index fef25b92..00000000 --- a/docker/statistics/Modules/Hiv/Resources/views/hiv/health_unit_tuberclosis_form.blade.php +++ /dev/null @@ -1,147 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('hiv.health_unit_tb_form') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    -
    - @include('flash::message') -
    - {{ Form::open(['route' => 'store_tb_form','data-toggle'=>'validator']) }} -
    -

    {{ __('hiv.health_unit_tb_form') }}

    -
    -
    -
    -
    - {{ Form::label('unit_tb_number',__('hiv.unit_tb_number')) }} - {{ Form::text('unit_tb_number','',['class' => 'form-control compulsory','id'=>'unit_tb_number']) }} -
    - -
    - {{ Form::label('name_of_contact_person',__('hiv.contact_phone_number')) }} - {{ Form::text('name_of_contact_person','', ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('is_patient_health_worker',__('hiv.patient_health_worker')) }}
    - {{ Form::radio('is_patient_health_worker', 'yes', false) }} {{ __('hiv.yes') }}   - {{ Form::radio('is_patient_health_worker', 'no', false) }} {{ __('hiv.no') }}  
    -
    - -
    - {{ Form::label('date_treatment_started',__('hiv.date_treatment_started')) }} -
    - {{ Form::text('date_treatment_started','',['class' => 'form-control compulsory','readonly','id'=>'date_treatment_started']) }} - -
    -
    - -
    - {{ Form::label('type_of_patient',__('hiv.type_of_patient')) }} - {{ Form::select('type_of_patient',['N' => __('hiv.new'), 'R' => __('hiv.relapse'), 'F' => __('hiv.failure'), 'L' => __('hiv.lost_to_follow_up'), 'THU' => __('hiv.treatment_history_unknown')],'', ['class' => 'form-control']) }} -
    -
    - -
    -
    - {{ Form::label('hsd_tb_number',__('hiv.hsd_tb_number')) }} - {{ Form::text('hsd_tb_number','',['class' => 'form-control compulsory','id'=>'hsd_tb_number']) }} -
    - -
    - {{ Form::label('contact_phone_number',__('hiv.contact_phone_number')) }} - {{ Form::text('contact_phone_number','', ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('cadre_of_health_worker',__('hiv.cadre_of_health_worker')) }} - {{ Form::select('cadre_of_health_worker',[],'', ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('regimen',__('hiv.regimen')) }} - {{ Form::select('regimen',[],'', ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('regimen_specify',__('hiv.specify_regimen')) }} - {{ Form::text('regimen_specify','', ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('transfer_in_from',__('hiv.transfer_in_from')) }} - {{ Form::text('transfer_in_from','', ['class' => 'form-control']) }} -
    -
    - -
    -
    - {{ Form::label('district_tb_number',__('hiv.district_tb_number')) }} - {{ Form::text('district_tb_number','',['class' => 'form-control compulsory','id'=>'district_tb_number']) }} -
    - -
    - {{ Form::label('relationship_to_contact_person',__('hiv.relationship_of_contact_person')) }} - {{ Form::select('relationship_to_contact_person',[],'', ['class' => 'form-control']) }} -
    - -
    -
    {{ Form::submit(__('hiv.submit'),['class'=>'btn btn-success']) }}
    -
    -
    -
    - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Hiv/Resources/views/hiv/hiv_counselling_and_testing.blade.php b/docker/statistics/Modules/Hiv/Resources/views/hiv/hiv_counselling_and_testing.blade.php deleted file mode 100755 index ad73507c..00000000 --- a/docker/statistics/Modules/Hiv/Resources/views/hiv/hiv_counselling_and_testing.blade.php +++ /dev/null @@ -1,299 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('hiv.hiv_counselling_testing') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    -
    - @include('flash::message') -
    - {{ Form::open(['route' => 'hct.store','data-toggle'=>'validator']) }} -
    -
    -

    {{ __('hiv.hiv_couns_test_card') }}

    -
    - -
    -

    {{ __('hiv.section_a') }}:

    -
    -
    -
    - {{ Form::label('date',__('hiv.date')) }} -
    - {{ Form::text('counselling_date','',['class' => 'form-control compulsory','readonly','id'=>'counselling_date']) }} - -
    -
    -
    -
    -
    - {{ Form::label('is_center_static',__('hiv.is_center_static')) }} - {{ Form::select('is_center_static',['static'=>__('hiv.static'),'outreach'=>__('hiv.outreach')],'',['class' => 'form-control', 'required', 'data-error'=>'','placeholder'=>'']) }} -
    -
    -
    -
    - {{ Form::label('registration_number',__('hiv.registration_number')) }} - {{ Form::text('registration_number','',['class' => 'form-control', 'data-error'=>'','placeholder'=>'']) }} -
    -
    -
    - -
    - {{ Form::label('accompanied_by',__('hiv.accompanied_by')) }} - {{ Form::select('accompanied_by', [''=>__('hiv.select'),'mother'=>__('hiv.mother'), 'father'=>__('hiv.father'), 'guardian'=>__('hiv.guardian')], '', ['class' => 'form-control', 'data-error'=>'', 'placeholder'=>'']) }} -
    -
    - - -
    -

    {{ __('hiv.section_b') }}:

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - {{ Form::label('pre_test_counselling_done',__('hiv.pre_test_counselling_done')) }} - - {{ Form::select('accompanied_by', [''=>__('hiv.select'),'0'=>__('hiv.no'), '1'=>__('hiv.yes')], '', ['class' => 'form-control']) }} -
    - - - {{ Form::select('counselled_as', [''=>'--Select--','1'=>'Individual', '2'=>'Couple','3'=>'Group'], '', ['class' => 'form-control']) }} -
    - - - {{ Form::select('approach', [''=>'--Select--','1'=>'CICT', '2'=>'PITC'], '', ['class' => 'form-control']) }} -
    - - - {{ Form::select('hct_entry_point', [''=>__('hiv.select'),'1'=>__('hiv.facility_based'), '2'=>__('hiv.work_place'), '3'=>__('hiv.community_outreach'),'4'=>'HBHCT','5'=>__('hiv.circumcision'),'6'=>'PEP','7'=>'PMTCT','8'=>'MARPS','9'=>'ANC','10'=>__('hiv.maternity'),'11'=>__('hiv.family_planning'),'12'=>__('hiv.gynecological_opd'),'13'=>__('hiv.emergency_gynecological_ward'),'14'=>__('hiv.men_access_clinic'),'15'=>__('hiv.mother_baby_pair_clinic')], '', ['class' => 'form-control']) }} -
    - - - {{ Form::select('ever_tested_for_hiv_before', [''=>__('hiv.select'),'0'=>__('hiv.no'), '1'=>__('hiv.yes')], '', ['class' => 'form-control']) }} -
    - - - {{ Form::text('times_tested_in_last_12_months','',['class' => 'form-control', 'data-error'=>'','placeholder'=>'']) }} -
    - - - {{ Form::text('number_of_sexual_partners_in_last_12_months','',['class' => 'form-control', 'data-error'=>'','placeholder'=>'']) }} -
    - - - {{ Form::select('partner_tested_before', [''=>__('hiv.select'),'0'=>__('hiv.no'), '1'=>__('hiv.yes'), '2'=>__('hiv.dont_know')], '', ['class' => 'form-control']) }} -
    - - - {{ Form::select('partner_results', [''=>__('hiv.select'),'0'=>__('hiv.hiv_negative'), '1'=>__('hiv.hiv_positive'), '2'=>__('hiv.unknown')], '', ['class' => 'form-control']) }} -
    -
    -
    -

    {{ __('hiv.consent_testing') }}

    - - - - - - - -
    - - - {{ Form::select('partner_results', [''=>__('hiv.select'),'0'=>__('hiv.no'), '1'=>__('hiv.yes')], '', ['class' => 'form-control']) }} -
    -
    -
    - -
    -

    {{ __('hiv.section_c') }}

    - - - - - - - - - - - -
    - - - {{ Form::select('partner_results', [''=>__('hiv.select'),'1'=>__('hiv.hiv_negative'), '2'=>__('hiv.hiv_positive'),'3'=>'INC','4'=>'NT'], '', ['class' => 'form-control']) }} -
    - - - {{ Form::select('confirmatory_lab', [''=>__('hiv.select'),'0'=>__('hiv.no'), '1'=>__('hiv.yes')], '', ['class' => 'form-control']) }} -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - - - {{ Form::select('results_received', [''=>__('hiv.select'),'0'=>__('hiv.no'), '1'=>__('hiv.yes')], '', ['class' => 'form-control']) }} -
    - - - {{ Form::select('results_received_as_a_couple', [''=>__('hiv.select'),'0'=>__('hiv.no'), '1'=>__('hiv.yes')], '', ['class' => 'form-control']) }} -
    - - - {{ Form::select('results_received_as_a_couple', [''=>__('hiv.select'),'discordant'=>__('hiv.discordant'), 'concordant'=>__('hiv.concordant')], '', ['class' => 'form-control']) }} -
    - - - {{ Form::select('is_there_suspision_for_tb', [''=>__('hiv.select'),'0'=>__('hiv.no'), '1'=>__('hiv.yes')], '', ['class' => 'form-control']) }} -
    - - - {{ Form::select('has_client_started_cotrimoxazole_prophylaxis', [''=>__('hiv.select'),'0'=>__('hiv.no'), '1'=>__('hiv.yes')], '', ['class' => 'form-control']) }} -
    - - - {{ Form::select('has_client_been_linked_to_care', [''=>__('hiv.select'),'0'=>__('hiv.no'), '1'=>__('hiv.yes')], '', ['class' => 'form-control']) }} -
    - - - {{ Form::text('where_is_the_client_care','',['class' => 'form-control', 'data-error'=>'','placeholder'=>'']) }} -
    - - - {{ Form::text('cd4_count_results','',['class' => 'form-control', 'data-error'=>'','placeholder'=>'']) }} -
    - - - {{ Form::select('hiv_recency_test_result',[''=>'--Select--','1'=>'Recent','2'=>'Long Term'],'',['class' => 'form-control', 'data-error'=>'','placeholder'=>'']) }} -
    - - - {{ Form::text('counsellor','',['class' => 'form-control required', 'data-error'=>'','placeholder'=>'counsellor']) }} -
    -
    -
    -
    {{ Form::submit(__('hiv.save'),['class'=>'btn btn-success']) }}
    -
    -
    - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Hiv/Resources/views/hiv/menu.blade.php b/docker/statistics/Modules/Hiv/Resources/views/hiv/menu.blade.php deleted file mode 100755 index 04f3bca4..00000000 --- a/docker/statistics/Modules/Hiv/Resources/views/hiv/menu.blade.php +++ /dev/null @@ -1,145 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('hiv.hiv_clinic') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    -
    - @include('flash::message') - -
    -
    - - - -@endsection - -@push('scripts') - - -@endpush diff --git a/docker/statistics/Modules/Hiv/Routes/api.php b/docker/statistics/Modules/Hiv/Routes/api.php deleted file mode 100644 index 90ae7465..00000000 --- a/docker/statistics/Modules/Hiv/Routes/api.php +++ /dev/null @@ -1,18 +0,0 @@ -get('/hiv', function () { - return "HIV"; -}); diff --git a/docker/statistics/Modules/Hiv/Routes/web.php b/docker/statistics/Modules/Hiv/Routes/web.php deleted file mode 100644 index 804bc6d4..00000000 --- a/docker/statistics/Modules/Hiv/Routes/web.php +++ /dev/null @@ -1,19 +0,0 @@ - ['auth', 'disablebackbutton', 'user-locale','subscription-tracking', 'password-expiry']], function () { - /* HIV module routes */ - Route::resource('hiv', 'HIVController'); - Route::get('hiv_menu', 'HIVController@menu')->name('hiv.menu'); - Route::get('hiv_counselling_and_testing', 'HIVController@hiv_counselling_and_testing'); - Route::post('store_hct_form', 'HIVController@store_hct_form')->name('hct.store'); - Route::get('hiv_appointment_follow_up', 'HIVController@appointment_follow_up'); - Route::get('health_unit_tb_form', 'HIVController@health_unit_tb_form'); - Route::post('store_health_unit_tb_form', 'HIVController@store_health_unit_tb_form')->name('store_tb_form'); - - /* ART clinic */ - Route::resource('antiretral_viral_therapy', 'AntiretralViralTherapyController'); - Route::get('art_continuation_card', 'AntiretralViralTherapyController@create_art_continuation_card'); - Route::post('art_continuation_card', 'AntiretralViralTherapyController@store_art_continuation_card')->name('antiretral_viral_therapy.store_continuation_card'); -}); \ No newline at end of file diff --git a/docker/statistics/Modules/Hiv/bitbucket-pipelines.yml b/docker/statistics/Modules/Hiv/bitbucket-pipelines.yml deleted file mode 100644 index e850a8fd..00000000 --- a/docker/statistics/Modules/Hiv/bitbucket-pipelines.yml +++ /dev/null @@ -1,19 +0,0 @@ -image: alpine/git:latest - -pipelines: - branches: - main: - - step: - name: Merge To Beta - script: - - git remote set-url origin https://Kabricks:${APP_SECRET}@bitbucket.org/dcsammi/${BITBUCKET_REPO_SLUG} - - git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*" - - git fetch - - git checkout beta - - git merge main - - git commit --amend -m "[skip ci] Merge changes from main" - - git push - - step: - name: Deploy To Test - script: - - echo "Ready to deploy to demo or production!" diff --git a/docker/statistics/Modules/Hiv/module.json b/docker/statistics/Modules/Hiv/module.json deleted file mode 100644 index ad5955ea..00000000 --- a/docker/statistics/Modules/Hiv/module.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "Hiv", - "alias": "hiv", - "description": "Hiv", - "keywords": [], - "priority": 0, - "providers": [ - "Modules\\Hiv\\Providers\\HivServiceProvider" - ], - "files": [] -} diff --git a/docker/statistics/Modules/Insurance/Config/config.php b/docker/statistics/Modules/Insurance/Config/config.php deleted file mode 100644 index 9ad991f6..00000000 --- a/docker/statistics/Modules/Insurance/Config/config.php +++ /dev/null @@ -1,5 +0,0 @@ - 'Insurance' -]; diff --git a/docker/statistics/Modules/Insurance/Http/Controllers/CommunityHealthInsurancePlanController.php b/docker/statistics/Modules/Insurance/Http/Controllers/CommunityHealthInsurancePlanController.php deleted file mode 100644 index ab24b29c..00000000 --- a/docker/statistics/Modules/Insurance/Http/Controllers/CommunityHealthInsurancePlanController.php +++ /dev/null @@ -1,239 +0,0 @@ -middleware('auth'); - $this->middleware('permission:chi_plan-list', ['only' => ['index']]); - $this->middleware('permission:chi_plan-create', ['only' => ['create', 'store']]); - $this->middleware('permission:chi_plan-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:chi_plan-delete', ['only' => ['destroy', 'inactive', 'activate']]); */ - } - /** - * Display a listing of the resource. - * - */ - public function index() { - $chi_plans = CommunityHealthInsurancePlan::orderBy('name', 'asc')->paginate(50); - - return view('insurance::chi_plan.index', compact('chi_plans')); - } - - /** - * Show the form for creating a new resource. - * - */ - public function create() - { - return view('insurance::chi_plan.create'); - } - - /** - * Store a newly created resource in storage. - * - */ - public function store(Request $request) { - request()->validate([ - 'name' => 'required', - 'plan_start_date' => 'required', - 'plan_end_date' => 'required' - ]); - - $start_date = Carbon::createFromFormat('d-m-Y', $request->plan_start_date)->toDateString(); - $end_date = Carbon::createFromFormat('d-m-Y', $request->plan_end_date)->toDateString(); - - $chi_plan = new CommunityHealthInsurancePlan; - $chi_plan->name = $request->name; - $chi_plan->plan_fee = $request->plan_fee; - $chi_plan->plan_start_date = $start_date; - $chi_plan->plan_end_date = $end_date; - $chi_plan->member_annual_limit = $request->member_annual_limit; - $chi_plan->family_annual_limit = $request->family_annual_limit; - $chi_plan->is_authorized_required = $request->is_authorization_required; - $chi_plan->membership_card_color = $request->membership_card_color; - $chi_plan->created_by = auth()->user()->id; - - try { - $chi_plan->save(); - flash($request->name . " CHI plan has been created")->success(); - return redirect("/community_health_insurance_plan/"); - } catch (QueryException $e) { - flash($request->name . " CHI plan already exists!")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - */ - public function show($id) { - $chi_plan = CommunityHealthInsurancePlan::withTrashed()->find($id); - - $drugs = DB::table('drugs')->where('available', 1)->pluck('name', 'id'); - $procedures = DB::table('procedures')->where('available', 1)->pluck('name', 'id'); - $services = DB::table('services')->where('available', 1)->pluck('name', 'id'); - $investigations = DB::table('investigations')->pluck('name', 'id'); - $sundries = DB::table('sundries')->where('available', 1)->pluck('name', 'id'); - - if ($chi_plan) { - return view('insurance::chi_plan.show', compact('chi_plan', 'drugs', 'procedures', 'services', 'investigations', 'sundries')); - } - return redirect()->back(); - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - */ - public function edit($id) { - $chi_plan = CommunityHealthInsurancePlan::findOrFail($id); - - if (!$chi_plan) { - flash()->error("CHI plan not found"); - return redirect('/community_health_insurance_plan/'); - } else { - return view('insurance::chi_plan.edit', compact('chi_plan')); - } - } - - /** - * Update the specified resource in storage. - * - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required', - 'plan_start_date' => 'required', - 'plan_end_date' => 'required' - ]); - - $start_date = Carbon::createFromFormat('d-m-Y', $request->plan_start_date)->toDateString(); - $end_date = Carbon::createFromFormat('d-m-Y', $request->plan_end_date)->toDateString(); - - $chi_plan = CommunityHealthInsurancePlan::findOrFail($id); - $chi_plan->name = $request->name; - $chi_plan->plan_fee = $request->plan_fee; - $chi_plan->plan_start_date = $start_date; - $chi_plan->plan_end_date = $end_date; - $chi_plan->member_annual_limit = $request->member_annual_limit; - $chi_plan->family_annual_limit = $request->family_annual_limit; - $chi_plan->is_authorized_required = $request->is_authorization_required; - $chi_plan->membership_card_color = $request->membership_card_color; - $chi_plan->created_by = auth()->user()->id; - - try { - $chi_plan->update(); - flash($request->name . " CHI plan has been updated")->success(); - return redirect("/community_health_insurance_plan/"); - } catch (QueryException $e) { - flash($request->name . " CHI plan already exists!")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - */ - public function destroy($id) { - $chi_plan = CommunityHealthInsurancePlan::find($id); - - if ($chi_plan->delete()){ - // remove benefits as well as the items - InsuranceBenefit::where('plan_id', $id)->delete(); - InsuranceBenefitItem::where('plan_id', $id)->delete(); - - flash("CHI Plan has been deleted.")->success(); - return redirect('/community_health_insurance_plan/'); - } else { - flash("An error occurred. Please try again later")->error(); - return back()->withInput(); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $chi_plans = CommunityHealthInsurancePlan::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($chi_plans) < 1) { - flash()->error("There is no inactive Plans"); - return redirect('/community_health_insurance_plan/'); - } else { - return view('insurance::chi_plan.inactive', compact('chi_plans')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $chi_plan = CommunityHealthInsurancePlan::withTrashed()->find($id); - - if ($chi_plan->restore()){ - flash("Plan has been activated.")->success(); - return redirect('/community_health_insurance_plan/'); - } - } - - public function print($id) - { - $chi_plan = CommunityHealthInsurancePlan::withTrashed()->find($id); - - $hospital_information = HospitalInformation::find(1); - - $drugs = DB::table('drugs')->where('available', 1)->pluck('name', 'id'); - $procedures = DB::table('procedures')->where('available', 1)->pluck('name', 'id'); - $services = DB::table('services')->where('available', 1)->pluck('name', 'id'); - $investigations = DB::table('investigations')->pluck('name', 'id'); - $sundries = DB::table('sundries')->where('available', 1)->pluck('name', 'id'); - - $data = [ - 'chi_plan' => $chi_plan, - 'hospitalInfo' => $hospital_information, - 'drugs' => $drugs, - 'procedures' => $procedures, - 'services' => $services, - 'investigations' => $investigations, - 'sundries' => $sundries - ]; - - $print_footer = (!is_null($hospital_information->print_footer)) ? '     ' . $hospital_information->print_footer . '' : ''; - - $pdf = SnappyPDF::loadView("insurance::chi_plan/print_plan_details", $data) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline' . $print_footer); - - - return $pdf->inline('C.H.I Details' . date(" d-m-y h:ia") . '.pdf'); - } -} diff --git a/docker/statistics/Modules/Insurance/Http/Controllers/Controller.php b/docker/statistics/Modules/Insurance/Http/Controllers/Controller.php deleted file mode 100755 index 88444bb1..00000000 --- a/docker/statistics/Modules/Insurance/Http/Controllers/Controller.php +++ /dev/null @@ -1,13 +0,0 @@ -middleware('auth'); - $this->middleware('permission:family-head-list'); - $this->middleware('permission:family-head-create', ['only' => ['create', 'store']]); - $this->middleware('permission:family-head-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:family-head-delete', ['only' => ['destroy']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $family_heads = HeadOfFamily::orderBy('id', 'asc') - ->join('patients', 'insurance_heads_of_family.patient_id', '=', 'patients.id') - ->select('insurance_heads_of_family.*', 'patients.phone', 'patients.number')->paginate(200); - - $insurance_groups = InsuranceGroup::pluck('name', 'id'); - $full_names = HeadOfFamily::leftJoin('patients', 'insurance_heads_of_family.patient_id', '=', 'patients.id') - ->select(DB::raw('CONCAT(first_name, " ", last_name, " ", number) AS full_name')) - ->pluck("full_name"); - $patient_numbers = HeadOfFamily::leftJoin('patients', 'insurance_heads_of_family.patient_id', '=', 'patients.id')->pluck('number'); - - return view('insurance::heads_of_family.index', compact('insurance_groups', 'family_heads', 'full_names', 'patient_numbers')); - } - - /** - * Show search results when looking for a family head. - * - */ - public function search(Request $request) { - $insurance_groups = InsuranceGroup::pluck('name', 'id'); - - $criteria = ''; - $filters = []; - - if (!empty($request->full_name)){ - $split_full_name_array = explode(' ', $request->full_name); - - if (is_array($split_full_name_array)) { - $first_name_from_split = $split_full_name_array[0] ?? ""; - $last_name_from_split = $split_full_name_array[1] ?? ""; - // for people with 3, 4 names make sure to get last element - $patient_number_from_split = count($split_full_name_array) > 2 ? array_slice($split_full_name_array, -1)[0] : ''; - - //just only use the patient number from the full name submitted - if ($patient_number_from_split != "") { - $filters[] = ['number', 'LIKE', '%' . $patient_number_from_split . '%']; - $criteria .= 'Number (' . $patient_number_from_split . ') '; - } else { - $filters[] = ['first_name', 'LIKE', '%' . $first_name_from_split . '%']; - $filters[] = ['last_name', 'LIKE', '%' . $last_name_from_split . '%']; - $criteria .= 'Name (' . $request->full_name . ') '; - } - } else { - //just only use the patient number from the full name submitted - $filters[] = ['first_name', 'LIKE', '%' . $request->full_name . '%']; - $criteria .= 'Name (' . $request->full_name . ') '; - } - } - - $family_heads_query = HeadOfFamily::query() - ->leftJoin('patients', 'insurance_heads_of_family.patient_id', '=', 'patients.id') - ->leftJoin('insurance_members', 'insurance_heads_of_family.patient_id', '=', 'insurance_members.patient_id') - ->select('insurance_heads_of_family.*', 'patients.phone', 'patients.number') - ->where($filters)->orderBy('id', 'asc'); - - if ($request->member_type == 1){ - if(!empty($criteria)) $criteria .= 'and '; - $family_heads_query->where('insurance_members.current_insurance_end_date', '>', date('Y-m-d')); - $criteria .= __('heads_of_family.family_heads_with_active_insurance') . ' '; - } elseif ($request->member_type == 2) { - if(!empty($criteria)) $criteria .= 'and '; - $family_heads_query->whereRaw("(`insurance_members`.`current_insurance_end_date` is null or `insurance_members`.`current_insurance_end_date` <= '" . date('Y-m-d') . "')"); - $criteria .= __('heads_of_family.family_heads_with_inactive_insurance') . ' '; - } - $family_heads = $family_heads_query->paginate(200); - $full_names = HeadOfFamily::leftJoin('patients', 'insurance_heads_of_family.patient_id', '=', 'patients.id') - ->select(DB::raw('CONCAT(first_name, " ", last_name, " ", number) AS full_name')) - ->pluck("full_name"); - - return view('insurance::heads_of_family.index', compact('insurance_groups', 'family_heads','criteria', 'full_names')); - } - - /** - * Store a newly created resource in storage. - * - */ - public function store(Request $request) {} - - /** - * Display the specified resource. - * - */ - public function show($id) {} - - /** - * Show the form for editing the specified resource. - * - */ - public function edit($id) {} - - /** - * Update the specified resource in storage. - * - */ - public function update(Request $request, $id) {} - - /** - * Remove the specified resource from storage. - * - */ - public function destroy($id) { - $head_of_family = HeadOfFamily::findOrFail($id); - if(!empty($head_of_family->family_members_ids)){ - flash()->error("Families with members can not be DELETED!"); - return redirect('/heads_of_family/'); - } - elseif($head_of_family->delete()) { - flash("Family was successfully deleted.")->success(); - return redirect('/heads_of_family/'); - }else { - flash()->error("Failed to delete Family!"); - return redirect('/heads_of_family/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $family_heads = HeadOfFamily::onlyTrashed() - ->orderBy('id', 'asc') - ->join('patients', 'insurance_heads_of_family.patient_id', '=', 'patients.id') - ->select('insurance_heads_of_family.*', 'patients.phone', 'patients.number') - ->paginate(50); - - $insurance_groups = DB::table('insurance_groups')->pluck('name', 'id'); - - $insurance_subscriptions = DB::table('insurance_subscriptions')->pluck('end_date', 'group_id'); - - if (empty($family_heads)) { - flash()->error("There is no inactive family heads"); - return redirect('/heads_of_family/'); - } else { - return view('insurance::heads_of_family.inactive', compact('insurance_groups', 'family_heads', 'insurance_subscriptions')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $head_of_family = HeadOfFamily::withTrashed()->find($id); - - //edit is_family record in insurance members table - $insurance_member = InsuranceMember::where(['patient_id' => $head_of_family->patient_id])->first(); - - $insurance_member->is_family_head = 1; - - $patient_id = $insurance_member->patient_id; - $patient = Patient::find($patient_id); - $patient->insurance_status = 1; - $patient->save(); - - if ($head_of_family->restore() && $insurance_member->save()): - flash("Head of Family has been activated.")->success(); - return redirect('/heads_of_family/'); - endif; - } - - public function view_family_members_of_head($family_head_id) - { - $code = ''; - $i = 1; - $members = InsuranceMember::where(['family_id' => $family_head_id])->get(); - - $code .= ''; - $family_total_premiums_to_pay = 0; - $family_members_to_exclude_array = session()->has($family_head_id) ? session()->get($family_head_id) : []; - - //check if families exist in this group - if ($members->count() > 0) { - $code .= ''; - $code .= ''; - - //check if a subscription has already been made to avoid duplication - foreach ($members as $member) { - if (!in_array($member->id, $family_members_to_exclude_array)) { - $code .= ''; - $code .= ''; - $code .= ''; - $code .= ''; - $code .= ''; - $code .= ''; - $code .= ''; - $i++; - $family_total_premiums_to_pay += $member->premium; - } - } - $code .= ''; - $code .= ''; - } - - $code .= '
    #NamePremiumRelation to head
    '; - $code .= $i; - $code .= ''; - $code .= insurance_flag($member->patient_id).' ('.get_name($member->patient_id, "id", "number", "patients").')'; - $code .= ($member->is_family_head == 1) ? ' Family Head' : ''; - $code .= ''; - $code .= ugandan_shillings($member->premium); - $code .= ''; - $code .= get_name($member->relationship_to_head, "id", "name", "family_relations"); - $code .= 'Make family head
    Total'.ugandan_shillings($family_total_premiums_to_pay).'
    '; - //$code .= 'Add new member to this family'; - - return $code; - } - - public function change_family_head($current_head, $member_id) - { - $insurance_member = InsuranceMember::where(['family_id' => $current_head, 'id' => $member_id])->orderBy('id', 'desc')->first(); - $family_head_patient_id = get_name($current_head, "id", "patient_id", "insurance_heads_of_family"); - - if ($insurance_member) { - $head_of_family = HeadOfFamily::find($current_head); - $patient = Patient::withTrashed()->find($insurance_member->patient_id); - - $head_of_family->name = $patient->first_name . " " . $patient->last_name; - $head_of_family->group_id = $insurance_member->group_id; - $head_of_family->patient_id = $patient->id; - $head_of_family->created_by = auth()->user()->id; - $head_of_family->updated_by = auth()->user()->id; - if ($head_of_family->save()) { - $insurance_member->family_id = $head_of_family->id; - $insurance_member->is_family_head = 1; - $insurance_member->update(); - - //update all members related to the previous family head - $attached_insurance_members = InsuranceMember::where(['family_id' => $current_head])->get(); - if (count($attached_insurance_members)) { - foreach ($attached_insurance_members as $attached_member) { - $attached_member->family_id = $head_of_family->id; - $attached_member->is_family_head = ($attached_member->id == $member_id) ? 1 : 0; - $attached_member->update(); - } - } - } - - flash(get_full_name($insurance_member->patient_id, "id", "first_name", "last_name", "patients").' has been made the head from the family of '.get_full_name($family_head_patient_id, "id", "first_name", "last_name", "patients"))->success(); - } else{ - flash('Family member could not be found')->error(); - } - return redirect('heads_of_family'); - } - - public function search_family_head_by_name_number(Request $request) - { - $data = []; - - if ($request->has('q')) { - $search = $request->q; - $data = HeadOfFamily::leftJoin('patients', 'insurance_heads_of_family.patient_id', '=', 'patients.id') - ->select("patients.id", "first_name", "last_name", "number", "phone") - ->where('name', 'LIKE', "%$search%") - ->orWhere('number', 'LIKE', "%$search%") - ->get(); - } - - return response()->json($data); - } - -} diff --git a/docker/statistics/Modules/Insurance/Http/Controllers/InsuranceBenefitController.php b/docker/statistics/Modules/Insurance/Http/Controllers/InsuranceBenefitController.php deleted file mode 100644 index 4c5edaa0..00000000 --- a/docker/statistics/Modules/Insurance/Http/Controllers/InsuranceBenefitController.php +++ /dev/null @@ -1,679 +0,0 @@ -toArray(); - - return view('insurance::insurance_benefits.index', compact('insurance_benefits', 'insurance_plans')); - } - - /** - * Show the form for creating a new resource. - * - */ - public function create() { - $insurance_plans = CommunityHealthInsurancePlan::pluck('name', 'id')->toArray(); - $insurance_plans = ['' => '--select--'] + $insurance_plans; - - $wards = Ward::where('available', 1)->pluck('name', 'id')->prepend('All Wards', '0'); - - return view('insurance::insurance_benefits.create', compact('insurance_plans', 'wards')); - } - - /** - * Store a newly created resource in storage. - * - */ - public function store(Request $request) { - request()->validate([ - 'name' => 'required', - 'waiting_period' => 'required', - 'annual_member_limit' => 'required', - 'annual_family_limit' => 'required', - 'fee' => 'required', - 'plan_id' => 'required', - ]); - - //validation passed - $benefit = new InsuranceBenefit(); - $benefit->name = $request->name; - $benefit->waiting_period = $request->waiting_period; - $benefit->plan_id = $request->plan_id; - $benefit->fee = $request->fee; - $benefit->annual_member_limit = $request->annual_member_limit; - $benefit->annual_family_limit = $request->annual_family_limit; - $benefit->opd_percentage = $request->opd_percentage ?? NULL; - $benefit->ipd_percentage = $request->ipd_percentage ?? NULL; - $benefit->wards = $request->ward_id ? implode(",", $request->ward_id) : "0"; - $benefit->created_by = Auth::id(); - - try { - $benefit->save(); - flash("Insurance Benefit has been created")->success(); - return redirect("/insurance_benefits/"); - } catch (QueryException $e) { - flash("An error occurred. Please try again later")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - */ - public function edit($id) { - $benefit = InsuranceBenefit::find($id); - - $insurance_plans = CommunityHealthInsurancePlan::pluck('name', 'id')->toArray(); - $insurance_plans = ['' => '--select--'] + $insurance_plans; - - $wards = Ward::where('available', 1)->pluck('name', 'id')->prepend('All Wards', '0'); - - return view('insurance::insurance_benefits.edit', compact('benefit', 'insurance_plans', 'wards')); - } - - /** - * Update the specified resource in storage. - * - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required', - 'waiting_period' => 'required', - 'annual_member_limit' => 'required', - 'annual_family_limit' => 'required', - 'fee' => 'required', - 'plan_id' => 'required', - ]); - - //validation passed - $benefit = InsuranceBenefit::find($id); - $benefit->name = $request->name; - $benefit->waiting_period = $request->waiting_period; - $benefit->plan_id = $request->plan_id; - $benefit->fee = $request->fee; - $benefit->annual_member_limit = $request->annual_member_limit; - $benefit->annual_family_limit = $request->annual_family_limit; - $benefit->opd_percentage = $request->opd_percentage ?? NULL; - $benefit->ipd_percentage = $request->ipd_percentage ?? NULL; - $benefit->wards = $request->ward_id ? implode(",", $request->ward_id) : "0"; - $benefit->updated_by = Auth::id(); - - try { - $benefit->save(); - flash("Insurance Benefit has been updated")->success(); - return redirect("/insurance_benefits/"); - } catch (QueryException $e) { - flash("An error occurred. Please try again later")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - */ - public function destroy($id) { - $benefit = InsuranceBenefit::find($id); - - try { - $benefit->delete(); - - // remove the benefit items as well - InsuranceBenefitItem::where('benefit_id', $id)->delete(); - - flash("Insurance Benefit has been deactivated")->success(); - return redirect("/insurance_benefits/"); - } catch (QueryException $e) { - flash("An error occurred. Please try again later")->error(); - return back()->withInput(); - } - } - - /** - * Display a listing of the inactive resource(s). - * - */ - public function inactive() { - $insurance_benefits = InsuranceBenefit::onlyTrashed()->get(); - - $insurance_plans = CommunityHealthInsurancePlan::pluck('name', 'id')->toArray(); - $insurance_plans = ['' => '--select--'] + $insurance_plans; - - return view('insurance::insurance_benefits.inactive', compact('insurance_benefits', 'insurance_plans')); - } - - /** - * Activate the specified resource in storage. - * - */ - public function activate($id) { - $benefit = InsuranceBenefit::withTrashed()->find($id); - - try { - $benefit->restore(); - - // restore the benefit items as well - InsuranceBenefitItem::where('benefit_id', $id)->restore(); - - flash("Insurance Benefit has been restored")->success(); - return redirect("/insurance_benefits/"); - } catch (QueryException $e) { - flash("An error occurred. Please try again later")->error(); - return back()->withInput(); - } - } - - public function details($id) { - $benefit = InsuranceBenefit::find($id); - $drugs = DB::table('drugs')->pluck('name', 'id'); - $procedures = DB::table('procedures')->pluck('name', 'id'); - $services = DB::table('services')->pluck('name', 'id'); - $investigations = DB::table('investigations')->pluck('name', 'id'); - $sundries = DB::table('sundries')->pluck('name', 'id'); - $bed_categories = DB::table('inpatient_bed_categories')->pluck('name', 'id'); - $benefit_drugs = DB::table('insurance_benefit_items')->where('item_type', 4) - ->where('benefit_id', $id)->get(); - $benefit_sundries = DB::table('insurance_benefit_items')->where('item_type', 5) - ->where('benefit_id', $id)->get(); - $benefit_invs = DB::table('insurance_benefit_items')->where('item_type', 3) - ->where('benefit_id', $id)->get(); - $benefit_procedures = DB::table('insurance_benefit_items')->where('item_type', 2) - ->where('benefit_id', $id)->get(); - $benefit_services = DB::table('insurance_benefit_items')->where('item_type', 1) - ->where('benefit_id', $id)->get(); - $benefit_bed_categories = InsuranceInpatientAccommodationRates::where('benefit_id', $id)->limit(5)->get(); - - return view('insurance::insurance_benefits.details', compact('benefit', 'drugs', 'procedures', 'services', 'investigations', - 'sundries', 'benefit_drugs', 'benefit_sundries', 'benefit_invs', 'benefit_procedures', 'benefit_services', 'benefit_bed_categories', 'bed_categories')); - } - - public function add_items($id, $item_type, Request $request) { - $benefit = InsuranceBenefit::find($id); - $insurance_benefit_item = DB::table('insurance_benefit_items')->where('benefit_id', $id) - ->where('item_type', $item_type)->first(); - $exclude_ids = $insurance_benefit_item ? explode(",", $insurance_benefit_item->item_id) : []; - $selected_ids = $request->items_ids ?? []; - $table_name = ""; - - if ($item_type == 1) { - $table_name = 'services'; - } elseif ($item_type == 2) { - $table_name = 'procedures'; - } elseif ($item_type == 3) { - $table_name = 'investigations'; - } elseif ($item_type == 4) { - $table_name = 'drugs'; - } elseif ($item_type == 5) { - $table_name = 'sundries'; - } - - if ($table_name != "") { - $items = DB::table($table_name)->where('available', 1)->whereNotIn('id', $exclude_ids)->whereNull('deleted_at')->pluck('name', 'id'); - - if ($request->submit == "select_all_items") { - $selected_items = DB::table($table_name)->where('available', 1)->whereNotIn('id', $exclude_ids)->whereNull('deleted_at')->get(['name', 'id', 'non_insured_price']); - } else { - $selected_items = DB::table($table_name)->where('available', 1)->whereIn('id', $selected_ids)->whereNull('deleted_at')->get(['name', 'id', 'non_insured_price']); - } - } else { - $selected_items = []; - $items = []; - } - - return view('insurance::insurance_benefits.add_items', compact('items', 'benefit', 'item_type', 'selected_items')); - } - - public function save_items(Request $request) { - if (!is_array($request->item_id) || count($request->item_id) < 1) { - flash("Please select items before continuing")->error(); - return back()->withInput(); - } - - $benefit_id = $request->benefit_id; - $item_type = $request->item_type; - $items = $request->item_id; - $co_payment = $request->co_payment; - $ipd_co_payment = $request->ipd_co_payment; - $capitation_fee = $request->capitation_fee; - $annual_member_limit = $request->annual_member_limit; - $annual_family_limit = $request->annual_family_limit; - $authorisation = $request->authorisation; - $apply_opd_percentage = $request->apply_opd_percentage ?? []; - $apply_ipd_percentage = $request->apply_ipd_percentage ?? []; - - DB::beginTransaction(); - - // check if procedures for this benefit already exist - $insurance_benefit_item = DB::table('insurance_benefit_items')->where('benefit_id', $benefit_id) - ->where('item_type', $item_type)->first(); - - if ($insurance_benefit_item) { - $insurance_benefit_item_arr = explode(",", $insurance_benefit_item->item_id); - $insurance_benefit_item_arr = array_merge($insurance_benefit_item_arr, $items); - - $insurance_benefit_item = InsuranceBenefitItem::find($insurance_benefit_item->id); - $insurance_benefit_item->item_id = implode(",", $insurance_benefit_item_arr); - $insurance_benefit_item->updated_by = Auth::id(); - } else { - $insurance_benefit_item = new InsuranceBenefitItem(); - $insurance_benefit_item->plan_id = get_name($benefit_id, 'id', 'plan_id', 'insurance_benefits'); - $insurance_benefit_item->benefit_id = $benefit_id; - $insurance_benefit_item->item_type = $item_type; - $insurance_benefit_item->item_id = implode(",", $items); - $insurance_benefit_item->created_by = Auth::id(); - } - - try { - $insurance_benefit_item->save(); - } catch (\Exception $e) { - DB::rollback(); - flash("An error occurred. Please try again or contact Stre@mline Support")->error(); - return back()->withInput(); - } - - for ($i = 0; $i < count($items); $i++) { - switch ($item_type) { - case 1: - $item = Services::find($items[$i]); - break; - case 2: - $item = Procedure::find($items[$i]); - break; - case 3: - $item = Investigation::find($items[$i]); - break; - case 4: - $item = Drug::find($items[$i]); - break; - case 5: - $item = Sundry::find($items[$i]); - break; - default: - $item = false; - } - - if ($item) { - $json_array = [$benefit_id => [ - "co_payment" => $co_payment[$i], - "ipd_co_payment" => $ipd_co_payment[$i], - "capitation_fee" => $capitation_fee[$i], - "annual_member_limit" => $annual_member_limit[$i], - "annual_family_limit" => $annual_family_limit[$i], - "authorisation" => $authorisation[$i], - "apply_opd_percentage" => (in_array($items[$i], $apply_opd_percentage) ? 1 : 0), - "apply_ipd_percentage" => (in_array($items[$i], $apply_ipd_percentage) ? 1 : 0), - ]]; - - $insurance_benefit_details = json_decode($item->insurance_benefit_details, true) ?? []; - $insurance_benefit_details = $insurance_benefit_details + $json_array; - - $item->insurance_benefit_details = json_encode($insurance_benefit_details); - - try { - $item->save(); - } catch (\Exception $e) { - DB::rollback(); - flash("An error occurred. Please try again or contact Stre@mline Support")->error(); - return back()->withInput(); - } - } - } - - DB::commit(); - flash("Items have been added to the benefit")->success(); - - return redirect('/insurance_benefits/details/' . $benefit_id); - } - - public function view_items($id, $item_type) { - $benefit = InsuranceBenefit::find($id); - - switch ($item_type) { - case 1: - $items = DB::table('services')->pluck('name', 'id'); - break; - case 2: - $items = DB::table('procedures')->pluck('name', 'id'); - break; - case 3: - $items = DB::table('investigations')->pluck('name', 'id'); - break; - case 4: - $items = DB::table('drugs')->pluck('name', 'id'); - break; - case 5: - $items = DB::table('sundries')->pluck('name', 'id'); - break; - default: - $items = []; - break; - } - - $benefit_items = DB::table('insurance_benefit_items')->where('item_type', $item_type) - ->where('benefit_id', $id)->get(); - - return view('insurance::insurance_benefits.view_items', compact('items', 'benefit_items', 'benefit', 'item_type')); - } - - public function remove_item($item_id, $item_type, $benefit_id) { - switch ($item_type) { - case 1: - $item = Services::find($item_id); - break; - case 2: - $item = Procedure::find($item_id); - break; - case 3: - $item = Investigation::find($item_id); - break; - case 4: - $item = Drug::find($item_id); - break; - case 5: - $item = Sundry::find($item_id); - break; - default: - $item = false; - } - - if ($item) { - $insurance_benefit_details = json_decode($item->insurance_benefit_details, true); - - if (isset($insurance_benefit_details[$benefit_id])) { - unset($insurance_benefit_details[$benefit_id]); - - $item->insurance_benefit_details = json_encode($insurance_benefit_details); - - $benefit_items = DB::table('insurance_benefit_items')->where('item_type', $item_type) - ->where('benefit_id', $benefit_id)->first(); - $benefit_items_array = explode(",", $benefit_items->item_id); - $benefit_items_array = array_diff($benefit_items_array, [$item_id]); - - $insurance_benefit_item = InsuranceBenefitItem::find($benefit_items->id); - $insurance_benefit_item->item_id = implode(",", $benefit_items_array); - $insurance_benefit_item->updated_by = Auth::id(); - - try { - $item->save(); - $insurance_benefit_item->save(); - - // find any tariffs and remove them as well - DB::table('insurance_tariffs')->where('item_id', $item_id) - ->where('item_type', $item_type)->where('benefit_id', $benefit_id)->update(['deleted_at' => Carbon::now()]); - - flash("Item has been removed from the benefit")->success(); - } catch (\Exception $e) { - flash("An error occurred. Please try again later")->error(); - } - } else { - flash("An error occurred. Please try again later")->error(); - } - } else { - flash("An error occurred. Please try again later")->error(); - } - - return redirect('/insurance_benefits/view_items/' . $benefit_id . '/' . $item_type); - } - - public function edit_items($id, $item_type) { - $benefit = InsuranceBenefit::find($id); - - switch ($item_type) { - case 1: - $items = DB::table('services')->pluck('name', 'id'); - break; - case 2: - $items = DB::table('procedures')->pluck('name', 'id'); - break; - case 3: - $items = DB::table('investigations')->pluck('name', 'id'); - break; - case 4: - $items = DB::table('drugs')->pluck('name', 'id'); - break; - case 5: - $items = DB::table('sundries')->where('available', 1)->pluck('name', 'id'); - break; - default: - $items = []; - break; - } - - $benefit_items = DB::table('insurance_benefit_items')->where('item_type', $item_type) - ->where('benefit_id', $id)->get(); - - return view('insurance::insurance_benefits.edit_items', compact('items', 'benefit_items', 'benefit', 'item_type')); - } - - public function update_items(Request $request) { - $benefit_id = $request->benefit_id; - $item_type = $request->item_type; - $items = $request->item_id; - $co_payment = $request->co_payment; - $ipd_co_payment = $request->ipd_co_payment; - $capitation_fee = $request->capitation_fee; - $annual_member_limit = $request->annual_member_limit; - $annual_family_limit = $request->annual_family_limit; - $authorisation = $request->authorisation; - $apply_opd_percentage = $request->apply_opd_percentage ?? []; - $apply_ipd_percentage = $request->apply_ipd_percentage ?? []; - - DB::beginTransaction(); - - for ($i = 0; $i < count($items); $i++) { - switch ($item_type) { - case 1: - $item = Services::find($items[$i]); - break; - case 2: - $item = Procedure::find($items[$i]); - break; - case 3: - $item = Investigation::find($items[$i]); - break; - case 4: - $item = Drug::find($items[$i]); - break; - case 5: - $item = Sundry::find($items[$i]); - break; - default: - $item = false; - } - - if ($item) { - $json_array = [ - "ipd_co_payment" => $ipd_co_payment[$i], - "co_payment" => $co_payment[$i], - "capitation_fee" => $capitation_fee[$i], - "annual_member_limit" => $annual_member_limit[$i], - "annual_family_limit" => $annual_family_limit[$i], - "authorisation" => $authorisation[$i], - "apply_opd_percentage" => (in_array($items[$i], $apply_opd_percentage) ? 1 : 0), - "apply_ipd_percentage" => (in_array($items[$i], $apply_ipd_percentage) ? 1 : 0), - ]; - - $insurance_benefit_details = json_decode($item->insurance_benefit_details, true); - $insurance_benefit_details[$benefit_id] = $json_array; - $item->insurance_benefit_details = json_encode($insurance_benefit_details); - - try { - $item->save(); - } catch (\Exception $e) { - DB::rollback(); - flash("An error occurred. Please try again or contact Stre@mline Support")->error(); - return back()->withInput(); - } - } - } - - DB::commit(); - flash("Benefit items have been updated")->success(); - - return redirect('/insurance_benefits/details/' . $benefit_id); - } - - public function add_inpatient_accommodation($id, Request $request) { - $bed_categories = InpatientBedCategory::pluck('name', 'id')->toArray(); - $bed_categories = $bed_categories + ['' => '--select--']; - - $benefit = InsuranceBenefit::find($id); - - if ($request->bed_category) { - $selected_bed_category = InpatientBedCategory::find($request->bed_category); - } else { - $selected_bed_category = false; - } - - return view('insurance::insurance_benefits.add_inpatient_accommodation', compact('bed_categories', 'benefit', 'id', - 'selected_bed_category')); - } - - public function save_inpatient_accommodation(Request $request) { - $accommodation = new InsuranceInpatientAccommodationRates(); - - $accommodation->bed_category_id = $request->bed_category_id; - $accommodation->benefit_id = $request->benefit_id; - $accommodation->plan_id = $request->plan_id; - $accommodation->cost_type = $request->cost_type; - - $accommodation->cost_per_night = $request->cost_per_night; - $accommodation->chi_cost_per_night = $request->chi_cost_per_night; - $accommodation->cost_first_night = $request->cost_first_night; - $accommodation->chi_cost_first_night = $request->chi_cost_first_night; - $accommodation->cost_range = $request->cost_range; - $accommodation->chi_cost_range = $request->chi_cost_range; - $accommodation->cost_after = $request->cost_after; - $accommodation->chi_cost_after = $request->chi_cost_after; - - $accommodation->annual_member_limit = $request->annual_member_limit; - $accommodation->annual_family_limit = $request->annual_family_limit; - $accommodation->gender = $request->gender; - $accommodation->age_limit = $request->age_limit_start . ',' . $request->age_limit_end; - $accommodation->age_type = $request->age_type; - $accommodation->authorisation_required = $request->authorisation; - $accommodation->created_by = Auth::id(); - - try { - $accommodation->save(); - flash("Accommodation has been added to benefit")->success(); - return redirect('/insurance_benefits/details/' . $request->benefit_id); - } catch (\Exception $e) { - flash("An error occurred. Please try again later")->error(); - return back()->withInput(); - } - } - - public function view_inpatient_accommodation($id) { - $bed_categories = DB::table('inpatient_bed_categories')->where('available', 1)->pluck('name', 'id'); - $rates = InsuranceInpatientAccommodationRates::where('benefit_id', $id)->get(); - $benefit = InsuranceBenefit::find($id); - - return view('insurance::insurance_benefits.view_inpatient_accommodation', compact('bed_categories', 'rates', 'benefit')); - } - - public function view_accommodation_details($id) { - $rate = InsuranceInpatientAccommodationRates::find($id); - - if ($rate) { - $bed_category = InpatientBedCategory::find($rate->bed_category_id); - - if ($bed_category) { - $benefit = InsuranceBenefit::find($rate->benefit_id); - - return view('insurance::insurance_benefits.view_accommodation_details', compact('rate', 'bed_category', 'benefit')); - } - } - - flash('An error occurred!')->error(); - return redirect('/home'); - } - - public function edit_inpatient_accommodation($id) { - $rate = InsuranceInpatientAccommodationRates::find($id); - $bed_category = InpatientBedCategory::find($rate->bed_category_id); - $benefit = InsuranceBenefit::find($rate->benefit_id); - - return view('insurance::insurance_benefits.edit_inpatient_accommodation', compact('rate', 'bed_category', 'benefit')); - } - - public function update_inpatient_accommodation(Request $request) { - $accommodation = InsuranceInpatientAccommodationRates::find($request->rate_id); - - $accommodation->cost_per_night = $request->cost_per_night; - $accommodation->chi_cost_per_night = $request->chi_cost_per_night; - $accommodation->cost_first_night = $request->cost_first_night; - $accommodation->chi_cost_first_night = $request->chi_cost_first_night; - $accommodation->cost_range = $request->cost_range; - $accommodation->chi_cost_range = $request->chi_cost_range; - $accommodation->cost_after = $request->cost_after; - $accommodation->chi_cost_after = $request->chi_cost_after; - - $accommodation->annual_member_limit = $request->annual_member_limit; - $accommodation->annual_family_limit = $request->annual_family_limit; - $accommodation->gender = $request->gender; - $accommodation->age_limit = $request->age_limit_start . ',' . $request->age_limit_end; - $accommodation->age_type = $request->age_type; - $accommodation->authorisation_required = $request->authorisation; - $accommodation->updated_by = Auth::id(); - - try { - $accommodation->save(); - flash("Accommodation has been updated")->success(); - return redirect('/insurance_benefits/view_inpatient_accommodation/' . $request->benefit_id); - } catch (\Exception $e) { - flash("An error occurred. Please try again later")->error(); - return back()->withInput(); - } - } - - public function delete_inpatient_accommodation($id) { - $rate = InsuranceInpatientAccommodationRates::find($id); - - try { - $benefit_id = $rate->benefit_id; - - $rate->delete(); - - flash("Inpatient Accommodation has been deactivated")->success(); - return redirect('/insurance_benefits/view_inpatient_accommodation/' . $benefit_id); - } catch (QueryException $e) { - flash("An error occurred. Please try again later")->error(); - return back()->withInput(); - } - } -} diff --git a/docker/statistics/Modules/Insurance/Http/Controllers/InsuranceClaimsController.php b/docker/statistics/Modules/Insurance/Http/Controllers/InsuranceClaimsController.php deleted file mode 100644 index 8d68d36c..00000000 --- a/docker/statistics/Modules/Insurance/Http/Controllers/InsuranceClaimsController.php +++ /dev/null @@ -1,515 +0,0 @@ -patient_id) && $request->patient_id != 0) { - $search_text .= "Patient: " . get_full_name($request->patient_id, 'id', 'first_name', 'last_name', 'patients'); - $search_text .= " (" . get_name($request->patient_id, 'id', 'number', 'patients') . ") "; - - $claims = DB::table('insurance_claims')->join('patients', 'patients.id', '=', 'insurance_claims.patient_id') - ->where('insurance_claims.patient_id', $request->patient_id) - ->where('insurance_claims.claim_status', 1) - ->whereNull('insurance_claims.deleted_at') - ->where(function($query) { - $query->where('insurance_claims.is_authorisation_required', 1) - ->orWhereRaw('FIND_IN_SET(1,insurance_claims.is_item_authorisation_required)'); - })->groupBy('insurance_claims.patient_id') - ->select(['insurance_claims.*', 'patients.first_name', 'patients.last_name', 'patients.number', DB::raw('SUM(insurance_claims.primary_plan_claim_total) AS primary_plan_claim_total_sum')]) - ->get(); - } else { - switch ($request->search_date_by){ - case 'yesterday': - $end_date = Carbon::yesterday()->endOfDay(); - $start_date = Carbon::yesterday()->startOfDay(); - $search_text .= "Yesterday "; - break; - case 'custom_date': - $end_date = Carbon::parse($request->start_date)->endOfDay(); - $start_date = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "From: " . streamline_date($start_date) . " "; - break; - case 'custom_date_range': - $end_date = Carbon::parse($request->end_date)->endOfDay(); - $start_date = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "From: " . streamline_date($start_date) . " to " . streamline_date($end_date) . " "; - break; - case 'today': - default: - $end_date = Carbon::today()->endOfDay(); - $start_date = Carbon::today()->startOfDay(); - $search_text .= "Today "; - break; - } - - $claims = DB::table('insurance_claims')->join('patients', 'patients.id', '=', 'insurance_claims.patient_id') - ->whereBetween('insurance_claims.created_at', [$start_date, $end_date]) - ->where('insurance_claims.claim_status', 1) - ->whereNull('insurance_claims.deleted_at') - ->where(function($query) { - $query->where('insurance_claims.is_authorisation_required', 1) - ->orWhereRaw('FIND_IN_SET(1,insurance_claims.is_item_authorisation_required)'); - })->groupBy('insurance_claims.patient_id') - ->select(['insurance_claims.*', 'patients.first_name', 'patients.last_name', 'patients.number', DB::raw('SUM(insurance_claims.primary_plan_claim_total) AS primary_plan_claim_total_sum')]) - ->get(); - } - - $insurance_plans = DB::table('community_health_insurance_plans')->pluck('name', 'id'); - - return view('insurance::insurance_claims.view_incoming_authorisations', compact('claims', 'insurance_plans', 'search_text')); - } - - public function view_incoming_authorisation_details($id) { - $claims = DB::table('insurance_claims')->where('patient_id', $id) - ->where('claim_status', 1) - ->whereNull('deleted_at') - ->where(function($query) { - $query->where('is_authorisation_required', 1) - ->orWhereRaw('FIND_IN_SET(1,is_item_authorisation_required)'); - }) - ->get(); - - $patient_details = DB::table('patients')->join('insurance_members', 'patients.id', '=', 'insurance_members.patient_id') - ->where('patients.id', $id) - ->select(['patients.*', 'insurance_members.group_id', 'insurance_members.photo as insurance_photo', 'insurance_members.family_id', - 'insurance_members.membership_start_date', 'insurance_members.member_account_number', 'insurance_members.is_family_head']) - ->first(); - - $insurance_plans = DB::table('community_health_insurance_plans')->pluck('name', 'id'); - - $benefits = DB::table('insurance_benefits')->pluck('name', 'id'); - $tariffs = DB::table('insurance_tariffs')->pluck('name', 'id'); - - return view('insurance::insurance_claims.view_incoming_authorisation_details', compact('claims', 'tariffs', 'insurance_plans', 'benefits', 'patient_details')); - } - - public function authorise_item($id, $position): int { - $claim = InsuranceClaim::find($id); - - if ($claim) { - $authorisations = explode(",", $claim->is_item_authorisation_required); - - if (isset($authorisations[$position])) { - $authorisations[$position] = 0; - $json_array = ["authorised_by" => Auth::id(), "position" => $position, "timestamp" => date('Y-m-d H:i:s')]; - - $claim->is_item_authorisation_required = implode(",", $authorisations); - - $item_authorisation_details = json_decode($claim->item_authorisation_details, true) ?? []; - $item_authorisation_details = $item_authorisation_details + $json_array; - - $claim->item_authorisation_details = json_encode($item_authorisation_details); - - // check if the claim needs to be cleared - if ($claim->adjudication_required == 1) { - $item_authorisations = explode(",", $claim->is_item_authorisation_required); - $plan_limit_error = explode(",", $claim->plan_limit_error); - $benefit_waiting_period_error = explode(",", $claim->benefit_waiting_period_error); - $benefit_limit_error = explode(",", $claim->benefit_limit_error); - $item_limit_error = explode(",", $claim->item_limit_error); - - if (!(in_array(1, $item_authorisations) || $claim->is_authorisation_required == 1 || $claim->plan_validity_error == 1 || - in_array(1, $benefit_waiting_period_error) || in_array(1, $plan_limit_error) || - in_array(1, $benefit_limit_error) || in_array(1, $item_limit_error))) { - $claim->adjudication_required = 2; - $claim->claim_status = 2; - } - } - - try { - $claim->save(); - return 1; - } catch (\ErrorException $exception) { - return 0; - } - } else { - return 0; - } - } else { - return 0; - } - } - - public function authorise_claim($id) { - $claim = InsuranceClaim::find($id); - - if ($claim) { - $claim->is_authorisation_required = 0; - $claim->authorised_by = Auth::id(); - $claim->authorised_at = Carbon::now(); - - // check if the claim needs to be cleared - if ($claim->adjudication_required == 1) { - $item_authorisations = explode(",", $claim->is_item_authorisation_required); - $plan_limit_error = explode(",", $claim->plan_limit_error); - $benefit_waiting_period_error = explode(",", $claim->benefit_waiting_period_error); - $benefit_limit_error = explode(",", $claim->benefit_limit_error); - $item_limit_error = explode(",", $claim->item_limit_error); - - if (!(in_array(1, $item_authorisations) || $claim->plan_validity_error == 1 || - in_array(1, $benefit_waiting_period_error) || in_array(1, $plan_limit_error) || - in_array(1, $benefit_limit_error) || in_array(1, $item_limit_error))) { - $claim->adjudication_required = 2; - $claim->claim_status = 2; - } - } - - try { - $claim->save(); - flash("Claim has been authorised successfully")->success(); - } catch (\ErrorException $exception) { - flash("An error occurred. Claim has not been authorised")->error(); - } - - return redirect('/insurance_claims/view_incoming_authorisation_details/' . $claim->patient_id); - } else { - flash("An error occurred. Claim has not been authorised")->error(); - - return redirect('/insurance_claims/view_incoming_authorisations'); - } - } - - public function authorise_all_claims(Request $request) { - $claim_ids = explode(",", $request->claim_ids); - - foreach ($claim_ids as $id) { - $claim = InsuranceClaim::find($id); - - if ($claim) { - $claim->is_authorisation_required = 0; - $claim->authorised_by = Auth::id(); - $claim->authorised_at = Carbon::now(); - - // check if the claim needs to be cleared - if ($claim->adjudication_required == 1) { - $item_authorisations = explode(",", $claim->is_item_authorisation_required); - $plan_limit_error = explode(",", $claim->plan_limit_error); - $benefit_waiting_period_error = explode(",", $claim->benefit_waiting_period_error); - $benefit_limit_error = explode(",", $claim->benefit_limit_error); - $item_limit_error = explode(",", $claim->item_limit_error); - - if (!(in_array(1, $item_authorisations) || $claim->plan_validity_error == 1 || - in_array(1, $benefit_waiting_period_error) || in_array(1, $plan_limit_error) || - in_array(1, $benefit_limit_error) || in_array(1, $item_limit_error))) { - $claim->adjudication_required = 2; - $claim->claim_status = 2; - } - } - - try { - $claim->save(); - } catch (\ErrorException $exception) {} - } - } - - flash("Claim has been authorised successfully")->success(); - - return redirect('/insurance_claims/view_incoming_authorisations'); - } - - public function incoming_claim_adjudication_errors(Request $request) { - $search_text = ""; - - // if patient id is active, get all records regardless of date; else search by date - if (isset($request->patient_id) && $request->patient_id != 0) { - $search_text .= "Patient: " . get_full_name($request->patient_id, 'id', 'first_name', 'last_name', 'patients'); - $search_text .= " (" . get_name($request->patient_id, 'id', 'number', 'patients') . ") "; - - $claims = DB::table('insurance_claims')->join('patients', 'patients.id', '=', 'insurance_claims.patient_id') - ->where('insurance_claims.patient_id', $request->patient_id) - ->where('insurance_claims.claim_status', 1) - ->whereNull('insurance_claims.deleted_at') - ->where(function($query) { - $query->where('insurance_claims.plan_validity_error', 1) - ->orWhereRaw('FIND_IN_SET(1,insurance_claims.benefit_waiting_period_error)') - ->orWhereRaw('FIND_IN_SET(1,insurance_claims.plan_limit_error)') - ->orWhereRaw('FIND_IN_SET(1,insurance_claims.benefit_limit_error)') - ->orWhereRaw('FIND_IN_SET(1,insurance_claims.item_limit_error)'); - })->groupBy('insurance_claims.patient_id') - ->select(['insurance_claims.*', 'patients.first_name', 'patients.last_name', 'patients.number', DB::raw('SUM(insurance_claims.primary_plan_claim_total) AS primary_plan_claim_total_sum')]) - ->get(); - } else { - switch ($request->search_date_by){ - case 'yesterday': - $end_date = Carbon::yesterday()->endOfDay(); - $start_date = Carbon::yesterday()->startOfDay(); - $search_text .= "Yesterday "; - break; - case 'custom_date': - $end_date = Carbon::parse($request->start_date)->endOfDay(); - $start_date = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "From: " . streamline_date($start_date) . " "; - break; - case 'custom_date_range': - $end_date = Carbon::parse($request->end_date)->endOfDay(); - $start_date = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "From: " . streamline_date($start_date) . " to " . streamline_date($end_date) . " "; - break; - case 'today': - default: - $end_date = Carbon::today()->endOfDay(); - $start_date = Carbon::today()->startOfDay(); - $search_text .= "Today "; - break; - } - - $claims = DB::table('insurance_claims')->join('patients', 'patients.id', '=', 'insurance_claims.patient_id') - ->whereBetween('insurance_claims.created_at', [$start_date, $end_date]) - ->where('insurance_claims.claim_status', 1) - ->whereNull('insurance_claims.deleted_at') - ->where(function($query) { - $query->where('insurance_claims.plan_validity_error', 1) - ->orWhereRaw('FIND_IN_SET(1,insurance_claims.benefit_waiting_period_error)') - ->orWhereRaw('FIND_IN_SET(1,insurance_claims.plan_limit_error)') - ->orWhereRaw('FIND_IN_SET(1,insurance_claims.benefit_limit_error)') - ->orWhereRaw('FIND_IN_SET(1,insurance_claims.item_limit_error)'); - })->groupBy('insurance_claims.patient_id') - ->select(['insurance_claims.*', 'patients.first_name', 'patients.last_name', 'patients.number', DB::raw('SUM(insurance_claims.primary_plan_claim_total) AS primary_plan_claim_total_sum')]) - ->get(); - } - - $insurance_plans = DB::table('community_health_insurance_plans')->pluck('name', 'id'); - - return view('insurance::insurance_claims.incoming_claim_adjudication_errors', compact('claims', 'insurance_plans', 'search_text')); - } - - public function incoming_claim_adjudication_errors_details($id) { - $claims = DB::table('insurance_claims')->where('patient_id', $id) - ->where('claim_status', 1) - ->whereNull('deleted_at') - ->where(function($query) { - $query->where('insurance_claims.plan_validity_error', 1) - ->orWhereRaw('FIND_IN_SET(1,insurance_claims.benefit_waiting_period_error)') - ->orWhereRaw('FIND_IN_SET(1,insurance_claims.plan_limit_error)') - ->orWhereRaw('FIND_IN_SET(1,insurance_claims.benefit_limit_error)') - ->orWhereRaw('FIND_IN_SET(1,insurance_claims.item_limit_error)'); - }) - ->get(); - - $patient_details = DB::table('patients')->join('insurance_members', 'patients.id', '=', 'insurance_members.patient_id') - ->where('patients.id', $id) - ->select(['patients.*', 'insurance_members.group_id', 'insurance_members.photo as insurance_photo', 'insurance_members.family_id', - 'insurance_members.membership_start_date', 'insurance_members.member_account_number', 'insurance_members.is_family_head', 'insurance_members.chi_plan']) - ->first(); - - $benefits = DB::table('insurance_benefits')->pluck('name', 'id'); - $tariffs = DB::table('insurance_tariffs')->pluck('name', 'id'); - - return view('insurance::insurance_claims.incoming_claim_adjudication_errors_details', compact('claims', 'tariffs', 'benefits', 'patient_details')); - } - - public function override_plan_validity($id) { - $claim = InsuranceClaim::find($id); - - if ($claim) { - $claim->plan_validity_error = 0; - $claim->plan_validity_error_details = json_encode(["overridden_by" => Auth::id(), "timestamp" => date('Y-m-d H:i:s')]); - - // check if the claim needs to be cleared - if ($claim->adjudication_required == 1) { - $item_authorisations = explode(",", $claim->is_item_authorisation_required); - $plan_limit_error = explode(",", $claim->plan_limit_error); - $benefit_waiting_period_error = explode(",", $claim->benefit_waiting_period_error); - $benefit_limit_error = explode(",", $claim->benefit_limit_error); - $item_limit_error = explode(",", $claim->item_limit_error); - - if (!(in_array(1, $item_authorisations) || $claim->is_authorisation_required == 1 || - in_array(1, $benefit_waiting_period_error) || in_array(1, $plan_limit_error) || - in_array(1, $benefit_limit_error) || in_array(1, $item_limit_error))) { - $claim->adjudication_required = 2; - $claim->claim_status = 2; - } - } - - try { - $claim->save(); - flash("Plan validity error has been overridden")->success(); - } catch (\ErrorException $exception) { - flash("An error occurred. Claim error has not been overridden")->error(); - } - - return redirect('/insurance_claims/incoming_claim_adjudication_errors_details/' . $claim->patient_id); - } else { - flash("An error occurred. Claim was not found")->error(); - - return redirect('/insurance_claims/view_incoming_authorisations'); - } - } - - public function override_benefit_period($id, $position): int { - $claim = InsuranceClaim::find($id); - - if ($claim) { - $benefit_errors = explode(",", $claim->benefit_waiting_period_error); - - if (isset($benefit_errors[$position])) { - $benefit_errors[$position] = 0; - $json_array = ["overridden_by" => Auth::id(), "position" => $position, "timestamp" => date('Y-m-d H:i:s')]; - - $claim->benefit_waiting_period_error = implode(",", $benefit_errors); - - $benefit_errors_details = (json_decode($claim->benefit_waiting_period_error_details, true) ?? []) + $json_array; - - $claim->benefit_waiting_period_error_details = json_encode($benefit_errors_details); - - // check if the claim needs to be cleared - if ($claim->adjudication_required == 1) { - $item_authorisations = explode(",", $claim->is_item_authorisation_required); - $plan_limit_error = explode(",", $claim->plan_limit_error); - $benefit_waiting_period_error = explode(",", $claim->benefit_waiting_period_error); - $benefit_limit_error = explode(",", $claim->benefit_limit_error); - $item_limit_error = explode(",", $claim->item_limit_error); - - if (!(in_array(1, $item_authorisations) || $claim->is_authorisation_required == 1 || $claim->plan_validity_error == 1 || - in_array(1, $benefit_waiting_period_error) || in_array(1, $plan_limit_error) || - in_array(1, $benefit_limit_error) || in_array(1, $item_limit_error))) { - $claim->adjudication_required = 2; - $claim->claim_status = 2; - } - } - - try { - $claim->save(); - return 1; - } catch (\ErrorException $exception) {} - } - } - - return 0; - } - - public function override_benefit_limit($id, $position): int { - $claim = InsuranceClaim::find($id); - - if ($claim) { - $benefit_errors = explode(",", $claim->benefit_limit_error); - - if (isset($benefit_errors[$position])) { - $benefit_errors[$position] = 0; - $json_array = ["overridden_by" => Auth::id(), "position" => $position, "timestamp" => date('Y-m-d H:i:s')]; - - $claim->benefit_limit_error = implode(",", $benefit_errors); - - $benefit_errors_details = (json_decode($claim->benefit_limit_error_details, true) ?? []) + $json_array; - - $claim->benefit_limit_error_details = json_encode($benefit_errors_details); - - // check if the claim needs to be cleared - if ($claim->adjudication_required == 1) { - $item_authorisations = explode(",", $claim->is_item_authorisation_required); - $plan_limit_error = explode(",", $claim->plan_limit_error); - $benefit_waiting_period_error = explode(",", $claim->benefit_waiting_period_error); - $benefit_limit_error = explode(",", $claim->benefit_limit_error); - $item_limit_error = explode(",", $claim->item_limit_error); - - if (!(in_array(1, $item_authorisations) || $claim->is_authorisation_required == 1 || $claim->plan_validity_error == 1 || - in_array(1, $benefit_waiting_period_error) || in_array(1, $plan_limit_error) || - in_array(1, $benefit_limit_error) || in_array(1, $item_limit_error))) { - $claim->adjudication_required = 2; - $claim->claim_status = 2; - } - } - - try { - $claim->save(); - return 1; - } catch (\ErrorException $exception) {} - } - } - - return 0; - } - - public function override_item_limit($id, $position): int { - $claim = InsuranceClaim::find($id); - - if ($claim) { - $item_errors = explode(",", $claim->item_limit_error); - - if (isset($item_errors[$position])) { - $item_errors[$position] = 0; - $json_array = ["overridden_by" => Auth::id(), "position" => $position, "timestamp" => date('Y-m-d H:i:s')]; - - $claim->item_limit_error = implode(",", $item_errors); - - $item_errors_details = (json_decode($claim->item_limit_error_details, true) ?? []) + $json_array; - - $claim->item_limit_error_details = json_encode($item_errors_details); - - // check if the claim needs to be cleared - if ($claim->adjudication_required == 1) { - $item_authorisations = explode(",", $claim->is_item_authorisation_required); - $plan_limit_error = explode(",", $claim->plan_limit_error); - $benefit_waiting_period_error = explode(",", $claim->benefit_waiting_period_error); - $benefit_limit_error = explode(",", $claim->benefit_limit_error); - $item_limit_error = explode(",", $claim->item_limit_error); - - if (!(in_array(1, $item_authorisations) || $claim->is_authorisation_required == 1 || $claim->plan_validity_error == 1 || - in_array(1, $benefit_waiting_period_error) || in_array(1, $plan_limit_error) || - in_array(1, $benefit_limit_error) || in_array(1, $item_limit_error))) { - $claim->adjudication_required = 2; - $claim->claim_status = 2; - } - } - - try { - $claim->save(); - return 1; - } catch (\ErrorException $exception) {} - } - } - - return 0; - } - - public function override_plan_limit($id, $position): int { - $claim = InsuranceClaim::find($id); - - if ($claim) { - $plan_errors = explode(",", $claim->plan_limit_error); - - if (isset($plan_errors[$position])) { - $plan_errors[$position] = 0; - $json_array = ["overridden_by" => Auth::id(), "position" => $position, "timestamp" => date('Y-m-d H:i:s')]; - - $claim->plan_limit_error = implode(",", $plan_errors); - $plan_errors_details = (json_decode($claim->plan_limit_error_details, true) ?? []) + $json_array; - $claim->plan_limit_error_details = json_encode($plan_errors_details); - - // check if the claim needs to be cleared - if ($claim->adjudication_required == 1) { - $item_authorisations = explode(",", $claim->is_item_authorisation_required); - $plan_limit_error = explode(",", $claim->plan_limit_error); - $benefit_waiting_period_error = explode(",", $claim->benefit_waiting_period_error); - $benefit_limit_error = explode(",", $claim->benefit_limit_error); - $item_limit_error = explode(",", $claim->item_limit_error); - - if (!(in_array(1, $item_authorisations) || $claim->is_authorisation_required == 1 || $claim->plan_validity_error == 1 || - in_array(1, $benefit_waiting_period_error) || in_array(1, $plan_limit_error) || - in_array(1, $benefit_limit_error) || in_array(1, $item_limit_error))) { - $claim->adjudication_required = 2; - $claim->claim_status = 2; - } - } - - try { - $claim->save(); - return 1; - } catch (\ErrorException $exception) {} - } - } - - return 0; - } -} diff --git a/docker/statistics/Modules/Insurance/Http/Controllers/InsuranceController.php b/docker/statistics/Modules/Insurance/Http/Controllers/InsuranceController.php deleted file mode 100755 index 720b4513..00000000 --- a/docker/statistics/Modules/Insurance/Http/Controllers/InsuranceController.php +++ /dev/null @@ -1,35 +0,0 @@ -middleware('auth'); - $this->middleware('permission:insurance-home', ['only' => ['index']]); - $this->middleware('permission:insurance-product-setup', ['only' => ['product_setup']]); - $this->middleware('permission:insurance-scheme-administration', ['only' => ['scheme_administration']]); - } - - public function index() { - return view('insurance::insurance.index'); - } - - /** - * Display the insurance scheme admin dashboard. - * - */ - public function product_setup(){ - return view('insurance::insurance.product_setup'); - } - - /** - * Display insurance scheme admin dashboard. - * - */ - public function scheme_administration() { - return view('insurance::insurance.scheme_administration'); - } - -} diff --git a/docker/statistics/Modules/Insurance/Http/Controllers/InsuranceDiseaseGroupsController.php b/docker/statistics/Modules/Insurance/Http/Controllers/InsuranceDiseaseGroupsController.php deleted file mode 100644 index 4ce3fc87..00000000 --- a/docker/statistics/Modules/Insurance/Http/Controllers/InsuranceDiseaseGroupsController.php +++ /dev/null @@ -1,145 +0,0 @@ -where('available', 1)->pluck('name', 'id'); - $drugs = DB::table('drugs')->where('available', 1)->pluck('name', 'id'); - $investigations = DB::table('investigations')->pluck('name', 'id'); - $procedures = DB::table('procedures')->where('available', 1)->pluck('name', 'id'); - - return view('insurance::insurance_disease_groups.create', compact('investigations', 'diagnoses', 'drugs', 'procedures')); - } - - public function store(Request $request) { - request()->validate([ - 'name' => 'required', - 'diagnoses' => 'required' - ]); - - $group = new InsuranceDiseaseGroup(); - - $group->name = $request->name; - $group->diagnoses = implode(",", $request->diagnoses); - $group->investigations = $request->investigations ? implode(",", $request->investigations) : ''; - $group->treatments = $request->drugs ? implode(",", $request->drugs) : ''; - $group->procedures = $request->procedures ? implode(",", $request->procedures) : ''; - $group->created_by = Auth::id(); - - try { - $group->save(); - flash("Insurance Disease Group has been created")->success(); - return redirect("/insurance_disease_groups/index"); - } catch (QueryException $e) { - flash("An error occurred. Please try again later")->error(); - return back()->withInput(); - } - } - - public function edit($id) { - $group = InsuranceDiseaseGroup::find($id); - - $diagnoses = DB::table('diagnoses')->where('available', 1)->pluck('name', 'id'); - $drugs = DB::table('drugs')->where('available', 1)->pluck('name', 'id'); - $investigations = DB::table('investigations')->pluck('name', 'id'); - $procedures = DB::table('procedures')->where('available', 1)->pluck('name', 'id'); - - return view('insurance::insurance_disease_groups.edit', compact('group', 'diagnoses', 'drugs', 'investigations', 'procedures')); - } - - public function update(Request $request) { - request()->validate([ - 'name' => 'required', - 'diagnoses' => 'required' - ]); - - $group = InsuranceDiseaseGroup::find($request->id); - - $group->name = $request->name; - $group->diagnoses = implode(",", $request->diagnoses); - $group->investigations = $request->investigations ? implode(",", $request->investigations) : ''; - $group->treatments = $request->drugs ? implode(",", $request->drugs) : ''; - $group->procedures = $request->procedures ? implode(",", $request->procedures) : ''; - $group->updated_by = Auth::id(); - - try { - $group->save(); - flash("Insurance Disease Group has been updated")->success(); - return redirect("/insurance_disease_groups/index"); - } catch (QueryException $e) { - flash("An error occurred. Please try again later")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - */ - public function delete($id) { - $group = InsuranceDiseaseGroup::find($id); - - try { - $group->delete(); - flash("Insurance Disease Group has been deactivated")->success(); - return redirect("/insurance_disease_groups/index"); - } catch (QueryException $e) { - flash("An error occurred. Please try again later")->error(); - return back()->withInput(); - } - } - - /** - * Display a listing of the inactive resource(s). - * - */ - public function inactive() { - $groups = InsuranceDiseaseGroup::onlyTrashed()->get(); - - return view('insurance::insurance_disease_groups.inactive', compact('groups')); - } - - /** - * Activate the specified resource in storage. - * - */ - public function restore($id) { - $group = InsuranceDiseaseGroup::withTrashed()->find($id); - - try { - $group->restore(); - flash("Insurance Disease Group has been restored")->success(); - return redirect("/insurance_disease_groups/index"); - } catch (QueryException $e) { - flash("An error occurred. Please try again later")->error(); - return back()->withInput(); - } - } - - public function details($id) { - $group = InsuranceDiseaseGroup::find($id); - - $diagnoses = DB::table('diagnoses')->where('available', 1)->pluck('name', 'id'); - $drugs = DB::table('drugs')->where('available', 1)->pluck('name', 'id'); - $investigations = DB::table('investigations')->pluck('name', 'id'); - $procedures = DB::table('procedures')->where('available', 1)->pluck('name', 'id'); - - return view('insurance::insurance_disease_groups.details', compact('investigations', 'diagnoses', 'drugs', 'procedures', 'group')); - } -} diff --git a/docker/statistics/Modules/Insurance/Http/Controllers/InsuranceGroupController.php b/docker/statistics/Modules/Insurance/Http/Controllers/InsuranceGroupController.php deleted file mode 100755 index 0d53a921..00000000 --- a/docker/statistics/Modules/Insurance/Http/Controllers/InsuranceGroupController.php +++ /dev/null @@ -1,282 +0,0 @@ -middleware('auth'); - $this->middleware('permission:insurance-group-list'); - $this->middleware('permission:insurance-group-create', ['only' => ['create', 'store']]); - $this->middleware('permission:insurance-group-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:insurance-group-delete', ['only' => ['destroy']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - $insurance_groups = InsuranceGroup::orderBy('name', 'asc')->paginate(100); - $used_groups = DB::table('insurance_members')->whereNull('deleted_at')->distinct('group_id')->pluck('group_id')->toArray(); - $insurance_groups_select = InsuranceGroup::orderBy('name', 'asc')->pluck('name', 'id')->prepend('- Select Group -', ''); - - return view('insurance::insurance_groups.index', compact('insurance_groups', 'used_groups', 'insurance_groups_select')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - $countries = DB::table('countries')->whereNull('deleted_at')->pluck('name','id')->prepend('- Select country of origin - ', ''); - $chi_risks = DB::table('community_health_insurance_risks')->whereNull('deleted_at')->pluck('name','id')->prepend('None', '0'); - - return view('insurance::insurance_groups.create', compact('countries', 'chi_risks')); - } - - /** - * Store a newly created resource in storage. - * - * @param Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - request()->validate([ - 'name' => 'required', - 'contact_name' => 'required', - 'contact_number' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - $insurance_group = new InsuranceGroup; - - $insurance_group->name = $request->name; - $insurance_group->contact_name = $request->contact_name; - $insurance_group->contact_number = $request->contact_number; - $insurance_group->group_email = $request->group_email; - $insurance_group->country_id = $request->country_id; - $insurance_group->last_fees_billing_date = is_null($request->last_fees_billing_date) ? null : Carbon::createFromFormat('d-m-Y', $request->last_fees_billing_date)->toDateString(); - $insurance_group->last_fees_payment_date = is_null($request->last_fees_payment_date) ? null : Carbon::createFromFormat('d-m-Y', $request->last_fees_payment_date)->toDateString(); - $insurance_group->risk_ids = is_null($request->risk_id) ? null : implode(",", $request->risk_id); - $insurance_group->created_by = $logged_in_user_id; - $insurance_group->updated_by = $logged_in_user_id; - - - if ($insurance_group->save()): - flash($request->name . " Insurance Group has been saved")->success(); - return redirect("/insurance_groups/"); - else: - flash("There was an error")->error(); - endif; - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $insurance_group = InsuranceGroup::where(['id' => $id])->first(); - - if (!$insurance_group) { - flash()->error("There is no such insurance group"); - return redirect('/insurance_groups/'); - } else { - $countries = DB::table('countries')->pluck('name','id')->prepend('- Select country of origin - ', ''); - $chi_risks = DB::table('community_health_insurance_risks')->whereNull('deleted_at')->pluck('name','id')->prepend('None', '0'); - return view('insurance::insurance_groups.edit', compact('insurance_group', 'countries', 'chi_risks')); - } - } - - /** - * Update the specified resource in storage. - * - * @param Request $request - * @param int $id - * @return Application|\Illuminate\Foundation\Application|RedirectResponse|Redirector|void - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required', - 'contact_name' => 'required', - 'contact_number' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - - $insurance_group = InsuranceGroup::find($id); - $insurance_group->name = $request->name; - $insurance_group->contact_name = $request->contact_name; - $insurance_group->contact_number = $request->contact_number; - $insurance_group->group_email = $request->group_email; - $insurance_group->country_id = $request->country_id; - $insurance_group->last_fees_billing_date = Carbon::createFromFormat('d-m-Y', $request->last_fees_billing_date)->toDateString(); - $insurance_group->last_fees_payment_date = Carbon::createFromFormat('d-m-Y', $request->last_fees_payment_date)->toDateString(); - $insurance_group->risk_ids = is_null($request->risk_id) ? null : implode(",", $request->risk_id); - $insurance_group->updated_by = $logged_in_user_id; - - if ($insurance_group->save()): - flash($request->name . " Insurance Group has been updated")->success(); - return redirect("/insurance_groups/"); - else: - flash("There was an error")->error(); - endif; - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - */ - public function destroy($id) { - $insurance_group = InsuranceGroup::find($id); - - if ($insurance_group->delete()): - flash("Insurance Group has been deleted.")->success(); - return redirect('/insurance_groups/'); - endif; - } - - /** - * Display a listing of the inactive resource(s). - * - */ - public function inactive() { - $insurance_groups = InsuranceGroup::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($insurance_groups) < 1) { - flash()->error("There is no inactive insurance group"); - return redirect('/insurance_groups/'); - } else { - return view('insurance::insurance_groups.inactive', compact('insurance_groups')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return Application|\Illuminate\Foundation\Application|Redirector|RedirectResponse|void - */ - public function activate($id) { - $insurance_group = InsuranceGroup::withTrashed()->find($id); - - if ($insurance_group->restore()): - flash("Insurance group has been activated.")->success(); - return redirect('/insurance_groups/'); - endif; - } - - public function insurance_group_details($id) { - - $insurance_members = DB::table('insurance_members') - ->where('insurance_members.group_id', $id) - ->join('insurance_heads_of_family', 'insurance_members.family_id', '=', 'insurance_heads_of_family.id') - ->join('patients', 'insurance_members.patient_id', '=', 'patients.id') - ->select('patients.first_name', 'patients.last_name', 'patients.id', 'patients.number', 'insurance_heads_of_family.name') - ->orderByDesc('insurance_members.family_id') - ->get(); - - $members_count = DB::table('insurance_members')->where('group_id', $id)->count(); - - $result = DB::table('insurance_groups')->select('name')->where('id', $id)->first(); - $group_name = $result->name; - - // get group subscription status - $insurance_subscriptions_details = explode("/", check_insurance_group_status($id)); - - $start_date = $insurance_subscriptions_details[1]; - $end_date = $insurance_subscriptions_details[2]; - - if ($insurance_subscriptions_details[0] == 1) { - $insurance_status = 'Active'; - } else { - $insurance_status = 'Inactive'; - } - - return view('insurance::insurance_groups.insurance_group_details', compact('insurance_members', 'members_count', 'group_name', 'start_date', 'end_date', 'insurance_status', 'id')); - } - - public function get_families_of_group($group_id) - { - $group_details = InsuranceGroup::find($group_id); - $attached_families = HeadOfFamily::where('group_id', $group_id)->get(); - $code = ''; - $code .= ''; - $counter = 0; - - $family_members_to_exclude_array = []; - $all_member_ids_to_exclude = session()->has("member_ids_to_exclude") ? session()->get("member_ids_to_exclude") : []; - $all_family_ids_to_exclude = session()->has("family_ids_to_exclude") ? session()->get("family_ids_to_exclude") : []; - - if (count($attached_families) > 0) { - $code .= ''; - $code .= ''; - foreach ($attached_families as $family) { - if (!in_array( $family->id, $all_family_ids_to_exclude)) { - $counter++; - $family_head_name = $family->name; - $family_members_array = explode(",", $family->family_members_ids); - $family_premiums_array = explode(",", $family->family_member_premiums); - - $code .= ''; - $code .= ''; - $code .= ''; - $code .= ''; - } - } - $code .= ''; - } - - $code .= '
    Family headMembers with their premiums
    '. $counter.'. '.$family_head_name.'
    Exclude this family
    '; - for ($i=0; $i < count($family_members_array); $i++) { - if (!in_array($family_members_array[$i], $all_member_ids_to_exclude)) { - $member = insurance_flag(get_name($family_members_array[$i], "id", "patient_id", "insurance_members")); - $code .= '- '.$member.' ('.ugandan_shillings($family_premiums_array[$i]).') Exclude member

    '; - } else{ - $family_members_to_exclude_array[] = $family_members_array[$i]; - } - } - $code .= '
    '; - - return $code; - } - - public function searchByGroup(Request $request): RedirectResponse - { - if (is_numeric($request->group_id)) { - return redirect('/insurance_groups/insurance_group_details/' . $request->group_id); - } else { - flash()->error("Invalid group id"); - return redirect('insurance_groups'); - } - } - -} diff --git a/docker/statistics/Modules/Insurance/Http/Controllers/InsuranceMembersController.php b/docker/statistics/Modules/Insurance/Http/Controllers/InsuranceMembersController.php deleted file mode 100755 index f25f6c5a..00000000 --- a/docker/statistics/Modules/Insurance/Http/Controllers/InsuranceMembersController.php +++ /dev/null @@ -1,978 +0,0 @@ -middleware('permission:insurance-member-list'); - $this->middleware('permission:insurance-member-create', ['only' => ['create', 'store']]); - $this->middleware('permission:insurance-member-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:insurance-member-delete', ['only' => ['destroy']]); - } - - /** - * Display a listing of the resource. - * - */ - public function index() { - $insurance_family = HeadOfFamily::pluck('name', 'id'); - - $insurance_members = InsuranceMember::join('patients', 'insurance_members.patient_id', '=', 'patients.id') - ->select('insurance_members.*', 'patients.number', 'patients.category_id') - ->paginate(200); - - $total_registered = DB::table('insurance_members')->whereNull('deleted_at')->get()->count(); - $total_active_insurance = DB::table('insurance_members')->whereNull('deleted_at') - ->whereRaw("(`current_insurance_end_date` > '" . date('Y-m-d') . "')") - ->get()->count(); - - $total_inactive_insurance = DB::table('insurance_members')->whereNull('deleted_at') - ->whereRaw("(`current_insurance_end_date` is null or `current_insurance_end_date` <= '" . date('Y-m-d') . "')") - ->get()->count(); - - $insurance_groups_select = InsuranceGroup::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $insurance_groups_select = ['' => '- select -'] + $insurance_groups_select; - - $patient_categories = PatientCategory::pluck('name', 'id'); - - $insurance_groups = InsuranceGroup::pluck('name', 'id'); - - $relations = FamilyRelationship::pluck('name', 'id'); - $plans = CommunityHealthInsurancePlan::pluck('name', 'id'); - - $full_names = DB::table('patients')->whereNull('deleted_at') - ->select(DB::raw('CONCAT(first_name, " ", last_name, " - ", number, " - (", phone, ")") AS full_name')) - ->pluck("full_name"); - - return view('insurance::insurance_members.index', compact('insurance_members', 'patient_categories', 'insurance_groups', 'insurance_family', 'total_registered', 'relations', 'insurance_groups_select', - 'plans', 'total_active_insurance', 'total_inactive_insurance', 'full_names')); - } - - public function insurance_card_print_index() { - $insurance_family = DB::table('insurance_heads_of_family')->whereNull('deleted_at') - ->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - $insurance_members = []; - - $insurance_groups = DB::table('insurance_groups')->whereNull('deleted_at') - ->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $insurance_groups_select = ['' => '- select -'] + $insurance_groups; - $insurance_family_select = ['' => '- select -'] + $insurance_family; - - $patient_categories = PatientCategory::pluck('name', 'id'); - - $relations = FamilyRelationship::pluck('name', 'id'); - $plans = CommunityHealthInsurancePlan::pluck('name', 'id'); - - return view ('insurance::insurance_members.insurance_card_print_index', compact('insurance_members', 'patient_categories', 'insurance_groups', 'insurance_family', 'relations', 'insurance_groups_select','insurance_family_select', 'plans')); - } - - public function search(Request $request){ - $insurance_family = HeadOfFamily::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - $total_registered = DB::table('insurance_members')->whereNull('deleted_at')->get()->count(); - $total_active_insurance = DB::table('insurance_members')->whereNull('deleted_at') - ->whereRaw("(`current_insurance_end_date` > '" . date('Y-m-d') . "')") - ->get()->count(); - - $total_inactive_insurance = DB::table('insurance_members')->whereNull('deleted_at') - ->whereRaw("(`current_insurance_end_date` is null or `current_insurance_end_date` <= '" . date('Y-m-d') . "')") - ->get()->count(); - - $patient_categories = PatientCategory::pluck('name', 'id'); - - $insurance_groups = InsuranceGroup::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $insurance_groups_select = ['' => '- select -'] + $insurance_groups; - $insurance_family_select = ['' => '- select -'] + $insurance_family; - - $relations = FamilyRelationship::pluck('name', 'id'); - $plans = CommunityHealthInsurancePlan::pluck('name', 'id'); - - $criteria = ''; - $filters = []; - $full_name_search = $request->full_name; - - if ($full_name_search) { - $split_full_name_array = explode(' ', $full_name_search); - - if (is_array($split_full_name_array)) { - $first_name_from_split = $split_full_name_array[0] ?? ""; - $last_name_from_split = $split_full_name_array[1] ?? ""; - $patient_number_from_split = count($split_full_name_array) > 2 ? array_slice($split_full_name_array, -3)[0] : ''; - - //just only use the patient number from the full name submitted - if ($patient_number_from_split != "") { - $filters[] = ['number', 'LIKE', '%' . $patient_number_from_split . '%']; - $criteria .= 'Number (' . $patient_number_from_split . ') '; - } else { - $filters[] = ['first_name', 'LIKE', '%' . $first_name_from_split . '%']; - $filters[] = ['last_name', 'LIKE', '%' . $last_name_from_split . '%']; - $criteria .= 'Name (' . $full_name_search . ') '; - } - } else { - //just only use the patient number from the full name submitted - $filters[] = ['first_name', 'LIKE', '%' . $full_name_search . '%']; - $criteria .= 'Name (' . $full_name_search . ') '; - } - } - - if ($request->group_id) { - $filters[] = ['insurance_members.group_id', '=', $request->group_id]; - $criteria .= 'Insurance Group ('. ($insurance_groups[$request->group_id] ?? 'N/A') .') '; - } - if ($request->insurance_family) { - $filters[] = ['insurance_members.family_id', '=', $request->insurance_family]; - $criteria .= 'Family ('. ($insurance_family[$request->insurance_family] ?? 'N/A') .') '; - } - - $insurance_members_query = InsuranceMember::query() - ->join('patients', 'insurance_members.patient_id', '=', 'patients.id') - ->select('insurance_members.*', 'patients.number', 'patients.category_id') - ->where($filters)->orderBy('id', 'desc'); - - if ($request->member_type == 1){ - $insurance_members_query->where('insurance_members.current_insurance_end_date', '>', date('Y-m-d')); - $criteria .= __('insurance_members.members_with_active_insurance') . ' '; - } elseif ($request->member_type == 2) { - $insurance_members_query->whereRaw("(`insurance_members`.`current_insurance_end_date` is null or `insurance_members`.`current_insurance_end_date` <= '" . date('Y-m-d') . "')"); - $criteria .= __('insurance_members.members_with_expired_insurance') . ' '; - } - - $insurance_members = $insurance_members_query->paginate(200); - - $full_names = DB::table('patients')->whereNull('deleted_at') - ->select(DB::raw('CONCAT(first_name, " ", last_name, " - ", number, " - (", phone, ")") AS full_name')) - ->pluck("full_name"); - - if(isset($request->is_from_card_print)) { - return view('insurance::insurance_members.insurance_card_print_index', compact('insurance_members', 'patient_categories', 'insurance_groups', 'insurance_family', 'total_registered', 'relations', 'criteria', 'insurance_groups_select', 'plans', 'insurance_family_select', 'total_active_insurance', 'total_inactive_insurance')); - } else { - return view('insurance::insurance_members.index', compact('insurance_members', 'patient_categories', 'insurance_groups', 'insurance_family', 'total_registered', 'relations', 'criteria', 'insurance_groups_select', 'insurance_family_select', 'plans', 'total_active_insurance', 'total_inactive_insurance', 'full_names')); - } - } - - /** - * Show the form for creating a new resource. - * - * @return Response - */ - public function create() { - $insurance_groups = InsuranceGroup::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - $insurance_groups = ['' => '- select -'] + $insurance_groups; - - $families = HeadOfFamily::orderBy('name', 'asc')->pluck('id')->toArray(); - - $relations = FamilyRelationship::orderBy('id', 'asc')->pluck('name', 'id')->toArray(); - - $relations = ['' => '- select -'] + $relations; - - $occupations = Occupation::orderBy('name')->pluck('name', 'id')->toArray(); - $patient_categories = PatientCategory::where('available', 1)->orderby('name')->pluck('name', 'id')->toArray(); - $districts = District::orderBy('name')->pluck('name', 'id')->toArray(); - $marital_statuses = MaritalStatus::pluck('name', 'id')->toArray(); - $religions = Religion::orderBy('name')->pluck('name', 'id')->toArray(); - $relationships = FamilyRelationship::orderBy('name')->pluck('name', 'id')->toArray(); - - $occupations = ['' => '- select -'] + $occupations; - $districts = ['' => '- select -'] + $districts; - $religions = ['' => '- select -'] + $religions; - $relationships = ['' => '- select -'] + $relationships; - $countries = DB::table('countries')->whereNull('deleted_at')->pluck('name','id')->prepend('- Select country of origin - ', ''); - $hospital_information = HospitalInformation::first(); - $dynamic_counties = [];//DB::table('counties')->pluck('name','id')->prepend('- Select County - ', ''); - $dynamic_sub_counties = [];//DB::table('subcounties')->pluck('name','id')->prepend('- Select Sub County - ', ''); - $dynamic_parishes = []; //DB::table('parishes')->pluck('name','id')->prepend('- Select Parish - ', ''); - $person_titles = DB::table('person_titles')->whereNull('deleted_at')->pluck('name','id')->prepend('- Select Title - ', ''); - $chi_plans = DB::table('community_health_insurance_plans')->whereNull('deleted_at')->pluck('name','id')->prepend('- Select Plan - ', ''); - $chi_risks = DB::table('community_health_insurance_risks')->whereNull('deleted_at')->pluck('name','id')->prepend('None', '0'); - - return view('insurance::insurance_members.create', compact('insurance_groups', 'families', 'relations', 'dynamic_counties', 'dynamic_parishes', 'dynamic_sub_counties', 'relationships', 'religions', 'occupations', 'districts', 'marital_statuses', 'patient_categories', 'hospital_information', 'countries', 'person_titles', 'chi_plans', 'chi_risks')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return Response - */ - public function store(Request $request) { - request()->validate([ - 'group_id' => 'required', - 'first_name' => 'required', - 'last_name' => 'required', - 'date_of_birth' => 'required_without:age_in_years', - 'age_in_years' => 'required_without:date_of_birth', - 'marital_status' => 'required', - 'occupation' => 'required', - 'religion' => 'required', - 'patient_category' => 'required', - 'duplicate_research_id' => 'nullable|required_with:research_id|same:research_id|unique:insurance_members,research_id', - 'research_id' => 'nullable|required_with:duplicate_research_id|same:duplicate_research_id|unique:insurance_members' - ], [ - 'duplicate_research_id.required_with' => 'Research ID field must be filled.', - 'duplicate_research_id.same' => 'Research ID values must be similar or identical.', - 'research_id.required_with' => 'Research ID field must be filled.', - 'research_id.same' => 'Research ID values must be similar or identical.', - 'research_id.unique' => 'Research ID already exists, please enter another one.', - 'duplicate_research_id.unique' => 'Research ID already exists, please enter another one.', - ]); - - // save the patient - $patient = new Patient; - $patient->first_name = $request->first_name; - $patient->last_name = $request->last_name; - $calculated_date_of_birth = null; - if (is_null($request->date_of_birth)) { - $age_in_years = $request->age_in_years; - $calculated_dob = Carbon::now()->subYears($age_in_years); - $calculated_date_of_birth = $calculated_dob->toDateString(); - $patient->date_of_birth = $calculated_date_of_birth; - } else { - $patient->date_of_birth = Carbon::createFromFormat('d/m/Y', $request->date_of_birth)->toDateString(); - } - - $patient->marital_status = $request->marital_status; - $patient->occupation_id = $request->occupation; - $patient->religion_id = $request->religion; - $patient->category_id = $request->patient_category; - $patient->insurance_status = 1; - $patient->citizenship = 1; - $patient->country_id = 6; //uganda - - // split the residence values - $residence_array = explode(",", $request->residence); - $patient->district_id = $residence_array[4] ?? 0; - $patient->county_id = $residence_array[3] ?? 0; - $patient->subcounty_id = $residence_array[2] ?? 0; - $patient->parish_id = $residence_array[1] ?? 0; - $patient->village_id = $residence_array[0] ?? 0; - - $patient->gender = $request->gender; - $patient->next_of_kin = $request->next_of_kin; - $patient->next_of_kin_relationship = $request->next_of_kin_relationship; - $patient->phone_of_next_of_kin = removeSpaces($request->next_of_kin_phone); - $patient->phone = removeSpaces($request->phone); - $patient->national_id = $request->national_id; - $patient->phone_owner = $request->phone_owner; // problem - $patient->hospital_contact = $request->hospital_contact; - $patient->language = $request->language; - $patient->lc_one = $request->lc_one; - $patient->created_by = Auth::id(); - - if ($patient->save()){ - $prefix = DB::table('hospital_information')->where('id', 1)->value('patient_number_abbr'); - $new_id = quadLimit($patient->id); - $patient_number = $prefix . "-" . $new_id; - - DB::table('patients')->where('id', $new_id)->update(['number' => $patient_number]); // Updating the patient number - - flash('Patient with patient number ' . $patient_number . ' has been successfully registered')->success(); - - // add patient to insurance - $insurance_member = new InsuranceMember; - - if ($request->hasFile('photo')){ - $photo = $request->file('photo'); - $photo_name = $patient->id . "." . $photo->getClientOriginalExtension(); - $destinationPath = public_path('/uploads/images/insurance_members'); - $photoPath = $destinationPath . "/" . $photo_name; - $photo->move($destinationPath, $photoPath); - $insurance_member->photo = $photo_name; - } else { - $insurance_member->photo = 'placeholder.png'; - } - - $logged_in_user_id = Auth::id(); - - if ($request->is_family_head == 1){ - $head_of_family = new HeadOfFamily; - $head_of_family->name = $request->first_name . " " . $request->last_name; - $head_of_family->group_id = $request->group_id; - $head_of_family->patient_id = $patient->id; - $head_of_family->risk_ids = is_null($request->family_risk_id) ? null : implode(",", $request->family_risk_id); - $head_of_family->created_by = $logged_in_user_id; - $head_of_family->updated_by = $logged_in_user_id; - $head_of_family->save(); - - $insurance_member->family_id = $head_of_family->id; - } else { - $insurance_member->family_id = $request->family_id; - } - - $insurance_member->group_id = $request->group_id; - $insurance_member->relationship_to_head = $request->relationship_to_head; - $insurance_member->patient_id = $patient->id; - $insurance_member->is_family_head = $request->is_family_head; - $insurance_member->title = $request->title; - $insurance_member->premium = $request->member_premium; - $insurance_member->chi_plan = $request->chi_plan; - $insurance_member->other_plan = $request->other_plan; - $insurance_member->risk_ids = is_null($request->risk_id) ? null : implode(",", $request->risk_id); - $insurance_member->membership_start_date = is_null($request->membership_start_date) ? null : Carbon::createFromFormat('d/m/Y', $request->membership_start_date)->toDateString(); - $insurance_member->membership_registration_date = is_null($request->membership_registration_date) ? null : Carbon::createFromFormat('d/m/Y', $request->membership_registration_date)->toDateString(); - $insurance_member->social_security_number = $request->social_security_number; - $insurance_member->research_id = $request->research_id; - $insurance_member->next_anniversary_date = is_null($request->next_anniversary_date) ? null : Carbon::createFromFormat('d/m/Y', $request->next_anniversary_date)->toDateString(); - $insurance_member->created_by = $logged_in_user_id; - - try { - - $insurance_member->save(); - - if ($request->has('does_member_have_existing_premium') && $request->does_member_have_existing_premium == 1 && !is_null($request->existing_premium_start_date)) { - - $existing_premium_start_date = is_null($request->existing_premium_start_date) ? null : Carbon::createFromFormat('d/m/Y', $request->existing_premium_start_date)->toDateString(); - $existing_premium_end_date = is_null($request->existing_premium_end_date) ? null : Carbon::createFromFormat('d/m/Y', $request->existing_premium_end_date)->toDateString(); - - $insurance_member->existing_premium_start_date = $existing_premium_start_date; - $insurance_member->existing_premium_end_date = $existing_premium_end_date; - - $track_receipts = new TrackReceipt; - $track_receipts->created_by = Auth::id(); - $track_receipts->reason = 'Premiums'; - $track_receipts->save(); - $receipt_number = sprintf("%04u", $track_receipts->id); - - add_member_to_insurance_subscription($insurance_member->group_id, $insurance_member->id, $insurance_member->premium, - $insurance_member->family_id, $existing_premium_start_date, $existing_premium_end_date, $receipt_number); - - $insurance_member->current_insurance_end_date = $existing_premium_end_date; - $insurance_member->current_insurance_amount_paid = $insurance_member->premium; - } - - $insurance_member_account = allocate_insurance_member_account_number($insurance_member->id, $insurance_member->group_id); - $insurance_member->member_account_number = $insurance_member_account; - $insurance_member->update(); - - //update the insurance_head_of_family table with the new member_id and their respective premium - update_insurance_heads_of_family_record($insurance_member->family_id, $insurance_member->id, $insurance_member->premium); - - flash("Insurance Member has been saved")->success(); - return redirect("/insurance_members/"); - } catch (QueryException $e) { - flash("Failed to register patient. Please try again")->error(); - return back()->withInput(); - } - } else { - flash("Failed to register patient. Please try again")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return Response - */ - public function show($id) { -// - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return Response - */ - public function edit($id) { - $insurance_groups = InsuranceGroup::orderBy('name', 'asc') - ->pluck('name', 'id'); - - $families = HeadOfFamily::orderBy('name', 'asc') - ->pluck('name', 'id'); - - $relations = FamilyRelationship::orderBy('name', 'asc') - ->pluck('name', 'id'); - - $insurance_member = InsuranceMember::where(['id' => $id])->first(); - - $uploaded_photo = asset('uploads/images/insurance_members') . '/' . $insurance_member->photo; - - $person_titles = DB::table('person_titles')->whereNull('deleted_at')->pluck('name','id')->prepend('- Select Title - ', ''); - $chi_plans = DB::table('community_health_insurance_plans')->whereNull('deleted_at')->pluck('name','id')->prepend('- Select Plan - ', ''); - $chi_risks = DB::table('community_health_insurance_risks')->whereNull('deleted_at')->pluck('name','id')->prepend('None', '0'); - - if (!$insurance_member) { - flash()->error("There is no such Insurance Member"); - return redirect('/insurance_members/'); - } else { - return view('insurance::insurance_members.edit', compact('insurance_groups', 'insurance_member', 'families', 'relations', 'uploaded_photo', 'person_titles', 'chi_plans', 'chi_risks')); - } - } - - /** - * Update the specified resource in storage. - */ - public function update(Request $request, $id) { - $insurance_member = InsuranceMember::find($id); - - $logged_in_user_id = Auth::id(); - request()->validate([ - 'duplicate_research_id' => 'nullable|required_with:research_id|same:research_id|unique:insurance_members,research_id,'.$id, - 'research_id' => 'nullable|required_with:research_id|same:research_id|unique:insurance_members,research_id,'.$id, - ],[ - 'duplicate_research_id.required_with' => 'Research ID field must be filled.', - 'duplicate_research_id.same' => 'Research ID values must be similar or identical.', - 'research_id.required_with' => 'Research ID field must be filled.', - 'research_id.same' => 'Research ID values must be similar or identical.', - 'research_id.unique' => 'Research ID already exists, please enter another one.', - 'duplicate_research_id.unique' => 'Research ID already exists, please enter another one.', - ]); - - if ($request->hasFile('photo') && $request->file('photo') !== null) { - $photo = $request->file('photo'); - $photo_name = $insurance_member->patient_id . "." . $photo->getClientOriginalExtension(); - $destinationPath = public_path('/uploads/images/insurance_members'); - $photoPath = $destinationPath . "/" . $photo_name; - $photo->move($destinationPath, $photoPath); - $insurance_member->photo = $photo_name; - } - - if ($request->is_family_head == 1){ - $head_of_family = HeadOfFamily::find($request->family_id); - - if ($head_of_family) { - $head_of_family->group_id = $request->group_id; - $head_of_family->save(); - - // change group for the rest of the family members + themselves - $related_members = InsuranceMember::where('family_id', $request->family_id)->update([ - "group_id" => $request->group_id - ]); - } - } - - $insurance_member->family_id = $request->family_id; - $insurance_member->relationship_to_head = $request->relationship_to_head; - $insurance_member->title = $request->title; - $insurance_member->premium = $request->member_premium; - $insurance_member->chi_plan = $request->chi_plan; - $insurance_member->other_plan = $request->other_plan; - $insurance_member->risk_ids = is_null($request->risk_id) ? null : implode(",", $request->risk_id); - $insurance_member->membership_start_date = $request->membership_start_date; - $insurance_member->membership_registration_date = $request->membership_registration_date; - $insurance_member->social_security_number = $request->social_security_number; - $insurance_member->research_id = $request->research_id; - $insurance_member->next_anniversary_date = $request->next_anniversary_date; - $insurance_member->updated_by = $logged_in_user_id; - - try { - $insurance_member->save(); - - if ($request->has('does_member_have_existing_premium') && $request->does_member_have_existing_premium == 1 && !is_null($request->existing_premium_start_date)) { - - $existing_premium_start_date = $request->existing_premium_start_date; - $existing_premium_end_date = $request->existing_premium_end_date; - - $insurance_member->existing_premium_start_date = $existing_premium_start_date; - $insurance_member->existing_premium_end_date = $existing_premium_end_date; - $insurance_member->save(); - - $track_receipts = new TrackReceipt; - $track_receipts->created_by = Auth::id(); - $track_receipts->reason = 'Premiums'; - $track_receipts->save(); - $receipt_number = sprintf("%04u", $track_receipts->id); - - add_member_to_insurance_subscription($insurance_member->group_id, $insurance_member->id, $insurance_member->premium, - $insurance_member->family_id, $existing_premium_start_date, $existing_premium_end_date, $receipt_number); - - $insurance_member->current_insurance_end_date = $existing_premium_end_date; - $insurance_member->current_insurance_amount_paid = $insurance_member->premium; - $insurance_member->update(); - } - - update_insurance_heads_of_family_record($insurance_member->family_id, $insurance_member->id, $insurance_member->premium); - - flash("Insurance Member has been updated")->success(); - return redirect("/insurance_members/"); - } catch (QueryException $e) { - flash("An error occurred. Please try again later")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - */ - public function destroy($id) { - $insurance_member = InsuranceMember::find($id); - /* - 1. double check to make sure that it is not a family head - 2. turn the patient record to insurance status = 0; - 3. remove them from the insurance_heads_of_family ie family_members_ids,family_member_premiums csv columns - 4. soft delete them from insurance_members table - */ - if ($insurance_member) { - if ($insurance_member->is_family_head == 0) { - $patient_id = $insurance_member->patient_id; - $patient = Patient::find($patient_id); - $patient->insurance_status = 0; - $patient->save(); - - $family_details = HeadOfFamily::withTrashed()->find($insurance_member->family_id); - if ($family_details) { - $family_members_ids_array = is_null($family_details->family_members_ids) ? [] : explode(",", $family_details->family_members_ids); - $family_member_premiums_array = is_null($family_details->family_member_premiums) ? [] : explode(",", $family_details->family_member_premiums); - - if(array_search($insurance_member->id, $family_members_ids_array) !== false){ - $key = array_search($insurance_member->id, $family_members_ids_array); - unset($family_members_ids_array[$key]); - unset($family_member_premiums_array[$key]); - //update family details after removing this member - $family_details->family_members_ids = is_null($family_members_ids_array) ? "" : implode(",", $family_members_ids_array); - $family_details->family_member_premiums = is_null($family_member_premiums_array) ? "" : implode(",", $family_member_premiums_array); - $family_details->update(); - } - } - - if ($insurance_member->delete()): - flash("Insurance Member ".get_full_name($patient_id, "id", "first_name", "last_name", "patients")." has been deleted from Community Health Insurance.")->success(); - return redirect('/insurance_members/'); - endif; - } - - flash("Insurance Member is a family head. Please make sure that the member is no longer the family head.")->info(); - return redirect('/insurance_members/'); - } - - flash("Insurance Member could not be found.")->warning(); - return redirect('/insurance_members/'); - } - - public function inactive() { - $insurance_family = HeadOfFamily::pluck('name', 'id'); - - $insurance_members = InsuranceMember::onlyTrashed() - ->orderBy('id', 'desc') - ->join('patients', 'insurance_members.patient_id', '=', 'patients.id') - ->select('insurance_members.*', 'patients.number', 'patients.category_id') - ->paginate(200); - - $insurance_groups_select = InsuranceGroup::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $insurance_groups_select = ['' => '- select -'] + $insurance_groups_select; - - $patient_categories = PatientCategory::pluck('name', 'id'); - - $insurance_groups = InsuranceGroup::pluck('name', 'id'); - - $relations = FamilyRelationship::orderBy('id', 'asc')->pluck('name', 'id'); - - $full_names = DB::table('patients')->whereNull('deleted_at') - ->select(DB::raw('CONCAT(first_name, " ", last_name, " - ", number, " - (", phone, ")") AS full_name')) - ->pluck("full_name"); - - return view('insurance::insurance_members.inactive', compact('insurance_members', 'patient_categories', 'full_names', 'insurance_groups', 'insurance_family', 'relations', 'insurance_groups_select')); - } - - public function searchInactive(Request $request){ - $insurance_family = HeadOfFamily::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - $patient_categories = PatientCategory::pluck('name', 'id'); - - $insurance_groups = InsuranceGroup::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $insurance_groups_select = ['' => '- select -'] + $insurance_groups; - - $relations = FamilyRelationship::pluck('name', 'id'); - - $criteria = ''; - $filters = []; - $full_name_search = $request->full_name; - - if ($full_name_search) { - $split_full_name_array = explode(' ', $full_name_search); - - if (is_array($split_full_name_array)) { - $first_name_from_split = $split_full_name_array[0] ?? ""; - $last_name_from_split = $split_full_name_array[1] ?? ""; - $patient_number_from_split = count($split_full_name_array) > 2 ? array_slice($split_full_name_array, -3)[0] : ''; - - //just only use the patient number from the full name submitted - if ($patient_number_from_split != "") { - $filters[] = ['number', 'LIKE', '%' . $patient_number_from_split . '%']; - $criteria .= 'Number (' . $patient_number_from_split . ') '; - } else { - $filters[] = ['first_name', 'LIKE', '%' . $first_name_from_split . '%']; - $filters[] = ['last_name', 'LIKE', '%' . $last_name_from_split . '%']; - $criteria .= 'Name (' . $full_name_search . ') '; - } - } else { - //just only use the patient number from the full name submitted - $filters[] = ['first_name', 'LIKE', '%' . $full_name_search . '%']; - $criteria .= 'Name (' . $full_name_search . ') '; - } - } - - if ($request->patient_id != 0){ - $filters[] = ['insurance_members.patient_id', '=', $request->patient_id]; - $criteria .= 'Search by patient '; - } - - if ($request->group_id) { - $filters[] = ['insurance_members.group_id', '=', $request->group_id]; - $criteria .= 'Insurance Group ('. ($insurance_groups[$request->group_id] ?? 'N/A') .') '; - } - - $insurance_members = InsuranceMember::onlyTrashed() - ->join('patients', 'insurance_members.patient_id', '=', 'patients.id') - ->select('insurance_members.*', 'patients.number', 'patients.category_id') - ->where($filters) - ->paginate(200); - - $full_names = DB::table('patients')->whereNull('deleted_at') - ->select(DB::raw('CONCAT(first_name, " ", last_name, " - ", number, " - (", phone, ")") AS full_name')) - ->pluck("full_name"); - - return view('insurance::insurance_members.inactive', compact('insurance_members', 'patient_categories', 'insurance_groups', 'insurance_family', 'relations', 'insurance_groups_select', 'criteria', 'full_names')); - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return Response - */ - public function activate($id) { - $insurance_member = InsuranceMember::withTrashed()->find($id); - - $patient_id = $insurance_member->patient_id; - $patient = Patient::find($patient_id); - $patient->insurance_status = 1; - $patient->save(); - - if ($insurance_member->restore()): - flash("Insurance Member has been activated.")->success(); - return redirect('/insurance_members/'); - endif; - } - - public function update_patient_info($id) { - $patient = Patient::where('patients.id', $id) - ->leftJoin('insurance_members', 'insurance_members.patient_id', '=', 'patients.id') - ->first(['patients.id', 'patients.first_name', 'patients.last_name', 'patients.phone', 'patients.next_of_kin', - 'patients.phone_of_next_of_kin', 'patients.category_id', 'patients.village_id', 'patients.gender', 'patients.date_of_birth', 'patients.number', - 'insurance_members.id as insured_id', 'insurance_members.group_id', 'insurance_members.family_id']); - - if ($patient) { - $first_name = title_case($patient->first_name); - - $last_name = title_case($patient->last_name); - - if (is_null($patient->insured_id)) { - $code = '

    Patient Names: ' . $first_name . ' ' . $last_name . '

    '; - - $code .= '

    Patient Number: ' . $patient->number . '

    '; - - $code .= '

    Gender: ' . ($patient->gender == 1 ? "Male" : "Female"). '    Date of Birth: ' . streamline_date($patient->date_of_birth) . '

    '; - - $code .= '

    Phone Number: ' . $patient->phone . '    Next of Kin: ' . $patient->next_of_kin . ' ('.$patient->phone_of_next_of_kin. ')

    '; - - $code .= '

    Patient Category: ' . get_name($patient->category_id, 'id', 'name', 'patient_categories') . '

    '; - - $code .= '

    Village: ' . get_name($patient->village_id, 'id', 'name', 'villages') . '

    '; - } else { - $code = '

    ' . $first_name . ' ' . $last_name . ' is already a C.H.I Member belonging to the family of ' . get_name($patient->family_id,"id", "name", "insurance_heads_of_family"). ' of group '. get_name($patient->group_id,"id", "name", "insurance_groups").'

    '; - } - } else { - $code = '

    Patient Not Found

    '; - } - - return $code; - } - - public function details($id) { - - $result = InsuranceMember::where('id', $id)->first(); - - $patient_relationship = get_name($result->relationship_to_head, 'id', 'name', 'family_relations'); - - $family_id = $result->family_id; - $research_id = $result->research_id; - - $head_of_family_details = HeadOfFamily::find($family_id); - $head_of_family = $head_of_family_details->name; - - $group_id = $result->group_id; - - $group_name = InsuranceGroup::where('id', $group_id)->value('name'); - - $start_date = DB::table('insurance_subscriptions')->where('group_id', $group_id)->value('start_date'); - - $end_date = DB::table('insurance_subscriptions')->where('group_id', $group_id)->value('end_date'); - - $member_photo = asset('uploads/images/insurance_members') . '/' . $result->photo; - $head_photo = asset('uploads/images/insurance_members') . '/' . DB::table('insurance_members')->where('patient_id', $head_of_family_details->patient_id)->value('photo'); - - $patient_id = $result->patient_id; - - $result2 = DB::table('patients')->where('id', $patient_id)->first(); - - $patient_number = $result2->number; - - return view('insurance::insurance_members.details', compact('patient_number', 'patient_id', 'patient_relationship', 'research_id','head_of_family', 'group_name', 'start_date', 'end_date', 'member_photo', 'head_photo', 'group_id', 'family_id', 'id')); - } - - public function add_existing_patient_to_insurance(){ - $insurance_groups = InsuranceGroup::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - $insurance_groups = ['' => '- select -'] + $insurance_groups; - - $families = HeadOfFamily::orderBy('name', 'asc')->pluck('id')->toArray(); - - $relations = FamilyRelationship::orderBy('id', 'asc')->pluck('name', 'id')->toArray(); - - $relations = ['' => '- select -'] + $relations; - - $person_titles = DB::table('person_titles')->whereNull('deleted_at')->pluck('name','id')->prepend('- Select Title - ', ''); - $chi_plans = DB::table('community_health_insurance_plans')->whereNull('deleted_at')->pluck('name','id')->prepend('- Select Plan - ', ''); - $chi_risks = DB::table('community_health_insurance_risks')->whereNull('deleted_at')->pluck('name','id')->prepend('None', '0'); - - return view('insurance::insurance_members.add_existing_patient_to_insurance', compact('insurance_groups', 'families', 'relations', 'person_titles', 'chi_plans', 'chi_risks')); - } - - public function create_insurance_patient(Request $request){ - request()->validate([ - 'group_id' => 'required', - 'patient_id' => 'required|unique:insurance_members,patient_id', - 'duplicate_research_id' => 'nullable|required_with:research_id|same:research_id|unique:insurance_members,research_id', - 'research_id' => 'nullable|required_with:duplicate_research_id|same:duplicate_research_id|unique:insurance_members' - ], [ - 'duplicate_research_id.required_with' => 'Research ID field must be filled.', - 'duplicate_research_id.same' => 'Research ID values must be similar or identical.', - 'research_id.required_with' => 'Research ID field must be filled.', - 'research_id.same' => 'Research ID values must be similar or identical.', - 'research_id.unique' => 'Research ID already exists, please enter another one.', - 'patient_id.unique' => 'Patient is already insured, please add another one.', - 'duplicate_research_id.unique' => 'Research ID already exists, please enter another one.', - ]); - - // save the patient - $patient = Patient::find($request->patient_id); - $patient->insurance_status = 1; - $patient->updated_by = Auth::id(); - $patient->save(); - - // check if member is already registered - $member = DB::table('insurance_members')->where('patient_id', $patient->id) - ->first(); - - if ($member) { - flash("Insurance Member already exists!")->error(); - return back()->withInput(); - } - - // add patient to insurance - $insurance_member = new InsuranceMember; - - if ($request->hasFile('photo')){ - $photo = $request->file('photo'); - $photo_name = $request->patient_id . "." . $photo->getClientOriginalExtension(); - $destinationPath = public_path('/uploads/images/insurance_members'); - $photoPath = $destinationPath . "/" . $photo_name; - $photo->move($destinationPath, $photoPath); - $insurance_member->photo = $photo_name; - } else { - $insurance_member->photo = 'placeholder.png'; - } - - $logged_in_user_id = Auth::id(); - - if ($request->is_family_head == 1){ - $head_of_family = new HeadOfFamily; - $head_of_family->name = $patient->first_name . " " . $patient->last_name; - $head_of_family->group_id = $request->group_id; - $head_of_family->patient_id = $patient->id; - $head_of_family->risk_ids = is_null($request->family_risk_id) ? null : implode(",", $request->family_risk_id); - $head_of_family->created_by = $logged_in_user_id; - $head_of_family->updated_by = $logged_in_user_id; - $head_of_family->save(); - - $insurance_member->family_id = $head_of_family->id; - } else { - $insurance_member->family_id = $request->family_id; - } - - $insurance_member->group_id = $request->group_id; - $insurance_member->relationship_to_head = $request->relationship_to_head; - $insurance_member->patient_id = $patient->id; - $insurance_member->is_family_head = $request->is_family_head; - $insurance_member->title = $request->title; - $insurance_member->premium = $request->member_premium; - $insurance_member->chi_plan = $request->chi_plan; - $insurance_member->other_plan = $request->other_plan; - $insurance_member->risk_ids = is_null($request->risk_id) ? null : implode(",", $request->risk_id); - $insurance_member->membership_start_date = is_null($request->membership_start_date) ? null : Carbon::createFromFormat('d/m/Y', $request->membership_start_date)->toDateString(); - $insurance_member->membership_registration_date = is_null($request->membership_registration_date) ? null : Carbon::createFromFormat('d/m/Y', $request->membership_registration_date)->toDateString(); - $insurance_member->social_security_number = $request->social_security_number; - $insurance_member->research_id = $request->research_id; - $insurance_member->next_anniversary_date = is_null($request->next_anniversary_date) ? null : Carbon::createFromFormat('d/m/Y', $request->next_anniversary_date)->toDateString(); - $insurance_member->created_by = $logged_in_user_id; - $insurance_member->updated_by = $logged_in_user_id; - - try { - - $insurance_member->save(); - - if ($request->has('does_member_have_existing_premium') && $request->does_member_have_existing_premium == 1 && !is_null($request->existing_premium_start_date)) { - - $existing_premium_start_date = is_null($request->existing_premium_start_date) ? null : Carbon::createFromFormat('d/m/Y', $request->existing_premium_start_date)->toDateString(); - $existing_premium_end_date = is_null($request->existing_premium_end_date) ? null : Carbon::createFromFormat('d/m/Y', $request->existing_premium_end_date)->toDateString(); - - $insurance_member->existing_premium_start_date = $existing_premium_start_date; - $insurance_member->existing_premium_end_date = $existing_premium_end_date; - - $track_receipts = new TrackReceipt; - $track_receipts->created_by = Auth::id(); - $track_receipts->reason = 'Premiums'; - $track_receipts->save(); - $receipt_number = sprintf("%04u", $track_receipts->id); - - add_member_to_insurance_subscription($insurance_member->group_id, $insurance_member->id, $insurance_member->premium, - $insurance_member->family_id, $existing_premium_start_date, $existing_premium_end_date, $receipt_number); - - $insurance_member->current_insurance_end_date = $existing_premium_end_date; - $insurance_member->current_insurance_amount_paid = $insurance_member->premium; - } - - $insurance_member_account = allocate_insurance_member_account_number($insurance_member->id, $insurance_member->group_id); - $insurance_member->member_account_number = $insurance_member_account; - $insurance_member->update(); - - //update the insurance_head_of_family table with the new member_id and their respective premium - update_insurance_heads_of_family_record($insurance_member->family_id, $insurance_member->id, $insurance_member->premium); - - flash("Insurance Member has been saved")->success(); - return redirect("/insurance_members/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - public function pre_existing_premiums_report(Request $request) - { - $search_text = ""; - if($request->start_date){ - $start = Carbon::createFromFormat('d/m/Y', $request->start_date)->toDateTimeString(); - $end = Carbon::createFromFormat('d/m/Y', $request->end_date)->toDateTimeString(); - } else { - $start = Carbon::now()->startOfDay()->toDateTimeString(); - $end = Carbon::now()->endOfDay()->toDateTimeString(); - } - - $search_text = "Searching between " . streamline_date($start) . " and " . streamline_date($end); - - $pre_insurance_members = InsuranceMember::whereNotNull('existing_premium_start_date')->whereBetween('created_at', [$start, $end])->get(); - - return view('insurance::insurance_members.pre_existing_premiums_report', compact('pre_insurance_members', 'search_text')); - } - - public function update_insurance_heads_of_family_table_with_family_details() - { - $group_families = HeadOfFamily::all(); - if(count($group_families) > 0){ - foreach($group_families as $family){ - $family_insurance_members = InsuranceMember::where('family_id', $family->id)->get(); - $each_member_ids_array = $each_member_premiums_array = []; - if (count($family_insurance_members) > 0) { - foreach ($family_insurance_members as $member) { - $each_member_ids_array[] = $member->id; - $each_member_premiums_array[] = $member->premium; - } - } - - //update the heads of family records - $head_of_family_record = HeadOfFamily::withTrashed()->find($family->id); - if ($head_of_family_record) { - $head_of_family_record->family_members_ids = implode(",", $each_member_ids_array); - $head_of_family_record->family_member_premiums = implode(",", $each_member_premiums_array); - $head_of_family_record->update(); - } - } - } - - return "insurance heads of family table has been updated with family members and premiums details"; - } - - public function get_chi_plan_amount($chi_plan_id) - { - $chi_plan = CommunityHealthInsurancePlan::find($chi_plan_id); - if ($chi_plan) { - return $chi_plan->plan_fee; - } - return 0; - } - - public function get_family_group_id($family_id) - { - $insurance_heads_of_family = HeadOfFamily::find($family_id); - if ($insurance_heads_of_family) { - return $insurance_heads_of_family->group_id; - } - return null; - } - - public function print_insurance_cards(Request $request){ - $ids = $request->checked_members ?? []; - - $insurance_members = InsuranceMember::join('patients', 'patients.id', '=', 'insurance_members.patient_id')->leftJoin('patient_categories','patient_categories.id','=','patients.category_id') - ->whereIn('insurance_members.id', $ids)->select(['insurance_members.photo', 'insurance_members.group_id', 'patients.gender', 'patients.date_of_birth', 'patients.first_name', - 'patients.number', 'patients.national_id', 'patients.village_id', 'patients.district_id', 'patients.last_name', 'insurance_members.patient_id','patient_categories.name as category_name'])->get(); - - $hospital_details = HospitalInformation::first(); - - $data = [ - 'hospitalInfo' => $hospital_details, - 'insurance_members' => $insurance_members, - ]; - - $pdf = SnappyPDF::loadView('insurance::insurance_members.print_membership_cards', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('margin-left', 5) - ->setOption('margin-right', 5); - return $pdf->inline('CHI Cards' . date(" d-m-y h:ia") . '.pdf'); - } - - public function search_insured_patient_by_name_or_number(Request $request) { - $data = []; - - if ($request->has('q')) { - $search = $request->q; - $data = InsuranceMember::leftjoin('patients', 'patients.id', '=', 'insurance_members.patient_id')->select("patients.id", "first_name", "last_name", "number", "phone") - ->where('last_name', 'LIKE', "%$search%") - ->orWhere('first_name', 'LIKE', "%$search%") - ->orWhere('number', 'LIKE', "%$search%") - ->get(); - } - - return response()->json($data); - } -} diff --git a/docker/statistics/Modules/Insurance/Http/Controllers/InsurancePremiumsController.php b/docker/statistics/Modules/Insurance/Http/Controllers/InsurancePremiumsController.php deleted file mode 100755 index 2e8d8ac4..00000000 --- a/docker/statistics/Modules/Insurance/Http/Controllers/InsurancePremiumsController.php +++ /dev/null @@ -1,1278 +0,0 @@ -middleware('permission:premium-create', ['only' => ['create', 'store']]); - $this->middleware('permission:premium-receipt-list', ['only' => ['insurance_receipts']]); - $this->middleware('permission:premium-renew', ['only' => ['renew_premium', 'renew_premium_store']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() - { - // - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - $insurance_groups = InsuranceGroup::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $insurance_groups = ['' => '- select -'] + $insurance_groups; - - $families = HeadOfFamily::orderBy('name', 'asc')->pluck('id')->toArray(); - $relations = FamilyRelationship::whereNotIn('id',[1])->orderBy('id', 'asc')->pluck('name', 'id')->toArray(); - $relations = ['' => '- select -'] + $relations; - - $occupations = Occupation::orderBy('name')->pluck('name', 'id')->toArray(); - $patient_categories = PatientCategory::where('available', 1)->orderby('name')->pluck('name', 'id')->toArray(); - $districts = District::orderBy('name')->pluck('name', 'id')->toArray(); - $marital_statuses = MaritalStatus::pluck('name', 'id')->toArray(); - $religions = Religion::orderBy('name')->pluck('name', 'id')->toArray(); - $relationships = FamilyRelationship::orderBy('name')->pluck('name', 'id')->toArray(); - - $occupations = ['' => '- select -'] + $occupations; - $districts = ['' => '- select -'] + $districts; - $religions = ['' => '- select -'] + $religions; - $relationships = ['' => '- select -'] + $relationships; - $hospital_information = HospitalInformation::first(); - $dynamic_counties = DB::table('counties')->pluck('name','id')->prepend('- Select County - ', ''); - $dynamic_sub_counties = DB::table('subcounties')->pluck('name','id')->prepend('- Select Sub County - ', ''); - $dynamic_parishes = DB::table('parishes')->pluck('name','id')->prepend('- Select Parish - ', ''); - $villages = DB::table('villages')->pluck('name', 'id')->prepend('- Select Village - ', ''); - - return view('insurance::insurance_premiums.create', compact('insurance_groups', 'families', 'relations', 'dynamic_counties', 'dynamic_parishes', 'dynamic_sub_counties', 'relationships', 'religions', 'occupations', 'districts', 'marital_statuses', 'patient_categories', 'hospital_information', 'villages')); - } - - /** - * Store a newly created resource in storage. - * - */ - public function store(Request $request) - { - request()->validate([ - 'group_id' => 'required', - 'amount' => 'required', - 'start_date' => 'required', - 'end_date' => 'required', - 'payment_date' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - - // retrieve submitted records - $group_id = $request->group_id; - $amount = $request->amount; - - //get the exact members covered details - $family_heads = $request->family_id; - $family_amount = $request->family_amount; - $insurance_subscription_id = $request->insurance_id; - $members_ids_array = $request->members_id; - $members_premiums_array = $request->members_amount; - - $start_date = Carbon::createFromFormat('d-m-Y', $request->start_date)->toDateString(); - $end_date = Carbon::createFromFormat('d-m-Y', $request->end_date)->toDateString(); - $payment_date = Carbon::createFromFormat('d-m-Y', $request->payment_date)->toDateString(); - - // update the track_receipt table to include created receipt - $track_receipts = new TrackReceipt; - $track_receipts->created_by = Auth::id(); - $track_receipts->reason = 'Premiums'; - $track_receipts->save(); - $receipt_number = sprintf("%04u", $track_receipts->id); - - // check if the group already has a subscriptions record - if ($insurance_subscription_id) { - //update the record in the insurance_subscriptions table - $premium = InsurancePremiums::find($insurance_subscription_id); - //$premium->group_id = $group_id; - //$premium->start_date = $start_date; - //$premium->end_date = $end_date; - //$premium->payment_date = $payment_date; - - $already_stored_family_ids = explode(",", $premium->family_heads); - $already_stored_family_amounts = explode(",", $premium->family_amount); - $already_stored_family = array_combine($already_stored_family_ids, $already_stored_family_amounts); - $already_stored_members_ids = explode(",", $premium->covered_member_ids); - $already_stored_premium = explode(",", $premium->covered_member_premiums_paid); - $already_stored_members = array_combine($already_stored_members_ids, $already_stored_premium); - $current_amount = $premium->amount; - - // check if patients are already there - for ($i = 0; $i < count($members_ids_array); $i++) { - if (!isset($already_stored_members[$members_ids_array[$i]])) { - $already_stored_members[$members_ids_array[$i]] = $members_premiums_array[$i]; - $current_amount += $members_premiums_array[$i]; - - // get current family - $family_id = get_name($members_ids_array[$i], 'id', 'family_id', 'insurance_members'); - - if (is_integer($family_id)) { - $already_stored_family[$family_id] = ($already_stored_family[$family_id] ?? 0) + $members_premiums_array[$i]; - } - } - } - - $premium->family_heads = implode(",", array_keys($already_stored_family)); - $premium->family_amount = implode(",", array_values($already_stored_family)); - $premium->amount = $current_amount; - $premium->covered_member_ids = implode(",", array_keys($already_stored_members)); - $premium->covered_member_premiums_paid = implode(",", array_values($already_stored_members)); - $premium->updated_by = $logged_in_user_id; - $premium->save(); - } else { - //create new record in the insurance_subscriptions table - $premium = new InsurancePremiums; - $premium->group_id = $group_id; - $premium->amount = $amount; - $premium->family_heads = implode(",", $family_heads); - $premium->family_amount = implode(",", $family_amount); - $premium->covered_member_ids = implode(",", $members_ids_array); - $premium->covered_member_premiums_paid = implode(",", $members_premiums_array); - $premium->start_date = $start_date; - $premium->end_date = $end_date; - $premium->payment_date = $payment_date; - $premium->receipt_number = $receipt_number; - $premium->created_by = $logged_in_user_id; - $premium->save(); - } - - // run through and update the status for the added members - for($i = 0; $i < count($members_ids_array); $i++) { - $insurance_member = InsuranceMember::find($members_ids_array[$i]); - - if ($insurance_member) { - $insurance_member->current_insurance_end_date = $end_date; - $insurance_member->current_insurance_amount_paid = $members_premiums_array[$i] ?? 0; - $insurance_member->save(); - } - } - - //prepare the receipt - $result = DB::table('insurance_groups')->where('id', $group_id)->first(); - if ($result) { - $group_name = $result->name; - $contact_name = $result->contact_name; - } else { - $group_name = ""; - $contact_name = ""; - } - - // prep for the receipt - $hospital_information = HospitalInformation::first(); - $receipt_date = $payment_date; - - return view('insurance::insurance_premiums.print_receipt_group', compact('hospital_information', 'receipt_number', 'receipt_date', 'start_date', 'end_date', 'group_name', 'contact_name', 'amount')); - } - - public function print_group_receipt($subscription_id) { - $subscription = DB::table('insurance_subscriptions') - ->where(['id' => $subscription_id])->first(); - - $hospital_information = HospitalInformation::first(); - $receipt_date = $subscription->payment_date; - $start_date = $subscription->start_date; - $receipt_number = $subscription->receipt_number; - $end_date = $subscription->end_date; - $amount = $subscription->amount; - - $result = DB::table('insurance_groups')->where('id', $subscription->group_id)->first(); - if ($result) { - $group_name = $result->name; - $contact_name = $result->contact_name; - } else { - $group_name = ""; - $contact_name = ""; - } - - return view('insurance::insurance_premiums.print_receipt_group', compact('hospital_information', 'receipt_number', 'receipt_date', 'start_date', 'end_date', 'group_name', 'contact_name', 'amount')); - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) - { - // - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - // - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - // - } - - public function group_details($id) { - //code to be returned to view - $code = '

    Families

    '; - $today = date('Y-m-d'); - $heads = HeadOfFamily::where(['group_id' => $id])->get(); - - $relations = DB::table('family_relations')->whereNull('deleted_at')->pluck('name', 'id'); - - $subscriptions = DB::table('insurance_subscriptions') - ->where(['group_id' => $id]) - ->where('end_date', '>', DATE($today)) - ->orderBy('id', 'desc') - ->first(); - - //check if families exist in this group - if ($heads->count() > 0) { - //check if a subscription has already been made to avoid duplication - if ($subscriptions) { - $code .= ''; - } - - foreach ($heads as $head) { - $members_count = 0; - - $this_family_members_id_array = is_null($head->family_members_ids) ? [] : explode(",", $head->family_members_ids); - - $family_premiums_to_pay = 0; - $families_code = ''; - $families_code .= ''; - - foreach ($this_family_members_id_array as $this_fam_member_id) { - $member = InsuranceMember::find($this_fam_member_id); - - //check if families exist in this group - if ($member) { - $families_code .= ''; - $families_code .= ''; - $families_code .= ''; - $families_code .= ''; - $families_code .= ''; - $families_code .= ''; - $families_code .= ''; - $families_code .= ''; - $family_premiums_to_pay += $member->premium; - } - $members_count++; - } - - $families_code .= ''; - - $code .= '
    '; - $code .= '
    '; - $code .= ''; - $code .= ''; - $code .= ''; - $code .= '
    '; - $code .= '
    '; - $code .= $families_code; - $code .= '
    '; - } - } else { - $code .= 'No Families Found in This Insurance Group'; - } - - return $code; - } - - public function insurance_receipts(Request $request) { - $today = date('Y-m-d'); - - if ($request->id) { - //group id is set - $id = $request->id; - - $receipts = DB::table('insurance_subscriptions') - ->where(['group_id' => $id]) - ->where('end_date', '>', DATE($today)) - ->get(); - } else { - //group id not set hence default - $receipts = DB::table('insurance_subscriptions')->take(10) - ->where('end_date', '>', DATE($today)) - ->get(); - } - - $insurance_groups = DB::table('insurance_groups')->pluck('name', 'id')->toArray(); - - $insurance_groups = ['' => '- select -'] + $insurance_groups; - - return view('insurance::insurance_premiums.insurance_receipts', compact('insurance_groups', 'receipts')); - } - - public function print_receipt(Request $request) - { - $group_id = $request->group_id; - $family_id = $request->family_id; - - $group_name = InsuranceGroup::where('id', $group_id)->value('name'); - $family_name = HeadOfFamily::where('id', $family_id)->value('name'); - - $amount = $request->family_amount; - $start_date = $request->start_date; - $end_date = $request->end_date; - - $subscription_record = InsurancePremiums::find($request->subscription_id); - $record_members_array = is_null($subscription_record->covered_member_ids) ? [] : explode(",",$subscription_record->covered_member_ids); - $record_premiums_array = is_null($subscription_record->covered_member_premiums_paid) ? [] : explode(",",$subscription_record->covered_member_premiums_paid); - - $this_family_members_array = InsuranceMember::where('family_id', $family_id)->pluck('id')->toArray(); - $covered_family_members = 0; - for ($w=0; $w < count($record_members_array) ; $w++) { - if (in_array($record_members_array[$w], $this_family_members_array)) { - $covered_family_members++; - } - } - - $hospital_information = HospitalInformation::first(); - $receipt_date = $request->payment_date; - $receipt_number = $request->receipt_number; - - return view('insurance::insurance_premiums.print_receipt', compact('hospital_information', 'receipt_date', 'receipt_number', 'start_date', 'end_date', 'amount', 'group_name', 'family_name', 'family_id', 'group_id', 'covered_family_members', 'subscription_record')); - } - - public function single_group_receipt() - { - $insurance_groups = InsuranceGroup::pluck('name', 'id')->toArray(); - - $insurance_groups = ['' => '- select -'] + $insurance_groups; - - return view('insurance::insurance_premiums.single_group_receipt', compact('insurance_groups')); - } - - public function single_group_receipt_store(Request $request) { - // update the track_receipt table to include created receipt - $track_receipts = new TrackReceipt; - $track_receipts->created_by = Auth::id(); - $track_receipts->reason = 'Single Group Receipts'; - $track_receipts->save(); - $receipt_number = sprintf("%04u", $track_receipts->id); - - //create new record in the single group premiums table - $premium = new SingleGroupPremium; - - $premium->group_id = $request->group_id; - $premium->amount = $request->amount; - $premium->paid_by_name = $request->paid_by_name; - $premium->paid_by_contact = $request->paid_by_contact; - $start_date = Carbon::createFromFormat('d-m-Y', $request->start_date)->toDateString(); - $end_date = Carbon::createFromFormat('d-m-Y', $request->end_date)->toDateString(); - $payment_date = Carbon::createFromFormat('d-m-Y', $request->payment_date)->toDateString(); - $premium->start_date = $start_date; - $premium->end_date = $end_date; - $premium->payment_date = $payment_date; - $premium->receipt_number = $receipt_number; - $premium->created_by = Auth::user()->id; - $premium->save(); - - // prep for the receipt - $hospital_information = HospitalInformation::first(); - $receipt_date = $request->payment_date; - - $group_name = InsuranceGroup::where('id', $request->group_id)->value('name'); - - $amount = $request->amount; - $paid_by_name = $request->paid_by_name; - $paid_by_contact = $request->paid_by_contact; - $start_date = $request->start_date; - $end_date = $request->end_date; - $group_id = $request->group_id; - $cashier_id = $premium->created_by; - - return view('insurance::insurance_premiums.print_receipt_single_group', compact('hospital_information', 'receipt_number', 'receipt_date', 'start_date', 'end_date', 'paid_by_name', 'paid_by_contact', 'amount', 'group_name', 'group_id', 'cashier_id')); - } - - public function single_group_receipt_history(Request $request) { - if($request->start_date){ - $start = Carbon::createFromFormat('d/m/Y', $request->start_date)->toDateString(); - $end = Carbon::createFromFormat('d/m/Y', $request->end_date)->toDateString(); - } else { - $start = Carbon::now()->startOfDay()->toDateTimeString(); - $end = Carbon::now()->endOfDay()->toDateTimeString(); - } - - $insurance_groups = DB::table('insurance_groups')->pluck('name', 'id')->toArray(); - $insurance_groups = ['' => '- select -'] + $insurance_groups; - - $search_text = "Searching between " . streamline_date($start) . " and " . streamline_date($end); - - $start = date("Y-m-d", strtotime($start)); - $end = date("Y-m-d", strtotime($end)); - - if ($request->group_id) { - $receipts = SingleGroupPremium::where(['group_id' => $request->group_id]) - ->whereBetween('payment_date', [$start, $end])->get(); - - $search_text .= " for " . ($insurance_groups[$request->group_id] ?? 'N/A'); - } else { - $receipts = SingleGroupPremium::whereBetween('payment_date', [$start, $end])->get(); - } - - return view('insurance::insurance_premiums.single_group_receipt_history', compact('insurance_groups', 'receipts', 'search_text')); - } - - public function reprint_single_group_receipt($id) - { - $receipt = SingleGroupPremium::where(['id' => $id])->first(); - - $hospital_information = HospitalInformation::first(); - - return view('insurance::insurance_premiums.reprint_single_group_receipt', compact('hospital_information', 'receipt')); - } - - public function renew_premium() - { - $today = Carbon::now(); - - $exluded_insurance_groups = InsurancePremiums::where('end_date', '>', DATE($today))->pluck('group_id')->toArray(); - - $insurance_groups = InsuranceGroup::whereNotIn('id', $exluded_insurance_groups)->pluck('name', 'id')->toArray(); - - $insurance_groups = ['' => '- select -'] + $insurance_groups; - - $families = HeadOfFamily::orderBy('name', 'asc')->pluck('id')->toArray(); - $relations = FamilyRelationship::whereNotIn('id',[1])->orderBy('id', 'asc')->pluck('name', 'id')->toArray(); - $relations = ['' => '- select -'] + $relations; - - $occupations = Occupation::orderBy('name')->pluck('name', 'id')->toArray(); - $patient_categories = PatientCategory::where('available', 1)->orderby('name')->pluck('name', 'id')->toArray(); - $districts = District::orderBy('name')->pluck('name', 'id')->toArray(); - $marital_statuses = MaritalStatus::pluck('name', 'id')->toArray(); - $religions = Religion::orderBy('name')->pluck('name', 'id')->toArray(); - $relationships = FamilyRelationship::orderBy('name')->pluck('name', 'id')->toArray(); - - $occupations = ['' => '- select -'] + $occupations; - $districts = ['' => '- select -'] + $districts; - $religions = ['' => '- select -'] + $religions; - $relationships = ['' => '- select -'] + $relationships; - $hospital_information = HospitalInformation::first(); - $dynamic_counties = DB::table('counties')->pluck('name','id')->prepend('- Select County - ', ''); - $dynamic_sub_counties = DB::table('subcounties')->pluck('name','id')->prepend('- Select Sub County - ', ''); - $dynamic_parishes = DB::table('parishes')->pluck('name','id')->prepend('- Select Parish - ', ''); - $villages = DB::table('villages')->pluck('name', 'id')->prepend('- Select Village - ', ''); - - return view('insurance::insurance_premiums.renew_premium', compact('insurance_groups', 'relations', 'dynamic_counties', 'dynamic_parishes', 'dynamic_sub_counties', 'relationships', 'religions', 'occupations', 'districts', 'marital_statuses', 'patient_categories', 'hospital_information', 'villages')); - } - - public function renew_premium_store(Request $request) - { - request()->validate([ - 'group_id' => 'required', - 'amount' => 'required', - 'start_date' => 'required', - 'end_date' => 'required', - 'payment_date' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - - // retrieve submitted records - $group_id = $request->group_id; - $amount = $request->amount; - $start_date = Carbon::createFromFormat('d-m-Y', $request->start_date)->toDateString(); - $end_date = Carbon::createFromFormat('d-m-Y', $request->end_date)->toDateString(); - $payment_date = Carbon::createFromFormat('d-m-Y', $request->payment_date)->toDateString(); - $family_heads_array = $request->family_id; - $family_amount_array = $request->family_amount; - - //update insurance income in chart of accounts - $insurance_income = DB::table('chart_of_accounts')->where('id', 2)->value('balance'); - $new_insurance_income = $insurance_income + $amount; - ChartOfAccount::where(['id' => 2])->update(['balance' => $new_insurance_income]); - - //convert family_amount and family_id to strings - $family_amount_string = implode(",", $family_amount_array); - $family_heads_string = implode(",", $family_heads_array); - - $members_ids_array = $members_premiums_array = []; - - for ($i=0; $i < count($family_heads_array); $i++) { - $heads_of_family_record = HeadOfFamily::withTrashed()->find($family_heads_array[$i]); - $split_members_ids_array = explode(",", $heads_of_family_record->family_members_ids); - - for ($j=0; $j created_by = Auth::id(); - $track_receipts->reason = 'Renew Premiums'; - $track_receipts->save(); - $receipt_number = sprintf("%04u", $track_receipts->id); - - //create new record in the insurance_subscriptions table - $premium = new InsurancePremiums; - - $premium->group_id = $group_id; - $premium->amount = $amount; - $premium->family_heads = $family_heads_string; - $premium->family_amount = $family_amount_string; - $premium->covered_member_ids = implode(",", $members_ids_array); - $premium->covered_member_premiums_paid = implode(",", $members_premiums_array); - $premium->start_date = $start_date; - $premium->end_date = $end_date; - $premium->payment_date = $payment_date; - $premium->receipt_number = $receipt_number; - $premium->created_by = $logged_in_user_id; - $premium->save(); - - //prepare the receipt - $result = DB::table('insurance_groups')->where('id', $group_id)->first(); - - $group_name = $result->name; - $contact_name = $result->contact_name; - - // prep for the receipt - $hospital_information = HospitalInformation::first(); - $receipt_date = $payment_date; - - return view('insurance::insurance_premiums.print_receipt_group', compact('hospital_information', 'receipt_number', 'receipt_date', 'start_date', 'end_date', 'group_name', 'contact_name', 'amount')); - } - - public function insurance_premiums_receipt_snappy($serialized_data) - { - $print_array = unserialize($serialized_data); - $start_date = $end_date = $amount = $group_name = $contact_name = null; - //$print_array = [$start_date, $end_date, $amount, $group_name, $contact_name]; - if (is_array($print_array)) { - $start_date = $print_array[0]; - $end_date = $print_array[1]; - $amount = $print_array[2]; - $group_name = $print_array[3]; - $contact_name = $print_array[4]; - $receipt_date = $print_array[5]; - $receipt_number = $print_array[6]; - } - - $hospital_details = HospitalInformation::first(); - - $data = [ - 'hospitalInfo' => $hospital_details, - 'start_date' => $start_date, - 'end_date' => $end_date, - 'amount' => $amount, - 'group_name' => $group_name, - 'contact_name' => $contact_name, - 'receipt_date' => $receipt_date, - 'receipt_number' => $receipt_number - ]; - - $pdf = SnappyPDF::loadView('insurance::insurance_premiums/snappy_print_receipt_group', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Stre@mline'); - - - return $pdf->inline('Premiums Receipt' . date(" d-m-y h:ia") . '.pdf'); - } - - public function insurance_premiums_family_receipt_snappy($serialized_data) - { - try { - $print_array = unserialize($serialized_data); - - if (!is_array($print_array)) { - $print_array = []; - } - } catch (\Exception | \Error $e) { - $print_array = []; - } - - $start_date = $print_array[0] ?? now(); - $end_date = $print_array[1] ?? now(); - $amount = $print_array[2] ?? 0; - $group_name = $print_array[3] ?? ""; - $family_name = $print_array[4] ?? ""; - $receipt_date = $print_array[5] ?? ""; - $receipt_number = $print_array[6] ?? ""; - $family_id = $print_array[7] ?? ""; - $group_id = $print_array[8] ?? ""; - $insurance_subscription_id = $print_array[9] ?? ""; - $cashier = $print_array[10] ?? ""; - - $hospital_details = HospitalInformation::first(); - - $receiver_cashier_id = 0; - $covered_family_members = []; - $subscription_record = InsuranceSubscription::find($insurance_subscription_id); - if ($subscription_record) { - $receiver_cashier_id = $subscription_record->created_by; - - $record_members_array = is_null($subscription_record->covered_member_ids) ? [] : explode(",",$subscription_record->covered_member_ids); - - $this_family_members_array = InsuranceMember::where('family_id', $family_id)->pluck('id')->toArray(); - - for ($w=0; $w < count($record_members_array) ; $w++) { - if (in_array($record_members_array[$w], $this_family_members_array)) { - $covered_family_members[] = $record_members_array[$w]; - } - } - } - - $data = [ - 'hospitalInfo' => $hospital_details, - 'start_date' => $start_date, - 'end_date' => $end_date, - 'amount' => $amount, - 'group_name' => $group_name, - 'family_name' => $family_name, - 'receipt_date' => $receipt_date, - 'receipt_number' => $receipt_number, - 'family_id' => $family_id, - 'receiver_cashier_id' => $receiver_cashier_id, - 'covered_family_members' => $covered_family_members, - 'cashier' => $cashier, - ]; - - $pdf = SnappyPDF::loadView('insurance::insurance_premiums/snappy_print_receipt_family', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Stre@mline'); - - - return $pdf->inline('Premiums Receipt' . date(" d-m-y h:ia") . '.pdf'); - } - - public function print_single_group_receipt_snappy($serialized_data) - { - $hospital_details = HospitalInformation::first(); - - $print_array = unserialize($serialized_data); - $start_date = $end_date = $amount = $group_name = $group_name = $group_id = $paid_by_name = $paid_by_contact = $cashier_id = null; - //$print_array = [$start_date, $end_date, $amount, $receipt_date, $receipt_number, $group_name, $group_id, $paid_by_name, $paid_by_contact]; - if (is_array($print_array)) { - $start_date = $print_array[0]; - $end_date = $print_array[1]; - $amount = $print_array[2]; - $receipt_date = $print_array[3]; - $receipt_number = $print_array[4]; - $group_name = $print_array[5]; - $group_id = $print_array[6]; - $paid_by_name = $print_array[7]; - $paid_by_contact = $print_array[8]; - $cashier_id = $print_array[9]; - } - - $data = [ - 'hospitalInfo' => $hospital_details, - 'start_date' => $start_date, - 'end_date' => $end_date, - 'amount' => $amount, - 'group_name' => $group_name, - 'group_id' => $group_id, - 'paid_by_name' => $paid_by_name, - 'paid_by_contact' => $paid_by_contact, - 'receipt_date' => $receipt_date, - 'receipt_number' => $receipt_number, - 'cashier_id' => $cashier_id - ]; - - $pdf = SnappyPDF::loadView('insurance::insurance_premiums/snappy_print_single_group_receipt', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7); - - - return $pdf->inline('Premiums Receipt' . date(" d-m-y h:ia") . '.pdf'); - } - - public function view_chi_family_members($family_head_id) { - $code = ''; - $i = 1; - $members = InsuranceMember::where(['family_id' => $family_head_id])->get(); - - $code .= ''; - $family_total_premiums_to_pay = 0; - $family_members_to_exclude_array = session()->has("member_ids_to_exclude") ? session()->get("member_ids_to_exclude") : []; - - //check if families exist in this group - if ($members->count() > 0) { - $code .= ''; - $code .= ''; - - //check if a subscription has already been made to avoid duplication - foreach ($members as $member) { - if (!in_array($member->id, $family_members_to_exclude_array)) { - $code .= ''; - $code .= ''; - $code .= ''; - $code .= ''; - $code .= ''; - $code .= ''; - $i++; - $family_total_premiums_to_pay += $member->premium; - } - } - $code .= ''; - $code .= ''; - } - - $code .= '
    #NamePremiumRelation to head
    ' . $i . ''; - $code .= insurance_flag($member->patient_id).' ('.get_name($member->patient_id, "id", "number", "patients").')'; - $code .= ($member->is_family_head == 1) ? ' Family Head' : ''; - $code .= '' . ugandan_shillings($member->premium) . ''; - $code .= get_name($member->relationship_to_head, "id", "name", "family_relations"); - $code .= 'Exclude member       Make family head
    Total'.ugandan_shillings($family_total_premiums_to_pay).'
    '; - - return $code; - } - - public function remove_member_from_family($family_head_id, $member_id) - { - $insurance_member = InsuranceMember::where(['family_id' => $family_head_id, 'id' => $member_id])->orderBy('id', 'desc')->first(); - $family_head_patient_id = get_name($family_head_id, "id", "patient_id", "insurance_heads_of_family"); - - if ($insurance_member) { - - $this_family_members_to_exclude_array = session()->has("member_ids_to_exclude") ? session()->get("member_ids_to_exclude") : []; - array_push($this_family_members_to_exclude_array, $member_id); - - session()->put(["member_ids_to_exclude" => $this_family_members_to_exclude_array]); - - flash(get_full_name($insurance_member->patient_id, "id", "first_name", "last_name", "patients").' has been excluded from this premium payment for the family of '.get_full_name($family_head_patient_id, "id", "first_name", "last_name", "patients").' ')->success(); - - return redirect('edit_insurance_premiums_payment/'.$insurance_member->group_id); - } else{ - flash('Family member could not be found')->error(); - } - return redirect('insurance_premiums/create'); - } - - public function remove_chi_family_from_group($family_head_id, $group_id) - { - # 1. remove from the group - # 2. add to to a deleted_chi_families table for audit trails - # 3. soft delete from insurance_heads_of_family - - $today = date('Y-m-d'); - $family_head_patient_id = get_name($family_head_id, "id", "patient_id", "insurance_heads_of_family"); - - /* $subscriptions = DB::table('insurance_subscriptions')->whereNull('deleted_at')->where(['group_id' => $group_id])->where('end_date', '>', DATE($today))->orderBy('id', 'desc')->first(); - - if ($subscriptions) { - $family_heads_array = explode(",", $subscriptions->family_heads); - $family_amount_array = explode(",", $subscriptions->family_amount); - $family_amount_on_removal = 0; - //dd($family_heads_array); - - for ($i=0; $i < count($family_heads_array) ; $i++) { - if ((int)$family_heads_array[$i] == (int)$family_head_id) { - $family_amount_on_removal = $family_amount_array[$i]; - unset($family_heads_array[$i]); - unset($family_amount_array[$i]); - break; - } - } - $family_heads_timmed_array = array_values($family_heads_array); - $family_amounts_timmed_array = array_values($family_amount_array); - //dd($family_heads_timmed_array); - - //update the insurance_subscriptions table; - $premium = InsurancePremiums::where(['group_id' => $group_id])->orderBy('id', 'desc')->first(); - $premium->family_heads = implode(",", $family_heads_timmed_array); - $premium->family_amount = implode(",", $family_amounts_timmed_array); - - if ($premium->save()) { - $remove_family = new RemovedChiFamily; - $remove_family->family_head_id = $family_head_id; - $remove_family->group_id = $group_id; - $remove_family->family_amount = $family_amount_on_removal; - $remove_family->created_by = Auth::id(); - $remove_family->save(); - - $family_head = HeadOfFamily::withTrashed()->find($family_head_id); - if ($family_head) { - $family_head->delete(); - } - } - - flash('Family of '.get_full_name($family_head_patient_id, "id", "first_name", "last_name", "patients").' has been removed from '.get_name($group_id, "id", "name", "insurance_groups"))->success(); - - return redirect('edit_insurance_premiums_payment/'.$group_id); - } - - flash('Family could not be removed')->error(); */ - - - - - - - - - - $insurance_members = InsuranceMember::where(['family_id' => $family_head_id])->orderBy('id', 'desc')->get(); - - $family_head_patient_id = get_name($family_head_id, "id", "patient_id", "insurance_heads_of_family"); - - //create the array of family ids to exclude and add it in the session - $family_ids_to_exclude_array = session()->has("family_ids_to_exclude") ? session()->get("family_ids_to_exclude") : []; - array_push($family_ids_to_exclude_array, $family_head_id); - session()->put(["family_ids_to_exclude" => $family_ids_to_exclude_array]); - - $group_id = 0; - // loop through to create session of members to exclude - if (count($insurance_members) > 0) { - foreach ($insurance_members as $insurance_member) { - $this_family_members_to_exclude_array = session()->has("member_ids_to_exclude") ? session()->get("member_ids_to_exclude") : []; - array_push($this_family_members_to_exclude_array, $insurance_member->id); - - session()->put(["member_ids_to_exclude" => $this_family_members_to_exclude_array]); - - $group_id = $insurance_member->group_id; - } - - flash('The family of '.get_full_name($family_head_patient_id, "id", "first_name", "last_name", "patients").' has been excluded from this group payment')->success(); - - return redirect('edit_insurance_premiums_payment/'.$group_id); - } - - flash('Family member could not be found')->error(); - return back()->withInput(); - - return redirect('insurance_premiums/create'); - } - - public function add_new_family_members_dynamically(Request $request) - { - //$request->new_member_contact; - $patient = new Patient; - $patient->first_name = $request->new_member_first_name; - $patient->last_name = $request->new_member_last_name; - if (is_null($request->new_member_date_of_birth)) { - $patient->date_of_birth = Carbon::now(); - } else { - $patient->date_of_birth = Carbon::createFromFormat('d/m/Y', $request->new_member_date_of_birth)->toDateString(); - } - $patient->marital_status = $request->new_member_marital_status; - $patient->occupation_id = $request->new_member_occupation; - $patient->religion_id = $request->new_member_religion; - $patient->category_id = $request->new_member_patient_category; - $patient->citizenship = 1; - $patient->district_id = $request->new_member_district_id; - $patient->county_id = $request->new_member_county_id; - $patient->country_id = 6; //uganda - $patient->subcounty_id = $request->new_member_subcounty_id; - $patient->insurance_status = 1; - $patient->parish_id = $request->new_member_parish; - $patient->village_id = $request->new_member_village; - $patient->gender = $request->new_member_gender; - $patient->next_of_kin = $request->new_member_next_of_kin; - //$patient->next_of_kin_relationship = $request->next_of_kin_relationship; - //$patient->phone_of_next_of_kin = removeSpaces($request->next_of_kin_phone); - $patient->phone = removeSpaces($request->new_member_phone); - $patient->national_id = $request->new_member_national_id; - $patient->phone_owner = $request->new_member_phone_owner; // problem - //$patient->hospital_contact = $request->hospital_contact; - $patient->language = $request->new_member_language; - $patient->lc_one = $request->new_member_lc_one; - $patient->created_by = Auth::user()->id; - - if ($patient->save()){ - $prefix = DB::table('hospital_information')->where('id', 1)->value('patient_number_abbr'); - $new_id = quadLimit($patient->id); - $patient_number = $prefix . "-" . $new_id; - - DB::table('patients')->where('id', $new_id)->update(['number' => $patient_number]); // Updating the patient number - - flash('Patient with patient number ' . $patient_number . ' has been successfully registered')->success(); - - // add patient to insurance - $insurance_member = new InsuranceMember; - - if ($request->hasFile('photo')){ - $photo = $request->file('photo'); - $photo_name = $request->patient_id . "." . $photo->getClientOriginalExtension(); - $destinationPath = public_path('/uploads/insurance_members'); - $photoPath = $destinationPath . "/" . $photo_name; - $photo->move($destinationPath, $photoPath); - $insurance_member->photo = $photo_name; - } else { - $insurance_member->photo = 'placeholder.png'; - } - - $logged_in_user_id = Auth::user()->id; - $insurance_member->family_id = $request->new_member_family_head_id; - $insurance_member->group_id = $request->group_id; - $insurance_member->relationship_to_head = $request->new_member_relationship_to_head; - $insurance_member->patient_id = $patient->id; - $insurance_member->is_family_head = 0; - $insurance_member->created_by = $logged_in_user_id; - $insurance_member->updated_by = $logged_in_user_id; - - try { - $insurance_member->save(); - $response_string = ""; - $new_patient_name = $patient->first_name. " ".$patient->last_name; - flash("New Insurance Member ".$new_patient_name." has been saved")->success(); - $response_string = "".$new_patient_name.""; - return json_encode([ - "html" => $response_string - ]); - } catch (\Exception $e) { - flash("Failed to register patient. Please try again")->error(); - return back()->withInput(); - } - } else { - flash("Failed to register patient. Please try again")->error(); - return back()->withInput(); - } - } - - public function edit_family_head($family_head_id, $member_id) - { - $insurance_member = InsuranceMember::where(['family_id' => $family_head_id, 'id' => $member_id])->orderBy('id', 'desc')->first(); - $family_head_patient_id = get_name($family_head_id, "id", "patient_id", "insurance_heads_of_family"); - - if ($insurance_member) { - $head_of_family = HeadOfFamily::find($family_head_id); - $patient = Patient::withTrashed()->find($insurance_member->patient_id); - - $head_of_family->name = $patient->first_name . " " . $patient->last_name; - $head_of_family->group_id = $insurance_member->group_id; - $head_of_family->patient_id = $patient->id; - $head_of_family->created_by = Auth::id(); - $head_of_family->updated_by = Auth::id(); - if ($head_of_family->save()) { - $insurance_member->family_id = $head_of_family->id; - $insurance_member->is_family_head = 1; - $insurance_member->update(); - - //update all members related to the previous family head - $attached_insurance_members = InsuranceMember::where(['family_id' => $family_head_id])->get(); - if (count($attached_insurance_members)) { - foreach ($attached_insurance_members as $attached_member) { - $attached_member->family_id = $head_of_family->id; - $attached_member->is_family_head = ($attached_member->id == $member_id) ? 1 : 0; - $attached_member->update(); - } - } - } - - flash(get_full_name($insurance_member->patient_id, "id", "first_name", "last_name", "patients").' has been made the head from the family of '.get_full_name($family_head_patient_id, "id", "first_name", "last_name", "patients"))->success(); - - return redirect('edit_insurance_premiums_payment/'.$insurance_member->group_id); - } else{ - flash('Family member could not be found')->error(); - } - return redirect('insurance_premiums/create'); - } - - public function get_expected_chi_group_amount($group_id) - { - $group_insurance_members = InsuranceMember::where('group_id', $group_id)->get(); - - $family_members_to_exclude_array = session()->has("member_ids_to_exclude") ? session()->get("member_ids_to_exclude") : []; - - $expected_group_premium = 0; - if (count($group_insurance_members) > 0) { - foreach ($group_insurance_members as $member) { - if (!in_array($member->id, $family_members_to_exclude_array)) { - $expected_group_premium += $member->premium; - } - } - } - - return $expected_group_premium; - } - - public function cancel_insurance_premiums(Request $request) { - $today = Carbon::today()->toDateString(); - $yesterday = Carbon::yesterday()->toDateString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $display = ""; - $search_option = $request->search_option; - - switch ($request->dates) { - case 'yesterday': - $premiums = InsurancePremiums::whereDate('payment_date', $yesterday)->where('end_date', '>', date('Y-m-d'))->paginate(1000); - $display .= $search_option. " Premiums paid yesterday, the " . streamline_date($yesterday); - break; - case 'custom_date': - $premiums = InsurancePremiums::whereDate('payment_date', $start)->where('end_date', '>', date('Y-m-d'))->paginate(1000); - $display .= $search_option. " Premiums paid on the " . streamline_date($start); - break; - case 'custom_date_range': - $premiums = InsurancePremiums::whereBetween('payment_date', [$start, $end])->where('end_date', '>', date('Y-m-d'))->paginate(1000); - $display .= $search_option. " Premiums paid from " . streamline_date($start) . " to " . streamline_date($end); - break; - default: - case 'today': - $premiums = InsurancePremiums::whereDate('payment_date', $today)->where('end_date', '>', date('Y-m-d'))->paginate(1000); - $display .= $search_option. " Premiums paid today, the " . streamline_date($today); - break; - } - - $insurance_family = HeadOfFamily::pluck('name', 'id'); - - $insurance_groups = InsuranceGroup::pluck('name', 'id'); - - $relations = FamilyRelationship::pluck('name', 'id'); - - $insurance_groups_select = InsuranceGroup::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $insurance_groups_select = ['' => '- select -'] + $insurance_groups_select; - - return view('insurance::insurance_premiums.cancel_insurance_premiums', compact('premiums', 'insurance_family', 'insurance_groups', 'relations', 'insurance_groups_select', 'search_option', 'display')); - } - - public function cancel_premium($member_id, $subscription_id) { - // get values from insurance subscriptions - $insurance_premium = InsurancePremiums::find($subscription_id); - - //check for correct - if ($insurance_premium) { - $covered_members_array = explode(",", $insurance_premium->covered_member_ids); - $covered_member_premiums_array = explode(",", $insurance_premium->covered_member_premiums_paid); - - if (array_search($member_id, $covered_members_array) !== false) { - //remove this member from the covered_ids value - $key_search = array_search($member_id, $covered_members_array); - unset($covered_members_array[$key_search]); - unset($covered_member_premiums_array[$key_search]); - - //update the insurance_subscriptions table - $insurance_premium->covered_member_ids = implode(",", $covered_members_array); - $insurance_premium->covered_member_premiums_paid = implode(",", $covered_member_premiums_array); - $insurance_premium->update(); - - // update the insurance table as well - $insurance_member = InsuranceMember::find($member_id); - - if ($insurance_member) { - $insurance_member->current_insurance_end_date = NULL; - $insurance_member->current_insurance_amount_paid = NULL; - $insurance_member->save(); - } - - $patient_id = get_name($member_id, 'id', 'patient_id', 'insurance_members'); - - flash(get_full_name($patient_id, "id", "first_name", "last_name", "patients")."'s premium has been canceled")->success(); - return redirect("cancel_insurance_premiums"); - } - } - - flash("No active premium has been found for this member")->error(); - return redirect("cancel_insurance_premiums"); - } - - public function cancel_family_premium($family_id) - { - $this_family_members = InsuranceMember::where('family_id', $family_id)->get(); - - $group_id = get_name($family_id, 'id', 'group_id', 'insurance_heads_of_family'); - - //get values from insurance subscriptions - $insurance_premium = InsurancePremiums::where('group_id', $group_id)->where('end_date', '>', date('Y-m-d'))->orderBy('id', 'desc')->first(); - - if (count($this_family_members) > 0) { - foreach ($this_family_members as $fam_member_record) { - $member_id = $fam_member_record->id; - - if ($insurance_premium) { - $covered_members_array = explode(",", $insurance_premium->covered_member_ids); - $covered_member_premiums_array = explode(",", $insurance_premium->covered_member_premiums_paid); - - if (array_search($member_id, $covered_members_array) !== false) { - //remove this member from the covered_ids value - $key_search = array_search($member_id, $covered_members_array); - unset($covered_members_array[$key_search]); - unset($covered_member_premiums_array[$key_search]); - - //update the insurance_subscriptions table - $insurance_premium->covered_member_ids = implode(",", $covered_members_array); - $insurance_premium->covered_member_premiums_paid = implode(",", $covered_member_premiums_array); - $insurance_premium->update(); - } - } - } - - //remove the family_id and family accounts from the csv value that was previously stored - $covered_families_array = explode(",", $insurance_premium->family_heads); - $covered_families_premiums_array = explode(",", $insurance_premium->family_amount); - if (array_search($family_id, $covered_families_array) !== false) { - - $key_search = array_search($family_id, $covered_families_array); - unset($covered_families_array[$key_search]); - unset($covered_families_premiums_array[$key_search]); - - $insurance_premium->family_heads = implode(",", $covered_families_array); - $insurance_premium->family_amount = implode(",", $covered_families_premiums_array); - $insurance_premium->update(); - } - - //check if the family_heads column is empty and delete the record altogether - if ($insurance_premium->family_heads == "") { - $insurance_premium->delete(); - } - - flash("The family of ".get_name($family_id, "id", "name", "insurance_heads_of_family")."'s premium has been canceled")->success(); - return redirect("cancel_insurance_premiums"); - } - - flash("No active premium has been found for this member")->error(); - return redirect("cancel_insurance_premiums"); - } - - public function remove_member_from_group_premium($family_id, $member_id) - { - $insurance_member = InsuranceMember::where(['family_id' => $family_id, 'id' => $member_id])->orderBy('id', 'desc')->first(); - $family_head_patient_id = get_name($family_id, "id", "patient_id", "insurance_heads_of_family"); - - if ($insurance_member) { - - $this_family_members_to_exclude_array = session()->has("member_ids_to_exclude") ? session()->get("member_ids_to_exclude") : []; - array_push($this_family_members_to_exclude_array, $member_id); - - session()->put(["member_ids_to_exclude" => $this_family_members_to_exclude_array]); - - flash(get_full_name($insurance_member->patient_id, "id", "first_name", "last_name", "patients").' has been excluded from this premium payment for the family of '.get_full_name($family_head_patient_id, "id", "first_name", "last_name", "patients").' ')->success(); - - return redirect('edit_single_group_premiums_payment/'.$insurance_member->group_id); - } else{ - flash('Family member could not be found')->error(); - } - return redirect('insurance_premiums/single_group_receipt'); - } - - public function edit_insurance_premiums_payment($group_id) - { - $insurance_groups = InsuranceGroup::pluck('name', 'id')->toArray();//dd(session()->all()); - - $insurance_groups = ['' => '- select -'] + $insurance_groups; - $insurance_groups = InsuranceGroup::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $insurance_groups = ['' => '- select -'] + $insurance_groups; - - $families = HeadOfFamily::orderBy('name', 'asc')->pluck('id')->toArray(); - $relations = FamilyRelationship::whereNotIn('id',[1])->orderBy('id', 'asc')->pluck('name', 'id')->toArray(); - $relations = ['' => '- select -'] + $relations; - - $occupations = Occupation::orderBy('name')->pluck('name', 'id')->toArray(); - $patient_categories = PatientCategory::where('available', 1)->orderby('name')->pluck('name', 'id')->toArray(); - $districts = District::orderBy('name')->pluck('name', 'id')->toArray(); - $marital_statuses = MaritalStatus::pluck('name', 'id')->toArray(); - $religions = Religion::orderBy('name')->pluck('name', 'id')->toArray(); - $relationships = FamilyRelationship::orderBy('name')->pluck('name', 'id')->toArray(); - - $occupations = ['' => '- select -'] + $occupations; - $districts = ['' => '- select -'] + $districts; - $religions = ['' => '- select -'] + $religions; - $relationships = ['' => '- select -'] + $relationships; - $hospital_information = HospitalInformation::first(); - $dynamic_counties = DB::table('counties')->pluck('name','id')->prepend('- Select County - ', ''); - $dynamic_sub_counties = DB::table('subcounties')->pluck('name','id')->prepend('- Select Sub County - ', ''); - $dynamic_parishes = DB::table('parishes')->pluck('name','id')->prepend('- Select Parish - ', ''); - $villages = DB::table('villages')->pluck('name', 'id')->prepend('- Select Village - ', ''); - - return view('insurance::insurance_premiums.edit', compact('group_id','insurance_groups', 'families', 'relations', 'dynamic_counties', 'dynamic_parishes', 'dynamic_sub_counties', 'relationships', 'religions', 'occupations', 'districts', 'marital_statuses', 'patient_categories', 'hospital_information', 'villages')); - } - - public function edit_single_group_premiums_payment($group_id) - { - $insurance_groups = InsuranceGroup::pluck('name', 'id')->toArray(); - - $insurance_groups = ['' => '- select -'] + $insurance_groups; - - return view('insurance::insurance_premiums.single_group_receipt_edit', compact('group_id','insurance_groups')); - } - - public function remove_family_from_group_premium($family_id) - { - $insurance_members = InsuranceMember::where(['family_id' => $family_id])->orderBy('id', 'desc')->get(); - - $family_head_patient_id = get_name($family_id, "id", "patient_id", "insurance_heads_of_family"); - - //create the array of family ids to exclude and add it in the session - $family_ids_to_exclude_array = session()->has("family_ids_to_exclude") ? session()->get("family_ids_to_exclude") : []; - array_push($family_ids_to_exclude_array, $family_id); - session()->put(["family_ids_to_exclude" => $family_ids_to_exclude_array]); - - - $group_id = 0; - // loop through to create session of members to exclude - if (count($insurance_members) > 0) { - foreach ($insurance_members as $insurance_member) { - $this_family_members_to_exclude_array = session()->has("member_ids_to_exclude") ? session()->get("member_ids_to_exclude") : []; - array_push($this_family_members_to_exclude_array, $insurance_member->id); - - session()->put(["member_ids_to_exclude" => $this_family_members_to_exclude_array]); - - $group_id = $insurance_member->group_id; - } - - flash('The family of '.get_full_name($family_head_patient_id, "id", "first_name", "last_name", "patients").' has been excluded from this group payment')->success(); - - return redirect('edit_single_group_premiums_payment/'.$group_id); - } - - flash('Family member could not be found')->error(); - return back()->withInput(); - } -} diff --git a/docker/statistics/Modules/Insurance/Http/Controllers/InsuranceReportsController.php b/docker/statistics/Modules/Insurance/Http/Controllers/InsuranceReportsController.php deleted file mode 100755 index 910a13d0..00000000 --- a/docker/statistics/Modules/Insurance/Http/Controllers/InsuranceReportsController.php +++ /dev/null @@ -1,409 +0,0 @@ -middleware('auth'); - $this->middleware('permission:insurance-reports', ['only' => ['index']]); - $this->middleware('permission:insurance-almost-expiring', ['only' => ['view_expiry_status', 'view_expiry_status_details']]); - $this->middleware('permission:insurance-drugs-covered', ['only' => ['drugs_covered']]); - $this->middleware('permission:expired-insurance', ['only' => ['expired_insurance', 'expired_insurance_details']]); - $this->middleware('permission:insurance-premiums-report', ['only' => ['insurance_transactions']]); - $this->middleware('permission:insurance-cumulative-premiums-report', ['only' => ['cumulative_premiums_report']]); - $this->middleware('permission:insurance-income-received', ['only' => ['insurance_income_received']]); - $this->middleware('permission:insurance-expenditure', ['only' => ['insurance_expenditure']]); - } - - public function index(){} - - public function view_expiry_status(Request $request) { - $insurance_group_options = InsuranceGroup::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $insurance_group_options = ['' => '- select -'] + $insurance_group_options; - $today = Carbon::today(); - $two_months_from_now = Carbon::now()->addMonths(2); - if ($request->has('group_id')) { - $insurance_groups = InsuranceGroup::orderBy('insurance_subscriptions.end_date', 'asc') - ->join('insurance_subscriptions', 'insurance_groups.id', '=', 'insurance_subscriptions.group_id') - ->select('insurance_groups.name', 'insurance_groups.id', 'insurance_subscriptions.start_date', 'insurance_subscriptions.end_date', 'insurance_subscriptions.payment_date') - ->whereBetween('insurance_subscriptions.end_date', [$today, $two_months_from_now]) - ->where('insurance_subscriptions.group_id', $request->group_id) - ->get(); - } else { - $insurance_groups = InsuranceGroup::orderBy('insurance_subscriptions.end_date', 'asc') - ->join('insurance_subscriptions', 'insurance_groups.id', '=', 'insurance_subscriptions.group_id') - ->select('insurance_groups.name', 'insurance_groups.id', 'insurance_subscriptions.start_date', 'insurance_subscriptions.end_date', 'insurance_subscriptions.payment_date') - ->whereBetween('insurance_subscriptions.end_date', [$today, $two_months_from_now]) - ->get(); - } - - $group_ids = DB::table('insurance_groups')->select('id')->distinct()->get(); - - $total_insurance = DB::table('insurance_subscriptions')->sum('amount'); - - return view('insurance::insurance_reports.view_expiry_status', compact('total_insurance', 'insurance_groups', 'group_ids', 'insurance_group_options')); - } - - public function view_expiry_status_details($id) { - - $insurance_subscriptions = InsuranceSubscription::where(['group_id' => $id])->select('amount', 'start_date', 'end_date', 'payment_date') - ->orderBy('start_date', 'asc')->paginate(50); - - $result = DB::table('insurance_groups')->select('name')->where('id', $id)->first(); - $group_name = $result->name; - - return view('insurance::insurance_reports.view_expiry_status_details', compact('group_name', 'insurance_subscriptions')); - } - - public function expired_insurance() { - $insurance_groups = InsuranceGroup::where('insurance_subscriptions.end_date', '<', date('Y-m-d'))->orderBy('insurance_subscriptions.end_date', 'desc') - ->join('insurance_subscriptions', 'insurance_groups.id', '=', 'insurance_subscriptions.group_id') - ->select('insurance_groups.*', 'insurance_subscriptions.start_date', 'insurance_subscriptions.end_date', 'insurance_subscriptions.payment_date', 'insurance_subscriptions.covered_member_ids', 'insurance_subscriptions.covered_member_premiums_paid') - ->get(50); //this is the old query. I have left if just in case - - $insurance_premiums = DB::select("SELECT insurance_subscriptions.group_id, end_date, start_date, amount, payment_date, covered_member_ids,covered_member_premiums_paid FROM insurance_subscriptions INNER JOIN (SELECT group_id, MAX(end_date) AS max_end_date FROM insurance_subscriptions GROUP BY group_id) ms ON insurance_subscriptions.group_id = ms.group_id AND end_date = max_end_date"); - - return view('insurance::insurance_reports.expired_insurance', compact('insurance_groups', 'insurance_premiums')); - } - - public function expired_insurance_details($id) { - $insurance_subscriptions = DB::table('insurance_subscriptions')->where(['group_id' => $id]) - ->select('amount', 'start_date', 'end_date', 'payment_date', 'covered_member_ids')->orderBy('start_date', 'asc')->paginate(50); - - $result = DB::table('insurance_groups')->select('name')->where('id', $id)->first(); - $group_name = $result->name; - - return view('insurance::insurance_reports.view_expiry_status_details', compact('group_name', 'insurance_subscriptions')); - } - - public function insurance_transactions(Request $request) { - - if($request->start_date){ - $start = Carbon::createFromFormat('d/m/Y', $request->start_date)->toDateString(); - $end = Carbon::createFromFormat('d/m/Y', $request->end_date)->toDateString(); - } else { - $start = Carbon::now()->startOfDay()->toDateTimeString(); - $end = Carbon::now()->endOfDay()->toDateTimeString(); - } - - $search_text = "Searching between " . streamline_date($start) . " and " . streamline_date($end); - - $start = date("Y-m-d", strtotime($start)); - $end = date("Y-m-d", strtotime($end)); - - $insurance_transactions = DB::table('insurance_subscriptions') - ->whereBetween('payment_date', [$start, $end])->get(); - - $insurance_groups = DB::table('insurance_groups')->whereNull('deleted_at')->pluck('name', 'id'); - - return view('insurance::insurance_reports.insurance_transactions', compact('insurance_transactions', 'start', 'end', 'search_text', 'insurance_groups')); - } - - public function cumulative_premiums_report(Request $request) { - - if($request->start_date){ - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date)->toDateString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->end_date)->toDateString(); - } else { - $start_date = Carbon::now()->startOfDay()->toDateTimeString(); - $end_date = Carbon::now()->endOfDay()->toDateTimeString(); - } - - $reports = DB::table('insurance_groups') - ->whereBetween('insurance_subscriptions.payment_date', [$start_date, $end_date]) - ->orderBy('name', 'asc') - ->join('insurance_subscriptions', 'insurance_groups.id', '=', 'insurance_subscriptions.group_id') - ->select('insurance_groups.*', 'insurance_subscriptions.start_date', 'insurance_subscriptions.end_date', 'insurance_subscriptions.payment_date') - ->paginate(50); - - $search_text = "Searching between " . streamline_date($start_date) . " and " . streamline_date($end_date); - - return view('insurance::insurance_reports.cumulative_premiums_report', compact('reports', 'start_date', 'end_date', 'search_text')); - } - - public function group_premiums_report(Request $request) { - $start_date = $request->start_date; - $end_date = $request->end_date; - $id = $request->id; - - $group_transactions = DB::table('insurance_subscriptions')->where(['group_id' => $id]) - ->whereBetween('payment_date', [$start_date, $end_date])->orderBy('payment_date', 'asc')->paginate(50); - - $insurance_groups = InsuranceGroup::orderBy('name', 'asc')->pluck('name', 'id'); - - return view('insurance::insurance_reports.group_premiums_report', compact('group_transactions', 'insurance_groups')); - } - - public function insurance_income_received(Request $request) { - - if($request->start_date){ - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date)->toDateString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->end_date)->toDateString(); - } else { - $start_date = Carbon::now()->startOfDay()->toDateTimeString(); - $end_date = Carbon::now()->endOfDay()->toDateTimeString(); - } - - $premiums = 0; - $co_payments = 0; - - $insurance_subscriptions = DB::table('insurance_subscriptions')->whereBetween('payment_date', [$start_date, $end_date]) - ->select('family_amount')->get(); - - foreach ($insurance_subscriptions as $insurance_subscription) { - $arrayPremium = explode(",", $insurance_subscription->family_amount); - - for ($x = 0; $x < count($arrayPremium); $x++) { - if (is_numeric($arrayPremium[$x])){ - $premiums += $arrayPremium[$x]; - } - } - } - - /*$single_group_receipts_sum = DB::table('single_group_receipts')->whereBetween('payment_date', [$start_date, $end_date]) - ->sum('amount'); - $premiums += $single_group_receipts_sum;*/ - - $service_deposits = DB::table('service_deposits')->whereBetween('created_at', [$start_date, $end_date]) - ->where('service_type', '=', 'Co_Payment')->select('patient_amount_paid')->get(); - - foreach ($service_deposits as $service_deposit) { - $co_payments += $service_deposit->patient_amount_paid; - } - - $insurance_claims = DB::table('insurance_claims') - ->whereBetween('created_at', [$start_date, $end_date]) - ->whereNotIn('claim_status', [1,4,5]) // should be adjudicated or released - ->whereNull('deleted_at')->get(); - - $expenditure_total = 0; - - foreach ($insurance_claims as $insurance_claim) { - $expenditure_total += $insurance_claim->primary_plan_claim_total; - } - - //store dates in session variable - session()->put('start_date', $start_date); - session()->put('end_date', $end_date); - - $total = $premiums + $co_payments; - - $search_text = "Searching between " . streamline_date($start_date) . " and " . streamline_date($end_date); - - return view('insurance::insurance_reports.insurance_income_received', compact('premiums', 'co_payments', 'total', 'search_text', 'expenditure_total')); - } - - public function total_insurance_expenditure_redirect() { - $start_date = session()->get('start_date'); - $end_date = session()->get('end_date'); - - $insurance_claims = DB::table('insurance_claims') - ->whereBetween('created_at', [$start_date, $end_date]) - ->whereNotIn('claim_status', [1,4,5]) // should be adjudicated or released - ->whereNull('deleted_at')->get(); - - $drugs_total = 0; - $investigations_total = 0; - $procedures_total = 0; - $bed_stay_total = 0; - $sundries_total = 0; - $services_total = 0; - - foreach ($insurance_claims as $insurance_claim) { - if ($insurance_claim->item_type == 1) { - $services_total += $insurance_claim->primary_plan_claim_total; - } elseif ($insurance_claim->item_type == 2) { - $procedures_total += $insurance_claim->primary_plan_claim_total; - } elseif ($insurance_claim->item_type == 3) { - $investigations_total += $insurance_claim->primary_plan_claim_total; - } elseif ($insurance_claim->item_type == 4) { - $drugs_total += $insurance_claim->primary_plan_claim_total; - } elseif ($insurance_claim->item_type == 5) { - $sundries_total += $insurance_claim->primary_plan_claim_total; - } elseif ($insurance_claim->item_type == 6) { - $bed_stay_total += $insurance_claim->primary_plan_claim_total; - } - } - - $total = $drugs_total + $investigations_total + $procedures_total + $services_total + $sundries_total + $bed_stay_total; - - $insurance_groups_select = InsuranceGroup::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $insurance_groups_select = ['' => '- select -'] + $insurance_groups_select; - $group_id = 0; - - return view('insurance::insurance_reports.insurance_expenditure', compact('bed_stay_total', 'drugs_total', 'investigations_total', 'procedures_total', 'total', 'sundries_total', 'start_date', 'end_date', 'services_total', 'insurance_groups_select', 'group_id')); - } - - public function insurance_deposit_income() { - $start_date = session()->get('start_date'); - $end_date = session()->get('end_date'); - - $service_deposits = DB::table('service_deposits')->whereBetween('created_at', [$start_date, $end_date]) - ->where('service_type', '=', 'Co_Payment')->orderBy('created_at', 'asc')->get(); - - $groups = DB::table('insurance_members')->orderBy('id', 'asc')->pluck('group_id', 'patient_id'); - - $families = DB::table('insurance_members')->orderBy('id', 'asc')->pluck('family_id', 'patient_id'); - - $search_text = "Showing details for " . streamline_date($start_date) . " to " . streamline_date($end_date); - - return view('insurance::insurance_reports.insurance_deposit_income', compact('service_deposits', 'families', 'groups', 'search_text')); - } - - public function insurance_income_received_details() { - $start_date = session()->get('start_date'); - $end_date = session()->get('end_date'); - - $insurance_subscriptions = DB::table('insurance_subscriptions')->whereBetween('payment_date', [$start_date, $end_date]) - ->orderBy('payment_date', 'asc')->get(); - - $single_group_receipts = []; /*DB::table('single_group_receipts')->whereBetween('payment_date', [$start_date, $end_date]) - ->get();*/ - - $search_text = "Showing details for " . streamline_date($start_date) . " to " . streamline_date($end_date); - - return view('insurance::insurance_reports.insurance_income_received_details', compact('insurance_subscriptions', 'search_text', 'single_group_receipts')); - } - - public function insurance_expenditure(Request $request) { - $start_date = Carbon::now()->startOfDay()->toDateTimeString(); - $end_date = Carbon::now()->endOfDay()->toDateTimeString(); - $filter = []; - $group_id = 0; - - try { - if($request->start_date){ - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date)->toDateString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->end_date)->toDateString(); - } elseif (!empty(session()->get('start_date'))) { - $start_date = Carbon::createFromFormat('Y-m-d', session()->get('start_date'))->toDateString(); - $end_date = Carbon::createFromFormat('Y-m-d', session()->get('end_date'))->toDateString(); - } - } catch (\Exception $e) {} - - if (isset($request->group_id)) { - $filter[] = ['group_id', '=', $request->group_id]; - $group_id = $request->group_id; - session()->put('group_id', $request->group_id); - } - - $insurance_claims = DB::table('insurance_claims') - ->where($filter) - ->whereBetween('created_at', [$start_date, $end_date]) - ->whereNotIn('claim_status', [1,4,5]) // should be adjudicated or released - ->whereNull('deleted_at')->get(); - - $drugs_total = 0; - $investigations_total = 0; - $procedures_total = 0; - $bed_stay_total = 0; - $sundries_total = 0; - $services_total = 0; - - foreach ($insurance_claims as $insurance_claim) { - if ($insurance_claim->item_type == 1) { - $services_total += $insurance_claim->primary_plan_claim_total; - } elseif ($insurance_claim->item_type == 2) { - $procedures_total += $insurance_claim->primary_plan_claim_total; - } elseif ($insurance_claim->item_type == 3) { - $investigations_total += $insurance_claim->primary_plan_claim_total; - } elseif ($insurance_claim->item_type == 4) { - $drugs_total += $insurance_claim->primary_plan_claim_total; - } elseif ($insurance_claim->item_type == 5) { - $sundries_total += $insurance_claim->primary_plan_claim_total; - } elseif ($insurance_claim->item_type == 6) { - $bed_stay_total += $insurance_claim->primary_plan_claim_total; - } - } - - $total = $drugs_total + $investigations_total + $procedures_total + $services_total + $sundries_total + $bed_stay_total; - - //store dates in session variable - session()->put('start_date', $start_date); - session()->put('end_date', $end_date); - - $insurance_groups_select = InsuranceGroup::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $insurance_groups_select = ['' => '- select -'] + $insurance_groups_select; - - return view('insurance::insurance_reports.insurance_expenditure', compact('drugs_total', 'investigations_total', 'procedures_total', 'services_total', 'total', 'sundries_total', 'start_date', 'end_date', 'bed_stay_total', 'insurance_groups_select', 'group_id')); - } - - public function insurance_expenditure_details($item_type) { - //get date - $start_date = session()->get('start_date'); - $end_date = session()->get('end_date'); - $group_id = session()->get('group_id'); - - $item_type_name = [1 => 'Services', 2 => 'Procedures', 3 => 'Investigations', 4 => 'Drugs', 5 => 'Sundries', 6 => 'Inpatient Accommodation'][$item_type] ?? ""; - if(!empty($group_id)) $insurance_claims = DB::table('insurance_claims') - ->where([['item_type', $item_type], ['group_id', $group_id]]) - ->whereBetween('created_at', [$start_date, $end_date]) - ->whereNotIn('claim_status', [1,4,5]) // should be adjudicated or released - ->whereNull('deleted_at')->get(); - else $insurance_claims = DB::table('insurance_claims') - ->where('item_type', $item_type) - ->whereBetween('created_at', [$start_date, $end_date]) - ->whereNotIn('claim_status', [1,4,5]) // should be adjudicated or released - ->whereNull('deleted_at')->get(); - - if ($item_type == 1) { - $items = DB::table('services')->where('available', 1)->pluck('name', 'id'); - } elseif ($item_type == 2) { - $items = DB::table('procedures')->where('available', 1)->pluck('name', 'id'); - } elseif ($item_type == 3) { - $items = DB::table('investigations')->pluck('name', 'id'); - } elseif ($item_type == 4) { - $items = DB::table('drugs')->pluck('name', 'id'); - } elseif ($item_type == 5) { - $items = DB::table('sundries')->where('available', 1)->pluck('name', 'id'); - } elseif ($item_type == 6) { - $items = DB::table('inpatient_bed_categories')->pluck('name', 'id'); - } else { - $items = []; - } - - return view('insurance::insurance_reports.insurance_expenditure_details', compact('insurance_claims', 'start_date', 'end_date', 'item_type_name', 'items', 'item_type')); - } - - public function expired_premiums_search(Request $request) - { - $search_by = $request->search_by; - $reg_date = $request->reg_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - - if (!is_null($search_by) && $search_by != "3"){ - if($search_by == "1"){ - // custom date - $start_date_search = Carbon::parse($reg_date)->startOfDay()->toDateString(); - $end_date_search = Carbon::parse($reg_date)->endOfDay()->toDateString(); - } elseif($search_by == "2"){ - // custom date range - $start_date_search = Carbon::parse($start_date)->startOfDay()->toDateString(); - $end_date_search = Carbon::parse($end_date)->endOfDay()->toDateString(); - } else { - $start_date_search = Carbon::now()->subDay()->toDateString(); - $end_date_search = Carbon::now()->toDateString(); - } - - $insurance_premiums = DB::select("SELECT insurance_subscriptions.group_id, end_date, start_date, amount, payment_date, covered_member_ids,covered_member_premiums_paid FROM insurance_subscriptions INNER JOIN (SELECT group_id, MAX(end_date) AS max_end_date FROM insurance_subscriptions GROUP BY group_id) ms ON insurance_subscriptions.group_id = ms.group_id AND end_date = max_end_date WHERE end_date BETWEEN '{$start_date_search}' AND '{$end_date_search}'"); - } else { - $insurance_premiums = DB::select("SELECT insurance_subscriptions.group_id, end_date, start_date, amount, payment_date, covered_member_ids,covered_member_premiums_paid FROM insurance_subscriptions INNER JOIN (SELECT group_id, MAX(end_date) AS max_end_date FROM insurance_subscriptions GROUP BY group_id) ms ON insurance_subscriptions.group_id = ms.group_id AND end_date = max_end_date"); - } - - return view('insurance::insurance_reports.expired_insurance', compact('insurance_premiums')); - } - -} diff --git a/docker/statistics/Modules/Insurance/Http/Controllers/InsuranceTariffsController.php b/docker/statistics/Modules/Insurance/Http/Controllers/InsuranceTariffsController.php deleted file mode 100644 index 99d4f30e..00000000 --- a/docker/statistics/Modules/Insurance/Http/Controllers/InsuranceTariffsController.php +++ /dev/null @@ -1,249 +0,0 @@ -where('id', $item_id)->first(); - break; - case 2: - $item = DB::table('procedures')->where('id', $item_id)->first(); - break; - case 3: - $item = DB::table('investigations')->where('id', $item_id)->first(); - break; - case 4: - $item = DB::table('drugs')->where('id', $item_id)->first(); - break; - case 5: - $item = DB::table('sundries')->where('id', $item_id)->first(); - break; - } - - $item_details = get_item_insurance_details($item_id, $item_type, $benefit_id); - - $item_name = $item ? $item->name : ''; - $item_cash_price = $item ? $item->non_insured_price : 0; - $co_payment = $item_details ? $item_details['co_payment'] : 0; - $ipd_co_payment = $item_details ? ($item_details['ipd_co_payment'] ?? 0) : 0; - - return view('insurance::insurance_tariffs.add_tariff', compact('benefit', 'item_type', 'item_name', 'item_id', 'item_cash_price', 'co_payment', 'ipd_co_payment')); - } - - public function save_tariff(Request $request) { - request()->validate([ - 'age_limit_start' => 'nullable|required_with:age_limit_end|integer', - 'age_limit_end' =>'bail|nullable|required_with:age_limit_start|integer' - ]); - - $tariff = new InsuranceTariff(); - $tariff->benefit_id = $request->benefit_id; - $tariff->plan_id = get_name($request->benefit_id, 'id', 'plan_id', 'insurance_benefits'); - $tariff->item_id = $request->item_id; - $tariff->item_type = $request->item_type; - $tariff->name = $request->tariff_name; - $tariff->age_limit = $request->age_limit_start . ',' . $request->age_limit_end; - $tariff->age_type = $request->age_type; - $tariff->gender = $request->gender; - $tariff->authorisation_required = $request->authorisation; - $tariff->tariff_price = $request->tariff_price; - $tariff->ipd_tariff_price = $request->ipd_tariff_price; - $tariff->created_by = Auth::id(); - - try { - $tariff->save(); - flash("Tariff has been added to the item")->success(); - return redirect('/insurance_benefits/view_items/' . $request->benefit_id . '/' . $request->item_type); - } catch (\Exception $e) { - flash("An error occurred. Please try again later")->error(); - return back()->withInput(); - } - } - - public function get_item_tariffs($benefit_id, $item_id, $item_type) { - $tariffs = InsuranceTariff::where('benefit_id', $benefit_id) - ->where('item_id', $item_id)->where('item_type', $item_type)->get(); - $time_periods = [0 => 'Days', 1 => 'Months', 2 => 'Years']; - $genders = [0 => 'All', 1 => 'Male', 2 => 'Female']; - - if (count($tariffs) > 0) { - $return_code = ""; - $return_code .= ""; - $return_code .= ""; - $return_code .= ""; - $return_code .= ""; - $return_code .= ""; - $return_code .= ""; - - foreach ($tariffs as $tariff) { - $age_limits = explode(",", $tariff->age_limit); - $return_code .= ""; - $return_code .= ""; - $return_code .= ""; - $return_code .= ""; - $return_code .= ""; - $return_code .= ""; - $return_code .= ""; - $return_code .= ""; - $return_code .= ""; - $return_code .= ""; - } - $return_code .= ""; - - $return_code .= "
    " . __('insurance_benefits.tariff_name') . "" . __('insurance_benefits.gender') . "" . __('insurance_benefits.age_limit') . "" . __('insurance_benefits.tariff_price') . "" . __('insurance_benefits.ipd_tariff_price') . "" . __('insurance_benefits.authorisation') . "
    " . $tariff->name . "" . ($genders[$tariff->gender] ?? 'All') . "" . ($age_limits[0] ?? "0") . ' to ' . ($age_limits[1] ?? "0") . ' ' . $time_periods[$tariff->age_type] ?? 'years' . "" . ugandan_shillings($tariff->tariff_price) . "" . ugandan_shillings($tariff->ipd_tariff_price) . "" . ($tariff->authorisation == 1 ? 'Yes' : 'No') . "" . (Auth::user()->can('insurance-tariffs-edit') ? "Edit" : "") . "" . (Auth::user()->can('insurance-tariffs-delete') ? "Deactivate" : "") . "
    "; - - return $return_code; - } else { - return "

    No tariffs registered for this item

    "; - } - } - - public function edit($id) { - $tariff = InsuranceTariff::find($id); - $benefit = InsuranceBenefit::find($tariff->benefit_id); - $item_id = $tariff->item_id; - $item_type = $tariff->item_type; - $item = false; - - switch ($item_type) { - case 1: - $item = DB::table('services')->where('id', $item_id)->first(); - break; - case 2: - $item = DB::table('procedures')->where('id', $item_id)->first(); - break; - case 3: - $item = DB::table('investigations')->where('id', $item_id)->first(); - break; - case 4: - $item = DB::table('drugs')->where('id', $item_id)->first(); - break; - case 5: - $item = DB::table('sundries')->where('id', $item_id)->first(); - break; - } - - $item_details = get_item_insurance_details($item_id, $item_type, $tariff->benefit_id); - - $item_name = $item ? $item->name : ''; - $item_cash_price = $item ? $item->non_insured_price : 0; - $co_payment = $item_details ? $item_details['co_payment'] : 0; - $ipd_co_payment = $item_details ? ($item_details['ipd_co_payment'] ?? 0) : 0; - - return view('insurance::insurance_tariffs.edit', compact('tariff', 'benefit', 'item_type', 'item_name', 'item_id', 'co_payment', 'item_cash_price', 'ipd_co_payment')); - } - - public function update_tariff(Request $request) { - request()->validate([ - 'age_limit_start' => 'nullable|required_with:age_limit_end|integer', - 'age_limit_end' =>'bail|nullable|required_with:age_limit_start|integer' - ]); - $tariff = InsuranceTariff::find($request->tariff_id); - - $tariff->name = $request->name; - $tariff->age_limit = $request->age_limit_start . ',' . $request->age_limit_end; - $tariff->age_type = $request->age_type; - $tariff->gender = $request->gender; - $tariff->authorisation_required = $request->authorisation; - $tariff->tariff_price = $request->tariff_price; - $tariff->ipd_tariff_price = $request->ipd_tariff_price; - $tariff->updated_by = Auth::id(); - - try { - $tariff->save(); - flash("Tariff has been edited")->success(); - return redirect('/insurance_benefits/view_items/' . $tariff->benefit_id . '/' . $tariff->item_type); - } catch (\Exception $e) { - flash("An error occurred. Please try again later")->error(); - return back()->withInput(); - } - } - - public function delete($id) { - $tariff = InsuranceTariff::find($id); - - try { - $tariff->delete(); - flash("Insurance Tariff has been deactivated")->success(); - return redirect("/insurance_benefits/"); - } catch (QueryException $e) { - flash("An error occurred. Please try again later")->error(); - return back()->withInput(); - } - } - - public function view_tariffs(Request $request) { - $filters = []; - $search_text = ''; - - $services = DB::table('services')->whereNull('deleted_at')->pluck('name', 'id'); - $procedures = DB::table('procedures')->whereNull('deleted_at')->pluck('name', 'id'); - $investigations = DB::table('investigations')->whereNull('deleted_at')->pluck('name', 'id'); - $drugs = DB::table('drugs')->where('available', 1)->whereNull('deleted_at')->pluck('name', 'id'); - $sundries = DB::table('sundries')->whereNull('deleted_at')->pluck('name', 'id'); - $insurance_benefits = DB::table('insurance_benefits')->whereNull('deleted_at')->pluck('name', 'id')->toArray(); - $insurance_benefits = ['' => '-- select --'] + $insurance_benefits; - $insurance_plans = DB::table('community_health_insurance_plans')->whereNull('deleted_at')->pluck('name', 'id')->toArray(); - $insurance_plans = ['' => '-- select --'] + $insurance_plans; - - if (!is_null($request->insurance_benefit) && is_numeric($request->insurance_benefit)) { - $filters[] = ['benefit_id', '=', $request->insurance_benefit]; - $search_text = "Insurance Benefit: " . $insurance_benefits[$request->insurance_benefit] . " "; - } - - if (!is_null($request->insurance_plan) && is_numeric($request->insurance_plan)) { - $filters[] = ['plan_id', '=', $request->insurance_plan]; - $search_text = "Insurance Plan: " . $insurance_plans[$request->insurance_plan]; - } - - $tariffs = InsuranceTariff::where($filters)->get(); - - return view('insurance::insurance_tariffs.view_tariffs', compact('tariffs', 'services', 'procedures', 'investigations', 'drugs', 'sundries', 'insurance_benefits', 'insurance_plans', 'search_text')); - } - - public function view_inactive_tariffs() { - $services = DB::table('services')->whereNull('deleted_at')->pluck('name', 'id'); - $procedures = DB::table('procedures')->whereNull('deleted_at')->pluck('name', 'id'); - $investigations = DB::table('investigations')->whereNull('deleted_at')->pluck('name', 'id'); - $drugs = DB::table('drugs')->where('available', 1)->whereNull('deleted_at')->pluck('name', 'id'); - $sundries = DB::table('sundries')->whereNull('deleted_at')->pluck('name', 'id'); - $insurance_benefits = DB::table('insurance_benefits')->whereNull('deleted_at')->pluck('name', 'id')->toArray(); - $insurance_benefits = ['' => '-- select --'] + $insurance_benefits; - $insurance_plans = DB::table('community_health_insurance_plans')->whereNull('deleted_at')->pluck('name', 'id')->toArray(); - $insurance_plans = ['' => '-- select --'] + $insurance_plans; - - $tariffs = InsuranceTariff::onlyTrashed()->get(); - - if (count($tariffs) < 1) { - flash()->error("There is no inactive tariffs"); - return redirect('/insurance_tariffs/view_tariffs'); - } else { - return view('insurance::insurance_tariffs.view_inactive_tariffs', compact('tariffs', 'services', 'procedures', 'investigations', 'drugs', 'sundries', 'insurance_benefits', 'insurance_plans')); - } - } - - public function activate_tariff($id) { - $tariff = InsuranceTariff::withTrashed()->find($id); - - if($tariff->restore()){ - flash("Insurance tariff has been activated.")->success(); - } else { - flash("An error occurred. Please try again later")->error(); - } - - return redirect('/insurance_tariffs/view_tariffs'); - } -} diff --git a/docker/statistics/Modules/Insurance/Http/Controllers/PersonTitleController.php b/docker/statistics/Modules/Insurance/Http/Controllers/PersonTitleController.php deleted file mode 100644 index 7fac8d84..00000000 --- a/docker/statistics/Modules/Insurance/Http/Controllers/PersonTitleController.php +++ /dev/null @@ -1,194 +0,0 @@ -middleware('auth'); - $this->middleware('permission:person-title-list', ['only' => ['index']]); - $this->middleware('permission:person-title-detail', ['only' => ['show']]); - $this->middleware('permission:person-title-create', ['only' => ['create', 'store']]); - $this->middleware('permission:person-title-edit', ['only' => ['edit', 'edit_all', 'update', 'update_all', 'updatePatientEpisode']]); - $this->middleware('permission:person-title-delete', ['only' => ['destroy']]); - $this->middleware('permission:person-title-status', ['only' => ['activate, inactive']]); - } - /** - * Display a listing of the resource. - * - */ - public function index() { - $person_titles = PersonTitle::orderBy('name', 'asc')->paginate(50); - - return view('insurance::person_titles.index', compact('person_titles')); - } - - /** - * Show the form for creating a new resource. - * - */ - public function create() { - return view('insurance::person_titles.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) - { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } - - else { - $person_title = new PersonTitle; - - $person_title->name = $request->name; - $person_title->created_by = Auth::user()->id; - $person_title->updated_by = Auth::user()->id; - - try { - $person_title->save(); - flash($request->name . " person_title has been saved")->success(); - return redirect("/person_titles/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Display the specified resource. - * - * @param \Streamline\person_titles $person_titles - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - */ - public function edit($id) - { - $person_title = PersonTitle::where(['id' => $id])->first(); - - if (!$person_title) { - flash()->error("There is no such person title"); - return redirect('/person_titles/'); - } else { - return view('insurance::person_titles.edit', compact('person_title')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param \Streamline\person_titles $person_titles - * @return \Illuminate\Http\Response - */ - public function update(Request $request, PersonTitle $person_titles) - { - $validator = Validator::make($request->all(), [ - 'name' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - //flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth::user()->id; - - $person_title = PersonTitle::find($request->id); - $person_title->name = $request->name; - $person_title->updated_by = $logged_in_user_id; - - try { - $person_title->save(); - flash($request->name . " person title has been updated")->success(); - return redirect("/person_titles/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - } - - /** - * Remove the specified resource from storage. - * - * @param \Streamline\person_titles $person_titles - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - $person_title = PersonTitle::find($id); - - if ($person_title->delete()): - flash("person title has been deleted.")->success(); - return redirect('/person_titles/'); - endif; - - } - - /** - * Display a listing of the inactive resource(s). - * - */ - public function inactive() - { - $person_titles = PersonTitle::onlyTrashed()->orderBy('name', 'asc') ->paginate(50); - - if (count($person_titles) < 1) { - flash()->error("There is no inactive person_title"); - return redirect('/person_titles/'); - } else { - return view('insurance::person_titles.inactive', compact('person_titles')); - } - } - - /** - * Activate the specified resource in storage. - * - */ - public function activate($id) - { - $person_title = PersonTitle::withTrashed()->find($id); - - if ($person_title->restore()): - flash("Person title has been activated.")->success(); - return redirect('/person_titles/inactive'); - endif; - } -} diff --git a/docker/statistics/Modules/Insurance/Http/Controllers/RiskController.php b/docker/statistics/Modules/Insurance/Http/Controllers/RiskController.php deleted file mode 100644 index ebf1bc10..00000000 --- a/docker/statistics/Modules/Insurance/Http/Controllers/RiskController.php +++ /dev/null @@ -1,140 +0,0 @@ -middleware('auth'); - $this->middleware('permission:insurance-risk-list', ['only' => ['index']]); - $this->middleware('permission:insurance-risk-create', ['only' => ['create', 'store']]); - $this->middleware('permission:insurance-risk-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:insurance-risk-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() - { - $risks = Risk::all(); - return view('insurance::risks.index', compact('risks')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - return view('insurance::risks.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - $validatedData = $request->validate([ - 'code' => 'required|max:8|unique:community_health_insurance_risks', - 'name' => 'required|max:30', - 'factor' => 'required', - 'amount' => 'required' - ]); - $validatedData['created_by'] = Auth::user()->id; - Risk::create($validatedData); - return redirect()->route('risks.index')->with('success','Risk created successfully.'); - } - - /** - * Display the specified resource. - * - */ - public function show($id) - { - $risk = Risk::findOrFail($id); - return view('insurance::risks.show', compact('risk')); - } - - /** - * Show the form for editing the specified resource. - * - */ - public function edit($id) - { - $risk = Risk::findOrFail($id); - return view('insurance::risks.edit', compact('risk')); - } - - /** - * Update the specified resource in storage. - * - */ - public function update(Request $request, $id) - { - $risk = Risk::findOrFail($id); - $validatedData = $request->validate([ - 'code' => 'required|max:8|unique:community_health_insurance_risks,code,'.$id, - 'name' => 'required|max:30', - 'factor' => 'required', - 'amount' => 'required' - ]); - $validatedData['updated_by'] = Auth::user()->id; - $risk->update($validatedData); - return redirect()->route('risks.index')->with('success','Risk updated successfully.'); - } - - /** - * Remove the specified resource from storage. - * - */ - public function destroy($id) - { - $risk = Risk::findOrFail($id); - $risk->delete(); - - return redirect()->route('risks.index')->with('success','Risk deleted successfully'); - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() - { - $risks = Risk::onlyTrashed()->get(); - return view('insurance::risks.inactive', compact('risks')); - - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) - { - $risk = Risk::onlyTrashed()->findOrFail($id); - - if ($risk->restore()) return redirect()->route('risks.index')->with('success','Risk Activated successfully'); - else { - flash()->error("Budget hasn't been activated."); - return redirect()->route('risks.inactive'); - } - } - - -} diff --git a/docker/statistics/Modules/Insurance/Providers/InsuranceServiceProvider.php b/docker/statistics/Modules/Insurance/Providers/InsuranceServiceProvider.php deleted file mode 100644 index 6334c20e..00000000 --- a/docker/statistics/Modules/Insurance/Providers/InsuranceServiceProvider.php +++ /dev/null @@ -1,113 +0,0 @@ -registerTranslations(); - $this->registerConfig(); - $this->registerViews(); - $this->loadMigrationsFrom(module_path($this->moduleName, 'Database/Migrations')); - } - - /** - * Register the service provider. - * - * @return void - */ - public function register() - { - $this->app->register(RouteServiceProvider::class); - } - - /** - * Register config. - * - * @return void - */ - protected function registerConfig() - { - $this->publishes([ - module_path($this->moduleName, 'Config/config.php') => config_path($this->moduleNameLower . '.php'), - ], 'config'); - $this->mergeConfigFrom( - module_path($this->moduleName, 'Config/config.php'), $this->moduleNameLower - ); - } - - /** - * Register views. - * - * @return void - */ - public function registerViews() - { - $viewPath = resource_path('views/modules/' . $this->moduleNameLower); - - $sourcePath = module_path($this->moduleName, 'Resources/views'); - - $this->publishes([ - $sourcePath => $viewPath - ], ['views', $this->moduleNameLower . '-module-views']); - - $this->loadViewsFrom(array_merge($this->getPublishableViewPaths(), [$sourcePath]), $this->moduleNameLower); - } - - /** - * Register translations. - * - * @return void - */ - public function registerTranslations() - { - $langPath = resource_path('lang/modules/' . $this->moduleNameLower); - - if (is_dir($langPath)) { - $this->loadTranslationsFrom($langPath, $this->moduleNameLower); - $this->loadJsonTranslationsFrom($langPath); - } else { - $this->loadTranslationsFrom(module_path($this->moduleName, 'Resources/lang'), $this->moduleNameLower); - $this->loadJsonTranslationsFrom(module_path($this->moduleName, 'Resources/lang')); - } - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides() - { - return []; - } - - private function getPublishableViewPaths(): array - { - $paths = []; - foreach (\Config::get('view.paths') as $path) { - if (is_dir($path . '/modules/' . $this->moduleNameLower)) { - $paths[] = $path . '/modules/' . $this->moduleNameLower; - } - } - return $paths; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Providers/RouteServiceProvider.php b/docker/statistics/Modules/Insurance/Providers/RouteServiceProvider.php deleted file mode 100755 index f69d370b..00000000 --- a/docker/statistics/Modules/Insurance/Providers/RouteServiceProvider.php +++ /dev/null @@ -1,68 +0,0 @@ -mapApiRoutes(); - $this->mapWebRoutes(); - } - - /** - * Define the "web" routes for the application. - * - * These routes all receive session state, CSRF protection, etc. - * - * @return void - */ - protected function mapWebRoutes() - { - Route::middleware('web') - ->namespace($this->namespace) - ->group(module_path('Insurance', '/Routes/web.php')); - } - - /** - * Define the "api" routes for the application. - * - * These routes are typically stateless. - * - * @return void - */ - protected function mapApiRoutes() - { - Route::prefix('api') - ->middleware('api') - ->namespace($this->namespace) - ->group(module_path('Insurance', '/Routes/api.php')); - } -} diff --git a/docker/statistics/Modules/Insurance/Resources/views/chi_plan/create.blade.php b/docker/statistics/Modules/Insurance/Resources/views/chi_plan/create.blade.php deleted file mode 100755 index b63942f6..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/chi_plan/create.blade.php +++ /dev/null @@ -1,125 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('title', '| Add Plan') - -@section('content') - -
    -
    -

    {{ __('insurance.create_chi_plan') }}

    -
    -
    - -
    - -
    - -
    -
    - @include('insurance::chi_plan.menu') -
    -
    - -@include('flash::message') - -
    - -
    - {{ Form::open(['route' => 'community_health_insurance_plan.store','data-toggle'=>'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('insurance.name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('plan_start_date', __('insurance.start_date')) }} -
    - {{ Form::text('plan_start_date','',['class' => 'form-control compulsory','readonly','id'=>'plan_start_date']) }} - -
    -
    -
    - -
    - {{ Form::label('plan_end_date', __('insurance.end_date')) }} -
    - {{ Form::text('plan_end_date','',['class' => 'form-control compulsory','readonly','id'=>'plan_end_date']) }} - -
    -
    -
    - -
    - {{ Form::label('is_authorization_required', __('insurance.is_authorization_required')) }} - {{ Form::select('is_authorization_required', ['' => '-- Select --', 1 => 'Yes', 0 => 'No'], '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    - {{ Form::label('plan_fee', __('insurance.plan_fee')) }} - {{ Form::number('plan_fee', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('member_annual_limit', __('insurance.overall_annual_limit_for_member') . ' (' . __('insurance_claims.no_limit_applicable') . ')') }} - {{ Form::number('member_annual_limit', 0, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('family_annual_limit', __('insurance.overall_annual_limit_for_family') . ' (' . __('insurance_claims.no_limit_applicable') . ')') }} - {{ Form::number('family_annual_limit', 0, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('membership_card_color', __('insurance.membership_card_color')) }} - {{ Form::select('membership_card_color', ['' => '-- Select --', 'green' => 'Green', 'blue' => 'Blue'], '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    - - {{ Form::button(__('drug_forms.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::button(__('drug_forms.cancel'),['type'=>'reset','class'=>'btn btn-default btn-rounded waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -@endsection - - -@push('scripts') - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/chi_plan/edit.blade.php b/docker/statistics/Modules/Insurance/Resources/views/chi_plan/edit.blade.php deleted file mode 100755 index 214ba675..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/chi_plan/edit.blade.php +++ /dev/null @@ -1,125 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('title', '| Edit Plan') - -@section('content') - -
    -
    -

    {{ __('insurance.create_chi_plan') }}

    -
    -
    - -
    - -
    - -
    -
    - @include('insurance::chi_plan.menu') -
    -
    - -@include('flash::message') - -
    - -
    - {{ Form::model($chi_plan, ['method' => 'PUT', 'route' => ['community_health_insurance_plan.update',$chi_plan]]) }} - -
    -
    -
    - {{ Form::label('name', __('insurance.name')) }} - {{ Form::text('name', $chi_plan->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('plan_start_date', __('insurance.start_date')) }} -
    - {{ Form::text('plan_start_date',date_format(date_create($chi_plan->plan_start_date), 'd-m-Y'),['class' => 'form-control compulsory','readonly','id'=>'plan_start_date']) }} - -
    -
    -
    - -
    - {{ Form::label('plan_end_date', __('insurance.end_date')) }} -
    - {{ Form::text('plan_end_date',date_format(date_create($chi_plan->plan_end_date), 'd-m-Y'),['class' => 'form-control compulsory','readonly','id'=>'plan_end_date']) }} - -
    -
    -
    - -
    - {{ Form::label('is_authorization_required', __('insurance.is_authorization_required')) }} - {{ Form::select('is_authorization_required', ['' => '-- Select --', 1 => 'Yes', 0 => 'No'], $chi_plan->is_authorized_required, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    - {{ Form::label('plan_fee', __('insurance.plan_fee')) }} - {{ Form::number('plan_fee', $chi_plan->plan_fee, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('member_annual_limit', __('insurance.overall_annual_limit_for_member') . ' (' . __('insurance_claims.no_limit_applicable') . ')') }} - {{ Form::number('member_annual_limit', $chi_plan->member_annual_limit, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('family_annual_limit', __('insurance.overall_annual_limit_for_family') . ' (' . __('insurance_claims.no_limit_applicable') . ')') }} - {{ Form::number('family_annual_limit', $chi_plan->family_annual_limit, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('membership_card_color', __('insurance.membership_card_color')) }} - {{ Form::select('membership_card_color', ['' => '-- Select --', 'green' => 'Green', 'blue' => 'Blue'], $chi_plan->membership_card_color, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    - - {{ Form::button(__('drug_forms.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::button(__('drug_forms.cancel'),['type'=>'reset','class'=>'btn btn-default btn-rounded waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -@endsection - - -@push('scripts') - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/chi_plan/inactive.blade.php b/docker/statistics/Modules/Insurance/Resources/views/chi_plan/inactive.blade.php deleted file mode 100755 index 159952b3..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/chi_plan/inactive.blade.php +++ /dev/null @@ -1,76 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance.inactive_CHI_plans') }}

    -
    -
    - -
    - -
    - -
    -
    - @include('insurance::chi_plan.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    - - - - - - - - - - - - - @foreach($chi_plans as $chi_plan) - - - - - - - - - - @endforeach - - -
    {{ __('insurance.chi_plan') }}{{ __('insurance.start_date') }}{{ __('insurance.end_date') }}{{ __('insurance.is_authorization_required') }}{{ __('insurance.created_by') }}
    {{ $chi_plan->name }}{{ $chi_plan->plan_start_date }}{{ $chi_plan->plan_end_date }}{{ $chi_plan->is_authorization_required == 1 ? 'Yes' : 'No' }}{{ get_full_name($chi_plan->created_by, "id", "first_name", "last_name", "users") }} - {{ Form::model($chi_plan->id ,['method' => 'POST', 'route' => ['community_health_insurance_plan.activate', $chi_plan->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/chi_plan/index.blade.php b/docker/statistics/Modules/Insurance/Resources/views/chi_plan/index.blade.php deleted file mode 100755 index d25fb822..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/chi_plan/index.blade.php +++ /dev/null @@ -1,147 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance.CHI_plans') }}

    -
    -
    - -
    - -
    - -
    -
    - @include('insurance::chi_plan.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    - - - - - - - - - - - - - - - - - - @foreach($chi_plans as $chi_plan) - - - - - - - - - - - - - - - @endforeach - - -
    {{ __('insurance.chi_plan') }}{{ __('insurance.start_date') }}{{ __('insurance.end_date') }}{{ __('insurance.plan_fee') }}{{ __('insurance.overall_annual_limit_for_member') }}{{ __('insurance.overall_annual_limit_for_family') }}{{ __('insurance.is_authorization_required') }}{{ __('insurance.created_by') }}
    {{ $chi_plan->name }}{{ $chi_plan->plan_start_date }}{{ $chi_plan->plan_end_date }}{{ ugandan_shillings($chi_plan->plan_fee) }}{{ ugandan_shillings($chi_plan->member_annual_limit) }}{{ ugandan_shillings($chi_plan->family_annual_limit) }}{{ ($chi_plan->is_authorized_required == 1) ? 'Yes' : 'No' }}{{ get_full_name($chi_plan->created_by, "id", "first_name", "last_name", "users") }} at {{ streamline_date_time($chi_plan->created_at) }} - {{ __('drug_forms.edit') }} - - {{ __('insurance.details') }} - - {{ Form::model($chi_plan->id ,['method' => 'DELETE', 'route' => ['community_health_insurance_plan.destroy', $chi_plan->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/chi_plan/menu.blade.php b/docker/statistics/Modules/Insurance/Resources/views/chi_plan/menu.blade.php deleted file mode 100755 index a8df6452..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/chi_plan/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    - -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/chi_plan/print_plan_details.blade.php b/docker/statistics/Modules/Insurance/Resources/views/chi_plan/print_plan_details.blade.php deleted file mode 100644 index bf739c15..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/chi_plan/print_plan_details.blade.php +++ /dev/null @@ -1,375 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Inpatient Bill - Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') - -
    -
    -

    {{ $chi_plan->name }} {{ __('insurance.details') }}

    - - - - - - - - - - - - - - - -
    {{ __('insurance.plan_name') }}{{ $chi_plan->name }}{{ __('insurance.plan_fee') }}{{ ugandan_shillings($chi_plan->plan_fee) }}
    {{ __('insurance_groups.start_date') }}{{ streamline_date($chi_plan->plan_start_date) }}{{ __('insurance_groups.end_date') }}{{ streamline_date($chi_plan->plan_end_date) }}
    -
    -
    - -
    -
    -

    -

    {{ __('insurance.plan_benefits') }}

    - @php - $insurance_benefits = \Streamline\Models\InsuranceBenefit::where('plan_id', $chi_plan->id)->get(); - @endphp - - @if(count($insurance_benefits) > 0) - @php $counter = 1 @endphp - @foreach($insurance_benefits as $insurance_benefit) - - - - - - - - - - - - - - - -
    {{ $counter }}. Benefit Name: {{ $insurance_benefit->name }}    Waiting Period:{{ $insurance_benefit->waiting_period }}
        Benefit Fee: {{ ugandan_shillings_with_decimals($insurance_benefit->fee) }}    Created By: {{ get_full_name($insurance_benefit->created_by, "id", "first_name", "last_name", "patients") }} at {{ streamline_date($insurance_benefit->created_at) }}
    - - @php - $counter++; - $benefit = \Streamline\Models\InsuranceBenefit::find($insurance_benefit->id); - $benefit_drugs = DB::table('insurance_benefit_items')->whereNull('deleted_at')->where('item_type', 4) - ->where('benefit_id', $insurance_benefit->id)->get(); - $benefit_sundries = DB::table('insurance_benefit_items')->whereNull('deleted_at')->where('item_type', 5) - ->where('benefit_id', $insurance_benefit->id)->get(); - $benefit_invs = DB::table('insurance_benefit_items')->whereNull('deleted_at')->where('item_type', 3) - ->where('benefit_id', $insurance_benefit->id)->get(); - $benefit_procedures = DB::table('insurance_benefit_items')->whereNull('deleted_at')->where('item_type', 2) - ->where('benefit_id', $insurance_benefit->id)->get(); - $benefit_services = DB::table('insurance_benefit_items')->whereNull('deleted_at')->where('item_type', 1) - ->where('benefit_id', $insurance_benefit->id)->get(); - @endphp - - - - {{-- start showing benefits belonging to this service --}} -
    -

    {{ __('insurance_benefits.procedures') }}

    - - - - - - - - - - - - - - - @foreach($benefit_procedures as $record) - @php $items_array = explode(",", $record->item_id); $count = 0; @endphp - - @foreach($items_array as $item_id) - @php - $item_details = get_item_insurance_details($item_id, 2, $benefit->id); - - if (!$item_details) {continue;} - - if ($count > 4) {break;} - - $count++; - @endphp - - - - - - - - - - - @endforeach - @endforeach - -
    {{ __('insurance_benefits.name') }}{{ __('insurance_benefits.authorisation') }}{{ __('insurance_benefits.cash_price') }}{{ __('insurance_benefits.co_payment') }}{{ __('insurance.chi_to_pay') }}{{ __('insurance_benefits.annual_member_limit') }}{{ __('insurance_benefits.annual_family_limit') }}
    {{ $procedures[$item_id] }}{{ $item_details['authorisation'] == 1 ? 'Yes' : 'No' }}{{ ugandan_shillings($item_details['cash_price']) }}{{ ugandan_shillings($item_details['co_payment']) }} - @php - $chi_to_pay = $item_details['cash_price'] - $item_details['co_payment']; - @endphp - {{ ugandan_shillings($chi_to_pay) }} - {{ ugandan_shillings($item_details['annual_member_limit']) }}{{ ugandan_shillings($item_details['annual_family_limit']) }}
    - -
    - -

    {{ __('insurance_benefits.services') }}

    - - - - - - - - - - - - - - - @foreach($benefit_services as $record) - @php $items_array = explode(",", $record->item_id); $count = 0; @endphp - - @foreach($items_array as $item_id) - @php - $item_details = get_item_insurance_details($item_id, 1, $benefit->id); - - if (!$item_details) {continue;} - - if ($count > 4) {break;} - - $count++; - @endphp - - - - - - - - - - - @endforeach - @endforeach - -
    {{ __('insurance_benefits.name') }}{{ __('insurance_benefits.authorisation') }}{{ __('insurance_benefits.cash_price') }}{{ __('insurance_benefits.co_payment') }}{{ __('insurance.chi_to_pay') }}{{ __('insurance_benefits.annual_member_limit') }}{{ __('insurance_benefits.annual_family_limit') }}
    {{ $services[$item_id] }}{{ $item_details['authorisation'] == 1 ? 'Yes' : 'No' }}{{ ugandan_shillings($item_details['cash_price']) }}{{ ugandan_shillings($item_details['co_payment']) }} - @php - $chi_to_pay = $item_details['cash_price'] - $item_details['co_payment']; - @endphp - {{ ugandan_shillings($chi_to_pay) }} - {{ ugandan_shillings($item_details['annual_member_limit']) }}{{ ugandan_shillings($item_details['annual_family_limit']) }}
    - -
    - -

    {{ __('insurance_benefits.investigations') }}

    - - - - - - - - - - - - - - - @foreach($benefit_invs as $record) - @php $items_array = explode(",", $record->item_id); $count = 0; @endphp - - @foreach($items_array as $item_id) - @php - $item_details = get_item_insurance_details($item_id, 3, $benefit->id); - - if (!$item_details) {continue;} - - if ($count > 4) {break;} - - $count++; - @endphp - - - - - - - - - - - @endforeach - @endforeach - -
    {{ __('insurance_benefits.name') }}{{ __('insurance_benefits.authorisation') }}{{ __('insurance_benefits.cash_price') }}{{ __('insurance_benefits.co_payment') }}{{ __('insurance.chi_to_pay') }}{{ __('insurance_benefits.annual_member_limit') }}{{ __('insurance_benefits.annual_family_limit') }}
    {{ $investigations[$item_id] }}{{ $item_details['authorisation'] == 1 ? 'Yes' : 'No' }}{{ ugandan_shillings($item_details['cash_price']) }}{{ ugandan_shillings($item_details['co_payment']) }} - @php - $chi_to_pay = $item_details['cash_price'] - $item_details['co_payment']; - @endphp - {{ ugandan_shillings($chi_to_pay) }} - {{ ugandan_shillings($item_details['annual_member_limit']) }}{{ ugandan_shillings($item_details['annual_family_limit']) }}
    - -
    - -

    {{ __('insurance_benefits.drugs') }}

    - - - - - - - - - - - - - - - @foreach($benefit_drugs as $record) - @php $items_array = explode(",", $record->item_id); $count = 0; @endphp - - @foreach($items_array as $item_id) - @php - $item_details = get_item_insurance_details($item_id, 4, $benefit->id); - - if (!$item_details) {continue;} - - if ($count > 4) {break;} - - $count++; - @endphp - - - - - - - - - - - @endforeach - @endforeach - -
    {{ __('insurance_benefits.name') }}{{ __('insurance_benefits.authorisation') }}{{ __('insurance_benefits.cash_price') }}{{ __('insurance_benefits.co_payment') }}{{ __('insurance.chi_to_pay') }}{{ __('insurance_benefits.annual_member_limit') }}{{ __('insurance_benefits.annual_family_limit') }}
    {{ $drugs[$item_id] }}{{ $item_details['authorisation'] == 1 ? 'Yes' : 'No' }}{{ ugandan_shillings($item_details['cash_price']) }}{{ ugandan_shillings($item_details['co_payment']) }} - @php - $chi_to_pay = $item_details['cash_price'] - $item_details['co_payment']; - @endphp - {{ ugandan_shillings($chi_to_pay) }} - {{ ugandan_shillings($item_details['annual_member_limit']) }}{{ ugandan_shillings($item_details['annual_family_limit']) }}
    - -
    - -

    {{ __('insurance_benefits.sundries') }}

    - - - - - - - - - - - - - - - @foreach($benefit_sundries as $record) - @php $items_array = explode(",", $record->item_id); $count = 0; @endphp - - @foreach($items_array as $item_id) - @php - $item_details = get_item_insurance_details($item_id, 5, $benefit->id); - - if (!$item_details) {continue;} - - if ($count > 4) {break;} - - $count++; - @endphp - - - - - - - - - - - @endforeach - @endforeach - -
    {{ __('insurance_benefits.name') }}{{ __('insurance_benefits.authorisation') }}{{ __('insurance_benefits.cash_price') }}{{ __('insurance_benefits.co_payment') }}{{ __('insurance.chi_to_pay') }}{{ __('insurance_benefits.annual_member_limit') }}{{ __('insurance_benefits.annual_family_limit') }}
    {{ $sundries[$item_id] }}{{ $item_details['authorisation'] == 1 ? 'Yes' : 'No' }}{{ ugandan_shillings($item_details['cash_price']) }}{{ ugandan_shillings($item_details['co_payment']) }} - @php - $chi_to_pay = $item_details['cash_price'] - $item_details['co_payment']; - @endphp - {{ ugandan_shillings($chi_to_pay) }} - {{ ugandan_shillings($item_details['annual_member_limit']) }}{{ ugandan_shillings($item_details['annual_family_limit']) }}
    -
    -
    - {{-- end showing benefits belonging to this service --}} - @endforeach - @endif -
    -
    - -
    -
    -
    -
    -
    - -
    - -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/chi_plan/show.blade.php b/docker/statistics/Modules/Insurance/Resources/views/chi_plan/show.blade.php deleted file mode 100644 index c65661f0..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/chi_plan/show.blade.php +++ /dev/null @@ -1,434 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ $chi_plan->name }} {{ __('insurance.details') }}

    -
    -
    - -
    - -
    - -
    -
    - @include('insurance::chi_plan.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    -
    -
    -

    {{ $chi_plan->name }} {{ __('insurance.details') }}

    - - - - - - - - - - - - - - - -
    {{ __('insurance.plan_name') }}{{ $chi_plan->name }}{{ __('insurance.plan_fee') }}{{ ugandan_shillings($chi_plan->plan_fee) }}
    {{ __('insurance_groups.start_date') }}{{ streamline_date($chi_plan->plan_start_date) }}{{ __('insurance_groups.end_date') }}{{ streamline_date($chi_plan->plan_end_date) }}
    -
    - -
    - -
    - -
    -
    -

    {{ __('insurance.plan_benefits') }}

    - @php - $insurance_benefits = \Streamline\Models\InsuranceBenefit::where('plan_id', $chi_plan->id)->get(); - @endphp - - @if(count($insurance_benefits) > 0) - @php $counter = 1 @endphp - @foreach($insurance_benefits as $insurance_benefit) - - - - - - - - - - - - - - - - - - - -
    {{ $counter }}. Benefit Name: {{ $insurance_benefit->name }}
        Waiting Period:{{ $insurance_benefit->waiting_period }}
        Benefit Fee: {{ ugandan_shillings_with_decimals($insurance_benefit->fee) }}
        Created By: {{ get_full_name($insurance_benefit->created_by, "id", "first_name", "last_name", "patients") }} at {{ streamline_date($insurance_benefit->created_at) }}
    - - @php - $counter++; - $benefit = \Streamline\Models\InsuranceBenefit::find($insurance_benefit->id); - $benefit_drugs = DB::table('insurance_benefit_items')->whereNull('deleted_at')->where('item_type', 4) - ->where('benefit_id', $insurance_benefit->id)->get(); - $benefit_sundries = DB::table('insurance_benefit_items')->whereNull('deleted_at')->where('item_type', 5) - ->where('benefit_id', $insurance_benefit->id)->get(); - $benefit_invs = DB::table('insurance_benefit_items')->whereNull('deleted_at')->where('item_type', 3) - ->where('benefit_id', $insurance_benefit->id)->get(); - $benefit_procedures = DB::table('insurance_benefit_items')->whereNull('deleted_at')->where('item_type', 2) - ->where('benefit_id', $insurance_benefit->id)->get(); - $benefit_services = DB::table('insurance_benefit_items')->whereNull('deleted_at')->where('item_type', 1) - ->where('benefit_id', $insurance_benefit->id)->get(); - @endphp - - - - {{-- start showing benefits belonging to this service --}} -
    -

    {{ __('insurance_benefits.procedures') }}

    - - - - - - - - - - - - - - - @foreach($benefit_procedures as $record) - @php $items_array = explode(",", $record->item_id); $count = 0; @endphp - - @foreach($items_array as $item_id) - @php - $item_details = get_item_insurance_details($item_id, 2, $benefit->id); - - if (!$item_details) {continue;} - - if ($count > 4) {break;} - - $count++; - @endphp - - - - - - - - - - - @endforeach - @endforeach - -
    {{ __('insurance_benefits.name') }}{{ __('insurance_benefits.authorisation') }}{{ __('insurance_benefits.cash_price') }}{{ __('insurance_benefits.co_payment') }}{{ __('insurance.chi_to_pay') }}{{ __('insurance_benefits.annual_member_limit') }}{{ __('insurance_benefits.annual_family_limit') }}
    {{ $procedures[$item_id] }}{{ $item_details['authorisation'] == 1 ? 'Yes' : 'No' }}{{ ugandan_shillings($item_details['cash_price']) }}{{ ugandan_shillings($item_details['co_payment']) }} - @php - $chi_to_pay = $item_details['cash_price'] - $item_details['co_payment']; - @endphp - {{ ugandan_shillings($chi_to_pay) }} - {{ ugandan_shillings($item_details['annual_member_limit']) }}{{ ugandan_shillings($item_details['annual_family_limit']) }}
    - -
    - -

    {{ __('insurance_benefits.services') }}

    - - - - - - - - - - - - - - - @foreach($benefit_services as $record) - @php $items_array = explode(",", $record->item_id); $count = 0; @endphp - - @foreach($items_array as $item_id) - @php - $item_details = get_item_insurance_details($item_id, 1, $benefit->id); - - if (!$item_details) {continue;} - - if ($count > 4) {break;} - - $count++; - @endphp - - - - - - - - - - - @endforeach - @endforeach - -
    {{ __('insurance_benefits.name') }}{{ __('insurance_benefits.authorisation') }}{{ __('insurance_benefits.cash_price') }}{{ __('insurance_benefits.co_payment') }}{{ __('insurance.chi_to_pay') }}{{ __('insurance_benefits.annual_member_limit') }}{{ __('insurance_benefits.annual_family_limit') }}
    {{ $services[$item_id] }}{{ $item_details['authorisation'] == 1 ? 'Yes' : 'No' }}{{ ugandan_shillings($item_details['cash_price']) }}{{ ugandan_shillings($item_details['co_payment']) }} - @php - $chi_to_pay = $item_details['cash_price'] - $item_details['co_payment']; - @endphp - {{ ugandan_shillings($chi_to_pay) }} - {{ ugandan_shillings($item_details['annual_member_limit']) }}{{ ugandan_shillings($item_details['annual_family_limit']) }}
    - -
    - -

    {{ __('insurance_benefits.investigations') }}

    - - - - - - - - - - - - - - - @foreach($benefit_invs as $record) - @php $items_array = explode(",", $record->item_id); $count = 0; @endphp - - @foreach($items_array as $item_id) - @php - $item_details = get_item_insurance_details($item_id, 3, $benefit->id); - - if (!$item_details) {continue;} - - if ($count > 4) {break;} - - $count++; - @endphp - - - - - - - - - - - @endforeach - @endforeach - -
    {{ __('insurance_benefits.name') }}{{ __('insurance_benefits.authorisation') }}{{ __('insurance_benefits.cash_price') }}{{ __('insurance_benefits.co_payment') }}{{ __('insurance.chi_to_pay') }}{{ __('insurance_benefits.annual_member_limit') }}{{ __('insurance_benefits.annual_family_limit') }}
    {{ $investigations[$item_id] }}{{ $item_details['authorisation'] == 1 ? 'Yes' : 'No' }}{{ ugandan_shillings($item_details['cash_price']) }}{{ ugandan_shillings($item_details['co_payment']) }} - @php - $chi_to_pay = $item_details['cash_price'] - $item_details['co_payment']; - @endphp - {{ ugandan_shillings($chi_to_pay) }} - {{ ugandan_shillings($item_details['annual_member_limit']) }}{{ ugandan_shillings($item_details['annual_family_limit']) }}
    - -
    - -

    {{ __('insurance_benefits.drugs') }}

    - - - - - - - - - - - - - - - @foreach($benefit_drugs as $record) - @php $items_array = explode(",", $record->item_id); $count = 0; @endphp - - @foreach($items_array as $item_id) - @php - $item_details = get_item_insurance_details($item_id, 4, $benefit->id); - - if (!$item_details) {continue;} - - if ($count > 4) {break;} - - $count++; - @endphp - - - - - - - - - - - @endforeach - @endforeach - -
    {{ __('insurance_benefits.name') }}{{ __('insurance_benefits.authorisation') }}{{ __('insurance_benefits.cash_price') }}{{ __('insurance_benefits.co_payment') }}{{ __('insurance.chi_to_pay') }}{{ __('insurance_benefits.annual_member_limit') }}{{ __('insurance_benefits.annual_family_limit') }}
    {{ $drugs[$item_id] }}{{ $item_details['authorisation'] == 1 ? 'Yes' : 'No' }}{{ ugandan_shillings($item_details['cash_price']) }}{{ ugandan_shillings($item_details['co_payment']) }} - @php - $chi_to_pay = $item_details['cash_price'] - $item_details['co_payment']; - @endphp - {{ ugandan_shillings($chi_to_pay) }} - {{ ugandan_shillings($item_details['annual_member_limit']) }}{{ ugandan_shillings($item_details['annual_family_limit']) }}
    - -
    - -

    {{ __('insurance_benefits.sundries') }}

    - - - - - - - - - - - - - - - @foreach($benefit_sundries as $record) - @php $items_array = explode(",", $record->item_id); $count = 0; @endphp - - @foreach($items_array as $item_id) - @php - $item_details = get_item_insurance_details($item_id, 5, $benefit->id); - - if (!$item_details) {continue;} - - if ($count > 4) {break;} - - $count++; - @endphp - - - - - - - - - - - @endforeach - @endforeach - -
    {{ __('insurance_benefits.name') }}{{ __('insurance_benefits.authorisation') }}{{ __('insurance_benefits.cash_price') }}{{ __('insurance_benefits.co_payment') }}{{ __('insurance.chi_to_pay') }}{{ __('insurance_benefits.annual_member_limit') }}{{ __('insurance_benefits.annual_family_limit') }}
    {{ $sundries[$item_id] }}{{ $item_details['authorisation'] == 1 ? 'Yes' : 'No' }}{{ ugandan_shillings($item_details['cash_price']) }}{{ ugandan_shillings($item_details['co_payment']) }} - @php - $chi_to_pay = $item_details['cash_price'] - $item_details['co_payment']; - @endphp - {{ ugandan_shillings($chi_to_pay) }} - {{ ugandan_shillings($item_details['annual_member_limit']) }}{{ ugandan_shillings($item_details['annual_family_limit']) }}
    -
    -
    - {{-- end showing benefits belonging to this service --}} - @endforeach - @endif -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/heads_of_family/edit.blade.php b/docker/statistics/Modules/Insurance/Resources/views/heads_of_family/edit.blade.php deleted file mode 100755 index f528759a..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/heads_of_family/edit.blade.php +++ /dev/null @@ -1,72 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') - -
    -
    -

    {{ __('heads_of_family.edit_head_of_family') }}

    -
    - - -
    - -@include ('errors.list') - -@include('insurance::heads_of_family.menu') - -
    - -
    - {{ Form::model($family_head, ['method' => 'PUT', 'route' => ['heads_of_family.update',$family_head], 'files' => 'required']) }} - - {{ Form::hidden('patient_id', $family_head->patient_id, ['class' => 'patient_id']) }} - -
    - {{ Form::label('name', __('heads_of_family.head_of_family_name')) }} - {{ Form::text('name', $family_head->name, ['class' => 'form-control compulsory', 'readonly' => 'true']) }} -
    - -
    - {{ Form::label('group_id', __('heads_of_family.insurance_group')) }} - {{ Form::select('group_id', $insurance_groups, null, ['class' => 'form-control compulsory']) }} -
    - -
    - {{ Form::label('photo', __('heads_of_family.profile_photo')) }} - {{ Form::file('photo', ['class' => 'dropify', 'data-default-file' => $uploaded_photo]) }} - -
    - @php - $insurance_member_id = get_name($family_head->patient_id, "patient_id", "id", "insurance_members"); - @endphp - {{ __('insurance_members.edit_family_head_details') }} -
    - - {{ Form::button(__('heads_of_family.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('heads_of_family.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -@endsection - - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/heads_of_family/inactive.blade.php b/docker/statistics/Modules/Insurance/Resources/views/heads_of_family/inactive.blade.php deleted file mode 100755 index a92d7e9c..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/heads_of_family/inactive.blade.php +++ /dev/null @@ -1,85 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('heads_of_family.inactive_head_of_family') }}

    -
    -
    - -
    - -
    - -@include('flash::message') - -@include('insurance::heads_of_family.menu') - -
    -
    -
    - - - - - - - - - - - - @foreach($family_heads as $family_head) - - - - - - - - - @endforeach - - -
    {{ __('heads_of_family.patient_number') }}{{ __('heads_of_family.name') }}{{ __('heads_of_family.insurance_group') }}{{ __('heads_of_family.contact') }}{{ __('heads_of_family.action') }}
    {{ $family_head->number }}{!! insurance_flag($family_head->patient_id) !!}{{ isset($insurance_groups[$family_head->group_id]) ? $insurance_groups[$family_head->group_id] : 'N/A' }}{{ $family_head->phone }} - {{ Form::model($family_head->id ,['method' => 'POST', 'route' => ['heads_of_family.activate', $family_head->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/heads_of_family/index.blade.php b/docker/statistics/Modules/Insurance/Resources/views/heads_of_family/index.blade.php deleted file mode 100755 index b4bb61d6..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/heads_of_family/index.blade.php +++ /dev/null @@ -1,217 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('heads_of_family.heads_of_family') }}

    -
    -
    - -
    - -
    - -@include('insurance::heads_of_family.menu') - -@include('flash::message') - -
    - {{ Form::open(['route' => 'heads_of_family.search', 'method' => 'ANY', 'role' => 'search']) }} -
    -
    -
    - {{ Form::text('full_name', '', ['class' => 'form-control typeahead', 'placeholder' => 'Search for Family Head by Name or Number', 'autocomplete' => 'off', 'spellcheck' => false]) }} -
    -
    -
    -
    - {{ Form::select('member_type',[0 => __('heads_of_family.all_family_heads'), 1 => __('heads_of_family.family_heads_with_active_insurance'), 2 => __('heads_of_family.family_heads_with_inactive_insurance')],0,['class' => 'form-control']) }} -
    -
    -
    - -
    -
    - {{ Form::close() }} - @if(isset($criteria)) -
    -
    -

    {{ __('insurance_members.search_criteria') }} : {{ $criteria }}    {{ __('insurance_members.clear_search') }}

    -
    -
    - @endif -
    -
    - - - - - - - - - - - - - - - @foreach($family_heads as $family_head) - @php - // get payment details for this group - $insurance_subscriptions_details = explode("/", check_insurance_family_status($family_head->group_id, $family_head->family_id)); - @endphp - - - - - - - - - - - @endforeach - -
    {{ __('heads_of_family.patient_number') }}{{ __('heads_of_family.name') }}{{ __('heads_of_family.insurance_group') }}{{ __('heads_of_family.contact') }}{{ __('heads_of_family.insurance_status') }}
    {{ $family_head->number }}{!! insurance_flag($family_head->patient_id) !!}{{ isset($insurance_groups[$family_head->group_id]) ? $insurance_groups[$family_head->group_id] : 'N/A' }}{{ $family_head->phone }} - @if($insurance_subscriptions_details[0] == 1) - {{ __('heads_of_family.active') }} - @else - {{ __('heads_of_family.inactive') }} - @endif - - {{ __('insurance_members.edit') }} - - View members - - @if (empty($family_head->family_members_ids)) - {{ Form::model($family_head->id ,['method' => 'DELETE', 'route' => ['heads_of_family.destroy', $family_head->id]]) }} - - {{ Form::close() }} - @endif -
    - {{ $family_heads->links() }} -
    -
    -
    - - - {{-- modal --}} - - -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/heads_of_family/menu.blade.php b/docker/statistics/Modules/Insurance/Resources/views/heads_of_family/menu.blade.php deleted file mode 100755 index 450b42a2..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/heads_of_family/menu.blade.php +++ /dev/null @@ -1,6 +0,0 @@ -
    - -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance/index.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance/index.blade.php deleted file mode 100755 index 93b5d2cb..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance/index.blade.php +++ /dev/null @@ -1,80 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -
    {{ __('insurance.insurance_reports') }}
    -
    - -
    - -
    - -
    - - -
    -

    {{ __('insurance.insurance_reports') }}

    - -
    - - -
    -
    -@endsection \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance/product_setup.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance/product_setup.blade.php deleted file mode 100644 index 68b960fc..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance/product_setup.blade.php +++ /dev/null @@ -1,85 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('risks.insurance_scheme_admin') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    {{ __('insurance.product_set_up') }}
    -
    - -
    -
    - -
    -
    -@endsection \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance/scheme_administration.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance/scheme_administration.blade.php deleted file mode 100644 index 00c5d0f8..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance/scheme_administration.blade.php +++ /dev/null @@ -1,202 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('risks.insurance_scheme_admin') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    {{ __('insurance.insurance_members') }}
    - -
    -
    -
    {{ __('insurance.insurance_groups') }}
    -
    -
    - -
    -
    -
    -
    -
    {{ __('insurance.heads_of_family') }}
    - -
    -
    - -
    -
    -
    {{ __('insurance.premiums') }}
    -
    - -
    -
    -
    -
    Claims Processing
    -
    -
    - -
    -
    -
    - -
    -
    -@endsection \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/add_inpatient_accommodation.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/add_inpatient_accommodation.blade.php deleted file mode 100644 index c2ea670a..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/add_inpatient_accommodation.blade.php +++ /dev/null @@ -1,251 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_benefits.inpatient_accommodation') }}

    -
    - -
    - - @include('insurance::insurance_benefits.menu') - -
    - @include('flash::message') - -

    {{ __('insurance_benefits.insurance_benefit') }}: {{ $benefit->name }}

    - -
    - - {{ Form::open(['route' => ['insurance_benefits.add_inpatient_accommodation', $benefit->id], 'method' => 'ANY', 'role' => 'search']) }} - -
    -
    -
    - {{ Form::select('bed_category', $bed_categories, '', ['class' => 'form-control', 'id' => 'bed_category']) }} -
    -
    - -
    - -
    -
    - - {{ Form::close() }} - -
    - - @if($selected_bed_category) - {{ Form::open(['route' => 'insurance_benefits.save_inpatient_accommodation']) }} - - {{ Form::hidden('benefit_id', $benefit->id) }} - {{ Form::hidden('plan_id', $benefit->plan_id) }} - {{ Form::hidden('bed_category_id', $selected_bed_category->id) }} - {{ Form::hidden('cost_type', $selected_bed_category->cost_type) }} - -
    -
    -
    - {{ Form::label('name', __('insurance_benefits.bed_category_name')) }} - {{ Form::text('name', $selected_bed_category->name, ['class' => 'form-control', 'readonly']) }} -
    - -
    - {{ Form::label('name', __('bed_categories.type_of_pricing')) }} - {{ Form::text('name', $selected_bed_category->cost_type == 1 ? 'Static' : 'Structured', ['class' => 'form-control', 'readonly']) }} -
    - - @if($selected_bed_category->cost_type == 1) -
    - {{ Form::label('cost_per_night', __('bed_categories.cost_per_night')) }} - {{ Form::number('cost_per_night', $selected_bed_category->cost_per_night, ['class' => 'form-control', 'readonly']) }} -
    - @else -
    - {{ Form::label('cost_first_night', __('bed_categories.cost_of_first_night')) }} - {{ Form::number('cost_first_night', $selected_bed_category->cost_first_night, ['class' => 'form-control', 'readonly']) }} -
    - -
    -
    -
    - - {{ Form::number('from_night', 2, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    - - {{ Form::number('to_night', $selected_bed_category->to_night, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    - -
    - {{ Form::label('cost_range', __('bed_categories.range_cost')) }} - {{ Form::number('cost_range', $selected_bed_category->cost_range, ['class' => 'form-control', 'readonly']) }} -
    - -
    - {{ Form::label('cost_after', __('bed_categories.cost_for_nights_thereafter')) }} - {{ Form::number('cost_after', $selected_bed_category->cost_after, ['class' => 'form-control', 'readonly']) }} -
    - @endif -
    - -
    - -
    -
    cost_type != 1) style="display: none" @endif> -
    -
    - {{ Form::label('cost_per_night', __('insurance_benefits.co_payment_cost_per_night')) }} - {{ Form::number('cost_per_night', '', ['class' => 'form-control compulsory']) }} -
    -
    -
    -
    - {{ Form::label('chi_cost_per_night', __('insurance_benefits.chi_cost_per_night')) }} - {{ Form::number('chi_cost_per_night', '', ['class' => 'form-control compulsory']) }} -
    -
    -
    - -
    cost_type == 1) style="display: none" @endif> -
    -
    -
    - {{ Form::label('cost_first_night', __('insurance_benefits.co_payment_cost_of_first_night')) }} - {{ Form::number('cost_first_night', '', ['class' => 'form-control compulsory']) }} -
    -
    -
    -
    - {{ Form::label('chi_cost_first_night', __('insurance_benefits.chi_cost_of_first_night')) }} - {{ Form::number('chi_cost_first_night', '', ['class' => 'form-control compulsory']) }} -
    -
    -
    - -
    -
    -
    - {{ Form::label('cost_range', __('insurance_benefits.co_payment_range_cost')) }} - {{ Form::number('cost_range', '', ['class' => 'form-control compulsory']) }} -
    -
    -
    -
    - {{ Form::label('chi_cost_range', __('insurance_benefits.chi_range_cost')) }} - {{ Form::number('chi_cost_range', '', ['class' => 'form-control compulsory']) }} -
    -
    -
    - -
    -
    -
    - {{ Form::label('cost_after', __('insurance_benefits.co_payment_cost_for_nights_thereafter')) }} - {{ Form::number('cost_after', '', ['class' => 'form-control compulsory']) }} -
    -
    -
    -
    - {{ Form::label('chi_cost_after', __('insurance_benefits.chi_cost_for_nights_thereafter')) }} - {{ Form::number('chi_cost_after', '', ['class' => 'form-control compulsory']) }} -
    -
    -
    -
    - -
    -
    -
    - {{ Form::label('annual_member_limit', __('insurance_benefits.annual_member_limit')) }} - {{ Form::number('annual_member_limit', 0, ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('gender', __('insurance_benefits.gender')) }} - {{ Form::select('gender', [0 => 'All', 1 => 'Male', 2 => 'Female'], 0, ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('age_limit', __('insurance_benefits.age_limit')) }} - -
    -
    -
    - {{ Form::label('age_limit_start',__('insurance_benefits.start')) }} - {{ Form::number('age_limit_start','',['class' => 'form-control compulsory']) }} -
    -
    -
    -
    - {{ Form::label('age_limit_end',__('insurance_benefits.end')) }} - {{ Form::number('age_limit_end','',['class' => 'form-control compulsory']) }} -
    -
    -
    -
    -
    -
    -
    - {{ Form::label('annual_family_limit', __('insurance_benefits.annual_family_limit')) }} - {{ Form::number('annual_family_limit', 0, ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('authorisation', __('insurance_benefits.authorisation')) }} - -

    - - {{ Form::radio('authorisation', 1, false, ['required']) }} Yes    - {{ Form::radio('authorisation', 0, false, ['required']) }} No -
    - -
    - {{ Form::label('age_type', __('insurance_benefits.age_type')) }} - {{ Form::select('age_type', [0 => 'Days', 1 => 'Months', 2 => 'Years'], 2, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    - - {{ Form::button(__('bed_categories.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('bed_categories.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} - @else -

    {{ __('insurance_benefits.please_select_bed_category') }}

    - @endif - -
    -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/add_items.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/add_items.blade.php deleted file mode 100644 index 32ac512d..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/add_items.blade.php +++ /dev/null @@ -1,240 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_benefits.add_item_insurance_benefit') }}

    -
    - -
    - - @include('insurance::insurance_benefits.menu') - -
    - @include('flash::message') - -

    {{ __('insurance_benefits.insurance_benefit') }}: {{ $benefit->name }}

    -

    {{ __('insurance_benefits.item_type') }}: {{ [1 => 'Services', 2 => 'Procedures', 3 => 'Investigations', 4 => 'Drugs', 5 => 'Sundries'][$item_type] }}

    - -
    - - {{ Form::open(['route' => ['insurance_benefits.add_items', $benefit->id, $item_type], 'method' => 'ANY', 'role' => 'search']) }} - -
    -
    -
    - {{ Form::select('items_ids[]', $items, '', ['id' => 'items_ids', 'multiple', 'class' => 'form-control']) }} -
    -
    - -
    - -
    - -
    - -
    -
    - - {{ Form::close() }} - -
    - - @if(!is_null($benefit->opd_percentage)) - {{ Form::checkbox('apply_opd_percentage_all', 'OPD All', false, ['id' => "apply_opd_percentage_all"]) }} {{ __('insurance_benefits.apply_opd_percentage_all') }} -    - @endif - - @if(!is_null($benefit->ipd_percentage)) - {{ Form::checkbox('apply_ipd_percentage_all', 'IPD All', false, ['id' => "apply_ipd_percentage_all"]) }} {{ __('insurance_benefits.apply_ipd_percentage_all') }} - @endif - -

    - - {{ Form::open(['route' => 'insurance_benefits.save_items']) }} - - {{ Form::hidden('benefit_id', $benefit->id) }} - {{ Form::hidden('item_type', $item_type) }} - -
    - - - - - - - - - - - - - - - - @if(count($selected_items) > 0) - @foreach($selected_items as $item) - - - - - - - - - - - - @endforeach - @else - - @endif - -
    {{ __('insurance_benefits.name') }}{{ __('insurance_benefits.cash_price') }}{{ __('insurance_benefits.opd_co_payment') }} {{ __('insurance_benefits.ipd_co_payment') }} {{ __('insurance_benefits.capitation_fee') }}{{ __('insurance_benefits.annual_member_limit') }} {{ __('insurance_benefits.annual_family_limit') }} {{ __('insurance_benefits.authorisation') }}
    - - {{ Form::hidden('item_id[]', $item->id) }} - {{ $item->name }}{{ ugandan_shillings($item->non_insured_price) }} - {{ Form::number('co_payment[]', '', ['class' => 'form-control compulsory', 'required', 'min' => '0', 'id' => "co_payment_$item->id"]) }} - @if(!is_null($benefit->opd_percentage)) -
    - {{ Form::checkbox('apply_opd_percentage[]', $item->id, false, ['id' => "apply_opd_percentage_$item->id", 'class' => 'apply_opd_percentage']) }} {{ __('insurance_benefits.apply_opd_percentage') }} - @endif -
    - {{ Form::number('ipd_co_payment[]', '', ['class' => 'form-control compulsory', 'required', 'min' => '0', 'id' => "ipd_co_payment_$item->id"]) }} - @if(!is_null($benefit->ipd_percentage)) -
    - {{ Form::checkbox('apply_ipd_percentage[]', $item->id, false, ['id' => "apply_ipd_percentage_$item->id", 'class' => 'apply_ipd_percentage']) }} {{ __('insurance_benefits.apply_ipd_percentage') }} - @endif -
    {{ Form::number('capitation_fee[]', 0, ['class' => 'form-control compulsory', 'required', 'min' => '0']) }}{{ Form::number('annual_member_limit[]', 0, ['class' => 'form-control', 'min' => '0']) }}{{ Form::number('annual_family_limit[]', 0, ['class' => 'form-control', 'min' => '0']) }} - {{ Form::hidden('authorisation[]', 0, ['id' => 'authorisation_value_' . $item->id]) }} - {{ Form::radio('authorisation_' . $item->id, 1, false, ['onclick' => 'set_authorisation(' . $item->id . ', 1)', 'required']) }} Yes    - {{ Form::radio('authorisation_' . $item->id, 0, false, ['onclick' => 'set_authorisation(' . $item->id . ', 0)', 'required']) }} No -
    {{ __('insurance_claims.select_items_first') }}
    -
    - - - - -
    - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/create.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/create.blade.php deleted file mode 100644 index db1e1be4..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/create.blade.php +++ /dev/null @@ -1,95 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_benefits.create_insurance_benefit') }}

    -
    - -
    - - @include('insurance::insurance_benefits.menu') - -
    - - @include('flash::message') - - {{ Form::open(['route' => 'insurance_benefits.store','data-toggle'=>'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('insurance_benefits.benefit_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('waiting_period', __('insurance_benefits.waiting_period_days')) }} - {{ Form::number('waiting_period', '', ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('annual_member_limit', __('insurance_benefits.annual_member_limit') . ' (' . __('insurance_claims.no_limit_applicable') . ')') }} - {{ Form::number('annual_member_limit', '', ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('opd_percentage', __('insurance_benefits.opd_percentage') . ' (' . __('insurance_benefits.applied_to_cash_amount') . ')') }} - {{ Form::number('opd_percentage', '', ['class' => 'form-control', 'step' => '0.01']) }} -
    - -
    - {{ Form::label('ward_id', __('insurance_benefits.wards_benefit_will_be_applied_to')) }} - {{ Form::select('ward_id[]', $wards, 0,['class' => 'form-control ward_id', 'data-error'=>'Select the ward', 'multiple']) }} -
    -
    -
    -
    - {{ Form::label('plan_id', __('insurance_benefits.plan')) }} - {{ Form::select('plan_id', $insurance_plans, '', ['class' => 'form-control compulsory', 'required', 'id' => 'plan_id']) }} -
    - -
    - {{ Form::label('fee', __('insurance_benefits.fee')) }} - {{ Form::number('fee', 0, ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('annual_family_limit', __('insurance_benefits.annual_family_limit') . ' (' . __('insurance_claims.no_limit_applicable') . ')') }} - {{ Form::number('annual_family_limit', '', ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('ipd_percentage', __('insurance_benefits.ipd_percentage') . ' (' . __('insurance_benefits.applied_to_cash_amount') . ')') }} - {{ Form::number('ipd_percentage', '', ['class' => 'form-control', 'step' => '0.01']) }} -
    -
    -
    - - {{ Form::button(__('insurance_groups.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('insurance_groups.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/details.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/details.blade.php deleted file mode 100644 index 1dbbf0d7..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/details.blade.php +++ /dev/null @@ -1,437 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_benefits.insurance_benefits_details') }}

    -
    - -
    - - @include('insurance::insurance_benefits.menu') - -
    - - @include('flash::message') - -

    {{ $benefit->name . ' ' . __('insurance_benefits.items') }} ({{ get_name($benefit->plan_id, 'id', 'name', 'community_health_insurance_plans') }} {{ __('insurance_benefits.plan') }})

    - -

    {{ __('insurance_benefits.procedures') }}

    - - - - - - - - - - - - - - - - @foreach($benefit_procedures as $record) - @php $items_array = explode(",", $record->item_id); $count = 0; @endphp - - @foreach($items_array as $item_id) - @php - $item_details = get_item_insurance_details($item_id, 2, $benefit->id); - - if (!$item_details) { - continue; - } - - if ($count > 4) {break;} - - $count++; - @endphp - - - - - - - - - - - - @endforeach - @endforeach - -
    {{ __('insurance_benefits.name') }}{{ __('insurance_benefits.authorisation') }}{{ __('insurance_benefits.cash_price') }}{{ __('insurance_benefits.opd_co_payment') }}{{ __('insurance_benefits.ipd_co_payment') }}{{ __('insurance_benefits.capitation_fee') }}{{ __('insurance_benefits.annual_member_limit') }}{{ __('insurance_benefits.annual_family_limit') }}
    {{ $procedures[$item_id] ?? '' }}{{ $item_details['authorisation'] == 1 ? 'Yes' : 'No' }}{{ ugandan_shillings($item_details['cash_price']) }} - @if(isset($item_details['apply_opd_percentage']) && $item_details['apply_opd_percentage'] == 1) - {{ ugandan_shillings(($benefit->opd_percentage / 100) * $item_details['cash_price']) }} -

    - {{ $benefit->opd_percentage . '% ' . __('insurance_benefits.of_cash_price') }} - @else - {{ ugandan_shillings($item_details['co_payment']) }} - @endif -
    - @if(isset($item_details['apply_ipd_percentage']) && $item_details['apply_ipd_percentage'] == 1) - {{ ugandan_shillings(($benefit->ipd_percentage / 100) * $item_details['cash_price']) }} -

    - {{ $benefit->ipd_percentage . '% ' . __('insurance_benefits.of_cash_price') }} - @else - {{ ugandan_shillings($item_details['ipd_co_payment'] ?? 0) }} - @endif -
    {{ ugandan_shillings($item_details['capitation_fee']) }}{{ ugandan_shillings($item_details['annual_member_limit']) }}{{ ugandan_shillings($item_details['annual_family_limit']) }}
    - - @if(Auth::user()->can('insurance-items-view')){{ __('insurance_benefits.view_all_procedures') }}@endif - @if(Auth::user()->can('insurance-items-create')){{ __('insurance_benefits.add_procedures') }}@endif - -
    - -

    {{ __('insurance_benefits.services') }}

    - - - - - - - - - - - - - - - - @foreach($benefit_services as $record) - @php $items_array = explode(",", $record->item_id); $count = 0; @endphp - - @foreach($items_array as $item_id) - @php - $item_details = get_item_insurance_details($item_id, 1, $benefit->id); - - if (!$item_details) { - continue; - } - - if ($count > 4) {break;} - - $count++; - @endphp - - - - - - - - - - - - @endforeach - @endforeach - -
    {{ __('insurance_benefits.name') }}{{ __('insurance_benefits.authorisation') }}{{ __('insurance_benefits.cash_price') }}{{ __('insurance_benefits.opd_co_payment') }}{{ __('insurance_benefits.ipd_co_payment') }}{{ __('insurance_benefits.capitation_fee') }}{{ __('insurance_benefits.annual_member_limit') }}{{ __('insurance_benefits.annual_family_limit') }}
    {{ $services[$item_id] ?? '' }}{{ $item_details['authorisation'] == 1 ? 'Yes' : 'No' }}{{ ugandan_shillings($item_details['cash_price']) }} - @if(isset($item_details['apply_opd_percentage']) && $item_details['apply_opd_percentage'] == 1) - {{ ugandan_shillings(($benefit->opd_percentage / 100) * $item_details['cash_price']) }} -

    - {{ $benefit->opd_percentage . '% ' . __('insurance_benefits.of_cash_price') }} - @else - {{ ugandan_shillings($item_details['co_payment']) }} - @endif -
    - @if(isset($item_details['apply_ipd_percentage']) && $item_details['apply_ipd_percentage'] == 1) - {{ ugandan_shillings(($benefit->ipd_percentage / 100) * $item_details['cash_price']) }} -

    - {{ $benefit->ipd_percentage . '% ' . __('insurance_benefits.of_cash_price') }} - @else - {{ ugandan_shillings($item_details['ipd_co_payment'] ?? 0) }} - @endif -
    {{ ugandan_shillings($item_details['capitation_fee']) }}{{ ugandan_shillings($item_details['annual_member_limit']) }}{{ ugandan_shillings($item_details['annual_family_limit']) }}
    - - @if(Auth::user()->can('insurance-items-view')){{ __('insurance_benefits.view_all_services') }}@endif - @if(Auth::user()->can('insurance-items-create')){{ __('insurance_benefits.add_services') }}@endif - -
    - -

    {{ __('insurance_benefits.investigations') }}

    - - - - - - - - - - - - - - - - @foreach($benefit_invs as $record) - @php $items_array = explode(",", $record->item_id); $count = 0; @endphp - - @foreach($items_array as $item_id) - @php - $item_details = get_item_insurance_details($item_id, 3, $benefit->id); - - if (!$item_details) { - continue; - } - - if ($count > 4) {break;} - - $count++; - @endphp - - - - - - - - - - - - @endforeach - @endforeach - -
    {{ __('insurance_benefits.name') }}{{ __('insurance_benefits.authorisation') }}{{ __('insurance_benefits.cash_price') }}{{ __('insurance_benefits.opd_co_payment') }}{{ __('insurance_benefits.ipd_co_payment') }}{{ __('insurance_benefits.capitation_fee') }}{{ __('insurance_benefits.annual_member_limit') }}{{ __('insurance_benefits.annual_family_limit') }}
    {{ $investigations[$item_id] ?? '' }}{{ $item_details['authorisation'] == 1 ? 'Yes' : 'No' }}{{ ugandan_shillings($item_details['cash_price']) }} - @if(isset($item_details['apply_opd_percentage']) && $item_details['apply_opd_percentage'] == 1) - {{ ugandan_shillings(($benefit->opd_percentage / 100) * $item_details['cash_price']) }} -

    - {{ $benefit->opd_percentage . '% ' . __('insurance_benefits.of_cash_price') }} - @else - {{ ugandan_shillings($item_details['co_payment']) }} - @endif -
    - @if(isset($item_details['apply_ipd_percentage']) && $item_details['apply_ipd_percentage'] == 1) - {{ ugandan_shillings(($benefit->ipd_percentage / 100) * $item_details['cash_price']) }} -

    - {{ $benefit->ipd_percentage . '% ' . __('insurance_benefits.of_cash_price') }} - @else - {{ ugandan_shillings($item_details['ipd_co_payment'] ?? 0) }} - @endif -
    {{ ugandan_shillings($item_details['capitation_fee']) }}{{ ugandan_shillings($item_details['annual_member_limit']) }}{{ ugandan_shillings($item_details['annual_family_limit']) }}
    - - @if(Auth::user()->can('insurance-items-view')){{ __('insurance_benefits.view_all_investigations') }}@endif - @if(Auth::user()->can('insurance-items-create')){{ __('insurance_benefits.add_investigations') }}@endif - -
    - -

    {{ __('insurance_benefits.drugs') }}

    - - - - - - - - - - - - - - - - @foreach($benefit_drugs as $record) - @php $items_array = explode(",", $record->item_id); $count = 0; @endphp - - @foreach($items_array as $item_id) - @php - $item_details = get_item_insurance_details($item_id, 4, $benefit->id); - - if (!$item_details) { - continue; - } - - if ($count > 4) {break;} - - $count++; - @endphp - - - - - - - - - - - - @endforeach - @endforeach - -
    {{ __('insurance_benefits.name') }}{{ __('insurance_benefits.authorisation') }}{{ __('insurance_benefits.cash_price') }}{{ __('insurance_benefits.opd_co_payment') }}{{ __('insurance_benefits.ipd_co_payment') }}{{ __('insurance_benefits.capitation_fee') }}{{ __('insurance_benefits.annual_member_limit') }}{{ __('insurance_benefits.annual_family_limit') }}
    {{ $drugs[$item_id] ?? '' }}{{ $item_details['authorisation'] == 1 ? 'Yes' : 'No' }}{{ ugandan_shillings($item_details['cash_price']) }} - @if(isset($item_details['apply_opd_percentage']) && $item_details['apply_opd_percentage'] == 1) - {{ ugandan_shillings(($benefit->opd_percentage / 100) * $item_details['cash_price']) }} -

    - {{ $benefit->opd_percentage . '% ' . __('insurance_benefits.of_cash_price') }} - @else - {{ ugandan_shillings($item_details['co_payment']) }} - @endif -
    - @if(isset($item_details['apply_ipd_percentage']) && $item_details['apply_ipd_percentage'] == 1) - {{ ugandan_shillings(($benefit->ipd_percentage / 100) * $item_details['cash_price']) }} -

    - {{ $benefit->ipd_percentage . '% ' . __('insurance_benefits.of_cash_price') }} - @else - {{ ugandan_shillings($item_details['ipd_co_payment'] ?? 0) }} - @endif -
    {{ ugandan_shillings($item_details['capitation_fee']) }}{{ ugandan_shillings($item_details['annual_member_limit']) }}{{ ugandan_shillings($item_details['annual_family_limit']) }}
    - - @if(Auth::user()->can('insurance-items-view')){{ __('insurance_benefits.view_all_drugs') }}@endif - @if(Auth::user()->can('insurance-items-create')){{ __('insurance_benefits.add_drugs') }}@endif - -
    - -

    {{ __('insurance_benefits.sundries') }}

    - - - - - - - - - - - - - - - - @foreach($benefit_sundries as $record) - @php $items_array = explode(",", $record->item_id); $count = 0; @endphp - - @foreach($items_array as $item_id) - @php - $item_details = get_item_insurance_details($item_id, 5, $benefit->id); - - if (!$item_details) { - continue; - } - - if ($count > 4) {break;} - - $count++; - @endphp - - - - - - - - - - - - @endforeach - @endforeach - -
    {{ __('insurance_benefits.name') }}{{ __('insurance_benefits.authorisation') }}{{ __('insurance_benefits.cash_price') }}{{ __('insurance_benefits.opd_co_payment') }}{{ __('insurance_benefits.ipd_co_payment') }}{{ __('insurance_benefits.capitation_fee') }}{{ __('insurance_benefits.annual_member_limit') }}{{ __('insurance_benefits.annual_family_limit') }}
    {{ $sundries[$item_id] ?? '' }}{{ $item_details['authorisation'] == 1 ? 'Yes' : 'No' }}{{ ugandan_shillings($item_details['cash_price']) }} - @if(isset($item_details['apply_opd_percentage']) && $item_details['apply_opd_percentage'] == 1) - {{ ugandan_shillings(($benefit->opd_percentage / 100) * $item_details['cash_price']) }} -

    - {{ $benefit->opd_percentage . '% ' . __('insurance_benefits.of_cash_price') }} - @else - {{ ugandan_shillings($item_details['co_payment']) }} - @endif -
    - @if(isset($item_details['apply_ipd_percentage']) && $item_details['apply_ipd_percentage'] == 1) - {{ ugandan_shillings(($benefit->ipd_percentage / 100) * $item_details['cash_price']) }} -

    - {{ $benefit->ipd_percentage . '% ' . __('insurance_benefits.of_cash_price') }} - @else - {{ ugandan_shillings($item_details['ipd_co_payment'] ?? 0) }} - @endif -
    {{ ugandan_shillings($item_details['capitation_fee']) }}{{ ugandan_shillings($item_details['annual_member_limit']) }}{{ ugandan_shillings($item_details['annual_family_limit']) }}
    - - @if(Auth::user()->can('insurance-items-view')){{ __('insurance_benefits.view_all_sundries') }}@endif - @if(Auth::user()->can('insurance-items-create')){{ __('insurance_benefits.add_sundries') }}@endif - -
    - -

    {{ __('insurance_benefits.inpatient_accommodation') }}

    - - - - - - - - - - - - - - - - - @php - $time_periods = [0 => 'Days', 1 => 'Months', 2 => 'Years']; - $genders = [0 => 'All', 1 => 'Male', 2 => 'Female']; - @endphp - - @foreach($benefit_bed_categories as $record) - @php $age_limits = explode(",", $record->age_limit); @endphp - - - - - - - - - - - - @endforeach - -
    {{ __('insurance_benefits.bed_category') }}{{ __('insurance_benefits.authorisation') }}{{ __('insurance_benefits.type_of_pricing') }}{{ __('insurance_benefits.co_payment') }}{{ __('insurance_benefits.chi_amount') }}{{ __('insurance_benefits.gender') }}{{ __('insurance_benefits.age_limit') }}{{ __('insurance_benefits.annual_member_limit') }}{{ __('insurance_benefits.annual_family_limit') }}
    {{ $bed_categories[$record->bed_category_id] ?? '' }}{{ $record->authorisation_required == 1 ? 'Yes' : 'No' }}{{ $record->cost_type == 1 ? 'Static' : 'Structured' }}{{ ugandan_shillings($record->cost_per_night ?? $record->cost_first_night) }}{{ ugandan_shillings($record->chi_cost_per_night ?? $record->chi_cost_first_night) }}{{ ($genders[$record->gender] ?? 'All') }}{{ ($age_limits[0] ?? "0") . ' to ' . ($age_limits[1] ?? "0") . ' ' . $time_periods[$record->age_type] ?? 'years' }}{{ ugandan_shillings($record->annual_member_limit) }}{{ ugandan_shillings($record->annual_family_limit) }}
    - - @if(Auth::user()->can('insurance-items-view')){{ __('insurance_benefits.view_all_items') }}@endif - @if(Auth::user()->can('insurance-items-create')){{ __('insurance_benefits.add_items') }}@endif -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/edit.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/edit.blade.php deleted file mode 100644 index b85b954e..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/edit.blade.php +++ /dev/null @@ -1,95 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_benefits.create_insurance_benefit') }}

    -
    - -
    - - @include('insurance::insurance_benefits.menu') - -
    - - @include('flash::message') - - {{ Form::model($benefit, ['method' => 'PUT', 'route' => ['insurance_benefits.update',$benefit], 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('insurance_benefits.benefit_name')) }} - {{ Form::text('name', $benefit->name, ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('waiting_period', __('insurance_benefits.waiting_period_days')) }} - {{ Form::number('waiting_period', $benefit->waiting_period, ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('annual_member_limit', __('insurance_benefits.annual_member_limit') . ' (' . __('insurance_claims.no_limit_applicable') . ')') }} - {{ Form::number('annual_member_limit', $benefit->annual_member_limit, ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('opd_percentage', __('insurance_benefits.opd_percentage') . ' (' . __('insurance_benefits.applied_to_cash_amount') . ')') }} - {{ Form::number('opd_percentage', $benefit->opd_percentage, ['class' => 'form-control', 'step' => '0.01']) }} -
    - -
    - {{ Form::label('ward_id', __('insurance_benefits.wards_benefit_will_be_applied_to')) }} - {{ Form::select('ward_id[]', $wards, explode(",", $benefit->wards),['class' => 'form-control ward_id', 'data-error'=>'Select the ward', 'multiple']) }} -
    -
    -
    -
    - {{ Form::label('plan_id', __('insurance_benefits.plan')) }} - {{ Form::select('plan_id', $insurance_plans, $benefit->plan_id, ['class' => 'form-control compulsory', 'required', 'id' => 'plan_id']) }} -
    - -
    - {{ Form::label('fee', __('insurance_benefits.fee')) }} - {{ Form::number('fee', $benefit->fee, ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('annual_family_limit', __('insurance_benefits.annual_family_limit') . ' (' . __('insurance_claims.no_limit_applicable') . ')') }} - {{ Form::number('annual_family_limit', $benefit->annual_family_limit, ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('ipd_percentage', __('insurance_benefits.ipd_percentage') . ' (' . __('insurance_benefits.applied_to_cash_amount') . ')') }} - {{ Form::number('ipd_percentage', $benefit->ipd_percentage, ['class' => 'form-control', 'step' => '0.01']) }} -
    -
    -
    - - {{ Form::button(__('insurance_groups.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('insurance_groups.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/edit_inpatient_accommodation.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/edit_inpatient_accommodation.blade.php deleted file mode 100644 index a5fea761..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/edit_inpatient_accommodation.blade.php +++ /dev/null @@ -1,229 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_benefits.inpatient_accommodation') }}

    -
    - -
    - - @include('insurance::insurance_benefits.menu') - -
    - @include('flash::message') - -

    {{ __('insurance_benefits.insurance_benefit') }}: {{ $benefit->name }}

    - -
    - - {{ Form::open(['route' => 'insurance_benefits.update_inpatient_accommodation']) }} - - {{ Form::hidden('benefit_id', $benefit->id) }} - {{ Form::hidden('rate_id', $rate->id) }} - -
    -
    -
    - {{ Form::label('name', __('insurance_benefits.bed_category_name')) }} - {{ Form::text('name', $bed_category->name, ['class' => 'form-control', 'readonly']) }} -
    - -
    - {{ Form::label('name', __('bed_categories.type_of_pricing')) }} - {{ Form::text('name', $bed_category->cost_type == 1 ? 'Static' : 'Structured', ['class' => 'form-control', 'readonly']) }} -
    - - @if($bed_category->cost_type == 1) -
    - {{ Form::label('cost_per_night', __('bed_categories.cost_per_night')) }} - {{ Form::number('cost_per_night', $bed_category->cost_per_night, ['class' => 'form-control', 'readonly']) }} -
    - @else -
    - {{ Form::label('cost_first_night', __('bed_categories.cost_of_first_night')) }} - {{ Form::number('cost_first_night', $bed_category->cost_first_night, ['class' => 'form-control', 'readonly']) }} -
    - -
    -
    -
    - - {{ Form::number('from_night', 2, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    - - {{ Form::number('to_night', $bed_category->to_night, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    - -
    - {{ Form::label('cost_range', __('bed_categories.range_cost')) }} - {{ Form::number('cost_range', $bed_category->cost_range, ['class' => 'form-control', 'readonly']) }} -
    - -
    - {{ Form::label('cost_after', __('bed_categories.cost_for_nights_thereafter')) }} - {{ Form::number('cost_after', $bed_category->cost_after, ['class' => 'form-control', 'readonly']) }} -
    - @endif -
    - -
    - -
    -
    cost_type != 1) style="display: none" @endif> -
    -
    - {{ Form::label('cost_per_night', __('insurance_benefits.co_payment_cost_per_night')) }} - {{ Form::number('cost_per_night', $rate->cost_per_night, ['class' => 'form-control compulsory']) }} -
    -
    -
    -
    - {{ Form::label('chi_cost_per_night', __('insurance_benefits.chi_cost_per_night')) }} - {{ Form::number('chi_cost_per_night', $rate->chi_cost_per_night, ['class' => 'form-control compulsory']) }} -
    -
    -
    - -
    cost_type == 1) style="display: none" @endif> -
    -
    -
    - {{ Form::label('cost_first_night', __('insurance_benefits.co_payment_cost_of_first_night')) }} - {{ Form::number('cost_first_night', $rate->cost_first_night, ['class' => 'form-control compulsory']) }} -
    -
    -
    -
    - {{ Form::label('chi_cost_first_night', __('insurance_benefits.chi_cost_of_first_night')) }} - {{ Form::number('chi_cost_first_night', $rate->chi_cost_first_night, ['class' => 'form-control compulsory']) }} -
    -
    -
    - -
    -
    -
    - {{ Form::label('cost_range', __('insurance_benefits.co_payment_range_cost')) }} - {{ Form::number('cost_range', $rate->cost_range, ['class' => 'form-control compulsory']) }} -
    -
    -
    -
    - {{ Form::label('chi_cost_range', __('insurance_benefits.chi_range_cost')) }} - {{ Form::number('chi_cost_range', $rate->chi_cost_range, ['class' => 'form-control compulsory']) }} -
    -
    -
    - -
    -
    -
    - {{ Form::label('cost_after', __('insurance_benefits.co_payment_cost_for_nights_thereafter')) }} - {{ Form::number('cost_after', $rate->cost_after, ['class' => 'form-control compulsory']) }} -
    -
    -
    -
    - {{ Form::label('chi_cost_after', __('insurance_benefits.chi_cost_for_nights_thereafter')) }} - {{ Form::number('chi_cost_after', $rate->chi_cost_after, ['class' => 'form-control compulsory']) }} -
    -
    -
    -
    - -
    -
    -
    - {{ Form::label('annual_member_limit', __('insurance_benefits.annual_member_limit')) }} - {{ Form::number('annual_member_limit', $rate->annual_member_limit, ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('gender', __('insurance_benefits.gender')) }} - {{ Form::select('gender', [0 => 'All', 1 => 'Male', 2 => 'Female'], $rate->gender, ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('age_limit', __('insurance_benefits.age_limit')) }} - - @php $age_limits = explode(",", $rate->age_limit); @endphp - -
    -
    -
    - {{ Form::label('age_limit_start',__('insurance_benefits.start')) }} - {{ Form::number('age_limit_start',$age_limits[0],['class' => 'form-control compulsory']) }} -
    -
    -
    -
    - {{ Form::label('age_limit_end',__('insurance_benefits.end')) }} - {{ Form::number('age_limit_end',$age_limits[1],['class' => 'form-control compulsory']) }} -
    -
    -
    -
    -
    -
    -
    - {{ Form::label('annual_family_limit', __('insurance_benefits.annual_family_limit')) }} - {{ Form::number('annual_family_limit', $rate->annual_family_limit, ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('authorisation', __('insurance_benefits.authorisation')) }} - -

    - - {{ Form::radio('authorisation', 1, $rate->authorisation == 1, ['required']) }} Yes    - {{ Form::radio('authorisation', 0, $rate->authorisation == 0, ['required']) }} No -
    - -
    - {{ Form::label('age_type', __('insurance_benefits.age_type')) }} - {{ Form::select('age_type', [0 => 'Days', 1 => 'Months', 2 => 'Years'], $rate->age_type, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    - - {{ Form::button(__('bed_categories.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('bed_categories.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} - -
    -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/edit_items.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/edit_items.blade.php deleted file mode 100644 index 9c05614a..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/edit_items.blade.php +++ /dev/null @@ -1,185 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_benefits.insurance_benefit') }}

    -
    - -
    - - @include('insurance::insurance_benefits.menu') - -
    - @include('flash::message') - -

    {{ __('insurance_benefits.insurance_benefit') }}: {{ $benefit->name }}

    -

    {{ __('insurance_benefits.item_type') }}: {{ [1 => 'Services', 2 => 'Procedures', 3 => 'Investigations', 4 => 'Drugs', 5 => 'Sundries'][$item_type] }}

    - -
    - - @if(!is_null($benefit->opd_percentage)) - {{ Form::checkbox('apply_opd_percentage_all', 'OPD All', false, ['id' => "apply_opd_percentage_all"]) }} {{ __('insurance_benefits.apply_opd_percentage_all') }} -    - @endif - - @if(!is_null($benefit->ipd_percentage)) - {{ Form::checkbox('apply_ipd_percentage_all', 'IPD All', false, ['id' => "apply_ipd_percentage_all"]) }} {{ __('insurance_benefits.apply_ipd_percentage_all') }} - @endif - -

    - - {{ Form::open(['route' => 'insurance_benefits.update_items']) }} - - {{ Form::hidden('benefit_id', $benefit->id) }} - {{ Form::hidden('item_type', $item_type) }} - -
    - - - - - - - - - - - - - - - @foreach($benefit_items as $record) - @php $items_array = explode(",", $record->item_id); @endphp - - @foreach($items_array as $item_id) - @php - - $item_details = get_item_insurance_details($item_id, $item_type, $benefit->id); - - if (!$item_details) {continue;} - - @endphp - - - {{ Form::hidden('item_id[]', $item_id) }} - - - - - - - - - - @endforeach - @endforeach - -
    {{ __('insurance_benefits.name') }}{{ __('insurance_benefits.authorisation') }}{{ __('insurance_benefits.cash_price') }}{{ __('insurance_benefits.opd_co_payment') }}{{ __('insurance_benefits.ipd_co_payment') }}{{ __('insurance_benefits.capitation_fee') }}{{ __('insurance_benefits.annual_member_limit') }} {{ __('insurance_benefits.annual_family_limit') }}
    {{ $items[$item_id] }} - {{ Form::hidden('authorisation[]', $item_details['authorisation'], ['id' => 'authorisation_value_' . $item_id]) }} - {{ Form::radio('authorisation_' . $item_id, 1, $item_details['authorisation'] == 1, ['onclick' => 'set_authorisation(' . $item_id . ', 1)']) }} Yes    - {{ Form::radio('authorisation_' . $item_id, 0, $item_details['authorisation'] == 0, ['onclick' => 'set_authorisation(' . $item_id . ', 0)']) }} No - {{ ugandan_shillings($item_details['cash_price']) }} - @php $apply_opd_percentage_state = isset($item_details['apply_opd_percentage']) && ($item_details['apply_opd_percentage'] == 1) @endphp - {{ Form::number('co_payment[]', $item_details['co_payment'], ['class' => 'form-control compulsory', 'required', 'min' => '0', 'id' => "co_payment_$item_id", ($apply_opd_percentage_state ? 'readonly' : '')]) }} - @if(!is_null($benefit->opd_percentage)) -
    - {{ Form::checkbox('apply_opd_percentage[]', $item_id, $apply_opd_percentage_state, ['id' => "apply_opd_percentage_$item_id", 'class' => 'apply_opd_percentage']) }} {{ __('insurance_benefits.apply_opd_percentage') }} - @endif -
    - @php $apply_ipd_percentage_state = isset($item_details['apply_ipd_percentage']) && ($item_details['apply_ipd_percentage'] == 1) @endphp - {{ Form::number('ipd_co_payment[]', $item_details['ipd_co_payment'] ?? 0, ['class' => 'form-control compulsory', 'required', 'min' => '0', 'id' => "ipd_co_payment_$item_id", ($apply_ipd_percentage_state ? 'readonly' : '')]) }} - @if(!is_null($benefit->ipd_percentage)) -
    - {{ Form::checkbox('apply_ipd_percentage[]', $item_id, $apply_ipd_percentage_state, ['id' => "apply_ipd_percentage_$item_id", 'class' => 'apply_ipd_percentage']) }} {{ __('insurance_benefits.apply_ipd_percentage') }} - @endif -
    {{ Form::number('capitation_fee[]', $item_details['capitation_fee'], ['class' => 'form-control compulsory', 'required', 'min' => '0']) }}{{ Form::number('annual_member_limit[]', $item_details['annual_member_limit'], ['class' => 'form-control compulsory', 'required', 'min' => '0']) }}{{ Form::number('annual_family_limit[]', $item_details['annual_family_limit'], ['class' => 'form-control compulsory', 'required', 'min' => '0']) }}
    -
    - - - -
    - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/inactive.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/inactive.blade.php deleted file mode 100644 index 79c4731c..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/inactive.blade.php +++ /dev/null @@ -1,90 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_benefits.insurance_benefits') }}

    -
    -
    - -
    -
    - - @include('insurance::insurance_benefits.menu') - -
    - - @include('flash::message') - -
    - - - - - - - - - - - - - - - @foreach($insurance_benefits as $insurance_benefit) - - - - - - - - - - - @endforeach - - -
    {{ __('insurance_benefits.benefit_name') }}{{ __('insurance_benefits.plan') }}{{ __('insurance_benefits.waiting_period_days') }}{{ __('insurance_benefits.fee') }}{{ __('insurance_benefits.annual_member_limit') }}{{ __('insurance_benefits.annual_family_limit') }}{{ __('insurance_benefits.deactivated_at') }}
    {{ $insurance_benefit->name }}{{ $insurance_plans[$insurance_benefit->plan_id] }}{{ $insurance_benefit->waiting_period }}{{ ugandan_shillings($insurance_benefit->fee) }}{{ ugandan_shillings($insurance_benefit->annual_member_limit) }}{{ ugandan_shillings($insurance_benefit->annual_family_limit) }}{{ streamline_date_time($insurance_benefit->deleted_at) }} - @if(Auth::user()->can('insurance-benefits-inactive')) - {{ Form::model($insurance_benefit->id ,['method' => 'POST', 'route' => ['insurance_benefits.activate', $insurance_benefit->id]]) }} - - {{ Form::close() }} - @endif -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/index.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/index.blade.php deleted file mode 100644 index cdd9b1b0..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/index.blade.php +++ /dev/null @@ -1,102 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_benefits.insurance_benefits') }}

    -
    -
    - -
    -
    - - @include('insurance::insurance_benefits.menu') - -
    - - @include('flash::message') - -
    - - - - - - - - - - - - - - - - - - - @foreach($insurance_benefits as $insurance_benefit) - - - - - - - - - - - - - - - @endforeach - - -
    {{ __('insurance_benefits.benefit_name') }}{{ __('insurance_benefits.plan') }}{{ __('insurance_benefits.waiting_period_days') }}{{ __('insurance_benefits.fee') }}{{ __('insurance_benefits.annual_member_limit') }}{{ __('insurance_benefits.annual_family_limit') }}{{ __('insurance_benefits.opd_percentage') }}{{ __('insurance_benefits.ipd_percentage') }}{{ __('insurance_benefits.created_by') }}
    {{ $insurance_benefit->name }}{{ $insurance_plans[$insurance_benefit->plan_id] }}{{ $insurance_benefit->waiting_period }}{{ ugandan_shillings($insurance_benefit->fee) }}{{ ugandan_shillings($insurance_benefit->annual_member_limit) }}{{ ugandan_shillings($insurance_benefit->annual_family_limit) }}{{ $insurance_benefit->opd_percentage ?? 'N/A' }}{{ $insurance_benefit->ipd_percentage ?? 'N/A' }}{{ get_full_name($insurance_benefit->created_by, 'id', 'first_name', 'last_name', 'users') }} at {{ streamline_date_time($insurance_benefit->created_at) }} - @if(Auth::user()->can('insurance-benefits-view-details')) {{ __('insurance_benefits.view_items') }}@endif - - @if(Auth::user()->can('insurance-benefits-edit')) {{ __('insurance_groups.edit') }}@endif - - @if(Auth::user()->can('insurance-benefits-inactive')) - {{ Form::model($insurance_benefit->id ,['method' => 'DELETE', 'route' => ['insurance_benefits.destroy', $insurance_benefit->id]]) }} - - {{ Form::close() }} - @endif -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/menu.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/menu.blade.php deleted file mode 100644 index 238074cf..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/menu.blade.php +++ /dev/null @@ -1,5 +0,0 @@ -
    - @if(Auth::user()->can('insurance-benefits-create')) {{ __('insurance_benefits.create_insurance_benefit') }}@endif - @if(Auth::user()->can('insurance-benefits-view')) {{ __('insurance_benefits.view_insurance_benefits') }}@endif - @if(Auth::user()->can('insurance-benefits-inactive')) {{ __('insurance_benefits.inactive_insurance_benefits') }}@endif -
    diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/view_accommodation_details.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/view_accommodation_details.blade.php deleted file mode 100644 index e8baaf44..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/view_accommodation_details.blade.php +++ /dev/null @@ -1,142 +0,0 @@ -@extends('layouts.main') - -@push('styles') -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_benefits.inpatient_accommodation_details') }}

    -
    - -
    - - @include('insurance::insurance_benefits.menu') - - @php - $time_periods = [0 => 'Days', 1 => 'Months', 2 => 'Years']; - $genders = [0 => 'All', 1 => 'Male', 2 => 'Female']; - $age_limits = explode(",", $rate->age_limit); - @endphp - -
    - @include('flash::message') - -

    {{ __('insurance_benefits.insurance_benefit') }}: {{ $benefit->name }}

    - -
    - -
    -
    -
    - - - - - - - - - - - @if($bed_category->cost_type == 1) - - - - - @else - - - - - - - - - - - - - - - - - @endif -
    {{ __('insurance_benefits.bed_category_name') }}{{ $bed_category->name }}
    {{ __('bed_categories.type_of_pricing') }}{{ $bed_category->cost_type == 1 ? 'Static' : 'Structured' }}
    {{ __('bed_categories.cost_per_night') }}{{ ugandan_shillings($bed_category->cost_per_night) }}
    {{ __('bed_categories.cost_of_first_night') }}{{ ugandan_shillings($bed_category->cost_first_night) }}
    {{ __('bed_categories.night_ranges') }}2 - {{ $bed_category->to_night }}
    {{ __('bed_categories.range_cost') }}{{ ugandan_shillings($bed_category->cost_range) }}
    {{ __('bed_categories.cost_for_nights_thereafter') }}{{ ugandan_shillings($bed_category->cost_after) }}
    -
    -
    - -
    - -
    -
    - - @if($bed_category->cost_type == 1) - - - - - - - @else - - - - - - - - - - - - - - - - - - - @endif - - - - - - - - - - - - - - - - - - - -
    {{ __('insurance_benefits.co_payment_cost_per_night') }}{{ ugandan_shillings($rate->cost_per_night) }}{{ __('insurance_benefits.chi_cost_per_night') }}{{ ugandan_shillings($rate->chi_cost_per_night) }}
    {{ __('insurance_benefits.co_payment_cost_of_first_night') }}{{ ugandan_shillings($rate->cost_first_night) }}{{ __('insurance_benefits.chi_cost_of_first_night') }}{{ ugandan_shillings($rate->chi_cost_first_night) }}
    {{ __('insurance_benefits.co_payment_range_cost') }}{{ ugandan_shillings($rate->cost_range) }}{{ __('insurance_benefits.chi_range_cost') }}{{ ugandan_shillings($rate->chi_cost_range) }}
    {{ __('insurance_benefits.co_payment_cost_for_nights_thereafter') }}{{ ugandan_shillings($rate->cost_after) }}{{ __('insurance_benefits.chi_cost_for_nights_thereafter') }}{{ ugandan_shillings($rate->chi_cost_after) }}
    {{ __('insurance_benefits.annual_member_limit') }}{{ ugandan_shillings($rate->annual_member_limit) }}{{ __('insurance_benefits.annual_family_limit') }}{{ ugandan_shillings($rate->annual_family_limit) }}
    {{ __('insurance_benefits.gender') }}{{ ($genders[$rate->gender] ?? 'All') }}{{ __('insurance_benefits.authorisation') }}{{ $rate->authorisation_required == 1 ? 'Yes' : 'No' }}
    {{ __('insurance_benefits.age_limit') }}{{ ($age_limits[0] ?? "0") . ' to ' . ($age_limits[1] ?? "0") . ' ' . $time_periods[$rate->age_type] ?? 'years' }}
    -
    -
    -
    - -
    - - {{ __('insurance_benefits.edit') }} - {{ __('insurance_benefits.delete') }} -
    -@endsection - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/view_inpatient_accommodation.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/view_inpatient_accommodation.blade.php deleted file mode 100644 index fd2d349e..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/view_inpatient_accommodation.blade.php +++ /dev/null @@ -1,97 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_benefits.inpatient_accommodation') }}

    -
    - -
    - - @include('insurance::insurance_benefits.menu') - -
    - @include('flash::message') - -

    {{ __('insurance_benefits.insurance_benefit') }}: {{ $benefit->name }}

    - -
    - - - - - - - - - - - - - - - - - @php - $time_periods = [0 => 'Days', 1 => 'Months', 2 => 'Years']; - $genders = [0 => 'All', 1 => 'Male', 2 => 'Female']; - @endphp - - @foreach($rates as $record) - @php $age_limits = explode(",", $record->age_limit); @endphp - - - - - - - - - - - - - @endforeach - -
    {{ __('insurance_benefits.bed_category') }}{{ __('insurance_benefits.authorisation') }}{{ __('insurance_benefits.type_of_pricing') }}{{ __('insurance_benefits.co_payment') }}{{ __('insurance_benefits.chi_amount') }}{{ __('insurance_benefits.gender') }}{{ __('insurance_benefits.age_limit') }}{{ __('insurance_benefits.annual_member_limit') }}{{ __('insurance_benefits.annual_family_limit') }}
    {{ $bed_categories[$record->bed_category_id] }}{{ $record->authorisation_required == 1 ? 'Yes' : 'No' }}{{ $record->cost_type == 1 ? 'Static' : 'Structured' }}{{ ugandan_shillings($record->cost_per_night ?? $record->cost_first_night) }}{{ ugandan_shillings($record->chi_cost_per_night ?? $record->chi_cost_first_night) }}{{ ($genders[$record->gender] ?? 'All') }}{{ ($age_limits[0] ?? "0") . ' to ' . ($age_limits[1] ?? "0") . ' ' . $time_periods[$record->age_type] ?? 'years' }}{{ ugandan_shillings($record->annual_member_limit) }}{{ ugandan_shillings($record->annual_family_limit) }} - Details -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/view_items.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/view_items.blade.php deleted file mode 100644 index e5738a94..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_benefits/view_items.blade.php +++ /dev/null @@ -1,147 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_benefits.insurance_benefit') }}

    -
    - -
    - - @include('insurance::insurance_benefits.menu') - -
    - @include('flash::message') - -

    {{ __('insurance_benefits.insurance_benefit') }}: {{ $benefit->name }}

    - {{ Form::hidden('benefit_id', $benefit->id, ['id' => 'benefit_id']) }} - {{ Form::hidden('item_type', $item_type, ['id' => 'item_type']) }} -

    {{ __('insurance_benefits.item_type') }}: {{ [1 => 'Services', 2 => 'Procedures', 3 => 'Investigations', 4 => 'Drugs', 5 => 'Sundries'][$item_type] }}

    - - @if(Auth::user()->can('insurance-items-edit'))Edit Items@endif - -
    - -
    - - - - - - - - - - - - - - - - - @foreach($benefit_items as $record) - @php $items_array = explode(",", $record->item_id); @endphp - - @foreach($items_array as $item_id) - @php $item_details = get_item_insurance_details($item_id, $item_type, $benefit->id); if (!$item_details) {continue;} @endphp - - - - - - - - - - - - - - @endforeach - @endforeach - -
    {{ __('insurance_benefits.name') }}{{ __('insurance_benefits.authorisation') }}{{ __('insurance_benefits.cash_price') }}{{ __('insurance_benefits.opd_co_payment') }}{{ __('insurance_benefits.ipd_co_payment') }}{{ __('insurance_benefits.capitation_fee') }}{{ __('insurance_benefits.annual_member_limit') }}{{ __('insurance_benefits.annual_family_limit') }}
    {{ $items[$item_id] }}{{ $item_details['authorisation'] == 1 ? 'Yes' : 'No' }}{{ ugandan_shillings($item_details['cash_price']) }} - @if(isset($item_details['apply_opd_percentage']) && $item_details['apply_opd_percentage'] == 1) - {{ ugandan_shillings(($benefit->opd_percentage / 100) * $item_details['cash_price']) }} -

    - {{ $benefit->opd_percentage . '% ' . __('insurance_benefits.of_cash_price') }} - @else - {{ ugandan_shillings($item_details['co_payment']) }} - @endif -
    - @if(isset($item_details['apply_ipd_percentage']) && $item_details['apply_ipd_percentage'] == 1) - {{ ugandan_shillings(($benefit->ipd_percentage / 100) * $item_details['cash_price']) }} -

    - {{ $benefit->ipd_percentage . '% ' . __('insurance_benefits.of_cash_price') }} - @else - {{ ugandan_shillings($item_details['ipd_co_payment'] ?? 0) }} - @endif -
    {{ ugandan_shillings($item_details['capitation_fee']) }}{{ ugandan_shillings($item_details['annual_member_limit']) }}{{ ugandan_shillings($item_details['annual_family_limit']) }}@if(Auth::user()->can('insurance-tariffs-create'))Manage Tariffs@endif@if(Auth::user()->can('insurance-items-remove'))Remove@endif
    -
    -
    - - -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_claims/incoming_claim_adjudication_errors.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_claims/incoming_claim_adjudication_errors.blade.php deleted file mode 100644 index d8b969f9..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_claims/incoming_claim_adjudication_errors.blade.php +++ /dev/null @@ -1,188 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_claims.incoming_claim_adjudication_errors') }}

    -
    -
    - -
    -
    - -
    - {{ Form::open(['method'=>'post','route' => 'insurance_claims.incoming_claim_adjudication_errors']) }} - - {{ Form::hidden('patient_id', 0, ['id' => 'patient_id']) }} - -
    -
    -
    - - -
    -
    - - - -
    - {{ Form::label('search_patient', __('insurance_claims.search_by_patient')) }} -
    - -
    -
    - -
    -
    - {{ Form::submit(__('investigations.search'), ['class'=>'btn btn-success pull-right']) }} -
    -
    -
    - {{ Form::close() }} -
    - -
    - - @include('flash::message') - - @if($search_text != "") -

    -
    - @endif - -
    - - - - - - - - - - - - @foreach($claims as $claim) - - - - - - - - @endforeach - - -
    {{ __('insurance_claims.patient') }}{{ __('insurance_claims.plan') }}{{ __('insurance_claims.claims_totals') }}{{ __('insurance_claims.last_updated') }}
    {{ $claim->first_name . ' ' . $claim->last_name}} ({{ $claim->number }}){{ $insurance_plans[$claim->plan_id] }}{{ ugandan_shillings($claim->primary_plan_claim_total_sum) }}{{ streamline_date_time($claim->created_at) }} - {{ __('insurance_claims.view_details') }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_claims/incoming_claim_adjudication_errors_details.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_claims/incoming_claim_adjudication_errors_details.blade.php deleted file mode 100644 index b18cb14d..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_claims/incoming_claim_adjudication_errors_details.blade.php +++ /dev/null @@ -1,422 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_claims.claim_error_details') }}

    -
    - -
    - -
    - - @include('flash::message') - - @php - $item_types = [1 => 'Services', 2 => 'Procedures', 3 => 'Investigations', 4 => 'Drugs', 5 => 'Sundries', 6 => __('insurance_claims.inpatient_ward_stay')]; - $services = \Illuminate\Support\Facades\DB::table('services')->where('available', 1)->pluck('name', 'id'); - $procedures = \Illuminate\Support\Facades\DB::table('procedures')->where('available', 1)->pluck('name', 'id'); - $investigations = \Illuminate\Support\Facades\DB::table('investigations')->pluck('name', 'id'); - $drugs = \Illuminate\Support\Facades\DB::table('drugs')->where('available', 1)->pluck('name', 'id'); - $sundries = \Illuminate\Support\Facades\DB::table('sundries')->where('available', 1)->pluck('name', 'id'); - $overall_claim_total = 0; - $cell_counter = 0; - $claim_ids = []; - $membership_diff_days = $patient_details->membership_start_date ? Carbon\Carbon::createFromFormat('Y-m-d', $patient_details->membership_start_date)->diffInDays(Carbon\Carbon::now()) : 0; - $consumption_details = get_insurance_member_plan_yearly_consumption_details ($patient_details->id, $patient_details->family_id, $patient_details->chi_plan, date('Y')); - @endphp - -

    {{ __('insurance_claims.details') }}

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - @php $dob = new Carbon\Carbon($patient_details->date_of_birth); @endphp - - - - - - -
    {{ __('insurance_claims.patient') }}{{ $patient_details->first_name . ' ' . $patient_details->last_name}} ({{ $patient_details->number }}){{ __('insurance_claims.patient_category') }}{{ get_name($patient_details->category_id, 'id', 'name', 'patient_categories') }}
    {{ __('insurance_claims.chi_family') }}{{ get_name($patient_details->family_id, 'id', 'name', 'insurance_heads_of_family') }}{{ __('insurance_claims.chi_group') }}{{ get_name($patient_details->group_id, 'id', 'name', 'insurance_groups') }}
    {{ __('insurance_claims.membership_start_date') }} ({{patient_duration_on_chi_sheme($patient_details->id)}}){{ streamline_date($patient_details->membership_start_date) }}{{ __('insurance_claims.member_account_number') }}{{ $patient_details->member_account_number }}
    {{ __('insurance_claims.gender') }}{{ $patient_details->gender == 1 ? __('insurance_claims.male') : __('insurance_claims.female') }}{{ __('insurance_claims.age') }}{{ $dob->diffInYears(Carbon\Carbon::now()) }} {{ __('insurance_claims.years') }} ({{ streamline_date($patient_details->date_of_birth) }})
    {{ __('insurance_claims.residence') }}{{ patient_residence($patient_details->id) }}
    -
    -
    -

    {{ __('insurance_members.member_picture') }}

    - @php $member_photo = asset('uploads/images/insurance_members') . '/' . $patient_details->photo; @endphp - member photo -
    -
    - - @foreach($claims as $claim) -
    - -

    {{ $item_types[$claim->item_type] ?? '' }}

    - - - - - - - - - - - - - - - - - - - - -
    {{ __('insurance_claims.claim_total') }}{{ ugandan_shillings($claim->primary_plan_claim_total) }}{{ __('insurance_claims.date_registered') }}{{ streamline_date_time($claim->created_at) }}
    {{ __('insurance_claims.insurance_plan') }} - @php $plan_details = \Illuminate\Support\Facades\DB::table('community_health_insurance_plans')->where('id', $claim->plan_id)->first(); @endphp - {{ $plan_details->name }} - - @if($claim->plan_validity_error == 1) - ({{ __('insurance_claims.chi_plan_expired') }}) - @endif - {{ __('insurance_claims.source') }}@if($claim->inpatient_outpatient == 0) OPD @else IPD @endif
    {{ __('insurance_claims.plan_start_date') }}{{ streamline_date($plan_details->plan_start_date) }}{{ __('insurance_claims.plan_end_date') }}{{ streamline_date($plan_details->plan_end_date) }}
    - - @php - $item_ids = explode(",", $claim->item_ids); - $item_quantities = explode(",", $claim->item_quantities); - $tariff_ids = explode(",", $claim->tariff_ids); - $tariff_amounts = explode(",", $claim->tariff_amounts); - $co_payment_amounts = explode(",", $claim->co_payment_amounts); - $authorisations = explode(",", $claim->is_item_authorisation_required); - $benefit_ids = explode(",", $claim->benefit_ids); - $overall_claim_total += $claim->primary_plan_claim_total; - $claim_ids[] = $claim->id; - $plan_limit_error = explode(",", $claim->plan_limit_error); - $benefit_waiting_period_error = explode(",", $claim->benefit_waiting_period_error); - $benefit_limit_error = explode(",", $claim->benefit_limit_error); - $item_limit_error = explode(",", $claim->item_limit_error); - @endphp - -
    - - - - - - - - - - - - - - @for($i = 0; $i < count($item_ids); $i++) - @php - $benefit_details = \Illuminate\Support\Facades\DB::table('insurance_benefits')->where('id', $benefit_ids[$i])->first(); - $required_membership_days = $benefit_details ? $benefit_details->waiting_period : 0; - $benefit_member_limit = $benefit_details ? $benefit_details->annual_member_limit : 0; - $benefit_family_limit = $benefit_details ? $benefit_details->annual_family_limit : 0; - @endphp - - - - - - - - - - - @php $cell_counter++; @endphp - @endfor - -
    {{ __('insurance_claims.item_name') }}{{ __('insurance_claims.insurance_benefit') }}{{ __('insurance_claims.quantity') }}{{ __('insurance_claims.tariff_applied') }}{{ __('insurance_claims.claim_amount') }}{{ __('insurance_claims.co_payment_amount') }}
    - @if($claim->item_type == 1) - {{ $services[$item_ids[$i]] }} - @php $item_insurance_benefit_details = json_decode(get_name($item_ids[$i], 'id', 'insurance_benefit_details', 'services'), true) ?? []; @endphp - @elseif($claim->item_type == 2) - {{ $procedures[$item_ids[$i]] }} - @php $item_insurance_benefit_details = json_decode(get_name($item_ids[$i], 'id', 'insurance_benefit_details', 'procedures'), true) ?? []; @endphp - @elseif($claim->item_type == 3) - {{ $investigations[$item_ids[$i]] }} - @php $item_insurance_benefit_details = json_decode(get_name($item_ids[$i], 'id', 'insurance_benefit_details', 'investigations'), true) ?? []; @endphp - @elseif($claim->item_type == 4) - {{ $drugs[$item_ids[$i]] }} - @php $item_insurance_benefit_details = json_decode(get_name($item_ids[$i], 'id', 'insurance_benefit_details', 'drugs'), true) ?? []; @endphp - @elseif($claim->item_type == 5) - {{ $sundries[$item_ids[$i]] }} - @php $item_insurance_benefit_details = json_decode(get_name($item_ids[$i], 'id', 'insurance_benefit_details', 'sundries'), true) ?? []; @endphp - @elseif($claim->item_type == 6) - {{ get_name(get_name($item_ids[$i], 'id', 'bed_category_id', 'insurance_inpatient_accommodation_rates'), 'id', 'name', 'inpatient_bed_categories') }} - @endif - {{ $benefit_details ? $benefit_details->name : __('insurance_claims.not_under_chi_plan') }}{{ $item_quantities[$i] }} - @if($tariff_ids[$i] == 0) - {{ __('insurance_claims.none') }} - @else - {{ $tariffs[$tariff_ids[$i]] }} - @endif - {{ ugandan_shillings($tariff_amounts[$i]) }}{{ ugandan_shillings($co_payment_amounts[$i]) }} -
    - @if($benefit_waiting_period_error[$i] == 1) - - - - - - - - - - - - - - - -
    {{ __('insurance_claims.benefits_waiting_period_error') }}
    {{ __('insurance_claims.membership_days_elapsed') }}{{ $membership_diff_days }} {{ __('insurance_claims.days') }}
    {{ __('insurance_claims.required_membership_days') }}{{ $required_membership_days }} {{ __('insurance_claims.days') }}
    {{ __('insurance_claims.override') }}
    - -
    - @endif -
    - -
    - @if($benefit_limit_error[$i] == 1) - @php - $benefit_member_used = $consumption_details['benefits'][$benefit_ids[$i]]['member_plan_usage'] ?? 0; - $benefit_family_used = $consumption_details['benefits'][$benefit_ids[$i]]['family_plan_usage'] ?? 0; - $benefit_member_excess = ($tariff_amounts[$i] + $benefit_member_used) - $benefit_member_limit; - $benefit_family_excess = ($tariff_amounts[$i] + $benefit_family_used) - $benefit_family_limit; - @endphp - - - - - - - - - - - - - - - -
    {{ __('insurance_claims.benefits_limit_error') }}
    {{ __('insurance_claims.benefit_member_limit') }} - {{ ugandan_shillings($benefit_member_used) }} of {{ ugandan_shillings($benefit_member_limit) }} Consumed - ({{ ugandan_shillings($benefit_member_excess) }} {{ __('insurance_claims.in_excess') }}) -
    {{ __('insurance_claims.benefit_family_limit') }} - {{ ugandan_shillings($benefit_family_used) }} of {{ ugandan_shillings($benefit_family_limit) }} Consumed - ({{ ugandan_shillings($benefit_family_excess) }} {{ __('insurance_claims.in_excess') }}) -
    {{ __('insurance_claims.override') }}
    - -
    - @endif -
    - -
    - @if($item_limit_error[$i] == 1) - @php - if($claim->item_type == 6) { - $rate_info = DB::table('insurance_inpatient_accommodation_rates')->where('id', $item_ids[$i])->first(); - - $item_member_limit = $rate_info->annual_member_limit ?? 0; - $item_family_limit = $rate_info->annual_family_limit ?? 0; - } else { - $item_member_limit = $item_insurance_benefit_details[$benefit_ids[$i]]['annual_member_limit'] ?? 0; - $item_family_limit = $item_insurance_benefit_details[$benefit_ids[$i]]['annual_family_limit'] ?? 0; - } - - $item_key = $item_ids[$i] . ',' . $claim->item_type; - $item_member_used = $consumption_details['benefits'][$benefit_ids[$i]]["items"][$item_key]["member_plan_usage"] ?? 0; - $item_family_used = $consumption_details['benefits'][$benefit_ids[$i]]["items"][$item_key]["family_plan_usage"] ?? 0; - $item_member_excess = ($tariff_amounts[$i] + $item_member_used) - $item_member_limit; - $item_family_excess = ($tariff_amounts[$i] + $item_family_used) - $item_family_limit; - @endphp - - - - - - - - - - - - - - - -
    {{ __('insurance_claims.items_limit_error') }}
    {{ __('insurance_claims.item_member_limit') }} - {{ ugandan_shillings($item_member_used) }} of {{ ugandan_shillings($item_member_limit) }} Consumed - ({{ ugandan_shillings($item_member_excess) }} {{ __('insurance_claims.in_excess') }}) -
    {{ __('insurance_claims.item_family_limit') }} - {{ ugandan_shillings($item_family_used) }} of {{ ugandan_shillings($item_family_limit) }} Consumed - ({{ ugandan_shillings($item_family_excess) }} {{ __('insurance_claims.in_excess') }}) -
    {{ __('insurance_claims.override') }}
    - -
    - @endif -
    - -
    - @if($plan_limit_error[$i] == 1) - @php - $plan_member_limit = $plan_details->member_annual_limit; - $plan_family_limit = $plan_details->family_annual_limit; - $plan_member_used = $consumption_details["member_plan_usage"] ?? 0; - $plan_family_used = $consumption_details["family_plan_usage"] ?? 0; - $plan_member_excess = ($tariff_amounts[$i] + $plan_member_used) - $plan_member_limit; - $plan_family_excess = ($tariff_amounts[$i] + $plan_family_used) - $plan_family_limit; - @endphp - - - - - - - - - - - - - - - -
    {{ __('insurance_claims.plan_limit_error') }}
    {{ __('insurance_claims.plan_member_limit') }} - {{ ugandan_shillings($plan_member_used) }} of {{ ugandan_shillings($plan_member_limit) }} Consumed - ({{ ugandan_shillings($plan_member_excess) }} {{ __('insurance_claims.in_excess') }}) -
    {{ __('insurance_claims.plan_family_limit') }} - {{ ugandan_shillings($plan_family_used) }} of {{ ugandan_shillings($plan_family_limit) }} Consumed - ({{ ugandan_shillings($plan_family_excess) }} {{ __('insurance_claims.in_excess') }}) -
    {{ __('insurance_claims.override') }}
    - -
    - @endif -
    -
    -
    - - @if($claim->plan_validity_error == 1) - {{ __('insurance_claims.override_plan_validity') }} - @endif - @endforeach - -
    - -

    Overall Claim Total: {{ ugandan_shillings($overall_claim_total) }}

    - -
    -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_claims/view_incoming_authorisation_details.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_claims/view_incoming_authorisation_details.blade.php deleted file mode 100644 index 719e1603..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_claims/view_incoming_authorisation_details.blade.php +++ /dev/null @@ -1,246 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_claims.claim_details') }}

    -
    - -
    - -
    - - @include('flash::message') - - @php - $item_types = [1 => 'Services', 2 => 'Procedures', 3 => 'Investigations', 4 => 'Drugs', 5 => 'Sundries', 6 => __('insurance_claims.inpatient_ward_stay')]; - $services = \Illuminate\Support\Facades\DB::table('services')->where('available', 1)->pluck('name', 'id'); - $procedures = \Illuminate\Support\Facades\DB::table('procedures')->where('available', 1)->pluck('name', 'id'); - $investigations = \Illuminate\Support\Facades\DB::table('investigations')->pluck('name', 'id'); - $drugs = \Illuminate\Support\Facades\DB::table('drugs')->where('available', 1)->pluck('name', 'id'); - $sundries = \Illuminate\Support\Facades\DB::table('sundries')->where('available', 1)->pluck('name', 'id'); - $overall_claim_total = 0; - $cell_counter = 0; - $claim_ids = []; - $any_full_authorisation_required = false; - @endphp - -

    {{ __('insurance_claims.details') }}

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - @php $dob = new Carbon\Carbon($patient_details->date_of_birth); @endphp - - - - - - -
    {{ __('insurance_claims.patient') }}{{ $patient_details->first_name . ' ' . $patient_details->last_name}} ({{ $patient_details->number }}){{ __('insurance_claims.patient_category') }}{{ get_name($patient_details->category_id, 'id', 'name', 'patient_categories') }}
    {{ __('insurance_claims.chi_family') }}{{ get_name($patient_details->family_id, 'id', 'name', 'insurance_heads_of_family') }}{{ __('insurance_claims.chi_group') }}{{ get_name($patient_details->group_id, 'id', 'name', 'insurance_groups') }}
    {{ __('insurance_claims.membership_start_date') }}{{ streamline_date($patient_details->membership_start_date) }} ({{patient_duration_on_chi_sheme($patient_details->id)}}){{ __('insurance_claims.member_account_number') }}{{ $patient_details->member_account_number }}
    {{ __('insurance_claims.gender') }}{{ $patient_details->gender == 1 ? __('insurance_claims.male') : __('insurance_claims.female') }}{{ __('insurance_claims.age') }}{{ $dob->diffInYears(Carbon\Carbon::now()) }} {{ __('insurance_claims.years') }} ({{ streamline_date($patient_details->date_of_birth) }})
    {{ __('insurance_claims.residence') }}{{ patient_residence($patient_details->id) }}
    -
    -
    -

    {{ __('insurance_members.member_picture') }}

    - @php $member_photo = asset('uploads/images/insurance_members') . '/' . $patient_details->photo; @endphp - member photo -
    -
    - - @foreach($claims as $claim) -
    - -

    {{ $item_types[$claim->item_type] ?? '' }}

    - - - - - - - - - - - - - - -
    {{ __('insurance_claims.claim_total') }}{{ ugandan_shillings($claim->primary_plan_claim_total) }}{{ __('insurance_claims.date_registered') }}{{ streamline_date_time($claim->created_at) }}
    {{ __('insurance_claims.insurance_plan') }} - {{ $insurance_plans[$claim->plan_id] }} - - @if($claim->plan_validity_error == 1) - ({{ __('insurance_claims.chi_plan_expired') }}) - @endif - {{ __('insurance_claims.source') }}@if($claim->inpatient_outpatient == 0) OPD @else IPD @endif
    - - @php - $item_ids = explode(",", $claim->item_ids); - $item_quantities = explode(",", $claim->item_quantities); - $tariff_ids = explode(",", $claim->tariff_ids); - $tariff_amounts = explode(",", $claim->tariff_amounts); - $co_payment_amounts = explode(",", $claim->co_payment_amounts); - $authorisations = explode(",", $claim->is_item_authorisation_required); - $benefit_ids = explode(",", $claim->benefit_ids); - $overall_claim_total += $claim->primary_plan_claim_total; - $claim_ids[] = $claim->id; - $plan_limit_error = explode(",", $claim->plan_limit_error); - $benefit_waiting_period_error = explode(",", $claim->benefit_waiting_period_error); - $benefit_limit_error = explode(",", $claim->benefit_limit_error); - $item_limit_error = explode(",", $claim->item_limit_error); - @endphp - -
    - - - - - - - - - - - - - - - @for($i = 0; $i < count($item_ids); $i++) - - - - - - - - - - - @endfor - -
    {{ __('insurance_claims.item_name') }}{{ __('insurance_claims.insurance_benefit') }}{{ __('insurance_claims.quantity') }}{{ __('insurance_claims.tariff_applied') }}{{ __('insurance_claims.claim_amount') }}{{ __('insurance_claims.co_payment_amount') }}{{ __('insurance_claims.authorisation') }}
    - @if($claim->item_type == 1) - {{ $services[$item_ids[$i]] }} - @elseif($claim->item_type == 2) - {{ $procedures[$item_ids[$i]] }} - @elseif($claim->item_type == 3) - {{ $investigations[$item_ids[$i]] }} - @elseif($claim->item_type == 4) - {{ $drugs[$item_ids[$i]] }} - @elseif($claim->item_type == 5) - {{ $sundries[$item_ids[$i]] }} - @elseif($claim->item_type == 6) - {{ get_name(get_name($item_ids[$i], 'id', 'bed_category_id', 'insurance_inpatient_accommodation_rates'), 'id', 'name', 'inpatient_bed_categories') }} - @endif - {{ $benefits[$benefit_ids[$i]] ?? __('insurance_claims.not_under_chi_plan') }}{{ $item_quantities[$i] }} - @if($tariff_ids[$i] == 0) - {{ __('insurance_claims.none') }} - @else - {{ $tariffs[$tariff_ids[$i]] }} - @endif - {{ ugandan_shillings($tariff_amounts[$i]) }}{{ ugandan_shillings($co_payment_amounts[$i]) }} - @if($authorisations[$i] == 1) - {{ __('insurance_claims.authorise_item') }} - @endif - @php $cell_counter++; @endphp - - @if($benefit_waiting_period_error[$i] == 1) - {{ __('insurance_claims.benefits_waiting_period_error') }}

    - @endif - - @if($plan_limit_error[$i] == 1) - {{ __('insurance_claims.plan_limit_error') }}

    - @endif - - @if($benefit_limit_error[$i] == 1) - {{ __('insurance_claims.benefits_limit_error') }}

    - @endif - - @if($item_limit_error[$i] == 1) - {{ __('insurance_claims.items_limit_error') }} - @endif -
    -
    - - @if($claim->is_authorisation_required == 1) - @php $any_full_authorisation_required = true; @endphp - {{ __('insurance_claims.authorise_claim') }} - @endif - @endforeach - -
    - -

    Overall Claim Total: {{ ugandan_shillings($overall_claim_total) }}

    - - @if($any_full_authorisation_required) - {{ Form::open(['route' => 'insurance_claims.authorise_all_claims', 'data-toggle' => 'validator']) }} - {{ Form::hidden('claim_ids', implode(",", $claim_ids)) }} - {{ Form::button(__('insurance_claims.authorise_all_claims'),['type'=>'submit','class'=>'btn btn-success btn-sm', 'onclick' => 'return confirm("Are you sure you want to authorise?")']) }} - {{ Form::close() }} - @endif - -
    -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_claims/view_incoming_authorisations.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_claims/view_incoming_authorisations.blade.php deleted file mode 100644 index 6ae43f85..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_claims/view_incoming_authorisations.blade.php +++ /dev/null @@ -1,189 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_claims.view_incoming_authorisations') }}

    -
    -
    - -
    -
    - -
    - {{ Form::open(['method'=>'post','route' => 'insurance_claims.view_incoming_authorisations']) }} - - {{ Form::hidden('patient_id', 0, ['id' => 'patient_id']) }} - -
    -
    -
    - - -
    -
    - - - -
    - {{ Form::label('search_patient', __('insurance_claims.search_by_patient')) }} -
    - -
    -
    - -
    -
    - {{ Form::submit(__('investigations.search'), ['class'=>'btn btn-success pull-right']) }} -
    -
    -
    - {{ Form::close() }} -
    - -
    - - @include('flash::message') - - @if($search_text != "") -

    -
    - @endif - -
    - - - - - - - - - - - - @php $item_types = [1 => 'Services', 2 => 'Procedures', 3 => 'Investigations', 4 => 'Drugs', 5 => 'Sundries'] @endphp - @foreach($claims as $claim) - - - - - - - - @endforeach - - -
    {{ __('insurance_claims.patient') }}{{ __('insurance_claims.plan') }}{{ __('insurance_claims.claims_totals') }}{{ __('insurance_claims.last_updated') }}
    {{ $claim->first_name . ' ' . $claim->last_name}} ({{ $claim->number }}){{ $insurance_plans[$claim->plan_id] }}{{ ugandan_shillings($claim->primary_plan_claim_total_sum) }}{{ streamline_date_time($claim->created_at) }} - {{ __('insurance_claims.view_details') }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_disease_groups/create.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_disease_groups/create.blade.php deleted file mode 100644 index d355fa1a..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_disease_groups/create.blade.php +++ /dev/null @@ -1,70 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_disease_groups.create_disease_groups') }}

    -
    - -
    - - @include('insurance::insurance_disease_groups.menu') - -
    - - @include('flash::message') - - {{ Form::open(['route' => 'insurance_disease_groups.store','data-toggle'=>'validator']) }} - -
    - {{ Form::label('name', 'Name') }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('diagnoses', 'Diagnoses') }} - {{ Form::select('diagnoses[]', $diagnoses, '', ['class' => 'form-control compulsory', 'multiple', 'required', 'id' => 'diagnoses']) }} -
    - -
    - {{ Form::label('investigations', 'Investigations') }} - {{ Form::select('investigations[]', $investigations, '', ['class' => 'form-control', 'multiple', 'id' => 'investigations']) }} -
    - -
    - {{ Form::label('drugs', 'Drugs') }} - {{ Form::select('drugs[]', $drugs, '', ['class' => 'form-control', 'multiple', 'id' => 'drugs']) }} -
    - -
    - {{ Form::label('procedures', 'Procedures') }} - {{ Form::select('procedures[]', $procedures, '', ['class' => 'form-control', 'multiple', 'id' => 'procedures']) }} -
    - - {{ Form::button(__('insurance_groups.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('insurance_groups.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_disease_groups/details.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_disease_groups/details.blade.php deleted file mode 100644 index cadcb112..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_disease_groups/details.blade.php +++ /dev/null @@ -1,92 +0,0 @@ -@extends('layouts.main') - -@push('styles') -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_disease_groups.insurance_disease_group_details') }}

    -
    - -
    - - @include('insurance::insurance_disease_groups.menu') - -
    - @include('flash::message') - -

    {{ $group->name }} - {{ __('insurance_disease_groups.details') }}

    - -
    -
    -

    {{ __('insurance_disease_groups.diagnoses') }}

    - - @php $group_diagnoses = explode(",", $group->diagnoses); @endphp - - - @foreach($group_diagnoses as $item) - - @endforeach -
    {{ $diagnoses[$item] }}
    -
    -
    -

    {{ __('insurance_disease_groups.drugs') }}

    - - @php $group_treatments = explode(",", $group->treatments); @endphp - - - @foreach($group_treatments as $item) - - @endforeach -
    {{ $drugs[$item] }}
    -
    -
    - -
    - -
    -
    -

    {{ __('insurance_disease_groups.investigations') }}

    - - @php $group_investigations = explode(",", $group->investigations); @endphp - - - @foreach($group_investigations as $item) - - @endforeach -
    {{ $investigations[$item] }}
    -
    -
    -

    {{ __('insurance_disease_groups.procedures') }}

    - - @php $group_procedures = explode(",", $group->procedures); @endphp - - - @foreach($group_procedures as $item) - - @endforeach -
    {{ $procedures[$item] }}
    -
    -
    - - @if(Auth::user()->can('insurance-disease-groups-edit')) - {{ __('insurance_disease_groups.edit') }} - @endif - - @if(Auth::user()->can('insurance-disease-groups-delete')) - {{ __('insurance_disease_groups.delete') }} - @endif -
    -@endsection - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_disease_groups/edit.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_disease_groups/edit.blade.php deleted file mode 100644 index 5e5cba12..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_disease_groups/edit.blade.php +++ /dev/null @@ -1,72 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_disease_groups.create_disease_groups') }}

    -
    - -
    - - @include('insurance::insurance_disease_groups.menu') - -
    - - @include('flash::message') - - {{ Form::open(['route' => 'insurance_disease_groups.update','data-toggle'=>'validator']) }} - - {{ Form::hidden('id', $group->id) }} - -
    - {{ Form::label('name', 'Name') }} - {{ Form::text('name', $group->name, ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('diagnoses', 'Diagnoses') }} - {{ Form::select('diagnoses[]', $diagnoses, explode(",", $group->diagnoses), ['class' => 'form-control compulsory', 'multiple', 'required', 'id' => 'diagnoses']) }} -
    - -
    - {{ Form::label('investigations', 'Investigations') }} - {{ Form::select('investigations[]', $investigations, explode(",", $group->investigations), ['class' => 'form-control', 'multiple', 'id' => 'investigations']) }} -
    - -
    - {{ Form::label('drugs', 'Drugs') }} - {{ Form::select('drugs[]', $drugs, explode(",", $group->treatments), ['class' => 'form-control', 'multiple', 'id' => 'drugs']) }} -
    - -
    - {{ Form::label('procedures', 'Procedures') }} - {{ Form::select('procedures[]', $procedures, explode(",", $group->procedures), ['class' => 'form-control', 'multiple', 'id' => 'procedures']) }} -
    - - {{ Form::button(__('insurance_groups.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('insurance_groups.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_disease_groups/inactive.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_disease_groups/inactive.blade.php deleted file mode 100644 index b83d7269..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_disease_groups/inactive.blade.php +++ /dev/null @@ -1,54 +0,0 @@ -@extends('layouts.main') - -@push('styles') -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_disease_groups.inactive_disease_groups') }}

    -
    - -
    - - @include('insurance::insurance_disease_groups.menu') - -
    - @include('flash::message') - -
    - - - - - - - - - - @foreach($groups as $group) - - - - - - @endforeach - - -
    {{ __('insurance_disease_groups.name') }}{{ __('insurance_disease_groups.created') }}
    {{ $group->name }}{{ __('insurance_disease_groups.by') }} {{ get_full_name($group->created_by, 'id', 'first_name', 'last_name', 'users') }} {{ __('insurance_disease_groups.at') }} {{ streamline_date_time($group->created_at) }} - {{ __('insurance_disease_groups.restore') }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_disease_groups/index.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_disease_groups/index.blade.php deleted file mode 100644 index dd0f585d..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_disease_groups/index.blade.php +++ /dev/null @@ -1,70 +0,0 @@ -@extends('layouts.main') - -@push('styles') -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_disease_groups.view_disease_groups') }}

    -
    - -
    - - @include('insurance::insurance_disease_groups.menu') - -
    - @include('flash::message') - -
    - - - - - - - - - - - - - - - - @foreach($groups as $group) - - - - - - - - - - - - @endforeach - - -
    {{ __('insurance_disease_groups.name') }}{{ __('insurance_disease_groups.diagnoses') }}{{ __('insurance_disease_groups.investigations') }}{{ __('insurance_disease_groups.drugs') }}{{ __('insurance_disease_groups.procedures') }}{{ __('insurance_disease_groups.created') }}
    {{ $group->name }}{{ count(explode(",", $group->diagnoses)) }}{{ count(explode(",", $group->investigations)) }}{{ count(explode(",", $group->treatments)) }}{{ count(explode(",", $group->procedures)) }}{{ __('insurance_disease_groups.by') }} {{ get_full_name($group->created_by, 'id', 'first_name', 'last_name', 'users') }} {{ __('insurance_disease_groups.at') }} {{ streamline_date_time($group->created_at) }} - @if(Auth::user()->can('insurance-disease-groups-view')) {{ __('insurance_disease_groups.details') }}@endif - - @if(Auth::user()->can('insurance-disease-groups-edit')) {{ __('insurance_disease_groups.edit') }}@endif - - @if(Auth::user()->can('insurance-disease-groups-delete')) {{ __('insurance_disease_groups.delete') }}@endif -
    -
    -
    -@endsection - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_disease_groups/menu.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_disease_groups/menu.blade.php deleted file mode 100644 index b5770bff..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_disease_groups/menu.blade.php +++ /dev/null @@ -1,5 +0,0 @@ -
    - @if(Auth::user()->can('insurance-disease-groups-create')) {{ __('insurance_disease_groups.create_disease_groups') }}@endif - @if(Auth::user()->can('insurance-disease-groups-view')) {{ __('insurance_disease_groups.view_disease_groups') }}@endif - @if(Auth::user()->can('insurance-disease-groups-delete')) {{ __('insurance_disease_groups.inactive_disease_groups') }}@endif -
    diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_groups/create.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_groups/create.blade.php deleted file mode 100755 index a82baea1..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_groups/create.blade.php +++ /dev/null @@ -1,119 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_groups.new_insurance_group') }}

    -
    - -
    - - @include('insurance::insurance_groups.menu') - - @include('flash::message') - - @include ('errors.list') - -
    - -
    - - {{ Form::open(['route' => 'insurance_groups.store','data-toggle'=>'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('insurance_groups.group_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('contact_name', __('insurance_groups.contact_name')) }} - {{ Form::text('contact_name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('contact_number',__('insurance_groups.contact_phone_number')) }} - {{ Form::text('contact_number','',['class' => 'form-control compulsory','required']) }} -
    -
    - -
    - {{ Form::label('group_email',__('insurance.email')) }} - {{ Form::email('group_email','',['class' => 'form-control compulsory']) }} -
    -
    -
    -
    -
    - {{ Form::label('country_id',__('patients.country_of_origin')) }} - {{ Form::select('country_id', $countries, '',['class' => 'form-control', 'data-error'=>'Select the country', 'required']) }} -
    -
    - -
    - {{ Form::label('last_fees_billing_date', __('insurance.date_of_last_fees_billing')) }} -
    - {{ Form::text('last_fees_billing_date','',['class' => 'form-control','readonly','id'=>'last_fees_billing_date']) }} - -
    -
    -
    - -
    - {{ Form::label('last_fees_payment_date', __('insurance.date_of_last_fees_payment')) }} -
    - {{ Form::text('last_fees_payment_date','',['class' => 'form-control','readonly','id'=>'last_fees_payment_date']) }} - -
    -
    -
    - -
    - {{ Form::label('risk_id',__('insurance.risk')) }} - {{ Form::select('risk_id[]', $chi_risks, '',['class' => 'form-control compulsory risk_id', 'data-error'=>'Select the risk', 'required', 'multiple']) }} -
    -
    -
    -
    - - {{ Form::button(__('insurance_groups.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('insurance_groups.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -@endsection - -@push('scripts') - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_groups/edit.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_groups/edit.blade.php deleted file mode 100755 index 2773326f..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_groups/edit.blade.php +++ /dev/null @@ -1,120 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_groups.edit_insurance_group') }}

    -
    - -
    - - @include('flash::message') - - @include('insurance::insurance_groups.menu') - -
    - -
    - {{ Form::model($insurance_group, ['method' => 'PUT', 'route' => ['insurance_groups.update',$insurance_group]]) }} - -
    -
    -
    - {{ Form::label('name', __('insurance_groups.group_name')) }} - {{ Form::text('name', $insurance_group->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('contact_name', __('insurance_groups.contact_name')) }} - {{ Form::text('contact_name', $insurance_group->contact_name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('contact_number', __('insurance_groups.contact_number')) }} - {{ Form::text('contact_number', $insurance_group->contact_number, ['class' => 'form-control compulsory','required']) }} -
    -
    - -
    - {{ Form::label('group_email',__('insurance.email')) }} - {{ Form::email('group_email', $insurance_group->contact_email,['class' => 'form-control compulsory']) }} -
    -
    -
    -
    -
    - {{ Form::label('country_id',__('patients.country_of_origin')) }} - {{ Form::select('country_id', $countries, $insurance_group->country_id, ['class' => 'form-control', 'data-error'=>'Select the country', 'required']) }} -
    -
    - -
    - {{ Form::label('last_fees_billing_date', __('insurance.date_of_last_fees_billing')) }} -
    - {{ Form::text('last_fees_billing_date', is_null($insurance_group->last_fees_billing_date) ? '' : Carbon\Carbon::parse($insurance_group->last_fees_billing_date)->format('d-m-Y'), ['class' => 'form-control','readonly','id'=>'last_fees_billing_date']) }} - -
    -
    -
    - -
    - {{ Form::label('last_fees_payment_date', __('insurance.date_of_last_fees_payment')) }} -
    - {{ Form::text('last_fees_payment_date', is_null($insurance_group->last_fees_payment_date) ? '' : Carbon\Carbon::parse($insurance_group->last_fees_payment_date)->format('d-m-Y'), ['class' => 'form-control','readonly','id'=>'last_fees_payment_date']) }} - -
    -
    -
    - - @php - $group_risks_array = is_null($insurance_group->risk_ids) ? [] : explode(",", $insurance_group->risk_ids); - @endphp - -
    - {{ Form::label('risk_id',__('insurance.risk')) }} - {{ Form::select('risk_id[]', $chi_risks, $group_risks_array,['class' => 'form-control compulsory risk_id', 'data-error'=>'Select the risk', 'required', 'multiple']) }} -
    -
    -
    -
    - - {{ Form::button(__('insurance_groups.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('insurance_groups.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -@endsection - - -@push('scripts') - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_groups/inactive.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_groups/inactive.blade.php deleted file mode 100755 index 80041c2f..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_groups/inactive.blade.php +++ /dev/null @@ -1,82 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_groups.inactive_insurance_groups') }}

    -
    - -
    - - @include('flash::message') - - @include('insurance::insurance_groups.menu') - -
    -
    -

    {{ __('insurance_groups.export_data_to_csv_and_excel') }}

    -
    - - - - - - - - - - - @foreach($insurance_groups as $insurance_group) - - - - - - - - @endforeach - - -
    {{ __('insurance_groups.group_name') }}{{ __('insurance_groups.contact_name') }}{{ __('insurance_groups.contact_number') }}{{ __('insurance_groups.action') }}
    {{ $insurance_group->name }}{{ $insurance_group->contact_name }}{{ $insurance_group->contact_number }} - {{ Form::model($insurance_group->id ,['method' => 'POST', 'route' => ['insurance_groups.activate', $insurance_group->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_groups/index.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_groups/index.blade.php deleted file mode 100755 index 6bf20e1f..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_groups/index.blade.php +++ /dev/null @@ -1,158 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_groups.insurance_groups') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -@include('insurance::insurance_groups.menu') - -
    -
    - {{ Form::open(['route' => 'insurance_groups.search_by_group', 'method' => 'ANY', 'role' => 'search']) }} -
    -
    -
    - {{ Form::select('group_id',$insurance_groups_select,'',['class' => 'form-control', 'required']) }} -
    -
    -
    - -
    -
    -
    - {{ Form::close() }} - -
    - - @if(isset($criteria)) -
    -
    -

    {{ __('insurance_members.search_criteria') }} : {{ $criteria }}    {{ __('insurance_members.clear_search') }}

    -
    -
    - @endif -

    {{ __('insurance_groups.export_data_to_csv_and_excel') }}

    -
    - - - - - - - - - - - - - - - - - - - - @foreach($insurance_groups as $insurance_group) - - @php - // get payment details for this group - $insurance_subscriptions_details = explode("/", check_insurance_group_status($insurance_group->id)); - @endphp - - - - - - - - - - - - - - - - - @endforeach - - -
    {{ __('insurance_groups.group_name') }}{{ __('insurance.risks') }}{{ __('insurance_groups.contact_name') }}{{ __('insurance_groups.contact_number') }}{{ __('insurance_groups.start_date') }}{{ __('insurance_groups.end_date') }}{{ __('insurance.date_of_last_fees_billing') }}{{ __('insurance.date_of_last_fees_payment') }}{{ __('insurance_groups.insurance_status') }}{{ __('insurance.email') }}
    {{ $insurance_group->name }} - @php - $risk_ids_array = is_null($insurance_group->risk_ids) ? [] : explode(",", $insurance_group->risk_ids); - @endphp - @for ($i = 0; $i < count($risk_ids_array); $i++) - - {{ get_name($risk_ids_array[$i], "id", "name", "community_health_insurance_risks") }} - @endfor - {{ $insurance_group->contact_name }}{{ $insurance_group->contact_number }}{{ (isset($insurance_subscriptions_details[1]) && $insurance_subscriptions_details[1] != "NA") ? streamline_date($insurance_subscriptions_details[1]) : "NA" }}{{ (isset($insurance_subscriptions_details[2]) && $insurance_subscriptions_details[2] != "NA") ? streamline_date($insurance_subscriptions_details[2]) : "NA" }}{{ is_null($insurance_group->last_fees_billing_date) ? '' : streamline_date($insurance_group->last_fees_billing_date) }}{{ is_null($insurance_group->last_fees_payment_date) ? '' : streamline_date($insurance_group->last_fees_payment_date) }} - @if($insurance_subscriptions_details[0] == 1) - {{ __('insurance_groups.active') }} - @else - {{ __('insurance_groups.inactive') }} - @endif - {{ $insurance_group->group_email }} - {{ __('insurance_groups.edit') }} - - @if(!in_array($insurance_group->id, $used_groups)) - {{ Form::model($insurance_group->id ,['method' => 'DELETE', 'route' => ['insurance_groups.destroy', $insurance_group->id]]) }} - - {{ Form::close() }} - @endif - - {{ __('insurance_groups.details') }} -
    -
    - - {{ $insurance_groups->links() }} -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_groups/insurance_group_details.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_groups/insurance_group_details.blade.php deleted file mode 100755 index bdac2958..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_groups/insurance_group_details.blade.php +++ /dev/null @@ -1,99 +0,0 @@ -@extends('layouts.main') - -@section('content') - -
    -
    -

    {{ __('insurance_groups.insurance_group_details') }}

    -
    -
    - -
    -
    - - @include('flash::message') - - @include('insurance::insurance_groups.menu') - -
    -
    -
    -
    -

    {{ __('insurance_groups.group_details') }}

    - - - - - - - - - -
    {{ __('insurance_groups.group_name') }}{{ $group_name }}
    {{ __('insurance_groups.number_of_members') }}{{ $members_count }}
    -
    -
    -
    -

    {{ __('insurance_groups.insurance_details') }}

    - - - - - - - - - - - - - -
    {{ __('insurance_groups.start_date') }}{{ streamline_date($start_date) }}
    {{ __('insurance_groups.end_date') }}{{ streamline_date($end_date) }}
    {{ __('insurance_groups.insurance_status') }}{{ $insurance_status }}
    -
    -
    - -
    - -
    -
    -
    -

    {{ __('insurance_groups.group_members_details') }}

    - - - - - - - - - - - @if($members_count != 0) - @php $counter = 1 @endphp - @foreach($insurance_members as $insurance_member) - - - - - - - @php $counter++ @endphp - @endforeach - @else - - @endif - -
    #{{ __('insurance_groups.patient_number') }}{{ __('insurance_groups.full_names') }}{{ __('insurance_groups.family_head') }}
    {{ $counter }}{{ $insurance_member->number }}{!! insurance_flag($insurance_member->id) !!}{{ $insurance_member->name }}
    {{ __('insurance_groups.no_members_in_this_group') }}
    -
    -
    -
    - -
    - - {{ __('insurance_groups.edit') }} -
    -
    -@endsection \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_groups/menu.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_groups/menu.blade.php deleted file mode 100755 index 44084fc8..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_groups/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    - -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_members/add_existing_patient_to_insurance.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_members/add_existing_patient_to_insurance.blade.php deleted file mode 100755 index e8690fc9..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_members/add_existing_patient_to_insurance.blade.php +++ /dev/null @@ -1,319 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_members.create_insurance_member') }}

    -
    - -
    - - @include('flash::message') - - @include('insurance::insurance_members.menu') - - -
    -
    -
    -

    {{ __('insurance_members.patient_search') }}

    -
    - -
    -
    -
    - -
    -
    -

    {{ __('insurance_members.patient_information') }}

    -
    -
    -
    -
    - -
    - -
    - - {{ Form::open(['route' => 'insurance_members.create_insurance_patient', 'files' => 'required']) }} - - {{ Form::hidden('patient_id', '', ['class' => 'patient_id', 'id' => 'patient_id']) }} - -
    - -
    -
    - {{ Form::label('duplicate_research_id', __('insurance.research_id')) }} - {{ Form::text('duplicate_research_id', null, ['class' => 'form-control']) }} - @if (!empty($errors->get('duplicate_research_id'))) -
    - @foreach ($errors->get('duplicate_research_id') as $message) - {{ $message }} - @endforeach -
    - @endif -
    -
    - {{ Form::label('is_family_head',__('insurance_members.is_member_head_of_family')) }} -
    - {{ Form::radio('is_family_head', 1, false, ["required",'onclick'=>'displayFamilies(1)']) }} Yes    - {{ Form::radio('is_family_head', 0, false, ["required",'onclick'=>'displayFamilies(0)']) }} No -
    - - - - - -
    - {{ Form::label('relationship_to_head', __('insurance_members.relationship_to_head')) }} - {{ Form::select('relationship_to_head', $relations, 1, ['class' => 'form-control compulsory']) }} -
    - -
    - {{ Form::label('group_id', __('insurance_members.insurance_group')) }} - {{ Form::select('group_id', $insurance_groups, null, ['class' => 'form-control compulsory', 'required', 'id' => 'group_id']) }} -
    - -
    - {{ Form::label('chi_plan', __('insurance.chi_plan')) }} - {{ Form::select('chi_plan', $chi_plans, null, ['class' => 'form-control compulsory', 'required', 'id' => 'chi_plan']) }} -
    - - {{--
    - {{ Form::label('other_plan', __('insurance.other_plan')) }} - {{ Form::select('other_plan', $chi_plans, null, ['class' => 'form-control']) }} -
    --}} - -
    - {{ Form::label('risk_id',__('insurance.risk')) }} - {{ Form::select('risk_id[]', $chi_risks, '',['class' => 'form-control compulsory risk_id', 'data-error'=>'Select the risk', 'required', 'multiple']) }} -
    -
    - -
    - {{ Form::label('member_premium', __('insurance.member_premium')) }} - {{ Form::text('member_premium', null, ['class' => 'form-control compulsory', 'required']) }} -
    - - @if( Auth::user()->can('register-chi-members-with-pre-existing-premiums')) -
    - {{ Form::label('does_member_have_existing_premium',__('insurance_members.does_member_have_existing_premium')) }} -
    - {{ Form::radio('does_member_have_existing_premium', 1, false, ["required",'onclick'=>'displayPremiumActiveDateDiv(1)']) }} {{ __('insurance_members.yes') }}    - {{ Form::radio('does_member_have_existing_premium', 0, false, ["required",'onclick'=>'displayPremiumActiveDateDiv(0)']) }} {{ __('insurance_members.no') }} -
    - - - @endif -
    -
    -
    - {{ Form::label('title', __('insurance.title')) }} - {{ Form::select('title', $person_titles, null, ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('photo',__('insurance_members.photo')) }} - {{ Form::file('photo',['class' => 'form-control']) }} -
    - -
    - {{ Form::label('membership_start_date', __('insurance.membership_start_date')) }} -
    - {{ Form::text('membership_start_date','',['class' => 'form-control','readonly','id'=>'membership_start_date']) }} - -
    -
    -
    - -
    - {{ Form::label('membership_registration_date', __('insurance.membership_registration_date')) }} -
    - {{ Form::text('membership_registration_date','',['class' => 'form-control','readonly','id'=>'membership_registration_date']) }} - -
    -
    -
    - -
    - {{ Form::label('social_security_number', __('insurance.social_security_number')) }} - {{ Form::text('social_security_number', null, ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('research_id', __('insurance.research_id')) }} - {{ Form::text('research_id', null, ['class' => 'form-control']) }} - @if (!empty($errors->get('research_id'))) -
    - @foreach ($errors->get('research_id') as $message) - {{ $message }} - @endforeach -
    - @endif -
    - -
    - {{ Form::label('next_anniversary_date', __('insurance.next_anniversary_date_bracket_moved_with_rollover')) }} -
    - {{ Form::text('next_anniversary_date','',['class' => 'form-control','readonly','id'=>'next_anniversary_date']) }} - -
    -
    -
    - - {{ Form::button(__('insurance_members.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('insurance_members.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} -
    -
    - - {{ Form::close() }} -
    -
    -@endsection - -@push('scripts') - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_members/create.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_members/create.blade.php deleted file mode 100755 index 8fbd166a..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_members/create.blade.php +++ /dev/null @@ -1,1346 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_members.create_insurance_member') }}

    -
    - -
    - - @include('flash::message') - - @include('insurance::insurance_members.menu') - -
    -
    -
    - - {{ Form::open(['route' => 'insurance_members.store','method'=>'POST','enctype'=>'multipart/form-data','data-toggle'=>'validator','autocomplete'=>'off']) }} - -
    -
    -
    -
    -
    - {{ Form::label('first_name',__('insurance_members.first_name')) }} - {{ Form::text('first_name','',['class' => 'form-control compulsory', 'required', 'data-error'=>'','placeholder'=>'Christian name eg Fred', 'id' => 'first_name']) }} -
    -
    - -
    - {{ Form::label('last_name',__('insurance_members.last_name')) }} - {{ Form::text('last_name','',['class' => 'form-control compulsory', 'required','placeholder'=>'Surname eg Asiimwe', 'id' => 'last_name']) }} -
    -
    - - - -
    - {{ Form::label('gender',__('insurance_members.gender')) }} -
    - {{ Form::radio('gender', 1, false, ["required"]) }} {{ __('insurance_members.male') }}    - {{ Form::radio('gender', 2, false, ["required"]) }} {{ __('insurance_members.female') }} -
    -
    - -
    - {{ Form::label('national_id',__('insurance_members.national_id_number')) }} - {{ Form::text('national_id','',['class' => 'form-control','maxlength'=>15]) }} -
    - -
    - {{ Form::label('date_of_birth',__('insurance_members.date_of_birth')) }} -
    - {{ Form::text('date_of_birth','',['class' => 'form-control compulsory','readonly','id'=>'date_of_birth']) }} - -
    - @if (!empty($errors->get('date_of_birth'))) -
    - @foreach ($errors->get('date_of_birth') as $message) - {{ $message }} - @endforeach -
    - @endif -
    - -
    -
    -
    - {{ Form::label('age',__('insurance_members.years')) }} - {{ Form::number('age_in_years','',['class' => 'form-control compulsory','id'=>'age_in_years','min'=>'0']) }} - @if (!empty($errors->get('age_in_years'))) -
    - @foreach ($errors->get('age_in_years') as $message) - {{ $message }} - @endforeach -
    - @endif -
    -
    -
    -
    - {{ Form::label('age',__('insurance_members.months')) }} - {{ Form::number('age_in_months','',['class' => 'form-control','id'=>'age_in_months','readonly','min'=>'0']) }} -
    -
    -
    - -
    - {{ Form::label('marital_status',__('insurance_members.marital_status')) }} -
    - @foreach($marital_statuses as $key=>$value) - {{ Form::radio('marital_status', $key,false,['required']) }} {{ $value }}    - @endforeach -
    -
    - -
    - {{ Form::label('religion',__('insurance_members.religion')) }} - {{ Form::select('religion',$religions,'',['class' => 'form-control compulsory','required']) }} -
    -
    -
    - -
    - -
    - {{ Form::label('occupation',__('insurance_members.occupation')) }} - {{ Form::select('occupation',$occupations,'',['class' => 'form-control compulsory occupation', 'required']) }} - {{ __('insurance_members.add_new_occupation') }} -
    -
    - -
    - {{ Form::label('next_of_kin',__('insurance_members.next_of_kin')) }} - {{ Form::text('next_of_kin','',['class' => 'form-control', 'onchange' => "show('kin_div')"]) }} -
    - - - -
    - {{ Form::label('phone',__('insurance_members.phone_number')) }} - {{ Form::text('phone','',['class' => 'form-control', 'id' => 'phone']) }} - (07xx) 123-456 -
    - - - -
    - {{ Form::label('phone_owner',__('insurance_members.phone_owner')) }} -
    - {{ Form::radio('phone_owner','self',false,['id'=>'owned',"required"]) }} {{ __('insurance_members.self') }}    - {{ Form::radio('phone_owner','other',false,['id'=>'non_owned',"required"]) }} {{ __('insurance_members.other') }} -
    -
    - - - -
    - {{ Form::label('lc_one', __('insurance_members.name_of_lc1_chairman')) }} - {{ Form::text('lc_one','',['class' => 'form-control compulsory', 'data-error'=>'LC 1 chairman\'s name']) }} -
    -
    - -
    - {{ Form::label('contact',__('insurance_members.any_hospital_contact')) }} -
    - {{ Form::radio('contact','yes',false,['id'=>'h_contact_yes','required']) }} {{ __('insurance_members.yes') }}    - {{ Form::radio('contact','no',false,['id'=>'h_contact_no','required']) }} {{ __('insurance_members.no') }} -
    -
    - - - - - -
    - {{ Form::label('patient_category',__('insurance_members.patient_category'))}} - {{ Form::select('patient_category',$patient_categories,'5',['class' => 'form-control compulsory', 'required', 'data-error'=>'']) }} -
    -
    - -
    - -
    - -
    - {{ Form::label('language',__('insurance_members.preferred_language')) }} - {{ Form::select('language',['vern'=>'Vernacular','eng'=>'English',],'vern',['class' => 'form-control compulsory', 'required', 'data-error'=>'Select the language']) }} -
    -
    - -
    - {{ Form::label('citizenship',__('patients.citizenship')) }} - {{ Form::select('citizenship',['1'=>'Ugandan','0'=>'Non Ugandan'],'',['class' => 'form-control compulsory', 'required', 'data-error'=>'Select the language','id' => 'citizenship']) }} -
    -
    - - - -
    -
    -
    - {{ Form::label('residence','Residence') }} - -
    - {{ __('patients.add_new_residence') }} -
    -
    -
    - - @if(is_fingerprint_enabled()) -
    - {{ Form::label('fingerprint_template',__('patients.patient_fingerprint')) }} - -
    - -
    - - {{ Form::hidden('fingerprint_template', '', ['id' => 'fingerprint_template']) }} - - - -

    -
    - @endif - - {{--
    - {{ Form::label('district_id',__('insurance_members.district')) }} - {{ Form::select('district_id',$districts,'',['class' => 'form-control compulsory district', 'required', 'data-error'=>'']) }} - {{ __('insurance_members.add_new_district') }} -
    -
    - -
    - - - {{ __('insurance_members.add_new_county') }} -
    -
    - -
    - - - {{ __('insurance_members.add_new_subcounty') }} -
    -
    - -
    - - - {{ __('insurance_members.add_new_parish') }} -
    -
    - -
    - - - {{ __('insurance_members.add_new_village') }} -
    -
    --}} -
    -
    -
    -
    - -
    -
    -
    - {{ Form::label('duplicate_research_id', __('insurance.research_id')) }} - {{ Form::text('duplicate_research_id', null, ['class' => 'form-control']) }} - @if (!empty($errors->get('duplicate_research_id'))) -
    - @foreach ($errors->get('duplicate_research_id') as $message) - {{ $message }} - @endforeach -
    - @endif -
    - -
    - {{ Form::label('is_family_head',__('insurance_members.is_member_head_of_family')) }} -
    - {{ Form::radio('is_family_head', 1, false, ["required",'onclick'=>'displayFamilies(1)']) }} {{ __('insurance_members.yes') }}    - {{ Form::radio('is_family_head', 0, false, ["required",'onclick'=>'displayFamilies(0)']) }} {{ __('insurance_members.no') }} -
    - - - - - -
    - {{ Form::label('relationship_to_head', __('insurance_members.relationship_to_head')) }} - {{ Form::select('relationship_to_head', $relations, 1, ['class' => 'form-control compulsory']) }} -
    - -
    - {{ Form::label('group_id', __('insurance_members.insurance_group')) }} - {{ Form::select('group_id', $insurance_groups, null, ['class' => 'form-control compulsory', 'required', 'id' => 'group_id']) }} -
    - -
    - {{ Form::label('chi_plan', __('insurance.chi_plan')) }} - {{ Form::select('chi_plan', $chi_plans, null, ['class' => 'form-control compulsory', 'required', 'id' => 'chi_plan']) }} -
    - - {{--
    - {{ Form::label('other_plan', __('insurance.other_plan')) }} - {{ Form::select('other_plan', $chi_plans, null, ['class' => 'form-control']) }} -
    --}} - -
    - {{ Form::label('risk_id',__('insurance.risk')) }} - {{ Form::select('risk_id[]', $chi_risks, '',['class' => 'form-control compulsory risk_id', 'data-error'=>'Select the risk', 'required', 'multiple']) }} -
    -
    - -
    - {{ Form::label('member_premium', __('insurance.member_premium')) }} - {{ Form::number('member_premium', null, ['class' => 'form-control compulsory', 'required']) }} -
    - - @if( Auth::user()->can('register-chi-members-with-pre-existing-premiums')) -
    - {{ Form::label('does_member_have_existing_premium',__('insurance_members.does_member_have_existing_premium')) }} -
    - {{ Form::radio('does_member_have_existing_premium', 1, false, ["required",'onclick'=>'displayPremiumActiveDateDiv(1)']) }} {{ __('insurance_members.yes') }}    - {{ Form::radio('does_member_have_existing_premium', 0, false, ["required",'onclick'=>'displayPremiumActiveDateDiv(0)']) }} {{ __('insurance_members.no') }} -
    - - - @endif -
    -
    -
    - {{ Form::label('title', __('insurance.title')) }} - {{ Form::select('title', $person_titles, null, ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('photo',__('insurance_members.photo')) }} - {{ Form::file('photo',['class' => 'form-control']) }} -
    - -
    - {{ Form::label('membership_start_date', __('insurance.membership_start_date')) }} -
    - {{ Form::text('membership_start_date','',['class' => 'form-control','readonly','id'=>'membership_start_date']) }} - -
    -
    -
    - -
    - {{ Form::label('membership_registration_date', __('insurance.membership_registration_date')) }} -
    - {{ Form::text('membership_registration_date','',['class' => 'form-control','readonly','id'=>'membership_registration_date']) }} - -
    -
    -
    - -
    - {{ Form::label('social_security_number', __('insurance.social_security_number')) }} - {{ Form::text('social_security_number', null, ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('research_id', __('insurance.research_id')) }} - {{ Form::text('research_id', null, ['class' => 'form-control']) }} - @if (!empty($errors->get('research_id'))) -
    - @foreach ($errors->get('research_id') as $message) - {{ $message }} - @endforeach -
    - @endif -
    - -
    - {{ Form::label('next_anniversary_date', __('insurance.next_anniversary_date_bracket_moved_with_rollover')) }} -
    - {{ Form::text('next_anniversary_date','',['class' => 'form-control','readonly','id'=>'next_anniversary_date']) }} - -
    -
    -
    - - {{ Form::button(__('insurance_members.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('insurance_members.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} -
    -
    -
    -
    - - {{ Form::close() }} -
    -
    -
    -@endsection - - - - - - - - - - - - - - - - - - - - - -@push('scripts') - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_members/details.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_members/details.blade.php deleted file mode 100755 index 8a4b3c3c..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_members/details.blade.php +++ /dev/null @@ -1,102 +0,0 @@ -@extends('layouts.main') - -@section('content') - -
    -
    -

    {{ __('insurance_members.insurance_member_details') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -@include('insurance::insurance_members.menu') - -
    -
    -
    -
    -

    {{ __('insurance_members.member_details_bio') }}

    - - - - - - - - - - - - - - - @if (!empty($research_id)) - - - - - @endif -
    {{ __('insurance_members.patient_number') }}{{ $patient_number }}
    {{ __('insurance_members.full_names') }}{!! insurance_flag($patient_id) !!}
    {{ __('insurance_members.relationship_to_head_of_family') }}{{ $patient_relationship }}
    {{ __('insurance_members.research_id') }}{{ $research_id }}
    - -
    - -

    {{ __('insurance_members.head_of_family_details') }}

    - - - - - -
    {{ __('insurance_members.full_names') }}{{ title_case($head_of_family) }}
    - -
    - -

    {{ __('insurance_members.group_details') }}

    - - - - - - - - - - - - - - - - - -
    {{ __('insurance_members.group_name') }}{{ $group_name }}
    {{ __('insurance_members.start_of_insurance') }}{{ streamline_date($start_date) }}
    {{ __('insurance_members.end_of_insurance') }}{{ streamline_date($end_date) }}
    {{ __('insurance_members.insurance_status') }} - @if (date('Y-m-d') < $end_date) - {{ __('insurance_members.active') }} - @else - {{ __('insurance_members.inactive') }} - @endif -
    -
    -
    -
    -

    {{ __('insurance_members.member_picture') }}

    - -
    -
    -
    -

    {{ __('insurance_members.head_of_family_picture') }}

    - -
    -
    -
    -
    -
    - -@endsection \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_members/edit.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_members/edit.blade.php deleted file mode 100755 index 16876bc6..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_members/edit.blade.php +++ /dev/null @@ -1,235 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_members.edit_insurance_details_for') }} ({!! insurance_flag($insurance_member->patient_id) !!})

    -
    - -
    - - @include('flash::message') - - @include('insurance::insurance_members.menu') - - {{ Form::model($insurance_member, ['method' => 'PUT', 'route' => ['insurance_members.update',$insurance_member], 'files' => 'required']) }} - -
    -
    -
    -
    - {{ Form::label('duplicate_research_id', __('insurance.research_id')) }} - {{ Form::text('duplicate_research_id', $insurance_member->research_id, ['class' => 'form-control']) }} - @if (!empty($errors->get('duplicate_research_id'))) -
    - @foreach ($errors->get('duplicate_research_id') as $message) - {{ $message }} - @endforeach -
    - @endif -
    - -
    - {{ Form::label('is_family_head',__('insurance_members.is_member_head_of_family')) }} -
    - {{ Form::radio('is_family_head', 1, $insurance_member->is_family_head == 1, ["required",'onclick'=>'displayFamilies(1)']) }} Yes    - {{ Form::radio('is_family_head', 0, $insurance_member->is_family_head == 0, ["required",'onclick'=>'displayFamilies(0)']) }} No -
    - -
    is_family_head == 1) style="display: none" @endif> - {{ Form::label('family_id', __('insurance_members.select_family')) }} - {{ Form::select('family_id', $families, $insurance_member->family_id, ['class' => 'form-control compulsory family_id']) }} -
    - -
    - {{ Form::label('relationship_to_head', __('insurance_members.relationship_to_head')) }} - {{ Form::select('relationship_to_head', $relations, $insurance_member->relationship_to_head, ['class' => 'form-control compulsory']) }} -
    - -
    - {{ Form::label('group_id', __('insurance_members.insurance_group')) }} - {{ Form::select('group_id', $insurance_groups, $insurance_member->group_id, ['class' => 'form-control compulsory', 'required', 'id' => 'group_id']) }} -
    - -
    - {{ Form::label('chi_plan', __('insurance.chi_plan')) }} - {{ Form::select('chi_plan', $chi_plans, $insurance_member->chi_plan, ['class' => 'form-control compulsory', 'required', 'id' => 'chi_plan']) }} -
    - - {{--
    - {{ Form::label('other_plan', __('insurance.other_plan')) }} - {{ Form::select('other_plan', $chi_plans, $insurance_member->other_plan, ['class' => 'form-control']) }} -
    --}} - -
    - {{ Form::label('risk_id',__('insurance.risk')) }} - @php - $risk_ids_array = is_null($insurance_member->risk_ids) ? [] : explode(",", $insurance_member->risk_ids); - @endphp - {{ Form::select('risk_id[]', $chi_risks, $risk_ids_array,['class' => 'form-control compulsory risk_id', 'data-error'=>'Select the risk', 'required', 'multiple']) }} -
    -
    - -
    - {{ Form::label('member_premium', __('insurance.member_premium')) }} - {{ Form::text('member_premium', $insurance_member->premium, ['class' => 'form-control compulsory', 'required']) }} -
    - - @if( Auth::user()->can('register-chi-members-with-pre-existing-premiums')) -
    - {{ Form::label('does_member_have_existing_premium',__('insurance_members.does_member_have_existing_premium')) }} -
    - {{ Form::radio('does_member_have_existing_premium', 1, false, ["required",'onclick'=>'displayPremiumActiveDateDiv(1)']) }} {{ __('insurance_members.yes') }}    - {{ Form::radio('does_member_have_existing_premium', 0, true, ["required",'onclick'=>'displayPremiumActiveDateDiv(0)']) }} {{ __('insurance_members.no') }} -
    - - - @endif -
    -
    -
    - {{ Form::label('title', __('insurance.title')) }} - {{ Form::select('title', $person_titles, $insurance_member->title, ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('photo',__('insurance_members.photo')) }} - {{ Form::file('photo',['class' => 'form-control']) }} -
    - -
    - {{ Form::label('membership_start_date', __('insurance.membership_start_date')) }} -
    - {{ Form::text('membership_start_date',$insurance_member->membership_start_date,['class' => 'form-control','readonly','id'=>'membership_start_date']) }} - -
    -
    -
    - -
    - {{ Form::label('membership_registration_date', __('insurance.membership_registration_date')) }} -
    - {{ Form::text('membership_registration_date',$insurance_member->membership_registration_date,['class' => 'form-control','readonly','id'=>'membership_registration_date']) }} - -
    -
    -
    - -
    - {{ Form::label('social_security_number', __('insurance.social_security_number')) }} - {{ Form::text('social_security_number', $insurance_member->social_security_number, ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('research_id', __('insurance.research_id')) }} - {{ Form::text('research_id', $insurance_member->research_id, ['class' => 'form-control']) }} - @if (!empty($errors->get('research_id'))) -
    - @foreach ($errors->get('research_id') as $message) - {{ $message }} - @endforeach -
    - @endif -
    - -
    - {{ Form::label('next_anniversary_date', __('insurance.next_anniversary_date_bracket_moved_with_rollover')) }} -
    - {{ Form::text('next_anniversary_date', $insurance_member->next_anniversary_date,['class' => 'form-control','readonly','id'=>'next_anniversary_date']) }} - -
    -
    -
    -
    -
    - - {{ Form::button(__('insurance_members.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('insurance_members.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} -
    - - {{ Form::close() }} -@endsection - -@push('scripts') - - - - -@endpush diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_members/inactive.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_members/inactive.blade.php deleted file mode 100755 index f432d24c..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_members/inactive.blade.php +++ /dev/null @@ -1,164 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_members.inactive_insurance_members') }}

    -
    - -
    - - @include('flash::message') - - @include('insurance::insurance_members.menu') - -
    -
    - {{ Form::open(['route' => 'insurance_members.search_inactive', 'method' => 'ANY', 'role' => 'search']) }} - -
    -
    -
    -
    - {{ Form::text('full_name', '', ['class' => 'form-control typeahead', 'placeholder' => 'Patient Name', 'autocomplete' => 'off', 'spellcheck' => false]) }} -
    -
    -
    -
    -
    - {{ Form::select('group_id',$insurance_groups_select,'',['class' => 'form-control', 'id' => 'insurance_groups']) }} -
    -
    -
    -
    - -
    -
    - @if(isset($criteria)) -

    {{ __('insurance_members.search_criteria') }} : {{ $criteria }}    {{ __('insurance_members.clear_search') }}

    - @endif -
    -
    - -
    -
    - {{ Form::close() }} - -
    - -

    {{ __('insurance_members.export_data_to_csv_and_excel') }}

    -
    - - - - - - - - - - - - - - @foreach($insurance_members as $insurance_member) - - - - - - - - - - @endforeach - - -
    {{ __('insurance_members.patient_number') }}{{ __('insurance_members.name') }}{{ __('insurance_members.group_name') }}{{ __('insurance_members.family') }}{{ __('insurance_members.relationship_to_head') }}{{ __('insurance_members.patient_category') }}{{ __('insurance_members.action') }}
    {{ $insurance_member->number }}{!! insurance_flag($insurance_member->patient_id) !!}{{ isset($insurance_groups[$insurance_member->group_id]) ? $insurance_groups[$insurance_member->group_id] : 'N/A' }}{{ isset($insurance_family[$insurance_member->family_id]) ? $insurance_family[$insurance_member->family_id] : 'N/A' }}{{ isset($relations[$insurance_member->relationship_to_head]) ? $relations[$insurance_member->relationship_to_head] : 'N/A' }}{{ isset($patient_categories[$insurance_member->category_id]) ? $patient_categories[$insurance_member->category_id] : 'N/A' }} - {{ Form::model($insurance_member->id ,['method' => 'POST', 'route' => ['insurance_members.activate', $insurance_member->id]]) }} - - {{ Form::close() }} -
    - {{ $insurance_members->links() }} -
    -
    -
    - -@endsection - - -@push('scripts') - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_members/index.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_members/index.blade.php deleted file mode 100755 index 665987d2..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_members/index.blade.php +++ /dev/null @@ -1,237 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_members.insurance_members') }}

    -
    - -
    - - @include('flash::message') - - @include('insurance::insurance_members.menu') - -
    -
    -
    -
    - - - - - - - - - - - - - -
    {{ __('insurance_members.currently_registered_members') }}{{ $total_registered }}
    {{ __('insurance_members.members_with_active_insurance') }}{{ $total_active_insurance }}
    {{ __('insurance_members.members_with_expired_insurance') }}{{ $total_inactive_insurance }}
    -
    - -
    - {{ Form::open(['route' => 'insurance_members.search', 'method' => 'ANY', 'role' => 'search']) }} - -
    -
    -
    - {{ Form::text('full_name', '', ['class' => 'form-control typeahead', 'placeholder' => 'Patient Name', 'autocomplete' => 'off', 'spellcheck' => false]) }} -
    -
    -
    -
    - {{ Form::select('group_id',$insurance_groups_select,'',['class' => 'form-control', 'id' => 'insurance_groups']) }} -
    -
    -
    -
    - {{ Form::select('member_type',[0 => 'All Members', 1 => __('insurance_members.members_with_active_insurance'), 2 => __('insurance_members.members_with_expired_insurance')],0,['class' => 'form-control']) }} -
    -
    -
    - -
    -
    - @if(isset($criteria)) -

    {{ __('insurance_members.search_criteria') }} : {{ $criteria }}    {{ __('insurance_members.clear_search') }}

    - @endif -
    -
    - -
    -
    - {{ Form::close() }} -
    -
    - -
    - -
    - - - - - - - - - - - - - - - - - - @foreach($insurance_members as $insurance_member) - - - - - - - - - - - - - - @endforeach - -
    {{ __('insurance_members.patient_number') }}{{ __('insurance_members.name') }}{{ __('insurance.premium') }}{{ __('insurance.plan') }}{{ __('insurance_members.group_name') }}{{ __('insurance_members.family') }}{{ __('insurance_members.relationship_to_head') }}{{ __('insurance_members.patient_category') }}
    {{ $insurance_member->number }}{!! insurance_flag($insurance_member->patient_id) !!}{{ ugandan_shillings($insurance_member->premium) }}{{ $plans[$insurance_member->chi_plan] ?? 'N/A' }}{{ $insurance_groups[$insurance_member->group_id] ?? 'N/A' }}{{ $insurance_family[$insurance_member->family_id] ?? 'N/A' }}{{ $relations[$insurance_member->relationship_to_head] ?? 'N/A' }}{{ $patient_categories[$insurance_member->category_id] ?? 'N/A' }} - {{ __('insurance_members.edit') }} - - {{ Form::model($insurance_member->id ,['method' => 'DELETE', 'route' => ['insurance_members.destroy', $insurance_member->id]]) }} - - {{ Form::close() }} - - {{ __('insurance_members.details') }} -
    -
    -
    -
    - -@endsection - - -@push('scripts') - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_members/insurance_card_print_index.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_members/insurance_card_print_index.blade.php deleted file mode 100644 index 520cae41..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_members/insurance_card_print_index.blade.php +++ /dev/null @@ -1,166 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_members.insurance_members') }}

    -
    - -
    - - @include('flash::message') - - @include('insurance::insurance_members.menu') - -
    -
    - {{ Form::open(['route' => 'insurance_members.search', 'method' => 'ANY', 'role' => 'search']) }} - - {{ Form::hidden('patient_id', 0, ['id' => 'patient_id']) }} - {{ Form::hidden('is_from_card_print', 1) }} - -
    -
    -
    - -
    -
    -
    -
    - {{ Form::select('group_id',$insurance_groups_select,'',['class' => 'form-control', 'id' => 'insurance_groups']) }} -
    -
    -
    -
    - {{ Form::select('insurance_family', $insurance_family_select, '', ['class' => 'form-control', 'id' => 'insurance_family']) }} -
    -
    -
    - -
    -
    - @if(isset($criteria)) -

    {{ __('insurance_members.search_criteria') }} : {{ $criteria }}    {{ __('insurance_members.clear_search') }}

    - @endif -
    -
    - -
    -
    - {{ Form::close() }} - -
    - - {{ Form::open(['method' => 'POST', 'route' => 'print_insurance_cards', 'target' => "_blank", 'id' =>'print_form']) }} - -
    - - - - - - - - - - - - - - - - @foreach($insurance_members as $insurance_member) - - - - - - - - - - - - @endforeach - -
    #{{ __('insurance_members.patient_number') }}{{ __('insurance_members.name') }}{{ __('insurance.premium') }}{{ __('insurance_members.group_name') }}{{ __('insurance_members.family') }}{{ __('insurance_members.relationship_to_head') }}{{ __('insurance_members.patient_category') }}{{ __('insurance.plan') }}
    {{ $insurance_member->number }}{!! insurance_flag($insurance_member->patient_id) !!}{{ ugandan_shillings($insurance_member->premium) }}{{ $insurance_groups[$insurance_member->group_id] ?? 'N/A' }}{{ $insurance_family[$insurance_member->family_id] ?? 'N/A' }}{{ $relations[$insurance_member->relationship_to_head] ?? 'N/A' }}{{ $patient_categories[$insurance_member->category_id] ?? 'N/A' }}{{ $plans[$insurance_member->chi_plan] ?? 'N/A' }}
    -
    - - {{ Form::submit('Print Selected Cards', ['class' => 'btn btn-rounded btn-success', 'id' => 'print_cards']) }} - - {{ Form::close() }} - -
    -
    - -@endsection - - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_members/membership_card.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_members/membership_card.blade.php deleted file mode 100644 index d029196c..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_members/membership_card.blade.php +++ /dev/null @@ -1,150 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'CHI Membership Card - Stre@mline') }} - - - - - - - -
    -
    -
    - -
    -
    - HEALTH CARE
    ACCESS CARD -
    -
    -
    -
    - - - - - - - - - - - - - - - -
    NAME: {{ strtoupper(get_full_name($insurance_member->patient_id, "id", "first_name", "last_name", "patients")) }}
    STRE@MLINE NUMBER: {{ $insurance_member->number }}
    D.O.B: {{ date('d/m/Y', strtotime($insurance_member->date_of_birth)) }}   GENDER: {{ ($insurance_member->gender == 1) ? "M" : "F" }}NIN:{{ $insurance_member->national_id }}
    SIGNATURE:
    -
    -
    -
    -
    -
    - -
    -
    -
    - -


    - -
    - - - - {{-- --}} - - - - - - - - - - - - - - - - - - - -
    GROUP NAME: - {{-- I excel in all things, at all times, with all people, under every circumstance. He that is in me is greater than he who is in the world. --}} - - {{ get_name($insurance_member->group_id, "id", "name", "insurance_groups") }} - {{ get_name($insurance_member->group_id, "id", "name", "insurance_groups") }}
    HOST HEALTH FACILITY: {{ $hospitalInfo->name }}
    - DISTRICT: {{ ucwords(get_name($insurance_member->district_id, "id", "name", "districts")) }} -   - VILLAGE: {{ ucwords(get_name($insurance_member->village_id, "id", "name", "villages")) }} -
    - {{ getDNS1DBarcodePNGOtherOption(sprintf("%04u", $insurance_member->patient_id)) }} -

    This card should only be used for identification at a Stre@mline network hospital.

    - -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_members/menu.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_members/menu.blade.php deleted file mode 100755 index e4fd6c0b..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_members/menu.blade.php +++ /dev/null @@ -1,8 +0,0 @@ -
    - -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_members/pre_existing_premiums_report.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_members/pre_existing_premiums_report.blade.php deleted file mode 100644 index 36b25840..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_members/pre_existing_premiums_report.blade.php +++ /dev/null @@ -1,130 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance.members_with_pre_existing_premiums') }}

    -
    -
    - -
    -
    - - @include('flash::message') - @include('errors.list') - -
    -
    -
    - - {{ Form::open(['route' => 'insurance_members.pre_existing_premiums_report']) }} - -
    - {{ Form::label('start_date', __('insurance_reports.start_date')) }} -
    - {{ Form::text('start_date', '', ['class'=>'form-control', 'readonly', 'id'=>'start_date']) }} - -
    -
    - -
    - {{ Form::label('end_date', __('insurance_reports.end_date')) }} -
    - {{ Form::text('end_date', '', ['class'=>'form-control', 'readonly', 'id'=>'end_date']) }} - -
    -
    - -
    - {{ Form::submit(__('insurance_reports.submit'), ['class'=>'btn btn-success pull-right']) }} -
    - - {{ Form::close() }} - -
    -
    -
    -
    -
    -

    -

    Report of members with cover cover whose premiums was not received through Stre@mline

    -

    -
    - - - - - - - - - - - - - - @php $counter = 1 @endphp - @foreach($pre_insurance_members as $member) - - - - - - - - - - @php $counter++ @endphp - @endforeach - -
    #{{ __('insurance_members.name') }}{{ __('insurance_members.premium_amount') }}{{ __('insurance_reports.start_date') }}{{ __('insurance_reports.end_date') }}{{ __('insurance_members.created_at') }}{{ __('insurance_members.created_by') }}
    {{ $counter }}{{ get_full_name($member->patient_id,"id", "first_name", "last_name", "patients") }} ({{get_name($member->patient_id,"id", "number", "patients")}}){{ ugandan_shillings($member->premium) }}{{ streamline_date($member->existing_premium_start_date) }}{{ streamline_date($member->existing_premium_end_date) }}{{ streamline_date($member->created_at) }}{{ get_full_name($member->created_by, "id", "first_name", "last_name", "users") }}
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_members/print_membership_cards.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_members/print_membership_cards.blade.php deleted file mode 100644 index 0f93ea22..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_members/print_membership_cards.blade.php +++ /dev/null @@ -1,163 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'CHI Membership Card - Stre@mline') }} - - - - - - - - @php $count = 1; @endphp - @foreach ($insurance_members as $insurance_member) -
    -
    -
    -
    -
    -
    - Stre@mine Logo -
    -
    - HEALTH CARE
    ACCESS CARD -
    -
    -
    - - - - - - - - - - - - - - - - @if (str_contains($insurance_member->category_name, 'CO-PAYMENT')) - @php - $words = explode(' ', $insurance_member->category_name); - $last = array_slice($words,4); - @endphp - @if ($words[2] == '0') - - @else - - @endif - @else - - @endif - - - - -
    NAME: {{ strtoupper(get_full_name($insurance_member->patient_id, "id", "first_name", "last_name", "patients")) }}
    STRE@MLINE NUMBER: {{ $insurance_member->number }}
    D.O.B: {{ date('d-M-Y', strtotime($insurance_member->date_of_birth)) }}   GENDER: {{ ($insurance_member->gender == 1) ? "M" : "F" }}
    NIN: {{ $insurance_member->national_id }}
    OUTPATIENT CO-PAYMENT: {{ $words[2].' '.$words[3] }}
    {{ implode(' ', $last) }}, 5000 UGX after 10 visits.
    OUTPATIENT CO-PAYMENT: {{ $words[2].' '.$words[3] }}
    {{ implode(' ', $last) }}
    Category: {{ $insurance_member->category_name }}
    - -
    -
    -
    -
    - -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    GROUP NAME: - {{ get_name($insurance_member->group_id, "id", "name", "insurance_groups") }} -
    HOST HEALTH FACILITY: {{ $hospitalInfo->name }}
    - DISTRICT: {{ ucwords(get_name($insurance_member->district_id, "id", "name", - "districts")) }} -   - VILLAGE: {{ ucwords(get_name($insurance_member->village_id, "id", "name", - "villages")) }} -
    -
    - {{ insuranceCardBarcode(sprintf("%04u", $insurance_member->patient_id)) }} -
    -
    -

    This card should only be used for identification at a Stre@mline - network hospital.

    -
    - Stre@mine Logo -
    -
    -
    -
    -
    - - @if($count != count($insurance_members)) -
    - @endif - @php $count++; @endphp - @endforeach - - - \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/add_new_family_member_modal.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/add_new_family_member_modal.blade.php deleted file mode 100755 index 1d1c1a38..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/add_new_family_member_modal.blade.php +++ /dev/null @@ -1,204 +0,0 @@ - \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/cancel_insurance_premiums.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/cancel_insurance_premiums.blade.php deleted file mode 100644 index 61ff8247..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/cancel_insurance_premiums.blade.php +++ /dev/null @@ -1,310 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance.cancel_insurance_premiums') }}

    -
    - -
    - - @include('flash::message') - - @include('insurance::insurance_members.menu') - -
    -
    - -
    -
    - {{ Form::open(['method'=>'post','route' => 'insurance_premiums.cancel_insurance_premiums']) }} -
    -
    -
    - - {{ Form::select('search_option', ['members' => 'Members', 'families' => 'Families'], null, ['class' => 'form-control compulsory required']) }} -
    -
    - -
    -
    - - -
    -
    - -
    - -
    - -
    - -
    - -
    -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success btn-rounded btn-block pull-right']) }} -
    -
    -
    - {{ Form::close() }} -
    -
    - -
    - @if(isset($display)) -

    {!! isset($display) ? $display : '' !!}

    - @endif - -
    - - - - - - - - - - - - - - - - - - @php - $counter = 0; - @endphp - @if (count($premiums) > 0) - @foreach($premiums as $premium_record) - @php - $family_heads_array = explode(",",$premium_record->family_heads); - $family_amounts_array = explode(",",$premium_record->family_amount); - $covered_member_ids = explode(",",$premium_record->covered_member_ids); - $insurance_paid_premiums = explode(",",$premium_record->covered_member_premiums_paid); - @endphp - - @if ($search_option == "families") - @for ($i = 0; $i < count($family_heads_array); $i++) - @php - $this_family_members = \Streamline\Models\InsuranceMember::where('family_id', $family_heads_array)->get(); - - $this_family_total_premium = 0; $covered_family_members = []; - - if (count($this_family_members) > 0) { - foreach ($this_family_members as $fam_member) { - if (in_array($fam_member->id, $covered_member_ids)) { - $member_key = array_search($fam_member->id, $covered_member_ids); - $this_family_total_premium += $insurance_paid_premiums[$member_key]; - - $covered_family_members[] = $fam_member->id; - } - } - } - $counter++; - @endphp - - - - - - - - - - - - - - @endfor - @else - @for ($i = 0; $i < count($covered_member_ids); $i++) - @php - $insurance_member = \Streamline\Models\InsuranceMember::withTrashed()->find($covered_member_ids[$i]); - $counter++; - - if (!$insurance_member) { - continue; - } - @endphp - - - - - - - - - - - - - - @endfor - @endif - @endforeach - @endif - -
    #{{ __('insurance_members.name') }}{{ __('insurance.premium') }}{{ __('insurance_members.group_name') }}@if($search_option == "families") {{ __('insurance.family_members') }} @else {{ __('insurance_members.family') }} @endif{{ __('insurance_members.relationship_to_head') }}{{ __('insurance.start_date') }}{{ __('insurance.end_date') }}{{ __('insurance.plan') }}
    {{ $counter }}{!! insurance_flag(get_name($family_heads_array[$i], "id", "patient_id", "insurance_heads_of_family")) !!}( {{ get_name(get_name($family_heads_array[$i], "id", "patient_id", "insurance_heads_of_family"), "id", "number", "patients") }} ){{ ugandan_shillings($this_family_total_premium) }}{{ get_name(get_name($family_heads_array[$i], "id", "group_id", "insurance_heads_of_family"), "id", "name", "insurance_groups") }} - @for ($j = 0; $j < count($covered_family_members); $j++) - - {!! insurance_flag(get_name($covered_family_members[$j], "id", "patient_id", "insurance_members")) !!}
    - @endfor -
    {{ streamline_date($premium_record->start_date) }}{{ streamline_date($premium_record->end_date) }}{{-- {{ get_name($insurance_member->chi_plan, "id", "name", "community_health_insurance_plans") }} --}} - {{-- {{ __('insurance_members.details') }} --}} - - @if( Auth::user()->can('cancel-insurance-member-premiums')) - {{ __('insurance.cancel_premium') }} - @endif -
    {{ $counter }}{!! insurance_flag($insurance_member->patient_id) !!}( {{ get_name($insurance_member->patient_id, "id", "number", "patients") }} ){{ ugandan_shillings($insurance_member->premium) }}{{ isset($insurance_groups[$insurance_member->group_id]) ? $insurance_groups[$insurance_member->group_id] : 'N/A' }}{{ isset($insurance_family[$insurance_member->family_id]) ? $insurance_family[$insurance_member->family_id] : 'N/A' }}{{ isset($relations[$insurance_member->relationship_to_head]) ? $relations[$insurance_member->relationship_to_head] : 'N/A' }}{{ streamline_date($premium_record->start_date) }}{{ streamline_date($premium_record->end_date) }}{{ get_name($insurance_member->chi_plan, "id", "name", "community_health_insurance_plans") }} - {{ __('insurance_members.details') }} - - @if( Auth::user()->can('cancel-insurance-member-premiums')) - {{ __('insurance.cancel_premium') }} - @endif -
    - {{ $premiums->links() }} -
    -
    -
    - - -@endsection - - -@push('scripts') - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/create.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/create.blade.php deleted file mode 100755 index d0a235a4..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/create.blade.php +++ /dev/null @@ -1,438 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance.new_premium') }}

    -
    - -
    - -
    -
    - @include('insurance::insurance_premiums.menu') -
    -
    - - @include('flash::message') - - @include ('errors.list') - @php - $back_date = \Streamline\Models\HospitalInformation::first()->pluck('back_date'); - @endphp -
    - {{ Form::open(['route' => 'insurance_premiums.store','data-toggle'=>'validator']) }} - -
    -
    -
    - {{ Form::label('group_id', __('insurance.insurance_groups_lc')) }} - {{ Form::select('group_id', $insurance_groups, null, ['class' => 'form-control compulsory', 'required', 'id' => 'group_id']) }} -
    -
    - -
    - {{ Form::label('amount', __('insurance.amount')) }} - {{ Form::number('amount', '', ['class' => 'form-control compulsory', 'readonly', 'id' => 'amount']) }} -
    -
    - -
    - {{ Form::label('start_date', __('insurance.insurance_start_date')) }} -
    - {{ Form::text('start_date', '', ['class'=>'form-control compulsory', 'readonly', 'required', 'id'=>'start_date']) }} - -
    -
    -
    - -
    - {{ Form::label('end_date', __('insurance.insurance_end_date')) }} -
    - {{ Form::text('end_date', '', ['class'=>'form-control compulsory', 'readonly', 'required', 'id'=>'end_date']) }} - -
    -
    -
    - -
    - {{ Form::label('payment_date', __('insurance.payment_date')) }} -
    - {{ Form::text('payment_date', '', ['class'=>'form-control compulsory', 'readonly', 'required', 'id'=>'payment_date']) }} - -
    -
    -
    - - {{ __('insurance.proceed') }} - - - - {{ Form::hidden('is_submit_visible', 0, ['id' => 'is_submit_visible']) }} -
    -
    -
    -
    -
    - - {{ Form::close() }} -
    - - {{-- modal --}} - - - - - @include('insurance::insurance_premiums.add_new_family_member_modal') -@endsection - -@push('scripts') - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/edit.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/edit.blade.php deleted file mode 100644 index a84adc0a..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/edit.blade.php +++ /dev/null @@ -1,446 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance.new_premium') }}

    -
    -
    - -
    -
    - -
    -
    - @include('insurance::insurance_premiums.menu') -
    -
    - - @include('flash::message') - - @include ('errors.list') - @php - $back_date = \Streamline\Models\HospitalInformation::first()->pluck('back_date'); - @endphp -
    - {{ Form::open(['route' => 'insurance_premiums.store','data-toggle'=>'validator']) }} - -
    -
    -
    - {{ Form::label('group_id', __('insurance.insurance_groups_lc')) }} - {{ Form::select('group_id', $insurance_groups, $group_id, ['class' => 'form-control compulsory', 'required', 'id' => 'group_id']) }} -
    -
    - -
    - {{ Form::label('amount', __('insurance.amount')) }} - {{ Form::number('amount', '', ['class' => 'form-control compulsory', 'readonly', 'id' => 'amount']) }} -
    -
    - -
    - {{ Form::label('start_date', __('insurance.insurance_start_date')) }} -
    - {{ Form::text('start_date', '', ['class'=>'form-control compulsory', 'readonly', 'required', 'id'=>'start_date']) }} - -
    -
    -
    - -
    - {{ Form::label('end_date', __('insurance.insurance_end_date')) }} -
    - {{ Form::text('end_date', '', ['class'=>'form-control compulsory', 'readonly', 'required', 'id'=>'end_date']) }} - -
    -
    -
    - -
    - {{ Form::label('payment_date', __('insurance.payment_date')) }} -
    - {{ Form::text('payment_date', '', ['class'=>'form-control compulsory', 'readonly', 'required', 'id'=>'payment_date']) }} - -
    -
    -
    - - {{ __('insurance.proceed') }} - - -
    -
    -
    -
    -
    - - {{ Form::close() }} -
    - - {{-- modal --}} - - - - - @include('insurance::insurance_premiums.add_new_family_member_modal') -@endsection - -@push('scripts') - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/insurance_receipts.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/insurance_receipts.blade.php deleted file mode 100755 index a0235278..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/insurance_receipts.blade.php +++ /dev/null @@ -1,152 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance.income_received_from_premiums') }}

    -
    -
    - -
    -
    - -
    -
    - @include('insurance::insurance_premiums.menu') -
    -
    - -
    -
    - -
    - {{ Form::open(['route' => 'insurance_premiums.insurance_receipts']) }} - -
    - {{ Form::label('id', __('insurance.search_for_group_receipts')) }} - {{ Form::select('id', $insurance_groups, null, ['class' => 'form-control group_id']) }} -
    - - {{ Form::button(__('insurance.search'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - - {{ Form::close() }} - -
    -
    - - -
    - - - - - - - - - - - - - - @foreach($receipts as $receipt) - @php - $explodeFamilyId = explode(",", $receipt->family_heads); - $explodeFamilyAmount = explode(",", $receipt->family_amount); - $count = count($explodeFamilyId); - $explodeMemberId = explode(",", $receipt->covered_member_ids); - $explodeMemberAmount = explode(",", $receipt->covered_member_premiums_paid); - @endphp - - @for($i = 0; $i < count($explodeFamilyId); $i++) - @php - $record_members_array = is_null($receipt->covered_member_ids) ? [] : explode(",",$receipt->covered_member_ids); - $record_premiums_array = is_null($receipt->covered_member_premiums_paid) ? [] : explode(",",$receipt->covered_member_premiums_paid); - - $this_family_members_array = \Streamline\Models\InsuranceMember::where('family_id', $explodeFamilyId[$i])->pluck('id')->toArray(); - - $this_family_premiums = $this_family_members_number = 0; - for ($w=0; $w < count($record_members_array) ; $w++) { - if (in_array($record_members_array[$w], $this_family_members_array)) { - $this_family_premiums += $record_premiums_array[$w]; - $this_family_members_number++; - } - } - @endphp - - @if($i == 0) - - @endif - - - - - - - - @endfor - @endforeach - -
    {{ __('insurance.group_name') }}{{ __('insurance.family_name') }}{{ __('insurance.amount_paid') }}{{ __('insurance.start_date') }}{{ __('insurance.end_date') }}{{ __('insurance.received_by') }}{{ __('insurance.print_receipts') }}
    - {{ $insurance_groups[$receipt->group_id] }} -

    - {{ __('insurance.print_group_receipt') }} -
    {{ get_name($explodeFamilyId[$i], 'id', 'name', 'insurance_heads_of_family') }} ({{ $this_family_members_number . ' ' . __('insurance_members.family_members') }}) - {{ ugandan_shillings($this_family_premiums) }} - {{ streamline_date($receipt->start_date) }}{{ streamline_date($receipt->end_date) }}{{ get_full_name($receipt->created_by, "id", "first_name", "last_name", "users") }} - {{ Form::open(['route' => 'insurance_premiums.print_receipt']) }} - - {{ Form::hidden('subscription_id', $receipt->id) }} - {{ Form::hidden('start_date', $receipt->start_date) }} - {{ Form::hidden('end_date', $receipt->end_date) }} - {{ Form::hidden('payment_date', $receipt->payment_date) }} - {{ Form::hidden('receipt_number', $receipt->receipt_number) }} - {{ Form::hidden('group_id', $receipt->group_id) }} - {{ Form::hidden('family_id', $explodeFamilyId[$i]) }} - {{ Form::hidden('family_amount', $this_family_premiums) }} - - - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/menu.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/menu.blade.php deleted file mode 100755 index 5b17b364..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/menu.blade.php +++ /dev/null @@ -1,9 +0,0 @@ -
    - -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/print_receipt.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/print_receipt.blade.php deleted file mode 100755 index 9b1f4d4a..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/print_receipt.blade.php +++ /dev/null @@ -1,147 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance.premium_receipt') }}

    -
    -
    - -
    -
    - -
    -
    - @include('insurance::insurance_premiums.menu') -
    -
    - -
    -
    -
    -
    - -     - @php - $print_array = [$start_date, $end_date, $amount, $group_name, $family_name, $receipt_date, $receipt_number, $family_id, $group_id, $subscription_record->id, $subscription_record->created_by]; - $seralized_data = serialize($print_array); - @endphp - {{ __('insurance.pdf_print') }} -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - {{ __('insurance.tel') }}: {{ $hospital_information->phone_number }}
    - {{ __('insurance.email') }}: {{ $hospital_information->email }}
    - {{ __('insurance.cashier') }}: {{ get_full_name($subscription_record->created_by, "id", "first_name", "last_name", "users") }}
    - {{ __('insurance.date') }}: {{ streamline_date_time_short($receipt_date) }}
    - {{ __('insurance.receipt_number') }} {{ $receipt_number }}
    -

    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('insurance.start_of_cover_date') }}{{ streamline_date($start_date) }}
    {{ __('insurance.end_of_cover_date') }}{{ streamline_date($end_date) }}
    {{ __('insurance.amount_paid') }}{{ ugandan_shillings($amount) }}
    {{ __('insurance.insurance_group_name') }}{{ $group_name }}
    {{ __('insurance.insurance_family_head') }}{{ $family_name }}
    {{ __('insurance.number_of_people_covered') }} - {{ $covered_family_members }} {{ __('insurance.members') }} -
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/print_receipt_group.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/print_receipt_group.blade.php deleted file mode 100755 index 7dd5b405..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/print_receipt_group.blade.php +++ /dev/null @@ -1,140 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance.premium_receipt') }}

    -
    -
    - -
    -
    - -
    -
    - @include('insurance::insurance_premiums.menu') -
    -
    - -
    -
    -
    -
    - -     - @php - $print_array = [$start_date, $end_date, $amount, $group_name, $contact_name, $receipt_date, $receipt_number]; - $seralized_data = serialize($print_array); - @endphp - PDF Print -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - {{ __('insurance.tel') }}: {{ $hospital_information->phone_number }}
    - {{ __('insurance.email') }}: {{ $hospital_information->email }}
    - {{ __('insurance.cashier') }}: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - {{ __('insurance.date') }}: {{ streamline_date_time_short($receipt_date) }}
    - {{ __('insurance.receipt_number') }} {{ $receipt_number }}
    -

    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('insurance.start_of_cover_date') }}{{ streamline_date($start_date) }}
    {{ __('insurance.end_of_cover_date') }}{{ streamline_date($end_date) }}
    {{ __('insurance.amount_paid') }}{{ ugandan_shillings($amount) }}
    {{ __('insurance.insurance_group_name') }}{{ $group_name }}
    {{ __('insurance.client_name') }}{{ $contact_name }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/print_receipt_single_group.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/print_receipt_single_group.blade.php deleted file mode 100755 index 7c342093..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/print_receipt_single_group.blade.php +++ /dev/null @@ -1,145 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance.premium_receipt') }}

    -
    -
    - -
    -
    - -
    -
    - @include('insurance::insurance_premiums.menu') -
    -
    - -
    -
    -
    -
    - -     - @php - $print_array = [$start_date, $end_date, $amount, $receipt_date, $receipt_number, $group_name, $group_id, $paid_by_name, $paid_by_contact, $cashier_id]; - $seralized_data = serialize($print_array); - @endphp - PDF Print -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - {{ __('insurance.tel') }}: {{ $hospital_information->phone_number }}
    - {{ __('insurance.email') }}: {{ $hospital_information->email }}
    - {{ __('insurance.cashier') }}: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - {{ __('insurance.date') }}: {{ streamline_date_time_short($receipt_date) }}
    - {{ __('insurance.receipt_number') }} {{ $receipt_number }}
    -

    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('insurance.start_of_cover_date') }}{{ streamline_date($start_date) }}
    {{ __('insurance.end_of_cover_date') }}{{ streamline_date($end_date) }}
    {{ __('insurance.amount_paid') }}{{ ugandan_shillings($amount) }}
    {{ __('insurance.insurance_group_name') }}{{ $group_name }}
    {{ __('insurance.paid_by') }}{{ $paid_by_name }}
    {{ __('insurance.paid_by_contact') }}{{ $paid_by_contact }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/renew_premium.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/renew_premium.blade.php deleted file mode 100755 index 8da5240a..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/renew_premium.blade.php +++ /dev/null @@ -1,364 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance.renew_premium') }}

    -
    -
    - -
    -
    - -
    -
    - @include('insurance::insurance_premiums.menu') -
    -
    - @php - $back_date = \Streamline\Models\HospitalInformation::first()->pluck('back_date'); - @endphp - @include('flash::message') - - @include ('errors.list') - -
    - {{ Form::open(['route' => 'insurance_premiums.renew_premium_store','data-toggle'=>'validator']) }} - -
    -
    -
    - {{ Form::label('group_id', __('insurance.insurance_groups_lc')) }} - {{ Form::select('group_id', $insurance_groups, null, ['class' => 'form-control compulsory', 'required', 'id' => 'group_id']) }} -
    -
    - -
    - {{ Form::label('amount', __('insurance.amount')) }} - {{ Form::number('amount', '', ['class' => 'form-control compulsory', 'readonly', 'required', 'id' => 'amount']) }} -
    -
    - -
    - {{ Form::label('start_date', __('insurance.start_date')) }} -
    - {{ Form::text('start_date', '', ['class'=>'form-control compulsory', 'readonly', 'required', 'id'=>'start_date']) }} - -
    -
    -
    - -
    - {{ Form::label('end_date', __('insurance.insurance_end_date')) }} -
    - {{ Form::text('end_date', '', ['class'=>'form-control compulsory', 'readonly', 'required', 'id'=>'end_date']) }} - -
    -
    -
    - -
    - {{ Form::label('payment_date', __('insurance.payment_date')) }} -
    - {{ Form::text('payment_date', '', ['class'=>'form-control compulsory', 'readonly', 'required', 'id'=>'payment_date']) }} - -
    -
    -
    -
    -
    -
    -
    -
    - - {{ __('insurance.proceed') }} - - - - {{ Form::close() }} -
    - - {{-- modal --}} - - - - - @include('insurance::insurance_premiums.add_new_family_member_modal') -@endsection - -@push('scripts') - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/reprint_single_group_receipt.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/reprint_single_group_receipt.blade.php deleted file mode 100755 index 4155c863..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/reprint_single_group_receipt.blade.php +++ /dev/null @@ -1,145 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance.premium_receipt') }}

    -
    -
    - -
    -
    - -
    -
    - @include('insurance::insurance_premiums.menu') -
    -
    - -
    -
    -
    -
    - -     - @php - $print_array = [$receipt->start_date, $receipt->end_date, $receipt->amount, $receipt->payment_date, $receipt->receipt_number, get_name($receipt->group_id, 'id', 'name', 'insurance_groups'), $receipt->group_id, $receipt->paid_by_name, $receipt->paid_by_contact, $receipt->created_by]; - $seralized_data = serialize($print_array); - @endphp - PDF Print -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - {{ __('insurance.tel') }}: {{ $hospital_information->phone_number }}
    - {{ __('insurance.email') }}: {{ $hospital_information->email }}
    - {{ __('insurance.cashier') }}: {{ get_name($receipt->created_by, 'id', 'first_name', 'users') }} {{ get_name($receipt->created_by, 'id', 'last_name', 'users') }}
    - {{ __('insurance.date') }}: {{ streamline_date($receipt->payment_date) }}
    - {{ __('insurance.receipt_number') }} {{ $receipt->receipt_number }}
    -

    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('insurance.start_of_cover_date') }}{{ streamline_date($receipt->start_date) }}
    {{ __('insurance.end_of_cover_date') }}{{ streamline_date($receipt->end_date) }}
    {{ __('insurance.amount_paid') }}{{ ugandan_shillings($receipt->amount) }}
    {{ __('insurance.insurance_group_name') }}{{ get_name($receipt->group_id, 'id', 'name', 'insurance_groups') }}
    {{ __('insurance.paid_by') }}{{ $receipt->paid_by_name }}
    {{ __('insurance.paid_by_contact') }}{{ $receipt->paid_by_contact }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/single_group_receipt.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/single_group_receipt.blade.php deleted file mode 100755 index 2bbf217e..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/single_group_receipt.blade.php +++ /dev/null @@ -1,185 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('insurance.new_premium') }}

    -
    -
    - -
    -
    - @php - $back_date = \Streamline\Models\HospitalInformation::first()->pluck('back_date'); - @endphp -
    -
    - @include('insurance::insurance_premiums.menu') -
    -
    - -
    - {{ Form::open(['route' => 'insurance_premiums.single_group_receipt_store','data-toggle'=>'validator']) }} -
    -
    -
    - {{ Form::label('group_id', __('insurance.insurance_groups_lc')) }} - {{ Form::select('group_id', $insurance_groups, null, ['class' => 'form-control compulsory', 'required', 'id' => 'group_id']) }} -
    -
    - -
    - {{ Form::label('start_date', __('insurance.insurance_start_date')) }} -
    - {{ Form::text('start_date', '', ['class'=>'form-control compulsory', 'readonly', 'required', 'id'=>'start_date']) }} - -
    -
    -
    - -
    - {{ Form::label('end_date', __('insurance.insurance_end_date')) }} -
    - {{ Form::text('end_date', '', ['class'=>'form-control compulsory', 'readonly', 'required', 'id'=>'end_date']) }} - -
    -
    -
    - -
    - {{ Form::label('payment_date', __('insurance.payment_date')) }} -
    - {{ Form::text('payment_date', '', ['class'=>'form-control compulsory', 'readonly', 'required', 'id'=>'payment_date']) }} - -
    -
    -
    -
    - -
    -
    - {{ Form::label('amount', __('insurance.amount')) }} - {{ Form::number('amount', '', ['class' => 'form-control compulsory', 'required']) }} - {{ Form::hidden('expected_amount', '', ['class' => 'form-control compulsory', 'required', 'id' => 'expected_amount']) }} -
    -
    - -
    - {{ Form::label('paid_by_name', __('insurance.paid_by')) }} - {{ Form::text('paid_by_name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('paid_by_contact', __('insurance.paid_by_contact')) }} - {{ Form::text('paid_by_contact', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - -
    -
    - - {{ Form::button(__('insurance.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id' => 'submitBtn']) }} - {{ Form::button(__('insurance.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - {{ Form::close() }} -
    - - {{-- modal --}} - -@endsection - -@push('scripts') - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/single_group_receipt_edit.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/single_group_receipt_edit.blade.php deleted file mode 100644 index 28c29c4f..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/single_group_receipt_edit.blade.php +++ /dev/null @@ -1,214 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('insurance.new_premium') }}

    -
    -
    - -
    -
    - @php - $back_date = \Streamline\Models\HospitalInformation::first()->pluck('back_date'); - @endphp -
    -
    - @include('insurance::insurance_premiums.menu') -
    -
    - -
    - {{ Form::open(['route' => 'insurance_premiums.single_group_receipt_store','data-toggle'=>'validator']) }} -
    -
    -
    - {{ Form::label('group_id', __('insurance.insurance_groups_lc')) }} - {{ Form::select('group_id', $insurance_groups, $group_id, ['class' => 'form-control compulsory', 'required', 'id' => 'group_id']) }} -
    -
    - -
    - {{ Form::label('start_date', __('insurance.insurance_start_date')) }} -
    - {{ Form::text('start_date', '', ['class'=>'form-control compulsory', 'readonly', 'required', 'id'=>'start_date']) }} - -
    -
    -
    - -
    - {{ Form::label('end_date', __('insurance.insurance_end_date')) }} -
    - {{ Form::text('end_date', '', ['class'=>'form-control compulsory', 'readonly', 'required', 'id'=>'end_date']) }} - -
    -
    -
    - -
    - {{ Form::label('payment_date', __('insurance.payment_date')) }} -
    - {{ Form::text('payment_date', '', ['class'=>'form-control compulsory', 'readonly', 'required', 'id'=>'payment_date']) }} - -
    -
    -
    -
    - -
    -
    - {{ Form::label('amount', __('insurance.amount')) }} - {{ Form::number('amount', '', ['class' => 'form-control compulsory', 'required']) }} - {{ Form::hidden('expected_amount', '', ['class' => 'form-control compulsory', 'required', 'id' => 'expected_amount']) }} -
    -
    - -
    - {{ Form::label('paid_by_name', __('insurance.paid_by')) }} - {{ Form::text('paid_by_name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('paid_by_contact', __('insurance.paid_by_contact')) }} - {{ Form::text('paid_by_contact', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - -
    -
    - - {{ Form::button(__('insurance.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id' => 'submitBtn']) }} - {{ Form::button(__('insurance.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - {{ Form::close() }} -
    - - {{-- modal --}} - -@endsection - -@push('scripts') - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/single_group_receipt_history.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/single_group_receipt_history.blade.php deleted file mode 100755 index 83f9cf8d..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/single_group_receipt_history.blade.php +++ /dev/null @@ -1,152 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance.single_group_receipts') }}

    -
    -
    - -
    -
    - -
    -
    - @include('insurance::insurance_premiums.menu') -
    -
    - -
    -
    - - {{ Form::open(['route' => 'insurance_premiums.single_group_receipt_history']) }} - -
    -
    -
    - {{ Form::label('start_date', __('insurance_reports.start_date')) }} -
    - {{ Form::text('start_date', '', ['class'=>'form-control', 'readonly', 'id'=>'start_date']) }} - -
    -
    -
    -
    -
    - {{ Form::label('end_date', __('insurance_reports.end_date')) }} -
    - {{ Form::text('end_date', '', ['class'=>'form-control', 'readonly', 'id'=>'end_date']) }} - -
    -
    -
    -
    -
    - {{ Form::label('group_id', __('insurance.search_for_group_receipts')) }} - {{ Form::select('group_id', $insurance_groups, null, ['class' => 'form-control group_id']) }} -
    -
    -
    -
    - {{ Form::submit(__('insurance_reports.submit'), ['class'=>'btn btn-success pull-right']) }} -
    -
    -
    - - {{ Form::close() }} - -
    -

    -
    - -
    - - - - - - - - - - - - - - - - - @foreach($receipts as $receipt) - - - - - - - - - - - - - @endforeach - -
    {{ __('insurance.group_name') }}{{ __('insurance.paid_by') }}{{ __('insurance.amount_paid') }}{{ __('insurance.paid_by_contact') }}{{ __('insurance.start_date') }}{{ __('insurance.end_date') }}{{ __('insurance.payment_date') }}{{ __('insurance.received_by') }}{{ __('insurance.received_on') }}{{ __('insurance.print_receipts') }}
    {{ get_name($receipt->group_id, 'id', 'name', 'insurance_groups') }}{{ $receipt->paid_by_name }}{{ ugandan_shillings($receipt->amount) }}{{ $receipt->paid_by_contact }}{{ streamline_date($receipt->start_date) }}{{ streamline_date($receipt->end_date) }}{{ streamline_date($receipt->payment_date) }}{{ get_full_name($receipt->created_by, "id", "first_name", "last_name", "users") }}{{ streamline_date_time($receipt->created_at) }} - - {{ __('insurance.print_receipt') }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/snappy_print_receipt_family.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/snappy_print_receipt_family.blade.php deleted file mode 100755 index 91e89a1b..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/snappy_print_receipt_family.blade.php +++ /dev/null @@ -1,96 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Premiums Receipt - Stre@mline') }} - - - - - - - -
    - @include('layouts.header_pdf_print') - -
    -
    -

    -

    {{ __('insurance.health_insurance_card') }}

    -
    {{ __('insurance.family_card') }}
    - {{ __('insurance.cashier') }}: {{ get_full_name($cashier, "id", "first_name", "last_name", "users") }}
    - {{ __('insurance.date') }}: {{ streamline_date_time_short($receipt_date) }}
    - {{ __('insurance.receipt_number') }}: {{ $receipt_number }}
    -

    -
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('insurance.start_of_cover_date') }}: {{ streamline_date($start_date) }} {{ __('insurance.end_of_cover_date') }}: {{ streamline_date($end_date) }}
    {{ __('insurance.amount_paid') }}{{ ugandan_shillings($amount) }}
    {{ __('insurance.insurance_group_name') }}{{ $group_name }}
    {{ __('insurance.insurance_family_head') }}{{ $family_name }}
    {{ __('insurance.number_of_people_covered') }} - {{ count($covered_family_members) }} {{ __('insurance.members') }} - @if(count($covered_family_members)) - @foreach($covered_family_members as $member_id) - @php - $member = \Streamline\Models\InsuranceMember::withTrashed()->find($member_id); - @endphp -
  • - {{ get_full_name($member->patient_id, "id", "first_name", "last_name", "patients")}} ({{ get_name($member->patient_id, "id", "number", "patients")}}) -
  • - @endforeach - @endif -
    - {{ __('insurance.printed_by') }}: {{ get_full_name(auth()->user()->id, "id", "first_name", "last_name", "users") }} -
    -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/snappy_print_receipt_group.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/snappy_print_receipt_group.blade.php deleted file mode 100755 index 976a13ac..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/snappy_print_receipt_group.blade.php +++ /dev/null @@ -1,97 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Premiums Receipt - Stre@mline') }} - - - - - - - -
    - @include('layouts.header_pdf_print') - -
    -
    -
    -
    -

    -

    {{ __('insurance.health_insurance_card') }}

    -
    {{ __('insurance.premium_receipts') }}
    - {{ __('insurance.cashier') }}: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - {{ __('insurance.date') }}: {{ streamline_date_time_short($receipt_date) }}
    - {{ __('insurance.receipt_number') }}: {{ $receipt_number }}
    -

    -
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('insurance.start_of_cover_date') }}{{ streamline_date($start_date) }}
    {{ __('insurance.end_of_cover_date') }}{{ streamline_date($end_date) }}
    {{ __('insurance.amount_paid') }}{{ ugandan_shillings($amount) }}
    {{ __('insurance.insurance_group_name') }}{{ $group_name }}
    {{ __('insurance.client_name') }}{{ $contact_name }}
    -

    {{ __('insurance.health_insurance_card') }}  ........................... -
    -

    {{ __('insurance.client_signature') }}  ...................................... -
    - {{ __('insurance.printed_by') }}: {{ get_full_name(auth()->user()->id, "id", "first_name", "last_name", "users") }} -
    -
    -
    -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/snappy_print_single_group_receipt.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/snappy_print_single_group_receipt.blade.php deleted file mode 100755 index 53f1b03d..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_premiums/snappy_print_single_group_receipt.blade.php +++ /dev/null @@ -1,92 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Premiums Receipt - Stre@mline') }} - - - - - - - -
    - @include('layouts.header_pdf_print') - -
    -
    -
    -
    -

    -

    {{ __('insurance.health_insurance_card') }}

    -
    {{ __('insurance.single_group_receipt') }}
    - {{ __('insurance.cashier') }}: {{ get_full_name($cashier_id, "id", "first_name", "last_name", "users") }} | {{ __('insurance.date') }}: {{ streamline_date($receipt_date) }} | {{ __('insurance.receipt_number') }}: {{ $receipt_number }}
    -

    -
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('insurance.insurance_group_name') }}{{ $group_name }}
    {{ __('insurance.start_date') }}: {{ streamline_date($start_date) }}{{ __('insurance.end_date') }}: {{ streamline_date($end_date) }}
    {{ __('insurance.amount_paid') }}{{ ugandan_shillings($amount) }}
    {{ __('insurance.paid_by') }}{{ $paid_by_name }} ({{ $paid_by_contact }})

    {{ __('insurance.signed') }}
    -
    - ...............................
    - {{ __('insurance.for') }}: {{ __('insurance.health_insurance_card') }} -
    - {{ __('insurance.printed_by') }}: {{ get_full_name(auth()->user()->id, "id", "first_name", "last_name", "users") }} on {{ streamline_date_time_short(\Carbon\Carbon::now()) }} -
    - -Stre@mline- -
    -
    -
    -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/cumulative_premiums_report.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/cumulative_premiums_report.blade.php deleted file mode 100755 index 4bd290c2..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/cumulative_premiums_report.blade.php +++ /dev/null @@ -1,144 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_reports.premium_report') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    - - {{ Form::open(['route' => 'insurance_reports.cumulative_premiums_report']) }} - -
    - {{ Form::label('start_date', __('insurance_reports.start_date')) }} -
    - {{ Form::text('start_date', '', ['class'=>'form-control', 'readonly', 'id'=>'start_date']) }} - -
    -
    - -
    - {{ Form::label('end_date', __('insurance_reports.end_date')) }} -
    - {{ Form::text('end_date', '', ['class'=>'form-control', 'readonly', 'id'=>'end_date']) }} - -
    -
    - -
    - {{ Form::submit(__('insurance_reports.submit'), ['class'=>'btn btn-success pull-right']) }} -
    - - {{ Form::close() }} - -
    -
    -
    -
    -
    -
    -

    -

    -
    - - - - - - - - - - - - - - - @php $counter = 1 @endphp - @foreach($reports as $report) - @php - $amount = group_amount_sum_period($report->id, $start_date, $end_date); - @endphp - - - - - - - - - - - @php $counter++ @endphp - @endforeach - -
    #{{ __('insurance_reports.group_name') }}{{ __('insurance_reports.amount_paid') }}{{ __('insurance_reports.start_date') }}{{ __('insurance_reports.end_date') }}{{ __('insurance_reports.payment_date') }}{{ __('insurance_reports.insurance_status') }}{{ __('insurance_reports.details') }}
    {{ $counter }}{{ $report->name }}{{ ugandan_shillings($amount) }}{{ streamline_date($report->start_date) }}{{ streamline_date($report->end_date) }}{{ streamline_date($report->payment_date) }} - @if (date('Y-m-d') < $report->end_date) - {{ __('insurance_reports.active') }} - @else - {{ __('insurance_reports.inactive') }} - @endif - - {{ Form::model($report->id ,['route' => ['insurance_reports.group_premiums_report']]) }} - {{ Form::hidden('start_date', $start_date) }} - {{ Form::hidden('end_date', $end_date) }} - {{ Form::hidden('id', $report->id) }} - - - {{ Form::close() }} -
    -
    -
    -
    -
    - -
    -@endsection - - -@push('scripts') - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/expired_insurance.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/expired_insurance.blade.php deleted file mode 100755 index f7aab264..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/expired_insurance.blade.php +++ /dev/null @@ -1,232 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_reports.expired_CHI') }}

    -
    -
    - -
    -
    - -
    -
    - {{ Form::open(['url' => 'expired_premiums_search', 'method' => 'ANY']) }} -
    -
    -
    - {{ Form::label('search_by', __('insurance_reports.date_of_expiry')) }} - {{ Form::select('search_by', ['0'=>'Last 24 hours','1'=>'Custom Date','2'=>'Custom Range', '3'=>'All Expired Records'], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - - -
    -

    - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    -
    - {{ Form::close() }} - -

    {{ __('insurance_reports.export_data_to_csv_and_excel') }}

    -
    - - - - - - - - - - - - - - - {{-- @php $counter = 1 @endphp - @foreach($insurance_groups as $insurance_group) - @php $amount = group_amount_sum($insurance_group->id); @endphp - - - - - - - - - - - @php $counter++ @endphp - @endforeach --}} - @php $counter = 1 @endphp - @if (count($insurance_premiums) > 0) - @foreach($insurance_premiums as $record) - @php - $group_details = \Streamline\Models\InsuranceGroup::withTrashed()->find($record->group_id); - @endphp - @if ($group_details && ($record->end_date < date('Y-m-d'))) - - - - - - - - - - - @php $counter++ @endphp - @endif - @endforeach - @endif - -
    #{{ __('insurance_reports.group_name') }}{{ __('insurance_reports.amount_paid') }}{{ __('insurance_reports.start_date') }}{{ __('insurance_reports.end_date') }}{{ __('insurance_reports.payment_date') }}{{ __('insurance_reports.contact_name') }}{{ __('insurance_reports.details') }}
    {{ $counter }}{{ $insurance_group->name }}{{ ugandan_shillings($amount) }}{{ streamline_date($insurance_group->start_date) }}{{ streamline_date($insurance_group->end_date) }}{{ streamline_date($insurance_group->payment_date) }}{{ $insurance_group->contact_name . ' [' . $insurance_group->contact_number . ']'}} - {{ __('insurance_reports.details') }} -
    {{ $counter }} - {{ $group_details->name }} -

    - {{ __('insurance_reports.covered_members') }} - @php - $this_premium_covered_members_array = $record->covered_member_ids ? explode(",",$record->covered_member_ids) : []; - $this_premium_each_member_contribution_array = $record->covered_member_premiums_paid ? explode(",",$record->covered_member_premiums_paid) : []; - @endphp -
      - @for ($i = 0; $i < count($this_premium_covered_members_array); $i++) -
    1. {!! insurance_flag(get_name($this_premium_covered_members_array[$i], "id", "patient_id", "insurance_members")) !!} ({{ ugandan_shillings($this_premium_each_member_contribution_array[$i]) }})
    2. - @endfor -
    -
    {{ ugandan_shillings($record->amount) }}{{ streamline_date($record->start_date) }}{{ streamline_date($record->end_date) }}{{ streamline_date($record->payment_date) }}{{ $group_details->contact_name . ' [' . $group_details->contact_number . ']'}} - {{ __('insurance_reports.details') }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/expired_insurance_details.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/expired_insurance_details.blade.php deleted file mode 100755 index 4db46ec2..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/expired_insurance_details.blade.php +++ /dev/null @@ -1,78 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ $group_name }} {{ __('insurance_reports.group_details') }}

    -
    -
    - -
    -
    - -
    -
    -

    {{ __('insurance_reports.export_data_to_csv_and_excel') }}

    -
    - - - - - - - - - - - - - @php $counter = 1 @endphp - @foreach($insurance_subscriptions as $insurance_subscription) - - - - - - - - - @php $counter++ @endphp - @endforeach - -
    #{{ __('insurance_reports.amount_paid') }}{{ __('insurance_reports.start_date') }}{{ __('insurance_reports.end_date') }}{{ __('insurance_reports.payment_date') }}{{ __('insurance_reports.insurance_status') }}
    {{ $counter }} {{ ugandan_shillings($insurance_subscription->amount) }} {{ streamline_date($insurance_subscription->start_date) }} {{ streamline_date($insurance_subscription->end_date) }} {{ streamline_date($insurance_subscription->payment_date) }} {{ __('insurance_reports.inactive') }}
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/group_premiums_report.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/group_premiums_report.blade.php deleted file mode 100755 index 9ad52fe0..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/group_premiums_report.blade.php +++ /dev/null @@ -1,72 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_reports.CHI_reports') }}

    -
    -
    - -
    -
    - -
    -
    -
    - - - - - - - - - - - - - - @php $counter = 1 @endphp - @foreach($group_transactions as $group_transaction) - - - - - - - - - - @php $counter++ @endphp - @endforeach - -
    #{{ __('insurance_reports.group_name') }}{{ __('insurance_reports.amount_paid') }}{{ __('insurance_reports.start_date') }}{{ __('insurance_reports.end_date') }}{{ __('insurance_reports.payment_date') }}{{ __('insurance_reports.insurance_status') }}
    {{ $counter }} {{ $insurance_groups[$group_transaction->group_id]}} {{ ugandan_shillings($group_transaction->amount) }} {{ streamline_date($group_transaction->start_date) }} {{ streamline_date($group_transaction->end_date) }} {{ streamline_date($group_transaction->payment_date) }} - @if (date('Y-m-d') < $group_transaction->end_date) - {{ __('insurance_reports.active') }} - @else - {{ __('insurance_reports.inactive') }} - @endif -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/insurance_deposit_income.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/insurance_deposit_income.blade.php deleted file mode 100755 index e5d7e694..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/insurance_deposit_income.blade.php +++ /dev/null @@ -1,112 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_reports.deposit_income_details') }}

    -
    -
    - -
    -
    - -
    -
    -

    -

    -
    - - - - - - - - - - - - - @php $counter = 1; $total = 0; @endphp - @foreach($service_deposits as $service_deposit) - @php - $array_items = explode(",", $service_deposit->items_ids); - $array_amounts = explode(",", $service_deposit->patient_amount_paid); - @endphp - - - - - - - - - @php $counter++ @endphp - @endforeach - - - - - -
    #{{ __('insurance_reports.patient_name') }}{{ __('insurance_reports.insurance_group') }}{{ __('insurance_reports.deposit') }}{{ __('insurance_reports.payment_date') }}{{ __('insurance_reports.amount') }}
    {{ $counter }}{!! insurance_flag($service_deposit->patient_id) !!} - {{ get_name(get_name($service_deposit->patient_id, 'patient_id', 'group_id', 'insurance_members'), 'id', 'name', 'insurance_groups') }} - -
      - @for($i = 0; $i < count($array_items); $i++) -
    1. - {{ get_name($array_items[$i], 'id', 'name', 'services') }} -
    2. - @endfor -
    -
    {{ $service_deposit->created_at }} -
      - @for($i = 0; $i < count($array_amounts); $i++) - - @php - if (!is_numeric($array_amounts[$i])){ - continue; - } - $total += $array_amounts[$i]; - @endphp -
    1. - {{ ugandan_shillings($array_amounts[$i]) }} -
    2. - @endfor -
    -
    {{ __('insurance_reports.total') }}{{ ugandan_shillings($total) }}
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/insurance_expenditure.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/insurance_expenditure.blade.php deleted file mode 100755 index 9646e6b2..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/insurance_expenditure.blade.php +++ /dev/null @@ -1,158 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_reports.insurance_expenditure') }}

    -
    -
    - -
    -
    - -
    -
    - -
    - {{ Form::open(['route' => 'insurance_reports.insurance_expenditure']) }} - -
    - {{ Form::label('start_date', __('insurance_reports.start_date')) }} -
    - {{ Form::text('start_date', '', ['class'=>'form-control', 'readonly', 'id'=>'start_date']) }} - -
    -
    - -
    - {{ Form::label('end_date', __('insurance_reports.end_date')) }} -
    - {{ Form::text('end_date', '', ['class'=>'form-control', 'readonly', 'id'=>'end_date']) }} - -
    -
    - -
    - {{ Form::select('group_id',$insurance_groups_select,'',['class' => 'form-control', 'id' => 'insurance_groups']) }} -
    - -
    - {{ Form::submit(__('insurance_reports.submit'), ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    - -
    -
    - -

    - -

    -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    ItemAmount
    {{ __('insurance_reports.expenditure_on_drugs') }}{{ ugandan_shillings($drugs_total) }}
    {{ __('insurance_reports.expenditure_on_investigations') }}{{ ugandan_shillings($investigations_total) }}
    {{ __('insurance_reports.expenditure_on_procedures') }}{{ ugandan_shillings($procedures_total) }}
    {{ __('insurance_reports.expenditure_on_sundries') }}{{ ugandan_shillings($sundries_total) }}
    {{ __('insurance_reports.expenditure_on_services') }}{{ ugandan_shillings($services_total) }}
    {{ __('insurance_reports.expenditure_on_inpatient_accommodation') }}{{ ugandan_shillings($bed_stay_total) }}
    {{ __('insurance_reports.total_expenditure') }}{{ ugandan_shillings($total) }}
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/insurance_expenditure_details.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/insurance_expenditure_details.blade.php deleted file mode 100644 index 3a65ce4c..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/insurance_expenditure_details.blade.php +++ /dev/null @@ -1,114 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_reports.chi_expenditure_details') }}

    -
    -
    - -
    -
    - -
    -
    - -

    {{ $item_type_name . ' expenditure from ' . streamline_date($start_date) . ' to ' . streamline_date($end_date) }}

    - -
    - -

    {{ __('insurance_reports.export_data_to_csv_and_excel') }}

    -
    - - - - - - - - - - - - @php $total = 0; @endphp - @foreach($insurance_claims as $insurance_claim) - - - @php - $item_ids = explode(",", $insurance_claim->item_ids); - $item_quantities = explode(",", $insurance_claim->item_quantities); - @endphp - - - - - - @php $total += $insurance_claim->primary_plan_claim_total; @endphp - @endforeach - - - - - - - - -
    {{ __('insurance_reports.patient_name') }}{{ __('insurance_reports.items') }}{{ __('insurance_reports.quantities') }}{{ __('insurance_reports.amount_paid') }}{{ __('insurance_reports.date_paid') }}
    {!! insurance_flag($insurance_claim->patient_id) !!} ({{ get_name($insurance_claim->patient_id, 'id', 'number', 'patients') }}) -
      - @for($i = 0; $i < count($item_ids); $i++) - @if($item_type != 6) -
    • {{ $items[$item_ids[$i]] ?? '' }}
    • - @else -
    • {{ $items[get_name($item_ids[$i], 'id', 'bed_category_id', 'insurance_inpatient_accommodation_rates')] ?? '' }}
    • - @endif - @endfor -
    -
    -
      - @for($i = 0; $i < count($item_quantities); $i++) -
    • {{ $item_quantities[$i] }}
    • - @endfor -
    -
    {{ ugandan_shillings($insurance_claim->primary_plan_claim_total) }}{{ streamline_date_time($insurance_claim->created_at) }}
    {{ __('insurance_reports.total') }}{{ ugandan_shillings($total) }}
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/insurance_income_received.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/insurance_income_received.blade.php deleted file mode 100755 index 2164dee5..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/insurance_income_received.blade.php +++ /dev/null @@ -1,219 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_reports.chi_income_received') }}

    -
    -
    - -
    -
    - -
    -
    - -
    - {{ Form::open(['route' => 'insurance_reports.insurance_income_received']) }} - -
    - {{ Form::label('start_date', __('insurance_reports.start_date')) }} -
    - {{ Form::text('start_date', '', ['class'=>'form-control', 'readonly', 'id'=>'start_date']) }} - -
    -
    - -
    - {{ Form::label('end_date', __('insurance_reports.end_date')) }} -
    - {{ Form::text('end_date', '', ['class'=>'form-control', 'readonly', 'id'=>'end_date']) }} - -
    -
    - -
    - {{ Form::submit(__('insurance_reports.submit'), ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    - -
    -
    -
    - -

    -

    - - {{--
    {{ __('insurance_reports.received_premiums') }}
    - - - - - -
    {{ __('insurance_reports.total_premiums') }}{{ ugandan_shillings($premiums) }}
    -
    - -
    {{ __('insurance_reports.received_co_payments') }}
    - - - - - -
    {{ __('insurance_reports.total_co_payments') }}{{ ugandan_shillings($co_payments) }}
    -
    - -
    {{ __('insurance_reports.total_income') }}
    - - - - - -
    {{ __('insurance_reports.total_income') }}{{ ugandan_shillings($total) }}
    -
    - -
    {{ __('insurance_reports.total_expenditure') }}
    - - - - - -
    {{ __('insurance_reports.total_expenditure') }}{{ ugandan_shillings($expenditure_total) }}
    -
    - -
    {{ __('insurance_reports.net_profit') }}
    - - - - - -
    {{ __('insurance_reports.net_profit') }}{{ ugandan_shillings($total - $expenditure_total) }}
    --}} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    TitleAmount
    {{ __('insurance_reports.total_premiums') }}{{ ugandan_shillings($premiums) }}
    {{ __('insurance_reports.total_co_payments') }}{{ ugandan_shillings($co_payments) }}
    {{ __('insurance_reports.total_income') }}{{ ugandan_shillings($total) }}
    {{ __('insurance_reports.total_expenditure') }}{{ ugandan_shillings($expenditure_total) }}
    {{ __('insurance_reports.net_profit') }}{{ ugandan_shillings($total - $expenditure_total) }}
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/insurance_income_received_details.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/insurance_income_received_details.blade.php deleted file mode 100755 index eb72eedd..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/insurance_income_received_details.blade.php +++ /dev/null @@ -1,135 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_reports.chi_income_received') }}

    -
    -
    - -
    -
    - -
    -
    -

    -

    -
    - - - - - - - - - - - - @php - $total_amount = 0; - @endphp - @foreach($insurance_subscriptions as $insurance_subscription) - - @php - $explodeFamilyId = explode(",", $insurance_subscription->family_heads); - $explodeFamilyAmount = explode(",", $insurance_subscription->family_amount); - $count = count($explodeFamilyId); - $total_group_amount = array_sum($explodeFamilyAmount); - $total_amount += $total_group_amount; - $rowspan = $count +1; - @endphp - - - - - - - - @for($i = 1; $i < count($explodeFamilyId); $i++) - - @for ($t=1; $t<$rowspan; $t++) - - @endfor - - - - - - @endfor - - @for ($a=1; $a<$rowspan; $a++) - - @endfor - - - - - - @endforeach - - @if (count($single_group_receipts) > 0) - - - - - - @foreach ($single_group_receipts as $group_receipts) - - - - - - - - @php $total_amount += $group_receipts->amount; @endphp - @endforeach - @endif - - - - - - - - - -
    {{ __('insurance_reports.group_name') }}{{ __('insurance_reports.family_name') }}{{ __('insurance_reports.amount_paid') }}{{ __('insurance_reports.start_date') }}{{ __('insurance_reports.end_date') }}
    {{ get_name($insurance_subscription->group_id, 'id', 'name', 'insurance_groups') }}{{ get_name($explodeFamilyId[0], 'id', 'name', 'insurance_heads_of_family') }}{{ ugandan_shillings($explodeFamilyAmount[0]) }}{{ streamline_date($insurance_subscription->start_date) }}{{ streamline_date($insurance_subscription->end_date) }}
    {{ get_name($explodeFamilyId[$i], 'id', 'name', 'insurance_heads_of_family') }}{{ isset($explodeFamilyAmount[$i]) ? ugandan_shillings($explodeFamilyAmount[$i]) : ugandan_shillings(0) }}{{ streamline_date($insurance_subscription->start_date) }}{{ streamline_date($insurance_subscription->end_date) }}
    {{ __('insurance_reports.group_total') }}{{ ugandan_shillings($total_group_amount) }}
    {{ __('insurance_reports.single_group_receipts') }}
    {{ get_name($group_receipts->group_id, 'id', 'name', 'insurance_groups') }}{{ ugandan_shillings($group_receipts->amount) }}{{ streamline_date($group_receipts->start_date) }}{{ streamline_date($group_receipts->end_date) }}
    {{ __('insurance_reports.total') }}{{ ugandan_shillings($total_amount) }}
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/insurance_transactions.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/insurance_transactions.blade.php deleted file mode 100755 index 5705897a..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/insurance_transactions.blade.php +++ /dev/null @@ -1,173 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_reports.chi_premiums_collected') }}

    -
    -
    - -
    -
    - - @include('flash::message') - @include('errors.list') - -
    - {{ Form::open(['route' => 'insurance_reports.insurance_transactions']) }} - -
    -
    -
    - {{ Form::label('start_date', __('insurance_reports.start_date')) }} -
    - {{ Form::text('start_date', '', ['class'=>'form-control', 'readonly', 'id'=>'start_date']) }} - -
    -
    -
    -
    -
    - {{ Form::label('end_date', __('insurance_reports.end_date')) }} -
    - {{ Form::text('end_date', '', ['class'=>'form-control', 'readonly', 'id'=>'end_date']) }} - -
    -
    -
    -
    -
    - {{ Form::submit(__('insurance_reports.submit'), ['class'=>'btn btn-success pull-right']) }} -
    -
    -
    - - {{ Form::close() }} - -
    - -

    -

    -
    - - - - - - - - - - - - - - - @php $counter = 1; $total_amount = 0; @endphp - @foreach($insurance_transactions as $insurance_transaction) - - - - - - - - - - - @php $counter++; $total_amount += $insurance_transaction->amount; @endphp - @endforeach - -
    #{{ __('insurance_reports.group_name') }}{{ __('insurance_reports.amount_paid') }}{{ __('insurance_reports.start_date') }}{{ __('insurance_reports.end_date') }}{{ __('insurance_reports.payment_date') }}{{ __('insurance_reports.received_on') }}{{ __('insurance_reports.received_by') }}
    {{ $counter }}{{ $insurance_groups[$insurance_transaction->group_id] }}{{ ugandan_shillings($insurance_transaction->amount) }}{{ streamline_date($insurance_transaction->start_date) }}{{ streamline_date($insurance_transaction->end_date) }}{{ streamline_date($insurance_transaction->payment_date) }}{{ streamline_date_time($insurance_transaction->created_at) }}{{ get_full_name($insurance_transaction->created_by, 'id', 'first_name', 'last_name', 'users') }}
    -
    - -

    Total Premiums Collected: {{ ugandan_shillings($total_amount) }}

    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/view_expiry_status.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/view_expiry_status.blade.php deleted file mode 100755 index 5f47c50a..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/view_expiry_status.blade.php +++ /dev/null @@ -1,241 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_reports.insurance_about_to_expire') }}

    -
    -
    - -
    -
    - -
    -
    - - {{ Form::open(['route' => 'insurance_reports.view_expiry_status']) }} - -
    -
    -
    - {{ Form::label('group_id', 'GROUP NAME') }} - {{ Form::select('group_id', $insurance_group_options, '', ['class' => 'form-control group_id', 'required']) }} -
    -
    -
    - -
    - -
    - - - - - -
    -

    - {{ Form::button(__('patient_flow_monitoring.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    -
    - - {{ Form::close() }} - -
    -
    - -
    -
    -

    {{ __('insurance_reports.export_data_to_csv_and_excel') }}

    -
    - - - - - - - - - - - - - - - @php $counter = 1 @endphp - @foreach($insurance_groups as $insurance_group) - @php - $amount = group_amount_sum($insurance_group->id); - - $dateToday = date('Y-m-d'); - $date1 = date_create($dateToday); - $date2 = date_create($insurance_group->end_date); - $diff = date_diff($date1, $date2); - $days = ($diff->format("%R%a ")); - @endphp - - @if($days <= 30) - - - - - - - - - - - @php $counter++; @endphp - @endif - @endforeach - -
    #{{ __('insurance_reports.group_name') }}{{ __('insurance_reports.amount_paid') }}{{ __('insurance_reports.start_date') }}{{ __('insurance_reports.end_date') }}{{ __('insurance_reports.payment_date') }}{{ __('insurance_reports.insurance_status') }}{{ __('insurance_reports.details') }}
    {{ $counter }}{{ $insurance_group->name }}{{ ugandan_shillings($amount) }}{{ streamline_date($insurance_group->start_date) }}{{ streamline_date($insurance_group->end_date) }}{{ streamline_date($insurance_group->payment_date) }} - @if(date('Y-m-d') > $insurance_group->end_date) - {{ __('insurance_reports.inactive') }} - @else - {{ __('insurance_reports.active') }} - @endif - - {{ __('insurance_reports.details') }} -
    -
    -
    - -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/view_expiry_status_details.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/view_expiry_status_details.blade.php deleted file mode 100755 index 92e7376d..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_reports/view_expiry_status_details.blade.php +++ /dev/null @@ -1,95 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ $group_name }} {{ __('insurance_reports.premiums_history') }}

    -
    -
    - -
    -
    - -
    -
    -

    {{ __('insurance_reports.export_data_to_csv_and_excel') }}

    -
    - - - - - - - - - - - - - - @php $counter = 1 @endphp - @foreach($insurance_subscriptions as $insurance_subscription) - - - - - - - - - - @php $counter++ @endphp - @endforeach - -
    #{{ __('insurance_reports.amount_paid') }}{{ __('insurance_reports.start_date') }}{{ __('insurance_reports.end_date') }}{{ __('insurance_reports.payment_date') }}{{ __('insurance_reports.insurance_status') }}
    {{ $counter }} - @php - $this_premium_covered_members_array = $insurance_subscription->covered_member_ids ? explode(",",$insurance_subscription->covered_member_ids) : []; - @endphp -
      - @for ($i = 0; $i < count($this_premium_covered_members_array); $i++) -
    1. {!! insurance_flag(get_name($this_premium_covered_members_array[$i], "id", "patient_id", "insurance_members")) !!}
    2. - @endfor -
    -
    {{ ugandan_shillings($insurance_subscription->amount) }} {{ streamline_date($insurance_subscription->start_date) }} {{ streamline_date($insurance_subscription->end_date) }} {{ streamline_date($insurance_subscription->payment_date) }} - @if (date('Y-m-d') < $insurance_subscription->end_date) - {{ __('insurance_reports.active') }} - @else - {{ __('insurance_reports.inactive') }} - @endif -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_tariffs/add_tariff.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_tariffs/add_tariff.blade.php deleted file mode 100644 index c8430a0c..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_tariffs/add_tariff.blade.php +++ /dev/null @@ -1,123 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_benefits.add_tariff') }}

    -
    - -
    - - @include('insurance::insurance_benefits.menu') - -
    - @include('flash::message') - -

    {{ __('insurance_benefits.insurance_benefit') }}: {{ $benefit->name }}

    -

    {{ __('insurance_benefits.item_type') }}: {{ [1 => 'Services', 2 => 'Procedures', 3 => 'Investigations', 4 => 'Drugs', 5 => 'Sundries'][$item_type] }}

    -

    {{ __('insurance_benefits.item_name') }}: {{ $item_name }}

    - -
    - - {{ Form::open(['route' => 'insurance_tariffs.save_tariff']) }} - - {{ Form::hidden('benefit_id', $benefit->id, ['id' => 'benefit_id']) }} - {{ Form::hidden('item_id', $item_id, ['id' => 'item_id']) }} - {{ Form::hidden('item_type', $item_type, ['id' => 'item_type']) }} - -
    -
    -
    - {{ Form::label('tariff_name', __('insurance_benefits.tariff_name')) }} - {{ Form::text('tariff_name', '', ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('cash_price', __('insurance_benefits.cash_price')) }} - {{ Form::number('cash_price', $item_cash_price, ['class' => 'form-control', 'readonly']) }} -
    - -
    - {{ Form::label('co_payment', __('insurance_benefits.co_payment')) }} - {{ Form::number('co_payment', $co_payment, ['class' => 'form-control', 'readonly']) }} -
    - -
    - {{ Form::label('ipd_co_payment', __('insurance_benefits.ipd_co_payment')) }} - {{ Form::number('ipd_co_payment', $ipd_co_payment, ['class' => 'form-control', 'readonly']) }} -
    - -
    - {{ Form::label('age_limit', __('insurance_benefits.age_limit')) }} - -
    -
    -
    - {{ Form::label('age_limit_start',__('insurance_benefits.start')) }} - {{ Form::number('age_limit_start','',['class' => 'form-control compulsory']) }} -
    -
    -
    -
    - {{ Form::label('age_limit_end',__('insurance_benefits.end')) }} - {{ Form::number('age_limit_end','',['class' => 'form-control compulsory']) }} -
    -
    -
    -
    - -
    - {{ Form::label('age_type', __('insurance_benefits.age_type')) }} - {{ Form::select('age_type', [0 => 'Days', 1 => 'Months', 2 => 'Years'], 2, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    - {{ Form::label('gender', __('insurance_benefits.gender')) }} - {{ Form::select('gender', [0 => 'All', 1 => 'Male', 2 => 'Female'], 0, ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('authorisation', __('insurance_benefits.authorisation')) }} - -

    - - {{ Form::radio('authorisation', 1, false, ['required']) }} Yes    - {{ Form::radio('authorisation', 0, false, ['required']) }} No -
    - -
    - {{ Form::label('tariff_price', __('insurance_benefits.tariff_price')) }} - {{ Form::number('tariff_price', '', ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('ipd_tariff_price', __('insurance_benefits.ipd_tariff_price')) }} - {{ Form::number('ipd_tariff_price', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - - {{ Form::button(__('insurance_groups.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('insurance_groups.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_tariffs/edit.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_tariffs/edit.blade.php deleted file mode 100644 index c6e07a8b..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_tariffs/edit.blade.php +++ /dev/null @@ -1,122 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_benefits.edit_tariff') }}

    -
    - -
    - - @include('insurance::insurance_benefits.menu') - -
    - @include('flash::message') - -

    {{ __('insurance_benefits.insurance_benefit') }}: {{ $benefit->name }}

    -

    {{ __('insurance_benefits.item_type') }}: {{ [1 => 'Services', 2 => 'Procedures', 3 => 'Investigations', 4 => 'Drugs', 5 => 'Sundries'][$item_type] }}

    -

    {{ __('insurance_benefits.item_name') }}: {{ $item_name }}

    - -
    - - {{ Form::open(['route' => 'insurance_tariffs.update_tariff']) }} - - {{ Form::hidden('tariff_id', $tariff->id, ['id' => 'benefit_id']) }} - -
    -
    -
    - {{ Form::label('name', __('insurance_benefits.tariff_name')) }} - {{ Form::text('name', $tariff->name, ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('cash_price', __('insurance_benefits.cash_price')) }} - {{ Form::number('cash_price', $item_cash_price, ['class' => 'form-control', 'readonly']) }} -
    - -
    - {{ Form::label('co_payment', __('insurance_benefits.co_payment')) }} - {{ Form::number('co_payment', $co_payment, ['class' => 'form-control', 'readonly']) }} -
    - -
    - {{ Form::label('ipd_co_payment', __('insurance_benefits.ipd_co_payment')) }} - {{ Form::number('ipd_co_payment', $ipd_co_payment, ['class' => 'form-control', 'readonly']) }} -
    - -
    - {{ Form::label('age_limit', __('insurance_benefits.age_limit')) }} - @php $age_limits = explode(",", $tariff->age_limit); @endphp - -
    -
    -
    - {{ Form::label('age_limit_start',__('insurance_benefits.start')) }} - {{ Form::number('age_limit_start', $age_limits[0],['class' => 'form-control compulsory']) }} -
    -
    -
    -
    - {{ Form::label('age_limit_end',__('insurance_benefits.end')) }} - {{ Form::number('age_limit_end', $age_limits[1],['class' => 'form-control compulsory']) }} -
    -
    -
    -
    - -
    - {{ Form::label('age_type', __('insurance_benefits.age_type')) }} - {{ Form::select('age_type', [0 => 'Days', 1 => 'Months', 2 => 'Years'], $tariff->age_type, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    - {{ Form::label('gender', __('insurance_benefits.gender')) }} - {{ Form::select('gender', [0 => 'All', 1 => 'Male', 2 => 'Female'], $tariff->gender, ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('authorisation', __('insurance_benefits.authorisation')) }} - -

    - - {{ Form::radio('authorisation', 1, $tariff->authorisation == 1, ['required']) }} Yes    - {{ Form::radio('authorisation', 0, $tariff->authorisation == 0, ['required']) }} No -
    - -
    - {{ Form::label('tariff_price', __('insurance_benefits.tariff_price')) }} - {{ Form::number('tariff_price', $tariff->tariff_price, ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('ipd_tariff_price', __('insurance_benefits.ipd_tariff_price')) }} - {{ Form::number('ipd_tariff_price', $tariff->ipd_tariff_price, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - - {{ Form::button(__('insurance_groups.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('insurance_groups.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_tariffs/view_inactive_tariffs.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_tariffs/view_inactive_tariffs.blade.php deleted file mode 100644 index d739ed75..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_tariffs/view_inactive_tariffs.blade.php +++ /dev/null @@ -1,131 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_benefits.inactive_insurance_tariffs') }}

    -
    - -
    - -
    - - @include('flash::message') - -
    - - - - - - - - - - - - - - - - - - - - - @php - $time_periods = [0 => 'Days', 1 => 'Months', 2 => 'Years']; - $genders = [0 => 'All', 1 => 'Male', 2 => 'Female']; - @endphp - - @foreach($tariffs as $tariff) - @php $age_limits = explode(",", $tariff->age_limit); @endphp - - - - - - - - - - @php - $item_details = get_item_insurance_details($tariff->item_id, $tariff->item_type, $tariff->benefit_id); - $item_cash_price = $item_details ? $item_details['cash_price'] : 0; - $co_payment = $item_details ? $item_details['co_payment'] : 0; - $ipd_co_payment = $item_details ? ($item_details['ipd_co_payment'] ?? 0) : 0; - @endphp - - - - - - - - - @endforeach - - -
    {{ __('insurance_benefits.tariff_name') }}{{ __('insurance_benefits.item_name') }}{{ __('insurance_benefits.item_type') }}{{ __('insurance_benefits.benefit_name') }}{{ __('insurance_benefits.plan_name') }}{{ __('insurance_benefits.gender') }}{{ __('insurance_benefits.age_limit') }}{{ __('insurance_benefits.cash_price') }}{{ __('insurance_benefits.co_payment') }}{{ __('insurance_benefits.tariff_price') }}{{ __('insurance_benefits.ipd_co_payment') }}{{ __('insurance_benefits.ipd_tariff_price') }}{{ __('insurance_benefits.authorisation') }}
    {{ $tariff->name }} - @if ($tariff->item_type == 1) - {{ $services[$tariff->item_id] ?? '' }} - @elseif ($tariff->item_type == 2) - {{ $procedures[$tariff->item_id] ?? '' }} - @elseif ($tariff->item_type == 3) - {{ $investigations[$tariff->item_id] ?? '' }} - @elseif ($tariff->item_type == 4) - {{ $drugs[$tariff->item_id] ?? '' }} - @elseif ($tariff->item_type == 5) - {{ $sundries[$tariff->item_id] ?? '' }} - @endif - - @if ($tariff->item_type == 1) - Services - @elseif ($tariff->item_type == 2) - Procedures - @elseif ($tariff->item_type == 3) - Investigations - @elseif ($tariff->item_type == 4) - Drugs - @elseif ($tariff->item_type == 5) - Sundries - @endif - {{ $insurance_benefits[$tariff->benefit_id] ?? '' }}{{ $insurance_plans[$tariff->plan_id] ?? '' }}{{ ($genders[$tariff->gender] ?? 'All') }}{{ ($age_limits[0] ?? "0") . ' to ' . ($age_limits[1] ?? "0") . ' ' . $time_periods[$tariff->age_type] ?? 'years' }}{{ ugandan_shillings($item_cash_price) }}{{ ugandan_shillings($co_payment) }}{{ ugandan_shillings($tariff->tariff_price) }}{{ ugandan_shillings($ipd_co_payment) }}{{ ugandan_shillings($tariff->ipd_tariff_price) }}{{ ($tariff->authorisation == 1 ? 'Yes' : 'No') }}Restore
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/insurance_tariffs/view_tariffs.blade.php b/docker/statistics/Modules/Insurance/Resources/views/insurance_tariffs/view_tariffs.blade.php deleted file mode 100644 index 4530bbd1..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/insurance_tariffs/view_tariffs.blade.php +++ /dev/null @@ -1,174 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('insurance_benefits.insurance_tariffs') }}

    -
    - -
    - -
    - {{ Form::open(['method'=>'post','route' => 'insurance_tariffs.view_tariffs']) }} - -
    -
    -
    - {{ Form::label('insurance_plan', 'Insurance Plan') }} - {{ Form::select('insurance_plan',$insurance_plans,'',['class'=>'form-control', 'id' => 'insurance_plan']) }} -
    -
    - -
    -
    - {{ Form::label('insurance_benefit', 'Insurance Benefit') }} - {{ Form::select('insurance_benefit',$insurance_benefits,'',['class'=>'form-control', 'id' => 'insurance_benefit']) }} -
    -
    - -
    -
    - {{ Form::submit(__('investigations.search'), ['class'=>'btn btn-success pull-right']) }} -
    -
    -
    - {{ Form::close() }} -
    - -
    - - View deactivated tariffs - -

    - - @include('flash::message') - - @if($search_text != "") -

    -
    - @endif - -
    - - - - - - - - - - - - - - - - - - - - - - @php - $time_periods = [0 => 'Days', 1 => 'Months', 2 => 'Years']; - $genders = [0 => 'All', 1 => 'Male', 2 => 'Female']; - @endphp - - @foreach($tariffs as $tariff) - @php $age_limits = explode(",", $tariff->age_limit); @endphp - - - - - - - - - - @php - $item_details = get_item_insurance_details($tariff->item_id, $tariff->item_type, $tariff->benefit_id); - $item_cash_price = $item_details ? $item_details['cash_price'] : 0; - $co_payment = $item_details ? $item_details['co_payment'] : 0; - $ipd_co_payment = $item_details ? ($item_details['ipd_co_payment'] ?? 0) : 0; - @endphp - - - - - - - - - - @endforeach - - -
    {{ __('insurance_benefits.tariff_name') }}{{ __('insurance_benefits.item_name') }}{{ __('insurance_benefits.item_type') }}{{ __('insurance_benefits.benefit_name') }}{{ __('insurance_benefits.plan_name') }}{{ __('insurance_benefits.gender') }}{{ __('insurance_benefits.age_limit') }}{{ __('insurance_benefits.cash_price') }}{{ __('insurance_benefits.co_payment') }}{{ __('insurance_benefits.tariff_price') }}{{ __('insurance_benefits.ipd_co_payment') }}{{ __('insurance_benefits.ipd_tariff_price') }}{{ __('insurance_benefits.authorisation') }}
    {{ $tariff->name }} - @if ($tariff->item_type == 1) - {{ $services[$tariff->item_id] ?? '' }} - @elseif ($tariff->item_type == 2) - {{ $procedures[$tariff->item_id] ?? '' }} - @elseif ($tariff->item_type == 3) - {{ $investigations[$tariff->item_id] ?? '' }} - @elseif ($tariff->item_type == 4) - {{ $drugs[$tariff->item_id] ?? '' }} - @elseif ($tariff->item_type == 5) - {{ $sundries[$tariff->item_id] ?? '' }} - @endif - - @if ($tariff->item_type == 1) - Services - @elseif ($tariff->item_type == 2) - Procedures - @elseif ($tariff->item_type == 3) - Investigations - @elseif ($tariff->item_type == 4) - Drugs - @elseif ($tariff->item_type == 5) - Sundries - @endif - {{ $insurance_benefits[$tariff->benefit_id] ?? '' }}{{ $insurance_plans[$tariff->plan_id] ?? '' }}{{ ($genders[$tariff->gender] ?? 'All') }}{{ ($age_limits[0] ?? "0") . ' to ' . ($age_limits[1] ?? "0") . ' ' . $time_periods[$tariff->age_type] ?? 'years' }}{{ ugandan_shillings($item_cash_price) }}{{ ugandan_shillings($co_payment) }}{{ ugandan_shillings($tariff->tariff_price) }}{{ ugandan_shillings($ipd_co_payment) }}{{ ugandan_shillings($tariff->ipd_tariff_price) }}{{ ($tariff->authorisation == 1 ? 'Yes' : 'No') }}@if(Auth::user()->can('insurance-tariffs-edit')) Edit@endif@if(Auth::user()->can('insurance-tariffs-delete')) Deactivate@endif
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/person_titles/create.blade.php b/docker/statistics/Modules/Insurance/Resources/views/person_titles/create.blade.php deleted file mode 100644 index 98f5b46a..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/person_titles/create.blade.php +++ /dev/null @@ -1,43 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('person_titles.add_person_title') }}

    -
    - -
    - -@include('insurance::person_titles.menu') - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'person_titles.store', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name',__('person_titles.title'))}} - {{ Form::text('name','',['class' => 'form-control compulsory', 'required', 'placeholder'=>'e.g. Mrs']) }} -
    -
    - - {{ Form::button(__('person_titles.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('person_titles.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/Insurance/Resources/views/person_titles/edit.blade.php b/docker/statistics/Modules/Insurance/Resources/views/person_titles/edit.blade.php deleted file mode 100644 index f853ec5a..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/person_titles/edit.blade.php +++ /dev/null @@ -1,44 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('person_titles.edit_person_titles') }}

    -
    - -
    - -@include('insurance::person_titles.menu') - -
    -
    - - @include('flash::message') -
    - {{ Form::model($person_title, ['method' => 'PUT', 'route' => ['person_titles.update',$person_title], 'data-toggle' => 'validator']) }} - -
    - {{ Form::hidden('id', $person_title->id) }} - {{ Form::label('name', __('person_titles.title')) }} - {{ Form::text('name', $person_title->name, ['class' => 'form-control compulsory', 'required', 'placeholder'=>'e.g. Mrs']) }} -
    -
    - - {{ Form::button(__('person_titles.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('person_titles.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/Insurance/Resources/views/person_titles/inactive.blade.php b/docker/statistics/Modules/Insurance/Resources/views/person_titles/inactive.blade.php deleted file mode 100644 index 470bf465..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/person_titles/inactive.blade.php +++ /dev/null @@ -1,84 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('person_titles.activate_person_titles') }}

    -
    -
    - -
    -
    - -@include('insurance::person_titles.menu') - -
    -
    - @include('flash::message') -
    -

    {{ __('person_titles.export_data') }}

    -
    - - - - - - - - - - - - - - @foreach($person_titles as $person_title) - - - - - @endforeach - -
    {{ __('person_titles.title') }}
    {{ __('person_titles.title') }}
    {{ $person_title->name }} - {{ Form::model($person_title->id ,['method' => 'POST', 'route' => ['person_titles.activate', $person_title->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Insurance/Resources/views/person_titles/index.blade.php b/docker/statistics/Modules/Insurance/Resources/views/person_titles/index.blade.php deleted file mode 100644 index 7b3d5286..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/person_titles/index.blade.php +++ /dev/null @@ -1,88 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('person_titles.person_titles') }}

    -
    - -
    - - @include('insurance::person_titles.menu') - -
    -
    - @include('flash::message') -
    -

    {{ __('person_titles.export_data') }}

    -
    - - - - - - - - - - - - - - - - - @foreach($person_titles as $person_title) - - - - - - @endforeach - -
    {{ __('person_titles.title') }}
    {{ __('person_titles.title') }}
    {{ $person_title->name}} - {{ __('person_titles.edit') }} - - {{ Form::model($person_title->id ,['method' => 'DELETE', 'route' => ['person_titles.destroy', $person_title->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Insurance/Resources/views/person_titles/menu.blade.php b/docker/statistics/Modules/Insurance/Resources/views/person_titles/menu.blade.php deleted file mode 100644 index e364c494..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/person_titles/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    - -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/risks/create.blade.php b/docker/statistics/Modules/Insurance/Resources/views/risks/create.blade.php deleted file mode 100644 index fa35c7d6..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/risks/create.blade.php +++ /dev/null @@ -1,73 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('risks.risk') }}

    -
    -
    - -
    -
    - -@include('insurance::risks.menu') - -
    -
    - - @include('flash::message') -
    - @if ($errors->any()) -
    - Whoops! There were some problems with your input.

    -
      - @foreach ($errors->all() as $error) -
    • {{ $error }}
    • - @endforeach -
    -
    - @endif -
    -
    - {{ Form::open(['route' => 'risks.store', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('risks.risk_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('code', __('risks.risk_code')) }} - {{ Form::text('code', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('factor', __('risks.risk_factor')) }} - {{ Form::number('factor', '', ['class' => 'form-control compulsory', 'required', 'data-error' => '', 'step' => '0.001', 'min' => 0]) }} -
    -
    - -
    - {{ Form::label('amount', __('risks.risk_amount')) }} - {{ Form::number('amount', '', ['class' => 'form-control compulsory', 'required', 'data-error' => '', 'step' => '0.01', 'min' => 0]) }} -
    -
    -
    - {{ Form::button(__('risks.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('risks.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/risks/edit.blade.php b/docker/statistics/Modules/Insurance/Resources/views/risks/edit.blade.php deleted file mode 100644 index 0ea1cf77..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/risks/edit.blade.php +++ /dev/null @@ -1,73 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('risks.risk') }}

    -
    -
    - -
    -
    - -@include('insurance::risks.menu') - -
    -
    - - @include('flash::message') -
    - @if ($errors->any()) -
    - Whoops! There were some problems with your input.

    -
      - @foreach ($errors->all() as $error) -
    • {{ $error }}
    • - @endforeach -
    -
    - @endif - {{ Form::model($risk, ['method' => 'PUT', 'route' => ['risks.update', $risk], 'data-toggle' =>'validator']) }} -
    -
    - -
    - {{ Form::label('name', __('risks.risk_name')) }} - {{ Form::text('name', $risk->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('code', __('risks.risk_code')) }} - {{ Form::text('code', $risk->code, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('factor', __('risks.risk_factor')) }} - {{ Form::number('factor', $risk->factor, ['class' => 'form-control compulsory', 'step' => '0.001', 'required', 'data-error' => '', 'min' => 0]) }} -
    -
    - -
    - {{ Form::label('amount', __('risks.risk_amount')) }} - {{ Form::number('amount', $risk->amount, ['class' => 'form-control compulsory', 'required', 'data-error' => '', 'step' => '0.01', 'min' => 0]) }} -
    -
    -
    - {{ Form::button(__('risks.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('risks.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/Insurance/Resources/views/risks/inactive.blade.php b/docker/statistics/Modules/Insurance/Resources/views/risks/inactive.blade.php deleted file mode 100644 index 5dc4bd9c..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/risks/inactive.blade.php +++ /dev/null @@ -1,106 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('risks.risk') }}

    -
    -
    - -
    -
    - -@include('insurance::risks.menu') - -
    -
    - @include('flash::message') -
    -
    - - - - - - - - - - - - - - - @php $counter = 1; @endphp - @foreach($risks as $risk) - - - - - - - - - - - @php $counter++; @endphp - @endforeach - - - - - - - - - - - - - -
    #{{ __('risks.risk_name') }}{{ __('risks.risk_code') }}{{ __('risks.risk_factor') }}{{ __('risks.risk_amount') }}{{ __('risks.creator') }}{{ __('risks.date') }}Actions
    {{ $counter }}{{ $risk->name }}{{ $risk->code }}{{ $risk->factor }}{{ ugandan_shillings($risk->amount) }}{{ get_full_name($risk->created_by, "id", 'first_name', 'last_name', 'users') }}{{ streamline_date_time_short($risk->created_at) }} - {{ Form::model($risk->id ,['method' => 'POST', 'route' => ['risks.activate', $risk->id]]) }} - - {{ Form::close() }} -
    #{{ __('risks.risk_name') }}{{ __('risks.risk_code') }}{{ __('risks.risk_factor') }}{{ __('risks.risk_amount') }}{{ __('risks.creator') }}{{ __('risks.date') }}Actions
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Insurance/Resources/views/risks/index.blade.php b/docker/statistics/Modules/Insurance/Resources/views/risks/index.blade.php deleted file mode 100644 index a8ca196c..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/risks/index.blade.php +++ /dev/null @@ -1,123 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('risks.risk') }}

    -
    -
    - -
    -
    - -@include('insurance::risks.menu') - -
    -
    - @include('flash::message') -
    - @if (session('success')) -
    - {{ session('success') }} -
    - @endif -

    {{ __('risks.export_data_to_csv_excel_print') }}

    -
    - - - - - - - - - - - - - - - @php $counter = 1; @endphp - @foreach($risks as $risk) - - - - - - - - - - - @php $counter++; @endphp - @endforeach - - - - - - - - - - - - - -
    #{{ __('risks.risk_name') }}{{ __('risks.risk_code') }}{{ __('risks.risk_factor') }}{{ __('risks.risk_amount') }}{{ __('risks.creator') }}{{ __('risks.date') }}Actions
    {{ $counter }}{{ $risk->name }}{{ $risk->code }}{{ $risk->factor }}{{ ugandan_shillings($risk->amount) }}{{ get_full_name($risk->created_by, "id", 'first_name', 'last_name', 'users') }}{{ streamline_date_time_short($risk->created_at) }} - @if (Auth::user()->can('insurance-risk-edit')) - {{ __('risks.edit') }} - @endif - - {{ __('risks.view') }} - - @if (Auth::user()->can('insurance-risk-delete')) - {{ Form::model($risk->id ,['method' => 'DELETE', 'route' => ['risks.destroy', $risk->id]]) }} - - {{ Form::close() }} - @endif - -
    #{{ __('risks.risk_name') }}{{ __('risks.risk_code') }}{{ __('risks.risk_factor') }}{{ __('risks.risk_amount') }}{{ __('risks.creator') }}{{ __('risks.date') }}Actions
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Insurance/Resources/views/risks/menu.blade.php b/docker/statistics/Modules/Insurance/Resources/views/risks/menu.blade.php deleted file mode 100644 index 4b6e9044..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/risks/menu.blade.php +++ /dev/null @@ -1,13 +0,0 @@ -
    -
    - @if (Auth::user()->can('insurance-risk-list')) - View Risks - @endif - @if (Auth::user()->can('insurance-risk-create')) - Add a Risk - @endif - @if (Auth::user()->can('insurance-risk-delete')) - Inactive Risks - @endif -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Resources/views/risks/show.blade.php b/docker/statistics/Modules/Insurance/Resources/views/risks/show.blade.php deleted file mode 100644 index c1e9703c..00000000 --- a/docker/statistics/Modules/Insurance/Resources/views/risks/show.blade.php +++ /dev/null @@ -1,58 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('risks.risk') }}

    -
    -
    - -
    -
    -@include('insurance::risks.menu') -
    -
    -
    -
    -
    -
    - {{ __('risks.risk_name') }}: - {{ $risk->name }} -
    -
    -
    -
    - {{ __('risks.risk_code') }}: - {{ $risk->code }} -
    -
    -
    -
    - {{ __('risks.risk_factor') }}: - {{ $risk->factor }} -
    -
    -
    -
    - {{ __('risks.risk_amount') }}: - {{ $risk->amount }} -
    -
    -
    -
    -
    -
    -@endsection \ No newline at end of file diff --git a/docker/statistics/Modules/Insurance/Routes/api.php b/docker/statistics/Modules/Insurance/Routes/api.php deleted file mode 100644 index 1759004b..00000000 --- a/docker/statistics/Modules/Insurance/Routes/api.php +++ /dev/null @@ -1,18 +0,0 @@ -get('/insurance', function () { - return "Insurance"; -}); diff --git a/docker/statistics/Modules/Insurance/Routes/web.php b/docker/statistics/Modules/Insurance/Routes/web.php deleted file mode 100644 index 956ab483..00000000 --- a/docker/statistics/Modules/Insurance/Routes/web.php +++ /dev/null @@ -1,170 +0,0 @@ - ['auth', 'disablebackbutton', 'user-locale','subscription-tracking', 'password-expiry']], function () { - /* plan resources */ - Route::get('/community_health_insurance_plan/inactive', 'CommunityHealthInsurancePlanController@inactive')->name('community_health_insurance_plan.inactive'); - Route::post('/community_health_insurance_plan/activate{id}', 'CommunityHealthInsurancePlanController@activate')->name('community_health_insurance_plan.activate'); - Route::resource('community_health_insurance_plan', 'CommunityHealthInsurancePlanController'); - Route::any('community_health_insurance_plan/{id}/print', 'CommunityHealthInsurancePlanController@print'); - - // Insurance Benefits - Route::get('/insurance_benefits/inactive', 'InsuranceBenefitController@inactive')->name('insurance_benefits.inactive'); - Route::post('/insurance_benefits/activate{id}', 'InsuranceBenefitController@activate')->name('insurance_benefits.activate'); - Route::any('/insurance_benefits/details/{id}', 'InsuranceBenefitController@details')->name('insurance_benefits.details'); - Route::any('/insurance_benefits/add_items/{id}/{item_type}', 'InsuranceBenefitController@add_items')->name('insurance_benefits.add_items'); - Route::any('/insurance_benefits/save_items', 'InsuranceBenefitController@save_items')->name('insurance_benefits.save_items'); - Route::any('/insurance_benefits/view_items/{id}/{item_type}', 'InsuranceBenefitController@view_items')->name('insurance_benefits.view_items'); - Route::any('/insurance_benefits/remove_item/{item_id}/{item_type}/{benefit_id}', 'InsuranceBenefitController@remove_item')->name('insurance_benefits.remove_item'); - Route::any('/insurance_benefits/edit_items/{id}/{item_type}', 'InsuranceBenefitController@edit_items')->name('insurance_benefits.edit_items'); - Route::any('/insurance_benefits/update_items', 'InsuranceBenefitController@update_items')->name('insurance_benefits.update_items'); - Route::any('/insurance_benefits/view_inpatient_accommodation/{id}', 'InsuranceBenefitController@view_inpatient_accommodation')->name('insurance_benefits.view_inpatient_accommodation'); - Route::any('/insurance_benefits/add_inpatient_accommodation/{id}', 'InsuranceBenefitController@add_inpatient_accommodation')->name('insurance_benefits.add_inpatient_accommodation'); - Route::any('/insurance_benefits/save_inpatient_accommodation', 'InsuranceBenefitController@save_inpatient_accommodation')->name('insurance_benefits.save_inpatient_accommodation'); - Route::any('/insurance_benefits/view_accommodation_details/{id}', 'InsuranceBenefitController@view_accommodation_details')->name('insurance_benefits.view_accommodation_details'); - Route::any('/insurance_benefits/edit_inpatient_accommodation/{id}', 'InsuranceBenefitController@edit_inpatient_accommodation')->name('insurance_benefits.edit_inpatient_accommodation'); - Route::any('/insurance_benefits/delete_inpatient_accommodation/{id}', 'InsuranceBenefitController@delete_inpatient_accommodation')->name('insurance_benefits.delete_inpatient_accommodation'); - Route::any('/insurance_benefits/update_inpatient_accommodation', 'InsuranceBenefitController@update_inpatient_accommodation')->name('insurance_benefits.update_inpatient_accommodation'); - Route::resource('insurance_benefits', 'InsuranceBenefitController'); - - // Insurance Claims - Route::any('/insurance_claims/view_incoming_authorisations', 'InsuranceClaimsController@view_incoming_authorisations')->name('insurance_claims.view_incoming_authorisations'); - Route::any('/insurance_claims/view_incoming_authorisation_details/{id}', 'InsuranceClaimsController@view_incoming_authorisation_details')->name('insurance_claims.view_incoming_authorisation_details'); - Route::any('/insurance_claims/authorise_item/{id}/{position}', 'InsuranceClaimsController@authorise_item')->name('insurance_claims.authorise_item'); - Route::any('/insurance_claims/authorise_claim/{id}', 'InsuranceClaimsController@authorise_claim')->name('insurance_claims.authorise_claim'); - Route::any('/insurance_claims/authorise_all_claims', 'InsuranceClaimsController@authorise_all_claims')->name('insurance_claims.authorise_all_claims'); - Route::any('/insurance_claims/incoming_claim_adjudication_errors', 'InsuranceClaimsController@incoming_claim_adjudication_errors')->name('insurance_claims.incoming_claim_adjudication_errors'); - Route::any('/insurance_claims/incoming_claim_adjudication_errors_details/{id}', 'InsuranceClaimsController@incoming_claim_adjudication_errors_details')->name('insurance_claims.incoming_claim_adjudication_errors_details'); - Route::any('/insurance_claims/override_plan_validity/{id}', 'InsuranceClaimsController@override_plan_validity')->name('insurance_claims.override_plan_validity'); - Route::any('/insurance_claims/override_benefit_period/{id}/{position}', 'InsuranceClaimsController@override_benefit_period')->name('insurance_claims.override_benefit_period'); - Route::any('/insurance_claims/override_benefit_limit/{id}/{position}', 'InsuranceClaimsController@override_benefit_limit')->name('insurance_claims.override_benefit_limit'); - Route::any('/insurance_claims/override_item_limit/{id}/{position}', 'InsuranceClaimsController@override_item_limit')->name('insurance_claims.override_item_limit'); - Route::any('/insurance_claims/override_plan_limit/{id}/{position}', 'InsuranceClaimsController@override_plan_limit')->name('insurance_claims.override_plan_limit'); - - /* Insurance */ - Route::get('/insurance/product_setup', 'InsuranceController@product_setup')->name('insurance.product_setup'); - Route::get('/insurance/scheme_administration', 'InsuranceController@scheme_administration')->name('insurance.scheme_administration'); - Route::resource('insurance', 'InsuranceController'); - - // Insurance Disease Groups - Route::get('/insurance_disease_groups/index', 'InsuranceDiseaseGroupsController@index')->name('insurance_disease_groups.index'); - Route::get('/insurance_disease_groups/create', 'InsuranceDiseaseGroupsController@create')->name('insurance_disease_groups.create'); - Route::post('/insurance_disease_groups/store', 'InsuranceDiseaseGroupsController@store')->name('insurance_disease_groups.store'); - Route::get('/insurance_disease_groups/edit/{id}', 'InsuranceDiseaseGroupsController@edit')->name('insurance_disease_groups.edit'); - Route::post('/insurance_disease_groups/update', 'InsuranceDiseaseGroupsController@update')->name('insurance_disease_groups.update'); - Route::get('/insurance_disease_groups/delete/{id}', 'InsuranceDiseaseGroupsController@delete')->name('insurance_disease_groups.delete'); - Route::get('/insurance_disease_groups/inactive', 'InsuranceDiseaseGroupsController@inactive')->name('insurance_disease_groups.inactive'); - Route::get('/insurance_disease_groups/restore/{id}', 'InsuranceDiseaseGroupsController@restore')->name('insurance_disease_groups.restore'); - Route::get('/insurance_disease_groups/details/{id}', 'InsuranceDiseaseGroupsController@details')->name('insurance_disease_groups.details'); - - /* Insurance Groups Routes */ - Route::get('/insurance_groups/inactive', 'InsuranceGroupController@inactive')->name('insurance_groups.inactive'); - Route::post('/insurance_groups/activate{id}', 'InsuranceGroupController@activate')->name('insurance_groups.activate'); - Route::get('/insurance_groups/insurance_group_details/{id}', 'InsuranceGroupController@insurance_group_details')->name('insurance_groups.insurance_group_details'); - Route::post('/insurance_groups/search_by_group', 'InsuranceGroupController@searchByGroup')->name('insurance_groups.search_by_group'); - Route::resource('insurance_groups', 'InsuranceGroupController'); - Route::any('get_families_of_group/{group_id}', 'InsuranceGroupController@get_families_of_group'); - - /* Insurance Member Routes */ - Route::get('/insurance_members/inactive', 'InsuranceMembersController@inactive')->name('insurance_members.inactive'); - Route::post('/insurance_members/activate{id}', 'InsuranceMembersController@activate')->name('insurance_members.activate'); - Route::any('/insurance_members/add_existing_patient_to_insurance', 'InsuranceMembersController@add_existing_patient_to_insurance')->name('insurance_members.add_existing_patient_to_insurance'); - Route::any('/insurance_members/create_insurance_patient', 'InsuranceMembersController@create_insurance_patient')->name('insurance_members.create_insurance_patient'); - Route::get('/insurance_members/update_patient_info/{id}', 'InsuranceMembersController@update_patient_info')->name('insurance_members.update_patient_info'); - Route::get('/insurance_members/details/{id}', 'InsuranceMembersController@details')->name('insurance_members.details'); - Route::any('/insurance_members/search', 'InsuranceMembersController@search')->name('insurance_members.search'); - Route::any('/insurance_members/search_inactive', 'InsuranceMembersController@searchInactive')->name('insurance_members.search_inactive'); - Route::resource('insurance_members', 'InsuranceMembersController'); - Route::any('/update_insurance_heads_of_family_table_with_family_details', 'InsuranceMembersController@update_insurance_heads_of_family_table_with_family_details'); - Route::any('/get_chi_plan_amount/{chi_plan_id}', 'InsuranceMembersController@get_chi_plan_amount'); - Route::any('/get_family_group_id/{family_id}', 'InsuranceMembersController@get_family_group_id'); - Route::any('/pre_existing_premiums_report', 'InsuranceMembersController@pre_existing_premiums_report')->name('insurance_members.pre_existing_premiums_report'); - - /* Insurance Premiums Routes */ - Route::any('/insurance_premiums/print_receipt', 'InsurancePremiumsController@print_receipt')->name('insurance_premiums.print_receipt'); - Route::any('/insurance_premiums/insurance_receipts', 'InsurancePremiumsController@insurance_receipts')->name('insurance_premiums.insurance_receipts'); - Route::any('/insurance_premiums/group_details/{id}', 'InsurancePremiumsController@group_details')->name('insurance_premiums.group_details'); - Route::any('/insurance_premiums/single_group_receipt/', 'InsurancePremiumsController@single_group_receipt')->name('insurance_premiums.single_group_receipt'); - Route::any('/insurance_premiums/single_group_receipt_store/', 'InsurancePremiumsController@single_group_receipt_store')->name('insurance_premiums.single_group_receipt_store'); - Route::any('/insurance_premiums/single_group_receipt_history/', 'InsurancePremiumsController@single_group_receipt_history')->name('insurance_premiums.single_group_receipt_history'); - Route::any('/insurance_premiums/reprint_single_group_receipt/{id}', 'InsurancePremiumsController@reprint_single_group_receipt')->name('insurance_premiums.reprint_single_group_receipt'); - Route::any('/insurance_premiums/renew_premium/', 'InsurancePremiumsController@renew_premium')->name('insurance_premiums.renew_premium'); - Route::any('/insurance_premiums/renew_premium_store/', 'InsurancePremiumsController@renew_premium_store')->name('insurance_premiums.renew_premium_store'); - Route::resource('insurance_premiums', 'InsurancePremiumsController'); - - Route::get('insurance_premiums_receipt_snappy/{serialized_data}', 'InsurancePremiumsController@insurance_premiums_receipt_snappy'); - Route::get('insurance_premiums_family_receipt_snappy/{serialized_data}', 'InsurancePremiumsController@insurance_premiums_family_receipt_snappy'); - Route::get('print_single_group_receipt_snappy/{serialized_data}', 'InsurancePremiumsController@print_single_group_receipt_snappy'); - - Route::any('/insurance_premiums/print_group_receipt/{subscription_id}', 'InsurancePremiumsController@print_group_receipt')->name('insurance_premiums.print_group_receipt'); - - Route::any('view_chi_family_members/{family_head_id}', 'InsurancePremiumsController@view_chi_family_members'); - Route::any('/insurance_premiums/remove_member_from_family/{family_head_id}/{member_id}', 'InsurancePremiumsController@remove_member_from_family'); - Route::any('/remove_chi_family_from_group/{family_head_id}/{group_id}', 'InsurancePremiumsController@remove_chi_family_from_group'); - - Route::any('add_new_family_members_dynamically', 'InsurancePremiumsController@add_new_family_members_dynamically'); - Route::any('insurance_premiums/edit_family_head/{family_head_id}/{member_id}', 'InsurancePremiumsController@edit_family_head'); - - Route::any('cancel_insurance_premiums', 'InsurancePremiumsController@cancel_insurance_premiums')->name('insurance_premiums.cancel_insurance_premiums'); - Route::any('insurance_members/cancel_premium/{member_id}/{subscription_id}', 'InsurancePremiumsController@cancel_premium'); - Route::any('remove_member_from_group_premium/{family_id}/{member_id}', 'InsurancePremiumsController@remove_member_from_group_premium'); - Route::any('edit_insurance_premiums_payment/{group_id}', 'InsurancePremiumsController@edit_insurance_premiums_payment'); - Route::any('edit_single_group_premiums_payment/{group_id}', 'InsurancePremiumsController@edit_single_group_premiums_payment'); - Route::any('remove_family_from_group_premium/{family_id}', 'InsurancePremiumsController@remove_family_from_group_premium'); - Route::any('insurance_members/cancel_family_premium/{family_id}', 'InsurancePremiumsController@cancel_family_premium'); - - Route::any('/get_expected_chi_group_amount/{group_id}', 'InsurancePremiumsController@get_expected_chi_group_amount'); - - /* Insurance Reports Routes */ - Route::any('/insurance_reports/index', 'InsuranceReportsController@index')->name('insurance_reports.index'); - Route::any('/insurance_reports/view_expiry_status', 'InsuranceReportsController@view_expiry_status')->name('insurance_reports.view_expiry_status'); - Route::any('/insurance_reports/view_expiry_status_details/{id}', 'InsuranceReportsController@view_expiry_status_details')->name('insurance_reports.view_expiry_status_details'); - Route::any('/insurance_reports/expired_insurance', 'InsuranceReportsController@expired_insurance')->name('insurance_reports.expired_insurance'); - Route::any('/insurance_reports/expired_insurance_details/{id}', 'InsuranceReportsController@expired_insurance_details')->name('insurance_reports.expired_insurance_details'); - Route::any('/insurance_reports/insurance_transactions', 'InsuranceReportsController@insurance_transactions')->name('insurance_reports.insurance_transactions'); - Route::any('/insurance_reports/cumulative_premiums_report', 'InsuranceReportsController@cumulative_premiums_report')->name('insurance_reports.cumulative_premiums_report'); - Route::any('/insurance_reports/group_premiums_report', 'InsuranceReportsController@group_premiums_report')->name('insurance_reports.group_premiums_report'); - Route::any('/insurance_reports/insurance_income_received', 'InsuranceReportsController@insurance_income_received')->name('insurance_reports.insurance_income_received'); - Route::any('/insurance_reports/insurance_income_received_details', 'InsuranceReportsController@insurance_income_received_details')->name('insurance_reports.insurance_income_received_details'); - Route::any('/insurance_reports/insurance_deposit_income', 'InsuranceReportsController@insurance_deposit_income')->name('insurance_reports.insurance_deposit_income'); - Route::any('/insurance_reports/insurance_expenditure', 'InsuranceReportsController@insurance_expenditure')->name('insurance_reports.insurance_expenditure'); - Route::any('/insurance_reports/insurance_expenditure_details/{item_type}', 'InsuranceReportsController@insurance_expenditure_details')->name('insurance_reports.insurance_expenditure_details'); - Route::any('/insurance_reports/total_insurance_expenditure_redirect', 'InsuranceReportsController@total_insurance_expenditure_redirect')->name('insurance_reports.total_insurance_expenditure_redirect'); - Route::any('expired_premiums_search', 'InsuranceReportsController@expired_premiums_search'); - - // Insurance Tariffs - Route::any('/insurance_tariffs/get_item_tariffs/{benefit_id}/{item_id}/{item_type}', 'InsuranceTariffsController@get_item_tariffs')->name('insurance_tariffs.get_item_tariffs'); - Route::any('/insurance_tariffs/add_tariff/{benefit_id}/{item_id}/{item_type}', 'InsuranceTariffsController@add_tariff')->name('insurance_tariffs.add_tariff'); - Route::post('/insurance_tariffs/save_tariff', 'InsuranceTariffsController@save_tariff')->name('insurance_tariffs.save_tariff'); - Route::get('/insurance_tariffs/edit/{id}', 'InsuranceTariffsController@edit')->name('insurance_tariffs.edit'); - Route::post('/insurance_tariffs/update_tariff', 'InsuranceTariffsController@update_tariff')->name('insurance_tariffs.update_tariff'); - Route::any('/insurance_tariffs/delete/{id}', 'InsuranceTariffsController@delete')->name('insurance_tariffs.delete'); - Route::any('/insurance_tariffs/view_tariffs', 'InsuranceTariffsController@view_tariffs')->name('insurance_tariffs.view_tariffs'); - Route::any('/insurance_tariffs/view_inactive_tariffs', 'InsuranceTariffsController@view_inactive_tariffs')->name('insurance_tariffs.view_inactive_tariffs'); - Route::any('/insurance_tariffs/activate_tariff/{id}', 'InsuranceTariffsController@activate_tariff')->name('insurance_tariffs.activate_tariff'); - - /* person titles resource */ - Route::get('/person_titles/inactive', 'PersonTitleController@inactive')->name('person_titles.inactive'); - Route::post('/person_titles/activate{id}', 'PersonTitleController@activate')->name('person_titles.activate'); - Route::resource('person_titles', 'PersonTitleController'); - - /*Insurance Risks*/ - Route::resource('risks', 'RiskController'); - Route::get('risks_inactive', 'RiskController@inactive')->name('risks.inactive'); - Route::post('risks_activate/{id}', 'RiskController@activate')->name('risks.activate'); - - /* Insurance Heads of Family Routes */ - Route::get('/heads_of_family/inactive', 'HeadsOfFamilyController@inactive')->name('heads_of_family.inactive'); - Route::post('/heads_of_family/activate{id}', 'HeadsOfFamilyController@activate')->name('heads_of_family.activate'); - Route::any('view_family_members_of_head/{family_head_id}', 'HeadsOfFamilyController@view_family_members_of_head'); - Route::any('change_family_head/{current_head}/{member_id}', 'HeadsOfFamilyController@change_family_head'); - Route::any('family_head/search', 'HeadsOfFamilyController@search')->name('heads_of_family.search'); - Route::any('/search_family_head_by_name_number', 'HeadsOfFamilyController@search_family_head_by_name_number'); - Route::resource('heads_of_family', 'HeadsOfFamilyController'); - - Route::get('/insurance_card_print_index', 'InsuranceMembersController@insurance_card_print_index')->name('insurance_card_print_index'); - Route::post('/print_insurance_cards', 'InsuranceMembersController@print_insurance_cards')->name('print_insurance_cards'); - - Route::get('/search_insured_patient_by_name_or_number', 'InsuranceMembersController@search_insured_patient_by_name_or_number')->name('insurance.search_insured_patient_by_name_or_number'); -}); diff --git a/docker/statistics/Modules/Insurance/bitbucket-pipelines.yml b/docker/statistics/Modules/Insurance/bitbucket-pipelines.yml deleted file mode 100644 index e850a8fd..00000000 --- a/docker/statistics/Modules/Insurance/bitbucket-pipelines.yml +++ /dev/null @@ -1,19 +0,0 @@ -image: alpine/git:latest - -pipelines: - branches: - main: - - step: - name: Merge To Beta - script: - - git remote set-url origin https://Kabricks:${APP_SECRET}@bitbucket.org/dcsammi/${BITBUCKET_REPO_SLUG} - - git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*" - - git fetch - - git checkout beta - - git merge main - - git commit --amend -m "[skip ci] Merge changes from main" - - git push - - step: - name: Deploy To Test - script: - - echo "Ready to deploy to demo or production!" diff --git a/docker/statistics/Modules/Insurance/module.json b/docker/statistics/Modules/Insurance/module.json deleted file mode 100644 index 20aac5be..00000000 --- a/docker/statistics/Modules/Insurance/module.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "Insurance", - "alias": "insurance", - "description": "Insurance", - "keywords": [], - "priority": 0, - "providers": [ - "Modules\\Insurance\\Providers\\InsuranceServiceProvider" - ], - "files": [] -} diff --git a/docker/statistics/Modules/Investigations/Config/config.php b/docker/statistics/Modules/Investigations/Config/config.php deleted file mode 100644 index ce26d688..00000000 --- a/docker/statistics/Modules/Investigations/Config/config.php +++ /dev/null @@ -1,5 +0,0 @@ - 'Investigations' -]; diff --git a/docker/statistics/Modules/Investigations/Http/Controllers/Controller.php b/docker/statistics/Modules/Investigations/Http/Controllers/Controller.php deleted file mode 100755 index ca0e4fe0..00000000 --- a/docker/statistics/Modules/Investigations/Http/Controllers/Controller.php +++ /dev/null @@ -1,13 +0,0 @@ -middleware('auth'); - $this->middleware('permission:dental-list', ['only' => ['index']]); - $this->middleware('permission:dental-create', ['only' => ['create', 'store']]); - $this->middleware('permission:dental-edit', ['only' => ['edit', 'update', 'edit_all', 'update_all']]); - $this->middleware('permission:dental-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() - { - $dentals = Dental::orderBy('name', 'asc')->paginate(2000); - - return view('investigations::dentals.index', compact('dentals')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - $cost_of_goods_accounts = ChartOfAccount::where(['type' => 7]) - ->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $expense_accounts = ChartOfAccount::where(['type' => 2]) - ->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $payables_accounts = ChartOfAccount::where(['type' => 6]) - ->orWhere(['type' => 9])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - $cost_of_goods_accounts = ['' => '- select -'] + $cost_of_goods_accounts; - $expense_accounts = ['' => '- select -'] + $expense_accounts; - $payables_accounts = ['' => '- select -'] + $payables_accounts; - - return view('investigations::dentals.create', compact('cost_of_goods_accounts', 'expense_accounts', 'payables_accounts')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - $dental = new Dental; - - $dental->name = $request->name; - $dental->expenses_account_id = $request->expenses_account_id; - $dental->payables_account_id = $request->payables_account_id; - $dental->cost_of_goods_account = $request->cost_of_goods_account; - $dental->created_by = $logged_in_user_id; - $dental->updated_by = $logged_in_user_id; - try { - $dental->save(); - flash($request->name . " Dental has been saved")->success(); - return redirect("/dentals/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) - { - $dental = Dental::where(['id' => $id])->first(); - - $expense_accounts = ChartOfAccount::where(['type' => 2]) - ->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $payables_accounts = ChartOfAccount::where(['type' => 6]) - ->orWhere(['type' => 9])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - $expense_accounts = ['' => '- select -'] + $expense_accounts; - $payables_accounts = ['' => '- select -'] + $payables_accounts; - - if (!$dental) { - flash()->error("There is no such dental"); - return redirect('/dentals/'); - } else { - return view('investigations::dentals.edit', compact('dental', 'expense_accounts', 'payables_accounts')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - - $dental = Dental::find($id); - $dental->name = $request->name; - $dental->expenses_account_id = $request->expenses_account_id; - $dental->payables_account_id = $request->payables_account_id; - $dental->updated_by = $logged_in_user_id; - - try { - $dental->save(); - flash($request->name . " dental has been updated")->success(); - return redirect("/dentals/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - $dental = Dental::find($id); - - if ($dental->delete()) { - flash("dental has been deleted.")->success(); - return redirect('/dentals/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() - { - $dentals = Dental::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($dentals) < 1) { - flash()->error("There is no inactive dental item"); - return redirect('/dentals/'); - } else { - return view('investigations::dentals.inactive', compact('dentals')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) - { - $dental = Dental::withTrashed()->find($id); - - if ($dental->restore()) { - flash("dental has been activated.")->success(); - return redirect('/dentals/inactive'); - } - } - - /** - * Search a resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function search(Request $request) - { - $query_name = $request->query_name; - $query_active = $request->query_active; - - if ($query_name != "") { - $dentals = Dental::where([ - ['active', '=', $query_active], - ['name', 'LIKE', '%' . $query_name . '%'] - ]) - ->orderBy('name', 'asc') - ->paginate(10) - ->setPath(''); - - $dentals->appends(array( - 'query_name' => $query_name, - 'query_active' => $query_active - )); - - if (count($dentals)) { - if ($query_active) { - return view('investigations::dentals.index', compact('dentals')) //; - ->withDetails($dentals) - ->withQuery($query_name, $query_active); - } else { - return view('investigations::dentals.inactive', compact('dentals')) //; - ->withDetails($dentals) - ->withQuery($query_name, $query_active); - } - } - } - flash()->error("No Details found. Try searching again!"); - return redirect('/dentals/'); - } - - /** - * Display a listing of the active resources for bulk editing. - * - * @return \Illuminate\Http\Response - */ - public function edit_all() - { - $dentals = Dental::orderBy('name', 'asc')->paginate(2000); - - if (count($dentals) < 1) { - flash()->error("There is no active dental"); - return redirect('/dentals/'); - } else { - return view('investigations::dentals.edit.all', compact('dentals')); - } - } - - /** - * Update all the resources in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function update_all(Request $request) - { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - - $id_array = $request->id; - $name_array = $request->name; - - for ($x = 0; $x < count($id_array); $x++) { - $dental = Dental::find($id_array[$x]); - - $dental->name = $name_array[$x]; - $dental->updated_by = $logged_in_user_id; - - try { - $dental->save(); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - flash("Dentals have been updated")->success(); - return redirect("/dentals/"); - } - - public function get_dentals() - { - //code to be returned to view - $code = ""; - - $dentals = Dental::orderBy('name', 'asc')->get(); - - foreach ($dentals as $dental) { - $code .= ""; - } - - return $code; - } - - public function dental_usage_report(Request $request) - { - $dentals = Dental::orderBy('name', 'asc')->get(); - $hospital_information = HospitalInformation::first(); - - $dental_options = DB::table('dentals')->orderBy('name', 'asc')->pluck('name', 'id')->prepend('- All Dentals - ', 'all_dentals'); - - $search_by = $request->search_by; - $reg_date = $request->reg_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - $filters = []; - $search_string = ""; - - if ($search_by == 0) { - // last 24 hours - $last_day = Carbon::now()->subDay(); - array_push($filters, ['start_date', '>', $last_day]); - if ($request->dental_id != 'all_dentals') { - array_push($filters, ['dental_id', '=', $request->dental_id]); - } - $search_string = "

    Showing results of ".streamline_date($last_day)."

    "; - } elseif ($search_by == 1) { - // custom date - if (is_null($request->reg_date)) { - flash('Please select a date')->error(); - return redirect()->back(); - } - $selected_date_filter = Carbon::createFromFormat('d/m/Y', $request->reg_date)->toDateString(); - array_push($filters, ['start_date', $selected_date_filter]); - if ($request->dental_id != 'all_dentals') { - array_push($filters, ['dental_id', '=', $request->dental_id]); - } - $search_string = "

    Showing results of ".streamline_date($selected_date_filter)."

    "; - } elseif ($search_by == 2) { - // custom date range - if (is_null($start_date) || is_null($end_date)) { - flash('Please select a date')->error(); - return redirect()->back(); - } - $start_date_search = Carbon::createFromFormat('d/m/Y', $start_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::createFromFormat('d/m/Y', $end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['start_date', '>', $start_date_search]); - array_push($filters, ['end_date', '<', $end_date_search]); - if ($request->dental_id != 'all_dentals') { - array_push($filters, ['dental_id', '=', $request->dental_id]); - } - $search_string = "

    Showing between ".streamline_date($start_date_search). " and ".streamline_date($end_date_search)."

    "; - } - - $dental_usages = (!empty($search_by) && !empty($end_date) && !empty($start_date) && !empty($reg_date))? DentalUsage::where($filters)->orderBy('id','desc')->limit(500)->get(): DentalUsage::orderBy('id','desc')->limit(500)->get(); - return view('investigations::dentals.dental_usage_report', compact('dentals', 'hospital_information', 'dental_usages', 'dental_options', 'search_string')); - - } - - public function dental_requisitions(Request $request) - { - $results = Dental::orderBy('name','asc')->get(); - $names_array = Dental::orderBy('name')->distinct()->pluck('name'); - $labs = Dental::orderBy('name')->pluck('name', 'id'); - - $date_filter = []; - if(isset($request->start_date) && isset($request->end_date)){ - - if (isset($request->quotation_type)) { - $item_type = $request->quotation_type; - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - - array_push($date_filter, ['created_at', '>', $start_date]); - array_push($date_filter, ['created_at', '<', $end_date]); - } - } else { - $date_from = Carbon::today()->subDays(30)->format('Y-m-d'); - $date_to = Carbon::today()->addDays(1)->format('Y-m-d'); - array_push($date_filter, ['created_at', '>', $date_from]); - array_push($date_filter, ['created_at', '<', $date_to]); - } - $previous_requisitions_results = DB::table('requisitions')->where('quotation_type_id', '=', 3)->where($date_filter)->orderBy('created_at','desc')->get(); - - return view('investigations::dentals.dental_requisition', compact('results', 'names_array', 'labs', 'previous_requisitions_results')); - } - - public function dental_usage_listing() - { - $dentals = Dental::orderBy('name', 'asc')->get(); - $hospital_information = HospitalInformation::first(); - $dental_usages = DentalUsage::orderBy('id','desc')->limit(20)->get(); - - return view('investigations::dentals.dental_usage', compact('dentals', 'hospital_information', 'dental_usages')); - } - - public function store_dental_usage(Request $request) - { - $dental_items_array = $request->labItem; - $available_qty_array = $request->availableQty; - $available_qty_unit_cost_array = $request->unitCost; - $usage_qty_array = $request->requiredQty; - $usage_qty_cost_array = $request->totalCost; - - if($request->dates == 'today'){ - $start = Carbon::now()->startOfDay()->toDateTimeString(); - $end = Carbon::now()->endOfDay()->toDateTimeString(); - }else{ - $start = Carbon::parse($request->start_date)->endOfDay()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - } - - for($i = 0; $i < count($dental_items_array); $i++){ - - if($dental_items_array[$i]){ - $dental_usage = new DentalUsage; - $dental_usage->dental_id = $dental_items_array[$i]; - $dental_usage->unit_cost_price = $unit_cost = $available_qty_unit_cost_array[$i]; - $dental_usage->available_quantity = $available_qty_array[$i]; - $dental_usage->available_quantity_cost = ((int)$unit_cost * $available_qty_array[$i]); - $dental_usage->usage_quantity = $usage_qty_array[$i]; - $dental_usage->usage_quantity_cost = $usage_qty_cost_array[$i]; - $dental_usage->remaining_quantity = $remaining_qty = ((int)$available_qty_array[$i] - (int)$usage_qty_array[$i]); - $dental_usage->remaining_quantity_cost = ($remaining_qty * $unit_cost); - $dental_usage->created_by = Auth::id(); - $dental_usage->start_date = $start; - $dental_usage->end_date = $end; - - if(!($remaining_qty < 0)){ - $dental = Dental::find($dental_items_array[$i]); - $dental->pharmacy_stock = ($dental->pharmacy_stock - (int)$usage_qty_array[$i]); - $dental_usage->save(); - $dental->save(); - }else{ - flash('Item\'s '.get_name($dental_items_array[$i], 'id', 'name', 'labs').' requested use quantity exceeds what is available.'); - } - } - } - flash('Dentals to be used from '.streamline_date($start).' to '.streamline_date($end).' have saved successfully')->success(); - return redirect()->route('dentals.usage_listing'); - - } - - public function get_dental_quantity(Request $request){ - $dental_item = Dental::where('id', $request->id)->first(); - return $dental_item; - } - - public function dentals_requisition_search(Request $request) - { - $item_type = $request->item_type; - $item_ids_array = $request->items_ids; - $results = null; - $filters = []; - $items = null; - - $results = Dental::whereIn('id', $item_ids_array)->orderBy('name','asc')->get(); - $labs = Dental::orderBy('name')->pluck('name', 'id'); - - $date_filter = []; - if(isset($request->start_date) && isset($request->end_date)){ - - if (isset($request->quotation_type)) { - $item_type = $request->quotation_type; - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - - array_push($date_filter, ['created_at', '>', $start_date]); - array_push($date_filter, ['created_at', '<', $end_date]); - } - } else { - $date_from = Carbon::today()->subDays(30)->format('Y-m-d'); - $date_to = Carbon::today()->addDays(1)->format('Y-m-d'); - array_push($date_filter, ['created_at', '>', $date_from]); - array_push($date_filter, ['created_at', '<', $date_to]); - } - $previous_requisitions_results = DB::table('requisitions')->where('quotation_type_id', '=', 5)->where($date_filter)->orderBy('created_at','desc')->get(); - - return view('investigations::dentals.dental_requisition',compact('items','item_type','labs','results','previous_requisitions_results')); - } - - public function store_dental_requisitions(Request $request) - { - $drug_id_array = $request->drug_id; - $quantity_array = $request->quantity; - $item_type = $request->item_type; - $user_id = auth()->user()->id; - - /* return back if no quantity has been filled */ - if (array_sum($quantity_array) < 1) { - flash('Please insert some values!')->error(); - return redirect()->back()->withInput(); - } - - if (isset($request->complete_request)) { - $filtered_drugs_array = []; - $filtered_quantities_array = []; - $associative_requested_drugs_array = []; - for ($i=0; $i < count($drug_id_array) ; $i++) { - if ($quantity_array[$i] != "") { - $associative_requested_drugs_array[$drug_id_array[$i]] = $quantity_array[$i]; - $filtered_drugs_array[] = $drug_id_array[$i]; - $filtered_quantities_array[] = $quantity_array[$i]; - } - } - $new_requisition = new Requisition; - $new_requisition->quotation_type_id = $item_type; - $new_requisition->drug_id = implode(',', $filtered_drugs_array); - $new_requisition->quantity_requested = implode(',', $filtered_quantities_array); - $new_requisition->created_by = $user_id; - $new_requisition->save(); - - flash('Requisition number ' . $new_requisition->id . ' made successfully')->success(); - return redirect('/dentals'); - } - } -} diff --git a/docker/statistics/Modules/Investigations/Http/Controllers/InvestigationCategoryController.php b/docker/statistics/Modules/Investigations/Http/Controllers/InvestigationCategoryController.php deleted file mode 100755 index 6c2588c8..00000000 --- a/docker/statistics/Modules/Investigations/Http/Controllers/InvestigationCategoryController.php +++ /dev/null @@ -1,179 +0,0 @@ -middleware('auth'); - $this->middleware('permission:investigations-category-list', ['only' => ['index']]); - $this->middleware('permission:investigations-category-create', ['only' => ['create', 'store']]); - $this->middleware('permission:investigations-category-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:investigations-category-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View - */ - public function index() { - $investigation_categories = InvestigationCategory::orderBy('name', 'asc') - ->paginate(50); - $super_categories = InvestigationSuperCategory::pluck('name', 'id'); - - return view('investigations::investigation_categories.index', compact('investigation_categories', 'super_categories')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View - */ - public function create() { - $super_categories = InvestigationSuperCategory::pluck('name', 'id')->toArray(); - $super_categories = ['' => '- select -'] + $super_categories; - return view('investigations::investigation_categories.create', compact('super_categories')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - request()->validate([ - 'name' => 'required' - ]); - - //validation passed - $investigation_category = new InvestigationCategory; - $logged_in_user_id = Auth::user()->id; - - $investigation_category->name = $request->name; - $investigation_category->super_category_id = $request->super_category_id; - $investigation_category->created_by = $logged_in_user_id; - $investigation_category->updated_by = $logged_in_user_id; - - try { - $investigation_category->save(); - flash($request->name . " Investigation Category has been saved")->success(); - return redirect("/investigation_categories/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector - */ - public function edit($id) { - $investigation_category = InvestigationCategory::where(['id' => $id])->first(); - $super_categories = InvestigationSuperCategory::pluck('name', 'id')->toArray(); - $super_categories = ['' => '- select -'] + $super_categories; - - if (!$investigation_category) { - flash()->error("InvestigationCategory not found"); - return redirect('/investigation_categories/'); - } else { - return view('investigations::investigation_categories.edit', compact('investigation_category', 'super_categories')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required' - ]); - - //validation passed - $investigation_category = InvestigationCategory::find($id); - $investigation_category->name = $request->name; - $investigation_category->super_category_id = $request->super_category_id; - - try { - $investigation_category->save(); - flash($request->name . " Investigation Category has been updated")->success(); - return redirect("/investigation_categories/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $investigation_category = InvestigationCategory::find($id); - - if ($investigation_category->delete()): - flash("InvestigationCategory has been deleted.")->success(); - return redirect('/investigation_categories/'); - endif; - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $investigation_categories = InvestigationCategory::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($investigation_categories) < 1) { - flash()->error("There is no inactive investigation_category"); - return redirect('/investigation_categories/'); - } else { - return view('investigations::investigation_categories.inactive', compact('investigation_categories')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $investigation_category = InvestigationCategory::withTrashed()->find($id); - - if ($investigation_category->restore()): - flash("InvestigationCategory has been activated.")->success(); - return redirect('/investigation_categories/inactive'); - endif; - } - -} diff --git a/docker/statistics/Modules/Investigations/Http/Controllers/InvestigationController.php b/docker/statistics/Modules/Investigations/Http/Controllers/InvestigationController.php deleted file mode 100755 index 9bb26090..00000000 --- a/docker/statistics/Modules/Investigations/Http/Controllers/InvestigationController.php +++ /dev/null @@ -1,3809 +0,0 @@ -middleware('auth'); - $this->middleware('permission:investigations-list', ['only' => ['index']]); - $this->middleware('permission:investigations-create', ['only' => ['create', 'store']]); - $this->middleware('permission:investigations-edit', ['only' => ['edit', 'update', 'edit_all', 'update_all']]); - $this->middleware('permission:investigations-delete', ['only' => ['destroy', 'inactive', 'activate']]); - - $this->middleware('permission:investigations-incoming', ['only' => ['incoming_labs']]); - $this->middleware('permission:investigations-authenticate', ['only' => ['authenticate_labs', 'authenticate_investigations']]); - $this->middleware('permission:investigation-results-list', ['only' => ['view_results']]); - $this->middleware('permission:investigation-results-alter', ['only' => ['alter_results']]); - $this->middleware('permission:investigations-historical-list', ['only' => ['historical_labs']]); - - /** - * Imaging - * */ - $this->middleware('permission:imaging-incoming-radiology', ['only' => ['imaging-incoming-radiology']]); - $this->middleware('permission:imaging-incoming-ultrasound', ['only' => ['imaging-incoming-ultrasound']]); - $this->middleware('permission:imaging-incoming-ultrasound-obstetric', ['only' => ['imaging-incoming-ultrasound-obstetric']]); - $this->middleware('permission:imaging-radiology-results', ['only' => ['imaging-radiology-results']]); - $this->middleware('permission:imaging-ultrasound-results', ['only' => ['imaging-incoming-ultrasound']]); - $this->middleware('permission:imaging-ultrasound-obstetric-results', ['only' => ['imaging-incoming-ultrasound-obstetric']]); - $this->middleware('permission:imaging-alter-investigation-results', ['only' => ['alter_results_others']]); - $this->middleware('permission:imaging-view-historical-results', ['only' => ['imaging_historical_results']]); - $this->middleware('permission:cancel-investigation-order', ['only' => ['investigations_to_cancel', 'destroy_ordered_investigations']]); - $this->middleware('permission:restore-cancelled-investigation-order', ['only' => ['view_deleted_ordered_invetigations', 'restore_deleted_ordered_invetigations']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() - { - $investigations = Investigation::orderBy('name', 'asc')->paginate(1000); - $ordered_investigations_array = []; - $ordered_investigations = OrderedInvestigation::distinct('investigation_id')->get(['investigation_id']); - foreach ($ordered_investigations as $ordered_investigation) { - $actual = explode(',', $ordered_investigation->investigation_id); - foreach ($actual as $value) $ordered_investigations_array[] = $value; - } - $ordered_investigations_ids = array_unique($ordered_investigations_array); - $investigation_categories = InvestigationCategory::orderBy('name', 'asc')->pluck('name', 'id'); - - $chart_of_accounts = ChartOfAccount::orderBy('name', 'asc')->pluck('name', 'id'); - $inpatient_hmis_categories = HmisCategory::where('section_number', 5)->select('title', 'id', 'number', 'type', 'section_number')->get()->toArray(); - $hmis_categories = DB::table('hmis_categories')->where('type', 0)->pluck('title', 'id')->toArray(); - - return view('investigations::investigations.index', compact('investigations', 'investigation_categories', 'chart_of_accounts', 'hmis_categories', 'ordered_investigations_ids', 'inpatient_hmis_categories')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - $suppliers = Supplier::orderBy('name', 'asc')->pluck('name', 'id'); - - $investigation_categories = InvestigationCategory::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - $investigation_categories = ['' => '- select -'] + $investigation_categories; - - $chart_of_accounts = ChartOfAccount::where('type', 1)->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - $chart_of_accounts = ['' => '- select -'] + $chart_of_accounts; - - $unit_of_measure = UnitOfMeasure::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - $unit_of_measure = ['' => '- select -'] + $unit_of_measure; - - $investigations = StreamlineSetupManager::get_investigations_array(); - - $hmis_categories = DB::table('hmis_categories')->where('type', 0)->pluck('title', 'id')->toArray(); - $inpatient_hmis_categories = HmisCategory::where('section_number', 5)->select('title', 'id', 'number', 'type', 'section_number')->get()->toArray(); - // $inpatient_hmis_category_options = DB::table('hmis_category_options')->where('hmis_category_id', $investigation->hmis_category_inpatient)->get()->toArray(); - - $hmis_categories = ['' => '- select -'] + $hmis_categories; - - return view('investigations::investigations.create', compact('suppliers', 'investigation_categories', 'inpatient_hmis_categories', 'chart_of_accounts', 'unit_of_measure', 'investigations', 'hmis_categories')); - } - - /** - * Store a newly created resource in storage. - * - */ - public function store(Request $request) - { - //if it for streamline setup then you can skip the request validation - if (session()->has('streamline_setup')) { - //skip validation - } else { - request()->validate([ - 'name' => 'required|unique:investigations', - 'category' => 'required', - 'units' => 'required', - 'available' => 'required', - 'account_id' => 'required', - 'echo' => 'required_if:category,17', - 'reference_text'=>'nullable|required_with:reference_link', - 'reference_link'=>'nullable|url|required_with:reference_text' - - ], - [ - 'name.required' => 'The investigation name is required.', - 'name.unique' => 'This investigation name already exists. Please choose a different name.', - 'category.required' => 'Please select a category for the investigation.', - 'units.required' => 'The units field is required.', - 'available.required' => 'Please specify whether the investigation is available.', - 'account_id.required' => 'The account ID is required.', - 'echo.required_if' => 'An echo is required when the category is set to 17.', - 'reference_text.required_with' => 'The reference text is required when a reference link is provided.', - 'reference_link.required_with' => 'The reference link is required when reference text is provided.', - 'reference_link.url' => 'The reference link must be a valid URL.' - - ]); - } - - if (isset($request->skip)) { - //Artisan::call('db:seed', ['--class' => 'InvestigationSeeder']); - //update the streamline setup table with the new finished step - $this->setupService->saveStep("investigations registration", 1); - - //flash("Default system investigations have been added")->success(); - return redirect("drugs/create"); - } else { - // get all current price lists - $price_list = PriceListCategories::withTrashed()->select('id')->get(); - $price_list_category = []; - $price_list_price = []; - - foreach ($price_list as $record) { - array_push($price_list_category, $record->id); - array_push($price_list_price, $request->non_insured_price); - } - - $logged_in_user_id = Auth::user()->id; - $investigation = new Investigation; - - $investigation->name = $request->name; - $investigation->code = $request->code; - $investigation->category = $request->category; - $investigation->units = $request->units; - $investigation->minimum = $request->minimum; - $investigation->sample_container = $request->sample_container; - $investigation->insurance_coverage = 0; - $investigation->comments = $request->comments; - $investigation->normal_ranges = $request->normal_ranges; - $investigation->lab_time = $request->lab_time; - $investigation->hmis_002_slug = $request->hmis_002_slug; - $investigation->non_insured_price = $request->non_insured_price; - $investigation->insured_price = 0; - /*$investigation->price_list_category = implode(",", $price_list_category); - $investigation->price_list_price = implode(",", $price_list_price);*/ - $investigation->price_list_category = !is_null($request->price_list_category_id) ? implode(",", $request->price_list_category_id) : null; - $investigation->price_list_price = !is_null($request->price_list_price) ? implode(",", $request->price_list_price) : null; - $investigation->account_id = $request->account_id; - /* == hmis stuff ===== */ - $investigation->hmis_no_outpatient = is_null($request->hmis_no_outpatient) ? null : implode(",", $request->hmis_no_outpatient); - $investigation->hmis_category = is_null($request->hmis_category) ? null : implode(",", $request->hmis_category); - $investigation->hmis_no_inpatient = $request->hmis_no_inpatient; - $investigation->hmis_category_inpatient = $request->hmis_category_inpatient; - /* =================== */ - $investigation->available = $request->available; - $investigation->slug = !empty($request->echo) ? 'echo' : null; - $investigation->range_type = is_null($request->range_type) ? 0 : $request->range_type; - $investigation->is_chronic = $request->is_chronic; - $investigation->reference_text = $request->reference_text; - $investigation->reference_link = $request->reference_link; - $investigation->created_by = $logged_in_user_id; - $investigation->updated_by = $logged_in_user_id; - if ($investigation->name != "" && !is_null($investigation->name)) { - $investigation->save(); - - if ($request->range_type == 1) { - $age_id = $request->age_id; - $dynamic_range_male = $request->dynamic_range_male; - $dynamic_range_female = $request->dynamic_range_female; - - for ($x = 0; $x < count($age_id); $x++) { - $new_range = new InvestigationNormalRange; - $new_range->male_range = $dynamic_range_male[$x]; - $new_range->female_range = $dynamic_range_female[$x]; - $new_range->age_group_id = $age_id[$x]; - $new_range->test_id = $investigation->id; - $new_range->created_by = $logged_in_user_id; - $new_range->save(); - } - } - } - - try { - - flash($request->name . " Investigation has been saved")->success(); - if (session()->has('streamline_setup')) { - - if (isset($request->selected_investigations)) { - $selected_investigations_array = $request->selected_investigations; - if (!empty($selected_investigations_array)) { - - for ($i = 0; $i < count($selected_investigations_array); $i++) { - /* try this magic to get details for the selected service */ - $investigations_array = StreamlineSetupManager::get_investigations_array(); - $key = array_search($selected_investigations_array[$i], array_column($investigations_array, 'name')); - $inv_details = $investigations_array[$key]; - /* end of magic trial */ - $default_investigation = new Investigation; - $default_investigation->name = $inv_details['name']; - $default_investigation->category = $inv_details['category']; - $default_investigation->insured_price = 0; - $default_investigation->non_insured_price = 0; - $default_investigation->account_id = $inv_details['account_id']; - $default_investigation->save(); - } - } - } - //update the streamline setup table with the new finished step - $this->setupService->saveStep("investigations registration", 1); - return redirect("drugs/create"); - } - return redirect("/investigations/"); - } catch (QueryException $e) { - flash($request->name . " Investigation already exists!")->error(); - return back()->withInput(); - } - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) - { - $investigation = Investigation::where(['id' => $id])->first(); - - $investigation_categories = InvestigationCategory::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - $chart_of_accounts = ChartOfAccount::where('type', 1)->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - $chart_of_accounts = ['' => '- select -'] + $chart_of_accounts; - - $hmis_categories_opd = DB::table('hmis_categories')->where('type', 0)->pluck('title', 'id')->toArray(); - $hmis_categories_opd = ['' => '- select -'] + $hmis_categories_opd; - - $hmis_categories_ip = DB::table('hmis_categories')->where('type', 1)->pluck('title', 'id')->toArray(); - $hmis_categories_ip = ['' => '- select -'] + $hmis_categories_ip; - - $unit_of_measure = UnitOfMeasure::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - $unit_of_measure = ['' => '- select -'] + $unit_of_measure; - $inpatient_hmis_categories = HmisCategory::where('section_number', 5)->select('title', 'id', 'number', 'type', 'section_number')->get()->toArray(); - $inpatient_hmis_category_options = HmisCategoryOptions::where('hmis_category_id', $investigation->hmis_category_inpatient)->get()->toArray(); - if (!$investigation) { - flash()->error("There is no such investigation"); - return redirect('/investigations/'); - } else { - return view('investigations::investigations.edit', compact('investigation', 'chart_of_accounts', 'inpatient_hmis_categories', 'investigation_categories', 'hmis_categories_opd', 'hmis_categories_ip', 'inpatient_hmis_category_options', 'unit_of_measure')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - request()->validate([ - 'name' => 'required', - 'category' => 'required', - 'available' => 'required', - 'account_id' => 'required', - 'echo' => 'required_if:category,17', - 'reference_text' => 'nullable|required_with:reference_link', - 'reference_link' => 'nullable|url|required_with:reference_text' - ], - [ - 'name.required' => 'The investigation name is required.', - 'name.unique' => 'This investigation name already exists. Please choose a different name.', - 'category.required' => 'Please select a category for the investigation.', - 'units.required' => 'The units field is required.', - 'available.required' => 'Please specify whether the investigation is available.', - 'account_id.required' => 'The account ID is required.', - 'echo.required_if' => 'An echo is required when the category is set to 17.', - 'reference_text.required_with' => 'The reference text is required when a reference link is provided.', - 'reference_link.required_with' => 'The reference link is required when reference text is provided.', - 'reference_link.url' => 'The reference link must be a valid URL.' - - ]); - - $logged_in_user_id = Auth::user()->id; - - $investigation = Investigation::find($id); - $investigation->name = $request->name; - $investigation->code = $request->code; - $investigation->category = $request->category; - $investigation->normal_ranges = $request->normal_ranges; - $investigation->units = $request->units; - $investigation->minimum = $request->minimum; - $investigation->sample_container = $request->sample_container; - $investigation->non_insured_price = $request->non_insured_price; - $investigation->price_list_category = !is_null($request->price_list_category_id) ? implode(",", $request->price_list_category_id) : null; - $investigation->price_list_price = !is_null($request->price_list_price) ? implode(",", $request->price_list_price) : null; - $investigation->insured_price = 0; - $investigation->comments = $request->comments; - $investigation->lab_time = $request->lab_time; - $investigation->hmis_002_slug = $request->hmis_002_slug; - $investigation->insurance_coverage = 0; - $investigation->available = $request->available; - $investigation->slug = !empty($request->echo) ? 'echo' : null; - $investigation->account_id = $request->account_id; - $investigation->range_type = $request->range_type; - $investigation->is_chronic = $request->is_chronic; - $investigation->reference_text = $request->reference_text; - $investigation->reference_link = $request->reference_link; - /* == hmis stuff ===== */ - $investigation->hmis_no_outpatient = implode(",", $request->hmis_no_outpatient); - $investigation->hmis_category = implode(",", $request->hmis_category_opd); - $investigation->hmis_no_inpatient = $request->hmis_no_inpatient; - $investigation->hmis_category_inpatient = $request->hmis_category_inpatient; - /* =================== */ - - $investigation->updated_by = $logged_in_user_id; - - - if ($request->sub_tests) { - $investigation->type = 1; - $sub_test_array = $request->sub_tests; - for ($i = 0; $i < count($sub_test_array); $i++) { - $variable = new InvestigationSpecialisedVariable; - $variable->name = get_name($sub_test_array[$i], 'id', 'name', 'investigation_specialised_variables'); - $variable->investigation_id = $id; - $variable->units = get_name($sub_test_array[$i], 'id', 'units', 'investigation_specialised_variables'); - $variable->normal_ranges = get_name($sub_test_array[$i], 'id', 'normal_ranges', 'investigation_specialised_variables'); - $variable->flags = get_name($sub_test_array[$i], 'id', 'flags', 'investigation_specialised_variables'); - $variable->created_by = $logged_in_user_id; - $variable->updated_by = $logged_in_user_id; - - $investigation = Investigation::find($request->investigation); - $investigation->type = 1; - - try { - $variable->save(); - flash('successfully attached subtest to investigation.')->success(); - } catch (QueryException $e) { - flash('failed to attached subtest to investigation.')->error(); - } - } - } - - try { - $investigation->save(); - - if ($request->range_type == 1) { - $age_id = $request->age_id; - $dynamic_range_male = $request->dynamic_range_male; - $dynamic_range_female = $request->dynamic_range_female; - - for ($x = 0; $x < count($age_id); $x++) { - - $dynamic_normal_range = DB::table('investigations_normal_ranges') - ->where('age_group_id', $age_id[$x]) - ->where('test_id', $investigation->id) - ->first(); - - if (!$dynamic_normal_range) { - $dynamic_normal_range = new InvestigationNormalRange; - $dynamic_normal_range->created_by = $logged_in_user_id; - } else { - $dynamic_normal_range = InvestigationNormalRange::find($dynamic_normal_range->id); - $dynamic_normal_range->updated_by = $logged_in_user_id; - } - - $dynamic_normal_range->female_range = $dynamic_range_female[$x]; - $dynamic_normal_range->male_range = $dynamic_range_male[$x]; - $dynamic_normal_range->age_group_id = $age_id[$x]; - $dynamic_normal_range->test_id = $investigation->id; - $dynamic_normal_range->save(); - } - } - - flash($request->name . " Investigation has been updated")->success(); - return redirect("/investigations/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - $investigation = Investigation::find($id); - - if ($investigation->delete()): - flash("Investigation has been deleted.")->success(); - return redirect('/investigations/'); - endif; - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() - { - $investigations = Investigation::onlyTrashed()->orderBy('name', 'asc')->paginate(50); - - $investigation_categories = InvestigationCategory::orderBy('name', 'asc')->pluck('name', 'id'); - - $chart_of_accounts = ChartOfAccount::orderBy('name', 'asc')->pluck('name', 'id'); - - if (empty($investigations)) { - flash()->error("There is no inactive investigation"); - return redirect('/investigations/'); - } else { - return view('investigations::investigations.inactive', compact('investigations', 'investigation_categories', 'chart_of_accounts')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) - { - $investigation = Investigation::withTrashed()->find($id); - - if ($investigation->restore()): - flash("Investigation has been activated.")->success(); - return redirect('/investigations/inactive'); - endif; - } - - /** - * Display a listing of the active resources for bulk editing. - * - * @return \Illuminate\Http\Response - */ - public function edit_all() - { - $investigations = Investigation::orderBy('name', 'asc')->get(); - - $investigation_categories = InvestigationCategory::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - $investigation_categories = ['' => '- select -'] + $investigation_categories; - - $chart_of_accounts = ChartOfAccount::where('type', 1)->orderBy('name', 'asc')->pluck('name', 'id'); - - if (count($investigations) < 1) { - flash()->error("There is no active investigation"); - return redirect('/investigations/'); - } else { - return view('investigations::investigations.edit.all', compact('investigations', 'chart_of_accounts', 'investigation_categories')); - } - } - - /** - * Display a listing of the active resources for editing HMIS Options - * - * @return \Illuminate\Http\Response - */ - public function edit_hmis_options() - { - $investigations = Investigation::orderBy('name', 'asc')->get(); - - $investigation_categories = InvestigationCategory::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $investigation_categories = ['' => '- select -'] + $investigation_categories; - - $hmis_categories = DB::table('hmis_categories')->where('type', 0)->pluck('title', 'id')->toArray(); - $hmis_categories = ['' => '- select -'] + $hmis_categories; - $category_ids = []; - $hmis_categories_ip = DB::table('hmis_categories')->where('type', 1)->pluck('title', 'id')->toArray(); - $hmis_categories_ip = ['' => '- select -'] + $hmis_categories_ip; - $inpatient_hmis_categories = HmisCategory::where('section_number', 5)->select('title', 'id', 'number', 'type', 'section_number')->get()->toArray(); - foreach ($inpatient_hmis_categories as $inpatient_hmis_category) $category_ids[] = $inpatient_hmis_category['id']; - $inpatient_hmis_category_options = HmisCategoryOptions::whereIn('hmis_category_id', $category_ids)->get()->toArray(); - - if (count($investigations) < 1) { - flash()->error("There is no active investigation"); - return redirect('/investigations/'); - } else { - return view('investigations::investigations.edit.hmis-options', compact('investigations', 'investigation_categories', 'hmis_categories', 'inpatient_hmis_category_options', 'inpatient_hmis_categories', 'hmis_categories_ip')); - } - } - - /** - * Update all the resources in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function update_all(Request $request) - { - $validator = Validator::make($request->all(), [ - 'name' => 'required', - 'available' => 'required', - 'account_id' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - // flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth::user()->id; - - $id_array = $request->id; - - $name_array = $request->name; - $category_array = $request->category; - $normal_ranges_array = $request->normal_ranges; - $minimum_array = $request->minimum; - $sample_container_array = $request->sample_container; - $non_insured_price_array = $request->non_insured_price; - $comments_array = $request->comments; - $lab_time_array = $request->lab_time; - $available_array = $request->available; - $account_id_array = $request->account_id; - - for ($x = 0; $x < count($id_array); $x++): - $investigation = Investigation::find($id_array[$x]); - - $investigation->name = $name_array[$x]; - $investigation->category = $category_array[$x]; - $investigation->normal_ranges = $normal_ranges_array[$x]; - $investigation->minimum = $minimum_array[$x]; - $investigation->sample_container = $sample_container_array[$x]; - $investigation->non_insured_price = $non_insured_price_array[$x]; - $investigation->insured_price = 0; - $investigation->comments = $comments_array[$x]; - $investigation->lab_time = $lab_time_array[$x]; - $investigation->insurance_coverage = 0; - $investigation->available = $available_array[$x]; - $investigation->account_id = $account_id_array[$x]; - $investigation->updated_by = $logged_in_user_id; - - try { - $investigation->save(); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - endfor; - - flash("Investigations have been updated")->success(); - return redirect("/investigations/"); - } - } - - public function update_hmis_options(Request $request) - { - - $logged_in_user_id = Auth::user()->id; - - $id_array = $request->id; - - $name_array = $request->name; - /* == hmis stuff ===== */ - $hmis_no_outpatient_array = $request->hmis_no_outpatient; - $hmis_category_outpatient_array = $request->hmis_category; - $hmis_no_inpatient_array = $request->hmis_no_inpatient; - $hmis_category_inpatient_array = $request->hmis_category_inpatient; - /* =================== */ - - for ($x = 0; $x < count($id_array); $x++): - $investigation = Investigation::find($id_array[$x]); - - $investigation->name = $name_array[$x]; - /* == hmis stuff ===== */ - $investigation->hmis_no_outpatient = $hmis_no_outpatient_array[$x]; - $investigation->hmis_category = $hmis_category_outpatient_array[$x]; - $investigation->hmis_no_inpatient = $hmis_no_inpatient_array[$x]; - $investigation->hmis_category_inpatient = $hmis_category_inpatient_array[$x]; - /* =================== */ - $investigation->updated_by = $logged_in_user_id; - - try { - $investigation->save(); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - endfor; - - flash("Investigations have been updated")->success(); - return redirect("/investigations/edit/hmis-options"); - } - - public function investigations_review() - { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $patient = Patient::find($patient_id); - - $investigations_select_code = ""; - $investigations_to_order = []; - - $categories = DB::table('investigation_categories')->whereNull('deleted_at')->get()->toArray(); - - foreach ($categories as $category) { - $investigations = DB::table('investigations')->whereNull('deleted_at')->where('category', '=', $category->id)->where('available', 1)->orderBy('name', 'asc')->get(['id', 'name']); - - if (count($investigations) > 0) { - $investigations_select_code .= ""; - - foreach ($investigations as $investigation) { - $investigations_to_order[$investigation->id] = $investigation->name; - $investigations_select_code .= ""; - } - - $investigations_select_code .= ""; - } - } - - $ordered_investigations = OrderedInvestigation::where('patient_id', '=', $patient_id) - ->where('episode_id', $episode_id) - ->where('investigation_status', '0') - ->where('request_received', '0') - ->where('payment_status', '0') - ->where('inpatient_bill_generated', '0') - ->get(); - - // collect chronic drug ids as array - $chronic_array = ChronicPatient::where('patient_id', $patient_id)->whereNotNull('investigation_id')->get(['investigation_id']); - $investigations = DB::table('investigations')->whereNull('deleted_at')->where('available', 1)->pluck('name', 'id'); - - return view('investigations::investigations.investigations_review', compact('patient', 'investigations_select_code', 'patient_id', 'ordered_investigations', 'investigations_to_order', 'chronic_array', 'investigations', 'episode_id')); - } - - public function get_investigation_details(Request $request) - { - $patient_id = $request->patient_id; - $patient_insurance_status = $request->patient_insurance_status ?? 0; - - $investigation = DB::table('investigations')->find($request->investigation_id); - - if (is_numeric($patient_insurance_status) && $patient_insurance_status == 1 && $patient_id != 0 && is_numeric($patient_id)) { - $selling_price = get_item_insurance_co_payment($patient_id, $investigation->id, 3, false, 0); - } else { - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_id) { - $selling_price = get_price_list_category_price($price_list_id, 2, $investigation->id); - } else { - $selling_price = $investigation->non_insured_price; - } - } - - if (is_chi_enabled() && is_patient_item_covered($patient_id, $investigation->id, 3)) { - $covered_by_chi = '  
    Covered by CHI'; - } else { - $covered_by_chi = ""; - } - - return json_encode([ - "comments" => $investigation->comments, - "selling_price" => $selling_price, - "covered_by_chi" => $covered_by_chi, - ]); - } - - /** - * Submit investigation orders. - * - * @return \Illuminate\Http\RedirectResponse - */ - public function submit_ordered_investigations(Request $request) - { - - if (is_null($request->investigations_id) || is_null($request->investigations_id[0])) { - flash("No investigation has been selected")->error(); - return back()->withInput(); - } - - $is_inpatient = session()->get('ward_investigation'); - $inpatient = (isset($is_inpatient)) ? 1 : 0; - - // unset the session for ward investigation - session()->forget('ward_investigation'); - - $investigation_ids = $request->investigations_id; - $order_comments_array = $request->order_comments; - $eye_array = $request->eye; - $urgent_ids = $request->urgent_id ?? []; - $patient_id = $request->patient_id; - $episode_id = $request->episode_id; - $investigation_codes_array = []; - $investigation_names_array = []; - $bc_sales_invoice_lines = []; - - $investigations_array = [ - "Lab" => ["ids" => [], "comments" => [], "urgent" => [], "eye" => [], "order_id" => 0], - "Imaging" => ["ids" => [], "comments" => [], "urgent" => [], "eye" => [], "order_id" => 0], - "Ultrasound" => ["ids" => [], "comments" => [], "urgent" => [], "eye" => [], "order_id" => 0], - "Ultrasound_Obstetric" => ["ids" => [], "comments" => [], "urgent" => [], "eye" => [], "order_id" => 0], - "Cardio" => ["ids" => [], "comments" => [], "urgent" => [], "eye" => [], "order_id" => 0] - ]; - - $update_order_ids = $request->order_id; - - if (isset($update_order_ids)) { - foreach ($update_order_ids as $update_order_id) { - $original_order_type = get_name($update_order_id, 'id', 'order_type', 'ordered_investigations'); - $payment_status = get_name($update_order_id, 'id', 'payment_status', 'ordered_investigations'); - - if (array_key_exists($original_order_type, $investigations_array) && $payment_status != 1) { - $investigations_array[$original_order_type]["order_id"] = $update_order_id; - } - } - } - - // iterate over the ordered investigations and divide them into categories - for ($i = 0; $i < count($investigation_ids); $i++) { - $inv_order_type = get_name(get_name($investigation_ids[$i], "id", "category", "investigations"), "id", "super_category_id", "investigation_categories"); - $investigation_details = Investigation::find($investigation_ids[$i]); - $investigation_codes_array[] = $investigation_details->code; - $investigation_names_array[] = $investigation_details->name; - $bc_sales_invoice_lines[] = [ - "invoiceDocType" => "Invoice", - "lineType" => "resource", - "lineObjectNumber" => $investigation_details->code, - "description" => $investigation_details->name - ]; - - if ($inv_order_type == 1) { - $order_type_name = "Lab"; - } elseif ($inv_order_type == 2) { - $order_type_name = "Imaging"; - } elseif ($inv_order_type == 3) { - $order_type_name = "Ultrasound"; - } elseif ($inv_order_type == 4) { - $order_type_name = "Ultrasound_Obstetric"; - } elseif ($inv_order_type == 5) { - $order_type_name = "Cardio"; - } else { - $order_type_name = "None"; - } - - $investigations_array[$order_type_name]["ids"][] = $investigation_ids[$i]; - $investigations_array[$order_type_name]["comments"][] = $order_comments_array[$i]; - $investigations_array[$order_type_name]["eye"][] = $eye_array[$i]; - - if (in_array($investigation_ids[$i], $urgent_ids)) { - $investigations_array[$order_type_name]["urgent"][] = $investigation_ids[$i]; - } - - if (is_investigation_chronic($investigation_ids[$i])) { - register_chronic_investigation($patient_id, $episode_id, $investigation_ids[$i]); - } - } - - $logged_in_user_id = Auth::user()->id; - - // iterate through the investigation array and place all orders in the respective table - foreach ($investigations_array as $order_type => $order_ids) { - if ($order_ids["order_id"] == 0) { - if (count($order_ids["ids"]) > 0) { - //create new order investigation - $order = new OrderedInvestigation; - - $order->investigation_id = implode(",", $order_ids["ids"]); - $order->patient_id = $patient_id; - $order->episode_id = $episode_id; - $order->urgent = !empty($order_ids["urgent"]) ? 1 : 0; - $order->urgent_ids = implode(",", $order_ids["urgent"]); - $order->inpatient = $inpatient; - $order->for_inpatient = implode(",", array_fill(0, count($order_ids["ids"]), $inpatient)); - $order->order_type = $order_type; - $order->eye = implode(",", $order_ids["eye"]); - $order->order_comments = implode(",", $order_ids["comments"]); - $order->created_by = $logged_in_user_id; - - $order->save(); - - // create an insurance claim for the ordered items - if ($request->patient_insurance_status == 1) { - generate_insurance_claim($order->id, 3); - } - } - } else { - if (count($order_ids["ids"]) > 0) { - //update the ordered investigations - $order = OrderedInvestigation::find($order_ids["order_id"]); - - // these are the investigations already recorded in the database - $current_investigation_ids_array = explode(",", $order->investigation_id); - $current_for_inpatient_array = explode(",", $order->for_inpatient); - - $for_inpatient_array = []; - - for ($i = 0; $i < count($order_ids["ids"]); $i++) { - - /** - * We are now updating the order, we have to run through the - * for_inpatient column and make sure we keep them as they are - * for the current ones and the new ones assign them the - * current inpatient status - */ - if (in_array($order_ids["ids"][$i], $current_investigation_ids_array)) { - $for_inpatient_array[] = $current_for_inpatient_array[array_search($order_ids["ids"][$i], $current_investigation_ids_array)]; - } else { - $for_inpatient_array[] = $inpatient; - } - } - - $order->investigation_id = implode(",", $order_ids["ids"]); - $order->patient_id = $patient_id; - $order->episode_id = $episode_id; - $order->eye = implode(",", $order_ids["eye"]); - $order->urgent = !empty($order_ids["urgent"]) ? 1 : 0; - $order->urgent_ids = implode(",", $order_ids["urgent"]); - $order->inpatient = $inpatient; - $order->for_inpatient = implode(",", $for_inpatient_array); - $order->order_type = $order_type; - $order->order_comments = implode(",", $order_ids["comments"]); - $order->updated_by = $logged_in_user_id; - - $order->save(); - - // create an insurance claim for the ordered items - if ($request->patient_insurance_status == 1 && $inpatient == 0) { - generate_insurance_claim($order->id, 3); - } - } else { - // this means that the order was previously made but was removed so delete - OrderedInvestigation::where('id', $order_ids["order_id"])->forceDelete(); - } - } - } - - flash("Ordered Investigation Added Successfully")->success(); - - /* start of talking to Business Central API for billing */ - if (is_api_usage_enabled()) { - $patient_number = get_name($patient_id, "id", "number", "patients"); - $patient_category_id = get_name($patient_id, "id", "category_id", "patients"); - $patient_category_code = get_name($patient_category_id, "id", "code", "patient_categories"); - $sales_header_url = "192.168.200.11:7048/BC240/api/hrpsolutions/lacorintegration/v2.0/salesinvoices"; - $sales_invoice_lines_url = "192.168.200.11:7048/BC240/api/hrpsolutions/lacorintegration/v2.0/salesinvoicesLines"; - $new_invoice_url = 'http://192.168.200.11:7048/BC240/api/hrpsolutions/lacorintegration/v2.0/salesInvoices?$expand=salesInvoicesLines'; - - $header_payload = [ - //"data" => $request->all(), - "invoiceDate" => "2026-01-24", //Carbon::now()->format('Y-m-d'),//day that the transaction happened - "postingDate" => "2026-01-24", //Carbon::now()->format('Y-m-d'),//day that invoice is send to Navision - "invoiceDocType" => "Invoice", - "customerNumber" => $patient_number, - "billToCustomerNumber" => "50000", //$patient_category_id == 1 ? $patient_number : $patient_category_code, - "invoiceDepartment" => "SALES", - "invoiceCostcenter" => "" - ]; - - $new_payload = [ - "invoiceDocType" => "Invoice", - "customerNumber" => $patient_number, - "salesInvoicesLines" => $bc_sales_invoice_lines - ]; - - try { - - $new_sales_invoice_data = Http::timeout(120)->withBasicAuth(env('API_USERNAME'), env('API_PASSWORD'))->withHeaders([ - 'accept' => '*/*', - ])->post($new_invoice_url, $new_payload)->json(); - - if ($new_sales_invoice_data && $new_sales_invoice_data['number']) { - $returned_invoice_no = $new_sales_invoice_data['number']; - flash("Invoice Number " . $returned_invoice_no . " created in Business Central")->success(); - } else { - // Handle the error if the API request fails - return response()->json(['error' => 'Failed to fetch data from the sales lines API endpoint'], 500); - } - } catch (\Exception $e) { - Log::error($e->getMessage()); - return response()->json([ - 'success' => false, - 'error' => $e->getMessage() - ]); - } - } - /* end of talking to the Business Central API */ - - /* redirect to consultation or patient_episode page depending on where the user is from */ - if ($request->get('submit_button') == 'print_request') { - session()->put('investigation_ids', $investigation_ids); - session()->put('urgent_ids', $urgent_ids); - session()->put('order_comments', $order_comments_array); - return redirect('/investigations/print_request/0'); - } - - if ($inpatient == 1) { - return redirect('in_patient_sheet'); - } else { - if (session()->has('redirect_to_consultation')) { - $url = session()->get('redirect_to_consultation'); - session()->forget('redirect_to_consultation'); - return redirect($url); - } elseif (session()->has('anc_visit_redirect')) { - $url = session()->get('anc_visit_redirect'); - session()->forget('anc_visit_redirect'); - return redirect($url); - } else { - if (session()->has('previous_action') && session()->get('previous_action') == 'anc_consultation_page') { - session()->forget('previous_action'); - return redirect("ante_natal_clinic/route"); - } else return redirect("/patient_episodes"); - } - } - } - - public function print_request($id) - { - if ($id == 0) { - if (session()->has("investigation_ids")) { - $patient_id = session()->get('patient_id'); - $patient = Patient::find($patient_id); - - $ordered_investigation = OrderedInvestigation::where('patient_id', '=', session()->get('patient_id')) - ->where('episode_id', session()->get('episode_id')) - ->where('investigation_status', '0') - ->where('request_received', '0') - ->where('payment_status', '0') - ->where('inpatient_bill_generated', '0') - ->first(); - - $investigation_ids_array = session()->get("investigation_ids"); - $urgent_ids_array = session()->get("urgent_ids"); - $order_comments_array = session()->get("order_comments"); - - session()->forget('investigation_ids'); - session()->forget('urgent_ids'); - session()->forget('order_comments'); - } else { - return redirect('home'); - } - } else { - $ordered_investigation = OrderedInvestigation::find($id); - - $investigation_ids_array = explode(",", $ordered_investigation->investigation_id); - $urgent_ids_array = explode(",", $ordered_investigation->urgent_ids); - $order_comments_array = explode(",", $ordered_investigation->order_comments); - $patient_id = $ordered_investigation->patient_id; - $patient = Patient::find($ordered_investigation->patient_id); - } - - // get unique category_ids - $category_ids_array = []; - $category_array = []; - - for ($x = 0; $x < count($investigation_ids_array); $x++) { - $category_id = get_name($investigation_ids_array[$x], "id", "category", "investigations"); - - if (!array_key_exists($category_id, $category_array)) { - $category_ids_array[] = $category_id; - } - - $category_array[$category_id][] = [ - 'id' => $investigation_ids_array[$x], - 'comment' => $order_comments_array[$x] - ]; - } - - $hospital_information = HospitalInformation::first(); - - return view('investigations::investigations.print_request', compact('ordered_investigation', 'hospital_information', 'patient', 'category_ids_array', 'category_array', 'urgent_ids_array')); - } - - /** - * Gets all the incoming investigation request lab - * - * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View - */ - public function incoming_labs(Request $request) - { - $search_text = ""; - - // if patient id is active, get all records regardless of date; else search by date - if (isset($request->patient_id) && $request->patient_id != 0) { - $search_text .= "Patient: " . get_full_name($request->patient_id, 'id', 'first_name', 'last_name', 'patients'); - $search_text .= " (" . get_name($request->patient_id, 'id', 'number', 'patients') . ") "; - - $incomings = OrderedInvestigation::where(['investigation_status' => 0]) - ->where('request_received', 0) - ->where('order_type', 'Lab') - ->where('patient_id', $request->patient_id) - ->orderBy('id', 'desc') - ->get(['id', 'payment_status', 'inpatient', 'episode_id', 'patient_id', 'created_at']); - - $urgent_incomings = OrderedInvestigation::where(['investigation_status' => 0]) - ->where(['request_received' => 0]) - ->where('order_type', '=', 'Lab')->where('urgent_ids', '<>', '') - ->where('patient_id', $request->patient_id) - ->orderBy('id', 'desc') - ->get(); - } else { - switch ($request->search_date_by) { - case 'yesterday': - $end_date = Carbon::yesterday()->endOfDay(); - $start_date = Carbon::yesterday()->startOfDay(); - $search_text .= "Yesterday "; - break; - case 'custom_date': - $end_date = Carbon::parse($request->start_date)->endOfDay(); - $start_date = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "From: " . streamline_date($start_date) . " "; - break; - case 'custom_date_range': - $end_date = Carbon::parse($request->end_date)->endOfDay(); - $start_date = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "From: " . streamline_date($start_date) . " to " . streamline_date($end_date) . " "; - break; - case 'today': - default: - $end_date = Carbon::today()->endOfDay(); - $start_date = Carbon::today()->startOfDay(); - $search_text .= "Today "; - break; - } - - //by default load the last 24 hours - $incomings = OrderedInvestigation::where(['investigation_status' => 0]) - ->where(['request_received' => 0]) - ->where('order_type', '=', 'Lab')->where('urgent_ids', '=', '') - ->whereBetween('created_at', [$start_date, $end_date]) - ->orderBy('id', 'desc') - ->get(); - $urgent_incomings = OrderedInvestigation::where(['investigation_status' => 0]) - ->where(['request_received' => 0]) - ->where('order_type', '=', 'Lab')->where('urgent_ids', '<>', '') - ->whereBetween('created_at', [$start_date, $end_date]) - ->orderBy('id', 'desc') - ->get(); - } - - $specimen = LaboratorySpecimen::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $specimen = ['' => '- select -'] + $specimen; - - return view('investigations::investigations.incoming_labs', compact('incomings', 'specimen', 'search_text', 'urgent_incomings')); - } - - public function incoming_imaging($imaging_type, Request $request) - { - $search_text = ""; - $filters = []; - - // if patient id is active, get all records regardless of date; else search by date - if (isset($request->patient_id) && $request->patient_id != 0) { - $filters[] = ['ordered_investigations.patient_id', '=', $request->patient_id]; - $search_text .= "Patient: " . get_full_name($request->patient_id, 'id', 'first_name', 'last_name', 'patients'); - $search_text .= " (" . get_name($request->patient_id, 'id', 'number', 'patients') . ") "; - } else { - switch ($request->search_date_by) { - case 'yesterday': - $end_date = Carbon::yesterday()->endOfDay(); - $start_date = Carbon::yesterday()->startOfDay(); - $search_text .= "Yesterday "; - break; - case 'custom_date': - $end_date = Carbon::parse($request->start_date)->endOfDay(); - $start_date = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "From: " . streamline_date($start_date) . " "; - break; - case 'custom_date_range': - $end_date = Carbon::parse($request->end_date)->endOfDay(); - $start_date = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "From: " . streamline_date($start_date) . " to " . streamline_date($end_date) . " "; - break; - case 'today': - default: - $end_date = Carbon::today()->endOfDay(); - $start_date = Carbon::today()->startOfDay(); - $search_text .= "Today "; - break; - } - - $filters[] = ['ordered_investigations.created_at', '>', $start_date]; - $filters[] = ['ordered_investigations.created_at', '<', $end_date]; - } - - $incomings = OrderedInvestigation::where(['investigation_status' => 0]) - ->leftJoin('patients', 'ordered_investigations.patient_id', '=', 'patients.id') - ->where('ordered_investigations.order_type', '=', $imaging_type)->where('urgent_ids', '=', '') - ->where($filters) - ->orderBy('ordered_investigations.id', 'desc') - ->select('ordered_investigations.*', 'patients.number as patient_number', 'patients.category_id as patients_category_id') - ->limit(200) - ->get(); - - $urgent_incomings = OrderedInvestigation::where(['investigation_status' => 0]) - ->leftJoin('patients', 'ordered_investigations.patient_id', '=', 'patients.id') - ->where('ordered_investigations.order_type', '=', $imaging_type)->where('urgent_ids', '<>', '') - ->where($filters) - ->orderBy('ordered_investigations.id', 'desc') - ->select('ordered_investigations.*', 'patients.number as patient_number', 'patients.category_id as patients_category_id') - ->limit(200) - ->get(); - - $results = OrderedInvestigation::where(['investigation_status' => 1]) - ->leftJoin('patients', 'ordered_investigations.patient_id', '=', 'patients.id') - ->leftJoin('investigation_results', 'investigation_results.order_id', '=', 'ordered_investigations.id') - ->where('ordered_investigations.order_type', '=', $imaging_type) - ->where($filters) - ->orderBy('ordered_investigations.id', 'desc') - ->select( - 'ordered_investigations.*', - 'investigation_results.created_at as results_created_at', - 'patients.number as patient_number', - 'patients.category_id as patients_category_id', - 'investigation_results.id as results_id', - 'investigation_results.value as results_value' - ) - ->limit(200) - ->get(); - - $patient_categories = DB::table('patient_categories')->where('available', 1)->pluck('name', 'id'); - - return view('investigations::investigations.incoming_imaging', compact('incomings', 'search_text', 'imaging_type', 'results', 'patient_categories', 'urgent_incomings')); - } - - /** - * View incoming labs request details - * - * @return \Illuminate\Http\Response - */ - public function ordered_results(Request $request) - { - $patient_id = $request->patient_id; - $episode_id = $request->episode_id; - - // get all investigations that have specialised variables attached - $investigations_with_specialised_variables = DB::table('investigation_specialised_variables') - ->whereNull('deleted_at') - ->groupBy('investigation_id') - ->pluck('investigation_id') - ->toArray(); - - // declared variables needed for the top panes - $patient = Patient::where(['id' => $patient_id])->first(); - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $marital_statuses = DB::table('marital_statuses')->pluck("name", "id"); - $known_patient_allergies = Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->pluck('name', 'id'); - $drug_categories = DB::table('drug_categories')->get(); - // end of needed variables for the panes - - $order_type = $request->order_type; - $order_id = $request->order_id; - $primary_diagnosis = 'N/A'; - $other_diagnoses[0]['other'] = "N/A"; - $results_count = 0; - $count = 0; - $results = []; - - //check if results already exist - $investigation_results = InvestigationResults::where('patient_id', '=', $patient_id) - ->where('episode_id', '=', $episode_id) - ->where('result_type', '=', $order_type) - ->where('order_id', '=', $order_id) - ->first(); - - if ($investigation_results) { - // check if updated - if ($investigation_results->updated_by) { - $doctor_id = $investigation_results->updated_by; - } else { - $doctor_id = $investigation_results->created_by; - } - - $investigation_ids = explode(",", $investigation_results->investigation_id); - $investigation_value = explode(",", $investigation_results->value); - $comments_array = explode(",", $investigation_results->comment); - $ordered_investigation_comments_string = ""; - $ordered_investigation_comments_string = $investigation_results->order_comments; - $ordered_investigations_comments_explode = explode(",", $ordered_investigation_comments_string); - $results_comments_counter = 0; - - foreach ($investigation_ids as $investigation_id) { - - $inv_row = Investigation::where('id', '=', $investigation_id)->withTrashed()->first(); - if ($inv_row) { - $result_document = PatientDocument::where([['patient_id', $patient_id], ['episode_id', $episode_id], ['investigation_result_id', $investigation_results->id], ['investigation_id', $investigation_id]])->first(); - $results[$count]['id'] = $inv_row->id; - $results[$count]['name'] = $inv_row->name; - $results[$count]['insured'] = $inv_row->insurance_coverage; - $results[$count]['normal_range'] = ($inv_row->range_type == 1) ? get_dynamic_normal_range($inv_row->id, get_patient_age_group($patient_id), get_name($patient_id, 'id', 'gender', 'patients')) : $inv_row->normal_ranges; - $results[$count]['units'] = $inv_row->units; - $results[$count]['slug'] = $inv_row->slug; - $results[$count]['document'] = $result_document->id ?? null; - $results[$count]['title'] = $result_document->title ?? null; - $results[$count]['value'] = isset($investigation_value[$count]) ? $investigation_value[$count] : ""; - $results[$count]['comment'] = isset($comments_array[$count]) ? $comments_array[$count] : ""; - $results[$count]['order_comments'] = isset($ordered_investigations_comments_explode[$results_comments_counter]) ? $ordered_investigations_comments_explode[$results_comments_counter] : ""; - $results[$count]['investigation_specialised_results_id'] = 0; - - // check if investigation has specialised variables - if (in_array($investigation_id, $investigations_with_specialised_variables)) { - // get the specialised results and check if it is valid - if (isset($investigation_value[$count])) { - $specialised_results = InvestigationSpecialisedResult::find($investigation_value[$count]); - - if ($specialised_results) { - // store the id for updating later - $results[$count]['investigation_specialised_results_id'] = $investigation_value[$count]; - - // for this one, the specialised_variable_ids are the keys and the comments or values are the, well, the values - $results[$count]['value'] = array_combine(explode(",", $specialised_results->specialised_variable_id), explode(",", $specialised_results->value)); - $results[$count]['comment'] = array_combine(explode(",", $specialised_results->specialised_variable_id), explode(",", $specialised_results->comment)); - } else { - $results[$count]['value'] = ""; - $results[$count]['comment'] = ""; - } - } - } - - $count++; - $results_comments_counter++; - } - } - - $results_count = count($results); - } else { - $ordered_results = OrderedInvestigation::where('id', '=', $order_id)->first(); - - //check if updated - if ($ordered_results->updated_by) { - $doctor_id = $ordered_results->updated_by; - } else { - $doctor_id = $ordered_results->created_by; - } - - $investigation_ids = explode(",", $ordered_results->investigation_id); - $eyes = explode(",", $ordered_results->eye); - //ordered results with order comment - $ordered_investigation_comments_string = ""; - $ordered_investigation_comments_string = $ordered_results->order_comments; - $ordered_investigations_comments_explode = explode(",", $ordered_investigation_comments_string); - $results_comments_counter = 0; - - foreach ($investigation_ids as $investigation_id) { - - $inv_row = Investigation::where('id', '=', $investigation_id)->first(); - if ($inv_row) { - $results[$count]['id'] = $inv_row->id; - $results[$count]['name'] = $inv_row->name; - $results[$count]['insured'] = $inv_row->insurance_coverage; - $results[$count]['normal_range'] = ($inv_row->range_type == 1) ? get_dynamic_normal_range($inv_row->id, get_patient_age_group($patient_id), get_name($patient_id, 'id', 'gender', 'patients')) : $inv_row->normal_ranges; - $results[$count]['units'] = $inv_row->units; - $results[$count]['slug'] = $inv_row->slug; - $results[$count]['investigation_specialised_results_id'] = 0; - $results[$count]['value'] = ''; - $results[$count]['comment'] = ''; - $results[$count]['eye'] = isset($eyes[$results_comments_counter]) ? $eyes[$results_comments_counter] : ''; - $results[$count]['order_comments'] = isset($ordered_investigations_comments_explode[$results_comments_counter]) ? $ordered_investigations_comments_explode[$results_comments_counter] : ""; - $count++; - $results_comments_counter++; - } - } - } - - //get the diagnosis - $consul = Consultation::where('patient_id', '=', $patient_id)->where('episode_id', '=', $episode_id)->first(); - - if ($consul) { - if ($consul->primary_diagnosis) { - $primary_diagnosis = get_name($consul->primary_diagnosis, 'id', 'name', 'diagnoses'); - } else { - $primary_diagnosis = 'N/A'; - } - - $other_diagnoses = []; - $temp_count = 0; - - if ($consul->other_diagnoses) { - $temp_array = unserialize($consul->other_diagnoses); - foreach ($temp_array as $value) { - $other_diagnoses[$temp_count]['other'] = get_name($value, 'id', 'name', 'diagnoses'); - $temp_count++; - } - } else { - $other_diagnoses[$temp_count]['other'] = "N/A"; - } - } - - $doctor_name = get_name($doctor_id, 'id', 'first_name', 'users') . " " . get_name($doctor_id, 'id', 'last_name', 'users'); - $doctor_phone = get_name($doctor_id, 'id', 'phone', 'users'); - $consultation_details = Consultation::where('patient_id', '=', $patient_id)->where('episode_id', '=', $episode_id)->first(); - - $cardioEcho = CardioEchoResult::where('episode_id', $episode_id)->first(); - - $templates = CardioEchoTemplate::pluck('name', 'id')->toArray(); - $templates = [0 => '- select template -'] + $templates; - - return view('investigations::investigations.ordered_results', compact('cardioEcho', 'order_type', 'order_id', 'patient_id', 'episode_id', 'results', 'results_count', 'other_diagnoses', 'primary_diagnosis', 'doctor_phone', 'doctor_name', 'consultation_details', 'patient', 'categories', 'known_patient_allergies', 'known_patient_alerts', 'drug_categories_array', 'marital_statuses', 'drug_categories', 'investigations_with_specialised_variables', 'templates')); - } - - /** - * Save incoming labs request details - * - * @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector - */ - public function save_ordered_results(Request $request) - { - // get all investigations that have specialised variables attached - $investigations_with_specialised_variables = DB::table('investigation_specialised_variables') - ->whereNull('deleted_at') - ->groupBy('investigation_id') - ->pluck('investigation_id') - ->toArray(); - - $order_type = $request->order_type; - $order_id = $request->order_id; - $id = $request->id; - - // Replacing the commas the incoming value and comments with full colons - $value = $request->value; - $comment = $request->comment; - $specialized_id_array = $request->specialized_id; - $specialized_value_array = $request->specialized_value; - $specialized_comment_array = $request->specialized_comment; - $investigation_specialised_results_id_array = $request->investigation_specialised_results_id; - $lab_result_document_array = $request->lab_result_document; - - $patient_id = $request->patient_id; - $episode_id = $request->episode_id; - - $investigation_ids = ""; - $investigation_results = ""; - $comments = ""; - $per_investigation = ""; - $per_investigation_array = []; - $investigation_ids_array = []; - - $logged_in_user_id = Auth::user()->id; - - for ($i = 0; $i < count($id); $i++) { - // check if this investigation is a specialized one - if (in_array($id[$i], $investigations_with_specialised_variables)) { - // get all the specialised variables available to it - $specialized_variables = DB::table('investigation_specialised_variables')->whereNull('deleted_at')->where('investigation_id', $id[$i])->orderBy('ranking', 'asc')->get(); - - $current_ids_array = []; - $current_values_array = []; - $current_comments_array = []; - - // loop through the variables, finding out if any is coming from the form, - // because the specialized_id_array may contain multiple variables for multiple investigations - // so we need a way of picking the right ones. - foreach ($specialized_variables as $variable) { - $key = array_search($variable->id, $specialized_id_array); - - if (is_integer($key)) { - $current_ids_array[] = $specialized_id_array[$key]; - // clean up the values and comments for storing - $current_values_array[] = str_replace(',', ';', $specialized_value_array[$key]); - $current_comments_array[] = str_replace(',', ';', $specialized_comment_array[$key]); - } - } - - // check using the investigation_specialised_results_id array if this is an update - if ($investigation_specialised_results_id_array[$i] != 0 && InvestigationSpecialisedResult::find($investigation_specialised_results_id_array[$i])) { - $investigation_specialised_results = InvestigationSpecialisedResult::find($investigation_specialised_results_id_array[$i]); - } else { - $investigation_specialised_results = new InvestigationSpecialisedResult(); - } - - $investigation_specialised_results->specialised_variable_id = implode(',', $current_ids_array); - $investigation_specialised_results->value = implode(',', $current_values_array); - $investigation_specialised_results->comment = implode(',', $current_comments_array); - $investigation_specialised_results->created_by = $logged_in_user_id; - $investigation_specialised_results->updated_by = $logged_in_user_id; - $investigation_specialised_results->save(); - - $value[$i] = $investigation_specialised_results->id; - $comment[$i] = "-"; - } - - if ($i == (count($id) - 1)) { - $investigation_ids .= $id[$i]; - $investigation_ids_array[] = $id[$i]; - $investigation_results .= str_replace(',', ';', $value[$i]); - $comments .= str_replace(',', ';', $comment[$i]); - $per_investigation .= "0"; - } else { - $investigation_ids .= $id[$i] . ","; - $investigation_ids_array[] = $id[$i]; - $investigation_results .= str_replace(',', ';', $value[$i]) . ","; - $comments .= str_replace(',', ';', $comment[$i]) . ","; - $per_investigation .= "0,"; - } - } - - //check if is inpatient - $inpatient = get_name($order_id, "id", "inpatient", "ordered_investigations"); - - //check if results already exist - $invest_results = InvestigationResults::where('patient_id', '=', $patient_id) - ->where('episode_id', '=', $episode_id) - ->where('result_type', '=', $order_type) - ->where('order_id', '=', $order_id) - ->first(); - - if ($invest_results) { - - $order = InvestigationResults::find($invest_results->id); - - if ($order_type != 'Lab') { - $order->value = $investigation_results; - $order->comment = $comments; - $order->all_authenticated = 1; - $order->result_type = $order_type; - $order->per_investigation = str_replace('0', '1', $per_investigation); - $order->authenticated_by = $logged_in_user_id; - $order->updated_by = $logged_in_user_id; - - $order_status = 1; - } else { - $order->value = $investigation_results; - $order->comment = $comments; - $order->all_authenticated = 0; - $order->result_type = $order_type; - $order->updated_by = $logged_in_user_id; - } - - try { - $order->save(); - - flash("Investigation results have been updated")->success(); - - if (isset($order_status)) { - //update ordered investigations status - $status = OrderedInvestigation::find($order_id); - $status->investigation_status = 1; - $status->save(); - } - } catch (QueryException $e) { - return back()->withInput(); - } - } else { - $order = new InvestigationResults; - - if ($order_type != 'Lab') { - $order->value = $investigation_results; - $order->comment = $comments; - $order->all_authenticated = 1; - $order->result_type = $order_type; - $order->per_investigation = str_replace('0', '1', $per_investigation); - $order->authenticated_by = $logged_in_user_id; - $order->created_by = $logged_in_user_id; - $order->investigation_id = $investigation_ids; - $order->patient_id = $patient_id; - $order->episode_id = $episode_id; - $order->order_id = $order_id; - $order->inpatient = $inpatient; - - $order_status = 1; - } else { - $order->investigation_id = implode(",", $investigation_ids_array); //$investigation_ids; - $order->value = $investigation_results; - $order->comment = $comments; - $order->patient_id = $patient_id; - $order->episode_id = $episode_id; - $order->order_id = $order_id; - $order->inpatient = $inpatient; - $order->per_investigation = $per_investigation; - $order->all_authenticated = 0; - $order->result_type = $order_type; - $order->created_by = $logged_in_user_id; - } - - try { - $order->save(); - - flash("Investigation results have been submitted")->success(); - - if (isset($order_status)) { - //update ordered investigations status - $status = OrderedInvestigation::find($order_id); - $status->investigation_status = 1; - $status->save(); - } - } catch (QueryException $e) { - return back()->withInput(); - } - } - - if (!empty($lab_result_document_array[0])) { - foreach ($request->file('lab_result_document') as $key => $lab_result_document) { - $patient_document = PatientDocument::where([['patient_id', $patient_id], ['episode_id', $episode_id], ['investigation_id', $id[$key]]])->first(); - if (empty($patient_document)) { - $patient_document = new PatientDocument; - $patient_document->patient_id = $request->patient_id; - $patient_document->episode_id = $request->episode_id; - $patient_document->investigation_id = $id[$key]; - $patient_document->investigation_result_id = $order->id; - $patient_document->created_by = Auth::id(); - } else $patient_document->updated_by = Auth::id(); - - $patient_document->title = 'Lab Result document_' . get_name($id[$key], 'id', 'name', 'investigations'); - $patient_document->description = 'Laboratory Result document of the ' . get_name($id[$key], 'id', 'name', 'investigations') . ' investigation.'; - - if ($lab_result_document->isValid()) { - $file = $lab_result_document; - $store = public_path() . '/uploads/patient-documents/'; - $file_name = $file->getClientOriginalName(); - $file->move($store, $file_name); - $patient_document->path = public_path() . '/uploads/patient-documents/' . $file_name; - } - - $patient_document->date_taken = Carbon::now()->toDateString(); - $patient_document->save(); - } - } - - - - // i took the road less taken, and that has made all the difference - if ($order_type == 'Lab') { - return redirect("/investigations/view_lab_results_details/" . $order_id); - } elseif ($order_type == 'Imaging') { - return redirect("/investigations/incoming_imaging/" . $order_type); - } elseif ($order_type == 'Ultrasound') { - return redirect("/investigations/incoming_imaging/" . $order_type); - } elseif ($order_type == 'Cardio') { - return redirect("/investigations/incoming_imaging/" . $order_type); - } - } - - /** - * Authenticate lab investigations. - * - * @param Request $request - * @return \Illuminate\Contracts\View\Factory|\Illuminate\Foundation\Application|\Illuminate\Http\Response|\Illuminate\View\View - */ - public function authenticate_labs(Request $request) - { - $search_text = ""; - $filters = []; - - // if patient id is active, get all records regardless of date; else search by date - if (isset($request->patient_id) && $request->patient_id != 0) { - $filters[] = ['investigation_results.patient_id', '=', $request->patient_id]; - $search_text .= "Patient: " . get_full_name($request->patient_id, 'id', 'first_name', 'last_name', 'patients'); - $search_text .= " (" . get_name($request->patient_id, 'id', 'number', 'patients') . ") "; - } else { - switch ($request->search_date_by) { - case 'yesterday': - $end_date = Carbon::yesterday()->endOfDay(); - $start_date = Carbon::yesterday()->startOfDay(); - $search_text .= "Yesterday "; - break; - case 'custom_date': - $end_date = Carbon::parse($request->start_date)->endOfDay(); - $start_date = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "From: " . streamline_date($start_date) . " "; - break; - case 'custom_date_range': - $end_date = Carbon::parse($request->end_date)->endOfDay(); - $start_date = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "From: " . streamline_date($start_date) . " to " . streamline_date($end_date) . " "; - break; - case 'today': - default: - $end_date = Carbon::today()->endOfDay(); - $start_date = Carbon::today()->startOfDay(); - $search_text .= "Today "; - break; - } - - $filters[] = ['investigation_results.created_at', '>', $start_date]; - $filters[] = ['investigation_results.created_at', '<', $end_date]; - } - - $invests = DB::table('investigation_results') - ->join('ordered_investigations', 'investigation_results.order_id', '=', 'ordered_investigations.id') - ->select('investigation_results.investigation_id', 'investigation_results.value', 'investigation_results.patient_id', 'investigation_results.created_by', 'investigation_results.created_at', 'investigation_results.order_id', 'investigation_results.per_investigation', 'ordered_investigations.id', 'ordered_investigations.investigation_status', 'ordered_investigations.urgent', 'ordered_investigations.urgent_ids', 'investigation_results.id as result_id') - ->where($filters) - ->where('investigation_results.all_authenticated', '=', 0) - ->where('investigation_results.result_type', '=', 'Lab') - ->orderBy('investigation_results.created_at', 'desc') - ->get() - ->toArray(); - - $orders = []; - $orders_count = 0; - $data = []; - $data_count = 0; - - foreach ($invests as $invest) { - $orders[$orders_count]['order_id'] = $invest->order_id; - $orders[$orders_count]['date'] = streamline_date_time_short($invest->created_at); - $orders[$orders_count]['number'] = get_name($invest->patient_id, 'id', 'number', 'patients'); - $orders[$orders_count]['id'] = $invest->patient_id; - $orders[$orders_count]['urgent_ids'] = $invest->urgent_ids; - - $investigations = explode(",", $invest->investigation_id); - $values = explode(",", $invest->value); - $per_investigation = explode(",", $invest->per_investigation); - - foreach ($investigations as $investigation) { - $result_document = PatientDocument::where([['patient_id', $invest->patient_id], ['investigation_result_id', $invest->result_id], ['investigation_id', $investigation]])->first(); - $data[$data_count]['investigation_id'] = $investigation; - $data[$data_count]['name'] = get_name($investigation, 'id', 'name', 'investigations'); - $data[$data_count]['value'] = $values[$data_count] ?? 'N/A'; - $data[$data_count]['document'] = $result_document->id ?? null; - $data[$data_count]['title'] = $result_document->title ?? null; - $data[$data_count]['per_investigation'] = $per_investigation[$data_count] ?? 'N/A'; - - $data_count++; - } - - $orders[$orders_count]['values'] = $data; - - //reset data array - $data = []; - $data_count = 0; - - $orders_count++; - } - - return view('investigations::investigations.authenticate_labs', compact('orders', 'search_text')); - } - - /** - * Authenticate investigations. - * - * @return \Illuminate\Http\Response - */ - public function authenticate_investigations(Request $request) - { - - // check if user with details exists - $user = User::where('username', '=', $request->username)->first(); - - if (!$user) { - flash("Username does not exist in system")->error(); - return back()->withInput(); - } - - if (!password_verify($request->password, $user->password)) { - flash("Password does not match username")->error(); - return back()->withInput(); - } - - if ($user->can('investigations-authenticate')) { - $order_ids = $request->order_id; - $investigation_id = $request->investigation_id; - $count_orders = $request->count; - - //loop through all the ordered investigations - for ($x = 0; $x < count($order_ids); $x++) { - - //fill initial array with 0 values - $all_inv = []; - - for ($y = 0; $y < $count_orders[$x]; $y++) { - $all_inv[] = 0; - } - - for ($i = 0; $i < count($investigation_id); $i++) { - - $inv = explode("/", $investigation_id[$i]); - - if ($inv[0] == $order_ids[$x]) { - $all_inv[$inv[1]] = 1; - } - } - - $per_inv = implode(",", $all_inv); - - //prepare save data - $result = InvestigationResults::where('order_id', '=', $order_ids[$x])->first(); - $logged_in_user_id = $user->id; - - if (array_unique($all_inv) === array(1)) { - //all results have been authenticated - $result->all_authenticated = 1; - $result->per_investigation = $per_inv; - $result->authenticated_by = $logged_in_user_id; - - //update ordered status - $order = OrderedInvestigation::find($order_ids[$x]); - - if ($order) { - $order->investigation_status = 1; - $order->updated_by = $logged_in_user_id; - - $order->save(); - } - } else { - //not all results authenticated - $result->all_authenticated = 0; - $result->per_investigation = $per_inv; - $result->authenticated_by = $logged_in_user_id; - - //update ordered status - $order = OrderedInvestigation::find($order_ids[$x]); - - if ($order) { - $order->investigation_status = 0; - $order->updated_by = $logged_in_user_id; - - $order->save(); - } - } - - //save result - $result->save(); - } - - flash("Lab results have been authenticated")->success(); - return redirect("/investigations/authenticate_labs"); - } else { - flash("You are not allowed to authenticate investigations")->error(); - return back()->withInput(); - } - } - - /** - * View a patient's investigation results. - * - */ - public function view_patient_investigation($result_id) - { - $result = InvestigationResults::find($result_id); - - if ($result) { - $patient_id = $result->patient_id; - $episode_id = $result->episode_id; - $result_type = $result->result_type; - $patient = Patient::where(['id' => $patient_id])->first(); - - $inv = []; - - $inv['date'] = streamline_date(get_name($result->episode_id, 'id', 'created_at', 'patient_episodes')); - - $investigations = explode(",", $result->investigation_id); - - $values = explode(",", $result->value); - $comments = explode(",", $result->comment); - - $data = []; - $count = 0; - - foreach ($investigations as $investigation) { - $investigation_details = Investigation::find($investigation); - - if ($investigation_details) { - $data[$count]['id'] = $investigation; - $data[$count]['name'] = $investigation_details->name; - $data[$count]['range'] = ($investigation_details->range_type == 1) ? get_dynamic_normal_range($investigation, get_patient_age_group($patient_id), get_name($patient_id, 'id', 'gender', 'patients')) : $investigation_details->normal_ranges; - $data[$count]['slug'] = $investigation_details->slug; - $data[$count]['result'] = $values[$count]; - $data[$count]['comment'] = $comments[$count]; - $data[$count]['type'] = $investigation_details->type; - $count++; - } - } - - $inv['data'] = $data; - - $order_id = $result->order_id; - - return view('investigations::investigations.view_patient_investigation', compact('inv', 'patient', 'episode_id', 'result_type', 'result_id', 'order_id')); - } else { - flash("Unable to find investigation results. Please try again")->error(); - return redirect('/home'); - } - } - - /** - * Update all the resources in storage. - * - * @return \Illuminate\Contracts\View\Factory|\Illuminate\Foundation\Application|\Illuminate\View\View - */ - public function alter_results(Request $request) - { - $search_text = ""; - $filters = []; - - // if patient id is active, get all records regardless of date; else search by date - if (isset($request->patient_id) && $request->patient_id != 0) { - $filters[] = ['patient_id', '=', $request->patient_id]; - $search_text .= "Patient: " . get_full_name($request->patient_id, 'id', 'first_name', 'last_name', 'patients'); - $search_text .= " (" . get_name($request->patient_id, 'id', 'number', 'patients') . ") "; - } else { - switch ($request->search_date_by) { - case 'yesterday': - $end_date = Carbon::yesterday()->endOfDay(); - $start_date = Carbon::yesterday()->startOfDay(); - $search_text .= "Yesterday "; - break; - case 'custom_date': - $end_date = Carbon::parse($request->start_date)->endOfDay(); - $start_date = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "From: " . streamline_date($start_date) . " "; - break; - case 'custom_date_range': - $end_date = Carbon::parse($request->end_date)->endOfDay(); - $start_date = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "From: " . streamline_date($start_date) . " to " . streamline_date($end_date) . " "; - break; - case 'today': - default: - $end_date = Carbon::today()->endOfDay(); - $start_date = Carbon::today()->startOfDay(); - $search_text .= "Today "; - break; - } - - $filters[] = ['created_at', '>', $start_date]; - $filters[] = ['created_at', '<', $end_date]; - } - - $results = InvestigationResults::where('result_type', 'Lab') - ->where('status', 0) - ->where('all_authenticated', 1) - ->where($filters) - ->orderBy('id', 'desc') - ->get(); - - return view('investigations::investigations.alter_results', compact('results', 'search_text')); - } - - /** - * Update all the resources in storage. - * - * @return \Illuminate\Contracts\View\Factory|\Illuminate\Foundation\Application|\Illuminate\View\View - */ - public function alter_results_others(Request $request) - { - $search_text = ""; - $filters = []; - - // if patient id is active, get all records regardless of date; else search by date - if (isset($request->patient_id) && $request->patient_id != 0) { - $filters[] = ['ordered_investigations.patient_id', '=', $request->patient_id]; - $search_text .= "Patient: " . get_full_name($request->patient_id, 'id', 'first_name', 'last_name', 'patients'); - $search_text .= " (" . get_name($request->patient_id, 'id', 'number', 'patients') . ") "; - } else { - switch ($request->search_date_by) { - case 'yesterday': - $end_date = Carbon::yesterday()->endOfDay(); - $start_date = Carbon::yesterday()->startOfDay(); - $search_text .= "Yesterday "; - break; - case 'custom_date': - $end_date = Carbon::parse($request->start_date)->endOfDay(); - $start_date = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "From: " . streamline_date($start_date) . " "; - break; - case 'custom_date_range': - $end_date = Carbon::parse($request->end_date)->endOfDay(); - $start_date = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "From: " . streamline_date($start_date) . " to " . streamline_date($end_date) . " "; - break; - case 'today': - default: - $end_date = Carbon::today()->endOfDay(); - $start_date = Carbon::today()->startOfDay(); - $search_text .= "Today "; - break; - } - - $filters[] = ['ordered_investigations.created_at', '>', $start_date]; - $filters[] = ['ordered_investigations.created_at', '<', $end_date]; - } - - $results = InvestigationResults::leftJoin('patients', 'investigation_results.patient_id', '=', 'patients.id') - ->leftJoin('ordered_investigations', 'ordered_investigations.id', '=', 'investigation_results.order_id') - ->whereIn('investigation_results.result_type', ['Imaging', 'Ultrasound', 'Cardio', 'Ultrasound_Obstetric']) - ->where($filters) - ->orderBy('investigation_results.id', 'desc') - ->select( - 'investigation_results.*', - 'ordered_investigations.created_at as requested_at', - 'patients.number as patient_number', - 'patients.category_id as patients_category_id', - 'ordered_investigations.inpatient', - 'ordered_investigations.payment_status' - ) - ->limit(250) - ->get(); - - $patient_categories = DB::table('patient_categories')->where('available', 1)->pluck('name', 'id'); - - return view('investigations::investigations.alter_results_others', compact('results', 'search_text', 'patient_categories')); - } - - /** - * Update all the resources in storage. - * - * @return \Illuminate\Contracts\View\Factory|\Illuminate\Foundation\Application|\Illuminate\View\View - */ - public function alter_ordered_results(Request $request) - { - $patient = Patient::find($request->patient_id); - - $id = $request->id; - $invs = []; - $count = 0; - $result_type = ""; - - $results = InvestigationResults::where('id', '=', $id)->get(); - - // get all investigations that have specialised variables attached - $investigations_with_specialised_variables = DB::table('investigation_specialised_variables') - ->whereNull('deleted_at') - ->groupBy('investigation_id') - ->pluck('investigation_id') - ->toArray(); - - foreach ($results as $result) { - - $investigations = explode(",", $result->investigation_id); - $values = explode(",", $result->value); - - $comments = explode(",", $result->comment); - $result_type = $result->result_type; - $episode_id = $result->episode_id; - - foreach ($investigations as $investigation) { - $result_document = PatientDocument::where([['patient_id', $request->patient_id], ['episode_id', $episode_id], ['investigation_id', $investigation]])->first(); - $invs[$count]['count'] = $count + 1; - $invs[$count]['id'] = $investigation; - $invs[$count]['name'] = get_name($investigation, 'id', 'name', 'investigations'); - $invs[$count]['range'] = (get_name($investigation, 'id', 'range_type', 'investigations') == 1) ? get_dynamic_normal_range($investigation, get_patient_age_group($request->patient_id), get_name($request->patient_id, 'id', 'gender', 'patients')) : get_name($investigation, 'id', 'normal_ranges', 'investigations'); - $invs[$count]['units'] = get_name($investigation, 'id', 'units', 'investigations'); - $invs[$count]['slug'] = get_name($investigation, 'id', 'slug', 'investigations'); - $invs[$count]['episode_id'] = $episode_id; - $invs[$count]['result'] = $values[$count]; - $invs[$count]['comment'] = $comments[$count]; - $invs[$count]['investigation_specialised_results_id'] = 0; - $invs[$count]['document'] = $result_document->id ?? null; - $invs[$count]['title'] = $result_document->title ?? null; - - // check if investigation has specialised variables - if (in_array($investigation, $investigations_with_specialised_variables)) { - // get the specialised results and check if it is valid - $specialised_results = InvestigationSpecialisedResult::find($values[$count]); - - if ($specialised_results) { - // store the id for updating later - $invs[$count]['investigation_specialised_results_id'] = $values[$count]; - - // for this one, the specialised_variable_ids are the keys and the comments or values are the, well, the values - $invs[$count]['value'] = array_combine(explode(",", $specialised_results->specialised_variable_id), explode(",", $specialised_results->value)); - $invs[$count]['comment'] = array_combine(explode(",", $specialised_results->specialised_variable_id), explode(",", $specialised_results->comment)); - } else { - $invs[$count]['value'] = ""; - $invs[$count]['comment'] = ""; - } - } - - - $count++; - } - } - - return view('investigations::investigations.alter_ordered_results', compact('invs', 'id', 'investigations_with_specialised_variables', 'patient', 'result_type')); - } - - /** - * Update all the resources in storage. - * - * @return \Illuminate\Foundation\Application|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector - */ - public function save_altered_results(Request $request) - { - // get all investigations that have specialised variables attached - $investigations_with_specialised_variables = DB::table('investigation_specialised_variables') - ->whereNull('deleted_at') - ->groupBy('investigation_id') - ->pluck('investigation_id') - ->toArray(); - - // Replacing the commas the incoming value and comments with full colons - $id = $request->order_id; - $id_array = $request->id; - $value = $request->value; - $comment = $request->comment; - $specialized_id_array = $request->specialized_id; - $specialized_value_array = $request->specialized_value; - $specialized_comment_array = $request->specialized_comment; - $investigation_specialised_results_id_array = $request->investigation_specialised_results_id; - - $investigation_results = ""; - $comments = ""; - - $logged_in_user_id = Auth::user()->id; - - for ($i = 0; $i < count($id_array); $i++) { - // check if this investigation is a specialized one - if (in_array($id_array[$i], $investigations_with_specialised_variables)) { - // get all the specialised variables available to it - $specialized_variables = DB::table('investigation_specialised_variables')->whereNull('deleted_at')->where('investigation_id', $id_array[$i])->get(); - - $current_ids_array = []; - $current_values_array = []; - $current_comments_array = []; - - // loop through the variables, finding out if any is coming from the form, - // because the specialized_id_array may contain multiple variables for multiple investigations - // so we need a way of picking the right ones. - foreach ($specialized_variables as $variable) { - $key = array_search($variable->id, $specialized_id_array); - - if (is_integer($key)) { - $current_ids_array[] = $specialized_id_array[$key]; - // clean up the values and comments for storing - $current_values_array[] = str_replace(',', ';', $specialized_value_array[$key]); - $current_comments_array[] = str_replace(',', ';', $specialized_comment_array[$key]); - } - } - - $investigation_specialised_results = InvestigationSpecialisedResult::find($investigation_specialised_results_id_array[$i]); - - $investigation_specialised_results->specialised_variable_id = implode(',', $current_ids_array); - $investigation_specialised_results->value = implode(',', $current_values_array); - $investigation_specialised_results->comment = implode(',', $current_comments_array); - $investigation_specialised_results->created_by = $logged_in_user_id; - $investigation_specialised_results->updated_by = $logged_in_user_id; - $investigation_specialised_results->save(); - - $value[$i] = $investigation_specialised_results->id; - $comment[$i] = "-"; - } - - if ($i == (count($id_array) - 1)) { - $investigation_results .= str_replace(',', ';', $value[$i]); - $comments .= str_replace(',', ';', $comment[$i]); - } else { - $investigation_results .= str_replace(',', ';', $value[$i]) . ","; - $comments .= str_replace(',', ';', $comment[$i]) . ","; - } - } - - if (!empty($request->lab_result_document[0])) { - foreach ($request->file('lab_result_document') as $key => $lab_result_document) { - $patient_document = PatientDocument::where([['patient_id', $request->patient_id], ['episode_id', $request->episode_ids[$key]], ['investigation_result_id', $request->order_id], ['investigation_id', $request->id[$key]]])->first(); - if (empty($patient_document)) { - $patient_document = new PatientDocument; - $patient_document->patient_id = $request->patient_id; - $patient_document->episode_id = $request->episode_ids[$key]; - $patient_document->investigation_id = $request->id[$key]; - $patient_document->investigation_result_id = $request->order_id; - $patient_document->created_by = Auth::id(); - } else $patient_document->updated_by = Auth::id(); - - $patient_document->title = 'Lab Result document_' . get_name($request->id[$key], 'id', 'name', 'investigations'); - $patient_document->description = 'Laboratory Result document of the ' . get_name($request->id[$key], 'id', 'name', 'investigations') . ' investigation.'; - - if ($lab_result_document->isValid()) { - $file = $lab_result_document; - $store = public_path() . '/uploads/patient-documents/'; - $file_name = $file->getClientOriginalName(); - $file->move($store, $file_name); - $patient_document->path = public_path() . '/uploads/patient-documents/' . $file_name; - } - - $patient_document->date_taken = Carbon::now()->toDateString(); - $patient_document->save(); - } - } - - $result = InvestigationResults::find($id); - - $result->value = $investigation_results; - $result->comment = $comments; - $result->updated_by = $logged_in_user_id; - - try { - $result->save(); - - flash("Investigation results have been updated")->success(); - } catch (QueryException $e) { - return back()->withInput(); - } - - if ($result->result_type == "Lab") { - return redirect('/investigations/alter_results'); - } else { - return redirect('/investigations/alter_results_others'); - } - } - - /** - * Update all the resources in storage. - * - */ - public function historical_labs(Request $request) - { - $search_text = ""; - $filters = []; - - if (isset($request->patient_id) && $request->patient_id != 0) { - $filters[] = ['investigation_results.patient_id', '=', $request->patient_id]; - $search_text .= "Patient: " . get_full_name($request->patient_id, 'id', 'first_name', 'last_name', 'patients'); - $search_text .= " (" . get_name($request->patient_id, 'id', 'number', 'patients') . ") "; - } - - $patients = InvestigationResults::leftJoin('patients', 'investigation_results.patient_id', '=', 'patients.id') - ->where('investigation_results.result_type', '=', 'Lab') - ->where('investigation_results.all_authenticated', '=', 1) - ->where($filters) - ->limit(250) - ->distinct(['investigation_results.patient_id']) - ->orderBy('investigation_results.id', 'desc') - ->get(['investigation_results.patient_id', 'patients.number', 'patients.gender', 'patients.phone']); - - return view('investigations::investigations.historical_labs', compact('patients', 'search_text')); - } - - /** - * Update all the resources in storage. - * - */ - public function view_historical_results_labs($patient_id) - { - //prepare the arrays - $dates = array(); - $invs_array = array(); - $values = array(); - - $patients = InvestigationResults::where('patient_id', '=', $patient_id) - ->where('result_type', '=', 'Lab') - ->where('all_authenticated', '=', 1) - ->orderBy('created_at', 'desc') - ->limit(7) - ->get(); - - foreach ($patients as $patient) { - $dates[] = streamline_date($patient->created_at); - - $investigations = explode(",", $patient->investigation_id); - - foreach ($investigations as $investigation) { - - if (!in_array($investigation, $invs_array)) { - $invs_array[] = $investigation; - } - } - } - - //loop through the investigation ids to add values - for ($i = 0; $i < count($invs_array); $i++) { - - //count for the returnInvestigations - $count = 0; - - foreach ($patients as $patient) { - //get values from csv to array - $investigations = explode(",", $patient->investigation_id); - - $return_values = explode(",", $patient->value); - - $comments = explode(",", $patient->comment); - - //check if current investigation is in array - if (in_array($invs_array[$i], $investigations)) { - - //get key of that investigation which exists - $key = array_search($invs_array[$i], $investigations); - - if ($patient->result_type == 'Ultrasound_Obstetric') { - //assign real$return_values value - $values[$i][$count] = array($return_values[$key], $patient->order_id, $patient_id, $patient->episode_id); - } elseif (get_name($invs_array[$i], 'id', 'type', 'investigations') == 1) { - // assign real value representing id - $values[$i][$count] = $return_values[$key] ?? ""; - } else { - //assign real value - $values[$i][$count] = ($return_values[$key] ?? "") . " - (" . ($comments[$key] ?? "") . ")"; - } - } else { - //assign N/A - $values[$i][$count] = ""; - } - - $count++; - } - } - - $patient = Patient::find($patient_id); - - return view('investigations::investigations.view_historical_results_labs', compact( - 'patient_id', - 'patient', - 'dates', - 'invs_array', - 'values' - )); - } - - public function imaging_historical_results(Request $request) - { - $search_text = ""; - $filters = []; - - if (isset($request->patient_id) && $request->patient_id != 0) { - $filters[] = ['investigation_results.patient_id', '=', $request->patient_id]; - $search_text .= "Patient: " . get_full_name($request->patient_id, 'id', 'first_name', 'last_name', 'patients'); - $search_text .= " (" . get_name($request->patient_id, 'id', 'number', 'patients') . ") "; - } - - $patients = InvestigationResults::leftJoin('patients', 'investigation_results.patient_id', '=', 'patients.id') - ->whereIn('investigation_results.result_type', ['Imaging', 'Ultrasound', 'Ultrasound_Obstetric']) - ->where('investigation_results.all_authenticated', '=', 1) - ->where($filters) - ->limit(250) - ->distinct() - ->get(['investigation_results.patient_id', 'patients.number', 'patients.gender', 'patients.phone']); - - return view('investigations::investigations.imaging_historical_results', compact('patients', 'search_text')); - } - - public function investigations_review_ultrasound_obstetric() - { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $patient = Patient::find($patient_id); - - $categories = DB::table('investigation_categories')->where('super_category_id', 4)->whereNull('deleted_at')->pluck('id')->toArray(); - - $investigations = DB::table('investigations')->whereNull('deleted_at')->whereIn('category', $categories) - ->pluck('name', 'id')->toArray(); - $investigations = ['' => '- select -'] + $investigations; - - $anc_details = DB::table('ante_natal_clinic_registrations')->where('episode_id', $episode_id)->first(); - - return view('investigations::investigations.investigations_review_ultrasound_obstetric', compact('patient_id', 'episode_id', 'patient', 'investigations', 'anc_details')); - } - - public function submit_ordered_obstetric_investigations(Request $request) - { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - //create new order investigation - $order = new OrderedInvestigation; - - $order->investigation_id = $request->investigations_id; - $order->patient_id = $patient_id; - $order->episode_id = $episode_id; - $order->urgent = 0; - $order->urgent_ids = ""; - $order->inpatient = 0; - $order->for_inpatient = ""; - $order->order_type = 'Ultrasound_Obstetric'; - $order->comment = $request->comment; - $order->eye = ""; - $order->order_comments = $request->comment; - $order->created_by = Auth::user()->id; - - try { - $order->save(); - flash("Ordered Investigation Added Successfully")->success(); - } catch (QueryException $e) { - flash("An error occurred. Please try again or contact Stre@mline support")->error(); - } - - return redirect('ante_natal_clinic_follow_up/create'); - } - - public function ultrasound_obstetric_report(Request $request) - { - - - $order_id = $request->order_id; - $patient_id = $request->patient_id; - $episode_id = $request->episode_id; - $order_type = $request->order_type; - - $patient = Patient::find($patient_id); - $categories = PatientCategory::pluck("name", "id"); - $marital_statuses = MaritalStatus::pluck("name", "id"); - $occupations = Occupation::pluck('name', 'id'); - $drug_categories = DrugCategory::orderBy('name', 'asc')->get(); - $documents = PatientDocument::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_allergies = Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories_array = DrugCategory::pluck('name', 'id'); - - return view('investigations::investigations.ultrasound_obstetric_report', compact('patient_id', 'episode_id', 'order_id', 'order_type', 'patient', 'categories', 'known_patient_allergies', 'drug_categories', 'drug_categories_array', 'documents', 'marital_statuses', 'occupations')); - } - - public function submit_ultrasound_obstetric_report(Request $request) - { - // man the tanks - $crown_rump = $request->crown_rump1 . "," . $request->crown_rump2 . "," . $request->crown_rump3; - $bi_parietal_diameter = $request->bi_parietal_diameter1 . "," . $request->bi_parietal_diameter2 . "," . $request->bi_parietal_diameter3; - $head_circumference = $request->head_circumference1 . "," . $request->head_circumference2 . "," . $request->head_circumference3; - $abdominal_circumference = $request->abdominal_circumference1 . "," . $request->abdominal_circumference2 . "," . $request->abdominal_circumference3; - $femur_length = $request->femur_length1 . "," . $request->femur_length2 . "," . $request->femur_length3; - $estimated_foetal_weight = $request->estimated_foetal_weight1 . "," . $request->estimated_foetal_weight2 . "," . $request->estimated_foetal_weight3; - $average_gestational_age = $request->average_gestational_age1 . "," . $request->average_gestational_age2 . "," . $request->average_gestational_age3; - $expected_delivery_date = $request->expected_delivery_date1 . "," . $request->expected_delivery_date2 . "," . $request->expected_delivery_date3; - $presentation = $request->presentation1 . "," . $request->presentation2 . "," . $request->presentation3; - $placental_site = $request->placental_site1 . "," . $request->placental_site2 . "," . $request->placental_site3; - $liquor_volume = $request->liquor_volume1 . "," . $request->liquor_volume2 . "," . $request->liquor_volume3; - $cord_artery_doppler = $request->cord_artery_doppler1 . "," . $request->cord_artery_doppler2 . "," . $request->cord_artery_doppler3; - $comments = $request->comments1 . ",,," . $request->comments2 . ",,," . $request->comments3; - - - $logged_in_user_id = Auth::user()->id; - - // check if this is an alter or new record - if (!empty($request->alter_obstetric)) { - // update report - $report = ObstetricUltrasoundReports::find($request->alter_obstetric); - - $report->order_id = $request->order_id; - $report->scan_date = Carbon::createFromFormat('d-m-Y', $request->scan_date)->format('Y-m-d'); - $report->sonographer = $request->sonographer; - $report->no_of_foetus = $request->no_of_foetus; - $report->crown_rump = $crown_rump; - $report->bi_parietal_diameter = $bi_parietal_diameter; - $report->head_circumference = $head_circumference; - $report->abdominal_circumference = $abdominal_circumference; - $report->femur_length = $femur_length; - $report->average_gestational_age = $average_gestational_age; - $report->estimated_foetal_weight = $estimated_foetal_weight; - $report->expected_delivery_date = $expected_delivery_date; - $report->presentation = $presentation; - $report->placental_site = $placental_site; - $report->liquor_volume = $liquor_volume; - $report->cord_artery_doppler = $cord_artery_doppler; - $report->comments = $comments; - $report->updated_by = $logged_in_user_id; - - $report->save(); - - flash("Investigation Results Altered Successfully")->success(); - - return redirect("/investigations/alter_results_others"); - } else { - // create new report - $report = new ObstetricUltrasoundReports; - - $report->order_id = $request->order_id; - $report->scan_date = Carbon::createFromFormat('d-m-Y', $request->scan_date)->format('Y-m-d'); - $report->sonographer = $request->sonographer; - $report->no_of_foetus = $request->no_of_foetus; - $report->crown_rump = $crown_rump; - $report->bi_parietal_diameter = $bi_parietal_diameter; - $report->head_circumference = $head_circumference; - $report->abdominal_circumference = $abdominal_circumference; - $report->femur_length = $femur_length; - $report->average_gestational_age = $average_gestational_age; - $report->estimated_foetal_weight = $estimated_foetal_weight; - $report->expected_delivery_date = $expected_delivery_date; - $report->presentation = $presentation; - $report->placental_site = $placental_site; - $report->liquor_volume = $liquor_volume; - $report->cord_artery_doppler = $cord_artery_doppler; - $report->comments = $comments; - $report->created_by = $logged_in_user_id; - - $report->save(); - - // update investigation status - $status = OrderedInvestigation::find($request->order_id); - $status->investigation_status = 1; - $status->save(); - - // create new record in the investigation results - $order = new InvestigationResults; - - $order->investigation_id = $status->investigation_id; - $order->value = $report->id; - $order->comment = $comments; - $order->all_authenticated = 1; - $order->result_type = 'Ultrasound_Obstetric'; - $order->per_investigation = 1; - $order->authenticated_by = $logged_in_user_id; - $order->created_by = $logged_in_user_id; - $order->patient_id = $request->patient_id; - $order->episode_id = $request->episode_id; - $order->order_id = $request->order_id; - $order->inpatient = 0; - - $order->save(); - - flash("Investigation Results Added Successfully")->success(); - - return redirect("/investigations/incoming_imaging/Ultrasound_Obstetric"); - } - } - - public function view_patient_investigation_obstetric($obstetric_result_id) - { - - $report = ObstetricUltrasoundReports::where(['id' => $obstetric_result_id])->first(); - - // for old kisiizi records which use the order_id - if (!$report) { - $report = ObstetricUltrasoundReports::where(['order_id' => $obstetric_result_id])->first(); - } - - $invs_order = OrderedInvestigation::find($report->order_id); - // dd($report); - - - - if ($invs_order) { - $patient_id = $invs_order->patient_id; - $episode_id = $invs_order->episode_id; - - $patient = Patient::find($patient_id); - - $anc_details = DB::table('ante_natal_clinic_registrations')->where('episode_id', $episode_id)->first(); - - return view('investigations::investigations.view_patient_investigation_obstetric', compact('episode_id', 'patient', 'report', 'obstetric_result_id', 'anc_details', 'invs_order')); - } else { - flash("Unable to find obstetric results")->error(); - return redirect('/home'); - } - } - - public function alter_ordered_results_obstetric(Request $request) - { - $obstetric_ultrasound_report_id = $request->obstetric_ultrasound_report_id; - $patient_id = $request->patient_id; - $episode_id = $request->episode_id; - $order_id = $request->order_id; - - $report = ObstetricUltrasoundReports::where(['id' => $obstetric_ultrasound_report_id])->first(); - - // for old kisiizi records which use the order_id - if (!$report) { - $report = ObstetricUltrasoundReports::where(['order_id' => $obstetric_ultrasound_report_id])->first(); - } - - $patient = Patient::find($patient_id); - $categories = PatientCategory::pluck("name", "id"); - $marital_statuses = MaritalStatus::pluck("name", "id"); - $occupations = Occupation::pluck('name', 'id'); - $drug_categories = DrugCategory::orderBy('name', 'asc')->get(); - $documents = PatientDocument::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_allergies = Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories_array = DrugCategory::pluck('name', 'id'); - - return view('investigations::investigations.alter_ordered_results_obstetric', compact('patient_id', 'episode_id', 'order_id', 'patient', 'categories', 'known_patient_allergies', 'drug_categories', 'drug_categories_array', 'documents', 'marital_statuses', 'occupations', 'report', 'obstetric_ultrasound_report_id')); - } - - public function view_historical_results_imaging($patient_id) - { - - //prepare the arrays - $dates = array(); - $invs_array = array(); - $values = array(); - - $patients = InvestigationResults::where('patient_id', '=', $patient_id) - ->whereIn('investigation_results.result_type', ['Imaging', 'Ultrasound', 'Ultrasound_Obstetric']) - ->limit(7) - ->get(); - - foreach ($patients as $patient) { - $dates[] = streamline_date($patient->created_at); - - $investigations = explode(",", $patient->investigation_id); - - foreach ($investigations as $investigation) { - - if (!in_array($investigation, $invs_array)) { - $invs_array[] = $investigation; - } - } - } - - //loop through the investigation ids to add values - for ($i = 0; $i < count($invs_array); $i++) { - - //count for the returnInvestigations - $count = 0; - - foreach ($patients as $patient) { - //get values from csv to array - $investigations = explode(",", $patient->investigation_id); - - $return_values = explode(",", $patient->value); - - //check if current investigation is in array - if (in_array($invs_array[$i], $investigations)) { - - //get key of that investigation which exists - $key = array_search($invs_array[$i], $investigations); - - if ($patient->result_type == 'Ultrasound_Obstetric') { - //assign real value - $values[$i][$count] = array($return_values[$key], $patient->order_id, $patient_id, $patient->episode_id); - } else { - //assign real value - $values[$i][$count] = $return_values[$key]; - } - } else { - //assign N/A - $values[$i][$count] = "N/A"; - } - - $count++; - } - } - - $patient = Patient::find($patient_id); - - return view('investigations::investigations.view_historical_results_imaging', compact('patient_id', 'patient', 'dates', 'invs_array', 'values')); - } - - public function get_receive_request_details(Request $request) - { - $order = DB::table('ordered_investigations') - ->where('id', $request->id) - ->select('id', 'investigation_id', 'patient_id', 'episode_id', 'inpatient', 'created_at', 'created_by') - ->first(); - - $html_text = ""; - $investigations = explode(",", $order->investigation_id); - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - - foreach ($investigations as $investigation) { - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - } - - $html_text .= "
    Test Name Date Requested
    "; - $html_text .= get_name($investigation, 'id', 'name', 'investigations'); - $html_text .= ""; - $html_text .= streamline_date($order->created_at); - $html_text .= "
    "; - - $patient = Patient::withTrashed()->find($order->patient_id); - $patient_age = get_patients_age($patient->date_of_birth); - $patient_gender = $patient->gender == 1 ? "Male" : "Female"; - - if (is_lab_number_editing_enabled()) { - $lab_number = (sprintf("%05u", $order->id) . '/' . Carbon::parse($order->created_at)->month . '/' . Carbon::parse($order->created_at)->format('y') . '/' . - $patient->first_name[0] . $patient->last_name[0]); - } else { - $lab_number = $order->id; - } - - return json_encode([ - "patient_number" => get_name($order->patient_id, 'id', 'number', 'patients'), - "patient_name" => get_full_name($order->patient_id, 'id', 'first_name', 'last_name', 'patients'), - "source" => ($order->inpatient == 1) ? get_ward_name($order->patient_id, $order->episode_id) : 'OPD', - "lab_number" => $lab_number, - "order_id" => $order->id, - "requested_by" => get_full_name($order->created_by, 'id', 'first_name', 'last_name', 'users'), - "patient_age" => $patient_age, - "telephone_number" => $patient->phone, - "patient_gender" => $patient_gender, - "html" => $html_text - ]); - } - - public function save_receive_request_details(Request $request) - { - $id = $request->id; - $specimen_array = $request->specimen; - $status_array = $request->status; - $reason_array = $request->reason; - - $ordered_investigation = OrderedInvestigation::find($id); - - if ($ordered_investigation) { - $specimen_clean_array = []; - $status_clean_array = []; - $reason_clean_array = []; - - // check string for 0 and remove - for ($i = 0; $i < count($specimen_array); $i++) { - if ($specimen_array[$i] != 0 && $status_array[$i] != 0) { - $specimen_clean_array[] = $specimen_array[$i]; - $status_clean_array[] = $status_array[$i]; - $reason_clean_array[] = $reason_array[$i]; - } - } - - $ordered_investigation->request_received_date = Carbon::now(); - $ordered_investigation->specimen = implode(",", $specimen_clean_array); - $ordered_investigation->specimen_status = implode(",", $status_clean_array); - $ordered_investigation->specimen_reason = implode(",", $reason_clean_array); - $ordered_investigation->lab_number = $request->lab_number; - $ordered_investigation->request_received = 1; - $ordered_investigation->request_received_by = Auth::id(); - - return ($ordered_investigation->save()) ? 1 : 0; - } else { - return 0; - } - } - - public function print_request_barcode($id) - { - // get the patient id then name - $patient_name = get_full_name(get_name($id, 'id', 'patient_id', 'ordered_investigations'), 'id', 'first_name', 'last_name', 'patients'); - return view('investigations::investigations.print_request_barcode', compact('patient_name', 'id')); - } - - public function view_lab_results(Request $request) - { - $search_text = ""; - $filters = []; - - // if patient id is active, get all records regardless of date; else search by date - if (isset($request->patient_id) && $request->patient_id != 0) { - $filters[] = ['ordered_investigations.patient_id', '=', $request->patient_id]; - $search_text .= "Patient: " . get_full_name($request->patient_id, 'id', 'first_name', 'last_name', 'patients'); - $search_text .= " (" . get_name($request->patient_id, 'id', 'number', 'patients') . ") "; - } elseif (isset($request->lab_number) && $request->lab_number != '') { - $filters[] = ['ordered_investigations.id', '=', $request->lab_number]; - $search_text .= "Lab Number: " . $request->lab_number; - } else { - switch ($request->search_date_by) { - case 'yesterday': - $end_date = Carbon::yesterday()->endOfDay(); - $start_date = Carbon::yesterday()->startOfDay(); - $search_text .= "Yesterday "; - break; - case 'custom_date': - $end_date = Carbon::parse($request->start_date)->endOfDay(); - $start_date = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "From: " . streamline_date($start_date) . " "; - break; - case 'custom_date_range': - $end_date = Carbon::parse($request->end_date)->endOfDay(); - $start_date = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "From: " . streamline_date($start_date) . " to " . streamline_date($end_date) . " "; - break; - case 'today': - default: - $end_date = Carbon::today()->endOfDay(); - $start_date = Carbon::today()->startOfDay(); - $search_text .= "Today "; - break; - } - - $filters[] = ['ordered_investigations.created_at', '>', $start_date]; - $filters[] = ['ordered_investigations.created_at', '<', $end_date]; - } - - $incomings = OrderedInvestigation::where('investigation_status', 0) - ->where('request_received', 1) - ->where('order_type', 'Lab')->where('urgent_ids', '=', '') - ->where($filters) - ->orderBy('id', 'desc') - ->limit(250) - ->get(); - $urgent_incomings = OrderedInvestigation::where('investigation_status', 0) - ->where('request_received', 1) - ->where('order_type', 'Lab')->where('urgent_ids', '<>', '') - ->where($filters) - ->orderBy('id', 'desc') - ->limit(250) - ->get(); - - $all_complete = OrderedInvestigation::where(['ordered_investigations.investigation_status' => 1]) - ->where('ordered_investigations.request_received', 1) - ->where('ordered_investigations.order_type', 'Lab') - ->where($filters) - ->leftJoin('investigation_results', 'investigation_results.order_id', '=', 'ordered_investigations.id') - ->orderBy('ordered_investigations.id', 'desc') - ->limit(250) - ->get(['ordered_investigations.*', 'investigation_results.created_at as results_created_at']); - - $specimen = LaboratorySpecimen::pluck('name', 'id')->toArray(); - - return view('investigations::investigations.view_lab_results', compact('incomings', 'specimen', 'all_complete', 'search_text', 'urgent_incomings')); - } - - public function view_lab_results_quick_view(Request $request) - { - $order = DB::table('ordered_investigations') - ->where('id', $request->id) - ->select('investigation_id', 'patient_id', 'specimen', 'specimen_status') - ->first(); - - $html_text = ""; - - if ($request->type == 1) { - $records = explode(",", $order->investigation_id); - } else { - $records = explode(",", $order->specimen); - } - - // explode the status as well for specimen - $status_array = explode(",", $order->specimen_status); - $status_counter = 0; - - $html_text .= ""; - if ($request->type == 1) { - $html_text .= ""; - } else { - $html_text .= ""; - $html_text .= ""; - } - $html_text .= ""; - - foreach ($records as $record) { - $html_text .= ""; - if ($request->type == 1) { - $html_text .= ""; - } else { - $html_text .= ""; - - $html_text .= ""; - - $status_counter++; - } - $html_text .= ""; - } - - $html_text .= "
    Test Name Specimen Name Status
    "; - $html_text .= get_name($record, 'id', 'name', 'investigations'); - $html_text .= ""; - $html_text .= get_name($record, 'id', 'name', 'laboratory_specimens'); - $html_text .= ""; - if ($status_array[$status_counter] == 1) { - $html_text .= "Taken"; - } else if ($status_array[$status_counter] == 2) { - $html_text .= "Not Taken"; - } else if ($status_array[$status_counter] == 3) { - $html_text .= "Rejected"; - } - $html_text .= "
    "; - - return json_encode([ - "patient_number" => get_name($order->patient_id, 'id', 'number', 'patients'), - "patient_name" => get_full_name($order->patient_id, 'id', 'first_name', 'last_name', 'patients'), - "html" => $html_text - ]); - } - - public function view_lab_results_details($id) - { - $ordered_investigation = OrderedInvestigation::find($id); - $patient_id = $ordered_investigation->patient_id; - - $results = []; - - $investigation_results = InvestigationResults::where('order_id', '=', $id)->get(); - - foreach ($investigation_results as $result) { - $investigations = explode(",", $result->investigation_id); - $values = explode(",", $result->value); - $comments = explode(",", $result->comment); - $per_investigation = explode(",", $result->per_investigation); - $count_two = 0; - - for ($i = 0; $i < count($investigations); $i++) { - $type = get_name($investigations[$i], 'id', 'type', 'investigations'); - $result_document = PatientDocument::where([['patient_id', $patient_id], ['episode_id', $result->episode_id], ['investigation_result_id', $result->id], ['investigation_id', $investigations[$i]]])->first(); - $results[$count_two]['id'] = $investigations[$i]; - $results[$count_two]['name'] = get_name($investigations[$i], 'id', 'name', 'investigations'); - $results[$count_two]['range'] = (get_name($investigations[$i], 'id', 'range_type', 'investigations') == 1) ? get_dynamic_normal_range($investigations[$i], get_patient_age_group($patient_id), get_name($patient_id, 'id', 'gender', 'patients')) : get_name($investigations[$i], 'id', 'normal_ranges', 'investigations'); - $results[$count_two]['type'] = $type; - $results[$count_two]['units'] = get_name($investigations[$i], 'id', 'units', 'investigations'); - $results[$count_two]['result'] = isset($values[$i]) ? $values[$i] : ""; - $results[$count_two]['comment'] = isset($comments[$i]) ? $comments[$i] : ""; - $results[$count_two]['document'] = $result_document->id ?? ""; - $results[$count_two]['authenticated'] = isset($per_investigation[$i]) ? $per_investigation[$i] : ""; - $count_two++; - } - } - - $hospital_information = HospitalInformation::find(1); - - return view('investigations::investigations.view_lab_results_details', compact('ordered_investigation', 'results', 'hospital_information', 'id', 'patient_id')); - } - - public function view_lab_specialised_results($id) - { - $specialised_results = DB::table('investigation_specialised_results') - ->find($id); - - $html_text = ""; - - $records_id = explode(",", $specialised_results->specialised_variable_id); - $records_value = explode(",", $specialised_results->value); - $records_comment = explode(",", $specialised_results->comment); - - $html_text .= "" - . "" - . "" - . ""; - - for ($i = 0; $i < count($records_id); $i++) { - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - } - - $html_text .= "
    Variable Name Value - (Comment)
    "; - $html_text .= get_name($records_id[$i], 'id', 'name', 'investigation_specialised_variables'); - $html_text .= ""; - $html_text .= $records_value[$i] . " (" . $records_comment[$i] . ")"; - $html_text .= "
    "; - - return json_encode([ - "investigation_name" => get_name(get_name($records_id[0], 'id', 'investigation_id', 'investigation_specialised_variables'), 'id', 'name', 'investigations'), - "html" => $html_text, - ]); - } - - public function edit_investigation_specimen($id) - { - $ordered_investigation = OrderedInvestigation::find($id); - - $specimen = LaboratorySpecimen::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $specimen = [0 => '- select -'] + $specimen; - - return view('investigations::investigations.edit_investigation_specimen', compact('ordered_investigation', 'specimen')); - } - - public function save_investigation_specimen(Request $request) - { - $id = $request->id; - $specimen_array = $request->specimen; - $status_array = $request->status; - $reason_array = $request->reason; - - $ordered_investigation = OrderedInvestigation::find($id); - - $specimen_clean_array = []; - $status_clean_array = []; - $reason_clean_array = []; - - // check string for 0 and remove - for ($i = 0; $i < count($specimen_array); $i++) { - if ($specimen_array[$i] != 0 && $status_array[$i] != 0) { - $specimen_clean_array[] = $specimen_array[$i]; - $status_clean_array[] = $status_array[$i]; - $reason_clean_array[] = $reason_array[$i]; - } - } - - $ordered_investigation->specimen = implode(",", $specimen_clean_array); - $ordered_investigation->specimen_status = implode(",", $status_clean_array); - $ordered_investigation->specimen_reason = implode(",", $reason_clean_array); - - $ordered_investigation->save(); - - flash("Lab specimen have been edited")->success(); - - return redirect('/investigations/view_lab_results_details/' . $id); - } - - public function investigations_to_cancel(Request $request) - { - $search_by = $request->search_by; - - if ($search_by == 1) { - // custom date - $start_date = Carbon::parse($request->reg_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->reg_date)->endOfDay()->toDateTimeString(); - - $date_search = streamline_date($start_date); - } elseif ($search_by == 2) { - // custom date range - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - - $date_search = streamline_date($start_date) . " to " . streamline_date($end_date); - } else { - $start_date = Carbon::now()->startOfDay()->toDateTimeString(); - $end_date = Carbon::now()->endOfDay()->toDateTimeString(); - - $date_search = "Today"; - } - - // use left join to exclude orders with results - $ordered_investigations = OrderedInvestigation::where('ordered_investigations.investigation_status', '=', '0') - ->where('ordered_investigations.payment_status', '=', '0') - ->whereBetween('ordered_investigations.created_at', [$start_date, $end_date]) - ->select('ordered_investigations.*') - ->leftJoin('investigation_results', 'investigation_results.order_id', '=', 'ordered_investigations.id') - ->whereNull('investigation_results.order_id') - ->orderBy('ordered_investigations.id', 'desc') - ->get(); - - return view('investigations::investigations.delete_investigations', compact('ordered_investigations', 'date_search')); - } - - public function destroy_ordered_investigations($id) - { - $ordered_investigation = OrderedInvestigation::find($id); - - try { - $ordered_investigation->delete(); - - // check if there are any insurance claims available - $claim = InsuranceClaim::where('order_id', $id)->where('item_type', 3)->first(); - - if ($claim) { - $claim->delete(); - } - - flash("Investigations order has been cancelled.")->success(); - } catch (\Exception $exception) { - flash("Investigations order has not been cancelled.")->error(); - } - - return redirect('investigations_to_cancel'); - } - - public function view_deleted_ordered_invetigations(Request $request) - { - $search_by = $request->search_by; - $reg_date = $request->reg_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - $filters = []; - - if ($search_by == 0) { - // last 24 hours - $last_day = Carbon::now()->subDay(); - - $filters[] = ['deleted_at', '>', $last_day]; - } elseif ($search_by == 1) { - // custom date - $start_date_search = Carbon::parse($reg_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::parse($reg_date)->endOfDay()->toDateTimeString(); - - $filters[] = ['deleted_at', '>', $start_date_search]; - $filters[] = ['deleted_at', '<', $end_date_search]; - } elseif ($search_by == 2) { - // custom date range - $start_date_search = Carbon::parse($start_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::parse($end_date)->endOfDay()->toDateTimeString(); - - $filters[] = ['deleted_at', '>', $start_date_search]; - $filters[] = ['deleted_at', '<', $end_date_search]; - } - - $deleted_ordered_investigations = DB::table('ordered_investigations')->whereNotNull('deleted_at')->where($filters)->orderBy('id', 'desc')->get(); - - return view('investigations::investigations.view_deleted_ordered_investigations', compact('deleted_ordered_investigations')); - } - - public function restore_deleted_ordered_invetigations($id) - { - $ordered_investigation = OrderedInvestigation::withTrashed()->find($id); - - try { - $ordered_investigation->restore(); - - // check if there are any insurance claims available - $claim = InsuranceClaim::onlyTrashed()->where('order_id', $id)->where('service_type', 3)->first(); - - if ($claim) { - $claim->restore(); - } - - flash("Investigations order has been activated")->success(); - } catch (\Exception $exception) { - flash("Investigations order has not been activated")->error(); - } - - return redirect('view_deleted_ordered_invetigations'); - } - - public function update_by_ordered_by(Request $request) - { - $update = OrderedInvestigation::where('id', $request->id)->update(['ordered_by' => $request->name]); - return $update; - } - - public function view_investigation_normal_ranges($investigation_id) - { - $ranges = DB::table('investigations_normal_ranges') - ->where('test_id', $investigation_id) - ->select('age_group_id', 'female_range', 'male_range') - ->get(); - - $male = []; - $female = []; - - foreach ($ranges as $range) { - $male[$range->age_group_id] = $range->male_range; - $female[$range->age_group_id] = $range->female_range; - } - - return json_encode([ - "name" => get_name($investigation_id, 'id', 'name', 'investigations'), - "male" => $male, - "female" => $female - ]); - } - - public function view_specialised_investigation_normal_ranges($investigation_id) - { - $ranges = DB::table('investigations_normal_ranges') - ->where('test_id', $investigation_id) - ->where('is_specialised_variable', 1) - ->select('age_group_id', 'female_range', 'male_range') - ->get(); - - $male = []; - $female = []; - - foreach ($ranges as $range) { - $male[$range->age_group_id] = $range->male_range; - $female[$range->age_group_id] = $range->female_range; - } - - return json_encode([ - "name" => get_name($investigation_id, 'id', 'name', 'investigation_specialised_variables'), - "male" => $male, - "female" => $female - ]); - } - - public function store_cardio_echo(Request $request) - { - - $mode_measurements = [ - 'LAD' => $request->lad_result, - 'IVS' => $request->ivs_result, - 'FS (%)' => $request->fs_result, - 'AO' => $request->ao_result, - 'LVIDd' => $request->lvidd_result, - 'EF (%)' => $request->ef_result, - 'LA' => $request->la_result, - 'LVPWd' => $request->lvpwd_result, - 'E:A' => $request->ea_result, - 'RVIDd' => $request->rvidd_result, - 'SV' => $request->sv_result, - 'TAPSE' => $request->tapse_result, - 'LVIDs' => $request->lvids_result, - 'RV' => $request->rv_result, - 'RA' => $request->ra_result - ]; - - $mode_measurements = serialize($mode_measurements); - - $doppler_study = [ - 'Mitral Valve I' => $request->mitral_valve_insufficiency, - 'Mitral Valve S' => $request->mitral_valve_stenosis, - 'Aortic Valve I' => $request->aortic_valve_insufficiency, - 'Aortic Valve S' => $request->aortic_valve_stenosis, - 'Pulmonary Valve I' => $request->pulmonary_valve_insufficiency, - 'Pulmonary Valve S' => $request->pulmonary_valve_stenosis, - 'Tricuspid Valve I' => $request->tricuspid_valve_insufficiency, - 'Tricuspid Valve S' => $request->tricuspid_valve_stenosis, - 'AV Vmax' => $request->av_vmax, - 'AV Vmean' => $request->av_mean, - 'Mitral EA ratio' => $request->mitral_ea_ratio, - 'TR PG' => $request->tr_pg, - 'RAP' => $request->rap, - ]; - - $doppler_study = serialize($doppler_study); - - $descriptions = [ - 'left_ventricle_description' => $request->left_ventricle_description, - 'right_ventricle_description' => $request->right_ventricle_description, - 'right_atrium_description' => $request->right_atrium_description, - 'left_atrium_description' => $request->left_atrium_description, - 'aortic_valve_description' => $request->aortic_valve_description, - 'mitral_valve_description' => $request->mitral_valve_description, - 'pulmonary_valve_description' => $request->pulmonary_valve_description, - 'tricuspid_valve_description' => $request->tricuspid_valve_description, - 'aortic_root_and_arch_description' => $request->aortic_root_and_arch_description, - 'pericardium_description' => $request->pericardium_description, - ]; - - $descriptions = serialize($descriptions); - - $descriptions_order = [ - 'left_ventricle_order' => $request->left_ventricle_order, - 'right_ventricle_order' => $request->right_ventricle_order, - 'right_atrium_order' => $request->right_atrium_order, - 'left_atrium_order' => $request->left_atrium_order, - 'aortic_valve_order' => $request->aortic_valve_order, - 'mitral_valve_order' => $request->mitral_valve_order, - 'pulmonary_valve_order' => $request->pulmonary_valve_order, - 'tricuspid_valve_order' => $request->tricuspid_valve_order, - 'aortic_root_and_arch_order' => $request->aortic_root_and_arch_order, - 'pericardium_order' => $request->pericardium_order, - ]; - - $descriptions_order = serialize($descriptions_order); - - //First check if there is already a saved instance - $cardioCheck = CardioEchoResult::where('episode_id', $request->episode_id)->first(); - - if (is_null($cardioCheck)): - $cardio = new CardioEchoResult(); - else: - $cardio = CardioEchoResult::find($cardioCheck->id); - endif; - - $cardio->patient_id = $request->patient_id; - $cardio->episode_id = $request->episode_id; - $cardio->template_used = $request->cardio_template_selected; - $cardio->mode_measurements = $mode_measurements; - $cardio->doppler_study = $doppler_study; - $cardio->descriptions = $descriptions; - $cardio->descriptions_order = $descriptions_order; - $cardio->comments = $request->cardio_echo_comments; - $cardio->conclusion = $request->cardio_echo_conclusion; - $cardio->created_by = Auth::id(); - - $cardio->save(); - - //Bring staff payments to life - $echo_investigation = Investigation::where(['slug' => 'echo'])->first(); - record_staff_that_has_performed_the_service($request->patient_id, $request->episode_id, 2, $echo_investigation->id, 0, $cardio->created_by); - //end of staff payments voodo - - $arr = array( - 'msg' => 'Successfully submit form using ajax', - 'status' => false - ); - - return Response()->json($arr); - } - - public function print_cardio_echo(Request $request) - { - $hospital_information = HospitalInformation::first(); - $patient_id = $request->patient_id; - $episode_id = $request->episode_id; - - $results = CardioEchoResult::where('episode_id', $episode_id)->first(); - $patient = Patient::find($patient_id); - - $measurements = unserialize($results->mode_measurements); - - $doppler_study = unserialize($results->doppler_study); - - $descriptions = unserialize($results->descriptions); - - $descriptions_order = unserialize($results->descriptions_order); - - $template_details = CardioEchoTemplate::find($results->template_used); - - try { - $range = unserialize($template_details->range); - } catch (\Exception $exception) { - $range = []; - } - - if (!$descriptions_order) { - $descriptions_order['left_ventricle_order'] = 1; - $descriptions_order['right_ventricle_order'] = 2; - $descriptions_order['right_atrium_order'] = 3; - $descriptions_order['left_atrium_order'] = 4; - $descriptions_order['aortic_valve_order'] = 5; - $descriptions_order['mitral_valve_order'] = 6; - $descriptions_order['pulmonary_valve_order'] = 7; - $descriptions_order['tricuspid_valve_order'] = 8; - $descriptions_order['aortic_root_and_arch_order'] = 9; - $descriptions_order['pericardium_order'] = 10; - } - - // create the descriptions array - $descriptions_array = []; - $descriptions_array[$descriptions_order['left_ventricle_order']]['name'] = "Left Ventricle"; - $descriptions_array[$descriptions_order['left_ventricle_order']]['value'] = $descriptions['left_ventricle_description']; - $descriptions_array[$descriptions_order['right_ventricle_order']]['name'] = "Right Ventricle"; - $descriptions_array[$descriptions_order['right_ventricle_order']]['value'] = $descriptions['right_ventricle_description']; - $descriptions_array[$descriptions_order['right_atrium_order']]['name'] = "Right Atrium"; - $descriptions_array[$descriptions_order['right_atrium_order']]['value'] = $descriptions['right_atrium_description']; - $descriptions_array[$descriptions_order['left_atrium_order']]['name'] = "Left Atrium"; - $descriptions_array[$descriptions_order['left_atrium_order']]['value'] = $descriptions['left_atrium_description']; - $descriptions_array[$descriptions_order['aortic_valve_order']]['name'] = "Aortic Valve"; - $descriptions_array[$descriptions_order['aortic_valve_order']]['value'] = $descriptions['aortic_valve_description']; - $descriptions_array[$descriptions_order['mitral_valve_order']]['name'] = "Mitral Valve"; - $descriptions_array[$descriptions_order['mitral_valve_order']]['value'] = $descriptions['mitral_valve_description']; - $descriptions_array[$descriptions_order['pulmonary_valve_order']]['name'] = "Pulmonary Valve"; - $descriptions_array[$descriptions_order['pulmonary_valve_order']]['value'] = $descriptions['pulmonary_valve_description']; - $descriptions_array[$descriptions_order['tricuspid_valve_order']]['name'] = "Tricuspid Valve"; - $descriptions_array[$descriptions_order['tricuspid_valve_order']]['value'] = $descriptions['tricuspid_valve_description']; - $descriptions_array[$descriptions_order['aortic_root_and_arch_order']]['name'] = "Aortic root and arch"; - $descriptions_array[$descriptions_order['aortic_root_and_arch_order']]['value'] = $descriptions['aortic_root_and_arch_description']; - $descriptions_array[$descriptions_order['pericardium_order']]['name'] = "Pericardium"; - $descriptions_array[$descriptions_order['pericardium_order']]['value'] = $descriptions['pericardium_description']; - - // sort by the keys and oh lord it's past 6pm - ksort($descriptions_array); - - $data = [ - 'date' => Carbon::parse($results->created_at)->format('dS -m - Y (D)'), - 'names' => $patient->last_name . ' ' . $patient->first_name, - 'patient_number' => $patient->number, - 'hospital_information' => $hospital_information, - 'age' => Carbon::parse($patient->date_of_birth)->diff(now())->format('%y years, %m months and %d days'), - 'sex' => $patient->gender == 1 ? 'Male' : 'Female', - 'lad' => $measurements['LAD'] ?? "", - 'ivs' => $measurements['IVS'] ?? "", - 'fs' => $measurements['FS (%)'] ?? "", - 'aortic' => $measurements['AO'] ?? "", - 'lvidd' => $measurements['LVIDd'] ?? "", - 'ef' => $measurements['EF (%)'] ?? "", - 'la' => $measurements['LA'] ?? "", - 'lvpwd' => $measurements['LVPWd'] ?? "", - 'ea' => $measurements['E:A'] ?? "", - 'rvidd' => $measurements['RVIDd'] ?? "", - 'sv' => $measurements['SV'] ?? "", - 'tapse' => $measurements['TAPSE'] ?? "", - 'lvids' => $measurements['LVIDs'] ?? "", - 'rv' => $measurements['RV'] ?? "", - 'ra' => $measurements['RA'] ?? "", - 'range_LAD' => $range['LAD'] ?? "", - 'range_IVS' => $range['IVS'] ?? "(0.6 - 1.1 cm)", - 'range_FS' => $range['FS (%)'] ?? "(26 - 55)", - 'range_AO' => $range['AO'] ?? "(2.0 - 4.0 cm)", - 'range_LVIDd' => $range['LVIDd'] ?? "(3.5 - 5.7 cm)", - 'range_EF' => $range['EF (%)'] ?? "(55 - 80)", - 'range_LA' => $range['LA'] ?? "(3.0 - 4.0 cm)", - 'range_LVPWd' => $range['LVPWd'] ?? "(0.6 - 1.1 cm)", - 'range_E:A' => $range['E:A'] ?? "", - 'range_RVIDd' => $range['RVIDd'] ?? "", - 'range_SV' => $range['SV'] ?? "", - 'range_TAPSE' => $range['TAPSE'] ?? "", - 'range_LVIDs' => $range['LVIDs'] ?? "(2.5 - 4.0 cm)", - 'range_RV' => $range['RV'] ?? "(2.0 - 4.1 cm)", - 'range_RA' => $range['RA'] ?? "", - 'range_TR PG' => $range['TR PG'] ?? "", - 'mitral_valve_insufficiency' => $doppler_study['Mitral Valve I'] ?? "", - 'mitral_valve_stenosis' => $doppler_study['Mitral Valve S'] ?? "", - 'aortic_valve_insufficiency' => $doppler_study['Aortic Valve I'] ?? "", - 'aortic_valve_stenosis' => $doppler_study['Aortic Valve S'] ?? "", - 'pulmonary_valve_insufficiency' => $doppler_study['Pulmonary Valve I'] ?? "", - 'pulmonary_valve_stenosis' => $doppler_study['Pulmonary Valve S'] ?? "", - 'tricuspid_valve_insufficiency' => $doppler_study['Tricuspid Valve I'] ?? "", - 'tricuspid_valve_stenosis' => $doppler_study['Tricuspid Valve S'] ?? "", - 'av_vmax' => $doppler_study['AV Vmax'] ?? "", - 'av_mean' => $doppler_study['AV Vmean'] ?? "", - 'mitral_ea_ratio' => $doppler_study['Mitral EA ratio'] ?? "", - 'tr_pg' => $doppler_study['TR PG'] ?? "", - 'rap' => $doppler_study['RAP'] ?? "", - 'descriptions_array' => $descriptions_array, - 'comments' => $results->comments, - 'conclusion' => $results->conclusion, - 'created_by' => $results->created_by, - 'created_at' => $results->created_at - ]; - - $pdf = SnappyPDF::loadView('investigations::investigations/print_cardio_echo', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Printed On ' . date('Y-m-d') . ''); - - return $pdf->inline('Cardio-Echo-Results' . date(" d-m-y h:ia") . '.pdf'); - } - - public function cardio_echo_template(Request $request) - { - $cardio_echo_conclusion = ""; - - if (isset($request->template) && $request->template != 0) { - $results = CardioEchoTemplate::find($request->template); - - $measurements = unserialize($results->mode_measurements); - $doppler_study = unserialize($results->doppler_study); - $descriptions = unserialize($results->descriptions); - $range = unserialize($results->range); - $cardio_echo_conclusion = $results->conclusion; - - $id = $request->template; - } else { - $measurements = 0; - $doppler_study = 0; - $descriptions = 0; - $range = 0; - $id = 0; - } - - $templates = CardioEchoTemplate::pluck('name', 'id')->toArray(); - $templates = [0 => '- select template-'] + $templates; - - return view('investigations::investigations.cardio_echo_template', compact('measurements', 'doppler_study', 'descriptions', 'templates', 'id', 'range', 'cardio_echo_conclusion')); - } - - public function save_cardio_echo_template(Request $request) - { - $mode_measurements = [ - 'LAD' => $request->lad_result, - 'IVS' => $request->ivs_result, - 'FS (%)' => $request->fs_result, - 'AO' => $request->ao_result, - 'LVIDd' => $request->lvidd_result, - 'EF (%)' => $request->ef_result, - 'LA' => $request->la_result, - 'LVPWd' => $request->lvpwd_result, - 'E:A' => $request->ea_result, - 'RVIDd' => $request->rvidd_result, - 'SV' => $request->sv_result, - 'TAPSE' => $request->tapse_result, - 'LVIDs' => $request->lvids_result, - 'RV' => $request->rv_result, - 'RA' => $request->ra_result - ]; - - $mode_measurements = serialize($mode_measurements); - - $doppler_study = [ - 'Mitral Valve I' => $request->mitral_valve_insufficiency, - 'Mitral Valve S' => $request->mitral_valve_stenosis, - 'Aortic Valve I' => $request->aortic_valve_insufficiency, - 'Aortic Valve S' => $request->aortic_valve_stenosis, - 'Pulmonary Valve I' => $request->pulmonary_valve_insufficiency, - 'Pulmonary Valve S' => $request->pulmonary_valve_stenosis, - 'Tricuspid Valve I' => $request->tricuspid_valve_insufficiency, - 'Tricuspid Valve S' => $request->tricuspid_valve_stenosis, - 'AV Vmax' => $request->av_vmax, - 'AV Vmean' => $request->av_mean, - 'Mitral EA ratio' => $request->mitral_ea_ratio, - 'TR PG' => $request->tr_pg, - 'RAP' => $request->rap, - ]; - - $doppler_study = serialize($doppler_study); - - $descriptions = [ - 'left_ventricle_description' => $request->left_ventricle_description, - 'right_ventricle_description' => $request->right_ventricle_description, - 'right_atrium_description' => $request->right_atrium_description, - 'left_atrium_description' => $request->left_atrium_description, - 'aortic_valve_description' => $request->aortic_valve_description, - 'mitral_valve_description' => $request->mitral_valve_description, - 'pulmonary_valve_description' => $request->pulmonary_valve_description, - 'tricuspid_valve_description' => $request->tricuspid_valve_description, - 'aortic_root_and_arch_description' => $request->aortic_root_and_arch_description, - 'pericardium_description' => $request->pericardium_description, - ]; - - $descriptions = serialize($descriptions); - - $ranges = [ - 'LAD' => $request->lad_range, - 'IVS' => $request->ivs_range, - 'FS (%)' => $request->fs_range, - 'AO' => $request->ao_range, - 'LVIDd' => $request->lvidd_range, - 'EF (%)' => $request->ef_range, - 'LA' => $request->la_range, - 'LVPWd' => $request->lvpwd_range, - 'E:A' => $request->ea_range, - 'RVIDd' => $request->rvidd_range, - 'SV' => $request->sv_range, - 'TAPSE' => $request->tapse_range, - 'LVIDs' => $request->lvids_range, - 'RV' => $request->rv_range, - 'RA' => $request->ra_range, - 'TR PG' => $request->tr_pg_range - ]; - - $range = serialize($ranges); - - $cardio = CardioEchoTemplate::find($request->id); - - $cardio->mode_measurements = $mode_measurements; - $cardio->doppler_study = $doppler_study; - $cardio->descriptions = $descriptions; - $cardio->range = $range; - $cardio->conclusion = $request->cardio_echo_conclusion; - - $cardio->save(); - - flash($cardio->name . " Echo Cardiology template has been updated")->success(); - - return redirect('cardio_echo_template'); - } - - public function fetch_cardio_echo_template($id) - { - $results = CardioEchoTemplate::find($id); - - $measurements = unserialize($results->mode_measurements); - - $doppler_study = unserialize($results->doppler_study); - - $descriptions = unserialize($results->descriptions); - - $range = unserialize($results->range); - - return json_encode([ - 'LAD' => $measurements['LAD'], - 'IVS' => $measurements['IVS'], - 'FS (%)' => $measurements['FS (%)'], - 'AO' => $measurements['AO'], - 'LVIDd' => $measurements['LVIDd'], - 'EF (%)' => $measurements['EF (%)'], - 'LA' => $measurements['LA'], - 'LVPWd' => $measurements['LVPWd'], - 'E:A' => $measurements['E:A'], - 'RVIDd' => $measurements['RVIDd'], - 'SV' => $measurements['SV'], - 'TAPSE' => $measurements['TAPSE'], - 'LVIDs' => $measurements['LVIDs'], - 'RV' => $measurements['RV'], - 'RA' => $measurements['RA'], - 'Mitral Valve I' => $doppler_study['Mitral Valve I'], - 'Mitral Valve S' => $doppler_study['Mitral Valve S'], - 'Aortic Valve I' => $doppler_study['Aortic Valve I'], - 'Aortic Valve S' => $doppler_study['Aortic Valve S'], - 'Pulmonary Valve I' => $doppler_study['Pulmonary Valve I'], - 'Pulmonary Valve S' => $doppler_study['Pulmonary Valve S'], - 'Tricuspid Valve I' => $doppler_study['Tricuspid Valve I'], - 'Tricuspid Valve S' => $doppler_study['Tricuspid Valve S'], - 'AV Vmax' => $doppler_study['AV Vmax'], - 'AV Vmean' => $doppler_study['AV Vmean'], - 'Mitral EA ratio' => $doppler_study['Mitral EA ratio'], - 'TR PG' => $doppler_study['TR PG'], - 'RAP' => $doppler_study['RAP'], - 'left_ventricle_description' => $descriptions['left_ventricle_description'], - 'right_ventricle_description' => $descriptions['right_ventricle_description'], - 'right_atrium_description' => $descriptions['right_atrium_description'], - 'left_atrium_description' => $descriptions['left_atrium_description'], - 'aortic_valve_description' => $descriptions['aortic_valve_description'], - 'mitral_valve_description' => $descriptions['mitral_valve_description'], - 'pulmonary_valve_description' => $descriptions['pulmonary_valve_description'], - 'tricuspid_valve_description' => $descriptions['tricuspid_valve_description'], - 'aortic_root_and_arch_description' => $descriptions['aortic_root_and_arch_description'], - 'pericardium_description' => $descriptions['pericardium_description'], - 'conclusion' => $results->conclusion, - 'range_LAD' => $range['LAD'], - 'range_IVS' => $range['IVS'], - 'range_FS (%)' => $range['FS (%)'], - 'range_AO' => $range['AO'], - 'range_LVIDd' => $range['LVIDd'], - 'range_EF (%)' => $range['EF (%)'], - 'range_LA' => $range['LA'], - 'range_LVPWd' => $range['LVPWd'], - 'range_E:A' => $range['E:A'], - 'range_RVIDd' => $range['RVIDd'], - 'range_SV' => $range['SV'], - 'range_TAPSE' => $range['TAPSE'], - 'range_LVIDs' => $range['LVIDs'], - 'range_RV' => $range['RV'], - 'range_RA' => $range['RA'], - 'range_TR PG' => $range['TR PG'], - ]); - } - - public function create_cardio_echo_template(Request $request) - { - $mode_measurements = [ - 'LAD' => "", - 'IVS' => "", - 'FS (%)' => "", - 'AO' => "", - 'LVIDd' => "", - 'EF (%)' => "", - 'LA' => "", - 'LVPWd' => "", - 'E:A' => "", - 'RVIDd' => "", - 'SV' => "", - 'TAPSE' => "", - 'LVIDs' => "", - 'RV' => "", - 'RA' => "" - ]; - - $mode_measurements = serialize($mode_measurements); - - $doppler_study = [ - 'Mitral Valve I' => "", - 'Mitral Valve S' => "", - 'Aortic Valve I' => "", - 'Aortic Valve S' => "", - 'Pulmonary Valve I' => "", - 'Pulmonary Valve S' => "", - 'Tricuspid Valve I' => "", - 'Tricuspid Valve S' => "", - 'AV Vmax' => "", - 'AV Vmean' => "", - 'Mitral EA ratio' => "", - 'TR PG' => "", - 'RAP' => "", - ]; - - $doppler_study = serialize($doppler_study); - - $descriptions = [ - 'left_ventricle_description' => "", - 'right_ventricle_description' => "", - 'right_atrium_description' => "", - 'left_atrium_description' => "", - 'aortic_valve_description' => "", - 'mitral_valve_description' => "", - 'pulmonary_valve_description' => "", - 'tricuspid_valve_description' => "", - 'aortic_root_and_arch_description' => "", - 'pericardium_description' => "", - ]; - - $descriptions = serialize($descriptions); - - CardioEchoTemplate::firstOrCreate([ - 'name' => $request->name, - 'mode_measurements' => $mode_measurements, - 'doppler_study' => $doppler_study, - 'descriptions' => $descriptions, - 'conclusion' => '' - ]); - - flash($request->name . " Echo Cardiology template has been created")->success(); - - return redirect('cardio_echo_template'); - } - - public function display_specialised_variables_pop_up(Request $request) - { - $id = $request->id; - $patient_id = $request->patient_id; - - $specialised_results = DB::table('investigation_specialised_results') - ->where('id', $id) - ->get() - ->first(); - - if (!$specialised_results) { - return 0; - } - - $html_text = ""; - - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - - $variable_id_array = explode(',', $specialised_results->specialised_variable_id); - $variable_value_array = explode(',', $specialised_results->value); - $variable_comment_array = explode(',', $specialised_results->comment); - - for ($i = 0; $i < count($variable_id_array); $i++) { - $html_text .= ""; - - $html_text .= ""; - - $html_text .= ""; - - $html_text .= ""; - - $html_text .= ""; - - $html_text .= ""; - } - - $html_text .= "
    Name Results Reference Ranges Comments
    " . get_name($variable_id_array[$i], 'id', 'name', 'investigation_specialised_variables') . "" . $variable_value_array[$i] . ""; - if (get_name($variable_id_array[$i], 'id', 'range_type', 'investigation_specialised_variables') == 1) { - $html_text .= get_dynamic_normal_range_specialized($variable_id_array[$i], get_patient_age_group($patient_id), get_name($patient_id, 'id', 'gender', 'patients')); - } else { - $html_text .= get_name($variable_id_array[$i], 'id', 'normal_ranges', 'investigation_specialised_variables'); - } - $html_text .= "" . $variable_comment_array[$i] . "
    "; - - return json_encode([ - "html" => $html_text - ]); - } - - public function remove_investigation_with_no_result($inv_id, $order_id) - { - $is_order_deleted = false; - $ordered_investigation = DB::table('ordered_investigations')->where('id', $order_id)->first(); - $investigation_results = DB::table('investigation_results')->where('order_id', $order_id)->first(); - - if ($ordered_investigation->payment_status == 0 && $ordered_investigation->inpatient_bill_generated == 0) { - // delete from the ordered investigations - $investigation_ids = explode(",", $ordered_investigation->investigation_id); - $urgent_ids = explode(",", $ordered_investigation->urgent_ids); - $for_inpatient = explode(",", $ordered_investigation->for_inpatient); - $comments = explode(",", $ordered_investigation->order_comments); - - // check if this is a solo investigation - if (count($investigation_ids) == 1 && $investigation_ids[0] == $inv_id) { - // cancel the whole order - $ordered_investigation_delete = OrderedInvestigation::find($order_id); - - if ($ordered_investigation_delete) { - $ordered_investigation_delete->delete(); - $is_order_deleted = true; - } - } else { - $key = array_search($inv_id, $investigation_ids); - - if ($key !== false) { - unset($investigation_ids[$key]); - unset($for_inpatient[$key]); - unset($comments[$key]); - - // since urgent ids does not have same size as others handle it alone - $urgent_key = array_search($inv_id, $urgent_ids); - - if ($urgent_key !== false) { - unset($urgent_ids[$urgent_key]); - } - - $update = OrderedInvestigation::where('id', $order_id) - ->update([ - 'investigation_id' => implode(",", $investigation_ids), - 'urgent_ids' => implode(",", $urgent_ids), - 'for_inpatient' => implode(",", $for_inpatient), - 'order_comments' => implode(",", $comments) - ]); - } - } - - // delete from the investigation results - $investigation_id = explode(",", $investigation_results->investigation_id); - $value = explode(",", $investigation_results->value); - $per_investigation = explode(",", $investigation_results->per_investigation); - $normal_ranges = explode(",", $investigation_results->normal_ranges); - $for_inpatient = explode(",", $investigation_results->for_inpatient); - $comment = explode(",", $investigation_results->comment); - - if (count($investigation_id) == 1 && $investigation_id[0] == $inv_id) { - // cancel the whole order - $investigation_results_delete = InvestigationResults::find($order_id); - - if ($investigation_results_delete) { - $investigation_results_delete->delete(); - } - } else { - $key = array_search($inv_id, $investigation_id); - - if ($key !== false) { - unset($investigation_id[$key]); - unset($value[$key]); - unset($per_investigation[$key]); - unset($for_inpatient[$key]); - unset($comment[$key]); - unset($normal_ranges[$key]); - - $update = InvestigationResults::where('order_id', $order_id) - ->update([ - 'investigation_id' => implode(",", $investigation_id), - 'value' => implode(",", $value), - 'per_investigation' => implode(",", $per_investigation), - 'normal_ranges' => implode(",", $normal_ranges), - 'for_inpatient' => implode(",", $for_inpatient), - 'comment' => implode(",", $comment) - ]); - } - } - - flash("Investigation has been removed")->success(); - } else { - flash("This investigation order has already been paid. Please first cancel the receipt before removing an investigation")->error(); - } - - if ($is_order_deleted) { - return redirect('/investigations/view_lab_results/'); - } else { - if ($ordered_investigation->order_type == 'Lab') { - return redirect('/investigations/view_lab_results_details/' . $order_id); - } else { - if ($investigation_results) { - return redirect('/investigations/view_patient_investigation/' . $investigation_results->id); - } else { - // just in case there is no result redirect to home - return redirect('/investigations/home'); - } - } - } - } - - public function edit_specialised_variables_ranking($id) - { - $specialized_variables = InvestigationSpecialisedVariable::where('investigation_id', $id)->orderBy('ranking', 'asc')->get(); - - return view('investigations::investigations.edit_specialised_variables_ranking', compact('specialized_variables', 'id')); - } - - public function save_specialised_variables_ranking(Request $request) - { - $ids = $request->spec_id; - $rankings = $request->ranking; - - $logged_in_user_id = Auth::user()->id; - - for ($i = 0; $i < count($ids); $i++) { - $investigation_specialised_variable = InvestigationSpecialisedVariable::find($ids[$i]); - - $investigation_specialised_variable->ranking = $rankings[$i]; - $investigation_specialised_variable->updated_by = $logged_in_user_id; - - $investigation_specialised_variable->save(); - } - - flash("Specialised variables rankings have been updated")->success(); - return redirect('investigations'); - } - - public function reverse_receiving_investigations($order_id) - { - $ordered_investigation = OrderedInvestigation::find($order_id); - - $ordered_investigation->request_received_date = null; - $ordered_investigation->specimen = null; - $ordered_investigation->specimen_status = null; - $ordered_investigation->request_received = 0; - $ordered_investigation->request_received_by = null; - - if ($ordered_investigation->save()) { - flash("Investigation order has been un-received")->success(); - } else { - flash("An error occured. Please try again")->success(); - } - - return redirect('/investigations/view_lab_results/'); - } -} diff --git a/docker/statistics/Modules/Investigations/Http/Controllers/InvestigationPrintController.php b/docker/statistics/Modules/Investigations/Http/Controllers/InvestigationPrintController.php deleted file mode 100755 index cb671fd3..00000000 --- a/docker/statistics/Modules/Investigations/Http/Controllers/InvestigationPrintController.php +++ /dev/null @@ -1,506 +0,0 @@ -middleware('auth'); - } - - public function print_lab_result_details($id) { - $ordered_investigation = OrderedInvestigation::find($id); - $hospital_information = HospitalInformation::find(1); - $investigation_ids = []; - - - $patient = Patient::find($ordered_investigation->patient_id); - - - $results = []; - - $investigation_results = InvestigationResults::where('order_id', '=', $id)->get(); - - foreach ($investigation_results as $result) { - $investigations = explode(",", $result->investigation_id); - $values = explode(",", $result->value); - $comments = explode(",", $result->comment); - $per_investigation = explode(",", $result->per_investigation); - $count_two = 0; - - foreach ($investigations as $investigation) { - $investigation_ids[] = $investigation; - $results[$count_two]['name'] = get_name($investigation, 'id', 'name', 'investigations'); - - if(get_name($investigation, 'id', 'range_type', 'investigations') == 1) { - $results[$count_two]['range'] = get_dynamic_normal_range($investigation, get_patient_age_group($patient->id), get_name($patient->id, 'id', 'gender', 'patients')); - } else { - $results[$count_two]['range'] = get_name($investigation, 'id', 'normal_ranges', 'investigations'); - } - - //$results[$count_two]['range'] = get_name($investigation, 'id', 'normal_ranges', 'investigations'); - $results[$count_two]['type'] = get_name($investigation, 'id', 'type', 'investigations'); - $results[$count_two]['units'] = get_name($investigation, 'id', 'units', 'investigations'); - $results[$count_two]['result'] = isset($values[$count_two]) ? $values[$count_two] : ""; - $results[$count_two]['comment'] = isset($comments[$count_two]) ? $comments[$count_two] : ""; - $results[$count_two]['authenticated'] = isset($per_investigation[$count_two]) ? $per_investigation[$count_two] : ""; - $count_two++; - } - } - - $data = [ - 'ordered_investigation' => $ordered_investigation, - 'results' => $results, - 'hospitalInfo' => $hospital_information, - 'id' => $id, - 'patient' => $patient, - 'investigation_ids' => $investigation_ids, - ]; - - $print_footer = (!is_null($hospital_information->print_footer)) ? '     ' . $hospital_information->print_footer . '' : ''; - - $pdf = SnappyPDF::loadView("investigations::investigations/print/print-lab-result-details", $data) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline' . $print_footer); - - - return $pdf->inline('Investigation Details' . date(" d-m-y h:ia") . '.pdf'); - } - - public function print_historical_results_labs(Request $request) { - $patient_id = $request->patient_id; - - $hospital_information = HospitalInformation::first(); - - //prepare the arrays - $dates = array(); - $invs_array = array(); - $values = array(); - - $patients = InvestigationResults::where('patient_id', '=', $patient_id) - ->where('result_type', '=', 'Lab') - ->where('all_authenticated', '=', 1) - ->limit(7) - ->get(); - - foreach ($patients as $patient) { - $dates[] = streamline_date($patient->created_at); - - $investigations = explode(",", $patient->investigation_id); - - foreach ($investigations as $investigation) { - - if (!in_array($investigation, $invs_array)) { - $invs_array[] = $investigation; - } - } - } - - //loop through the investigation ids to add values - for ($i = 0; $i < count($invs_array); $i++) { - - //count for the returnInvestigations - $count = 0; - - foreach ($patients as $patient) { - //get values from csv to array - $investigations = explode(",", $patient->investigation_id); - - $return_values = explode(",", $patient->value); - - $comments = explode(",", $patient->comment); - - //check if current investigation is in array - if (in_array($invs_array[$i], $investigations)) { - - //get key of that investigation which exists - $key = array_search($invs_array[$i], $investigations); - - if ($patient->result_type == 'Ultrasound_Obstetric') { - //assign real$return_values value - $values[$i][$count] = array($return_values[$key], $patient->order_id, $patient_id, $patient->episode_id); - } elseif (get_name($invs_array[$i], 'id', 'type', 'investigations') == 1) { - // assign real value representing id - $values[$i][$count] = $return_values[$key] ?? ""; - } else { - //assign real value - $values[$i][$count] = ($return_values[$key] ?? "") . " - (" . ($comments[$key] ?? "") . ")"; - } - } else { - //assign N/A - $values[$i][$count] = "N/A"; - } - - $count++; - } - } - - $patient = Patient::find($patient_id); - - $data = [ - 'patient_id' => $patient_id, - 'patient' => $patient, - 'dates' => $dates, - 'invs_array' => $invs_array, - 'values' => $values, - 'hospitalInfo' => $hospital_information - ]; - - - $pdf = SnappyPDF::loadView("investigations::investigations/print/print-historical-results-labs", $data) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline'); - - - return $pdf->inline($patient->first_name . ' ' . $patient->last_name . 'Historical Results' . date(" d-m-y h:ia") . '.pdf'); - } - - public function print_historical_results_imaging(Request $request) { - $patient_id = $request->patient_id; - - $hospital_information = HospitalInformation::first(); - - //prepare the arrays - $dates = array(); - $invs_array = array(); - $values = array(); - - $patients = InvestigationResults::where('patient_id', '=', $patient_id) - ->whereIn('investigation_results.result_type', ['Imaging', 'Ultrasound', 'Ultrasound_Obstetric']) - ->where('all_authenticated', '=', 1) - ->limit(7) - ->get(); - - foreach ($patients as $patient) { - $dates[] = streamline_date($patient->created_at); - - $investigations = explode(",", $patient->investigation_id); - - foreach ($investigations as $investigation) { - - if (!in_array($investigation, $invs_array)) { - $invs_array[] = $investigation; - } - } - } - - //loop through the investigation ids to add values - for ($i = 0; $i < count($invs_array); $i++) { - - //count for the returnInvestigations - $count = 0; - - foreach ($patients as $patient) { - //get values from csv to array - $investigations = explode(",", $patient->investigation_id); - - $return_values = explode(",", $patient->value); - - $comments = explode(",", $patient->comment); - - //check if current investigation is in array - if (in_array($invs_array[$i], $investigations)) { - - //get key of that investigation which exists - $key = array_search($invs_array[$i], $investigations); - - if ($patient->result_type == 'Ultrasound_Obstetric') { - //assign real$return_values value - $values[$i][$count] = array($return_values[$key], $patient->order_id, $patient_id, $patient->episode_id); - } elseif (get_name($invs_array[$i], 'id', 'type', 'investigations') == 1) { - // assign real value representing id - $values[$i][$count] = $return_values[$key] ?? ""; - } else { - //assign real value - $values[$i][$count] = ($return_values[$key] ?? "") . " - (" . ($comments[$key] ?? "") . ")"; - } - } else { - //assign N/A - $values[$i][$count] = "N/A"; - } - - $count++; - } - } - - $patient = Patient::find($patient_id); - - $data = [ - 'patient_id' => $patient_id, - 'patient' => $patient, - 'dates' => $dates, - 'invs_array' => $invs_array, - 'values' => $values, - 'hospitalInfo' => $hospital_information - ]; - - - $pdf = SnappyPDF::loadView("investigations::investigations/print/print-historical-results-labs", $data) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline'); - - - return $pdf->inline($patient->first_name . ' ' . $patient->last_name . 'Historical Results' . date(" d-m-y h:ia") . '.pdf'); - } - - public function print_patient_investigation_results($result_id) { - $result = InvestigationResults::find($result_id); - - $patient_id = $result->patient_id; - - $hospital_information = HospitalInformation::first(); - $patient = Patient::where(['id' => $patient_id])->first(); - - $inv = []; - - $inv['episode_id'] = $result->episode_id; - $inv['date'] = streamline_date(get_name($result->episode_id, 'id', 'created_at', 'patient_episodes')); - $created_by = is_null($result->updated_by) ? $result->created_by : $result->updated_by; - - $investigations = explode(",", $result->investigation_id); - $values = explode(",", $result->value); - $comments = explode(",", $result->comment); - - $data = []; - $count = 0; - - foreach ($investigations as $investigation) { - $investigation_details = Investigation::find($investigation); - - if ($investigation_details) { - $data[$count]['name'] = $investigation_details->name; - $data[$count]['range'] = $investigation_details->normal_ranges; - $data[$count]['slug'] = $investigation_details->slug; - $data[$count]['result'] = $values[$count]; - $data[$count]['comment'] = $comments[$count]; - $data[$count]['type'] = $investigation_details->type; - $count++; - } - } - - $inv['data'] = $data; - - $data = [ - 'inv' => $inv, - 'patient' => $patient, - 'hospitalInfo' => $hospital_information, - 'created_at' => $result->created_at, - 'created_by' => $created_by, - 'performed_at' => streamline_date_time($result->created_at), - 'requested_at' => streamline_date_time(get_name($result->order_id, 'id', 'created_at', 'ordered_investigations')) - ]; - - $pdf = SnappyPDF::loadView("investigations::investigations/print/print_patient_investigation_results", $data) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline'); - - return $pdf->inline($patient->first_name . ' ' . $patient->last_name . ' Investigation results' . date(" d-m-y h:ia") . '.pdf'); - } - - public function print_ultrasound_results_obstetric($obstetric_result_id) { - $report = ObstetricUltrasoundReports::where(['id' => $obstetric_result_id])->first(); - - // for old kisiizi records which use the order_id - if (!$report) { - $report = ObstetricUltrasoundReports::where(['order_id' => $obstetric_result_id])->first(); - } - - $invs_order = OrderedInvestigation::find($report->order_id); - - if ($invs_order) { - $patient_id = $invs_order->patient_id; - $episode_id = $invs_order->episode_id; - - $patient = Patient::find($patient_id); - - $anc_details = DB::table('ante_natal_clinic_registrations')->where('episode_id', $episode_id)->first(); - - $data = [ - 'patient_id' => $patient_id, - 'episode_id' => $episode_id, - 'patient' => $patient, - 'report' => $report, - 'anc_details' => $anc_details, - 'invs_order' => $invs_order - ]; - - - //dompdf - $pdf_obstetric = new DomPDF(); - $html = view("investigations::investigations/print/print_ultrasound_results_obstetric", $data)->render(); - $pdf_obstetric = DomPDF::loadHtml($html); - $pdf_obstetric->setPaper('A4', 'potrait'); - $options = [ - 'isPhpEnabled' => true, - 'isHtml5ParserEnabled' => true, - // Add more options - ]; - DomPDF::setOptions($options); - return $pdf_obstetric->stream($patient->first_name . ' ' . $patient->last_name . ' ' . 'Ultrasound Obstetric results' . date(" d-m-y h:ia") . '.pdf', array('Attachment' => false)); - } else { - flash("Unable to find obstetric results")->error(); - return redirect('/home'); - } - } - - public function print_selective_lab_result_details(Request $request) { - $invs_to_print = $request->invs_to_print; - - if (is_null($invs_to_print)) { - flash("Please select investigations to print")->error(); - return redirect('/home'); - } - - $id = $request->id; - $investigation_ids = []; - $ordered_investigation = OrderedInvestigation::find($id); - $hospital_information = HospitalInformation::find(1); - - - $patient = Patient::find($ordered_investigation->patient_id); - - - $results = []; - - $investigation_results = InvestigationResults::where('order_id', '=', $id)->get(); - - foreach ($investigation_results as $result) { - $investigations = explode(",", $result->investigation_id); - $values = explode(",", $result->value); - $comments = explode(",", $result->comment); - $per_investigation = explode(",", $result->per_investigation); - $count_two = 0; - - foreach ($investigations as $investigation) { - if (in_array($investigation, $invs_to_print)) { - $investigation_ids[] = $investigation; - - $results[$count_two]['name'] = get_name($investigation, 'id', 'name', 'investigations'); - - if(get_name($investigation, 'id', 'range_type', 'investigations') == 1) { - $results[$count_two]['range'] = get_dynamic_normal_range($investigation, get_patient_age_group($patient->id), get_name($patient->id, 'id', 'gender', 'patients')); - } else { - $results[$count_two]['range'] = get_name($investigation, 'id', 'normal_ranges', 'investigations'); - } - - $results[$count_two]['type'] = get_name($investigation, 'id', 'type', 'investigations'); - $results[$count_two]['units'] = get_name($investigation, 'id', 'units', 'investigations'); - $results[$count_two]['result'] = $values[$count_two] ?? ""; - $results[$count_two]['comment'] = $comments[$count_two] ?? ""; - $results[$count_two]['authenticated'] = $per_investigation[$count_two] ?? ""; - } - $count_two++; - } - } - - $data = [ - 'ordered_investigation' => $ordered_investigation, - 'results' => $results, - 'hospitalInfo' => $hospital_information, - 'id' => $id, - 'patient' => $patient, - 'investigation_ids' => count($investigation_ids) > 0 ? $investigation_ids : explode(",", $ordered_investigation->investigation_id), - ]; - - $pdf = SnappyPDF::loadView("investigations::investigations/print/print-lab-result-details", $data) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline'); - - - return $pdf->inline('Investigation Details' . date(" d-m-y h:ia") . '.pdf'); - } - - public function print_selective_patient_investigation_results(Request $request) { - $invs_to_print = $request->invs_to_print; - - if (is_null($invs_to_print)) { - flash("Please select investigations to print")->error(); - return redirect('/home'); - } - - $result_id = $request->result_id; - - $result = InvestigationResults::find($result_id); - - $patient_id = $result->patient_id; - - $hospital_information = HospitalInformation::first(); - $patient = Patient::where(['id' => $patient_id])->first(); - - $inv = []; - - $inv['episode_id'] = $result->episode_id; - $inv['date'] = streamline_date(get_name($result->episode_id, 'id', 'created_at', 'patient_episodes')); - $created_by = is_null($result->updated_by) ? $result->created_by : $result->updated_by; - - $investigations = explode(",", $result->investigation_id); - $values = explode(",", $result->value); - $comments = explode(",", $result->comment); - - $data = []; - $count = 0; - - foreach ($investigations as $investigation) { - if (in_array($investigation, $invs_to_print)) { - $investigation_details = Investigation::find($investigation); - - if ($investigation_details) { - $data[$count]['name'] = $investigation_details->name; - $data[$count]['range'] = $investigation_details->normal_ranges; - $data[$count]['slug'] = $investigation_details->slug; - $data[$count]['result'] = $values[$count]; - $data[$count]['comment'] = $comments[$count]; - $data[$count]['type'] = $investigation_details->type; - $count++; - } - } - } - - $inv['data'] = $data; - - $data = [ - 'inv' => $inv, - 'patient' => $patient, - 'hospitalInfo' => $hospital_information, - 'created_by' => $created_by, - 'performed_at' => streamline_date_time($result->created_at), - 'requested_at' => streamline_date_time(get_name($result->order_id, 'id', 'created_at', 'ordered_investigations')) - ]; - - $pdf = SnappyPDF::loadView("investigations::investigations/print/print_patient_investigation_results", $data) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline'); - - return $pdf->inline($patient->first_name . ' ' . $patient->last_name . ' Investigation results' . date(" d-m-y h:ia") . '.pdf'); - } - -} diff --git a/docker/statistics/Modules/Investigations/Http/Controllers/InvestigationResultTemplateController.php b/docker/statistics/Modules/Investigations/Http/Controllers/InvestigationResultTemplateController.php deleted file mode 100755 index fad9f163..00000000 --- a/docker/statistics/Modules/Investigations/Http/Controllers/InvestigationResultTemplateController.php +++ /dev/null @@ -1,188 +0,0 @@ -get(); - $investigations = Investigation::get(); - - return view('investigations::investigation_result_templates.index', compact('result_templates', 'investigations')); - } - - public function create() { - $investigations = DB::table("investigations")->whereNull("deleted_at")->orderBy("name")->pluck("name", "id")->toArray(); - $investigations = [0 => 'All Investigations'] + $investigations; - $investigations = ['' => '- select -'] + $investigations; - - return view('investigations::investigation_result_templates.create', compact('investigations')); - } - - public function store(Request $request) { - request()->validate([ - 'investigation_id' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - - if ($request->is_specialised_variable == 1) { - $ids = $request->investigation_specialised_variable; - $templates = $request->template_var; - - for($x = 0; $x < count($ids); $x++) { - $result_template = new InvestigationResultTemplate; - $result_template->investigation_id = $ids[$x]; - $result_template->template = $templates[$x]; - $result_template->is_specialised_variable = 1; - $result_template->created_by = $logged_in_user_id; - $result_template->updated_by = $logged_in_user_id; - $result_template->save(); - } - } else { - $result_template = new InvestigationResultTemplate; - $result_template->template = $request->template; - $result_template->investigation_id = $request->investigation_id; - $result_template->is_specialised_variable = $request->is_specialised_variable; - $result_template->created_by = $logged_in_user_id; - $result_template->updated_by = $logged_in_user_id; - $result_template->save(); - } - - flash("Result Template has been saved")->success(); - return redirect("/result_templates/"); - } - - public function show($id) { - // - } - - public function edit($id) { - $result_template = InvestigationResultTemplate::where(['id' => $id])->first(); - - if (!$result_template) { - flash()->error("Result Template not found"); - return redirect('/result_templates/'); - } else { - return view('investigations::investigation_result_templates.edit', compact('result_template')); - } - } - - public function update(Request $request, $id) { - request()->validate([ - 'template' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - $result_template = InvestigationResultTemplate::find($id); - - $result_template->template = $request->template; - $result_template->created_by = $logged_in_user_id; - $result_template->updated_by = $logged_in_user_id; - - try { - $result_template->save(); - - flash($request->name . "Result Template has been saved")->success(); - return redirect("/result_templates/"); - } catch (QueryException $e) { - flash("An error occurred. Please try again")->error(); - return back()->withInput(); - } - } - - public function destroy($id) { - $result_template = InvestigationResultTemplate::find($id); - - if ($result_template->delete()){ - flash("Result Template has been deleted.")->error(); - return redirect('/result_templates/'); - } else { - flash("An error occurred. Please try again")->error(); - return back()->withInput(); - } - } - - public function inactive() { - $result_templates = InvestigationResultTemplate::onlyTrashed() - ->paginate(50); - - if (count($result_templates) < 1) { - flash()->error("There is no inactive Result Templates"); - return redirect('/result_templates/'); - } else { - return view('investigations::investigation_result_templates.inactive', compact('result_templates')); - } - } - - public function activate($id) { - $result_template = InvestigationResultTemplate::withTrashed()->find($id); - - if ($result_template->restore()){ - flash("Result Template has been activated.")->success(); - return redirect('/result_templates/'); - } else { - flash("An error occurred. Please try again")->error(); - return back()->withInput(); - } - } - - public function check_investigation_speciality_type($id, $counter) { - if (get_name($id, 'id', 'type', 'investigations') == 1){ - $code = ""; - $code .= "

    "; - - $code .= ""; - $code .= "

    "; - } else { - $code = "0"; - } - - return $code; - } - - public function get_templates_for_investigation($id, $is_variable) { - $templates = DB::table('investigation_result_templates') - ->whereIn('investigation_id', [$id, 0]) - ->where('is_specialised_variable', $is_variable) - ->whereNull('deleted_at') - ->get(); - - $code = ""; - $code .= ""; - $code .= ""; - $code .= ""; - - foreach($templates as $template) { - $code .= ""; - $code .= ""; - $code .= ""; - $code .= ""; - } - - $code .= "
    TemplateAction
    " . $template->template . ""; - $code .= ""; - $code .= "
    "; - - return $code; - } -} diff --git a/docker/statistics/Modules/Investigations/Http/Controllers/InvestigationSpecialisedVariableController.php b/docker/statistics/Modules/Investigations/Http/Controllers/InvestigationSpecialisedVariableController.php deleted file mode 100755 index 9a079eae..00000000 --- a/docker/statistics/Modules/Investigations/Http/Controllers/InvestigationSpecialisedVariableController.php +++ /dev/null @@ -1,250 +0,0 @@ -get(); - $investigations = Investigation::get(); - $units = UnitOfMeasure::get(); - - return view('investigations::investigation_specialised_variables.index', compact('investigation_variables', 'investigations', 'units')); - } - - /** - * Show the Investigation Variable for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - $investigations = Investigation::get(); - $units = UnitOfMeasure::get(); - return view('investigations::investigation_specialised_variables.create', compact('investigations', 'units')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - $investigation_specialised_variable = new InvestigationSpecialisedVariable; - - $investigation_specialised_variable->name = $request->name; - $investigation_specialised_variable->investigation_id = $request->investigation; - $investigation_specialised_variable->units = $request->unit; - $investigation_specialised_variable->normal_ranges = $request->normal_ranges; - $investigation_specialised_variable->range_type = $request->range_type; - $investigation_specialised_variable->created_by = $logged_in_user_id; - $investigation_specialised_variable->updated_by = $logged_in_user_id; - - $investigation = Investigation::find($request->investigation); - $investigation->type = 1; - - try { - $investigation_specialised_variable->save(); - $investigation->save(); - - if ($request->range_type == 1) { - $age_id = $request->age_id; - $dynamic_range_male = $request->dynamic_range_male; - $dynamic_range_female = $request->dynamic_range_female; - - for ($x = 0; $x < count($age_id); $x++){ - $new_range = new InvestigationNormalRange; - $new_range->male_range = $dynamic_range_male[$x]; - $new_range->female_range = $dynamic_range_female[$x]; - $new_range->age_group_id = $age_id[$x]; - $new_range->test_id = $investigation_specialised_variable->id; - $new_range->is_specialised_variable = 1; - $new_range->created_by = $logged_in_user_id; - $new_range->save(); - } - } - - flash($request->name . "Investigation Specialised Variable has been saved")->success(); - return redirect("/investigation_variables/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $investigations = Investigation::get(); - $units = UnitOfMeasure::get(); - $investigation_specialised_variable = InvestigationSpecialisedVariable::where(['id' => $id])->first(); - - if (!$investigation_specialised_variable) { - flash()->error("Drug Investigation Variable not found"); - return redirect('/investigation_variables/'); - } else { - return view('investigations::investigation_specialised_variables.edit', compact('investigation_specialised_variable', 'investigations', 'units')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - $investigation_specialised_variable = InvestigationSpecialisedVariable::find($id); - - $investigation_specialised_variable->name = $request->name; - $investigation_specialised_variable->investigation_id = $request->investigation; - $investigation_specialised_variable->units = $request->unit; - $investigation_specialised_variable->normal_ranges = $request->normal_ranges; - $investigation_specialised_variable->range_type = $request->range_type; - $investigation_specialised_variable->created_by = $logged_in_user_id; - $investigation_specialised_variable->updated_by = $logged_in_user_id; - $investigation = Investigation::find($request->investigation); - $investigation->type = 1; - - try { - $investigation_specialised_variable->save(); - $investigation->save(); - - if ($request->range_type == 1) { - $age_id = $request->age_id; - $dynamic_range_male = $request->dynamic_range_male; - $dynamic_range_female = $request->dynamic_range_female; - - for ($x = 0; $x < count($age_id); $x++){ - - $dynamic_normal_range = DB::table('investigations_normal_ranges') - ->where('age_group_id', $age_id[$x]) - ->where('test_id', $investigation_specialised_variable->id) - ->where('is_specialised_variable', 1) - ->first(); - - if (!$dynamic_normal_range) { - $dynamic_normal_range = new InvestigationNormalRange; - $dynamic_normal_range->created_by = $logged_in_user_id; - } else { - $dynamic_normal_range = InvestigationNormalRange::find($dynamic_normal_range->id); - $dynamic_normal_range->updated_by = $logged_in_user_id; - } - - $dynamic_normal_range->male_range = $dynamic_range_male[$x]; - $dynamic_normal_range->female_range = $dynamic_range_female[$x]; - $dynamic_normal_range->age_group_id = $age_id[$x]; - $dynamic_normal_range->test_id = $investigation_specialised_variable->id; - $dynamic_normal_range->is_specialised_variable = 1; - $dynamic_normal_range->save(); - } - } - - flash($request->name . "Investigation Specialised Variable has been saved")->success(); - return redirect("/investigation_variables/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $investigation_specialised_variable = InvestigationSpecialisedVariable::find($id); - $investigation_id = $investigation_specialised_variable->investigation_id; - - if ($investigation_specialised_variable->delete()){ - $variables = InvestigationSpecialisedVariable::where(['investigation_id' => $investigation_id])->count(); - - if ($variables < 1) { - $investigation = Investigation::find($investigation_id); - $investigation->type = 0; - $investigation->save(); - } - flash("Investigation Variable has been deleted.")->success(); - return redirect('/investigation_variables/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $investigation_variables = InvestigationSpecialisedVariable::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (empty($investigation_variables)) { - flash()->error("There is no inactive Drug Routes"); - return redirect('/investigation_variables/'); - } else { - return view('investigations::investigation_specialised_variables.inactive', compact('investigation_variables')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $investigation_specialised_variable = InvestigationSpecialisedVariable::withTrashed()->find($id); - - $investigation = Investigation::find($investigation_specialised_variable->investigation_id); - $investigation->type = 1; - - if ($investigation_specialised_variable->restore()){ - $investigation->save(); - flash("Investigation Variable has been activated.")->success(); - return redirect('/investigation_variables/'); - } - } -} diff --git a/docker/statistics/Modules/Investigations/Http/Controllers/InvestigationTestCodesController.php b/docker/statistics/Modules/Investigations/Http/Controllers/InvestigationTestCodesController.php deleted file mode 100755 index b17e3d32..00000000 --- a/docker/statistics/Modules/Investigations/Http/Controllers/InvestigationTestCodesController.php +++ /dev/null @@ -1,236 +0,0 @@ -pluck('name', 'id') - ->prepend('- select -', ''); - - $instruments = LabInstrument::orderBy('name') - ->pluck('name', 'id') - ->prepend('- select -', ''); - - return view('investigations::investigation_test_codes.create', compact('investigations', 'instruments')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\RedirectResponse - */ - public function store(Request $request) { - request()->validate([ - 'investigation_id' => 'required', - 'machine_name' => 'required', - 'test_code' => 'required' - ]); - - $test_code = new InvestigationTestCode(); - $logged_in_user_id = Auth::user()->id; - - if ($request->is_specialised_variable == 1){ - if (is_null($request->investigation_specialised_variable)) { - flash("Please include the specialised variable for this investigation")->error(); - return back()->withInput(); - } else { - $test_code->investigation_id = $request->investigation_specialised_variable; - } - } else { - $test_code->investigation_id = $request->investigation_id; - } - - $test_code->machine_name = $request->machine_name; - $test_code->test_code = $request->test_code; - $test_code->is_specialised_variable = $request->is_specialised_variable; - $test_code->created_by = $logged_in_user_id; - $test_code->updated_by = $logged_in_user_id; - - try { - $test_code->save(); - flash("Test Code has been saved")->success(); - return redirect("/investigation_test_codes/"); - } catch (QueryException $e) { - flash("Something went wrong. Please try again")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Foundation\Application|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector - */ - public function edit($id) { - $test_code = InvestigationTestCode::where(['id' => $id])->first(); - $investigations = Investigation::orderBy('name') - ->pluck('name', 'id') - ->prepend('- select -', ''); - $instruments = LabInstrument::orderBy('name') - ->pluck('name', 'id') - ->prepend('- select -', ''); - $specialised_variables = InvestigationSpecialisedVariable::orderBy('name') - ->pluck('name', 'id') - ->prepend('- select -', ''); - - if (!$test_code) { - flash()->error("Investigation test code not found"); - return redirect('/investigation_test_codes/'); - } else { - return view('investigations::investigation_test_codes.edit', compact('test_code', 'investigations', 'instruments', 'specialised_variables')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Foundation\Application|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector - */ - public function update(Request $request, $id) { - request()->validate([ - 'investigation_id' => 'required', - 'machine_name' => 'required', - 'test_code' => 'required' - ]); - - //validation passed - $test_code = InvestigationTestCode::find($id); - $logged_in_user_id = Auth::user()->id; - - if ($request->is_specialised_variable == 1){ - if (is_null($request->investigation_specialised_variable)) { - flash("Please include the specialised variable for this investigation")->error(); - return back()->withInput(); - } else { - $test_code->investigation_id = $request->investigation_specialised_variable; - } - } else { - $test_code->investigation_id = $request->investigation_id; - } - - $test_code->machine_name = $request->machine_name; - $test_code->test_code = $request->test_code; - $test_code->is_specialised_variable = $request->is_specialised_variable; - $test_code->updated_by = $logged_in_user_id; - - try { - $test_code->save(); - flash("Test code has been updated")->success(); - return redirect("/investigation_test_codes/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Foundation\Application|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector - */ - public function destroy($id) { - $test_code = InvestigationTestCode::find($id); - - if ($test_code->delete()) { - flash("Test Code has been deleted.")->success(); - return redirect('/investigation_test_codes/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Contracts\View\Factory|\Illuminate\Foundation\Application|\Illuminate\View\View - */ - public function inactive() { - $test_codes = InvestigationTestCode::onlyTrashed()->get(); - $investigations = Investigation::pluck('name', 'id'); - $instruments = LabInstrument::pluck('name', 'id'); - $specialised_variables = InvestigationSpecialisedVariable::pluck('name', 'id'); - - if (count($test_codes) < 1) { - flash()->error("There is no inactive test code"); - return redirect('/investigation_test_codes/'); - } else { - return view('investigations::investigation_test_codes.inactive', compact('test_codes', 'investigations', 'instruments', 'specialised_variables')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Foundation\Application|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector - */ - public function activate($id) { - $test_code = InvestigationTestCode::withTrashed()->find($id); - - if($test_code->restore()){ - flash("Test code has been activated.")->success(); - return redirect('/investigation_test_codes/inactive'); - } - } - - public function check_investigation_speciality_type($id) { - if (get_name($id, 'id', 'type', 'investigations') == 1){ - $code = ""; - } else { - $code = "0"; - } - - return $code; - } -} diff --git a/docker/statistics/Modules/Investigations/Http/Controllers/LabController.php b/docker/statistics/Modules/Investigations/Http/Controllers/LabController.php deleted file mode 100755 index f25a2c89..00000000 --- a/docker/statistics/Modules/Investigations/Http/Controllers/LabController.php +++ /dev/null @@ -1,762 +0,0 @@ -middleware('auth'); - $this->middleware('permission:lab-management', ['only' => ['index']]); - $this->middleware('permission:labs-create', ['only' => ['create', 'store']]); - $this->middleware('permission:labs-bulk-create', ['only' => ['add_bulk', 'store_bulk']]); - $this->middleware('permission:labs-bulk-edit', ['only' => ['edit_bulk', 'update_bulk']]); - $this->middleware('permission:labs-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:labs-delete', ['only' => ['destroy', 'inactive', 'activate']]); - $this->middleware('permission:labs-usage-listing', ['only' => ['lab_usage_listing']]); - $this->middleware('permission:labs-report-usage', ['only' => ['actual_lab_usage', 'labs_usages_report']]); - $this->middleware('permission:labs-bulk-delete', ['only' => ['delete_bulk']]); - $this->middleware('permission:requisition-for-labs', ['only' => ['requisition_for_labs','store_lab_requisitions']]); - $this->middleware('permission:labs-stock-sheet', ['only' => ['stock_sheet', 'update_laboratory_stock_sheet']]); - - } - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() - { - $labs = Lab::orderBy('name', 'asc')->get(); - $labs= get_all_batch_details($labs,['store_stock','lab_stock'],['store_batches','lab_batches'],['total_store_stock','total_lab_stock'],5) ; - return view('investigations::labs.index', compact('labs')); - } - - public function dashboard() - { - - $end = Carbon::now()->endOfDay()->toDateTimeString(); - $start = Carbon::now()->startOfDay()->toDateTimeString(); - - $labs = Lab::get(); - $total_investigations = OrderedInvestigation::get(); - $total_paid_investigations = OrderedInvestigation::where('payment_status', 1)->get(); - $total_unpaid_investigations = OrderedInvestigation::where('payment_status', 0)->get(); - $total_pending_investigations = OrderedInvestigation::where('investigation_status', 0)->get(); - $total_investigation_deposits = DB::table('investigation_deposits') - ->whereBetween('created_at', [$start, $end]); - - return view('investigations::labs.dashboard', compact('labs', 'total_investigations', 'total_paid_investigations', 'total_unpaid_investigations', 'total_pending_investigations', 'total_investigation_deposits')); - } - - public function lab_usage_listing() - { - /*$labs = DB::table('labs')->where('deleted_at', '=',null)->where('store_stock', '>', 0)->get();*/ - $labs = Lab::orderBy('name', 'asc')->get(); - $hospital_information = HospitalInformation::first(); - - $labs_usages = LabUsageListing::orderBy('id','desc')->limit(20)->get(); - - return view('investigations::labs.lab_usage_listing', compact('labs', 'hospital_information', 'labs_usages')); - } - - public function clear_stock() - { - $lab_s = Lab::get(); - foreach ($lab_s as $lab) { - $lab->delete(); - } - $labs = Lab::get(); - return view('investigations::labs.index', compact('labs')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - - $units = UnitOfMeasure::get(); - $suppliers = Supplier::get(); - $forms = LabForm::get(); - $chart_of_accounts = ChartOfAccount::where(['type' => 1]) - ->orderBy('name', 'asc') - ->pluck('name', 'id') - ->toArray(); - $chart_of_accounts = ['' => '- select -'] + $chart_of_accounts; - - $expense_accounts = ChartOfAccount::where(['type' => 2]) - ->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $expense_accounts = ['' => '- select -'] + $expense_accounts; - - $payables_accounts = ChartOfAccount::where(['type' => 6]) - ->orWhere(['type' => 9])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $payables_accounts = ['' => '- select -'] + $payables_accounts; - - return view('investigations::labs.create', compact('units', 'suppliers', 'forms', 'chart_of_accounts', 'expense_accounts', 'payables_accounts')); - } - - public function add_bulk() - { - $units_of_measure = UnitOfMeasure::get(); - $suppliers = Supplier::get(); - $forms = LabForm::get(); - //$chart_of_accounts = ChartOfAccount::get(); - $chart_of_accounts = ChartOfAccount::where(['type' => 1]) - ->orderBy('name', 'asc') - ->pluck('name', 'id') - ->toArray(); - $chart_of_accounts = ['' => '- select -'] + $chart_of_accounts; - - $expense_accounts = ChartOfAccount::where(['type' => 2]) - ->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $expense_accounts = ['' => '- select -'] + $expense_accounts; - - $payables_accounts = ChartOfAccount::where(['type' => 6]) - ->orWhere(['type' => 9])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $payables_accounts = ['' => '- select -'] + $payables_accounts; - - return view('investigations::labs.bulk.create', compact('units_of_measure', 'suppliers', 'forms', 'chart_of_accounts', 'expense_accounts', 'payables_accounts')); - } - - public function get_lab_quantity(Request $request) - { - if (track_items_using_batches()){ - $lab_stock =track_batch_stock(5,$request->id,'lab_stock'); - $total_stock = 0; - foreach ($lab_stock as $lab) { - $total_stock += $lab->lab_stock; - } - $data = [ - 'laboratory_stock' => $total_stock, - 'cost_price' => $lab_stock[0]->cost_price??0, - ]; - return $data; - } - return Lab::where('id', $request->id)->first(); - } - - public function actual_lab_usage(Request $request) - { - $lab_counter = 0; - $lab_item_array = $request->labItem; - $available_qty_array = $request->availableQty; - $available_qty_unit_cost_array = $request->unitCost; - $usage_qty_array = $request->requiredQty; - $usage_qty_cost_array = $request->totalCost; - - if ($request->dates == 'today') { - $start = Carbon::now()->startOfDay()->toDateTimeString(); - $end = Carbon::now()->endOfDay()->toDateTimeString(); - } else { - $start = Carbon::parse($request->start_date)->endOfDay()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - } - - for ($i = 0; $i < count($lab_item_array); $i++) { - if ($lab_item_array[$i]) { - if(track_items_using_batches()){ - $datat=get_lab_batches_to_use_based_on_needed_quantity($lab_item_array[$i],5,$usage_qty_array[$i],'lab_stock'); - $cost_value=0; - foreach ($datat as $key=> $val){ - $unit_cost_value =(int) get_name($key, 'id', 'cost_price', 'item_batch_watcher'); - //caluclate cost value - $cost_value += $unit_cost_value * $val; - reduce_batch_item_stock(5,$lab_item_array[$i], $key, 'labs', 'lab_stock', $val, 'lab_usage_listings','Labs', null, null); - } - $usage_qty_cost_array[$i]=$cost_value; - } - $remaining_qty = record_lab_usage_listing($lab_item_array[$i],$available_qty_unit_cost_array[$i], $available_qty_array[$i],$usage_qty_array[$i], $usage_qty_cost_array[$i], - $start,$end); - if (!($remaining_qty < 0)) { - $lab = Lab::find($lab_item_array[$i]); - $lab->laboratory_stock = ($lab->laboratory_stock - (int)$usage_qty_array[$i]); - $lab->save(); - } else { - flash('Lab Item\'s ' . get_name($lab_item_array[$i], 'id', 'name', 'labs') . ' requested use quantity exceeds what is available.'); - } - } - } - flash('Labs used from ' . streamline_date($start) . ' to ' . streamline_date($end) . ' have saved successfully')->success(); - return redirect('/labs/usage/listing'); - } - - public function store_bulk(Request $request) - { - $validator = Validator::make($request->all(), [ - //'name' => 'required', - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $name_array = $request->name; - - for ($i = 0; $i < count($name_array); $i++) { - if ($request->name[$i] != "" && !is_null($request->name[$i])) { - try { - $lab = new Lab; - $lab->name = $request->name[$i]; - // $lab->cost_price = isset($request->cost_price[$i])?$request->cost_price[$i] : null; - // $lab->non_insured_price = isset($request->non_insured_price[$i])?$request->non_insured_price[$i] : null; - // $lab->insured_price = isset($request->insured_price[$i])?$request->insured_price[$i] : null; - // $lab->account_id = isset($request->chart_of_account[$i])? $request->chart_of_account[$i] : null; - // $lab->store_stock = isset($request->stock[$i])?$request->stock[$i] : 0 ; - // if ($request->chi_status[$i] == '1') { - // $lab->insurance_coverage = 1; - // } else { - // $lab->insurance_coverage = 0; - // } - $lab->reorder_level = isset($request->re_order_level[$i]) ? $request->re_order_level[$i] :0; - $lab->description = $request->description[$i]; - $lab->form_id = $request->form[$i]; - $lab->unit_id = $request->unit[$i]; - // $lab->expiry_date = isset($request->expiry_date[$i])? $request->expiry_date[$i] : null; - // $lab->supplier_id = isset($request->supplier[$i])? $request->supplier[$i] : null ; - $lab->expenses_account_id = isset($request->expenses_account_id[$i]) ? $request->expenses_account_id[$i] : null; - $lab->created_by = Auth::id(); - $lab->save(); - } catch (\Exception $e) { - flash('Error: ' . $e->getMessage())->error(); - return redirect()->back(); - } - } - } - } - return redirect('labs'); - } - - public function edit_bulk() - { - $labs = Lab::get(); - $units_of_measure = UnitOfMeasure::get()->pluck('name','id')->toArray(); - $units_of_measure = ['' => '- select -'] + $units_of_measure; - $suppliers = Supplier::get(); - $forms = LabForm::pluck('name','id')->toArray(); - $forms = ['' => '- select -'] + $forms; - - $expense_accounts = ChartOfAccount::where(['type' => 2]) - ->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $expense_accounts = ['' => '- select -'] + $expense_accounts; - - $payables_accounts = ChartOfAccount::where(['type' => 6]) - ->orWhere(['type' => 9])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $payables_accounts = ['' => '- select -'] + $payables_accounts; - - return view('investigations::labs.bulk.edit', compact('units_of_measure', 'suppliers', 'forms', 'labs', 'expense_accounts', 'payables_accounts')); - } - - public function update_bulk(Request $request) - { - $validator = Validator::make($request->all(), [ - 'name' => 'required', - ]); - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $name_array = $request->name; - for ($i = 0; $i < count($name_array); $i++) { - try { - $lab = Lab::find($request->id[$i]); - $lab->name = $request->name[$i]; - $lab->cost_price = isset($request->cost_price[$i]) ? $request->cost_price[$i] : null ; - $lab->expiry_date = isset($request->cost_price[$i]) ? $request->expiry_date[$i] : null; - $lab->non_insured_price = isset($request->cost_price[$i]) ? $request->non_insured_price[$i] : null; - $lab->insured_price = isset($request->cost_price[$i]) ? $request->insured_price[$i] : null; - $lab->account_id = isset($request->chart_of_account[$i]) ? $request->chart_of_account[$i] : null; - $lab->store_stock = isset($request->stock[$i]) ? $request->stock[$i] : null; - - $lab->reorder_level = isset($request->re_order_level[$i]) ? $request->re_order_level[$i] : null; - $lab->description = $request->description[$i]; - $lab->form_id = isset($request->form[$i]) ? $request->form[$i] : null; - $lab->unit_id = isset($request->unit[$i]) ? $request->unit[$i] : null; - $lab->supplier_id = isset($request->supplier[$i]) ? $request->supplier[$i] : null; - $lab->expenses_account_id = isset($request->expenses_account_id[$i]) ? $request->expenses_account_id[$i] : null; - $lab->updated_by = Auth::id(); - $lab->save(); - } catch (\Exception $e) { - flash('Error: ' . $e->getMessage())->error(); - return redirect()->back(); - } - } - } - return redirect('labs'); - } - - public function delete_bulk(Request $request) - { - $ids_array = $request->ids; - for ($i = 0; $i < count($ids_array); $i++) { - $lab = Lab::find($ids_array[$i]); - if ($lab) { - $lab->delete(); - } - } - return 'success'; - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - - $validator = Validator::make($request->all(), [ - 'name' => 'required', - ]); - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $lab = new Lab; - $lab->name = $request->name; - $lab->cost_price = is_null($request->cost_price) ? null :$request->cost_price; - $lab->non_insured_price = is_null($request->non_insured_price) ? null :$request->non_insured_price; - $lab->insured_price =is_null($request->insured_price) ? null : $request->insured_price; - $lab->account_id = is_null($request->chart_of_account) ? null :$request->chart_of_account; - $lab->expiry_date = is_null($request->expiry_date) ? null : Carbon::createFromFormat('d/m/Y', $request->expiry_date)->toDateString(); - $lab->store_stock = is_null($request->stock) ? 0 : $request->stock; - if ($request->chi_status == '1') { - $lab->insurance_coverage = 1; - } else { - $lab->insurance_coverage = 0; - } - $lab->reorder_level = is_null($request->re_order_level) ? 0 : $request->re_order_level; - $lab->description = $request->description; - $lab->form_id = $request->form; - $lab->unit_id = $request->unit; - $lab->supplier_id = $request->supplier; - $lab->expenses_account_id = $request->expenses_account_id; - //$lab->payables_account_id = $request->payables_account_id; - $lab->created_by = Auth::id(); - flash("New lab has been added")->success(); - $lab->save(); - - return redirect('labs'); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) - { - $lab = Lab::find($id); - $units = UnitOfMeasure::get()->pluck('name', 'id')->toArray(); - $units = ['' => '- select -'] + $units; - $suppliers = Supplier::get(); - $forms = LabForm::get()->pluck('name', 'id')->toArray(); - $forms = ['' => '- select -'] + $forms; - $chart_of_accounts = ChartOfAccount::where(['type' => 1]) - ->orderBy('name', 'asc') - ->pluck('name', 'id') - ->toArray(); - $chart_of_accounts = ['' => '- select -'] + $chart_of_accounts; - - $expense_accounts = ChartOfAccount::where(['type' => 2]) - ->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $expense_accounts = ['' => '- select -'] + $expense_accounts; - - $payables_accounts = ChartOfAccount::where(['type' => 6]) - ->orWhere(['type' => 9])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $payables_accounts = ['' => '- select -'] + $payables_accounts; - - return view('investigations::labs.edit', compact('lab', 'units', 'suppliers', 'forms', 'chart_of_accounts', 'expense_accounts', 'payables_accounts')); - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - $validator = Validator::make($request->all(), [ - 'name' => 'required', - ]); - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $lab = Lab::find($id); - $lab->name = $request->name; - $lab->cost_price = is_null($request->cost_price) ? null :$request->cost_price; - $lab->non_insured_price = is_null($request->non_insured_price) ? null :$request->non_insured_price; - $lab->insured_price =is_null($request->insured_price) ? null : $request->insured_price; - $lab->account_id = is_null($request->chart_of_account) ? null :$request->chart_of_account; - $lab->store_stock =is_null($request->stock) ? null : $request->stock; - - $lab->reorder_level = is_null($request->re_order_level) ? null :$request->re_order_level; - $lab->description = $request->description; - $lab->form_id = $request->form; - $lab->unit_id = $request->unit; - $lab->expiry_date = is_null($request->expiry_date) ? null : $request->expiry_date; - $lab->supplier_id = is_null($request->supplier) ? null :$request->supplier; - $lab->expenses_account_id = $request->expenses_account_id; - //$lab->payables_account_id = $request->payables_account_id; - $lab->updated_by = Auth::id(); - - try { - $lab->save(); - } catch (\Exception $e) { - } - } - - return redirect('labs'); - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - $lab = Lab::find($id); - - if ($lab->delete()) { - flash("Lab has been deleted.")->success(); - return redirect('labs'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() - { - $labs = Lab::onlyTrashed() - ->orderBy('name', 'asc') - ->get(); - - if (count($labs) < 1) { - flash()->error("There is no inactive labs"); - return redirect('labs'); - } - - return view('investigations::labs.inactive', compact('labs')); - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) - { - $lab = Lab::withTrashed()->find($id); - - if ($lab->restore()) { - flash("Labs has been activated.")->success(); - return redirect('/labs/inactive'); - } - } - - /* requisition for labs */ - public function requisition_for_labs(Request $request) - { - $results = Lab::orderBy('name', 'asc')->get(); - $names_array = Lab::orderBy('name')->distinct()->pluck('name'); - $labs = Lab::orderBy('name')->pluck('name', 'id'); - - // add start and end date - - $date_filter = []; - if (isset($request->start_date) && isset($request->end_date)) { - - if (isset($request->quotation_type)) { - $item_type = $request->quotation_type; - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - - array_push($date_filter, ['created_at', '>', $start_date]); - array_push($date_filter, ['created_at', '<', $end_date]); - } - } else { - $date_from = Carbon::today()->subDays(30)->format('Y-m-d'); - $date_to = Carbon::today()->addDays(1)->format('Y-m-d'); - array_push($date_filter, ['created_at', '>', $date_from]); - array_push($date_filter, ['created_at', '<', $date_to]); - } - - return view('investigations::labs.requisition_for_labs', compact('results', 'names_array', 'labs')); - } - - /** - * Previous lab requisitions - * return @var object - */ - public function previous_requisition_for_labs(Request $request) - { - $search_by = $request->search_by; - $reg_date = $request->reg_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - $filters = []; - $search_string = ""; - - if ($search_by == 0) { - // last 24 hours - $last_day = Carbon::now()->subDay(); - array_push($filters, ['created_at', '>=', $last_day]); - $search_string = "

    Showing results of " . streamline_date($last_day) . "

    "; - } elseif ($search_by == 1) { - // custom date - if (is_null($request->reg_date)) { - flash('Please select a date')->error(); - return redirect()->back(); - } - $selected_date_filter = Carbon::createFromFormat('d/m/Y', $request->reg_date)->toDateString(); - array_push($filters, ['created_at', $selected_date_filter]); - $search_string = "

    Showing results of " . streamline_date($selected_date_filter) . "

    "; - } elseif ($search_by == 2) { - // custom date range - if (is_null($start_date) || is_null($end_date)) { - flash('Please select a date')->error(); - return redirect()->back(); - } - $start_date_search = Carbon::createFromFormat('d/m/Y', $start_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::createFromFormat('d/m/Y', $end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>=', $start_date_search]); - array_push($filters, ['created_at', '<=', $end_date_search]); - - $search_string = "

    Showing between " . streamline_date($start_date_search) . " and " . streamline_date($end_date_search) . "

    "; - }else{ - // last 24 hours - $last_day = Carbon::now()->subDay(); - array_push($filters, ['created_at', '>=', $last_day]); - $search_string = "

    Showing results of " . streamline_date($last_day) . "

    "; - } - $data['previous_requisitions_results'] =Requisition::where('quotation_type_id', '=', 5)->where($filters)->orderBy('created_at', 'desc')->get(); - $data['search_string'] = $search_string; - return view('investigations::labs.pre_requisition_for_labs', compact('data')); - } - - public function store_lab_requisitions(Request $request) - { - $drug_id_array = $request->drug_id; - $quantity_array = $request->quantity; - $item_type = $request->item_type; - $user_id = Auth::id(); - - /* return back if no quantity has been filled */ - if (array_sum($quantity_array) < 1) { - flash('Please insert some values!')->error(); - return redirect()->back()->withInput(); - } - - if (isset($request->complete_request)) { - $filtered_drugs_array = []; - $filtered_quantities_array = []; - $associative_requested_drugs_array = []; - for ($i = 0; $i < count($drug_id_array); $i++) { - if ($quantity_array[$i] != "") { - $associative_requested_drugs_array[$drug_id_array[$i]] = $quantity_array[$i]; - $filtered_drugs_array[] = $drug_id_array[$i]; - $filtered_quantities_array[] = $quantity_array[$i]; - } - } - $new_requisition = new Requisition; - $new_requisition->quotation_type_id = $item_type; - $new_requisition->drug_id = implode(',', $filtered_drugs_array); - $new_requisition->quantity_requested = implode(',', $filtered_quantities_array); - $new_requisition->created_by = $user_id; - $new_requisition->requisition_origin = 2; //1-pharmacy, 2-lab, 3-imaging - $new_requisition->save(); - flash('Requisition number ' . $new_requisition->id . ' made successfully')->success(); - //redirect to requisition - return redirect('/print_requisition_receipt/' . $new_requisition->id); - } - } - - /* filter out items to requisition */ - public function requisition_for_labs_search(Request $request) - { - $item_type = $request->item_type; - $item_ids_array = $request->items_ids; - $results = null; - $filters = []; - $items = null; - - $results = Lab::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - $labs = Lab::orderBy('name')->pluck('name', 'id'); - - $date_filter = []; - if (isset($request->start_date) && isset($request->end_date)) { - - if (isset($request->quotation_type)) { - $item_type = $request->quotation_type; - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - - array_push($date_filter, ['created_at', '>', $start_date]); - array_push($date_filter, ['created_at', '<', $end_date]); - } - } else { - $date_from = Carbon::today()->subDays(30)->format('Y-m-d'); - $date_to = Carbon::today()->addDays(1)->format('Y-m-d'); - array_push($date_filter, ['created_at', '>', $date_from]); - array_push($date_filter, ['created_at', '<', $date_to]); - } - $previous_requisitions_results =Requisition::where('quotation_type_id', '=', 5)->where($date_filter)->orderBy('created_at', 'desc')->get(); - - return view('investigations::labs.requisition_for_labs', compact('items', 'item_type', 'labs', 'results', 'previous_requisitions_results')); - } - - /* view stock sheet */ - public function stock_sheet() - { - $labs = DB::table('labs')->whereNull('deleted_at')->orderBy('name', 'asc')->paginate(1000); - // getting the labs stock batches - $labs= calculate_stock_value($labs,5,'lab_stock'); - if (empty($labs)) { - flash()->error("There is out of stock of labs"); - return redirect('/labs/'); - } else { - return view('investigations::labs.labs_stock_sheet', compact('labs')); - } - } - - public function update_laboratory_stock_sheet(Request $request) - { - $lab_ids_array = $request->lab_id; - $quantities_array = $request->quantity; - $expiry_dates_array = $request->expiry_date; - $batch_numbers_array = $request->batch_number; - $batch_quantity_balances_array = $request->batch_quantity_balance; - $batch_unit_cost = $request->batch_unit_cost; - $batch_db_record_ids_array = $request->batch_drug_id; - $batch_expiry_dates_array = $request->expiry_date; - $batch_drug_ids_array = $request->batch_item_id; - //update batch tracking tables with reconciliations - for ($i=0; $i < count($batch_numbers_array) ; $i++) { - if (!is_null($batch_numbers_array[$i]) && !is_null($batch_quantity_balances_array[$i]) ){ - reconcile_batches(5, $batch_drug_ids_array[$i], $batch_numbers_array[$i], $batch_quantity_balances_array[$i], $batch_expiry_dates_array[$i], "lab", $batch_unit_cost[$i], $batch_db_record_ids_array[$i]??0, null); - } - } - for ($i = 0; $i < count($lab_ids_array); $i++) { - $lab = Lab::withTrashed()->find($lab_ids_array[$i]); - $lab->laboratory_stock = $quantities_array[$i]; - // $lab->expiry_date = $expiry_dates_array[$i]; - $lab->save(); - } - - flash('stock sheet has been updated')->success(); - return redirect('laboratory_stock_sheet'); - } - - public function labs_usages_report(Request $request) - { - $labs = []; - // $labs = DB::table('labs')->orderBy('name', 'asc')->where('deleted_at', '=', null)->get(); - $hospital_information = HospitalInformation::first(); - - $labs_options = Lab::orderBy('name', 'asc')->pluck('name', 'id')->prepend('- All labs - ', 'all_labs'); - - $search_by = $request->search_by; - $reg_date = $request->reg_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - $filters = []; - $search_string = ""; - - if ($search_by == 0) { - // last 24 hours - $last_day = Carbon::now()->subDay(); - array_push($filters, ['start_date', '>=', $last_day]); - if ($request->lab_id != 'all_labs') { - array_push($filters, ['lab_id', '=', $request->lab_id]); - } - $search_string = "

    Showing results of " . streamline_date($last_day) . "

    "; - } elseif ($search_by == 1) { - // custom date - if (is_null($request->reg_date)) { - flash('Please select a date')->error(); - return redirect()->back(); - } - $selected_date_filter = Carbon::createFromFormat('d/m/Y', $request->reg_date)->toDateString(); - array_push($filters, ['start_date', $selected_date_filter]); - if ($request->lab_id != 'all_labs') { - array_push($filters, ['lab_id', '=', $request->lab_id]); - } - $search_string = "

    Showing results of " . streamline_date($selected_date_filter) . "

    "; - } elseif ($search_by == 2) { - // custom date range - if (is_null($start_date) || is_null($end_date)) { - flash('Please select a date')->error(); - return redirect()->back(); - } - $start_date_search = Carbon::createFromFormat('d/m/Y', $start_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::createFromFormat('d/m/Y', $end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['start_date', '>=', $start_date_search]); - array_push($filters, ['end_date', '<=', $end_date_search]); - if ($request->lab_id != 'all_labs') { - array_push($filters, ['lab_id', '=', $request->lab_id]); - } - $search_string = "

    Showing between " . streamline_date($start_date_search) . " and " . streamline_date($end_date_search) . "

    "; - } - - $labs_usages = LabUsageListing::where($filters)->orderBy('id', 'desc')->limit(500)->get(); - - return view('investigations::labs.lab_usages_report', compact('labs', 'hospital_information', 'labs_usages', 'labs_options', 'search_string')); - } -} diff --git a/docker/statistics/Modules/Investigations/Http/Controllers/LabFormController.php b/docker/statistics/Modules/Investigations/Http/Controllers/LabFormController.php deleted file mode 100755 index cd9d55b6..00000000 --- a/docker/statistics/Modules/Investigations/Http/Controllers/LabFormController.php +++ /dev/null @@ -1,175 +0,0 @@ -all(), [ - 'name' => 'required', - //'mobile_number' => 'regex:/07\d{2} \d{3} \d{3}/' - //'mobile_number' => 'regex:/(07)[0-9]{8}/' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth::user()->id; - $lab_form = new LabForm; - $lab_form->name = $request->name; - $lab_form->created_by = $logged_in_user_id; - $lab_form->updated_by = $logged_in_user_id; - - try { - $lab_form->save(); - flash($request->name . " LabForm has been saved")->success(); - return redirect("/lab_forms/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Display the specified resource. - * - * @param \Streamline\Models\LabForm $labForm - * @return \Illuminate\Http\Response - */ - public function show(LabForm $labForm) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param \Streamline\Models\LabForm $labForm - * @return \Illuminate\Http\Response - */ - public function edit($id) - { - $lab_form = LabForm::where(['id' => $id])->first(); - return view('investigations::lab_forms.edit', compact('lab_form')); - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param \Streamline\Models\LabForm $labForm - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - $validator = Validator::make($request->all(), [ - 'name' => 'required', - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth::user()->id; - - $lab_form = LabForm::find($id); - $lab_form->name = $request->name; - $lab_form->updated_by = $logged_in_user_id; - - try { - $lab_form->save(); - flash($request->name . " LabForm has been updated")->success(); - return redirect("/lab_forms/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Remove the specified resource from storage. - * - * @param \Streamline\Models\LabForm $labForm - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - $lab = LabForm::find($id); - - if ($lab->delete()) { - flash("Lab has been deleted.")->success(); - return redirect('labs'); - } - } - - public function inactive() { - $lab_forms = LabForm::onlyTrashed() - ->orderBy('name', 'asc') - ->get(); - - if (count($lab_forms) < 1) { - flash()->error("There is no inactive lab forms"); - return redirect('lab_forms'); - } - - return view('investigations::lab_forms.inactive', compact('lab_forms')); - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $lab_form = LabForm::withTrashed()->find($id); - - if($lab_form->restore()){ - flash("Lab Form has been activated.")->success(); - return redirect('/lab_forms/inactive'); - } - } -} diff --git a/docker/statistics/Modules/Investigations/Http/Controllers/LabInstrumentsController.php b/docker/statistics/Modules/Investigations/Http/Controllers/LabInstrumentsController.php deleted file mode 100755 index 59b7aabb..00000000 --- a/docker/statistics/Modules/Investigations/Http/Controllers/LabInstrumentsController.php +++ /dev/null @@ -1,161 +0,0 @@ -validate([ - 'name' => 'required' - ]); - - $instrument = new LabInstrument(); - $logged_in_user_id = Auth::user()->id; - - $instrument->name = $request->name; - $instrument->created_by = $logged_in_user_id; - $instrument->updated_by = $logged_in_user_id; - - try { - $instrument->save(); - flash("Lab Instrument has been saved")->success(); - return redirect("/lab_instruments/"); - } catch (QueryException $e) { - flash("Something went wrong. Please try again")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Foundation\Application|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector - */ - public function edit($id) { - $instrument = LabInstrument::where(['id' => $id])->first(); - - if (!$instrument) { - flash()->error("Lab Instrument not found"); - return redirect('/lab_instruments/'); - } else { - return view('investigations::lab_instruments.edit', compact('instrument')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Foundation\Application|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required', - ]); - - //validation passed - $instrument = LabInstrument::find($id); - $logged_in_user_id = Auth::user()->id; - - $instrument->name = $request->name; - $instrument->updated_by = $logged_in_user_id; - - try { - $instrument->save(); - flash("Lab Instrument has been updated")->success(); - return redirect("/lab_instruments/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Foundation\Application|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector - */ - public function destroy($id) { - $instrument = LabInstrument::find($id); - - if ($instrument->delete()) { - flash("Lab Instrument has been deleted.")->success(); - return redirect('/lab_instruments/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Contracts\View\Factory|\Illuminate\Foundation\Application|\Illuminate\View\View - */ - public function inactive() { - $instruments = LabInstrument::onlyTrashed()->get(); - - if (count($instruments) < 1) { - flash()->error("There is no inactive Lab Instrument"); - return redirect('/lab_instruments/'); - } else { - return view('investigations::lab_instruments.inactive', compact('instruments')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Foundation\Application|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector - */ - public function activate($id) { - $instrument = LabInstrument::withTrashed()->find($id); - - if($instrument->restore()){ - flash("Lab Instrument has been activated.")->success(); - return redirect('/lab_instruments/inactive'); - } - } -} diff --git a/docker/statistics/Modules/Investigations/Http/Controllers/LabMachinesController.php b/docker/statistics/Modules/Investigations/Http/Controllers/LabMachinesController.php deleted file mode 100755 index 9b6cae7a..00000000 --- a/docker/statistics/Modules/Investigations/Http/Controllers/LabMachinesController.php +++ /dev/null @@ -1,313 +0,0 @@ -test_id; // the investigation order id - $arr_parameters = json_decode($request->parameters); - $results_time = $request->time; - - $results_arr = []; - $flag_arr = []; - $test_code_arr = []; - - foreach ($arr_parameters as $parameter) { - $results_arr[] = $parameter[1]; - $flag_arr[] = $parameter[2]; - $test_code_arr[] = $parameter[0]; - } - - $results = new LabMachineResult(); - $results->sample_id = $test_id; - $results->results = implode(",", $results_arr); - $results->abnormal_flag = implode(",", $flag_arr); - $results->test_code = implode(",", $test_code_arr); - $results->results_time = $results_time; - $results->save(); - } - - public function receive_results_mispa(Request $request) { - $test_id = $request->SID ?? 0; - $patient_id = $request->PID ?? 0; - $machine_id = $request->machine_id ?? 0; - $arr_parameters = json_decode($request->results); - - $results_arr = []; - $flag_arr = []; - $test_code_arr = []; - - foreach ($arr_parameters as $parameter) { - $test_code_arr[] = $parameter[0]; - $results_arr[] = str_replace(' ', '', $parameter[1]); - $flag_arr[] = strtoupper($parameter[2]); - } - - $results = new LabMachineResult(); - $results->sample_id = $test_id; - $results->results = implode(",", $results_arr); - $results->abnormal_flag = implode(",", $flag_arr); - $results->test_code = implode(",", $test_code_arr); - $results->machine_id = $machine_id; - $results->save(); - } - - public function import_results($sample_id) { - $lab_machine_result = LabMachineResult::where('sample_id', $sample_id)->orderBy('id', 'desc')->first(); - - $results = explode(",", $lab_machine_result->results); - $flag = explode(",", $lab_machine_result->abnormal_flag); - $test_code = explode(",", $lab_machine_result->test_code); - $machine_id = $lab_machine_result->machine_id; - $test_ids = []; - $test_flag = []; - $test_results = []; - - for ($i = 0; $i < count($test_code); $i++) { - $filters = []; - - if (is_integer($machine_id)) { - $filters[] = ['machine_name', '=', $machine_id]; - } - - $test_id = DB::table("investigation_test_codes") - ->where("test_code", $test_code[$i]) - ->where($filters)->first()?->investigation_id; - - if (is_numeric($test_id)) { - $test_flag[] = ($flag[$i] == "N") ? "" : $flag[$i]; - $test_ids[] = $test_id; - $test_results[] = $results[$i]; - } - } - - if (count($test_ids) > 0) { - $correct_ids_array = []; - $correct_values_array = []; - $correct_comments_array = []; - $parent_investigation_id = get_name($test_ids[0], 'id', 'investigation_id', 'investigation_specialised_variables'); - - $specialized_variables = DB::table('investigation_specialised_variables')->whereNull('deleted_at')->where('investigation_id', $parent_investigation_id)->orderBy('ranking','asc')->get(); - - foreach ($specialized_variables as $variable) { - $key = array_search($variable->id, $test_ids); - - if (is_integer($key)) { - $correct_ids_array[] = $test_ids[$key]; - $correct_values_array[] = $test_results[$key]; - $correct_comments_array[] = $test_flag[$key]; - } - } - - $this->map_machine_results_to_patient($correct_ids_array, $sample_id, $correct_values_array, $correct_comments_array); - flash("Results have been imported successfully")->success(); - } else { - flash("Results not imported because the test codes are missing")->error(); - } - - return redirect('/investigations/view_lab_results_details/' . $sample_id); - } - - public function map_machine_results_to_patient($test_ids, $sample_id, $results, $comments) { - // get investigation order details - $investigation_order = OrderedInvestigation::find($sample_id); - $parent_investigation_id = get_name($test_ids[0], 'id', 'investigation_id', 'investigation_specialised_variables'); - - if ($investigation_order){ - // investigation ids - $investigation_ids = explode(",", $investigation_order->investigation_id); - - // check if investigations results are available - $investigation_result = InvestigationResults::where('order_id', $sample_id)->first(); - - if ($investigation_result){ - // edit the results - $investigation_result->updated_by = Auth::id(); - - $values_array = explode(",", $investigation_result->value); - $comments_array = explode(",", $investigation_result->comment); - - $specialised_results_id = $values_array[array_search($parent_investigation_id, $investigation_ids)]; - - if (InvestigationSpecialisedResult::find($specialised_results_id)) { - $investigation_specialised_results = InvestigationSpecialisedResult::find($specialised_results_id); - } else { - $investigation_specialised_results = new InvestigationSpecialisedResult(); - $investigation_specialised_results->created_by = Auth::id(); - } - - $investigation_specialised_results->specialised_variable_id = implode(',', $test_ids); - $investigation_specialised_results->value = implode(',', $results); - $investigation_specialised_results->comment = implode(',', $comments); - $investigation_specialised_results->updated_by = Auth::id(); - $investigation_specialised_results->save(); - - $values_array[array_search($parent_investigation_id, $investigation_ids)] = $investigation_specialised_results->id; - $comments_array[array_search($parent_investigation_id, $investigation_ids)] = "-"; - - $investigation_result->value = implode(",", $values_array); - $investigation_result->comment = implode(",", $comments_array); - - $investigation_result->save(); - } else { - // add new results to the table - $order = new InvestigationResults; - - $order->per_investigation = implode(",", array_fill(0, count($investigation_ids), '0')); - $order->all_authenticated = 0; - $order->order_id = $sample_id; - $order->patient_id = $investigation_order->patient_id; - $order->episode_id = $investigation_order->episode_id; - $order->created_by = Auth::id(); - $order->inpatient = 0; - $order->result_type = $investigation_order->order_type; - - $values_array = array_fill(0, count($investigation_ids), ''); - $comments_array = array_fill(0, count($investigation_ids), ''); - - $investigation_specialised_results = new InvestigationSpecialisedResult(); - - $investigation_specialised_results->specialised_variable_id = implode(',', $test_ids); - $investigation_specialised_results->value = implode(',', $results); - $investigation_specialised_results->comment = implode(',', $comments); - $investigation_specialised_results->created_by = Auth::id(); - $investigation_specialised_results->updated_by = Auth::id(); - $investigation_specialised_results->save(); - - $values_array[array_search($parent_investigation_id, $investigation_ids)] = $investigation_specialised_results->id; - $comments_array[array_search($parent_investigation_id, $investigation_ids)] = "-"; - - $order->investigation_id = $investigation_order->investigation_id; - $order->value = implode(",", $values_array); - $order->comment = implode(",", $comments_array); - - // save the order - $order->save(); - } - } - } - - public function view_lab_machine_results(Request $request) { - $search_text = ""; - $filters = []; - - // if patient id is active, get all records regardless of date; else search by date - if (isset($request->lab_number) && $request->lab_number != '') { - $filters[] = ['sample_id', '=', $request->lab_number]; - $search_text .= "Lab Number: " . $request->lab_number; - } else { - switch ($request->search_date_by){ - case 'yesterday': - $end_date = Carbon::yesterday()->endOfDay(); - $start_date = Carbon::yesterday()->startOfDay(); - $search_text .= "Yesterday "; - break; - case 'custom_date': - $end_date = Carbon::parse($request->start_date)->endOfDay(); - $start_date = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "From: " . streamline_date($start_date) . " "; - break; - case 'custom_date_range': - $end_date = Carbon::parse($request->end_date)->endOfDay(); - $start_date = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "From: " . streamline_date($start_date) . " to " . streamline_date($end_date) . " "; - break; - case 'today': - default: - $end_date = Carbon::today()->endOfDay(); - $start_date = Carbon::today()->startOfDay(); - $search_text .= "Today "; - break; - } - - $filters[] = ['created_at', '>', $start_date]; - $filters[] = ['created_at', '<', $end_date]; - } - - $results = LabMachineResult::where($filters)->get(); - $lab_machines = LabInstrument::pluck("name", "id")->prepend('- select -', ''); - - return view('investigations::lab_instruments.view_lab_machine_results', compact('results', 'search_text', 'lab_machines')); - } - - public function restart_python_script(Request $request) { - $lab_instrument = LabInstrument::find($request->lab_instrument); - - if(!$lab_instrument || is_null($lab_instrument->restart_lis_path)) { - flash("Could not find the lab instrument selected")->error(); - return back()->withInput(); - } - - // 'public/uploads/lab_machine_scripts/kisiizi/restart_lis.py' - $process = new Process(['python3', base_path($lab_instrument->restart_lis_path)]); - $process->run(); - $process->wait(); - - if (!$process->isSuccessful()) { - throw new ProcessFailedException($process); - } - - $lab_machine_restart = new LabMachineRestart(); - - if (strpos($process->getOutput(), '1') !== false) { - flash("Lab integration has been restarted successfully")->success(); - $lab_machine_restart->result = $process->getOutput(); - } else { - flash("An error occurred while establishing a connection. Please contact the Stre@mline team")->error(); - $lab_machine_restart->result = $process->getErrorOutput(); - } - - $lab_machine_restart->created_by = Auth::id(); - $lab_machine_restart->save(); - - return redirect('lab_machines/view_lab_machine_results'); - } - - public function preview_lab_machine_results($id) { - $result = LabMachineResult::find($id); - - $html_text = ""; - - $test_code_array = explode(",", $result->test_code); - $flag_array = explode(",", $result->abnormal_flag); - $results_array = explode(",", $result->results); - - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - - for ($i = 0; $i < count($test_code_array); $i++) { - $specialised_variable_id = get_name($test_code_array[$i], 'test_code', 'investigation_id', 'investigation_test_codes'); - $specialised_variable_name = get_name($specialised_variable_id, 'id', 'name', 'investigation_specialised_variables'); - - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - } - - $html_text .= "
    Test Code Specialised Variable Result Flag
    " . $test_code_array[$i] . "" . $specialised_variable_name . "" . $results_array[$i] . "" . $flag_array[$i] . "
    "; - - return json_encode(["html" => $html_text]); - } -} diff --git a/docker/statistics/Modules/Investigations/Http/Controllers/LaboratorySpecimenController.php b/docker/statistics/Modules/Investigations/Http/Controllers/LaboratorySpecimenController.php deleted file mode 100755 index 33241bd6..00000000 --- a/docker/statistics/Modules/Investigations/Http/Controllers/LaboratorySpecimenController.php +++ /dev/null @@ -1,174 +0,0 @@ -middleware('auth'); - $this->middleware('permission:lab_specimen-list', ['only' => ['index']]); - $this->middleware('permission:lab_specimen-detail', ['only' => ['show']]); - $this->middleware('permission:lab_specimen-create', ['only' => ['create', 'store']]); - $this->middleware('permission:lab_specimen-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:lab_specimen-delete', ['only' => ['destroy']]); - $this->middleware('permission:lab_specimen-status', ['only' => ['activate, inactive']]); - } - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() - { - $lab_specimens = LaboratorySpecimen::orderBy('name', 'asc')->paginate(50); - - return view('investigations::laboratory_specimen.index',compact('lab_specimens')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - return view('investigations::laboratory_specimen.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - $validator = Validator::make($request->all(), [ - 'name' => 'required|unique:laboratory_specimens' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $specimen = new LaboratorySpecimen; - $specimen->name = $request->name; - $specimen->save(); - - if (isset($request->other_specimen_names)) { - $other_specimens_array = $request->other_specimen_names; - - for ($i=0; $i < count($other_specimens_array) ; $i++) { - if (!is_null($other_specimens_array[$i]) && $other_specimens_array[$i] != "") { - $lab_specimen = new LaboratorySpecimen; - $lab_specimen->name = $other_specimens_array[$i]; - $lab_specimen->created_by = auth()->user()->id; - $lab_specimen->updated_by = auth()->user()->id; - $lab_specimen->save(); - } - } - } - - flash('New specimen added successfully')->success(); - return redirect('laboratory_specimen'); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) - { - $lab_specimen = LaboratorySpecimen::find($id); - - if (!$lab_specimen) { - flash()->error("There is no such specimen"); - return redirect('laboratory_specimen'); - } else { - return view('investigations::laboratory_specimen.edit', compact('lab_specimen')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - $lab_specimen = LaboratorySpecimen::find($id); - $lab_specimen->name = $request->name; - $lab_specimen->update(); - - flash('successfully updated details for '.$lab_specimen->name)->success(); - return redirect('laboratory_specimen'); - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - $lab_specimen = LaboratorySpecimen::find($id); - if ($lab_specimen->delete()) { - flash($lab_specimen->name. ' has been successfully deleted')->success(); - return redirect('laboratory_specimen'); - } - flash('error occurred. Contact system admin')->error(); - return redirect()->back()->withInput(); - } - - /* - *Display inactive bed categories - */ - public function inactive() - { - $lab_specimens = LaboratorySpecimen::onlyTrashed()->orderBy('name','asc')->paginate(50); - - if (count($lab_specimens) < 1) { - flash()->error("There is no inactive specimens"); - return redirect('laboratory_specimen'); - } else { - return view('investigations::laboratory_specimen.inactive', compact('lab_specimens')); - } - } - - /* - * Activate an inactive inpatient bed category - */ - public function activate($id) - { - $lab_specimens = LaboratorySpecimen::withTrashed()->find($id); - - if ($lab_specimens->restore()): - flash("Specimen has been activated.")->success(); - return redirect('/inactive/laboratory_specimen/'); - endif; - } -} diff --git a/docker/statistics/Modules/Investigations/Http/Controllers/RadiologyController.php b/docker/statistics/Modules/Investigations/Http/Controllers/RadiologyController.php deleted file mode 100755 index 12537f64..00000000 --- a/docker/statistics/Modules/Investigations/Http/Controllers/RadiologyController.php +++ /dev/null @@ -1,700 +0,0 @@ -middleware('permission:radiologies-management', ['only' => ['index']]); - $this->middleware('permission:radiologies-create', ['only' => ['create', 'store']]); - $this->middleware('permission:radiologies-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:radiologies-delete', ['only' => ['destroy']]); - $this->middleware('permission:radiologies-usage-listing',['only'=>['radiology_usage_listing','store_radiology_usage']]); - $this->middleware('permission:radiologies-report-usage', ['only'=>['radiology_usages_report']]); - $this->middleware('permission:radiologies-stock-sheet', ['only'=>['radiology_stock_sheet']]); - $this->middleware('permission:requisition-for-radiologies', ['only'=>['requisition_for_radiologies','update_imaging_stock_sheet']]); - } - - public function index() - { - $radiologies = Radiology::orderBy('name', 'asc')->get(); - $chart_of_accounts = ChartOfAccount::orderBy('name', 'asc')->pluck('name', 'id'); - $accounts = ChartOfAccount::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $radiologies= get_all_batch_details($radiologies,['store_stock','lab_stock'],['store_batches','lab_batches'],['total_store_stock','total_lab_stock'],4); - - return view('investigations::radiologies.index', compact('radiologies', 'chart_of_accounts', 'accounts')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - $cost_of_goods_accounts = ChartOfAccount::where(['type' => 7]) - ->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $expense_accounts = ChartOfAccount::where(['type' => 2]) - ->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $payables_accounts = ChartOfAccount::where(['type' => 6]) - ->orWhere(['type' => 9])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $forms = ['' => '- select -'] + GeneralForm::where('item_type',4)->pluck('name', 'id')->toArray(); - - $cost_of_goods_accounts = ['' => '- select -'] + $cost_of_goods_accounts; - $expense_accounts = ['' => '- select -'] + $expense_accounts; - $payables_accounts = ['' => '- select -'] + $payables_accounts; - - return view('investigations::radiologies.create', compact('cost_of_goods_accounts','forms', 'payables_accounts', 'expense_accounts')); - } - //edit all radiologies - public function edit_all(){ - $cost_of_goods_accounts = ChartOfAccount::where(['type' => 7]) - ->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $expense_accounts = ChartOfAccount::where(['type' => 2]) - ->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $payables_accounts = ChartOfAccount::where(['type' => 6]) - ->orWhere(['type' => 9])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $forms = ['' => '- select -'] + GeneralForm::where('item_type',4)->pluck('name', 'id')->toArray(); - - $cost_of_goods_accounts = ['' => '- select -'] + $cost_of_goods_accounts; - $expense_accounts = ['' => '- select -'] + $expense_accounts; - $payables_accounts = ['' => '- select -'] + $payables_accounts; - $radiologies = Radiology::orderBy('name', 'asc')->get(); - return view('investigations::radiologies.edit_all', compact('cost_of_goods_accounts','radiologies','forms', 'payables_accounts', 'expense_accounts')); - } - //update all radiologies - public function update_all(Request $request) { - $validator = Validator::make($request->all(), [ - 'name' => 'required', - 'cost_price' => 'required', - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth::user()->id; - - $id_array = $request->id; - $name_array = $request->name; - $cost_price_array = $request->cost_price; - $payables_account_id_array = $request->payables_account_id; - $expenses_account_id_array = $request->expenses_account_id; - $form_id_array = $request->form_id; - $re_order_level_array = $request->re_order_level; - - for ($x = 0; $x < count($id_array); $x++): - $radiology = Radiology::find($id_array[$x]); - - $radiology->name = $name_array[$x]; - $radiology->cost_price = $cost_price_array[$x]; - $radiology->payables_account_id = $payables_account_id_array[$x]; - $radiology->expenses_account_id = $expenses_account_id_array[$x]; - $radiology->form_id = $form_id_array[$x]; - $radiology->reorder_level = $re_order_level_array[$x]; - $radiology->updated_by = $logged_in_user_id; - - try { - $radiology->save(); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - endfor; - - flash("Radiology has been updated")->success(); - return redirect("/radiology/"); - } - } - //function to add Radiology form - public function create_radiology_form() - { - return view('investigations::radiologies.create_radiology_form'); - } - //functiion to store radiology form - public function store_radiology_form (Request $request) - { - $validator = Validator::make($request->all(), [ - 'name' => 'required', - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $data['name']=$request->name; - $data['type']= 4; - try{ - //create new radiology form - $new_form = GeneralForm::add_new_form((object)$data); - if($new_form){ - flash("Radiology form has been created successfully")->success(); - return redirect('/radiology'); - } - }catch (QueryException $e){ - flash("Something went wrong. Please try again")->error(); - return back()->withInput(); - } - - } - } - //edit form - public function edit_form($id){ - $form = GeneralForm::find($id); - if (!$form) flash()->error("Sundry Form not found");return redirect()->route('radiology_forms.all'); - return view('investigations::radiologies.edit_radiology_form', compact('form')); - } - //update form - public function update_radiology_form(Request $request, $id){ - $validator = Validator::make($request->all(), [ - 'name' => 'required', - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $data['name']=$request->name; - $data['type']= 4; - try{ - //update radiology form - $form = GeneralForm::find($id); - $form->update($data); - flash("Radiology form has been updated successfully")->success(); - return redirect('/radiology_forms'); - }catch (QueryException $e){ - flash("Something went wrong. Please try again")->error(); - return back()->withInput(); - } - - } - } - //delete form - public function delete_form($id){ - try{ - //delete radiology form - $form = GeneralForm::find($id); - $form->delete(); - flash("Radiology form has been deleted successfully")->success(); - return redirect('/radiology_forms'); - }catch (QueryException $e){ - flash("Something went wrong. Please try again")->error(); - return back()->withInput(); - } - } - //show inactive forms - public function inactive_forms(){ - $inactive_forms = GeneralForm::onlyTrashed() - ->where('item_type', 4) - ->orderBy('name', 'asc') - ->get(); - - if (count($inactive_forms) < 1) { - flash()->error("There is no inactive Radiology forms"); - return redirect('radiology_forms'); - } - return view('investigations::radiologies.inactive_radiology_forms', compact('inactive_forms')); - } - // reactivate form - public function activate_form($id) { - $lab_form = GeneralForm::withTrashed()->find($id); - - if($lab_form->restore()){ - flash("Radiology Form has been activated.")->success(); - return redirect('/radiology_forms'); - } - } - - //get all radiology forms - public function get_all_radiology_form(){ - $all_forms = GeneralForm::get_all_forms_type(4); - return view('investigations::radiologies.all_radiology_form',compact('all_forms')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - request()->validate([ - 'name' => 'required', - 'cost_price' => 'required' - ]); - - $radiology = new Radiology(); - $logged_in_user_id = Auth::user()->id; - - $radiology->name = $request->name; - $radiology->cost_price = $request->cost_price; - $radiology->expenses_account_id = $request->expenses_account_id; - $radiology->payables_account_id = $request->payables_account_id; - $radiology->form_id = $request->form_id; - $radiology->reorder_level = $request->re_order_level; - $radiology->created_by = $logged_in_user_id; - $radiology->updated_by = $logged_in_user_id; - - try { - $radiology->save(); - flash("Radiology has been saved")->success(); - return redirect("/radiology/"); - } catch (QueryException $e) { - flash("Something went wrong. Please try again")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) - { - $radiology = Radiology::where(['id' => $id])->first(); - - $payables_accounts = ChartOfAccount::where(['type' => 6])->orWhere(['type' => 9])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $expenses_accounts = ChartOfAccount::where(['type' => 2])->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - $expenses_accounts = ['' => '- select -'] + $expenses_accounts; - $payables_accounts = ['' => '- select -'] + $payables_accounts; - - $forms = ['' => '- select -'] + GeneralForm::where('item_type',4)->pluck('name', 'id')->toArray(); - - if (!$radiology) { - flash()->error("Radiology not found"); - return redirect('/radiology/'); - } else { - return view('investigations::radiologies.edit', compact('radiology', 'forms','payables_accounts', 'expenses_accounts')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - request()->validate([ - 'name' => 'required', - 'cost_price' => 'required', - ]); - //validation passed - $radiology = Radiology::find($id); - $logged_in_user_id = Auth::user()->id; - - $radiology->name = $request->name; - $radiology->cost_price = $request->cost_price; - $radiology->expenses_account_id = $request->expenses_account_id; - $radiology->payables_account_id= $request->payables_account_id; - $radiology->form_id = $request->form_id; - $radiology->reorder_level = $request->re_order_level; - $radiology->updated_by = $logged_in_user_id; - try { - $radiology->save(); - flash("Radiology has been updated")->success(); - return redirect("/radiology/"); - - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - $radiology = Radiology::find($id); - - if ($radiology->delete()) { - flash("The item has been deleted.")->success(); - return redirect('/radiology/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Contracts\View\Factory|\Illuminate\Foundation\Application|\Illuminate\View\View - */ - public function inactive() { - $radiologies = Radiology::onlyTrashed()->get(); - $accounts = ChartOfAccount::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - - - if (count($radiologies) < 1) { - flash()->error("There is no inactive Radiology"); - return redirect('/radiology/'); - } else { - return view('investigations::radiologies.inactive', compact('radiologies', 'accounts')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Foundation\Application|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector - */ - public function activate($id) { - $radiology = Radiology::withTrashed()->find($id); - - if($radiology->restore()){ - flash("A Radiology has been activated.")->success(); - return redirect('/radiology/inactive'); - } - } - - public function radiology_usage_listing(){ - $radiologies = DB::table('radiologies')->orderBy('name', 'asc')->where('deleted_at', '=',null)->get(); - $hospital_information = HospitalInformation::first(); - return view('investigations::radiologies.radiology_usage', compact('radiologies', 'hospital_information')); - } - - public function store_radiology_usage(Request $request){ - - $lab_counter = 0; - $radiologies_item_array = $request->labItem; - $available_qty_array = $request->availableQty; - $available_qty_unit_cost_array = $request->unitCost; - $usage_qty_array = $request->requiredQty; - $usage_qty_cost_array = $request->totalCost; - - if($request->dates == 'today'){ - $start = Carbon::now()->startOfDay()->toDateTimeString(); - $end = Carbon::now()->endOfDay()->toDateTimeString(); - }else{ - $start = Carbon::parse($request->start_date)->endOfDay()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - } - - for($i = 0; $i < count($radiologies_item_array); $i++){ - - if($radiologies_item_array[$i]){ - if(track_items_using_batches()){ - $datat=get_lab_batches_to_use_based_on_needed_quantity($radiologies_item_array[$i],4,$usage_qty_array[$i],'lab_stock'); - $cost_value=0; - foreach ($datat as $key=> $val){ - $unit_cost_value =(int) get_name($key, 'id', 'cost_price', 'item_batch_watcher'); - //caluclate cost value - $cost_value += $unit_cost_value * $val; - reduce_batch_item_stock(4,$radiologies_item_array[$i], $key, 'radiologies', 'lab_stock', $val, 'radiology_usages','Imaging', null, null); - } - $usage_qty_cost_array[$i]=$cost_value; - } - $remaining_qty = record_radiology_usage_listing($radiologies_item_array[$i],$available_qty_unit_cost_array[$i], $available_qty_array[$i],$usage_qty_array[$i], $usage_qty_cost_array[$i], - $start,$end); - if(!($remaining_qty < 0)){ - $radiology = Radiology::find($radiologies_item_array[$i]); - $radiology->pharmacy_stock = ($radiology->pharmacy_stock - (int)$usage_qty_array[$i]); - $radiology->save(); - }else{ - flash('Item\'s '.get_name($radiologies_item_array[$i], 'id', 'name', 'labs').' requested use quantity exceeds what is available.'); - } - } - } - flash('Radiologies Used from '.streamline_date($start).' to '.streamline_date($end).' have saved successfully')->success(); - return redirect('/radiology_listing'); - } - - public function get_radiology_quantity(Request $request){ - if (track_items_using_batches()){ - // that is if batches is enabled - $lab_stock =track_batch_stock(4,$request->id,'lab_stock'); - $total_stock = 0; - foreach ($lab_stock as $lab) { - $total_stock += $lab->lab_stock; - } - $data = [ - 'pharmacy_stock' => $total_stock, - 'cost_price' => $lab_stock[0]->cost_price??0, - ]; - return $data; - } - return Radiology::where('id', $request->id)->first(); - } - - public function requisition_for_radiologies(Request $request) - { - $results = Radiology::orderBy('name','asc')->get(); - $names_array = Radiology::orderBy('name')->distinct()->pluck('name'); - $labs = Radiology::orderBy('name')->pluck('name', 'id'); - - $date_filter = []; - if(isset($request->start_date) && isset($request->end_date)){ - - if (isset($request->quotation_type)) { - $item_type = $request->quotation_type; - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - - array_push($date_filter, ['created_at', '>', $start_date]); - array_push($date_filter, ['created_at', '<', $end_date]); - } - } else { - $date_from = Carbon::today()->subDays(30)->format('Y-m-d'); - $date_to = Carbon::today()->addDays(1)->format('Y-m-d'); - array_push($date_filter, ['created_at', '>', $date_from]); - array_push($date_filter, ['created_at', '<', $date_to]); - } - $previous_requisitions_results = Requisition::where('quotation_type_id', '=', 4)->where($date_filter)->orderBy('created_at','desc')->get(); - $results = get_all_batch_details($results,['store_stock','lab_stock'],['store_batches','lab_batches'],['total_store_stock','total_lab_stock'],4); - return view('investigations::radiologies.requisition_for_radiologies', compact('results', 'names_array', 'labs', 'previous_requisitions_results')); - } - public function previous_requisition_for_radiologies(Request $request){ - $search_by = $request->search_by; - $reg_date = $request->reg_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - $date_filter = []; - $search_string = ""; - if ($search_by == 0) { - // last 24 hours - $last_day = Carbon::now()->subDay(); - array_push($date_filter, ['created_at', '>=', $last_day]); - $search_string = "

    Showing results of " . streamline_date($last_day) . "

    "; - } elseif ($search_by == 1) { - // custom date - if (is_null($request->reg_date)) { - flash('Please select a date')->error(); - return redirect()->back(); - } - $selected_date_filter = Carbon::createFromFormat('d/m/Y', $request->reg_date)->toDateString(); - array_push($date_filter, ['created_at', '=',$selected_date_filter]); - $search_string = "

    Showing results of " . streamline_date($selected_date_filter) . "

    "; - } elseif ($search_by == 2) { - // custom date range - if (is_null($start_date) || is_null($end_date)) { - flash('Please select a date')->error(); - return redirect()->back(); - } - $start_date_search = Carbon::createFromFormat('d/m/Y', $start_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::createFromFormat('d/m/Y', $end_date)->endOfDay()->toDateTimeString(); - - array_push($date_filter, ['created_at', '>=', $start_date_search]); - array_push($date_filter, ['created_at', '<=', $end_date_search]); - - $search_string = "

    Showing between " . streamline_date($start_date_search) . " and " . streamline_date($end_date_search) . "

    "; - } else { - // last 24 hours - $last_day = Carbon::now()->subDay(); - array_push($date_filter, ['created_at', '>=', $last_day]); - $search_string = "

    Showing results of " . streamline_date($last_day) . "

    "; - } - $previous_requisitions_results = Requisition::where('quotation_type_id', '=', 4)->where($date_filter)->orderBy('created_at','desc')->get(); - return view('investigations::radiologies.prev_requisition_for_radiologies', compact('previous_requisitions_results','search_string')); - - } - - public function store_radiology_requisitions(Request $request) - { - $drug_id_array = $request->drug_id; - $quantity_array = $request->quantity; - $item_type = $request->item_type; - $user_id = Auth::id(); - - /* return back if no quantity has been filled */ - if (array_sum($quantity_array) < 1) { - flash('Please insert some values!')->error(); - return redirect()->back()->withInput(); - } - - if (isset($request->complete_request)) { - $filtered_drugs_array = []; - $filtered_quantities_array = []; - $associative_requested_drugs_array = []; - for ($i=0; $i < count($drug_id_array) ; $i++) { - if ($quantity_array[$i] != "") { - $associative_requested_drugs_array[$drug_id_array[$i]] = $quantity_array[$i]; - $filtered_drugs_array[] = $drug_id_array[$i]; - $filtered_quantities_array[] = $quantity_array[$i]; - } - } - $new_requisition = new Requisition; - $new_requisition->quotation_type_id = $item_type; - $new_requisition->drug_id = implode(',', $filtered_drugs_array); - $new_requisition->quantity_requested = implode(',', $filtered_quantities_array); - $new_requisition->created_by = $user_id; - $new_requisition->requisition_origin= 3; // 1-pharmacy, 2-lab, 3-imaging - $new_requisition->save(); - - flash('Requisition number ' . $new_requisition->id . ' made successfully')->success(); - //redirect to requisition - return redirect('/print_requisition_receipt/' . $new_requisition->id); - } - } - - /* filter out items to requisition */ - public function requisition_for_radiology_search(Request $request) - { - $item_type = $request->item_type; - $item_ids_array = $request->items_ids; - $results = null; - $filters = []; - $items = null; - - $results = Radiology::whereIn('id', $item_ids_array)->orderBy('name','asc')->get(); - $labs = Radiology::orderBy('name')->pluck('name', 'id'); - - $date_filter = []; - if(isset($request->start_date) && isset($request->end_date)){ - - if (isset($request->quotation_type)) { - $item_type = $request->quotation_type; - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - - array_push($date_filter, ['created_at', '>', $start_date]); - array_push($date_filter, ['created_at', '<', $end_date]); - } - } else { - $date_from = Carbon::today()->subDays(30)->format('Y-m-d'); - $date_to = Carbon::today()->addDays(1)->format('Y-m-d'); - array_push($date_filter, ['created_at', '>', $date_from]); - array_push($date_filter, ['created_at', '<', $date_to]); - } - $previous_requisitions_results = Requisition::where('quotation_type_id', '=', 5)->where($date_filter)->orderBy('created_at','desc')->get(); - $results = get_all_batch_details($results,['store_stock','lab_stock'],['store_batches','lab_batches'],['total_store_stock','total_lab_stock'],4); - return view('investigations::radiologies.requisition_for_radiologies',compact('items','item_type','labs','results','previous_requisitions_results')); - } - - public function radiology_usages_report(Request $request) - { - $radiologies = DB::table('radiologies')->orderBy('name', 'asc')->where('deleted_at', '=',null)->get(); - $hospital_information = HospitalInformation::first(); - - $radiologies_options = DB::table('radiologies')->orderBy('name', 'asc')->pluck('name', 'id')->prepend('- All Radiologies - ', 'all_radiologies'); - - $search_by = $request->search_by; - $reg_date = $request->reg_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - $filters = []; - $search_string = ""; - - if ($search_by == 0) { - // last 24 hours - $last_day = Carbon::now()->subDay(); - array_push($filters, ['start_date', '>=', $last_day]); - if ($request->radiology_id != 'all_radiologies') { - array_push($filters, ['radiology_id', '=', $request->radiology_id]); - } - $search_string = "

    Showing results of ".streamline_date($last_day)."

    "; - } elseif ($search_by == 1) { - // custom date - if (is_null($request->reg_date)) { - flash('Please select a date')->error(); - return redirect()->back(); - } - $selected_date_filter = Carbon::createFromFormat('d/m/Y', $request->reg_date)->toDateString(); - array_push($filters, ['start_date', $selected_date_filter]); - if ($request->radiology_id != 'all_radiologies') { - array_push($filters, ['radiology_id', '=', $request->radiology_id]); - } - $search_string = "

    Showing results of ".streamline_date($selected_date_filter)."

    "; - } elseif ($search_by == 2) { - // custom date range - if (is_null($start_date) || is_null($end_date)) { - flash('Please select a date')->error(); - return redirect()->back(); - } - $start_date_search = Carbon::createFromFormat('d/m/Y', $start_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::createFromFormat('d/m/Y', $end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['start_date', '>=', $start_date_search]); - array_push($filters, ['end_date', '<=', $end_date_search]); - if ($request->radiology_id != 'all_radiologies') { - array_push($filters, ['radiology_id', '=', $request->radiology_id]); - } - $search_string = "

    Showing between ".streamline_date($start_date_search). " and ".streamline_date($end_date_search)."

    "; - } - - $radiologies_usages = RadiologyUsage::where($filters)->orderBy('id','desc')->limit(500)->get(); - - return view('investigations::radiologies.radiology_usages_report', compact( 'hospital_information', 'radiologies_usages', 'radiologies_options', 'search_string')); - } - //radiology stock sheet - public function radiology_stock_sheet() - { - $radiologies = DB::table('radiologies')->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - // getting the radiology stock batches - $radiologies= calculate_stock_value($radiologies,4,'lab_stock'); - if (empty($radiologies)) { - flash()->error("There is out of stock of labs"); - return redirect('/radiology/'); - } else { - return view('investigations::radiologies.radiology_stock_sheet', compact('radiologies')); - } - } - public function update_imaging_stock_sheet(Request $request){ - - $radio_ids_array = $request->lab_id; - $quantities_array = $request->quantity; - $expiry_dates_array = $request->expiry_date; - $batch_numbers_array = $request->batch_number; - $batch_unit_cost = $request->batch_unit_cost; - $batch_quantity_balances_array = $request->batch_quantity_balance; - $batch_db_record_ids_array = $request->batch_drug_id; - $batch_expiry_dates_array = $request->expiry_date; - $batch_drug_ids_array = $request->batch_item_id; - //update batch tracking tables with reconciliations - for ($i=0; $i < count($batch_numbers_array) ; $i++) { - if (!is_null($batch_numbers_array[$i]) && !is_null($batch_quantity_balances_array[$i]) ){ - reconcile_batches(4, $batch_drug_ids_array[$i], $batch_numbers_array[$i], $batch_quantity_balances_array[$i], $batch_expiry_dates_array[$i], "lab", $batch_unit_cost[$i], $batch_db_record_ids_array[$i]??0, null); - } - } - for ($i = 0; $i < count($radio_ids_array); $i++) { - $lab = Radiology::withTrashed()->find($radio_ids_array[$i]); - $lab->pharmacy_stock = $quantities_array[$i]; - // $lab->expiry_date = $expiry_dates_array[$i]; - $lab->save(); - } - - flash('stock sheet has been updated')->success(); - return redirect('radiology_stock_sheet'); - } -} diff --git a/docker/statistics/Modules/Investigations/Providers/InvestigationsServiceProvider.php b/docker/statistics/Modules/Investigations/Providers/InvestigationsServiceProvider.php deleted file mode 100644 index d610725d..00000000 --- a/docker/statistics/Modules/Investigations/Providers/InvestigationsServiceProvider.php +++ /dev/null @@ -1,113 +0,0 @@ -registerTranslations(); - $this->registerConfig(); - $this->registerViews(); - $this->loadMigrationsFrom(module_path($this->moduleName, 'Database/Migrations')); - } - - /** - * Register the service provider. - * - * @return void - */ - public function register() - { - $this->app->register(RouteServiceProvider::class); - } - - /** - * Register config. - * - * @return void - */ - protected function registerConfig() - { - $this->publishes([ - module_path($this->moduleName, 'Config/config.php') => config_path($this->moduleNameLower . '.php'), - ], 'config'); - $this->mergeConfigFrom( - module_path($this->moduleName, 'Config/config.php'), $this->moduleNameLower - ); - } - - /** - * Register views. - * - * @return void - */ - public function registerViews() - { - $viewPath = resource_path('views/modules/' . $this->moduleNameLower); - - $sourcePath = module_path($this->moduleName, 'Resources/views'); - - $this->publishes([ - $sourcePath => $viewPath - ], ['views', $this->moduleNameLower . '-module-views']); - - $this->loadViewsFrom(array_merge($this->getPublishableViewPaths(), [$sourcePath]), $this->moduleNameLower); - } - - /** - * Register translations. - * - * @return void - */ - public function registerTranslations() - { - $langPath = resource_path('lang/modules/' . $this->moduleNameLower); - - if (is_dir($langPath)) { - $this->loadTranslationsFrom($langPath, $this->moduleNameLower); - $this->loadJsonTranslationsFrom($langPath); - } else { - $this->loadTranslationsFrom(module_path($this->moduleName, 'Resources/lang'), $this->moduleNameLower); - $this->loadJsonTranslationsFrom(module_path($this->moduleName, 'Resources/lang')); - } - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides() - { - return []; - } - - private function getPublishableViewPaths(): array - { - $paths = []; - foreach (\Config::get('view.paths') as $path) { - if (is_dir($path . '/modules/' . $this->moduleNameLower)) { - $paths[] = $path . '/modules/' . $this->moduleNameLower; - } - } - return $paths; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Providers/RouteServiceProvider.php b/docker/statistics/Modules/Investigations/Providers/RouteServiceProvider.php deleted file mode 100755 index 10add8b7..00000000 --- a/docker/statistics/Modules/Investigations/Providers/RouteServiceProvider.php +++ /dev/null @@ -1,68 +0,0 @@ -mapApiRoutes(); - $this->mapWebRoutes(); - } - - /** - * Define the "web" routes for the application. - * - * These routes all receive session state, CSRF protection, etc. - * - * @return void - */ - protected function mapWebRoutes() - { - Route::middleware('web') - ->namespace($this->namespace) - ->group(module_path('Investigations', '/Routes/web.php')); - } - - /** - * Define the "api" routes for the application. - * - * These routes are typically stateless. - * - * @return void - */ - protected function mapApiRoutes() - { - Route::prefix('api') - ->middleware('api') - ->namespace($this->namespace) - ->group(module_path('Investigations', '/Routes/api.php')); - } -} diff --git a/docker/statistics/Modules/Investigations/Resources/views/dentals/create.blade.php b/docker/statistics/Modules/Investigations/Resources/views/dentals/create.blade.php deleted file mode 100755 index f2e0c4e9..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/dentals/create.blade.php +++ /dev/null @@ -1,70 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('dentals.add_dental') }}

    -
    - -
    - -@include('investigations::dentals.menu') - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'dentals.store', 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('dentals.dental')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    - {{ Form::label('cost_price','Item Cost Price') }} - {{ Form::text('cost_price','',['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    -
    - {{ Form::label('payables_account_id', 'Payables Accounts') }} - {{ Form::select('payables_account_id', $payables_accounts, null, ['class' => 'form-control', 'required']) }} -
    -
    -
    -
    -
    - {{ Form::label('expenses_account_id', 'Expenses Accounts') }} - {{ Form::select('expenses_account_id', $expense_accounts, null, ['class' => 'form-control', 'required']) }} -
    -
    -
    -
    - - {{ Form::button(__('dentals.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::button(__('dentals.cancel'),['type'=>'reset','class'=>'btn btn-default btn-rounded waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/dentals/dental_requisition.blade.php b/docker/statistics/Modules/Investigations/Resources/views/dentals/dental_requisition.blade.php deleted file mode 100644 index 1f9070ca..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/dentals/dental_requisition.blade.php +++ /dev/null @@ -1,222 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('dentals.dental_requisitions') }}

    -
    -
    - -
    -
    - -@include('investigations::dentals.menu') - -@include('flash::message') - -
    -
    -
    -
    -
    -
    {{ __('dentals.dental_requisitions') }}
    -
    - {{ Form::open(['route' => 'dentals.dentals_requisition_search', 'method' => 'ANY', 'role' => 'search']) }} -
    -
    -
    - - {{ Form::select('items_ids[]',$labs,'',['id'=>'labs_ids', 'multiple'=>true, 'class' => 'form-control col-sm-8 labs_ids']) }} -
    -
    - -
    - -
    -
    - - @if(isset($criteria) && isset($resultCount)) -

    - {{ __('labs.search_criteria') }} : {{ $criteria }}    {{ __('labs.total_results') }} : {{ $resultCount }}    {{ __('labs.clear_search') }} -

    - @endif - {{ Form::close() }} - - {{ Form::open(['method' => 'post', 'route'=>'dentals.store_dental_requisitions'])}} - -
    - - - - - - - - - - @if(count($results) > 0) - @php $count = 0; @endphp - @foreach($results as $result) - @php $count++; @endphp - - - - - - @endforeach - @else - - @endif - -
    #{{ __('labs.name') }}{{ __('labs.quantity_requested') }}
    {{ $count }} - {{ $result->name }} - - - -
    {{ __('labs.search_records') }}
    -
    - @if(count($results) > 0) - {{ Form::button(__('labs.complete_request'),['type'=>'submit','name'=>'complete_request','value'=>'1','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - - {{ Form::close() }} - @endif -
    -
    -
    -
    -
    - -
    -
    -
    {{ __('dentals.previous_dental_requisitions') }}
    -
    -
    - - - - - - - - - - - - @if(count($previous_requisitions_results) > 0) - @foreach($previous_requisitions_results as $result) - - - - - - - - @endforeach - @else - - @endif - - - - - - - - - - - -
    {{ __('labs.requisition') }} #{{ __('labs.quantity') }}{{ __('labs.date_requested') }}{{ __('labs.status') }}
    # {{ sprintf('%04u', $result->id) }} - drug_id); - ?> - {{ count($drug_id_explode) }} {{ __('labs.items') }} - - {{ streamline_date($result->created_at) }} - - @if($result->issue_status == 1) - - @else - - @endif - -
    - {{ csrf_field() }} - - - -
    -
    {{ __('labs.search_records') }}
    {{ __('labs.requisition') }} #{{ __('labs.quantity') }}{{ __('labs.date_requested') }}{{ __('labs.status') }}
    -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/dentals/dental_usage.blade.php b/docker/statistics/Modules/Investigations/Resources/views/dentals/dental_usage.blade.php deleted file mode 100644 index f3d6cf05..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/dentals/dental_usage.blade.php +++ /dev/null @@ -1,475 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('dentals.dental_usage') }}

    -
    -
    - -
    -
    - - @include('investigations::dentals.menu') - - @include('flash::message') - -
    -
    -
    -
    -
    -
    {{ __('dentals.previous_dentals_usage') }}
    -
    - - - - - - - - - - - - - @if (!empty($dental_usages)) - @php $counter = 1; @endphp - @foreach ($dental_usages as $result) - - - - - - - - - @php $counter++; @endphp - @endforeach - @else - - @endif - - - - - - - - - - - - -
    #{{ __('dentals.name') }}{{ __('labs.quantity') }}{{ __('labs.cost') }}{{ __('labs.date') }}{{ __('labs.recorded_by') }}
    - {{ $counter }}. - - {{ get_name($result->dental_id, 'id', 'name', 'dentals') }} - - {{ $result->usage_quantity }} - - {{ ugandan_shillings($result->usage_quantity_cost) }} - - {{ streamline_date($result->created_at) }} - - {{ get_full_name($result->created_by, 'id', 'first_name', 'last_name', 'users') }} -
    Please search for records
    #{{ __('dentals.name') }}{{ __('labs.quantity') }}{{ __('labs.cost') }}{{ __('labs.date') }}{{ __('labs.recorded_by') }}
    -
    -
    -
    -
    - @include('flash::message') -
    -
    - {{ Form::open(['route' => 'dentals.store_dental_usage', 'data-toggle' => 'validator', 'method' => 'POST']) }} -
    -
    -
    - - @php $hospital_information = \Streamline\Models\HospitalInformation::first(); @endphp - Home
    -
    -
    -

     {{ $hospital_information->name }}

    -

    {{ $hospital_information->phone_number }}, - {{ $hospital_information->email }}, -
    - {{ get_name($hospital_information->sub_county, 'id', 'name', 'subcounties') }}, - {{ get_name($hospital_information->district, 'id', 'name', 'districts') }}, -
    {{ $hospital_information->country }}. -

    -
    -
    -
    -
    -

    {{ __('labs.date') }} : - {{ streamline_date_time(\Carbon\Carbon::now()->toDateTimeString()) }}

    -
    - -
    - {{ Form::label('dates', __('labs.enter_dates')) }} - -
    - - - - -
    -
    -
    -
    - -
    -
    -

    {{ __('dentals.dental_usage') }}

    -
    -
    -
    - - @php - $options = "'; - foreach ($dentals as $item) { - $options .= ""; - } - @endphp - - -
    -
    -
    -
    -
    - -
    - -
    -
    -
    - - @php - $options = "'; - foreach ($dentals as $item) { - $options .= ""; - } - @endphp - -
    -
    - -
    - -
    -
    -
    - -
    -
    - - -
    -
    - -
    -
    - - -
    -
    - -
    -
    - - -
    -
    - - - {{-- --}} -
    -
    - -
    -
    - -
    -
    -
    - -
    -
    - {{ Form::close() }} -
    -
    -
    -
    -
    - -
    -
    -
    {{ __('dentals.dental_stock') }}
    -
    - - - - - - - - - - @foreach ($dentals as $item) - - - - - - @endforeach - - - - - - - - -
    {{ __('dentals.name') }}{{ __('labs.store_stock') }}{{ __('dentals.dental_stock') }}
    {{ $item->name }}{{ $item->store_stock }}{{ $item->pharmacy_stock }}
    {{ __('dentals.name') }}{{ __('labs.store_stock') }}{{ __('dentals.dental_stock') }}
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/dentals/dental_usage_report.blade.php b/docker/statistics/Modules/Investigations/Resources/views/dentals/dental_usage_report.blade.php deleted file mode 100644 index 79281034..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/dentals/dental_usage_report.blade.php +++ /dev/null @@ -1,237 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('dentals.dental_usages_report') }}

    -
    -
    - -
    -
    - - @include('investigations::dentals.menu') - - @include('flash::message') - -
    -
    -
    - {{ Form::open(['route' => 'dentals.usage_report','data-toggle'=>'validator']) }} -
    - {{ Form::label('search_by', __('hmis_reports.date')) }} - {{ Form::select('search_by', ['0'=>__('hmis_reports.last_24_hours'),'1'=>__('hmis_reports.custom_date'),'2'=>__('hmis_reports.custom_range')], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - -
    - {{ Form::label('dentals',__('dentals.dental')) }} - {{ Form::select('dental_id', $dental_options,'',['class' => 'form-control', 'id' => 'dental_id']) }} -
    -

    - {{ Form::submit(__('hmis_reports.search'),['name' => 'filterBtn','class' => 'btn btn-success']) }} - {{ Form::close() }} -
    -
    -
    - -
    -
    -
    -
    -
    -
    {{ __('dentals.dental_usages_report') }} {!! $search_string ?? $search_string !!}
    -
    - - - - - - - - - - - - - @if(count($dental_usages)) - @php $counter = 1; @endphp - @foreach($dental_usages as $result) - - - - - - - - - @php $counter++; @endphp - @endforeach - @endif - - - - - - - - - - - - -
    #{{ __('dentals.name') }}{{ __('labs.quantity') }}{{ __('labs.cost') }}{{ __('labs.date') }}{{ __('labs.recorded_by') }}
    - {{ $counter }}. - - {{ get_name($result->dental_id, 'id', 'name', 'dentals') }} - - {{ $result->usage_quantity }} - - {{ ugandan_shillings($result->usage_quantity_cost) }} - - {{ streamline_date($result->created_at) }} - - {{ get_full_name($result->created_by, 'id', 'first_name', 'last_name', 'users') }} -
    #{{ __('dentals.name') }}{{ __('labs.quantity') }}{{ __('labs.cost') }}{{ __('labs.date') }}{{ __('labs.recorded_by') }}
    -
    -
    -
    -
    -
    - -
    -
    -
    {{ __('dentals.dental_stock') }}
    -
    - - - - - - - - - - @foreach($dentals as $item) - - - - - - @endforeach - - - - - - - - -
    {{ __('dentals.name') }}{{ __('labs.store_stock') }}{{ __('dentals.dental_stock') }}
    {{ $item->name }}{{ $item->store_stock }}{{ $item->pharmacy_stock }}
    {{ __('dentals.name') }}{{ __('labs.store_stock') }}{{ __('dentals.dental_stock') }}
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/dentals/edit.blade.php b/docker/statistics/Modules/Investigations/Resources/views/dentals/edit.blade.php deleted file mode 100755 index e5f38486..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/dentals/edit.blade.php +++ /dev/null @@ -1,65 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('dentals.edit_dental') }}

    -
    - -
    - -@include('investigations::dentals.menu') - -
    -
    - - @include('flash::message') -
    - {{ Form::model($dental, ['method' => 'PUT', 'route' => ['dentals.update',$dental] , 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('dentals.dental')) }} - {{ Form::text('name', $dental->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    - -
    -
    -
    - {{ Form::label('payables_account_id', 'Payables Accounts') }} - {{ Form::select('payables_account_id', $payables_accounts, $dental->payables_account_id, ['class' => 'form-control', 'required']) }} -
    -
    -
    -
    -
    - {{ Form::label('expenses_account_id', 'Expenses Accounts') }} - {{ Form::select('expenses_account_id', $expense_accounts, $dental->expenses_account_id, ['class' => 'form-control', 'required']) }} -
    -
    -
    -
    - - {{ Form::button(__('dentals.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::button(__('dentals.cancel'),['type'=>'reset','class'=>'btn btn-default btn-rounded waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/dentals/edit/all.blade.php b/docker/statistics/Modules/Investigations/Resources/views/dentals/edit/all.blade.php deleted file mode 100755 index f99006f1..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/dentals/edit/all.blade.php +++ /dev/null @@ -1,98 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('dentals.edit_all_dentals') }}

    -
    - -
    - -@include('investigations::dentals.menu') - -
    -
    - - @include('flash::message') -
    - {{ Form::model($dentals, ['method' => 'ANY', 'route' => ['dentals.update_all'], 'data-toggle' => 'validator']) }} - -
    -
    -
    - - - - - - - - - - - - - - - @foreach($dentals as $dental) - - - - - @endforeach - -
    {{ __('dentals.dental') }}
    {{ __('dentals.dental') }}
    -

    {{ $dental->name }}

    - {{ Form::text('name[]', $dental->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    - - {{ Form::button(__('dentals.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('dentals.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    - -@include('investigations::dentals.menu') -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/dentals/inactive.blade.php b/docker/statistics/Modules/Investigations/Resources/views/dentals/inactive.blade.php deleted file mode 100755 index 3653047b..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/dentals/inactive.blade.php +++ /dev/null @@ -1,84 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('dentals.activate_dentals') }}

    -
    - -
    - -@include('investigations::dentals.menu') - -
    -
    -
    - -

    {{ __('dentals.export_data_to_copy_csv_pdf_print') }}

    -
    - - - - - - - - - - - - - - - @foreach($dentals as $dental) - - - - - @endforeach - -
    {{ __('dentals.dental') }}
    {{ __('dentals.dental') }}
    {{ $dental->name }} - {{ Form::model($dental->id ,['method' => 'POST', 'route' => ['dentals.activate', $dental->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/dentals/index.blade.php b/docker/statistics/Modules/Investigations/Resources/views/dentals/index.blade.php deleted file mode 100755 index 4baf4fdf..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/dentals/index.blade.php +++ /dev/null @@ -1,132 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('dentals.dentals') }}

    -
    - -
    - -@include('investigations::dentals.menu') -@include('flash::message') - -
    -
    -
    - -
    - - - - - - - - - - - - @foreach($dentals as $dental) - - - - - - - - @endforeach - -
    {{ __('dentals.dental') }}{{ __('dentals.expense_account') }}{{ __('dentals.payables_account') }}
    {{ $dental->name }}{{ get_name($dental->expenses_account_id, "id", "name", "chart_of_accounts") }}{{ get_name($dental->payables_account_id, "id", "name", "chart_of_accounts") }} - {{ __('dentals.edit') }} - - {{ Form::model($dental->id ,['method' => 'DELETE', 'route' => ['dentals.destroy', $dental->id]]) }} - - {{ Form::close() }} -
    -
    - - {{ $dentals->links() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/dentals/menu.blade.php b/docker/statistics/Modules/Investigations/Resources/views/dentals/menu.blade.php deleted file mode 100755 index cd4a3c03..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/dentals/menu.blade.php +++ /dev/null @@ -1,25 +0,0 @@ -
    -
    - @if (Route::current()->getName() != 'dentals.create') - {{ __('dentals.add_new_dental') }} - @endif - @if (Route::current()->getName() != 'dentals.edit.all') - {{ __('dentals.edit_all_dentals') }} - @endif - @if (Route::current()->getName() != 'dentals.index') - {{ __('dentals.view_dentals') }} - @endif - @if(Auth::user()->can('dental-usage-report') && Route::current()->getName() != 'dentals.usage_report') - {{ __('dentals.dental_usage_report') }} - @endif - @if( Auth::user()->can('dental-requisitions') && Route::current()->getName() != 'dentals.requisitions') - {{ __('dentals.dental_requisitions') }} - @endif - @if( Auth::user()->can('dental-usage-listing') && Route::current()->getName() != 'dentals.usage_listing') - {{ __('dentals.dental_usage_listing') }} - @endif - @if (Route::current()->getName() != 'dentals.inactive') - {{ __('dentals.view_inactive_dentals') }} - @endif -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigation_categories/create.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigation_categories/create.blade.php deleted file mode 100755 index 1a38c540..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigation_categories/create.blade.php +++ /dev/null @@ -1,58 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('investigation_categories.add_investigation_category') }}

    -
    - -
    - -
    -
    - @include('investigations::investigation_categories.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'investigation_categories.store', 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('investigation_categories.investigation_category_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    - {{ Form::label('super_category_id', __('investigation_categories.super_category_name')) }} - {{ Form::select('super_category_id', $super_categories, '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    - - {{ Form::button(__('investigation_categories.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('investigation_categories.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigation_categories/edit.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigation_categories/edit.blade.php deleted file mode 100755 index 256b1b3b..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigation_categories/edit.blade.php +++ /dev/null @@ -1,58 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('investigation_categories.edit_investigation_category') }}

    -
    - -
    - -
    -
    - @include('investigations::investigation_categories.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($investigation_category, ['method' => 'PUT', 'route' => ['investigation_categories.update',$investigation_category], 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('investigation_categories.investigation_category_name')) }} - {{ Form::text('name', $investigation_category->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    - {{ Form::label('super_category_id', __('investigation_categories.super_category_name')) }} - {{ Form::select('super_category_id', $super_categories, $investigation_category->super_category_id, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    - - {{ Form::button(__('investigation_categories.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('investigation_categories.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigation_categories/inactive.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigation_categories/inactive.blade.php deleted file mode 100755 index 0273af59..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigation_categories/inactive.blade.php +++ /dev/null @@ -1,89 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('investigation_categories.activate_investigation_categories') }}

    -
    - -
    - -
    -
    - @include('investigations::investigation_categories.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    -
    - - - - - - - - - - - - - - - @foreach($investigation_categories as $investigation_category) - - - - - @endforeach - -
    {{ __('investigation_categories.investigation_category_name') }}
    {{ __('investigation_categories.investigation_category_name') }}
    {{ $investigation_category->name }} - {{ Form::model($investigation_category->id ,['method' => 'POST', 'route' => ['investigation_categories.activate', $investigation_category->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigation_categories/index.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigation_categories/index.blade.php deleted file mode 100755 index 5511abb6..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigation_categories/index.blade.php +++ /dev/null @@ -1,97 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('investigation_categories.investigation_categories') }}

    -
    - -
    - -
    -
    - @include('investigations::investigation_categories.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - @foreach($investigation_categories as $investigation_category) - - - - - - - @endforeach - -
    {{ __('investigation_categories.investigation_category_name') }}{{ __('investigation_categories.super_category_name') }}
    {{ __('investigation_categories.investigation_category_name') }}{{ __('investigation_categories.super_category_name') }}
    {{ $investigation_category->name }}{{ $super_categories[$investigation_category->super_category_id] ?? '' }} - {{ __('investigation_categories.edit') }} - - {{ Form::model($investigation_category->id ,['method' => 'DELETE', 'route' => ['investigation_categories.destroy', $investigation_category->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigation_categories/menu.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigation_categories/menu.blade.php deleted file mode 100755 index f3db6984..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigation_categories/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    - -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigation_result_templates/create.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigation_result_templates/create.blade.php deleted file mode 100755 index 0091968a..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigation_result_templates/create.blade.php +++ /dev/null @@ -1,120 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('investigation_result_templates.new_result_template') }}

    -
    - -
    - -
    -
    - @include('investigations::investigation_result_templates.menu') -
    -
    - -@include('flash::message') - -
    - -
    - {{ Form::open(['route' => 'result_templates.store','data-toggle'=>'validator']) }} - -
    - {{ Form::label('investigation_id', __('investigation_result_templates.investigation')) }} - {{ Form::select('investigation_id', $investigations, '', ['class' => 'form-control select', 'onchange' => 'check_for_specialsed_variables(this.value)', 'id' => 'investigation_id']) }} -
    - - - -
    - {{ Form::label('template', __('investigation_result_templates.template')) }} - {{ Form::textarea('template', '', ['class' => 'form-control', 'rows'=>'7']) }} -
    - - {{ Form::button(__('investigations.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::button(__('investigations.cancel'),['type'=>'reset','class'=>'btn btn-default btn-rounded waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -@endsection - - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigation_result_templates/edit.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigation_result_templates/edit.blade.php deleted file mode 100755 index c8a2596a..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigation_result_templates/edit.blade.php +++ /dev/null @@ -1,69 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('investigation_result_templates.edit_result_template') }}

    -
    - -
    - -
    -
    - @include('investigations::investigation_result_templates.menu') -
    -
    - -@include('flash::message') - -
    - -
    - {{ Form::model($result_template, ['method' => 'PUT', 'route' => ['result_templates.update',$result_template]]) }} - -
    - {{ Form::label('investigation_id', __('investigation_result_templates.investigation')) }} - @if($result_template->investigation_id == 0) - {{ Form::text('investigation_id', __('investigation_result_templates.all_investigations'), ['class' => 'form-control', 'readonly']) }} - @elseif($result_template->is_specialised_variable == 1) - {{ Form::text('investigation_id', get_name($result_template->investigation_id, 'id', 'name', 'investigation_specialised_variables'), ['class' => 'form-control', 'readonly']) }} - @else - {{ Form::text('investigation_id', get_name($result_template->investigation_id, 'id', 'name', 'investigations'), ['class' => 'form-control', 'readonly']) }} - @endif - -
    - -
    - {{ Form::label('template', __('investigation_result_templates.template')) }} - {{ Form::textarea('template', $result_template->template, ['class' => 'form-control', 'rows'=>'7']) }} -
    - - {{ Form::button(__('investigations.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::button(__('investigations.cancel'),['type'=>'reset','class'=>'btn btn-default btn-rounded waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -@endsection - - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigation_result_templates/inactive.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigation_result_templates/inactive.blade.php deleted file mode 100755 index 26f9207b..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigation_result_templates/inactive.blade.php +++ /dev/null @@ -1,81 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('investigation_result_templates.inactive_result_templates') }}

    -
    - - -
    - -
    -
    - @include('investigations::investigation_result_templates.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    - - - - - - - - - - @foreach($result_templates as $result_template) - - - - - - - @endforeach - - -
    {{ __('investigation_result_templates.template') }}{{ __('investigation_result_templates.investigation') }}{{ __('investigations.action') }}
    {{ $result_template->template }} - @if($result_template->investigation_id == 0) - {{ __('investigation_result_templates.all_investigations') }} - @elseif($result_template->is_specialised_variable == 1) - {{ get_name($result_template->investigation_id, 'id', 'name', 'investigation_specialised_variables') }} - ({{ get_name(get_name($result_template->investigation_id, 'id', 'investigation_id', 'investigation_specialised_variables'), 'id', 'name', 'investigations') }}) - @else - {{ get_name($result_template->investigation_id, 'id', 'name', 'investigations') }} - @endif - - {{ Form::model($result_template->id ,['method' => 'POST', 'route' => ['result_templates.activate', $result_template->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigation_result_templates/index.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigation_result_templates/index.blade.php deleted file mode 100755 index 48cf1250..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigation_result_templates/index.blade.php +++ /dev/null @@ -1,84 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('investigation_result_templates.view_result_templates') }}

    -
    -
    - -
    -
    - -
    -
    - @include('investigations::investigation_result_templates.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    - - - - - - - - - - - @foreach($result_templates as $item) - - - - - - - - @endforeach - - -
    {{ __('investigation_result_templates.template') }}{{ __('investigation_result_templates.investigation') }}
    {{ $item->template }} - @if($item->investigation_id == 0) - {{ __('investigation_result_templates.all_investigations') }} - @elseif($item->is_specialised_variable == 1) - {{ get_name($item->investigation_id, 'id', 'name', 'investigation_specialised_variables') }} - ({{ get_name(get_name($item->investigation_id, 'id', 'investigation_id', 'investigation_specialised_variables'), 'id', 'name', 'investigations') }}) - @else - {{ get_name($item->investigation_id, 'id', 'name', 'investigations') }} - @endif - - {{ __('investigations.edit') }} - - {{ Form::model($item->id ,['method' => 'DELETE', 'route' => ['result_templates.destroy', $item->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigation_result_templates/menu.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigation_result_templates/menu.blade.php deleted file mode 100755 index 85e0bf97..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigation_result_templates/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    - -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigation_specialised_variables/create.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigation_specialised_variables/create.blade.php deleted file mode 100755 index 9272c171..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigation_specialised_variables/create.blade.php +++ /dev/null @@ -1,131 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('investigations.new_investigation_variable') }}

    -
    - - -
    - -
    -
    - @include('investigations::investigation_specialised_variables.menu') -
    -
    - -@include('flash::message') - -
    - -
    - {{ Form::open(['route' => 'investigation_variables.store','data-toggle'=>'validator']) }} - -
    - {{ Form::label('name', __('investigations.variable_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - - -
    - -
    - - -
    - -
    - {{ Form::label('range_type', __('investigations.is_the_range_normal')) }} - {{ Form::select('range_type', ['' => '--select--',1 => 'Dynamic', 2 => 'Constant'], '', ['class' => 'form-control', 'required']) }} -
    - - - - - - {{ Form::button(__('investigations.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::button(__('investigations.cancel'),['type'=>'reset','class'=>'btn btn-default btn-rounded waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -@endsection - - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigation_specialised_variables/edit.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigation_specialised_variables/edit.blade.php deleted file mode 100755 index aaa4f541..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigation_specialised_variables/edit.blade.php +++ /dev/null @@ -1,120 +0,0 @@ -@extends('layouts.main') - -@section('title', '| Edit Drug Route') - -@section('content') - -
    -
    -

    {{ __('investigations.edit_investigation_specialised_variables') }}

    -
    - - -
    - -
    -
    - @include('investigations::investigation_specialised_variables.menu') -
    -
    - -@include('flash::message') - -
    - -
    - {{ Form::model($investigation_specialised_variable, ['method' => 'PUT', 'route' => ['investigation_variables.update',$investigation_specialised_variable]]) }} - -
    - {{ Form::label('name', __('investigations.variable_name')) }} - {{ Form::text('name', $investigation_specialised_variable->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - - -
    - -
    - - -
    - -
    - {{ Form::label('range_type', __('investigations.is_the_range_normal')) }} - {{ Form::select('range_type', ['' => '--select--',1 => 'Dynamic', 2 => 'Constant'], $investigation_specialised_variable->range_type, ['class' => 'form-control']) }} -
    - -
    range_type == 1) style="display: none;" @endif id="constant_div"> - {{ Form::label('normal_ranges', __('investigations.normal_range')) }} - {{ Form::text('normal_ranges', $investigation_specialised_variable->normal_ranges, ['class' => 'form-control']) }} -
    - -
    range_type != 1) style="display: none;" @endif id="dynamic_div"> - @php $age_groups = \Streamline\Models\AgeGroup::get(); @endphp -
    -
    -
    {{ __('investigations.male') }}
    -
    - @foreach($age_groups as $age) - {{ Form::label('dynamic_range', $age->name) }} - {{ Form::text('dynamic_range_male[]', get_dynamic_normal_range_specialized($investigation_specialised_variable->id, $age->id, 1), ['class' => 'form-control']) }} - {{ Form::hidden('age_id[]', $age->id) }} -
    - @endforeach -
    -
    -
    {{ __('investigations.female') }}
    -
    - @foreach($age_groups as $age) - {{ Form::label('dynamic_range', $age->name) }} - {{ Form::text('dynamic_range_female[]', get_dynamic_normal_range_specialized($investigation_specialised_variable->id, $age->id, 2), ['class' => 'form-control']) }} -
    - @endforeach -
    -
    - -
    -
    - - {{ Form::button(__('investigations.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::button(__('investigations.cancel'),['type'=>'reset','class'=>'btn btn-default btn-rounded waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigation_specialised_variables/inactive.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigation_specialised_variables/inactive.blade.php deleted file mode 100755 index 0887f298..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigation_specialised_variables/inactive.blade.php +++ /dev/null @@ -1,69 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('investigations.inactive_specialised_variable') }}

    -
    - -
    - -
    -
    - @include('investigations::investigation_specialised_variables.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    - - - - - - - - - @foreach($investigation_variables as $route) - - - - - - @endforeach - - -
    {{ __('investigations.variable_name') }}{{ __('investigations.action') }}
    {{ $route->name }} - {{ Form::model($route->id ,['method' => 'POST', 'route' => ['investigation_variables.activate', $route->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigation_specialised_variables/index.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigation_specialised_variables/index.blade.php deleted file mode 100755 index 7490b20a..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigation_specialised_variables/index.blade.php +++ /dev/null @@ -1,147 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('investigations.investigation_specialised_variables') }}

    -
    -
    - -
    - -
    - -
    -
    - @include('investigations::investigation_specialised_variables.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    - - - - - - - - - - - - - @foreach($investigation_variables as $item) - - - - - - - - - - @endforeach - - -
    {{ __('investigations.variable_name') }}{{ __('investigations.investigation') }}{{ __('investigations.normal_range') }}{{ __('investigations.flag') }}
    {{ $item->name }}{{ get_name($item->investigation_id, 'id', 'name', 'investigations') }} - @if($item->range_type == 1) - {{ __('investigations.view_reference_ranges') }} - @else - {{ $item->normal_ranges }} - @endif - {{ $item->flags }} - {{ __('investigations.edit') }} - - {{ Form::model($item->id ,['method' => 'DELETE', 'route' => ['investigation_variables.destroy', $item->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    - - -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigation_specialised_variables/menu.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigation_specialised_variables/menu.blade.php deleted file mode 100755 index 9d23cc6e..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigation_specialised_variables/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    - -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigation_test_codes/create.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigation_test_codes/create.blade.php deleted file mode 100755 index 8f216c81..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigation_test_codes/create.blade.php +++ /dev/null @@ -1,95 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('investigation_result_templates.add_test_code') }}

    -
    -
    - -
    -
    - -
    - - @include('flash::message') - - {{ Form::open(['route' => 'investigation_test_codes.store', 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('investigation_id',__('investigation_result_templates.investigation')) }} - {{ Form::select('investigation_id',$investigations, '',['class' => 'form-control select compulsory', 'required', 'id'=>'investigation_id']) }} -
    - -
    - {{ Form::label('machine_name',__('investigation_result_templates.machine_name')) }} - {{ Form::select('machine_name',$instruments, '',['class' => 'form-control select compulsory', 'required', 'id'=>'machine_name']) }} -
    -
    -
    - - - {{ Form::hidden('is_specialised_variable', 0, ['id' => 'is_specialised_variable']) }} - -
    - {{ Form::label('test_code',__('investigation_result_templates.test_code')) }} - {{ Form::text('test_code','',['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - - {{ Form::button(__('investigation_result_templates.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10 submit-btn']) }} - {{ Form::button(__('investigation_result_templates.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigation_test_codes/edit.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigation_test_codes/edit.blade.php deleted file mode 100755 index d3ab9092..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigation_test_codes/edit.blade.php +++ /dev/null @@ -1,112 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('investigation_result_templates.edit_test_code') }}

    -
    -
    - -
    -
    - -
    -
    - @include('investigations::investigation_test_codes.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($test_code, ['method' => 'PUT', 'route' => ['investigation_test_codes.update',$test_code], 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('investigation_id',__('investigation_result_templates.investigation')) }} - - @if($test_code->is_specialised_variable == 0) - {{ Form::select('investigation_id',$investigations, $test_code->investigation_id,['class' => 'form-control select compulsory', 'required', 'id'=>'investigation_id']) }} - @else - {{ Form::select('investigation_id',$investigations, get_name($test_code->investigation_id, 'id', 'investigation_id', 'investigation_specialised_variables'),['class' => 'form-control select compulsory', 'required', 'id'=>'investigation_id']) }} - @endif -
    - -
    - {{ Form::label('machine_name',__('investigation_result_templates.machine_name')) }} - {{ Form::select('machine_name',$instruments, $test_code->machine_name,['class' => 'form-control select compulsory', 'required', 'id'=>'machine_name']) }} -
    -
    -
    -
    is_specialised_variable == 0) style="display: none" @endif> - {{ Form::label('investigation_specialised_variable',__('investigation_result_templates.investigation_specialised_variable')) }} -
    - {{ Form::select('investigation_specialised_variable',$specialised_variables, $test_code->investigation_id,['class' => 'form-control select compulsory', 'id'=>'investigation_specialised_variable']) }} -
    -
    - - {{ Form::hidden('is_specialised_variable', $test_code->is_specialised_variable, ['id' => 'is_specialised_variable']) }} - -
    - {{ Form::label('test_code',__('investigation_result_templates.test_code')) }} - {{ Form::text('test_code',$test_code->test_code,['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - - {{ Form::button(__('investigation_result_templates.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('investigation_result_templates.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigation_test_codes/inactive.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigation_test_codes/inactive.blade.php deleted file mode 100755 index 843f1f2d..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigation_test_codes/inactive.blade.php +++ /dev/null @@ -1,89 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('investigation_result_templates.activate_test_code') }}

    -
    -
    - -
    -
    - -
    -
    - @include('investigations::investigation_test_codes.menu') -
    -
    - -
    -
    -
    -
    - - - - - - - - - - - - @foreach($test_codes as $test_code) - - - - - - - @endforeach - -
    {{ __('investigation_result_templates.investigation') }}{{ __('investigation_result_templates.machine_name') }}{{ __('investigation_result_templates.test_code') }}
    - @if($test_code->is_specialised_variable == 1) - {{ $specialised_variables[$test_code->investigation_id] }} ({{ $investigations[get_name($test_code->investigation_id, 'id', 'investigation_id', 'investigation_specialised_variables')] }}) - @else - {{ $investigations[$test_code->investigation_id] }} - @endif - {{ $instruments[$test_code->machine_name] }}{{ $test_code->test_code }} - {{ Form::model($test_code->id ,['method' => 'POST', 'route' => ['investigation_test_codes.activate', $test_code->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigation_test_codes/index.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigation_test_codes/index.blade.php deleted file mode 100755 index 019b9fd7..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigation_test_codes/index.blade.php +++ /dev/null @@ -1,93 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('investigation_result_templates.investigation_test_codes') }}

    -
    -
    - -
    -
    - -
    -
    - @include('investigations::investigation_test_codes.menu') -
    -
    - -
    -
    -
    - - @include('flash::message') -
    - - - - - - - - - - - - @foreach($test_codes as $test_code) - - - - - - - - @endforeach - -
    {{ __('investigation_result_templates.investigation') }}{{ __('investigation_result_templates.machine_name') }}{{ __('investigation_result_templates.test_code') }}
    - @if($test_code->is_specialised_variable == 1) - {{ $specialised_variables[$test_code->investigation_id] }} ({{ $investigations[get_name($test_code->investigation_id, 'id', 'investigation_id', 'investigation_specialised_variables')] }}) - @else - {{ $investigations[$test_code->investigation_id] }} - @endif - {{ $instruments[$test_code->machine_name] }}{{ $test_code->test_code }} - {{ __('investigation_result_templates.edit') }} - - {{ Form::model($test_code->id ,['method' => 'DELETE', 'route' => ['investigation_test_codes.destroy', $test_code->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigation_test_codes/menu.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigation_test_codes/menu.blade.php deleted file mode 100755 index ae60c40d..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigation_test_codes/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    - -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/alter_ordered_results.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/alter_ordered_results.blade.php deleted file mode 100755 index 5df0cc23..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/alter_ordered_results.blade.php +++ /dev/null @@ -1,634 +0,0 @@ -@extends('layouts.main') - -@push('styles') -@endpush - -@section('content') -
    -
    -

    {{ __('investigations.alter') }}

    -
    - -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -@php - $episode_id = 0; //initialise the episode_id -@endphp - -
    -
    - - @include('flash::message') -
    -
    - {{ Form::open(['route' => 'investigations.save_altered_results', 'files' => true, 'enctype'=>'multipart/form-data']) }} - - {{ Form::hidden('order_id',$id) }} - {{ Form::hidden('patient_id',$patient->id) }} - - - - - - - - - - - - - @foreach($invs as $result) - - {{ Form::hidden('investigation_specialised_results_id[]', $result['result']) }} - - @if(in_array($result['id'], $investigations_with_specialised_variables)) - - {{ Form::hidden('id[]',$result['id']) }} - - - {{ Form::hidden('value[]',"") }} - {{ Form::hidden('comment[]',"") }} - - - - @php - $specialised_variables = \Illuminate\Support\Facades\DB::table('investigation_specialised_variables')->whereNull('deleted_at')->where('investigation_id', $result['id'])->get(); - @endphp - - @foreach($specialised_variables as $specialized_variable) - - - - - - - - @endforeach - - - @else - - - - - - - - @endif - @endforeach - -
    {{ __('investigations.investigation_name') }}{{ __('investigations.normal_ranges') }}{{ __('investigations.units') }}{{ __('investigations.results') }}{{ __('investigations.comments') }}
    - {{ $result['name'] }} -
    - {{ Form::hidden('specialized_id[]', $specialized_variable->id) }} - {{ $specialized_variable->name }} - - {{ $specialized_variable->normal_ranges }} - - @if(get_name($specialized_variable->units, 'id', 'name', 'drug_units') != "N/A") - {{ get_name($specialized_variable->units, 'id', 'name', 'drug_units') }} - @endif - - {{ Form::textArea('specialized_value[]', isset($result['value'][$specialized_variable->id]) ? $result['value'][$specialized_variable->id] : '', ['class' => 'form-control compulsory', 'rows'=>'12', 'id' => 'invx_' . $specialized_variable->id]) }} - @if(does_investigation_have_template($specialized_variable->id, 1)) -
    - - @endif -
    - {{ Form::textArea('specialized_comment[]', isset($result['comment'][$specialized_variable->id]) ? $result['comment'][$specialized_variable->id] : '', ['class' => 'form-control','rows'=>'12']) }} -
    - {{ $result['name'] }} - {{ Form::hidden('id[]',$result['id']) }} - - {{ $result['range'] }} - - @if(get_name($result['units'], 'id', 'name', 'drug_units') != "N/A") - {{ get_name($result['units'], 'id', 'name', 'drug_units') }} - @endif - - @if($result['slug'] == "echo") -
    -
    - -
    -
    - @php - $cardioEcho = \Streamline\Models\CardioEchoResult::where('episode_id', $result['episode_id'])->first(); - $episode_id = $result['episode_id']; - @endphp - -
    -
    - {{ Form::hidden('value[]', '', ['class' => 'form-control', 'rows'=>'6']) }} - @else - {{ Form::textArea('value[]', $result['result'], ['class' => 'form-control compulsory', 'rows'=>'6', 'id'=>'inv_'.$result['id']]) }} - @if(does_investigation_have_template($result['id'], 0)) -
    - - @endif -
    - {{ Form::label('lab_result_document', __('investigations.lab_result_document')) }} - {{-- {{ Form::file('lab_result_document[]', null) }} --}} - {{-- --}} - @if (!empty($result['document'])) -
    {{ $result['title'] }}   - @endif - @endif -
    - {{ Form::textArea('comment[]', $result['comment'], ['class' => 'form-control','rows'=>'6']) }} - {{ Form::hidden('episode_ids[]', $result['episode_id']) }} -
    -
    - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Reset',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - @php - $order_id = get_name($id, 'id', 'order_id', 'investigation_results'); - $lab_machine_result = \Streamline\Models\LabMachineResult::where('sample_id', $order_id)->first(); - @endphp - - @if($lab_machine_result) - {{ __('investigations.import_results_from_machine') }} - @endif - - {{ Form::close() }} -
    -
    -
    - - - - - - - - - - - -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/alter_ordered_results_obstetric.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/alter_ordered_results_obstetric.blade.php deleted file mode 100755 index c3ca6bbe..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/alter_ordered_results_obstetric.blade.php +++ /dev/null @@ -1,542 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('investigations.alter_obstetric_ultrasound') }}

    -
    - -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    - @include('flash::message') - - {{ Form::open(['route' => 'investigations.submit_ultrasound_obstetric_report']) }} - - {{ Form::hidden('order_id',$order_id) }} - - {{ Form::hidden('patient_id',$patient_id) }} - - {{ Form::hidden('episode_id',$episode_id) }} - - {{ Form::hidden('alter_obstetric', $obstetric_ultrasound_report_id) }} - -
    -
    -
    - {{ Form::label('scan_date', __('investigations.date_of_scan')) }} -
    - {{ Form::text('scan_date', \Carbon\Carbon::createFromFormat('Y-m-d', $report->scan_date)->format('d-m-Y'), ['class'=>'form-control compulsory', 'id'=>'scan_date', 'readonly']) }} - -
    -
    -
    -
    -
    - {{ Form::label('sonographer_name', __('investigations.sonographer')) }} - {{ Form::text('sonographer_name', get_full_name($report->sonographer, 'id', 'first_name', 'last_name', 'users'), ['class' => 'form-control compulsory', 'readonly']) }} - {{ Form::hidden('sonographer', $report->sonographer) }} -
    -
    -
    -
    - {{ Form::label('no_of_foetus', __('investigations.number_of_foetus')) }} - - -
    -
    -
    - -

    {{ __('investigations.obstetric_ultrasound_order_details') }}

    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('investigations.order_date') }}{{ streamline_date(get_name($order_id, 'id', 'created_at', 'ordered_investigations')) }}
    {{ __('investigations.gravida') }}{{ get_name($episode_id, 'episode_id', 'gravida', 'ante_natal_clinic_registrations') }}{{ __('investigations.para') }}{{ get_name($episode_id, 'episode_id', 'para', 'ante_natal_clinic_registrations') }}{{ __('investigations.abortions') }}{{ get_name($episode_id, 'episode_id', 'abortion', 'ante_natal_clinic_registrations') }}
    {{ __('investigations.lmp') }} - @if(get_name($episode_id, 'episode_id', 'lmp', 'ante_natal_clinic_registrations') == 'N/A') - N/A - @else - {{ streamline_date(get_name($episode_id, 'episode_id', 'lmp', 'ante_natal_clinic_registrations')) }} - @endif - {{ __('investigations.accuracy') }} - @if(get_name($episode_id, 'episode_id', 'accuracy', 'ante_natal_clinic_registrations') == 'N/A') - N/A - @else - {{ get_name(get_name($episode_id, 'episode_id', 'accuracy', 'ante_natal_clinic_registrations'), 'id', 'name', 'ante_natal_clinic_accuracies') }} - @endif - {{ __('investigations.edd') }} - @if(get_name($episode_id, 'episode_id', 'edd', 'ante_natal_clinic_registrations') == 'N/A') - N/A - @else - {{ streamline_date(get_name($episode_id, 'episode_id', 'edd', 'ante_natal_clinic_registrations')) }} - @endif -
    {{ __('investigations.clinic') }}{{ get_name(get_name($episode_id, 'id', 'clinic_id', 'patient_episodes'), 'id', 'name', 'clinics') }}{{ __('investigations.requested_by') }} - @php - $requester_id = get_name($order_id, 'id', 'created_by', 'ordered_investigations'); - - if($requester_id == 'N/A'){ - $requested_by = Auth::user()->id; - } else { - $requested_by = $requester_id; - } - @endphp - {{ get_full_name($requested_by, 'id', 'first_name', 'last_name', 'users') }} - {{ __('investigations.phone') }}{{ get_name($requested_by, 'id', 'phone', 'users') }}
    {{ __('investigations.comment') }}{{ get_name($order_id, 'id', 'comment', 'ordered_investigations') }}
    -
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @php - - //explode comments with separator ,,, - $comments = !empty($report->comments) ? explode(",,,",$report->comments) : ''; - - @endphp - - - - - - - - -
    {{ __('investigations.item') }}
    1
    {{ __('investigations.crown_rump_length') }} (cm) -
    - - -
    -
    - - - -
    {{ __('investigations.bi_parietal_diameter') }} (cm) -
    - - -
    -
    - - - -
    {{ __('investigations.head_circumference') }} (cm) -
    - - -
    -
    - - - -
    {{ __('investigations.abdominal_circumference') }} (cm) -
    - - -
    -
    - - - -
    {{ __('investigations.femur_length') }} (cm) -
    - -
    -
    - - - -
    {{ __('investigations.estimated_foetal_weight') }} (kg) -
    - -
    -
    - - - -
    {{ __('investigations.average_gestation_age') }} ({{ __('investigations.weeks') }}) -
    - -
    -
    - - - -
    {{ __('investigations.edd') }} -
    - {{ Form::text('expected_delivery_date1', split_string_null_check($report->expected_delivery_date, 0), ['class'=>'form-control', 'id'=>'expected_delivery_date1', 'readonly']) }} - -
    -
    - - - -
    {{ __('investigations.presentation') }} - - - - - -
    {{ __('investigations.placental_site') }} - - - - - -
    {{ __('investigations.liquor_volume') }} (mls) -
    - {{ Form::number('liquor_volume1', split_string_null_check($report->liquor_volume, 0), ['class' => 'form-control']) }} -
    -
    - - - -
    {{ __('investigations.cord_artery_doppler') }} -
    - {{ Form::text('cord_artery_doppler1', split_string_null_check($report->cord_artery_doppler, 0), ['class' => 'form-control']) }} -
    -
    - - - -
    {{ __('investigations.comments_additional_info') }} -
    - -
    -
    - - - -
    -
    - - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'submit_button']) }} - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - {{-- show foetus data columns on change of foetus number input --}} - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/alter_results.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/alter_results.blade.php deleted file mode 100755 index e66d767c..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/alter_results.blade.php +++ /dev/null @@ -1,211 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('layout.alter_investigations_results') }}

    -
    - -
    - -
    - {{ Form::open(['method'=>'post','route' => 'investigations.alter_results']) }} - - {{ Form::hidden('patient_id', 0, ['id' => 'patient_id']) }} - -
    -
    -
    - - -
    -
    - - - -
    - {{ Form::label('search_patient', 'Search By Patient') }} -
    - -
    -
    - -
    -
    - {{ Form::submit(__('investigations.search'), ['class'=>'btn btn-success pull-right']) }} -
    -
    -
    - {{ Form::close() }} -
    - -
    -
    -
    - @include('flash::message') - - @if($search_text != "") -

    -
    - @endif -
    - - - - - - - - - - - - - - @foreach($results as $result) - - - - - - - - - - @endforeach - @if(count($results) <= 0) - - - - @endif - -
    {{ __('investigations.patient_number') }}{{ __('investigations.patient_names') }}{{ __('investigations.ordered_investigations') }}{{ __('investigations.gender') }}{{ __('investigations.date_of_birth') }}{{ __('investigations.submission_date') }}{{ __('investigations.actions') }}
    - {{ get_name($result->patient_id, 'id', 'number', 'patients') }} - - {!! insurance_flag($result->patient_id) !!} - - investigation_id) ?> - -
      - @foreach($investigation_ids as $investigation_id) -
    1. {{ get_name($investigation_id, 'id', 'name', 'investigations') }}
    2. - @endforeach -
    -
    - patient_id, 'id', 'gender', 'patients') ?> - @if($gender == 1) - {{ __('investigations.male') }} - @elseif($gender == 2) - {{ __('investigations.female') }} - @elseif($gender == 3) - {{ __('investigations.other') }} - @endif - - {{ streamline_date_plain(get_name($result->patient_id, 'id', 'date_of_birth', 'patients')) }} - - {{ removeSeconds($result->created_at) }} - - {{ Form::open(['route' => 'investigations.alter_ordered_results']) }} - - {{ Form::hidden('patient_id',$result->patient_id) }} - - {{ Form::hidden('id',$result->id) }} - - - - {{ Form::close() }} -
    {{ __('investigations.no_investigations_found') }}
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/alter_results_others.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/alter_results_others.blade.php deleted file mode 100755 index b27f02fd..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/alter_results_others.blade.php +++ /dev/null @@ -1,252 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('investigations.alter_radiology_ultrasound_results') }}

    -
    - -
    - -
    - {{ Form::open(['method'=>'post','route' => 'investigations.alter_results_others']) }} - - {{ Form::hidden('patient_id', 0, ['id' => 'patient_id']) }} - -
    -
    -
    - - -
    -
    - - - -
    - {{ Form::label('search_patient', __('investigations.search_by_patient')) }} -
    - -
    -
    - -
    -
    - {{ Form::submit(__('investigations.search'), ['class'=>'btn btn-success pull-right']) }} -
    -
    -
    - {{ Form::close() }} -
    - -
    - @include('flash::message') - - @if($search_text != "") -

    -
    - @endif -
    - - - - - - - - - - - - - - @foreach($results as $result) - - - - - - - - - - @endforeach - @if(count($results) <= 0) - - - - @endif - -
    {{ __('investigations.patient_names') }}{{ __('investigations.requested') }}{{ __('investigations.performed_at') }}{{ __('investigations.source') }}{{ __('investigations.payment') }}{{ __('investigations.request') }}{{ __('investigations.actions') }}
    - {!! insurance_flag($result->patient_id) !!} - - ({{ $result->patient_number }}) - ({{ $patient_categories[$result->patients_category_id] }}) - - {{ streamline_date_time_short($result->requested_at) }} - {{ streamline_date_time_short($result->created_at) }} - @if($result->inpatient == 1) - {{ get_ward_name($result->patient_id, $result->episode_id) }} - @else - OPD - @endif - - @if($result->payment_status == 0) - - @else - - @endif - {{ count(explode(",", $result->investigation_id)) }} {{ __('investigations.tests') }} - @if($result->result_type == 'Ultrasound_Obstetric') - {{ Form::open(['route' => 'investigations.alter_ordered_results_obstetric']) }} - - {{ Form::hidden('patient_id',$result->patient_id) }} - - {{ Form::hidden('episode_id',$result->episode_id) }} - - {{ Form::hidden('obstetric_ultrasound_report_id',$result->value) }} - - {{ Form::hidden('order_id',$result->order_id) }} - - - - {{ Form::close() }} - @else - {{ Form::open(['route' => 'investigations.alter_ordered_results']) }} - - {{ Form::hidden('patient_id',$result->patient_id) }} - - {{ Form::hidden('id',$result->id) }} - - - - {{ Form::close() }} - @endif -
    {{ __('investigations.no_investigations_found') }}
    -
    -
    - - -@endsection - -@push('scripts') - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/authenticate_labs.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/authenticate_labs.blade.php deleted file mode 100755 index 0b38b4c9..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/authenticate_labs.blade.php +++ /dev/null @@ -1,413 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('investigations.authenticate_lab_investigations') }}

    -
    -
    - -
    -
    - -
    - {{ Form::open(['method'=>'post','route' => 'investigations.authenticate_labs']) }} - - {{ Form::hidden('patient_id', 0, ['id' => 'patient_id']) }} - -
    -
    -
    - - -
    -
    - - - -
    - {{ Form::label('search_patient', __('investigations.search_by_patient')) }} -
    - -
    -
    - -
    -
    - {{ Form::submit(__('investigations.search'), ['class'=>'btn btn-success pull-right']) }} -
    -
    -
    - {{ Form::close() }} -
    - -{{ Form::open(['route' => 'investigations.authenticate_investigations']) }} -
    - @include('flash::message') - @php - $indicator = ''; - $normal_orders =array_filter($orders, function ($item) use ($indicator) { - return $item['urgent_ids'] == $indicator; - }); - $urgent_orders= array_filter($orders, function ($item) use ($indicator) { - return $item['urgent_ids'] !== $indicator; - }); - @endphp - @if($search_text != "") -

    - - @if (count($urgent_orders) > 0) -    - @endif -

    - @endif - -
    -
    -
    - -
    -
    - - - - - - - - - - - - - @foreach($normal_orders as $order) - {{ Form::hidden('order_id[]',$order['order_id']) }} - - - - - - - @endforeach - @if(count($orders) <= 0) - - - - @endif - -
    {{ __('investigations.date') }}{{ __('investigations.patient_number') }}{{ __('investigations.patient_names') }}{{ __('investigations.investigations') }}{{ __('investigations.results') }}{{ __('investigations.select') }}
    - {{ $order['date'] }} - - {{ $order['number'] }} - - {!! insurance_flag($order['id']) !!} - - - - - @foreach($order['values'] as $value) - @if(get_name($value['investigation_id'], 'id', 'type', 'investigations') == 1) - - - - - @php - // get the specialised results and check if it is valid - $specialised_results = \Illuminate\Support\Facades\DB::table('investigation_specialised_results')->find($value['value']); - $specialised_ids = []; - $specialised_values = []; - - if(!is_null($specialised_results)){ - $specialised_ids = explode(",", $specialised_results->specialised_variable_id); - - $specialised_values = explode(",", $specialised_results->value); - } - @endphp - - @if(count($specialised_ids) > 0) - @for($i = 0; $i < count($specialised_ids); $i++) - - - - - @endfor - @else - - @endif - - @else - - - - - - @endif - - @endforeach - {{ Form::hidden('count[]',$count) }} - -
    - {{ $value['name'] }} - - @if(empty($value['per_investigation']) || $value['per_investigation'] == 0) - - @else - - @endif -
    - {{ get_name($specialised_ids[$i], 'id', 'name', 'investigation_specialised_variables') }} - {{ $specialised_values[$i] }}
    - {{ $value['name'] }} - - {{ $value['value'] }} - @if (!empty($value['document'])) -

    {{ $value['title'] }} - @endif -
    - @if(empty($value['per_investigation']) || $value['per_investigation'] == 0) - - @else - - @endif -
    -
    {{ __('investigations.all_results_authenticated') }}
    -
    - @if (count($urgent_orders) > 0) -
    - - - - - - - - - - - - - @foreach($urgent_orders as $urgent_order) - {{ Form::hidden('order_id[]',$urgent_order['order_id']) }} - - - - - - - @endforeach - -
    {{ __('investigations.date') }}{{ __('investigations.patient_number') }}{{ __('investigations.patient_names') }}{{ __('investigations.investigations') }}{{ __('investigations.results') }}{{ __('investigations.select') }}
    - {{ $urgent_order['date'] }} - - {{ $urgent_order['number'] }} - - {!! insurance_flag($urgent_order['id']) !!} - - - - - @foreach($urgent_order['values'] as $value) - @if(get_name($value['investigation_id'], 'id', 'type', 'investigations') == 1) - - - - - @php - // get the specialised results and check if it is valid - $specialised_results = \Illuminate\Support\Facades\DB::table('investigation_specialised_results')->find($value['value']); - $specialised_ids = []; - $specialised_values = []; - - if(!is_null($specialised_results)){ - $specialised_ids = explode(",", $specialised_results->specialised_variable_id); - - $specialised_values = explode(",", $specialised_results->value); - } - @endphp - - @if(count($specialised_ids) > 0) - @for($i = 0; $i < count($specialised_ids); $i++) - - - - - @endfor - @else - - @endif - - @else - - - - - - @endif - - @endforeach - {{ Form::hidden('count[]',$count) }} - -
    - {{ $value['name'] }} - - @if(empty($value['per_investigation']) || $value['per_investigation'] == 0) - - @else - - @endif -
    - {{ get_name($specialised_ids[$i], 'id', 'name', 'investigation_specialised_variables') }} - {{ $specialised_values[$i] }}
    - {{ $value['name'] }} - - {{ $value['value'] }} - @if (!empty($value['document'])) -

    {{ $value['title'] }} - @endif -
    - @if(empty($value['per_investigation']) || $value['per_investigation'] == 0) - - @else - - @endif -
    -
    -
    - @endif -
    -
    -
    -
    - - -
    - {{ Form::label('username', __('investigations.username')) }} - {{ Form::text('username', '', ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('password', __('investigations.password')) }} - -
    - - {{ Form::button(__('investigations.authenticate_results'),['type'=>'submit','id'=>'authenticate_submit_button','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    -
    -{{ Form::close() }} -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/cardio_echo_template.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/cardio_echo_template.blade.php deleted file mode 100755 index cc89678b..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/cardio_echo_template.blade.php +++ /dev/null @@ -1,307 +0,0 @@ -@extends('layouts.main') - -@push('styles') -@endpush - -@section('content') -
    -
    -

    {{ __('investigations.cardio_echo_template') }}

    -
    - -
    - -
    - {{ Form::open(['route' => 'investigations.cardio_echo_template']) }} - -
    -
    - {{ Form::select('template', $templates, '', ['class' => 'form-control', 'required']) }} -
    -
    - {{ Form::button("Select",['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    - -
    - - {{ Form::close() }} -
    - -
    - @include('flash::message') - - @if($measurements == 0) -

    {{ __('investigations.select_template_or_create') }}

    - @else - {{ Form::open(['route' => 'investigations.save_cardio_echo_template']) }} - - {{ Form::hidden('id', $id) }} - -

    2-D/M-MODE MEASUREMENTS (Centimeters)

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
     {{ __('investigations.results') }} cm {{ __('investigations.results') }} cm {{ __('investigations.results') }} cm
    IVS - -
    -
    AO - - - EF (%) - - - -
    LVIDd - -
    -
    LA - -
    -
    FS (%) - -
    -
    LVIDs - -
    -
    RV - -
    -
    TAPSE: - -
    -
    LVPW - -
    -
    RA: - -
    -
    - -

    DOPPLER FINDINGS

    -
    -
    - - - - - - - - - - - - - - - - - - - - - -
    Mitral E/A ratio - - TR Max. PG (mmHg) -
    - -
    AV mean PG (mmHg) - -
    AV Vel. max (m/s) - - RAP (mmHg) - -
    -
    -
    - -

    {{ __('investigations.description') }}

    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Left Ventricle - -
    Right Ventricle - -
    Left Atrium - -
    Right Atrium - -
    Aortic Valve - -
    Mitral Valve - -
    Pulmonary Valve - -
    Tricuspid Valve - -
    Aortic root and arch - -
    Pericardium - -
    -
    -
    - -
    - -
    -
    - - -
    -
    - -

    - - {{ Form::button("Submit",['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button("Cancel",['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} - @endif -
    - - -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/create.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/create.blade.php deleted file mode 100755 index 58c4a852..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/create.blade.php +++ /dev/null @@ -1,448 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('investigations.add_investigation') }}

    -
    - -
    - -@include('investigations::investigations.menu') - -
    -
    - - @include('flash::message') - @if ($errors->any()) -
    -
      - @foreach ($errors->all() as $error) -
    • {{ $error }}
    • - @endforeach -
    -
    - @endif -
    - @if (session()->has('streamline_setup')) -

    Stre@mline {{ __('investigations.setup') }} ({{ __('investigations.step') }} 7 {{ __('investigations.of') }} 12)

    - - {{ Form::open(['route' => 'investigations.store', 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('investigations.investigation_name')) }} - {{ Form::text('name', '', ['class' => 'form-control']) }} -
    -
    - -
    - {{ Form::label('category', __('investigations.category')) }} - {{ Form::select('category',$investigation_categories,'',['class' => 'form-control']) }} -
    -
    - -
    - {{ Form::label('units', __('investigations.unit')) }} - {{ Form::select('units',$unit_of_measure,'',['class' => 'form-control']) }} -
    -
    - -
    - {{ Form::label('minimum', __('investigations.minimum')) }} - {{ Form::text('minimum', '', ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('sample_container', __('investigations.sample_container')) }} - {{ Form::text('sample_container', '', ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('comments', __('investigations.comments')) }} - {{ Form::textArea('comments', '', ['class'=>'form-control', 'rows' => 9]) }} -
    -
    - -
    -
    - {{ Form::label('non_insured_price', __('investigations.non_insured_price')) }} - {{ Form::number('non_insured_price', '', ['class' => 'form-control', 'id' => 'non_insured_price']) }} -
    - - @php - $price_list_categories = \Streamline\Models\PriceListCategories::select('patient_category_id', 'id')->get(); - @endphp - - @foreach($price_list_categories as $record) -
    - {{ Form::label('non_insured_price', get_name($record->patient_category_id, 'id', 'name', 'patient_categories').' Price') }} - {{ Form::hidden('price_list_category_id[]', $record->id) }} - {{ Form::number('price_list_price[]', '', ['class'=>'form-control price_list_price']) }} -
    - @endforeach - -
    - {{ Form::label('normal_ranges', __('investigations.normal_ranges')) }} - {{ Form::text('normal_ranges', '', ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('lab_time', __('investigations.lab_time')) }} - {{ Form::text('lab_time', '', ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('available',__('investigations.is_investigation_available'), ["class"=>'col-md-12']) }} -  {{ __('investigations.yes') }} {{ Form::radio('available', 1, false, ['class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -  {{ __('investigations.no') }} {{ Form::radio('available', 0, false, ['class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    -
    - {{ Form::label('echo',__('investigations.echo_investigation_template'), ["class"=>'col-md-12']) }} -  {{ __('investigations.yes') }} {{ Form::radio('echo', 1, false, ['class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -  {{ __('investigations.no') }} {{ Form::radio('echo', 0, false, ['class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    -
    - {{ Form::label('account_id',__('investigations.chart_of_account_name')) }} - {{ Form::select('account_id',$chart_of_accounts,'',['class' => 'form-control']) }} -
    -
    -
    - -
    -

    {{ __('investigations.select_from_list') }}

    - @foreach ($investigations as $investigation) -
    - {{ Form::checkbox('selected_investigations[]', $investigation['name'], false) }} {{ $investigation['name'] }}    - {{ Form::hidden('selected_category[]', $investigation['category']) }} -
    - @endforeach -
    -
    - {{ Form::button(__('investigations.next'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10 next']) }} - {{ Form::button(__('investigations.skip'),['type'=>'submit','name' => 'skip', 'value' => 'skip','class'=>'btn btn-default waves-effect waves-light m-r-10']) }} - @else - - {{-- {{ Form::open(['route' => 'investigations.store', 'data-toggle' => 'validator']) }} --}} - {{ Form::open(['route' => 'investigations.store']) }} -
    -
    -
    - {{ Form::label('name', __('investigations.investigation_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory','required']) }} -
    -
    - -
    - {{ Form::label('category', __('investigations.category')) }} - {{ Form::select('category',$investigation_categories,'',['class' => 'form-control compulsory','required']) }} -
    -
    - -
    - {{ Form::label('units', __('investigations.unit')) }} - {{ Form::select('units',$unit_of_measure,'',['class' => 'form-control compulsory','required']) }} -
    -
    - -
    - {{ Form::label('minimum', __('investigations.minimum')) }} - {{ Form::text('minimum', '', ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('sample_container', __('investigations.sample_container')) }} - {{ Form::text('sample_container', '', ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('range_type', 'Is the Reference Range ?') }} - {{ Form::select('range_type', ['' => '--select--',1 => 'Dynamic', 2 => 'Constant'], '', ['class' => 'form-control']) }} -
    - - - - - -
    - {{ Form::label('lab_time', __('investigations.lab_time')) }} - {{ Form::text('lab_time', '', ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('available',__('investigations.is_investigation_available'), ["class"=>'col-md-12','required']) }} -  {{ __('investigations.yes') }} {{ Form::radio('available', 1, false, ['class' => 'check form-control', 'data-radio'=>'iradio_flat-green','required' => 'required']) }} -  {{ __('investigations.no') }} {{ Form::radio('available', 0, false, ['class' => 'check form-control', 'data-radio'=>'iradio_flat-green','required' => 'required']) }} -
    -
    -
    - {{ Form::label('echo',__('investigations.echo_investigation_template'), ["class"=>'col-md-12']) }} -  {{ __('investigations.yes') }} {{ Form::radio('echo', 1, false, ['class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -  {{ __('investigations.no') }} {{ Form::radio('echo', 0, false, ['class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    - -
    - {{ Form::label('is_chronic',__('investigations.is_investigation_chronic'), ["class"=>'col-md-12']) }} -  {{ __('investigations.yes') }} {{ Form::radio('is_chronic', 1, false, ['class' => 'check form-control', 'data-radio'=>'iradio_flat-green','required' => 'required']) }} -  {{ __('investigations.no') }} {{ Form::radio('is_chronic', 0, false, ['class' => 'check form-control', 'data-radio'=>'iradio_flat-green','required' => 'required']) }} -
    -
    - -
    - {{ Form::label('code', 'Item Code') }} - {{ Form::text('code', '', ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('reference_areas', __('diagnoses.reference_areas')) }} - {{ Form::text('reference_text', '', ['class' => 'form-control', 'placeholder' => 'Reference text']) }} -
    -
    -
    - {{ Form::text('reference_link', '', ['class' => 'form-control', 'placeholder' => 'Reference link e.g. http://google.com']) }} -
    -
    -
    - -
    - -
    - {{ Form::label('non_insured_price', __('investigations.non_insured_price')) }} - {{ Form::number('non_insured_price', '', ['class' => 'form-control compulsory','required', 'id' => 'non_insured_price']) }} -
    - - @php - $price_list_categories = \Streamline\Models\PriceListCategories::select('patient_category_id', 'id')->get(); - @endphp - - @foreach($price_list_categories as $record) -
    - {{ Form::label('non_insured_price', get_name($record->patient_category_id, 'id', 'name', 'patient_categories').' Price') }} - {{ Form::hidden('price_list_category_id[]', $record->id) }} - {{ Form::number('price_list_price[]', '', ['class'=>'form-control price_list_price']) }} -
    - @endforeach -
    - -
    -
    - {{ Form::label('comments', __('investigations.comments')) }} - {{ Form::textArea('comments', '', ['class'=>'form-control', 'rows' => 9]) }} -
    - -
    - {{ Form::label('account_id',__('investigations.chart_of_account_name')) }} - {{ Form::select('account_id',$chart_of_accounts,'',['class' => 'form-control compulsory','required']) }} -
    -
    - -
    -
    -
    - {{ Form::label('hmis_no_outpatient', 'HMIS-out-patient No.') }} - {{ Form::text('hmis_no_outpatient[]', '', ['class'=>'form-control']) }} -
    -
    - {{ Form::label('hmis_category', __('investigations.hmis_category_out_patient')) }} - {{ Form::select('hmis_category[]', $hmis_categories, '', ['class' => 'form-control']) }} -
    -
    - -
    - {{ __('investigations.add_more') }}

    - -
    - {{ Form::label('hmis_category_inpatient', __('investigations.hmis_category_in_patient')) }} - -
    - - {{ Form::label('hmis_no_inpatient', __('investigations.hmis_category_in_patient_number')) }} - -
    -
    -
    - {{ Form::label('hmis_002_slug', __('investigations.hmis_002_category')) }} - {{ Form::select('hmis_002_slug', ['' => '--select--',1 => 'TB', 2 => 'RDT', 3=>'B/S', 4=>'RBS'], '', ['class' => 'form-control', 'id'=>'hmis_002_slug']) }} -
    -
    -
    - {{ Form::button(__('investigations.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10 submit-btn']) }} - {{ Form::button(__('investigations.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - @endif - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/delete_investigations.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/delete_investigations.blade.php deleted file mode 100755 index 5b001ba0..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/delete_investigations.blade.php +++ /dev/null @@ -1,174 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('investigations.cancel_ordered_investigations') }}

    -
    - -
    - - {{ Form::open(['route' => 'investigations.investigations_to_cancel', 'method' => 'ANY']) }} - -
    -
    -
    -
    - {{ Form::label('search_by', __('investigations.date')) }} - {{ Form::select('search_by', ['0'=>'Today','1'=>'Custom Date','2'=>'Custom Range'], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - - -
    -

    - {{ Form::button(__('investigations.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    -
    -
    - {{ Form::close() }} - -
    - - @include('flash::message') -
    - - - - - - - - - - - - - @php $count=1; @endphp - - @foreach($ordered_investigations as $ordered_inv) - @php - $urgent_ids = $ordered_inv->urgent_ids; - $ordered_ids = explode(",", $ordered_inv->investigation_id); - $ordered_investigation_comments_string = ""; - $ordered_investigation_comments_string = $ordered_inv->order_comments; - @endphp - - - - - - - - - - @php $count++; @endphp - @endforeach - -
    #{{ __('investigations.date') }}{{ __('investigations.patient_names') }}{{ __('investigations.investigations') }}{{ __('investigations.action') }}
    {{ $count }}.{{ streamline_date_time($ordered_inv->created_at) }}{!! insurance_flag($ordered_inv->patient_id) !!} ({{ get_name($ordered_inv->patient_id, 'id', 'number', 'patients') }}) -
      - @for($i=0; $i < count($ordered_ids); $i++) -
    1. {{ get_name($ordered_ids[$i], 'id', 'name', 'investigations') }}
    2. - @endfor -
    -
    - {{ Form::model($ordered_inv->id ,['method' => 'DELETE', 'route' => ['ordered_investigation.destroy', $ordered_inv->id]]) }} - - {{ Form::close() }} - - {{ __('investigations.select_patient') }} -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/edit.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/edit.blade.php deleted file mode 100755 index 71d8cdaa..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/edit.blade.php +++ /dev/null @@ -1,360 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('investigations.edit_investigation') }}

    -
    - -
    - -@include('investigations::investigations.menu') - -
    -
    - - @include('flash::message') - @if ($errors->any()) -
    -
      - @foreach ($errors->all() as $error) -
    • {{ $error }}
    • - @endforeach -
    -
    - @endif -
    - {{ Form::model($investigation, ['method' => 'PUT', 'route' => ['investigations.update',$investigation], 'data-toggle' => 'validator']) }} - -
    -
    -
    -
    - {{ Form::label('name', __('investigations.investigation_name')) }} - {{ Form::text('name', $investigation->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('category', __('investigations.category')) }} - {{ Form::select('category',$investigation_categories,$investigation->category,['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('units', __('investigations.unit')) }} - {{ Form::select('units',$unit_of_measure,$investigation->units,['class' => 'form-control']) }} -
    - -
    - {{ Form::label('range_type', __('investigations.is_the_reference_range')) }} - {{ Form::select('range_type', [null => '--select--', 1 => 'Dynamic', 2 => 'Constant'], $investigation->range_type, ['class' => 'form-control']) }} -
    - -
    range_type == 1) style="display: none;" @endif id="constant_div"> - {{ Form::label('normal_ranges', __('investigations.normal_ranges')) }} - {{ Form::text('normal_ranges', $investigation->normal_ranges, ['class' => 'form-control']) }} -
    - -
    range_type != 1) style="display: none;" @endif id="dynamic_div"> - @php $age_groups = \Streamline\Models\AgeGroup::get(); @endphp -
    -
    -
    {{ __('investigations.male') }}
    -
    - @foreach($age_groups as $age) - {{ Form::label('dynamic_range', $age->name) }} - {{ Form::text('dynamic_range_male[]', get_dynamic_normal_range($investigation->id, $age->id, 1), ['class' => 'form-control']) }} - {{ Form::hidden('age_id[]', $age->id) }} -
    - @endforeach -
    -
    -
    {{ __('investigations.female') }}
    -
    - @foreach($age_groups as $age) - {{ Form::label('dynamic_range', $age->name) }} - {{ Form::text('dynamic_range_female[]', get_dynamic_normal_range($investigation->id, $age->id, 2), ['class' => 'form-control']) }} -
    - @endforeach -
    -
    - -
    -
    - -
    - {{ Form::label('minimum', __('investigations.minimum')) }} - {{ Form::text('minimum', $investigation->minimum, ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('sample_container', __('investigations.sample_container')) }} - {{ Form::text('sample_container', $investigation->sample_container, ['class' => 'form-control']) }} -
    -
    - {{ Form::label('non_insured_price', __('investigations.non_insured_price')) }} - {{ Form::number('non_insured_price', $investigation->non_insured_price, ['class' => 'form-control']) }} -
    - - @if($investigation->price_list_category && $investigation->price_list_category != '') - @php - $price_list_categories = explode(",", $investigation->price_list_category); - $price_list_prices = explode(",", $investigation->price_list_price); - @endphp - - @for($i = 0; $i < count($price_list_categories); $i++) -
    - {{ Form::label('non_insured_price', get_name($price_list_categories[$i], 'id', 'name', 'patient_categories').' Price') }} - {{ Form::hidden('price_list_category_id[]', $price_list_categories[$i]) }} - {{ Form::number('price_list_price[]', $price_list_prices[$i], ['class'=>'form-control price_list_price']) }} -
    - @endfor - @endif - -
    - {{ Form::label('comments', __('investigations.comments')) }} - {{ Form::textArea('comments', $investigation->comments, ['class'=>'form-control', 'rows' => 2]) }} -
    -
    -
    - -
    - {{ Form::label('lab_time', __('investigations.lab_time')) }} - {{ Form::text('lab_time', $investigation->lab_time, ['class' => 'form-control']) }} -
    - - -
    -
    -
    - {{ Form::label('', __('investigations.is_investigation_available'), ["class"=>'col-md-12']) }} -  {{ __('investigations.yes') }} {{ Form::radio('available', 1, $investigation->available == 1, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -  {{ __('investigations.no') }} {{ Form::radio('available', 0, $investigation->available == 0, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    -
    -
    -
    - {{ Form::label('', __('investigations.is_investigation_chronic'), ["class"=>'col-md-12']) }} -  {{ __('investigations.yes') }} {{ Form::radio('is_chronic', 1, $investigation->is_chronic == 1, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -  {{ __('investigations.no') }} {{ Form::radio('is_chronic', 0, $investigation->is_chronic == 0, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    -
    -
    -
    - {{ Form::label('account_id',__('investigations.chart_of_account_name')) }} - {{ Form::select('account_id',$chart_of_accounts,$investigation->account_id,['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - {{ Form::label('echo', __('investigations.echo_investigation_template'), ["class"=>'col-md-12']) }} -  {{ __('investigations.yes') }} {{ Form::radio('echo', 1, $investigation->slug == 'echo', ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -  {{ __('investigations.no') }} {{ Form::radio('echo', 0, $investigation->slug == null, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    - -
    - {{ Form::label('code', 'Item Code') }} - {{ Form::text('code', $investigation->code, ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('reference_areas', __('diagnoses.reference_areas')) }} - {{ Form::text('reference_text', $investigation->reference_text, ['class' => 'form-control', 'placeholder' => 'Reference text']) }} -
    -
    -
    - {{ Form::text('reference_link', $investigation->reference_link, ['class' => 'form-control', 'placeholder' => 'Reference link e.g. http://google.com']) }} -
    -
    - - -
    - hmis_no_outpatient)); - $hmis_category_array = array_filter(explode(",", $investigation->hmis_category)); - ?> - @if(count($hmis_no_outpatient_array) > 0) - @for ($x = 0; $x < count($hmis_no_outpatient_array); $x++) -
    -
    - {{ Form::label('hmis_no_outpatient', 'HMIS-out-patient No.') }} - {{ Form::text('hmis_no_outpatient[]', $hmis_no_outpatient_array[$x], ['class'=>'form-control']) }} -
    -
    - {{ Form::label('hmis_category', 'HMIS category (Out Patient)') }} - {{ Form::select('hmis_category_opd[]', $hmis_categories_opd, isset($hmis_category_array[$x]) ? $hmis_category_array[$x] : "", ['class' => 'form-control']) }} -
    -
    - @endfor - @else -
    -
    - {{ Form::label('hmis_no_outpatient', 'HMIS-out-patient No.') }} - {{ Form::text('hmis_no_outpatient[]', '', ['class'=>'form-control']) }} -
    -
    - {{ Form::label('hmis_category', 'HMIS category (Out Patient)') }} - {{ Form::select('hmis_category_opd[]', $hmis_categories_opd, '', ['class' => 'form-control']) }} -
    -
    - @endif -
    - {{ __('investigations.add_more') }}

    - -
    - @php - $inpatient_option =$investigation->hmis_category_inpatient; - $inpatient_other = array_filter($inpatient_hmis_categories, function ($item) use ($inpatient_option) { - return $item['id'] !== $inpatient_option; - }); - $inpatient_selected = array_filter($inpatient_hmis_categories, function ($item) use ($inpatient_option) { - return $item['id'] == $inpatient_option; - }); - $categories_option = $investigation->hmis_no_inpatient; - $selected_hmis_categories_option=array_filter($inpatient_hmis_category_options, function ($item) use ($categories_option) { - return $item['id'] == $categories_option; - }); - $other_hmis_categories_options= array_filter($inpatient_hmis_category_options, function ($item) use ($categories_option) { - return $item['id'] != $categories_option; - }); - @endphp - {{ Form::label('hmis_category_inpatient', __('investigations.hmis_category_in_patient')) }} - -
    - - {{ Form::label('hmis_no_inpatient', __('investigations.hmis_category_in_patient_number')) }} - -
    -
    -
    - {{ Form::label('hmis_002_slug', __('investigations.hmis_002_category')) }} - {{ Form::select('hmis_002_slug', ['' => '--select--',1 => 'TB', 2 => 'RDT', 3=>'B/S', 4=>'RBS'], $investigation->hmis_002_slug?? '', ['class' => 'form-control', 'id'=>'hmis_002_slug']) }} -
    - - {{ Form::button(__('investigations.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('investigations.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - @php $spec_vars = \DB::table('investigation_specialised_variables')->whereNull('deleted_at')->where('investigation_id', $investigation->id)->get(); @endphp - - @if(count($spec_vars) > 0) -

    - {{ __('investigations.edit_specialised_variables_ranking') }} - @endif -
    -
    -
    - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/edit/all.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/edit/all.blade.php deleted file mode 100755 index 063bbb4e..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/edit/all.blade.php +++ /dev/null @@ -1,115 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('investigations.edit_investigation') }}

    -
    -
    - -
    -
    - -@include('investigations::investigations.menu') - -
    -
    - - @include('flash::message') -
    - {{ Form::model($investigations, ['method' => 'ANY', 'route' => ['investigations.update_all', 'data-toggle' => 'validator']]) }} - -
    - - - - - - - - - - - - - - - - - - - - @foreach($investigations as $investigation) - - - - - - - - - - - - - - - - @endforeach - -
    {{ __('investigations.investigation_name') }}{{ __('investigations.category') }}{{ __('investigations.normal_ranges') }}{{ __('investigations.minimum') }}{{ __('investigations.sample_container') }}{{ __('investigations.non_insured_price') }}{{ __('investigations.insured_price') }}{{ __('investigations.comments') }}{{ __('investigations.lab_time') }}{{ __('investigations.insurance_coverage') }}{{ __('investigations.is_investigation_available') }}{{ __('investigations.chart_of_account_name') }}
    -

    {{ $investigation->name }}

    - {{ Form::text('name[]', $investigation->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    {{ Form::select('category[]',$investigation_categories,$investigation->category,['class' => 'form-control compulsory', 'required']) }}{{ Form::text('normal_ranges[]', $investigation->normal_ranges, ['class' => 'form-control']) }}{{ Form::text('minimum[]', $investigation->minimum, ['class' => 'form-control']) }}{{ Form::text('sample_container[]', $investigation->sample_container, ['class' => 'form-control']) }}{{ Form::number('non_insured_price[]', $investigation->non_insured_price, ['class' => 'form-control']) }}{{ Form::number('insured_price[]', $investigation->insured_price, ['class' => 'form-control']) }}{{ Form::textArea('comments[]', $investigation->comments, ['class'=>'form-control', 'rows' => 2]) }}{{ Form::text('lab_time[]', $investigation->lab_time, ['class' => 'form-control']) }}{{ Form::select('insurance_coverage[]', [1 => 'Yes', 0 => 'No'], $investigation->insurance_coverage, ['class' => 'form-control']) }}{{ Form::select('available[]', [1 => 'Yes', 0 => 'No'], $investigation->available, ['class' => 'form-control']) }}{{ Form::select('account_id[]',$chart_of_accounts,$investigation->account_id,['class' => 'form-control compulsory']) }}
    -
    - - {{ Form::button(__('investigations.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('investigations.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    - -@include('investigations::investigations.menu') -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/edit/hmis-options.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/edit/hmis-options.blade.php deleted file mode 100755 index a409457c..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/edit/hmis-options.blade.php +++ /dev/null @@ -1,197 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('investigations.edit_investigation') }}

    -
    - -
    - -@include('investigations::investigations.menu') - -
    -
    - - @include('flash::message') -
    - {{ Form::model($investigations, ['method' => 'POST', 'route' => ['investigations.update.hmis.options']]) }} - -
    - - - - - - - - - - - - - @php - $counter = 0; - @endphp - @foreach($investigations as $investigation) - - - - - @php - $hmis_no_outpatient_array = explode(",", $investigation->hmis_no_outpatient); - $hmis_outpatient_category_array = explode(",", $investigation->hmis_category); - @endphp - - - - - - - @php - $counter++; - @endphp - @endforeach - -
    {{ __('investigations.investigation_name') }}{{ __('investigations.hmis_category_out_patient_number') }}{{ __('investigations.hmis_category_out_patient') }}{{ __('investigations.hmis_category_in_patient_number') }}{{ __('investigations.hmis_category_in_patient') }}
    -

    {{ $investigation->name }}

    - {{ Form::text('name[]', $investigation->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    {{ Form::text('hmis_no_outpatient[]', $investigation->hmis_no_outpatient, ['class' => 'form-control','placeholder' => '']) }} - @if(count($hmis_no_outpatient_array) > 0) - - @for($i=0; $i < 1; $i++) - {{ Form::select('hmis_category[]', $hmis_categories, isset($hmis_outpatient_category_array[$i]) ? $hmis_outpatient_category_array[$i] : "", ['class' => 'form-control']) }} - @endfor - @endif - - @php - $inpatient_option =$investigation->hmis_category_inpatient; - $inpatient_other = array_filter($inpatient_hmis_categories, function ($item) use ($inpatient_option) { - return $item['id'] !== $inpatient_option; - }); - $inpatient_selected = array_filter($inpatient_hmis_categories, function ($item) use ($inpatient_option) { - return $item['id'] == $inpatient_option; - }); - $categories_option = $investigation->hmis_no_inpatient; - $selected_hmis_categories_option=array_filter($inpatient_hmis_category_options, function ($item) use ($categories_option) { - return $item['id'] == $categories_option; - }); - $other_hmis_categories_options= array_filter($inpatient_hmis_category_options, function ($item) use ($categories_option) { - return $item['id'] != $categories_option; - }); - @endphp - {{-- {{ Form::text('hmis_no_inpatient[]', $investigation->hmis_no_inpatient, ['class' => 'form-control']) }} --}} - -
    - -
    - {{-- {{ Form::select('hmis_category_inpatient[]', $hmis_categories_ip, $investigation->hmis_category_inpatient, ['class' => 'form-control']) }} --}} - -
    -
    -
    - - {{ Form::button(__('investigations.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('investigations.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    - -@include('investigations.menu') -@endsection - -@push('scripts') - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/edit_investigation_specimen.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/edit_investigation_specimen.blade.php deleted file mode 100755 index 052cc04e..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/edit_investigation_specimen.blade.php +++ /dev/null @@ -1,175 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('investigations.edit_lab_specimen') }}

    -
    -
    - -
    -
    - -
    -
    -
    - - - - - - - - - - - - - - - - - -
    {{ __('investigations.patient_names') }} - {{ get_full_name($ordered_investigation->patient_id, 'id', 'first_name', 'last_name', 'patients') }} -
    {{ __('investigations.age') }}/{{ __('investigations.gender') }} - {{ get_patients_age(get_name($ordered_investigation->patient_id, 'id', 'date_of_birth', 'patients')) }} - / - {{ get_name($ordered_investigation->patient_id, 'id', 'gender', 'patients') == 1 ? "Male" : "Female" }} -
    {{ __('investigations.patient_number') }}{{ get_name($ordered_investigation->patient_id, 'id', 'number', 'patients') }}
    {{ __('investigations.lab_number') }}{{ sprintf("%05u", $ordered_investigation->id) }}
    -
    -
    - - - - - - - - - - - - - - - - - -
    {{ __('investigations.doctor') }}{{ get_full_name($ordered_investigation->created_by, 'id', 'first_name', 'last_name', 'users') }}
    {{ __('investigations.hospital_unit') }} - @if($ordered_investigation->inpatient == 1) - {{ get_ward_name($ordered_investigation->patient_id, $ordered_investigation->episode_id) }} - @else - OPD - @endif -
    {{ __('investigations.requested') }}{{ streamline_date_time($ordered_investigation->created_at) }}
    {{ __('investigations.received') }}{{ streamline_date_time($ordered_investigation->request_received_date) }}
    -
    -
    -
    - {{ getDNS1DBarcodePNG($ordered_investigation->id) }} -

    {{ sprintf("%04u", $ordered_investigation->id) }}

    -
    -
    -
    - -
    - - @php - $specimens_array = explode(",", $ordered_investigation->specimen); - $status_array = explode(",", $ordered_investigation->specimen_status); - $reason_array = explode(",", $ordered_investigation->specimen_reason); - $counter = 0; - @endphp - - {{ Form::open(['route' => 'investigations.save_investigation_specimen']) }} - - {{ Form::hidden('id', $ordered_investigation->id) }} -
    -
    -

    {{ __('investigations.specimen') }}

    -
    -
    -

    {{ __('investigations.status') }}

    -
    -
    -

    {{ __('investigations.reason') }}

    -
    -
    -
    - @for($i = 0; $i < count($specimens_array); $i++) -
    -
    -
    - {{ Form::select('specimen[]', $specimen, $specimens_array[$i], ['class' => 'form-control modal_specimen', 'id' => 'modal_specimen']) }} -
    -
    -
    -
    - {{ Form::select('status[]', [0 => '--select--', 1 => __('investigations.taken'), 2 => __('investigations.not_taken'), 3 => __('investigations.rejected')], $status_array[$i], ['class' => 'form-control modal_status', 'id' => 'modal_status']) }} -
    -
    -
    -
    - {{ Form::textarea('reason[]', $reason_array[$i], ['class' => 'form-control modal_reason', 'rows' => 2]) }} -
    -
    - -
    - @php $counter++; @endphp - @endfor - - {{ __('investigations.specimen') }} - - {{ Form::close() }} -
    - -
    -
    - {{ Form::select('specimen[]', $specimen, null, ['class' => 'form-control modal_specimen', 'id' => 'modal_specimen']) }} -
    -
    - {{ Form::select('status[]', [0 => '--select--', 1 => 'Taken', 2 => 'Not Taken', 3 => 'Rejected'], null, ['class' => 'form-control modal_status', 'id' => 'modal_status']) }} -
    -
    - {{ Form::textarea('reason[]', '', ['class' => 'form-control modal_reason', 'rows' => 2]) }} -
    - -
    -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/edit_specialised_variables_ranking.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/edit_specialised_variables_ranking.blade.php deleted file mode 100755 index bb123c31..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/edit_specialised_variables_ranking.blade.php +++ /dev/null @@ -1,85 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('investigations.edit_investigation') }}

    -
    - -
    - - @include('investigations::investigations.menu') - -
    -
    -
    -
    -
    - - {{ Form::open(['route' => 'investigations.save_specialised_variables_ranking' , 'data-toggle' => 'validator']) }} - - {{ Form::hidden('inv_id', $id)}} - -
    -
    -
    -

    {{ __('investigations.specialised_variables_ranking') }} {{ get_name($id, 'id', 'name', 'investigations') }}

    -
    -
    - - - - - - - - - @foreach($specialized_variables as $record) - - - {{ Form::hidden('spec_id[]', $record->id)}} - - - @endforeach - -

    {{ __('investigations.variable_name') }}

    {{ __('investigations.ranking_print_order') }}

    {{ $record->name }}{{ Form::number('ranking[]', $record->ranking, ['class' => 'form-control ranking', 'onfocus' => 'this.oldvalue = this.value', 'id' => $record->id]) }}
    -
    - {{ Form::button(__('investigations.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('investigations.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} -
    -
    -
    - {{ Form::close() }} -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/historical_labs.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/historical_labs.blade.php deleted file mode 100755 index 1f895c0f..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/historical_labs.blade.php +++ /dev/null @@ -1,131 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('investigations.historical_investigations') }}

    -
    - -
    - -
    - {{ Form::open(['method'=>'post','route' => 'investigations.historical_labs']) }} - - {{ Form::hidden('patient_id', 0, ['id' => 'patient_id']) }} - -
    -
    - {{ Form::label('search_patient', 'Search By Patient') }} -
    - -
    -
    - -
    -
    - {{ Form::submit(__('investigations.search'), ['class'=>'btn btn-success pull-right']) }} -
    -
    -
    - {{ Form::close() }} -
    - -
    - - @if($search_text != "") -

    -
    - @endif - -
    - - - - - - - - - - - - @foreach($patients as $patient) - - - - - - - - @endforeach - @if(count($patients) <= 0) - - - - @endif - -
    {{ __('investigations.patient_number') }}{{ __('investigations.patient_names') }}{{ __('investigations.gender') }}{{ __('investigations.phone') }}{{ __('investigations.action') }}
    - {{ $patient->number }} - - {!! insurance_flag($patient->patient_id) !!} - - @if($patient->gender == 1) - {{ __('investigations.male') }} - @elseif($patient->gender == 2) - {{ __('investigations.female') }} - @elseif($patient->gender == 3) - {{ __('investigations.other') }} - @endif - - {{ $patient->phone }} - - {{ __('investigations.historical_results') }} -
    - {{ __('investigations.no_historical_records') }} -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/imaging_historical_results.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/imaging_historical_results.blade.php deleted file mode 100755 index e5a977f4..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/imaging_historical_results.blade.php +++ /dev/null @@ -1,128 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('investigations.imaging_historical_results') }}

    -
    -
    - -
    -
    - -
    - {{ Form::open(['method'=>'post','route' => 'investigations.imaging_historical_results']) }} - - {{ Form::hidden('patient_id', 0, ['id' => 'patient_id']) }} - -
    -
    - {{ Form::label('search_patient', 'Search By Patient') }} -
    - -
    -
    - -
    -
    - {{ Form::submit(__('investigations.search'), ['class'=>'btn btn-success pull-right']) }} -
    -
    -
    - {{ Form::close() }} -
    - -
    - @if($search_text != "") -

    -
    - @endif -
    - - - - - - - - - - - - @foreach($patients as $patient) - - - - - - - - @endforeach - @if(count($patients) <= 0) - - - - @endif - -
    {{ __('investigations.patient_number') }}{{ __('investigations.patient_names') }}{{ __('investigations.gender') }}{{ __('investigations.phone') }}{{ __('investigations.action') }}
    - {{ $patient->number }} - - {!! insurance_flag($patient->patient_id) !!} - - @if($patient->gender == 1) - {{ __('investigations.male') }} - @elseif($patient->gender == 2) - {{ __('investigations.female') }} - @elseif($patient->gender == 3) - {{ __('investigations.other') }} - @endif - - {{ $patient->phone }} - - {{ __('investigations.historical_results') }} -
    - {{ __('investigations.no_historical_records') }} -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/inactive.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/inactive.blade.php deleted file mode 100755 index a7a077cf..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/inactive.blade.php +++ /dev/null @@ -1,109 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('investigations.activate_investigations') }}

    -
    -
    - -
    -
    - -@include('investigations::investigations.menu') - -
    -
    - - @include('flash::message') -
    -
    - - - - - - - - - - - - - - - - - - @foreach($investigations as $investigation) - - - - - - - - - - - - - - @endforeach - -
    {{ __('investigations.investigation_name') }}{{ __('investigations.normal_ranges') }}{{ __('investigations.minimum') }}{{ __('investigations.sample_container') }}{{ __('investigations.non_insured_price') }}{{ __('investigations.insured_price') }}{{ __('investigations.comments') }}{{ __('investigations.lab_time') }}{{ __('investigations.category') }}{{ __('investigations.is_investigation_available') }}
    {{ $investigation->name }}{{ $investigation->normal_ranges }}{{ $investigation->minimum }}{{ $investigation->sample_container }}{{ $investigation->non_insured_price }}{{ $investigation->insured_price }}{{ $investigation->comments }}{{ $investigation->lab_time }}{{ isset($investigation_categories[$investigation->category]) ? $investigation_categories[$investigation->category] : "Not Set" }} - @if ($investigation->available) - {{ __('investigations.yes') }} - @else - {{ __('investigations.no') }} - @endif - - {{ Form::model($investigation->id ,['method' => 'POST', 'route' => ['investigations.activate', $investigation->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/incoming_imaging.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/incoming_imaging.blade.php deleted file mode 100755 index 60e42074..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/incoming_imaging.blade.php +++ /dev/null @@ -1,450 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    - @if($imaging_type == 'Imaging') - {{ __('investigations.incoming_radiology_investigations') }} - @elseif($imaging_type == 'Cardio') - {{ __('investigations.incoming_cardiology_investigations') }} - @elseif($imaging_type == 'Ultrasound') - {{ __('investigations.incoming_ultrasound_investigations') }} - @elseif($imaging_type == 'Ultrasound_Obstetric') - {{ __('investigations.incoming_obstetric_ultrasound_investigations') }} - @endif -

    -
    - -
    - -
    - {{ Form::open(['url' => '/investigations/incoming_imaging/' . $imaging_type, 'data-toggle' => 'validator']) }} - - {{ Form::hidden('patient_id', 0, ['id' => 'patient_id']) }} - -
    -
    -
    - - -
    -
    - - - -
    - {{ Form::label('search_patient', 'Search By Patient') }} -
    - -
    -
    - -
    -
    - {{ Form::submit(__('investigations.search'), ['class'=>'btn btn-success pull-right']) }} -
    -
    -
    - {{ Form::close() }} -
    - -
    - - @include('flash::message') - - @if($search_text != "") -

    -    - @if (count($urgent_incomings) > 0) - - @endif -

    -
    - @endif - -
    - -
    -
    -
    -
    - - - - - - - - - - - - - @foreach($incomings as $incoming) - - - - - - - @if($incoming->inpatient == 0 && $incoming->inpatient_bill_generated == 0 && $incoming->payment_status == 0 && !can_investigations_be_performed($incoming->patients_category_id)) - - @else - - - - @endif - - @endforeach - @if(count($incomings) <= 0) - - - - @endif - -
    {{ __('investigations.patient_names') }}{{ __('investigations.requested') }}{{ __('investigations.source') }}{{ __('investigations.payment') }}{{ __('investigations.request') }}{{ __('investigations.actions') }}
    - {!! insurance_flag($incoming->patient_id) !!} - - ({{ $incoming->patient_number }}) - ({{ $patient_categories[$incoming->patients_category_id] ?? '' }}) - {{ streamline_date_time_short($incoming->created_at) }} - @if($incoming->inpatient == 1 || $incoming->inpatient_bill_generated == 1) - {{ get_ward_name($incoming->patient_id, $incoming->episode_id) }} - @else - OPD - @endif - - @if($incoming->payment_status == 0) - @if($incoming->inpatient_bill_generated == 1) - - @else - - @endif - @else - - @endif - {{ count(explode(",", $incoming->investigation_id)) }} {{ __('investigations.tests') }} - {{ __('investigations.patient_has_not_paid_for_ordered_investigations') }} - - @if($imaging_type == 'Ultrasound_Obstetric') - {{ Form::open(['route' => 'investigations.ultrasound_obstetric_report']) }} - @else - {{ Form::open(['route' => 'investigations.ordered_results']) }} - @endif - - {{ Form::hidden('order_id',$incoming->id) }} - {{ Form::hidden('order_type', $imaging_type) }} - {{ Form::hidden('patient_id',$incoming->patient_id) }} - {{ Form::hidden('episode_id',$incoming->episode_id) }} - - {{ Form::close() }} - - {{ __('investigations.select_patient') }} - - {{ __('investigations.print_request') }} -
    {{ __('investigations.no_requests_available') }}
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - @foreach($results as $result) - - - - - - - - - - @if($result->inpatient == 0 && $result->inpatient_bill_generated == 0 && $result->payment_status == 0 && !can_investigations_be_performed($result->patients_category_id)) - - @else - - @endif - - @endforeach - @if(count($results) <= 0) - - - - @endif - -
    {{ __('investigations.patient_names') }}{{ __('investigations.requested') }}Performed At{{ __('investigations.turn_around_time') }}{{ __('investigations.source') }}{{ __('investigations.payment') }}{{ __('investigations.request') }}{{ __('investigations.done_by') }}{{ __('investigations.actions') }}
    - {!! insurance_flag($result->patient_id) !!} - - ({{ $result->patient_number }}) - ({{ $patient_categories[$result->patients_category_id] ?? '' }}) - - {{ streamline_date_time_short($result->created_at) }} - {{ $result->results_created_at ? streamline_date_time_short($result->results_created_at) : "N/A" }}{{ \Carbon\Carbon::parse($result->results_created_at)->diffForHumans(\Carbon\Carbon::parse($result->created_at)) }} request - @if($result->inpatient == 1 || $result->inpatient_bill_generated == 1) - {{ get_ward_name($result->patient_id, $result->episode_id) }} - @else - OPD - @endif - - @if($result->payment_status == 0) - @if($result->inpatient_bill_generated == 1) - - @else - - @endif - @else - - @endif - {{ count(explode(",", $result->investigation_id)) }} {{ __('investigations.tests') }} - {{ get_full_name($result->created_by, "id", "first_name", "last_name", "users") }} - - {{ __('investigations.patient_has_not_paid_for_ordered_investigations') }} - - @if($imaging_type == 'Ultrasound_Obstetric') - {{ __('investigations.view_results') }} - @else - {{ __('investigations.view_results') }} - @endif -
    {{ __('investigations.no_requests_available') }}
    -
    -
    - @if (count($urgent_incomings) > 0) -
    -
    - - - - - - - - - - - - - @foreach($urgent_incomings as $urgent_incoming) - - - - - - - @if($urgent_incoming->inpatient == 0 && $urgent_incoming->inpatient_bill_generated == 0 && $urgent_incoming->payment_status == 0 && !can_investigations_be_performed($urgent_incoming->patients_category_id)) - - @else - - - - @endif - - @endforeach - -
    {{ __('investigations.patient_names') }}{{ __('investigations.requested') }}{{ __('investigations.source') }}{{ __('investigations.payment') }}{{ __('investigations.request') }}{{ __('investigations.actions') }}
    - {!! insurance_flag($urgent_incoming->patient_id) !!} - - ({{ $urgent_incoming->patient_number }}) - ({{ $patient_categories[$urgent_incoming->patients_category_id] ?? '' }}) - {{ streamline_date_time_short($urgent_incoming->created_at) }} - @if($urgent_incoming->inpatient == 1 || $urgent_incoming->inpatient_bill_generated == 1) - {{ get_ward_name($urgent_incoming->patient_id, $urgent_incoming->episode_id) }} - @else - OPD - @endif - - @if($urgent_incoming->payment_status == 0) - @if($urgent_incoming->inpatient_bill_generated == 1) - - @else - - @endif - @else - - @endif - {{ count(explode(",", $urgent_incoming->investigation_id)) }} {{ __('investigations.tests') }} - {{ __('investigations.patient_has_not_paid_for_ordered_investigations') }} - - @if($imaging_type == 'Ultrasound_Obstetric') - {{ Form::open(['route' => 'investigations.ultrasound_obstetric_report']) }} - @else - {{ Form::open(['route' => 'investigations.ordered_results']) }} - @endif - - {{ Form::hidden('order_id',$urgent_incoming->id) }} - {{ Form::hidden('order_type', $imaging_type) }} - {{ Form::hidden('patient_id',$urgent_incoming->patient_id) }} - {{ Form::hidden('episode_id',$urgent_incoming->episode_id) }} - - {{ Form::close() }} - - {{ __('investigations.select_patient') }} - - {{ __('investigations.print_request') }} -
    -
    -
    - @endif -
    -
    -
    -
    - - -@endsection - -@push('scripts') - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/incoming_labs.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/incoming_labs.blade.php deleted file mode 100755 index df8258ff..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/incoming_labs.blade.php +++ /dev/null @@ -1,492 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('investigations.incoming_lab_investigations') }}

    -
    - -
    - -
    - {{ Form::open(['method'=>'post','route' => 'investigations.incoming_labs']) }} - - {{ Form::hidden('patient_id', 0, ['id' => 'patient_id']) }} - -
    -
    -
    - - -
    -
    - - - -
    - {{ Form::label('search_patient', 'Search By Patient') }} -
    - -
    -
    - -
    -
    - {{ Form::submit(__('investigations.search'), ['class'=>'btn btn-success pull-right']) }} -
    -
    -
    - {{ Form::close() }} -
    - -
    - @include('flash::message') - - @if($search_text != "") -

    - - @if (count($urgent_incomings) > 0) -    - @endif -

    -
    - @endif - -
    -
    -
    - -
    -
    -
    -
    - - - - - - - - - - - - - - - @foreach($incomings as $incoming) - - - - - - - @if($incoming->inpatient == 0 && $incoming->inpatient_bill_generated == 0 && $incoming->payment_status == 0 && !can_investigations_be_performed(get_name($incoming->patient_id, 'id', 'category_id', 'patients'))) - - @else - - - - @endif - - @endforeach - @if(count($incomings) <= 0) - - - - @endif - -
    {{ __('investigations.time') }}{{ __('investigations.patient_names') }}{{ __('investigations.patient_category') }}{{ __('investigations.source') }}{{ __('investigations.payment') }}{{ __('investigations.actions') }}
    - {{ streamline_date_time_short($incoming->created_at) }} - {!! insurance_flag($incoming->patient_id) !!} ({{ get_name($incoming->patient_id, 'id', 'number', 'patients') }}){{ patient_category($incoming->patient_id) }} - @if($incoming->inpatient == 1 || $incoming->inpatient_bill_generated == 1) - {{ get_ward_name($incoming->patient_id, $incoming->episode_id) }} - @else - OPD - @endif - - @if($incoming->payment_status == 0) - @if($incoming->inpatient_bill_generated == 1) - {{ __('investigations.inpatient_bill_generated') }} - @else - {{ __('investigations.not_paid') }} - @endif - @else - {{ __('investigations.paid') }} - @endif - - {{ __('investigations.patient_has_not_paid_for_ordered_investigations') }} - - {{ __('investigations.receive_request') }} - - {{ __('investigations.select_patient') }} - - {{ __('investigations.print_request') }} -
    {{ __('investigations.no_requests_available') }}
    -
    -
    - @if (count($urgent_incomings)>0) -
    -
    - - - - - - - - - - - - - - - @foreach($urgent_incomings as $urgent_incoming) - - - - - - - @if($urgent_incoming->inpatient == 0 && $urgent_incoming->inpatient_bill_generated == 0 && $urgent_incoming->payment_status == 0 && !can_investigations_be_performed(get_name($urgent_incoming->patient_id, 'id', 'category_id', 'patients'))) - - @else - - - - @endif - - @endforeach - -
    {{ __('investigations.time') }}{{ __('investigations.patient_names') }}{{ __('investigations.patient_category') }}{{ __('investigations.source') }}{{ __('investigations.payment') }}{{ __('investigations.actions') }}
    - {{ streamline_date_time_short($urgent_incoming->created_at) }} - {!! insurance_flag($urgent_incoming->patient_id) !!} ({{ get_name($urgent_incoming->patient_id, 'id', 'number', 'patients') }}){{ patient_category($urgent_incoming->patient_id) }} - @if($urgent_incoming->inpatient == 1 || $urgent_incoming->inpatient_bill_generated == 1) - {{ get_ward_name($urgent_incoming->patient_id, $urgent_incoming->episode_id) }} - @else - OPD - @endif - - @if($urgent_incoming->payment_status == 0) - @if($urgent_incoming->inpatient_bill_generated == 1) - {{ __('investigations.inpatient_bill_generated') }} - @else - {{ __('investigations.not_paid') }} - @endif - @else - {{ __('investigations.paid') }} - @endif - - {{ __('investigations.patient_has_not_paid_for_ordered_investigations') }} - - {{ __('investigations.receive_request') }} - - {{ __('investigations.select_patient') }} - - {{ __('investigations.print_request') }} -
    -
    -
    - @endif -
    -
    -
    -
    -
    -
    - - -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/index.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/index.blade.php deleted file mode 100755 index a698fbc4..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/index.blade.php +++ /dev/null @@ -1,240 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('investigations.investigations') }}

    -
    -
    - -
    -
    - - @include('investigations::investigations.menu') - -
    -
    - - @include('flash::message') -
    -
    - - - - - - - - - - - - - - - - - - - - - @foreach($investigations as $investigation) - - - - - - - - - - @php - $hmis_no_outpatient_array = explode(",", $investigation->hmis_no_outpatient); - $hmis_outpatient_category_array = explode(",", $investigation->hmis_category); - @endphp - - - - - - - - - @endforeach - -
    {{ __('investigations.investigation_name') }}{{ __('investigations.normal_ranges') }}{{ __('investigations.minimum') }}{{ __('investigations.sample_container') }}{{ __('investigations.non_insured_price') }}{{ __('investigations.comments') }}{{ __('investigations.lab_time') }}{{ __('investigations.category') }}{{ __('investigations.hmis_category_out_patient_number') }}{{ __('investigations.hmis_category_out_patient') }}{{ __('investigations.hmis_category_in_patient_number') }}{{ __('investigations.hmis_category_in_patient') }}
    - {{ $investigation->name }} - - @if(!$investigation->available) ({{ __('investigations.not_available') }}) @endif - - @if($investigation->range_type == 1) - View Reference Ranges - @else - {{ $investigation->normal_ranges }} - @endif - {{ $investigation->minimum }}{{ $investigation->sample_container }}{{ $investigation->non_insured_price }}{{ $investigation->comments }}{{ $investigation->lab_time }}{{ $investigation_categories[$investigation->category] ?? "Not Set" }}{{ $investigation->hmis_no_outpatient }} - @if(count($hmis_no_outpatient_array) > 0) -
      - @for($i=0; $i < count($hmis_outpatient_category_array); $i++) -
    • {{ $hmis_categories[$hmis_outpatient_category_array[$i]] ?? "" }}
    • - @endfor -
    - @endif -
    {{ $investigation->hmis_no_inpatient }}{{ $investigation_categories[$investigation->hmis_category_inpatient] ?? "" }} - {{ __('investigations.edit') }} - - @if (!in_array($investigation->id, $ordered_investigations_ids)) - {{ Form::model($investigation->id ,['method' => 'DELETE', 'route' => ['investigations.destroy', $investigation->id]]) }} - - {{ Form::close() }} - @endif -
    -
    - - {{ $investigations->links() }} -
    -
    -
    - - -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/investigations_review.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/investigations_review.blade.php deleted file mode 100755 index 90ce1c39..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/investigations_review.blade.php +++ /dev/null @@ -1,444 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('investigations.order_investigations') }}

    -
    - -
    - -
    -
    - @include('patients::allergies.header') -
    -
    -
    - -
    - - @include('flash::message') - - @foreach ($errors->all() as $error) -
    {{ $error }}
    - @endforeach - - @if (count($chronic_array) > 0) - - - - @foreach ($chronic_array as $chronic_inv) - @if(isset($investigations[$chronic_inv->investigation_id])) - - - - - @endif - @endforeach - -
    Patient's Chronic Investigations
    {{ $investigations[$chronic_inv->investigation_id] }}
    - -
    - @endif - - {{ Form::open(['route' => 'investigations.submit_ordered_investigations']) }} - - @php $patient_insurance_status = patient_insurance_status($patient_id); @endphp - - {{ Form::hidden('patient_id', $patient_id, ['id' => 'patient_id']) }} - {{ Form::hidden('episode_id', $episode_id, ['id' => 'episode_id']) }} - {{ Form::hidden('patient_insurance_status', $patient_insurance_status, ['id' => 'patient_insurance_status'])}} - -
    - - - - - - - - @php - $counter = 0; - $total_selling_price = 0; - @endphp - - - @if(count($ordered_investigations) > 0) - @foreach($ordered_investigations as $ordered_investigation) - {{ Form::hidden('order_id[]', $ordered_investigation->id) }} - - @php - $investigations_ids = explode(",", $ordered_investigation->investigation_id); - $urgent_ids_array = explode(",", $ordered_investigation->urgent_ids); - $order_comments_array = explode(",", $ordered_investigation->order_comments); - $eye_array = explode(",", $ordered_investigation->eye); - @endphp - - @for($i = 0; $i < count($investigations_ids); $i++) - - - - @php $counter++; @endphp - @endfor - @endforeach - @else - - - - @endif - - @if( Auth::user()->can('add-row-on-prescription')) - - - - @endif -
    -
    -
    {{ __('investigations.investigation') }}
    -
    {{ __('investigations.lab_comments') }}
    -
    {{ __('investigations.order_comments') }}
    - -
    {{ __('investigations.urgent') }}
    -
    -
    -
    -
    -
    -
    -
    - {{ Form::select('investigations_id[]', $investigations_to_order, $investigations_ids[$i], ['class' => 'form-control compulsory required investigations_id_class', 'id' => 'investigations_id_' . $counter, 'required']) }} -
    - -
    - @if (is_chi_enabled()) - @if (is_patient_item_covered($patient_id, $investigations_ids[$i], 3)) -   
    Covered by CHI - @else -   
    Not covered by CHI - @endif - @endif -
    -
    - -
    -
    - - {{ Form::select('eye[]', [2 => 'Both', 0 => 'Left', 1 => 'Right'], $eye_array[$i] ?? 2, ['class' => 'form-control compulsory', 'required', 'onchange' => 'eye_select(this.value, ' . $counter . ')']) }} -
    -
    - -
    -
    {{ get_name($investigations_ids[$i], 'id', 'comments', 'investigations') }}
    -
    - -
    -
    -
    - -
    -
    -
    - - @php - if($patient_insurance_status == 1) { - $selling_price = get_item_insurance_co_payment($patient_id, $investigations_ids[$i], 3, false, 0); - } else { - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_id) { - $selling_price = get_price_list_category_price($price_list_id, 2, $investigations_ids[$i]); - } else { - $selling_price = get_name($investigations_ids[$i], 'id', 'non_insured_price', 'investigations'); - } - } - - $selling_price = $selling_price * ((isset($eye_array[$i]) && $eye_array[$i] == 2) ? 2 : 1); - $total_selling_price += $selling_price; - @endphp - - - -
    - -
    - -
    -
    - @if($counter == 0) - - @else - - @endif -
    -
    -
    -
    -
    -
    -
    -
    - -
    - -
    -
    - -
    -
    - - -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - - - -
    - -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - -
    -
    -
    -
    - -
    -
    -
    -
    -
    - -

    Total: {{ ugandan_shillings($total_selling_price) }}

    - -
    - {{ Form::button(__('investigations.submit_requests'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'submit_button','name'=>'submit_button','value'=>'submit_button']) }} - {{ Form::button(__('investigations.print_requests'),['type'=>'submit','class'=>'btn btn-primary waves-effect waves-light m-r-10', 'id'=>'print_request','name'=>'submit_button','value'=>'print_request']) }} -
    - -
    -@endsection - -@push('scripts') - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/investigations_review_ultrasound_obstetric.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/investigations_review_ultrasound_obstetric.blade.php deleted file mode 100755 index 0b7053ee..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/investigations_review_ultrasound_obstetric.blade.php +++ /dev/null @@ -1,137 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('investigations.obstetric_ultrasound_request_template') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    -
    - -
    -
    -
    - {{ Form::open(['route' => 'investigations.submit_ordered_obstetric_investigations']) }} - -
    - {{ Form::label('investigations_id', __('investigations.investigation')) }} - {{ Form::select('investigations_id', $investigations, '', ['class' => 'form-control compulsory investigations', 'required']) }} -
    - -
    - {{ Form::label('comment', __('investigations.order_comment')) }} - {{ Form::textArea('comment', '', ['class'=>'form-control', 'rows' => 5]) }} -
    - - {{ Form::button(__('investigations.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'submit_button']) }} - - {{ Form::close() }} -
    -
    -
    - - - - - - - - - @if($anc_details) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @else - - - - @endif - -
    {{ __('investigations.item') }}{{ __('investigations.value') }}
    {{ __('investigations.gravida') }}{{ $anc_details->gravida }}
    {{ __('investigations.para') }}{{ $anc_details->para }}
    {{ __('investigations.abortions') }}{{ $anc_details->abortion }}

    {{ __('investigations.this_pregnancy') }}

    {{ __('investigations.lmp') }} - @if($anc_details->lmp == 'N/A') - N/A - @else - {{ streamline_date($anc_details->lmp) }} - @endif -
    {{ __('investigations.accuracy') }} - @if($anc_details->accuracy == 'N/A') - N/A - @else - {{ get_name($anc_details->accuracy, 'id', 'name', 'ante_natal_clinic_accuracies') }} - @endif -
    {{ __('investigations.edd') }} - @if($anc_details->edd == 'N/A') - N/A - @else - {{ streamline_date($anc_details->edd) }} - @endif -
    {{ __('investigations.clinic') }}{{ get_name(get_name($episode_id, 'id', 'clinic_id', 'patient_episodes'), 'id', 'name', 'clinics') }}
    {{ __('investigations.requested_by') }}{{ get_full_name(Auth::user()->id, 'id', 'first_name', 'last_name', 'users') }}
    {{ __('investigations.phone') }}{{ get_name(Auth::user()->id, 'id', 'phone', 'users') }}
    {{ __('investigations.information_not_available') }}
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/menu.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/menu.blade.php deleted file mode 100755 index 539d6909..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/menu.blade.php +++ /dev/null @@ -1,9 +0,0 @@ - \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/ordered_results.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/ordered_results.blade.php deleted file mode 100755 index ec4e4a29..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/ordered_results.blade.php +++ /dev/null @@ -1,898 +0,0 @@ -@extends('layouts.main') - -@push('styles') -@endpush - -@section('content') -
    -
    -

    {{ __('investigations.ordered') }} {{ $order_type }} {{ __('investigations.investigations') }}

    -
    - -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'investigations.save_ordered_results', 'files' => true, 'enctype'=>'multipart/form-data']) }} - - {{-- {{ Form::open(['route' => 'investigations.ordered_results']) }} --}} - - {{ Form::hidden('order_id',$order_id) }} - - {{ Form::hidden('order_type', $order_type) }} - - {{ Form::hidden('patient_id',$patient_id) }} - - {{ Form::hidden('episode_id',$episode_id) }} - - @php - $right_eye_diagnoses = explode(',',get_name($episode_id, 'episode_id', 'right_eye_diagnosis', 'eye_clinic_main_exam')); - $left_eye_diagnoses = explode(',',get_name($episode_id, 'episode_id', 'left_eye_diagnosis', 'eye_clinic_main_exam')); - $is_eye_module_enabled = is_eye_module_enabled() && is_patient_in_eye_clinic($episode_id); - @endphp - -
    -
    - - - - - - - - - - - -
    - @if($is_eye_module_enabled) - {{ __('patient_episode.left_eye_diagnosis') }} - @else - {{ __('investigations.primary_diagnosis') }} - @endif -
    - @if($is_eye_module_enabled) - @if(count($left_eye_diagnoses) > 0) -
      - @for($x = 0; $x < count($left_eye_diagnoses); $x++) -
    1. {{ isset($left_eye_diagnoses[$x]) ? get_name($left_eye_diagnoses[$x], 'id', 'name', 'diagnoses') : 'N/A' }}
    2. - @endfor -
    - @else - No Diagnosis - @endif - @else - {{ $primary_diagnosis != 'N/A' ? $primary_diagnosis : '' }} - @endif -
    -
    -
    - - - - - - - - - - - - @endforeach - @endif - - - -
    - @if($is_eye_module_enabled) - {{ __('patient_episode.right_eye_diagnosis') }} - @else - {{ __('investigations.other_diagnoses') }} - @endif -
    - @if($is_eye_module_enabled) - @if(count($right_eye_diagnoses) > 0) -
      - @for($x = 0; $x < count($right_eye_diagnoses); $x++) -
    1. {{ isset($right_eye_diagnoses[$x]) ? get_name($right_eye_diagnoses[$x], 'id', 'name', 'diagnoses') : 'N/A' }}
    2. - @endfor -
    - @else - No Diagnosis - @endif - @else - @foreach($other_diagnoses as $value) -
    - {{ $value['other'] != 'N/A' ? $value['other'] : '' }} -
    -
    -
    - - - - - - @if($order_type == 'Lab') - - - @endif - - - - - - - @foreach($results as $result) - - {{ Form::hidden('investigation_specialised_results_id[]', $result['investigation_specialised_results_id']) }} - - @if(in_array($result['id'], $investigations_with_specialised_variables)) - - {{ Form::hidden('id[]',$result['id']) }} - - - {{ Form::hidden('value[]',"") }} - {{ Form::hidden('comment[]',"") }} - - - - @if ($is_eye_module_enabled && isset($result['eye'])) -
    - - @if ($result['eye'] == '0') - Left Eye - @elseif ($result['eye'] == '1') - Right Eye - @elseif ($result['eye'] == '2') - Both Eyes - @endif - @endif - - @php - $specialised_variables = \Illuminate\Support\Facades\DB::table('investigation_specialised_variables')->whereNull('deleted_at')->where('investigation_id', $result['id'])->orderBy('ranking','asc')->get(); - @endphp - - @foreach($specialised_variables as $specialized_variable) - - - @if($order_type == 'Lab') - - - @endif - - - - - @endforeach - - - @else - - - @if($order_type == 'Lab') - - - @endif - - - - - @endif - @endforeach - -
    {{ __('investigations.investigation') }}{{ __('investigations.normal_ranges') }}{{ __('investigations.units') }}{{ __('investigations.order_comments') }}{{ __('investigations.results') }}{{ __('investigations.comments') }}
    - @if($result['insured'] == 1) - {{ $result['name'] }} - @else - {{ $result['name'] }} - @endif -
    - {{ Form::hidden('specialized_id[]', $specialized_variable->id) }} - {{ $specialized_variable->name }} - - @if($specialized_variable->range_type == 1) - {{ get_dynamic_normal_range_specialized($specialized_variable->id, get_patient_age_group($patient_id), get_name($patient_id, 'id', 'gender', 'patients')) }} - @else - {{ $specialized_variable->normal_ranges }} - @endif - - @if(get_name($specialized_variable->units, 'id', 'name', 'unit_of_measure') != "N/A") - {{ get_name($specialized_variable->units, 'id', 'name', 'unit_of_measure') }} - @endif - - {{ Form::textArea('specialized_value[]', (isset($result['value']) && isset($result['value'][$specialized_variable->id])) ? $result['value'][$specialized_variable->id] : '', ['class' => 'form-control compulsory', 'rows'=>'12', 'id' => 'invx_' . $specialized_variable->id]) }} - @if(does_investigation_have_template($specialized_variable->id, 1)) -
    - - @endif -
    - {{ Form::label('lab_result_document', __('investigations.lab_result_document')) }} - {{ Form::file('lab_result_document[]', null, ['id'=>'lab_result_doc_' . $specialized_variable->id]) }} - @if (!empty($result['document'])) -
    {{ $result['title'] }} - @endif -
    - {{ Form::textArea('specialized_comment[]', (isset($result['comment']) && isset($result['comment'][$specialized_variable->id])) ? $result['comment'][$specialized_variable->id] : '', ['class' => 'form-control','rows'=>'12']) }} - -
    - @if($result['insured'] == 1) - - {{ $result['name'] }} - - @else - - {{ $result['name'] }} - - @endif - - @if ($is_eye_module_enabled && isset($result['eye'])) -
    - - @if ($result['eye'] == '0') - Left Eye - @elseif ($result['eye'] == '1') - Right Eye - @elseif ($result['eye'] == '2') - Both Eyes - @endif - @endif - {{ Form::hidden('id[]',$result['id']) }} -
    - {{ $result['normal_range'] }} - - @if(get_name($result['units'], 'id', 'name', 'unit_of_measure') != "N/A") - {{ get_name($result['units'], 'id', 'name', 'unit_of_measure') }} - @endif - - {{ $result['order_comments'] }} - - @if($result['slug'] == 'echo') -
    -
    - -
    - -
    - {{ Form::hidden('value[]', $result['value'], ['class' => 'form-control compulsory', 'rows'=>'12']) }} - @else - {{ Form::textArea('value[]', $result['value'], ['class' => 'form-control compulsory', 'rows'=>'12', 'id'=>'inv_'.$result['id']]) }} - - @if(does_investigation_have_template($result['id'], 0)) -
    - - @endif -
    - {{ Form::label('lab_result_document', __('investigations.lab_result_document')) }} - {{ Form::file('lab_result_document[]', null, ['class' => 'form-control', 'id'=>'lab_result_doc_'.$result['id']]) }} - @if (!empty($result['document'])) -
    {{ $result['title'] }} - @endif - @endif -
    - @if ($result['slug'] != 'echo') - {{ Form::textArea('comment[]', $result['comment'], ['class' => 'form-control','rows'=>'12']) }} - @else - {{ Form::hidden('comment[]', $result['comment'], ['class' => 'form-control compulsory', 'rows'=>'12']) }} - @endif -
    - -
    - -
    -
    - - {{ __('investigations.investigations_ordered_by') }} - - -
    - - - {{ $doctor_name }} [ {{ $doctor_phone }} ] - -
    - -
    - -
    -
    - - {{ Form::close() }} -
    -
    -
    - - - - - - - - - -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/print/print-historical-results-labs.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/print/print-historical-results-labs.blade.php deleted file mode 100755 index b7a891d2..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/print/print-historical-results-labs.blade.php +++ /dev/null @@ -1,110 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Inpatient Bill - Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') -
    {{ __('investigations.lab_result_details') }}
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('investigations.patient_number') }}{{ $patient->number}}{{ __('investigations.patient_category') }}{{ get_name($patient->category_id, 'id', 'name', 'patient_categories') }}
    {{ __('investigations.patient_names') }}{{ $patient->first_name}} {{ $patient->last_name}}{{ __('investigations.residence') }}{{ patient_residence($patient_id) }}
    {{ __('investigations.age') }} - date_of_birth)->age; ?> {{ __('investigations.years') }} -
    {{ __('investigations.gender') }} - @if($patient->gender == 1) - {{ __('investigations.male') }} - @else - {{ __('investigations.female') }} - @endif - {{ __('investigations.printed_on') }}
    -
    - - - - - - @foreach($dates as $date) - - @endforeach - - - - - @for($i = 0; $i < count($invs_array); $i++) - - - @foreach($values[$i] as $value) - - @endforeach - - @endfor - -
    {{ __('investigations.investigation') }}{{ $date }}
    {{ get_name($invs_array[$i], 'id', 'name', 'investigations') }} - @if(get_name($invs_array[$i], 'id', 'type', 'investigations') == 1) - {{ __('investigations.refer_to_investigation_report') }} - @else - @if(!is_array($value) && !is_numeric($value)) - {{ $value }} - @endif - @endif -
    - -
    - - diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/print/print-lab-result-details.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/print/print-lab-result-details.blade.php deleted file mode 100755 index 7763d154..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/print/print-lab-result-details.blade.php +++ /dev/null @@ -1,291 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Inpatient Bill - Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') -
    {{ __('investigations.lab_result_details') }}
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - @php - $invs_results = DB::table('investigation_results')->where('investigation_id', $ordered_investigation->investigation_id) - ->where('patient_id', $ordered_investigation->patient_id) - ->where('episode_id', $ordered_investigation->episode_id) - ->first(); - - $user_id = $invs_results ? $invs_results->created_by : $ordered_investigation->request_received_by; - $performed_at = $invs_results ? streamline_date_time($invs_results->created_at) : "N/A"; - @endphp - - - - - - - - - - - - -
    {{ __('investigations.patient_number') }}{{ $patient->number}}{{ __('investigations.lab_number') }} - {{ $ordered_investigation->lab_number ?? $ordered_investigation->id }} -
    {{ __('investigations.patient_names') }}{{ ucwords($patient->first_name) }} {{ ucwords($patient->last_name) }}{{ __('investigations.hospital_unit') }} - @if($ordered_investigation->inpatient == 1) - {{ get_ward_name($ordered_investigation->patient_id, $ordered_investigation->episode_id) }} - @else - OPD - @endif -
    {{ __('investigations.age') }} - @php $dob = get_name($ordered_investigation->patient_id, 'id', 'date_of_birth', 'patients'); @endphp - {{ get_patients_age($dob, $ordered_investigation->created_at) }} - {{ __('investigations.requested') }}{{ streamline_date_time($ordered_investigation->created_at) }}
    {{ __('investigations.gender') }} - {{ get_name($ordered_investigation->patient_id, 'id', 'gender', 'patients') == 1 ? "Male" : "Female" }} - {{ __('investigations.received') }}{{ streamline_date_time($ordered_investigation->request_received_date) }}
    {{ __('investigations.patient_category') }} - {{ get_name($patient->category_id, 'id', 'name', 'patient_categories') }} - {{ __('investigations.performed_at') }}{{ $performed_at }}
    {{ __('investigations.residence') }}{{ patient_residence($patient->id) }}{{ __('investigations.doctor') }} - @php - $created_by = Streamline\Models\User::find($ordered_investigation->created_by); - - if ($ordered_investigation->ordered_by) { - $ordered_by_name = $ordered_investigation->ordered_by; - } elseif ($created_by && $created_by->hasRole('Doctors')) { - $ordered_by_name = get_full_name($ordered_investigation->created_by, 'id', 'first_name', 'last_name', 'users'); - } else { - $ordered_by_name = __('investigations.self_request'); - } - @endphp - {{ $ordered_by_name }} - {{--{{ getDNS1DBarcodePNG($ordered_investigation->id) }} -  {{ sprintf("%04u", $ordered_investigation->id) }}--}} -
    -
    - - -
    -
    - - - - - - - - @foreach($investigation_ids as $record) - - - - @endforeach - -
    {{ __('investigations.tests') }}
    {{ get_name($record, 'id', 'name', 'investigations') }}
    -
    -
    - - - - - - - - @php - $records = explode(",", $ordered_investigation->specimen); - $status_array = explode(",", $ordered_investigation->specimen_status); - @endphp - @for($i = 0; $i < count($records); $i++) - - - - - @endfor - -
    {{ __('investigations.specimens') }}
    {{ get_name($records[$i], 'id', 'name', 'laboratory_specimens') }} - @if ($status_array[$i] == 1) - {{ __('investigations.taken') }} - @elseif ($status_array[$i] == 2) - {{ __('investigations.not_taken') }} - @elseif ($status_array[$i] == 3) - {{ __('investigations.rejected') }} - @endif -
    -
    -
    - -
    -
    -
    -
    -
    - -
    -
    -
    {{ __('investigations.test_results') }}
    - - - - - - - - - - - - @foreach($results as $result) - @if($result['type'] == 0) - - - - - - - - @elseif($result['type'] == 1) - - - - - - - @php - $specialised_results = \Streamline\Models\InvestigationSpecialisedResult::where('id', $result['result'])->first(); - - if($specialised_results){ - $variable_id_array = explode(',', $specialised_results->specialised_variable_id); - $variable_value_array = explode(',', $specialised_results->value); - $variable_comment_array = explode(',', $specialised_results->comment); - } - @endphp - - @if($specialised_results) - @for($i = 0; $i < count($variable_id_array); $i++) - - - - - - - - @endfor - @endif - @endif - @endforeach - @if(count($results) < 1) - - @endif - -
    {{ __('investigations.investigation_name') }}{{ __('investigations.results') }}{{ __('investigations.normal_ranges') }}{{ __('investigations.unit') }}{{ __('investigations.comment') }}
    {{ $result['name'] }}{!! nl2br(e($result['result'])) !!}{{ $result['range'] }} - @if(get_name($result['units'], 'id', 'name', 'unit_of_measure') != "N/A") - {{ get_name($result['units'], 'id', 'name', 'unit_of_measure') }} - @endif - {!! nl2br(e($result['comment'])) !!}
    {{ $result['name'] }}
    {{ get_name($variable_id_array[$i], 'id', 'name', 'investigation_specialised_variables') }}{!! nl2br(e($variable_value_array[$i])) !!} - @if(get_name($variable_id_array[$i], 'id', 'range_type', 'investigation_specialised_variables') == 1) - {{ get_dynamic_normal_range_specialized($variable_id_array[$i], get_patient_age_group($patient->id), get_name($patient->id, 'id', 'gender', 'patients')) }} - @else - {{ get_name($variable_id_array[$i], 'id', 'normal_ranges', 'investigation_specialised_variables') }} - @endif - - @if(get_name(get_name($variable_id_array[$i], 'id', 'units', 'investigation_specialised_variables'), 'id', 'name', 'unit_of_measure') != "N/A") - {{ get_name(get_name($variable_id_array[$i], 'id', 'units', 'investigation_specialised_variables'), 'id', 'name', 'unit_of_measure') }} - @endif - {!! nl2br(e($variable_comment_array[$i])) !!}

    {{ __('investigations.no_results_available') }}

    - -
    - @php - $counter=0; $auth=''; - if(!empty($results)) { - foreach($results as $result) if ($result['authenticated'] == '1') $counter++; - if($counter == count($results)) $auth='1'; - } - @endphp - - @if (is_add_lab_stamp_feature_enabled() && !empty($hospitalInfo->lab_stamp) && $auth =='1') - - - - - - - -
    -
    {{ __('investigations.performed_by') }} : - can('hide-performed-by-on-lab-results-print-out')) style="display: none;" @endif>{{ get_full_name($user_id, 'id', 'first_name', 'last_name', 'users') }} -
    -
    -
    {{ __('investigations.verified_by') }} : ............................................................
    - {{ $hospitalInfo->name}} stamp -
    - @else -
    -
    -
    - {{ __('investigations.performed_by') }} : - can('hide-performed-by-on-lab-results-print-out')) style="display: none;" @endif>{{ get_full_name($user_id, 'id', 'first_name', 'last_name', 'users') }} -
    -
    -
    -
    {{ __('investigations.verified_by') }} : ............................................................
    -
    -
    - @endif -
    -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/print/print_patient_investigation_results.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/print/print_patient_investigation_results.blade.php deleted file mode 100755 index 0f1be7d4..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/print/print_patient_investigation_results.blade.php +++ /dev/null @@ -1,122 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') -
    {{ __('investigations.investigation_results') }}
    - - - - - - - - - - - - - - - - - - - - -
    {{ __('investigations.patient_number') }}{{ $patient->number}}{{ __('investigations.patient_category') }}{{ get_name($patient->category_id, 'id', 'name', 'patient_categories') }}
    {{ __('investigations.patient_names') }}{{ $patient->first_name}} {{ $patient->last_name}}{{ __('investigations.gender') }} - @if($patient->gender == 1) - {{ __('investigations.male') }} - @else - {{ __('investigations.female') }} - @endif - - ({{ get_patients_age($patient->date_of_birth, $created_at) }}) -
    {{ __('investigations.requested') }}{{ $requested_at }}{{ __('investigations.performed_at') }}{{ $performed_at }}
    - -
    - - - - - - - - - - - @foreach($inv['data'] as $value) - @if($value['type'] == 0) - - - - - - @else - - - - @php - $specialised_results = \Streamline\Models\InvestigationSpecialisedResult::where('id', $value['result'])->first(); - - if (!$specialised_results) { - continue; - } - - $variable_id_array = explode(',', $specialised_results->specialised_variable_id); - $variable_value_array = explode(',', $specialised_results->value); - $variable_comment_array = explode(',', $specialised_results->comment); - @endphp - @for($i = 0; $i < count($variable_id_array); $i++) - - - - - - @endfor - - @endif - @endforeach - -
    {{ __('investigations.investigation_name') }}{{ __('investigations.results') }}{{ __('investigations.comments') }}
    {{ $value['name'] }}{!! nl2br(e($value['result'])) !!}{!! nl2br(e($value['comment'])) !!}
    {{ $value['name'] }}
    {{ get_name($variable_id_array[$i], 'id', 'name', 'investigation_specialised_variables') }}{{ $variable_value_array[$i] }}{{ $variable_comment_array[$i] }}
    - -
    - -
    -
    - {{ __('investigations.performed_by') }}: {{ get_full_name($created_by, 'id', 'first_name', 'last_name', 'users') }} -
    -
    {{ __('investigations.sign') }}: ............................................................
    -
    -
    - - diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/print/print_ultrasound_results_obstetric.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/print/print_ultrasound_results_obstetric.blade.php deleted file mode 100755 index 4af9483f..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/print/print_ultrasound_results_obstetric.blade.php +++ /dev/null @@ -1,433 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Inpatient Bill - Stre@mline') }} - - - - - - - - - - @php - $hospital_info = \Streamline\Models\HospitalInformation::find(1); - @endphp - - - {{-- footer --}} -
    - © ' . date('Y') . ' Stre@mline' ?> -
    - -
    - {{-- header --}} - @if(is_null($hospital_info->pdf_print_header)) -
    - Responsive image -
    -

    - {{ $hospital_info->name . ' | ' . $hospital_info->phone_number . ' | ' . $hospital_info->email . ' | ' . $hospital_info->address . ' ' . $hospital_info->country }} -

    -
    - @else -
    - Responsive image -
    - - @endif - -
    - - - -
    {{ __('investigations.obstetric_ultrasound_order_details') }}
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('investigations.patient_number') }}{{ $patient->number}}{{ __('investigations.patient_category') }}{{ get_name($patient->category_id, 'id', 'name', 'patient_categories') }}
    {{ __('investigations.patient_names') }}{{ $patient->first_name}} {{ $patient->last_name}}{{ __('investigations.residence') }}{{ patient_residence($patient->id) }}
    {{ __('investigations.age') }} - date_of_birth)->age; ?> {{ __('investigations.years') }} -  
    {{ __('investigations.gender') }} - @if($patient->gender == 1) - {{ __('investigations.male') }} - @else - {{ __('investigations.female') }} - @endif - {{ __('investigations.printed_on') }}
    - -   -
    -
    - - - @php - $no_of_foetus = $report->no_of_foetus; - @endphp - -
    - - - - - - - - - - - - - - - - - -
    {{ __('investigations.date_of_scan') }}{{ __('investigations.sonographer') }}{{ __('investigations.number_of_foetus') }}
    {{ streamline_date($report->scan_date) }}{{ get_full_name($report->sonographer, 'id', 'first_name', 'last_name', 'users') }}{{ $report->no_of_foetus ?? '' }}
    -
    - -
    - - - - - - @if($anc_details) - - - - - - - - - - - - - - - - - @endif - - - - - - - - - - - - -
    {{ __('investigations.order_date') }}{{ streamline_date($invs_order->created_at) }}
    {{ __('investigations.gravida') }}{{ $anc_details->gravida }}{{ __('investigations.para') }}{{ $anc_details->para }}{{ __('investigations.abortions') }}{{ $anc_details->abortion }}
    {{ __('investigations.lmp') }}{{ streamline_date($anc_details->lmp) }}{{ __('investigations.accuracy') }}{{ get_name($anc_details->accuracy, 'id', 'name', 'ante_natal_clinic_accuracies') }}{{ __('investigations.edd') }}{{ streamline_date($anc_details->edd) }}
    {{ __('investigations.clinic') }}{{ get_name(get_name($episode_id, 'id', 'clinic_id', 'patient_episodes'), 'id', 'name', 'clinics') }}{{ __('investigations.requested_by') }} - {{ get_full_name($invs_order->created_by, 'id', 'first_name', 'last_name', 'users') }} - {{ __('investigations.phone') }}{{ get_name($invs_order->created_by, 'id', 'phone', 'users') }}
    {{ __('investigations.comment') }}{{ $invs_order->comment }}
    -
    - -
    - - - - - {{-- start foetus table --}} -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - comments) ? explode(",,,",$report->comments) : ''; - - ?> - - - - - - - - -
    {{ __('investigations.item') }}
    1
    23
    {{ __('investigations.crown_rump_length') }} (cm) - {{ split_string_null_check($report->crown_rump, 0) }} - - {{ split_string_null_check($report->crown_rump, 1) }} - - {{ split_string_null_check($report->crown_rump, 2) }} -
    {{ __('investigations.bi_parietal_diameter') }} (cm) - {{ split_string_null_check($report->bi_parietal_diameter, 0) }} - - {{ split_string_null_check($report->bi_parietal_diameter, 1) }} - - {{ split_string_null_check($report->bi_parietal_diameter, 2) }} -
    {{ __('investigations.head_circumference') }} (cm) - {{ split_string_null_check($report->head_circumference, 0)}} - - {{ split_string_null_check($report->head_circumference, 1) }} - - {{ split_string_null_check($report->head_circumference, 2) }} -
    {{ __('investigations.abdominal_circumference') }} (cm) - {{ split_string_null_check($report->abdominal_circumference, 0) }} - - {{ split_string_null_check($report->abdominal_circumference, 1) }} - - {{ split_string_null_check($report->abdominal_circumference, 2) }} -
    {{ __('investigations.femur_length') }} (cm) - {{ split_string_null_check($report->femur_length, 0) }} - - {{ split_string_null_check($report->femur_length, 1) }} - - {{ split_string_null_check($report->femur_length, 2) }} -
    {{ __('investigations.estimated_foetal_weight') }} (kg) - {{ split_string_null_check($report->estimated_foetal_weight, 0) }} - - {{ split_string_null_check($report->estimated_foetal_weight, 1) }} - - {{ split_string_null_check($report->estimated_foetal_weight, 2) }} -
    {{ __('investigations.average_gestation_age') }} ({{ __('investigations.weeks') }}) - {{ split_string_null_check($report->average_gestational_age, 0) }} - - {{ split_string_null_check($report->average_gestational_age, 1) }} - - {{ split_string_null_check($report->average_gestational_age, 2) }} -
    {{ __('investigations.edd') }} - {{ split_string_null_check($report->expected_delivery_date, 0) }} - - {{ split_string_null_check($report->expected_delivery_date, 1) }} - - {{ split_string_null_check($report->expected_delivery_date, 2) }} -
    {{ __('investigations.presentation') }} - {{ split_string_null_check($report->presentation, 0) }} - - {{ split_string_null_check($report->presentation, 1)}} - - {{ split_string_null_check($report->presentation, 2)}} -
    {{ __('investigations.placental_site') }} - {{ split_string_null_check($report->placental_site, 0) }} - - {{ split_string_null_check($report->placental_site, 1) }} - - {{ split_string_null_check($report->placental_site, 2) }} -
    {{ __('investigations.liquor_volume') }} (mls) - {{ split_string_null_check($report->liquor_volume, 0) }} - - {{ split_string_null_check($report->liquor_volume, 1) }} - - {{ split_string_null_check($report->liquor_volume, 2) }} -
    {{ __('investigations.cord_artery_doppler') }} - {{ split_string_null_check($report->cord_artery_doppler, 0) }} - - {{ split_string_null_check($report->cord_artery_doppler, 1) }} - - {{ split_string_null_check($report->cord_artery_doppler, 2) }} -
    {{ __('investigations.comments_additional_info') }} - {{ $comments[0] ?? ''}} - - {{ $comments[1] ?? ''}} - - {{ $comments[2] ?? ''}} -
    - - - - - - - -
    - {{-- End foetus table --}} - - - - - -
    - - - - \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/print_cardio_echo.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/print_cardio_echo.blade.php deleted file mode 100755 index 6eac33c6..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/print_cardio_echo.blade.php +++ /dev/null @@ -1,270 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Inpatient Bill - Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') -
    {{ __('investigations.department_of_cardiology') }}
    -
    ECHOCARDIOLOGY REPORT
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('investigations.date') }}{{ $date }}{{ __('investigations.weight') }}(Kg)
    {{ __('investigations.name') }} - {{ $names }} ({{ $patient_number }}) - B.P(mmHg)
    {{ __('investigations.gender') }} - {{ $sex }} - {{ __('investigations.pulse') }}(mmHg)
    {{ __('investigations.age') }} - {{ $age }} - {{ __('investigations.height') }}(cm)
    -
    M. MODE MEASUREMENTS
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
     {{ __('investigations.results') }}{{ __('investigations.normal_ranges') }} {{ __('investigations.results') }}{{ __('investigations.normal_ranges') }} {{ __('investigations.results') }}{{ __('investigations.normal_ranges') }}
    IVS - {{ $ivs }} - - {{ $range_IVS }} - AO - {{ $aortic }} - - {{ $range_AO }} - EF (%) - {{ $ef }} - - {{ $range_EF }} -
    LVIDd - {{ $lvidd }} - - {{ $range_LVIDd }} - LA - {{ $la }} - - {{ $range_LA }} - FS (%) - {{ $fs }} - - {{ $range_FS }} -
    LVIDs - {{ $lvids }} - - {{ $range_LVIDs }} - RV - {{ $rv }} - - {{ $range_RV }} - TAPSE - {{ $tapse }} - - {{ $range_TAPSE }} -
    LVPWd - {{ $lvpwd }} - - {{ $range_LVPWd }} - RA - {{ $ra }} - - {{ $range_RA }} -
    -
    DOPPLER FINDINGS
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
     {{ __('investigations.results') }}{{ __('investigations.normal_ranges') }} {{ __('investigations.results') }}{{ __('investigations.normal_ranges') }}
    Mitral E/A ratio{{ $mitral_ea_ratio }} TR Max. PG{{ $tr_pg }}(15 - 25 mmHg)
    AV Vel. Max{{ $av_vmax }}(m/s)RAP{{ $rap }}(mmHg)
    AV Mean PG{{ $av_mean }}(mmHg) 
    -
    {{ __('investigations.description') }}
    - - - @foreach ($descriptions_array as $description) - - - - - @endforeach - -
    {{ $description["name"] }}{{ $description["value"] }}
    - -
    -
    - - - - @if($conclusion != "") - - - - - @endif - - - - - - - - - - - - -
    - {{ __('investigations.conclusion') }} - - {!! nl2br(e($conclusion)) !!} -
    - {{ __('investigations.performed_by') }} - - {{ get_full_name($created_by, "id", "first_name", "last_name", "users") }} -
    - {{ __('investigations.title') }} - - {{ get_name(get_name($created_by, "id", "position_id", "users"), "id", "name", "staff_positions") }}
    - {{ streamline_date($created_at) }} -
    -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/print_request.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/print_request.blade.php deleted file mode 100755 index 7488e600..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/print_request.blade.php +++ /dev/null @@ -1,165 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('investigations.investigation_requests') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    -
    -
    -
    -
    -
    -

    - -
    -
    -
    - - - -
    -
    -
    -

    {{ __('investigations.investigation_requests') }}

    -

    - {{--{{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - Email: {{ $hospital_information->email }}
    --}} -

    - - @for ($x = 0; $x < count($category_ids_array); $x++) - -

    - {{ __('investigations.patient_name') }}: {{ get_name($patient->id, 'id', 'first_name', 'patients') }} {{ get_name($patient->id, 'id', 'last_name', 'patients') }}
    - {{ __('investigations.patient_number') }} : {{ get_name($patient->id, 'id', 'number', 'patients') }}
    - {{ __('investigations.age') }} : {{ get_patients_age($patient->date_of_birth) }}
    - {{ __('investigations.gender') }} : @if(get_name($patient->id, 'id', 'gender', 'patients') == 1) {{ __('investigations.male') }} @elseif(get_name($patient->id, 'id', 'gender', 'patients') == 2) {{ __('investigations.female') }} @else {{ __('investigations.other') }} @endif
    - {{ __('investigations.ward') }} : @if($ordered_investigation->inpatient == 0) OPD @else {{ get_ward_name($ordered_investigation->patient_id, $ordered_investigation->episode_id) }} @endif
    - {{ __('investigations.authorised_by') }} : {{ get_full_name($ordered_investigation->created_by, 'id', 'first_name', 'last_name', 'users') }}
    - {{ __('investigations.date') }} : {{ streamline_date($ordered_investigation->created_at) }}
    -

    - -
    - - - - -
    - -
    -
    - - - @endfor - - © Stre@mline -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - -@endpush - - diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/print_request_barcode.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/print_request_barcode.blade.php deleted file mode 100755 index f787a9e1..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/print_request_barcode.blade.php +++ /dev/null @@ -1,46 +0,0 @@ -@extends('layouts.main') - -@push('styles') -@endpush - -@section('content') -
    -
    -

    {{ __('investigations.request_barcode') }}

    -
    -
    - -
    -
    - - {{ __('investigations.print_barcode') }} - -

    - - - -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/ultrasound_obstetric_report.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/ultrasound_obstetric_report.blade.php deleted file mode 100755 index 0f5a7d10..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/ultrasound_obstetric_report.blade.php +++ /dev/null @@ -1,504 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') - - -
    -
    -

    {{ __('investigations.obstetric_ultrasound_request_template') }}

    -
    - -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    - @include('flash::message') - - {{ Form::open(['route' => 'investigations.submit_ultrasound_obstetric_report']) }} - - {{ Form::hidden('order_id',$order_id) }} - - {{ Form::hidden('patient_id',$patient_id) }} - - {{ Form::hidden('episode_id',$episode_id) }} - -
    -
    -
    - {{ Form::label('scan_date', __('investigations.date_of_scan')) }} -
    - {{ Form::text('scan_date', date('d-m-Y'), ['class'=>'form-control compulsory', 'id'=>'scan_date', 'readonly']) }} - -
    -
    -
    -
    -
    - {{ Form::label('sonographer_name', __('investigations.sonographer')) }} - {{ Form::text('sonographer_name', get_full_name(Auth::user()->id, 'id', 'first_name', 'last_name', 'users'), ['class' => 'form-control compulsory', 'readonly']) }} - {{ Form::hidden('sonographer', Auth::user()->id) }} -
    -
    -
    -
    - {{ Form::label('no_of_foetus', __('investigations.number_of_foetus')) }} - - -
    -
    -
    - -

    {{ __('investigations.obstetric_ultrasound_order_details') }}

    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('investigations.order_date') }}{{ streamline_date(get_name($order_id, 'id', 'created_at', 'ordered_investigations')) }}
    {{ __('investigations.gravida') }}{{ get_name($episode_id, 'episode_id', 'gravida', 'ante_natal_clinic_registrations') }}{{ __('investigations.para') }}{{ get_name($episode_id, 'episode_id', 'para', 'ante_natal_clinic_registrations') }}{{ __('investigations.abortions') }}{{ get_name($episode_id, 'episode_id', 'abortion', 'ante_natal_clinic_registrations') }}
    {{ __('investigations.lmp') }} - @if(get_name($episode_id, 'episode_id', 'lmp', 'ante_natal_clinic_registrations') == 'N/A') - N/A - @else - {{ streamline_date(get_name($episode_id, 'episode_id', 'lmp', 'ante_natal_clinic_registrations')) }} - @endif - {{ __('investigations.accuracy') }} - @if(get_name($episode_id, 'episode_id', 'accuracy', 'ante_natal_clinic_registrations') == 'N/A') - N/A - @else - {{ get_name(get_name($episode_id, 'episode_id', 'accuracy', 'ante_natal_clinic_registrations'), 'id', 'name', 'ante_natal_clinic_accuracies') }} - @endif - {{ __('investigations.edd') }} - @if(get_name($episode_id, 'episode_id', 'edd', 'ante_natal_clinic_registrations') == 'N/A') - N/A - @else - {{ streamline_date(get_name($episode_id, 'episode_id', 'edd', 'ante_natal_clinic_registrations')) }} - @endif -
    {{ __('investigations.clinic') }}{{ get_name(get_name($episode_id, 'id', 'clinic_id', 'patient_episodes'), 'id', 'name', 'clinics') }}{{ __('investigations.requested_by') }} - @php - $requester_id = get_name($order_id, 'id', 'created_by', 'ordered_investigations'); - - if($requester_id == 'N/A'){ - $requested_by = Auth::user()->id; - } else { - $requested_by = $requester_id; - } - @endphp - {{ get_full_name($requested_by, 'id', 'first_name', 'last_name', 'users') }} - {{ __('investigations.phone') }}{{ get_name($requested_by, 'id', 'phone', 'users') }}
    {{ __('investigations.comment') }}{{ get_name($order_id, 'id', 'comment', 'ordered_investigations') }}
    -
    - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('investigations.item') }}
    1
    {{ __('investigations.crown_rump_length') }} (cm) -
    - -
    -
    - - - -
    {{ __('investigations.bi_parietal_diameter') }} (cm) -
    - -
    -
    - - - -
    {{ __('investigations.head_circumference') }} (cm) -
    - -
    -
    - - - -
    {{ __('investigations.abdominal_circumference') }} (cm) -
    - -
    -
    - - - -
    {{ __('investigations.femur_length') }} (cm) -
    - -
    -
    - - - -
    {{ __('investigations.estimated_foetal_weight') }} (kg) -
    - -
    -
    - - - -
    {{ __('investigations.average_gestation_age') }} ({{ __('investigations.weeks') }}) -
    - -
    -
    - - - -
    {{ __('investigations.edd') }} -
    - {{ Form::text('expected_delivery_date1', '', ['class'=>'form-control', 'id'=>'expected_delivery_date1', 'readonly']) }} - -
    -
    - - - -
    {{ __('investigations.presentation') }} - - - - - -
    {{ __('investigations.placental_site') }} - - - - - -
    {{ __('investigations.liquor_volume') }} (mls) -
    - -
    -
    - - - -
    {{ __('investigations.cord_artery_doppler') }} -
    - {{ Form::text('cord_artery_doppler1', '', ['class' => 'form-control']) }} -
    -
    - - - -
    {{ __('investigations.comments_additional_info') }} -
    - -
    -
    - - - -
    -
    - - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'submit_button']) }} - - {{ Form::close() }} -
    - - - - - - -@endsection - -@push('scripts') - - -{{-- show foetus data columns on change of foetus number input --}} - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/view_deleted_ordered_investigations.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/view_deleted_ordered_investigations.blade.php deleted file mode 100755 index 1a3f63ac..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/view_deleted_ordered_investigations.blade.php +++ /dev/null @@ -1,185 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('investigations.view_cancelled_investigations') }}

    -
    - -
    - - {{ Form::open(['route' => 'investigations.view_deleted_ordered_invetigations', 'method' => 'ANY']) }} - -
    -
    -
    -
    - {{ Form::label('search_by', __('investigations.date')) }} - {{ Form::select('search_by', ['0'=> __('investigations.last_24_hours'),'1'=>__('investigations.custom_date'),'2'=>__('investigations.date_range')], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - - -
    -

    - {{ Form::button(__('investigations.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    -
    -
    - {{ Form::close() }} - -
    -
    - - @include('flash::message') - -
    -
    - - - - - - - - - - - - - - - @php $count=1; @endphp - - @if(count($deleted_ordered_investigations) > 0) - @foreach($deleted_ordered_investigations as $ordered_inv) - @php - $urgent_ids = $ordered_inv->urgent_ids; - $ordered_ids = explode(",", $ordered_inv->investigation_id); - $ordered_investigation_comments_string = ""; - $ordered_investigation_comments_string = $ordered_inv->order_comments; - @endphp - - - - - - - - - - - - @php $count++; @endphp - @endforeach - @endif - -
    #{{ __('investigations.date_ordered') }}{{ __('investigations.date_cancelled') }}{{ __('investigations.patient_number') }}{{ __('investigations.patient_name') }}{{ __('investigations.ordered_investigations') }}{{ __('investigations.actions') }}
    {{ $count }}.{{ streamline_date_time($ordered_inv->created_at) }}{{ streamline_date_time($ordered_inv->deleted_at) }}{{ get_name($ordered_inv->patient_id, 'id', 'number', 'patients') }}{!! insurance_flag($ordered_inv->patient_id) !!} -
      - @for($i=0; $i < count($ordered_ids); $i++) -
    1. {{ get_name($ordered_ids[$i], 'id', 'name', 'investigations') }}
    2. - @endfor -
    -
    - {{ Form::model($ordered_inv->id ,['method' => 'POST', 'route' => ['investigations.restore_deleted_ordered_invetigations', $ordered_inv->id]]) }} - - {{ Form::close() }} - - {{ __('investigations.select_patient') }} -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/view_historical_results_imaging.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/view_historical_results_imaging.blade.php deleted file mode 100755 index 0ab76cc0..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/view_historical_results_imaging.blade.php +++ /dev/null @@ -1,110 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('investigations.historical_results_imaging') }}

    -
    - -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    - - - @include('flash::message') - -
    - - - - - @foreach($dates as $date) - - @endforeach - - - - @for($i = 0; $i < count($invs_array); $i++) - - - @foreach($values[$i] as $value) - @if(is_array($value)) - - @elseif(get_name($invs_array[$i], 'id', 'type', 'investigations') == 1 && is_numeric($value)) - - @else - - @endif - @endforeach - - @endfor - -
    {{ __('investigations.investigation') }}{{ $date }}
    {{ get_name($invs_array[$i], 'id', 'name', 'investigations') }} - {{ Form::open(['route' => 'investigations.view_patient_investigation_obstetric']) }} - - {{ Form::hidden('patient_id',$value[2]) }} - - {{ Form::hidden('episode_id',$value[3]) }} - - {{ Form::hidden('obstetric_ultrasound_report_id',$value[0]) }} - - {{ Form::hidden('order_id',$value[1]) }} - - - - {{ Form::close() }} - - {{ __('investigations.view_results') }} - {{ $value }}
    -
    -
    - - -@endsection - -@push('scripts') - -@endpush - diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/view_historical_results_labs.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/view_historical_results_labs.blade.php deleted file mode 100755 index 374821ec..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/view_historical_results_labs.blade.php +++ /dev/null @@ -1,112 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('investigations.historical_results_labs') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    -
    -
    - - @include('flash::message') -
    -
    -
    - - - - - @foreach($dates as $date) - - @endforeach - - - - - @for($i = 0; $i < count($invs_array); $i++) - - - @foreach($values[$i] as $value) - @if(is_array($value)) - - @elseif(get_name($invs_array[$i], 'id', 'type', 'investigations') == 1 && is_numeric($value)) - - @else - - @endif - @endforeach - - @endfor - -
    {{ __('investigations.investigation') }}{{ $date }}
    {{ get_name($invs_array[$i], 'id', 'name', 'investigations') }} - {{ Form::open(['route' => 'investigations.view_patient_investigation_obstetric']) }} - - {{ Form::hidden('patient_id',$value[2]) }} - - {{ Form::hidden('episode_id',$value[3]) }} - - {{ Form::hidden('obstetric_ultrasound_report_id',$value[0]) }} - - {{ Form::hidden('order_id',$value[1]) }} - - - - {{ Form::close() }} - - {{ __('investigations.view_results') }} - {{ $value }}
    -
    -
    -
    - -
    - - -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/view_lab_results.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/view_lab_results.blade.php deleted file mode 100755 index 3985ab26..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/view_lab_results.blade.php +++ /dev/null @@ -1,432 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('investigations.lab_results') }}

    -
    -
    - -
    -
    - -
    - {{ Form::open(['method'=>'post','route' => 'investigations.view_lab_results']) }} - - {{ Form::hidden('patient_id', 0, ['id' => 'patient_id']) }} - -
    -
    -
    - - -
    -
    - - - -
    - {{ Form::label('lab_number', __('investigations.search_by_lab_number')) }} - {{ Form::number('lab_number', '', ['class' => 'form-control']) }} -
    - -
    - {{ Form::label('search_patient', __('investigations.search_by_patient')) }} -
    - -
    -
    - -
    -
    - {{ Form::submit(__('investigations.search'), ['class'=>'btn btn-success pull-right']) }} -
    -
    -
    - {{ Form::close() }} -
    - -
    - - @include('flash::message') - - @if($search_text != "") -

    - - - @if (count($urgent_incomings) > 0) -    - @endif -

    -
    - @elseif (count($urgent_incomings) > 0 && empty($search_text)) -

    - @endif - -
    -
    -
    - -
    -
    -
    -
    - - - - - - - - - - - - - - - - @foreach($incomings as $incoming) - - - - - - - - - - - - @endforeach - @if(count($incomings) < 1) - - - - @endif - -
    {{ __('investigations.lab_number') }}{{ __('investigations.requested') }}{{ __('investigations.received') }}{{ __('investigations.patient') }}{{ __('investigations.source') }}{{ __('investigations.payment') }}{{ __('investigations.request') }}{{ __('investigations.specimen') }}{{ __('investigations.results') }}
    {{ $incoming->id }}By {{ get_full_name($incoming->created_by, 'id', 'first_name', 'last_name', 'users') }} at {{ streamline_date_time_short($incoming->created_at) }}By {{ get_full_name($incoming->request_received_by, 'id', 'first_name', 'last_name', 'users') }} at {{ streamline_date_time_short($incoming->request_received_date) }} - {{ get_full_name($incoming->patient_id, 'id', 'first_name', 'last_name', 'patients') }} - - ({{ get_name($incoming->patient_id, 'id', 'number', 'patients') }}) - ({{ get_name(get_name($incoming->patient_id, 'id', 'category_id', 'patients'), 'id', 'name', 'patient_categories') }}) - - @if($incoming->inpatient == 1 || $incoming->inpatient_bill_generated == 1) - {{ get_ward_name($incoming->patient_id, $incoming->episode_id) }} - @else - OPD - @endif - - @if($incoming->payment_status == 0) - @if($incoming->inpatient_bill_generated == 1) - {{ __('investigations.inpatient_bill_generated') }} - @else - {{ __('investigations.not_paid') }} - @endif - @else - {{ __('investigations.paid') }} - @endif - {{ count(explode(",", $incoming->investigation_id)) }} {{ __('investigations.tests') }} {{ count(explode(",", $incoming->specimen)) }} {{ __('investigations.samples') }} - @if($incoming->inpatient == 0 && $incoming->inpatient_bill_generated == 0 && $incoming->payment_status == 0 && !can_investigations_be_performed(get_name($incoming->patient_id, 'id', 'category_id', 'patients'))) - {{ __('investigations.patient_has_not_paid_for_ordered_investigations') }} - @else - {{ __('investigations.add') }} - @endif -
    {{ __('investigations.no_results_available') }}
    -
    -
    - @if (count($urgent_incomings) > 0) -
    -
    - - - - - - - - - - - - - - - - @foreach($urgent_incomings as $urgent_incoming) - - - - - - - - - - - - @endforeach - -
    {{ __('investigations.lab_number') }}{{ __('investigations.requested') }}{{ __('investigations.received') }}{{ __('investigations.patient') }}{{ __('investigations.source') }}{{ __('investigations.payment') }}{{ __('investigations.request') }}{{ __('investigations.specimen') }}{{ __('investigations.results') }}
    {{ $urgent_incoming->id }}By {{ get_full_name($urgent_incoming->created_by, 'id', 'first_name', 'last_name', 'users') }} at {{ streamline_date_time_short($urgent_incoming->created_at) }}By {{ get_full_name($urgent_incoming->request_received_by, 'id', 'first_name', 'last_name', 'users') }} at {{ streamline_date_time_short($urgent_incoming->request_received_date) }} - {{ get_full_name($urgent_incoming->patient_id, 'id', 'first_name', 'last_name', 'patients') }} - - ({{ get_name($urgent_incoming->patient_id, 'id', 'number', 'patients') }}) - ({{ get_name(get_name($urgent_incoming->patient_id, 'id', 'category_id', 'patients'), 'id', 'name', 'patient_categories') }}) - - @if($urgent_incoming->inpatient == 1 || $urgent_incoming->inpatient_bill_generated == 1) - {{ get_ward_name($urgent_incoming->patient_id, $urgent_incoming->episode_id) }} - @else - OPD - @endif - - @if($urgent_incoming->payment_status == 0) - @if($urgent_incoming->inpatient_bill_generated == 1) - {{ __('investigations.inpatient_bill_generated') }} - @else - {{ __('investigations.not_paid') }} - @endif - @else - {{ __('investigations.paid') }} - @endif - {{ count(explode(",", $urgent_incoming->investigation_id)) }} {{ __('investigations.tests') }} {{ count(explode(",", $urgent_incoming->specimen)) }} {{ __('investigations.samples') }} - @if($urgent_incoming->inpatient == 0 && $urgent_incoming->inpatient_bill_generated == 0 && $urgent_incoming->payment_status == 0 && !can_investigations_be_performed(get_name($urgent_incoming->patient_id, 'id', 'category_id', 'patients'))) - {{ __('investigations.patient_has_not_paid_for_ordered_investigations') }} - @else - {{ __('investigations.add') }} - @endif -
    -
    -
    - @endif -
    -
    - - - - - - - - - - - - - - - - - - @foreach($all_complete as $incoming) - - - - - - - - - - - - - - @endforeach - @if(count($all_complete) < 1) - - - - @endif - -
    {{ __('investigations.lab_number') }}{{ __('investigations.requested') }}{{ __('investigations.received') }}{{ __('investigations.performed_at') }}{{ __('investigations.turn_around_time') }}{{ __('investigations.patient') }}{{ __('investigations.source') }}{{ __('investigations.payment') }}{{ __('investigations.request') }}{{ __('investigations.specimen') }}{{ __('investigations.results') }}
    {{ sprintf("%04u", $incoming->id) }}{{ streamline_date_time_short($incoming->created_at) }}{{ streamline_date_time_short($incoming->request_received_date) }}{{ $incoming->results_created_at ? streamline_date_time_short($incoming->results_created_at) : "N/A" }}{{ \Carbon\Carbon::parse($incoming->results_created_at)->diffForHumans(\Carbon\Carbon::parse($incoming->request_received_date)) }} request received - {{ get_full_name($incoming->patient_id, 'id', 'first_name', 'last_name', 'patients') }} - - ({{ get_name($incoming->patient_id, 'id', 'number', 'patients') }}) - ({{ get_name(get_name($incoming->patient_id, 'id', 'category_id', 'patients'), 'id', 'name', 'patient_categories') }}) - - @if($incoming->inpatient == 1 || $incoming->inpatient_bill_generated == 1) - {{ get_ward_name($incoming->patient_id, $incoming->episode_id) }} - @else - OPD - @endif - - @if($incoming->payment_status == 0) - @if($incoming->inpatient_bill_generated == 1) - {{ __('investigations.inpatient_bill_generated') }} - @else - {{ __('investigations.not_paid') }} - @endif - @else - {{ __('investigations.paid') }} - @endif - {{ count(explode(",", $incoming->investigation_id)) }} {{ __('investigations.tests') }} {{ count(explode(",", $incoming->specimen)) }} {{ __('investigations.samples') }} - {{ __('investigations.view') }} -
    {{ __('investigations.no_results_available') }}
    -
    -
    -
    -
    -
    -
    -
    -
    - - -@endsection - -@push('scripts') - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/view_lab_results_details.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/view_lab_results_details.blade.php deleted file mode 100755 index f3d8a449..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/view_lab_results_details.blade.php +++ /dev/null @@ -1,414 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('investigations.lab_results') }}

    -
    - -
    - -
    - @include('flash::message') - - {{ __('investigations.print') }} - Selective Print - -

    - - -
    - -
    -
    - @if($ordered_investigation->investigation_status == 0) -
    -
    - {{ Form::open(['route' => 'investigations.ordered_results']) }} - - {{ Form::hidden('order_id',$ordered_investigation->id) }} - - {{ Form::hidden('order_type', 'Lab') }} - - {{ Form::hidden('patient_id',$ordered_investigation->patient_id) }} - - {{ Form::hidden('episode_id',$ordered_investigation->episode_id) }} - - - - {{ Form::close() }} -
    -
    - @php $lab_machine_result = \Streamline\Models\LabMachineResult::where('sample_id', $ordered_investigation->id)->first(); @endphp - - @if($lab_machine_result) - Preview Results From Machine - @endif -
    -
    - @endif -
    -
    - @if(count($results) > 0 && is_sms_enabled()) - Send SMS Alert to Patient - @endif -
    -
    -
    - - - - -@endsection - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/view_patient_investigation.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/view_patient_investigation.blade.php deleted file mode 100755 index 09ae3213..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/view_patient_investigation.blade.php +++ /dev/null @@ -1,143 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('investigations.result_details') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    -
    -
    - - {{ __('investigations.print') }} - {{ __('investigations.selective_print') }} - - @include('flash::message') - -

    {{ __('investigations.results_for_episode') }} {{ $inv['date'] }}

    - - - - - - - - - - - @foreach($inv['data'] as $value) - @if($value['type'] == 0) - - - - @if($value['result'] != "" || $value['slug'] == "echo") - - - @else - - - @endif - - @else - - - - @php - $specialised_results = \Streamline\Models\InvestigationSpecialisedResult::where('id', $value['result'])->first(); - - if (!$specialised_results) { - continue; - } - - $variable_id_array = explode(',', $specialised_results->specialised_variable_id); - $variable_value_array = explode(',', $specialised_results->value); - $variable_comment_array = explode(',', $specialised_results->comment); - @endphp - @for($i = 0; $i < count($variable_id_array); $i++) - - - - - - @endfor - - @endif - @endforeach - -
    {{ __('investigations.investigation') }}{{ __('investigations.normal_range') }}{{ __('investigations.results') }}{{ __('investigations.comments') }}
    {{ $value['name'] }}{{ $value['range'] }} - @if($value['slug'] == "echo" && $value['result'] == "") - {{ __('investigations.view_echo_results') }} - @else - {!! nl2br(e($value['result'])) !!} - @endif - {!! nl2br(e($value['comment'])) !!}{{ __('investigations.no_results_for_this_investigation') }} - @if(Auth::user()->can('remove-investigation-with-no-result')) - {{ __('investigations.remove_investigation') }} - @endif -
    {{ $value['name'] }}
    {{ get_name($variable_id_array[$i], 'id', 'name', 'investigation_specialised_variables') }}{{ $variable_value_array[$i] }}{{ $variable_comment_array[$i] }}
    - -

    -
    - - -@endsection \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/investigations/view_patient_investigation_obstetric.blade.php b/docker/statistics/Modules/Investigations/Resources/views/investigations/view_patient_investigation_obstetric.blade.php deleted file mode 100755 index a3bc2cf1..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/investigations/view_patient_investigation_obstetric.blade.php +++ /dev/null @@ -1,447 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('investigations.other_ultrasound_results') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    - @include('flash::message') - -
    -
    -
    - {{ Form::label('scan_date', __('investigations.date_of_scan')) }} -
    - {{ Form::text('scan_date', streamline_date($report->scan_date), ['class'=>'form-control compulsory', 'readonly']) }} -
    -
    -
    -
    -
    - {{ Form::label('sonographer_name', __('investigations.sonographer')) }} - {{ Form::text('sonographer_name', get_full_name($report->sonographer, 'id', 'first_name', 'last_name', 'users'), ['class' => 'form-control compulsory', 'readonly']) }} -
    -
    -
    -
    - {{ Form::label('no_of_foetus', __('investigations.number_of_foetus')) }} - - -
    -
    -
    - -
    - -

    {{ __('investigations.obstetric_ultrasound_order_details') }}

    - -
    - - - - - - @if($anc_details) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @else - - - - @endif -
    {{ __('investigations.order_date') }}{{ streamline_date($invs_order->created_at) }}
    {{ __('investigations.gravida') }}{{ $anc_details->gravida }}{{ __('investigations.para') }}{{ $anc_details->para }}{{ __('investigations.abortions') }}{{ $anc_details->abortion }}
    {{ __('investigations.lmp') }}{{ streamline_date($anc_details->lmp) }}{{ __('investigations.accuracy') }}{{ get_name($anc_details->accuracy, 'id', 'name', 'ante_natal_clinic_accuracies') }}{{ __('investigations.edd') }}{{ streamline_date($anc_details->edd) }}
    {{ __('investigations.clinic') }}{{ get_name(get_name($episode_id, 'id', 'clinic_id', 'patient_episodes'), 'id', 'name', 'clinics') }}{{ __('investigations.requested_by') }} - {{ get_full_name($invs_order->created_by, 'id', 'first_name', 'last_name', 'users') }} - {{ __('investigations.phone') }}{{ get_name($invs_order->created_by, 'id', 'phone', 'users') }}
    {{ __('investigations.comment') }}{{ $invs_order->comment }}
    {{ __('investigations.information_not_available') }}
    -
    - -
    - - - - - - - - - - - - {{-- @dd($report->crown_rump) --}} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - {{-- @dd($report) --}} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @php - //explode comments with separator ,,, - - $comments = !empty($report->comments) ? explode(",,,",$report->comments) : ''; - @endphp - - - - - - - - - - -
    {{ __('investigations.item') }}
    1
    {{ __('investigations.crown_rump_length') }} (cm) -
    - {{ Form::text('crown_rump1', split_string_null_check($report->crown_rump, 0), ['class' => 'form-control', 'readonly']) }} -
    -
    - - - -
    {{ __('investigations.bi_parietal_diameter') }} (cm) -
    - {{ Form::text('bi_parietal_diameter1', split_string_null_check($report->bi_parietal_diameter, 0), ['class' => 'form-control', 'readonly']) }} -
    -
    - - - -
    {{ __('investigations.head_circumference') }} (cm) -
    - {{ Form::text('head_circumference1', split_string_null_check($report->head_circumference, 0), ['class' => 'form-control', 'readonly']) }} -
    -
    - - - -
    {{ __('investigations.abdominal_circumference') }} (cm) -
    - {{ Form::text('abdominal_circumference1', split_string_null_check($report->abdominal_circumference, 0), ['class' => 'form-control', 'readonly']) }} -
    -
    - - - -
    {{ __('investigations.femur_length') }} (cm) -
    - {{ Form::text('femur_length1', split_string_null_check($report->femur_length, 0), ['class' => 'form-control', 'readonly']) }} -
    -
    - - - -
    {{ __('investigations.estimated_foetal_weight') }} (kg) -
    - {{ Form::text('estimated_foetal_weight1', split_string_null_check($report->estimated_foetal_weight, 0), ['class' => 'form-control', 'readonly']) }} -
    -
    - - - -
    {{ __('investigations.average_gestation_age') }} ({{ __('investigations.weeks') }}) -
    - {{ Form::text('average_gestational_age1', split_string_null_check($report->average_gestational_age, 0), ['class' => 'form-control', 'readonly']) }} -
    -
    - - - -
    {{ __('investigations.edd') }} -
    - {{ Form::text('expected_delivery_date1', split_string_null_check($report->expected_delivery_date, 0), ['class'=>'form-control', 'id'=>'expected_delivery_date1', 'readonly']) }} -
    -
    - - - -
    {{ __('investigations.presentation') }} -
    - {{ Form::text('presentation1', split_string_null_check($report->presentation, 0), ['class' => 'form-control', 'readonly']) }} -
    -
    - - - -
    {{ __('investigations.placental_site') }} -
    - {{ Form::text('placental_site2', split_string_null_check($report->placental_site, 0), ['class' => 'form-control', 'readonly']) }} -
    -
    - - - -
    {{ __('investigations.liquor_volume') }} (mls) -
    - {{ Form::text('liquor_volume1', split_string_null_check($report->liquor_volume, 0), ['class' => 'form-control', 'readonly']) }} -
    -
    - - - -
    {{ __('investigations.cord_artery_doppler') }} -
    - {{ Form::text('cord_artery_doppler1', split_string_null_check($report->cord_artery_doppler, 0), ['class' => 'form-control', 'readonly']) }} -
    -
    - - - -
    {{ __('investigations.comments_additional_info') }} -
    - -
    -
    - - - -
    -
    -
    -@endsection - -@push('scripts') - - {{-- show foetus data columns on change of foetus number input --}} - - - - - -@endpush - diff --git a/docker/statistics/Modules/Investigations/Resources/views/lab_forms/create.blade.php b/docker/statistics/Modules/Investigations/Resources/views/lab_forms/create.blade.php deleted file mode 100755 index 893f8a36..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/lab_forms/create.blade.php +++ /dev/null @@ -1,45 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('lab_forms.add_lab_form') }}

    -
    - -
    - -
    -
    - @include('investigations::labs.menu') - - @include('flash::message') - -
    - {{ Form::open(['method'=>'POST', 'route'=>'lab_forms.store']) }} - -
    - - -
    - -
    - -
    - - {{ Form::close() }} -
    -
    -
    - -@endsection - diff --git a/docker/statistics/Modules/Investigations/Resources/views/lab_forms/edit.blade.php b/docker/statistics/Modules/Investigations/Resources/views/lab_forms/edit.blade.php deleted file mode 100755 index 51ac31ca..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/lab_forms/edit.blade.php +++ /dev/null @@ -1,48 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('lab_forms.edit_lab_form') }}

    -
    - -
    - -
    -
    - @include('investigations::labs.menu') - - @include('flash::message') - -
    - - {{ Form::open(['method'=>'PUT', 'route'=>['lab_forms.update', $lab_form]]) }} - -
    - - - -
    - -
    - -
    - - {{ Form::close() }} - -
    -
    -
    - -@endsection - diff --git a/docker/statistics/Modules/Investigations/Resources/views/lab_forms/inactive.blade.php b/docker/statistics/Modules/Investigations/Resources/views/lab_forms/inactive.blade.php deleted file mode 100755 index e69de29b..00000000 diff --git a/docker/statistics/Modules/Investigations/Resources/views/lab_forms/index.blade.php b/docker/statistics/Modules/Investigations/Resources/views/lab_forms/index.blade.php deleted file mode 100755 index 142c36a0..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/lab_forms/index.blade.php +++ /dev/null @@ -1,198 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('lab_forms.view_lab_form') }}

    -
    - -
    - -
    -
    - @include('investigations::labs.menu') - - @include('flash::message') - -
    -
    -
    - {{-- {{ __('clinical_data.lab_usages_report') }} --}} -
    - @if (Auth::user()->can('labs-create')) - {{ __('labs.add_lab') }} - {{ __('labs.add_lab_form') }} - @endif - -
    -
    -
    -
    - - - - - - - - @foreach ($lab_forms as $item) - - - - @endforeach - - - - - - -
    {{ __('lab_forms.lab_form_name') }}
    - {{ $item->name }} -
    - - - {{ Form::model($item->id, ['method' => 'DELETE', 'route' => ['lab_forms.destroy', $item->id]]) }} - - {{ Form::close() }} -
    -
    {{ __('lab_forms.lab_form_name') }}
    -
    -
    -
    -
    -@endsection - - -@push('scripts') - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/lab_forms/menu.blade.php b/docker/statistics/Modules/Investigations/Resources/views/lab_forms/menu.blade.php deleted file mode 100755 index 7a021bbf..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/lab_forms/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -{{ __('lab_forms.add_lab') }} -{{ __('lab_forms.') }} -{{ __('lab_forms.edit_lab_form') }} -{{ __('lab_forms.delete_multiple_labs') }} -{{ __('lab_forms.clear_stock') }} -{{ __('lab_forms.view_lab_form') }} -{{ __('lab_forms.add_lab_form') }} \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/lab_instruments/create.blade.php b/docker/statistics/Modules/Investigations/Resources/views/lab_instruments/create.blade.php deleted file mode 100755 index 46ac10bb..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/lab_instruments/create.blade.php +++ /dev/null @@ -1,42 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('lab_instruments.add_lab_instrument') }}

    -
    - -
    - -
    - {{ Form::open(['route' => 'lab_instruments.store', 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name',__('lab_instruments.lab_instrument_name')) }} - {{ Form::text('name','',['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - - {{ Form::button(__('lab_instruments.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10 submit-btn']) }} - {{ Form::button(__('lab_instruments.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - {{ Form::close() }} -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/lab_instruments/edit.blade.php b/docker/statistics/Modules/Investigations/Resources/views/lab_instruments/edit.blade.php deleted file mode 100755 index 560d9b89..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/lab_instruments/edit.blade.php +++ /dev/null @@ -1,63 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('lab_instruments.edit_lab_instrument') }}

    -
    - -
    - -
    -
    - @include('investigations::lab_instruments.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($instrument, ['method' => 'PUT', 'route' => ['lab_instruments.update',$instrument], 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name',__('lab_instruments.lab_instrument_name')) }} - {{ Form::text('name',$instrument->name,['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - - {{ Form::button(__('lab_instruments.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('lab_instruments.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/lab_instruments/inactive.blade.php b/docker/statistics/Modules/Investigations/Resources/views/lab_instruments/inactive.blade.php deleted file mode 100755 index 386c620b..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/lab_instruments/inactive.blade.php +++ /dev/null @@ -1,78 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('lab_instruments.activate_lab_instrument') }}

    -
    - -
    - -
    -
    - @include('investigations::lab_instruments.menu') -
    -
    - -
    -
    -
    -
    - - - - - - - - - @foreach($instruments as $instrument) - - - - - @endforeach - -
    {{ __('lab_instruments.lab_instrument') }}
    {{ $instrument->name }} - {{ Form::model($instrument->id ,['method' => 'POST', 'route' => ['lab_instruments.activate', $instrument->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/lab_instruments/index.blade.php b/docker/statistics/Modules/Investigations/Resources/views/lab_instruments/index.blade.php deleted file mode 100755 index fb382218..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/lab_instruments/index.blade.php +++ /dev/null @@ -1,84 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('lab_instruments.lab_instruments') }}

    -
    -
    - -
    -
    - -
    -
    - @include('investigations::lab_instruments.menu') -
    -
    - - -
    -
    -
    - - @include('flash::message') -
    - - - - - - - - - - @foreach($instruments as $instrument) - - - - - - @endforeach - -
    {{ __('lab_instruments.lab_instrument') }}
    {{ $instrument->name }} - {{ __('lab_instruments.edit') }} - - {{ Form::model($instrument->id ,['method' => 'DELETE', 'route' => ['lab_instruments.destroy', $instrument->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/lab_instruments/menu.blade.php b/docker/statistics/Modules/Investigations/Resources/views/lab_instruments/menu.blade.php deleted file mode 100755 index bd46a887..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/lab_instruments/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ - \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/lab_instruments/view_lab_machine_results.blade.php b/docker/statistics/Modules/Investigations/Resources/views/lab_instruments/view_lab_machine_results.blade.php deleted file mode 100755 index a5da18bd..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/lab_instruments/view_lab_machine_results.blade.php +++ /dev/null @@ -1,150 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('investigations.lab_results') }}

    -
    -
    - -
    -
    - -
    - {{ Form::open(['method'=>'post','route' => 'lab_machines.view_lab_machine_results']) }} - -
    -
    -
    - - -
    -
    - - - -
    - {{ Form::label('lab_number', __('investigations.search_by_lab_number')) }} - {{ Form::number('lab_number', '', ['class' => 'form-control']) }} -
    - -
    -
    - {{ Form::submit(__('investigations.search'), ['class'=>'btn btn-success pull-right']) }} -
    -
    -
    - {{ Form::close() }} -
    - -
    - - @include('flash::message') - - @if($search_text != "") -

    -
    - @endif - -
    -
    - {{ Form::open(['route' => 'lab_machines.restart_python_script', 'data-toggle' => 'validator']) }} - -
    - {{ Form::select('lab_instrument', $lab_machines, '', ['class' => 'form-control compulsory', 'required']) }} -
    - - {{ Form::button(__('lab_instruments.restart_lab_integration'),['type'=>'submit','class'=>'btn btn-inverse waves-effect waves-light m-r-10']) }} - - {{ Form::close() }} -
    -
    - -
    - -
    - - - - - - - - - - @foreach($results as $result) - - - - - - @endforeach - -
    {{ __('lab_instruments.sample_id') }}{{ __('lab_instruments.results_time') }}
    {{ $result->sample_id }}{{ streamline_date_time($result->created_at) }} - @php $ordered_results = \Streamline\Models\OrderedInvestigation::find($result->sample_id); @endphp - @if($ordered_results) - {{ __('lab_instruments.view_lab_order') }} - @endif -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/laboratory_specimen/create.blade.php b/docker/statistics/Modules/Investigations/Resources/views/laboratory_specimen/create.blade.php deleted file mode 100755 index 5a6db5d0..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/laboratory_specimen/create.blade.php +++ /dev/null @@ -1,73 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('laboratory_specimen.add_specimen') }}

    -
    - -
    - -
    -
    - @include('investigations::laboratory_specimen.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'laboratory_specimen.store', 'data-toggle' => 'validator', 'autocomplete' => 'off']) }} -
    - {{ Form::label('name', __('laboratory_specimen.specimen_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - {{ __('laboratory_specimen.add_another') }}

    - {{ Form::button(__('laboratory_specimen.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10 submit-btn']) }} - {{ Form::button(__('laboratory_specimen.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/laboratory_specimen/edit.blade.php b/docker/statistics/Modules/Investigations/Resources/views/laboratory_specimen/edit.blade.php deleted file mode 100755 index 12e5ee71..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/laboratory_specimen/edit.blade.php +++ /dev/null @@ -1,46 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('laboratory_specimen.edit_specimen') }}

    -
    - -
    - -
    -
    - @include('investigations::laboratory_specimen.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($lab_specimen, ['method' => 'PUT', 'route' => ['laboratory_specimen.update',$lab_specimen] , 'data-toggle' => 'validator']) }} -
    - {{ Form::label('name', __('laboratory_specimen.specimen_name')) }} - {{ Form::text('name', $lab_specimen->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - {{ Form::button(__('laboratory_specimen.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10 submit-btn']) }} - {{ Form::button(__('laboratory_specimen.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/laboratory_specimen/inactive.blade.php b/docker/statistics/Modules/Investigations/Resources/views/laboratory_specimen/inactive.blade.php deleted file mode 100755 index 6fec7b3b..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/laboratory_specimen/inactive.blade.php +++ /dev/null @@ -1,82 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('laboratory_specimen.inactive_specimens') }}

    -
    -
    - -
    -
    - -@include('investigations::laboratory_specimen.menu') - -
    -
    - @include('flash::message') -
    -
    - - - - - - - - - - @php $counter = 1; @endphp - @foreach($lab_specimens as $specimen) - - - - - - @php $counter++; @endphp - @endforeach - -
    #{{ __('laboratory_specimen.name') }}
    {{ $counter }}{{ $specimen->name }} - {{ __('laboratory_specimen.activate') }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/laboratory_specimen/index.blade.php b/docker/statistics/Modules/Investigations/Resources/views/laboratory_specimen/index.blade.php deleted file mode 100755 index 713373c0..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/laboratory_specimen/index.blade.php +++ /dev/null @@ -1,97 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('laboratory_specimen.lab_specimens') }}

    -
    -
    - -
    -
    - -@include('investigations::laboratory_specimen.menu') - -
    -
    - @include('flash::message') - @if (count($errors) > 0) -
    -
      - @foreach ($errors->all() as $error) -
    • {{ $error }}
    • - @endforeach -
    -
    - @endif -
    -
    - - - - - - - - - - - @php $counter = 1; @endphp - @foreach($lab_specimens as $specimen) - - - - - - - @php $counter++; @endphp - @endforeach - -
    #{{ __('laboratory_specimen.name') }}
    {{ $counter }}{{ $specimen->name }} - {{ __('laboratory_specimen.edit') }} - - {{ Form::model($specimen->id ,['method' => 'DELETE', 'route' => ['laboratory_specimen.destroy', $specimen->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/laboratory_specimen/menu.blade.php b/docker/statistics/Modules/Investigations/Resources/views/laboratory_specimen/menu.blade.php deleted file mode 100755 index b7fc0be3..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/laboratory_specimen/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ - \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/labs/bulk/create.blade.php b/docker/statistics/Modules/Investigations/Resources/views/labs/bulk/create.blade.php deleted file mode 100755 index 1f05e0ff..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/labs/bulk/create.blade.php +++ /dev/null @@ -1,144 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('labs.create_multiple_labs') }}

    -
    - -
    - -
    -
    - @include('investigations::labs.menu') - @include('flash::message') - - {{ Form::open(['method'=>'POST', 'route'=>'labs.store_bulk']) }} - -
    -
    - - - - - {{-- - - - - --}} - - {{-- --}} - - - - - {{-- - --}} - - - - @for($i = 0; $i < 25; $i++) - - - {{-- - - - - --}} - - {{-- --}} - - - - - {{-- - --}} - - @endfor - - - - - {{-- - - - - --}} - - {{-- - --}} - - - - {{-- - --}} - - -
    {{ __('labs.name') }}{{ __('labs.cost') }}{{ __('labs.insurance_status') }}{{ __('labs.non_insured_price') }}{{ __('labs.insured_price') }}{{ __('labs.income_account') }}{{ __('labs.expense_account') }}{{ __('labs.stock') }}{{ __('labs.reorder_level') }}{{ __('labs.description') }}{{ __('labs.form') }}{{ __('labs.unit') }}{{ __('labs.expiry_date') }}{{ __('labs.supplier') }}
    - - - {{ Form::select('chart_of_account[]', $chart_of_accounts, null, ['class'=>'form-control compulsory income_account']) }} - - {{ Form::select('expenses_account_id[]', $expense_accounts, null, ['class'=>'form-control compulsory expense_account']) }} - - - - - - -
    {{ __('labs.name') }}{{ __('labs.cost') }}{{ __('labs.insurance_status') }}{{ __('labs.non_insured_price') }}{{ __('labs.insured_price') }}{{ __('labs.income_account') }}{{ __('labs.expense_account') }}{{ __('labs.stock') }}{{ __('labs.reorder_level') }}{{ __('labs.description') }}{{ __('labs.form') }}{{ __('labs.unit') }}{{ __('labs.expiry_date') }}{{ __('labs.supplier') }}
    -
    - -
    - -
    - -
    -
    - - {{ Form::close() }} -
    -
    - -@endsection - -@push('scripts') - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/labs/bulk/edit.blade.php b/docker/statistics/Modules/Investigations/Resources/views/labs/bulk/edit.blade.php deleted file mode 100755 index ff2304fb..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/labs/bulk/edit.blade.php +++ /dev/null @@ -1,265 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('labs.edit_all_labs') }}

    -
    - -
    - -
    -
    - @include('investigations::labs.menu') - @include('flash::message') - -
    - {{ Form::open(['method' => 'POST', 'route' => 'labs.update_bulk']) }} - - -
    - - - - - {{-- - - - - --}} - - {{-- --}} - - - - - {{-- - --}} - - - - @foreach ($labs as $item) - - - - {{-- - - - --}} - {{-- --}} - - {{-- --}} - - - - - {{-- - --}} - - @endforeach - - - - - {{-- - - - - --}} - - {{-- - --}} - - - - {{-- - --}} - - -
    {{ __('labs.name') }}{{ __('labs.cost') }}{{ __('labs.insurance_status') }}{{ __('labs.non_insured_price') }}{{ __('labs.insured_price') }}{{ __('labs.income_account') }}{{ __('labs.expense_account') }}{{ __('labs.stock') }}{{ __('labs.reorder_level') }}{{ __('labs.description') }}{{ __('labs.form') }}{{ __('labs.unit') }}{{ __('labs.expiry_date') }}{{ __('labs.supplier') }}
    - - - {{ Form::select('chart_of_account[]', $chart_of_accounts, $item->account_id, ['class' => 'form-control compulsory income_account', 'required']) }} - - {{ Form::select('expenses_account_id[]', $expense_accounts, $item->expenses_account_id, ['class' => 'form-control compulsory expense_account', 'required']) }} - - {{ Form::select('form[]', $forms, $item->form_id, ['class' => 'form-control expenses_account']) }} - - {{-- --}} - - {{ Form::select('unit[]', $units_of_measure, $item->unit_id, ['class' => 'form-control expenses_account']) }} - {{-- --}} - - -
    {{ __('labs.name') }}{{ __('labs.cost') }}{{ __('labs.insurance_status') }}{{ __('labs.non_insured_price') }}{{ __('labs.insured_price') }}{{ __('labs.income_account') }}{{ __('labs.expense_account') }}{{ __('labs.stock') }}{{ __('labs.reorder_level') }}{{ __('labs.description') }}{{ __('labs.form') }}{{ __('labs.unit') }}{{ __('labs.expiry_date') }}{{ __('labs.supplier') }}
    - -
    - -
    - -
    -
    - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/labs/create.blade.php b/docker/statistics/Modules/Investigations/Resources/views/labs/create.blade.php deleted file mode 100755 index cd19677a..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/labs/create.blade.php +++ /dev/null @@ -1,200 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('labs.create') }}

    -
    - -
    - -
    -
    - @include('investigations::labs.menu') - @include('flash::message') - -
    -
    - {{ Form::open(['method'=>'post', 'method' => 'POST', 'route' => 'labs.store']) }} - -
    -
    -
    - - -
    -
    - {{--
    -
    - - -
    -
    --}} -
    - -
    - {{--
    -
    - - -
    -
    --}} - {{--
    -
    - - -
    - -
    --}} -
    - -
    - {{--
    -
    - - -
    -
    - -
    -
    - - {{ Form::select('chart_of_account', $chart_of_accounts, null, ['class'=>'form-control compulsory income_account', 'required']) }} -
    -
    --}} -
    - - {{--
    -
    -
    - - -
    -
    - -
    -
    - - -
    -
    -
    --}} - -
    -
    -
    - - -
    -
    -
    -
    - - -
    -
    -
    - -
    -
    -
    - - -
    -
    -
    -
    - {{ Form::label('expenses_account_id', __('general_items.expense_account')) }} - {{ Form::select('expenses_account_id', $expense_accounts, null, ['class' => 'form-control expenses_account', 'required']) }} -
    -
    -
    -
    -
    - {{ Form::label('re_order_level_id', __('labs.reorder_level') ) }} - {{ Form::number('re_order_level', null, ['class' => 'form-control ']) }} -
    -
    -
    - {{--
    -
    - - -
    -
    --}} -
    - -
    - {{--
    -
    - - -
    -
    --}} - - - -
    -
    -
    -
    - -
    -
    -
    - - {{ Form::close() }} - -
    -
    - -
    -
    -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/labs/dashboard.blade.php b/docker/statistics/Modules/Investigations/Resources/views/labs/dashboard.blade.php deleted file mode 100755 index 59d8dbb1..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/labs/dashboard.blade.php +++ /dev/null @@ -1,287 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    Dashboard

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    - -
    -

    {{ count($total_investigations) }}

    - Total Investigations -
    -
    -
    -
    -
    -
    -
    - -
    -

    {{ count($total_pending_investigations) }}

    - Pending Investigations -
    -
    -
    -
    -
    -
    -
    - -
    -

    {{ count($total_paid_investigations) }}

    - Paid Investigations -
    -
    -
    -
    -
    -
    -
    - -
    -

    {{ count($total_unpaid_investigations) }}

    - Unpaid Investigations -
    -
    -
    -
    -
    -
    -
    -
    -

    New Patient List

    -

    this is the sample data here for crm

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    #First NameLast NameUsernameDiseases
    1DeshmukhProhaska@GeneliaFever
    2DeshmukhGaylord@RiteshCancer
    3SanghaniGusikowski@GovindaLakva
    4RoshanRogahn@HritikDental
    5JoshiHickle@MarutiCancer
    6NigamEichmann@SonuDental
    -
    -
    -
    -
    -
    - number of finished investigations -
    -
    -
    -
    - number of finished investigations -
    -
    -
    - -
    -
    -
    - graph -
    -
    -
    -
    -

    New Patient List

    -

    this is the sample data here for crm

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    #First NameLast NameUsernameDiseases
    1DeshmukhProhaska@GeneliaFever
    2DeshmukhGaylord@RiteshCancer
    3SanghaniGusikowski@GovindaLakva
    4RoshanRogahn@HritikDental
    5JoshiHickle@MarutiCancer
    6NigamEichmann@SonuDental
    -
    -
    -
    -
    - -
    -
    -
    -

    New Patient List

    -

    this is the sample data here for crm

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    #First NameLast NameUsernameDiseases
    1DeshmukhProhaska@GeneliaFever
    2DeshmukhGaylord@RiteshCancer
    3SanghaniGusikowski@GovindaLakva
    4RoshanRogahn@HritikDental
    5JoshiHickle@MarutiCancer
    6NigamEichmann@SonuDental
    -
    -
    -
    -
    -
    - graph -
    -
    -
    -
    - -@endsection \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/labs/edit.blade.php b/docker/statistics/Modules/Investigations/Resources/views/labs/edit.blade.php deleted file mode 100755 index 532486f5..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/labs/edit.blade.php +++ /dev/null @@ -1,153 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('labs.labs') }}

    -
    - -
    - -
    -
    - @include('investigations::labs.menu') - @include('flash::message') - -
    - {{ Form::open(['method' => 'post', 'method' => 'PUT', 'route' => ['labs.update', $lab]]) }} -
    - - - - -
    - - {{--
    - - -
    --}} - - {{--
    - - -
    --}} - - {{--
    - - -
    --}} - - {{--
    - - -
    --}} -{{-- -
    - - {{ Form::select('chart_of_account', $chart_of_accounts, $lab->account_id, ['class' => 'form-control compulsory income_account', 'required']) }} -
    --}} - -
    - {{ Form::label('expenses_account_id', __('general_items.expense_account')) }} - {{ Form::select('expenses_account_id', $expense_accounts, $lab->expenses_account_id, ['class' => 'form-control expenses_account', 'required']) }} -
    -
    - - {{--
    - - -
    --}} - -
    - - -
    - -
    - - -
    - -
    - {{ Form::label('unit_id', __('labs.form')) }} - {{ Form::select('form', $forms, $lab->form_id, ['class' => 'form-control expenses_account']) }} -
    - {{-- --}} -
    - -
    - {{ Form::label('unit_id', __('labs.unit')) }} - {{ Form::select('unit', $units, $lab->unit_id, ['class' => 'form-control expenses_account']) }} -
    -
    - - {{--
    - - -
    --}} - - {{--
    - - -
    --}} - -
    - -
    - - {{ Form::close() }} - -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/labs/inactive.blade.php b/docker/statistics/Modules/Investigations/Resources/views/labs/inactive.blade.php deleted file mode 100755 index 932ce715..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/labs/inactive.blade.php +++ /dev/null @@ -1,176 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('labs.labs') }}

    -
    - -
    - -
    -
    - @include('investigations::labs.menu') - - @include('flash::message') - -
    -
    - - - - - - - - - - - - - - - @foreach ($labs as $item) - - - - - @endforeach - -
    {{ __('labs.name') }}{{ __('labs.action') }}
    {{ __('labs.name') }}{{ __('labs.action') }}
    {{ $item->name }} - {{ Form::model($item->id, ['method' => 'POST', 'route' => ['labs.activate', $item->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/labs/index.blade.php b/docker/statistics/Modules/Investigations/Resources/views/labs/index.blade.php deleted file mode 100755 index 28c66cf8..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/labs/index.blade.php +++ /dev/null @@ -1,288 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('labs.labs') }}

    -
    - -
    - -
    -
    - @include('investigations::labs.menu') - - @include('flash::message') - -
    -
    -
    - {{-- {{ __('clinical_data.lab_usages_report') }} --}} -
    - @if (Auth::user()->can('labs-create')) - {{ __('labs.add_lab') }} - {{ __('labs.add_lab_form') }} - @endif - @if (Auth::user()->can('labs-bulk-create')) - {{ __('labs.add_multiple_labs') }} - @endif - @if (Auth::user()->can('labs-delete')) - {{ __('labs.inactive_labs') }} - @endif - -
    -
    -
    -
    - - - - {{-- --}} - - {{-- --}} - {{-- --}} - {{-- --}} - {{-- --}} - - - {{-- --}} - {{-- --}} - - - - - - - @foreach ($labs as $item) - - {{-- --}} - - - - - - - - - - - @endforeach - - - - {{-- --}} - - {{-- --}} - {{-- --}} - {{-- - --}} - - - {{-- --}} - {{-- --}} - - - - - -
    #{{ __('labs.name') }}{{ __('labs.cost') }}{{ __('labs.insurance_status') }}{{ __('labs.non_insured_price') }}{{ __('labs.insured_price') }}{{ __('labs.lab_stock') }}{{ __('labs.store_stock') }}{{ __('labs.current_batch') }}{{ __('labs.expiry_date') }}{{ __('labs.expense_account') }}
    - {{ $item->name }} - {{--
    - - - {{ Form::model($item->id, ['method' => 'DELETE', 'route' => ['labs.destroy', $item->id]]) }} - - {{ Form::close() }} -
    --}} -
    {{ $item->total_lab_stock }} @if (get_name($item->form_id, 'id', 'name', 'lab_forms') != 'N/A') {{ get_name($item->form_id, 'id', 'name', 'lab_forms') }} @else {{ null }}@endif{{ $item->total_store_stock }} @if (get_name($item->form_id, 'id', 'name', 'lab_forms') != 'N/A'){{ get_name($item->form_id, 'id', 'name', 'lab_forms') }}@else {{ null }}@endif{{ get_name($item->expenses_account_id, 'id', 'name', 'chart_of_accounts') }} - - - {{ __('labs.edit') }} - - - @if(empty($item->total_stock)&& empty($item->store_stock)) - {{ Form::model($item->id, ['method' => 'DELETE', 'route' => ['labs.destroy', $item->id]]) }} - - {{ Form::close() }} - @elseif (!empty($item->total_stock) || !empty($item->store_stock)) - Still Stocked - @endif -
    #{{ __('labs.name') }}{{ __('labs.cost') }}{{ __('labs.insurance_status') }}{{ __('labs.non_insured_price') }}{{ __('labs.insured_price') }}{{ __('labs.lab_stock') }}{{ __('labs.store_stock') }}{{ __('labs.current_batch') }}{{ __('labs.expiry_date') }}{{ __('labs.expense_account') }}
    - -
    - {{-- - {{ __('labs.clear_stock') }} --}} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/labs/lab_usage_listing.blade.php b/docker/statistics/Modules/Investigations/Resources/views/labs/lab_usage_listing.blade.php deleted file mode 100755 index 3ab0891f..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/labs/lab_usage_listing.blade.php +++ /dev/null @@ -1,390 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('labs.labs_usage') }}

    -
    -
    - -
    -
    - - @include('investigations::labs.menu') - - @include('flash::message') - -
    -
    - @include('flash::message') - {{ Form::open(['route' => 'labs.usage', 'data-toggle' => 'validator', 'method' => 'POST']) }} -
    -
    -
    -
    - {{ __('labs.lab_item_usage') }} -
    - @if (Auth::user()->can('labs-report-usage')) - {{ __('clinical_data.labs_usages_report') }} - @endif -
    -
    -
    -
    -
    -
    - - @php $hospital_information = \Streamline\Models\HospitalInformation::first(); @endphp - Home
    -
    -
    -

    {{ $hospital_information->name }}

    -

    - {{ $hospital_information->phone_number }}, {{ $hospital_information->email }}, -
    - {{ get_name($hospital_information->sub_county, 'id', 'name', 'subcounties') }}, - {{ get_name($hospital_information->district, 'id', 'name', 'districts') }}, -
    {{ $hospital_information->country }}. -

    -
    -
    -
    -
    -

    {{ __('labs.date') }} : - {{ streamline_date_time(\Carbon\Carbon::now()->toDateTimeString()) }}

    -
    - -
    - {{ Form::label('dates', __('labs.enter_dates')) }} - -
    - - - - -
    -
    -
    -
    -
    -
    -

    -
    -
    -
    - @php - $options = "'; - foreach ($labs as $item) { - $options .= ""; - } - @endphp - -
    -
    -
    -
    -
    - -
    - -
    -
    -
    - - @php - $options = "'; - foreach ($labs as $item) { - $options .= ""; - } - @endphp - -
    -
    - -
    - -
    -
    -
    - -
    -
    - - -
    -
    - -
    -
    - -
    - -
    -
    -
    - -
    -
    - -
    - -
    -
    -
    - - - -
    -
    - -
    -
    -
    - -
    -
    -
    - {{ Form::close() }} -
    -
    -@endsection - -@push('scripts') - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/labs/lab_usages_report.blade.php b/docker/statistics/Modules/Investigations/Resources/views/labs/lab_usages_report.blade.php deleted file mode 100644 index 775b5581..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/labs/lab_usages_report.blade.php +++ /dev/null @@ -1,262 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('clinical_data.lab_usages_report') }}

    -
    -
    - -
    -
    - - @include('investigations::labs.menu') - - @include('flash::message') - -
    -
    -
    - {{ Form::open(['route' => 'labs.usages_report', 'data-toggle' => 'validator']) }} -
    - {{ Form::label('search_by', __('hmis_reports.date')) }} - {{ Form::select('search_by', ['0' => __('hmis_reports.last_24_hours'), '1' => __('hmis_reports.custom_date'), '2' => __('hmis_reports.custom_range')], '', ['class' => 'form-control', 'id' => 'search_by', 'required']) }} -
    -
    -
    - - - - -
    - {{ Form::label('labs', __('clinical_data.labs')) }} - {{ Form::select('lab_id', $labs_options, '', ['class' => 'form-control', 'id' => 'labs_id']) }} -
    -

    - {{ Form::submit(__('hmis_reports.search'), ['name' => 'filterBtn', 'class' => 'btn btn-success']) }} - {{ Form::close() }} -
    -
    -
    - -
    -
    -
    -
    -
    - {{ __('clinical_data.lab_usages_report') }} - {!! $search_string ?? $search_string !!} -
    - @if (Auth::user()->can('labs-usage-listing')) - {{ __('labs.lab_usage') }} - - @endif -
    -
    -
    -
    - - - - - - - - - - - - - - @if (count($labs_usages)) - @php $counter = 1; @endphp - @foreach ($labs_usages as $result) - - - - - - - - - - @php $counter++; @endphp - @endforeach - @endif - - - - - - - - - - - - - -
    #{{ __('clinical_data.name') }}{{ __('labs.quantity') }}{{ __('labs.cost_value') }}{{ __('labs.usage_period') }}{{ __('labs.recorded_on') }}{{ __('labs.recorded_by') }}
    - {{ $counter }}. - - {{ get_name($result->lab_id, 'id', 'name', 'labs') }} - - {{ $result->usage_quantity }} - - {{ ugandan_shillings($result->usage_quantity_cost) }} - - {{ streamline_date($result->start_date) }} to {{ streamline_date($result->end_date) }} - - {{ streamline_date($result->created_at) }} - - {{ get_full_name($result->created_by, 'id', 'first_name', 'last_name', 'users') }} -
    #{{ __('clinical_data.name') }}{{ __('labs.quantity') }}{{ __('labs.cost') }}{{ __('labs.usage_period') }}{{ __('labs.recorded_on') }}{{ __('labs.recorded_by') }}
    -
    -
    -
    -
    -
    - - {{-- -
    -
    -
    {{ __('clinical_data.lab_stock') }}
    -
    - - - - - - - - - - @foreach ($labs as $item) - - - - - - @endforeach - - - - - - - - -
    {{ __('clinical_data.name') }}{{ __('labs.store_stock') }}{{ __('clinical_data.lab_stock') }}
    {{ $item->name }}{{ $item->store_stock }}{{ $item->pharmacy_stock }}
    {{ __('clinical_data.name') }}{{ __('labs.store_stock') }}{{ __('clinical_data.lab_stock') }}
    -
    -
    -
    - --}} -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/labs/labs_stock_sheet.blade.php b/docker/statistics/Modules/Investigations/Resources/views/labs/labs_stock_sheet.blade.php deleted file mode 100755 index 3e035860..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/labs/labs_stock_sheet.blade.php +++ /dev/null @@ -1,266 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('labs.lab_stock_sheet') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('investigations::labs.menu') - @include('flash::message') -
    -
    - {{ csrf_field() }} -
    - @if(Auth::user()->can('edit-labs-stock-sheet')) -
    -
    - - - -
    - -
    - @endif -
    - {{ csrf_field() }} -
    - - - - - @if(track_items_using_batches()) - - @endif - - - - {{-- --}} - - - - - - @if(track_items_using_batches()) - - @endif - - - - {{-- --}} - - - - @foreach ($labs as $lab) - - - @if(track_items_using_batches()) - - @endif - - - - - - @endforeach - -
    {{ __('labs.name') }}{{ __('stores.batch_details') }}{{ __('labs.lab_stock') }}{{ __('labs.cost_value') }}{{ __('labs.sale_value') }}{{ __('labs.expiry_date') }}
    {{ __('labs.name') }}{{ __('stores.batch_details') }}{{ __('labs.lab_stock') }}{{ __('labs.cost') }}{{ __('labs.sale_value') }}{{ __('labs.expiry_date') }}
    - @if ($lab->insurance_coverage == 1) - {{ $lab->name }} - @else - {{ $lab->name }} - @endif - - @forelse($lab->batches as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->lab_stock }}
    - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - {{ __('stores.unit_cost') }}: {{ $record->cost_price }} -
    -
    - {{ Form::hidden('item_batch_watcher_id[]', 0) }} - {{ Form::hidden('batch_drug_id[]', $record->id) }} - {{ Form::hidden('batch_item_id[]', $record->item_id) }} - -
    - -
    - -
    -
    - -
    -
    -
    - -
    - -
    -
    - {{--
    - {{ __('stores.expiry_date') }}: {{ $record->expiry_date }} -
    --}} - -
    -
    - @empty - {{--
    -
    - {{ Form::hidden('item_batch_watcher_id[]', 0) }} - {{ Form::hidden('batch_drug_id[]', 0) }} - {{ Form::hidden('batch_item_id[]', 0) }} - -
    - -
    - -
    -
    -
    - -
    - -
    -
    - -
    -
    --}} - @endforelse - @if(count($lab->batches ) > 0) - @if(Auth::user()->can('add-batch-during-lab-stock-reconciliation')) -
    -
    -
    - @if(track_items_using_batches()) {{ $lab->total_stock }} @else {{ $lab->laboratory_stock }} @endif -
    - -
    {{ ugandan_shillings($lab->item_cost_value) }}{{ ugandan_shillings($lab->non_insured_price * $lab->total_stock) }} -
    -
    -
    - @if(Auth::user()->can('edit-labs-stock-sheet')) -
    -
    - -
    - -
    - @endif -
    - -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/labs/menu.blade.php b/docker/statistics/Modules/Investigations/Resources/views/labs/menu.blade.php deleted file mode 100755 index 7ef5c1da..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/labs/menu.blade.php +++ /dev/null @@ -1,29 +0,0 @@ -
    -
    - @if (Auth::user()->can('lab-management')) - {{ __('labs.view_all_labs') }} - {{ __('labs.view_lab_form') }} - @endif - - {{-- @if (Auth::user()->can('labs-create')) - {{ __('labs.add_lab') }} - {{ __('labs.add_lab_form') }} - @endif --}} - - @if (Auth::user()->can('labs-usage-listing')) - {{ __('labs.lab_usage') }} - @endif - @if (Auth::user()->can('requisition-for-labs')) - {{ __('labs.requisition_for_labs') }} - - @endif - - @if(Auth::user()->can('labs-stock-sheet')) - {{ __('labs.labs_stock_sheet') }} - @endif - @if (Auth::user()->can('labs-bulk-edit')) - {{ __('labs.edit_all_labs') }} - @endif - -
    -
    diff --git a/docker/statistics/Modules/Investigations/Resources/views/labs/pre_requisition_for_labs.blade.php b/docker/statistics/Modules/Investigations/Resources/views/labs/pre_requisition_for_labs.blade.php deleted file mode 100644 index 8f89239e..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/labs/pre_requisition_for_labs.blade.php +++ /dev/null @@ -1,276 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush -@section('content') -
    -
    -

    {{ __('labs.requisition_for_labs') }}

    -
    -
    - -
    -
    - - @include('investigations::labs.menu') - - @include('flash::message') - -
    -
    -
    - {{ Form::open(['route' => 'labs.prev_requisition_for_labs', 'data-toggle' => 'validator']) }} -
    - {{ Form::label('search_by', __('hmis_reports.date')) }} - {{ Form::select('search_by', ['0' => __('hmis_reports.last_24_hours'), '1' => __('hmis_reports.custom_date'), '2' => __('hmis_reports.custom_range')], '', ['class' => 'form-control', 'id' => 'search_by', 'required']) }} -
    -
    -
    - - - - - -

    - {{ Form::submit(__('hmis_reports.search'), ['name' => 'filterBtn', 'class' => 'btn btn-success']) }} - {{ Form::close() }} -
    -
    -
    -
    -
    -
    -
    -
    - {{ __('labs.previous_lab_requisitions') }} {!! $data['search_string'] ?? $data['search_string'] !!} -
    - @if (Auth::user()->can('requisition-for-labs')) - - {{ __('labs.requisition_for_labs') }} - - @endif -
    -
    -
    -
    - - - - - - - - - - - - - @forelse ($data['previous_requisitions_results'] as $result) - - - - - - - - @empty - - @endforelse - - - - - - - - - - - -
    {{ __('labs.requisition') }} #{{ __('labs.quantity') }}{{ __('labs.date_requested') }}{{ __('labs.status') }}
    # {{ sprintf('%04u', $result->id) }} - drug_id); - ?> - {{ count($drug_id_explode) }} {{ __('labs.items') }} - - {{ streamline_date($result->created_at) }} - - @if ($result->approval_status == 1) - - @else - - @endif - - @if($result->approval_status != 1) -
    - {{ csrf_field() }} - - - -
    - - @else - @if($result->issue_status == 1) -
    - {{ csrf_field() }} - - - -
    - @else - {{ __('pharmacy.view') }} - @endif - @endif - {{--
    - {{ csrf_field() }} - - - -
    --}} -
    {{ __('labs.search_records') }} -
    {{ __('labs.requisition') }} #{{ __('labs.quantity') }}{{ __('labs.date_requested') }}{{ __('labs.status') }}
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/labs/requisition_for_labs.blade.php b/docker/statistics/Modules/Investigations/Resources/views/labs/requisition_for_labs.blade.php deleted file mode 100755 index 0a6a1d43..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/labs/requisition_for_labs.blade.php +++ /dev/null @@ -1,228 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('labs.requisition_for_labs') }}

    -
    -
    - -
    -
    - - @include('investigations::labs.menu') - - @include('flash::message') -
    -
    -
    -
    -
    - {{ __('labs.requisition_for_labs') }} -
    - {{-- - {{ __('labs.requisition_for_labs') }} - --}} - @if (Auth::user()->can('requisition-for-labs')) - - {{ __('labs.previous_lab_requisitions') }} - - @endif -
    -
    -
    - {{ Form::open(['route' => 'labs.requisition_for_labs_search', 'method' => 'ANY', 'role' => 'search']) }} -
    -
    -
    - - {{ Form::select('items_ids[]', $labs, '', ['id' => 'labs_ids', 'multiple' => true, 'class' => 'form-control col-sm-6 labs_ids']) }} -
    -
    -
    - -
    -
    - - @if (isset($criteria) && isset($resultCount)) -

    - {{ __('labs.search_criteria') }} : {{ $criteria }} -    {{ __('labs.total_results') }} : {{ $resultCount }} -    {{ __('labs.clear_search') }} -

    - @endif - {{ Form::close() }} - - {{ Form::open(['method' => 'post', 'route' => 'labs.store_lab_requisitions']) }} - -
    - - - - - - - - - - - - @if (isset($results) && count($results) > 0) - @php $count = 0; @endphp - @foreach ($results as $result) - @php - $count++; - $lab_store_stock = $lab_stock = 0; - $store_batch_records =track_batch_stock(5,$result->id,'store_stock'); - $lab_batch_records =track_batch_stock(5,$result->id,'lab_stock'); - @endphp - - - - - - - - @endforeach - @else - - @endif - -
    #{{ __('labs.name') }}{{ __('pharmacy.store_stock') }}{{ __('labs.lab_stock') }}{{ __('labs.quantity_requested') }}
    {{ $count }} - {{ $result->name }} - - - @forelse($store_batch_records as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->store_stock }}
    - @php - $lab_store_stock += $record->store_stock; - @endphp - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - @empty - @endforelse - Total Stock: {{ $lab_store_stock }} -
    - @forelse($lab_batch_records as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->lab_stock }}
    - @php - $lab_stock += $record->lab_stock; - @endphp - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - @empty - @endforelse - Total : {{ $lab_stock }} -
    - -
    {{ __('labs.search_records') }} -
    -
    - @if (count($results) > 0) - {{ Form::button(__('labs.complete_request'), ['type' => 'submit', 'name' => 'complete_request', 'value' => '1', 'class' => 'btn btn-success waves-effect waves-light m-r-10']) }} - - {{ Form::close() }} - @endif -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/radiologies/all_radiology_form.blade.php b/docker/statistics/Modules/Investigations/Resources/views/radiologies/all_radiology_form.blade.php deleted file mode 100644 index 791c4fdd..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/radiologies/all_radiology_form.blade.php +++ /dev/null @@ -1,211 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('clinical_data.rad_form') }}

    -
    - -
    - -
    -
    - @include('investigations::radiologies.menu') - - @include('flash::message') - -
    -
    -
    -
    - @if (Auth::user()->can('radiologies-create')) - {{-- ti-plus --}} - - {{ __('clinical_data.add_radiology') }} - - {{ __('clinical_data.add_rad_form') }} - @endif - -
    -
    -
    -
    - - - - - - - - - - @forelse ($all_forms as $item) - - - @if (Auth::user()->can('radiologies-edit')) - - @endif - @if (Auth::user()->can('radiologies-delete')) - - @endif - - @empty - @endforelse - - - - - - - - -
    {{ __('clinical_data.rad_form_name') }}
    - {{ $item->name }} - - - - - {{ Form::model($item->id, ['method' => 'DELETE', 'route' => ['radiology_forms.inactive', $item->id]]) }} - - {{ Form::close() }} - -
    {{ __('lab_forms.lab_form_name') }}
    -
    -
    -
    -
    -@endsection - - -@push('scripts') - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/radiologies/create.blade.php b/docker/statistics/Modules/Investigations/Resources/views/radiologies/create.blade.php deleted file mode 100755 index 2fadc0a2..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/radiologies/create.blade.php +++ /dev/null @@ -1,84 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('clinical_data.add_radiology') }}

    -
    -
    - -
    -
    - -
    -
    - @include('investigations::radiologies.menu') -
    -
    - -
    - {{ Form::open(['route' => 'radiology.store', 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name',__('clinical_data.name')) }} - {{ Form::text('name','',['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    - {{ Form::label('cost_price',__('clinical_data.item_cost_price')) }} - {{ Form::text('cost_price','',['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    -
    - {{ Form::label('payables_account_id', __('clinical_data.payables_account')) }} - {{ Form::select('payables_account_id', $payables_accounts, null, ['class' => 'form-control']) }} -
    -
    -
    -
    -
    - {{ Form::label('expenses_account_id', __('clinical_data.expenses_account')) }} - {{ Form::select('expenses_account_id', $expense_accounts, null, ['class' => 'form-control']) }} -
    -
    -
    -
    -
    - {{ Form::label('re_order_level_id', __('labs.reorder_level') ) }} - {{ Form::number('re_order_level', null, ['class' => 'form-control ']) }} -
    -
    -
    -
    -
    - {{ Form::label('form_id', __('labs.form')) }} - {{ Form::select('form', $forms, null, ['class' => 'form-control']) }} -
    -
    -
    -
    - - {{ Form::button(__('clinical_data.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10 submit-btn']) }} - {{ Form::button(__('clinical_data.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - {{ Form::close() }} -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/radiologies/create_radiology_form.blade.php b/docker/statistics/Modules/Investigations/Resources/views/radiologies/create_radiology_form.blade.php deleted file mode 100644 index d9b5fc51..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/radiologies/create_radiology_form.blade.php +++ /dev/null @@ -1,45 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('clinical_data.add_rad_form') }}

    -
    - -
    - -
    -
    - @include('investigations::radiologies.menu') - - @include('flash::message') - -
    - {{ Form::open(['method'=>'POST', 'route'=>'radiology_forms.store']) }} - -
    - - -
    - -
    - -
    - - {{ Form::close() }} -
    -
    -
    - -@endsection - diff --git a/docker/statistics/Modules/Investigations/Resources/views/radiologies/edit.blade.php b/docker/statistics/Modules/Investigations/Resources/views/radiologies/edit.blade.php deleted file mode 100755 index c2d086f9..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/radiologies/edit.blade.php +++ /dev/null @@ -1,99 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('clinical_data.edit_radiologies') }}

    -
    - -
    - -
    -
    - @include('investigations::radiologies.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($radiology, ['method' => 'PUT', 'route' => ['radiology.update',$radiology], 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('clinical_data.name')) }} - {{ Form::text('name',$radiology->item_name,['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    - {{ Form::label('cost_price', __('clinical_data.item_cost_price')) }} - {{ Form::text('cost_price', $radiology->cost_price,['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    -
    - {{ Form::label('payables_account_id', __('clinical_data.payables_account')) }} - {{ Form::select('payables_account_id', $payables_accounts, $radiology->payables_account_id, ['class' => 'form-control drop']) }} -
    -
    -
    -
    -
    - {{ Form::label('expenses_account_id', __('clinical_data.expenses_account')) }} - {{ Form::select('expenses_account_id', $expenses_accounts, $radiology->expenses_account_id, ['class' => 'form-control drop']) }} -
    -
    -
    -
    -
    - {{ Form::label('form_id', __('clinical_data.form')) }} - {{ Form::select('form_id', $forms, $radiology->form_id, ['class' => 'form-control drop', 'required']) }} -
    -
    -
    -
    -
    - {{ Form::label('re_order_level_id', __('labs.reorder_level') ) }} - {{ Form::number('re_order_level', $radiology->reorder_level, ['class' => 'form-control ']) }} -
    -
    -
    -
    - - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/radiologies/edit_all.blade.php b/docker/statistics/Modules/Investigations/Resources/views/radiologies/edit_all.blade.php deleted file mode 100644 index b2123f9f..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/radiologies/edit_all.blade.php +++ /dev/null @@ -1,111 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('investigations.edit_investigation') }}

    -
    -
    - -
    -
    - -@include('investigations::radiologies.menu') - -
    -
    - - @include('flash::message') -
    - {{ Form::model($radiologies, ['method' => 'ANY', 'route' => ['radiology.update_all', 'data-toggle' => 'validator']]) }} - -
    - - - - - - - - - - - - - - @foreach($radiologies as $investigation) - - - - - - - - - - - @endforeach - -
    {{ __('clinical_data.name') }}{{ __('clinical_data.item_cost_price') }}{{ __('clinical_data.payables_account') }}{{ __('clinical_data.expenses_account') }}{{ __('clinical_data.form') }}{{ __('labs.reorder_level') }}
    -

    {{ $investigation->name }}

    - {{ Form::text('name[]', $investigation->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    {{ Form::number('cost_price[]', $investigation->cost_price, ['class' => 'form-control compulsory', 'required']) }}{{ Form::select('payables_account_id[]',$payables_accounts,$investigation->payables_account_id,['class' => 'form-control drop']) }}{{ Form::select('expenses_account_id[]',$expense_accounts,$investigation->expenses_account_id,['class' => 'form-control drop']) }}{{ Form::select('form_id[]',$forms,$investigation->form_id,['class' => 'form-control drop']) }}{{ Form::number('re_order_level[]',$investigation->reorder_level,['class' => 'form-control ']) }}
    -
    - - {{ Form::button(__('investigations.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('investigations.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/radiologies/edit_radiology_form.blade.php b/docker/statistics/Modules/Investigations/Resources/views/radiologies/edit_radiology_form.blade.php deleted file mode 100644 index f87f8535..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/radiologies/edit_radiology_form.blade.php +++ /dev/null @@ -1,45 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('clinical_data.add_rad_form') }}

    -
    - -
    - -
    -
    - @include('investigations::radiologies.menu') - - @include('flash::message') - -
    - {{ Form::open(['method'=>'PUT', 'route'=>['radiology_forms.update',$form->id]]) }} - -
    - - -
    - -
    - -
    - - {{ Form::close() }} -
    -
    -
    - -@endsection - diff --git a/docker/statistics/Modules/Investigations/Resources/views/radiologies/inactive.blade.php b/docker/statistics/Modules/Investigations/Resources/views/radiologies/inactive.blade.php deleted file mode 100755 index 53bb9528..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/radiologies/inactive.blade.php +++ /dev/null @@ -1,85 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('clinical_data.activate_radiologies') }}

    -
    -
    - -
    -
    - -
    -
    - @include('investigations::radiologies.menu') -
    -
    - -
    -
    -
    -
    - - - - - - - - - - - - - @foreach($radiologies as $radiology) - - - - - - - - @endforeach - -
    {{ __('clinical_data.radiology') }}{{ __('clinical_data.cost_price') }}{{ __('clinical_data.expense_account') }}{{ __('clinical_data.payables_account') }}
    {{ $radiology->name }}{{ $radiology->cost_price }}{{ isset($accounts[$radiology->expenses_account_id]) ? $accounts[$radiology->expenses_account_id] : "" }}{{ isset($accounts[$radiology->payables_account_id]) ? $accounts[$radiology->payables_account_id] : "" }} - {{ Form::model($radiology->id ,['method' => 'POST', 'route' => ['radiology.activate', $radiology->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/radiologies/index.blade.php b/docker/statistics/Modules/Investigations/Resources/views/radiologies/index.blade.php deleted file mode 100755 index 1c808cd5..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/radiologies/index.blade.php +++ /dev/null @@ -1,124 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('clinical_data.title_radiologies') }}

    -
    -
    - -
    -
    - -
    -
    - @include('investigations::radiologies.menu') -
    -
    - - -
    -
    - @include('flash::message') -
    -
    -
    -
    - @if (Auth::user()->can('radiologies-create')) - {{-- ti-plus --}} - - {{ __('clinical_data.add_radiology') }} - - {{ __('clinical_data.add_rad_form') }} - @endif - @if (Auth::user()->can('radiologies-delete')) - {{-- ti-trash --}} - - {{ __('clinical_data.inactive_radiologies') }} - @endif - -
    -
    -
    -
    - - - - - - - - - - @if (Auth::user()->can('radiologies-edit')) - - @endif - @if (Auth::user()->can('radiologies-delete')) - - @endif - - - - @foreach($radiologies as $radiology) - - - - - - - - @if (Auth::user()->can('radiologies-edit')) - - @endif - @if (Auth::user()->can('radiologies-delete')) - - @endif - - @endforeach - -
    {{ __('clinical_data.radiology') }}{{ __('labs.cost_value') }}{{ __('clinical_data.imaging_stock') }}{{ __('clinical_data.store_stock') }}{{ __('clinical_data.expense_account') }}{{ __('clinical_data.payables_account') }}
    {{ $radiology->name }}{{ $radiology->cost_price }}{{ $radiology->total_lab_stock }} @if ( get_name($radiology->form_id, 'id', 'name', 'general_forms') == "N/A") {{ null }} @else {{ get_name($radiology->form_id, 'id', 'name', 'general_forms') }} @endif{{ $radiology->total_store_stock }} @if ( get_name($radiology->form_id, 'id', 'name', 'general_forms') == "N/A") {{ null }} @else {{ get_name($radiology->form_id, 'id', 'name', 'general_forms') }} @endif{{ isset($accounts[$radiology->expenses_account_id]) ? $accounts[$radiology->expenses_account_id] : "" }}{{ isset($accounts[$radiology->payables_account_id]) ? $accounts[$radiology->payables_account_id] : "" }} - {{ __('clinical_data.edit') }} - - @if(empty($radiology->total_lab_stock)&& empty($radiology->total_store_stock)) - {{ Form::model($radiology->id ,['method' => 'DELETE', 'route' => ['radiology.destroy', $radiology->id]]) }} - - {{ Form::close() }} - @elseif (!empty($radiology->total_lab_stock) || !empty($radiology->total_store_stock)) - Still Stocked - @endif -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/radiologies/menu.blade.php b/docker/statistics/Modules/Investigations/Resources/views/radiologies/menu.blade.php deleted file mode 100755 index c02f6248..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/radiologies/menu.blade.php +++ /dev/null @@ -1,33 +0,0 @@ -
    -
    -
    -
    - - @if (Auth::user()->can('radiologies-management')) - {{-- ti-eye --}} - - {{ __('clinical_data.view_radiologies') }} - - {{ __('clinical_data.view_rad_form') }} - @endif - @if (Auth::user()->can('radiologies-usage-listing')) - - {{ __('clinical_data.radiology_usage') }} - @endif - @if (Auth::user()->can('requisition-for-radiologies')) - {{-- ti-pencil --}} - - {{ __('clinical_data.requisition_radiologies') }} - @endif - @if (Auth::user()->can('radiologies-stock-sheet')) - - {{ __('clinical_data.radiology_stock_sheet') }} - @endif - - -
    -
    - - -
    -
    diff --git a/docker/statistics/Modules/Investigations/Resources/views/radiologies/prev_requisition_for_radiologies.blade.php b/docker/statistics/Modules/Investigations/Resources/views/radiologies/prev_requisition_for_radiologies.blade.php deleted file mode 100644 index 1d298029..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/radiologies/prev_requisition_for_radiologies.blade.php +++ /dev/null @@ -1,229 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('clinical_data.requisition_for_radiologies') }}

    -
    -
    - -
    -
    - -@include('investigations::radiologies.menu') - -@include('flash::message') -
    -
    -
    - {{ Form::open(['route' => 'radiology.prev_requisition_for_radiology_search', 'method'=>'post' ,'data-toggle' => 'validator']) }} -
    - {{ Form::label('search_by', __('hmis_reports.date')) }} - {{ Form::select('search_by', ['0' => __('hmis_reports.last_24_hours'), '1' => __('hmis_reports.custom_date'), '2' => __('hmis_reports.custom_range')], '', ['class' => 'form-control', 'id' => 'search_by', 'required']) }} -
    -
    -
    - - - - - -

    - {{ Form::submit(__('hmis_reports.search'), ['name' => 'filterBtn', 'class' => 'btn btn-success']) }} - {{ Form::close() }} -
    -
    -
    -
    -
    -
    -
    - {{ __('clinical_data.previous_radiology_requisitions') }} {!! $search_string ?? $search_string !!} -
    - @if (Auth::user()->can('requisition-for-radiologies')) - {{-- ti-pencil --}} - - {{ __('clinical_data.requisition_radiologies') }} - @endif -
    -
    -
    -
    - - - - - - - - - - - - @forelse($previous_requisitions_results as $result) - - - - - - - - @empty - - @endforelse - - - - - - - - - - - -
    {{ __('labs.requisition') }} #{{ __('labs.quantity') }}{{ __('labs.date_requested') }}{{ __('labs.status') }}
    # {{ sprintf('%04u', $result->id) }} - drug_id); - ?> - {{ count($drug_id_explode) }} {{ __('labs.items') }} - - {{ streamline_date($result->created_at) }} - - @if($result->approval_status == 1) - - @else - - @endif - - @if($result->approval_status != 1) -
    - {{ csrf_field() }} - - - -
    - - @else - @if($result->issue_status == 1) -
    - {{ csrf_field() }} - - - -
    - @else - {{ __('pharmacy.view') }} - @endif - @endif -
    {{ __('labs.search_records') }}
    {{ __('labs.requisition') }} #{{ __('labs.quantity') }}{{ __('labs.date_requested') }}{{ __('labs.status') }}
    -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/radiologies/radiology_stock_sheet.blade.php b/docker/statistics/Modules/Investigations/Resources/views/radiologies/radiology_stock_sheet.blade.php deleted file mode 100644 index e031d6d7..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/radiologies/radiology_stock_sheet.blade.php +++ /dev/null @@ -1,245 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('clinical_data.radiologies_stock_sheet') }}

    -
    -
    - -
    -
    - @include('investigations::radiologies.menu') - -
    - -
    - - @include('flash::message') -
    -
    - {{ csrf_field() }} -
    - @if(Auth::user()->can('edit-radiologies-stock-sheet')) -
    -
    - - -
    - -
    -
    -
    - @endif -
    -
    - - - - - @if(track_items_using_batches())@endif - - - {{-- --}} - {{-- --}} - - - - - - @if(track_items_using_batches()) - - @endif - - - {{-- --}} - {{-- --}} - - - - @forelse ($radiologies as $lab) - - - @if(track_items_using_batches()) - - @endif - - - {{-- --}} - {{-- --}} - - @empty - - @endforelse - -
    {{ __('labs.name') }}{{ __('stores.batch_details') }}{{ __('clinical_data.radiology_stock') }}{{ __('labs.cost_value') }}{{ __('labs.sale_value') }}{{ __('labs.expiry_date') }}
    {{ __('labs.name') }}{{ __('stores.batch_details') }}{{ __('clinical_data.radiology_stock') }}{{ __('labs.cost') }}{{ __('labs.sale_value') }}{{ __('labs.expiry_date') }}
    - @if ($lab->insurance_coverage == 1) - {{ $lab->name }} - @else - {{ $lab->name }} - @endif - - @forelse($lab->batches as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->lab_stock }}
    - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - {{ __('stores.unit_cost') }}: {{ $record->cost_price }} -
    -
    - {{ Form::hidden('item_batch_watcher_id[]', 0) }} - {{ Form::hidden('batch_drug_id[]', $record->id) }} - {{ Form::hidden('batch_item_id[]', $record->item_id) }} - -
    -
    - -
    -
    - -
    -
    - -
    -
    - - @empty -
    -
    - No Batches Found -
    -
    - - @endforelse - @if(count($lab->batches ) > 0) - @if(Auth::user()->can('add-batch-during-lab-stock-reconciliation')) -
    -
    -
    - @if(track_items_using_batches()) {{ $lab->total_stock }} @else {{ $lab->pharmacy_stock }} @endif - -
    - -
    {{ ugandan_shillings($lab->item_cost_value) }}{{ ugandan_shillings($lab->non_insured_price * $labs_lab_stock) }} - -
    - {{ streamline_date($lab->expiry_date) }} -
    - -
    -
    -
    - @if(Auth::user()->can('edit-radiologies-stock-sheet')) -
    -
    - -
    -
    - @endif - -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/radiologies/radiology_usage.blade.php b/docker/statistics/Modules/Investigations/Resources/views/radiologies/radiology_usage.blade.php deleted file mode 100755 index 2d6cb2b1..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/radiologies/radiology_usage.blade.php +++ /dev/null @@ -1,390 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('clinical_data.radiologies_usage') }}

    -
    -
    - -
    -
    - - @include('investigations::radiologies.menu') - - @include('flash::message') - -
    -
    -
    -
    - @include('flash::message') -
    -
    - {{ __('clinical_data.radiologies_usage') }} -
    - @if (Auth::user()->can('radiologies-report-usage')) - - {{ __('clinical_data.radiology_usages_report') }} - @endif -
    -
    -
    - {{ Form::open(['route' => 'radiology.usage', 'data-toggle' => 'validator', 'method' => 'POST']) }} -
    -
    -
    - - @php $hospital_information = \Streamline\Models\HospitalInformation::first(); @endphp - Home
    -
    -
    -

     {{ $hospital_information->name }}

    -

    {{ $hospital_information->phone_number }}, - {{ $hospital_information->email }}, -
    - {{ get_name($hospital_information->sub_county, 'id', 'name', 'subcounties') }}, - {{ get_name($hospital_information->district, 'id', 'name', 'districts') }}, -
    {{ $hospital_information->country }}. -

    -
    -
    -
    -
    -

    {{ __('labs.date') }} : - {{ streamline_date_time(\Carbon\Carbon::now()->toDateTimeString()) }}

    -
    - -
    - {{ Form::label('dates', __('labs.enter_dates')) }} - -
    - - - -
    -
    -
    -
    - -
    -
    - -
    -
    -
    - - @php - $options = "'; - foreach ($radiologies as $item) { - $options .= ""; - } - @endphp - - -
    -
    -
    -
    -
    - -
    - -
    -
    -
    - - @php - $options = "'; - foreach ($radiologies as $item) { - $options .= ""; - } - @endphp - -
    -
    - -
    - -
    -
    -
    - -
    -
    - - -
    -
    - -
    -
    - -
    - -
    -
    -
    - -
    -
    - -
    - -
    -
    -
    - - - -
    -
    - -
    -
    -
    - -
    -
    -
    - {{ Form::close() }} -
    -
    -
    -
    -
    - -
    -@endsection - -@push('scripts') - - - - - -@endpush diff --git a/docker/statistics/Modules/Investigations/Resources/views/radiologies/radiology_usages_report.blade.php b/docker/statistics/Modules/Investigations/Resources/views/radiologies/radiology_usages_report.blade.php deleted file mode 100644 index fbee395a..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/radiologies/radiology_usages_report.blade.php +++ /dev/null @@ -1,220 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('clinical_data.radiology_usages_report') }}

    -
    -
    - -
    -
    - - @include('investigations::radiologies.menu') - - @include('flash::message') - -
    -
    -
    - {{ Form::open(['route' => 'radiology.usages_report','data-toggle'=>'validator']) }} -
    - {{ Form::label('search_by', __('hmis_reports.date')) }} - {{ Form::select('search_by', ['0'=>__('hmis_reports.last_24_hours'),'1'=>__('hmis_reports.custom_date'),'2'=>__('hmis_reports.custom_range')], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - -
    - {{ Form::label('radiologies',__('clinical_data.radiologies')) }} - {{ Form::select('radiology_id', $radiologies_options,'',['class' => 'form-control', 'id' => 'radiologies_id']) }} -
    -

    - {{ Form::submit(__('hmis_reports.search'),['name' => 'filterBtn','class' => 'btn btn-success']) }} - {{ Form::close() }} -
    -
    -
    - -
    -
    -
    -
    -
    -
    - {{ __('clinical_data.radiology_usages_report') }} {!! $search_string ?? $search_string !!} -
    - @if (Auth::user()->can('radiologies-usage-listing')) - - {{ __('clinical_data.radiology_usage') }} - @endif -
    -
    -
    -
    - - - - - - - - - - - - - - @if(count($radiologies_usages)) - @php $counter = 1; @endphp - @foreach($radiologies_usages as $result) - - - - - - - - - - @php $counter++; @endphp - @endforeach - @endif - - - - - - - - - - - - - -
    #{{ __('clinical_data.name') }}{{ __('labs.quantity') }}{{ __('labs.cost_value') }}{{ __('labs.usage_period') }}{{ __('labs.recorded_by') }}{{ __('labs.recorded_on') }}
    - {{ $counter }}. - - {{ get_name($result->radiology_id, 'id', 'name', 'radiologies') }} - - {{ $result->usage_quantity }} - - {{ ugandan_shillings($result->usage_quantity_cost) }} - - {{ streamline_date($result->start_date) }} to {{ streamline_date($result->end_date) }} - - {{ get_full_name($result->created_by, 'id', 'first_name', 'last_name', 'users') }} - - {{ streamline_date($result->created_at) }} -
    #{{ __('clinical_data.name') }}{{ __('labs.quantity') }}{{ __('labs.cost') }}{{ __('labs.usage_range') }}{{ __('labs.recorded_by') }}{{ __('labs.recorded_on') }}
    -
    -
    -
    -
    -
    -
    - - -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Resources/views/radiologies/requisition_for_radiologies.blade.php b/docker/statistics/Modules/Investigations/Resources/views/radiologies/requisition_for_radiologies.blade.php deleted file mode 100755 index 75d891bc..00000000 --- a/docker/statistics/Modules/Investigations/Resources/views/radiologies/requisition_for_radiologies.blade.php +++ /dev/null @@ -1,263 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('clinical_data.requisition_for_radiologies') }}

    -
    -
    - -
    -
    - -@include('investigations::radiologies.menu') - -@include('flash::message') - -
    -
    -
    -
    -
    -
    - {{ __('clinical_data.requisition_for_radiologies') }} -
    - @if (Auth::user()->can('requisition-for-radiologies')) - - {{ __('clinical_data.previous_requisition_radiologies') }} - @endif -
    -
    -
    - {{ Form::open(['route' => 'radiology.requisition_for_radiology_search', 'method' => 'ANY', 'role' => 'search']) }} -
    -
    -
    - - {{ Form::select('items_ids[]',$labs,'',['id'=>'labs_ids', 'multiple'=>true, 'class' => 'form-control col-sm-8 labs_ids']) }} -
    -
    - -
    - -
    -
    - - @if(isset($criteria) && isset($resultCount)) -

    - {{ __('labs.search_criteria') }} : {{ $criteria }}    {{ __('labs.total_results') }} : {{ $resultCount }}    {{ __('labs.clear_search') }} -

    - @endif - {{ Form::close() }} - - {{ Form::open(['method' => 'post', 'route'=>'radiology.store_radiology_requisitions'])}} - -
    - - - - - - - - - - - - @if(count($results) > 0) - @php $count = 0; @endphp - @foreach($results as $result) - @php $count++; @endphp - - - - - - - - @endforeach - @else - - @endif - -
    #{{ __('labs.name') }}{{ __('pharmacy.store_stock') }}{{ __('clinical_data.imaging_stock') }}{{ __('labs.quantity_requested') }}
    {{ $count }} - {{ $result->name }} - - - @forelse($result->store_batches as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->store_stock }}
    - - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - @empty - @endforelse - Total Stock: {{ $result->total_store_stock }} -
    - @forelse($result->lab_batches as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->lab_stock }}
    - - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - @empty - @endforelse - Total : {{ $result->total_lab_stock }} -
    - -
    {{ __('labs.search_records') }}
    -
    - @if(count($results) > 0) - {{ Form::button(__('labs.complete_request'),['type'=>'submit','name'=>'complete_request','value'=>'1','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - - {{ Form::close() }} - @endif -
    -
    -
    -
    -
    - - {{--
    -
    -
    {{ __('clinical_data.previous_radiology_requisitions') }}
    -
    -
    - - - - - - - - - - - - @if(count($previous_requisitions_results) > 0) - @foreach($previous_requisitions_results as $result) - - - - - - - - @endforeach - @else - - @endif - - - - - - - - - - - -
    {{ __('labs.requisition') }} #{{ __('labs.quantity') }}{{ __('labs.date_requested') }}{{ __('labs.status') }}
    # {{ sprintf('%04u', $result->id) }} - drug_id); - ?> - {{ count($drug_id_explode) }} {{ __('labs.items') }} - - {{ streamline_date($result->created_at) }} - - @if($result->issue_status == 1) - - @else - - @endif - -
    - {{ csrf_field() }} - - - -
    -
    {{ __('labs.search_records') }}
    {{ __('labs.requisition') }} #{{ __('labs.quantity') }}{{ __('labs.date_requested') }}{{ __('labs.status') }}
    -
    -
    -
    -
    -
    --}} - -@endsection - -@push('scripts') - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Investigations/Routes/api.php b/docker/statistics/Modules/Investigations/Routes/api.php deleted file mode 100644 index ec83c568..00000000 --- a/docker/statistics/Modules/Investigations/Routes/api.php +++ /dev/null @@ -1,18 +0,0 @@ -get('/investigations', function () { - return "Investigations"; -}); diff --git a/docker/statistics/Modules/Investigations/Routes/web.php b/docker/statistics/Modules/Investigations/Routes/web.php deleted file mode 100644 index 5250d959..00000000 --- a/docker/statistics/Modules/Investigations/Routes/web.php +++ /dev/null @@ -1,193 +0,0 @@ -name('lab_machines.receive_results_mindray_bc5000'); -Route::any('lab_machines/import_results/{sample_id}', 'LabMachinesController@import_results'); -Route::any('lab_machines/view_lab_machine_results', 'LabMachinesController@view_lab_machine_results')->name('lab_machines.view_lab_machine_results'); -Route::any('lab_machines/preview_lab_machine_results/{id}', 'LabMachinesController@preview_lab_machine_results')->name('lab_machines.preview_lab_machine_results'); -Route::any('lab_machines/restart_python_script', 'LabMachinesController@restart_python_script')->name('lab_machines.restart_python_script'); -Route::any('lab_machines/receive_results_mindray', 'LabMachinesController@receive_results_mindray')->name('lab_machines.receive_results_mindray'); -Route::any('lab_machines/receive_results_mispa', 'LabMachinesController@receive_results_mispa')->name('lab_machines.receive_results_mispa'); - -Route::group(['middleware' => ['auth', 'disablebackbutton', 'user-locale','subscription-tracking']], function () { - /* Investigation Category Routes */ - Route::get('/investigation_categories/inactive', 'InvestigationCategoryController@inactive')->name('investigation_categories.inactive'); - Route::post('/investigation_categories/activate{id}', 'InvestigationCategoryController@activate')->name('investigation_categories.activate'); - Route::resource('investigation_categories', 'InvestigationCategoryController'); - - // Investigation Prints - Route::any('/investigations/print_selective_patient_investigation_results', 'InvestigationPrintController@print_selective_patient_investigation_results')->name('investigations.print_selective_patient_investigation_results'); - Route::get('/investigations/print_patient_investigation_results/{result_id}', 'InvestigationPrintController@print_patient_investigation_results'); - Route::get('/investigations/print_ultrasound_results_obstetric/{obstetric_ultrasound_report_id}', 'InvestigationPrintController@print_ultrasound_results_obstetric'); - Route::get('/investigations/print_historical_results_imaging/{patient_id}', 'InvestigationPrintController@print_historical_results_imaging'); - Route::get('/investigations/print_historical_results_labs/{patient_id}', 'InvestigationPrintController@print_historical_results_labs'); - Route::get('/investigations/print_lab_result_details/{id}', 'InvestigationPrintController@print_lab_result_details'); - Route::any('/investigations/print_selective_lab_result_details', 'InvestigationPrintController@print_selective_lab_result_details')->name('investigations.print_selective_lab_result_details'); - - // Investigation Result Templates - Route::any('/inactive/result_templates', 'InvestigationResultTemplateController@inactive')->name('result_templates.inactive'); - Route::any('/result_templates/activate/{id}', 'InvestigationResultTemplateController@activate')->name('result_templates.activate'); - Route::any('/result_templates/check_investigation_speciality_type/{id}/{counter}', 'InvestigationResultTemplateController@check_investigation_speciality_type'); - Route::any('/result_templates/get_templates_for_investigation/{id}/{is_variable}', 'InvestigationResultTemplateController@get_templates_for_investigation'); - Route::resource('result_templates', 'InvestigationResultTemplateController'); - - /* Laboratory specimen */ - Route::resource('laboratory_specimen', 'LaboratorySpecimenController'); - Route::get('inactive/laboratory_specimen', 'LaboratorySpecimenController@inactive')->name('laboratory_specimen.inactive'); - Route::get('laboratory_specimen/{id}/activate', 'LaboratorySpecimenController@activate')->name('laboratory_specimen.activate'); - - /* Investigation Specialised Variables */ - Route::get('/investigation_variables/inactive', 'InvestigationSpecialisedVariableController@inactive')->name('investigation_variables.inactive'); - Route::post('/investigation_variables/activate{id}', 'InvestigationSpecialisedVariableController@activate')->name('investigation_variables.activate'); - Route::resource('investigation_variables', 'InvestigationSpecialisedVariableController'); - - /* Investigation Test Codes Routes */ - Route::get('/lab_instruments/inactive', 'LabInstrumentsController@inactive')->name('lab_instruments.inactive'); - Route::post('/lab_instruments/activate{id}', 'LabInstrumentsController@activate')->name('lab_instruments.activate'); - Route::resource('lab_instruments', 'LabInstrumentsController'); - - // Lab Forms - Route::post('/lab_forms/activate/{id}', 'LabFormController@activate')->name('lab_forms.activate'); - Route::get('/lab_forms/inactive', 'LabFormController@inactive')->name('lab_forms.inactive'); - Route::resource('lab_forms', 'LabFormController'); - - //Radiology Forms - Route::post('/radiology_forms/activate/{id}', 'RadiologyController@activate')->name('radiology_forms.activate'); - Route::delete('/radiology_forms/{id}', 'RadiologyController@delete_form')->name('radiology_forms.inactive'); - Route::get('/radiology_forms/edit_form/{id}', 'RadiologyController@edit_form')->name('radiology_forms.edit'); - Route::post('/radiology_forms/store_form', 'RadiologyController@store_radiology_form')->name('radiology_forms.store'); - Route::put('/radiology_forms/{id}/update', 'RadiologyController@update_radiology_form')->name('radiology_forms.update'); - Route::get('/radiology_forms/create', 'RadiologyController@create_radiology_form')->name('radiology_forms.create'); - Route::get('/radiology_forms', 'RadiologyController@get_all_radiology_form')->name('radiology_forms.all'); - - /* Lab management routes */ - Route::any('/labs/add_bulk', 'LabController@add_bulk')->name('labs.add_bulk'); - Route::any('/labs/store_bulk', 'LabController@store_bulk')->name('labs.store_bulk'); - Route::any('/labs/edit_bulk', 'LabController@edit_bulk')->name('labs.edit_bulk'); - Route::any('/labs/update_bulk', 'LabController@update_bulk')->name('labs.update_bulk'); - Route::any('/labs/delete_bulk', 'LabController@delete_bulk')->name('labs.delete_bulk'); - Route::any('/labs/clear_stock', 'LabController@clear_stock')->name('labs.clear_stock'); - Route::any('/labs/get/quantity', 'LabController@get_lab_quantity'); - Route::any('/labs/usage/listing', 'LabController@lab_usage_listing')->name('labs.usage.listing'); - Route::any('/labs/usage', 'LabController@actual_lab_usage')->name('labs.usage'); - Route::post('/labs/activate/{id}', 'LabController@activate')->name('labs.activate'); - Route::get('/labs/inactive', 'LabController@inactive')->name('labs.inactive'); - Route::any('/labs/dashboard', 'LabController@dashboard')->name('labs.dashboard'); - Route::any('requisition_for_labs', 'LabController@requisition_for_labs')->name('labs.requisition_for_labs'); - Route::any('requisition_for_labs/previous-items-requisitions', 'LabController@previous_requisition_for_labs')->name('labs.prev_requisition_for_labs'); - Route::any('store_lab_requisitions', 'LabController@store_lab_requisitions')->name('labs.store_lab_requisitions'); - Route::any('requisition_for_labs_search', 'LabController@requisition_for_labs_search')->name('labs.requisition_for_labs_search'); - Route::any('laboratory_stock_sheet', 'LabController@stock_sheet')->name('labs.labs_stock_sheet'); - Route::any('update_laboratory_stock_sheet', 'LabController@update_laboratory_stock_sheet'); - Route::any('labs_usages_report', 'LabController@labs_usages_report')->name('labs.usages_report'); - Route::resource('labs', 'LabController'); - - /* Investigation Test Codes Routes */ - Route::get('/investigation_test_codes/inactive', 'InvestigationTestCodesController@inactive')->name('investigation_test_codes.inactive'); - Route::post('/investigation_test_codes/activate{id}', 'InvestigationTestCodesController@activate')->name('investigation_test_codes.activate'); - Route::any('/investigation_test_codes/check_investigation_speciality_type/{id}', 'InvestigationTestCodesController@check_investigation_speciality_type'); - Route::resource('investigation_test_codes', 'InvestigationTestCodesController'); - - /* Investigation Routes */ - Route::get('/investigations/inactive', 'InvestigationController@inactive')->name('investigations.inactive'); - Route::post('/investigations/activate{id}', 'InvestigationController@activate')->name('investigations.activate'); - Route::get('/investigations/edit/all', 'InvestigationController@edit_all')->name('investigations.edit.all'); - Route::get('/investigations/edit/hmis-options', 'InvestigationController@edit_hmis_options'); - Route::post('/investigations/update/hmis-options', 'InvestigationController@update_hmis_options')->name('investigations.update.hmis.options'); - Route::any('/investigations/update_all', 'InvestigationController@update_all')->name('investigations.update_all'); - Route::any('/investigations/incoming_labs', 'InvestigationController@incoming_labs')->name('investigations.incoming_labs'); - Route::any('/investigations/incoming_labs/search', 'InvestigationController@search')->name('investigations.incoming_labs.search'); - Route::any('/investigations/incoming_imaging/{imaging_type}', 'InvestigationController@incoming_imaging')->name('investigations.incoming_imaging'); - Route::any('/investigations/ultrasound_obstetric_report', 'InvestigationController@ultrasound_obstetric_report')->name('investigations.ultrasound_obstetric_report'); - Route::any('/investigations/submit_ultrasound_obstetric_report', 'InvestigationController@submit_ultrasound_obstetric_report')->name('investigations.submit_ultrasound_obstetric_report'); - Route::any('/investigations/authenticate_labs', 'InvestigationController@authenticate_labs')->name('investigations.authenticate_labs'); - Route::any('/investigations/view_patient_investigation/{result_id}', 'InvestigationController@view_patient_investigation')->name('investigations.view_patient_investigation'); - Route::any('/investigations/view_patient_investigation_obstetric/{obstetric_result_id}', 'InvestigationController@view_patient_investigation_obstetric')->name('investigations.view_patient_investigation_obstetric'); - Route::any('/investigations/alter_results', 'InvestigationController@alter_results')->name('investigations.alter_results'); - Route::any('/investigations/alter_results_others', 'InvestigationController@alter_results_others')->name('investigations.alter_results_others'); - Route::any('/investigations/alter_ordered_results', 'InvestigationController@alter_ordered_results')->name('investigations.alter_ordered_results'); - Route::any('/investigations/alter_ordered_results_obstetric', 'InvestigationController@alter_ordered_results_obstetric')->name('investigations.alter_ordered_results_obstetric'); - Route::any('/investigations/save_altered_results', 'InvestigationController@save_altered_results')->name('investigations.save_altered_results'); - Route::any('/investigations/historical_labs', 'InvestigationController@historical_labs')->name('investigations.historical_labs'); - Route::any('/investigations/view_historical_results_labs/{patient_id}', 'InvestigationController@view_historical_results_labs')->name('investigations.view_historical_results_labs'); - Route::any('/investigations/view_historical_results_imaging/{patient_id}', 'InvestigationController@view_historical_results_imaging')->name('investigations.view_historical_results_imaging'); - Route::any('/investigations/submit_ordered_investigations', 'InvestigationController@submit_ordered_investigations')->name('investigations.submit_ordered_investigations'); - Route::any('/investigations/investigations_review', 'InvestigationController@investigations_review')->name('investigations.investigations_review'); - Route::any('/investigations/get_investigation_details', 'InvestigationController@get_investigation_details')->name('investigations.get_investigation_details'); - Route::any('/investigations/investigations_review_ultrasound_obstetric', 'InvestigationController@investigations_review_ultrasound_obstetric'); - Route::any('/investigations/submit_ordered_obstetric_investigations', 'InvestigationController@submit_ordered_obstetric_investigations')->name('investigations.submit_ordered_obstetric_investigations'); - Route::any('/investigations/ordered_results', 'InvestigationController@ordered_results')->name('investigations.ordered_results'); - Route::any('/investigations/authenticate_investigations', 'InvestigationController@authenticate_investigations')->name('investigations.authenticate_investigations'); - Route::any('/investigations/save_ordered_results', 'InvestigationController@save_ordered_results')->name('investigations.save_ordered_results'); - Route::any('/investigations/imaging_historical_results', 'InvestigationController@imaging_historical_results')->name('investigations.imaging_historical_results'); - Route::any('/investigations/print_request/{id}', 'InvestigationController@print_request'); - Route::any('/investigations/get_receive_request_details/', 'InvestigationController@get_receive_request_details'); - Route::any('/investigations/save_receive_request_details/', 'InvestigationController@save_receive_request_details'); - Route::any('/investigations/print_request_barcode/{id}', 'InvestigationController@print_request_barcode'); - Route::any('/investigations/view_lab_results/', 'InvestigationController@view_lab_results')->name('investigations.view_lab_results'); - Route::any('/investigations/view_lab_results_quick_view/', 'InvestigationController@view_lab_results_quick_view'); - Route::any('/investigations/view_lab_results_details/{id}', 'InvestigationController@view_lab_results_details'); - Route::any('/investigations/view_lab_specialised_results/{id}', 'InvestigationController@view_lab_specialised_results'); - Route::any('/investigations/edit_investigation_specimen/{id}', 'InvestigationController@edit_investigation_specimen'); - Route::any('/investigations/save_investigation_specimen', 'InvestigationController@save_investigation_specimen')->name('investigations.save_investigation_specimen'); - Route::any('investigations_to_cancel', 'InvestigationController@investigations_to_cancel')->name('investigations.investigations_to_cancel'); - Route::any('delete_ordered_investigation/{id}', 'InvestigationController@destroy_ordered_investigations')->name('ordered_investigation.destroy'); - Route::any('view_deleted_ordered_invetigations', 'InvestigationController@view_deleted_ordered_invetigations')->name('investigations.view_deleted_ordered_invetigations'); - Route::any('restore_deleted_ordered_invetigations/{id}', 'InvestigationController@restore_deleted_ordered_invetigations')->name('investigations.restore_deleted_ordered_invetigations'); - Route::any('/investigations/remove_investigation_with_no_result/{inv_id}/{order_id}', 'InvestigationController@remove_investigation_with_no_result'); - Route::any('/investigations/reverse_receiving_investigations/{order_id}', 'InvestigationController@reverse_receiving_investigations'); - Route::any('/investigations/view_investigation_normal_ranges/{investigation_id}', 'InvestigationController@view_investigation_normal_ranges'); - Route::any('/investigations/view_specialised_investigation_normal_ranges/{investigation_id}', 'InvestigationController@view_specialised_investigation_normal_ranges'); - Route::any('/investigations/display_specialised_variables_pop_up', 'InvestigationController@display_specialised_variables_pop_up')->name('investigations.display_specialised_variables_pop_up'); - Route::any('/investigations/edit_specialised_variables_ranking/{id}', 'InvestigationController@edit_specialised_variables_ranking'); - Route::any('/investigations/save_specialised_variables_ranking', 'InvestigationController@save_specialised_variables_ranking')->name('investigations.save_specialised_variables_ranking'); - Route::any('/investigations/update_by_ordered_by', 'InvestigationController@update_by_ordered_by')->name('investigations.update_by_ordered_by'); - - /* cardiology routes */ - Route::post('/investigations/store-cardio-echo', 'InvestigationController@store_cardio_echo'); - Route::any('/investigations/print-cardio-echo/{patient_id}/{episode_id}', 'InvestigationController@print_cardio_echo'); - Route::any('/cardio_echo_template', 'InvestigationController@cardio_echo_template')->name('investigations.cardio_echo_template'); - Route::any('/save_cardio_echo_template', 'InvestigationController@save_cardio_echo_template')->name('investigations.save_cardio_echo_template'); - Route::any('/fetch_cardio_echo_template/{id}', 'InvestigationController@fetch_cardio_echo_template'); - Route::any('/create_cardio_echo_template', 'InvestigationController@create_cardio_echo_template')->name('investigations.create_cardio_echo_template'); - - Route::resource('investigations', 'InvestigationController'); - - /* Radiologies Routes */ - Route::any('/radiology/search', 'RadiologyController@search')->name('radiology.search'); - Route::get('/radiology/inactive', 'RadiologyController@inactive')->name('radiology.inactive'); - Route::post('/radiology/activate{id}', 'RadiologyController@activate')->name('radiology.activate'); - Route::get('/radiology/edit/all', 'RadiologyController@edit_all')->name('radiology.edit.all'); - Route::any('/radiology/update_all', 'RadiologyController@update_all')->name('radiology.update_all'); - Route::any('/radiology_stock_sheet', 'RadiologyController@radiology_stock_sheet')->name('radiology.radiology_stock_sheet'); - Route::any('/update_radiology_stock_sheet', 'RadiologyController@update_imaging_stock_sheet')->name('radiology.update_imaging_stock_sheet'); - Route::any('/radiology/get_radiology_quantity', 'RadiologyController@get_radiology_quantity')->name('radiology.get_radiology_quantity'); - Route::any('/radiology_listing', 'RadiologyController@radiology_usage_listing')->name('radiology.usage_listing'); - Route::any('/store_radiology_usage', 'RadiologyController@store_radiology_usage')->name('radiology.usage'); - Route::any('requisition_for_radiologies', 'RadiologyController@requisition_for_radiologies')->name('radiology.requisition_for_radiology'); - Route::get('requisition_for_radiologies/previous-items-requisitions', 'RadiologyController@previous_requisition_for_radiologies')->name('radiology.prev_requisition_for_radiology'); - Route::post('requisition_for_radiologies/previous-items-requisitions', 'RadiologyController@previous_requisition_for_radiologies')->name('radiology.prev_requisition_for_radiology_search'); - - Route::any('store_radiology_requisitions', 'RadiologyController@store_radiology_requisitions')->name('radiology.store_radiology_requisitions'); - Route::any('requisition_for_radiologies_search', 'RadiologyController@requisition_for_radiology_search')->name('radiology.requisition_for_radiology_search'); - Route::resource('radiology', 'RadiologyController'); - - Route::any('radiology_usages_report', 'RadiologyController@radiology_usages_report')->name('radiology.usages_report'); - - /* Dentals Routes */ - Route::any('/dentals/search', 'DentalController@search')->name('dentals.search'); - Route::get('/dentals/inactive', 'DentalController@inactive')->name('dentals.inactive'); - Route::post('/dentals/activate{id}', 'DentalController@activate')->name('dentals.activate'); - Route::get('/dentals/edit/all', 'DentalController@edit_all')->name('dentals.edit.all'); - Route::any('/dentals/update_all', 'DentalController@update_all')->name('dentals.update_all'); - Route::any('/dentals/get_dentals', 'DentalController@get_dentals')->name('dentals.get_dentals'); - Route::any('/dentals/dental_listing', 'DentalController@dental_usage_listing')->name('dentals.usage_listing'); - Route::any('/dentals/dental_requisitions', 'DentalController@dental_requisitions')->name('dentals.requisitions'); - Route::any('/dentals/dental_usage_report', 'DentalController@dental_usage_report')->name('dentals.usage_report'); - Route::any('/dentals/store_dental_usage', 'DentalController@store_dental_usage')->name('dentals.store_dental_usage'); - Route::any('/dentals/get_dental_quantity', 'DentalController@get_dental_quantity')->name('dentals.get_dental_quantity'); - Route::any('/dentals/dentals_requisition_search', 'DentalController@dentals_requisition_search')->name('dentals.dentals_requisition_search'); - Route::any('/dentals/store_dental_requisitions', 'DentalController@store_dental_requisitions')->name('dentals.store_dental_requisitions'); - Route::resource('dentals', 'DentalController'); -}); diff --git a/docker/statistics/Modules/Investigations/bitbucket-pipelines.yml b/docker/statistics/Modules/Investigations/bitbucket-pipelines.yml deleted file mode 100644 index e850a8fd..00000000 --- a/docker/statistics/Modules/Investigations/bitbucket-pipelines.yml +++ /dev/null @@ -1,19 +0,0 @@ -image: alpine/git:latest - -pipelines: - branches: - main: - - step: - name: Merge To Beta - script: - - git remote set-url origin https://Kabricks:${APP_SECRET}@bitbucket.org/dcsammi/${BITBUCKET_REPO_SLUG} - - git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*" - - git fetch - - git checkout beta - - git merge main - - git commit --amend -m "[skip ci] Merge changes from main" - - git push - - step: - name: Deploy To Test - script: - - echo "Ready to deploy to demo or production!" diff --git a/docker/statistics/Modules/Investigations/module.json b/docker/statistics/Modules/Investigations/module.json deleted file mode 100644 index aac01ba4..00000000 --- a/docker/statistics/Modules/Investigations/module.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "Investigations", - "alias": "investigations", - "description": "Investigations module", - "keywords": [], - "priority": 0, - "providers": [ - "Modules\\Investigations\\Providers\\InvestigationsServiceProvider" - ], - "files": [] -} diff --git a/docker/statistics/Modules/Invoices/Config/config.php b/docker/statistics/Modules/Invoices/Config/config.php deleted file mode 100644 index 47a270f7..00000000 --- a/docker/statistics/Modules/Invoices/Config/config.php +++ /dev/null @@ -1,5 +0,0 @@ - 'Invoices' -]; diff --git a/docker/statistics/Modules/Invoices/Http/Controllers/Controller.php b/docker/statistics/Modules/Invoices/Http/Controllers/Controller.php deleted file mode 100755 index 2d1250b3..00000000 --- a/docker/statistics/Modules/Invoices/Http/Controllers/Controller.php +++ /dev/null @@ -1,13 +0,0 @@ -middleware('auth'); - $this->middleware('permission:Invoices-generate'); - $this->middleware('permission:Invoices-receive-payments'); - $this->middleware('permission:Invoices-view-payments-history'); - } - - - public function index() - { - return view('invoices::invoices.index'); - } - - public function patient_category_detail($id, $start_date, $end_date) { - $hospital_information = HospitalInformation::first(); - $start_date = Carbon::parse($start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($end_date)->endOfDay()->toDateTimeString(); - $invoices = PatientCategoryInvoice::where('episode_id', $id) - ->whereBetween('transaction_date', [$start_date, $end_date]) - ->get(); - return view('invoices::invoices.detail.patient_category', compact('invoices', 'hospital_information', 'id', 'start_date', 'end_date')); - } - - public function patient_category_detail_print($id, $start_date, $end_date) { - $hospital_information = HospitalInformation::first(); - $start_date = Carbon::parse($start_date)->startOfDay(); - $end_date = Carbon::parse($end_date)->endOfDay(); - $invoices = PatientCategoryInvoice::where('episode_id', $id) - ->whereBetween('transaction_date', [$start_date, $end_date]) - ->get(); - - $data = [ - 'invoices' => $invoices, - 'hospitalInfo' => $hospital_information - ]; - - $pdf = SnappyPDF::loadView("invoices::invoices/detail/patient_category_print", $data) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline'); - - - return $pdf->inline('Investigation Details' . date(" d-m-y h:ia") . '.pdf'); - - return view('invoices::invoices.detail.patient_category', compact('invoices', 'hospital_information')); - } - - public function viewPatientCategory(Request $request) - { - $total = 0; - $patient_categories = DB::table('patient_discounts')->where(['pay_later' => 1])->pluck('patient_category')->toArray(); - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - if ($request->has('patient_number')) { - //if the guy is a main patient with dependants, fetch all records of him and his dependants - $patient_and_their_dependants_array = get_patient_and_their_dependants($request->patient_number); - - $invoices_not_generated = DB::table('patient_category_invoices') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereBetween('transaction_date', [$start, $end]) - ->where('patient_category', $request->patient_category) - ->whereIn('patient_id', $patient_and_their_dependants_array) - ->where('invoice_generated', 0) - // group invoices by episode - ->groupBy('episode_id')->selectRaw('*, sum(patient_amount) as sum') - ->get() - ->toArray(); - } else{ - $invoices_not_generated = DB::table('patient_category_invoices') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereBetween('transaction_date', [$start, $end]) - ->where('patient_category', $request->patient_category) - ->where('invoice_generated', 0) - // group invoices by episode - ->groupBy('episode_id')->selectRaw('*, sum(patient_amount) as sum') - ->get() - ->toArray(); - } - - if (count($invoices_not_generated) > 0) { - foreach ($invoices_not_generated as $item) { - $total += $item->sum; - } - } - - $display = dateLabelSetter($request); - - return view('invoices::invoices.patient_category', compact( - 'patient_categories', - 'invoices_not_generated', - 'request', - 'display', - 'total' - )); - } - - public function generate_invoice(Request $request) - { - $hospital_information = HospitalInformation::first(); - $users_name = get_full_name(Auth::id(), 'id', 'first_name', 'last_name', 'users'); - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $invoices = []; - $invoice_with_payment_amount_paid = $invoice_with_payment_balance = 0; - - if ($request->status == "reprint") { - - $invoices = DB::table('patient_category_invoices')->where('invoice_number', $request->invoice_number) - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->where('invoice_generated', 1) - ->groupBy('episode_id')->selectRaw('*, sum(patient_amount) as sum') - ->get() - ->toArray(); - - $invoice_payment_records = InvoicePayment::where('invoice_number', $request->invoice_number)->get(); - if (count($invoice_payment_records) > 0) { - foreach ($invoice_payment_records as $invoice_payment) { - $invoice_with_payment_amount_paid += $invoice_payment->amount_paid; - $invoice_with_payment_balance += $invoice_payment->balance; - } - } - } elseif ($request->status == "new") { - $last_invoice = DB::table('patient_category_invoices')->select('invoice_number')->distinct()->orderBy('invoice_number', 'desc')->first(); - $last_invoice_number = $last_invoice->invoice_number; - - $invoices = DB::table('patient_category_invoices') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereBetween('transaction_date', [$start, $end]) - ->where('patient_category', $request->patient_category) - ->where('invoice_generated', 1) - ->where('status', 0) - ->where('invoice_number', $last_invoice_number) - ->groupBy('episode_id')->selectRaw('*, sum(patient_amount) as sum') - ->get() - ->toArray(); - } - - return view('invoices::invoices.generate_invoice.patient_invoice', compact( - 'invoices', - 'request', - 'users_name', - 'hospital_information', - 'invoice_with_payment_amount_paid', - 'invoice_with_payment_balance' - )); - } - - public function print_invoice($invoice_number) - { - $hospital_information = HospitalInformation::first(); - $invoices = PatientCategoryInvoice::where('invoice_number', $invoice_number) - ->groupBy('episode_id') - ->selectRaw('*, sum(patient_amount) as sum') - ->get(); - - $patient_category = PatientCategoryInvoice::where('invoice_number', $invoice_number) - ->pluck('patient_category') - ->first(); - - $invoice_with_payment_amount_paid = $invoice_with_payment_balance = 0; - $invoice_payment_records = InvoicePayment::where('invoice_number', $invoice_number)->get(); - if (count($invoice_payment_records) > 0) { - foreach ($invoice_payment_records as $invoice_payment) { - $invoice_with_payment_amount_paid += $invoice_payment->amount_paid; - $invoice_with_payment_balance += $invoice_payment->balance; - } - } - - $data = [ - 'invoices' => $invoices, - 'hospitalInfo' => $hospital_information, - 'patient_category' => $patient_category, - 'invoice_number' => $invoice_number, - 'invoice_with_payment_amount_paid' => $invoice_with_payment_amount_paid, - 'invoice_with_payment_balance' => $invoice_with_payment_balance, - 'served_by' => get_full_name(Auth::id(), 'id', 'first_name', 'last_name', 'users') - ]; - - $pdf = SnappyPDF::loadView("invoices::invoices/print/patient_category_invoice", $data) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 10) - ->setOption('margin-top', 10) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline'); - - return $pdf->inline('Patient Category Invoice' . date(" d-m-y h:ia") . '.pdf'); - } - - public function receive_patient_invoices(Request $request) - { - $invoices_counter = 0; - $invoices = []; - $generated_invoice_numbers_array = []; - - $patient_categories = DB::table('patient_discounts')->where(['pay_later' => 1])->pluck('patient_category')->toArray(); - - if (isset($request->start_date)) { - $start_date = Carbon::parse($request->start_date)->startOfDay(); - $end_date = Carbon::parse($request->end_date)->endOfDay(); - } else { - $start_date = Carbon::now()->startOfDay(); - $end_date = Carbon::now()->endOfDay(); - } - - if (isset($request->patient_category) && $request->patient_category != 0) { - $invoices_temp = PatientCategoryInvoice::where('invoice_generated', 1) - ->where('patient_category', $request->patient_category) - ->whereBetween('transaction_date', [$start_date, $end_date]) - ->groupBy('invoice_number') - ->get(); - - $searched_patient_category = get_name($request->patient_category, 'id', 'name', 'patient_categories'); - } else { - $invoices_temp = PatientCategoryInvoice::where('invoice_generated', 1) - ->whereBetween('transaction_date', [$start_date, $end_date]) - ->groupBy('invoice_number') - ->get(); - - $searched_patient_category = "All Patient Categories"; - } - - foreach ($invoices_temp as $record) { - $patient_category_invoice_numbers = PatientCategoryInvoice::where('invoice_number', $record->invoice_number) - ->orderBy('transaction_date', 'asc')->get(); - - $total_invoice_payment = 0; - - foreach ($patient_category_invoice_numbers as $patient_category_invoice_number) { - $total_invoice_payment += (int)$patient_category_invoice_number->patient_amount; - } - - // check if invoice has a payment record - $invoice_payment_record = InvoicePayment::where('invoice_number', $record->invoice_number)->first(); - - if ($invoice_payment_record) { - if ($invoice_payment_record->balance > 0) { - // for those invoices with payments, only bring those with a balance - $invoices[$invoices_counter]['has_payment'] = 1; - $invoices[$invoices_counter]['amount_paid'] = $invoice_payment_record->amount_paid; - $invoices[$invoices_counter]['payment_id'] = $invoice_payment_record->id; - $invoices[$invoices_counter]['balance'] = $invoice_payment_record->balance; - } else { - // do not continue to add an invoice record - continue; - } - } else { - $invoices[$invoices_counter]['has_payment'] = 0; - $invoices[$invoices_counter]['amount_paid'] = 0; - $invoices[$invoices_counter]['payment_id'] = 0; - $invoices[$invoices_counter]['balance'] = 0; - } - - $invoices[$invoices_counter]['patient_amount'] = $total_invoice_payment; - $invoices[$invoices_counter]['invoice_number'] = $record->invoice_number; - $invoices[$invoices_counter]['invoice_date'] = $record->invoice_date; - $invoices[$invoices_counter]['patient_category'] = $record->patient_category; - $invoices[$invoices_counter]['created_at'] = $record->transaction_date; - $invoices[$invoices_counter]['updated_at'] = $record->updated_at; - $invoices[$invoices_counter]['created_by'] = $record->created_by; - $generated_invoice_numbers_array[] = $record->invoice_number; - - $invoices_counter++; - } - - /* Arranging the data*/ - asort($invoices); - - if (isset($request->patient_category) && $request->patient_category != 0) { - $payments = InvoicePayment::whereBetween('created_at', [$start_date, $end_date]) - ->where('patient_category', $request->patient_category)->whereNotIn('invoice_number', $generated_invoice_numbers_array)->groupBy('invoice_number')->get(); - } else { - $payments = InvoicePayment::whereBetween('created_at', [$start_date, $end_date]) - ->whereNotIn('invoice_number', $generated_invoice_numbers_array)->groupBy('invoice_number')->get(); - } - - $banks = ChartOfAccount::where('type', 4)->pluck('name', 'id')->prepend('-select-', '')->toArray(); - $patient_payment_methods = PatientPaymentMethod::pluck('name', 'id'); - $patient_payment_methods_options = ""; - foreach ($patient_payment_methods as $key => $value) { - $patient_payment_methods_options .= ''; - } - - return view('invoices::invoices.receive_payments.receive_patient_payments', compact('invoices', 'start_date', 'end_date', 'patient_categories', 'searched_patient_category', - 'payments', 'banks', 'patient_payment_methods_options')); - } - - public function process_invoice(Request $request) - { - - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - if ($request->has('patient_id') && $request->patient_id != null) { - //if the guy is a main patient with dependants, fetch all records of him and his dependants - $patient_and_their_dependants_array = get_patient_and_their_dependants($request->patient_id); - - $update = PatientCategoryInvoice::whereBetween('transaction_date', [$start, $end]) - ->where('invoice_generated', 0)->where('patient_category', $request->patient_category)->whereIn('patient_id', $patient_and_their_dependants_array)->get(); - - - $update = PatientCategoryInvoice::whereBetween('transaction_date', [$start, $end]) - ->where('invoice_generated', 0)->where('patient_category', $request->patient_category)->whereIn('patient_id', $patient_and_their_dependants_array) - ->update( - [ - 'invoice_generated' => 1, - 'invoice_date' => $request->invoice_date, - 'invoice_number' => $request->invoice_number, - 'is_invoice_for_individual' => $request->patient_id - ] - ); - } else{ - $update = PatientCategoryInvoice::whereBetween('transaction_date', [$start, $end]) - ->where('invoice_generated', 0)->where('patient_category', $request->patient_category)->get(); - - - $update = PatientCategoryInvoice::whereBetween('transaction_date', [$start, $end]) - ->where('invoice_generated', 0)->where('patient_category', $request->patient_category) - ->update( - [ - 'invoice_generated' => 1, - 'invoice_date' => $request->invoice_date, - 'invoice_number' => $request->invoice_number - ] - ); - } - - $track_invoice = new TrackInvoice; - $track_invoice->reason = $request->patient_category; - $track_invoice->created_by = Auth::id(); - - if (!is_null($update) && $track_invoice->save()) { - return $this->generate_invoice($request); - } else { - return back()->withInput(); - } - } - - public function patient_history() - { - $payments = DB::table('invoice_payments')->groupBy('invoice_number')->get()->toArray(); - return view('invoices::invoices.payments_history.patient_index', compact('payments')); - } - - public function patient_payment_receipt(Request $request) - { - $hospital_information = HospitalInformation::first(); - return view('invoices::invoices.receipts.patient_payment_receipt', compact('request', 'hospital_information')); - } - - public function delete_patient_category_invoice($number) - { - $delete = PatientCategoryInvoice::where('invoice_number', $number)->update([ - 'invoice_number' => 0, - 'invoice_generated' => 0, - 'invoice_date' => null, - ]); - - // remove from dependants if any - $dependant_delete = DependantsConsumption::where('invoice_number', $number)->update(['invoice_number' => NULL]); - - if (is_null($delete)) { - flash('Unable to delete invoice with #' . $number)->error(); - return back(); - } else { - flash('Invoice #' . $number . " has been deleted successfully.")->success(); - return back(); - } - } - - public function viewDonorDiscounts(Request $request) - { - - $total = 0; - $donors = DB::table('donors')->get()->toArray(); - $patient_discounts = PatientDiscount::where(['pay_later' => 1])->get(); - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $display = dateLabelSetter($request); - - foreach ($patient_discounts as $patient_discount) { - $patient_categories = DB::table('patient_categories') - ->where(['id' => $patient_discount->patient_category]) - ->pluck('name', 'id') - ->toArray(); - } - - $discounts = DB::table('donor_discount_details') - ->whereBetween('created_at', [$start, $end]) - ->where('invoice_generated', 0) - ->groupBy('patient_category') - ->get() - ->toArray(); - - foreach ($discounts as $item) { - $total += $item->donor_to_pay; - } - return view('invoices::invoices.donor_discounts', compact('discounts', 'request', 'donors', 'total', 'display')); - } - - public function process_donor_invoice(Request $request) - { - - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - - $update = DonorDiscountDetail::whereBetween('created_at', [$start, $end]) - ->update( - [ - 'invoice_generated' => 1, - 'invoice_date' => $request->invoice_date, - 'invoice_number' => $request->invoice_number - ] - ); - - if (!is_null($update)) { - return $this->generate_donor_invoice($request); - } else { - return back()->withInput(); - } - } - - public function generate_donor_invoice(Request $request) - { - - $hospital_information = HospitalInformation::first(); - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $users_name = get_full_name(Auth::id(), 'id', 'first_name', 'last_name', 'users'); - if ($request->status == "reprint") { - - $invoices = DB::table('donor_discount_details') - ->where('invoice_number', $request->invoice_number) - ->get() - ->toArray(); - } else { - $invoices = DB::table('donor_discount_details') - ->whereBetween('created_at', [$start, $end]) - ->where('donor_id', $request->donor) - ->where('invoice_generated', 1) - ->get() - ->toArray(); - } - - return view('invoices::invoices.generate_invoice.donor_invoice', - compact('invoices', 'request', 'users_name', 'hospital_information') - ); - } - - public function receive_donor_invoices() - { - - $request = Request::capture(); - $uncleared_invoices = DB::table('donor_discount_details') - ->groupBy('invoice_number') - ->selectRaw('*, sum(donor_to_pay) as sum') - ->where('payment_status', 0) - ->where('invoice_generated', 1) - ->get(); - - $reason = "donor invoice payments"; - - $invoices_with_balance = DB::table('donor_invoice_payments') - ->where('balance', '>', 0) - ->groupBy('invoice_number') - ->get() - ->toArray(); - - return view('invoices::invoices.receive_payments.receive_donor_payments', - compact('uncleared_invoices', 'reason', 'invoices_with_balance', 'request') - ); - } - - public function donor_invoice_payment(Request $request) - { - return view('invoices::invoices.payment.pay_for_donor_invoice', compact('request')); - } - - public function patient_invoice_payment(Request $request) { - $banks = ChartOfAccount::where('type', 4)->pluck('name', 'id')->prepend('-select-', '')->toArray(); - $expense_accounts = ChartOfAccount::where('type', 2)->pluck('name', 'id')->prepend('-select-', '')->toArray(); - - $patient_payment_methods = PatientPaymentMethod::pluck('name', 'id'); - $patient_payment_methods_options = ""; - foreach ($patient_payment_methods as $key => $value) { - $patient_payment_methods_options .= ''; - } - - $total = $request->total; - $patient_category = $request->patient_category; - $balance = $request->balance; - $status = $request->status; - $invoice_date = $request->invoice_date; - $invoice_number = $request->invoice_number; - $generated_on = $request->generated_on; - - return view('invoices::invoices.payment.pay_for_invoice', compact( 'banks', 'expense_accounts', 'patient_payment_methods_options', - 'patient_category', 'status', 'balance', 'total', 'invoice_number', 'invoice_date', 'generated_on')); - } - - public function update_donor_payment(Request $request) - { - $new_receipt_number = $this->receiptService->createReceipt('Donor Payment'); - - $date_paid_history = unserialize($request->date_paid_history); - array_push($date_paid_history, $request->payment_received_on); - $date_paid_history = serialize($date_paid_history); - - $amount_paid_history = unserialize($request->amount_paid_history); - array_push($amount_paid_history, $request->amount_paid); - $amount_paid_history = serialize($amount_paid_history); - - $staff_incharge_history = unserialize($request->staff_incharge_history); - array_push($staff_incharge_history, Auth::id()); - $staff_incharge_history = serialize($staff_incharge_history); - - $receipt_number = unserialize($request->receipt_number); - array_push($receipt_number, $new_receipt_number); - $receipt_number = serialize($receipt_number); - - $payment = DonorInvoicePayment::where('id', $request->id) - ->update( - [ - 'total' => $request->total, - 'amount_paid' => $request->amount_paid, - 'balance' => $request->balance, - 'receipt_number' => $receipt_number, - 'amount_paid_history' => $amount_paid_history, - 'staff_incharge_history' => $staff_incharge_history, - 'date_paid_history' => $date_paid_history - ] - ); - - if (!is_null($payment)) { - flash('Payment Updated'); - return $this->donor_payment_receipt($request); - } else { - flash('Payment Not Updated'); - return back()->withInput(); - } - } - - public function update_patient_payment(Request $request) { - $new_receipt_number = $this->receiptService->createReceipt('Invoice Payment'); - - $logged_in_user_id = Auth::id(); - $banked = null; - $transfer_date = Carbon::parse($request->payment_received_on)->toDateString(); - - $payment_received_on = Carbon::parse($request->payment_received_on)->toDateString(); - - if (!is_null($request->bank) && !is_null($request->bank_balance)) { - // first, the money from the invoice has to be received as - // undeposited funds before invoice money was deposited (as of deposit date) - $undeposited_funds_account_balance_on_transfer_date_record = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), $transfer_date); - $undeposited_funds_account_balance_on_transfer_date = ($undeposited_funds_account_balance_on_transfer_date_record != null) ? (int)$undeposited_funds_account_balance_on_transfer_date_record->account_balance : 0; - - // undeposited funds before invoice money was deposited (as of today) - $undeposited_funds_account_balance_today_record = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), Carbon::today()->toDateString()); - $undeposited_funds_account_balance_today = ($undeposited_funds_account_balance_today_record != null) ? $undeposited_funds_account_balance_today_record->account_balance : 0; - - // make the deposit transaction - $undeposited_funds_account_balance_after_deposit = ($undeposited_funds_account_balance_on_transfer_date + (int)$request->amount_paid); - $last_insert_id_undeposited_funds = capture_bank_record( - 'DEPOSIT', - $transfer_date, - 10, - '', - $undeposited_funds_account_balance_after_deposit, - (int)$request->amount_paid, - 0, - $request->memo, - $new_receipt_number - ); - update_banking_record_balances($transfer_date, 10, $last_insert_id_undeposited_funds, $undeposited_funds_account_balance_after_deposit); - - // update current balance - ChartOfAccount::where('id', 10)->update(['balance' => ($undeposited_funds_account_balance_today + (int)$request->amount_paid)]); - - // next, deal with the transfer between banks - // ... - // transfer date balances - $to_account_balance_on_transfer_date_record = get_latest_banking_record_based_on_transaction_date($request->bank, $transfer_date); - $to_account_balance_on_transfer_date = ($to_account_balance_on_transfer_date_record != null) ? (int)$to_account_balance_on_transfer_date_record->account_balance : 0; - $from_account_balance_on_transfer_date_record = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), $transfer_date); - $from_account_balance_on_transfer_date = ($from_account_balance_on_transfer_date_record != null) ? (int)$from_account_balance_on_transfer_date_record->account_balance : 0; - - // present day balances - $to_account_balance_today_record = get_latest_banking_record_based_on_transaction_date($request->bank, Carbon::today()->toDateString()); - $to_account_balance_today = ($to_account_balance_today_record != null) ? $to_account_balance_today_record->account_balance : 0; - $from_account_balance_today_record = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), Carbon::today()->toDateString()); - $from_account_balance_today = ($from_account_balance_today_record != null) ? $from_account_balance_today_record->account_balance : 0; - - // deal with from account - $from_account_balance_after_transfer = ($from_account_balance_on_transfer_date - (int)$request->amount_paid); - $last_insert_id_from_account = capture_bank_record( - 'TRANSFER', - $transfer_date, - 10, - $request->bank, - $from_account_balance_after_transfer, - 0, - (int)$request->amount_paid, - $request->memo, - $new_receipt_number - ); - update_banking_record_balances($transfer_date, $request->transfer_from, $last_insert_id_from_account, $from_account_balance_after_transfer); - - // update current balance - ChartOfAccount::where('id', 10)->update(['balance' => ($from_account_balance_today - (int)$request->amount_paid)]); - - - // deal with to account - $to_account_balance_after_transfer = ($to_account_balance_on_transfer_date + (int)$request->amount_paid); - $last_insert_id_to_account = capture_bank_record( - 'DEPOSIT', - $transfer_date, - $request->bank, - 10, - $to_account_balance_after_transfer, - (int)$request->amount_paid, - 0, - $request->memo, - $new_receipt_number - ); - $bank_record = Banking::where('id', $last_insert_id_to_account)->first(); - $bank_record->created_at = $logged_in_user_id; - $bank_record->update(); - update_banking_record_balances($transfer_date, $request->bank, $last_insert_id_to_account, $to_account_balance_after_transfer); - - // update current balance - ChartOfAccount::where('id', $request->bank)->update(['balance' => ($to_account_balance_today + (int)$request->amount_paid)]); - - $banked = $last_insert_id_to_account; - - update_banking_record_balances($payment_received_on, $request->bank, $bank_record->id, ((int)$request->bank_balance + (int)$request->amount_paid)); - - $cashier_income = new CashierIncome; - $cashier_income->cashier_id = $logged_in_user_id; - $cashier_income->brought_by = $logged_in_user_id; - $cashier_income->expected_amount = $request->amount_paid; - $cashier_income->reason = $request->memo; - $cashier_income->amount = $request->amount_paid; - $cashier_income->balance = 0; - $cashier_income->receipt_number = $new_receipt_number; - $cashier_income->previous_balance = (int)$request->undeposited_funds_bank_balance; - $cashier_income->account_balance = (int)$request->undeposited_funds_bank_balance + (int)$request->amount_paid; - $cashier_income->banked = $banked; - $cashier_income->save(); - - $cashier_income_id = $cashier_income->id; - $cashier_income_amount = $request->amount_paid; - - PatientCategoryInvoice::where(['invoice_number' => $request->invoice_number])->where(['invoice_date' => $request->invoice_date]) - ->update(['received' => $cashier_income_id]); - } else { - // first, the money from the invoice has to be received as undeposited funds - // ... - // undeposited funds before invoice money was deposited (as of deposit date) - $undeposited_funds_account_balance_on_transfer_date_record = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), $transfer_date); - $undeposited_funds_account_balance_on_transfer_date = ($undeposited_funds_account_balance_on_transfer_date_record != null) ? (int)$undeposited_funds_account_balance_on_transfer_date_record->account_balance : 0; - - // make the deposit transaction - $undeposited_funds_account_balance_after_deposit = ($undeposited_funds_account_balance_on_transfer_date + (int)$request->amount_paid); - $last_insert_id_undeposited_funds = capture_bank_record( - 'DEPOSIT', - $transfer_date, - 10, - '', - $undeposited_funds_account_balance_after_deposit, - (int)$request->amount_paid, - 0, - "Deposit to undeposited funds", - $new_receipt_number - ); - update_banking_record_balances($transfer_date, 10, $last_insert_id_undeposited_funds, $undeposited_funds_account_balance_after_deposit); - - $cashier_income = new CashierIncome; - $cashier_income->cashier_id = $logged_in_user_id; - $cashier_income->brought_by = $logged_in_user_id; - $cashier_income->expected_amount = $request->amount_paid; - $cashier_income->reason = "Received from patient category invoices"; - $cashier_income->amount = $request->amount_paid; - $cashier_income->balance = 0; - $cashier_income->receipt_number = $new_receipt_number; - $cashier_income->previous_balance = $undeposited_funds_account_balance_on_transfer_date; - $cashier_income->account_balance = $undeposited_funds_account_balance_after_deposit; - $cashier_income->save(); - - $cashier_income_id = $cashier_income->id; - $cashier_income_amount = $request->amount_paid; - } - - PatientCategoryInvoice::where(['invoice_number' => $request->invoice_number]) - ->where(['invoice_date' => $request->invoice_date]) - ->update(['status' => 1, 'received' => is_null($cashier_income_id) ? null : $cashier_income_id]); - - $other_parameters = [ - 'received_id' => $cashier_income_id, - 'received_amount' => $cashier_income_amount, - 'banked_id' => $banked, - ]; - - $invoice_payment_record = $this->invoicesService->saveInvoicePaymentRecord( - $request->invoice_number, $new_receipt_number, $request->amount_paid, $request->payment_received_on, - 0, null, $other_parameters - ); - $this->invoicesService->updateInvoicePayment($request->invoice_number, $request->amount_paid, $request->balance); - - $request->receipt_number = $new_receipt_number; - - update_account_balance_by_id(10, $request->amount_paid); - - $this->invoicesService->clearInvoice($request->invoice_number); - clear_dependants_consumptions($request->invoice_number);//if dependent invoice clear it - - $return_payment_methods = PatientFinanceController::register_payment_method(0, 0, $request->amount_paid, $request->payment_method, - $request->payment_methods_amount, array_fill(0, count($request->payment_methods_amount ?? []), null), array_fill(0, count($request->payment_methods_amount ?? []), 0), $new_receipt_number, 17, Auth::id(), 0); - - if ($invoice_payment_record) { - flash('Payment Updated'); - return $this->patient_payment_receipt($request); - } else { - flash('Payment Not Updated'); - return back()->withInput(); - } - } - - public function process_donor_payment(Request $request) - { - - if ($request->status == "update") { - - return $this->update_donor_payment($request); - } else { - $payment = new DonorInvoicePayment; - $new_receipt_number = $this->receiptService->createReceipt('Donor Payment'); - $today = Carbon::today()->toDateTimeString(); - - $payment->donor_id = $request->donor_id; // - $payment->invoice_date = $request->invoice_date; // - $payment->amount_paid = $request->amount_paid; // - $payment->invoice_number = $request->invoice_number; // - $payment->total = $request->total; // - $payment->balance = $request->balance; // - $payment->receipt_number = serialize(array($new_receipt_number)); // - $payment->amount_paid_history = serialize(array($request->amount_paid)); - $payment->date_paid_history = serialize(array($today)); - $payment->staff_incharge_history = serialize(array(Auth::id())); - $payment->created_by = Auth::id(); - - $patient_category_invoice = DonorDiscountDetail::where(['invoice_number' => $request->invoice_number]) - ->where(['invoice_date' => $request->invoice_date]) - ->update(['payment_status' => 1]); - - if ($payment->save() && !is_null($patient_category_invoice)) { - flash('Payment Received'); - return $this->donor_payment_receipt($request); - } else { - flash('Payment Not Received'); - return back()->withInput(); - } - } - } - - public function write_off_invoice_balance(Request $request) { - $logged_in_user = Auth::id(); - $receipt_number = $this->receiptService->createReceipt('Patient Category Invoice Balance Write Off'); - $invoice_payment = InvoicePayment::where('invoice_number', $request->invoice_number)->first(); - $today = (is_null($request->write_off_date) || $request->write_off_date == '') ? Carbon::today()->toDateString() : Carbon::createFromFormat('d-m-Y', $request->write_off_date)->toDateString(); - - if ($invoice_payment) { - $amount_paid = $invoice_payment->amount_paid + $request->amount; - $balance = $invoice_payment->balance - $request->amount; - $this->invoicesService->updateInvoicePayment($request->invoice_number, $amount_paid, $balance); - } else { - $this->invoicesService->saveInvoicePayment($request->invoice_number, $request->total, $request->amount, ($request->total - $request->amount), - $request->invoice_date, $request->patient_category); - } - - $this->invoicesService->saveInvoicePaymentRecord($request->invoice_number, '', 0, $today, - $request->amount, $today); - - $payment = new Payment; - $payment->item_id = ""; - $payment->vendor = "N/A"; - $payment->unit_cost = $request->amount; - $payment->amount = $request->amount; - $payment->quantity = 1; - $payment->memo = $request->write_off_memo ?? "N/A"; - $payment->account_balance = 0; - $payment->transaction_id = $receipt_number; - $payment->account_id = 0; - $payment->created_by = $logged_in_user; - $write_off_date = (is_null($request->write_off_date) || $request->write_off_date == '') ? now() : Carbon::createFromFormat('d-m-Y', $request->write_off_date)->toDateString(); - $payment->expense_date = $write_off_date; - $payment->expense_account = $request->expense_account; - - $this->invoicesService->clearInvoice($request->invoice_number); - - if ($payment->save()) { - return 'success'; - } else { - return 'fail'; - } - } - - public function process_patient_payment(Request $request) { - if ($request->status == "update") { - return $this->update_patient_payment($request); - } else { - $logged_in_user_id = Auth::id(); - - $new_receipt_number = $this->receiptService->createReceipt('Invoice Payment'); - - $banked = null; - $today = Carbon::today()->toDateTimeString(); - $transfer_date = Carbon::parse($request->payment_received_on)->toDateString(); - - // undeposited funds before invoice money was deposited (as of deposit date) - $undeposited_funds_id = get_name("undeposited_funds", "slug", "id", "chart_of_accounts"); - - if (!is_numeric($undeposited_funds_id)) { - flash('Undeposited funds account is missing')->error(); - return back()->withInput(); - } - - if (!is_null($request->bank) && !is_null($request->bank_balance)) { - // first, the money from the invoice has to be received as undeposited funds - - $undeposited_funds_account_balance_on_transfer_date_record = get_latest_banking_record_based_on_transaction_date($undeposited_funds_id, $transfer_date); - $undeposited_funds_account_balance_on_transfer_date = ($undeposited_funds_account_balance_on_transfer_date_record != null) ? (int)$undeposited_funds_account_balance_on_transfer_date_record->account_balance : 0; - - // undeposited funds before invoice money was deposited (as of today) - $undeposited_funds_account_balance_today_record = get_latest_banking_record_based_on_transaction_date($undeposited_funds_id, Carbon::today()->toDateString()); - $undeposited_funds_account_balance_today = ($undeposited_funds_account_balance_today_record != null) ? $undeposited_funds_account_balance_today_record->account_balance : 0; - - // make the deposit transaction - $undeposited_funds_account_balance_after_deposit = ($undeposited_funds_account_balance_on_transfer_date + (int)$request->amount_paid); - $last_insert_id_undeposited_funds = capture_bank_record( - 'DEPOSIT', - $transfer_date, - $undeposited_funds_id, - '', - $undeposited_funds_account_balance_after_deposit, - (int)$request->amount_paid, - 0, - $request->memo, - $new_receipt_number - ); - update_banking_record_balances($transfer_date, $undeposited_funds_id, $last_insert_id_undeposited_funds, $undeposited_funds_account_balance_after_deposit); - - // update current balance - ChartOfAccount::where('id', $undeposited_funds_id)->update(['balance' => ($undeposited_funds_account_balance_today + (int)$request->amount_paid)]); - - // next, deal with the transfer between banks - // ... - // transfer date balances - $to_account_balance_on_transfer_date_record = get_latest_banking_record_based_on_transaction_date($request->bank, $transfer_date); - $to_account_balance_on_transfer_date = ($to_account_balance_on_transfer_date_record != null) ? (int)$to_account_balance_on_transfer_date_record->account_balance : 0; - $from_account_balance_on_transfer_date_record = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), $transfer_date); - $from_account_balance_on_transfer_date = ($from_account_balance_on_transfer_date_record != null) ? (int)$from_account_balance_on_transfer_date_record->account_balance : 0; - - // present day balances - $to_account_balance_today_record = get_latest_banking_record_based_on_transaction_date($request->bank, Carbon::today()->toDateString()); - $to_account_balance_today = ($to_account_balance_today_record != null) ? $to_account_balance_today_record->account_balance : 0; - $from_account_balance_today_record = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), Carbon::today()->toDateString()); - $from_account_balance_today = ($from_account_balance_today_record != null) ? $from_account_balance_today_record->account_balance : 0; - - - // deal with from account - $from_account_balance_after_transfer = ($from_account_balance_on_transfer_date - (int)$request->amount_paid); - $last_insert_id_from_account = capture_bank_record( - 'TRANSFER', - $transfer_date, - $undeposited_funds_id, - $request->bank, - $from_account_balance_after_transfer, - 0, - (int)$request->amount_paid, - $request->memo, - $new_receipt_number - ); - update_banking_record_balances($transfer_date, $request->transfer_from, $last_insert_id_from_account, $from_account_balance_after_transfer); - - // update current balance - ChartOfAccount::where('id', $undeposited_funds_id)->update(['balance' => ($from_account_balance_today - (int)$request->amount_paid)]); - - - // deal with to account - $to_account_balance_after_transfer = ($to_account_balance_on_transfer_date + (int)$request->amount_paid); - $last_insert_id_to_account = capture_bank_record( - 'DEPOSIT', - $transfer_date, - $request->bank, - $undeposited_funds_id, - $to_account_balance_after_transfer, - (int)$request->amount_paid, - 0, - $request->memo, - $new_receipt_number - ); - update_banking_record_balances($transfer_date, $request->bank, $last_insert_id_to_account, $to_account_balance_after_transfer); - - // update current balance - ChartOfAccount::where('id', $request->bank)->update(['balance' => ($to_account_balance_today + (int)$request->amount_paid)]); - - $banked = $last_insert_id_to_account; - - $cashier_income = new CashierIncome; - $cashier_income->cashier_id = $logged_in_user_id; - $cashier_income->brought_by = $logged_in_user_id; - $cashier_income->expected_amount = $request->amount_paid; - $cashier_income->reason = $request->memo; - $cashier_income->amount = $request->amount_paid; - $cashier_income->balance = 0; - $cashier_income->receipt_number = $new_receipt_number; - $cashier_income->previous_balance = (int)$request->undeposited_funds_bank_balance; - $cashier_income->account_balance = (int)$request->undeposited_funds_bank_balance + (int)$request->amount_paid; - $cashier_income->banked = $banked; - $cashier_income->save(); - - $cashier_income_id = $cashier_income->id; - $cashier_income_amount = $request->amount_paid; - - PatientCategoryInvoice::where(['invoice_number' => $request->invoice_number])->where(['invoice_date' => $request->invoice_date]) - ->update(['received' => $cashier_income_id]); - } else { - // first, the money from the invoice has to be received as undeposited funds - // ... - // undeposited funds before invoice money was deposited (as of deposit date) - $undeposited_funds_account_balance_on_transfer_date_record = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), $transfer_date); - $undeposited_funds_account_balance_on_transfer_date = ($undeposited_funds_account_balance_on_transfer_date_record != null) ? (int)$undeposited_funds_account_balance_on_transfer_date_record->account_balance : 0; - - // undeposited funds before invoice money was deposited (as of today) - $undeposited_funds_account_balance_today_record = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), Carbon::today()->toDateString()); - $undeposited_funds_account_balance_today = ($undeposited_funds_account_balance_today_record != null) ? $undeposited_funds_account_balance_today_record->account_balance : 0; - - - // make the deposit transaction - $undeposited_funds_account_balance_after_deposit = ($undeposited_funds_account_balance_on_transfer_date + (int)$request->amount_paid); - $last_insert_id_undeposited_funds = capture_bank_record( - 'DEPOSIT', - $transfer_date, - $undeposited_funds_id, - '', - $undeposited_funds_account_balance_after_deposit, - (int)$request->amount_paid, - 0, - "Deposit to undeposited funds", - $new_receipt_number - ); - update_banking_record_balances($transfer_date, $undeposited_funds_id, $last_insert_id_undeposited_funds, $undeposited_funds_account_balance_after_deposit); - - $cashier_income = new CashierIncome; - $cashier_income->cashier_id = $logged_in_user_id; - $cashier_income->brought_by = $logged_in_user_id; - $cashier_income->expected_amount = $request->amount_paid; - $category_name = get_name($request->patient_category, "id", "name", "patient_categories"); - $cashier_income->reason = "Received from ". $category_name. " for invoice number (". $request->invoice_number.")"; - $cashier_income->amount = $request->amount_paid; - $cashier_income->balance = 0; - $cashier_income->receipt_number = $new_receipt_number; - $cashier_income->previous_balance = $undeposited_funds_account_balance_on_transfer_date; - $cashier_income->account_balance = $undeposited_funds_account_balance_after_deposit; - $cashier_income->save(); - - $cashier_income_id = $cashier_income->id; - $cashier_income_amount = $request->amount_paid; - } - - $other_parameters = [ - 'received_id' => $cashier_income_id, - 'received_amount' => $cashier_income_amount, - 'banked_id' => $banked, - ]; - - $invoice_payment_record = $this->invoicesService->saveInvoicePaymentRecord( - $request->invoice_number, $new_receipt_number, $request->amount_paid, $today, - 0, null, $other_parameters - ); - $this->invoicesService->saveInvoicePayment( - $request->invoice_number, $request->total, $request->amount_paid, $request->balance, - $request->invoice_date, $request->patient_category - ); - - $request->receipt_number = $new_receipt_number; - - $patient_category_invoice = PatientCategoryInvoice::where(['invoice_number' => $request->invoice_number]) - ->where(['invoice_date' => $request->invoice_date]) - ->update(['status' => 1]); - - // update current balance - ChartOfAccount::where('id', $undeposited_funds_id)->update(['balance' => ($undeposited_funds_account_balance_today + (int)$request->amount_paid)]); - - $return_payment_methods = PatientFinanceController::register_payment_method(0, 0, $request->amount_paid, $request->payment_method, - $request->payment_methods_amount, array_fill(0, count($request->payment_methods_amount ?? []), null), array_fill(0, count($request->payment_methods_amount ?? []), 0), $new_receipt_number, 17, Auth::id(), 0); - - if (!is_null($patient_category_invoice)) { - $this->invoicesService->clearInvoice($request->invoice_number); - - //======= enter this function incase it is a patient dependee clearance =============// - clear_dependants_consumptions($request->invoice_number);//if dependent invoice clear it - //====================================// - - flash('Payment Received')->success(); - return $this->patient_payment_receipt($request); - } else { - flash('Payment Not Received')->error(); - return back()->withInput(); - } - } - } - - public function patient_payments_history(Request $request): View - { - $payments = DB::table('invoice_payment_records')->where('invoice_number', $request->invoice_number)->get(); - $patient_category = DB::table('invoice_payments')->where('invoice_number', $request->invoice_number)->first()->patient_category; - $patient_category = get_name($patient_category, 'id', 'name', 'patient_categories'); - - return view('invoices::invoices.payments_history.patient_payments_history', compact('payments', 'patient_category')); - } - - public function donor_payments_history(Request $request) - { - - $payments = DB::table('donor_invoice_payments')->where('id', $request->id)->get()->toArray(); - return view('invoices::invoices.payments_history.donor_payments_history', compact('payments')); - } - - public function donor_history() - { - - $payments = DB::table('donor_invoice_payments')->groupBy('invoice_number')->get()->toArray(); - return view('invoices::invoices.payments_history.donor_index', compact('payments')); - } - - public function donor_payment_receipt(Request $request) - { - $hospital_information = HospitalInformation::first(); - return view('invoices::invoices.receipts.donor_payment_receipt', compact('request', 'hospital_information')); - } - - public function generate_hospital_invoices(Request $request) - { - $quotation_type_options = QuotationType::pluck('name', 'id')->toArray(); - $quotation_type_options = ['' => '- select Quotation type -'] + $quotation_type_options; - $quotations = []; - $display = ""; - - if (isset($request->start_date) && isset($request->end_date)) { - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date)->toDateString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->end_date)->toDateString(); - - $quotations = Quotation::where('receive_status', 1) - ->where('invoice_generated', 0) - ->whereBetween('receive_date', [$start_date, $end_date]) - ->select('quotation_number', 'receive_date', 'quotation_type_id') - ->orderBy('quotation_number', 'desc') - ->distinct() - ->get(); - - $display = "Received between " . streamline_date($start_date) . " and " . streamline_date($end_date); - } - - return view('invoices::invoices.hospital.generate_hospital_invoices', compact('quotations', 'quotation_type_options', 'display')); - } - - public function generate_hospital_invoices_confirm(Request $request) - { - $quotation_type_options = QuotationType::pluck('name', 'id')->toArray(); - $quotation_number = $request->quotation_number; - $quotations = Quotation::where('quotation_number', $quotation_number)->get(); - - return view('invoices::invoices.hospital.generate_hospital_invoices_confirm', compact('quotations', 'quotation_type_options', 'quotation_number')); - } - - public function save_hospital_invoices($quotation_number) - { - // track the invoice - $track_invoice = new TrackInvoice(); - $track_invoice->reason = 'Hospital Invoice'; - $track_invoice->created_by = Auth::id(); - $track_invoice->save(); - $invoice_number = sprintf("%04u", $track_invoice->id); - $invoice_date = date('Y-m-d'); - - $update = Quotation::where('quotation_number', $quotation_number) - ->update( - [ - 'invoice_generated' => 1, - 'invoice_date' => $invoice_date, - 'invoice_number' => $invoice_number - ] - ); - - return redirect('/invoices/print_hospital_invoices/' . $invoice_number); - } - - public function print_hospital_invoices($invoice_number) - { - $quotations = Quotation::where('invoice_number', $invoice_number)->get(); - $served_by_name = get_full_name(Auth::id(), 'id', 'first_name', 'last_name', 'users'); - - return view('invoices::invoices.hospital.print_hospital_invoices', compact('quotations', 'invoice_number', 'served_by_name')); - } - - public function make_hospital_payments() - { - $quotations = Quotation::where('invoice_generated', 1) - ->where('invoice_cleared', 0) - ->select('invoice_number', 'invoice_date', 'quotation_type_id', 'supplier_id') - ->orderBy('invoice_number', 'desc') - ->distinct() - ->get(); - - $quotation_type_options = QuotationType::pluck('name', 'id')->toArray(); - - $quotations_with_balance = HospitalInvoicePayment::where('balance', '>', 0)->get(); - - return view('invoices::invoices.hospital.make_hospital_payments', compact('quotations', 'quotation_type_options', 'quotations_with_balance')); - } - - public function delete_hospital_invoices($invoice_number) - { - Quotation::where('invoice_number', $invoice_number) - ->update( - [ - 'invoice_generated' => 0, - 'invoice_date' => null, - 'invoice_number' => null - ] - ); - - flash("Invoice has been deleted successfully")->success(); - return redirect('/invoices/make_hospital_payments'); - } - - public function complete_hospital_payments($invoice_number) - { - $is_update = false; - $quotations = Quotation::where('invoice_number', $invoice_number)->get(); - $total_amount_to_pay = 0; - $supplier_id = $quotations[0]->supplier_id; - $quotation_type = $quotations[0]->quotation_type_id; - $invoice_date = $quotations[0]->invoice_date; - - foreach ($quotations as $quotation) { - $total_amount_to_pay += $quotation->total_price; - } - - $banks = ChartOfAccount::where('type', 4)->pluck('name', 'id')->toArray(); - $banks = ['' => '- select -'] + $banks; - - return view('invoices::invoices.hospital.complete_hospital_payments', compact('invoice_number', 'is_update', 'total_amount_to_pay', 'supplier_id', 'quotation_type', 'invoice_date', 'banks')); - } - - public function save_hospital_payments(Request $request) - { - $hospital_information = HospitalInformation::first(); - $payment_reason = "Payment to " . $request->supplier . " for " . $request->payment_for; - $total_to_pay = $request->amount; - $amount_paid = $request->amount_paid; - $balance = $request->balance; - - $receipt_number = $this->receiptService->createReceipt('Hospital Invoice Payment'); - - // update the account balance - $chart_of_account = ChartOfAccount::find($request->bank_id); - $current_balance = $chart_of_account->balance; - $new_balance = $current_balance - $amount_paid; - $chart_of_account->balance = $new_balance; - $chart_of_account->save(); - - if ($request->is_update) { - // update the record - $payment = HospitalInvoicePayment::find($request->payment_id); - - $amount_already_paid = $payment->amount_paid; - $receipt_number_array = unserialize($payment->receipt_number); - $amount_paid_array = unserialize($payment->amount_paid_history); - $date_paid_array = unserialize($payment->date_paid_history); - $staff_incharge_array = unserialize($payment->staff_incharge_history); - - $receipt_number_array[] = $receipt_number; - $amount_paid_array[] = $request->amount_paid; - $date_paid_array[] = Carbon::today()->toDateTimeString(); - $staff_incharge_array[] = Auth::id(); - - $payment->amount_paid = $amount_already_paid + $request->amount_paid; - $payment->balance = $request->balance; - $payment->receipt_number = serialize($receipt_number_array); - $payment->amount_paid_history = serialize($amount_paid_array); - $payment->date_paid_history = serialize($date_paid_array); - $payment->staff_incharge_history = serialize($staff_incharge_array); - $payment->updated_by = Auth::id(); - - if ($payment->save()) { - flash("New payment made successfully")->success(); - return view('invoices::invoices.hospital.hospital_payments_receipt', compact('hospital_information', 'receipt_number', 'payment_reason', 'total_to_pay', 'amount_paid', 'balance')); - } else { - flash("Unable to process invoice payment")->error(); - return back(); - } - } else { - // create a new record - Quotation::where('invoice_number', $request->invoice_number) - ->update(['invoice_cleared' => 1]); - - $payment = new HospitalInvoicePayment(); - - $payment->invoice_number = $request->invoice_number; - $payment->total = $request->amount; - $payment->amount_paid = $request->amount_paid; - $payment->balance = $request->balance; - $payment->invoice_date = $request->invoice_date; - - // history - $payment->receipt_number = serialize([$receipt_number]); - $payment->amount_paid_history = serialize([$request->amount_paid]); - $payment->date_paid_history = serialize([Carbon::today()->toDateTimeString()]); - $payment->staff_incharge_history = serialize([Auth::id()]); - - $payment->created_by = Auth::id(); - - if ($payment->save()) { - flash("New payment made successfully")->success(); - return view('invoices::invoices.hospital.hospital_payments_receipt', compact('hospital_information', 'receipt_number', 'payment_reason', 'total_to_pay', 'amount_paid', 'balance')); - } else { - flash("Unable to process invoice payment")->error(); - return back(); - } - } - } - - public function hospital_invoices_payment_history($id) - { - $payment = HospitalInvoicePayment::find($id); - - $receipt_number_array = unserialize($payment->receipt_number); - $amount_paid_array = unserialize($payment->amount_paid_history); - $date_paid_array = unserialize($payment->date_paid_history); - $staff_incharge_array = unserialize($payment->staff_incharge_history); - - return view('invoices::invoices.hospital.hospital_invoices_payment_history', compact('receipt_number_array', 'amount_paid_array', 'date_paid_array', 'staff_incharge_array')); - } - - public function view_hospital_payments() - { - $payments = HospitalInvoicePayment::get(); - - return view('invoices::invoices.hospital.view_hospital_payments', compact('payments')); - } - - public function update_hospital_invoice_payment($id) - { - $payment = HospitalInvoicePayment::find($id); - - $is_update = true; - $payment_id = $id; - $invoice_number = $payment->invoice_number; - $quotations = Quotation::where('invoice_number', $invoice_number)->get(); - $total_amount_to_pay = $payment->balance; - $supplier_id = $quotations[0]->supplier_id; - $quotation_type = $quotations[0]->quotation_type_id; - $invoice_date = $quotations[0]->invoice_date; - - $banks = ChartOfAccount::where('type', 4)->pluck('name', 'id')->toArray(); - $banks = ['' => '- select -'] + $banks; - - return view('invoices::invoices.hospital.complete_hospital_payments', compact('invoice_number', 'is_update', 'total_amount_to_pay', 'supplier_id', 'quotation_type', 'invoice_date', 'payment_id', 'banks')); - } - - public function process_invoices_bulk_payment(Request $request) - { - /* - 1. Loop through the invoices $request->bulk_invoices and $request->bulk_invoice_amount_to_pay arrays - 2. Check whether it is a new or an update payment - 3. update balance - */ - $bulk_invoices_array = $request->bulk_invoices; - $bulk_invoices_amounts_array = $request->bulk_invoice_amount_to_pay; - $bulk_patient_categories_array = $request->bulk_patient_category; - - for ($i=0; $i < count($bulk_invoices_array); $i++) { - $does_invoice_have_payment = $this->does_invoice_have_a_payment($bulk_invoices_array[$i]); - if ($does_invoice_have_payment) { - $this->bulk_update_invoice_payments($request, $bulk_invoices_array[$i], $bulk_invoices_amounts_array[$i], $bulk_patient_categories_array[$i]); - } else{ - # new invoice payment - $patient_category_invoice_numbers = DB::table('patient_category_invoices') - ->where('invoice_number', $bulk_invoices_array[$i]) - ->whereNull('deleted_at') - ->orderBy('transaction_date', 'asc')->get(); - - $total_invoice_payment = 0; - - foreach ($patient_category_invoice_numbers as $patient_category_invoice_number) { - $total_invoice_payment += (int)$patient_category_invoice_number->patient_amount; - } - - $logged_in_user_id = Auth::id(); - - $new_receipt_number = $this->receiptService->createReceipt('Invoice Payment'); - - $banked = null; - $today = Carbon::today()->toDateTimeString(); - $transfer_date = Carbon::parse($request->payment_date)->toDateString(); - - $patient_cate_invoice = PatientCategoryInvoice::where('invoice_number', $bulk_invoices_array[$i])->first(); - $invoice_date = null; - if ($patient_cate_invoice) { - $invoice_date = $patient_cate_invoice->invoice_date; - } else{ - flash('invoice has not yet been generated')->error(); - return redirect()->back()->withInput(); - } - - // undeposited funds before invoice money was deposited (as of deposit date) - $undeposited_funds_id = get_name("undeposited_funds", "slug", "id", "chart_of_accounts"); - - if (!is_numeric($undeposited_funds_id)) { - flash('Undeposited funds account is missing')->error(); - return back()->withInput(); - } - - if (!is_null($request->bank) && !is_null($request->bank_balance)) { - // first, the money from the invoice has to be received as undeposited funds - - $undeposited_funds_account_balance_on_transfer_date_record = get_latest_banking_record_based_on_transaction_date($undeposited_funds_id, $transfer_date); - $undeposited_funds_account_balance_on_transfer_date = ($undeposited_funds_account_balance_on_transfer_date_record != null) ? (int)$undeposited_funds_account_balance_on_transfer_date_record->account_balance : 0; - - // undeposited funds before invoice money was deposited (as of today) - $undeposited_funds_account_balance_today_record = get_latest_banking_record_based_on_transaction_date($undeposited_funds_id, Carbon::today()->toDateString()); - $undeposited_funds_account_balance_today = ($undeposited_funds_account_balance_today_record != null) ? $undeposited_funds_account_balance_today_record->account_balance : 0; - - // make the deposit transaction - $undeposited_funds_account_balance_after_deposit = ($undeposited_funds_account_balance_on_transfer_date + (int)$bulk_invoices_amounts_array[$i]); - $last_insert_id_undeposited_funds = capture_bank_record( - 'DEPOSIT', - $transfer_date, - $undeposited_funds_id, - '', - $undeposited_funds_account_balance_after_deposit, - (int)$bulk_invoices_amounts_array[$i], - 0, - $request->memo, - $new_receipt_number - ); - update_banking_record_balances($transfer_date, $undeposited_funds_id, $last_insert_id_undeposited_funds, $undeposited_funds_account_balance_after_deposit); - - // update current balance - ChartOfAccount::where('id', $undeposited_funds_id)->update(['balance' => ($undeposited_funds_account_balance_today + (int)$bulk_invoices_amounts_array[$i])]); - - // next, deal with the transfer between banks - // ... - // transfer date balances - $to_account_balance_on_transfer_date_record = get_latest_banking_record_based_on_transaction_date($request->bank, $transfer_date); - $to_account_balance_on_transfer_date = ($to_account_balance_on_transfer_date_record != null) ? (int)$to_account_balance_on_transfer_date_record->account_balance : 0; - $from_account_balance_on_transfer_date_record = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), $transfer_date); - $from_account_balance_on_transfer_date = ($from_account_balance_on_transfer_date_record != null) ? (int)$from_account_balance_on_transfer_date_record->account_balance : 0; - - // present day balances - $to_account_balance_today_record = get_latest_banking_record_based_on_transaction_date($request->bank, Carbon::today()->toDateString()); - $to_account_balance_today = ($to_account_balance_today_record != null) ? $to_account_balance_today_record->account_balance : 0; - $from_account_balance_today_record = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), Carbon::today()->toDateString()); - $from_account_balance_today = ($from_account_balance_today_record != null) ? $from_account_balance_today_record->account_balance : 0; - - - // deal with from account - $from_account_balance_after_transfer = ($from_account_balance_on_transfer_date - (int)$bulk_invoices_amounts_array[$i]); - $last_insert_id_from_account = capture_bank_record( - 'TRANSFER', - $transfer_date, - $undeposited_funds_id, - $request->bank, - $from_account_balance_after_transfer, - 0, - (int)$bulk_invoices_amounts_array[$i], - $request->memo, - $new_receipt_number - ); - $transfer_from_bank = get_name("undeposited_funds", "slug", "id", "chart_of_accounts");//undeposited_funds - update_banking_record_balances($transfer_date, $transfer_from_bank, $last_insert_id_from_account, $from_account_balance_after_transfer); - - // update current balance - ChartOfAccount::where('id', $undeposited_funds_id)->update(['balance' => ($from_account_balance_today - (int)$bulk_invoices_amounts_array[$i])]); - - - // deal with to account - $to_account_balance_after_transfer = ($to_account_balance_on_transfer_date + (int)$bulk_invoices_amounts_array[$i]); - $last_insert_id_to_account = capture_bank_record( - 'DEPOSIT', - $transfer_date, - $request->bank, - $undeposited_funds_id, - $to_account_balance_after_transfer, - (int)$bulk_invoices_amounts_array[$i], - 0, - $request->memo, - $new_receipt_number - ); - update_banking_record_balances($transfer_date, $request->bank, $last_insert_id_to_account, $to_account_balance_after_transfer); - - // update current balance - ChartOfAccount::where('id', $request->bank)->update(['balance' => ($to_account_balance_today + (int)$bulk_invoices_amounts_array[$i])]); - - - $banked = $last_insert_id_to_account; - - $cashier_income = new CashierIncome; - $cashier_income->cashier_id = $logged_in_user_id; - $cashier_income->brought_by = $logged_in_user_id; - $cashier_income->expected_amount = $bulk_invoices_amounts_array[$i]; - $cashier_income->reason = $request->memo; - $cashier_income->amount = $bulk_invoices_amounts_array[$i]; - $cashier_income->balance = 0; - $cashier_income->receipt_number = $new_receipt_number; - $cashier_income->previous_balance = (int)$request->undeposited_funds_bank_balance; - $cashier_income->account_balance = (int)$request->undeposited_funds_bank_balance + (int)$bulk_invoices_amounts_array[$i]; - $cashier_income->banked = $banked; - $cashier_income->save(); - - $cashier_income_id = $cashier_income->id; - - PatientCategoryInvoice::where(['invoice_number' => $bulk_invoices_array[$i]])->where(['invoice_date' => $invoice_date])->update(['received' => $cashier_income_id]); - } else { - // first, the money from the invoice has to be received as undeposited funds - // ... - // undeposited funds before invoice money was deposited (as of deposit date) - $undeposited_funds_account_balance_on_transfer_date_record = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), $transfer_date); - $undeposited_funds_account_balance_on_transfer_date = ($undeposited_funds_account_balance_on_transfer_date_record != null) ? (int)$undeposited_funds_account_balance_on_transfer_date_record->account_balance : 0; - - // undeposited funds before invoice money was deposited (as of today) - $undeposited_funds_account_balance_today_record = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), Carbon::today()->toDateString()); - $undeposited_funds_account_balance_today = ($undeposited_funds_account_balance_today_record != null) ? $undeposited_funds_account_balance_today_record->account_balance : 0; - - - // make the deposit transaction - $undeposited_funds_account_balance_after_deposit = ($undeposited_funds_account_balance_on_transfer_date + (int)$bulk_invoices_amounts_array[$i]); - $last_insert_id_undeposited_funds = capture_bank_record( - 'DEPOSIT', - $transfer_date, - $undeposited_funds_id, - '', - $undeposited_funds_account_balance_after_deposit, - (int)$bulk_invoices_amounts_array[$i], - 0, - "Deposit to undeposited funds", - $new_receipt_number - ); - update_banking_record_balances($transfer_date, $undeposited_funds_id, $last_insert_id_undeposited_funds, $undeposited_funds_account_balance_after_deposit); - - $cashier_income = new CashierIncome; - $cashier_income->cashier_id = $logged_in_user_id; - $cashier_income->brought_by = $logged_in_user_id; - $cashier_income->expected_amount = $bulk_invoices_amounts_array[$i]; - $category_name = get_name($bulk_patient_categories_array[$i], "id", "name", "patient_categories"); - $cashier_income->reason = "Received from ". $category_name. " for invoice number (". $bulk_invoices_array[$i].")"; - $cashier_income->amount = $bulk_invoices_amounts_array[$i]; - $cashier_income->balance = 0; - $cashier_income->receipt_number = $new_receipt_number; - $cashier_income->previous_balance = $undeposited_funds_account_balance_on_transfer_date; - $cashier_income->account_balance = $undeposited_funds_account_balance_after_deposit; - $cashier_income->save(); - - $cashier_income_id = $cashier_income->id; - } - - $other_parameters = [ - 'received_id' => $cashier_income_id, - 'received_amount' => $bulk_invoices_amounts_array[$i], - 'banked_id' => $banked, - ]; - - $invoice_payment_record = $this->invoicesService->saveInvoicePaymentRecord( - $bulk_invoices_array[$i], $new_receipt_number, $bulk_invoices_amounts_array[$i], $invoice_date, - 0, null, $other_parameters - ); - $this->invoicesService->saveInvoicePayment( - $bulk_invoices_array[$i], $total_invoice_payment, $bulk_invoices_amounts_array[$i], 0, - $invoice_date, $bulk_patient_categories_array[$i] - ); - - $request->receipt_number = $new_receipt_number; - - $patient_category_invoice = PatientCategoryInvoice::where(['invoice_number' => $bulk_invoices_array[$i]]) - ->where(['invoice_date' => $invoice_date]) - ->update(['status' => 1]); - - // update current balance - ChartOfAccount::where('id', $undeposited_funds_id)->update(['balance' => ($undeposited_funds_account_balance_today + (int)$bulk_invoices_amounts_array[$i])]); - - $return_payment_methods = PatientFinanceController::register_payment_method(0, 0, $bulk_invoices_amounts_array[$i], $request->payment_method, - $request->payment_methods_amount, array_fill(0, count($request->payment_methods_amount ?? []), null), array_fill(0, count($request->payment_methods_amount ?? []), 0), $new_receipt_number, 17, Auth::id(), 0); - - if (!is_null($patient_category_invoice)) { - $this->invoicesService->clearInvoice($bulk_invoices_array[$i]); - - //======= enter this function incase it is a patient dependee clearance =============// - clear_dependants_consumptions($bulk_invoices_array[$i]);//if dependent invoice clear it - //====================================// - - flash('Payment Received for Patient Category Invoice '.$bulk_invoices_array[$i])->success(); - } else { - flash('Payment Not Received')->error(); - return back(); - } - } - } - - return redirect('invoices/receive_patient_invoices'); - } - - public function does_invoice_have_a_payment($invoice_number) - { - $invoice_payment_record = DB::table('invoice_payments')->where('invoice_number', $invoice_number)->first(); - - if ($invoice_payment_record) { - if ($invoice_payment_record->balance > 0) { - return true; - } - } - - return false; - } - - public function bulk_update_invoice_payments(Request $request, $invoice_number, $invoice_amount_paid, $invoice_patient_category) - { - $new_receipt_number = $this->receiptService->createReceipt('Invoice Payment'); - - $patient_cate_invoice = PatientCategoryInvoice::where('invoice_number', $invoice_number)->orderBy('id', 'desc')->first(); - $invoice_date = $patient_cate_invoice->invoice_date; - - $undeposited_acc_id = get_name("undeposited_funds", "slug", "id", "chart_of_accounts"); - - $logged_in_user_id = Auth::id(); - $banked = null; - $transfer_date = Carbon::parse($request->payment_date)->toDateString(); - - $payment_received_on = Carbon::parse($request->payment_date)->toDateString(); - - if (!is_null($request->bank) && !is_null($request->bank_balance)) { - // first, the money from the invoice has to be received as undeposited funds - // ... - // undeposited funds before invoice money was deposited (as of deposit date) - $undeposited_funds_account_balance_on_transfer_date_record = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), $transfer_date); - $undeposited_funds_account_balance_on_transfer_date = ($undeposited_funds_account_balance_on_transfer_date_record != null) ? (int)$undeposited_funds_account_balance_on_transfer_date_record->account_balance : 0; - - // undeposited funds before invoice money was deposited (as of today) - $undeposited_funds_account_balance_today_record = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), Carbon::today()->toDateString()); - $undeposited_funds_account_balance_today = ($undeposited_funds_account_balance_today_record != null) ? $undeposited_funds_account_balance_today_record->account_balance : 0; - - // make the deposit transaction - $undeposited_funds_account_balance_after_deposit = ($undeposited_funds_account_balance_on_transfer_date + (int)$invoice_amount_paid); - $last_insert_id_undeposited_funds = capture_bank_record( - 'DEPOSIT', - $transfer_date, - $undeposited_acc_id, - '', - $undeposited_funds_account_balance_after_deposit, - (int)$invoice_amount_paid, - 0, - $request->memo, - $new_receipt_number - ); - update_banking_record_balances($transfer_date, $undeposited_acc_id, $last_insert_id_undeposited_funds, $undeposited_funds_account_balance_after_deposit); - - // update current balance - ChartOfAccount::where('id', $undeposited_acc_id)->update(['balance' => ($undeposited_funds_account_balance_today + (int)$invoice_amount_paid)]); - - // next, deal with the transfer between banks - // ... - // transfer date balances - $to_account_balance_on_transfer_date_record = get_latest_banking_record_based_on_transaction_date($request->bank, $transfer_date); - $to_account_balance_on_transfer_date = ($to_account_balance_on_transfer_date_record != null) ? (int)$to_account_balance_on_transfer_date_record->account_balance : 0; - $from_account_balance_on_transfer_date_record = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), $transfer_date); - $from_account_balance_on_transfer_date = ($from_account_balance_on_transfer_date_record != null) ? (int)$from_account_balance_on_transfer_date_record->account_balance : 0; - - // present day balances - $to_account_balance_today_record = get_latest_banking_record_based_on_transaction_date($request->bank, Carbon::today()->toDateString()); - $to_account_balance_today = ($to_account_balance_today_record != null) ? $to_account_balance_today_record->account_balance : 0; - $from_account_balance_today_record = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), Carbon::today()->toDateString()); - $from_account_balance_today = ($from_account_balance_today_record != null) ? $from_account_balance_today_record->account_balance : 0; - - - // deal with from account - $from_account_balance_after_transfer = ($from_account_balance_on_transfer_date - (int)$invoice_amount_paid); - $last_insert_id_from_account = capture_bank_record( - 'TRANSFER', - $transfer_date, - $undeposited_acc_id, - $request->bank, - $from_account_balance_after_transfer, - 0, - (int)$invoice_amount_paid, - $request->memo, - $new_receipt_number - ); - update_banking_record_balances($transfer_date, $undeposited_acc_id, $last_insert_id_from_account, $from_account_balance_after_transfer); - - // update current balance - ChartOfAccount::where('id', $undeposited_acc_id)->update(['balance' => ($from_account_balance_today - (int)$invoice_amount_paid)]); - - - // deal with to account - $to_account_balance_after_transfer = ($to_account_balance_on_transfer_date + (int)$invoice_amount_paid); - $last_insert_id_to_account = capture_bank_record( - 'DEPOSIT', - $transfer_date, - $request->bank, - $undeposited_acc_id, - $to_account_balance_after_transfer, - (int)$invoice_amount_paid, - 0, - $request->memo, - $new_receipt_number - ); - $bank_record = Banking::where('id', $last_insert_id_to_account)->first(); - $bank_record->created_at = $logged_in_user_id; - $bank_record->update(); - update_banking_record_balances($transfer_date, $request->bank, $last_insert_id_to_account, $to_account_balance_after_transfer); - - // update current balance - ChartOfAccount::where('id', $request->bank)->update(['balance' => ($to_account_balance_today + (int)$invoice_amount_paid)]); - - - $banked = $last_insert_id_to_account; - - update_banking_record_balances($payment_received_on, $request->bank, $bank_record->id, ((int)$request->bank_balance + (int)$invoice_amount_paid)); - - $cashier_income = new CashierIncome; - $cashier_income->cashier_id = $logged_in_user_id; - $cashier_income->brought_by = $logged_in_user_id; - $cashier_income->expected_amount = $invoice_amount_paid; - $cashier_income->reason = $request->memo; - $cashier_income->amount = $invoice_amount_paid; - $cashier_income->balance = 0; - $cashier_income->receipt_number = $new_receipt_number; - $cashier_income->previous_balance = (int)$request->undeposited_funds_bank_balance; - $cashier_income->account_balance = (int)$request->undeposited_funds_bank_balance + (int)$invoice_amount_paid; - $cashier_income->banked = $banked; - $cashier_income->save(); - - $cashier_income_id = $cashier_income->id; - - PatientCategoryInvoice::where(['invoice_number' => $invoice_number])->where(['invoice_date' => $invoice_date]) - ->update(['received' => $cashier_income_id]); - } else { - // first, the money from the invoice has to be received as undeposited funds - // ... - // undeposited funds before invoice money was deposited (as of deposit date) - $undeposited_funds_account_balance_on_transfer_date_record = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), $transfer_date); - $undeposited_funds_account_balance_on_transfer_date = ($undeposited_funds_account_balance_on_transfer_date_record != null) ? (int)$undeposited_funds_account_balance_on_transfer_date_record->account_balance : 0; - - // undeposited funds before invoice money was deposited (as of today) - $undeposited_funds_account_balance_today_record = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), Carbon::today()->toDateString()); - $undeposited_funds_account_balance_today = ($undeposited_funds_account_balance_today_record != null) ? $undeposited_funds_account_balance_today_record->account_balance : 0; - - - // make the deposit transaction - $undeposited_funds_account_balance_after_deposit = ($undeposited_funds_account_balance_on_transfer_date + (int)$invoice_amount_paid); - $last_insert_id_undeposited_funds = capture_bank_record( - 'DEPOSIT', - $transfer_date, - $undeposited_acc_id, - '', - $undeposited_funds_account_balance_after_deposit, - (int)$invoice_amount_paid, - 0, - "Deposit to undeposited funds", - $new_receipt_number - ); - update_banking_record_balances($transfer_date, $undeposited_acc_id, $last_insert_id_undeposited_funds, $undeposited_funds_account_balance_after_deposit); - - $cashier_income = new CashierIncome; - $cashier_income->cashier_id = $logged_in_user_id; - $cashier_income->brought_by = $logged_in_user_id; - $cashier_income->expected_amount = $invoice_amount_paid; - $cashier_income->reason = "Received from patient category invoices"; - $cashier_income->amount = $invoice_amount_paid; - $cashier_income->balance = 0; - $cashier_income->receipt_number = $new_receipt_number; - $cashier_income->previous_balance = $undeposited_funds_account_balance_on_transfer_date; - $cashier_income->account_balance = $undeposited_funds_account_balance_after_deposit; - $cashier_income->save(); - - $cashier_income_id = $cashier_income->id; - } - - PatientCategoryInvoice::where(['invoice_number' => $invoice_number]) - ->where(['invoice_date' => $invoice_date]) - ->update(['status' => 1, 'received' => is_null($cashier_income_id) ? null : $cashier_income_id]); - - $other_parameters = [ - 'received_id' => $cashier_income_id, - 'received_amount' => $invoice_amount_paid, - 'banked_id' => $banked, - ]; - - $invoice_payment_record = $this->invoicesService->saveInvoicePaymentRecord( - $invoice_number, $new_receipt_number, $invoice_amount_paid, $request->payment_date, - 0, null, $other_parameters - ); - $this->invoicesService->updateInvoicePayment($invoice_number, $invoice_amount_paid, 0); - - $request->receipt_number = $new_receipt_number; - - update_account_balance_by_id($undeposited_acc_id, $invoice_amount_paid); - - $this->invoicesService->clearInvoice($invoice_number); - clear_dependants_consumptions($invoice_number);//if dependent invoice clear it - - $return_payment_methods = PatientFinanceController::register_payment_method(0, 0, $invoice_amount_paid, $request->payment_method, - $request->payment_methods_amount, array_fill(0, count($request->payment_methods_amount ?? []), null), array_fill(0, count($request->payment_methods_amount ?? []), 0), $new_receipt_number, 17, Auth::id(), 0); - - if (!is_null($invoice_payment_record)) { - flash('Payment Updated for Patient Category Invoice '.$invoice_number); - } else { - flash('Payment Not Updated'); - } - } - - public function custom_invoices($patient_category, $category, $is_generated) - { - $invoices_counter = 0; - $invoices = []; - $request = new Request(); - $searched_patient_category = ''; - - $today = Carbon::today()->toDateTimeString(); - $today_minus_thirty = Carbon::today()->subDays(30)->toDateTimeString(); - $today_minus_sixty = Carbon::today()->subDays(60)->toDateTimeString(); - $today_minus_ninety = Carbon::today()->subDays(90)->toDateTimeString(); - - $display = get_name($patient_category, 'id', 'name', 'patient_categories') . ' - UNPAID INVOICES AND PAID INVOICES (BUT WITH BALANCE) '; - - $request->staff_member = "ALL STAFF"; - $request->patient_category = $patient_category; - $request->bill_status = "UNPAID INVOICES"; - $request->dates = 'custom_date_range'; - $request->start_date = $today; - $request->end_date = $today; - $patient_categories = DB::table('patient_discounts')->where(['pay_later' => 1])->pluck('patient_category')->toArray(); - - switch ($category) { - case 'current': - $display .= " for today, the " . streamline_date($today); - $invoices_query = "SELECT * FROM patient_category_invoices WHERE invoice_generated = {$is_generated} AND deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) AND patient_category = {$patient_category} AND created_at >= '{$today}' GROUP BY invoice_number ORDER BY id ASC"; - $searched_patient_category = get_name($request->patient_category, 'id', 'name', 'patient_categories'); - if ($patient_category == 0) { - $invoices_query = "SELECT * FROM patient_category_invoices WHERE invoice_generated = {$is_generated} AND deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) AND patient_category IS NULL AND created_at >= '{$today}' GROUP BY invoice_number ORDER BY id ASC"; - $searched_patient_category = "All Patient Categories"; - } - $invoices_temp = DB::select($invoices_query); - - $invoices_not_generated = DB::table('patient_category_invoices') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereDate('created_at', $today) - ->where('patient_category', $request->patient_category) - ->whereNull('deleted_at') - ->where('invoice_generated', $is_generated) - // group invoices by episode - ->groupBy('episode_id')->selectRaw('*, sum(patient_amount) as sum') - ->get() - ->toArray(); - break; - - case 'one_to_thirty': - $request->start_date = $today_minus_thirty; - $display .= " from " . streamline_date($today_minus_thirty) . " to " . streamline_date($today); - $invoices_query = "SELECT * FROM patient_category_invoices WHERE invoice_generated = {$is_generated} AND deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) AND patient_category = {$patient_category} AND created_at BETWEEN '{$today_minus_thirty}' AND '{$today}' GROUP BY invoice_number ORDER BY id ASC"; - $searched_patient_category = get_name($request->patient_category, 'id', 'name', 'patient_categories'); - if ($patient_category == 0) { - $invoices_query = "SELECT * FROM patient_category_invoices WHERE invoice_generated = {$is_generated} AND deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) AND patient_category IS NULL AND created_at BETWEEN '{$today_minus_thirty}' AND '{$today}' GROUP BY invoice_number ORDER BY id ASC"; - $searched_patient_category = "All Patient Categories"; - } - $invoices_temp = DB::select($invoices_query); - - $invoices_not_generated = DB::table('patient_category_invoices') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereBetween('created_at', [$today_minus_thirty, $today]) - ->where('patient_category', $request->patient_category) - ->whereNull('deleted_at') - ->where('invoice_generated', 0) - // group invoices by episode - ->groupBy('episode_id')->selectRaw('*, sum(patient_amount) as sum') - ->get() - ->toArray(); - break; - - case 'thirty_one_to_sixty': - $request->start_date = $today_minus_sixty; - $request->end_date = $today_minus_thirty; - $display .= " from " . streamline_date($today_minus_sixty) . " to " . streamline_date($today_minus_thirty); - $invoices_query = "SELECT * FROM patient_category_invoices WHERE invoice_generated = {$is_generated} AND deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) AND patient_category = {$patient_category} AND created_at BETWEEN '{$today_minus_sixty}' AND '{$today_minus_thirty}' GROUP BY invoice_number ORDER BY id ASC"; - $searched_patient_category = get_name($request->patient_category, 'id', 'name', 'patient_categories'); - if ($patient_category == 0) { - $invoices_query = "SELECT * FROM patient_category_invoices WHERE invoice_generated = {$is_generated} AND deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) AND patient_category IS NULL AND created_at BETWEEN '{$today_minus_sixty}' AND '{$today_minus_thirty}' GROUP BY invoice_number ORDER BY id ASC"; - $searched_patient_category = "All Patient Categories"; - } - $invoices_temp = DB::select($invoices_query); - - $invoices_not_generated = DB::table('patient_category_invoices') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereBetween('created_at', [$today_minus_sixty, $today_minus_thirty]) - ->where('patient_category', $request->patient_category) - ->whereNull('deleted_at') - ->where('invoice_generated', 0) - // group invoices by episode - ->groupBy('episode_id')->selectRaw('*, sum(patient_amount) as sum') - ->get() - ->toArray(); - break; - - case 'sixty_one_to_ninety': - $request->start_date = $today_minus_ninety; - $request->end_date = $today_minus_sixty; - $display .= " from " . streamline_date($today_minus_ninety) . " to " . streamline_date($today_minus_sixty); - $invoices_query = "SELECT * FROM patient_category_invoices WHERE invoice_generated = {$is_generated} AND deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) AND patient_category = {$patient_category} AND created_at BETWEEN '{$today_minus_ninety}' AND '{$today_minus_sixty}' GROUP BY invoice_number ORDER BY id ASC"; - $searched_patient_category = get_name($request->patient_category, 'id', 'name', 'patient_categories'); - if ($patient_category == 0) { - $invoices_query = "SELECT * FROM patient_category_invoices WHERE invoice_generated = {$is_generated} AND deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) AND patient_category IS NULL AND created_at BETWEEN '{$today_minus_ninety}' AND '{$today_minus_sixty}' GROUP BY invoice_number ORDER BY id ASC"; - $searched_patient_category = "All Patient Categories"; - } - $invoices_temp = DB::select($invoices_query); - - $invoices_not_generated = DB::table('patient_category_invoices') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereBetween('created_at', [$today_minus_ninety, $today_minus_sixty]) - ->where('patient_category', $request->patient_category) - ->whereNull('deleted_at') - ->where('invoice_generated', 0) - // group invoices by episode - ->groupBy('episode_id')->selectRaw('*, sum(patient_amount) as sum') - ->get() - ->toArray(); - break; - - case 'ninety_one_and_over': - $request->start_date = Carbon::today()->startOfYear()->toDateTimeString(); - $request->end_date = $today_minus_ninety; - $display .= " before " . streamline_date($today_minus_ninety); - $invoices_query = "SELECT * FROM patient_category_invoices WHERE invoice_generated = {$is_generated} AND deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) AND patient_category = {$patient_category} AND created_at < '{$today_minus_ninety}' GROUP BY invoice_number ORDER BY id ASC"; - $searched_patient_category = get_name($request->patient_category, 'id', 'name', 'patient_categories'); - if ($patient_category == 0) { - $invoices_query = "SELECT * FROM patient_category_invoices WHERE invoice_generated = {$is_generated} AND deleted_at IS NULL AND (balance_remaining IS NULL OR balance_remaining > 0) AND patient_category IS NULL AND created_at < '{$today_minus_ninety}' GROUP BY invoice_number ORDER BY id ASC"; - $searched_patient_category = "All Patient Categories"; - } - $invoices_temp = DB::select($invoices_query); - - $invoices_not_generated = DB::table('patient_category_invoices') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereDate('created_at', '<', $today_minus_ninety) - ->where('patient_category', $request->patient_category) - ->whereNull('deleted_at') - ->where('invoice_generated', 0) - // group invoices by episode - ->groupBy('episode_id')->selectRaw('*, sum(patient_amount) as sum') - ->get() - ->toArray(); - break; - } - - if ($is_generated == 1) { - - $start_date = $request->start_date; - $end_date = $request->end_date; - $generated_invoice_numbers_array = []; - - foreach ($invoices_temp as $record) { - $patient_category_invoice_numbers = DB::table('patient_category_invoices') - ->where('invoice_number', $record->invoice_number) - ->orderBy('created_at', 'asc')->get(); - - $total_invoice_payment = 0; - - foreach ($patient_category_invoice_numbers as $patient_category_invoice_number) { - $total_invoice_payment += (int)$patient_category_invoice_number->patient_amount; - } - - // check if invoice has a payment record - $invoice_payment_record = DB::table('invoice_payments') - ->where('invoice_number', $record->invoice_number)->first(); - - if ($invoice_payment_record) { - if ($invoice_payment_record->balance > 0) { - // for those invoices with payments, only bring those with a balance - $invoices[$invoices_counter]['has_payment'] = 1; - $invoices[$invoices_counter]['amount_paid'] = $invoice_payment_record->amount_paid; - $invoices[$invoices_counter]['payment_id'] = $invoice_payment_record->id; - $invoices[$invoices_counter]['balance'] = $invoice_payment_record->balance; - } else { - // do not continue to add an invoice record - continue; - } - } else { - $invoices[$invoices_counter]['has_payment'] = 0; - $invoices[$invoices_counter]['amount_paid'] = 0; - $invoices[$invoices_counter]['payment_id'] = 0; - $invoices[$invoices_counter]['balance'] = 0; - } - - $invoices[$invoices_counter]['patient_amount'] = $total_invoice_payment; - $invoices[$invoices_counter]['invoice_number'] = $record->invoice_number; - $invoices[$invoices_counter]['invoice_date'] = $record->invoice_date; - $invoices[$invoices_counter]['patient_category'] = $record->patient_category; - $invoices[$invoices_counter]['created_at'] = $record->created_at; - $invoices[$invoices_counter]['updated_at'] = $record->updated_at; - $invoices[$invoices_counter]['created_by'] = $record->created_by; - $generated_invoice_numbers_array[] = $record->invoice_number; - - $invoices_counter++; - } - - /* Arranging the data*/ - asort($invoices); - - if (isset($request->patient_category) && $request->patient_category != 0) { - $payments = DB::table('invoice_payments')->where('patient_category', $request->patient_category)->whereNotIn('invoice_number', $generated_invoice_numbers_array)->groupBy('invoice_number')->get()->toArray(); - } else { - $payments = DB::table('invoice_payments')->whereNotIn('invoice_number', $generated_invoice_numbers_array)->groupBy('invoice_number')->get()->toArray(); - } - $banks = ChartOfAccount::where('type', 4)->pluck('name', 'id')->prepend('-select-', '')->toArray(); - $patient_payment_methods = PatientPaymentMethod::pluck('name', 'id'); - $patient_payment_methods_options = ""; - foreach ($patient_payment_methods as $key => $value) { - $patient_payment_methods_options .= ''; - } - - return view('invoices::invoices.receive_payments.receive_patient_payments', compact('invoices', 'start_date', 'end_date', 'patient_categories', 'searched_patient_category', 'payments', 'request', 'display', 'banks', 'patient_payment_methods_options')); - } else { - $total = 0; - - if (count($invoices_not_generated) > 0) { - foreach ($invoices_not_generated as $item) { - $total += $item->sum; - } - } - - return view('invoices::invoices.patient_category', compact( - 'patient_categories', - 'invoices_not_generated', - 'request', - 'display', - 'total' - )); - } - } - - public function custom_invoice($patient_category, $category, $id, $is_generated) { - $invoices = []; - $request = new Request(); - $hospital_information = HospitalInformation::first(); - - $today = Carbon::today()->toDateTimeString(); - $today_minus_thirty = Carbon::today()->subDays(30)->toDateTimeString(); - $today_minus_sixty = Carbon::today()->subDays(60)->toDateTimeString(); - $today_minus_ninety = Carbon::today()->subDays(90)->toDateTimeString(); - - $display = get_name($patient_category, 'id', 'name', 'patient_categories') . ' - UNPAID INVOICES AND PAID INVOICES (BUT WITH BALANCE) '; - - $invoices_query = "SELECT * FROM patient_category_invoices WHERE id = {$id}"; - $invoices_temp = DB::select($invoices_query); - $invoices_counter = 0; - - switch ($category) { - case 'current': - $display .= " for today, the " . streamline_date($today); - break; - - case 'one_to_thirty': - $request->start_date = $today_minus_thirty; - $display .= " from " . streamline_date($today_minus_thirty) . " to " . streamline_date($today); - break; - - case 'thirty_one_to_sixty': - $request->start_date = $today_minus_sixty; - $request->end_date = $today_minus_thirty; - $display .= " from " . streamline_date($today_minus_sixty) . " to " . streamline_date($today_minus_thirty); - break; - - case 'sixty_one_to_ninety': - $request->start_date = $today_minus_ninety; - $request->end_date = $today_minus_sixty; - $display .= " from " . streamline_date($today_minus_ninety) . " to " . streamline_date($today_minus_sixty); - break; - - case 'ninety_one_and_over': - $request->start_date = Carbon::today()->startOfYear()->toDateTimeString(); - $request->end_date = $today_minus_ninety; - $display .= " before " . streamline_date($today_minus_ninety); - break; - } - - if ($is_generated == "1") { - $patient_categories = DB::table('patient_discounts')->where(['pay_later' => 1])->pluck('patient_category')->toArray(); - $searched_patient_category = get_name($request->patient_category, 'id', 'name', 'patient_categories'); - - $start_date = $request->start_date; - $end_date = $request->end_date; - - $generated_invoice_numbers_array = []; - - foreach ($invoices_temp as $record) { - $patient_category_invoice_numbers = DB::table('patient_category_invoices') - ->where('invoice_number', $record->invoice_number) - ->orderBy('created_at', 'asc')->get(); - - $total_invoice_payment = 0; - - foreach ($patient_category_invoice_numbers as $patient_category_invoice_number) { - $total_invoice_payment += (int)$patient_category_invoice_number->patient_amount; - } - - // check if invoice has a payment record - $invoice_payment_record = DB::table('invoice_payments') - ->where('invoice_number', $record->invoice_number)->first(); - - if ($invoice_payment_record) { - if ($invoice_payment_record->balance > 0) { - // for those invoices with payments, only bring those with a balance - $invoices[$invoices_counter]['has_payment'] = 1; - $invoices[$invoices_counter]['amount_paid'] = $invoice_payment_record->amount_paid; - $invoices[$invoices_counter]['payment_id'] = $invoice_payment_record->id; - $invoices[$invoices_counter]['balance'] = $invoice_payment_record->balance; - } else { - // do not continue to add an invoice record - continue; - } - } else { - $invoices[$invoices_counter]['has_payment'] = 0; - $invoices[$invoices_counter]['amount_paid'] = 0; - $invoices[$invoices_counter]['payment_id'] = 0; - $invoices[$invoices_counter]['balance'] = 0; - } - - $invoices[$invoices_counter]['patient_amount'] = $total_invoice_payment; - $invoices[$invoices_counter]['invoice_number'] = $record->invoice_number; - $invoices[$invoices_counter]['invoice_date'] = $record->invoice_date; - $invoices[$invoices_counter]['patient_category'] = $record->patient_category; - $invoices[$invoices_counter]['created_at'] = $record->created_at; - $invoices[$invoices_counter]['updated_at'] = $record->updated_at; - $invoices[$invoices_counter]['created_by'] = $record->created_by; - $generated_invoice_numbers_array[] = $record->invoice_number; - - $invoices_counter++; - } - - /* Arranging the data*/ - asort($invoices); - - if (isset($request->patient_category) && $request->patient_category != 0) { - $payments = DB::table('invoice_payments')->where('patient_category', $request->patient_category)->whereNotIn('invoice_number', $generated_invoice_numbers_array)->groupBy('invoice_number')->get()->toArray(); - } else { - $payments = DB::table('invoice_payments')->whereNotIn('invoice_number', $generated_invoice_numbers_array)->groupBy('invoice_number')->get()->toArray(); - } - - $banks = ChartOfAccount::where('type', 4)->pluck('name', 'id')->prepend('-select-', '')->toArray(); - $patient_payment_methods = PatientPaymentMethod::pluck('name', 'id'); - $patient_payment_methods_options = ""; - foreach ($patient_payment_methods as $key => $value) { - $patient_payment_methods_options .= ''; - } - - return view('invoices::invoices.receive_payments.receive_patient_payments', compact('invoices', 'start_date', 'end_date', 'patient_categories', 'searched_patient_category', 'payments', 'request', 'display', 'banks', - 'patient_payment_methods_options')); - } else { - $invoice_with_payment_amount_paid = $invoice_with_payment_balance = 0; - - $users_name = get_full_name(Auth::id(), 'id', 'first_name', 'last_name', 'users'); - $invoices = DB::table('patient_category_invoices') - ->where('id', $id) - ->groupBy('episode_id')->selectRaw('*, sum(patient_amount) as sum') - ->get() - ->toArray(); - - $request->invoice_number = "N/A"; - - return view('invoices::invoices.generate_invoice.patient_invoice', compact( - 'invoices', - 'request', - 'users_name', - 'hospital_information', - 'display', - 'invoice_with_payment_amount_paid', - 'invoice_with_payment_balance' - )); - } - } -} diff --git a/docker/statistics/Modules/Invoices/Providers/InvoicesServiceProvider.php b/docker/statistics/Modules/Invoices/Providers/InvoicesServiceProvider.php deleted file mode 100644 index 2d3662a3..00000000 --- a/docker/statistics/Modules/Invoices/Providers/InvoicesServiceProvider.php +++ /dev/null @@ -1,113 +0,0 @@ -registerTranslations(); - $this->registerConfig(); - $this->registerViews(); - $this->loadMigrationsFrom(module_path($this->moduleName, 'Database/Migrations')); - } - - /** - * Register the service provider. - * - * @return void - */ - public function register() - { - $this->app->register(RouteServiceProvider::class); - } - - /** - * Register config. - * - * @return void - */ - protected function registerConfig() - { - $this->publishes([ - module_path($this->moduleName, 'Config/config.php') => config_path($this->moduleNameLower . '.php'), - ], 'config'); - $this->mergeConfigFrom( - module_path($this->moduleName, 'Config/config.php'), $this->moduleNameLower - ); - } - - /** - * Register views. - * - * @return void - */ - public function registerViews() - { - $viewPath = resource_path('views/modules/' . $this->moduleNameLower); - - $sourcePath = module_path($this->moduleName, 'Resources/views'); - - $this->publishes([ - $sourcePath => $viewPath - ], ['views', $this->moduleNameLower . '-module-views']); - - $this->loadViewsFrom(array_merge($this->getPublishableViewPaths(), [$sourcePath]), $this->moduleNameLower); - } - - /** - * Register translations. - * - * @return void - */ - public function registerTranslations() - { - $langPath = resource_path('lang/modules/' . $this->moduleNameLower); - - if (is_dir($langPath)) { - $this->loadTranslationsFrom($langPath, $this->moduleNameLower); - $this->loadJsonTranslationsFrom($langPath); - } else { - $this->loadTranslationsFrom(module_path($this->moduleName, 'Resources/lang'), $this->moduleNameLower); - $this->loadJsonTranslationsFrom(module_path($this->moduleName, 'Resources/lang')); - } - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides() - { - return []; - } - - private function getPublishableViewPaths(): array - { - $paths = []; - foreach (\Config::get('view.paths') as $path) { - if (is_dir($path . '/modules/' . $this->moduleNameLower)) { - $paths[] = $path . '/modules/' . $this->moduleNameLower; - } - } - return $paths; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/Invoices/Providers/RouteServiceProvider.php b/docker/statistics/Modules/Invoices/Providers/RouteServiceProvider.php deleted file mode 100755 index 6a4aa385..00000000 --- a/docker/statistics/Modules/Invoices/Providers/RouteServiceProvider.php +++ /dev/null @@ -1,68 +0,0 @@ -mapApiRoutes(); - $this->mapWebRoutes(); - } - - /** - * Define the "web" routes for the application. - * - * These routes all receive session state, CSRF protection, etc. - * - * @return void - */ - protected function mapWebRoutes() - { - Route::middleware('web') - ->namespace($this->namespace) - ->group(module_path('Invoices', '/Routes/web.php')); - } - - /** - * Define the "api" routes for the application. - * - * These routes are typically stateless. - * - * @return void - */ - protected function mapApiRoutes() - { - Route::prefix('api') - ->middleware('api') - ->namespace($this->namespace) - ->group(module_path('Invoices', '/Routes/api.php')); - } -} diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/detail/patient_category.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/detail/patient_category.blade.php deleted file mode 100755 index 61dcee0c..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/detail/patient_category.blade.php +++ /dev/null @@ -1,167 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('finance.patient_category_invoices') }} {{ __('invoices.details') }}

    -
    - -
    - -
    - {{ __('invoices.print') }} - -
    -
    -

    - {{ __('invoices.patient_category') }}: {{ get_name(get_name($invoices[0]->patient_id, 'id', 'category_id', 'patients'), 'id', 'name', 'patient_categories') }} -

    -
    -
    -

    - {{ __('invoices.patient_names') }}: {{ get_full_name($invoices[0]->patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ (get_name($invoices[0]->patient_id, 'id', 'gender', 'patients') == 1) ? 'Male' : 'Female'}} - {{ get_patients_age(get_name($invoices[0]->patient_id, 'id', 'date_of_birth', 'patients')) }}) -

    -
    -
    - -
    - -
    - - - - - - - - - - - @php - $sum_total = 0; - @endphp - - - @foreach($invoices as $invoice) - - - - - - - - - @endforeach - - - - - - - - - - - -
    {{ __('finance.date') }}{{ __('finance.invoice_number') }}{{ __('finance.items') }}{{ __('finance.item_amounts') }}{{ __('finance.patient_amount_paid') }}{{ __('finance.reason') }}
    {{ streamline_date($invoice->transaction_date) }} - {{--{{ ($invoice->episode_id != 0) ? ((get_claim_number($invoice->episode_id)) ? get_claim_number($invoice->episode_id) : $invoice->receipt_number) : "" }}--}} - {{ ($invoice->number) ?? $invoice->receipt_number }} - - @if($invoice->tag_id == 11) - N/A - @else - @php - $items = explode(",",$invoice->items_ids); - for($i = 0; $i < count($items); $i++){ - switch ($invoice->tag_id){ - case 1; - case 3; - $name = get_name($items[$i], 'id', 'name', 'drugs'); - break; - case 2; - $name = get_name($items[$i], 'id', 'name', 'investigations'); - break; - case 4; - $name = get_name($items[$i], 'id', 'name', 'procedures'); - break; - case 5; - $name = get_name($items[$i], 'id', 'name', 'sundries'); - break; - case 6: case 7: case 8; - $name = get_name($items[$i], 'id', 'name', 'services'); - break; - case 10; - $name = "Inpatient Deposit"; - break; - case 16; - $name = get_name($items[$i], 'id', 'name', 'eye_glasses'); - break; - default: - $name = ""; - break; - } - echo ($i + 1).". ".$name."
    "; - } - @endphp - @endif -
    - @if($invoice->tag_id == 11) - N/A - @else - @php - $amounts = explode(",",$invoice->items_amounts); - for($i = 0; $i < count($amounts); $i++){ - echo ($i + 1).". ".$amounts[$i]."
    "; - } - - $sum_total += $invoice->patient_amount; - @endphp - @endif -
    {{ ugandan_shillings($invoice->patient_amount) }} - {{ get_name($invoice->tag_id, 'id', "name", 'finance_point_tags') }} -
    {{ __('finance.total') }}{{ ugandan_shillings($sum_total) }}
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/detail/patient_category_print.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/detail/patient_category_print.blade.php deleted file mode 100755 index 2c3625a7..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/detail/patient_category_print.blade.php +++ /dev/null @@ -1,151 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Patient Category Invoice - Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') -

    {{ __('invoices.patient_category_invoices') }}

    - -
    - -
    -
    -
    - {{ __('invoices.patient_category') }}: {{ get_name(get_name($invoices[0]->patient_id, 'id', 'category_id', 'patients'), 'id', 'name', 'patient_categories') }} -
    -
    -
    -
    - {{ __('invoices.patient_names') }}: {{ get_full_name($invoices[0]->patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ (get_name($invoices[0]->patient_id, 'id', 'gender', 'patients') == 1) ? 'Male' : 'Female'}} - {{ get_patients_age(get_name($invoices[0]->patient_id, 'id', 'date_of_birth', 'patients')) }}) -
    -
    -
    - -
    - - - - - - - - - - - - @php $sum_total = 0; @endphp - - - @foreach($invoices as $invoice) - - - - - - - - - @endforeach - - - - - - - - - - - - -
    {{ __('finance.date') }}{{ __('finance.invoice_number') }}{{ __('finance.items') }}{{ __('finance.item_amounts') }}{{ __('invoices.total_amount') }}{{ __('finance.reason') }}
    {{ streamline_date($invoice->transaction_date) }} - {{ ($invoice->number) ?? $invoice->receipt_number }} - - @if($invoice->tag_id == 11) - N/A - @else - @php - $items = explode(",",$invoice->items_ids); - for($i = 0; $i < count($items); $i++){ - switch ($invoice->tag_id){ - case 1; - case 3; - $name = get_name($items[$i], 'id', 'name', 'drugs'); - break; - case 2; - $name = get_name($items[$i], 'id', 'name', 'investigations'); - break; - case 4; - $name = get_name($items[$i], 'id', 'name', 'procedures'); - break; - case 5; - $name = get_name($items[$i], 'id', 'name', 'sundries'); - break; - case 6: case 7: case 8; - $name = get_name($items[$i], 'id', 'name', 'services'); - break; - case 10; - $name = "Inpatient Deposit"; - break; - case 16; - $name = get_name($items[$i], 'id', 'name', 'eye_glasses'); - break; - default: - $name = ""; - break; - } - echo ($i + 1).". ".$name."
    "; - } - @endphp - @endif -
    - @if($invoice->tag_id == 11) - N/A - @else - @php - $amounts = explode(",",$invoice->items_amounts); - for($i = 0; $i < count($amounts); $i++){ - echo ($i + 1).". ". ugandan_shillings($amounts[$i]) ."
    "; - } - - $sum_total += $invoice->patient_amount; - @endphp - @endif -
    {{ ugandan_shillings($invoice->patient_amount) }} - {{ get_name($invoice->tag_id, 'id', "name", 'finance_point_tags') }} -
    {{ __('invoices.total') }}{{ ugandan_shillings($sum_total) }}
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/donor_discounts.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/donor_discounts.blade.php deleted file mode 100755 index 8b642718..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/donor_discounts.blade.php +++ /dev/null @@ -1,210 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -
    -

    {{ __('invoices.donor_discount_invoices') }}

    -
    -
    - -
    -
    - - -
    - -
    -
    - -
    -
    -

    {{ __('invoices.select_the_date_range') }}

    -
    -
    - {{ Form::open(['method'=>'post','route' => 'invoices.donor_discounts']) }} - -
    - -
    - -
    -
    - {{ Form::label('start_date', __('invoices.start_date')) }} -
    - {{ Form::text('start_date', '', ['class'=>'form-control compulsory','readonly', 'id'=>'start_date']) }} - -
    -
    - -
    - {{ Form::label('end_date', __('invoices.end_date')) }} -
    - {{ Form::text('end_date', '', ['class'=>'form-control compulsory', 'readonly', 'id'=>'end_date']) }} - -
    -
    -
    - - -
    - {{ Form::submit(__('invoices.submit'), ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    - - - -
    -
    -
    -
    - - {{ Form::open(['method'=>'post','route' => 'invoices.process_donor_invoice']) }} - {{ csrf_field() }} - - {{ Form::hidden('start_date', $request->start_date) }} - {{ Form::hidden('end_date', $request->end_date) }} - {{ Form::hidden('status', 'new') }} - {{ Form::hidden('donor', $request->donor) }} - {{ Form::hidden('invoice_number', generateReceiptNumberFromDB() ) }} - @php - $dates = $request->start_date.'/'.subtractDates($request->end_date,'1 days'); - @endphp - {{ Form::hidden('invoice_date', $dates ) }} - @if($request != []) - @if($request->donor != null) -

    Donor Name: {{ get_name($request->donor, 'id', 'name', 'donors') }}

    - @if(isset($request->start_date) && isset($request->end_date)) - - @if($total > 0) - {{ Form::button('Generate Invoice',['type' => 'submit', 'class' => 'btn btn-success'])}} - @endif -
    - @if(isset($display)) -
    -

    {!! isset($display) ? $display : '' !!}

    -
    -
    - @endif - -
    - - - - - - - - - - - - - - - @if(count($discounts) > 0) - @foreach($discounts as $item) - - - - - - - - - - - - @endforeach - - @endif - - @if(count($discounts) > 0) - - - - - - @endif -
    {{ __('invoices.date') }}{{ __('invoices.cashier_name') }}{{ __('invoices.memo') }}{{ __('invoices.received_by') }}{{ __('invoices.reason') }}{{ __('invoices.discount_type') }}{{ __('invoices.receipt') }}{{ __('invoices.amount') }}
    {{ streamline_date($item->created_at) }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ get_name($item->patient_category, 'id', 'name', 'patient_categories') }}{{ get_full_name(Auth::id(), 'id', 'first_name', 'last_name', 'users') }}{{ get_name($item->tag_id, 'id', 'name', 'finance_point_tags') }}{{ get_name($item->donor_discount_category_id, 'id', 'name', 'discount_categories') }}{{ $item->receipt_number }}{{ ugandan_shillings($item->donor_to_pay) }}
    {{ __('invoices.total') }}{{ ugandan_shillings($total) }}
    -
    - - @if($total > 0) - {{ Form::button('Generate Invoice',['type' => 'submit', 'class' => 'btn btn-success'])}} - @endif - {{ Form::close() }} - @endif - @else -

    {{ __('invoices.select_patient_category') }}

    - @endif - @else -

    {{ __('invoices.select_valid_date_range') }}

    - @endif -
    -
    -
    -
    - -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/generate_invoice/donor_invoice.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/generate_invoice/donor_invoice.blade.php deleted file mode 100755 index 4894e540..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/generate_invoice/donor_invoice.blade.php +++ /dev/null @@ -1,127 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - - -@section('content') -
    - -
    -
    -
    -
    -

    {{ __('invoices.invoice') }} #{{ $request->invoice_number }}

    -
    -
    -
    -
    -
    -

     {{ $hospital_information->name }}

    -

    {{ $hospital_information->phone_number }}, {{ $hospital_information->email }}, -
    {{ get_name($hospital_information->sub_county,'id', 'name', 'subcounties') }}, {{ get_name($hospital_information->district,'id', 'name', 'districts') }}, -
    {{ $hospital_information->country }}.

    -
    -
    -
    -
    -

    To,

    -

    {{ get_name($request->donor, 'id', 'name', 'donors') }}

    -

    {{ streamline_date($request->start_date) }} to {{ streamline_date($request->end_date) }}, -

    {{ __('invoices.invoice_date') }} : {{ streamline_date_time(\Carbon\Carbon::now()->toDateTimeString()) }}

    -

    {{ __('invoices.due_date') }} : {{ streamline_date_time(\Carbon\Carbon::now()->toDateTimeString()) }}

    -
    -
    -
    -
    -
    - - - - - - - - - - @php - $sum_total = 0; - - @endphp - - - @foreach($invoices as $item) - - - - - - - - - - @endforeach - -
    {{ __('invoices.date') }}{{ __('invoices.invoice_number') }}{{ __('invoices.patient_name') }}{{ __('invoices.amount') }}{{ __('invoices.reason') }}
    {{ streamline_date($item->created_at) }}{{ $item->receipt_number }}{{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }} - @php - $amount = $item->donor_to_pay; - $sum_total += $amount; - echo ugandan_shillings($amount); - @endphp - - {{ get_name($item->tag_id, 'id', "name", 'finance_point_tags') }} -
    -
    -
    -
    -
    -

    {{ __('invoices.sub_total_amount') }}: {{ ugandan_shillings($sum_total) }}

    -

    vat (0%) :

    -
    -

    {{ __('invoices.total') }} :{{ ugandan_shillings($sum_total) }}


    - -

    {{ __('invoices.served_by') }} :

    {{ $users_name }}

    -

    {{ __('invoices.sign') }}..................................................................................................................

    -
    -
    -
    -
    -
    -
    -
    -
    - {{----}} - -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/generate_invoice/patient_invoice.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/generate_invoice/patient_invoice.blade.php deleted file mode 100755 index 10c441a3..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/generate_invoice/patient_invoice.blade.php +++ /dev/null @@ -1,237 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('invoices.patient_category_invoices') }}

    -
    -
    - -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -

    {{ __('invoices.invoice') }} #{{ $request->invoice_number }}

    -
    -
    -
    -
    - - @php $hospital_information = \Streamline\Models\HospitalInformation::first(); @endphp - Home
    -
    -
    -

     {{ $hospital_information->name }}

    -

    {{ $hospital_information->phone_number }}, {{ $hospital_information->email }}, -
    {{ get_name($hospital_information->sub_county,'id', 'name', 'subcounties') }}, {{ get_name($hospital_information->district,'id', 'name', 'districts') }}, -
    {{ $hospital_information->country }}.

    -
    -
    -
    -
    -

    To,

    -

    {{ get_name($request->patient_category, 'id', 'name', 'patient_categories') }}
    {{ individual_of_invoice($request->invoice_number) ?? "" }}

    -

    {{ streamline_date($request->start_date) }} {{ __('invoices.to') }} {{ streamline_date($request->end_date) }}, -

    {{ __('invoices.invoice_date') }} : {{ streamline_date_time(\Carbon\Carbon::now()->toDateTimeString()) }}

    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - @if ((count($invoices)==1) && ($invoices[0]->patient_id==0) && ($invoices[0]->episode_id==0)) - - - - - - @else - - - - - - - - - @endif - @php - $sum_total = 0; - @endphp - - - @if ((count($invoices)==1) && ($invoices[0]->patient_id==0) && ($invoices[0]->episode_id==0)) - {{-- this is more likely a journal so fetch journal details --}} - @php - $journal_number = substr($invoices[0]->items_ids, 10); //now remove the substring "Journal - " - $patient_category_id = $invoices[0]->patient_category; - $journal_details = \Streamline\Models\Journal::where('journal_number', $journal_number)->first(); - @endphp - @if ($journal_details) - @php - $journal_name_ids_array = explode(",",$journal_details->name_ids); - $index_of_patient_category = array_search($patient_category_id, $journal_name_ids_array); - $journal_descriptions_array = explode(",",$journal_details->descriptions); - $sum_total += $invoices[0]->patient_amount; - @endphp - - - - - - @endif - @else - @foreach($invoices as $item) - - - - - - - - - @endforeach - @endif - - - - - - - - - - - - - - - - - - -
    {{ __('invoices.date') }}{{ __('invoices.description') }}{{ __('invoices.amount') }}
    {{ __('invoices.date') }}{{ __('invoices.claim_number') }}{{ __('invoices.patient_number') }}{{ __('invoices.patient_name') }}{{ __('invoices.amount') }}{{ __('invoices.reason') }}
    {{ streamline_date($journal_details->journal_date) }}{{ $journal_descriptions_array[$index_of_patient_category] }}{{ ugandan_shillings($invoices[0]->patient_amount) }}
    {{ streamline_date($item->transaction_date) }}{{ ($item->episode_id != 0) ? ((get_claim_number($item->episode_id)) ? get_claim_number($item->episode_id) : $item->receipt_number) : "" }}{{ ($item->patient_id != 0) ? get_name($item->patient_id, 'id', 'number', 'patients') : "" }}{{ ($item->patient_id != 0) ? get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') : "" }} - @php - $sum_total += intval($item->sum); - echo ugandan_shillings(intval($item->sum)); - @endphp - - {{ get_clinic_name($item->episode_id) }} -
    {{ __('invoices.total') }}{{ ugandan_shillings($sum_total) }}
    -
    -
    - - @if ($invoice_with_payment_amount_paid > 0) -
    - - - - - - - - - - - -
    - Amount paid: - - {{ ugandan_shillings_with_decimals($invoice_with_payment_amount_paid) }} -
    - Balance: - - {{ ugandan_shillings_with_decimals($invoice_with_payment_balance) }} -
    -
    - @endif - -
    -

    {{ __('invoices.served_by') }} :

    {{ $users_name }}

    -

    {{ __('invoices.sign') }}..................................................................................................................

    -
    -
    -
    -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/hospital/complete_hospital_payments.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/hospital/complete_hospital_payments.blade.php deleted file mode 100755 index 54a51ecc..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/hospital/complete_hospital_payments.blade.php +++ /dev/null @@ -1,129 +0,0 @@ -@extends('layouts.main') -@push('styles') - - -@endpush -@section('content') - -
    -
    -

    {{ __('invoices.invoices_payments') }}

    -
    - -
    - -
    - {{ Form::open(['method'=>'post','route'=>'invoices.save_hospital_payments' ]) }} - - {{ Form::hidden('is_update', $is_update) }} - -
    -
    -
    - {{ Form::label('supplier',__('invoices.supplier')) }} - {{ Form::text('supplier',get_name($supplier_id, 'id', 'name', 'suppliers'),['class' => 'form-control compulsory','readonly']) }} -
    - -
    - {{ Form::label('payment_for',__('invoices.payment_for')) }} - {{ Form::text('payment_for',get_name($quotation_type, 'id', 'name', 'quotation_types'),['class' => 'form-control compulsory', 'readonly']) }} -
    - -
    - {{ Form::label('generated_on',__('invoices.invoice_generated_on')) }} - {{ Form::text('generated_on',streamline_date($invoice_date),['class' => 'form-control compulsory', 'readonly']) }} - {{ Form::hidden('invoice_date', $invoice_date) }} -
    - - @if($is_update) - {{ Form::hidden('payment_id', $payment_id) }} -
    - {{ Form::label('amount',__('invoices.previous_balance')) }} - {{ Form::number('amount',$total_amount_to_pay,['class' => 'form-control compulsory','id'=>'amount','readonly']) }} -
    - @else -
    - {{ Form::label('amount',__('invoices.amount')) }} - {{ Form::number('amount',$total_amount_to_pay,['class' => 'form-control compulsory','id'=>'amount','readonly']) }} -
    - @endif -
    - -
    - -
    - {{ Form::label('invoice_number',__('invoices.invoice_number')) }} - {{ Form::text('invoice_number',$invoice_number,['class' => 'form-control compulsory', 'readonly']) }} -
    - -
    - {{ Form::label('amount_paid',__('invoices.amount_to_deposit')) }} - {{ Form::number('amount_paid','' ,['class' => 'form-control compulsory', 'required', 'id'=>'amount_paid']) }} -
    - -
    - {{ Form::label('balance',__('invoices.balance')) }} - {{ Form::number('balance', '',['class' => 'form-control compulsory','readonly', 'id'=>'balance']) }} -
    - -
    - {{ Form::label('bank_id', __('invoices.expense_account_details')) }} - {{ Form::select('bank_id', $banks, null, ['class'=>'form-control compulsory', 'required', 'onchange' => 'check_account_balance(this.value)']) }} -
    -
    -
    - -
    - - @if($is_update) - - @else - - @endif - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/hospital/generate_hospital_invoices.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/hospital/generate_hospital_invoices.blade.php deleted file mode 100755 index d2f70228..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/hospital/generate_hospital_invoices.blade.php +++ /dev/null @@ -1,134 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('invoices.hospital_received_items') }}

    -
    - -
    - - @include('flash::message') - -
    - {{ Form::open(['method' => 'post', 'route'=>'invoices.generate_hospital_invoices'])}} - -
    -
    - {{ Form::label('start_date',__('invoices.start_date')) }} -
    - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'start_date']) }} - -
    -
    - -
    - {{ Form::label('end_date',__('invoices.end_date')) }} -
    - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'end_date']) }} - -
    -
    - -
    -
    - {{ Form::button(__('invoices.search'),['type'=>'submit','class'=>'btn btn-primary btn-rounded waves-effect waves-light m-r-10 pull-right']) }} -
    -
    - - {{ Form::close() }} -
    - -
    -
    {!! isset($display) ? $display : '' !!}

    -
    - - - - - - - - - - - - - - @if(count($quotations) > 0) - @foreach($quotations as $result) - - - - - - - - - - @endforeach - @else - - @endif - -
    {{ __('invoices.item_type') }}{{ __('invoices.quantity') }}{{ __('invoices.cost') }}{{ __('invoices.supplier') }}{{ __('invoices.approved_by') }}{{ __('invoices.received_on') }}
    - {{ $quotation_type_options[$result->quotation_type_id] }} - - @php - $quotation_number = $result->quotation_number; - $results_to_count = DB::select("select drug_id from quotations where quotation_number = {$quotation_number} AND deleted_at IS NULL"); - @endphp - {{ count($results_to_count) }} Items - - @php - $quotation_number = $result->quotation_number; - $total_amount = DB::select("select SUM(total_price) as total from quotations where quotation_number = {$quotation_number} AND deleted_at IS NULL"); - @endphp - {{ ugandan_shillings($total_amount[0]->total) }} - - {{ get_name(get_name($result->quotation_number, "quotation_number", "supplier_id", 'quotations'), "id", "name", "suppliers") }} - - @php - $user_id = get_name($result->quotation_number, "quotation_number", "approval_user", 'quotations'); - @endphp - {{ get_full_name($user_id, "id", "first_name", "last_name", "users") }} - - {{ streamline_date(get_name($result->quotation_number, "quotation_number", "receive_date", 'quotations')) }} - - {{ Form::open(['method'=>'post','route'=>'invoices.generate_hospital_invoices_confirm' ]) }} - {{ Form::hidden('quotation_number', $result->quotation_number) }} - - {{ Form::close() }} -
    {{ __('invoices.no_records_found') }}
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/hospital/generate_hospital_invoices_confirm.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/hospital/generate_hospital_invoices_confirm.blade.php deleted file mode 100755 index defd4659..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/hospital/generate_hospital_invoices_confirm.blade.php +++ /dev/null @@ -1,92 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('invoices.generate_invoice') }}

    -
    - -
    - - @include('flash::message') - -
    -
    - - - - - - - - - - - @php - $total_amount = 0; - @endphp - @foreach($quotations as $result) - - - - - - - @endforeach - - - - - -
    {{ __('invoices.item_name') }}{{ __('invoices.quantity') }}{{ __('invoices.bill_per_item') }}{{ __('invoices.cost') }}
    - @if($result->quotation_type_id == 1) - {{ get_name($result->drug_id, 'id', 'name', 'drugs') }} - @elseif($result->quotation_type_id == 2) - {{ get_name($result->drug_id, 'id', 'name', 'sundries') }} - @elseif($result->quotation_type_id == 3) - {{ get_name($result->drug_id, 'id', 'name', 'dentals') }} - @elseif($result->quotation_type_id == 4) - {{ get_name($result->drug_id, 'id', 'name', 'radiologies') }} - @elseif($result->quotation_type_id == 5) - {{ get_name($result->drug_id, 'id', 'name', 'labs') }} - @endif - - {{ $result->quantity }} - - {{ ugandan_shillings($result->bill) }} - - @php - $total = (int)($result->quantity * $result->bill); - $total_amount += $total; - @endphp - {{ ugandan_shillings($total) }} -
    {{ __('invoices.total') }}{{ ugandan_shillings($total_amount) }}
    -
    - -
    - -

    {{ __('invoices.approved_by') }}: {{ get_full_name($quotations[0]->approval_user, 'id', 'first_name', 'last_name', 'users') }}

    -

    {{ __('invoices.received_by') }}: {{ get_full_name($quotations[0]->receive_user, 'id', 'first_name', 'last_name', 'users') }}

    -

    {{ __('invoices.received_on') }}: {{ streamline_date($quotations[0]->receive_date) }}

    - - {{ __('invoices.generate_invoice') }} -
    -@endsection - -@push('scripts') - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/hospital/hospital_invoices_payment_history.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/hospital/hospital_invoices_payment_history.blade.php deleted file mode 100755 index b37a6bdb..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/hospital/hospital_invoices_payment_history.blade.php +++ /dev/null @@ -1,121 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('invoices.hospital_invoices') }}

    -
    - -
    - -
    - -
    - -
    - -
    - -

    {{ __('invoices.invoice_payments_trail') }}

    - -
    -
    - -
    - - - - - - - - - - @php - $sum_total = 0; - @endphp - - @for($i = 0; $i < count($receipt_number_array); $i++) - - - - - @php - $sum_total += $amount_paid_array[$i]; - @endphp - - - @endfor - - - - - - - - -
    {{ __('invoices.date_paid') }}{{ __('invoices.staff_in_charge') }}{{ __('invoices.receipt_number') }}{{ __('invoices.amount_paid') }}
    {{ streamline_date($date_paid_array[$i]) }}{{ get_full_name($staff_incharge_array[$i], 'id', 'first_name', 'last_name', 'users') }}{{ $receipt_number_array[$i] }}{{ ugandan_shillings($amount_paid_array[$i]) }}
    {{ __('invoices.total') }} - {{ ugandan_shillings($sum_total) }} -
    - -
    - -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/hospital/hospital_payments_receipt.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/hospital/hospital_payments_receipt.blade.php deleted file mode 100755 index 36a0a85e..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/hospital/hospital_payments_receipt.blade.php +++ /dev/null @@ -1,125 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush -@section('content') -
    -
    -

    {{ __('invoices.cashier_receipt') }}

    -
    - -
    - @include('flash::message') -
    -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - {{ __('invoices.email') }}: {{ $hospital_information->email }}
    - {{ __('invoices.cashier') }}: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - {{ __('invoices.receipt_number') }}: {{ $receipt_number }}
    -

    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('invoices.description') }}{{ __('invoices.amount') }}
    {{ __('invoices.total_amount') }}:{{ ugandan_shillings($total_to_pay) }}
    {{ __('invoices.amount_paid') }}:{{ ugandan_shillings($amount_paid) }}
    {{ __('invoices.balance') }}:{{ ugandan_shillings($balance) }}
    {{ __('invoices.reason') }}:{{ $payment_reason }}
    {{ __('invoices.payment_made_by') }}{{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    -
    -
    - © Stre@mline -
    -
    -
    -
    - -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/hospital/make_hospital_payments.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/hospital/make_hospital_payments.blade.php deleted file mode 100755 index 3e953844..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/hospital/make_hospital_payments.blade.php +++ /dev/null @@ -1,150 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('invoices.View_hospital_invoices') }}

    -
    - -
    - - @include('flash::message') - -
    -

    {{ __('invoices.new_invoices') }}

    -
    -
    - - - - - - - - - - - - - - - @if(count($quotations) > 0) - @foreach($quotations as $item) - - - - - - - - - - - @endforeach - @else - - - - @endif - -
    {{ __('invoices.item_type') }}{{ __('invoices.supplier') }}{{ __('invoices.date_generated') }}{{ __('invoices.amount') }}{{ __('invoices.invoice_number') }}
    {{ $quotation_type_options[$item->quotation_type_id] }}{{ get_name($item->supplier_id, 'id', 'name', 'suppliers') }} - {{ streamline_date($item->invoice_date) }} - - @php - $invoice_number = $item->invoice_number; - $total_amount = DB::select("select SUM(total_price) as total from quotations where invoice_number = {$invoice_number} AND deleted_at IS NULL"); - @endphp - {{ ugandan_shillings($total_amount[0]->total) }} - - {{ $item->invoice_number }} - - {{ __('invoices.make_payment') }} - - {{ __('invoices.print_invoice') }} - - {{ __('invoices.delete_invoice') }} -
    {{ __('invoices.no_records_found') }}
    -
    -
    - -
    -

    {{ __('invoices.invoices_with_balance') }}

    -
    -
    - - - - - - - - - - - - - - - @if(count($quotations_with_balance) > 0) - @foreach($quotations_with_balance as $item) - @php - $item_type = get_name(get_name($item->invoice_number, 'invoice_number', 'quotation_type_id', 'quotations'), 'id', 'name', 'quotation_types'); - $supplier = get_name(get_name($item->invoice_number, 'invoice_number', 'supplier_id', 'quotations'), 'id', 'name', 'suppliers'); - @endphp - - - - - - - - - - - @endforeach - @else - - - - @endif - -
    {{ __('invoices.item_type') }}{{ __('invoices.supplier') }}{{ __('invoices.amount_to_pay') }}{{ __('invoices.amount_paid') }}{{ __('invoices.balance') }}
    {{ $item_type }}{{ $supplier }}{{ ugandan_shillings($item->total) }}{{ ugandan_shillings($item->amount_paid) }}{{ ugandan_shillings($item->balance) }} - Make Payment - - Print Invoice - - Payment History -
    {{ __('invoices.no_records_found') }}
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/hospital/print_hospital_invoices.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/hospital/print_hospital_invoices.blade.php deleted file mode 100755 index 201c3fc2..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/hospital/print_hospital_invoices.blade.php +++ /dev/null @@ -1,182 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('invoices.hospital_invoices') }}

    -
    - -
    - -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -

    {{ __('invoices.invoice') }} #{{ $invoice_number }}

    -
    -
    -
    -
    - - @php $hospital_information = \Streamline\Models\HospitalInformation::first(); @endphp - Home
    -
    -
    -

     {{ $hospital_information->name }}

    -

    {{ $hospital_information->phone_number }}, {{ $hospital_information->email }}, -
    {{ get_name($hospital_information->sub_county,'id', 'name', 'subcounties') }}, {{ get_name($hospital_information->district,'id', 'name', 'districts') }}, -
    {{ $hospital_information->country }}.

    -
    -
    -
    -
    -

    {{ __('invoices.from') }},

    - {!! supplier_address($quotations[0]->supplier_id) !!} -

    {{ __('invoices.invoice_date') }} : {{ streamline_date_time(\Carbon\Carbon::now()->toDateTimeString()) }}

    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - - - - @php - $total_amount = 0; - @endphp - @foreach($quotations as $result) - - - - - - - @endforeach - - - - - - - - - - - - - -
    {{ __('invoices.item_name') }}{{ __('invoices.quantity') }}{{ __('invoices.bill_per_item') }}{{ __('invoices.cost') }}
    - @if($result->quotation_type_id == 1) - {{ get_name($result->drug_id, 'id', 'name', 'drugs') }} - @elseif($result->quotation_type_id == 2) - {{ get_name($result->drug_id, 'id', 'name', 'sundries') }} - @elseif($result->quotation_type_id == 3) - {{ get_name($result->drug_id, 'id', 'name', 'dentals') }} - @elseif($result->quotation_type_id == 4) - {{ get_name($result->drug_id, 'id', 'name', 'radiologies') }} - @elseif($result->quotation_type_id == 5) - {{ get_name($result->drug_id, 'id', 'name', 'labs') }} - @endif - - {{ $result->quantity }} - - {{ ugandan_shillings($result->bill) }} - - @php - $total = (int)($result->quantity * $result->bill); - $total_amount += $total; - @endphp - {{ ugandan_shillings($total) }} -
    {{ __('invoices.total') }}{{ ugandan_shillings($total_amount) }}
    -
    -
    -
    -

    {{ __('invoices.received_by') }} :

    {{ $served_by_name }}

    -

    {{ __('invoices.sign') }}..................................................................................................................

    -
    -
    -
    -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/hospital/view_hospital_payments.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/hospital/view_hospital_payments.blade.php deleted file mode 100755 index b86457c9..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/hospital/view_hospital_payments.blade.php +++ /dev/null @@ -1,113 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('invoices.View_hospital_invoices') }}

    -
    - -
    - - @include('flash::message') - -
    -
    - - - - - - - - - - - - - - @if(count($payments) > 0) - @foreach($payments as $item) - @php - $item_type = get_name(get_name($item->invoice_number, 'invoice_number', 'quotation_type_id', 'quotations'), 'id', 'name', 'quotation_types'); - $supplier = get_name(get_name($item->invoice_number, 'invoice_number', 'supplier_id', 'quotations'), 'id', 'name', 'suppliers'); - @endphp - - - - - - - - - - @endforeach - @else - - - - - - - - - @endif - -
    {{ __('invoices.item_type') }}{{ __('invoices.supplier') }}{{ __('invoices.amount_to_pay') }}{{ __('invoices.amount_paid') }}{{ __('invoices.balance') }}
    {{ $item_type }}{{ $supplier }}{{ ugandan_shillings($item->total) }}{{ ugandan_shillings($item->amount_paid) }}{{ ugandan_shillings($item->balance) }} - Print Invoice - - Payment History -
    {{ __('invoices.no_records_found') }}
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/index.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/index.blade.php deleted file mode 100755 index 2a325cce..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/index.blade.php +++ /dev/null @@ -1,82 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('invoices.invoices') }}

    -
    - -
    - -
    -
    - @if(is_donor_feature_enabled()) -
    - @else -
    - @endif -

    {{ __('invoices.patient_category_invoices') }}

    - -
    - - @if(is_donor_feature_enabled()) -
    -

    {{ __('invoices.donor_discount_invoices') }}

    - -
    - @endif -
    - -
    - -@endsection \ No newline at end of file diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/patient_category.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/patient_category.blade.php deleted file mode 100755 index 3d574478..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/patient_category.blade.php +++ /dev/null @@ -1,265 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('finance.patient_category_invoices') }}

    -
    - -
    - -
    - -
    -
    -
    -
    - {{ Form::open(['method'=>'post','route' => 'invoices.patient_category']) }} - -
    -
    - - -
    -
    -
    -
    - {{ Form::label('start_date', __('finance.start_date')) }} -
    - {{ Form::text('start_date', '', ['class'=>'form-control compulsory', 'readonly', 'id'=>'start_date']) }} - -
    -
    -
    -
    -
    - {{ Form::label('end_date', __('finance.end_date')) }} -
    - {{ Form::text('end_date', '', ['class'=>'form-control compulsory', 'readonly', 'id'=>'end_date']) }} - -
    -
    -
    -
    - {{ Form::label('search_patient', 'Search By Patient') }} -
    - -
    -
    -
    -
    - {{ Form::submit(__('finance.submit'), ['class'=>'btn btn-success']) }} -
    -
    - - {{ Form::close() }} -
    -
    -
    -
    - -
    -
    -
    -
    - @php - $patient_category_name = get_name($request->patient_category,'id', 'name', 'patient_categories'); - @endphp - - {{ Form::open(['method'=>'post','route' => 'invoices.process_invoice']) }} - {{ csrf_field() }} - - {{ Form::hidden('start_date', $request->start_date) }} - {{ Form::hidden('end_date', $request->end_date) }} - {{ Form::hidden('patient_category', $request->patient_category) }} - {{ Form::hidden('patient_id', $request->patient_number) }} - {{ Form::hidden('status', 'new') }} - {{ Form::hidden('invoice_number', generateInvoiceNumberFromDB($patient_category_name) ) }} - @php - $dates = $request->start_date.'/'.subtractDates($request->end_date,'1 days'); - @endphp - {{ Form::hidden('invoice_date', $dates ) }} - - @if($request != []) - @if($request->patient_category != null) -

    {{ __('finance.generate_invoice_for') }}: {{ $patient_category_name }}

    - @if(isset($request->start_date) && isset($request->end_date)) - - @if($total > 0) - {{ Form::button(__('finance.generate_invoice'),['type' => 'submit', 'class' => 'btn btn-success'])}} - @endif -
    - @if(isset($display)) -
    -

    {!! isset($display) ? $display : '' !!}

    -
    -
    - @endif -
    - - - - - - - - - - - - - @php - $sum_total = 0; - @endphp - - @if(count($invoices_not_generated) > 0 ) - @foreach($invoices_not_generated as $item) - - - - - - - - - - - - @endforeach - - @endif - - - @if(count($invoices_not_generated) > 0) - - - - - - - - - - @endif - - -
    {{ __('finance.date') }}{{ __('finance.claim_number') }}{{ __('finance.patient_name') }}{{ __('finance.patient_number') }}{{ __('finance.subtotal') }}{{ __('finance.reason') }}{{ __('finance.action') }}
    {{ streamline_date($item->transaction_date) }}{{ ($item->episode_id != 0) ? ((get_claim_number($item->episode_id)) ? get_claim_number($item->episode_id) : $item->receipt_number) : "" }}{{ ($item->patient_id != 0) ? (get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients')) : "" }}{{ ($item->patient_id != 0) ? get_patient_number($item->patient_id) : "" }} - @php - $sum_total += (int)$item->sum; - echo ugandan_shillings((int)$item->sum); - @endphp - - @php $is_inpatient_episode = \Streamline\Models\InpatientInfo::where('episode_id', $item->episode_id)->get()->toArray(); @endphp - {{ (empty($is_inpatient_episode) ? "OPD" : "IPD") }} - - {{ __('finance.details') }} -
    {{ __('finance.total') }} - {{ ugandan_shillings($sum_total) }} -
    -
    - @if($total > 0) - {{ Form::button(__('finance.generate_invoice'),['type' => 'submit', 'class' => 'btn btn-success'])}} - @endif - {{ Form::close() }} - @endif - @else -

    {{ __('finance.select_patient_category') }}

    - @endif - @else -

    {{ __('finance.no_data') }}

    - @endif -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/payment/pay_for_donor_invoice.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/payment/pay_for_donor_invoice.blade.php deleted file mode 100755 index 822a3d6f..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/payment/pay_for_donor_invoice.blade.php +++ /dev/null @@ -1,172 +0,0 @@ -@extends('layouts.main') -@push('styles') - - -@endpush -@section('content') - -
    -
    -

    {{ __('finance.invoice_payments') }}

    -
    -
    - -
    -
    - -
    - {{ Form::open(['method'=>'post','route'=>'invoices.process_donor_payment' ]) }} -
    -
    -
    -
    -

    {{ __('invoices.receive_donor_payment') }}

    -
    -
    -
    -
    -
    -
    - {{ Form::label('donor_label',__('invoices.donor')) }} - {{ Form::text('donor_id',get_name($request->donor_id, 'id', 'name', 'donors'),['class' => 'form-control compulsory required','id'=>'amount_owed', 'readonly']) }} -
    -
    - {{ Form::label('generated_on',__('invoices.invoice_generated_on')) }} -
    - {{ Form::text('invoice_date',streamline_date($request->created_at),['class' => 'form-control compulsory required', 'required','id'=>'date_of_bill', 'readonly']) }} - -
    -
    - - @php - $dates = explode('/', $request->invoice_date); - $start_date = $dates[0]; - $end_date = $dates[1]; - @endphp -
    - {{ Form::label('period',__('invoices.period')) }} - {{ Form::text('period', streamline_date($start_date)." to ".streamline_date($end_date),['class' => 'form-control compulsory required', 'required','id'=>'guarantor_to_pay_modal', 'readonly']) }} -
    - - @if($request->status == "update") -
    - {{ Form::label('amount_label',__('invoices.previous_balance')) }} - {{ Form::number('amount',$request->balance,['class' => 'form-control compulsory required','id'=>'amount','readonly']) }} -
    - @else -
    - {{ Form::label('amount_label',__('invoices.amount')) }} - {{ Form::number('amount',$request->total,['class' => 'form-control compulsory required','id'=>'amount','readonly']) }} -
    - @endif - -
    - {{ Form::label('amount_paid',__('invoices.amount_to_deposited')) }} - {{ Form::number('amount_paid','' ,['class' => 'form-control compulsory required', 'id'=>'amount_paid']) }} -
    - -
    - {{ Form::label('balance_label',__('invoices.balance')) }} - {{ Form::number('balance', '',['class' => 'form-control compulsory required','readonly', 'id'=>'balance']) }} -
    -
    - -
    - -
    - {{ Form::label('invoice_number_label',__('invoices.invoice_number')) }} -
    - {{ Form::text('invoice_number',$request->invoice_number,['class' => 'form-control compulsory required', 'required','readonly','id'=>'completion_date']) }} -
    -
    - -
    - {{ Form::label('authorised_by_label',__('invoices.authorised_by')) }} - {{ Form::text('authorised_by',auth()->user()->username,['class' => 'form-control compulsory required','readonly']) }} -
    - -
    - {{ Form::label('payment_received_on_label', __('invoices.payment_received_on')) }} -
    - {{ Form::text('payment_received_on', \Carbon\Carbon::now()->toDateTimeString(), ['class'=>'form-control compulsory required','readonly', 'id'=>'payment_received_on']) }} - -
    -
    - -
    -
    - -
    -
    - -
    -
    - {{ Form::close() }} - -
    - -@endsection - -@push('scripts') - - - - - - {{----}} - - {{----}} - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/payment/pay_for_invoice.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/payment/pay_for_invoice.blade.php deleted file mode 100755 index 420fa6cc..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/payment/pay_for_invoice.blade.php +++ /dev/null @@ -1,353 +0,0 @@ -@extends('layouts.main') -@push('styles') - - -@endpush -@section('content') - -
    -
    -

    {{ __('finance.invoice_payments') }}

    -
    - -
    - -
    - @include('flash::message') - {{ Form::open(['method'=>'post','route'=>'invoices.process_patient_payment' ]) }} -
    -
    -
    -
    -

    {{ __('finance.receive_invoice_payments') }}

    -
    -
    -
    -
    -
    - {{ Form::label('patient_category_label', __('finance.patient_category')) }} - {{ Form::text('patient_category',get_name($patient_category, 'id', 'name', 'patient_categories'),['class' => 'form-control compulsory required','id'=>'amount_owed', 'readonly']) }} -
    - -
    - {{ Form::label('payment_received_on_label', __('finance.payment_received_on')) }} -
    - {{ Form::text('payment_received_on', \Carbon\Carbon::today()->format('d-m-Y'), ['class'=>'form-control','required','autocomplete'=>'off', 'id'=>'payment_received_on']) }} -
    -
    - - @if($status == "update") -
    - {{ Form::label('amount_label',__('finance.previous_balance')) }} - {{ Form::number('amount',$balance,['class' => 'form-control', 'required','id'=>'amount','readonly']) }} -
    - @else -
    - {{ Form::label('amount_label',__('finance.amount')) }} - {{ Form::number('amount',$total,['class' => 'form-control','required','id'=>'amount','readonly']) }} -
    - @endif - -
    - {{ Form::label('amount_paid',__('finance.amount_paid')) }} - {{ Form::number('amount_paid', 0 ,['class' => 'form-control compulsory', 'required','id'=>'amount_paid']) }} -
    - -
    - {{ Form::label('balance_label',__('finance.balance')) }} - {{ Form::number('balance', $balance,['class' => 'form-control', 'required','readonly', 'id'=>'balance']) }} - {{ Form::hidden('original_balance', $balance, ['id'=>'original_balance']) }} -
    - -
    - {{ Form::label('generated_on', __('finance.generated_on')) }} - {{ Form::text('generated_on',streamline_date($generated_on),['class' => 'form-control', 'required','id'=>'date_of_bill', 'readonly']) }} - {{ Form::hidden('invoice_date',$invoice_date) }} -
    - - @php - $dates = explode('/', $invoice_date); - $start_date = $dates[0] ?? date('Y-m-d'); - $end_date = $dates[1] ?? date('Y-m-d'); - $back_date = \Streamline\Models\HospitalInformation::first()->pluck('back_date'); - @endphp -
    - {{ Form::label('period',__('finance.for_period')) }} - {{ Form::text('period', streamline_date($start_date)." to ".streamline_date($end_date),['class' => 'form-control', 'required','id'=>'guarantor_to_pay_modal', 'readonly']) }} -
    -
    - -
    - -
    - {{ Form::label('invoice_number_label',__('finance.invoice_number')) }} -
    - {{ Form::text('invoice_number',$invoice_number,['class' => 'form-control compulsory required', 'required','readonly','id'=>'completion_date']) }} -
    -
    - -
    - {{ Form::label('authorised_by_label', __('finance.authorised_by')) }} - {{ Form::text('authorised_by',auth()->user()->first_name . ' ' . auth()->user()->last_name,['class' => 'form-control compulsory','required','readonly']) }} -
    - -
    -
    - {{ Form::label('cash_to_pay',__('patient_finance.cash_to_pay')) }} - {{ Form::number('cash_to_pay',0,['class' => 'form-control','id'=>'cash_to_pay','readonly']) }} -
    - - -

    -
    - -
    - -
    - {{ Form::radio('receive_to_bank', 1, false, ['onclick' => 'show_banking_details(1)']) }} Yes    - {{ Form::radio('receive_to_bank', 0, true, ['onclick' => 'show_banking_details(0)']) }} No -
    - - -
    -
    -
    -
    -
    - @if($balance > 0 || is_null($balance)) - - @endif -
    -
    - {{ Form::hidden('total', $total, ['id' => 'total']) }} - {{ Form::hidden('status', $status, ['id' => 'status']) }} - {{ Form::hidden('patient_category', $patient_category, ['id' => 'patient_category']) }} - {{ Form::hidden('invoice_date', $invoice_date, ['id' => 'invoice_date']) }} - {{ Form::hidden('invoice_number', $invoice_number, ['id' => 'invoice_number']) }} - - -
    -
    -
    -
    -
    - {{ Form::close() }} - - - -
    - -@endsection - -@push('scripts') - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/payments_history/donor_index.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/payments_history/donor_index.blade.php deleted file mode 100755 index cee4b025..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/payments_history/donor_index.blade.php +++ /dev/null @@ -1,129 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('invoices.donor_discount_invoices') }}

    -
    -
    - -
    -
    - -
    - -
    - -
    - -

    {{ __('invoices.invoice_payments_trail') }}

    - -
    -
    - -
    - - - - - - - - - - - - - @php - $sum_total = 0; - @endphp - - @foreach($payments as $item) - - - - - - - - - - - @endforeach - - - - - - - - - - - - -
    {{ __('invoices.donor_name') }}{{ __('invoices.payment_date') }}{{ __('invoices.period') }}{{ __('invoices.amount_to_pay') }}{{ __('invoices.balance') }}{{ __('invoices.invoice_number') }}
    {{ get_name($item->donor_id, 'id', 'name', 'donors') }}{{ streamline_date_time($item->created_at) }} - @php - $sum_total += $item->total; - $dates = explode('/', $item->invoice_date); - echo streamline_date($dates[0]). "to" .streamline_date($dates[0]); - @endphp - {{ ugandan_shillings($item->total) }}{{ ugandan_shillings($item->balance) }}{{ $item->invoice_number }} - {{ Form::open(['method'=>'post','route'=>'invoices.generate_donor_invoice' ]) }} - {{ Form::hidden('invoice_number', $item->invoice_number) }} - {{ Form::hidden('invoice_date', $item->invoice_date) }} - {{ Form::hidden('status', 'reprint') }} - - {{ Form::close() }} - - {{ Form::open(['method'=>'post', 'route'=>'invoices.donor_payments_history' ]) }} - {{ Form::hidden('id', $item->id) }} - - {{ Form::close() }} -
    @php echo "Total"; @endphp - {{ ugandan_shillings($sum_total) }} -
    - -
    - -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/payments_history/donor_payments_history.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/payments_history/donor_payments_history.blade.php deleted file mode 100755 index 8c76ec02..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/payments_history/donor_payments_history.blade.php +++ /dev/null @@ -1,129 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('invoices.donor_discount_invoices') }}

    -
    -
    - -
    -
    - -
    - -
    -
    - -

    {{ __('invoices.invoice_payments_trail') }}

    - -
    -
    - -
    - - - - - - - - - - - @php - $sum_total = 0; - @endphp - - @foreach($payments as $item) - @php - $dates = unserialize($item->date_paid_history); - $staff = unserialize($item->staff_incharge_history); - $receipts = unserialize($item->receipt_number); - $amounts = unserialize($item->amount_paid_history); - - for($i = 0; $i< count($dates); $i++){ - - $sum_total += $amounts[$i]; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - } - @endphp - - @endforeach - - - - - - - - - - -
    {{ __('invoices.date') }}{{ __('invoices.paid_by') }}{{ __('invoices.staff_in_charge') }}{{ __('invoices.receipts') }}{{ __('invoices.amount') }}
    ".streamline_date_time($dates[$i])."".get_name($item->donor_id, 'id', 'name', 'donors')."".get_full_name($staff[$i], 'id', 'first_name', 'last_name', 'users')."".$receipts[$i]."".ugandan_shillings($amounts[$i])."
    @php echo "Total"; @endphp - {{ ugandan_shillings($sum_total) }} -
    - -
    - -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/payments_history/patient_index.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/payments_history/patient_index.blade.php deleted file mode 100755 index c5386c30..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/payments_history/patient_index.blade.php +++ /dev/null @@ -1,132 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('invoices.patient_category_invoices') }}

    -
    - -
    - -
    - -
    - -
    - -

    {{ __('invoices.invoice_payments_trail') }}

    - -
    -
    - -
    - - - - - - - - - - - - - @php - $sum_total = 0; - @endphp - - @foreach($payments as $item) - - - - - - - - - - - @endforeach - - - - - - - - - - - - -
    {{ __('invoices.patient_category') }}{{ __('invoices.payment_date') }}{{ __('invoices.period') }}{{ __('invoices.amount_to_pay') }}{{ __('invoices.balance') }}{{ __('invoices.invoice_number') }}
    {{ get_name($item->patient_category, 'id', 'name', 'patient_categories') }}{{ streamline_date_time($item->created_at) }} - @php - $sum_total += $item->total; - $dates = explode('/', $item->invoice_date); - echo streamline_date($dates[0]). "to" .streamline_date($dates[0]); - @endphp - {{ ugandan_shillings($item->total) }}{{ ugandan_shillings($item->balance) }}{{ $item->invoice_number }} - {{ Form::open(['method'=>'post','route'=>'invoices.generate_invoice' ]) }} - {{ Form::hidden('invoice_number', $item->invoice_number) }} - {{ Form::hidden('invoice_date', $item->invoice_date) }} - {{ Form::hidden('patient_category', $item->patient_category) }} - {{ Form::hidden('status', 'reprint') }} - - {{ Form::close() }} - - {{ Form::open(['method'=>'post', 'route'=>'invoices.patient_payments_history' ]) }} - {{ Form::hidden('invoice_number', $item->invoice_number) }} - - {{ Form::close() }} -
    @php echo "Total"; @endphp - {{ ugandan_shillings($sum_total) }} -
    - -
    - -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/payments_history/patient_payments_history.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/payments_history/patient_payments_history.blade.php deleted file mode 100755 index e3b86769..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/payments_history/patient_payments_history.blade.php +++ /dev/null @@ -1,124 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('invoices.patient_category_invoices') }}

    -
    - -
    - -
    - -
    - -
    - -
    - -

    {{ __('invoices.invoice_payments_trail') }}

    - -
    -
    - -
    - - - - - - - - - - - @php - $sum_total = 0; - @endphp - - @foreach($payments as $item) - - - - - - - - @php - $sum_total += $item->amount_paid; - @endphp - @endforeach - - - - - - - - - -
    {{ __('invoices.date') }}{{ __('invoices.paid_by') }}{{ __('invoices.staff_in_charge') }}{{ __('invoices.receipts') }}{{ __('invoices.amount') }}
    {{ streamline_date($item->date_paid) }}{{ $patient_category }}{{ get_full_name($item->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ $item->receipt_number }}{{ ugandan_shillings($item->amount_paid) }}
    @php echo "Total"; @endphp - {{ ugandan_shillings($sum_total) }} -
    - -
    - -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/print/patient_category_invoice.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/print/patient_category_invoice.blade.php deleted file mode 100755 index 9b9b2fc1..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/print/patient_category_invoice.blade.php +++ /dev/null @@ -1,153 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Patient Category Invoices - Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') -
    - Invoice Number: #{{ $invoice_number }}

    - {{ __('finance.invoice_for') }} {{ get_name($patient_category, 'id', 'name', 'patient_categories') }} {{ individual_of_invoice($invoice_number) ?? "" }} -
    - - - - @if ((count($invoices)==1) && ($invoices[0]->patient_id==0) && ($invoices[0]->episode_id==0)) - - - - - - @else - - - - - - - - - @endif - @php - $sum_total = 0; - @endphp - - - - - - @if ((count($invoices)==1) && ($invoices[0]->patient_id==0) && ($invoices[0]->episode_id==0)) - {{-- this is more likely a journal so fetch journal details --}} - @php - $journal_number = substr($invoices[0]->items_ids, 10); //now remove the substring "Journal - " - $patient_category_id = $invoices[0]->patient_category; - $journal_details = \Streamline\Models\Journal::where('journal_number', $journal_number)->first(); - @endphp - @if ($journal_details) - @php - $journal_name_ids_array = explode(",",$journal_details->name_ids); - $index_of_patient_category = array_search($patient_category_id, $journal_name_ids_array); - $journal_descriptions_array = explode(",",$journal_details->descriptions); - $sum_total += $invoices[0]->patient_amount; - @endphp - - - - - - @endif - @else - @foreach($invoices as $item) - - - - - - - - - @endforeach - @endif - - - - - - - - - - -
    {{ __('invoices.date') }}{{ __('invoices.description') }}{{ __('invoices.amount') }}
    {{ __('invoices.date') }}{{ __('invoices.patient_number') }}{{ __('invoices.claim_number') }}{{ __('invoices.patient_name') }}{{ __('invoices.amount') }}{{ __('invoices.reason') }}
    {{ streamline_date($journal_details->journal_date) }}{{ $journal_descriptions_array[$index_of_patient_category] }}{{ ugandan_shillings($invoices[0]->patient_amount) }}
    {{ streamline_date($item->transaction_date) }}{{ get_name($item->patient_id, 'id', 'number', 'patients') }}{{ ($item->episode_id != 0) ? ((get_claim_number($item->episode_id)) ? get_claim_number($item->episode_id) : $item->receipt_number) : "" }}{{ get_full_name($item->patient_id, 'id', 'first_name', 'last_name', 'patients') }} - @php - $sum_total += intval($item->sum); - echo ugandan_shillings(intval($item->sum)); - @endphp - - {{ get_clinic_name($item->episode_id) }} -
    {{ __('invoices.total') }}{{ ugandan_shillings($sum_total) }}
    - - @if ($invoice_with_payment_amount_paid > 0) -
    -
    - - - - - - - - - - - -
    - Amount paid: - - {{ ugandan_shillings_with_decimals($invoice_with_payment_amount_paid) }} -
    - Balance: - - {{ ugandan_shillings_with_decimals($invoice_with_payment_balance) }} -
    -
    - @endif - -
    - -

    {{ __('invoices.served_by') }} : {{ $served_by }}

    -

    {{ __('invoices.sign') }}..................................................................................................................

    -
    -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/receipts/donor_payment_receipt.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/receipts/donor_payment_receipt.blade.php deleted file mode 100755 index e6f4c0e2..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/receipts/donor_payment_receipt.blade.php +++ /dev/null @@ -1,125 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush -@section('content') -
    -
    -

    {{ __('invoices.cashier_receipt') }}

    -
    - -
    - @include('flash::message') -
    -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - {{ __('invoices.email') }}: {{ $hospital_information->email }}
    - {{ __('invoices.cashier') }}: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - {{ __('invoices.receipt_number') }}: {{ $request->receipt_number }}
    -

    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('invoices.description') }}{{ __('invoices.amount') }}
    {{ __('invoices.total_amount') }}:{{ ugandan_shillings($request->total) }}
    {{ __('invoices.amount_paid') }}:{{ ugandan_shillings($request->amount_paid) }}
    {{ __('invoices.balance') }}:{{ ugandan_shillings($request->balance) }}
    {{ __('invoices.reason') }}:{{ __('invoices.payment_by') }} {{ get_name($request->donor_id, 'id', 'name', 'donors') }}
    {{ __('invoices.received_by') }}{{ get_full_name($request->created_by, 'id', 'first_name', 'last_name', 'users') }}
    -
    -
    - © Stre@mline -
    -
    -
    -
    - -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/receipts/patient_payment_receipt.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/receipts/patient_payment_receipt.blade.php deleted file mode 100755 index f1db9e09..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/receipts/patient_payment_receipt.blade.php +++ /dev/null @@ -1,126 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush -@section('content') - - @include('flash::message') -
    -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - {{ __('invoices.email') }}: {{ $hospital_information->email }}
    - {{ __('invoices.cashier') }}: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - {{ __('invoices.receipt_number') }}: {{ $request->receipt_number }}
    -

    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('invoices.description') }}{{ __('invoices.amount') }}
    {{ __('invoices.total_amount') }}:{{ ugandan_shillings($request->total) }}
    {{ __('invoices.amount_paid') }}:{{ ugandan_shillings($request->amount_paid) }}
    {{ __('invoices.balance') }}:{{ ugandan_shillings($request->balance) }}
    {{ __('invoices.reason') }}:{{ __('invoices.payment_for') }} {{ get_name($request->patient_category, 'id', 'name', 'patient_categories') }} {{ __('invoices.bills') }}
    {{ __('invoices.received_by') }}{{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    -
    -
    - © Stre@mline -
    -
    -
    -
    - -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/receive_payments/receive_donor_payments.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/receive_payments/receive_donor_payments.blade.php deleted file mode 100755 index c02a9038..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/receive_payments/receive_donor_payments.blade.php +++ /dev/null @@ -1,309 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - @php - $patient_id = ""; - $episode_id = ""; - $patient_category = ""; - $items_amounts = ""; - $items_ids = ""; - $patient_amount = ""; - $receipt_number = ""; - $tag_id = ""; - $invoice_generated =""; - $start_date = ""; - $total = 0; - $end_date = ""; - $invoice_date = ""; - $invoice_number = ""; - $created_by = ""; - $created_at = ""; - $reason =""; - $donor_id = ""; - @endphp - -
    -
    -

    {{ __('invoices.view_donor_invoices') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -

    {{ __('invoices.donor_invoices') }}

    -
    -
    -
    - -
    - - - - - - - - - - - - - @if(count($uncleared_invoices) > 0) - @foreach($uncleared_invoices as $item) - @php - $sum_total = 0; - $total = 0; - @endphp - - - - - - - - - - - - - @php - $donor_id = $item->donor_id; - $patient_id = $item->patient_id; - $episode_id = $item->episode_id; - $patient_category = $item->patient_category; - $items_amounts = $sum_total; - $receipt_number = $item->receipt_number; - $invoice_generated = $item->invoice_generated; - $total = $item->sum; - $start_date = $dates[0]; - $end_date = $dates[1]; - $invoice_date = $item->invoice_date; - $invoice_number = (string)$item->invoice_number; - $created_by = $item->created_by; - $created_at = $item->updated_at; - @endphp - - @endforeach - @else - - - - @endif - -
    {{ __('invoices.donor') }}{{ __('invoices.date_generated') }}{{ __('invoices.for_period') }}{{ __('invoices.amount') }}{{ __('invoices.invoice_number') }}
    {{ get_name($item->donor_id, 'id', 'name', 'donors') }}{{ streamline_date($item->created_at) }} - @php - $dates = explode('/',$item->invoice_date); - @endphp - {{ streamline_date($dates[0])." to ".streamline_date($dates[1]) }} - - {{ ugandan_shillings($item->sum) }} - - {{ $item->invoice_number }} - - {{ Form::open(['method'=>'post','route'=>'invoices.donor_invoice_payment' ]) }} - {{ Form::hidden('id', $item->id) }} - {{ Form::hidden('donor_id', $item->donor_id) }} - {{ Form::hidden('created_by', $item->created_by) }} - {{ Form::hidden('created_at', $item->created_at) }} - {{ Form::hidden('status', 'new') }} - {{ Form::hidden('total', $item->sum) }} - {{ Form::hidden('invoice_date', $item->invoice_date) }} - {{ Form::hidden('invoice_number', $item->invoice_number) }} - {{ Form::hidden('receipt_number',$item->receipt_number ) }} - - {{ Form::close() }} - - -
    {{ __('invoices.no_records_found') }}
    -
    - -
    -
    -
    - -
    -
    -
    -
    -

    {{ __('invoices.donor_invoices_with_balance') }}

    -
    -
    -
    - -
    - - - - - - - - - - - - - @foreach($invoices_with_balance as $item) - @php - $sum_total = 0; - $total = 0; - @endphp - - - - - - - - - - - - - - @endforeach - -
    {{ __('invoices.patient_category') }}{{ __('invoices.last_payment_date') }}{{ __('invoices.total') }}{{ __('invoices.amount') }}{{ __('invoices.balance') }}{{ __('invoices.invoice_number') }}
    {{ get_name($item->donor_id, 'id', 'name', 'donors') }}{{ streamline_date($item->created_at) }}{{ ugandan_shillings($item->total) }}{{ ugandan_shillings($item->amount_paid) }}{{ ugandan_shillings($item->balance) }}{{ $item->invoice_number }} - {{ Form::open(['method'=>'post','route'=>'invoices.donor_invoice_payment' ]) }} - {{ Form::hidden('id', $item->id) }} - {{ Form::hidden('total', $item->total) }} - {{ Form::hidden('amount_paid', $item->amount_paid) }} - {{ Form::hidden('donor_id', $item->donor_id) }} - {{ Form::hidden('balance', $item->balance) }} - {{ Form::hidden('created_by', $item->created_by) }} - {{ Form::hidden('created_at', $item->created_at) }} - {{ Form::hidden('status', 'update') }} - {{ Form::hidden('invoice_date', $item->invoice_date) }} - {{ Form::hidden('invoice_number', $item->invoice_number) }} - {{ Form::hidden('receipt_number',$item->receipt_number ) }} - {{ Form::hidden('amount_paid_history', $item->amount_paid_history) }} - {{ Form::hidden('date_paid_history', $item->date_paid_history) }} - {{ Form::hidden('staff_incharge_history', $item->staff_incharge_history) }} - - {{ Form::close() }} - - {{ Form::open(['method'=>'post','route'=>'invoices.generate_donor_invoice' ]) }} - {{ Form::hidden('invoice_number', $item->invoice_number) }} - {{ Form::hidden('invoice_date', $item->invoice_date) }} - {{ Form::hidden('status', 'reprint') }} - - {{ Form::close() }} - - {{ Form::open(['method'=>'post', 'route'=>'invoices.donor_payments_history' ]) }} - {{ Form::hidden('id', $item->id) }} - - {{ Form::close() }} -
    -
    - -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Invoices/Resources/views/invoices/receive_payments/receive_patient_payments.blade.php b/docker/statistics/Modules/Invoices/Resources/views/invoices/receive_payments/receive_patient_payments.blade.php deleted file mode 100755 index 76926f1d..00000000 --- a/docker/statistics/Modules/Invoices/Resources/views/invoices/receive_payments/receive_patient_payments.blade.php +++ /dev/null @@ -1,635 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('finance.patient_category_invoices') }}

    -
    - -
    - - {{ Form::open(['route' => 'invoices.receive_patient_invoices' , 'data-toggle' => 'validator']) }} -
    -
    -
    -
    - {{ Form::label('patient_category',__('finance.patient_category')) }} - -
    -
    -
    -
    - {{ Form::label('start_date', __('invoices.from')) }} - {{ Form::text('start_date','',['class' => 'form-control', 'readonly','id'=>'start_date']) }} -
    -
    -
    -
    - {{ Form::label('end_date', __('invoices.to')) }} - {{ Form::text('end_date','',['class' => 'form-control', 'readonly','id'=>'end_date']) }} -
    -
    -
    -
    - {{ Form::button(__('invoices.search'),['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10 btn-block', 'style'=>'margin-top: 5px;']) }} -
    -
    -
    - {{ Form::close() }} - -
    - @include('flash::message') - - @php - $total_amount_to_pay = 0; - $balance_to_pay = 0; - $total_amount_paid = 0; - $payments_sum_total = 0; - $payments_balances = 0; - $payments_amount_paid = 0; - $back_date = \Streamline\Models\HospitalInformation::first()->pluck('back_date'); - @endphp - -

    {{ __('invoices.patient_category') }}: {{ $searched_patient_category }} Date: {{ __('invoices.from') }} {{ streamline_date($start_date) }} {{ __('invoices.to') }} {{ streamline_date($end_date) }}

    - -
    - - - - - - - - - - - - - - - - - - - @if(count($invoices) > 0) - @foreach($invoices as $item) - - - - - - - - - - - - - - - - @endforeach - - @if(count($payments) > 0) - @foreach($payments as $item) - - - - - - - - - - @php $payments_balances += $item->balance; @endphp - - - - - - - @endforeach - @endif - @else - - - - @endif - -
    {{ __('finance.patient_category') }}{{ __('finance.date_generated') }}{{ __('finance.for_period') }}{{ __('invoices.amount_to_pay') }}{{ __('invoices.amount_paid') }}{{ __('invoices.balance') }}{{ __('finance.invoice_number') }}{{ __('finance.action') }}
    {{ get_name($item['patient_category'], 'id', 'name', 'patient_categories') }} - @if(!is_null($item['updated_at'])) - {{ streamline_date($item['updated_at']) }} - @else - {{ streamline_date($item['created_at']) }} - @endif - - @php - $dates = explode('/',$item['invoice_date']); - @endphp - {{ ($dates[0] ?? "")." to ".($dates[1] ?? "") }} - - @php $total_amount_to_pay += $item['patient_amount']; @endphp - {{ ugandan_shillings($item['patient_amount']) }} - - @php $total_amount_paid += $item['amount_paid']; @endphp - {{ ugandan_shillings($item['amount_paid']) }} - - @if($item['has_payment'] == 1) - @php - $balance_to_pay += $item['patient_amount'] - $item['amount_paid']; - @endphp - {{ ugandan_shillings($item['patient_amount'] - $item['amount_paid']) }} - - @else - @php $balance_to_pay += $item['patient_amount']; @endphp - {{--N/A--}} - {{ ugandan_shillings($item['patient_amount']) }} - - @endif - - {{ $item['invoice_number'] }} - - @if($item['has_payment'] == 1) - {{ Form::open(['method'=>'post','route'=>'invoices.patient_invoice_payment' ]) }} - {{ Form::hidden('total', $item['patient_amount']) }} - {{ Form::hidden('amount_paid', $item['amount_paid']) }} - {{ Form::hidden('patient_category', $item['patient_category']) }} - {{ Form::hidden('balance', $item['balance']) }} - {{ Form::hidden('status', 'update') }} - {{ Form::hidden('invoice_date', $item['invoice_date']) }} - {{ Form::hidden('invoice_number', $item['invoice_number']) }} - {{ Form::hidden('generated_on', $item['updated_at']) }} - - {{ Form::close() }} - @else - {{ Form::open(['method'=>'post','route'=>'invoices.patient_invoice_payment' ]) }} - {{ Form::hidden('patient_category', $item['patient_category']) }} - {{ Form::hidden('status', 'new') }} - {{ Form::hidden('total', $item['patient_amount']) }} - {{ Form::hidden('amount_paid', 0) }} - {{ Form::hidden('balance', $item['patient_amount']) }} - {{ Form::hidden('invoice_date', $item['invoice_date']) }} - {{ Form::hidden('invoice_number', $item['invoice_number']) }} - {{ Form::hidden('generated_on', $item['updated_at']) }} - - {{ Form::close() }} - @endif - - {{ Form::open(['method'=>'post','route'=>'invoices.generate_invoice' ]) }} - {{ Form::hidden('invoice_number', $item['invoice_number']) }} - {{ Form::hidden('invoice_date', $item['invoice_date']) }} - {{ Form::hidden('patient_category', $item['patient_category']) }} - {{ Form::hidden('status', 'reprint') }} - - {{ Form::close() }} - - @if($item['has_payment'] == 1) - {{ Form::open(['method'=>'post', 'route'=>'invoices.patient_payments_history' ]) }} - {{ Form::hidden('invoice_number', $item['invoice_number']) }} - - {{ Form::close() }} - @endif - - @if($item['has_payment'] != 1) - - @endif -
    {{ get_name($item->patient_category, 'id', 'name', 'patient_categories') }}{{ streamline_date(get_name($item->invoice_number, 'invoice_number', 'updated_at', 'patient_category_invoices')) }} - @php - $payments_sum_total += $item->total; - $dates = explode('/', $item->invoice_date); - echo streamline_date($dates[0]). " to " .streamline_date($dates[0]); - $amount_paid = $item->amount_paid; - $payments_amount_paid += $amount_paid; - @endphp - {{ ugandan_shillings($item->total) }}{{ ugandan_shillings($amount_paid) }} - {{ ugandan_shillings($item->balance) }} - - {{ $item->invoice_number }} - - {{ Form::open(['method'=>'post','route'=>'invoices.generate_invoice' ]) }} - {{ Form::hidden('invoice_number', $item->invoice_number) }} - {{ Form::hidden('invoice_date', $item->invoice_date) }} - {{ Form::hidden('patient_category', $item->patient_category) }} - {{ Form::hidden('status', 'reprint') }} - - {{ Form::close() }} - - {{ Form::open(['method'=>'post', 'route'=>'invoices.patient_payments_history' ]) }} - {{ Form::hidden('invoice_number', $item->invoice_number) }} - - {{ Form::close() }} -
    {{ __('finance.no_records_available') }}
    -
    - -

    - -
    - - - - - - - - - - - - - - - -
    {{ __('invoices.total_amount_to_pay') }}{{ ugandan_shillings($total_amount_to_pay + $payments_sum_total) }}
    {{ __('invoices.total_amount_paid') }}{{ ugandan_shillings($total_amount_paid + $payments_amount_paid) }}
    {{ __('invoices.balance_left_to_pay') }}{{ ugandan_shillings($balance_to_pay + $payments_balances) }}
    -
    - - @if(Auth::user()->can('make-bulk-invoice-payments')) -
    - -
    - @endif - - -
    - - {{-- bulk payment message modal --}} - -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Invoices/Routes/api.php b/docker/statistics/Modules/Invoices/Routes/api.php deleted file mode 100644 index ed0b3abf..00000000 --- a/docker/statistics/Modules/Invoices/Routes/api.php +++ /dev/null @@ -1,18 +0,0 @@ -get('/invoices', function () { - return "Invoices"; -}); diff --git a/docker/statistics/Modules/Invoices/Routes/web.php b/docker/statistics/Modules/Invoices/Routes/web.php deleted file mode 100644 index 657da6d4..00000000 --- a/docker/statistics/Modules/Invoices/Routes/web.php +++ /dev/null @@ -1,57 +0,0 @@ - ['auth', 'disablebackbutton', 'user-locale','subscription-tracking', 'password-expiry']], function () { - /* Invoices */ - Route::get('/invoices', 'InvoicesController@index')->name('invoices'); - Route::any('/invoices/custom_invoices/{patient_category}/{category}/{is_generated}', 'InvoicesController@custom_invoices')->name('invoices.custom_invoices'); - Route::any('/invoices/custom_invoice/{patient_category}/{category}/{id}/{is_generated}', 'InvoicesController@custom_invoice')->name('invoices.custom_invoice'); - Route::any('invoices/patient_category', 'InvoicesController@viewPatientCategory')->name('invoices.patient_category'); - Route::any('invoices/donor_discounts', 'InvoicesController@viewDonorDiscounts')->name('invoices.donor_discounts'); - Route::any('generate_invoice', 'InvoicesController@generate_invoice')->name('invoices.generate_invoice'); - Route::any('print_invoice/{invoice_number}', 'InvoicesController@print_invoice')->name('invoices.print_invoice'); - Route::any('generate_donor_invoice', 'InvoicesController@generate_donor_invoice')->name('invoices.generate_donor_invoice'); - Route::any('process_invoice', 'InvoicesController@process_invoice')->name('invoices.process_invoice'); - Route::any('process_donor_invoice', 'InvoicesController@process_donor_invoice')->name('invoices.process_donor_invoice'); - Route::any('invoices/receive_patient_invoices', 'InvoicesController@receive_patient_invoices')->name('invoices.receive_patient_invoices'); - Route::any('invoices/receive_donor_invoices', 'InvoicesController@receive_donor_invoices')->name('invoices.receive_donor_invoices'); - Route::any('invoices/patient_invoice_payment', 'InvoicesController@patient_invoice_payment')->name('invoices.patient_invoice_payment'); - Route::any('invoices/donor_invoice_payment', 'InvoicesController@donor_invoice_payment')->name('invoices.donor_invoice_payment'); - - Route::any('invoices/process_patient_payment', 'InvoicesController@process_patient_payment')->name('invoices.process_patient_payment'); - Route::any('invoices/process_donor_payment', 'InvoicesController@process_donor_payment')->name('invoices.process_donor_payment'); - - Route::any('invoices/patient_payments_history', 'InvoicesController@patient_payments_history')->name('invoices.patient_payments_history'); - Route::any('invoices/donor_payments_history/', 'InvoicesController@donor_payments_history')->name('invoices.donor_payments_history'); - - Route::any('/invoices/update_donor_payment', 'InvoicesController@update_donor_payment')->name('invoices.update_donor_payment'); - Route::any('/invoices/update_patient_payment', 'InvoicesController@update_patient_payment')->name('invoices.update_patient_payment'); - - Route::any('/invoices/donor_history', 'InvoicesController@donor_history')->name('invoices.donor_history'); - Route::any('/invoices/patient_history', 'InvoicesController@patient_history')->name('invoices.patient_history'); - - Route::any('/invoices/donor_payment_receipt', 'InvoicesController@donor_payment_receipt')->name('invoices.donor_payment_receipt'); - Route::any('/invoices/patient_payment_receipt', 'InvoicesController@patient_payment_receipt')->name('invoices.patient_payment_receipt'); - - Route::any('/invoices/patient_category_invoice/detail/{id}/{start_date}/{end_date}', 'InvoicesController@patient_category_detail'); - Route::any('/invoices/patient_category_detail_print/{id}/{start_date}/{end_date}', 'InvoicesController@patient_category_detail_print'); - Route::any('/invoices/donor_invoice/detail/{id}', 'InvoicesController@patient_payment_receipt')->name('invoices.donor_invoice.detail'); - - Route::any('/invoices/delete/{id}', 'InvoicesController@delete_patient_category_invoice')->name('invoices.delete'); - - Route::any('/invoices/write_off_invoice_balance', 'InvoicesController@write_off_invoice_balance')->name('invoices.write_off_invoice_balance'); - Route::any('/invoices/generate_hospital_invoices', 'InvoicesController@generate_hospital_invoices')->name('invoices.generate_hospital_invoices'); - Route::any('/invoices/generate_hospital_invoices_confirm', 'InvoicesController@generate_hospital_invoices_confirm')->name('invoices.generate_hospital_invoices_confirm'); - Route::any('/invoices/save_hospital_invoices/{quotation_number}', 'InvoicesController@save_hospital_invoices'); - Route::any('/invoices/print_hospital_invoices/{invoice_number}', 'InvoicesController@print_hospital_invoices'); - Route::any('/invoices/make_hospital_payments', 'InvoicesController@make_hospital_payments')->name('invoices.make_hospital_payments'); - Route::any('/invoices/delete_hospital_invoices/{invoice_number}', 'InvoicesController@delete_hospital_invoices'); - Route::any('/invoices/complete_hospital_payments/{invoice_number}', 'InvoicesController@complete_hospital_payments'); - Route::any('/invoices/save_hospital_payments/', 'InvoicesController@save_hospital_payments')->name('invoices.save_hospital_payments'); - Route::any('/invoices/hospital_invoices_payment_history/{id}', 'InvoicesController@hospital_invoices_payment_history'); - Route::any('/invoices/update_hospital_invoice_payment/{id}', 'InvoicesController@update_hospital_invoice_payment'); - Route::any('/invoices/view_hospital_payments', 'InvoicesController@view_hospital_payments')->name('invoices.view_hospital_payments'); - - Route::any('invoices_bulk_payment', 'InvoicesController@process_invoices_bulk_payment')->name('payments.invoices_bulk_pay'); -}); diff --git a/docker/statistics/Modules/Invoices/Services/InvoicesService.php b/docker/statistics/Modules/Invoices/Services/InvoicesService.php deleted file mode 100644 index 7da87655..00000000 --- a/docker/statistics/Modules/Invoices/Services/InvoicesService.php +++ /dev/null @@ -1,316 +0,0 @@ - $other_parameters - * @return InvoicePaymentRecord|null - */ - public function saveInvoicePaymentRecord( - string $invoice_number, string $receipt_number, int $amount_paid, string $date_paid, - int $amount_written_off = 0, string $amount_written_off_at = null, array $other_parameters = [] - ): InvoicePaymentRecord | null { - $record = new InvoicePaymentRecord(); - $record->invoice_number = $invoice_number; - $record->receipt_number = $receipt_number; - $record->amount_paid = $amount_paid; - $record->date_paid = Carbon::parse($date_paid)->toDateString(); - $record->amount_written_off = $amount_written_off; - $record->amount_written_off_at = $amount_written_off_at; - $record->created_by = Auth::id(); - - foreach ($other_parameters as $key => $value) { - $record->$key = $value; - } - - try { - $record->save(); - return $record; - } catch (QueryException $e) { - return null; - } - } - - public function updateInvoicePayment( - string $invoice_number, int $amount_paid, int $balance - ): InvoicePayment | null { - $record = InvoicePayment::where('invoice_number', $invoice_number)->first(); - - if (!$record) { - return null; - } - - $record->amount_paid = $record->amount_paid + $amount_paid; - $record->balance = $balance; - - try { - $record->save(); - return $record; - } catch (QueryException $e) { - return null; - } - } - - public function updateInvoicePaymentRecord( - string $invoice_number, string $receipt_number, int $amount_paid, string $date_paid, - int $amount_written_off = 0, string $amount_written_off_at = null - ): InvoicePaymentRecord | null { - $record = new InvoicePaymentRecord(); - $record->invoice_number = $invoice_number; - $record->receipt_number = $receipt_number; - $record->amount_paid = $amount_paid; - $record->date_paid = Carbon::parse($date_paid)->toDateString(); - $record->amount_written_off = $amount_written_off; - $record->amount_written_off_at = $amount_written_off_at; - $record->created_by = Auth::id(); - - try { - $record->save(); - return $record; - } catch (QueryException $e) { - return null; - } - } - - public function saveInvoicePayment( - string $invoice_number, int $total, int $amount_paid, int $balance, - string $invoice_date, string $patient_category - ): InvoicePayment | null { - $record = new InvoicePayment(); - $record->invoice_number = $invoice_number; - $record->total = $total; - $record->amount_paid = $amount_paid; - $record->balance = $balance; - $record->invoice_date = $invoice_date; - $record->patient_category = $patient_category; - $record->created_by = Auth::id(); - - try { - $record->save(); - return $record; - } catch (QueryException $e) { - return null; - } - } - - public function clearInvoice(string $number): void - { - $payment = InvoicePayment::where('invoice_number', $number)->first(); - $invoices = PatientCategoryInvoice::where('invoice_number', $number)->get(); - - $counter = 1; - $total = count($invoices); - - $total_invoice_amount_paid = $payment->amount_paid; - - foreach ($invoices as $invoice) { - if ($total_invoice_amount_paid > $invoice->patient_amount && $counter < $total) { - PatientCategoryInvoice::where('id', $invoice->id)->update([ - 'amount_paid_off' => $invoice->patient_amount, - 'payment_date' => Carbon::now(), - 'balance_remaining' => 0, 'payment_complete' => 1 - ]); - - $total_invoice_amount_paid -= $invoice->patient_amount; - } else { - PatientCategoryInvoice::where('id', $invoice->id)->update([ - 'amount_paid_off' => $total_invoice_amount_paid, - 'payment_date' => Carbon::now(), - 'balance_remaining' => ($invoice->patient_amount - $total_invoice_amount_paid) - ]); - - $total_invoice_amount_paid = 0; - } - - $counter++; - - if ($total_invoice_amount_paid < 1) { - break; - } - } - } - - public function reverseCashReceived($receivedCashId): void - { - $invoice_payments = InvoicePaymentRecord::where('received_id', $receivedCashId)->get(); - - foreach ($invoice_payments as $payment) { - InvoicePaymentRecord::where('id', $payment->id)->update([ - 'received_id' => null, - 'received_amount' => null - ]); - } - } - - /** - * TODO Align this function to new data structure - * - * @param $invoice_number - * @param $amount_to_reverse - * @return void - */ - public function reverseClearedInvoice($invoice_number, $amount_to_reverse) - { - //1.update the balance remaning to null, status t0 0, received to null in patient_cat_invoices table - //2.update the payment_complete to 0 on patient_cat_invoice - //loop through the paid records in patient category invoices - //delete that payment from amounts_history, date_paid_history, staff_in_charge_history etc in the invoice_payments table - - $invoices = PatientCategoryInvoice::where('invoice_number', $invoice_number)->where(function ($query) { - $query->whereNotNull('balance_remaining') - ->orWhere('balance_remaining', '=', 0); - })->get(); - $total_invoice_amount_paid = $amount_to_reverse; - $invoice_amount_after_one_patient_bill_reduction = $total_invoice_amount_paid; - - foreach ($invoices as $invoice) { - - $patient_invoice_bill = $invoice->patient_amount; - - if (!is_null($invoice->balance_remaining)) { - if (($invoice_amount_after_one_patient_bill_reduction > $patient_invoice_bill) || ($invoice_amount_after_one_patient_bill_reduction == $patient_invoice_bill)) { - - PatientCategoryInvoice::where('id', $invoice->id)->update(['amount_paid_off' => null, 'balance_remaining' => null, 'payment_complete' => 0]); - - $invoice_amount_after_one_patient_bill_reduction = $invoice_amount_after_one_patient_bill_reduction - $patient_invoice_bill; - } elseif (($invoice_amount_after_one_patient_bill_reduction < $patient_invoice_bill) && ($invoice_amount_after_one_patient_bill_reduction > 0)) { - //not sober right now, need to review this later - - $balance_remaining = $patient_invoice_bill - $invoice_amount_after_one_patient_bill_reduction; - - PatientCategoryInvoice::where('id', $invoice->id)->update([ - 'amount_paid_off' => $invoice_amount_after_one_patient_bill_reduction, - 'balance_remaining' => $balance_remaining - ]); - break; - } - } - } - - //do the adjustments in the invoice_payments table - $invoice_payment = InvoicePayment::where('invoice_number', $invoice_number)->first(); - $invoice_payment->amount_paid = $invoice_payment->amount_paid - $amount_to_reverse; - $invoice_payment->balance = $invoice_payment->balance + $amount_to_reverse; - //remove the details in receipt_number, amount_paid_history, date_paid_history, staff_incharge_history, received_id_history, received_amount_history, banked_history - $amount_paid_history_array = unserialize($invoice_payment->amount_paid_history); - $amount_to_reverse_position_offset = array_search($amount_to_reverse, $amount_paid_history_array); - - $invoice_payment->amount_paid_history = remove_an_element_from_serialized_data($amount_to_reverse_position_offset, $invoice_payment->amount_paid_history); - - $invoice_payment->receipt_number = remove_an_element_from_serialized_data($amount_to_reverse_position_offset, $invoice_payment->receipt_number); - - $invoice_payment->date_paid_history = remove_an_element_from_serialized_data($amount_to_reverse_position_offset, $invoice_payment->date_paid_history); - - $invoice_payment->staff_incharge_history = remove_an_element_from_serialized_data($amount_to_reverse_position_offset, $invoice_payment->staff_incharge_history); - - $invoice_payment->received_id_history = remove_an_element_from_serialized_data($amount_to_reverse_position_offset, $invoice_payment->received_id_history); - - $invoice_payment->received_amount_history = remove_an_element_from_serialized_data($amount_to_reverse_position_offset, $invoice_payment->received_amount_history); - - $invoice_payment->banked_history = remove_an_element_from_serialized_data($amount_to_reverse_position_offset, $invoice_payment->banked_history); - - $invoice_payment->update(); - } - - public function getInvoicePayments(Request $request): array - { - $results = []; - $staff_member = $request->staff_member; - $today = date('Y-m-d'); - $yesterday = date('Y-m-d', strtotime("-1 days")); - $end = Carbon::parse($request->end_date)->toDateString(); - $start = Carbon::parse($request->start_date)->toDateString(); - $total_amount_paid = 0; - $unreceived_amount = 0; - $received_amount = 0; - - if ($request->staff_member == 0) { - if ($request->dates == "today") { - $results = DB::table('invoice_payment_records')->where('date_paid', $today)->whereNull('deleted_at')->get(); - } else if ($request->dates == "yesterday") { - $results = DB::table('invoice_payment_records')->where('date_paid', $yesterday)->whereNull('deleted_at')->get(); - } else if ($request->dates == "custom_date") { - $results = DB::table('invoice_payment_records')->where('date_paid', $start)->whereNull('deleted_at')->get(); - } else if ($request->dates == "custom_date_range") { - $results = DB::table('invoice_payment_records')->whereBetween('date_paid', [$start, $end])->whereNull('deleted_at')->get(); - } - } else { - if ($request->dates == "today") { - $results = DB::table('invoice_payment_records')->where('created_by', $staff_member)->where('date_paid', $today)->whereNull('deleted_at')->get(); - } else if ($request->dates == "yesterday") { - $results = DB::table('invoice_payment_records')->where('created_by', $staff_member)->where('date_paid', $yesterday)->whereNull('deleted_at')->get(); - } else if ($request->dates == "custom_date") { - $results = DB::table('invoice_payment_records')->where('created_by', $staff_member)->where('date_paid', $start)->whereNull('deleted_at')->get(); - } else if ($request->dates == "custom_date_range") { - $results = DB::table('invoice_payment_records')->where('created_by', $staff_member)->whereBetween('date_paid', [$start, $end])->whereNull('deleted_at')->get(); - } - } - - foreach ($results as $result) { - if (is_null($result->received_amount)) { - $unreceived_amount += $result->amount_paid; - } else { - $received_amount += $result->received_amount; - } - $total_amount_paid += $result->amount_paid; - } - - return ['total' => $total_amount_paid, 'unreceived' => $unreceived_amount, 'received' => $received_amount]; - } - - function getDonorInvoicePayments($start, $end, $staff_member): array - { - if ($staff_member == 0) { - $payments = DB::table('donor_invoice_payments')->whereBetween('created_at', [$start, $end]) - ->whereNull('deleted_at')->get()->toArray(); - } else { - $payments = DB::table('donor_invoice_payments')->whereBetween('created_at', [$start, $end]) - ->where('created_by', $staff_member)->whereNull('deleted_at')->get()->toArray(); - } - - $total_amount_paid = $received_amount = 0; - - foreach ($payments as $payment) { - // get total amount paid regardless of whether its received or not. - $amount_history_array = unserialize($payment->amount_paid_history); - - $received_amount_history_array = unserialize($payment->received_amount_history); - - $total_amount_paid += is_array($amount_history_array) ? array_sum($amount_history_array) : 0; - - // get total of payments received specifically. - if ($payment->received) { - $received_amount += is_array($received_amount_history_array) ? array_sum($received_amount_history_array) : 0; - } - } - - $unreceived_amount = $total_amount_paid - $received_amount; - - return [ - 'total' => $total_amount_paid, - 'unreceived' => $unreceived_amount, - 'received' => $received_amount - ]; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/Invoices/bitbucket-pipelines.yml b/docker/statistics/Modules/Invoices/bitbucket-pipelines.yml deleted file mode 100644 index e850a8fd..00000000 --- a/docker/statistics/Modules/Invoices/bitbucket-pipelines.yml +++ /dev/null @@ -1,19 +0,0 @@ -image: alpine/git:latest - -pipelines: - branches: - main: - - step: - name: Merge To Beta - script: - - git remote set-url origin https://Kabricks:${APP_SECRET}@bitbucket.org/dcsammi/${BITBUCKET_REPO_SLUG} - - git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*" - - git fetch - - git checkout beta - - git merge main - - git commit --amend -m "[skip ci] Merge changes from main" - - git push - - step: - name: Deploy To Test - script: - - echo "Ready to deploy to demo or production!" diff --git a/docker/statistics/Modules/Invoices/module.json b/docker/statistics/Modules/Invoices/module.json deleted file mode 100644 index 56efe82b..00000000 --- a/docker/statistics/Modules/Invoices/module.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "Invoices", - "alias": "invoices", - "description": "Invoices", - "keywords": [], - "priority": 0, - "providers": [ - "Modules\\Invoices\\Providers\\InvoicesServiceProvider" - ], - "files": [] -} diff --git a/docker/statistics/Modules/Journals/Config/config.php b/docker/statistics/Modules/Journals/Config/config.php deleted file mode 100644 index bf9a1e30..00000000 --- a/docker/statistics/Modules/Journals/Config/config.php +++ /dev/null @@ -1,5 +0,0 @@ - 'Journals' -]; diff --git a/docker/statistics/Modules/Journals/Http/Controllers/Controller.php b/docker/statistics/Modules/Journals/Http/Controllers/Controller.php deleted file mode 100755 index f7cc7923..00000000 --- a/docker/statistics/Modules/Journals/Http/Controllers/Controller.php +++ /dev/null @@ -1,13 +0,0 @@ -whereNull('deleted_at')->orderBy('name', 'asc')->get(); - $customers = DB::table('patients')->whereNull('deleted_at')->orderBy('first_name', 'asc')->get(); - $suppliers = DB::table('suppliers')->where('available', 1)->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - $employees = DB::table('users')->whereNull('deleted_at')->orderBy('first_name', 'asc')->get(); - $patient_categories = DB::table('patient_categories')->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - $payment_items = DB::table('payment_items')->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - $latest_journal = DB::table('journals')->latest('updated_at')->first(); - $journal_number = is_null($latest_journal) ? 1 : $latest_journal->journal_number + 1; - - return view('journals::journals.index', compact('accounts', 'customers', 'suppliers', 'employees', 'patient_categories', 'payment_items', 'journal_number')); - } - - /** - * Search for journals records with given parameters - * - * @param Request $request - * @return \Illuminate\Contracts\View\Factory|\Illuminate\Foundation\Application|\Illuminate\View\View - */ - public function records(Request $request) - { - $created_by = $request->created_by; - $dates = $request->dates; - $filters = []; - - if ($created_by == null) : - // pass - elseif ($created_by != 'all') : - array_push($filters, ['created_by', '=', $created_by]); - endif; - - switch ($dates) { - case 'today': - $today = Carbon::today()->format('Y-m-d'); - $journals = Journal::orderBy('created_at', 'desc')->where($filters)->whereDate('created_at', $today)->paginate(1000); - break; - - case 'yesterday': - $yesterday = Carbon::yesterday()->format('Y-m-d'); - $journals = Journal::orderBy('created_at', 'desc')->where($filters)->whereDate('created_at', $yesterday)->paginate(1000); - break; - - case 'week': - $week_ago = Carbon::today()->subDays(7)->format('Y-m-d'); - $journals = Journal::orderBy('created_at', 'desc')->where($filters)->whereDate('created_at', '>=', $week_ago)->paginate(1000); - break; - - case 'month': - $month_ago = Carbon::today()->subDays(30)->format('Y-m-d'); - $journals = Journal::orderBy('created_at', 'desc')->where($filters)->whereDate('created_at', '>=', $month_ago)->paginate(1000); - break; - - case 'custom-date': - $start_date = Carbon::parse($request->start_date)->format('Y-m-d'); - - $journals = Journal::orderBy('created_at', 'desc')->where($filters)->whereDate('created_at', '=', $start_date)->paginate(1000); - break; - - case 'custom-range': - $start_date = Carbon::parse($request->start_date)->format('Y-m-d'); - $end_date = Carbon::parse($request->end_date)->format('Y-m-d'); - - $journals = Journal::orderBy('created_at', 'desc')->where($filters)->whereBetween('created_at', [$start_date, $end_date])->paginate(1000); - break; - - default: - $journals = Journal::orderBy('created_at', 'desc')->where($filters)->paginate(1000); - break; - } - - - if ($journals->count() <= 0) { - flash("There are no records found in the search")->error(); - } - - // users with activity - $created_by_array = DB::table('journals')->groupBy('created_by')->select('created_by')->get()->toArray(); - $created_by = array(count($created_by_array)); - - foreach ($created_by_array as $value) { - $created_by[$value->created_by] = get_full_name($value->created_by, 'id', 'first_name', 'last_name', 'users'); - } - - // remove the count from the array - unset($created_by[0]); - - // add --select-- - $created_by = ['all' => 'ALL'] + $created_by; - - // get all first names - $first_names = DB::table('users')->pluck('first_name', 'id'); - - // get all last names - $last_names = DB::table('users')->pluck('last_name', 'id'); - - return view('journals::journals.records', compact('journals', 'created_by')); - } - - public function save(Request $request) - { - $validator = Validator::make($request->all(), [ - 'journal_date' => 'required', - 'journal_number' => 'required', - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - - if ($request->journal_action == 'save') { - - $account_ids = $request->account_id; - $debits = $request->debit; - $credits = $request->credit; - $descriptions = $request->description; - $type_ids = $request->type_id; - - //create an array of the journaled account types using the account_ids - $journaled_account_types = $journaled_liability_amounts = $journaled_expense_amounts = []; - - for ($i=0; $i < count($account_ids) ; $i++) { - $journaled_account_types[] = get_name($account_ids[$i], 'id', 'type', 'chart_of_accounts'); - - if (in_array(get_name($account_ids[$i], 'id', 'type', 'chart_of_accounts'), [6,9,11,12])) { - $journaled_liability_amounts[] = $debits[$i] ? $debits[$i] : $credits[$i]; - } - - if (get_name($account_ids[$i], 'id', 'type', 'chart_of_accounts') == 2) { - $journaled_expense_amounts[] = $debits[$i] ? $debits[$i] : $credits[$i]; - } - } - - //track the affected tables, affected table record ids - $affected_tables_by_the_journal = []; - - // The name_id can belong to a customer, supplier or employee - // As you loop through data from each row, be sure to reference the related item in the array - $name_ids = $request->name_id; - $invoice_numbers = $request->invoice_number; - - $logged_in_user = Auth::id(); - - $journal_number = $this->validate_journal_number($request->journal_number); - $journal = new Journal; - $journal->journal_date = Carbon::parse($request->journal_date)->toDateString(); - $journal->journal_number = $journal_number; - $journal->account_ids = implode(",", $account_ids); - $journal->debits = implode(",", $debits); - $journal->credits = implode(",", $credits); - $journal->descriptions = implode(",", $descriptions); - $journal->type_ids = implode(",", $type_ids); - $journal->name_ids = implode(",", $name_ids); - $journal->created_by = $logged_in_user; - - $item_account = null; - $payment_item = null; - // If an expense account is tagged, set it as an $item_account - $expense_accounts_count = 0; - for ($i = 0; $i < count($type_ids); $i++) { - // If expense account was tagged - if (get_name($account_ids[$i], 'id', 'type', 'chart_of_accounts') == 2) { - $item_account = $account_ids[$i]; - //reject journal if no payment item has been specified - if ($type_ids[$i] != '5' || $name_ids[$i] == '') { - flash("Please specify the payment item for the expense")->error(); - return redirect('journals'); - } - } - - // If payment item tagged - if ($type_ids[$i] == '5') { - $expense_accounts_count += 1; - if ($expense_accounts_count > 1) { - flash("Multiple expense accounts are not yet supported in Journals! Deal with one at a time!")->error(); - return redirect('journals'); - } - $payment_item = $name_ids[$i]; - } - - // If a Supplier is tagged (for a debit of an account of type Accounts Payable), reject Journal if no matching bill is found - if (get_name($account_ids[$i], 'id', 'type', 'chart_of_accounts') == 9 && $debits[$i] != '' && $type_ids[$i] == '2' && $name_ids[$i] != '') { - $matching_bill = HospitalBill::whereNull('deleted_at')->whereNull('balance')->where('total_amount', '>=', (int)$debits[$i])->where('vendor', $name_ids[$i])->where('payable_account', $account_ids[$i])->first(); - if (is_null($matching_bill)) { - // $matching_bill = HospitalBill::whereNull('deleted_at')->where('balance', '>=', (int)$debits[$i])->where('vendor', $name_ids[$i])->first(); // Old query - $matching_bill = HospitalBill::whereNull('deleted_at')->where('balance', '>=', (int)$debits[$i])->where('vendor', $name_ids[$i])->where('payable_account', $account_ids[$i])->first(); - if (is_null($matching_bill)) { - // Reject Journal and send them to pay bill 👍 ¯\_(ツ)_/¯ - flash("Journals could not find a Hospital bill of value greater than or equal to " . ugandan_shillings((int)$debits[$i]) . ", for Supplier: " . get_name($name_ids[$i], 'id', 'name', 'suppliers') . "!")->error(); - return redirect('/payments/bills/'); - } - } - } - - // If a Liability account is tagged - if (in_array(get_name($account_ids[$i], 'id', 'type', 'chart_of_accounts'), [6, 11, 12])) { - - // Reject Journal if no matching bill is found - if ($debits[$i] != '') { - // If not Patient Category - if ($type_ids[$i] != '4') { - // If vendor/supplier - if ($type_ids[$i] == '2') { - // (is_null($bill->balance) ? $bill->total_amount : $bill->balance) - // ponder the above check on what's left to pay and implement below - $matching_bill = HospitalBill::whereNull('deleted_at')->whereNull('balance')->where('total_amount', '>=', (int)$debits[$i])->where('vendor', $name_ids[$i])->where('payable_account', $account_ids[$i])->first(); - if (is_null($matching_bill)) { - $matching_bill = HospitalBill::whereNull('deleted_at')->where('balance', '>=', (int)$debits[$i])->where('vendor', $name_ids[$i])->where('payable_account', $account_ids[$i])->first(); - if (is_null($matching_bill)) { - // Reject Journal and send them to pay bill 👍 ¯\_(ツ)_/¯ - flash("Journals could not find a Hospital bill of value greater than or equal to " . ugandan_shillings((int)$debits[$i]) . ", tagged to the Liability Account: " . get_name($account_ids[$i], 'id', 'name', 'chart_of_accounts') . "!")->error(); - return redirect('/payments/bills/'); - } - } - } else { - $matching_bill = HospitalBill::whereNull('deleted_at')->whereNull('balance')->where('total_amount', '>=', (int)$debits[$i])->whereNull('vendor')->where('payable_account', $account_ids[$i])->first(); - if (is_null($matching_bill)) { - $matching_bill = HospitalBill::whereNull('deleted_at')->where('balance', '>=', (int)$debits[$i])->whereNull('vendor')->where('payable_account', $account_ids[$i])->first(); - if (is_null($matching_bill)) { - // Reject Journal and send them to pay bill 👍 ¯\_(ツ)_/¯ - flash("Journals could not find a Hospital bill of value greater than or equal to " . ugandan_shillings((int)$debits[$i]) . ", tagged to the Liability Account: " . get_name($account_ids[$i], 'id', 'name', 'chart_of_accounts') . ". Please double check the journal entry and ensure to pick a supplier where necessary!")->error(); - return redirect('/payments/bills/'); - } - } - } - } - } - - // Reject journal if the credit entry doesn't have type "Supplier" and name is not selected - if ($credits[$i] != '') { - // If not vendor/supplier - if ($type_ids[$i] != '2' || $name_ids[$i] == '') { - // Reject Journal - flash("You must select a supplier when crediting a Liability account!")->error(); - flash("The Journal entry has NOT been submitted! Please try again!")->error(); - return redirect('journals'); - } - } - } - - // If accounts receivable is tagged for credit with an invoice number for a patient category - if (get_name($account_ids[$i], 'id', 'type', 'chart_of_accounts') == 8 && $credits[$i] != '' && $type_ids[$i] == '4' && $name_ids[$i] != '') { - // If no invoice is found for the tagged patient category, reject the journal - $uncleared_invoices = DB::table('patient_category_invoices')->where('invoice_generated', 1) - ->where('status', 0) - ->where('patient_category', (int)$name_ids[$i]) - ->where('invoice_number', $invoice_numbers[$i]) - ->whereNull('balance_remaining') - ->get(); - - if (count($uncleared_invoices) < 1) { - $uncleared_invoices = DB::table('patient_category_invoices')->where('invoice_generated', 1) - ->where('status', 1) - ->where('patient_category', (int)$name_ids[$i]) - ->where('invoice_number', $invoice_numbers[$i]) - ->where('balance_remaining', '>=', (int)$credits[$i]) - ->get(); - - if (count($uncleared_invoices) < 1) { - flash("No uncleared Patient Category Invoice found for Patient Category: " . get_name($name_ids[$i], 'id', 'name', 'patient_categories') . " and invoice number " . $invoice_numbers[$i] . "!")->error(); - return redirect('/invoices/receive_patient_invoices/'); - } - } - } - } - - for ($x = 0; $x < count($account_ids); $x++) { - $account = $account_ids[$x]; - $debit = $debits[$x]; - $credit = $credits[$x]; - $description = $descriptions[$x]; - $type_id = $type_ids[$x]; - $name_id = $name_ids[$x]; - - $new_balance = $old_balance = (int)get_name($account, 'id', 'balance', 'chart_of_accounts'); - $account_type = get_name($account, 'id', 'type', 'chart_of_accounts'); - $account_name = get_name($account, 'id', 'name', 'chart_of_accounts'); - - // Account Type: [Non-Current Assets (a.k.a Fixed Assets), Current Assets, Other Current Assets] - // TODO: Figure out how to deal with Platinum's `Other assets` account type of id 15 - $action = "-"; - $affected_amount = 0; - $flash_msg = ""; - if (in_array($account_type, [3, 10, 12, 15])) { - if ($debit != '') { - // Increase this Asset's value - $new_balance = $old_balance + (int)$debit; - $action = "addition"; - $affected_amount = $debit; - $flash_msg = "debited"; - - // TODO: Deal with other related tables when assets are debited - } else if ($credit != '') { - // Decrease this Asset's value - $new_balance = $old_balance - (int)$credit; - $action = "deduction"; - $affected_amount = $credit; - $flash_msg = "credited"; - } - - // Update the specific Chart of Accounts balance - ChartOfAccount::where('id', $account)->update(['balance' => (int)$new_balance]); - $affected_tables_by_the_journal[] = ["table" => "chart_of_accounts", "record_id" => $account, "amount" => $affected_amount, "action" => $action, "table_column" => "balance"]; - - /******************* insert or update into fixed assets table ******************/ - $fixed_asset = new FixedAsset; - - if ($debit != '') { - $fixed_asset->name = "Journal (" . $request->journal_number . ") Debit - " . $account_name; - $fixed_asset->description = $fixed_asset->name; - } else{ - $fixed_asset->name = "Journal (" . $request->journal_number . ") Credit - " . $account_name; - $fixed_asset->description = $fixed_asset->name; - } - - $fixed_asset->cost_price = ($debit != '') ? $debit : -(int)$credit; - $fixed_asset->item_condition = 1; - $fixed_asset->acquisition_date = Carbon::parse($request->journal_date)->toDateString(); - $fixed_asset_supplier_id = null; - //if supplier is provided - $fixed_asset->supplier_id = ($type_id==2 && $name_id!='') ? $name_id : "N/A"; - $fixed_asset->fixed_asset_account_id = $account; - $fixed_asset->save(); - - flash("Fixed asset: " . $fixed_asset->name . " has been ". $flash_msg." with ". ugandan_shillings($fixed_asset->cost_price) ." on Account: " . $account_name . " has been created!")->success(); - - $affected_tables_by_the_journal[] = ["table" => "fixed_assets", "record_id" => $fixed_asset->id, "amount" => "-", "action" => "insertion", "table_column" => "-"]; - /******************** end insertion into fixed assets table ***********************/ - } - - // Account Type: [Current Liabilities, Non-Current Liabilities, Other current liabilities] - else if (in_array($account_type, [6, 11, 12])) { - $affected_amount = 0; - $action = "-"; - if ($debit != '') { - // Decrease this Liability Account's value - $new_balance = $old_balance - (int)$debit; - - // If a supplier is tagged, pay off a bill!!! - if ($type_id == 2 && $name_id != '') { - // Somewhat like a Russian roulette implementation to knock off one of the bills tagged to the supplier - $bill = HospitalBill::whereNull('deleted_at')->whereNull('balance')->where('total_amount', '>=', (int)$debit)->where('vendor', $name_id)->where('payable_account', $account)->first(); - if (is_null($bill)) { - // $bill = HospitalBill::whereNull('deleted_at')->where('balance', '>=', (int)$debit)->where('vendor', $name_id)->first(); // Old query - $bill = HospitalBill::whereNull('deleted_at')->where('balance', '>=', (int)$debit)->where('vendor', $name_id)->where('payable_account', $account)->first(); - if (!is_null($bill)) { - $affected_tables_by_the_journal[] = $this->store_bill_payment($bill->id, $request->journal_date, $description, (int)$debit, $account, $logged_in_user); - } else { - flash("No Hospital bill of value greater than or equal to " . ugandan_shillings((int)$debit) . ", for Supplier: " . get_name($name_id, 'id', 'name', 'suppliers') . "!")->error(); - } - } else { - $affected_tables_by_the_journal[] = $this->store_bill_payment($bill->id, $request->journal_date, $description, (int)$debit, $account, $logged_in_user); - } - } else { - // Somewhat like a Russian roulette implementation to knock off one of the bills tagged to the liability account - $bill = HospitalBill::whereNull('deleted_at')->whereNull('balance')->where('total_amount', '>=', (int)$debit)->whereNull('vendor')->where('payable_account', $account)->first(); - if (is_null($bill)) { - $bill = HospitalBill::whereNull('deleted_at')->where('balance', '>=', (int)$debit)->whereNull('vendor')->where('payable_account', $account)->first(); - if (!is_null($bill)) { - $affected_tables_by_the_journal[] = $this->store_bill_payment($bill->id, $request->journal_date, $description, (int)$debit, $account, $logged_in_user); - } else { - flash("No Hospital bill of value greater than or equal to " . ugandan_shillings((int)$debit) . "!")->error(); - } - } else { - $affected_tables_by_the_journal[] = $this->store_bill_payment($bill->id, $request->journal_date, $description, (int)$debit, $account, $logged_in_user); - } - } - $affected_amount = $debit; - $action = "deduction"; - } else if ($credit != '') { - // Increase this Liability Account's value - $new_balance = $old_balance + (int)$credit; - - // Create a bill - $affected_amount = $credit; - $action = "addition"; - - $affected_tables_by_the_journal[] = $this->save_bill(($name_id != '') ? $name_id : null, $request->journal_date, $description, (int)$credit, $account, $item_account, $payment_item, $logged_in_user, $journal_number); - } - - // Update the specific Chart of Accounts balance - ChartOfAccount::where('id', $account)->update(['balance' => (int)$new_balance]); - $affected_tables_by_the_journal[] = ["table" => "chart_of_accounts", "record_id" => $account, "amount" => $affected_amount, "action" => $action, "table_column" => "balance"]; - } - - // Account Type: Equity - else if ($account_type == 5) { - $affected_amount = 0; - $action = "-"; - - $equity = new Equity; - $equity->account_id = $account; - if ($debit != '') { - // Decrease this Equity Account's value - $new_balance = $old_balance - (int)$debit; - $affected_amount = $debit; - $action = "deduction"; - - // Record the transaction - $equity->name = "Journal (" . $journal_number . ") Debit - " . $account_name; - $equity->amount = -(int)$debit; - } else if ($credit != '') { - // Increase this Equity Account's value - $new_balance = $old_balance + (int)$credit; - $affected_amount = $credit; - $action = "addition"; - - // Record the transaction - $equity->name = "Journal (" . $journal_number . ") Credit - " . $account_name; - $equity->amount = (int)$credit; - } - - // Save the Equity transaction record - $equity->transaction_date = Carbon::parse($request->journal_date)->toDateTimeString(); //use the journal date - $equity->created_at = Carbon::now(); - $equity->created_by = Auth::id(); - $equity->updated_by = Auth::id(); - $equity->save(); - $affected_tables_by_the_journal[] = ["table" => "equities", "record_id" => $equity->id, "amount" => "-", "action" => "insertion", "table_column" => "-"]; - - flash("Transacted " . ugandan_shillings($equity->amount) . " on Equity Account: " . $account_name . "!")->success(); - - // Update the specific Chart of Accounts balance - ChartOfAccount::where('id', $account)->update(['balance' => (int)$new_balance]); - $affected_tables_by_the_journal[] = ["table" => "chart_of_accounts", "record_id" => $account, "amount" => $affected_amount, "action" => $action, "table_column" => "balance"]; - } - - // Account Type: Income - // TODO: Figure out how to deal with Platinum's `Other Income` account type of id 16 - else if (in_array($account_type, [1, 16])) { - $affected_amount = 0; - $action = "-"; - //1.record money into banking and cashier_income tables - //2.record into other_incomes_income table - //3 if selected account is not undeposited funds then - $new_receipt_number = $this->receiptService->createReceipt("journals-other income"); - - //start insert into the banking table - /*$new_receipt_number = generateReceiptNumber(); - - $undeposited_funds_account_balance_days_record = get_latest_banking_record(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), Carbon::parse($request->journal_date)->toDateString()); - - $undeposited_funds_account_balance_for_the_day = ($undeposited_funds_account_balance_days_record != null) ? $undeposited_funds_account_balance_days_record->account_balance : 0; - - $last_insert_id_to_account = capture_bank_record('DEPOSIT', Carbon::parse($request->journal_date)->toDateString(), 10, '', $undeposited_funds_account_balance_for_the_day, $amount_on_applying_journal_rule, 0, "Journal (" . $request->journal_number . ")", $new_receipt_number); - - $affected_tables_by_the_journal[] = ["table" => "banking", "record_id" => $last_insert_id_to_account, "amount" => "-", "action" => "insertion", "table_column" => "-"]; - - $undeposited_funds_account_balance_after_deposit = $undeposited_funds_account_balance_for_the_day + $amount_on_applying_journal_rule; - - update_banking_record_balances(Carbon::parse($request->journal_date)->toDateString(), 10, $last_insert_id_to_account, $undeposited_funds_account_balance_after_deposit);*/ - //end insert into banking table - - //insert into cashier income table - /*$cashier_income = new CashierIncome; - $cashier_income->cashier_id = Auth::id(); - $cashier_income->brought_by = Auth::id(); - $cashier_income->expected_amount = $amount_on_applying_journal_rule; - $cashier_income->reason = "Journal (" . $request->journal_number . ")"; - $cashier_income->amount = $amount_on_applying_journal_rule; - $cashier_income->balance = 0; - $cashier_income->receipt_number = $new_receipt_number; - // - $undeposited_funds_account_balance_today_record = get_latest_banking_record(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), Carbon::parse($request->journal_date)->toDateString()); - $undeposited_funds_account_balance_today = ($undeposited_funds_account_balance_today_record != null) ? $undeposited_funds_account_balance_today_record->account_balance : 0; - // - $cashier_income->previous_balance = (int)$undeposited_funds_account_balance_today; - $cashier_income->account_balance = (int)$undeposited_funds_account_balance_today + $cashier_income->amount; - $cashier_income->banked = $last_insert_id_to_account; - $cashier_income->save(); - $cashier_income_id = $cashier_income->id; - $affected_tables_by_the_journal[] = ["table" => "cashier_incomes", "record_id" => $cashier_income_id, "amount" => "-", "action" => "insertion", "table_column" => "-"];*/ - //end insert into cashier income table - - $other_income = new OtherIncome; - $other_income->income_account = $account; - $other_income->deposit_date = Carbon::parse($request->journal_date)->toDateString(); - $trans_id = $new_receipt_number; - $other_income->trans_id = $trans_id; - - if ($debit != '') { - // Decrease this Income Account's value - $new_balance = $old_balance - (int)$debit; - $affected_amount = $debit; - $action = "deduction"; - - // TODO: Deal with other related tables when incomes are debited - $other_income->deposit_amount = -(int)$debit; - $other_income->deposit_memo = "Journal (" . $journal_number . ") Debit - " . $account_name; - } else if ($credit != '') { - // Increase this Income Account's value - $new_balance = $old_balance + (int)$credit; - $affected_amount = $credit; - $action = "addition"; - - // TODO: Deal with other related tables when incomes are credited - $other_income->deposit_amount = (int)$credit; - $other_income->deposit_memo = "Journal (" . $journal_number . ") Credit - " . $account_name; - } - //save the record into the other_incomes table - $other_income->created_by = Auth::id(); - $other_income->updated_by = Auth::id(); //should be really null but table needs it - if ($other_income->save()) { - $affected_tables_by_the_journal[] = ["table" => "other_incomes", "record_id" => $other_income->id, "amount" => "-", "action" => "insertion", "table_column" => "-"]; - } - - // Update the specific Chart of Accounts balance - ChartOfAccount::where('id', $account)->update(['balance' => (int)$new_balance]); - $affected_tables_by_the_journal[] = ["table" => "chart_of_accounts", "record_id" => $account, "amount" => $affected_amount, "action" => $action, "table_column" => "balance"]; - } - - // Account Type: Expense - else if ($account_type == 2) { - $affected_amount = 0; - $action = "-"; - $flash_msg = ""; - if ($debit != '') { - // Increase this Expense Account's value - $new_balance = $old_balance + (int)$debit; - $affected_amount = $debit; - $action = "addition"; - $flash_msg = "debited"; - } else if ($credit != '') { - // Decrease this Expense Account's value - $new_balance = $old_balance - (int)$credit; - $affected_amount = $credit; - $action = "deduction"; - $flash_msg = "credited"; - } - - // Update the specific Chart of Accounts balance - ChartOfAccount::where('id', $account)->update(['balance' => (int)$new_balance]); - $affected_tables_by_the_journal[] = ["table" => "chart_of_accounts", "record_id" => $account, "amount" => $affected_amount, "action" => $action, "table_column" => "balance"]; - - //check if the journal has liablities & expenses and ignore insertion into payments table if amounts equate [liabilities type ids are 6,9,11,12] - if (in_array(6, $journaled_account_types) || in_array(9, $journaled_account_types) || in_array(11, $journaled_account_types) || in_array(12, $journaled_account_types)) { - $all_payables_sum = array_sum($journaled_liability_amounts); - $all_expenses_sum = array_sum($journaled_expense_amounts); - if ($all_payables_sum != $all_expenses_sum) { - //if the type is payment item, add an insertion in payment table - if($type_id == '5'){ - $payment = new Payment; - $payment->item_id = $name_id; - //$payment->vendor = $vendor_array[$x]; - $payment->unit_cost = ($debit != '') ? $debit : -(int)$credit; - $payment->amount = ($debit != '') ? $debit : -(int)$credit; - $payment->quantity = 1; - if ($debit != '') { - $payment->memo = "Journal (" . $request->journal_number . ") Debit - " . $account_name; - } else{ - $payment->memo = "Journal (" . $request->journal_number . ") Credit - " . $account_name; - } - //$payment->account_balance = $account_balance_on_expense_date_after_payment; - $trans_id = $this->receiptService->createReceipt("journals-payment"); - $payment->transaction_id = $trans_id; - //$payment->account_id = $request->bank; - $payment->created_by = Auth::id(); - $payment->expense_date = Carbon::parse($request->journal_date)->toDateString(); - $payment->expense_account = $account; - if($payment->save()){ - flash("Payment: " . get_name($name_id, "id", "name", "payment_items") . " has been ". $flash_msg." with ". $payment->amount ." on Account: " . $account_name . " has been created!")->success(); - } - $affected_tables_by_the_journal[] = ["table" => "payments", "record_id" => $payment->id, "amount" => "-", "action" => "insertion", "table_column" => "-"]; - } - } - } else { - //if the type is payment item, add an insertion in payment table - if($type_id == '5'){ - $payment = new Payment; - $payment->item_id = $name_id; - //$payment->vendor = $vendor_array[$x]; - $payment->unit_cost = ($debit != '') ? $debit : -(int)$credit; - $payment->amount = ($debit != '') ? $debit : -(int)$credit; - $payment->quantity = 1; - if ($debit != '') { - $payment->memo = "Journal (" . $request->journal_number . ") Debit - " . $account_name; - } else{ - $payment->memo = "Journal (" . $request->journal_number . ") Credit - " . $account_name; - } - //$payment->account_balance = $account_balance_on_expense_date_after_payment; - $trans_id = $this->receiptService->createReceipt("journals-payment"); - $payment->transaction_id = $trans_id; - //$payment->account_id = $request->bank; - $payment->created_by = Auth::id(); - $payment->expense_date = Carbon::parse($request->journal_date)->toDateString(); - $payment->expense_account = $account; - if($payment->save()){ - flash("Payment: " . get_name($name_id, "id", "name", "payment_items") . " has been ". $flash_msg." with ". $payment->amount ." on Account: " . $account_name . " has been created!")->success(); - } - $affected_tables_by_the_journal[] = ["table" => "payments", "record_id" => $payment->id, "amount" => "-", "action" => "insertion", "table_column" => "-"]; - } - } - } - - // Account Type: Bank - else if ($account_type == 4) { - $affected_amount = 0; - $action = "-"; - $transaction_date = Carbon::parse($request->journal_date)->toDateString(); - - $banking_record = get_latest_banking_record_based_on_transaction_date($account, Carbon::today()->toDateString()); - $bank_balance_that_day = ($banking_record != null) ? (int)$banking_record->account_balance : 0; - $old_balance = $bank_balance_that_day; - - if ($debit != '') { - // Increase this Bank Account's value - $new_balance = $old_balance + (int)$debit; - $affected_amount = $debit; - $action = "addition"; - - // Save an entry to the Banking table - // NOTE: The debit value goes in as the credit value so that the bank register is satisfied - // In a bank register, an increase on the balance is placed on the credit side - $last_insert_id = capture_bank_record('DEPOSIT', $transaction_date, $account, '', $new_balance, (int)$debit, 0, $description, $this->receiptService->createReceipt("journals-banking")); - - $affected_tables_by_the_journal[] = ["table" => "banking", "record_id" => $last_insert_id, "amount" => "-", "action" => "insertion", "table_column" => "-"]; - - update_banking_record_balances($transaction_date, $account, $last_insert_id, $new_balance); - - flash("Deposited " . ugandan_shillings((int)$debit) . " to Bank Account: " . $account_name . "!")->success(); - } else if ($credit != '') { - // Decrease this Bank Account's value - $new_balance = $old_balance - (int)$credit; - $affected_amount = $credit; - $action = "deduction"; - - // Save an entry to the Banking table - // NOTE: The credit value goes in as the debit value so that the bank register is satisfied - // In a bank register, a decrease on the balance is placed on the debit side - $last_insert_id = capture_bank_record('PAYMENT', $transaction_date, $account, '', $new_balance, 0, (int)$credit, $description, $this->receiptService->createReceipt("journals-banking")); - - $affected_tables_by_the_journal[] = ["table" => "banking", "record_id" => $last_insert_id, "amount" => "-", "action" => "insertion", "table_column" => "-"]; - - update_banking_record_balances($transaction_date, $account, $last_insert_id, $new_balance); - - flash("Used " . ugandan_shillings((int)$credit) . " from Bank Account: " . $account_name . " for a payment!")->success(); - } - - $track_receipt = new TrackReceipt; - $track_receipt->reason = "Bank ".$action." by Journal number " . $request->journal_number; - $track_receipt->created_by = Auth::id(); - $track_receipt->save(); - - // Update the specific Chart of Accounts balance - ChartOfAccount::where('id', $account)->update(['balance' => (int)$new_balance]); - $affected_tables_by_the_journal[] = ["table" => "chart_of_accounts", "record_id" => $account, "amount" => $affected_amount, "action" => $action, "table_column" => "balance"]; - - //add an insertion in payment table - if($type_id == '5'){ - //if the type chosen is payment item then save into payments table - $payment = new Payment; - $payment->item_id = $name_id; - //$payment->vendor = $vendor_array[$x]; - $payment->unit_cost = ($debit != '') ? $debit : -(int)$credit; - $payment->amount = ($debit != '') ? $debit : -(int)$credit; - $payment->quantity = 1; - if ($debit != '') { - $payment->memo = "Journal (" . $request->journal_number . ") Debit - " . $account_name; - } else{ - $payment->memo = "Journal (" . $request->journal_number . ") Credit - " . $account_name; - } - //$payment->account_balance = $account_balance_on_expense_date_after_payment; - $trans_id = $this->receiptService->createReceipt("journals-payment"); - $payment->transaction_id = $trans_id; - //$payment->account_id = $request->bank; - $payment->created_by = Auth::id(); - $payment->expense_date = Carbon::parse($request->journal_date)->toDateString(); - $payment->expense_account = $account; - if($payment->save()){ - flash("Payment: " . get_name($name_id, "id", "name", "payment_items") . " has been ". $flash_msg." with ". $payment->amount ." on Account: " . $account_name . " has been created!")->success(); - } - - $affected_tables_by_the_journal[] = ["table" => "payments", "record_id" => $payment->id, "amount" => "-", "action" => "insertion", "table_column" => "-"]; - } - } - - // Account Type: Accounts Payable - else if ($account_type == 9) { - /** - * For example: - * 1. If getting items from a Supplier on credit: - * - credit a payable a/c - * - debit an inventory a/c - * 2. If paying for items from a supplier - * - debit a payable a/c - * - credit a bank a/c - */ - $affected_amount = 0; - $action = "-"; - if ($debit != '') { - // Decrease this Accounts Payable' value - $new_balance = $old_balance - (int)$debit; - $affected_amount = $debit; - $action = "deduction"; - - // If a supplier is tagged, pay off a bill!!! - if ($type_id == 2 && $name_id != '') { - // Somewhat like a Russian roulette implementation to knock off one of the bills tagged to the supplier - // $bill = HospitalBill::whereNull('deleted_at')->where('balance', '>=', (int)$debit)->where('vendor', $name_id)->first(); // Old query - $bill = HospitalBill::whereNull('deleted_at')->whereNull('balance')->where('total_amount', '>=', (int)$debit)->where('vendor', $name_id)->where('payable_account', $account)->first(); - if (is_null($bill)) { - $bill = HospitalBill::whereNull('deleted_at')->where('balance', '>=', (int)$debit)->where('vendor', $name_id)->where('payable_account', $account)->first(); - if (!is_null($bill)) { - $affected_tables_by_the_journal[] = $this->store_bill_payment($bill->id, $request->journal_date, $description, (int)$debit, $account, $logged_in_user); - } else { - flash("No Hospital bill of value greater than or equal to " . ugandan_shillings((int)$debit) . ", for Supplier: " . get_name($name_id, 'id', 'name', 'suppliers') . "!")->error(); - } - } else { - $affected_tables_by_the_journal[] = $this->store_bill_payment($bill->id, $request->journal_date, $description, (int)$debit, $account, $logged_in_user); - } - } - } else if ($credit != '') { - // Increase this Accounts Payable' value - // e.g. when getting items from a supplier on credit - $new_balance = $old_balance + (int)$credit; - $affected_amount = $credit; - $action = "addition"; - - // Create a bill - $affected_tables_by_the_journal[] = $this->save_bill(($name_id != '') ? $name_id : null, $request->journal_date, $description, (int)$credit, $account, $item_account, $payment_item, $logged_in_user, $journal_number); - } - - // Update the specific Chart of Accounts balance - ChartOfAccount::where('id', $account)->update(['balance' => (int)$new_balance]); - $affected_tables_by_the_journal[] = ["table" => "chart_of_accounts", "record_id" => $account, "amount" => $affected_amount, "action" => $action, "table_column" => "balance"]; - } - - // Account Type: Accounts Receivable - else if ($account_type == 8) { - $affected_amount = 0; - $action = "-"; - if ($debit != '') { - // Increase this Accounts Receivable's value - $new_balance = $old_balance + (int)$debit; - $affected_amount = $debit; - $action = "addition"; - - // If a customer is tagged, generate an invoice!!! - // This should be available under Finance->Reports->Debtors Report - if ($type_id == 1 && $name_id != '') { - DepositHelpers::debt($name_id, 0, (int)$debit, '', ''); - $last_inserted_debt = Debtor::orderBy('id', 'desc')->first(); - if ($account != 16) { - $last_inserted_debt->receivable_account = $account; - $last_inserted_debt->update(); - } - $affected_tables_by_the_journal[] = ["table" => "debtors", "record_id" => $last_inserted_debt->id, "amount" => "-", "action" => "insertion", "table_column" => "-"]; - - // track the invoice - $track = new TrackInvoice; - $track->reason = "Journal (" . $journal_number . ") Debit Accounts Receivable (Patient ID: " . $name_id . ")"; - $track->created_by = $logged_in_user; - $track->save(); - - $affected_tables_by_the_journal[] = ["table" => "track_invoices","record_id" => $track->id, "amount" => "-", "action" => "insertion", "table_column" => "-"]; - } - - // If a patient category is tagged, generate an invoice!!! - // This should be available under Finance->Invoices->Receive Invoice Payments - if ($type_id == 4 && $name_id != '') { - $new_patient_category_invoice = new PatientCategoryInvoice; - - // track the invoice - $track_invoice = new TrackInvoice; - $track_invoice->reason = get_name($name_id, 'id', 'name', 'patient_categories'); - $track_invoice->created_by = $logged_in_user; - $track_invoice->save(); - $invoice_number = sprintf("%04u", $track_invoice->id); - - $new_patient_category_invoice->patient_category = $name_id; - $new_patient_category_invoice->invoice_number = $invoice_number; - $new_patient_category_invoice->patient_amount = (int)$debit; - $new_patient_category_invoice->created_by = $logged_in_user; - $new_patient_category_invoice->invoice_generated = 1; - $new_patient_category_invoice->invoice_date = $request->journal_date . '/' . $request->journal_date; - if ($account != 16) { - $new_patient_category_invoice->receivable_account = $account; - } - - $new_patient_category_invoice->items_ids = "Journal - " . $request->journal_number; - $new_patient_category_invoice->transaction_date = Carbon::parse($request->journal_date)->toDateString(); - $new_patient_category_invoice->save(); - - $affected_tables_by_the_journal[] = ["table" => "patient_category_invoices","record_id" => $new_patient_category_invoice->id, "amount" => "-", "action" => "insertion", "table_column" => "-"]; - - // track the invoice - $track = new TrackInvoice; - $track->reason = get_name($name_id, 'id', 'name', 'patient_categories'); - $track->created_by = $logged_in_user; - $track->save(); - - $affected_tables_by_the_journal[] = ["table" => "track_invoices","record_id" => $track->id, "amount" => "-", "action" => "insertion", "table_column" => "-"]; - } - } else if ($credit != '') { - // Decrease this Accounts Receivable's value - $new_balance = $old_balance - (int)$credit; - $affected_amount = $credit; - $action = "deduction"; - - // Pay off an invoice tagged to the patient category - if ($type_id == 4 && $name_id != '') { - - $uncleared_invoices = DB::table('patient_category_invoices')->where('invoice_generated', 1) - ->where('status', 0) - ->where('patient_category', (int)$name_id) - ->where('invoice_number', $invoice_numbers[$x]) - ->whereNull('balance_remaining') - ->get(); - - if (count($uncleared_invoices) < 1) { - $uncleared_invoices = DB::table('patient_category_invoices')->where('invoice_generated', 1) - ->where('status', 1) - ->where('patient_category', (int)$name_id) - ->where('invoice_number', $invoice_numbers[$x]) - ->where('balance_remaining', '>=', (int)$credit) - ->get(); - - if (count($uncleared_invoices) > 0) { - $invoice_number = $invoice_numbers[$x]; - $amount_to_clear_off = 0; - $invoice_date = $uncleared_invoices[0]->invoice_date; - - if (is_null($credit)) { - $amount_being_paid = (int)$debit; - } else { - $amount_being_paid = (int)$credit; - } - - foreach ($uncleared_invoices as $invoice) { - $amount_to_clear_off += (int)$invoice->patient_amount; - } - - if ($amount_being_paid > $amount_to_clear_off) { - flash("Amount to clear off invoice is more than the required amount!")->error(); - return redirect('journals'); - } else { - $affected_tables_by_the_journal[] = $this->pay_off_patient_category_invoice($request->journal_date, $journal_number, $invoice_number, $name_id, $logged_in_user, $amount_being_paid, $amount_to_clear_off, $invoice_date); - } - } else { - flash("No uncleared Patient Category Invoice found for Patient Category: " . get_name($name_id, 'id', 'name', 'patient_categories') . " and invoice number: " . $invoice_numbers[$x] . "!")->error(); - } - } else { - if (count($uncleared_invoices) > 0) { - $invoice_number = $invoice_numbers[$x]; - $amount_to_clear_off = 0; - $invoice_date = $uncleared_invoices[0]->invoice_date; - - if (is_null($credit)) { - $amount_being_paid = (int)$debit; - } else { - $amount_being_paid = (int)$credit; - } - - foreach ($uncleared_invoices as $invoice) { - $amount_to_clear_off += $invoice->patient_amount; - } - - if ($amount_being_paid > $amount_to_clear_off) { - flash("Amount to clear off invoice is more than the required amount!")->error(); - return redirect('journals'); - } else { - $affected_tables_by_the_journal[] = $this->pay_off_patient_category_invoice($request->journal_date, $journal_number, $invoice_number, $name_id, $logged_in_user, $amount_being_paid, $amount_to_clear_off, $invoice_date); - } - } else { - flash("No uncleared Patient Category Invoice found for Patient Category: " . get_name($name_id, 'id', 'name', 'patient_categories') . " and invoice number: " . $invoice_numbers[$x] . "!")->error(); - } - } - } - - // Pay off a patient debt if a customer has been tagged. This is under Finance->Reports->Debtors Report - if ($type_id == 1 && $name_id != '') { - $new_receipt_number = $this->receiptService->createReceipt("journals-payment of patient debt"); - - $debt_record = Debtor::where('patient_id', $name_id)->where(function ($query) { - $query->whereNull('balance_remaining') - ->orWhere('balance_remaining', '!=', 0); - })->first(); - - $debtorPayment = $this->debtorsService->createDebtorPayment($debt_record->id, $new_receipt_number, $credit, date('d-m-Y'), - ($debt_record->balance - $credit), "Journal (" . $request->journal_number . ") Credit - " . $account_name, 0); - - if ($debtorPayment) { - $this->debtorsService->clearDebt($debt_record->id); - flash("Payment Received Successfully")->success(); - $affected_tables_by_the_journal[] = ["table" => "debtor_payments","record_id" => $payment->id, "amount" => "-", "action" => "insertion", "table_column" => "-"]; - $affected_tables_by_the_journal[] = ["table" => "track_receipts","record_id" => $track_receipt->id, "amount" => "-", "action" => "insertion", "table_column" => "-"]; - } else { - flash("Payment Not Received")->error(); - } - - //record cleared debt - $affected_tables_by_the_journal[] = ["table" => "debtors", "record_id" => $debt_record->id, "amount" => $affected_amount, "action" => "cleared_debt", "table_column" => "-"]; - } - } - - // Update the specific Chart of Accounts balance - ChartOfAccount::where('id', $account)->update(['balance' => (int)$new_balance]); - $affected_tables_by_the_journal[] = ["table" => "chart_of_accounts","record_id" => $account, "amount" => $affected_amount, "action" => $action, "table_column" => "balance"]; - } - - // e.g. Cost of Goods - else { - flash("Journal entries for `" . get_name($account_type, 'id', 'name', 'account_types') . "` not yet implemented!")->error(); - } - } - - $affected_tables_created_array = $this->create_an_array_of_affected_tables_by_journal($affected_tables_by_the_journal); - - $journal->affected_tables = implode(",", $affected_tables_created_array[0]); - $journal->table_records_affected = implode(",", $affected_tables_created_array[1]); - $journal->table_amount_affected = implode(",", $affected_tables_created_array[2]); - $journal->table_action_affected = implode(",", $affected_tables_created_array[3]); - $journal->table_column_affected = implode(",", $affected_tables_created_array[4]); - - if ($journal->save()) { - flash("Journal saved successfully")->success(); - } else { - flash('Failed to save Journal.')->error(); - } - return redirect('journals'); - } - } - } - - private function save_bill($name_id, $bill_date, $memo, $amount, $payable_account, $item_account, $payment_item, $logged_in_user, $journal_number) - { - $affected_tables_by_the_journal = []; - - $bill = new HospitalBill; - $bill->vendor = $name_id; - $bill->bill_date = Carbon::parse($bill_date)->toDateString(); - $bill->bill_memo = $memo; - $bill->bill_number = 'Journal (' . $journal_number . ')'; - $bill->total_amount = $amount; - $bill->balance = $amount; - $bill->item_accounts = $item_account; - $bill->item_ids = $payment_item; - $bill->item_quantities = '' . 1; // string - $bill->item_subtotals = '' . $amount; - $bill->payable_account = '' . $payable_account; - $bill->created_by = $logged_in_user; - $bill->bill_type = 'PAY'; - - $bill->balance_history = serialize(array()); - $bill->receipt_history = serialize(array()); - $bill->staff_incharge_history = serialize(array()); - $bill->amount_paid_history = serialize(array()); - $bill->date_paid_history = serialize(array()); - - $track_invoice = new TrackInvoice; - $track_invoice->reason = $memo; - $track_invoice->created_by = $logged_in_user; - $track_invoice->save(); - - if ($bill->save() && $track_invoice->save()) { - $affected_tables_by_the_journal[] = ["table" => "hospital_bills", "record_id" => $bill->id, "amount" => "-", "action" => "insertion", "table_column" => "-"]; - $affected_tables_by_the_journal[] = ["table" => "track_invoices", "record_id" => $track_invoice->id, "amount" => "-", "action" => "insertion", "table_column" => "-"]; - - flash('A bill worth ' . ugandan_shillings((int)$amount) . ' for Supplier: ' . get_name($name_id, 'id', 'name', 'suppliers') . ' has successfully been saved.')->success(); - } else { - flash('Failed to save Bill.')->error(); - } - - return $affected_tables_by_the_journal; - } - - private function store_bill_payment($bill_id, $payment_date, $memo, $amount_to_pay, $payable_account, $logged_in_user) - { - $affected_tables_by_the_journal = []; - - $hospital_bill = HospitalBill::find($bill_id); - - $track_receipt = new TrackReceipt; - $track_receipt->reason = "Bill Payment on Bill number " . $hospital_bill->bill_number; - $track_receipt->created_by = $logged_in_user; - $track_receipt->save(); - $receipt_number = sprintf("%04u", $track_receipt->id); - - $bill_balance = ($hospital_bill->balance != null) ? ($hospital_bill->balance - $amount_to_pay) : ($hospital_bill->total_amount - $amount_to_pay); - $hospital_bill->balance = $bill_balance; - - $date_paid_history = unserialize($hospital_bill->date_paid_history); - array_push($date_paid_history, $payment_date); - $date_paid_serial = serialize($date_paid_history); - - $amount_paid_history = unserialize($hospital_bill->amount_paid_history); - array_push($amount_paid_history, $amount_to_pay); - $amount_paid_serial = serialize($amount_paid_history); - - $staff_incharge_history = unserialize($hospital_bill->staff_incharge_history); - array_push($staff_incharge_history, $logged_in_user); - $staff_in_charge_serial = serialize($staff_incharge_history); - - $receipt_history = unserialize($hospital_bill->receipt_history); - array_push($receipt_history, $receipt_number); - $receipt_serial = serialize($receipt_history); - - $balance_history = unserialize($hospital_bill->balance_history); - array_push($balance_history, $bill_balance); - $balance_serial = serialize($balance_history); - - $hospital_bill->amount_paid_history = $amount_paid_serial; - $hospital_bill->date_paid_history = $date_paid_serial; - $hospital_bill->staff_incharge_history = $staff_in_charge_serial; - $hospital_bill->receipt_history = $receipt_serial; - $hospital_bill->balance_history = $balance_serial; - - $hospital_bill->payment_status = 1; - $hospital_bill->updated_by = $logged_in_user; - $hospital_bill->save(); - - $affected_tables_by_the_journal[] = ["table" => "hospital_bills", "record_id" => $hospital_bill->id, "amount" => $amount_to_pay, "action" => "deduction", "table_column" => "balance"]; - - flash("Payment of " . ugandan_shillings($amount_to_pay) . " made on Bill of Number: " . $hospital_bill->bill_number)->success(); - - $this->clear_bill_with_tagged_payable($bill_id, $payable_account); - - $track_receipt = new TrackReceipt; - $track_receipt->reason = "Bill Payment on Bill number " . $hospital_bill->bill_number; - $track_receipt->created_by = $logged_in_user; - $track_receipt->save(); - $affected_tables_by_the_journal[] = ["table" => "track_receipts", "record_id" => $track_receipt->id, "amount" => "-", "action" => "insertion", "table_column" => "-"]; - - - $item_id_array = explode(',', $hospital_bill->item_ids); - $items_quantity_array = explode(',', $hospital_bill->item_quantities); - - $payment = new Payment; - for ($x = 0; $x < count($item_id_array); $x++) { - $item_id = $item_id_array[$x]; - - if (is_numeric($item_id)) { - $payment->item_id = $item_id; - $payment->unit_cost = get_name($item_id, 'id', 'unit_cost', 'payment_items'); - $payment->expense_account = get_name($item_id, 'id', 'account_id', 'payment_items'); - } - $payment->amount = $amount_to_pay; - $payment->quantity = is_numeric($items_quantity_array[$x]) ? $items_quantity_array[$x] : null; - $payment->memo = $memo; - $payment->transaction_id = $receipt_number; - $payment->created_by = $logged_in_user; - $payment->expense_date = Carbon::parse($payment_date)->toDateTimeString(); - $payment->bill_id = $bill_id; - $payment->save(); - $affected_tables_by_the_journal[] = ["table" => "payments", "record_id" => $payment->id, "amount" => "-", "action" => "insertion", "table_column" => "-"]; - } - - return $affected_tables_by_the_journal; - } - - private function clear_bill_with_tagged_payable($id, $payable_account) - { - $bill = HospitalBill::find($id); - $payable_account_array = []; - $item_amount_paid = []; - $item_balance_remaining = []; - $deductions = []; - $items_array = explode(',', $bill->item_ids); - $items_subtotal_array = explode(',', $bill->item_subtotals); - - $bill_balance = $bill->balance != null ? $bill->balance : $bill->total_amount; - $bill_total = $bill->total_amount; - $bill_amount_paid = (is_null($bill_balance) ? 0 : (int)$bill_total - (int)$bill_balance); - - for ($x = 0; $x < count($items_array); $x++) { - - $new_amount = $bill_amount_paid - array_sum($deductions); - - $payable_account_array[] = $payable_account; - - if (is_null($bill_balance)) { - - $item_amount_paid[] = 0; - $item_balance_remaining[] = $items_subtotal_array[$x]; - } else if ($bill_balance == 0) { - - $item_amount_paid[] = $items_subtotal_array[$x]; - $item_balance_remaining[] = 0; - } else { - - if ($items_subtotal_array[$x] <= $new_amount) { - - $item_amount_paid[] = $items_subtotal_array[$x]; - $item_balance_remaining[] = 0; - $deductions[] = $items_subtotal_array[$x]; - } else { - - $item_amount_paid[] = $new_amount; - $item_balance_remaining[] = (int)$items_subtotal_array[$x] - (int)$new_amount; - $deductions[] = $new_amount; - } - } - } - - HospitalBill::where('id', $id)->update([ - 'payable_account' => implode(',', $payable_account_array), - 'item_amount_paid' => implode(',', $item_amount_paid), - 'item_balance_remaining' => implode(',', $item_balance_remaining) - ]); - } - - private function pay_off_patient_category_invoice($journal_date, $journal_number, $invoice_number, $name_id, $logged_in_user, $amount_to_pay, $amount_to_clear_off, $invoice_date) - { - // Identify undeposited funds from that day - $undeposited_funds = get_latest_banking_record_based_on_transaction_date(get_name("undeposited_funds", "slug", "id", "chart_of_accounts"), $journal_date); - - // Track the receipt for this payment - $track_receipt = new TrackReceipt; - $track_receipt->reason = get_name($name_id, 'id', 'name', 'patient_categories'); - $track_receipt->created_by = $logged_in_user; - $track_receipt->save(); - $affected_tables_by_the_journal[] = ["table" => "track_receipts", "record_id" => $track_receipt->id, "amount" => "-", "action" => "insertion", "table_column" => "-"]; - - $new_receipt_number = sprintf("%04u", $track_receipt->id); - - // pay directly to the cashier - $cashier_income = new CashierIncome; - $cashier_income->cashier_id = $logged_in_user; - $cashier_income->brought_by = $logged_in_user; - $cashier_income->expected_amount = $amount_to_pay; - $cashier_income->reason = "Received from patient category invoices via Journal (" . $journal_number . ")"; - $cashier_income->amount = $amount_to_pay; - $cashier_income->balance = 0; - $cashier_income->receipt_number = $new_receipt_number; - $cashier_income->previous_balance = (int)$undeposited_funds->account_balance; - $cashier_income->account_balance = (int)$undeposited_funds->account_balance + $amount_to_pay; - $cashier_income->save(); - - $affected_tables_by_the_journal[] = ["table" => "cashier_incomes", "record_id" => $cashier_income->id, "amount" => "-", "action" => "insertion", "table_column" => "-"]; - - // A key identifier, I presume - $cashier_income_id = $cashier_income->id; - - $transaction_date = Carbon::parse($journal_date)->toDateString(); - $account_balance_after_payment = (int)$undeposited_funds->account_balance + $amount_to_pay; - - // Populate the banking table - $last_insert_id = capture_bank_record( - 'DEPOSIT', - $transaction_date, - 10, - '', - $account_balance_after_payment, - $amount_to_pay, - 0, - "Deposit to undeposited funds", - $new_receipt_number - ); - $affected_tables_by_the_journal[] = ["table" => "banking", "record_id" => $last_insert_id, "amount" => "-", "action" => "insertion", "table_column" => "-"]; - - update_banking_record_balances($transaction_date, 10, $last_insert_id, $account_balance_after_payment); - - // determine if a payment was already made - $past_invoice_payment = InvoicePayment::where('invoice_number', $invoice_number)->first(); - if (is_null($past_invoice_payment)) { - - $other_parameters = [ - 'received_id' => $cashier_income_id, - 'received_amount' => $amount_to_pay, - ]; - - $invoice_payment = $this->invoicesService->saveInvoicePayment($invoice_number, $amount_to_clear_off, $amount_to_pay, ($amount_to_clear_off - $amount_to_pay), - $journal_date, $name_id); - $this->invoicesService->saveInvoicePaymentRecord($invoice_number, $new_receipt_number, $amount_to_pay, $journal_date, - 0, null, $other_parameters); - - $affected_tables_by_the_journal[] = ["table" => "invoice_payments", "record_id" => $invoice_payment->id, "amount" => "-", "action" => "insertion", "table_column" => "-"]; - - // Get that invoice by it's id! - $patient_category_invoice = PatientCategoryInvoice::where(['invoice_number' => $invoice_number]) - ->update(['status' => 1]); - - $affected_tables_by_the_journal[] = ["table" => "patient_category_invoices", "record_id" => $invoice_number, "amount" => "-", "action" => "updated", "table_column" => "status"]; - - update_account_balance_by_id(10, $amount_to_pay); - $affected_tables_by_the_journal[] = ["table" => "chart_of_accounts", "record_id" => 10, "amount" => $amount_to_pay, "action" => "addition", "table_column" => "balance"]; - - if (!is_null($patient_category_invoice)) { - $this->invoicesService->clearInvoice($invoice_number); - //record cleared invoice number - $affected_tables_by_the_journal[] = ["table" => "patient_category_invoices", "record_id" => $invoice_number, "amount" => $amount_to_pay, "action" => "cleared_invoice", "table_column" => "-"]; - } - - flash("Invoice for Patient Category: " . get_name($name_id, 'id', 'name', 'patient_categories') . " and invoice number: " . $invoice_number . " cleared off (" . ugandan_shillings($amount_to_pay) . ") with a balance of " . ugandan_shillings($payment->balance))->success(); - } else { - // perform an update - $this->update_patient_category_invoice_payment($past_invoice_payment, $new_receipt_number, $track_receipt, $cashier_income_id, $amount_to_pay, $name_id, $journal_date, $logged_in_user); - } - - return $affected_tables_by_the_journal; - } - - public function update_patient_category_invoice_payment(InvoicePayment $past_invoice_payment, $new_receipt_number, $track_receipt, $cashier_income_id, $amount_to_pay, $name_id, $journal_date, $logged_in_user) - { - $date_paid_history = unserialize($past_invoice_payment->date_paid_history); - array_push($date_paid_history, $journal_date); - $date_paid_history = serialize($date_paid_history); - - $amount_paid_history = unserialize($past_invoice_payment->amount_paid_history); - array_push($amount_paid_history, $amount_to_pay); - $amount_paid_history = serialize($amount_paid_history); - - $staff_incharge_history = unserialize($past_invoice_payment->staff_incharge_history); - array_push($staff_incharge_history, $logged_in_user); - $staff_incharge_history = serialize($staff_incharge_history); - - $receipt_number = unserialize($past_invoice_payment->receipt_number); - array_push($receipt_number, $new_receipt_number); - $receipt_number = serialize($receipt_number); - - if (!is_null($past_invoice_payment->received_id_history)) { - $received_id_history = unserialize($past_invoice_payment->received_id_history); - array_push($received_id_history, $cashier_income_id); - $received_id_history = serialize($received_id_history); - } else { - $received_id_history = serialize(array($cashier_income_id)); - } - - if (!is_null($past_invoice_payment->received_amount_history)) { - $received_amount_history = unserialize($past_invoice_payment->received_amount_history); - array_push($received_amount_history, $amount_to_pay); - $received_amount_history = serialize($received_amount_history); - } else { - $received_amount_history = serialize(array($amount_to_pay)); - } - - // Get that invoice by it's id! - PatientCategoryInvoice::where(['id' => $past_invoice_payment->id]) - ->update(['status' => 1, 'received' => $cashier_income_id]); - - $affected_tables_by_the_journal[] = ["table" => "patient_category_invoices", "record_id" => $past_invoice_payment->id, "amount" => "-", "action" => "updated_status_and_received", "table_column" => "received"]; - - $this->invoicesService->clearInvoice($past_invoice_payment->invoice_number); - - //record cleared invoice number - $affected_tables_by_the_journal[] = ["table" => "patient_category_invoices", "record_id" => $past_invoice_payment->invoice_number, "amount" => $amount_to_pay, "action" => "cleared_invoice", "table_column" => "-"]; - - $payment = InvoicePayment::where('id', $past_invoice_payment->id) - ->update( - [ - 'total' => $past_invoice_payment->total, - 'amount_paid' => $past_invoice_payment->amount_paid + $amount_to_pay, - 'balance' => $past_invoice_payment->balance - $amount_to_pay, - 'receipt_number' => $receipt_number, - 'amount_paid_history' => $amount_paid_history, - 'staff_incharge_history' => $staff_incharge_history, - 'date_paid_history' => $date_paid_history, - 'received_id_history' => !is_null($cashier_income_id) ? $received_id_history : null, - 'received_amount_history' => !is_null($cashier_income_id) ? $received_amount_history : null, - 'received' => is_null($cashier_income_id) ? null : $cashier_income_id, - 'banked_history' => is_null($past_invoice_payment->banked_history) ? null : $past_invoice_payment->banked_history, - 'banked' => is_null($past_invoice_payment->banked) ? null : $past_invoice_payment->banked, - ] - ); - $affected_tables_by_the_journal[] = ["table" => "invoice_payments", "record_id" => $past_invoice_payment->id, "amount" => $amount_to_pay, "action" => "addition", "table_column" => "amount_paid"]; - - update_account_balance_by_id(10, $amount_to_pay); - $affected_tables_by_the_journal[] = ["table" => "chart_of_accounts", "record_id" => 10, "amount" => $amount_to_pay, "action" => "addition", "table_column" => "balance"]; - - $this->invoicesService->clearInvoice($past_invoice_payment->invoice_number); - //record cleared invoice number - $affected_tables_by_the_journal[] = ["table" => "patient_category_invoices", "record_id" => $past_invoice_payment->invoice_number, "amount" => $amount_to_pay, "action" => "cleared_invoice", "table_column" => "-"]; - - $track_receipt->save(); - $affected_tables_by_the_journal[] = ["table" => "track_receipts", "record_id" => $track_receipt->id, "amount" => "-", "action" => "insertion", "table_column" => "-"]; - - flash("Invoice for Patient Category: " . get_name($name_id, 'id', 'name', 'patient_categories') . " and invoice number: " . $past_invoice_payment->invoice_number . " updated with payment (" . ugandan_shillings($amount_to_pay) . ") and a balance of " . ugandan_shillings($past_invoice_payment->balance - $amount_to_pay))->success(); - - return $affected_tables_by_the_journal; - } - - public function create_an_array_of_affected_tables_by_journal($affected_tables_by_the_journal) - { - $tables_affected = []; - $table_records_affected = []; - $table_amount_affected = []; - $table_action_affected = []; - $table_column_affected = []; - //cater for 4 levels matrix - foreach ($affected_tables_by_the_journal as $effect) { - foreach ($effect as $key => $value) { - if (is_array($value)) { - foreach ($value as $key1 => $value1){ - if (is_array($value1)) { - foreach ($value1 as $key2 => $value2){ - if (is_array($value2)) { - foreach ($value2 as $key3 => $value3){ - if ($key3 == "table") { - $tables_affected[] = $value3; - } - - if ($key3 == "record_id") { - $table_records_affected[] = $value3; - } - - if ($key3 == "amount") { - $table_amount_affected[] = $value3; - } - - if ($key3 == "action") { - $table_action_affected[] = $value3; - } - - if ($key3 == "table_column") { - $table_column_affected[] = $value3; - } - } - } else { - if ($key2 == "table") { - $tables_affected[] = $value2; - } - - if ($key2 == "record_id") { - $table_records_affected[] = $value2; - } - - if ($key2 == "amount") { - $table_amount_affected[] = $value2; - } - - if ($key2 == "action") { - $table_action_affected[] = $value2; - } - - if ($key2 == "table_column") { - $table_column_affected[] = $value2; - } - } - } - } else { - if ($key1 == "table") { - $tables_affected[] = $value1; - } - - if ($key1 == "record_id") { - $table_records_affected[] = $value1; - } - - if ($key1 == "amount") { - $table_amount_affected[] = $value1; - } - - if ($key1 == "action") { - $table_action_affected[] = $value1; - } - - if ($key1 == "table_column") { - $table_column_affected[] = $value1; - } - } - } - } else{ - if ($key == "table") { - $tables_affected[] = $value; - } - - if ($key == "record_id") { - $table_records_affected[] = $value; - } - - if ($key == "amount") { - $table_amount_affected[] = $value; - } - - if ($key == "action") { - $table_action_affected[] = $value; - } - - if ($key == "table_column") { - $table_column_affected[] = $value; - } - } - } - } - - $array_returned = [$tables_affected, $table_records_affected, $table_amount_affected, $table_action_affected, $table_column_affected]; - - return $array_returned; - } - - public function delete_journal(Request $request, $id) - { - $status = false; - $journal_to_delete = Journal::find($id); - - $affected_tables_by_the_journal = explode(",", $journal_to_delete->affected_tables); - $table_records_affected = explode(",", $journal_to_delete->table_records_affected); - $table_amount_affected = explode(",", $journal_to_delete->table_amount_affected); - $table_action_affected = explode(",", $journal_to_delete->table_action_affected); - $table_column_affected = explode(",", $journal_to_delete->table_column_affected); - - // To Note: - // create an array of affected tables, amounts, operation done - - for ($i=0; $i < count($affected_tables_by_the_journal); $i++) { - if ($table_action_affected[$i] == "addition") { - DB::table($affected_tables_by_the_journal[$i])->where('id', $table_records_affected[$i])->decrement($table_column_affected[$i], $table_amount_affected[$i]); - } elseif ($table_action_affected[$i] == "deduction") { - DB::table($affected_tables_by_the_journal[$i])->where('id', $table_records_affected[$i])->increment($table_column_affected[$i], $table_amount_affected[$i]); - } elseif ($table_action_affected[$i] == "insertion") { - /***** if bank was affected, re-run the bank register *****/ - if ($affected_tables_by_the_journal[$i] == "banking") { - $inserted_bank_id = $table_records_affected[$i]; - $banking_record = Banking::withTrashed()->find($inserted_bank_id); - } - /*** first exit for now if journal was banking *****/ - - DB::table($affected_tables_by_the_journal[$i])->where('id', '=', $table_records_affected[$i])->delete(); - - /**** come back if it was banking ****/ - if ($affected_tables_by_the_journal[$i] == "banking") { - if ($banking_record) { - $this->re_run_bank_register($journal_to_delete->journal_date, $banking_record->bank); - } - } - /** end of banking rollback **/ - } - - // if patient_category_invoices remember to update the status to 0 and remove the received column value to null - if ($affected_tables_by_the_journal[$i] == "patient_category_invoices" && $table_action_affected[$i] == "cleared_invoice") { - $invoice_number = $table_records_affected[$i]; - $invoice_amount_to_reverse = $table_amount_affected[$i]; - $this->invoicesService->reverseClearedInvoice($invoice_number, $invoice_amount_to_reverse); - } - - if ($affected_tables_by_the_journal[$i] == "debtors" && $table_action_affected[$i] == "cleared_debt") { - $debt_id = $table_records_affected[$i]; - $amount_to_reverse = $table_amount_affected[$i]; - $this->debtorsService->reverseDebt($debt_id); - } - } - - $journal_to_delete->delete(); - flash('journal number '.$journal_to_delete->journal_number.' has been deleted')->success(); - return redirect('journals_records'); - } - - public function check_if_journal_can_be_deleted(Request $request) - { - $journal_id = $request->journal_id; - $journal_id = (int)$journal_id; - $message = ""; - - $journal = Journal::find($journal_id); - - $journal_affected_tables_array = explode(",", $journal->affected_tables); - $is_journal_deleteable = true; - - $tables_records_affected_array = explode(",", $journal->table_records_affected); - - if (in_array("invoice_payments", $journal_affected_tables_array)) { - $item_position = array_search("invoice_payments", $journal_affected_tables_array); - - $invoice_payment_id_affected = $tables_records_affected_array[$item_position]; - - $invoice_payment = InvoicePayment::find($invoice_payment_id_affected); - - $cashier_income_record_id = $invoice_payment->received; //get record of undeposited fund - $cashier_income_record = CashierIncome::find($cashier_income_record_id); - - //check if this money was banked and refuse deletion - if (!is_null($cashier_income_record->banked)) { - $is_journal_deleteable = false; - $message = "Journal can not be deleted because it has an invoice with banked money"; - } - } - - if (in_array("hospital_bills", $journal_affected_tables_array)) { - $item_position1 = array_search("hospital_bills", $journal_affected_tables_array); - - $hospital_bills_id_affected = $tables_records_affected_array[$item_position1]; - - $hospital_bill = HospitalBill::find($hospital_bills_id_affected); - $amount_paid_history_array = unserialize($hospital_bill->amount_paid_history); - if (count($amount_paid_history_array) > 0) { - $is_journal_deleteable = false; - $message = "Journal can not be deleted because it has a bill with a payment"; - } - } - - if (in_array("banking", $journal_affected_tables_array)) { - $item_position1 = array_search("banking", $journal_affected_tables_array); - - $banking_id_affected = $tables_records_affected_array[$item_position1]; - - $banking_record = Banking::find($banking_id_affected); - if ($banking_record) { - if ($banking_record->reconciled != 0) { - $is_journal_deleteable = false; - $message = "Journal can not be deleted because the bank transaction has been reconciled."; - } - } - } - - return [$is_journal_deleteable, $message]; - } - - /** - * Recursive function to verify that a Journal number is not already in use. - * For example, when two users on different PCs open the Journals screen, - * they'll both see the same journal number - * - * @param $journal_number // auto-incremented int displayed on the Journal creation screen - * @return $journal_number The validated journal number integer - */ - public function validate_journal_number($journal_number) { - $journal_duplicate = DB::table('journals')->orderByDesc('journal_number')->where('journal_number', $journal_number)->first(); - if ($journal_duplicate != null) { - return $this->validate_journal_number($journal_number + 1); - } else { - return $journal_number; - } - } - - public function re_run_bank_register($journal_date, $bank_account_id) - { - $orderByTransIdQuery = "CAST(trans_id AS DECIMAL(10,0)) ASC"; - - $bank_record = Banking::where('bank', $bank_account_id)->whereNull('deleted_at')->whereDate('trans_date', '<', $journal_date)->orderBy('id', 'desc')->first(); - if ($bank_record) { - $banking_records = Banking::where('bank', $bank_account_id)->where('trans_date', '>', Carbon::parse($bank_record->trans_date)->toDateString()) - ->whereNull('deleted_at') - ->where('id', '!=', $bank_record->id) - ->orderBy('trans_date', 'asc') - ->orderByRaw($orderByTransIdQuery) - ->get(); - - $prev_balance = $bank_record->account_balance; - foreach ($banking_records as $record) { - $prev_balance = $prev_balance + (int)$record->credit - (int)$record->debit; - Banking::where('id', $record->id)->update(['account_balance' => $prev_balance]); - } - } else{ - //if there is not record that whose transaction date is less than the journal date, do this - $banking_records = Banking::where('bank', $bank_account_id)->where('trans_date', '>', Carbon::parse($journal_date)->toDateString()) - ->whereNull('deleted_at') - ->where('id', '!=', $bank_record->id) - ->orderBy('trans_date', 'asc') - ->orderByRaw($orderByTransIdQuery) - ->get(); - - $prev_balance = 0; - foreach ($banking_records as $record) { - $prev_balance = $prev_balance + (int)$record->credit - (int)$record->debit; - Banking::where('id', $record->id)->update(['account_balance' => $prev_balance]); - } - } - } -} diff --git a/docker/statistics/Modules/Journals/Providers/JournalsServiceProvider.php b/docker/statistics/Modules/Journals/Providers/JournalsServiceProvider.php deleted file mode 100644 index 9c225f7c..00000000 --- a/docker/statistics/Modules/Journals/Providers/JournalsServiceProvider.php +++ /dev/null @@ -1,112 +0,0 @@ -registerTranslations(); - $this->registerConfig(); - $this->registerViews(); - $this->loadMigrationsFrom(module_path($this->moduleName, 'Database/Migrations')); - } - - /** - * Register the service provider. - * - * @return void - */ - public function register() - { - $this->app->register(RouteServiceProvider::class); - } - - /** - * Register config. - * - * @return void - */ - protected function registerConfig() - { - $this->publishes([ - module_path($this->moduleName, 'Config/config.php') => config_path($this->moduleNameLower . '.php'), - ], 'config'); - $this->mergeConfigFrom( - module_path($this->moduleName, 'Config/config.php'), $this->moduleNameLower - ); - } - - /** - * Register views. - * - * @return void - */ - public function registerViews() - { - $viewPath = resource_path('views/modules/' . $this->moduleNameLower); - - $sourcePath = module_path($this->moduleName, 'Resources/views'); - - $this->publishes([ - $sourcePath => $viewPath - ], ['views', $this->moduleNameLower . '-module-views']); - - $this->loadViewsFrom(array_merge($this->getPublishableViewPaths(), [$sourcePath]), $this->moduleNameLower); - } - - /** - * Register translations. - * - * @return void - */ - public function registerTranslations() - { - $langPath = resource_path('lang/modules/' . $this->moduleNameLower); - - if (is_dir($langPath)) { - $this->loadTranslationsFrom($langPath, $this->moduleNameLower); - $this->loadJsonTranslationsFrom($langPath); - } else { - $this->loadTranslationsFrom(module_path($this->moduleName, 'Resources/lang'), $this->moduleNameLower); - $this->loadJsonTranslationsFrom(module_path($this->moduleName, 'Resources/lang')); - } - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides() - { - return []; - } - - private function getPublishableViewPaths(): array - { - $paths = []; - foreach (\Config::get('view.paths') as $path) { - if (is_dir($path . '/modules/' . $this->moduleNameLower)) { - $paths[] = $path . '/modules/' . $this->moduleNameLower; - } - } - return $paths; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/Journals/Providers/RouteServiceProvider.php b/docker/statistics/Modules/Journals/Providers/RouteServiceProvider.php deleted file mode 100755 index 3d3e0c0e..00000000 --- a/docker/statistics/Modules/Journals/Providers/RouteServiceProvider.php +++ /dev/null @@ -1,68 +0,0 @@ -mapApiRoutes(); - $this->mapWebRoutes(); - } - - /** - * Define the "web" routes for the application. - * - * These routes all receive session state, CSRF protection, etc. - * - * @return void - */ - protected function mapWebRoutes() - { - Route::middleware('web') - ->namespace($this->namespace) - ->group(module_path('Journals', '/Routes/web.php')); - } - - /** - * Define the "api" routes for the application. - * - * These routes are typically stateless. - * - * @return void - */ - protected function mapApiRoutes() - { - Route::prefix('api') - ->middleware('api') - ->namespace($this->namespace) - ->group(module_path('Journals', '/Routes/api.php')); - } -} diff --git a/docker/statistics/Modules/Journals/Resources/views/journals/index.blade.php b/docker/statistics/Modules/Journals/Resources/views/journals/index.blade.php deleted file mode 100755 index 6c00fac1..00000000 --- a/docker/statistics/Modules/Journals/Resources/views/journals/index.blade.php +++ /dev/null @@ -1,590 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('finance.journals') }}

    -
    - -
    - -@include('journals::journals.menu') -@include('flash::message') -
    -
    -
    - - {{ Form::open(['method'=>'post','route' => 'journals.create']) }} -
    - -
    -
    -
    - {{ Form::label('journal_date', __('finance.journal_date')) }} -
    - {{ Form::text('journal_date', '', ['class'=>'form-control required compulsory', 'required', 'readonly', 'id'=>'journal_date']) }} - -
    -
    -
    -
    - -
    - -
    -
    -
    - {{ Form::label('journal_number', __('finance.journal_number')) }} - {{ Form::text('journal_number', $journal_number, ['class'=>'form-control required compulsory', 'required', 'readonly', 'id'=>'journal_number']) }} -
    -
    -
    - -
    -
    -
    -
    -
    - - - - - - - - @php - $option_accounts = ""; - foreach ($accounts as $account) { - $option_accounts .= ""; - } - - $option_types = ""; - $option_types .= ""; - $option_types .= ""; - $option_types .= ""; - $option_types .= ""; - $option_types .= ""; - - $option_customers = ""; - foreach($customers as $customer){ - $option_customers .= ""; - } - - $option_suppliers = ""; - foreach ($suppliers as $supplier){ - $option_suppliers .= ""; - } - - $option_employees = ""; - foreach ($employees as $employee){ - $option_employees .= ""; - } - - $option_patient_categories = ""; - foreach ($patient_categories as $category){ - $option_patient_categories .= ""; - } - - $option_payment_items = ""; - foreach ($payment_items as $payment_item){ - $option_payment_items .= ""; - } - $back_date = \Streamline\Models\HospitalInformation::first()->pluck('back_date'); - @endphp - - - - - - - - - - - - -
    -
    -
    #
    -
    {{ __('finance.account') }}
    -
    {{ __('finance.debits') }}
    -
    {{ __('finance.credit') }}
    -
    {{ __('finance.description') }}
    -
    {{ __('finance.type') }}
    -
    {{ __('finance.name') }}
    -
    -
    -
    -
    - -
    - -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    - -
    - -
    - -
    - -
    - -
    - -
    - -
    - -
    - -
    -
    - - -
    - - {{--
    -
    - -
    -
    --}} - -
    -
    -
    -
    -
    {{ __('finance.total') }}
    -
    - -
    -
    - -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    - {{ Form::close() }} -
    -
    -
    - -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/Journals/Resources/views/journals/menu.blade.php b/docker/statistics/Modules/Journals/Resources/views/journals/menu.blade.php deleted file mode 100755 index 40dd6ebd..00000000 --- a/docker/statistics/Modules/Journals/Resources/views/journals/menu.blade.php +++ /dev/null @@ -1,6 +0,0 @@ - diff --git a/docker/statistics/Modules/Journals/Resources/views/journals/records.blade.php b/docker/statistics/Modules/Journals/Resources/views/journals/records.blade.php deleted file mode 100755 index 1a998e55..00000000 --- a/docker/statistics/Modules/Journals/Resources/views/journals/records.blade.php +++ /dev/null @@ -1,390 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('finance.journals_records') }}

    -
    -
    - -
    -
    - -@include('journals::journals.menu') - -
    - {{ Form::open(['route' => 'journals.records']) }} -
    -
    -
    - {{ Form::label('created_by', __('finance.staff_member')) }} - {{ Form::select('created_by', $created_by, null, ['class' => 'form-control compulsory','required']) }} -
    -
    -
    -
    - {{ Form::label('date_range', __('finance.select_date')) }} -
    - -
    -
    -
    -
    -
    - -
    -
    - - -
    - -
    -
    -
    - {{ Form::button(__('finance.search'), ['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    - {{ Form::close() }} -
    - -@include('flash::message') - -
    -
    -
    -

    {{ __('finance.export_data_to_copy_csv_pdf_print') }}

    -
    - - - - - - - - - - - - - - - - - - - @if(count($journals) > 0) - @foreach($journals as $journal) - @php - $account_ids = explode(",", $journal->account_ids); - $accounts_text = ""; - for ($i = 0; $i < count($account_ids); $i++) { - $accounts_text .= ($i + 1) . ". " . get_name($account_ids[$i], 'id' , 'name' , 'chart_of_accounts' ) . ". 
    " ; - } - - $debits=explode(",", $journal->debits); - $debits_text = ""; - for ($i = 0; $i < count($debits); $i++) { - $debits_text .= ($i + 1) . ". " . (($debits[$i] !=null) ? ugandan_shillings((int)$debits[$i]) : "" ) . ". 
    " ; - } - - $credits=explode(",", $journal->credits); - $credits_text = ""; - for ($i = 0; $i < count($credits); $i++) { - $credits_text .= ($i + 1) . ". " . (($credits[$i] !=null) ? ugandan_shillings((int)$credits[$i]) : "" ) . ". 
    " ; - } - - $descriptions=explode(",", $journal->descriptions); - $descriptions_text = ""; - for ($i = 0; $i < count($descriptions); $i++) { - $descriptions_text .= ($i + 1) . ". " . $descriptions[$i] . " 
    " ; - } - - $type_ids=explode(",", $journal->type_ids); - $name_ids = explode(",", $journal->name_ids); - $types_text = ""; - $names_text = ""; - for ($i = 0; $i < count($type_ids); $i++) { - if ($type_ids[$i]=='1' ) { - $types_text .=__('finance.customer') . ". 
    " ; - if ($name_ids[$i] !=null) { - $names_text .= ($i + 1) . ". " . get_full_name($name_ids[$i], 'id' , 'first_name' , 'last_name' , 'patients' ) . ". 
    " ; - } else { - $names_text .= ($i + 1) . ". 
    " ; - } - } else if ($type_ids[$i]=='2' ) { - $types_text .=__('finance.supplier') . ". 
    " ; - if ($name_ids[$i] !=null) { - $names_text .= ($i + 1) . ". " . get_name($name_ids[$i], 'id' , 'name' , 'suppliers' ) . ". 
    " ; - } else { - $names_text .= ($i + 1) . ". 
    " ; - } - } else if ($type_ids[$i]=='3' ) { - $types_text .=__('finance.employee') . ". 
    " ; - if ($name_ids[$i] !=null) { - $names_text .=get_full_name($name_ids[$i], 'id' , 'first_name' , 'last_name' , 'users' ) . ". 
    " ; - } else { - $names_text .= ($i + 1) . ". 
    " ; - } - } else if ($type_ids[$i]=='4' ) { - $types_text .=__('finance.patient_categories') . ". 
    " ; - if ($name_ids[$i] !=null) { - $names_text .= ($i + 1) . ". " . get_name($name_ids[$i], 'id' , 'name' , 'patient_categories' ) . ". 
    " ; - } else { - $names_text .= ($i + 1) . ". 
    " ; - } - } else if ($type_ids[$i]=='5' ) { - $types_text .=__('finance.payment_items') . ". 
    " ; - if ($name_ids[$i] !=null) { - $names_text .= ($i + 1) . ". " . get_name($name_ids[$i], 'id' , 'name' , 'payment_items' ) . ". 
    " ; - } else { - $names_text .= ($i + 1) . ". 
    " ; - } - } else { - $types_text .= ($i + 1) . ". 
    " ; - $names_text .= ($i + 1) . ". 
    " ; - } - } - @endphp - - - - - - - - - - - - - - @endforeach - @endif - - - - - - - - - - - - - - - - - -
    {{ __('finance.journal_number') }}{{ __('finance.journal_date') }}{{ __('finance.account') }}{{ __('finance.debits') }}{{ __('finance.credit') }}{{ __('finance.description') }}{{ __('finance.type') }}{{ __('finance.name') }}{{ __('finance.created_by') }}{{ __('finance.date_and_time') }}
    {{ $journal->journal_number }}{{ streamline_date($journal->journal_date) }} - {!! read_more($accounts_text, 'short_accounts' . $journal->journal_number, 'long_accounts' . $journal->journal_number) !!} - - - {!! read_more($debits_text, 'short_debits' . $journal->journal_number, 'long_debits' . $journal->journal_number) !!} - - - {!! read_more($credits_text, 'short_credits' . $journal->journal_number, 'long_credits' . $journal->journal_number) !!} - - - {!! read_more($descriptions_text, 'short_descriptions' . $journal->journal_number, 'long_descriptions' . $journal->journal_number) !!} - - - {!! read_more($types_text, 'short_types' . $journal->journal_number, 'long_types' . $journal->journal_number) !!} - - - {!! read_more($names_text, 'short_names' . $journal->journal_number, 'long_names' . $journal->journal_number) !!} - - {{ get_full_name($journal->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date_time_short($journal->created_at) }} - @if( Auth::user()->can('journals-delete')) - @if(!is_null($journal->affected_tables)) - - @endif - @endif -
    Journal No.Journal DateAccountDebitsCreditDescriptionTypeNameCreated ByDate & TimeAction
    -
    -
    -
    -
    - - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Journals/Routes/api.php b/docker/statistics/Modules/Journals/Routes/api.php deleted file mode 100644 index 2e87f891..00000000 --- a/docker/statistics/Modules/Journals/Routes/api.php +++ /dev/null @@ -1,18 +0,0 @@ -get('/journals', function () { - return "Journals"; -}); diff --git a/docker/statistics/Modules/Journals/Routes/web.php b/docker/statistics/Modules/Journals/Routes/web.php deleted file mode 100644 index cb560043..00000000 --- a/docker/statistics/Modules/Journals/Routes/web.php +++ /dev/null @@ -1,13 +0,0 @@ - ['auth', 'disablebackbutton', 'user-locale','subscription-tracking', 'password-expiry']], function () { - /* journals */ - Route::get('journals', 'JournalController@index')->name('journals'); - Route::post('journals_create', 'JournalController@save')->name('journals.create'); - Route::any('journals_records', 'JournalController@records')->name('journals.records'); - Route::any('journals_delete/{id}', 'JournalController@delete_journal')->name('journals.delete'); - - Route::any('check_if_journal_can_be_deleted', 'JournalController@check_if_journal_can_be_deleted'); -}); diff --git a/docker/statistics/Modules/Journals/bitbucket-pipelines.yml b/docker/statistics/Modules/Journals/bitbucket-pipelines.yml deleted file mode 100644 index e850a8fd..00000000 --- a/docker/statistics/Modules/Journals/bitbucket-pipelines.yml +++ /dev/null @@ -1,19 +0,0 @@ -image: alpine/git:latest - -pipelines: - branches: - main: - - step: - name: Merge To Beta - script: - - git remote set-url origin https://Kabricks:${APP_SECRET}@bitbucket.org/dcsammi/${BITBUCKET_REPO_SLUG} - - git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*" - - git fetch - - git checkout beta - - git merge main - - git commit --amend -m "[skip ci] Merge changes from main" - - git push - - step: - name: Deploy To Test - script: - - echo "Ready to deploy to demo or production!" diff --git a/docker/statistics/Modules/Journals/module.json b/docker/statistics/Modules/Journals/module.json deleted file mode 100644 index c49e5662..00000000 --- a/docker/statistics/Modules/Journals/module.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "Journals", - "alias": "journals", - "description": "Journals", - "keywords": [], - "priority": 0, - "providers": [ - "Modules\\Journals\\Providers\\JournalsServiceProvider" - ], - "files": [] -} diff --git a/docker/statistics/Modules/Maternity/Config/config.php b/docker/statistics/Modules/Maternity/Config/config.php deleted file mode 100644 index 9a925d6b..00000000 --- a/docker/statistics/Modules/Maternity/Config/config.php +++ /dev/null @@ -1,5 +0,0 @@ - 'Maternity' -]; diff --git a/docker/statistics/Modules/Maternity/Http/Controllers/Controller.php b/docker/statistics/Modules/Maternity/Http/Controllers/Controller.php deleted file mode 100755 index 680906b6..00000000 --- a/docker/statistics/Modules/Maternity/Http/Controllers/Controller.php +++ /dev/null @@ -1,13 +0,0 @@ -middleware('auth'); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() - { - // - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - // session to pick where user is from // patient episodes or // /wards/select - Session::put('previous_url', URL::previous()); - } - - /** - * Create new episode for a patient. - * - * @param request object - * @return \Illuminate\Foundation\Application|\Illuminate\Http\RedirectResponse|\Illuminate\Http\Response|\Illuminate\Routing\Redirector - */ - public function create_episode(Request $request) - { - $logged_in_user_id = Auth::id(); - $episode = new PatientEpisode; - - $episode->patient_id = $request->patient_id; - $episode->clinic_id = get_default_hospital_clinic(); - $episode->created_by = $logged_in_user_id; - $episode->updated_by = $logged_in_user_id; - $ward_id = get_name("maternity", "slug", "id", "wards"); - - if ($ward_id != "N/A") { - try { - $episode->save(); - $last_inserted_id = $episode->id; - - // Admit patient in maternity ward - $inpatient = new InpatientInfo; - $inpatient->patient_id = $request->patient_id; - $inpatient->episode_id = $last_inserted_id; - $inpatient->admitted_on = $request->maternity_date; - $inpatient->ward_id = $ward_id; - $inpatient->created_by = Auth::id(); - $inpatient->created_at = Carbon::now(); - $inpatient->save(); - - flash("Patient admitted in MATERNITY")->success(); - return redirect('/patient_episodes/'); - } catch (QueryException $e) { - flash("An error occured!")->error(); - return back()->withInput(); - } - } else { - flash("No ward has been tagged as maternity!")->error(); - return redirect('/patient_episodes/'); - } - } - - /* - * Set a session for the selected episode - */ - public function set_episode_session($episode_id) - { - $set_episode_session = session()->put(['episode_id' => $episode_id]); - return $set_episode_session; - } - - //redirect to route based on user input //edit //show //crate - public function route() - { - - /* - * Check if a consultation is pending and then route it to edit page - * If a consultation is completed, route to the view page - */ - - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $existing_maternity_inpatient_data = MaternityInpatient::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - - if ($existing_maternity_inpatient_data) { - switch ($existing_maternity_inpatient_data->completed) { - case '0': // saved_for_editing - return self::edit_inpatient(); - case '1': // Completed - return self::maternity_admission_details($existing_maternity_inpatient_data->id); - default: // Not created yet - return self::create_inpatient(); - } - } else { - return self::create_inpatient(); - } - } - /* - * Show the form to create maternity inpatient sheet - */ - public function create_inpatient() - { - - - $episode_id = session()->get('episode_id'); - $patient_episode_details = PatientEpisode::find($episode_id); - $diagnoses_patient = DB::table('diagnoses')->orderBy('name', 'asc')->pluck("name", "id"); - $patient_id = $patient_episode_details->patient_id; - $patient = Patient::find($patient_id); - - // fetch patient surgeries - $patient_surgeries = Surgery::leftJoin('users', 'surgeries.surgeon', '=', 'users.id') - ->leftJoin('procedures', 'surgeries.procedure_id', '=', 'procedures.id') - ->where('patient_id', $patient_id) - ->latest('surgeries.created_at')->get(['procedures.name as procedure_name', 'date_surgery_completed', 'users.first_name', 'users.last_name', 'primary_diagnosis', 'other_diagnoses'])->take(5); - - - - // fetch patient consultations // - $patient_consultations = Consultation::leftJoin('users', 'consultations.created_by', '=', 'users.id') - ->leftJoin('diagnoses', 'consultations.primary_diagnosis', '=', 'diagnoses.id') - ->leftJoin('wards', 'consultations.ward_id', '=', 'wards.id') - ->leftJoin('outcomes', 'consultations.outcome_id', '=', 'outcomes.id') - ->where(['patient_id' => $patient_id]) - ->get([ - - 'admitted_on', - 'episode_id', - 'wards.name as ward', - 'diagnoses.name as primary_diagnosis', - 'other_diagnoses', - 'users.first_name', - 'users.last_name', - 'consultations.created_at', - 'outcomes.name as outcome', - - - ]); - - - - // fetch previous consultations for patient - $previous_consultation_inpatient_info = InpatientInfo::leftJoin('diagnoses', 'inpatient_info.primary_diagnosis', '=', 'diagnoses.id') - ->leftJoin('users', 'inpatient_info.discharged_by', '=', 'users.id') - ->leftJoin('wards', 'inpatient_info.ward_id', '=', 'wards.id') - ->leftJoin('triage', 'inpatient_info.episode_id', '=', 'triage.episode_id') - ->leftJoin('consultations', 'inpatient_info.episode_id', '=', 'consultations.episode_id') - ->leftJoin('ordered_investigations', 'inpatient_info.episode_id', '=', 'ordered_investigations.episode_id') - ->leftJoin('ward_treatments', 'inpatient_info.episode_id', '=', 'ward_treatments.episode_id') - ->leftJoin('outcomes', 'inpatient_info.outcome_id', '=', 'outcomes.id') - ->where([['inpatient_info.patient_id', $patient_id], ['inpatient_info.episode_id', '!=', $episode_id]]) - ->where('inpatient_info.created_at', '<', $patient_episode_details->created_at) - ->whereNotNull('inpatient_info.admitted_on') - ->where('consultations.outcome_id', '=', 1) //1 = outcome(admitted) from consultations table - ->latest('inpatient_info.created_at') - ->get( - [ - 'diagnoses.name as primary_diagnosis', - 'inpatient_info.other_diagnoses as other_diagnoses', - 'users.first_name as first_name', - 'consultations.created_at as consultation_date', - 'inpatient_info.created_at as inpatient_info_date', - 'diagnoses.name as primary_diagnosis', - 'inpatient_info.other_diagnoses', - 'outcomes.name as outcome', - 'inpatient_info.episode_id', - 'inpatient_info.admitted_on', - 'inpatient_info.discharged_on', - 'users.first_name as first_name', - 'users.last_name as last_name', - 'wards.name as ward', - 'triage.observations', - 'triage.symptoms as triage_symptoms', - 'triage.symptom_duration as triage_symptom_duration', - 'consultations.symptoms as consultation_symptoms', - 'consultations.symptom_duration as consultation_symptom_duration', - DB::raw("CONCAT(triage.symptoms, '', consultations.symptoms) as symptoms"), - DB::raw("CONCAT(triage.symptom_duration, ', ', consultations.symptom_duration) as symptom_duration"), - ] - - )->take(5); - - - /*check if episode record exists in the db and redirect to show details if it does */ - $existing_maternity_inpatient = MaternityInpatient::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $latest_existing_maternity_inpatient_data = MaternityInpatient::where(['patient_id' => $patient_id])->latest()->first(); - - if (!is_null($existing_maternity_inpatient)) { - flash('Patient already admitted to maternity for this episode')->error(); - return redirect('maternity_admission_details'); - } - - // past obstetric history - $obstetric_history_details = ObstetricHistory::where(['patient_id' => $patient_id])->orderBy('obstetric_date', 'desc')->get(); - - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $marital_statuses = DB::table('marital_statuses')->pluck("name", "id"); - $diagnoses = DB::table('diagnoses')->where('available', 1)->orderBy('name', 'asc')->pluck("name", "id")->prepend('- select -', ''); - $relationships = DB::table('family_relations')->pluck('name', 'id'); - $occupations = DB::table('occupations')->pluck('name', 'id'); - - $patient_categories = DB::table('patient_categories')->where('available', 1)->pluck('name', 'id'); - $drug_categories = DB::table('drug_categories')->get(); - $documents = PatientDocument::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->get(); - //allergies and alerts - $known_patient_allergies = Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->pluck('name', 'id'); - $consultation_id = get_name($episode_id, "id", "consultation_id", "patient_episodes"); - $triage_id = get_name($episode_id, "id", "triage_id", "patient_episodes"); - $triage = Triage::find($triage_id); //this maybe null since one may be admitted straight away - - $anc_registration = AnteNatalClinicRegistration::where(['patient_id' => $patient_id])->orderBy('id', 'desc')->first(); - $latest_existing_delivery_plan = AncDeliveryPlan::where(['patient_id' => $patient_id])->latest()->first(); - $latest_existing_anc_clinic_followup = AnteNatalClinicFollowup::where(['patient_id' => $patient_id])->latest()->first(); - $diagnoses_all = DB::table('diagnoses')->select('id', 'prompts', 'reference_areas', 'reference_names')->get(); - - - $latest_existing_anc_hiv_info = AncVdrlHiv::where(['patient_id' => $patient_id])->latest()->first(); - $latest_existing_antenatal_mother_history = AntenatalMotherHistory::where(['patient_id' => $patient_id])->latest()->first(); - $emergency_signs = EmergencySign::where(['patient_id' => $patient_id, 'triage_id' => $triage_id, 'episode_id' => $episode_id])->get(); - $patient_documents = PatientDocument::where(['patient_id' => $patient_id])->get(); - $diagnosis = Diagnosis::where('available', 1)->orderby('name', 'asc')->get(); - $obstetric_history = ObstetricHistory::where(['patient_id' => $patient_id])->orderBy('obstetric_date', 'desc')->get(); - $existing_blood_transfusion = AnteNatalClinicBloodTransfusion::where(['patient_id' => $patient_id])->first(); - $anc_blood_transfusion = AnteNatalClinicBloodTransfusion::where(['patient_id' => $patient_id])->get(); - - $blood_groups = DB::table('blood_groups')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $referrals = DB::table('referral_hospitals')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $accuracies = DB::table('ante_natal_clinic_accuracies')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $anc_outcomes = DB::table('ante_natal_clinic_outcomes')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $hiv_statuses = ['' => '-- Select --', '0' => 'Negative', '1' => 'Positive', '3' => 'Unknown']; - $maternity_progress = DB::table('maternity_progress')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $family_planning_methods = FamilyPlanningMethod::orderBy('name', 'asc')->pluck("name", "id"); - $family_planning_methods_data = FamilyPlanningMethod::all(); - - $caesarian_sections = CaesarianSection::orderBy('name', 'asc')->pluck("name", "id")->prepend('- Select -', ''); - $uterus_operations = UterusOperation::orderBy('name', 'asc')->pluck("name", "id"); - $gender_based_violence = GenderViolence::orderBy('name', 'asc')->pluck("name", "id"); - - // prep the inpatient investigation arrays and counters - $opd_investigations = []; - $ward_investigations = []; - $symptoms = Symptom::pluck("name", "id"); - - // get all investigations ordered in this episode - $ordered_investigations = OrderedInvestigation::where(['episode_id' => $episode_id])->get(); - // ordered investigations - $ordered_investigations = OrderedInvestigation::where(['patient_id' => $patient_id])->get(); - - // get all results - $investigation_results_order_ids = InvestigationResults::pluck('order_id', 'id')->toArray(); - - foreach ($ordered_investigations as $investigation) { - $investigation_ids = explode(",", $investigation->investigation_id); - $inpatient_status = explode(",", $investigation->for_inpatient); - - // check if results are available for this investigation - if (in_array($investigation->id, $investigation_results_order_ids)) { - // get the key if available - $key = array_search($investigation->id, $investigation_results_order_ids); - - // get the results object - $results = InvestigationResults::find($key); - - // exclude obstetric u/s results - if ($results->result_type != "Ultrasound_Obstetric") { - $investigation_results = explode(",", $results->value); - $investigation_per_valid = explode(",", $results->per_investigation); - $investigation_comments = explode(",", $results->comment); - - if ($results->all_authenticated == 1) { - for ($i = 0; $i < count($inpatient_status); $i++) { - if ($inpatient_status[$i] == 0) { - $result = Investigation::where('id', $investigation_ids[$i])->first(); - $opd_investigations['name'][] = $result->name; - $opd_investigations['value'][] = $investigation_results[$i]; - $opd_investigations['comment'][] = $investigation_comments[$i]; - } else { - $result = Investigation::where('id', $investigation_ids[$i])->first(); - $ward_investigations['name'][] = $result->name; - $ward_investigations['value'][] = $investigation_results[$i]; - $ward_investigations['comment'][] = $investigation_comments[$i]; - } - } - } else { - for ($i = 0; $i < count($inpatient_status); $i++) { - if ($investigation_per_valid[$i] == 1) { - // this investigation is authenticated - if ($inpatient_status[$i] == 0) { - $result = Investigation::where('id', $investigation_ids[$i])->first(); - $opd_investigations['name'][] = $result->name; - $opd_investigations['value'][] = $investigation_results[$i]; - $opd_investigations['comment'][] = $investigation_comments[$i]; - } else { - $result = Investigation::where('id', $investigation_ids[$i])->first(); - $ward_investigations['name'][] = $result->name; - $ward_investigations['value'][] = $investigation_results[$i]; - $ward_investigations['comment'][] = $investigation_comments[$i]; - } - } else { - if ($inpatient_status[$i] == 0) { - $result = Investigation::where('id', $investigation_ids[$i])->first(); - $opd_investigations['name'][] = $result->name; - $opd_investigations['value'][] = "Pending"; - $opd_investigations['comment'][] = "Pending"; - } else { - $result = Investigation::where('id', $investigation_ids[$i])->first(); - $ward_investigations['name'][] = $result->name; - $ward_investigations['value'][] = "Pending"; - $ward_investigations['comment'][] = "Pending"; - } - } - } - } - } - } else { - for ($i = 0; $i < count($inpatient_status); $i++) { - if ($inpatient_status[$i] == 0) { - $result = Investigation::where('id', $investigation_ids[$i])->first(); - $opd_investigations['name'][] = $result->name; - $opd_investigations['value'][] = "Pending"; - $opd_investigations['comment'][] = "Pending"; - } else { - $result = Investigation::where('id', $investigation_ids[$i])->first(); - $ward_investigations['name'][] = $result->name; - $ward_investigations['value'][] = "Pending"; - $ward_investigations['comment'][] = "Pending"; - } - } - } - } - - - // previous consultations - if (session()->get('consultation_with_notes') == 1) { - $consultation_with_notes = true; - } else { - $consultation_with_notes = false; - } - - - $patient_episodes = DB::table('patient_episodes')->where('patient_id', $patient_id)->whereNotIn('id', [$episode_id])->get(); - $episode = PatientEpisode::where('id', $episode_id)->first(); - - - $past_episodes_info = []; - $counter = 0; - - foreach ($patient_episodes as $patient_episode) { - if ($counter == 5) { - break; - } - - if (!is_episode_safe_to_delete($patient_episode->id) && isset($patient_episode->consultation_id)) { // exclude empty episodes - $consultations_details = DB::table('consultations')->find($patient_episode->consultation_id); - - if ($consultations_details) { - $past_episodes_info[$counter]["start_date"] = streamline_date_time($patient_episode->created_at); - $past_episodes_info[$counter]["episode_id"] = $patient_episode->id; - - $past_episodes_info[$counter]["primary_diagnosis"] = $consultations_details->primary_diagnosis ?? 0; - if (unserialize($consultations_details->other_diagnoses)) { - $past_episodes_info[$counter]["other_diagnoses"] = unserialize($consultations_details->other_diagnoses); - } else { - $past_episodes_info[$counter]["other_diagnoses"] = []; - } - - $past_episodes_info[$counter]["outcome"] = $consultations_details->outcome_id ?? 0; - $doctor_id = $consultations_details->consultation_done_by ?? $consultations_details->created_by; - $past_episodes_info[$counter]["doctor"] = get_full_name($doctor_id, 'id', 'first_name', 'last_name', 'users'); - $past_episodes_info[$counter]["clinic"] = isset($patient_episode->clinic_id) ? get_name($patient_episode->clinic_id, 'id', 'name', 'clinics') : "N/A"; - - if (isset($patient_episode->triage_id)) { - $triage_details = DB::table('triage')->find($patient_episode->triage_id); - - if ($triage_details) { - $past_episodes_info[$counter]["symptoms"] = [ - "symptom_duration" => $triage_details->symptom_duration, - "symptoms" => $triage_details->symptoms - ]; - - $observations = explode(",", $triage_details->observations); - $past_episodes_info[$counter]["resp"] = "N/A"; - $past_episodes_info[$counter]["mmhg"] = "N/A"; - $past_episodes_info[$counter]["pulse"] = "N/A"; - $past_episodes_info[$counter]["temp"] = "N/A"; - - foreach ($observations as $observation) { - if (strpos($observation, "Temperature") !== false) { - $past_episodes_info[$counter]["temp"] = explode("=", $observation)[1]; - } - - if (strpos($observation, "Pulse") !== false) { - $past_episodes_info[$counter]["pulse"] = explode("=", $observation)[1]; - } - - if (strpos($observation, "Systolic bp") !== false) { - $past_episodes_info[$counter]["mmhg"] = explode("=", $observation)[1]; - } - - if (strpos($observation, "Diastolic bp") !== false) { - $past_episodes_info[$counter]["mmhg"] = $past_episodes_info[$counter]["mmhg"] . " / " . explode("=", $observation)[1]; - } - - if (strpos($observation, "Respirations") !== false) { - $past_episodes_info[$counter]["resp"] = explode("=", $observation)[1]; - } - } - } else { - $past_episodes_info[$counter]["symptoms"] = []; - $past_episodes_info[$counter]["resp"] = "N/A"; - $past_episodes_info[$counter]["mmhg"] = "N/A"; - $past_episodes_info[$counter]["pulse"] = "N/A"; - $past_episodes_info[$counter]["temp"] = "N/A"; - } - } else { - $past_episodes_info[$counter]["symptoms"] = []; - $past_episodes_info[$counter]["resp"] = "N/A"; - $past_episodes_info[$counter]["mmhg"] = "N/A"; - $past_episodes_info[$counter]["pulse"] = "N/A"; - $past_episodes_info[$counter]["temp"] = "N/A"; - } - - $counter++; - } - } - } - - // end previous consultations - - return view( - 'maternity::maternity.inpatient_sheet', - compact( - 'patient_episodes', - 'past_episodes_info', - 'episode', - 'consultation_with_notes', - 'latest_existing_maternity_inpatient_data', - 'previous_consultation_inpatient_info', - 'existing_blood_transfusion', - 'patient_id', - 'episode_id', - 'patient', - 'categories', - 'patient_surgeries', - 'patient_consultations', - 'marital_statuses', - 'diagnoses', - 'diagnoses_all', - 'diagnoses_patient', - 'relationships', - 'occupations', - 'drug_categories', - 'documents', - 'drug_categories_array', - 'known_patient_alerts', - 'known_patient_allergies', - 'consultation_id', - 'triage_id', - 'triage', - 'anc_registration', - 'emergency_signs', - 'patient_documents', - 'diagnosis', - 'obstetric_history', - 'anc_blood_transfusion', - 'blood_groups', - 'referrals', - 'accuracies', - 'anc_outcomes', - 'hiv_statuses', - 'maternity_progress', - 'ward_investigations', - 'opd_investigations', - 'symptoms', - 'obstetric_history_details', - 'family_planning_methods', - 'caesarian_sections', - 'uterus_operations', - 'gender_based_violence', - 'latest_existing_delivery_plan', - 'latest_existing_antenatal_mother_history', - 'latest_existing_anc_clinic_followup', - 'latest_existing_anc_hiv_info', - - ) - ); - } - - /* - * Show the form to create maternity delivery record - */ - public function create_delivery_record() - { - $episode_id = session()->get('episode_id'); - $patient_episode_details = PatientEpisode::find($episode_id); - $patient_id = $patient_episode_details->patient_id; - $patient = Patient::find($patient_id); - /* check if record with this same episode has been previously entered and display the details page instead */ - $existing_delivery_record = MaternityDeliveryRecord::where(['episode_id' => $episode_id])->first(); - if (!is_null($existing_delivery_record)) { - return redirect('delivery_record_details'); - } - - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $marital_statuses = DB::table('marital_statuses')->pluck("name", "id"); - $diagnoses = DB::table('diagnoses')->where('available', 1)->orderBy('name', 'asc')->pluck("name", "id"); - $relationships = DB::table('family_relations')->pluck('name', 'id'); - $occupations = DB::table('occupations')->pluck('name', 'id'); - $patient_categories = DB::table('patient_categories')->where('available', 1)->pluck('name', 'id'); - $drug_categories = DB::table('drug_categories')->get(); - $documents = PatientDocument::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->get(); - //allergies and alerts - $known_patient_allergies = Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->pluck('name', 'id'); - - /* SELECT User_Id, First_Name,Last_Name FROM users WHERE Active = 1 AND User_Group_Id in (7,37,39,42,47,59,60) ORDER BY First_Name ASC; */ - $users = DB::table('users')->orderBy("first_name", "asc")->get()->toArray(); - $allowed_users = DB::table('users')->orderBy('first_name')->pluck('first_name', 'id')->prepend('- select -', ''); - $mode_of_delivery = DB::table('mode_of_delivery')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $location_of_delivery = DB::table('location_of_delivery')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $respiration_minutes = DB::table('spontaneous_regular_respiration_in_minutes')->pluck('minutes', 'id'); - $wards = DB::table('wards')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); /* select post natal ward */ - return view('maternity::maternity.delivery_record', compact('patient_id', 'episode_id', 'patient', 'categories', 'drug_categories_array', 'known_patient_alerts', 'known_patient_allergies', 'marital_statuses', 'diagnoses', 'relationships', 'occupations', 'patient_categories', 'drug_categories', 'documents', 'allowed_users', 'users', 'mode_of_delivery', 'location_of_delivery', 'respiration_minutes', 'wards')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - - - public function check_hiv_test_date_if_three_months(Request $request) - { - - $pickedDate = Carbon::parse($request->input('hiv_date')); - $currentDate = Carbon::now(); - $response = ''; - - if ($pickedDate->diffInMonths($currentDate) >= 3) { - $response = "
    The captured date is 3 months ago or more.
    "; - } else { - $response = "
    The captured date is less than 3 months ago.
    "; - } - - return $response; - } - - public function store(Request $request) - { - - - //start database transaction - /* try to perform this set of db transactions and if any fails, rollback everything */ - DB::transaction(function () use ($request) { - - // validations - $validatedData = $request->validate([ - 'femur_fracture_details' => 'nullable', - 'femur_fracture_date' => 'nullable', - ]); - - $episode_id = session()->get('episode_id'); - $patient_episode_details = PatientEpisode::find($episode_id); - $patient_id = $patient_episode_details->patient_id; - $maternity_inpatient = MaternityInpatient::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - if (empty($maternity_inpatient)) { - $maternity_inpatient = new MaternityInpatient; - $maternity_inpatient->patient_id = $patient_id; - $maternity_inpatient->episode_id = $episode_id; - $maternity_inpatient->created_by = Auth::id(); - } else $maternity_inpatient->updated_by = Auth::id(); - - - $maternity_inpatient->primary_diagnosis = $request->primary_diagnosis; - $maternity_inpatient->other_diagnoses = (!empty($request->other_diagnosis[0])) ? serialize($request->other_diagnosis) : null; - $maternity_inpatient->gravida = $request->gravida; - $maternity_inpatient->para = $request->para; - $maternity_inpatient->abortion = $request->abortion; - $maternity_inpatient->ectopic_pregnancies = $request->ectopic_pregnancies; - $maternity_inpatient->postpartum = $request->postpartum; - $maternity_inpatient->previous_pph = $request->previous_pph; - $maternity_inpatient->previous_pph_details = $request->pph_details; - $maternity_inpatient->previous_scar = $request->previous_scar; - $maternity_inpatient->previous_scar_number = $request->scar_number; - $maternity_inpatient->previous_scar_indication = $request->scar_indication; - $maternity_inpatient->other_comments_pph = $request->other_comments_pph; - $maternity_inpatient->lmp = !is_null($request->lmp) ? Carbon::createFromFormat('d/m/Y', $request->lmp)->toDateString() : null; - $maternity_inpatient->accuracy = $request->accuracy; - $maternity_inpatient->edd = isset($request->edd) ? Carbon::createFromFormat('d/m/Y', $request->edd)->toDateString() : null; - $maternity_inpatient->referral_from = $request->refferal; - $maternity_inpatient->progress = $request->progress; - $maternity_inpatient->born_before_arrival = $request->born_before_arrival; - $maternity_inpatient->vdrl_location = $request->vdrl_location; - $maternity_inpatient->vdrl_date = !is_null($request->vdrl_date) ? Carbon::createFromFormat('d/m/Y', $request->vdrl_date)->toDateString() : null; - $maternity_inpatient->vdrl_result = $request->vdrl_result; - $maternity_inpatient->hiv_location = $request->hiv_location; - $maternity_inpatient->hiv_date = !is_null($request->hiv_date) ? Carbon::createFromFormat('d/m/Y', $request->hiv_date)->toDateString() : null; - $maternity_inpatient->hiv_result_usaid = $request->hiv_result; - $maternity_inpatient->scan_edd = !is_null($request->scan_edd) ? Carbon::createFromFormat('d/m/Y', $request->scan_edd)->toDateString() : null; - $maternity_inpatient->gestation_from_scan = $request->gestation_from_scan; - $maternity_inpatient->history_of_fits = $request->history_of_fits; - $maternity_inpatient->history_of_aph = $request->history_of_aph; - $maternity_inpatient->aph_details = $request->aph_details; - $maternity_inpatient->fits_details = $request->fits_details; - $maternity_inpatient->other_comments = $request->other_comments; - $maternity_inpatient->iufd = $request->iufd; - $maternity_inpatient->weeks_of_amenorrhoea = $request->weeks_of_amenorrhoea; - $maternity_inpatient->delivery_recomendation = $request->delivery_recomendation; - $maternity_inpatient->pregnancy_complications = implode(',', $request->pregnancy_complications ?? []); - $maternity_inpatient->other_pregnancy_complications = $request->other_pregnancy_complications; - $maternity_inpatient->physical_examination = implode(',', $request->physical_examination ?? []); - $maternity_inpatient->heart_physical_examination_details = $request->heart_physical_examination_details; - $maternity_inpatient->breasts_physical_examination_details = $request->breasts_physical_examination_details; - $maternity_inpatient->legs_physical_examination_details = $request->legs_physical_examination_details; - $maternity_inpatient->lungs_physical_examination_details = $request->lungs_physical_examination_details; - $maternity_inpatient->teeth_physical_examination_details = $request->teeth_physical_examination_details; - $maternity_inpatient->other_physical_examinations = $request->other_physical_examinations; - $maternity_inpatient->other_obstetric_risk_factors = $request->other_obstetric_risk_factors; - $maternity_inpatient->current_acute_problems = isset($request->current_acute_problems) ? implode(',', $request->current_acute_problems) : ''; - $maternity_inpatient->obstetric_risk_factors = isset($request->obstetric_risk_factors) ? implode(',', $request->obstetric_risk_factors) : ''; - $maternity_inpatient->blood_transfusion_available = isset($request->blood_transfusion_available) ? implode(',', $request->blood_transfusion_available) : ''; - $maternity_inpatient->fractures = isset($request->fractures) ? implode(',', $request->fractures) : ''; - - $maternity_inpatient->blood_transfusion_details = $request->blood_transfusion_details; - $maternity_inpatient->pelvis_fracture_date = !is_null($request->pelvis_fracture_date) ? Carbon::createFromFormat('d/m/Y', $request->pelvis_fracture_date)->toDateString() : null; - $maternity_inpatient->pelvis_fracture_details = $request->pelvis_fracture_details; - $maternity_inpatient->spine_fracture_date = !is_null($request->spine_fracture_date) ? Carbon::createFromFormat('d/m/Y', $request->spine_fracture_date)->toDateString() : null; - $maternity_inpatient->spine_fracture_details = $request->spine_fracture_details; - $maternity_inpatient->femur_fracture_date = !is_null($request->femur_fracture_date) ? Carbon::createFromFormat('d/m/Y', $request->femur_fracture_date)->toDateString() : null; - - $maternity_inpatient->femur_fracture_details = $request->femur_fracture_details; - $maternity_inpatient->other_fracture_details = $request->other_fracture_details; - $maternity_inpatient->created_by = auth()->user()->id; - - if ($request->get('submit-btn') == 'submit_maternity_admission') { - // save and complete - $maternity_inpatient->completed = 1; - $maternity_inpatient->save(); - } else { - // save draft - $maternity_inpatient->completed = 0; - $maternity_inpatient->save(); - } - - - $maternity_clinic_id = get_name('MATERNITY', 'name', 'id', 'wards'); //get maternity ward id - - // store past obstetric history data with child data - for ($k = 1; $k <= $request->pregnancy_number; $k++) { - $pregnancy = 'pregnancy_' . $k; - $obs_date = $pregnancy . '_obstetric_date'; - $gestation = $pregnancy . '_gestation'; - $outcome = $pregnancy . '_obstetric_outcome'; - $abortion_outcome = $pregnancy . '_abortion_outcome'; - $delivery_type = $pregnancy . '_delivery_type'; - $past_pregnancy_complications = $pregnancy . '_past_pregnancy_complications'; - $past_pregnancy_comment = $pregnancy . '_past_pregnancy_comment'; - $puerperium = $pregnancy . '_puerperium'; - $child_name = $pregnancy . '_child_name'; - $child_gender = $pregnancy . '_child_gender'; - $child_patient_number = $pregnancy . '_child_patient_number'; - $child_birth_weight = $pregnancy . '_child_birth_weight'; - $child_immunisation_status = $pregnancy . '_child_immunisation_status'; - $child_health_condition = $pregnancy . '_child_health_condition'; - $child_counter = !empty($request->$child_name[0]) ? count($request->$child_name) : 0; - $children = []; - if ($child_counter > 0) { - for ($t = 0; $t < $child_counter; $t++) { - $children[] = [ - 'health_condition' => $request->$child_health_condition[$t], - 'immunisation_status' => $request->$child_immunisation_status[$t], - 'birth_weight' => $request->$child_birth_weight[$t], - 'patient_number' => $request->$child_patient_number[$t], - 'gender' => $request->$child_gender[$t], - 'name' => $request->$child_name[$t] - ]; - } - } - - //check if past_obs_date is filled - if (isset($request->$obs_date)) { - $obstetric_history = new ObstetricHistory; - $obstetric_history->patient_id = $patient_id; - $obstetric_history->episode_id = $episode_id; - $obstetric_history->obstetric_date = isset($request->$obs_date) ? Carbon::createFromFormat('d/m/Y', $request->$obs_date)->toDateString() : null; - $obstetric_history->gestation = $request->$gestation; - $obstetric_history->outcome = $request->$outcome; - $obstetric_history->clinic_id = $maternity_clinic_id; - $obstetric_history->abortion_outcome = $request->$abortion_outcome; - $obstetric_history->delivery_type = $request->$delivery_type; - $obstetric_history->past_pregnancy_complications = $request->$past_pregnancy_complications; - $obstetric_history->past_pregnancy_comment = $request->$past_pregnancy_comment; - $obstetric_history->puerperium = $request->$puerperium; - $obstetric_history->children = !empty($children) ? json_encode($children) : null; - $obstetric_history->created_by = auth()->user()->id; - - $obstetric_history->save(); - } - } - - // delivery plan - $delivery_plan = new MaternityDeliveryPlan; - $delivery_plan->patient_id = $patient_id; - $delivery_plan->episode_id = $episode_id; - $delivery_plan->person_you_live_with = $request->person_you_live_with; - $delivery_plan->transport_means_to_facility = $request->transport_means_to_facility; - $delivery_plan->person_to_accompany_you = $request->person_to_accompany_you; - $delivery_plan->person_to_look_after_home = $request->person_to_look_after_home; - $delivery_plan->mother_partner_screened_for = implode(',', $request->mother_partner_screened_for ?? []); - $delivery_plan->family_planning_method_plan = $request->family_planning_method_plan; - $delivery_plan->person_to_stay_at_facility = $request->person_to_stay_at_facility; - $delivery_plan->delivery_method = $request->delivery_method; - $delivery_plan->backup_delivery_method = $request->backup_delivery_method; - $delivery_plan->after_birth_disposal = $request->after_birth_disposal; - $delivery_plan->created_by = auth()->user()->id; - $delivery_plan->save(); - - // maternity mother history - $maternity_mother_history = new MaternityMotherHistory; - $maternity_mother_history->patient_id = $patient_id; - $maternity_mother_history->episode_id = $episode_id; - $maternity_mother_history->cycle_length = $request->cycle_length; - $maternity_mother_history->menses_length = $request->menses_length; - $maternity_mother_history->menses_amount = $request->menses_amount; - $maternity_mother_history->family_planning_method = $request->family_planning_method; - $maternity_mother_history->date_discontinued = isset($request->date_discontinued) ? Carbon::createFromFormat('d/m/Y', $request->date_discontinued)->toDateString() : null; - $maternity_mother_history->why_stop_family_planning = $request->why_stop_family_planning; - $maternity_mother_history->medical_presentations = implode(',', $request->medical_presentations ?? []); - $maternity_mother_history->other_medical_presentations = $request->other_medical_presentations; - $maternity_mother_history->sgbv_risk = implode(',', $request->sgbv_risk ?? []); - $maternity_mother_history->other_sgbv_risk = $request->other_sgbv_risk; - $maternity_mother_history->husband_health = $request->husband_health; - $maternity_mother_history->history_of_aph = $request->history_of_aph; - $maternity_mother_history->history_aph_details = $request->history_aph_details; - $maternity_mother_history->history_of_fits = $request->history_of_fits; - $maternity_mother_history->history_fit_details = $request->history_fit_details; - $maternity_mother_history->other_medical_history_comment = $request->other_medical_history_comment; - - foreach ($request->uterus_operations_name as $key => $operation) { - if (!empty($operation)) - $uterine_operations[] = ['name' => $operation, 'date' => $request->uterus_operations_date[$key], 'facility_name' => $request->uterus_operations_facility_name[$key]]; - } - - foreach ($request->other_operations_name as $key => $operation) { - if (!empty($operation)) - $other_surgeries[] = ['name' => $operation, 'date' => $request->other_operations_name_date[$key], 'facility_name' => $request->other_operations_name_facility_name[$key]]; - } - - $maternity_mother_history->uterine_surgeries = !empty($uterine_operations) ? json_encode($uterine_operations) : null; - $maternity_mother_history->other_surgeries = !empty($other_surgeries) ? json_encode($other_surgeries) : null; - - - $maternity_mother_history->created_by = auth()->user()->id; - $maternity_mother_history->save(); - - // Blood Transfusion - $blood_group = $request->blood_group; - $transfusion_date_array = $request->transfusion_date; - $no_of_units_array = $request->no_of_units; - $transfusion_comment_array = $request->transfusion_comment; - - - if (is_array($transfusion_date_array) && !empty($transfusion_date_array) && !in_array(null, $transfusion_date_array, true)) { - // The 'transfusion_date' parameter is an array and contains null values - if (!empty($transfusion_date_array)) for ($i = 0; $i < count($transfusion_date_array); $i++) { - $anc_blood_transfusion = new AnteNatalClinicBloodTransfusion; - $anc_blood_transfusion->patient_id = $patient_id; - $anc_blood_transfusion->episode_id = $episode_id; - $anc_blood_transfusion->blood_group_id = $blood_group; - $anc_blood_transfusion->transfusion_date = isset($transfusion_date_array[$i]) ? Carbon::createFromFormat('d/m/Y', $transfusion_date_array[$i])->toDateString() : null; - $anc_blood_transfusion->number_of_units = $no_of_units_array[$i]; - $anc_blood_transfusion->comments = $transfusion_comment_array[$i]; - $anc_blood_transfusion->created_by = auth()->user()->id; - - $anc_blood_transfusion->save(); - } - } else { - // Handle when its empty and has null value - Log::info("transfusion is null"); - } - - // pelvic examination and assessement - $pelvic_examination_and_assessment = new PelvicExaminationAndAssessment; - $pelvic_examination_and_assessment->patient_id = $patient_id; - $pelvic_examination_and_assessment->episode_id = $episode_id; - $pelvic_examination_and_assessment->vulva = $request->vulva; - $pelvic_examination_and_assessment->vagina = $request->vagina; - $pelvic_examination_and_assessment->cervix = $request->cervix; - $pelvic_examination_and_assessment->dilatation = $request->dilatation; - $pelvic_examination_and_assessment->uterine_adnexa = $request->uterine_adnexa; - $pelvic_examination_and_assessment->moniliasis = $request->moniliasis; - $pelvic_examination_and_assessment->diagonal_conjugate = round($request->diagonal_conjugate, 2); - $pelvic_examination_and_assessment->sacrum = $request->sacrum; - $pelvic_examination_and_assessment->ischial_spinces = $request->ischial_spinces; - $pelvic_examination_and_assessment->sub_public_angle = $request->sub_public_angle; - $pelvic_examination_and_assessment->ischial_tuberosities = $request->ischial_tuberosities; - $pelvic_examination_and_assessment->pelvic_adequate = $request->pelvic_adequate; - $pelvic_examination_and_assessment->created_by = auth()->user()->id; - $pelvic_examination_and_assessment->save(); - - - }); - - //end database transaction - - // pick previoius_url //picked from /create - $previous_url = Session::get('previous_url'); - - switch ($request->get('submit-btn')) { - case 'save_maternity_admission': - flash('Maternity Inpatient Sheet Saved successfully')->success(); - if ($previous_url == url('/wards/select')) { - return redirect('/wards/select'); - } elseif ($previous_url == url('/patient_episodes')) { - return redirect('patient_episodes'); - } else { - return redirect('patient_episodes'); - } - - break; - case 'submit_maternity_admission': - flash('Maternity Inpatient Sheet Completed and Submitted successfully')->success(); - if ($previous_url == url('/wards/select')) { - return redirect('/wards/select'); - } elseif ($previous_url == url('/patient_episodes')) { - return redirect('patient_episodes'); - } else { - return redirect('patient_episodes'); - } - } - } - - /** - * Store a newly created delivery record in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store_delivery_record(Request $request) - { - $episode_id = session()->get('episode_id'); - $patient_episode_details = PatientEpisode::find($episode_id); - $patient_id = $patient_episode_details->patient_id; - $parent_record = Patient::find($patient_id); - - //inputs from the delivery section - $foetal_number = $request->foetal_number; //not array - $date_of_birth = implode(',', $request->birthdate); - $delivery_time = implode(',', $request->deliveryTime); - $duration1 = implode(',', $request->duration1); - $duration2_hrs = implode(',', $request->duration2_hrs); - $duration2_mins = implode(',', $request->duration2_mins); - $baby_one_duration2 = $request->duration2_hrs[0] . ' and ' . $request->duration2_mins[0]; - $baby_two_duration2 = $request->duration2_hrs[1] . ' and ' . $request->duration2_mins[1]; - $baby_three_duration2 = $request->duration2_hrs[2] . ' and ' . $request->duration2_mins[2]; - $duration2 = [$baby_one_duration2, $baby_two_duration2, $baby_three_duration2]; - $duration2 = implode(',', $duration2); - - $baby_one_duration3 = $request->duration3_hrs[0] . ' and ' . $request->duration3_mins[0]; - $baby_two_duration3 = $request->duration3_hrs[1] . ' and ' . $request->duration3_mins[1]; - $baby_three_duration3 = $request->duration3_hrs[2] . ' and ' . $request->duration3_mins[2]; - $duration3 = [$baby_one_duration3, $baby_two_duration3, $baby_three_duration3]; - $duration3 = implode(',', $duration3); - - $delivered_by_cadre = implode(',', $request->deliveredByCadre); //1-staff,2-student - $delivered_by_name = implode(',', $request->deliveredByName); //picks user IDs - $supervised_by = implode(',', $request->supervisedBy); //picks user IDs - $mode_of_delivery = implode(',', $request->modeOfDelivery); - $indication_for_cs = implode(',', $request->indicationForCS); - $location_of_delivery = implode(',', $request->locationOfDelivery); - $delivery_comments = implode(',', $request->deliveryComments); - $blood_loss = $request->bloodLoss; //not array - $bloodloss_measurement = $request->bloodloss_measurement; //not array - //inputs from the baby section - $received_by = implode(',', $request->receivedBy); - $gender = implode(',', $request->sex); //1=female 2=male 3=ambigous - $condition = implode(',', $request->condition); - $weight = implode(',', $request->weight); - $birth_order = implode(',', $request->birth_order); - $congenital_abnormalities1 = $request->congenital_abnormalities1; - $congenital_abnormalities2 = $request->congenital_abnormalities2; - $congenital_abnormalities3 = $request->congenital_abnormalities3; - $congenital_abnormalities = [$congenital_abnormalities1, $congenital_abnormalities2, $congenital_abnormalities3]; - $congenital_abnormalities = implode(',', $congenital_abnormalities); - $baby_comments = implode(',', $request->babyComments); - - //if baby condition = fresh SB or mecarated SB - $perinetal_death_notification_form1 = $request->perinetal_death_notification_form1; - $perinetal_death_notification_form2 = $request->perinetal_death_notification_form2; - $perinetal_death_notification_form3 = $request->perinetal_death_notification_form3; - $perinetal_death_notification_form = [$perinetal_death_notification_form1, $perinetal_death_notification_form2, $perinetal_death_notification_form3]; - $perinetal_death_notification_form = implode(',', $perinetal_death_notification_form); - $perinetal_audit_form1 = $request->perinetal_audit_form1; - $perinetal_audit_form2 = $request->perinetal_audit_form2; - $perinetal_audit_form3 = $request->perinetal_audit_form3; - $perinetal_audit_form = [$perinetal_audit_form3, $perinetal_audit_form2, $perinetal_audit_form1]; - $perinetal_audit_form = implode(',', $perinetal_audit_form); - - //if baby condition = Alive - $apgar_score_at_minute_1 = !is_null($request->apgar_score_at_minute_1) ? implode(',', $request->apgar_score_at_minute_1) : null; - $apgar_score_at_minute_5 = !is_null($request->apgar_score_at_minute_5) ? implode(',', $request->apgar_score_at_minute_5) : null; - $apgar_score_at_minute_10 = !is_null($request->apgar_score_at_minute_10) ? implode(',', $request->apgar_score_at_minute_10) : null; - $age_established_spontaneous_reg_respiration = !is_null($request->age_established_spontaneous_reg_respiration) ? implode(',', $request->age_established_spontaneous_reg_respiration) : null; - $resuscitation_airway = !is_null($request->resuscitation_airway) ? implode(',', $request->resuscitation_airway) : null; - $resuscitation_suction = !is_null($request->resuscitation_suction) ? implode(',', $request->resuscitation_suction) : null; - $advanced_resuscitation = !is_null($request->advanced_resuscitation) ? implode(',', $request->advanced_resuscitation) : null; - $advanced_resuscitation_ett = !is_null($request->advanced_resuscitation_ett) ? implode(',', $request->advanced_resuscitation_ett) : null; - $advanced_resuscitation_ecm = !is_null($request->advanced_resuscitation_ecm) ? implode(',', $request->advanced_resuscitation_ecm) : null; - $advanced_resuscitation_drugs1 = $request->advanced_resuscitation_drugs1; - $advanced_resuscitation_drugs2 = $request->advanced_resuscitation_drugs2; - $advanced_resuscitation_drugs3 = $request->advanced_resuscitation_drugs3; /* 1.IV dextrose 2.Adrenaline 3.Aminophylline */ - $advanced_resuscitation_drugs = [$advanced_resuscitation_drugs1, $advanced_resuscitation_drugs2, $advanced_resuscitation_drugs3]; - $advanced_resuscitation_drugs = !is_null($advanced_resuscitation_drugs) ? implode(',', $advanced_resuscitation_drugs) : null; - $im_vitamin_k_given1 = $request->im_vitamin_k_given1; - $im_vitamin_k_given2 = $request->im_vitamin_k_given2; - $im_vitamin_k_given3 = $request->im_vitamin_k_given3; - $im_vitamin_k_given = [$im_vitamin_k_given1, $im_vitamin_k_given2, $im_vitamin_k_given3]; - $im_vitamin_k_given = !is_null($im_vitamin_k_given) ? implode(',', $im_vitamin_k_given) : null; - $moved_to = !is_null($request->moved_to) ? implode(',', $request->moved_to) : null; //1=Post Natal 2=SCBU 3=Labour - $created_at = Carbon::now(); - - $delivery_record = new MaternityDeliveryRecord; - $delivery_record->patient_id = $patient_id; - $delivery_record->episode_id = $episode_id; - $delivery_record->foetal_number = $foetal_number; - $delivery_record->date_of_birth = $date_of_birth; - $delivery_record->delivery_time = $delivery_time; - $delivery_record->duration_1 = $duration1; - $delivery_record->duration_2 = $duration2; - $delivery_record->duration_3 = $duration3; - $delivery_record->delivered_by_cadre = $delivered_by_cadre; - $delivery_record->delivered_by_name = $delivered_by_name; - $delivery_record->supervised_by = $supervised_by; - $delivery_record->mode_of_delivery = $mode_of_delivery; - $delivery_record->indication_for_cs = $indication_for_cs; - $delivery_record->location_of_delivery = $location_of_delivery; - $delivery_record->delivery_comments = $delivery_comments; - $delivery_record->blood_loss = $blood_loss; - $delivery_record->bloodloss_measurement = $bloodloss_measurement; - $delivery_record->received_by = $received_by; - $delivery_record->gender = $gender; - $delivery_record->baby_condition = $condition; - $delivery_record->weight = $weight; - $delivery_record->congenital_abnormalities = $congenital_abnormalities; - $delivery_record->birth_order = $birth_order; - $delivery_record->baby_comments = $baby_comments; - $delivery_record->perinatal_death_notification = $perinetal_death_notification_form; - $delivery_record->perinatal_audit_form = $perinetal_audit_form; - $delivery_record->apgar_score_at_minute_1 = $apgar_score_at_minute_1; - $delivery_record->apgar_score_at_minute_5 = $apgar_score_at_minute_5; - $delivery_record->apgar_score_at_minute_10 = $apgar_score_at_minute_10; - $delivery_record->age_established_spontaneous_reg_respiration = $age_established_spontaneous_reg_respiration; - $delivery_record->resuscitation_airway = $resuscitation_airway; - $delivery_record->resuscitation_suction = $resuscitation_suction; - $delivery_record->advanced_resuscitation_ett = $advanced_resuscitation_ett; - $delivery_record->advanced_resuscitation_ecm = $advanced_resuscitation_ecm; - $delivery_record->advanced_resuscitation_drugs = $advanced_resuscitation_drugs; - $delivery_record->IM_vitamin_k_given = $im_vitamin_k_given; - $delivery_record->moved_to = $moved_to; - $delivery_record->created_by = Auth::id(); - $delivery_record->save(); - - /* start process of registering the baby in the patients table */ - $children_ids_array = []; - //loop the registration depending on the foetal number - for ($i = 0; $i < $foetal_number; $i++) { - $fname = 'Baby of'; - $lname = $parent_record->first_name . ' ' . $parent_record->last_name; - $gender_array = $request->sex; - $date_of_birth_array = $request->birthdate; - $gender = isset($gender_array[$i]) ? $gender_array[$i] : 0; - $birthdate_explode = explode("/", $date_of_birth_array[$i]); - //if twins - if ($foetal_number == 2 && $i == 0) { - $lname = $lname . ' -twin 1'; - $birthdate = $date_of_birth_array[1]; //$birthdate_explode[2] . $birthdate_explode[1] . $birthdate_explode[0]; - } elseif ($foetal_number == 2 && $i == 1) { - $birthdate = $date_of_birth_array[1]; //$birthdate_explode[2] . $birthdate_explode[1] . $birthdate_explode[0]; - $lname = $lname . ' -twin 2'; - } - //if triplets - if ($foetal_number == 3 && $i == 0) { - $birthdate = $date_of_birth_array[1]; //$birthdate_explode[2] . $birthdate_explode[1] . $birthdate_explode[0]; - $lname = $lname . ' -triplet 1'; - } elseif ($foetal_number == 3 && $i == 1) { - $birthdate = $date_of_birth_array[2]; //$birthdate_explode[2] . $birthdate_explode[1] . $birthdate_explode[0]; - $lname = $lname . ' -triplet 2'; - } elseif ($foetal_number == 3 && $i == 2) { - $birthdate = isset($date_of_birth_array[3]) ? $date_of_birth_array[2] : ""; //$birthdate_explode[2] . $birthdate_explode[1] . $birthdate_explode[0]; - $lname = $lname . ' -triplet 3'; - } - //if singleton - if ($foetal_number == 1) { - $birthdate = $date_of_birth_array[1]; //$birthdate_explode[2] . $birthdate_explode[1] . $birthdate_explode[0]; - } - $position = ''; - $department = ''; - $age = 0; - $agemonths = 0; - $district = $parent_record->district_id; - $county_id = $parent_record->county_id; - $parish = $parent_record->parish_id; - $subcounty = $parent_record->subcounty_id; - $village = $parent_record->village_id; - $maritalstatus = 1; - $occupation = 0; - $nextkin = $parent_record->first_name . ' ' . $parent_record->last_name; - $nextrelation = 4; //'Mother'; - $national_id = ''; - $mobilenumber = $parent_record->phone; - $mobileowner = $parent_record->phone_owner; - $patient_category = $parent_record->category_id; - $chairman_name = $parent_record->lc_one; - $any_contact = $parent_record->hospital_contact; - $religion = $parent_record->religion_id; - $staff_id = Auth::id(); - $language = $parent_record->language; - - $baby_details = new Patient; - $baby_details->first_name = $fname; - $baby_details->last_name = $lname; - $baby_details->date_of_birth = (is_null($birthdate) || $birthdate == "") ? Carbon::now() : Carbon::createFromFormat('d/m/Y', $birthdate)->toDateString(); - $baby_details->district_id = $district; - $baby_details->parish_id = $parish; - $baby_details->subcounty_id = $subcounty; - $baby_details->village_id = $village; - $baby_details->gender = $gender; - $baby_details->marital_status = $maritalstatus; - $baby_details->occupation_id = $occupation; - $baby_details->next_of_Kin = $nextkin; - $baby_details->next_of_kin_relationship = $nextrelation; - $baby_details->phone = $mobilenumber; - $baby_details->phone_owner = $mobileowner; - $baby_details->category_id = $patient_category; - $baby_details->lc_one = $chairman_name; - $baby_details->hospital_contact = $any_contact; - //$baby_details->national_id = $national_id; - $baby_details->religion_id = $religion; - $baby_details->language = $language; - $baby_details->parent_id = $parent_record->id; - if ($baby_details->save()) { - $prefix = DB::table('hospital_information')->where('id', 1)->value('patient_number_abbr'); - $new_id = quadLimit($baby_details->id); - $patient_number = $prefix . "-" . $new_id; - DB::table('patients')->where('id', $new_id)->update(['number' => $patient_number]); // Updating the patient number - $children_ids_array[] = $baby_details->id; - - /* ======= start baby admission ========== */ - $new_baby_episode = new PatientEpisode; - $new_baby_episode->patient_id = $baby_details->id; - $new_baby_episode->clinic_id = get_default_hospital_clinic(); - $new_baby_episode->created_by = Auth::id(); - $new_baby_episode->updated_by = Auth::id(); - if ($new_baby_episode->save()) { - $new_baby_inpatient = new InpatientInfo; - $new_baby_inpatient->patient_id = $baby_details->id; - $new_baby_inpatient->episode_id = $new_baby_episode->id; - $new_baby_inpatient->admitted_on = $baby_details->date_of_birth; - $maternity_ward_id = get_name("maternity", "slug", "id", "wards"); - $new_baby_inpatient->ward_id = isset($request->moved_to[$i]) ? $request->moved_to[$i] : $maternity_ward_id; - $new_baby_inpatient->created_by = Auth::id(); - $new_baby_inpatient->created_at = Carbon::now(); - $new_baby_inpatient->save(); - - flash($baby_details->first_name . " " . $baby_details->last_name . "(" . $baby_details->number . ") has been admitted in " . get_name($new_baby_inpatient->ward_id, "id", "name", "wards"))->success(); - } - /* ======= end baby admission========== */ - } - } - - /* update the parent record with the new children_ids */ - $update_parent_record = Patient::find($parent_record->id); - /* ideally shd just append on whetever string values that have been found in the children_id column */ - $exisiting_children_ids_array = explode(',', $update_parent_record->children_id); - $merge_old_children_ids_with_new = array_merge($exisiting_children_ids_array, $children_ids_array); - $update_parent_record->children_id = implode(',', $merge_old_children_ids_with_new); - - $update_parent_record->update(); - /* end baby registration process in the demographics table */ - /* Insert into the audit trail table when worked on*/ - flash('New delivery record has been added')->success(); - return redirect('patient_episodes'); - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - } - - /** - * Show the form for editing the maternity inpatient sheet. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - - // edit inpatient admission details maternity - public function edit_inpatient() - { - - - // session to pick where user is from // patient episodes or // /wards/select - Session::put('previous_url', URL::previous()); - $episode_id = session()->get('episode_id'); - $patient_episode_details = PatientEpisode::find($episode_id); - $diagnoses_patient = DB::table('diagnoses')->orderBy('name', 'asc')->pluck("name", "id"); - $patient_id = $patient_episode_details->patient_id; - $patient = Patient::find($patient_id); - - // fetch existing data from maternity inpatient and related tables - $existing_maternity_inpatient_data = MaternityInpatient::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $existing_maternity_delivery_plan = MaternityDeliveryPlan::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $existing_maternity_mother_history = MaternityMotherHistory::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $existing_maternity_pelvic_examination_and_assessement = PelvicExaminationAndAssessment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $existing_uterus_operations = OtherFacilityUterusOperation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $existing_other_facility_operations = OtherFacilityOtherOperation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $existing_blood_transfusion = AnteNatalClinicBloodTransfusion::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $anc_blood_transfusion = AnteNatalClinicBloodTransfusion::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $anc_blood_transfusion_details = AnteNatalClinicBloodTransfusion::where([['patient_id', $patient_id], ['episode_id', $episode_id]])->latest()->get(); - $obstetric_history_details = ObstetricHistory::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('obstetric_date', 'desc')->get(); - // fetch patient surgeries - $patient_surgeries = Surgery::leftJoin('users', 'surgeries.surgeon', '=', 'users.id') - ->leftJoin('procedures', 'surgeries.procedure_id', '=', 'procedures.id') - ->where('patient_id', $patient_id) - ->get(['procedures.name as procedure_name', 'date_surgery_completed', 'users.first_name', 'users.last_name', 'primary_diagnosis', 'other_diagnoses']); - - // fetch patient consultations - $patient_consultations = Consultation::leftJoin('users', 'consultations.created_by', '=', 'users.id') - ->leftJoin('diagnoses', 'consultations.primary_diagnosis', '=', 'diagnoses.id') - ->leftJoin('wards', 'consultations.ward_id', '=', 'wards.id') - ->leftJoin('outcomes', 'consultations.outcome_id', '=', 'outcomes.id') - ->where(['patient_id' => $patient_id]) - ->get([ - - 'admitted_on', - 'wards.name as ward', - 'diagnoses.name as primary_diagnosis', - 'other_diagnoses', - 'users.first_name', - 'users.last_name', - 'consultations.created_at', - 'outcomes.name as outcome', - - ]); - - - - - // fetch previous consultations for patient - $previous_consultation_inpatient_info = InpatientInfo::leftJoin('diagnoses', 'inpatient_info.primary_diagnosis', '=', 'diagnoses.id') - ->leftJoin('users', 'inpatient_info.discharged_by', '=', 'users.id') - ->leftJoin('wards', 'inpatient_info.ward_id', '=', 'wards.id') - ->leftJoin('triage', 'inpatient_info.episode_id', '=', 'triage.episode_id') - ->leftJoin('consultations', 'inpatient_info.episode_id', '=', 'consultations.episode_id') - ->leftJoin('ordered_investigations', 'inpatient_info.episode_id', '=', 'ordered_investigations.episode_id') - ->leftJoin('ward_treatments', 'inpatient_info.episode_id', '=', 'ward_treatments.episode_id') - ->leftJoin('outcomes', 'inpatient_info.outcome_id', '=', 'outcomes.id') - ->where([['inpatient_info.patient_id', $patient_id], ['inpatient_info.episode_id', '!=', $episode_id]]) - ->where('inpatient_info.created_at', '<', $patient_episode_details->created_at) - ->latest('inpatient_info.created_at') - ->get( - [ - 'diagnoses.name as primary_diagnosis', - 'inpatient_info.other_diagnoses as other_diagnoses', - 'users.first_name as first_name', - 'consultations.created_at as consultation_date', - 'inpatient_info.created_at as inpatient_info_date', - 'diagnoses.name as primary_diagnosis', - 'inpatient_info.other_diagnoses', - 'outcomes.name as outcome', - 'inpatient_info.episode_id', - 'inpatient_info.admitted_on', - 'inpatient_info.discharged_on', - 'users.first_name as first_name', - 'users.last_name as last_name', - 'wards.name as ward', - 'triage.observations', - 'triage.symptoms as triage_symptoms', - 'triage.symptom_duration as triage_symptom_duration', - 'consultations.symptoms as consultation_symptoms', - 'consultations.symptom_duration as consultation_symptom_duration', - DB::raw("CONCAT(triage.symptoms, '', consultations.symptoms) as symptoms"), - DB::raw("CONCAT(triage.symptom_duration, ', ', consultations.symptom_duration) as symptom_duration"), - ] - - )->take(5); - - - $current_episode_triage_symptoms = InpatientInfo::leftJoin('diagnoses', 'inpatient_info.primary_diagnosis', '=', 'diagnoses.id') - ->leftJoin('users', 'inpatient_info.discharged_by', '=', 'users.id') - ->leftJoin('wards', 'inpatient_info.ward_id', '=', 'wards.id') - ->leftJoin('triage', 'inpatient_info.episode_id', '=', 'triage.episode_id') - ->leftJoin('consultations', 'inpatient_info.episode_id', '=', 'consultations.episode_id') - ->leftJoin('ordered_investigations', 'inpatient_info.episode_id', '=', 'ordered_investigations.episode_id') - ->leftJoin('ward_treatments', 'inpatient_info.episode_id', '=', 'ward_treatments.episode_id') - ->leftJoin('outcomes', 'inpatient_info.outcome_id', '=', 'outcomes.id') - ->where([['inpatient_info.patient_id', $patient_id], ['inpatient_info.episode_id', '=', $episode_id]])->get( - [ - 'diagnoses.name as primary_diagnosis', - 'inpatient_info.other_diagnoses as other_diagnoses', - 'users.first_name as first_name', - 'diagnoses.name as primary_diagnosis', - 'inpatient_info.other_diagnoses', - 'outcomes.name as outcome', - 'inpatient_info.episode_id', - 'inpatient_info.admitted_on', - 'inpatient_info.discharged_on', - 'users.first_name as first_name', - 'users.last_name as last_name', - 'wards.name as ward', - 'triage.observations', - 'triage.symptoms as triage_symptoms', - 'triage.symptom_duration as triage_symptom_duration', - 'consultations.symptoms as consultation_symptoms', - 'consultations.symptom_duration as consultation_symptom_duration', - DB::raw("CONCAT(triage.symptoms, ', ', consultations.symptoms) as symptoms"), - DB::raw("CONCAT(triage.symptom_duration, ', ', consultations.symptom_duration) as symptom_duration"), - ] - - )->take(5); - - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $marital_statuses = DB::table('marital_statuses')->pluck("name", "id"); - $diagnoses = DB::table('diagnoses')->where('available', 1)->orderBy('name', 'asc')->pluck("name", "id")->prepend('- select -', ''); - $relationships = DB::table('family_relations')->pluck('name', 'id'); - $occupations = DB::table('occupations')->pluck('name', 'id'); - $patient_categories = DB::table('patient_categories')->where('available', 1)->pluck('name', 'id'); - $drug_categories = DB::table('drug_categories')->get(); - $documents = PatientDocument::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->get(); - //allergies and alerts - $known_patient_allergies = Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->pluck('name', 'id'); - $consultation_id = get_name($episode_id, "id", "consultation_id", "patient_episodes"); - $triage_id = get_name($episode_id, "id", "triage_id", "patient_episodes"); - $triage = Triage::find($triage_id); //this maybe null since one may be admitted straight away - - $anc_registration = AnteNatalClinicRegistration::where(['patient_id' => $patient_id])->orderBy('id', 'desc')->first(); - $emergency_signs = EmergencySign::where(['patient_id' => $patient_id, 'triage_id' => $triage_id, 'episode_id' => $episode_id])->get(); - $patient_documents = PatientDocument::where(['patient_id' => $patient_id])->get(); - $diagnosis = Diagnosis::where('available', 1)->orderby('name', 'asc')->get(); - $diagnoses_all = DB::table('diagnoses')->whereNull('deleted_at')->select('id', 'prompts', 'reference_areas', 'reference_names')->get(); - $obstetric_history = ObstetricHistory::where(['patient_id' => $patient_id])->orderBy('obstetric_date', 'desc')->get(); - $blood_groups = DB::table('blood_groups')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $referrals = DB::table('referral_hospitals')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $accuracies = DB::table('ante_natal_clinic_accuracies')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $anc_outcomes = DB::table('ante_natal_clinic_outcomes')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $hiv_statuses = ['' => '-- Select --', '0' => 'Negative', '1' => 'Positive', '3' => 'Unknown']; - $maternity_progress = DB::table('maternity_progress')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $family_planning_methods = FamilyPlanningMethod::orderBy('name', 'asc')->get(); - $family_planning_methods_data = FamilyPlanningMethod::all(); - - $caesarian_sections = CaesarianSection::orderBy('name', 'asc')->pluck("name", "id")->prepend('- Select -', ''); - $uterus_operations = UterusOperation::orderBy('name', 'asc')->get(); - $uterus_operations = UterusOperation::orderBy('name', 'asc')->pluck("name", "id")->prepend('- Select -', ''); - $gender_based_violence = GenderViolence::orderBy('name', 'asc')->pluck("name", "id"); - - // prep the inpatient investigation arrays and counters - $opd_investigations = []; - $ward_investigations = []; - $symptoms = Symptom::pluck("name", "id"); - - // get all investigations ordered in this episode - $ordered_investigations = OrderedInvestigation::where(['episode_id' => $episode_id])->get(); - - // get all results - $investigation_results_order_ids = InvestigationResults::pluck('order_id', 'id')->toArray(); - - foreach ($ordered_investigations as $investigation) { - $investigation_ids = explode(",", $investigation->investigation_id); - $inpatient_status = explode(",", $investigation->for_inpatient); - - // check if results are available for this investigation - if (in_array($investigation->id, $investigation_results_order_ids)) { - // get the key if available - $key = array_search($investigation->id, $investigation_results_order_ids); - - // get the results object - $results = InvestigationResults::find($key); - - // exclude obstetric u/s results - if ($results->result_type != "Ultrasound_Obstetric") { - $investigation_results = explode(",", $results->value); - $investigation_per_valid = explode(",", $results->per_investigation); - $investigation_comments = explode(",", $results->comment); - - if ($results->all_authenticated == 1) { - for ($i = 0; $i < count($inpatient_status); $i++) { - if ($inpatient_status[$i] == 0) { - $result = Investigation::where('id', $investigation_ids[$i])->first(); - $opd_investigations['name'][] = $result->name; - $opd_investigations['value'][] = $investigation_results[$i]; - $opd_investigations['comment'][] = $investigation_comments[$i]; - } else { - $result = Investigation::where('id', $investigation_ids[$i])->first(); - $ward_investigations['name'][] = $result->name; - $ward_investigations['value'][] = $investigation_results[$i]; - $ward_investigations['comment'][] = $investigation_comments[$i]; - } - } - } else { - for ($i = 0; $i < count($inpatient_status); $i++) { - if ($investigation_per_valid[$i] == 1) { - // this investigation is authenticated - if ($inpatient_status[$i] == 0) { - $result = Investigation::where('id', $investigation_ids[$i])->first(); - $opd_investigations['name'][] = $result->name; - $opd_investigations['value'][] = $investigation_results[$i]; - $opd_investigations['comment'][] = $investigation_comments[$i]; - } else { - $result = Investigation::where('id', $investigation_ids[$i])->first(); - $ward_investigations['name'][] = $result->name; - $ward_investigations['value'][] = $investigation_results[$i]; - $ward_investigations['comment'][] = $investigation_comments[$i]; - } - } else { - if ($inpatient_status[$i] == 0) { - $result = Investigation::where('id', $investigation_ids[$i])->first(); - $opd_investigations['name'][] = $result->name; - $opd_investigations['value'][] = "Pending"; - $opd_investigations['comment'][] = "Pending"; - } else { - $result = Investigation::where('id', $investigation_ids[$i])->first(); - $ward_investigations['name'][] = $result->name; - $ward_investigations['value'][] = "Pending"; - $ward_investigations['comment'][] = "Pending"; - } - } - } - } - } - } else { - for ($i = 0; $i < count($inpatient_status); $i++) { - if ($inpatient_status[$i] == 0) { - $result = Investigation::where('id', $investigation_ids[$i])->first(); - $opd_investigations['name'][] = $result->name; - $opd_investigations['value'][] = "Pending"; - $opd_investigations['comment'][] = "Pending"; - } else { - $result = Investigation::where('id', $investigation_ids[$i])->first(); - $ward_investigations['name'][] = $result->name; - $ward_investigations['value'][] = "Pending"; - $ward_investigations['comment'][] = "Pending"; - } - } - } - } - - - // previous consultations - if (session()->get('consultation_with_notes') == 1) { - $consultation_with_notes = true; - } else { - $consultation_with_notes = false; - } - - - $patient_episodes = DB::table('patient_episodes')->where('patient_id', $patient_id)->whereNotIn('id', [$episode_id])->get(); - $episode = PatientEpisode::where('id', $episode_id)->first(); - - - $past_episodes_info = []; - $counter = 0; - - foreach ($patient_episodes as $patient_episode) { - if ($counter == 5) { - break; - } - - if (!is_episode_safe_to_delete($patient_episode->id) && isset($patient_episode->consultation_id)) { // exclude empty episodes - $consultations_details = DB::table('consultations')->find($patient_episode->consultation_id); - - if ($consultations_details) { - $past_episodes_info[$counter]["start_date"] = streamline_date_time($patient_episode->created_at); - $past_episodes_info[$counter]["episode_id"] = $patient_episode->id; - - $past_episodes_info[$counter]["primary_diagnosis"] = $consultations_details->primary_diagnosis ?? 0; - if (unserialize($consultations_details->other_diagnoses)) { - $past_episodes_info[$counter]["other_diagnoses"] = unserialize($consultations_details->other_diagnoses); - } else { - $past_episodes_info[$counter]["other_diagnoses"] = []; - } - - $past_episodes_info[$counter]["outcome"] = $consultations_details->outcome_id ?? 0; - $doctor_id = $consultations_details->consultation_done_by ?? $consultations_details->created_by; - $past_episodes_info[$counter]["doctor"] = get_full_name($doctor_id, 'id', 'first_name', 'last_name', 'users'); - $past_episodes_info[$counter]["clinic"] = isset($patient_episode->clinic_id) ? get_name($patient_episode->clinic_id, 'id', 'name', 'clinics') : "N/A"; - - if (isset($patient_episode->triage_id)) { - $triage_details = DB::table('triage')->find($patient_episode->triage_id); - - if ($triage_details) { - $past_episodes_info[$counter]["symptoms"] = [ - "symptom_duration" => $triage_details->symptom_duration, - "symptoms" => $triage_details->symptoms - ]; - - $observations = explode(",", $triage_details->observations); - $past_episodes_info[$counter]["resp"] = "N/A"; - $past_episodes_info[$counter]["mmhg"] = "N/A"; - $past_episodes_info[$counter]["pulse"] = "N/A"; - $past_episodes_info[$counter]["temp"] = "N/A"; - - foreach ($observations as $observation) { - if (strpos($observation, "Temperature") !== false) { - $past_episodes_info[$counter]["temp"] = explode("=", $observation)[1]; - } - - if (strpos($observation, "Pulse") !== false) { - $past_episodes_info[$counter]["pulse"] = explode("=", $observation)[1]; - } - - if (strpos($observation, "Systolic bp") !== false) { - $past_episodes_info[$counter]["mmhg"] = explode("=", $observation)[1]; - } - - if (strpos($observation, "Diastolic bp") !== false) { - $past_episodes_info[$counter]["mmhg"] = $past_episodes_info[$counter]["mmhg"] . " / " . explode("=", $observation)[1]; - } - - if (strpos($observation, "Respirations") !== false) { - $past_episodes_info[$counter]["resp"] = explode("=", $observation)[1]; - } - } - } else { - $past_episodes_info[$counter]["symptoms"] = []; - $past_episodes_info[$counter]["resp"] = "N/A"; - $past_episodes_info[$counter]["mmhg"] = "N/A"; - $past_episodes_info[$counter]["pulse"] = "N/A"; - $past_episodes_info[$counter]["temp"] = "N/A"; - } - } else { - $past_episodes_info[$counter]["symptoms"] = []; - $past_episodes_info[$counter]["resp"] = "N/A"; - $past_episodes_info[$counter]["mmhg"] = "N/A"; - $past_episodes_info[$counter]["pulse"] = "N/A"; - $past_episodes_info[$counter]["temp"] = "N/A"; - } - - $counter++; - } - } - } - - - return view( - 'maternity::maternity.edit_admission_details', - compact( - 'anc_blood_transfusion_details', - 'existing_maternity_inpatient_data', - 'existing_maternity_delivery_plan', - 'existing_maternity_pelvic_examination_and_assessement', - 'existing_uterus_operations', - 'existing_other_facility_operations', - 'diagnoses_all', - 'current_episode_triage_symptoms', - 'patient_episodes', - 'past_episodes_info', - 'episode', - 'consultation_with_notes', - 'existing_maternity_mother_history', - 'existing_blood_transfusion', - 'previous_consultation_inpatient_info', - 'patient_id', - 'episode_id', - 'patient', - 'categories', - 'patient_surgeries', - 'patient_consultations', - 'marital_statuses', - 'diagnoses', - 'diagnoses_patient', - 'relationships', - 'occupations', - 'drug_categories', - 'documents', - 'drug_categories_array', - 'known_patient_alerts', - 'known_patient_allergies', - 'consultation_id', - 'triage_id', - 'triage', - 'anc_registration', - 'emergency_signs', - 'patient_documents', - 'diagnosis', - 'obstetric_history', - 'anc_blood_transfusion', - 'blood_groups', - 'referrals', - 'accuracies', - 'anc_outcomes', - 'hiv_statuses', - 'maternity_progress', - 'ward_investigations', - 'opd_investigations', - 'symptoms', - 'obstetric_history_details', - 'family_planning_methods', - 'caesarian_sections', - 'uterus_operations', - 'gender_based_violence' - - ) - ); - } - - - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - - public function calculate_weeks_of_amenorrhoea_from_lmp(Request $request) - { - $lmp_date = Carbon::createFromFormat('d/m/Y', $request->lmp_date); - $now = Carbon::now(); - $days = $lmp_date->diffInDays($now); - $weeks = floor($days / 7); - $dayRemainder = $days % 7; - $weeks_of_amenorrhoea = $weeks . '' . $dayRemainder . ''; - return response()->json($weeks_of_amenorrhoea); - } - - - public function calculate_edd_from_lmp(Request $request) - { - $lmp_date = $request->lmp_date; - $lmp_date = Carbon::createFromFormat('d/m/Y', $request->lmp_date); - $edd = $lmp_date->addDays(280); - $edd = $edd->toDateString(); - - $date = date("d/m/Y", strtotime($edd)); - - return response()->json($date); - } - - public function update(Request $request, $id) - { - //transfusion_date_array - $maternity_inpatient = MaternityInpatient::findOrFail($id); - - //start database transaction - DB::transaction(function () use ($request, $maternity_inpatient) { - - $episode_id = session()->get('episode_id'); - $patient_episode_details = PatientEpisode::find($episode_id); - $patient_id = $patient_episode_details->patient_id; - $patient = Patient::find($patient_id); - - $maternity_inpatient->primary_diagnosis = $request->primary_diagnosis; - $maternity_inpatient->other_diagnoses = (!empty($request->other_diagnosis[0])) ? serialize($request->other_diagnosis) : null; - $maternity_inpatient->patient_id = $patient_id; - $maternity_inpatient->episode_id = $episode_id; - $maternity_inpatient->gravida = $request->gravida; - $maternity_inpatient->para = $request->para; - $maternity_inpatient->abortion = $request->abortion; - $maternity_inpatient->ectopic_pregnancies = $request->ectopic_pregnancies; - $maternity_inpatient->postpartum = $request->postpartum; - $maternity_inpatient->previous_pph = $request->previous_pph; - $maternity_inpatient->previous_pph_details = $request->pph_details; - $maternity_inpatient->previous_scar = $request->previous_scar; - $maternity_inpatient->previous_scar_number = $request->scar_number; - $maternity_inpatient->previous_scar_indication = $request->scar_indication; - $maternity_inpatient->other_comments_pph = $request->other_comments_pph; - $maternity_inpatient->lmp = isset($request->lmp) ? Carbon::createFromFormat('d/m/Y', $request->lmp)->toDateString() : null; - $maternity_inpatient->accuracy = $request->accuracy; - $maternity_inpatient->edd = null; - - if (isset($request->edd) && !empty($request->edd)) { - try { - $eddDate = Carbon::createFromFormat('d/m/Y', $request->edd); - $maternity_inpatient->edd = $eddDate->toDateString(); - } catch (\Exception $e) { - // Handle the exception if the date format is invalid - $maternity_inpatient->edd = null; - } - } - - - $maternity_inpatient->referral_from = $request->refferal; - $maternity_inpatient->progress = $request->progress; - $maternity_inpatient->born_before_arrival = $request->born_before_arrival; - $maternity_inpatient->vdrl_location = $request->vdrl_location; - $maternity_inpatient->vdrl_date = !is_null($request->vdrl_date) ? Carbon::createFromFormat('d/m/Y', $request->vdrl_date)->toDateString() : null; - $maternity_inpatient->vdrl_result = $request->vdrl_result; - $maternity_inpatient->hiv_location = $request->hiv_location; - $maternity_inpatient->hiv_date = !is_null($request->hiv_date) ? Carbon::createFromFormat('d/m/Y', $request->hiv_date)->toDateString() : null; - $maternity_inpatient->hiv_result_usaid = $request->hiv_result; - $maternity_inpatient->scan_edd = !is_null($request->scan_edd) ? Carbon::createFromFormat('d/m/Y', $request->scan_edd)->toDateString() : null; - $maternity_inpatient->gestation_from_scan = $request->gestation_from_scan; - $maternity_inpatient->history_of_fits = $request->history_of_fits; - $maternity_inpatient->history_of_aph = $request->history_of_aph; - $maternity_inpatient->aph_details = $request->aph_details; - $maternity_inpatient->fits_details = $request->fits_details; - $maternity_inpatient->other_comments = $request->other_comments; - $maternity_inpatient->iufd = $request->iufd; - $maternity_inpatient->weeks_of_amenorrhoea = $request->input('weeks_of_amenorrhoea'); - $maternity_inpatient->delivery_recomendation = $request->delivery_recomendation; - $maternity_inpatient->pregnancy_complications = implode(',', $request->pregnancy_complications ?? []); - $maternity_inpatient->other_pregnancy_complications = $request->other_pregnancy_complications; - $maternity_inpatient->physical_examination = implode(',', $request->physical_examination ?? []); - $maternity_inpatient->heart_physical_examination_details = $request->heart_physical_examination_details; - $maternity_inpatient->breasts_physical_examination_details = $request->breasts_physical_examination_details; - $maternity_inpatient->legs_physical_examination_details = $request->legs_physical_examination_details; - $maternity_inpatient->lungs_physical_examination_details = $request->lungs_physical_examination_details; - $maternity_inpatient->teeth_physical_examination_details = $request->teeth_physical_examination_details; - $maternity_inpatient->other_physical_examinations = $request->other_physical_examinations; - $maternity_inpatient->other_obstetric_risk_factors = $request->other_obstetric_risk_factors; - $maternity_inpatient->current_acute_problems = isset($request->current_acute_problems) ? implode(',', $request->current_acute_problems) : ''; - $maternity_inpatient->obstetric_risk_factors = implode(',', $request->obstetric_risk_factors ?? []); - $maternity_inpatient->blood_transfusion_available = isset($request->blood_transfusion_available) ? implode(',', $request->blood_transfusion_available) : ''; - $maternity_inpatient->fractures = isset($request->fractures) ? implode(',', $request->fractures) : ''; - $maternity_inpatient->blood_transfusion_details = $request->blood_transfusion_details; - $maternity_inpatient->pelvis_fracture_date = !is_null($request->pelvis_fracture_date) ? Carbon::createFromFormat('d/m/Y', $request->pelvis_fracture_date)->toDateString() : null; - $maternity_inpatient->pelvis_fracture_details = $request->pelvis_fracture_details; - $maternity_inpatient->spine_fracture_date = !is_null($request->spine_fracture_date) ? Carbon::createFromFormat('d/m/Y', $request->spine_fracture_date)->toDateString() : null; - $maternity_inpatient->spine_fracture_details = $request->spine_fracture_details; - $maternity_inpatient->femur_fracture_date = !is_null($request->femur_fracture_date) ? Carbon::createFromFormat('d/m/Y', $request->femur_fracture_date)->toDateString() : null; - $maternity_inpatient->femur_fracture_details = $request->femur_fracture_details; - $maternity_inpatient->other_fracture_details = $request->other_fracture_details; - $maternity_inpatient->created_by = auth()->user()->id; - - if ($request->get('submit-btn') == 'submit_maternity_admission') { - // save and complete - $maternity_inpatient->completed = 1; - $maternity_inpatient->save(); - } else { - // save draft - $maternity_inpatient->completed = 0; - $maternity_inpatient->save(); - } - - $clinic_id = get_name('ante_natal', 'slug', 'id', 'clinics'); //get the id for antenatal clinic from clinics table - $maternity_clinic_id = get_name('MATERNITY', 'name', 'id', 'wards'); //get maternity ward id - - // store past obstetric history data with child data - for ($k = 1; $k <= $request->pregnancy_number; $k++) { - $pregnancy = 'pregnancy_' . $k; - $obs_date = $pregnancy . '_obstetric_date'; - $gestation = $pregnancy . '_gestation'; - $outcome = $pregnancy . '_obstetric_outcome'; - $abortion_outcome = $pregnancy . '_abortion_outcome'; - $stillbirth_type = $pregnancy . '_stillbirth_type'; - $delivery_type = $pregnancy . '_delivery_type'; - $classification = $pregnancy . '_classification'; - $puerperium = $pregnancy . '_puerperium'; - $pregnancy_complication = $pregnancy . '_pregnancy_complication'; - $child_name = $pregnancy . '_child_name'; - $child_gender = $pregnancy . '_child_gender'; - $child_patient_number = $pregnancy . '_child_patient_number'; - $child_birth_weight = $pregnancy . '_child_birth_weight'; - $child_immunisation_status = $pregnancy . '_child_immunisation_status'; - $child_health_condition = $pregnancy . '_child_health_condition'; - $stored_pregnancy = $pregnancy . '_id'; - $deleted_pregnancy = 'delete_' . $pregnancy . '_id'; - $child_counter = !empty($request->$child_name[0]) ? count($request->$child_name) : 0; - $children = []; - if ($child_counter > 0) { - for ($t = 0; $t < $child_counter; $t++) { - $children[] = [ - 'health_condition' => $request->$child_health_condition[$t], - 'immunisation_status' => $request->$child_immunisation_status[$t], - 'birth_weight' => $request->$child_birth_weight[$t], - 'patient_number' => $request->$child_patient_number[$t], - 'gender' => $request->$child_gender[$t], - 'name' => $request->$child_name[$t] - ]; - } - } - if (!empty($request->$deleted_pregnancy)) { - $delete_pregnancy = ObstetricHistory::find($request->$deleted_pregnancy); - $delete_pregnancy->delete(); - } elseif (!empty($request->$stored_pregnancy) && empty($request->$deleted_pregnancy)) { - $update_obstetric_history = ObstetricHistory::find($request->$stored_pregnancy); - $update_obstetric_history->patient_id = $patient_id; - $update_obstetric_history->episode_id = $episode_id; - $update_obstetric_history->obstetric_date = isset($request->$obs_date) ? Carbon::createFromFormat('d/m/Y', $request->$obs_date)->toDateString() : null; - $update_obstetric_history->gestation = $request->$gestation; - $update_obstetric_history->outcome = $request->$outcome; - $update_obstetric_history->clinic_id = $clinic_id; - $update_obstetric_history->abortion_outcome = $request->$abortion_outcome; - $update_obstetric_history->stillbirth_type = $request->$stillbirth_type; - $update_obstetric_history->delivery_type = $request->$delivery_type; - $update_obstetric_history->classification = $request->$classification; - $update_obstetric_history->puerperium = $request->$puerperium; - $update_obstetric_history->pregnancy_complication = $request->$pregnancy_complication; - $update_obstetric_history->children = !empty($children) ? json_encode($children) : null; - $update_obstetric_history->updated_by = auth()->user()->id; - $update_obstetric_history->save(); - } else { - $obstetric_history = new ObstetricHistory; - $obstetric_history->patient_id = $patient_id; - $obstetric_history->episode_id = $episode_id; - $obstetric_history->obstetric_date = isset($request->$obs_date) ? Carbon::createFromFormat('d/m/Y', $request->$obs_date)->toDateString() : null; - $obstetric_history->gestation = $request->$gestation; - $obstetric_history->outcome = $request->$outcome; - $obstetric_history->stillbirth_type = $request->$stillbirth_type; - $obstetric_history->clinic_id = $clinic_id; - $obstetric_history->abortion_outcome = $request->$abortion_outcome; - $obstetric_history->delivery_type = $request->$delivery_type; - $obstetric_history->classification = $request->$classification; - $obstetric_history->puerperium = $request->$puerperium; - $obstetric_history->pregnancy_complication = $request->$pregnancy_complication; - $obstetric_history->children = !empty($children) ? json_encode($children) : null; - $obstetric_history->created_by = auth()->user()->id; - $obstetric_history->save(); - } - } - - - - // delivery plan - // pick stored delivery plan id from request ( hidden form input : id) - if (!empty($request->delivery_plan_id)) { - $update_delivery_plan = MaternityDeliveryPlan::find($request->delivery_plan_id); - $update_delivery_plan->patient_id = $patient_id; - $update_delivery_plan->episode_id = $episode_id; - $update_delivery_plan->person_you_live_with = $request->person_you_live_with; - $update_delivery_plan->transport_means_to_facility = $request->transport_means_to_facility; - $update_delivery_plan->person_to_accompany_you = $request->person_to_accompany_you; - $update_delivery_plan->person_to_look_after_home = $request->person_to_look_after_home; - $update_delivery_plan->mother_partner_screened_for = implode(',', $request->mother_partner_screened_for ?? []); - $update_delivery_plan->family_planning_method_plan = $request->family_planning_method_plan; - $update_delivery_plan->person_to_stay_at_facility = $request->person_to_stay_at_facility; - $update_delivery_plan->delivery_method = $request->delivery_method; - $update_delivery_plan->backup_delivery_method = $request->backup_delivery_method; - $update_delivery_plan->after_birth_disposal = $request->after_birth_disposal; - $update_delivery_plan->created_by = auth()->user()->id; - $update_delivery_plan->save(); - } else { - $delivery_plan = new MaternityDeliveryPlan(); - $delivery_plan->patient_id = $patient_id; - $delivery_plan->episode_id = $episode_id; - $delivery_plan->person_you_live_with = $request->person_you_live_with; - $delivery_plan->transport_means_to_facility = $request->transport_means_to_facility; - $delivery_plan->person_to_accompany_you = $request->person_to_accompany_you; - $delivery_plan->person_to_look_after_home = $request->person_to_look_after_home; - $delivery_plan->mother_partner_screened_for = implode(',', $request->mother_partner_screened_for ?? []); - $delivery_plan->family_planning_method_plan = $request->family_planning_method_plan; - $delivery_plan->person_to_stay_at_facility = $request->person_to_stay_at_facility; - $delivery_plan->delivery_method = $request->delivery_method; - $delivery_plan->backup_delivery_method = $request->backup_delivery_method; - $delivery_plan->after_birth_disposal = $request->after_birth_disposal; - $delivery_plan->created_by = auth()->user()->id; - $delivery_plan->save(); - } - - //Store Mother's History - if (!empty($request->mother_obs_history_id)) { - $maternity_mother_history = MaternityMotherHistory::find($request->mother_obs_history_id); - $maternity_mother_history->updated_by = auth()->user()->id; - } else { - $maternity_mother_history = new MaternityMotherHistory(); - $maternity_mother_history->created_by = auth()->user()->id; - } - - // maternity mother history - $maternity_mother_history->patient_id = $patient_id; - $maternity_mother_history->episode_id = $episode_id; - $maternity_mother_history->cycle_length = $request->cycle_length; - $maternity_mother_history->menses_length = $request->menses_length; - $maternity_mother_history->menses_amount = $request->menses_amount; - $maternity_mother_history->family_planning_method = $request->family_planning_method; - $maternity_mother_history->date_discontinued = isset($request->date_discontinued) ? Carbon::createFromFormat('d/m/Y', $request->date_discontinued)->toDateString() : null; - $maternity_mother_history->why_stop_family_planning = $request->why_stop_family_planning; - $maternity_mother_history->medical_presentations = implode(',', $request->medical_presentations ?? []); - $maternity_mother_history->other_medical_presentations = $request->other_medical_presentations; - $maternity_mother_history->sgbv_risk = implode(',', $request->sgbv_risk ?? []); - $maternity_mother_history->other_sgbv_risk = $request->other_sgbv_risk; - $maternity_mother_history->husband_health = $request->husband_health; - $maternity_mother_history->history_of_aph = $request->history_of_aph; - $maternity_mother_history->history_aph_details = $request->history_aph_details; - $maternity_mother_history->history_of_fits = $request->history_of_fits; - $maternity_mother_history->history_fit_details = $request->history_fit_details; - $maternity_mother_history->other_medical_history_comment = $request->other_medical_history_comment; - foreach ($request->uterus_operations_name as $key => $operation) { - if (!empty($operation)) - $uterine_operations[] = ['name' => $operation, 'date' => $request->uterus_operations_date[$key], 'facility_name' => $request->uterus_operations_facility_name[$key]]; - } - foreach ($request->other_operations_name as $key => $operation) { - if (!empty($operation)) - $other_surgeries[] = ['name' => $operation, 'date' => $request->other_operations_name_date[$key], 'facility_name' => $request->other_operations_name_facility_name[$key]]; - } - $maternity_mother_history->uterine_surgeries = !empty($uterine_operations) ? json_encode($uterine_operations) : null; - $maternity_mother_history->other_surgeries = !empty($other_surgeries) ? json_encode($other_surgeries) : null; - - $maternity_mother_history->created_by = auth()->user()->id; - $maternity_mother_history->save(); - - - - - $blood_group = $request->blood_group; - $transfusion_date_array = $request->transfusion_date; - $no_of_units_array = $request->no_of_units; - $transfusion_comment_array = $request->transfusion_comment; - - - if (is_array($request->blood_group_transfusion_id)) { - foreach ($request->blood_group_transfusion_id as $key => $value) { - if (isset($request->blood_group_transfusion_id[$key])) { - $anc_blood_transfusion = AnteNatalClinicBloodTransfusion::find($request->blood_group_transfusion_id[$key]); - } else { - // Create a new instance if ID doesn't exist - $anc_blood_transfusion = new AnteNatalClinicBloodTransfusion(); - } - - $anc_blood_transfusion->blood_group_id = $blood_group; - $anc_blood_transfusion->patient_id = $patient_id; - $anc_blood_transfusion->episode_id = $episode_id; - $anc_blood_transfusion->transfusion_date = Carbon::createFromFormat('d/m/Y', $transfusion_date_array[$key])->toDateString(); - $anc_blood_transfusion->number_of_units = $no_of_units_array[$key]; - $anc_blood_transfusion->comments = $transfusion_comment_array[$key]; - $anc_blood_transfusion->updated_by = auth()->user()->id; - $anc_blood_transfusion->save(); - } - } else { - // Log::error('blood_group_transfusion_id is not an array or is null.'); - } - - - PelvicExaminationAndAssessment::updateOrInsert( - [ - 'patient_id' => $patient_id, - 'episode_id' => $episode_id, - ], - [ - 'vulva' => $request->vulva, - 'vagina' => $request->vagina, - 'cervix' => $request->cervix, - 'dilatation' => $request->dilatation, - 'uterine_adnexa' => $request->uterine_adnexa, - 'moniliasis' => $request->moniliasis, - 'diagonal_conjugate' => round($request->diagonal_conjugate, 2), - 'sacrum' => $request->sacrum, - 'ischial_spinces' => $request->ischial_spinces, - 'sub_public_angle' => $request->sub_public_angle, - 'ischial_tuberosities' => $request->ischial_tuberosities, - 'pelvic_adequate' => $request->pelvic_adequate, - 'updated_at' => Carbon::now(), - 'created_by' => auth()->user()->id, - 'updated_by' => auth()->user()->id, - ] - ); - - }); - - // end database transaction - - - - - - // pick previoius_url //picked from /create - $previous_url = Session::get('previous_url'); - - switch ($request->get('submit-btn')) { - case 'save_maternity_admission': - flash('Maternity Inpatient Sheet Saved successfully')->success(); - // return redirect('patient_episodes'); - if ($previous_url == url('/wards/select')) { - return redirect('/wards/select'); - } elseif ($previous_url == url('/patient_episodes')) { - return redirect('patient_episodes'); - } else { - return redirect('patient_episodes'); - } - - break; - case 'submit_maternity_admission': - flash('Maternity Inpatient Sheet Updated and Submitted successfully')->success(); - if ($previous_url == url('/wards/select')) { - return redirect('/wards/select'); - } elseif ($previous_url == url('/patient_episodes')) { - return redirect('patient_episodes'); - } else { - return redirect('patient_episodes'); - } - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - // - } - - public function delete_anc_blood_transfusion_record(Request $request, $id) - { - $bloodTransfusion = AnteNatalClinicBloodTransfusion::find($id); - if (!$bloodTransfusion) { - // Handle if the record doesn't exist - return response()->json(['error' => 'Blood transfusion record not found'], 404); - } - - // Delete the record - $bloodTransfusion->delete(); - - // Oreturn a response - return response()->json(['success' => 'Blood transfusion record deleted successfully'], 200); - } - - - /* display delivery_record */ - public function delivery_record_details() - { - /* display maternity delivery record details */ - $episode_id = session()->get('episode_id'); - $patient_episode_details = PatientEpisode::find($episode_id); - $patient_id = $patient_episode_details->patient_id; - $patient = Patient::find($patient_id); - $delivery_record_details = MaternityDeliveryRecord::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $users = DB::table('users')->pluck('last_name', 'id'); - $delivery_modes = DB::table('mode_of_delivery')->pluck('name', 'id'); - $delivery_locations = DB::table('location_of_delivery')->pluck('name', 'id'); - $babies = Patient::where(['parent_id' => $patient_id])->get(); //where to be changed to where(parent_id=>$patient_id) - - return view('maternity::maternity.delivery_record_details', compact('episode_id', 'patient_id', 'patient', 'delivery_record_details', 'users', 'delivery_modes', 'delivery_locations', 'babies')); - } - - public function print_delivery_record_details(Request $request) - { - $delivery_record_details = MaternityDeliveryRecord::where(['patient_id' => $request->patient_id, 'episode_id' => $request->episode_id])->first(); - $babies = Patient::where(['parent_id' => $request->patient_id])->get(); - $users = unserialize($request->users); - $delivery_locations = unserialize($request->delivery_locations); - $delivery_modes = unserialize($request->delivery_modes); - $patient_number = $request->patient_number; - $episode_id = $request->episode_id; - - $pdf = SnappyPDF::loadView('maternity::maternity.print_delivery_record_details', compact('delivery_record_details', 'users', 'delivery_modes', 'delivery_locations', 'babies', 'patient_number', 'episode_id')) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', '' . config('app.name') . ' - Printed On ' . date('Y-m-d') . ' By ' . auth()->user()->first_name . " " . auth()->user()->last_name . ''); - return $pdf->inline(__('maternity.delivery_record') . date(" d-m-y h:ia") . '.pdf'); - } - - /* display maternity admission details */ - public function maternity_admission_details() - { - - $episode_id = session()->get('episode_id'); - $patient_episode_details = PatientEpisode::find($episode_id); - $patient_id = $patient_episode_details->patient_id; - $patient = Patient::find($patient_id); - $maternity_admission_details = MaternityInpatient::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $delivery_plan_details = MaternityDeliveryPlan::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $maternity_mother_history_details = MaternityMotherHistory::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $anc_blood_transfusion_details = AnteNatalClinicBloodTransfusion::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $pelvic_examination_and_assessment_details = PelvicExaminationAndAssessment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $obstetric_history = ObstetricHistory::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $obstetric_history_details = ObstetricHistory::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('obstetric_date', 'desc')->get(); - $anc_outcomes = DB::table('ante_natal_clinic_outcomes')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $blood_groups = DB::table('blood_groups')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $blood_transfusion = AnteNatalClinicBloodTransfusion::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->latest()->get(); - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $marital_statuses = DB::table('marital_statuses')->pluck("name", "id"); - $diagnoses = DB::table('diagnoses')->where('available', 1)->orderBy('name', 'asc')->pluck("name", "id"); - $relationships = DB::table('family_relations')->pluck('name', 'id'); - $occupations = DB::table('occupations')->pluck('name', 'id'); - $patient_categories = DB::table('patient_categories')->where('available', 1)->pluck('name', 'id'); - $drug_categories = DB::table('drug_categories')->get(); - $documents = PatientDocument::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->get(); - - $referrals = DB::table('referral_hospitals')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id'); - //pick single referal - - $maternity_progress = DB::table('maternity_progress')->orderBy('name')->pluck('name', 'id'); - $accuracies = DB::table('ante_natal_clinic_accuracies')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - - return view('maternity::maternity.admission_details', compact('episode_id', 'patient_id', 'patient', 'maternity_admission_details', 'categories', 'marital_statuses', 'diagnoses', 'relationships', 'occupations', 'patient_categories', 'drug_categories', 'documents', 'obstetric_history', 'blood_transfusion', 'referrals', 'maternity_progress', 'delivery_plan_details', 'accuracies', 'maternity_mother_history_details', 'pelvic_examination_and_assessment_details', 'obstetric_history_details', 'anc_outcomes', 'blood_groups')); - } - - public function print_maternity_admission_details_pdf($id) - { - - $episode_id = session()->get('episode_id'); - $patient_episode_details = PatientEpisode::find($episode_id); - $patient_id = $patient_episode_details->patient_id; - $patient = Patient::find($patient_id); - $maternity_admission_details = MaternityInpatient::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $delivery_plan_details = MaternityDeliveryPlan::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $maternity_mother_history_details = MaternityMotherHistory::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $anc_blood_transfusion_details = AnteNatalClinicBloodTransfusion::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $pelvic_examination_and_assessment_details = PelvicExaminationAndAssessment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $obstetric_history = ObstetricHistory::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $obstetric_history_details = ObstetricHistory::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('obstetric_date', 'desc')->get(); - $anc_outcomes = DB::table('ante_natal_clinic_outcomes')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $marital_statuses = DB::table('marital_statuses')->pluck("name", "id"); - $diagnoses = DB::table('diagnoses')->where('available', 1)->orderBy('name', 'asc')->pluck("name", "id"); - $relationships = DB::table('family_relations')->pluck('name', 'id'); - $occupations = DB::table('occupations')->pluck('name', 'id'); - $patient_categories = DB::table('patient_categories')->where('available', 1)->pluck('name', 'id'); - $drug_categories = DB::table('drug_categories')->get(); - $documents = \Streamline\Models\PatientDocument::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->get(); - - $blood_transfusion = AnteNatalClinicBloodTransfusion::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $referrals = DB::table('referral_hospitals')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id'); - //pick single referal - - $maternity_progress = DB::table('maternity_progress')->orderBy('name')->pluck('name', 'id'); - $accuracies = DB::table('ante_natal_clinic_accuracies')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - - - // data object with print vars - $ward_request_record = \Streamline\Models\WardItemRequest::find($id); - $hospital_info = \Streamline\Models\HospitalInformation::find(1); - $print_footer = (!is_null($hospital_info->print_footer)) ? '     ' . $hospital_info->print_footer . '' : ''; - - - $data = [ - 'maternity_admission_details' => $maternity_admission_details, - 'hospitalInfo' => $hospital_info, - 'obstetric_history_details' => $obstetric_history_details, - 'delivery_plan_details' => $delivery_plan_details, - 'maternity_mother_history_details' => $maternity_mother_history_details, - - ]; - - return view('maternity::maternity.print.print_maternity_admission_details_pdf', compact('episode_id', 'patient_id', 'patient', 'maternity_admission_details', 'categories', 'marital_statuses', 'diagnoses', 'relationships', 'occupations', 'patient_categories', 'drug_categories', 'documents', 'obstetric_history', 'blood_transfusion', 'referrals', 'maternity_progress', 'delivery_plan_details', 'accuracies', 'maternity_mother_history_details', 'pelvic_examination_and_assessment_details', 'obstetric_history_details', 'anc_outcomes', 'hospital_info')); - - - // $pdf = SnappyPDF::loadView("maternity::maternity.print.print_maternity_admission_details_pdf", $data) - // ->setOrientation('portrait') - // ->setPaper('a4') - // ->setOption('margin-bottom', 5) - // ->setOption('margin-top', 5) - // ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline' . $print_footer); - - // return $pdf->inline('Maternity admission Details' . date(" d-m-y h:ia") . '.pdf'); - } - - /* add new delivery location through bootstrap modal */ - public function add_delivery_location(Request $request) - { - $location_of_delivery = new LocationOfDelivery; - $location_of_delivery->name = $request->delivery_location_name; - $location_of_delivery->created_by = Auth::id(); - $location_of_delivery->save(); - return $location_of_delivery->id; - } - - /* add new ward */ - public function add_new_ward(Request $request) - { - $new_ward = new Ward; - $new_ward->name = $request->ward_name; - $new_ward->created_by = Auth::id(); - $new_ward->save(); - return $new_ward->id; - } - - public function edit_delivery_record($id) - { - $delivery_record = MaternityDeliveryRecord::withTrashed()->find($id); - $patient_id = $delivery_record->patient_id; - $episode_id = $delivery_record->episode_id; - - $patient_episode_details = PatientEpisode::find($episode_id); - $patient_id = $patient_episode_details->patient_id; - $patient = Patient::find($patient_id); - - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $marital_statuses = DB::table('marital_statuses')->pluck("name", "id"); - $diagnoses = DB::table('diagnoses')->where('available', 1)->orderBy('name', 'asc')->pluck("name", "id"); - $relationships = DB::table('family_relations')->pluck('name', 'id'); - $occupations = DB::table('occupations')->pluck('name', 'id'); - $patient_categories = DB::table('patient_categories')->where('available', 1)->pluck('name', 'id'); - $drug_categories = DB::table('drug_categories')->get(); - $documents = PatientDocument::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->get(); - //allergies and alerts - $known_patient_allergies = Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->pluck('name', 'id'); - - /* SELECT User_Id, First_Name,Last_Name FROM users WHERE Active = 1 AND User_Group_Id in (7,37,39,42,47,59,60) ORDER BY First_Name ASC; */ - $users = DB::table('users')->orderBy("first_name", "asc")->get()->toArray(); - $allowed_users = DB::table('users')->orderBy('first_name')->pluck('first_name', 'id')->prepend('- select -', ''); - $mode_of_delivery = DB::table('mode_of_delivery')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $location_of_delivery = DB::table('location_of_delivery')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $respiration_minutes = DB::table('spontaneous_regular_respiration_in_minutes')->pluck('minutes', 'id'); - $wards = DB::table('wards')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); /* select post natal ward */ - - return view('maternity::maternity.edit_delivery_record', compact('delivery_record', 'patient_id', 'episode_id', 'patient', 'categories', 'drug_categories_array', 'known_patient_alerts', 'known_patient_allergies', 'marital_statuses', 'diagnoses', 'relationships', 'occupations', 'patient_categories', 'drug_categories', 'documents', 'allowed_users', 'users', 'mode_of_delivery', 'location_of_delivery', 'respiration_minutes', 'wards', 'obstetric_history_details')); - } - - public function update_delivery_record(Request $request, $id) - { - //inputs from the delivery section - $patient_id = $request->patient_id; - $episode_id = $request->episode_id; - - $patient_episode_details = PatientEpisode::find($episode_id); - $patient_id = $patient_episode_details->patient_id; - $parent_record = Patient::find($patient_id); - - $foetal_number = $request->foetal_number; - $date_of_birth = implode(',', $request->birthdate); - $delivery_time = implode(',', $request->deliveryTime); - $duration1 = implode(',', $request->duration1); - $duration2_hrs = implode(',', $request->duration2_hrs); - $duration2_mins = implode(',', $request->duration2_mins); - $baby_one_duration2 = $request->duration2_hrs[0] . ' and ' . $request->duration2_mins[0]; - $baby_two_duration2 = $request->duration2_hrs[1] . ' and ' . $request->duration2_mins[1]; - $baby_three_duration2 = $request->duration2_hrs[2] . ' and ' . $request->duration2_mins[2]; - $duration2 = [$baby_one_duration2, $baby_two_duration2, $baby_three_duration2]; - $duration2 = implode(',', $duration2); - - $baby_one_duration3 = $request->duration3_hrs[0] . ' and ' . $request->duration3_mins[0]; - $baby_two_duration3 = $request->duration3_hrs[1] . ' and ' . $request->duration3_mins[1]; - $baby_three_duration3 = $request->duration3_hrs[2] . ' and ' . $request->duration3_mins[2]; - $duration3 = [$baby_one_duration3, $baby_two_duration3, $baby_three_duration3]; - $duration3 = implode(',', $duration3); - - $delivered_by_cadre = implode(',', $request->deliveredByCadre); //1-staff,2-student - $delivered_by_name = implode(',', $request->deliveredByName); //picks user IDs - $supervised_by = implode(',', $request->supervisedBy); //picks user IDs - $mode_of_delivery = implode(',', $request->modeOfDelivery); - $indication_for_cs = implode(',', $request->indicationForCS); - $location_of_delivery = implode(',', $request->locationOfDelivery); - $delivery_comments = implode(',', $request->deliveryComments); - $blood_loss = $request->bloodLoss; //not array - $bloodloss_measurement = $request->bloodloss_measurement; //not array - //inputs from the baby section - $received_by = implode(',', $request->receivedBy); - $gender = implode(',', $request->sex); //1=female 2=male 3=ambigous - $condition = implode(',', $request->condition); - $weight = implode(',', $request->weight); - $birth_order = implode(',', $request->birth_order); - $congenital_abnormalities1 = $request->congenital_abnormalities1; - $congenital_abnormalities2 = $request->congenital_abnormalities2; - $congenital_abnormalities3 = $request->congenital_abnormalities3; - $congenital_abnormalities = [$congenital_abnormalities1, $congenital_abnormalities2, $congenital_abnormalities3]; - $congenital_abnormalities = implode(',', $congenital_abnormalities); - $baby_comments = implode(',', $request->babyComments); - - //if baby condition = fresh SB or mecarated SB - $perinetal_death_notification_form1 = $request->perinetal_death_notification_form1; - $perinetal_death_notification_form2 = $request->perinetal_death_notification_form2; - $perinetal_death_notification_form3 = $request->perinetal_death_notification_form3; - $perinetal_death_notification_form = [$perinetal_death_notification_form1, $perinetal_death_notification_form2, $perinetal_death_notification_form3]; - $perinetal_death_notification_form = implode(',', $perinetal_death_notification_form); - $perinetal_audit_form1 = $request->perinetal_audit_form1; - $perinetal_audit_form2 = $request->perinetal_audit_form2; - $perinetal_audit_form3 = $request->perinetal_audit_form3; - $perinetal_audit_form = [$perinetal_audit_form3, $perinetal_audit_form2, $perinetal_audit_form1]; - $perinetal_audit_form = implode(',', $perinetal_audit_form); - - //if baby condition = Alive - $apgar_score_at_minute_1 = !is_null($request->apgar_score_at_minute_1) ? implode(',', $request->apgar_score_at_minute_1) : null; - $apgar_score_at_minute_5 = !is_null($request->apgar_score_at_minute_5) ? implode(',', $request->apgar_score_at_minute_5) : null; - $age_established_spontaneous_reg_respiration = !is_null($request->age_established_spontaneous_reg_respiration) ? implode(',', $request->age_established_spontaneous_reg_respiration) : null; - $resuscitation_airway = !is_null($request->resuscitation_airway) ? implode(',', $request->resuscitation_airway) : null; - $resuscitation_suction = !is_null($request->resuscitation_suction) ? implode(',', $request->resuscitation_suction) : null; - $advanced_resuscitation = !is_null($request->advanced_resuscitation) ? implode(',', $request->advanced_resuscitation) : null; - $advanced_resuscitation_ett = !is_null($request->advanced_resuscitation_ett) ? implode(',', $request->advanced_resuscitation_ett) : null; - $advanced_resuscitation_ecm = !is_null($request->advanced_resuscitation_ecm) ? implode(',', $request->advanced_resuscitation_ecm) : null; - $advanced_resuscitation_drugs1 = $request->advanced_resuscitation_drugs1; - $advanced_resuscitation_drugs2 = $request->advanced_resuscitation_drugs2; - $advanced_resuscitation_drugs3 = $request->advanced_resuscitation_drugs3; /* 1.IV dextrose 2.Adrenaline 3.Aminophylline */ - $advanced_resuscitation_drugs = [$advanced_resuscitation_drugs1, $advanced_resuscitation_drugs2, $advanced_resuscitation_drugs3]; - $advanced_resuscitation_drugs = !is_null($advanced_resuscitation_drugs) ? implode(',', $advanced_resuscitation_drugs) : null; - $im_vitamin_k_given1 = $request->im_vitamin_k_given1; - $im_vitamin_k_given2 = $request->im_vitamin_k_given2; - $im_vitamin_k_given3 = $request->im_vitamin_k_given3; - $im_vitamin_k_given = [$im_vitamin_k_given1, $im_vitamin_k_given2, $im_vitamin_k_given3]; - $im_vitamin_k_given = !is_null($im_vitamin_k_given) ? implode(',', $im_vitamin_k_given) : null; - $moved_to = !is_null($request->moved_to) ? implode(',', $request->moved_to) : null; //1=Post Natal 2=SCBU 3=Labour - $created_at = Carbon::now(); - - $delivery_record = MaternityDeliveryRecord::findOrFail($id); - $delivery_record->patient_id = $patient_id; - $delivery_record->episode_id = $episode_id; - $delivery_record->foetal_number = $foetal_number; - $delivery_record->date_of_birth = $date_of_birth; - $delivery_record->delivery_time = $delivery_time; - $delivery_record->duration_1 = $duration1; - $delivery_record->duration_2 = $duration2; - $delivery_record->duration_3 = $duration3; - $delivery_record->delivered_by_cadre = $delivered_by_cadre; - $delivery_record->delivered_by_name = $delivered_by_name; - $delivery_record->supervised_by = $supervised_by; - $delivery_record->mode_of_delivery = $mode_of_delivery; - $delivery_record->indication_for_cs = $indication_for_cs; - $delivery_record->location_of_delivery = $location_of_delivery; - $delivery_record->delivery_comments = $delivery_comments; - $delivery_record->blood_loss = $blood_loss; - $delivery_record->bloodloss_measurement = $bloodloss_measurement; - $delivery_record->received_by = $received_by; - $delivery_record->gender = $gender; - $delivery_record->baby_condition = $condition; - $delivery_record->weight = $weight; - $delivery_record->congenital_abnormalities = $congenital_abnormalities; - $delivery_record->birth_order = $birth_order; - $delivery_record->baby_comments = $baby_comments; - $delivery_record->perinatal_death_notification = $perinetal_death_notification_form; - $delivery_record->perinatal_audit_form = $perinetal_audit_form; - $delivery_record->apgar_score_at_minute_1 = $apgar_score_at_minute_1; - $delivery_record->apgar_score_at_minute_5 = $apgar_score_at_minute_5; - $delivery_record->age_established_spontaneous_reg_respiration = $age_established_spontaneous_reg_respiration; - $delivery_record->resuscitation_airway = $resuscitation_airway; - $delivery_record->resuscitation_suction = $resuscitation_suction; - $delivery_record->advanced_resuscitation_ett = $advanced_resuscitation_ett; - $delivery_record->advanced_resuscitation_ecm = $advanced_resuscitation_ecm; - $delivery_record->advanced_resuscitation_drugs = $advanced_resuscitation_drugs; - $delivery_record->IM_vitamin_k_given = $im_vitamin_k_given; - $delivery_record->moved_to = $moved_to; - $delivery_record->created_by = Auth::id(); - $delivery_record->save(); - - /* start process of registering the baby in the patients table */ - $children_ids_array = []; - //loop the registration depending on the foetal number - for ($i = 0; $i < $foetal_number; $i++) { - $fname = 'Baby of'; - $lname = $parent_record->first_name . ' ' . $parent_record->last_name; - $gender_array = clean($request->sex); - $date_of_birth_array = $request->birthdate; - $gender = isset($gender_array[$i]) ? $gender_array[$i] : 0; - $birthdate_explode = explode("/", $date_of_birth_array[$i]); - //if twins - if ($foetal_number == 2 && $i == 0) { - $lname = $lname . ' -twin 1'; - $birthdate = $date_of_birth_array[1]; //$birthdate_explode[2] . $birthdate_explode[1] . $birthdate_explode[0]; - } elseif ($foetal_number == 2 && $i == 1) { - $birthdate = $date_of_birth_array[1]; //$birthdate_explode[2] . $birthdate_explode[1] . $birthdate_explode[0]; - $lname = $lname . ' -twin 2'; - } - //if triplets - if ($foetal_number == 3 && $i == 0) { - $birthdate = $date_of_birth_array[1]; //$birthdate_explode[2] . $birthdate_explode[1] . $birthdate_explode[0]; - $lname = $lname . ' -triplet 1'; - } elseif ($foetal_number == 3 && $i == 1) { - $birthdate = $date_of_birth_array[2]; //$birthdate_explode[2] . $birthdate_explode[1] . $birthdate_explode[0]; - $lname = $lname . ' -triplet 2'; - } elseif ($foetal_number == 3 && $i == 2) { - $birthdate = isset($date_of_birth_array[3]) ? $date_of_birth_array[2] : ""; //$birthdate_explode[2] . $birthdate_explode[1] . $birthdate_explode[0]; - $lname = $lname . ' -triplet 3'; - } - //if singleton - if ($foetal_number == 1) { - $birthdate = $date_of_birth_array[1]; //$birthdate_explode[2] . $birthdate_explode[1] . $birthdate_explode[0]; - } - $position = ''; - $department = ''; - $age = 0; - $agemonths = 0; - $district = $parent_record->district_id; - $county_id = $parent_record->county_id; - $parish = $parent_record->parish_id; - $subcounty = $parent_record->subcounty_id; - $village = $parent_record->village_id; - $maritalstatus = 1; - $occupation = 0; - $nextkin = $parent_record->first_name . ' ' . $parent_record->last_name; - $nextrelation = 4; //'Mother'; - $national_id = ''; - $mobilenumber = $parent_record->phone; - $mobileowner = $parent_record->phone_owner; - $patient_category = $parent_record->category_id; - $chairman_name = $parent_record->lc_one; - $any_contact = $parent_record->hospital_contact; - $religion = $parent_record->religion_id; - $staff_id = Auth::id(); - $language = $parent_record->language; - } - - /* Insert into the audit trail table when worked on*/ - flash('Delivery record has been been updated')->info(); - return redirect('patient_episodes'); - } - - // create labur ward admission sheet - public function create_labour_ward_admission_sheet() - { - - $episode_id = session()->get('episode_id'); - $patient_episode_details = PatientEpisode::find($episode_id); - $diagnoses_patient = DB::table('diagnoses')->orderBy('name', 'asc')->pluck("name", "id"); - $patient_id = $patient_episode_details->patient_id; - $patient = Patient::find($patient_id); - - // fetch existing data from maternity inpatient and related tables - $existing_maternity_inpatient_data = MaternityInpatient::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $latest_existing_maternity_inpatient_data = MaternityInpatient::where(['patient_id' => $patient_id])->latest()->first(); - $existing_maternity_delivery_plan = MaternityDeliveryPlan::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $existing_maternity_mother_history = MaternityMotherHistory::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $latest_existing_maternity_mother_history = MaternityMotherHistory::where(['patient_id' => $patient_id])->latest()->first(); - $existing_maternity_pelvic_examination_and_assessement = PelvicExaminationAndAssessment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $existing_uterus_operations = OtherFacilityUterusOperation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $existing_other_facility_operations = OtherFacilityOtherOperation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $existing_blood_transfusion = AnteNatalClinicBloodTransfusion::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $anc_blood_transfusion = AnteNatalClinicBloodTransfusion::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $obstetric_history_details = ObstetricHistory::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('obstetric_date', 'desc')->get(); - $anc_registration = AnteNatalClinicRegistration::where(['patient_id' => $patient_id])->orderBy('id', 'desc')->first(); - $latest_anc_registration = AnteNatalClinicRegistration::where(['patient_id' => $patient_id])->orderBy('id', 'desc')->latest()->first(); - - // fetch patient surgeries - $patient_surgeries = Surgery::leftJoin('users', 'surgeries.surgeon', '=', 'users.id') - ->leftJoin('procedures', 'surgeries.procedure_id', '=', 'procedures.id') - ->where('patient_id', $patient_id) - ->get(['procedures.name as procedure_name', 'date_surgery_completed', 'users.first_name', 'users.last_name', 'primary_diagnosis', 'other_diagnoses']); - - // fetch patient consultations - $patient_consultations = Consultation::leftJoin('users', 'consultations.created_by', '=', 'users.id') - ->leftJoin('diagnoses', 'consultations.primary_diagnosis', '=', 'diagnoses.id') - ->leftJoin('wards', 'consultations.ward_id', '=', 'wards.id') - ->leftJoin('outcomes', 'consultations.outcome_id', '=', 'outcomes.id') - ->where(['patient_id' => $patient_id]) - ->get([ - - 'admitted_on', - 'wards.name as ward', - 'diagnoses.name as primary_diagnosis', - 'other_diagnoses', - 'users.first_name', - 'users.last_name', - 'consultations.created_at', - 'outcomes.name as outcome', - - ]); - - - - // fetch previous consultations for patient - $previous_consultation_inpatient_info = InpatientInfo::leftJoin('diagnoses', 'inpatient_info.primary_diagnosis', '=', 'diagnoses.id') - ->leftJoin('users', 'inpatient_info.discharged_by', '=', 'users.id') - ->leftJoin('wards', 'inpatient_info.ward_id', '=', 'wards.id') - ->leftJoin('triage', 'inpatient_info.episode_id', '=', 'triage.episode_id') - ->leftJoin('consultations', 'inpatient_info.episode_id', '=', 'consultations.episode_id') - ->leftJoin('ordered_investigations', 'inpatient_info.episode_id', '=', 'ordered_investigations.episode_id') - ->leftJoin('ward_treatments', 'inpatient_info.episode_id', '=', 'ward_treatments.episode_id') - ->leftJoin('outcomes', 'inpatient_info.outcome_id', '=', 'outcomes.id') - ->where([['inpatient_info.patient_id', $patient_id], ['inpatient_info.episode_id', '!=', $episode_id]])->get( - [ - 'diagnoses.name as primary_diagnosis', - 'inpatient_info.other_diagnoses as other_diagnoses', - 'users.first_name as first_name', - 'diagnoses.name as primary_diagnosis', - 'inpatient_info.other_diagnoses', - 'outcomes.name as outcome', - 'inpatient_info.episode_id', - 'inpatient_info.admitted_on', - 'inpatient_info.discharged_on', - 'users.first_name as first_name', - 'users.last_name as last_name', - 'wards.name as ward', - 'triage.observations', - 'triage.symptoms as triage_symptoms', - 'triage.symptom_duration as triage_symptom_duration', - 'consultations.symptoms as consultation_symptoms', - 'consultations.symptom_duration as consultation_symptom_duration', - DB::raw("CONCAT(triage.symptoms, ', ', consultations.symptoms) as symptoms"), - DB::raw("CONCAT(triage.symptom_duration, ', ', consultations.symptom_duration) as symptom_duration"), - ] - - )->take(5); - - - $current_episode_triage_symptoms = InpatientInfo::leftJoin('diagnoses', 'inpatient_info.primary_diagnosis', '=', 'diagnoses.id') - ->leftJoin('users', 'inpatient_info.discharged_by', '=', 'users.id') - ->leftJoin('wards', 'inpatient_info.ward_id', '=', 'wards.id') - ->leftJoin('triage', 'inpatient_info.episode_id', '=', 'triage.episode_id') - ->leftJoin('consultations', 'inpatient_info.episode_id', '=', 'consultations.episode_id') - ->leftJoin('ordered_investigations', 'inpatient_info.episode_id', '=', 'ordered_investigations.episode_id') - ->leftJoin('ward_treatments', 'inpatient_info.episode_id', '=', 'ward_treatments.episode_id') - ->leftJoin('outcomes', 'inpatient_info.outcome_id', '=', 'outcomes.id') - ->where([['inpatient_info.patient_id', $patient_id], ['inpatient_info.episode_id', '=', $episode_id]])->get( - [ - 'diagnoses.name as primary_diagnosis', - 'inpatient_info.other_diagnoses as other_diagnoses', - 'users.first_name as first_name', - 'diagnoses.name as primary_diagnosis', - 'inpatient_info.other_diagnoses', - 'outcomes.name as outcome', - 'inpatient_info.episode_id', - 'inpatient_info.admitted_on', - 'inpatient_info.discharged_on', - 'users.first_name as first_name', - 'users.last_name as last_name', - 'wards.name as ward', - 'triage.observations', - 'triage.symptoms as triage_symptoms', - 'triage.symptom_duration as triage_symptom_duration', - 'consultations.symptoms as consultation_symptoms', - 'consultations.symptom_duration as consultation_symptom_duration', - DB::raw("CONCAT(triage.symptoms, ', ', consultations.symptoms) as symptoms"), - DB::raw("CONCAT(triage.symptom_duration, ', ', consultations.symptom_duration) as symptom_duration"), - ] - - )->take(5); - - - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $marital_statuses = DB::table('marital_statuses')->pluck("name", "id"); - $diagnoses = DB::table('diagnoses')->where('available', 1)->orderBy('name', 'asc')->pluck("name", "id")->prepend('- select -', ''); - $relationships = DB::table('family_relations')->pluck('name', 'id'); - $occupations = DB::table('occupations')->pluck('name', 'id'); - $patient_categories = DB::table('patient_categories')->where('available', 1)->pluck('name', 'id'); - $drug_categories = DB::table('drug_categories')->get(); - $documents = \Streamline\Models\PatientDocument::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->get(); - //allergies and alerts - $known_patient_allergies = \Streamline\Models\Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = \Streamline\Models\Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->pluck('name', 'id'); - $consultation_id = get_name($episode_id, "id", "consultation_id", "patient_episodes"); - $triage_id = get_name($episode_id, "id", "triage_id", "patient_episodes"); - $triage = Triage::find($triage_id); //this maybe null since one may be admitted straight away - $emergency_signs = EmergencySign::where(['patient_id' => $patient_id, 'triage_id' => $triage_id, 'episode_id' => $episode_id])->get(); - $patient_documents = PatientDocument::where(['patient_id' => $patient_id])->get(); - $diagnosis = Diagnosis::where('available', 1)->orderby('name', 'asc')->get(); - $diagnoses_all = DB::table('diagnoses')->whereNull('deleted_at')->select('id', 'prompts', 'reference_areas', 'reference_names')->get(); - $obstetric_history = ObstetricHistory::where(['patient_id' => $patient_id])->orderBy('obstetric_date', 'desc')->get(); - $blood_groups = DB::table('blood_groups')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - - $referrals = DB::table('referral_hospitals')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $accuracies = DB::table('ante_natal_clinic_accuracies')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $anc_outcomes = DB::table('ante_natal_clinic_outcomes')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $hiv_statuses = ['' => '-- Select --', '0' => 'Negative', '1' => 'Positive', '3' => 'Unknown']; - $maternity_progress = DB::table('maternity_progress')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $family_planning_methods = FamilyPlanningMethod::orderBy('name', 'asc')->get(); - $family_planning_methods_data = FamilyPlanningMethod::all(); - - $caesarian_sections = CaesarianSection::orderBy('name', 'asc')->pluck("name", "id")->prepend('- Select -', ''); - $uterus_operations = UterusOperation::orderBy('name', 'asc')->get(); - $uterus_operations = UterusOperation::orderBy('name', 'asc')->pluck("name", "id")->prepend('- Select -', ''); - - // prep the inpatient investigation arrays and counters - $opd_investigations = []; - $ward_investigations = []; - $symptoms = Symptom::pluck("name", "id"); - - // get all investigations ordered in this episode - $ordered_investigations = OrderedInvestigation::where(['episode_id' => $episode_id])->get(); - - // get all results - $investigation_results_order_ids = InvestigationResults::pluck('order_id', 'id')->toArray(); - - foreach ($ordered_investigations as $investigation) { - $investigation_ids = explode(",", $investigation->investigation_id); - $inpatient_status = explode(",", $investigation->for_inpatient); - - // check if results are available for this investigation - if (in_array($investigation->id, $investigation_results_order_ids)) { - // get the key if available - $key = array_search($investigation->id, $investigation_results_order_ids); - - // get the results object - $results = InvestigationResults::find($key); - - // exclude obstetric u/s results - if ($results->result_type != "Ultrasound_Obstetric") { - $investigation_results = explode(",", $results->value); - $investigation_per_valid = explode(",", $results->per_investigation); - $investigation_comments = explode(",", $results->comment); - - if ($results->all_authenticated == 1) { - for ($i = 0; $i < count($inpatient_status); $i++) { - if ($inpatient_status[$i] == 0) { - $result = Investigation::where('id', $investigation_ids[$i])->first(); - $opd_investigations['name'][] = $result->name; - $opd_investigations['value'][] = $investigation_results[$i]; - $opd_investigations['comment'][] = $investigation_comments[$i]; - } else { - $result = Investigation::where('id', $investigation_ids[$i])->first(); - $ward_investigations['name'][] = $result->name; - $ward_investigations['value'][] = $investigation_results[$i]; - $ward_investigations['comment'][] = $investigation_comments[$i]; - } - } - } else { - for ($i = 0; $i < count($inpatient_status); $i++) { - if ($investigation_per_valid[$i] == 1) { - // this investigation is authenticated - if ($inpatient_status[$i] == 0) { - $result = Investigation::where('id', $investigation_ids[$i])->first(); - $opd_investigations['name'][] = $result->name; - $opd_investigations['value'][] = $investigation_results[$i]; - $opd_investigations['comment'][] = $investigation_comments[$i]; - } else { - $result = Investigation::where('id', $investigation_ids[$i])->first(); - $ward_investigations['name'][] = $result->name; - $ward_investigations['value'][] = $investigation_results[$i]; - $ward_investigations['comment'][] = $investigation_comments[$i]; - } - } else { - if ($inpatient_status[$i] == 0) { - $result = Investigation::where('id', $investigation_ids[$i])->first(); - $opd_investigations['name'][] = $result->name; - $opd_investigations['value'][] = "Pending"; - $opd_investigations['comment'][] = "Pending"; - } else { - $result = Investigation::where('id', $investigation_ids[$i])->first(); - $ward_investigations['name'][] = $result->name; - $ward_investigations['value'][] = "Pending"; - $ward_investigations['comment'][] = "Pending"; - } - } - } - } - } - } else { - for ($i = 0; $i < count($inpatient_status); $i++) { - if ($inpatient_status[$i] == 0) { - $result = Investigation::where('id', $investigation_ids[$i])->first(); - $opd_investigations['name'][] = $result->name; - $opd_investigations['value'][] = "Pending"; - $opd_investigations['comment'][] = "Pending"; - } else { - $result = Investigation::where('id', $investigation_ids[$i])->first(); - $ward_investigations['name'][] = $result->name; - $ward_investigations['value'][] = "Pending"; - $ward_investigations['comment'][] = "Pending"; - } - } - } - } - - - // previous consultations - if (session()->get('consultation_with_notes') == 1) { - $consultation_with_notes = true; - } else { - $consultation_with_notes = false; - } - - - $patient_episodes = DB::table('patient_episodes')->where('patient_id', $patient_id)->whereNotIn('id', [$episode_id])->get(); - $episode = PatientEpisode::where('id', $episode_id)->first(); - - - $past_episodes_info = []; - $counter = 0; - - foreach ($patient_episodes as $patient_episode) { - if ($counter == 5) { - break; - } - - if (!is_episode_safe_to_delete($patient_episode->id) && isset($patient_episode->consultation_id)) { // exclude empty episodes - $consultations_details = DB::table('consultations')->find($patient_episode->consultation_id); - - if ($consultations_details) { - $past_episodes_info[$counter]["start_date"] = streamline_date_time($patient_episode->created_at); - $past_episodes_info[$counter]["episode_id"] = $patient_episode->id; - - $past_episodes_info[$counter]["primary_diagnosis"] = $consultations_details->primary_diagnosis ?? 0; - if (unserialize($consultations_details->other_diagnoses)) { - $past_episodes_info[$counter]["other_diagnoses"] = unserialize($consultations_details->other_diagnoses); - } else { - $past_episodes_info[$counter]["other_diagnoses"] = []; - } - - $past_episodes_info[$counter]["outcome"] = $consultations_details->outcome_id ?? 0; - $doctor_id = $consultations_details->consultation_done_by ?? $consultations_details->created_by; - $past_episodes_info[$counter]["doctor"] = get_full_name($doctor_id, 'id', 'first_name', 'last_name', 'users'); - $past_episodes_info[$counter]["clinic"] = isset($patient_episode->clinic_id) ? get_name($patient_episode->clinic_id, 'id', 'name', 'clinics') : "N/A"; - - if (isset($patient_episode->triage_id)) { - $triage_details = DB::table('triage')->find($patient_episode->triage_id); - - if ($triage_details) { - $past_episodes_info[$counter]["symptoms"] = [ - "symptom_duration" => $triage_details->symptom_duration, - "symptoms" => $triage_details->symptoms - ]; - - $observations = explode(",", $triage_details->observations); - $past_episodes_info[$counter]["resp"] = "N/A"; - $past_episodes_info[$counter]["mmhg"] = "N/A"; - $past_episodes_info[$counter]["pulse"] = "N/A"; - $past_episodes_info[$counter]["temp"] = "N/A"; - - foreach ($observations as $observation) { - if (strpos($observation, "Temperature") !== false) { - $past_episodes_info[$counter]["temp"] = explode("=", $observation)[1]; - } - - if (strpos($observation, "Pulse") !== false) { - $past_episodes_info[$counter]["pulse"] = explode("=", $observation)[1]; - } - - if (strpos($observation, "Systolic bp") !== false) { - $past_episodes_info[$counter]["mmhg"] = explode("=", $observation)[1]; - } - - if (strpos($observation, "Diastolic bp") !== false) { - $past_episodes_info[$counter]["mmhg"] = $past_episodes_info[$counter]["mmhg"] . " / " . explode("=", $observation)[1]; - } - - if (strpos($observation, "Respirations") !== false) { - $past_episodes_info[$counter]["resp"] = explode("=", $observation)[1]; - } - } - } else { - $past_episodes_info[$counter]["symptoms"] = []; - $past_episodes_info[$counter]["resp"] = "N/A"; - $past_episodes_info[$counter]["mmhg"] = "N/A"; - $past_episodes_info[$counter]["pulse"] = "N/A"; - $past_episodes_info[$counter]["temp"] = "N/A"; - } - } else { - $past_episodes_info[$counter]["symptoms"] = []; - $past_episodes_info[$counter]["resp"] = "N/A"; - $past_episodes_info[$counter]["mmhg"] = "N/A"; - $past_episodes_info[$counter]["pulse"] = "N/A"; - $past_episodes_info[$counter]["temp"] = "N/A"; - } - - $counter++; - } - } - } - - // end previous consultations - - return view( - - 'maternity::labour_ward.labour_ward_admission_sheet', - compact( - 'existing_maternity_inpatient_data', - 'existing_maternity_delivery_plan', - 'existing_maternity_pelvic_examination_and_assessement', - 'existing_uterus_operations', - 'existing_other_facility_operations', - 'diagnoses_all', - 'current_episode_triage_symptoms', - 'patient_episodes', - 'patient_id', - 'past_episodes_info', - 'episode', - 'consultation_with_notes', - 'existing_maternity_mother_history', - 'existing_blood_transfusion', - 'previous_consultation_inpatient_info', - 'latest_anc_registration', - 'latest_existing_maternity_inpatient_data', - 'latest_existing_maternity_mother_history', - 'patient_id', - 'episode_id', - 'patient', - 'categories', - 'patient_surgeries', - 'patient_consultations', - 'marital_statuses', - 'diagnoses', - 'diagnoses_patient', - 'relationships', - 'occupations', - 'drug_categories', - 'documents', - 'drug_categories_array', - 'known_patient_alerts', - 'known_patient_allergies', - 'consultation_id', - 'triage_id', - 'triage', - 'anc_registration', - 'emergency_signs', - 'patient_documents', - 'diagnosis', - 'obstetric_history', - 'anc_blood_transfusion', - 'blood_groups', - 'referrals', - 'accuracies', - 'anc_outcomes', - 'hiv_statuses', - 'maternity_progress', - 'ward_investigations', - 'opd_investigations', - 'symptoms', - 'obstetric_history_details', - 'family_planning_methods', - 'caesarian_sections', - 'uterus_operations', - - ) - ); - } - - // store labour ward admission sheet - public function store_labour_ward_admission_sheet(Request $request) - { - $episode_id = session()->get('episode_id'); - $patient_episode_details = PatientEpisode::find($episode_id); - $patient_id = $patient_episode_details->patient_id; - $labour_ward_admission = new LabourWardAdmission(); - $labour_ward_admission->patient_id = $patient_id; - $labour_ward_admission->episode_id = $episode_id; - $labour_ward_admission->labour_onset = $request->labour_onset; - $labour_ward_admission->active_labour_diagnosis_date = $request->active_labour_diagnosis_date; - $labour_ward_admission->membranes_rapture_at = $request->membranes_rapture_at; - $labour_ward_admission->gravida = $request->gravida; - $labour_ward_admission->para = $request->para; - $labour_ward_admission->abortions = $request->abortions; - $labour_ward_admission->ectopic_pregnancies = $request->ectopic_pregnancies; - $labour_ward_admission->post_partum = $request->post_partum; - $labour_ward_admission->history_of_aph = $request->history_of_aph; - $labour_ward_admission->history_of_fits = $request->history_of_fits; - $labour_ward_admission->history_aph_details = $request->history_aph_details; - $labour_ward_admission->history_fit_details = $request->history_fit_details; - $labour_ward_admission->iufd = $request->iufd; - $labour_ward_admission->born_before_arrival = $request->born_before_arrival; - $labour_ward_admission->progress = $request->progress; - $labour_ward_admission->other_labour_comments = $request->other_labour_comments; - $labour_ward_admission->obstetric_risk_factors = json_encode($request->obstetric_risk_factors); - $labour_ward_admission->other_obstetric_risk_factors = $request->other_obstetric_risk_factors; - $labour_ward_admission->created_by = auth()->user()->id; - - //save_labour_ward_admission - if ($request->get('submit-btn') == 'complete') { - // save and complete - $labour_ward_admission->complete = 1; - $labour_ward_admission->save(); - } else { - // save draft - $labour_ward_admission->complete = 0; - $labour_ward_admission->save(); - } - - // redirect based on button click - switch ($request->get('submit-btn')): - case 'complete': - $url = '/patient_episodes'; - break; - - case 'save_labour_ward_admission': - $url = '/patient_episodes'; - break; - default: - break; - endswitch; - - flash("Labour ward admission successful")->success(); - return redirect($url); - - } - - // labour ward admission sheet details - public function labour_ward_admission_sheet_details() - { - $episode_id = session()->get('episode_id'); - $patient_episode_details = PatientEpisode::find($episode_id); - $patient_id = $patient_episode_details->patient_id; - $patient = Patient::find($patient_id); - $maternity_progress = DB::table('maternity_progress')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - - $labour_ward_admission_details = LabourWardAdmission::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - return view( - - 'maternity::labour_ward.labour_ward_admission_details', - compact( - 'episode_id', - 'patient', - 'labour_ward_admission_details', - 'maternity_progress' - ) - ); - } - - // edit labour ward admission sheet - public function edit_labour_ward_admission_sheet() - { - $episode_id = session()->get('episode_id'); - $patient_episode_details = PatientEpisode::find($episode_id); - $diagnoses_patient = DB::table('diagnoses')->orderBy('name', 'asc')->pluck("name", "id"); - $patient_id = $patient_episode_details->patient_id; - $patient = Patient::find($patient_id); - $existing_labour_admission_data = LabourWardAdmission::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $latest_anc_registration = AnteNatalClinicRegistration::where(['patient_id' => $patient_id])->orderBy('id', 'desc')->latest()->first(); - $latest_existing_maternity_inpatient_data = MaternityInpatient::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->latest()->first(); - $maternity_progress = DB::table('maternity_progress')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $existing_maternity_inpatient_data = MaternityInpatient::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $existing_maternity_delivery_plan = MaternityDeliveryPlan::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $existing_maternity_mother_history = MaternityMotherHistory::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $existing_maternity_pelvic_examination_and_assessement = PelvicExaminationAndAssessment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $anc_registration = AnteNatalClinicRegistration::where(['patient_id' => $patient_id])->orderBy('id', 'desc')->first(); - $referrals = DB::table('referral_hospitals')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $patient_episodes = DB::table('patient_episodes')->where('patient_id', $patient_id)->whereNotIn('id', [$episode_id])->get(); - $episode = PatientEpisode::where('id', $episode_id)->first(); - - return view( - 'maternity::labour_ward.edit_labour_ward_admission_sheet', - compact( - 'existing_labour_admission_data', - 'existing_maternity_inpatient_data', - 'existing_maternity_delivery_plan', - 'existing_maternity_pelvic_examination_and_assessement', - 'patient_id', - 'episode', - 'existing_maternity_mother_history', - 'episode_id', - 'patient', - 'anc_registration', - 'referrals', - 'latest_anc_registration', - 'latest_existing_maternity_inpatient_data', - 'maternity_progress' - - ) - ); - } - - // update labour ward admissino sheet - public function updpate_labour_ward_admission_sheet(Request $request, $id) - { - $episode_id = session()->get('episode_id'); - $patient_episode_details = PatientEpisode::find($episode_id); - $patient_id = $patient_episode_details->patient_id; - - $labour_ward_admission = LabourWardAdmission::findOrFail($id); - $labour_ward_admission->patient_id = $patient_id; - $labour_ward_admission->episode_id = $episode_id; - $labour_ward_admission->labour_onset = $request->labour_onset; - $labour_ward_admission->active_labour_diagnosis_date = $request->active_labour_diagnosis_date; - $labour_ward_admission->membranes_rapture_at = $request->membranes_rapture_at; - $labour_ward_admission->gravida = $request->gravida; - $labour_ward_admission->para = $request->para; - $labour_ward_admission->abortions = $request->abortions; - $labour_ward_admission->ectopic_pregnancies = $request->ectopic_pregnancies; - $labour_ward_admission->post_partum = $request->post_partum; - $labour_ward_admission->history_of_aph = $request->history_of_aph; - $labour_ward_admission->history_of_fits = $request->history_of_fits; - $labour_ward_admission->history_aph_details = $request->history_aph_details; - $labour_ward_admission->history_fit_details = $request->history_fit_details; - $labour_ward_admission->iufd = $request->iufd; - $labour_ward_admission->born_before_arrival = $request->born_before_arrival; - $labour_ward_admission->progress = $request->progress; - $labour_ward_admission->other_labour_comments = $request->other_labour_comments; - $labour_ward_admission->obstetric_risk_factors = json_encode($request->obstetric_risk_factors); - $labour_ward_admission->other_obstetric_risk_factors = $request->other_obstetric_risk_factors; - $labour_ward_admission->created_by = auth()->user()->id; - - //update_labour_ward_admission - if ($request->get('submit-btn') == 'complete') { - // update and complete - $labour_ward_admission->complete = 1; - $labour_ward_admission->save(); - } else { - // save draft - $labour_ward_admission->complete = 0; - $labour_ward_admission->save(); - } - - // redirect based on button click - switch ($request->get('submit-btn')): - case 'complete': - $url = '/patient_episodes'; - break; - - case 'save_labour_ward_admission': - $url = '/patient_episodes'; - break; - default: - break; - endswitch; - - flash("Labour ward admission successful")->success(); - return redirect($url); - - } - - // print labour ward admission - public function print_labour_admission_sheet_details($episode_id) - { - - $episode_id = session()->get('episode_id'); - $patient_episode_details = PatientEpisode::find($episode_id); - $patient_id = $patient_episode_details->patient_id; - $patient = Patient::find($patient_id); - $episode = PatientEpisode::find($episode_id); - $hospitalInfo = \Streamline\Models\HospitalInformation::find(1); - $maternity_progress = DB::table('maternity_progress')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $consultation = Consultation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $labour_ward_admission_details = LabourWardAdmission::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - - return view( - 'maternity::labour_ward.print.print_labour_admission_sheet_details', - compact( - 'episode_id', - 'episode', - 'patient', - 'labour_ward_admission_details', - 'maternity_progress', - 'consultation', - 'hospitalInfo' - ) - ); - } -} diff --git a/docker/statistics/Modules/Maternity/Providers/MaternityServiceProvider.php b/docker/statistics/Modules/Maternity/Providers/MaternityServiceProvider.php deleted file mode 100644 index 52082b4c..00000000 --- a/docker/statistics/Modules/Maternity/Providers/MaternityServiceProvider.php +++ /dev/null @@ -1,113 +0,0 @@ -registerTranslations(); - $this->registerConfig(); - $this->registerViews(); - $this->loadMigrationsFrom(module_path($this->moduleName, 'Database/Migrations')); - } - - /** - * Register the service provider. - * - * @return void - */ - public function register() - { - $this->app->register(RouteServiceProvider::class); - } - - /** - * Register config. - * - * @return void - */ - protected function registerConfig() - { - $this->publishes([ - module_path($this->moduleName, 'Config/config.php') => config_path($this->moduleNameLower . '.php'), - ], 'config'); - $this->mergeConfigFrom( - module_path($this->moduleName, 'Config/config.php'), $this->moduleNameLower - ); - } - - /** - * Register views. - * - * @return void - */ - public function registerViews() - { - $viewPath = resource_path('views/modules/' . $this->moduleNameLower); - - $sourcePath = module_path($this->moduleName, 'Resources/views'); - - $this->publishes([ - $sourcePath => $viewPath - ], ['views', $this->moduleNameLower . '-module-views']); - - $this->loadViewsFrom(array_merge($this->getPublishableViewPaths(), [$sourcePath]), $this->moduleNameLower); - } - - /** - * Register translations. - * - * @return void - */ - public function registerTranslations() - { - $langPath = resource_path('lang/modules/' . $this->moduleNameLower); - - if (is_dir($langPath)) { - $this->loadTranslationsFrom($langPath, $this->moduleNameLower); - $this->loadJsonTranslationsFrom($langPath); - } else { - $this->loadTranslationsFrom(module_path($this->moduleName, 'Resources/lang'), $this->moduleNameLower); - $this->loadJsonTranslationsFrom(module_path($this->moduleName, 'Resources/lang')); - } - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides() - { - return []; - } - - private function getPublishableViewPaths(): array - { - $paths = []; - foreach (\Config::get('view.paths') as $path) { - if (is_dir($path . '/modules/' . $this->moduleNameLower)) { - $paths[] = $path . '/modules/' . $this->moduleNameLower; - } - } - return $paths; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/Maternity/Providers/RouteServiceProvider.php b/docker/statistics/Modules/Maternity/Providers/RouteServiceProvider.php deleted file mode 100755 index 042b89e4..00000000 --- a/docker/statistics/Modules/Maternity/Providers/RouteServiceProvider.php +++ /dev/null @@ -1,68 +0,0 @@ -mapApiRoutes(); - $this->mapWebRoutes(); - } - - /** - * Define the "web" routes for the application. - * - * These routes all receive session state, CSRF protection, etc. - * - * @return void - */ - protected function mapWebRoutes() - { - Route::middleware('web') - ->namespace($this->namespace) - ->group(module_path('Maternity', '/Routes/web.php')); - } - - /** - * Define the "api" routes for the application. - * - * These routes are typically stateless. - * - * @return void - */ - protected function mapApiRoutes() - { - Route::prefix('api') - ->middleware('api') - ->namespace($this->namespace) - ->group(module_path('Maternity', '/Routes/api.php')); - } -} diff --git a/docker/statistics/Modules/Maternity/Resources/views/labour_ward/edit_labour_ward_admission_sheet.blade.php b/docker/statistics/Modules/Maternity/Resources/views/labour_ward/edit_labour_ward_admission_sheet.blade.php deleted file mode 100644 index e78e397b..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/labour_ward/edit_labour_ward_admission_sheet.blade.php +++ /dev/null @@ -1,774 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('inpatient.inpatient_sheet') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - - -
    -
    -
    - {{ __('maternity.update_labour_ward_adminssion_section') }} -

    -
    - - {{-- FORM OPENING --}} - {{-- {{ Form::open(['route' => 'maternity.store']) }} --}} - -
    - @csrf - @method('PATCH') - -
    -
    - -
    -

    - - - -
    -
    -
    -
    -

    - - - - -
    -
    -
    -
    -

    - - - - -
    -
    - -
    - - - - - {{-- check data from anc or maternity --}} - {{-- @php - use Carbon\Carbon; - $anc_record_date = Carbon::parse($latest_anc_registration->created_at); - $maternity_record_date = Carbon::parse($latest_existing_maternity_inpatient_data->created_at); - - @endphp --}} - - - - -
    -
    - {{ Form::label('gravida', __('maternity.gravida')) }} - gravida)) value="{{ $existing_labour_admission_data->gravida }}" - @else - value="" @endif> - -
    -
    - {{ Form::label('para', __('maternity.para')) }} - para)) value="{{ $existing_labour_admission_data->para }}" - @else - value="" @endif> -
    - -
    - {{ Form::label('abortions', __('maternity.abortion')) }} - abortions)) value="{{ $existing_labour_admission_data->abortions }}" - @else - value="" @endif> -
    - -
    - {{ Form::label('ectopic_pregnancies', __('maternity.ectopic_pregnancies')) }} - ectopic_pregnancies)) value="{{ $existing_labour_admission_data->ectopic_pregnancies }}" - - @else - value="" @endif> -
    - -
    - {{ Form::label('post_partum', __('maternity.post_partum')) }} -
    - - postpartum)) {{ $anc_registration->postpartum == '1' ? 'checked' : '' }} @endif --}} - @if (!empty($existing_labour_admission_data->post_partum)) {{ $existing_labour_admission_data->post_partum == '1' ? 'checked' : '' }} @endif - value="1"> -   -    - - post_partum == 0) - {{-- @if (!empty($existing_labour_admission_data->post_partum)) {{ $existing_labour_admission_data->post_partum == '0' ? 'checked' : '' }} @endif --}} - - > -   -    - - {{-- post_partum)) {{ $existing_labour_admission_data->post_partum == '0' ? 'checked' : '' }} @endif - value="0">    - --}} - -
    -
    -
    - - - - {{-- end of check data from anc or maternity --}} - {{--
    --}} - - {{-- aph and fits --}} -
    -
    - - - {{ Form::label('history_of_aph', __('maternity.history_of_aph')) }} -
    - history_of_aph)) {{ $existing_labour_admission_data->history_of_aph == '1' ? 'checked' : '' }} @endif - value="1">    - - history_of_aph == 0) - value="0">    - - - - -
    -
    - - {{ Form::label('history_of_fits', __('maternity.history_of_fits')) }} -
    - - history_of_fits)) {{ $existing_labour_admission_data->history_of_fits == '1' ? 'checked' : '' }} @endif - value="1">    - - - - history_of_fits == 0) - value="0">    - - - -
    - - -
    - -
    - {{ Form::label('iufd', __('maternity.iufd')) }}
    - - iufd)) {{ $existing_labour_admission_data->iufd == '1' ? 'checked' : '' }} @endif --}} - @checked($existing_labour_admission_data->iufd == 1) - >    - - iufd)) {{ $existing_labour_admission_data->iufd == '0' ? 'checked' : '' }} @endif --}} - @checked($existing_labour_admission_data->iufd == 0)> -    - - - -
    -
    -
    -
    - {{ Form::label('born_before_arrival', __('maternity.born_before_arrival')) }}
    - born_before_arrival)) {{ $existing_labour_admission_data->born_before_arrival == '1' ? 'checked' : '' }} @endif --}} - @checked($existing_labour_admission_data->born_before_arrival == 1) - value="1">    - - - born_before_arrival)) {{ $existing_labour_admission_data->born_before_arrival == '0' ? 'checked' : '' }} @endif --}} - @checked($existing_labour_admission_data->born_before_arrival == 0) - value="0">    - - -
    -
    - -
    -
    - {{ Form::label('progress', __('maternity.progress')) }} - {{ Form::select('progress', $maternity_progress, $existing_labour_admission_data->progress ?? '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - - - -
    -
    - - -
    -
    -
    - - {{-- risk factors --}} -
    -
    - -
    -
    -
    - - {{-- obstetric risk factors --}} -
    - -
    - -
    - - - @php - // $obstetric_risk_factors_all = json_decode($existing_labour_admission_data->obstetric_risk_factors); - $obstetric_risk_factors_all = []; - if ($existing_labour_admission_data !== null) { - $obstetric_risk_factors_all = - json_decode( - $existing_labour_admission_data->obstetric_risk_factors, - ) ?? []; - } - - @endphp - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -   - - -   - - -   - -
    -   - - -   - - -   - -
    -   - - -   - - -   - -
    -   - - -   - - -   - -
    - -   - - - -   - - -   - -
    -   - - -   - - -   - -
    -   - - -   - - -   - -
    - - -   - - - - -   - - -   - - - - -
    - -
    -
    -
    -
    - - -
    - - - {{-- SUBMIT BUTTON --}} - -
    -
    - {{-- {{ Form::button(__('maternity.submit_form'), ['type' => 'submit', 'value' => 'submit_maternity_admission', 'name' => 'submit-btn', 'id' => 'submit-btn', 'class' => 'btn btn-success', 'style' => 'float:right;']) }} --}} - {{-- --}} - - - - -
    -
    - - -
    - {{-- {{ Form::hidden('pregnancy_number', 0, ['id' => 'pregnancy_number']) }} - {{ Form::close() }} --}} -
    -
    -
    -@endsection - -{{-- scrips --}} -@push('scripts') - - - - - {{-- --}} - - - - - - - - - - - {{-- prevent future active labour diagnosis date --}} - -@endpush diff --git a/docker/statistics/Modules/Maternity/Resources/views/labour_ward/includes/labour_ward_admission_data.blade.php b/docker/statistics/Modules/Maternity/Resources/views/labour_ward/includes/labour_ward_admission_data.blade.php deleted file mode 100644 index 3a555940..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/labour_ward/includes/labour_ward_admission_data.blade.php +++ /dev/null @@ -1,333 +0,0 @@ -{{-- gravida para abortions --}} -
    -
    -
    -
    - Overview of this labur ward admission -
    - -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('maternity.labour_onset') }} - @if (!empty($labour_ward_admission_details->labour_onset)) - @if ($labour_ward_admission_details->labour_onset == '1') - {{ __('maternity.spontaneous') }} - @elseif ($labour_ward_admission_details->labour_onset == '2') - {{ __('maternity.induced') }} - @endif - @else - {{ __('maternity.na') }} - @endif -
    {{ __('maternity.active_labour_diagnosis_date') }} - @if (!empty($labour_ward_admission_details->active_labour_diagnosis_date)) - {{ streamline_date_time_short($labour_ward_admission_details->active_labour_diagnosis_date) }} - @else - {{ __('maternity.na') }} - @endif -
    {{ __('maternity.membranes_raptured_at') }} - @if (!empty($labour_ward_admission_details->membranes_rapture_at)) - {{ streamline_date_time_short($labour_ward_admission_details->membranes_rapture_at) }} - @else - {{ __('maternity.na') }} - @endif -
    {{ __('maternity.gravida') }} - @if(isset($labour_ward_admission_details->gravida)) - {{ $labour_ward_admission_details->gravida }} - @else - {{ __('maternity.na') }} - @endif -
    {{ __('maternity.para') }} - @if (isset($labour_ward_admission_details->para)) - {{ $labour_ward_admission_details->para }} - @else - {{ __('maternity.na') }} - @endif -
    {{ __('maternity.abortion') }} - @if (isset($labour_ward_admission_details->abortions)) - {{ $labour_ward_admission_details->abortions }} - @else - {{ __('maternity.na') }} - @endif -
    {{ __('maternity.ectopic_pregnancies') }} - @if (isset($labour_ward_admission_details->ectopic_pregnancies)) - {{ $labour_ward_admission_details->ectopic_pregnancies }} - @else - {{ __('maternity.na') }} - @endif -
    {{ __('maternity.post_partum') }} - @if ($labour_ward_admission_details->post_partum == '1') - Yes - @endif - @if ($labour_ward_admission_details->post_partum == '0') - No - @endif - @if ($labour_ward_admission_details->post_partum == '') - N/A - @endif - -
    -
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('maternity.history_of_aph') }} - @php - $history_aph = - $labour_ward_admission_details->history_of_aph ?? 'N/A'; - @endphp - - @if (isset($history_aph)) - @if ($history_aph == 1) - {{ __('maternity.yes') }} ( @if (!empty($labour_ward_admission_details->history_aph_details)) - {{ $labour_ward_admission_details->history_aph_details }} - @endif) - @elseif($history_aph == 0) - {{ __('maternity.no') }} - @endif - @else - {{ __('maternity.na') }} - @endif -
    {{ __('maternity.history_of_fits') }} - @php - $history_fits = - $labour_ward_admission_details->history_of_fits ?? 'N/A'; - @endphp - - @if (!empty($history_fits)) - @if ($history_fits == '1') - {{ __('maternity.yes') }} ( @if (!empty($labour_ward_admission_details->history_fit_details)) - {{ $labour_ward_admission_details->history_fit_details }} - @endif) - @elseif($history_fits == '0') - {{ __('maternity.no') }} - @endif - @else - {{ __('maternity.no') }} - @endif -
    {{ __('maternity.iufd') }} - @php - $iufd = $labour_ward_admission_details->iufd ?? 'N/A'; - @endphp - - @if ($iufd == '1') - Yes - @endif - @if ($iufd == '0') - No - @endif - @if ($iufd == '') - N/A - @endif -
    {{ __('maternity.born_before_arrival') }} - @php - $born_before_arrival = - $labour_ward_admission_details->born_before_arrival ?? 'N/A'; - @endphp - - @if ($born_before_arrival == '1') - Yes - @endif - @if ($born_before_arrival == '0') - No - @endif - @if ($born_before_arrival == '') - N/A - @endif - -
    {{ __('maternity.progress') }} - {{-- {{ isset($maternity_progress[$labour_ward_admission_details->progress]) ? $maternity_progress[$labour_ward_admission_details->progress] : '' }} --}} - {{ isset($labour_ward_admission_details->progress) && isset($maternity_progress[$labour_ward_admission_details->progress]) ? $maternity_progress[$labour_ward_admission_details->progress] : '' }} - -
    Other comments
    - @if (!empty($labour_ward_admission_details->other_labour_comments)) - {{ $labour_ward_admission_details->other_labour_comments }} - @else - {{ __('maternity.na') }} - @endif -
    - {{ __('maternity.current_obstetric_risk_factors') }} -
    - {{-- {{$labour_ward_admission_details->obstetric_risk_factors }} --}} - @php - $obstetric_risk_factors_all = []; - if ($labour_ward_admission_details !== null) { - $obstetric_risk_factors_all = - json_decode( - $labour_ward_admission_details->obstetric_risk_factors, - ) ?? []; - } - @endphp - - - @foreach ($obstetric_risk_factors_all as $obstetric_risk_factor) - @if ($obstetric_risk_factor == '1') - {{ __('maternity.history_aph_pregnancy') }}, - {{-- {{ __('maternity.history_aph_pregnancy') }} --}} - @elseif ($obstetric_risk_factor == '2') - {{ __('maternity.epilepsy') }} - {{-- {{ __('maternity.epilepsy') }} --}} - @elseif ($obstetric_risk_factor == '3') - {{ __('maternity.severe_pre_eclampsia') }}, - {{-- {{ __('maternity.severe_pre_eclampsia') }} --}} - @elseif ($obstetric_risk_factor == '4') - {{ __('maternity.history_convulsion_pregnancy') }} - {{-- {{ __('maternity.history_convulsion_pregnancy') }} --}} - @elseif ($obstetric_risk_factor == '5') - {{ __('maternity.polyhydramnios') }}, - @elseif ($obstetric_risk_factor == '6') - {{ __('maternity.premature_rupture_of_membranes') }}, - @elseif ($obstetric_risk_factor == '7') - {{ __('maternity.diabetes_mellitus') }}, - @elseif ($obstetric_risk_factor == '8') - {{ __('maternity.multiple_pregnancy') }}, - @elseif ($obstetric_risk_factor == '9') - {{ __('maternity.pph') }}, - @elseif ($obstetric_risk_factor == '10') - {{ __('maternity.cardiac_disease') }}, - @elseif ($obstetric_risk_factor == '11') - {{ __('maternity.malpresentation') }}, - @elseif ($obstetric_risk_factor == '12') - {{ __('maternity.asthma') }}, - @elseif ($obstetric_risk_factor == '13') - {{ __('maternity.poor_obstetric_history') }}, - @elseif ($obstetric_risk_factor == '14') - {{ __('maternity.pre_term_labour') }}, - @elseif ($obstetric_risk_factor == '15') - {{ __('maternity.sickle_cell_disease') }}, - @elseif ($obstetric_risk_factor == '16') - {{ __('maternity.previous_csections') }}, - @elseif ($obstetric_risk_factor == '17') - {{ __('maternity.polio') }}, - @elseif ($obstetric_risk_factor == '18') - {{ __('maternity.group_b_streptococcus_colonization') }}, - @elseif ($obstetric_risk_factor == '19') - {{ __('maternity.woman_advanced_age') }}, - @elseif ($obstetric_risk_factor == '20') - {{ __('maternity.mental_illness') }}, - @elseif ($obstetric_risk_factor == '21') - {{ __('maternity.adolescent_pregnancy') }}, - @elseif ($obstetric_risk_factor == '22') - {{ __('maternity.hypertension') }}, - @elseif ($obstetric_risk_factor == '23') - {{ __('maternity.kidney_disease') }}, - @elseif ($obstetric_risk_factor == '24') - {{ __('maternity.other_obstetric_risk_factors') }} - (@if (!empty($labour_ward_admission_details->other_obstetric_risk_factors)) - {{ $labour_ward_admission_details->other_obstetric_risk_factors }} - @endif) - @else - {{-- {{ __('maternity.na') }} --}} - @endif - {{-- @if (!$loop->last) - , - @endif --}} - @endforeach - - -
    -
    -
    - - - -
    - -
    - -
    - - - -

    -
    - - - -
    diff --git a/docker/statistics/Modules/Maternity/Resources/views/labour_ward/labour_ward_admission_details.blade.php b/docker/statistics/Modules/Maternity/Resources/views/labour_ward/labour_ward_admission_details.blade.php deleted file mode 100644 index 510cd2b1..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/labour_ward/labour_ward_admission_details.blade.php +++ /dev/null @@ -1,128 +0,0 @@ -@extends('layouts.main') - - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('maternity.details_for_labour_episode') }} : - {{ streamline_date(get_name($episode_id, 'id', 'created_at', 'patient_episodes')) }}

    -
    - -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - - -
    - @if (session('update_inpatient')) - - @endif - - -
    - -
    -
    -
    -
    - -
    -
    - {{-- - {{ __('consultations.patient_home') }} --}} - - @if (Auth::user()->can('print-maternity-admission')) - - Print - @endif - - {{-- - - - Modify --}} - -
    -
    -
    -

    {{ __('maternity.labour_ward_admission_details_for') }} - {{ get_full_name($patient->id, 'id', 'first_name', 'last_name', 'patients') }} started on , - {{ streamline_date_time_short($labour_ward_admission_details->created_at) }} -

    - - - {{-- maternity admission details --}} - @include('maternity::labour_ward.includes.labour_ward_admission_data') - - {{-- buttons --}} -
    -
    - -
    -
    - @if (Auth::user()->can('edit-maternity-admission')) - - Modify - @endcan - -
    -
    - - - - -
    -
    - - -
    -
    - -
    -@endsection - -@push('scripts') - -@endpush - -@push('styles') - -@endpush diff --git a/docker/statistics/Modules/Maternity/Resources/views/labour_ward/labour_ward_admission_sheet.blade.php b/docker/statistics/Modules/Maternity/Resources/views/labour_ward/labour_ward_admission_sheet.blade.php deleted file mode 100644 index 989a8019..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/labour_ward/labour_ward_admission_sheet.blade.php +++ /dev/null @@ -1,753 +0,0 @@ -@extends('layouts.main') -@push('styles') - - - -@endpush -@section('content') -
    -
    -

    {{ __('inpatient.inpatient_sheet') }}

    -
    -
    - -
    -
    -
    -
    - @include('patients::allergies.header') -
    -
    -
    -
    -
    - {{ __('maternity.labour_ward_adminssion_section') }} -

    -
    - {{-- FORM OPENING --}} - {{-- {{ Form::open(['route' => 'maternity.store']) }} --}} -
    - @csrf() -
    -
    -
    -

    - -
    -
    -
    -
    -

    - -
    -
    -
    -
    -

    - -
    -
    -
    - {{-- check data from anc or maternity --}} - @php - use Carbon\Carbon; - // $anc_record_date = Carbon::parse($latest_anc_registration->created_at); - $anc_record_date = - $latest_anc_registration !== null - ? Carbon::parse($latest_anc_registration->created_at) - : null; - // $maternity_record_date = Carbon::parse($latest_existing_maternity_inpatient_data->created_at); - $maternity_record_date = - $latest_existing_maternity_inpatient_data !== null - ? Carbon::parse($latest_existing_maternity_inpatient_data->created_at) - : null; - - @endphp - {{-- anc date is latest --}} - @if ($anc_record_date > $maternity_record_date) -
    -
    - -
    -
    -
    -
    -
    - {{ Form::label('gravida', __('maternity.gravida')) }} - gravida)) value="{{ isset($anc_registration) ? $anc_registration->gravida : '' }}" - @else - value="" @endif> -
    -
    - {{ Form::label('para', __('maternity.para')) }} - para)) value="{{ isset($anc_registration) ? $anc_registration->para : '' }}" - @else - value="" @endif> -
    -
    - {{ Form::label('abortions', __('maternity.abortion')) }} - abortion)) value="{{ isset($anc_registration) ? $anc_registration->abortion : '' }}" - @else - value="" @endif> -
    -
    - {{ Form::label('ectopic_pregnancies', __('maternity.ectopic_pregnancies')) }} - ectopic_pregnancies)) value="{{ isset($anc_registration) ? $anc_registration->ectopic_pregnancies : '' }}" - @else - value="" @endif> -
    -
    - {{ Form::label('post_partum', __('maternity.post_partum')) }} -
    - postpartum)) {{ $anc_registration->postpartum == '1' ? 'checked' : '' }} @endif - value="1"> -   -    - postpartum)) - {{ $anc_registration->postpartum == '0' ? 'checked' : '' }} - @endif --}} - @if (!empty($anc_registration->postpartum)) {{ $anc_registration->postpartum == '0' ? 'checked' : '' }} @endif - value="0">    - -
    -
    -
    - {{-- marternity date is latest --}} - @elseif ($anc_record_date < $maternity_record_date) -
    -
    - -
    -
    -
    -
    -
    - {{ Form::label('gravida', __('maternity.gravida')) }} - gravida)) value="{{ $latest_existing_maternity_inpatient_data->gravida }}" - @else - value="" @endif> -
    -
    - {{ Form::label('para', __('maternity.para')) }} - para)) value="{{ $latest_existing_maternity_inpatient_data->para }}" - @else - value="" @endif> -
    -
    - {{ Form::label('abortions', __('maternity.abortion')) }} - abortion)) value="{{ $latest_existing_maternity_inpatient_data->abortion }}" - @else - value="" @endif> -
    -
    - {{ Form::label('ectopic_pregnancies', __('maternity.ectopic_pregnancies')) }} - ectopic_pregnancies)) value="{{ $latest_existing_maternity_inpatient_data->ectopic_pregnancies }}" - @else - value="" @endif> -
    -
    - {{ Form::label('post_partum', __('maternity.post_partum')) }} -
    - postpartum)) {{ $anc_registration->postpartum == '1' ? 'checked' : '' }} @endif --}} {{-- @if (!empty($latest_existing_maternity_inpatient_data->postpartum)) {{ $latest_existing_maternity_inpatient_data->postpartum == '1' ? 'checked' : '' }} @endif --}} @checked($latest_existing_maternity_inpatient_data->postpartum == 1) - value="1"> -   -    - postpartum)) {{ $latest_existing_maternity_inpatient_data->postpartum == '0' ? 'checked' : '' }} @endif --}} @checked($latest_existing_maternity_inpatient_data->postpartum == 0) value="0">    - - - - -
    -
    -
    - {{-- if data is not in maternity or anc --}} - @else -
    -
    - -
    -
    -
    -
    -
    - {{ Form::label('gravida', __('maternity.gravida')) }} - -
    -
    - {{ Form::label('para', __('maternity.para')) }} - -
    -
    - {{ Form::label('abortions', __('maternity.abortion')) }} - -
    -
    - {{ Form::label('ectopic_pregnancies', __('maternity.ectopic_pregnancies')) }} - -
    -
    - {{ Form::label('post_partum', __('maternity.post_partum')) }} -
    - postpartum)) {{ $anc_registration->postpartum == '1' ? 'checked' : '' }} @endif --}} value="1"> -   -    -    - -
    -
    -
    - @endif - {{-- end of check data from anc or maternity --}} - {{--
    --}} - {{-- aph and fits --}} -
    -
    - {{ Form::label('history_of_aph', __('maternity.history_of_aph')) }} -
    - - history_of_aph == 1) --}} - @if (isset($latest_existing_maternity_mother_history->history_of_aph)) @checked($latest_existing_maternity_mother_history->history_of_aph == 1) @endif - {{-- @if ($latest_existing_maternity_mother_history && $latest_existing_maternity_mother_history->history_of_aph == 1) - @checked(true) - @else - @checked(false) - @endif --}} {{-- @if ($latest_existing_maternity_mother_history && $latest_existing_maternity_mother_history->history_of_aph == 1) selected @endif --}} value="1">    - - history_of_aph == 0) --}} - @if (isset($latest_existing_maternity_mother_history->history_of_aph)) @checked($latest_existing_maternity_mother_history->history_of_aph == 0) @endif - {{-- @if ($latest_existing_maternity_mother_history && $latest_existing_maternity_mother_history->history_of_aph == 0) selected @endif --}} value="0">    - - -
    -
    - {{ Form::label('history_of_fits', __('maternity.history_of_fits')) }} -
    - history_of_fits == 1) --}} - @if (isset($latest_existing_maternity_mother_history->history_of_fits)) @checked($latest_existing_maternity_mother_history->history_of_fits == 1) @endif - - id="show_fits_details_div" - value="1">    - - history_of_fits == 0) --}} - @if (isset($latest_existing_maternity_mother_history->history_of_fits)) @checked($latest_existing_maternity_mother_history->history_of_fits == 0) @endif - - - value="0">    - - -
    -
    -
    - {{ Form::label('iufd', __('maternity.iufd')) }}
    - iufd == 1) --}} - @if (isset($latest_existing_maternity_inpatient_data->iufd)) @checked($latest_existing_maternity_inpatient_data->iufd == 1) @endif - - value="1">    - - iufd == 0) --}} - @if (isset($latest_existing_maternity_inpatient_data->iufd)) @checked($latest_existing_maternity_inpatient_data->iufd == 0) @endif - - value="0"> -    - - -
    -
    -
    -
    - {{ Form::label('born_before_arrival', __('maternity.born_before_arrival')) }}
    - born_before_arrival)) @checked($latest_existing_maternity_inpatient_data->born_before_arrival == 1) @endif - - {{-- @checked($latest_existing_maternity_inpatient_data->born_before_arrival == 1) --}} - value="1">    - - born_before_arrival == 0) --}} - @if (isset($latest_existing_maternity_inpatient_data->born_before_arrival)) @checked($latest_existing_maternity_inpatient_data->born_before_arrival == 0) @endif - - - value="0">    - -
    -
    -
    -
    - {{ Form::label('progress', __('maternity.progress')) }} - {{ Form::select('progress', $maternity_progress, '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    - - -
    -
    -
    - - - - - - {{-- risk factors --}} -
    -
    - -
    -
    -
    - {{-- obstetric risk factors --}} -
    -
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - obstetric_risk_factors ?? ('' ?? ''))) ? 'checked' : '' }} - id="1" value="1" {{-- @if (is_array(old('1')) && in_array('1', old('obstetric_risk_factors'))) checked @endif --}}>  - - - obstetric_risk_factors ?? '')) ? 'checked' : '' }} - id="2" value="2" {{-- @if (is_array(old('2')) && in_array('2', old('obstetric_risk_factors'))) checked @endif --}}>  - - - obstetric_risk_factors ?? '')) ? 'checked' : '' }} - id="3" value="3" {{-- @if (is_array(old('obstetric_risk_factors')) && in_array('3', old('obstetric_risk_factors'))) checked @endif --}}>  - -
    - obstetric_risk_factors ?? '')) ? 'checked' : '' }} - id="4" value="4" {{-- @if (is_array(old('obstetric_risk_factors')) && in_array('4', old('obstetric_risk_factors'))) checked @endif --}}>  - - - obstetric_risk_factors ?? '')) ? 'checked' : '' }} - {{-- @if (is_array(old('obstetric_risk_factors')) && in_array('5', old('obstetric_risk_factors'))) checked @endif --}}>  - - - obstetric_risk_factors ?? '')) ? 'checked' : '' }} - {{-- @if (is_array(old('obstetric_risk_factors')) && in_array('6', old('obstetric_risk_factors'))) checked @endif --}}>  - -
    - obstetric_risk_factors ?? '')) ? 'checked' : '' }} - {{-- @if (is_array(old('obstetric_risk_factors')) && in_array('7', old('obstetric_risk_factors'))) checked @endif --}}>  - - - obstetric_risk_factors ?? '')) ? 'checked' : '' }} - @if (is_array(old('obstetric_risk_factors')) && in_array('8', old('obstetric_risk_factors'))) checked @endif>  - - - obstetric_risk_factors ?? '')) ? 'checked' : '' }} - @if (is_array(old('obstetric_risk_factors')) && in_array('9', old('obstetric_risk_factors'))) checked @endif>  - -
    - obstetric_risk_factors ?? '')) ? 'checked' : '' }}>  - - - obstetric_risk_factors ?? '')) ? 'checked' : '' }} - @if (is_array(old('obstetric_risk_factors')) && in_array('11', old('obstetric_risk_factors'))) checked @endif>  - - - obstetric_risk_factors ?? '')) ? 'checked' : '' }} - id="12" value="12">  - -
    - obstetric_risk_factors ?? '')) ? 'checked' : '' }}>  - - - obstetric_risk_factors ?? '')) ? 'checked' : '' }}>  - - - obstetric_risk_factors ?? '')) ? 'checked' : '' }}>  - -
    - obstetric_risk_factors ?? '')) ? 'checked' : '' }}>  - - - obstetric_risk_factors ?? '')) ? 'checked' : '' }}>  - - - obstetric_risk_factors ?? '')) ? 'checked' : '' }} - id="18" value="18">  - -
    - obstetric_risk_factors ?? '')) ? 'checked' : '' }} - @if (is_array(old('obstetric_risk_factors')) && in_array('19', old('obstetric_risk_factors'))) checked @endif>  - - - obstetric_risk_factors ?? '')) ? 'checked' : '' }} - @if (is_array(old('obstetric_risk_factors')) && in_array('20', old('obstetric_risk_factors'))) checked @endif>  - - - obstetric_risk_factors ?? '')) ? 'checked' : '' }} - @if (is_array(old('obstetric_risk_factors')) && in_array('21', old('obstetric_risk_factors'))) checked @endif>  - -
    - obstetric_risk_factors ?? '')) ? 'checked' : '' }}>  - - - obstetric_risk_factors ?? '')) ? 'checked' : '' }} - @if (is_array(old('obstetric_risk_factors')) && in_array('23', old('obstetric_risk_factors'))) checked @endif>  - - - obstetric_risk_factors ?? '')) ? 'checked' : '' }} - id="show_other_obstetric_risk_factors_input" value="24">  - -
    - -
    -
    -
    -
    -
    - {{-- SUBMIT BUTTON --}} -
    -
    - {{-- {{ Form::button(__('maternity.submit_form'), ['type' => 'submit', 'value' => 'submit_maternity_admission', 'name' => 'submit-btn', 'id' => 'submit-btn', 'class' => 'btn btn-success', 'style' => 'float:right;']) }} --}} - {{-- - - -
    -
    -
    - {{-- {{ Form::hidden('pregnancy_number', 0, ['id' => 'pregnancy_number']) }} - {{ Form::close() }} --}} -
    -
    -
    -@endsection -{{-- scrips --}} -@push('scripts') - - - - {{-- --}} - - - - - - - {{-- prevent future active labour diagnosis date --}} - -@endpush diff --git a/docker/statistics/Modules/Maternity/Resources/views/labour_ward/print/print_labour_admission_sheet_details.blade.php b/docker/statistics/Modules/Maternity/Resources/views/labour_ward/print/print_labour_admission_sheet_details.blade.php deleted file mode 100644 index 44435ecd..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/labour_ward/print/print_labour_admission_sheet_details.blade.php +++ /dev/null @@ -1,121 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Stre@mline') }} - - - - - - - - -
    - - - {{-- header include print --}} - @include('layouts.header_pdf_print') - -
    {{ __('maternity.labour_ward_admission_heading_print') }}
    - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('patient_file.patient_number') }}{{ $patient->number }}{{ __('patient_file.category') }} - {{ get_name($patient->category_id, 'id', 'name', 'patient_categories') }} -
    {{ __('patient_file.patient_names') }}{{ $patient->first_name }} {{ $patient->last_name }}{{ __('patient_file.residence') }}{{ patient_residence($patient->id) }}
    {{ __('patient_file.age') }}date_of_birth)->age; ?> {{ __('patient_file.years') }}{{ __('patient_file.gender') }}gender == 1 ? __('patient_file.male') : __('patient_file.female'); ?>
    {{ __('patient_file.episode_date') }}created_at)->format('d M Y h:i a'); ?>{{ __('patient_file.outcome') }} - @if ($consultation && !is_null($consultation->outcome_id)) - @if ($consultation->outcome_id == 3) - {{ $outcomes[$consultation->outcome_id] . ' on (' . streamline_date($consultation->followup_when) . ')' }} - @elseif($consultation->outcome_id == 5) - - {{ $outcomes[$consultation->outcome_id] . ' on (' . streamline_date($consultation->died_on) . ')' }} - - @else - {{ $outcomes[$consultation->outcome_id] ?? '' }} - @endif - @elseif (!empty($antenatal_data->outcome_id)) - @if ($antenatal_data->outcome_id == 3) - {{ $outcomes[$antenatal_data->outcome_id] . ' on (' . streamline_date($antenatal_data->followup_when) . ')' }} - @elseif($antenatal_data->outcome_id == 5) - - {{ $outcomes[$antenatal_data->outcome_id] . ' on (' . streamline_date($antenatal_data->died_on) . ')' }} - - @else - {{ $outcomes[$antenatal_data->outcome_id] ?? '' }} - @endif - @endif -
    -
    - - - {{-- maaternity admission details --}} - @include('maternity::labour_ward.includes.labour_ward_admission_data') - - {{-- stamp --}} - @if (is_add_stamp_feature_enabled() && !empty($hospitalInfo->stamp)) - - - - - - -
    - {{ $hospitalInfo->name }} stamp -
    - @endif - - -
    - - - diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/admission_details.blade copy.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/admission_details.blade copy.php deleted file mode 100755 index 2ada07bf..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/admission_details.blade copy.php +++ /dev/null @@ -1,2637 +0,0 @@ -@extends('layouts.main') - - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('maternity.details_for_episode') }} : - {{ streamline_date(get_name($episode_id, 'id', 'created_at', 'patient_episodes')) }}

    -
    - -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - - -
    - @if (session('update_inpatient')) - - @endif - - - {{--
    -
    -
    - - - - -
    -
    -
    -
    - -
    - Overview of this pregnancy -
    - -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Gravida - @if (!empty($maternity_admission_details->gravida)) - {{ $maternity_admission_details->gravida }} - @else - N/A - @endif -
    Para - @if (!empty($maternity_admission_details->para)) - {{ $maternity_admission_details->para }} - @else - N/A - @endif -
    Abortion - @if (!empty($maternity_admission_details->abortion)) - {{ $maternity_admission_details->abortion }} - @else - N/A - @endif -
    Ectopic pregnancies - @if (!empty($maternity_admission_details->ectopic_pregnancies)) - {{ $maternity_admission_details->ectopic_pregnancies }} - @else - N/A - @endif -
    Post-partum - @if (!empty($maternity_admission_details->postpartum)) - @if ($maternity_admission_details->postpartum == '1') - Yes - @elseif($maternity_admission_details->postpartum == '0') - No - @endif - @else - N/A - @endif -
    -
    - -
    - -
    - - - -

    - - -
    - -
    - -
    -
    - Obstetric history details -
    -
    -
    Special title treatment
    -
    -

    - -
    - -
    -
    - -
    - Delivery plan details -
    - -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('maternity.person_you_live_with') }}data here
    {{ __('maternity.means_of_transport_to_facility') }}3
    {{ __('maternity.person_to_accompany_you') }}0
    {{ __('maternity.person_to_look_after_home') }}0
    {{ __('maternity.family_planning_before_next_pregnancy') }} - 0
    {{ __('maternity.person_to_stay_at_facility') }}0
    {{ __('maternity.delivery_method') }}0
    {{ __('maternity.after_birth_disposal') }}0
    {{ __('maternity.backup_delivery_method') }}0
    {{ __('maternity.mother_partner_screened_for') }}0
    -
    - -
    - -
    - - - -

    - - -
    - -
    -
    - -
    - {{ __('antenatal.menstrual_history') }} -
    - -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('antenatal.cycle_length') }}1
    {{ __('antenatal.menses_length') }}3
    {{ __('antenatal.menses_amount') }}0
    {{ __('maternity.family_planning_method') }}0
    {{ __('maternity.date_discontinued') }}0
    {{ __('maternity.why') }}0
    -
    - -
    - -
    - - - -

    - - -
    - -
    -
    -
    - {{ __('antenatal.medical_history') }} -
    - -
    - -
    -
    - - - - - - - - - - - - - -
    {{ __('maternity.history_of_aph') }}1
    {{ __('maternity.history_of_fits') }}3
    -
    - -
    -
    - -

    - -
    -
    - {{ __('antenatal.medical_presentations') }} -
    - -
    - -
    -

    medical presentation here

    - -
    -
    - -

    - -
    - -
    -
    - -
    - {{ __('antenatal.family_history') }} -

    - -
    - {{ __('antenatal.sgbv') }} -
    - -
    -
    -
    - - - - - - - - - - - - - - - - - - - -
    {{ __('antenatal.sgbv_risk') }}1
    {{ __('antenatal.others') }}3
    {{ __('antenatal.husband_health') }}0
    -
    - -
    - -
    -

    - -
    -
    - {{ __('antenatal.other_comments') }} -
    - -
    -
    -

    Comment on health here

    -
    -
    -
    - - -
    - -
    -
    -
    - {{ __('antenatal.surgical_history') }} -
    -
    -
    -

    table of surgical history here

    -
    -
    - - -

    - -
    -
    - {{ __('antenatal.uterus_operations') }} -
    -
    -
    -

    uterus operations

    -
    -
    - -

    - -
    -
    - {{ __('antenatal.operations') }} -
    -
    -
    -

    other operations

    -
    -
    - -

    - -
    -
    -
    -
    - - - - - - - - - - - - - - -
    Ever had blood transfusion1
    Why blood transfusion3
    -
    - -
    - -
    - -

    - -
    - -
    - {{ __('antenatal.fractures') }} -
    - -
    -
    -
    - - - - - - - - - - - - - - -
    Ever had blood transfusion1
    Why blood transfusion3
    -
    - -
    - -
    - -

    -
    - -
    -
    - -
    - {{ __('antenatal.blood_transfusion') }} -
    - -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Gravida1
    Para3
    Abortion0
    Ectopic pregnancies0
    Post-partum0
    -
    - -
    - -
    - -

    - -
    - -
    - - - - -
    -
    -
    -
    --}} -
    - - - - -
    -
    -

    {{ __('maternity.maternity_admission_details_for') }} - {{ get_full_name($patient->id, 'id', 'first_name', 'last_name', 'patients') }} as of, - {{ streamline_date_time_short($maternity_admission_details->created_at) }} -

    - - - {{-- gravida para abortions --}} -
    -
    -
    -
    - Overview of this pregnancy -
    - -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Gravida - @if (!empty($maternity_admission_details->gravida)) - {{ $maternity_admission_details->gravida }} - @else - 0 - @endif -
    Para - @if (!empty($maternity_admission_details->para)) - {{ $maternity_admission_details->para }} - @else - 0 - @endif -
    Abortion - @if (!empty($maternity_admission_details->abortion)) - {{ $maternity_admission_details->abortion }} - @else - 0 - @endif -
    Ectopic pregnancies - @if (!empty($maternity_admission_details->ectopic_pregnancies)) - {{ $maternity_admission_details->ectopic_pregnancies }} - @else - 0 - @endif -
    Post-partum - @if (!empty($maternity_admission_details->postpartum)) - @if ($maternity_admission_details->postpartum == '1') - Yes - @elseif($maternity_admission_details->postpartum == '0') - No - @endif - @else - N/A - @endif -
    LMP - @if (!empty($maternity_admission_details->lmp)) - {{ streamline_date($maternity_admission_details->lmp) }} - @else - N/A - @endif -
    Accuracy - {{ isset($accuracies[$maternity_admission_details->accuracy]) ? $accuracies[$maternity_admission_details->accuracy] : '' }} -
    -
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('maternity.number_of_weeks_pregnant') }} - @if (!empty($maternity_admission_details->weeks_of_amenorrhoea)) - {{ $maternity_admission_details->weeks_of_amenorrhoea }} - @else - N/A - @endif -
    {{ __('maternity.edd') }} - @if (!empty($maternity_admission_details->edd)) - {{ streamline_date($maternity_admission_details->edd) }} - @else - N/A - @endif -
    {{ __('maternity.us_scan_edd') }} - @if (!empty($maternity_admission_details->scan_edd)) - {{ streamline_date($maternity_admission_details->scan_edd) }} - @else - N/A - @endif -
    Current Gestation from scan - @if (!empty($maternity_admission_details->gestation_from_scan)) - {{ $maternity_admission_details->gestation_from_scan }} - @else - N/A - @endif -
    {{ __('maternity.referral_in_from') }} - {{ isset($referrals[$maternity_admission_details->referral_from]) ? $referrals[$maternity_admission_details->referral_from] : 'N/A' }} - -
    {{ __('maternity.progress') }} - {{ isset($maternity_progress[$maternity_admission_details->progress]) ? $maternity_progress[$maternity_admission_details->progress] : '' }} -
    -
    -
    -
    - -
    - -
    - - - -

    -
    - - - -
    - - {{-- past obstetrict history --}} -
    -
    -
    -
    - {{ __('antenatal.past_obstetric_history') }} -
    -
    -
    - - @if ($obstetric_history_details->count() > 0) -
    -
    - - - - - - - - - - - @foreach ($obstetric_history_details as $obstetric_history) - @php - $children = []; - if (!empty($obstetric_history->children)) { - $children = json_decode($obstetric_history->children); - } - @endphp - - - - - - - - - @endforeach - -
    {{ __('antenatal.date') }}{{ __('antenatal.gestation') }}{{ __('antenatal.outcome') }}{{ __('antenatal.name') }}{{ __('antenatal.patient_number') }}{{ __('antenatal.comments') }}
    - {{ streamline_date($obstetric_history->obstetric_date) }} - - {{ $obstetric_history->gestation }} weeks - - {{ isset($anc_outcomes[$obstetric_history->outcome]) ? $anc_outcomes[$obstetric_history->outcome] : '' }} - - - @if (!empty($children)) -
      - @foreach ($children as $child) -
    1. - {{ $child->name }}
    2. - @endforeach -
    - @endif -
    - @if (!empty($children)) -
      - @foreach ($children as $child) -
    • - {{ $child->patient_number }}
    • - @endforeach -
    - @endif -
    - {{-- {{ $obstetric_history->comments }} --}} - @if (!empty($children)) -
      - @foreach ($children as $child) -
    • - {{ $child->health_condition }}
    • - @endforeach -
    - @endif -
    -
    -
    - @endif -
    -
    -

    -
    -
    -
    - - {{-- delivery plan --}} - -
    -
    -
    -
    - Delivery plan -
    - -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('maternity.person_you_live_with') }} - @if (!empty($delivery_plan_details->person_you_live_with)) - {{ $delivery_plan_details->person_you_live_with }} - @else - {{ __('maternity.na') }} - @endif -
    {{ __('maternity.means_of_transport_to_facility') }} - - - - @if (!empty($delivery_plan_details->transport_means_to_facility)) - @if ($delivery_plan_details->transport_means_to_facility == '1') - {{ __('maternity.foot') }} - @elseif($delivery_plan_details->transport_means_to_facility == '2') - {{ __('maternity.motor_bike') }} - @elseif($delivery_plan_details->transport_means_to_facility == '3') - {{ __('maternity.private_car') }} - @elseif($delivery_plan_details->transport_means_to_facility == '4') - {{ __('maternity.public_means') }} - @else - {{ __('maternity.na') }} - @endif - @else - N/A - @endif -
    {{ __('maternity.person_to_accompany_you') }} - @if (!empty($delivery_plan_details->person_to_accompany_you)) - {{ $delivery_plan_details->person_to_accompany_you }} - @else - {{ __('maternity.na') }} - @endif -
    {{ __('maternity.person_to_look_after_home') }} - @if (!empty($delivery_plan_details->person_to_look_after_home)) - {{ $delivery_plan_details->person_to_look_after_home }} - @else - {{ __('maternity.na') }} - @endif -
    {{ __('maternity.family_planning_before_next_pregnancy') }} - - @if (!empty($delivery_plan_details->family_planning_method_plan)) - {{ $delivery_plan_details->family_planning_method_plan }} - @else - {{ __('maternity.na') }} - @endif -
    -
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('maternity.person_to_stay_at_facility') }} - @if (!empty($delivery_plan_details->person_to_stay_at_facility)) - {{ $delivery_plan_details->person_to_stay_at_facility }} - @else - {{ __('maternity.na') }} - @endif -
    {{ __('maternity.delivery_method') }} - @if (!empty($delivery_plan_details->delivery_method)) - @if ($delivery_plan_details->delivery_method == '1') - {{ __('antenatal.vaginal_delivery') }} - @elseif($delivery_plan_details->delivery_method == '2') - {{ __('antenatal.vacuum_delivery') }} - @elseif($delivery_plan_details->delivery_method == '3') - {{ __('antenatal.forceps_delivery') }} - @elseif($delivery_plan_details->delivery_method == '4') - {{ __('antenatal.c_section') }} - @elseif($delivery_plan_details->delivery_method == '5') - {{ __('antenatal.vbac') }} - @else - {{ __('maternity.na') }} - @endif - @else - N/A - @endif -
    {{ __('maternity.after_birth_disposal') }} - @if (!empty($delivery_plan_details->after_birth_disposal)) - @if ($delivery_plan_details->after_birth_disposal == '1') - {{ __('maternity.throw_in_placenta_pit') }} - @elseif($delivery_plan_details->after_birth_disposal == '2') - {{ __('maternity.take_it_home') }} - @else - {{ __('maternity.na') }} - @endif - @else - N/A - @endif -
    {{ __('maternity.backup_delivery_method') }} - - @if (!empty($delivery_plan_details->backup_delivery_method)) - {{ $delivery_plan_details->backup_delivery_method }} - @else - {{ __('maternity.na') }} - @endif -
    {{ __('maternity.mother_partner_screened_for') }} - @php - $mother_screen_data = explode( - ',', - $delivery_plan_details->mother_partner_screened_for, - ); - @endphp - @if (!empty($mother_screen_data)) -
      - @foreach ($mother_screen_data as $key => $screened_item) -
    • - @if ($screened_item == 'syphillis') - {{ __('antenatal.syphillis') }} - @elseif($screened_item == 'sickle_cell') - {{ __('maternity.sickle_cell') }} - @elseif($screened_item == 'hepatitis') - {{ __('antenatal.hepatitis') }} - @elseif($screened_item == 'hiv') - {{ __('antenatal.hiv') }} - @else - {{ __('maternity.na') }} - @endif - -
    • - @endforeach -
    - @else - {{ __('maternity.na') }} - @endif - - -
    -
    -
    -
    - -
    - -
    - - - -

    -
    -
    - - {{-- mothers history --}} -
    -
    -
    -
    - {{ __('antenatal.mother_history') }} -
    - - - -
    -
    -
    -
    -
    -
    -
    {{ __('antenatal.menstrual_history') }}
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('antenatal.cycle_length') }} - @if (!empty($maternity_mother_history_details->cycle_length)) - {{ $maternity_mother_history_details->cycle_length }} - @else - N/A - @endif -
    {{ __('antenatal.menses_length') }} - @if (!empty($maternity_mother_history_details->menses_length)) - {{ $maternity_mother_history_details->menses_length }} - @else - N/A - @endif -
    {{ __('antenatal.menses_amount') }} - @if (!empty($maternity_mother_history_details->menses_amount)) - {{ $maternity_mother_history_details->menses_amount }} - @else - N/A - @endif -
    {{ __('maternity.family_planning_method') }} - @php - $family_planning_methods_available = - $maternity_mother_history_details->family_planning_method; - @endphp - - - @if ($family_planning_methods_available == '1') - {{ __('maternity.na') }} - @elseif($family_planning_methods_available == '2') - Condom - @elseif($family_planning_methods_available == '3') - Pill - @elseif($family_planning_methods_available == '4') - Depo - @elseif($family_planning_methods_available == '5') - Injections - @elseif($family_planning_methods_available == '6') - Implant - @elseif($family_planning_methods_available == '7') - BTL - @elseif($family_planning_methods_available == '8') - Vasectomy - @elseif($family_planning_methods_available == '9') - LAM - @elseif($family_planning_methods_available == '10') - Other - @elseif($family_planning_methods_available == '11') - IUD - @elseif($family_planning_methods_available == '12') - Currently Pregnant - @else - {{ __('maternity.na') }} - @endif - - -
    {{ __('maternity.date_discontinued') }} - @if (!empty($maternity_mother_history_details->date_discontinued)) - {{ streamline_date_time_short($maternity_mother_history_details->date_discontinued) }} - @else - N/A - @endif -
    {{ __('maternity.why') }} - @if (!empty($maternity_mother_history_details->why_stop_family_planning)) - {{ $maternity_mother_history_details->why_stop_family_planning }} - @else - N/A - @endif -

    - -
    -
    {{ __('antenatal.family_history') }}
    -
    - - - - - - - - - - - - - - -
    {{ __('antenatal.sgbv') }} - @php - $sgbv_risks = explode( - ',', - $maternity_mother_history_details->sgbv_risk, - ); - @endphp - - @if (!empty($sgbv_risks)) - @foreach ($sgbv_risks as $key => $sgbv_risk) - @if ($sgbv_risk == 'sgbv_risk_present') - {{ __('antenatal.available') }} - @endif - @endforeach - - @else - {{ __('maternity.na') }} - @endif -
    {{ __('antenatal.other_sgbv') }} - @if (!empty($maternity_mother_history_details->other_sgbv_risk)) - {{ $maternity_mother_history_details->other_sgbv_risk }} - @else - {{ __('maternity.na') }} - @endif -

    - - - - - - - - - - - - - - - -
    {{ __('antenatal.husband_health') }} - @if (!empty($maternity_mother_history_details->husband_health)) - {{ $maternity_mother_history_details->husband_health }} - @else - {{ __('maternity.na') }} - @endif -
    {{ __('antenatal.other_comments') }} - @if (!empty($maternity_mother_history_details->other_medical_history_comment)) - {{ $maternity_mother_history_details->other_medical_history_comment }} - @else - {{ __('maternity.na') }} - @endif -

    - - - - -
    - -
    -
    -
    {{ __('antenatal.medical_history') }}
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('antenatal.medical_presentations') }} - @php - $medical_presentations = explode( - ',', - $maternity_mother_history_details->medical_presentations, - ); - @endphp - @if (!empty($medical_presentations)) -
      - @foreach ($medical_presentations as $key => $medical_presentation) -
    • - @if ($medical_presentation == 'generalized_l_glands') - {{ __('antenatal.generalized_l_glands') }} - @elseif($medical_presentation == 'oral_thrush') - {{ __('antenatal.oral_thrush') }} - @elseif($medical_presentation == 'medical_presentations_sti') - {{ __('antenatal.sti') }} - @elseif($medical_presentation == 'arv') - {{ __('antenatal.arv') }} - @elseif($medical_presentation == 'dematitis') - {{ __('antenatal.dematitis') }} - @elseif($medical_presentation == 'complications_tb') - {{ __('antenatal.tb') }} - @elseif($medical_presentation == 'herpes_simplex') - {{ __('antenatal.herpes_simplex') }} - @elseif($medical_presentation == 'herpes_zoster') - {{ __('antenatal.herpes_zoster') }} - @endif -
    • - @endforeach -
    - @else - {{ __('maternity.na') }} - @endif -
    {{ __('antenatal.others_presentations') }} - @if (!empty($maternity_mother_history_details->other_medical_presentations)) - {{ $maternity_mother_history_details->other_medical_presentations }} - @else - {{ __('maternity.na') }} - @endif -
    {{ __('maternity.history_of_aph') }} - @php - $history_aph = - $maternity_mother_history_details->history_of_aph; - @endphp - - @if (!empty($history_aph)) - @if ($history_aph == '1') - {{ __('maternity.yes') }} - @elseif($history_aph == '0') - {{ __('maternity.no') }} - @endif - @else - {{ __('maternity.na') }} - @endif -
    {{ __('maternity.aph_details') }} - @if (!empty($maternity_mother_history_details->history_aph_details)) - {{ $maternity_mother_history_details->history_aph_details }} - @else - {{ __('maternity.na') }} - @endif -
    {{ __('maternity.fits_details') }} - @if (!empty($maternity_mother_history_details->history_fit_details)) - {{ $maternity_mother_history_details->history_fit_details }} - @else - {{ __('maternity.na') }} - @endif -
    {{ __('maternity.history_of_fits') }} - @php - $history_fits = - $maternity_mother_history_details->history_of_fits; - @endphp - - @if (!empty($history_fits)) - @if ($history_fits == '1') - {{ __('maternity.yes') }} - @elseif($history_fits == '0') - {{ __('maternity.no') }} - @endif - @else - {{ __('maternity.na') }} - @endif -
    -
    -
    -
    - -
    - - -
    - @php - - $uterine_surgeries = !empty($maternity_mother_history_details->uterine_surgeries) - ? json_decode($maternity_mother_history_details->uterine_surgeries, true) - : []; - $other_surgeries = !empty($maternity_mother_history_details->other_surgeries) - ? json_decode($maternity_mother_history_details->other_surgeries, true) - : []; - - $uterus_operations = \Streamline\Models\UterusOperation::orderBy( - 'name', - 'asc', - )->get(); - - @endphp - - -
    -
    - {{ __('antenatal.uterus_operations') }} -

    -
    - - - - - - @forelse($uterine_surgeries as $key => $uterine_surgery) - - - - - - - - @empty - {{ __('maternity.na') }} - @endforelse - - -
    {{ __('antenatal.operation_name') }}{{ __('antenatal.date') }} - {{ __('antenatal.facility') }} -
    - @if (!empty($uterine_surgery['name'])) - @if ($uterine_surgery['name'] == '1') - {{ __('maternity.left_cut') }} - @elseif ($uterine_surgery['name'] == '2') - {{ __('maternity.right_cut') }} - @endif - @else - {{ __('maternity.na') }} - @endif - - - @if (!empty($uterine_surgery['date'])) - {{ streamline_date($uterine_surgery['date']) }} - @else - {{ __('maternity.na') }} - @endif - - @if (!empty($uterine_surgery['facility_name'])) - {{ $uterine_surgery['facility_name'] }} - @else - {{ __('maternity.na') }} - @endif -
    -
    -
    -
    - -
    - {{ __('antenatal.other_operations') }} -

    -
    - - - - - - @forelse($other_surgeries as $key => $other_surgery) - - - - - - - - @empty - {{ __('maternity.na') }} - @endforelse - - -
    {{ __('antenatal.operation_name') }}{{ __('antenatal.date') }} - {{ __('antenatal.facility') }} -
    - @if (!empty($other_surgery['name'])) - {{ $other_surgery['name'] }} - @else - {{ __('maternity.na') }} - @endif - - - @if (!empty($other_surgery['date'])) - {{ streamline_date($other_surgery['date']) }} - @else - {{ __('maternity.na') }} - @endif - - @if (!empty($other_surgery['facility_name'])) - {{ $other_surgery['facility_name'] }} - @else - {{ __('maternity.na') }} - @endif -
    -
    -
    - -
    -
    - -
    - -

    -
    - -
    - - {{-- blood transfusion --}} -
    -
    -
    -
    - Blood Transfusion and fractures details -
    - -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('antenatal.blood_transfusion') }} - @if (!empty($maternity_admission_details->blood_transfusion_available)) - @if ($maternity_admission_details->blood_transfusion_available == 'transfusion_checked') - {{ __('maternity.yes') }} - @endif - @else - N/A - @endif -
    {{ __('antenatal.why') }} - @if (!empty($maternity_admission_details->blood_transfusion_details)) - {{ $maternity_admission_details->blood_transfusion_details }} - @else - N/A - @endif -
    {{ __('antenatal.pelvis') }} - @php - $fractures = explode( - ',', - $maternity_admission_details->fractures, - ); - @endphp - - - @if (!empty($fractures)) - @if (in_array('pelvis', $fractures)) - {{ __('maternity.yes') }} - @endif - @else - {{ __('maternity.no') }} - @endif -
    Pelvis date - @if (!empty($maternity_admission_details->pelvis_fracture_date)) - {{ streamline_date($maternity_admission_details->pelvis_fracture_date) }} - @else - {{ __('maternity.no') }} - @endif -
    Pelvis details - @if (!empty($maternity_admission_details->pelvis_fracture_details)) - {{ $maternity_admission_details->pelvis_fracture_details }} - @else - {{ __('maternity.no') }} - @endif -
    {{ __('antenatal.femur') }} - - @if (!empty($fractures)) - @if (in_array('femur', $fractures)) - {{ __('maternity.yes') }} - @endif - @else - {{ __('maternity.no') }} - @endif -
    Femur date - @if (!empty($maternity_admission_details->femur_fracture_date)) - {{ streamline_date($maternity_admission_details->femur_fracture_date) }} - @else - {{ __('maternity.no') }} - @endif -
    Femur details - @if (!empty($maternity_admission_details->femur_fracture_details)) - {{ $maternity_admission_details->femur_fracture_details }} - @else - {{ __('maternity.no') }} - @endif -
    {{ __('antenatal.spine') }} - - @if (!empty($fractures)) - @if (in_array('spine', $fractures)) - {{ __('maternity.yes') }} - @endif - @else - {{ __('maternity.no') }} - @endif -
    Spine date - @if (!empty($maternity_admission_details->spine_fracture_date)) - {{ streamline_date($maternity_admission_details->spine_fracture_date) }} - @else - {{ __('maternity.no') }} - @endif -
    Spine details - @if (!empty($maternity_admission_details->spine_fracture_details)) - {{ $maternity_admission_details->spine_fracture_details }} - @else - {{ __('maternity.no') }} - @endif -
    Other fractures - @if (!empty($maternity_admission_details->other_fracture_details)) - {{ $maternity_admission_details->other_fracture_details }} - @else - {{ __('maternity.no') }} - @endif -
    - -
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Blood group - {{-- missing --}} - {{ isset($blood_transfusion->blood_group_id) ? $blood_transfusion->blood_group_id : 'N/A' }} - {{-- @if (!empty($maternity_admission_details->other_fracture_details)) - {{ $maternity_admission_details->other_fracture_details }} - @else - {{ __('maternity.no') }} - @endif --}} -
    VDRL {{ __('maternity.result') }} - @if (!empty($maternity_admission_details->vdrl_result)) - {{ $maternity_admission_details->vdrl_result }} - @else - {{ __('maternity.no') }} - @endif -
    VDRL {{ __('maternity.date') }} - @if (!empty($maternity_admission_details->vdrl_date)) - {{ streamline_date($maternity_admission_details->vdrl_date) }} - @else - {{ __('maternity.no') }} - @endif -
    VDRL {{ __('maternity.location') }} - @if (!empty($maternity_admission_details->vdrl_location)) - {{ $maternity_admission_details->vdrl_location }} - @else - {{ __('maternity.no') }} - @endif -
    {{ __('maternity.hiv_status') }} - @if ($maternity_admission_details->hiv_result_usaid == 0) - {{ __('maternity.negative') }} - @elseif ($maternity_admission_details->hiv_result_usaid == 1) - {{ __('maternity.positive') }} - @elseif ($maternity_admission_details->hiv_result_usaid == 3) - {{ __('maternity.unknown') }} - @else - {{ __('maternity.no') }} - @endif - -
    Hiv {{ __('maternity.date') }} - @if (!empty($maternity_admission_details->hiv_date)) - {{ streamline_date($maternity_admission_details->hiv_date) }} - @else - {{ __('maternity.no') }} - @endif -
    Hiv {{ __('maternity.location') }} - @if (!empty($maternity_admission_details->hiv_location)) - {{ $maternity_admission_details->hiv_location }} - @else - {{ __('maternity.no') }} - @endif -
    -
    -
    -
    - -
    - -
    - - - -

    -
    -
    - - {{-- pelvic examination and assessement --}} -
    -
    -
    -
    - {{ __('antenatal.pelvic_examination_and_assessement') }} -
    - -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('antenatal.vulva') }} - @if (!empty($pelvic_examination_and_assessment_details->vulva)) - {{ $pelvic_examination_and_assessment_details->vulva }} - @else - N/A - @endif -
    {{ __('antenatal.vagina') }} - @if (!empty($pelvic_examination_and_assessment_details->vagina)) - {{ $pelvic_examination_and_assessment_details->vagina }} - @else - N/A - @endif -
    {{ __('antenatal.cervix') }} - @if (!empty($pelvic_examination_and_assessment_details->cervix)) - @if ($pelvic_examination_and_assessment_details->cervix == '1') - Efaced - @elseif ($pelvic_examination_and_assessment_details->cervix == '2') - Not Efaced - @endif - @else - N/A - @endif -
    {{ __('antenatal.dilatation') }} - @if (!empty($pelvic_examination_and_assessment_details->dilatation)) - {{ $pelvic_examination_and_assessment_details->dilatation }} - @else - N/A - @endif -
    {{ __('antenatal.uterine_adnexa') }} - @if (!empty($pelvic_examination_and_assessment_details->uterine_adnexa)) - {{ $pelvic_examination_and_assessment_details->uterine_adnexa }} - @else - N/A - @endif -
    {{ __('antenatal.moniliasis') }} - @if (!empty($pelvic_examination_and_assessment_details->moniliasis)) - {{ $pelvic_examination_and_assessment_details->moniliasis }} - @else - N/A - @endif -
    -
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('antenatal.diagonal_conjugate') }} - @if (!empty($pelvic_examination_and_assessment_details->diagonal_conjugate)) - {{ $pelvic_examination_and_assessment_details->diagonal_conjugate }} - @else - N/A - @endif -
    {{ __('antenatal.sacrum') }} - @if (!empty($pelvic_examination_and_assessment_details->sacrum)) - @if ($pelvic_examination_and_assessment_details->sacrum == '1') - Curve Deep - @elseif ($pelvic_examination_and_assessment_details->sacrum == '2') - Flat - @endif - @else - N/A - @endif -
    {{ __('antenatal.ischial_spinces') }} - @if (!empty($pelvic_examination_and_assessment_details->ischial_spinces)) - @if ($pelvic_examination_and_assessment_details->ischial_spinces == '1') - Not Prominent - @elseif ($pelvic_examination_and_assessment_details->ischial_spinces == '2') - Prominent - @endif - @else - N/A - @endif -
    {{ __('antenatal.sub_public_angle') }} - @if (!empty($pelvic_examination_and_assessment_details->sub_public_angle)) - @if ($pelvic_examination_and_assessment_details->sub_public_angle == '1') - Obtuse - @elseif ($pelvic_examination_and_assessment_details->sub_public_angle == '2') - Acute - @endif - @else - N/A - @endif -
    {{ __('antenatal.ischial_tuberosities') }} - @if (!empty($pelvic_examination_and_assessment_details->ischial_tuberosities)) - @if ($pelvic_examination_and_assessment_details->ischial_tuberosities == '1') - 4 knuckles - @elseif ($pelvic_examination_and_assessment_details->ischial_tuberosities == '2') - Less - @endif - @else - N/A - @endif -
    {{ __('antenatal.pelvic_adequate') }} - @if (!empty($pelvic_examination_and_assessment_details->pelvic_adequate)) - @if ($pelvic_examination_and_assessment_details->pelvic_adequate == '1') - Borderline - @elseif ($pelvic_examination_and_assessment_details->pelvic_adequate == '2') - Contracted - @endif - @else - N/A - @endif -
    -
    -
    -
    - -
    - -
    - - - -

    -
    - - - -
    - - {{-- this pregnancy --}} -
    -
    -
    -
    - {{ __('maternity.this_pregnancy') }} -
    - -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('maternity.iufd') }} - @if ($maternity_admission_details->iufd == '1') - {{ __('maternity.yes') }} - @elseif($maternity_admission_details->iufd == '0') - {{ __('maternity.no') }} - @else - {{ __('maternity.na') }} - @endif -
    {{ __('maternity.born_before_arrival') }} - @if ($maternity_admission_details->born_before_arrival == '1') - {{ __('maternity.yes') }} - @elseif($maternity_admission_details->born_before_arrival == '0') - {{ __('maternity.no') }} - @else - {{ __('maternity.na') }} - @endif - -
    {{ __('antenatal.pregnancy_complications') }} - @php - $pregnancy_complications_all = explode( - ',', - $maternity_admission_details->pregnancy_complications, - ); - $pregnancy_complications = array_diff( - $pregnancy_complications_all, - ['tick_other_pregnancy_complications'], - ); - @endphp - - -
      - @forelse($pregnancy_complications as $key => $complication) -
    • - @if ($complication == 'weight_loss') - {{ __('antenatal.weight_loss') }} - @elseif($complication == 'fever_one_month') - {{ __('maternity.fever_one_month') }} - @elseif($complication == 'diarrhoea_one_month') - {{ __('antenatal.diarrhoea_one_month') }} - @elseif($complication == 'pruritus') - {{ __('antenatal.pruritus') }} - @elseif($complication == 'vaginal_bleeding') - {{ __('antenatal.vaginal_bleeding') }} - @elseif($complication == 'draining') - {{ __('antenatal.draining') }} - @elseif($complication == 'tick_other_pregnancy_complications') - {{ __('antenatal.tick_other_pregnancy_complications') }} - @else - {{ __('maternity.na') }} - @endif -
    • - @empty - {{ __('maternity.na') }} - @endforelse - -
    - - - -
    Other pregnancy complications - @if (!empty($maternity_admission_details->other_pregnancy_complications)) - {{ $maternity_admission_details->other_pregnancy_complications }} - @else - {{ __('maternity.na') }} - @endif -
    {{ __('maternity.recomendation_of_delivery') }} - @if (!empty($maternity_admission_details->delivery_recomendation)) - {{ $maternity_admission_details->delivery_recomendation }} - @else - {{ __('maternity.na') }} - @endif -
    - - - - - - - -
    -
    - {{ __('maternity.physical_examination') }} -
    -
    - @php - $physical_examination_all = explode( - ',', - $maternity_admission_details->physical_examination, - ); - $physical_examinations = array_diff( - $physical_examination_all, - ['other_physical_examination'], - ); - @endphp - - -
      - @forelse($physical_examinations as $key => $physical_examination) -
    • - @if ($physical_examination == 'breasts') - {{ __('antenatal.breasts') }} - @elseif($physical_examination == 'legs') - {{ __('antenatal.legs') }} - @elseif($physical_examination == 'heart') - {{ __('antenatal.heart') }} - @elseif($physical_examination == 'lungs') - {{ __('antenatal.lungs') }} - @elseif($physical_examination == 'teeth') - {{ __('antenatal.teeth') }} - @else - {{ __('maternity.na') }} - @endif -
    • - @empty - {{ __('maternity.na') }} - @endforelse - -
    - - - -
    - - - - - - - - - - - - -
    -
    - {{ __('maternity.heart_physical_examination_details') }} -
    -
    - @if (!empty($maternity_admission_details->heart_physical_examination_details)) - {{ $maternity_admission_details->heart_physical_examination_details }} - @else - {{ __('maternity.na') }} - @endif -
    - - - - - - - - - - - - -
    -
    - {{ __('maternity.other_physical_examinations') }} -
    -
    - @if (!empty($maternity_admission_details->other_physical_examinations)) - {{ $maternity_admission_details->other_physical_examinations }} - @else - {{ __('maternity.na') }} - @endif -
    - - - - - - - - - -
    - -
    - - - - - - - - - - - - - - - -
    -
    - {{ __('maternity.mother_current_obstetric_risk') }} -
    -
    - @php - $obstetric_risk_factors_all = explode( - ',', - $maternity_admission_details->obstetric_risk_factors, - ); - $obstetric_risk_factors = array_diff( - $obstetric_risk_factors_all, - ['other_obstetrics'], - ); - @endphp -
      - @forelse($obstetric_risk_factors as $key => $obstetric_risk_factor) -
    • - @if ($obstetric_risk_factor == 'history_aph_pregnancy') - {{ __('maternity.history_aph_pregnancy') }} - @elseif ($obstetric_risk_factor == 'epilepsy') - {{ __('maternity.epilepsy') }} - @elseif ($obstetric_risk_factor == 'severe_pre_eclampsia') - {{ __('maternity.severe_pre_eclampsia') }} - @elseif ($obstetric_risk_factor == 'history_convulsion_pregnancy') - {{ __('maternity.history_convulsion_pregnancy') }} - @elseif ($obstetric_risk_factor == 'polyhydramnios') - {{ __('maternity.polyhydramnios') }} - @elseif ($obstetric_risk_factor == 'premature_rupture_of_membranes') - {{ __('maternity.premature_rupture_of_membranes') }} - @elseif ($obstetric_risk_factor == 'diabetes_mellitus') - {{ __('maternity.diabetes_mellitus') }} - @elseif ($obstetric_risk_factor == 'multiple_pregnancy') - {{ __('maternity.multiple_pregnancy') }} - @elseif ($obstetric_risk_factor == 'pph') - {{ __('maternity.pph') }} - @elseif ($obstetric_risk_factor == 'cardiac_disease') - {{ __('maternity.cardiac_disease') }} - @elseif ($obstetric_risk_factor == 'malpresentation') - {{ __('maternity.malpresentation') }} - @elseif ($obstetric_risk_factor == 'asthma') - {{ __('maternity.asthma') }} - @elseif ($obstetric_risk_factor == 'poor_obstetric_history') - {{ __('maternity.poor_obstetric_history') }} - @elseif ($obstetric_risk_factor == 'pre_term_labour') - {{ __('maternity.pre_term_labour') }} - @elseif ($obstetric_risk_factor == 'sickle_cell_disease') - {{ __('maternity.sickle_cell_disease') }} - @elseif ($obstetric_risk_factor == 'previous_csections') - {{ __('maternity.previous_csections') }} - @elseif ($obstetric_risk_factor == 'polio') - {{ __('maternity.polio') }} - @elseif ($obstetric_risk_factor == 'group_b_streptococcus_colonization') - {{ __('maternity.group_b_streptococcus_colonization') }} - @elseif ($obstetric_risk_factor == 'woman_advanced_age') - {{ __('maternity.woman_advanced_age') }} - @elseif ($obstetric_risk_factor == 'mental_illness') - {{ __('maternity.mental_illness') }} - @elseif ($obstetric_risk_factor == 'adolescent_pregnancy') - {{ __('maternity.adolescent_pregnancy') }} - @elseif ($obstetric_risk_factor == 'hypertension') - {{ __('maternity.hypertension') }} - @elseif ($obstetric_risk_factor == 'kidney_disease') - {{ __('maternity.kidney_disease') }} - @else - {{-- {{ __('maternity.na') }} --}} - @endif -
    • - @empty - {{ __('maternity.na') }} - @endforelse - -
    - - -
    - - - - - - - -
    - {{ __('maternity.other_obstetric_risk_factors') }} - @if (!empty($maternity_admission_details->other_physical_examinations)) - {{ $maternity_admission_details->other_physical_examinations }} - @else - {{ __('maternity.na') }} - @endif -
    -
    -
    -
    - -
    - -
    - -

    -
    -
    - - {{--
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('maternity.patient_number') }}{{ $patient->number }}
    {{ __('maternity.blood_group') }}{{ isset($blood_transfusion->blood_group_id) ? $blood_transfusion->blood_group_id : 'N/A' }} -
    {{ __('maternity.blood_transfusion_date') }}{{ isset($blood_transfusion->transfusion_date) ? streamline_date($blood_transfusion->transfusion_date) : '' }} -
    {{ __('maternity.number_of_units') }}{{ isset($blood_transfusion->number_of_units) ? $blood_transfusion->number_of_units : '' }} -
    {{ __('maternity.comment') }}{{ isset($blood_transfusion->comments) ? $blood_transfusion->comments : '' }} -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @php - $result = ''; - if ($maternity_admission_details->hiv_result_usaid == 0) { - $result = __('maternity.negative'); - } elseif ($maternity_admission_details->hiv_result_usaid == 1) { - $result = __('maternity.positive'); - } elseif ($maternity_admission_details->hiv_result_usaid == 3) { - $result = __('maternity.unknown'); - } - @endphp - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('maternity.gravida') }}{{ $maternity_mother_history_details->gravida }}
    {{ __('maternity.para') }}{{ $maternity_admission_details->para }}
    {{ __('maternity.abortion') }}{{ $maternity_admission_details->abortion }}
    {{ __('maternity.ectopic_pregnancies') }} - @if (!empty($maternity_admission_details->ectopic_pregnancies)) - {{ $maternity_admission_details->ectopic_pregnancies }} - @else - 0 - @endif -
    {{ __('maternity.postpartum') }}{{ $maternity_admission_details->postpartum }}
    {{ __('maternity.previous_pph') }}{{ $maternity_admission_details->previous_pph ? 'Yes' : 'No' }}
    {{ __('maternity.previous_scar') }}{{ $maternity_admission_details->previous_scar == 1 ? 'Yes' : 'No' }}
    {{ __('maternity.comments_from_pph') }}{{ $maternity_admission_details->other_comments_pph }}
    {{ __('maternity.lmp') }}{{ streamline_date($maternity_admission_details->lmp) }}
    {{ __('maternity.accuracy') }}{{ isset($accuracies[$maternity_admission_details->accuracy]) ? $accuracies[$maternity_admission_details->accuracy] : '' }} -
    {{ __('maternity.edd') }}{{ $maternity_admission_details->edd }}
    {{ __('maternity.referral_from') }}{{ isset($referrals[$maternity_admission_details->referral_from]) ? $referrals[$maternity_admission_details->referral_from] : '' }} -
    {{ __('maternity.progress') }}{{ isset($maternity_progress[$maternity_admission_details->progress]) ? $maternity_progress[$maternity_admission_details->progress] : '' }} -
    {{ __('maternity.hiv_status') }}{{ $result }}
    {{ __('maternity.hiv_date') }}{{ streamline_date($maternity_admission_details->hiv_date) }}
    {{ __('maternity.scan_edd') }}{{ streamline_date($maternity_admission_details->scan_edd) }}
    {{ __('maternity.gestation_from_scan') }}{{ $maternity_admission_details->gestation_from_scan }}
    {{ __('maternity.history_of_fits') }}{{ $maternity_admission_details->history_of_fits == 1 ? 'Yes' : 'No' }}
    {{ __('maternity.history_of_aph') }}{{ $maternity_admission_details->history_of_aph == 1 ? 'Yes' : 'No' }}
    -
    -
    -
    -
    - - - @if (!is_null($obstetric_history)) - - - - - - - - - - - - - - - - - - - - - @endif - - - - - - - - - -
    {{ __('maternity.obstetric_date') }} - {{ streamline_date($obstetric_history->obstetric_date) }} -
    {{ __('maternity.gestation') }} - {{ $obstetric_history->gestation }} -
    {{ __('maternity.outcome') }} - {{ $obstetric_history->outcome }} -
    {{ __('maternity.outcome_name') }} - {{ $obstetric_history->outcome_name }} -
    {{ __('maternity.comments') }} - {{ $obstetric_history->comments }} -
    {{ __('maternity.current_acute_problems') }} - {{ $maternity_admission_details->current_acute_problems }} -
    {{ __('maternity.obstetric_risk_factors') }} - {{ $maternity_admission_details->obstetric_risk_factors }} -
    -
    -
    -
    --}} - - -
    -
    - - - - -
    - -
    -
    -
    - - - - - -
    - -
    - - - -@endsection - -@push('scripts') - -@endpush - -@push('styles') - -@endpush diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/admission_details.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/admission_details.blade.php deleted file mode 100755 index 544eae7c..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/admission_details.blade.php +++ /dev/null @@ -1,141 +0,0 @@ -@extends('layouts.main') - - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('maternity.details_for_episode') }} : - {{ streamline_date(get_name($episode_id, 'id', 'created_at', 'patient_episodes')) }}

    -
    - -
    - -
    -

    - -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - - -
    - @if (session('update_inpatient')) - - @endif - - -
    - -
    -
    -
    -
    - -
    -
    - {{-- - {{ __('consultations.patient_home') }} --}} - - @if (Auth::user()->can('print-maternity-admission')) - - Print - @endif - - {{-- - - - Modify --}} - -
    -
    -
    -

    {{ __('maternity.maternity_admission_details_for') }} - {{ get_full_name($patient->id, 'id', 'first_name', 'last_name', 'patients') }} as of, - {{ streamline_date_time_short($maternity_admission_details->created_at) }} -

    - - - {{-- maternity admission details --}} - @include('maternity::maternity.includes.maternity_admission_details') - - {{-- buttons --}} -
    -
    - -
    -
    - - {{ __('consultations.patient_home') }} - - - @if (Auth::user()->can('print-maternity-admission')) - - Print - @endcan - - @if (Auth::user()->can('edit-maternity-admission', $maternity_admission_details->id)) - - Modify - @endcan - - -
    -
    - - - - -
    -
    - - -
    -
    - - -@endsection - -@push('scripts') - -@endpush - -@push('styles') - -@endpush diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/baby_form.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/baby_form.blade.php deleted file mode 100755 index c913d008..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/baby_form.blade.php +++ /dev/null @@ -1,165 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('maternity.baby') }} 1
    - -
    - -
    - -
    - -
    -
    -
    -
    - {{ __('maternity.yes') }} -
    -
    - {{ __('maternity.no') }} -
    -
    -
    -
    - -
    - -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/baby_form_edit.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/baby_form_edit.blade.php deleted file mode 100644 index 82728254..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/baby_form_edit.blade.php +++ /dev/null @@ -1,201 +0,0 @@ - - - - - - - - - - - @php - $receiver_by_name_array = explode(",", $delivery_record->received_by); - $first_receiver = $receiver_by_name_array[0]; - $second_receiver = $receiver_by_name_array[1]; - $third_receiver = $receiver_by_name_array[2]; - @endphp - - - - - - - @php - $gender_name_array = explode(",", $delivery_record->gender); - $first_gender = $gender_name_array[0]; - $second_gender = $gender_name_array[1]; - $third_gender = $gender_name_array[2]; - @endphp - - - - - - - @php - $baby_condition_array = explode(",", $delivery_record->baby_condition); - $first_baby_condition = $baby_condition_array[0]; - $second_baby_condition = $baby_condition_array[1]; - $third_baby_condition = $baby_condition_array[2]; - @endphp - - - - - - - @php - $weight_array = explode(",", $delivery_record->weight); - $first_weight = $weight_array[0]; - $second_weight = $weight_array[1]; - $third_weight = $weight_array[2]; - @endphp - - - - - - - - - - - - - @php - $birth_order_array = explode(",", $delivery_record->birth_order); - $first_birth_order = $birth_order_array[0]; - $second_birth_order = $birth_order_array[1]; - $third_birth_order = $birth_order_array[2]; - @endphp - - - - - - - @php - $baby_comments_array = explode(",", $delivery_record->baby_comments); - $first_baby_comments = $baby_comments_array[0]; - $second_baby_comments = $baby_comments_array[1]; - $third_baby_comments = $baby_comments_array[2]; - @endphp - - - - - - - -
    {{ __('maternity.baby') }} 1
    - -
    - -
    - -
    - -
    -
    -
    -
    - {{ __('maternity.yes') }} -
    -
    - {{ __('maternity.no') }} -
    -
    -
    -
    - -
    - -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/delivery_form.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/delivery_form.blade.php deleted file mode 100755 index 8ae80ee2..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/delivery_form.blade.php +++ /dev/null @@ -1,353 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('maternity.baby') }} 1
    -
    -
    - {{ Form::text('birthdate[]',date('d/m/Y'),['class' => 'form-control','readonly','id'=>'birthdate']) }} - -
    -
    -
    -
    - -
    - -
    -
    -
    - {{ __('maternity.hours') }} -
    -
    - {{ __('maternity.minutes') }} -
    -
    -
    -
    -
    - {{ __('maternity.hours') }} -
    -
    - {{ __('maternity.minutes') }} -
    -
    -
    - -
    - -
    - {{ Form::select('modeOfDelivery[]',$mode_of_delivery,'',['class'=>'form-control col-sm-12','id'=>'modeOfDelivery1']) }} -
    - -
    - {{ Form::select('locationOfDelivery[]',$location_of_delivery,'',['class'=>'form-control col-sm-12 delivery_location','id'=>'locationOfDelivery1']) }} - {{ __('maternity.add_new_location_of_delivery') }} -
    - -
    - - - - \ No newline at end of file diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/delivery_form_edit.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/delivery_form_edit.blade.php deleted file mode 100644 index 8e704a5c..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/delivery_form_edit.blade.php +++ /dev/null @@ -1,455 +0,0 @@ - - - - - - - - - - - @php - $dob_array = explode(",", $delivery_record->date_of_birth); - $first_dob = $dob_array[0]; - $second_dob = $dob_array[1]; - $third_dob = $dob_array[2]; - @endphp - - - - - - - @php - $delivery_time_array = explode(",", $delivery_record->delivery_time); - $first_delivery_time = $delivery_time_array[0]; - $second_delivery_time = $delivery_time_array[1]; - $third_delivery_time = $delivery_time_array[2]; - @endphp - - - - - - - @php - $duration_one_array = explode(",", $delivery_record->duration_1); - $first_duration_one = $duration_one_array[0]; - $second_duration_one = $duration_one_array[1]; - $third_duration_one = $duration_one_array[2]; - @endphp - - - - - - - @php - $duration_two_array = explode(",", $delivery_record->duration_2); - $first_duration_two = $duration_two_array[0]; - $first_duration_two_hr_min = explode(" and ", $first_duration_two); - $first_duration_two_hr = $first_duration_two_hr_min[0]; - $first_duration_two_min = $first_duration_two_hr_min[1]; - $second_duration_two = $duration_two_array[1]; - $second_duration_two_hr_min = explode(" and ", $second_duration_two); - $second_duration_two_hr = $second_duration_two_hr_min[0]; - $second_duration_two_min = $second_duration_two_hr_min[1]; - $third_duration_two = $duration_two_array[2]; - $third_duration_two_hr_min = explode(" and ", $third_duration_two); - $third_duration_two_hr = $third_duration_two_hr_min[0]; - $third_duration_two_min = $third_duration_two_hr_min[1]; - @endphp - - - - - - - @php - $duration_three_array = explode(",", $delivery_record->duration_3); - $first_duration_three = $duration_three_array[0]; - $first_duration_three_hr_min = explode(" and ", $first_duration_three); - $first_duration_three_hr = $first_duration_three_hr_min[0]; - $first_duration_three_min = $first_duration_three_hr_min[1]; - $second_duration_three = $duration_three_array[1]; - $second_duration_three_hr_min = explode(" and ", $second_duration_three); - $second_duration_three_hr = $second_duration_three_hr_min[0]; - $second_duration_three_min = $second_duration_three_hr_min[1]; - $third_duration_three = $duration_three_array[2]; - $third_duration_three_hr_min = explode(" and ", $third_duration_three); - $third_duration_three_hr = $third_duration_three_hr_min[0]; - $third_duration_three_min = $third_duration_three_hr_min[1]; - @endphp - - - - - - - @php - $delivered_by_cadre_array = explode(",", $delivery_record->delivered_by_cadre); - $first_cadre = $delivered_by_cadre_array[0]; - $second_cadre = $delivered_by_cadre_array[1]; - $third_cadre = $delivered_by_cadre_array[2]; - @endphp - - - - - - - @php - $delivered_by_name_array = explode(",", $delivery_record->delivered_by_name); - $first_deliverer = $delivered_by_name_array[0]; - $second_deliverer = $delivered_by_name_array[1]; - $third_deliverer = $delivered_by_name_array[2]; - @endphp - - - - - - - @php - $superviser_name_array = explode(",", $delivery_record->supervised_by); - $first_supervisor = $superviser_name_array[0]; - $second_supervisor = $superviser_name_array[1]; - $third_supervisor = $superviser_name_array[2]; - @endphp - - - - - - - @php - $mode_of_delivery_array = explode(",", $delivery_record->mode_of_delivery); - $first_supervisor = $mode_of_delivery_array[0]; - $second_supervisor = $mode_of_delivery_array[1]; - $third_supervisor = $mode_of_delivery_array[2]; - @endphp - - - - - - - @php - $indication_for_cs_array = explode(",", $delivery_record->indication_for_cs); - $first_indication = $indication_for_cs_array[0]; - $second_indication = $indication_for_cs_array[1]; - $third_indication = $indication_for_cs_array[2]; - @endphp - - - - - - - @php - $location_of_delivery_array = explode(",", $delivery_record->location_of_delivery); - $first_location = $location_of_delivery_array[0]; - $second_location = $location_of_delivery_array[1]; - $third_location = $location_of_delivery_array[2]; - @endphp - - - - - - - @php - $delivery_comments_array = explode(",", $delivery_record->delivery_comments); - $first_delivery_comments = $delivery_comments_array[0]; - $second_delivery_comments = $delivery_comments_array[1]; - $third_delivery_comments = $delivery_comments_array[2]; - @endphp - - - - - - - -
    {{ __('maternity.baby') }} 1
    -
    -
    - {{ Form::text('birthdate[]',$first_dob,['class' => 'form-control','readonly','id'=>'birthdate']) }} - -
    -
    -
    -
    - -
    - -
    -
    -
    - {{ __('maternity.hours') }} -
    -
    - {{ __('maternity.minutes') }} -
    -
    -
    -
    -
    - {{ __('maternity.hours') }} -
    -
    - {{ __('maternity.minutes') }} -
    -
    -
    - -
    - -
    - {{ Form::select('modeOfDelivery[]',$mode_of_delivery,$first_supervisor,['class'=>'form-control col-sm-12','id'=>'modeOfDelivery1']) }} -
    - -
    - {{ Form::select('locationOfDelivery[]',$location_of_delivery,$first_location,['class'=>'form-control col-sm-12 delivery_location','id'=>'locationOfDelivery1']) }} - {{ __('maternity.add_new_location_of_delivery') }} -
    - -
    - - - - \ No newline at end of file diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/delivery_record.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/delivery_record.blade.php deleted file mode 100755 index 17dd15b1..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/delivery_record.blade.php +++ /dev/null @@ -1,384 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('maternity.delivery_record') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    - -
    -@endsection - -@push('scripts') - - - - -@endpush diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/delivery_record_details.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/delivery_record_details.blade.php deleted file mode 100755 index 3393e9b8..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/delivery_record_details.blade.php +++ /dev/null @@ -1,464 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('maternity.delivery_for_episode_started') }} : {{ streamline_date(get_name($episode_id, 'id', 'created_at', 'patient_episodes')) }}

    -
    -
    - -
    -
    - -
    -
    - -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('maternity.patient_number') }}{{ $patient->number }}
    {{ __('maternity.foetal_number') }}{{ $delivery_record_details->foetal_number }}
    {{ __('maternity.blood_loss') }}{{ $delivery_record_details->blood_loss }} (mls)
    {{ __('maternity.blood_loss_measurement') }}{{ $delivery_record_details->bloodloss_measurement }}
    {{ __('maternity.triage_done_on') }}
    -
    -
    -
    -
    - - - - - - @if($delivery_record_details->foetal_number == 2) - - @elseif ($delivery_record_details->foetal_number == 3) - - - @endif - - - - @php $foetal_number = $delivery_record_details->foetal_number; @endphp - - - @php - $date_of_birth_array = explode(",", $delivery_record_details->date_of_birth); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $delivery_time_array = explode(",", $delivery_record_details->delivery_time); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $duration_first_array = explode(",", $delivery_record_details->duration_1); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $duration_second_stage_array = explode(",", $delivery_record_details->duration_2); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - @php - $duration2_in_hrs_and_mins = explode("and", $duration_second_stage_array[$x]); - @endphp - - @endfor - - - - @php - $duration_third_stage_array = explode(",", $delivery_record_details->duration_3); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - @php - $duration3_in_hrs_and_mins = explode("and", $duration_third_stage_array[$x]); - @endphp - - @endfor - - - - @php - $delivered_by_cadre_array = explode(",", $delivery_record_details->delivered_by_cadre); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $delivered_by_name_array = explode(",", $delivery_record_details->delivered_by_name); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $supervised_by_array = explode(",", $delivery_record_details->supervised_by); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $mode_of_delivery_array = explode(",", $delivery_record_details->mode_of_delivery); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $indication_for_cs_array = explode(",", $delivery_record_details->indication_for_cs); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $location_of_delivery_array = explode(",", $delivery_record_details->location_of_delivery); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $resuscitation_airway_array = explode(",", $delivery_record_details->resuscitation_airway); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $resuscitation_suction_array = explode(",", $delivery_record_details->resuscitation_suction); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $delivery_comments_array = explode(",", $delivery_record_details->delivery_comments); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - -
    {{ __('maternity.baby') }} 1{{ __('maternity.baby') }} 2{{ __('maternity.baby') }} 2{{ __('maternity.baby') }} 3
    {{ __('maternity.date_of_birth') }}{{ $date_of_birth_array[$x] }}
    {{ __('maternity.delivery_time') }}{{ $delivery_time_array[$x] }}
    {{ __('maternity.duration_1st') }}{{ $duration_first_array[$x] }} {{ __('maternity.hours') }}
    {{ __('maternity.duration_2nd') }}{{ $duration2_in_hrs_and_mins[0] }} {{ __('maternity.hours') }} {{ $duration2_in_hrs_and_mins[1] }} {{ __('maternity.minutes') }}
    {{ __('maternity.duration_3rd') }}{{ $duration3_in_hrs_and_mins[0] }} {{ __('maternity.hours') }} {{ $duration2_in_hrs_and_mins[1] }} {{ __('maternity.minutes') }}
    {{ __('maternity.delivered_by_cadre') }}{{ $delivered_by_cadre_array[$x] == 1 ? "Staff" : "Student" }}
    {{ __('maternity.delivered_by_name') }}{{ isset($users[$delivered_by_name_array[$x]]) ? $users[$delivered_by_name_array[$x]] : '' }}
    {{ __('maternity.supervised_by') }}{{ isset($users[$supervised_by_array[$x]]) ? $users[$supervised_by_array[$x]] : '' }}
    {{ __('maternity.mode_of_delivery') }}{{ isset($delivery_modes[$mode_of_delivery_array[$x]]) ? $delivery_modes[$mode_of_delivery_array[$x]] : '' }}
    {{ __('maternity.indication_for_cs') }}{{ $indication_for_cs_array[$x] }}
    {{ __('maternity.location_of_delivery') }}{{ isset($delivery_locations[$location_of_delivery_array[$x]]) ? $delivery_locations[$location_of_delivery_array[$x]] : '' }}
    {{ __('maternity.resuscitation_airway') }} - @if ($resuscitation_airway_array[$x] == "1") - {{ __('maternity.nil') }} - @elseif($resuscitation_airway_array[$x] == "2") - {{ __('maternity.bag') }} - @elseif($resuscitation_airway_array[$x] == "3") - {{ __('maternity.mask') }} - @endif -
    {{ __('maternity.resuscitation_suction') }}{{ $resuscitation_suction_array[$x] }}
    {{ __('maternity.comments') }}{{ $delivery_comments_array[$x] }}
    -
    -
    -
    -
    - - - - - - @if($delivery_record_details->foetal_number == 2) - - @elseif ($delivery_record_details->foetal_number == 3) - - - @endif - - - - - - @php - $received_by_array = explode(",", $delivery_record_details->received_by); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $gender_array = explode(",", $delivery_record_details->gender); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - @if($gender_array[$x] ==1 ) - - @elseif($gender_array[$x] == 2) - - @else - - @endif - @endfor - - - - @php - $baby_condition_array = explode(",", $delivery_record_details->baby_condition); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - @if($baby_condition_array[$x] == 1) - - @elseif($baby_condition_array[$x] == 2) - - @elseif($baby_condition_array[$x] == 3) - - @endif - @endfor - - - - @php - $weight_array = explode(",", $delivery_record_details->weight); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $congenital_abnormalities_array = explode(",", $delivery_record_details->congenital_abnormalities); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $birth_order_array = explode(",", $delivery_record_details->birth_order); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $apgar_score_at_1_min_array = explode(",", $delivery_record_details->apgar_score_at_minute_1); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $apgar_score_at_5_min_array = explode(",", $delivery_record_details->apgar_score_at_minute_5); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $apgar_score_at_10_min_array = explode(",", $delivery_record_details->apgar_score_at_minute_10); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $age_established_spontaneous_respiration_array = explode(",", $delivery_record_details->age_established_spontaneous_reg_respiration); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $baby_comments_array = explode(",", $delivery_record_details->baby_comments); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - - @php - $moved_to_array = explode(",", $delivery_record_details->moved_to); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - -
    {{ __('maternity.baby') }} 1{{ __('maternity.baby') }} 2{{ __('maternity.baby') }} 2{{ __('maternity.baby') }} 3
    {{ __('maternity.received_by') }}{{ isset($users[$received_by_array[$x]]) ? $users[$received_by_array[$x]] : '' }}
    {{ __('maternity.sex') }}{{ __('maternity.female') }}{{ __('maternity.male') }}{{ __('maternity.other') }}
    {{ __('maternity.condition') }}{{ __('maternity.alive') }}{{ __('maternity.fresh_sb') }}{{ __('maternity.macerated_sb') }}
    {{ __('maternity.weight') }}{{ $weight_array[$x] }} Kg
    {{ __('maternity.congenital_abnormalities_apparent') }}{{ $congenital_abnormalities_array[$x] }}
    {{ __('maternity.birth_order') }}{{ $birth_order_array[$x] }}
    {{ __('maternity.apgar_1') }}{{ $apgar_score_at_1_min_array[$x] }}
    {{ __('maternity.apgar_5') }}{{ $apgar_score_at_5_min_array[$x] }}
    {{ __('maternity.apgar_10') }}{{ $apgar_score_at_10_min_array[$x] }}
    {{ __('maternity.age_established_respiration') }}{{ $age_established_spontaneous_respiration_array[$x] }}
    {{ __('maternity.comments') }}{{ $baby_comments_array[$x] }}
    {{ __('maternity.moved_to') }}{{ get_name($moved_to_array[$x], "id", "name", "wards") }}
    -
    - -
    - - - - - - - - @foreach($babies as $baby) - - - - - - @endforeach - - - - - -
    - {{ __('maternity.baby_record_on') }} Stre@mline -
    - {{ __('maternity.select') }} - {{ $baby->number }}{{ $baby->first_name." ".$baby->last_name }}
    - {{ Form::open(['method' => 'POST', 'route' => 'maternity.print_delivery_record_details', 'target' => "_blank"]) }} - - - - - - -
    - -
    - {{ Form::close() }} -
    - Edit Delivery Record -
    -
    -
    -
    - - -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/edit_admission_details.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/edit_admission_details.blade.php deleted file mode 100755 index be14c1d9..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/edit_admission_details.blade.php +++ /dev/null @@ -1,2414 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') - - - - -
    -
    -

    {{ __('inpatient.inpatient_sheet') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - - {{-- previous consultations --}} - - {{-- @if (count($previous_consultation_inpatient_info) > 0) -
    -
    -
    - @include('maternity::maternity.includes.previous_admissions') - -
    -
    -
    - @endif --}} - - - - @if (check_if_episode_is_a_followup($episode->id)) - @php - $parent_episode_details = \Streamline\Models\PatientEpisode::find($episode->parent_episode_id); - $parent_consultations = \Streamline\Models\Consultation::where([ - 'episode_id' => $parent_episode_details->id, - ])->get(); - $parent_consultation_details = count($parent_consultations) > 0 ? $parent_consultations->first() : null; - $parent_triage_details = \Streamline\Models\Triage::where([ - 'id' => $parent_episode_details->triage_id, - ])->first(); - - if (check_if_episode_is_a_followup($parent_episode_details->id)) { - $episode_has_grand_parent_episode = true; - - $grand_parent_episode_details = \Streamline\Models\PatientEpisode::find( - $parent_episode_details->parent_episode_id, - ); - - $grand_parent_episode_treatments = \Streamline\Models\Treatment::where([ - 'patient_id' => $patient_id, - 'episode_id' => $grand_parent_episode_details->id, - 'tta' => 0, - ])->get(); - - $grand_parent_episode_ordered_procedures = \Streamline\Models\OrderedProcedure::where([ - 'patient_id' => $patient_id, - 'episode_id' => $grand_parent_episode_details->id, - ])->get(); - - $grand_parent_episode_ordered_investigations = \Streamline\Models\OrderedInvestigation::where([ - 'patient_id' => $patient_id, - 'episode_id' => $grand_parent_episode_details->id, - ])->get(); - - $grand_parent_episode_ordered_sundries = \Streamline\Models\OrderedSundry::where([ - 'patient_id' => $patient_id, - 'episode_id' => $grand_parent_episode_details->id, - ])->get(); - - $grand_parent_episode_investigation_results = \Streamline\Models\InvestigationResults::where([ - 'patient_id' => $patient_id, - 'episode_id' => $grand_parent_episode_details->id, - ])->get(); - } - @endphp - @endif - - -
    -
    -
    - - -

    {{ __('antenatal.maternity_admission') }} -

    - - - - - {{-- {{ Form::open(['route' => 'maternity.update',]) }} --}} - {{-- {{ Form::model($existing_maternity_delivery_plan, ['route' => ['maternity.update', $existing_maternity_delivery_plan->id], 'method' => 'PUT']) }} --}} - - {{ Form::model($existing_maternity_inpatient_data, ['route' => ['maternity.update', $existing_maternity_inpatient_data->id], 'method' => 'PUT']) }} - -
    -
    - {{-- primary diagnosis --}} -
    -
    -
    -
    - - - - - - - - - - @if (check_if_episode_is_a_followup($episode->id) && - !is_null($parent_consultation_details) && - $parent_consultation_details->primary_diagnosis != $existing_maternity_inpatient_data->primary_diagnosis) - - - - - - - - - - - @else - - - - - - @endif - @if (Auth::user()->can('add-new-diagnosis-from-consultation')) - - - - - @endif - -
    {{ __('consultations.PRIMARY_DIAGNOSIS') }}{{ __('consultations.PROMPT') }}{{ __('consultations.REFERENCES') }}
    -
    -
    - {{ Form::select('parent_primary_diagnosis', $diagnoses, $parent_consultation_details->primary_diagnosis, ['class' => 'form-control col-sm-12 compulsory', 'readonly']) }} -
    -
    -
    (As diagnosed on - {{ streamline_date($parent_episode_details->created_at) }})
    -
    -
    -
    -
    - {{ isset($parent_consultation_details->primary_diagnosis) ? $diagnoses_all->firstWhere('id', $parent_consultation_details->primary_diagnosis)->prompts : '' }}  -
    -
    -
    - @if (!is_null($parent_consultation_details->primary_diagnosis)) - @php - $reference_names = explode( - ',', - get_name( - $parent_consultation_details->primary_diagnosis, - 'id', - 'reference_names', - 'diagnoses', - ), - ); - $reference_areas = explode( - ',', - get_name( - $parent_consultation_details->primary_diagnosis, - 'id', - 'reference_areas', - 'diagnoses', - ), - ); - @endphp - @for ($i = 0; $i < count($reference_areas); $i++) - @if (isset($reference_areas[$i]) && isset($reference_names[$i])) - - {{ $reference_names[$i] }} | - @endif - @endfor - @endif -
    -
    -
    - {{ Form::select('primary_diagnosis', $diagnoses, $existing_maternity_inpatient_data->primary_diagnosis, ['id' => 'primary_diagnosis', 'class' => 'form-control col-sm-12 compulsory', 'required']) }} -
    -
    -
    - {{ isset($existing_maternity_inpatient_data->primary_diagnosis) ? $diagnoses_all->firstWhere('id', $existing_maternity_inpatient_data->primary_diagnosis)->prompts : '' }}  -
    -
    -
    - @if (!is_null($existing_maternity_inpatient_data->primary_diagnosis)) - @php - $reference_names = explode( - ',', - get_name( - $existing_maternity_inpatient_data->primary_diagnosis, - 'id', - 'reference_names', - 'diagnoses', - ), - ); - $reference_areas = explode( - ',', - get_name( - $existing_maternity_inpatient_data->primary_diagnosis, - 'id', - 'reference_areas', - 'diagnoses', - ), - ); - @endphp - @for ($i = 0; $i < count($reference_areas); $i++) - @if (isset($reference_areas[$i]) && isset($reference_names[$i])) - - {{ $reference_names[$i] }} | - @endif - @endfor - @endif -
    -
    -
    - {{ Form::select('primary_diagnosis', $diagnoses, $existing_maternity_inpatient_data->primary_diagnosis, ['id' => 'primary_diagnosis', 'class' => 'form-control col-sm-12 compulsory primaryDiagnosis', 'required']) }} -
    -
    -
    - {{ isset($existing_maternity_inpatient_data->primary_diagnosis) ? $diagnoses_all->firstWhere('id', $existing_maternity_inpatient_data->primary_diagnosis)->prompts : '' }}  -
    -
    -
    - @if (!is_null($existing_maternity_inpatient_data->primary_diagnosis)) - @php - $reference_names = explode( - ',', - get_name( - $existing_maternity_inpatient_data->primary_diagnosis, - 'id', - 'reference_names', - 'diagnoses', - ), - ); - $reference_areas = explode( - ',', - get_name( - $existing_maternity_inpatient_data->primary_diagnosis, - 'id', - 'reference_areas', - 'diagnoses', - ), - ); - @endphp - @for ($i = 0; $i < count($reference_areas); $i++) - @if (isset($reference_areas[$i]) && isset($reference_names[$i])) - - {{ $reference_names[$i] }} | - @endif - @endfor - @endif -
    -
    - {{ __('consultations.add_new_diagnosis') }} -
    -
    -
    -
    -
    - - {{-- other diagnoses --}} -
    -
    -
    -
    - - - - - - - - - - - - @if (check_if_episode_is_a_followup($episode->id) && !is_null($parent_consultation_details)) - @php - $parent_consultation_other_diagnoses = unserialize( - $parent_consultation_details->other_diagnoses, - ); - @endphp - - @if (!empty($parent_consultation_other_diagnoses) && $parent_consultation_other_diagnoses[0] != '') - @foreach ($parent_consultation_other_diagnoses as $diagnosis) - @if ($diagnosis != '') - - - - - - @endif - @endforeach - @endif - @endif - - - @php - $other_diagnoses = unserialize( - $existing_maternity_inpatient_data->other_diagnoses, - ); - @endphp - - @if (empty($other_diagnoses)) - - - - - - - @else - @foreach ($other_diagnoses as $diagnosis) - @if ($diagnosis != '') - - - - - - - @endif - @endforeach - - - - - - - @endif - -
    #{{ __('consultations.OTHER_DIAGNOSIS') }}{{ __('consultations.PROMPT') }}{{ __('consultations.REFERENCES') }}
    -

    {{ $diagnoses[$diagnosis] }}
    (As diagnosed on - {{ streamline_date($parent_episode_details->created_at) }})
    -

    -
    -
    - {{ is_object($diagnoses_all->firstWhere('id', $diagnosis)) ? $diagnoses_all->firstWhere('id', $diagnosis)->prompts : '' }}  -
    -
    -
    - @if (!is_null($existing_maternity_inpatient_data->primary_diagnosis)) - @php - $reference_names = explode( - ',', - get_name( - $parent_consultation_details->primary_diagnosis, - 'id', - 'reference_names', - 'diagnoses', - ), - ); - $reference_areas = explode( - ',', - get_name( - $parent_consultation_details->primary_diagnosis, - 'id', - 'reference_areas', - 'diagnoses', - ), - ); - @endphp - @for ($i = 0; $i < count($reference_areas); $i++) - @if (isset($reference_areas[$i]) && isset($reference_names[$i])) - - {{ $reference_names[$i] }} - | - @endif - @endfor - @endif -
    -
    - {{ Form::select('other_diagnosis[]', $diagnoses, '', ['class' => 'sec_d form-control col-sm-12 compulsory']) }} - -
    -  
    -
    -
    -   -
    -
    - - {{ Form::select('other_diagnosis[]', $diagnoses, $diagnosis, ['class' => 'sec_d form-control col-sm-12 compulsory']) }} - -
    - {{ is_object($diagnoses_all->firstWhere('id', $diagnosis)) ? $diagnoses_all->firstWhere('id', $diagnosis)->prompts : '' }}  -
    -
    -
    - {{ is_object($diagnoses_all->firstWhere('id', $diagnosis)) ? $diagnoses_all->firstWhere('id', $diagnosis)->reference_names : '' }}  -
    -
    - {{ Form::select('other_diagnosis[]', $diagnoses, '', ['class' => 'sec_d form-control col-sm-12']) }} - -
    -   -
    -
    -
    -   -
    -
    -
    - {{ __('consultations.add_row') }} - {{ __('consultations.delete_row') }} -
    -
    -
    -
    - - {{-- symptoms sidebar --}} -
    -
    -
    - -
    -
    -
    -
    - - - - - - - - - @if ($triage) - @php - $symptoms_explode = - explode(',', $triage->symptoms) ?? ''; - $duration_explode = explode( - ',', - $triage->symptom_duration ?? '', - ); - @endphp - @for ($i = 0; $i < count($symptoms_explode); $i++) - - - - - @endfor - @else - - - - @endif - -
    {{ __('inpatient.symptoms') }}{{ __('inpatient.duration') }}
    {{ $symptoms[$symptoms_explode[$i]] ?? '' }}{{ isset($duration_explode[$i]) ? $duration_explode[$i] : '' }} -
    - {{ __('inpatient.no_symptoms_triage') }} -
    -
    -
    -
    -
    -
    - - - - - - - - - - @if (count($opd_investigations) > 0) - @for ($i = 0; $i < count($opd_investigations['name']); $i++) - - - - - - @endfor - @else - - - - @endif - -
    {{ __('inpatient.name') }}{{ __('inpatient.value') }}{{ __('inpatient.comment') }}
    {{ $opd_investigations['name'][$i] }}{{ $opd_investigations['value'][$i] }}{{ $opd_investigations['comment'][$i] }}
    {{ __('inpatient.no_opd_invs') }}
    -
    -
    -
    -
    -
    - - - - - - - - - - @if (count($ward_investigations) > 0) - @for ($i = 0; $i < count($ward_investigations['name']); $i++) - - - - - - @endfor - @else - - - - @endif - -
    {{ __('inpatient.name') }}{{ __('inpatient.value') }}{{ __('inpatient.comment') }}
    {{ $ward_investigations['name'][$i] }}{{ $ward_investigations['value'][$i] }}{{ $ward_investigations['comment'][$i] }}
    {{ __('inpatient.no_ward_invs') }}
    -
    -
    -
    -
    -
    -
    -
    - > {{ __('inpatient.historical_investigations') }} - > - {{ __('inpatient.order_investigations') }} -
    -
    - - {{-- end of other diagnosea --}} - -
    - - {{-- gravida , para , abortions --}} - @include('maternity::maternity.includes_update.update_gravida_para_abortions') -
    - - {{-- past obstetric history --}} - @php - $obs_history_counter = 1; - @endphp - -
    -
    -

    {{ __('antenatal.past_obstetric_history') }}

    -
    - -
    -
    - -
    - -
    - @if (!empty($obstetric_history_details)) - @foreach ($obstetric_history_details as $t => $obstetric_history) - @php - $children = []; - if (!empty($obstetric_history->children)) { - $children = json_decode($obstetric_history->children); - } - @endphp - {{ Form::hidden('pregnancy_' . $obs_history_counter . '_id', $obstetric_history->id, ['id' => 'pregnancy_' . $obs_history_counter . '_id']) }} - {{ Form::hidden('delete_pregnancy_' . $obs_history_counter . '_id', '', ['id' => 'delete_pregnancy_' . $obs_history_counter . '_id']) }} -
    -
    - -
    - {{ Form::label('obstetric_date', __('antenatal.date')) }} -
    - {{ Form::text('pregnancy_' . $obs_history_counter . '_obstetric_date', Carbon\Carbon::parse($obstetric_history->obstetric_date)->format('d/m/Y'), ['class' => 'form-control obstetric_date', 'readonly', 'id' => 'datepicker-autoclose1']) }} - -
    -
    -
    -
    - {{ Form::label('gestation', __('antenatal.gestation')) }} -
    - gestation }}> -
    -
    -
    -
    - {{ Form::label('outcome', __('antenatal.outcome')) }} -
    - {{ Form::select('pregnancy_' . $obs_history_counter . '_obstetric_outcome', $anc_outcomes, $obstetric_history->outcome, ['class' => 'form-control col-sm-12', 'id' => 'pregnancy_' . $obs_history_counter . '_obstetric_outcome', 'onchange' => 'abortion_outcome(this.id)']) }} -
    -
    - @if (!empty($obstetric_history->abortion_outcome)) -
    - {{ Form::label('pregnancy_' . $obs_history_counter . '_abortion_outcome', __('antenatal.abortion_date')) }} -
    - {{ Form::select('pregnancy_' . $obs_history_counter . '_abortion_outcome', ['' => __('antenatal.select'), '1' => __('antenatal.below_12'), '2' => __('antenatal.12_and_above')], $obstetric_history->abortion_outcome, ['class' => 'form-control col-sm-12', 'id' => 'pregnancy_' . $obs_history_counter . '_abortion_outcome']) }} -
    -
    -
    - @else - - @endif - @if (!empty($obstetric_history->stillbirth_type)) -
    - {{ Form::label('pregnancy_' . $obs_history_counter . '_stillbirth_type', __('antenatal.stillbirth_type')) }} -
    - {{ Form::select('pregnancy_' . $obs_history_counter . '_stillbirth_type', ['' => __('antenatal.select'), '1' => __('antenatal.antepartum'), '2' => __('antenatal.intrapartum')], $obstetric_history->stillbirth_type, ['class' => 'form-control col-sm-12', 'id' => 'pregnancy_' . $obs_history_counter . '_stillbirth_type']) }} -
    -
    -
    - @else - - @endif -
    -
    - {{ Form::label('delivery_type', __('antenatal.delivery_type')) }} -
    - {{ Form::select('pregnancy_' . $obs_history_counter . '_delivery_type', ['' => __('antenatal.select'), '1' => __('antenatal.vaginal_delivery'), '2' => __('antenatal.vacuum_delivery'), '3' => __('antenatal.forceps_delivery'), '4' => __('antenatal.c_section'), '5' => __('antenatal.vbac')], $obstetric_history->delivery_type, ['class' => 'form-control col-sm-12'. ' clear_input_' . $obs_history_counter, 'id' => 'pregnancy_' . $obs_history_counter . '_delivery_type']) }} -
    -
    -
    -
    - {{ Form::label('pregnancy_complication', __('antenatal.pregnancy_complications')) }} -
    - {{ Form::select('pregnancy_1_pregnancy_complication', ['' => __('antenatal.select'), '1' => __('antenatal.retained_placenta'), '2' => __('antenatal.eclampsia'), '3' => __('antenatal.pph')], $obstetric_history->pregnancy_complication, ['class' => 'form-control col-sm-12 ', 'id' => 'pregnancy_1_pregnancy_complication'. ' clear_input_' . $obs_history_counter]) }} -
    -
    -
    -
    - {{ Form::label('puerperium', __('antenatal.puerperium')) }} -
    - -
    -
    -
    - @if ($t > 0) -
    - @endif -
    - - @if (!empty($children)) -
    -

    -

    - {{ count($children) == 1 ? "Child's Details" : "Children's Details" }} -
    -

    - - - - - - - - - - - - @foreach ($children as $key => $child) - - - - - - - - - - @endforeach - -
    {{ __('patients.full_names') }}{{ __('patients.gender') }}{{ __('patients.patient_number') }}{{ __('antenatal.child_birth_weight') }}{{ __('antenatal.child_immunisation_status') }}{{ __('antenatal.health_condition') }}#
    - {{ Form::text('pregnancy_' . $obs_history_counter . '_child_name[]', $child->name, ['class' => 'form-control compulsory child_details_div_' . $obs_history_counter . ' clear_input_' . $obs_history_counter, 'id' => 'pregnancy_' . $obs_history_counter . '_child_name_' . $key] - ) }} - - - - {{ Form::number('pregnancy_' . $obs_history_counter . '_child_patient_number[]', $child->patient_number, ['class' => 'form-control child_details_div_' . $obs_history_counter . ' clear_input_' . $obs_history_counter, 'step' => '1']) }} - - {{ Form::number('pregnancy_' . $obs_history_counter . '_child_birth_weight[]', $child->birth_weight, ['class' => 'form-control child_details_div_1' . ' clear_input_' . $obs_history_counter, 'step' => '0.1']) }} - - {{ Form::select('pregnancy_' . $obs_history_counter . '_child_immunisation_status[]', ['' => __('antenatal.select'), '1' => __('antenatal.not_started'), '2' => __('antenatal.ongoing'), '3' => __('antenatal.completed')], $child->immunisation_status, ['class' => 'form-control child_details_div_' . $obs_history_counter . ' clear_input_' . $obs_history_counter]) }} - - {{ Form::textarea('pregnancy_' . $obs_history_counter . '_child_health_condition[]', $child->health_condition, ['class' => 'form-control clear_input_' . $obs_history_counter, 'id' => 'pregnancy_' . $obs_history_counter . '_health_condition', 'rows' => '3'] -) }} - - @if ($key > 0) - - @endif -
    - {{ __('antenatal.add_child_row') }} -
    - @else - - @endif -
    -
    - @php $obs_history_counter++; @endphp - @endforeach - @else -
    -
    -
    - {{ Form::label('obstetric_date', __('antenatal.date')) }} -
    - {{ Form::text('pregnancy_1_obstetric_date', '', ['class' => 'form-control obstetric_date', 'readonly', 'id' => 'datepicker-autoclose1']) }} - -
    -
    -
    -
    - {{ Form::label('gestation', __('antenatal.gestation')) }} -
    - -
    -
    -
    -
    - {{ Form::label('outcome', __('antenatal.outcome')) }} -
    - {{ Form::select('pregnancy_1_obstetric_outcome', $anc_outcomes, '', ['class' => 'form-control col-sm-12 select_to_clear_other_fields', 'id' => '', 'onchange' => 'abortion_outcome(this.id)']) }} -
    -
    - - -
    - - - -
    - -
    - @endif -
    - -
    -
    - - - - {{-- delivery plan --}} - @include('maternity::maternity.includes_update.update_delivery_plan') - - {{-- mothers history --}} - @include('maternity::maternity.includes_update.update_mothers_history') - - {{-- surgical history --}} - @include('maternity::maternity.includes_update.update_surgical_history') - - {{-- blood transfusion --}} - @include('maternity::maternity.includes_update.update_blood_transfusion') - - {{-- pelvic examination and assesement --}} - @include('maternity::maternity.includes_update.update_pelvic_examination_and_assessment') - - {{-- this pregnancy --}} - @include('maternity::maternity.includes_update.update_this_pregnancy') - - - - {{--
    -
    - {{ Form::button(__('maternity.update_form'), ['type' => 'submit', 'value' => 'submit_maternity_admission', 'name' => 'submit-btn', 'id' => 'submit-btn', 'class' => 'btn btn-success', 'style' => 'float:right;']) }} -
    -
    --}} - -
    -
    -
    -
    -
    -
    - - {{ Form::button(__('maternity.update_and_complete_form'), ['type' => 'submit', 'value' => 'submit_maternity_admission', 'name' => 'submit-btn', 'id' => 'submit-btn', 'class' => 'btn btn-success']) }} - -
    -
    -
    - -
    -
    - {{ Form::hidden('pregnancy_number', 0, ['id' => 'pregnancy_number']) }} - {{ Form::close() }} -
    -
    -
    - - - - -@endsection - -{{-- scrips --}} -@push('scripts') - - - - - - - {{-- add and delete child row --}} - - - {{-- family planningmethods searchable select2 --}} - - - {{-- family planning methods --}} - - - {{-- additional_text_box_inputs file --}} - {{-- --}} - - - {{-- previous consultations script with expandable row of details --}} - {{-- --}} - - - - - {{-- display alert if hiv_date is greater or equal to 3 months ago --}} - - - - {{-- --}} - - - - - - - - - {{-- updated scripts --}} - - - - {{-- add and delete uterus operations other facilities section --}} - - - - {{-- add and delete operations from other facilities section --}} - - - - - - {{-- display section of previous consultation details on button click --}} - {{-- --}} - - {{-- pick previous admissions // pick corresponding css --}} - - - - {{-- show different fields on outcome select --}} - - - - {{-- operations other facilities , new code --}} - - - - - {{-- w: add blood transfusion row --}} - - - - -{{-- delete blood transfusion : w --}} - -@endpush diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/edit_delivery_record.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/edit_delivery_record.blade.php deleted file mode 100644 index 6fa0b0d1..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/edit_delivery_record.blade.php +++ /dev/null @@ -1,408 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('maternity.delivery_record') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    -
    -
    - {{ __('maternity.delivery_for_episode_started') }} : {{ streamline_date(get_name($episode_id, "id", "created_at", "patient_episodes")) }}

    - {{ Form::model($delivery_record, ['method' => 'PUT', 'route' => ['maternity.delivery_record_update',$delivery_record], 'data-toggle' => 'validator']) }} - {{ Form::hidden('patient_id', $patient_id) }} - {{ Form::hidden('episode_id', $episode_id) }} -
    -
    - - - - - - - - - - - - - - - - -
    {{ __('maternity.delivery') }}
    - {{ Form::select('foetal_number', ['1' => __('maternity.singleton'),'2' => __('maternity.twins'),'3' => __('maternity.triplets')], $delivery_record->foetal_number, ['class' => 'form-control compulsory', 'required', 'id' => 'foetal_number']) }} -
    -
    -
    -
    -
    -
    - @include('maternity::maternity.delivery_form_edit') -
    -
    -
    -
    -
    -
    -
    -
    -
    - - -
    -
    -

    - (mls) -
    -
    - - -
    -
    -
    -
    -
    -
    -
    -
    -
    - - {{ __('maternity.vaginal_delivery') }} -
    - -
    - - {{ __('maternity.delayed_cord_clamping') }} -
    -
    -
    - -
    -
    -

    {{ __('maternity.baby') }}

    -
    - -
      -
    • {{ __('maternity.clear_airway') }}
    • -
    • {{ __('maternity.clamp_cut_cord') }}
    • -
    • {{ __('maternity.ventilate_bag_mask') }}
    • -
    • {{ __('maternity.shout_for_help') }}
    • -
    - - {{ __('maternity.meconium_protocol') }} - -
    -
    -
    -
    -
    -
    -
    - - - - - - - - - - -
    {{ __('maternity.baby') }}
    -
    -
    -
    -
    - @include('maternity::maternity.baby_form_edit') -
    -
    - -
    - @include('maternity::maternity.fresh_or_macerated_baby_form_edit') - -
    -
    -
    -
    - -
    -
    -
    -
    - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/fresh_or_macerated_baby_form.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/fresh_or_macerated_baby_form.blade.php deleted file mode 100755 index 973915b3..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/fresh_or_macerated_baby_form.blade.php +++ /dev/null @@ -1,820 +0,0 @@ - - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('maternity.baby') }} 1
    - -
    - -
    - -
    - {{ Form::select('age_established_spontaneous_reg_respiration[]',$respiration_minutes,'',['class'=>'form-control col-sm-12']) }} -
    - -
    - -
    - -
    -
    -
    -
    - {{ __('maternity.no') }} -
    -
    - {{ __('maternity.yes') }} -
    -
    -
    -
    - - {{ Form::select('moved_to[]',$wards,'',['class'=>'form-control col-sm-12 ward']) }} - {{ __('maternity.add_new_ward') }} - -
    -
    -
    -
    - -
    - - - -
    - - - - - -
    - - - - - - \ No newline at end of file diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/fresh_or_macerated_baby_form_edit.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/fresh_or_macerated_baby_form_edit.blade.php deleted file mode 100644 index af154835..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/fresh_or_macerated_baby_form_edit.blade.php +++ /dev/null @@ -1,885 +0,0 @@ - - -
    -
    - - - - - - - - - - - @php - $apgar_score_at_minute_1_array = explode(",", $delivery_record->apgar_score_at_minute_1); - $first_agpar_score_at_1_min = $apgar_score_at_minute_1_array[0]; - $second_agpar_score_at_1_min = $apgar_score_at_minute_1_array[1]; - $third_agpar_score_at_1_min = $apgar_score_at_minute_1_array[2]; - - $apgar_score_at_minute_5_array = explode(",", $delivery_record->apgar_score_at_minute_5); - $first_agpar_score_at_5_min = $apgar_score_at_minute_5_array[0]; - $second_agpar_score_at_5_min = $apgar_score_at_minute_5_array[1]; - $third_agpar_score_at_5_min = $apgar_score_at_minute_5_array[2]; - - $age_established_spontaneous_reg_respiration_array = explode(",", $delivery_record->age_established_spontaneous_reg_respiration); - $first_age_established_spontaneous_reg_respiration = $age_established_spontaneous_reg_respiration_array[0]; - $second_age_established_spontaneous_reg_respiration = $age_established_spontaneous_reg_respiration_array[1]; - $third_age_established_spontaneous_reg_respiration = $age_established_spontaneous_reg_respiration_array[2]; - - $resuscitation_airway_array = explode(",", $delivery_record->resuscitation_airway); - $first_resuscitation_airway = $resuscitation_airway_array[0]; - $second_resuscitation_airway = $resuscitation_airway_array[1]; - $third_resuscitation_airway = $resuscitation_airway_array[2]; - - $resuscitation_suction_array = explode(",", $delivery_record->resuscitation_suction); - $first_resuscitation_suction = $resuscitation_suction_array[0]; - $second_resuscitation_suction = $resuscitation_suction_array[1]; - $third_resuscitation_suction = $resuscitation_suction_array[2]; - - $advanced_resuscitation_drugs_array = explode(",", $delivery_record->advanced_resuscitation_drugs); - $first_advanced_resuscitation_drugs = $advanced_resuscitation_drugs_array[0]; - $second_advanced_resuscitation_drugs = $advanced_resuscitation_drugs_array[1]; - $third_advanced_resuscitation_drugs = $advanced_resuscitation_drugs_array[2]; - - $advanced_resuscitation_ett_array = explode(",", $delivery_record->advanced_resuscitation_ett); - $first_advanced_resuscitation_ett = $advanced_resuscitation_ett_array[0]; - $second_advanced_resuscitation_ett = $advanced_resuscitation_ett_array[1]; - $third_advanced_resuscitation_ett = $advanced_resuscitation_ett_array[2]; - - $advanced_resuscitation_ecm_array = explode(",", $delivery_record->advanced_resuscitation_ecm); - $first_advanced_resuscitation_ecm = $advanced_resuscitation_ecm_array[0]; - $second_advanced_resuscitation_ecm = $advanced_resuscitation_ecm_array[1]; - $third_advanced_resuscitation_ecm = $advanced_resuscitation_ecm_array[2]; - @endphp - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @php - $im_vitamin_given_array = explode(",", $delivery_record->IM_vitamin_k_given); - $first_im_vitamin_given = $im_vitamin_given_array[0]; - $second_im_vitamin_given = $im_vitamin_given_array[0]; - $third_im_vitamin_given = $im_vitamin_given_array[0]; - @endphp - - - - - - - @php - $moved_to_array = explode(",", $delivery_record->moved_to); - $first_moved_to = $moved_to_array[0]; - $second_moved_to = $moved_to_array[0]; - $third_moved_to = $moved_to_array[0]; - @endphp - - - - - - -
    {{ __('maternity.baby') }} 1
    - -
    - -
    - -
    - {{ Form::select('age_established_spontaneous_reg_respiration[]', $respiration_minutes, $first_age_established_spontaneous_reg_respiration, ['class'=>'form-control col-sm-12']) }} -
    - -
    - -
    - -
    -
    -
    -
    - {{ __('maternity.no') }} -
    -
    - {{ __('maternity.yes') }} -
    -
    -
    -
    - - {{ Form::select('moved_to[]',$wards,$first_moved_to,['class'=>'form-control col-sm-12 ward']) }} - {{ __('maternity.add_new_ward') }} - -
    -
    -
    -
    - -
    - - - -
    - - - - - -
    - - - - - - \ No newline at end of file diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/blood_transfusion.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/blood_transfusion.blade.php deleted file mode 100644 index c1405d88..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/blood_transfusion.blade.php +++ /dev/null @@ -1,503 +0,0 @@ -{{-- blood transfusion --}} -
    - - - {{--
    --}} - {{-- blood transfusion --}} -
    -

    {{ __('antenatal.blood_transfusion') }}

    -
    -
    -
    - surgical_history == '2') - id="show_blood_transfusion_input" value="1">  - -
    - - -
    -
    - - -
    -
    - {{-- why --}} - - -
    - -
    -
    - - -
    - - - - @php - $fracture_details = !empty($latest_existing_antenatal_mother_history->fracture_details)? - json_decode($latest_existing_antenatal_mother_history->fracture_details, true):[]; - $pelvis_display = (!empty($fracture_details[0]['date']) || !empty($fracture_details[0]['details']))? - '':'display:none;'; - $spine_display = (!empty($fracture_details[1]['date']) || !empty($fracture_details[1]['details']))? - '':'display:none;'; - $femur_display = (!empty($fracture_details[2]['date']) || !empty($fracture_details[2]['details']))? - '':'display:none;'; - @endphp - {{-- fractures --}} -
    -

    {{ __('antenatal.fractures') }}

    -
    - -
    - {{-- pelvis --}} - -
    -
    - fractures)) ? 'checked' - : '' }} - value="1" @if (is_array(old('fractures')) && in_array('1', old('fractures'))) checked - @endif>  - - -

    - - {{-- add pelvis fracture inputs --}} -
    -
    - - -
    - - -
    - - -
    -
    - - {{-- spine --}} -
    -
    - fractures)) ? 'checked' : - '' }} - value="2" @if (is_array(old('fractures')) && in_array('2', old('fractures'))) checked - @endif>  - - -

    - - {{-- add spine fracture inputs --}} -
    -
    - - -
    - - -
    - - -
    -
    - - - {{-- femur --}} -
    -
    - fractures)) ? 'checked' : - '' }} - value="3" @if (is_array(old('fractures')) && in_array('3', old('fractures'))) checked - @endif>  - - -

    - - {{-- add femur fracture inputs --}} -
    -
    - - -
    - - - -
    - - -
    -
    - - - {{-- other fractures --}} -
    -
    -   - - -

    - - {{-- add other_fractures fracture inputs --}} - - - -
    -
    - - - - -
    - -
    -
    -
    - -
    -
    - - {{ Form::label('blood_group', __('maternity.blood_group')) }} - {{ Form::select('blood_group', $blood_groups, $existing_blood_transfusion->blood_group_id ?? '', ['class' => - 'form-control col-sm-12']) }} -
    - - - - {{--
    --}} - -
    - - {{-- anc_v --}} - {{-- {{ __('maternity.blood_transfusion') }} -
    - - - - - - - - - - @foreach ($anc_blood_transfusion as $blood_transfusion) - - - - - - - @endforeach - - - - - - - -
    #{{ __('maternity.date') }}{{ __('maternity.number_of_units') }}{{ __('maternity.comments') }}
    {{ streamline_date($blood_transfusion->transfusion_date) }}{{ $blood_transfusion->number_of_units }}{{ $blood_transfusion->comments }}
    -
    -
    - {{ Form::text('transfusion_date[]', '', ['class' => 'form-control transfusion-date', - 'readonly']) }} - -
    -
    -
    -
    -
    - - {{ __('maternity.add_row') }} - {{ - __('maternity.delete_row') }} -
    --}} - - {{-- updated blood transfusion --}} - {{ __('maternity.blood_transfusion') }} - - - - - - - - - - - - @foreach ($anc_blood_transfusion as $blood_transfusion) - - - - - - - @endforeach - - - - - - - -
    {{ __('maternity.date') }}{{ __('maternity.number_of_units') }}{{ __('maternity.comments') }}
    {{ streamline_date($blood_transfusion->transfusion_date) }}{{ $blood_transfusion->number_of_units }}{{ $blood_transfusion->comments }}
    -
    -
    - {{ Form::text('transfusion_date[]', '', ['class' => 'form-control transfusion-date', - 'readonly', 'id' => 'transfusion_date_1']) }} - -
    -
    -
    -
    -
    - - - -
    - - - - - - - -
    -
    -
    -

    - {{ __('maternity.vdrl_status') }}

    - {{ __('maternity.hiv_status') }} -
    -
    -
    -
    -
    - {{ Form::label('result', __('maternity.result')) }} -
    - {{ Form::select('hiv_result', $hiv_statuses, - $latest_existing_maternity_inpatient_data->hiv_result_usaid ?? - $latest_existing_anc_hiv_info->hiv_result ?? '', ['class' => 'form-control - col-sm-12', 'id' => 'hiv_result']) }} -
    -
    - -
    -
    - {{ Form::label('date', __('maternity.date')) }} - {{-- - Carbon\Carbon::parse($latest_existing_maternity_inpatient_data->vdrl_date)->format('d/m/Y') - ?? '' --}} -
    - {{-- {{ Form::text( - 'vdrl_date', - isset($latest_existing_maternity_inpatient_data->vdrl_date) ? - Carbon\Carbon::parse($latest_existing_maternity_inpatient_data->vdrl_date)->format('d/m/Y') - : '', - ['class' => 'form-control', 'readonly', 'id' => 'datepicker-autoclose3'], - ) }} --}} - - {{-- {{ Form::text( - 'vdrl_date', - Carbon\Carbon::parse($latest_existing_maternity_inpatient_data->vdrl_date)->format('d/m/Y') - ?? - Carbon\Carbon::parse($latest_existing_anc_hiv_info->vdrl_date)->format('d/m/Y') ?? '' - , - ['class' => 'form-control', 'readonly', 'id' => 'datepicker-autoclose3'], - ) }} --}} - - {{ Form::text( - 'vdrl_date', - isset($latest_existing_maternity_inpatient_data->vdrl_date) - ? - Carbon\Carbon::parse($latest_existing_maternity_inpatient_data->vdrl_date)->format('d/m/Y') - : (isset($latest_existing_anc_hiv_info->vdrl_date) - ? Carbon\Carbon::parse($latest_existing_anc_hiv_info->vdrl_date)->format('d/m/Y') - : ''), - ['class' => 'form-control', 'readonly', 'id' => 'datepicker-autoclose3'] - ) }} - - - - -
    -
    -
    - - {{-- {{ Form::text('hiv_date', - isset($latest_existing_maternity_inpatient_data->hiv_date) ? - Carbon\Carbon::parse($latest_existing_maternity_inpatient_data->hiv_date)->format('d/m/Y') - : '', ['class' => 'form-control datePicker', 'readonly', 'id' => - 'datepicker-autoclose4']) }} --}} - - - - {{ Form::text('hiv_date', - isset($latest_existing_maternity_inpatient_data->hiv_date) - ? - Carbon\Carbon::parse($latest_existing_maternity_inpatient_data->hiv_date)->format('d/m/Y') - : (isset($latest_existing_anc_hiv_info->hiv_date) - ? Carbon\Carbon::parse($latest_existing_anc_hiv_info->hiv_date)->format('d/m/Y') - : ''), - ['class' => 'form-control datePicker', 'readonly', 'id' => - 'datepicker-autoclose4']) }} - - - -
    -
    -
    -
    - -
    -
    - {{ Form::label('location', __('maternity.location')) }} -
    - -
    -
    -
    -
    - - - @php - // $existing_hiv_date = null; - $existing_hiv_date = isset($latest_existing_maternity_inpatient_data->hiv_date) - ? Carbon\Carbon::parse($latest_existing_maternity_inpatient_data->hiv_date) - : ''; - // $existing_hiv_date = \Carbon\Carbon::parse($latest_existing_maternity_inpatient_data->hiv_date) ; - $currentDate = \Carbon\Carbon::now(); - - $hiv_date_exceeds_three_months = ''; - if (isset($latest_existing_maternity_inpatient_data->hiv_date)) { - if ($existing_hiv_date->diffInMonths($currentDate) >= 3) { - $hiv_date_exceeds_three_months = $existing_hiv_date; - } - } else { - } - - @endphp - - - -
    - - @if (isset($latest_existing_maternity_inpatient_data->hiv_date)) - - @if ($existing_hiv_date->diffInMonths($currentDate) >= 3) - {{--
    IF NOT HAD HIV TEST WITHIN PAST 3 MONTHS SEND TEST SAMPLE -
    --}} - @endif - @else - @endif - -
    - -
    -
    - -
    -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/delivery_plan.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/delivery_plan.blade.php deleted file mode 100644 index 0544965a..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/delivery_plan.blade.php +++ /dev/null @@ -1,249 +0,0 @@ -{{-- DELIVERY PLAN INCLUDE FILE --}} - -
    -
    - {{ __('maternity.delivery_plan') }}

    -
    - -
    - -
    - -
    - {{-- person you live with --}} - -
    - -
    - -
    -
    - - {{-- transport facility --}} -
    - - - - -
    - - -
    - - -
    - {{-- person to accompany you --}} -
    - -
    - -
    -
    - - {{-- person to look after home --}} -
    - -
    - -
    -
    - - {{-- mother and partner screened for --}} - -
    - {{ Form::label('mother_partner_screened_for', __('maternity.mother_partner_screened_for')) }}
    - - - - - - - - - - - - - - - - - - - -
    - health_screening ?? '')) ? - 'checked' : '' }} - id="1" value="1" @if (is_array(old('mother_partner_screened_for')) && in_array('1', - old('mother_partner_screened_for'))) checked @endif> - - - health_screening ?? '')) ? - 'checked' : '' }} - id="2" value="2" @if (is_array(old('mother_partner_screened_for')) && in_array('2', - old('mother_partner_screened_for'))) checked @endif> -   - -
    - health_screening ?? '')) ? - 'checked' : '' }} - id="3" value="3" @if (is_array(old('mother_partner_screened_for')) && in_array('3', - old('mother_partner_screened_for'))) checked @endif> -   - - - health_screening ?? '')) ? - 'checked' : '' }} - id="4" value="4" @if (is_array(old('mother_partner_screened_for')) && in_array('4', - old('mother_partner_screened_for'))) checked @endif>   - -
    -
    - - {{-- family planning before next pregnancy --}} -
    - -
    - -
    -
    - -
    - -
    -
    - -
    - -
    -
    - -
    -

    - - - -
    - -
    - -
    - -
    -
    - - {{-- after birth disposal --}} -
    - - - - -
    - -
    - -
    - - -
    -
    - - - -
    - -{{-- END OF DELIVERY PLAN INCLUDE FILE --}} \ No newline at end of file diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/diagnosis.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/diagnosis.blade.php deleted file mode 100644 index ccdf60c9..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/diagnosis.blade.php +++ /dev/null @@ -1,187 +0,0 @@ -{{-- primary diagnosis and other diagnosis --}} - -
    -
    -
    - - - - - - - - - - - - - - - - - - -
    #{{ __('inpatient.primary_diagnosis') }}{{ __('inpatient.prompt') }}{{ __('inpatient.references') }}
    -
    - {{ Form::select('primary_diagnosis', $diagnoses, '', ['id' => 'primary_diagnosis', 'class' => 'form-control col-sm-12 compulsory', 'required']) }} -
    -
    -
     
    -
    -
     
    -
    -
    -
    - - - - - - - - - - - - - - - - - -
    #{{ __('inpatient.other_diagnosis') }}{{ __('inpatient.prompt') }}{{ __('inpatient.references') }}
    - {{ Form::select('other_diagnosis[]', $diagnoses, '', ['class' => 'form-control col-sm-12 sec_d', 'id' => 'other_diagnosis']) }} - -
     
    -
    -
     
    -
    -
    - {{ __('inpatient.add_row') }} - {{ __('inpatient.delete_row') }} -
    -
    -
    -
    - -
    -
    -
    -
    - - - - - - - - - @if ($triage) - @php - $symptoms_explode = explode(',', $triage->symptoms); - $duration_explode = explode(',', $triage->symptom_duration); - @endphp - @for ($i = 0; $i < count($symptoms_explode); $i++) - - - - - @endfor - @else - - - - @endif - -
    {{ __('inpatient.symptoms') }}{{ __('inpatient.duration') }}
    {{ $symptoms[$symptoms_explode[$i]] }}{{ isset($duration_explode[$i]) ? $duration_explode[$i] : '' }} -
    {{ __('inpatient.no_symptoms_triage') }} -
    -
    -
    -
    -
    -
    - - - - - - - - - - @if (count($opd_investigations) > 0) - @for ($i = 0; $i < count($opd_investigations['name']); $i++) - - - - - - @endfor - @else - - - - @endif - -
    {{ __('inpatient.name') }}{{ __('inpatient.value') }}{{ __('inpatient.comment') }}
    {{ $opd_investigations['name'][$i] }}{{ $opd_investigations['value'][$i] }}{{ $opd_investigations['comment'][$i] }}
    {{ __('inpatient.no_opd_invs') }}
    -
    -
    -
    -
    -
    - - - - - - - - - - @if (count($ward_investigations) > 0) - @for ($i = 0; $i < count($ward_investigations['name']); $i++) - - - - - - @endfor - @else - - - - @endif - -
    {{ __('inpatient.name') }}{{ __('inpatient.value') }}{{ __('inpatient.comment') }}
    {{ $ward_investigations['name'][$i] }}{{ $ward_investigations['value'][$i] }}{{ $ward_investigations['comment'][$i] }}
    {{ __('inpatient.no_ward_invs') }}
    -
    -
    -
    -
    -
    -
    -
    - > {{ __('inpatient.historical_investigations') }} - > - {{ __('inpatient.order_investigations') }} -
    -
    -
    -{{-- end diagnosis --}} \ No newline at end of file diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/gravida_para_abortions.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/gravida_para_abortions.blade.php deleted file mode 100644 index e27bfab8..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/gravida_para_abortions.blade.php +++ /dev/null @@ -1,49 +0,0 @@ -{{-- gravida fields and other related fields --}} - -
    -
    - {{ Form::label('gravida', __('maternity.gravida')) }} - - -
    -
    - {{ Form::label('para', __('maternity.para')) }} - -
    - -
    - {{ Form::label('abortion', __('maternity.abortion')) }} - -
    - -
    - {{ Form::label('ectopic_pregnancies', __('maternity.ectopic_pregnancies')) }} - -
    - -
    - {{ Form::label('postpartum', __('maternity.post_partum')) }} -
    - - postpartum)) {{ $anc_registration->postpartum == '1' ? 'checked' : '' }} @endif --}} - {{-- @checked($anc_registration->postpartum == 1 ) --}} - @checked(optional($anc_registration)->postpartum == 1 ? true : false) - value="1"> -   -    - - postpartum)) {{ $anc_registration->postpartum == '0' ? 'checked' : '' }} @endif --}} - {{-- @checked($anc_registration->postpartum == 0 ) --}} - @checked(optional($anc_registration)->postpartum == 0 ? true : false) - value="0">    - - -
    -
    -
    diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/gynacology_history.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/gynacology_history.blade.php deleted file mode 100644 index 716bc587..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/gynacology_history.blade.php +++ /dev/null @@ -1,108 +0,0 @@ -{{-- Gynacology history --}} - - -
    -
    -

    {{ __('antenatal.gynacology_history') }}

    -
    -
    - - - - -
    -
    - {{-- {{ Form::label('surgical_history',__('antenatal.surgical_history')) }} --}} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - - - - {{-- add dilation and curettage date :input --}} - - - - - {{ Form::checkbox('obs_gyn[]', 2, false, ['id' => 'obs_gyn_ectopic_pregancy', 'class' => 'form-check-input']) }} - - - {{-- add ectopic pregnancy date :input --}} - - - - - -
    - - - - - - - - -
    - {{ Form::checkbox('obs_gyn[]', 3, false, ['id' => 'obs_gyn_pph', 'class' => 'form-check-input']) }} - - - {{ Form::checkbox('obs_gyn[]', 4, false, ['id' => 'obs_gyn_retained_placenta', 'class' => 'form-check-input']) }} - - - {{ Form::checkbox('obs_gyn[]', 4, false, ['id' => 'c_section', 'class' => 'form-check-input']) }} - -
    -
    - - - -
    - -
    diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/maternity_admission_details.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/maternity_admission_details.blade.php deleted file mode 100644 index 17f7e6b4..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/maternity_admission_details.blade.php +++ /dev/null @@ -1,1858 +0,0 @@ -{{-- gravida para abortions --}} -
    -
    -
    -
    - Overview of this pregnancy -
    - -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Gravida - @if (isset($maternity_admission_details->gravida)) - {{ $maternity_admission_details->gravida }} - @else - - @endif -
    Para - @if (isset($maternity_admission_details->para)) - {{ $maternity_admission_details->para }} - @else - - @endif -
    Abortion - @if (isset($maternity_admission_details->abortion)) - {{ $maternity_admission_details->abortion }} - @else - - @endif -
    Ectopic pregnancies - @if (isset($maternity_admission_details->ectopic_pregnancies)) - {{ $maternity_admission_details->ectopic_pregnancies }} - @else - - @endif -
    Post-partum - - {{-- @isset($maternity_admission_details->postpartum) --}} - @if ($maternity_admission_details->postpartum == '1') - Yes - @endif - @if ($maternity_admission_details->postpartum == '0') - No - @endif - @if ($maternity_admission_details->postpartum == '') - - @endif - {{-- @endisset --}} - - -
    LMP - @if (!empty($maternity_admission_details->lmp)) - {{ streamline_date($maternity_admission_details->lmp) }} - @else - - @endif -
    Accuracy - {{ isset($accuracies[$maternity_admission_details->accuracy]) ? $accuracies[$maternity_admission_details->accuracy] : '' }} -
    -
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('antenatal.woa_weeks') }} - - {{-- {!! $maternity_admission_details->weeks_of_amenorrhoea ?? '' !!} --}} -
    {!! $maternity_admission_details->weeks_of_amenorrhoea ?? '' !!}
    - - - {{-- @if (!empty($maternity_admission_details->weeks_of_amenorrhoea)) - {!! $maternity_admission_details->weeks_of_amenorrhoea !!} - @else - - @endif --}} -
    {{ __('maternity.edd') }} - @if (!empty($maternity_admission_details->edd)) - {{ streamline_date($maternity_admission_details->edd) }} - @else - - @endif -
    {{ __('maternity.us_scan_edd') }} - @if (!empty($maternity_admission_details->scan_edd)) - {{ streamline_date($maternity_admission_details->scan_edd) }} - @else - - @endif -
    Current Gestation from scan - @if (!empty($maternity_admission_details->gestation_from_scan)) - {{ $maternity_admission_details->gestation_from_scan }} - @else - - @endif -
    {{ __('maternity.referral_in_from') }} - {{ isset($referrals[$maternity_admission_details->referral_from]) ? $referrals[$maternity_admission_details->referral_from] : '' }} - -
    {{ __('maternity.progress') }} - {{ isset($maternity_progress[$maternity_admission_details->progress]) ? $maternity_progress[$maternity_admission_details->progress] : '' }} -
    -
    -
    -
    - -
    - -
    - - - -

    -
    - - - -
    - -{{-- past obstetrict history --}} -@if ($obstetric_history_details->count() > 0) -
    -
    -
    - -
    -
    -
    -
    - - - - - - - - - - - - - {{-- --}} - - - - - - - - - @foreach ($obstetric_history_details as $obstetric_history) - - @php - $children = []; - if (!empty($obstetric_history->children)) { - $children = json_decode( - $obstetric_history->children, - ); - } - @endphp - - - - - - - - - - - - @forelse($children as $key => $child) - - - - - - - @empty - {{-- - - - - --}} - @endforelse - - {{-- --}} - {{-- --}} - {{-- --}} - @endforeach - -
    - {{ __('antenatal.past_obstetric_history') }} -
    {{ __('antenatal.date') }}{{ __('antenatal.gestation') }} Weeks {{ __('antenatal.outcome') }} Delivery Type ComplicationsPuerperiumChildren details{{ __('antenatal.name') }}{{ __('antenatal.patient_number') }}{{ __('antenatal.comments') }}
    - @if (!empty($obstetric_history->obstetric_date)) - {{ streamline_date($obstetric_history->obstetric_date) }} - @else - @endif - {{-- {{ streamline_date($obstetric_history->obstetric_date) }} --}} - - - {{ $obstetric_history->gestation ?? '' }} - - @if (!empty($obstetric_history->outcome)) - {{ isset($anc_outcomes[$obstetric_history->outcome]) ? $anc_outcomes[$obstetric_history->outcome] : '' }} - @else - @endif - - {{-- {{ $obstetric_history->delivery_type ?? '' }} --}} - @if (isset($obstetric_history->delivery_type)) - @if ($obstetric_history->delivery_type == 1) - {{ __('antenatal.vaginal_delivery') }} - @elseif($obstetric_history->delivery_type == 2) - {{ __('antenatal.vacuum_delivery') }} - @elseif($obstetric_history->delivery_type == 3) - {{ __('antenatal.forceps_delivery') }} - @elseif($obstetric_history->delivery_type == 4) - {{ __('antenatal.c_section') }} - @elseif($obstetric_history->delivery_type == 5) - {{ __('antenatal.vbac') }} - @else - @endif - @endif - - - - - @if (isset($obstetric_history->pregnancy_complication)) - @if ($obstetric_history->pregnancy_complication == 1) - {{ __('antenatal.retained_placenta') }} - @elseif($obstetric_history->pregnancy_complication == 2) - {{ __('antenatal.eclampsia') }} - @elseif($obstetric_history->pregnancy_complication == 3) - {{ __('antenatal.pph') }} - @else - @endif - @endif - - {{ $obstetric_history->puerperium ?? '' }} -
    {{ $child->name }} {{ $child->patient_number }} {{ $child->health_condition }}
    - @if (!empty($children)) -
      - @foreach ($children as $child) -
    1. - {{ $child->name }}
    2. - @endforeach -
    - @else - - @endif -
    - @if (!empty($children)) -
      - @foreach ($children as $child) -
    1. - @if (!empty($child->patient_number)) - {{ $child->patient_number }} - @else - - @endif -
    2. - @endforeach - -
    - @else - - @endif -
    - @if (!empty($children)) -
      - @foreach ($children as $child) -
    1. - @if (!empty($child->health_condition)) - {{ $child->health_condition }} - @else - - @endif -
    2. - @endforeach -
    - @else - - @endif -
    -
    -
    - - -
    -
    -

    -
    -
    -
    -@else -{{-- No obstetric history --}} - -@endif -{{-- delivery plan --}} - -
    -
    -
    -
    - Delivery plan -
    - -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('maternity.person_you_live_with') }} - @if (!empty($delivery_plan_details->person_you_live_with)) - {{ $delivery_plan_details->person_you_live_with }} - @else - - @endif -
    {{ __('maternity.means_of_transport_to_facility') }} - - - - @if (!empty($delivery_plan_details->transport_means_to_facility)) - @if ($delivery_plan_details->transport_means_to_facility == '1') - {{ __('maternity.foot') }} - @elseif($delivery_plan_details->transport_means_to_facility == '2') - {{ __('maternity.motor_bike') }} - @elseif($delivery_plan_details->transport_means_to_facility == '3') - {{ __('maternity.private_car') }} - @elseif($delivery_plan_details->transport_means_to_facility == '4') - {{ __('maternity.public_means') }} - @else - - @endif - @else - - @endif -
    {{ __('maternity.person_to_accompany_you') }} - @if (!empty($delivery_plan_details->person_to_accompany_you)) - {{ $delivery_plan_details->person_to_accompany_you }} - @else - - @endif -
    {{ __('maternity.person_to_look_after_home') }} - @if (!empty($delivery_plan_details->person_to_look_after_home)) - {{ $delivery_plan_details->person_to_look_after_home }} - @else - - @endif -
    {{ __('maternity.family_planning_before_next_pregnancy') }} - - @if (!empty($delivery_plan_details->family_planning_method_plan)) - {{ $delivery_plan_details->family_planning_method_plan }} - @else - - @endif -
    -
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('maternity.person_to_stay_at_facility') }} - @if (!empty($delivery_plan_details->person_to_stay_at_facility)) - {{ $delivery_plan_details->person_to_stay_at_facility }} - @else - - @endif -
    {{ __('maternity.delivery_method') }} - @if (!empty($delivery_plan_details->delivery_method)) - @if ($delivery_plan_details->delivery_method == '1') - {{ __('antenatal.vaginal_delivery') }} - @elseif($delivery_plan_details->delivery_method == '2') - {{ __('antenatal.vacuum_delivery') }} - @elseif($delivery_plan_details->delivery_method == '3') - {{ __('antenatal.forceps_delivery') }} - @elseif($delivery_plan_details->delivery_method == '4') - {{ __('antenatal.c_section') }} - @elseif($delivery_plan_details->delivery_method == '5') - {{ __('antenatal.vbac') }} - @else - - @endif - @else - - @endif -
    {{ __('maternity.after_birth_disposal') }} - @if (!empty($delivery_plan_details->after_birth_disposal)) - @if ($delivery_plan_details->after_birth_disposal == '1') - {{ __('maternity.throw_in_placenta_pit') }} - @elseif($delivery_plan_details->after_birth_disposal == '2') - {{ __('maternity.take_it_home') }} - @else - - @endif - @else - - @endif -
    {{ __('maternity.backup_delivery_method') }} - - @if (!empty($delivery_plan_details->backup_delivery_method)) - {{ $delivery_plan_details->backup_delivery_method }} - @else - - @endif -
    {{ __('maternity.mother_partner_screened_for') }} - @php - $mother_screen_data = explode( - ',', - $delivery_plan_details?->mother_partner_screened_for, - ); - @endphp -

    - @foreach ($mother_screen_data as $screened) - @if ($screened == '1') - {{ __('antenatal.syphillis') }}, - @elseif($screened == '2') - {{ __('maternity.sickle_cell') }}, - @elseif($screened == '3') - {{ __('antenatal.hepatitis') }}, - @elseif($screened == '4') - {{ __('antenatal.hiv') }}, - @else - - @endif - {{-- @if (!$loop->last) - , - @endif --}} - @endforeach -

    -
    -
    -
    -
    - -
    - -
    - - - -

    -
    -
    - -{{-- mothers history --}} -
    -
    -
    -
    - {{ __('antenatal.mother_history') }} -
    - - - -
    -
    -
    -
    -
    -
    -
    {{ __('antenatal.menstrual_history') }}
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('antenatal.cycle_length') }} - @if (!empty($maternity_mother_history_details?->cycle_length)) - {{ $maternity_mother_history_details?->cycle_length }} - @else - - @endif -
    {{ __('antenatal.menses_length') }} - @if (!empty($maternity_mother_history_details?->menses_length)) - {{ $maternity_mother_history_details?->menses_length }} - @else - - @endif -
    {{ __('antenatal.menses_amount') }} - @if (!empty($maternity_mother_history_details?->menses_amount)) - {{ $maternity_mother_history_details?->menses_amount }} - @else - - @endif -
    {{ __('maternity.family_planning_method') }} - @php - $family_planning_methods_available = - $maternity_mother_history_details?->family_planning_method; - @endphp - - - @if ($family_planning_methods_available == '1') - - @elseif($family_planning_methods_available == '2') - Condom - @elseif($family_planning_methods_available == '3') - Pill - @elseif($family_planning_methods_available == '4') - Depo - @elseif($family_planning_methods_available == '5') - Injections - @elseif($family_planning_methods_available == '6') - Implant - @elseif($family_planning_methods_available == '7') - BTL - @elseif($family_planning_methods_available == '8') - Vasectomy - @elseif($family_planning_methods_available == '9') - LAM - @elseif($family_planning_methods_available == '10') - Other - @elseif($family_planning_methods_available == '11') - IUD - @elseif($family_planning_methods_available == '12') - Currently Pregnant - @else - - @endif - - -
    {{ __('maternity.date_discontinued') }} - @if (!empty($maternity_mother_history_details?->date_discontinued)) - {{ streamline_date_time_short($maternity_mother_history_details?->date_discontinued) }} - @else - - @endif -
    {{ __('maternity.why') }} - @if (!empty($maternity_mother_history_details?->why_stop_family_planning)) - {{ $maternity_mother_history_details?->why_stop_family_planning }} - @else - - @endif -

    - - - - - - - - - - - - - - - - - -
    {{ __('antenatal.husband_health') }} - @if (!empty($maternity_mother_history_details?->husband_health)) - {{ $maternity_mother_history_details?->husband_health }} - @else - - @endif -
    {{ __('antenatal.other_comments') }} - @if (!empty($maternity_mother_history_details?->other_medical_history_comment)) - {{ $maternity_mother_history_details?->other_medical_history_comment }} - @else - - @endif -

    - - - - -
    - -
    -
    -
    {{ __('antenatal.family_history') }}
    -
    - - - - - - - - - -
    {{ __('antenatal.sgbv') }} - @php - $sgbv_risks = explode( - ',', - $maternity_mother_history_details?->sgbv_risk, - ); - @endphp - - - @forelse ($sgbv_risks as $key => $sgbv_risk) - @if ($sgbv_risk == '1') - {{ __('antenatal.sgbv_risk') }}, - @endif - @if ($sgbv_risk == '2') - {{ __('antenatal.others') }} - (@if (!empty($maternity_mother_history_details?->other_sgbv_risk)) - {{ $maternity_mother_history_details?->other_sgbv_risk }} - @endif) - @endif - @empty - - @endforelse - - -

    - -
    -
    {{ __('antenatal.medical_history') }}
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('antenatal.medical_presentations') }} - @php - $medical_presentations_all = explode( - ',', - $maternity_mother_history_details?->medical_presentations, - ); - - @endphp - - @foreach ($medical_presentations_all as $medical_presentation) - @if ($medical_presentation == '1') - {{ __('antenatal.generalized_l_glands') }}, - @elseif($medical_presentation == '2') - {{ __('antenatal.oral_thrush') }}, - @elseif($medical_presentation == '3') - {{ __('antenatal.sti') }}, - @elseif($medical_presentation == '4') - {{ __('antenatal.arv') }}, - @elseif($medical_presentation == '5') - {{ __('antenatal.dematitis') }}, - @elseif($medical_presentation == '6') - {{ __('antenatal.tb') }}, - @elseif($medical_presentation == '7') - {{ __('antenatal.herpes_simplex') }}, - @elseif($medical_presentation == '8') - {{ __('antenatal.herpes_zoster') }}, - @elseif($medical_presentation == '9') - {{ __('antenatal.others_presentations') }}, - @if (!empty($maternity_mother_history_details?->other_medical_presentations)) - {{ __('antenatal.others_presentations') }} ( - {{ $maternity_mother_history_details?->other_medical_presentations }}) - @endif - @endif - {{-- @if (!$loop->last) - , - @endif --}} - @endforeach - -
    {{ __('maternity.history_of_aph') }} - @php - $history_aph = $maternity_mother_history_details?->history_of_aph; - @endphp - - @if (!empty($history_aph)) - @if ($history_aph == '1') - {{ __('maternity.yes') }} ( @if (!empty($maternity_mother_history_details?->history_aph_details)) - {{ $maternity_mother_history_details?->history_aph_details }} - @endif) - @elseif($history_aph == '0') - {{ __('maternity.no') }} - @endif - @else - {{ __('maternity.no') }} - @endif -
    {{ __('maternity.history_of_fits') }} - @php - $history_fits = $maternity_mother_history_details?->history_of_fits; - @endphp - - @if (!empty($history_fits)) - @if ($history_fits == '1') - {{ __('maternity.yes') }} (@if (!empty($maternity_mother_history_details?->history_fit_details)) - {{ $maternity_mother_history_details?->history_fit_details }} - @endif) - @elseif($history_fits == '0') - {{ __('maternity.no') }} - @endif - @else - {{ __('maternity.no') }} - @endif -
    -
    -
    -
    - -
    - - -
    - @php - - $uterine_surgeries = !empty($maternity_mother_history_details?->uterine_surgeries) - ? json_decode($maternity_mother_history_details?->uterine_surgeries, true) - : []; - $other_surgeries = !empty($maternity_mother_history_details?->other_surgeries) - ? json_decode($maternity_mother_history_details?->other_surgeries, true) - : []; - - $uterus_operations = \Streamline\Models\UterusOperation::orderBy('name', 'asc')->get(); - - @endphp - - - - -
    - {{--
    - {{ __('antenatal.uterus_operations') }} -

    --}} -
    -
    - - - - - - - - - @forelse($uterine_surgeries as $key => $uterine_surgery) - - - - - - - - @empty - {{-- --}} - - - - @endforelse - - -
    {{ __('antenatal.uterus_operations') }}
    - {{ __('antenatal.operation_name') }} - {{ __('antenatal.date') }} - - {{ __('antenatal.facility') }} -
    - @if (!empty($uterine_surgery['name'])) - {{ $uterine_surgery['name'] }} - @else - - @endif - - - @if (!empty($uterine_surgery['date'])) - {{ streamline_date($uterine_surgery['date']) }} - @else - - @endif - - @if (!empty($uterine_surgery['facility_name'])) - {{ $uterine_surgery['facility_name'] }} - @else - - @endif -
    - No data available -
    -
    -
    -
    -
    - - {{--
    - {{ __('antenatal.other_operations') }} -

    --}} -
    - - - - - - - - - @forelse($other_surgeries as $key => $other_surgery) - - - - - - - - @empty - {{-- --}} - - - - @endforelse - - -
    {{ __('antenatal.other_operations') }}
    - {{ __('antenatal.operation_name') }} - {{ __('antenatal.date') }} - - {{ __('antenatal.facility') }} -
    - @if (!empty($other_surgery['name'])) - {{ $other_surgery['name'] }} - @else - - @endif - - - @if (!empty($other_surgery['date'])) - {{ streamline_date($other_surgery['date']) }} - @else - - @endif - - @if (!empty($other_surgery['facility_name'])) - {{ $other_surgery['facility_name'] }} - @else - - @endif -
    - No data availalbe -
    -
    - - -
    -
    - -
    - -

    -
    - -
    - -{{-- blood transfusion --}} -
    -
    -
    -
    - Blood Transfusion and fractures details -
    - -
    -
    -
    -
    -
    - - - - - - - @if (!empty($maternity_admission_details->blood_transfusion_available)) - - - - - @endif - - @php - $fractures = explode(',', $maternity_admission_details->fractures); - @endphp - - @if (in_array('1', $fractures)) - - - - - @endif - - - @if (in_array('1', $fractures)) - - - - - @endif - - @if (in_array('2', $fractures)) - - - - - @endif - - @if (in_array('2', $fractures)) - - - - - @endif - - - @if (in_array('3', $fractures)) - - - - - @endif - @if (in_array('3', $fractures)) - - - - - @endif - - - @if (in_array('4', $fractures)) - - - - - @endif - - - -
    {{ __('antenatal.blood_transfusion') }} - @if (!empty($maternity_admission_details->blood_transfusion_available)) - @if ($maternity_admission_details->blood_transfusion_available == '1') - {{ __('maternity.yes') }} - @endif - @else - {{ __('maternity.no') }} - @endif -
    {{ __('antenatal.why') }} - @if (!empty($maternity_admission_details->blood_transfusion_details)) - {{ $maternity_admission_details->blood_transfusion_details }} - @else - {{ __('maternity.no') }} - @endif -
    {{ __('antenatal.pelvis') }} - - @if (!empty($fractures)) - @if (in_array('1', $fractures)) - {{ __('maternity.yes') }} - @endif - @else - {{ __('maternity.no') }} - @endif -
    Pelvis details - @if (!empty($maternity_admission_details->pelvis_fracture_date)) - {{ streamline_date($maternity_admission_details->pelvis_fracture_date) }}, - - (@if (!empty($maternity_admission_details->pelvis_fracture_details)) - {{ $maternity_admission_details->pelvis_fracture_details }} - @endif) - @else - {{ __('maternity.no') }} - @endif -
    {{ __('antenatal.femur') }} - - @if (!empty($fractures)) - @if (in_array('2', $fractures)) - {{ __('maternity.yes') }} - @endif - @else - {{ __('maternity.no') }} - @endif -
    Femur details - @if (!empty($maternity_admission_details->femur_fracture_date)) - {{ streamline_date($maternity_admission_details->femur_fracture_date) }}, - (@if (!empty($maternity_admission_details->femur_fracture_details)) - {{ $maternity_admission_details->femur_fracture_details }} - @endif) - @else - {{ __('maternity.no') }} - @endif -
    {{ __('antenatal.spine') }} - - @if (!empty($fractures)) - @if (in_array('3', $fractures)) - {{ __('maternity.yes') }} - @endif - @else - {{ __('maternity.no') }} - @endif -
    Spine details - @if (!empty($maternity_admission_details->spine_fracture_date)) - {{ streamline_date($maternity_admission_details->spine_fracture_date) }}, - (@if (!empty($maternity_admission_details->spine_fracture_details)) - {{ $maternity_admission_details->spine_fracture_details }} - @endif) - @else - {{ __('maternity.no') }} - @endif -
    Other fractures - @if (!empty($maternity_admission_details->other_fracture_details)) - {{ $maternity_admission_details->other_fracture_details }} - @else - {{ __('maternity.no') }} - @endif -
    - -
    - -
    - - - - - - - - - - - @if (isset($blood_transfusion)) - - @foreach ($blood_transfusion as $blood_transfusion) - - - - - - - @endforeach - - {{-- - - - - - - --}} - @else - - - - @endif - - -
    {{ __('antenatal.blood_tranfusion_details') }}
    - {{ __('maternity.date') }} - {{ __('maternity.number_of_units') }} - - {{ __('maternity.comments') }} -
    - @if (!empty($blood_transfusion->transfusion_date)) - {{ streamline_date($blood_transfusion->transfusion_date) }} - @else - - @endif - - @if (!empty($blood_transfusion->number_of_units)) - {{ $blood_transfusion->number_of_units }} - @else - - @endif - - @if (!empty($blood_transfusion->comments)) - {{ $blood_transfusion->comments }} - @else - - @endif -
    - @if (!empty($blood_transfusion->transfusion_date)) - {{ streamline_date($blood_transfusion->transfusion_date) }} - @else - - @endif - - - @if (!empty($blood_transfusion->number_of_units)) - {{ $blood_transfusion->number_of_units }} - @else - - @endif - - @if (!empty($blood_transfusion->comments)) - {{ $blood_transfusion->comments }} - @else - - @endif -
    - No data available -
    - - - - - - - - - - - - - - - @if (!empty($maternity_admission_details->vdrl_result)) - - - - - @endif - - - - - - - - - @if (!is_null($maternity_admission_details->hiv_result_usaid)) - - - - - @endif - - - - -
    Blood group - - @if (!empty($blood_transfusion->blood_group_id)) - {{ isset($blood_groups[$blood_transfusion->blood_group_id]) ? $blood_groups[$blood_transfusion->blood_group_id] : '' }} - @else - - @endif - -
    VDRL {{ __('maternity.result') }} - @if (!empty($maternity_admission_details->vdrl_result)) - {{ $maternity_admission_details->vdrl_result }} - @else - {{ __('maternity.no') }} - @endif -
    VDRL Details - @if (!empty($maternity_admission_details->vdrl_date)) - {{ streamline_date($maternity_admission_details->vdrl_date) }} - ( @if (!empty($maternity_admission_details->vdrl_location)) - {{ $maternity_admission_details->vdrl_location }} - @endif) - @else - {{ __('maternity.no') }} - @endif -
    {{ __('maternity.hiv_status') }} - @if ($maternity_admission_details->hiv_result_usaid == 0) - {{ __('maternity.negative') }} - @elseif ($maternity_admission_details->hiv_result_usaid == 1) - {{ __('maternity.positive') }} - @elseif ($maternity_admission_details->hiv_result_usaid == 3) - {{ __('maternity.unknown') }} - @else - {{ __('maternity.no') }} - @endif - -
    Hiv Details - @if (!empty($maternity_admission_details->hiv_date)) - {{ streamline_date($maternity_admission_details->hiv_date) }} - ( @if (!empty($maternity_admission_details->hiv_location)) - {{ $maternity_admission_details->hiv_location }} - @endif) - @else - {{ __('maternity.no') }} - @endif -
    -
    -
    -
    - -
    - -
    - - - -

    -
    -
    - -{{-- pelvic examination and assessement --}} -
    -
    -
    -
    - {{ __('antenatal.pelvic_examination_and_assessement') }} -
    - -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('antenatal.vulva') }} - @if (!empty($pelvic_examination_and_assessment_details->vulva)) - {{ $pelvic_examination_and_assessment_details->vulva }} - @else - - @endif -
    {{ __('antenatal.vagina') }} - @if (!empty($pelvic_examination_and_assessment_details->vagina)) - {{ $pelvic_examination_and_assessment_details->vagina }} - @else - - @endif -
    {{ __('antenatal.cervix') }} - @if (!empty($pelvic_examination_and_assessment_details->cervix)) - @if ($pelvic_examination_and_assessment_details->cervix == '1') - Efaced - @elseif ($pelvic_examination_and_assessment_details->cervix == '2') - Not Efaced - @endif - @else - - @endif -
    {{ __('antenatal.dilatation') }} - @if (!empty($pelvic_examination_and_assessment_details->dilatation)) - {{ $pelvic_examination_and_assessment_details->dilatation }} - @else - - @endif -
    {{ __('antenatal.uterine_adnexa') }} - @if (!empty($pelvic_examination_and_assessment_details->uterine_adnexa)) - {{ $pelvic_examination_and_assessment_details->uterine_adnexa }} - @else - - @endif -
    {{ __('antenatal.moniliasis') }} - @if (!empty($pelvic_examination_and_assessment_details->moniliasis)) - {{ $pelvic_examination_and_assessment_details->moniliasis }} - @else - - @endif -
    -
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('antenatal.diagonal_conjugate') }} - @if (!empty($pelvic_examination_and_assessment_details->diagonal_conjugate)) - {{ $pelvic_examination_and_assessment_details->diagonal_conjugate }} - @else - - @endif -
    {{ __('antenatal.sacrum') }} - @if (!empty($pelvic_examination_and_assessment_details->sacrum)) - @if ($pelvic_examination_and_assessment_details->sacrum == '1') - Curve Deep - @elseif ($pelvic_examination_and_assessment_details->sacrum == '2') - Flat - @endif - @else - - @endif -
    {{ __('antenatal.ischial_spinces') }} - @if (!empty($pelvic_examination_and_assessment_details->ischial_spinces)) - @if ($pelvic_examination_and_assessment_details->ischial_spinces == '1') - Not Prominent - @elseif ($pelvic_examination_and_assessment_details->ischial_spinces == '2') - Prominent - @endif - @else - - @endif -
    {{ __('antenatal.sub_public_angle') }} - @if (!empty($pelvic_examination_and_assessment_details->sub_public_angle)) - @if ($pelvic_examination_and_assessment_details->sub_public_angle == '1') - Obtuse - @elseif ($pelvic_examination_and_assessment_details->sub_public_angle == '2') - Acute - @endif - @else - - @endif -
    {{ __('antenatal.ischial_tuberosities') }} - @if (!empty($pelvic_examination_and_assessment_details->ischial_tuberosities)) - @if ($pelvic_examination_and_assessment_details->ischial_tuberosities == '1') - 4 knuckles - @elseif ($pelvic_examination_and_assessment_details->ischial_tuberosities == '2') - Less - @endif - @else - - @endif -
    {{ __('antenatal.pelvic_adequate') }} - @if (!empty($pelvic_examination_and_assessment_details->pelvic_adequate)) - @if ($pelvic_examination_and_assessment_details->pelvic_adequate == '1') - Borderline - @elseif ($pelvic_examination_and_assessment_details->pelvic_adequate == '2') - Contracted - @endif - @else - - @endif -
    -
    -
    -
    - -
    - -
    - - - -

    -
    - - - -
    - -{{-- this pregnancy --}} -
    -
    -
    -
    - {{ __('maternity.this_pregnancy') }} -
    - -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - -
    {{ __('maternity.iufd') }} - @if ($maternity_admission_details->iufd == '1') - {{ __('maternity.yes') }} - @elseif($maternity_admission_details->iufd == '0') - {{ __('maternity.no') }} - @else - - @endif -
    {{ __('maternity.born_before_arrival') }} - @if ($maternity_admission_details->born_before_arrival == '1') - {{ __('maternity.yes') }} - @elseif($maternity_admission_details->born_before_arrival == '0') - {{ __('maternity.no') }} - @else - - @endif - -
    {{ __('antenatal.pregnancy_complications') }} - @php - $pregnancy_complications_all = explode( - ',', - $maternity_admission_details->pregnancy_complications, - ); - @endphp - - @foreach ($pregnancy_complications_all as $complication) - @if ($complication == '1') - {{ __('antenatal.weight_loss') }}, - @elseif($complication == '2') - {{ __('maternity.fever_one_month') }}, - @elseif($complication == '3') - {{ __('antenatal.diarrhoea_one_month') }}, - @elseif($complication == '4') - {{ __('antenatal.pruritus') }}, - @elseif($complication == '5') - {{ __('antenatal.vaginal_bleeding') }}, - @elseif($complication == '6') - {{ __('antenatal.draining') }}, - @elseif($complication == '7') - @if (!empty($maternity_admission_details->other_pregnancy_complications)) - {{ __('maternity.other_pregnancy_complications') }} - ({{ $maternity_admission_details->other_pregnancy_complications }}) - @endif - @else - {{-- --}} - @endif - {{-- @if (!$loop->last) - , - @endif --}} - @endforeach - -
    - - - - - - - -
    -
    - {{ __('maternity.recomendation_of_delivery') }} -
    -
    - @if (!empty($maternity_admission_details->delivery_recomendation)) - {{ $maternity_admission_details->delivery_recomendation }} - @else - - @endif -
    - - - - - - - - - -
    - -
    - - - - - - - - - - - -
    -
    - {{ __('maternity.physical_examination') }} -
    -
    - @php - $physical_examination_all = explode( - ',', - $maternity_admission_details->physical_examination, - ); - - @endphp - - @foreach ($physical_examination_all as $physical_examination) - @if ($physical_examination == '1') - {{ __('antenatal.breasts') }} - @if (!empty($maternity_admission_details->breasts_physical_examination_details)) - ({{ $maternity_admission_details->breasts_physical_examination_details }}), - @endif - @elseif($physical_examination == '2') - {{ __('antenatal.legs') }} - @if (!empty($maternity_admission_details->legs_physical_examination_details)) - ( - {{ $maternity_admission_details->legs_physical_examination_details }}), - @endif - @elseif($physical_examination == '3') - {{ __('antenatal.heart') }} - @if (!empty($maternity_admission_details->heart_physical_examination_details)) - ( - {{ $maternity_admission_details->heart_physical_examination_details }}), - @endif - @elseif($physical_examination == '4') - {{ __('antenatal.lungs') }} - @if (!empty($maternity_admission_details->lungs_physical_examination_details)) - ( - {{ $maternity_admission_details->lungs_physical_examination_details }}), - @endif - @elseif($physical_examination == '5') - {{ __('antenatal.teeth') }} - @if (!empty($maternity_admission_details->teeth_physical_examination_details)) - ( - {{ $maternity_admission_details->teeth_physical_examination_details }}), - @endif - @elseif($physical_examination == '6') - @if (!empty($maternity_admission_details->other_physical_examinations)) - {{ __('maternity.other_physical_examinations') }} - ( - {{ $maternity_admission_details->other_physical_examinations }}) - @endif - @else - {{-- No physical examinations available --}} - @endif - {{-- @if (!$loop->last),@endif --}} - @endforeach - - -
    - - - - - - - - - - - - -
    -
    - {{ __('maternity.mother_obstetric_risk') }} -
    -
    - @php - $obstetric_risk_factors_all = explode( - ',', - $maternity_admission_details->obstetric_risk_factors, - ); - - @endphp - - @foreach ($obstetric_risk_factors_all as $obstetric_risk_factor) - @if ($obstetric_risk_factor == '1') - {{ __('maternity.history_aph_pregnancy') }}, - {{-- {{ __('maternity.history_aph_pregnancy') }} --}} - @elseif ($obstetric_risk_factor == '2') - {{ __('maternity.epilepsy') }} - {{-- {{ __('maternity.epilepsy') }} --}} - @elseif ($obstetric_risk_factor == '3') - {{ __('maternity.severe_pre_eclampsia') }}, - {{-- {{ __('maternity.severe_pre_eclampsia') }} --}} - @elseif ($obstetric_risk_factor == '4') - {{ __('maternity.history_convulsion_pregnancy') }} - {{-- {{ __('maternity.history_convulsion_pregnancy') }} --}} - @elseif ($obstetric_risk_factor == '5') - {{ __('maternity.polyhydramnios') }}, - @elseif ($obstetric_risk_factor == '6') - {{ __('maternity.premature_rupture_of_membranes') }}, - @elseif ($obstetric_risk_factor == '7') - {{ __('maternity.diabetes_mellitus') }}, - @elseif ($obstetric_risk_factor == '8') - {{ __('maternity.multiple_pregnancy') }}, - @elseif ($obstetric_risk_factor == '9') - {{ __('maternity.pph') }}, - @elseif ($obstetric_risk_factor == '10') - {{ __('maternity.cardiac_disease') }}, - @elseif ($obstetric_risk_factor == '11') - {{ __('maternity.malpresentation') }}, - @elseif ($obstetric_risk_factor == '12') - {{ __('maternity.asthma') }}, - @elseif ($obstetric_risk_factor == '13') - {{ __('maternity.poor_obstetric_history') }}, - @elseif ($obstetric_risk_factor == '14') - {{ __('maternity.pre_term_labour') }}, - @elseif ($obstetric_risk_factor == '15') - {{ __('maternity.sickle_cell_disease') }}, - @elseif ($obstetric_risk_factor == '16') - {{ __('maternity.previous_csections') }}, - @elseif ($obstetric_risk_factor == '17') - {{ __('maternity.polio') }}, - @elseif ($obstetric_risk_factor == '18') - {{ __('maternity.group_b_streptococcus_colonization') }}, - @elseif ($obstetric_risk_factor == '19') - {{ __('maternity.woman_advanced_age') }}, - @elseif ($obstetric_risk_factor == '20') - {{ __('maternity.mental_illness') }}, - @elseif ($obstetric_risk_factor == '21') - {{ __('maternity.adolescent_pregnancy') }}, - @elseif ($obstetric_risk_factor == '22') - {{ __('maternity.hypertension') }}, - @elseif ($obstetric_risk_factor == '23') - {{ __('maternity.kidney_disease') }}, - @elseif ($obstetric_risk_factor == '24') - {{ __('maternity.other_obstetric_risk_factors') }} - (@if (!empty($maternity_admission_details->other_obstetric_risk_factors)) - {{ $maternity_admission_details->other_obstetric_risk_factors }} - @endif) - @else - {{-- --}} - @endif - {{-- @if (!$loop->last) - , - @endif --}} - @endforeach -
    - -
    -
    -
    - -
    - -
    - -

    -
    - -
    - - -
    diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/mothers_history.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/mothers_history.blade.php deleted file mode 100644 index 1eee9719..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/mothers_history.blade.php +++ /dev/null @@ -1,412 +0,0 @@ -{{-- maternity: mothers history --}} - -
    -
    -

    {{ __('antenatal.mother_history') }}

    -
    -
    -

    {{ __('antenatal.menstrual_history') }}

    -
    -
    - - -
    -
    - - {{-- cycle length --}} - -
    -
    - - -
    -
    - - {{-- length of menses --}} -
    -
    - - -
    -
    - - {{-- amount --}} -
    -
    - - -
    -
    - - -
    - - - - -
    - -
    -
    - -
    - - -
    -
    -
    - -
    -
    - - - -
    -
    - - -
    -
    - - -{{-- MEDICAL HISTORY --}} -{{-- start maternity: medical history --}} - - -
    - - - {{-- medical history --}} -
    -
    -
    -

    {{ __('antenatal.medical_history') }}

    -
    -
    - {{-- {{ $latest_existing_antenatal_mother_history->medical_presentations }} --}} - {{-- {{ in_array('2', explode(',', $latest_existing_antenatal_mother_history->medical_presentations)) ? 'checked' : '' }} --}} - - {{ Form::label('medical_presentations', __('antenatal.medical_presentations')) }}
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - {{-- other medical presentations --}} - - - - - - - - -
    - medical_presentations ?? '')) ? 'checked' : '' }} - @if (is_array(old('medical_presentations')) && in_array('1', old('medical_presentations'))) checked @endif>  - - - medical_presentations ?? '')) ? 'checked' : '' }} - value="2" @if (is_array(old('medical_presentations')) && in_array('2', old('medical_presentations'))) checked @endif>  - -
    - {{-- {{ Form::checkbox('medical_presentations[]', 1, false, ['id' => 'medical_presentations_sti', 'class' => 'form-check-input']) }}  --}} - medical_presentations ?? '')) ? 'checked' : '' }} - @if (is_array(old('medical_presentations')) && in_array('3', old('medical_presentations'))) checked @endif>  - - - -
    - {{-- {{ Form::checkbox('any_medications[]', 1, false, ['id' => 'complications_bleeding', 'class' => 'form-check-input']) }}  --}} -   - - -
    -
    - {{-- {{ Form::checkbox('medical_presentations[]', 3, false, ['id' => 'medical_presentations_asthma', 'class' => 'form-check-input']) }}  --}} - - medical_presentations ?? '')) ? 'checked' : '' }} - - value="5" @if (is_array(old('medical_presentations')) && in_array('5', old('medical_presentations'))) checked @endif>  - - - - {{-- {{ Form::checkbox('medical_presentations[]', 10, false, ['id' => 'complications_tb', 'class' => 'form-check-input']) }}  --}} - medical_presentations ?? '')) ? 'checked' : '' }} - - id="6" value="6" - @if (is_array(old('medical_presentations')) && in_array('6', old('medical_presentations'))) checked @endif>  - - -
    - medical_presentations ?? '')) ? 'checked' : '' }} - - @if (is_array(old('medical_presentations')) && in_array('7', old('medical_presentations'))) checked @endif>  - - - medical_presentations ?? '')) ? 'checked' : '' }} - - @if (is_array(old('medical_presentations')) && in_array('8', old('medical_presentations'))) checked @endif>  - -
    - medical_presentations ?? '')) ? 'checked' : '' }} - - id="show_other_medical_presentations_input" value="9">  - - -

    - - {{-- style="{{ !empty($existing_maternity_mother_history->other_medical_presentations) ? '' : 'display:none;' }}" --}} - - {{-- add other medical presentations :input --}} -
    - - -
    - -
    - - - - - {{-- aph and fits --}} - - {{-- history of aph --}} - - - {{-- history of fits --}} - - - - -
    - {{ Form::label('history_of_aph', __('maternity.history_of_aph')) }} -
    - {{ Form::radio('history_of_aph',1, $latest_existing_anc_clinic_followup?->aph == 1 ? true: false, ['required', 'id' => 'show_aph_details_div']) }} - {{ __('maternity.yes') }}    - {{ Form::radio('history_of_aph',0,$latest_existing_anc_clinic_followup?->aph == 0 ? true: false, ['required', 'id' => 'hide_aph_details_div']) }} - {{ __('maternity.no') }} - -
    -
    - {{ Form::label('history_aph_details', __('maternity.details')) }} - {{ Form::textarea('history_aph_details', $latest_existing_anc_clinic_followup?->aph_details ?? '', ['class' => 'form-control', 'rows' => '2']) }} -
    -
    -
    - {{ Form::label('history_of_fits', __('maternity.history_of_fits')) }} -
    - {{ Form::radio('history_of_fits', 1, $latest_existing_anc_clinic_followup?->fits == 1 ? true: false, ['required', 'id' => 'show_fits_details_div']) }} - {{ __('maternity.yes') }}    - {{ Form::radio('history_of_fits',0, $latest_existing_anc_clinic_followup?->fits == 0 ? true: false, ['required', 'id' => 'hide_fits_details_div']) }} - {{ __('maternity.no') }} - - -
    -
    - {{ Form::label('history_fit_details', __('maternity.fits_details')) }} - {{ Form::textarea('history_fit_details', $latest_existing_anc_clinic_followup?->fits_details ?? '', ['class' => 'form-control', 'rows' => '2']) }} -
    -
    -
    - - -
    - - {{-- family history --}} -
    -
    -
    -

    {{ __('antenatal.family_history') }}

    -
    -
    - - - - - - - - - - - - - - - - - - - - - -
    - {{ Form::label('sgbv_risk', __('antenatal.sgbv')) }} -
    -   - - - -
    - {{-- {{ Form::checkbox('any_medications[]', 2, false, ['id' => 'any_medications_others', 'class' => 'form-check-input']) }}  --}} -   - - -

    - - {{-- add other medical presentations :input --}} - - - -
    -
    - - - {{-- others --}} -
    - -
    - {{-- {{ Form::label('any_medications',__('afaf')) }}
    --}} - - - {{-- health of husband --}} -

    - - - - - - - - - -
    -
    - {{-- {{ Form::label('husband_health', __('antenatal.husband_health')) }} --}} - -
    - {{-- {{ Form::text('husband_health', '', ['class' => 'form-control', 'id' => 'husband_health']) }} --}} - -
    -
    -
    -
    -
    -
    - - {{-- {{ Form::textarea('other_medical_history_comment', $latest_existing_antenatal_mother_history->other_comments ?? '' , ['class' => 'form-control', 'rows' => '4']) }} --}} - -
    -
    -
    - -
    -
    -
    - -{{-- end maternity: medical history --}} diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/past_obstetric_history.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/past_obstetric_history.blade.php deleted file mode 100644 index e69de29b..00000000 diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/pelvic_examination_and_assessment.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/pelvic_examination_and_assessment.blade.php deleted file mode 100644 index 40a30d03..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/pelvic_examination_and_assessment.blade.php +++ /dev/null @@ -1,142 +0,0 @@ -{{-- pelivic examination and assessement --}} -
    -
    -

    {{ __('antenatal.pelvic_examination_and_assessement') }}

    -
    -
    - - -{{-- row-1 --}} -@php -$physical_exam = json_decode($latest_existing_anc_clinic_followup?->physical_exam, true); -@endphp - - -
    -
    -
    - {{ Form::label('vulva', __('antenatal.vulva')) }} - - -
    -
    -
    -
    - {{ Form::label('vagina', __('antenatal.vagina')) }} - - -
    -
    - {{-- cervix --}} -
    -
    - {{ Form::label('cervix', __('antenatal.cervix')) }} - - -
    - -
    -
    -
    - {{ Form::label('dilatation', __('antenatal.dilatation')) }} - - -
    -
    -
    -
    - {{ Form::label('uterine_adnexa', __('antenatal.uterine_adnexa')) }} - - -
    -
    -
    -
    - {{ Form::label('moniliasis', __('antenatal.moniliasis')) }} - - -
    -
    - -
    - -{{-- row-2 --}} -
    - -
    -
    - {{ Form::label('diagonal_conjugate', __('antenatal.diagonal_conjugate')) }} - ( > 11.5/<11.5cm) - - -
    -
    -
    -
    - {{ Form::label('sacrum', __('antenatal.sacrum')) }}
    - - -
    -
    -
    -
    - {{ Form::label('ischial_spinces', __('antenatal.ischial_spinces')) }} - - -
    -
    - {{-- sub pubic angle --}} -
    -
    - {{ Form::label('sub_public_angle', __('antenatal.sub_public_angle')) }} - - -
    -
    - - {{-- ischial_tuberosities --}} -
    -
    - {{ Form::label('ischial_tuberosities', __('antenatal.ischial_tuberosities')) }} - - -
    -
    - -
    -
    - {{ Form::label('pelvic_adequate', __('antenatal.pelvic_adequate')) }} - - -
    -
    - -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/previous_admissions.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/previous_admissions.blade.php deleted file mode 100644 index a7fb4aed..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/previous_admissions.blade.php +++ /dev/null @@ -1,687 +0,0 @@ -
    - {{ __('antenatal.previous_admissions') }} -

    -
    - - - - -{{-- NEW DISPLAY CONSULTATIONS --}} - - - - - - - - - - - - - - - - {{-- - - - - - - --}} - - @forelse ($previous_consultation_inpatient_info as $key => $patient_previous_consultation) - - {{-- --}} - - - - - - - - - - - - - {{-- --}} - - - - @empty - No previous admissions - - @endempty - - - -
    Episode ID{{ __('antenatal.admitted_on') }}{{ __('antenatal.ward') }}{{ __('antenatal.primary_diagnosis') }}{{ __('antenatal.other_diagnosis') }}{{ __('antenatal.discharged_on') }}{{ __('antenatal.discharged_by') }}Action
    Row 1 HeaderRow 1 Data
    - Content 1 -
    - {{ $key + 1 }} - - - @if ($patient_previous_consultation->episode_id) - {{ $patient_previous_consultation->episode_id }} - @endif - - - @if ($patient_previous_consultation->admitted_on) - {{ streamline_date($patient_previous_consultation->admitted_on) }} - {{-- {{ \Carbon\Carbon::parse($patient_previous_consultation->admitted_on)->format('Y-m-d H:i') }} --}} - @endif - - - @if (!empty($patient_previous_consultation->ward)) - {{ $patient_previous_consultation->ward }} - @else - - @endif - - @if (!empty($patient_previous_consultation->primary_diagnosis)) - {{ $patient_previous_consultation->primary_diagnosis }} - @else - - @endif - - - - @if (!empty($patient_previous_consultation->other_diagnoses)) - @php - $checklist_array = @unserialize($patient_previous_consultation->other_diagnoses); - // echo '
  • ' . $diagnoses_patient[$patient_previous_consultation->primary_diagnosis] . '
  • '; - - if (is_array($checklist_array)) { - for ($i = 0; $i < count($checklist_array); $i++) { - if ($checklist_array[$i] != '') { - echo '
  • ' . $diagnoses_patient[$checklist_array[$i]] . '
  • '; - } - } - } - @endphp - @else - - @endif - -
    - @if ($patient_previous_consultation->discharged_on) - {{ streamline_date($patient_previous_consultation->discharged_on) }} - @endif - - @if (!empty($patient_previous_consultation->first_name)) - {{ $patient_previous_consultation->first_name }} - @else - - @endif - - @if (!empty($patient_previous_consultation->last_name)) - {{ $patient_previous_consultation->last_name }} - @endif - - - -
    - Content for {{ $patient_previous_consultation->episode_id }} - - -
    -
    -
    - {{-- main-column-1-details --}} - - {{-- observations --}} -
    - {{--

    {{ __('antenatal.observations') }}

    --}} - - {{-- query data from triage --}} - {{-- @php - $current_episode_id = $patient_previous_consultation->episode_id; - $triage_previous_consultation_data = \Streamline\Models\Triage::leftJoin('symptoms', 'triage.symptoms', '=', 'symptoms.id') - ->where(['patient_id' => $patient_id]) - ->where('episode_id', $current_episode_id) - ->get(); - - @endphp --}} - - {{-- loop through observations to display each item key and value --}} - - - - - - {{-- @foreach ($previous_consultation_inpatient_info as $prev_observations) --}} - - @php - $observations_array = explode( - ',', - $patient_previous_consultation->observations, - ); - $temp = null; - $pulse = null; - $respirations = null; - $blood_pressure = null; - $blood_pressure_systolic = null; - $blood_pressure_diastolic = null; - @endphp - - @if (!empty($observations_array)) - @foreach ($observations_array as $observation) - @php - $observation_parts = explode('=', $observation); - - // Check if the explode function successfully split the observation into key and value - if (count($observation_parts) == 2) { - [$observation_key, $observation_value] = $observation_parts; - - if ($observation_key == 'Temperature') { - $temp = $observation_value; - } elseif ($observation_key == 'Pulse') { - $pulse = $observation_value; - } elseif ($observation_key == 'Respirations') { - $respirations = $observation_value; - } elseif ($observation_key == 'Systolic bp') { - $blood_pressure_systolic = $observation_value; - } elseif ($observation_key == 'Diastolic bp') { - $blood_pressure_diastolic = $observation_value; - } - } - @endphp - @endforeach - - - - - - - - - - - - - - - @endif - {{-- @endforeach --}} - -
    Temperature : {{ $temp ?? '' }} Blood Pressure - @if (isset($blood_pressure_systolic) && isset($blood_pressure_diastolic)) - {{ $blood_pressure_systolic ?? '' }}/{{ $blood_pressure_diastolic ?? '' }} - mmHg - @endif -
    Pulse : {{ $pulse ?? '' }} Respirations {{ $respirations ?? '' }}
    - {{-- end of loop through observations to display each item key and value --}} - -
    - - {{-- outcome --}} -
    - - - - - {{-- --}} - - - - - - - - {{-- --}} - - - - - -
    Outcome36%
    Pulse - @if (!empty($patient_previous_consultation->outcome)) - {{ $patient_previous_consultation->outcome }} - @else - - @endif -
    -
    -
    - - {{-- ward treatments --}} - - @php - $previous_ward_treatments = \Streamline\Models\WardTreatment::where([ - ['patient_id', $patient_id], - ['episode_id', '=', $patient_previous_consultation->episode_id], - ])->get(); - - @endphp - - -
    -

    {{ __('antenatal.ward_treatments') }}

    -
    -
    - - @if (count($previous_ward_treatments) > 0) -
    - - - - - - - - - - - {{-- logic to fetch ward treatments --}} - @foreach ($previous_ward_treatments as $key => $ward_treatment) - @php - $drugsData = [ - 'drugs' => explode(',', $ward_treatment->drugs), - 'doses' => explode(',', $ward_treatment->doses), - 'durations' => explode(',', $ward_treatment->durations), - 'quantities_dispensed' => explode( - ',', - $ward_treatment->quantities_dispensed, - ), - 'dispense_status' => explode( - ',', - $ward_treatment->dispense_status, - ), - ]; - - $dosageNames = Streamline\Models\DosageFrequency::whereIn( - 'id', - $drugsData['drugs'], - )->pluck('name', 'id'); - $drugNames = Streamline\Models\Drug::whereIn( - 'id', - $drugsData['drugs'], - )->pluck('name', 'id'); - @endphp - - {{-- Fetch drugs loop with array data --}} - @foreach ($drugsData['drugs'] as $index => $drugId) - - - - - - - - - - @endforeach - - - {{-- end fetch drugs loop with array data --}} - @endforeach - - -
    {{ __('antenatal.drug_name') }}{{ __('antenatal.dosage') }}{{ __('antenatal.duration') }}{{ __('antenatal.quantity') }}{{ __('antenatal.status') }}
    - @if (!empty($drugNames[$drugId])) - {{ $drugNames[$drugId] }} - @else - - @endif - - @if (!empty($dosageNames[$drugId])) - {{ $dosageNames[$drugId] }} - @else - - @endif - - @if (!empty($drugsData['durations'][$index])) - {{ $drugsData['durations'][$index] }} - @else - - @endif - - @if (!empty($drugsData['quantities_dispensed'][$index])) - {{ $drugsData['quantities_dispensed'][$index] }} - @else - - @endif - - - @if (!empty($drugsData['dispense_status'][$index])) - {{ $drugsData['dispense_status'][$index] }} - @else - - @endif -
    -
    - @else - No previous ward treatments - @endif - - -
    -
    -
    - - {{-- main-column-2-details --}} -
    - {{--

    new date {{ $patient_previous_consultation->created_at }}

    --}} - - {{-- symptoms --}} - -

    {{ __('antenatal.symptoms') }}

    - @if ($patient_previous_consultation->symptoms) - {{-- pick triage + consultation symptoms combined:: check controller --}} - {{-- @php $symptoms_array = explode(",", $patient_previous_consultation->symptoms); @endphp - @php $symptoms_duration_array = explode(",", $patient_previous_consultation->symptom_duration); @endphp --}} - - {{-- pick consultation symptoms --}} - @php $symptoms_array = explode(",", $patient_previous_consultation->consultation_symptoms); @endphp - @php $symptoms_duration_array = explode(",", $patient_previous_consultation->consultation_symptom_duration); @endphp - - -
    - - - - - - - - - @php $counter = 0; @endphp - @for ($i = 0; $i < count($symptoms_array); $i++) - - - - - @endfor - -
    {{ __('consultations.symptom') }}{{ __('consultations.duration') }}
    {{ isset($symptoms_array[$i]) ? get_name($symptoms_array[$i], 'id', 'name', 'symptoms') : '' }} - {{ $symptoms_duration_array[$i] ?? '' }}
    - -
    - @else - {{ __('consultations.no_symptom_recorded') }} - @endif - - - - {{-- ordered investigation results --}} -
    - @php - $ordered_investigations_results = \Streamline\Models\InvestigationResults::where([ - ['patient_id', $patient_id], - ['episode_id', '=', $patient_previous_consultation->episode_id], - ])->get(); - @endphp - - {{--
    -

    Ordered investigation results

    -
    --}} - - - - @if (count($ordered_investigations_results) > 0) - @foreach ($ordered_investigations_results as $key => $ordered_investigation) - @php - $investigationsData = [ - 'investigation' => explode(',', $ordered_investigation->investigation_id), - 'result' => explode(',', $ordered_investigation->value), - 'comment' => explode(',', $ordered_investigation->comment), - 'reference_ranges' => explode( - ',', - $ordered_investigation->normal_ranges ?? '', - ), - // 'quantities_dispensed' => explode(',', $ward_treatment->quantities_dispensed), - // 'dispense_status' => explode(',', $ward_treatment->dispense_status), - ]; - - // $drugFrequencies = Streamline\Models\DosageFrequency::whereIn('id', $drugsData['drugs'])->pluck('name', 'id'); - $investigationName = Streamline\Models\Investigation::whereIn( - 'id', - $investigationsData['investigation'], - )->pluck('name', 'id'); - $investigationRange = Streamline\Models\Investigation::whereIn( - 'id', - $investigationsData['investigation'], - )->pluck('normal_ranges', 'id'); - - @endphp - - - {{-- pick ordered investigation results: works --}} - - {{--
    - - - - - - - - - - @foreach ($investigationsData['investigation'] as $index => $investigationId) - - - - - - - - - - - - - - @endforeach - -
    {{ __('antenatal.investigation_name') }}{{ __('antenatal.results') }}{{ __('antenatal.reference_ranges') }}{{ __('antenatal.comments') }}
    - @if (!empty($investigationName[$investigationId])) - {{ $investigationName[$investigationId] }} - @else - - @endif - - @if (!empty($investigationsData['result'][$index])) - {{ $investigationsData['result'][$index] }} - @else - - @endif - - - @php - $investigation_ranges = - $investigationRange[$investigationId]; - $investigation_ranges_array = explode( - '.', - $investigation_ranges ?? '', - ); - - @endphp - - - - @if (!empty($investigationRange[$investigationId])) - {{ $investigationRange[$investigationId] }} - @else - - @endif - - @if (!empty($investigationsData['comment'][$index])) - {{ $investigationsData['comment'][$index] }} - @else - - @endif -
    -
    --}} - - {{-- end of ordered investigation results --}} - @endforeach - @else - {{-- No ordered investigations --}} - @endif - -
    - - {{-- ordered investigations --}} - @php - $ordered_investigations_info = \Streamline\Models\OrderedInvestigation::where([ - ['patient_id', $patient_id], - ['episode_id', '=', $patient_previous_consultation->episode_id], - ])->get(); - - // $ordered_investigations_info2 = \Streamline\Models\OrderedInvestigation:: - // leftJoin('investigation_results', 'ordered_investigations.episode_id', '=', 'investigation_results.episode_id') - // ->leftJoin('inpatient_info', 'ordered_investigations.episode_id', '=', 'inpatient_info.patient_id') - // ->where([ - // ['inpatient_info.patient_id', $patient_id], - // ['inpatient_info.episode_id', '=', $patient_previous_consultation->episode_id], - // ]) - // ->get([ - // 'ordered_investigations.investigation_id as investigations', - // 'investigation_results.value as value_result', //results from results table - // // 'investigation_results.normal_ranges as reference_ranges', - // 'ordered_investigations.comment as investigation_comment', - - // ]); - - - @endphp - {{-- ordered investigation --}} - - {{--
    - @php - - // $investigation_rezults testing with investigations - $ordered_investigation_with_rezults_test = \Streamline\Models\OrderedInvestigation::where([ - ['patient_id', $patient_id], - ['episode_id', '=', $patient_previous_consultation->episode_id], - ])->get(); - - $results_test = DB::table('ordered_investigations') - ->leftJoin('investigation_results', 'ordered_investigations.episode_id', '=', 'investigation_results.episode_id') - ->leftJoin('inpatient_info', 'ordered_investigations.episode_id', '=', 'inpatient_info.episode_id') - ->where('inpatient_info.patient_id', $patient_id) - ->where('inpatient_info.episode_id', $patient_previous_consultation->episode_id) - ->get([ - 'ordered_investigations.investigation_id as investigation_id', - 'investigation_results.value as result', - ]); - - @endphp - --}} - - -
    - - -

    {{ __('consultations.ordered_investigations') }}

    -
    - - - - - - - - - - - @php - $cardio_echo = \Streamline\Models\CardioEchoResult::where('episode_id', $patient_previous_consultation->episode_id)->first(); - @endphp - - - - - @if (count($ordered_investigations_info) > 0) - @foreach ($ordered_investigations_info as $investigation) - @php $investigation_ids_array = explode(',', $investigation->investigation_id); @endphp - @for ($i = 0; $i < count($investigation_ids_array); $i++) - @php - $investigation = \Streamline\Models\Investigation::withTrashed()->find( - $investigation_ids_array[$i], - ); - - - @endphp - - - @if ($investigation) - @if ($investigation->slug == 'echo') - - - - - - @else - - - - - - - @endif - @endif - @endfor - @endforeach - @else - - @endif - -
    {{ __('investigations.investigation_name') }}{{ __('investigations.results') }}{{ __('investigations.normal_ranges') }}{{ __('investigations.comment') }}
    - {{ $investigation->name }} - @if ($cardio_echo) - - - - View - results - - @else - Pending - @endif -
    - {{ $investigation->name }} - - {{ __('consultations.pending') }} - - - @if ($investigation->range_type == 1) - {{ get_dynamic_normal_range($investigation->id, get_patient_age_group($patient_id), get_name($patient_id, 'id', 'gender', 'patients')) }} - @else - {{ $investigation->normal_ranges }} - @endif - - {{ $investigation->comments }} -
    - No ordered investigations -
    -
    - - - -
    - - {{-- end of ordered investigations --}} - - - -
    - -
    - - - - - - - -
    - diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/surgical_history.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/surgical_history.blade.php deleted file mode 100644 index e5bf30a6..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/surgical_history.blade.php +++ /dev/null @@ -1,239 +0,0 @@ -{{-- SURGICAL HISTORY --}} - -{{-- Check if surgeries exist and return the records --}} - - -@if(count($patient_surgeries) > 0) -
    -
    -

    {{ __('antenatal.surgical_history') }}

    -
    -
    - -
    - -
    - - {{-- surgical history table --}} - - - - - - - - - - {{-- @foreach ($obstetric_history_details as $obstetric_history) --}} - - - @forelse($patient_surgeries as $key => $patient_surgery) - - - - - - - - - @empty - - - - @endforelse - {{-- @endforeach --}} - -
    {{ __('antenatal.id') }}{{ __('antenatal.previous_surgical_procedure') }}{{ __('antenatal.date') }}{{ __('antenatal.performed_by') }}{{ __('antenatal.diagnosis') }}
    - {{ $key + 1 }} - - - {{ $patient_surgery->procedure_name }} - - @if ($patient_surgery->date_surgery_completed) - {{ streamline_date($patient_surgery->date_surgery_completed) }} - @endif - - @if (!empty($patient_surgery->first_name)) - {{ $patient_surgery->first_name }} - @else - N/A - @endif - - @if (!empty($patient_surgery->last_name)) - {{ $patient_surgery->last_name }} - @endif - - - @php - - $dianoses = []; - $dianoses[] = $patient_surgery->primary_diagnosis; - - @endphp - - -
      - - @php - $checklist_array = @unserialize($patient_surgery->other_diagnoses); - echo '
    • ' . $diagnoses_patient[$patient_surgery->primary_diagnosis] . '
    • '; - - if (is_array($checklist_array)) { - for ($i = 0; $i < count($checklist_array); $i++) { if ($checklist_array[$i] !='' ) { echo '
    • ' - . $diagnoses_patient[$checklist_array[$i]] . '
    • ' ; } } } @endphp {{-- @foreach - ($dianoses as $key=> $value) -
    • {{ $diagnoses_patient[$value] }}
    • - @endforeach --}} - -
    - - -
    - No surgery records available -
    - - - {{-- end surgical history table --}} - -
    -
    -@endif - -
    - {{-- uterus operations --}} - @php - $anc_uterine_surgeries = !empty($latest_existing_antenatal_mother_history->uterine_surgeries)? json_decode($latest_existing_antenatal_mother_history->uterine_surgeries, true):[]; - $anc_other_surgeries = !empty($latest_existing_antenatal_mother_history->other_surgeries)? json_decode($latest_existing_antenatal_mother_history->other_surgeries, true):[]; - - @endphp - - -
    - - - - - - - - - - @if (!empty($anc_uterine_surgeries)) - @foreach ($anc_uterine_surgeries as $key => $anc_uterine_operation) - - - - - - - @endforeach - @else - - - - - - - @endif - -
    {{ __('antenatal.uterus_operations') }}{{ __('antenatal.date') }}{{ __('antenatal.facility_name') }}
    - {{ Form::text('uterus_operations_name[]', $anc_uterine_operation['name'] ?? '', ['class' => 'form-control uterus_operations', 'id' - => 'uterus_operations_name_1']) }} - - - -
    - {{ Form::text('uterus_operations_date[]', $anc_uterine_operation['date'] ?? '', ['class' => 'form-control', 'id' => - 'uterus_operation_date_picker', 'placeholder' => 'When?']) }} -
    -
    - {{ Form::text('uterus_operations_facility_name[]', $anc_uterine_operation['facility_name'] ?? '', ['class' => 'form-control ', 'id' => - 'uterus_operations_facility_name_1']) }} -
    - {{ Form::text('uterus_operations_name[]', '', ['class' => 'form-control uterus_operations', 'id' - => 'uterus_operations_name_1']) }} - - - -
    - - - {{ Form::text('uterus_operations_date[]', '', ['class' => 'form-control', 'id' => - 'uterus_operation_date_picker', 'placeholder' => 'When?']) }} -
    -
    - {{ Form::text('uterus_operations_facility_name[]', '', ['class' => 'form-control ', 'id' => - 'uterus_operations_facility_name_1']) }} -
    - {{ - __('antenatal.add_uterus_operations_row') }} -
    - - {{-- other operations --}} -
    - - - - - - - - - @if(!@empty($anc_other_surgeries)) - @foreach($anc_other_surgeries as $key => $anc_other_operation) - - - - - - - @endforeach - @else - - - - - - - - @endif - -
    {{ __('antenatal.operations') }}{{ __('antenatal.date') }}{{ __('antenatal.facility_name') }}
    - {{ Form::text('other_operations_name[]', $anc_other_operation['name'] ?? '', ['class' => 'form-control', 'id' => - 'other_operations_name_1']) }} - -
    - - {{ Form::text('other_operations_name_date[]', $anc_other_operation['date'] ?? '', ['class' => 'form-control ', 'id' => - 'other_operation_date_picker', 'placeholder' => 'When?']) }} -
    -
    - {{ Form::text('other_operations_name_facility_name[]', $anc_other_operation['facility_name'] ?? '', ['class' => 'form-control', 'id' => 'other_operations_facility_name_1']) }} -
    - {{ Form::text('other_operations_name[]', '', ['class' => 'form-control', 'id' => - 'other_operations_name_1']) }} - -
    - - {{ Form::text('other_operations_name_date[]', '', ['class' => 'form-control ', 'id' => - 'other_operation_date_picker', 'placeholder' => 'When?']) }} - - -
    -
    - {{ Form::text('other_operations_name_facility_name[]', '', ['class' => 'form-control', 'id' => 'other_operations_facility_name_1']) }} -
    - {{ - __('antenatal.add_other_operations_row') }} -
    -

    \ No newline at end of file diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/this_pregnancy.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/this_pregnancy.blade.php deleted file mode 100644 index cb802470..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes/this_pregnancy.blade.php +++ /dev/null @@ -1,594 +0,0 @@ - -@php -$physical_exam = json_decode($latest_existing_anc_clinic_followup?->physical_exam, true); -@endphp -
    -
    -

    {{ __('maternity.this_pregnancy') }}

    -
    - -
    - -
    -
    - - {{-- row --}} -
    - {{-- col-1 --}} -
    - {{ Form::label('lmp', __('maternity.lmp')) }} -
    - {{ Form::text('lmp', isset($anc_registration) ? Carbon\Carbon::parse($anc_registration->lmp)->format('d/m/Y') : '' , ['class' => 'form-control compulsory', 'required', 'readonly', 'id' => 'lmp']) }} - -
    -
    - {{-- col --}} -
    - - {{ Form::label('accuracy', __('maternity.accuracy')) }} - {{ Form::select('accuracy', $accuracies, $anc_registration->accuracy ?? '', ['class' => 'form-control col-sm-12 compulsory', 'required']) }} -
    -
    - - {{ Form::label('weeks_of_amenorrhoea', __('antenatal.woa_weeks')) }} -
    {!! $existing_maternity_inpatient_data->weeks_of_amenorrhoea ?? $anc_registration->woa_weeks ?? '' !!}
    - - {{ Form::hidden('weeks_of_amenorrhoea', $existing_maternity_inpatient_data->weeks_of_amenorrhoea ?? $anc_registration->woa_weeks ?? '', ['id' => 'weeks_of_amenorrhoea']) }} -
    -
    - -
    - {{ Form::label('edd', __('maternity.edd')) }} - {{-- Carbon\Carbon::parse($anc_registration->edd)->format('d/m/Y') --}} - @php - $edd_date = []; - $edd_date = isset($anc_registration->edd) ? Carbon\Carbon::parse($anc_registration->edd)->format('d/m/Y') : ''; - @endphp - -
    - {{ Form::text('edd', $edd_date , [ - 'class' => 'form-control compulsory', - 'required', 'readonly', 'id' => 'edd']) }} - -
    -
    - - - - -
    - {{-- end row --}} - -
    - -
    -
    - - - {{ Form::label('refferal', __('maternity.us_scan_edd')) }} -
    - {{-- {{ Form::text('scan_edd', Carbon\Carbon::parse($latest_existing_anc_clinic_followup?->scan_edd)->format('d/m/Y') ?? '' , ['class' => 'form-control compulsory', 'required', 'readonly', 'id' => 'datepicker-autoclose7']) }} - --}} - - -
    -
    -
    - - -
    - - -
    - {{ Form::label('gestation_from_scan_view', __('maternity.current_gestation_from_scan')) }} - -
    -
    -
    -
    - {{ Form::label('refferal', __('maternity.referral_in_from')) }} - {{ Form::select('refferal', $referrals, $anc_registration->referral_from ?? '', ['class' => 'form-control col-sm-12 compulsory', 'required', 'id' => 'referral']) }} -
    - - {{ __('maternity.add_new_referral') }} - -
    -
    -
    - - -
    -
    - {{ Form::label('pregnancy_complications', __('antenatal.complications')) }}
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -   - - -   - -
    -   - - -   - -
    -   - - -   - -
    - complications)) ? 'checked' : '' }} - - id="show_other_pregnancy_complications_input" value="7">  - - -

    - - {{-- add other medical presentations :input --}} -
    - -
    -
    -
    - -
    -
    - {{ Form::label('iufd', __('maternity.iufd')) }}
    - {{ Form::radio('iufd', 1, false, ['required', 'id' => 'show_iufd_alert_div']) }} - {{ __('maternity.yes') }}    - {{ Form::radio('iufd', 0, false, ['required', 'id' => 'hide_iufd_alert_div']) }} - {{ __('maternity.no') }} - -
    -
    - -
    -
    - {{ Form::label('born_before_arrival', __('maternity.born_before_arrival')) }}
    - {{ Form::radio('born_before_arrival', 1, false, ['required']) }} {{ __('maternity.yes') }} -    - {{ Form::radio('born_before_arrival', 0, false, ['required']) }} {{ __('maternity.no') }} -
    -
    -
    -
    - {{ Form::label('progress', __('maternity.progress')) }} - {{ Form::select('progress', $maternity_progress, '', ['class' => 'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('delivery_recomendation', __('maternity.recomendation_of_delivery')) }} - {{ Form::textarea('delivery_recomendation', '', ['class' => 'form-control', 'rows' => '4']) }} -
    -
    - - - -
    - - - -
    - {{-- physical examination --}} -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -   - - - {{-- add breast deformity :input --}} -
    - -
    - - -
    - -   - - - {{-- add legs deformity :input --}} -
    - -
    -
    -   - - - {{-- add heart deformity :input --}} -
    - -
    -
    -   - - - {{-- add lungs :input --}} -
    - -
    -
    -   - - - {{-- add teeth :input --}} -
    - -
    -
    -   - - - {{-- add other physical_examination :input --}} - -
    -
    - -
    - -
    - - {{-- row 1 --}} - - - - - - - - - {{-- row 2 --}} - - - - - - - - - {{-- row 3 --}} - - - - - - - - - {{-- row 4 --}} - - - - - - - - - {{-- row 5 --}} - - - - - - - - - {{-- row 6 --}} - - - - - - - - - {{-- row 7 --}} - - - - - - - - - {{-- row 8 --}} - - - - - - - - -
    -   - - -   - - -   - -
    -   - - -   - - -   - -
    -   - - -   - - -   - -
    -   - - -   - - -   - -
    -   - - -   - - -   - -
    -   - - -   - - -   - -
    -   - - -   - - -   - -
    -   - - -   - - -   - - - {{-- add other obstetric risk factor:input --}} - -
    -
    -
    - - -
    diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/diagnosis.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/diagnosis.blade.php deleted file mode 100644 index ccdf60c9..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/diagnosis.blade.php +++ /dev/null @@ -1,187 +0,0 @@ -{{-- primary diagnosis and other diagnosis --}} - -
    -
    -
    - - - - - - - - - - - - - - - - - - -
    #{{ __('inpatient.primary_diagnosis') }}{{ __('inpatient.prompt') }}{{ __('inpatient.references') }}
    -
    - {{ Form::select('primary_diagnosis', $diagnoses, '', ['id' => 'primary_diagnosis', 'class' => 'form-control col-sm-12 compulsory', 'required']) }} -
    -
    -
     
    -
    -
     
    -
    -
    -
    - - - - - - - - - - - - - - - - - -
    #{{ __('inpatient.other_diagnosis') }}{{ __('inpatient.prompt') }}{{ __('inpatient.references') }}
    - {{ Form::select('other_diagnosis[]', $diagnoses, '', ['class' => 'form-control col-sm-12 sec_d', 'id' => 'other_diagnosis']) }} - -
     
    -
    -
     
    -
    -
    - {{ __('inpatient.add_row') }} - {{ __('inpatient.delete_row') }} -
    -
    -
    -
    - -
    -
    -
    -
    - - - - - - - - - @if ($triage) - @php - $symptoms_explode = explode(',', $triage->symptoms); - $duration_explode = explode(',', $triage->symptom_duration); - @endphp - @for ($i = 0; $i < count($symptoms_explode); $i++) - - - - - @endfor - @else - - - - @endif - -
    {{ __('inpatient.symptoms') }}{{ __('inpatient.duration') }}
    {{ $symptoms[$symptoms_explode[$i]] }}{{ isset($duration_explode[$i]) ? $duration_explode[$i] : '' }} -
    {{ __('inpatient.no_symptoms_triage') }} -
    -
    -
    -
    -
    -
    - - - - - - - - - - @if (count($opd_investigations) > 0) - @for ($i = 0; $i < count($opd_investigations['name']); $i++) - - - - - - @endfor - @else - - - - @endif - -
    {{ __('inpatient.name') }}{{ __('inpatient.value') }}{{ __('inpatient.comment') }}
    {{ $opd_investigations['name'][$i] }}{{ $opd_investigations['value'][$i] }}{{ $opd_investigations['comment'][$i] }}
    {{ __('inpatient.no_opd_invs') }}
    -
    -
    -
    -
    -
    - - - - - - - - - - @if (count($ward_investigations) > 0) - @for ($i = 0; $i < count($ward_investigations['name']); $i++) - - - - - - @endfor - @else - - - - @endif - -
    {{ __('inpatient.name') }}{{ __('inpatient.value') }}{{ __('inpatient.comment') }}
    {{ $ward_investigations['name'][$i] }}{{ $ward_investigations['value'][$i] }}{{ $ward_investigations['comment'][$i] }}
    {{ __('inpatient.no_ward_invs') }}
    -
    -
    -
    -
    -
    -
    -
    - > {{ __('inpatient.historical_investigations') }} - > - {{ __('inpatient.order_investigations') }} -
    -
    -
    -{{-- end diagnosis --}} \ No newline at end of file diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/gynacology_history.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/gynacology_history.blade.php deleted file mode 100644 index 716bc587..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/gynacology_history.blade.php +++ /dev/null @@ -1,108 +0,0 @@ -{{-- Gynacology history --}} - - -
    -
    -

    {{ __('antenatal.gynacology_history') }}

    -
    -
    - - - - -
    -
    - {{-- {{ Form::label('surgical_history',__('antenatal.surgical_history')) }} --}} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - - - - {{-- add dilation and curettage date :input --}} - - - - - {{ Form::checkbox('obs_gyn[]', 2, false, ['id' => 'obs_gyn_ectopic_pregancy', 'class' => 'form-check-input']) }} - - - {{-- add ectopic pregnancy date :input --}} - - - - - -
    - - - - - - - - -
    - {{ Form::checkbox('obs_gyn[]', 3, false, ['id' => 'obs_gyn_pph', 'class' => 'form-check-input']) }} - - - {{ Form::checkbox('obs_gyn[]', 4, false, ['id' => 'obs_gyn_retained_placenta', 'class' => 'form-check-input']) }} - - - {{ Form::checkbox('obs_gyn[]', 4, false, ['id' => 'c_section', 'class' => 'form-check-input']) }} - -
    -
    - - - -
    - -
    diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/previous_consultations.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/previous_consultations.blade.php deleted file mode 100644 index e69de29b..00000000 diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/update_blood_transfusion.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/update_blood_transfusion.blade.php deleted file mode 100644 index 0c939aa2..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/update_blood_transfusion.blade.php +++ /dev/null @@ -1,497 +0,0 @@ -{{-- blood transfusion --}} -
    - {{--
    --}} - {{-- blood transfusion --}} -
    -

    {{ __('antenatal.blood_transfusion') }}

    -
    - -
    -
    - blood_transfusion_available)) ? 'checked' : '' }}>  - -
    -
    -
    - - -
    -
    - {{-- why --}} - - -
    - -
    -
    - - -
    - - - - {{-- fractures --}} -
    -

    {{ __('antenatal.fractures') }}

    -
    - -
    - {{-- pelvis --}} - -
    -
    - fractures)) ? 'checked' : '' }} />  - - -

    - - {{-- add pelvis fracture inputs --}} -
    -
    - @php - $pelvis_fracture_date = $existing_maternity_inpatient_data->pelvis_fracture_date - ? Carbon\Carbon::parse( - $existing_maternity_inpatient_data->pelvis_fracture_date, - )->format('d/m/Y') - : ''; - @endphp - - pelvis_fracture_date)->format('d/m/Y') }} --}} value="{{ $pelvis_fracture_date }}" - class="form-control prevent_future_pelvis_date"> - -
    - - -
    - - -
    -
    - - {{-- spine --}} -
    -
    - fractures)) ? 'checked' : '' }}>  - - -

    - - {{-- add spine fracture inputs --}} -
    -
    - @php - $spine_fracture_date = $existing_maternity_inpatient_data->spine_fracture_date - ? Carbon\Carbon::parse( - $existing_maternity_inpatient_data->spine_fracture_date, - )->format('d/m/Y') - : ''; - @endphp - - -
    - - -
    - - -
    -
    - - - {{-- femur --}} -
    -
    - fractures)) ? 'checked' : '' }} - value="3">  - - -

    - - {{-- add femur fracture inputs --}} - @php - $femur_fracture_date = $existing_maternity_inpatient_data->femur_fracture_date - ? Carbon\Carbon::parse($existing_maternity_inpatient_data->femur_fracture_date)->format( - 'd/m/Y', - ) - : ''; - @endphp - -
    -
    - - -
    - - -
    - - -
    -
    - - - {{-- other fractures --}} -
    -
    - fractures)) ? 'checked' : '' }} - value="4">  - - -

    - - {{-- add other_fractures fracture inputs --}} -
    - - -
    - - -
    -
    - - - - -
    - -
    - -
    -
    - -
    -
    - {{ Form::label('blood_group', __('maternity.blood_group')) }} - - {{ Form::select('blood_group', $blood_groups, $existing_blood_transfusion->blood_group_id ?? '', ['class' => 'form-control col-sm-12']) }} - - -
    - - - -
    - {{ __('maternity.blood_transfusion') }} - {{--
    --}} - {{-- - - - - - - --}} - {{-- - @foreach ($anc_blood_transfusion as $blood_transfusion) - - - - - - - - @endforeach - - - - - - - --}} - - {{-- - @if (count($anc_blood_transfusion_details) > 0) - @foreach ($anc_blood_transfusion_details as $anc_blood_transfusion) - @php - $format_db_date_1 = date_create($anc_blood_transfusion->transfusion_date); - $customized_date_format_1 = date_format($format_db_date_1, 'd/m/Y'); - @endphp - - - - - - - @endforeach - @else - - - - - - - @endif - - - - - -
    #{{ __('maternity.date') }}{{ __('maternity.number_of_units') }}{{ __('maternity.comments') }}
    {{ streamline_date($blood_transfusion->transfusion_date) }}{{ $blood_transfusion->number_of_units }}{{ $blood_transfusion->comments }}
    -
    -
    - {{ Form::text('transfusion_date[]', '', ['class' => 'form-control transfusion-date', 'readonly']) }} - -
    -
    -
    -
    -
    -
    -
    - {{ Form::text('transfusion_date[]', $customized_date_format_1, ['class' => 'form-control transfusion-date', 'readonly']) }} - -
    -
    -
    -
    -
    -
    - {{ Form::text('transfusion_date[]', '', ['class' => 'form-control', 'readonly', 'id' => 'datepicker-autoclose12']) }} - -
    -
    -
    -
    - {{ __('maternity.add_row') }} - {{ __('maternity.delete_row') }} --}} - - {{--
    --}} - - {{-- modified table --}} - - - - - {{-- --}} - - - - - - - @if (count($anc_blood_transfusion_details) > 0) - - @foreach ($anc_blood_transfusion_details as $key => $anc_blood_transfusion) - @php - $format_db_date_1 = date_create($anc_blood_transfusion->transfusion_date); - $customized_date_format_1 = date_format($format_db_date_1, 'd/m/Y'); - - //$format_db_date_1 = isset($anc_blood_transfusion->transfusion_date) ? Carbon\Carbon::parse($anc_blood_transfusion->transfusion_date)->format('d/m/Y') : null; - //$customized_date_format_1 = is_array($format_db_date_1) ? date_format($format_db_date_1, 'd/m/Y'): null ; - - @endphp - - {{-- {{dd($customized_date_format_1)}} --}} - - - {{-- --}} - - - - - - - @endforeach - @else - - - - - - - - @endif - -
    #T_id{{ __('maternity.date') }}{{ __('maternity.number_of_units') }}{{ __('maternity.comments') }}
    {{ $anc_blood_transfusion->id }} -
    -
    - {{ Form::text('transfusion_date[]', $customized_date_format_1, ['class' => 'form-control transfusion-date', 'readonly', 'id' => 'transfusion_date_1']) }} - - -
    -
    -
    -
    - - - {{-- --}} - - - - - - - - -
    -
    -
    - {{ Form::text('transfusion_date[]', '', ['class' => 'form-control transfusion-date', 'readonly', 'id' => 'transfusion_date_1']) }} - -
    -
    -
    -
    -
    - - - - -
    - -
    -
    -
    -

    - {{ __('maternity.vdrl_status') }}

    - {{ __('maternity.hiv_status') }} -
    -
    -
    -
    -
    - {{ Form::label('result', __('maternity.result')) }} -
    - {{ Form::select('hiv_result', $hiv_statuses, $existing_maternity_inpatient_data->hiv_result_usaid, ['class' => 'form-control col-sm-12', 'id' => 'hiv_result']) }} -
    -
    -
    -
    - {{ Form::label('date', __('maternity.date')) }} -
    - {{ Form::text('vdrl_date', Carbon\Carbon::parse($existing_maternity_inpatient_data->vdrl_date)->format('d/m/Y') ?? '', ['class' => 'form-control', 'readonly', 'id' => 'datepicker-autoclose3']) }} - -
    -
    -
    - {{ Form::text('hiv_date', Carbon\Carbon::parse($existing_maternity_inpatient_data->hiv_date)->format('d/m/Y') ?? '', ['class' => 'form-control datePicker', 'readonly', 'id' => 'datepicker-autoclose4']) }} - -
    -
    -
    -
    -
    -
    - {{ Form::label('location', __('maternity.location')) }} -
    - -
    -
    -
    -
    - - @php - $existing_hiv_date = \Carbon\Carbon::parse($existing_maternity_inpatient_data->hiv_date); - $currentDate = \Carbon\Carbon::now(); - - $hiv_date_exceeds_three_months = ''; - if (isset($existing_maternity_inpatient_data->hiv_date)) { - if ($existing_hiv_date->diffInMonths($currentDate) >= 3) { - $hiv_date_exceeds_three_months = $existing_hiv_date; - } - } else { - } - - @endphp - - - - - - -
    - - @if (isset($existing_maternity_inpatient_data->hiv_date)) - - @if ($existing_hiv_date->diffInMonths($currentDate) >= 3) - {{--
    IF NOT HAD HIV TEST WITHIN PAST 3 MONTHS SEND TEST SAMPLE -
    --}} - @endif - @else - @endif - -
    - -
    -
    - -
    -
    -
    diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/update_delivery_plan.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/update_delivery_plan.blade.php deleted file mode 100644 index 4b50fdab..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/update_delivery_plan.blade.php +++ /dev/null @@ -1,234 +0,0 @@ -{{-- DELIVERY PLAN INCLUDE FILE --}} - -
    -
    - {{ __('maternity.delivery_plan') }}

    -
    - -
    - -
    - -
    - {{-- person you live with --}} -
    - -
    - -
    -
    - - {{-- transport facility --}} -
    - - - - -
    - - -
    - - -
    - {{-- person to accompany you --}} -
    - -
    - -
    -
    - - {{-- person to look after home --}} -
    - -
    - -
    -
    - - {{-- mother and partner screened for --}} - -
    - {{ Form::label('mother_partner_screened_for', __('maternity.mother_partner_screened_for')) }}
    - - - - - - - - - - - - - - - - - - - -
    - mother_partner_screened_for)) ? 'checked' : '' }}> - - - mother_partner_screened_for)) ? 'checked' : '' }} - id="sickle_cell" value="2" @if (is_array(old('mother_partner_screened_for')) && in_array('2', old('mother_partner_screened_for'))) checked @endif> -   - -
    - mother_partner_screened_for)) ? 'checked' : '' }}> -   - - - mother_partner_screened_for)) ? 'checked' : '' }}> - - {{-- id="hiv" value="hiv" @if (is_array(old('mother_partner_screened_for')) && in_array('hiv', old('mother_partner_screened_for'))) checked @endif --}}>   - - -
    -
    - - {{-- family planning before next pregnancy --}} -
    - -
    - - -
    -
    - -
    - -
    -
    - -
    - -
    -
    - -
    -

    - - - -
    - -
    - -
    - -
    -
    - - {{-- after birth disposal --}} -
    - - - - -
    - -
    - -
    - - -
    -
    - - - -
    - -{{-- END OF DELIVERY PLAN INCLUDE FILE --}} diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/update_gravida_para_abortions.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/update_gravida_para_abortions.blade.php deleted file mode 100644 index 9af53c65..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/update_gravida_para_abortions.blade.php +++ /dev/null @@ -1,47 +0,0 @@ -{{-- upate:aternity gravida fields and other related fields --}} - -
    -
    - {{ Form::label('gravida', __('maternity.gravida')) }} - - -
    -
    - {{ Form::label('para', __('maternity.para')) }} - -
    - -
    - {{ Form::label('abortion', __('maternity.abortion')) }} - -
    - -
    - {{ Form::label('ectopic_pregnancies', __('maternity.ectopic_pregnancies')) }} - -
    - -
    - {{ Form::label('postpartum', __('maternity.post_partum')) }} -
    - - postpartum == 1 ) - {{-- @if (!empty($existing_maternity_inpatient_data->postpartum)) {{ $existing_maternity_inpatient_data->postpartum == '1' ? 'checked' : '' }} @endif --}} - value="1"> -   -    - - postpartum == 0 ) - {{-- @if (!empty($existing_maternity_inpatient_data->postpartum)) {{ $existing_maternity_inpatient_data->postpartum == '0' ? 'checked' : '' }} @endif --}} - value="0">    - - -
    -
    -
    diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/update_mothers_history.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/update_mothers_history.blade.php deleted file mode 100644 index 1484fed9..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/update_mothers_history.blade.php +++ /dev/null @@ -1,448 +0,0 @@ -{{-- maternity: mothers history --}} - -
    -
    -

    {{ __('antenatal.mother_history') }}

    -
    -
    -

    {{ __('antenatal.menstrual_history') }}

    -
    -
    - - -
    -
    - - {{-- cycle length --}} -
    -
    - - -
    -
    - - {{-- length of menses --}} -
    - - -
    - {{ Form::hidden('mother_obs_history_id', $existing_maternity_mother_history->id ?? '', ['id' => - 'mother_obs_history_id']) }} - {{-- {{ Form::label('menses_length', __('antenatal.menses_length')) }} --}} - - {{ Form::number('menses_length', $existing_maternity_mother_history->menses_length ?? '', ['class' => - 'form-control', 'step' => '1']) }} -
    -
    -
    - - {{-- amount --}} -
    -
    - - -
    -
    - - -
    - - - - - - -
    - -
    -
    - -
    - lmp) ? - Carbon\Carbon::parse($existing_maternity_inpatient_data->lmp )->format('d/m/Y') : '' --}} - value="{{ isset($existing_maternity_mother_history->date_discontinued) ? - Carbon\Carbon::parse($existing_maternity_mother_history->date_discontinued )->format('d/m/Y') : '' }}" - > - -
    -
    -
    - -
    -
    - - - -
    -
    - -
    -
    - - -{{-- MEDICAL HISTORY --}} -
    - - {{-- medical history --}} -
    -
    -
    -

    {{ __('antenatal.medical_history') }}

    -
    -
    - - {{ Form::label('medical_presentations', __('antenatal.medical_presentations')) }}
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - {{-- other medical presentations --}} - - - - - - - - -
    - medical_presentations)) ? 'checked' : '' }}>  - - - - medical_presentations)) ? 'checked' : '' }}>  - -
    - {{-- {{ Form::checkbox('medical_presentations[]', 1, false, ['id' => - 'medical_presentations_sti', 'class' => 'form-check-input']) }}  --}} - medical_presentations)) ? 'checked' : '' }}>  - - - -
    - {{-- {{ Form::checkbox('any_medications[]', 1, false, ['id' => 'complications_bleeding', - 'class' => 'form-check-input']) }}  --}} - medical_presentations)) ? - 'checked' : '' }} - id="arv" - value="4" - >  - - -
    - {{-- {{ Form::checkbox('medical_presentations[]', 3, false, ['id' => - 'medical_presentations_asthma', 'class' => 'form-check-input']) }}  --}} - - medical_presentations)) ? - 'checked' : '' }} - value="5" @if (is_array(old('medical_presentations')) && in_array('5', - old('medical_presentations'))) checked @endif>  - - - - {{-- {{ Form::checkbox('medical_presentations[]', 10, false, ['id' => 'complications_tb', - 'class' => 'form-check-input']) }}  --}} - medical_presentations)) ? - 'checked' : '' }} - @if (is_array(old('medical_presentations')) && in_array('6', old('medical_presentations'))) - checked @endif>  - - -
    - medical_presentations)) ? 'checked' : '' }} - @if (is_array(old('medical_presentations')) && in_array('7', old('medical_presentations'))) - checked @endif>  - - - medical_presentations)) ? 'checked' : '' }} - @if (is_array(old('medical_presentations')) && in_array('8', old('medical_presentations'))) - checked @endif>  - -
    - medical_presentations)) ? 'checked' : '' }} - >  - - -

    - - {{-- add other medical presentations :input --}} -
    - -
    - -
    - - - - - {{-- aph and fits --}} - - {{-- history of aph --}} - - - {{-- history of fits --}} - - - - -
    - {{ Form::label('history_of_aph', __('maternity.history_of_aph')) }} -
    - - {{-- yes --}} - history_of_aph == 1) - {{-- @if (!empty($existing_maternity_mother_history?->history_of_aph)) {{ - $existing_maternity_mother_history?->history_of_aph == '1' ? 'checked' : '' }} @endif --}} - value="1">    - - - - {{-- no --}} - history_of_aph == 0) - - value="0">    - - -
    -
    - {{ Form::label('history_aph_details', __('maternity.details')) }} - -
    -
    -
    - {{ Form::label('history_of_fits', __('maternity.history_of_fits')) }} -
    - - {{-- yes --}} - history_of_fits == 1) - {{-- @if (!empty($existing_maternity_mother_history?->history_of_fits)) {{ - $existing_maternity_mother_history?->history_of_fits == '1' ? 'checked' : '' }} @endif --}} - value="1">    - - - - {{-- no --}} - history_of_fits == 0) - {{-- @if (!empty($existing_maternity_mother_history?->history_of_fits)) {{ - $existing_maternity_mother_history?->history_of_fits == '0' ? 'checked' : '' }} @endif --}} - value="0">    - - -
    -
    - {{ Form::label('history_fit_details', __('maternity.fits_details')) }} - -
    -
    -
    - - -
    - - {{-- family history --}} -
    -
    -
    -

    {{ __('antenatal.family_history') }}

    -
    -
    - - - - - - - - - - - - - - - - - - - - - -
    - {{ Form::label('sgbv_risk', __('antenatal.sgbv')) }} -
    - sgbv_risk)) ? 'checked' : '' - }} - value="1" @if (is_array(old('1')) && in_array('1', old('sgbv_risk'))) checked @endif>  - - - -
    - {{-- {{ Form::checkbox('any_medications[]', 2, false, ['id' => 'any_medications_others', 'class' - => 'form-check-input']) }}  --}} - sgbv_risk)) ? 'checked' : '' }} - id="show_other_sgbv_risk_input" value="2">  - - -

    - - {{-- add other medical presentations :input --}} -
    - -
    - - -
    -
    - - - {{-- others --}} -
    - -
    - {{-- {{ Form::label('any_medications',__('afaf')) }}
    --}} - - - {{-- health of husband --}} -

    - - - - - - - - - -
    -
    - {{-- {{ Form::label('husband_health', __('antenatal.husband_health')) }} --}} - -
    - {{-- {{ Form::text('husband_health', '', ['class' => 'form-control', 'id' => - 'husband_health']) }} --}} - -
    -
    -
    -
    -
    - -
    - - {{-- {{ Form::textarea('other_medical_history_comment', '', ['class' => 'form-control', - 'rows' => '4']) }} --}} - - -
    -
    -
    - -
    -
    -
    - -{{-- end maternity: medical history --}} \ No newline at end of file diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/update_past_obstetric_history.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/update_past_obstetric_history.blade.php deleted file mode 100644 index e69de29b..00000000 diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/update_pelvic_examination_and_assessment.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/update_pelvic_examination_and_assessment.blade.php deleted file mode 100644 index 2f99b1c7..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/update_pelvic_examination_and_assessment.blade.php +++ /dev/null @@ -1,178 +0,0 @@ -{{-- pelivic examination and assessement --}} -
    -
    -

    {{ __('antenatal.pelvic_examination_and_assessement') }}

    -
    -
    - -
    -
    -
    - {{ Form::label('vulva', __('antenatal.vulva')) }} - - -
    -
    -
    -
    - {{ Form::label('vagina', __('antenatal.vagina')) }} - - -
    -
    - {{-- cervix --}} -
    -
    - {{ Form::label('cervix', __('antenatal.cervix')) }} - - -
    - -
    -
    -
    - {{ Form::label('dilatation', __('antenatal.dilatation')) }} - - -
    -
    -
    -
    - {{ Form::label('uterine_adnexa', __('antenatal.uterine_adnexa')) }} - - -
    -
    -
    -
    - {{ Form::label('moniliasis', __('antenatal.moniliasis')) }} - - -
    -
    - -
    - -{{-- row-2 --}} -
    - -
    -
    - {{ Form::label('diagonal_conjugate', __('antenatal.diagonal_conjugate')) }} - ( > 11.5/<11.5cm) - - -
    -
    -
    -
    - {{ Form::label('sacrum', __('antenatal.sacrum')) }}
    - - -
    -
    -
    -
    - {{ Form::label('ischial_spinces', __('antenatal.ischial_spinces')) }} - - -
    -
    - {{-- sub pubic angle --}} -
    -
    - {{ Form::label('sub_public_angle', __('antenatal.sub_public_angle')) }} - - -
    -
    - - {{-- ischial_tuberosities --}} -
    -
    - {{ Form::label('ischial_tuberosities', __('antenatal.ischial_tuberosities')) }} - - -
    -
    - -
    -
    - {{ Form::label('pelvic_adequate', __('antenatal.pelvic_adequate')) }} - - -
    -
    - -
    -
    diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/update_surgical_history.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/update_surgical_history.blade.php deleted file mode 100644 index 30ff1cee..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/update_surgical_history.blade.php +++ /dev/null @@ -1,248 +0,0 @@ -{{-- SURGICAL HISTORY --}} - -@if(count($patient_surgeries) > 0) -
    -
    -

    {{ __('antenatal.surgical_history') }}

    -
    -
    - - -
    - -
    - - {{-- surgical history table --}} - - - - - - - - - - - {{-- @foreach ($obstetric_history_details as $obstetric_history) --}} - - - - - @forelse($patient_surgeries as $key => $patient_surgery) - - - - - - - - - @empty - - - - - @endforelse - - - - - {{-- @endforeach --}} - -
    {{ __('antenatal.id') }}{{ __('antenatal.previous_surgical_procedure') }}{{ __('antenatal.date') }}{{ __('antenatal.performed_by') }}{{ __('antenatal.diagnosis') }}
    - {{ $key + 1 }} - - - {{ $patient_surgery->procedure_name }} - - @if ($patient_surgery->date_surgery_completed) - {{ streamline_date($patient_surgery->date_surgery_completed) }} - @endif - - @if (!empty($patient_surgery->first_name)) - {{ $patient_surgery->first_name }} - @else - N/A - @endif - - @if (!empty($patient_surgery->last_name)) - {{ $patient_surgery->last_name }} - @endif - - - @php - - $dianoses = []; - $dianoses[] = $patient_surgery->primary_diagnosis; - // $other_diagnoses = unserialize($patient_surgery->primary_diagnosis); - // foreach ($other_diagnoses as $key => $value) { - // if (!empty($value)) { - // $dianoses[] = $value; - // } - // } - @endphp - - -
      - - @php - $checklist_array = @unserialize($patient_surgery->other_diagnoses); - echo '
    • ' . $diagnoses_patient[$patient_surgery->primary_diagnosis] . '
    • '; - - if (is_array($checklist_array)) { - for ($i = 0; $i < count($checklist_array); $i++) { - if ($checklist_array[$i] != '') { - echo '
    • ' . $diagnoses_patient[$checklist_array[$i]] . '
    • '; - } - } - } - @endphp - - - {{-- @foreach ($dianoses as $key => $value) -
    • {{ $diagnoses_patient[$value] }}
    • - @endforeach --}} - -
    - - -
    - No surgery records available -
    - - {{-- end surgical history table --}} - -
    -
    -@endif - - - -@php - - - $uterine_surgeries = !empty($existing_maternity_mother_history->uterine_surgeries) - ? json_decode($existing_maternity_mother_history->uterine_surgeries, true) - : []; - $other_surgeries = !empty($existing_maternity_mother_history->other_surgeries) - ? json_decode($existing_maternity_mother_history->other_surgeries, true) - : []; - -@endphp - -
    -
    - - - - - - - - - @if (!empty($uterine_surgeries)) - @foreach ($uterine_surgeries as $key => $uterine_operation) - - - - - - - @endforeach - @else - - - - - - - @endif - -
    {{ __('antenatal.uterus_operations') }}{{ __('antenatal.date') }}{{ __('antenatal.facility_name') }}
    - {{-- {{ Form::select('uterus_operations_name[]', $uterus_operations, $uterine_operation['name'] ?? '', ['class' => 'form-control uterus_operations', 'id' => 'uterus_operations_name_1']) }} --}} - {{ Form::text('uterus_operations_name[]', $uterine_operation['name'], ['class' => 'form-control uterus_operations', 'id' => 'uterus_operations_name_1']) }} - - -
    - {{ Form::text('uterus_operations_date[]', $uterine_operation['date'], ['class' => 'form-control fractures', 'id' => 'other_operations_date_1', 'placeholder' => 'When?']) }} - - {{-- {{ Form::text('uterus_operations_date[]','',['class' => 'form-control', 'id'=>'uterus_operation_date_picker', 'placeholder'=>'When?']) }} --}} - -
    -
    - {{ Form::text('uterus_operations_facility_name[]', $uterine_operation['facility_name'], ['class' => 'form-control null_compulsory', 'id' => 'uterus_operations_facility_name_1']) }} -
    - {{-- {{ Form::select('uterus_operations_name[]', $uterus_operations, '', ['class' => 'form-control uterus_operations', 'id' => 'uterus_operations_name_1']) }} --}} - {{ Form::text('uterus_operations_name[]', '', ['class' => 'form-control uterus_operations', 'id' => 'uterus_operations_name_1']) }} - - -
    - {{ Form::text('uterus_operations_date[]', '', ['class' => 'form-control fractures ', 'id' => 'other_operations_date_1', 'placeholder' => 'When?']) }} -
    -
    - {{ Form::text('uterus_operations_facility_name[]', '', ['class' => 'form-control null_compulsory', 'id' => 'uterus_operations_facility_name_1']) }} -
    - {{ __('antenatal.add_uterus_operations_row') }} -
    -
    - - - - - - - - - @if (!empty($other_surgeries)) - @foreach ($other_surgeries as $key => $other_surgery) - - - - - - - - @endforeach - @else - - - - - - - @endif - -
    {{ __('antenatal.operations') }}{{ __('antenatal.date') }}{{ __('antenatal.facility_name') }}
    - {{ Form::text('other_operations_name[]', $other_surgery['name'], ['class' => 'form-control null_compulsory', 'id' => 'other_operations_name_1']) }} - -
    - {{ Form::text('other_operations_name_date[]', $other_surgery['date'], ['class' => 'form-control fractures', 'id' => 'other_operations_date_1', 'placeholder' => 'When?']) }} -
    -
    - {{ Form::text('other_operations_name_facility_name[]', $other_surgery['facility_name'], ['class' => 'form-control null_compulsory', 'id' => 'other_operations_facility_name_1']) }} -
    - {{ Form::text('other_operations_name[]', '', ['class' => 'form-control null_compulsory', 'id' => 'other_operations_name_1']) }} - -
    - {{ Form::text('other_operations_name_date[]', '', ['class' => 'form-control fractures', 'id' => 'other_operations_date_1', 'placeholder' => 'When?']) }} -
    -
    - {{ Form::text('other_operations_name_facility_name[]', '', ['class' => 'form-control null_compulsory', 'id' => 'other_operations_facility_name_1']) }} -
    - {{ __('antenatal.add_other_operations_row') }} -
    -

    diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/update_this_pregnancy.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/update_this_pregnancy.blade.php deleted file mode 100644 index f389dfac..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/includes_update/update_this_pregnancy.blade.php +++ /dev/null @@ -1,662 +0,0 @@ -
    -
    -

    {{ __('maternity.this_pregnancy') }}

    -
    - -
    - -
    -
    - - {{-- row --}} -
    - {{-- col-1 --}} -
    - {{ Form::label('lmp', __('maternity.lmp')) }} -
    - - - {{-- {{ Form::text('lmp', isset($existing_maternity_inpatient_data->lmp) ? Carbon\Carbon::parse($existing_maternity_inpatient_data->lmp )->format('d/m/Y') : '', ['class' => 'form-control compulsory', 'required', 'readonly', 'id' => 'datepicker-autoclose5']) }} --}} - {{ Form::text('lmp', isset($existing_maternity_inpatient_data->lmp) ? Carbon\Carbon::parse($existing_maternity_inpatient_data->lmp )->format('d/m/Y') : '', ['class' => 'form-control compulsory', 'required', 'readonly', 'id' => 'lmp']) }} - - -
    -
    - {{-- col --}} -
    - {{ Form::label('accuracy', __('maternity.accuracy')) }} - {{ Form::select('accuracy', $accuracies, $existing_maternity_inpatient_data->accuracy ?? '', ['class' => 'form-control col-sm-12 compulsory', 'required']) }} -
    -
    - {{-- {{ Form::label('weeks_of_amenorrhoea', __('maternity.number_of_weeks_pregnant')) }} --}} - {{-- - - --}} - -
    - {{ Form::label('weeks_of_amenorrhoea', __('antenatal.woa_weeks')) }} -
    {!! $existing_maternity_inpatient_data->weeks_of_amenorrhoea ?? '' !!}
    - - {{ Form::hidden('weeks_of_amenorrhoea', $existing_maternity_inpatient_data->weeks_of_amenorrhoea ?? '', ['id' => 'weeks_of_amenorrhoea']) }} -
    -
    - - -
    -
    - - {{ Form::label('edd', __('maternity.edd')) }} -
    - {{-- --}} - {{ Form::text('edd', isset($existing_maternity_inpatient_data->edd) ? Carbon\Carbon::parse($existing_maternity_inpatient_data->edd )->format('d/m/Y') : '', [ - 'class' => 'form-control compulsory', - 'required', - 'readonly', - 'id' => 'edd', - ]) }} - {{-- {{ Form::text('edd', empty($existing_maternity_inpatient_data->edd) ? '' : Carbon\Carbon::parse($existing_maternity_inpatient_data->edd)->format('d/m/Y'), ['class' => 'form-control compulsory', 'required', 'readonly', 'id' => 'edd']) }} --}} - - -
    -
    - - - -
    - {{-- end row --}} - -
    - -
    -
    - {{ Form::label('refferal', __('maternity.us_scan_edd')) }} -
    - {{-- {{ Form::text('scan_edd', Carbon\Carbon::parse($existing_maternity_inpatient_data->scan_edd)->format('d/m/Y'), ['class' => 'form-control compulsory', 'required', 'readonly', 'id' => 'datepicker-autoclose7']) }} - --}} - - - -
    -
    -
    - - -
    -
    - {{ Form::label('gestation_from_scan_view', __('maternity.current_gestation_from_scan')) }} - -
    -
    -
    - -
    - {{ Form::label('refferal', __('maternity.referral_in_from')) }} - {{ Form::select('refferal', $referrals, $existing_maternity_inpatient_data->referral_from ?? '', ['class' => 'form-control col-sm-12 compulsory', 'required', 'id' => 'referral']) }} -
    - - {{ __('maternity.add_new_referral') }} - -
    -
    -
    - -
    - -
    - - {{ Form::label('pregnancy_complications', __('antenatal.complications')) }}
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - pregnancy_complications)) ? 'checked' : '' }} - id="weight_loss" value="1" @if (is_array(old('pregnancy_complications')) && in_array('1', old('pregnancy_complications'))) checked @endif>  - - - pregnancy_complications)) ? 'checked' : '' }} - id="fever_one_month" value="2" - @if (is_array(old('pregnancy_complications')) && in_array('2', old('pregnancy_complications'))) checked @endif>  - -
    - pregnancy_complications)) ? 'checked' : '' }} - @if (is_array(old('pregnancy_complications')) && in_array('3', old('pregnancy_complications'))) checked @endif>  - - - pregnancy_complications)) ? 'checked' : '' }} - value="4" @if (is_array(old('pregnancy_complications')) && in_array('4', old('pregnancy_complications'))) checked @endif>  - -
    - pregnancy_complications)) ? 'checked' : '' }} - @if (is_array(old('pregnancy_complications')) && in_array('5', old('pregnancy_complications'))) checked @endif>  - - - pregnancy_complications)) ? 'checked' : '' }}>  - -
    - pregnancy_complications)) ? 'checked' : '' }} - id="show_other_pregnancy_complications_input" - value="7">  - - -

    - - {{-- add other pregnancy complications :input --}} -
    - -
    -
    - - -
    - -
    -
    -
    -
    - {{ Form::label('iufd', __('maternity.iufd')) }}
    - - {{-- {{ Form::radio('iufd', 1, false, ['required', 'id' => 'show_iufd_alert_div']) }} - {{ __('maternity.yes') }}    - {{ Form::radio('iufd', 0, false, ['required', 'id' => 'hide_iufd_alert_div']) }} - {{ __('maternity.no') }} --}} - - {{-- yes --}} - iufd)) {{ $existing_maternity_inpatient_data->iufd == '1' ? 'checked' : '' }} @endif --}} - @checked($existing_maternity_inpatient_data->iufd == 1) - value="1">    - - - - {{-- no --}} - iufd == 0) - {{-- @if (!empty($existing_maternity_inpatient_data->iufd)) {{ $existing_maternity_inpatient_data->iufd == '0' ? 'checked' : '' }} @endif --}} - > -    - - - -
    -
    - -
    -
    - {{ Form::label('born_before_arrival', __('maternity.born_before_arrival')) }}
    - {{-- yes --}} - born_before_arrival == 1) - {{-- @if (!empty($existing_maternity_inpatient_data->born_before_arrival)) {{ $existing_maternity_inpatient_data->born_before_arrival == '1' ? 'checked' : '' }} @endif --}} - value="1">    - - - - {{-- no --}} - born_before_arrival == 0) - {{-- @if (!empty($existing_maternity_inpatient_data->born_before_arrival)) {{ $existing_maternity_inpatient_data->born_before_arrival == '0' ? 'checked' : '' }} @endif --}} - value="0">    - - - -
    -
    - -
    -
    - {{ Form::label('progress', __('maternity.progress')) }} - {{ Form::select('progress', $maternity_progress, $existing_maternity_inpatient_data->progress ?? '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - - {{-- recomendation --}} -
    - {{-- recomendation --}} -
    - {{ Form::label('delivery_recomendation', __('maternity.recomendation_of_delivery')) }}
    - {{ Form::textarea('delivery_recomendation', $existing_maternity_inpatient_data->delivery_recomendation ?? '', ['class' => 'form-control', 'rows' => '4']) }} - {{-- --}} - -
    -
    - -
    - - -
    - - - -
    - {{-- physical examination --}} -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - physical_examination)) ? 'checked' : '' }} - value="1" @if (is_array(old('physical_examination')) && in_array('1', old('physical_examination'))) checked @endif>  - - -
    - -
    - -
    - physical_examination)) ? 'checked' : '' }} - value="2" @if (is_array(old('physical_examination')) && in_array('2', old('physical_examination'))) checked @endif>  - - - {{-- legs input --}} -
    - -
    -
    - physical_examination)) ? 'checked' : '' }}>  - - - {{-- add heart deformity :input --}} -
    - -
    -
    - physical_examination)) ? 'checked' : '' }} - value="4" @if (is_array(old('physical_examination')) && in_array('4', old('physical_examination'))) checked @endif>  - - - {{-- add lungs details :input --}} -
    - -
    - -
    - physical_examination)) ? 'checked' : '' }} - value="5" @if (is_array(old('physical_examination')) && in_array('5', old('physical_examination'))) checked @endif>  - - - {{-- teeth input --}} -
    - -
    -
    - physical_examination)) ? 'checked' : '' }} - id="show_other_physical_examination_input" value="6">  - - - {{-- add other physical_examination :input --}} -
    - -
    -
    - -
    - -
    - -
    - - {{-- row 1 --}} - - - - - - - - - {{-- row 2 --}} - - - - - - - - - {{-- row 3 --}} - - - - - - - - - {{-- row 4 --}} - - - - - - - - - {{-- row 5 --}} - - - - - - - - - {{-- row 6 --}} - - - - - - - - - {{-- row 7 --}} - - - - - - - - - {{-- row 8 --}} - - - - - - - - - -
    - obstetric_risk_factors)) ? 'checked' : '' }} - id="history_aph_pregnancy" value="1" - @if (is_array(old('obstetric_risk_factors')) && in_array('1', old('obstetric_risk_factors'))) checked @endif>  - - - obstetric_risk_factors)) ? 'checked' : '' }} - id="epilepsy" value="2" @if (is_array(old('obstetric_risk_factors')) && in_array('2', old('obstetric_risk_factors'))) checked @endif>  - - - obstetric_risk_factors)) ? 'checked' : '' }} - id="severe_pre_eclampsia" value="3" - @if (is_array(old('obstetric_risk_factors')) && in_array('3', old('obstetric_risk_factors'))) checked @endif>  - -
    - obstetric_risk_factors)) ? 'checked' : '' }} - id="history_convulsion_pregnancy" value="4" - @if (is_array(old('obstetric_risk_factors')) && in_array('4', old('obstetric_risk_factors'))) checked @endif>  - - - obstetric_risk_factors)) ? 'checked' : '' }} - @if (is_array(old('obstetric_risk_factors')) && in_array('5', old('obstetric_risk_factors'))) checked @endif>  - - - obstetric_risk_factors)) ? 'checked' : '' }} - @if (is_array(old('obstetric_risk_factors')) && - in_array('6', old('obstetric_risk_factors'))) checked @endif>  - -
    - obstetric_risk_factors)) ? 'checked' : '' }} - @if (is_array(old('obstetric_risk_factors')) && in_array('7', old('obstetric_risk_factors'))) checked @endif>  - - - obstetric_risk_factors)) ? 'checked' : '' }} - @if (is_array(old('obstetric_risk_factors')) && in_array('8', old('obstetric_risk_factors'))) checked @endif>  - - - obstetric_risk_factors)) ? 'checked' : '' }} - @if (is_array(old('obstetric_risk_factors')) && in_array('9', old('obstetric_risk_factors'))) checked @endif>  - -
    - obstetric_risk_factors)) ? 'checked' : '' }}>  - - - obstetric_risk_factors)) ? 'checked' : '' }} - @if (is_array(old('obstetric_risk_factors')) && in_array('11', old('obstetric_risk_factors'))) checked @endif>  - - - obstetric_risk_factors)) ? 'checked' : '' }} - id="asthma" value="12">  - -
    - - obstetric_risk_factors)) ? 'checked' : '' }}>  - - - - obstetric_risk_factors)) ? 'checked' : '' }}>  - - - obstetric_risk_factors)) ? 'checked' : '' }}>  - -
    - obstetric_risk_factors)) ? 'checked' : '' }}>  - - - obstetric_risk_factors)) ? 'checked' : '' }}>  - - - obstetric_risk_factors)) ? 'checked' : '' }} - id="group_b_streptococcus_colonization" value="18">  - -
    - obstetric_risk_factors)) ? 'checked' : '' }} - @if (is_array(old('obstetric_risk_factors')) && in_array('19', old('obstetric_risk_factors'))) checked @endif>  - - - obstetric_risk_factors)) ? 'checked' : '' }} - @if (is_array(old('obstetric_risk_factors')) && in_array('20', old('obstetric_risk_factors'))) checked @endif>  - - - obstetric_risk_factors)) ? 'checked' : '' }} - @if (is_array(old('obstetric_risk_factors')) && in_array('21', old('obstetric_risk_factors'))) checked @endif>  - -
    - - - obstetric_risk_factors)) ? 'checked' : '' }}>  - - - - - obstetric_risk_factors)) ? 'checked' : '' }} - @if (is_array(old('obstetric_risk_factors')) && in_array('23', old('obstetric_risk_factors'))) checked @endif>  - - - obstetric_risk_factors)) ? 'checked' : '' }} - id="show_other_obstetric_risk_factors_input" value="24">  - - - - - {{-- add other obstetric risk factor:input --}} -
    - -
    -
    -
    -
    - - -
    diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/inpatient_sheet.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/inpatient_sheet.blade.php deleted file mode 100755 index 35a96505..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/inpatient_sheet.blade.php +++ /dev/null @@ -1,1807 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') - - - - -
    -
    -

    {{ __('inpatient.maternity_admission') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - - {{-- previous consultations --}} - @if (count($previous_consultation_inpatient_info) > 0) -
    -
    -
    - @include('maternity::maternity.includes.previous_admissions') - -
    -
    -
    - @endif - - -
    -
    -
    - -

    {{ __('antenatal.maternity_admission') }} -

    - - - - {{ Form::open(['route' => 'maternity.store']) }} - - -
    - {{-- primary diagnosis --}} -
    -
    - - - - - - - - - - - - - - - - - - -
    #{{ __('inpatient.primary_diagnosis') }}{{ __('inpatient.prompt') }}{{ __('inpatient.references') }}
    -
    - {{-- {{ Form::select('primary_diagnosis', $diagnoses, $latest_existing_anc_clinic_followup->primary_diagnosis ?? '', ['id' => 'primary_diagnosis', 'class' => 'form-control col-sm-12 compulsory', 'required']) }} --}} - {{ Form::select('primary_diagnosis', $diagnoses,'', ['id' => 'primary_diagnosis', 'class' => 'form-control col-sm-12 compulsory', 'required']) }} -
    -
    -
     
    -
    -
     
    -
    -
    - - {{-- other diagnoses --}} - @php - $other_diagnoses = explode(',', $latest_existing_anc_clinic_followup->other_diagnoses ?? ''); - $counter=2; - @endphp - -
    - - - - - - - - - - - - - - - - - - - {{-- Pick existing data --}} - - {{-- @if(empty($other_diagnoses)) - - - - - - - - - @else - @foreach($other_diagnoses as $diagnosis) - @if($diagnosis != "") - - - - - - - @endif - @php $counter++; @endphp - @endforeach - - - - - - - - - @endif --}} - - {{--End of Pick existing data --}} - - -
    #{{ __('inpatient.other_diagnosis') }}{{ __('inpatient.prompt') }}{{ __('inpatient.references') }}
    - {{ Form::select('other_diagnosis[]', $diagnoses, '', ['class' => 'form-control col-sm-12 sec_d', 'id' => 'other_diagnosis']) }} - -
     
    -
    -
     
    -
    - {{ Form::select('other_diagnosis[]', $diagnoses, '', ['class' => 'form-control col-sm-12 sec_d', 'id' => 'other_diagnosis']) }} - -
     
    -
    -
     
    -
    - {{ Form::select('other_diagnosis[]', $diagnoses, $diagnosis, ['class' => 'sec_d form-control col-sm-12']) }} -
    {{ is_object($diagnoses_all->firstWhere('id',$diagnosis)) ? $diagnoses_all->firstWhere('id',$diagnosis)->prompts : '' }} 
    {{ is_object($diagnoses_all->firstWhere('id',$diagnosis)) ? $diagnoses_all->firstWhere('id',$diagnosis)->reference_names : '' }} 
    - {{ Form::select('other_diagnosis[]', $diagnoses, '', ['class' => 'sec_d form-control col-sm-12']) }} -
     
     
    -
    - {{ __('inpatient.add_row') }} - {{ __('inpatient.delete_row') }} -
    - - - - - - {{-- symptoms sidebar --}} -
    -
    -
    - -
    -
    -
    -
    - - - - - - - - - @if ($triage) - @php - $symptoms_explode = - explode(',', $triage->symptoms) ?? ''; - $duration_explode = explode( - ',', - $triage->symptom_duration ?? '', - ); - @endphp - @for ($i = 0; $i < count($symptoms_explode); $i++) - - - - - @endfor - @else - - - - @endif - -
    {{ __('inpatient.symptoms') }}{{ __('inpatient.duration') }}
    {{ $symptoms[$symptoms_explode[$i]] ?? '' }}{{ isset($duration_explode[$i]) ? $duration_explode[$i] : '' }} -
    - {{ __('inpatient.no_symptoms_triage') }} -
    -
    -
    -
    -
    -
    - - - - - - - - - - @if (count($opd_investigations) > 0) - @for ($i = 0; $i < count($opd_investigations['name']); $i++) - - - - - - @endfor - @else - - - - @endif - -
    {{ __('inpatient.name') }}{{ __('inpatient.value') }}{{ __('inpatient.comment') }}
    {{ $opd_investigations['name'][$i] }}{{ $opd_investigations['value'][$i] }}{{ $opd_investigations['comment'][$i] }}
    {{ __('inpatient.no_opd_invs') }}
    -
    -
    -
    -
    -
    - - - - - - - - - - @if (count($ward_investigations) > 0) - @for ($i = 0; $i < count($ward_investigations['name']); $i++) - - - - - - @endfor - @else - - - - @endif - -
    {{ __('inpatient.name') }}{{ __('inpatient.value') }}{{ __('inpatient.comment') }}
    {{ $ward_investigations['name'][$i] }}{{ $ward_investigations['value'][$i] }}{{ $ward_investigations['comment'][$i] }}
    {{ __('inpatient.no_ward_invs') }}
    -
    -
    -
    -
    -
    -
    -
    - > {{ __('inpatient.historical_investigations') }} - > - {{ __('inpatient.order_investigations') }} -
    -
    -
    - - {{-- gravida , para , abortions --}} - @include('maternity::maternity.includes.gravida_para_abortions') - -
    -
    -

    {{ __('antenatal.past_obstetric_history') }}

    -
    - -
    - - {{-- past obstetrict history --}} - @if ($obstetric_history_details->count() > 0) -
    -
    -
    - -
    -
    - - -
    -
    - - - - - - - - - - - - - {{-- --}} - - - - - - - - - @foreach ($obstetric_history_details as $obstetric_history) - - @php - $children = []; - if (!empty($obstetric_history->children)) { - $children = json_decode( - $obstetric_history->children, - ); - } - @endphp - - - - - - - - - - - - @forelse($children as $key => $child) - - - - - - - @empty - {{-- - - - - --}} - @endforelse - - {{-- --}} - {{-- --}} - {{-- --}} - @endforeach - -
    - {{ __('antenatal.past_obstetric_history') }} -
    {{ __('antenatal.date') }}{{ __('antenatal.gestation') }} Weeks {{ __('antenatal.outcome') }} Delivery Type ComplicationsPuerperiumChildren details{{ __('antenatal.name') }}{{ __('antenatal.patient_number') }}{{ __('antenatal.comments') }}
    - @if (!empty($obstetric_history->obstetric_date)) - {{ streamline_date($obstetric_history->obstetric_date) }} - @else - @endif - {{-- {{ streamline_date($obstetric_history->obstetric_date) }} --}} - - - {{ $obstetric_history->gestation ?? '' }} - - @if (!empty($obstetric_history->outcome)) - {{ isset($anc_outcomes[$obstetric_history->outcome]) ? $anc_outcomes[$obstetric_history->outcome] : '' }} - @else - @endif - - {{-- {{ $obstetric_history->delivery_type ?? '' }} --}} - @if (isset($obstetric_history->delivery_type)) - @if ($obstetric_history->delivery_type == 1) - {{ __('antenatal.vaginal_delivery') }} - @elseif($obstetric_history->delivery_type == 2) - {{ __('antenatal.vacuum_delivery') }} - @elseif($obstetric_history->delivery_type == 3) - {{ __('antenatal.forceps_delivery') }} - @elseif($obstetric_history->delivery_type == 4) - {{ __('antenatal.c_section') }} - @elseif($obstetric_history->delivery_type == 5) - {{ __('antenatal.vbac') }} - @else - @endif - @endif - - - - - @if (isset($obstetric_history->pregnancy_complication)) - @if ($obstetric_history->pregnancy_complication == 1) - {{ __('antenatal.retained_placenta') }} - @elseif($obstetric_history->pregnancy_complication == 2) - {{ __('antenatal.eclampsia') }} - @elseif($obstetric_history->pregnancy_complication == 3) - {{ __('antenatal.pph') }} - @else - @endif - @endif - - {{ $obstetric_history->puerperium ?? '' }} -
    {{ $child->name }} {{ $child->patient_number }} {{ $child->health_condition }}
    - @if (!empty($children)) -
      - @foreach ($children as $child) -
    1. - {{ $child->name }}
    2. - @endforeach -
    - @else - - @endif -
    - @if (!empty($children)) -
      - @foreach ($children as $child) -
    1. - @if (!empty($child->patient_number)) - {{ $child->patient_number }} - @else - - @endif -
    2. - @endforeach - -
    - @else - - @endif -
    - @if (!empty($children)) -
      - @foreach ($children as $child) -
    1. - @if (!empty($child->health_condition)) - {{ $child->health_condition }} - @else - - @endif -
    2. - @endforeach -
    - @else - - @endif -
    -
    -
    - - -
    -
    -

    -
    -
    -
    - @else - {{-- No obstetric history --}} - @endif - - - - - -
    -
    -
    -
    - {{ Form::label('obstetric_date', __('antenatal.date')) }} -
    - {{ Form::text('pregnancy_1_obstetric_date', '', ['class' => 'form-control obstetric_date', 'id' => 'datepicker-autoclose1']) }} - -
    -
    -
    -
    - {{ Form::label('gestation', __('antenatal.gestation')) }} -
    - -
    -
    -
    -
    - {{ Form::label('outcome', __('antenatal.outcome')) }} -
    - {{ Form::select('pregnancy_1_obstetric_outcome', $anc_outcomes, '', ['class' => 'form-control col-sm-12 ', 'id' => 'pregnancy_1_obstetric_outcome', 'onchange' => 'abortion_outcome(this.id)']) }} -
    -
    - - -
    - - - -
    - -
    -
    - -
    - - - - - - {{-- delivery plan --}} - @include('maternity::maternity.includes.delivery_plan') - - {{-- mothers history --}} - @include('maternity::maternity.includes.mothers_history') - - {{-- surgical history --}} - @include('maternity::maternity.includes.surgical_history') - {{-- blood transfusion --}} - @include('maternity::maternity.includes.blood_transfusion') - - {{-- pelvic examination and assesement --}} - @include('maternity::maternity.includes.pelvic_examination_and_assessment') - - {{-- this pregnancy --}} - @include('maternity::maternity.includes.this_pregnancy') - - {{-- This pregnancy --}} - -
    -
    -
    -
    -
    -
    - - {{ Form::button(__('maternity.save_and_complete'), ['type' => 'submit', 'value' => 'submit_maternity_admission', 'name' => 'submit-btn', 'id' => 'submit-btn', 'class' => 'btn btn-success']) }} - -
    -
    -
    - -
    -
    - {{ Form::hidden('pregnancy_number', 0, ['id' => 'pregnancy_number']) }} - {{ Form::close() }} -
    -
    -
    - - - -@endsection - -{{-- scrips --}} -@push('scripts') - - - - - - - {{-- add and delete child row --}} - - - {{-- family planningmethods searchable select2 --}} - - - {{-- family planning methods --}} - - - {{-- additional_text_box_inputs file --}} - - - {{-- previous consultations script with expandable row of details --}} - {{-- --}} - - - {{-- pick previous admissions // pick corresponding css --}} - - - - - {{-- --}} - - - - - {{-- display alert if hiv_date is greater or equal to 3 months ago --}} - - - - - - - - - - - - - {{-- clear puerperium if fresh SB is selected --}} - - - {{-- updated scripts --}} - - - - - - {{-- display section of previous consultation details on button click --}} - - - - - - - - - {{-- other checkbox values --}} - - - {{-- w: add blood transfusion row --}} - -@endpush diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/inpatient_sheet_newfields.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/inpatient_sheet_newfields.blade.php deleted file mode 100755 index 5172f578..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/inpatient_sheet_newfields.blade.php +++ /dev/null @@ -1,730 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('inpatient.inpatient_sheet') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    -
    -
    - MATERNITY ADMISSION

    - {{ Form::open(['route' => 'maternity.store']) }} - - {{-- primary diagnosis and other diagnosis --}} - @include('maternity::maternity.includes.diagnosis') - - {{-- gravida_para_abortion_fields --}} - @include('maternity::maternity.includes.gravida_para_abortions') - - - {{-- PAST OBSTETRIC HISTORY --}} - @include('maternity::maternity.includes.past_obstetric_history') - - {{-- START MOTHERS HISTORY --}} - @include('maternity::maternity.includes.mothers_history') - - {{-- medical history --}} - @include('maternity::maternity.includes.medical_history') - - {{-- gynacology history --}} - @include('maternity::maternity.includes.gynacology_history') - - {{-- blodd group --}} - @include('maternity::maternity.includes.blood_transfusion') - - {{-- Pelvic Examination & Assessment --}} - @include('maternity::maternity.includes.pelvic_examination_and_assessment') - - - {{-- this pregnancy --}} - @include('maternity::maternity.includes.this_pregnancy') - - - - - - {{-- submit button --}} -
    -
    - {{ Form::button(__('maternity.submit_form'), ['type' => 'submit', 'value' => 'submit_maternity_admission', 'name' => 'submit-btn', 'class' => 'btn btn-success', 'style' => 'float:right;']) }} -
    -
    - - {{ Form::close() }} -
    -
    -
    - - - -@endsection - -{{-- scrips --}} -@push('scripts') - - - - - - - {{-- add and delete child row --}} - - - {{-- family planningmethods searchable select2 --}} - - - {{-- additional input containers on checkbox select --}} - - - - - - {{-- end of additional input containers on checkbox select --}} - - - - {{-- updated scripts --}} - -@endpush diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/print/print_maternity_admission_details_pdf.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/print/print_maternity_admission_details_pdf.blade.php deleted file mode 100755 index dc25186e..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/print/print_maternity_admission_details_pdf.blade.php +++ /dev/null @@ -1,80 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Stre@mline') }} - - - - - - - - - - {{--
    --}} - - -
    - - - - @include('layouts.header_pdf_print') - - - - {{-- maaternity admission details --}} - @include('maternity::maternity.includes.maternity_admission_details') - - @if (is_add_stamp_feature_enabled() && !empty($hospital_info->stamp)) - - - - - - -
    - {{ $hospital_info->name }} stamp -
    - @endif - - - - {{--
    --}} -
    - - - diff --git a/docker/statistics/Modules/Maternity/Resources/views/maternity/print_delivery_record_details.blade.php b/docker/statistics/Modules/Maternity/Resources/views/maternity/print_delivery_record_details.blade.php deleted file mode 100644 index bf78faa4..00000000 --- a/docker/statistics/Modules/Maternity/Resources/views/maternity/print_delivery_record_details.blade.php +++ /dev/null @@ -1,441 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Streamline') }} - - - - - - - - - - - -
    - @php - $hospital_information = \Streamline\Models\HospitalInformation::find(1); - @endphp - - @if(is_null($hospital_information->pdf_print_header)) - {{ $hospital_information->name }} Logo -

    - {{ $hospital_information->name . ' | ' . $hospital_information->phone_number . ' | ' . - $hospital_information->email . ' | ' . $hospital_information->address . ' ' . - $hospital_information->country }} -

    -

    {{ __('maternity.delivery_of_episode_started') }} : {{ streamline_date(get_name($episode_id, 'id', 'created_at', 'patient_episodes')) }}

    - @else - Responsive image - @endif -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('maternity.patient_number') }}{{ $patient_number }}
    {{ __('maternity.foetal_number') }}{{ $delivery_record_details->foetal_number }}
    {{ __('maternity.blood_loss') }}{{ $delivery_record_details->blood_loss }} (mls)
    {{ __('maternity.blood_loss_measurement') }}{{ $delivery_record_details->bloodloss_measurement }}
    {{ __('maternity.triage_done_on') }}
    -
    -
    - - - - - - - - @foreach($babies as $baby) - - - - - @endforeach - -
    - {{ __('maternity.baby_record_on') }} Stre@mline -
    {{ $baby->number }}{{ $baby->first_name." ".$baby->last_name }}
    -
    -
    -
    -
    - - - - - - @if($delivery_record_details->foetal_number == 2) - - @elseif ($delivery_record_details->foetal_number == 3) - - - @endif - - - - @php $foetal_number = $delivery_record_details->foetal_number; @endphp - - - @php - $date_of_birth_array = explode(",", $delivery_record_details->date_of_birth); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $delivery_time_array = explode(",", $delivery_record_details->delivery_time); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $duration_first_array = explode(",", $delivery_record_details->duration_1); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $duration_second_stage_array = explode(",", $delivery_record_details->duration_2); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - @php - $duration2_in_hrs_and_mins = explode("and", $duration_second_stage_array[$x]); - @endphp - - @endfor - - - - @php - $duration_third_stage_array = explode(",", $delivery_record_details->duration_3); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - @php - $duration3_in_hrs_and_mins = explode("and", $duration_third_stage_array[$x]); - @endphp - - @endfor - - - - @php - $delivered_by_cadre_array = explode(",", $delivery_record_details->delivered_by_cadre); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $delivered_by_name_array = explode(",", $delivery_record_details->delivered_by_name); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $supervised_by_array = explode(",", $delivery_record_details->supervised_by); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $mode_of_delivery_array = explode(",", $delivery_record_details->mode_of_delivery); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $indication_for_cs_array = explode(",", $delivery_record_details->indication_for_cs); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $location_of_delivery_array = explode(",", $delivery_record_details->location_of_delivery); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $resuscitation_airway_array = explode(",", $delivery_record_details->resuscitation_airway); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $resuscitation_suction_array = explode(",", $delivery_record_details->resuscitation_suction); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $delivery_comments_array = explode(",", $delivery_record_details->delivery_comments); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - -
    {{ __('maternity.baby') }} 1{{ __('maternity.baby') }} 2{{ __('maternity.baby') }} 2{{ __('maternity.baby') }} 3
    {{ __('maternity.date_of_birth') }}{{ $date_of_birth_array[$x] }}
    {{ __('maternity.delivery_time') }}{{ $delivery_time_array[$x] }}
    {{ __('maternity.duration_1st') }}{{ $duration_first_array[$x] }} {{ __('maternity.hours') }}
    {{ __('maternity.duration_2nd') }}{{ $duration2_in_hrs_and_mins[0] }} {{ __('maternity.hours') }} {{ $duration2_in_hrs_and_mins[1] }} {{ __('maternity.minutes') }}
    {{ __('maternity.duration_3rd') }}{{ $duration3_in_hrs_and_mins[0] }} {{ __('maternity.hours') }} {{ $duration2_in_hrs_and_mins[1] }} {{ __('maternity.minutes') }}
    {{ __('maternity.delivered_by_cadre') }}{{ $delivered_by_cadre_array[$x] == 1 ? "Staff" : "Student" }}
    {{ __('maternity.delivered_by_name') }}{{ isset($users[$delivered_by_name_array[$x]]) ? $users[$delivered_by_name_array[$x]] : '' }}
    {{ __('maternity.supervised_by') }}{{ isset($users[$supervised_by_array[$x]]) ? $users[$supervised_by_array[$x]] : '' }}
    {{ __('maternity.mode_of_delivery') }}{{ isset($delivery_modes[$mode_of_delivery_array[$x]]) ? $delivery_modes[$mode_of_delivery_array[$x]] : '' }}
    {{ __('maternity.indication_for_cs') }}{{ $indication_for_cs_array[$x] }}
    {{ __('maternity.location_of_delivery') }}{{ isset($delivery_locations[$location_of_delivery_array[$x]]) ? $delivery_locations[$location_of_delivery_array[$x]] : '' }}
    {{ __('maternity.resuscitation_airway') }} - @if ($resuscitation_airway_array[$x] == "1") - {{ __('maternity.nil') }} - @elseif($resuscitation_airway_array[$x] == "2") - {{ __('maternity.bag') }} - @elseif($resuscitation_airway_array[$x] == "3") - {{ __('maternity.mask') }} - @endif -
    {{ __('maternity.resuscitation_suction') }}{{ $resuscitation_suction_array[$x] }}
    {{ __('maternity.comments') }}{{ $delivery_comments_array[$x] }}
    -
    -
    -
    -
    - - - - - - @if($delivery_record_details->foetal_number == 2) - - @elseif ($delivery_record_details->foetal_number == 3) - - - @endif - - - - - - @php - $received_by_array = explode(",", $delivery_record_details->received_by); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $gender_array = explode(",", $delivery_record_details->gender); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - @if($gender_array[$x] ==1 ) - - @elseif($gender_array[$x] == 2) - - @else - - @endif - @endfor - - - - @php - $baby_condition_array = explode(",", $delivery_record_details->baby_condition); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - @if($baby_condition_array[$x] == 1) - - @elseif($baby_condition_array[$x] == 2) - - @elseif($baby_condition_array[$x] == 3) - - @endif - @endfor - - - - @php - $weight_array = explode(",", $delivery_record_details->weight); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $congenital_abnormalities_array = explode(",", $delivery_record_details->congenital_abnormalities); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $birth_order_array = explode(",", $delivery_record_details->birth_order); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $apgar_score_at_1_min_array = explode(",", $delivery_record_details->apgar_score_at_minute_1); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $apgar_score_at_5_min_array = explode(",", $delivery_record_details->apgar_score_at_minute_5); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $apgar_score_at_10_min_array = explode(",", $delivery_record_details->apgar_score_at_minute_10); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $age_established_spontaneous_respiration_array = explode(",", $delivery_record_details->age_established_spontaneous_reg_respiration); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - @php - $baby_comments_array = explode(",", $delivery_record_details->baby_comments); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - - - - @php - $moved_to_array = explode(",", $delivery_record_details->moved_to); - @endphp - - @for($x = 0; $x < $foetal_number; $x++) - - @endfor - - -
    {{ __('maternity.baby') }} 1{{ __('maternity.baby') }} 2{{ __('maternity.baby') }} 2{{ __('maternity.baby') }} 3
    {{ __('maternity.received_by') }}{{ isset($users[$received_by_array[$x]]) ? $users[$received_by_array[$x]] : '' }}
    {{ __('maternity.sex') }}{{ __('maternity.female') }}{{ __('maternity.male') }}{{ __('maternity.other') }}
    {{ __('maternity.condition') }}{{ __('maternity.alive') }}{{ __('maternity.fresh_sb') }}{{ __('maternity.macerated_sb') }}
    {{ __('maternity.weight') }}{{ $weight_array[$x] }} Kg
    {{ __('maternity.congenital_abnormalities_apparent') }}{{ $congenital_abnormalities_array[$x] }}
    {{ __('maternity.birth_order') }}{{ $birth_order_array[$x] }}
    {{ __('maternity.apgar_1') }}{{ $apgar_score_at_1_min_array[$x] }}
    {{ __('maternity.apgar_5') }}{{ $apgar_score_at_5_min_array[$x] }}
    {{ __('maternity.apgar_10') }}{{ $apgar_score_at_10_min_array[$x] }}
    {{ __('maternity.age_established_respiration') }}{{ $age_established_spontaneous_respiration_array[$x] }}
    {{ __('maternity.comments') }}{{ $baby_comments_array[$x] }}
    {{ __('maternity.moved_to') }}{{ get_name($moved_to_array[$x], "id", "name", "wards") }}
    -
    -
    -
    -
    - - - \ No newline at end of file diff --git a/docker/statistics/Modules/Maternity/Routes/api.php b/docker/statistics/Modules/Maternity/Routes/api.php deleted file mode 100644 index 1ba81316..00000000 --- a/docker/statistics/Modules/Maternity/Routes/api.php +++ /dev/null @@ -1,18 +0,0 @@ -get('/maternity', function () { - return "Maternity"; -}); diff --git a/docker/statistics/Modules/Maternity/Routes/web.php b/docker/statistics/Modules/Maternity/Routes/web.php deleted file mode 100644 index c4b3e192..00000000 --- a/docker/statistics/Modules/Maternity/Routes/web.php +++ /dev/null @@ -1,40 +0,0 @@ - ['auth', 'disablebackbutton', 'user-locale','subscription-tracking', 'password-expiry']], function () { - /* Maternity Controller */ - Route::resource('maternity', 'MaternityController'); - Route::get('maternity_admission/route', 'MaternityController@route'); - Route::post('maternity/create_episode', 'MaternityController@create_episode')->name('maternity.create_episode'); - Route::get('maternity_inpatient_sheet', 'MaternityController@create_inpatient'); - Route::delete('delete_anc_blood_transfusion_record/{id}', 'MaternityController@delete_anc_blood_transfusion_record')->name('anc.delete_anc_blood_transfusion_record'); - Route::post('/check_hiv_test_date_if_three_months', 'MaternityController@check_hiv_test_date_if_three_months')->name('maternity.check_hiv_test_date_if_three_months'); - - - Route::post('calculate_edd_from_lmp', 'MaternityController@calculate_edd_from_lmp')->name('maternity.calculate_edd_from_lmp'); - Route::post('calculate_weeks_of_amenorrhoea_from_lmp', 'MaternityController@calculate_weeks_of_amenorrhoea_from_lmp')->name('maternity.calculate_weeks_of_amenorrhoea_from_lmp'); - - Route::get('edit_maternity_inpatient_sheet', 'MaternityController@edit_inpatient')->name('maternity.edit_maternity_inpatient_admission'); - Route::get('maternity_delivery_record', 'MaternityController@create_delivery_record'); - Route::post('maternity/store_delivery', 'MaternityController@store_delivery_record')->name('maternity.store_delivery_record'); - Route::get('maternity_admission_details', 'MaternityController@maternity_admission_details'); - Route::any('print_maternity_details/{id}', 'MaternityController@print_maternity_admission_details_pdf')->name('maternity.print_maternity_admission_details'); - - Route::get('delivery_record_details', 'MaternityController@delivery_record_details'); - Route::post('add_delivery_location', 'MaternityController@add_delivery_location'); - Route::post('add_new_ward', 'MaternityController@add_new_ward'); - - Route::any('edit_delivery_record/{id}', 'MaternityController@edit_delivery_record'); - Route::any('update_delivery_record/{id}', 'MaternityController@update_delivery_record')->name('maternity.delivery_record_update'); - - // labour ward admission - // Route::get('labour_ward_admission/route', 'MaternityController@route_labour_ward_admission'); - Route::get('labour_ward_admission_sheet', 'MaternityController@create_labour_ward_admission_sheet')->name('labour_ward_admission_sheet.create'); - Route::post('labour_ward_admission_sheet/store', 'MaternityController@store_labour_ward_admission_sheet')->name('maternity.store_labour_ward_admission_sheet'); - Route::get('labour_ward_admission_sheet_details', 'MaternityController@labour_ward_admission_sheet_details')->name('labour_ward_admission_sheet.details'); - Route::get('edit_labour_ward_admission_sheet', 'MaternityController@edit_labour_ward_admission_sheet')->name('maternity.edit_edit_labour_ward_admission'); - Route::patch('updpate_labour_ward_admission_sheet/{id}', 'MaternityController@updpate_labour_ward_admission_sheet')->name('maternity.updpate_labour_ward_admission_sheet'); - Route::any('print_labour_admission_sheet_details/{episode_id}', 'MaternityController@print_labour_admission_sheet_details')->name('maternity.print_labour_admission_sheet_details'); - -}); \ No newline at end of file diff --git a/docker/statistics/Modules/Maternity/bitbucket-pipelines.yml b/docker/statistics/Modules/Maternity/bitbucket-pipelines.yml deleted file mode 100644 index e850a8fd..00000000 --- a/docker/statistics/Modules/Maternity/bitbucket-pipelines.yml +++ /dev/null @@ -1,19 +0,0 @@ -image: alpine/git:latest - -pipelines: - branches: - main: - - step: - name: Merge To Beta - script: - - git remote set-url origin https://Kabricks:${APP_SECRET}@bitbucket.org/dcsammi/${BITBUCKET_REPO_SLUG} - - git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*" - - git fetch - - git checkout beta - - git merge main - - git commit --amend -m "[skip ci] Merge changes from main" - - git push - - step: - name: Deploy To Test - script: - - echo "Ready to deploy to demo or production!" diff --git a/docker/statistics/Modules/Maternity/module.json b/docker/statistics/Modules/Maternity/module.json deleted file mode 100644 index b7bafd82..00000000 --- a/docker/statistics/Modules/Maternity/module.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "Maternity", - "alias": "maternity", - "description": "Maternity", - "keywords": [], - "priority": 0, - "providers": [ - "Modules\\Maternity\\Providers\\MaternityServiceProvider" - ], - "files": [] -} diff --git a/docker/statistics/Modules/PatientDiscounts/Config/config.php b/docker/statistics/Modules/PatientDiscounts/Config/config.php deleted file mode 100644 index f9af437e..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Config/config.php +++ /dev/null @@ -1,5 +0,0 @@ - 'Patient Discounts' -]; diff --git a/docker/statistics/Modules/PatientDiscounts/Http/Controllers/Controller.php b/docker/statistics/Modules/PatientDiscounts/Http/Controllers/Controller.php deleted file mode 100755 index 784a6a4e..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Http/Controllers/Controller.php +++ /dev/null @@ -1,13 +0,0 @@ -middleware('auth'); - $this->middleware('permission:discount-category-list', ['only' => ['index']]); - $this->middleware('permission:discount-category-create', ['only' => ['create', 'store']]); - $this->middleware('permission:discount-category-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:discount-category-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - * - */ - public function index(){ - $categories = PatientCategory::pluck("name", "id")->toArray(); - $donors = Donors::pluck("name", "id")->toArray(); - - $discount_categories = DiscountCategories::orderBy('name', 'asc') - ->paginate(50); - - return view('patient_discounts::discount_categories.index',compact('discount_categories','categories','donors')); - } - - /** - * Show the form for creating a new resource. - * - */ - public function create(){ - - $categories = PatientCategory::pluck("name", "id")->toArray(); - $categories = ['' => '- select -'] + $categories; - $donors = Donors::pluck("name", "id")->toArray(); - $donors = ['' => '- select -'] + $donors; - - return view('patient_discounts::discount_categories.create',compact('categories','donors')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request){ - request()->validate([ - 'patient_category' => 'required', - 'donor' => 'required', - 'discount_name' => 'required', - 'discount_type' => 'required' - ]); - - // get discount type - $type = $request->discount_type; - - $discount_category = new DiscountCategories; - $discount_category->name = $request->discount_name; - $discount_category->discount_type = $type; - $discount_category->patient_category = $request->patient_category; - $discount_category->donor_id = $request->donor; - - // check which type of discount category has been selected and save appropriate amount - if ($type == 1){ - // fixed figure - $discount_category->donor_amount = $request->donor_fixed_amount; - $discount_category->patient_amount = $request->patient_fixed_amount; - } elseif ($type == 2) { - // patient ceiling - $discount_category->donor_amount = 0; - $discount_category->patient_amount = $request->patient_ceiling; - } elseif ($type == 3) { - // patient top up - $discount_category->donor_amount = $request->donor_top_up; - $discount_category->patient_amount = 0; - } - - - $discount_category->created_by = auth()->user()->id; - $discount_category->updated_by = auth()->user()->id; - - if ($discount_category->save()) { - return redirect('/discount_category'); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id){ - // - } - - /** - * Show the form for editing the specified resource. - * - */ - public function edit($id){ - - $discount_category = DiscountCategories::where(['id' => $id])->first(); - - $categories = PatientCategory::pluck("name", "id")->toArray(); - $categories = ['' => '- select -'] + $categories; - - $donors = Donors::pluck("name", "id")->toArray(); - $donors = ['' => '- select -'] + $donors; - - if (!$discount_category) { - flash()->error("Discount category not found"); - return redirect('/discount_category/'); - } else { - return view('patient_discounts::discount_categories.edit', compact('discount_category', 'categories', 'donors')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id){ - request()->validate([ - 'patient_category' => 'required', - 'donor' => 'required', - 'discount_name' => 'required', - 'discount_type' => 'required' - ]); - - // get discount type - $type = $request->discount_type; - - $discount_category = DiscountCategories::find($id); - $discount_category->name = $request->discount_name; - $discount_category->discount_type = $type; - $discount_category->patient_category = $request->patient_category; - $discount_category->donor_id = $request->donor; - - // check which type of discount category has been selected and save appropriate amount - if ($type == 1){ - // fixed figure - $discount_category->donor_amount = $request->donor_fixed_amount; - $discount_category->patient_amount = $request->patient_fixed_amount; - } elseif ($type == 2) { - // patient ceiling - $discount_category->donor_amount = 0; - $discount_category->patient_amount = $request->patient_ceiling; - } elseif ($type == 3) { - // patient top up - $discount_category->donor_amount = $request->donor_top_up; - $discount_category->patient_amount = 0; - } - - $discount_category->updated_by = auth()->user()->id; - - if ($discount_category->save()) { - return redirect('/discount_category'); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id){ - $discount_category = DiscountCategories::find($id); - -// $discount_category->active = 0; - - if ($discount_category->delete()){ - flash("Discount category has been deleted.")->success(); - return redirect('/discount_category/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - */ - public function inactive() { - $discount_categories = DiscountCategories::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - $categories = PatientCategory::pluck("name", "id")->toArray(); - $donors = Donors::pluck("name", "id")->toArray(); - - if (count($donors) < 1) { - flash()->error("There is no inactive patient discount category"); - return redirect('/discount_category/'); - } else { - return view('patient_discounts::discount_categories.inactive', compact('categories','donors', 'discount_categories')); - } - } - - /** - * Activate the specified resource in storage. - * - */ - public function activate($id) { - $discount_category = DiscountCategories::withTrashed()->find($id); - - if ($discount_category->restore()): - flash("Discount category has been activated.")->success(); - return redirect('/discount_category/inactive'); - endif; - } -} diff --git a/docker/statistics/Modules/PatientDiscounts/Http/Controllers/DiscountController.php b/docker/statistics/Modules/PatientDiscounts/Http/Controllers/DiscountController.php deleted file mode 100755 index b973f277..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Http/Controllers/DiscountController.php +++ /dev/null @@ -1,588 +0,0 @@ -middleware('auth'); - $this->middleware('permission:discount-list', ['only' => ['index']]); - $this->middleware('permission:discount-create', ['only' => ['create', 'store']]); - $this->middleware('permission:discount-edit', ['only' => ['edit', 'update']]); - } - - - /** - * Display a listing of the resource. - * - */ - public function index(){ - $discounts = PatientDiscount::orderBy('patient_category', 'asc') - ->paginate(50); - - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id")->toArray(); - return view('patient_discounts::discounts.index',compact('discounts','categories')); - } - - /** - * Show the form for creating a new resource. - * - */ - public function create(){ - // make sure that patient discounts are not repeated - $exiting_discount = PatientDiscount::all()->pluck('patient_category')->toArray(); - $categories = PatientCategory::whereNotIn('id',$exiting_discount)->pluck("name", "id")->toArray(); - $categories = ['' => '- select -'] + $categories; - $expense_accounts = ChartOfAccount::where('type', 2)->pluck('name', 'id')->prepend('-select-', '')->toArray(); - - return view('patient_discounts::discounts.create',compact('categories', 'expense_accounts')); - } - - /** - * Store a newly created resource in storage. - * - */ - public function store(Request $request){ - - request()->validate([ - 'patient_category' => 'required', - 'pay_later' => 'required' - ]); - - $patient_category_discount = new PatientDiscount; - $patient_category_discount->patient_category = $request->patient_category; - $patient_category_discount->discount = $request->discount; - $patient_category_discount->pay_later = $request->pay_later; - - if ($request->is_pay_later_threshold_discount == "1") { - $patient_category_discount->threshold_type = $request->threshold_type; - $patient_category_discount->threshold_amount = $request->threshold_amount; - } - - $patient_category_discount->co_payment = $request->co_payment; - $patient_category_discount->co_payment_share = $request->co_payment_share; - $patient_category_discount->tracking_expense_account = $request->tracking_expense_account; - $patient_category_discount->created_by = Auth::id(); - - if ($patient_category_discount->save()) { - flash('new patient discount saved')->success(); - return redirect('/discounts/'); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View - */ - public function edit($id){ - - $discount = PatientDiscount::find($id); - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id")->toArray(); - $expense_accounts = ChartOfAccount::where('type', 2)->pluck('name', 'id')->prepend('-select-', '')->toArray(); - - return view('patient_discounts::discounts.edit',compact('discount','categories', 'id', 'expense_accounts')); - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - */ - public function update(Request $request) { - $validator = Validator::make($request->all(), [ - 'discount' => 'required', - 'pay_later' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $patient_category_discount = PatientDiscount::find($request->id); - - $patient_category_discount->discount = $request->discount; - $patient_category_discount->pay_later = $request->pay_later; - $patient_category_discount->updated_by = $request->discount; - - if ($patient_category_discount->pay_later == 0) { - $request->is_pay_later_threshold_discount = 0; - $request->co_payment = 0; - } - - if ($request->is_pay_later_threshold_discount == 1) { - $patient_category_discount->threshold_type = $request->threshold_type; - $patient_category_discount->threshold_amount = $request->threshold_amount; - } else { - $patient_category_discount->threshold_type = NULL; - $patient_category_discount->threshold_amount = NULL; - } - - if ($request->track_discounts == 1 || $request->is_pay_later_threshold_discount == 1) { - $patient_category_discount->tracking_expense_account = $request->tracking_expense_account; - } else { - $patient_category_discount->tracking_expense_account = NULL; - } - - $patient_category_discount->co_payment = $request->co_payment; - - if ($request->co_payment == 1) { - $patient_category_discount->co_payment_share = $request->co_payment_share; - } else { - $patient_category_discount->co_payment_share = 0; - } - - if ($patient_category_discount->update()) { - flash('Patient discount has been updated')->success(); - } else { - flash("An error occurred!")->error(); - } - return redirect('/discounts/'); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - */ - public function destroy($id) { - if (PatientDiscount::destroy($id)) { - flash("Patient discount has been deleted.")->success(); - return redirect('/discounts/'); - } else { - flash("Patient discount failed to deleted.")->error(); - return redirect('/discounts/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - */ - public function inactive() { - $discounts = PatientDiscount::onlyTrashed() - ->orderBy('patient_category', 'asc') - ->paginate(50); - - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id")->toArray(); - - if (count($discounts) < 1) { - flash()->error("There is no inactive discount"); - return redirect('/discounts/'); - } else { - return view('patient_discounts::discounts.inactive', compact('discounts', 'categories')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - */ - public function activate($id) { - $discount = PatientDiscount::withTrashed()->find($id); - - if($discount->restore()){ - flash("Patient discount has been activated.")->success(); - return redirect('/discounts/inactive'); - } else { - flash("Patient discount failed to activate.")->error(); - return redirect('/discounts/inactive'); - } - } - - public function edit_insured_drugs($patient_category_id) { - $drugs = DB::table('drugs')->whereNull('deleted_at')->get(['id', 'name', 'patient_category_coverage']); - - return view('patient_discounts::discounts.edit_insured_drugs', compact('drugs', 'patient_category_id')); - } - - public function store_edited_insured_drugs(Request $request) { - $is_covered = $request->is_covered; - $current_covered = is_null($request->current_covered) ? [] : $request->current_covered; - $removed_coverage = array_diff($current_covered, $is_covered); - - foreach ($is_covered as $value) { - $current_coverages = get_name($value, 'id', 'patient_category_coverage', 'drugs'); - - if ($current_coverages != 'N/A') { - if (is_null($current_coverages) || $current_coverages == "") { - $current_coverages_array = []; - } else { - $current_coverages_array = explode(",", $current_coverages); - - // check if the id is already in the array and just chill - if (in_array($request->patient_category_id, $current_coverages_array)) { - continue; - } - } - - $current_coverages_array[] = $request->patient_category_id; - DB::table('drugs')->where('id', $value)->update(['patient_category_coverage' => implode(",", $current_coverages_array)]); - } - } - - foreach ($removed_coverage as $value) { - $current_coverages = get_name($value, 'id', 'patient_category_coverage', 'drugs'); - - if ($current_coverages != 'N/A') { - $current_coverages_array = explode(",", $current_coverages); - - if (in_array($request->patient_category_id, $current_coverages_array)) { - unset($current_coverages_array[array_search($request->patient_category_id, $current_coverages_array)]); - } - - DB::table('drugs')->where('id', $value)->update(['patient_category_coverage' => implode(",", $current_coverages_array)]); - } - } - - flash("Drug coverages have been updated")->success(); - return redirect('/discounts/edit_insured_drugs/' . $request->patient_category_id); - } - - public function add_category_patient_dependants(Request $request) - { - $discount_id = $request->discount_id; - $patient_discount = PatientDiscount::find($discount_id); - $patient_category_patients = Patient::where('category_id', $patient_discount->patient_category)->orderBy('first_name', 'asc')->get(); - /* - $patient_category_patients = DB::table("patients")->select('*')->where('category_id', $patient_discount->patient_category)->whereRaw('!FIND_IN_SET(id,'.function($query) { - $query->select('dependant_patient_ids')->from('category_patient_dependants'); - }.')')->get(); - */ - - return view('patient_discounts::discounts.patient_category_patients', compact('patient_discount','patient_category_patients')); - } - - /* - * Display blade to enable adding dependants to a main category patient - */ - public function add_dependants_to_category_patient(Request $request) - { - $patient_id = $request->patient_id; - $patient_category_id = $request->patient_category; - $patient_discount_id = $request->patient_discount_id; - $patient = Patient::find($patient_id); - - $patients_array = [];//Patient::all(['id', 'first_name', 'last_name'])->where('category_id', 1)->pluck("full_name", "id")->toArray(); - - return view('patient_discounts::discounts.add_dependants_to_category_patient', compact('patient_id','patient_discount_id','patient_category_id','patient','patients_array')); - } - - /* - * Store the added dependants - */ - public function store_dependants_to_category_patient(Request $request) - { - //check to make sure that the dependants are not attached to another dependant or even are the main patients - $all_main_patients_array = CategoryPatientDependant::pluck('main_patient_id')->toArray(); - $patient_dependants_array = is_null($request->dependants) ? [] : $request->dependants; - - for ($i=0; $i < count($patient_dependants_array) ; $i++) { - if (in_array($patient_dependants_array[$i],$all_main_patients_array)) { - flash('Patient '.get_full_name($patient_dependants_array[$i], "id", "first_name", "last_name", "patients").' is already a main patient and so can not be another person\'s dependant ')->error(); - return redirect('discounts'); - } - - $all_dependants = CategoryPatientDependant::whereRaw('FIND_IN_SET(' . $patient_dependants_array[$i] . ',dependant_patient_ids)')->get(); - if (count($all_dependants)) { - $patient_is_a_dependant_of = patient_is_a_dependant_of($patient_dependants_array[$i]); - if (!is_null($patient_is_a_dependant_of) && ($patient_is_a_dependant_of != $request->patient_id)) { - flash('Patient '.get_full_name($patient_dependants_array[$i], "id", "first_name", "last_name", "patients").' is already a dependant of someone else')->error(); - return redirect('discounts'); - } - } - - //make sure that they are not configured to the same category - $main_patient_category = get_name($request->patient_id, "id", "category_id", "patients"); - $dependant_patient_category = get_name($patient_dependants_array[$i], "id", "category_id", "patients"); - if ($main_patient_category == $dependant_patient_category) { - flash('Patient '.get_full_name($patient_dependants_array[$i], "id", "first_name", "last_name", "patients").' belongs to the same patient category. Both the dependant and dependee can not belong to the same category')->error(); - return redirect('discounts'); - } - } - - $patient = Patient::find($request->patient_id); - $patient_category_id = $request->patient_category_id; - $start_date = is_null($request->start_date) ? null : Carbon::createFromFormat('d/m/Y', $request->start_date)->toDateString(); - - $patient_category_depedants_record = CategoryPatientDependant::where('main_patient_id', $request->patient_id)->get(); - if (count($patient_category_depedants_record) > 0) { - - $patient_category_depedants = $patient_category_depedants_record->first(); - $patient_category_depedants->main_patient_id = $request->patient_id; - $patient_category_depedants->dependant_patient_ids = implode(",", $patient_dependants_array); - $patient_category_depedants->patient_category_id = $patient_category_id; - $patient_category_depedants->start_date = $start_date; - $duration = 0; - $duration = get_name($patient_category_id, "patient_category", "threshold_type", "patient_discounts"); - if ($duration == 2) { - $duration = 12; //12 months - } - if ($duration == 1) { - $duration = 1; //1 month - } - $patient_category_depedants->duration = $duration; - $patient_category_depedants->update(); - } else { - - $patient_category_depedants = new CategoryPatientDependant; - $patient_category_depedants->main_patient_id = $request->patient_id; - $patient_category_depedants->dependant_patient_ids = implode(",", $patient_dependants_array); - $patient_category_depedants->patient_category_id = $patient_category_id; - $patient_category_depedants->start_date = $start_date; - $duration = 0; - $duration = get_name($patient_category_id, "patient_category", "threshold_type", "patient_discounts"); - if ($duration == 2) { - $duration = 12; //12 months - } - if ($duration == 1) { - $duration = 1; //1 month - } - $patient_category_depedants->duration = $duration; - $patient_category_depedants->save(); - } - - flash('new dependants have been saved')->success(); - return redirect('discounts'); - } - - public function view_patient_dependant_details(Request $request) - { - $patient_category_depedant = CategoryPatientDependant::first(); - return view('patient_discounts::discounts.view_patient_dependant_details', compact('patient_category_depedant')); - } - - /* View all dependants to a category patient */ - public function view_dependants_to_category_patient($id) - { - $patient_category_depedants_record = CategoryPatientDependant::where('main_patient_id', $id)->get(); - - $patient = Patient::find($id); - $dependants_record = null; - - if (count($patient_category_depedants_record) > 0) { - $dependants_record = $patient_category_depedants_record->first(); - return view('patient_discounts::discounts.view_dependants_to_category_patient', compact('patient','dependants_record')); - } - return view('patient_discounts::discounts.view_dependants_to_category_patient', compact('patient','dependants_record')); - } - - public function search_dependant_name(Request $request) - { - $data = []; - - if ($request->has('q')) { - $search = $request->q; - $data = DB::table('patients') - ->where('category_id', 1) - ->where('first_name', 'LIKE', "%$search%") - ->orWhere('last_name', 'LIKE', "%$search%") - ->orWhere('number', 'LIKE', "%$search%") - ->get(["id", "first_name", "last_name", "number", "phone"]); - } - - return response()->json($data); - } - - public function generate_dependants_payment_invoice(Request $request) - { - $main_patient_id = $request->main_patient_id; - $dependants_array = []; - $dependants = CategoryPatientDependant::where('main_patient_id', $main_patient_id)->get(); - $consumptions = DependantsConsumption::where('main_patient_id', $main_patient_id)->get(); - $patient_category_id = 0; - foreach ($dependants as $record) { - $dependants_array = explode(",", $record->dependant_patient_ids); - $patient_category_id = $record->patient_category_id; - } - $dependants_array[] = $main_patient_id; //add the main patient in array - - $start_of_year = Carbon::now()->startOfYear(); - $start = $start_of_year->toDateTimeString(); - $end = Carbon::now()->toDateString(); - $patient_category_name = get_name($patient_category_id, "id", "name", "patient_categories"); - $invoice_number = generateInvoiceNumberFromDB($patient_category_name); - $invoice_start = Carbon::parse($start)->format('d-m-Y'); - $invoice_date = $invoice_start."/".$end; //according to how Benjamin organized it - $invoice_with_payment_amount_paid = $invoice_with_payment_balance = 0; - - $update = PatientCategoryInvoice::where('invoice_generated', 0) - ->where('patient_category', $patient_category_id) - ->whereIn('patient_id', $dependants_array) - ->update( - [ - 'invoice_generated' => 1, - 'invoice_date' => $invoice_date, - 'invoice_number' => $invoice_number, - 'is_invoice_for_individual' => $main_patient_id - ] - ); - - $track_invoice = new TrackInvoice; - $track_invoice->reason = $patient_category_id; - $track_invoice->created_by = Auth::id(); - - if (!is_null($update) && $track_invoice->save()) { - $hospital_information = HospitalInformation::first(); - $users_name = get_full_name(Auth::id(), 'id', 'first_name', 'last_name', 'users'); - - $start_date = Carbon::parse($start)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($end)->endOfDay()->toDateTimeString(); - - //update the dependant consumption table with the generated invoices number - $consumption = DependantsConsumption::where('main_patient_id', $main_patient_id)->whereNull('invoice_number') - ->where('unpaid_balance', '>', 0) - ->whereBetween('created_at', [$start_date, $end_date]) - ->update(['invoice_number' => $invoice_number]); - - $last_invoice = DB::table('patient_category_invoices')->select('invoice_number')->distinct()->orderBy('invoice_number', 'desc')->first(); - $last_invoice_number = $invoice_number; - - $invoices = DB::table('patient_category_invoices') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereBetween('created_at', [$start_date, $end_date]) - ->where('patient_category', $patient_category_id) - ->where('invoice_generated', 1) - ->where('status', 0) - ->where('invoice_number', $last_invoice_number) - ->groupBy('episode_id')->selectRaw('*, sum(patient_amount) as sum') - ->get() - ->toArray(); - - $request->merge(['invoice_number' => $invoice_number]); - $request->merge(['patient_category' => $patient_category_id]); - $request->merge(['start_date' => $start_date]); - $request->merge(['end_date' => $end_date]); - - return view('invoices::invoices.generate_invoice.patient_invoice', compact( - 'invoices', - 'request', - 'users_name', - 'hospital_information', - 'invoice_with_payment_amount_paid', - 'invoice_with_payment_balance' - )); - } else { - return back()->withInput(); - } - } - - /* receive payment for a patient and his dependants */ - public function receive_dependants_payment(Request $request) - { - //load the page that loads invoice payment with the requests as below - /* - "patient_category" => "15" - "created_by" => "17" - "created_at" => "2021-02-01 10:35:49" - "status" => "new" - "total" => "3150600" - "invoice_date" => "01-02-2021/2021-02-27" - "invoice_number" => "0865" - */ - } - - public function clean_dependants_that_are_main_patients() - { - //1. loop through category_patient_dependants table - //2. explode dependants and check if any is main patient - //3. if main patient record exists, delete main patient record, soft delete consumption and make records unpaid - //4. soft delete episode record from patient_category_invoices and make ordered record not paid - $patient_category_dependants = CategoryPatientDependant::all(); - if (count($patient_category_dependants) > 0) { - foreach ($patient_category_dependants as $category_record) { - $dependants_array = explode(",", $category_record->dependant_patient_ids); - for ($i=0; $i < count($dependants_array) ; $i++) { - $checking_for_main_patients = CategoryPatientDependant::where('main_patient_id',$dependants_array[$i])->get(); - if (count($checking_for_main_patients) > 0) { - foreach ($checking_for_main_patients as $main_record) { - $main_record->delete(); - $consumptions_records = DependantsConsumption::where('main_patient_id', $main_record->main_patient_id)->get(); - if (count($consumptions_records) > 0) { - foreach ($consumptions_records as $consumption) { - $consumption->delete(); - //treatments - $treatments = Treatment::where('episode_id', $consumption->episode_id)->get(); - if (count($treatments) > 0) { - foreach ($treatments as $treatment) { - $treatment->update(['payment_status' => 0]); - } - } - //investigations - $investigations = OrderedInvestigation::where('episode_id', $consumption->episode_id)->get(); - if (count($investigations) > 0) { - foreach ($investigations as $ordered_investigation) { - $ordered_investigation->update(['payment_status' => 0]); - } - } - //procedures - $procedures = OrderedProcedure::where('episode_id', $consumption->episode_id)->get(); - if (count($procedures) > 0) { - foreach ($procedures as $ordered_procedure) { - $ordered_procedure->update(['payment_status' => 0]); - } - } - //services - $services = OrderedService::where('episode_id', $consumption->episode_id)->get(); - if (count($services) > 0) { - foreach ($services as $ordered_service) { - $ordered_service->update(['payment_status' => 0]); - } - } - //sundrys - $sundrys = OrderedSundry::where('episode_id', $consumption->episode_id)->get(); - if (count($sundrys) > 0) { - foreach ($sundrys as $ordered_sundry) { - $ordered_sundry->update(['payment_status' => 0]); - } - } - //patient category invoice - $patient_category_invoice = PatientCategoryInvoice::where('episode_id',$consumption->episode_id)->delete(); - } - } - } - } - } - } - } - } -} diff --git a/docker/statistics/Modules/PatientDiscounts/Http/Controllers/FamilyAccountsController.php b/docker/statistics/Modules/PatientDiscounts/Http/Controllers/FamilyAccountsController.php deleted file mode 100755 index 199a99e8..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Http/Controllers/FamilyAccountsController.php +++ /dev/null @@ -1,1018 +0,0 @@ -middleware('auth'); - $this->middleware('permission:view-family-account', ['only' => ['index']]); - $this->middleware('permission:create-family-account', ['only' => ['create','store']]); - } - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() - { - $family_accounts = FamilyAccount::orderBy('id','desc')->get(); - $reg_date = null; $start_date = null; $end_date = null; - - $family_accounts_array = []; - $family_accounts_records = FamilyAccount::orderBy('id','desc')->get(); - foreach ($family_accounts_records as $record) { - $family_accounts_array[$record->id] = get_full_name($record->family_head_id, 'id', 'first_name', 'last_name', 'patients'); - } - $family_accounts_array = ['' => '- select -'] + $family_accounts_array; - - return view('patient_discounts::family_accounts.index',compact('family_accounts', 'reg_date', 'start_date', 'end_date', 'family_accounts_array')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - $patients = []; - $chart_of_accounts = ChartOfAccount::where('type', 5)->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $chart_of_accounts = ['' => '- select -'] + $chart_of_accounts; - - return view('patient_discounts::family_accounts.create',compact('patients', 'chart_of_accounts')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - $validator = Validator::make($request->all(), [ - 'family_head' => 'required || unique:family_accounts,family_head_id', - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $family_account = new FamilyAccount; - $family_account->family_head_id = $request->family_head; - - $head_id = $request->family_head; - $members_array = is_array($request->family_members) ? $request->family_members : []; - - if (!in_array($head_id, $members_array)) { - array_push($members_array, $head_id); - } - - $members_array = $members_array[0] == "" ? array_shift($members_array) : $members_array; - - $family_account->family_members_ids = implode(",", $members_array); - $family_account->current_balance = $request->deposit_amount; - $family_account->credit_limit = ($request->credit_limit) != 0 ? $request->credit_limit : null; - if ($request->is_it_opening_family_amount == 1) { - $family_account->opening_account_id = $request->opening_account_id; - $family_account->opening_amount = $request->deposit_amount; - $family_account->opening_amount_date = is_null($request->opening_amount_date) ? Carbon::now(): $request->opening_amount_date; - record_opening_balance_for_family_account($request->family_head, $family_account->opening_account_id, $request->deposit_amount, $family_account->opening_amount_date); - if (!is_null($request->opening_amount_date) && Carbon::now()->isAfter(Carbon::parse($request->opening_amount_date))) { - //today is greater or after than the opening amount date so make the created_at set to opening amount date - $family_account->created_at = $request->opening_amount_date; - } - } - $family_account->created_by = Auth::id(); - $family_account->save(); - - /* update the family deposits table with the deposit if it has been filled */ - if ($request->deposit_amount != 0) { - $family_deposit = new FamilyAccountDeposit; - $family_deposit->family_account_id = $family_account->id; - $family_deposit->deposit_amount = $request->deposit_amount; - $family_deposit->deposited_by = $request->deposited_by; - $family_deposit->is_opening_amount = ($request->is_it_opening_family_amount == 1) ? 1 : 0; - $family_deposit->deposit_date = ($request->is_it_opening_family_amount == 1 && !is_null($request->opening_amount_date)) ? $request->opening_amount_date : Carbon::now(); - $family_deposit->created_by = Auth::id(); - $family_deposit->save(); - - if ($request->is_it_opening_family_amount != 1) { - record_cash_credits_to_daily_collection_account($request->deposit_amount, generateReceiptNumberFromDB(), "Family Account Deposits"); - } - } - - flash('New family account has been created')->success(); - return redirect('family_accounts'); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - */ - public function edit($id) { - $family_account = FamilyAccount::find($id); - $family_head_id = $family_account->family_head_id; - $family_members_array = explode(",", $family_account->family_members_ids); - $current_balance = $family_account->current_balance; - $family_head_name = get_full_name($family_head_id, 'id', 'first_name', 'last_name', 'patients'); - - $chart_of_accounts = ChartOfAccount::where('type', 5)->orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $chart_of_accounts = ['' => '- select -'] + $chart_of_accounts; - - $opening_deposit_record = FamilyAccountDeposit::where(['family_account_id' => $id, 'is_opening_amount' => 1])->first(); - - return view('patient_discounts::family_accounts.edit',compact('family_head_name', 'family_account','family_head_id','family_members_array','current_balance','chart_of_accounts', 'opening_deposit_record')); - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - $family_account = FamilyAccount::find($id); - - $family_account->family_head_id = $request->family_head; - $members_array = $request->family_members; - $family_account->family_members_ids = implode(",", $members_array); - - //adjust current balance based on edited opening amount - $old_opening_amount = is_null($family_account->opening_amount) ? 0 : $family_account->opening_amount; - $difference_in_opening_amounts = $request->opening_amount - $old_opening_amount; - $family_account->current_balance = $family_account->current_balance + $difference_in_opening_amounts; - - $family_account->updated_by = Auth::id(); - $family_account->credit_limit = ($request->credit_limit != 0) ? $request->credit_limit : null; - if ($request->is_it_opening_family_amount == 1) { - $family_account->opening_account_id = $request->opening_account_id; - $family_account->opening_amount = $request->opening_amount; - $family_account->opening_amount_date = is_null($request->opening_amount_date) ? \Carbon\Carbon::now(): $request->opening_amount_date; - - update_opening_balance_equity_record_for_family_account($request->family_head, $family_account->opening_account_id, $request->opening_amount, $family_account->opening_amount_date); - if (!is_null($request->opening_amount_date) && Carbon::now()->isAfter(Carbon::parse($request->opening_amount_date))) { - //today is greater or after than the opening amount date so make the created_at set to opening amount date - $family_account->created_at = $request->opening_amount_date; - } - } - $family_account->update(); - - /* update the family deposits table with the deposit if it has been filled */ - $opening_deposit_record = FamilyAccountDeposit::where(['family_account_id' => $id, 'is_opening_amount' => 1])->first(); - if ($request->opening_amount != 0) { - $family_deposit = is_null($opening_deposit_record) ? new FamilyAccountDeposit : $opening_deposit_record; - $family_deposit->family_account_id = $family_account->id; - $family_deposit->deposit_amount = $request->opening_amount; - $family_deposit->deposited_by = $request->deposited_by; - $family_deposit->is_opening_amount = ($request->is_it_opening_family_amount == 1) ? 1 : 0; - $family_deposit->deposit_date = ($request->is_it_opening_family_amount == 1 && !is_null($request->opening_amount_date)) ? $request->opening_amount_date : Carbon::now(); - $family_deposit->created_by = Auth::id(); - $family_deposit->save(); - } - - flash('Family account has been updated')->success(); - return redirect('family_accounts'); - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - if (FamilyAccount::destroy($id)) { - flash("Family account has been deleted.")->success(); - return redirect('family_accounts'); - } else { - flash("Family account failed to be deleted.")->error(); - return redirect('family_accounts'); - } - } - - /** - * Display a listing of the inactive Family Accounts. - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $family_accounts = FamilyAccount::onlyTrashed() - ->orderBy('family_head_id', 'asc') - ->paginate(50); - - if (count($family_accounts) < 1) { - flash()->error("There is no inactive Family Accounts"); - return redirect('family_accounts'); - } else { - return view('patient_discounts::family_accounts.inactive_family_accounts', compact('family_accounts')); - } - } - - /* - * display create deposit blade from the family - */ - public function add_family_deposit(Request $request) { - $family_account_id = $request->family_account_id; - $family_account_details = FamilyAccount::find($family_account_id); - - $patient_payment_methods = PatientPaymentMethod::pluck('name', 'id'); - $patient_payment_methods_options = ""; - foreach ($patient_payment_methods as $key => $value) { - $patient_payment_methods_options .= ''; - } - - return view('patient_discounts::family_accounts.add_family_deposit',compact('family_account_details', 'patient_payment_methods_options')); - } - - /* - * store a new family deposit - */ - public function store_family_deposit(Request $request) { - $track_receipts = new TrackReceipt; - $track_receipts->created_by = Auth::id(); - $track_receipts->reason = 'Procedures'; - $track_receipts->save(); - $receipt_number = sprintf("%04u", $track_receipts->id); - - //add this deposit to the chart of accounts sub account account - $new_family_deposit = new FamilyAccountDeposit; - $new_family_deposit->family_account_id = $request->family_account_id; - $new_family_deposit->deposit_amount = $request->deposit_amount; - $new_family_deposit->deposit_date = Carbon::createFromFormat('d-m-Y', $request->deposit_date)->toDateString(); - $new_family_deposit->deposited_by = $request->deposited_by; - $new_family_deposit->receipt_number = $receipt_number; - $new_family_deposit->created_by = Auth::id(); - if ($new_family_deposit->save()) { - $family_account_to_update = FamilyAccount::find($request->family_account_id); - $family_account_to_update->current_balance = $family_account_to_update->current_balance + (int)$request->deposit_amount; - $family_account_to_update->update(); - - //increase the balance on chart of accounts called "Family deposits" - $family_account_deposits_id = get_name("family_account_deposits", "slug", "id", "chart_of_accounts"); - if (is_numeric($family_account_deposits_id)) { - //increase the amount of "family" chart of accounts - $family_chart_of_account = ChartOfAccount::find($family_account_deposits_id); - $family_chart_of_account->balance = $family_chart_of_account->balance + (int)$request->deposit_amount; - $family_chart_of_account->update(); - } else { - flash('A chart of accounts is missing. Please contact Stre@mline support immediately!')->error(); - } - - record_cash_credits_to_daily_collection_account($request->deposit_amount, $receipt_number, "Family Account Deposits"); - } - - $family_account_details = FamilyAccount::find($request->family_account_id); - $family_members_array = explode(",", $family_account_details->family_members_ids); - - //create a receipt numbers from the id of the family account deposits table - $receipt_date = date('Y-m-d h:i:s'); - - $return_payment_methods = PatientFinanceController::register_payment_method($family_account_details->family_head_id, 0, $request->original_cash_to_pay, $request->payment_method, - $request->payment_methods_amount, array_fill(0, count($request->payment_methods_amount ?? []), null), array_fill(0, count($request->payment_methods_amount ?? []), 0), $receipt_number, 14, Auth::id(), 0); - - flash('Family account deposit has been updated')->success(); - - if (is_cashier_receipt_type_print_html()) { - return view('patient_discounts::family_accounts.deposit_receipt',compact('new_family_deposit', 'receipt_number','receipt_date','family_members_array', 'return_payment_methods')); - } else { - // so we first have to set a session and then go back to the payment page - // on the payment page we can then set a JS variable that can help redirect us to our pdf print - session()->put('print_family_account_receipt_pdf', 1); - - // since we want to reduce the amount of duplicate code, we shall send all items to one file for printing - $data = [ - "new_family_deposit" => $new_family_deposit, "receipt_number" => $receipt_number, "return_payment_methods" => $return_payment_methods, - "receipt_date" => $receipt_date, "family_members_array" => $family_members_array - ]; - - session()->put('print_family_account_receipt_pdf_details', $data); - - return redirect('/family_accounts/' . $request->family_account_id . '/statement/'); - } - } - - public function print_family_account_receipt_pdf_details() { - $data = session()->get("print_family_account_receipt_pdf_details"); - - // add check for when the people try to reload the page - if (!$data) { - return redirect('/home'); - } - - $data['hospital_information'] = HospitalInformation::first(); - - // lest i forget Thy love for me - session()->forget('print_family_account_receipt_pdf'); - session()->forget('print_family_account_receipt_pdf_details'); - - $pdf = SnappyPDF::loadView("patient_discounts::family_accounts.print_family_account_receipt_pdf_details", $data) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline'); - - return $pdf->inline('Family Accounts Receipt' . date(" d-m-y h:ia") . '.pdf'); - } - - /* - * family accounts consumption report - */ - public function family_accounts_consumption_report(Request $request) { - $family_accounts_array = []; - $search_text = ""; - $family_accounts_records = FamilyAccount::orderBy('id','desc')->get(); - foreach ($family_accounts_records as $record) { - $family_accounts_array[$record->id] = get_full_name($record->family_head_id, 'id', 'first_name', 'last_name', 'patients'); - } - $family_accounts_array = [0 => 'All Families'] + $family_accounts_array; - - $staff_members = User::pluck('username', 'id')->toArray(); - $staff_members = [0 => 'All Staff'] + $staff_members; - - $filters = []; - - if ($request->search_by == 1) { - $end = Carbon::yesterday()->endOfDay(); - $start = Carbon::yesterday()->startOfDay(); - $search_text .= "Yesterday | "; - } else if ($request->search_by == 2) { - $end = Carbon::parse($request->start_date)->endOfDay(); - $start = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "On: " . streamline_date($request->start_date) . " | "; - } else if ($request->search_by == 3) { - $end = Carbon::parse($request->end_date)->endOfDay(); - $start = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "From: " . streamline_date($request->start_date) . " to " . streamline_date($request->end_date) . " | "; - } else { - $end = Carbon::today()->endOfDay(); - $start = Carbon::today()->startOfDay(); - $search_text .= "Today | "; - } - - $family_account_id = $request->family_account_id; - - if (!is_null($family_account_id) && $family_account_id != 0) { - $filters[] = ['family_account_consumptions.family_account_id', '=', $family_account_id]; - $search_text .= "Family Of: " . get_full_name($family_account_id, 'id', 'first_name', 'last_name', 'patients') . " | "; - } else { - $search_text .= "Family Of: All | "; - } - - $staff_member_id = $request->staff_member; - - if (!is_null($staff_member_id) && $staff_member_id != 0) { - $filters[] = ['family_account_consumptions.created_by', '=', $staff_member_id]; - $search_text .= "Staff Member: " . get_full_name($staff_member_id, 'id', 'first_name', 'last_name', 'users'); - } else { - $search_text .= "Staff Member: All"; - } - - $family_consumptions = FamilyAccountConsumption::whereBetween('family_account_consumptions.created_at', [$start, $end]) - ->where($filters) - ->leftJoin('patients', 'family_account_consumptions.patient_id', '=', 'patients.id') - ->leftJoin('users', 'family_account_consumptions.created_by', '=', 'users.id') - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->select('family_account_consumptions.*', 'patients.first_name', 'patients.last_name', 'patients.number', 'users.first_name as user_first_name', 'users.last_name as user_last_name') - ->get(); - - return view('patient_discounts::family_accounts.family_account_consumption_report',compact('family_consumptions','family_accounts_array', 'staff_members', 'search_text')); - } - - /* family accounts deposits report */ - public function deposits_report(Request $request) { - $family_accounts_array = []; - $search_text = ""; - $family_accounts_records = FamilyAccount::orderBy('id','desc')->get(); - foreach ($family_accounts_records as $record) { - $family_accounts_array[$record->id] = get_full_name($record->family_head_id, 'id', 'first_name', 'last_name', 'patients'); - } - $family_accounts_array = [0 => 'All Families'] + $family_accounts_array; - - $staff_members = User::pluck('username', 'id')->toArray(); - $staff_members = [0 => 'All Staff'] + $staff_members; - - $filters = []; - - if ($request->search_by == 1) { - $end = Carbon::yesterday()->endOfDay(); - $start = Carbon::yesterday()->startOfDay(); - $search_text .= "Yesterday | "; - } else if ($request->search_by == 2) { - $end = Carbon::parse($request->start_date)->endOfDay(); - $start = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "On: " . streamline_date($request->start_date) . " | "; - } else if ($request->search_by == 3) { - $end = Carbon::parse($request->end_date)->endOfDay(); - $start = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "From: " . streamline_date($request->start_date) . " to " . streamline_date($request->end_date) . " | "; - } else { - $end = Carbon::today()->endOfDay(); - $start = Carbon::today()->startOfDay(); - $search_text .= "Today | "; - } - - $family_account_id = $request->family_account_id; - - if (!is_null($family_account_id) && $family_account_id != 0) { - $filters[] = ['family_account_deposits.family_account_id', '=', $family_account_id]; - $search_text .= "Family Of: " . get_full_name($family_account_id, 'id', 'first_name', 'last_name', 'patients') . " | "; - } else { - $search_text .= "Family Of: All | "; - } - - $staff_member_id = $request->staff_member; - - if (!is_null($staff_member_id) && $staff_member_id != 0) { - $filters[] = ['family_account_deposits.created_by', '=', $staff_member_id]; - $search_text .= "Staff Member: " . get_full_name($staff_member_id, 'id', 'first_name', 'last_name', 'users'); - } else { - $search_text .= "Staff Member: All"; - } - - $family_deposits = FamilyAccountDeposit::whereBetween('family_account_deposits.created_at', [$start, $end]) - ->where($filters) - ->where('family_account_deposits.is_opening_amount', 0) - ->leftJoin('users', 'family_account_deposits.created_by', '=', 'users.id') - ->select('family_account_deposits.*', 'users.first_name as user_first_name', 'users.last_name as user_last_name') - ->get(); - - return view('patient_discounts::family_accounts.deposit_report',compact('family_deposits','search_text','staff_members','family_accounts_array')); - } - - public function family_accounts_search(Request $request) - { - $search_by = $request->search_by; - $reg_date = $request->reg_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - $family_account_id = $request->family_account_id; - $family_accounts_array = []; - $family_accounts_records = FamilyAccount::orderBy('id','desc')->get(); - foreach ($family_accounts_records as $record) { - $family_accounts_array[$record->id] = get_full_name($record->family_head_id, 'id', 'first_name', 'last_name', 'patients'); - } - $family_accounts_array = ['' => '- select -'] + $family_accounts_array; - - if (!is_null($search_by)){ - $filters = []; - - if($search_by == "0"){ - // last 24 hours - $last_day = Carbon::now()->subDay(); - array_push($filters, ['created_at', '>', $last_day]); - } elseif($search_by == "1"){ - // custom date - $start_date_search = Carbon::parse($reg_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::parse($reg_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date_search]); - array_push($filters, ['created_at', '<', $end_date_search]); - } elseif($search_by == "2"){ - // custom date range - $start_date_search = Carbon::parse($start_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::parse($end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date_search]); - array_push($filters, ['created_at', '<', $end_date_search]); - } - - if (!is_null($family_account_id)) { - $family_accounts = FamilyAccount::where('id', $family_account_id)->where($filters)->get(); - } else { - $family_accounts = FamilyAccount::where($filters)->get(); - } - } else { - $family_accounts = FamilyAccount::orderBy('id','desc')->get(); - } - - return view('patient_discounts::family_accounts.index',compact('family_accounts','reg_date','start_date','end_date', 'family_accounts_array')); - } - - public function search_family_account_name(Request $request) { - - $data = []; - - if ($request->has('q')) { - $search = $request->q; - $data = Patient::select("id", "first_name", "last_name", "number", "phone") - ->where('first_name', 'LIKE', "%$search%") - ->orWhere('last_name', 'LIKE', "%$search%") - ->get(); - } - - return response()->json($data); - } - - public function family_accounts_statements($family_account, Request $request) { - $family_account_id = $family_account; - - $search_by = $request->search_by; - $reg_date = $request->reg_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - - if (!is_null($search_by)){ - $filters = []; - - if($search_by == "0"){ - // last 24 hours - $last_day = Carbon::now()->subDay(); - $filters[] = ['created_at', '>', $last_day]; - } elseif($search_by == "1"){ - // custom date - $start_date_search = Carbon::parse($reg_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::parse($reg_date)->endOfDay()->toDateTimeString(); - - $filters[] = ['created_at', '>', $start_date_search]; - $filters[] = ['created_at', '<', $end_date_search]; - } elseif($search_by == "2"){ - // custom date range - $start_date_search = Carbon::parse($start_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::parse($end_date)->endOfDay()->toDateTimeString(); - - $filters[] = ['created_at', '>', $start_date_search]; - $filters[] = ['created_at', '<', $end_date_search]; - } - $family_consumptions = FamilyAccountConsumption::where($filters)->where('family_account_id', $family_account_id)->get(); - $family_deposits = FamilyAccountDeposit::where($filters)->where('family_account_id', $family_account_id)->orderBy('created_at')->get(); - $family_refunds = FamilyAccountsRefund::where($filters)->where('family_account_id', $family_account_id)->get(); - } else { - $family_consumptions = FamilyAccountConsumption::where('family_account_id', $family_account_id)->get(); - $family_deposits = FamilyAccountDeposit::where('family_account_id', $family_account_id)->orderBy('created_at')->get(); - $family_refunds = FamilyAccountsRefund::where('family_account_id', $family_account_id)->get(); - } - - $family_account_details = FamilyAccount::withTrashed()->find($family_account_id); - - return view('patient_discounts::family_accounts.statements',compact('family_consumptions','family_deposits','family_account_id','family_account_details','reg_date','start_date','end_date', 'family_refunds')); - } - - public function family_statement_print(Request $request) - { - $family_account_id = $request->family_account_id; - - $search_by = $request->search_by; - $reg_date = $request->reg_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - - $filters = []; - - if(is_null($reg_date) && is_null($start_date) && is_null($end_date)){ - // last 24 hours - $last_day = Carbon::now()->subDay(); - array_push($filters, ['created_at', '>', $last_day]); - } elseif($reg_date){ - // custom date - $start_date_search = Carbon::parse($reg_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::parse($reg_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date_search]); - array_push($filters, ['created_at', '<', $end_date_search]); - } elseif($start_date && $end_date){ - // custom date range - $start_date_search = Carbon::parse($start_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::parse($end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date_search]); - array_push($filters, ['created_at', '<', $end_date_search]); - } - $family_consumptions = FamilyAccountConsumption::where($filters)->where('family_account_id', $family_account_id)->get(); - $family_deposits = FamilyAccountDeposit::where($filters)->where('family_account_id', $family_account_id)->get(); - $family_refunds = FamilyAccountsRefund::where($filters)->where('family_account_id', $family_account_id)->get(); - $family_account_details = FamilyAccount::withTrashed()->find($family_account_id); - - if(is_null($reg_date) && is_null($start_date) && is_null($end_date)){ - $family_consumptions = FamilyAccountConsumption::where('family_account_id', $family_account_id)->get(); - $family_deposits = FamilyAccountDeposit::where('family_account_id', $family_account_id)->get(); - $family_refunds = FamilyAccountsRefund::where('family_account_id', $family_account_id)->get(); - } - - $hospital_information = HospitalInformation::first(); - - $data = [ - 'family_consumptions' => $family_consumptions, - 'family_deposits' => $family_deposits, - 'family_account_details' => $family_account_details, - 'family_refunds' => $family_refunds, - 'hospitalInfo' => $hospital_information, - ]; - - - $pdf = SnappyPDF::loadView("patient_discounts::family_accounts/statements_print", $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline'); - - - return $pdf->inline('Family Account Statement' . date(" d-m-y h:ia") . '.pdf'); - } - - public function cancel_deposit_reason(Request $request) - { - $deposit_id = $request->deposit_id; - $family_deposit = FamilyAccountDeposit::find($deposit_id); - $family_account_id = $family_deposit->family_account_id; - $family_account = FamilyAccount::withTrashed()->find($family_account_id); - - return view('patient_discounts::family_accounts.cancel_family_account_deposit',compact('deposit_id','family_deposit','family_account_id','family_account')); - } - - public function cancel_deposit(Request $request) - { - $deposit_id = $request->deposit_id; - $family_deposit = FamilyAccountDeposit::find($deposit_id); - $family_account_id = $family_deposit->family_account_id; - if ($family_deposit->delete()) { - //reduce the family's current balance by deleted amount - $family_account_to_update = FamilyAccount::find($family_account_id); - $family_account_to_update->current_balance = $family_account_to_update->current_balance - (int)$family_deposit->deposit_amount; - $family_account_to_update->update(); - - $family_account_deposits_id = get_name("family_account_deposits", "slug", "id", "chart_of_accounts"); - if (is_numeric($family_account_deposits_id)) { - // decrease the balance on chart of accounts called "family account deposit" - $chart_of_account = ChartOfAccount::find($family_account_deposits_id); - $chart_of_account->balance = $chart_of_account->balance - (int)$family_deposit->deposit_amount; - $chart_of_account->update(); - } else { - flash('A chart of accounts is missing. Please contact Stre@mline support immediately!')->error(); - } - - // delete the patient payment methods - DB::table('payment_methods_transactions') - ->where('receipt_number', $family_deposit->receipt_number) - ->delete(); - - record_cash_debits_to_daily_collection_account($family_deposit->deposit_amount, generateReceiptNumberFromDB(), 'Cancel Family Account Deposit'); - - //record the cancellation in respective table - $this->record_family_deposit_cancellation($family_account_id, $deposit_id, $request->reason); - } - - flash("Family account deposit has been cancelled")->success(); - return redirect("family_accounts_deposits_report"); - } - - public function record_family_deposit_cancellation($family_account_id, $deposit_id, $reason) - { - $family_deposit_cancellation = new FamilyAccountDepositCancellation; - $family_deposit_cancellation->family_account_id = $family_account_id; - $family_deposit_cancellation->family_account_deposit_id = $deposit_id; - $family_deposit_cancellation->cancelled_by = Auth::id(); - $family_deposit_cancellation->reason = $reason; - $family_deposit_cancellation->save(); - } - - public function refund($family_account_id) { - $family_account_details = FamilyAccount::find($family_account_id); - - $banks = DB::table('chart_of_accounts')->whereNull('deleted_at')->where('type', 4)->pluck('name', 'id')->prepend('--select--', ''); - - if ($family_account_details->current_balance < 1) { - flash("Family account refund can not be completed because balance is less than refund limit")->error(); - return redirect('/family_accounts/' . $family_account_id . '/statement/'); - } else { - return view('patient_discounts::family_accounts.refund',compact('family_account_details', 'banks')); - } - } - - public function store_family_refund(Request $request) { - $family_account_id = $request->family_account_id; - $current_balance = $request->current_balance; - $refund_amount = $request->refund_amount; - $refund_date = $request->refund_date; - $refunded_to = $request->refunded_to; - $account_id = $request->account_id; - $account_balance = $request->account_balance; - - $track_receipts = new TrackReceipt; - $track_receipts->created_by = Auth::id(); - $track_receipts->reason = 'Procedures'; - $track_receipts->save(); - $receipt_number = sprintf("%04u", $track_receipts->id); - - if (($current_balance < $refund_amount) || ($refund_amount < 1) || ($account_balance < $refund_amount)) { - flash("Please enter a valid refund amount")->error(); - return redirect('/family_accounts/refund/' . $family_account_id); - } - - //increase the family's current balance by deleted amount - $family_account_to_update = FamilyAccount::find($family_account_id); - $family_account_to_update->current_balance = (int)$current_balance + (int)$refund_amount; - $family_account_to_update->update(); - - // decrease the balance on select account - $chart_of_account = ChartOfAccount::find($account_id); - $chart_of_account->balance = $chart_of_account->balance - (int)$refund_amount; - $chart_of_account->update(); - - $account_balance_record_on_expense_date = get_latest_banking_record_based_on_transaction_date($account_id, date('Y-m-d', strtotime($refund_date))); - $account_balance_on_expense_date_after_payment = ($account_balance_record_on_expense_date ? (int)$account_balance_record_on_expense_date->account_balance : 0) - $refund_amount; - $last_insert_id = capture_bank_record('Family Account Refunds', date('Y-m-d', strtotime($refund_date)), $account_id, 0, - $account_balance_on_expense_date_after_payment, 0, $refund_amount, 'Family Account Refunds', $receipt_number); - - update_banking_record_balances(date('Y-m-d', strtotime($refund_date)), $account_id, $last_insert_id, $account_balance_on_expense_date_after_payment); - - $family_account_deposits_id = get_name("family_account_deposits", "slug", "id", "chart_of_accounts"); - if (is_numeric($family_account_deposits_id)) { - // decrease the balance on chart of accounts called "family account deposit" - $chart_of_account = ChartOfAccount::find($family_account_deposits_id); - $chart_of_account->balance = $chart_of_account->balance - (int)$refund_amount; - $chart_of_account->update(); - } else { - flash('A chart of accounts is missing. Please contact Stre@mline support immediately!')->error(); - } - - $refund = new FamilyAccountsRefund(); - $refund->family_account_id = $family_account_id; - $refund->refund_amount = $refund_amount; - $refund->refund_date = Carbon::createFromFormat('d-m-Y', $refund_date)->toDateString(); - $refund->refund_to = $refunded_to; - $refund->created_by = Auth::id(); - $refund->save(); - - $family_members_array = explode(",", $family_account_to_update->family_members_ids); - - if (is_cashier_receipt_type_print_html()) { - return view('patient_discounts::family_accounts.refund_receipt',compact('refund_amount', 'receipt_number', 'refund_date', 'family_members_array')); - } else { - // so we first have to set a session and then go back to the payment page - // on the payment page we can then set a JS variable that can help redirect us to our pdf print - session()->put('print_family_account_refund_receipt_pdf', 1); - - // since we want to reduce the amount of duplicate code, we shall send all items to one file for printing - $data = [ - "refund_amount" => $refund_amount, "receipt_number" => $receipt_number, - "refund_date" => $refund_date, "family_members_array" => $family_members_array - ]; - - session()->put('print_family_account_refund_receipt_pdf_details', $data); - - return redirect('/family_accounts/' . $request->family_account_id . '/statement/'); - } - } - - public function print_family_account_refund_receipt_pdf_details() { - $data = session()->get("print_family_account_refund_receipt_pdf_details"); - - // add check for when the people try to reload the page - if (!$data) { - return redirect('/home'); - } - - $data['hospital_information'] = HospitalInformation::first(); - - // lest i forget Thy love for me - session()->forget('print_family_account_refund_receipt_pdf'); - session()->forget('print_family_account_refund_receipt_pdf_details'); - - $pdf = SnappyPDF::loadView("patient_discounts::family_accounts.print_family_account_refund_receipt_pdf_details", $data) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline'); - - return $pdf->inline('Family Accounts Refund Receipt' . date(" d-m-y h:ia") . '.pdf'); - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $family_accounts= FamilyAccount::withTrashed()->find($id); - - if($family_accounts->restore()){ - flash("Family Account has been activated.")->success(); - return redirect('family_accounts'); - } - } - - public function get_family_account_balance($id) - { - $family_account = FamilyAccount::find($id); - if ($family_account) { - return $family_account->current_balance; - } - return 0; - } - - public function custom_family_accounts($category) - { - $family_accounts = []; - - $today = Carbon::today()->toDateTimeString(); - $today_minus_thirty = Carbon::today()->subDays(30)->toDateTimeString(); - $today_minus_sixty = Carbon::today()->subDays(60)->toDateTimeString(); - $today_minus_ninety = Carbon::today()->subDays(90)->toDateTimeString(); - - $reg_date = $today; - $start_date = $today; - $end_date = $today; - - $family_accounts_array = []; - $family_accounts_records = FamilyAccount::orderBy('id','desc')->get(); - foreach ($family_accounts_records as $record) { - $family_accounts_array[$record->id] = get_full_name($record->family_head_id, 'id', 'first_name', 'last_name', 'patients'); - } - $family_accounts_array = ['' => '- select -'] + $family_accounts_array; - - switch ($category) { - case 'current': - $family_accounts_query = "SELECT * FROM family_accounts WHERE deleted_at IS NULL AND current_balance < 0 AND created_at >= '{$today}' ORDER BY id ASC"; - $family_accounts = DB::select($family_accounts_query); - break; - - case 'one_to_thirty': - $reg_date = null; - $start_date = $today_minus_thirty; - $family_accounts_query = "SELECT * FROM family_accounts WHERE deleted_at IS NULL AND current_balance < 0 AND created_at BETWEEN '{$today_minus_thirty}' AND '{$today}' ORDER BY id ASC"; - $family_accounts = DB::select($family_accounts_query); - break; - - case 'thirty_one_to_sixty': - $reg_date = null; - $start_date = $today_minus_sixty; - $end_date = $today_minus_thirty; - $family_accounts_query = "SELECT * FROM family_accounts WHERE deleted_at IS NULL AND current_balance < 0 AND created_at BETWEEN '{$today_minus_sixty}' AND '{$today_minus_thirty}' ORDER BY id ASC"; - $family_accounts = DB::select($family_accounts_query); - break; - - case 'sixty_one_to_ninety': - $reg_date = null; - $start_date = $today_minus_ninety; - $end_date = $today_minus_sixty; - $family_accounts_query = "SELECT * FROM family_accounts WHERE deleted_at IS NULL AND current_balance < 0 AND created_at BETWEEN '{$today_minus_ninety}' AND '{$today_minus_sixty}' ORDER BY id ASC"; - $family_accounts = DB::select($family_accounts_query); - break; - - case 'ninety_one_and_over': - $reg_date = null; - $start_date = null; - $end_date = $today_minus_ninety; - $family_accounts_query = "SELECT * FROM family_accounts WHERE deleted_at IS NULL AND current_balance < 0 AND created_at < '{$today_minus_ninety}' ORDER BY id ASC"; - $family_accounts = DB::select($family_accounts_query); - break; - } - - return view('patient_discounts::family_accounts.index', compact('family_accounts','reg_date','start_date','end_date', 'family_accounts_array')); - } - - public function custom_family_account($patient_id, $category) - { - $family_accounts = []; - - $today = Carbon::today()->toDateTimeString(); - $today_minus_thirty = Carbon::today()->subDays(30)->toDateTimeString(); - $today_minus_sixty = Carbon::today()->subDays(60)->toDateTimeString(); - $today_minus_ninety = Carbon::today()->subDays(90)->toDateTimeString(); - - $reg_date = $today; - $start_date = $today; - $end_date = $today; - - $family_accounts_array = []; - $family_accounts_records = FamilyAccount::orderBy('id','desc')->get(); - foreach ($family_accounts_records as $record) { - $family_accounts_array[$record->id] = get_full_name($record->family_head_id, 'id', 'first_name', 'last_name', 'patients'); - } - $family_accounts_array = ['' => '- select -'] + $family_accounts_array; - - switch ($category) { - case 'current': - $family_accounts_query = "SELECT * FROM family_accounts WHERE deleted_at IS NULL AND current_balance < 0 AND family_head_id = {$patient_id} AND created_at >= '{$today}' ORDER BY id ASC"; - if ($patient_id == 0) { - $family_accounts_query = "SELECT * FROM family_accounts WHERE deleted_at IS NULL AND current_balance < 0 AND family_head_id IS NULL AND created_at >= '{$today}' ORDER BY id ASC"; - } - $family_accounts = DB::select($family_accounts_query); - break; - - case 'one_to_thirty': - $reg_date = null; - $start_date = $today_minus_thirty; - $family_accounts_query = "SELECT * FROM family_accounts WHERE deleted_at IS NULL AND current_balance < 0 AND family_head_id = {$patient_id} AND created_at BETWEEN '{$today_minus_thirty}' AND '{$today}' ORDER BY id ASC"; - if ($patient_id == 0) { - $family_accounts_query = "SELECT * FROM family_accounts WHERE deleted_at IS NULL AND current_balance < 0 AND family_head_id IS NULL AND created_at BETWEEN '{$today_minus_thirty}' AND '{$today}' ORDER BY id ASC"; - } - $family_accounts = DB::select($family_accounts_query); - break; - - case 'thirty_one_to_sixty': - $reg_date = null; - $start_date = $today_minus_sixty; - $end_date = $today_minus_thirty; - $family_accounts_query = "SELECT * FROM family_accounts WHERE deleted_at IS NULL AND current_balance < 0 AND family_head_id = {$patient_id} AND created_at BETWEEN '{$today_minus_sixty}' AND '{$today_minus_thirty}' ORDER BY id ASC"; - if ($patient_id == 0) { - $family_accounts_query = "SELECT * FROM family_accounts WHERE deleted_at IS NULL AND current_balance < 0 AND family_head_id IS NULL AND created_at BETWEEN '{$today_minus_sixty}' AND '{$today_minus_thirty}' ORDER BY id ASC"; - } - $family_accounts = DB::select($family_accounts_query); - break; - - case 'sixty_one_to_ninety': - $reg_date = null; - $start_date = $today_minus_ninety; - $end_date = $today_minus_sixty; - $family_accounts_query = "SELECT * FROM family_accounts WHERE deleted_at IS NULL AND current_balance < 0 AND family_head_id = {$patient_id} AND created_at BETWEEN '{$today_minus_ninety}' AND '{$today_minus_sixty}' ORDER BY id ASC"; - if ($patient_id == 0) { - $family_accounts_query = "SELECT * FROM family_accounts WHERE deleted_at IS NULL AND current_balance < 0 AND family_head_id IS NULL AND created_at BETWEEN '{$today_minus_ninety}' AND '{$today_minus_sixty}' ORDER BY id ASC"; - } - $family_accounts = DB::select($family_accounts_query); - break; - - case 'ninety_one_and_over': - $reg_date = null; - $start_date = null; - $end_date = $today_minus_ninety; - $family_accounts_query = "SELECT * FROM family_accounts WHERE deleted_at IS NULL AND current_balance < 0 AND family_head_id = {$patient_id} AND created_at < '{$today_minus_ninety}' ORDER BY id ASC"; - if ($patient_id == 0) { - $family_accounts_query = "SELECT * FROM family_accounts WHERE deleted_at IS NULL AND current_balance < 0 AND family_head_id IS NULL AND created_at < '{$today_minus_ninety}' ORDER BY id ASC"; - } - $family_accounts = DB::select($family_accounts_query); - break; - } - - return view('patient_discounts::family_accounts.index', compact('family_accounts','reg_date','start_date','end_date', 'family_accounts_array')); - } - - public function family_deposit_reprint($id){ - $new_family_deposit = FamilyAccountDeposit::find($id); - - $family_account_details = FamilyAccount::find($new_family_deposit->family_account_id); - $family_members_array = explode(",", $family_account_details->family_members_ids); - - $receipt_number = $new_family_deposit->receipt_number; - $receipt_date = TrackReceipt::find($receipt_number); - $receipt_date = $receipt_date ?? date('Y-m-d h:i:s'); - - $return_payment_methods_record = PaymentMethodsTransaction::where(['tag_id' => 14, 'patient_id' => $family_account_details->family_head_id, 'amount' => $new_family_deposit->deposit_amount, 'receipt_number' => $receipt_number])->first(); - if ($return_payment_methods_record) { - $return_payment_methods[$return_payment_methods_record->payment_method_id] = $return_payment_methods_record->amount; - } else{ - $return_payment_methods = []; - } - - if (is_cashier_receipt_type_print_html()) { - return view('patient_discounts::family_accounts.deposit_receipt',compact('new_family_deposit', 'receipt_number','receipt_date','family_members_array', 'return_payment_methods')); - } else { - // so we first have to set a session and then go back to the payment page - // on the payment page we can then set a JS variable that can help redirect us to our pdf print - session()->put('print_family_account_receipt_pdf', 1); - - // since we want to reduce the amount of duplicate code, we shall send all items to one file for printing - $data = [ - "new_family_deposit" => $new_family_deposit, "receipt_number" => $receipt_number, "return_payment_methods" => $return_payment_methods, - "receipt_date" => $receipt_date, "family_members_array" => $family_members_array - ]; - - session()->put('print_family_account_receipt_pdf_details', $data); - - return redirect('/family_accounts/' . $request->family_account_id . '/statement/'); - } - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Http/Controllers/PatientAccountsController.php b/docker/statistics/Modules/PatientDiscounts/Http/Controllers/PatientAccountsController.php deleted file mode 100755 index 087daca5..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Http/Controllers/PatientAccountsController.php +++ /dev/null @@ -1,592 +0,0 @@ -get('patient_id'); - - $search_by = $request->search_by; - $reg_date = $request->reg_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - - $patient = DB::table('patients') - ->where('id', $patient_id) - ->first(); - - if (!is_null($search_by)){ - if($search_by == "0"){ - // last 24 hours - $start_date_search = Carbon::now()->subDay()->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::now()->endOfDay()->toDateTimeString(); - } elseif($search_by == "1"){ - // custom date - $start_date_search = Carbon::parse($reg_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::parse($reg_date)->endOfDay()->toDateTimeString(); - } elseif($search_by == "2"){ - // custom date range - $start_date_search = Carbon::parse($start_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::parse($end_date)->endOfDay()->toDateTimeString(); - } else { - $start_date_search = Carbon::now()->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::now()->endOfDay()->toDateTimeString(); - } - } else { - $start_date_search = Carbon::now()->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::now()->endOfDay()->toDateTimeString(); - } - - $patient_deposits = PatientAccountsDeposit::whereBetween('deposit_date', [$start_date_search, $end_date_search]) - ->where('patient_id', $patient_id) - ->get(); - - $patient_refunds = PatientAccountsRefund::whereBetween('refund_date', [$start_date_search, $end_date_search]) - ->where('patient_id', $patient_id) - ->get(); - - $patient_consumptions = PatientAccountConsumption::whereBetween('created_at', [$start_date_search, $end_date_search]) - ->where('patient_id', $patient_id) - ->get(); - - return view('patient_discounts::patient_accounts.statement', compact('patient', 'search_by', 'reg_date', 'start_date', 'end_date', - 'patient_deposits', 'patient_refunds', 'patient_consumptions')); - } - - public function print_statement(Request $request) { - $patient_id = session()->get('patient_id'); - - $search_by = $request->search_by; - $reg_date = $request->reg_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - - if (!is_null($search_by)){ - if($search_by == "0"){ - // last 24 hours - $start_date_search = Carbon::now()->subDay()->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::now()->endOfDay()->toDateTimeString(); - } elseif($search_by == "1"){ - // custom date - $start_date_search = Carbon::parse($reg_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::parse($reg_date)->endOfDay()->toDateTimeString(); - } elseif($search_by == "2"){ - // custom date range - $start_date_search = Carbon::parse($start_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::parse($end_date)->endOfDay()->toDateTimeString(); - } else { - $start_date_search = Carbon::now()->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::now()->endOfDay()->toDateTimeString(); - } - } else { - $start_date_search = Carbon::now()->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::now()->endOfDay()->toDateTimeString(); - } - - $patient_deposits = PatientAccountsDeposit::whereBetween('deposit_date', [$start_date_search, $end_date_search]) - ->where('patient_id', $patient_id) - ->get(); - - $patient_refunds = PatientAccountsRefund::whereBetween('refund_date', [$start_date_search, $end_date_search]) - ->where('patient_id', $patient_id) - ->get(); - - $patient_consumptions = PatientAccountConsumption::whereBetween('created_at', [$start_date_search, $end_date_search]) - ->where('patient_id', $patient_id) - ->get(); - - $hospital_information = HospitalInformation::first(); - - $data = [ - 'patient_consumptions' => $patient_consumptions, - 'patient_refunds' => $patient_refunds, - 'patient_deposits' => $patient_deposits, - 'hospitalInfo' => $hospital_information, - 'patient_id' => $patient_id, - 'search_info' => "Patient Account details and transactions between " . streamline_date($start_date_search) - . " and " . streamline_date($end_date_search) . " for " . - get_full_name($patient_id, 'id', 'first_name', 'last_name', 'patients') . - " (" . get_name($patient_id, 'id', 'number', 'patients') . ")" - ]; - - $pdf = SnappyPDF::loadView("patient_discounts::patient_accounts/print_statement", $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline'); - - return $pdf->inline('Patient Account Statement' . date(" d-m-y h:ia") . '.pdf'); - } - - public function make_deposit() { - $patient_id = session()->get('patient_id'); - - $patient = DB::table('patients')->find($patient_id); - - $patient_payment_methods = PatientPaymentMethod::pluck('name', 'id'); - $patient_payment_methods_options = ""; - foreach ($patient_payment_methods as $key => $value) { - $patient_payment_methods_options .= ''; - } - - return view('patient_discounts::patient_accounts.make_deposit', compact('patient', 'patient_payment_methods_options')); - } - - public function store_deposit(Request $request) { - $patient_id = session()->get('patient_id'); - $patient = DB::table('patients')->find($patient_id); - - $deposit_amount = $request->deposit_amount; - $deposit_date = $request->deposit_date; - - $track_receipts = new TrackReceipt; - $track_receipts->created_by = Auth::id(); - $track_receipts->reason = 'Patient Account Deposit'; - $track_receipts->save(); - $receipt_number = sprintf("%04u", $track_receipts->id); - - $deposit = new PatientAccountsDeposit(); - - $deposit->patient_id = $patient_id; - $deposit->deposit_amount = $deposit_amount; - $deposit->deposit_date = Carbon::createFromFormat('d-m-Y', $deposit_date)->toDateString(); - $deposit->receipt_number = $receipt_number; - $deposit->created_by = Auth::id(); - - if ($deposit->save()) { - record_cash_credits_to_daily_collection_account($deposit_amount, $receipt_number, "Patient Account Deposits"); - - $patient_to_update = Patient::find($patient_id); - $patient_to_update->patient_account_balance = $patient_to_update->patient_account_balance + (int)$request->deposit_amount; - $patient_to_update->update(); - - $patient_account_balance_id = get_name("patient_account_balance", "slug", "id", "chart_of_accounts"); - if (is_numeric($patient_account_balance_id)) { - // increase the balance on chart of accounts called "patient account deposit" - $chart_of_account = ChartOfAccount::find($patient_account_balance_id); - $chart_of_account->balance = $chart_of_account->balance + (int)$request->deposit_amount; - $chart_of_account->update(); - } else { - flash('A chart of accounts is missing. Please contact Stre@mline support immediately!')->error(); - } - - $receipt_date = date('Y-m-d h:i:s'); - - $return_payment_methods = PatientFinanceController::register_payment_method($patient_id, 0, $request->original_cash_to_pay, $request->payment_method, - $request->payment_methods_amount, array_fill(0, ($request->payment_methods_amount ? count($request->payment_methods_amount) : 0), null), array_fill(0, ($request->payment_methods_amount ? count($request->payment_methods_amount) : 0), 0), $receipt_number, 15, Auth::id(), 0); - - flash('Patient account deposit has been updated')->success(); - - $description = "Amount Deposited"; - - if (is_cashier_receipt_type_print_html()) { - return view('patient_discounts::patient_accounts.deposit_receipt',compact('deposit_amount', 'receipt_number', 'receipt_date', 'return_payment_methods', - 'patient', 'deposit_date', 'description')); - } else { - // so we first have to set a session and then go back to the payment page - // on the payment page we can then set a JS variable that can help redirect us to our pdf print - session()->put('print_patient_account_receipt_pdf', 1); - - // since we want to reduce the amount of duplicate code, we shall send all items to one file for printing - $data = [ - "deposit_amount" => $deposit_amount, "receipt_number" => $receipt_number, "deposit_date" => $deposit_date, - "return_payment_methods" => $return_payment_methods, "receipt_date" => $receipt_date, "patient_id" => $patient_id, "description" => $description - ]; - - session()->put('print_patient_account_receipt_pdf_details', $data); - - return redirect('/patient_finance/home/'); - } - } else { - return redirect('patient_accounts/make_deposit'); - } - } - - public function print_receipt_pdf_details() { - $data = session()->get("print_patient_account_receipt_pdf_details"); - - // add check for when the people try to reload the page - if (!$data) { - return redirect('/home'); - } - - $data['hospital_information'] = \Streamline\Models\HospitalInformation::first(); - - // lest i forget Thy love for me - session()->forget('print_patient_account_receipt_pdf'); - session()->forget('print_patient_account_receipt_pdf_details'); - - $pdf = SnappyPDF::loadView("patient_discounts::patient_accounts.print_receipt_pdf_details", $data) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline'); - - return $pdf->inline('Patient Accounts Receipt' . date(" d-m-y h:ia") . '.pdf'); - } - - public function refund_deposit() { - $patient_id = session()->get('patient_id'); - $patient = DB::table('patients')->find($patient_id); - - $current_balance = get_name($patient_id, 'id', 'patient_account_balance', 'patients'); - - $banks = DB::table('chart_of_accounts')->whereNull('deleted_at')->where('type', 4)->pluck('name', 'id')->prepend('--select--', ''); - - if ($current_balance > 0) { - return view('patient_discounts::patient_accounts.refund_deposit', compact('current_balance', 'patient', 'banks')); - } else { - flash("Patient account refund can not be completed because balance is less than refund limit")->error(); - return redirect('/patient_accounts/statement'); - } - } - - public function save_refund_deposit(Request $request) { - $patient_id = session()->get('patient_id'); - $patient = DB::table('patients')->find($patient_id); - - $track_receipts = new TrackReceipt; - $track_receipts->created_by = Auth::id(); - $track_receipts->reason = 'Patient Accounts Refund'; - $track_receipts->save(); - $receipt_number = sprintf("%04u", $track_receipts->id); - - $current_balance = $request->current_balance; - $refund_amount = $request->refund_amount; - $refund_date = $request->refund_date; - $account_id = $request->account_id; - $account_balance = $request->account_balance; - $refund_reason = $request->refund_reason; - - if (($current_balance < $refund_amount) || ($refund_amount < 1) || ($account_balance < $refund_amount)) { - flash("Please enter a valid refund amount")->error(); - return redirect('/patient_accounts/refund_deposit'); - } - - // reduce the patient's current balance by deleted amount - $patient_to_update = Patient::find($patient_id); - $patient_to_update->patient_account_balance = (int)$current_balance - (int)$refund_amount; - $patient_to_update->update(); - - // decrease the balance on select account - $chart_of_account = ChartOfAccount::find($account_id); - $chart_of_account->balance = $chart_of_account->balance - (int)$refund_amount; - $chart_of_account->update(); - - $account_balance_record_on_expense_date = get_latest_banking_record_based_on_transaction_date($account_id, date('Y-m-d', strtotime($refund_date))); - $account_balance_on_expense_date_after_payment = ($account_balance_record_on_expense_date ? (int)$account_balance_record_on_expense_date->account_balance : 0) - $refund_amount; - $last_insert_id = capture_bank_record('Patient Account Refunds', date('Y-m-d', strtotime($refund_date)), $account_id, 0, - $account_balance_on_expense_date_after_payment, 0, $refund_amount, $refund_reason, $receipt_number); - - update_banking_record_balances(date('Y-m-d', strtotime($refund_date)), $account_id, $last_insert_id, $account_balance_on_expense_date_after_payment); - - $patient_account_balance_id = get_name("patient_account_balance", "slug", "id", "chart_of_accounts"); - if (is_numeric($patient_account_balance_id)) { - // decrease the balance on chart of accounts called "patient account deposit" - $chart_of_account = ChartOfAccount::find($patient_account_balance_id); - $chart_of_account->balance = $chart_of_account->balance - (int)$refund_amount; - $chart_of_account->update(); - } else { - flash('A chart of accounts is missing. Please contact Stre@mline support immediately!')->error(); - } - - $refund = new PatientAccountsRefund(); - $refund->patient_id = $patient_id; - $refund->refund_amount = $refund_amount; - $refund->refund_date = Carbon::createFromFormat('d-m-Y', $refund_date)->toDateString(); - $refund->refund_reason = $refund_reason; - $refund->account_id = $account_id; - $refund->receipt_number = $receipt_number; - $refund->created_by = Auth::id(); - $refund->save(); - - $description = "Amount Refunded"; - $deposit_amount = $refund_amount; - $receipt_date = date('Y-m-d h:i:s'); - $deposit_date = $refund_date; - $return_payment_methods = []; - - if (is_cashier_receipt_type_print_html()) { - return view('patient_discounts::patient_accounts.deposit_receipt',compact('deposit_amount', 'receipt_number', 'receipt_date', 'return_payment_methods', - 'patient', 'deposit_date', 'description')); - } else { - // so we first have to set a session and then go back to the payment page - // on the payment page we can then set a JS variable that can help redirect us to our pdf print - session()->put('print_patient_account_receipt_pdf', 1); - - // since we want to reduce the amount of duplicate code, we shall send all items to one file for printing - $data = [ - "deposit_amount" => $deposit_amount, "receipt_number" => $receipt_number, "deposit_date" => $deposit_date, - "return_payment_methods" => $return_payment_methods, "receipt_date" => $receipt_date, "patient_id" => $patient_id, "description" => $description - ]; - - session()->put('print_patient_account_receipt_pdf_details', $data); - - return redirect('/patient_finance/home/'); - } - } - - public function deposits_report(Request $request) { - $search_by = $request->search_by; - $reg_date = $request->reg_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - $filters = []; - - if (!is_null($search_by)){ - if($search_by == "0"){ - // last 24 hours - $last_day = Carbon::now()->subDay(); - $filters[] = ['deposit_date', '>', $last_day]; - } elseif($search_by == "1"){ - // custom date - $start_date_search = Carbon::parse($reg_date)->toDateString(); - $filters[] = ['deposit_date', '=', $start_date_search]; - } elseif($search_by == "2"){ - // custom date range - if ($start_date == $end_date) { - $start_date_search = Carbon::parse($start_date)->startOfDay()->toDateString(); - - $filters[] = ['deposit_date', '=', $start_date_search]; - } else { - $start_date_search = Carbon::parse($start_date)->startOfDay()->toDateString(); - $end_date_search = Carbon::parse($end_date)->endOfDay()->toDateString(); - - $filters[] = ['deposit_date', '>', $start_date_search]; - $filters[] = ['deposit_date', '<', $end_date_search]; - } - } else { - $start_date_search = Carbon::now()->startOfDay()->toDateString(); - $end_date_search = Carbon::now()->endOfDay()->toDateString(); - - $filters[] = ['deposit_date', '>', $start_date_search]; - $filters[] = ['deposit_date', '<', $end_date_search]; - } - } else { - $filters[] = ['deposit_date', '=', Carbon::now()->toDateString()]; - } - - if (isset($request->patient_number)) { - $filters[] = ['patient_id', '=', get_name($request->patient_number, 'number', 'id', 'patients')]; - } - - if (isset($request->user_id)) { - $filters[] = ['created_by', '=', $request->user_id]; - } - - $patient_numbers = DB::table('patients')->orderBy('number')->distinct()->pluck('number'); - - $patient_deposits = PatientAccountsDeposit::where($filters)->get(); - - return view('patient_discounts::patient_accounts.deposits_report', compact('patient_deposits', 'reg_date', 'start_date', 'end_date', 'patient_numbers')); - } - - public function view_details($id) { - session()->put(['patient_id' => $id]); - - return redirect('/patient_accounts/statement'); - } - - public function cancel_deposit($id) { - $deposit = PatientAccountsDeposit::find($id); - $receipt_number = $deposit->receipt_number; - $patient_id = $deposit->patient_id; - $deposit_amount = $deposit->deposit_amount; - - if ($deposit->delete()) { - $patient_account_balance_id = get_name("patient_account_balance", "slug", "id", "chart_of_accounts"); - if (is_numeric($patient_account_balance_id)) { - // decrease the balance on chart of accounts called "patient account deposit" - $chart_of_account = ChartOfAccount::find($patient_account_balance_id); - $chart_of_account->balance = (int)$chart_of_account->balance - (int)$deposit_amount; - $chart_of_account->update(); - } else { - flash('A chart of accounts is missing. Please contact Stre@mline support immediately!')->error(); - } - - record_cash_debits_to_daily_collection_account($deposit_amount, $receipt_number, 'Cancel Patient Account Deposit'); - - // reduce the patient's current balance by deleted amount - $patient_to_update = Patient::find($patient_id); - $patient_to_update->patient_account_balance = $patient_to_update->patient_account_balance - $deposit_amount; - $patient_to_update->update(); - - // delete the patient payment methods - DB::table('payment_methods_transactions') - ->where('receipt_number', $receipt_number) - ->delete(); - - flash("Patient account deposit of " . $deposit_amount . " has been cancelled")->success(); - - } else { - flash("Patient account deposit of " . $deposit_amount . " has not been cancelled")->error(); - } - - return redirect('/patient_accounts/deposits_report'); - } - - public function refunds_report(Request $request) { - $search_by = $request->search_by; - $reg_date = $request->reg_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - $filters = []; - - if (!is_null($search_by)){ - if($search_by == "0"){ - // last 24 hours - $last_day = Carbon::now()->subDay(); - array_push($filters, ['refund_date', '>', $last_day]); - } elseif($search_by == "1"){ - // custom date - $start_date_search = Carbon::parse($reg_date)->toDateString(); - array_push($filters, ['refund_date', '=', $start_date_search]); - } elseif($search_by == "2"){ - // custom date range - if ($start_date == $end_date) { - $start_date_search = Carbon::parse($start_date)->startOfDay()->toDateString(); - - array_push($filters, ['refund_date', '=', $start_date_search]); - } else { - $start_date_search = Carbon::parse($start_date)->startOfDay()->toDateString(); - $end_date_search = Carbon::parse($end_date)->endOfDay()->toDateString(); - - array_push($filters, ['refund_date', '>', $start_date_search]); - array_push($filters, ['refund_date', '<', $end_date_search]); - } - } else { - $start_date_search = Carbon::now()->startOfDay()->toDateString(); - $end_date_search = Carbon::now()->endOfDay()->toDateString(); - - array_push($filters, ['refund_date', '>', $start_date_search]); - array_push($filters, ['refund_date', '<', $end_date_search]); - } - } else { - $start_date_search = Carbon::now()->startOfDay()->toDateString(); - $end_date_search = Carbon::now()->endOfDay()->toDateString(); - - array_push($filters, ['refund_date', '>', $start_date_search]); - array_push($filters, ['refund_date', '<', $end_date_search]); - } - - if (isset($request->patient_number)) { - array_push($filters, ['patient_id', '=', get_name($request->patient_number, 'number', 'id', 'patients')]); - } - - $patient_numbers = DB::table('patients')->orderBy('number')->distinct()->pluck('number'); - - $patient_refunds = PatientAccountsRefund::where($filters)->get(); - - return view('patient_discounts::patient_accounts.refunds_report', compact('patient_refunds', 'reg_date', 'start_date', 'end_date', 'patient_numbers')); - } - - public function cancel_refund($id) { - $refund = PatientAccountsRefund::find($id); - $refund_amount = $refund->refund_amount; - $account_id = $refund->account_id; - - $track_receipts = new TrackReceipt; - $track_receipts->created_by = Auth::id(); - $track_receipts->reason = 'Patient Accounts Refund'; - $track_receipts->save(); - $receipt_number = sprintf("%04u", $track_receipts->id); - - if ($refund->delete()) { - // decrease the balance on select account - $chart_of_account = ChartOfAccount::find($account_id); - $chart_of_account->balance = $chart_of_account->balance + (int)$refund_amount; - $chart_of_account->update(); - - $account_balance_record_on_expense_date = get_latest_banking_record_based_on_transaction_date($account_id, date('Y-m-d')); - $account_balance_on_expense_date_after_payment = ($account_balance_record_on_expense_date ? (int)$account_balance_record_on_expense_date->account_balance : 0) + $refund_amount; - $last_insert_id = capture_bank_record('Patient Account Refunds Cancellation', date('Y-m-d'), $account_id, 0, - $account_balance_on_expense_date_after_payment, $refund_amount, 0, 'Patient Account Refunds Cancellation', $receipt_number); - - update_banking_record_balances(date('Y-m-d'), $account_id, $last_insert_id, $account_balance_on_expense_date_after_payment); - - $patient_account_balance_id = get_name("patient_account_balance", "slug", "id", "chart_of_accounts"); - if (is_numeric($patient_account_balance_id)) { - // increase the balance on chart of accounts called "patient account deposit" - $chart_of_account = ChartOfAccount::find($patient_account_balance_id); - $chart_of_account->balance = (int)$chart_of_account->balance + (int)$refund_amount; - $chart_of_account->update(); - } else { - flash('A chart of accounts is missing. Please contact Stre@mline support immediately!')->error(); - } - - flash("Patient account refund of " . $refund_amount . " has been cancelled")->success(); - - } else { - flash("Patient account refund of " . $refund_amount . " has not been cancelled")->error(); - } - - return redirect('/patient_accounts/refunds_report'); - } - - public function consumptions_report(Request $request) { - $search_by = $request->search_by; - $reg_date = $request->reg_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - $filters = []; - - if (!is_null($search_by)){ - if($search_by == "0"){ - // last 24 hours - $last_day = Carbon::now()->subDay(); - array_push($filters, ['created_at', '>', $last_day]); - } elseif($search_by == "1"){ - // custom date - $start_date_search = Carbon::parse($reg_date)->toDateTimeString(); - array_push($filters, ['created_at', '=', $start_date_search]); - } elseif($search_by == "2"){ - // custom date range - $start_date_search = Carbon::parse($start_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::parse($end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date_search]); - array_push($filters, ['created_at', '<', $end_date_search]); - } else { - $start_date_search = Carbon::now()->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::now()->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date_search]); - array_push($filters, ['created_at', '<', $end_date_search]); - } - } else { - $start_date_search = Carbon::now()->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::now()->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date_search]); - array_push($filters, ['created_at', '<', $end_date_search]); - } - - if (isset($request->patient_number)) { - array_push($filters, ['patient_id', '=', get_name($request->patient_number, 'number', 'id', 'patients')]); - } - - $patient_numbers = DB::table('patients')->orderBy('number')->distinct()->pluck('number'); - - $patient_consumptions = PatientAccountConsumption::where($filters)->get(); - - return view('patient_discounts::patient_accounts.consumptions_report', compact('patient_consumptions', 'reg_date', 'start_date', 'end_date', 'patient_numbers')); - } -} diff --git a/docker/statistics/Modules/PatientDiscounts/Http/Controllers/PatientDebtorsController.php b/docker/statistics/Modules/PatientDiscounts/Http/Controllers/PatientDebtorsController.php deleted file mode 100644 index a197cf24..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Http/Controllers/PatientDebtorsController.php +++ /dev/null @@ -1,364 +0,0 @@ -where('id', $string_array[0])->first(); - - $debt_payments = DB::table('debtor_payments')->whereNull('deleted_at') - ->where('debt_id', $string_array[0])->get(); - - $patient_payment_methods = PatientPaymentMethod::pluck('name', 'id'); - $patient_payment_methods_options = ""; - foreach ($patient_payment_methods as $key => $value) { - $patient_payment_methods_options .= ''; - } - - $expense_accounts = ChartOfAccount::where('type', 2)->pluck('name', 'id')->prepend('-select-', '')->toArray(); - - return view('patient_discounts::patient_debtors.receive_debtor_payment', compact('debts', 'debt_payments', 'patient_payment_methods_options', 'expense_accounts')); - } - - public function write_off_debts(Request $request): string { - $new_receipt_number = $this->receiptService->createReceipt("Debt Plan Payment Update"); - - $balance = $request->amount_owed - $request->amount; - $debtorPayment = $this->debtorsService->createDebtorPayment($request->debt_id, $new_receipt_number, $request->amount, Carbon::today()->toDateString(), - $balance, '', $request->amount); - - if ($debtorPayment) { - $this->debtorsService->clearDebt($request->debt_id); - $message = "Payment Received Successfully"; - } else { - $message = "Payment Not Received"; - } - - $payment = new Payment; - $payment->item_id = ""; - $payment->vendor = "N/A"; - $payment->unit_cost = $request->amount; - $payment->amount = $request->amount; - $payment->quantity = 1; - $payment->memo = $request->write_off_memo ?? "N/A"; - $payment->account_balance = 0; - $payment->transaction_id = $new_receipt_number; - $payment->account_id = 0; - $payment->created_by = Auth::id(); - $payment->expense_date = now(); - $payment->expense_account = $request->expense_account; - - $payment->save(); - - return $message; - } - - public function process_debtor_payment(Request $request): View|RedirectResponse - { - $new_receipt_number = $this->receiptService->createReceipt('Debtor Payment'); - $patient_id = $request->patient_id; - - $debtorPayment = $this->debtorsService->createDebtorPayment($request->debt_id, $new_receipt_number, $request->amount_paid, $request->date, - $request->balance, $request->comment, 0); - - if ($debtorPayment) { - $this->debtorsService->clearDebt($request->debt_id); - record_cash_credits_to_daily_collection_account($request->amount_paid, $new_receipt_number, 'Patient Debt Payment'); - flash("Payment Received Successfully")->success(); - } else { - flash("Payment Not Received")->error(); - return back(); - } - - $return_payment_methods = PatientFinanceController::register_payment_method($patient_id, 0, $request->original_cash_to_pay, - $request->payment_method, $request->payment_methods_amount, array_fill(0, count($request->payment_methods_amount ?? []), null), array_fill(0, count($request->payment_methods_amount ?? []), 0), $new_receipt_number, 13, Auth::id(), 0); - - return $this->debtorPaymentReceipt($request, $new_receipt_number, $return_payment_methods); - } - - public function debtorPaymentReceipt(Request $request, $new_receipt_number, $payment_methods): View - { - $patient = Patient::where(['id' => $request->patient_id])->first(); - $hospital_information = HospitalInformation::first(); - $compact_values = compact('hospital_information', 'request', 'new_receipt_number', 'patient', 'payment_methods'); - - return view('patient_discounts::patient_debtors.debtor_payment', $compact_values); - } - - public function history_debtor_payments($debtor_id): View - { - $hospital_information = HospitalInformation::first(); - $payments = DebtorPayment::where('debt_id', $debtor_id)->get(); - $debtor = Debtor::where('id', $debtor_id)->first(); - $patient_id = $debtor->patient_id; - return view('patient_discounts::patient_debtors.history_debtor_payments', compact('payments', 'hospital_information', 'patient_id', 'debtor_id')); - } - - public function reverse_debtor_payment($payment_id): RedirectResponse - { - $payment = DebtorPayment::find($payment_id); - - $amount_being_removed = $payment->amount_paid; - $receipt_number = $payment->receipt_number; - - $this->debtorsService->reverseDebtPayment($payment_id); - - // reverse any patient payment methods - DB::table('payment_methods_transactions') - ->where('receipt_number', $receipt_number) - ->delete(); - - record_cash_debits_to_daily_collection_account($amount_being_removed, $this->receiptService->createReceipt('N/A'), "Patient Debt Payment Cancellation"); - - return redirect('patient_debtors/debtors'); - } - - public function print_debtor_receipt_pdf_details(Request $request) - { - $hospital_information = HospitalInformation::find(1); - - $data = [ - 'hospital_information' => $hospital_information, - 'comment' => $request->comment, - 'amount_owed' => $request->amount_owed, - 'amount_paid' => $request->amount_paid, - 'balance' => $request->balance, - 'payment_methods' => unserialize($request->payment_methods), - 'receipt_number' => $request->receipt_number, - 'patient_id' => $request->patient_id - ]; - - $pdf = SnappyPDF::loadView("patient_discounts::patient_debtors.print_debtor_receipt_pdf_details", $data) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline'); - - return $pdf->inline('Patient Receipt' . date(" d-m-y h:ia") . '.pdf'); - } - - public function reprint_debtor_receipt_pdf_details(Request $request) - { - $hospital_information = HospitalInformation::find(1); - - if (isset($request->is_single_print) && is_numeric($request->is_single_print) && $request->is_single_print > 0) { - $debt_payments = DebtorPayment::where('id', $request->is_single_print)->get(); - } else { - $debt_payments = DebtorPayment::where('debt_id', $request->debt_id)->get(); - } - - $data = [ - 'hospital_information' => $hospital_information, - 'debt_payments' => $debt_payments, - 'patient_id' => $request->patient_id, - ]; - - $pdf = SnappyPDF::loadView("patient_discounts::patient_debtors.reprint_debtor_receipt_pdf_details", $data) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline'); - - return $pdf->inline('Patient Receipt' . date(" d-m-y h:ia") . '.pdf'); - } - - public function debtors(Request $request) { - $users = User::get(); - $debtors = queryDateFilter('debtors', $request); - $display = dateLabelSetter($request); - - return view('patient_discounts::patient_debtors.debtorsReport', compact('debtors', 'display', 'users')); - } - - public function debtors_patient_search($patient_id) { - $users = User::get(); - - $debtors = DB::table('debtors') - ->where('patient_id', $patient_id) - ->whereNull('deleted_at') - ->get(); - - $display = "Showing debt records for " . get_full_name($patient_id, 'id', 'first_name', 'last_name', 'patients') - . " (" . get_name($patient_id, 'id', 'number', 'patients') . ")"; - - return view('patient_discounts::patient_debtors.debtorsReport', compact('debtors', 'display', 'users')); - } - - public function receive_debt_plan_payment_staff(Request $request) { - $debts = DB::table('debt_plan')->where('id', $request->debt_plan_id)->groupBy('staff_guarantor')->first(); - $debt_with_balances = DB::table('debt_plan_payment_staffs')->where('debt_plan_id', $request->debt_plan_id)->get(); - $expense_accounts = ChartOfAccount::where('type', 2)->pluck('name', 'id')->prepend('-select-', '')->toArray(); - $users_array = $this->userService->pluckUserFullName(); - - return view('patient_discounts::patient_debtors.debt_plan_payments_staff', compact('debts', 'debt_with_balances', - 'request', 'expense_accounts', 'users_array')); - } - - public function process_debt_plan_payment_staff(Request $request) { - $new_receipt_number = $this->receiptService->createReceipt('Debt Plan'); - - $payment = $this->debtPlanService->createDebtPlanPayment( - $request->amount_paid, $request->balance, $request->payment_id, - $request->comment, $new_receipt_number, $request->date - ); - - if ($payment) { - record_cash_credits_to_daily_collection_account($request->amount_paid, $new_receipt_number, 'Debt Plan Payment'); - $this->debtPlanService->clearDebtPlan($request->payment_id, $request->amount_paid); - flash("Payment Received Successfully")->success(); - return $this->debtPlanPaymentReceipt($request, $new_receipt_number); - } else { - flash("Payment Not Received")->error(); - return redirect()->back(); - } - } - - public function debtPlanPaymentReceipt(Request $request, $new_receipt_number) - { - $patient = Patient::where(['id' => $request->patient_id])->first(); - $hospital_information = HospitalInformation::first(); - $compact_values = compact('hospital_information', 'request', 'new_receipt_number', 'patient'); - - return view('patient_discounts::patient_debtors.debt_plan_payment', $compact_values); - } - - public function write_off_debt_plan(Request $request): string - { - $receipt_number = $this->receiptService->createReceipt("Patient Debt Plan Write Off"); - $today = Carbon::today()->toDateTimeString(); - - $payment = $this->debtPlanService->createDebtPlanPayment( - $request->amount, ($request->amount_owed - $request->amount), $request->payment_id, - $request->comment, $receipt_number, $today, $request->amount, - ); - - if ($payment) { - $message = "Payment Received Successfully"; - $this->debtPlanService->clearDebtPlan($request->payment_id, $request->amount); - - $payment = new Payment; - $payment->item_id = ""; - $payment->vendor = "N/A"; - $payment->unit_cost = $request->amount; - $payment->amount = $request->amount; - $payment->quantity = 1; - $payment->memo = $request->write_off_memo ?? "N/A"; - $payment->account_balance = 0; - $payment->transaction_id = $receipt_number; - $payment->account_id = 0; - $payment->created_by = Auth::id(); - $payment->expense_date = now(); - $payment->expense_account = $request->expense_account; - $payment->save(); - } else { - $message = "Payment Not Received"; - } - - return $message; - } - - public function debt_plan_payment($id) - { - $payment = DebtPlanPaymentStaff::where(['id' => $id])->first(); - $hospital_information = HospitalInformation::first(); - $compact_values = compact('hospital_information', 'payment'); - - return view('patient_discounts::patient_debtors.debt_plan_payment_detail', $compact_values); - } - - public function debt_plan_receipt(Request $request) - { - $hospital_information = HospitalInformation::first(); - $patient = Patient::where(['id' => $request->patient_id])->first(); - $debt_plan = DB::table('debt_plan')->where('id', $request->debt_plan_id)->first(); - return view('patient_discounts::patient_debtors.patient_debt_plan', compact('debt_plan', 'hospital_information', 'patient')); - } - - public function staff_guarantors(Request $request) - { - $users = DB::table('users')->get()->toArray(); - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - - if ($request->staff_member == "ALL STAFF") { - $debts = DB::table('debt_plan')->whereBetween('created_at', [$start, $end])->get()->toArray(); - } else { - $debts = DB::table('debt_plan') - ->where('staff_guarantor', $request->staff_member)->whereBetween('created_at', [$start, $end])->get()->toArray(); - } - - $display = dateLabelSetter($request); - return view('patient_discounts::patient_debtors.staffGuarantors', compact('users', 'debts', 'display', 'request')); - } - - public function debt_plan_patient_search($patient_id) { - $users = DB::table('users')->get()->toArray(); - - $debts = DebtPlan::where('patient_id', $patient_id)->get(); - - $display = "Showing debt plan records of " . get_full_name($patient_id, 'id', 'first_name', 'last_name', 'patients') - . " (" . get_name($patient_id, 'id', 'number', 'patients') . ")"; - - return view('patient_discounts::patient_debtors.staffGuarantors', compact('users', 'debts', 'display')); - } - - public function debt_plan_guarantor_agreement($id) { - $debt_plan = DebtPlan::find($id); - - if ($debt_plan) { - // just get the first person for now but would be better to list all as well as the dates - $user_id = explode(",", $debt_plan->staff_guarantor)[0]; - - if ($debt_plan->guarantor_type == 0) { - $guarantor_name = get_full_name($user_id, 'id', 'first_name', 'last_name', 'non_staff_guarantors'); - } else { - $guarantor_name = get_full_name($user_id, 'id', 'first_name', 'last_name', 'users'); - } - - $amount_to_pay = $debt_plan->staff_guarantor_to_pay; - $amount_owed = $debt_plan->amount_owed; - $patient_names = get_full_name($debt_plan->patient_id, 'id', 'first_name', 'last_name', 'patients'); - $payment_date = $debt_plan->first_installment_date; - $arrangement = $debt_plan->debt_plan_arrangement; - - return view('patient_discounts::patient_debtors.debt_plan_guarantor_agreement', compact('amount_to_pay', 'patient_names', 'payment_date', 'arrangement', 'guarantor_name', 'amount_owed')); - } else { - return redirect('home'); - } - } - -} diff --git a/docker/statistics/Modules/PatientDiscounts/Http/Controllers/PriceListController.php b/docker/statistics/Modules/PatientDiscounts/Http/Controllers/PriceListController.php deleted file mode 100755 index 8e9b3a86..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Http/Controllers/PriceListController.php +++ /dev/null @@ -1,1048 +0,0 @@ -middleware('auth'); - } - - /** - * Display a listing of the resource. - * - */ - public function index() { - $categories = PriceListCategories::get(); - $patient_categories = PatientCategory::pluck('name', 'id'); - - return view('patient_discounts::price_list_category.index', compact('categories', 'patient_categories')); - } - - /** - * Show the form for creating a new resource. - * - */ - public function create() { - $exiting_price_list = PriceListCategories::all()->pluck('patient_category_id')->toArray(); - $patient_categories = PatientCategory::whereNotIn('id',$exiting_price_list)->pluck("name", "id")->toArray(); - $patient_categories = ['' => '- select -'] + $patient_categories; - - return view('patient_discounts::price_list_category.create', compact('patient_categories')); - } - - /** - * Store a newly created resource in storage. - * - */ - public function store(Request $request) { - request()->validate([ - 'patient_category_id' => 'required' - ]); - - //validation passed - $category = new PriceListCategories; - - $category->patient_category_id = $request->patient_category_id; - $category->pay_for_invoice = $request->pay_for_invoice; - $category->created_by = Auth::user()->id; - - try { - $category->save(); - flash(" price list category has been saved")->success(); - - /** create entry in the items table **/ - // drugs - $drugs = DB::table('drugs')->select('id')->get(); - - foreach ($drugs as $record){ - $drug = Drug::withTrashed()->find($record->id); - - // get current values - $price_list_category = is_null($drug->price_list_category) ? [] : explode(',', $drug->price_list_category); - $price_list_price = is_null($drug->price_list_price) ? [] : explode(',', $drug->price_list_price); - - // add new values - $price_list_category[] = $category->id; - $price_list_price[] = $drug->non_insured_price; - - $drug->price_list_category = implode(',', $price_list_category); - $drug->price_list_price = implode(',', $price_list_price); - - $drug->save(); - } - - // investigations - $investigations = DB::table('investigations')->select('id')->get(); - - foreach ($investigations as $record){ - $investigation = Investigation::withTrashed()->find($record->id); - // get current values - $price_list_category = is_null($investigation->price_list_category) ? [] : explode(',', $investigation->price_list_category); - $price_list_price = is_null($investigation->price_list_price) ? [] : explode(',', $investigation->price_list_price); - - // add new values - $price_list_category[] = $category->id; - $price_list_price[] = $investigation->non_insured_price; - - $investigation->price_list_category = implode(',', $price_list_category); - $investigation->price_list_price = implode(',', $price_list_price); - - $investigation->save(); - } - - // procedures - $procedures = DB::table('procedures')->select('id')->get(); - - foreach ($procedures as $record){ - $procedure = Procedure::withTrashed()->find($record->id); - // get current values - $price_list_category = is_null($procedure->price_list_category) ? [] : explode(',', $procedure->price_list_category); - $price_list_price = is_null($procedure->price_list_price) ? [] : explode(',', $procedure->price_list_price); - - // add new values - $price_list_category[] = $category->id; - $price_list_price[] = $procedure->non_insured_price; - - $procedure->price_list_category = implode(',', $price_list_category); - $procedure->price_list_price = implode(',', $price_list_price); - - $procedure->save(); - } - - // services - $services = DB::table('services')->select('id')->get(); - - foreach ($services as $record){ - $service = Services::withTrashed()->find($record->id); - - // get current values - $price_list_category = is_null($service->price_list_category) ? [] : explode(',', $service->price_list_category); - $price_list_price = is_null($service->price_list_price) ? [] : explode(',', $service->price_list_price); - - // add new values - $price_list_category[] = $category->id; - $price_list_price[] = $service->non_insured_price; - - $service->price_list_category = implode(',', $price_list_category); - $service->price_list_price = implode(',', $price_list_price); - - $service->save(); - } - - // sundries - $sundries = DB::table('sundries')->select('id')->get(); - - foreach ($sundries as $record){ - $sundry = Sundry::withTrashed()->find($record->id); - // get current values - $price_list_category = is_null($sundry->price_list_category) ? [] : explode(',', $sundry->price_list_category); - $price_list_price = is_null($sundry->price_list_price) ? [] : explode(',', $sundry->price_list_price); - - // add new values - $price_list_category[] = $category->id; - $price_list_price[] = $sundry->non_insured_price; - - $sundry->price_list_category = implode(',', $price_list_category); - $sundry->price_list_price = implode(',', $price_list_price); - - $sundry->save(); - } - - // eye glasses - $eye_glasses = EyeGlasses::withTrashed()->select('id')->get(); - - foreach ($eye_glasses as $record){ - $eye_glass = EyeGlasses::withTrashed()->find($record->id); - // get current values - $price_list_category = is_null($eye_glass->price_list_category) ? [] : explode(',', $eye_glass->price_list_category); - $price_list_price = is_null($eye_glass->price_list_price) ? [] : explode(',', $eye_glass->price_list_price); - - // add new values - array_push($price_list_category, $category->id); - array_push($price_list_price, $eye_glass->non_insured_price); - - $eye_glass->price_list_category = implode(',', $price_list_category); - $eye_glass->price_list_price = implode(',', $price_list_price); - - $eye_glass->save(); - } - - return redirect("/price_list_category/"); - } catch (QueryException $e) { - flash("An error occurred. Please try again")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - // - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - // - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - $category = PriceListCategories::find($id); - - if ($category->delete()) { - flash("Price list category has been deleted.")->success(); - return redirect('/price_list_category/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() { - $categories = PriceListCategories::onlyTrashed()->get(); - $patient_categories = PatientCategory::pluck('name', 'id'); - - if (count($categories) < 1) { - flash()->error("There is no inactive price list category"); - } - - return view('patient_discounts::price_list_category.inactive', compact('categories', 'patient_categories')); - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) { - $category = PriceListCategories::withTrashed()->find($id); - - if($category->restore()){ - flash("Price list category has been activated.")->success(); - return redirect('/price_list_category/inactive'); - } - } - - public function edit_pricing($id){ - return view('patient_discounts::price_list_category.edit_pricing', compact('id')); - } - - public function edit_pricing_sundries(Request $request,$id){ - $filtered_items=[]; - $item_name = 'sundries'; - $title='Sundry Name'; - $route="price_list_category.edit_pricing_sundries"; - $route_markups='price_list_category.apply_markup_to_sundries'; - $route_submit ='price_list_category.save_edit_pricing_sundries'; - $route_cancel=''; - $item_ids_array = $request->search_items_ids; - - if ($item_ids_array) { - $is_all_items = in_array("all_items", $item_ids_array); - - if ($is_all_items) { - $filtered_items = Sundry::where('available', 1)->orderby('name', 'asc')->get(); - } else{ - $filtered_items = Sundry::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } - } - - $items = Sundry::select('id', 'name', 'non_insured_price', 'price_list_category', 'price_list_price')->where('available', 1)->pluck('name','id')->prepend('All Sundries', 'all_items')->toArray(); - - return view('patient_discounts::price_list_category.edit_pricing_list', compact('items','route_submit','route_markups','route', 'id','item_name','title','filtered_items')); - } - - public function save_edit_pricing_sundries(Request $request){ - $price_list_category_id = $request->price_list_category_id; - $id_array = $request->id; - $price_list_price_array = $request->price_list_price; - - for ($i = 0; $i < count($id_array); $i++){ - $sundry = Sundry::find($id_array[$i]); - - // get current values - $price_list_category = is_null($sundry->price_list_category) ? [] : explode(',', $sundry->price_list_category); - $price_list_price = is_null($sundry->price_list_price) ? [] : explode(',', $sundry->price_list_price); - - // edit values - $key = array_search($price_list_category_id, $price_list_category); - - if (isset($price_list_price[$key]) && $key !== false){ - $price_list_price[$key] = $price_list_price_array[$i]; - } else { - // the item was not found therefore add a new record for it - $price_list_category[] = $price_list_category_id; - $sundry->price_list_category = implode(',', $price_list_category); - $price_list_price[] = $price_list_price_array[$i]; - } - - $sundry->price_list_price = implode(',', $price_list_price); - - $sundry->save(); - } - - flash("Sundry price list for " . get_name(get_name($price_list_category_id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') . " has been updated")->success(); - - return redirect('/price_list_category/edit_pricing_sundries/' . $price_list_category_id); - } - - public function edit_pricing_procedures(Request $request,$id){ - $filtered_items=[]; - $item_name = 'procedures'; - $title='Procedure Name'; - $route="price_list_category.edit_pricing_procedures"; - $route_markups='price_list_category.apply_markup_to_procedures'; - $route_submit ='price_list_category.save_edit_pricing_procedures'; - $route_cancel=''; - $item_ids_array = $request->search_items_ids; - - if ($item_ids_array) { - $is_all_items = in_array("all_items", $item_ids_array); - - if ($is_all_items) { - $filtered_items = Procedure::where('available', 1)->orderby('name', 'asc')->get(); - } else{ - $filtered_items = Procedure::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } - } - - $items = Procedure::select('id', 'name', 'non_insured_price', 'price_list_category', 'price_list_price')->where('available', 1)->pluck('name','id')->prepend('All procedures', 'all_items')->toArray(); - - return view('patient_discounts::price_list_category.edit_pricing_list', compact('items','route_submit','route_markups','route', 'id','item_name','title','filtered_items')); - } - - public function save_edit_pricing_procedures(Request $request){ - $price_list_category_id = $request->price_list_category_id; - $id_array = $request->id; - $price_list_price_array = $request->price_list_price; - - for ($i = 0; $i < count($id_array); $i++){ - $procedure = Procedure::find($id_array[$i]); - - // get current values - $price_list_category = is_null($procedure->price_list_category) ? [] : explode(',', $procedure->price_list_category); - $price_list_price = is_null($procedure->price_list_price) ? [] : explode(',', $procedure->price_list_price); - - // edit values - $key = array_search($price_list_category_id, $price_list_category); - - if (isset($price_list_price[$key]) && $key !== false){ - $price_list_price[$key] = $price_list_price_array[$i]; - } else { - // the item was not found therefore add a new record for it - $price_list_category[] = $price_list_category_id; - $procedure->price_list_category = implode(',', $price_list_category); - $price_list_price[] = $price_list_price_array[$i]; - } - - $procedure->price_list_price = implode(',', $price_list_price); - - $procedure->save(); - } - - flash("Procedures price list for " . get_name(get_name($price_list_category_id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') . " has been updated")->success(); - - return redirect('/price_list_category/edit_pricing_procedures/' . $price_list_category_id); - } - - public function edit_pricing_investigations(Request $request,$id){ - $filtered_items=[]; - $item_name = 'procedures'; - $title='Invesigation Name'; - $route="price_list_category.edit_pricing_invesigations"; - $route_markups='price_list_category.apply_markup_to_investigations'; - $route_submit ='price_list_category.save_edit_pricing_investigations'; - $route_cancel=''; - $item_ids_array = $request->search_items_ids; - - if ($item_ids_array) { - $is_all_items = in_array("all_items", $item_ids_array); - - if ($is_all_items) { - $filtered_items = Investigation::where('available', 1)->orderby('name', 'asc')->get(); - } else{ - $filtered_items = Investigation::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } - } - $items = Investigation::select('id', 'name', 'non_insured_price', 'price_list_category', 'price_list_price')->where('available', 1)->pluck('name','id')->prepend('All invesigation', 'all_items')->toArray(); - - return view('patient_discounts::price_list_category.edit_pricing_list', compact('items','route_submit','route_markups','route', 'id','item_name','title','filtered_items')); - } - - public function save_edit_pricing_investigations(Request $request){ - $price_list_category_id = $request->price_list_category_id; - $id_array = $request->id; - $price_list_price_array = $request->price_list_price; - - for ($i = 0; $i < count($id_array); $i++){ - $investigation = Investigation::find($id_array[$i]); - - // get current values - $price_list_category = is_null($investigation->price_list_category) ? [] : explode(',', $investigation->price_list_category); - $price_list_price = is_null($investigation->price_list_price) ? [] : explode(',', $investigation->price_list_price); - - // edit values - $key = array_search($price_list_category_id, $price_list_category); - - if (isset($price_list_price[$key]) && $key !== false){ - $price_list_price[$key] = $price_list_price_array[$i]; - } else { - // the item was not found therefore add a new record for it - $price_list_category[] = $price_list_category_id; - $investigation->price_list_category = implode(',', $price_list_category); - $price_list_price[] = $price_list_price_array[$i]; - } - - $investigation->price_list_price = implode(',', $price_list_price); - - $investigation->save(); - } - - flash("Investigation price list for " . get_name(get_name($price_list_category_id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') . " has been updated")->success(); - - return redirect('/price_list_category/edit_pricing_investigations/' . $price_list_category_id); - } - - public function edit_pricing_drugs(Request $request, $id){ - $filtered_items=[]; - $item_name = 'drugs'; - $title='Drug Name'; - $route="price_list_category.edit_pricing_drugs"; - $route_markups='price_list_category.apply_markup_to_drugs'; - $route_submit ='price_list_category.save_edit_pricing_drugs'; - $route_cancel=''; - $item_ids_array = $request->search_items_ids; - - if ($item_ids_array) { - $is_all_items = in_array("all_items", $item_ids_array); - - if ($is_all_items) { - $filtered_items = Drug::where('available', 1)->orderby('name', 'asc')->get(); - } else{ - $filtered_items = Drug::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } - } - - $items = Drug::select('id', 'name', 'non_insured_price', 'price_list_category', 'price_list_price')->where('available', 1)->pluck('name','id')->prepend('All drugs', 'all_items')->toArray(); - - return view('patient_discounts::price_list_category.edit_pricing_list', compact('items','route_submit','route_markups','route', 'id','item_name','title','filtered_items')); - } - - public function save_edit_pricing_drugs(Request $request){ - $price_list_category_id = $request->price_list_category_id; - $id_array = $request->id; - $price_list_price_array = $request->price_list_price; - for ($i = 0; $i < count($id_array); $i++){ - $drug = Drug::find($id_array[$i]); - - // get current values - $price_list_category = is_null($drug->price_list_category) ? [] : explode(',', $drug->price_list_category); - $price_list_price = is_null($drug->price_list_price) ? [] : explode(',', $drug->price_list_price); - - // edit values - $key = array_search($price_list_category_id, $price_list_category); - - if (isset($price_list_price[$key]) && $key !== false){ - $price_list_price[$key] = $price_list_price_array[$i]; - } else { - // the item was not found therefore add a new record for it - $price_list_category[] = $price_list_category_id; - $drug->price_list_category = implode(',', $price_list_category); - $price_list_price[] = $price_list_price_array[$i]; - } - - $drug->price_list_price = implode(',', $price_list_price); - - $drug->save(); - } - - flash("Drug price list for " . get_name(get_name($price_list_category_id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') . " has been updated")->success(); - - return redirect('/price_list_category/edit_pricing_drugs/' . $price_list_category_id); - } - - public function edit_pricing_services(Request $request, $id){ - $filtered_items=[]; - $item_name = 'procedures'; - $title='Service Name'; - $route="price_list_category.edit_pricing_services"; - $route_markups='price_list_category.apply_markup_to_services'; - $route_submit ='price_list_category.save_edit_pricing_services'; - $route_cancel=''; - $item_ids_array = $request->search_items_ids; - - if ($item_ids_array) { - $is_all_items = in_array("all_items", $item_ids_array); - - if ($is_all_items) { - $filtered_items = Services::where('available', 1)->orderby('name', 'asc')->get(); - } else{ - $filtered_items = Services::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } - } - $items = Services::select('id', 'name', 'non_insured_price', 'price_list_category', 'price_list_price')->where('available', 1)->pluck('name','id')->prepend('All services', 'all_items')->toArray(); - - return view('patient_discounts::price_list_category.edit_pricing_list', compact('items','route_submit','route_markups','route', 'id','item_name','title','filtered_items')); - } - - public function save_edit_pricing_services(Request $request){ - $price_list_category_id = $request->price_list_category_id; - $id_array = $request->id; - $price_list_price_array = $request->price_list_price; - - for ($i = 0; $i < count($id_array); $i++){ - $service = Services::find($id_array[$i]); - - // get current values - $price_list_category = is_null($service->price_list_category) ? [] : explode(',', $service->price_list_category); - $price_list_price = is_null($service->price_list_price) ? [] : explode(',', $service->price_list_price); - - // edit values - $key = array_search($price_list_category_id, $price_list_category); - - if (isset($price_list_price[$key]) && $key !== false){ - $price_list_price[$key] = $price_list_price_array[$i]; - } else { - // the item was not found therefore add a new record for it - $price_list_category[] = $price_list_category_id; - $service->price_list_category = implode(',', $price_list_category); - $price_list_price[] = $price_list_price_array[$i]; - } - - $service->price_list_price = implode(',', $price_list_price); - - $service->save(); - } - - flash("Services price list for " . get_name(get_name($price_list_category_id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') . " has been updated")->success(); - - return redirect('/price_list_category/edit_pricing_services/' . $price_list_category_id); - } - - public function apply_markup_to_drugs(Request $request,$id){ - $markup_tags = MarkupTag::orderBy('name', 'asc')->get(); - $tags_select = ['' => '- Select Markup -'] + MarkupTag::pluck('name','id')->toArray(); - if(isset($request->filtered_items)){ - $drugs = json_decode($request->filtered_items); - }else{ - $drugs = Drug::where('available', 1)->orderby('name', 'asc')->get(); - } - - return view('patient_discounts::price_list_category.apply_markup_to_drugs', compact('markup_tags','tags_select', 'drugs', 'id')); - } - - public function save_apply_markup_to_drugs(Request $request){ - $markup_tag_id = $request->markup_tag; - $checked_drug_array = $request->checked_drug; - $price_list_category_id = $request->price_list_category_id; - $item_old_prices = []; - $item_new_prices = []; - - // get markup details - $markup_tag = MarkupTag::find($markup_tag_id); - $markup_percentage = $markup_tag->percentage; - - // update the prices for all the selected drugs - foreach ($checked_drug_array as $drug_id){ - $drug = Drug::find($drug_id); - - // get current values - $price_list_category = is_null($drug->price_list_category) ? [] : explode(',', $drug->price_list_category); - $price_list_price = is_null($drug->price_list_price) ? [] : explode(',', $drug->price_list_price); - - $key = array_search($price_list_category_id, $price_list_category); - - $current_price = 0; - $new_price = 0; - - if (isset($price_list_price[$key]) && $key !== false){ - // get the current price and update using markup - // 9th Jan 2020 Update - use the default price and not the current price of the price list - $current_price = $drug->non_insured_price; - //$current_price = $price_list_price[$key]; - $new_price = (($markup_percentage / 100) * $current_price) + $current_price; - $new_price = ($new_price < 0) ? 0 : $new_price; - $price_list_price[$key] = $new_price; - } - - $item_old_prices[] = $current_price; - $item_new_prices[] = $new_price; - - $drug->price_list_price = implode(',', $price_list_price); - - $drug->save(); - } - - // create a record for this updated value - $update_record = new PriceListMarkupTagsChanges(); - $update_record->price_list_category_id = $price_list_category_id; - $update_record->markup_tag_id = $markup_tag_id; - $update_record->markup_tag_percentage = $markup_percentage; - $update_record->item_type = "Drugs"; - $update_record->item_ids = implode(",", $checked_drug_array); - $update_record->item_old_prices = implode(",", $item_old_prices); - $update_record->item_new_prices = implode(",", $item_new_prices); - $update_record->created_by = Auth::user()->id; - $update_record->save(); - - flash("Drugs price list for " . get_name(get_name($price_list_category_id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') . " has been updated")->success(); - - return redirect('/price_list_category/'); - } - - public function apply_markup_to_investigations(Request $request,$id){ - $markup_tags = MarkupTag::orderBy('name', 'asc')->get(); - $tags_select = ['' => '- Select Markup -'] + MarkupTag::pluck('name','id')->toArray(); - if(isset($request->filtered_items)){ - $investigations = json_decode($request->filtered_items); - }else{ - $investigations = Investigation::where('available', 1)->orderby('name', 'asc')->get(); - } - - return view('patient_discounts::price_list_category.apply_markup_to_investigations', compact('markup_tags','tags_select', 'investigations', 'id')); - } - - public function save_apply_markup_to_investigations(Request $request){ - $markup_tag_id = $request->markup_tag; - $checked_investigation_array = $request->checked_investigation; - $price_list_category_id = $request->price_list_category_id; - $item_old_prices = []; - $item_new_prices = []; - - // get markup details - $markup_tag = MarkupTag::find($markup_tag_id); - $markup_percentage = $markup_tag->percentage; - - // update the prices for all the selected drugs - foreach ($checked_investigation_array as $investigation_id){ - $investigation = Investigation::find($investigation_id); - - // get current values - $price_list_category = is_null($investigation->price_list_category) ? [] : explode(',', $investigation->price_list_category); - $price_list_price = is_null($investigation->price_list_price) ? [] : explode(',', $investigation->price_list_price); - - $key = array_search($price_list_category_id, $price_list_category); - - $current_price = 0; - $new_price = 0; - - if (isset($price_list_price[$key]) && $key !== false){ - // get the current price and update using markup - // 9th Jan 2020 Update - use the default price and not the current price of the price list - $current_price = $investigation->non_insured_price; - //$current_price = $price_list_price[$key]; - $new_price = (($markup_percentage / 100) * $current_price) + $current_price; - $new_price = ($new_price < 0) ? 0 : $new_price; - $price_list_price[$key] = $new_price; - } - - $item_old_prices[] = $current_price; - $item_new_prices[] = $new_price; - - $investigation->price_list_price = implode(',', $price_list_price); - - $investigation->save(); - } - - // create a record for this updated value - $update_record = new PriceListMarkupTagsChanges(); - $update_record->price_list_category_id = $price_list_category_id; - $update_record->markup_tag_id = $markup_tag_id; - $update_record->markup_tag_percentage = $markup_percentage; - $update_record->item_type = "Investigations"; - $update_record->item_ids = implode(",", $checked_investigation_array); - $update_record->item_old_prices = implode(",", $item_old_prices); - $update_record->item_new_prices = implode(",", $item_new_prices); - $update_record->created_by = Auth::user()->id; - $update_record->save(); - - flash("Investigation price list for " . get_name(get_name($price_list_category_id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') . " has been updated")->success(); - - return redirect('/price_list_category/'); - } - - public function apply_markup_to_procedures(Request $request ,$id){ - $markup_tags = MarkupTag::orderBy('name', 'asc')->get(); - $tags_select = ['' => '- Select Markup -'] + MarkupTag::pluck('name','id')->toArray(); - if(isset($request->filtered_items)){ - $procedures = json_decode($request->filtered_items); - }else{ - $procedures = Procedure::where('available', 1)->orderBy('name', 'asc')->get(); - } - return view('patient_discounts::price_list_category.apply_markup_to_procedures', compact('markup_tags','tags_select', 'procedures', 'id')); - } - - public function save_apply_markup_to_procedures(Request $request){ - $markup_tag_id = $request->markup_tag; - $checked_procedure_array = $request->checked_procedure; - $price_list_category_id = $request->price_list_category_id; - $item_old_prices = []; - $item_new_prices = []; - - // get markup details - $markup_tag = MarkupTag::find($markup_tag_id); - $markup_percentage = $markup_tag->percentage; - - // update the prices for all the selected drugs - foreach ($checked_procedure_array as $procedure_id){ - $procedure = Procedure::find($procedure_id); - - // get current values - $price_list_category = is_null($procedure->price_list_category) ? [] : explode(',', $procedure->price_list_category); - $price_list_price = is_null($procedure->price_list_price) ? [] : explode(',', $procedure->price_list_price); - - $key = array_search($price_list_category_id, $price_list_category); - - $current_price = 0; - $new_price = 0; - - if (isset($price_list_price[$key]) && $key !== false){ - // get the current price and update using markup - // 9th Jan 2020 Update - use the default price and not the current price of the price list - $current_price = $procedure->non_insured_price; - //$current_price = $price_list_price[$key]; - $new_price = (($markup_percentage / 100) * $current_price) + $current_price; - $new_price = ($new_price < 0) ? 0 : $new_price; - $price_list_price[$key] = $new_price; - } - - $item_old_prices[] = $current_price; - $item_new_prices[] = $new_price; - - $procedure->price_list_price = implode(',', $price_list_price); - - $procedure->save(); - } - - // create a record for this updated value - $update_record = new PriceListMarkupTagsChanges(); - $update_record->price_list_category_id = $price_list_category_id; - $update_record->markup_tag_id = $markup_tag_id; - $update_record->markup_tag_percentage = $markup_percentage; - $update_record->item_type = "Procedures"; - $update_record->item_ids = implode(",", $checked_procedure_array); - $update_record->item_old_prices = implode(",", $item_old_prices); - $update_record->item_new_prices = implode(",", $item_new_prices); - $update_record->created_by = Auth::user()->id; - $update_record->save(); - - flash("Procedures price list for " . get_name(get_name($price_list_category_id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') . " has been updated")->success(); - - return redirect('/price_list_category/'); - } - - public function apply_markup_to_services(Request $request,$id){ - $markup_tags = MarkupTag::orderBy('name', 'asc')->get(); - $tags_select = ['' => '- Select Markup -'] + MarkupTag::pluck('name','id')->toArray(); - if(isset($request->filtered_items)){ - $services = json_decode($request->filtered_items); - }else{ - $services = Services::where('available', 1)->orderby('name', 'asc')->get(); - } - return view('patient_discounts::price_list_category.apply_markup_to_services', compact('markup_tags','tags_select', 'services', 'id')); - } - - public function save_apply_markup_to_services(Request $request){ - $markup_tag_id = $request->markup_tag; - $checked_service_array = $request->checked_service; - $price_list_category_id = $request->price_list_category_id; - $item_old_prices = []; - $item_new_prices = []; - - // get markup details - $markup_tag = MarkupTag::find($markup_tag_id); - $markup_percentage = $markup_tag->percentage; - - // update the prices for all the selected drugs - foreach ($checked_service_array as $service_id){ - $service = Services::find($service_id); - - // get current values - $price_list_category = is_null($service->price_list_category) ? [] : explode(',', $service->price_list_category); - $price_list_price = is_null($service->price_list_price) ? [] : explode(',', $service->price_list_price); - - $key = array_search($price_list_category_id, $price_list_category); - - $current_price = 0; - $new_price = 0; - - if (isset($price_list_price[$key]) && $key !== false){ - // get the current price and update using markup - // 9th Jan 2020 Update - use the default price and not the current price of the price list - $current_price = $service->non_insured_price; - //$current_price = $price_list_price[$key]; - $new_price = (($markup_percentage / 100) * $current_price) + $current_price; - $new_price = ($new_price < 0) ? 0 : $new_price; - $price_list_price[$key] = $new_price; - } - - $item_old_prices[] = $current_price; - $item_new_prices[] = $new_price; - - $service->price_list_price = implode(',', $price_list_price); - - $service->save(); - } - - // create a record for this updated value - $update_record = new PriceListMarkupTagsChanges(); - $update_record->price_list_category_id = $price_list_category_id; - $update_record->markup_tag_id = $markup_tag_id; - $update_record->markup_tag_percentage = $markup_percentage; - $update_record->item_type = "Services"; - $update_record->item_ids = implode(",", $checked_service_array); - $update_record->item_old_prices = implode(",", $item_old_prices); - $update_record->item_new_prices = implode(",", $item_new_prices); - $update_record->created_by = Auth::user()->id; - $update_record->save(); - - flash("Services price list for " . get_name(get_name($price_list_category_id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') . " has been updated")->success(); - - return redirect('/price_list_category/'); - } - - public function apply_markup_to_sundries(Request $request,$id){ - $markup_tags = MarkupTag::orderBy('name', 'asc')->get(); - $tags_select = ['' => '- Select Markup -'] + MarkupTag::pluck('name','id')->toArray(); - if(isset($request->filtered_items)){ - $sundries = json_decode($request->filtered_items); - }else{ - $sundries = Sundry::where('available', 1)->orderby('name', 'asc')->get(); - } - return view('patient_discounts::price_list_category.apply_markup_to_sundries', compact('markup_tags','tags_select', 'sundries', 'id')); - } - - public function save_apply_markup_to_sundries(Request $request){ - $markup_tag_id = $request->markup_tag; - $checked_sundry_array = $request->checked_sundry; - $price_list_category_id = $request->price_list_category_id; - $item_old_prices = []; - $item_new_prices = []; - - // get markup details - $markup_tag = MarkupTag::find($markup_tag_id); - $markup_percentage = $markup_tag->percentage; - - // update the prices for all the selected drugs - foreach ($checked_sundry_array as $sundry_id){ - $sundry = Sundry::find($sundry_id); - - // get current values - $price_list_category = is_null($sundry->price_list_category) ? [] : explode(',', $sundry->price_list_category); - $price_list_price = is_null($sundry->price_list_price) ? [] : explode(',', $sundry->price_list_price); - - $key = array_search($price_list_category_id, $price_list_category); - - $current_price = 0; - $new_price = 0; - - if (isset($price_list_price[$key]) && $key !== false){ - // get the current price and update using markup - // 9th Jan 2020 Update - use the default price and not the current price of the price list - $current_price = $sundry->non_insured_price; - //$current_price = $price_list_price[$key]; - $new_price = (($markup_percentage / 100) * $current_price) + $current_price; - $new_price = ($new_price < 0) ? 0 : $new_price; - $price_list_price[$key] = $new_price; - } - - $item_old_prices[] = $current_price; - $item_new_prices[] = $new_price; - - $sundry->price_list_price = implode(',', $price_list_price); - - $sundry->save(); - } - - // create a record for this updated value - $update_record = new PriceListMarkupTagsChanges(); - $update_record->price_list_category_id = $price_list_category_id; - $update_record->markup_tag_id = $markup_tag_id; - $update_record->markup_tag_percentage = $markup_percentage; - $update_record->item_type = "Sundries"; - $update_record->item_ids = implode(",", $checked_sundry_array); - $update_record->item_old_prices = implode(",", $item_old_prices); - $update_record->item_new_prices = implode(",", $item_new_prices); - $update_record->created_by = Auth::user()->id; - $update_record->save(); - - flash("Sundries price list for " . get_name(get_name($price_list_category_id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') . " has been updated")->success(); - - return redirect('/price_list_category/'); - } - - public function edit_pricing_eye_glasses(Request $request,$id){ - $filtered_items=[]; - $item_name = 'opticals'; - $title='Name'; - $route="price_list_category.edit_pricing_eye_glasses"; - $route_markups='price_list_category.apply_markup_to_eye_glasses'; - $route_submit ='price_list_category.save_pricing_eye_glasses'; - $route_cancel=''; - $item_ids_array = $request->search_items_ids; - - if ($item_ids_array) { - $is_all_items = in_array("all_items", $item_ids_array); - - if ($is_all_items) { - $filtered_items = EyeGlasses::orderby('name', 'asc')->get(); - } else{ - $filtered_items = EyeGlasses::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } - } - $items = EyeGlasses::select('id', 'name', 'non_insured_price', 'price_list_category', 'price_list_price')->pluck('name','id')->prepend('All opticals', 'all_items')->toArray(); - - return view('patient_discounts::price_list_category.edit_pricing_list', compact('items','route_submit','route_markups','route', 'id','item_name','title','filtered_items')); - - // $eye_glasses = EyeGlasses::select('id', 'name', 'non_insured_price', 'insured_price', 'price_list_category', 'price_list_price')->orderBy('name', 'asc')->get(); - - // return view('patient_discounts::price_list_category.edit_pricing_eye_glasses', compact('eye_glasses', 'id')); - } - - public function save_pricing_eye_glasses(Request $request){ - $price_list_category_id = $request->price_list_category_id; - $id_array = $request->id; - $price_list_price_array = $request->price_list_price; - - for ($i = 0; $i < count($id_array); $i++){ - $eye_glass = EyeGlasses::find($id_array[$i]); - - // get current values - $price_list_category = is_null($eye_glass->price_list_category) ? [] : explode(',', $eye_glass->price_list_category); - $price_list_price = is_null($eye_glass->price_list_price) ? [] : explode(',', $eye_glass->price_list_price); - - // edit values - $key = array_search($price_list_category_id, $price_list_category); - - if (isset($price_list_price[$key]) && $key !== false){ - $price_list_price[$key] = is_numeric($price_list_price_array[$i]) ? $price_list_price_array[$i] : 0; - } else { - // the item was not found therefore add a new record for it - $price_list_category[] = $price_list_category_id; - $eye_glass->price_list_category = implode(',', $price_list_category); - $price_list_price[] = $price_list_price_array[$i]; - } - - $eye_glass->price_list_price = implode(',', $price_list_price); - - $eye_glass->save(); - } - - flash("Eye Glasses price list for " . get_name(get_name($price_list_category_id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') . " has been updated")->success(); - - return redirect('/price_list_category/'); - } - - public function apply_markup_to_eye_glasses(Request $request,$id){ - $markup_tags = MarkupTag::orderBy('name', 'asc')->get(); - $tags_select = ['' => '- Select Markup -'] + MarkupTag::orderBy('name', 'asc')->pluck('name','id')->toArray(); - if(isset($request->filtered_items)){ - $eye_glasses = json_decode($request->filtered_items); - }else{ - $eye_glasses = EyeGlasses::orderby('name', 'asc')->get(); - } - return view('patient_discounts::price_list_category.apply_markup_to_eye_glasses', compact('markup_tags','tags_select', 'eye_glasses', 'id')); - } - - public function save_apply_markup_to_eye_glasses(Request $request){ - $markup_tag_id = $request->markup_tag; - $checked_eye_glass_array = $request->checked_eye_glass; - $price_list_category_id = $request->price_list_category_id; - $item_old_prices = []; - $item_new_prices = []; - - // get markup details - $markup_tag = MarkupTag::find($markup_tag_id); - $markup_percentage = $markup_tag->percentage; - - // update the prices for all the selected drugs - foreach ($checked_eye_glass_array as $eye_glass_id){ - $eye_glass = EyeGlasses::find($eye_glass_id); - - // get current values - $price_list_category = is_null($eye_glass->price_list_category) ? [] : explode(',', $eye_glass->price_list_category); - $price_list_price = is_null($eye_glass->price_list_price) ? [] : explode(',', $eye_glass->price_list_price); - - $key = array_search($price_list_category_id, $price_list_category); - - $current_price = 0; - $new_price = 0; - - if (isset($price_list_price[$key]) && $key !== false){ - // get the current price and update using markup - // 9th Jan 2020 Update - use the default price and not the current price of the price list - $current_price = $eye_glass->non_insured_price; - //$current_price = $price_list_price[$key]; - $new_price = (($markup_percentage / 100) * $current_price) + $current_price; - $new_price = ($new_price < 0) ? 0 : $new_price; - $price_list_price[$key] = $new_price; - } - - $item_old_prices[] = $current_price; - $item_new_prices[] = $new_price; - - $eye_glass->price_list_price = implode(',', $price_list_price); - - $eye_glass->save(); - } - - // create a record for this updated value - $update_record = new PriceListMarkupTagsChanges(); - $update_record->price_list_category_id = $price_list_category_id; - $update_record->markup_tag_id = $markup_tag_id; - $update_record->markup_tag_percentage = $markup_percentage; - $update_record->item_type = "Eye Glasses"; - $update_record->item_ids = implode(",", $checked_eye_glass_array); - $update_record->item_old_prices = implode(",", $item_old_prices); - $update_record->item_new_prices = implode(",", $item_new_prices); - $update_record->created_by = Auth::user()->id; - $update_record->save(); - - flash("Eye Glass price list for " . get_name(get_name($price_list_category_id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') . " has been updated")->success(); - - return redirect('/price_list_category/'); - } -} diff --git a/docker/statistics/Modules/PatientDiscounts/Providers/PatientDiscountsServiceProvider.php b/docker/statistics/Modules/PatientDiscounts/Providers/PatientDiscountsServiceProvider.php deleted file mode 100644 index b159ec91..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Providers/PatientDiscountsServiceProvider.php +++ /dev/null @@ -1,113 +0,0 @@ -registerTranslations(); - $this->registerConfig(); - $this->registerViews(); - $this->loadMigrationsFrom(module_path($this->moduleName, 'Database/Migrations')); - } - - /** - * Register the service provider. - * - * @return void - */ - public function register() - { - $this->app->register(RouteServiceProvider::class); - } - - /** - * Register config. - * - * @return void - */ - protected function registerConfig() - { - $this->publishes([ - module_path($this->moduleName, 'Config/config.php') => config_path($this->moduleNameLower . '.php'), - ], 'config'); - $this->mergeConfigFrom( - module_path($this->moduleName, 'Config/config.php'), $this->moduleNameLower - ); - } - - /** - * Register views. - * - * @return void - */ - public function registerViews() - { - $viewPath = resource_path('views/modules/' . $this->moduleNameLower); - - $sourcePath = module_path($this->moduleName, 'Resources/views'); - - $this->publishes([ - $sourcePath => $viewPath - ], ['views', $this->moduleNameLower . '-module-views']); - - $this->loadViewsFrom(array_merge($this->getPublishableViewPaths(), [$sourcePath]), $this->moduleNameLower); - } - - /** - * Register translations. - * - * @return void - */ - public function registerTranslations() - { - $langPath = resource_path('lang/modules/' . $this->moduleNameLower); - - if (is_dir($langPath)) { - $this->loadTranslationsFrom($langPath, $this->moduleNameLower); - $this->loadJsonTranslationsFrom($langPath); - } else { - $this->loadTranslationsFrom(module_path($this->moduleName, 'Resources/lang'), $this->moduleNameLower); - $this->loadJsonTranslationsFrom(module_path($this->moduleName, 'Resources/lang')); - } - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides() - { - return []; - } - - private function getPublishableViewPaths(): array - { - $paths = []; - foreach (\Config::get('view.paths') as $path) { - if (is_dir($path . '/modules/' . $this->moduleNameLower)) { - $paths[] = $path . '/modules/' . $this->moduleNameLower; - } - } - return $paths; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Providers/RouteServiceProvider.php b/docker/statistics/Modules/PatientDiscounts/Providers/RouteServiceProvider.php deleted file mode 100755 index 9b8a29e0..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Providers/RouteServiceProvider.php +++ /dev/null @@ -1,68 +0,0 @@ -mapApiRoutes(); - $this->mapWebRoutes(); - } - - /** - * Define the "web" routes for the application. - * - * These routes all receive session state, CSRF protection, etc. - * - * @return void - */ - protected function mapWebRoutes() - { - Route::middleware('web') - ->namespace($this->namespace) - ->group(module_path('PatientDiscounts', '/Routes/web.php')); - } - - /** - * Define the "api" routes for the application. - * - * These routes are typically stateless. - * - * @return void - */ - protected function mapApiRoutes() - { - Route::prefix('api') - ->middleware('api') - ->namespace($this->namespace) - ->group(module_path('PatientDiscounts', '/Routes/api.php')); - } -} diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/discount_categories/create.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/discount_categories/create.blade.php deleted file mode 100755 index a665b18b..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/discount_categories/create.blade.php +++ /dev/null @@ -1,120 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('discount_categories.discount_category') }}

    -
    - -
    - -
    -
    -
    -
    -
    - - {{ Form::open(['method'=>'post','route'=>'discount_category.store']) }} - -
    - {{ Form::label('patient_category', __('discount_categories.patient_category')) }} - {{ Form::select('patient_category', $categories, '', ['class' => 'form-control col-sm-12 compulsory']) }} -
    - -
    - {{ Form::label('donor',__('discount_categories.donor_amount')) }} - {{ Form::select('donor', $donors, '', ['class' => 'form-control col-sm-12 compulsory']) }} -
    - -
    - {{ Form::label('discount_name',__('discount_categories.discount_name')) }} - {{ Form::text('discount_name','',['class' => 'form-control compulsory']) }} -
    -
    - -
    - {{ Form::radio('discount_type', 1, false, ["required",'class'=>'discount_type']) }} {{ __('discount_categories.fixed_figure') }}    - {{ Form::radio('discount_type', 2, false, ["required",'class'=>'discount_type']) }} {{ __('discount_categories.patient_ceiling') }}    - {{ Form::radio('discount_type', 3, false, ["required",'class'=>'discount_type']) }} {{ __('discount_categories.patient_top_up') }} -
    -
    - - - - - - - -
    - {{ Form::submit(__('discount_categories.save'),['class'=>'btn btn-success'])}} - {{ Form::reset(__('discount_categories.cancel'),['type'=>'reset','class'=>'btn btn-default'])}} -
    - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - -@endpush - - - - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/discount_categories/edit.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/discount_categories/edit.blade.php deleted file mode 100755 index f983725b..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/discount_categories/edit.blade.php +++ /dev/null @@ -1,121 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('discount_categories.edit_discount_category') }}

    -
    - -
    - -
    -
    -
    -
    -
    - - {{ Form::model($discount_category, ['method' => 'PUT', 'route' => ['discount_category.update',$discount_category], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('patient_category',__('discount_categories.patient_category')) }} - {{ Form::select('patient_category', $categories, $discount_category->patient_category, ['class' => 'form-control col-sm-12 compulsory']) }} -
    - -
    - {{ Form::label('donor',__('discount_categories.donor_amount')) }} - {{ Form::select('donor', $donors, $discount_category->donor_id, ['class' => 'form-control col-sm-12 compulsory']) }} -
    - -
    - {{ Form::label('discount_name',__('discount_categories.discount_name')) }} - {{ Form::text('discount_name',$discount_category->name,['class' => 'form-control compulsory']) }} -
    -
    - -
    - {{ Form::radio('discount_type', 1, false, ["required",'class'=>'discount_type']) }} {{ __('discount_categories.fixed_figure') }}    - {{ Form::radio('discount_type', 2, false, ["required",'class'=>'discount_type']) }} {{ __('discount_categories.patient_ceiling') }}    - {{ Form::radio('discount_type', 3, false, ["required",'class'=>'discount_type']) }} {{ __('discount_categories.patient_top_up') }} -
    -
    - -
    -
    - {{ Form::label('donor_fixed_amount',__('discount_categories.donor_amount')) }} - {{ Form::number('donor_fixed_amount',$discount_category->donor_amount,['class' => 'form-control compulsory']) }} -
    -
    - -
    - {{ Form::label('patient_fixed_amount',__('discount_categories.patient_amount')) }} - {{ Form::number('patient_fixed_amount',$discount_category->patient_amount,['class' => 'form-control compulsory']) }} -
    -
    -
    - -
    -
    - {{ Form::label('patient_ceiling',__('discount_categories.patient_amount')) }} - {{ Form::number('patient_ceiling',$discount_category->patient_amount,['class' => 'form-control compulsory']) }} -
    -
    -
    - -
    -
    - {{ Form::label('donor_top_up',__('discount_categories.donor_amount')) }} - {{ Form::number('donor_top_up',$discount_category->donor_amount,['class' => 'form-control compulsory']) }} -
    -
    -
    - -
    - {{ Form::submit(__('discount_categories.save'),['class'=>'btn btn-success'])}} - {{ Form::reset(__('discount_categories.cancel'),['type'=>'reset','class'=>'btn btn-default'])}} -
    - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - -@endpush - - - - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/discount_categories/inactive.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/discount_categories/inactive.blade.php deleted file mode 100755 index 89873b31..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/discount_categories/inactive.blade.php +++ /dev/null @@ -1,83 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('discount_categories.activate_discounts') }}

    -
    - -
    - -
    -
    -
    - @include('flash::message') -
    - - - - - - - - - - - - - - @if(count($discount_categories) > 0) - @foreach($discount_categories as $discount) - - - - - @php - $discount_type = ""; - if($discount->discount_type==1){ - $discount_type = "Fixed Figure"; - } - else if($discount->discount_type==2){ - $discount_type = "Patient Ceiling"; - } - else{ - $discount_type = "Patient Top-up"; - } - @endphp - - - - - - @endforeach - @else - - @endif - -
    {{ __('discount_categories.discount_category') }}{{ __('discount_categories.donor') }}{{ __('discount_categories.patient_category') }}{{ __('discount_categories.discount_type') }}{{ __('discount_categories.discount_amount') }}{{ __('discount_categories.patient_amount') }}
    {{ $discount->name }}{{ $donors[$discount->donor_id] }}{{ $categories[$discount->patient_category] }}{{ $discount_type }}{{ ugandan_shillings($discount->donor_amount) }}{{ ugandan_shillings($discount->patient_amount) }} - {{ Form::model($discount->id ,['method' => 'POST', 'route' => ['discount_category.activate', $discount->id]]) }} - - {{ Form::close() }} -
    {{ __('discount_categories.no_records_found') }}
    -
    - {{ $discount_categories->links() }} -
    -
    -
    -@endsection - - - - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/discount_categories/index.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/discount_categories/index.blade.php deleted file mode 100755 index dd84d6a6..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/discount_categories/index.blade.php +++ /dev/null @@ -1,85 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('discount_categories.patient_category_discounts') }}

    -
    - -
    - -
    -
    -
    - @include('flash::message') -
    - - - - - - - - - - - - - - @if(count($discount_categories) > 0) - @foreach($discount_categories as $discount) - - - - - @php - $discount_type = ""; - if($discount->discount_type==1){ - $discount_type = "Fixed Figure"; - } - else if($discount->discount_type==2){ - $discount_type = "Patient Ceiling"; - } - else{ - $discount_type = "Patient Top-up"; - } - @endphp - - - - - - - @endforeach - @else - - @endif - -
    {{ __('discount_categories.discount_category') }}{{ __('discount_categories.donor') }}{{ __('discount_categories.patient_category') }}{{ __('discount_categories.discount_type') }}{{ __('discount_categories.discount_amount') }}{{ __('discount_categories.patient_amount') }}
    {{ $discount->name }}{{ $donors[$discount->donor_id] ?? "N/A" }}{{ $categories[$discount->patient_category] ?? "N/A" }}{{ $discount_type }}{{ ugandan_shillings($discount->donor_amount) }}{{ ugandan_shillings($discount->patient_amount) }} - {{ __('discount_categories.edit') }} - - {{ Form::model($discount->id ,['method' => 'DELETE', 'route' => ['discount_category.destroy', $discount->id]]) }} - - {{ Form::close() }} -
    {{ __('discount_categories.no_records_found') }}
    -
    - {{ $discount_categories->links() }} -
    -
    -
    -@endsection - - - - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/discounts/add_dependants_to_category_patient.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/discounts/add_dependants_to_category_patient.blade.php deleted file mode 100755 index 48027ca6..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/discounts/add_dependants_to_category_patient.blade.php +++ /dev/null @@ -1,152 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    Add Dependants to Category Patient

    -
    -
    - -
    -
    - -
    -
    -
    - - @include('flash::message') - -

    Add Dependants

    - {{ Form::open(['method'=>'post','url' => 'store_dependants_to_category_patient']) }} - -
    -
    -
    - {{ Form::label('patient_name', 'Patient Name:') }} -
    -
    - {{ Form::text('patient_name',$patient->first_name.' '.$patient->last_name,['class' => 'form-control', 'readonly']) }} - {{ Form::hidden('patient_id',$patient->id,['class' => 'form-control']) }} -
    -
    -
    - -
    - {{ Form::label('patient_category', 'Patient Category:') }} -
    -
    - {{ Form::text('patient_category', get_name($patient_category_id, "id", "name", "patient_categories"), ['class' => 'form-control', 'readonly']) }} - {{ Form::hidden('patient_category_id', $patient_category_id, ['class' => 'form-control']) }} -
    -
    -
    - - @php - $existing_dependants_record_collection = \Streamline\Models\CategoryPatientDependant::where('main_patient_id', $patient->id)->get(); - $existing_record = null; - $dependants_array = []; - if (count($existing_dependants_record_collection) > 0) { - $existing_record = $existing_dependants_record_collection->first(); - $dependants_array = explode(",", $existing_record->dependant_patient_ids); - } - @endphp - -
    - {{ Form::label('current_dependants', 'Current Dependants:') }} -
    -
    - -
    -
    -
    - -
    - {{ Form::label('dependenants', 'Dependants') }} -
    -
    - -
    -
    -
    - -
    - {{ Form::label('start_date', 'Start Date') }} -
    -
    - {{ Form::text('start_date',(is_null($existing_record) || is_null($existing_record->start_date)) ? '' : \Carbon\Carbon::createFromFormat('Y-m-d', $existing_record->start_date)->format('d/m/Y'),['class' => 'form-control compulsory','readonly','id'=>'start_date']) }} - -
    -
    -
    -
    -
    -
    - - {{ Form::submit('Submit dependants', ['class' => 'btn btn-success']) }} - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/discounts/create.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/discounts/create.blade.php deleted file mode 100755 index 87ab7b97..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/discounts/create.blade.php +++ /dev/null @@ -1,189 +0,0 @@ -@extends('layouts.main') - -@push('styles') -@endpush - -@section('content') -
    -
    -

    {{ __('discounts.patient_category_discounts') }}

    -
    - -
    - -
    - {{ Form::open(['method'=>'post','route'=>'discounts.store']) }} -
    -
    -
    - - {{ Form::select('patient_category', $categories, '', ['class' => 'form-control col-sm-12 compulsory']) }} -
    - -
    - -
    - {{ Form::radio('pay_later', 1, false, ["required", 'id' => 'pay_later_yes','onclick' => 'setOptions()']) }} Yes    - {{ Form::radio('pay_later', 0, false, ["required", 'id' => 'pay_later_no', 'onclick' => 'setOptions()']) }} No -
    -
    - - - - - - - - -
    - -
    -
    - - {{ Form::number('discount',0,['class' => 'form-control compulsory', 'max' => '100', 'min' => '0','onchange' => 'setDiscountPercentageOptions(this.value)']) }} -
    -
    - - - - -
    -
    - - {{ Form::submit('Save',['class'=>'btn btn-success'])}} - {{ Form::reset('Cancel',['type'=>'reset','class'=>'btn btn-default'])}} - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - -@endpush - - - - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/discounts/edit.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/discounts/edit.blade.php deleted file mode 100755 index 61842585..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/discounts/edit.blade.php +++ /dev/null @@ -1,192 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('discounts.patient_category_discounts') }}

    -
    - -
    - -
    - {{ Form::model($discount, ['method' => 'PUT', 'route' => ['discounts.update',$discount], 'data-toggle' => 'validator']) }} - - {{ Form::hidden('id', $id) }} - -
    -
    -
    - - {{ Form::text('patient_category_text', $categories[$discount->patient_category] ?? 'Category Deleted', ['class' => 'form-control col-sm-12', 'readonly']) }} -
    - -
    - -
    - {{ Form::radio('pay_later', 1, $discount->pay_later == 1, ["required", 'id' => 'pay_later_yes','onclick' => 'setOptions()']) }} Yes    - {{ Form::radio('pay_later', 0, $discount->pay_later == 0, ["required", 'id' => 'pay_later_no', 'onclick' => 'setOptions()']) }} No -
    -
    - -
    pay_later == 0) style="display: none;" @endif> - -
    - {{ Form::radio('co_payment', 1, $discount->co_payment == 1, ['id' => 'co_payment_yes','onclick' => 'setCoPaymentOptions()']) }} Yes    - {{ Form::radio('co_payment', 0, $discount->co_payment == 0, ['id' => 'co_payment_no','onclick' => 'setCoPaymentOptions()']) }} No -
    -
    - -
    co_payment == 0) style="display: none;" @endif id="co_payment_share"> - - {{ Form::number('co_payment_share',$discount->co_payment_share ?? 0,['class' => 'form-control', 'max' => '100']) }} -
    -
    - -
    pay_later == 0) style="display: none;" @endif> - {{ Form::label('is_pay_later_threshold_discount','Does a patient have threshold amount') }} -
    - {{ Form::radio('is_pay_later_threshold_discount', 1, !is_null($discount->threshold_type), ['id' => 'is_pay_later_threshold_discount_yes', 'onclick' => 'displayOfDiscountThresholdDivs()']) }} Yes    - {{ Form::radio('is_pay_later_threshold_discount', 0, is_null($discount->threshold_type), ['id' => 'is_pay_later_threshold_discount_no', 'onclick' => 'displayOfDiscountThresholdDivs()']) }} No -
    -
    - -
    threshold_type == 0) style="display: none;" @endif> -
    - {{ Form::label('threshold_type','Threshold type') }} - {{ Form::select('threshold_type', [''=>'--Select discount type','1'=>'Monthly threshold amount','2'=>'Yearly threshold amount'], $discount->threshold_type, ['class' => 'form-control compulsory', 'id' => 'threshold_type']) }} -
    -
    - -
    - {{ Form::label('threshold_amount','Threshold amount') }} - {{ Form::number('threshold_amount', $discount->threshold_amount, ['class' => 'form-control compulsory', 'id' => 'threshold_amount']) }} -
    -
    -
    -
    - -
    -
    - - {{ Form::number('discount',$discount->discount,['class' => 'form-control compulsory', 'max' => '100', 'min' => '0','onchange' => 'setDiscountPercentageOptions(this.value)']) }} -
    -
    - -
    discount == 0) style="display: none;" @endif> - -
    - {{ Form::radio('track_discounts', 1, !is_null($discount->tracking_expense_account), ['id' => 'tracking_yes','onclick' => 'setTrackingOption()']) }} Yes    - {{ Form::radio('track_discounts', 0, is_null($discount->tracking_expense_account), ['id' => 'tracking_no','onclick' => 'setTrackingOption()']) }} No -
    -
    - -
    tracking_expense_account))style="display: none;" @endif id="tracking_expense_account_div"> - - {{ Form::select('tracking_expense_account', $expense_accounts, $discount->tracking_expense_account,['class' => 'form-control', 'id' => 'tracking_expense_account']) }} -
    -
    -
    -
    - - {{ Form::submit('Save',['class'=>'btn btn-success'])}} - {{ Form::reset('Cancel',['type'=>'reset','class'=>'btn btn-default'])}} - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - -@endpush - - - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/discounts/edit_insured_drugs.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/discounts/edit_insured_drugs.blade.php deleted file mode 100755 index c2244b0f..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/discounts/edit_insured_drugs.blade.php +++ /dev/null @@ -1,83 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('discounts.patient_category_discounts') }}

    -
    -
    - -
    -
    - -
    -
    -
    - @include('flash::message') - - {{ Form::open(['route' => 'discounts.store_edited_insured_drugs','data-toggle'=>'validator']) }} - {{ Form::hidden('patient_category_id', $patient_category_id) }} - -

    Drugs covered by {{ get_name($patient_category_id, 'id', 'name', 'patient_categories') }}

    - -
    - -
    - - - - - - - - - @foreach($drugs as $drug) - @php - $patient_category_coverage = explode(",", $drug->patient_category_coverage); - $is_drug_covered = in_array($patient_category_id, $patient_category_coverage); - @endphp - - - - - @endforeach - -
    Drug NameIs Not Covered
    {{ $drug->name }} - @if($is_drug_covered) - {{ Form::hidden('current_covered[]', $drug->id) }} - @endif - - {{ Form::checkbox('is_covered[]', $drug->id, $is_drug_covered, ['class' => 'item_checkbox']) }} -
    -
    - - {{ Form::button(__('patients.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('patients.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/discounts/inactive.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/discounts/inactive.blade.php deleted file mode 100755 index c3fc7494..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/discounts/inactive.blade.php +++ /dev/null @@ -1,65 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('discounts.patient_category_discounts') }}

    -
    - -
    - -
    -
    -
    - @include('flash::message') -
    - - - - - - - - - - - @if(count($discounts) > 0) - @foreach($discounts as $discount) - - - - - - - @endforeach - @else - - @endif - -
    {{ __('discounts.patient_category') }}{{ __('discounts.discount') }}{{ __('discounts.pay_late') }}{{ __('discounts.action') }}
    {{ $categories[$discount->patient_category] }}{{ $discount->discount }}{{ $discount->pay_later == 1 ? "Yes" : "No" }} - {{ Form::model($discount->id ,['method' => 'POST', 'route' => ['discounts.activate', $discount->id]]) }} - - {{ Form::close() }} -
    {{ __('discounts.no_discounts_found') }}
    -
    - {{ $discounts->links() }} -
    -
    -
    -@endsection - - - - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/discounts/index.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/discounts/index.blade.php deleted file mode 100755 index bba90d06..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/discounts/index.blade.php +++ /dev/null @@ -1,117 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('discounts.patient_category_discounts') }}

    -
    -
    - -
    -
    - -
    -
    -
    - @include('flash::message') -
    - - - - - - - - - - - - - - - - @if(count($discounts) > 0) - @foreach($discounts as $discount) - - - - - - - - - - - - @endforeach - @else - - @endif - -
    {{ __('discounts.patient_category') }}{{ __('discounts.discount') }}{{ __('discounts.co_payment') }}{{ __('discounts.pay_later') }}ThresholdAdd dependants{{ __('discounts.action') }}{{ __('discounts.action') }}{{ __('discounts.action') }}
    {{ $categories[$discount->patient_category] ?? "" }}{{ $discount->discount }}@if($discount->co_payment_share) {{ $discount->co_payment_share }} @else @endif{{ $discount->pay_later == 1 ? "Yes" : "No" }}{{ is_null($discount->threshold_amount) ? "" : ugandan_shillings($discount->threshold_amount) }} - @if(!is_null($discount->threshold_type)) - @if( Auth::user()->can('view-dependants-to-patient')) - {{ Form::open(['method'=>'post','url' => 'discounts/add_dependants']) }} - {{ Form::hidden('discount_id', $discount->id) }} - {{ Form::submit('View dependants', ['class' => 'btn btn-primary btn-rounded btn-sm']) }} - {{ Form::close() }} - @endif - @endif - - @if($discount->pay_later == 1 && Auth::user()->can('change-drugs-covered-by-category')) - Edit Insured Drugs - @endif - - @if(Auth::user()->can('discount-list')) - {{ __('discounts.edit') }} - @endif - - @if(Auth::user()->can('discount-list')) - {{ Form::model($discount->id ,['method' => 'DELETE', 'route' => ['discounts.destroy', $discount->id]]) }} - - {{ Form::close() }} - @endif -
    {{ __('discounts.no_discounts_found') }}
    -
    - {{ $discounts->links() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush - - - - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/discounts/patient_category_patients.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/discounts/patient_category_patients.blade.php deleted file mode 100755 index 669b1985..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/discounts/patient_category_patients.blade.php +++ /dev/null @@ -1,119 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    Patient Category Dependants

    -
    -
    - -
    -
    - -
    -
    -
    - - @include('flash::message') - -

    Showing patients for {{ $patient_discount->threshold_type == 1 ? "Monthly" : "Yearly" }} Discount {{ get_name($patient_discount->patient_category, "id", "name", "patient_categories") }}, registered on {{ streamline_date($patient_discount->created_on) }}

    -
    - - - - - - - - - - - - @if(count($patient_category_patients) > 0) - @foreach($patient_category_patients as $patient) - - - - - - - - @endforeach - @else - - @endif - -
    Patient NameThreshold AmountCurrent Balance
    - Main patient:
    - - @php - $existing_dependants_record_collection = \Streamline\Models\CategoryPatientDependant::where('main_patient_id', $patient->id)->get(); - $existing_record = null; - $dependants_array = []; - if (count($existing_dependants_record_collection) > 0) { - $existing_record = $existing_dependants_record_collection->first(); - $dependants_array = explode(",", $existing_record->dependant_patient_ids); - echo "Dependants"; - } - @endphp - -
    {{ ugandan_shillings($patient_discount->threshold_amount) }} - {{ ugandan_shillings(get_balance_from_category_threshold($patient->id)) }} - - @if( Auth::user()->can('view-dependants-to-patient') && count($dependants_array) > 0) - View dependants - @endif - - @if( Auth::user()->can('add-dependants-to-patient')) - {{ Form::open(['method'=>'post','url' => 'discounts/add_dependants_to_category_patient']) }} - {{ Form::hidden('patient_id', $patient->id) }} - {{ Form::hidden('patient_category', $patient_discount->patient_category) }} - {{ Form::hidden('patient_discount_id', $patient_discount->id) }} - {{ Form::submit('Add dependants', ['class' => 'btn btn-primary']) }} - {{ Form::close() }} - @endif -
    No records found
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/discounts/view_dependants_to_category_patient.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/discounts/view_dependants_to_category_patient.blade.php deleted file mode 100755 index 843a12ad..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/discounts/view_dependants_to_category_patient.blade.php +++ /dev/null @@ -1,57 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    List of dependants

    -
    -
    - -
    -
    - -
    -
    -
    - - @include('flash::message') - - @if(!is_null($dependants_record)) -

    List of dependants for {{ $patient->first_name }} {{ $patient->last_name }} {{ $patient->number }} ({{ get_name($dependants_record->patient_category_id, "id", "name", "patient_categories") }})

    - - @php - $dependants_array = explode(",", $dependants_record->dependant_patient_ids); - @endphp - - @else - There are no recorded dependants for this patient - @endif -
    -
    -
    -@endsection - -@push('scripts') - - -@endpush - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/add_family_deposit.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/add_family_deposit.blade.php deleted file mode 100755 index 4c2f3ee3..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/add_family_deposit.blade.php +++ /dev/null @@ -1,181 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('family_accounts.add_family_deposit') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patient_discounts::family_accounts.menu') -
    -
    - -
    -
    -
    - @include('flash::message') -
    -
    - {{ Form::open(['method'=>'post','route'=>'family_accounts.store_family_deposit']) }} - -
    - {{ Form::label('family_head',__('family_accounts.family_head')) }} - {{ Form::text('family_head', get_full_name($family_account_details->family_head_id, "id", "first_name", "last_name", "patients"), ['class' => 'form-control col-sm-12 compulsory', 'readonly' => 'true']) }} -
    - - {{ Form::hidden('family_account_id', $family_account_details->id) }} - -
    - {{ Form::label('deposit_amount',__('family_accounts.amount_deposited')) }} - {{ Form::number('deposit_amount', '',['class' => 'form-control compulsory', 'id' => 'deposit_amount', 'required']) }} -
    -
    - -
    -
    - -
    -
    -
    -

    - - - -
    - {{ Form::label('deposit_date', __('family_accounts.deposited_on')) }} -
    - {{ Form::text('deposit_date', date('d-m-Y'), ['class'=>'form-control compulsory', 'required' , 'readonly', 'id'=>'deposit_date']) }} - -
    -
    - -
    - {{ Form::label('deposited_by', __('family_accounts.deposited_by')) }} - {{ Form::text('deposited_by', '', ['class'=>'form-control required compulsory', 'required', 'id'=>'deposit_by']) }} -
    - -
    - {{ Form::submit(__('family_accounts.save'),['class'=>'btn btn-success'])}} - {{ Form::reset(__('family_accounts.cancel'),['type'=>'reset','class'=>'btn btn-default'])}} -
    - - {{ Form::close() }} -
    -
    -

    {{ __('family_accounts.family_members') }}

    - @php - $family_members_array = explode(",", $family_account_details->family_members_ids); - @endphp -
      - @for($i = 0; $i < count($family_members_array); $i++) -
    1. - {{ get_full_name($family_members_array[$i], "id", "first_name", "last_name", "patients") }} -
      - {{ __('family_accounts.number') }} {{ get_name($family_members_array[$i], "id", "number","patients") }} -
      - {{ __('family_accounts.contact') }}{{ get_name($family_members_array[$i], "id", "phone","patients") }}
      - {{ __('family_accounts.residence') }}{{ patient_residence($family_members_array[$i]) }} -
    2. - @endfor -
    -
    -
    -
    -
    -
    -@endsection -@push('scripts') - - - -@endpush - - - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/cancel_family_account_deposit.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/cancel_family_account_deposit.blade.php deleted file mode 100755 index f86e7355..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/cancel_family_account_deposit.blade.php +++ /dev/null @@ -1,96 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    Cancel Family Account Deposit

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - @php - $members_array = explode(",", $family_account->family_members_ids); - @endphp - - @for($i=0; $i < count($members_array); $i++) - - - - @endfor - -
    Family Members
    {{ get_full_name($members_array[$i], "id", "first_name", "last_name", "patients") }} ({{ get_name($members_array[$i], "id", "number", "patients") }})
    -
    -
    -
    -
    - - {{--
    --}} - -
    -
    -
    - - {{ Form::open(['method'=>'post','url'=>'family_account_deposit_cancellation']) }} - - {{ Form::hidden('deposit_id', $family_deposit->id) }} - -
    - {{ Form::label('deposited_by', 'Deposited By') }} - {{ Form::text('deposited_by', $family_deposit->deposited_by, ['class'=>'form-control compulsory', 'readonly', ]) }} -
    - -
    - {{ Form::label('deposited_amount', 'Deposited Amount') }} - {{ Form::text('deposited_amount', ugandan_shillings($family_deposit->deposit_amount), ['class'=>'form-control compulsory', 'readonly', ]) }} -
    - -
    -
    - {{ Form::label('received_by', "Received By") }} - {{ Form::text('received_by', get_full_name($family_deposit->created_by, "id", "first_name", "last_name", "users"), ['class'=>'form-control compulsory', 'readonly']) }} -
    -
    - -
    -
    - {{ Form::label('reason_name', 'Reason For Cancellation') }} - {{ Form::textarea('reason', '', ['class'=>'form-control compulsory required', 'rows'=>'5', 'cols' => '10', 'required']) }} -
    -
    - -
    - {{ Form::submit('Cancel Deposit', ['class' => 'btn btn-success']) }} -
    - {{ Form::close() }} -
    -
    -
    -
    -
    - -@endsection diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/create.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/create.blade.php deleted file mode 100755 index 3c3221c3..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/create.blade.php +++ /dev/null @@ -1,180 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('family_accounts.create_family_account') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patient_discounts::family_accounts.menu') -
    -
    - -
    - @include('flash::message') - @if ($errors->any()) -
    -
      - @foreach ($errors->all() as $error) -
    • {{ $error }}
    • - @endforeach -
    -
    - @endif -
    -
    - - {{ Form::open(['method'=>'post','route'=>'family_accounts.store', 'id' => 'family_account_form']) }} - -
    - {{ Form::label('family_head', __('family_accounts.family_head')) }} - -
    - -
    - {{ Form::label('family_members',__('family_accounts.family_members')) }} - -
    - -
    - {{ Form::label('deposit_amount', __('family_accounts.amount_deposited')) }} - {{ Form::number('deposit_amount',0,['class' => 'form-control', 'id' => 'deposit_amount']) }} -
    -
    - - - -
    - {{ Form::label('deposited_by', __('family_accounts.deposited_by')) }} - {{ Form::text('deposited_by', '', ['class'=>'form-control', 'id'=>'deposit_by']) }} -
    - - @if (Auth::user()->can('add-family-account-credit-limit')) -
    - {{ Form::label('credit_limit', __('family_accounts.credit_limit')) }} - {{ Form::number('credit_limit',0,['class' => 'form-control']) }} -
    -
    - @endif - -
    - {{ Form::submit(__('family_accounts.save'),['class'=>'btn btn-success', 'id' => 'submitBtn'])}} - {{ Form::reset(__('family_accounts.cancel'),['type'=>'reset','class'=>'btn btn-default'])}} -
    - - {{ Form::close() }} -
    -
    -
    -@endsection -@push('scripts') - - - -@endpush - - - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/deposit_receipt.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/deposit_receipt.blade.php deleted file mode 100755 index 5290c3f8..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/deposit_receipt.blade.php +++ /dev/null @@ -1,161 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('family_accounts.family_account_deposit_receipt') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patient_discounts::family_accounts.menu') -
    -
    - -
    -
    -
    -
    -
    -
    -
    -

    - @php - $hospital_information = \Streamline\Models\HospitalInformation::first(); - @endphp - {{ $hospital_information->name }} - {{ $hospital_information->address }} - {{ __('family_accounts.tel') }} {{ $hospital_information->phone_number }}
    - {{ __('family_accounts.email') }} {{ $hospital_information->email }}
    - {{ __('family_accounts.cashier') }} {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - {{ __('family_accounts.date') }} {{ streamline_date_time_short($receipt_date) }}
    - {{ __('family_accounts.receipt_number') }} {{ $receipt_number }} @if(str_contains(url()->current(), 'family_deposit_reprint'))(Reprinted Receipt)@endif
    - {{ __('family_accounts.deposit_date') }} {{ streamline_date($new_family_deposit->deposit_date) }}
    -

    - - @php - $family_account_details = \Streamline\Models\FamilyAccount::find($new_family_deposit->family_account_id); - $family_head_name = get_full_name($family_account_details->family_head_id, "id", "first_name", "last_name", "patients"); - @endphp - - @if(should_members_display_on_deposit_receipt()) -
    - - - - - - - - - - - - @if(count($return_payment_methods) > 0) - - @foreach($return_payment_methods as $key => $value) - - - - - @endforeach - @endif - -
    {{ __('family_accounts.family_members') }}{{ __('family_accounts.amount_deposited') }}
      - @for($i = 0; $i < count($family_members_array); $i++) -
    1. - {{ get_full_name($family_members_array[$i], "id", "first_name", "last_name", "patients") }}({{ get_name($family_members_array[$i], "id", "number","patients") }}) -
    2. - @endfor -
    {{ ugandan_shillings($new_family_deposit->deposit_amount) }}
    Patient Paid With {{ ($key == 0) ? 'Cash' : get_name($key, 'id', 'name', 'patient_payment_methods') }}{{ ugandan_shillings($value) }}
    -
    - @else -
    - - - - - - - - - - - -
    Family Head: {{$family_head_name}}
    Amount - {{ ugandan_shillings($new_family_deposit->deposit_amount) }} -
    -
    - @endif -
    -
    -
    - {{ __('family_accounts.streamline') }} -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/deposit_report.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/deposit_report.blade.php deleted file mode 100755 index b9656a05..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/deposit_report.blade.php +++ /dev/null @@ -1,239 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('family_accounts.family_account_deposit_report') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patient_discounts::family_accounts.menu') -
    -
    - -
    - @include('flash::message') - - {{ Form::open(['url' => 'family_accounts_deposits_report', 'method' => 'ANY']) }} -
    -
    -
    - {{ Form::label('family_account_id', __('family_accounts.family_of')) }} - {{ Form::select('family_account_id', $family_accounts_array, '', ['class' => 'form-control compulsory']) }} -
    -
    - -
    -
    - {{ Form::label('staff_member', 'Staff Member') }} - {{ Form::select('staff_member', $staff_members, null, ['class' => 'form-control', 'id' => 'staff_member', 'required']) }} -
    -
    - -
    -
    - {{ Form::label('search_by', __('family_accounts.date')) }} - {{ Form::select('search_by', ['0'=>'Today','1'=>'Yesterday','2'=>'Custom Date','3'=>'Custom Range'], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    - - - - -
    -

    - {{ Form::button(__('family_accounts.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    -
    - {{ Form::close() }} - - @if($search_text != "") -

    -
    - @endif - -
    - - - - - - - - - - - - - - - @php $counter = 1; $total_family_deposits = 0; @endphp - @foreach($family_deposits as $deposit) - - - @php $family_head_id = get_name($deposit->family_account_id, "id", "family_head_id", "family_accounts") @endphp - - - - - - - - - - @php $counter++; @endphp - @endforeach - - - - - - - - - - - - - - -
    #{{ __('family_accounts.family_head') }}{{ __('family_accounts.total_deposits') }}Received ByDeposited ByDeposit DateTransaction Date{{ __('family_accounts.action') }}
    {{ $counter }} - {{ get_full_name($family_head_id, "id", "first_name", "last_name", "patients") }} ({{ get_name($family_head_id, "id", "number","patients") }}) - - {{ ugandan_shillings($deposit->deposit_amount) }} - @php $total_family_deposits += $deposit->deposit_amount; @endphp - {{ $deposit->user_first_name . " " . $deposit->user_last_name }}{{ $deposit->deposited_by }}{{ $deposit->deposit_date }}{{ streamline_date_time($deposit->created_at) }} - @if(Auth::user()->can('cancel-family-account-deposit') && $deposit->is_opening_amount != 1 && is_null($deposit->received)) - {{ Form::open(['url'=>'family_deposit_cancellation_reason']) }} - {{ Form::hidden('deposit_id', $deposit->id) }} - {{ Form::submit('Cancel Deposit', ['class' => 'btn btn-danger btn-sm', 'onclick' => 'return confirm("Are you sure you want to cancel this family deposit?")']) }} - {{ Form::close() }} - @endif - - Statement -
    - Reprint -
    {{ __('family_accounts.total') }} Amount Deposited{{ ugandan_shillings($total_family_deposits) }}
    -
    - -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush - - - - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/edit.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/edit.blade.php deleted file mode 100755 index 2128b00b..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/edit.blade.php +++ /dev/null @@ -1,181 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('family_accounts.edit_family_account') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patient_discounts::family_accounts.menu') -
    -
    - -
    - @include('flash::message') -
    -
    - {{ Form::model($family_account, ['method' => 'PUT', 'route' => ['family_accounts.update',$family_account], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('family_head',__('family_accounts.family_head')) }} - -
    - -
    - {{ Form::label('family_members',__('family_accounts.family_members')) }} - -
    - -
    - {{ Form::label('current_balance',__('family_accounts.current_balance')) }} - {{ Form::number('current_balance', $current_balance,['class' => 'form-control', 'readonly' => 'true']) }} -
    -
    - -
    - {{ Form::label('opening_amount',__('family_accounts.opening_amount')) }} - {{ Form::number('opening_amount', $family_account->opening_amount,['class' => 'form-control','id' => 'opening_amount']) }} -
    -
    - -
    opening_account_id)) style="display: none;" @endif> -
    - - - Select affected equity account if the opening amount is the opening balance of this family on Stre@mline - -
    - {{ Form::label('is_it_opening_family_amount', 'Is opening amount the opening balance on Stre@mline for this family') }} - {{ Form::select('is_it_opening_family_amount', [1 => 'Yes', 0 => 'No'], is_null($family_account->opening_account_id) ? null : 1, ['class' => 'form-control compulsory','required', 'id' => 'is_it_opening_amt']) }} -
    - -
    opening_account_id)) style="display: none;" @endif> - {{ Form::label('opening_account_id', 'Opening Account') }} - {{ Form::select('opening_account_id', $chart_of_accounts, $family_account->opening_account_id, ['class' => 'form-control opening_account_id']) }} -
    -
    - -
    opening_account_id)) style="display: none;" @endif> - {{ Form::label('opening_account_date', 'Opening Amount Date') }} -
    opening_account_id)) style="display: none;" @endif> - - -
    -
    -
    - -
    - {{ Form::label('deposited_by', __('family_accounts.deposited_by')) }} - {{ Form::text('deposited_by', $opening_deposit_record ? $opening_deposit_record->deposited_by : '', ['class'=>'form-control', 'id'=>'deposit_by']) }} -
    -
    - - @if (Auth::user()->can('add-family-account-credit-limit')) -
    - {{ Form::label('credit_limit', __('family_accounts.credit_limit')) }} - {{ Form::number('credit_limit',$family_account->credit_limit,['class' => 'form-control']) }} -
    -
    - @endif - -
    - {{ Form::submit(__('family_accounts.save'),['class'=>'btn btn-success'])}} - {{ Form::reset(__('family_accounts.cancel'),['type'=>'reset','class'=>'btn btn-default'])}} -
    - - {{ Form::close() }} -
    -
    -
    -@endsection -@push('scripts') - - - -@endpush - - - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/family_account_consumption_report.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/family_account_consumption_report.blade.php deleted file mode 100755 index aa1c8a0b..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/family_account_consumption_report.blade.php +++ /dev/null @@ -1,299 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('family_accounts.family_account_consumption_report') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patient_discounts::family_accounts.menu') -
    -
    - -
    - @include('flash::message') - - {{ Form::open(['url' => 'family_accounts_consumption_report', 'method' => 'ANY']) }} -
    -
    -
    - {{ Form::label('family_account_id', __('family_accounts.family_of')) }} - {{ Form::select('family_account_id', $family_accounts_array, '', ['class' => 'form-control compulsory']) }} -
    -
    - -
    -
    - {{ Form::label('staff_member', 'Staff Member') }} - {{ Form::select('staff_member', $staff_members, null, ['class' => 'form-control', 'id' => 'staff_member', 'required']) }} -
    -
    - -
    -
    - {{ Form::label('search_by', __('family_accounts.date')) }} - {{ Form::select('search_by', ['0'=>'Today','1'=>'Yesterday','2'=>'Custom Date','3'=>'Custom Range'], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    - - - - -
    -

    - {{ Form::button(__('family_accounts.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    -
    - {{ Form::close() }} - - @if($search_text != "") -

    -
    - @endif - -
    - - - - - - - - - - - - - - - - @php $counter = 1; $total_consumptions = 0; @endphp - @foreach($family_consumptions as $family_consumption) - @php - $expenditure_type = $family_consumption->expenditure_tag; - $items_received_array = []; - - if (!is_null($family_consumption->receipt_number)) { - $filters = ['receipt_number' => $family_consumption->receipt_number]; - } else { - $filters = ['patient_id' => $family_consumption->patient_id, 'episode_id' => $family_consumption->episode_id]; - } - - if($expenditure_type == "Services"){ - $service_deposit_record = \Illuminate\Support\Facades\DB::table('service_deposits')->where($filters)->first(); - - if ($service_deposit_record){ - $items_received = explode(",", $service_deposit_record->items_ids); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "services"); - } - } - } elseif($expenditure_type == "Treatment"){ - $treatment_deposit_record = \Illuminate\Support\Facades\DB::table('treatment_deposits')->where($filters)->first(); - - if ($treatment_deposit_record){ - $items_received = explode(",", $treatment_deposit_record->treatment_items); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "drugs"); - } - } - } elseif($expenditure_type == "Sundries"){ - $sundries_deposit_record = \Illuminate\Support\Facades\DB::table('sundries_deposits')->where($filters)->first(); - - if ($sundries_deposit_record){ - $items_received = explode(",", $sundries_deposit_record->sundry_items); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "sundries"); - } - } - } elseif($expenditure_type == "Investigations"){ - $investigation_deposit_record = \Illuminate\Support\Facades\DB::table('investigation_deposits')->where($filters)->first(); - - if ($investigation_deposit_record){ - $items_received = explode(",", $investigation_deposit_record->investigation_items); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "investigations"); - } - } - } elseif($expenditure_type == "Procedures"){ - $procedure_deposit_record = \Illuminate\Support\Facades\DB::table('procedure_deposits')->where($filters)->first(); - - if ($procedure_deposit_record){ - $items_received = explode(",", $procedure_deposit_record->procedure_items); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "procedures"); - } - } - } - @endphp - - - - @php $family_head_id = get_name($family_consumption->family_account_id, "id", "family_head_id", "family_accounts") @endphp - - - - - - - - - @php $counter++; @endphp - @endforeach - - - - - - - - - - - - - - -
    #Patient Information{{ __('family_accounts.family_head') }}{{ __('family_accounts.reason') }}{{ __('family_accounts.amount_consumed') }}Received ByReceipt Number{{ __('family_accounts.date') }}{{ __('family_accounts.action') }}
    {{ $counter }}{{ $family_consumption->first_name . " " . $family_consumption->last_name }} ({{ $family_consumption->number }}) - {{ get_full_name($family_head_id, "id", "first_name", "last_name", "patients") }} ({{ get_name($family_head_id, "id", "number","patients") }}) - - {{ $family_consumption->expenditure_tag == "Services" ? "Consultation / Services" : $family_consumption->expenditure_tag }} -
      - @for($j = 0; $j < count($items_received_array); $j++) -
    1. {{ $items_received_array[$j] }}
    2. - @endfor -
    -
    - {{ ugandan_shillings($family_consumption->amount_consumed) }} - @php $total_consumptions += $family_consumption->amount_consumed; @endphp - {{ $family_consumption->user_first_name . " " . $family_consumption->user_last_name }}{{ $family_consumption->receipt_number }}{{ streamline_date_time($family_consumption->created_at) }} - Statement -
    {{ __('family_accounts.total') }} Amount Consumed{{ ugandan_shillings($total_consumptions) }}
    -
    - -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush - - - - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/inactive_family_accounts.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/inactive_family_accounts.blade.php deleted file mode 100755 index 7282a5eb..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/inactive_family_accounts.blade.php +++ /dev/null @@ -1,101 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('family_accounts.activate_family_accounts') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patient_discounts::family_accounts.menu') -
    -
    - -
    -
    -
    - @include('flash::message') -
    -
    - - - - - - - - - - @foreach($family_accounts as $family_account) - - {{-- --}} - - - - - @endforeach - -
    {{ __('family_accounts.family_head') }}{{ __('family_accounts.family_members') }}{{ __('family_accounts.action') }}
    {{ get_full_name($family_account->family_head_id, "id", "first_name", "last_name", "patients") }} - {{ get_full_name($family_account->family_head_id, "id", "first_name", "last_name", "patients") }} ({{ get_name($family_account->family_head_id, "id", "number", "patients") }}) - - @php - $members_array = explode(",", $family_account->family_members_ids); - @endphp -
      - @for($i=0; $i < count($members_array); $i++) -
    1. {{ get_full_name($members_array[$i], "id", "first_name", "last_name", "patients") }} ({{ get_name($members_array[$i], "id", "number", "patients") }})
    2. - @endfor -
    -
    - {{ Form::model($family_account->id ,['method' => 'POST', 'route' => ['family_accounts.activate', $family_account->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/index.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/index.blade.php deleted file mode 100755 index ceb4bf3d..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/index.blade.php +++ /dev/null @@ -1,284 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('family_accounts.family_accounts') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patient_discounts::family_accounts.menu') -
    -
    - -
    -
    -
    - @include('flash::message') - - {{ Form::open(['url' => 'family_accounts_search', 'method' => 'ANY']) }} -
    -
    -
    - {{ Form::label('family_account_id', __('family_accounts.family_of')) }} - {{ Form::select('family_account_id', $family_accounts_array, '', ['class' => 'form-control compulsory', 'id' => 'family_account_id_dropdown']) }} -
    -
    -
    - -
    -
    - {{ Form::label('search_by', __('family_accounts.date')) }} - {{ Form::select('search_by', ['0'=>'Last 24 hours','1'=>'Custom Date','2'=>'Custom Range'], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - - -
    -

    - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    -
    - {{ Form::close() }} - - @if(!is_null($reg_date)) -

    {{ __('family_accounts.showing_consumption_of') }}{{ streamline_date($reg_date) }}

    - @elseif(!is_null($start_date) && !is_null($end_date)) -

    {{ __('family_accounts.showing_consumption_from') }}{{ streamline_date($start_date) }} {{ __('family_accounts.to') }} {{ streamline_date($end_date) }}

    - @endif - -
    -
    - - - - - - - - - - - - - - - @php $counter = 1; $current_balance_total = 0; @endphp - @if(count($family_accounts) > 0) - @foreach($family_accounts as $family_account) - - - - - - - - - - - - - - @php $counter++; @endphp - @endforeach - @endif - - - - - - - - - - - - - - - - -
    #{{ __('family_accounts.family_head') }}{{ __('family_accounts.family_members') }}{{ __('family_accounts.last_deposit') }}{{ __('family_accounts.current_balance') }}{{ __('family_accounts.opening_amount') }}{{ __('family_accounts.credit_limit') }}{{ __('family_accounts.action') }}
    {{ $counter }} - {{ get_full_name($family_account->family_head_id, "id", "first_name", "last_name", "patients") }} ({{ get_name($family_account->family_head_id, "id", "number", "patients") }}) - - @php - $members_array = explode(",", $family_account->family_members_ids); - @endphp -
      - @for($i=0; $i < count($members_array); $i++) -
    1. {{ get_full_name($members_array[$i], "id", "first_name", "last_name", "patients") }} ({{ get_name($members_array[$i], "id", "number", "patients") }})
    2. - @endfor -
    -
    - @php - $family_deposit_record = \Streamline\Models\FamilyAccountDeposit::where('family_account_id', $family_account->id)->orderBy('id', 'desc')->get(); - $last_deposit_amount = 0; - - if(count($family_deposit_record) > 0){ - $last_deposit_record_amount = $family_deposit_record->first(); - $last_deposit_amount = $last_deposit_record_amount->deposit_amount; - } - @endphp - - {{ ugandan_shillings($last_deposit_amount) }}
    - (Date: {{ get_name($family_account->id, "family_account_id", "created_at", "family_account_deposits") != "N/A" ? streamline_date(get_name($family_account->id, "family_account_id", "deposit_date", "family_account_deposits")) : "N/A" }}) -
    - {{ is_numeric($family_account->current_balance) ? ugandan_shillings($family_account->current_balance) : "N/A" }} - - @php $current_balance_total += $family_account->current_balance; @endphp - - {{ is_numeric($family_account->opening_amount) ? ugandan_shillings($family_account->opening_amount) : "" }} - - {{ is_numeric($family_account->credit_limit) ? ugandan_shillings($family_account->credit_limit) : "" }} - - {{ __('family_accounts.edit') }} - - {{ Form::open(['url' => 'family_accounts/add_deposit']) }} - {{ Form::hidden('family_account_id', $family_account->id) }} - {{ Form::submit('Add deposit', ['class' => 'btn btn-success btn-sm']) }} - {{ Form::close() }} - - Statement - - {{ Form::model($family_account->id, ['method' => 'DELETE', 'route' => ['family_accounts.destroy', $family_account->id], 'id' => 'delete_form_'.$family_account->id]) }} - - {{ Form::close() }} -
    {{ __('family_accounts.total') }}{{ ugandan_shillings($current_balance_total) }}
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush - - - - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/menu.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/menu.blade.php deleted file mode 100755 index bd8b5417..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/menu.blade.php +++ /dev/null @@ -1,10 +0,0 @@ -
    - -
    \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/print_family_account_receipt_pdf_details.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/print_family_account_receipt_pdf_details.blade.php deleted file mode 100755 index 2c2ec590..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/print_family_account_receipt_pdf_details.blade.php +++ /dev/null @@ -1,95 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Patient Receipt - Stre@mline') }} - - - - - - - - - -
    - @include('layouts.header_pdf_print') - - - - - - - - - - -
    {{ __('patient_finance.date') }}{{ streamline_date_time_short($receipt_date) }}{{ __('patient_finance.receipt_number') }}{{ $receipt_number }}{{ __('family_accounts.deposit_date') }}{{ $new_family_deposit->deposit_date }}
    - - - - - - - - - - - - - @if(count($return_payment_methods) > 0) - - @foreach($return_payment_methods as $key => $value) - - - - - @endforeach - @endif - -
    {{ __('family_accounts.family_members') }}{{ __('family_accounts.amount_deposited') }}
    -
      - @for($i = 0; $i < count($family_members_array); $i++) -
    1. - {{ get_full_name($family_members_array[$i], "id", "first_name", "last_name", "patients") }}({{ get_name($family_members_array[$i], "id", "number","patients") }}) -
    2. - @endfor -
    -
    {{ ugandan_shillings($new_family_deposit->deposit_amount) }}
    Patient Paid With {{ ($key == 0) ? 'Cash' : get_name($key, 'id', 'name', 'patient_payment_methods') }}{{ ugandan_shillings($value) }}
    - -
    -
    - © {{ date('Y') }} Stre@mline -
    -
    - Printed On {{ date(" d M Y h:ia") }} By {{ auth()->user()->first_name }} {{ auth()->user()->last_name }} -
    -
    - -
    - - - \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/print_family_account_refund_receipt_pdf_details.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/print_family_account_refund_receipt_pdf_details.blade.php deleted file mode 100755 index c8d4fef5..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/print_family_account_refund_receipt_pdf_details.blade.php +++ /dev/null @@ -1,83 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Patient Receipt - Stre@mline') }} - - - - - - - - - -
    - @include('layouts.header_pdf_print') - - - - - - - - -
    {{ __('patient_finance.receipt_number') }}{{ $receipt_number }}Refund Date{{ $refund_date }}
    - - - - - - - - - - - - -
    {{ __('family_accounts.family_members') }}Amount Refunded
    -
      - @for($i = 0; $i < count($family_members_array); $i++) -
    1. - {{ get_full_name($family_members_array[$i], "id", "first_name", "last_name", "patients") }}({{ get_name($family_members_array[$i], "id", "number","patients") }}) -
    2. - @endfor -
    -
    {{ ugandan_shillings($refund_amount) }}
    - -
    -
    - © {{ date('Y') }} Stre@mline -
    -
    - Printed On {{ date(" d M Y h:ia") }} By {{ auth()->user()->first_name }} {{ auth()->user()->last_name }} -
    -
    - -
    - - - \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/refund.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/refund.blade.php deleted file mode 100755 index 50db4d80..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/refund.blade.php +++ /dev/null @@ -1,169 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    Refund Family Accounts

    -
    - -
    - -
    -
    - @include('patient_discounts::family_accounts.menu') -
    -
    - -
    -
    -
    - @include('flash::message') -
    -
    - {{ Form::open(['method'=>'post','route'=>'family_accounts.store_family_refund']) }} - -
    - {{ Form::label('family_head',__('family_accounts.family_head')) }} - {{ Form::text('family_head', get_full_name($family_account_details->family_head_id, "id", "first_name", "last_name", "patients"), ['class' => 'form-control col-sm-12 compulsory', 'readonly' => 'true']) }} -
    - - {{ Form::hidden('family_account_id', $family_account_details->id) }} - -
    - {{ Form::label('current_balance', 'Current Balance') }} - {{ Form::number('current_balance', $family_account_details->current_balance,['class' => 'form-control compulsory', 'id' => 'current_balance', 'readonly']) }} -
    -
    - -
    - {{ Form::label('refund_amount', 'Amount to refund') }} - {{ Form::number('refund_amount', '',['class' => 'form-control compulsory', 'id' => 'refund_amount', 'required']) }} -
    -
    - -
    - {{ Form::label('account_id','Account To Pay From') }} - {{ Form::select('account_id', $banks, '', ['class' => 'form-control compulsory','required', 'id' => 'account_id', 'onchange' => 'get_bank_balance()']) }} -
    - -
    - {{ Form::label('account_balance','Account Balance') }} - {{ Form::text('account_balance', 0, ['class'=>'form-control compulsory', 'id'=>'account_balance', 'readonly']) }} -
    - -
    - {{ Form::label('refund_date', 'Refund Date') }} -
    - {{ Form::text('refund_date', date('d-m-Y'), ['class'=>'form-control compulsory', 'required' , 'readonly', 'id'=>'refund_date']) }} - -
    -
    - -
    - {{ Form::label('refunded_to', 'Refunded To') }} - {{ Form::text('refunded_to', '', ['class'=>'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::submit(__('family_accounts.save'),['class'=>'btn btn-success submit_btn'])}} - {{ Form::reset(__('family_accounts.cancel'),['type'=>'reset','class'=>'btn btn-default'])}} -
    - - {{ Form::close() }} -
    -
    -

    {{ __('family_accounts.family_members') }}

    - @php - $family_members_array = explode(",", $family_account_details->family_members_ids); - @endphp -
      - @for($i = 0; $i < count($family_members_array); $i++) -
    1. - {{ get_full_name($family_members_array[$i], "id", "first_name", "last_name", "patients") }} -
      - {{ __('family_accounts.number') }} {{ get_name($family_members_array[$i], "id", "number","patients") }} -
      - {{ __('family_accounts.contact') }}{{ get_name($family_members_array[$i], "id", "phone","patients") }}
      - {{ __('family_accounts.residence') }}{{ patient_residence($family_members_array[$i]) }} -
    2. - @endfor -
    -
    -
    -
    -
    -
    -@endsection -@push('scripts') - - - -@endpush - - - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/refund_receipt.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/refund_receipt.blade.php deleted file mode 100755 index 647cf492..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/refund_receipt.blade.php +++ /dev/null @@ -1,127 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('family_accounts.family_account_deposit_receipt') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patient_discounts::family_accounts.menu') -
    -
    - -
    -
    -
    -
    -
    -
    -
    -

    - @php - $hospital_information = \Streamline\Models\HospitalInformation::first(); - @endphp - {{ $hospital_information->name }} - {{ $hospital_information->address }} - {{ __('family_accounts.tel') }} {{ $hospital_information->phone_number }}
    - {{ __('family_accounts.email') }} {{ $hospital_information->email }}
    - {{ __('family_accounts.cashier') }} {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - {{ __('family_accounts.date') }} {{ streamline_date(date('Y-m-d')) }}
    - {{ __('family_accounts.receipt_number') }} {{ $receipt_number }}
    - Refund Date {{ streamline_date($refund_date) }}
    -

    - -
    - - - - - - - - - - - -
    {{ __('family_accounts.family_members') }}Amount Refunded
      - @for($i = 0; $i < count($family_members_array); $i++) -
    1. - {{ get_full_name($family_members_array[$i], "id", "first_name", "last_name", "patients") }}({{ get_name($family_members_array[$i], "id", "number","patients") }}) -
    2. - @endfor -
    {{ ugandan_shillings($refund_amount) }}
    -
    -
    -
    -
    - {{ __('family_accounts.streamline') }} -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/statements.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/statements.blade.php deleted file mode 100755 index 6176ae6e..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/statements.blade.php +++ /dev/null @@ -1,507 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - @if(session()->get("print_family_account_receipt_pdf") == 1) - {{ Form::hidden('print_family_account_receipt_pdf', 1, ['id' => 'print_family_account_receipt_pdf']) }} - @endif - - @if(session()->get("print_family_account_refund_receipt_pdf") == 1) - {{ Form::hidden('print_family_account_refund_receipt_pdf', 1, ['id' => 'print_family_account_refund_receipt_pdf']) }} - @endif - -
    -
    -

    Family Account Statement {{ get_full_name($family_account_details->family_head_id, "id", "first_name", "last_name", "patients") }} ({{ get_name($family_account_details->family_head_id, "id", "number","patients") }})

    -
    - -
    - -
    -
    - @include('patient_discounts::family_accounts.menu') -
    -
    - -
    - @include('flash::message') - - @php $family_head_id = get_name($family_account_id, "id", "family_head_id", "family_accounts") @endphp - - {{ Form::open(['url' => 'family_accounts/' . $family_account_id . '/statement/', 'method' => 'ANY']) }} -
    -
    - {{ Form::hidden('family_account_id', $family_account_id) }} -
    - -
    -
    - {{ Form::label('search_by', __('family_accounts.date')) }} - {{ Form::select('search_by', ['0'=>'Last 24 hours','1'=>'Custom Date','2'=>'Custom Range'], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - - -
    -

    - {{ Form::button(__('family_accounts.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    - {{ Form::close() }} - -
    -
    - {{ Form::open(['url' => 'family_statement_print'])}} - {{ Form::hidden('family_account_id', $family_account_id) }} - {{ Form::hidden('reg_date', $reg_date) }} - {{ Form::hidden('start_date', $start_date) }} - {{ Form::hidden('end_date', $end_date) }} - - {{ Form::close() }} -
    -
    -
    -
    - - @if(!is_null($reg_date)) -

    Family Statement as at {{ streamline_date($reg_date) }}

    - @elseif(!is_null($start_date) && !is_null($end_date)) -

    Family statement as at {{ streamline_date($start_date) }} {{ __('family_accounts.to') }} {{ streamline_date($end_date) }}

    - @endif - -

    Family Deposits

    - -
    - - - - - - - - - - - - - @php $counter = 1; $total_family_deposits = 0; $current_balance_total = 0; @endphp - @if(count($family_deposits) > 0) - @foreach($family_deposits as $deposit) - - - - - @php $family_head_id = get_name($deposit->family_account_id, "id", "family_head_id", "family_accounts") @endphp - - @php - $family_members_array = []; - $family_account_details = \Streamline\Models\FamilyAccount::withTrashed()->find($deposit->family_account_id); - $family_members_array = explode(",", $family_account_details->family_members_ids); - @endphp - {{----}} - - - - @php $counter++; @endphp - @endforeach - @else - - - - @endif - - - - - - - - - - - -
    #{{ __('family_accounts.deposited_on') }}Received By{{ __('family_accounts.family_head') }}{{ __('family_accounts.deposited_by') }}{{ __('family_accounts.amount_deposited') }}
    {{ $counter }}{{ streamline_date($deposit->deposit_date) }}{{ get_full_name($deposit->created_by, "id", "first_name", "last_name", "users") }} - {{ get_full_name($family_head_id, "id", "first_name", "last_name", "patients") }} - ({{ get_name($family_head_id, "id", "number","patients") }}) - - @for($i = 0; $i < count($family_members_array); $i++) -
  • - {{ get_full_name($family_members_array[$i], "id", "first_name", "last_name", "patients") }} ({{ get_name($family_members_array[$i], "id", "number","patients") }}) -
  • - @endfor -
    - {{ $deposit->deposited_by }} - - @php $total_family_deposits += $deposit->deposit_amount; @endphp - - {{ ugandan_shillings($deposit->deposit_amount) }} -
    No family deposits have been made
    {{ __('family_accounts.total') }}{{ ugandan_shillings($total_family_deposits) }}
    -
    - -

    Family consumption

    - -
    - - - - - - - - - - - - @php $counter = 1; $total_consumptions = 0; @endphp - @if(count($family_consumptions) > 0) - @foreach($family_consumptions as $member_consumption) - - @php - $expenditure_type = $member_consumption->expenditure_tag; - $items_received_array = []; - - if($expenditure_type == "Services"){ - - $service_deposit_record = \Streamline\Models\ServiceDeposit::where(['patient_id' => $member_consumption->patient_id, 'episode_id' => $member_consumption->episode_id])->first(); - - if ($service_deposit_record){ - $items_received = explode(",", $service_deposit_record->items_ids); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "services"); - } - } - } elseif($expenditure_type == "Treatment"){ - - $treatment_deposit_record = \Streamline\Models\TreatmentDeposits::where(['patient_id' => $member_consumption->patient_id, 'episode_id' => $member_consumption->episode_id])->first(); - - if ($treatment_deposit_record){ - $items_received = explode(",", $treatment_deposit_record->treatment_items); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "drugs"); - } - } - } elseif($expenditure_type == "Sundries"){ - - $sundries_deposit_record = \Streamline\Models\SundryDeposit::where(['patient_id' => $member_consumption->patient_id, 'episode_id' => $member_consumption->episode_id])->first(); - - if ($sundries_deposit_record){ - $items_received = explode(",", $sundries_deposit_record->sundry_items); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "sundries"); - } - } - } elseif($expenditure_type == "Investigations"){ - - $investigation_deposit_record = \Streamline\Models\InvestigationDeposit::where(['patient_id' => $member_consumption->patient_id, 'episode_id' => $member_consumption->episode_id])->first(); - - if ($investigation_deposit_record){ - $items_received = explode(",", $investigation_deposit_record->investigation_items); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "investigations"); - } - } - } elseif($expenditure_type == "Procedures"){ - - $procedure_deposit_record = \Streamline\Models\ProcedureDeposit::where(['patient_id' => $member_consumption->patient_id, 'episode_id' => $member_consumption->episode_id])->first(); - - if ($procedure_deposit_record){ - $items_received = explode(",", $procedure_deposit_record->procedure_items); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "procedures"); - } - } - } - @endphp - - - @php $family_head_id = get_name($member_consumption->family_account_id, "id", "family_head_id", "family_accounts") @endphp - - - - - - @php $counter++; @endphp - @endforeach - @else - - - - @endif - - - - - - - - - - -
    #{{ __('family_accounts.date') }}Member{{ __('family_accounts.reason') }}{{ __('family_accounts.amount_consumed') }}
    {{ $counter }} - {{ streamline_date($member_consumption->created_at) }} - - {{ get_full_name($member_consumption->patient_id, "id", "first_name", "last_name", "patients") }} - - {{ $member_consumption->expenditure_tag == "Services" ? "Consultation / Services" : $member_consumption->expenditure_tag }} -
      - @for($j = 0; $j < count($items_received_array); $j++) -
    1. {{ $items_received_array[$j] }}
    2. - @endfor -
    -
    - {{ ugandan_shillings($member_consumption->amount_consumed) }} - @php - $total_consumptions += $member_consumption->amount_consumed; - @endphp -
    No family consumption has been recorded
    {{ __('family_accounts.total') }}{{ ugandan_shillings($total_consumptions) }}
    -
    - -

    Family Refunds

    - -
    - - - - - - - - - - - - - @php $counter = 1; $total_family_refunds = 0; @endphp - @if(count($family_refunds) > 0) - @foreach($family_refunds as $refund) - - - - - @php $family_head_id = get_name($refund->family_account_id, "id", "family_head_id", "family_accounts") @endphp - - - - - @php $counter++; @endphp - @endforeach - @else - - - - @endif - - - - - - - - - - - -
    #Refunded OnCashier{{ __('family_accounts.family_head') }}Refunded ToAmount Refunded
    {{ $counter }}{{ streamline_date($refund->created_at) }}{{ get_full_name($refund->created_by, "id", "first_name", "last_name", "users") }} - {{ get_full_name($family_head_id, "id", "first_name", "last_name", "patients") }} - ({{ get_name($family_head_id, "id", "number","patients") }}) - - {{ $refund->refund_to }} - - @php $total_family_refunds += $refund->refund_amount; @endphp - - {{ ugandan_shillings($refund->refund_amount) }} -
    No family refunds have been made
    {{ __('family_accounts.total') }}{{ ugandan_shillings($total_family_refunds) }}
    -
    - -
    -

    - Current Balance: {{ is_numeric($family_account_details->current_balance) ? ugandan_shillings($family_account_details->current_balance) : "N/A" }} -
    -
    - -

    - -
    -
    - -
    - {{ Form::open(['url' => 'family_accounts/add_deposit']) }} - {{ Form::hidden('family_account_id', $family_account_details->id) }} - {{ Form::submit('Add deposit', ['class' => 'btn btn-success btn-block']) }} - {{ Form::close() }} -
    - -
    - {{ Form::model($family_account_details->id ,['method' => 'DELETE', 'route' => ['family_accounts.destroy', $family_account_details->id]]) }} - - {{ Form::close() }} -
    - -
    -
    - -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush - - - - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/statements_print.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/statements_print.blade.php deleted file mode 100755 index 1571031f..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/family_accounts/statements_print.blade.php +++ /dev/null @@ -1,298 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Inpatient Bill - Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') -
    Family Account Statement for {{ get_full_name($family_account_details->family_head_id, "id", "first_name", "last_name", "patients")}} ({{ get_name($family_account_details->family_head_id, "id", "number", "patients")}})
    - -

    - -
    Family Account Deposits
    -
    -
    - - - - - - - - - - - - - @php $counter = 1; $total_family_deposits = 0; $current_balance_total = 0; @endphp - @if(count($family_deposits) > 0) - @foreach($family_deposits as $deposit) - - - - - - @php $family_head_id = get_name($deposit->family_account_id, "id", "family_head_id", "family_accounts") @endphp - - @php - $family_members_array = []; - $family_account_details = \Streamline\Models\FamilyAccount::withTrashed()->find($deposit->family_account_id); - $family_members_array = explode(",", $family_account_details->family_members_ids); - @endphp - {{----}} - - - - @php $counter++; @endphp - @endforeach - @endif - - - - - - - - - - - -
    #{{ __('family_accounts.deposited_on') }}{{ __('family_accounts.received_by') }}{{ __('family_accounts.family_head') }}{{ __('family_accounts.deposited_by') }}{{ __('family_accounts.amount_deposited') }}
    {{ $counter }}{{ streamline_date($deposit->deposit_date) }}{{ get_full_name($deposit->created_by, "id", "first_name", "last_name", "users") }} - {{ get_full_name($family_head_id, "id", "first_name", "last_name", "patients") }} - ({{ get_name($family_head_id, "id", "number","patients") }}) - - @for($i = 0; $i < count($family_members_array); $i++) -
  • - {{ get_full_name($family_members_array[$i], "id", "first_name", "last_name", "patients") }} ({{ get_name($family_members_array[$i], "id", "number","patients") }}) -
  • - @endfor -
    - {{ $deposit->deposited_by }} - - @php $total_family_deposits += $deposit->deposit_amount; @endphp - - {{ ugandan_shillings($deposit->deposit_amount) }} -
    {{ __('family_accounts.total') }}{{ ugandan_shillings($total_family_deposits) }}
    -
    -
    - -

    - -
    Family Account Consumptions
    -
    - - - - - - - - - - - - @php $counter = 1; $total_consumptions = 0; @endphp - @if(count($family_consumptions) > 0) - @foreach($family_consumptions as $member_consumption) - - @php - $expenditure_type = $member_consumption->expenditure_tag; - $items_received_array = []; - - if($expenditure_type == "Services"){ - - $service_deposit_record = \Streamline\Models\ServiceDeposit::where(['patient_id' => $member_consumption->patient_id, 'episode_id' => $member_consumption->episode_id])->first(); - - if ($service_deposit_record){ - $items_received = explode(",", $service_deposit_record->items_ids); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "services"); - } - } - } elseif($expenditure_type == "Treatment"){ - - $treatment_deposit_record = \Streamline\Models\TreatmentDeposits::where(['patient_id' => $member_consumption->patient_id, 'episode_id' => $member_consumption->episode_id])->first(); - - if ($treatment_deposit_record){ - $items_received = explode(",", $treatment_deposit_record->treatment_items); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "drugs"); - } - } - } elseif($expenditure_type == "Sundries"){ - - $sundries_deposit_record = \Streamline\Models\SundryDeposit::where(['patient_id' => $member_consumption->patient_id, 'episode_id' => $member_consumption->episode_id])->first(); - - if ($sundries_deposit_record){ - $items_received = explode(",", $sundries_deposit_record->sundry_items); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "sundries"); - } - } - } elseif($expenditure_type == "Investigations"){ - - $investigation_deposit_record = \Streamline\Models\InvestigationDeposit::where(['patient_id' => $member_consumption->patient_id, 'episode_id' => $member_consumption->episode_id])->first(); - - if ($investigation_deposit_record){ - $items_received = explode(",", $investigation_deposit_record->investigation_items); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "investigations"); - } - } - } elseif($expenditure_type == "Procedures"){ - - $procedure_deposit_record = \Streamline\Models\ProcedureDeposit::where(['patient_id' => $member_consumption->patient_id, 'episode_id' => $member_consumption->episode_id])->first(); - - if ($procedure_deposit_record){ - $items_received = explode(",", $procedure_deposit_record->procedure_items); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "procedures"); - } - } - } - @endphp - - - - @php $family_head_id = get_name($member_consumption->family_account_id, "id", "family_head_id", "family_accounts") @endphp - - - - - @php $counter++; @endphp - @endforeach - @endif - - - - - - - - - - -
    #{{ __('family_accounts.date') }}{{ __('family_accounts.family_member') }}{{ __('family_accounts.reason') }}{{ __('family_accounts.amount_consumed') }}
    {{ $counter }} - {{ streamline_date($member_consumption->created_at) }} - - {{ get_full_name($member_consumption->patient_id, "id", "first_name", "last_name", "patients") }} - - {{ $member_consumption->expenditure_tag == "Services" ? "Consultation / Services" : $member_consumption->expenditure_tag }} -
      - @for($j = 0; $j < count($items_received_array); $j++) -
    1. {{ $items_received_array[$j] }}
    2. - @endfor -
    -
    - {{ ugandan_shillings($member_consumption->amount_consumed) }} - @php - $total_consumptions += $member_consumption->amount_consumed; - @endphp -
    {{ __('family_accounts.total') }}{{ ugandan_shillings($total_consumptions) }}
    -
    - -

    -
    Family Refunds
    - -
    - - - - - - - - - - - - - @php $counter = 1; $total_family_refunds = 0; @endphp - @if(count($family_refunds) > 0) - @foreach($family_refunds as $refund) - - - - - @php $family_head_id = get_name($refund->family_account_id, "id", "family_head_id", "family_accounts") @endphp - - - - - @php $counter++; @endphp - @endforeach - @else - - - - @endif - - - - - - - - - - - -
    #Refunded OnCashier{{ __('family_accounts.family_head') }}Refunded ToAmount Refunded
    {{ $counter }}{{ streamline_date($refund->created_at) }}{{ get_full_name($refund->created_by, "id", "first_name", "last_name", "users") }} - {{ get_full_name($family_head_id, "id", "first_name", "last_name", "patients") }} - ({{ get_name($family_head_id, "id", "number","patients") }}) - - {{ $refund->refund_to }} - - @php $total_family_refunds += $refund->refund_amount; @endphp - - {{ ugandan_shillings($refund->refund_amount) }} -
    No family refunds have been made
    {{ __('family_accounts.total') }}{{ ugandan_shillings($total_family_refunds) }}
    -
    - -

    - -
    - Current Balance: {{ is_numeric($family_account_details->current_balance) ? ugandan_shillings($family_account_details->current_balance) : "N/A" }} -
    -
    - -

    .

    -
    - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/consumptions_report.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/consumptions_report.blade.php deleted file mode 100755 index 19ec2238..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/consumptions_report.blade.php +++ /dev/null @@ -1,331 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    Patient Accounts Consumptions{{ __('patient_accounts.') }}

    -
    - -
    - - @include('patient_discounts::patient_accounts.menu') - -
    -
    -
    - @include('flash::message') - - {{ Form::open(['url' => 'patient_accounts/consumptions_report', 'method' => 'ANY']) }} -
    -
    -
    - {{ Form::label('patient_number',__('investigations.patient_number')) }} - {{ Form::text('patient_number', '', ['class' => 'form-control typeahead', 'placeholder' => 'Patient number', 'autocomplete' => 'off', 'spellcheck' => false]) }} -
    -
    - -
    -
    - {{ Form::label('search_by', __('family_accounts.date')) }} - {{ Form::select('search_by', ['0'=>'Last 24 hours','1'=>'Custom Date','2'=>'Custom Range'], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - - -
    -

    - {{ Form::button(__('family_accounts.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    -
    - {{ Form::close() }} - - @if(!is_null($reg_date)) -

    Showing consumption of {{ streamline_date($reg_date) }}

    - @elseif(!is_null($start_date) && !is_null($end_date)) -

    Showing consumption from{{ streamline_date($start_date) }} to {{ streamline_date($end_date) }}

    - @endif - -
    - - - - - - - - - - - - - - @php $counter = 1; $total_consumption = 0; @endphp - @foreach($patient_consumptions as $record) - - - - - - - @php - $tag_id = $record->tag_id; - $items_received_array = []; - - if($tag_id == 6 || $tag_id == 8){ - - $service_deposit_record = \Streamline\Models\ServiceDeposit::where('receipt_number', $record->receipt_number)->first(); - - if ($service_deposit_record){ - $items_received = explode(",", $service_deposit_record->items_ids); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "services"); - } - } - } elseif($tag_id == 3){ - - $treatment_deposit_record = \Streamline\Models\TreatmentDeposits::where('receipt_number', $record->receipt_number)->first(); - - if ($treatment_deposit_record){ - $items_received = explode(",", $treatment_deposit_record->treatment_items); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "drugs"); - } - } - } elseif($tag_id == 5){ - - $sundries_deposit_record = \Streamline\Models\SundryDeposit::where('receipt_number', $record->receipt_number)->first(); - - if ($sundries_deposit_record){ - $items_received = explode(",", $sundries_deposit_record->sundry_items); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "sundries"); - } - } - } elseif($tag_id == 2){ - $investigation_deposit_record = \Streamline\Models\InvestigationDeposit::where('receipt_number', $record->receipt_number)->first(); - - if ($investigation_deposit_record){ - $items_received = explode(",", $investigation_deposit_record->investigation_items); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "investigations"); - } - } - } elseif($tag_id == 4){ - - $procedure_deposit_record = \Streamline\Models\ProcedureDeposit::where('receipt_number', $record->receipt_number)->first(); - - if ($procedure_deposit_record){ - $items_received = explode(",", $procedure_deposit_record->procedure_items); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "procedures"); - } - } - } - @endphp - - - - @php $counter++; @endphp - @endforeach - - - - - - - - - - - - -
    #Patient NamesAmount ConsumedDate ConsumedStaffReason{{ __('family_accounts.action') }}
    {{ $counter }}{{ get_full_name($record->patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($record->patient_id, 'id', 'number', 'patients') }}) - {{ ugandan_shillings($record->amount_consumed) }} - @php $total_consumption += $record->amount_consumed; @endphp - {{ streamline_date_time($record->created_at) }}{{ get_full_name($record->created_by, 'id', 'first_name', 'last_name', 'users') }} - {{ get_name($record->tag_id, 'id', 'name', 'finance_point_tags') }} -
      - @for($j = 0; $j < count($items_received_array); $j++) -
    1. {{ $items_received_array[$j] }}
    2. - @endfor -
    -
    - Statement -
    {{ __('family_accounts.total') }}{{ ugandan_shillings($total_consumption) }}
    -
    - -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush - - - - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/deposit_receipt.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/deposit_receipt.blade.php deleted file mode 100755 index 8b1565c7..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/deposit_receipt.blade.php +++ /dev/null @@ -1,127 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    Patient Account Deposits{{ __('patient_accounts.') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -

    - @php - $hospital_information = \Streamline\Models\HospitalInformation::first(); - @endphp - {{ $hospital_information->name }} - {{ $hospital_information->address }} - {{ __('family_accounts.tel') }} {{ $hospital_information->phone_number }}
    - {{ __('family_accounts.email') }} {{ $hospital_information->email }}
    - {{ __('family_accounts.cashier') }} {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - {{ __('family_accounts.date') }} {{ streamline_date_time_short($receipt_date) }}
    - {{ __('family_accounts.receipt_number') }} {{ $receipt_number }}
    - Transaction Date{{ __('patient_accounts.') }} {{ streamline_date($deposit_date) }}
    - {{ __('patient_finance.patient_names') }} : {{ $patient->first_name }} {{ $patient->last_name }}
    - {{ __('patient_finance.patient_number') }} : {{ $patient->number }}
    - {{ __('patient_finance.patient_category') }} : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - - - - - - @if(count($return_payment_methods) > 0) - - @foreach($return_payment_methods as $key => $value) - - - - - @endforeach - @endif - -
    {{ __('patient_finance.description') }}Amounts{{ __('patient_accounts.') }}
    {{ $description }}{{ ugandan_shillings($deposit_amount) }}
    Patient Paid With{{ __('patient_accounts.') }} {{ ($key == 0) ? 'Cash' : get_name($key, 'id', 'name', 'patient_payment_methods') }}{{ ugandan_shillings($value) }}
    -
    -
    -
    -
    - {{ __('family_accounts.streamline') }} -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/deposits_report.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/deposits_report.blade.php deleted file mode 100755 index 22de6dd9..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/deposits_report.blade.php +++ /dev/null @@ -1,268 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('patient_accounts.patient_accounts_deposits') }}

    -
    -
    - -
    -
    - - @include('patient_discounts::patient_accounts.menu') - -
    -
    -
    - @include('flash::message') - - {{ Form::open(['url' => 'patient_accounts/deposits_report', 'method' => 'ANY']) }} -
    -
    -
    - {{ Form::label('patient_number',__('investigations.patient_number')) }} - {{ Form::text('patient_number', '', ['class' => 'form-control typeahead', 'placeholder' => 'Patient number', 'autocomplete' => 'off', 'spellcheck' => false]) }} -
    -
    - -
    -
    - {{ Form::label('search_by', __('family_accounts.date')) }} - {{ Form::select('search_by', ['0'=>'Last 24 hours','1'=>'Custom Date','2'=>'Custom Range'], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - - -
    -

    - {{ Form::button(__('family_accounts.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    -
    - {{ Form::close() }} - - @if(!is_null($reg_date)) -

    {{ __('family_accounts.showing_deposit_of') }} {{ streamline_date($reg_date) }}

    - @elseif(!is_null($start_date) && !is_null($end_date)) -

    {{ __('family_accounts.showing_deposit_from') }}{{ streamline_date($start_date) }} {{ __('patient_accounts.to') }} {{ streamline_date($end_date) }}

    - @endif - -
    - - - - - - - - - - - - - @php $counter = 1; $total_deposits = 0; @endphp - @if(count($patient_deposits) > 0) - @foreach($patient_deposits as $deposit) - - - - - - - - - - @php $counter++; @endphp - @endforeach - @endif - - - - - - - - - - - -
    #{{ __('patient_accounts.patient_names') }}{{ __('patient_accounts.deposit_amount') }}{{ __('patient_accounts.deposit_date') }}{{ __('patient_accounts.received_by') }}{{ __('family_accounts.action') }}
    {{ $counter }}{{ get_full_name($deposit->patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($deposit->patient_id, 'id', 'number', 'patients') }}) - {{ ugandan_shillings($deposit->deposit_amount) }} - @php $total_deposits += $deposit->deposit_amount; @endphp - {{ streamline_date($deposit->deposit_date) }}{{ get_full_name($deposit->created_by, 'id', 'first_name', 'last_name', 'users') }} - {{ __('patient_accounts.statement') }} -

    - @if(Auth::user()->can('cancel-patient-accounts-deposits') && is_null($deposit->received)) - {{ __('patient_accounts.cancel_deposit') }} - @endif -
    {{ __('family_accounts.total') }}{{ ugandan_shillings($total_deposits) }}
    -
    - -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush - - - - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/make_deposit.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/make_deposit.blade.php deleted file mode 100755 index 9e2ffbd0..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/make_deposit.blade.php +++ /dev/null @@ -1,147 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('family_accounts.add_family_deposit') }}

    -
    -
    - -
    -
    - - @include('patient_discounts::patient_accounts.menu') - -
    - @include('patient_discounts::patient_accounts.patient_details') - - @include('flash::message') - {{ Form::open(['method'=>'post','route'=>'patient_accounts.store_deposit']) }} - -
    -
    - -
    - {{ Form::label('deposit_amount',__('family_accounts.amount_deposited')) }} - {{ Form::number('deposit_amount', '',['class' => 'form-control compulsory', 'id' => 'deposit_amount', 'required']) }} -
    - -
    -
    - -
    -
    -
    -

    - - - -
    - {{ Form::submit(__('family_accounts.save'),['class'=>'btn btn-success'])}} - {{ Form::reset(__('family_accounts.cancel'),['type'=>'reset','class'=>'btn btn-default'])}} -
    -
    - -
    -
    - {{ Form::label('deposit_date', __('family_accounts.deposited_on')) }} -
    - {{ Form::text('deposit_date', date('d-m-Y'), ['class'=>'form-control compulsory', 'required' , 'readonly', 'id'=>'deposit_date']) }} - -
    -
    -
    -
    - - {{ Form::close() }} -
    -@endsection -@push('scripts') - - - -@endpush - - - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/menu.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/menu.blade.php deleted file mode 100755 index ec7bd926..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/menu.blade.php +++ /dev/null @@ -1,15 +0,0 @@ -
    -
    - @if(Auth::user()->can('view-patient-accounts-deposits')) - {{ __('patient_accounts.patient_accounts_deposits_reports') }} - @endif - - @if(Auth::user()->can('view-patient-accounts-refunds')) - {{ __('patient_accounts.patient_accounts_refunds_reports') }} - @endif - - @if(Auth::user()->can('view-patient-accounts-consumptions')) - {{ __('patient_accounts.patient_accounts_consumption_reports') }} - @endif -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/patient_details.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/patient_details.blade.php deleted file mode 100755 index d20d6dbd..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/patient_details.blade.php +++ /dev/null @@ -1,29 +0,0 @@ -
    - - - - - - - - - - - - - - @php $dob = new Carbon\Carbon($patient->date_of_birth) @endphp - - - - - - - - - - -
    {{ __('layout.patient_number') }}{{ __('layout.patient_names') }}{{ __('layout.gender') }}{{ __('layout.age') }}{{ __('patient_accounts.phone_number') }}{{ __('patient_accounts.email') }}{{ __('layout.patient_category') }}
    {{ $patient->number }}{!! insurance_flag($patient->id) !!}{{ $patient->gender == 1 ? __('layout.male') : __('layout.female') }}{{ $dob->diffInYears(Carbon\Carbon::now()) }} ({{ __('patient_accounts.years') }}){{ $patient->phone }}{{ $patient->email }}{{ get_name($patient->category_id, 'id', 'name', 'patient_categories') }}
    - -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/print_receipt_pdf_details.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/print_receipt_pdf_details.blade.php deleted file mode 100755 index 54659ae0..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/print_receipt_pdf_details.blade.php +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Patient Receipt - Stre@mline') }} - - - - - - - - - -
    - @include('layouts.header_pdf_print') - - - - - - - - - - - - -
    {{ __('patient_finance.patient_names') }}{{ get_full_name($patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($patient_id, 'id', 'number', 'patients') }}){{ __('patient_finance.date') }}{{ streamline_date_time_short($receipt_date) }}{{ __('patient_finance.receipt_number') }}{{ $receipt_number }}{{ __('patient_accounts.transaction_date') }}{{ $deposit_date }}
    - - - - - - - - - - - - - @if(count($return_payment_methods) > 0) - - @foreach($return_payment_methods as $key => $value) - - - - - @endforeach - @endif - -
    {{ __('patient_accounts.details') }}{{ __('patient_accounts.amounts') }}
    {{ $description }}{{ ugandan_shillings($deposit_amount) }}
    {{ __('patient_accounts.patient_paid_with') }} {{ ($key == 0) ? 'Cash' : get_name($key, 'id', 'name', 'patient_payment_methods') }}{{ ugandan_shillings($value) }}
    - -
    -
    - © {{ date('Y') }} Stre@mline -
    -
    - {{ __('patient_accounts.printed_on') }} {{ date(" d M Y h:ia") }} {{ __('patient_accounts.by') }} {{ auth()->user()->first_name }} {{ auth()->user()->last_name }} -
    -
    - -
    - - - \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/print_statement.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/print_statement.blade.php deleted file mode 100755 index 6bcecded..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/print_statement.blade.php +++ /dev/null @@ -1,234 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Inpatient Bill - Stre@mline') }} - - - - - -
    - @include('layouts.header_pdf_print') -
    {{ $search_info }}
    - -

    - - @if(count($patient_deposits) > 0) -

    {{ __('patient_accounts.deposits') }}

    - -
    - - - - - - - - - - - - @php $counter = 1; $total_deposits = 0; @endphp - @foreach($patient_deposits as $deposit) - - - - - - - - - @php $counter++; @endphp - @endforeach - - - - - - - - - - -
    #{{ __('patient_accounts.patient_names') }}{{ __('patient_accounts.deposit_amount') }}{{ __('patient_accounts.deposit_date') }}{{ __('patient_accounts.received_by') }}
    {{ $counter }}{{ get_full_name($deposit->patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($deposit->patient_id, 'id', 'number', 'patients') }}) - {{ ugandan_shillings($deposit->deposit_amount) }} - @php $total_deposits += $deposit->deposit_amount; @endphp - {{ streamline_date($deposit->deposit_date) }}{{ get_full_name($deposit->created_by, 'id', 'first_name', 'last_name', 'users') }}
    {{ __('family_accounts.total') }}{{ ugandan_shillings($total_deposits) }}
    -
    - -
    - @endif - - @if(count($patient_refunds) > 0) -

    {{ __('patient_accounts.refunds') }}

    - -
    - - - - - - - - - - - - @php $counter = 1; $total_refunds = 0; @endphp - @foreach($patient_refunds as $refund) - - - - - - - - @php $counter++; @endphp - @endforeach - - - - - - - - - - -
    #{{ __('patient_accounts.patient_names') }}{{ __('patient_accounts.refund_amount') }}{{ __('patient_accounts.refund_date') }}{{ __('patient_accounts.received_by') }}
    {{ $counter }}{{ get_full_name($refund->patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($refund->patient_id, 'id', 'number', 'patients') }}) - {{ ugandan_shillings($refund->refund_amount) }} - @php $total_refunds += $refund->refund_amount; @endphp - {{ streamline_date($refund->refund_date) }}{{ get_full_name($refund->created_by, 'id', 'first_name', 'last_name', 'users') }}
    {{ __('family_accounts.total') }}{{ ugandan_shillings($total_refunds) }}
    -
    - -
    - @endif - - @if(count($patient_consumptions) > 0) -

    {{ __('patient_accounts.consumption') }}

    - -
    - - - - - - - - - - - - @php $counter = 1; $total_consumption = 0; @endphp - @foreach($patient_consumptions as $record) - - - - - - @php - $tag_id = $record->tag_id; - $items_received_array = []; - - if($tag_id == 6 || $tag_id == 8){ - - $service_deposit_record = \Streamline\Models\ServiceDeposit::where('receipt_number', $record->receipt_number)->first(); - - if ($service_deposit_record){ - $items_received = explode(",", $service_deposit_record->items_ids); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "services"); - } - } - } elseif($tag_id == 3){ - - $treatment_deposit_record = \Streamline\Models\TreatmentDeposits::where('receipt_number', $record->receipt_number)->first(); - - if ($treatment_deposit_record){ - $items_received = explode(",", $treatment_deposit_record->treatment_items); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "drugs"); - } - } - } elseif($tag_id == 5){ - - $sundries_deposit_record = \Streamline\Models\SundryDeposit::where('receipt_number', $record->receipt_number)->first(); - - if ($sundries_deposit_record){ - $items_received = explode(",", $sundries_deposit_record->sundry_items); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "sundries"); - } - } - } elseif($tag_id == 2){ - $investigation_deposit_record = \Streamline\Models\InvestigationDeposit::where('receipt_number', $record->receipt_number)->first(); - - if ($investigation_deposit_record){ - $items_received = explode(",", $investigation_deposit_record->investigation_items); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "investigations"); - } - } - } elseif($tag_id == 4){ - - $procedure_deposit_record = \Streamline\Models\ProcedureDeposit::where('receipt_number', $record->receipt_number)->first(); - - if ($procedure_deposit_record){ - $items_received = explode(",", $procedure_deposit_record->procedure_items); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "procedures"); - } - } - } - @endphp - - - @php $counter++; @endphp - @endforeach - - - - - - - - - - -
    #{{ __('patient_accounts.patient_names') }}{{ __('patient_accounts.amount_consumed') }}{{ __('patient_accounts.date_consumed') }}{{ __('patient_accounts.reason') }}
    {{ $counter }}{{ get_full_name($record->patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($record->patient_id, 'id', 'number', 'patients') }}) - {{ ugandan_shillings($record->amount_consumed) }} - @php $total_consumption += $record->amount_consumed; @endphp - {{ streamline_date_time($record->created_at) }} - {{ get_name($record->tag_id, 'id', 'name', 'finance_point_tags') }} -
      - @for($j = 0; $j < count($items_received_array); $j++) -
    1. {{ $items_received_array[$j] }}
    2. - @endfor -
    -
    {{ __('family_accounts.total') }}{{ ugandan_shillings($total_consumption) }}
    -
    - -
    - @endif - -
    -

    - {{ __('patient_accounts.current_balance') }}: {{ ugandan_shillings(get_name($patient_id, 'id', 'patient_account_balance', 'patients')) }} -
    -
    -
    - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/refund_deposit.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/refund_deposit.blade.php deleted file mode 100755 index d55c99eb..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/refund_deposit.blade.php +++ /dev/null @@ -1,136 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('patient_accounts.refund_patient_accounts') }}

    -
    -
    - -
    -
    - - @include('patient_discounts::patient_accounts.menu') - -
    - @include('patient_discounts::patient_accounts.patient_details') - - {{ Form::open(['method'=>'post','route'=>'patient_accounts.save_refund_deposit']) }} -
    -
    -
    - {{ Form::label('current_balance', __('patient_accounts.current_balance')) }} - {{ Form::number('current_balance', $current_balance,['class' => 'form-control compulsory', 'id' => 'current_balance', 'readonly']) }} -
    -
    - -
    - {{ Form::label('refund_amount', __('patient_accounts.refund_amount')) }} - {{ Form::number('refund_amount', '',['class' => 'form-control compulsory', 'id' => 'refund_amount', 'required']) }} -
    -
    -
    -
    -
    - {{ Form::label('refund_date', __('patient_accounts.refund_date')) }} -
    - {{ Form::text('refund_date', date('d-m-Y'), ['class'=>'form-control compulsory', 'required' , 'readonly', 'id'=>'refund_date']) }} - -
    -
    - -
    - {{ Form::label('account_id',__('patient_accounts.account_to_pay_from')) }} - {{ Form::select('account_id', $banks, '', ['class' => 'form-control compulsory','required', 'id' => 'account_id', 'onchange' => 'get_bank_balance()']) }} -
    - -
    - {{ Form::label('account_balance',__('patient_accounts.account_balance')) }} - {{ Form::text('account_balance', 0, ['class'=>'form-control compulsory', 'id'=>'account_balance', 'readonly']) }} -
    - -
    - {{ Form::label('refund_reason', __('patient_accounts.refunded_reason')) }} - {{ Form::textarea('refund_reason', '',['class' => 'form-control compulsory', 'required', 'rows' => '5']) }} -
    -
    -
    -
    - -
    - {{ Form::submit(__('family_accounts.save'),['class'=>'btn btn-success submit_btn'])}} - {{ Form::reset(__('family_accounts.cancel'),['type'=>'reset','class'=>'btn btn-default'])}} -
    - - {{ Form::close() }} -
    -@endsection -@push('scripts') - - - -@endpush - - - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/refunds_report.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/refunds_report.blade.php deleted file mode 100755 index d32d08f8..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/refunds_report.blade.php +++ /dev/null @@ -1,271 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('patient_accounts.patient_accounts_refunds') }}

    -
    -
    - -
    -
    - - @include('patient_discounts::patient_accounts.menu') - -
    -
    -
    - @include('flash::message') - - {{ Form::open(['url' => 'patient_accounts/refunds_report', 'method' => 'ANY']) }} -
    -
    -
    - {{ Form::label('patient_number',__('investigations.patient_number')) }} - {{ Form::text('patient_number', '', ['class' => 'form-control typeahead', 'placeholder' => 'Patient number', 'autocomplete' => 'off', 'spellcheck' => false]) }} -
    -
    - -
    -
    - {{ Form::label('search_by', __('family_accounts.date')) }} - {{ Form::select('search_by', ['0'=>'Last 24 hours','1'=>'Custom Date','2'=>'Custom Range'], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - - -
    -

    - {{ Form::button(__('family_accounts.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    -
    - {{ Form::close() }} - - @if(!is_null($reg_date)) -

    {{ __('family_accounts.showing_deposit_of') }} {{ streamline_date($reg_date) }}

    - @elseif(!is_null($start_date) && !is_null($end_date)) -

    {{ __('family_accounts.showing_deposit_from') }}{{ streamline_date($start_date) }} {{ __('patient_accounts.to') }} {{ streamline_date($end_date) }}

    - @endif - -
    - - - - - - - - - - - - - - - @php $counter = 1; $total_refunds = 0; @endphp - @foreach($patient_refunds as $refund) - - - - - - - - - - - @php $counter++; @endphp - @endforeach - - - - - - - - - - - - - -
    #{{ __('patient_accounts.patient_names') }}{{ __('patient_accounts.refund_amount') }}{{ __('patient_accounts.refund_record_date') }}{{ __('patient_accounts.refund_transaction_date') }}{{ __('patient_accounts.refunded_by') }}{{ __('patient_accounts.refunded_reason') }}{{ __('family_accounts.action') }}
    {{ $counter }}{{ get_full_name($refund->patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($refund->patient_id, 'id', 'number', 'patients') }}) - {{ ugandan_shillings($refund->refund_amount) }} - @php $total_refunds += $refund->refund_amount; @endphp - {{ streamline_date_time($refund->created_at) }}{{ streamline_date($refund->refund_date) }}{{ get_full_name($refund->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ $refund->refund_reason }} - {{ __('patient_accounts.statement') }} -

    - @if(Auth::user()->can('cancel-patient-accounts-deposits')) - {{ __('patient_accounts.cancel_refund') }} - @endif -
    {{ __('family_accounts.total') }}{{ ugandan_shillings($total_refunds) }}
    -
    - -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush - - - - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/statement.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/statement.blade.php deleted file mode 100755 index 76f2abbf..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_accounts/statement.blade.php +++ /dev/null @@ -1,363 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('patient_accounts.patient_account_statement') }}

    -
    -
    - -
    -
    - - @include('patient_discounts::patient_accounts.menu') - -
    - @include('flash::message') - - {{ Form::open(['url' => '/patient_accounts/statement', 'method' => 'ANY']) }} -
    -
    -
    - {{ Form::label('search_by', __('family_accounts.date')) }} - {{ Form::select('search_by', ['0'=>__('family_accounts.last_24_hours'),'1'=>__('family_accounts.custom_date'),'2'=>__('family_accounts.custom_range')], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - - -
    -

    - {{ Form::button(__('family_accounts.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    - {{ Form::close() }} - -
    -
    - {{ Form::open(['url' => '/patient_accounts/print_statement', 'target' => '_blank'])}} - {{ Form::hidden('reg_date', $reg_date) }} - {{ Form::hidden('start_date', $start_date) }} - {{ Form::hidden('end_date', $end_date) }} - {{ Form::hidden('search_by', $search_by) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    - -
    - @include('patient_discounts::patient_accounts.patient_details') - - @if(count($patient_deposits) > 0) -

    {{ __('patient_accounts.deposits') }}

    - -
    - - - - - - - - - - - - @php $counter = 1; $total_deposits = 0; @endphp - @foreach($patient_deposits as $deposit) - - - - - - - - - @php $counter++; @endphp - @endforeach - - - - - - - - - - -
    #{{ __('patient_accounts.patient_names') }}{{ __('patient_accounts.deposit_amount') }}{{ __('patient_accounts.deposit_date') }}{{ __('patient_accounts.received_by') }}
    {{ $counter }}{{ get_full_name($deposit->patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($deposit->patient_id, 'id', 'number', 'patients') }}) - {{ ugandan_shillings($deposit->deposit_amount) }} - @php $total_deposits += $deposit->deposit_amount; @endphp - {{ streamline_date($deposit->deposit_date) }}{{ get_full_name($deposit->created_by, 'id', 'first_name', 'last_name', 'users') }}
    {{ __('family_accounts.total') }}{{ ugandan_shillings($total_deposits) }}
    -
    - -
    - @endif - - @if(count($patient_refunds) > 0) -

    {{ __('patient_accounts.refunds') }}

    - -
    - - - - - - - - - - - - @php $counter = 1; $total_refunds = 0; @endphp - @foreach($patient_refunds as $refund) - - - - - - - - @php $counter++; @endphp - @endforeach - - - - - - - - - - -
    #{{ __('patient_accounts.patient_names') }}{{ __('patient_accounts.refund_amount') }}{{ __('patient_accounts.refund_date') }}{{ __('patient_accounts.received_by') }}
    {{ $counter }}{{ get_full_name($refund->patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($refund->patient_id, 'id', 'number', 'patients') }}) - {{ ugandan_shillings($refund->refund_amount) }} - @php $total_refunds += $refund->refund_amount; @endphp - {{ streamline_date($refund->refund_date) }}{{ get_full_name($refund->created_by, 'id', 'first_name', 'last_name', 'users') }}
    {{ __('family_accounts.total') }}{{ ugandan_shillings($total_refunds) }}
    -
    - -
    - @endif - - @if(count($patient_consumptions) > 0) -

    {{ __('patient_accounts.consumption') }}

    - -
    - - - - - - - - - - - - @php $counter = 1; $total_consumption = 0; @endphp - @foreach($patient_consumptions as $record) - - - - - - @php - $tag_id = $record->tag_id; - $items_received_array = []; - - if($tag_id == 6 || $tag_id == 8){ - - $service_deposit_record = \Streamline\Models\ServiceDeposit::where('receipt_number', $record->receipt_number)->first(); - - if ($service_deposit_record){ - $items_received = explode(",", $service_deposit_record->items_ids); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "services"); - } - } - } elseif($tag_id == 3){ - - $treatment_deposit_record = \Streamline\Models\TreatmentDeposits::where('receipt_number', $record->receipt_number)->first(); - - if ($treatment_deposit_record){ - $items_received = explode(",", $treatment_deposit_record->treatment_items); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "drugs"); - } - } - } elseif($tag_id == 5){ - - $sundries_deposit_record = \Streamline\Models\SundryDeposit::where('receipt_number', $record->receipt_number)->first(); - - if ($sundries_deposit_record){ - $items_received = explode(",", $sundries_deposit_record->sundry_items); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "sundries"); - } - } - } elseif($tag_id == 2){ - $investigation_deposit_record = \Streamline\Models\InvestigationDeposit::where('receipt_number', $record->receipt_number)->first(); - - if ($investigation_deposit_record){ - $items_received = explode(",", $investigation_deposit_record->investigation_items); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "investigations"); - } - } - } elseif($tag_id == 4){ - - $procedure_deposit_record = \Streamline\Models\ProcedureDeposit::where('receipt_number', $record->receipt_number)->first(); - - if ($procedure_deposit_record){ - $items_received = explode(",", $procedure_deposit_record->procedure_items); - - for($i = 0; $i < count($items_received); $i++){ - $items_received_array[] = get_name($items_received[$i], "id", "name", "procedures"); - } - } - } - @endphp - - - @php $counter++; @endphp - @endforeach - - - - - - - - - - -
    #{{ __('patient_accounts.patient_names') }}{{ __('patient_accounts.amount_consumed') }}{{ __('patient_accounts.date_consumed') }}{{ __('patient_accounts.reason') }}
    {{ $counter }}{{ get_full_name($record->patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($record->patient_id, 'id', 'number', 'patients') }}) - {{ ugandan_shillings($record->amount_consumed) }} - @php $total_consumption += $record->amount_consumed; @endphp - {{ streamline_date_time($record->created_at) }} - {{ get_name($record->tag_id, 'id', 'name', 'finance_point_tags') }} -
      - @for($j = 0; $j < count($items_received_array); $j++) -
    1. {{ $items_received_array[$j] }}
    2. - @endfor -
    -
    {{ __('family_accounts.total') }}{{ ugandan_shillings($total_consumption) }}
    -
    - -
    - @endif - -
    -

    - {{ __('patient_accounts.current_balance') }}: {{ ugandan_shillings($patient->patient_account_balance) }} -
    -
    - -
    -
    - @if(Auth::user()->can('view-patient-accounts-deposits')) - - @endif - @if(Auth::user()->can('view-patient-accounts-refunds')) - - @endif -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush - - - - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/debt_plan_guarantor_agreement.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/debt_plan_guarantor_agreement.blade.php deleted file mode 100755 index a7f7e4c7..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/debt_plan_guarantor_agreement.blade.php +++ /dev/null @@ -1,85 +0,0 @@ -@extends('layouts.main') - -@push('styles') -@endpush - -@section('content') - -
    -
    -

    {{ __('finance_reports.guarantor_agreement') }}

    -
    -
    - -
    -
    - -
    -
    - -
    -
    -
    - -
    -
    -
    -
    -
    - {{ __('patient_finance.agreement1') }} - {{ ugandan_shillings($amount_to_pay) }} - {{ __('patient_finance.agreement2') }} - {{ ugandan_shillings($amount_owed) }} - {{ __('patient_finance.agreement3') }} - ({{ $patient_names }}) - {{ __('patient_finance.agreement4') }} - {{ $payment_date }} - {{ __('patient_finance.agreement5') }} - {{ $arrangement }} - {{ __('patient_finance.agreement6') }}. -


    -
    -
    {{ __('patient_finance.signed_by') }}:
    -
    {{ __('patient_finance.name') }}: {{ $guarantor_name }}
    -
    {{ __('patient_finance.grade') }}:
    -
    {{ __('patient_finance.department') }}:
    -
    {{ __('patient_finance.date') }}:
    -
    -

    -
    -
    {{ __('patient_finance.witnessed_by') }}:
    -
    {{ __('patient_finance.name') }}:
    -
    {{ __('patient_finance.grade') }}:
    -
    {{ __('patient_finance.department') }}:
    -
    {{ __('patient_finance.date') }}:
    -
    -
    -
    - -

    - - {{ __('patient_finance.date') }} Printed: {{ \Carbon\Carbon::now()->format('D m Y') }} -
    -
    - -@endsection - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/debt_plan_payment.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/debt_plan_payment.blade.php deleted file mode 100755 index f5535da3..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/debt_plan_payment.blade.php +++ /dev/null @@ -1,122 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    Debt Plan Receipt

    -
    -
    - -
    -
    - - -
    -
    -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - Email: {{ $hospital_information->email }}
    - Cashier: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - Receipt Number: {{ $new_receipt_number }}
    -

    - -
    - - - - - - - - - - - - - - - - - - - - - - - -
    DescriptionAmount
    Comment{{ $request->comment }}
    Expected Amount{{ ugandan_shillings($request->amount_owed) }}
    Amount Paid{{ ugandan_shillings($request->amount_paid) }}
    Balance{{ ugandan_shillings($request->balance) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/debt_plan_payment_detail.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/debt_plan_payment_detail.blade.php deleted file mode 100755 index 63af36e0..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/debt_plan_payment_detail.blade.php +++ /dev/null @@ -1,152 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush -@section('content') -
    -
    -

    Debt Plan Receipt

    -
    -
    - -
    -
    - @include('flash::message') -
    -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - Email: {{ $hospital_information->email }}
    - Cashier: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - Receipt Number: - @php - $amount_paid = unserialize($payment->amount_paid_history); - $date_paid = unserialize($payment->date_paid_history); - $staff_in_charge = unserialize($payment->staff_in_charge_history); - $comments = unserialize($payment->comment_history); - $receipts = unserialize($payment->receipt_history); - $balances = unserialize($payment->balance_history); - @endphp - @foreach ($receipts as $item) - {{ $item }} - @endforeach -
    -

    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - {{----}} - {{----}} - {{----}} - {{----}} - - - - - -
    DescriptionAmount
    Expected Amount: - {{ ugandan_shillings(get_name($payment->debt_plan_id, 'id', 'staff_guarantor_to_pay', 'debt_plan')) }} -
    Amount Paid: - @foreach ($amount_paid as $item) - {{ ugandan_shillings($item) }}
    - @endforeach -
    Balance: - @foreach ($balances as $item) - {{ ugandan_shillings($item) }}
    - @endforeach -
    Reason:Debt Plan Payment
    Total Paid:{{ ugandan_shillings($payment->amount_received) }}
    Received By{{ get_full_name($payment->created_by, 'id', 'first_name', 'last_name', 'users') }}
    -
    -
    - © Stre@mline -
    -
    -
    -
    - -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/debt_plan_payments_staff.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/debt_plan_payments_staff.blade.php deleted file mode 100755 index 4f41c7c4..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/debt_plan_payments_staff.blade.php +++ /dev/null @@ -1,290 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    Receive Guarantor Payments

    -
    -
    - -
    -
    - -
    - -
    -
    -
    -
    -

    Payment Debt Plan

    -
    - -
    - - - - - - - - - - - - @php $amount_paid_on_debt = 0; @endphp - @if(!is_null($debts)) - - - - - @else - - @endif - -
    Guarantor NamePayment ArrangementAmount To PayAmount PaidCompletion Date
    - @php - $guarantor_ids_array = explode(",", $debts->staff_guarantor); - @endphp -
      - @if ($debts->guarantor_type == 1) - @for ($i = 0; $i < count($guarantor_ids_array); $i++) -
    • {{ get_full_name($guarantor_ids_array[$i], 'id', 'first_name', 'last_name', 'users') }}
    • - @endfor - @else - @for ($i = 0; $i < count($guarantor_ids_array); $i++) -
    • {{ get_full_name($guarantor_ids_array[$i], 'id', 'first_name', 'last_name', 'non_staff_guarantors') }}
    • - @endfor - @endif -
    -
    {{ get_name($debts->debt_plan_arrangement, 'id', 'name', 'debt_plan_arrangements') }}{{ ugandan_shillings($debts->staff_guarantor_to_pay) }} - - amount_paid_off ?? 0; ?> - {{ ugandan_shillings($amount_paid_on_debt) }} - - @if (!is_null($debts->fourth_installment_date)) - {{ streamline_date($debts->fourth_installment_date) }} - @elseif(!is_null($debts->third_installment_date)) - {{ streamline_date($debts->third_installment_date) }} - @elseif(!is_null($debts->second_installment_date)) - {{ streamline_date($debts->second_installment_date) }} - @elseif(!is_null($debts->first_installment_date)) - {{ streamline_date($debts->first_installment_date) }} - @endif - RECORDS NOT FOUND
    -
    -
    -
    -
    -
    -
    -
    -

    Payment History

    -
    -
    - - - - - - - - - - - - - @if($debt_with_balances) - @foreach($debt_with_balances as $debt_with_balance) - - - - - - - - - @endforeach - @else - - @endif - -
    BalanceAmount PaidReceipt No.DateStaff In ChargeComment
    {{ ugandan_shillings($debt_with_balance->balance) }}{{ ugandan_shillings($debt_with_balance->amount_paid) }}{{ $debt_with_balance->receipt_number }}{{ streamline_date($debt_with_balance->date_paid) }}{{ $users_array[$debt_with_balance->created_by] }}{{ $debt_with_balance->comment }}
    RECORDS NOT FOUND
    -
    - -
    -
    -
    -
    - -
    -
    -
    -
    -
    - @php $amount_owed = $debts->staff_guarantor_to_pay - $amount_paid_on_debt @endphp - @if($amount_owed < 1) -

    Payment has been made in full

    - @else - {{ Form::open(['route' => 'patient_debtors.process_debt_plan_payment_staff', 'data-toggle' => 'validator']) }} -
    -

    Make Payment

    -
    - -
    - {{ Form::label('amount_label', 'Expected Amount') }} -
    - {{ Form::number('amount_owed', $amount_owed, - ['class'=>'form-control compulsory required', 'readonly', 'id'=>'amount_owed']) }} -
    -
    - -
    - {{ Form::label('amount_paid_label', 'Amount Paid') }} -
    - {{ Form::number('amount_paid', 0, ['class'=>'form-control compulsory required', 'id'=>'amount_paid']) }} -
    -
    - -
    - {{ Form::label('balance_label', 'Balance') }} -
    - {{ Form::number('balance', '', ['class'=>'form-control compulsory required', 'readonly', 'id'=>'balance']) }} -
    -
    - -
    - {{ Form::label('date_label', 'Date of Payment') }} -
    - {{ Form::text('date', '', ['class'=>'form-control compulsory required','readonly', 'id'=>'date']) }} - -
    -
    -
    - {{ Form::label('comment_label', 'Comment') }} -
    - {{ Form::textarea('comment','', ['class'=>'form-control compulsory required', 'id'=>'comment']) }} -
    -
    - {{ Form::hidden('staff_guarantor', $debts->staff_guarantor, ['id' => 'staff_guarantor']) }} - {{ Form::hidden('payment_id', $debts->id, ['id' => 'payment_id']) }} -
    - Write Off Debt - {{ Form::submit('Make Payment', ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} - @endif -
    -
    -
    -
    -
    - -
    - - - -@endsection - -@push('scripts') - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/debtor_payment.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/debtor_payment.blade.php deleted file mode 100755 index f0c72a79..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/debtor_payment.blade.php +++ /dev/null @@ -1,150 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    Debtor Payment Receipt

    -
    -
    - -
    -
    - - -
    -
    -
    -
    - @if(is_cashier_receipt_type_print_html()) - - @else -
    - {{ csrf_field() }} - - - - - - - - -
    - @endif -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - Email: {{ $hospital_information->email }}
    - Cashier: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - Receipt Number: {{ $new_receipt_number }}
    - Patient Names: {{ $patient->first_name }} {{ $patient->last_name }}
    - Patient Number: {{ $patient->number }}
    - Patient Category: {{ get_name($patient->category_id, 'id', 'name', 'patient_categories') }}
    -

    - -
    - - - - - - - - - - - - - - - - - - - - - - - @if(count($payment_methods) > 0) - - @foreach($payment_methods as $key => $value) - - - - - @endforeach - @endif - -
    DescriptionAmount
    Comment{{ $request->comment }}
    Expected Amount{{ ugandan_shillings($request->amount_owed) }}
    Amount Paid{{ ugandan_shillings($request->amount_paid) }}
    Balance{{ ugandan_shillings($request->balance) }}
    Patient Paid With {{ ($key == 0) ? 'Cash' : get_name($key, 'id', 'name', 'patient_payment_methods') }}{{ ugandan_shillings($value) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/debtorsReport.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/debtorsReport.blade.php deleted file mode 100755 index 5304218a..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/debtorsReport.blade.php +++ /dev/null @@ -1,307 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    Debtors

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    - - @include('flash::message') - - {{ Form::open(['method'=>'post','route' => 'patient_debtors.debtors']) }} - -
    -
    -
    - - -
    -
    -
    -
    -
    -
    - - -
    -
    -
    - -
    -
    - -
    -
    -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success btn-rounded btn-block pull-right']) }} -
    -
    -
    -
    -
    - {{ Form::close() }} -
    -
    -
    - -
    -
    -
    - @if(count($debtors) > 0) - -

    Report For Debtors

    -
    - @if(isset($display)) -

    {!! $display !!}

    - @endif -
    -
    -
    - - - - - - - - - - - - - - - - - @php - $sum_total_amount = 0; - $sum_amount_paid = 0; - $sum_balance = 0; - $counter = 1; - @endphp - - @if(count($debtors) > 0) - - @foreach($debtors as $debtor) - - @php - $payment = Streamline\Models\DebtorPayment::where('debt_id', $debtor->id)->first(); - $balance_remaining = $debtor->balance_remaining ?? $debtor->balance; - @endphp - - - - - - - - - - - - @if(is_null($payment)) - - - @elseif($payment) - @if($balance_remaining > 0) - - - @elseif($balance_remaining == 0) - - - @else - - - @endif - @else - - - @endif - - @php - $sum_total_amount += $debtor->balance; - $sum_amount_paid += ($debtor->amount_paid_off ?? 0); - $sum_balance += $balance_remaining; - $counter++; - @endphp - @endforeach - - - - - - - - - - - - - - - @else - - @endif - -
    #DatePatient No.Patient NameStaff In-chargeReceipt No.Initial Debt AmountAmount PaidBalance
    {{ $counter }} - {{ streamline_date($debtor->created_at) }} - - {{ get_name($debtor->patient_id, 'id', 'number', 'patients') }} - - {{ get_full_name($debtor->patient_id, 'id', 'first_name', 'last_name', 'patients') }} - - {{ get_full_name($debtor->created_by, 'id', 'first_name', 'last_name', 'users') }} - - {{ $debtor->receipt_number }} - - {{ ugandan_shillings($debtor->balance) }} - - {{ ugandan_shillings($debtor->amount_paid_off ?? 0) }} - - {{ ugandan_shillings($balance_remaining) }} - - id, "new"))) }}">Receive Payment - - id, "update"))) }}">Update Payment - - View Receipts - - View Receipts -
    Total{{ ugandan_shillings($sum_total_amount) }}{{ ugandan_shillings($sum_amount_paid) }}{{ ugandan_shillings($sum_balance) }}
    RECORDS NOT FOUND
    -
    - @else -
    -
    -
    -

    Select a Valid date rangee

    -
    -
    - @endif -
    -
    -
    - -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/history_debtor_payments.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/history_debtor_payments.blade.php deleted file mode 100755 index bc42cd30..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/history_debtor_payments.blade.php +++ /dev/null @@ -1,204 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    Debtor Payment Receipt

    -
    -
    - -
    -
    -
    -
    -
    - - @include('flash::message') - - - -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - Email: {{ $hospital_information->email }}
    - Department: Finance
    - Date: {{ streamline_date(\Carbon\Carbon::now()->toDateTimeString()) }}
    - Patient Name: {{ get_name($patient_id, 'id', 'first_name', 'patients') }} {{ get_name($patient_id, 'id', 'last_name', 'patients') }}
    - Patient Number : {{ get_name($patient_id, 'id', 'number', 'patients') }}
    -

    - - @php $x = 0; @endphp - @foreach($payments as $payment) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - @php $x++; @endphp - @endforeach - - Viewed By : {{ auth()->user()->first_name }} {{ auth()->user()->last_name }} - © Stre@mline -
    - @if(count($payments) > 1) -
    -
    - @if(is_cashier_receipt_type_print_html()) -
    - @else -
    - {{ csrf_field() }} - - - - -
    - @endif -
    -
    - @endif -
    -
    -
    -
    -@endsection - -@push('scripts') - -@endpush - - diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/patient_debt_plan.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/patient_debt_plan.blade.php deleted file mode 100755 index 325c1cd6..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/patient_debt_plan.blade.php +++ /dev/null @@ -1,127 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    Debt Plan Receipt

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - Email: {{ $hospital_information->email }}
    - Cashier: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - {{--Date: {{ streamline_date_time_short($request->date) }}
    --}} - @php - $new_receipt_number = generateReceiptNumberFromDB(); - @endphp - Receipt Number: {{ $new_receipt_number }}
    - {{--REF : {{ get_patient_name($request->patient_id) }}
    --}} - {{--Category : {{ get_name($patient->category_id, "id", "name", "patient_categories") }}--}} -

    - -
    - - - - - - - - - - - - - - - - - - - - - - - -
    DescriptionAmount
    ReasonPatient Debt Plan Receipt
    Staff Guarantor To Pay{{ ugandan_shillings($debt_plan->staff_guarantor_to_pay) }}
    Patient Amount Paid{{ ugandan_shillings($debt_plan->amount_owed - $debt_plan->staff_guarantor_to_pay) }}
    Total Amount{{ ugandan_shillings($debt_plan->amount_owed) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/print_debtor_receipt_pdf_details.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/print_debtor_receipt_pdf_details.blade.php deleted file mode 100755 index 92e1b731..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/print_debtor_receipt_pdf_details.blade.php +++ /dev/null @@ -1,104 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Patient Receipt - Stre@mline') }} - - - - - - - - - -
    - @include('layouts.header_pdf_print') - - - - - - - - - - - - - - - - -
    Patient Names{{ get_full_name($patient_id, 'id', 'first_name', 'last_name', 'patients') }}Patient Number{{ get_name($patient_id, 'id', 'number', 'patients') }}Patient Category{{ get_name(get_name($patient_id, 'id', 'category_id', 'patients'), 'id', 'name', 'patient_categories') }}
    Cashier{{ auth()->user()->first_name }} {{ auth()->user()->last_name }}Receipt Number{{ $receipt_number }}
    - - - - - - - - - - - - - - - - - - - - - - - - @if(count($payment_methods) > 0) - - @foreach($payment_methods as $key => $value) - - - - - @endforeach - @endif - -
    DescriptionAmount
    Comment{{ $comment }}
    Expected Amount{{ ugandan_shillings($amount_owed) }}
    Amount Paid{{ ugandan_shillings($amount_paid) }}
    Balance{{ ugandan_shillings($balance) }}
    Patient Paid With {{ ($key == 0) ? 'Cash' : get_name($key, 'id', 'name', 'patient_payment_methods') }}{{ ugandan_shillings($value) }}
    - -
    -
    - © {{ date('Y') }} Stre@mline -
    -
    - Printed On {{ date(" d M Y h:ia") }} By {{ auth()->user()->first_name }} {{ auth()->user()->last_name }} -
    -
    - -
    - - - \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/receive_debtor_payment.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/receive_debtor_payment.blade.php deleted file mode 100755 index 1f634123..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/receive_debtor_payment.blade.php +++ /dev/null @@ -1,323 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    Receive Debtor Payments

    -
    -
    - -
    -
    - @php - $back_date = \Streamline\Models\HospitalInformation::first()->pluck('back_date'); - @endphp -
    -
    -
    -
    -
    -

    Debtor Payment

    -
    - -
    - - - - - - - - - - - @if(!is_null($debts)) - - - - @else - - @endif - -
    Patient NumberPatient NameAmount To PayAmount Paid
    {{ get_name($debts->patient_id, 'id', 'number', 'patients') }}{{ get_full_name($debts->patient_id, 'id', 'first_name', 'last_name', 'patients') }}{{ ugandan_shillings($debts->balance) }} - {{ ugandan_shillings($debts->amount_paid_off) }}RECORDS NOT FOUND
    -
    -
    -
    -
    -
    -
    -
    -

    Payment History

    -
    -
    - - - - - - - - - - - - - @foreach($debt_payments as $debt_payment) - - - - - - - - - @endforeach - -
    BalanceAmount PaidReceipt No.DateStaff In ChargeComment
    {{ ugandan_shillings($debt_payment->balance) }}{{ ugandan_shillings($debt_payment->amount_paid) }}{{ $debt_payment->receipt_number }}{{ streamline_date($debt_payment->date_paid) }}{{ get_full_name($debt_payment->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ $debt_payment->comment }}
    -
    - -
    -
    -
    -
    - -
    -
    -
    -
    -
    - balance_remaining) ? $debts->balance_remaining : $debts->balance ?> - @if($amount_owed < 1) -

    Payment has been made in full

    - @else - {{ Form::open(['route' => 'patient_debtors.process_debtor_payment', 'data-toggle' => 'validator']) }} -

    Make Payment

    - -
    - {{ Form::label('amount_label', 'Expected Amount') }} -
    - {{ Form::number('amount_owed', $amount_owed, - ['class'=>'form-control compulsory required', 'readonly', 'id'=>'amount_owed']) }} -
    -
    - -
    - {{ Form::label('amount_paid_label', 'Amount Paid') }} -
    - {{ Form::number('amount_paid', 0, ['class'=>'form-control compulsory', 'id'=>'amount_paid', 'required']) }} -
    -
    - -
    -
    - -
    -
    -
    -

    - - - -
    - {{ Form::label('balance_label', 'Balance Remaining on Debt') }} -
    - {{ Form::number('balance', '', ['class'=>'form-control compulsory required', 'readonly', 'id'=>'balance', 'required']) }} -
    -
    - -
    - {{ Form::label('date_label', 'Date of Payment') }} -
    - {{ Form::text('date', date('d-m-Y'), ['class'=>'form-control compulsory','readonly', 'id'=>'date', 'required']) }} - -
    -
    -
    - {{ Form::label('comment_label', 'Comment') }} -
    - {{ Form::textarea('comment','', ['class'=>'form-control compulsory', 'id'=>'comment', 'required']) }} -
    -
    - {{ Form::hidden('patient_id', $debts->patient_id, ['id' => 'patient_id']) }} - {{ Form::hidden('debt_id', $debts->id, ['id' => 'debt_id']) }} - - Write Off Debt - {{ Form::submit('Receive Payment', ['class'=>'btn btn-success pull-right', 'onclick'=>"return confirm('Are you sure you want to complete this payment')"]) }} - - {{ Form::close() }} - @endif -
    -
    -
    -
    -
    - -
    - - - -@endsection - -@push('scripts') - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/reprint_debtor_receipt_pdf_details.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/reprint_debtor_receipt_pdf_details.blade.php deleted file mode 100755 index caed320c..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/reprint_debtor_receipt_pdf_details.blade.php +++ /dev/null @@ -1,91 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Patient Receipt - Stre@mline') }} - - - - - - - - - -
    - @include('layouts.header_pdf_print') - - - - - - - - - - -
    Patient Names{{ get_full_name($patient_id, 'id', 'first_name', 'last_name', 'patients') }}Patient Number{{ get_name($patient_id, 'id', 'number', 'patients') }}Patient Category{{ get_name(get_name($patient_id, 'id', 'category_id', 'patients'), 'id', 'name', 'patient_categories') }}
    - - @foreach($debt_payments as $debt_payment) - - - - - - - - - - - - - - - - - - - - - -
    Amount Paid{{ ugandan_shillings($debt_payment->amount_paid) }}Balance{{ ugandan_shillings($debt_payment->balance) }}
    Comment{{ $debt_payment->comment }}Received By{{ get_full_name($debt_payment->created_by, 'id', 'first_name', 'last_name', 'users') }}
    Receipt Number{{ $debt_payment->receipt_number }}Received On{{ streamline_date($debt_payment->date_paid) }}
    - -
    - @endforeach - -
    -
    - © {{ date('Y') }} Stre@mline -
    -
    - Printed On {{ date(" d M Y h:ia") }} By {{ auth()->user()->first_name }} {{ auth()->user()->last_name }} -
    -
    - -
    - - - \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/staffGuarantors.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/staffGuarantors.blade.php deleted file mode 100755 index f13b080b..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/patient_debtors/staffGuarantors.blade.php +++ /dev/null @@ -1,246 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    Guarantors

    -
    -
    - -
    -
    - @include('flash::message') -
    - {{ Form::open(['method'=>'post','route' => 'patient_debtors.staff_guarantors']) }} -
    -
    - {{ Form::label('staff_member', 'Select Guarantor') }} - -
    -
    -
    -
    - {{ Form::label('start_date', 'Start Date') }} -
    - {{ Form::text('start_date', '', ['class'=>'form-control compulsory required', 'readonly', 'id'=>'start_date']) }} - -
    -
    -
    -
    -
    - {{ Form::label('end_date', 'End Date') }} -
    - {{ Form::text('end_date', '', ['class'=>'form-control compulsory required', 'readonly', 'id'=>'end_date']) }} - -
    -
    -
    -
    -
    - {{ Form::submit('Submit', ['class'=>'btn btn-success pull-right']) }} -
    -
    - {{ Form::close() }} -
    - -
    -

    {!! $display ?? '' !!}

    -
    -
    -
    - - - - - - - - - - - - - - - - - - @php - $sum_total_amount = 0; - $sum_amount_paid = 0; - $sum_balance = 0; - @endphp - @if(count($debts) > 0) - - @foreach($debts as $debt) - - - - - - - - - - - - - - @php - $current_amount_paid = ($debt->amount_paid_off ?? 0); - $sum_total_amount += $debt->staff_guarantor_to_pay; - $sum_amount_paid += $current_amount_paid; - $sum_balance += $debt->balance_remaining ?? $debt->staff_guarantor_to_pay; - @endphp - - - - @endforeach - - - - - - - - - - - - - - - - @else - - @endif -
    Guarantor NamePatient NameDate Of BillArrangement For BalanceCompletion DateAuthorised ByCommentGuarantor To PayAmount PaidBalance
    - @php - $guarantor_ids_array = explode(",", $debt->staff_guarantor); - @endphp -
      - @if ($debt->guarantor_type == 1) - @for ($i = 0; $i < count($guarantor_ids_array); $i++) -
    • {{ get_full_name($guarantor_ids_array[$i], 'id', 'first_name', 'last_name', 'users') }}
    • - @endfor - @else - @for ($i = 0; $i < count($guarantor_ids_array); $i++) -
    • {{ get_full_name($guarantor_ids_array[$i], 'id', 'first_name', 'last_name', 'non_staff_guarantors') }}
    • - @endfor - @endif -
    -
    {{ get_name($debt->patient_id, 'id', 'first_name', 'patients') }} {{ get_name($debt->patient_id, 'id', 'last_name', 'patients') }}{{ streamline_date($debt->created_at) }}{{ get_name($debt->debt_plan_arrangement, 'id', 'name', 'debt_plan_arrangements') }} - @if (!is_null($debt->fourth_installment_date)) - {{ streamline_date($debt->fourth_installment_date) }} - @elseif(!is_null($debt->third_installment_date)) - {{ streamline_date($debt->third_installment_date) }} - @elseif(!is_null($debt->second_installment_date)) - {{ streamline_date($debt->second_installment_date) }} - @elseif(!is_null($debt->first_installment_date)) - {{ streamline_date($debt->first_installment_date) }} - @endif - {{ get_full_name($debt->authorised_by, 'id', 'first_name', 'last_name', 'users') }}{{ $debt->comment ?? "N/A" }} - {{ ugandan_shillings($debt->staff_guarantor_to_pay) }} - - {{ ugandan_shillings($debt->amount_paid_off) }} - - {{ ugandan_shillings($debt->balance_remaining) }} - {{ __('patient_finance.print_guarantor_agreement') }} - @if($current_amount_paid == 0) - {{ Form::open(['method'=>'post', 'route'=>'patient_debtors.receive_debt_plan_payments_staff']) }} - {{ Form::hidden('debt_plan_id', $debt->id) }} - {{ Form::hidden('status', 'new') }} - {{ Form::submit('Receive Payment', ['class'=>'btn btn-success btn-sm btn-rounded']) }} - {{ Form::close() }} - @elseif ($current_amount_paid < $debt->staff_guarantor_to_pay) - {{ Form::open(['method'=>'post', 'route'=>'patient_debtors.receive_debt_plan_payments_staff']) }} - {{ Form::hidden('debt_plan_id', $debt->id) }} - {{ Form::hidden('status', 'update') }} - {{ Form::submit('Update Payment', ['class'=>'btn btn-warning btn-sm btn-rounded']) }} - {{ Form::close() }} - @elseif ($current_amount_paid == $debt->staff_guarantor_to_pay) - {{ Form::open(['method'=>'post', 'route'=>'patient_debtors.receive_debt_plan_payments_staff']) }} - {{ Form::hidden('debt_plan_id', $debt->id) }} - {{ Form::hidden('status', 'update') }} - {{ Form::submit('View Payments', ['class'=>'btn btn-primary btn-sm btn-rounded']) }} - {{ Form::close() }} - @endif -
    Total{{ ugandan_shillings($sum_total_amount) }}{{ ugandan_shillings($sum_amount_paid) }}{{ ugandan_shillings($sum_balance) }}
    RECORDS NOT FOUND
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/apply_markup_to_drugs.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/apply_markup_to_drugs.blade.php deleted file mode 100755 index 122712d5..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/apply_markup_to_drugs.blade.php +++ /dev/null @@ -1,136 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    Editing drugs pricing for {{ get_name(get_name($id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') }}

    -
    -
    - -
    -
    - - @include('finance::markup_tags.menu') - -
    -
    - - @include('flash::message') -
    -
    -
    - Existing markups -
    - - - - - - - - - - @php $counter = 1; @endphp - @foreach($markup_tags as $tag) - - - - - - @php $counter++; @endphp - @endforeach - -
    #NamePercentage
    {{ $counter }}{{ $tag->name }}{{ $tag->percentage }}%
    -
    -
    -
    - {{ Form::open(['route' => 'price_list_category.save_apply_markup_to_drugs', 'data-toggle' => 'validator']) }} - - {{ Form::hidden('price_list_category_id', $id) }} - -
    - {{ Form::label('markup_tag', 'Select Markup to apply') }} - {{ Form::select('markup_tag', $tags_select, '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - Select all drugs - -
    - - - - - - - - - - - - @php - $counter = 1; - @endphp - - @foreach($drugs as $drug) - @php - $key = array_search($id, explode(",", $drug->price_list_category)); - $price_list_price_array = explode(",", $drug->price_list_price); - $price_list_price = isset($price_list_price_array[$key]) ? $price_list_price_array[$key] : 0; - @endphp - - - - - - - - @php $counter++; @endphp - @endforeach - -
    #NameCurrent Cash Price{{ get_name(get_name($id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') }} Price
    {{ $counter }}{{ $drug->name }}{{ ugandan_shillings($drug->non_insured_price) }}{{ ugandan_shillings($price_list_price) }}
    -
    - - {{ Form::button('Apply',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} -
    - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/apply_markup_to_eye_glasses.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/apply_markup_to_eye_glasses.blade.php deleted file mode 100644 index 7a6f1a77..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/apply_markup_to_eye_glasses.blade.php +++ /dev/null @@ -1,141 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    Editing drugs pricing for {{ get_name(get_name($id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') }}

    -
    -
    - -
    -
    - - @include('finance::markup_tags.menu') - -
    -
    - - @include('flash::message') -
    -
    -
    - Existing markups -
    - - - - - - - - - - @php $counter = 1; @endphp - @foreach($markup_tags as $tag) - - - - - - @php $counter++; @endphp - @endforeach - -
    #NamePercentage
    {{ $counter }}{{ $tag->name }}{{ $tag->percentage }}%
    -
    -
    -
    - {{ Form::open(['route' => 'price_list_category.save_apply_markup_to_eye_glasses', 'data-toggle' => 'validator']) }} - - {{ Form::hidden('price_list_category_id', $id) }} - -
    - {{ Form::label('markup_tag', 'Select Markup to apply') }} - {{ Form::select('markup_tag', $tags_select, '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - - -
    - -
    - - - - - - - - - - - - @php - $counter = 1; - @endphp - - @foreach($eye_glasses as $eye_glass) - @php - $key = array_search($id, explode(",", $eye_glass->price_list_category)); - $price_list_price_array = explode(",", $eye_glass->price_list_price); - $price_list_price = isset($price_list_price_array[$key]) ? $price_list_price_array[$key] : 0; - @endphp - - - - - - - - @php $counter++; @endphp - @endforeach - -
    #NameCurrent Cash Price{{ get_name(get_name($id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') }} Price
    {{ $counter }}{{ $eye_glass->name }}{{ ugandan_shillings($eye_glass->non_insured_price) }}{{ ugandan_shillings($price_list_price) }} - -
    -
    - - {{ Form::button('Apply',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} -
    - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/apply_markup_to_investigations.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/apply_markup_to_investigations.blade.php deleted file mode 100755 index ad2c1aa7..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/apply_markup_to_investigations.blade.php +++ /dev/null @@ -1,133 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    Editing investigations pricing for {{ get_name(get_name($id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') }}

    -
    -
    - -
    -
    - - @include('finance::markup_tags.menu') - -
    -
    - - @include('flash::message') -
    -
    -
    - Existing markups -
    - - - - - - - - - - @php $counter = 1; @endphp - @foreach($markup_tags as $tag) - - - - - - @php $counter++; @endphp - @endforeach - -
    #NamePercentage
    {{ $counter }}{{ $tag->name }}{{ $tag->percentage }}%
    -
    -
    -
    - {{ Form::open(['route' => 'price_list_category.save_apply_markup_to_investigations', 'data-toggle' => 'validator']) }} - - {{ Form::hidden('price_list_category_id', $id) }} - -
    - {{ Form::label('markup_tag', 'Select Markup to apply') }} - {{ Form::select('markup_tag', $tags_select, '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - Select all investigations - -
    - - - - - - - - - - - - @php $counter = 1; @endphp - @foreach($investigations as $investigation) - @php - $key = array_search($id, explode(",", $investigation->price_list_category)); - $price_list_price_array = explode(",", $investigation->price_list_price); - $price_list_price = isset($price_list_price_array[$key]) ? $price_list_price_array[$key] : 0; - @endphp - - - - - - - - @php $counter++; @endphp - @endforeach - -
    #NameCurrent Cash Price{{ get_name(get_name($id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') }} Price
    {{ $counter }}{{ $investigation->name }}{{ ugandan_shillings($investigation->non_insured_price) }}{{ ugandan_shillings($price_list_price) }}
    -
    - - {{ Form::button('Apply',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} -
    - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/apply_markup_to_procedures.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/apply_markup_to_procedures.blade.php deleted file mode 100755 index 2518592a..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/apply_markup_to_procedures.blade.php +++ /dev/null @@ -1,133 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    Editing procedures pricing for {{ get_name(get_name($id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') }}

    -
    -
    - -
    -
    - - @include('finance::markup_tags.menu') - -
    -
    - - @include('flash::message') -
    -
    -
    - Existing markups -
    - - - - - - - - - - @php $counter = 1; @endphp - @foreach($markup_tags as $tag) - - - - - - @php $counter++; @endphp - @endforeach - -
    #NamePercentage
    {{ $counter }}{{ $tag->name }}{{ $tag->percentage }}%
    -
    -
    -
    - {{ Form::open(['route' => 'price_list_category.save_apply_markup_to_procedures', 'data-toggle' => 'validator']) }} - - {{ Form::hidden('price_list_category_id', $id) }} - -
    - {{ Form::label('markup_tag', 'Select Markup to apply') }} - {{ Form::select('markup_tag', $tags_select, '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - Select all procedures - -
    - - - - - - - - - - - - @php $counter = 1; @endphp - @foreach($procedures as $procedure) - @php - $key = array_search($id, explode(",", $procedure->price_list_category)); - $price_list_price_array = explode(",", $procedure->price_list_price); - $price_list_price = isset($price_list_price_array[$key]) ? $price_list_price_array[$key] : 0; - @endphp - - - - - - - - @php $counter++; @endphp - @endforeach - -
    #NameCurrent Cash Price{{ get_name(get_name($id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') }} Price
    {{ $counter }}{{ $procedure->name }}{{ ugandan_shillings($procedure->non_insured_price) }}{{ ugandan_shillings($price_list_price) }}
    -
    - - {{ Form::button('Apply',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} -
    - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/apply_markup_to_services.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/apply_markup_to_services.blade.php deleted file mode 100755 index 744cd5c1..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/apply_markup_to_services.blade.php +++ /dev/null @@ -1,133 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    Editing services pricing for {{ get_name(get_name($id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') }}

    -
    -
    - -
    -
    - - @include('finance::markup_tags.menu') - -
    -
    - - @include('flash::message') -
    -
    -
    - Existing markups -
    - - - - - - - - - - @php $counter = 1; @endphp - @foreach($markup_tags as $tag) - - - - - - @php $counter++; @endphp - @endforeach - -
    #NamePercentage
    {{ $counter }}{{ $tag->name }}{{ $tag->percentage }}%
    -
    -
    -
    - {{ Form::open(['route' => 'price_list_category.save_apply_markup_to_services', 'data-toggle' => 'validator']) }} - - {{ Form::hidden('price_list_category_id', $id) }} - -
    - {{ Form::label('markup_tag', 'Select Markup to apply') }} - {{ Form::select('markup_tag', $tags_select, '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - Select all services - -
    - - - - - - - - - - - - @php $counter = 1; @endphp - @foreach($services as $service) - @php - $key = array_search($id, explode(",", $service->price_list_category)); - $price_list_price_array = explode(",", $service->price_list_price); - $price_list_price = isset($price_list_price_array[$key]) ? $price_list_price_array[$key] : 0; - @endphp - - - - - - - - @php $counter++; @endphp - @endforeach - -
    #NameCurrent Cash Price{{ get_name(get_name($id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') }} Price
    {{ $counter }}{{ $service->name }}{{ ugandan_shillings($service->non_insured_price) }}{{ ugandan_shillings($price_list_price) }}
    -
    - - {{ Form::button('Apply',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} -
    - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/apply_markup_to_sundries.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/apply_markup_to_sundries.blade.php deleted file mode 100755 index 2ccb2be6..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/apply_markup_to_sundries.blade.php +++ /dev/null @@ -1,133 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    Editing sundries pricing for {{ get_name(get_name($id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') }}

    -
    -
    - -
    -
    - - @include('finance::markup_tags.menu') - -
    -
    - - @include('flash::message') -
    -
    -
    - Existing markups -
    - - - - - - - - - - @php $counter = 1; @endphp - @foreach($markup_tags as $tag) - - - - - - @php $counter++; @endphp - @endforeach - -
    #NamePercentage
    {{ $counter }}{{ $tag->name }}{{ $tag->percentage }}%
    -
    -
    -
    - {{ Form::open(['route' => 'price_list_category.save_apply_markup_to_sundries', 'data-toggle' => 'validator']) }} - - {{ Form::hidden('price_list_category_id', $id) }} - -
    - {{ Form::label('markup_tag', 'Select Markup to apply') }} - {{ Form::select('markup_tag', $tags_select, '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - Select all sundries - -
    - - - - - - - - - - - - @php $counter = 1; @endphp - @foreach($sundries as $sundry) - @php - $key = array_search($id, explode(",", $sundry->price_list_category)); - $price_list_price_array = explode(",", $sundry->price_list_price); - $price_list_price = isset($price_list_price_array[$key]) ? $price_list_price_array[$key] : 0; - @endphp - - - - - - - - @php $counter++; @endphp - @endforeach - -
    #NameCurrent Cash Price{{ get_name(get_name($id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') }} Price
    {{ $counter }}{{ $sundry->name }}{{ ugandan_shillings($sundry->non_insured_price) }}{{ ugandan_shillings($price_list_price) }}
    -
    - - {{ Form::button('Apply',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} -
    - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/create.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/create.blade.php deleted file mode 100755 index 9f62e466..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/create.blade.php +++ /dev/null @@ -1,64 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Add Category

    -
    -
    - -
    -
    - -
    -
    - @include('patient_discounts::price_list_category.menu') -
    -
    - -
    -
    - @include('flash::message') -
    - {{ Form::open(['route' => 'price_list_category.store', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('patient_category_id','Patient Category') }} - {{ Form::select('patient_category_id', $patient_categories, '', ['class' => 'form-control col-sm-12 compulsory']) }} -
    - -
    - {{ Form::label('pay_for_invoice','Invoice Patient Category For Pay Later Patients (If this price list will apply to other patient categories, tick no. If it is only for this patient category, tick yes.)') }} -
    - {{ Form::radio('pay_for_invoice', 1, false, ["required"]) }} Yes    - {{ Form::radio('pay_for_invoice', 0, false, ["required"]) }} No -
    -
    - - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/edit_pricing.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/edit_pricing.blade.php deleted file mode 100755 index e06cfcc2..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/edit_pricing.blade.php +++ /dev/null @@ -1,51 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    Editing pricing for {{ get_name(get_name($id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patient_discounts::price_list_category.menu') -
    -
    - -
    - -

    - -

    - -
    -@endsection diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/edit_pricing_list.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/edit_pricing_list.blade.php deleted file mode 100644 index ee66a6ab..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/edit_pricing_list.blade.php +++ /dev/null @@ -1,179 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - - -@endpush - -@section('content') -
    -
    -

    Editing {{ $item_name }} pricing for {{ get_name(get_name($id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') }}

    -
    -
    - -
    -
    - - @include('flash::message') - - @include('patient_discounts::price_list_category.menu') -
    - {{ Form::open(['route' => [$route,$id], 'method' => 'ANY', 'role' => 'search']) }} -
    -
    -
    - {{ Form::select('search_items_ids[]',$items,'',['id'=>'items_ids', 'multiple'=>true, 'class' => 'form-control col-sm-8 items_ids']) }} -
    -
    - -
    - -
    -
    - {{ Form::close() }} -
    - -
    -
    -
    - - -
    -
    - @if(count($filtered_items) > 0) - {{ Form::open(['route' => [$route_markups,$id], 'method' => 'ANY', 'role' => 'search']) }} - {{ Form::hidden('filtered_items', json_encode($filtered_items), ['class' => 'form-control']) }} - - {{ Form::close() }} - @endif -
    - - {{--
    -
    - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    --}} -
    - {{ Form::open(['route' => $route_submit, 'data-toggle' => 'validator']) }} - - {{ Form::hidden('price_list_category_id', $id) }} -
    - -
    - - - - - - - - - - - @forelse($filtered_items as $record) - @php - $key = array_search($id, explode(",", $record->price_list_category)); - $price_list_price_array = explode(",", $record->price_list_price); - $price_list_price = ($key !== false )? $price_list_price_array[$key] : 0; - @endphp - - - - - - - @empty - - @endforelse - -
    {{ $title }}Default (Cash) Price{{ get_name(get_name($id, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') }} Price
    {{ $record->name }} - {{ Form::number('non_insured_price[]', $record->non_insured_price , ['class' => 'form-control compulsory', 'readonly']) }} - {{ $record->non_insured_price }} - - {{ Form::number('price_list_price[]', $price_list_price , ['class' => 'form-control compulsory']) }} - {{ $price_list_price }} -
    Select Items
    -
    -
    - {{ Form::button(__('price_list_category.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('price_list_category.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/inactive.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/inactive.blade.php deleted file mode 100755 index 927ed82c..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/inactive.blade.php +++ /dev/null @@ -1,82 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    Activate Price List Categories

    -
    -
    - -
    -
    - -
    -
    - @include('patient_discounts::price_list_category.menu') -
    -
    - -
    -
    -
    - - @include('flash::message') - -

    Export data to Copy, CSV, Excel, PDF & Print

    -
    - - - - - - - - - @foreach($categories as $category) - - - - - @endforeach - -
    Category Name
    {{ $patient_categories[$category->patient_category_id] }} - {{ Form::model($category->id ,['method' => 'POST', 'route' => ['price_list_category.activate', $category->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/index.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/index.blade.php deleted file mode 100755 index af90a45e..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/index.blade.php +++ /dev/null @@ -1,92 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    Price List Categories

    -
    -
    - -
    -
    - -
    -
    - @include('patient_discounts::price_list_category.menu') -
    -
    - -
    -
    -
    - - @include('flash::message') - -
    - - - - - @if(Auth::user()->can('price-list-category-edit-pricing')) - - @endif - @if(Auth::user()->can('price-list-category-delete')) - - @endif - - - - @foreach($categories as $category) - - - @if(Auth::user()->can('price-list-category-edit-pricing')) - - @endif - @if(Auth::user()->can('price-list-category-delete')) - - @endif - - @endforeach - -
    Category Name
    {{ isset($patient_categories[$category->patient_category_id]) ? $patient_categories[$category->patient_category_id] : "N/A" }} - Edit Pricing - - {{ Form::model($category->id ,['method' => 'DELETE', 'route' => ['price_list_category.destroy', $category->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/menu.blade.php b/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/menu.blade.php deleted file mode 100755 index 4143caa1..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Resources/views/price_list_category/menu.blade.php +++ /dev/null @@ -1,13 +0,0 @@ -
    -
    - @if(Auth::user()->can('price-list-category-create')) - Add Price List Category - @endif - @if(Auth::user()->can('price-list-category-view')) - View Price List Categories - @endif - @if(Auth::user()->can('price-list-category-delete')) - Inactive Price List Categories - @endif -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/Routes/api.php b/docker/statistics/Modules/PatientDiscounts/Routes/api.php deleted file mode 100644 index a2a3fc5a..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Routes/api.php +++ /dev/null @@ -1,18 +0,0 @@ -get('/patient_discounts', function () { - return "Patient Discounts"; -}); diff --git a/docker/statistics/Modules/PatientDiscounts/Routes/web.php b/docker/statistics/Modules/PatientDiscounts/Routes/web.php deleted file mode 100644 index feddfde4..00000000 --- a/docker/statistics/Modules/PatientDiscounts/Routes/web.php +++ /dev/null @@ -1,125 +0,0 @@ - ['auth', 'disablebackbutton', 'user-locale','subscription-tracking']], function () { - /* DiscountCategory Controller */ - Route::get('/discount_category/inactive', 'DiscountCategoryController@inactive')->name('discount_category.inactive'); - Route::post('/discount_category/activate{id}', 'DiscountCategoryController@activate')->name('discount_category.activate'); - Route::resource('discount_category', 'DiscountCategoryController'); - - /* Patient Discounts Controller */ - Route::get('/discounts/inactive', 'DiscountController@inactive')->name('discounts.inactive'); - Route::post('/discounts/activate/{id}', 'DiscountController@activate')->name('discounts.activate'); - Route::any('/discounts/edit_insured_drugs/{patient_category_id}', 'DiscountController@edit_insured_drugs'); - Route::any('/discounts/store_edited_insured_drugs/', 'DiscountController@store_edited_insured_drugs')->name('discounts.store_edited_insured_drugs'); - - Route::any('discounts/add_dependants', 'DiscountController@add_category_patient_dependants'); - Route::any('discounts/add_dependants_to_category_patient', 'DiscountController@add_dependants_to_category_patient'); - Route::any('store_dependants_to_category_patient', 'DiscountController@store_dependants_to_category_patient'); - Route::any('view_patient_dependant_details', 'DiscountController@view_patient_dependant_details'); - Route::any('view_dependants_to_category_patient/{id}', 'DiscountController@view_dependants_to_category_patient'); - Route::any('generate_dependants_payment_invoice', 'DiscountController@generate_dependants_payment_invoice'); - Route::any('receive_dependants_payment', 'DiscountController@receive_dependants_payment'); - Route::get('search_dependant_name', 'DiscountController@search_dependant_name')->name('dependants.search_dependant_name'); - - Route::resource('discounts', 'DiscountController'); - - Route::any('clean_dependants_that_are_main_patients', 'DiscountController@clean_dependants_that_are_main_patients'); - - /* Price List */ - Route::get('/price_list_category/inactive', 'PriceListController@inactive')->name('price_list_category.inactive'); - Route::post('/price_list_category/activate{id}', 'PriceListController@activate')->name('price_list_category.activate'); - Route::any('/price_list_category/edit_pricing/{id}', 'PriceListController@edit_pricing'); - Route::any('/price_list_category/edit_pricing_sundries/{id}', 'PriceListController@edit_pricing_sundries')->name('price_list_category.edit_pricing_sundries'); - Route::any('/price_list_category/save_edit_pricing_sundries', 'PriceListController@save_edit_pricing_sundries')->name('price_list_category.save_edit_pricing_sundries'); - Route::any('/price_list_category/edit_pricing_procedures/{id}', 'PriceListController@edit_pricing_procedures')->name('price_list_category.edit_pricing_procedures'); - Route::any('/price_list_category/save_edit_pricing_procedures', 'PriceListController@save_edit_pricing_procedures')->name('price_list_category.save_edit_pricing_procedures'); - Route::any('/price_list_category/edit_pricing_investigations/{id}', 'PriceListController@edit_pricing_investigations')->name('price_list_category.edit_pricing_invesigations'); - Route::any('/price_list_category/save_edit_pricing_investigations', 'PriceListController@save_edit_pricing_investigations')->name('price_list_category.save_edit_pricing_investigations'); - Route::any('/price_list_category/edit_pricing_drugs/{id}', 'PriceListController@edit_pricing_drugs')->name('price_list_category.edit_pricing_drugs'); - Route::any('/price_list_category/save_edit_pricing_drugs', 'PriceListController@save_edit_pricing_drugs')->name('price_list_category.save_edit_pricing_drugs'); - Route::any('/price_list_category/edit_pricing_services/{id}', 'PriceListController@edit_pricing_services')->name('price_list_category.edit_pricing_services'); - Route::any('/price_list_category/save_edit_pricing_services', 'PriceListController@save_edit_pricing_services')->name('price_list_category.save_edit_pricing_services'); - Route::any('/price_list_category/edit_pricing_eye_glasses/{id}', 'PriceListController@edit_pricing_eye_glasses')->name('price_list_category.edit_pricing_eye_glasses'); - Route::any('/price_list_category/save_pricing_eye_glasses', 'PriceListController@save_pricing_eye_glasses')->name('price_list_category.save_pricing_eye_glasses'); - - Route::any('/price_list_category/apply_markup_to_drugs/{id}', 'PriceListController@apply_markup_to_drugs')->name('price_list_category.apply_markup_to_drugs'); - Route::any('/price_list_category/save_apply_markup_to_drugs', 'PriceListController@save_apply_markup_to_drugs')->name('price_list_category.save_apply_markup_to_drugs'); - Route::any('/price_list_category/apply_markup_to_eye_glasses/{id}', 'PriceListController@apply_markup_to_eye_glasses')->name('price_list_category.apply_markup_to_eye_glasses'); - Route::any('/price_list_category/save_apply_markup_to_eye_glasses', 'PriceListController@save_apply_markup_to_eye_glasses')->name('price_list_category.save_apply_markup_to_eye_glasses'); - Route::any('/price_list_category/apply_markup_to_investigations/{id}', 'PriceListController@apply_markup_to_investigations')->name('price_list_category.apply_markup_to_investigations'); - Route::any('/price_list_category/save_apply_markup_to_investigations', 'PriceListController@save_apply_markup_to_investigations')->name('price_list_category.save_apply_markup_to_investigations'); - Route::any('/price_list_category/apply_markup_to_procedures/{id}', 'PriceListController@apply_markup_to_procedures')->name('price_list_category.apply_markup_to_procedures'); - Route::any('/price_list_category/save_apply_markup_to_procedures', 'PriceListController@save_apply_markup_to_procedures')->name('price_list_category.save_apply_markup_to_procedures'); - Route::any('/price_list_category/apply_markup_to_services/{id}', 'PriceListController@apply_markup_to_services')->name('price_list_category.apply_markup_to_services'); - Route::any('/price_list_category/save_apply_markup_to_services', 'PriceListController@save_apply_markup_to_services')->name('price_list_category.save_apply_markup_to_services'); - Route::any('/price_list_category/apply_markup_to_sundries/{id}', 'PriceListController@apply_markup_to_sundries')->name('price_list_category.apply_markup_to_sundries'); - Route::any('/price_list_category/save_apply_markup_to_sundries', 'PriceListController@save_apply_markup_to_sundries')->name('price_list_category.save_apply_markup_to_sundries'); - - Route::resource('price_list_category', 'PriceListController'); - - // patient accounts - Route::any('/patient_accounts/statement', 'PatientAccountsController@statement')->name('patient_accounts.statement'); - Route::any('/patient_accounts/print_statement', 'PatientAccountsController@print_statement')->name('patient_accounts.print_statement'); - Route::any('/patient_accounts/make_deposit', 'PatientAccountsController@make_deposit')->name('patient_accounts.make_deposit'); - Route::any('/patient_accounts/store_deposit', 'PatientAccountsController@store_deposit')->name('patient_accounts.store_deposit'); - Route::any('/patient_accounts/print_receipt_pdf_details', 'PatientAccountsController@print_receipt_pdf_details')->name('patient_accounts.print_receipt_pdf_details'); - Route::any('/patient_accounts/refund_deposit', 'PatientAccountsController@refund_deposit')->name('patient_accounts.refund_deposit'); - Route::any('/patient_accounts/save_refund_deposit', 'PatientAccountsController@save_refund_deposit')->name('patient_accounts.save_refund_deposit'); - Route::any('/patient_accounts/deposits_report', 'PatientAccountsController@deposits_report')->name('patient_accounts.deposits_report'); - Route::any('/patient_accounts/consumptions_report', 'PatientAccountsController@consumptions_report')->name('patient_accounts.consumptions_report'); - Route::any('/patient_accounts/view_details/{patient_id}', 'PatientAccountsController@view_details'); - Route::any('/patient_accounts/cancel_deposit/{id}', 'PatientAccountsController@cancel_deposit'); - Route::any('/patient_accounts/refunds_report', 'PatientAccountsController@refunds_report')->name('patient_accounts.refunds_report'); - Route::any('/patient_accounts/cancel_refund/{id}', 'PatientAccountsController@cancel_refund'); - - /* Family accounts routes */ - Route::resource('family_accounts', 'FamilyAccountsController'); - Route::any('family_accounts/refund/{family_account_id}', 'FamilyAccountsController@refund'); - Route::any('family_accounts/store_family_refund', 'FamilyAccountsController@store_family_refund')->name('family_accounts.store_family_refund'); - Route::any('family_accounts/add_deposit', 'FamilyAccountsController@add_family_deposit')->name('family_accounts.add_deposit'); - Route::any('family_accounts/store_family_deposit', 'FamilyAccountsController@store_family_deposit')->name('family_accounts.store_family_deposit'); - Route::any('family_accounts_consumption_report', 'FamilyAccountsController@family_accounts_consumption_report')->name('family_accounts.consumption_report'); - Route::any('family_accounts_deposits_report', 'FamilyAccountsController@deposits_report')->name('family_accounts.deposit_report'); - Route::any('inactive_family_accounts', 'FamilyAccountsController@inactive')->name('family_accounts.inactive_family_accounts'); - Route::post('/family_accounts/activate{id}', 'FamilyAccountsController@activate')->name('family_accounts.activate'); - Route::any('family_accounts_search', 'FamilyAccountsController@family_accounts_search'); - Route::any('/family_accounts/custom_family_accounts/{category}', 'FamilyAccountsController@custom_family_accounts')->name('family_accounts.custom_family_accounts'); - Route::any('/family_accounts/custom_family_account/{patient_id}/{category}', 'FamilyAccountsController@custom_family_account')->name('family_accounts.custom_family_account'); - Route::any('print_family_account_receipt_pdf_details', 'FamilyAccountsController@print_family_account_receipt_pdf_details'); - Route::any('print_family_account_refund_receipt_pdf_details', 'FamilyAccountsController@print_family_account_refund_receipt_pdf_details'); - - Route::any('family_accounts/{family_account}/statement/', 'FamilyAccountsController@family_accounts_statements')->name('family_accounts.family_accounts_statements'); - Route::any('family_statement_print', 'FamilyAccountsController@family_statement_print'); - - Route::any('family_deposit_cancellation_reason', 'FamilyAccountsController@cancel_deposit_reason'); - Route::any('family_account_deposit_cancellation', 'FamilyAccountsController@cancel_deposit'); - Route::get('search_family_account_name', 'FamilyAccountsController@search_family_account_name')->name('family_accounts.search_family_account_name'); - - Route::any('get_family_acc_balance/{id}', 'FamilyAccountsController@get_family_account_balance'); - - // Patient Debtors - Route::any('patient_debtors/receive_debtor_payment/{id}', 'PatientDebtorsController@receive_debtor_payment')->name('patient_debtors.receive_debtor_payment'); - Route::post('patient_debtors/process_debtor_payment', 'PatientDebtorsController@process_debtor_payment')->name('patient_debtors.process_debtor_payment'); - Route::any('patient_debtors/history_debtor_payments/{debtor_id}', 'PatientDebtorsController@history_debtor_payments')->name('patient_debtors.history_debtor_payments'); - Route::any('patient_debtors/reverse_debtor_payment/{payment_id}', 'PatientDebtorsController@reverse_debtor_payment'); - Route::any('patient_debtors/print_debtor_receipt_pdf_details', 'PatientDebtorsController@print_debtor_receipt_pdf_details')->name('patient_debtors.print_debtor_receipt_pdf_details'); - Route::any('patient_debtors/reprint_debtor_receipt_pdf_details', 'PatientDebtorsController@reprint_debtor_receipt_pdf_details')->name('patient_debtors.reprint_debtor_receipt_pdf_details'); - Route::any('patient_debtors/debtor_payment_receipt', 'PatientDebtorsController@debtorPaymentReceipt')->name('patient_debtors.debtor_payment_receipt'); - Route::any('patient_debtors/write_off_debts', 'PatientDebtorsController@write_off_debts')->name('patient_debtors.write_off_debts'); - Route::any('patient_debtors/debtors', 'PatientDebtorsController@debtors')->name('patient_debtors.debtors'); - Route::any('patient_debtors/debtors_patient_search/{patient_id}', 'PatientDebtorsController@debtors_patient_search'); - - // Debt Plan - Route::any('patient_debtors/debt_plan_payment_receipt', 'PatientDebtorsController@debtPlanPaymentReceipt')->name('patient_debtors.debt_plan_payment_receipt'); - Route::any('patient_debtors/write_off_debt_plan', 'PatientDebtorsController@write_off_debt_plan')->name('patient_debtors.write_off_debt_plan'); - Route::any('patient_debtors/debt_plan_payment/{id}', 'PatientDebtorsController@debt_plan_payment')->name('patient_debtors.debt_plan_payment'); - Route::any('patient_debtors/debt_plan_receipt', 'PatientDebtorsController@debt_plan_receipt')->name('patient_debtors.debt_plan_receipt'); - Route::any('patient_debtors/staff_guarantors', 'PatientDebtorsController@staff_guarantors')->name('patient_debtors.staff_guarantors'); - Route::any('patient_debtors/debt_plan_patient_search/{patient_id}', 'PatientDebtorsController@debt_plan_patient_search'); - Route::any('patient_debtors/debt_plan_guarantor_agreement/{id}', 'PatientDebtorsController@debt_plan_guarantor_agreement')->name('patient_debtors.debt_plan_guarantor_agreement'); - Route::any('patient_debtors/receive_debt_plan_payment_staff', 'PatientDebtorsController@receive_debt_plan_payment_staff')->name('patient_debtors.receive_debt_plan_payments_staff'); - Route::any('patient_debtors/process_debt_plan_payment_staff', 'PatientDebtorsController@process_debt_plan_payment_staff')->name('patient_debtors.process_debt_plan_payment_staff'); - Route::any('family_deposit_reprint/{id}', 'FamilyAccountsController@family_deposit_reprint')->name('family_accounts.family_deposit_reprint'); -}); \ No newline at end of file diff --git a/docker/statistics/Modules/PatientDiscounts/bitbucket-pipelines.yml b/docker/statistics/Modules/PatientDiscounts/bitbucket-pipelines.yml deleted file mode 100644 index e850a8fd..00000000 --- a/docker/statistics/Modules/PatientDiscounts/bitbucket-pipelines.yml +++ /dev/null @@ -1,19 +0,0 @@ -image: alpine/git:latest - -pipelines: - branches: - main: - - step: - name: Merge To Beta - script: - - git remote set-url origin https://Kabricks:${APP_SECRET}@bitbucket.org/dcsammi/${BITBUCKET_REPO_SLUG} - - git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*" - - git fetch - - git checkout beta - - git merge main - - git commit --amend -m "[skip ci] Merge changes from main" - - git push - - step: - name: Deploy To Test - script: - - echo "Ready to deploy to demo or production!" diff --git a/docker/statistics/Modules/PatientDiscounts/module.json b/docker/statistics/Modules/PatientDiscounts/module.json deleted file mode 100644 index 228a99a8..00000000 --- a/docker/statistics/Modules/PatientDiscounts/module.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "PatientDiscounts", - "alias": "patient_discounts", - "description": "Patient discounts, price lists, patient dependants, family accounts and patient accounts", - "keywords": [], - "priority": 0, - "providers": [ - "Modules\\PatientDiscounts\\Providers\\PatientDiscountsServiceProvider" - ], - "files": [] -} diff --git a/docker/statistics/Modules/PatientFinance/Config/config.php b/docker/statistics/Modules/PatientFinance/Config/config.php deleted file mode 100644 index df6ec339..00000000 --- a/docker/statistics/Modules/PatientFinance/Config/config.php +++ /dev/null @@ -1,5 +0,0 @@ - 'PatientFinance' -]; diff --git a/docker/statistics/Modules/PatientFinance/Http/Controllers/CancelPatientTransactionsController.php b/docker/statistics/Modules/PatientFinance/Http/Controllers/CancelPatientTransactionsController.php deleted file mode 100755 index dbb51277..00000000 --- a/docker/statistics/Modules/PatientFinance/Http/Controllers/CancelPatientTransactionsController.php +++ /dev/null @@ -1,849 +0,0 @@ - "investigation_deposits", 3 => "treatment_deposits", - 4 => "procedure_deposits", 5 => "sundries_deposits", - 8 => "service_deposits", 10 => "service_deposits", 11 => "central_billing_deposits", 16 => "eye_glasses_deposits" - ]; - - $deposit_details = DB::table($billing_points_array[$billing_point]) - ->find($deposit_id); - - return view('patient_finance::cancel_patient_transactions.cancel_receipt', compact('deposit_details', 'billing_point')); - } - - public function cancel_invoice($billing_point, $deposit_id) { - $deposit_details = DB::table('patient_category_invoices') - ->find($deposit_id); - - return view('patient_finance::cancel_patient_transactions.cancel_invoice', compact('deposit_details', 'billing_point')); - } - - public function confirm_cancel_receipt(Request $request) { - $receipt_number = ""; - $patient_id = 0; - $episode_id = 0; - $originally_billed_by = 0; - $originally_billed_on = 0; - $billing_type = 1; - - if (isset($request->is_invoice) && $request->is_invoice ==1) { - $billing_type = 2; - $invoice_deposit = PatientCategoryInvoice::find($request->deposit_id); - $items = explode(",", $invoice_deposit->items_ids); - $quantities = explode(",", $invoice_deposit->items_quantity); - $receipt_number = $invoice_deposit->receipt_number; - $patient_id = $invoice_deposit->patient_id; - $episode_id = $invoice_deposit->episode_id; - $originally_billed_by = $invoice_deposit->created_by; - $originally_billed_on = $invoice_deposit->created_at; - $amount_cancelled = $invoice_deposit->patient_amount; - $order_ids_array = explode(",", $invoice_deposit->order_ids); - - if ($request->billing_point == 3) { - for($i = 0; $i < count($order_ids_array); $i++){ - Treatment::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 0]); - } - - DB::table('treatment_deposits') - ->where('receipt_number', $receipt_number) - ->delete(); - } elseif ($request->billing_point == 2) { - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedInvestigation::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 0]); - } - - DB::table('investigation_deposits') - ->where('receipt_number', $receipt_number) - ->delete(); - } elseif ($request->billing_point == 4) { - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedProcedure::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 0]); - } - - DB::table('procedure_deposits') - ->where('receipt_number', $receipt_number) - ->delete(); - } elseif ($request->billing_point == 5) { - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedSundry::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 0]); - } - - DB::table('sundries_deposits') - ->where('receipt_number', $receipt_number) - ->delete(); - } elseif ($request->billing_point == 8) { - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedService::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 0]); - } - - DB::table('service_deposits') - ->where('receipt_number', $receipt_number) - ->delete(); - } elseif ($request->billing_point == 10) { - DB::table('service_deposits') - ->where('receipt_number', $receipt_number) - ->delete(); - - $inpatient_info = InpatientBill::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->first(); - - if ($inpatient_info) { - $inpatient_info->amount_to_pay = $inpatient_info->amount_to_pay + $amount_cancelled; - $inpatient_info->save(); - } - - DB::table('inpatient_ward_discounts') - ->where('receipt_number', $receipt_number) - ->delete(); - } elseif ($request->billing_point == 16) { - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedEyeGlasses::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 0]); - } - - DB::table('eye_glasses_deposits') - ->where('receipt_number', $receipt_number) - ->delete(); - } - } else { - if ($request->billing_point == 3) { - $treatment_deposit = TreatmentDeposits::find($request->deposit_id); - $items = explode(",", $treatment_deposit->treatment_items); - $amounts = explode(",", $treatment_deposit->treatment_subtotals); - $treatment_quantities = explode(",", $treatment_deposit->treatment_quantities); - $receipt_number = $treatment_deposit->receipt_number; - $patient_id = $treatment_deposit->patient_id; - $episode_id = $treatment_deposit->episode_id; - $originally_billed_by = $treatment_deposit->created_by; - $originally_billed_on = $treatment_deposit->created_at; - $order_ids_array = explode(",", $treatment_deposit->order_ids); - - // reverse the chart of accounts - for($i = 0; $i < count($items); $i++){ - $this->update_coa_balance($items[$i], $amounts[$i], "drugs"); - $this->add_drug_stock($items[$i], $treatment_quantities[$i] ?? 0); - //reverse the batches too - reverse_dispensed_item_batches(1, $items[$i], $treatment_quantities[$i] ?? 0, $patient_id, 'treatments', $treatment_deposit->treatment_id); - } - - for($i = 0; $i < count($order_ids_array); $i++){ - Treatment::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 0]); - } - - DB::table('treatment_deposits') - ->where('id', $request->deposit_id) - ->delete(); - } elseif ($request->billing_point == 2) { - $investigation_deposit = InvestigationDeposit::find($request->deposit_id); - $items = explode(",", $investigation_deposit->investigation_items); - $amounts = explode(",", $investigation_deposit->investigation_amounts); - $receipt_number = $investigation_deposit->receipt_number; - $patient_id = $investigation_deposit->patient_id; - $episode_id = $investigation_deposit->episode_id; - $originally_billed_by = $investigation_deposit->created_by; - $originally_billed_on = $investigation_deposit->created_at; - $order_ids_array = explode(",", $investigation_deposit->order_ids); - - // reverse the chart of accounts - for($i = 0; $i < count($items); $i++){ - $this->update_coa_balance($items[$i], $amounts[$i], "investigations"); - } - - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedInvestigation::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 0]); - } - - DB::table('investigation_deposits') - ->where('id', $request->deposit_id) - ->delete(); - } elseif ($request->billing_point == 4) { - $procedure_deposit = ProcedureDeposit::find($request->deposit_id); - $items = explode(",", $procedure_deposit->procedure_items); - $amounts = explode(",", $procedure_deposit->procedure_amounts); - $receipt_number = $procedure_deposit->receipt_number; - $patient_id = $procedure_deposit->patient_id; - $episode_id = $procedure_deposit->episode_id; - $originally_billed_by = $procedure_deposit->created_by; - $originally_billed_on = $procedure_deposit->created_at; - $order_ids_array = explode(",", $procedure_deposit->order_ids); - - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedProcedure::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 0]); - } - - // reverse the chart of accounts - for($i = 0; $i < count($items); $i++){ - $this->update_coa_balance($items[$i], $amounts[$i], "procedures"); - } - - DB::table('procedure_deposits') - ->where('id', $request->deposit_id) - ->delete(); - } elseif ($request->billing_point == 5) { - $sundry_deposit = SundryDeposit::find($request->deposit_id); - $items = explode(",", $sundry_deposit->sundry_items); - $amounts = explode(",", $sundry_deposit->sundry_subtotals); - $quantities = explode(",", $sundry_deposit->sundry_quantity); - $receipt_number = $sundry_deposit->receipt_number; - $patient_id = $sundry_deposit->patient_id; - $episode_id = $sundry_deposit->episode_id; - $originally_billed_by = $sundry_deposit->created_by; - $originally_billed_on = $sundry_deposit->created_at; - $order_ids_array = explode(",", $sundry_deposit->order_ids); - - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedSundry::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 0]); - } - - // reverse the chart of accounts - for($i = 0; $i < count($items); $i++){ - $this->update_coa_balance($items[$i], $amounts[$i], "sundries"); - $this->add_sundry_stock($items[$i], $quantities[$i] ?? 0); - //reverse the batches too - reverse_dispensed_item_batches(2, $items[$i], $quantities[$i] ?? 0, $patient_id, 'ordered_sundries', null); - } - - DB::table('sundries_deposits') - ->where('id', $request->deposit_id) - ->delete(); - } elseif ($request->billing_point == 8) { - $service_deposit = ServiceDeposit::find($request->deposit_id); - $items = explode(",", $service_deposit->items_ids); - $amounts = explode(",", $service_deposit->items_amounts); - $receipt_number = $service_deposit->receipt_number; - $patient_id = $service_deposit->patient_id; - $episode_id = $service_deposit->episode_id; - $originally_billed_by = $service_deposit->created_by; - $originally_billed_on = $service_deposit->created_at; - $order_ids_array = explode(",", $service_deposit->order_ids); - - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedService::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 0]); - } - - // reverse the chart of accounts - for($i = 0; $i < count($items); $i++){ - $this->update_coa_balance($items[$i], $amounts[$i], "services"); - } - - DB::table('service_deposits') - ->where('id', $request->deposit_id) - ->delete(); - } elseif ($request->billing_point == 10) { - $service_deposit = ServiceDeposit::find($request->deposit_id); - $amount_cancelled = $service_deposit->patient_amount_paid; - $receipt_number = $service_deposit->receipt_number; - $patient_id = $service_deposit->patient_id; - $episode_id = $service_deposit->episode_id; - $originally_billed_by = $service_deposit->created_by; - $originally_billed_on = $service_deposit->created_at; - - DB::table('service_deposits') - ->where('id', $request->deposit_id) - ->delete(); - - $inpatient_info = InpatientBill::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->first(); - - if ($inpatient_info) { - $inpatient_info->amount_to_pay = $inpatient_info->amount_to_pay + $amount_cancelled; - $inpatient_info->amount_paid = $inpatient_info->amount_paid - $amount_cancelled; - $inpatient_info->save(); - } - - DB::table('inpatient_ward_discounts') - ->where('receipt_number', $receipt_number) - ->delete(); - $this->inpatientFinanceService->unsplit_inpatient_deposit($patient_id, $episode_id, $receipt_number, $amount_cancelled); - } elseif ($request->billing_point == 16) { - $optic_deposit = EyeGlassesDeposits::find($request->deposit_id); - $items = explode(",", $optic_deposit->items); - $amounts = explode(",", $optic_deposit->subtotals); - $quantities = explode(",", $optic_deposit->quantity); - $receipt_number = $optic_deposit->receipt_number; - $patient_id = $optic_deposit->patient_id; - $episode_id = $optic_deposit->episode_id; - $originally_billed_by = $optic_deposit->created_by; - $originally_billed_on = $optic_deposit->created_at; - $order_ids_array = explode(",", $optic_deposit->order_ids); - - for ($i = 0; $i < count($order_ids_array); $i++) { - OrderedEyeGlasses::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 0]); - } - - // reverse the chart of accounts - for ($i = 0; $i < count($items); $i++) { - $this->update_coa_balance($items[$i], $amounts[$i], "eye_glasses"); - $this->add_optics_stock($items[$i], $quantities[$i] ?? 0); - } - - DB::table('eye_glasses_deposits') - ->where('id', $request->deposit_id) - ->delete(); - } - } - - DB::table('cancel_patient_transactions')->insert([ - "patient_id" => $patient_id, - "episode_id" => $episode_id, - "billing_point" => $request->billing_point, - "originally_billed_by" => $originally_billed_by, - "originally_billed_on" => $originally_billed_on, - "cancellation_reason" => $request->cancellation_reason, - "receipt_number" => $receipt_number, - "billing_type" => $billing_type, - "created_by" => auth()->id(), - "created_at" => date('Y-m-d H:i:s'), - "updated_at" => date('Y-m-d H:i:s') - ]); - - // delete donor discounts - DB::table('donor_discount_details') - ->where('receipt_number', $receipt_number) - ->delete(); - - // remove any debts associated - DB::table('debtors') - ->where('receipt_number', $receipt_number) - ->delete(); - - // remove any debt plan associated - DB::table('debt_plan') - ->where('receipt_number', $receipt_number) - ->delete(); - - // delete the discounts - DB::table('discounts') - ->where('receipt_number', $receipt_number) - ->delete(); - - // delete the patient category invoice - DB::table('patient_category_invoices') - ->where('receipt_number', $receipt_number) - ->where('tag_id', $request->billing_point) - ->delete(); - - // delete the patient payment methods - DB::table('payment_methods_transactions') - ->where('receipt_number', $receipt_number) - ->delete(); - - // delete any records in the central billing - DB::table('central_billing_deposits') - ->where('receipt_number', $receipt_number) - ->where('tag_id', $request->billing_point) - ->delete(); - - // delete any records in the central billing - DB::table('patient_one_off_discounts') - ->where('receipt_number', $receipt_number) - ->delete(); - - // remove receipt number from staff performed - DB::table('staff_performed_services') - ->where('patient_receipt_number', $receipt_number) - ->update(['patient_receipt_number' => null]); - - if ($request->patient_amount_paid > 0) { - revert_cash_credits_to_daily_collection_account($request->patient_amount_paid, $receipt_number, true); - } - - // check if this receipt has any family/patient account consumptions attached and remove the refund amount - reverse_family_consumption_record($receipt_number, 0, true); - reverse_patient_account_consumption_record($receipt_number, 0, true); - reverse_dependant_consumption_record($receipt_number, 0, true); - - flash("Patient transaction has been cancelled")->success(); - - return redirect('/patient_finance/home'); - } - - public function cancel_central_billing($receipt_number) { - $deposit_details = DB::table('central_billing_deposits') - ->where('receipt_number', $receipt_number) - ->get(); - - return view('patient_finance::cancel_patient_transactions.cancel_central_billing', compact('deposit_details')); - } - - public function confirm_cancel_central_billing_receipt(Request $request) { - $receipt_number = $request->receipt_number; - - $deposit_details = DB::table('central_billing_deposits') - ->where('receipt_number', $receipt_number) - ->get(); - - $patient_id = $deposit_details[0]->patient_id; - $episode_id = $deposit_details[0]->episode_id; - $originally_billed_by = $deposit_details[0]->created_by; - $originally_billed_on = $deposit_details[0]->created_at; - - foreach ($deposit_details as $deposit_detail) { - $items = explode(",", $deposit_detail->items_ids); - $amounts = explode(",", $deposit_detail->items_amounts); - $order_ids_array = explode(",", $deposit_detail->order_ids); - $items_quantity_array = explode(",", $deposit_detail->items_quantity); - - if ($deposit_detail->tag_id == 2) { - // investigations - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedInvestigation::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 0]); - } - - for($i = 0; $i < count($items); $i++){ - $this->update_coa_balance($items[$i], $amounts[$i], "investigations"); - } - - DB::table('investigation_deposits') - ->where('receipt_number', $receipt_number) - ->delete(); - } else if ($deposit_detail->tag_id == 3) { - // treatments - for($i = 0; $i < count($order_ids_array); $i++){ - Treatment::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 0]); - } - - DB::table('treatment_deposits') - ->where('receipt_number', $receipt_number) - ->delete(); - - // reverse the chart of accounts - for($i = 0; $i < count($items); $i++){ - $this->update_coa_balance($items[$i], $amounts[$i], "drugs"); - $this->add_drug_stock($items[$i], $items_quantity_array[$i] ?? 0); - //reverse the batches too - $treatment = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - if ($treatment) { - reverse_dispensed_item_batches(1, $items[$i], $items_quantity_array[$i] ?? 0, $patient_id, 'treatments', $treatment->id); - } - } - } else if ($deposit_detail->tag_id == 4) { - // procedures - - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedProcedure::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 0]); - } - - // reverse the chart of accounts - for($i = 0; $i < count($items); $i++){ - $this->update_coa_balance($items[$i], $amounts[$i], "procedures"); - } - - DB::table('procedure_deposits') - ->where('receipt_number', $receipt_number) - ->delete(); - } else if ($deposit_detail->tag_id == 5) { - // sundries - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedSundry::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 0]); - } - - // reverse the chart of accounts - for($i = 0; $i < count($items); $i++){ - $this->update_coa_balance($items[$i], $amounts[$i], "sundries"); - $this->add_sundry_stock($items[$i], $items_quantity_array[$i] ?? 0); - //reverse the batches too - reverse_dispensed_item_batches(2, $items[$i], $items_quantity_array[$i] ?? 0, $patient_id, 'ordered_sundries', null); - } - - DB::table('sundries_deposits') - ->where('receipt_number', $receipt_number) - ->delete(); - } else if ($deposit_detail->tag_id == 8) { - // services/consultations - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedService::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 0]); - } - // check for doctor's consultation - $doc_consultation_id = get_consultation_service_id_allocated_at_episode_consultation($patient_id, $episode_id); - - // reverse the chart of accounts - for($i = 0; $i < count($items); $i++){ - $this->update_coa_balance($items[$i], $amounts[$i], "services"); - } - - DB::table('service_deposits') - ->where('receipt_number', $receipt_number) - ->delete(); - } else if ($deposit_detail->tag_id == 16) { - // eye glasses - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedEyeGlasses::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 0]); - } - - // reverse the chart of accounts - for($i = 0; $i < count($items); $i++){ - $this->update_coa_balance($items[$i], $amounts[$i], "eye_glasses"); - $this->add_optics_stock($items[$i], $items_quantity_array[$i] ?? 0); - } - - DB::table('eye_glasses_deposits') - ->where('receipt_number', $receipt_number) - ->delete(); - } - } - - DB::table('cancel_patient_transactions')->insert([ - "patient_id" => $patient_id, - "episode_id" => $episode_id, - "billing_point" => 11, - "originally_billed_by" => $originally_billed_by, - "originally_billed_on" => $originally_billed_on, - "cancellation_reason" => $request->cancellation_reason, - "receipt_number" => $receipt_number, - "created_by" => auth()->id(), - "created_at" => date('Y-m-d H:i:s'), - "updated_at" => date('Y-m-d H:i:s') - ]); - - // delete donor discounts - DB::table('donor_discount_details') - ->where('receipt_number', $receipt_number) - ->delete(); - - // remove any debts associated - DB::table('debtors') - ->where('receipt_number', $receipt_number) - ->delete(); - - // remove any debt plan associated - DB::table('debt_plan') - ->where('receipt_number', $receipt_number) - ->delete(); - - // delete the discounts - DB::table('discounts') - ->where('receipt_number', $receipt_number) - ->delete(); - - // delete the patient category invoice - DB::table('patient_category_invoices') - ->where('receipt_number', $receipt_number) - ->delete(); - - // delete the patient payment methods - DB::table('payment_methods_transactions') - ->where('receipt_number', $receipt_number) - ->delete(); - - // delete any records in the central billing - DB::table('central_billing_deposits') - ->where('receipt_number', $receipt_number) - ->delete(); - - // remove receipt number from staff performed - DB::table('staff_performed_services') - ->where('patient_receipt_number', $receipt_number) - ->update(['patient_receipt_number' => null]); - - // delete any records in the central billing - DB::table('patient_one_off_discounts') - ->where('receipt_number', $receipt_number) - ->delete(); - - if ($request->patient_amount_paid > 0) { - revert_cash_credits_to_daily_collection_account($request->patient_amount_paid, $receipt_number, true); - } - - // check if this receipt has any family/patient account consumptions attached and remove the refund amount - reverse_family_consumption_record($receipt_number, 0, true); - reverse_patient_account_consumption_record($receipt_number, 0, true); - - flash("Central billing patient transaction has been cancelled")->success(); - - return redirect('/patient_finance/home'); - } - - public function update_coa_balance ($item_id, $amount, $table) { - $account_id = get_name($item_id, "id", "account_id", $table); - $account_balance = get_name($account_id, "id", "balance", "chart_of_accounts"); - - $new_balance = $account_balance - $amount; - ChartOfAccount::where(['id' => $account_id])->update(['balance' => $new_balance]); - } - - public function cancelled_patient_transactions_report(Request $request) { - $search_text = ""; - - if (isset($request->user_id) && $request->user_id != 0) { - $cancellations = DB::table('cancel_patient_transactions') - ->where('created_by', $request->user_id)->get(); - - $search_text = "Showing results for " . get_full_name($request->user_id, 'id', 'first_name', 'last_name', 'users'); - } else { - if($request->search_by == 1){ - // custom date - $start_date = Carbon::createFromFormat('d/m/Y', $request->reg_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->reg_date)->endOfDay()->toDateTimeString(); - - $search_text = "Showing cancellations made between " . streamline_date_plain($start_date) . " and " . streamline_date_plain($end_date); - } elseif($request->search_by == 2){ - // custom date range - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->end_date)->endOfDay()->toDateTimeString(); - - $search_text = "Showing cancellations made between " . streamline_date_plain($start_date) . " and " . streamline_date_plain($end_date); - } else { - // last 24 hours - $start_date = Carbon::now()->subDay()->toDateTimeString(); - $end_date = Carbon::now()->toDateTimeString(); - - $search_text = "Showing cancellations in the past 24 hours"; - } - - $cancellations = DB::table('cancel_patient_transactions') - ->whereBetween('created_at', [$start_date, $end_date])->get(); - } - - $tags = FinancePointTag::pluck('name', 'id'); - - return view('patient_finance::cancel_patient_transactions.cancelled_patient_transactions_report', compact('search_text', 'cancellations', 'tags')); - } - - public function add_drug_stock($drug_id, $amount_returned) { - if (get_inventory_reduction_point() == 2) { - $drug = Drug::withTrashed()->find($drug_id); - $current_stock = $drug->pharmacy_stock; - $new_stock = $current_stock + $amount_returned; - $drug->pharmacy_stock = $new_stock; - $drug->update(); - } - } - - public function add_sundry_stock($sundry_id, $amount_returned) { - if (get_inventory_reduction_point() == 2) { - $sundry = Sundry::withTrashed()->find($sundry_id); - $current_stock = $sundry->pharmacy_stock; - $new_stock = $current_stock + $amount_returned; - $sundry->pharmacy_stock = $new_stock; - $sundry->update(); - } - } - - public function add_optics_stock($id, $amount_returned) { - if (get_inventory_reduction_point() == 2) { - $optic = EyeGlasses::withTrashed()->find($id); - $current_stock = $optic->store_stock; - $new_stock = $current_stock - $amount_returned; - $optic->store_stock = $new_stock; - $optic->update(); - } - } - - public function cancel_chi_deposit($receipt_number) { - $deposit_details = DB::table('chi_deposits') - ->where('receipt_number', $receipt_number) - ->get(); - - return view('patient_finance::cancel_patient_transactions.cancel_chi_deposit', compact('deposit_details')); - } - - public function confirm_cancel_chi_deposit(Request $request) { - $receipt_number = $request->receipt_number; - - $deposit_details = DB::table('chi_deposits') - ->where('receipt_number', $receipt_number) - ->get(); - - $patient_id = $deposit_details[0]->patient_id; - $episode_id = $deposit_details[0]->episode_id; - $originally_billed_by = $deposit_details[0]->created_by; - $originally_billed_on = $deposit_details[0]->created_at; - - foreach ($deposit_details as $deposit_detail) { - $items = explode(",", $deposit_detail->items_ids); - $order_ids_array = explode(",", $deposit_detail->order_ids); - $items_quantity_array = explode(",", $deposit_detail->items_quantity); - - if ($deposit_detail->tag_id == 2) { - // investigations - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedInvestigation::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 0]); - - $this->undo_insurance_claim($order_ids_array[$i], 3); - } - - DB::table('investigation_deposits') - ->where('receipt_number', $receipt_number) - ->delete(); - } else if ($deposit_detail->tag_id == 3) { - // treatments - for($i = 0; $i < count($order_ids_array); $i++){ - Treatment::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 0]); - - $this->undo_insurance_claim($order_ids_array[$i], 4); - } - - DB::table('treatment_deposits') - ->where('receipt_number', $receipt_number) - ->delete(); - - // reverse the chart of accounts - for($i = 0; $i < count($items); $i++){ - $this->add_drug_stock($items[$i], $items_quantity_array[$i] ?? 0); - //reverse the batches too - $treatment = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - if ($treatment) { - reverse_dispensed_item_batches(1, $items[$i], $items_quantity_array[$i] ?? 0, $patient_id, 'treatments', $treatment->id); - } - } - } else if ($deposit_detail->tag_id == 4) { - // procedures - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedProcedure::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 0]); - - $this->undo_insurance_claim($order_ids_array[$i], 2); - } - - DB::table('procedure_deposits') - ->where('receipt_number', $receipt_number) - ->delete(); - } else if ($deposit_detail->tag_id == 5) { - // sundries - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedSundry::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 0]); - - $this->undo_insurance_claim($order_ids_array[$i], 5); - } - - // reverse the chart of accounts - for($i = 0; $i < count($items); $i++){ - $this->add_sundry_stock($items[$i], $items_quantity_array[$i] ?? 0); - //reverse the batches too - reverse_dispensed_item_batches(2, $items[$i], $items_quantity_array[$i] ?? 0, $patient_id, 'ordered_sundries', null); - } - - DB::table('sundries_deposits') - ->where('receipt_number', $receipt_number) - ->delete(); - } else if ($deposit_detail->tag_id == 8) { - // services/consultations - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedService::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 0]); - - $this->undo_insurance_claim($order_ids_array[$i], 1); - } - - DB::table('service_deposits') - ->where('receipt_number', $receipt_number) - ->delete(); - } - } - - DB::table('cancel_patient_transactions')->insert([ - "patient_id" => $patient_id, - "episode_id" => $episode_id, - "billing_point" => 18, - "originally_billed_by" => $originally_billed_by, - "originally_billed_on" => $originally_billed_on, - "cancellation_reason" => $request->cancellation_reason, - "receipt_number" => $receipt_number, - "created_by" => auth()->id(), - "created_at" => date('Y-m-d H:i:s'), - "updated_at" => date('Y-m-d H:i:s') - ]); - - // remove any debts associated - DB::table('debtors') - ->where('receipt_number', $receipt_number) - ->delete(); - - // remove any debt plan associated - DB::table('debt_plan') - ->where('receipt_number', $receipt_number) - ->delete(); - - // delete the discounts - DB::table('discounts') - ->where('receipt_number', $receipt_number) - ->delete(); - - // delete the patient payment methods - DB::table('payment_methods_transactions') - ->where('receipt_number', $receipt_number) - ->delete(); - - // delete any records in the central billing - DB::table('chi_deposits') - ->where('receipt_number', $receipt_number) - ->delete(); - - // remove receipt number from staff performed - DB::table('staff_performed_services') - ->where('patient_receipt_number', $receipt_number) - ->update(['patient_receipt_number' => null]); - - // delete any records in the central billing - DB::table('patient_one_off_discounts') - ->where('receipt_number', $receipt_number) - ->delete(); - - if ($request->patient_amount_paid > 0) { - revert_cash_credits_to_daily_collection_account($request->patient_amount_paid, $receipt_number, true); - } - - // check if this receipt has any family/patient account consumptions attached and remove the refund amount - reverse_family_consumption_record($receipt_number, 0, true); - reverse_patient_account_consumption_record($receipt_number, 0, true); - - flash("CHI billing patient transaction has been cancelled")->success(); - - return redirect('/patient_finance/home'); - } - - public function undo_insurance_claim($order_id, $item_type) { - $claim = InsuranceClaim::where('order_id', $order_id) - ->where('item_type', $item_type) - ->first(); - - if ($claim) { - $service_ids = explode(",", $claim->service_ids); - $tariff_amounts = explode(",", $claim->tariff_amounts); - $benefit_ids_array = explode(",", $claim->benefit_ids); - $patient_id = $claim->patient_id; - $insurance_member = DB::table('insurance_members')->where('patient_id', $patient_id)->select('family_id', 'group_id')->first(); - - for($i = 0; $i < count($service_ids); $i++) { - // check if consumption was registered and reverse - if ($tariff_amounts[$i] > 0) { - remove_insurance_item_consumption($patient_id, $insurance_member->family_id, $benefit_ids_array[$i], $service_ids[$i], $claim->item_type, $tariff_amounts[$i]); - } - } - - // finally generate a new claim - generate_insurance_claim($order_id, $claim->item_type); - } - } -} diff --git a/docker/statistics/Modules/PatientFinance/Http/Controllers/Controller.php b/docker/statistics/Modules/PatientFinance/Http/Controllers/Controller.php deleted file mode 100755 index af285857..00000000 --- a/docker/statistics/Modules/PatientFinance/Http/Controllers/Controller.php +++ /dev/null @@ -1,13 +0,0 @@ -middleware('auth'); - $this->middleware('permission:finance-patient-search', ['only' => ['search_patients', 'search_results','home']]); - $this->middleware('permission:make-sundries-deposits', ['only' => ['make_deposit_sundries', 'store_sundries_deposit','print_sundries_receipt']]); - $this->middleware('permission:make-procedures-deposits', ['only' => ['make_deposit_procedures', 'store_deposit_procedures','print_procedures_receipt']]); - $this->middleware('permission:make-investigations-deposits', ['only' => ['make_deposit_investigations', 'store_deposit_investigations','print_investigation_receipt']]); - $this->middleware('permission:make-treatment-deposits', ['only' => ['make_deposit_treatment', 'store_deposit_treatment','print_treatment_receipt']]); - $this->middleware('permission:make-co-payments-deposits', ['only' => ['make_deposit_co_payments', 'store_deposit_services','print_service_receipt']]); - $this->middleware('permission:make-other-services-deposits', ['only' => ['make_deposit_other_services', 'store_deposit_services','print_service_receipt']]); - $this->middleware('permission:make-consultation-deposits', ['only' => ['make_deposit_consultation', 'store_deposit_services','print_service_receipt']]); - $this->middleware('permission:make-central-billing', ['only' => ['make_deposit_central_billing', 'store_deposit_central_billing']]); - } - - /** - * Display the patient search for the finance section - * - * @return \Illuminate\Http\Response - */ - public function search_patients(){ - $PatientCount = Patient::count(); - $patients = Patient::orderBy('id', 'desc')->paginate(20); - $patient_categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $patient_numbers = Patient::orderBy('number')->distinct()->pluck('number'); - $first_names = Patient::orderBy('first_name')->distinct()->pluck('first_name'); - $last_names = Patient::orderBy('last_name')->distinct()->pluck('last_name'); - $national_ids = Patient::orderBy('national_id')->distinct()->pluck('national_id'); - $subcounties = Subcounty::pluck("name", "id"); - $parishes = Parish::pluck("name", "id"); - $villages = Village::pluck("name", "id"); - $insurance_groups = InsuranceGroup::pluck("name", "id"); - - return view('patient_finance::patient_finance.search_patients',compact('PatientCount','patients', 'patient_categories', 'patient_numbers', 'first_names', 'last_names','national_ids','insurance_groups','subcounties','parishes','villages')); - } - - /** - * Search for the patient information given in the search and display results - * - * @param Request $request - * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View - */ - public function search_results(Request $request){ - $criteria = ''; - $filters = []; - $subcounty_ids = []; - $parish_ids = []; - $village_ids = []; - $insurance_group_ids = []; - $patient_category_ids = []; - - if (!empty($request->number)) { - array_push($filters, ['number', 'LIKE', '%' . $request->number . '%']); - $criteria .= 'Number (' . $request->number . ') '; - } - - if (!empty($request->first_name)) { - array_push($filters, ['first_name', 'LIKE', '%' . $request->first_name . '%']); - $criteria .= 'First name (' . $request->first_name . ') '; - } - - if (!empty($request->last_name)) { - array_push($filters, ['last_name', 'LIKE', '%' . $request->last_name . '%']); - $criteria .= 'Last name (' . $request->last_name . ') '; - } - - if (!empty($request->national_id)) { - array_push($filters, ['national_id', 'LIKE', '%' . $request->national_id . '%']); - $criteria .= 'National ID (' . $request->national_id . ') '; - } - - if (!empty($request->subcounty)) { - $subcounty_ids = DB::table('subcounties')->where('name', 'LIKE', '%' . $request->subcounty . '%')->pluck('id'); - $criteria .= 'Subcounty (' . $request->subcounty . ') '; - } - - if (!empty($request->parish)) { - $parish_ids = DB::table('parishes')->where('name', 'LIKE', '%' . $request->parish . '%')->pluck('id'); - $criteria .= 'Parish (' . $request->parish . ') '; - } - - if (!empty($request->village)) { - $village_ids = DB::table('villages')->where('name', 'LIKE', '%' . $request->village . '%')->pluck('id'); - $criteria .= 'Village (' . $request->village . ') '; - } - - if (!empty($request->insurance_group)) { - $insurance_group_ids = DB::table('insurance_groups')->where('name', 'LIKE', '%' . $request->insurance_group . '%')->pluck('id'); - $criteria .= 'Insurance group (' . $request->insurance_group . ') '; - } - - if (!empty($request->patient_category)) { - $patient_category_ids = DB::table('patient_categories')->where('name', 'LIKE', '%' . $request->patient_category . '%')->pluck('id'); - $criteria .= 'Category (' . $request->patient_category . ') '; - } - - $patients = Patient::orderBy('first_name', 'asc') - ->where($filters) - ->orwhereIn('subcounty_id', $subcounty_ids) - ->orWhereIn('parish_id', $parish_ids) - ->orWhereIn('village_id', $village_ids) - //->orWhereIn('insurance_group', $insurance_group_ids) - ->orWhereIn('category_id', $patient_category_ids) - ->paginate(50); - - $marital_statuses = DB::table('marital_statuses')->pluck("name", "id")->toArray(); - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id")->toArray(); - $occupations = DB::table('occupations')->pluck('name', 'id')->toArray(); - - return view('patient_finance::patient_finance.search_results',compact('criteria','patients','marital_statuses','categories','occupations')); - } - - /** - * Set patient session for finance - * - * @param $id - * @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector - */ - public function set_patient_session($id){ - session()->put(['patient_id' => $id]); - - return redirect('/patient_finance/home'); - } - - /** - * Show the patient finance home - * - * @return \Illuminate\Http\Response - */ - public function home(){ - - $patient_id = session()->get('patient_id'); - $episodes = PatientEpisode::where(['patient_id'=>$patient_id])->orderBy('id','desc')->paginate(20); - $patient = Patient::find($patient_id); - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $drug_categories = DB::table('drug_categories')->get(); - $marital_statuses = DB::table('marital_statuses')->pluck("name", "id"); - - $districts = DB::table('districts')->pluck('name', 'id'); - $counties = DB::table('counties')->pluck('name', 'id'); - $subcounties = DB::table('subcounties')->pluck('name', 'id'); - $parishes = DB::table('parishes')->pluck('name', 'id'); - $villages = DB::table('villages')->pluck('name', 'id'); - $relationships = DB::table('family_relations')->pluck('name', 'id'); - $occupations = DB::table('occupations')->pluck('name', 'id'); - $patient_categories = DB::table('patient_categories')->where('available', 1)->pluck('name', 'id'); - - $pay_later_categories = PatientDiscount::where('pay_later', 1)->pluck('patient_category')->toArray(); - - return view('patient_finance::patient_finance.home',compact('episodes','patient','categories','drug_categories','marital_statuses', 'patient_id', - 'districts', 'subcounties', 'counties', 'parishes', 'villages', 'relationships', 'occupations', 'patient_categories', 'pay_later_categories')); - } - - /** - * Select appropriate payment avenue according to selected input - * - * @param Request $request - * @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector - */ - public function select_payment_option(Request $request){ - - // get the selected episode id and set the session - if (!is_null($request->episode_id)) { - session()->put(['episode_id' => $request->episode_id]); - } - - if (!is_null($request->patient_id)) { - session()->put(['patient_id' => $request->patient_id]); - } - - $patient_id = session()->get('patient_id'); - $episode_id = $request->episode_id; - - // check which payment option - if(isset($request->consultation)){ - if (patient_insurance_status($patient_id) == 1 && are_item_type_claims_available($episode_id, 1)) { - return redirect('/patient_finance/make_chi_deposits/1'); - } else { - return redirect('/patient_finance/make_deposit_consultation'); - } - } elseif (isset($request->investigations)){ - if (patient_insurance_status($patient_id) == 1 && are_item_type_claims_available($episode_id, 3)) { - return redirect('/patient_finance/make_chi_deposits/3'); - } else { - return redirect('/patient_finance/make_deposit_investigations'); - } - } elseif (isset($request->treatment)){ - if (patient_insurance_status($patient_id) == 1 && are_item_type_claims_available($episode_id, 4)) { - return redirect('/patient_finance/make_chi_deposits/4'); - } else { - return redirect('/patient_finance/make_deposit_treatment'); - } - } elseif (isset($request->other_services)){ - if (patient_insurance_status($patient_id) == 1 && are_item_type_claims_available($episode_id, 1)) { - return redirect('/patient_finance/make_chi_deposits/1'); - } else { - return redirect('/patient_finance/make_deposit_other_services'); - } - } elseif (isset($request->co_payments)){ - if (patient_insurance_status($patient_id) == 1 && are_item_type_claims_available($episode_id, 1)) { - return redirect('/patient_finance/make_chi_deposits/1'); - } else { - return redirect('/patient_finance/make_deposit_co_payments'); - } - } elseif (isset($request->procedures)){ - if (patient_insurance_status($patient_id) == 1 && are_item_type_claims_available($episode_id, 2)) { - return redirect('/patient_finance/make_chi_deposits/2'); - } else { - return redirect('/patient_finance/make_deposit_procedures'); - } - } elseif (isset($request->sundries)){ - if (patient_insurance_status($patient_id) == 1 && are_item_type_claims_available($episode_id, 5)) { - return redirect('/patient_finance/make_chi_deposits/5'); - } else { - return redirect('/patient_finance/make_deposit_sundries'); - } - } elseif (isset($request->central_billing)){ - if (patient_insurance_status($patient_id) == 1 && are_item_type_claims_available($episode_id, 0)) { - return redirect('/patient_finance/make_chi_deposits/0'); - } else { - return redirect('/patient_finance/make_deposit_central_billing'); - } - } elseif (isset($request->inpatient_deposit)){ - // get the patient id - $patient_id = session()->get("patient_id"); - - // check if patient has a record with the inpatient - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id,'episode_id' => $request->episode_id])->orderBy('created_at','desc')->first(); - - if ($inpatient_info){ - return redirect('/patient_finance/make_inpatient_deposit'); - } else { - flash("Patient has no inpatient records to make inpatient deposits")->error(); - return redirect()->back(); - } - } elseif (isset($request->inpatient_billing)){ - // get the patient id - $patient_id = session()->get("patient_id"); - - // check if patient has a record with the inpatient - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id,'episode_id' => $request->episode_id])->first(); - - if ($inpatient_info){ - return redirect('inpatient_billing'); - } else { - flash("Patient has no inpatient records to enable inpatient billing")->error(); - return redirect()->back(); - } - } elseif (isset($request->refund_patient)){ - return redirect('/patient_refund/choose_refund_point'); - } elseif (isset($request->edit_claim_number)){ - session()->put(['edit_claim_number' => 'finance_home']); - return redirect('edit_claim_number'); - } elseif (isset($request->patient_debts)){ - $debt_paid = $this->check_debt($request->episode_id); - - if ($debt_paid === null) { - flash("Patient has no active debt records")->error(); - return redirect()->back(); - } else { - return redirect('patient_debtors/debtors_patient_search/' . session()->get("patient_id")); - } - }elseif (isset($request->patient_debt_plan)){ - $debt_plan_paid = $this->check_patient_debt_plan($request->episode_id); - - if ($debt_plan_paid === null) { - flash("Patient has no debt plan records")->error(); - return redirect()->back(); - } else { - return redirect('patient_debtors/debt_plan_patient_search/' . session()->get("patient_id")); - } - } elseif (isset($request->optical_items)){ - return redirect('/patient_finance/make_deposit_optical_items'); - } else { - return redirect('home'); - } - - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create(){ - // - } - - public function make_deposit_sundries(Request $request){ - - if (isset($request->price_list_category_id) && $request->price_list_category_id != 0){ - $price_list_set = $request->price_list_category_id; - } else { - $price_list_set = false; - } - - $price_list_categories = PriceListCategories::select('patient_category_id', 'id')->get(); - - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $patient = Patient::find($patient_id); - $episode = PatientEpisode::find($episode_id); - - $categories = DB::table('patient_categories')->where('available', 1)->pluck('name', 'id'); - $drug_categories = DB::table('drug_categories')->get(); - $marital_statuses = DB::table('marital_statuses')->pluck('name', 'id'); - $discount = PatientDiscount::where(['patient_category'=>$patient->category_id])->first(); - $discount_options = DiscountCategories::where(['patient_category' => $patient->category_id])->pluck('name','id')->toArray(); - $discount_options = ['' => '- Select Discount -'] + $discount_options; - $payment_arrangement = DB::table('debt_plan_arrangements')->pluck('name', 'id')->toArray(); - $payment_arrangement = ['' => '- select -'] + $payment_arrangement; - $staff_guarantors = DB::table('users')->pluck('first_name', 'id')->toArray(); - - foreach ($staff_guarantors as $key => $value) { - $full_name = $value . " " . get_name($key, "id", "last_name", "users"); - $staff_guarantors[$key] = $full_name; - } - - $ordered_sundries = OrderedSundry::where(['episode_id' => $episode_id,'payment_status' => '0' ,'inpatient_bill_generated' => 0])->get(); - - // check if there are any paid procedure to display receipt - $paid_sundries = SundryDeposit::where(['episode_id' => $episode_id])->get(); - $invoiced_sundries = PatientCategoryInvoice::where('episode_id', $episode_id)->where('tag_id', 5)->get(); - - $patient_payment_methods = PatientPaymentMethod::pluck('name', 'id'); - $patient_payment_methods_options = ""; - foreach ($patient_payment_methods as $key => $value) { - $patient_payment_methods_options .= ''; - } - - $patient_unpaid_items_array = explode(",", $this->does_patient_have_unpaid_items($patient_id, $episode_id)); - $patient_unpaid_items = $patient_unpaid_items_array[0]; - $patient_debts = $patient_unpaid_items_array[1]; - - $non_staff_guarantors = DB::table('non_staff_guarantors')->pluck('first_name', 'id')->toArray(); - foreach ($non_staff_guarantors as $key => $value) { - $full_guarantor_name = $value . " " . get_name($key, "id", "last_name", "non_staff_guarantors"); - $non_staff_guarantors[$key] = $full_guarantor_name; - } - - return view('patient_finance::patient_finance.make_sundries_deposit',compact('ordered_sundries','patient_id','episode_id', 'patient_unpaid_items', 'patient_debts', - 'patient','episode','categories','drug_categories','marital_statuses','discount','discount_options','payment_arrangement', 'invoiced_sundries', - 'staff_guarantors', 'paid_sundries', 'price_list_set', 'price_list_categories', 'patient_payment_methods', 'patient_payment_methods_options', 'non_staff_guarantors')); - } - - public function store_sundries_deposit(Request $request){ - $wallets_amount = 0; - - if ($request->has('patient_account_pay_with')) { - if ($request->patient_account_pay_with > $request->patient_account_balance) { - // amount is more than is on the patient account - flash('Patient account balance is less than the current bill.')->error(); - return redirect()->back()->withInput(); - } - - $wallets_amount += $request->patient_account_pay_with; - } - - if ($request->has('family_account_pay_with')) { - $this_patient_to_pay = $request->family_account_pay_with; - $this_family_account_balance = $request->family_account_balance; - $family_account_credit_limit = $request->family_account_credit_limit; - $wallets_amount += $request->family_account_pay_with; - - if (!is_family_consumption_allowed($this_patient_to_pay, $this_family_account_balance, $family_account_credit_limit)) { - return redirect()->back()->withInput(); - } - } - - //check if patient is a dependant of another patient e.g main patient with a discount. If so, let Neo enter the matrix - if ($request->has('dependants_balance')) { - $original_dependants_balance = $request->dependants_balance; - $original_patient_category_to_pay = $request->patient_category_to_pay; - - //if new dependants balance is -ve, make it zero - $new_dependants_balance = $request->dependants_balance < 0 ? 0 : $request->dependants_balance; - $request->merge(['dependants_balance' => $new_dependants_balance]); - - //recalculate the patient category to pay - if ($request->patient_category_to_pay > $original_dependants_balance) { - if ($original_dependants_balance < 0) { - $patient_category_to_pay = $request->patient_category_to_pay; - } else{ - $patient_category_to_pay = $request->patient_category_to_pay - $original_dependants_balance; - } - } else { - $patient_category_to_pay = 0; - } - $request->merge(['patient_category_to_pay' => $patient_category_to_pay]); - - //make the main patient's patient category override the category of the dependant - $patient_is_a_dependant_of = patient_is_a_dependant_of($request->patient_id); - $main_patient_patient_category = get_name($patient_is_a_dependant_of, "id", "category_id", "patients"); - $request->merge(['patient_category_id' => $main_patient_patient_category]); - } - - $request->merge(['wallets_amount' => $wallets_amount]); - - if ($request->patient_unpaid_debts > 0) { - $this->debtorsService->pay_for_patient_debt($request->episode_id, $request->patient_unpaid_debts); - } - - $patient_unpaid_debts = $request->patient_unpaid_debts; - - $sundries_deposit = new SundriesDeposit; - - // begin transaction - DB::beginTransaction(); - - try { - // send data to be saved in treatment deposits table and get the is_invoice flag and receipt number - $return_data_array = explode(",", $sundries_deposit->store_payment($request)); - - // all good so we can commit - DB::commit(); - } catch (\Exception | \Error $exception) { - DB::rollback(); - - DB::table('system_errors')->insert([ - 'error_message' => $exception->getMessage(), 'error_trace' => $exception->getTraceAsString(), - 'logged_in_user' => Auth::id() - ]); - - flash("An error occurred. Please try again or contact Stre@mline Support")->error(); - return back()->withInput(); - } - - // is_invoice flag - $is_invoice = $return_data_array[0]; - - // receipt number - $receipt_number = $return_data_array[1]; - - if ($request->has('patient_account_pay_with')) { - record_patient_accounts_consumption($request->patient_id, $request->episode_id, $request->patient_account_pay_with, $request->tag_id, $receipt_number); - } - - if ($request->has('family_account_pay_with')) { - record_family_consumption($request->patient_id, $request->episode_id, $request->family_account_id, $request->family_account_pay_with, 'Sundries', $receipt_number); - } - - // for the staff guarantor, if debt plan id is not 0, add receipt number to it - if ($request->debt_plan_id != 0) { - DB::table('debt_plan')->where('id', $request->debt_plan_id) - ->update(['receipt_number' => $receipt_number]); - } - - // details to be used for receipt - $hospital_information = HospitalInformation::first(); - $total_amount_pay = $request->total_amount_pay; - $staff_guarantor_to_pay = $request->staff_guarantor_to_pay; - $donor_to_pay = $request->donor_to_pay; - $patient_to_pay = $request->patient_to_pay; - $hospital_to_pay_selected_discount = $request->hospital_to_pay_selected_discount; - $hospital_to_pay_general_discount = $request->hospital_to_pay_general_discount; - $balance = $request->balance; - $patient_category_to_pay = $request->patient_category_to_pay; - $patient_category_id_to_pay = $request->patient_category_id; - $one_off_discount = $request->one_off_discount; - $one_off_discount_memo = $request->one_off_discount_memo; - $patient_account_pay_with = $request->patient_account_pay_with ?? 0; - $family_account_pay_with = $request->family_account_pay_with ?? 0; - $amount_paid_from_wallets = $patient_account_pay_with + $family_account_pay_with; - - // check if hospital discounts are positive to add them to total - if($hospital_to_pay_selected_discount > 0){ - $hospital_to_pay = $hospital_to_pay_general_discount + $hospital_to_pay_selected_discount; - } else { - $hospital_to_pay = $hospital_to_pay_general_discount; - } - - $sundry_item = explode(",", $request->sundry_ids); - $sundry_quantity = $request->quantity; - $sundry_subtotal = $request->sundry_subtotal; - - $patient = Patient::find($request->patient_id); - $receipt_date = date('Y-m-d H:i:s'); - - /*====== if the patient is a dependant of a certain patient category patient, do this =====*/ - $patient_category_id = get_name($request->patient_id, "id", "category_id", "patients"); - $does_patient_category_have_threshold = does_patient_category_have_threshold($patient_category_id); - $patient_is_a_dependant_of = patient_is_a_dependant_of($request->patient_id); - - if ($does_patient_category_have_threshold || !is_null($patient_is_a_dependant_of)) { - $tag_id = 5; - $amount_consumed = $patient_to_pay + $original_patient_category_to_pay; - $this->record_dependant_consumption($request, $patient_is_a_dependant_of, $sundry_item, $sundry_subtotal, $amount_consumed, $tag_id, "Dependant-Sundries", $receipt_number); - } - /*===============end of that dependant functionality =======================*/ - - $return_payment_methods = $this->register_payment_method($request->patient_id, $request->episode_id, $request->original_cash_to_pay, $request->payment_method, - $request->payment_methods_amount, $request->ref_number, $request->ref_number_added_by, $receipt_number, 5, Auth::id(), $amount_paid_from_wallets); - - $cashier = Auth::id(); - - $compact_values = compact('hospital_information', 'receipt_date', 'receipt_number', 'one_off_discount_memo', 'one_off_discount', - 'patient', 'is_invoice', 'sundry_item', 'sundry_quantity', 'sundry_subtotal', 'patient_category_id_to_pay', 'patient_account_pay_with', - 'total_amount_pay', 'staff_guarantor_to_pay', 'patient_unpaid_debts','family_account_pay_with', 'cashier', - 'donor_to_pay', 'balance', 'hospital_to_pay', 'patient_to_pay', 'patient_category_to_pay', 'return_payment_methods'); - - $this->save_receipt_json($receipt_number, json_encode($compact_values)); - - if (is_cashier_receipt_type_print_html()) { - return redirect('/patient_finance/print_sundries_receipt/' . 1 . '/' . $receipt_number); - } else { - // so we first have to set a session and then go back to the payment page - // on the payment page we can then set a JS variable that can help redirect us to our pdf print - session()->put('print_cashier_receipt_pdf', 1); - - // since we want to reduce the amount of duplicate code, we shall send all items to one file for printing - $data = [ - "hospital_information" => $compact_values["hospital_information"], "receipt_date" => $compact_values["receipt_date"], "receipt_number" => $compact_values["receipt_number"], - "one_off_discount_memo" => $compact_values["one_off_discount_memo"], "one_off_discount" => $compact_values["one_off_discount"], "patient" => $compact_values["patient"], - "is_invoice" => $compact_values["is_invoice"], "items" => $compact_values["sundry_item"], "item_quantity" => $compact_values["sundry_quantity"], "item_subtotal" => $compact_values["sundry_subtotal"], - "patient_category_id_to_pay" => $compact_values["patient_category_id_to_pay"], "total_amount_pay" => $compact_values["total_amount_pay"], - "staff_guarantor_to_pay" => $compact_values["staff_guarantor_to_pay"], "patient_unpaid_debts" => $compact_values["patient_unpaid_debts"], "donor_to_pay" => $compact_values["donor_to_pay"], "balance" => $compact_values["balance"], - "hospital_to_pay" => $compact_values["hospital_to_pay"], "patient_to_pay" => $compact_values["patient_to_pay"], "patient_category_to_pay" => $compact_values["patient_category_to_pay"], "return_payment_methods" => $compact_values["return_payment_methods"], - "treatment_balance" => 0, "item_table" => "sundries", "ward_discount_amount" => 0, "discounts_applied" => 0, "patient_account_pay_with" => $compact_values["patient_account_pay_with"], "family_account_pay_with" => $compact_values["family_account_pay_with"] - ]; - - session()->put('print_cashier_receipt_pdf_details', $data); - - return redirect('/patient_finance/make_deposit_sundries'); - } - } - - public function print_sundries_receipt($type, $receipt_number){ - - // check if track_receipts has details - $receipt_json = get_name((int)$receipt_number, 'id', 'receipt_json', 'track_receipts'); - - if ($receipt_json) { - $compact_values = json_decode($receipt_json, true); - $compact_values["patient"] = Patient::find($compact_values["patient"]["id"]); - $compact_values["hospital_information"] = HospitalInformation::first(); - $compact_values["discounts_applied"] = 0; - $compact_values["sundry_ids_array"] = $compact_values["sundry_item"]; - $compact_values["sundry_quantity_array"] = $compact_values["sundry_quantity"]; - $compact_values["sundry_prices_array"] = $compact_values["sundry_subtotal"]; - $compact_values["cashier"] = $compact_values["cashier"] ?? Auth::id(); - } else { - if ($type == 1) { - // get payment details for the sundry - $sundry_payment = SundryDeposit::where(['receipt_number' => $receipt_number])->first(); - - $patient_to_pay = $sundry_payment->patient_amount_paid; - - $sundry_prices_array = explode(",", $sundry_payment->sundry_subtotals); - $sundry_ids_array = explode(",", $sundry_payment->sundry_items); - $sundry_quantity_array = explode(",", $sundry_payment->sundry_quantity); - } else { - // get payment details for the sundry - $sundry_payment = PatientCategoryInvoice::where(['receipt_number' => $receipt_number])->first(); - - $patient_to_pay = 0; - - $sundry_prices_array = explode(",", $sundry_payment->items_amounts); - $sundry_ids_array = explode(",", $sundry_payment->items_ids); - $sundry_quantity_array = explode(",", $sundry_payment->items_quantity); - } - - $total_amount_pay = 0; - - foreach ($sundry_prices_array as $price){ - $total_amount_pay += $price; - } - - $receipt_date = $sundry_payment->created_at; - - $cashier = $sundry_payment->created_by; - - // receipt number - $receipt_number = $sundry_payment->receipt_number; - - // details to be used for receipt - $hospital_information = HospitalInformation::first(); - $discounts_applied = $total_amount_pay - $patient_to_pay; - $patient = Patient::find($sundry_payment->patient_id); - $patient_account_pay_with = 0; - $family_account_pay_with = 0; - - $compact_values = compact('hospital_information', 'receipt_date', 'receipt_number', 'discounts_applied', 'type', - 'patient', 'sundry_prices_array', 'sundry_ids_array', 'sundry_quantity_array','total_amount_pay','patient_to_pay', 'cashier', 'patient_account_pay_with', 'family_account_pay_with'); - } - - if (is_cashier_receipt_type_print_html()) { - if ($receipt_json) { - return view('patient_finance::patient_finance.receipts.sundries', $compact_values); - } else { - return view('patient_finance::patient_finance.receipts.sundries_reprint', $compact_values); - } - } else { - // so we first have to set a session and then go back to the payment page - // on the payment page we can then set a JS variable that can help redirect us to our pdf print - session()->put('print_cashier_receipt_pdf', 1); - - // since we want to reduce the amount of duplicate code, we shall send all items to one file for printing - $data = [ - "hospital_information" => $compact_values["hospital_information"], "receipt_date" => $compact_values["receipt_date"], "receipt_number" => $compact_values["receipt_number"], - "one_off_discount_memo" => "", "one_off_discount" => "", "patient" => $compact_values["patient"], - "is_invoice" => "", "items" => $compact_values["sundry_ids_array"], "item_quantity" => $compact_values["sundry_quantity_array"], "item_subtotal" => $compact_values["sundry_prices_array"], - "patient_category_id_to_pay" => 0, "total_amount_pay" => $compact_values["total_amount_pay"], - "staff_guarantor_to_pay" => "", "patient_unpaid_debts" => 0, "donor_to_pay" => 0, "balance" => 0, - "hospital_to_pay" => "", "patient_to_pay" => $compact_values["patient_to_pay"], "patient_category_to_pay" => 0, "return_payment_methods" => [], - "treatment_balance" => 0, "item_table" => "sundries", "ward_discount_amount" => 0, "discounts_applied" => $compact_values["discounts_applied"], "patient_account_pay_with" => $compact_values["patient_account_pay_with"], "family_account_pay_with" => $compact_values["family_account_pay_with"] - ]; - - session()->put('print_cashier_receipt_pdf_details', $data); - - return redirect('/patient_finance/make_deposit_sundries'); - } - } - - public function make_deposit_optical_items(Request $request){ - if (isset($request->price_list_category_id) && $request->price_list_category_id != 0){ - $price_list_set = $request->price_list_category_id; - } else { - $price_list_set = false; - } - - $price_list_categories = PriceListCategories::select('patient_category_id', 'id')->get(); - - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $patient = Patient::find($patient_id); - $episode = PatientEpisode::find($episode_id); - - $categories = DB::table('patient_categories')->pluck('name', 'id'); - $drug_categories = DB::table('drug_categories')->get(); - $marital_statuses = DB::table('marital_statuses')->pluck('name', 'id'); - $discount = PatientDiscount::where(['patient_category'=>$patient->category_id])->first(); - $discount_options = DiscountCategories::where(['patient_category' => $patient->category_id])->pluck('name','id')->toArray(); - $discount_options = ['' => '- Select Discount -'] + $discount_options; - $payment_arrangement = DB::table('debt_plan_arrangements')->pluck('name', 'id')->toArray(); - $payment_arrangement = ['' => '- select -'] + $payment_arrangement; - $staff_guarantors = DB::table('users')->pluck('first_name', 'id')->toArray(); - - foreach ($staff_guarantors as $key => $value) { - $full_name = $value . " " . get_name($key, "id", "last_name", "users"); - $staff_guarantors[$key] = $full_name; - } - - $ordered_opticals = OrderedEyeGlasses::where(['episode_id' => $episode_id,'payment_status' => '0'])->get(); - - // check if there are any paid opticals to display receipt - $paid_opticals = EyeGlassesDeposits::where(['episode_id' => $episode_id])->get(); - $invoiced_opticals = PatientCategoryInvoice::where('episode_id', $episode_id)->where('tag_id', 12)->get(); - - $patient_payment_methods = PatientPaymentMethod::pluck('name', 'id'); - $patient_payment_methods_options = ""; - foreach ($patient_payment_methods as $key => $value) { - $patient_payment_methods_options .= ''; - } - - $patient_unpaid_items_array = explode(",", $this->does_patient_have_unpaid_items($patient_id, $episode_id)); - $patient_unpaid_items = $patient_unpaid_items_array[0]; - $patient_debts = $patient_unpaid_items_array[1]; - - $non_staff_guarantors = DB::table('non_staff_guarantors')->pluck('first_name', 'id')->toArray(); - foreach ($non_staff_guarantors as $key => $value) { - $full_guarantor_name = $value . " " . get_name($key, "id", "last_name", "non_staff_guarantors"); - $non_staff_guarantors[$key] = $full_guarantor_name; - } - - return view('patient_finance::patient_finance.make_deposit_optical_items',compact('ordered_opticals','patient_id','episode_id', 'patient_unpaid_items', 'patient_debts', - 'patient','episode','categories','drug_categories','marital_statuses','discount','discount_options','payment_arrangement', 'invoiced_opticals', - 'staff_guarantors', 'paid_opticals', 'price_list_set', 'price_list_categories', 'patient_payment_methods', 'patient_payment_methods_options', 'non_staff_guarantors')); - } - - public function store_optical_items_deposit(Request $request){ - $wallets_amount = $original_patient_category_to_pay = 0; - - if ($request->has('patient_account_pay_with')) { - if ($request->patient_account_pay_with > $request->patient_account_balance) { - // amount is more than is on the patient account - flash('Patient account balance is less than the current bill.')->error(); - return redirect()->back()->withInput(); - } - - $wallets_amount += $request->patient_account_pay_with; - } - - if ($request->has('family_account_pay_with')) { - $this_patient_to_pay = $request->family_account_pay_with; - $this_family_account_balance = $request->family_account_balance; - $family_account_credit_limit = $request->family_account_credit_limit; - $wallets_amount += $request->family_account_pay_with; - - if (!is_family_consumption_allowed($this_patient_to_pay, $this_family_account_balance, $family_account_credit_limit)) { - return redirect()->back()->withInput(); - } - } - - $request->merge(['wallets_amount' => $wallets_amount]); - - if ($request->patient_unpaid_debts > 0) { - $this->debtorsService->pay_for_patient_debt($request->episode_id, $request->patient_unpaid_debts); - } - - $patient_unpaid_debts = $request->patient_unpaid_debts; - - $optical_deposit = new EyeGlassesDeposit(); - - // send data to be saved in treatment deposits table and get the is_invoice flag and receipt number - $return_data_array = explode(",", $optical_deposit->store_payment($request)); - - // is_invoice flag - $is_invoice = $return_data_array[0]; - - // receipt number - $receipt_number = $return_data_array[1]; - - if ($request->has('patient_account_pay_with')) { - record_patient_accounts_consumption($request->patient_id, $request->episode_id, $request->patient_account_pay_with, $request->tag_id, $receipt_number); - } - - if ($request->has('family_account_pay_with')) { - record_family_consumption($request->patient_id, $request->episode_id, $request->family_account_id, $request->family_account_pay_with, 'Optical Items', $receipt_number); - } - - //check if patient is a dependant of another patient e.g staff with a discount. If so, let Neo enter the matrix - if ($request->has('dependants_balance')) { - $original_dependants_balance = $request->dependants_balance; - $original_patient_category_to_pay = $request->patient_category_to_pay; - - //if new dependants balance is -ve, make it zero - $new_dependants_balance = $request->dependants_balance < 0 ? 0 : $request->dependants_balance; - $request->merge(['dependants_balance' => $new_dependants_balance]); - - if($request->patient_category_to_pay > $request->dependants_balance){ - $patient_category_to_pay = $request->patient_category_to_pay - $request->dependants_balance; - } else{ - $patient_category_to_pay = 0; - } - $request->merge(['patient_category_to_pay' => $patient_category_to_pay]); - } - - // for the staff guarantor, if debt plan id is not 0, add receipt number to it - if ($request->debt_plan_id != 0) { - DB::table('debt_plan')->where('id', $request->debt_plan_id) - ->update(['receipt_number' => $receipt_number]); - } - - // details to be used for receipt - $hospital_information = HospitalInformation::first(); - $total_amount_pay = $request->total_amount_pay; - $staff_guarantor_to_pay = $request->staff_guarantor_to_pay; - $donor_to_pay = $request->donor_to_pay; - $patient_to_pay = $request->patient_to_pay; - $hospital_to_pay_selected_discount = $request->hospital_to_pay_selected_discount; - $hospital_to_pay_general_discount = $request->hospital_to_pay_general_discount; - $balance = $request->balance; - $patient_category_to_pay = $request->patient_category_to_pay; - $patient_category_id_to_pay = $request->patient_category_id; - $one_off_discount = $request->one_off_discount; - $one_off_discount_memo = $request->one_off_discount_memo; - $patient_account_pay_with = $request->patient_account_pay_with ?? 0; - $family_account_pay_with = $request->family_account_pay_with ?? 0; - $amount_paid_from_wallets = $patient_account_pay_with + $family_account_pay_with; - - // check if hospital discounts are positive to add them to total - if($hospital_to_pay_selected_discount > 0){ - $hospital_to_pay = $hospital_to_pay_general_discount + $hospital_to_pay_selected_discount; - } else { - $hospital_to_pay = $hospital_to_pay_general_discount; - } - - $optical_item = explode(",", $request->optical_ids); - $optical_quantity = $request->quantity; - $optical_subtotal = $request->optical_subtotal; - - $patient = Patient::find($request->patient_id); - $receipt_date = date('Y-m-d H:i:s'); - - /*====== if the patient is a dependant of a certain patient category patient, do this =====*/ - $patient_category_id = get_name($request->patient_id, "id", "category_id", "patients"); - $does_patient_category_have_threshold = does_patient_category_have_threshold($patient_category_id); - $patient_is_a_dependant_of = patient_is_a_dependant_of($request->patient_id); - - if ($does_patient_category_have_threshold || !is_null($patient_is_a_dependant_of)) { - $amount_consumed = $patient_to_pay + $original_patient_category_to_pay; - $this->record_dependant_consumption($request, $patient_is_a_dependant_of, $optical_item, $optical_subtotal, $amount_consumed, 19, "Optical Items", $receipt_number); - } - /*===============end of that dependant functionality =======================*/ - - $return_payment_methods = $this->register_payment_method($request->patient_id, $request->episode_id, $request->original_cash_to_pay, $request->payment_method, - $request->payment_methods_amount, $request->ref_number, $request->ref_number_added_by, $receipt_number, 19, Auth::id(), $amount_paid_from_wallets); - - $compact_values = compact('hospital_information', 'receipt_date', 'receipt_number', 'one_off_discount_memo', 'one_off_discount', - 'patient', 'is_invoice', 'optical_item', 'optical_quantity', 'optical_subtotal', 'patient_category_id_to_pay', 'patient_account_pay_with', - 'total_amount_pay', 'staff_guarantor_to_pay', 'patient_unpaid_debts','family_account_pay_with', - 'donor_to_pay', 'balance', 'hospital_to_pay', 'patient_to_pay', 'patient_category_to_pay', 'return_payment_methods'); - - $this->save_receipt_json($receipt_number, json_encode($compact_values)); - - if (is_cashier_receipt_type_print_html()) { - return redirect('/patient_finance/print_optical_items_receipt/' . 1 . '/' . $receipt_number); - } else { - // so we first have to set a session and then go back to the payment page - // on the payment page we can then set a JS variable that can help redirect us to our pdf print - session()->put('print_cashier_receipt_pdf', 1); - - // since we want to reduce the amount of duplicate code, we shall send all items to one file for printing - $data = [ - "hospital_information" => $compact_values["hospital_information"], "receipt_date" => $compact_values["receipt_date"], "receipt_number" => $compact_values["receipt_number"], - "one_off_discount_memo" => $compact_values["one_off_discount_memo"], "one_off_discount" => $compact_values["one_off_discount"], "patient" => $compact_values["patient"], - "is_invoice" => $compact_values["is_invoice"], "items" => $compact_values["optical_item"], "item_quantity" => $compact_values["optical_quantity"], "item_subtotal" => $compact_values["optical_subtotal"], - "patient_category_id_to_pay" => $compact_values["patient_category_id_to_pay"], "total_amount_pay" => $compact_values["total_amount_pay"], - "staff_guarantor_to_pay" => $compact_values["staff_guarantor_to_pay"], "patient_unpaid_debts" => $compact_values["patient_unpaid_debts"], "donor_to_pay" => $compact_values["donor_to_pay"], "balance" => $compact_values["balance"], - "hospital_to_pay" => $compact_values["hospital_to_pay"], "patient_to_pay" => $compact_values["patient_to_pay"], "patient_category_to_pay" => $compact_values["patient_category_to_pay"], "return_payment_methods" => $compact_values["return_payment_methods"], - "treatment_balance" => 0, "item_table" => "eye_glasses", "ward_discount_amount" => 0, "discounts_applied" => 0, "patient_account_pay_with" => $compact_values["patient_account_pay_with"], "family_account_pay_with" => $compact_values["family_account_pay_with"] - ]; - - session()->put('print_cashier_receipt_pdf_details', $data); - - return redirect('/patient_finance/make_deposit_optical_items'); - } - } - - public function print_optical_items_receipt($type, $receipt_number){ - - // check if track_receipts has details - $receipt_json = get_name((int)$receipt_number, 'id', 'receipt_json', 'track_receipts'); - - if ($receipt_json) { - $compact_values = json_decode($receipt_json, true); - $compact_values["patient"] = Patient::find($compact_values["patient"]["id"]); - $compact_values["hospital_information"] = HospitalInformation::first(); - $compact_values["discounts_applied"] = 0; - $compact_values["optical_ids_array"] = $compact_values["optical_item"]; - $compact_values["optical_quantity_array"] = $compact_values["optical_quantity"]; - $compact_values["optical_prices_array"] = $compact_values["optical_subtotal"]; - $compact_values["cashier"] = Auth::id(); - } else { - if ($type == 1) { - // get payment details for the optical - $optical_payment = EyeGlassesDeposits::where(['receipt_number' => $receipt_number])->first(); - - $patient_to_pay = $optical_payment->patient_amount_paid; - - $optical_prices_array = explode(",", $optical_payment->subtotals); - $optical_ids_array = explode(",", $optical_payment->items); - $optical_quantity_array = explode(",", $optical_payment->quantity); - } else { - // get payment details for the optical - $optical_payment = PatientCategoryInvoice::where(['receipt_number' => $receipt_number])->first(); - - $patient_to_pay = 0; - - $optical_prices_array = explode(",", $optical_payment->items_amounts); - $optical_ids_array = explode(",", $optical_payment->items_ids); - $optical_quantity_array = explode(",", $optical_payment->items_quantity); - } - - $total_amount_pay = 0; - - foreach ($optical_prices_array as $price){ - $total_amount_pay += $price; - } - - $receipt_date = $optical_payment->created_at; - - $cashier = $optical_payment->created_by; - - // receipt number - $receipt_number = $optical_payment->receipt_number; - - // details to be used for receipt - $hospital_information = HospitalInformation::first(); - $discounts_applied = $total_amount_pay - $patient_to_pay; - $patient = Patient::find($optical_payment->patient_id); - $patient_account_pay_with = 0; - $family_account_pay_with = 0; - - $compact_values = compact('hospital_information', 'receipt_date', 'receipt_number', 'discounts_applied', 'type', - 'patient', 'optical_prices_array', 'optical_ids_array', 'optical_quantity_array','total_amount_pay','patient_to_pay', 'cashier', 'patient_account_pay_with', 'family_account_pay_with'); - } - - if (is_cashier_receipt_type_print_html()) { - if ($receipt_json) { - return view('patient_finance::patient_finance.receipts.optical_items', $compact_values); - } else { - return view('patient_finance::patient_finance.receipts.optical_items_reprint', $compact_values); - } - } else { - // so we first have to set a session and then go back to the payment page - // on the payment page we can then set a JS variable that can help redirect us to our pdf print - session()->put('print_cashier_receipt_pdf', 1); - - // since we want to reduce the amount of duplicate code, we shall send all items to one file for printing - $data = [ - "hospital_information" => $compact_values["hospital_information"], "receipt_date" => $compact_values["receipt_date"], "receipt_number" => $compact_values["receipt_number"], - "one_off_discount_memo" => "", "one_off_discount" => "", "patient" => $compact_values["patient"], - "is_invoice" => "", "items" => $compact_values["optical_ids_array"], "item_quantity" => $compact_values["optical_quantity_array"], "item_subtotal" => $compact_values["optical_prices_array"], - "patient_category_id_to_pay" => 0, "total_amount_pay" => $compact_values["total_amount_pay"], - "staff_guarantor_to_pay" => "", "patient_unpaid_debts" => 0, "donor_to_pay" => 0, "balance" => 0, - "hospital_to_pay" => "", "patient_to_pay" => $compact_values["patient_to_pay"], "patient_category_to_pay" => 0, "return_payment_methods" => [], - "treatment_balance" => 0, "item_table" => "eye_glasses", "ward_discount_amount" => 0, "discounts_applied" => $compact_values["discounts_applied"], "patient_account_pay_with" => $compact_values["patient_account_pay_with"], "family_account_pay_with" => $compact_values["family_account_pay_with"] - ]; - - session()->put('print_cashier_receipt_pdf_details', $data); - - return redirect('/patient_finance/make_deposit_optical_items'); - } - } - - /** - * Make patient procedure deposits - * - * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View - */ - public function make_deposit_procedures(Request $request){ - - if (isset($request->price_list_category_id) && $request->price_list_category_id != 0){ - $price_list_set = $request->price_list_category_id; - } else { - $price_list_set = false; - } - - $price_list_categories = PriceListCategories::select('patient_category_id', 'id')->get(); - - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $patient = Patient::find($patient_id); - $episode = PatientEpisode::find($episode_id); - - $categories = DB::table('patient_categories')->where('available', 1)->pluck('name', 'id'); - $drug_categories = DB::table('drug_categories')->get(); - $marital_statuses = DB::table('marital_statuses')->pluck('name', 'id'); - $discount = PatientDiscount::where(['patient_category'=>$patient->category_id])->first(); - $discount_options = DiscountCategories::where(['patient_category' => $patient->category_id])->pluck('name','id')->toArray(); - $discount_options = ['' => '- Select Discount -'] + $discount_options; - $payment_arrangement = DB::table('debt_plan_arrangements')->pluck('name', 'id')->toArray(); - $payment_arrangement = ['' => '- select -'] + $payment_arrangement; - $staff_guarantors = DB::table('users')->pluck('first_name', 'id')->toArray(); - - foreach ($staff_guarantors as $key => $value) { - $full_name = $value . " " . get_name($key, "id", "last_name", "users"); - $staff_guarantors[$key] = $full_name; - } - - $ordered_procedures = OrderedProcedure::where(['episode_id' => $episode_id,'payment_status' => '0' ,'inpatient_bill_generated' => 0])->get(); - - // check if there are any paid procedure to display receipt - $paid_procedures = ProcedureDeposit::where(['episode_id' => $episode_id])->orderBy('created_at', 'desc')->get(); - $invoiced_procedures = PatientCategoryInvoice::where('episode_id', $episode_id)->where('tag_id', 4)->get(); - - $patient_payment_methods = PatientPaymentMethod::pluck('name', 'id'); - $patient_payment_methods_options = ""; - foreach ($patient_payment_methods as $key => $value) { - $patient_payment_methods_options .= ''; - } - - $patient_unpaid_items_array = explode(",", $this->does_patient_have_unpaid_items($patient_id, $episode_id)); - $patient_unpaid_items = $patient_unpaid_items_array[0]; - $patient_debts = $patient_unpaid_items_array[1]; - - $non_staff_guarantors = DB::table('non_staff_guarantors')->pluck('first_name', 'id')->toArray(); - foreach ($non_staff_guarantors as $key => $value) { - $full_guarantor_name = $value . " " . get_name($key, "id", "last_name", "non_staff_guarantors"); - $non_staff_guarantors[$key] = $full_guarantor_name; - } - - return view('patient_finance::patient_finance.make_deposit_procedures',compact('patient_id','episode_id','patient','episode','categories','drug_categories','marital_statuses','discount','discount_options','payment_arrangement', - 'staff_guarantors', 'ordered_procedures', 'paid_procedures', 'patient_unpaid_items', 'patient_debts', - 'price_list_set', 'price_list_categories', 'patient_payment_methods', 'patient_payment_methods_options', 'invoiced_procedures', 'non_staff_guarantors')); - } - - public function store_deposit_procedures(Request $request) { - $wallets_amount = 0; - - if ($request->has('patient_account_pay_with')) { - if ($request->patient_account_pay_with > $request->patient_account_balance) { - // amount is more than is on the patient account - flash('Patient account balance is less than the current bill.')->error(); - return redirect()->back()->withInput(); - } - - $wallets_amount += $request->patient_account_pay_with; - } - - if ($request->has('family_account_pay_with')) { - $this_patient_to_pay = $request->family_account_pay_with; - $this_family_account_balance = $request->family_account_balance; - $family_account_credit_limit = $request->family_account_credit_limit; - $wallets_amount += $request->family_account_pay_with; - - if (!is_family_consumption_allowed($this_patient_to_pay, $this_family_account_balance, $family_account_credit_limit)) { - return redirect()->back()->withInput(); - } - } - - $request->merge(['wallets_amount' => $wallets_amount]); - - //check if patient is a dependant of another patient e.g main patient with a discount. If so, let Neo enter the matrix - if ($request->has('dependants_balance')) { - $original_dependants_balance = $request->dependants_balance; - $original_patient_category_to_pay = $request->patient_category_to_pay; - - //if new dependants balance is -ve, make it zero - $new_dependants_balance = $request->dependants_balance < 0 ? 0 : $request->dependants_balance; - $request->merge(['dependants_balance' => $new_dependants_balance]); - - //recalculate the patient category to pay - if ($request->patient_category_to_pay > $original_dependants_balance) { - if ($original_dependants_balance < 0) { - $patient_category_to_pay = $request->patient_category_to_pay; - } else{ - $patient_category_to_pay = $request->patient_category_to_pay - $original_dependants_balance; - } - } else { - $patient_category_to_pay = 0; - } - $request->merge(['patient_category_to_pay' => $patient_category_to_pay]); - - //make the main patient's patient category override the category of the dependant - $patient_is_a_dependant_of = patient_is_a_dependant_of($request->patient_id); - $main_patient_patient_category = get_name($patient_is_a_dependant_of, "id", "category_id", "patients"); - $request->merge(['patient_category_id' => $main_patient_patient_category]); - } - - if ($request->patient_unpaid_debts > 0) { - $this->debtorsService->pay_for_patient_debt($request->episode_id, $request->patient_unpaid_debts); - } - - $patient_unpaid_debts = $request->patient_unpaid_debts; - - $procedures_deposit = new ProceduresDeposit; - - // begin transaction - DB::beginTransaction(); - - try { - // send data to be saved in services table and get the is_invoice flag and receipt number - $return_data_array = explode(",", $procedures_deposit->store_payment($request)); - - // all good so we can commit - DB::commit(); - } catch (\Exception | \Error $exception) { - DB::rollback(); - - DB::table('system_errors')->insert([ - 'error_message' => $exception->getMessage(), 'error_trace' => $exception->getTraceAsString(), - 'logged_in_user' => Auth::id() - ]); - - flash("An error occurred. Please try again or contact Stre@mline Support")->error(); - return back()->withInput(); - } - - // is_invoice flag - $is_invoice = $return_data_array[0]; - - // receipt number - $receipt_number = $return_data_array[1]; - - if ($request->has('patient_account_pay_with')) { - record_patient_accounts_consumption($request->patient_id, $request->episode_id, $request->patient_account_pay_with, $request->tag_id, $receipt_number); - } - - if ($request->has('family_account_pay_with')) { - record_family_consumption($request->patient_id, $request->episode_id, $request->family_account_id, $request->family_account_pay_with, 'Procedures', $receipt_number); - } - - // for the staff guarantor, if debt plan id is not 0, add receipt number to it - if ($request->debt_plan_id != 0) { - DB::table('debt_plan')->where('id', $request->debt_plan_id) - ->update(['receipt_number' => $receipt_number]); - } - - // details to be used for receipt - $hospital_information = HospitalInformation::first(); - $total_amount_pay = $request->total_amount_pay; - $staff_guarantor_to_pay = $request->staff_guarantor_to_pay; - $donor_to_pay = $request->donor_to_pay; - $patient_to_pay = $request->patient_to_pay; - $hospital_to_pay_selected_discount = $request->hospital_to_pay_selected_discount; - $hospital_to_pay_general_discount = $request->hospital_to_pay_general_discount; - $balance = $request->balance; - $patient_category_to_pay = $request->patient_category_to_pay; - $patient_category_id_to_pay = $request->patient_category_id; - $one_off_discount = $request->one_off_discount; - $one_off_discount_memo = $request->one_off_discount_memo; - $patient_account_pay_with = $request->patient_account_pay_with ?? 0; - $family_account_pay_with = $request->family_account_pay_with ?? 0; - $amount_paid_from_wallets = $patient_account_pay_with + $family_account_pay_with; - - // check if hospital discounts are positive to add them to total - if($hospital_to_pay_selected_discount > 0){ - $hospital_to_pay = $hospital_to_pay_general_discount + $hospital_to_pay_selected_discount; - } else { - $hospital_to_pay = $hospital_to_pay_general_discount; - } - - $procedure_ids_array = explode(",", $request->procedure_ids); - $procedure_amounts_array = $request->procedure_amount; - - $patient = Patient::find($request->patient_id); - $receipt_date = date('Y-m-d H:i:s'); - - /*====== if the patient is a dependant of a certain patient category patient, do this =====*/ - $patient_category_id = get_name($request->patient_id, "id", "category_id", "patients"); - $does_patient_category_have_threshold = does_patient_category_have_threshold($patient_category_id); - $patient_is_a_dependant_of = patient_is_a_dependant_of($request->patient_id); - - if ($does_patient_category_have_threshold || !is_null($patient_is_a_dependant_of)) { - $tag_id = 4; - $amount_consumed = $patient_to_pay + $original_patient_category_to_pay; - $this->record_dependant_consumption($request, $patient_is_a_dependant_of, $procedure_ids_array, $procedure_amounts_array, $amount_consumed, $tag_id, "Dependant-Procedures", $receipt_number); - } - /*===============end of that dependant functionality =======================*/ - - $return_payment_methods = $this->register_payment_method($request->patient_id, $request->episode_id, $request->original_cash_to_pay, $request->payment_method, - $request->payment_methods_amount, $request->ref_number, $request->ref_number_added_by, $receipt_number, 4, Auth::id(), $amount_paid_from_wallets); - - $cashier = Auth::id(); - - $compact_values = compact('hospital_information', 'receipt_date', 'receipt_number', 'one_off_discount_memo', 'one_off_discount', - 'patient', 'is_invoice', 'procedure_ids_array', 'procedure_amounts_array', 'patient_category_id_to_pay', 'patient_account_pay_with', - 'total_amount_pay', 'staff_guarantor_to_pay', 'patient_unpaid_debts', 'family_account_pay_with', 'cashier', - 'donor_to_pay', 'balance', 'hospital_to_pay', 'patient_to_pay', 'patient_category_to_pay', 'return_payment_methods'); - - $this->save_receipt_json($receipt_number, json_encode($compact_values)); - - flash("Procedure deposit saved successfully")->success(); - - if (is_cashier_receipt_type_print_html()) { - return redirect('/patient_finance/print_procedures_receipt/' . 1 . '/' . $receipt_number); - } else { - // so we first have to set a session and then go back to the payment page - // on the payment page we can then set a JS variable that can help redirect us to our pdf print - session()->put('print_cashier_receipt_pdf', 1); - - // since we want to reduce the amount of duplicate code, we shall send all items to one file for printing - $data = [ - "hospital_information" => $compact_values["hospital_information"], "receipt_date" => $compact_values["receipt_date"], "receipt_number" => $compact_values["receipt_number"], - "one_off_discount_memo" => $compact_values["one_off_discount_memo"], "one_off_discount" => $compact_values["one_off_discount"], "patient" => $compact_values["patient"], - "is_invoice" => $compact_values["is_invoice"], "items" => $compact_values["procedure_ids_array"], "item_quantity" => array_fill(0, count($compact_values["procedure_ids_array"]), 1), "item_subtotal" => $compact_values["procedure_amounts_array"], - "patient_category_id_to_pay" => $compact_values["patient_category_id_to_pay"], "total_amount_pay" => $compact_values["total_amount_pay"], - "staff_guarantor_to_pay" => $compact_values["staff_guarantor_to_pay"], "patient_unpaid_debts" => $compact_values["patient_unpaid_debts"], "donor_to_pay" => $compact_values["donor_to_pay"], "balance" => $compact_values["balance"], - "hospital_to_pay" => $compact_values["hospital_to_pay"], "patient_to_pay" => $compact_values["patient_to_pay"], "patient_category_to_pay" => $compact_values["patient_category_to_pay"], "return_payment_methods" => $compact_values["return_payment_methods"], - "treatment_balance" => 0, "item_table" => "procedures", "ward_discount_amount" => 0, "discounts_applied" => 0, "patient_account_pay_with" => $compact_values["patient_account_pay_with"], "family_account_pay_with" => $compact_values["family_account_pay_with"] - ]; - - session()->put('print_cashier_receipt_pdf_details', $data); - - return redirect('/patient_finance/make_deposit_procedures'); - } - } - - /** - * Reprint Procedures Receipt - * - * @param $id - * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View - */ - public function print_procedures_receipt($type, $receipt_number){ - - // check if track_receipts has details - $receipt_json = get_name((int)$receipt_number, 'id', 'receipt_json', 'track_receipts'); - - if ($receipt_json) { - $compact_values = json_decode($receipt_json, true); - $compact_values["patient"] = Patient::find($compact_values["patient"]["id"]); - $compact_values["hospital_information"] = HospitalInformation::first(); - $compact_values["discounts_applied"] = 0; - $compact_values["procedure_prices_array"] = $compact_values["procedure_amounts_array"]; - $compact_values["cashier"] = $compact_values["cashier"] ?? Auth::id(); - } else { - if ($type == 1) { - // get payment details for the services - $procedure_payment = ProcedureDeposit::where(['receipt_number' => $receipt_number])->first(); - - $patient_to_pay = $procedure_payment->patient_amount_paid; - - $procedure_prices_array = explode(",", $procedure_payment->procedure_amounts); - $procedure_ids_array = explode(",", $procedure_payment->procedure_items); - } else { - // get payment details for the services - $procedure_payment = PatientCategoryInvoice::where(['receipt_number' => $receipt_number])->first(); - - $patient_to_pay = 0; - - $procedure_prices_array = explode(",", $procedure_payment->items_amounts); - $procedure_ids_array = explode(",", $procedure_payment->items_ids); - } - - $total_amount_pay = 0; - - foreach ($procedure_prices_array as $price){ - $total_amount_pay += $price; - } - - $receipt_date = $procedure_payment->created_at; - - $cashier = $procedure_payment->created_by; - - // receipt number - $receipt_number = $procedure_payment->receipt_number; - - // details to be used for receipt - $hospital_information = HospitalInformation::first(); - $discounts_applied = $total_amount_pay - $patient_to_pay; - $patient = Patient::find($procedure_payment->patient_id); - $patient_account_pay_with = 0; - $family_account_pay_with = 0; - - $compact_values = compact('hospital_information', 'receipt_date', 'receipt_number', 'discounts_applied', 'type', - 'patient', 'procedure_prices_array', 'procedure_ids_array','total_amount_pay','patient_to_pay', 'cashier', 'patient_account_pay_with', 'family_account_pay_with'); - } - - if (is_cashier_receipt_type_print_html()) { - if ($receipt_json) { - return view('patient_finance::patient_finance.receipts.procedures', $compact_values); - } else { - return view('patient_finance::patient_finance.receipts.procedures_reprint', $compact_values); - } - } else { - // so we first have to set a session and then go back to the payment page - // on the payment page we can then set a JS variable that can help redirect us to our pdf print - session()->put('print_cashier_receipt_pdf', 1); - - // since we want to reduce the amount of duplicate code, we shall send all items to one file for printing - $data = [ - "hospital_information" => $compact_values["hospital_information"], "receipt_date" => $compact_values["receipt_date"], "receipt_number" => $compact_values["receipt_number"], - "one_off_discount_memo" => "", "one_off_discount" => "", "patient" => $compact_values["patient"], - "is_invoice" => "", "items" => $compact_values["procedure_ids_array"], "item_quantity" => array_fill(0, count($compact_values["procedure_ids_array"]), 1), "item_subtotal" => $compact_values["procedure_prices_array"], - "patient_category_id_to_pay" => 0, "total_amount_pay" => $compact_values["total_amount_pay"], - "staff_guarantor_to_pay" => "", "patient_unpaid_debts" => 0, "donor_to_pay" => 0, "balance" => 0, - "hospital_to_pay" => "", "patient_to_pay" => $compact_values["patient_to_pay"], "patient_category_to_pay" => 0, "return_payment_methods" => [], - "treatment_balance" => 0, "item_table" => "procedures", "ward_discount_amount" => 0, "discounts_applied" => $compact_values["discounts_applied"], "patient_account_pay_with" => $compact_values["patient_account_pay_with"], "family_account_pay_with" => $compact_values["family_account_pay_with"] - ]; - - session()->put('print_cashier_receipt_pdf_details', $data); - - return redirect('/patient_finance/make_deposit_procedures'); - } - } - - /** - * Make patient investigation deposits - * - * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View - */ - public function make_deposit_investigations(Request $request){ - if (isset($request->price_list_category_id) && $request->price_list_category_id != 0){ - $price_list_set = $request->price_list_category_id; - } else { - $price_list_set = false; - } - - $price_list_categories = PriceListCategories::select('patient_category_id', 'id')->get(); - - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $patient = Patient::find($patient_id); - $episode = PatientEpisode::find($episode_id); - - $categories = DB::table('patient_categories')->where('available', 1)->pluck('name', 'id'); - $drug_categories = DB::table('drug_categories')->get(); - $marital_statuses = DB::table('marital_statuses')->pluck('name', 'id'); - $discount = PatientDiscount::where(['patient_category'=>$patient->category_id])->first(); - $discount_options = DiscountCategories::where(['patient_category' => $patient->category_id])->pluck('name','id')->toArray(); - $discount_options = ['' => '- Select Discount -'] + $discount_options; - $payment_arrangement = DB::table('debt_plan_arrangements')->pluck('name', 'id')->toArray(); - $payment_arrangement = ['' => '- select -'] + $payment_arrangement; - $staff_guarantors = DB::table('users')->pluck('first_name', 'id')->toArray(); - - foreach ($staff_guarantors as $key => $value) { - $full_name = $value . " " . get_name($key, "id", "last_name", "users"); - $staff_guarantors[$key] = $full_name; - } - - $ordered_investigations = OrderedInvestigation::where(['episode_id' => $episode_id,'payment_status' => '0','inpatient_bill_generated' => 0])->get(); - - // check if there are any paid investigations to display receipt - $paid_investigations = InvestigationDeposit::where(['episode_id' => $episode_id])->orderBy('created_at', 'desc')->get(); - $invoiced_investigations = PatientCategoryInvoice::where('episode_id', $episode_id)->where('tag_id', 2)->get(); - - $patient_unpaid_items_array = explode(",", $this->does_patient_have_unpaid_items($patient_id, $episode_id)); - $patient_unpaid_items = $patient_unpaid_items_array[0]; - $patient_debts = $patient_unpaid_items_array[1]; - - $non_staff_guarantors = DB::table('non_staff_guarantors')->pluck('first_name', 'id')->toArray(); - foreach ($non_staff_guarantors as $key => $value) { - $full_guarantor_name = $value . " " . get_name($key, "id", "last_name", "non_staff_guarantors"); - $non_staff_guarantors[$key] = $full_guarantor_name; - } - - return view('patient_finance::patient_finance.make_deposit_investigations',compact('patient_id','episode_id','patient','episode','categories','drug_categories','marital_statuses','discount','discount_options','ordered_investigations','payment_arrangement','staff_guarantors', 'paid_investigations', - 'price_list_set', 'price_list_categories', 'invoiced_investigations', 'patient_unpaid_items', 'patient_debts', 'non_staff_guarantors')); - } - - public function store_deposit_investigations(Request $request){ - $wallets_amount = 0; - - if ($request->has('patient_account_pay_with')) { - if ($request->patient_account_pay_with > $request->patient_account_balance) { - // amount is more than is on the patient account - flash('Patient account balance is less than the current bill.')->error(); - return redirect()->back()->withInput(); - } - - $wallets_amount += $request->patient_account_pay_with; - } - - if ($request->has('family_account_pay_with')) { - $this_patient_to_pay = $request->family_account_pay_with; - $this_family_account_balance = $request->family_account_balance; - $family_account_credit_limit = $request->family_account_credit_limit; - $wallets_amount += $request->family_account_pay_with; - - if (!is_family_consumption_allowed($this_patient_to_pay, $this_family_account_balance, $family_account_credit_limit)) { - return redirect()->back()->withInput(); - } - } - - $request->merge(['wallets_amount' => $wallets_amount]); - - //check if patient is a dependant of another patient e.g main patient with a discount. If so, let Neo enter the matrix - if ($request->has('dependants_balance')) { - $original_dependants_balance = $request->dependants_balance; - $original_patient_category_to_pay = $request->patient_category_to_pay; - - //if new dependants balance is -ve, make it zero - $new_dependants_balance = $request->dependants_balance < 0 ? 0 : $request->dependants_balance; - $request->merge(['dependants_balance' => $new_dependants_balance]); - - //recalculate the patient category to pay - if ($request->patient_category_to_pay > $original_dependants_balance) { - if ($original_dependants_balance < 0) { - $patient_category_to_pay = $request->patient_category_to_pay; - } else{ - $patient_category_to_pay = $request->patient_category_to_pay - $original_dependants_balance; - } - } else { - $patient_category_to_pay = 0; - } - $request->merge(['patient_category_to_pay' => $patient_category_to_pay]); - - //make the main patient's patient category override the category of the dependant - $patient_is_a_dependant_of = patient_is_a_dependant_of($request->patient_id); - $main_patient_patient_category = get_name($patient_is_a_dependant_of, "id", "category_id", "patients"); - $request->merge(['patient_category_id' => $main_patient_patient_category]); - } - - if ($request->patient_unpaid_debts > 0) { - $this->debtorsService->pay_for_patient_debt($request->episode_id, $request->patient_unpaid_debts); - } - - $patient_unpaid_debts = $request->patient_unpaid_debts; - - $investigation_deposit = new InvestigationsDeposit; - - // begin transaction - DB::beginTransaction(); - - try { - // send data to be saved in services table and get the is_invoice flag and receipt number - $return_data_array = explode(",", $investigation_deposit->store_payment($request)); - - // all good so we can commit - DB::commit(); - } catch (\Exception | \Error $exception) { - DB::rollback(); - - DB::table('system_errors')->insert([ - 'error_message' => $exception->getMessage(), 'error_trace' => $exception->getTraceAsString(), - 'logged_in_user' => Auth::id() - ]); - - flash("An error occurred. Please try again or contact Stre@mline Support")->error(); - return back()->withInput(); - } - - // is_invoice flag - $is_invoice = $return_data_array[0]; - - // receipt number - $receipt_number = $return_data_array[1]; - - if ($request->has('patient_account_pay_with')) { - record_patient_accounts_consumption($request->patient_id, $request->episode_id, $request->patient_account_pay_with, $request->tag_id, $receipt_number); - } - - if ($request->has('family_account_pay_with')) { - record_family_consumption($request->patient_id, $request->episode_id, $request->family_account_id, $request->family_account_pay_with, 'Investigations', $receipt_number); - } - - // for the staff guarantor, if debt plan id is not 0, add receipt number to it - if ($request->debt_plan_id != 0) { - DB::table('debt_plan')->where('id', $request->debt_plan_id) - ->update(['receipt_number' => $receipt_number]); - } - - // details to be used for receipt - $hospital_information = HospitalInformation::first(); - $total_amount_pay = $request->total_amount_pay; - $staff_guarantor_to_pay = $request->staff_guarantor_to_pay; - $donor_to_pay = $request->donor_to_pay; - $patient_to_pay = $request->patient_to_pay; - $hospital_to_pay_selected_discount = $request->hospital_to_pay_selected_discount; - $hospital_to_pay_general_discount = $request->hospital_to_pay_general_discount; - $balance = $request->balance; - $patient_category_to_pay = $request->patient_category_to_pay; - $patient_category_id_to_pay = $request->patient_category_id; - $one_off_discount = $request->one_off_discount; - $one_off_discount_memo = $request->one_off_discount_memo; - $patient_account_pay_with = $request->patient_account_pay_with ?? 0; - $family_account_pay_with = $request->family_account_pay_with ?? 0; - $amount_paid_from_wallets = $patient_account_pay_with + $family_account_pay_with; - - // check if hospital discounts are positive to add them to total - if($hospital_to_pay_selected_discount > 0){ - $hospital_to_pay = $hospital_to_pay_general_discount + $hospital_to_pay_selected_discount; - } else { - $hospital_to_pay = $hospital_to_pay_general_discount; - } - - $return_payment_methods = $this->register_payment_method($request->patient_id, $request->episode_id, $request->original_cash_to_pay, $request->payment_method, - $request->payment_methods_amount, $request->ref_number, $request->ref_number_added_by, $receipt_number, 2, Auth::id(), $amount_paid_from_wallets); - - $investigation_ids_array = explode(",", $request->investigation_ids); - $investigation_amounts_array = $request->investigation_amount; - - $patient = Patient::find($request->patient_id); - $receipt_date = date('Y-m-d H:i:s'); - - /*====== if the patient is a dependant of a certain patient category patient, do this =====*/ - $patient_category_id = get_name($request->patient_id, "id", "category_id", "patients"); - $does_patient_category_have_threshold = does_patient_category_have_threshold($patient_category_id); - $patient_is_a_dependant_of = patient_is_a_dependant_of($request->patient_id); - - if ($does_patient_category_have_threshold || !is_null($patient_is_a_dependant_of)) { - $tag_id = 2; - $amount_consumed = $patient_to_pay + $original_patient_category_to_pay; - $this->record_dependant_consumption($request, $patient_is_a_dependant_of, $investigation_ids_array, $investigation_amounts_array, $amount_consumed, $tag_id, "Dependant-Investigations", $receipt_number); - } - /*===============end of that dependant functionality =======================*/ - - $cashier = Auth::id(); - - $compact_values = compact('hospital_information', 'receipt_date', 'receipt_number', 'patient_unpaid_debts', 'one_off_discount_memo', 'one_off_discount', - 'patient', 'is_invoice', 'investigation_ids_array', 'investigation_amounts_array', 'patient_category_id_to_pay', 'family_account_pay_with', - 'total_amount_pay', 'staff_guarantor_to_pay', 'return_payment_methods', 'patient_account_pay_with', 'cashier', - 'donor_to_pay', 'balance', 'hospital_to_pay', 'patient_to_pay', 'patient_category_to_pay', 'one_off_discount_memo', 'one_off_discount'); - - $this->save_receipt_json($receipt_number, json_encode($compact_values)); - - flash("Investigation deposit saved successfully")->success(); - - if (is_cashier_receipt_type_print_html()) { - return redirect('/patient_finance/print_investigation_receipt/' . 1 . '/' . $receipt_number); - } else { - // so we first have to set a session and then go back to the payment page - // on the payment page we can then set a JS variable that can help redirect us to our pdf print - session()->put('print_cashier_receipt_pdf', 1); - - // since we want to reduce the amount of duplicate code, we shall send all items to one file for printing - $data = [ - "hospital_information" => $compact_values["hospital_information"], "receipt_date" => $compact_values["receipt_date"], "receipt_number" => $compact_values["receipt_number"], - "one_off_discount_memo" => $compact_values["one_off_discount_memo"], "one_off_discount" => $compact_values["one_off_discount"], "patient" => $compact_values["patient"], - "is_invoice" => $compact_values["is_invoice"], "items" => $compact_values["investigation_ids_array"], "item_quantity" => array_fill(0, count($compact_values["investigation_ids_array"]), 1), "item_subtotal" => $compact_values["investigation_amounts_array"], - "patient_category_id_to_pay" => $compact_values["patient_category_id_to_pay"], "total_amount_pay" => $compact_values["total_amount_pay"], - "staff_guarantor_to_pay" => $compact_values["staff_guarantor_to_pay"], "patient_unpaid_debts" => $compact_values["patient_unpaid_debts"], "donor_to_pay" => $compact_values["donor_to_pay"], "balance" => $compact_values["balance"], - "hospital_to_pay" => $compact_values["hospital_to_pay"], "patient_to_pay" => $compact_values["patient_to_pay"], "patient_category_to_pay" => $compact_values["patient_category_to_pay"], "return_payment_methods" => $compact_values["return_payment_methods"], - "treatment_balance" => 0, "item_table" => "investigations", "ward_discount_amount" => 0, "discounts_applied" => 0, "patient_account_pay_with" => $compact_values["patient_account_pay_with"], "family_account_pay_with" => $compact_values["family_account_pay_with"] - ]; - - session()->put('print_cashier_receipt_pdf_details', $data); - - return redirect('/patient_finance/make_deposit_investigations'); - } - } - - /** - * Reprint Investigations Receipt - * - * @param $id - * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View - */ - public function print_investigation_receipt($type, $receipt_number){ - - // check if track_receipts has details - $receipt_json = get_name((int)$receipt_number, 'id', 'receipt_json', 'track_receipts'); - - if ($receipt_json) { - $compact_values = json_decode($receipt_json, true); - $compact_values["patient"] = Patient::find($compact_values["patient"]["id"]); - $compact_values["hospital_information"] = HospitalInformation::first(); - $compact_values["investigation_prices_array"] = $compact_values["investigation_amounts_array"]; - $compact_values["discounts_applied"] = 0; - $compact_values["cashier"] = $compact_values["cashier"] ?? Auth::id(); - } else { - if ($type == 1) { - // get payment details for the services - $investigation_payment = InvestigationDeposit::where(['receipt_number' => $receipt_number])->first(); - - $patient_to_pay = $investigation_payment->patient_amount_paid; - - $investigation_prices_array = explode(",", $investigation_payment->investigation_amounts); - $investigation_ids_array = explode(",", $investigation_payment->investigation_items); - } else { - // get payment details for the services - $investigation_payment = PatientCategoryInvoice::where(['receipt_number' => $receipt_number])->first(); - - $patient_to_pay = 0; - - $investigation_prices_array = explode(",", $investigation_payment->items_amounts); - $investigation_ids_array = explode(",", $investigation_payment->items_ids); - } - - $total_amount_pay = 0; - - foreach ($investigation_prices_array as $price){ - $total_amount_pay += $price; - } - - $receipt_date = $investigation_payment->created_at; - - $cashier = $investigation_payment->created_by; - - // receipt number - $receipt_number = $investigation_payment->receipt_number; - - // details to be used for receipt - $hospital_information = HospitalInformation::first(); - $discounts_applied = $total_amount_pay - $patient_to_pay; - $patient = Patient::find($investigation_payment->patient_id); - $patient_account_pay_with = 0; - $family_account_pay_with = 0; - - $compact_values = compact('hospital_information', 'receipt_date', 'receipt_number', 'discounts_applied', - 'patient', 'investigation_ids_array', 'investigation_prices_array','total_amount_pay','patient_to_pay', 'cashier', 'type', 'patient_account_pay_with', 'family_account_pay_with'); - } - - if (is_cashier_receipt_type_print_html()) { - if ($receipt_json) { - return view('patient_finance::patient_finance.receipts.investigations', $compact_values); - } else { - return view('patient_finance::patient_finance.receipts.investigations_reprint', $compact_values); - } - } else { - // so we first have to set a session and then go back to the payment page - // on the payment page we can then set a JS variable that can help redirect us to our pdf print - session()->put('print_cashier_receipt_pdf', 1); - - // since we want to reduce the amount of duplicate code, we shall send all items to one file for printing - $data = [ - "hospital_information" => $compact_values["hospital_information"], "receipt_date" => $compact_values["receipt_date"], "receipt_number" => $compact_values["receipt_number"], - "one_off_discount_memo" => "", "one_off_discount" => "", "patient" => $compact_values["patient"], - "is_invoice" => "", "items" => $compact_values["investigation_ids_array"], "item_quantity" => array_fill(0, count($compact_values["investigation_ids_array"]), 1), "item_subtotal" => $compact_values["investigation_prices_array"], - "patient_category_id_to_pay" => 0, "total_amount_pay" => $compact_values["total_amount_pay"], - "staff_guarantor_to_pay" => "", "patient_unpaid_debts" => 0, "donor_to_pay" => 0, "balance" => 0, - "hospital_to_pay" => "", "patient_to_pay" => $compact_values["patient_to_pay"], "patient_category_to_pay" => 0, "return_payment_methods" => [], - "treatment_balance" => 0, "item_table" => "investigations", "ward_discount_amount" => 0, "discounts_applied" => $compact_values["discounts_applied"], "patient_account_pay_with" => $compact_values["patient_account_pay_with"], "family_account_pay_with" => $compact_values["family_account_pay_with"] - ]; - - session()->put('print_cashier_receipt_pdf_details', $data); - - return redirect('/patient_finance/make_deposit_investigations'); - } - } - - /** - * Start payment process for prescriptions - * - * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View - */ - public function make_deposit_treatment(Request $request){ - if (isset($request->price_list_category_id) && $request->price_list_category_id != 0){ - $price_list_set = $request->price_list_category_id; - } else { - $price_list_set = false; - } - - $price_list_categories = PriceListCategories::select('patient_category_id', 'id')->get(); - - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $episode = PatientEpisode::find($episode_id); - $patient = Patient::find($patient_id); - $staff_guarantors = DB::table('users')->pluck('first_name', 'id')->toArray(); - - foreach ($staff_guarantors as $key => $value) { - $full_name = $value . " " . get_name($key, "id", "last_name", "users"); - $staff_guarantors[$key] = $full_name; - } - - $categories = DB::table('patient_categories')->where('available', 1)->pluck('name', 'id'); - $drug_categories = DB::table('drug_categories')->get(); - $marital_statuses = DB::table('marital_statuses')->pluck('name', 'id'); - $payment_arrangement = DB::table('debt_plan_arrangements')->pluck('name', 'id')->toArray(); - $payment_arrangement = ['' => '- select -'] + $payment_arrangement; - $discount = PatientDiscount::where(['patient_category'=>$patient->category_id])->first(); - $discount_options = DiscountCategories::where(['patient_category' => $patient->category_id])->pluck('name','id')->toArray(); - $discount_options = ['' => '- Select Discount -'] + $discount_options; - - $treatments = Treatment::where(['payment_status' => 0, 'episode_id' => $episode_id ,'inpatient_bill_generated' => 0])->get(); - - // check if there are any paid treatments to display receipt - $paid_treatments = TreatmentDeposits::where(['episode_id' => $episode_id])->get(); - $invoiced_treatments = PatientCategoryInvoice::where('episode_id', $episode_id)->where('tag_id', 3)->get(); - - $patient_payment_methods = PatientPaymentMethod::pluck('name', 'id'); - $patient_payment_methods_options = ""; - foreach ($patient_payment_methods as $key => $value) { - $patient_payment_methods_options .= ''; - } - - $patient_unpaid_items_array = explode(",", $this->does_patient_have_unpaid_items($patient_id, $episode_id)); - $patient_unpaid_items = $patient_unpaid_items_array[0]; - $patient_debts = $patient_unpaid_items_array[1]; - - $non_staff_guarantors = DB::table('non_staff_guarantors')->pluck('first_name', 'id')->toArray(); - foreach ($non_staff_guarantors as $key => $value) { - $full_guarantor_name = $value . " " . get_name($key, "id", "last_name", "non_staff_guarantors"); - $non_staff_guarantors[$key] = $full_guarantor_name; - } - - return view('patient_finance::patient_finance.make_deposit_treatment',compact('patient_id','episode_id', 'patient_unpaid_items', - 'patient','episode','categories','drug_categories','marital_statuses','discount','discount_options','treatments', 'invoiced_treatments', 'patient_debts', - 'payment_arrangement','staff_guarantors', 'paid_treatments', 'price_list_set', 'price_list_categories', 'patient_payment_methods', 'patient_payment_methods_options', 'non_staff_guarantors')); - } - - public function store_deposit_treatment(Request $request){ - $wallets_amount = 0; - - if ($request->has('patient_account_pay_with')) { - if ($request->patient_account_pay_with > $request->patient_account_balance) { - // amount is more than is on the patient account - flash('Patient account balance is less than the current bill.')->error(); - return redirect()->back()->withInput(); - } - - $wallets_amount += $request->patient_account_pay_with; - } - - if ($request->has('family_account_pay_with')) { - $this_patient_to_pay = $request->family_account_pay_with; - $this_family_account_balance = $request->family_account_balance; - $family_account_credit_limit = $request->family_account_credit_limit; - $wallets_amount += $request->family_account_pay_with; - - if (!is_family_consumption_allowed($this_patient_to_pay, $this_family_account_balance, $family_account_credit_limit)) { - return redirect()->back()->withInput(); - } - } - - $request->merge(['wallets_amount' => $wallets_amount]); - - //check if patient is a dependant of another patient e.g main patient with a discount. If so, let Neo enter the matrix - if ($request->has('dependants_balance')) { - $original_dependants_balance = $request->dependants_balance; - $original_patient_category_to_pay = $request->patient_category_to_pay; - - //if new dependants balance is -ve, make it zero - $new_dependants_balance = $request->dependants_balance < 0 ? 0 : $request->dependants_balance; - $request->merge(['dependants_balance' => $new_dependants_balance]); - - //recalculate the patient category to pay - if ($request->patient_category_to_pay > $original_dependants_balance) { - if ($original_dependants_balance < 0) { - $patient_category_to_pay = $request->patient_category_to_pay; - } else{ - $patient_category_to_pay = $request->patient_category_to_pay - $original_dependants_balance; - } - } else { - $patient_category_to_pay = 0; - } - $request->merge(['patient_category_to_pay' => $patient_category_to_pay]); - - //make the main patient's patient category override the category of the dependant - $patient_is_a_dependant_of = patient_is_a_dependant_of($request->patient_id); - $main_patient_patient_category = get_name($patient_is_a_dependant_of, "id", "category_id", "patients"); - $request->merge(['patient_category_id' => $main_patient_patient_category]); - } - - if ($request->patient_unpaid_debts > 0) { - $this->debtorsService->pay_for_patient_debt($request->episode_id, $request->patient_unpaid_debts); - } - - $patient_unpaid_debts = $request->patient_unpaid_debts; - - $treatment_deposit = new TreatmentDeposit; - - // begin transaction - DB::beginTransaction(); - - try { - // send data to be saved in treatment deposits table and get the is_invoice flag and receipt number - $return_data_array = explode(",", $treatment_deposit->store_payment($request)); - - // all good so we can commit - DB::commit(); - } catch (\Exception | \Error $exception) { - DB::rollback(); - - DB::table('system_errors')->insert([ - 'error_message' => $exception->getMessage(), 'error_trace' => $exception->getTraceAsString(), - 'logged_in_user' => Auth::id() - ]); - - flash("An error occurred. Please try again or contact Stre@mline Support")->error(); - return back()->withInput(); - } - - if ($return_data_array[1] == 0) { - flash("Treatment record has been cleared successfully.")->success(); - return redirect('/patient_finance/home'); - } - - // is_invoice flag - $is_invoice = $return_data_array[0]; - - // receipt number - $receipt_number = $return_data_array[1]; - - if ($request->has('patient_account_pay_with')) { - record_patient_accounts_consumption($request->patient_id, $request->episode_id, $request->patient_account_pay_with, $request->tag_id, $receipt_number); - } - - if ($request->has('family_account_pay_with')) { - record_family_consumption($request->patient_id, $request->episode_id, $request->family_account_id, $request->family_account_pay_with, 'Treatment', $receipt_number); - } - - // for the staff guarantor, if debt plan id is not 0, add receipt number to it - if ($request->debt_plan_id != 0) { - DB::table('debt_plan')->where('id', $request->debt_plan_id) - ->update(['receipt_number' => $receipt_number]); - } - - // details to be used for receipt - $hospital_information = HospitalInformation::first(); - $total_amount_pay = $request->total_amount_pay; - $staff_guarantor_to_pay = $request->staff_guarantor_to_pay; - $donor_to_pay = $request->donor_to_pay; - $patient_to_pay = $request->patient_to_pay; - $hospital_to_pay_selected_discount = $request->hospital_to_pay_selected_discount; - $hospital_to_pay_general_discount = $request->hospital_to_pay_general_discount; - $balance = $request->balance; - $patient_category_to_pay = $request->patient_category_to_pay; - $patient_category_id_to_pay = $request->patient_category_id; - $one_off_discount = $request->one_off_discount; - $one_off_discount_memo = $request->one_off_discount_memo; - $treatment_balance = $request->treatment_balance; - $patient_account_pay_with = $request->patient_account_pay_with ?? 0; - $family_account_pay_with = $request->family_account_pay_with ?? 0; - $amount_paid_from_wallets = $patient_account_pay_with + $family_account_pay_with; - - // check if hospital discounts are positive to add them to total - if($hospital_to_pay_selected_discount > 0){ - $hospital_to_pay = $hospital_to_pay_general_discount + $hospital_to_pay_selected_discount; - } else { - $hospital_to_pay = $hospital_to_pay_general_discount; - } - - $treatment_item = $request->treatment_item; - $treatment_quantity = $request->treatment_quantity; - $treatment_subtotal = $request->treatment_subtotal; - - $patient = Patient::find($request->patient_id); - $receipt_date = date('Y-m-d H:i:s'); - - /*====== if the patient is a dependant of a certain patient category patient, do this =====*/ - $patient_category_id = get_name($request->patient_id, "id", "category_id", "patients"); - $does_patient_category_have_threshold = does_patient_category_have_threshold($patient_category_id); - $patient_is_a_dependant_of = patient_is_a_dependant_of($request->patient_id); - - if ($does_patient_category_have_threshold || !is_null($patient_is_a_dependant_of)) { - $tag_id = 3; - $amount_consumed = $patient_to_pay + $original_patient_category_to_pay; - $this->record_dependant_consumption($request, $patient_is_a_dependant_of, $request->treatment_item, $treatment_subtotal, $amount_consumed, $tag_id, "Dependant-Treatment", $receipt_number); - } - /*===============end of that dependant functionality =======================*/ - - $return_payment_methods = $this->register_payment_method($request->patient_id, $request->episode_id, $request->original_cash_to_pay, $request->payment_method, - $request->payment_methods_amount, $request->ref_number, $request->ref_number_added_by, $receipt_number, 3, Auth::id(), $amount_paid_from_wallets); - - $cashier = Auth::id(); - - $compact_values = compact('hospital_information', 'receipt_date', 'receipt_number', 'one_off_discount_memo', 'one_off_discount', - 'patient', 'is_invoice', 'treatment_item', 'treatment_quantity', 'treatment_subtotal', 'patient_category_id_to_pay', 'family_account_pay_with', - 'total_amount_pay', 'staff_guarantor_to_pay', 'patient_unpaid_debts', 'patient_account_pay_with', 'cashier', - 'donor_to_pay', 'balance', 'hospital_to_pay', 'patient_to_pay', 'patient_category_to_pay', 'return_payment_methods', 'treatment_balance'); - - $this->save_receipt_json($receipt_number, json_encode($compact_values)); - - flash("Treatment deposit saved successfully")->success(); - - if (is_cashier_receipt_type_print_html()) { - return redirect('/patient_finance/print_treatment_receipt/' . 1 . '/' . $receipt_number); - } else { - // so we first have to set a session and then go back to the payment page - // on the payment page we can then set a JS variable that can help redirect us to our pdf print - session()->put('print_cashier_receipt_pdf', 1); - - // since we want to reduce the amount of duplicate code, we shall send all items to one file for printing - $data = [ - "hospital_information" => $compact_values["hospital_information"], "receipt_date" => $compact_values["receipt_date"], "receipt_number" => $compact_values["receipt_number"], - "one_off_discount_memo" => $compact_values["one_off_discount_memo"], "one_off_discount" => $compact_values["one_off_discount"], "patient" => $compact_values["patient"], - "is_invoice" => $compact_values["is_invoice"], "items" => $compact_values["treatment_item"], "item_quantity" => $compact_values["treatment_quantity"], "item_subtotal" => $compact_values["treatment_subtotal"], - "patient_category_id_to_pay" => $compact_values["patient_category_id_to_pay"], "total_amount_pay" => $compact_values["total_amount_pay"], - "staff_guarantor_to_pay" => $compact_values["staff_guarantor_to_pay"], "patient_unpaid_debts" => $compact_values["patient_unpaid_debts"], "donor_to_pay" => $compact_values["donor_to_pay"], "balance" => $compact_values["balance"], - "hospital_to_pay" => $compact_values["hospital_to_pay"], "patient_to_pay" => $compact_values["patient_to_pay"], "patient_category_to_pay" => $compact_values["patient_category_to_pay"], "return_payment_methods" => $compact_values["return_payment_methods"], - "treatment_balance" => $compact_values["treatment_balance"], "item_table" => "drugs", "ward_discount_amount" => 0, "discounts_applied" => 0, "patient_account_pay_with" => $compact_values["patient_account_pay_with"], "family_account_pay_with" => $compact_values["family_account_pay_with"] - ]; - - session()->put('print_cashier_receipt_pdf_details', $data); - - return redirect('/patient_finance/make_deposit_treatment'); - } - } - - /** - * Reprint Treatments Receipt - * - * @param $type - * @param $id - * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View - */ - public function print_treatment_receipt($type, $receipt_number){ - - // check if track_receipts has details - $receipt_json = get_name((int)$receipt_number, 'id', 'receipt_json', 'track_receipts'); - - if ($receipt_json) { - $compact_values = json_decode($receipt_json, true); - $compact_values["patient"] = Patient::find($compact_values["patient"]["id"]); - $compact_values["hospital_information"] = HospitalInformation::first(); - $compact_values["treatment_prices_array"] = $compact_values["treatment_subtotal"]; - $compact_values["treatment_ids_array"] = $compact_values["treatment_item"]; - $compact_values["treatment_quantity_array"] = $compact_values["treatment_quantity"]; - $compact_values["discounts_applied"] = 0; - $compact_values["cashier"] = $compact_values["cashier"] ?? Auth::id(); - } else { - if ($type == 1) { - // get payment details for the treatment - $treatment_payment = TreatmentDeposits::where(['receipt_number' => $receipt_number])->first(); - - $patient_to_pay = $treatment_payment->patient_amount_paid; - - $treatment_prices_array = explode(",", $treatment_payment->treatment_subtotals); - $treatment_ids_array = explode(",", $treatment_payment->treatment_items); - $treatment_quantity_array = explode(",", $treatment_payment->treatment_quantities); - } else { - // get payment details for the treatment - $treatment_payment = PatientCategoryInvoice::where(['receipt_number' => $receipt_number])->first(); - - $patient_to_pay = 0; - - $treatment_prices_array = explode(",", $treatment_payment->items_amounts); - $treatment_ids_array = explode(",", $treatment_payment->items_ids); - $treatment_quantity_array = explode(",", $treatment_payment->items_quantity); - } - - $total_amount_pay = 0; - - foreach ($treatment_prices_array as $price){ - $total_amount_pay += $price; - } - - $receipt_date = $treatment_payment->created_at; - - $cashier = $treatment_payment->created_by; - - // receipt number - $receipt_number = $treatment_payment->receipt_number; - - // details to be used for receipt - $hospital_information = HospitalInformation::first(); - $discounts_applied = $total_amount_pay - $patient_to_pay; - $patient = Patient::find($treatment_payment->patient_id); - $patient_account_pay_with = 0; - $family_account_pay_with = 0; - - $compact_values = compact('hospital_information', 'receipt_date', 'receipt_number', 'discounts_applied', 'type', - 'patient', 'treatment_quantity_array', 'treatment_ids_array', 'treatment_prices_array','total_amount_pay','patient_to_pay', 'cashier', 'patient_account_pay_with', 'family_account_pay_with'); - } - - if (is_cashier_receipt_type_print_html()) { - if ($receipt_json) { - return view('patient_finance::patient_finance.receipts.treatment', $compact_values); - } else { - return view('patient_finance::patient_finance.receipts.treatment_reprint', $compact_values); - } - } else { - // so we first have to set a session and then go back to the payment page - // on the payment page we can then set a JS variable that can help redirect us to our pdf print - session()->put('print_cashier_receipt_pdf', 1); - - // since we want to reduce the amount of duplicate code, we shall send all items to one file for printing - $data = [ - "hospital_information" => $compact_values["hospital_information"], "receipt_date" => $compact_values["receipt_date"], "receipt_number" => $compact_values["receipt_number"], - "one_off_discount_memo" => "", "one_off_discount" => "", "patient" => $compact_values["patient"], - "is_invoice" => "", "items" => $compact_values["treatment_ids_array"], "item_quantity" => $compact_values["treatment_quantity_array"], "item_subtotal" => $compact_values["treatment_prices_array"], - "patient_category_id_to_pay" => 0, "total_amount_pay" => $compact_values["total_amount_pay"], - "staff_guarantor_to_pay" => "", "patient_unpaid_debts" => 0, "donor_to_pay" => 0, "balance" => 0, - "hospital_to_pay" => "", "patient_to_pay" => $compact_values["patient_to_pay"], "patient_category_to_pay" => 0, "return_payment_methods" => [], - "treatment_balance" => 0, "item_table" => "drugs", "ward_discount_amount" => 0, "discounts_applied" => $compact_values["discounts_applied"], "patient_account_pay_with" => $compact_values["patient_account_pay_with"], "family_account_pay_with" => $compact_values["family_account_pay_with"] - ]; - - session()->put('print_cashier_receipt_pdf_details', $data); - - return redirect('/patient_finance/make_deposit_treatment'); - } - } - - /** - * Make deposit for co-payments - * - * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View - */ - public function make_deposit_co_payments(Request $request){ - if (isset($request->price_list_category_id) && $request->price_list_category_id != 0){ - $price_list_set = $request->price_list_category_id; - } else { - $price_list_set = false; - } - - $price_list_categories = PriceListCategories::select('patient_category_id', 'id')->get(); - - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $patient = Patient::find($patient_id); - $episode = PatientEpisode::find($episode_id); - - $categories = DB::table('patient_categories')->where('available', 1)->pluck('name', 'id'); - $drug_categories = DB::table('drug_categories')->get(); - $marital_statuses = DB::table('marital_statuses')->pluck('name', 'id'); - $discount = PatientDiscount::where(['patient_category'=>$patient->category_id])->first(); - $discount_options = DiscountCategories::where(['patient_category' => $patient->category_id])->pluck('name','id')->toArray(); - $discount_options = ['' => '- Select Discount -'] + $discount_options; - $payment_arrangement = DB::table('debt_plan_arrangements')->pluck('name', 'id')->toArray(); - $payment_arrangement = ['' => '- select -'] + $payment_arrangement; - $staff_guarantors = DB::table('users')->pluck('first_name', 'id')->toArray(); - - foreach ($staff_guarantors as $key => $value) { - $full_name = $value . " " . get_name($key, "id", "last_name", "users"); - $staff_guarantors[$key] = $full_name; - } - - $service_items = Services::where(['item_type'=>'Co_Payment'])->orderBy('name','asc')->get(); - $deposit_type = 'Co_Payment'; - $tag_id = 7; - - // check if there are any paid services to display receipt - $paid_services = ServiceDeposit::where(['episode_id' => $episode_id, 'service_type' => $deposit_type])->orderBy('created_at', 'desc')->get(); - $invoiced_services = PatientCategoryInvoice::where('episode_id', $episode_id)->where('tag_id', 7)->get(); - - $patient_payment_methods = PatientPaymentMethod::pluck('name', 'id'); - $patient_payment_methods_options = ""; - foreach ($patient_payment_methods as $key => $value) { - $patient_payment_methods_options .= ''; - } - - $patient_unpaid_items_array = explode(",", $this->does_patient_have_unpaid_items($patient_id, $episode_id)); - $patient_unpaid_items = $patient_unpaid_items_array[0]; - $patient_debts = $patient_unpaid_items_array[1]; - - $non_staff_guarantors = DB::table('non_staff_guarantors')->pluck('first_name', 'id')->toArray(); - foreach ($non_staff_guarantors as $key => $value) { - $full_guarantor_name = $value . " " . get_name($key, "id", "last_name", "non_staff_guarantors"); - $non_staff_guarantors[$key] = $full_guarantor_name; - } - - return view('patient_finance::patient_finance.make_deposit_services',compact('patient','episode','episode_id','patient_id','categories', 'patient_unpaid_items', - 'drug_categories','marital_statuses','service_items','deposit_type','discount','discount_options','payment_arrangement','staff_guarantors', 'patient_debts', - 'paid_services', 'tag_id', 'price_list_set', 'price_list_categories', 'patient_payment_methods', 'patient_payment_methods_options', 'invoiced_services', 'non_staff_guarantors')); - } - - /** - * Make deposit for services and other services - */ - public function make_deposit_other_services(Request $request){ - if (isset($request->price_list_category_id) && $request->price_list_category_id != 0){ - $price_list_set = $request->price_list_category_id; - } else { - $price_list_set = false; - } - - $price_list_categories = PriceListCategories::select('patient_category_id', 'id')->get(); - - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $patient = Patient::find($patient_id); - $episode = PatientEpisode::find($episode_id); - - $categories = DB::table('patient_categories')->where('available', 1)->pluck('name', 'id'); - $drug_categories = DB::table('drug_categories')->get(); - $marital_statuses = DB::table('marital_statuses')->pluck('name', 'id'); - $discount = PatientDiscount::where(['patient_category'=>$patient->category_id])->first(); - $discount_options = DiscountCategories::where(['patient_category' => $patient->category_id])->pluck('name','id')->toArray(); - $discount_options = ['' => '- Select Discount -'] + $discount_options; - $payment_arrangement = DB::table('debt_plan_arrangements')->pluck('name', 'id')->toArray(); - $payment_arrangement = ['' => '- select -'] + $payment_arrangement; - $staff_guarantors = DB::table('users')->pluck('first_name', 'id')->toArray(); - - foreach ($staff_guarantors as $key => $value) { - $full_name = $value . " " . get_name($key, "id", "last_name", "users"); - $staff_guarantors[$key] = $full_name; - } - - $service_items = Services::where(['item_type'=>'Other_service'])->orWhere(['item_type'=>'Service'])->orderBy('name','asc')->get(); - $deposit_type = 'Services'; - $tag_id = 8; - - // check if there are any paid services to display receipt - $paid_services = ServiceDeposit::where(['episode_id' => $episode_id, 'service_type' => $deposit_type])->orderBy('created_at', 'desc')->get(); - // check for any used services that were recorded from th clinical side - $used_services = OrderedService::where(['patient_id' => $episode->patient_id, 'episode_id' => $episode->id, 'payment_status' => 0 ,'inpatient_bill_generated' => 0])->get(); - $invoiced_services = PatientCategoryInvoice::where('episode_id', $episode_id)->where('tag_id', 8)->get(); - - $patient_payment_methods = PatientPaymentMethod::pluck('name', 'id'); - $patient_payment_methods_options = ""; - foreach ($patient_payment_methods as $key => $value) { - $patient_payment_methods_options .= ''; - } - - $patient_unpaid_items_array = explode(",", $this->does_patient_have_unpaid_items($patient_id, $episode_id)); - $patient_unpaid_items = $patient_unpaid_items_array[0]; - $patient_debts = $patient_unpaid_items_array[1]; - - $non_staff_guarantors = DB::table('non_staff_guarantors')->pluck('first_name', 'id')->toArray(); - foreach ($non_staff_guarantors as $key => $value) { - $full_guarantor_name = $value . " " . get_name($key, "id", "last_name", "non_staff_guarantors"); - $non_staff_guarantors[$key] = $full_guarantor_name; - } - - return view('patient_finance::patient_finance.make_deposit_services',compact('patient','episode','episode_id','patient_id','categories','drug_categories', 'patient_unpaid_items', - 'marital_statuses','service_items','deposit_type','discount','discount_options','payment_arrangement','staff_guarantors', 'paid_services', 'tag_id', 'patient_debts', - 'price_list_set', 'price_list_categories','used_services', 'patient_payment_methods', 'patient_payment_methods_options', 'invoiced_services', 'non_staff_guarantors')); - } - - /** - * Make deposit for consultation - */ - public function make_deposit_consultation(Request $request){ - - if (isset($request->price_list_category_id) && $request->price_list_category_id != 0){ - $price_list_set = $request->price_list_category_id; - } else { - $price_list_set = false; - } - - $price_list_categories = PriceListCategories::select('patient_category_id', 'id')->get(); - - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $patient = Patient::find($patient_id); - $episode = PatientEpisode::find($episode_id); - - $categories = DB::table('patient_categories')->where('available', 1)->pluck('name', 'id'); - $drug_categories = DB::table('drug_categories')->get(); - $marital_statuses = DB::table('marital_statuses')->pluck('name', 'id'); - $discount = PatientDiscount::where(['patient_category'=>$patient->category_id])->first(); - $discount_options = DiscountCategories::where(['patient_category' => $patient->category_id])->pluck('name','id')->toArray(); - $discount_options = ['' => '- Select Discount -'] + $discount_options; - $payment_arrangement = DB::table('debt_plan_arrangements')->pluck('name', 'id')->toArray(); - $payment_arrangement = ['' => '- select -'] + $payment_arrangement; - $staff_guarantors = DB::table('users')->pluck('first_name', 'id')->toArray(); - - foreach ($staff_guarantors as $key => $value) { - $full_name = $value . " " . get_name($key, "id", "last_name", "users"); - $staff_guarantors[$key] = $full_name; - } - - $service_items = Services::where(['item_type'=>'Consultation'])->orderBy('name','asc')->get(); - $deposit_type = 'Consultation'; - $tag_id = 6; - - // check if there are any paid services to display receipt - $paid_services = ServiceDeposit::where(['episode_id' => $episode_id, 'service_type' => $deposit_type])->orderBy('created_at', 'desc')->get(); - $invoiced_services = PatientCategoryInvoice::where('episode_id', $episode_id)->where('tag_id', 6)->get(); - - $patient_payment_methods = PatientPaymentMethod::pluck('name', 'id'); - $patient_payment_methods_options = ""; - foreach ($patient_payment_methods as $key => $value) { - $patient_payment_methods_options .= ''; - } - - $patient_unpaid_items_array = explode(",", $this->does_patient_have_unpaid_items($patient_id, $episode_id)); - $patient_unpaid_items = $patient_unpaid_items_array[0]; - $patient_debts = $patient_unpaid_items_array[1]; - - $non_staff_guarantors = DB::table('non_staff_guarantors')->pluck('first_name', 'id')->toArray(); - foreach ($non_staff_guarantors as $key => $value) { - $full_guarantor_name = $value . " " . get_name($key, "id", "last_name", "non_staff_guarantors"); - $non_staff_guarantors[$key] = $full_guarantor_name; - } - - $used_services = OrderedService::where(['patient_id' => $episode->patient_id, 'episode_id' => $episode->id, 'payment_status' => 0 ,'inpatient_bill_generated' => 0])->get(); - - return view('patient_finance::patient_finance.make_deposit_services',compact('patient','episode','episode_id','patient_id','categories','drug_categories','marital_statuses','service_items','deposit_type', 'patient_unpaid_items', 'patient_debts', - 'discount','discount_options','payment_arrangement','staff_guarantors', 'paid_services', 'tag_id', 'price_list_set', 'price_list_categories', 'patient_payment_methods', 'patient_payment_methods_options', 'invoiced_services', 'used_services', 'non_staff_guarantors')); - } - - public function store_deposit_services(Request $request){ - $wallets_amount = 0; - - if ($request->has('patient_account_pay_with')) { - if ($request->patient_account_pay_with > $request->patient_account_balance) { - // amount is more than is on the patient account - flash('Patient account balance is less than the current bill.')->error(); - return redirect()->back()->withInput(); - } - - $wallets_amount += $request->patient_account_pay_with; - } - - if ($request->has('family_account_pay_with')) { - $this_patient_to_pay = $request->family_account_pay_with; - $this_family_account_balance = $request->family_account_balance; - $family_account_credit_limit = $request->family_account_credit_limit; - $wallets_amount += $request->family_account_pay_with; - - if (!is_family_consumption_allowed($this_patient_to_pay, $this_family_account_balance, $family_account_credit_limit)) { - return redirect()->back()->withInput(); - } - } - - $request->merge(['wallets_amount' => $wallets_amount]); - - //check if patient is a dependant of another patient e.g main patient with a discount. If so, let Neo enter the matrix - if ($request->has('dependants_balance')) { - $original_dependants_balance = $request->dependants_balance; - $original_patient_category_to_pay = $request->patient_category_to_pay; - - //if new dependants balance is -ve, make it zero - $new_dependants_balance = $request->dependants_balance < 0 ? 0 : $request->dependants_balance; - $request->merge(['dependants_balance' => $new_dependants_balance]); - - //recalculate the patient category to pay - if ($request->patient_category_to_pay > $original_dependants_balance) { - if ($original_dependants_balance < 0) { - $patient_category_to_pay = $request->patient_category_to_pay; - } else{ - $patient_category_to_pay = $request->patient_category_to_pay - $original_dependants_balance; - } - } else { - $patient_category_to_pay = 0; - } - $request->merge(['patient_category_to_pay' => $patient_category_to_pay]); - - //make the main patient's patient category override the category of the dependant - $patient_is_a_dependant_of = patient_is_a_dependant_of($request->patient_id); - $main_patient_patient_category = get_name($patient_is_a_dependant_of, "id", "category_id", "patients"); - $request->merge(['patient_category_id' => $main_patient_patient_category]); - } - - // clean up the services - $temp_service_ids_array = $request->service_id; - - if (in_array("--Select Service--", $temp_service_ids_array)) { - $dirty_service_ids_array = $request->service_id; - $temp_service_ids_array = []; - for ($i=0; $i < count($dirty_service_ids_array) ; $i++) { - if ($dirty_service_ids_array[$i] != "--Select Service--") { - $temp_service_ids_array[] = $dirty_service_ids_array[$i]; - } - } - } - - $request->service_id = array_values($temp_service_ids_array); - - if (is_null($request->service_amount) || !is_array($request->service_id) || (count($request->service_id) == 1 && $request->service_id[0] == "--Select Service--")) { - // check if any items are available to pay for - flash('Please make sure you select some services before submitting!')->error(); - return redirect()->back(); - } - - if ($request->patient_unpaid_debts > 0) { - $this->debtorsService->pay_for_patient_debt($request->episode_id, $request->patient_unpaid_debts); - } - - $patient_unpaid_debts = $request->patient_unpaid_debts; - - $service_deposit = new ServicesDeposit; - - // begin transaction - DB::beginTransaction(); - - try { - // send data to be saved in services table and get the is_invoice flag and receipt number - $return_data_array = explode(",", $service_deposit->store_payment($request)); - - // all good so we can commit - DB::commit(); - } catch (\Exception | \Error $exception) { - DB::rollback(); - - DB::table('system_errors')->insert([ - 'error_message' => $exception->getMessage(), 'error_trace' => $exception->getTraceAsString(), - 'logged_in_user' => Auth::id() - ]); - - flash("An error occurred. Please try again or contact Stre@mline Support")->error(); - return back()->withInput(); - } - - // is_invoice flag - $is_invoice = $return_data_array[0]; - - // receipt number - $receipt_number = $return_data_array[1]; - - if ($request->has('patient_account_pay_with')) { - record_patient_accounts_consumption($request->patient_id, $request->episode_id, $request->patient_account_pay_with, $request->tag_id, $receipt_number); - } - - if ($request->has('family_account_pay_with')) { - record_family_consumption($request->patient_id, $request->episode_id, $request->family_account_id, $request->family_account_pay_with, 'Services', $receipt_number); - } - - // for the staff guarantor, if debt plan id is not 0, add receipt number to it - if ($request->debt_plan_id != 0) { - DB::table('debt_plan')->where('id', $request->debt_plan_id) - ->update(['receipt_number' => $receipt_number]); - } - - // details to be used for receipt - $hospital_information = HospitalInformation::first(); - $total_amount_pay = $request->total_amount_pay; - $staff_guarantor_to_pay = $request->staff_guarantor_to_pay; - $donor_to_pay = $request->donor_to_pay; - $patient_to_pay = $request->patient_to_pay; - $hospital_to_pay_selected_discount = $request->hospital_to_pay_selected_discount; - $hospital_to_pay_general_discount = $request->hospital_to_pay_general_discount; - $balance = $request->balance; - $patient_category_to_pay = $request->patient_category_to_pay; - $patient_category_id_to_pay = $request->patient_category_id; - $one_off_discount = $request->one_off_discount; - $one_off_discount_memo = $request->one_off_discount_memo; - $patient_account_pay_with = $request->patient_account_pay_with ?? 0; - $family_account_pay_with = $request->family_account_pay_with ?? 0; - $amount_paid_from_wallets = $patient_account_pay_with + $family_account_pay_with; - - // check if hospital discounts are positive to add them to total - if($hospital_to_pay_selected_discount > 0){ - $hospital_to_pay = $hospital_to_pay_general_discount + $hospital_to_pay_selected_discount; - } else { - $hospital_to_pay = $hospital_to_pay_general_discount; - } - - $service_prices_array = $request->service_amount; - $service_ids_array = $request->service_id; - $patient = Patient::find($request->patient_id); - $receipt_date = date('Y-m-d H:i:s'); - - /*====== if the patient is a dependant of a certain patient category patient, do this =====*/ - $patient_category_id = get_name($request->patient_id, "id", "category_id", "patients"); - $does_patient_category_have_threshold = does_patient_category_have_threshold($patient_category_id); - $patient_is_a_dependant_of = patient_is_a_dependant_of($request->patient_id); - - if ($does_patient_category_have_threshold || !is_null($patient_is_a_dependant_of)) { - $tag_id = 6; - $amount_consumed = $patient_to_pay + $original_patient_category_to_pay; - $this->record_dependant_consumption($request, $patient_is_a_dependant_of, $request->service_id, $service_prices_array, $amount_consumed, $tag_id, "Dependant-Consultation", $receipt_number); - } - /*===============end of that dependant functionality =======================*/ - - $return_payment_methods = $this->register_payment_method($request->patient_id, $request->episode_id, $request->original_cash_to_pay, $request->payment_method, - $request->payment_methods_amount, $request->ref_number, $request->ref_number_added_by, $receipt_number, $request->tag_id, Auth::id(), $amount_paid_from_wallets); - - $cashier = Auth::id(); - - $compact_values = compact('hospital_information', 'receipt_date', 'receipt_number', 'return_payment_methods', - 'patient', 'is_invoice', 'service_prices_array', 'service_ids_array', 'patient_category_id_to_pay', 'patient_account_pay_with', - 'total_amount_pay', 'staff_guarantor_to_pay', 'patient_unpaid_debts', 'family_account_pay_with', 'cashier', - 'donor_to_pay', 'balance', 'hospital_to_pay', 'patient_to_pay', 'patient_category_to_pay', 'one_off_discount_memo', 'one_off_discount'); - - $this->save_receipt_json($receipt_number, json_encode($compact_values)); - - flash("Service deposit saved successfully")->success(); - - if (is_cashier_receipt_type_print_html()) { - return redirect('/patient_finance/print_service_receipt/' . 1 . '/' . $receipt_number); - } else { - // so we first have to set a session and then go back to the payment page - // on the payment page we can then set a JS variable that can help redirect us to our pdf print - session()->put('print_cashier_receipt_pdf', 1); - - // since we want to reduce the amount of duplicate code, we shall send all items to one file for printing - $data = [ - "hospital_information" => $compact_values["hospital_information"], "receipt_date" => $compact_values["receipt_date"], "receipt_number" => $compact_values["receipt_number"], - "one_off_discount_memo" => $compact_values["one_off_discount_memo"], "one_off_discount" => $compact_values["one_off_discount"], "patient" => $compact_values["patient"], - "is_invoice" => $compact_values["is_invoice"], "items" => $compact_values["service_ids_array"], "item_quantity" => array_fill(0, count($compact_values["service_ids_array"]), 1), "item_subtotal" => $compact_values["service_prices_array"], - "patient_category_id_to_pay" => $compact_values["patient_category_id_to_pay"], "total_amount_pay" => $compact_values["total_amount_pay"], - "staff_guarantor_to_pay" => $compact_values["staff_guarantor_to_pay"], "patient_unpaid_debts" => $compact_values["patient_unpaid_debts"], "donor_to_pay" => $compact_values["donor_to_pay"], "balance" => $compact_values["balance"], - "hospital_to_pay" => $compact_values["hospital_to_pay"], "patient_to_pay" => $compact_values["patient_to_pay"], "patient_category_to_pay" => $compact_values["patient_category_to_pay"], "return_payment_methods" => $compact_values["return_payment_methods"], - "treatment_balance" => 0, "item_table" => "services", "ward_discount_amount" => 0, "discounts_applied" => 0, "patient_account_pay_with" => $compact_values["patient_account_pay_with"], "family_account_pay_with" => $compact_values["family_account_pay_with"] - ]; - - session()->put('print_cashier_receipt_pdf_details', $data); - - return redirect('/patient_finance/make_deposit_other_services'); - } - } - - /** - * Reprint service receipt - * - * @param $id - * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View - */ - public function print_service_receipt($type, $receipt_number){ - - // check if track_receipts has details - $receipt_json = get_name((int)$receipt_number, 'id', 'receipt_json', 'track_receipts'); - - if ($receipt_json) { - $compact_values = json_decode($receipt_json, true); - $compact_values["patient"] = Patient::find($compact_values["patient"]["id"]); - $compact_values["hospital_information"] = HospitalInformation::first(); - $compact_values["discounts_applied"] = 0; - $compact_values["cashier"] = $compact_values["cashier"] ?? Auth::id(); - } else { - // get payment details for the services - if ($type == 1) { - $service_payment = ServiceDeposit::where(['receipt_number' => $receipt_number])->first(); - - $patient_to_pay = $service_payment->patient_amount_paid; - - $service_prices_array = explode(",", $service_payment->items_amounts); - $service_ids_array = explode(",", $service_payment->items_ids); - } else { - $service_payment = PatientCategoryInvoice::where(['receipt_number' => $receipt_number])->first(); - - $patient_to_pay = 0; - - $service_prices_array = explode(",", $service_payment->items_amounts); - $service_ids_array = explode(",", $service_payment->items_ids); - } - - $total_amount_pay = 0; - - foreach ($service_prices_array as $price){ - $total_amount_pay += $price; - } - - $receipt_date = $service_payment->created_at; - - // receipt number - $receipt_number = $service_payment->receipt_number; - - $cashier = $service_payment->created_by; - - // details to be used for receipt - $hospital_information = HospitalInformation::first(); - $discounts_applied = $total_amount_pay - $patient_to_pay; - $patient = Patient::find($service_payment->patient_id); - $patient_account_pay_with = 0; - $family_account_pay_with = 0; - - $compact_values = compact('hospital_information', 'receipt_date', 'receipt_number', 'discounts_applied', - 'patient', 'service_prices_array', 'service_ids_array','total_amount_pay','patient_to_pay', 'cashier', 'type', 'patient_account_pay_with', 'family_account_pay_with'); - } - - if (is_cashier_receipt_type_print_html()) { - if ($receipt_json) { - return view('patient_finance::patient_finance.receipts.services', $compact_values); - } else { - return view('patient_finance::patient_finance.receipts.services_reprint', $compact_values); - } - } else { - // so we first have to set a session and then go back to the payment page - // on the payment page we can then set a JS variable that can help redirect us to our pdf print - session()->put('print_cashier_receipt_pdf', 1); - - // since we want to reduce the amount of duplicate code, we shall send all items to one file for printing - $data = [ - "hospital_information" => $compact_values["hospital_information"], "receipt_date" => $compact_values["receipt_date"], "receipt_number" => $compact_values["receipt_number"], - "one_off_discount_memo" => "", "one_off_discount" => "", "patient" => $compact_values["patient"], - "is_invoice" => "", "items" => $compact_values["service_ids_array"], "item_quantity" => array_fill(0, count($compact_values["service_ids_array"]), 1), "item_subtotal" => $compact_values["service_prices_array"], - "patient_category_id_to_pay" => 0, "total_amount_pay" => $compact_values["total_amount_pay"], - "staff_guarantor_to_pay" => "", "patient_unpaid_debts" => 0, "donor_to_pay" => 0, "balance" => 0, - "hospital_to_pay" => "", "patient_to_pay" => $compact_values["patient_to_pay"], "patient_category_to_pay" => 0, "return_payment_methods" => [], - "treatment_balance" => 0, "item_table" => "services", "ward_discount_amount" => 0, "discounts_applied" => $compact_values["discounts_applied"], "patient_account_pay_with" => $compact_values["patient_account_pay_with"], "family_account_pay_with" => $compact_values["family_account_pay_with"], "cashier" => $compact_values["cashier"] - ]; - - session()->put('print_cashier_receipt_pdf_details', $data); - - return redirect('/patient_finance/make_deposit_other_services'); - } - } - - /** - * Get price for service in consideration of insurance - * - * @param Request $request - * @return string - */ - public function get_service_cost(Request $request){ - $patient_id = $request->patient_id; - $service_id = $request->service_id; - $price_list_category_id = $request->price_list_category; - $response_text = ""; - - // get the service from table - $service = Services::where(['id' => $service_id])->first(); - - if ($price_list_category_id && $price_list_category_id != 0){ - $price_list_category = is_null($service->price_list_category) ? [] : explode(',', $service->price_list_category); - $price_list_price = is_null($service->price_list_price) ? [] : explode(',', $service->price_list_price); - - $key = array_search($price_list_category_id, $price_list_category); - - $service_price = isset($price_list_price[$key]) ? $price_list_price[$key] : 0; - } else { - $service_price = $service->non_insured_price; - } - - $response_text .= ""; - - return $response_text; - } - - /** - * Get the donor discount prices - * - * @param Request $request - * @return string - */ - public function get_discount_cost(Request $request){ - $discount_id = $request->discount_id; - - $discount_category = DiscountCategories::find($discount_id); - - $patient_to_pay = $discount_category->patient_amount; - $donor_to_pay = $discount_category->donor_amount; - $discount_type = $discount_category->discount_type; - $donor_id = $discount_category->donor_id; - - return $patient_to_pay . ',' . $donor_to_pay . ',' . $discount_type . ',' . $donor_id; - } - - /** - * Save debt plan information - * - * @param Request $request - * @return int - */ - public function save_debt_plan(Request $request){ - $new_debt_plan = new DebtPlan; - $tag_id = $request->tag_id; - - if ($tag_id == 6 || $tag_id == 8 || $tag_id == 7 || $tag_id == 10) { - //Consultations / Services - $income_account = 7; - } elseif ($tag_id == 3 || $tag_id == 1) { - //Drugs / Treatments - $income_account = 4; - } elseif ($tag_id == 5) { - //Sundries - $income_account = 12; - } elseif ($tag_id == 2) { - //Investigations - $income_account = 11; - } elseif ($tag_id == 4) { - //Procedures - $income_account = 8; - } else { - $income_account = NULL; - } - - $new_debt_plan->patient_id = $request->patient_id; - $new_debt_plan->episode_id = $request->episode_id; - $new_debt_plan->amount_owed = $request->amount_owed; - $new_debt_plan->date_of_bill = Carbon::createFromFormat('d/m/Y', $request->date_of_bill)->toDateString(); - $new_debt_plan->guarantor_type = $request->guarantor_type; - $new_debt_plan->staff_guarantor = implode(",", $request->staff_guarantor); - $new_debt_plan->staff_guarantor_to_pay = $request->guarantor_to_pay; - $new_debt_plan->debt_plan_arrangement = $request->payment_arrangement; - $new_debt_plan->first_installment_date = is_null($request->first_installment_date) ? null : Carbon::createFromFormat('d/m/Y', $request->first_installment_date)->toDateString(); - $new_debt_plan->second_installment_date = is_null($request->second_installment_date) ? null : Carbon::createFromFormat('d/m/Y', $request->second_installment_date)->toDateString(); - $new_debt_plan->third_installment_date = is_null($request->third_installment_date) ? null : Carbon::createFromFormat('d/m/Y', $request->third_installment_date)->toDateString(); - $new_debt_plan->fourth_installment_date = is_null($request->fourth_installment_date) ? null : Carbon::createFromFormat('d/m/Y', $request->fourth_installment_date)->toDateString(); - $new_debt_plan->comment = $request->comment; - $new_debt_plan->authorised_by = $request->authorised_by; - $new_debt_plan->tag_id = $request->tag_id; - $new_debt_plan->income_account = $income_account; - $new_debt_plan->payment_id = 0; - $new_debt_plan->created_by = Auth::user()->id; - - try { - if($new_debt_plan->save()){ - flash("Debt Plan has been saved successfully")->success(); - return $new_debt_plan->id; - } else { - return 0; - } - } catch (\Exception | \Error $exception) { - return 0; - } - } - - /** - * Get service items for current episode if they exist - * - * @param $episode_id - * @return mixed - */ - public static function get_service_items_string($episode_id){ - $service_items = ServiceDeposit::where(['episode_id'=>$episode_id])->select('items_ids', 'service_type')->get()->toArray(); - return $service_items; - } - - /** - * Get service items for current episode from pay later patients - * - * @param $episode_id - * @return mixed - */ - public static function get_service_items_pay_later_string($episode_id){ - $service_items = PatientCategoryInvoice::where(['episode_id'=>$episode_id]) - ->whereIn('tag_id', [6, 8]) - ->select('items_ids') - ->get() - ->toArray(); - - return $service_items; - } - - /** - * Get service items for current episode if they exist - * - * @param $episode_id - * @return mixed - */ - public static function get_inpatient_deposit_string($episode_id){ - $service_items = ServiceDeposit::where(['episode_id'=>$episode_id, 'items_ids' => 'Inpatient_Deposit'])->select('items_ids')->get()->toArray(); - return $service_items; - } - - public static function get_inpatient_deposit_status($episode_id){ - $inpatient_sum = DB::table('service_deposits')->whereNull('deleted_at')->where(['episode_id' => $episode_id,'service_type' => 'Inpatient_Deposit'])->sum('patient_amount_paid'); - - $inpatient_info = InpatientBill::where(['episode_id' => $episode_id])->first(); - - if ($inpatient_info) { - if ($inpatient_info->amount_to_pay > $inpatient_sum){ - return 2; - } else { - return 1; - } - } else { - return 1; - } - } - - /** - * Check if patient has a debt and if it is paid or not - * - * @param $episode_id - * @return string - */ - public static function check_debt($episode_id){ - $paid = Debtor::where(['episode_id' => $episode_id, 'payment_status' => 1])->get(); - $not_paid = Debtor::where(['episode_id' => $episode_id, 'payment_status' => 0])->get(); - - if($not_paid->count() > 0){ - return 0; - } elseif ($paid->count() > 0){ - return 1; - } else { - return null; - } - } - - /** - * Check if patient episode has a debt plan. - * - * @param $episode_id - * @return string - */ - public static function check_patient_debt_plan($episode_id){ - $paid = DebtPlan::where(['episode_id' => $episode_id, 'balance_remaining' => 0])->count(); - $not_paid = DebtPlan::where('episode_id',$episode_id)->where(function ($query) { - $query->whereNull('balance_remaining')->orWhere('balance_remaining','>', 0); - })->count(); - if(!empty($not_paid)) return 0; - elseif (!empty($paid)) return 1; - else return null; - } - - /** - * Check if patient has unpaid sundries - * - * @param $episode_id - * @return mixed - */ - public static function check_sundry_payment($episode_id){ - $paid = DB::table('ordered_sundries')->whereNull('deleted_at')->where(['episode_id' => $episode_id, 'payment_status' => 1])->get(); - $not_paid = DB::table('ordered_sundries')->whereNull('deleted_at')->where(['episode_id' => $episode_id, 'payment_status' => 0, 'inpatient_bill_generated' => 0])->get(); - - if(count($not_paid) > 0){ - return 0; - } elseif (count($paid) > 0){ - return 1; - } else { - return null; - } - } - - /** - * Check if patient has unpaid sundries - * - * @param $episode_id - * @return mixed - */ - public static function check_optical_payment($episode_id){ - $paid = DB::table('ordered_eye_glasses')->whereNull('deleted_at')->where(['episode_id' => $episode_id, 'payment_status' => 1])->get(); - $not_paid = DB::table('ordered_eye_glasses')->whereNull('deleted_at')->where(['episode_id' => $episode_id, 'payment_status' => 0])->get(); - - if(count($not_paid) > 0){ - return 0; - } elseif (count($paid) > 0){ - return 1; - } else { - return null; - } - } - - /** - * Check if patient has unpaid investigations - * - * @param $episode_id - * @return mixed - */ - public static function check_investigations_payment($episode_id){ - $paid = DB::table('ordered_investigations')->whereNull('deleted_at')->where(['episode_id' => $episode_id, 'payment_status' => 1, 'inpatient_bill_generated' => 0])->get(); - $not_paid = DB::table('ordered_investigations')->whereNull('deleted_at')->where(['episode_id' => $episode_id, 'payment_status' => 0, 'inpatient_bill_generated' => 0])->get(); - - if(count($not_paid) > 0){ - return 0; - } elseif (count($paid) > 0){ - return 1; - } else { - return null; - } - } - - /** - * Check if patient has unpaid prescriptions - * - * @param $episode_id - * @return mixed - */ - public static function check_prescription_payment($episode_id){ - $treatments = DB::table('treatments')->whereNull('deleted_at')->where(['episode_id' => $episode_id, 'inpatient_bill_generated' => 0])->get(); - $status = null; - - if(count($treatments) > 0){ - foreach ($treatments as $treatment) { - if ($treatment->tta == 0) { - if ($treatment->payment_status == 1) { - $status = 1; - } else if ($treatment->payment_status == 0) { - $status = 0; - break; - } - } - } - } - - return $status; - } - - /** - * Check if patient has unpaid procedures - * - * @param $episode_id - * @return mixed - */ - public static function check_procedures_payment($episode_id){ - $paid = DB::table('ordered_procedures')->whereNull('deleted_at')->where(['episode_id' => $episode_id, 'payment_status' => 1])->get(); - $not_paid = DB::table('ordered_procedures')->whereNull('deleted_at')->where(['episode_id' => $episode_id, 'payment_status' => 0, 'inpatient_bill_generated' => 0])->get(); - - if(count($not_paid) > 0){ - return 0; - } elseif (count($paid) > 0){ - return 1; - } else { - return null; - } - } - - /** - * Make deposits using central billing - * - * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View - */ - public function make_deposit_central_billing(Request $request){ - if (isset($request->price_list_category_id) && $request->price_list_category_id != 0){ - $price_list_set = $request->price_list_category_id; - } else { - $price_list_set = false; - } - - $price_list_categories = PriceListCategories::select('patient_category_id', 'id')->get(); - - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $episode = PatientEpisode::find($episode_id); - $patient = Patient::find($patient_id); - $staff_guarantors = DB::table('users')->pluck('first_name', 'id')->toArray(); - - foreach ($staff_guarantors as $key => $value) { - $full_name = $value . " " . get_name($key, "id", "last_name", "users"); - $staff_guarantors[$key] = $full_name; - } - $categories = DB::table('patient_categories')->where('available', 1)->pluck('name', 'id'); - $drug_categories = DB::table('drug_categories')->get(); - $marital_statuses = DB::table('marital_statuses')->pluck('name', 'id'); - $payment_arrangement = DB::table('debt_plan_arrangements')->pluck('name', 'id')->toArray(); - $payment_arrangement = ['' => '- select -'] + $payment_arrangement; - $discount = PatientDiscount::where(['patient_category'=>$patient->category_id])->first(); - $discount_options = DiscountCategories::where(['patient_category' => $patient->category_id])->pluck('name','id')->toArray(); - $discount_options = ['' => '- Select Discount -'] + $discount_options; - - // get services - $service_items = Services::where('available', 1)->orderby('name','asc')->get(); - - // check for any used services that were recorded from th clinical side - $used_services = OrderedService::where(['patient_id' => $episode->patient_id, 'episode_id' => $episode->id, 'payment_status' => 0 ,'inpatient_bill_generated' => 0])->get(); - - // get procedures - $ordered_procedures = OrderedProcedure::where(['episode_id' => $episode_id,'payment_status' => '0','inpatient_bill_generated' => 0])->get(); - - // get investigations - $ordered_investigations = OrderedInvestigation::where(['episode_id' => $episode_id,'payment_status' => '0', 'inpatient_bill_generated' => 0])->get(); - - // get ordered treatment - $treatments = Treatment::where(['payment_status' => 0, 'episode_id' => $episode_id, 'inpatient_bill_generated' => 0])->get(); - - // get sundries - $ordered_sundries = OrderedSundry::where(['episode_id' => $episode_id,'payment_status' => '0' ,'inpatient_bill_generated' => 0])->get(); - - // get eyeglasses - $ordered_optics = OrderedEyeGlasses::where(['episode_id' => $episode_id,'payment_status' => '0'])->get(); - - $paid_service_items = []; - $paid_services = ServiceDeposit::where(['episode_id' => $episode_id])->orderBy('created_at', 'desc')->get(); - $invoiced_services = PatientCategoryInvoice::where('episode_id', $episode_id)->whereIn('tag_id', [6, 8])->get(); - - foreach ($paid_services as $service) { - $paid_service_items = array_merge($paid_service_items, explode(",", $service->items_ids)); - } - - foreach ($invoiced_services as $service) { - $paid_service_items = array_merge($paid_service_items, explode(",", $service->items_ids)); - } - - $central_billing_receipts = CentralBillingDeposits::where('episode_id', $episode_id)->groupBy('receipt_number')->get(['receipt_number', 'patient_amount_paid', 'created_at', 'created_by']); - - $patient_payment_methods = PatientPaymentMethod::pluck('name', 'id'); - $patient_payment_methods_options = ""; - foreach ($patient_payment_methods as $key => $value) { - $patient_payment_methods_options .= ''; - } - - $patient_unpaid_items_array = explode(",", $this->does_patient_have_unpaid_items($patient_id, $episode_id)); - $patient_unpaid_items = $patient_unpaid_items_array[0]; - $patient_debts = $patient_unpaid_items_array[1]; - - $non_staff_guarantors = DB::table('non_staff_guarantors')->pluck('first_name', 'id')->toArray(); - foreach ($non_staff_guarantors as $key => $value) { - $full_guarantor_name = $value . " " . get_name($key, "id", "last_name", "non_staff_guarantors"); - $non_staff_guarantors[$key] = $full_guarantor_name; - } - - return view('patient_finance::patient_finance.make_deposit_central_billing',compact('patient_id','episode_id', 'paid_service_items', 'patient_payment_methods', 'patient_payment_methods_options', - 'patient','episode','categories','drug_categories','marital_statuses','discount','discount_options', 'ordered_sundries', 'used_services', 'central_billing_receipts', 'patient_unpaid_items', - 'payment_arrangement','staff_guarantors', 'service_items', 'ordered_procedures', 'ordered_investigations', 'treatments', 'price_list_set', 'price_list_categories', 'patient_debts', 'non_staff_guarantors', 'ordered_optics')); - } - - public function central_billing_receipt_details($receipt_number) { - $tags = [ - 1 => 'Drugs', 2 => 'Investigations', - 3 => 'Treatments', 4 => 'Procedures', - 5 => 'Sundries', 6 => 'Consultation', - 8 => 'Services', 16 => 'Optical Items' - ]; - - $tags_parent_tables = [ - 1 => 'drugs', 2 => 'investigations', - 3 => 'drugs', 4 => 'procedures', - 5 => 'sundries', 6 => 'services', - 8 => 'services', 16 => 'eye_glasses' - ]; - - $html_text = ""; - - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - - $central_billing_payments = DB::table('central_billing_deposits') - ->where('receipt_number', $receipt_number)->get(); - - foreach($central_billing_payments as $item){ - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - - $item_ids = explode(",", $item->items_ids); - $item_amounts = explode(",", $item->items_amounts); - $items_quantity = explode(",", $item->items_quantity); - - for($z = 0; $z < count($item_ids); $z++){ - if($item_ids[$z] != 0) { - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - } - } - } - - $html_text .= "
    Name Quantity Amount

    " . $tags[$item->tag_id] ."

    " . get_name($item_ids[$z], 'id', 'name', $tags_parent_tables[$item->tag_id]) . "" . ($items_quantity[$z] ?? "") . "" . ugandan_shillings($item_amounts[$z]) . "
    "; - - return json_encode([ - "html" => $html_text - ]); - } - - public function reprint_central_billing($receipt_number) { - - // check if track_receipts has details - $receipt_json = get_name((int)$receipt_number, 'id', 'receipt_json', 'track_receipts'); - - if ($receipt_json) { - $compact_values = json_decode($receipt_json, true); - $compact_values["patient"] = Patient::find($compact_values["patient"]["id"]); - $compact_values["cashier"] = $compact_values["cashier"] ?? Auth::id(); - $compact_values["hospital_information"] = HospitalInformation::first(); - } else { - // details to be used for receipt - $hospital_information = HospitalInformation::first(); - $service_prices_array = []; - $service_ids_array = []; - $procedure_ids_array = []; - $procedure_amounts_array = []; - $investigation_ids_array = []; - $investigation_amounts_array = []; - $treatment_item = []; - $treatment_quantity = []; - $treatment_subtotal = []; - $sundry_item = []; - $sundry_quantity = []; - $sundry_subtotal = []; - $total_amount_pay = 0; - $staff_guarantor_to_pay = 0; - $one_off_discount_memo = ""; - $one_off_discount = 0; - $treatment_balance = 0; - $balance = 0; - $hospital_to_pay = 0; - $patient_category_to_pay = 0; - $optic_item = []; - $optic_quantity = []; - $optic_subtotal = []; - $return_payment_methods = []; - $patient_to_pay = 0; - - $central_billing_payments = DB::table('central_billing_deposits') - ->where('receipt_number', $receipt_number)->get(); - - foreach($central_billing_payments as $item){ - $item_ids = explode(",", $item->items_ids); - $item_amounts = explode(",", $item->items_amounts); - $items_quantity = explode(",", $item->items_quantity); - $patient_to_pay += $item->patient_amount_paid; - $patient_category_to_pay += $item->patient_category_amount_paid; - - for ($i = 0; $i < count($item_ids); $i++) { - $total_amount_pay += $item_amounts[$i]; - - if($item_ids[$i] != 0) { - switch ($item->tag_id) { - case 1: - case 3: - // Drugs - $treatment_item[] = $item_ids[$i]; - $treatment_quantity[] = $items_quantity[$i]; - $treatment_subtotal[] = $item_amounts[$i]; - break; - case 2: - // Investigations - $investigation_ids_array[] = $item_ids[$i]; - $investigation_amounts_array[] = $item_amounts[$i]; - break; - case 4: - // Procedures - $procedure_ids_array[] = $item_ids[$i]; - $procedure_amounts_array[] = $item_amounts[$i]; - break; - case 5: - // Sundries - $sundry_item[] = $item_ids[$i]; - $sundry_quantity[] = $items_quantity[$i]; - $sundry_subtotal[] = $item_amounts[$i]; - break; - case 6: - case 8: - // Consultation - $service_prices_array[] = $item_amounts[$i]; - $service_ids_array[] = $item_ids[$i]; - break; - case 19: - // Optics - $optic_item[] = $item_ids[$i]; - $optic_quantity[] = $items_quantity[$i]; - $optic_subtotal[] = $item_amounts[$i]; - break; - } - } - } - } - - $patient = Patient::find($central_billing_payments[0]->patient_id); - $receipt_date = $central_billing_payments[0]->created_at; - $patient_category_id_to_pay = $patient->category_id; - $patient_account_pay_with = 0; - $family_account_pay_with = 0; - - $is_invoice = $patient_category_to_pay > 0; - - $cashier = $central_billing_payments[0]->created_by; - - $compact_values = compact('hospital_information', 'receipt_date', 'receipt_number', 'patient', 'is_invoice', - 'service_prices_array', 'service_ids_array', 'patient_account_pay_with', 'family_account_pay_with', - 'procedure_ids_array', 'procedure_amounts_array', 'investigation_ids_array', 'investigation_amounts_array', 'treatment_item', 'treatment_quantity', 'treatment_subtotal', - 'total_amount_pay', 'staff_guarantor_to_pay', 'one_off_discount_memo', 'one_off_discount', 'sundry_item', 'sundry_quantity', 'sundry_subtotal', 'treatment_balance', - 'balance', 'hospital_to_pay', 'patient_to_pay', 'patient_category_to_pay', 'patient_category_id_to_pay', - 'optic_item', 'optic_quantity', 'optic_subtotal', 'return_payment_methods', 'cashier'); - } - - if (is_cashier_receipt_type_print_html()) { - if ($receipt_json) { - return view('patient_finance::patient_finance.receipts.central_billing', $compact_values); - } else { - return view('patient_finance::patient_finance.receipts.central_billing_reprint', $compact_values); - } - } else { - // so we first have to set a session and then go back to the payment page - // on the payment page we can then set a JS variable that can help redirect us to our pdf print - session()->put('print_cashier_receipt_pdf', 1); - - session()->put('print_cashier_receipt_pdf_details', $compact_values); - session()->put('is_central_billing_receipt', 1); - - return redirect('/patient_finance/make_deposit_central_billing'); - } - } - - public function store_deposit_central_billing(Request $request){ - // reset the services to remove 0 items - $pre_service_ids = $request->service_id; - foreach ($pre_service_ids as $key => $value) { - if ($value == 0) { - unset($pre_service_ids[$key]); - } - } - - $request->service_id = array_values($pre_service_ids); - - $wallets_amount = 0; - - if ($request->has('patient_account_pay_with')) { - if ($request->patient_account_pay_with > $request->patient_account_balance) { - // amount is more than is on the patient account - flash('Patient account balance is less than the current bill.')->error(); - return redirect()->back()->withInput(); - } - $wallets_amount += $request->patient_account_pay_with; - } - - if ($request->has('family_account_pay_with')) { - $this_patient_to_pay = $request->family_account_pay_with; - $this_family_account_balance = $request->family_account_balance; - $family_account_credit_limit = $request->family_account_credit_limit; - $wallets_amount += $request->family_account_pay_with; - - if (!is_family_consumption_allowed($this_patient_to_pay, $this_family_account_balance, $family_account_credit_limit)) { - return redirect()->back()->withInput(); - } - } - - $request->merge(['wallets_amount' => $wallets_amount]); - - //check if patient is a dependant of another patient e.g staff with a discount. If so, let Neo enter the matrix - if ($request->has('dependants_balance')) { - $original_dependants_balance = $request->dependants_balance; - - //make the main patient's patient category override the category of the dependant - $patient_is_a_dependant_of = patient_is_a_dependant_of($request->patient_id); - $main_patient_patient_category = get_name($patient_is_a_dependant_of, "id", "category_id", "patients"); - $request->merge(['patient_category_id' => $main_patient_patient_category]); - - //consume item by item to figure out the new category_to_pay values - if ($request->has('services_category_to_pay')) { - //if new dependants balance is -ve, make it zero - $new_dependants_balance = $request->dependants_balance < 0 ? 0 : $request->dependants_balance; - $request->merge(['dependants_balance' => $new_dependants_balance]); - //now do this - $original_services_cat_to_pay = $request->services_category_to_pay; - if($request->services_category_to_pay > $request->dependants_balance){ - $services_category_to_pay = $request->services_category_to_pay - $request->dependants_balance; - } else{ - $services_category_to_pay = 0; - } - $request->merge(['services_category_to_pay' => $services_category_to_pay]); - //recalculate the dependants balance - $new_dependants_balance = $request->dependants_balance - $original_services_cat_to_pay; - //if new dependants balance is -ve, make it zero - $new_dependants_balance = $new_dependants_balance < 0 ? 0 : $new_dependants_balance; - $request->merge(['dependants_balance' => $new_dependants_balance]); - } - - if ($request->has('procedures_category_to_pay')) { - $original_procedures_cat_to_pay = $request->procedures_category_to_pay; - if($request->procedures_category_to_pay > $request->dependants_balance){ - $procedures_category_to_pay = $request->procedures_category_to_pay - $request->dependants_balance; - } else{ - $procedures_category_to_pay = 0; - } - $request->merge(['procedures_category_to_pay' => $procedures_category_to_pay]); - //recalculate the dependants balance - $new_dependants_balance = $request->dependants_balance - $original_procedures_cat_to_pay; - //if new dependants balance is -ve, make it zero - $new_dependants_balance = $new_dependants_balance < 0 ? 0 : $new_dependants_balance; - $request->merge(['dependants_balance' => $new_dependants_balance]); - } - - if ($request->has('investigations_category_to_pay')) { - $original_invs_cat_to_pay = $request->investigations_category_to_pay; - if($request->investigations_category_to_pay > $request->dependants_balance){ - $investigations_category_to_pay = $request->investigations_category_to_pay - $request->dependants_balance; - } else{ - $investigations_category_to_pay = 0; - } - $request->merge(['investigations_category_to_pay' => $investigations_category_to_pay]); - //recalculate the dependants balance - $new_dependants_balance = $request->dependants_balance - $original_invs_cat_to_pay; - //if new dependants balance is -ve, make it zero - $new_dependants_balance = $new_dependants_balance < 0 ? 0 : $new_dependants_balance; - $request->merge(['dependants_balance' => $new_dependants_balance]); - } - - if ($request->has('treatment_category_to_pay')) { - $original_treatment_cat_to_pay = $request->treatment_category_to_pay; - if($request->treatment_category_to_pay > $request->dependants_balance){ - $treatment_category_to_pay = $request->treatment_category_to_pay - $request->dependants_balance; - } else{ - $treatment_category_to_pay = 0; - } - $request->merge(['treatment_category_to_pay' => $treatment_category_to_pay]); - //recalculate the dependants balance - $new_dependants_balance = $request->dependants_balance - $original_treatment_cat_to_pay; - //if new dependants balance is -ve, make it zero - $new_dependants_balance = $new_dependants_balance < 0 ? 0 : $new_dependants_balance; - $request->merge(['dependants_balance' => $new_dependants_balance]); - } - - if ($request->has('sundries_category_to_pay')) { - $original_sundries_cat_to_pay = $request->sundries_category_to_pay; - if($request->sundries_category_to_pay > $request->dependants_balance){ - $sundries_category_to_pay = $request->sundries_category_to_pay - $request->dependants_balance; - } else{ - $sundries_category_to_pay = 0; - } - $request->merge(['sundries_category_to_pay' => $sundries_category_to_pay]); - //recalculate the dependants balance - $new_dependants_balance = $request->dependants_balance - $original_sundries_cat_to_pay; - //if new dependants balance is -ve, make it zero - $new_dependants_balance = $new_dependants_balance < 0 ? 0 : $new_dependants_balance; - $request->merge(['dependants_balance' => $new_dependants_balance]); - } - - if ($request->has('optics_category_to_pay')) { - $original_optics_cat_to_pay = $request->optics_category_to_pay; - if($request->optics_category_to_pay > $request->dependants_balance){ - $optics_category_to_pay = $request->optics_category_to_pay - $request->dependants_balance; - } else{ - $optics_category_to_pay = 0; - } - $request->merge(['optics_category_to_pay' => $optics_category_to_pay]); - //recalculate the dependants balance - $new_dependants_balance = $request->dependants_balance - $original_optics_cat_to_pay; - //if new dependants balance is -ve, make it zero - $new_dependants_balance = $new_dependants_balance < 0 ? 0 : $new_dependants_balance; - $request->merge(['dependants_balance' => $new_dependants_balance]); - } - - //recalculate the patient category to pay - if ($request->patient_category_to_pay > $original_dependants_balance) { - if ($original_dependants_balance < 0) { - $patient_category_to_pay = $request->patient_category_to_pay; - } else{ - $patient_category_to_pay = $request->patient_category_to_pay - $original_dependants_balance; - } - } else { - $patient_category_to_pay = 0; - } - $request->merge(['patient_category_to_pay' => $patient_category_to_pay]); - } - - $deposit = new CentralBillingDeposit; - - // begin transaction - DB::beginTransaction(); - - try { - // send data to be saved in respective tables and get the is_invoice flag and receipt number - $return_data_array = explode(",", $deposit->storePayment($request)); - - // all good so we can commit - DB::commit(); - } catch (\Exception | \Error $exception) { - DB::rollback(); - - DB::table('system_errors')->insert([ - 'error_message' => $exception->getMessage(), 'error_trace' => $exception->getTraceAsString(), - 'logged_in_user' => Auth::id() - ]); - - flash("An error occurred. Please try again or contact Stre@mline Support")->error(); - return back()->withInput(); - } - - // is_invoice flag - $is_invoice = $return_data_array[0]; - - // receipt number - $receipt_number = $return_data_array[1]; - - if ($request->has('patient_account_pay_with')) { - record_patient_accounts_consumption($request->patient_id, $request->episode_id, $request->patient_account_pay_with, 11, $receipt_number); - } - - if ($request->has('family_account_pay_with')) { - record_family_consumption($request->patient_id, $request->episode_id, $request->family_account_id, $request->family_account_pay_with, 'Central Billing', $receipt_number); - } - - // for the staff guarantor, if debt plan id is not 0, add receipt number to it - if ($request->debt_plan_id != 0) { - DB::table('debt_plan')->where('id', $request->debt_plan_id) - ->update(['receipt_number' => $receipt_number]); - } - - // details to be used for receipt - $hospital_information = HospitalInformation::first(); - $total_amount_pay = $request->total_amount_pay; - $staff_guarantor_to_pay = $request->staff_guarantor_to_pay; - $patient_to_pay = $request->patient_to_pay; - $hospital_to_pay = $request->hospital_to_pay_general_discount; - $balance = $request->balance; - $patient_category_to_pay = $request->patient_category_to_pay; - $patient_category_id_to_pay = $request->patient_category_id; - $one_off_discount = $request->one_off_discount; - $one_off_discount_memo = $request->one_off_discount_memo; - $patient_account_pay_with = $request->patient_account_pay_with ?? 0; - $family_account_pay_with = $request->family_account_pay_with ?? 0; - $amount_paid_from_wallets = $patient_account_pay_with + $family_account_pay_with; - - $patient_category_id = get_name($request->patient_id, "id", "category_id", "patients"); - $does_patient_category_have_threshold = does_patient_category_have_threshold($patient_category_id); - $patient_is_a_dependant_of = patient_is_a_dependant_of($request->patient_id); - - // save for service arrays - $service_prices_array = []; - $service_ids_array = []; - if(count($request->service_id) > 0 && $request->service_id[0] != 0){ - $service_prices_array = $request->service_amount; - $service_ids_array = $request->service_id; - - $services_prices_array_summation = array_sum($service_prices_array); - - //record patient dependants consumption for services - if ($does_patient_category_have_threshold || !is_null($patient_is_a_dependant_of)) { - $this->record_dependant_consumption($request, $patient_is_a_dependant_of, $request->service_id, $service_prices_array, $services_prices_array_summation, 6, "Dependant-Consultation", $receipt_number); - } - } - - // save for procedures - $procedure_ids_array = []; - $procedure_amounts_array = []; - if($request->procedure_ids){ - $procedure_ids_array = explode(",", $request->procedure_ids); - $procedure_amounts_array = $request->procedure_amount; - - $procedure_amounts_array_summation = array_sum($procedure_amounts_array); - - //record patient dependants consumption for procedures - if ($does_patient_category_have_threshold || !is_null($patient_is_a_dependant_of)) { - $this->record_dependant_consumption($request, $patient_is_a_dependant_of, $procedure_ids_array, $procedure_amounts_array, $procedure_amounts_array_summation, 4, "Dependant-Procedures", $receipt_number); - } - } - - // save for investigations - $investigation_ids_array = []; - $investigation_amounts_array = []; - if($request->investigation_ids){ - $investigation_ids_array = explode(",", $request->investigation_ids); - $investigation_amounts_array = $request->investigation_amount; - - $investigation_amounts_array_summation = array_sum($investigation_amounts_array); - - //record patient dependants consumption for investigations - if ($does_patient_category_have_threshold || !is_null($patient_is_a_dependant_of)) { - $this->record_dependant_consumption($request, $patient_is_a_dependant_of, $investigation_ids_array, $investigation_amounts_array, $investigation_amounts_array_summation, 2, "Dependant-Investigations", $receipt_number); - } - } - - // save for treatment - $treatment_item = []; - $treatment_quantity = []; - $treatment_subtotal = []; - if($request->treatment_item){ - $treatment_item = $request->treatment_item; - $treatment_quantity = $request->treatment_quantity; - $treatment_subtotal = $request->treatment_subtotal; - - $treatment_subtotal_array_summation = array_sum($treatment_subtotal); - - //record patient dependants consumption for treatment - if ($does_patient_category_have_threshold || !is_null($patient_is_a_dependant_of)) { - $this->record_dependant_consumption($request, $patient_is_a_dependant_of, $request->treatment_item, $treatment_subtotal, $treatment_subtotal_array_summation, 3, "Dependant-Treatment", $receipt_number); - } - } - - // save for sundries - $sundry_item = []; - $sundry_quantity = 0; - $sundry_subtotal = 0; - if($request->sundry_ids){ - $sundry_item = explode(",", $request->sundry_ids); - $sundry_quantity = $request->sundry_quantity; - $sundry_subtotal = $request->sundry_subtotal; - - $sundry_subtotal_array_summation = array_sum($sundry_subtotal); - - //record patient dependants consumption for sundries - if ($does_patient_category_have_threshold || !is_null($patient_is_a_dependant_of)) { - $this->record_dependant_consumption($request, $patient_is_a_dependant_of, $sundry_item, $sundry_subtotal, $sundry_subtotal_array_summation, 5, "Dependant-Sundries", $receipt_number); - } - } - - // save for optics - $optic_item = []; - $optic_quantity = 0; - $optic_subtotal = 0; - if($request->optic_ids){ - $optic_item = explode(",", $request->optic_ids); - $optic_quantity = $request->optic_quantity; - $optic_subtotal = $request->optic_subtotal; - - $optic_subtotal_array_summation = array_sum($optic_subtotal); - - //record patient dependants consumption for sundries - if ($does_patient_category_have_threshold || !is_null($patient_is_a_dependant_of)) { - $this->record_dependant_consumption($request, $patient_is_a_dependant_of, $optic_item, $optic_subtotal, $optic_subtotal_array_summation, 19, "Optical Items", $receipt_number); - } - } - - $patient = Patient::find($request->patient_id); - $transaction_date = $request->transaction_date ?? date('Y-m-d'); - $receipt_date = ($transaction_date != 0) ? $transaction_date . " " . date('H:i:s') : date('Y-m-d H:i:s'); - $treatment_balance = $request->treatment_balance; - - $return_payment_methods = $this->register_payment_method($request->patient_id, $request->episode_id, $request->original_cash_to_pay, $request->payment_method, - $request->payment_methods_amount, $request->ref_number, $request->ref_number_added_by, $receipt_number, 11, Auth::id(), $amount_paid_from_wallets); - - $cashier = Auth::id(); - - $compact_values = compact('hospital_information', 'receipt_date', 'receipt_number', 'patient', 'is_invoice', - 'service_prices_array', 'service_ids_array', 'procedure_ids_array', 'procedure_amounts_array', 'investigation_ids_array', 'investigation_amounts_array', - 'treatment_item', 'treatment_quantity', 'treatment_subtotal', 'family_account_pay_with', 'total_amount_pay', 'staff_guarantor_to_pay', 'one_off_discount_memo', 'one_off_discount', - 'sundry_item', 'sundry_quantity', 'sundry_subtotal', 'treatment_balance', 'patient_account_pay_with', 'cashier', - 'balance', 'hospital_to_pay', 'patient_to_pay', 'patient_category_to_pay', 'patient_category_id_to_pay', - 'return_payment_methods', 'optic_item', 'optic_quantity', 'optic_subtotal'); - - $this->save_receipt_json($receipt_number, json_encode($compact_values)); - - if (is_cashier_receipt_type_print_html()) { - return redirect('/patient_finance/reprint_central_billing/' . $receipt_number); - } else { - // so we first have to set a session and then go back to the payment page - // on the payment page we can then set a JS variable that can help redirect us to our pdf print - session()->put('print_cashier_receipt_pdf', 1); - - session()->put('print_cashier_receipt_pdf_details', $compact_values); - session()->put('is_central_billing_receipt', 1); - - return redirect('/patient_finance/make_deposit_central_billing'); - } - } - - public function getServiceCostCentralBilling(Request $request): string - { - $patient_id = $request->patient_id; - $service_id = $request->service_id; - $price_list_category_id = $request->price_list_category; - $response_text = ""; - - // get the service from table - $service = Services::where(['id' => $service_id])->first(); - - if ($price_list_category_id && $price_list_category_id != 0){ - $price_list_category = is_null($service->price_list_category) ? [] : explode(',', $service->price_list_category); - $price_list_price = is_null($service->price_list_price) ? [] : explode(',', $service->price_list_price); - - $key = array_search($price_list_category_id, $price_list_category); - - $service_price = $price_list_price[$key] ?? 0; - } else { - $service_price = $service->non_insured_price; - } - - $response_text .= ""; - $response_text .= ""; - $response_text .= ""; - - return $response_text; - } - - public function print_central_billing() { - $hospitalInfo = HospitalInformation::find(1); - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $episode = PatientEpisode::find($episode_id); - $patient = Patient::find($patient_id); - $staff_guarantors = DB::table('users')->pluck('first_name', 'id')->toArray(); - - foreach ($staff_guarantors as $key => $value) { - $full_name = $value . " " . get_name($key, "id", "last_name", "users"); - $staff_guarantors[$key] = $full_name; - } - - $categories = DB::table('patient_categories')->where('available', 1)->pluck('name', 'id'); - $drug_categories = DB::table('drug_categories')->get(); - $marital_statuses = DB::table('marital_statuses')->pluck('name', 'id'); - $payment_arrangement = DB::table('debt_plan_arrangements')->pluck('name', 'id')->toArray(); - $payment_arrangement = ['' => '- select -'] + $payment_arrangement; - $discount = PatientDiscount::where(['patient_category'=>$patient->category_id])->first(); - $discount_options = DiscountCategories::where(['patient_category' => $patient->category_id])->pluck('name','id')->toArray(); - $discount_options = ['' => '- select -'] + $discount_options; - - // get services - $service_items = Services::where('available', 1)->orderby('name','asc')->get(); - - // check for any used services that were recorded from th clinical side - $used_services = OrderedService::where(['patient_id' => $episode->patient_id, 'episode_id' => $episode->id, 'payment_status' => 0])->get(); - - // get procedures - $ordered_procedures = OrderedProcedure::where(['episode_id' => $episode_id,'payment_status' => '0'])->get(); - - // get investigations - $ordered_investigations = OrderedInvestigation::where(['episode_id' => $episode_id,'payment_status' => '0', 'inpatient_bill_generated' => 0])->get(); - - // get ordered treatment - $treatment = Treatment::where(['payment_status' => 0, 'episode_id' => $episode_id])->first(); - - // get sundries - $ordered_sundries = OrderedSundry::where(['episode_id' => $episode_id,'payment_status' => '0'])->get(); - - // get eyeglasses - $ordered_optics = OrderedEyeGlasses::where(['episode_id' => $episode_id,'payment_status' => '0'])->get(); - - // check for doctor's consultation - $doc_consultation_id = get_consultation_service_id_allocated_at_episode_consultation($patient_id, $episode_id); - - $paid_service_items = []; - $paid_services = ServiceDeposit::where(['episode_id' => $episode_id])->orderBy('created_at', 'desc')->get(); - $invoiced_services = PatientCategoryInvoice::where('episode_id', $episode_id)->whereIn('tag_id', [6, 8])->get(); - - foreach ($paid_services as $service) { - $paid_service_items = array_merge($paid_service_items, explode(",", $service->items_ids)); - } - - foreach ($invoiced_services as $service) { - $paid_service_items = array_merge($paid_service_items, explode(",", $service->items_ids)); - } - - if (in_array($doc_consultation_id, $paid_service_items)) { - $doc_consultation_id = false; - } - - $data = [ - 'patient_id' => $patient_id, - 'episode_id' => $episode_id, - 'doc_consultation_id' => $doc_consultation_id, - 'patient' => $patient, - 'episode' => $episode, - 'categories' => $categories, - 'drug_categories' => $drug_categories, - 'marital_statuses' => $marital_statuses, - 'discount' => $discount, - 'discount_options' => $discount_options, - 'ordered_sundries' => $ordered_sundries, - 'used_services' => $used_services, - 'hospitalInfo' => $hospitalInfo, - 'payment_arrangement' => $payment_arrangement, - 'staff_guarantors' => $staff_guarantors, - 'service_items' => $service_items, - 'ordered_procedures' => $ordered_procedures, - 'ordered_investigations' => $ordered_investigations, - 'ordered_optics' => $ordered_optics, - 'treatment' => $treatment, - ]; - - $pdf = SnappyPDF::loadView("patient_finance::patient_finance.print_central_billing", $data) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Printed On ' . date('d-M-Y h:ia') . ''); - - return $pdf->inline('Patient Billing.pdf'); - } - - public function make_inpatient_deposit(){ - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $inpatient_bill = InpatientBill::where(['patient_id' => $patient_id,'episode_id' => $episode_id]) - ->select('id', 'amount_to_pay', 'updated_at', 'inpatient_info_id')->first(); - $is_bill_updated = false; - - try { - $inpatient_info_updated = get_name($inpatient_bill->inpatient_info_id, 'id', 'updated_at', 'inpatient_info'); - $is_bill_updated = !Carbon::parse($inpatient_info_updated)->greaterThan($inpatient_bill->updated_at); - } catch (\Exception) {} - - $patient = Patient::find($patient_id); - - $discount = PatientDiscount::where(['patient_category'=>$patient->category_id])->first(); - - $inpatient_deposits = ServiceDeposit::where(['patient_id' => $patient_id,'episode_id' => $episode_id,'service_type' => 'Inpatient_Deposit'])->get(); - $ward_discount_deposits = InpatientWardDiscounts::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->get(); - $debt_plan_payments = DebtPlan::where(['patient_id' => $patient_id,'episode_id' => $episode_id, 'tag_id' => 10])->get(); - - $inpatient_category_payments = PatientCategoryInvoice::where('patient_id', $patient_id) - ->where('episode_id', $episode_id) - ->whereIn('tag_id', [10,16]) - ->get(); - - $patient_payment_methods = PatientPaymentMethod::pluck('name', 'id'); - $patient_payment_methods_options = ""; - foreach ($patient_payment_methods as $key => $value) { - $patient_payment_methods_options .= ''; - } - - $payment_arrangement = DB::table('debt_plan_arrangements')->pluck('name', 'id')->toArray(); - $payment_arrangement = ['' => '- select -'] + $payment_arrangement; - $staff_guarantors = DB::table('users')->pluck('first_name', 'id')->toArray(); - - foreach ($staff_guarantors as $key => $value) { - $full_name = $value . " " . get_name($key, "id", "last_name", "users"); - $staff_guarantors[$key] = $full_name; - } - - $non_staff_guarantors = DB::table('non_staff_guarantors')->pluck('first_name', 'id')->toArray(); - foreach ($non_staff_guarantors as $key => $value) { - $full_guarantor_name = $value . " " . get_name($key, "id", "last_name", "non_staff_guarantors"); - $non_staff_guarantors[$key] = $full_guarantor_name; - } - - $chi_to_pay = 0; - $uncleared_chi_amount = 0; - - if ($inpatient_bill) { - // get the insurance amount to be paid - $insurance_claims = DB::table('insurance_claims')->where('inpatient_outpatient', 1) - ->where('order_id', $inpatient_bill->id)->whereNull('deleted_at')->get(); - - foreach($insurance_claims as $claim) { - $item_ids = explode(",", $claim->item_ids); - $tariff_amounts = explode(",", $claim->tariff_amounts); - $item_authorisations = explode(",", $claim->is_item_authorisation_required); - $plan_limit_error = explode(",", $claim->plan_limit_error); - $benefit_waiting_period_error = explode(",", $claim->benefit_waiting_period_error); - $benefit_limit_error = explode(",", $claim->benefit_limit_error); - $item_limit_error = explode(",", $claim->item_limit_error); - - for ($i = 0; $i < count($item_ids); $i++) { - if ($item_authorisations[$i] == 1 || $claim->is_authorisation_required == 1 || $claim->plan_validity_error == 1 || - $benefit_waiting_period_error[$i] == 1 || $plan_limit_error[$i] == 1 || $benefit_limit_error[$i] == 1 || $item_limit_error[$i] == 1) { - $uncleared_chi_amount += $tariff_amounts[$i]; - } else { - $chi_to_pay += $tariff_amounts[$i]; - } - } - } - } - - return view('patient_finance::patient_finance.make_inpatient_deposit', compact('inpatient_bill', 'inpatient_deposits', 'patient', 'discount', 'ward_discount_deposits', 'inpatient_category_payments', 'patient_payment_methods_options', - 'payment_arrangement', 'staff_guarantors', 'patient_id', 'episode_id', 'debt_plan_payments', 'non_staff_guarantors', 'uncleared_chi_amount', 'chi_to_pay', 'is_bill_updated')); - } - - public function store_inpatient_deposit(Request $request){ - $wallets_amount = $dependant_amount_consumed = 0; - - if ($request->has('patient_account_pay_with')) { - if ($request->patient_account_pay_with > $request->patient_account_balance) { - // amount is more than is on the patient account - flash('Patient account balance is less than the current bill.')->error(); - return redirect()->back()->withInput(); - } - - $wallets_amount += $request->patient_account_pay_with; - } - - if ($request->has('family_account_pay_with')) { - $this_patient_to_pay = $request->family_account_pay_with; - $this_family_account_balance = $request->family_account_balance; - $family_account_credit_limit = $request->family_account_credit_limit; - $wallets_amount += $request->family_account_pay_with; - - if (!is_family_consumption_allowed($this_patient_to_pay, $this_family_account_balance, $family_account_credit_limit)) { - return redirect()->back()->withInput(); - } - } - - $request->merge(['wallets_amount' => $wallets_amount]); - - //check if patient is a dependant of another patient e.g main patient with a discount. If so, let Neo enter the matrix - $dependant_patient_category_amount_to_invoice = 0; - if ($request->has('dependants_balance')) { - $original_dependants_balance = $request->dependants_balance; //balance of this dependants group - $original_patient_to_pay = $request->original_patient_to_pay; //amount they have paid with cash field - - //if new dependants balance is -ve, make it zero - $new_dependants_balance = $request->dependants_balance < 0 ? 0 : $request->dependants_balance; - $request->merge(['dependants_balance' => $new_dependants_balance]); - - //recalculate the patient category to pay - if ($request->patient_category_amount > $original_dependants_balance) { - if ($original_dependants_balance < 0) { - $dependant_patient_category_amount_to_invoice = $request->patient_category_amount;// - $request->patient_to_pay; - } else{ - $dependant_patient_category_amount_to_invoice = $request->patient_category_amount - $original_dependants_balance;// - $request->patient_to_pay; - } - } else { - $dependant_patient_category_amount_to_invoice = 0; - } - - //make the main patient's patient category override the category of the dependant - $patient_is_a_dependant_of = patient_is_a_dependant_of($request->patient_id); - $main_patient_patient_category = get_name($patient_is_a_dependant_of, "id", "category_id", "patients"); - $request->merge(['patient_category_id' => $main_patient_patient_category]); - //depedant amount consumed - $dependant_amount_consumed = $request->patient_category_amount; - } - - // generate receipt number - $receipt_number = $this->receiptService->createReceipt("inpatient_deposit"); - - // for the staff guarantor, if debt plan id is not 0, add receipt number to it - if ($request->debt_plan_id != 0) { - DB::table('debt_plan')->where('id', $request->debt_plan_id) - ->update(['receipt_number' => $receipt_number]); - } - - $patient_id = $request->patient_id; - $episode_id = $request->episode_id; - $transaction_date = 0; - $patient_to_pay = $request->patient_to_pay; - $is_invoice = ($request->patient_category_amount) ? 1 : 0; - $patient_category_amount = $request->patient_category_amount ?? 0; - $patient_account_pay_with = $request->patient_account_pay_with ?? 0; - $family_account_pay_with = $request->family_account_pay_with ?? 0; - $staff_guarantor_to_pay = $request->staff_guarantor_to_pay ?? 0; - $amount_paid_from_wallets = $patient_account_pay_with + $family_account_pay_with; - $ward_discount_amount = $request->ward_discount_amount ?? 0; - $total_amount_paid = $patient_to_pay + $ward_discount_amount + $patient_category_amount + $staff_guarantor_to_pay; - - $inpatient_ward_info = InpatientInfo::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->first(); - - if ($request->has('patient_account_pay_with')) { - record_patient_accounts_consumption($patient_id, $episode_id, $request->patient_account_pay_with, 10, $receipt_number); - } - - if ($request->has('family_account_pay_with')) { - record_family_consumption($patient_id, $episode_id, $request->family_account_id, $request->family_account_pay_with, 'Inpatient Deposits', $receipt_number); - } - - if ($patient_to_pay > 0) { - // create a new service payment record - DepositHelpers::service_payment($patient_id,$episode_id,'Inpatient_Deposit',$patient_to_pay,'Inpatient_Deposit',$receipt_number,$patient_to_pay,'Inpatient_Deposit', $request->wallets_amount); - } - - // update the amount_to_pay - $inpatient_bill = InpatientBill::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->first(); - - if ($inpatient_bill) { - $previous_amount_to_pay = $inpatient_bill->amount_to_pay; - $balance_amount_to_pay = $previous_amount_to_pay - $total_amount_paid; - $inpatient_bill->amount_to_pay = $balance_amount_to_pay; - $inpatient_bill->chi_to_pay = $request->chi_to_pay ?? 0; - $inpatient_bill->uncleared_chi_amount = $request->uncleared_chi_amount ?? 0; - $inpatient_bill->amount_paid = $inpatient_bill->amount_paid + $patient_to_pay; - $inpatient_bill->amount_paid = ($dependant_amount_consumed > 0) ? ($inpatient_bill->amount_paid + $dependant_amount_consumed) : $inpatient_bill->amount_paid; //dependants - $inpatient_bill->invoices_amount = $inpatient_bill->invoices_amount + ($ward_discount_amount + $patient_category_amount + $staff_guarantor_to_pay); - $inpatient_bill->save(); - } else { - $inpatient_bill = new InpatientBill(); - $inpatient_bill->amount_paid = $patient_to_pay; - $inpatient_bill->amount_paid = ($dependant_amount_consumed > 0) ? ($inpatient_bill->amount_paid + $dependant_amount_consumed) : $inpatient_bill->amount_paid; //dependants - $inpatient_bill->inpatient_info_id = $inpatient_ward_info->id; - $inpatient_bill->patient_id = $patient_id; - $inpatient_bill->episode_id = $episode_id; - $inpatient_bill->amount_to_pay = 0; - $inpatient_bill->save(); - - $previous_amount_to_pay = 0; - $balance_amount_to_pay = 0; - $total_amount_paid = 0; - } - - if ($ward_discount_amount > 0) { - $inpatient_ward_discount = new InpatientWardDiscounts(); - - $inpatient_ward_discount->patient_id = $patient_id; - $inpatient_ward_discount->episode_id = $episode_id; - $inpatient_ward_discount->inpatient_info_id = $inpatient_ward_info->id; - $inpatient_ward_discount->ward_id = $inpatient_ward_info->ward_id; - $inpatient_ward_discount->amount = $ward_discount_amount; - $inpatient_ward_discount->receipt_number = $receipt_number; - $inpatient_ward_discount->created_by = Auth::id(); - $inpatient_ward_discount->updated_by = Auth::id(); - - $inpatient_ward_discount->save(); - } - - // save the patient category to pay amount - if($request->has('dependants_balance') && ($dependant_amount_consumed > 0)){ - $patient_category_id = $request->patient_category_id; //get_name($patient_id, 'id', 'category_id', 'patients'); - $transaction_date = $request->transaction_date ?? date('Y-m-d'); - DepositHelpers::patient_category_invoice($patient_category_id, $patient_id, $episode_id, $patient_category_amount, $inpatient_ward_info->id,$receipt_number,16,null, $dependant_patient_category_amount_to_invoice, $transaction_date, ''); - $dependant_amount_consumed = $patient_category_amount; - }elseif ($patient_category_amount > 0) { - $patient_category_id = get_name($patient_id, 'id', 'category_id', 'patients'); - $transaction_date = $request->transaction_date ?? date('Y-m-d'); - DepositHelpers::patient_category_invoice($patient_category_id, $patient_id, $episode_id, $patient_category_amount, $inpatient_ward_info->id,$receipt_number,10,null, $patient_category_amount, $transaction_date, ''); - } - - $this->inpatientFinanceService->split_inpatient_paid_cash_deposit($patient_id, $episode_id, $receipt_number, $patient_to_pay); - - // update the track_receipt table to include created receipt - $track_receipts = new TrackReceipt; - $track_receipts->created_by = Auth::id(); - $track_receipts->reason = 'Inpatient_Deposit'; - $track_receipts->save(); - - /*====== if the patient is a dependant of a certain patient category patient, do this =====*/ - $patient_category_id = get_name($request->patient_id, "id", "category_id", "patients"); - $does_patient_category_have_threshold = does_patient_category_have_threshold($patient_category_id); - $patient_is_a_dependant_of = patient_is_a_dependant_of($request->patient_id); - - if ($does_patient_category_have_threshold || !is_null($patient_is_a_dependant_of)) { - $tag_id = 10; - $dependant_amount_consumed = $patient_category_amount; - $this->record_dependant_consumption($request, $patient_is_a_dependant_of, ["Inpatient-deposit"], [$patient_category_amount], $dependant_amount_consumed, $tag_id, "Dependant-Services", $receipt_number); - - //update the amount to pay - $total_amount_consumed = 0; - $this_inpatient_episode_consumptions = DependantsConsumption::where(['dependant_patient_id' => $patient_id, 'episode_id' => $episode_id, 'items_ids' => "Inpatient-deposit"])->get(); - if (count($this_inpatient_episode_consumptions) > 0) { - foreach ($this_inpatient_episode_consumptions as $inpatient_consumption) { - $total_amount_consumed += $inpatient_consumption->amount_consumed; - } - - $updated_amt_to_pay = $inpatient_bill->original_bill - $total_amount_consumed; - } - } - /*===============end of that dependant functionality =======================*/ - - // details to be used for receipt - $hospital_information = HospitalInformation::first(); - $patient = Patient::find($patient_id); - $receipt_date = ($transaction_date != 0) ? $transaction_date . " " . date('H:i:s') : date('Y-m-d H:i:s'); - $item_name = ($is_invoice == 1) ? "Inpatient Invoice Amount" : "Inpatient Cash Deposit"; - - $return_payment_methods = $this->register_payment_method($patient_id, $episode_id, $request->original_cash_to_pay, $request->payment_method, - $request->payment_methods_amount, $request->ref_number, $request->ref_number_added_by, $receipt_number, 10, Auth::id(), $amount_paid_from_wallets); - - flash("Inpatient deposit made successful")->success(); - - $compact_values = compact('hospital_information', 'patient_to_pay', 'patient', 'receipt_date', 'receipt_number', 'item_name', 'is_invoice', 'previous_amount_to_pay', 'ward_discount_amount', 'patient_category_amount', 'return_payment_methods', 'patient_account_pay_with', 'family_account_pay_with', 'staff_guarantor_to_pay', 'total_amount_paid', 'balance_amount_to_pay'); - - $this->save_receipt_json($receipt_number, json_encode($compact_values)); - - if (is_cashier_receipt_type_print_html()) { - return redirect('/patient_finance/print_inpatient_deposit_receipt/' . $receipt_number); - } else { - // so we first have to set a session and then go back to the payment page - // on the payment page we can then set a JS variable that can help redirect us to our pdf print - session()->put('print_cashier_receipt_pdf', 1); - - // since we want to reduce the amount of duplicate code, we shall send all items to one file for printing - $data = [ - "hospital_information" => $compact_values["hospital_information"], "receipt_date" => $compact_values["receipt_date"], "receipt_number" => $compact_values["receipt_number"], - "one_off_discount_memo" => 0, "one_off_discount" => 0, "patient" => $compact_values["patient"], - "is_invoice" => $compact_values["is_invoice"], "items" => [$compact_values["item_name"]], "item_quantity" => [1], "item_subtotal" => [$total_amount_paid], - "patient_category_id_to_pay" => $patient->category_id, "total_amount_pay" => $previous_amount_to_pay, - "staff_guarantor_to_pay" => $compact_values["staff_guarantor_to_pay"], "patient_unpaid_debts" => 0, "donor_to_pay" => 0, "balance" => $balance_amount_to_pay, "family_account_pay_with" => $family_account_pay_with, - "hospital_to_pay" => 0, "patient_to_pay" => $compact_values["patient_to_pay"], "patient_category_to_pay" => $compact_values["patient_category_amount"], "return_payment_methods" => $compact_values["return_payment_methods"], - "treatment_balance" => 0, "item_table" => "inpatient", "ward_discount_amount" => $compact_values["ward_discount_amount"], "discounts_applied" => 0, "patient_account_pay_with" => $patient_account_pay_with - ]; - - session()->put('print_cashier_receipt_pdf_details', $data); - - return redirect('/patient_finance/make_inpatient_deposit'); - } - } - - public function print_inpatient_deposit_receipt($receipt_number){ - $patient_id = session()->get('patient_id'); - - $patient = Patient::find($patient_id); - $is_invoice = 0; - - // check if track_receipts has details - $receipt_json = get_name((int)$receipt_number, 'id', 'receipt_json', 'track_receipts'); - - if ($receipt_json) { - $compact_values = json_decode($receipt_json, true); - $compact_values["patient"] = Patient::find($compact_values["patient"]["id"]); - $compact_values["hospital_information"] = HospitalInformation::first(); - $compact_values["discounts_applied"] = 0; - $compact_values["item_name"] = $compact_values["item_name"] ?? "Inpatient Amount"; - $compact_values["is_invoice"] = $compact_values["is_invoice"] ?? 0; - $compact_values["total_amount_paid"] = $compact_values["total_amount_paid"] ?? $compact_values["patient_to_pay"]; - $compact_values["previous_amount_to_pay"] = $compact_values["previous_amount_to_pay"] ?? $compact_values["patient_to_pay"]; - $compact_values["balance_amount_to_pay"] = $compact_values["balance_amount_to_pay"] ?? ($compact_values["previous_amount_to_pay"] - $compact_values["patient_to_pay"]); - } else { - $patient_to_pay = ServiceDeposit::where('receipt_number', $receipt_number)->sum('patient_amount_paid'); - $ward_discount_amount = InpatientWardDiscounts::where('receipt_number', $receipt_number)->sum('amount'); - $patient_category_amount = PatientCategoryInvoice::where('receipt_number', $receipt_number)->sum('patient_amount'); - - if ($patient_to_pay > 0) { - $receipt_date = get_name($receipt_number, 'receipt_number', 'created_at', 'service_deposits'); - } elseif($ward_discount_amount > 0) { - $receipt_date = get_name($receipt_number, 'receipt_number', 'created_at', 'inpatient_ward_discounts'); - } elseif($patient_category_amount > 0) { - $is_invoice = 1; - $receipt_date = get_name($receipt_number, 'receipt_number', 'created_at', 'patient_category_invoices'); - } else { - $receipt_date = date('Y-m-d H:i:s'); - } - - $total_amount_paid = $patient_to_pay + $ward_discount_amount + $patient_category_amount; - - $hospital_information = HospitalInformation::first(); - $return_payment_methods = []; - $patient_account_pay_with = 0; - $family_account_pay_with = 0; - $previous_amount_to_pay = 0; - $balance_amount_to_pay = 0; - - $item_name = ($is_invoice == 1) ? "Inpatient Invoice Amount" : "Inpatient Cash Deposit"; - - $compact_values = compact('hospital_information', 'patient_to_pay', 'patient', 'receipt_date', 'receipt_number', 'item_name', 'is_invoice', 'balance_amount_to_pay', - 'ward_discount_amount', 'patient_category_amount', 'return_payment_methods', 'item_name', 'patient_account_pay_with', 'family_account_pay_with', 'total_amount_paid', 'previous_amount_to_pay'); - } - - if (is_cashier_receipt_type_print_html()) { - return view('patient_finance::patient_finance.receipts.inpatient_deposit', $compact_values); - } else { - // so we first have to set a session and then go back to the payment page - // on the payment page we can then set a JS variable that can help redirect us to our pdf print - session()->put('print_cashier_receipt_pdf', 1); - - // since we want to reduce the amount of duplicate code, we shall send all items to one file for printing - $data = [ - "hospital_information" => $compact_values["hospital_information"], "receipt_date" => $compact_values["receipt_date"], "receipt_number" => $compact_values["receipt_number"], - "one_off_discount_memo" => 0, "one_off_discount" => 0, "patient" => $compact_values["patient"], - "is_invoice" => $compact_values["is_invoice"], "items" => [$compact_values["item_name"]], "item_quantity" => [1], "item_subtotal" => [$compact_values["total_amount_paid"]], - "patient_category_id_to_pay" => $patient->category_id, "total_amount_pay" => $compact_values["previous_amount_to_pay"], - "staff_guarantor_to_pay" => 0, "patient_unpaid_debts" => 0, "donor_to_pay" => 0, "balance" => $compact_values["balance_amount_to_pay"], "patient_account_pay_with" => $compact_values["patient_account_pay_with"], "family_account_pay_with" => $compact_values["family_account_pay_with"], - "hospital_to_pay" => 0, "patient_to_pay" => $compact_values["patient_to_pay"], "patient_category_to_pay" => $compact_values["patient_category_amount"], "return_payment_methods" => $compact_values["return_payment_methods"], - "treatment_balance" => 0, "item_table" => "inpatient", "ward_discount_amount" => $compact_values["ward_discount_amount"], "discounts_applied" => 0 - ]; - - session()->put('print_cashier_receipt_pdf_details', $data); - - return redirect('/patient_finance/make_inpatient_deposit'); - } - } - - public static function register_payment_method($patient_id, $episode_id, $original_cash_to_pay, $payment_method, - $payment_methods_amount, $ref_number, $ref_number_added_by, $receipt_number, $tag_id, $user_id, $amount_paid_from_wallets): array - { - $not_cash_to_pay = 0; // paid be other methods - $return_payment_methods = []; - - if (!is_null($payment_method) && count($payment_method) > 0 && $payment_method[0] != 0) { - for ($i = 0; $i < count($payment_method); $i++) { - if (isset($payment_method[$i]) && isset($payment_methods_amount[$i]) && $payment_method[$i] != 0 && $payment_methods_amount[$i] != 0) { - $not_cash_to_pay += $payment_methods_amount[$i]; - $return_payment_methods[$payment_method[$i]] = $payment_methods_amount[$i]; - - $payment_method_trans = new PaymentMethodsTransaction(); - $payment_method_trans->patient_id = $patient_id; - $payment_method_trans->episode_id = $episode_id; - $payment_method_trans->receipt_number = $receipt_number; - $payment_method_trans->tag_id = $tag_id; - $payment_method_trans->payment_method_id = $payment_method[$i]; - $payment_method_trans->amount = $payment_methods_amount[$i]; - $payment_method_trans->ref_number = $ref_number[$i]; - $payment_method_trans->ref_number_added_by = $ref_number_added_by[$i]; - $payment_method_trans->created_by = $user_id; - $payment_method_trans->save(); - } - } - - $cash_to_pay = $original_cash_to_pay - $not_cash_to_pay; - } else { - $cash_to_pay = $original_cash_to_pay; - } - - // since some cash was got from the patient wallets, subtract that amount - $cash_to_pay -= $amount_paid_from_wallets; - - // input for cash - if ($cash_to_pay > 0) { - $payment_method_trans = new PaymentMethodsTransaction(); - $payment_method_trans->patient_id = $patient_id; - $payment_method_trans->episode_id = $episode_id; - $payment_method_trans->receipt_number = $receipt_number; - $payment_method_trans->tag_id = $tag_id; - $payment_method_trans->payment_method_id = 0; - $payment_method_trans->amount = $cash_to_pay; - $payment_method_trans->created_by = $user_id; - $payment_method_trans->save(); - - $return_payment_methods[0] = $cash_to_pay; - } - - return $return_payment_methods; - } - - public function customer_episode_statement($episode_id) { - $hospital_information = HospitalInformation::find(1); - $patient_id = session()->get('patient_id'); - $episode = PatientEpisode::find($episode_id); - $patient = Patient::find($patient_id); - - // check for any used services that were recorded from th clinical side - $used_services = OrderedService::where(['patient_id' => $episode->patient_id, 'episode_id' => $episode->id, 'payment_status' => 0, 'inpatient_bill_generated' => 0])->get(); - - // get procedures - $ordered_procedures = OrderedProcedure::where(['episode_id' => $episode_id,'payment_status' => '0', 'inpatient_bill_generated' => 0])->get(); - - // get investigations - $ordered_investigations = OrderedInvestigation::where(['episode_id' => $episode_id,'payment_status' => '0', 'inpatient_bill_generated' => 0])->get(); - - // get ordered treatment - $treatments = Treatment::where(['payment_status' => 0, 'episode_id' => $episode_id])->get(); - - // get sundries - $ordered_sundries = OrderedSundry::where(['episode_id' => $episode_id,'payment_status' => '0', 'inpatient_bill_generated' => 0])->get(); - - // get payments - $paid_services = ServiceDeposit::where('episode_id', $episode_id) - ->where('patient_id', $patient_id) - ->where('service_type', '!=', 'Inpatient_Deposit') - ->get(); - - $paid_procedures = ProcedureDeposit::where('episode_id', $episode_id) - ->where('patient_id', $patient_id) - ->get(); - - $paid_investigations = InvestigationDeposit::where('episode_id', $episode_id) - ->where('patient_id', $patient_id) - ->get(); - - $paid_treatments = TreatmentDeposits::where('episode_id', $episode_id) - ->where('patient_id', $patient_id) - ->get(); - - $paid_sundries = SundryDeposit::where('episode_id', $episode_id) - ->where('patient_id', $patient_id) - ->get(); - - $invoiced_services = PatientCategoryInvoice::where('episode_id', $episode_id) - ->whereIn('tag_id', [6,7,8]) - ->get(); - - $invoiced_procedures = PatientCategoryInvoice::where('episode_id', $episode_id) - ->where('tag_id', 4) - ->get(); - - $invoiced_investigations = PatientCategoryInvoice::where('episode_id', $episode_id) - ->where('tag_id', 2) - ->get(); - - $invoiced_treatments = PatientCategoryInvoice::where('episode_id', $episode_id) - ->where('tag_id', 3) - ->get(); - - $invoiced_sundries = PatientCategoryInvoice::where('episode_id', $episode_id) - ->where('tag_id', 5) - ->get(); - - // get inpatient fees - $inpatient_info = InpatientBill::where(['patient_id'=>$patient_id, 'episode_id'=>$episode_id])->first(['amount_to_pay', 'original_bill']); - - if ($inpatient_info) { - $inpatient_to_pay = $inpatient_info->original_bill; - } else { - $inpatient_to_pay = 0; - } - - // get inpatient fees paid - $inpatient_deposits = ServiceDeposit::where(['patient_id' => $patient_id,'episode_id' => $episode_id,'service_type' => 'Inpatient_Deposit'])->get(); - - // check for doctor's consultation - $doc_consultation_id = get_consultation_service_id_allocated_at_episode_consultation($patient_id, $episode_id); - - $is_doc_consul_fee_paid = is_doc_consul_fee_paid($episode_id, $doc_consultation_id); - - $patient_debts = DB::table('debtors') - ->where('patient_id', $patient_id) - ->where('episode_id', $episode_id) - ->get(); - - $categories = DB::table('patient_categories')->where('available', 1)->pluck('name', 'id'); - - $data = [ - 'patient_id' => $patient_id, - 'episode_id' => $episode_id, - 'patient' => $patient, - 'episode' => $episode, - 'used_services' => $used_services, - 'paid_services' => $paid_services, - 'invoiced_services' => $invoiced_services, - 'paid_sundries' => $paid_sundries, - 'invoiced_sundries' => $invoiced_sundries, - 'ordered_sundries' => $ordered_sundries, - 'hospital_information' => $hospital_information, - 'ordered_procedures' => $ordered_procedures, - 'paid_procedures' => $paid_procedures, - 'invoiced_procedures' => $invoiced_procedures, - 'ordered_investigations' => $ordered_investigations, - 'paid_investigations' => $paid_investigations, - 'invoiced_investigations' => $invoiced_investigations, - 'treatments' => $treatments, - 'paid_treatments' => $paid_treatments, - 'invoiced_treatments' => $invoiced_treatments, - 'inpatient_deposits' => $inpatient_deposits, - 'doc_consultation_id' => $doc_consultation_id, - 'is_doc_consul_fee_paid' => $is_doc_consul_fee_paid, - 'inpatient_to_pay' => $inpatient_to_pay, - 'patient_debts' => $patient_debts, - 'categories' => $categories, - ]; - - $pdf = SnappyPDF::loadView("patient_finance::patient_finance.customer_episode_statement", $data) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Printed On ' . date('d-M-Y h:ia') . ''); - - return $pdf->inline('Customer Episode Statement.pdf'); - } - - public function customer_statement() { - $patient_id = session()->get('patient_id'); - $patient = Patient::find($patient_id); - - // check for any used services that were recorded from th clinical side - $used_services = OrderedService::where(['patient_id' => $patient_id, 'payment_status' => 0, 'inpatient_bill_generated' => 0])->get(); - - // get procedures - $ordered_procedures = OrderedProcedure::where(['patient_id' => $patient_id,'payment_status' => '0', 'inpatient_bill_generated' => 0])->get(); - - // get investigations - $ordered_investigations = OrderedInvestigation::where(['patient_id' => $patient_id,'payment_status' => '0', 'inpatient_bill_generated' => 0])->get(); - - // get ordered treatment - $treatments = Treatment::where(['payment_status' => 0, 'patient_id' => $patient_id])->get(); - - // get sundries - $ordered_sundries = OrderedSundry::where(['patient_id' => $patient_id,'payment_status' => '0', 'inpatient_bill_generated' => 0])->get(); - - // get payments - $paid_services = ServiceDeposit::where('patient_id', $patient_id) - ->where('service_type', '!=', 'Inpatient_Deposit') - ->get(); - - $paid_procedures = ProcedureDeposit::where('patient_id', $patient_id) - ->get(); - - $paid_investigations = InvestigationDeposit::where('patient_id', $patient_id) - ->get(); - - $paid_treatments = TreatmentDeposits::where('patient_id', $patient_id) - ->get(); - - $paid_sundries = SundryDeposit::where('patient_id', $patient_id) - ->get(); - - $invoiced_services = PatientCategoryInvoice::where('patient_id', $patient_id) - ->whereIn('tag_id', [6,7,8]) - ->get(); - - $invoiced_procedures = PatientCategoryInvoice::where('patient_id', $patient_id) - ->where('tag_id', 4) - ->get(); - - $invoiced_investigations = PatientCategoryInvoice::where('patient_id', $patient_id) - ->where('tag_id', 2) - ->get(); - - $invoiced_treatments = PatientCategoryInvoice::where('patient_id', $patient_id) - ->where('tag_id', 3) - ->get(); - - $invoiced_sundries = PatientCategoryInvoice::where('patient_id', $patient_id) - ->where('tag_id', 5) - ->get(); - - // get inpatient fees - $inpatient_infos = InpatientBill::where(['patient_id'=>$patient_id])->get(['amount_to_pay', 'original_bill']); - - $inpatient_to_pay = 0; - - foreach ($inpatient_infos as $inpatient_info) { - $inpatient_to_pay += $inpatient_info->original_bill; - } - - // get inpatient fees paid - $inpatient_deposits = ServiceDeposit::where(['patient_id' => $patient_id, 'service_type' => 'Inpatient_Deposit'])->get(); - - // check for doctor's consultation - $patient_episodes = DB::table('patient_episodes')->where('patient_id', $patient_id) - ->get(['id']); - - $doc_consultation_id = []; - - foreach ($patient_episodes as $patient_episode) { - $episode_id = $patient_episode->id; - $current_doc_consultation_id = get_consultation_service_id_allocated_at_episode_consultation($patient_id, $episode_id); - - if (!is_doc_consul_fee_paid($episode_id, $current_doc_consultation_id)) { - $doc_consultation_id[] = $current_doc_consultation_id; - } - } - - $patient_debts = DB::table('debtors') - ->where('patient_id', $patient_id) - ->get(); - - $data = [ - 'patient_id' => $patient_id, - 'patient' => $patient, - 'used_services' => $used_services, - 'paid_services' => $paid_services, - 'invoiced_services' => $invoiced_services, - 'paid_sundries' => $paid_sundries, - 'invoiced_sundries' => $invoiced_sundries, - 'ordered_sundries' => $ordered_sundries, - 'ordered_procedures' => $ordered_procedures, - 'paid_procedures' => $paid_procedures, - 'invoiced_procedures' => $invoiced_procedures, - 'ordered_investigations' => $ordered_investigations, - 'paid_investigations' => $paid_investigations, - 'invoiced_investigations' => $invoiced_investigations, - 'treatments' => $treatments, - 'paid_treatments' => $paid_treatments, - 'invoiced_treatments' => $invoiced_treatments, - 'inpatient_deposits' => $inpatient_deposits, - 'doc_consultation_id' => $doc_consultation_id, - 'inpatient_to_pay' => $inpatient_to_pay, - 'patient_debts' => $patient_debts, - ]; - - $pdf = SnappyPDF::loadView("patient_finance::patient_finance.customer_statement", $data) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Printed On ' . date('d-M-Y h:ia') . ''); - - return $pdf->inline('Customer Statement.pdf'); - } - - public function does_patient_have_unpaid_items($patient_id, $current_episode_id) { - $return_values = "none"; - $total_debts = 0; - - $patient_episodes = DB::table('patient_episodes')->where('patient_id', $patient_id) - ->whereNotIn('id', [$current_episode_id]) - ->get(['id', 'patient_id']); - - foreach ($patient_episodes as $episode) { - $used_services = OrderedService::where(['patient_id' => $episode->patient_id, 'episode_id' => $episode->id, 'payment_status' => 0])->get(); - - $investigations = $this->check_investigations_payment($episode->id); - - $prescription = $this->check_prescription_payment($episode->id); - - $procedures_paid = $this->check_procedures_payment($episode->id); - - $sundries_paid = $this->check_sundry_payment($episode->id); - - if (count($used_services) > 0 || $investigations === 0 || - $prescription === 0 || $procedures_paid === 0 || $sundries_paid === 0) { - $return_values = "some bills"; - break; - } - - // handle the debts - $debts = Debtor::where(['episode_id' => $episode->id, 'payment_status' => 0])->get(); - - foreach ($debts as $debt) { - if ($debt->balance_remaining) { - $total_debts += $debt->balance_remaining; - } else { - $total_debts += $debt->balance; - } - } - } - - if (is_patient_debt_reminder_enabled()) { - return $return_values . "," . $total_debts; - } else { - return "none,0"; - } - } - - public function pay_all_patient_bills($patient_id) { - $patient = Patient::find($patient_id); - - $discount = PatientDiscount::where(['patient_category'=>$patient->category_id])->first(); - - if (isset($discount->pay_later) && $discount->pay_later == 1) { - flash("Pay later patients can not be billed from collective bills.")->success(); - return redirect('/patient_finance/home'); - } - - // check for any used services that were recorded from th clinical side - $ordered_services = OrderedService::where(['patient_id' => $patient_id, 'payment_status' => 0])->get()->toArray(); - - // get procedures - $ordered_procedures = OrderedProcedure::where(['patient_id' => $patient_id,'payment_status' => '0'])->get(); - - // get investigations - $ordered_investigations = OrderedInvestigation::where(['patient_id' => $patient_id,'payment_status' => '0', 'inpatient_bill_generated' => 0])->get(); - - // get ordered treatment - $treatments = Treatment::where(['patient_id' => $patient_id, 'payment_status' => 0])->get(); - - // get sundries - $ordered_sundries = OrderedSundry::where(['patient_id' => $patient_id,'payment_status' => '0'])->get(); - - $patient_episodes = DB::table('patient_episodes')->where('patient_id', $patient_id)->get(['id', 'created_at']); - $doctor_consuls = []; - - foreach ($patient_episodes as $patient_episode) { - $doc_consultation_id = get_consultation_service_id_allocated_at_episode_consultation($patient_id, $patient_episode->id); - - if ($doc_consultation_id != null && !is_doc_consul_fee_paid($patient_episode->id, $doc_consultation_id)) { - $ordered_services[] = [ - // make id negative to separate it from the ordered services - "id" => -$patient_episode->id, - "episode_id" => $patient_episode->id, - "service_id" => $doc_consultation_id, - "quantity" => 1, - "created_at" => $patient_episode->created_at, - ]; - } - } - - $patient_payment_methods = PatientPaymentMethod::pluck('name', 'id'); - $patient_payment_methods_options = ""; - foreach ($patient_payment_methods as $key => $value) { - $patient_payment_methods_options .= ''; - } - - // get inpatient fees - $inpatient_infos = InpatientBill::where(['patient_id'=>$patient_id])->get(['amount_to_pay', 'updated_at']); - - $patient_debts = DB::table('debtors') - ->where('patient_id', $patient_id) - ->get(); - - return view('patient_finance::patient_finance.pay_all_patient_bills', compact('patient_id', 'patient', 'ordered_services', 'ordered_sundries', 'patient_debts', - 'ordered_procedures', 'ordered_investigations', 'treatments', 'doctor_consuls', 'patient_payment_methods_options', 'inpatient_infos')); - } - - public function save_pay_all_patient_bills(Request $request) { - $patient_id = session()->get('patient_id'); - - if ($request->has('family_account_id') && !is_null($request->family_account_id)) { - - $this_patient_to_pay = $request->patient_to_pay; - $this_family_account_balance = $request->family_account_balance; - - if (($this_patient_to_pay > $this_family_account_balance) && !can_family_accounts_consume_more_than_balance()) { - flash('Family account balance is less than the current bill.')->error(); - return redirect()->back(); - } - } - - $deposit = new CollectiveBillsDeposit; - - // send data to be saved in respective tables and get the receipt number - $receipt_number = $deposit->store_payment($request); - - // details to be used for receipt - $hospital_information = HospitalInformation::first(); - $total_amount_pay = $request->total_amount_pay; - $patient_to_pay = $request->patient_to_pay; - $hospital_to_pay = $request->hospital_to_pay_general_discount; - $balance = $request->balance; - $one_off_discount = $request->one_off_discount; - $one_off_discount_memo = $request->one_off_discount_memo; - - $service_prices_array = []; - $service_ids_array = []; - $procedure_ids_array = []; - $procedure_amounts_array = []; - $investigation_ids_array = []; - $investigation_amounts_array = []; - $treatment_item = []; - $treatment_quantity = []; - $treatment_subtotal = []; - $sundry_item = []; - $sundry_quantity = []; - $sundry_subtotal = []; - $inpatient_to_pay = 0; - $debt_to_pay = 0; - - // save for service arrays - if($request->service_id){ - $service_prices_array = $request->service_amount; - $service_ids_array = $request->service_id; - - $services_prices_array_summation = array_sum($service_prices_array); - if ($request->has('family_account_id') && !is_null($request->family_account_id)) { - record_family_consumption($patient_id, 0, $request->family_account_id, $services_prices_array_summation, 'Services', $receipt_number); - } - } - - // save for procedures - if($request->procedure_id){ - $procedure_ids_array = $request->procedure_id; - $procedure_amounts_array = $request->procedure_amount; - - $procedure_amounts_array_summation = array_sum($procedure_amounts_array); - if ($request->has('family_account_id') && !is_null($request->family_account_id)) { - record_family_consumption($patient_id, 0, $request->family_account_id, $procedure_amounts_array_summation, 'Procedures', $receipt_number); - } - } - - // save for investigations - if($request->investigation_ids){ - $investigation_ids_array = $request->investigation_ids; - $investigation_amounts_array = $request->investigation_amount; - - $investigation_amounts_array_summation = array_sum($investigation_amounts_array); - if ($request->has('family_account_id') && !is_null($request->family_account_id)) { - record_family_consumption($patient_id, 0, $request->family_account_id, $investigation_amounts_array_summation, 'Investigations', $receipt_number); - } - } - - // save for treatment - if($request->treatment_id){ - $treatment_item = $request->drug_id; - $treatment_quantity = $request->treatment_quantity; - $treatment_subtotal = $request->drug_amount; - - $treatment_subtotal_array_summation = array_sum($treatment_subtotal); - if ($request->has('family_account_id') && !is_null($request->family_account_id)) { - record_family_consumption($patient_id, 0, $request->family_account_id, $treatment_subtotal_array_summation, 'Treatment', $receipt_number); - } - } - - // save for sundries - if($request->sundry_id){ - $sundry_item = $request->sundry_id; - $sundry_quantity = $request->sundry_quantity; - $sundry_subtotal = $request->sundry_subtotal; - - $sundry_subtotal_array_summation = array_sum($sundry_subtotal); - if ($request->has('family_account_id') && !is_null($request->family_account_id)) { - record_family_consumption($patient_id, 0, $request->family_account_id, $sundry_subtotal_array_summation, 'Sundries', $receipt_number); - } - } - - if (isset($request->inpatient_to_pay) && $request->inpatient_to_pay > 0) { - $inpatient_to_pay = $request->inpatient_to_pay; - } - - if (isset($request->debt_to_pay) && $request->debt_to_pay > 0) { - $debt_to_pay = $request->debt_to_pay; - } - - $patient = Patient::find($patient_id); - $receipt_date = date('Y-m-d H:i:s'); - - $return_payment_methods = $this->register_payment_method($patient_id, 0, $request->original_cash_to_pay, $request->payment_method, - $request->payment_methods_amount, $request->ref_number, $request->ref_number_added_by, $receipt_number, 12, Auth::id(), 0); - - $compact_values = compact('hospital_information', 'receipt_date', 'receipt_number', 'patient', - 'service_prices_array', 'service_ids_array', 'procedure_ids_array', 'procedure_amounts_array', - 'investigation_ids_array', 'investigation_amounts_array', 'treatment_item', 'treatment_quantity', 'treatment_subtotal', - 'total_amount_pay', 'sundry_item', 'sundry_quantity', 'sundry_subtotal', 'one_off_discount_memo', 'one_off_discount', - 'balance', 'hospital_to_pay', 'patient_to_pay', 'return_payment_methods', 'debt_to_pay', 'inpatient_to_pay'); - - $this->save_receipt_json($receipt_number, json_encode($compact_values)); - - return view('patient_finance::patient_finance.receipts.collective_bills', $compact_values); - } - - public function print_item_receipt_pdf() { - $data = session()->get("print_cashier_receipt_pdf_details"); - - // add check for when the people try to reload the page - if (!$data) { - return redirect('/patient_finance/home'); - } - - // lest i forget Thy love for me - session()->forget('print_cashier_receipt_pdf'); - session()->forget('print_cashier_receipt_pdf_details'); - - if (session()->get("is_central_billing_receipt") == 1) { - // redirect for central billing from here to its file - $receipt_file = "patient_finance::patient_finance.receipts.central_billing_pdf"; - session()->forget('is_central_billing_receipt'); - } else { - // normal receipt for the other points - $receipt_file = "patient_finance::patient_finance.receipts.print_pdf_receipt"; - } - - $pdf = SnappyPDF::loadView($receipt_file, $data) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline'); - - return $pdf->inline('Patient Receipt' . date(" d-m-y h:ia") . '.pdf'); - } - - public function view_inpatient_bill($patient_id, $episode_id) { - session()->put(['patient_id' => $patient_id]); - session()->put(['episode_id' => $episode_id]); - - return redirect('inpatient_billing'); - } - - public function record_dependant_consumption(Request $request, $dependant_of, $items_array, $items_prices_array, $amount_consumed, $tag_id, $reason, $receipt_number) - { - $unpaid_balance = 0; - $balance_of_main_patient = get_balance_from_category_threshold($dependant_of); - if ($balance_of_main_patient < 0) { - $unpaid_balance = $amount_consumed; - } elseif ($amount_consumed > $balance_of_main_patient){ - $unpaid_balance = $amount_consumed - $balance_of_main_patient; - } - - $patient_depedant_record = new DependantsConsumption; - $patient_depedant_record->dependant_patient_id = $request->patient_id; - $patient_depedant_record->episode_id = $request->episode_id; - $patient_depedant_record->dependant_patient_category = get_name($request->patient_id, "id", "category_id", "patients"); - $patient_depedant_record->main_patient_id = $dependant_of; - $patient_depedant_record->main_patient_category = get_name($dependant_of, "id", "category_id", "patients"); - $patient_depedant_record->amount_consumed = $amount_consumed; - $patient_depedant_record->unpaid_balance = $unpaid_balance; - $patient_depedant_record->items_ids = implode(",", $items_array); - $patient_depedant_record->items_prices = implode(",", $items_prices_array); - $patient_depedant_record->tag_id = $tag_id; - $patient_depedant_record->reason = substr($reason, 10); //now remove the substring "Dependant-" used for discounts table - $patient_depedant_record->receipt_number = $receipt_number; - $patient_depedant_record->created_by = Auth::id(); - $patient_depedant_record->save(); - - //store the amount consumed in the discounts table so that it comes in the P&L report - $discount_amount = $amount_consumed-$unpaid_balance; - DepositHelpers::discount($discount_amount, $request->patient_id, $request->episode_id, $receipt_number, $reason); - } - - public function save_receipt_json($receipt_number, $receipt_json) { - $receipt_id = (int)$receipt_number; - - $receipt = TrackReceipt::find($receipt_id); - - if ($receipt) { - $receipt->receipt_json = $receipt_json; - $receipt->save(); - } - } - - /* save new non staff guarantor */ - public function save_new_non_staff_guarantor(Request $request) - { - $new_non_staff_guarantor = new NonStaffGuarantor; - $new_non_staff_guarantor->first_name = $request->first_name; - $new_non_staff_guarantor->last_name = $request->last_name; - $new_non_staff_guarantor->gender = $request->gender; - $new_non_staff_guarantor->marital_status = $request->marital_status; - $new_non_staff_guarantor->date_of_birth = Carbon::createFromFormat('d/m/Y', $request->date_of_birth)->toDateString(); - $new_non_staff_guarantor->contact = $request->contact; - $new_non_staff_guarantor->residence = $request->residence; - $new_non_staff_guarantor->created_by = Auth::id(); - $new_non_staff_guarantor->save(); - - return $new_non_staff_guarantor->id; - } - - public function dynamic_save_of_services_on_central_billing(Request $request) { - $unclean_service_ids_array = $request->service_ids; - $already_ordered = DB::table('ordered_services')->where(['patient_id' => $request->patient_id, 'episode_id' => $request->episode_id, 'payment_status' => 0 ,'inpatient_bill_generated' => 0])->first(); - - if ($already_ordered) { - $service_ids_array = explode(",", $already_ordered->service_id); - $quantity_array = explode(",", $already_ordered->quantity); - $service_amounts_array = explode(",", $already_ordered->service_amount); - $service_performed_array = explode(",", $already_ordered->performed); - $service_performed_id_array = explode(",", $already_ordered->performed_id); - - $service_order = Orderedservice::find($already_ordered->id); - } else { - $quantity_array = $service_performed_array = $service_performed_id_array = $service_amounts_array = $service_ids_array = []; - - $service_order = new Orderedservice; - } - - for ($i=0; $i < count($unclean_service_ids_array) ; $i++) { - if ($unclean_service_ids_array[$i] != 0) { - $quantity_array[] = 1; - $service_ids_array[] = $unclean_service_ids_array[$i]; - $service_amounts_array[] = get_name($unclean_service_ids_array[$i++], 'id', 'non_insured_price', 'services'); - $service_performed_array[] = ""; - $service_performed_id_array[] = ""; - } - } - - if (count($service_ids_array) > 0) { - $service_order->patient_id = $request->patient_id; - $service_order->episode_id = $request->episode_id; - $service_order->payment_status = 0; - $service_order->service_id = implode(",", $service_ids_array); - $service_order->quantity = implode(",", $quantity_array); - $service_order->service_amount = implode(",", $service_amounts_array); - $service_order->performed = implode(",", $service_performed_array); - $service_order->performed_id = implode(",", $service_performed_id_array); - $service_order->created_by = Auth::id(); - $service_order->save(); - } - } - - public function clean_patient_category_invoices_income_accounts($start, $end) - { - //$start = "2022-01-01"; - //$end = "2022-09-16"; - $patient_category_invoices = DB::table('patient_category_invoices')->whereBetween('created_at', [$start, $end])->get(); - if (count($patient_category_invoices)) { - foreach ($patient_category_invoices as $single_record) { - - $items_array = explode(",", $single_record->items_ids); - $tag_id = $single_record->tag_id; - $income_accounts_array = $cost_of_goods_account_array = $inventory_account_array = []; - - for ($i = 0; $i < count($items_array); $i++) { - //Consultations / Services - if ($tag_id == 6 || $tag_id == 8 || $tag_id == 7 || $tag_id == 10) { - $income_account = get_name($items_array[$i], 'id', 'account_id', 'services'); - $income_account = is_numeric($income_account) ? $income_account : 7; - $income_accounts_array[] = $income_account; - } - //Drugs / Treatments - elseif ($tag_id == 3 || $tag_id == 1) { - $income_account = get_name($items_array[$i], 'id', 'account_id', 'drugs'); - $income_account = is_numeric($income_account) ? $income_account : 4; - $income_accounts_array[] = $income_account; - $inventory_account = get_name($items_array[$i], 'id', 'inventory_account', 'drugs'); - $inventory_account_array[] = $inventory_account; - $cost_of_goods_account = get_name($items_array[$i], 'id', 'cost_of_goods_account', 'drugs'); - $cost_of_goods_account_array[] = $cost_of_goods_account; - $cost_price_array[$i] = get_latest_inventory_cost_price($items_array[$i], 1, Carbon::today()->toDateString()); - } - //Sundries - elseif ($tag_id == 5) { - $income_account = get_name($items_array[$i], 'id', 'account_id', 'sundries'); - $income_account = is_numeric($income_account) ? $income_account : 12; - $income_accounts_array[] = $income_account; - $inventory_account = get_name($items_array[$i], 'id', 'inventory_account', 'sundries'); - $inventory_account_array[] = $inventory_account; - $cost_of_goods_account = get_name($items_array[$i], 'id', 'cost_of_goods_account', 'sundries'); - $cost_of_goods_account_array[] = $cost_of_goods_account; - $cost_price_array[$i] = get_latest_inventory_cost_price($items_array[$i], 2, Carbon::today()->toDateString()); - } - //Investigations - elseif ($tag_id == 2) { - $income_account = get_name($items_array[$i], 'id', 'account_id', 'investigations'); - $income_account = is_numeric($income_account) ? $income_account : 11; - $income_accounts_array[] = $income_account; - } - //Procedures - elseif ($tag_id == 4) { - $income_account = get_name($items_array[$i], 'id', 'account_id', 'procedures'); - $income_account = is_numeric($income_account) ? $income_account : 8; - $income_accounts_array[] = $income_account; - } - } - - $income_accounts_string = is_null($income_accounts_array) ? "" : implode(',', $income_accounts_array); - $cost_of_goods_accounts_string = is_null($cost_of_goods_account_array) ? null : implode(',', $cost_of_goods_account_array); - $inventory_accounts_string = is_null($inventory_account_array) ? null : implode(',', $inventory_account_array); - - $existing_patient_category_invoice = PatientCategoryInvoice::withTrashed()->find($single_record->id); - $existing_patient_category_invoice->income_account = $income_accounts_string; - if ($tag_id == 3 || $tag_id == 1 || $tag_id == 5) { - $existing_patient_category_invoice->cost_of_goods_account = $cost_of_goods_accounts_string; - $existing_patient_category_invoice->inventory_account = $inventory_accounts_string; - } - $existing_patient_category_invoice->update(); - } - } - - return "patient category invoice accounts cleaned"; - } - - public function make_chi_deposits($item_type) { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $patient = Patient::find($patient_id); - $service_claims = []; - $procedure_claims = []; - $investigation_claims = []; - $treatment_claims = []; - $sundries_claims = []; - - if ($item_type == 0) { - $service_claims = InsuranceClaim::where('episode_id', $episode_id)->where('item_type', 1)->where('claim_status', 1)->get(); - $procedure_claims = InsuranceClaim::where('episode_id', $episode_id)->where('item_type', 2)->where('claim_status', 1)->get(); - $investigation_claims = InsuranceClaim::where('episode_id', $episode_id)->where('item_type', 3)->where('claim_status', 1)->get(); - $treatment_claims = InsuranceClaim::where('episode_id', $episode_id)->where('item_type', 4)->where('claim_status', 1)->get(); - $sundries_claims = InsuranceClaim::where('episode_id', $episode_id)->where('item_type', 5)->where('claim_status', 1)->get(); - } elseif ($item_type == 1) { - $service_claims = InsuranceClaim::where('episode_id', $episode_id)->where('item_type', 1)->where('claim_status', 1)->get(); - } elseif ($item_type == 2) { - $procedure_claims = InsuranceClaim::where('episode_id', $episode_id)->where('item_type', 2)->where('claim_status', 1)->get(); - } elseif ($item_type == 3) { - $investigation_claims = InsuranceClaim::where('episode_id', $episode_id)->where('item_type', 3)->where('claim_status', 1)->get(); - } elseif ($item_type == 4) { - $treatment_claims = InsuranceClaim::where('episode_id', $episode_id)->where('item_type', 4)->where('claim_status', 1)->get(); - } elseif ($item_type == 5) { - $sundries_claims = InsuranceClaim::where('episode_id', $episode_id)->where('item_type', 5)->where('claim_status', 1)->get(); - } - - $paid_claims = CHIDeposit::where('episode_id', $episode_id)->where('point_of_deposit', $item_type)->get(); - - $patient_payment_methods = PatientPaymentMethod::pluck('name', 'id'); - $patient_payment_methods_options = ""; - foreach ($patient_payment_methods as $key => $value) { - $patient_payment_methods_options .= ''; - } - - $discount = PatientDiscount::where(['patient_category'=>$patient->category_id])->first(); - $payment_arrangement = DB::table('debt_plan_arrangements')->pluck('name', 'id')->toArray(); - $payment_arrangement = ['' => '- select -'] + $payment_arrangement; - $staff_guarantors = DB::table('users')->pluck('first_name', 'id')->toArray(); - $non_staff_guarantors = DB::table('non_staff_guarantors')->pluck('first_name', 'id')->toArray(); - foreach ($non_staff_guarantors as $key => $value) { - $full_guarantor_name = $value . " " . get_name($key, "id", "last_name", "non_staff_guarantors"); - $non_staff_guarantors[$key] = $full_guarantor_name; - } - - return view('patient_finance::patient_finance.make_chi_deposits', compact('patient', 'service_claims', 'payment_arrangement', 'procedure_claims', 'investigation_claims', 'treatment_claims', 'sundries_claims', 'patient_id', 'episode_id', 'patient_payment_methods_options', - 'discount','staff_guarantors', 'non_staff_guarantors','item_type', 'paid_claims')); - } - - public function store_chi_deposits(Request $request) { - $wallets_amount = 0; - - if ($request->has('patient_account_pay_with')) { - if ($request->patient_account_pay_with > $request->patient_account_balance) { - // amount is more than is on the patient account - flash('Patient account balance is less than the current bill.')->error(); - return redirect()->back()->withInput(); - } - $wallets_amount += $request->patient_account_pay_with; - } - - if ($request->has('family_account_pay_with')) { - $this_patient_to_pay = $request->family_account_pay_with; - $this_family_account_balance = $request->family_account_balance; - $family_account_credit_limit = $request->family_account_credit_limit; - $wallets_amount += $request->family_account_pay_with; - - if (!is_family_consumption_allowed($this_patient_to_pay, $this_family_account_balance, $family_account_credit_limit)) { - return redirect()->back()->withInput(); - } - } - - $request->merge(['wallets_amount' => $wallets_amount]); - - if ($request->has('dependants_balance')) { - $original_dependants_balance = $request->dependants_balance; - - //make the main patient's patient category override the category of the dependant - $patient_is_a_dependant_of = patient_is_a_dependant_of($request->patient_id); - $main_patient_patient_category = get_name($patient_is_a_dependant_of, "id", "category_id", "patients"); - $request->merge(['patient_category_id' => $main_patient_patient_category]); - - //consume item by item to figure out the new category_to_pay values - if ($request->has('services_category_to_pay')) { - //if new dependants balance is -ve, make it zero - $new_dependants_balance = $request->dependants_balance < 0 ? 0 : $request->dependants_balance; - $request->merge(['dependants_balance' => $new_dependants_balance]); - //now do this - $original_services_cat_to_pay = $request->services_category_to_pay; - if($request->services_category_to_pay > $request->dependants_balance){ - $services_category_to_pay = $request->services_category_to_pay - $request->dependants_balance; - } else{ - $services_category_to_pay = 0; - } - $request->merge(['services_category_to_pay' => $services_category_to_pay]); - //recalculate the dependants balance - $new_dependants_balance = $request->dependants_balance - $original_services_cat_to_pay; - //if new dependants balance is -ve, make it zero - $new_dependants_balance = $new_dependants_balance < 0 ? 0 : $new_dependants_balance; - $request->merge(['dependants_balance' => $new_dependants_balance]); - } - - if ($request->has('procedures_category_to_pay')) { - $original_procedures_cat_to_pay = $request->procedures_category_to_pay; - if($request->procedures_category_to_pay > $request->dependants_balance){ - $procedures_category_to_pay = $request->procedures_category_to_pay - $request->dependants_balance; - } else{ - $procedures_category_to_pay = 0; - } - $request->merge(['procedures_category_to_pay' => $procedures_category_to_pay]); - //recalculate the dependants balance - $new_dependants_balance = $request->dependants_balance - $original_procedures_cat_to_pay; - //if new dependants balance is -ve, make it zero - $new_dependants_balance = $new_dependants_balance < 0 ? 0 : $new_dependants_balance; - $request->merge(['dependants_balance' => $new_dependants_balance]); - } - - if ($request->has('investigations_category_to_pay')) { - $original_invs_cat_to_pay = $request->investigations_category_to_pay; - if($request->investigations_category_to_pay > $request->dependants_balance){ - $investigations_category_to_pay = $request->investigations_category_to_pay - $request->dependants_balance; - } else{ - $investigations_category_to_pay = 0; - } - $request->merge(['investigations_category_to_pay' => $investigations_category_to_pay]); - //recalculate the dependants balance - $new_dependants_balance = $request->dependants_balance - $original_invs_cat_to_pay; - //if new dependants balance is -ve, make it zero - $new_dependants_balance = $new_dependants_balance < 0 ? 0 : $new_dependants_balance; - $request->merge(['dependants_balance' => $new_dependants_balance]); - } - - if ($request->has('treatment_category_to_pay')) { - $original_treatment_cat_to_pay = $request->treatment_category_to_pay; - if($request->treatment_category_to_pay > $request->dependants_balance){ - $treatment_category_to_pay = $request->treatment_category_to_pay - $request->dependants_balance; - } else{ - $treatment_category_to_pay = 0; - } - $request->merge(['treatment_category_to_pay' => $treatment_category_to_pay]); - //recalculate the dependants balance - $new_dependants_balance = $request->dependants_balance - $original_treatment_cat_to_pay; - //if new dependants balance is -ve, make it zero - $new_dependants_balance = $new_dependants_balance < 0 ? 0 : $new_dependants_balance; - $request->merge(['dependants_balance' => $new_dependants_balance]); - } - - if ($request->has('sundries_category_to_pay')) { - $original_sundries_cat_to_pay = $request->sundries_category_to_pay; - if($request->sundries_category_to_pay > $request->dependants_balance){ - $sundries_category_to_pay = $request->sundries_category_to_pay - $request->dependants_balance; - } else{ - $sundries_category_to_pay = 0; - } - $request->merge(['sundries_category_to_pay' => $sundries_category_to_pay]); - //recalculate the dependants balance - $new_dependants_balance = $request->dependants_balance - $original_sundries_cat_to_pay; - //if new dependants balance is -ve, make it zero - $new_dependants_balance = $new_dependants_balance < 0 ? 0 : $new_dependants_balance; - $request->merge(['dependants_balance' => $new_dependants_balance]); - } - - //recalculate the patient category to pay - if ($request->patient_category_to_pay > $original_dependants_balance) { - if ($original_dependants_balance < 0) { - $patient_category_to_pay = $request->patient_category_to_pay; - } else{ - $patient_category_to_pay = $request->patient_category_to_pay - $original_dependants_balance; - } - } else { - $patient_category_to_pay = 0; - } - $request->merge(['patient_category_to_pay' => $patient_category_to_pay]); - } - - $deposit = new CHIDeposits(); - - // begin transaction - DB::beginTransaction(); - - try { - // send data to be saved in respective tables and get the is_invoice flag and receipt number - $receipt_number = $deposit->store_payment($request); - - // all good so we can commit - DB::commit(); - } catch (\Exception | \Error $exception) { - DB::rollback(); - - DB::table('system_errors')->insert([ - 'error_message' => $exception->getMessage(), 'error_trace' => $exception->getTraceAsString(), - 'logged_in_user' => Auth::id() - ]); - - flash("An error occurred. Please try again or contact Stre@mline Support")->error(); - return back()->withInput(); - } - - if ($request->has('patient_account_pay_with')) { - record_patient_accounts_consumption($request->patient_id, $request->episode_id, $request->patient_account_pay_with, 18, $receipt_number); - } - - if ($request->has('family_account_pay_with')) { - record_family_consumption($request->patient_id, $request->episode_id, $request->family_account_id, $request->family_account_pay_with, 'CHI Deposits', $receipt_number); - } - - // for the staff guarantor, if debt plan id is not 0, add receipt number to it - if ($request->debt_plan_id != 0) { - DB::table('debt_plan')->where('id', $request->debt_plan_id) - ->update(['receipt_number' => $receipt_number]); - } - - // details to be used for receipt - $hospital_information = HospitalInformation::first(); - $chi_to_pay = $request->chi_to_pay; - $patient_co_payment = $request->patient_co_payment; - $patient_to_pay = $request->patient_to_pay; - $hospital_to_pay = $request->hospital_to_pay_general_discount; - $balance = $request->balance; - $patient_category_to_pay = $request->patient_category_to_pay; - $patient_category_id_to_pay = $request->patient_category_id; - $one_off_discount = $request->one_off_discount; - $one_off_discount_memo = $request->one_off_discount_memo; - $patient_account_pay_with = $request->patient_account_pay_with ?? 0; - $family_account_pay_with = $request->family_account_pay_with ?? 0; - $amount_paid_from_wallets = $patient_account_pay_with + $family_account_pay_with; - $total_amount_pay = $request->total_amount_pay; - $staff_guarantor_to_pay = $request->staff_guarantor_to_pay; - $cashier = Auth::id(); - - $patient_category_id = get_name($request->patient_id, "id", "category_id", "patients"); - $does_patient_category_have_threshold = does_patient_category_have_threshold($patient_category_id); - $patient_is_a_dependant_of = patient_is_a_dependant_of($request->patient_id); - - // save for service arrays - $service_ids_array = []; - $service_quantity = []; - $service_co_payment_amount_array = []; - $service_chi_amount_array = []; - if($request->service_id){ - $service_ids_array = $request->service_id; - $service_quantity = $request->service_quantity; - $service_co_payment_amount_array = $request->service_co_pay; - $service_chi_amount_array = $request->service_chi_to_pay; - - //record patient dependants consumption for services - if ($does_patient_category_have_threshold || !is_null($patient_is_a_dependant_of)) { - $this->record_dependant_consumption($request, $patient_is_a_dependant_of, $service_ids_array, $service_co_payment_amount_array, array_sum($service_co_payment_amount_array), 6, "Dependant-Consultation", $receipt_number); - } - } - - // save for procedures - $procedure_ids_array = []; - $procedure_co_payment_amount_array = []; - $procedure_chi_amount_array = []; - if($request->procedure_id){ - $procedure_ids_array = $request->procedure_id; - $procedure_co_payment_amount_array = $request->procedure_co_pay; - $procedure_chi_amount_array = $request->procedure_chi_to_pay; - - //record patient dependants consumption for procedures - if ($does_patient_category_have_threshold || !is_null($patient_is_a_dependant_of)) { - $this->record_dependant_consumption($request, $patient_is_a_dependant_of, $procedure_ids_array, $procedure_co_payment_amount_array, array_sum($procedure_co_payment_amount_array), 4, "Dependant-Procedures", $receipt_number); - } - } - - // save for investigations - $investigation_ids_array = []; - $investigation_co_payment_amount_array = []; - $investigation_chi_amount_array = []; - if($request->investigation_id){ - $investigation_ids_array = $request->investigation_id; - $investigation_co_payment_amount_array = $request->investigation_co_pay; - $investigation_chi_amount_array = $request->investigation_chi_to_pay; - - //record patient dependants consumption for investigations - if ($does_patient_category_have_threshold || !is_null($patient_is_a_dependant_of)) { - $this->record_dependant_consumption($request, $patient_is_a_dependant_of, $investigation_ids_array, $investigation_co_payment_amount_array, array_sum($investigation_co_payment_amount_array), 2, "Dependant-Investigations", $receipt_number); - } - } - - // save for treatment - $treatment_item = []; - $treatment_quantity = []; - $treatment_co_payment_amount_array = []; - $treatment_chi_amount_array = []; - if($request->treatment_item_id){ - $treatment_item = $request->treatment_item_id; - $treatment_quantity = $request->treatment_quantity; - $treatment_co_payment_amount_array = $request->treatment_co_pay; - $treatment_chi_amount_array = $request->treatment_chi_to_pay; - - //record patient dependants consumption for treatment - if ($does_patient_category_have_threshold || !is_null($patient_is_a_dependant_of)) { - $this->record_dependant_consumption($request, $patient_is_a_dependant_of, $treatment_item, $treatment_co_payment_amount_array, array_sum($treatment_co_payment_amount_array), 3, "Dependant-Treatment", $receipt_number); - } - } - - // save for sundries - $sundry_item = []; - $sundry_quantity = []; - $sundry_chi_amount_array = []; - $sundry_co_payment_amount_array = []; - if($request->sundries_id){ - $sundry_item = $request->sundries_id; - $sundry_quantity = $request->sundries_quantity; - $sundry_co_payment_amount_array = $request->sundries_co_pay; - $sundry_chi_amount_array = $request->sundries_chi_to_pay; - - //record patient dependants consumption for sundries - if ($does_patient_category_have_threshold || !is_null($patient_is_a_dependant_of)) { - $this->record_dependant_consumption($request, $patient_is_a_dependant_of, $sundry_item, $sundry_co_payment_amount_array, array_sum($sundry_co_payment_amount_array), 5, "Dependant-Sundries", $receipt_number); - } - } - - $patient = Patient::find($request->patient_id); - $receipt_date = date('Y-m-d H:i:s'); - - $return_payment_methods = $this->register_payment_method($request->patient_id, $request->episode_id, $request->original_cash_to_pay, $request->payment_method, - $request->payment_methods_amount, $request->ref_number, $request->ref_number_added_by, $receipt_number, 18, Auth::id(), $amount_paid_from_wallets); - - $compact_values = compact('hospital_information', 'receipt_date', 'receipt_number', 'patient', - 'service_co_payment_amount_array', 'service_ids_array', 'service_chi_amount_array', 'total_amount_pay', - 'procedure_ids_array', 'procedure_co_payment_amount_array', 'procedure_chi_amount_array','one_off_discount','one_off_discount_memo', - 'investigation_ids_array', 'investigation_co_payment_amount_array', 'investigation_chi_amount_array', 'staff_guarantor_to_pay', - 'treatment_item', 'treatment_quantity', 'treatment_co_payment_amount_array', 'treatment_chi_amount_array', 'family_account_pay_with', - 'service_quantity', 'chi_to_pay', 'patient_co_payment', 'balance', 'hospital_to_pay', 'patient_to_pay', 'return_payment_methods', 'patient_category_to_pay', 'patient_category_id_to_pay', - 'sundry_item', 'sundry_quantity', 'sundry_co_payment_amount_array', 'sundry_chi_amount_array', 'patient_account_pay_with', 'cashier'); - - $this->save_receipt_json($receipt_number, json_encode($compact_values)); - - if (is_cashier_receipt_type_print_html()) { - return redirect('/patient_finance/print_chi_deposit/' . $receipt_number); - } else { - // so we first have to set a session and then go back to the payment page - // on the payment page we can then set a JS variable that can help redirect us to our pdf print - session()->put('print_cashier_receipt_pdf', 1); - - session()->put('print_cashier_receipt_pdf_details', $compact_values); - session()->put('is_central_billing_receipt', 1); - - return redirect('/patient_finance/make_chi_deposits/' . $request->item_type); - } - } - - public function print_chi_deposit($receipt_number) { - // check if track_receipts has details - $receipt_json = get_name((int)$receipt_number, 'id', 'receipt_json', 'track_receipts'); - - $compact_values = json_decode($receipt_json, true); - $compact_values["patient"] = Patient::find($compact_values["patient"]["id"]); - $compact_values["hospital_information"] = HospitalInformation::first(); - - if (is_cashier_receipt_type_print_html()) { - $compact_values["staff_guarantor_to_pay"] = $compact_values["staff_guarantor_to_pay"] ?? 0; - - return view('patient_finance::patient_finance.receipts.chi_deposit', $compact_values); - } else { - // so we first have to set a session and then go back to the payment page - // on the payment page we can then set a JS variable that can help redirect us to our pdf print - session()->put('print_cashier_receipt_pdf', 1); - - session()->put('print_cashier_receipt_pdf_details', $compact_values); - - return redirect('/patient_finance/make_chi_deposits/' . get_name($receipt_number, 'receipt_number', 'point_of_deposit', 'chi_deposits')); - } - } - - public function print_chi_deposit_pdf() { - $data = session()->get("print_cashier_receipt_pdf_details"); - - // add check for when the people try to reload the page - if (!$data) { - return redirect('/patient_finance/home'); - } - - // lest i forget Thy love for me - session()->forget('print_cashier_receipt_pdf'); - session()->forget('print_cashier_receipt_pdf_details'); - - $pdf = SnappyPDF::loadView("patient_finance::patient_finance.receipts.chi_deposit_pdf", $data) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline'); - - return $pdf->inline('Patient Receipt' . date(" d-m-y h:ia") . '.pdf'); - } -} diff --git a/docker/statistics/Modules/PatientFinance/Http/Controllers/PatientPaymentMethodsController.php b/docker/statistics/Modules/PatientFinance/Http/Controllers/PatientPaymentMethodsController.php deleted file mode 100755 index 0ec99bfc..00000000 --- a/docker/statistics/Modules/PatientFinance/Http/Controllers/PatientPaymentMethodsController.php +++ /dev/null @@ -1,187 +0,0 @@ -userService->pluckUserFullName(); - - return view('patient_finance::patient_payment_methods.index', compact('methods', 'users')); - } - - public function create() { - return view('patient_finance::patient_payment_methods.create'); - } - - public function store(Request $request) { - request()->validate([ - 'name' => 'required' - ]); - - $method = new PatientPaymentMethod; - $logged_in_user_id = Auth::user()->id; - - $method->name = $request->name; - $method->is_ref_required = $request->is_ref_required; - $method->created_by = $logged_in_user_id; - $method->updated_by = $logged_in_user_id; - - try { - if ($method->name != "" || !is_null($method->name)) { - $method->save(); - } - - flash("Payment method has been saved")->success(); - return redirect("/patient_payment_methods"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - public function edit($id) { - $method = PatientPaymentMethod::where(['id' => $id])->first(); - - if (!$method) { - flash()->error("Payment method not found"); - return redirect('/patient_payment_methods'); - } else { - return view('patient_finance::patient_payment_methods.edit', compact('method')); - } - } - - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required' - ]); - - //validation passed - $method = PatientPaymentMethod::find($id); - $method->name = $request->name; - $method->is_ref_required = $request->is_ref_required; - - try { - $method->save(); - flash("Payment method has been updated")->success(); - return redirect("/patient_payment_methods"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - public function delete($id) { - $method = PatientPaymentMethod::find($id); - - if ($method->delete()) { - flash("Payment method has been deleted.")->success(); - return redirect('/patient_payment_methods'); - } - } - - public function inactive() { - $methods = PatientPaymentMethod::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (count($methods) < 1) { - flash()->error("There is no inactive payment method"); - return redirect('/patient_payment_methods'); - } else { - return view('patient_finance::patient_payment_methods.inactive', compact('methods')); - } - } - - public function activate($id) { - $method = PatientPaymentMethod::withTrashed()->find($id); - - if($method->restore()){ - flash("Payment method has been activated.")->success(); - return redirect('/patient_payment_methods/inactive'); - } - } - - public function reports(Request $request) { - $search_text = ""; - $filters = []; - - $payment_methods = PatientPaymentMethod::pluck('name', 'id'); - $tags = FinancePointTag::pluck('name', 'id'); - - if (isset($request->payment_method) && $request->payment_method != -1) { - array_push($filters, ['payment_method_id', '=', $request->payment_method]); - $search_text .= "Payment Method: " . (($request->payment_method == 0) ? "Cash" : $payment_methods[$request->payment_method]) . " | "; - } - - if (isset($request->date_period)) { - switch ($request->date_period) { - default: - case "today": - $search_text .= "Today" . " | "; - $start = Carbon::today()->startOfDay(); - $end = Carbon::today()->endOfDay(); - break; - case "yesterday": - $search_text .= "Yesterday" . " | "; - $start = Carbon::yesterday()->startOfDay(); - $end = Carbon::yesterday()->endOfDay(); - break; - case "custom_date": - $search_text .= "On: " . streamline_date($request->start_date) . " | "; - - $start = Carbon::createFromFormat('d-m-Y', $request->start_date)->startOfDay(); - $end = Carbon::createFromFormat('d-m-Y', $request->start_date)->endOfDay(); - break; - case "custom_date_range": - $search_text .= "From: " . streamline_date($request->start_date) . " to " . streamline_date($request->end_date) . " | "; - - $start = Carbon::createFromFormat('d-m-Y', $request->start_date)->startOfDay(); - $end = Carbon::createFromFormat('d-m-Y', $request->end_date)->endOfDay(); - break; - } - } else { - $search_text .= "Today" . " | "; - $start = Carbon::today()->startOfDay(); - $end = Carbon::today()->endOfDay(); - } - - if (isset($request->staff_member) && $request->staff_member != 0) { - $records = PaymentMethodsTransaction::where('created_by', $request->staff_member) - ->where($filters) - ->whereBetween('created_at', [$start, $end]) - ->get(); - $search_text .= "Staff Member: " . get_full_name($request->staff_member, 'id', 'first_name', 'last_name', 'users'); - } else { - $search_text .= "Staff Member: All"; - $records = PaymentMethodsTransaction::where($filters)->whereBetween('created_at', [$start, $end])->get(); - } - $users = $this->userService->pluckUserFullName(); - - return view('patient_finance::patient_payment_methods.reports', compact('users', 'search_text', 'records', 'payment_methods', 'tags')); - } - - public function isRefRequired(Request $request): int - { - return $this->paymentMethodService->isRefRequired($request->id); - } -} diff --git a/docker/statistics/Modules/PatientFinance/Http/Controllers/PatientRefundController.php b/docker/statistics/Modules/PatientFinance/Http/Controllers/PatientRefundController.php deleted file mode 100755 index 74c49288..00000000 --- a/docker/statistics/Modules/PatientFinance/Http/Controllers/PatientRefundController.php +++ /dev/null @@ -1,287 +0,0 @@ -get('episode_id'); - - // exclude central billing so that they have to go and cancel it instead - $exclude_receipts = DB::table('central_billing_deposits')->where('episode_id', $episode_id)->distinct()->pluck('receipt_number')->toArray(); - - // check if consultation or other services is available for refund - $service_items = ServiceDeposit::where(['episode_id' => $episode_id])->whereNotIn('receipt_number', $exclude_receipts)->whereNull('received')->get(['service_type']); - - $service_deposits_types = []; - - foreach ($service_items as $item) { - $service_deposits_types[] = $item->service_type; - } - - if (in_array('Consultation', $service_deposits_types)) { - $consultations = 1; - } else { - $consultations = 0; - } - - if (in_array('Co_Payment', $service_deposits_types)) { - $co_payment = 1; - } else { - $co_payment = 0; - } - - if (in_array('Inpatient_Deposit', $service_deposits_types)) { - $inpatient_deposits = 1; - } else { - $inpatient_deposits = 0; - } - - if (in_array('Service', $service_deposits_types) || in_array('Other_service', $service_deposits_types) || in_array('Services', $service_deposits_types)) { - $other_services = 1; - } else { - $other_services = 0; - } - - // check if treatments is available for refund - $prescription = TreatmentDeposits::where(['episode_id' => $episode_id])->whereNotIn('receipt_number', $exclude_receipts)->whereNull('received')->count() > 0 ? 1 : 0; - - // check if investigations is available for refund - $investigations = InvestigationDeposit::where(['episode_id' => $episode_id])->whereNotIn('receipt_number', $exclude_receipts)->whereNull('received')->count() ? 1 : 0; - - // check if procedures is available for refund - $procedures_paid = ProcedureDeposit::where(['episode_id' => $episode_id])->whereNotIn('receipt_number', $exclude_receipts)->whereNull('received')->count() ? 1 : 0; - - // check if sundries is available for refund - $sundries_paid = SundryDeposit::where(['episode_id' => $episode_id])->whereNotIn('receipt_number', $exclude_receipts)->whereNull('received')->count() ? 1 : 0; - - return view("patient_finance::patient_refund.choose_refund_point", compact("consultations", "other_services", "prescription", "investigations", "procedures_paid", "inpatient_deposits", "sundries_paid", "co_payment")); - } - - public function register_refund_details(Request $request) { - $episode_id = session()->get('episode_id'); - $refund_point = $request->refund_point; - // exclude central billing so that they have to go and cancel it instead - $exclude_receipts = DB::table('central_billing_deposits')->where('episode_id', $episode_id)->distinct()->pluck('receipt_number')->toArray(); - - switch ($refund_point) { - case 1: - // Consultation - $services = ServiceDeposit::where(['episode_id' => $episode_id, 'service_type' => 'Consultation'])->whereNotIn('receipt_number', $exclude_receipts)->whereNull('received')->orderBy('created_at', 'desc')->get(); - $compact = compact('services', 'refund_point'); - break; - case 2: - // Treatment - $paid_treatments = TreatmentDeposits::where(['episode_id' => $episode_id])->whereNotIn('receipt_number', $exclude_receipts)->whereNull('received')->get(); - $compact = compact('paid_treatments', 'refund_point'); - break; - case 3: - // Investigations - $investigations = InvestigationDeposit::where(['episode_id' => $episode_id])->whereNotIn('receipt_number', $exclude_receipts)->whereNull('received')->orderBy('created_at', 'desc')->get(); - $compact = compact('investigations', 'refund_point'); - break; - case 4: - // Procedures - $procedures = ProcedureDeposit::where(['episode_id' => $episode_id])->whereNotIn('receipt_number', $exclude_receipts)->whereNull('received')->orderBy('created_at', 'desc')->get(); - $compact = compact('procedures', 'refund_point'); - break; - case 5: - // Other Services - $services = ServiceDeposit::where(['episode_id' => $episode_id, 'service_type' => 'Services'])->whereNotIn('receipt_number', $exclude_receipts)->whereNull('received')->orderBy('created_at', 'desc')->get(); - $compact = compact('services', 'refund_point'); - break; - case 6: - // Inpatient Deposits - $inpatient_fees = ServiceDeposit::where(['episode_id' => $episode_id, 'service_type' => 'Inpatient_Deposit'])->whereNotIn('receipt_number', $exclude_receipts)->whereNull('received')->orderBy('created_at', 'desc')->get(); - $compact = compact('inpatient_fees', 'refund_point'); - break; - case 7: - // Sundries - $paid_sundries = SundryDeposit::where(['episode_id' => $episode_id])->whereNotIn('receipt_number', $exclude_receipts)->whereNull('received')->get(); - $compact = compact('paid_sundries', 'refund_point'); - break; - case 8: - // Co-Payment - $services = ServiceDeposit::where(['episode_id' => $episode_id, 'service_type' => 'Co_Payment'])->whereNotIn('receipt_number', $exclude_receipts)->whereNull('received')->orderBy('created_at', 'desc')->get(); - $compact = compact('services', 'refund_point'); - break; - default: - $compact = compact('episode_id'); - break; - } - - return view("patient_finance::patient_refund.register_refund_details", $compact); - } - - public function save_refund_details(Request $request) - { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $refund_point = $request->refund_point; - $deposit_id = $request->id; - $maximum_refund_amount = $request->maximum_refund_amount; - $refund_amount = $request->refund_amount; - $new_patient_amount_paid = $maximum_refund_amount - $refund_amount; - $refund_reason = $request->refund_reason; - $original_receipt_number = ""; - $refund_date = Carbon::parse($request->refund_date)->format('Y-m-d'); - - // update the track_receipt table to include created receipt - $track_receipts = new TrackReceipt; - $track_receipts->created_by = Auth::id(); - $track_receipts->reason = 'Patient Refunds'; - $track_receipts->save(); - $receipt_number = sprintf("%04u", $track_receipts->id); - - if ($refund_point == 1) { - // Consultation - $consultation = ServiceDeposit::find($deposit_id); - $original_receipt_number = $consultation->receipt_number; - $consultation->patient_amount_paid = $new_patient_amount_paid; - $consultation->refund_amount = $consultation->refund_amount + $refund_amount; - $consultation->update(); - if ($request->reverse_doctor_fees == 1) { - reverse_staff_fee_payment($patient_id, $episode_id, 3); - } - - split_service_payment($deposit_id); - } elseif ($refund_point == 2) { - // Treatment - $treatment = TreatmentDeposits::find($deposit_id); - $original_receipt_number = $treatment->receipt_number; - $treatment->patient_amount_paid = $new_patient_amount_paid; - $treatment->refund_amount = $treatment->refund_amount + $refund_amount; - $treatment->update(); - - split_treatment_payment($deposit_id); - } elseif ($refund_point == 3) { - // Investigation - $investigation = InvestigationDeposit::find($deposit_id); - $original_receipt_number = $investigation->receipt_number; - $investigation->patient_amount_paid = $new_patient_amount_paid; - $investigation->refund_amount = $investigation->refund_amount + $refund_amount; - $investigation->update(); - if ($request->reverse_doctor_fees == 1) { - reverse_staff_fee_payment($patient_id, $episode_id, 2); - } - - split_investigation_payment($deposit_id); - } elseif ($refund_point == 4) { - // Procedures - $procedures = ProcedureDeposit::find($deposit_id); - $original_receipt_number = $procedures->receipt_number; - $procedures->patient_amount_paid = $new_patient_amount_paid; - $procedures->refund_amount = $procedures->refund_amount + $refund_amount; - $procedures->update(); - if ($request->reverse_doctor_fees == 1) { - reverse_staff_fee_payment($patient_id, $episode_id, 1); - } - - split_procedure_payment($deposit_id); - } elseif ($refund_point == 5 || $refund_point == 6 || $refund_point == 8) { - // Other Services - Inpatient Deposits - CoPayment - $other_services = ServiceDeposit::find($deposit_id); - $original_receipt_number = $other_services->receipt_number; - $other_services->patient_amount_paid = $new_patient_amount_paid; - $other_services->refund_amount = $other_services->refund_amount + $refund_amount; - $other_services->update(); - - if ($refund_point == 6) { - $this->inpatientFinanceService->unsplit_inpatient_deposit($patient_id, $episode_id, $other_services->receipt_number, $refund_amount); - } else { - split_service_payment($deposit_id); - } - } elseif ($refund_point == 7) { - // Sundries - $sundries = SundryDeposit::find($deposit_id); - $original_receipt_number = $sundries->receipt_number; - $sundries->patient_amount_paid = $new_patient_amount_paid; - $sundries->refund_amount = $sundries->refund_amount + $refund_amount; - $sundries->update(); - - split_sundry_payment($deposit_id); - } - - revert_cash_credits_to_daily_collection_account($refund_amount, $original_receipt_number, false); - - // check if this receipt has any family/patient account consumptions attached and remove the refund amount - reverse_family_consumption_record($original_receipt_number, $refund_amount, false); - reverse_patient_account_consumption_record($original_receipt_number, $refund_amount, false); - reverse_dependant_consumption_record($original_receipt_number, $refund_amount, false); - - // reduce the patient paid amount in the payment methods - $payment_methods = DB::table('payment_methods_transactions') - ->where('receipt_number', $original_receipt_number)->get(); - - if (count($payment_methods) > 0) { - $pm_new_patient_amount_paid = $refund_amount; - - foreach ($payment_methods as $payment_method) { - $payment_methods_update = PaymentMethodsTransaction::find($payment_method->id); - - if ($pm_new_patient_amount_paid > $payment_method->amount) { - $pm_new_patient_amount_paid = $pm_new_patient_amount_paid - $payment_method->amount; - $payment_methods_update->amount = 0; - } else { - $payment_methods_update->amount = $payment_method->amount - $pm_new_patient_amount_paid; - $pm_new_patient_amount_paid = 0; - } - - $payment_methods_update->update(); - - if ($pm_new_patient_amount_paid == 0) { - break; - } - } - } - - // create patient refund record - $refund = new PatientRefunds(); - - $refund->original_patient_amount_paid = $maximum_refund_amount; - $refund->patient_id = $patient_id; - $refund->episode_id = $episode_id; - $refund->refund_amount = $refund_amount; - $refund->refund_reason = $refund_reason; - $refund->refund_date = $refund_date; - $refund->refund_point = $refund_point; - $refund->deposit_id = $deposit_id; - $refund->receipt_number = $receipt_number; - $refund->created_by = Auth::id(); - - if ($refund->save()) { - // details to be used for receipt - $hospital_information = HospitalInformation::first(); - $patient = Patient::find($patient_id); - $receipt_date = date('Y-m-d h:i:s'); - - return view("patient_finance::patient_refund.receipt", compact('hospital_information', 'receipt_number', 'patient', 'receipt_date', 'refund_amount', 'refund_reason', 'original_receipt_number')); - } else { - flash("Unable to process refund. Please try again later")->error(); - return back()->withInput(); - } - } -} diff --git a/docker/statistics/Modules/PatientFinance/Providers/PatientFinanceServiceProvider.php b/docker/statistics/Modules/PatientFinance/Providers/PatientFinanceServiceProvider.php deleted file mode 100644 index 1f9cf247..00000000 --- a/docker/statistics/Modules/PatientFinance/Providers/PatientFinanceServiceProvider.php +++ /dev/null @@ -1,113 +0,0 @@ -registerTranslations(); - $this->registerConfig(); - $this->registerViews(); - $this->loadMigrationsFrom(module_path($this->moduleName, 'Database/Migrations')); - } - - /** - * Register the service provider. - * - * @return void - */ - public function register() - { - $this->app->register(RouteServiceProvider::class); - } - - /** - * Register config. - * - * @return void - */ - protected function registerConfig() - { - $this->publishes([ - module_path($this->moduleName, 'Config/config.php') => config_path($this->moduleNameLower . '.php'), - ], 'config'); - $this->mergeConfigFrom( - module_path($this->moduleName, 'Config/config.php'), $this->moduleNameLower - ); - } - - /** - * Register views. - * - * @return void - */ - public function registerViews() - { - $viewPath = resource_path('views/modules/' . $this->moduleNameLower); - - $sourcePath = module_path($this->moduleName, 'Resources/views'); - - $this->publishes([ - $sourcePath => $viewPath - ], ['views', $this->moduleNameLower . '-module-views']); - - $this->loadViewsFrom(array_merge($this->getPublishableViewPaths(), [$sourcePath]), $this->moduleNameLower); - } - - /** - * Register translations. - * - * @return void - */ - public function registerTranslations() - { - $langPath = resource_path('lang/modules/' . $this->moduleNameLower); - - if (is_dir($langPath)) { - $this->loadTranslationsFrom($langPath, $this->moduleNameLower); - $this->loadJsonTranslationsFrom($langPath); - } else { - $this->loadTranslationsFrom(module_path($this->moduleName, 'Resources/lang'), $this->moduleNameLower); - $this->loadJsonTranslationsFrom(module_path($this->moduleName, 'Resources/lang')); - } - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides() - { - return []; - } - - private function getPublishableViewPaths(): array - { - $paths = []; - foreach (\Config::get('view.paths') as $path) { - if (is_dir($path . '/modules/' . $this->moduleNameLower)) { - $paths[] = $path . '/modules/' . $this->moduleNameLower; - } - } - return $paths; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Providers/RouteServiceProvider.php b/docker/statistics/Modules/PatientFinance/Providers/RouteServiceProvider.php deleted file mode 100755 index 4fc267dc..00000000 --- a/docker/statistics/Modules/PatientFinance/Providers/RouteServiceProvider.php +++ /dev/null @@ -1,68 +0,0 @@ -mapApiRoutes(); - $this->mapWebRoutes(); - } - - /** - * Define the "web" routes for the application. - * - * These routes all receive session state, CSRF protection, etc. - * - * @return void - */ - protected function mapWebRoutes() - { - Route::middleware('web') - ->namespace($this->namespace) - ->group(module_path('PatientFinance', '/Routes/web.php')); - } - - /** - * Define the "api" routes for the application. - * - * These routes are typically stateless. - * - * @return void - */ - protected function mapApiRoutes() - { - Route::prefix('api') - ->middleware('api') - ->namespace($this->namespace) - ->group(module_path('PatientFinance', '/Routes/api.php')); - } -} diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/cancel_patient_transactions/cancel_central_billing.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/cancel_patient_transactions/cancel_central_billing.blade.php deleted file mode 100755 index f3daff4d..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/cancel_patient_transactions/cancel_central_billing.blade.php +++ /dev/null @@ -1,111 +0,0 @@ -@extends('layouts.main') - -@section('content') - -
    -
    -

    Cancel Invoice

    -
    -
    - -
    -
    - -
    -
    -
    - -

    Central Billing Details

    - - - - - - - - - - - - - - - @php $patient_amount_paid = 0; @endphp - @foreach($deposit_details as $deposit_detail) - - - @php - $price_array = explode(",", $deposit_detail->items_amounts); - $items_array = explode(",", $deposit_detail->items_ids); - if ($deposit_detail->tag_id == 3) { - $table_name = "drugs"; - } elseif ($deposit_detail->tag_id == 2) { - $table_name = "investigations"; - } elseif ($deposit_detail->tag_id == 4) { - $table_name = "procedures"; - } elseif ($deposit_detail->tag_id == 5) { - $table_name = "sundries"; - } elseif ($deposit_detail->tag_id == 8) { - $table_name = "services"; - } elseif ($deposit_detail->tag_id == 16) { - $table_name = "eye_glasses"; - } else { - $table_name = ""; - } - - $patient_amount_paid += $deposit_detail->patient_amount_paid; - @endphp - - - - - - - - @endforeach - -
    {{ __('patient_refund.receipt_number') }}Item NamesItem Prices{{ __('patient_refund.patient_amount_paid') }}Patient Category Paid{{ __('patient_refund.collected_by') }}{{ __('patient_refund.payment_date') }}
    {{ $deposit_detail->receipt_number }} - @php $items_counter = 1; @endphp - @foreach($items_array as $item) - {{ $items_counter }}. {{ get_name($item, 'id', 'name', $table_name) }}
    - @php $items_counter++; @endphp - @endforeach -
    - @php $items_counter = 1; @endphp - @foreach($price_array as $price) - {{ $items_counter }}. {{ ugandan_shillings($price) }}
    - @php $items_counter++; @endphp - @endforeach -
    - {{ ugandan_shillings($deposit_detail->patient_amount_paid) }} - - {{ ugandan_shillings($deposit_detail->patient_category_amount_paid) }} - {{ get_full_name($deposit_detail->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date_time($deposit_detail->created_at) }}
    -
    -
    -
    - -
    - {{ Form::open(['route' => 'patient_finance.confirm_cancel_central_billing_receipt', 'data-toggle' => 'validator']) }} - - {{ Form::hidden('receipt_number', $deposit_detail->receipt_number) }} - {{ Form::hidden('patient_amount_paid', $patient_amount_paid) }} - -
    -
    -
    - {{ Form::label('cancellation_reason','Cancellation Reason') }} - {{ Form::textarea('cancellation_reason','',['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - -
    - {{ Form::button('Cancel Receipt',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'onclick' => 'return confirm("Are you sure you want to continue? You won\'t be able to reverse this process")']) }} -
    - {{ Form::close() }} -
    -@endsection diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/cancel_patient_transactions/cancel_chi_deposit.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/cancel_patient_transactions/cancel_chi_deposit.blade.php deleted file mode 100644 index af7b2f2b..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/cancel_patient_transactions/cancel_chi_deposit.blade.php +++ /dev/null @@ -1,105 +0,0 @@ -@extends('layouts.main') - -@section('content') - -
    -
    -

    Cancel Invoice

    -
    -
    - -
    -
    - -
    -
    -
    - -

    Central Billing Details

    - - - - - - - - - - - - - - - @php $patient_amount_paid = 0; @endphp - @foreach($deposit_details as $deposit_detail) - - - @php - $price_array = explode(",", $deposit_detail->patient_co_payment); - $items_array = explode(",", $deposit_detail->items_ids); - if ($deposit_detail->tag_id == 3) { - $table_name = "drugs"; - } elseif ($deposit_detail->tag_id == 2) { - $table_name = "investigations"; - } elseif ($deposit_detail->tag_id == 4) { - $table_name = "procedures"; - } elseif ($deposit_detail->tag_id == 5) { - $table_name = "sundries"; - } elseif ($deposit_detail->tag_id == 8) { - $table_name = "services"; - } else { - $table_name = ""; - } - - $patient_amount_paid += $deposit_detail->patient_amount_paid; - @endphp - - - - - - - - @endforeach - -
    {{ __('patient_refund.receipt_number') }}Item NamesItem Prices{{ __('patient_refund.patient_amount_paid') }}{{ __('patient_finance.chi_amount') }}{{ __('patient_refund.collected_by') }}{{ __('patient_refund.payment_date') }}
    {{ $deposit_detail->receipt_number }} - @php $items_counter = 1; @endphp - @foreach($items_array as $item) - {{ $items_counter }}. {{ get_name($item, 'id', 'name', $table_name) }}
    - @php $items_counter++; @endphp - @endforeach -
    - @php $items_counter = 1; @endphp - @foreach($price_array as $price) - {{ $items_counter }}. {{ ugandan_shillings($price) }}
    - @php $items_counter++; @endphp - @endforeach -
    {{ ugandan_shillings($deposit_detail->patient_amount_paid) }}{{ ugandan_shillings($deposit_detail->chi_amount_total) }}{{ get_full_name($deposit_detail->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date_time($deposit_detail->created_at) }}
    -
    -
    -
    - -
    - {{ Form::open(['route' => 'patient_finance.confirm_cancel_chi_deposit', 'data-toggle' => 'validator']) }} - - {{ Form::hidden('receipt_number', $deposit_detail->receipt_number) }} - {{ Form::hidden('patient_amount_paid', $patient_amount_paid) }} - -
    -
    -
    - {{ Form::label('cancellation_reason','Cancellation Reason') }} - {{ Form::textarea('cancellation_reason','',['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - -
    - {{ Form::button('Cancel Receipt',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'onclick' => 'return confirm("Are you sure you want to continue? You won\'t be able to reverse this process")']) }} -
    - {{ Form::close() }} -
    -@endsection diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/cancel_patient_transactions/cancel_invoice.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/cancel_patient_transactions/cancel_invoice.blade.php deleted file mode 100755 index fc20e8cf..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/cancel_patient_transactions/cancel_invoice.blade.php +++ /dev/null @@ -1,108 +0,0 @@ -@extends('layouts.main') - -@section('content') - -
    -
    -

    Cancel Invoice

    -
    -
    - -
    -
    - -
    -
    -
    - -

    Invoice Details

    - - - - - - - - - - - - - - - - @php - $price_array = explode(",", $deposit_details->items_amounts); - $items_array = explode(",", $deposit_details->items_ids); - if ($billing_point == 3) { - $table_name = "drugs"; - } elseif ($billing_point == 2) { - $table_name = "investigations"; - } elseif ($billing_point == 4) { - $table_name = "procedures"; - } elseif ($billing_point == 5) { - $table_name = "sundries"; - } elseif ($billing_point == 8) { - $table_name = "services"; - } elseif ($billing_point == 10) { - $table_name = "Inpatient_Deposit"; - } else { - $table_name = ""; - } - @endphp - - - - - - - -
    {{ __('patient_refund.receipt_number') }}Item NamesItem Prices{{ __('patient_refund.patient_amount_paid') }}{{ __('patient_refund.collected_by') }}{{ __('patient_refund.payment_date') }}
    {{ $deposit_details->receipt_number }} - @php $items_counter = 1; @endphp - @foreach($items_array as $item) - @if($table_name == 'Inpatient_Deposit') - {{ $items_counter }}. Inpatient Deposit
    - @else - {{ $items_counter }}. {{ get_name($item, 'id', 'name', $table_name) }}
    - @endif - @php $items_counter++; @endphp - @endforeach -
    - @php $items_counter = 1; $total_items_amount = 0; @endphp - @foreach($price_array as $price) - {{ $items_counter }}. {{ ugandan_shillings($price) }}
    - @php $items_counter++; $total_items_amount += $price; @endphp - @endforeach -
    - {{ ugandan_shillings($deposit_details->patient_amount) }} - {{ get_full_name($deposit_details->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date_time($deposit_details->created_at) }}
    -
    -
    -
    - -
    - {{ Form::open(['route' => 'patient_finance.confirm_cancel_receipt', 'data-toggle' => 'validator']) }} - - {{ Form::hidden('deposit_id', $deposit_details->id) }} - {{ Form::hidden('billing_point', $billing_point) }} - {{ Form::hidden('patient_amount_paid', ($total_items_amount - $deposit_details->patient_amount)) }} - {{ Form::hidden('is_invoice', 1) }} - -
    -
    -
    - {{ Form::label('cancellation_reason','Cancellation Reason') }} - {{ Form::textarea('cancellation_reason','',['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - -
    - {{ Form::button('Cancel Receipt',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'onclick' => 'return confirm("Are you sure you want to continue? You won\'t be able to reverse this process")']) }} -
    - {{ Form::close() }} -
    -@endsection diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/cancel_patient_transactions/cancel_receipt.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/cancel_patient_transactions/cancel_receipt.blade.php deleted file mode 100755 index b69f18f8..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/cancel_patient_transactions/cancel_receipt.blade.php +++ /dev/null @@ -1,130 +0,0 @@ -@extends('layouts.main') - -@section('content') - -
    -
    -

    Cancel Receipt

    -
    -
    - -
    -
    - -
    -
    -
    - -

    Receipt Details

    - - - - - - - - - - - - - - - - @php - if ($billing_point == 3) { - $price_array = explode(",", $deposit_details->treatment_subtotals); - $items_array = explode(",", $deposit_details->treatment_items); - $table_name = "drugs"; - } elseif ($billing_point == 2) { - $price_array = explode(",", $deposit_details->investigation_amounts); - $items_array = explode(",", $deposit_details->investigation_items); - $table_name = "investigations"; - } elseif ($billing_point == 4) { - $price_array = explode(",", $deposit_details->procedure_amounts); - $items_array = explode(",", $deposit_details->procedure_items); - $table_name = "procedures"; - } elseif ($billing_point == 5) { - $price_array = explode(",", $deposit_details->sundry_subtotals); - $items_array = explode(",", $deposit_details->sundry_items); - $table_name = "sundries"; - } elseif ($billing_point == 8) { - $price_array = explode(",", $deposit_details->items_amounts); - $items_array = explode(",", $deposit_details->items_ids); - $table_name = "services"; - } elseif ($billing_point == 10) { - $price_array = explode(",", $deposit_details->items_amounts); - $items_array = explode(",", $deposit_details->items_ids); - $table_name = "services"; - } elseif ($billing_point == 16) { - $price_array = explode(",", $deposit_details->subtotals); - $items_array = explode(",", $deposit_details->items); - $table_name = "eye_glasses"; - } else { - $price_array = []; - $items_array = []; - $table_name = ""; - } - @endphp - - - - - - - - -
    -
    -
    - -
    - {{ Form::open(['route' => 'patient_finance.confirm_cancel_receipt', 'data-toggle' => 'validator']) }} - - {{ Form::hidden('deposit_id', $deposit_details->id) }} - {{ Form::hidden('billing_point', $billing_point) }} - {{ Form::hidden('patient_amount_paid', $deposit_details->patient_amount_paid) }} - -
    -
    -
    - {{ Form::label('cancellation_reason','Cancellation Reason') }} - {{ Form::textarea('cancellation_reason','',['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - -
    - {{ Form::button('Cancel Receipt',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'onclick' => 'return confirm("Are you sure you want to continue? You won\'t be able to reverse this process")']) }} -
    - {{ Form::close() }} -
    -@endsection diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/cancel_patient_transactions/cancelled_patient_transactions_report.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/cancel_patient_transactions/cancelled_patient_transactions_report.blade.php deleted file mode 100755 index 52c3a4e5..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/cancel_patient_transactions/cancelled_patient_transactions_report.blade.php +++ /dev/null @@ -1,194 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    Cancelled Patient Transactions

    -
    -
    - -
    -
    - -
    -
    - {{ Form::open(['route' => 'patient_finance.cancelled_patient_transactions_report', 'class' => 'typeahead', 'method' => 'ANY', 'role' => 'search']) }} - - {{ Form::hidden('user_id', 0, ['id' => 'user_id']) }} - -
    -
    -
    - {{ Form::label('search_by', 'Cancellation Date') }} - {{ Form::select('search_by', ['0'=>__('pharmacy.last_24_hours'),'1'=>__('pharmacy.custom_date'),'2'=>__('pharmacy.date_range')], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - - -
    - {{ Form::label('user_number', 'Search By User') }} -
    - -
    -
    - -
    -

    - {{ Form::button(__('pharmacy.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    -
    - {{ Form::close() }} -
    -
    - -
    - @include('flash::message') - - @if($search_text != "") -

    -
    - @endif - -
    - - - - - - - - - - - - - - - @if(count($cancellations) > 0) - @foreach($cancellations as $cancellation) - - - - - - - - - - - @endforeach - @else - - - - @endif - -
    Patient NameBilling PointOriginally Billed ByOriginally Billed AtCancelled ByCancelled AtCancellation ReasonReceipt/Invoice Number
    {{ get_full_name($cancellation->patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($cancellation->patient_id, 'id', 'number', 'patients') }}){{ $tags[$cancellation->billing_point] ?? 'N/A' }}{{ get_full_name($cancellation->originally_billed_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date_time($cancellation->originally_billed_on) }}{{ get_full_name($cancellation->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date_time($cancellation->created_at) }}{{ $cancellation->cancellation_reason }} - ({{ $cancellation->billing_type == 1 ? 'Receipt' : 'Invoice' }}){{ $cancellation->receipt_number }}
    No results available
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/credit_limit_modal.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/credit_limit_modal.blade.php deleted file mode 100755 index 84d27d3c..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/credit_limit_modal.blade.php +++ /dev/null @@ -1,39 +0,0 @@ -@if(session()->has('credit_limit_message')) - - @php - session()->forget('credit_limit_message'); - @endphp -@endif - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/customer_episode_statement.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/customer_episode_statement.blade.php deleted file mode 100755 index e964d84a..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/customer_episode_statement.blade.php +++ /dev/null @@ -1,885 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Customer Statement - Stre@mline') }} - - - - - - - - - -@php - $total_to_pay = 0; - $total_paid_by_patient = 0; - $total_amount_refunded = 0; - $total_left_to_pay = 0; - $price_list_id = is_patient_category_attached_to_price_list($patient_id); -@endphp - -
    - @include('layouts.header_pdf_print') - -
    - {{ __('patient_finance.customer_episode_statement_from') }} {{ streamline_date($episode->created_at) }} -
    - -
    - - - - - - - - - - - - - - - - - - -
    {{ __('patient_finance.patient_names') }}{!! insurance_flag($patient->id) !!}{{ __('patient_finance.patient_number') }}{{ $patient->number }}{{ __('patient_finance.price_list_category') }} - {{ __('patient_finance.default') }} -
    {{ __('patient_finance.patient_discount') }} - @if(isset($discount->discount)) - {{ $discount->discount }} % - @php $discount_percentage = $discount->discount; @endphp - @else - 0 % - @php $discount_percentage = 0; @endphp - @endif - {{ __('patient_finance.patient_category') }}{{ isset($categories[$patient->category_id]) ? $categories[$patient->category_id] : "N/A" }}{{ __('patient_finance.pay_later') }} - @if(isset($discount->pay_later) && $discount->pay_later == 1) - {{ __('patient_finance.yes') }} - @php $pay_later = 1; @endphp - {{ Form::hidden('patient_category_id', $patient->category_id) }} - @else - {{ __('patient_finance.no') }} - @php $pay_later = 0; @endphp - @endif -
    - -
    - -
    - @if(count($paid_services) > 0 || count($used_services) > 0 || (!$is_doc_consul_fee_paid && $doc_consultation_id) || count($invoiced_services) > 0) - @php - $total_services_cost = 0; - @endphp -
    -

    {{ __('patient_finance.consultation_and_services') }}

    - - - - - - - - - - @php - // for invoices that involve copayment and then create double records, first check - // if they exist in the invoice table with the same time and exclude them from the paid ones - $already_invoiced_services = []; - $already_invoiced_services_times = []; - $already_invoiced_services_episode_id = []; - @endphp - - @if(count($invoiced_services) > 0) - - - - @foreach($invoiced_services as $invoice) - - - - @php - $already_invoiced_services[] = $invoice->items_ids; - $already_invoiced_services_times[] = $invoice->created_at; - $already_invoiced_services_episode_id[] = $invoice->episode_id; - $items_ids = explode(",", $invoice->items_ids); - $items_amounts = explode(",", $invoice->items_amounts); - $total_paid_by_patient += $invoice->patient_amount; - $total_to_pay += array_sum($items_amounts); - $total_services_cost += array_sum($items_amounts); - @endphp - @for($i=0; $i < count($items_ids); $i++) - @if(isset($items_ids[$i]) && $items_ids[$i] != 0) - - - - - @endif - @endfor - @endforeach - @endif - - @if(count($paid_services) > 0) - - - - @foreach($paid_services as $paid_service) - @php - if (in_array($paid_service->items_ids, $already_invoiced_services)) { - // get the key to search the timestamps - $key = array_search($paid_service->items_ids, $already_invoiced_services); - - if($already_invoiced_services_times[$key] == $paid_service->created_at && $already_invoiced_services_episode_id[$key] == $paid_service->episode_id) { - // this means that the payments are the same so just get the patient amounts - $total_paid_by_patient += $paid_service->patient_amount_paid; - $total_amount_refunded += $paid_service->refund_amount; - continue; - } - } - @endphp - - - - @php - $items_ids = explode(",", $paid_service->items_ids); - $items_amounts = explode(",", $paid_service->items_amounts); - $total_paid_by_patient += $paid_service->patient_amount_paid; - $total_amount_refunded += $paid_service->refund_amount; - $total_to_pay += array_sum($items_amounts); - $total_services_cost += array_sum($items_amounts); - @endphp - @for($i=0; $i < count($items_ids); $i++) - @if(isset($items_ids[$i]) && $items_ids[$i] != 0) - - - - - @endif - @endfor - @endforeach - @endif - - @if(count($used_services) > 0 || (!$is_doc_consul_fee_paid && $doc_consultation_id)) - - - - @foreach($used_services as $used_service) - @php - $items_ids = explode(",", $used_service->service_id); - $items_quantities = explode(",", $used_service->quantity); - @endphp - @for($i = 0; $i < count($items_ids); $i++) - @php - if ($price_list_id) { - $service_cost = get_price_list_category_price($price_list_id, 6, $items_ids[$i]); - } else { - $service_cost = (int)get_name($items_ids[$i], 'id', 'non_insured_price', 'services'); - } - - $total_to_pay += ($service_cost * $items_quantities[$i]); - $total_services_cost += ($service_cost * $items_quantities[$i]); - @endphp - - - - - @endfor - @endforeach - - @if(!$is_doc_consul_fee_paid && $doc_consultation_id) - @php - if ($price_list_id) { - $service_cost = get_price_list_category_price($price_list_id, 6, $doc_consultation_id); - } else { - $service_cost = (int)get_name($doc_consultation_id, 'id', 'non_insured_price', 'services'); - } - - $total_to_pay += is_numeric($service_cost) ? $service_cost : 0; - $total_services_cost += is_numeric($service_cost) ? $service_cost : 0; - @endphp - - - - - @endif - @endif - - - - - - -
    {{ __('patient_finance.service') }}{{ __('patient_finance.amount') }}
    {{ __('patient_finance.invoiced_services') }}
    {{ __('patient_finance.invoiced_on') }} {{ streamline_date_time($invoice->created_at) }}
    {{ get_name($items_ids[$i], 'id', 'name', 'services') }}{{ ugandan_shillings($items_amounts[$i]) }}
    {{ __('patient_finance.paid_services') }}
    {{ __('patient_finance.billed_on') }} {{ streamline_date_time($paid_service->created_at) }}
    {{ get_name($items_ids[$i], 'id', 'name', 'services') }}{{ ugandan_shillings($items_amounts[$i]) }}
    {{ __('patient_finance.unpaid_services') }}
    {{ get_name($items_ids[$i], 'id', 'name', 'services') }} (Ordered on {{ streamline_date_time($used_service->created_at) }}){{ ugandan_shillings(($service_cost * $items_quantities[$i])) }}
    {{ get_name($doc_consultation_id, 'id', 'name', 'services') }}{{ ugandan_shillings($service_cost) }}
    {{ __('patient_finance.total') }}{{ ugandan_shillings($total_services_cost) }}
    -
    - @endif - - @if(count($paid_sundries) > 0 || count($ordered_sundries) > 0 || count($invoiced_sundries) > 0) - @php $total_sundries_cost = 0; @endphp -
    -

    {{ __('patient_finance.sundries') }}

    - - - - - - - - - - - @php - // for invoices that involve copayment and then create double records, first check - // if they exist in the invoice table with the same time and exclude them from the paid ones - $already_invoiced_sundries = []; - $already_invoiced_sundries_times = []; - $already_invoiced_sundries_episode_id = []; - @endphp - - @if(count($invoiced_sundries) > 0) - - - - @foreach($invoiced_sundries as $invoice) - - - - @php - $already_invoiced_sundries[] = $invoice->items_ids; - $already_invoiced_sundries_times[] = $invoice->created_at; - $already_invoiced_sundries_episode_id[] = $invoice->episode_id; - $items_ids = explode(",", $invoice->items_ids); - $items_amounts = explode(",", $invoice->items_amounts); - $total_paid_by_patient += $invoice->patient_amount; - $total_to_pay += array_sum($items_amounts); - $total_sundries_cost += array_sum($items_amounts); - @endphp - @for($i=0; $i < count($items_ids); $i++) - @if(isset($items_ids[$i]) && $items_ids[$i] != 0) - - - - - @endif - @endfor - @endforeach - @endif - - @if(count($paid_sundries) > 0) - - - - @foreach($paid_sundries as $paid_sundry) - @php - if (in_array($paid_sundry->sundry_items, $already_invoiced_sundries)) { - // get the key to search the timestamps - $key = array_search($paid_sundry->sundry_items, $already_invoiced_sundries); - - if($already_invoiced_sundries_times[$key] == $paid_sundry->created_at && $already_invoiced_sundries_episode_id[$key] == $paid_sundry->episode_id) { - // this means that the payments are the same so just get the patient amounts - $total_paid_by_patient += $paid_sundry->patient_amount_paid; - $total_amount_refunded += $paid_sundry->refund_amount; - continue; - } - } - @endphp - - - - @php - $items_ids = explode(",", $paid_sundry->sundry_items); - $items_quantity = explode(",", $paid_sundry->sundry_quantity); - $items_amounts = explode(",", $paid_sundry->sundry_subtotals); - $total_paid_by_patient += $paid_sundry->patient_amount_paid; - $total_amount_refunded += $paid_sundry->refund_amount; - $total_to_pay += array_sum($items_amounts); - $total_sundries_cost += array_sum($items_amounts); - @endphp - @for($i=0; $i < count($items_ids); $i++) - - - - - - @endfor - @endforeach - @endif - - @if(count($ordered_sundries) > 0) - - - - @foreach($ordered_sundries as $ordered_sundry) - @php - $sundries_ids = explode(',', $ordered_sundry->sundries_id); - $sundries_quantities = explode(',', $ordered_sundry->quantity); - @endphp - @for($i = 0; $i < count($sundries_ids); $i++) - @php - if ($price_list_id) { - $sundry_cost = get_price_list_category_price($price_list_id, 5, $sundries_ids[$i]) * $sundries_quantities[$i]; - } else { - $sundry_cost = get_name($sundries_ids[$i], 'id', 'non_insured_price', 'sundries') * $sundries_quantities[$i]; - } - - $total_to_pay += $sundry_cost; - $total_sundries_cost += $sundry_cost; - @endphp - - - - - - @endfor - @endforeach - @endif - - - - - -
    {{ __('patient_finance.sundry_name') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.amount') }}
    {{ __('patient_finance.invoiced_sundries') }}
    {{ __('patient_finance.invoiced_on') }} {{ streamline_date_time($invoice->created_at) }}
    {{ get_name($items_ids[$i], 'id', 'name', 'sundries') }}{{ ugandan_shillings($items_amounts[$i]) }}
    {{ __('patient_finance.paid_sundries') }}
    {{ __('patient_finance.billed_on') }} {{ streamline_date_time($paid_sundry->created_at) }}
    {{ get_name($items_ids[$i], 'id', 'name', 'sundries') }}{{ $items_quantity[$i] }}{{ ugandan_shillings($items_amounts[$i]) }}
    {{ __('patient_finance.unpaid_sundries') }}
    {{ get_name($sundries_ids[$i], 'id', 'name', 'sundries') }} (Ordered on {{ streamline_date_time($ordered_sundry->created_at) }}){{ $sundries_quantities[$i] }}{{ ugandan_shillings($sundry_cost) }}
    {{ __('patient_finance.total') }}{{ ugandan_shillings($total_sundries_cost) }}
    -
    - @endif -
    - -
    - -
    - @if(count($paid_investigations) > 0 || count($ordered_investigations) > 0 || count($invoiced_investigations) > 0) - @php $total_investigations_cost = 0; @endphp -
    -

    {{ __('patient_finance.investigations') }}

    - - - - - - - - - - @php - // for invoices that involve copayment and then create double records, first check - // if they exist in the invoice table with the same time and exclude them from the paid ones - $already_invoiced_investigations = []; - $already_invoiced_investigations_times = []; - $already_invoiced_investigations_episode_id = []; - @endphp - - @if(count($invoiced_investigations) > 0) - - - - @foreach($invoiced_investigations as $invoice) - - - - @php - $already_invoiced_investigations[] = $invoice->items_ids; - $already_invoiced_investigations_times[] = $invoice->created_at; - $already_invoiced_investigations_episode_id[] = $invoice->episode_id; - $items_ids = explode(",", $invoice->items_ids); - $items_amounts = explode(",", $invoice->items_amounts); - $total_paid_by_patient += $invoice->patient_amount; - $total_to_pay += array_sum($items_amounts); - $total_investigations_cost += array_sum($items_amounts); - @endphp - @for($i=0; $i < count($items_ids); $i++) - @if(isset($items_ids[$i]) && $items_ids[$i] != 0) - - - - - @endif - @endfor - @endforeach - @endif - - @if(count($paid_investigations) > 0) - - - - @foreach($paid_investigations as $paid_investigation) - @php - if (in_array($paid_investigation->investigation_items, $already_invoiced_investigations)) { - // get the key to search the timestamps - $key = array_search($paid_investigation->investigation_items, $already_invoiced_investigations); - - if($already_invoiced_investigations_times[$key] == $paid_investigation->created_at && $already_invoiced_investigations_episode_id[$key] == $paid_investigation->episode_id) { - // this means that the payments are the same so just get the patient amounts - $total_paid_by_patient += $paid_investigation->patient_amount_paid; - $total_amount_refunded += $paid_investigation->refund_amount; - continue; - } - } - @endphp - - - - @php - $items_ids = explode(",", $paid_investigation->investigation_items); - $items_amounts = explode(",", $paid_investigation->investigation_amounts); - $total_paid_by_patient += $paid_investigation->patient_amount_paid; - $total_amount_refunded += $paid_investigation->refund_amount; - $total_to_pay += array_sum($items_amounts); - $total_investigations_cost += array_sum($items_amounts); - @endphp - @for($i=0; $i < count($items_ids); $i++) - @if(isset($items_ids[$i]) && $items_ids[$i] != 0) - - - - - @endif - @endfor - @endforeach - @endif - - @if(count($ordered_investigations) > 0) - - - - @foreach($ordered_investigations as $ordered_investigation) - - - - @php - $items_ids = explode(",", $ordered_investigation->investigation_id); - @endphp - @for($i=0; $i < count($items_ids); $i++) - @php - if ($price_list_id) { - $investigation_cost = get_price_list_category_price($price_list_id, 2, $items_ids[$i]); - } else { - $investigation_cost = get_name($items_ids[$i], 'id', 'non_insured_price', 'investigations'); - } - - $total_to_pay += $investigation_cost; - $total_investigations_cost += $investigation_cost; - @endphp - - - - - @endfor - @endforeach - @endif - - - - - -
    {{ __('patient_finance.investigation_name') }}{{ __('patient_finance.amount') }}
    {{ __('patient_finance.invoiced_investigations') }}
    {{ __('patient_finance.invoiced_on') }} {{ streamline_date_time($invoice->created_at) }}
    {{ get_name($items_ids[$i], 'id', 'name', 'investigations') }}{{ ugandan_shillings($items_amounts[$i]) }}
    {{ __('patient_finance.paid_investigations') }}
    {{ __('patient_finance.billed_on') }} {{ streamline_date_time($paid_investigation->created_at) }}
    {{ get_name($items_ids[$i], 'id', 'name', 'investigations') }}{{ ugandan_shillings($items_amounts[$i]) }}
    {{ __('patient_finance.unpaid_investigations') }}
    {{ __('patient_finance.ordered_on') }} {{ streamline_date_time($ordered_investigation->created_at) }}
    {{ get_name($items_ids[$i], 'id', 'name', 'investigations') }}{{ ugandan_shillings($investigation_cost) }}
    {{ __('patient_finance.total') }}{{ ugandan_shillings($total_investigations_cost) }}
    -
    - @endif - - @if(count($paid_treatments) > 0 || count($treatments) > 0 || count($invoiced_treatments) > 0) - @php $total_treatment_cost = 0; @endphp -
    -

    {{ __('patient_finance.drugs') }}

    - - - - - - - - - - - @php - // for invoices that involve copayment and then create double records, first check - // if they exist in the invoice table with the same time and exclude them from the paid ones - $already_invoiced_treatments = []; - $already_invoiced_treatments_times = []; - $already_invoiced_treatments_episode_id = []; - @endphp - - @if(count($invoiced_treatments) > 0) - - - - @foreach($invoiced_treatments as $invoice) - - - - @php - $already_invoiced_treatments[] = $invoice->items_ids; - $already_invoiced_treatments_times[] = $invoice->created_at; - $already_invoiced_treatments_episode_id[] = $invoice->episode_id; - $items_ids = explode(",", $invoice->items_ids); - $items_amounts = explode(",", $invoice->items_amounts); - $total_paid_by_patient += $invoice->patient_amount; - $total_to_pay += array_sum($items_amounts); - $total_treatment_cost += array_sum($items_amounts); - @endphp - @for($i=0; $i < count($items_ids); $i++) - @if(isset($items_ids[$i]) && $items_ids[$i] != 0) - - - - - @endif - @endfor - @endforeach - @endif - - @if(count($paid_treatments) > 0) - - - - @foreach($paid_treatments as $paid_treatment) - @php - if (in_array($paid_treatment->treatment_items, $already_invoiced_treatments)) { - // get the key to search the timestamps - $key = array_search($paid_treatment->treatment_items, $already_invoiced_treatments); - - if($already_invoiced_treatments_times[$key] == $paid_treatment->created_at && $already_invoiced_treatments_episode_id[$key] == $paid_treatment->episode_id) { - // this means that the payments are the same so just get the patient amounts - $total_paid_by_patient += $paid_treatment->patient_amount_paid; - $total_amount_refunded += $paid_treatment->refund_amount; - continue; - } - } - @endphp - - - - @php - $items_ids = explode(",", $paid_treatment->treatment_items); - $items_quantity = explode(",", $paid_treatment->treatment_quantities); - $items_amounts = explode(",", $paid_treatment->treatment_subtotals); - $total_paid_by_patient += $paid_treatment->patient_amount_paid; - $total_amount_refunded += $paid_treatment->refund_amount; - $total_to_pay += array_sum($items_amounts); - $total_treatment_cost += array_sum($items_amounts); - @endphp - @for($i=0; $i < count($items_ids); $i++) - - - - - - @endfor - @endforeach - @endif - - @if(count($treatments) > 0) - - - - @foreach($treatments as $treatment) - - - - @php - $items_ids = explode(",", $treatment->drugs); - $items_quantities = explode(",", $treatment->quantities_dispensed); - $purchased_elsewhere = is_null($treatment->purchased_elsewhere) ? [] : explode(",", $treatment->purchased_elsewhere); - @endphp - @for($i=0; $i < count($items_ids); $i++) - @php - if ($price_list_id) { - $drug_cost = get_price_list_category_price($price_list_id, 3, $items_ids[$i]) * $items_quantities[$i]; - } else { - $drug_cost = get_name($items_ids[$i], 'id', 'non_insured_price', 'drugs') * $items_quantities[$i]; - } - - if(!(count($purchased_elsewhere) > 0 && isset($purchased_elsewhere[$i]) && $purchased_elsewhere[$i] == 1)) { - $total_to_pay += $drug_cost; - $total_treatment_cost += $drug_cost; - } - @endphp - - - - @if(!(count($purchased_elsewhere) > 0 && isset($purchased_elsewhere[$i]) && $purchased_elsewhere[$i] == 1)) - - @else - - @endif - - @endfor - @endforeach - @endif - - - - - -
    {{ __('patient_finance.drug_name') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.amount') }}
    {{ __('patient_finance.invoiced_drugs') }}
    {{ __('patient_finance.invoiced_on') }} {{ streamline_date_time($invoice->created_at) }}
    {{ get_name($items_ids[$i], 'id', 'name', 'drugs') }}{{ ugandan_shillings($items_amounts[$i]) }}
    {{ __('patient_finance.paid_drugs') }}
    {{ __('patient_finance.billed_on') }} {{ streamline_date_time($paid_treatment->created_at) }}
    {{ get_name($items_ids[$i], 'id', 'name', 'drugs') }}{{ $items_quantity[$i] }}{{ ugandan_shillings($items_amounts[$i]) }}
    {{ __('patient_finance.unpaid_drugs') }}
    {{ __('patient_finance.ordered_on') }} {{ streamline_date_time($treatment->created_at) }}
    {{ get_name($items_ids[$i], 'id', 'name', 'drugs') }}{{ $items_quantities[$i] }}{{ ugandan_shillings($drug_cost) }}{{ __('patient_finance.purchased_from_else_where') }}
    {{ __('patient_finance.total') }}{{ ugandan_shillings($total_treatment_cost) }}
    -
    - @endif -
    - -
    - -
    - @if(count($paid_procedures) > 0 || count($ordered_procedures) > 0 || count($invoiced_procedures) > 0) - @php $total_procedures_cost = 0; @endphp -
    -

    {{ __('patient_finance.procedures') }}

    - - - - - - - - - - @php - // for invoices that involve copayment and then create double records, first check - // if they exist in the invoice table with the same time and exclude them from the paid ones - $already_invoiced_procedures = []; - $already_invoiced_procedures_times = []; - $already_invoiced_procedures_episode_id = []; - @endphp - @if(count($invoiced_procedures) > 0) - - - - @foreach($invoiced_procedures as $invoice) - - - - @php - $already_invoiced_procedures[] = $invoice->items_ids; - $already_invoiced_procedures_times[] = $invoice->created_at; - $already_invoiced_procedures_episode_id[] = $invoice->episode_id; - $items_ids = explode(",", $invoice->items_ids); - $items_amounts = explode(",", $invoice->items_amounts); - $total_paid_by_patient += $invoice->patient_amount; - $total_to_pay += array_sum($items_amounts); - $total_procedures_cost += array_sum($items_amounts); - @endphp - @for($i=0; $i < count($items_ids); $i++) - @if(isset($items_ids[$i]) && $items_ids[$i] != 0) - - - - - @endif - @endfor - @endforeach - @endif - - @if(count($paid_procedures) > 0) - - - - @foreach($paid_procedures as $paid_procedure) - @php - if (in_array($paid_procedure->procedure_items, $already_invoiced_procedures)) { - // get the key to search the timestamps - $key = array_search($paid_procedure->procedure_items, $already_invoiced_procedures); - - if($already_invoiced_procedures_times[$key] == $paid_procedure->created_at && $already_invoiced_procedures_episode_id[$key] == $paid_procedure->episode_id) { - // this means that the payments are the same so just get the patient amounts - $total_paid_by_patient += $paid_procedure->patient_amount_paid; - $total_amount_refunded += $paid_procedure->refund_amount; - continue; - } - } - @endphp - - - - @php - $items_ids = explode(",", $paid_procedure->procedure_items); - $items_amounts = explode(",", $paid_procedure->procedure_amounts); - $total_paid_by_patient += $paid_procedure->patient_amount_paid; - $total_amount_refunded += $paid_procedure->refund_amount; - $total_to_pay += array_sum($items_amounts); - $total_procedures_cost += array_sum($items_amounts); - @endphp - @for($i=0; $i < count($items_ids); $i++) - @if(isset($items_ids[$i]) && $items_ids[$i] != 0) - - - - - @endif - @endfor - @endforeach - @endif - - @if(count($ordered_procedures) > 0) - - - - @foreach($ordered_procedures as $ordered_procedure) - @php - if ($price_list_id) { - $procedure_cost = get_price_list_category_price($price_list_id, 4, $ordered_procedure->procedure_id); - } else { - $procedure_cost = get_name($ordered_procedure->procedure_id, 'id', 'non_insured_price', 'procedures'); - } - - $total_to_pay += $procedure_cost; - $total_procedures_cost += $procedure_cost; - @endphp - - - - - @endforeach - @endif - - - - - -
    {{ __('patient_finance.procedure_name') }}{{ __('patient_finance.amount') }}
    {{ __('patient_finance.invoiced_procedures') }}
    {{ __('patient_finance.invoiced_on') }} {{ streamline_date_time($invoice->created_at) }}
    {{ get_name($items_ids[$i], 'id', 'name', 'procedures') }}{{ ugandan_shillings($items_amounts[$i]) }}
    {{ __('patient_finance.paid_procedures') }}
    {{ __('patient_finance.billed_on') }} {{ streamline_date_time($paid_procedure->created_at) }}
    {{ get_name($items_ids[$i], 'id', 'name', 'procedures') }}{{ ugandan_shillings($items_amounts[$i]) }}
    {{ __('patient_finance.unpaid_procedures') }}
    {{ get_name($ordered_procedure->procedure_id, 'id', 'name', 'procedures') }} (Ordered on {{ streamline_date_time($ordered_procedure->created_at) }}){{ ugandan_shillings($procedure_cost) }}
    {{ __('patient_finance.total') }}{{ ugandan_shillings($total_procedures_cost) }}
    -
    - @endif - - @if(count($inpatient_deposits) > 0) - @php $total_inpatient_deposits = 0; @endphp -
    -

    {{ __('patient_finance.inpatient_deposits') }}

    - - - - - - - - - - @foreach($inpatient_deposits as $deposit) - @php - $total_paid_by_patient += $deposit->patient_amount_paid; - //$total_to_pay += $deposit->patient_amount_paid; - $total_inpatient_deposits += $deposit->patient_amount_paid; - @endphp - - - - - @endforeach - - - - - -
    {{ __('patient_finance.received_on') }}{{ __('patient_finance.patient_amount') }}
    {{ streamline_date_time($deposit->created_at) }}{{ ugandan_shillings($deposit->patient_amount_paid) }}
    {{ __('patient_finance.total') }}{{ ugandan_shillings($total_inpatient_deposits) }}
    -
    - @endif -
    - -
    - -
    - @if($inpatient_to_pay > 0) -
    -

    {{ __('patient_finance.inpatient_bills') }}

    - - - - - - - - - - - - @php $total_to_pay += $inpatient_to_pay; @endphp - - - -
    {{ __('patient_finance.total') }}{{ __('patient_finance.patient_amount') }}
    {{ ugandan_shillings($inpatient_to_pay) }}
    -
    - @endif - - @if(count($patient_debts) > 0) -
    -

    {{ __('patient_finance.patient_debts') }}

    - - - - - - - - - - - - @foreach($patient_debts as $debt) - - - - - - - @endforeach - -
    {{ __('patient_finance.incurred_from') }}{{ __('patient_finance.amount_to_pay') }}{{ __('patient_finance.amount_paid') }}{{ __('patient_finance.balance') }}
    {{ get_name($debt->tag_id, 'id', 'name', 'finance_point_tags') }} ({{ streamline_date_time($debt->created_at) }}){{ ugandan_shillings($debt->balance) }}{{ ugandan_shillings($debt->amount_paid_off) }} - @if(!is_null($debt->balance_remaining)) - @php $total_paid_by_patient += $debt->amount_paid_off; @endphp - {{ ugandan_shillings($debt->balance_remaining) }} - @else - {{ ugandan_shillings($debt->balance) }} - @endif -
    -
    - @endif -
    - -
    -
    - {{ __('patient_finance.total_to_pay') }} -
    - {{ ugandan_shillings($total_to_pay) }} -
    -
    - {{ __('patient_finance.total_paid_by_the_patient') }} -
    - {{ ugandan_shillings($total_paid_by_patient) }} -
    -
    - {{ __('patient_finance.total_amount_refunded') }} -
    - {{ ugandan_shillings($total_amount_refunded) }} -
    -
    - {{ __('patient_finance.total_left_to_pay') }} -
    - @php - $total_left_to_pay = $total_to_pay - ($total_paid_by_patient + $total_amount_refunded); - @endphp - {{ ugandan_shillings($total_left_to_pay) }} -
    -
    - - -
    - - - \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/customer_statement.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/customer_statement.blade.php deleted file mode 100755 index b0ba2796..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/customer_statement.blade.php +++ /dev/null @@ -1,889 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Customer Statement - Stre@mline') }} - - - - - - - - - -@php - $total_to_pay = 0; - $total_paid_by_patient = 0; - $total_amount_refunded = 0; - $total_left_to_pay = 0; - $price_list_id = is_patient_category_attached_to_price_list($patient_id); -@endphp - -
    - @include('layouts.header_pdf_print') -
    - Customer Statement -
    - -
    - - - - - - - - - - - - - - - - - - -
    {{ __('patient_finance.patient_names') }}{!! insurance_flag($patient->id) !!}{{ __('patient_finance.patient_number') }}{{ $patient->number }}{{ __('patient_finance.price_list_category') }} - {{ __('patient_finance.default') }} -
    {{ __('patient_finance.patient_discount') }} - @if(isset($discount->discount)) - {{ $discount->discount }} % - @php $discount_percentage = $discount->discount; @endphp - @else - 0 % - @php $discount_percentage = 0; @endphp - @endif - {{ __('patient_finance.patient_category') }}{{ isset($categories[$patient->category_id]) ? $categories[$patient->category_id] : "N/A" }}{{ __('patient_finance.pay_later') }} - @if(isset($discount->pay_later) && $discount->pay_later == 1) - {{ __('patient_finance.yes') }} - @php $pay_later = 1; @endphp - {{ Form::hidden('patient_category_id', $patient->category_id) }} - @else - {{ __('patient_finance.no') }} - @php $pay_later = 0; @endphp - @endif -
    - -
    - -
    - @if(count($paid_services) > 0 || count($used_services) > 0 || (count($doc_consultation_id) > 0 && !is_null($doc_consultation_id[0])) || count($invoiced_services) > 0) - @php - $total_services_cost = 0; - @endphp -
    -

    {{ __('patient_finance.consultation_and_services') }}

    - - - - - - - - - - @php - // for invoices that involve copayment and then create double records, first check - // if they exist in the invoice table with the same time and exclude them from the paid ones - $already_invoiced_services = []; - $already_invoiced_services_times = []; - $already_invoiced_services_episode_id = []; - @endphp - - @if(count($invoiced_services) > 0) - - - - @foreach($invoiced_services as $invoice) - - - - @php - $items_ids = explode(",", $invoice->items_ids); - $items_amounts = explode(",", $invoice->items_amounts); - $total_paid_by_patient += $invoice->patient_amount; - $total_to_pay += array_sum($items_amounts); - $total_services_cost += array_sum($items_amounts); - $already_invoiced_services[] = $invoice->items_ids; - $already_invoiced_services_times[] = $invoice->created_at; - $already_invoiced_services_episode_id[] = $invoice->episode_id; - @endphp - @for($i=0; $i < count($items_ids); $i++) - @if(isset($items_ids[$i]) && $items_ids[$i] != 0) - - - - - @endif - @endfor - @endforeach - @endif - - @if(count($paid_services) > 0) - - - - @foreach($paid_services as $paid_service) - @php - if (in_array($paid_service->items_ids, $already_invoiced_services)) { - // get the key to search the timestamps - $key = array_search($paid_service->items_ids, $already_invoiced_services); - - if($already_invoiced_services_times[$key] == $paid_service->created_at && $already_invoiced_services_episode_id[$key] == $paid_service->episode_id) { - // this means that the payments are the same so just get the patient amounts - $total_paid_by_patient += $paid_service->patient_amount_paid; - $total_amount_refunded += $paid_service->refund_amount; - continue; - } - } - @endphp - - - - @php - $items_ids = explode(",", $paid_service->items_ids); - $items_amounts = explode(",", $paid_service->items_amounts); - $total_paid_by_patient += $paid_service->patient_amount_paid; - $total_amount_refunded += $paid_service->refund_amount; - $total_to_pay += array_sum($items_amounts); - $total_services_cost += array_sum($items_amounts); - @endphp - @for($i=0; $i < count($items_ids); $i++) - @if(isset($items_ids[$i]) && $items_ids[$i] != 0) - - - - - @endif - @endfor - @endforeach - @endif - - @if(count($used_services) > 0 || (count($doc_consultation_id) > 0 && !is_null($doc_consultation_id[0]))) - - - - @foreach($used_services as $used_service) - @php - $items_ids = explode(",", $used_service->service_id); - $items_quantities = explode(",", $used_service->quantity); - @endphp - @for($i = 0; $i < count($items_ids); $i++) - @php - if ($price_list_id) { - $service_cost = get_price_list_category_price($price_list_id, 6, $items_ids[$i]); - } else { - $service_cost = (int)get_name($items_ids[$i], 'id', 'non_insured_price', 'services'); - } - - $total_to_pay += ($service_cost * $items_quantities[$i]); - $total_services_cost += ($service_cost * $items_quantities[$i]); - @endphp - - - - - @endfor - @endforeach - - @if(count($doc_consultation_id) > 0 && !is_null($doc_consultation_id[0])) - @foreach($doc_consultation_id as $doc_consul_id) - @php - if ($price_list_id) { - $service_cost = get_price_list_category_price($price_list_id, 6, $doc_consul_id); - } else { - $service_cost = (int)get_name($doc_consul_id, 'id', 'non_insured_price', 'services'); - } - - $total_to_pay += is_numeric($service_cost) ? $service_cost : 0; - $total_services_cost += is_numeric($service_cost) ? $service_cost : 0; - @endphp - - - - - @endforeach - @endif - @endif - - - - - - -
    {{ __('patient_finance.service') }}{{ __('patient_finance.amount') }}
    {{ __('patient_finance.invoiced_services') }}
    {{ __('patient_finance.invoiced_on') }} {{ streamline_date_time($invoice->created_at) }}
    {{ get_name($items_ids[$i], 'id', 'name', 'services') }}{{ ugandan_shillings($items_amounts[$i]) }}
    {{ __('patient_finance.paid_services') }}
    {{ __('patient_finance.billed_on') }} {{ streamline_date_time($paid_service->created_at) }}
    {{ get_name($items_ids[$i], 'id', 'name', 'services') }}{{ ugandan_shillings($items_amounts[$i]) }}
    {{ __('patient_finance.unpaid_services') }}
    {{ get_name($items_ids[$i], 'id', 'name', 'services') }} (Ordered on {{ streamline_date_time($used_service->created_at) }}){{ ugandan_shillings(($service_cost * $items_quantities[$i])) }}
    {{ get_name($doc_consul_id, 'id', 'name', 'services') }}{{ ugandan_shillings($service_cost) }}
    Total{{ ugandan_shillings($total_services_cost) }}
    -
    - @endif - - @if(count($paid_sundries) > 0 || count($ordered_sundries) > 0 || count($invoiced_sundries) > 0) - @php $total_sundries_cost = 0; @endphp -
    -

    Sundries

    - - - - - - - - - - - @php - // for invoices that involve copayment and then create double records, first check - // if they exist in the invoice table with the same time and exclude them from the paid ones - $already_invoiced_sundries = []; - $already_invoiced_sundries_times = []; - $already_invoiced_sundries_episode_id = []; - @endphp - - @if(count($invoiced_sundries) > 0) - - - - @foreach($invoiced_sundries as $invoice) - - - - @php - $already_invoiced_sundries[] = $invoice->items_ids; - $already_invoiced_sundries_times[] = $invoice->created_at; - $already_invoiced_sundries_episode_id[] = $invoice->episode_id; - $items_ids = explode(",", $invoice->items_ids); - $items_amounts = explode(",", $invoice->items_amounts); - $total_paid_by_patient += $invoice->patient_amount; - $total_to_pay += array_sum($items_amounts); - $total_sundries_cost += array_sum($items_amounts); - @endphp - @for($i=0; $i < count($items_ids); $i++) - @if(isset($items_ids[$i]) && $items_ids[$i] != 0) - - - - - @endif - @endfor - @endforeach - @endif - - @if(count($paid_sundries) > 0) - - - - @foreach($paid_sundries as $paid_sundry) - @php - if (in_array($paid_sundry->sundry_items, $already_invoiced_sundries)) { - // get the key to search the timestamps - $key = array_search($paid_sundry->sundry_items, $already_invoiced_sundries); - - if($already_invoiced_sundries_times[$key] == $paid_sundry->created_at && $already_invoiced_sundries_episode_id[$key] == $paid_sundry->episode_id) { - // this means that the payments are the same so just get the patient amounts - $total_paid_by_patient += $paid_sundry->patient_amount_paid; - $total_amount_refunded += $paid_sundry->refund_amount; - continue; - } - } - @endphp - - - - @php - $items_ids = explode(",", $paid_sundry->sundry_items); - $items_quantity = explode(",", $paid_sundry->sundry_quantity); - $items_amounts = explode(",", $paid_sundry->sundry_subtotals); - $total_paid_by_patient += $paid_sundry->patient_amount_paid; - $total_amount_refunded += $paid_sundry->refund_amount; - $total_to_pay += array_sum($items_amounts); - $total_sundries_cost += array_sum($items_amounts); - @endphp - @for($i=0; $i < count($items_ids); $i++) - - - - - - @endfor - @endforeach - @endif - - @if(count($ordered_sundries) > 0) - - - - @foreach($ordered_sundries as $ordered_sundry) - @php - $sundries_ids = explode(',', $ordered_sundry->sundries_id); - $sundries_quantities = explode(',', $ordered_sundry->quantity); - @endphp - @for($i = 0; $i < count($sundries_ids); $i++) - @php - if ($price_list_id) { - $sundry_cost = get_price_list_category_price($price_list_id, 5, $sundries_ids[$i]) * $sundries_quantities[$i]; - } else { - $sundry_cost = get_name($sundries_ids[$i], 'id', 'non_insured_price', 'sundries') * $sundries_quantities[$i]; - } - - $total_to_pay += $sundry_cost; - $total_sundries_cost += $sundry_cost; - @endphp - - - - - - @endfor - @endforeach - @endif - - - - - -
    {{ __('patient_finance.sundry_name') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.amount') }}
    {{ __('patient_finance.invoiced_sundries') }}
    {{ __('patient_finance.invoiced_on') }} {{ streamline_date_time($invoice->created_at) }}
    {{ get_name($items_ids[$i], 'id', 'name', 'sundries') }}{{ ugandan_shillings($items_amounts[$i]) }}
    {{ __('patient_finance.paid_sundries') }}
    {{ __('patient_finance.billed_on') }} {{ streamline_date_time($paid_sundry->created_at) }}
    {{ get_name($items_ids[$i], 'id', 'name', 'sundries') }}{{ $items_quantity[$i] }}{{ ugandan_shillings($items_amounts[$i]) }}
    {{ __('patient_finance.unpaid_sundries') }}
    {{ get_name($sundries_ids[$i], 'id', 'name', 'sundries') }} (Ordered on {{ streamline_date_time($ordered_sundry->created_at) }}){{ $sundries_quantities[$i] }}{{ ugandan_shillings($sundry_cost) }}
    {{ __('patient_finance.total') }}{{ ugandan_shillings($total_sundries_cost) }}
    -
    - @endif -
    - -
    - -
    - @if(count($paid_investigations) > 0 || count($ordered_investigations) > 0 || count($invoiced_investigations) > 0) - @php $total_investigations_cost = 0; @endphp -
    -

    {{ __('patient_finance.investigations') }}

    - - - - - - - - - - @php - // for invoices that involve copayment and then create double records, first check - // if they exist in the invoice table with the same time and exclude them from the paid ones - $already_invoiced_investigations = []; - $already_invoiced_investigations_times = []; - $already_invoiced_investigations_episode_id = []; - @endphp - - @if(count($invoiced_investigations) > 0) - - - - @foreach($invoiced_investigations as $invoice) - - - - @php - $already_invoiced_investigations[] = $invoice->items_ids; - $already_invoiced_investigations_times[] = $invoice->created_at; - $already_invoiced_investigations_episode_id[] = $invoice->episode_id; - $items_ids = explode(",", $invoice->items_ids); - $items_amounts = explode(",", $invoice->items_amounts); - $total_paid_by_patient += $invoice->patient_amount; - $total_to_pay += array_sum($items_amounts); - $total_services_cost += array_sum($items_amounts); - @endphp - @for($i=0; $i < count($items_ids); $i++) - @if(isset($items_ids[$i]) && $items_ids[$i] != 0) - - - - - @endif - @endfor - @endforeach - @endif - - @if(count($paid_investigations) > 0) - - - - @foreach($paid_investigations as $paid_investigation) - @php - if (in_array($paid_investigation->investigation_items, $already_invoiced_investigations)) { - // get the key to search the timestamps - $key = array_search($paid_investigation->investigation_items, $already_invoiced_investigations); - - if($already_invoiced_investigations_times[$key] == $paid_investigation->created_at && $already_invoiced_investigations_episode_id[$key] == $paid_investigation->episode_id) { - // this means that the payments are the same so just get the patient amounts - $total_paid_by_patient += $paid_investigation->patient_amount_paid; - $total_amount_refunded += $paid_investigation->refund_amount; - continue; - } - } - @endphp - - - - @php - $items_ids = explode(",", $paid_investigation->investigation_items); - $items_amounts = explode(",", $paid_investigation->investigation_amounts); - $total_paid_by_patient += $paid_investigation->patient_amount_paid; - $total_amount_refunded += $paid_investigation->refund_amount; - $total_to_pay += array_sum($items_amounts); - $total_investigations_cost += array_sum($items_amounts); - @endphp - @for($i=0; $i < count($items_ids); $i++) - @if(isset($items_ids[$i]) && $items_ids[$i] != 0) - - - - - @endif - @endfor - @endforeach - @endif - - @if(count($ordered_investigations) > 0) - - - - @foreach($ordered_investigations as $ordered_investigation) - - - - @php - $items_ids = explode(",", $ordered_investigation->investigation_id); - @endphp - @for($i=0; $i < count($items_ids); $i++) - @php - if ($price_list_id) { - $investigation_cost = get_price_list_category_price($price_list_id, 2, $items_ids[$i]); - } else { - $investigation_cost = (int)get_name($items_ids[$i], 'id', 'non_insured_price', 'investigations'); - } - - $total_to_pay += $investigation_cost; - $total_investigations_cost += $investigation_cost; - @endphp - - - - - @endfor - @endforeach - @endif - - - - - -
    {{ __('patient_finance.investigation_name') }}{{ __('patient_finance.amount') }}
    {{ __('patient_finance.invoiced_investigations') }}
    {{ __('patient_finance.invoiced_on') }} {{ streamline_date_time($invoice->created_at) }}
    {{ get_name($items_ids[$i], 'id', 'name', 'investigations') }}{{ ugandan_shillings($items_amounts[$i]) }}
    {{ __('patient_finance.paid_investigations') }}
    {{ __('patient_finance.billed_on') }} {{ streamline_date_time($paid_investigation->created_at) }}
    {{ get_name($items_ids[$i], 'id', 'name', 'investigations') }}{{ ugandan_shillings($items_amounts[$i]) }}
    {{ __('patient_finance.unpaid_investigations') }}
    Ordered On {{ streamline_date_time($ordered_investigation->created_at) }}
    {{ get_name($items_ids[$i], 'id', 'name', 'investigations') }}{{ ugandan_shillings($investigation_cost) }}
    {{ __('patient_finance.total') }}{{ ugandan_shillings($total_investigations_cost) }}
    -
    - @endif - - @if(count($paid_treatments) > 0 || count($treatments) > 0 || count($invoiced_treatments) > 0) - @php $total_treatment_cost = 0; @endphp -
    -

    {{ __('patient_finance.drugs') }}

    - - - - - - - - - - - @php - // for invoices that involve copayment and then create double records, first check - // if they exist in the invoice table with the same time and exclude them from the paid ones - $already_invoiced_treatments = []; - $already_invoiced_treatments_times = []; - $already_invoiced_treatments_episode_id = []; - @endphp - - @if(count($invoiced_treatments) > 0) - - - - @foreach($invoiced_treatments as $invoice) - - - - @php - $already_invoiced_treatments[] = $invoice->items_ids; - $already_invoiced_treatments_times[] = $invoice->created_at; - $already_invoiced_treatments_episode_id[] = $invoice->episode_id; - $items_ids = explode(",", $invoice->items_ids); - $items_amounts = explode(",", $invoice->items_amounts); - $total_paid_by_patient += $invoice->patient_amount; - $total_to_pay += array_sum($items_amounts); - $total_services_cost += array_sum($items_amounts); - @endphp - @for($i=0; $i < count($items_ids); $i++) - @if(isset($items_ids[$i]) && $items_ids[$i] != 0) - - - - - @endif - @endfor - @endforeach - @endif - - @if(count($paid_treatments) > 0) - - - - @foreach($paid_treatments as $paid_treatment) - @php - if (in_array($paid_treatment->treatment_items, $already_invoiced_treatments)) { - // get the key to search the timestamps - $key = array_search($paid_treatment->treatment_items, $already_invoiced_treatments); - - if($already_invoiced_treatments_times[$key] == $paid_treatment->created_at && $already_invoiced_treatments_episode_id[$key] == $paid_treatment->episode_id) { - // this means that the payments are the same so just get the patient amounts - $total_paid_by_patient += $paid_treatment->patient_amount_paid; - $total_amount_refunded += $paid_treatment->refund_amount; - continue; - } - } - @endphp - - - - @php - $items_ids = explode(",", $paid_treatment->treatment_items); - $items_quantity = explode(",", $paid_treatment->treatment_quantities); - $items_amounts = explode(",", $paid_treatment->treatment_subtotals); - $total_paid_by_patient += $paid_treatment->patient_amount_paid; - $total_amount_refunded += $paid_treatment->refund_amount; - $total_to_pay += array_sum($items_amounts); - $total_treatment_cost += array_sum($items_amounts); - @endphp - @for($i=0; $i < count($items_ids); $i++) - - - - - - @endfor - @endforeach - @endif - - @if(count($treatments) > 0) - - - - @foreach($treatments as $treatment) - - - - @php - $items_ids = explode(",", $treatment->drugs); - $items_quantities = explode(",", $treatment->quantities_dispensed); - $purchased_elsewhere = is_null($treatment->purchased_elsewhere) ? [] : explode(",", $treatment->purchased_elsewhere); - @endphp - @for($i=0; $i < count($items_ids); $i++) - @php - if ($price_list_id) { - $drug_cost = get_price_list_category_price($price_list_id, 3, $items_ids[$i]) * $items_quantities[$i]; - } else { - $drug_cost = (int)get_name($items_ids[$i], 'id', 'non_insured_price', 'drugs') * $items_quantities[$i]; - } - - if(!(count($purchased_elsewhere) > 0 && isset($purchased_elsewhere[$i]) && $purchased_elsewhere[$i] == 1)) { - $total_to_pay += $drug_cost; - $total_treatment_cost += $drug_cost; - } - @endphp - - - - @if(!(count($purchased_elsewhere) > 0 && isset($purchased_elsewhere[$i]) && $purchased_elsewhere[$i] == 1)) - - @else - - @endif - - @endfor - @endforeach - @endif - - - - - -
    {{ __('patient_finance.drug_name') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.amount') }}
    {{ __('patient_finance.invoiced_drugs') }}
    {{ __('patient_finance.invoiced_on') }} {{ streamline_date_time($invoice->created_at) }}
    {{ get_name($items_ids[$i], 'id', 'name', 'drugs') }}{{ ugandan_shillings($items_amounts[$i]) }}
    {{ __('patient_finance.paid_drugs') }}
    {{ __('patient_finance.billed_on') }} {{ streamline_date_time($paid_treatment->created_at) }}
    {{ get_name($items_ids[$i], 'id', 'name', 'drugs') }}{{ $items_quantity[$i] }}{{ ugandan_shillings($items_amounts[$i]) }}
    {{ __('patient_finance.unpaid_drugs') }}
    {{ __('patient_finance.ordered_on') }} {{ streamline_date_time($treatment->created_at) }}
    {{ get_name($items_ids[$i], 'id', 'name', 'drugs') }}{{ $items_quantities[$i] }}{{ ugandan_shillings($drug_cost) }}{{ __('patient_finance.purchased_from_else_where') }}
    {{ __('patient_finance.total') }}{{ ugandan_shillings($total_treatment_cost) }}
    -
    - @endif -
    - -
    - -
    - @if(count($paid_procedures) > 0 || count($ordered_procedures) > 0 || count($invoiced_procedures) > 0) - @php $total_procedures_cost = 0; @endphp -
    -

    {{ __('patient_finance.procedures') }}

    - - - - - - - - - - @php - // for invoices that involve copayment and then create double records, first check - // if they exist in the invoice table with the same time and exclude them from the paid ones - $already_invoiced_procedures = []; - $already_invoiced_procedures_times = []; - $already_invoiced_procedures_episode_id = []; - @endphp - - @if(count($invoiced_procedures) > 0) - - - - @foreach($invoiced_procedures as $invoice) - - - - @php - $already_invoiced_procedures[] = $invoice->items_ids; - $already_invoiced_procedures_times[] = $invoice->created_at; - $already_invoiced_procedures_episode_id[] = $invoice->episode_id; - $items_ids = explode(",", $invoice->items_ids); - $items_amounts = explode(",", $invoice->items_amounts); - $total_paid_by_patient += $invoice->patient_amount; - $total_to_pay += array_sum($items_amounts); - $total_services_cost += array_sum($items_amounts); - @endphp - @for($i=0; $i < count($items_ids); $i++) - @if(isset($items_ids[$i]) && $items_ids[$i] != 0) - - - - - @endif - @endfor - @endforeach - @endif - - @if(count($paid_procedures) > 0) - - - - @foreach($paid_procedures as $paid_procedure) - @php - if (in_array($paid_procedure->procedure_items, $already_invoiced_procedures)) { - // get the key to search the timestamps - $key = array_search($paid_procedure->procedure_items, $already_invoiced_procedures); - - if($already_invoiced_procedures_times[$key] == $paid_procedure->created_at && $already_invoiced_procedures_episode_id[$key] == $paid_procedure->episode_id) { - // this means that the payments are the same so just get the patient amounts - $total_paid_by_patient += $paid_procedure->patient_amount_paid; - $total_amount_refunded += $paid_procedure->refund_amount; - continue; - } - } - @endphp - - - - @php - $items_ids = explode(",", $paid_procedure->procedure_items); - $items_amounts = explode(",", $paid_procedure->procedure_amounts); - $total_paid_by_patient += $paid_procedure->patient_amount_paid; - $total_amount_refunded += $paid_procedure->refund_amount; - $total_to_pay += array_sum($items_amounts); - $total_procedures_cost += array_sum($items_amounts); - @endphp - @for($i=0; $i < count($items_ids); $i++) - @if(isset($items_ids[$i]) && $items_ids[$i] != 0) - - - - - @endif - @endfor - @endforeach - @endif - - @if(count($ordered_procedures) > 0) - - - - @foreach($ordered_procedures as $ordered_procedure) - @php - if ($price_list_id) { - $procedure_cost = get_price_list_category_price($price_list_id, 4, $ordered_procedure->procedure_id); - } else { - $procedure_cost = (int)get_name($ordered_procedure->procedure_id, 'id', 'non_insured_price', 'procedures'); - } - - $total_to_pay += $procedure_cost; - $total_procedures_cost += $procedure_cost; - @endphp - - - - - @endforeach - @endif - - - - - -
    {{ __('patient_finance.procedure_name') }}{{ __('patient_finance.amount') }}
    {{ __('patient_finance.invoiced_procedures') }}
    {{ __('patient_finance.invoiced_on') }} {{ streamline_date_time($invoice->created_at) }}
    {{ get_name($items_ids[$i], 'id', 'name', 'procedures') }}{{ ugandan_shillings($items_amounts[$i]) }}
    {{ __('patient_finance.paid_procedures') }}
    {{ __('patient_finance.billed_on') }} {{ streamline_date_time($paid_procedure->created_at) }}
    {{ get_name($items_ids[$i], 'id', 'name', 'procedures') }}{{ ugandan_shillings($items_amounts[$i]) }}
    {{ __('patient_finance.unpaid_procedures') }}
    {{ get_name($ordered_procedure->procedure_id, 'id', 'name', 'procedures') }} ({{ __('patient_finance.ordered_on') }} {{ streamline_date_time($ordered_procedure->created_at) }}){{ ugandan_shillings($procedure_cost) }}
    {{ __('patient_finance.total') }}{{ ugandan_shillings($total_procedures_cost) }}
    -
    - @endif - - @if(count($inpatient_deposits) > 0) - @php $total_inpatient_deposits = 0; @endphp -
    -

    {{ __('patient_finance.inpatient_deposits') }}

    - - - - - - - - - - @foreach($inpatient_deposits as $deposit) - @php - $total_paid_by_patient += $deposit->patient_amount_paid; - //$total_to_pay += $deposit->patient_amount_paid; - $total_inpatient_deposits += $deposit->patient_amount_paid; - @endphp - - - - - @endforeach - - - - - -
    {{ __('patient_finance.received_on') }}{{ __('patient_finance.patient_amount') }}
    {{ streamline_date_time($deposit->created_at) }}{{ ugandan_shillings($deposit->patient_amount_paid) }}
    {{ __('patient_finance.total') }}{{ ugandan_shillings($total_inpatient_deposits) }}
    -
    - @endif -
    - -
    - -
    - @if($inpatient_to_pay > 0) -
    -

    {{ __('patient_finance.inpatient_bills') }}

    - - - - - - - - - - - - @php $total_to_pay += $inpatient_to_pay; @endphp - - - -
    {{ __('patient_finance.total') }}{{ __('patient_finance.patient_amount') }}
    {{ ugandan_shillings($inpatient_to_pay) }}
    -
    - @endif - - @if(count($patient_debts) > 0) -
    -

    {{ __('patient_finance.patient_debts') }}

    - - - - - - - - - - - - @foreach($patient_debts as $debt) - - - - - - - @endforeach - -
    {{ __('patient_finance.incurred_from') }}{{ __('patient_finance.amount_to_pay') }}{{ __('patient_finance.amount_paid') }}{{ __('patient_finance.balance') }}
    {{ get_name($debt->tag_id, 'id', 'name', 'finance_point_tags') }} ({{ streamline_date_time($debt->created_at) }}){{ ugandan_shillings($debt->balance) }}{{ ugandan_shillings($debt->amount_paid_off) }} - @if(!is_null($debt->balance_remaining)) - @php $total_paid_by_patient += $debt->amount_paid_off; @endphp - {{ ugandan_shillings($debt->balance_remaining) }} - @else - {{ ugandan_shillings($debt->balance) }} - @endif -
    -
    - @endif -
    - -
    - -
    -
    - {{ __('patient_finance.total_to_pay') }} -
    - {{ ugandan_shillings($total_to_pay) }} -
    -
    - {{ __('patient_finance.total_paid_by_the_patient') }} -
    - {{ ugandan_shillings($total_paid_by_patient) }} -
    -
    - {{ __('patient_finance.total_amount_refunded') }} -
    - {{ ugandan_shillings($total_amount_refunded) }} -
    -
    - {{ __('patient_finance.total_left_to_pay') }} -
    - @php - $total_left_to_pay = $total_to_pay - ($total_paid_by_patient + $total_amount_refunded); - @endphp - {{ ugandan_shillings($total_left_to_pay) }} -
    -
    - - -
    - - - \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/debt/debt_plan.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/debt/debt_plan.blade.php deleted file mode 100755 index 1939ab1b..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/debt/debt_plan.blade.php +++ /dev/null @@ -1,167 +0,0 @@ - - - \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/home.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/home.blade.php deleted file mode 100755 index c8721625..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/home.blade.php +++ /dev/null @@ -1,553 +0,0 @@ -@php use Modules\PatientFinance\Http\Controllers\PatientFinanceController; @endphp -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - @if(session()->get("print_patient_account_receipt_pdf") == 1) - {{ Form::hidden('print_patient_account_receipt_pdf', 1, ['id' => 'print_patient_account_receipt_pdf']) }} - @endif - -
    -
    -

    {{ __('patient_finance.patient_finance') }}

    -
    -
    - -
    -
    - -
    -
    - @include('layouts.finance_header') -
    -
    - - {{ Form::open(['route' => 'patient_finance.select_payment_option']) }} - -
    -
    -
    - @include('flash::message') -
    - - - - - - - - - - - - @if(is_eye_module_enabled()) - - @endif - - - - - - - @if(!is_null($episodes)) - @foreach($episodes as $episode) - @php - $service_items = PatientFinanceController::get_service_items_string($episode->id); - $service_items_pay_later = PatientFinanceController::get_service_items_pay_later_string($episode->id); - $service_items_inpatient_deposit = PatientFinanceController::get_inpatient_deposit_string($episode->id); - $used_services = \Streamline\Models\OrderedService::where(['patient_id' => $episode->patient_id, 'episode_id' => $episode->id, 'payment_status' => 0,'inpatient_bill_generated' => 0])->get(); - - $consultation_payment_status = "NA"; - $other_services_payment_status = "NA"; - - $service_items_ids_array = []; - - foreach ($service_items as $item){ - array_push($service_items_ids_array, explode(',', $item['items_ids'])); - } - - foreach ($service_items_pay_later as $item){ - array_push($service_items_ids_array, explode(',', $item['items_ids'])); - } - - $service_deposits_types = []; - - foreach($service_items_ids_array as $service_item_id){ - if (is_array($service_item_id)) { - foreach ($service_item_id as $id) { - $service_deposits_types[] = get_name($id, "id", "item_type", "services"); - } - } else { - $service_deposits_types[] = get_name($service_item_id, "id", "item_type", "services"); - } - } - - if (in_array('Consultation', $service_deposits_types)) { - if (in_array($patient->category_id, $pay_later_categories)){ - $consultation_payment_status = "Invoiced"; - } elseif ($episode->paid_over == "pos") { - $consultation_payment_status = " - - - - - - - - - @if(is_eye_module_enabled()) - - @endif - - - - - @if($patient_ran_away_without_paying) - - - - - @endif - @endforeach - @else - - - - @endif - -
    {{ __('patient_finance.date') }}{{ __('patient_finance.consultation') }}{{ __('patient_finance.treatment') }}{{ __('patient_finance.investigations') }}{{ __('patient_finance.procedures') }}{{ __('patient_finance.other_services') }}{{ __('patient_finance.inpatient_deposits') }}{{ __('patient_finance.sundries') }}{{ __('patient_finance.eye_glasses') }}{{ __('patient_finance.co_payment') }}{{ __('patient_finance.debts') }}{{ __('patient_finance.select') }}
    - {{ streamline_date($episode->created_at) }} - @if(check_if_episode_is_a_followup($episode->id)) - @php $original_episode = \Streamline\Models\PatientEpisode::find($episode->parent_episode_id); @endphp - @if ($original_episode) -
    ({{ __('patient_finance.reviewed_from') }} {{ streamline_date($original_episode->created_at) }} - )
    - @endif - @endif -
    - @if($episode->episode_type == 1) - {{ __('patient_flow_monitoring.lab_self_request') }} - @else - @php - $consultation_done_by = get_doctor_who_has_done_episode_consultation($episode->patient_id, $episode->id); - - if(!is_null($consultation_done_by)){ - - $consultation_id = get_consultation_service_id_allocated_at_episode_consultation($episode->patient_id, $episode->id); - - $price_list_id = is_patient_category_attached_to_price_list($episode->patient_id); - - if($price_list_id){ - $consultation_fee = get_price_list_category_price($price_list_id, 6, $consultation_id); - } else { - $consultation_fee = get_name($consultation_id, "id", "non_insured_price", "services"); - } - } - @endphp - {!! $consultation_payment_status !!} - - @if(!is_null($consultation_done_by)) -
    - {{ __('patient_finance.done_by') }} - : {{ get_full_name($consultation_done_by, "id", "first_name", "last_name", "users") }} -
    - {{ __('patient_finance.fee') }} - :{{ ugandan_shillings($consultation_fee) }} - @endif - @endif -
    - @if($prescription === 0) - {{ __('patient_finance.unpaid') }} - @elseif ($prescription === 1) - @if(in_array($patient->category_id, $pay_later_categories)) - {{ __('patient_finance.invoiced') }} - @else - - @endif - @else - NA - @endif - {!! $investigations_payment_status !!}{!! $procedures_payment_status !!}{!! $other_services_payment_status !!}{!! $inpatient_deposits_payment_status !!}{!! $sundries_payment_status !!}{!! $optical_payment_status !!}{!! $copayment_payment_status !!}{!! $debt_value !!} - -
    - {{ streamline_date($episode->created_at) }} - - {{ __('patient_finance.patient_ran_away') }} -
    {{ __('patient_finance.no_patient_episode') }}
    -
    - {{ $episodes->links() }} -
    - - -
    -
    - {{ Form::close() }} -@endsection - -@push('scripts') - -@endpush - - - - - diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_chi_deposits.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_chi_deposits.blade.php deleted file mode 100644 index 87819ef6..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_chi_deposits.blade.php +++ /dev/null @@ -1,1902 +0,0 @@ -@php use Streamline\Services\PatientFinance\PatientPaymentMethodService; @endphp -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - - {{-- Hide the print option here outside of the form --}} - @if(session()->get("print_cashier_receipt_pdf") == 1) - {{ Form::hidden('print_cashier_receipt_pdf', 1, ['id' => 'print_cashier_receipt_pdf']) }} - @endif - -
    -
    -

    -
    -
    - -
    -
    - - @if(count($paid_claims) > 0) -
    -

    {{ __('patient_finance.payments') }}

    - -
    - - - - - - - - - - - - - - @php $counter = 1; @endphp - - @foreach($paid_claims as $paid_claim) - - - - - - - - - - - - @php $counter++; @endphp - @endforeach - -
    #{{ __('patient_finance.receipt_number') }}{{ __('patient_finance.cashier') }}{{ __('patient_finance.items') }}{{ __('patient_finance.chi_amount') }}{{ __('patient_finance.patient_amount') }}{{ __('patient_finance.payment_date') }}
    {{ $counter }}{{ $paid_claim->receipt_number }}{{ get_full_name($paid_claim->created_by, 'id', 'first_name', 'last_name', 'users') }} - @php $items_counter = 1; @endphp - @php $items_array = explode(",", $paid_claim->items_ids); @endphp - @foreach($items_array as $item) - {{ $items_counter }}. - @if($paid_claim->tag_id == 8) - {{ get_name($item, 'id', 'name', 'services') }}
    - @elseif($paid_claim->tag_id == 4) - {{ get_name($item, 'id', 'name', 'procedures') }}
    - @elseif($paid_claim->tag_id == 2) - {{ get_name($item, 'id', 'name', 'investigations') }}
    - @elseif($paid_claim->tag_id == 3) - {{ get_name($item, 'id', 'name', 'drugs') }}
    - @elseif($paid_claim->tag_id == 5) - {{ get_name($item, 'id', 'name', 'sundries') }}
    - @endif - @php $items_counter++; @endphp - @endforeach -
    {{ ugandan_shillings($paid_claim->chi_amount_total) }}{{ ugandan_shillings($paid_claim->patient_amount_paid) }}{{ streamline_date_time($paid_claim->created_at) }}{{ __('patient_finance.print') }} - @if(can_chi_deposit_be_cancelled($paid_claim->receipt_number) && Auth::user()->can('cancel-patient-transaction')) - {{ __('patient_finance.cancel_receipt') }} - @endif -
    -
    -
    - @endif - -
    - @include('flash::message') - - - @php - $does_patient_category_have_threshold = does_patient_category_have_threshold($patient->category_id); - $patient_is_a_dependant_of = patient_is_a_dependant_of($patient_id); - $co_payment = check_patient_category_co_payment_status($patient->category_id); - @endphp - - {{ Form::open(['route' => 'patient_finance.store_chi_deposits', 'data-toggle' => 'validator']) }} - - {{ Form::hidden('patient_id', $patient_id, ['id' => 'patient_id']) }} - {{ Form::hidden('episode_id', $episode_id, ['id' => 'episode_id']) }} - {{ Form::hidden('item_type', $item_type, ['id' => 'item_type']) }} - -
    -
    - -

    Unauthorised claim items are added to the patient to pay amount

    - - @if(count($service_claims) > 0) - @php $services = \Illuminate\Support\Facades\DB::table('services')->pluck('name', 'id'); @endphp - -

    {{ __('patient_finance.services') }}

    - -
    - - - - - - - - - - - @php - $service_tariff_total = 0; - $service_co_payment_total = 0; - @endphp - - @foreach($service_claims as $claim) - @php - $item_ids = explode(",", $claim->item_ids); - $item_quantities = explode(",", $claim->item_quantities); - $tariff_amounts = explode(",", $claim->tariff_amounts); - $co_payment_amounts = explode(",", $claim->co_payment_amounts); - $item_authorisations = explode(",", $claim->is_item_authorisation_required); - $item_cash_amounts = explode(",", $claim->item_cash_amounts); - $plan_limit_error = explode(",", $claim->plan_limit_error); - $benefit_waiting_period_error = explode(",", $claim->benefit_waiting_period_error); - $benefit_limit_error = explode(",", $claim->benefit_limit_error); - $item_limit_error = explode(",", $claim->item_limit_error); - @endphp - {{ Form::hidden('services_order_ids[]', $claim->order_id) }} - {{ Form::hidden('claim_id[]', $claim->id) }} - - @for($i = 0; $i < count($item_ids); $i++) - - - - - - - @endfor - @endforeach - - - - - - - - - - - - - - - - {{ Form::hidden('service_co_payment_original_total', $service_co_payment_total, ['id' => 'service_co_payment_original_total']) }} - {{ Form::hidden('services_category_to_pay', 0, ['id' => 'services_category_to_pay', 'class' => 'cumulative_items_total']) }} - {{ Form::hidden('service_co_payment_balance', 0, ['id' => 'service_co_payment_balance']) }} - -
    {{ __('patient_finance.name') }}{{ __('patient_finance.quantities') }}{{ __('patient_finance.chi_to_pay') }}{{ __('patient_finance.patient_co_payment') }}
    - {{ $services[$item_ids[$i]] }} - - {{ Form::hidden('service_id[]', $item_ids[$i]) }} - {{ Form::hidden('service_quantity[]', $item_quantities[$i]) }} - - @if($item_authorisations[$i] == 1 && $tariff_amounts[$i] > 0) -

    {{ __('insurance_claims.chi_item_not_authorised') }} - @endif - - @if($claim->is_authorisation_required == 1 && $tariff_amounts[$i] > 0) -

    {{ __('insurance_claims.chi_claim_not_authorised') }} - @endif - - @if($claim->plan_validity_error == 1 && $tariff_amounts[$i] > 0) -

    {{ __('insurance_claims.chi_plan_expired') }} - @endif - - @if($benefit_waiting_period_error[$i] == 1) -

    {{ __('insurance_claims.benefits_waiting_period_error') }} - @endif - - @if($plan_limit_error[$i] == 1 || $benefit_limit_error[$i] == 1 || $item_limit_error[$i] == 1) -

    {{ __('insurance_claims.chi_limits_exceeded') }} - @endif - - @php - if ($item_authorisations[$i] == 1 || $claim->is_authorisation_required == 1 || $claim->plan_validity_error == 1 || - $benefit_waiting_period_error[$i] == 1 || $plan_limit_error[$i] == 1 || $benefit_limit_error[$i] == 1 || $item_limit_error[$i] == 1) { - $co_payment_amounts[$i] = $item_cash_amounts[$i]; - $tariff_amounts[$i] = 0; - } - - $service_tariff_total += $tariff_amounts[$i]; - $service_co_payment_total += $co_payment_amounts[$i]; - @endphp -
    {{ $item_quantities[$i] }} - {{ Form::number('service_chi_to_pay[]', $tariff_amounts[$i], ['class' => 'form-control chi_to_pay', 'readonly']) }} - - {{ Form::hidden('service_amount_to_pay[]', ($tariff_amounts[$i] + $co_payment_amounts[$i])) }} - {{ Form::number('service_co_pay[]', $co_payment_amounts[$i], ['class' => 'form-control co_pay_amount', 'readonly']) }} -
    {{ Form::number('service_chi_to_pay_total', $service_tariff_total, ['class' => 'form-control chi_to_pay_total', 'readonly']) }}{{ Form::number('service_co_payment_total', $service_co_payment_total, ['id' => 'service_co_payment_total', 'class' => 'form-control co_payment_total', 'onkeyup'=>'get_balance()']) }}
    -
    - @endif - - @if(count($procedure_claims) > 0) - @php $procedures = \Illuminate\Support\Facades\DB::table('procedures')->pluck('name', 'id'); @endphp - -

    {{ __('patient_finance.procedures') }}

    - -
    - - - - - - - - - - - @php - $procedure_tariff_total = 0; - $procedure_co_payment_total = 0; - @endphp - - @foreach($procedure_claims as $claim) - @php - $item_ids = explode(",", $claim->item_ids); - $item_quantities = explode(",", $claim->item_quantities); - $tariff_amounts = explode(",", $claim->tariff_amounts); - $co_payment_amounts = explode(",", $claim->co_payment_amounts); - $item_authorisations = explode(",", $claim->is_item_authorisation_required); - $item_cash_amounts = explode(",", $claim->item_cash_amounts); - $plan_limit_error = explode(",", $claim->plan_limit_error); - $benefit_waiting_period_error = explode(",", $claim->benefit_waiting_period_error); - $benefit_limit_error = explode(",", $claim->benefit_limit_error); - $item_limit_error = explode(",", $claim->item_limit_error); - @endphp - {{ Form::hidden('procedures_order_ids[]', $claim->order_id) }} - {{ Form::hidden('claim_id[]', $claim->id) }} - - @for($i = 0; $i < count($item_ids); $i++) - - - - - - - @endfor - @endforeach - - - - - - - - - - - - - - - - {{ Form::hidden('procedure_co_payment_original_total', $procedure_co_payment_total, ['id' => 'procedure_co_payment_original_total']) }} - {{ Form::hidden('procedures_category_to_pay', 0, ['id' => 'procedures_category_to_pay', 'class' => 'cumulative_items_total']) }} - {{ Form::hidden('procedure_co_payment_balance', 0, ['id' => 'procedure_co_payment_balance']) }} - -
    {{ __('patient_finance.name') }}{{ __('patient_finance.quantities') }}{{ __('patient_finance.chi_to_pay') }}{{ __('patient_finance.patient_co_payment') }}
    - {{ $procedures[$item_ids[$i]] }} - - {{ Form::hidden('procedure_id[]', $item_ids[$i]) }} - - @if($item_authorisations[$i] == 1 && $tariff_amounts[$i] > 0) -

    {{ __('insurance_claims.chi_item_not_authorised') }} - @endif - - @if($claim->is_authorisation_required == 1 && $tariff_amounts[$i] > 0) -

    {{ __('insurance_claims.chi_claim_not_authorised') }} - @endif - - @if($claim->plan_validity_error == 1 && $tariff_amounts[$i] > 0) -

    {{ __('insurance_claims.chi_plan_expired') }} - @endif - - @if($benefit_waiting_period_error[$i] == 1) -

    {{ __('insurance_claims.benefits_waiting_period_error') }} - @endif - - @if($plan_limit_error[$i] == 1 || $benefit_limit_error[$i] == 1 || $item_limit_error[$i] == 1) -

    {{ __('insurance_claims.chi_limits_exceeded') }} - @endif - - @php - if ($item_authorisations[$i] == 1 || $claim->is_authorisation_required == 1 || $claim->plan_validity_error == 1 || - $benefit_waiting_period_error[$i] == 1 || $plan_limit_error[$i] == 1 || $benefit_limit_error[$i] == 1 || $item_limit_error[$i] == 1) { - $co_payment_amounts[$i] = $item_cash_amounts[$i]; - $tariff_amounts[$i] = 0; - } - - $procedure_tariff_total += $tariff_amounts[$i]; - $procedure_co_payment_total += $co_payment_amounts[$i]; - @endphp -
    {{ $item_quantities[$i] }} - {{ Form::number('procedure_chi_to_pay[]', $tariff_amounts[$i], ['class' => 'form-control chi_to_pay', 'readonly']) }} - - {{ Form::hidden('procedure_amount_to_pay[]', ($tariff_amounts[$i] + $co_payment_amounts[$i])) }} - {{ Form::number('procedure_co_pay[]', $co_payment_amounts[$i], ['class' => 'form-control co_pay_amount', 'readonly']) }} -
    {{ Form::number('procedure_chi_to_pay_total', $procedure_tariff_total, ['class' => 'form-control chi_to_pay_total', 'readonly']) }}{{ Form::number('procedure_co_payment_total', $procedure_co_payment_total, ['id' => 'procedure_co_payment_total', 'class' => 'form-control co_payment_total', 'onkeyup'=>'get_balance()']) }}
    -
    - @endif - - @if(count($investigation_claims) > 0) - @php $investigations = \Illuminate\Support\Facades\DB::table('investigations')->pluck('name', 'id'); @endphp - -

    {{ __('patient_finance.investigations') }}

    - -
    - - - - - - - - - - - @php - $investigation_tariff_total = 0; - $investigation_co_payment_total = 0; - @endphp - - @foreach($investigation_claims as $claim) - @php - $item_ids = explode(",", $claim->item_ids); - $item_quantities = explode(",", $claim->item_quantities); - $tariff_amounts = explode(",", $claim->tariff_amounts); - $co_payment_amounts = explode(",", $claim->co_payment_amounts); - $item_authorisations = explode(",", $claim->is_item_authorisation_required); - $item_cash_amounts = explode(",", $claim->item_cash_amounts); - $plan_limit_error = explode(",", $claim->plan_limit_error); - $benefit_waiting_period_error = explode(",", $claim->benefit_waiting_period_error); - $benefit_limit_error = explode(",", $claim->benefit_limit_error); - $item_limit_error = explode(",", $claim->item_limit_error); - @endphp - {{ Form::hidden('investigations_order_ids[]', $claim->order_id) }} - {{ Form::hidden('claim_id[]', $claim->id) }} - - @for($i = 0; $i < count($item_ids); $i++) - - - - - - - @endfor - @endforeach - - - - - - - - - - - - - - - - {{ Form::hidden('investigation_co_payment_original_total', $investigation_co_payment_total, ['id' => 'investigation_co_payment_original_total']) }} - {{ Form::hidden('investigations_category_to_pay', 0, ['id' => 'investigations_category_to_pay', 'class' => 'cumulative_items_total']) }} - {{ Form::hidden('investigation_co_payment_balance', 0, ['id' => 'investigation_co_payment_balance']) }} - -
    {{ __('patient_finance.name') }}{{ __('patient_finance.quantities') }}{{ __('patient_finance.chi_to_pay') }}{{ __('patient_finance.patient_co_payment') }}
    - {{ $investigations[$item_ids[$i]] }} - - {{ Form::hidden('investigation_id[]', $item_ids[$i]) }} - - @if($item_authorisations[$i] == 1 && $tariff_amounts[$i] > 0) -

    {{ __('insurance_claims.chi_item_not_authorised') }} - @endif - - @if($claim->is_authorisation_required == 1 && $tariff_amounts[$i] > 0) -

    {{ __('insurance_claims.chi_claim_not_authorised') }} - @endif - - @if($claim->plan_validity_error == 1 && $tariff_amounts[$i] > 0) -

    {{ __('insurance_claims.chi_plan_expired') }} - @endif - - @if($benefit_waiting_period_error[$i] == 1) -

    {{ __('insurance_claims.benefits_waiting_period_error') }} - @endif - - @if($plan_limit_error[$i] == 1 || $benefit_limit_error[$i] == 1 || $item_limit_error[$i] == 1) -

    {{ __('insurance_claims.chi_limits_exceeded') }} - @endif - - @php - if ($item_authorisations[$i] == 1 || $claim->is_authorisation_required == 1 || $claim->plan_validity_error == 1 || - $benefit_waiting_period_error[$i] == 1 || $plan_limit_error[$i] == 1 || $benefit_limit_error[$i] == 1 || $item_limit_error[$i] == 1) { - $co_payment_amounts[$i] = $item_cash_amounts[$i]; - $tariff_amounts[$i] = 0; - } - - $investigation_tariff_total += $tariff_amounts[$i]; - $investigation_co_payment_total += $co_payment_amounts[$i]; - @endphp -
    {{ $item_quantities[$i] }} - {{ Form::number('investigation_chi_to_pay[]', $tariff_amounts[$i], ['class' => 'form-control chi_to_pay', 'readonly']) }} - - {{ Form::hidden('investigation_amount_to_pay[]', ($tariff_amounts[$i] + $co_payment_amounts[$i])) }} - {{ Form::number('investigation_co_pay[]', $co_payment_amounts[$i], ['class' => 'form-control co_pay_amount', 'readonly']) }} -
    {{ Form::number('investigation_chi_to_pay_total', $investigation_tariff_total, ['class' => 'form-control chi_to_pay_total', 'readonly']) }}{{ Form::number('investigation_co_payment_total', $investigation_co_payment_total, ['id' => 'investigation_co_payment_total', 'class' => 'form-control co_payment_total', 'onkeyup'=>'get_balance()']) }}
    -
    - @endif - - @if(count($treatment_claims) > 0) - @php $drugs = \Illuminate\Support\Facades\DB::table('drugs')->pluck('name', 'id'); @endphp - -

    {{ __('patient_finance.treatment') }}

    - -
    - - - - - - - - - - - @php - $treatment_tariff_total = 0; - $treatment_co_payment_total = 0; - $any_confirmed_drug = false; - @endphp - - @foreach($treatment_claims as $claim) - @php - $item_ids = explode(",", $claim->item_ids); - $item_quantities = explode(",", $claim->item_quantities); - $tariff_amounts = explode(",", $claim->tariff_amounts); - $co_payment_amounts = explode(",", $claim->co_payment_amounts); - $item_authorisations = explode(",", $claim->is_item_authorisation_required); - $item_cash_amounts = explode(",", $claim->item_cash_amounts); - $plan_limit_error = explode(",", $claim->plan_limit_error); - $benefit_waiting_period_error = explode(",", $claim->benefit_waiting_period_error); - $benefit_limit_error = explode(",", $claim->benefit_limit_error); - $item_limit_error = explode(",", $claim->item_limit_error); - - // check if treatment has been confirmed - $treatment_order = \Streamline\Models\Treatment::find($claim->order_id); - @endphp - - @if($treatment_order && !(is_incoming_prescriptions_feature_enabled() && $treatment_order->confirmation_status == 0)) - {{ Form::hidden('treatment_order_ids[]', $claim->order_id) }} - {{ Form::hidden('claim_id[]', $claim->id) }} - - @php - $any_confirmed_drug = true; - $purchased_elsewhere = is_null($treatment_order->purchased_elsewhere) ? [] : explode(",", $treatment_order->purchased_elsewhere); - @endphp - - @if (!in_array(0, $purchased_elsewhere)) - - {{ Form::hidden('all_records_purchased_elsewhere[]', $treatment_order->id) }} - @endif - - @for($i = 0; $i < count($item_ids); $i++) - {{ Form::hidden('treatment_item_id[]', $item_ids[$i]) }} - {{ Form::hidden('treatment_quantity[]', $item_quantities[$i]) }} - - @if(count($purchased_elsewhere) > 0 && isset($purchased_elsewhere[$i]) && $purchased_elsewhere[$i] == 1) - - - - - {{ Form::hidden('treatment_chi_to_pay[]', 0, ['class' => 'chi_to_pay']) }} - {{ Form::hidden('treatment_co_pay[]', 0, ['class' => 'co_pay_amount']) }} - {{ Form::hidden('treatment_amount_to_pay[]', 0) }} - - @else - - - - - - - @endif - @endfor - @else - - - - @endif - - @endforeach - - @if($any_confirmed_drug) - - - - - - - - - - - - - - - {{ Form::hidden('treatment_co_payment_original_total', $treatment_co_payment_total, ['id' => 'treatment_co_payment_original_total']) }} - {{ Form::hidden('treatment_category_to_pay', 0, ['id' => 'treatment_category_to_pay', 'class' => 'cumulative_items_total']) }} - {{ Form::hidden('treatment_co_payment_balance', 0, ['id' => 'treatment_co_payment_balance']) }} - @endif - -
    {{ __('patient_finance.name') }}{{ __('patient_finance.quantities') }}{{ __('patient_finance.chi_to_pay') }}{{ __('patient_finance.patient_co_payment') }}
    {{ $drugs[$item_ids[$i]] }}{{ $item_quantities[$i] }}{{ __('patient_finance.purchased_from_else_where') }}
    - {{ $drugs[$item_ids[$i]] }} - - @if($item_authorisations[$i] == 1 && $tariff_amounts[$i] > 0) -

    {{ __('insurance_claims.chi_item_not_authorised') }} - @endif - - @if($claim->is_authorisation_required == 1 && $tariff_amounts[$i] > 0) -

    {{ __('insurance_claims.chi_claim_not_authorised') }} - @endif - - @if($claim->plan_validity_error == 1 && $tariff_amounts[$i] > 0) -

    {{ __('insurance_claims.chi_plan_expired') }} - @endif - - @if($benefit_waiting_period_error[$i] == 1) -

    {{ __('insurance_claims.benefits_waiting_period_error') }} - @endif - - @if($plan_limit_error[$i] == 1 || $benefit_limit_error[$i] == 1 || $item_limit_error[$i] == 1) -

    {{ __('insurance_claims.chi_limits_exceeded') }} - @endif - - @php - if ($item_authorisations[$i] == 1 || $claim->is_authorisation_required == 1 || $claim->plan_validity_error == 1 || - $benefit_waiting_period_error[$i] == 1 || $plan_limit_error[$i] == 1 || $benefit_limit_error[$i] == 1 || $item_limit_error[$i] == 1) { - $co_payment_amounts[$i] = $item_cash_amounts[$i]; - $tariff_amounts[$i] = 0; - } - - $treatment_tariff_total += $tariff_amounts[$i]; - $treatment_co_payment_total += $co_payment_amounts[$i]; - @endphp -
    {{ $item_quantities[$i] }} - {{ Form::number('treatment_chi_to_pay[]', $tariff_amounts[$i], ['class' => 'form-control chi_to_pay', 'readonly']) }} - - {{ Form::hidden('treatment_amount_to_pay[]', ($tariff_amounts[$i] + $co_payment_amounts[$i])) }} - {{ Form::number('treatment_co_pay[]', $co_payment_amounts[$i], ['class' => 'form-control co_pay_amount', 'readonly']) }} -

    {{ __('patient_finance.treatments_have_not_yet_been_confirmed_by_pharmacy') }}

    {{ Form::number('treatment_chi_to_pay_total', $treatment_tariff_total, ['class' => 'form-control chi_to_pay_total', 'readonly']) }}{{ Form::number('treatment_co_payment_total', $treatment_co_payment_total, ['id' => 'treatment_co_payment_total', 'class' => 'form-control co_payment_total', 'onkeyup'=>'get_balance()']) }}
    -
    - @endif - - @if(count($sundries_claims) > 0) - @php $sundries = \Illuminate\Support\Facades\DB::table('sundries')->pluck('name', 'id'); @endphp - -

    {{ __('patient_finance.sundries') }}

    - -
    - - - - - - - - - - - @php - $sundries_tariff_total = 0; - $sundries_co_payment_total = 0; - @endphp - - @foreach($sundries_claims as $claim) - @php - $item_ids = explode(",", $claim->item_ids); - $item_quantities = explode(",", $claim->item_quantities); - $tariff_amounts = explode(",", $claim->tariff_amounts); - $co_payment_amounts = explode(",", $claim->co_payment_amounts); - $item_authorisations = explode(",", $claim->is_item_authorisation_required); - $item_cash_amounts = explode(",", $claim->item_cash_amounts); - $plan_limit_error = explode(",", $claim->plan_limit_error); - $benefit_waiting_period_error = explode(",", $claim->benefit_waiting_period_error); - $benefit_limit_error = explode(",", $claim->benefit_limit_error); - $item_limit_error = explode(",", $claim->item_limit_error); - @endphp - {{ Form::hidden('sundries_order_ids[]', $claim->order_id) }} - {{ Form::hidden('claim_id[]', $claim->id) }} - - @for($i = 0; $i < count($item_ids); $i++) - {{ Form::hidden('sundries_id[]', $item_ids[$i]) }} - {{ Form::hidden('sundries_quantity[]', $item_quantities[$i]) }} - - - - - - - - @endfor - @endforeach - - - - - - - - - - - - - - - - {{ Form::hidden('sundries_co_payment_original_total', $sundries_co_payment_total, ['id' => 'sundries_co_payment_original_total']) }} - {{ Form::hidden('sundries_category_to_pay', 0, ['id' => 'sundries_category_to_pay', 'class' => 'cumulative_items_total']) }} - {{ Form::hidden('sundries_co_payment_balance', 0, ['id' => 'sundries_co_payment_balance']) }} - -
    {{ __('patient_finance.name') }}{{ __('patient_finance.quantities') }}{{ __('patient_finance.chi_to_pay') }}{{ __('patient_finance.patient_co_payment') }}
    - {{ $sundries[$item_ids[$i]] }} - - @if($item_authorisations[$i] == 1 && $tariff_amounts[$i] > 0) -

    {{ __('insurance_claims.chi_item_not_authorised') }} - @endif - - @if($claim->is_authorisation_required == 1 && $tariff_amounts[$i] > 0) -

    {{ __('insurance_claims.chi_claim_not_authorised') }} - @endif - - @if($claim->plan_validity_error == 1 && $tariff_amounts[$i] > 0) -

    {{ __('insurance_claims.chi_plan_expired') }} - @endif - - @if($benefit_waiting_period_error[$i] == 1) -

    {{ __('insurance_claims.benefits_waiting_period_error') }} - @endif - - @if($plan_limit_error[$i] == 1 || $benefit_limit_error[$i] == 1 || $item_limit_error[$i] == 1) -

    {{ __('insurance_claims.chi_limits_exceeded') }} - @endif - - @php - if ($item_authorisations[$i] == 1 || $claim->is_authorisation_required == 1 || $claim->plan_validity_error == 1 || - $benefit_waiting_period_error[$i] == 1 || $plan_limit_error[$i] == 1 || $benefit_limit_error[$i] == 1 || $item_limit_error[$i] == 1) { - $co_payment_amounts[$i] = $item_cash_amounts[$i]; - $tariff_amounts[$i] = 0; - } - - $sundries_tariff_total += $tariff_amounts[$i]; - $sundries_co_payment_total += $co_payment_amounts[$i]; - @endphp -
    {{ $item_quantities[$i] }} - {{ Form::number('sundries_chi_to_pay[]', $tariff_amounts[$i], ['class' => 'form-control chi_to_pay', 'readonly']) }} - - {{ Form::hidden('sundries_amount_to_pay[]', ($tariff_amounts[$i] + $co_payment_amounts[$i])) }} - {{ Form::number('sundries_co_pay[]', $co_payment_amounts[$i], ['class' => 'form-control co_pay_amount', 'readonly']) }} -
    {{ Form::number('sundries_chi_to_pay_total', $sundries_tariff_total, ['class' => 'form-control chi_to_pay_total', 'readonly']) }}{{ Form::number('sundries_co_payment_total', $sundries_co_payment_total, ['id' => 'sundries_co_payment_total', 'class' => 'form-control co_payment_total', 'onkeyup'=>'get_balance()']) }}
    -
    - @endif -
    - -
    - - - - - - - - - - - - - - - - - @if(!empty($co_payment)) - - - - - @endif - - - - - - - - - - - - @php $family_account_id = is_family_account_feature_enabled() ? get_patient_family_account_id($patient->id) : null; @endphp - @if($family_account_id != null) - - - - - - - - - - - - - @endif - - @if($does_patient_category_have_threshold || !is_null($patient_is_a_dependant_of)) - - - - - - - - - - {{ Form::hidden('dependants_balance',get_balance_from_category_threshold($patient_is_a_dependant_of)) }} - @endif -
    {{ __('patient_finance.patient_names') }}{!! insurance_flag($patient->id) !!}
    {{ __('patient_finance.patient_number') }}{{ $patient->number }}
    {{ __('patient_finance.patient_category') }}{{ get_name($patient->category_id, 'id', 'name', 'patient_categories') }}
    {{ __('patient_finance.patient_co_payment_share') }}{{ $co_payment['co_payment_share'] }} %
    {{ __('patient_finance.pay_later') }} - @if(isset($discount->pay_later) && $discount->pay_later == 1) - {{ __('patient_finance.yes') }} - {{ Form::hidden('pay_later', 1, ['id' => 'pay_later']) }} - {{ Form::hidden('patient_category_id', $patient->category_id) }} - @elseif($does_patient_category_have_threshold || !is_null($patient_is_a_dependant_of)) - {{-- if patient is some one's dependant then use the dependants patient category --}} - {{ Form::hidden('pay_later', 1, ['id' => 'pay_later']) }} - {{ Form::hidden('patient_category_id', get_name($patient_is_a_dependant_of, 'id', 'category_id', 'patients')) }} - @else - {{ __('patient_finance.no') }} - {{ Form::hidden('pay_later', 0, ['id' => 'pay_later']) }} - @endif -
    {{ __('patient_finance.patient_discount') }} - @if(isset($discount->discount)) - {{ $discount->discount }} % - {{ Form::hidden('discount_percentage', $discount->discount, ['id' => 'discount_percentage']) }} - @else - 0 % - {{ Form::hidden('discount_percentage', 0, ['id' => 'discount_percentage']) }} - @endif -
    {{ __('patient_finance.family_account_of') }} - @php $family_head_id = get_name($family_account_id, 'id', 'family_head_id', 'family_accounts'); @endphp - - {{ get_full_name($family_head_id, 'id', 'first_name', 'last_name', 'patients') }} - ({{ get_name($family_head_id, 'id', 'number', 'patients') }}) -
    {{ __('patient_finance.family_account_balance') }} - {{ is_numeric(get_name($family_account_id, 'id', 'current_balance', 'family_accounts')) ? ugandan_shillings(get_name($family_account_id, 'id', 'current_balance', 'family_accounts')) : "N/A" }} -
    {{ __('family_accounts.family_credit_limit') }} - {{ is_numeric(get_name($family_account_id, 'id', 'credit_limit', 'family_accounts')) ? ugandan_shillings(get_name($family_account_id, 'id', 'credit_limit', 'family_accounts')) : "Not Set" }} -
    {{ __('patient_finance.patient_dependant_of') }}{{ get_full_name($patient_is_a_dependant_of, "id", "first_name", "last_name", "patients") }} ({{ get_name($patient_is_a_dependant_of, "id", "number", "patients") }})
    {{ __('patient_finance.dependant_balance') }}{{ ugandan_shillings(get_balance_from_category_threshold($patient_is_a_dependant_of)) }}
    - -
    - {{ Form::label('total_amount_pay',__('patient_finance.total_amount')) }} - {{ Form::number('total_amount_pay','',['class' => 'form-control','readonly','id'=>'total_amount_pay']) }} -
    - -
    - {{ Form::label('chi_to_pay',__('patient_finance.chi_to_pay')) }} - {{ Form::number('chi_to_pay','',['class' => 'form-control','readonly','id'=>'chi_to_pay']) }} -
    - -
    - {{ Form::label('patient_co_payment',__('patient_finance.patient_co_payment')) }} - {{ Form::number('patient_co_payment','',['class' => 'form-control','readonly','id'=>'patient_co_payment']) }} -
    - - - - @if(!empty($co_payment)) -
    - {{ Form::label('co_payment_share',__('patient_finance.co_payment_share_slash_top_up')) }} - {{ Form::number('co_payment_share', '',['class' => 'form-control' ,'id'=>'co_payment_share', 'readonly']) }} - {{ Form::hidden('co_payment_share_percentage', $co_payment['co_payment_share'] ,['class' => 'form-control','id'=>'co_payment_share_percentage']) }} -
    - @endif - -
    - {{ Form::label('hospital_to_pay_general_discount',__('patient_finance.hospital_to_pay')) }} - {{ Form::number('hospital_to_pay_general_discount','',['class' => 'form-control','readonly','id'=>'hospital_to_pay_general_discount']) }} -
    - -
    -
    -
    - {{ Form::label('patient_to_pay',__('patient_finance.patient_to_pay')) }} - {{ Form::number('patient_to_pay','',['class' => 'form-control','id'=>'patient_to_pay','readonly']) }} -
    -
    -
    -
    - {{ Form::button(__('patient_finance.calculate'),['type'=>'button','class'=>'btn btn-info', 'onclick' => 'calculate_values()', 'id' => 'calculate_button']) }} -
    -
    -
    - - @php - $patient_account_balance = is_patient_accounts_enabled() ? $patient->patient_account_balance : 0; - $patient_has_family_accounts = false; - - if ($family_account_id != null) { - $patient_has_family_accounts = true; - $family_accounts_credit_limit = is_numeric(get_name($family_account_id, 'id', 'credit_limit', 'family_accounts')) ? get_name($family_account_id, 'id', 'credit_limit', 'family_accounts') : 0; - $family_account_balance = get_name($family_account_id, "id", "current_balance", "family_accounts"); - } - @endphp - - @if($patient_account_balance > 0 || $patient_has_family_accounts) - - @endif - - - - - -
    -
    - -
    -
    - @if(Auth::user()->can('give-one-off-discounts') && empty($co_payment)) - - @endif -
    -
    - -

    - - - -
    - {{ Form::label('balance',__('patient_finance.balance')) }} - {{ Form::number('balance',0,['class' => 'form-control','id'=>'balance','readonly']) }} -
    - - -
    -
    - - {{ Form::close() }} - - @include('patient_finance::patient_finance.debt.debt_plan') -
    -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_central_billing.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_central_billing.blade.php deleted file mode 100755 index cfd10a32..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_central_billing.blade.php +++ /dev/null @@ -1,2575 +0,0 @@ -@php use Streamline\Services\PatientFinance\PatientPaymentMethodService; @endphp -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - - @php $co_payment = check_patient_category_co_payment_status($patient->category_id); @endphp - - {{-- Hide the print option here outside of the form --}} - @if(session()->get("print_cashier_receipt_pdf") == 1) - {{ Form::hidden('print_cashier_receipt_pdf', 1, ['id' => 'print_cashier_receipt_pdf']) }} - @endif - -
    -
    -

    - {{ __('patient_finance.central_billing_title') }} : {{ streamline_date($episode->created_at) }} -

    -
    -
    - -
    -
    - - @if($central_billing_receipts->count() > 0) -
    -

    {{ __('patient_finance.central_billing_payments') }}

    - -
    - - - - - - - - - - - - - - @php $i = 1; @endphp - @foreach($central_billing_receipts as $record) - - - - - - @php - $record_patient_amount = \DB::table('central_billing_deposits')->where('receipt_number', $record->receipt_number)->groupBy('receipt_number')->sum('patient_amount_paid'); - $record_category_amount = \DB::table('central_billing_deposits')->where('receipt_number', $record->receipt_number)->groupBy('receipt_number')->sum('patient_category_amount_paid'); - @endphp - - - - - - @endforeach - @php $i++; @endphp - - -
    -
    - @endif - - @php - $treatment_balance = 0; $treatment_amount_total = 0; $treatment_amount = 0; - // use variable to check if any drugs have been confirmed - $any_confirmed_drug = false; - @endphp - -
    - - @if(patient_insurance_status($patient_id) == 1) - View CHI Deposits Receipts -

    - @endif - -
    -
    - @include('flash::message') - - @php - $does_patient_category_have_threshold = does_patient_category_have_threshold($patient->category_id); - $patient_is_a_dependant_of = patient_is_a_dependant_of($patient_id); - @endphp - - @if(Auth::user()->can('price-list-category-change-billing')) - {{ Form::open(['route' => 'patient_finance.make_deposit_central_billing', 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('price_list_category_id', 'Price List Category') }} - -
    -
    -
    -
    - {{ Form::button(__('patient_finance.apply_changes'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    - -
    - - {{ Form::close() }} - @endif - - {{ Form::open(['route' => 'patient_finance.store_deposit_central_billing', 'data-toggle' => 'validator']) }} - - {{ Form::hidden('patient_id', $patient_id, ['id' => 'patient_id']) }} - {{ Form::hidden('episode_id', $episode_id, ['id' => 'episode_id']) }} - - @php $price_list_id = is_patient_category_attached_to_price_list($patient_id); @endphp - @if($price_list_id && !($price_list_set && $price_list_set != 0)) - {{ Form::hidden('price_list_category', $price_list_id, ['id' => 'price_list_category']) }} - @else - {{ Form::hidden('price_list_category', $price_list_set, ['id' => 'price_list_category']) }} - @endif - -
    -
    - -

    {{ __('patient_finance.consultation_services') }}

    - -
    - - - - - - - - - - - - - - - - @php $total_services_cost = 0; @endphp - @if(!empty($used_services)) - @foreach($used_services as $used_service) - @php - $service_ids = explode(",", $used_service->service_id); - $service_quantity = explode(",", $used_service->quantity); - $ordered_services_amounts = (is_null($used_service->service_amount) || $used_service->service_amount == '') ? []: explode(",", $used_service->service_amount); - @endphp - - @for($i = 0; $i < count($service_ids); $i++) - can('view-item-prices')) style="display: none" @endif> - - - @php - $service_cost = 0; - - if($price_list_set && $price_list_set != 0){ - $service_cost = get_price_list_category_price($price_list_set, 6, $service_ids[$i]); - }else if($price_list_id){ - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - - $service_cost = get_price_list_category_price($price_list_id, 6, $service_ids[$i]); - } else { - $pre_order = \Streamline\Models\Services::withTrashed()->find($service_ids[$i]); - - if ($pre_order) { - //if amount was set at time of ordering - if (isset($ordered_services_amounts[$i])) { - $service_cost = $ordered_services_amounts[$i]; - } else { - $service_cost = $pre_order->non_insured_price; - } - } - } - - $service_cost *= $service_quantity[$i]; - $total_services_cost += $service_cost; - @endphp - - - @endfor - @endforeach - @endif - -
    #{{ __('patient_finance.service') }}{{ __('patient_finance.amount') }}
    - - - -
    - {{ Form::text('service_name', get_name($service_ids[$i], "id", "name", "services"), ['class' => 'form-control', 'readonly']) }} - {{ Form::hidden('service_id[]', $service_ids[$i]) }} - - - - -
    - - - - - - - - - @if(!empty($co_payment)) - - - - - @endif - - - - - - - - - - - -
    {{ __('patient_finance.services_total') }} - {{ Form::number('services_patient_to_pay_original', $total_services_cost, ['id' => 'services_patient_to_pay_original', 'class' => 'form-control', 'readonly']) }} -
    {{ __('patient_finance.services_co_payment') }}{{ Form::number('services_copayment', 0, ['class' => 'form-control', 'id' => 'services_copayment', 'onkeyup' => 're_calculate_patient_category_to_pay_after_topup()']) }}
    {{ __('patient_finance.services_patient_to_pay') }} - {{ Form::number('services_patient_to_pay_edit', 0, ['id' => 'services_patient_to_pay_edit', 'class' => 'form-control', 'onkeyup'=>'get_balance()']) }} -
    -
    - - {{ Form::hidden('services_patient_to_pay', 0, ['id' => 'services_patient_to_pay', 'class' => 'cumulative_items_total']) }} - {{ Form::hidden('services_category_to_pay', 0, ['id' => 'services_category_to_pay', 'class' => 'cumulative_items_total']) }} - {{ Form::hidden('services_patient_to_pay_balance', 0, ['id' => 'services_patient_to_pay_balance']) }} - -
    - - -
    - -

    - -

    {{ __('patient_finance.procedures') }}

    - -
    - - - - - - - - - @if($ordered_procedures->count() > 0) - @php - $procedure_ids = array(); - $order_ids = array(); - $eye_applications = []; - // amounts at the time was ordered - $procedures_orders_amounts = []; - - foreach($ordered_procedures as $ordered_procedure){ - $procedure_ids = array_merge($procedure_ids, explode(",", $ordered_procedure->procedure_id)); - $eye_applications = array_merge($eye_applications, explode(",", $ordered_procedure->eye)); - array_push($order_ids, $ordered_procedure->id); - //if amounts are put at the time of ordering - $procedures_orders_amounts = is_null($ordered_procedure->procedure_amount) ? array_merge($procedures_orders_amounts, []) : array_merge($procedures_orders_amounts, explode(",", $ordered_procedure->procedure_amount)); - } - - $count_orders = count($order_ids); - - // create strings from arrays to use when submitting - $order_ids_string = implode(',', $order_ids); - $procedure_ids_string = implode(',', $procedure_ids); - $procedure_orders_amounts_string = implode(',', $procedures_orders_amounts); - @endphp - - {{ Form::hidden('procedure_order_ids', $order_ids_string) }} - {{ Form::hidden('procedure_ids', $procedure_ids_string) }} - {{ Form::hidden('procedure_order_amounts', $procedure_orders_amounts_string) }} - - @php - $procedure_amount_total = 0; - $procedure_amount = 0; - @endphp - - @for ($i = 0; $i < count($procedure_ids); $i++) - @php - - $eye_application_multiplier = ((isset($eye_applications[$i]) && $eye_applications[$i] == 2) ? 2 : 1); - - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_set && $price_list_set != 0){ - $procedure_amount = get_price_list_category_price($price_list_set, 4, $procedure_ids[$i]); - } elseif ($price_list_id) { - $procedure_amount = get_price_list_category_price($price_list_id, 4, $procedure_ids[$i]); - } else { - //if amount was set at time of ordering - if (isset($procedures_orders_amounts[$i]) && !is_null($procedures_orders_amounts[$i])) { - $procedure_amount = $procedures_orders_amounts[$i]; - } else{ - $procedure_amount = get_name($procedure_ids[$i], "id", "non_insured_price", "procedures"); - } - } - - $procedure_amount = $procedure_amount * $eye_application_multiplier; - $procedure_amount_total += $procedure_amount; - @endphp - - can('view-item-prices')) style="display: none" @endif> - - - - @endfor - - - - - - - @if(!empty($co_payment)) - - - - - @endif - - - - - - - - - - - - {{ Form::hidden('procedures_patient_to_pay', 0, ['id' => 'procedures_patient_to_pay', 'class' => 'cumulative_items_total']) }} - {{ Form::hidden('procedures_category_to_pay', 0, ['id' => 'procedures_category_to_pay', 'class' => 'cumulative_items_total']) }} - {{ Form::hidden('procedures_patient_to_pay_balance', 0, ['id' => 'procedures_patient_to_pay_balance']) }} - @else - - - - @endif - -
    {{ __('patient_finance.procedure_name') }}{{ __('patient_finance.amount') }}
    - - - {{ Form::number('procedure_amount[]', $procedure_amount, ['class' => 'form-control col-sm-8 total_amount', 'readonly']) }} -
    {{ __('patient_finance.procedures_total') }} - {{ Form::number('procedures_patient_to_pay_original', $procedure_amount_total, ['id' => 'procedures_patient_to_pay_original', 'class' => 'form-control', 'readonly']) }} -
    {{ __('patient_finance.procedures_co_payment') }}{{ Form::number('procedures_copayment', 0, ['class' => 'form-control', 'id' => 'procedures_copayment', 'onkeyup' => 're_calculate_patient_category_to_pay_after_topup()']) }}
    {{ __('patient_finance.procedures_patient_to_pay') }} - {{ Form::number('procedures_patient_to_pay_edit', 0, ['id' => 'procedures_patient_to_pay_edit', 'class' => 'form-control', 'onkeyup'=>'get_balance()']) }} -

    {{ __('patient_finance.no_procedures') }}

    -
    - -

    - -

    {{ __('patient_finance.investigations') }}

    - -
    - - - - - - - - - - @if($ordered_investigations->count() > 0) - @php - // ids of the ordered investigations - $investigation_ids = array(); - - // id of the current ordered investigations to update table later - $order_ids = array(); - $eye_applications = []; // whether to double the price for both eyes or 1 - - // amounts at the time of the inv was ordered - $inv_orders_amounts = []; - - foreach($ordered_investigations as $ordered_investigation){ - $investigation_ids = array_merge($investigation_ids, explode(",", $ordered_investigation->investigation_id)); - $eye_applications = array_merge($eye_applications, explode(",", $ordered_investigation->eye)); - array_push($order_ids, $ordered_investigation->id); - - $inv_orders_amounts = is_null($ordered_investigation->investigation_amount) ? array_merge($inv_orders_amounts, []) : array_merge($inv_orders_amounts, explode(",", $ordered_investigation->investigation_amount)); - } - - $count_orders = count($order_ids); - - // create strings from arrays to use when submitting - $order_ids_string = implode(',', $order_ids); - $investigation_ids_string = implode(',', $investigation_ids); - $ordered_inv_amounts_string = implode(',', $inv_orders_amounts); - @endphp - - {{ Form::hidden('investigation_order_ids', $order_ids_string) }} - {{ Form::hidden('investigation_ids', $investigation_ids_string) }} - {{ Form::hidden('investigation_order_amounts', $ordered_inv_amounts_string) }} - - @php - $investigation_amount_total = 0; - $investigation_amount = 0; - @endphp - - @for ($i = 0; $i < count($investigation_ids); $i++) - @php - - $eye_application_multiplier = ((isset($eye_applications[$i]) && $eye_applications[$i] == 2) ? 2 : 1); - - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_set && $price_list_set != 0){ - $investigation_amount = get_price_list_category_price($price_list_set, 2, $investigation_ids[$i]); - } elseif ($price_list_id) { - $investigation_amount = get_price_list_category_price($price_list_id, 2, $investigation_ids[$i]); - } else { - //if amount was set at time of ordering - if (isset($inv_orders_amounts[$i]) && !is_null($inv_orders_amounts[$i])) { - $investigation_amount = $inv_orders_amounts[$i]; - } else { - $investigation_amount = get_name($investigation_ids[$i], "id", "non_insured_price", "investigations"); - } - } - - $investigation_amount = $investigation_amount * $eye_application_multiplier; - $investigation_amount_total += $investigation_amount; - @endphp - - can('view-item-prices')) style="display: none" @endif> - - - - @endfor - - - - - - - @if(!empty($co_payment)) - - - - - @endif - - - - - - - - - - - - {{ Form::hidden('investigations_patient_to_pay', 0, ['id' => 'investigations_patient_to_pay', 'class' => 'cumulative_items_total']) }} - {{ Form::hidden('investigations_category_to_pay', 0, ['id' => 'investigations_category_to_pay', 'class' => 'cumulative_items_total']) }} - {{ Form::hidden('investigations_patient_to_pay_balance', 0, ['id' => 'investigations_patient_to_pay_balance']) }} - @else - - - - @endif - -
    {{ __('patient_finance.investigation_name') }}{{ __('patient_finance.amount') }}
    - - - {{ Form::number('investigation_amount[]', $investigation_amount, ['class' => 'form-control col-sm-8 total_amount', 'readonly']) }} -
    {{ __('patient_finance.investigation_total') }} - {{ Form::number('investigations_patient_to_pay_original', $investigation_amount_total, ['id' => 'investigations_patient_to_pay_original', 'class' => 'form-control', 'readonly']) }} -
    {{ __('patient_finance.investigation_co_payment') }}{{ Form::number('investigation_copayment', 0, ['class' => 'form-control', 'id' => 'investigation_copayment', 'onkeyup' => 're_calculate_patient_category_to_pay_after_topup()']) }}
    {{ __('patient_finance.investigation_patient_to_pay') }} - {{ Form::number('investigations_patient_to_pay_edit', 0, ['id' => 'investigations_patient_to_pay_edit', 'class' => 'form-control', 'onkeyup'=>'get_balance()']) }} -

    {{ __('patient_finance.no_investigations') }}

    -
    - -

    - -

    {{ __('patient_finance.treatment') }}

    - -
    - - - - - - - - - - - @if(count($treatments) > 0) - @foreach($treatments as $treatment) - @if(!(is_incoming_prescriptions_feature_enabled() && $treatment->confirmation_status == 0)) - @php - $treatment_balance += get_progressive_treatment_balance($treatment->id, $patient_id); - - // check if treatment is altered and is using old model - if ($treatment->altered != 0 && $treatment->is_new_alter_model == 0) { - $altered_drugs = get_name(get_name($treatment['id'], 'id', 'altered', 'treatments'), 'id', 'drugs', 'patient_dispensings'); - $altered_quantities = get_name(get_name($treatment['id'], 'id', 'altered', 'treatments'), 'id', 'quantity_dispensed', 'patient_dispensings'); - - $drug_ids = ($altered_drugs != 'N/A') ? explode(",", $altered_drugs) : explode(",", $treatment['drugs']); - $drug_quantities = ($altered_quantities != 'N/A') ? explode(",", $altered_quantities) : explode(",", $treatment['quantities_dispensed']); - } else { - $drug_ids = explode(",", $treatment['drugs']); - $drug_quantities = explode(",", $treatment['quantities_dispensed']); - } - $purchased_elsewhere = is_null($treatment->purchased_elsewhere) ? [] : explode(",", $treatment->purchased_elsewhere); - $any_confirmed_drug = true; - $remove_pos_row = ($treatment->is_pos == 1) ? "remove_before_calculation" : ""; - @endphp - - - - @if (!in_array(0, $purchased_elsewhere)) - - {{ Form::hidden('all_records_purchased_elsewhere[]', $treatment->id) }} - @endif - {{ Form::hidden('treatment_id[]', $treatment->id) }} - - - @for ($i = 0; $i < count($drug_ids); $i++) - @php - - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_set && $price_list_set != 0){ - $treatment_amount = get_price_list_category_price($price_list_set, 3, $drug_ids[$i]); - } elseif ($price_list_id) { - $treatment_amount = get_price_list_category_price($price_list_id, 3, $drug_ids[$i]); - } else { - $treatment_amount = get_name($drug_ids[$i], "id", "non_insured_price", "drugs"); - } - @endphp - - @if(count($purchased_elsewhere) > 0 && isset($purchased_elsewhere[$i]) && $purchased_elsewhere[$i] == 1) - can('view-item-prices')) style="display: none" @endif class="order_id_{{ $treatment->id }} {{ $remove_pos_row }}"> - - - - - - @else - can('view-item-prices')) style="display: none" @endif class="order_id_{{ $treatment->id }} {{ $remove_pos_row }}"> - - - - - - {{ Form::hidden('treatment_item[]', $drug_ids[$i]) }} - - @endif - - @endfor - @else - - - - @endif - @endforeach - - @if($any_confirmed_drug) - - - - - - @if(!empty($co_payment)) - - - - - @endif - - - - - - - - - - - - {{ Form::hidden('treatment_patient_to_pay', 0, ['id' => 'treatment_patient_to_pay', 'class' => 'cumulative_items_total']) }} - {{ Form::hidden('treatment_category_to_pay', 0, ['id' => 'treatment_category_to_pay', 'class' => 'cumulative_items_total']) }} - {{ Form::hidden('treatment_patient_to_pay_balance', 0, ['id' => 'treatment_patient_to_pay_balance']) }} - @endif - @else - - - - @endif - -
    {{ __('patient_finance.item_name') }}{{ __('patient_finance.item_quantity') }}{{ __('patient_finance.item_price') }}{{ __('patient_finance.subtotal') }}
    - @if($treatment->is_pos == 1) - -     - @endif - {{ __('patient_finance.order') }} #{{ $treatment->id }} - {{ __('patient_finance.order_created_by') }}: {{ get_full_name($treatment->created_by, 'id', 'first_name', 'last_name', 'users') }} -
    - - @if (!is_chi_enabled() && !is_drug_covered_by_pay_later_category(get_name($patient_id, 'id', 'category_id', 'patients'), $drug_ids[$i])) -   
    {{ __('patient_finance.not_covered_by') }} {{ get_name(get_name($patient_id, 'id', 'category_id', 'patients'), 'id', 'name', 'patient_categories') }} - @endif -
    - {{ Form::number('treatment_quantity_show', $drug_quantities[$i], ['class' => 'form-control col-sm-8', 'readonly']) }} - - {{ Form::number('treatment_amount_show', $treatment_amount, ['class' => 'form-control col-sm-8', 'readonly']) }} - {{ __('patient_finance.purchased_from_else_where') }}
    - - @if (!is_chi_enabled() && !is_drug_covered_by_pay_later_category(get_name($patient_id, 'id', 'category_id', 'patients'), $drug_ids[$i])) -   
    {{ __('patient_finance.not_covered_by') }} {{ get_name(get_name($patient_id, 'id', 'category_id', 'patients'), 'id', 'name', 'patient_categories') }} - @endif -
    - {{ Form::number('treatment_quantity[]', $drug_quantities[$i], ['class' => 'form-control col-sm-8', 'readonly']) }} - - {{ Form::number('treatment_amount[]', $treatment_amount, ['class' => 'form-control col-sm-8', 'readonly']) }} - - @php - $treatment_subtotal = $drug_quantities[$i] * $treatment_amount; - $treatment_amount_total += $treatment_subtotal; - @endphp - {{ Form::number('treatment_subtotal[]', $treatment_subtotal, ['class' => 'form-control col-sm-8 total_amount treatment_subtotal', 'readonly']) }} -

    {{ __('patient_finance.treatments_have_not_yet_been_confirmed_by_pharmacy') }}

    {{ __('patient_finance.treatment_total') }} - {{ Form::number('treatment_patient_to_pay_original', $treatment_amount_total, ['id' => 'treatment_patient_to_pay_original', 'class' => 'form-control', 'readonly']) }} -
    {{ __('patient_finance.treatment_co_payment') }}{{ Form::number('treatment_copayment', 0, ['class' => 'form-control', 'id' => 'treatment_copayment', 'onkeyup' => 're_calculate_patient_category_to_pay_after_topup()']) }}
    {{ __('patient_finance.treatment_patient_to_pay') }} - {{ Form::number('treatment_patient_to_pay_edit', 0, ['id' => 'treatment_patient_to_pay_edit', 'class' => 'form-control', 'onkeyup'=>'get_balance()']) }} -

    {{ __('patient_finance.no_treatment') }}

    -
    - -

    - -

    {{ __('patient_finance.sundries') }}

    - -
    - - - - - - - - - - - @if($ordered_sundries->count() > 0) - @php - $sundries_ids = array(); - $sundries_quantity = array(); - $order_ids = array(); - // amounts at the time of the inv was ordered - $sundries_orders_amounts = []; - - foreach($ordered_sundries as $ordered_sundry){ - $sundries_ids = array_merge($sundries_ids, explode(",", $ordered_sundry->sundries_id)); - $sundries_quantity = array_merge($sundries_quantity, explode(",", $ordered_sundry->quantity)); - array_push($order_ids, $ordered_sundry->id); - //if amounts are put at the time of ordering - $sundries_orders_amounts = is_null($ordered_sundry->sundries_amount) ? array_merge($sundries_orders_amounts, []) : array_merge($sundries_orders_amounts, explode(",", $ordered_sundry->sundries_amount)); - } - - $count_orders = count($order_ids); - - // create strings from arrays to use when submitting - $order_ids_string = implode(',', $order_ids); - $sundries_ids_string = implode(',', $sundries_ids); - $sundries_orders_amounts_string = implode(',', $sundries_orders_amounts); - $orders_count = 0; - $sundries_cost_total = 0; - @endphp - - {{ Form::hidden('sundry_order_ids', $order_ids_string) }} - {{ Form::hidden('sundry_ids', $sundries_ids_string) }} - {{ Form::hidden('sundry_order_amounts', $sundries_orders_amounts_string) }} - - @for($i = 0; $i < count($sundries_ids); $i++) - @php - - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_set && $price_list_set != 0){ - $sundry_amount = get_price_list_category_price($price_list_set, 5, $sundries_ids[$i]); - } elseif ($price_list_id) { - $sundry_amount = get_price_list_category_price($price_list_id, 5, $sundries_ids[$i]); - } else { - //if amount was set at time of ordering - if (isset($sundries_orders_amounts[$i]) && !is_null($sundries_orders_amounts[$i])) { - $sundry_amount = $sundries_orders_amounts[$i]; - } else{ - $sundry_amount = get_name($sundries_ids[$i], "id", "non_insured_price", "sundries"); - } - } - - // get the subtotal for this sundry - $sundry_subtotal = $sundries_quantity[$i] * $sundry_amount; - $sundries_cost_total += $sundry_subtotal; - @endphp - - can('view-item-prices')) style="display: none" @endif> - - - - - - - @php $orders_count++; @endphp - @endfor - - - - - - - @if(!empty($co_payment)) - - - - - @endif - - - - - - - - - - - - {{ Form::hidden('sundries_patient_to_pay', 0, ['id' => 'sundries_patient_to_pay', 'class' => 'cumulative_items_total']) }} - {{ Form::hidden('sundries_category_to_pay', 0, ['id' => 'sundries_category_to_pay', 'class' => 'cumulative_items_total']) }} - {{ Form::hidden('sundries_patient_to_pay_balance', 0, ['id' => 'sundries_patient_to_pay_balance']) }} - @else - - - - @endif - -
    {{ __('patient_finance.sundry_name') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.unit_cost') }}{{ __('patient_finance.amount') }}
    - - - {{ Form::number('sundry_quantity[]', $sundries_quantity[$i], ['class' => 'form-control col-sm-8', 'readonly']) }} - - {{ Form::number('sundry_amount[]', $sundry_amount, ['class' => 'form-control col-sm-8', 'readonly']) }} - - {{ Form::number('sundry_subtotal[]', $sundry_subtotal, ['class' => 'form-control col-sm-8 total_amount', 'readonly']) }} -
    {{ __('patient_finance.sundries_total') }} - {{ Form::number('sundries_patient_to_pay_original', $sundries_cost_total, ['id' => 'sundries_patient_to_pay_original', 'class' => 'form-control', 'readonly']) }} -
    {{ __('patient_finance.sundries_co_payment') }}{{ Form::number('sundries_copayment', 0, ['class' => 'form-control', 'id' => 'sundries_copayment', 'onkeyup' => 're_calculate_patient_category_to_pay_after_topup()']) }}
    {{ __('patient_finance.sundries_patient_to_pay') }} - {{ Form::number('sundries_patient_to_pay_edit', 0, ['id' => 'sundries_patient_to_pay_edit', 'class' => 'form-control', 'onkeyup'=>'get_balance()']) }} -

    {{ __('patient_finance.no_sundries') }}

    -
    - - @if(is_eye_module_enabled() || $ordered_optics->count() > 0) -

    - -

    {{ __('patient_finance.optics_items') }}

    - -
    - - - - - - - - - - - @if($ordered_optics->count() > 0) - @php - $optics_ids = []; - $optics_quantity = []; - $order_ids = []; - - foreach($ordered_optics as $ordered_optic){ - $optics_ids = array_merge($optics_ids, explode(",", $ordered_optic->eye_glasses_id)); - $optics_quantity = array_merge($optics_quantity, explode(",", $ordered_optic->quantity)); - array_push($order_ids, $ordered_optic->id); - } - - $count_orders = count($order_ids); - - // create strings from arrays to use when submitting - $order_ids_string = implode(',', $order_ids); - $optics_ids_string = implode(',', $optics_ids); - $orders_count = 0; - $optics_cost_total = 0; - @endphp - - {{ Form::hidden('optic_order_ids', $order_ids_string) }} - {{ Form::hidden('optic_ids', $optics_ids_string) }} - - @for($i = 0; $i < count($optics_ids); $i++) - @php - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_set && $price_list_set != 0){ - $optic_amount = get_price_list_category_price($price_list_set, 7, $optics_ids[$i]); - } elseif ($price_list_id) { - $optic_amount = get_price_list_category_price($price_list_id, 7, $optics_ids[$i]); - } else { - $optic_amount = get_name($optics_ids[$i], "id", "non_insured_price", "eye_glasses"); - } - - // get the subtotal for this item - $optic_subtotal = $optics_quantity[$i] * $optic_amount; - $optics_cost_total += $optic_subtotal; - @endphp - - - - - - - - - @php $orders_count++; @endphp - @endfor - - - - - - - @if(!empty($co_payment)) - - - - - @endif - - - - - - - - - - - - {{ Form::hidden('optics_patient_to_pay', 0, ['id' => 'optics_patient_to_pay', 'class' => 'cumulative_items_total']) }} - {{ Form::hidden('optics_category_to_pay', 0, ['id' => 'optics_category_to_pay', 'class' => 'cumulative_items_total']) }} - {{ Form::hidden('optics_patient_to_pay_balance', 0, ['id' => 'optics_patient_to_pay_balance']) }} - @else - - - - @endif - -
    {{ __('patient_finance.optics_item') }}{{ __('patient_finance.unit_cost') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.amount') }}
    {{ get_name($optics_ids[$i], "id", "name", "eye_glasses") }} - {{ Form::number('optic_amount[]', $optic_amount, ['class' => 'form-control col-sm-8', 'readonly']) }} - - {{ Form::number('optic_quantity[]', $optics_quantity[$i], ['class' => 'form-control col-sm-8', 'readonly']) }} - - {{ Form::number('optic_subtotal[]', $optic_subtotal, ['class' => 'form-control col-sm-8 total_amount', 'readonly']) }} -
    {{ __('patient_finance.optics_total') }} - {{ Form::number('optics_patient_to_pay_original', $optics_cost_total, ['id' => 'optics_patient_to_pay_original', 'class' => 'form-control', 'readonly']) }} -
    Optical Items Copayment{{ Form::number('optics_copayment', 0, ['class' => 'form-control', 'id' => 'optics_copayment', 'onkeyup' => 're_calculate_patient_category_to_pay_after_topup()']) }}
    {{ __('patient_finance.optics_patient_to_pay') }} - {{ Form::number('optics_patient_to_pay_edit', 0, ['id' => 'optics_patient_to_pay_edit', 'class' => 'form-control', 'onkeyup'=>'get_balance()']) }} -

    {{ __('patient_finance.no_optics') }}

    -
    - @endif -
    - -
    - - - - - - - - - - - - - - - - - - - - - - @if(!empty($co_payment)) - - - - - @endif - - - - - - @php $family_account_id = is_family_account_feature_enabled() ? get_patient_family_account_id($patient->id) : null; @endphp - @if($family_account_id != null) - - - - - - - - - - - - - @endif - - @if($does_patient_category_have_threshold || !is_null($patient_is_a_dependant_of)) - - - - - - - - - - {{ Form::hidden('dependants_balance',get_balance_from_category_threshold($patient_is_a_dependant_of)) }} - @endif -
    {{ __('patient_finance.patient_names') }} - {!! insurance_flag($patient->id) !!} - @if(patient_insurance_status($patient->id) == 1) - ({{ __('patients.joined_chi_scheme') }} {{patient_duration_on_chi_sheme($patient->id)}}) - @endif -
    {{ __('patient_finance.patient_number') }}{{ $patient->number }}
    {{ __('patient_finance.price_list_category') }} - @if($price_list_set && $price_list_set != 0) - {{ get_name(get_name($price_list_set, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') }} - @else - {{ __('patient_finance.default') }} - @endif -
    {{ __('patient_finance.patient_discount') }} - @if(isset($discount->discount)) - {{ $discount->discount }} % - {{ Form::hidden('discount_percentage', $discount->discount, ['id' => 'discount_percentage']) }} - @else - 0 % - {{ Form::hidden('discount_percentage', 0, ['id' => 'discount_percentage']) }} - @endif -
    {{ __('patient_finance.patient_category') }}{{ $categories[$patient->category_id] ?? "N/A" }}
    {{ __('patient_finance.patient_co_payment_share') }}{{ $co_payment['co_payment_share'] }} %
    {{ __('patient_finance.pay_later') }} - @if(isset($discount->pay_later) && $discount->pay_later == 1) - {{ __('patient_finance.yes') }} - {{ Form::hidden('pay_later', 1, ['id' => 'pay_later']) }} - - @if($price_list_set && $price_list_set != 0 && can_price_list_pay_later($price_list_set)) - {{ Form::hidden('patient_category_id', get_name($price_list_set, 'id', 'patient_category_id', 'price_list_categories')) }} - @else - {{ Form::hidden('patient_category_id', $patient->category_id) }} - @endif - @elseif($does_patient_category_have_threshold || !is_null($patient_is_a_dependant_of)) - {{-- if patient is some one's dependant then use the dependants patient category --}} - {{ Form::hidden('pay_later', 1, ['id' => 'pay_later']) }} - {{ Form::hidden('patient_category_id', get_name($patient_is_a_dependant_of, 'id', 'category_id', 'patients')) }} - @else - {{ __('patient_finance.no') }} - {{ Form::hidden('pay_later', 0, ['id' => 'pay_later']) }} - @endif -
    {{ __('patient_finance.family_account_of') }} - @php $family_head_id = get_name($family_account_id, 'id', 'family_head_id', 'family_accounts'); @endphp - - {{ get_full_name($family_head_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($family_head_id, 'id', 'number', 'patients') }}) -
    {{ __('patient_finance.family_account_balance') }} - {{ is_numeric(get_name($family_account_id, 'id', 'current_balance', 'family_accounts')) ? ugandan_shillings(get_name($family_account_id, 'id', 'current_balance', 'family_accounts')) : "N/A" }} -
    {{ __('family_accounts.family_credit_limit') }} - {{ is_numeric(get_name($family_account_id, 'id', 'credit_limit', 'family_accounts')) ? ugandan_shillings(get_name($family_account_id, 'id', 'credit_limit', 'family_accounts')) : "Not Set" }} -
    {{ __('patient_finance.patient_dependant_of') }}{{ get_full_name($patient_is_a_dependant_of, "id", "first_name", "last_name", "patients") }} ({{ get_name($patient_is_a_dependant_of, "id", "number", "patients") }})
    {{ __('patient_finance.dependant_balance') }}{{ ugandan_shillings(get_balance_from_category_threshold($patient_is_a_dependant_of)) }}
    - -
    - {{ Form::label('total_amount_pay',__('patient_finance.total_amount')) }} - {{ Form::number('total_amount_pay','',['class' => 'form-control','readonly','id'=>'total_amount_pay']) }} -
    - - - - - - @if(!empty($co_payment)) -
    - {{ Form::label('co_payment_share',__('patient_finance.co_payment_share_slash_top_up')) }} - {{ Form::number('co_payment_share', '',['class' => 'form-control' ,'id'=>'co_payment_share', 'readonly']) }} - {{ Form::hidden('co_payment_share_percentage', $co_payment['co_payment_share'] ,['class' => 'form-control','id'=>'co_payment_share_percentage']) }} -
    - @endif - -
    - {{ Form::label('hospital_to_pay_general_discount',__('patient_finance.hospital_to_pay')) }} - {{ Form::number('hospital_to_pay_general_discount','',['class' => 'form-control','readonly','id'=>'hospital_to_pay_general_discount']) }} -
    - -
    -
    -
    - {{ Form::label('patient_to_pay',__('patient_finance.patient_to_pay')) }} - {{ Form::number('patient_to_pay','',['class' => 'form-control','id'=>'patient_to_pay', 'readonly']) }} - {{ Form::hidden('original_patient_to_pay','',['id'=>'original_patient_to_pay']) }} -
    -
    -
    -
    - {{ Form::button(__('patient_finance.calculate'),['type'=>'button','class'=>'btn btn-info', 'onclick' => 'calculate_values()', 'id' => 'calculate_button']) }} -
    -
    -
    - - @php - $patient_account_balance = is_patient_accounts_enabled() ? $patient->patient_account_balance : 0; - $patient_has_family_accounts = false; - - if ($family_account_id != null) { - $patient_has_family_accounts = true; - $family_accounts_credit_limit = is_numeric(get_name($family_account_id, 'id', 'credit_limit', 'family_accounts')) ? get_name($family_account_id, 'id', 'credit_limit', 'family_accounts') : 0; - $family_account_balance = get_name($family_account_id, "id", "current_balance", "family_accounts"); - } - @endphp - - @if($patient_account_balance > 0 || $patient_has_family_accounts) - - @endif - - - - - -
    -
    - -
    -
    - @if(Auth::user()->can('give-one-off-discounts') && empty($co_payment)) - - @endif -
    -
    -

    - - - -
    - {{ Form::label('balance',__('patient_finance.balance')) }} - {{ Form::number('balance',0,['class' => 'form-control','id'=>'balance','readonly']) }} -
    - - @if($treatment_balance > 0) -
    - {{ Form::label('treatment_balance', __('patient_finance.progressive_treatment_balance')) }} - {{ Form::number('treatment_balance', $treatment_balance, ['class' => 'form-control','readonly']) }} -
    - @endif - - @if(isset($discount->pay_later) && $discount->pay_later == 1 && Auth::user()->can('add-transaction-date-patient-invoices')) -
    - {{ Form::label('transaction_date', __('patient_finance.transaction_date')) }} - {{ Form::text('transaction_date', date('Y-m-d'), ['class'=>'form-control compulsory', 'readonly', 'id'=>'transaction_date']) }} -
    - @endif - - - -
    -
    - {{ Form::close() }} -
    -
    -
    - - - @php - $back_date = \Streamline\Models\HospitalInformation::first()->pluck('back_date'); - @endphp - - - @include('patient_finance::patient_finance.debt.debt_plan') - - - @include('patient_finance::patient_finance.credit_limit_modal') -@endsection - -@push('scripts') - - - - -@endpush - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_investigations.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_investigations.blade.php deleted file mode 100755 index 60664cd0..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_investigations.blade.php +++ /dev/null @@ -1,435 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - - {{-- Hide the print option here outside of the form --}} - @if(session()->get("print_cashier_receipt_pdf") == 1) - {{ Form::hidden('print_cashier_receipt_pdf', 1, ['id' => 'print_cashier_receipt_pdf']) }} - @endif - - @php $co_payment = check_patient_category_co_payment_status($patient->category_id); @endphp - - @if(check_if_episode_is_a_followup($episode->id)) - @php - $parent_episode_details = \Streamline\Models\PatientEpisode::find($episode->parent_episode_id); - - $parent_ordered_investigations = \Streamline\Models\OrderedInvestigation::where(['episode_id' => $episode->parent_episode_id,'payment_status' => '0','inpatient_bill_generated' => 0])->get(); - - $parent_paid_investigations = \Streamline\Models\InvestigationDeposit::where(['episode_id' => $episode->parent_episode_id])->orderBy('created_at', 'desc')->get(); - @endphp - @endif - -
    -
    -

    - {{ __('patient_finance.investigation_title') }} : {{ streamline_date($episode->created_at) }}{!! isset($parent_episode_details) ? " (" . __('.episode_is_review') . " ". streamline_date($parent_episode_details->created_at).")" : '' !!} -

    -
    -
    - -
    -
    - - @if(check_if_episode_is_a_followup($episode->id)) - @include('patient_finance::patient_finance.make_deposit_investigations_review') - @endif - - @if($paid_investigations->count() > 0 || count($invoiced_investigations) > 0) -
    -
    -
    -

    {{ __('patient_finance.investigation_payments') }}

    - -
    - - - - - - - - - - - - - - - @php $counter = 1; @endphp - @foreach($paid_investigations as $investigation) - @php - // check if this payment was from central billing - $central_billing_count = \Illuminate\Support\Facades\DB::table('central_billing_deposits')->where('receipt_number', $investigation->receipt_number)->count(); - $chi_count = \Illuminate\Support\Facades\DB::table('chi_deposits')->where('receipt_number', $investigation->receipt_number)->count(); - - if ($central_billing_count > 0 || $chi_count > 0){ - // skip this record so that it is only printed and cancelled from the central billings side - continue; - } - @endphp - - - - - - - - - - - - @php $counter++; @endphp - @endforeach - @foreach($invoiced_investigations as $investigation) - @php - // check if this payment was from central billing - $central_billing_count = \Illuminate\Support\Facades\DB::table('central_billing_deposits')->where('receipt_number', $investigation->receipt_number)->count(); - - if ($central_billing_count > 0){ - // skip this record so that it is only printed and cancelled from the central billings side - continue; - } - @endphp - - - - - - - - - - - @php $counter++; @endphp - @endforeach - - -
    -
    -
    -
    - @endif - -
    - - @if(patient_insurance_status($patient_id) == 1) - View CHI Deposits Receipts -

    - @endif - -
    -
    - @include('flash::message') - - @if($ordered_investigations->count() > 0) - @php - // ids of the ordered investigations - $investigation_ids = array(); - $eye_applications = []; // whether to double the price for both eyes or 1 - - // id of the current ordered investigations to update table later - $order_ids = array(); - - // amounts at the time of the inv was ordered - $inv_orders_amounts = []; - - foreach($ordered_investigations as $ordered_investigation){ - $investigation_ids = array_merge($investigation_ids, explode(",", $ordered_investigation->investigation_id)); - $eye_applications = array_merge($eye_applications, explode(",", $ordered_investigation->eye)); - array_push($order_ids, $ordered_investigation->id); - - $inv_orders_amounts = is_null($ordered_investigation->investigation_amount) ? array_merge($inv_orders_amounts, []) : array_merge($inv_orders_amounts, explode(",", $ordered_investigation->investigation_amount)); - } - - $count_orders = count($order_ids); - - // create strings from arrays to use when submitting - $order_ids_string = implode(',', $order_ids); - $investigation_ids_string = implode(',', $investigation_ids); - $ordered_inv_amounts_string = implode(',', $inv_orders_amounts); - @endphp - - @if(Auth::user()->can('price-list-category-change-billing')) - {{ Form::open(['route' => 'patient_finance.make_deposit_investigations', 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('price_list_category_id', 'Price List Category') }} - -
    -
    -
    -
    - {{ Form::button(__('patient_finance.apply_changes'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    - -
    - - {{ Form::close() }} - @endif - - {{ Form::open(['route' => 'patient_finance.store_deposit_investigations', 'data-toggle' => 'validator']) }} - - {{ Form::hidden('patient_id', $patient_id, ['id' => 'patient_id']) }} - {{ Form::hidden('episode_id', $episode_id, ['id' => 'episode_id']) }} - {{ Form::hidden('order_ids', $order_ids_string) }} - {{ Form::hidden('investigation_ids', $investigation_ids_string) }} - {{ Form::hidden('investigation_order_amounts', $ordered_inv_amounts_string) }} - {{ Form::hidden('tag_id', 2, ['id' => 'tag_id']) }} - -
    -
    -
    - - - - - - - - - @php - $investigation_amount_total = 0; - $investigation_amount = 0; - @endphp - - @for ($i = 0; $i < count($investigation_ids); $i++) - @php - - $eye_application_multiplier = ((isset($eye_applications[$i]) && $eye_applications[$i] == 2) ? 2 : 1); - - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_set && $price_list_set != 0){ - $investigation_amount = get_price_list_category_price($price_list_set, 2, $investigation_ids[$i]); - } elseif ($price_list_id) { - $investigation_amount = get_price_list_category_price($price_list_id, 2, $investigation_ids[$i]); - } else { - //if amount was set at time of ordering - if (isset($inv_orders_amounts[$i]) && !is_null($inv_orders_amounts[$i])) { - $investigation_amount = $inv_orders_amounts[$i]; - } else{ - $investigation_amount = get_name($investigation_ids[$i], "id", "non_insured_price", "investigations"); - } - } - - // add amounts to totals - $investigation_amount = $investigation_amount * $eye_application_multiplier; - $investigation_amount_total += $investigation_amount; - @endphp - - can('view-item-prices')) style="display: none" @endif> - - - - @endfor - - @if(!Auth::user()->can('view-item-prices')) - - - - - @endif - - {{ Form::hidden('investigation_amount_total', $investigation_amount_total) }} - -
    {{ __('patient_finance.investigation_name') }}{{ __('patient_finance.amount') }}
    - - - {{ Form::number('investigation_amount[]', $investigation_amount, ['class' => 'form-control col-sm-8 items_amounts', 'readonly']) }} -
    {{ __('patient_finance.investigations') }}{{ ugandan_shillings($investigation_amount_total) }}
    -
    - - @if(is_donor_feature_enabled()) -

    - -

    {{ __('patient_finance.discount') }}

    - -
    - - - - - - - - - - - - - - - -
    {{ __('patient_finance.discount') }}{{ __('patient_finance.donor_amount') }}{{ __('patient_finance.patient_amount') }}
    - {{ Form::select('donor_discount', $discount_options, '', ['class' => 'form-control col-sm-12', 'onchange' => 'show_discounts_amounts(this.value)']) }} -
    - - - {{ Form::hidden('discount_type', 0, ['id' => 'discount_type']) }} -
    - @endif -
    - - @include('patient_finance::patient_finance.make_deposit_totals_section') -
    - - {{ Form::close() }} - @else -

    {{ __('patient_finance.no_ordered_investigations') }}

    - @endif -
    -
    -
    - - - @include('patient_finance::patient_finance.debt.debt_plan') - - - @include('patient_finance::patient_finance.credit_limit_modal') -@endsection - -@push('scripts') - - -@endpush - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_investigations_review.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_investigations_review.blade.php deleted file mode 100755 index 88f74944..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_investigations_review.blade.php +++ /dev/null @@ -1,148 +0,0 @@ -
    -
    -
    -
    {{ __('patient_finance.investigation_original_episode') }} {{ streamline_date($parent_episode_details->created_at) }}
    - @if(count($parent_paid_investigations)) - {{ __('patient_finance.investigation_payments') }} -
    - - - - - - - - - - - - - - @php $counter = 1; @endphp - @foreach($parent_paid_investigations as $investigation) - - - - - - - - - - @php $counter++; @endphp - @endforeach - - -
    - @endif - - @if(count($parent_ordered_investigations) > 0) - - @php - // ids of the ordered investigations - $parent_investigation_ids = array(); - - // id of the current ordered investigations to update table later - $parent_order_ids = array(); - - foreach($parent_ordered_investigations as $parent_ordered_investigation){ - $parent_investigation_ids = array_merge($parent_investigation_ids, explode(",", $parent_ordered_investigation->investigation_id)); - array_push($parent_order_ids, $parent_ordered_investigation->id); - } - - $parent_count_orders = count($parent_order_ids); - - // create strings from arrays to use when submitting - $parent_order_ids_string = implode(',', $parent_order_ids); - $parent_investigation_ids_string = implode(',', $parent_investigation_ids); - @endphp - -
    - {{ __('patient_finance.unpaid_investigations') }} -
    -
    -
    - - - - - - - - - @php - $parent_investigation_amount_total = 0; - $parent_investigation_amount = 0; - @endphp - - @foreach ($parent_investigation_ids as $parent_investigation_id) - @php - - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_set && $price_list_set != 0){ - $parent_investigation_amount = get_price_list_category_price($price_list_set, 2, $parent_investigation_id); - } elseif ($price_list_id) { - $parent_investigation_amount = get_price_list_category_price($price_list_id, 2, $parent_investigation_id); - } else { - $parent_investigation_amount = get_name($parent_investigation_id, "id", "non_insured_price", "investigations"); - } - - // add amounts to totals - $parent_investigation_amount_total += $parent_investigation_amount; - @endphp - - - - - - @endforeach - - {{ Form::hidden('investigation_amount_total', $parent_investigation_amount_total) }} - -
    {{ __('patient_finance.investigation_name') }}{{ __('patient_finance.amount') }}
    - - - {{ Form::number('investigation_amount[]', $parent_investigation_amount, ['class' => 'form-control col-sm-8 investigation_amount', 'readonly']) }} -
    -
    -
    -
    -
    - {{ Form::open(['route' => 'patient_finance.select_payment_option']) }} - {{ Form::hidden('episode_id', $parent_episode_details->id) }} - - {{ Form::close() }} -
    -
    -
    -
    - @endif -
    -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_optical_items.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_optical_items.blade.php deleted file mode 100644 index ae92b0eb..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_optical_items.blade.php +++ /dev/null @@ -1,368 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - - {{-- Hide the print option here outside of the form --}} - @if(session()->get("print_cashier_receipt_pdf") == 1) - {{ Form::hidden('print_cashier_receipt_pdf', 1, ['id' => 'print_cashier_receipt_pdf']) }} - @endif - - @php $co_payment = check_patient_category_co_payment_status($patient->category_id); @endphp - -
    -
    -

    - {{ __('patient_finance.optics_for_episode') }} : {{ streamline_date($episode->created_at) }} -

    -
    -
    - -
    -
    - - @if(count($paid_opticals) > 0 || count($invoiced_opticals) > 0) -
    -
    -
    -

    {{ __('patient_finance.eye_glasses_payment') }}

    - - - - - - - - - - - - - - - @foreach($paid_opticals as $paid_optical) - @php - // check if this payment was from central billing - $central_billing_count = \Illuminate\Support\Facades\DB::table('central_billing_deposits')->where('receipt_number', $paid_optical->receipt_number)->count(); - - if ($central_billing_count > 0){ - // skip this record so that it is only printed and cancelled from the central billings side - continue; - } - @endphp - - - - - - - - - - - @endforeach - - @foreach($invoiced_opticals as $invoiced_optical) - @php - // check if this payment was from central billing - $central_billing_count = \Illuminate\Support\Facades\DB::table('central_billing_deposits')->where('receipt_number', $invoiced_optical->receipt_number)->count(); - - if ($central_billing_count > 0){ - // skip this record so that it is only printed and cancelled from the central billings side - continue; - } - @endphp - - - - - - - - - - - @endforeach - - -
    -
    -
    - @endif - -
    -
    - @include('flash::message') -
    - @if($ordered_opticals->count() > 0) - @php - $opticals_ids = []; - $opticals_quantity = []; - $order_ids = []; - - foreach($ordered_opticals as $ordered_optical){ - $opticals_ids = array_merge($opticals_ids, explode(",", $ordered_optical->eye_glasses_id)); - $opticals_quantity = array_merge($opticals_quantity, explode(",", $ordered_optical->quantity)); - array_push($order_ids, $ordered_optical->id); - } - - $count_orders = count($order_ids); - - // create strings from arrays to use when submitting - $order_ids_string = implode(',', $order_ids); - $opticals_ids_string = implode(',', $opticals_ids); - @endphp - - @if(Auth::user()->can('price-list-category-change-billing')) - {{ Form::open(['route' => 'patient_finance.make_deposit_optical_items', 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('price_list_category_id', 'Price List Category') }} - -
    -
    -
    -
    - {{ Form::button(__('patient_finance.apply_changes'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    - -
    - - {{ Form::close() }} - @endif - - {{ Form::open(['route' => 'patient_finance.store_optical_items_deposit', 'data-toggle' => 'validator']) }} - - {{ Form::hidden('patient_id', $patient_id, ['id' => 'patient_id']) }} - {{ Form::hidden('episode_id', $episode_id, ['id' => 'episode_id']) }} - {{ Form::hidden('order_ids', $order_ids_string) }} - {{ Form::hidden('optical_ids', $opticals_ids_string) }} - {{ Form::hidden('tag_id', 19, ['id' => 'tag_id']) }} - -
    -
    -
    - - - - - - - - - - - @php $orders_count = 0; @endphp - - @for ($i = 0; $i < count($opticals_ids); $i++) - @php - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_set && $price_list_set != 0){ - $optical_amount = get_price_list_category_price($price_list_set, 7, $opticals_ids[$i]); - } elseif ($price_list_id) { - $optical_amount = get_price_list_category_price($price_list_id, 7, $opticals_ids[$i]); - } else { - $optical_amount = get_name($opticals_ids[$i], "id", "non_insured_price", "eye_glasses"); - } - - // get the subtotal for this item - $optical_subtotal = $opticals_quantity[$orders_count] * $optical_amount; - @endphp - - - - - - - - - @php $orders_count++; @endphp - @endfor - -
    {{ __('patient_finance.eye_glasses') }}{{ __('patient_finance.unit_cost') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.amount') }}
    {{ get_name($opticals_ids[$i], "id", "name", "eye_glasses") }} - {{ Form::number('optical_amount[]', $optical_amount, ['class' => 'form-control col-sm-8', 'readonly']) }} - - {{ Form::number('quantity[]', $opticals_quantity[$orders_count], ['class' => 'form-control col-sm-8', 'readonly']) }} - - {{ Form::number('optical_subtotal[]', $optical_subtotal, ['class' => 'form-control col-sm-8 items_amounts', 'readonly']) }} -
    -
    - - @if(is_donor_feature_enabled()) -

    - -

    {{ __('patient_finance.discount') }}

    - -
    - - - - - - - - - - - - - - - -
    {{ __('patient_finance.discount') }}{{ __('patient_finance.donor_amount') }}{{ __('patient_finance.patient_amount') }}
    - {{ Form::select('donor_discount', $discount_options, '', ['class' => 'form-control col-sm-12', 'onchange' => 'show_discounts_amounts(this.value)']) }} -
    - - - {{ Form::hidden('discount_type', 0, ['id' => 'discount_type']) }} -
    - @endif -
    - - @include('patient_finance::patient_finance.make_deposit_totals_section') -
    - - {{ Form::close() }} - @else -

    {{ __('patient_finance.no_ordered_optics') }}

    - @endif -
    -
    -
    - - - @include('patient_finance::patient_finance.debt.debt_plan') - - - @include('patient_finance::patient_finance.credit_limit_modal') -@endsection - -@push('scripts') - - -@endpush - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_procedures.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_procedures.blade.php deleted file mode 100755 index b94ed108..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_procedures.blade.php +++ /dev/null @@ -1,401 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - - {{-- Hide the print option here outside of the form --}} - @if(session()->get("print_cashier_receipt_pdf") == 1) - {{ Form::hidden('print_cashier_receipt_pdf', 1, ['id' => 'print_cashier_receipt_pdf']) }} - @endif - - @php $co_payment = check_patient_category_co_payment_status($patient->category_id); @endphp - - @if(check_if_episode_is_a_followup($episode->id)) - @php - $parent_episode_details = \Streamline\Models\PatientEpisode::find($episode->parent_episode_id); - - $parent_episode_ordered_procedures = \Streamline\Models\OrderedProcedure::where(['episode_id' => $episode->parent_episode_id,'payment_status' => '0'])->get(); - - $parent_episode_paid_procedures = \Streamline\Models\ProcedureDeposit::where(['episode_id' => $episode->parent_episode_id])->orderBy('created_at', 'desc')->get(); - @endphp - @endif - -
    -
    -

    - {{ __('patient_finance.procedures_for_episode_started') }} : {{ streamline_date($episode->created_at) }}{!! isset($parent_episode_details) ? " (" . __('.episode_is_review') . " ". streamline_date($parent_episode_details->created_at).")" : '' !!} -

    -
    - -
    - - @if(check_if_episode_is_a_followup($episode->id)) - @include('patient_finance::patient_finance.make_deposit_procedures_review') - @endif - - @if($paid_procedures->count() > 0 || count($invoiced_procedures) > 0) -
    -
    -
    -

    {{ __('patient_finance.procedure_payments') }}

    - -
    - - - - - - - - - - - - - - - @php $counter = 1; @endphp - @foreach($paid_procedures as $procedure) - @php - // check if this payment was from central billing - $central_billing_count = \Illuminate\Support\Facades\DB::table('central_billing_deposits')->where('receipt_number', $procedure->receipt_number)->count(); - $chi_count = \Illuminate\Support\Facades\DB::table('chi_deposits')->where('receipt_number', $procedure->receipt_number)->count(); - - if ($central_billing_count > 0 || $chi_count > 0){ - // skip this record so that it is only printed and cancelled from the central billings side - continue; - } - @endphp - - - - - - - - - - - - @php $counter++; @endphp - @endforeach - @foreach($invoiced_procedures as $procedure) - @php - // check if this payment was from central billing - $central_billing_count = \Illuminate\Support\Facades\DB::table('central_billing_deposits')->where('receipt_number', $procedure->receipt_number)->count(); - - if ($central_billing_count > 0){ - // skip this record so that it is only printed and cancelled from the central billings side - continue; - } - @endphp - - - - - - - - - - - @php $counter++; @endphp - @endforeach - - -
    -
    -
    -
    - @endif - -
    -
    - @include('flash::message') -
    - - @if(patient_insurance_status($patient_id) == 1) - View CHI Deposits Receipts -

    - @endif - - @if($ordered_procedures->count() > 0) - @php - $procedure_ids = array(); - $order_ids = array(); - $eye_applications = []; // whether to double the price for both eyes or 1 - // amounts at the time was ordered - $procedures_orders_amounts = []; - - foreach($ordered_procedures as $ordered_procedure){ - $procedure_ids = array_merge($procedure_ids, explode(",", $ordered_procedure->procedure_id)); - $eye_applications = array_merge($eye_applications, explode(",", $ordered_procedure->eye)); - array_push($order_ids, $ordered_procedure->id); - //if amounts are put at the time of ordering - $procedures_orders_amounts = is_null($ordered_procedure->procedure_amount) ? array_merge($procedures_orders_amounts, []) : array_merge($procedures_orders_amounts, explode(",", $ordered_procedure->procedure_amount)); - } - - $count_orders = count($order_ids); - - // create strings from arrays to use when submitting - $order_ids_string = implode(',', $order_ids); - $procedure_ids_string = implode(',', $procedure_ids); - $procedure_orders_amounts_string = implode(',', $procedures_orders_amounts); - @endphp - - @if(Auth::user()->can('price-list-category-change-billing')) - {{ Form::open(['route' => 'patient_finance.make_deposit_procedures', 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('price_list_category_id', 'Price List Category') }} - -
    -
    -
    -
    - {{ Form::button(__('patient_finance.apply_changes'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    - -
    - - {{ Form::close() }} - @endif - - {{ Form::open(['route' => 'patient_finance.store_deposit_procedures', 'data-toggle' => 'validator']) }} - - {{ Form::hidden('patient_id', $patient_id, ['id' => 'patient_id']) }} - {{ Form::hidden('episode_id', $episode_id, ['id' => 'episode_id']) }} - {{ Form::hidden('order_ids', $order_ids_string) }} - {{ Form::hidden('procedure_ids', $procedure_ids_string) }} - {{ Form::hidden('procedure_order_amounts', $procedure_orders_amounts_string) }} - {{ Form::hidden('tag_id', 4, ['id' => 'tag_id']) }} - -
    -
    -
    - - - - - - - - - @php - $procedure_amount_total = 0; - $procedure_amount = 0; - @endphp - - @for ($i = 0; $i < count($procedure_ids); $i++) - @php - - $eye_application_multiplier = ((isset($eye_applications[$i]) && $eye_applications[$i] == 2) ? 2 : 1); - - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_set && $price_list_set != 0){ - $procedure_amount = get_price_list_category_price($price_list_set, 4, $procedure_ids[$i]); - } elseif ($price_list_id) { - $procedure_amount = get_price_list_category_price($price_list_id, 4, $procedure_ids[$i]); - } else { - //if amount was set at time of ordering - if (isset($procedures_orders_amounts[$i]) && !is_null($procedures_orders_amounts[$i])) { - $procedure_amount = $procedures_orders_amounts[$i]; - $eye_application_multiplier = 1; - } else{ - $procedure_amount = get_name($procedure_ids[$i], "id", "non_insured_price", "procedures"); - } - } - - // add amounts to totals - $procedure_amount = $procedure_amount * $eye_application_multiplier; - $procedure_amount_total += $procedure_amount; - @endphp - - can('view-item-prices')) style="display: none" @endif> - - - - @endfor - - @if(!Auth::user()->can('view-item-prices')) - - - - - @endif - - {{ Form::hidden('procedure_amount_total', $procedure_amount_total) }} - -
    {{ __('patient_finance.procedure_name') }}{{ __('patient_finance.amount') }}
    - - - {{ Form::number('procedure_amount[]', $procedure_amount, ['class' => 'form-control col-sm-8 items_amounts', 'readonly']) }} -
    {{ __('patient_finance.procedures') }}{{ ugandan_shillings($procedure_amount_total) }}
    -
    - - @if(is_donor_feature_enabled()) -

    - -

    {{ __('patient_finance.discount') }}

    - -
    - - - - - - - - - - - - - - - -
    {{ __('patient_finance.discount') }}{{ __('patient_finance.donor_amount') }}{{ __('patient_finance.patient_amount') }}
    - {{ Form::select('donor_discount', $discount_options, '', ['class' => 'form-control col-sm-12', 'onchange' => 'show_discounts_amounts(this.value)']) }} -
    - - - {{ Form::hidden('discount_type', 0, ['id' => 'discount_type']) }} -
    - @endif -
    - - @include('patient_finance::patient_finance.make_deposit_totals_section') - -
    - - {{ Form::close() }} - @else -

    {{ __('patient_finance.no_ordered_procedures') }}

    - @endif -
    -
    -
    - - - @include('patient_finance::patient_finance.debt.debt_plan') - - - @include('patient_finance::patient_finance.credit_limit_modal') -@endsection - -@push('scripts') - - -@endpush - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_procedures_review.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_procedures_review.blade.php deleted file mode 100755 index 29bec00d..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_procedures_review.blade.php +++ /dev/null @@ -1,144 +0,0 @@ -
    -
    -
    -
    {{ __('patient_finance.procedures_original_episode') }} {{ streamline_date($parent_episode_details->created_at) }}
    - @if(count($parent_episode_paid_procedures) > 0) - {{ __('patient_finance.procedure_payments') }} -
    - - - - - - - - - - - - - - @php $counter = 1; @endphp - @foreach($parent_episode_paid_procedures as $procedure) - - - - - - - - - - @php $counter++; @endphp - @endforeach - - -
    - @endif - - @if(count($parent_episode_ordered_procedures) > 0) - @php - $parent_episode_procedure_ids = array(); - $parent_episode_order_ids = array(); - - foreach($parent_episode_ordered_procedures as $parent_episode_ordered_procedure){ - $parent_episode_procedure_ids = array_merge($parent_episode_procedure_ids, explode(",", $parent_episode_ordered_procedure->procedure_id)); - array_push($parent_episode_order_ids, $parent_episode_ordered_procedure->id); - } - - $count_orders = count($parent_episode_order_ids); - - // create strings from arrays to use when submitting - $parent_episode_order_ids_string = implode(',', $parent_episode_order_ids); - $parent_episode_procedure_ids_string = implode(',', $parent_episode_procedure_ids); - @endphp - -
    - {{ __('patient_finance.unpaid_procedures') }} -
    -
    -
    - - - - - - - - - @php - $parent_episode_procedure_amount_total = 0; - $parent_episode_procedure_amount = 0; - @endphp - - @foreach ($parent_episode_procedure_ids as $parent_episode_procedure_id) - @php - - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_set && $price_list_set != 0){ - $parent_episode_procedure_amount = get_price_list_category_price($price_list_set, 4, $parent_episode_procedure_id); - } elseif ($price_list_id) { - $parent_episode_procedure_amount = get_price_list_category_price($price_list_id, 4, $parent_episode_procedure_id); - } else { - $parent_episode_procedure_amount = get_name($parent_episode_procedure_id, "id", "non_insured_price", "procedures"); - } - - // add amounts to totals - $parent_episode_procedure_amount_total += $parent_episode_procedure_amount; - @endphp - - - - - - @endforeach - - {{ Form::hidden('procedure_amount_total', $parent_episode_procedure_amount_total) }} - -
    {{ __('patient_finance.procedure_name') }}{{ __('patient_finance.amount') }}
    - - - {{ Form::number('procedure_amount[]', $parent_episode_procedure_amount, ['class' => 'form-control col-sm-8 procedure_amount', 'readonly']) }} -
    -
    -
    -
    -
    - {{ Form::open(['route' => 'patient_finance.select_payment_option']) }} - {{ Form::hidden('episode_id', $parent_episode_details->id) }} - - {{ Form::close() }} -
    -
    -
    -
    - @endif -
    -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_services.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_services.blade.php deleted file mode 100755 index 10cf9be4..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_services.blade.php +++ /dev/null @@ -1,521 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - - {{-- Hide the print option here outside of the form --}} - @if(session()->get("print_cashier_receipt_pdf") == 1) - {{ Form::hidden('print_cashier_receipt_pdf', 1, ['id' => 'print_cashier_receipt_pdf']) }} - @endif - - @php - $co_payment = check_patient_category_co_payment_status($patient->category_id); - $service_items_array = []; - $patient_insurance_status = patient_insurance_status($patient_id); - @endphp - - - @if(check_if_episode_is_a_followup($episode->id)) - @php - $parent_episode_details = \Streamline\Models\PatientEpisode::find($episode->parent_episode_id); - - $parent_episode_paid_services = \Streamline\Models\ServiceDeposit::where(['episode_id' => $episode->parent_episode_id, 'service_type' => $deposit_type])->orderBy('created_at', 'desc')->get(); - @endphp - @endif - -
    -
    -

    {{ $deposit_type }} {{ __('patient_finance.for_episode_started') }} : {{ streamline_date($episode->created_at) }}{!! isset($parent_episode_details) ? " (" . __('.episode_is_review') . " ". streamline_date($parent_episode_details->created_at).")" : '' !!}

    -
    -
    - -
    -
    - - @if(check_if_episode_is_a_followup($episode->id)) - @include('patient_finance::patient_finance.make_deposit_services_review') - @endif - - @if($paid_services->count() > 0 || count($invoiced_services) > 0) -
    -
    -
    - -

    {{ __('patient_finance.service_payment') }}

    - - - - - - - - - - - - - - - - @php $counter = 1; @endphp - @foreach($paid_services as $service) - @php - // check if this payment was from central billing - $central_billing_count = \Illuminate\Support\Facades\DB::table('central_billing_deposits')->where('receipt_number', $service->receipt_number)->count(); - $chi_count = \Illuminate\Support\Facades\DB::table('chi_deposits')->where('receipt_number', $service->receipt_number)->count(); - - if ($central_billing_count > 0 || $chi_count > 0){ - // skip this record so that it is only printed and cancelled from the central billings side - continue; - } - @endphp - - - - - - - - - - - - @php $counter++; @endphp - @endforeach - @foreach($invoiced_services as $service) - @php - // check if this payment was from central billing - $central_billing_count = \Illuminate\Support\Facades\DB::table('central_billing_deposits')->where('receipt_number', $service->receipt_number)->count(); - - if ($central_billing_count > 0){ - // skip this record so that it is only printed and cancelled from the central billings side - continue; - } - @endphp - - - - - - - - - - - @php $counter++; @endphp - @endforeach - - -
    -
    -
    - @endif - -
    -
    - @include('flash::message') -
    - - @if($patient_insurance_status == 1) - View CHI Deposits Receipts -

    - @endif - - - @if($service_items->count() > 0) - @if(Auth::user()->can('price-list-category-change-billing')) - @if($tag_id == 6) - {{ Form::open(['route' => 'patient_finance.make_deposit_consultation', 'data-toggle' => 'validator']) }} - @elseif($tag_id == 8) - {{ Form::open(['route' => 'patient_finance.make_deposit_other_services', 'data-toggle' => 'validator']) }} - @elseif($tag_id == 7) - {{ Form::open(['route' => 'patient_finance.make_deposit_co_payments', 'data-toggle' => 'validator']) }} - @endif - -
    -
    -
    - {{ Form::label('price_list_category_id', 'Price List Category') }} - -
    -
    -
    -
    - {{ Form::button(__('patient_finance.apply_changes'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    - -
    - - {{ Form::close() }} - @endif - - {{ Form::open(['route' => 'patient_finance.store_deposit_services', 'data-toggle' => 'validator']) }} - - {{ Form::hidden('patient_id', $patient_id, ['id' => 'patient_id']) }} - {{ Form::hidden('episode_id', $episode_id, ['id' => 'episode_id']) }} - {{ Form::hidden('service_type', $deposit_type, ['id' => 'service_type']) }} - {{ Form::hidden('tag_id', $tag_id, ['id' => 'tag_id']) }} - - @php - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - @endphp - - @if($price_list_id && !($price_list_set && $price_list_set != 0)) - {{ Form::hidden('price_list_category', $price_list_id, ['id' => 'price_list_category']) }} - @else - {{ Form::hidden('price_list_category', $price_list_set, ['id' => 'price_list_category']) }} - @endif - -
    -
    -
    - - - - - - - - - - - - - - - - @if(!empty($used_services)) - @foreach($used_services as $used_service) - @php - $service_ids = explode(",", $used_service->service_id); - $service_quantity = explode(",", $used_service->quantity); - $ordered_services_amounts = (is_null($used_service->service_amount) || $used_service->service_amount == '') ? []: explode(",", $used_service->service_amount); - $total_services_costs = 0; - @endphp - - {{ Form::hidden('order_ids[]', $used_service->id) }} - - @for($i = 0; $i < count($service_ids); $i++) - can('view-item-prices')) style="display: none" @endif> - - - - @php - $service_cost = 0; - - if($price_list_set && $price_list_set != 0){ - $service_cost = get_price_list_category_price($price_list_set, 6, $service_ids[$i]); - }else if($price_list_id){ - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - - $service_cost = get_price_list_category_price($price_list_id, 6, $service_ids[$i]); - } else { - $pre_order = \Streamline\Models\Services::withTrashed()->find($service_ids[$i]); - - //if amount was set at time of ordering - if (isset($ordered_services_amounts[$i]) && !is_null($ordered_services_amounts[$i])) { - $service_cost = $ordered_services_amounts[$i]; - } else{ - $service_cost = $pre_order->non_insured_price; - } - } - - $total_services_costs += ($service_cost * $service_quantity[$i]); - @endphp - - - @endfor - - @if(!Auth::user()->can('view-item-prices')) - - - - - - @endif - @endforeach - @endif - -
    #{{ $deposit_type }}{{ __('patient_finance.amount') }}
    - - - -
    - {{ Form::hidden('service_id[]', $service_ids[$i]) }} - {{ Form::text('service_text[]', get_name($service_ids[$i], "id", "name", "services"), ['class' => 'form-control', 'readonly']) }} - - -
    {{ $deposit_type }}{{ ugandan_shillings($total_services_costs) }}
    -
    - -
    - - -
    - - @if(is_donor_feature_enabled()) -

    - -

    {{ __('patient_finance.discount') }}

    - -
    - - - - - - - - - - - - - - - -
    {{ __('patient_finance.discount') }}{{ __('patient_finance.donor_amount') }}{{ __('patient_finance.patient_amount') }}
    - {{ Form::select('donor_discount', $discount_options, '', ['class' => 'form-control col-sm-12', 'onchange' => 'show_discounts_amounts(this.value)']) }} -
    - - - {{ Form::hidden('discount_type', 0, ['id' => 'discount_type']) }} -
    - @endif -
    - - @include('patient_finance::patient_finance.make_deposit_totals_section') -
    - {{ Form::close() }} - @else -

    {{ __('patient_finance.there_are_no_registered') }} {{ $deposit_type }} {{ __('patient_finance.records_in_the_system') }}

    - @endif -
    -
    -
    - - - @include('patient_finance::patient_finance.debt.debt_plan') - - - @include('patient_finance::patient_finance.credit_limit_modal') -@endsection - -@push('scripts') - - -@endpush - -@push('styles') - -@endpush - - - diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_services_review.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_services_review.blade.php deleted file mode 100755 index dbca134b..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_services_review.blade.php +++ /dev/null @@ -1,67 +0,0 @@ -
    -
    -
    -
    {{ __('patient_finance.for_episode_started') }} {{ streamline_date($parent_episode_details->created_at) }}
    - @if(count($parent_episode_paid_services) > 0) - {{ __('patient_finance.paid_consultations') }} -
    - - - - - - - - - - - - - - @php $counter = 1; @endphp - @foreach($parent_episode_paid_services as $service) - - - - - - - - - - @php $counter++; @endphp - @endforeach - - -
    - @else -
    {{ __('patient_finance.no_consultation_in_period') }}
    - @endif -
    -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_totals_section.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_totals_section.blade.php deleted file mode 100755 index 2c92feb7..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_totals_section.blade.php +++ /dev/null @@ -1,1005 +0,0 @@ -@php use Streamline\Services\PatientFinance\PatientPaymentMethodService; @endphp - -@push('styles') - -@endpush - - - - -
    0) style="display: none" @endif> - - - - - - - - - - - - - - - - - - - - - - @if(!empty($co_payment)) - - - - - @endif - - @php - $does_patient_category_have_threshold = does_patient_category_have_threshold($patient->category_id); - $patient_is_a_dependant_of = patient_is_a_dependant_of($patient_id); - @endphp - - - - - @if(patient_insurance_status($patient->id) == 1) - - - - - @endif - - @php $family_account_id = is_family_account_feature_enabled() ? get_patient_family_account_id($patient->id) : null; @endphp - @if($family_account_id != null) - - - - - - - - - - - - - @endif - - @if($does_patient_category_have_threshold || !is_null($patient_is_a_dependant_of)) - - - - - - - - - - {{ Form::hidden('dependants_balance',get_balance_from_category_threshold($patient_is_a_dependant_of)) }} - @endif -
    {{ __('patient_finance.patient_names') }} - {!! insurance_flag($patient->id) !!} - @if(patient_insurance_status($patient->id) == 1) - ({{ __('patients.joined_chi_scheme') }} {{patient_duration_on_chi_sheme($patient->id)}}) - @endif -
    {{ __('patient_finance.patient_number') }}{{ $patient->number }}
    {{ __('patient_finance.price_list_category') }} - @if($price_list_set && $price_list_set != 0) - {{ get_name(get_name($price_list_set, 'id', 'patient_category_id', 'price_list_categories'), 'id', 'name', 'patient_categories') }} - @else - {{ __('patient_finance.default') }} - @endif -
    {{ __('patient_finance.patient_discount') }} - @if(isset($discount->discount)) - {{ $discount->discount }} % - {{ Form::hidden('discount_percentage', $discount->discount, ['id' => 'discount_percentage']) }} - @else - 0 % - {{ Form::hidden('discount_percentage', 0, ['id' => 'discount_percentage']) }} - @endif -
    {{ __('patient_finance.patient_category') }}{{ $categories[$patient->category_id] ?? "N/A" }}
    {{ __('patient_finance.patient_co_payment_share') }}{{ $co_payment['co_payment_share'] }} %
    {{ __('patient_finance.pay_later') }} - @if(isset($discount->pay_later) && $discount->pay_later == 1) - {{ __('patient_finance.yes') }} - {{ Form::hidden('pay_later', 1, ['id' => 'pay_later']) }} - - @if($price_list_set && $price_list_set != 0 && can_price_list_pay_later($price_list_set)) - {{ Form::hidden('patient_category_id', get_name($price_list_set, 'id', 'patient_category_id', 'price_list_categories')) }} - @else - {{ Form::hidden('patient_category_id', $patient->category_id) }} - @endif - @elseif($does_patient_category_have_threshold || !is_null($patient_is_a_dependant_of)) - {{-- if patient is some one's dependant then use the dependants patient category --}} - {{ Form::hidden('pay_later', 1, ['id' => 'pay_later']) }} - {{ Form::hidden('patient_category_id', get_name($patient_is_a_dependant_of, 'id', 'category_id','patients')) }} - @else - {{ __('patient_finance.no') }} - {{ Form::hidden('pay_later', 0, ['id' => 'pay_later']) }} - @endif -
    {{ __('patient_finance.insurance_status') }} - {{ __('patient_finance.active') }} -
    {{ __('patient_finance.family_account_of') }} - @php $family_head_id = get_name($family_account_id, 'id', 'family_head_id', 'family_accounts'); @endphp - - {{ get_full_name($family_head_id, 'id', 'first_name', 'last_name', 'patients') }} - ({{ get_name($family_head_id, 'id', 'number', 'patients') }}) -
    {{ __('patient_finance.family_account_balance') }} - {{ is_numeric(get_name($family_account_id, 'id', 'current_balance', 'family_accounts')) ? ugandan_shillings(get_name($family_account_id, 'id', 'current_balance', 'family_accounts')) : "N/A" }} -
    {{ __('family_accounts.family_credit_limit') }} - {{ is_numeric(get_name($family_account_id, 'id', 'credit_limit', 'family_accounts')) ? ugandan_shillings(get_name($family_account_id, 'id', 'credit_limit', 'family_accounts')) : "Not Set" }} -
    {{ __('patient_finance.patient_dependant_of') }}{{ get_full_name($patient_is_a_dependant_of, "id", "first_name", "last_name", "patients") }}
    {{ __('patient_finance.dependant_balance') }}{{ ugandan_shillings(get_balance_from_category_threshold($patient_is_a_dependant_of)) }}
    - -
    - {{ Form::label('total_amount_pay',__('patient_finance.total_amount')) }} - {{ Form::number('total_amount_pay','',['class' => 'form-control','readonly','id'=>'total_amount_pay']) }} -
    - - @if(patient_insurance_status($patient->id) == 1) -
    - {{ Form::label('insurance_to_pay', __('patient_finance.insurance_to_pay')) }} - {{ Form::number('insurance_to_pay','',['class' => 'form-control','readonly','id'=>'insurance_to_pay']) }} -
    - @endif - - - - @if(is_donor_feature_enabled()) -
    - {{ Form::label('donor_to_pay',__('patient_finance.donor_to_pay')) }} - {{ Form::number('donor_to_pay','',['class' => 'form-control','readonly','id'=>'donor_to_pay']) }} -
    - @endif - - - - @if(!empty($co_payment)) -
    - {{ Form::label('co_payment_share',__('patient_finance.co_payment_share_slash_top_up')) }} - {{ Form::number('co_payment_share', '',['class' => 'form-control' ,'id'=>'co_payment_share', 'required', 'onkeyup' => 're_calculate_patient_category_to_pay_after_topup()']) }} - {{ Form::hidden('co_payment_share_percentage', $co_payment['co_payment_share'] ,['class' => 'form-control','id'=>'co_payment_share_percentage']) }} -
    - @endif - - @if(is_donor_feature_enabled()) -
    - {{ Form::label('hospital_to_pay_selected_discount',__('patient_finance.hospital_to_pay_select')) }} - {{ Form::number('hospital_to_pay_selected_discount','',['class' => 'form-control','readonly','id'=>'hospital_to_pay_selected_discount']) }} -
    - @endif - -
    - {{ Form::label('hospital_to_pay_general_discount',__('patient_finance.hospital_to_pay')) }} - {{ Form::number('hospital_to_pay_general_discount','',['class' => 'form-control','readonly','id'=>'hospital_to_pay_general_discount']) }} -
    - - - -
    -
    -
    - {{ Form::label('patient_to_pay',__('patient_finance.patient_to_pay')) }} - {{ Form::number('patient_to_pay','',['class' => 'form-control','id'=>'patient_to_pay','onkeyup'=>'get_balance()', 'required']) }} - {{ Form::hidden('original_patient_to_pay','',['id'=>'original_patient_to_pay']) }} -
    -
    -
    -
    - {{ Form::button(__('patient_finance.calculate'),['type'=>'button','class'=>'btn btn-info', 'onclick' => 'calculate_values()', 'id' => 'calculate_button']) }} -
    -
    -
    - - @php - $patient_account_balance = is_patient_accounts_enabled() ? $patient->patient_account_balance : 0; - $patient_has_family_accounts = false; - - if ($family_account_id != null) { - $patient_has_family_accounts = true; - $family_accounts_credit_limit = is_numeric(get_name($family_account_id, 'id', 'credit_limit', 'family_accounts')) ? get_name($family_account_id, 'id', 'credit_limit', 'family_accounts') : 0; - $family_account_balance = get_name($family_account_id, "id", "current_balance", "family_accounts"); - } - @endphp - - @if($patient_account_balance > 0 || $patient_has_family_accounts) - - @endif - - - - - -
    -
    - -
    -
    - @if(Auth::user()->can('give-one-off-discounts')) - - @endif -
    -
    - -

    - - - -
    - {{ Form::label('balance',__('patient_finance.balance')) }} - {{ Form::number('balance',0,['class' => 'form-control','id'=>'balance','readonly']) }} -
    - - @if(isset($treatment_balance) && $treatment_balance > 0) -
    - {{ Form::label('treatment_balance', 'Progressive Treatment Balance') }} - {{ Form::number('treatment_balance', $treatment_balance, ['class' => 'form-control','readonly']) }} -
    - @endif - - -
    - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_treatment.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_treatment.blade.php deleted file mode 100755 index 601d0275..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_treatment.blade.php +++ /dev/null @@ -1,457 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - - {{-- Hide the print option here outside of the form --}} - @if(session()->get("print_cashier_receipt_pdf") == 1) - {{ Form::hidden('print_cashier_receipt_pdf', 1, ['id' => 'print_cashier_receipt_pdf']) }} - @endif - - @php - $co_payment = check_patient_category_co_payment_status($patient->category_id); - $treatment_balance = 0; - @endphp - - @if(check_if_episode_is_a_followup($episode->id)) - @php - $parent_episode_details = \Streamline\Models\PatientEpisode::find($episode->parent_episode_id); - - $parent_episode_treatment = \Streamline\Models\Treatment::where(['payment_status' => 0, 'episode_id' => $episode->parent_episode_id])->first(); - - $parent_episode_paid_treatments = \Streamline\Models\TreatmentDeposits::where(['episode_id' => $episode->parent_episode_id])->get(); - @endphp - @endif - -
    -
    -

    {{ __('patient_finance.treatment_for_episode') }} : {{ streamline_date($episode->created_at) }}{!! isset($parent_episode_details) ? " (" . __('.episode_is_review') . " ". streamline_date($parent_episode_details->created_at).")" : '' !!}

    -
    -
    - -
    -
    - - @if(check_if_episode_is_a_followup($episode->id)) - @include('patient_finance::patient_finance.make_deposit_treatment_review') - @endif - - @if(count($paid_treatments) > 0 || count($invoiced_treatments) > 0) -
    -
    -
    -

    {{ __('patient_finance.treatment_payment') }}

    - - - - - - - - - - - - - - - @foreach($paid_treatments as $paid_treatment) - @php - // check if this payment was from central billing - $central_billing_count = \Illuminate\Support\Facades\DB::table('central_billing_deposits')->where('receipt_number', $paid_treatment->receipt_number)->count(); - $chi_count = \Illuminate\Support\Facades\DB::table('chi_deposits')->where('receipt_number', $paid_treatment->receipt_number)->count(); - - if ($central_billing_count > 0 || $chi_count > 0){ - // skip this record so that it is only printed and cancelled from the central billings side - continue; - } - @endphp - - - - - - - - - - - - @endforeach - @foreach($invoiced_treatments as $paid_treatment) - @php - // check if this payment was from central billing - $central_billing_count = \Illuminate\Support\Facades\DB::table('central_billing_deposits')->where('receipt_number', $paid_treatment->receipt_number)->count(); - - if ($central_billing_count > 0){ - // skip this record so that it is only printed and cancelled from the central billings side - continue; - } - @endphp - - - - - - - - - - - @endforeach - - -
    -
    -
    - @endif - -
    -
    - @include('flash::message') -
    - - @if(patient_insurance_status($patient_id) == 1) - View CHI Deposits Receipts -

    - @endif - - @if(count($treatments) > 0) - @if(Auth::user()->can('price-list-category-change-billing')) - {{ Form::open(['route' => 'patient_finance.make_deposit_treatment', 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('price_list_category_id', 'Price List Category') }} - -
    -
    -
    -
    - {{ Form::button(__('patient_finance.apply_changes'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    - -
    - - {{ Form::close() }} - @endif - - {{ Form::open(['route' => 'patient_finance.store_deposit_treatment', 'data-toggle' => 'validator']) }} - - {{ Form::hidden('patient_id', $patient_id, ['id' => 'patient_id']) }} - {{ Form::hidden('episode_id', $episode_id, ['id' => 'episode_id']) }} - {{ Form::hidden('tag_id', 3, ['id' => 'tag_id']) }} - -
    -
    -
    - - - - - - - - - - - @foreach($treatments as $treatment) - @if(!(is_incoming_prescriptions_feature_enabled() && $treatment->confirmation_status == 0)) - @php - $treatment_amount = 0; - $treatment_amount_total = 0; - $total_treatment_amount = 0; - $treatment_balance += get_progressive_treatment_balance($treatment->id, $patient_id); - - // check if treatment is altered and is using old model - if ($treatment->altered != 0 && $treatment->is_new_alter_model == 0) { - $altered_drugs = get_name($treatment->altered, 'id', 'drugs', 'patient_dispensings'); - $altered_quantities = get_name($treatment->altered, 'id', 'quantity_dispensed', 'patient_dispensings'); - - $drug_ids = ($altered_drugs != 'N/A') ? explode(",", $altered_drugs) : explode(",", $treatment->drugs); - $drug_quantities = ($altered_quantities != 'N/A') ? explode(",", $altered_quantities) : explode(",", $treatment->quantities_dispensed); - } else { - $drug_ids = explode(",", $treatment->drugs); - $drug_quantities = explode(",", $treatment->quantities_dispensed); - } - - $purchased_elsewhere = explode(",", $treatment->purchased_elsewhere); - $remove_pos_row = ($treatment->is_pos == 1) ? "remove_before_calculation" : ""; - @endphp - - - - - @if (!in_array(0, $purchased_elsewhere)) - - {{ Form::hidden('all_records_purchased_elsewhere[]', $treatment->id) }} - @endif - - - @for ($i = 0; $i < count($drug_ids); $i++) - @if(get_name($drug_ids[$i], "id", "name", "drugs") != "N/A") - @php - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_set && $price_list_set != 0){ - $treatment_amount = get_price_list_category_price($price_list_set, 3, $drug_ids[$i]); - } elseif ($price_list_id) { - $treatment_amount = get_price_list_category_price($price_list_id, 3, $drug_ids[$i]); - } else { - $treatment_amount = get_name($drug_ids[$i], "id", "non_insured_price", "drugs"); - } - - if(isset($drug_quantities[$i]) && $drug_quantities[$i] != ""){ - $treatment_subtotal = $drug_quantities[$i] * $treatment_amount; - } else { - $treatment_subtotal = 0; - } - - // add amounts to totals - $treatment_amount_total += $treatment_amount; - @endphp - - @if (count($purchased_elsewhere) > 0 && isset($purchased_elsewhere[$i]) && $purchased_elsewhere[$i] == 1) - can('view-item-prices')) style="display: none" @endif class="order_id_{{ $treatment->id }} {{ $remove_pos_row }}"> - - - - - - @else - can('view-item-prices')) style="display: none" @endif class="order_id_{{ $treatment->id }} {{ $remove_pos_row }}"> - - - - - - {{ Form::hidden('treatment_item[]', $drug_ids[$i]) }} - {{ Form::hidden('treatment_id[]', $treatment->id) }} - - @endif - @endif - @endfor - - @if(!Auth::user()->can('view-item-prices')) - - - - - @endif - @else - - - - @endif - @endforeach - -
    {{ __('patient_finance.item_name') }}{{ __('patient_finance.item_quantity') }}{{ __('patient_finance.item_price') }}{{ __('patient_finance.subtotal') }}
    - @if($treatment->is_pos == 1) - -     - @endif - - {{ __('patient_finance.order') }} #{{ $treatment->id }} - {{ __('patient_finance.order_created_by') }}: {{ get_full_name($treatment->created_by, 'id', 'first_name', 'last_name', 'users') }} -
    - - @if (!is_chi_enabled() && !is_drug_covered_by_pay_later_category(get_name($patient_id, 'id', 'category_id', 'patients'), $drug_ids[$i])) -   
    {{ __('patient_finance.not_covered_by') }} {{ get_name(get_name($patient_id, 'id', 'category_id', 'patients'), 'id', 'name', 'patient_categories') }} - @endif -
    - {{ Form::number('treatment_quantity_show', $drug_quantities[$i], ['class' => 'form-control col-sm-8', 'readonly']) }} - - {{ Form::number('treatment_amount_show', $treatment_amount, ['class' => 'form-control col-sm-8', 'readonly']) }} - {{ __('patient_finance.purchased_from_else_where') }}
    - - @if (!is_chi_enabled() && !is_drug_covered_by_pay_later_category(get_name($patient_id, 'id', 'category_id', 'patients'), $drug_ids[$i])) -   
    Not covered by {{ get_name(get_name($patient_id, 'id', 'category_id', 'patients'), 'id', 'name', 'patient_categories') }} - @endif -
    - {{ Form::number('treatment_quantity[]', $drug_quantities[$i], ['class' => 'form-control col-sm-8', 'readonly']) }} - - {{ Form::number('treatment_amount[]', $treatment_amount, ['class' => 'form-control col-sm-8', 'readonly']) }} - - @php $total_treatment_amount += $treatment_subtotal; @endphp - {{ Form::number('treatment_subtotal[]', $treatment_subtotal, ['class' => 'form-control col-sm-8 items_amounts', 'readonly']) }} -
    {{ __('patient_finance.treatment') }}{{ ugandan_shillings($total_treatment_amount) }}

    {{ __('patient_finance.treatments_have_not_yet_been_confirmed_by_pharmacy') }}

    -
    - - @if(is_donor_feature_enabled()) -

    - -

    {{ __('patient_finance.discount') }}

    - -
    - - - - - - - - - - - - - - - -
    {{ __('patient_finance.discount') }}{{ __('patient_finance.donor_amount') }}{{ __('patient_finance.patient_amount') }}
    - {{ Form::select('donor_discount', $discount_options, '', ['class' => 'form-control col-sm-12', 'onchange' => 'show_discounts_amounts(this.value)']) }} -
    - - - {{ Form::hidden('discount_type', 0, ['id' => 'discount_type']) }} -
    - @endif -
    - - @include('patient_finance::patient_finance.make_deposit_totals_section') -
    - - {{ Form::close() }} - @else -

    {{ __('patient_finance.no_new_ordered_treatments') }}

    - @endif -
    -
    -
    - - - @include('patient_finance::patient_finance.debt.debt_plan') - - - @include('patient_finance::patient_finance.credit_limit_modal') -@endsection - -@push('scripts') - - - -@endpush - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_treatment_review.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_treatment_review.blade.php deleted file mode 100755 index 28ef78a7..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_deposit_treatment_review.blade.php +++ /dev/null @@ -1,157 +0,0 @@ -@php - $treatment_amount = 0; -@endphp -
    -
    -
    -
    {{ __('patient_finance.treatment_for_episode') }} {{ streamline_date($parent_episode_details->created_at) }}
    - @if(count($parent_episode_paid_treatments) > 0) - {{ __('patient_finance.treatment_payment') }} -
    - - - - - - - - - - - - - - @foreach($parent_episode_paid_treatments as $paid_treatment) - - - - - - - - - - @endforeach - -
    {{ __('patient_finance.receipt_number') }}{{ __('patient_finance.treatment_items') }}{{ __('patient_finance.treatment_quantities') }}{{ __('patient_finance.treatment_subtotals') }}{{ __('patient_finance.patient_amount_paid') }}{{ __('patient_finance.payment_date') }}
    {{ $paid_treatment->receipt_number }} - @php $items_counter = 1; @endphp - @php $treatment_items_array = explode(",", $paid_treatment->treatment_items); @endphp - @foreach($treatment_items_array as $item) - {{ $items_counter }}. {{ get_name($item, 'id', 'name', 'drugs') }}
    - @php $items_counter++; @endphp - @endforeach -
    - @php $items_counter = 1; @endphp - @php $treatment_quantity_array = explode(",", $paid_treatment->treatment_quantities); @endphp - @foreach($treatment_quantity_array as $quantity) - {{ $items_counter }}. {{ $quantity }}
    - @php $items_counter++; @endphp - @endforeach -
    - @php $items_counter = 1; @endphp - @php $treatment_price_array = explode(",", $paid_treatment->treatment_subtotals); @endphp - @foreach($treatment_price_array as $price) - {{ $items_counter }}. {{ ugandan_shillings($price) }}
    - @php $items_counter++; @endphp - @endforeach -
    - {{ ugandan_shillings($paid_treatment->patient_amount_paid) }} - - @if($paid_treatment->refund_amount > 0) -

    - - {{ ugandan_shillings($paid_treatment->refund_amount) }} {{ __('patient_finance.was_refunded') }} - - @endif -
    {{ streamline_date_time($paid_treatment->created_at) }} - {{ __('patient_finance.print_receipt') }} -
    -
    - @endif - - @if(!is_null($parent_episode_treatment)) -
    - {{ __('patient_finance.unpaid_treatment') }} -
    -
    -
    - - - - - - - - - - - @php - $parent_treatment_amount = 0; - $parent_treatment_amount_total = 0; - - // ids of the ordered drugs - $parent_drug_ids = explode(",", $parent_episode_treatment->drugs); - - // quantities of the ordered drugs - $parent_drug_quantities = explode(",", $parent_episode_treatment->quantities_dispensed); - @endphp - - @for ($i = 0; $i < count($parent_drug_ids); $i++) - @if(get_name($parent_drug_ids[$i], "id", "name", "drugs") != "N/A") - @php - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_set && $price_list_set != 0){ - $parent_treatment_amount = get_price_list_category_price($price_list_set, 3, $parent_drug_ids[$i]); - } elseif ($price_list_id) { - $parent_treatment_amount = get_price_list_category_price($price_list_id, 3, $parent_drug_ids[$i]); - } else { - $parent_treatment_amount = get_name($parent_drug_ids[$i], "id", "non_insured_price", "drugs"); - } - - if(isset($parent_drug_quantities[$i]) && $parent_drug_quantities[$i] != ""){ - $parent_treatment_subtotal = $parent_drug_quantities[$i] * $parent_treatment_amount; - } else { - $parent_treatment_subtotal = 0; - } - - // add amounts to totals - $parent_treatment_amount_total += $parent_treatment_amount; - @endphp - - - - - - - - - {{ Form::hidden('treatment_item[]', $parent_drug_ids[$i]) }} - @endif - @endfor - -
    {{ __('patient_finance.item_name') }}{{ __('patient_finance.item_quantity') }}{{ __('patient_finance.item_price') }}{{ __('patient_finance.subtotal') }}
    - - - {{ Form::number('treatment_quantity[]', $parent_drug_quantities[$i], ['class' => 'form-control col-sm-8', 'readonly']) }} - - {{ Form::number('treatment_amount[]', $parent_treatment_amount, ['class' => 'form-control col-sm-8', 'readonly']) }} - - {{ Form::number('treatment_subtotal[]', $parent_treatment_subtotal, ['class' => 'form-control col-sm-8 treatment_subtotal', 'readonly']) }} -
    -
    -
    -
    -
    - {{ Form::open(['route' => 'patient_finance.select_payment_option']) }} - {{ Form::hidden('episode_id', $parent_episode_details->id) }} - - {{ Form::close() }} -
    -
    -
    -
    - @endif -
    -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_inpatient_deposit.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_inpatient_deposit.blade.php deleted file mode 100755 index 581011ea..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_inpatient_deposit.blade.php +++ /dev/null @@ -1,921 +0,0 @@ -@php use Streamline\Services\PatientFinance\PatientPaymentMethodService; @endphp -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - - {{-- Hide the print option here outside of the form --}} - @if(session()->get("print_cashier_receipt_pdf") == 1) - {{ Form::hidden('print_cashier_receipt_pdf', 1, ['id' => 'print_cashier_receipt_pdf']) }} - @endif - -
    -
    -

    - {{ __('patient_finance.inpatient_deposit') }} -

    -
    -
    - -
    -
    - - {{ Form::open(['route' => 'patient_finance.store_inpatient_deposit', 'data-toggle' => 'validator']) }} - - {{ Form::hidden('patient_id', $patient_id, ['id' => 'patient_id']) }} - {{ Form::hidden('episode_id', $episode_id, ['id' => 'episode_id']) }} - -
    - - @php - $does_patient_category_have_threshold = does_patient_category_have_threshold($patient->category_id); - $patient_is_a_dependant_of = patient_is_a_dependant_of($patient_id); - $patient_insurance_status = patient_insurance_status($patient->id) == 1; - @endphp - - @include('flash::message') - -
    -
    -

    {{ __('patient_finance.patient_information') }}

    - -
    - - - - - - - - - - - - - - - - - - - @php $family_account_id = get_patient_family_account_id($patient->id); @endphp - @if($family_account_id != null) - - - - - - - - - {{ Form::hidden('family_account_id', $family_account_id) }} - {{ Form::hidden('family_account_balance',get_name($family_account_id, "id", "current_balance", "family_accounts")) }} - @endif - - @if($does_patient_category_have_threshold == true || !is_null($patient_is_a_dependant_of)) - - - - - - - - - - {{-- if patient is some one's dependant then use the dependants patient category --}} - {{ Form::hidden('pay_later', 1, ['id' => 'pay_later']) }} - {{ Form::hidden('patient_category_id', get_name($patient_is_a_dependant_of, 'id', 'category_id','patients')) }} - {{ Form::hidden('dependants_balance',get_balance_from_category_threshold($patient_is_a_dependant_of)) }} - @endif - -
    {{ __('patient_finance.patient_names') }} - {!! insurance_flag($patient->id) !!} - @if($patient_insurance_status) - ({{ __('patients.joined_chi_scheme') }} {{patient_duration_on_chi_sheme($patient->id)}}) - @endif -
    {{ __('patient_finance.patient_number') }}{{ $patient->number }}
    {{ __('patient_finance.patient_category') }}{{ get_name($patient->category_id, 'id', 'name', 'patient_categories') }}
    {{ __('patient_finance.pay_later') }} - @if(isset($discount->pay_later) && $discount->pay_later == 1) - {{ __('patient_finance.yes') }} - {{ Form::hidden('pay_later', 1, ['id' => 'pay_later']) }} - @else - {{ __('patient_finance.no') }} - {{ Form::hidden('pay_later', 0, ['id' => 'pay_later']) }} - @endif -
    {{ __('patient_finance.family_account_of') }} - @php $family_head_id = get_name($family_account_id, 'id', 'family_head_id', 'family_accounts'); @endphp - - {{ get_full_name($family_head_id, 'id', 'first_name', 'last_name', 'patients') }} - ({{ get_name($family_head_id, 'id', 'number', 'patients') }}) -
    {{ __('patient_finance.family_account_balance') }} - {{ is_numeric(get_name($family_account_id, 'id', 'current_balance', 'family_accounts')) ? ugandan_shillings(get_name($family_account_id, 'id', 'current_balance', 'family_accounts')) : "N/A" }} -
    {{ __('patient_finance.patient_dependant_of') }}{{ get_full_name($patient_is_a_dependant_of, "id", "first_name", "last_name", "patients") }}
    {{ __('patient_finance.dependant_balance') }}{{ ugandan_shillings(get_balance_from_category_threshold($patient_is_a_dependant_of)) }}
    -
    -
    -
    -

    {{ __('patient_finance.deposits_made') }}

    -
    - - - - - - - - - - - @if(count($inpatient_deposits) > 0) - @php $total_paid = 0; @endphp - @foreach($inpatient_deposits as $deposit) - - - - - @php $total_paid += $deposit->patient_amount_paid; @endphp - - - - - @endforeach - - - - - - - @else - - - - @endif - -
    {{ __('patient_finance.receipt_number') }}{{ __('patient_finance.staff_in_charge') }}{{ __('patient_finance.received_on') }}{{ __('patient_finance.patient_amount') }}
    {{ $deposit->receipt_number }}{{ get_full_name($deposit->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date_time($deposit->created_at) }} - {{ ugandan_shillings($deposit->patient_amount_paid) }} - - @if($deposit->refund_amount > 0) -

    - - {{ ugandan_shillings($deposit->refund_amount) }} {{ __('patient_finance.was_refunded') }} - - @endif -
    - {{ __('patient_finance.print_receipt') }} - @php - // check if receipt has a debt plan - $previous_debt_plan_id = get_name($deposit->receipt_number, 'receipt_number', 'id', 'debt_plan'); - @endphp - - @if($previous_debt_plan_id != 'N/A') -

    - {{ __('patient_finance.print_guarantor_agreement') }} - @endif -
    - @if(is_null($deposit->received) && Auth::user()->can('cancel-patient-transaction')) - {{ __('patient_finance.cancel_receipt') }} - @endif -
    {{ __('patient_finance.total') }}{{ ugandan_shillings($total_paid) }}
    {{ __('patient_finance.no_deposit_made') }}
    -
    -
    -
    - - @php - $category_to_pay_deposits = 0; - @endphp - -
    - @if(count($inpatient_category_payments) > 0) -
    -

    {{ __('patient_finance.patient_category_invoices') }}

    -
    - - - - - - - - - - @php - $total_paid = 0; - @endphp - - @foreach($inpatient_category_payments as $payment) - @if ($payment->patient_amount > 0) - - - - - @php - $total_paid += $payment->patient_amount; - $category_to_pay_deposits += $payment->patient_amount; - @endphp - - - - @endif - @endforeach - - - - - - - - - @if($does_patient_category_have_threshold == true || !is_null($patient_is_a_dependant_of)) - @php - $dependant_consumptions_total = 0; - $dependant_consumptions = \Streamline\Models\DependantsConsumption::where(['dependant_patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - @endphp - - @if(count($dependant_consumptions) > 0) - - - - @foreach($dependant_consumptions as $dependant_consumption_record) - @if($dependant_consumption_record->items_ids == "Inpatient-deposit") - - - - - - - - @php - $dependant_consumptions_total += $dependant_consumption_record->amount_consumed; - @endphp - @endif - @endforeach - - - - - - - - @endif - @endif - -
    {{ __('inpatient.created_on') }}{{ __('patient_finance.transaction_date') }}{{ __('inpatient.patient_category') }}{{ __('patient_finance.patient_amount') }}{{ __('inpatient.invoice_status') }}
    - {{ streamline_date_time($payment->created_at) }} -
    By {{ get_full_name($payment->created_by, "id", "first_name", "last_name", "users") }} -
    - @if($payment->transaction_date) - {{ streamline_date($payment->transaction_date) }} - @else - {{ streamline_date_time($payment->created_at) }} - @endif - {{ get_name($payment->patient_category, "id", "name", "patient_categories") }}{{ ugandan_shillings($payment->patient_amount) }} - @if($payment->payment_complete) - {{ __('inpatient.invoice_paid') }} - @elseif(!is_null($payment->amount_paid_off)) - {{ __('inpatient.partially_paid') }} - @else - {{ __('inpatient.invoice_not_cleared') }} - @endif - -

    - - @if($payment->invoiced == 0 && Auth::user()->can('cancel-patient-transaction')) - {{ __('patient_finance.cancel_invoice') }} - @endif -
    {{ __('patient_finance.total') }}{{ ugandan_shillings($total_paid) }}
    {{ __('inpatient.inpatient_consumption_on_dependant_account') }}
    {{ streamline_date_time($dependant_consumption_record->created_at) }}{{ streamline_date_time($dependant_consumption_record->created_at) }}{{ __('inpatient.dependant_of') }}{{ get_full_name($patient_is_a_dependant_of, "id", "first_name", "last_name", "patients") }}{{ $dependant_consumption_record->receipt_number }}{{ ugandan_shillings($dependant_consumption_record->amount_consumed) }}
    {{ __('patient_finance.total') }}{{ ugandan_shillings($dependant_consumptions_total) }}
    -
    -
    - @endif - - @php - $ward_discounts_total = 0; - @endphp - - @if(count($ward_discount_deposits) > 0) -
    -

    {{ __('patient_finance.ward_discount_deposits') }}

    -
    - - - - - - - @php $total_paid = 0; @endphp - @foreach($ward_discount_deposits as $deposit) - - - @php - $total_paid += $deposit->amount; - $ward_discounts_total += $deposit->amount; - @endphp - - - @endforeach - - - - - -
    {{ __('patient_finance.received_on') }}{{ __('patient_finance.patient_amount') }}
    {{ streamline_date_time($deposit->created_at) }}{{ ugandan_shillings($deposit->amount) }}
    {{ __('patient_finance.total') }}{{ ugandan_shillings($total_paid) }}
    -
    -
    - @endif - - @if(count($debt_plan_payments) > 0) -
    -

    {{ __('patient_finance.debt_plan_payments') }}

    -
    - - - - - - - @php $total_paid = 0; @endphp - @foreach($debt_plan_payments as $deposit) - - - @php $total_paid += $deposit->staff_guarantor_to_pay; @endphp - - - @endforeach - - - - - -
    {{ __('patient_finance.received_on') }}{{ __('patient_finance.patient_amount') }}
    {{ streamline_date_time($deposit->created_at) }}{{ ugandan_shillings($deposit->staff_guarantor_to_pay) }}
    {{ __('patient_finance.total') }}{{ ugandan_shillings($total_paid) }}
    -
    -
    - @endif -
    -
    - -
    -
    - @if(!$inpatient_bill) -
    -

    {{ __('patient_finance.no_patient_billing_generated') }}

    -
    - @endif -
    -
    -
    -
    - @if(!$inpatient_bill) - {{ Form::label('amount_owed', __('patient_finance.amount_owed')) }} - {{ Form::number('amount_owed', 0, ['class' => 'form-control compulsory', 'readonly']) }} - @else - {{ Form::label('amount_owed', __('patient_finance.amount_owed')) }} - {{ Form::number('amount_owed', (($inpatient_bill->amount_to_pay ?? '') + $uncleared_chi_amount), ['class' => 'form-control compulsory', 'readonly']) }} - @endif -
    -
    -
    -
    - {{ Form::label('patient_to_pay', __('patient_finance.inpatient_deposits')) }} - {{ Form::hidden('original_patient_to_pay', 0, ['id' => 'original_patient_to_pay']) }} - {{ Form::number('patient_to_pay', 0, ['class' => 'form-control compulsory', 'required', 'id' => 'patient_to_pay', 'onchange' => 'reset_payment_methods_amounts()']) }} -
    -
    -
    -
    - @if($does_patient_category_have_threshold == true || !is_null($patient_is_a_dependant_of)) - {{ Form::label('patient_category_amount', get_name(get_name($patient_is_a_dependant_of, 'id', 'category_id', 'patients'), 'id', 'name', 'patient_categories').' '.__('patient_finance.to_pay') . __('patient_finance.dependant_patient_category')) }} - {{ Form::number('patient_category_amount', 0, ['class' => 'form-control compulsory', 'required', 'id' => 'patient_category_amount']) }} - @else - {{ Form::label('patient_category_amount', get_name($patient->category_id, 'id', 'name', 'patient_categories').' '.__('patient_finance.to_pay') . ' (Patient Category)') }} - @if(isset($discount->pay_later) && $discount->pay_later == 1) - {{ Form::number('patient_category_amount', 0, ['class' => 'form-control compulsory', 'required', 'id' => 'patient_category_amount']) }} - @else - {{ Form::number('patient_category_amount', 0, ['class' => 'form-control', 'id' => 'patient_category_amount', 'readonly']) }} - @endif - @endif -
    -
    -
    - @if(Auth::user()->can('add-ward-discount')) -
    - {{ Form::label('ward_discount_amount', __('patient_finance.ward_discount_amount')) }} - {{ Form::number('ward_discount_amount', 0, ['class' => 'form-control compulsory', 'required', 'id' => 'ward_discount_amount']) }} -
    - @endif -
    -
    - -
    -
    -
    - @if($patient_insurance_status) - {{ Form::label('chi_to_pay', __('patient_finance.chi_to_pay')) }} - {{ Form::number('chi_to_pay', $chi_to_pay, ['class' => 'form-control', 'readonly']) }} - {{ Form::hidden('uncleared_chi_amount', $uncleared_chi_amount) }} - - @if($uncleared_chi_amount > 0) -
    {{ ugandan_shillings($uncleared_chi_amount) . ' ' . __('insurance_claims.chi_amount_uncleared_error') }} - @endif - @endif -
    -
    -
    -
    - @if(isset($discount->pay_later) && $discount->pay_later == 1 && Auth::user()->can('add-transaction-date-patient-invoices')) - {{ Form::label('transaction_date', __('patient_finance.transaction_date')) }} -
    - {{ Form::text('transaction_date', date('Y-m-d'), ['class'=>'form-control compulsory', 'readonly', 'id'=>'transaction_date']) }} -
    - @endif -
    -
    - -
    - -
    -
    -
    - {{ Form::label('cash_to_pay',__('patient_finance.cash_to_pay')) }} - {{ Form::hidden('original_cash_to_pay', 0, ['id' => 'original_cash_to_pay']) }} - {{ Form::number('cash_to_pay',0,['class' => 'form-control','id'=>'cash_to_pay','readonly']) }} -
    - -

    - - - -

    - - -
    -
    - @php - $patient_account_balance = $patient->patient_account_balance; - $family_account_id = get_patient_family_account_id($patient->id); - $patient_has_family_accounts = false; - - if ($family_account_id != null) { - $patient_has_family_accounts = true; - $family_accounts_credit_limit = is_numeric(get_name($family_account_id, 'id', 'credit_limit', 'family_accounts')) ? get_name($family_account_id, 'id', 'credit_limit', 'family_accounts') : 0; - $family_account_balance = get_name($family_account_id, "id", "current_balance", "family_accounts"); - } - @endphp - - @if($patient_account_balance > 0 || $patient_has_family_accounts) -
    -

    {{ __('patient_finance.available_wallets') }}

    - - @if($patient_has_family_accounts) -
    - -

    {{ __('patient_finance.family_account') }}

    - -
    -
    - - {{ Form::number('family_account_balance', $family_account_balance, ['class' => 'form-control', 'id' => 'family_account_balance', 'readonly']) }} - {{ Form::hidden('family_account_id', $family_account_id) }} - {{ Form::hidden('family_account_credit_limit', $family_accounts_credit_limit) }} -
    -
    - - {{ Form::number('family_account_pay_with', 0, ['class' => 'form-control', 'id' => 'family_account_pay_with', 'min' => 0,'onchange'=>'deduct_amounts_from_wallets()']) }} -
    -
    - @endif - - @if($patient_account_balance > 0) -
    - -

    {{ __('patient_finance.patient_account') }}

    - -
    -
    - - {{ Form::number('patient_account_balance', $patient_account_balance, ['class' => 'form-control', 'id' => 'patient_account_balance', 'readonly']) }} -
    -
    - - {{ Form::number('patient_account_pay_with', 0, ['class' => 'form-control', 'id' => 'patient_account_pay_with', 'min' => 0, 'max' => $patient_account_balance,'onchange'=>'deduct_amounts_from_wallets()']) }} -
    -
    - @endif -
    - @endif -
    - -
    - -


    - - @if($is_bill_updated) - {{ Form::button(__('patient_finance.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id' => 'submit_button']) }} - {{ Form::button(__('patient_finance.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light m-r-10']) }} - {{ __('patient_finance.authorise_debt_plan') }} - @else - Inpatient sheet has recently been updated. Please save inpatient bill to continue payment - @endif -
    - - {{ Form::close() }} - - @include('patient_finance::patient_finance.credit_limit_modal') - - - @include('patient_finance::patient_finance.debt.debt_plan') - -@endsection - -@push('scripts') - - - - -@endpush diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_sundries_deposit.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_sundries_deposit.blade.php deleted file mode 100755 index 9c147e67..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_sundries_deposit.blade.php +++ /dev/null @@ -1,414 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - - {{-- Hide the print option here outside of the form --}} - @if(session()->get("print_cashier_receipt_pdf") == 1) - {{ Form::hidden('print_cashier_receipt_pdf', 1, ['id' => 'print_cashier_receipt_pdf']) }} - @endif - - @php $co_payment = check_patient_category_co_payment_status($patient->category_id); @endphp - - @if(check_if_episode_is_a_followup($episode->id)) - @php - $parent_episode_details = \Streamline\Models\PatientEpisode::find($episode->parent_episode_id); - - $parent_episode_ordered_sundries = \Streamline\Models\OrderedSundry::where(['episode_id' => $episode->parent_episode_id,'payment_status' => '0'])->get(); - - $parent_episode_paid_sundries = \Streamline\Models\SundryDeposit::where(['episode_id' => $episode->parent_episode_id])->first(); - @endphp - @endif - -
    -
    -

    - {{ __('patient_finance.sundries_for_episode') }} : {{ streamline_date($episode->created_at) }}{!! isset($parent_episode_details) ? " (" . __('.episode_is_review') . " ". streamline_date($parent_episode_details->created_at).")" : '' !!} -

    -
    -
    - -
    -
    - - @if(check_if_episode_is_a_followup($episode->id)) - @include('patient_finance::patient_finance.make_sundries_deposit_review') - @endif - - @if(count($paid_sundries) > 0 || count($invoiced_sundries) > 0) -
    -
    -
    -

    {{ __('patient_finance.sundries_payment') }}

    - - - - - - - - - - - - - - - - @foreach($paid_sundries as $paid_sundry) - @php - // check if this payment was from central billing - $central_billing_count = \Illuminate\Support\Facades\DB::table('central_billing_deposits')->where('receipt_number', $paid_sundry->receipt_number)->count(); - $chi_count = \Illuminate\Support\Facades\DB::table('chi_deposits')->where('receipt_number', $paid_sundry->receipt_number)->count(); - - if ($central_billing_count > 0 || $chi_count > 0){ - // skip this record so that it is only printed and cancelled from the central billings side - continue; - } - @endphp - - - - - - - - - - - - @endforeach - - @foreach($invoiced_sundries as $invoiced_sundry) - @php - // check if this payment was from central billing - $central_billing_count = \Illuminate\Support\Facades\DB::table('central_billing_deposits')->where('receipt_number', $invoiced_sundry->receipt_number)->count(); - - if ($central_billing_count > 0){ - // skip this record so that it is only printed and cancelled from the central billings side - continue; - } - @endphp - - - - - - - - - - - @endforeach - - -
    -
    -
    - @endif - -
    -
    - @include('flash::message') -
    - - @if(patient_insurance_status($patient_id) == 1) - View CHI Deposits Receipts -

    - @endif - - @if($ordered_sundries->count() > 0) - @php - $sundries_ids = []; - $sundries_quantity = []; - $order_ids = []; - // amounts at the time of the inv was ordered - $sundries_orders_amounts = []; - - foreach($ordered_sundries as $ordered_sundry){ - $sundries_ids = array_merge($sundries_ids, explode(",", $ordered_sundry->sundries_id)); - $sundries_quantity = array_merge($sundries_quantity, explode(",", $ordered_sundry->quantity)); - array_push($order_ids, $ordered_sundry->id); - //if amounts are put at the time of ordering - $sundries_orders_amounts = is_null($ordered_sundry->sundries_amount) ? array_merge($sundries_orders_amounts, []) : array_merge($sundries_orders_amounts, explode(",", $ordered_sundry->sundries_amount)); - } - - $count_orders = count($order_ids); - - // create strings from arrays to use when submitting - $order_ids_string = implode(',', $order_ids); - $sundries_ids_string = implode(',', $sundries_ids); - $sundries_orders_amounts_string = implode(',', $sundries_orders_amounts); - - $remove_pos_row = ($treatment->is_pos == 1) ? "remove_before_calculation" : "" - @endphp - - @if(Auth::user()->can('price-list-category-change-billing')) - {{ Form::open(['route' => 'patient_finance.make_deposit_sundries', 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('price_list_category_id', 'Price List Category') }} - -
    -
    -
    -
    - {{ Form::button(__('patient_finance.apply_changes'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    - -
    - - {{ Form::close() }} - @endif - - {{ Form::open(['route' => 'patient_finance.store_sundries_deposit', 'data-toggle' => 'validator']) }} - - {{ Form::hidden('patient_id', $patient_id, ['id' => 'patient_id']) }} - {{ Form::hidden('episode_id', $episode_id, ['id' => 'episode_id']) }} - {{ Form::hidden('order_ids', $order_ids_string) }} - {{ Form::hidden('sundry_ids', $sundries_ids_string) }} - {{ Form::hidden('sundry_order_amounts', $sundries_orders_amounts_string) }} - {{ Form::hidden('tag_id', 5, ['id' => 'tag_id']) }} - -
    -
    -
    - - - - - - - - - - - @php $orders_count = 0; $total_sundry_amount = 0; @endphp - - @for ($i = 0; $i < count($sundries_ids); $i++) - @php - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_set && $price_list_set != 0){ - $sundry_amount = get_price_list_category_price($price_list_set, 5, $sundries_ids[$i]); - } elseif ($price_list_id) { - $sundry_amount = get_price_list_category_price($price_list_id, 5, $sundries_ids[$i]); - } else { - //if amount was set at time of ordering - if (isset($sundries_orders_amounts[$i]) && !is_null($sundries_orders_amounts[$i])) { - $sundry_amount = $sundries_orders_amounts[$i]; - } else{ - $sundry_amount = get_name($sundries_ids[$i], "id", "non_insured_price", "sundries"); - } - } - - // get the subtotal for this sundry - $sundry_subtotal = $sundries_quantity[$orders_count] * $sundry_amount; - $total_sundry_amount += $sundry_subtotal; - @endphp - - can('view-item-prices')) style="display: none" @endif> - - - - - - - @php $orders_count++; @endphp - @endfor - - @if(!Auth::user()->can('view-item-prices')) - - - - - @endif - -
    {{ __('patient_finance.sundry_name') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.unit_cost') }}{{ __('patient_finance.amount') }}
    - - - {{ Form::number('quantity[]', $sundries_quantity[$orders_count], ['class' => 'form-control col-sm-8', 'readonly']) }} - - {{ Form::number('sundry_amount[]', $sundry_amount, ['class' => 'form-control col-sm-8', 'readonly']) }} - - {{ Form::number('sundry_subtotal[]', $sundry_subtotal, ['class' => 'form-control col-sm-8 items_amounts', 'readonly']) }} -
    {{ __('patient_finance.sundries') }}{{ ugandan_shillings($total_sundry_amount) }}
    -
    - - @if(is_donor_feature_enabled()) -

    - -

    {{ __('patient_finance.discount') }}

    - -
    - - - - - - - - - - - - - - - -
    {{ __('patient_finance.discount') }}{{ __('patient_finance.donor_amount') }}{{ __('patient_finance.patient_amount') }}
    - {{ Form::select('donor_discount', $discount_options, '', ['class' => 'form-control col-sm-12', 'onchange' => 'show_discounts_amounts(this.value)']) }} -
    - - - {{ Form::hidden('discount_type', 0, ['id' => 'discount_type']) }} -
    - @endif -
    - - @include('patient_finance::patient_finance.make_deposit_totals_section') -
    - - {{ Form::close() }} - @else -

    {{ __('patient_finance.no_ordered_sundries') }}

    - @endif -
    -
    -
    - - - @include('patient_finance::patient_finance.debt.debt_plan') - - - @include('patient_finance::patient_finance.credit_limit_modal') -@endsection - -@push('scripts') - - -@endpush - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_sundries_deposit_review.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_sundries_deposit_review.blade.php deleted file mode 100755 index 30d57f95..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/make_sundries_deposit_review.blade.php +++ /dev/null @@ -1,154 +0,0 @@ -
    -
    -
    -
    {{ __('patient_finance.sundries_for_episode') }} {{ streamline_date($parent_episode_details->created_at) }}
    - @if(!is_null($parent_episode_paid_sundries)) - {{ __('patient_finance.sundries_payment') }} -
    - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('patient_finance.receipt_number') }}{{ __('patient_finance.sundries_items') }}{{ __('patient_finance.sundries_quantities') }}{{ __('patient_finance.sundries_subtotals') }}{{ __('patient_finance.patient_amount_paid') }}{{ __('patient_finance.payment_date') }}
    {{ $parent_episode_paid_sundries->receipt_number }} - @php $items_counter = 1; @endphp - @php $sundry_items_array = explode(",", $parent_episode_paid_sundries->sundry_items); @endphp - @foreach($sundry_items_array as $item) - {{ $items_counter }}. {{ get_name($item, 'id', 'name', 'sundries') }}
    - @php $items_counter++; @endphp - @endforeach -
    - @php $items_counter = 1; @endphp - @php $sundry_quantity_array = explode(",", $parent_episode_paid_sundries->sundry_quantity); @endphp - @foreach($sundry_quantity_array as $quantity) - {{ $items_counter }}. {{ $quantity }}
    - @php $items_counter++; @endphp - @endforeach -
    - @php $items_counter = 1; @endphp - @php $sundry_price_array = explode(",", $parent_episode_paid_sundries->sundry_subtotals); @endphp - @foreach($sundry_price_array as $price) - {{ $items_counter }}. {{ ugandan_shillings($price) }}
    - @php $items_counter++; @endphp - @endforeach -
    - {{ ugandan_shillings($parent_episode_paid_sundries->patient_amount_paid) }} - - @if($parent_episode_paid_sundries->refund_amount > 0) -

    - - {{ ugandan_shillings($parent_episode_paid_sundries->refund_amount) }} was refunded - - @endif -
    {{ streamline_date_time($parent_episode_paid_sundries->created_at) }} - {{ __('patient_finance.print_receipt') }} -
    -
    - @endif - - @if(count($parent_episode_ordered_sundries) > 0) - @php - $parent_episode_sundries_ids = array(); - $parent_episode_order_ids = array(); - - foreach($parent_episode_ordered_sundries as $parent_episode_ordered_sundry){ - $parent_episode_sundries_ids = array_merge($parent_episode_sundries_ids, explode(",", $parent_episode_ordered_sundry->sundries_id)); - array_push($parent_episode_order_ids, $parent_episode_ordered_sundry->id); - } - - $parent_episode_count_orders = count($parent_episode_order_ids); - - // create strings from arrays to use when submitting - $parent_episode_order_ids_string = implode(',', $parent_episode_order_ids); - $parent_episode_sundries_ids_string = implode(',', $parent_episode_sundries_ids); - @endphp - -
    - {{ __('patient_finance.unpaid_sundries') }} -
    -
    -
    - - - - - - - - - - - @php $parent_episode_orders_count = 0; @endphp - - @foreach ($parent_episode_sundries_ids as $parent_episode_sundries_id) - @php - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_set && $price_list_set != 0){ - $parent_episode_sundry_amount = get_price_list_category_price($price_list_set, 5, $parent_episode_sundries_id); - } elseif ($price_list_id) { - $parent_episode_sundry_amount = get_price_list_category_price($price_list_id, 5, $parent_episode_sundries_id); - } else { - $parent_episode_sundry_amount = get_name($parent_episode_sundries_id, "id", "non_insured_price", "sundries"); - } - - // get quantity ordered - $parent_episode_quantity = get_name($parent_episode_order_ids[$parent_episode_orders_count], "id", "quantity", "ordered_sundries"); - - // get the subtotal for this sundry - $parent_episode_sundry_subtotal = $parent_episode_quantity * $parent_episode_sundry_amount; - @endphp - - - - - - - - - @php $parent_episode_orders_count++; @endphp - @endforeach - -
    {{ __('patient_finance.sundry_name') }}{{ __('patient_finance.unit_cost') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.amount') }}
    - - - {{ Form::number('sundry_amount[]', $parent_episode_sundry_amount, ['class' => 'form-control col-sm-8', 'readonly']) }} - - {{ Form::number('quantity[]', $parent_episode_quantity, ['class' => 'form-control col-sm-8', 'readonly']) }} - - {{ Form::number('sundry_subtotal[]', $parent_episode_sundry_subtotal, ['class' => 'form-control col-sm-8 sundry_amount', 'readonly']) }} -
    -
    -
    -
    -
    - {{ Form::open(['route' => 'patient_finance.select_payment_option']) }} - {{ Form::hidden('episode_id', $parent_episode_details->id) }} - - {{ Form::close() }} -
    -
    -
    -
    - @endif -
    -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/pay_all_patient_bills.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/pay_all_patient_bills.blade.php deleted file mode 100755 index 0b8fd365..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/pay_all_patient_bills.blade.php +++ /dev/null @@ -1,976 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - - {{-- Hide the print option here outside of the form --}} - @if(session()->get("print_cashier_receipt_pdf") == 1) - {{ Form::hidden('print_cashier_receipt_pdf', 1, ['id' => 'print_cashier_receipt_pdf']) }} - @endif - -
    -
    -

    {{ __('patient_finance.patient_collective_bills') }}

    -
    -
    - -
    -
    - -
    - {{ Form::open(['route' => 'patient_finance.save_pay_all_patient_bills', 'data-toggle' => 'validator']) }} - -
    -
    - @php - $total_invs_amount = 0; - $total_sundries_amount = 0; - $total_procedures_amount = 0; - $total_services_amount = 0; - $total_drugs_amount = 0; - $debt_to_pay = 0; - $inpatient_to_pay = 0; - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - @endphp - @if(count($ordered_investigations) > 0) -

    Investigations

    -
    - -
    - - - - - - - - - @foreach($ordered_investigations as $record) - @php - $investigations = explode(",", $record->investigation_id); - @endphp - - - - @foreach ($investigations as $investigation) - @php - // get insurance status for investigation - $investigation_insurance_status = get_name($investigation, "id", "insurance_coverage", "investigations"); - - // check if the patient category is attached to a price list - if ($price_list_id) { - $investigation_amount = get_price_list_category_price($price_list_id, 2, $investigation); - } else { - if($investigation_insurance_status == 1 && patient_insurance_status($patient_id) == 1){ - $investigation_amount = get_name($investigation, "id", "insured_price", "investigations"); - } else { - $investigation_amount = get_name($investigation, "id", "non_insured_price", "investigations"); - } - } - - $total_invs_amount += $investigation_amount; - @endphp - - {{ Form::hidden('investigation_ids[]', $investigation) }} - {{ Form::hidden('investigation_episode_id[]', $record->episode_id) }} - {{ Form::hidden('investigation_amount[]', $investigation_amount) }} - - - - @endforeach - @endforeach - {{ Form::hidden('investigation_total',$total_invs_amount,['id'=>'investigation_total']) }} - {{ Form::hidden('investigations_patient_to_pay_original', $total_invs_amount, ['id' => 'investigations_patient_to_pay_original']) }} - {{ Form::hidden('investigations_patient_to_pay_original_balance', -1, ['id' => 'investigations_patient_to_pay_original_balance']) }} - - - - - -
    {{ __('patient_finance.investigation_name') }}{{ __('patient_finance.amount') }}
    - {{ Form::hidden('investigation_order_id[]', $record->id) }} - {{ __('patient_finance.ordered_on') }} {{ streamline_date_time_short($record->created_at) }} -
    {{ get_name($investigation, "id", "name", "investigations") }}{{ ugandan_shillings($investigation_amount) }}
    {{ __('patient_finance.total') }}{{ ugandan_shillings($total_invs_amount) }}
    -
    - @endif - - @if(count($ordered_sundries) > 0) -

    {{ __('patient_finance.sundries') }}

    -
    - -
    - - - - - - - - - - - @foreach($ordered_sundries as $record) - @php - // get insurance status for sundry - $sundry_insurance_status = get_name($record->sundries_id, "id", "insurance", "sundries"); - - // check if the patient category is attached to a price list - if ($price_list_id) { - $sundry_amount = get_price_list_category_price($price_list_id, 5, $record->sundries_id); - } else { - if($sundry_insurance_status == 1 && patient_insurance_status($patient_id) == 1){ - $sundry_amount = get_name($record->sundries_id, "id", "insured_price", "sundries"); - } else { - $sundry_amount = get_name($record->sundries_id, "id", "non_insured_price", "sundries"); - } - } - - // get the subtotal for this sundry - $sundry_subtotal = $record->quantity * $sundry_amount; - $total_sundries_amount += $sundry_subtotal; - @endphp - - {{ Form::hidden('sundry_id[]', $record->sundries_id) }} - {{ Form::hidden('sundry_episode_id[]', $record->episode_id) }} - {{ Form::hidden('sundry_amount[]', $sundry_subtotal) }} - {{ Form::hidden('sundry_subtotal[]', $sundry_amount) }} - {{ Form::hidden('sundry_quantity[]', $record->quantity) }} - {{ Form::hidden('sundry_order_id[]', $record->id) }} - - - - - - @endforeach - {{ Form::hidden('sundry_total',$total_sundries_amount,['id'=>'sundry_total']) }} - {{ Form::hidden('sundries_patient_to_pay_original', $total_sundries_amount, ['id' => 'sundries_patient_to_pay_original']) }} - {{ Form::hidden('sundries_patient_to_pay_original_balance', -1, ['id' => 'sundries_patient_to_pay_original_balance']) }} - - - - - -
    {{ __('patient_finance.sundry_name') }}{{ __('patient_finance.unit_cost') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.amount') }}
    {{ get_name($record->sundries_id, "id", "name", "sundries") }} (Ordered {{ streamline_date_time_short($record->created_at) }}){{ ugandan_shillings($sundry_amount) }}{{ $record->quantity }}{{ ugandan_shillings($sundry_subtotal) }}
    {{ __('patient_finance.total') }}{{ ugandan_shillings($total_sundries_amount) }}
    -
    - @endif - - @if(count($ordered_procedures) > 0) -

    {{ __('patient_finance.procedures') }}

    -
    - -
    - - - - - - - - - @foreach($ordered_procedures as $record) - @php - // get insurance status for procedure - $procedure_insurance_status = get_name($record->procedure_id, "id", "insurance", "procedures"); - - //check if there is a procedure amt added when order was made - if(!is_null($record->procedure_amount)){ - $procedure_amount = $record->procedure_amount; - } else { - // check if the patient category is attached to a price list - if ($price_list_id) { - $procedure_amount = get_price_list_category_price($price_list_id, 4, $record->procedure_id); - } else { - if($procedure_insurance_status == 1 && patient_insurance_status($patient_id) == 1){ - $procedure_amount = get_name($record->procedure_id, "id", "insured_price", "procedures"); - } else { - $procedure_amount = get_name($record->procedure_id, "id", "non_insured_price", "procedures"); - } - } - } - - $total_procedures_amount += $procedure_amount; - @endphp - - {{ Form::hidden('procedure_episode_id[]', $record->episode_id) }} - {{ Form::hidden('procedure_id[]', $record->procedure_id) }} - {{ Form::hidden('procedure_amount[]', $procedure_amount) }} - {{ Form::hidden('procedure_order_id[]', $record->id) }} - - - - @endforeach - {{ Form::hidden('procedure_total',$total_procedures_amount,['id'=>'procedure_total']) }} - {{ Form::hidden('procedures_patient_to_pay_original', $total_procedures_amount, ['id' => 'procedures_patient_to_pay_original']) }} - {{ Form::hidden('procedures_patient_to_pay_original_balance', -1, ['id' => 'procedures_patient_to_pay_original_balance']) }} - - - - - -
    {{ __('patient_finance.procedure_name') }}{{ __('patient_finance.amount') }}
    {{ get_name($record->procedure_id, "id", "name", "procedures") }} (Ordered {{ streamline_date_time_short($record->created_at) }}){{ ugandan_shillings($procedure_amount) }}
    {{ __('patient_finance.total') }}{{ ugandan_shillings($total_procedures_amount) }}
    -
    - @endif - - @if(count($ordered_services) > 0) -

    {{ __('patient_finance.consultation_and_services') }}

    -
    - -
    - - - - - - - - - @foreach($ordered_services as $record) - @php - $service_cost = 0; - - if($price_list_id){ - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - - $service_cost = get_price_list_category_price($price_list_id, 6, $record["service_id"]); - } else { - $pre_order = \Streamline\Models\Services::withTrashed()->find($record["service_id"]); - - $service_insurance = $pre_order->insurance_coverage; - - if($service_insurance == 1 && patient_insurance_status($patient_id) == 1){ - $service_cost = $pre_order->insured_price; - } else { - $service_cost = $pre_order->non_insured_price; - } - } - - $service_cost *= $record["quantity"]; - $total_services_amount += $service_cost; - @endphp - - {{ Form::hidden('service_episode_id[]', $record["episode_id"]) }} - {{ Form::hidden('service_id[]', $record["service_id"]) }} - {{ Form::hidden('service_amount[]', $service_cost, ['class' => 'service_amount']) }} - {{ Form::hidden('service_order_id[]', $record["id"]) }} - - - - @endforeach - {{ Form::hidden('service_total',$total_services_amount,['id'=>'service_total']) }} - {{ Form::hidden('services_patient_to_pay_original', $total_services_amount, ['id' => 'services_patient_to_pay_original']) }} - {{ Form::hidden('services_patient_to_pay_original_balance', -1, ['id' => 'services_patient_to_pay_original_balance']) }} - - - - - -
    {{ __('patient_finance.services') }}{{ __('patient_finance.amount') }}
    {{ get_name($record["service_id"], "id", "name", "services") }} (Ordered {{ streamline_date_time_short($record["created_at"]) }}){{ ugandan_shillings($service_cost) }}
    {{ __('patient_finance.total') }}{{ ugandan_shillings($total_services_amount) }}
    -
    - @endif - - @if(count($treatments) > 0) -

    {{ __('patient_finance.treatments') }}

    -
    - -
    - - - - - - - - - - - @foreach($treatments as $record) - @if(!(is_incoming_prescriptions_feature_enabled() && $record->confirmation_status == 0)) - @php - if ($record->altered != 0 && $record->is_new_alter_model == 0) { - $altered_drugs = get_name($record->altered, 'id', 'drugs', 'patient_dispensings'); - $altered_quantities = get_name($record->altered, 'id', 'quantity_dispensed', 'patient_dispensings'); - - $drug_ids = ($altered_drugs != 'N/A') ? explode(",", $altered_drugs) : explode(",", $record->drugs); - $drug_quantities = ($altered_quantities != 'N/A') ? explode(",", $altered_quantities) : explode(",", $record->quantities_dispensed); - } else { - $drug_ids = explode(",", $record->drugs); - $drug_quantities = explode(",", $record->quantities_dispensed); - } - - $purchased_elsewhere = explode(",", $record->purchased_elsewhere); - @endphp - - - - @for ($i = 0; $i < count($drug_ids); $i++) - @php - if (count($purchased_elsewhere) > 0 && isset($purchased_elsewhere[$i]) && $purchased_elsewhere[$i] == 1) { - continue; - } - - // get insurance status for drug - $drug_insurance_status = get_name($drug_ids[$i], "id", "insurance_coverage", "drugs"); - - // check if the patient category is attached to a price list - if ($price_list_id) { - $treatment_amount = get_price_list_category_price($price_list_id, 3, $drug_ids[$i]); - } else { - // check if drug and patient is eligible for insurance - if($drug_insurance_status == 1 && patient_insurance_status($patient_id) == 1){ - $treatment_amount = get_name($drug_ids[$i], "id", "insured_price", "drugs"); - } else { - $treatment_amount = get_name($drug_ids[$i], "id", "non_insured_price", "drugs"); - } - } - - if(isset($drug_quantities[$i]) && $drug_quantities[$i] != ""){ - $treatment_subtotal = $drug_quantities[$i] * $treatment_amount; - } else { - $treatment_subtotal = 0; - } - - $total_drugs_amount += $treatment_subtotal; - @endphp - - {{ Form::hidden('drug_id[]', $drug_ids[$i]) }} - {{ Form::hidden('drug_episode_id[]', $record->episode_id) }} - {{ Form::hidden('drug_amount[]', $treatment_subtotal) }} - {{ Form::hidden('treatment_amount[]', $treatment_amount) }} - {{ Form::hidden('treatment_quantity[]', $drug_quantities[$i]) }} - - - - - - @endfor - @else - - - - @endif - @endforeach - {{ Form::hidden('drug_total',$total_drugs_amount,['id'=>'drug_total']) }} - {{ Form::hidden('treatment_patient_to_pay_original', $total_drugs_amount, ['id' => 'treatment_patient_to_pay_original']) }} - {{ Form::hidden('treatment_patient_to_pay_original_balance', -1, ['id' => 'treatment_patient_to_pay_original_balance']) }} - - - - - -
    {{ __('patient_finance.item_name') }}{{ __('patient_finance.item_quantity') }}{{ __('patient_finance.item_price') }}{{ __('patient_finance.subtotal') }}
    - {{ Form::hidden('drug_order_id[]', $record->id) }} - {{ __('patient_finance.ordered') }} {{ streamline_date_time_short($record->created_at) }} -
    {{ get_name($drug_ids[$i], "id", "name", "drugs") }}{{ $drug_quantities[$i] }}{{ ugandan_shillings($treatment_amount) }}{{ ugandan_shillings($treatment_subtotal) }}

    {{ __('patient_finance.treatments_have_not_yet_been_confirmed_by_pharmacy') }}

    {{ __('patient_finance.total') }}{{ ugandan_shillings($total_drugs_amount) }}
    -
    - @endif - - @if(count($patient_debts) > 0) -

    {{ __('patient_finance.patient_debts') }}

    -
    - -
    - - - - - - - - - @php $debt_to_pay = 0; @endphp - @foreach($patient_debts as $debt) - - - - - @endforeach - -
    {{ __('patient_finance.incurred_from') }}{{ __('patient_finance.amount_to_pay') }}
    {{ get_name($debt->tag_id, 'id', 'name', 'finance_point_tags') }} ({{ streamline_date_time_short($debt->created_at) }}) - @if($debt->balance_remaining) - @php $debt_to_pay += $debt->balance_remaining; @endphp - {{ ugandan_shillings($debt->balance_remaining) }} - @else - @php $debt_to_pay += $debt->balance; @endphp - {{ ugandan_shillings($debt->balance) }} - @endif -
    -
    - @endif - - @if(count($inpatient_infos) > 0) -

    {{ __('patient_finance.inpatient_bills') }}

    -
    - -
    - - - - - - - - - @foreach($inpatient_infos as $info) - @php $inpatient_to_pay += $info->amount_to_pay; @endphp - - - - - @endforeach - -
    {{ __('patient_finance.amount_to_pay') }}{{ __('patient_finance.generated_on') }}
    {{ ugandan_shillings($info->amount_to_pay) }}{{ streamline_date_time_short($info->updated_at) }}
    -
    - @endif -
    -
    - - - - - - - - - - - - - - - - - - - @php $family_account_id = get_patient_family_account_id($patient->id); @endphp - @if($family_account_id != null) - - - - - - - - - {{ Form::hidden('family_account_id', $family_account_id) }} - {{ Form::hidden('family_account_balance',get_name($family_account_id, "id", "current_balance", "family_accounts")) }} - @endif -
    {{ __('patient_finance.patient_names') }}{!! insurance_flag($patient->id) !!}
    {{ __('patient_finance.patient_number') }}{{ $patient->number }}
    {{ __('patient_finance.patient_discount') }} - @if(isset($discount->discount)) - {{ $discount->discount }} % - {{ Form::hidden('discount_percentage', $discount->discount, ['id' => 'discount_percentage']) }} - @else - 0 % - {{ Form::hidden('discount_percentage', 0, ['id' => 'discount_percentage']) }} - @endif -
    {{ __('patient_finance.patient_category') }}{{ isset($categories[$patient->category_id]) ? $categories[$patient->category_id] : "N/A" }}
    {{ __('patient_finance.family_account_of') }} - @php $family_head_id = get_name($family_account_id, 'id', 'family_head_id', 'family_accounts'); @endphp - - {{ get_full_name($family_head_id, 'id', 'first_name', 'last_name', 'patients') }} - ({{ get_name($family_head_id, 'id', 'number', 'patients') }}) -
    {{ __('patient_finance.family_account_balance') }} - {{ is_numeric(get_name($family_account_id, 'id', 'current_balance', 'family_accounts')) ? ugandan_shillings(get_name($family_account_id, 'id', 'current_balance', 'family_accounts')) : "N/A" }} -
    - - @if($inpatient_to_pay > 0) -
    - {{ Form::label('inpatient_to_pay', __('patient_finance.inpatient_bills')) }} - {{ Form::number('inpatient_to_pay',$inpatient_to_pay,['class' => 'form-control compulsory','id'=>'inpatient_to_pay','onchange'=>'calculate_debts_inpatient_change()']) }} - {{ Form::hidden('inpatient_to_pay_original',$inpatient_to_pay,['id'=>'inpatient_to_pay_original']) }} -
    - @endif - - @if($debt_to_pay > 0) -
    - {{ Form::label('debt_to_pay', __('patient_finance.patient_debts')) }} - {{ Form::number('debt_to_pay',$debt_to_pay,['class' => 'form-control compulsory','id'=>'debt_to_pay','onchange'=>'calculate_debts_inpatient_change()']) }} - {{ Form::hidden('debt_to_pay_original',$debt_to_pay,['id'=>'debt_to_pay_original']) }} -
    - @endif - -
    - {{ Form::label('total_amount_pay',__('patient_finance.total_amount')) }} - {{ Form::number('total_amount_pay','',['class' => 'form-control','readonly','id'=>'total_amount_pay']) }} -
    - -
    - {{ Form::label('hospital_to_pay_general_discount',__('patient_finance.hospital_to_pay')) }} - {{ Form::number('hospital_to_pay_general_discount','',['class' => 'form-control','readonly','id'=>'hospital_to_pay_general_discount']) }} -
    - -
    -
    -
    - @if($family_account_id != null) - {{ Form::label('patient_to_pay',__('patient_finance.family_to_pay')) }} - @else - {{ Form::label('patient_to_pay',__('patient_finance.patient_to_pay')) }} - @endif - - {{ Form::number('patient_to_pay',0,['class' => 'form-control compulsory','id'=>'patient_to_pay','onchange'=>'get_balance()', 'required']) }} - {{ Form::hidden('original_patient_to_pay','',['id'=>'original_patient_to_pay']) }} -
    -
    -
    -
    - {{ Form::button(__('patient_finance.calculate'),['type'=>'button','class'=>'btn btn-info', 'onclick' => 'reset_totals()']) }} -
    -
    -
    - - - -
    -
    - -
    -
    - @if(Auth::user()->can('give-one-off-discounts')) - - @endif -
    -
    -

    - - - -
    - {{ Form::label('balance',__('patient_finance.balance')) }} - {{ Form::number('balance',0,['class' => 'form-control','id'=>'balance','readonly']) }} -
    - - {{__('patient_finance.print')}} -
    - -
    -
    - - {{ Form::close() }} -
    - -@endsection - -@push('scripts') - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/print_central_billing.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/print_central_billing.blade.php deleted file mode 100755 index 8cc20d8c..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/print_central_billing.blade.php +++ /dev/null @@ -1,584 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Inpatient Bill - Stre@mline') }} - - - - - - - - - -
    - @include('layouts.header_pdf_print') -
    - {{ __('patient_finance.central_billing_title') }} : {{ streamline_date($episode->created_at) }} -
    - -
    - - - - - - - - - - - - - - - - - - -
    {{ __('patient_finance.patient_names') }}{!! insurance_flag($patient->id) !!}{{ __('patient_finance.patient_number') }}{{ $patient->number }}{{ __('patient_finance.price_list_category') }} - {{ __('patient_finance.default') }} -
    {{ __('patient_finance.patient_discount') }} - @if(isset($discount->discount)) - {{ $discount->discount }} % - @php $discount_percentage = $discount->discount; @endphp - @else - 0 % - @php $discount_percentage = 0; @endphp - @endif - {{ __('patient_finance.patient_category') }}{{ isset($categories[$patient->category_id]) ? $categories[$patient->category_id] : "N/A" }}{{ __('patient_finance.pay_later') }} - @if(isset($discount->pay_later) && $discount->pay_later == 1) - {{ __('patient_finance.yes') }} - @php $pay_later = 1; @endphp - {{ Form::hidden('patient_category_id', $patient->category_id) }} - @else - {{ __('patient_finance.no') }} - @php $pay_later = 0; @endphp - @endif -
    - -
    - - @php - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - $total_amount_to_pay = 0; - @endphp - -
    -
    -

    {{ __('patient_finance.consultation_services') }}

    - -
    - - - - - - - - - @php - $total = 0; - @endphp - @if($doc_consultation_id) - - - - @php - $service_cost = 0; - - if($price_list_id){ - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - - $service_cost = get_price_list_category_price($price_list_id, 6, $doc_consultation_id); - } else { - $pre_order = \Streamline\Models\Services::withTrashed()->find($doc_consultation_id); - - $service_cost = $pre_order->non_insured_price; - } - $total += $service_cost; - $total_amount_to_pay += $total; - @endphp - - - @endif - @php $used_services_amount_total = 0; @endphp - @if(!empty($used_services)) - @foreach($used_services as $used_service) - @php - $service_ids = explode(",", $used_service->service_id); - $service_quantity = explode(",", $used_service->quantity); - $ordered_services_amounts = (is_null($used_service->service_amount) || $used_service->service_amount == '') ? []: explode(",", $used_service->service_amount); - @endphp - - @for($i = 0; $i < count($service_ids); $i++) - - - - @php - $service_cost = 0; - - if($price_list_id){ - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - - $service_cost = get_price_list_category_price($price_list_id, 6, $service_ids[$i]); - } else { - $pre_order = \Streamline\Models\Services::withTrashed()->find($service_ids[$i]); - - //if amount was set at time of ordering - if (isset($ordered_services_amounts[$i]) && !is_null($ordered_services_amounts[$i])) { - $service_cost = $ordered_services_amounts[$i]; - } else { - $service_cost = $pre_order->non_insured_price; - } - } - - $total = $service_cost * $service_quantity[$i]; - $used_services_amount_total += $total; - $total_amount_to_pay += $total; - @endphp - - - @endfor - @endforeach - @endif - - - - - - -
    {{ __('patient_finance.service') }}{{ __('patient_finance.amount') }}
    - {{ get_name($doc_consultation_id, "id", "name", "services") }} - - {{ ugandan_shillings($service_cost) }} -
    - {{ get_name($service_ids[$i], "id", "name", "services") }} - - {{ ugandan_shillings($service_cost * $service_quantity[$i]) }} -
    Total{{ ugandan_shillings($used_services_amount_total) }}
    -
    -
    -
    -

    {{ __('patient_finance.procedures') }}

    - -
    - - - - - - - - - @if($ordered_procedures->count() > 0) - @php - $procedure_ids = array(); - $order_ids = array(); - // amounts at the time was ordered - $procedures_orders_amounts = []; - - foreach($ordered_procedures as $ordered_procedure){ - $procedure_ids = array_merge($procedure_ids, explode(",", $ordered_procedure->procedure_id)); - array_push($order_ids, $ordered_procedure->id); - //if amounts are put at the time of ordering - $procedures_orders_amounts = is_null($ordered_procedure->procedure_amount) ? array_merge($procedures_orders_amounts, []) : array_merge($procedures_orders_amounts, explode(",", $ordered_procedure->procedure_amount)); - } - - $count_orders = count($order_ids); - - // create strings from arrays to use when submitting - $order_ids_string = implode(',', $order_ids); - $procedure_ids_string = implode(',', $procedure_ids); - $procedure_orders_amounts_string = implode(',', $procedures_orders_amounts); - @endphp - - @php - $procedure_amount_total = 0; - $procedure_amount = 0; - @endphp - - @for ($i = 0; $i < count($procedure_ids); $i++) - @php - - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_id) { - $procedure_amount = get_price_list_category_price($price_list_id, 4, $procedure_ids[$i]); - } else { - //if amount was set at time of ordering - if (isset($procedures_orders_amounts[$i]) && !is_null($procedures_orders_amounts[$i])) { - $procedure_amount = $procedures_orders_amounts[$i]; - } else{ - $procedure_amount = get_name($procedure_ids[$i], "id", "non_insured_price", "procedures"); - } - } - - $procedure_amount_total += $procedure_amount; - $total_amount_to_pay += $procedure_amount; - @endphp - - - - - - @endfor - - - - - - @else - - - - @endif - -
    {{ __('patient_finance.procedure_name') }}{{ __('patient_finance.amount') }}
    - - - {{ ugandan_shillings($procedure_amount) }} -
    {{ __('patient_finance.total') }}{{ ugandan_shillings($procedure_amount_total) }}

    {{ __('patient_finance.no_procedures') }}

    -
    -
    -
    - -
    -
    -

    {{ __('patient_finance.investigations') }}

    - -
    - - - - - - - - - - @if($ordered_investigations->count() > 0) - @php - // ids of the ordered investigations - $investigation_ids = array(); - - // id of the current ordered investigations to update table later - $order_ids = array(); - - // amounts at the time of the inv was ordered - $inv_orders_amounts = []; - - foreach($ordered_investigations as $ordered_investigation){ - $investigation_ids = array_merge($investigation_ids, explode(",", $ordered_investigation->investigation_id)); - array_push($order_ids, $ordered_investigation->id); - - $inv_orders_amounts = is_null($ordered_investigation->investigation_amount) ? array_merge($inv_orders_amounts, []) : array_merge($inv_orders_amounts, explode(",", $ordered_investigation->investigation_amount)); - } - - $count_orders = count($order_ids); - - // create strings from arrays to use when submitting - $order_ids_string = implode(',', $order_ids); - $investigation_ids_string = implode(',', $investigation_ids); - $ordered_inv_amounts_string = implode(',', $inv_orders_amounts); - @endphp - - @php - $investigation_amount_total = 0; - $investigation_amount = 0; - @endphp - - @for ($i = 0; $i < count($investigation_ids); $i++) - @php - - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_id) { - $investigation_amount = get_price_list_category_price($price_list_id, 2, $investigation_ids[$i]); - } else { - //if amount was set at time of ordering - if (isset($inv_orders_amounts[$i]) && !is_null($inv_orders_amounts[$i])) { - $investigation_amount = $inv_orders_amounts[$i]; - } else{ - $investigation_amount = get_name($investigation_ids[$i], "id", "non_insured_price", "investigations"); - } - } - - $investigation_amount_total += $investigation_amount; - $total_amount_to_pay += $investigation_amount; - @endphp - - - - - - @endfor - - - - - - @else - - - - @endif - -
    {{ __('patient_finance.investigation_name') }}{{ __('patient_finance.amount') }}
    - - - {{ ugandan_shillings($investigation_amount) }} -
    {{ __('patient_finance.total') }}{{ ugandan_shillings($investigation_amount_total) }}

    {{ __('patient_finance.no_investigations') }}

    -
    -
    -
    -

    {{ __('patient_finance.treatment') }}

    - -
    - - - - - - - - - - - @if($treatment) - - @php - $treatment_amount_total = 0; - $treatment_amount = 0; - - // ids of the ordered drugs - $drug_ids = explode(",", $treatment['drugs']); - - // quantities of the ordered drugs - $drug_quantities = explode(",", $treatment['quantities_dispensed']); - $purchased_elsewhere = is_null($treatment["purchased_elsewhere"]) ? [] : explode(",", $treatment["purchased_elsewhere"]); - @endphp - - @for ($i = 0; $i < count($drug_ids); $i++) - @php - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_id) { - $treatment_amount = get_price_list_category_price($price_list_id, 3, $drug_ids[$i]); - } else { - $treatment_amount = get_name($drug_ids[$i], "id", "non_insured_price", "drugs"); - } - @endphp - - @if(count($purchased_elsewhere) > 0 && isset($purchased_elsewhere[$i]) && $purchased_elsewhere[$i] == 1) - - - - - - - @else - - - - - - - @endif - @endfor - - - - - - @else - - - - @endif - -
    {{ __('patient_finance.item_name') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.item_price') }}{{ __('patient_finance.subtotal') }}
    - - {{ $drug_quantities[$i] }} - {{ ugandan_shillings($treatment_amount) }} - {{ __('patient_finance.purchased_from_else_where') }}
    - - {{ $drug_quantities[$i] }} - {{ ugandan_shillings($treatment_amount) }} - - @php - $treatment_subtotal = $drug_quantities[$i] * $treatment_amount; - $treatment_amount_total += $treatment_subtotal; - $total_amount_to_pay += $drug_quantities[$i] * $treatment_amount; - @endphp - {{ ugandan_shillings($treatment_subtotal) }} -
    {{ __('patient_finance.total') }}{{ ugandan_shillings($treatment_amount_total) }}

    {{ __('patient_finance.no_treatment') }}

    -
    -
    -
    - -
    -
    -

    {{ __('patient_finance.sundries') }}

    - -
    - - - - - - - - - - - @if($ordered_sundries->count() > 0) - @php - $sundries_ids = array(); - $sundries_quantity = array(); - $order_ids = array(); - // amounts at the time of the inv was ordered - $sundries_orders_amounts = []; - - foreach($ordered_sundries as $ordered_sundry){ - $sundries_ids = array_merge($sundries_ids, explode(",", $ordered_sundry->sundries_id)); - $sundries_quantity = array_merge($sundries_quantity, explode(",", $ordered_sundry->quantity)); - array_push($order_ids, $ordered_sundry->id); - //if amounts are put at the time of ordering - $sundries_orders_amounts = is_null($ordered_sundry->sundries_amount) ? array_merge($sundries_orders_amounts, []) : array_merge($sundries_orders_amounts, explode(",", $ordered_sundry->sundries_amount)); - } - - $count_orders = count($order_ids); - - // create strings from arrays to use when submitting - $order_ids_string = implode(',', $order_ids); - $sundries_ids_string = implode(',', $sundries_ids); - $sundries_orders_amounts_string = implode(',', $sundries_orders_amounts); - $orders_count = 0; - $sundries_cost_total = 0; - @endphp - - @for($i = 0; $i < count($sundries_ids); $i++) - @php - - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_id) { - $sundry_amount = get_price_list_category_price($price_list_id, 5, $sundries_ids[$i]); - } else { - //if amount was set at time of ordering - if (isset($sundries_orders_amounts[$i]) && !is_null($sundries_orders_amounts[$i])) { - $sundry_amount = $sundries_orders_amounts[$i]; - } else{ - $sundry_amount = get_name($sundries_ids[$i], "id", "non_insured_price", "sundries"); - } - } - - // get the subtotal for this sundry - $sundry_subtotal = $sundries_quantity[$i] * $sundry_amount; - $sundries_cost_total += $sundry_subtotal; - $total_amount_to_pay += $sundry_subtotal; - @endphp - - - - - - - - - @php $orders_count++; @endphp - @endfor - - - - - - @else - - - - @endif - -
    {{ __('patient_finance.sundry_name') }}{{ __('patient_finance.unit_cost') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.amount') }}
    - - - {{ $sundry_amount }} - - {{ $sundries_quantity[$i] }} - - {{ ugandan_shillings($sundry_subtotal) }} -
    {{ __('patient_finance.total') }}{{ ugandan_shillings($sundries_cost_total) }}

    {{ __('patient_finance.no_sundries') }}

    -
    -
    - @php - $patient_to_pay = $total_amount_to_pay; - $patient_category_to_pay = 0; - if ($pay_later == 1) { - $patient_category_to_pay = $patient_to_pay; - $patient_to_pay = 0; - } - - $hospital_to_pay_general_discount = $patient_to_pay * ($discount_percentage / 100); - $patient_to_pay = $patient_to_pay - $hospital_to_pay_general_discount; - @endphp -
    -
    -
    - - - - - - @if($hospital_to_pay_general_discount > 0) - - - - - @endif -
    {{ __('patient_finance.total_amount') }} -

    {{ ugandan_shillings($total_amount_to_pay) }}

    -
    {{ __('patient_finance.hospital_to_pay') }}

    {{ ugandan_shillings($hospital_to_pay_general_discount) }}

    -
    -
    - - - - - - @if($patient_category_to_pay > 0) - - - - - @endif -
    {{ __('patient_finance.patient_to_pay') }} -

    {{ ugandan_shillings($patient_to_pay) }}

    -
    {{ isset($categories[$patient->category_id]) ? $categories[$patient->category_id] : "Patient Category" }} To Pay

    {{ ugandan_shillings($patient_category_to_pay) }}

    -
    -
    -
    -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/central_billing.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/central_billing.blade.php deleted file mode 100755 index 5ef8a03e..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/central_billing.blade.php +++ /dev/null @@ -1,346 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('patient_finance.central_billing_receipt') }}

    -
    -
    - -
    -
    - -
    -
    -
    - - @php - // check if receipt has a debt plan - $previous_debt_plan_id = get_name($receipt_number, 'receipt_number', 'id', 'debt_plan'); - @endphp - - @if($previous_debt_plan_id != 'N/A') -

    - {{ __('patient_finance.print_guarantor_agreement') }} - @endif - -
    -
    -
    -
    - @if(Auth::user()->can('view-episode-summary')) - {{ __('patient_episode.episode_summary') }} - @endif -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - {{ __('patient_finance.tel') }}: {{ $hospital_information->phone_number }}
    - {{ __('patient_finance.email') }}: {{ $hospital_information->email }}
    - {{ __('patient_finance.cashier') }}: {{ get_full_name($cashier, 'id', 'first_name', 'last_name', 'users') }}
    - {{ __('patient_finance.date') }}: {{ streamline_date_time_short($receipt_date) }}
    - @if($is_invoice == 1) {{ __('patient_finance.invoice_number') }} @else {{ __('patient_finance.receipt_number') }} @endif : {{ $receipt_number }}
    - {{ __('patient_finance.patient_name') }} : {{ $patient->first_name }} {{ $patient->last_name }}
    - {{ __('patient_finance.patient_number') }} : {{ $patient->number }}
    - {{ __('patient_finance.patient_category') }} : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - - @if(isset($service_ids_array) && count($service_ids_array) > 0) - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($service_ids_array); $i++) - - - - - - @endfor - @else - @php $service_total = 0; @endphp - - @for($i = 0; $i < count($service_ids_array); $i++) - @php $service_total += $service_prices_array[$i]; @endphp - @endfor - - - - - - - @endif - @endif - - @if(isset($procedure_ids_array) && count($procedure_ids_array) > 0) - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($procedure_ids_array); $i++) - - - - - - @endfor - @else - @php $procedure_total = 0; @endphp - - @for($i = 0; $i < count($procedure_ids_array); $i++) - @php $procedure_total += $procedure_amounts_array[$i]; @endphp - @endfor - - - - - - - @endif - @endif - - @if(isset($investigation_ids_array) && count($investigation_ids_array) > 0) - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($investigation_ids_array); $i++) - - - - - - @endfor - @else - @php $invs_total = 0; @endphp - - @for($i = 0; $i < count($investigation_ids_array); $i++) - @php $invs_total += $investigation_amounts_array[$i]; @endphp - @endfor - - - - - - - @endif - @endif - - @if(isset($treatment_item) && count($treatment_item) > 0) - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($treatment_item); $i++) - - - - - - @endfor - @else - @php $treatment_total = 0; @endphp - - @for($i = 0; $i < count($treatment_item); $i++) - @php $treatment_total += $treatment_subtotal[$i]; @endphp - @endfor - - - - - - - @endif - @endif - - @if(isset($sundry_item) && count($sundry_item) > 0) - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($sundry_item); $i++) - - - - - - @endfor - @else - @php $sundry_total = 0; @endphp - - @for($i = 0; $i < count($sundry_item); $i++) - @php $sundry_total += $sundry_subtotal[$i]; @endphp - @endfor - - - - - - - @endif - @endif - - @if(isset($optic_item)) - @for($i = 0; $i < count($optic_item); $i++) - - - - - - @endfor - @endif - - - - - - - - - - - @if($staff_guarantor_to_pay > 0) - - - - - @endif - - @if($patient_category_to_pay > 0) - - - - - @endif - - @if($hospital_to_pay > 0) - - - - - @endif - - @if($one_off_discount > 0) - - - - - @endif - - @if($one_off_discount > 0 && $one_off_discount_memo != "") - - - - - @endif - - - - - - - @if($treatment_balance > 0) - - - - - @endif - - @if(count($return_payment_methods) > 0) - - @foreach($return_payment_methods as $key => $value) - - - - - @endforeach - @endif - - @if($patient_account_pay_with > 0) - - - - - @endif - - @if($family_account_pay_with > 0) - - - - - @endif - - @if($balance > 0) - - - - - @endif - -
    {{ __('patient_finance.description') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.price') }}
    {{ get_name($service_ids_array[$i], "id", "name", "services") }}N/A{{ ugandan_shillings($service_prices_array[$i]) }}
    ServicesN/A{{ ugandan_shillings($service_total) }}
    {{ get_name($procedure_ids_array[$i], "id", "name", "procedures") }}N/A{{ ugandan_shillings($procedure_amounts_array[$i]) }}
    ProceduresN/A{{ ugandan_shillings($procedure_total) }}
    {{ get_name($investigation_ids_array[$i], "id", "name", "investigations") }}N/A{{ ugandan_shillings($investigation_amounts_array[$i]) }}
    InvestigationsN/A{{ ugandan_shillings($invs_total) }}
    {{ get_name($treatment_item[$i], "id", "name", "drugs") }}{{ $treatment_quantity[$i] }}{{ ugandan_shillings($treatment_subtotal[$i]) }}
    TreatmentN/A{{ ugandan_shillings($treatment_total) }}
    {{ get_name($sundry_item[$i], "id", "name", "sundries") }}{{ $sundry_quantity[$i] }}{{ ugandan_shillings($sundry_subtotal[$i]) }}
    SundriesN/A{{ ugandan_shillings($sundry_total) }}
    {{ get_name($optic_item[$i], "id", "name", "eye_glasses") }}{{ $optic_quantity[$i] }}{{ ugandan_shillings($optic_subtotal[$i]) }}
    {{ __('patient_finance.total_to_pay') }}{{ ugandan_shillings($total_amount_pay) }}
    {{ __('patient_finance.staff_guarantor_to_pay') }}{{ ugandan_shillings($staff_guarantor_to_pay) }}
    {{ get_name($patient_category_id_to_pay, "id", "name", "patient_categories") }} To Pay{{ ugandan_shillings($patient_category_to_pay) }}
    {{ __('patient_finance.hospital_to_pay') }}{{ ugandan_shillings($hospital_to_pay) }}
    {{ __('patient_finance.one_off_discount_amount') }}{{ ugandan_shillings($one_off_discount) }}
    {{ __('patient_finance.one_off_discount_memo') }}{{ $one_off_discount_memo }}
    {{ __('patient_finance.patient_to_pay') }}{{ ugandan_shillings($patient_to_pay) }}
    {{ __('patient_finance.progressive_treatment_balance') }}{{ ugandan_shillings($treatment_balance) }}
    {{ __('patient_finance.patient_paid_with') }} {{ ($key == 0) ? 'Cash' : get_name($key, 'id', 'name', 'patient_payment_methods') }}{{ ugandan_shillings($value) }}
    {{ __('patient_finance.paid_with_patient_account_wallet') }}{{ ugandan_shillings($patient_account_pay_with) }}
    {{ __('patient_finance.paid_with_family_account_wallet') }}{{ ugandan_shillings($family_account_pay_with) }}
    {{ __('patient_finance.balance_to_pay') }}{{ ugandan_shillings($balance) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/central_billing_pdf.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/central_billing_pdf.blade.php deleted file mode 100755 index bb6f7978..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/central_billing_pdf.blade.php +++ /dev/null @@ -1,298 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Patient Receipt - Stre@mline') }} - - - - - - - - - -
    - @include('layouts.header_pdf_print') - - - - - - - - - - - - - - - - -
    {{ __('patient_finance.patient_names') }}{{ $patient->first_name }} {{ $patient->last_name }}{{ __('patient_finance.patient_number') }}{{ $patient->number }}{{ __('patient_finance.patient_category') }}{{ get_name($patient->category_id, "id", "name", "patient_categories") }}
    {{ __('patient_finance.date') }}{{ streamline_date_time_short($receipt_date) }}@if($is_invoice == 1) {{ __('patient_finance.invoice_number') }} @else {{ __('patient_finance.receipt_number') }} @endif{{ $receipt_number }}
    - -
    - - - - - - - - @if(isset($service_ids_array) && count($service_ids_array) > 0) - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($service_ids_array); $i++) - - - - - - @endfor - @else - @php $service_total = 0; @endphp - - @for($i = 0; $i < count($service_ids_array); $i++) - @php $service_total += $service_prices_array[$i]; @endphp - @endfor - - - - - - - @endif - @endif - - @if(isset($procedure_ids_array) && count($procedure_ids_array) > 0) - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($procedure_ids_array); $i++) - - - - - - @endfor - @else - @php $procedure_total = 0; @endphp - - @for($i = 0; $i < count($procedure_ids_array); $i++) - @php $procedure_total += $procedure_amounts_array[$i]; @endphp - @endfor - - - - - - - @endif - @endif - - @if(isset($investigation_ids_array) && count($investigation_ids_array) > 0) - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($investigation_ids_array); $i++) - - - - - - @endfor - @else - @php $invs_total = 0; @endphp - - @for($i = 0; $i < count($investigation_ids_array); $i++) - @php $invs_total += $investigation_amounts_array[$i]; @endphp - @endfor - - - - - - - @endif - @endif - - @if(isset($treatment_item) && count($treatment_item) > 0) - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($treatment_item); $i++) - - - - - - @endfor - @else - @php $treatment_total = 0; @endphp - - @for($i = 0; $i < count($treatment_item); $i++) - @php $treatment_total += $treatment_subtotal[$i]; @endphp - @endfor - - - - - - - @endif - @endif - - @if(isset($sundry_item) && count($sundry_item) > 0) - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($sundry_item); $i++) - - - - - - @endfor - @else - @php $sundry_total = 0; @endphp - - @for($i = 0; $i < count($sundry_item); $i++) - @php $sundry_total += $sundry_subtotal[$i]; @endphp - @endfor - - - - - - - @endif - @endif - - @if(isset($optic_item)) - @for($i = 0; $i < count($optic_item); $i++) - - - - - - @endfor - @endif - - - - - - - - - - - @if($staff_guarantor_to_pay > 0) - - - - - @endif - - @if($patient_category_to_pay > 0) - - - - - @endif - - @if($hospital_to_pay > 0) - - - - - @endif - - @if($one_off_discount > 0) - - - - - @endif - - @if($one_off_discount > 0 && $one_off_discount_memo != "") - - - - - @endif - - - - - - - @if($balance > 0) - - - - - @endif - - @if($treatment_balance > 0) - - - - - @endif - - @if(count($return_payment_methods) > 0) - - @foreach($return_payment_methods as $key => $value) - - - - - @endforeach - @endif - - @if($patient_account_pay_with > 0) - - - - - @endif - - @if($family_account_pay_with > 0) - - - - - @endif - -
    {{ __('patient_finance.description') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.price') }}
    {{ get_name($service_ids_array[$i], "id", "name", "services") }}N/A{{ ugandan_shillings($service_prices_array[$i]) }}
    ServicesN/A{{ ugandan_shillings($service_total) }}
    {{ get_name($procedure_ids_array[$i], "id", "name", "procedures") }}N/A{{ ugandan_shillings($procedure_amounts_array[$i]) }}
    ProceduresN/A{{ ugandan_shillings($procedure_total) }}
    {{ get_name($investigation_ids_array[$i], "id", "name", "investigations") }}N/A{{ ugandan_shillings($investigation_amounts_array[$i]) }}
    InvestigationsN/A{{ ugandan_shillings($invs_total) }}
    {{ get_name($treatment_item[$i], "id", "name", "drugs") }}{{ $treatment_quantity[$i] }}{{ ugandan_shillings($treatment_subtotal[$i]) }}
    TreatmentsN/A{{ ugandan_shillings($treatment_total) }}
    {{ get_name($sundry_item[$i], "id", "name", "sundries") }}{{ $sundry_quantity[$i] }}{{ ugandan_shillings($sundry_subtotal[$i]) }}
    SundriesN/A{{ ugandan_shillings($sundry_total) }}
    {{ get_name($optic_item[$i], "id", "name", "eye_glasses") }}{{ $optic_quantity[$i] }}{{ ugandan_shillings($optic_subtotal[$i]) }}
    {{ __('patient_finance.total_to_pay') }}{{ ugandan_shillings($total_amount_pay) }}
    {{ __('patient_finance.staff_guarantor_to_pay') }}{{ ugandan_shillings($staff_guarantor_to_pay) }}
    {{ get_name($patient_category_id_to_pay, "id", "name", "patient_categories") }} To Pay{{ ugandan_shillings($patient_category_to_pay) }}
    {{ __('patient_finance.hospital_to_pay') }}{{ ugandan_shillings($hospital_to_pay) }}
    {{ __('patient_finance.one_off_discount_amount') }}{{ ugandan_shillings($one_off_discount) }}
    {{ __('patient_finance.one_off_discount_memo') }}{{ $one_off_discount_memo }}
    {{ __('patient_finance.patient_to_pay') }}{{ ugandan_shillings($patient_to_pay) }}
    {{ __('patient_finance.balance_to_pay') }}{{ ugandan_shillings($balance) }}
    {{ __('patient_finance.progressive_treatment_balance') }}{{ ugandan_shillings($treatment_balance) }}
    {{ __('patient_finance.patient_paid_with') }} {{ ($key == 0) ? 'Cash' : get_name($key, 'id', 'name', 'patient_payment_methods') }}{{ ugandan_shillings($value) }}
    {{ __('patient_finance.paid_with_patient_account_wallet') }}{{ ugandan_shillings($patient_account_pay_with) }}
    {{ __('patient_finance.paid_with_family_account_wallet') }}{{ ugandan_shillings($family_account_pay_with) }}
    -
    - -
    -
    - © {{ date('Y') }} Stre@mline -
    -
    - {{ __('patient_finance.printed_on') }} {{ date(" d M Y h:ia") }} {{ __('patient_finance.by') }} {{ auth()->user()->first_name }} {{ auth()->user()->last_name }} -
    -
    - -
    - - - \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/central_billing_reprint.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/central_billing_reprint.blade.php deleted file mode 100755 index bde37e29..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/central_billing_reprint.blade.php +++ /dev/null @@ -1,204 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('patient_finance.central_billing_receipt') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - {{ __('patient_finance.tel') }}: {{ $hospital_information->phone_number }}
    - {{ __('patient_finance.email') }}: {{ $hospital_information->email }}
    - {{ __('patient_finance.cashier') }}: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - {{ __('patient_finance.original_print_date') }}: {{ streamline_date_time_short($receipt_date) }}
    - {{ __('patient_finance.reprint_date') }}: {{ streamline_date_time_short(date('Y-m-d H:i:s')) }}
    - {{ __('patient_finance.receipt_number') }}: {{ $receipt_number }}
    - {{ __('patient_finance.patient_name') }} : {{ $patient->first_name }} {{ $patient->last_name }}
    - {{ __('patient_finance.patient_number') }} : {{ $patient->number }}
    - {{ __('patient_finance.category') }} : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - - @php $total_amount_pay = 0; @endphp - -
    - - - - - - - - @if(isset($service_ids_array) && count($service_ids_array) > 0) - - - - @for($i = 0; $i < count($service_ids_array); $i++) - - - - - @php $total_amount_pay += $service_prices_array[$i]; @endphp - - @endfor - @endif - - @if(isset($procedure_ids_array) && count($procedure_ids_array) > 0) - - - - @for($i = 0; $i < count($procedure_ids_array); $i++) - - - - - @php $total_amount_pay += $procedure_amounts_array[$i]; @endphp - - @endfor - @endif - - @if(isset($investigation_ids_array) && count($investigation_ids_array) > 0) - - - - @for($i = 0; $i < count($investigation_ids_array); $i++) - - - - - @php $total_amount_pay += $investigation_amounts_array[$i]; @endphp - - @endfor - @endif - - @if(isset($treatment_item) && count($treatment_item) > 0) - - - - @for($i = 0; $i < count($treatment_item); $i++) - - - - - @php $total_amount_pay += $treatment_subtotal[$i]; @endphp - - @endfor - @endif - - @if(isset($sundry_item) && count($sundry_item) > 0) - - - - @for($i = 0; $i < count($sundry_item); $i++) - - - - - @php $total_amount_pay += $sundry_subtotal[$i]; @endphp - - @endfor - @endif - - - - - - - - - - - - - - - - @if(($total_amount_pay - $patient_to_pay) > 0) - - - - - @endif - -
    {{ __('patient_finance.description') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.price') }}
    {{ __('patient_finance.services') }}
    {{ get_name($service_ids_array[$i], "id", "name", "services") }}N/A{{ ugandan_shillings($service_prices_array[$i]) }}
    {{ __('patient_finance.procedures') }}
    {{ get_name($procedure_ids_array[$i], "id", "name", "procedures") }}N/A{{ ugandan_shillings($procedure_amounts_array[$i]) }}
    {{ __('patient_finance.investigations') }}
    {{ get_name($investigation_ids_array[$i], "id", "name", "investigations") }}N/A{{ ugandan_shillings($investigation_amounts_array[$i]) }}
    {{ __('patient_finance.drugs') }}
    {{ get_name($treatment_item[$i], "id", "name", "drugs") }}{{ $treatment_quantity[$i] }}{{ ugandan_shillings($treatment_subtotal[$i]) }}
    {{ __('patient_finance.sundries') }}
    {{ get_name($sundry_item[$i], "id", "name", "sundries") }}{{ $sundry_quantity[$i] }}{{ ugandan_shillings($sundry_subtotal[$i]) }}
    {{ __('patient_finance.total_to_pay') }}{{ ugandan_shillings($total_amount_pay) }}
    {{ __('patient_finance.patient_amount_paid') }}{{ ugandan_shillings($patient_to_pay) }}
    {{ __('patient_finance.balance') }}{{ ugandan_shillings($total_amount_pay - $patient_to_pay) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/chi_deposit.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/chi_deposit.blade.php deleted file mode 100644 index bf95319b..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/chi_deposit.blade.php +++ /dev/null @@ -1,373 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('patient_finance.chi_deposit_receipt') }}

    -
    -
    - -
    -
    - -
    -
    -
    - - @php - // check if receipt has a debt plan - $previous_debt_plan_id = get_name($receipt_number, 'receipt_number', 'id', 'debt_plan'); - @endphp - - @if($previous_debt_plan_id != 'N/A') -

    - {{ __('patient_finance.print_guarantor_agreement') }} - @endif - - @if (!empty(session()->get('episode_id'))) -
    -
    -
    -
    - @if(Auth::user()->can('view-episode-summary')) - {{ __('patient_episode.episode_summary') }} - @endif -
    -
    - @else -
    - @endif -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - {{ __('patient_finance.tel') }}: {{ $hospital_information->phone_number }}
    - {{ __('patient_finance.email') }}: {{ $hospital_information->email }}
    - {{ __('patient_finance.cashier') }}: {{ get_full_name($cashier, 'id', 'first_name', 'last_name', 'users') }}
    - {{ __('patient_finance.date') }}: {{ streamline_date_time_short($receipt_date) }}
    - {{ __('patient_finance.receipt_number') }} : {{ $receipt_number }}
    - {{ __('patient_finance.patient_name') }} : {{ $patient->first_name }} {{ $patient->last_name }}
    - {{ __('patient_finance.patient_number') }} : {{ $patient->number }}
    - {{ __('patient_finance.patient_category') }} : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - - @if(isset($service_ids_array) && count($service_ids_array) > 0) - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($service_ids_array); $i++) - - - - - - @endfor - @else - @php $service_total = 0; @endphp - - @for($i = 0; $i < count($service_ids_array); $i++) - @php $service_total += $service_co_payment_amount_array[$i]; @endphp - @endfor - - - - - - - @endif - @endif - - @if(isset($procedure_ids_array) && count($procedure_ids_array) > 0) - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($procedure_ids_array); $i++) - - - - - - @endfor - @else - @php $procedure_total = 0; @endphp - - @for($i = 0; $i < count($procedure_ids_array); $i++) - @php $procedure_total += $procedure_co_payment_amount_array[$i]; @endphp - @endfor - - - - - - - @endif - @endif - - @if(isset($investigation_ids_array) && count($investigation_ids_array) > 0) - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($investigation_ids_array); $i++) - - - - - - @endfor - @else - @php $invs_total = 0; @endphp - - @for($i = 0; $i < count($investigation_ids_array); $i++) - @php $invs_total += $investigation_co_payment_amount_array[$i]; @endphp - @endfor - - - - - - - @endif - @endif - - @if(isset($treatment_item) && count($treatment_item) > 0) - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($treatment_item); $i++) - - - - - - @endfor - @else - @php $treatment_total = 0; @endphp - - @for($i = 0; $i < count($treatment_item); $i++) - @php $treatment_total += $treatment_co_payment_amount_array[$i]; @endphp - @endfor - - - - - - - @endif - @endif - - @if(isset($sundry_item) && count($sundry_item) > 0) - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($sundry_item); $i++) - - - - - - @endfor - @else - @php $sundry_total = 0; @endphp - - @for($i = 0; $i < count($sundry_item); $i++) - @php $sundry_total += $sundry_co_payment_amount_array[$i]; @endphp - @endfor - - - - - - - @endif - @endif - - - - - - - - - - - @if($chi_to_pay > 0) - - - - - @endif - - - - - - - @if($patient_category_to_pay > 0) - - - - - @endif - - - - @if($hospital_to_pay > 0) - - - - - @endif - - @if($staff_guarantor_to_pay > 0) - - - - - @endif - - @if($one_off_discount > 0) - - - - - @endif - - @if($one_off_discount > 0 && !empty($one_off_discount_memo)) - - - - - @endif - - @if(count($return_payment_methods) > 0) - @foreach($return_payment_methods as $key => $value) - - - - - @endforeach - @endif - - @if($patient_account_pay_with > 0) - - - - - @endif - - @if($family_account_pay_with > 0) - - - - - @endif - - @if($balance > 0) - - - - - @endif - -
    {{ __('patient_finance.description') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.price') }}
    {{ get_name($service_ids_array[$i], "id", "name", "services") }}N/A - {{ ugandan_shillings($service_co_payment_amount_array[$i]) }} - - @if($service_chi_amount_array[$i] > 0) - ({{ ugandan_shillings($service_chi_amount_array[$i]) }} {{ __('patient_finance.paid_by_chi') }}) - @endif -
    Services1{{ ugandan_shillings($service_total) }}
    {{ get_name($procedure_ids_array[$i], "id", "name", "procedures") }}1 - {{ ugandan_shillings($procedure_co_payment_amount_array[$i]) }} - - @if($procedure_chi_amount_array[$i] > 0) - ({{ ugandan_shillings($procedure_chi_amount_array[$i]) }} {{ __('patient_finance.paid_by_chi') }}) - @endif -
    Procedures1{{ ugandan_shillings($procedure_total) }}
    {{ get_name($investigation_ids_array[$i], "id", "name", "investigations") }}1 - {{ ugandan_shillings($investigation_co_payment_amount_array[$i]) }} - - @if($investigation_chi_amount_array[$i] > 0) - ({{ ugandan_shillings($investigation_chi_amount_array[$i]) }} {{ __('patient_finance.paid_by_chi') }}) - @endif -
    Investigations1{{ ugandan_shillings($invs_total) }}
    {{ get_name($treatment_item[$i], "id", "name", "drugs") }}{{ $treatment_quantity[$i] }} - {{ ugandan_shillings($treatment_co_payment_amount_array[$i]) }} - - @if($treatment_chi_amount_array[$i] > 0) - ({{ ugandan_shillings($treatment_chi_amount_array[$i]) }} {{ __('patient_finance.paid_by_chi') }}) - @endif -
    Treatment1{{ ugandan_shillings($treatment_total) }}
    {{ get_name($sundry_item[$i], "id", "name", "sundries") }}{{ $sundry_quantity[$i] }} - {{ ugandan_shillings($sundry_co_payment_amount_array[$i]) }} - - @if($sundry_chi_amount_array[$i] > 0) - ({{ ugandan_shillings($sundry_chi_amount_array[$i]) }} {{ __('patient_finance.paid_by_chi') }}) - @endif -
    Sundries1{{ ugandan_shillings($sundry_total) }}
    {{ __('patient_finance.total_to_pay') }}{{ ugandan_shillings($total_amount_pay) }}
    {{ __('patient_finance.chi_to_pay') }}{{ ugandan_shillings($chi_to_pay) }}
    {{ __('patient_finance.patient_co_payment') }} - {{ ugandan_shillings($patient_co_payment) }} -
    {{ get_name($patient_category_id_to_pay, "id", "name", "patient_categories") }} {{ __('patient_finance.to_pay') }}{{ ugandan_shillings($patient_category_to_pay) }}
    {{ __('patient_finance.hospital_to_pay') }}{{ ugandan_shillings($hospital_to_pay) }}
    {{ __('patient_finance.staff_guarantor_to_pay') }}{{ ugandan_shillings($staff_guarantor_to_pay) }}
    {{ __('patient_finance.one_off_discount_amount') }}{{ ugandan_shillings($one_off_discount) }}
    {{ __('patient_finance.one_off_discount_memo') }}{{ $one_off_discount_memo }}
    {{ __('patient_finance.patient_paid_with') }} {{ ($key == 0) ? 'Cash' : get_name($key, 'id', 'name', 'patient_payment_methods') }}{{ ugandan_shillings($value) }}
    {{ __('patient_finance.paid_with_patient_account_wallet') }}{{ ugandan_shillings($patient_account_pay_with) }}
    {{ __('patient_finance.paid_with_family_account_wallet') }}{{ ugandan_shillings($family_account_pay_with) }}
    {{ __('patient_finance.balance_to_pay') }}{{ ugandan_shillings($balance) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/chi_deposit_pdf.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/chi_deposit_pdf.blade.php deleted file mode 100644 index 65d04a1d..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/chi_deposit_pdf.blade.php +++ /dev/null @@ -1,315 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Patient Receipt - Stre@mline') }} - - - - - - - - - -
    - @include('layouts.header_pdf_print') - - - - - - - - - - - - - - - - - - -
    {{ __('patient_finance.patient_names') }}{{ $patient->first_name }} {{ $patient->last_name }}{{ __('patient_finance.patient_number') }}{{ $patient->number }}{{ __('patient_finance.patient_category') }}{{ get_name($patient->category_id, "id", "name", "patient_categories") }}
    {{ __('patient_finance.date') }}{{ streamline_date_time_short($receipt_date) }}{{ __('patient_finance.receipt_number') }}{{ $receipt_number }}{{ __('patient_finance.cashier') }}{{ get_full_name($cashier, 'id', 'first_name', 'last_name', 'users') }}
    - -
    - - - - - - - - @if(isset($service_ids_array) && count($service_ids_array) > 0) - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($service_ids_array); $i++) - - - - - - @endfor - @else - @php $service_total = 0; @endphp - - @for($i = 0; $i < count($service_ids_array); $i++) - @php $service_total += $service_co_payment_amount_array[$i]; @endphp - @endfor - - - - - - - @endif - @endif - - @if(isset($procedure_ids_array) && count($procedure_ids_array) > 0) - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($procedure_ids_array); $i++) - - - - - - @endfor - @else - @php $procedure_total = 0; @endphp - - @for($i = 0; $i < count($procedure_ids_array); $i++) - @php $procedure_total += $procedure_co_payment_amount_array[$i]; @endphp - @endfor - - - - - - - @endif - @endif - - @if(isset($investigation_ids_array) && count($investigation_ids_array) > 0) - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($investigation_ids_array); $i++) - - - - - - @endfor - @else - @php $invs_total = 0; @endphp - - @for($i = 0; $i < count($investigation_ids_array); $i++) - @php $invs_total += $investigation_co_payment_amount_array[$i]; @endphp - @endfor - - - - - - - @endif - @endif - - @if(isset($treatment_item) && count($treatment_item) > 0) - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($treatment_item); $i++) - - - - - - @endfor - @else - @php $treatment_total = 0; @endphp - - @for($i = 0; $i < count($treatment_item); $i++) - @php $treatment_total += $treatment_co_payment_amount_array[$i]; @endphp - @endfor - - - - - - - @endif - @endif - - @if(isset($sundry_item) && count($sundry_item) > 0) - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($sundry_item); $i++) - - - - - - @endfor - @else - @php $sundry_total = 0; @endphp - - @for($i = 0; $i < count($sundry_item); $i++) - @php $sundry_total += $sundry_co_payment_amount_array[$i]; @endphp - @endfor - - - - - - - @endif - @endif - - - - - - - @if($chi_to_pay > 0) - - - - - @endif - - - - - - - @if($patient_category_to_pay > 0) - - - - - @endif - - @if($hospital_to_pay > 0) - - - - - @endif - - @if($one_off_discount > 0) - - - - - @endif - - @if($one_off_discount > 0 && !empty($one_off_discount_memo)) - - - - - @endif - - @if($staff_guarantor_to_pay > 0) - - - - - @endif - - @if(count($return_payment_methods) > 0) - @foreach($return_payment_methods as $key => $value) - - - - - @endforeach - @endif - - @if($patient_account_pay_with > 0) - - - - - @endif - - @if($family_account_pay_with > 0) - - - - - @endif - - @if($balance > 0) - - - - - @endif - -
    {{ __('patient_finance.description') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.price') }}
    {{ get_name($service_ids_array[$i], "id", "name", "services") }}N/A - {{ ugandan_shillings($service_co_payment_amount_array[$i]) }} - - @if($service_chi_amount_array[$i] > 0) - ({{ ugandan_shillings($service_chi_amount_array[$i]) }} {{ __('patient_finance.paid_by_chi') }}) - @endif -
    Services1{{ ugandan_shillings($service_total) }}
    {{ get_name($procedure_ids_array[$i], "id", "name", "procedures") }}1 - {{ ugandan_shillings($procedure_co_payment_amount_array[$i]) }} - - @if($procedure_chi_amount_array[$i] > 0) - ({{ ugandan_shillings($procedure_chi_amount_array[$i]) }} {{ __('patient_finance.paid_by_chi') }}) - @endif -
    Procedures1{{ ugandan_shillings($procedure_total) }}
    {{ get_name($investigation_ids_array[$i], "id", "name", "investigations") }}1 - {{ ugandan_shillings($investigation_co_payment_amount_array[$i]) }} - - @if($investigation_chi_amount_array[$i] > 0) - ({{ ugandan_shillings($investigation_chi_amount_array[$i]) }} {{ __('patient_finance.paid_by_chi') }}) - @endif -
    Investigations1{{ ugandan_shillings($invs_total) }}
    {{ get_name($treatment_item[$i], "id", "name", "drugs") }}{{ $treatment_quantity[$i] }} - {{ ugandan_shillings($treatment_co_payment_amount_array[$i]) }} - - @if($treatment_chi_amount_array[$i] > 0) - ({{ ugandan_shillings($treatment_chi_amount_array[$i]) }} {{ __('patient_finance.paid_by_chi') }}) - @endif -
    TreatmentsN/A{{ ugandan_shillings($treatment_total) }}
    {{ get_name($sundry_item[$i], "id", "name", "sundries") }}{{ $sundry_quantity[$i] }} - {{ ugandan_shillings($sundry_co_payment_amount_array[$i]) }} - - @if($sundry_chi_amount_array[$i] > 0) - ({{ ugandan_shillings($sundry_chi_amount_array[$i]) }} {{ __('patient_finance.paid_by_chi') }}) - @endif -
    SundriesN/A{{ ugandan_shillings($sundry_total) }}
    {{ __('patient_finance.total_to_pay') }}{{ ugandan_shillings($total_amount_pay) }}
    {{ __('patient_finance.chi_to_pay') }}{{ ugandan_shillings($chi_to_pay) }}
    {{ __('patient_finance.patient_co_payment') }}{{ ugandan_shillings($patient_co_payment) }}
    {{ get_name($patient_category_id_to_pay, "id", "name", "patient_categories") }} {{ __('patient_finance.to_pay') }}{{ ugandan_shillings($patient_category_to_pay) }}
    {{ __('patient_finance.hospital_to_pay') }}{{ ugandan_shillings($hospital_to_pay) }}
    {{ __('patient_finance.one_off_discount_amount') }}{{ ugandan_shillings($one_off_discount) }}
    {{ __('patient_finance.one_off_discount_memo') }}{{ $one_off_discount_memo }}
    {{ __('patient_finance.staff_guarantor_to_pay') }}{{ ugandan_shillings($staff_guarantor_to_pay) }}
    {{ __('patient_finance.patient_paid_with') }} {{ ($key == 0) ? 'Cash' : get_name($key, 'id', 'name', 'patient_payment_methods') }}{{ ugandan_shillings($value) }}
    {{ __('patient_finance.paid_with_patient_account_wallet') }}{{ ugandan_shillings($patient_account_pay_with) }}
    {{ __('patient_finance.paid_with_family_account_wallet') }}{{ ugandan_shillings($family_account_pay_with) }}
    {{ __('patient_finance.balance_to_pay') }}{{ ugandan_shillings($balance) }}
    -
    - -
    -
    - © {{ date('Y') }} Stre@mline -
    -
    - {{ __('patient_finance.printed_on') }} {{ date(" d M Y h:ia") }} {{ __('patient_finance.by') }} {{ auth()->user()->first_name }} {{ auth()->user()->last_name }} -
    -
    - -
    - - - \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/collective_bills.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/collective_bills.blade.php deleted file mode 100755 index 8176e28b..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/collective_bills.blade.php +++ /dev/null @@ -1,228 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('patient_finance.collective_bills_receipt') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - {{ __('patient_finance.tel') }}: {{ $hospital_information->phone_number }}
    - {{ __('patient_finance.email') }}: {{ $hospital_information->email }}
    - {{ __('patient_finance.cashier') }}: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - {{ __('patient_finance.date') }}: {{ streamline_date_time_short($receipt_date) }}
    - {{ __('patient_finance.receipt_number') }} {{ $receipt_number }}
    - {{ __('patient_finance.patient_name') }} : {{ $patient->first_name }} {{ $patient->last_name }}
    - {{ __('patient_finance.patient_number') }} : {{ $patient->number }}
    - {{ __('patient_finance.patient_category') }} : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - - @if(isset($service_ids_array)) - @for($i = 0; $i < count($service_ids_array); $i++) - - - - - - @endfor - @endif - - @if(isset($procedure_ids_array)) - @for($i = 0; $i < count($procedure_ids_array); $i++) - - - - - - @endfor - @endif - - @if(isset($investigation_ids_array)) - @for($i = 0; $i < count($investigation_ids_array); $i++) - - - - - - @endfor - @endif - - @if(isset($treatment_item)) - @for($i = 0; $i < count($treatment_item); $i++) - - - - - - @endfor - @endif - - @if(isset($sundry_item)) - @for($i = 0; $i < count($sundry_item); $i++) - - - - - - @endfor - @endif - - @if(isset($inpatient_to_pay)) - - - - - - @endif - - @if(isset($debt_to_pay)) - - - - - - @endif - - - - - - - - - - - @if($balance > 0) - - - - - @endif - - @if($hospital_to_pay > 0) - - - - - @endif - - @if($one_off_discount > 0) - - - - - @endif - - @if($one_off_discount > 0 && $one_off_discount_memo != "") - - - - - @endif - - - - - - - @if(count($return_payment_methods) > 0) - - @foreach($return_payment_methods as $key => $value) - - - - - @endforeach - @endif - -
    {{ __('patient_finance.description') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.price') }}
    {{ get_name($service_ids_array[$i], "id", "name", "services") }}N/A{{ ugandan_shillings($service_prices_array[$i]) }}
    {{ get_name($procedure_ids_array[$i], "id", "name", "procedures") }}N/A{{ ugandan_shillings($procedure_amounts_array[$i]) }}
    {{ get_name($investigation_ids_array[$i], "id", "name", "investigations") }}N/A{{ ugandan_shillings($investigation_amounts_array[$i]) }}
    {{ get_name($treatment_item[$i], "id", "name", "drugs") }}{{ $treatment_quantity[$i] }}{{ ugandan_shillings($treatment_subtotal[$i]) }}
    {{ get_name($sundry_item[$i], "id", "name", "sundries") }}{{ $sundry_quantity[$i] }}{{ ugandan_shillings($sundry_subtotal[$i]) }}
    {{ __('patient_finance.inpatient_bills') }}N/A{{ ugandan_shillings($inpatient_to_pay) }}
    {{ __('patient_finance.patient_debts') }}N/A{{ ugandan_shillings($debt_to_pay) }}
    {{ __('patient_finance.total_to_pay') }}{{ ugandan_shillings($total_amount_pay) }}
    {{ __('patient_finance.balance_to_pay') }}{{ ugandan_shillings($balance) }}
    {{ __('patient_finance.hospital_to_pay') }}{{ ugandan_shillings($hospital_to_pay) }}
    {{ __('patient_finance.one_off_discount_amount') }}{{ ugandan_shillings($one_off_discount) }}
    {{ __('patient_finance.one_off_discount_memo') }}{{ $one_off_discount_memo }}
    {{ __('patient_finance.patient_to_pay') }}{{ ugandan_shillings($patient_to_pay) }}
    {{ __('patient_finance.patient_paid_with') }} {{ ($key == 0) ? 'Cash' : get_name($key, 'id', 'name', 'patient_payment_methods') }}{{ ugandan_shillings($value) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/inpatient_deposit.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/inpatient_deposit.blade.php deleted file mode 100755 index aeb5684f..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/inpatient_deposit.blade.php +++ /dev/null @@ -1,177 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('patient_finance.inpatient_deposit') }}

    -
    - -
    - -
    -
    -
    - @include('flash::message') - - @php - // check if receipt has a debt plan - $previous_debt_plan_id = get_name($receipt_number, 'receipt_number', 'id', 'debt_plan'); - @endphp - - @if($previous_debt_plan_id != 'N/A') -

    - {{ __('patient_finance.print_guarantor_agreement') }} - @endif - -
    -
    -
    -
    - @if(Auth::user()->can('view-episode-summary')) - {{ __('patient_episode.episode_summary') }} - @endif -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - {{ __('patient_finance.tel') }}: {{ $hospital_information->phone_number }}
    - {{ __('patient_finance.email') }}: {{ $hospital_information->email }}
    - {{ __('patient_finance.cashier') }}: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - {{ __('patient_finance.date') }}: {{ streamline_date_time_short($receipt_date) }}
    - {{ __('patient_finance.receipt_number') }} {{ $receipt_number }}
    - {{ __('patient_finance.patient_names') }} : {{ $patient->first_name }} {{ $patient->last_name }}
    - {{ __('patient_finance.patient_number') }} : {{ $patient->number }}
    - {{ __('patient_finance.patient_category') }} : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - - - - - @if(isset($ward_discount_amount) && $ward_discount_amount > 0) - - - - - @endif - - @if(isset($patient_category_amount) && $patient_category_amount > 0) - - - - - @endif - - @if(isset($staff_guarantor_to_pay) && $staff_guarantor_to_pay > 0) - - - - - @endif - - @if(isset($return_payment_methods) && count($return_payment_methods) > 0) - - @foreach($return_payment_methods as $key => $value) - - - - - @endforeach - @endif - - @if(isset($patient_account_pay_with) && $patient_account_pay_with > 0) - - - - - @endif - - @if(isset($family_account_pay_with) && $family_account_pay_with > 0) - - - - - @endif - -
    {{ __('patient_finance.description') }}{{ __('patient_finance.price') }}
    {{ __('patient_finance.inpatient_deposit') }}{{ ugandan_shillings($patient_to_pay) }}
    {{ __('patient_finance.ward_discount_amount') }}{{ ugandan_shillings($ward_discount_amount) }}
    {{ get_name($patient->category_id, 'id', 'name', 'patient_categories').' '.__('patient_finance.to_pay') }}{{ ugandan_shillings($patient_category_amount) }}
    {{ __('patient_finance.staff_guarantor_to_pay') }}{{ ugandan_shillings($staff_guarantor_to_pay) }}
    {{ __('patient_finance.patient_paid_with') }} {{ ($key == 0) ? 'Cash' : get_name($key, 'id', 'name', 'patient_payment_methods') }}{{ ugandan_shillings($value) }}
    {{ __('patient_finance.paid_with_patient_account_wallet') }}{{ ugandan_shillings($patient_account_pay_with) }}
    {{ __('patient_finance.paid_with_family_account_wallet') }}{{ ugandan_shillings($family_account_pay_with) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/inpatient_payment.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/inpatient_payment.blade.php deleted file mode 100755 index 2e974099..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/inpatient_payment.blade.php +++ /dev/null @@ -1,157 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('patient_finance.inpatient_payment') }}

    -
    - -
    - -
    -
    -
    - @if (!empty(session()->get('episode_id'))) -
    -
    -
    -
    - @if(Auth::user()->can('view-episode-summary')) - {{ __('patient_episode.episode_summary') }} - @endif -
    -
    - @else -
    - @endif -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - {{ __('patient_finance.tel') }}: {{ $hospital_information->phone_number }}
    - {{ __('patient_finance.email') }}: {{ $hospital_information->email }}
    - {{ __('patient_finance.cashier') }}: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - {{ __('patient_finance.date') }}: {{ streamline_date_time_short($receipt_date) }}
    - {{ __('patient_finance.receipt_number') }} {{ $receipt_number }}
    - {{ __('patient_finance.ref') }} : {{ get_full_name($patient_id, 'id', 'first_name', 'last_name', 'patients') }}
    - {{ __('patient_finance.patient_category') }} : {{ get_name($category, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('patient_finance.description') }}{{ __('patient_finance.price') }}
    {{ __('patient_finance.investigations') }}{{ ugandan_shillings($request->investigation_cost) }}
    {{ __('patient_finance.treatment') }}{{ ugandan_shillings($request->treatment_cost) }}
    {{ __('patient_finance.sundries') }}{{ ugandan_shillings($request->sundries_cost) }}
    {{ __('patient_finance.procedures') }}{{ ugandan_shillings($request->procedure_cost) }}
    {{ __('patient_finance.extras') }}{{ ugandan_shillings($request->extras_cost) }}
    TTA{{ ugandan_shillings($request->tta_cost) }}
    {{ __('patient_finance.total') }}{{ ugandan_shillings($request->total_patient_amount_to_pay) }}
    {{ __('patient_finance.amount_paid') }}{{ ugandan_shillings($request->amount_paid) }}
    {{ __('patient_finance.balance') }}{{ ugandan_shillings($request->balance) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/investigations.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/investigations.blade.php deleted file mode 100755 index bec52098..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/investigations.blade.php +++ /dev/null @@ -1,232 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('patient_finance.investigation_receipt') }}

    -
    -
    - -
    -
    - -
    -
    -
    - @include('flash::message') - - @php - // check if receipt has a debt plan - $previous_debt_plan_id = get_name($receipt_number, 'receipt_number', 'id', 'debt_plan'); - @endphp - - @if($previous_debt_plan_id != 'N/A') -

    - {{ __('patient_finance.print_guarantor_agreement') }} - @endif - -
    -
    -
    -
    - @if(Auth::user()->can('view-episode-summary')) - {{ __('patient_episode.episode_summary') }} - @endif -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - {{ __('patient_finance.tel') }}: {{ $hospital_information->phone_number }}
    - {{ __('patient_finance.email') }}: {{ $hospital_information->email }}
    - {{ __('patient_finance.cashier') }}: {{ get_full_name($cashier, 'id', 'first_name', 'last_name', 'users') }}
    - {{ __('patient_finance.date') }}: {{ streamline_date_time_short($receipt_date) }}
    - @if($is_invoice == 1) {{ __('patient_finance.invoice_number') }} @else {{ __('patient_finance.receipt_number') }} @endif : {{ $receipt_number }}
    - {{ __('patient_finance.patient_names') }} : {{ $patient->first_name }} {{ $patient->last_name }}
    - {{ __('patient_finance.patient_number') }} : {{ $patient->number }}
    - {{ __('patient_finance.patient_category') }} : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($investigation_ids_array); $i++) - - - - - @endfor - @endif - - - - - - - - - - - @if($staff_guarantor_to_pay > 0) - - - - - @endif - - @if($patient_category_to_pay > 0) - - - - - @endif - - @if($donor_to_pay > 0) - - - - - @endif - - @if($hospital_to_pay > 0) - - - - - @endif - - @if($patient_unpaid_debts > 0) - - - - - @endif - - @if($one_off_discount > 0) - - - - - @endif - - @if($one_off_discount > 0 && $one_off_discount_memo != "") - - - - - @endif - - - - - - - @if(count($return_payment_methods) > 0) - - @foreach($return_payment_methods as $key => $value) - - - - - @endforeach - @endif - - @if($patient_account_pay_with > 0) - - - - - @endif - - @if($family_account_pay_with > 0) - - - - - @endif - - @if($balance > 0) - - - - - @endif - -
    {{ __('patient_finance.description') }}{{ __('patient_finance.price') }}
    {{ get_name($investigation_ids_array[$i], "id", "name", "investigations") }}{{ ugandan_shillings($investigation_amounts_array[$i]) }}
    {{ __('patient_finance.total_amount') }}{{ ugandan_shillings($total_amount_pay) }}
    {{ __('patient_finance.staff_guarantor_to_pay') }}{{ ugandan_shillings($staff_guarantor_to_pay) }}
    {{ get_name($patient_category_id_to_pay, "id", "name", "patient_categories") }} {{ __('patient_finance.to_pay') }}{{ ugandan_shillings($patient_category_to_pay) }}
    {{ __('patient_finance.donor_to_pay') }}{{ ugandan_shillings($donor_to_pay) }}
    {{ __('patient_finance.hospital_to_pay') }}{{ ugandan_shillings($hospital_to_pay) }}
    {{ __('patient_finance.patient_debts_paid') }}{{ ugandan_shillings($patient_unpaid_debts) }}
    {{ __('patient_finance.one_off_discount_amount') }}{{ ugandan_shillings($one_off_discount) }}
    {{ __('patient_finance.one_off_discount_memo') }}{{ $one_off_discount_memo }}
    {{ __('patient_finance.patient_to_pay') }}{{ ugandan_shillings($patient_to_pay) }}
    {{ __('patient_finance.patient_paid_with') }} {{ ($key == 0) ? 'Cash' : get_name($key, 'id', 'name', 'patient_payment_methods') }}{{ ugandan_shillings($value) }}
    {{ __('patient_finance.paid_with_patient_account_wallet') }}{{ ugandan_shillings($patient_account_pay_with) }}
    {{ __('patient_finance.paid_with_family_account_wallet') }}{{ ugandan_shillings($family_account_pay_with) }}
    {{ __('patient_finance.balance_to_pay') }}{{ ugandan_shillings($balance) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/investigations_reprint.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/investigations_reprint.blade.php deleted file mode 100755 index d8282041..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/investigations_reprint.blade.php +++ /dev/null @@ -1,156 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('patient_finance.investigation_receipt') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    - @if(Auth::user()->can('view-episode-summary')) - {{ __('patient_episode.episode_summary') }} - @endif -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - {{ __('patient_finance.tel') }}: {{ $hospital_information->phone_number }}
    - {{ __('patient_finance.email') }}: {{ $hospital_information->email }}
    - {{ __('patient_finance.cashier') }}: {{ get_full_name($cashier, 'id', 'first_name', 'last_name', 'users') }}
    - {{ __('patient_finance.original_print_date') }}: {{ streamline_date_time_short($receipt_date) }}
    - {{ __('patient_finance.reprint_date') }}: {{ streamline_date_time_short(date('Y-m-d H:i:s')) }}
    - {{ __('patient_finance.receipt_number') }}: {{ $receipt_number }}
    - {{ __('patient_finance.patient_names') }} : {{ $patient->first_name }} {{ $patient->last_name }}
    - {{ __('patient_finance.patient_number') }} : {{ $patient->number }}
    - {{ __('patient_finance.patient_category') }} : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($investigation_ids_array); $i++) - - - - - @endfor - @endif - - - - - - - - - - - @if($discounts_applied > 0) - - - - - @endif - - - - - - -
    {{ __('patient_finance.description') }}{{ __('patient_finance.price') }}
    {{ get_name($investigation_ids_array[$i], "id", "name", "investigations") }}{{ ugandan_shillings($investigation_prices_array[$i]) }}
    {{ __('patient_finance.total_amount') }}{{ ugandan_shillings($total_amount_pay) }}
    - - @if($type == 1) - {{ __('patient_finance.discounts_applied') }} - @else - {{ get_name($patient->category_id, "id", "name", "patient_categories") }} {{ __('patient_finance.to_pay') }} - @endif - - {{ ugandan_shillings($discounts_applied) }}
    {{ __('patient_finance.patient_to_pay') }}{{ ugandan_shillings($patient_to_pay) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/optical_items.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/optical_items.blade.php deleted file mode 100644 index 4c0b35ca..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/optical_items.blade.php +++ /dev/null @@ -1,236 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('patient_finance.optical_receipt') }}

    -
    -
    - -
    -
    - -
    -
    -
    - @include('flash::message') - - @php - // check if receipt has a debt plan - $previous_debt_plan_id = get_name($receipt_number, 'receipt_number', 'id', 'debt_plan'); - @endphp - - @if($previous_debt_plan_id != 'N/A') -

    - {{ __('patient_finance.print_guarantor_agreement') }} - @endif - - @if (!empty(session()->get('episode_id'))) -
    -
    -
    -
    - @if(Auth::user()->can('view-episode-summary')) - {{ __('patient_episode.episode_summary') }} - @endif -
    -
    - @else -
    - @endif -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - {{ __('patient_finance.email') }}: {{ $hospital_information->email }}
    - {{ __('patient_finance.cashier') }}: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - {{ __('patient_finance.date') }}: {{ streamline_date_time_short($receipt_date) }}
    - @if($is_invoice == 1) {{ __('patient_finance.invoice_number') }} @else {{ __('patient_finance.receipt_number') }} @endif : {{ $receipt_number }}
    - {{ __('patient_finance.patient_names') }} : {{ $patient->first_name }} {{ $patient->last_name }}
    - {{ __('patient_finance.patient_number') }} : {{ $patient->number }}
    - {{ __('patient_finance.patient_category') }} : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - - @for($i = 0; $i < count($optical_item); $i++) - - - - - - @endfor - - - - - - - - - - - @if($staff_guarantor_to_pay > 0) - - - - - @endif - - @if($patient_category_to_pay > 0) - - - - - @endif - - @if($donor_to_pay > 0) - - - - - @endif - - @if($hospital_to_pay > 0) - - - - - @endif - - @if($patient_unpaid_debts > 0) - - - - - @endif - - @if($one_off_discount > 0) - - - - - @endif - - @if($one_off_discount > 0 && $one_off_discount_memo != "") - - - - - @endif - - - - - - - @if(count($return_payment_methods) > 0) - - @foreach($return_payment_methods as $key => $value) - - - - - @endforeach - @endif - - @if($patient_account_pay_with > 0) - - - - - @endif - - @if($family_account_pay_with > 0) - - - - - @endif - - @if($balance > 0) - - - - - @endif - -
    {{ __('patient_finance.description') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.price') }}
    {{ get_name($optical_item[$i], "id", "name", "eye_glasses") }}{{ $optical_quantity[$i] }}{{ ugandan_shillings($optical_subtotal[$i]) }}
    {{ __('patient_finance.total_amount') }}{{ ugandan_shillings($total_amount_pay) }}
    {{ __('patient_finance.staff_guarantor_to_pay') }}{{ ugandan_shillings($staff_guarantor_to_pay) }}
    {{ get_name($patient_category_id_to_pay, "id", "name", "patient_categories") }} {{ __('patient_finance.to_pay') }}{{ ugandan_shillings($patient_category_to_pay) }}
    {{ __('patient_finance.donor_to_pay') }}{{ ugandan_shillings($donor_to_pay) }}
    {{ __('patient_finance.hospital_to_pay') }}{{ ugandan_shillings($hospital_to_pay) }}
    Patient Debts Paid{{ ugandan_shillings($patient_unpaid_debts) }}
    One Off Discount{{ ugandan_shillings($one_off_discount) }}
    One Off Discount Memo{{ $one_off_discount_memo }}
    {{ __('patient_finance.patient_to_pay') }}{{ ugandan_shillings($patient_to_pay) }}
    Patient Paid With {{ ($key == 0) ? 'Cash' : get_name($key, 'id', 'name', 'patient_payment_methods') }}{{ ugandan_shillings($value) }}
    {{ __('patient_finance.paid_with_patient_account_wallet') }}{{ ugandan_shillings($patient_account_pay_with) }}
    {{ __('patient_finance.paid_with_family_account_wallet') }}{{ ugandan_shillings($family_account_pay_with) }}
    {{ __('patient_finance.balance_to_pay') }}{{ ugandan_shillings($balance) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/optical_items_reprint.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/optical_items_reprint.blade.php deleted file mode 100644 index a0ca6cf7..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/optical_items_reprint.blade.php +++ /dev/null @@ -1,161 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('patient_finance.optical_receipt') }}

    -
    -
    - -
    -
    - -
    -
    -
    - @if (!empty(session()->get('episode_id'))) -
    -
    -
    -
    - @if(Auth::user()->can('view-episode-summary')) - {{ __('patient_episode.episode_summary') }} - @endif -
    -
    - @else -
    - @endif - -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - {{ __('patient_finance.email') }}: {{ $hospital_information->email }}
    - {{ __('patient_finance.cashier') }}: {{ get_full_name($cashier, 'id', 'first_name', 'last_name', 'users') }}
    - Original Print Date: {{ streamline_date_time_short($receipt_date) }}
    - Reprint Date: {{ streamline_date_time_short(date('Y-m-d H:i:s')) }}
    - {{ __('patient_finance.receipt_number') }}: {{ $receipt_number }}
    - {{ __('patient_finance.patient_names') }} : {{ $patient->first_name }} {{ $patient->last_name }}
    - {{ __('patient_finance.patient_number') }} : {{ $patient->number }}
    - {{ __('patient_finance.patient_category') }} : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - - @for($i = 0; $i < count($optical_ids_array); $i++) - - - - - - @endfor - - - - - - - - - - - @if($discounts_applied > 0) - - - - - @endif - - - - - - -
    {{ __('patient_finance.description') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.price') }}
    {{ get_name($optical_ids_array[$i], "id", "name", "eye_glasses") }}{{ $optical_quantity_array[$i] }}{{ ugandan_shillings($optical_prices_array[$i]) }}
    {{ __('patient_finance.total_amount') }}{{ ugandan_shillings($total_amount_pay) }}
    - - @if($type == 1) - {{ __('patient_finance.discounts_applied') }} - @else - {{ get_name($patient->category_id, "id", "name", "patient_categories") }} {{ __('patient_finance.to_pay') }} - @endif - - {{ ugandan_shillings($discounts_applied) }}
    {{ __('patient_finance.patient_to_pay') }}{{ ugandan_shillings($patient_to_pay) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/print_pdf_receipt.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/print_pdf_receipt.blade.php deleted file mode 100755 index ff9d3fc5..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/print_pdf_receipt.blade.php +++ /dev/null @@ -1,214 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Patient Receipt - Stre@mline') }} - - - - - - - - - -
    - @include('layouts.header_pdf_print') - - - - - - - - - - - - - - - - -
    {{ __('patient_finance.patient_names') }}{{ $patient->first_name }} {{ $patient->last_name }}{{ __('patient_finance.patient_number') }}{{ $patient->number }}{{ __('patient_finance.patient_category') }}{{ get_name($patient->category_id, "id", "name", "patient_categories") }}
    {{ __('patient_finance.date') }}{{ streamline_date_time_short($receipt_date) }}@if($is_invoice == 1) {{ __('patient_finance.invoice_number') }} @else {{ __('patient_finance.receipt_number') }} @endif{{ $receipt_number }}
    - - - - - - - - - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($items); $i++) - - - - - - @endfor - @endif - - - - - - - - - - - @if($staff_guarantor_to_pay > 0) - - - - - @endif - - @if($patient_category_to_pay > 0) - - - - - @endif - - @if($donor_to_pay > 0) - - - - - @endif - - @if($hospital_to_pay > 0) - - - - - @endif - - @if($patient_unpaid_debts > 0) - - - - - @endif - - @if($ward_discount_amount > 0) - - - - - @endif - - @if($one_off_discount > 0) - - - - - @endif - - @if($one_off_discount > 0 && $one_off_discount_memo != "") - - - - - @endif - - - - - - - @if($balance > 0) - - - - - @endif - - @if($discounts_applied > 0) - - - - - @endif - - @if($treatment_balance > 0) - - - - - @endif - - @if(count($return_payment_methods) > 0) - - @foreach($return_payment_methods as $key => $value) - - - - - @endforeach - @endif - - @if($patient_account_pay_with > 0) - - - - - @endif - - @if($family_account_pay_with > 0) - - - - - @endif - -
    {{ __('patient_finance.description') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.price') }}
    - @if($item_table == "inpatient") - {{ $items[$i] }} - @else - {{ get_name($items[$i], "id", "name", $item_table) }} - @endif - {{ $item_quantity[$i] }}{{ ugandan_shillings($item_subtotal[$i]) }}
    - @if(!are_patient_receipts_full_detail()) - {{ ucfirst($item_table) }} - @endif -
    {{ __('patient_finance.total_amount') }}{{ ugandan_shillings($total_amount_pay) }}
    {{ __('patient_finance.staff_guarantor_to_pay') }}{{ ugandan_shillings($staff_guarantor_to_pay) }}
    {{ get_name($patient_category_id_to_pay, "id", "name", "patient_categories") }} {{ __('patient_finance.to_pay') }}{{ ugandan_shillings($patient_category_to_pay) }}
    {{ __('patient_finance.donor_to_pay') }}{{ ugandan_shillings($donor_to_pay) }}
    {{ __('patient_finance.hospital_to_pay') }}{{ ugandan_shillings($hospital_to_pay) }}
    Patient Debts Paid{{ ugandan_shillings($patient_unpaid_debts) }}
    {{ __('patient_finance.ward_discount_amount') }}{{ ugandan_shillings($ward_discount_amount) }}
    {{ __('patient_finance.one_off_discount_amount') }}{{ ugandan_shillings($one_off_discount) }}
    {{ __('patient_finance.one_off_discount_memo') }}{{ $one_off_discount_memo }}
    {{ __('patient_finance.patient_to_pay') }}{{ ugandan_shillings($patient_to_pay) }}
    {{ __('patient_finance.balance_to_pay') }}{{ ugandan_shillings($balance) }}
    {{ __('patient_finance.discounts_applied') }}{{ ugandan_shillings($discounts_applied) }}
    Progressive Treatment Balance{{ ugandan_shillings($treatment_balance) }}
    {{ __('patient_finance.patient_paid_with') }} {{ ($key == 0) ? 'Cash' : get_name($key, 'id', 'name', 'patient_payment_methods') }}{{ ugandan_shillings($value) }}
    {{ __('patient_finance.paid_with_patient_account_wallet') }}{{ ugandan_shillings($patient_account_pay_with) }}
    {{ __('patient_finance.paid_with_family_account_wallet') }}{{ ugandan_shillings($family_account_pay_with) }}
    - -
    -
    - © {{ date('Y') }} Stre@mline -
    -
    - {{ __('patient_finance.printed_on') }} {{ date(" d M Y h:ia") }} {{ __('patient_finance.by') }} {{ auth()->user()->first_name }} {{ auth()->user()->last_name }} -
    -
    - -
    - - - \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/procedures.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/procedures.blade.php deleted file mode 100755 index 1c8b8d5f..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/procedures.blade.php +++ /dev/null @@ -1,232 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('patient_finance.procedure_receipt') }}

    -
    -
    - -
    -
    - -
    -
    -
    - @include('flash::message') - - @php - // check if receipt has a debt plan - $previous_debt_plan_id = get_name($receipt_number, 'receipt_number', 'id', 'debt_plan'); - @endphp - - @if($previous_debt_plan_id != 'N/A') -

    - {{ __('patient_finance.print_guarantor_agreement') }} - @endif - -
    -
    -
    -
    - @if(Auth::user()->can('view-episode-summary')) - {{ __('patient_episode.episode_summary') }} - @endif -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - {{ __('patient_finance.tel') }}: {{ $hospital_information->phone_number }}
    - {{ __('patient_finance.email') }}: {{ $hospital_information->email }}
    - {{ __('patient_finance.cashier') }}: {{ get_full_name($cashier, 'id', 'first_name', 'last_name', 'users') }}
    - {{ __('patient_finance.date') }}: {{ streamline_date_time_short($receipt_date) }}
    - @if($is_invoice == 1) {{ __('patient_finance.invoice_number') }} @else {{ $patient->last_name }} @endif : {{ $receipt_number }}
    - {{ __('patient_finance.patient_names') }} : {{ $patient->first_name }} {{ $patient->last_name }}
    - {{ __('patient_finance.patient_number') }} : {{ $patient->number }}
    - {{ __('patient_finance.patient_category') }} : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($procedure_ids_array); $i++) - - - - - @endfor - @endif - - - - - - - - - - - @if($staff_guarantor_to_pay > 0) - - - - - @endif - - @if($patient_category_to_pay > 0) - - - - - @endif - - @if($donor_to_pay > 0) - - - - - @endif - - @if($hospital_to_pay > 0) - - - - - @endif - - @if($patient_unpaid_debts > 0) - - - - - @endif - - @if($one_off_discount > 0) - - - - - @endif - - @if($one_off_discount > 0 && $one_off_discount_memo != "") - - - - - @endif - - - - - - - @if(count($return_payment_methods) > 0) - - @foreach($return_payment_methods as $key => $value) - - - - - @endforeach - @endif - - @if($patient_account_pay_with > 0) - - - - - @endif - - @if($family_account_pay_with > 0) - - - - - @endif - - @if($balance > 0) - - - - - @endif - -
    {{ __('patient_finance.description') }}{{ __('patient_finance.price') }}
    {{ get_name($procedure_ids_array[$i], "id", "name", "procedures") }}{{ ugandan_shillings($procedure_amounts_array[$i]) }}
    {{ __('patient_finance.total_amount') }}{{ ugandan_shillings($total_amount_pay) }}
    {{ __('patient_finance.staff_guarantor_to_pay') }}{{ ugandan_shillings($staff_guarantor_to_pay) }}
    {{ get_name($patient_category_id_to_pay, "id", "name", "patient_categories") }} {{ __('patient_finance.to_pay') }}{{ ugandan_shillings($patient_category_to_pay) }}
    {{ __('patient_finance.donor_to_pay') }}{{ ugandan_shillings($donor_to_pay) }}
    {{ __('patient_finance.hospital_to_pay') }}{{ ugandan_shillings($hospital_to_pay) }}
    {{ __('patient_finance.patient_debts_paid') }}{{ ugandan_shillings($patient_unpaid_debts) }}
    {{ __('patient_finance.one_off_discount_amount') }}{{ ugandan_shillings($one_off_discount) }}
    {{ __('patient_finance.one_off_discount_memo') }}{{ $one_off_discount_memo }}
    {{ __('patient_finance.patient_to_pay') }}{{ ugandan_shillings($patient_to_pay) }}
    {{ __('patient_finance.patient_paid_with') }} {{ ($key == 0) ? 'Cash' : get_name($key, 'id', 'name', 'patient_payment_methods') }}{{ ugandan_shillings($value) }}
    {{ __('patient_finance.paid_with_patient_account_wallet') }}{{ ugandan_shillings($patient_account_pay_with) }}
    {{ __('patient_finance.paid_with_family_account_wallet') }}{{ ugandan_shillings($family_account_pay_with) }}
    {{ __('patient_finance.balance_to_pay') }}{{ ugandan_shillings($balance) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/procedures_reprint.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/procedures_reprint.blade.php deleted file mode 100755 index 68b383d2..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/procedures_reprint.blade.php +++ /dev/null @@ -1,156 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('patient_finance.procedure_receipt') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    - @if(Auth::user()->can('view-episode-summary')) - {{ __('patient_episode.episode_summary') }} - @endif -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - {{ __('patient_finance.tel') }}: {{ $hospital_information->phone_number }}
    - {{ __('patient_finance.email') }}: {{ $hospital_information->email }}
    - {{ __('patient_finance.cashier') }}: {{ get_full_name($cashier, 'id', 'first_name', 'last_name', 'users') }}
    - {{ __('patient_finance.original_print_date') }}: {{ streamline_date_time_short($receipt_date) }}
    - {{ __('patient_finance.reprint_date') }}: {{ streamline_date_time_short(date('Y-m-d H:i:s')) }}
    - {{ __('patient_finance.receipt_number') }}: {{ $receipt_number }}
    - {{ __('patient_finance.patient_names') }} : {{ $patient->first_name }} {{ $patient->last_name }}
    - {{ __('patient_finance.patient_number') }} : {{ $patient->number }}
    - {{ __('patient_finance.patient_category') }} : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($procedure_ids_array); $i++) - - - - - @endfor - @endif - - - - - - - - - - - @if($discounts_applied > 0) - - - - - @endif - - - - - - -
    {{ __('patient_finance.description') }}{{ __('patient_finance.price') }}
    {{ get_name($procedure_ids_array[$i], "id", "name", "procedures") }}{{ ugandan_shillings($procedure_prices_array[$i]) }}
    {{ __('patient_finance.total_amount') }}{{ ugandan_shillings($total_amount_pay) }}
    - - @if($type == 1) - {{ __('patient_finance.discounts_applied') }} - @else - {{ get_name($patient->category_id, "id", "name", "patient_categories") }} {{ __('patient_finance.to_pay') }} - @endif - - {{ ugandan_shillings($discounts_applied) }}
    {{ __('patient_finance.patient_to_pay') }}{{ ugandan_shillings($patient_to_pay) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/services.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/services.blade.php deleted file mode 100755 index 051aee93..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/services.blade.php +++ /dev/null @@ -1,232 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('patient_finance.services_receipt') }}

    -
    -
    - -
    -
    - -
    -
    -
    - @include('flash::message') - - @php - // check if receipt has a debt plan - $previous_debt_plan_id = get_name($receipt_number, 'receipt_number', 'id', 'debt_plan'); - @endphp - - @if($previous_debt_plan_id != 'N/A') -

    - {{ __('patient_finance.print_guarantor_agreement') }} - @endif - -
    -
    -
    -
    - @if(Auth::user()->can('view-episode-summary')) - {{ __('patient_episode.episode_summary') }} - @endif -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - {{ __('patient_finance.tel') }}: {{ $hospital_information->phone_number }}
    - {{ __('patient_finance.email') }}: {{ $hospital_information->email }}
    - {{ __('patient_finance.patient_names') }} : {{ $patient->first_name }} {{ $patient->last_name }}
    - {{ __('patient_finance.patient_number') }} : {{ $patient->number }}
    - {{ __('patient_finance.patient_category') }} : {{ get_name($patient->category_id, "id", "name", "patient_categories") }}
    - {{ __('patient_finance.date') }}: {{ streamline_date_time_short($receipt_date) }}
    - @if($is_invoice == 1) {{ __('patient_finance.invoice_number') }} @else {{ __('patient_finance.receipt_number') }} @endif : {{ $receipt_number }}
    - {{ __('patient_finance.cashier') }}: {{ get_full_name($cashier, 'id', 'first_name', 'last_name', 'users') }} -

    - -
    - - - - - - - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($service_prices_array); $i++) - - - - - @endfor - @endif - - - - - - - - - - - @if($staff_guarantor_to_pay > 0) - - - - - @endif - - @if($patient_category_to_pay > 0) - - - - - @endif - - @if($donor_to_pay > 0) - - - - - @endif - - @if($hospital_to_pay > 0) - - - - - @endif - - @if($patient_unpaid_debts > 0) - - - - - @endif - - @if($one_off_discount > 0) - - - - - @endif - - @if($one_off_discount > 0 && $one_off_discount_memo != "") - - - - - @endif - - - - - - - @if(count($return_payment_methods) > 0) - - @foreach($return_payment_methods as $key => $value) - - - - - @endforeach - @endif - - @if($patient_account_pay_with > 0) - - - - - @endif - - @if($family_account_pay_with > 0) - - - - - @endif - - @if($balance > 0) - - - - - @endif - -
    {{ __('patient_finance.description') }}{{ __('patient_finance.price') }}
    {{ get_name($service_ids_array[$i], "id", "name", "services") }}{{ ugandan_shillings($service_prices_array[$i]) }}
    {{ __('patient_finance.total_amount') }}{{ ugandan_shillings($total_amount_pay) }}
    {{ __('patient_finance.staff_guarantor_to_pay') }}{{ ugandan_shillings($staff_guarantor_to_pay) }}
    {{ get_name($patient_category_id_to_pay, "id", "name", "patient_categories") }} {{ __('patient_finance.to_pay') }}{{ ugandan_shillings($patient_category_to_pay) }}
    {{ __('patient_finance.donor_to_pay') }}{{ ugandan_shillings($donor_to_pay) }}
    {{ __('patient_finance.hospital_to_pay') }}{{ ugandan_shillings($hospital_to_pay) }}
    {{ __('patient_finance.patient_debts_paid') }}{{ ugandan_shillings($patient_unpaid_debts) }}
    {{ __('patient_finance.one_off_discount_amount') }}{{ ugandan_shillings($one_off_discount) }}
    {{ __('patient_finance.one_off_discount_memo') }}{{ $one_off_discount_memo }}
    {{ __('patient_finance.patient_to_pay') }}{{ ugandan_shillings($patient_to_pay) }}
    {{ __('patient_finance.patient_paid_with') }} {{ ($key == 0) ? 'Cash' : get_name($key, 'id', 'name', 'patient_payment_methods') }}{{ ugandan_shillings($value) }}
    {{ __('patient_finance.paid_with_patient_account_wallet') }}{{ ugandan_shillings($patient_account_pay_with) }}
    {{ __('patient_finance.paid_with_family_account_wallet') }}{{ ugandan_shillings($family_account_pay_with) }}
    {{ __('patient_finance.balance_to_pay') }}{{ ugandan_shillings($balance) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/services_reprint.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/services_reprint.blade.php deleted file mode 100755 index d383ac5d..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/services_reprint.blade.php +++ /dev/null @@ -1,156 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('patient_finance.services_receipt') }}kkk

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    - @if(Auth::user()->can('view-episode-summary')) - {{ __('patient_episode.episode_summary') }} - @endif -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - {{ __('patient_finance.tel') }}: {{ $hospital_information->phone_number }}
    - {{ __('patient_finance.email') }}: {{ $hospital_information->email }}
    - {{ __('patient_finance.patient_names') }} : {{ $patient->first_name }} {{ $patient->last_name }}
    - {{ __('patient_finance.patient_number') }} : {{ $patient->number }}
    - {{ __('patient_finance.patient_category') }} : {{ get_name($patient->category_id, "id", "name", "patient_categories") }}
    - {{ __('patient_finance.cashier') }}: {{ get_full_name($cashier, 'id', 'first_name', 'last_name', 'users') }}
    - {{ __('patient_finance.original_print_date') }}: {{ streamline_date_time_short($receipt_date) }}
    - {{ __('patient_finance.reprint_date') }}: {{ streamline_date_time_short(date('Y-m-d H:i:s')) }}
    - {{ __('patient_finance.receipt_number') }}: {{ $receipt_number }}
    -

    - -
    - - - - - - - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($service_ids_array); $i++) - - - - - @endfor - @endif - - - - - - - - - - - @if($discounts_applied > 0) - - - - - @endif - - - - - - -
    {{ __('patient_finance.description') }}{{ __('patient_finance.price') }}
    {{ get_name($service_ids_array[$i], "id", "name", "services") }}{{ ugandan_shillings($service_prices_array[$i]) }}
    {{ __('patient_finance.total_amount') }}{{ ugandan_shillings($total_amount_pay) }}
    - - @if($type == 1) - {{ __('patient_finance.discounts_applied') }} - @else - {{ get_name($patient->category_id, "id", "name", "patient_categories") }} {{ __('patient_finance.to_pay') }} - @endif - - {{ ugandan_shillings($discounts_applied) }}
    {{ __('patient_finance.patient_to_pay') }}{{ ugandan_shillings($patient_to_pay) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/sundries.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/sundries.blade.php deleted file mode 100755 index 584efd81..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/sundries.blade.php +++ /dev/null @@ -1,234 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('patient_finance.sundries_receipt') }}

    -
    -
    - -
    -
    - -
    -
    -
    - @include('flash::message') - - @php - // check if receipt has a debt plan - $previous_debt_plan_id = get_name($receipt_number, 'receipt_number', 'id', 'debt_plan'); - @endphp - - @if($previous_debt_plan_id != 'N/A') -

    - {{ __('patient_finance.print_guarantor_agreement') }} - @endif - -
    -
    -
    -
    - @if(Auth::user()->can('view-episode-summary')) - {{ __('patient_episode.episode_summary') }} - @endif -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - {{ __('patient_finance.tel') }}: {{ $hospital_information->phone_number }}
    - {{ __('patient_finance.email') }}: {{ $hospital_information->email }}
    - {{ __('patient_finance.cashier') }}: {{ get_full_name($cashier, 'id', 'first_name', 'last_name', 'users') }}
    - {{ __('patient_finance.date') }}: {{ streamline_date_time_short($receipt_date) }}
    - @if($is_invoice == 1) {{ __('patient_finance.invoice_number') }} @else {{ __('patient_finance.receipt_number') }} @endif : {{ $receipt_number }}
    - {{ __('patient_finance.patient_names') }} : {{ $patient->first_name }} {{ $patient->last_name }}
    - {{ __('patient_finance.patient_number') }} : {{ $patient->number }}
    - {{ __('patient_finance.patient_category') }} : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($sundry_item); $i++) - - - - - - @endfor - @endif - - - - - - - - - - - @if($staff_guarantor_to_pay > 0) - - - - - @endif - - @if($patient_category_to_pay > 0) - - - - - @endif - - @if($donor_to_pay > 0) - - - - - @endif - - @if($hospital_to_pay > 0) - - - - - @endif - - @if($patient_unpaid_debts > 0) - - - - - @endif - - @if($one_off_discount > 0) - - - - - @endif - - @if($one_off_discount > 0 && $one_off_discount_memo != "") - - - - - @endif - - - - - - - @if(count($return_payment_methods) > 0) - - @foreach($return_payment_methods as $key => $value) - - - - - @endforeach - @endif - - @if($patient_account_pay_with > 0) - - - - - @endif - - @if($family_account_pay_with > 0) - - - - - @endif - - @if($balance > 0) - - - - - @endif - -
    {{ __('patient_finance.description') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.price') }}
    {{ get_name($sundry_item[$i], "id", "name", "sundries") }}{{ $sundry_quantity[$i] }}{{ ugandan_shillings($sundry_subtotal[$i]) }}
    {{ __('patient_finance.total_amount') }}{{ ugandan_shillings($total_amount_pay) }}
    {{ __('patient_finance.staff_guarantor_to_pay') }}{{ ugandan_shillings($staff_guarantor_to_pay) }}
    {{ get_name($patient_category_id_to_pay, "id", "name", "patient_categories") }} {{ __('patient_finance.to_pay') }}{{ ugandan_shillings($patient_category_to_pay) }}
    {{ __('patient_finance.donor_to_pay') }}{{ ugandan_shillings($donor_to_pay) }}
    {{ __('patient_finance.hospital_to_pay') }}{{ ugandan_shillings($hospital_to_pay) }}
    {{ __('patient_finance.patient_debts_paid') }}{{ ugandan_shillings($patient_unpaid_debts) }}
    {{ __('patient_finance.one_off_discount_amount') }}{{ ugandan_shillings($one_off_discount) }}
    {{ __('patient_finance.one_off_discount_memo') }}{{ $one_off_discount_memo }}
    {{ __('patient_finance.patient_to_pay') }}{{ ugandan_shillings($patient_to_pay) }}
    {{ __('patient_finance.patient_paid_with') }} {{ ($key == 0) ? 'Cash' : get_name($key, 'id', 'name', 'patient_payment_methods') }}{{ ugandan_shillings($value) }}
    {{ __('patient_finance.paid_with_patient_account_wallet') }}{{ ugandan_shillings($patient_account_pay_with) }}
    {{ __('patient_finance.paid_with_family_account_wallet') }}{{ ugandan_shillings($family_account_pay_with) }}
    {{ __('patient_finance.balance_to_pay') }}{{ ugandan_shillings($balance) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/sundries_deposit.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/sundries_deposit.blade.php deleted file mode 100755 index 0a133f58..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/sundries_deposit.blade.php +++ /dev/null @@ -1,226 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('patient_finance.sundries_receipt') }}

    -
    -
    - -
    -
    - -
    -
    -
    - @include('flash::message') - - @php - // check if receipt has a debt plan - $previous_debt_plan_id = get_name($receipt_number, 'receipt_number', 'id', 'debt_plan'); - @endphp - - @if($previous_debt_plan_id != 'N/A') -

    - {{ __('patient_finance.print_guarantor_agreement') }} - @endif - -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - {{ __('patient_finance.tel') }}: {{ $hospital_information->phone_number }}
    - {{ __('patient_finance.email') }}: {{ $hospital_information->email }}
    - {{ __('patient_finance.cashier') }}: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - {{ __('patient_finance.date') }}: {{ streamline_date_time_short($receipt_date) }}
    - @if($is_invoice == 1) {{ __('patient_finance.invoice_number') }} @else {{ __('patient_finance.receipt_number') }} @endif : {{ $receipt_number }}
    - {{ __('patient_finance.patient_names') }} : {{ $patient->first_name }} {{ $patient->last_name }}
    - {{ __('patient_finance.patient_number') }} : {{ $patient->number }}
    - {{ __('patient_finance.patient_category') }} : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($sundry_item); $i++) - - - - - - @endfor - @endif - - - - - - - - - - - @if($staff_guarantor_to_pay > 0) - - - - - @endif - - @if($patient_category_to_pay > 0) - - - - - @endif - - @if($donor_to_pay > 0) - - - - - @endif - - @if($hospital_to_pay > 0) - - - - - @endif - - @if($patient_unpaid_debts > 0) - - - - - @endif - - @if($one_off_discount > 0) - - - - - @endif - - @if($one_off_discount > 0 && $one_off_discount_memo != "") - - - - - @endif - - - - - - - @if(count($return_payment_methods) > 0) - - @foreach($return_payment_methods as $key => $value) - - - - - @endforeach - @endif - - @if($patient_account_pay_with > 0) - - - - - @endif - - @if($family_account_pay_with > 0) - - - - - @endif - - @if($balance > 0) - - - - - @endif - -
    {{ __('patient_finance.description') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.price') }}
    {{ get_name($sundry_item[$i], "id", "name", "sundries") }}{{ $sundry_quantity[$i] }}{{ ugandan_shillings($sundry_subtotal[$i]) }}
    {{ __('patient_finance.total_amount') }}{{ ugandan_shillings($total_amount_pay) }}
    {{ __('patient_finance.staff_guarantor_to_pay') }}{{ ugandan_shillings($staff_guarantor_to_pay) }}
    {{ get_name($patient_category_id_to_pay, "id", "name", "patient_categories") }} {{ __('patient_finance.to_pay') }}{{ ugandan_shillings($patient_category_to_pay) }}
    {{ __('patient_finance.donor_to_pay') }}{{ ugandan_shillings($donor_to_pay) }}
    {{ __('patient_finance.hospital_to_pay') }}{{ ugandan_shillings($hospital_to_pay) }}
    {{ __('patient_finance.patient_debts_paid') }}{{ ugandan_shillings($patient_unpaid_debts) }}
    {{ __('patient_finance.one_off_discount_amount') }}{{ ugandan_shillings($one_off_discount) }}
    {{ __('patient_finance.one_off_discount_memo') }}{{ $one_off_discount_memo }}
    {{ __('patient_finance.patient_to_pay') }}{{ ugandan_shillings($patient_to_pay) }}
    {{ __('patient_finance.patient_paid_with') }} {{ ($key == 0) ? 'Cash' : get_name($key, 'id', 'name', 'patient_payment_methods') }}{{ ugandan_shillings($value) }}
    {{ __('patient_finance.paid_with_patient_account_wallet') }}{{ ugandan_shillings($patient_account_pay_with) }}
    {{ __('patient_finance.paid_with_family_account_wallet') }}{{ ugandan_shillings($family_account_pay_with) }}
    {{ __('patient_finance.balance_to_pay') }}{{ ugandan_shillings($balance) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/sundries_reprint.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/sundries_reprint.blade.php deleted file mode 100755 index 8048a142..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/sundries_reprint.blade.php +++ /dev/null @@ -1,158 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('patient_finance.sundries_receipt') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    - @if(Auth::user()->can('view-episode-summary')) - {{ __('patient_episode.episode_summary') }} - @endif -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - {{ __('patient_finance.tel') }}: {{ $hospital_information->phone_number }}
    - {{ __('patient_finance.email') }}: {{ $hospital_information->email }}
    - {{ __('patient_finance.cashier') }}: {{ get_full_name($cashier, 'id', 'first_name', 'last_name', 'users') }}
    - {{ __('patient_finance.original_print_date') }}: {{ streamline_date_time_short($receipt_date) }}
    - {{ __('patient_finance.reprint_date') }}: {{ streamline_date_time_short(date('Y-m-d H:i:s')) }}
    - {{ __('patient_finance.receipt_number') }}: {{ $receipt_number }}
    - {{ __('patient_finance.patient_names') }} : {{ $patient->first_name }} {{ $patient->last_name }}
    - {{ __('patient_finance.patient_number') }} : {{ $patient->number }}
    - {{ __('patient_finance.patient_category') }} : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($sundry_ids_array); $i++) - - - - - - @endfor - @endif - - - - - - - - - - - @if($discounts_applied > 0) - - - - - @endif - - - - - - -
    {{ __('patient_finance.description') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.price') }}
    {{ get_name($sundry_ids_array[$i], "id", "name", "sundries") }}{{ $sundry_quantity_array[$i] }}{{ ugandan_shillings($sundry_prices_array[$i]) }}
    {{ __('patient_finance.total_amount') }}{{ ugandan_shillings($total_amount_pay) }}
    - - @if($type == 1) - {{ __('patient_finance.discounts_applied') }} - @else - {{ get_name($patient->category_id, "id", "name", "patient_categories") }} {{ __('patient_finance.to_pay') }} - @endif - - {{ ugandan_shillings($discounts_applied) }}
    {{ __('patient_finance.patient_to_pay') }}{{ ugandan_shillings($patient_to_pay) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/treatment.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/treatment.blade.php deleted file mode 100755 index a34f8e28..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/treatment.blade.php +++ /dev/null @@ -1,241 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('patient_finance.treatment_receipt') }}

    -
    -
    - -
    -
    - -
    -
    -
    - @include('flash::message') - - @php - // check if receipt has a debt plan - $previous_debt_plan_id = get_name($receipt_number, 'receipt_number', 'id', 'debt_plan'); - @endphp - - @if($previous_debt_plan_id != 'N/A') -

    - {{ __('patient_finance.print_guarantor_agreement') }} - @endif - -
    -
    -
    -
    - @if(Auth::user()->can('view-episode-summary')) - {{ __('patient_episode.episode_summary') }} - @endif -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - {{ __('patient_finance.email') }}: {{ $hospital_information->email }}
    - {{ __('patient_finance.cashier') }}: {{ get_full_name($cashier, 'id', 'first_name', 'last_name', 'users') }}
    - {{ __('patient_finance.date') }}: {{ streamline_date_time_short($receipt_date) }}
    - @if($is_invoice == 1) {{ __('patient_finance.invoice_number') }} @else {{ __('patient_finance.receipt_number') }} @endif : {{ $receipt_number }}
    - {{ __('patient_finance.patient_names') }} : {{ $patient->first_name }} {{ $patient->last_name }}
    - {{ __('patient_finance.patient_number') }} : {{ $patient->number }}
    - {{ __('patient_finance.patient_category') }} : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($treatment_item); $i++) - - - - - - @endfor - @endif - - - - - - - - - - - @if($staff_guarantor_to_pay > 0) - - - - - @endif - - @if($patient_category_to_pay > 0) - - - - - @endif - - @if($donor_to_pay > 0) - - - - - @endif - - @if($hospital_to_pay > 0) - - - - - @endif - - @if($patient_unpaid_debts > 0) - - - - - @endif - - @if($one_off_discount > 0) - - - - - @endif - - @if($one_off_discount > 0 && $one_off_discount_memo != "") - - - - - @endif - - - - - - - @if(count($return_payment_methods) > 0) - - @foreach($return_payment_methods as $key => $value) - - - - - @endforeach - @endif - - @if($patient_account_pay_with > 0) - - - - - @endif - - @if($family_account_pay_with > 0) - - - - - @endif - - @if($balance > 0) - - - - - @endif - - @if($treatment_balance > 0) - - - - - @endif - -
    {{ __('patient_finance.description') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.price') }}
    {{ get_name($treatment_item[$i], "id", "name", "drugs") }}{{ $treatment_quantity[$i] }}{{ ugandan_shillings($treatment_subtotal[$i]) }}
    {{ __('patient_finance.total_amount') }}{{ ugandan_shillings($total_amount_pay) }}
    {{ __('patient_finance.staff_guarantor_to_pay') }}{{ ugandan_shillings($staff_guarantor_to_pay) }}
    {{ get_name($patient_category_id_to_pay, "id", "name", "patient_categories") }} {{ __('patient_finance.to_pay') }}{{ ugandan_shillings($patient_category_to_pay) }}
    {{ __('patient_finance.donor_to_pay') }}{{ ugandan_shillings($donor_to_pay) }}
    {{ __('patient_finance.hospital_to_pay') }}{{ ugandan_shillings($hospital_to_pay) }}
    {{ __('patient_finance.patient_debts_paid') }}{{ ugandan_shillings($patient_unpaid_debts) }}
    {{ __('patient_finance.one_off_discount_amount') }}{{ ugandan_shillings($one_off_discount) }}
    {{ __('patient_finance.one_off_discount_memo') }}{{ $one_off_discount_memo }}
    {{ __('patient_finance.patient_to_pay') }}{{ ugandan_shillings($patient_to_pay) }}
    {{ __('patient_finance.patient_paid_with') }} {{ ($key == 0) ? 'Cash' : get_name($key, 'id', 'name', 'patient_payment_methods') }}{{ ugandan_shillings($value) }}
    {{ __('patient_finance.paid_with_patient_account_wallet') }}{{ ugandan_shillings($patient_account_pay_with) }}
    {{ __('patient_finance.paid_with_family_account_wallet') }}{{ ugandan_shillings($family_account_pay_with) }}
    {{ __('patient_finance.balance_to_pay') }}{{ ugandan_shillings($balance) }}
    {{ __('patient_finance.progressive_treatment_balance') }}{{ ugandan_shillings($treatment_balance) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/treatment_reprint.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/treatment_reprint.blade.php deleted file mode 100755 index 3408fedc..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/receipts/treatment_reprint.blade.php +++ /dev/null @@ -1,158 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('patient_finance.treatment_receipt') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    - @if(Auth::user()->can('view-episode-summary')) - {{ __('patient_episode.episode_summary') }} - @endif -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - {{ __('patient_finance.tel') }}: {{ $hospital_information->phone_number }}
    - {{ __('patient_finance.email') }}: {{ $hospital_information->email }}
    - {{ __('patient_finance.cashier') }}: {{ get_full_name($cashier, 'id', 'first_name', 'last_name', 'users') }}
    - {{ __('patient_finance.original_print_date') }}: {{ streamline_date_time_short($receipt_date) }}
    - {{ __('patient_finance.reprint_date') }}: {{ streamline_date_time_short(date('Y-m-d H:i:s')) }}
    - {{ __('patient_finance.receipt_number') }}: {{ $receipt_number }}
    - {{ __('patient_finance.patient_names') }} : {{ $patient->first_name }} {{ $patient->last_name }}
    - {{ __('patient_finance.patient_number') }} : {{ $patient->number }}
    - {{ __('patient_finance.patient_category') }} : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - - @if(are_patient_receipts_full_detail()) - @for($i = 0; $i < count($treatment_ids_array); $i++) - - - - - - @endfor - @endif - - - - - - - - - - - @if($discounts_applied > 0) - - - - - @endif - - - - - - -
    {{ __('patient_finance.description') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.price') }}
    {{ get_name($treatment_ids_array[$i], "id", "name", "drugs") }}{{ $treatment_quantity_array[$i] }}{{ ugandan_shillings($treatment_prices_array[$i]) }}
    {{ __('patient_finance.total_amount') }}{{ ugandan_shillings($total_amount_pay) }}
    - - @if($type == 1) - {{ __('patient_finance.discounts_applied') }} - @else - {{ get_name($patient->category_id, "id", "name", "patient_categories") }} {{ __('patient_finance.to_pay') }} - @endif - - {{ ugandan_shillings($discounts_applied) }}
    {{ __('patient_finance.patient_to_pay') }}{{ ugandan_shillings($patient_to_pay) }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/search_patients.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/search_patients.blade.php deleted file mode 100755 index b12c8e54..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/search_patients.blade.php +++ /dev/null @@ -1,257 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('patient_finance.finance_home') }}

    -
    - -
    - -
    - @include('flash::message') - {{ Form::open(['route' => 'patient_finance.search_results', 'method' => 'ANY', 'role' => 'search']) }} - -
    -
    -
    - {{ Form::label('number', __('patients.patient_number')) }} - {{ Form::text('number', '', ['class' => 'form-control typeahead', 'placeholder' => __('patients.patient_number'), 'autocomplete' => 'off', 'spellcheck' => false]) }} -
    -
    - -
    -
    - {{ Form::label('first_name', __('patients.first_name')) }} - {{ Form::text('first_name', '', ['class' => 'form-control typeahead', 'placeholder' => __('patients.first_name'), 'autocomplete' => 'off', 'spellcheck' => false]) }} -
    -
    - -
    -
    - {{ Form::label('last_name', __('patients.last_name')) }} - {{ Form::text('last_name', '', ['class' => 'form-control typeahead', 'placeholder' => __('patients.last_name'), 'autocomplete' => 'off', 'spellcheck' => false]) }} -
    -
    - -
    -
    - {{ Form::label('national_id', __('patients.national_id')) }} - {{ Form::text('national_id', '', ['class' => 'form-control typeahead', 'placeholder' => __('patients.national_id'), 'autocomplete' => 'off', 'spellcheck' => false]) }} -
    -
    - -
    -
    - {{ Form::label('insurance_group', __('patients.insurance_group')) }} - {{ Form::text('insurance_group', '', ['class' => 'form-control typeahead', 'placeholder' => __('patients.insurance_group'), 'autocomplete' => 'off', 'spellcheck' => false]) }} -
    -
    - -
    -
    - {{ Form::label('patient_category', __('patients.patient_category')) }} - {{ Form::text('patient_category', '', ['class' => 'form-control typeahead', 'placeholder' => __('patients.patient_category'), 'autocomplete' => 'off', 'spellcheck' => false]) }} -
    -
    - -
    -
    - {{ Form::label('subcounty', __('patients.sub_county')) }} - {{ Form::text('subcounty', '', ['class' => 'form-control typeahead', 'placeholder' => __('patients.sub_county'), 'autocomplete' => 'off', 'spellcheck' => false]) }} -
    -
    - -
    -
    - {{ Form::label('parish', __('patients.parish')) }} - {{ Form::text('parish', '', ['class' => 'form-control typeahead', 'placeholder' => __('patients.parish'), 'autocomplete' => 'off', 'spellcheck' => false]) }} -
    -
    - -
    -
    - {{ Form::label('village', __('patients.village')) }} - {{ Form::text('village', '', ['class' => 'form-control typeahead', 'placeholder' => __('patients.village'), 'autocomplete' => 'off', 'spellcheck' => false]) }} -
    -
    - -
    - -
    -
    -
    -
    - surgery -
    -
    - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - -@endpush - - diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/search_results.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/search_results.blade.php deleted file mode 100755 index bb27bf2b..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_finance/search_results.blade.php +++ /dev/null @@ -1,77 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('patient_finance.finance_home') }}

    -
    - -
    - -
    -

    {{ __('patient_finance.search_results') }}

    -
    -
    - @if(isset($criteria) && isset($patients)) -

    {{ __('patients.search_criteria') }} : {{ $criteria }}    {{ __('patients.total_results') }} : {{ count($patients) }}    {{ __('patients.clear_search') }}

    - -
    - - - - - - - - - - - - - - - - @if(count($patients) > 0) - @foreach($patients as $patient) - - - - - - - - - - - - @endforeach - @else - - @endif - -
    {{ __('patients.patient_number') }}{{ __('patients.full_names') }}{{ __('patients.age') }}{{ __('patients.next_of_kin') }}{{ __('patients.marital_status') }}{{ __('patients.phone') }}{{ __('patients.occupation') }}{{ __('patients.category') }}
    {{ $patient->number }}{!! insurance_flag($patient->id) !!}{{ get_patients_age($patient->date_of_birth) }}{{ $patient->next_of_kin }}{{ array_key_exists($patient->marital_status, $marital_statuses) ? $marital_statuses[$patient->marital_status] : "N/A" }}{{ $patient->phone }}{{ array_key_exists($patient->occupation_id, $occupations) ? $occupations[$patient->occupation_id] : "N/A" }}{{ array_key_exists($patient->category_id, $categories) ? $categories[$patient->category_id] : "N/A" }} - {{ Form::model($patient->id ,['method' => 'POST', 'route' => ['patient_finance.set_patient_session', $patient->id]]) }} - - {{ Form::close() }} -
    {{ __('patients.no_records_found') }}
    -
    - {{ $patients->links() }} - @endif -
    -
    -
    -@endsection - - - diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_payment_methods/create.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_payment_methods/create.blade.php deleted file mode 100755 index 77d6cb09..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_payment_methods/create.blade.php +++ /dev/null @@ -1,50 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('patient_payment_methods.add_payment_method') }}

    -
    - -
    - -
    -
    - @include('patient_finance::patient_payment_methods.menu') -
    -
    - -@include('flash::message') -
    - {{ Form::open(['route' => 'patient_payment_methods.store', 'data-toggle' => 'validator']) }} -
    -
    - {{ Form::label('name', __('patient_payment_methods.patient_payment_method_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('is_ref_required',__('patient_payment_methods.is_ref_required')) }} -

    -  {{ __('patient_payment_methods.yes') }} {{ Form::radio('is_ref_required', 1, false, ['required']) }} -  {{ __('patient_payment_methods.no') }} {{ Form::radio('is_ref_required', 0, false, ['required']) }} -
    -
    -
    - - {{ Form::button(__('clinics.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10 submit-btn']) }} - {{ Form::button(__('clinics.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - {{ Form::close() }} -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_payment_methods/edit.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_payment_methods/edit.blade.php deleted file mode 100755 index 6acbef85..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_payment_methods/edit.blade.php +++ /dev/null @@ -1,53 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('patient_payment_methods.edit_patient_payment_methods') }}

    -
    - -
    - -
    -
    - @include('patient_finance::patient_payment_methods.menu') -
    -
    - - -@include('flash::message') -
    - {{ Form::model($method, ['method' => 'PUT', 'route' => ['patient_payment_methods.update',$method], 'data-toggle' => 'validator']) }} - -
    -
    - {{ Form::label('name', __('patient_payment_methods.name')) }} - {{ Form::text('name', $method->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('is_ref_required',__('patient_payment_methods.is_ref_required')) }} -

    -  {{ __('patient_payment_methods.yes') }} {{ Form::radio('is_ref_required', 1, ($method->is_ref_required === 1), ['required']) }} -  {{ __('patient_payment_methods.no') }} {{ Form::radio('is_ref_required', 0, ($method->is_ref_required === 0), ['required']) }} -
    -
    -
    - - {{ Form::button(__('clinics.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('clinics.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_payment_methods/inactive.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_payment_methods/inactive.blade.php deleted file mode 100755 index 0a00d465..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_payment_methods/inactive.blade.php +++ /dev/null @@ -1,79 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('patient_payment_methods.activate_payment_methods') }}

    -
    - -
    - -
    -
    - @include('patient_finance::patient_payment_methods.menu') -
    -
    - -
    -
    -
    -
    - - - - - - - - - - @foreach($methods as $method) - - - - - - @endforeach - -
    {{ __('patient_payment_methods.name') }}{{ __('patient_payment_methods.deleted_at') }}
    {{ $method->name }}{{ streamline_date_time($method->deleted_at) }} - {{ __('patient_payment_methods.activate') }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_payment_methods/index.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_payment_methods/index.blade.php deleted file mode 100755 index d0149b81..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_payment_methods/index.blade.php +++ /dev/null @@ -1,120 +0,0 @@ -@php use Streamline\Enums\IntegratedPayments; @endphp -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('patient_payment_methods.payment_methods') }}

    -
    - -
    - -
    -
    - @include('patient_finance::patient_payment_methods.menu') -
    -
    - - -
    - - @include('flash::message') - -
    - - - - - - - - - - - - - - - - - - - - - - - @foreach($methods as $method) - - - - - - - - - @endforeach - -
    {{ __('patient_payment_methods.name') }}{{ __('patient_payment_methods.created_at') }}{{ __('patient_payment_methods.created_by') }}{{ __('patient_payment_methods.integrated_payment') }}
    {{ __('patient_payment_methods.name') }}{{ __('patient_payment_methods.created_at') }}{{ __('patient_payment_methods.created_by') }}{{ __('patient_payment_methods.integrated_payment') }}
    {{ $method->name }}{{ streamline_date_time($method->created_at) }}{{ $users[$method->created_by] ?? '' }}{{ $method->integrated_payment ?? '' }} - {{ __('patient_payment_methods.edit') }} - - {{ __('patient_payment_methods.delete') }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_payment_methods/menu.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_payment_methods/menu.blade.php deleted file mode 100755 index 1888bb63..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_payment_methods/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    - -
    \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_payment_methods/reports.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_payment_methods/reports.blade.php deleted file mode 100755 index fa2d8735..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_payment_methods/reports.blade.php +++ /dev/null @@ -1,190 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('patient_payment_methods.patient_payment_methods_report') }}

    -
    -
    - -
    -
    - - {{ Form::open(['route' => 'patient_payment_methods.reports' , 'data-toggle' => 'validator']) }} -
    -
    -
    -
    - {{ Form::label('staff_member', __('patient_payment_methods.collected_by')) }} - -
    -
    -
    -
    - {{ Form::label('payment_method',__('patient_payment_methods.payment_method')) }} - -
    -
    -
    -
    - {{ Form::label('date_period', 'Cash received on') }} - -
    -
    - - -
    -
    - {{ Form::button(__('investigations.search'),['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10 btn-block', 'style'=>'margin-top: 5px;']) }} -
    -
    -
    - {{ Form::close() }} - -
    - @if($search_text != "") -

    -
    - @endif - -
    - - - - - - - - - - - - - - - - @php $total = 0; @endphp - @foreach($records as $record) - - - - - - - - - - - - @php - $total += $record->amount; - @endphp - @endforeach - - - - - - - - - - - - -
    {{ __('patient_payment_methods.patient_name') }}{{ __('patient_payment_methods.amount_paid') }}{{ __('patient_payment_methods.payment_method') }}{{ __('patient_payment_methods.receipt_number') }}{{ __('patient_payment_methods.ref_number') }}{{ __('patient_payment_methods.ref_number_by') }}{{ __('patient_payment_methods.billing_point') }}{{ __('patient_payment_methods.billed_by') }}{{ __('patient_payment_methods.date') }}
    {{ get_full_name($record->patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($record->patient_id, 'id', 'number', 'patients') }}){{ ugandan_shillings($record->amount) }}{{ ($record->payment_method_id == 0) ? "Cash" : ($payment_methods[$record->payment_method_id] ?? 'NA') }}{{ $record->receipt_number }}{{ !empty($record->ref_number) ? $record->ref_number : '' }}{{ !empty($record->ref_number) ? ($record->ref_number_added_by == 1) ? 'System Generated' : 'User Entered' : '' }}{{ $tags[$record->tag_id] ?? 'NA' }}{{ $users[$record->created_by] ?? 'NA' }}{{ streamline_date_time($record->created_at) }}
    {{ __('patient_payment_methods.total') }}{{ ugandan_shillings($total) }}
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_refund/choose_refund_point.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_refund/choose_refund_point.blade.php deleted file mode 100755 index 3862b773..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_refund/choose_refund_point.blade.php +++ /dev/null @@ -1,54 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') - -
    -
    -

    {{ __('patient_refund.refund_point') }}

    -
    -
    - -
    -
    - -
    - -

    {{ __('patient_refund.choose_a_refund_point') }}

    -
    - - {{ Form::open(['route' => 'patient_refund.register_refund_details', 'data-toggle' => 'validator']) }} -
    -
    - {{ Form::radio('refund_point', 1, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green', ($consultations == 0) ? 'disabled' : '']) }} {{ __('patient_refund.consultations') }}

    - {{--{{ Form::radio('refund_point', 2, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green', ($prescription == 0) ? 'disabled' : '']) }} {{ __('patient_refund.treatments') }}

    --}} - {{ Form::radio('refund_point', 3, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green', ($investigations == 0) ? 'disabled' : '']) }} {{ __('patient_refund.investigations') }}

    -
    -
    - {{ Form::radio('refund_point', 4, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green', ($procedures_paid == 0) ? 'disabled' : '']) }} {{ __('patient_refund.procedures') }}

    - {{ Form::radio('refund_point', 5, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green', ($other_services == 0) ? 'disabled' : '']) }} {{ __('patient_refund.other_services') }}

    - {{--{{ Form::radio('refund_point', 7, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green', ($sundries_paid == 0) ? 'disabled' : '']) }} {{ __('patient_refund.sundries') }}

    --}} -
    -
    - {{ Form::radio('refund_point', 6, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green', ($inpatient_deposits == 0) ? 'disabled' : '']) }} {{ __('patient_refund.inpatient_deposits') }}

    - {{ Form::radio('refund_point', 8, false, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green', ($co_payment == 0) ? 'disabled' : '']) }} {{ __('patient_refund.co_payment') }}

    -
    -
    - -
    - {{ Form::button('Continue',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_refund/receipt.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_refund/receipt.blade.php deleted file mode 100755 index a80d0de0..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_refund/receipt.blade.php +++ /dev/null @@ -1,136 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('patient_refund.patient_refund_receipt') }}

    -
    -
    - -
    -
    - -
    -
    -
    - @if (!empty(session()->get('episode_id'))) -
    -
    -
    -
    - @if(Auth::user()->can('view-episode-summary')) - {{ __('patient_episode.episode_summary') }} - @endif -
    -
    - @else -
    - @endif -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - {{ __('patient_refund.tel') }}: {{ $hospital_information->phone_number }}
    - {{ __('patient_refund.email') }}: {{ $hospital_information->email }}
    - {{ __('patient_refund.cashier') }}: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - {{ __('consultations.date') }}: {{ streamline_date_time_short($receipt_date) }}
    - {{ __('patient_refund.credit_memo_number') }}: {{ $receipt_number }}
    - {{ __('patient_refund.patient') }} : {{ $patient->first_name }} {{ $patient->last_name }}
    - {{ __('finance.patient_number') }} : {{ $patient->number }}
    - {{ __('patient_refund.category') }} : {{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - -
    - - - - - - - - - - - - - - - - - - - - - -
    {{ __('patient_refund.description') }}{{ __('patient_refund.price') }}
    {{ __('patient_refund.refund_amount') }}{{ ugandan_shillings($refund_amount) }}
    {{ __('patient_refund.refund_reason') }}{{ $refund_reason }}
    {{ __('patient_refund.refund_reference_receipt_number') }}{{ $original_receipt_number }}
    -
    -
    -
    -
    - © {{ __('patient_refund.streamline') }} -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Resources/views/patient_refund/register_refund_details.blade.php b/docker/statistics/Modules/PatientFinance/Resources/views/patient_refund/register_refund_details.blade.php deleted file mode 100755 index 03bf3e1a..00000000 --- a/docker/statistics/Modules/PatientFinance/Resources/views/patient_refund/register_refund_details.blade.php +++ /dev/null @@ -1,618 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('patient_refund.refund_details') }}

    -
    -
    - -
    -
    - - @if($refund_point == 1) -
    -
    -
    - -

    {{ __('patient_refund.consultation_payments') }}

    - - - - - - - - - - - - - - - - @foreach($services as $service) - - - - - - - - - - - @endforeach - - -
    -
    -
    - @endif - - @if($refund_point == 2) -
    -
    -
    -

    {{ __('patient_refund.treatment_payments') }}

    - - - - - - - - - - - - - - - - - @foreach($paid_treatments as $paid_treatment) - - - - - - - - - - - - @endforeach - - -
    -
    -
    - @endif - - @if($refund_point == 3) -
    -
    -
    -

    {{ __('patient_refund.investigation_payments') }}

    - -
    - - - - - - - - - - - - - - - @foreach($investigations as $investigation) - - - - - - - - - - - @endforeach - - -
    -
    -
    -
    - @endif - - @if($refund_point == 4) -
    -
    -
    -

    {{ __('patient_refund.procedure_payments') }}

    - -
    - - - - - - - - - - - - - - - @foreach($procedures as $procedure) - - - - - - - - - - - @endforeach - - -
    -
    -
    -
    - @endif - - @if($refund_point == 5) -
    -
    -
    - -

    {{ __('patient_refund.service_payments') }}

    - - - - - - - - - - - - - - - - @foreach($services as $service) - - - - - - - - - - - @endforeach - - -
    -
    -
    - @endif - - @if($refund_point == 6) -
    -
    -
    - -

    {{ __('patient_refund.inpatient_deposits') }}

    - - - - - - - - - - - - - @foreach($inpatient_fees as $inpatient_fee) - - - - - - - - @endforeach - - -
    -
    -
    - @endif - - @if($refund_point == 7) -
    -
    -
    -

    {{ __('patient_refund.sundries_payments') }}

    - - - - - - - - - - - - - - - - - @foreach($paid_sundries as $sundry) - - - - - - - - - - - - @endforeach - - -
    -
    -
    - @endif - - @if($refund_point == 8) -
    -
    -
    - -

    {{ __('patient_refund.co_payment_payments') }}

    - - - - - - - - - - - - - - - - @foreach($services as $service) - - - - - - - - - - - @endforeach - - -
    -
    -
    - @endif - -
    - {{ Form::open(['route' => 'patient_refund.save_refund_details', 'data-toggle' => 'validator']) }} - - {{ Form::hidden('maximum_refund_amount', 0, ['id' => 'maximum_refund_amount']) }} - {{ Form::hidden('id', 0, ['id' => 'refund_id']) }} - {{ Form::hidden('refund_point', $refund_point) }} -
    -
    -
    - {{ Form::label('refund_amount','Refund Amount') }} - {{ Form::number('refund_amount','',['class' => 'form-control compulsory', 'required', 'id' => 'refund_amount']) }} -
    - -
    - {{ Form::label('refund_reason','Refund Reason') }} - {{ Form::textarea('refund_reason','',['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    - {{ Form::label('refund_date','Refund Date') }} -
    - {{ Form::text('refund_date','',['class' => 'form-control datepicker-autoclose compulsory', 'readonly', 'required', 'id'=>'refund_date']) }} - -
    -
    - -
    - {{ Form::label('reverse_doctor_fees','Reverse staff fees') }} - -
    - {{ Form::radio('reverse_doctor_fees', 1, false, ["required"]) }} Yes    - {{ Form::radio('reverse_doctor_fees', 0, false, ["required"]) }} No -
    -
    -
    -
    -
    - {{ Form::button('Refund Patient',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'onclick' => 'return checkAmount();']) }} -
    - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Routes/api.php b/docker/statistics/Modules/PatientFinance/Routes/api.php deleted file mode 100644 index 23ca03df..00000000 --- a/docker/statistics/Modules/PatientFinance/Routes/api.php +++ /dev/null @@ -1,18 +0,0 @@ -get('/patient_finance', function () { - return "Patient Finance"; -}); diff --git a/docker/statistics/Modules/PatientFinance/Routes/web.php b/docker/statistics/Modules/PatientFinance/Routes/web.php deleted file mode 100644 index dd54d2fa..00000000 --- a/docker/statistics/Modules/PatientFinance/Routes/web.php +++ /dev/null @@ -1,83 +0,0 @@ - ['auth', 'disablebackbutton', 'user-locale','subscription-tracking', 'password-expiry']], function () { - // Cancel Patient Transactions - Route::any('/patient_finance/cancel_receipt/{billing_point}/{deposit_id}', 'CancelPatientTransactionsController@cancel_receipt'); - Route::any('/patient_finance/cancel_invoice/{billing_point}/{deposit_id}', 'CancelPatientTransactionsController@cancel_invoice'); - Route::any('/patient_finance/cancel_central_billing/{receipt_number}', 'CancelPatientTransactionsController@cancel_central_billing'); - Route::any('/patient_finance/confirm_cancel_receipt', 'CancelPatientTransactionsController@confirm_cancel_receipt')->name('patient_finance.confirm_cancel_receipt'); - Route::any('/patient_finance/confirm_cancel_central_billing_receipt', 'CancelPatientTransactionsController@confirm_cancel_central_billing_receipt')->name('patient_finance.confirm_cancel_central_billing_receipt'); - Route::any('/patient_finance/cancelled_patient_transactions_report', 'CancelPatientTransactionsController@cancelled_patient_transactions_report')->name('patient_finance.cancelled_patient_transactions_report'); - Route::any('/patient_finance/cancel_chi_deposit/{receipt_number}', 'CancelPatientTransactionsController@cancel_chi_deposit')->name('patient_finance.cancel_chi_deposit'); - Route::any('/patient_finance/confirm_cancel_chi_deposit', 'CancelPatientTransactionsController@confirm_cancel_chi_deposit')->name('patient_finance.confirm_cancel_chi_deposit'); - - /* Patient Refund */ - Route::any('/patient_refund/choose_refund_point', 'PatientRefundController@choose_refund_point'); - Route::any('/patient_refund/register_refund_details', 'PatientRefundController@register_refund_details')->name('patient_refund.register_refund_details'); - Route::any('/patient_refund/save_refund_details', 'PatientRefundController@save_refund_details')->name('patient_refund.save_refund_details'); - - /* Patient Payment Methods */ - Route::any('patient_payment_methods/delete/{id}', 'PatientPaymentMethodsController@delete'); - Route::any('patient_payment_methods/inactive', 'PatientPaymentMethodsController@inactive')->name('patient_payment_methods.inactive'); - Route::any('patient_payment_methods/activate/{id}', 'PatientPaymentMethodsController@activate'); - Route::any('patient_payment_methods/reports/', 'PatientPaymentMethodsController@reports')->name('patient_payment_methods.reports'); - Route::any('patient_payment_methods/is_ref_required/', 'PatientPaymentMethodsController@isRefRequired')->name('patient_payment_methods.is_ref_required'); - Route::resource('patient_payment_methods', 'PatientPaymentMethodsController'); - - /* Patient Finance Controller */ - Route::any('/patient_finance/search_patients', 'PatientFinanceController@search_patients')->name('patient_finance.search_patients'); - Route::any('/patient_finance/search_results', 'PatientFinanceController@search_results')->name('patient_finance.search_results'); - Route::any('/patient_finance/set_patient_session{id}', 'PatientFinanceController@set_patient_session')->name('patient_finance.set_patient_session'); - Route::any('/patient_finance/view_inpatient_bill/{patient_id}/{episode_id}', 'PatientFinanceController@view_inpatient_bill'); - Route::any('/patient_finance/select_payment_option', 'PatientFinanceController@select_payment_option')->name('patient_finance.select_payment_option'); - Route::any('/patient_finance/home', 'PatientFinanceController@home')->name('patient_finance.home'); - Route::any('/patient_finance/make_deposit_consultation', 'PatientFinanceController@make_deposit_consultation')->name('patient_finance.make_deposit_consultation'); - Route::any('/patient_finance/get_service_cost', 'PatientFinanceController@get_service_cost'); - Route::any('/patient_finance/get_discount_cost', 'PatientFinanceController@get_discount_cost'); - Route::any('/patient_finance/save_debt_plan', 'PatientFinanceController@save_debt_plan')->name('patient_finance.save_debt_plan'); - Route::any('/patient_finance/make_deposit_other_services', 'PatientFinanceController@make_deposit_other_services')->name('patient_finance.make_deposit_other_services'); - Route::any('/patient_finance/make_deposit_co_payments', 'PatientFinanceController@make_deposit_co_payments')->name('patient_finance.make_deposit_co_payments'); - Route::any('/patient_finance/store_deposit_services', 'PatientFinanceController@store_deposit_services')->name('patient_finance.store_deposit_services'); - Route::any('/patient_finance/print_service_receipt/{type}/{receipt_number}', 'PatientFinanceController@print_service_receipt'); - Route::any('/patient_finance/print_investigation_receipt/{type}/{receipt_number}', 'PatientFinanceController@print_investigation_receipt'); - Route::any('/patient_finance/make_deposit_investigations', 'PatientFinanceController@make_deposit_investigations')->name('patient_finance.make_deposit_investigations'); - Route::any('/patient_finance/store_deposit_investigations', 'PatientFinanceController@store_deposit_investigations')->name('patient_finance.store_deposit_investigations'); - Route::any('/patient_finance/make_deposit_treatment', 'PatientFinanceController@make_deposit_treatment')->name('patient_finance.make_deposit_treatment'); - Route::any('/patient_finance/store_deposit_treatment', 'PatientFinanceController@store_deposit_treatment')->name('patient_finance.store_deposit_treatment'); - Route::any('/patient_finance/print_treatment_receipt/{type}/{receipt_number}', 'PatientFinanceController@print_treatment_receipt'); - Route::any('/patient_finance/make_deposit_central_billing', 'PatientFinanceController@make_deposit_central_billing')->name('patient_finance.make_deposit_central_billing'); - Route::any('/patient_finance/store_deposit_central_billing', 'PatientFinanceController@store_deposit_central_billing')->name('patient_finance.store_deposit_central_billing'); - Route::any('/patient_finance/get_service_cost_central_billing', 'PatientFinanceController@getServiceCostCentralBilling'); - Route::any('/patient_finance/print_central_billing', 'PatientFinanceController@print_central_billing'); - Route::any('/patient_finance/central_billing_receipt_details/{receipt_number}', 'PatientFinanceController@central_billing_receipt_details'); - Route::any('/patient_finance/reprint_central_billing/{receipt_number}', 'PatientFinanceController@reprint_central_billing'); - Route::any('/patient_finance/make_deposit_procedures', 'PatientFinanceController@make_deposit_procedures')->name('patient_finance.make_deposit_procedures'); - Route::any('/patient_finance/store_deposit_procedures', 'PatientFinanceController@store_deposit_procedures')->name('patient_finance.store_deposit_procedures'); - Route::any('/patient_finance/print_procedures_receipt/{type}/{receipt_number}', 'PatientFinanceController@print_procedures_receipt'); - Route::any('/patient_finance/make_deposit_sundries', 'PatientFinanceController@make_deposit_sundries')->name('patient_finance.make_deposit_sundries'); - Route::any('/patient_finance/store_sundries_deposit', 'PatientFinanceController@store_sundries_deposit')->name('patient_finance.store_sundries_deposit'); - Route::any('/patient_finance/print_sundries_receipt/{type}/{receipt_number}', 'PatientFinanceController@print_sundries_receipt'); - Route::get('/patient_finance/make_inpatient_deposit', 'PatientFinanceController@make_inpatient_deposit')->name('patient_finance.make_inpatient_deposit'); - Route::any('/patient_finance/store_inpatient_deposit', 'PatientFinanceController@store_inpatient_deposit')->name('patient_finance.store_inpatient_deposit'); - Route::any('/patient_finance/print_inpatient_deposit_receipt/{receipt_number}', 'PatientFinanceController@print_inpatient_deposit_receipt'); - Route::any('/patient_finance/customer_episode_statement/{episode_id}', 'PatientFinanceController@customer_episode_statement'); - Route::any('/patient_finance/customer_statement', 'PatientFinanceController@customer_statement')->name('patient_finance.customer_statement'); - Route::any('/patient_finance/pay_all_patient_bills/{patient_id}', 'PatientFinanceController@pay_all_patient_bills'); - Route::any('/patient_finance/save_pay_all_patient_bills', 'PatientFinanceController@save_pay_all_patient_bills')->name('patient_finance.save_pay_all_patient_bills'); - Route::any('/patient_finance/print_item_receipt_pdf', 'PatientFinanceController@print_item_receipt_pdf'); - Route::any('/patient_finance/make_chi_deposits/{item_type}', 'PatientFinanceController@make_chi_deposits')->name('patient_finance.make_chi_deposits'); - Route::any('/patient_finance/store_chi_deposits', 'PatientFinanceController@store_chi_deposits')->name('patient_finance.store_chi_deposits'); - Route::any('/patient_finance/print_chi_deposit/{receipt_number}', 'PatientFinanceController@print_chi_deposit'); - Route::any('/patient_finance/print_chi_deposit_pdf', 'PatientFinanceController@print_chi_deposit_pdf')->name('patient_finance.print_chi_deposit_pdf'); - Route::any('/patient_finance/save_new_non_staff_guarantor', 'PatientFinanceController@save_new_non_staff_guarantor')->name('patient_finance.save_new_non_staff_guarantor'); - Route::any('dynamic_save_of_services_on_central_billing', 'PatientFinanceController@dynamic_save_of_services_on_central_billing'); - Route::any('clean_patient_category_invoices_income_accounts/{start}/{end}', 'PatientFinanceController@clean_patient_category_invoices_income_accounts'); - - Route::any('/patient_finance/make_deposit_optical_items', 'PatientFinanceController@make_deposit_optical_items')->name('patient_finance.make_deposit_optical_items'); - Route::any('/patient_finance/store_optical_items_deposit', 'PatientFinanceController@store_optical_items_deposit')->name('patient_finance.store_optical_items_deposit'); - Route::any('/patient_finance/print_optical_items_receipt/{type}/{receipt_number}', 'PatientFinanceController@print_optical_items_receipt'); - - Route::resource('patient_finance', 'PatientFinanceController'); -}); \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Services/CHIDeposits.php b/docker/statistics/Modules/PatientFinance/Services/CHIDeposits.php deleted file mode 100644 index 3125dc94..00000000 --- a/docker/statistics/Modules/PatientFinance/Services/CHIDeposits.php +++ /dev/null @@ -1,317 +0,0 @@ -patient_id; - $episode_id = $request->episode_id; - - // we need to calculate the wallet amount from the wallets used so that it is not added to the calculations - $wallets_amount = $request->wallets_amount; - $services_wallet_amount = 0; - $procedures_wallet_amount = 0; - $investigations_wallet_amount = 0; - $treatment_wallet_amount = 0; - $sundries_wallet_amount = 0; - - if ($request->service_co_pay > 0 && $wallets_amount > 0) { - if ($request->service_co_pay > $wallets_amount) { - $services_wallet_amount = $wallets_amount; - $wallets_amount = 0; - } else { - $services_wallet_amount = $request->service_co_pay; - $wallets_amount -= $request->service_co_pay; - } - } - - if ($request->procedure_co_pay > 0 && $wallets_amount > 0) { - if ($request->procedure_co_pay > $wallets_amount) { - $procedures_wallet_amount = $wallets_amount; - $wallets_amount = 0; - } else { - $procedures_wallet_amount = $request->procedure_co_pay; - $wallets_amount -= $request->procedure_co_pay; - } - } - - if ($request->investigation_co_pay > 0 && $wallets_amount > 0) { - if ($request->investigation_co_pay > $wallets_amount) { - $investigations_wallet_amount = $wallets_amount; - $wallets_amount = 0; - } else { - $investigations_wallet_amount = $request->investigation_co_pay; - $wallets_amount -= $request->investigation_co_pay; - } - } - - if ($request->treatment_co_pay > 0 && $wallets_amount > 0) { - if ($request->treatment_co_pay > $wallets_amount) { - $treatment_wallet_amount = $wallets_amount; - $wallets_amount = 0; - } else { - $treatment_wallet_amount = $request->treatment_co_pay; - $wallets_amount -= $request->treatment_co_pay; - } - } - - if ($request->sundries_co_pay > 0 && $wallets_amount > 0) { - if ($request->sundries_co_pay > $wallets_amount) { - $sundries_wallet_amount = $wallets_amount; - } else { - $sundries_wallet_amount = $request->sundries_co_pay; - } - } - - // update the track_receipt table to include created receipt - $track_receipts = new TrackReceipt; - $track_receipts->created_by = Auth::id(); - $track_receipts->reason = "CHI Deposits"; - $track_receipts->save(); - $receipt_number = sprintf("%04u", $track_receipts->id); - - // add patient to debtors if balance is more than 0 - if ($request->service_co_payment_balance > 0){ - DepositHelpers::debt($patient_id,$episode_id,$request->service_co_payment_balance,$receipt_number,8); - } - - if ($request->procedure_co_payment_balance > 0){ - DepositHelpers::debt($patient_id,$episode_id,$request->procedure_co_payment_balance,$receipt_number,4); - } - - if ($request->investigation_co_payment_balance > 0){ - DepositHelpers::debt($patient_id,$episode_id,$request->investigation_co_payment_balance,$receipt_number,2); - } - - if ($request->treatment_co_payment_balance > 0){ - DepositHelpers::debt($patient_id,$episode_id,$request->treatment_co_payment_balance,$receipt_number,3); - } - - if ($request->sundries_co_payment_balance > 0){ - DepositHelpers::debt($patient_id,$episode_id,$request->sundries_co_payment_balance,$receipt_number,5); - } - - // patient category discount flag - $discount_status = 0; - - // check if patient has a discount amount more than zero and pay later is not available to them - // this discount amount is represented as hospital to pay general - if($request->hospital_to_pay_general_discount > 0){ - // change discount status - $discount_status = 1; - - DepositHelpers::discount($request->hospital_to_pay_general_discount,$patient_id, $episode_id,$receipt_number,18); - } - - // check if services have been submitted - if($request->service_id){ - $order_ids_array = $request->services_order_ids; - - DepositHelpers::chi_deposits($patient_id, $episode_id, implode(',', $request->service_id), $receipt_number, 8, $request->item_type, implode(',', $request->service_quantity), implode(',', $request->service_chi_to_pay), implode(',', $request->service_co_pay), $request->service_co_payment_total, $request->service_co_payment_balance, implode(',', $request->services_order_ids), $request->service_chi_to_pay_total); - DepositHelpers::service_payment($patient_id, $episode_id, implode(',', $request->service_id), implode(',', $request->service_amount_to_pay),"Services", $receipt_number, $request->service_co_payment_total, implode(',', $request->services_order_ids), $services_wallet_amount); - - // update the payment status for the ordered ids to paid - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedService::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 1]); - - // update the receipts for staff payments - StaffPerformedService::whereIn('id', explode(",", get_name($order_ids_array[$i], 'id', 'performed_id', 'ordered_services')))->update(['patient_receipt_number' => $receipt_number]); - } - - if($request->pay_later == 1 && isset($request->services_category_to_pay) && $request->services_category_to_pay > 0){ - DepositHelpers::patient_category_invoice($request->patient_category_id, $patient_id,$episode_id,implode(',', $request->service_amount_to_pay), - implode(',', $request->service_id),$receipt_number,8,null, $request->services_category_to_pay, date('Y-m-d'), implode(',', $request->services_order_ids)); - } - } - - if($request->procedure_id){ - $order_ids_array = $request->procedures_order_ids; - - DepositHelpers::chi_deposits($patient_id, $episode_id, implode(',', $request->procedure_id), $receipt_number, 4, $request->item_type, null, implode(',', $request->procedure_chi_to_pay), implode(',', $request->procedure_co_pay), $request->procedure_co_payment_total, $request->procedure_co_payment_balance, implode(",", $order_ids_array), $request->procedure_chi_to_pay_total); - DepositHelpers::procedures_payment($patient_id, $episode_id, implode(',', $request->procedure_id), implode(',', $request->procedure_amount_to_pay), $discount_status, $receipt_number, $request->procedure_co_payment_total, implode(',', $request->procedures_order_ids), $procedures_wallet_amount); - - // update the payment status for the ordered ids to paid - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedProcedure::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 1]); - - // update the receipts for staff payments - StaffPerformedService::whereIn('id', explode(",", get_name($order_ids_array[$i], 'id', 'performed_id', 'ordered_procedures')))->update(['patient_receipt_number' => $receipt_number]); - } - - if($request->pay_later == 1 && isset($request->procedures_category_to_pay) && $request->procedures_category_to_pay > 0){ - DepositHelpers::patient_category_invoice($request->patient_category_id, $patient_id,$episode_id,implode(',', $request->procedure_amount_to_pay), - implode(',', $request->procedure_id), $receipt_number,4,null, $request->procedures_category_to_pay, date('Y-m-d'), implode(',', $request->procedures_order_ids)); - } - } - - if($request->investigation_id){ - $order_ids_array = $request->investigations_order_ids; - - DepositHelpers::chi_deposits($patient_id, $episode_id, implode(',', $request->investigation_id), $receipt_number, 2, $request->item_type, null, implode(',', $request->investigation_chi_to_pay), implode(',', $request->investigation_co_pay), $request->investigation_co_payment_total, $request->investigation_co_payment_balance, implode(',', $request->investigations_order_ids), $request->investigation_chi_to_pay_total); - DepositHelpers::investigation_payment($patient_id, $episode_id, implode(',', $request->investigation_id), implode(',', $request->investigation_amount_to_pay), $discount_status, $receipt_number, $request->investigation_co_payment_total, implode(',', $request->investigations_order_ids), $investigations_wallet_amount); - - // update the payment status for the ordered ids to paid - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedInvestigation::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 1]); - } - - if($request->pay_later == 1 && isset($request->investigations_category_to_pay) && $request->investigations_category_to_pay > 0){ - DepositHelpers::patient_category_invoice($request->patient_category_id, $patient_id,$episode_id,implode(',', $request->investigation_amount_to_pay), - implode(',', $request->investigation_id), $receipt_number,2,null, $request->investigations_category_to_pay, date('Y-m-d'), implode(',', $request->investigations_order_ids)); - } - } - - if($request->treatment_item_id){ - $treatment_order_ids = $request->treatment_order_ids; - $treatment_items_array = $request->treatment_item_id; - $treatment_quantity_array = $request->treatment_quantity; - - // update inventory balance for each treatment item - if (get_inventory_reduction_point() == 2) { - for($i = 0; $i < count($treatment_items_array); $i++){ - $drug = Drug::withTrashed()->find($treatment_items_array[$i]); - $current_stock = $drug->pharmacy_stock; - $new_stock = $current_stock - $treatment_quantity_array[$i]; - $drug->pharmacy_stock = $new_stock; - $drug->update(); - /**** batch tracking */ - $auto_calculated_batches_used = get_pharmacy_batch_watcher_ids_to_use_based_on_needed_quantity($treatment_items_array[$i], 1, $treatment_quantity_array[$i]); - foreach ($auto_calculated_batches_used as $batch_number => $batch_qty) { - reduce_batch_item_stock(1,$treatment_items_array[$i],$batch_number,'drugs','pharmacy_stock',$batch_qty,'treatments','Drug',$treatment_order_ids[0],$patient_id); - // reduce_batch_item_from_pharmacy(1, $treatment_items_array[$i], $batch_number, $batch_qty, "treatments", null, $patient_id); - } - /*** end batch tracking logic **/ - } - } - - DepositHelpers::chi_deposits($patient_id, $episode_id, implode(',', $request->treatment_item_id), $receipt_number, 3, $request->item_type, implode(',', $request->treatment_quantity), - implode(',', $request->treatment_chi_to_pay), implode(',', $request->treatment_co_pay), $request->treatment_co_payment_total, $request->treatment_co_payment_balance, implode(',', $request->treatment_order_ids), $request->treatment_chi_to_pay_total); - - DepositHelpers::treatment_payment($patient_id, $episode_id, $treatment_order_ids[0], implode(',', $request->treatment_item_id), implode(',', $request->treatment_quantity), implode(',', $request->treatment_amount_to_pay), implode(',', $request->treatment_amount_to_pay), - $discount_status, $receipt_number, $request->treatment_co_payment_total, implode(',', $request->treatment_order_ids), $treatment_wallet_amount); - - // update the payment status for the ordered id to paid - for($i = 0; $i < count($treatment_order_ids); $i++){ - Treatment::where(['id' => $treatment_order_ids[$i]])->update(['payment_status' => 1]); - } - - if($request->pay_later == 1 && isset($request->treatment_category_to_pay) && $request->treatment_category_to_pay > 0){ - DepositHelpers::patient_category_invoice($request->patient_category_id, $patient_id,$episode_id,implode(',', $request->treatment_amount_to_pay), - implode(',', $request->treatment_item_id),$receipt_number,3,implode(',', $request->treatment_quantity), $request->treatment_category_to_pay, date('Y-m-d'), implode(",", $request->treatment_order_ids)); - } - } - - if($request->sundries_id){ - $order_ids_array = $request->sundries_order_ids; - $sundry_items_array = $request->sundries_id; - $sundry_quantity_array = $request->sundries_quantity; - - // update the chart of accounts balance for each treatment item - if (get_inventory_reduction_point() == 2) { - for($i = 0; $i < count($sundry_items_array); $i++){ - $sundry = Sundry::withTrashed()->find($sundry_items_array[$i]); - $current_stock = $sundry->store_stock; - $new_stock = $current_stock - $sundry_quantity_array[$i]; - $sundry->store_stock = $new_stock; - $sundry->update(); - /**** batch tracking */ - $auto_calculated_batches_used = get_pharmacy_batch_watcher_ids_to_use_based_on_needed_quantity($sundry_items_array[$i], 2, $sundry_quantity_array[$i]); - foreach ($auto_calculated_batches_used as $batch_number => $batch_qty) { - reduce_batch_item_stock(2, $sundry_items_array[$i], $batch_number, 'sundries', 'pharmacy_stock', $batch_qty, 'ordered_sundries', 'Sundry', $order_ids_array[0], $patient_id); - // reduce_batch_item_from_pharmacy(2, $sundry_items_array[$i], $batch_number, $batch_qty, "ordered_sundries", null, $patient_id); - } - /*** end batch tracking logic **/ - } - } - - DepositHelpers::chi_deposits($patient_id, $episode_id, implode(',', $request->sundries_id), $receipt_number, 5, $request->item_type, implode(',', $request->sundries_quantity), implode(',', $request->sundries_chi_to_pay), implode(',', $request->sundries_co_pay), $request->sundries_co_payment_total, $request->sundries_co_payment_balance, implode(',', $request->sundries_order_ids), $request->sundries_chi_to_pay_total); - DepositHelpers::sundries_payment($patient_id, $episode_id, implode(',', $request->sundries_id),implode(',', $request->sundries_quantity), implode(',', $request->sundries_amount_to_pay), implode(',', $request->sundries_amount_to_pay), $discount_status, $receipt_number, $request->sundries_co_payment_total, implode(',', $request->sundries_order_ids), $sundries_wallet_amount); - - // update the payment status for the ordered ids to paid - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedSundry::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 1]); - } - - if($request->pay_later == 1 && isset($request->sundries_category_to_pay) && $request->sundries_category_to_pay > 0){ - DepositHelpers::patient_category_invoice($request->patient_category_id, $patient_id,$episode_id,implode(',', $request->sundries_amount_to_pay), - implode(',', $request->sundries_id), $receipt_number,5,implode(',', $request->sundries_quantity), $request->sundries_category_to_pay, date('Y-m-d'), implode(',', $request->sundries_order_ids)); - } - } - - // register one off discount - if ($request->one_off_discount > 0){ - DepositHelpers::patient_one_off_discount($patient_id,$episode_id,$request->one_off_discount,18,$request->one_off_discount_memo, $receipt_number); - } - - // get to the claims and reorder the amounts according to what has been paid - $claim_ids = $request->claim_id; - - foreach ($claim_ids as $claim_id) { - $claim = InsuranceClaim::find($claim_id); - - if ($claim) { - $claim->claim_status = 2; - - $primary_plan_claim_total = 0; - $item_ids = explode(",", $claim->item_ids); - $tariff_amounts = explode(",", $claim->tariff_amounts); - $co_payment_amounts = explode(",", $claim->co_payment_amounts); - $item_cash_amounts = explode(",", $claim->item_cash_amounts); - $is_authorisation_required = $claim->is_authorisation_required; - $item_authorisations = explode(",", $claim->is_item_authorisation_required); - $benefit_ids_array = explode(",", $claim->benefit_ids); - $plan_limit_error = explode(",", $claim->plan_limit_error); - $benefit_waiting_period_error = explode(",", $claim->benefit_waiting_period_error); - $benefit_limit_error = explode(",", $claim->benefit_limit_error); - $item_limit_error = explode(",", $claim->item_limit_error); - $insurance_member = DB::table('insurance_members')->where('patient_id', $patient_id)->select('family_id', 'group_id')->first(); - - if ($claim->item_type == 4) { - $purchased_elsewhere = explode(",", get_name($claim->order_id, 'id', 'purchased_elsewhere', 'treatments')); - } - - for($i = 0; $i < count($item_ids); $i++) { - if ($item_authorisations[$i] == 1 || $is_authorisation_required == 1 || $claim->plan_validity_error == 1 || - $benefit_waiting_period_error[$i] == 1 || $plan_limit_error[$i] == 1 || $benefit_limit_error[$i] == 1 || $item_limit_error[$i] == 1) { - $co_payment_amounts[$i] = $item_cash_amounts[$i]; - $tariff_amounts[$i] = 0; - } - - // if it is treatment then check the order for purchased elsewhere and remove amounts - if ($claim->item_type == 4 && isset($purchased_elsewhere[$i]) && $purchased_elsewhere[$i] == 1) { - $co_payment_amounts[$i] = 0; - $tariff_amounts[$i] = 0; - } - - $primary_plan_claim_total += $tariff_amounts[$i]; - - // register the item consumption - if ($tariff_amounts[$i] > 0) { - register_insurance_item_consumption($patient_id, $insurance_member->family_id, $insurance_member->group_id, $claim->plan_id, $benefit_ids_array[$i], $item_ids[$i], $claim->item_type, $tariff_amounts[$i]); - } - } - - $claim->primary_plan_claim_total = $primary_plan_claim_total; - $claim->co_payment_amounts = implode(",", $co_payment_amounts); - $claim->tariff_amounts = implode(",", $tariff_amounts); - $claim->save(); - } - } - - return $receipt_number; - } -} diff --git a/docker/statistics/Modules/PatientFinance/Services/CentralBillingDeposit.php b/docker/statistics/Modules/PatientFinance/Services/CentralBillingDeposit.php deleted file mode 100755 index 68b33a66..00000000 --- a/docker/statistics/Modules/PatientFinance/Services/CentralBillingDeposit.php +++ /dev/null @@ -1,503 +0,0 @@ -patient_id; - $episode_id = $request->episode_id; - - // we need to calculate the wallet amount from the wallets used so that it is not added to the calculations - $wallets_amount = $request->wallets_amount; - $services_wallet_amount = 0; - $procedures_wallet_amount = 0; - $investigations_wallet_amount = 0; - $treatment_wallet_amount = 0; - $sundries_wallet_amount = 0; - $optics_wallet_amount = 0; - - if ($request->services_patient_to_pay_edit > 0 && $wallets_amount > 0) { - if ($request->services_patient_to_pay_edit > $wallets_amount) { - $services_wallet_amount = $wallets_amount; - $wallets_amount = 0; - } else { - $services_wallet_amount = $request->services_patient_to_pay_edit; - $wallets_amount -= $request->services_patient_to_pay_edit; - } - } - - if ($request->procedures_patient_to_pay_edit > 0 && $wallets_amount > 0) { - if ($request->procedures_patient_to_pay_edit > $wallets_amount) { - $procedures_wallet_amount = $wallets_amount; - $wallets_amount = 0; - } else { - $procedures_wallet_amount = $request->procedures_patient_to_pay_edit; - $wallets_amount -= $request->procedures_patient_to_pay_edit; - } - } - - if ($request->investigations_patient_to_pay_edit > 0 && $wallets_amount > 0) { - if ($request->investigations_patient_to_pay_edit > $wallets_amount) { - $investigations_wallet_amount = $wallets_amount; - $wallets_amount = 0; - } else { - $investigations_wallet_amount = $request->investigations_patient_to_pay_edit; - $wallets_amount -= $request->investigations_patient_to_pay_edit; - } - } - - if ($request->treatment_patient_to_pay_edit > 0 && $wallets_amount > 0) { - if ($request->treatment_patient_to_pay_edit > $wallets_amount) { - $treatment_wallet_amount = $wallets_amount; - $wallets_amount = 0; - } else { - $treatment_wallet_amount = $request->treatment_patient_to_pay_edit; - $wallets_amount -= $request->treatment_patient_to_pay_edit; - } - } - - if ($request->sundries_patient_to_pay_edit > 0 && $wallets_amount > 0) { - if ($request->sundries_patient_to_pay_edit > $wallets_amount) { - $sundries_wallet_amount = $wallets_amount; - $wallets_amount = 0; - } else { - $sundries_wallet_amount = $request->sundries_patient_to_pay_edit; - $wallets_amount -= $request->sundries_patient_to_pay_edit; - } - } - - if ($request->optics_patient_to_pay_edit > 0 && $wallets_amount > 0) { - if ($request->optics_patient_to_pay_edit > $wallets_amount) { - $optics_wallet_amount = $wallets_amount; - } else { - $optics_wallet_amount = $request->optics_patient_to_pay_edit; - } - } - - // update the track_receipt table to include created receipt - $track_receipts = new TrackReceipt; - $track_receipts->created_by = Auth::id(); - $track_receipts->reason = "Central Billing"; - $track_receipts->save(); - $receipt_number = sprintf("%04u", $track_receipts->id); - - // check if donor discounts have been applied using null and insert into table - if($request->donor_discount){ - DepositHelpers::donor_discount_details($patient_id, $episode_id, $receipt_number, $request->patient_discount_amount, - $request->donor_to_pay, $request->hospital_to_pay_selected_discount, $request->donor_discount, $request->donor_id, 11); - } - - // add patient to debtors if balance is more than 0 - if ($request->services_patient_to_pay_balance > 0){ - DepositHelpers::debt($patient_id,$episode_id,$request->services_patient_to_pay_balance,$receipt_number,8); - } - - if ($request->procedures_patient_to_pay_balance > 0){ - DepositHelpers::debt($patient_id,$episode_id,$request->procedures_patient_to_pay_balance,$receipt_number,4); - } - - if ($request->investigations_patient_to_pay_balance > 0){ - DepositHelpers::debt($patient_id,$episode_id,$request->investigations_patient_to_pay_balance,$receipt_number,2); - } - - if ($request->treatment_patient_to_pay_balance > 0){ - DepositHelpers::debt($patient_id,$episode_id,$request->treatment_patient_to_pay_balance,$receipt_number,3); - } - - if ($request->sundries_patient_to_pay_balance > 0){ - DepositHelpers::debt($patient_id,$episode_id,$request->sundries_patient_to_pay_balance,$receipt_number,5); - } - - if ($request->optics_patient_to_pay_balance > 0){ - DepositHelpers::debt($patient_id,$episode_id,$request->optics_patient_to_pay_balance,$receipt_number,19); - } - - // patient category discount flag - $discount_status = 0; - - // check if patient has a discount amount more than zero and pay later is not available to them - // this discount amount is represented as hospital to pay general - if($request->hospital_to_pay_general_discount > 0){ - // change discount status - $discount_status = 1; - - DepositHelpers::discount($request->hospital_to_pay_general_discount,$patient_id, $episode_id,$receipt_number,11); - } - - $is_invoice = 0; - $filtered_services = []; - - // check if services have been submitted - if(count($request->service_id) > 0 && $request->service_id[0] != 0){ - $service_ids_array = $request->service_id; - $service_prices_array = $request->service_amount; - $service_type_array = $request->service_type; - $services_order_id_array = $request->services_order_id; - $services_patient_to_pay_edit = $request->services_patient_to_pay_edit; - - for($i = 0; $i < count($service_prices_array); $i++){ - // update the chart of accounts balance for each service item - $service_account = get_name($service_ids_array[$i], "id", "account_id", "services"); - $account_balance = get_name($service_account, "id", "balance", "chart_of_accounts"); - - $new_balance = $account_balance + (int)$service_prices_array[$i]; - ChartOfAccount::where(['id' => $service_account])->update(['balance' => $new_balance]); - - $filtered_services[$service_type_array[$i]][$services_order_id_array[$i]]["service_id"][] = $service_ids_array[$i]; - $filtered_services[$service_type_array[$i]][$services_order_id_array[$i]]["service_price"][] = $service_prices_array[$i]; - - if ($service_prices_array[$i] > $services_patient_to_pay_edit) { - $filtered_services[$service_type_array[$i]][$services_order_id_array[$i]]["patient_to_pay"][] = $services_patient_to_pay_edit; - $services_patient_to_pay_edit = 0; - } else { - $filtered_services[$service_type_array[$i]][$services_order_id_array[$i]]["patient_to_pay"][] = $service_prices_array[$i]; - $services_patient_to_pay_edit -= $service_prices_array[$i]; - } - } - } - - // check if patient category is of type pay later to generate invoice for that category or to add to normal service payments table - if($request->pay_later == 1){ - // change invoice flag to show that it is an invoice - $is_invoice = 1; - - //services - if($request->service_amount){ - $services_order_id = is_array($request->services_order_id) ? $request->services_order_id : []; - DepositHelpers::patient_category_invoice($request->patient_category_id, $patient_id,$episode_id,implode(',', $request->service_amount), - implode(',', $request->service_id),$receipt_number,8,null, $request->services_category_to_pay, $request->transaction_date, implode(",", $services_order_id)); - - // for co-payment people with some cash - if ($request->services_patient_to_pay_edit > 0) { - foreach ($filtered_services as $key => $filtered_service) { - foreach ($filtered_service as $order_id => $filtered_service_details) { - if (array_sum($filtered_service_details['patient_to_pay']) > $services_wallet_amount) { - $differential_wallet_amount = $services_wallet_amount; - $services_wallet_amount = 0; - } else { - $differential_wallet_amount = array_sum($filtered_service_details['patient_to_pay']); - $services_wallet_amount -= array_sum($filtered_service_details['patient_to_pay']); - } - DepositHelpers::service_payment($patient_id,$episode_id,implode(',', $filtered_service_details['service_id']),implode(',', $filtered_service_details['service_price']),$key,$receipt_number,array_sum($filtered_service_details['patient_to_pay']), $order_id, $differential_wallet_amount); - } - } - } - } - - //procedures - if($request->procedure_ids){ - DepositHelpers::patient_category_invoice($request->patient_category_id, $patient_id,$episode_id,implode(',', $request->procedure_amount), - $request->procedure_ids, $receipt_number,4,null, $request->procedures_category_to_pay, $request->transaction_date, $request->procedure_order_ids); - - // for co-payment people with some cash - if ($request->procedures_patient_to_pay_edit > 0) { - DepositHelpers::procedures_payment($patient_id, $episode_id, $request->procedure_ids, implode(',', $request->procedure_amount), $discount_status, $receipt_number, $request->procedures_patient_to_pay_edit, $request->procedure_order_ids, $procedures_wallet_amount); - } - } - - //investigations - if($request->investigation_ids){ - DepositHelpers::patient_category_invoice($request->patient_category_id, $patient_id,$episode_id,implode(',', $request->investigation_amount), - $request->investigation_ids, $receipt_number,2,null, $request->investigations_category_to_pay, $request->transaction_date, $request->investigation_order_ids); - - // for co-payment people with some cash - if ($request->investigations_patient_to_pay_edit > 0) { - DepositHelpers::investigation_payment($patient_id, $episode_id, $request->investigation_ids, implode(',', $request->investigation_amount), $discount_status, $receipt_number, $request->investigations_patient_to_pay_edit, $request->investigation_order_ids, $investigations_wallet_amount); - } - } - - //treatments - if($request->treatment_item){ - DepositHelpers::patient_category_invoice($request->patient_category_id, $patient_id,$episode_id,implode(',', $request->treatment_subtotal), - implode(',', $request->treatment_item),$receipt_number,3,implode(',', $request->treatment_quantity), $request->treatment_category_to_pay, $request->transaction_date, implode(",", $request->treatment_id)); - - // for co-payment people with some cash - if ($request->treatment_patient_to_pay_edit > 0) { - DepositHelpers::treatment_payment($patient_id, $episode_id, $request->treatment_id[0],implode(',', $request->treatment_item),implode(',', $request->treatment_quantity),implode(',', $request->treatment_amount),implode(',', - $request->treatment_subtotal), $discount_status, $receipt_number, $request->treatment_patient_to_pay_edit, implode(",", $request->treatment_id), $treatment_wallet_amount); - } - } - - //sundries - if($request->sundry_ids){ - DepositHelpers::patient_category_invoice($request->patient_category_id, $patient_id,$episode_id,implode(',', $request->sundry_subtotal), - $request->sundry_ids, $receipt_number,5,implode(',', $request->sundry_quantity), $request->sundries_category_to_pay, $request->transaction_date, $request->sundry_order_ids); - - // for co-payment people with some cash - if ($request->sundries_patient_to_pay_edit > 0) { - DepositHelpers::sundries_payment($patient_id, $episode_id, $request->sundry_ids, implode(',', $request->sundry_quantity), - implode(',', $request->sundry_amount), implode(',', $request->sundry_subtotal), $discount_status, $receipt_number, $request->sundries_patient_to_pay_edit, $request->sundry_order_ids, $sundries_wallet_amount); - } - } - - //optics - if($request->optic_ids){ - DepositHelpers::patient_category_invoice($request->patient_category_id, $patient_id,$episode_id,implode(',', $request->optic_subtotal), - $request->optic_ids, $receipt_number,19,implode(',', $request->optic_quantity), $request->optics_category_to_pay, $request->transaction_date, $request->optic_order_ids); - - // for co-payment people with some cash - if ($request->optics_patient_to_pay_edit > 0) { - DepositHelpers::eye_glasses_payment($patient_id, $episode_id, $request->optic_ids, implode(',', $request->optic_quantity), - implode(',', $request->optic_amount), implode(',', $request->optic_subtotal), $discount_status, $receipt_number, $request->optics_patient_to_pay_edit, $request->optic_order_ids, $optics_wallet_amount); - } - } - } - - // time to get down to the specifics - foreach ($filtered_services as $key => $filtered_service) { - foreach ($filtered_service as $order_id => $filtered_service_details) { - // create a new central billing record - DepositHelpers::central_billing_payments($patient_id, $episode_id,implode(',', $filtered_service_details['service_price']),implode(',', $filtered_service_details['service_id']),$receipt_number,8,null,array_sum($filtered_service_details['patient_to_pay']),$request->services_category_to_pay, $order_id); - - // check if no invoice has been generated and insert into correct table - if($is_invoice == 0){ - if (array_sum($filtered_service_details['patient_to_pay']) > $services_wallet_amount) { - $differential_wallet_amount = $services_wallet_amount; - $services_wallet_amount = 0; - } else { - $differential_wallet_amount = array_sum($filtered_service_details['patient_to_pay']); - $services_wallet_amount -= array_sum($filtered_service_details['patient_to_pay']); - } - DepositHelpers::service_payment($patient_id,$episode_id,implode(',', $filtered_service_details['service_id']),implode(',', $filtered_service_details['service_price']),$key,$receipt_number,array_sum($filtered_service_details['patient_to_pay']), $order_id, $differential_wallet_amount); - } - - // update the payment status for the ordered ids to paid - OrderedService::where(['id' => $order_id])->update(['payment_status' => 1]); - - // update the receipts for staff payments - StaffPerformedService::whereIn('id', explode(",", get_name($order_id, 'id', 'performed_id', 'ordered_services'))) - ->update(['patient_receipt_number' => $receipt_number]); - } - } - - if($request->procedure_ids){ - $procedure_ids_array = explode(",", $request->procedure_ids); - $order_ids_array = explode(",", $request->procedure_order_ids); - $procedure_amounts_array = $request->procedure_amount; - - // update the chart of accounts balance for each procedure item - for($i = 0; $i < count($procedure_ids_array); $i++){ - $procedure_account = get_name($procedure_ids_array[$i], "id", "account_id", "procedures"); - $account_balance = get_name($procedure_account, "id", "balance", "chart_of_accounts"); - - $new_balance = $account_balance + $procedure_amounts_array[$i]; - ChartOfAccount::where(['id' => $procedure_account])->update(['balance' => $new_balance]); - } - - // create a new central billing record - DepositHelpers::central_billing_payments($patient_id, $episode_id,implode(',', $procedure_amounts_array),implode(',', $procedure_ids_array),$receipt_number,4,null,$request->procedures_patient_to_pay_edit,$request->procedures_category_to_pay, $request->procedure_order_ids); - - // check if no invoice has been generated and insert into correct table - if($is_invoice == 0){ - DepositHelpers::procedures_payment($patient_id, $episode_id, implode(',', $procedure_ids_array), implode(',', $procedure_amounts_array), $discount_status, $receipt_number, $request->procedures_patient_to_pay_edit, $request->procedure_order_ids, $procedures_wallet_amount); - } - - // update the payment status for the ordered ids to paid - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedProcedure::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 1]); - - // update the receipts for staff payments - StaffPerformedService::whereIn('id', explode(",", get_name($order_ids_array[$i], 'id', 'performed_id', 'ordered_procedures')))->update(['patient_receipt_number' => $receipt_number]); - } - } - - if($request->investigation_ids){ - $investigation_ids_array = explode(",", $request->investigation_ids); - $order_ids_array = explode(",", $request->investigation_order_ids); - $investigation_amounts_array = $request->investigation_amount; - - // update the chart of accounts balance for each service item - for($i = 0; $i < count($investigation_ids_array); $i++){ - $investigation_account = get_name($investigation_ids_array[$i], "id", "account_id", "investigations"); - $account_balance = get_name($investigation_account, "id", "balance", "chart_of_accounts"); - - $new_balance = $account_balance + $investigation_amounts_array[$i]; - ChartOfAccount::where(['id' => $investigation_account])->update(['balance' => $new_balance]); - } - - // create a new central billing record - DepositHelpers::central_billing_payments($patient_id, $episode_id,implode(',', $investigation_amounts_array),implode(',', $investigation_ids_array),$receipt_number,2,null,$request->investigations_patient_to_pay_edit,$request->investigations_category_to_pay, $request->investigation_order_ids); - - if($is_invoice == 0){ - DepositHelpers::investigation_payment($patient_id, $episode_id, implode(',', $investigation_ids_array), implode(',', $investigation_amounts_array), $discount_status, $receipt_number, $request->investigations_patient_to_pay_edit, $request->investigation_order_ids, $investigations_wallet_amount); - } - - // update the payment status for the ordered ids to paid - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedInvestigation::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 1]); - } - } - - if($request->treatment_item){ - - $treatment_id_array = $request->treatment_id; - $treatment_items_array = $request->treatment_item; - $treatment_subtotals_array = $request->treatment_subtotal; - $treatment_amounts_array = $request->treatment_amount; - $treatment_quantity_array = $request->treatment_quantity; - - // update the chart of accounts balance for each treatment item - for($i = 0; $i < count($treatment_items_array); $i++){ - $treatment_account = get_name($treatment_items_array[$i], "id", "account_id", "drugs"); - $account_balance = get_name($treatment_account, "id", "balance", "chart_of_accounts"); - - if (get_inventory_reduction_point() == 2) { - $drug = Drug::withTrashed()->find($treatment_items_array[$i]); - $current_stock = $drug->pharmacy_stock; - $new_stock = $current_stock - $treatment_quantity_array[$i]; - $drug->pharmacy_stock = $new_stock; - $drug->update(); - /**** batch tracking */ - $auto_calculated_batches_used = get_pharmacy_batch_watcher_ids_to_use_based_on_needed_quantity($treatment_items_array[$i], 1, $treatment_quantity_array[$i]); - foreach ($auto_calculated_batches_used as $batch_number => $batch_qty) { - reduce_batch_item_stock(1,$treatment_items_array[$i],$batch_number,'drugs','pharmacy_stock',$batch_qty,'treatments','Drug',$treatment_id_array[0],$patient_id); - // reduce_batch_item_from_pharmacy(1, $treatment_items_array[$i], $batch_number, $batch_qty, "treatments", $treatment_id_array[0], $patient_id); - } - /*** end batch tracking logic **/ - } - - $new_balance = $account_balance + $treatment_subtotals_array[$i]; - ChartOfAccount::where(['id' => $treatment_account])->update(['balance' => $new_balance]); - } - - // create a new central billing record - DepositHelpers::central_billing_payments($patient_id, $episode_id,implode(',', $treatment_subtotals_array),implode(',', - $treatment_items_array),$receipt_number,3,implode(',', $treatment_quantity_array),$request->treatment_patient_to_pay_edit,$request->treatment_category_to_pay, implode(",", $treatment_id_array)); - - if($is_invoice == 0){ - - if($request->pos == "1"){ - DepositHelpers::treatment_payment($patient_id, $episode_id, $treatment_id_array[0],implode(',', $treatment_items_array), implode(',', $treatment_quantity_array),implode(',', $treatment_amounts_array),implode(',', - $treatment_subtotals_array), $discount_status, $receipt_number, $request->treatment_total, implode(",", $treatment_id_array), $treatment_wallet_amount); - - // create a new central billing record - DepositHelpers::central_billing_payments($patient_id, $episode_id,implode(',', $treatment_subtotals_array),implode(',', - $treatment_items_array),$receipt_number,3,implode(',', $treatment_quantity_array),$request->treatment_total, 0, implode(",", $treatment_id_array)); - - }else{ - DepositHelpers::treatment_payment($patient_id, $episode_id, $treatment_id_array[0],implode(',', $treatment_items_array),implode(',', $treatment_quantity_array),implode(',', $treatment_amounts_array),implode(',', $treatment_subtotals_array), - $discount_status, $receipt_number, $request->treatment_patient_to_pay_edit, implode(",", $treatment_id_array), $treatment_wallet_amount); - } - } - } - - if ($request->treatment_id) { - $treatment_id_array = $request->treatment_id; - - // update the payment status for the ordered id to paid - for($i = 0; $i < count($treatment_id_array); $i++){ - Treatment::where(['id' => $treatment_id_array[$i]])->update(['payment_status' => 1]); - } - } - - if($request->sundry_ids){ - $order_ids_array = explode(",", $request->sundry_order_ids); - $sundry_items_array = explode(",", $request->sundry_ids); - $sundry_subtotals_array = $request->sundry_subtotal; - $sundry_amounts_array = $request->sundry_amount; - $sundry_quantity_array = $request->sundry_quantity; - - // update the chart of accounts balance for each treatment item - for($i = 0; $i < count($sundry_items_array); $i++){ - $sundry_account = get_name($sundry_items_array[$i], "id", "account_id", "sundries"); - $account_balance = get_name($sundry_account, "id", "balance", "chart_of_accounts"); - - //changed and set it to reduce sundries at payment only - $sundry = Sundry::withTrashed()->find($sundry_items_array[$i]); - $current_stock = $sundry->pharmacy_stock; - $new_stock = $current_stock - $sundry_quantity_array[$i]; - $sundry->pharmacy_stock = $new_stock; - $sundry->update(); - /**** batch tracking */ - $auto_calculated_batches_used = get_pharmacy_batch_watcher_ids_to_use_based_on_needed_quantity($sundry_items_array[$i], 2, $sundry_quantity_array[$i]); - foreach ($auto_calculated_batches_used as $batch_number => $batch_qty) { - reduce_batch_item_stock(2, $sundry_items_array[$i], $batch_number, 'sundries', 'pharmacy_stock', $batch_qty, 'ordered_sundries', 'Sundry', $order_ids_array[0], $patient_id); - // reduce_batch_item_from_pharmacy(2, $sundry_items_array[$i], $batch_number, $batch_qty, "ordered_sundries", $order_ids_array[0], $patient_id); - } - /*** end batch tracking logic **/ - - $new_balance = $account_balance + $sundry_subtotals_array[$i]; - ChartOfAccount::where(['id' => $sundry_account])->update(['balance' => $new_balance]); - } - - // create a new central billing record - DepositHelpers::central_billing_payments($patient_id, $episode_id,implode(',', $sundry_subtotals_array),implode(',', $sundry_items_array),$receipt_number,5,implode(',', $sundry_quantity_array),$request->sundries_patient_to_pay_edit,$request->sundries_category_to_pay, $request->sundry_order_ids); - - if($is_invoice == 0){ - DepositHelpers::sundries_payment($patient_id, $episode_id, implode(',', $sundry_items_array),implode(',', $sundry_quantity_array), implode(',', $sundry_amounts_array), implode(',', $sundry_subtotals_array), $discount_status, $receipt_number, $request->sundries_patient_to_pay_edit, $request->sundry_order_ids, $sundries_wallet_amount); - } - - // update the payment status for the ordered ids to paid - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedSundry::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 1]); - } - } - - if($request->optic_ids){ - $order_ids_array = explode(",", $request->optic_order_ids); - $optic_items_array = explode(",", $request->optic_ids); - $optic_subtotals_array = $request->optic_subtotal; - $optic_amounts_array = $request->optic_amount; - $optic_quantity_array = $request->optic_quantity; - - // update the chart of accounts balance for each item - for($i = 0; $i < count($optic_items_array); $i++){ - $optic_account = get_name($optic_items_array[$i], "id", "account_id", "eye_glasses"); - $account_balance = get_name($optic_account, "id", "balance", "chart_of_accounts"); - - $optic = EyeGlasses::withTrashed()->find($optic_items_array[$i]); - $current_stock = $optic->pharmacy_stock; - $new_stock = $current_stock - $optic_quantity_array[$i]; - $optic->pharmacy_stock = $new_stock; - /**** batch tracking */ - $auto_calculated_batches_used = get_lab_batches_to_use_based_on_needed_quantity($optic_items_array[$i], 7, $optic_quantity_array[$i],'pharmacy_stock'); - foreach ($auto_calculated_batches_used as $batch_number => $batch_qty) { - reduce_batch_item_from_pharmacy(7, $optic_items_array[$i], $batch_number, $batch_qty, "ordered_eye_glasses", $order_ids_array[0], $patient_id); - } - /*** end batch tracking logic **/ - $optic->update(); - - - $new_balance = $account_balance + $optic_subtotals_array[$i]; - ChartOfAccount::where(['id' => $optic_account])->update(['balance' => $new_balance]); - } - - // create a new central billing record - DepositHelpers::central_billing_payments($patient_id, $episode_id,implode(',', $optic_subtotals_array),implode(',', $optic_items_array),$receipt_number,19,implode(',', $optic_quantity_array),$request->optics_patient_to_pay_edit,$request->optics_category_to_pay, $request->optic_order_ids); - - if($is_invoice == 0){ - DepositHelpers::eye_glasses_payment($patient_id, $episode_id, implode(',', $optic_items_array),implode(',', $optic_quantity_array), implode(',', $optic_amounts_array), implode(',', $optic_subtotals_array), $discount_status, $receipt_number, $request->optics_patient_to_pay_edit, $request->optic_order_ids, $optics_wallet_amount); - } - - // update the payment status for the ordered ids to paid - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedEyeGlasses::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 1]); - } - } - - // register one off discount - if ($request->one_off_discount > 0){ - DepositHelpers::patient_one_off_discount($patient_id,$episode_id,$request->one_off_discount,11,$request->one_off_discount_memo, $receipt_number); - } - - return $is_invoice . "," . $receipt_number; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Services/CollectiveBillsDeposit.php b/docker/statistics/Modules/PatientFinance/Services/CollectiveBillsDeposit.php deleted file mode 100755 index 13304c0e..00000000 --- a/docker/statistics/Modules/PatientFinance/Services/CollectiveBillsDeposit.php +++ /dev/null @@ -1,291 +0,0 @@ -get('patient_id'); - - // update the track_receipt table to include created receipt - $track_receipts = new TrackReceipt; - $track_receipts->created_by = auth()->user()->id; - $track_receipts->reason = "Collective Billing"; - $track_receipts->save(); - $receipt_number = sprintf("%04u", $track_receipts->id); - - // add patient to debtors if balance is more than 0 - if ($request->balance > 0) { - DepositHelpers::debt($patient_id, 0, $request->balance, $receipt_number, 12); - } - - // patient category discount flag - $discount_status = 0; - - // check if patient has a discount amount more than zero and pay later is not available to them - // this discount amount is represented as hospital to pay general - if ($request->hospital_to_pay_general_discount > 0) { - // change discount status - $discount_status = 1; - - DepositHelpers::discount($request->hospital_to_pay_general_discount, $patient_id, 0, $receipt_number, 12); - } - - // check if services have been submitted - if ($request->service_id) { - $service_ids_array = $request->service_id; - $service_prices_array = $request->service_amount; - $order_ids_array = $request->service_order_id; - $service_episode_ids_array = $request->service_episode_id; - $service_deposits_ids_array = []; - $service_deposits_prices_array = []; - $actual_service_ids_array = []; - $actual_service_prices_array = []; - - for ($i = 0; $i < count($service_prices_array); $i++) { - if ($service_ids_array[$i] != 0) { - $actual_service_ids_array[] = $service_ids_array[$i]; - $actual_service_prices_array[] = $service_prices_array[$i]; - // update the chart of accounts balance for each service item - $service_account = get_name($service_ids_array[$i], "id", "account_id", "services"); - $account_balance = get_name($service_account, "id", "balance", "chart_of_accounts"); - - $new_balance = $account_balance + (int)$service_prices_array[$i]; - ChartOfAccount::where(['id' => $service_account])->update(['balance' => $new_balance]); - - // we have to add items in the deposit tables according to episodes - // so we have to order/group them as such - $service_deposits_ids_array[$service_episode_ids_array[$i]][] = $service_ids_array[$i]; - $service_deposits_prices_array[$service_episode_ids_array[$i]][] = $service_prices_array[$i]; - } - } - - // now run through the grouped episode items and add them to deposit table - foreach ($service_deposits_ids_array as $key => $value) { - DepositHelpers::service_payment($patient_id, $key, implode(',', $value), implode(',', $service_deposits_prices_array[$key]), "Services", $receipt_number, array_sum($service_deposits_prices_array[$key]), implode(",", $order_ids_array), $request->wallets_amount); - } - - // create a new collective bills record - DepositHelpers::collective_bills_payments($patient_id, implode(',', $actual_service_prices_array), implode(',', $actual_service_ids_array), $receipt_number, 8, null, $request->patient_to_pay, implode(",", $order_ids_array)); - - for ($i = 0; $i < count($order_ids_array); $i++) { - // doctor consultation order ids are negative so the others are the real order ids - if ($order_ids_array[$i] > 0) { - \Streamline\Models\OrderedService::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 1]); - } - } - } - - if ($request->procedure_id) { - $procedure_ids_array = $request->procedure_id; - $order_ids_array = $request->procedure_order_id; - $procedure_amounts_array = $request->procedure_amount; - $procedure_episode_ids_array = $request->procedure_episode_id; - $procedure_deposits_ids_array = []; - $procedure_deposits_prices_array = []; - - // update the chart of accounts balance for each procedure item - for ($i = 0; $i < count($procedure_ids_array); $i++) { - $procedure_account = get_name($procedure_ids_array[$i], "id", "account_id", "procedures"); - $account_balance = get_name($procedure_account, "id", "balance", "chart_of_accounts"); - - $new_balance = $account_balance + $procedure_amounts_array[$i]; - ChartOfAccount::where(['id' => $procedure_account])->update(['balance' => $new_balance]); - - // we have to add items in the deposit tables according to episodes - // so we have to order/group them as such - $procedure_deposits_ids_array[$procedure_episode_ids_array[$i]][] = $procedure_ids_array[$i]; - $procedure_deposits_prices_array[$procedure_episode_ids_array[$i]][] = $procedure_amounts_array[$i]; - } - - // now run through the grouped episode items and add them to deposit table - foreach ($procedure_deposits_ids_array as $key => $value) { - DepositHelpers::procedures_payment($patient_id, $key, implode(',', $value), implode(',', $procedure_deposits_prices_array[$key]), $discount_status, $receipt_number, array_sum($procedure_deposits_prices_array[$key]), implode(",", $order_ids_array), $request->wallets_amount); - } - - // create a new collective bills record - DepositHelpers::collective_bills_payments($patient_id, implode(',', $procedure_amounts_array), implode(',', $procedure_ids_array), $receipt_number, 4, null, $request->patient_to_pay, implode(",", $order_ids_array)); - - // update the payment status for the ordered ids to paid - for ($i = 0; $i < count($order_ids_array); $i++) { - OrderedProcedure::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 1]); - } - } - - if ($request->investigation_ids) { - $investigation_ids_array = $request->investigation_ids; - $order_ids_array = $request->investigation_order_id; - $investigation_amounts_array = $request->investigation_amount; - $investigation_episode_ids_array = $request->investigation_episode_id; - $investigation_deposits_ids_array = []; - $investigation_deposits_prices_array = []; - - // update the chart of accounts balance for each investigation - for ($i = 0; $i < count($investigation_ids_array); $i++) { - $investigation_account = get_name($investigation_ids_array[$i], "id", "account_id", "investigations"); - $account_balance = get_name($investigation_account, "id", "balance", "chart_of_accounts"); - - $new_balance = $account_balance + $investigation_amounts_array[$i]; - ChartOfAccount::where(['id' => $investigation_account])->update(['balance' => $new_balance]); - - // we have to add items in the deposit tables according to episodes - // so we have to order/group them as such - $investigation_deposits_ids_array[$investigation_episode_ids_array[$i]][] = $investigation_ids_array[$i]; - $investigation_deposits_prices_array[$investigation_episode_ids_array[$i]][] = $investigation_amounts_array[$i]; - } - - // now run through the grouped episode items and add them to deposit table - foreach ($investigation_deposits_ids_array as $key => $value) { - DepositHelpers::investigation_payment($patient_id, $key, implode(',', $value), implode(',', $investigation_deposits_prices_array[$key]), $discount_status, $receipt_number, array_sum($investigation_deposits_prices_array[$key]), implode(",", $order_ids_array), $request->wallets_amount); - } - - // create a new collective bills record - DepositHelpers::collective_bills_payments($patient_id, implode(',', $investigation_amounts_array), implode(',', $investigation_ids_array), $receipt_number, 2, null, $request->patient_to_pay, implode(",", $order_ids_array)); - - // update the payment status for the ordered ids to paid - for ($i = 0; $i < count($order_ids_array); $i++) { - OrderedInvestigation::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 1]); - } - } - - if ($request->drug_id) { - $treatment_items_array = $request->drug_id; - $treatment_subtotals_array = $request->drug_amount; - $treatment_amounts_array = $request->treatment_amount; - $treatment_quantity_array = $request->treatment_quantity; - $treatment_ids = $request->drug_order_id; - $treatment_episode_ids_array = $request->drug_episode_id; - $treatment_deposits_ids_array = []; - $treatment_deposits_prices_array = []; - $treatment_deposits_quantity_array = []; - $treatment_deposits_single_prices_array = []; - - // update the chart of accounts balance for each treatment item - for ($i = 0; $i < count($treatment_items_array); $i++) { - $treatment_account = get_name($treatment_items_array[$i], "id", "account_id", "drugs"); - $account_balance = get_name($treatment_account, "id", "balance", "chart_of_accounts"); - - $new_balance = $account_balance + $treatment_subtotals_array[$i]; - ChartOfAccount::where(['id' => $treatment_account])->update(['balance' => $new_balance]); - - // we have to add items in the deposit tables according to episodes - // so we have to order/group them as such - $treatment_deposits_ids_array[$treatment_episode_ids_array[$i]][] = $treatment_items_array[$i]; - $treatment_deposits_prices_array[$treatment_episode_ids_array[$i]][] = $treatment_subtotals_array[$i]; - $treatment_deposits_quantity_array[$treatment_episode_ids_array[$i]][] = $treatment_quantity_array[$i]; - $treatment_deposits_single_prices_array[$treatment_episode_ids_array[$i]][] = $treatment_amounts_array[$i]; - } - - // now run through the grouped episode items and add them to deposit table - foreach ($treatment_deposits_ids_array as $key => $value) { - DepositHelpers::treatment_payment($patient_id, $key, 0, implode(',', $value), implode(',', $treatment_deposits_quantity_array[$key]), implode(',', $treatment_deposits_single_prices_array[$key]), implode( - ',', - $treatment_deposits_prices_array[$key] - ), $discount_status, $receipt_number, array_sum($treatment_deposits_prices_array[$key]), implode(",", $treatment_ids), $request->wallets_amount); - } - - DepositHelpers::collective_bills_payments($patient_id, implode(',', $treatment_subtotals_array), implode( - ',', - $treatment_items_array - ), $receipt_number, 3, implode(',', $treatment_quantity_array), $request->patient_to_pay, implode(",", $treatment_ids)); - - foreach ($treatment_ids as $treatment_id) { - Treatment::where(['id' => $treatment_id])->update(['payment_status' => 1]); - } - } - - if ($request->sundry_id) { - $order_ids_array = $request->sundry_order_id; - $sundry_items_array = $request->sundry_id; - $sundry_subtotals_array = $request->sundry_subtotal; - $sundry_amounts_array = $request->sundry_amount; - $sundry_quantity_array = $request->sundry_quantity; - $sundry_episode_ids_array = $request->sundry_episode_id; - $sundry_deposits_ids_array = []; - $sundry_deposits_quantity_array = []; - $sundry_deposits_single_prices_array = []; - $sundry_deposits_prices_array = []; - - // update the chart of accounts balance for each treatment item - for ($i = 0; $i < count($sundry_items_array); $i++) { - $sundry_account = get_name($sundry_items_array[$i], "id", "account_id", "sundries"); - $account_balance = get_name($sundry_account, "id", "balance", "chart_of_accounts"); - - $new_balance = $account_balance + $sundry_subtotals_array[$i]; - ChartOfAccount::where(['id' => $sundry_account])->update(['balance' => $new_balance]); - - // we have to add items in the deposit tables according to episodes - // so we have to order/group them as such - $sundry_deposits_ids_array[$sundry_episode_ids_array[$i]][] = $sundry_items_array[$i]; - $sundry_deposits_quantity_array[$sundry_episode_ids_array[$i]][] = $sundry_quantity_array[$i]; - $sundry_deposits_single_prices_array[$sundry_episode_ids_array[$i]][] = $sundry_amounts_array[$i]; - $sundry_deposits_prices_array[$sundry_episode_ids_array[$i]][] = $sundry_subtotals_array[$i]; - } - - // now run through the grouped episode items and add them to deposit table - foreach ($sundry_deposits_ids_array as $key => $value) { - DepositHelpers::sundries_payment($patient_id, $key, implode(',', $value), implode(',', $sundry_deposits_quantity_array[$key]), implode(',', $sundry_deposits_single_prices_array[$key]), implode(',', $sundry_deposits_prices_array[$key]), $discount_status, $receipt_number, array_sum($sundry_deposits_prices_array[$key]), implode(",", $order_ids_array), $request->wallets_amount); - } - - // create a new collective bills record - DepositHelpers::collective_bills_payments($patient_id, implode(',', $sundry_subtotals_array), implode(',', $sundry_items_array), $receipt_number, 5, implode(',', $sundry_quantity_array), $request->patient_to_pay, implode(",", $order_ids_array)); - - // update the payment status for the ordered ids to paid - for ($i = 0; $i < count($order_ids_array); $i++) { - OrderedSundry::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 1]); - } - } - - if ($request->inpatient_to_pay > 0) { - $inpatient_to_pay_left = $request->inpatient_to_pay; - $patient_episodes = DB::table('patient_episodes')->where('patient_id', $patient_id) - ->get(['id', 'patient_id']); - - foreach ($patient_episodes as $episode) { - if ($inpatient_to_pay_left == 0) { - break; - } - - // update the amount_to_pay - $inpatient_info = InpatientBill::where(['patient_id' => $patient_id, 'episode_id' => $episode->id])->first(); - - if ($inpatient_info) { - if ($inpatient_to_pay_left > $inpatient_info->amount_to_pay) { - $inpatient_to_pay_left = $inpatient_to_pay_left - $inpatient_info->amount_to_pay; - $amount_to_pay = $inpatient_info->amount_to_pay; - } else { - $amount_to_pay = $inpatient_to_pay_left; - $inpatient_to_pay_left = 0; - } - - if ($inpatient_info) { - $inpatient_info->amount_to_pay = $inpatient_info->amount_to_pay - $amount_to_pay; - $inpatient_info->save(); - } - - DepositHelpers::service_payment($patient_id, $episode->id, 'Inpatient_Deposit', $amount_to_pay, 'Inpatient_Deposit', $receipt_number, $amount_to_pay, "", $request->wallets_amount); - } - } - } - - // register one off discount - if ($request->one_off_discount > 0) { - DepositHelpers::patient_one_off_discount($patient_id, 0, $request->one_off_discount, 12, $request->one_off_discount_memo, $receipt_number); - } - - return $receipt_number; - } -} diff --git a/docker/statistics/Modules/PatientFinance/Services/DepositHelpers.php b/docker/statistics/Modules/PatientFinance/Services/DepositHelpers.php deleted file mode 100755 index e007b556..00000000 --- a/docker/statistics/Modules/PatientFinance/Services/DepositHelpers.php +++ /dev/null @@ -1,614 +0,0 @@ -patient_id = $patient_id; - $new_donor_discount_details->episode_id = $episode_id; - $new_donor_discount_details->patient_category = $patient->category_id; - $new_donor_discount_details->receipt_number = $receipt_number; - $new_donor_discount_details->patient_to_pay = $patient_to_pay; - $new_donor_discount_details->donor_to_pay = $donor_to_pay; - $new_donor_discount_details->hospital_to_pay = $hospital_to_pay; - $new_donor_discount_details->donor_discount_category_id = $donor_discount_category_id; - $new_donor_discount_details->donor_id = $donor_id; - $new_donor_discount_details->tag_id = $tag_id; - $new_donor_discount_details->created_by = Auth::id(); - - $new_donor_discount_details->save(); - } - - /** - * Create new debtor record - * - * @param $patient_id - * @param $episode_id - * @param $balance - * @param $receipt_number - * @param $tag_id - */ - public static function debt($patient_id, $episode_id, $balance, $receipt_number, $tag_id) { - $income_account = ''; - $inventory_account_id = ChartOfAccount::where('type', 10)->pluck('id')->first(); - $cost_of_good_account_id = ChartOfAccount::where('type', 7)->pluck('id')->first(); - - if ($tag_id == 6 || $tag_id == 8 || $tag_id == 7 || $tag_id == 10) { - //Consultations / Services - $income_account = 7; - } elseif ($tag_id == 3 || $tag_id == 1) { - //Drugs / Treatments - $income_account = 4; - } elseif ($tag_id == 5) { - //Sundries - $income_account = 12; - } elseif ($tag_id == 2) { - //Investigations - $income_account = 11; - } elseif ($tag_id == 4) { - //Procedures - $income_account = 8; - } - - $new_debtor = new Debtor; - - $new_debtor->patient_id = $patient_id; - $new_debtor->episode_id = $episode_id; - $new_debtor->balance = $balance; - $new_debtor->receipt_number = $receipt_number; - $new_debtor->tag_id = $tag_id; - $new_debtor->income_account = $income_account; - - //Drugs / Treatments - if ($tag_id == 3 || $tag_id == 1) { - $new_debtor->inventory_account = $inventory_account_id; - $new_debtor->cost_of_goods_account = $cost_of_good_account_id; - } - //Sundries - elseif ($tag_id == 5) { - $new_debtor->inventory_account = $inventory_account_id; - $new_debtor->cost_of_goods_account = $cost_of_good_account_id; - } - - $new_debtor->created_by = Auth::id(); - $new_debtor->save(); - } - - /** - * Create new discount record - * - * @param $discount_amount - * @param $patient_id - * @param $episode_id - * @param $receipt_number - * @param $reason - */ - public static function discount($discount_amount, $patient_id, $episode_id, $receipt_number, $reason) { - - // get patient for the category - $patient = Patient::find($patient_id); - - $new_discount = new Discount; - $new_discount->discount_amount = $discount_amount; - $new_discount->patient_id = $patient_id; - $new_discount->episode_id = $episode_id; - $new_discount->reason = $reason; - $new_discount->patient_category = $patient->category_id; - //====== check if the patient is a dependant of another patient and overide category ========// - $patient_is_a_dependant_of = patient_is_a_dependant_of($patient_id); - $does_patient_category_have_threshold = does_patient_category_have_threshold($patient->category_id); - if($does_patient_category_have_threshold || !is_null($patient_is_a_dependant_of)){ - $new_discount->patient_category = get_name($patient_is_a_dependant_of, "id","category_id","patients"); - } - //==============// - $new_discount->receipt_number = $receipt_number; - $new_discount->created_by = Auth::id(); - $new_discount->save(); - } - - /** - * Create new patient category invoice record - * - * @param $patient_category_id - * @param $patient_id - * @param $episode_id - * @param $amounts_string - * @param $items_string - * @param $receipt_number - * @param $tag_id - * @param $quantity - * @param $patient_amount - * @param $transaction_date - */ - public static function patient_category_invoice($patient_category_id, $patient_id, $episode_id, $amounts_string, $items_string, $receipt_number, $tag_id, $quantity, $patient_amount, $transaction_date, $order_ids) { - - $income_account = $cost_of_goods_account = $inventory_account = ''; - $items_array = explode(',', $items_string); - $cost_price_array = $income_accounts_array = $cost_of_goods_account_array = $inventory_account_array = []; - - for ($i = 0; $i < count($items_array); $i++) { - //Inpatient Deposits - if ($tag_id == 10) { - $income_account = 7; - } - //Consultations / Services - if ($tag_id == 6 || $tag_id == 8 || $tag_id == 7) { - $income_account = get_name($items_array[$i], 'id', 'account_id', 'services'); - $income_account = is_numeric($income_account) ? $income_account : 7; - $income_accounts_array[] = $income_account; - } - //Drugs / Treatments - elseif ($tag_id == 3 || $tag_id == 1) { - $income_account = get_name($items_array[$i], 'id', 'account_id', 'drugs'); - $income_account = is_numeric($income_account) ? $income_account : 4; - $income_accounts_array[] = $income_account; - $inventory_account = get_name($items_array[$i], 'id', 'inventory_account', 'drugs'); - $inventory_account_array[] = $inventory_account; - $cost_of_goods_account = get_name($items_array[$i], 'id', 'cost_of_goods_account', 'drugs'); - $cost_of_goods_account_array[] = $cost_of_goods_account; - $cost_price_array[$i] = get_latest_inventory_cost_price($items_array[$i], 1, Carbon::today()->toDateString()); - } - //Sundries - elseif ($tag_id == 5) { - $income_account = get_name($items_array[$i], 'id', 'account_id', 'sundries'); - $income_account = is_numeric($income_account) ? $income_account : 12; - $income_accounts_array[] = $income_account; - $inventory_account = get_name($items_array[$i], 'id', 'inventory_account', 'sundries'); - $inventory_account_array[] = $inventory_account; - $cost_of_goods_account = get_name($items_array[$i], 'id', 'cost_of_goods_account', 'sundries'); - $cost_of_goods_account_array[] = $cost_of_goods_account; - $cost_price_array[$i] = get_latest_inventory_cost_price($items_array[$i], 2, Carbon::today()->toDateString()); - } - //Investigations - elseif ($tag_id == 2) { - $income_account = get_name($items_array[$i], 'id', 'account_id', 'investigations'); - $income_account = is_numeric($income_account) ? $income_account : 11; - $income_accounts_array[] = $income_account; - } - //Procedures - elseif ($tag_id == 4) { - $income_account = get_name($items_array[$i], 'id', 'account_id', 'procedures'); - $income_account = is_numeric($income_account) ? $income_account : 8; - $income_accounts_array[] = $income_account; - } - } - - $cost_price_string = implode(',', $cost_price_array); - $income_accounts_string = is_null($income_accounts_array) ? "" : implode(',', $income_accounts_array); - $cost_of_goods_accounts_string = is_null($cost_of_goods_account_array) ? null : implode(',', $cost_of_goods_account_array); - $inventory_accounts_string = is_null($inventory_account_array) ? null : implode(',', $inventory_account_array); - - // check if the transaction date is set - if ($transaction_date == "") { - $transaction_date = date('Y-m-d'); - } - - $new_patient_category_invoice = new PatientCategoryInvoice; - $new_patient_category_invoice->patient_id = $patient_id; - $new_patient_category_invoice->episode_id = $episode_id; - $new_patient_category_invoice->patient_category = $patient_category_id; - $new_patient_category_invoice->items_amounts = $amounts_string; - $new_patient_category_invoice->items_ids = $items_string; - $new_patient_category_invoice->items_quantity = isset($quantity) ? (is_string($quantity) ? $quantity : implode(',', $quantity)) : ''; - $new_patient_category_invoice->patient_amount = $patient_amount; - $new_patient_category_invoice->receipt_number = $receipt_number; - $new_patient_category_invoice->tag_id = $tag_id; - $new_patient_category_invoice->created_by = Auth::id(); - $new_patient_category_invoice->transaction_date = $transaction_date . " " . date('H:i:s'); - $new_patient_category_invoice->order_ids = $order_ids; - $new_patient_category_invoice->income_account = $income_accounts_string; //$income_account; - - if ($tag_id == 3 || $tag_id == 1) { - //treatments or drugs - $new_patient_category_invoice->inventory_account = $inventory_accounts_string; //$inventory_account; - $new_patient_category_invoice->cost_of_goods_account = $cost_of_goods_accounts_string; //$cost_of_goods_account; - $new_patient_category_invoice->cost_price = $cost_price_string; - } elseif ($tag_id == 5) { - //sundries - $new_patient_category_invoice->inventory_account = $inventory_accounts_string; //$inventory_account; - $new_patient_category_invoice->cost_of_goods_account = $cost_of_goods_accounts_string; //$cost_of_goods_account; - $new_patient_category_invoice->cost_price = $cost_price_string; - } - - $new_patient_category_invoice->save(); - } - - /** - * Pay for service items and add them to the service deposits table - * - * @param $patient_id - * @param $episode_id - * @param $service_items_string - * @param $amounts_string - * @param $service_type - * @param $receipt_number - * @param $patient_amount_paid - */ - public static function service_payment($patient_id, $episode_id, $service_items_string, $amounts_string, $service_type, $receipt_number, $patient_amount_paid, $order_ids, $wallets_amount) - { - $new_service_deposit = new ServiceDeposit; - - $chart_of_account_array = []; - $id_array = explode(',', $service_items_string); - for ($i = 0; $i < count($id_array); $i++) { - $account_id = get_name($id_array[$i], 'id', 'account_id', 'services'); - $chart_of_account_array[$i] = $account_id; - } - $chart_of_account_string = implode(',', $chart_of_account_array); - - // if payment is inpatient, use inpatient slug - if ($service_items_string == 'Inpatient_Deposit') { - $inpatient_deposits_account_id = get_name("inpatient_deposits", "slug", "id", "chart_of_accounts"); - if (is_numeric($inpatient_deposits_account_id)) { - $chart_of_account_string = $inpatient_deposits_account_id; - } else { - flash('The inpatient deposit chart of account is missing. Please contact Stre@mline support immediately!')->error(); - } - } - - $new_service_deposit->patient_id = $patient_id; - $new_service_deposit->episode_id = $episode_id; - $new_service_deposit->items_ids = $service_items_string; - $new_service_deposit->items_amounts = $amounts_string; - $new_service_deposit->patient_amount_paid = $patient_amount_paid; - $new_service_deposit->service_type = $service_type; - $new_service_deposit->receipt_number = $receipt_number; - $new_service_deposit->current_chart_of_accounts = $chart_of_account_string; - $new_service_deposit->order_ids = $order_ids; - $new_service_deposit->created_by = Auth::id(); - $new_service_deposit->save(); - - record_cash_credits_to_daily_collection_account(($patient_amount_paid - $wallets_amount), $receipt_number, 'Services Patient Payment'); - - split_service_payment($new_service_deposit->id); - } - - /** - * Pay for investigation items and add them to the investigations deposits table - * - * @param $patient_id - * @param $episode_id - * @param $investigation_id - * @param $investigation_prices - * @param $discount_status - * @param $receipt_number - * @param $patient_amount_paid - */ - public static function investigation_payment($patient_id, $episode_id, $investigation_id, $investigation_prices, $discount_status, $receipt_number, $patient_amount_paid, $order_ids, $wallets_amount) - { - $new_investigation_deposit = new InvestigationDeposit; - - $chart_of_account_array = []; - $id_array = explode(',', $investigation_id); - for ($i = 0; $i < count($id_array); $i++) { - $account_id = get_name($id_array[$i], 'id', 'account_id', 'investigations'); - $chart_of_account_array[$i] = $account_id; - } - $chart_of_account_string = implode(',', $chart_of_account_array); - - $new_investigation_deposit->patient_id = $patient_id; - $new_investigation_deposit->episode_id = $episode_id; - $new_investigation_deposit->investigation_items = $investigation_id; - $new_investigation_deposit->investigation_amounts = $investigation_prices; - $new_investigation_deposit->discount_status = $discount_status; - $new_investigation_deposit->receipt_number = $receipt_number; - $new_investigation_deposit->patient_amount_paid = $patient_amount_paid; - $new_investigation_deposit->current_chart_of_accounts = $chart_of_account_string; - $new_investigation_deposit->order_ids = $order_ids; - $new_investigation_deposit->created_by = Auth::id(); - $new_investigation_deposit->save(); - - record_cash_credits_to_daily_collection_account(($patient_amount_paid - $wallets_amount), $receipt_number, 'Investigation Patient Payment'); - - split_investigation_payment($new_investigation_deposit->id); - } - - /** - * Pay for treatment items and add them to the treatment deposits table - * - * @param $patient_id - * @param $episode_id - * @param $treatment_id - * @param $treatment_items - * @param $treatment_quantities - * @param $treatment_amounts - * @param $treatment_subtotals - * @param $discount_status - * @param $receipt_number - * @param $patient_amount_paid - */ - public static function treatment_payment($patient_id, $episode_id, $treatment_id, $treatment_items, $treatment_quantities, $treatment_amounts, - $treatment_subtotals, $discount_status, $receipt_number, $patient_amount_paid, $order_ids, $wallets_amount) - { - $new_treatment_deposit = new TreatmentDeposits; - - $id_array = explode(',', $treatment_items); - $cost_price_array = $chart_account_array = []; - - $inventory_account = $cost_of_goods_account = ''; - for ($i = 0; $i < count($id_array); $i++) { - $chart_account_array[$i] = $account_id = get_name($id_array[$i], 'id', 'account_id', 'drugs'); - $inventory_account = get_name($id_array[$i], 'id', 'inventory_account', 'drugs'); - $cost_of_goods_account = get_name($id_array[$i], 'id', 'cost_of_goods_account', 'drugs'); - $cost_price = get_name($id_array[$i], 'id', 'cost_price', 'drugs'); - - $cost_price_array[$i] = $cost_price; - } - $cost_price_string = implode(',', $cost_price_array); - $chart_account_string = implode(',', $chart_account_array); - - $new_treatment_deposit->patient_id = $patient_id; - $new_treatment_deposit->episode_id = $episode_id; - $new_treatment_deposit->treatment_id = $treatment_id; - $new_treatment_deposit->treatment_items = $treatment_items; - $new_treatment_deposit->treatment_quantities = $treatment_quantities; - $new_treatment_deposit->treatment_amounts = $treatment_amounts; - $new_treatment_deposit->treatment_subtotals = $treatment_subtotals; - $new_treatment_deposit->discount_status = $discount_status; - $new_treatment_deposit->receipt_number = $receipt_number; - $new_treatment_deposit->patient_amount_paid = $patient_amount_paid; - $new_treatment_deposit->current_chart_of_accounts = $chart_account_string; - $new_treatment_deposit->cost_of_goods_account = $cost_of_goods_account; - $new_treatment_deposit->inventory_account = $inventory_account; - $new_treatment_deposit->cost_price = $cost_price_string; - $new_treatment_deposit->order_ids = $order_ids; - $new_treatment_deposit->created_by = Auth::id(); - $new_treatment_deposit->save(); - - record_cash_credits_to_daily_collection_account(($patient_amount_paid - $wallets_amount), $receipt_number, 'Treatment Patient Payment'); - - split_treatment_payment($new_treatment_deposit->id); - } - - /** - * Pay for procedure items and add them to the procedure deposits table - * - * @param $patient_id - * @param $episode_id - * @param $procedures_items_string - * @param $procedure_prices_string - * @param $discount_status - * @param $receipt_number - * @param $patient_amount_paid - */ - public static function procedures_payment($patient_id, $episode_id, $procedures_items_string, $procedure_prices_string, $discount_status, - $receipt_number, $patient_amount_paid, $order_ids, $wallets_amount) - { - $new_procedure_deposit = new ProcedureDeposit; - - $chart_of_account_array = []; - $id_array = explode(',', $procedures_items_string); - for ($i = 0; $i < count($id_array); $i++) { - $account_id = get_name($id_array[$i], 'id', 'account_id', 'procedures'); - $chart_of_account_array[$i] = $account_id; - } - $chart_of_account_string = implode(',', $chart_of_account_array); - - $new_procedure_deposit->patient_id = $patient_id; - $new_procedure_deposit->episode_id = $episode_id; - $new_procedure_deposit->procedure_items = $procedures_items_string; - $new_procedure_deposit->procedure_amounts = $procedure_prices_string; - $new_procedure_deposit->patient_amount_paid = $patient_amount_paid; - $new_procedure_deposit->payment_status = 1; //1 to mean paid - $new_procedure_deposit->receipt_number = $receipt_number; - $new_procedure_deposit->discount_status = $discount_status; - $new_procedure_deposit->current_chart_of_accounts = $chart_of_account_string; - $new_procedure_deposit->order_ids = $order_ids; - $new_procedure_deposit->created_by = Auth::id(); - $new_procedure_deposit->save(); - - record_cash_credits_to_daily_collection_account(($patient_amount_paid - $wallets_amount), $receipt_number, 'Procedure Patient Payment'); - - split_procedure_payment($new_procedure_deposit->id); - } - - /** - * Pay for sundries and add them to the sundry deposits table - * - * @param $patient_id - * @param $episode_id - * @param $sundry_items_string - * @param $sundry_quantity_string - * @param $sundry_prices_string - * @param $sundry_subtotal_string - * @param $discount_status - * @param $receipt_number - * @param $patient_amount_paid - */ - public static function sundries_payment($patient_id, $episode_id, $sundry_items_string, $sundry_quantity_string, $sundry_prices_string, $sundry_subtotal_string, - $discount_status, $receipt_number, $patient_amount_paid, $order_ids, $wallets_amount) - { - $new_sundry_deposit = new SundryDeposit; - - $account_id = $inventory_account = $cost_of_goods_account = ''; - $id_array = explode(',', $sundry_items_string); - $cost_price_array = $chart_of_account_array = []; - - for ($i = 0; $i < count($id_array); $i++) { - - $account_id = get_name($id_array[$i], 'id', 'account_id', 'sundries'); - $inventory_account = get_name($id_array[$i], 'id', 'inventory_account', 'sundries'); - $cost_of_goods_account = get_name($id_array[$i], 'id', 'cost_of_goods_account', 'sundries'); - $cost_price = get_name($id_array[$i], 'id', 'cost_price', 'sundries'); - - $chart_of_account_array[$i] = $account_id; - $cost_price_array[$i] = $cost_price; - } - $chart_of_account_string = implode(',', $chart_of_account_array); - $cost_price_string = implode(',', $cost_price_array); - - $new_sundry_deposit->patient_id = $patient_id; - $new_sundry_deposit->episode_id = $episode_id; - $new_sundry_deposit->sundry_items = $sundry_items_string; - $new_sundry_deposit->sundry_quantity = $sundry_quantity_string; - $new_sundry_deposit->sundry_amounts = $sundry_prices_string; - $new_sundry_deposit->sundry_subtotals = $sundry_subtotal_string; - $new_sundry_deposit->patient_amount_paid = $patient_amount_paid; - $new_sundry_deposit->receipt_number = $receipt_number; - $new_sundry_deposit->discount_status = $discount_status; - $new_sundry_deposit->created_by = Auth::id(); - $new_sundry_deposit->current_chart_of_accounts = $chart_of_account_string; - $new_sundry_deposit->cost_of_goods_account = $cost_of_goods_account; - $new_sundry_deposit->inventory_account = $inventory_account; - $new_sundry_deposit->cost_price = $cost_price_string; - $new_sundry_deposit->order_ids = $order_ids; - $new_sundry_deposit->save(); - - record_cash_credits_to_daily_collection_account(($patient_amount_paid - $wallets_amount), $receipt_number, 'Sundries Patient Payment'); - - split_sundry_payment($new_sundry_deposit->id); - } - - public static function eye_glasses_payment($patient_id, $episode_id, $items_string, $quantity_string, $prices_string, $subtotal_string, - $discount_status, $receipt_number, $patient_amount_paid, $order_ids, $wallets_amount) { - $new_deposit = new EyeGlassesDeposits; - - $inventory_account = $cost_of_goods_account = ''; - $id_array = explode(',', $items_string); - $cost_price_array = $chart_of_account_array = []; - - for ($i = 0; $i < count($id_array); $i++) { - $account_id = get_name($id_array[$i], 'id', 'account_id', 'eye_glasses'); - $inventory_account = get_name($id_array[$i], 'id', 'inventory_account', 'eye_glasses'); - $cost_of_goods_account = get_name($id_array[$i], 'id', 'cost_of_goods_account', 'eye_glasses'); - $cost_price = get_name($id_array[$i], 'id', 'buying_price', 'eye_glasses'); - - $chart_of_account_array[$i] = $account_id; - $cost_price_array[$i] = $cost_price; - } - - $chart_of_account_string = implode(',', $chart_of_account_array); - $cost_price_string = implode(',', $cost_price_array); - - $new_deposit->patient_id = $patient_id; - $new_deposit->episode_id = $episode_id; - $new_deposit->items = $items_string; - $new_deposit->quantity = $quantity_string; - $new_deposit->amounts = $prices_string; - $new_deposit->subtotals = $subtotal_string; - $new_deposit->patient_amount_paid = $patient_amount_paid; - $new_deposit->receipt_number = $receipt_number; - $new_deposit->discount_status = $discount_status; - $new_deposit->current_chart_of_accounts = $chart_of_account_string; - $new_deposit->cost_of_goods_account = $cost_of_goods_account; - $new_deposit->inventory_account = $inventory_account; - $new_deposit->cost_price = $cost_price_string; - $new_deposit->order_ids = $order_ids; - $new_deposit->created_by = Auth::id(); - $new_deposit->save(); - - record_cash_credits_to_daily_collection_account(($patient_amount_paid - $wallets_amount), $receipt_number, 'Eye Glasses Patient Payment'); - - split_optics_payment($new_deposit->id); - } - - public static function central_billing_payments($patient_id, $episode_id, $amounts_string, $items_string, $receipt_number, $tag_id, $quantity, $patient_amount, $pat_cat_paid, $order_ids) { - $central = new CentralBillingDeposits; - - $central->patient_id = $patient_id; - $central->episode_id = $episode_id; - $central->items_amounts = $amounts_string; - $central->items_ids = $items_string; - $central->items_quantity = $quantity; - $central->patient_amount_paid = $patient_amount; - $central->patient_category_amount_paid = $pat_cat_paid; - $central->receipt_number = $receipt_number; - $central->tag_id = $tag_id; - $central->order_ids = $order_ids; - $central->created_by = Auth::id(); - $central->save(); - } - - public static function chi_deposits($patient_id, $episode_id, $items_string, $receipt_number, $tag_id, $point_of_deposit, $quantity, $chi_to_pay, - $patient_co_payment, $patient_amount_paid, $patient_balance, $order_ids, $chi_amount_total) { - $chi = new CHIDeposit(); - - $chi->patient_id = $patient_id; - $chi->episode_id = $episode_id; - $chi->items_ids = $items_string; - $chi->items_quantity = $quantity; - $chi->chi_to_pay = $chi_to_pay; - $chi->patient_co_payment = $patient_co_payment; - $chi->patient_amount_paid = $patient_amount_paid; - $chi->chi_amount_total = $chi_amount_total; - $chi->patient_balance = $patient_balance; - $chi->receipt_number = $receipt_number; - $chi->tag_id = $tag_id; - $chi->point_of_deposit = $point_of_deposit; - $chi->order_ids = $order_ids; - $chi->created_by = Auth::id(); - $chi->save(); - } - - public static function collective_bills_payments($patient_id, $amounts_string, $items_string, $receipt_number, $tag_id, $quantity, $patient_amount, $order_ids) - { - $collective = new CollectiveBillsDeposits(); - - $collective->patient_id = $patient_id; - $collective->items_ids = $items_string; - $collective->items_amounts = $amounts_string; - $collective->items_quantity = $quantity; - $collective->patient_amount_paid = $patient_amount; - $collective->receipt_number = $receipt_number; - $collective->tag_id = $tag_id; - $collective->order_ids = $order_ids; - $collective->created_by = Auth::id(); - $collective->save(); - } - - public static function patient_one_off_discount($patient_id, $episode_id, $amount_discounted, $tag_id, $memo, $receipt_number) - { - $discount = new PatientOneOffDiscount(); - - $discount->patient_id = $patient_id; - $discount->episode_id = $episode_id; - $discount->amount_discounted = $amount_discounted; - $discount->tag_id = $tag_id; - $discount->memo = $memo; - $discount->receipt_number = $receipt_number; - $discount->created_by = Auth::id(); - $discount->save(); - } -} diff --git a/docker/statistics/Modules/PatientFinance/Services/EyeGlassesDeposit.php b/docker/statistics/Modules/PatientFinance/Services/EyeGlassesDeposit.php deleted file mode 100755 index 22bd7703..00000000 --- a/docker/statistics/Modules/PatientFinance/Services/EyeGlassesDeposit.php +++ /dev/null @@ -1,133 +0,0 @@ -patient_id; - $episode_id = $request->episode_id; - $optical_ids_array = explode(",", $request->optical_ids); - $order_ids_array = explode(",", $request->order_ids); - $optical_subtotals_array = $request->optical_subtotal; - $optical_amounts_array = $request->optical_amount; - $optical_quantity_array = $request->quantity; - $tag_id = 19; - - // update the track_receipt table to include created receipt - $track_receipts = new TrackReceipt; - $track_receipts->created_by = Auth::id(); - $track_receipts->reason = 'Eye Glasses'; - $track_receipts->save(); - $receipt_number = sprintf("%04u", $track_receipts->id); - - // update the chart of accounts balance for each item - for ($i = 0; $i < count($optical_ids_array); $i++) { - $optical_account = get_name($optical_ids_array[$i], "id", "account_id", "eye_glasses"); - $account_balance = get_name($optical_account, "id", "balance", "chart_of_accounts"); - - $optical = EyeGlasses::withTrashed()->find($optical_ids_array[$i]); - $current_stock = $optical->pharmacy_stock; - $new_stock = $current_stock - $optical_quantity_array[$i]; - $optical->pharmacy_stock = $new_stock; - /**** batch tracking */ - $auto_calculated_batches_used = get_lab_batches_to_use_based_on_needed_quantity($optical_ids_array[$i], 7, $optical_quantity_array[$i],'pharmacy_stock'); - foreach ($auto_calculated_batches_used as $batch_number => $batch_qty) { - reduce_batch_item_from_pharmacy(7, $optical_ids_array[$i], $batch_number, $batch_qty, "ordered_eye_glasses", $order_ids_array[0], $patient_id); - } - /*** end batch tracking logic **/ - $optical->update(); - - - try { - $new_balance = $account_balance + $optical_subtotals_array[$i]; - ChartOfAccount::where(['id' => $optical_account])->update(['balance' => $new_balance]); - } catch (\Exception $exception) { - // raise error and go back to warn the person - } - - } - - // check if donor discounts have been applied using null and insert into table - if ($request->donor_discount) { - DepositHelpers::donor_discount_details($patient_id, $episode_id, $receipt_number, $request->patient_discount_amount, $request->donor_to_pay, $request->hospital_to_pay_selected_discount, $request->donor_discount, $request->donor_id, $tag_id); - } - - // add patient to debtors if balance is more than 0 - if ($request->balance > 0) { - DepositHelpers::debt($patient_id, $episode_id, $request->balance, $receipt_number, $tag_id); - } - - // register one off discount - if ($request->one_off_discount > 0) { - DepositHelpers::patient_one_off_discount($patient_id, $episode_id, $request->one_off_discount, $tag_id, $request->one_off_discount_memo, $receipt_number); - } - - // patient category discount flag - $discount_status = 0; - - // check if patient has a discount amount more than zero and pay later is not available to them - // this discount amount is represented as hospital to pay general - if ($request->hospital_to_pay_general_discount > 0) { - // change discount status - $discount_status = 1; - - // add to discounts table - DepositHelpers::discount($request->hospital_to_pay_general_discount, $patient_id, $episode_id, $receipt_number, 'Optical Items'); - } - - // is_invoice flag for receipt purposes. Default is 0 for no - $is_invoice = 0; - - // check if patient category is of type pay later to generate invoice for that category or to add to normal service payments table - if ($request->pay_later == 1) { - // change invoice flag to show that it is an invoice - $is_invoice = 1; - // create a new invoice - DepositHelpers::patient_category_invoice( - $request->patient_category_id, $patient_id, $episode_id, - implode(',', $optical_subtotals_array), - implode(',', $optical_ids_array), $receipt_number, $tag_id, - implode(',', $optical_quantity_array), - $request->patient_category_to_pay, date('Y-m-d'), implode(",", $order_ids_array) - ); - - // for co-payment people with some cash - if ($request->patient_to_pay > 0) { - DepositHelpers::eye_glasses_payment( - $patient_id, $episode_id, - implode(',', $optical_ids_array), - implode(',', $optical_quantity_array), - implode(',', $optical_amounts_array), - implode(',', $optical_subtotals_array), - $discount_status, $receipt_number, $request->patient_to_pay, implode(",", $order_ids_array), $request->wallets_amount - ); - } - } else { - // create a new optics payment record - DepositHelpers::eye_glasses_payment( - $patient_id, $episode_id, - implode(',', $optical_ids_array), - implode(',', $optical_quantity_array), - implode(',', $optical_amounts_array), - implode(',', $optical_subtotals_array), - $discount_status, $receipt_number, $request->patient_to_pay, implode(",", $order_ids_array), $request->wallets_amount - ); - } - - // update the payment status for the ordered ids to paid - for ($i = 0; $i < count($order_ids_array); $i++) { - OrderedEyeGlasses::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 1]); - } - - return $is_invoice . "," . $receipt_number; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Services/InvestigationsDeposit.php b/docker/statistics/Modules/PatientFinance/Services/InvestigationsDeposit.php deleted file mode 100755 index c3667a8d..00000000 --- a/docker/statistics/Modules/PatientFinance/Services/InvestigationsDeposit.php +++ /dev/null @@ -1,90 +0,0 @@ -patient_id; - $episode_id = $request->episode_id; - $investigation_ids_array = explode(",", $request->investigation_ids); - $order_ids_array = explode(",", $request->order_ids); - $investigation_amounts_array = $request->investigation_amount; - $tag_id = 2; - - // update the track_receipt table to include created receipt - $track_receipts = new TrackReceipt; - $track_receipts->created_by = auth()->user()->id; - $track_receipts->reason = 'Investigations'; - $track_receipts->save(); - $receipt_number = sprintf("%04u", $track_receipts->id); - - // update the chart of accounts balance for each service item - for($i = 0; $i < count($investigation_ids_array); $i++){ - $investigation_account = get_name($investigation_ids_array[$i], "id", "account_id", "investigations"); - $account_balance = get_name($investigation_account, "id", "balance", "chart_of_accounts"); - - $new_balance = $account_balance + $investigation_amounts_array[$i]; - ChartOfAccount::where(['id' => $investigation_account])->update(['balance' => $new_balance]); - } - - // check if donor discounts have been applied using null and insert into table - if($request->donor_discount){ - DepositHelpers::donor_discount_details($patient_id, $episode_id, $receipt_number, $request->patient_discount_amount, $request->donor_to_pay, $request->hospital_to_pay_selected_discount, $request->donor_discount, $request->donor_id, $tag_id); - } - - // add patient to debtors if balance is more than 0 - if ($request->balance > 0){ - DepositHelpers::debt($patient_id,$episode_id,$request->balance,$receipt_number,$tag_id); - } - - // register one off discount - if ($request->one_off_discount > 0){ - DepositHelpers::patient_one_off_discount($patient_id,$episode_id,$request->one_off_discount,$tag_id,$request->one_off_discount_memo, $receipt_number); - } - - // patient category discount flag - $discount_status = 0; - - // check if patient has a discount amount more than zero and pay later is not available to them - // this discount amount is represented as hospital to pay general - if($request->hospital_to_pay_general_discount > 0){ - // change discount status - $discount_status = 1; - - // add to discounts table - DepositHelpers::discount($request->hospital_to_pay_general_discount,$patient_id, $episode_id,$receipt_number,'Investigations'); - } - - // is_invoice flag for receipt purposes. Default is 0 for no - $is_invoice = 0; - - // check if patient category is of type pay later to generate invoice for that category or to add to normal service payments table - if($request->pay_later == 1){ - // change invoice flag to show that it is an invoice - $is_invoice = 1; - // create a new invoice - DepositHelpers::patient_category_invoice($request->patient_category_id, $patient_id,$episode_id,implode(',', $investigation_amounts_array),implode(',', $investigation_ids_array),$receipt_number,$tag_id,null, $request->patient_category_to_pay, date('Y-m-d'), implode(",", $order_ids_array)); - - // for co-payment people with some cash - if ($request->patient_to_pay > 0) { - DepositHelpers::investigation_payment($patient_id, $episode_id, implode(',', $investigation_ids_array), implode(',', $investigation_amounts_array), $discount_status, $receipt_number, $request->patient_to_pay, implode(",", $order_ids_array), $request->wallets_amount); - } - } else { - // create a new investigation payment record - DepositHelpers::investigation_payment($patient_id, $episode_id, implode(',', $investigation_ids_array), implode(',', $investigation_amounts_array), $discount_status, $receipt_number, $request->patient_to_pay, implode(",", $order_ids_array), $request->wallets_amount); - } - - // update the payment status for the ordered ids to paid - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedInvestigation::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 1]); - } - - return $is_invoice . "," . $receipt_number; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Services/ProceduresDeposit.php b/docker/statistics/Modules/PatientFinance/Services/ProceduresDeposit.php deleted file mode 100755 index 511abb52..00000000 --- a/docker/statistics/Modules/PatientFinance/Services/ProceduresDeposit.php +++ /dev/null @@ -1,94 +0,0 @@ -patient_id; - $episode_id = $request->episode_id; - $procedure_ids_array = explode(",", $request->procedure_ids); - $order_ids_array = explode(",", $request->order_ids); - $procedure_amounts_array = $request->procedure_amount; - $tag_id = 4; - - // update the track_receipt table to include created receipt - $track_receipts = new TrackReceipt; - $track_receipts->created_by = auth()->user()->id; - $track_receipts->reason = 'Procedures'; - $track_receipts->save(); - $receipt_number = sprintf("%04u", $track_receipts->id); - - // update the chart of accounts balance for each procedure item - for($i = 0; $i < count($procedure_ids_array); $i++){ - $procedure_account = get_name($procedure_ids_array[$i], "id", "account_id", "procedures"); - $account_balance = get_name($procedure_account, "id", "balance", "chart_of_accounts"); - - $new_balance = $account_balance + $procedure_amounts_array[$i]; - ChartOfAccount::where(['id' => $procedure_account])->update(['balance' => $new_balance]); - } - - // check if donor discounts have been applied using null and insert into table - if($request->donor_discount){ - DepositHelpers::donor_discount_details($patient_id, $episode_id, $receipt_number, $request->patient_discount_amount, $request->donor_to_pay, $request->hospital_to_pay_selected_discount, $request->donor_discount, $request->donor_id, $tag_id); - } - - // add patient to debtors if balance is more than 0 - if ($request->balance > 0){ - DepositHelpers::debt($patient_id,$episode_id,$request->balance,$receipt_number,$tag_id); - } - - // register one off discount - if ($request->one_off_discount > 0){ - DepositHelpers::patient_one_off_discount($patient_id,$episode_id,$request->one_off_discount,$tag_id,$request->one_off_discount_memo, $receipt_number); - } - - // patient category discount flag - $discount_status = 0; - - // check if patient has a discount amount more than zero and pay later is not available to them - // this discount amount is represented as hospital to pay general - if($request->hospital_to_pay_general_discount > 0){ - // change discount status - $discount_status = 1; - - // add to discounts table - DepositHelpers::discount($request->hospital_to_pay_general_discount,$patient_id, $episode_id,$receipt_number,'Procedures'); - } - - // is_invoice flag for receipt purposes. Default is 0 for no - $is_invoice = 0; - - // check if patient category is of type pay later to generate invoice for that category or to add to normal service payments table - if($request->pay_later == 1){ - // change invoice flag to show that it is an invoice - $is_invoice = 1; - // create a new invoice - DepositHelpers::patient_category_invoice($request->patient_category_id, $patient_id,$episode_id,implode(',', $procedure_amounts_array),implode(',', $procedure_ids_array),$receipt_number,$tag_id,null, $request->patient_category_to_pay, date('Y-m-d'), implode(",", $order_ids_array)); - - // for co-payment people with some cash - if ($request->patient_to_pay > 0) { - DepositHelpers::procedures_payment($patient_id, $episode_id, implode(',', $procedure_ids_array), implode(',', $procedure_amounts_array), $discount_status, $receipt_number, $request->patient_to_pay, implode(",", $order_ids_array), $request->wallets_amount); - } - } else { - // create a new investigation payment record - DepositHelpers::procedures_payment($patient_id, $episode_id, implode(',', $procedure_ids_array), implode(',', $procedure_amounts_array), $discount_status, $receipt_number, $request->patient_to_pay, implode(",", $order_ids_array), $request->wallets_amount); - } - - // update the payment status for the ordered ids to paid - for($i = 0; $i < count($order_ids_array); $i++){ - OrderedProcedure::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 1]); - - // update the receipts for staff payments - StaffPerformedService::whereIn('id', explode(",", get_name($order_ids_array[$i], 'id', 'performed_id', 'ordered_procedures')))->update(['patient_receipt_number' => $receipt_number]); - } - - return $is_invoice . "," . $receipt_number; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Services/ServicesDeposit.php b/docker/statistics/Modules/PatientFinance/Services/ServicesDeposit.php deleted file mode 100755 index 16bdc123..00000000 --- a/docker/statistics/Modules/PatientFinance/Services/ServicesDeposit.php +++ /dev/null @@ -1,101 +0,0 @@ -patient_id; - $episode_id = $request->episode_id; - $order_ids_array = is_array($request->order_ids) ? $request->order_ids : []; - $service_ids_array = $request->service_id; - - $service_prices_array = $request->service_amount; - $service_type = $request->service_type; - $tag_id = $request->tag_id; - - // update the track_receipt table to include created receipt - $track_receipts = new TrackReceipt; - $track_receipts->created_by = auth()->user()->id; - $track_receipts->reason = $service_type; - $track_receipts->save(); - $receipt_number = sprintf("%04u", $track_receipts->id); - - // update the chart of accounts balance for each service item - for($i = 0; $i < count($service_ids_array); $i++){ - $service_account = get_name($service_ids_array[$i], "id", "account_id", "services"); - $account_balance = get_name($service_account, "id", "balance", "chart_of_accounts"); - - $new_balance = $account_balance + (int)$service_prices_array[$i]; - ChartOfAccount::where(['id' => $service_account])->update(['balance' => $new_balance]); - } - - // check if donor discounts have been applied using null and insert into table - if($request->donor_discount){ - DepositHelpers::donor_discount_details($patient_id, $episode_id, $receipt_number, $request->patient_discount_amount, $request->donor_to_pay, $request->hospital_to_pay_selected_discount, $request->donor_discount, $request->donor_id, $tag_id); - } - - // register one off discount - if ($request->one_off_discount > 0){ - DepositHelpers::patient_one_off_discount($patient_id,$episode_id,$request->one_off_discount,$tag_id,$request->one_off_discount_memo, $receipt_number); - } - - // add patient to debtors if balance is more than 0 - if ($request->balance > 0){ - DepositHelpers::debt($patient_id,$episode_id,$request->balance,$receipt_number,$tag_id); - } - - // check if patient has a discount amount more than zero and pay later is not available to them - // this discount amount is represented as hospital to pay general - if($request->hospital_to_pay_general_discount > 0){ - DepositHelpers::discount($request->hospital_to_pay_general_discount,$patient_id, $episode_id,$receipt_number,$service_type); - } - - // is_invoice flag for receipt purposes. Default is 0 for no - $is_invoice = 0; - - // check if patient category is of type pay later to generate invoice for that category or to add to normal service payments table - if($request->pay_later == 1){ - // change invoice flag to show that it is an invoice - $is_invoice = 1; - // create a new invoice - DepositHelpers::patient_category_invoice($request->patient_category_id, $patient_id,$episode_id,implode(',', $service_prices_array),implode(',', $service_ids_array),$receipt_number,$tag_id,null, $request->patient_category_to_pay, date('Y-m-d'), implode(",", $order_ids_array)); - - // for co-payment people with some cash - if ($request->patient_to_pay > 0) { - DepositHelpers::service_payment($patient_id,$episode_id,implode(',', $service_ids_array),implode(',', $service_prices_array),$service_type,$receipt_number,$request->patient_to_pay, implode(",", $order_ids_array), $request->wallets_amount); - } - } else { - // create a new service payment record - DepositHelpers::service_payment($patient_id,$episode_id,implode(',', $service_ids_array),implode(',', $service_prices_array),$service_type,$receipt_number,$request->patient_to_pay, implode(",", $order_ids_array), $request->wallets_amount); - } - - // check if service is a co-payment and change payment status to paid - if ($service_type == 'Co_Payment') { - $update_patient_episode = PatientEpisode::find($episode_id); - $update_patient_episode->co_payment = 1; - $update_patient_episode->updated_by = auth()->user()->id; - $update_patient_episode->update(); - } - - // update the payment status for the ordered ids to paid - for ($i = 0; $i < count($order_ids_array); $i++) { - OrderedService::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 1]); - - // update the receipts for staff payments - StaffPerformedService::whereIn('id', explode(",", get_name($order_ids_array[$i], 'id', 'performed_id', 'ordered_services')))->update(['patient_receipt_number' => $receipt_number]); - } - - return $is_invoice . "," . $receipt_number; - } - -} \ No newline at end of file diff --git a/docker/statistics/Modules/PatientFinance/Services/SundriesDeposit.php b/docker/statistics/Modules/PatientFinance/Services/SundriesDeposit.php deleted file mode 100755 index ebee6e2f..00000000 --- a/docker/statistics/Modules/PatientFinance/Services/SundriesDeposit.php +++ /dev/null @@ -1,134 +0,0 @@ -patient_id; - $episode_id = $request->episode_id; - $sundry_ids_array = explode(",", $request->sundry_ids); - $order_ids_array = explode(",", $request->order_ids); - $sundry_subtotals_array = $request->sundry_subtotal; - $sundry_amounts_array = $request->sundry_amount; - $sundry_quantity_array = $request->quantity; - $tag_id = 5; - - // update the track_receipt table to include created receipt - $track_receipts = new TrackReceipt; - $track_receipts->created_by = auth()->user()->id; - $track_receipts->reason = 'Sundries'; - $track_receipts->save(); - $receipt_number = sprintf("%04u", $track_receipts->id); - - // update the chart of accounts balance for each sundry item - for ($i = 0; $i < count($sundry_ids_array); $i++) { - $sundry_account = get_name($sundry_ids_array[$i], "id", "account_id", "sundries"); - $account_balance = get_name($sundry_account, "id", "balance", "chart_of_accounts"); - //removed and set it to reduce sundries at payment only - - $sundry = \Streamline\Models\Sundry::withTrashed()->find($sundry_ids_array[$i]); - $current_stock = $sundry->pharmacy_stock; - $new_stock = $current_stock - $sundry_quantity_array[$i]; - $sundry->pharmacy_stock = $new_stock; - $sundry->update(); - /**** batch tracking */ - $auto_calculated_batches_used = get_lab_batches_to_use_based_on_needed_quantity($sundry_ids_array[$i],2,$sundry_quantity_array[$i],'pharmacy_stock'); - foreach ($auto_calculated_batches_used as $batch_number => $batch_qty) { - reduce_batch_item_stock(2,$sundry_ids_array[$i],$batch_number,'sundries','pharmacy_stock',$batch_qty,'ordered_sundries','Sundries',$order_ids_array[0],$patient_id); - // reduce_batch_item_from_pharmacy(2, $sundry_ids_array[$i], $batch_number, $batch_qty, "ordered_sundries", null, $patient_id); - } - /*** end batch tracking logic **/ - - - $new_balance = $account_balance + $sundry_subtotals_array[$i]; - ChartOfAccount::where(['id' => $sundry_account])->update(['balance' => $new_balance]); - } - - // check if donor discounts have been applied using null and insert into table - if ($request->donor_discount) { - DepositHelpers::donor_discount_details($patient_id, $episode_id, $receipt_number, $request->patient_discount_amount, $request->donor_to_pay, $request->hospital_to_pay_selected_discount, $request->donor_discount, $request->donor_id, $tag_id); - } - - // add patient to debtors if balance is more than 0 - if ($request->balance > 0) { - DepositHelpers::debt($patient_id, $episode_id, $request->balance, $receipt_number, $tag_id); - } - - // register one off discount - if ($request->one_off_discount > 0) { - DepositHelpers::patient_one_off_discount($patient_id, $episode_id, $request->one_off_discount, $tag_id, $request->one_off_discount_memo, $receipt_number); - } - - // patient category discount flag - $discount_status = 0; - - // check if patient has a discount amount more than zero and pay later is not available to them - // this discount amount is represented as hospital to pay general - if ($request->hospital_to_pay_general_discount > 0) { - // change discount status - $discount_status = 1; - - // add to discounts table - DepositHelpers::discount($request->hospital_to_pay_general_discount, $patient_id, $episode_id, $receipt_number, 'Sundries'); - } - - // is_invoice flag for receipt purposes. Default is 0 for no - $is_invoice = 0; - - // check if patient category is of type pay later to generate invoice for that category or to add to normal service payments table - if ($request->pay_later == 1) { - // change invoice flag to show that it is an invoice - $is_invoice = 1; - // create a new invoice - DepositHelpers::patient_category_invoice( - $request->patient_category_id, $patient_id, $episode_id, - implode(',', $sundry_subtotals_array), - implode(',', $sundry_ids_array), $receipt_number, $tag_id, - implode(',', $sundry_quantity_array), - $request->patient_category_to_pay, date('Y-m-d'), implode(",", $order_ids_array) - ); - - // for co-payment people with some cash - if ($request->patient_to_pay > 0) { - DepositHelpers::sundries_payment( - $patient_id, $episode_id, - implode(',', $sundry_ids_array), - implode(',', $sundry_quantity_array), - implode(',', $sundry_amounts_array), - implode(',', $sundry_subtotals_array), - $discount_status, $receipt_number, $request->patient_to_pay, implode(",", $order_ids_array), $request->wallets_amount - ); - } - } else { - // create a new sundries payment record - DepositHelpers::sundries_payment( - $patient_id, $episode_id, - implode(',', $sundry_ids_array), - implode(',', $sundry_quantity_array), - implode(',', $sundry_amounts_array), - implode(',', $sundry_subtotals_array), - $discount_status, $receipt_number, $request->patient_to_pay, implode(",", $order_ids_array), $request->wallets_amount - ); - } - - // update the payment status for the ordered ids to paid - for ($i = 0; $i < count($order_ids_array); $i++) { - OrderedSundry::where(['id' => $order_ids_array[$i]])->update(['payment_status' => 1]); - } - - return $is_invoice . "," . $receipt_number; - } -} diff --git a/docker/statistics/Modules/PatientFinance/Services/TreatmentDeposit.php b/docker/statistics/Modules/PatientFinance/Services/TreatmentDeposit.php deleted file mode 100755 index 734b5edc..00000000 --- a/docker/statistics/Modules/PatientFinance/Services/TreatmentDeposit.php +++ /dev/null @@ -1,142 +0,0 @@ -patient_id; - $episode_id = $request->episode_id; - $treatment_id_array = is_array($request->treatment_id) ? $request->treatment_id : []; - $treatment_items_array = $request->treatment_item; - $treatment_subtotals_array = $request->treatment_subtotal; - $treatment_amounts_array = $request->treatment_amount; - $treatment_quantity_array = $request->treatment_quantity; - $tag_id = 3; - - // update the track_receipt table to include created receipt - $track_receipts = new TrackReceipt; - $track_receipts->created_by = Auth::id(); - $track_receipts->reason = 'Treatment'; - $track_receipts->save(); - $receipt_number = sprintf("%04u", $track_receipts->id); - - // is_invoice flag for receipt purposes. Default is 0 for no - $is_invoice = 0; - - if (is_array($treatment_items_array)) { - // update the chart of accounts balance for each treatment item - for ($i = 0; $i < count($treatment_items_array); $i++) { - $drug_account = get_name($treatment_items_array[$i], "id", "account_id", "drugs"); - $account_balance = get_name($drug_account, "id", "balance", "chart_of_accounts"); - - if (get_inventory_reduction_point() == 2) { - $drug = Drug::withTrashed()->find($treatment_items_array[$i]); - $current_stock = $drug->pharmacy_stock; - $new_stock = $current_stock - $treatment_quantity_array[$i]; - $drug->pharmacy_stock = $new_stock; - $drug->update(); - //remember to check which batch has been used to ensure double entry - /**** batch tracking */ - $auto_calculated_batches_used = get_pharmacy_batch_watcher_ids_to_use_based_on_needed_quantity($treatment_items_array[$i], 1, $treatment_quantity_array[$i]); - foreach ($auto_calculated_batches_used as $batch_number => $batch_qty) { - reduce_batch_item_stock(1,$treatment_items_array[$i],$batch_number,'drugs','pharmacy_stock',$batch_qty,'treatments','Drug',$treatment_id_array[0],$patient_id); - // reduce_batch_item_from_pharmacy(1, $treatment_items_array[$i], $batch_number, $batch_qty, "treatments", $treatment_id_array[0], $patient_id); - } - /*** end batch tracking logic **/ - } - - $new_balance = $account_balance + $treatment_subtotals_array[$i]; - ChartOfAccount::where(['id' => $drug_account])->update(['balance' => $new_balance]); - } - - // check if donor discounts have been applied using null and insert into table - if ($request->donor_discount) { - DepositHelpers::donor_discount_details($patient_id, $episode_id, $receipt_number, $request->patient_discount_amount, $request->donor_to_pay, $request->hospital_to_pay_selected_discount, $request->donor_discount, $request->donor_id, $tag_id); - } - - // add patient to debtors if balance is more than 0 - if ($request->balance > 0) { - DepositHelpers::debt($patient_id, $episode_id, $request->balance, $receipt_number, $tag_id); - } - - // register one off discount - if ($request->one_off_discount > 0) { - DepositHelpers::patient_one_off_discount($patient_id, $episode_id, $request->one_off_discount, $tag_id, $request->one_off_discount_memo, $receipt_number); - } - - // patient category discount flag - $discount_status = 0; - - // check if patient has a discount amount more than zero and pay later is not available to them - // this discount amount is represented as hospital to pay general - if ($request->hospital_to_pay_general_discount > 0) { - // change discount status - $discount_status = 1; - - // add to discounts table - DepositHelpers::discount($request->hospital_to_pay_general_discount, $patient_id, $episode_id, $receipt_number, 'Treatment'); - } - - // check if patient category is of type pay later to generate invoice for that category or to add to normal service payments table - if ($request->pay_later == 1) { - // change invoice flag to show that it is an invoice - $is_invoice = 1; - // create a new invoice - DepositHelpers::patient_category_invoice( - $request->patient_category_id, $patient_id, $episode_id, - implode(',', $treatment_subtotals_array), - implode(',', $treatment_items_array), - $receipt_number, $tag_id, $treatment_quantity_array, $request->patient_category_to_pay, date('Y-m-d'), implode(",", $treatment_id_array) - ); - - // for co-payment people with some cash - if ($request->patient_to_pay > 0) { - DepositHelpers::treatment_payment( - $patient_id, $episode_id, $treatment_id_array[0], - implode(',', $treatment_items_array), - implode(',', $treatment_quantity_array), - implode(',', $treatment_amounts_array), - implode(',', $treatment_subtotals_array), - $discount_status, $receipt_number, $request->patient_to_pay, implode(",", $treatment_id_array), $request->wallets_amount - ); - } - } else { - // create a new treatment payment record - DepositHelpers::treatment_payment( - $patient_id, $episode_id, $treatment_id_array[0], - implode(',', $treatment_items_array), - implode(',', $treatment_quantity_array), - implode(',', $treatment_amounts_array), - implode(',', $treatment_subtotals_array), - $discount_status, $receipt_number, $request->patient_to_pay, implode(",", $treatment_id_array), $request->wallets_amount - ); - } - } else { - $receipt_number = 0; - } - - // update the payment status for the ordered id to paid - for ($i = 0; $i < count($treatment_id_array); $i++) { - Treatment::where(['id' => $treatment_id_array[$i]])->update(['payment_status' => 1]); - } - - // check if there are some treatment orders that were fully purchased elsewhere - // and clear them in case setting of 'treatments must be paid before dispensation' is active - if (isset($request->all_records_purchased_elsewhere)) { - for ($i = 0; $i < count($request->all_records_purchased_elsewhere); $i++) { - Treatment::where(['id' => $request->all_records_purchased_elsewhere[$i]])->update(['payment_status' => 1]); - } - } - - return $is_invoice . "," . $receipt_number; - } -} diff --git a/docker/statistics/Modules/PatientFinance/bitbucket-pipelines.yml b/docker/statistics/Modules/PatientFinance/bitbucket-pipelines.yml deleted file mode 100644 index e850a8fd..00000000 --- a/docker/statistics/Modules/PatientFinance/bitbucket-pipelines.yml +++ /dev/null @@ -1,19 +0,0 @@ -image: alpine/git:latest - -pipelines: - branches: - main: - - step: - name: Merge To Beta - script: - - git remote set-url origin https://Kabricks:${APP_SECRET}@bitbucket.org/dcsammi/${BITBUCKET_REPO_SLUG} - - git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*" - - git fetch - - git checkout beta - - git merge main - - git commit --amend -m "[skip ci] Merge changes from main" - - git push - - step: - name: Deploy To Test - script: - - echo "Ready to deploy to demo or production!" diff --git a/docker/statistics/Modules/PatientFinance/module.json b/docker/statistics/Modules/PatientFinance/module.json deleted file mode 100644 index 063b9350..00000000 --- a/docker/statistics/Modules/PatientFinance/module.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "PatientFinance", - "alias": "patient_finance", - "description": "Patient finance module to receive payments", - "keywords": [], - "priority": 0, - "providers": [ - "Modules\\PatientFinance\\Providers\\PatientFinanceServiceProvider" - ], - "files": [] -} diff --git a/docker/statistics/Modules/Patients/Http/Controllers/PatientAppointmentsController.php b/docker/statistics/Modules/Patients/Http/Controllers/PatientAppointmentsController.php deleted file mode 100644 index b13a32bb..00000000 --- a/docker/statistics/Modules/Patients/Http/Controllers/PatientAppointmentsController.php +++ /dev/null @@ -1,415 +0,0 @@ -get(); - - $calender_dates = []; - $count = 0; - - foreach ($follow_ups as $follow_up) { - $patient_name = get_full_name($follow_up->patient_id, 'id', 'first_name', 'last_name', 'patients'); - $calender_dates[$count] = ["title" => $patient_name, "start" => $follow_up->appointment_date . "T" . $follow_up->appointment_time]; - $count++; - } - - $clinics = Clinic::orderBy('name')->pluck("name", "id")->toArray(); - $clinics = ['0' => 'All Clinics'] + $clinics; - - $users = User::orderBy('first_name')->select("id", "first_name", "last_name")->get(); - - $users_array = []; - $users_collection = DB::table('users')->orderBy("first_name", "asc")->select("id")->get()->toArray(); - foreach ($users_collection as $value) { - $user = User::find($value->id); - if (!is_null($user)) { - if ($user->hasRole('Doctors') || $user->hasRole('Doctor')) { - //use this join query instead of the commented out query to cater for execution speed (N+1) - $consultation_records = DB::table('services') - ->join('staff_payment_configurations', 'staff_payment_configurations.item_id', '=', 'services.id') - ->where('services.item_type', 'Consultation') - ->where('staff_payment_configurations.user_id', $value->id) - ->where('staff_payment_configurations.item_category', 3) - ->orderBy('staff_payment_configurations.created_at', 'asc') - ->select('services.*') - ->get(); - - foreach ($consultation_records as $record) { - $users_consultation_fee = $record->non_insured_price; - //concatnate the service_record_id with the users id to form the key for the array - $users_array[$record->id . "__" . $value->id] = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users') . " (Consultation Fee: " . ugandan_shillings($users_consultation_fee) . ")"; - } - } - } - } - $users_array = ['' => '- select -'] + $users_array; - $special_clinics = DB::table('clinics')->where('available', 1)->whereNull('deleted_at')->orderBy('name', 'asc')->pluck("name", "id")->prepend('- select -', ''); - - return view('patients::patients.follow_up', compact('calender_dates', 'clinics', 'users', 'users_array', 'special_clinics')); - } - - public function follow_up_fetch_patients(Request $request) - { - $selected_date = $request->selected_date; - - if ($request->user_id != 0) { - $follow_ups = PatientAppointment::where(['appointment_date' => $selected_date])->where(['incharge_id' => $request->user_id])->get(); - } else { - $follow_ups = PatientAppointment::where(['appointment_date' => $selected_date])->get(); - } - - $code = ""; - - if ($follow_ups->count() > 0) { - foreach ($follow_ups as $follow_up) { - - if ($request->clinic_id != -1) { - if ($follow_up->clinic_allocation != $request->clinic_id) { - // skip current loop - continue; - } - } - - $code .= ""; - $code .= ""; - $code .= get_full_name($follow_up->patient_id, 'id', 'first_name', 'last_name', 'patients') . " (" . get_name($follow_up->patient_id, 'id', 'number', 'patients') . ")"; - $code .= ""; - $code .= ""; - $code .= ($follow_up->clinic_allocation == 0) ? "No clinic specified" : get_name($follow_up->clinic_allocation, 'id', 'name', 'clinics'); - $code .= ""; - $code .= ""; - $code .= ($follow_up->incharge_id == 0) ? "No incharge specified" : get_full_name($follow_up->incharge_id, 'id', 'first_name', 'last_name', 'users'); - $code .= ""; - $code .= ""; - $code .= $follow_up->appointment_time; - $code .= ""; - $code .= ""; - $code .= "Phone Number: " . get_name($follow_up->patient_id, 'id', 'phone', 'patients') . " Email: " . get_name($follow_up->patient_id, 'id', 'email', 'patients'); - $code .= ""; - $code .= ""; - $code .= is_null($follow_up->comments) ? 'N/A' : $follow_up->comments; - $code .= ""; - $code .= ""; - if ($follow_up->appointment_fulfilled == 1) { - $code .= ""; - } else if ($follow_up->appointment_fulfilled == 2) { - $code .= ""; - } else { - $code .= "Actions"; - } - $code .= ""; - $code .= ""; - } - } else { - $code .= "

    No patient appointments available for this date

    "; - } - - // check if the code is empty for when clinics selected are not available - if ($code == '') { - $code .= "

    No patient appointments available for this date

    "; - } - - return $code; - } - - public function create_appointment() - { - $clinics = Clinic::orderBy('name')->pluck("name", "id")->toArray(); - $clinics = ['0' => "Don't assign clinic"] + $clinics; - - $users = User::orderBy('first_name')->select("id", "first_name", "last_name")->get(); - - return view('patients::patients.create_appointment', compact('clinics', 'users')); - } - - public function save_appointment(Request $request) - { - $appointment = new PatientAppointment(); - - if (is_null($request->in_charge)) { - $in_charge = 0; - } else { - $in_charge = $request->in_charge; - } - - if (is_null($request->clinic_allocation)) { - $clinic_allocation = 0; - } else { - $clinic_allocation = $request->clinic_allocation; - } - - $appointment->patient_id = $request->patient_id; - $appointment->incharge_id = $in_charge; - $appointment->clinic_allocation = $clinic_allocation; - $appointment->episode_id = 0; - $appointment->appointment_date = Carbon::parse($request->appointment_date)->format('Y-m-d'); - $appointment->appointment_time = $request->appointment_time; - $appointment->comments = $request->comments; - $appointment->created_from = "Patient Appointments"; - $appointment->created_by = Auth::user()->id; - $appointment->updated_by = Auth::user()->id; - - if ($appointment->save()) { - flash("Patient appointment has been saved")->success(); - return redirect("/patients/follow_up"); - } else { - flash("An error occurred!")->error(); - return back()->withInput(); - } - } - - public function complete_appointment($id) - { - $appointment = PatientAppointment::find($id); - - $patient_id = $appointment->patient_id; - - // reassign the appointment_fulfilled to 1 - $appointment->appointment_fulfilled = 1; - $appointment->updated_by = Auth::user()->id; - - if ($appointment->save()) { - $episode = new PatientEpisode; - $episode->patient_id = $appointment->patient_id; - $episode->parent_episode_id = $appointment->episode_id == 0 ? null : $appointment->episode_id; //the original episode_id - $episode->created_by = auth()->user()->id; - $episode->updated_by = auth()->user()->id; - //put this patient_id into session - session()->put('patient_id', $patient_id); - - try { - $episode->save(); - flash("A new episode has been saved")->success(); - - //if the parent episode was an ANC visit then create a copy of previous anc registration and attach it to this episode - $previous_anc_visit = \Streamline\Models\AnteNatalClinicFollowup::where(['patient_id' => $episode->patient_id, 'episode_id' => $episode->parent_episode_id])->first(); - if ($previous_anc_visit) { - create_anc_registration_record_from_previous_visit($patient_id, $episode->parent_episode_id, $episode->id); - //allocate to ANC clinic straight away - $anc_clinic_id = get_name('ante_natal', 'slug', 'id', 'clinics'); - $episode->clinic_id = $anc_clinic_id; - $episode->update(); - } - - // check where the function was called from and return there - if (isset($request->is_from_finance)) { - // return to finance home - return redirect('/patient_finance/home'); - } else { - // return to normal patient home - return redirect('/patient_episodes/'); - } - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } else { - flash("An error occurred!")->error(); - return back()->withInput(); - } - } - - public function cancel_patient_appointment($id) - { - $appointment = PatientAppointment::find($id); - - // reassign the appointment_fulfilled to 2, indicating cancelled - $appointment->appointment_fulfilled = 2; - $appointment->updated_by = Auth::user()->id; - - if ($appointment->save()) { - return 1; - } else { - return 0; - } - } - - public function reschedule_appointment($id) - { - $appointment = PatientAppointment::find($id); - $clinics = Clinic::orderBy('name')->pluck("name", "id")->toArray(); - $clinics = ['0' => "Don't assign clinic"] + $clinics; - - $users = User::orderBy('first_name')->select("id", "first_name", "last_name")->get(); - - return view('patients::patients.reschedule_appointment', compact('appointment', 'clinics', 'users')); - } - - public function save_rescheduled_appointment(Request $request) - { - $appointment = PatientAppointment::find($request->appointment_id); - - if (is_null($request->in_charge)) { - $in_charge = 0; - } else { - $in_charge = $request->in_charge; - } - - if (is_null($request->clinic_allocation)) { - $clinic_allocation = 0; - } else { - $clinic_allocation = $request->clinic_allocation; - } - - $appointment->incharge_id = $in_charge; - $appointment->clinic_allocation = $clinic_allocation; - $appointment->appointment_date = Carbon::parse($request->appointment_date)->format('Y-m-d'); - $appointment->appointment_time = $request->appointment_time; - $appointment->comments = $request->comments; - $appointment->updated_by = Auth::user()->id; - - if ($appointment->save()) { - flash("Patient appointment has been rescheduled successfully")->success(); - return redirect("/patients/follow_up"); - } else { - flash("An error occurred!")->error(); - return back()->withInput(); - } - } - - public function appointment_requests() - { - $appointments = PatientAppointment::where('is_confirmed', 0) - ->whereNotIn('appointment_fulfilled', [2]) - ->where('appointment_date', '>', date('Y-m-d')) - ->get(); - - return view('patients::patients.appointment_requests', compact('appointments')); - } - - public function confirm_appointment($id) - { - $appointment = PatientAppointment::find($id); - $clinics = Clinic::orderBy('name')->pluck("name", "id")->toArray(); - $clinics = ['0' => "Don't assign clinic"] + $clinics; - - $users = User::orderBy('first_name')->select("id", "first_name", "last_name")->get(); - - return view('patients::patients.confirm_appointment', compact('appointment', 'clinics', 'users')); - } - - public function save_confirmed_appointment(Request $request) - { - $appointment = PatientAppointment::find($request->appointment_id); - - if (is_null($request->in_charge)) { - $in_charge = 0; - } else { - $in_charge = $request->in_charge; - } - - if (is_null($request->clinic_allocation)) { - $clinic_allocation = 0; - } else { - $clinic_allocation = $request->clinic_allocation; - } - - $appointment->incharge_id = $in_charge; - $appointment->clinic_allocation = $clinic_allocation; - $appointment->appointment_date = Carbon::parse($request->appointment_date)->format('Y-m-d'); - $appointment->appointment_time = $request->appointment_time; - $appointment->comments = $request->comments; - $appointment->is_confirmed = 1; - $appointment->updated_by = auth()->id(); - - if ($appointment->save()) { - if (is_sms_enabled()) { - // send sms alert to the patient - $sms = "Your appointment at " . get_name(1, 'id', 'name', 'hospital_information') . - " has been confirmed for the " . streamline_date($appointment->appointment_date) . " at " . $appointment->appointment_time; - - (new SMSController)->send_appointments_alert($appointment->patient_id, $sms); - } - - flash("Patient appointment has been confirmed")->success(); - return redirect("/patients/appointment_requests"); - } else { - flash("An error occurred!")->error(); - return back()->withInput(); - } - } - - public function patient_appointments_report(Request $request) - { - $clinic_id = $request->clinic_id; - $search_by = $request->search_by; - $reg_date = $request->reg_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - //dd($request->all()); - $clinics = Clinic::where('available', 1)->pluck('name', 'id')->prepend(['' => 'All clinics']); - - $today = Carbon::now()->toDateString(); - - $filters = []; - $clinic_name = Clinic::where('id', $clinic_id)->pluck('name')->first(); - - if ($search_by == 0) { - array_push($filters, ['appointment_date', '<', $today]); - } elseif ($search_by == 1) { - // custom date - $start_date_search = Carbon::parse($reg_date)->toDateString(); - array_push($filters, ['appointment_date', '=', $start_date_search]); - } elseif ($search_by == 2) { - // custom date range - $start_date_search = Carbon::parse($start_date)->toDateString(); - $end_date_search = Carbon::parse($end_date)->toDateString(); - - array_push($filters, ['appointment_date', '>', $start_date_search]); - array_push($filters, ['appointment_date', '<', $end_date_search]); - } else { - array_push($filters, ['appointment_date', '<', $today]); - } - - if ($clinic_id == 0 || is_null($clinic_id)) { - if ($request->appointment_outcome != 'all') { - $patient_appointments = PatientAppointment::where($filters)->where(['appointment_fulfilled' => $request->appointment_outcome])->orderBy('appointment_date', 'desc')->paginate(500); - } else { - $patient_appointments = PatientAppointment::where($filters)->orderBy('appointment_date', 'desc')->paginate(500); - } - } else { - if ($request->appointment_outcome != 'all') { - $patient_appointments = PatientAppointment::where(['clinic_allocation' => $clinic_id])->where(['appointment_fulfilled' => $request->appointment_outcome])->where($filters)->orderBy('appointment_date', 'desc')->paginate(400); - } else { - $patient_appointments = PatientAppointment::where(['clinic_allocation' => $clinic_id])->where($filters)->orderBy('appointment_date', 'desc')->paginate(400); - } - } - - return view('patients::patients.appointments_report', compact('clinics', 'patient_appointments')); - } - - public function store_appointment_comment(Request $request) - { - $appointment_id = $request->set_appointment_id; - $appointment_comment = $request->appointment_comment; - - $appointment = PatientAppointment::find($appointment_id); - $appointment->action_comment = $appointment_comment; - $appointment->action_comment_by = Auth::user()->id; - - if ($appointment->save()) { - return 1; - } else { - return 0; - } - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/Patients/Resources/views/patients/patient_card_old.blade.php b/docker/statistics/Modules/Patients/Resources/views/patients/patient_card_old.blade.php deleted file mode 100644 index 871976da..00000000 --- a/docker/statistics/Modules/Patients/Resources/views/patients/patient_card_old.blade.php +++ /dev/null @@ -1,351 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'CHI Membership Card - Stre@mline') }} - - {{-- --}} - - - - - - - - - -
    -
    - {{-- column --}} -
    -
    -
    -
    - Responsive image - -
    -
    PATIENT CARD
    -
    -
    - -
    -
    -

    NAME

    -

    AREBAHOONA MBABAZI ANGELLA MBABAZI OTHER NAME

    -
    - -
    - -
    -
    -

    PATIENT NUMBER

    -

    SCH-24-01290000

    -
    - -
    -

    VILLAGE

    -

    NAKAPIRIPIRITI WARD

    -
    - -
    - -
    -
    -

    DISTRICT

    -

    KABERAMAIDO DISTRICT

    -
    - -
    -

    BARCODE

    -

    - Responsive image - -

    -
    - -
    - - - -
    -
    -

    This card is a property of Kisiizi Medical center, if found please return to the facility.

    - -
    -
    - -
    - -
    -
    -

    Supported by Streamline ; www.streamlinehealth.org

    -
    -
    - Responsive image - -
    -
    - - - -
    -
    - - {{-- column --}} - {{--
    -
    -
    -
    - Responsive image - -
    -
    PATIENT CARD
    -
    -
    - -
    -
    -

    NAME

    -

    AREBAHOONA MBABAZI ANGELLA MBABAZI OTHER NAME

    -
    - -
    - -
    -
    -

    PATIENT NUMBER

    -

    SCH-24-01290000

    -
    - -
    -

    VILLAGE

    -

    NAKAPIRIPIRITI WARD

    -
    - -
    - -
    -
    -

    DISTRICT

    -

    KABERAMAIDO DISTRICT

    -
    - -
    -

    BARCODE

    -

    - Responsive image - -

    -
    - -
    - - - -
    -
    -

    This card is a property of Kisiizi Medical center, if found please return to the facility.

    - -
    -
    - -
    - -
    -
    -

    Supported by Streamline ; www.streamlinehealth.org

    -
    -
    - Responsive image - -
    -
    - - - -
    -
    --}} - - -
    -
    - - - - {{-- OLD VIEW --}} - {{--
    -
    -
    -
    - - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    NAMESEX
    - {{ get_full_name($patient->id, "id", "first_name", "last_name", "patients") }} - - {{ $patient->gender == 1 ? "MALE" : "FEMALE" }} -
    Stre@mline NUMBERDATE OF BIRTH
    - {{ $patient->number }} - - {{ streamline_date($patient->date_of_birth) }} -
    NINHOLDER'S SIGNATURE
    - {{ $patient->national_id }} - -
    -
    -
    -
    -
    -
    - - -


    - - - -
    -
    -
    - - - - - - - - - - - - - - - - - - - - -
    HOST HEALTH FACILITY    - {{ $hospitalInfo->name }} -
    VILLAGE - {{ get_name(get_name($patient->id, "id", "village_id", "patients"), "id", "name", "villages") }} -
    DISTRICT - {{ get_name($patient->district_id, "id", "name", "districts") }} -
    - {{ getDNS1DBarcodePNGOtherOption(sprintf("%04u", $patient->id)) }} -
    -

    {{ sprintf("%04u", $patient->id) }}

    -
    - -
    - This card should only be used for identification at a Stre@mline network hospital. -
    -
    -
    -
    -
    --}} - - - - - - \ No newline at end of file diff --git a/docker/statistics/Modules/Patients/Resources/views/patients/patient_cards_list.blade.php b/docker/statistics/Modules/Patients/Resources/views/patients/patient_cards_list.blade.php deleted file mode 100644 index 24241156..00000000 --- a/docker/statistics/Modules/Patients/Resources/views/patients/patient_cards_list.blade.php +++ /dev/null @@ -1,401 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('layout.patient_cards') }}

    -
    -
    - -
    -
    - - -
    - - - -
    - -
    - - -
    -
    -
    -
    - - {{-- Search Patient Cards --}} -
    - @csrf - -
    -
    -
    - - -
    -
    - - - -
    - -
    - -
    -
    - -
    -
    - - -
    -
    -
    - -
    -
    -
    -
    -
    - - - - - - @include('flash::message') - - -@php -use \Carbon\Carbon; -$today = Carbon::now(); -$patients_current_date = streamline_date($today); -@endphp - {{-- Process patient cards form --}} -
    - @csrf -
    - - -
    -
    {{ __('patients.patients_registered_today') }}
    -
    -
    - @if (Auth::user()->can('print-patient-cards')) - - @endif -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - @forelse ( $patients as $key => $patient ) - - @php - $village = \Streamline\Models\Village::find($patient->village_id); - $patient_category = \Streamline\Models\PatientCategory::find($patient->category_id); - @endphp - - - - - - - - - - - - - @empty - - - - - - - @endforelse - - - - -
    {{ __('patients.hash') }}{{ __('patients.patient_number') }}{{ __('patients.full_names') }}{{ __('patients.gender') }}{{ __('patients.age') }}{{ __('patients.phone_number') }}{{ __('patients.category') }}{{ __('patients.residence') }}
    {{ $patient->number ?? '' }}{!! insurance_flag($patient->id) !!} - @if($patient->gender == 1) - {{ __('patients.male') }} - @else - {{ __('patients.female') }} - @endif - {{ get_patients_age($patient->date_of_birth) }}{{ $patient->phone }}{{ $patient_category->name ?? '' }}{{ $village->name ?? '' }}
    - No Patients Found! -
    -
    - {{-- {{ $patients->links() }} --}} - {{ $patients->appends(Request::except('page'))->links() }} -
    -
    -
    - -
    - - -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - - - - - -@endpush - -@push('styles') - -@endpush - diff --git a/docker/statistics/Modules/Patients/Resources/views/patients/print_patients_cards.blade.php b/docker/statistics/Modules/Patients/Resources/views/patients/print_patients_cards.blade.php deleted file mode 100644 index f477bee6..00000000 --- a/docker/statistics/Modules/Patients/Resources/views/patients/print_patients_cards.blade.php +++ /dev/null @@ -1,145 +0,0 @@ - - - - - - Patient Card - - - - - - - - - - @php - $counter = 0; - @endphp - - @foreach($patient_cards as $key => $patient) - - @php - $counter++; - @endphp - - @if($counter % 2 == 0) - - @endif - @endforeach - - @if($counter % 2 != 0) - - @endif - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - - PATIENT CARD
    NAME
    - {{ $patient->first_name ?? '' }} - {{ $patient->last_name ?? '' }} - {{ $patient->other_names ?? '' }} -
    PATIENT NUMBERRESIDENCE
    {{ $patient->number ?? '' }} {{ get_name(get_name($patient->id, "id", "village_id", "patients"), "id", "name", "villages") }}
    DISTRICT
    - {{ get_name($patient->district_id, "id", "name", "districts") }} -
    - {{ getDNS1DBarcodePNGOCards(sprintf("%04u", $patient->id)) }} -
    -

    {{ sprintf("%04u", $patient->id) }}

    - - This card is a property of {{ $hospital_details->name ?? '' }} , If found please return to the facility.
    - -
    Supported by Streamline ; www.streamlinehealth.org - -
    -
    - -
    - - - - - - \ No newline at end of file diff --git a/docker/statistics/Modules/Patients/Resources/views/patients/searched_patient_cards.blade.php b/docker/statistics/Modules/Patients/Resources/views/patients/searched_patient_cards.blade.php deleted file mode 100644 index 44df4bdc..00000000 --- a/docker/statistics/Modules/Patients/Resources/views/patients/searched_patient_cards.blade.php +++ /dev/null @@ -1,411 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('layout.patient_cards') }}

    -
    -
    - -
    -
    - - -
    - - - -
    - -
    - -
    -
    -
    -
    - - {{-- Search Patient Cards --}} -
    - @csrf - -
    -
    -
    - - -
    -
    - - - -
    - -
    - -
    -
    - -
    -
    - - -
    -
    -
    - -
    -
    -
    -
    -
    - - - - - - @include('flash::message') - - - {{-- Process patient cards form --}} -
    - @csrf -
    - - -
    -
    - - {{ $searched_data_string ?? '' }} - -
    -
    -
    - @if (Auth::user()->can('print-patient-cards')) - - @endif -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - @forelse ( $patients as $key => $patient ) - - @php - $village = \Streamline\Models\Village::find($patient->village_id); - $patient_category = \Streamline\Models\PatientCategory::find($patient->category_id); - @endphp - - - - - - - - - - - - - - @empty - - - - - - - @endforelse - - - - - -
    {{ __('patients.hash') }}{{ __('patients.patient_number') }}{{ __('patients.full_names') }}{{ __('patients.gender') }}{{ __('patients.age') }}{{ __('patients.phone_number') }}{{ __('patients.category') }}{{ __('patients.residence') }}
    {{ $patient->number ?? '' }}{!! insurance_flag($patient->id) !!} - @if($patient->gender == 1) - {{ __('patients.male') }} - @else - {{ __('patients.female') }} - @endif - {{ get_patients_age($patient->date_of_birth) }}{{ $patient->phone }}{{ $patient_category->name ?? '' }}{{ $village->name ?? '' }}
    - No Patients Found! -
    - {{-- laravel pagination --}} -
    - {{-- {{ $patients->links() }} --}} - - {{ $patients->appends(Request::except('page'))->links() }} -
    -
    -
    - -
    - - -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - -{{-- print patient cards --}} -{{-- --}} - - - - - - - - - -@endpush - -@push('styles') - -@endpush - diff --git a/docker/statistics/Modules/Patients/Resources/views/triage/edit_tb_screening.blade.php b/docker/statistics/Modules/Patients/Resources/views/triage/edit_tb_screening.blade.php deleted file mode 100644 index 2acf6f62..00000000 --- a/docker/statistics/Modules/Patients/Resources/views/triage/edit_tb_screening.blade.php +++ /dev/null @@ -1,296 +0,0 @@ -
    -
    - INTENSIFIED TB CASE FINDING SCREEN: ({{ $age_group_display }}) -
    -
    -
    - DOES THE PATIENT HAVE ANY OF THE FOLLOWING: - any_tb_sysmptoms) && $triage->any_tb_sysmptoms == 1) checked @endif> Yes     - any_tb_sysmptoms) && $triage->any_tb_sysmptoms == 0) checked @endif> No - @if ($age_group == 5 || $age_group_display == '> 12 Years') - {{-- adults i.e above 12 years --}} -
      -
    1. - A cough for more than two weeks ? -
    2. -
    3. - Persistent fevers for 2 weeks or more ? -
    4. -
    5. - Noticeable weight loss of more than 3kg ? -
    6. -
    7. - Excessive night sweats for three weeks or more ? -
    8. -
    - @elseif($age_group == 4 || $age_group_display == '6 - 12 Years') - {{-- between 6-12 years --}} -
      -
    1. - A cough for more than two weeks ? -
    2. -
    3. - Persistent fevers for 2 weeks or more ? -
    4. -
    5. - Noticeable weight loss ? -
    6. -
    7. - Excessive night sweats for three weeks or more ? -
    8. -
    - @elseif( - $age_group == 3 || - $age_group == 2 || - $age_group == 1 || - $age_group_display == '1 - 12 Months' || - $age_group_display == '0 - 28 Days') - {{-- children below 5 years --}} -
      -
    1. - A cough for more than two weeks ? -
    2. -
    3. - Persistent fevers for 2 weeks or more ? -
    4. -
    5. - Noticeable weight loss ? -
    6. -
    7. - Poor weight gain in the last one month ? -
      - - (weight loss or “very low weight” = where weight for age is less than -3 z-score, or - “underweight” = - weight for age less than -2 z-score, or “confirmed weight loss”= more than 5% since last visit, - or “growth - curve flattening”). - -
    8. -
    9. - Contact with a person with pulmonary tuberculosis or chronic cough ? -
    10. -
    - @endif - -
    - - @if ($age_group == 5 || $age_group_display == '> 12 Years') - - - - - - - - - - - - - - - - - @elseif ($age_group == 4 || $age_group_display == '6 - 12 Years') - - - - - - - - - - - - - - - - - @elseif( - $age_group == 3 || - $age_group == 2 || - $age_group == 1 || - $age_group_display == '1 - 12 Months' || - $age_group_display == '0 - 28 Days') - {{-- children below 5 years --}} - - - - - - - - - - - - - - - - - - - - - @endif - -
    -
    -
    - - - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/Payroll/Config/config.php b/docker/statistics/Modules/Payroll/Config/config.php deleted file mode 100644 index bc7e0a5a..00000000 --- a/docker/statistics/Modules/Payroll/Config/config.php +++ /dev/null @@ -1,5 +0,0 @@ - 'Payroll' -]; diff --git a/docker/statistics/Modules/Payroll/Http/Controllers/Controller.php b/docker/statistics/Modules/Payroll/Http/Controllers/Controller.php deleted file mode 100755 index 57aaba08..00000000 --- a/docker/statistics/Modules/Payroll/Http/Controllers/Controller.php +++ /dev/null @@ -1,13 +0,0 @@ -paginate(50); - - return view('payroll::payroll_categories.index', compact('categories')); - } - - /** - * Show the form for creating a new resource. - */ - public function create() { - return view('payroll::payroll_categories.create'); - } - - /** - * Store a newly created resource in storage. - */ - public function store(Request $request) { - //validation passed - $category = new PayrollCategory; - $logged_in_user_id = Auth::user()->id; - - $category->name = $request->name; - $category->created_by = $logged_in_user_id; - $category->updated_by = $logged_in_user_id; - - try { - $category->save(); - - flash("Category has been saved")->success(); - return redirect("/payroll_categories/"); - } catch (QueryException $e) { - flash("An error occurred. Please try again later")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - */ - public function edit($id) { - $category = PayrollCategory::where(['id' => $id])->first(); - - if (!$category) { - flash()->error("Category not found"); - return redirect('/payroll_categories/'); - } else { - return view('payroll::payroll_categories.edit', compact('category')); - } - } - - /** - * Update the specified resource in storage. - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required' - ]); - - //validation passed - $category = PayrollCategory::find($id); - $category->name = $request->name; - - try { - $category->save(); - flash("Category has been updated")->success(); - return redirect("/payroll_categories/"); - } catch (QueryException $e) { - flash("An error occurred. Please try again later")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - */ - public function destroy($id) { - $category = PayrollCategory::find($id); - - if ($category->delete()) { - flash("Category has been deleted.")->success(); - } else { - flash('An error occurred. Please again later.'); - } - - return redirect('/payroll_categories/'); - } - - /** - * Display a listing of the inactive resource(s). - */ - public function inactive() { - $categories = PayrollCategory::onlyTrashed() - ->orderBy('name') - ->paginate(50); - - if (count($categories) < 1) { - flash()->error("There is no inactive category"); - return redirect('/payroll_categories/'); - } else { - return view('payroll::payroll_categories.inactive', compact('categories')); - } - } - - /** - * Activate the specified resource in storage. - */ - public function activate($id) { - $category = PayrollCategory::withTrashed()->find($id); - - if($category->restore()){ - flash("Category has been activated.")->success(); - return redirect('/payroll_categories/inactive'); - } else { - flash('An error occurred. Please again later.'); - return redirect('/payroll_categories/'); - } - } -} diff --git a/docker/statistics/Modules/Payroll/Http/Controllers/PayrollController.php b/docker/statistics/Modules/Payroll/Http/Controllers/PayrollController.php deleted file mode 100755 index c174232a..00000000 --- a/docker/statistics/Modules/Payroll/Http/Controllers/PayrollController.php +++ /dev/null @@ -1,1039 +0,0 @@ -middleware('auth'); - $this->middleware('permission:payroll-list'); - $this->middleware('permission:payroll-create', ['only' => ['create', 'store']]); - $this->middleware('permission:payroll-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:payroll-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - /** - * Display a listing of the resource. - */ - public function index() { - $payrolls = Payroll::join('patients', 'patients.id', '=', 'payrolls.patient_id') - ->get(['payrolls.*', 'patients.first_name', 'patients.last_name', 'patients.phone', 'patients.number']); - - $positions = StaffPositions::pluck('name', 'id'); - - $departments = Department::pluck('name', 'id')->toArray(); - $departments = ['' => '- select -'] + $departments; - - $banks = ChartOfAccount::where('type', 4)->pluck('name', 'id'); - - $payroll_categories = PayrollCategory::pluck('name', 'id')->toArray(); - $payroll_categories = ['' => '- select -'] + $payroll_categories; - - $salary_scales = PayrollSalaryScale::pluck('name', 'id')->toArray(); - $salary_scales = ['' => '- select -'] + $salary_scales; - - $contract_types = ['' => '-select-', 1 => 'Permanent', 2 => 'Probation', 3 => 'Contract']; - $criteria = ""; - - return view('payroll::payroll.index', compact('payrolls', 'positions', 'departments', 'banks', 'payroll_categories', 'salary_scales', 'contract_types', 'criteria')); - } - - public function index_search(Request $request) { - $filters = []; - $criteria = ""; - - $positions = StaffPositions::pluck('name', 'id'); - - $departments = Department::pluck('name', 'id')->toArray(); - $departments = ['' => '- select -'] + $departments; - - $banks = ChartOfAccount::where('type', 4)->pluck('name', 'id'); - - $payroll_categories = PayrollCategory::pluck('name', 'id')->toArray(); - $payroll_categories = ['' => '- select -'] + $payroll_categories; - - $salary_scales = PayrollSalaryScale::pluck('name', 'id')->toArray(); - $salary_scales = ['' => '- select -'] + $salary_scales; - - $contract_types = ['' => '-select-', 1 => 'Permanent', 2 => 'Probation', 3 => 'Contract']; - - if ($request->payroll_category) { - $filters[] = ['payroll_category', '=', $request->payroll_category]; - $criteria .= 'Payroll Category (' . $payroll_categories[$request->payroll_category] . ') '; - } - - if ($request->contract_type) { - $filters[] = ['contract', '=', $request->contract_type]; - $criteria .= 'Contract Type (' . $contract_types[$request->contract_type] . ') '; - } - - if ($request->payroll_scale) { - $filters[] = ['salary_scale', '=', $request->payroll_scale]; - $criteria .= 'Payroll Scale (' . $salary_scales[$request->payroll_scale] . ') '; - } - - if ($request->department) { - $filters[] = ['department', '=', $request->department]; - $criteria .= 'Department (' . $departments[$request->department] . ') '; - } - - $payrolls = Payroll::where($filters)->get(); - - return view('payroll::payroll.index', compact('payrolls', 'positions', 'departments', 'banks', 'payroll_categories', 'salary_scales', 'contract_types', 'criteria')); - } - - /** - * Show the form for creating a new resource. - */ - public function create() { - $positions = StaffPositions::pluck('name', 'id')->toArray(); - $positions = ['' => '- select -'] + $positions; - - $departments = Department::pluck('name', 'id')->toArray(); - $departments = ['' => '- select -'] + $departments; - - $banks = ChartOfAccount::where('type', 4)->pluck('name', 'id')->toArray(); - $banks = ['' => '- select -'] + $banks; - - $payroll_categories = PayrollCategory::pluck('name', 'id')->toArray(); - $payroll_categories = ['' => '- select -'] + $payroll_categories; - - $salary_scales = PayrollSalaryScale::pluck('name', 'id')->toArray(); - $salary_scales = ['' => '- select -'] + $salary_scales; - - return view('payroll::payroll.create', compact('positions', 'departments', 'banks', 'payroll_categories', 'salary_scales')); - } - - /** - * Store a newly created resource in storage. - */ - public function store(Request $request) { - request()->validate([ - 'position' => 'required', - 'department' => 'required', - 'payroll_bank_id' => 'required', - 'bank_account_number' => 'required', - 'basic_pay' => 'required', - 'payroll_category' => 'required' - ]); - - if (is_null($request->patient_id) || $request->patient_id == 0) { - flash('Please select a patient before submitting')->error(); - return back()->withInput(); - } - - $logged_in_user_id = Auth::user()->id; - $payroll = new Payroll; - - $payroll->patient_id = $request->patient_id; - $payroll->position = $request->position; - - $payroll->contract_period = json_encode([[0 => Carbon::createFromFormat('d/m/Y', $request->contract_start_date)->toDateString(), 1 => Carbon::createFromFormat('d/m/Y', $request->contract_end_date)->toDateString()]]); - - $payroll->department = $request->department; - $payroll->payroll_category = $request->payroll_category; - $payroll->nssf_number = $request->nssf_number; - $payroll->tin_number = $request->tin_number; - $payroll->salary_scale = $request->salary_scale; - $payroll->contract = $request->contract; - $payroll->payroll_bank_id = $request->payroll_bank_id; - $payroll->bank_account_number = $request->bank_account_number; - $payroll->basic_pay = $request->basic_pay; - $payroll->social_security_amount = $request->social_security_amount; - $payroll->tax_amount = $request->tax_amount; - $payroll->created_by = $logged_in_user_id; - $payroll->updated_by = $logged_in_user_id; - - try { - $payroll->save(); - flash("Payroll has been saved")->success(); - return redirect("/payroll/"); - } catch (QueryException $e) { - flash('An error occurred. Please try again later')->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - */ - public function show(Payroll $payroll) { - // - } - - /** - * Show the form for editing the specified resource. - */ - public function edit($id) { - $payroll = Payroll::where(['id' => $id])->first(); - - $positions = StaffPositions::pluck('name', 'id')->toArray(); - $positions = ['' => '- select -'] + $positions; - - $departments = Department::pluck('name', 'id')->toArray(); - $departments = ['' => '- select -'] + $departments; - - $banks = ChartOfAccount::where('type', 4)->pluck('name', 'id')->toArray(); - $banks = ['' => '- select -'] + $banks; - - $payroll_categories = PayrollCategory::pluck('name', 'id')->toArray(); - $payroll_categories = ['' => '- select -'] + $payroll_categories; - - $salary_scales = PayrollSalaryScale::pluck('name', 'id')->toArray(); - $salary_scales = ['' => '- select -'] + $salary_scales; - - return view('payroll::payroll.edit', compact('positions', 'departments', 'banks', 'payroll_categories', 'payroll', 'salary_scales')); - } - - /** - * Update the specified resource in storage. - */ - public function update(Request $request, $id) { - $payroll = Payroll::find($id); - - $payroll->position = $request->position; - $payroll->contract_period = json_encode([[0 => Carbon::createFromFormat('d/m/Y', $request->contract_start_date)->toDateString(), 1 => Carbon::createFromFormat('d/m/Y', $request->contract_end_date)->toDateString()]]); - $payroll->department = $request->department; - $payroll->payroll_category = $request->payroll_category; - $payroll->nssf_number = $request->nssf_number; - $payroll->tin_number = $request->tin_number; - $payroll->salary_scale = $request->salary_scale; - $payroll->contract = $request->contract; - $payroll->payroll_bank_id = $request->payroll_bank_id; - $payroll->bank_account_number = $request->bank_account_number; - $payroll->basic_pay = $request->basic_pay; - $payroll->social_security_amount = $request->social_security_amount; - $payroll->tax_amount = $request->tax_amount; - $payroll->updated_by = Auth::user()->id; - - try { - $payroll->save(); - flash("Payroll has been edited")->success(); - return redirect("/payroll/view_payroll_member_details" . $id); - } catch (QueryException $e) { - flash('An error occurred. Please try again later')->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - */ - public function destroy($id) { - $payroll = Payroll::find($id); - - if ($payroll->delete()) { - flash("Payroll has been deleted.")->success(); - return redirect('/payroll/'); - } - } - - public function deactivate($id) { - $payroll = Payroll::find($id); - - if ($payroll->delete()) { - flash("Payroll has been deleted.")->success(); - return redirect('/payroll/'); - } - } - - /** - * Display a listing of the inactive resource(s). - */ - public function inactive() { - $payrolls = Payroll::onlyTrashed() - ->paginate(50); - - $positions = StaffPositions::pluck('name', 'id'); - - $departments = Department::pluck('name', 'id'); - - $banks = ChartOfAccount::where('type', 4)->pluck('name', 'id'); - - if (count($payrolls) < 1) { - flash()->error("There is no inactive payroll"); - } - - return view('payroll::payroll.inactive', compact('payrolls', 'positions', 'departments', 'banks')); - } - - /** - * Activate the specified resource in storage. - */ - public function activate($id) { - $payroll = Payroll::withTrashed()->find($id); - - if ($payroll->restore()) { - flash("Payroll has been activated.")->success(); - return redirect('/payroll/inactive'); - } - } - - /** - * View the member details. - */ - public function view_payroll_member_details($id) { - $member = Payroll::where(['id' => $id])->first(); - - $payments = PayrollPayments::where(['member_id' => $id]) - ->orderBy('created_at', 'desc') - ->limit(50)->get(); - - $allow_deductions = PayrollAllowancesOrDeduction::where('member_id', $id) - ->orderBy('created_at', 'desc') - ->limit(50)->get(); - - $positions = StaffPositions::pluck('name', 'id'); - $departments = Department::pluck('name', 'id'); - $banks = ChartOfAccount::where('type', 4)->pluck('name', 'id'); - $payroll_categories = PayrollCategory::pluck('name', 'id'); - $salary_scales = PayrollSalaryScale::pluck('name', 'id'); - - return view('payroll::payroll.view_payroll_member_details', compact('member', 'payments', 'positions', 'departments', 'banks', 'payroll_categories', 'salary_scales', - 'allow_deductions')); - } - - /** End Payroll Functions */ - - /** Begin Payroll Payments Functions */ - - /** - * Make new payment for single staff member - */ - public function make_payment($id) { - // get the basic pay for the staff member - $member = Payroll::where(['payrolls.id' => $id])->join('patients', 'patients.id', '=', 'payrolls.patient_id') - ->select(['payrolls.*', 'patients.first_name', 'patients.last_name', 'patients.phone', 'patients.number'])->first(); - - $basic_pay = $member->basic_pay; - - $months = array( - '-select-', 'January' => 'January', 'February' => 'February', 'March' => 'March', - 'April' => 'April', 'May' => 'May', 'June' => 'June', 'July' => 'July', - 'August' => 'August', 'September' => 'September', 'October' => 'October', - 'November' => 'November', 'December' => 'December' - ); - - $years = array('-select-'); - - // add years from 10 years back to now(2050? ;) ) - $end_year = date('Y') + 2; - $start_year = $end_year - 10; - - // create array with all the years in between - $years_range = range($start_year, $end_year); - - // add to years array to be returned to view - foreach ($years_range as $year) { - $years[$year] = $year; - } - - $positions = StaffPositions::pluck('name', 'id'); - - $departments = Department::pluck('name', 'id'); - - return view('payroll::payroll.make_payment', compact('member', 'basic_pay', 'months', 'years', 'id', 'positions', 'departments')); - } - - /** - * Store a newly created payment in storage. - */ - public function save_payment(Request $request) { - $validator = Validator::make($request->all(), [ - 'year' => 'required', - 'month' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - $logged_in_user_id = Auth::id(); - $payroll = new PayrollPayments; - - $payroll->member_id = $request->member_id; - $payroll->bank_id = $request->bank_id; - $payroll->year = $request->year; - $payroll->month = $request->month; - $payroll->allowances = $request->allowances; - $payroll->deductions = $request->deductions; - $payroll->paye_payment = $request->paye_payment; - $payroll->nssf_payment = $request->nssf_payment; - $payroll->basic_pay = $request->basic_pay; - $payroll->gross_pay = $request->gross_pay; - $payroll->total_deductions = $request->total_deductions; - $payroll->net_pay = $request->net_pay; - $payroll->created_by = $logged_in_user_id; - $payroll->updated_by = $logged_in_user_id; - - try { - $payroll->save(); - flash("Payroll payment has been saved")->success(); - return redirect("/payroll/view_payslip" . $payroll->id); - } catch (QueryException $e) { - return back()->withInput(); - } - } - } - - public function add_new_department_dynamically(Request $request) { - $department = new Department; - $department->name = $request->name; - $department->created_by = Auth::user()->id; - $department->updated_by = Auth::user()->id; - - $check = Department::where('name', $request->name)->pluck('name')->first(); - if (is_null($check)) { - try { - $department->save(); - return $department->id; - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } else { - return 'false'; - } - } - - /** - * Display the payroll payments made - */ - public function view_payroll_payments(Request $request) { - if ($request->start_date) { - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $bank_id = $request->bank_id; - } else { - $start = Carbon::now()->startOfDay()->toDateTimeString(); - $end = Carbon::now()->endOfDay()->toDateTimeString(); - $bank_id = 1; - } - - $payments = PayrollPayments::orderBy('member_id', 'asc') - ->whereBetween('created_at', [$start, $end]) - ->where('bank_id', $bank_id) - ->get(); - - $banks = DB::table('banks')->pluck('name', 'id')->toArray(); - $banks = [0 => '- All Banks -'] + $banks; - - $member_details_first_name = Payroll::pluck('first_name', 'id'); - - $member_details_last_name = Payroll::pluck('last_name', 'id'); - - return view('payroll::payroll.view_payroll_payments', compact('payments', 'member_details_first_name', 'member_details_last_name', 'start', 'end', 'banks', 'bank_id')); - } - - /** - * Remove the specified resource from storage. - */ - public function destroy_payslip($id) { - $payment = PayrollPayments::find($id); - - if ($payment->delete()) { - flash("Payslip has been deleted.")->success(); - return redirect('/payroll/view_payroll_payments'); - } - } - - /** - * Display a listing of the inactive resource(s). - */ - public function inactive_payslips() { - $payments = PayrollPayments::onlyTrashed() - ->orderBy('member_id', 'asc') - ->paginate(50); - - $member_details_first_name = Payroll::pluck('first_name', 'id'); - - $member_details_last_name = Payroll::pluck('last_name', 'id'); - - if (count($payments) < 1) { - flash()->error("There is no inactive payslip"); - } - - return view('payroll::payroll.inactive_payslips', compact('payments', 'member_details_first_name', 'member_details_last_name')); - } - - /** - * Activate the specified resource in storage. - */ - public function activate_payslip($id) { - $payslip = PayrollPayments::withTrashed()->find($id); - - if ($payslip->restore()) { - flash("Payslip has been activated.")->success(); - return redirect('/payroll/inactive_payslips'); - } - } - - /** - * Show the form for editing the specified resource. - */ - public function edit_payslip($id) { - $payslip = PayrollPayments::where(['id' => $id])->first(); - - $months = array( - '-select-', 'January' => 'January', 'February' => 'February', 'March' => 'March', - 'April' => 'April', 'May' => 'May', 'June' => 'June', 'July' => 'July', - 'August' => 'August', 'September' => 'September', 'October' => 'October', - 'November' => 'November', 'December' => 'December' - ); - - $years = array('-select-'); - - // add years from 10 years back to now(2050? ;) ) - $end_year = date('Y'); - $start_year = $end_year - 10; - - // create array with all the years in between - $years_range = range($start_year, $end_year); - - // add to years array to be returned to view - foreach ($years_range as $year) { - $years[$year] = $year; - } - - $positions = StaffPositions::pluck('name', 'id'); - - $departments = Department::pluck('name', 'id'); - - $member = Payroll::where(['id' => $payslip->member_id])->first(); - - return view('payroll::payroll.edit_payslip', compact('payslip', 'months', 'years', 'member', 'positions', 'departments')); - } - - /** - * Update the specified resource in storage. - */ - public function update_payslip(Request $request) { - $payroll = PayrollPayments::find($request->id); - - $payroll->year = $request->year; - $payroll->month = $request->month; - $payroll->headship = $request->headship; - $payroll->calls = $request->calls; - $payroll->other = $request->other; - $payroll->staff_society = $request->staff_society; - $payroll->school_fees = $request->school_fees; - $payroll->other_debts = $request->other_debts; - $payroll->advances = $request->advances; - $payroll->vehicle_hire = $request->vehicle_hire; - $payroll->patient_debts = $request->patient_debts; - $payroll->paye_payment = $request->paye_payment; - $payroll->nssf_payment = $request->nssf_payment; - $payroll->basic_pay = $request->basic_pay; - $payroll->gross_pay = $request->gross_pay; - $payroll->total_deductions = $request->total_deductions; - $payroll->net_pay = $request->net_pay; - $payroll->updated_by = Auth::user()->id; - - try { - $payroll->save(); - flash("Payslip has been edited successfully")->success(); - return redirect("/payroll/view_payroll_payments"); - } catch (QueryException $e) { - return back()->withInput(); - } - } - - /** - * View payslip for specified resource. - */ - public function view_payslip($id) { - $payslip = PayrollPayments::where(['id' => $id])->first(); - - $positions = StaffPositions::pluck('name', 'id'); - - $departments = Department::pluck('name', 'id'); - - $banks = ChartOfAccount::where('type', 4)->pluck('name', 'id'); - - $member = Payroll::where(['id' => $payslip->member_id])->first(); - - $hospital_information = HospitalInformation::first(); - - return view('payroll::payroll.view_payslip', compact('payslip', 'member', 'positions', 'departments', 'banks', 'hospital_information')); - } - - /** End Payroll Payments Functions */ - - /** Begin Bulk Payroll Functions */ - - public function bulk_create() { - $contracts = ['- select -', 1 => 'Permanent', 2 => 'Probation', 3 => 'Contract']; - - $positions = StaffPositions::pluck('name', 'id')->toArray(); - $positions = ['' => '- select -'] + $positions; - - $departments = Department::pluck('name', 'id')->toArray(); - $departments = ['' => '- select -'] + $departments; - - $banks = ChartOfAccount::where('type', 4)->pluck('name', 'id')->toArray(); - $banks = ['' => '- select -'] + $banks; - - $payroll_categories = PayrollCategory::pluck('name', 'id')->toArray(); - $payroll_categories = ['' => '- select -'] + $payroll_categories; - - $salary_scales = PayrollSalaryScale::pluck('name', 'id')->toArray(); - $salary_scales = ['' => '- select -'] + $salary_scales; - - return view('payroll::payroll.bulk_create', compact('positions', 'departments', 'banks', 'contracts', 'payroll_categories', 'salary_scales')); - } - - public function bulk_store(Request $request) { - $logged_in_user_id = Auth::user()->id; - - // actual number of records saved because those with missing fields are disregarded - $payroll_counter = 0; - - $patients_array = $request->patient_id; - $position_array = $request->position; - $department_array = $request->department; - $nssf_number_array = $request->nssf_number; - $tin_number_array = $request->tin_number; - $salary_scale_array = $request->salary_scale; - $contract_array = $request->contract; - $payroll_bank_id_array = $request->payroll_bank_id; - $bank_account_number_array = $request->bank_account_number; - $basic_pay_array = $request->basic_pay; - $social_security_amount_array = $request->social_security_amount; - $tax_amount_array = $request->tax_amount; - $payroll_category_array = $request->payroll_category; - $contract_start_date_array = $request->contract_start_date; - $contract_end_date_array = $request->contract_end_date; - - for ($x = 0; $x < count($patients_array); $x++) { - if (!is_null($patients_array[$x]) && $patients_array[$x] != 0) { - $payroll = new Payroll; - - $payroll->patient_id = $patients_array[$x]; - $payroll->payroll_category = $payroll_category_array[$x]; - $payroll->contract_period = json_encode([[0 => Carbon::createFromFormat('d/m/Y', $contract_start_date_array[$x])->toDateString(), 1 => Carbon::createFromFormat('d/m/Y', $contract_end_date_array[$x])->toDateString()]]); - $payroll->position = $position_array[$x]; - $payroll->department = $department_array[$x]; - $payroll->nssf_number = $nssf_number_array[$x]; - $payroll->tin_number = $tin_number_array[$x]; - $payroll->salary_scale = $salary_scale_array[$x]; - $payroll->contract = $contract_array[$x]; - $payroll->payroll_bank_id = $payroll_bank_id_array[$x]; - $payroll->bank_account_number = $bank_account_number_array[$x]; - $payroll->basic_pay = $basic_pay_array[$x]; - $payroll->social_security_amount = $social_security_amount_array[$x]; - $payroll->tax_amount = $tax_amount_array[$x]; - $payroll->created_by = $logged_in_user_id; - $payroll->updated_by = $logged_in_user_id; - - try { - $payroll->save(); - ++$payroll_counter; - } catch (QueryException $e) { - flash("Unable to save employee record with patient id " . $patients_array[$x])->error(); - } - } - } - - flash($payroll_counter . " payroll employee records have been created")->success(); - return redirect("/payroll/"); - } - - public function bulk_edit(Request $request) { - if (is_null($request->ids_to_edit)) { - flash("No records have been selected for editing")->error(); - return redirect("/payroll/"); - } - - $payrolls = Payroll::whereIn('id', $request->ids_to_edit)->get(); - - $contracts = ['- select -', 1 => 'Permanent', 2 => 'Probation', 3 => 'Contract']; - - $positions = StaffPositions::pluck('name', 'id')->toArray(); - $positions = ['' => '- select -'] + $positions; - - $departments = Department::pluck('name', 'id')->toArray(); - $departments = ['' => '- select -'] + $departments; - - $banks = ChartOfAccount::where('type', 4)->pluck('name', 'id')->toArray(); - $banks = ['' => '- select -'] + $banks; - - $payroll_categories = PayrollCategory::pluck('name', 'id')->toArray(); - $payroll_categories = ['' => '- select -'] + $payroll_categories; - - $salary_scales = PayrollSalaryScale::pluck('name', 'id')->toArray(); - $salary_scales = ['' => '- select -'] + $salary_scales; - - if (count($payrolls) < 1) { - flash("There is no active payroll")->error(); - return redirect("/payroll/"); - } - - return view('payroll::payroll.bulk_edit', compact('payrolls', 'positions', 'departments', 'banks', 'contracts', 'payroll_categories', 'salary_scales')); - } - - public function bulk_update(Request $request) { - $records_array = $request->id; - $position_array = $request->position; - $department_array = $request->department; - $nssf_number_array = $request->nssf_number; - $tin_number_array = $request->tin_number; - $salary_scale_array = $request->salary_scale; - $contract_array = $request->contract; - $payroll_bank_id_array = $request->payroll_bank_id; - $bank_account_number_array = $request->bank_account_number; - $basic_pay_array = $request->basic_pay; - $payroll_category_array = $request->payroll_category; - $contract_start_date_array = $request->contract_start_date; - $contract_end_date_array = $request->contract_end_date; - $social_security_amount_array = $request->social_security_amount; - $tax_amount_array = $request->tax_amount; - - $logged_in_user_id = Auth::user()->id; - - for ($x = 0; $x < count($records_array); $x++) { - $payroll = Payroll::find($records_array[$x]); - - $payroll->payroll_category = $payroll_category_array[$x]; - $payroll->contract_period = json_encode([[0 => Carbon::createFromFormat('d/m/Y', $contract_start_date_array[$x])->toDateString(), 1 => Carbon::createFromFormat('d/m/Y', $contract_end_date_array[$x])->toDateString()]]); - $payroll->position = $position_array[$x]; - $payroll->department = $department_array[$x]; - $payroll->nssf_number = $nssf_number_array[$x]; - $payroll->tin_number = $tin_number_array[$x]; - $payroll->salary_scale = $salary_scale_array[$x]; - $payroll->contract = $contract_array[$x]; - $payroll->payroll_bank_id = $payroll_bank_id_array[$x]; - $payroll->bank_account_number = $bank_account_number_array[$x]; - $payroll->basic_pay = $basic_pay_array[$x]; - $payroll->social_security_amount = $social_security_amount_array[$x]; - $payroll->tax_amount = $tax_amount_array[$x]; - $payroll->updated_by = $logged_in_user_id; - - try { - $payroll->save(); - } catch (QueryException $e) { - // - } - } - - flash("Payrolls have been updated")->success(); - return redirect("/payroll/"); - } - - // for payroll members of all banks without search - public function create_bulk_payment(Request $request) { - - $banks = ChartOfAccount::where('type', 4)->pluck('name', 'id')->toArray(); - - $banks = [0 => '- All Banks -'] + $banks; - - // no banks selected - if ($request->bank_id && $request->bank_id != 0) { - $payrolls = Payroll::where(['payroll_bank_id' => $request->bank_id]) - ->orderBy('first_name', 'asc') - ->paginate(50); - - if (count($payrolls) < 1) { - flash()->error("There is no payroll for this bank"); - } - - // get bank name - $bank_name = $banks[$request->bank_id]; - flash()->success("Showing results for " . $bank_name); - - $bank_id = $request->bank_id; - } else { - $payrolls = Payroll::orderBy('first_name', 'asc') - ->paginate(50); - - if (count($payrolls) < 1) { - flash()->error("There is no active payroll"); - } - - $bank_id = 0; - } - - $positions = StaffPositions::pluck('name', 'id'); - - $departments = Department::pluck('name', 'id'); - - $months = array( - '-select-', 'January' => 'January', 'February' => 'February', 'March' => 'March', - 'April' => 'April', 'May' => 'May', 'June' => 'June', 'July' => 'July', - 'August' => 'August', 'September' => 'September', 'October' => 'October', - 'November' => 'November', 'December' => 'December' - ); - - $years = array('-select-'); - - // add years from 10 years back to now(2050? ;) ) - $end_year = date('Y'); - $start_year = $end_year - 10; - - // create array with all the years in between - $years_range = range($start_year, $end_year); - - // add to years array to be returned to view - foreach ($years_range as $year) { - $years[$year] = $year; - } - - return view('payroll::payroll.create_bulk_payment', compact('payrolls', 'positions', 'departments', 'banks', 'months', 'years', 'bank_id')); - } - - public function store_bulk_payment(Request $request) { - - $logged_in_user_id = Auth::user()->id; - $year = $request->year; - $month = $request->month; - - for ($x = 0; $x < count($request->index); $x++) { - $index = $request->index[$x]; - - $payroll = new PayrollPayments; - - $payroll->member_id = $request->member_id[$index]; - $payroll->bank_id = $request->bank_id[$index]; - $payroll->year = $year; - $payroll->month = $month; - $payroll->paye_payment = $request->paye_payment[$index]; - $payroll->nssf_payment = $request->nssf_payment[$index]; - $payroll->basic_pay = $request->basic_pay[$index]; - $payroll->gross_pay = $request->gross_pay[$index]; - $payroll->total_deductions = $request->total_deductions[$index]; - $payroll->net_pay = $request->net_pay[$index]; - $payroll->created_by = $logged_in_user_id; - $payroll->updated_by = $logged_in_user_id; - - try { - $payroll->save(); - } catch (QueryException $e) { - // - } - } - - flash("Payroll payments have been made")->success(); - return redirect("/payroll/view_payroll_payments"); - } - - /** End Bulk Payroll Functions */ - - /** - * Calculate nssf amount - */ - public function calculate_nssf(Request $request) { - $amount = $request->amount; - - $nssf_rate = PayrollDefault::where(['id' => 1])->first(); - - $return_amount = $amount * $nssf_rate->nssf_rate; - - return $return_amount; - } - - /** - * Calculate paye amount - */ - public function calculate_paye(Request $request) { - $amount = $request->amount; - - $tax_rate_record = PayrollDefault::where(['id' => 1])->first(); - - $taxed_amount = 0; - - if (is_null($tax_rate_record->tax_from)) { - $tax_from = [0, 235001, 335001, 410001, 10000000]; - $tax_to = [235000, 335000, 410000, 10000000, 1000000000]; - $tax_rate = [0, 10, 20, 30, 40]; - } else { - $tax_from = json_decode($tax_rate_record->tax_from); - $tax_to = json_decode($tax_rate_record->tax_to); - $tax_rate = json_decode($tax_rate_record->tax_rate); - } - - for ($i = 0; $i < count($tax_from); $i++) { - if ($amount >= $tax_from[$i] && $amount <= $tax_to[$i]) { - return $taxed_amount + ceil(($amount - $tax_from[$i]) * ($tax_rate[$i] / 100)); - } else { - $taxed_amount += ceil(($tax_to[$i] - $tax_from[$i]) * ($tax_rate[$i] / 100)); - } - } - - return 0; - } - - public function allowances_or_deductions($id) { - $member = Payroll::find($id); - $income_accounts = ChartOfAccount::where('type', 1)->pluck('name', 'id'); - - $records = PayrollAllowancesOrDeduction::where('member_id', $id)->orderBy('created_at', 'desc')->get(); - - return view('payroll::payroll/allowances_or_deductions', compact('member', 'records', 'income_accounts')); - } - - public function add_allowances_or_deductions($id) { - $member = Payroll::find($id); - $income_accounts = ChartOfAccount::where('type', 1)->pluck('name', 'id')->toArray(); - $income_accounts = ['' => '--select--'] + $income_accounts; - - $type = ['' => '--select--', 0 => 'Allowance', 1 => 'Deduction']; - - return view('payroll::payroll/add_allowances_or_deductions', compact('member', 'income_accounts', 'type')); - } - - public function save_allowances_or_deductions(Request $request) { - $record = new PayrollAllowancesOrDeduction(); - - // update the track_receipt table to include created receipt - $track_receipts = new TrackReceipt; - $track_receipts->created_by = auth()->user()->id; - $track_receipts->reason = 'Payroll'; - $track_receipts->save(); - $receipt_number = sprintf("%04u", $track_receipts->id); - - $record->member_id = $request->member_id; - $record->reason = $request->reason; - $record->amount = $request->amount; - $record->type = $request->type; - $record->receipt_number = $receipt_number; - $record->recurring = $request->recurring; - $record->billed = 0; - $record->recurring_period = $request->recurring == 1 ? $request->recurring_period : NULL; - $record->recurring_final_date = $request->recurring_period == 1 ? Carbon::createFromFormat('d/m/Y', $request->recurring_final_date)->toDateString() : NULL; - $record->income_account_id = $request->income_account ?? 0; - $record->created_by = Auth::user()->id; - $record->updated_by = Auth::user()->id; - - $record->save(); - $patient_id = get_name($request->member_id, 'id', 'patient_id', 'payrolls'); - - flash("Allowance/Deduction for " . get_full_name($patient_id, 'id', 'first_name', 'last_name', 'patients') . " has been recorded")->success(); - return redirect("/payroll/allowance_or_deductions_receipt/" . $record->id); - } - - public function allowance_or_deductions_receipt($id) { - $hospital_information = HospitalInformation::first(); - $records = PayrollAllowancesOrDeduction::find($id); - - return view('payroll::payroll.allowance_or_deductions_receipt', compact('hospital_information', 'records')); - } - - public function get_allowance_or_deductions(Request $request) { - $records = PayrollAllowancesOrDeduction::where('year', $request->year) - ->where('month', $request->month) - ->where('member_id', $request->member_id) - ->get(); - - if (count($records) > 0) { - $allowances = 0; - $deductions = 0; - - foreach ($records as $record) { - if ($record->type == 0) { - $allowances += $record->amount; - } elseif ($record->type == 1) { - $deductions += $record->amount; - } - } - - return $allowances . "," . $deductions; - } else { - return "0,0"; - } - } - - public function remove_allowance_deduction($id) { - $record = PayrollAllowancesOrDeduction::find($id); - $member_id = $record->member_id; - - try { - $record->delete(); - flash("Record has been removed")->success(); - } catch (\Exception $exception) { - flash("Unable to remove record. Please try again")->error(); - } - - return redirect('/payroll/allowances_or_deductions/' . $member_id); - } - - public function print_staff_details($id) { - $member = Payroll::where(['id' => $id])->first(); - - $payments = PayrollPayments::where(['member_id' => $id]) - ->orderBy('created_at', 'desc') - ->limit(50)->get(); - - $allow_deductions = PayrollAllowancesOrDeduction::where('member_id', $id) - ->orderBy('created_at', 'desc') - ->limit(50)->get(); - - $positions = StaffPositions::pluck('name', 'id'); - $departments = Department::pluck('name', 'id'); - $banks = ChartOfAccount::where('type', 4)->pluck('name', 'id'); - $payroll_categories = PayrollCategory::pluck('name', 'id'); - $salary_scales = PayrollSalaryScale::pluck('name', 'id'); - - $data = [ - 'member' => $member, - 'payments' => $payments, - 'allow_deductions' => $allow_deductions, - 'positions' => $positions, - 'departments' => $departments, - 'banks' => $banks, - 'payroll_categories' => $payroll_categories, - 'salary_scales' => $salary_scales, - ]; - - $pdf = SnappyPDF::loadView("payroll::payroll.print_staff_details", $data) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Printed On ' . date('d-M-Y h:ia') . ''); - - return $pdf->inline('Patient Billing.pdf'); - } - - public function print_allowances_or_deductions($id) { - $member = Payroll::find($id); - $income_accounts = ChartOfAccount::where('type', 1)->pluck('name', 'id'); - - $records = PayrollAllowancesOrDeduction::where('member_id', $id)->orderBy('created_at', 'desc')->get(); - - $data = [ - 'member' => $member, - 'income_accounts' => $income_accounts, - 'records' => $records, - ]; - - $pdf = SnappyPDF::loadView("payroll::payroll.print_allowances_or_deductions", $data) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Printed On ' . date('d-M-Y h:ia') . ''); - - return $pdf->inline('Allowances Deductions.pdf'); - } -} diff --git a/docker/statistics/Modules/Payroll/Http/Controllers/PayrollDefaultsController.php b/docker/statistics/Modules/Payroll/Http/Controllers/PayrollDefaultsController.php deleted file mode 100755 index ca5e5944..00000000 --- a/docker/statistics/Modules/Payroll/Http/Controllers/PayrollDefaultsController.php +++ /dev/null @@ -1,68 +0,0 @@ -middleware('auth'); - $this->middleware('permission:nssf-rate-edit', ['only' => ['edit_nssf_rate', 'save_nssf_rate']]); - $this->middleware('permission:tax-rate-edit', ['only' => ['edit_tax_rate', 'save_tax_rate']]); - } - - // edit the nssf rate - public function edit_nssf_rate(){ - $nssf_rate = PayrollDefault::where(['id' => 1])->first(); - - return view('payroll::payroll_defaults.edit_nssf_rate', compact('nssf_rate')); - } - - // save the nssf rate - public function save_nssf_rate(Request $request){ - - $nssf_rate = PayrollDefault::find(1); - - $nssf_rate->nssf_rate = $request->nssf_rate; - $nssf_rate->updated_by = Auth::user()->id; - - try { - $nssf_rate->save(); - flash("Social security rate has been edited successfully.")->success(); - return redirect('/payroll_defaults/edit_nssf_rate'); - } catch (QueryException $e) { - flash('An error occurred. Please try again later')->error(); - return back()->withInput(); - } - } - - public function edit_tax_rate() { - $tax_rate_record = PayrollDefault::where(['id' => 1])->first(); - - return view('payroll::payroll_defaults.edit_tax_rate', compact('tax_rate_record')); - } - - public function save_tax_rate(Request $request) { - $tax_rate_record = PayrollDefault::find(1); - - $tax_rate_record->tax_from = json_encode($request->from); - $tax_rate_record->tax_to = json_encode($request->to); - $tax_rate_record->tax_rate = json_encode($request->tax_rate); - $tax_rate_record->updated_by = Auth::user()->id; - - try { - $tax_rate_record->save(); - flash("Tax rate has been edited successfully.")->success(); - return redirect('/payroll_defaults/edit_tax_rate'); - } catch (QueryException $e) { - flash('An error occurred. Please try again later')->error(); - return back()->withInput(); - } - } -} diff --git a/docker/statistics/Modules/Payroll/Http/Controllers/PayrollSalaryScaleController.php b/docker/statistics/Modules/Payroll/Http/Controllers/PayrollSalaryScaleController.php deleted file mode 100644 index 2246b09b..00000000 --- a/docker/statistics/Modules/Payroll/Http/Controllers/PayrollSalaryScaleController.php +++ /dev/null @@ -1,139 +0,0 @@ -paginate(50); - - return view('payroll::payroll_salary_scales.index', compact('scales')); - } - - /** - * Show the form for creating a new resource. - */ - public function create() { - return view('payroll::payroll_salary_scales.create'); - } - - /** - * Store a newly created resource in storage. - */ - public function store(Request $request) { - //validation passed - $scale = new PayrollSalaryScale; - $logged_in_user_id = Auth::user()->id; - - $scale->name = $request->name; - $scale->created_by = $logged_in_user_id; - $scale->updated_by = $logged_in_user_id; - - try { - $scale->save(); - - flash("Salary Scale has been saved")->success(); - return redirect("/payroll_salary_scales/"); - } catch (QueryException $e) { - flash("An error occurred. Please try again later")->error(); - return back()->withInput(); - } - } - - /** - * Display the specified resource. - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - */ - public function edit($id) { - $scale = PayrollSalaryScale::where(['id' => $id])->first(); - - if (!$scale) { - flash()->error("Salary Scale not found"); - return redirect('/payroll_salary_scales/'); - } else { - return view('payroll::payroll_salary_scales.edit', compact('scale')); - } - } - - /** - * Update the specified resource in storage. - */ - public function update(Request $request, $id) { - request()->validate([ - 'name' => 'required' - ]); - - //validation passed - $scale = PayrollSalaryScale::find($id); - $scale->name = $request->name; - - try { - $scale->save(); - flash("Salary Scale has been updated")->success(); - return redirect("/payroll_salary_scales/"); - } catch (QueryException $e) { - flash("An error occurred. Please try again later")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - */ - public function destroy($id) { - $scale = PayrollSalaryScale::find($id); - - if ($scale->delete()) { - flash("Salary Scale has been deleted.")->success(); - } else { - flash('An error occurred. Please again later.'); - } - - return redirect('/payroll_salary_scales/'); - } - - /** - * Display a listing of the inactive resource(s). - */ - public function inactive() { - $scales = PayrollSalaryScale::onlyTrashed() - ->orderBy('name') - ->paginate(50); - - if (count($scales) < 1) { - flash()->error("There is no inactive salary scale"); - return redirect('/payroll_salary_scales/'); - } else { - return view('payroll::payroll_salary_scales.inactive', compact('scales')); - } - } - - /** - * Activate the specified resource in storage. - */ - public function activate($id) { - $scale = PayrollSalaryScale::withTrashed()->find($id); - - if($scale->restore()){ - flash("Salary Scale has been activated.")->success(); - return redirect('/payroll_salary_scales/inactive'); - } else { - flash('An error occurred. Please again later.'); - return redirect('/payroll_salary_scales/'); - } - } -} diff --git a/docker/statistics/Modules/Payroll/Http/Controllers/PayrollScheduleController.php b/docker/statistics/Modules/Payroll/Http/Controllers/PayrollScheduleController.php deleted file mode 100644 index 7d3ad223..00000000 --- a/docker/statistics/Modules/Payroll/Http/Controllers/PayrollScheduleController.php +++ /dev/null @@ -1,205 +0,0 @@ -payroll_category)) { - if ($request->payroll_category == 0) { - $employees = DB::table('payrolls') - ->join('patients', 'payrolls.patient_id', '=', 'patients.id') - ->get(['payrolls.*', 'patients.first_name', 'patients.last_name', 'patients.number']); - } else { - $employees = DB::table('payrolls') - ->join('patients', 'payrolls.patient_id', '=', 'patients.id') - ->where('payroll_category', $request->payroll_category) - ->get(['payrolls.*', 'patients.first_name', 'patients.last_name', 'patients.number']); - } - } - - $months = array( - '-select-', 'January' => 'January', 'February' => 'February', 'March' => 'March', - 'April' => 'April', 'May' => 'May', 'June' => 'June', 'July' => 'July', - 'August' => 'August', 'September' => 'September', 'October' => 'October', - 'November' => 'November', 'December' => 'December' - ); - - $years = ['' => '-select-']; - - $end_year = date('Y'); - $start_year = $end_year - 10; - - // create array with all the years in between - $years_range = range($end_year, $start_year); - - // add to years array to be returned to view - foreach ($years_range as $year) { - $years[$year] = $year; - } - - $payroll_categories = PayrollCategory::pluck('name', 'id')->toArray(); - $payroll_categories = [0 => 'All Categories'] + $payroll_categories; - - $expense_accounts = ChartOfAccount::where('type', 2)->pluck('name', 'id')->toArray(); - $expense_accounts = ['' => '- select -'] + $expense_accounts; - - $payable_accounts = ChartOfAccount::whereIn('type', [6, 9])->pluck('name', 'id')->toArray(); - $payable_accounts = ['' => '- select -'] + $payable_accounts; - - return view('payroll::payroll_schedule.create', compact('employees', 'years', 'months', 'payroll_categories', 'expense_accounts', 'payable_accounts')); - } - - public function save_schedule(Request $request) { - request()->validate([ - 'name' => 'required', - 'pay_year' => 'required', - 'pay_month' => 'required', - 'due_date' => 'required', - 'employee_id' => 'required' - ]); - - $logged_in_user_id = Auth::user()->id; - - $basic_pay_arr = $request->basic_pay; - $allowance_arr = $request->allowance; - $gross_pay_arr = $request->gross_pay; - $tax_arr = $request->tax; - $social_security_arr = $request->social_security; - $deductions_arr = $request->deductions; - $total_deductions_arr = $request->total_deductions; - $net_pay_arr = $request->net_pay; - $employee_id_arr = $request->employee_id; - $payroll_category_arr = $request->payroll_category; - $allow_deduct_ids_arr = array_merge($request->allowances_arr, $request->deductions_arr); - - foreach ($allow_deduct_ids_arr as $records) { - if ($records) { - $exploded_records = explode(",", $records); - foreach ($exploded_records as $record) { - $allow_deduct = DB::table('payroll_allowances_or_deductions')->where('id', $record)->first(); - - $are_dates_past = !$allow_deduct->recurring_final_date || Carbon::today()->isAfter(Carbon::createFromFormat('Y-m-d', $allow_deduct->recurring_final_date)); - - if ($allow_deduct && ($allow_deduct->recurring == 0 || $are_dates_past)) { - DB::table('payroll_allowances_or_deductions')->where('id', $record)->update(['billed' => 1]); - } - } - } - } - - $schedule = new PayrollSchedule(); - - $schedule->name = $request->name; - $schedule->pay_year = $request->pay_year; - $schedule->pay_month = $request->pay_month; - $schedule->salaries_expense_account = $request->salaries_expense_account; - $schedule->salaries_payable_account = $request->salaries_payable_account; - $schedule->tax_expense_account = $request->tax_expense_account; - $schedule->tax_payable_account = $request->tax_payable_account; - $schedule->due_date = Carbon::createFromFormat('d/m/Y', $request->due_date)->toDateString(); - $schedule->social_security_expense_account = $request->social_security_expense_account; - $schedule->social_security_payable_account = $request->social_security_payable_account; - $schedule->memo = $request->memo; - $schedule->employee_id = implode(',', $employee_id_arr); - $schedule->payroll_category = implode(',', $payroll_category_arr); - $schedule->basic_pay = implode(',', $basic_pay_arr); - $schedule->allowances = implode(',', $allowance_arr); - $schedule->gross_pay = implode(',', $gross_pay_arr); - $schedule->tax_amount = implode(',', $tax_arr); - $schedule->social_security_amount = implode(',', $social_security_arr); - $schedule->deductions = implode(',', $deductions_arr); - $schedule->total_deductions = implode(',', $total_deductions_arr); - $schedule->net_pay = implode(',', $net_pay_arr); - $schedule->created_by = $logged_in_user_id; - $schedule->updated_by = $logged_in_user_id; - - try { - $schedule->save(); - flash("Payroll Schedule has been saved")->success(); - return redirect("/payroll_schedules/index"); - } catch (QueryException $e) { - flash('An error occurred. Please try again later')->error(); - return back()->withInput(); - } - } - - public function get_allowance_deductions_details(Request $request) { - $items = explode(',', $request->ids); - $records = PayrollAllowancesOrDeduction::whereIn('id', $items)->get(); - $html = ''; - - foreach ($records as $record) { - $html .= ""; - - if($record->type == 0) { - $html .= '' . __('payroll.allowance') . ''; - } else { - $html .= '' . __('payroll.deduction') . ''; - } - - $html .= '' . ugandan_shillings($record->amount) . ''; - $html .= '' . ($record->recurring == 0 ? 'No' : 'Yes') . ''; - $html .= '' . ($record->recurring_final_date ? streamline_date($record->recurring_final_date) : 'N/A') . ''; - $html .= '' . $record->reason . ''; - $html .= '' . get_full_name($record->created_by, 'id', 'first_name', 'last_name', 'users') . ''; - $html .= '' . streamline_date_time($record->created_at) . ''; - - $html .= ""; - } - - return $html; - } - - public function details($id) { - $schedule = PayrollSchedule::find($id); - - $payroll_categories = PayrollCategory::pluck('name', 'id')->toArray(); - $expense_accounts = ChartOfAccount::where('type', 2)->pluck('name', 'id')->toArray(); - $payable_accounts = ChartOfAccount::whereIn('type', [6, 9])->pluck('name', 'id')->toArray(); - - return view('payroll::payroll_schedule.details', compact('schedule', 'payroll_categories', 'payable_accounts', 'expense_accounts')); - } - - public function print_details($id) { - $schedule = PayrollSchedule::find($id); - - $payroll_categories = PayrollCategory::pluck('name', 'id')->toArray(); - $expense_accounts = ChartOfAccount::where('type', 2)->pluck('name', 'id')->toArray(); - $payable_accounts = ChartOfAccount::whereIn('type', [6, 9])->pluck('name', 'id')->toArray(); - - $data = [ - 'schedule' => $schedule, - 'payroll_categories' => $payroll_categories, - 'expense_accounts' => $expense_accounts, - 'payable_accounts' => $payable_accounts, - ]; - - $pdf = SnappyPDF::loadView("payroll_schedule.print_details", $data) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Printed On ' . date('d-M-Y h:ia') . ''); - - return $pdf->inline('Payroll Schedule Details.pdf'); - } -} diff --git a/docker/statistics/Modules/Payroll/Providers/PayrollServiceProvider.php b/docker/statistics/Modules/Payroll/Providers/PayrollServiceProvider.php deleted file mode 100644 index c4ce8dd4..00000000 --- a/docker/statistics/Modules/Payroll/Providers/PayrollServiceProvider.php +++ /dev/null @@ -1,113 +0,0 @@ -registerTranslations(); - $this->registerConfig(); - $this->registerViews(); - $this->loadMigrationsFrom(module_path($this->moduleName, 'Database/Migrations')); - } - - /** - * Register the service provider. - * - * @return void - */ - public function register() - { - $this->app->register(RouteServiceProvider::class); - } - - /** - * Register config. - * - * @return void - */ - protected function registerConfig() - { - $this->publishes([ - module_path($this->moduleName, 'Config/config.php') => config_path($this->moduleNameLower . '.php'), - ], 'config'); - $this->mergeConfigFrom( - module_path($this->moduleName, 'Config/config.php'), $this->moduleNameLower - ); - } - - /** - * Register views. - * - * @return void - */ - public function registerViews() - { - $viewPath = resource_path('views/modules/' . $this->moduleNameLower); - - $sourcePath = module_path($this->moduleName, 'Resources/views'); - - $this->publishes([ - $sourcePath => $viewPath - ], ['views', $this->moduleNameLower . '-module-views']); - - $this->loadViewsFrom(array_merge($this->getPublishableViewPaths(), [$sourcePath]), $this->moduleNameLower); - } - - /** - * Register translations. - * - * @return void - */ - public function registerTranslations() - { - $langPath = resource_path('lang/modules/' . $this->moduleNameLower); - - if (is_dir($langPath)) { - $this->loadTranslationsFrom($langPath, $this->moduleNameLower); - $this->loadJsonTranslationsFrom($langPath); - } else { - $this->loadTranslationsFrom(module_path($this->moduleName, 'Resources/lang'), $this->moduleNameLower); - $this->loadJsonTranslationsFrom(module_path($this->moduleName, 'Resources/lang')); - } - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides() - { - return []; - } - - private function getPublishableViewPaths(): array - { - $paths = []; - foreach (\Config::get('view.paths') as $path) { - if (is_dir($path . '/modules/' . $this->moduleNameLower)) { - $paths[] = $path . '/modules/' . $this->moduleNameLower; - } - } - return $paths; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/Payroll/Providers/RouteServiceProvider.php b/docker/statistics/Modules/Payroll/Providers/RouteServiceProvider.php deleted file mode 100755 index 13b4a24e..00000000 --- a/docker/statistics/Modules/Payroll/Providers/RouteServiceProvider.php +++ /dev/null @@ -1,68 +0,0 @@ -mapApiRoutes(); - $this->mapWebRoutes(); - } - - /** - * Define the "web" routes for the application. - * - * These routes all receive session state, CSRF protection, etc. - * - * @return void - */ - protected function mapWebRoutes() - { - Route::middleware('web') - ->namespace($this->namespace) - ->group(module_path('Payroll', '/Routes/web.php')); - } - - /** - * Define the "api" routes for the application. - * - * These routes are typically stateless. - * - * @return void - */ - protected function mapApiRoutes() - { - Route::prefix('api') - ->middleware('api') - ->namespace($this->namespace) - ->group(module_path('Payroll', '/Routes/api.php')); - } -} diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll/add_allowances_or_deductions.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll/add_allowances_or_deductions.blade.php deleted file mode 100755 index fa6e97a8..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll/add_allowances_or_deductions.blade.php +++ /dev/null @@ -1,140 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('payroll.allowances_deductions') }}

    -
    - -
    - - @include('payroll::payroll.menu') - -
    - @php $patient = \Illuminate\Support\Facades\DB::table('patients')->where('id', $member->patient_id)->first(); @endphp - -

    {{ __('payroll.personal_information') }}

    - - - - - - - - - - @php - $contract_periods = json_decode($member->contract_period, true); - $contract_periods = end($contract_periods); - @endphp - - - - - -
    {{ __('payroll.staff_member') }}{{ $patient->first_name }} {{ $patient->last_name }}{{ __('payroll.staff_patient_number') }}{{ $patient->number }}{{ __('payroll.staff_contact') }}{{ $patient->phone }}{{ __('payroll.contract') }}{{ [1 => 'Permanent', 2 => 'Probation', 3 => 'Contract'][$member->contract] ?? 'N/A' }}{{ __('payroll.contract_expiry') }}{{ streamline_date($contract_periods[1]) }}
    - -
    - - {{ Form::open(['route' => 'payroll.save_allowances_or_deductions']) }} - - {{ Form::hidden('member_id', $member->id) }} - -
    -
    -
    - {{ Form::label('type', __('payroll.type')) }} - {{ Form::select('type', $type, '', ['class' => 'form-control col-sm-12 compulsory','required', 'onclick' => 'show_income_account(this.value)']) }} -
    - -
    - {{ Form::label('amount', __('payroll.amount')) }} - {{ Form::number('amount','',['class' => 'compulsory form-control', 'required']) }} -
    - - -
    -
    -
    - {{ Form::label('recurring', __('payroll.is_recurring')) }} -
    - {{ Form::radio('recurring', 1, false, ["required", 'id' => 'recurring_yes','onclick' => 'show_period()']) }} {{ __('payroll.yes') }}    - {{ Form::radio('recurring', 0, true, ["required", 'id' => 'recurring_no', 'onclick' => 'hide_period()']) }} {{ __('payroll.no') }} -
    - - - - -
    -
    - -
    - {{ Form::label('reason',__('payroll.description')) }} - {{ Form::textarea('reason','',['class' => 'form-control compulsory', 'required']) }} -
    - - {{ Form::button(__('payroll.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('payroll.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll/allowance_or_deductions_receipt.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll/allowance_or_deductions_receipt.blade.php deleted file mode 100755 index 7ed63617..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll/allowance_or_deductions_receipt.blade.php +++ /dev/null @@ -1,133 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('payroll.allowances_deductions') }} {{ __('payroll.receipt') }}

    -
    - -
    - -
    -
    -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - {{ __('payroll.email') }}: {{ $hospital_information->email }}
    - {{ __('payroll.cashier') }}: {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - {{ __('payroll.date') }}: {{ streamline_date_time_short($records->created_at) }}
    - {{ __('payroll.receipt_number') }} : {{ $records->receipt_number }}
    - @php $patient_id = get_name($records->member_id, 'id', 'patient_id', 'payrolls'); @endphp - {{ __('payroll.staff_name') }} : {{ get_full_name($patient_id, 'id', 'first_name', 'last_name', 'patients') }}
    -

    - -
    - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('payroll.type') }} - - @if($records->type == 0) - {{ __('payroll.allowance') }} - @else - {{ __('payroll.deduction') }} - @endif - -
    {{ __('payroll.period') }}{{ $records->month }} / {{ $records->year }}
    {{ __('payroll.amount') }}{{ ugandan_shillings($records->amount) }}
    {{ __('payroll.reason') }}{{ $records->reason }}
    -
    -
    -
    -
    - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll/allowances_or_deductions.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll/allowances_or_deductions.blade.php deleted file mode 100755 index 2d7b3d48..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll/allowances_or_deductions.blade.php +++ /dev/null @@ -1,148 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('payroll.allowances_deductions') }}

    -
    - -
    - - @include('payroll::payroll.menu') - -
    - @php $patient = \Illuminate\Support\Facades\DB::table('patients')->where('id', $member->patient_id)->first(); @endphp - - @include('flash::message') - -

    {{ __('payroll.personal_information') }}

    - - - - - - - - - - @php - $contract_periods = json_decode($member->contract_period, true); - $contract_periods = end($contract_periods); - $total_deductions = 0; - $total_allowances = 0; - @endphp - - - - - -
    {{ __('payroll.staff_member') }}{{ $patient->first_name }} {{ $patient->last_name }}{{ __('payroll.staff_patient_number') }}{{ $patient->number }}{{ __('payroll.staff_contact') }}{{ $patient->phone }}{{ __('payroll.contract') }}{{ [1 => 'Permanent', 2 => 'Probation', 3 => 'Contract'][$member->contract] ?? 'N/A' }}{{ __('payroll.contract_expiry') }}{{ streamline_date($contract_periods[1]) }}
    - -
    -

    {{ __('payroll.allowances_deductions_details') }}

    - -
    -
    - - - - - - - - - - - - - - - - - - @if(count($records) > 0) - @foreach($records as $record) - - - - - - - - - - - - - - @endforeach - @else - - - - @endif - -
    {{ __('payroll.type') }}{{ __('payroll.amount') }}{{ __('payroll.income_account') }}{{ __('payroll.is_recurring') }}{{ __('payroll.recurring_period') }}{{ __('payroll.recurring_final_date') }}{{ __('payroll.reason') }}{{ __('payroll.added_to_payslip') }}{{ __('payroll.created_by') }}{{ __('payroll.created_on') }}
    - @if($record->type == 0) - @php $total_allowances += $record->amount; @endphp - {{ __('payroll.allowance') }} - @else - @php $total_deductions += $record->amount; @endphp - {{ __('payroll.deduction') }} - @endif - {{ ugandan_shillings($record->amount) }}{{ $income_accounts[$record->income_account_id] ?? 'N/A' }}{{ [0 => 'No', 1 => 'Yes'][$record->recurring] ?? 'N/A' }}{{ [0 => 'End of Contract', 1 => 'Defined Date'][$record->recurring_period] ?? 'N/A' }}{{ $record->recurring_final_date ? streamline_date($record->recurring_final_date) : 'N/A' }}{{ $record->reason }} - @if($record->billed == 0) - {{ __('payroll.no') }} - @else - {{ __('payroll.yes') }} - @endif - {{ get_full_name($record->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date_time($record->created_at) }}Remove
    {{ __('payroll.no_records_available') }}
    -
    - - - - - - - - -
    Total Allowances{{ ugandan_shillings($total_allowances) }}Total Deductions{{ ugandan_shillings($total_deductions) }}
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll/bulk_create.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll/bulk_create.blade.php deleted file mode 100755 index ed92e4f9..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll/bulk_create.blade.php +++ /dev/null @@ -1,253 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('payroll.create_multiple_employees') }}

    -
    - -
    - - @include('payroll::payroll.menu') - -
    - @include('flash::message') - - {{ Form::open(['route' => ['payroll.bulk_store']]) }} - -
    - - - - - - - - - - - - - - - - - - - - - @php - $option_positions = ""; - foreach ($positions as $key => $value){ - $option_positions .= ""; - } - - $option_departments = ""; - foreach ($departments as $key => $value){ - $option_departments .= ""; - } - - $option_contracts = ""; - foreach ($contracts as $key => $value){ - $option_contracts .= ""; - } - - $option_banks = ""; - foreach ($banks as $key => $value){ - $option_banks .= ""; - } - - $option_payroll_categories = ""; - foreach ($payroll_categories as $key => $value){ - $option_payroll_categories .= ""; - } - - $option_salary_scales = ""; - foreach ($salary_scales as $key => $value){ - $option_salary_scales .= ""; - } - @endphp - - - - - - - - - - - - - - - - - -
    {{ __('payroll.staff_member') }}{{ __('payroll.position') }}{{ __('payroll.department') }}{{ __('payroll.payroll_categories') }}{{ __('payroll.social_security_number') }}{{ __('payroll.tin_number') }}{{ __('payroll.salary_scale') }}{{ __('payroll.contract_type') }}{{ __('payroll.contract_start') }}{{ __('payroll.contract_end') }}{{ __('payroll.bank') }}{{ __('payroll.bank_account_number') }}{{ __('payroll.basic_pay') }}
    - - - - - - - - - - - - - - - - - - - - - - -

    - - - -

    - - -
    -
    - - {{ __('triage.add_row') }} - -
    - - {{ Form::button(__('payroll.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('payroll.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    - @endsection - - @push('scripts') - - - - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll/bulk_edit.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll/bulk_edit.blade.php deleted file mode 100755 index 3e171af6..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll/bulk_edit.blade.php +++ /dev/null @@ -1,157 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Edit multiple payrolls

    -
    -
    - -
    -
    - - - @include('flash::message') - @include ('errors.list') - -
    -
    -
    - {{ Form::model($payrolls, ['method' => 'ANY', 'route' => ['payroll.bulk_update']]) }} - -
    - - - - - - - - - - - - - - - - - - - - @foreach($payrolls as $payroll) - {{ Form::hidden('id[]', $payroll->id) }} - - - - - - - - - - @php - $contract_periods = json_decode($payroll->contract_period, true); - $contract_periods = end($contract_periods); - @endphp - - - - - - - @endforeach - -
    {{ __('payroll.staff_member') }}{{ __('payroll.position') }}{{ __('payroll.department') }}{{ __('payroll.payroll_categories') }}{{ __('payroll.social_security_number') }}{{ __('payroll.tin_number') }}{{ __('payroll.salary_scale') }}{{ __('payroll.contract_type') }}{{ __('payroll.contract_start') }}{{ __('payroll.contract_end') }}{{ __('payroll.bank') }}{{ __('payroll.bank_account_number') }}{{ __('payroll.basic_pay') }}
    {{ get_full_name($payroll->patient_id, 'id', 'first_name', 'last_name', 'patients') }} - {{ Form::select('position[]', $positions, $payroll->position, ['class' => 'form-control compulsory', 'required']) }} - - {{ Form::select('department[]', $departments, $payroll->department, ['class' => 'form-control compulsory', 'required']) }} - - {{ Form::select('payroll_category[]', $payroll_categories, $payroll->payroll_category, ['class' => 'form-control compulsory', 'required']) }} - - - - - - {{ Form::select('salary_scale[]', $salary_scales, $payroll->salary_scale, ['class' => 'form-control compulsory', 'required']) }} - - {{ Form::select('contract[]', $contracts, $payroll->contract, ['class' => 'form-control compulsory', 'required']) }} - - {{ Form::select('payroll_bank_id[]', $banks, $payroll->payroll_bank_id, ['class' => 'form-control compulsory', 'required']) }} - - - - - -

    - - - -

    - - -
    -
    - -
    - - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'onclick'=>'return confirm("All unselected records will not be edited. Continue?")']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll/create.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll/create.blade.php deleted file mode 100755 index 757676a6..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll/create.blade.php +++ /dev/null @@ -1,208 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('payroll.add_payroll') }}

    -
    - -
    - - @include('payroll::payroll.menu') - -
    - - @include('flash::message') - - {{ Form::open(['route' => 'payroll.store', 'data-toggle' => 'validator']) }} - - {{ Form::hidden('patient_id', 0, ['id' => 'patient_id']) }} - -

    {{ __('payroll.personal_information') }}

    - -
    -
    -
    - -
    -
    - -
    - -
    - -

    {{ __('payroll.payroll_information') }}

    - -
    -
    -
    - {{ Form::label('nssf_number',__('payroll.social_security_number')) }} - {{ Form::text('nssf_number','',['class' => 'form-control']) }} -
    - -
    - {{ Form::label('tin_number',__('payroll.tin_number')) }} - {{ Form::text('tin_number','',['class' => 'form-control']) }} -
    - -
    - {{ Form::label('salary_scale',__('payroll.salary_scale')) }} - {{ Form::select('salary_scale',$salary_scales,'',['class' => 'form-control']) }} -
    - -
    - {{ Form::label('contract',__('payroll.contract_type')) }} - {{ Form::select('contract',['- select -', 1 => 'Permanent', 2 => 'Probation', 3 => 'Contract'],'',['class' => 'form-control']) }} -
    - -
    - {{ Form::label('contract_start_date', __('payroll.contract_start')) }} - {{ Form::text('contract_start_date','',['class' => 'form-control','readonly','id'=>'contract_start_date']) }} -
    - -
    - {{ Form::label('contract_end_date', __('payroll.contract_end')) }} - {{ Form::text('contract_end_date','',['class' => 'form-control','readonly','id'=>'contract_end_date']) }} -
    - -
    - {{ Form::label('payroll_bank_id',__('payroll.bank')) }} - {{ Form::select('payroll_bank_id',$banks,'',['class' => 'form-control compulsory','required']) }} -
    - -
    - {{ Form::label('bank_account_number',__('payroll.bank_account_number')) }} - {{ Form::number('bank_account_number','',['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    -
    - {{ Form::label('basic_pay',__('payroll.basic_pay')) }} - {{ Form::number('basic_pay','',['class' => 'form-control compulsory', 'required', 'id' => 'basic_pay']) }} -
    - -
    - {{ Form::label('social_security_amount',__('payroll.social_security_amount')) }} - {{ Form::number('social_security_amount',0,['class' => 'form-control', 'id' => 'social_security_amount']) }} -
    - -
    - {{ Form::label('tax_amount',__('payroll.tax_amount')) }} - {{ Form::number('tax_amount',0,['class' => 'form-control', 'id' => 'tax_amount']) }} -
    - -
    - {{ Form::label('position',__('payroll.position')) }} - {{ Form::select('position',$positions,'',['class' => 'form-control compulsory','required']) }} -
    - -
    - {{ Form::label('department',__('payroll.department')) }} - {{ Form::select('department',$departments,'',['class' => 'form-control compulsory','required']) }} -
    - -
    - {{ Form::label('payroll_category',__('payroll.payroll_categories')) }} - {{ Form::select('payroll_category',$payroll_categories,'',['class' => 'form-control compulsory','required']) }} -
    -
    -
    - - {{ Form::button(__('payroll.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('payroll.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll/create_bulk_payment.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll/create_bulk_payment.blade.php deleted file mode 100755 index c4649d52..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll/create_bulk_payment.blade.php +++ /dev/null @@ -1,294 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') -
    -
    -

    Create multiple payrolls

    -
    -
    - -
    -
    - - - @include('flash::message') - -
    -
    -
    -
    -

    Filter members by bank

    - {{ Form::open(['route' => 'payroll.create_bulk_payment']) }} - -
    - {{ Form::label('bank_id', 'Bank') }} - {{ Form::select('bank_id', $banks, '', ['class' => 'form-control']) }} -
    - - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - - {{ Form::close() }} -
    -
    -
    -
    - -
    -
    -
    - {{ Form::open(['route' => ['payroll.store_bulk_payment']]) }} - -
    -
    -
    - {{ Form::label('year','Payment Year') }} - {{ Form::select('year',$years,'',['class' => 'form-control compulsory', 'required', 'id' => 'year']) }} -
    -
    -
    -
    -
    - {{ Form::label('month','Payment Month') }} - {{ Form::select('month',$months,'',['class' => 'form-control compulsory', 'required', 'id' => 'month']) }} -
    -
    -
    -
    - -
    - - - - - - - - - - - - - - - - - - - @php - // for the counter - $i = 0; - @endphp - @foreach($payrolls as $payroll) - - - - - - - - - - - - - - - @php - // increment counter - $i++; - @endphp - @endforeach - -
    Member NameMember PositionMember DepartmentDeductionsNSSF PaymentPAYE PaymentBasic PayAllowancesTotal PayTotal DeductionsNet Pay
    - {{ Form::checkbox('index[]', $i, null, ['class' => 'edit_id']) }} - {{ Form::hidden('member_id[]', $payroll->id, ['id' => 'member_id_' . $i]) }} - {{ Form::hidden('bank_id[]', $payroll->payroll_bank_id) }} - - {{ $payroll->first_name }} {{ $payroll->last_name }} - - {{ $positions[$payroll->position] }} - - {{ $departments[$payroll->department] }} - - {{ Form::number('deductions[]','',['class' => 'form-control compulsory deduction_changes_' . $i, 'required', 'readonly', 'id' => 'deductions_' . $i]) }} - - {{ Form::number('nssf_payment[]','',['class' => 'form-control compulsory deduction_changes_' . $i, 'required', 'readonly', 'id' => 'nssf_payment_' . $i]) }} - - {{ Form::number('paye_payment[]','',['class' => 'form-control compulsory deduction_changes_' . $i, 'required', 'readonly', 'id' => 'paye_payment_' . $i]) }} - - {{ Form::number('basic_pay[]',$payroll->basic_pay,['class' => 'form-control compulsory allowance_changes_' . $i, 'required', 'readonly', 'id' => 'basic_pay_' . $i]) }} - - {{ Form::number('advances[]','',['class' => 'form-control compulsory allowance_changes_' . $i, 'required', 'readonly', 'id' => 'advances_' . $i]) }} - - {{ Form::number('gross_pay[]','',['class' => 'form-control compulsory', 'required', 'readonly', 'id' => 'gross_pay_' . $i]) }} - - {{ Form::number('total_deductions[]','',['class' => 'form-control compulsory', 'required', 'readonly', 'id' => 'total_deductions_' . $i]) }} - - {{ Form::number('net_pay[]','',['class' => 'form-control compulsory', 'required', 'readonly', 'id' => 'net_pay_' . $i]) }} -
    -
    - -
    - - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'onclick'=>'return confirm("Please make sure all compulsory fields in red have been filled or the record(s) will be disregarded")']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll/edit.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll/edit.blade.php deleted file mode 100755 index 7c6ee3c0..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll/edit.blade.php +++ /dev/null @@ -1,177 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('payroll.edit_employee') }}

    -
    - -
    - - @include('payroll::payroll.menu') - -
    - @include('flash::message') - - {{ Form::model($payroll, ['method' => 'PUT', 'route' => ['payroll.update',$payroll], 'data-toggle' => 'validator']) }} - @php $patient = \Illuminate\Support\Facades\DB::table('patients')->where('id', $payroll->patient_id)->first(); @endphp - -

    {{ __('payroll.personal_information') }}

    - - - - - - - - - - -
    {{ __('payroll.staff_member') }}{{ $patient->first_name }} {{ $patient->last_name }}{{ __('payroll.staff_patient_number') }}{{ $patient->number }}{{ __('payroll.staff_contact') }}{{ $patient->phone }}
    - -
    - -

    {{ __('payroll.payroll_information') }}

    - -
    -
    -
    - {{ Form::label('nssf_number',__('payroll.social_security_number')) }} - {{ Form::text('nssf_number',$payroll->nssf_number,['class' => 'form-control']) }} -
    - -
    - {{ Form::label('tin_number',__('payroll.tin_number')) }} - {{ Form::text('tin_number',$payroll->tin_number,['class' => 'form-control']) }} -
    - -
    - {{ Form::label('salary_scale',__('payroll.salary_scale')) }} - {{ Form::select('salary_scale',$salary_scales,$payroll->salary_scale,['class' => 'form-control']) }} -
    - -
    - {{ Form::label('contract',__('payroll.contract_type')) }} - {{ Form::select('contract',['- select -', 1 => 'Permanent', 2 => 'Probation', 3 => 'Contract'],$payroll->contract,['class' => 'form-control']) }} -
    - - @php - $contract_periods = json_decode($payroll->contract_period, true); - $contract_periods = end($contract_periods); - @endphp - -
    - {{ Form::label('contract_start_date', __('payroll.contract_start')) }} - {{ Form::text('contract_start_date',date_format(date_create($contract_periods[0]), 'd/m/Y'),['class' => 'form-control','readonly','id'=>'contract_start_date']) }} -
    - -
    - {{ Form::label('contract_end_date', __('payroll.contract_end')) }} - {{ Form::text('contract_end_date',date_format(date_create($contract_periods[1]), 'd/m/Y'),['class' => 'form-control','readonly','id'=>'contract_end_date']) }} -
    - -
    - {{ Form::label('payroll_bank_id',__('payroll.bank')) }} - {{ Form::select('payroll_bank_id',$banks,$payroll->payroll_bank_id,['class' => 'form-control compulsory','required']) }} -
    - -
    - {{ Form::label('bank_account_number',__('payroll.bank_account_number')) }} - {{ Form::number('bank_account_number',$payroll->bank_account_number,['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    -
    - {{ Form::label('basic_pay',__('payroll.basic_pay')) }} - {{ Form::number('basic_pay',$payroll->basic_pay,['class' => 'form-control compulsory', 'required', 'id' => 'basic_pay']) }} -
    - -
    - {{ Form::label('social_security_amount',__('payroll.social_security_amount')) }} - {{ Form::number('social_security_amount',$payroll->social_security_amount,['class' => 'form-control', 'id' => 'social_security_amount']) }} -
    - -
    - {{ Form::label('tax_amount',__('payroll.tax_amount')) }} - {{ Form::number('tax_amount',$payroll->tax_amount,['class' => 'form-control', 'id' => 'tax_amount']) }} -
    - -
    - {{ Form::label('position',__('payroll.position')) }} - {{ Form::select('position',$positions,$payroll->position,['class' => 'form-control compulsory','required']) }} -
    - -
    - {{ Form::label('department',__('payroll.department')) }} - {{ Form::select('department',$departments,$payroll->department,['class' => 'form-control compulsory','required']) }} -
    - -
    - {{ Form::label('payroll_category',__('payroll.payroll_categories')) }} - {{ Form::select('payroll_category',$payroll_categories,$payroll->payroll_category,['class' => 'form-control compulsory','required']) }} -
    -
    -
    - - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll/edit_payslip.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll/edit_payslip.blade.php deleted file mode 100755 index 99779382..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll/edit_payslip.blade.php +++ /dev/null @@ -1,239 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Edit Payslip

    -
    -
    - -
    -
    - -
    - - @include('flash::message') - - {{ Form::open(['route' => 'payroll.update_payslip', 'data-toggle' => 'validator']) }} - - {{ Form::hidden('id', $payslip->id) }} - -

    Staff Member Information

    - -
    -
    - - - - - - - - - -
    Member Name{{ $member->first_name }} {{ $member->last_name }}
    Member Contact{{ $member->contact }}
    -
    -
    - - - - - - - - - -
    Member Position{{ $positions[$member->position] }}
    Member Department{{ $departments[$member->department] }}
    -
    -
    - -

    Salary and allowances

    - -
    -
    -
    - {{ Form::label('year','Payment Year') }} - {{ Form::select('year',$years,$payslip->year,['class' => 'form-control compulsory','required', 'id' => 'year']) }} -
    -
    - -
    - {{ Form::label('basic_pay','Basic Pay') }} - {{ Form::number('basic_pay',$payslip->basic_pay,['class' => 'form-control compulsory allowance_changes', 'required', 'readonly', 'id' => 'basic_pay']) }} -
    - -
    - {{ Form::label('allowances','Allowances') }} - {{ Form::number('allowances','0',['class' => 'form-control', 'id' => 'allowances', 'readonly']) }} -
    -
    -
    -
    - {{ Form::label('month','Payment Month') }} - {{ Form::select('month',$months,$payslip->month,['class' => 'form-control compulsory','required', 'id' => 'month']) }} -
    -
    - -
    - {{ Form::label('gross_pay','Gross Pay') }} - {{ Form::number('gross_pay',$payslip->gross_pay,['class' => 'form-control compulsory', 'required', 'readonly', 'id' => 'gross_pay']) }} -
    -
    -
    - -

    Deductions

    - -
    -
    -
    - {{ Form::label('nssf_payment','NSSF') }} - {{ Form::number('nssf_payment',$payslip->nssf_payment,['class' => 'form-control compulsory deduction_changes', 'required', 'readonly', 'id' => 'nssf_payment']) }} -
    - -
    - {{ Form::label('deductions','Deductions') }} - {{ Form::number('deductions','0',['class' => 'form-control deduction_changes', 'id' => 'deductions', 'readonly']) }} -
    -
    -
    -
    - {{ Form::label('paye_payment','PAYE') }} - {{ Form::number('paye_payment',$payslip->paye_payment,['class' => 'form-control compulsory deduction_changes', 'required', 'readonly', 'id' => 'paye_payment']) }} -
    - -
    - {{ Form::label('total_deductions','Total Deductions') }} - {{ Form::number('total_deductions',$payslip->total_deductions,['class' => 'form-control compulsory', 'required', 'readonly', 'id' => 'total_deductions']) }} -
    -
    -
    - -

    Totals

    - -
    -
    -
    - -
    - {{ Form::label('net_pay','Net Pay') }} - {{ Form::number('net_pay',$payslip->net_pay,['class' => 'form-control compulsory', 'required', 'readonly', 'id' => 'net_pay']) }} -
    -
    -
    -
    - - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll/inactive.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll/inactive.blade.php deleted file mode 100755 index e74c7528..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll/inactive.blade.php +++ /dev/null @@ -1,87 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('payroll.staff_members') }}

    -
    -
    - -
    -
    - - @include('payroll::payroll.menu') - -
    -
    -
    - - @include('flash::message') - -
    - - - - - - - - - - - - - - @foreach($payrolls as $payroll) - - - - - - - - - - @endforeach - -
    {{ __('payroll.staff_member') }}{{ __('payroll.position') }}{{ __('payroll.department') }}{{ __('payroll.contract') }}{{ __('payroll.bank') }}{{ __('payroll.basic_pay') }}
    {{ $payroll->first_name }} {{ $payroll->last_name }}{{ $positions[$payroll->position] }}{{ $departments[$payroll->department] }}{{ $payroll->contract }}{{ $banks[$payroll->payroll_bank_id] }}{{ ugandan_shillings($payroll->basic_pay) }} - {{ Form::model($payroll->id ,['method' => 'POST', 'route' => ['payroll.activate', $payroll->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll/inactive_payslips.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll/inactive_payslips.blade.php deleted file mode 100755 index c18a729d..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll/inactive_payslips.blade.php +++ /dev/null @@ -1,107 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    Inactive Payslips

    -
    -
    - -
    -
    - -
    -
    -
    - @include('flash::message') -

    Export data to CSV, Excel, PDF & Print

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - @foreach($payments as $payment) - - - - - - - - - - - - - - - - - - - - - @endforeach - -
    Staff MemberPayment PeriodHeadshipCallsOtherStaff SocietySchool FeesOther DebtsAdvancesVehicle HirePatient DebtsPAYENSSFBasic PayGross PayTotal DeductionsNet Pay
    {{ $member_details_first_name[$payment->member_id] }} {{ $member_details_last_name[$payment->member_id] }}{{ $payment->month }}, {{ $payment->year }}{{ ugandan_shillings($payment->headship) }}{{ ugandan_shillings($payment->calls) }}{{ ugandan_shillings($payment->other) }}{{ ugandan_shillings($payment->staff_society) }}{{ ugandan_shillings($payment->school_fees) }}{{ ugandan_shillings($payment->other_debts) }}{{ ugandan_shillings($payment->advances) }}{{ ugandan_shillings($payment->vehicle_hire) }}{{ ugandan_shillings($payment->patient_debts) }}{{ ugandan_shillings($payment->paye_payment) }}{{ ugandan_shillings($payment->nssf_payment) }}{{ ugandan_shillings($payment->basic_pay) }}{{ ugandan_shillings($payment->gross_pay) }}{{ ugandan_shillings($payment->total_deductions) }}{{ ugandan_shillings($payment->net_pay) }} - {{ Form::model($payment->id ,['method' => 'POST', 'route' => ['payroll.activate_payslip', $payment->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll/index.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll/index.blade.php deleted file mode 100755 index 67e3e7c6..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll/index.blade.php +++ /dev/null @@ -1,207 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('payroll.staff_members') }}

    -
    -
    - -
    -
    - - @include('payroll::payroll.menu') - -
    - {{ Form::open(['route' => 'payroll.index_search', 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('payroll_category', __('payroll.payroll_category')) }} - {{ Form::select('payroll_category', $payroll_categories, '', ['class' => 'form-control']) }} -
    -
    - -
    -
    - {{ Form::label('contract_type', __('payroll.contract')) }} - {{ Form::select('contract_type', $contract_types, '', ['class' => 'form-control']) }} -
    -
    - -
    -
    - {{ Form::label('payroll_scale', __('payroll.salary_scale')) }} - {{ Form::select('payroll_scale', $salary_scales, '', ['class' => 'form-control']) }} -
    -
    - -
    -
    - {{ Form::label('department', __('payroll.department')) }} - {{ Form::select('department', $departments, '', ['class' => 'form-control']) }} -
    -
    - -
    -
    - {{ Form::submit(__('investigations.search'), ['class'=>'btn btn-success pull-right']) }} -
    -
    -
    - - {{ Form::close() }} -
    - -
    - {{ __('payroll.edit_multiple_employees') }} - -
    - - @include('flash::message') - - @if($criteria !== '') -

    Search criteria : {{ $criteria }}

    - @endif - - {{ Form::open(['route' => 'payroll.edit.bulk_edit', 'data-toggle' => 'validator']) }} - -
    - - - - - - - - - - - - - - - - - - - @php $total_basic_pay = 0; @endphp - @foreach($payrolls as $payroll) - @php - $contract_periods = json_decode($payroll->contract_period, true); - $contract_periods = end($contract_periods); - $total_basic_pay += $payroll->basic_pay; - @endphp - - - - - - - - - - - - - - - @endforeach - -
    {{ __('payroll.staff_member') }}{{ __('payroll.position') }}{{ __('payroll.department') }}{{ __('payroll.payroll_category') }}{{ __('payroll.contract') }}{{ __('payroll.contract_period') }}{{ __('payroll.salary_scale') }}{{ __('payroll.bank') }}{{ __('payroll.basic_pay') }}
    {{ $payroll->first_name . ' ' . $payroll->last_name }} ({{ $payroll->number . ' / ' . $payroll->phone }}){{ $positions[$payroll->position] }}{{ $departments[$payroll->department] }}{{ $payroll_categories[$payroll->department] }}{{ $contract_types[$payroll->contract] ?? 'N/A' }} - @if(\Carbon\Carbon::yesterday() > \Carbon\Carbon::parse($contract_periods[1])) - {{ streamline_date($contract_periods[0]) }} to {{ streamline_date($contract_periods[1]) }} - @elseif(\Carbon\Carbon::today()->addMonths(3) > \Carbon\Carbon::parse($contract_periods[1])) - {{ streamline_date($contract_periods[0]) }} to {{ streamline_date($contract_periods[1]) }} - @else - {{ streamline_date($contract_periods[0]) }} to {{ streamline_date($contract_periods[1]) }} - @endif - {{ $salary_scales[$payroll->salary_scale] }}{{ $banks[$payroll->payroll_bank_id] }}{{ ugandan_shillings($payroll->basic_pay) }} - {{ __('payroll.view_details') }} - - {{ __('payroll.delete_member') }} -
    -
    - -
    - -
    -
    - - - - - -
    Total Basic Pay{{ ugandan_shillings($total_basic_pay) }}
    -
    -
    - - - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll/make_payment.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll/make_payment.blade.php deleted file mode 100755 index c4551510..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll/make_payment.blade.php +++ /dev/null @@ -1,290 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Add Payroll

    -
    -
    - -
    -
    - -
    - - @include('flash::message') - - {{ Form::open(['route' => 'payroll.save_payment', 'data-toggle' => 'validator']) }} - - {{ Form::hidden('member_id', $id, ['id' => 'member_id']) }} - -

    Staff Member Information

    - -
    -
    - - - - - - - - - - - - {{ Form::hidden('bank_id', $member->payroll_bank_id) }} - -
    Member Name{{ $member->first_name }} {{ $member->last_name }}
    Member Contact{{ $member->phone }}
    Member Bank
    -
    -
    - - - - - - - - - -
    Member Position{{ $positions[$member->position] }}
    Member Department{{ $departments[$member->department] }}
    -
    -
    - -

    Salary and allowances

    - -
    -
    -
    - {{ Form::label('year','Payment Year') }} - {{ Form::select('year',$years,'',['class' => 'form-control compulsory','required', 'id' => 'year']) }} -
    -
    - -
    - {{ Form::label('basic_pay','Basic Pay') }} - {{ Form::number('basic_pay',$basic_pay,['class' => 'form-control compulsory allowance_changes', 'required', 'readonly', 'id' => 'basic_pay']) }} -
    - -
    - {{ Form::label('allowances','Allowances') }} - {{ Form::number('allowances','0',['class' => 'form-control allowance_changes', 'id' => 'allowances', 'readonly']) }} -
    -
    -
    -
    - {{ Form::label('month','Payment Month') }} - {{ Form::select('month',$months,'',['class' => 'form-control compulsory','required', 'id' => 'month']) }} -
    - -
    - {{ Form::label('gross_pay','Gross Pay') }} - {{ Form::number('gross_pay','',['class' => 'form-control compulsory', 'required', 'readonly', 'id' => 'gross_pay']) }} -
    -
    -
    - -

    Deductions

    - -
    -
    -
    - {{ Form::label('nssf_payment','NSSF') }} - {{ Form::number('nssf_payment','',['class' => 'form-control compulsory deduction_changes', 'required', 'readonly', 'id' => 'nssf_payment']) }} -
    - -
    - {{ Form::label('deductions','Deductions') }} - {{ Form::number('deductions','0',['class' => 'form-control deduction_changes', 'id' => 'deductions', 'readonly']) }} -
    -
    -
    -
    - {{ Form::label('paye_payment','PAYE') }} - {{ Form::number('paye_payment','',['class' => 'form-control compulsory deduction_changes', 'required', 'readonly', 'id' => 'paye_payment']) }} -
    - -
    - {{ Form::label('total_deductions','Total Deductions') }} - {{ Form::number('total_deductions','',['class' => 'form-control compulsory', 'required', 'readonly', 'id' => 'total_deductions']) }} -
    -
    -
    - -

    Totals

    - -
    -
    -
    - -
    - {{ Form::label('net_pay','Net Pay') }} - {{ Form::number('net_pay','',['class' => 'form-control compulsory', 'required', 'readonly', 'id' => 'net_pay']) }} -
    -
    -
    -
    - - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button('Cancel',['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll/menu.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll/menu.blade.php deleted file mode 100644 index 46805736..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll/menu.blade.php +++ /dev/null @@ -1,10 +0,0 @@ -
    - {{ __('payroll.add_payroll_employee') }} - {{ __('payroll.add_multiple_payroll_employees') }} - {{ __('payroll.view_payrolls') }} - {{ __('payroll.pay_multiple_employees') }} - {{ __('payroll.inactive_payrolls') }} - {{ __('payroll.manage_salary_scale') }} - Create Payroll Schedule - View Payroll Schedules -
    diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll/print_allowances_or_deductions.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll/print_allowances_or_deductions.blade.php deleted file mode 100644 index 9fa747f9..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll/print_allowances_or_deductions.blade.php +++ /dev/null @@ -1,134 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') - - @php $patient = \Illuminate\Support\Facades\DB::table('patients')->where('id', $member->patient_id)->first(); @endphp - - @include('flash::message') - -

    {{ __('payroll.personal_information') }}

    - - - - - - - - - - @php - $contract_periods = json_decode($member->contract_period, true); - $contract_periods = end($contract_periods); - $total_deductions = 0; - $total_allowances = 0; - @endphp - - - - - -
    {{ __('payroll.staff_member') }}{{ $patient->first_name }} {{ $patient->last_name }}{{ __('payroll.staff_patient_number') }}{{ $patient->number }}{{ __('payroll.staff_contact') }}{{ $patient->phone }}{{ __('payroll.contract') }}{{ [1 => 'Permanent', 2 => 'Probation', 3 => 'Contract'][$member->contract] ?? 'N/A' }}{{ __('payroll.contract_expiry') }}{{ streamline_date($contract_periods[1]) }}
    - -
    - -

    {{ __('payroll.allowances_deductions_details') }}

    - - - - - - - - - - - - - - - - - - @if(count($records) > 0) - @foreach($records as $record) - - - - - - - - - - - - - @endforeach - @else - - - - @endif - -
    {{ __('payroll.type') }}{{ __('payroll.amount') }}{{ __('payroll.income_account') }}{{ __('payroll.is_recurring') }}{{ __('payroll.recurring_period') }}{{ __('payroll.recurring_final_date') }}{{ __('payroll.reason') }}{{ __('payroll.added_to_payslip') }}{{ __('payroll.created_by') }}{{ __('payroll.created_on') }}
    - @if($record->type == 0) - @php $total_allowances += $record->amount; @endphp - {{ __('payroll.allowance') }} - @else - @php $total_deductions += $record->amount; @endphp - {{ __('payroll.deduction') }} - @endif - {{ ugandan_shillings($record->amount) }}{{ $income_accounts[$record->income_account_id] ?? 'N/A' }}{{ [0 => 'No', 1 => 'Yes'][$record->recurring] ?? 'N/A' }}{{ [0 => 'End of Contract', 1 => 'Defined Date'][$record->recurring_period] ?? 'N/A' }}{{ $record->recurring_final_date ? streamline_date($record->recurring_final_date) : 'N/A' }}{{ $record->reason }} - @if($record->billed == 0) - {{ __('payroll.no') }} - @else - {{ __('payroll.yes') }} - @endif - {{ get_full_name($record->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date_time($record->created_at) }}
    {{ __('payroll.no_records_available') }}
    - - - - - - - - -
    Total Allowances{{ ugandan_shillings($total_allowances) }}Total Deductions{{ ugandan_shillings($total_deductions) }}
    -
    - - diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll/print_staff_details.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll/print_staff_details.blade.php deleted file mode 100644 index d9010d45..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll/print_staff_details.blade.php +++ /dev/null @@ -1,248 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') - - @php $patient = \Illuminate\Support\Facades\DB::table('patients')->where('id', $member->patient_id)->first(); @endphp - -

    {{ __('payroll.personal_information') }}

    - - - - - - - - - - @php - $contract_periods = json_decode($member->contract_period, true); - $contract_periods = end($contract_periods); - @endphp - - - - - -
    {{ __('payroll.staff_member') }}{{ $patient->first_name }} {{ $patient->last_name }}{{ __('payroll.staff_patient_number') }}{{ $patient->number }}{{ __('payroll.staff_contact') }}{{ $patient->phone }}{{ __('payroll.contract') }}{{ [1 => 'Permanent', 2 => 'Probation', 3 => 'Contract'][$member->contract] ?? 'N/A' }}{{ __('payroll.contract_expiry') }}{{ streamline_date($contract_periods[1]) }}
    - -
    - -

    {{ __('payroll.payroll_information') }}

    - -
    -
    - - - - - - - - - - - - - - - - - - - @php - $contract_periods = json_decode($member->contract_period, true); - $contract_periods = end($contract_periods); - @endphp - - - - - - - - - -
    {{ __('payroll.social_security_number') }}{{ $member->nssf_number }}
    {{ __('payroll.tin_number') }}{{ $member->tin_number }}
    {{ __('payroll.salary_scale') }}{{ $salary_scales[$member->salary_scale] }}
    {{ __('payroll.contract_type') }}{{ [1 => 'Permanent', 2 => 'Probation', 3 => 'Contract'][$member->contract] ?? '' }}
    {{ __('payroll.contract_start') }}{{ streamline_date($contract_periods[0]) }}
    {{ __('payroll.contract_end') }}{{ streamline_date($contract_periods[1]) }}
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('payroll.bank') }}{{ $banks[$member->payroll_bank_id] }}
    {{ __('payroll.bank_account_number') }}{{ $member->bank_account_number }}
    {{ __('payroll.basic_pay') }}{{ $member->basic_pay }}
    {{ __('payroll.position') }}{{ $positions[$member->position] }}
    {{ __('payroll.department') }}{{ $departments[$member->department] }}
    {{ __('payroll.payroll_categories') }}{{ $payroll_categories[$member->payroll_category] }}
    -
    -
    - - @if(count($payments) > 0) - -
    - -

    Payments

    - - - - - - - - - - - - - - - - - - - - @foreach($payments as $payment) - - - - - - - - - - - - - - - @endforeach - -
    Payment PeriodAllowancesDeductionsPAYENSSFBasic PayGross PayTotal DeductionsNet Pay
    {{ $payment->month }}, {{ $payment->year }}{{ ugandan_shillings($payment->allowances) }}{{ ugandan_shillings($payment->deductions) }}{{ ugandan_shillings($payment->paye_payment) }}{{ ugandan_shillings($payment->nssf_payment) }}{{ ugandan_shillings($payment->basic_pay) }}{{ ugandan_shillings($payment->gross_pay) }}{{ ugandan_shillings($payment->total_deductions) }}{{ ugandan_shillings($payment->net_pay) }} - {{ Form::model($payment->id ,['method' => 'POST', 'route' => ['payroll.view_payslip', $payment->id]]) }} - - {{ Form::close() }} - - {{ Form::model($payment->id ,['method' => 'POST', 'route' => ['payroll.edit_payslip', $payment->id]]) }} - - {{ Form::close() }} - - {{ Form::model($payment->id ,['method' => 'POST', 'route' => ['payroll.destroy_payslip', $payment->id]]) }} - - {{ Form::close() }} -
    - @endif - - @if(count($allow_deductions) > 0) -
    - -

    {{ __('payroll.allowances_deductions') }}

    - - - - - - - - - - - - - - @php - $total_deductions = 0; - $total_allowances = 0; - @endphp - - @foreach($allow_deductions as $record) - - - - - - - - - @endforeach - - - - - - -
    {{ __('payroll.type') }}{{ __('payroll.amount') }}{{ __('payroll.reason') }}{{ __('payroll.added_to_payslip') }}{{ __('payroll.created_by') }}{{ __('payroll.created_on') }}
    - @if($record->type == 0) - @php $total_allowances += $record->amount; @endphp - {{ __('payroll.allowance') }} - @else - @php $total_deductions += $record->amount; @endphp - {{ __('payroll.deduction') }} - @endif - {{ ugandan_shillings($record->amount) }}{{ $record->reason }} - @if($record->billed == 0) - {{ __('payroll.no') }} - @else - {{ __('payroll.yes') }} - @endif - {{ get_full_name($record->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date_time($record->created_at) }}
    - Total Allowances: {{ ugandan_shillings($total_allowances) }} - - Total Deductions: {{ ugandan_shillings($total_deductions) }} -
    - @endif -
    - - diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll/view_payroll_member_details.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll/view_payroll_member_details.blade.php deleted file mode 100755 index 22ea5dcd..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll/view_payroll_member_details.blade.php +++ /dev/null @@ -1,282 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('payroll.member_details') }}

    -
    - -
    - - @include('payroll::payroll.menu') - -
    - - @include('flash::message') - - {{ __('payroll.edit_details') }} - - {{ __('payroll.print_details') }} - -
    - - @php $patient = \Illuminate\Support\Facades\DB::table('patients')->where('id', $member->patient_id)->first(); @endphp - -

    {{ __('payroll.personal_information') }}

    - - - - - - - - - - @php - $contract_periods = json_decode($member->contract_period, true); - $contract_periods = end($contract_periods); - @endphp - - - - - -
    {{ __('payroll.staff_member') }}{{ $patient->first_name }} {{ $patient->last_name }}{{ __('payroll.staff_patient_number') }}{{ $patient->number }}{{ __('payroll.staff_contact') }}{{ $patient->phone }}{{ __('payroll.contract') }}{{ [1 => 'Permanent', 2 => 'Probation', 3 => 'Contract'][$member->contract] ?? 'N/A' }}{{ __('payroll.contract_expiry') }}{{ streamline_date($contract_periods[1]) }}
    - -

    {{ __('payroll.payroll_information') }}

    - -
    -
    - - - - - - - - - - - - - - - - - - - @php - $contract_periods = json_decode($member->contract_period, true); - $contract_periods = end($contract_periods); - @endphp - - - - - - - - - -
    {{ __('payroll.social_security_number') }}{{ $member->nssf_number }}
    {{ __('payroll.tin_number') }}{{ $member->tin_number }}
    {{ __('payroll.salary_scale') }}{{ $salary_scales[$member->salary_scale] }}
    {{ __('payroll.contract_type') }}{{ [1 => 'Permanent', 2 => 'Probation', 3 => 'Contract'][$member->contract] ?? '' }}
    {{ __('payroll.contract_start') }}{{ streamline_date($contract_periods[0]) }}
    {{ __('payroll.contract_end') }}{{ streamline_date($contract_periods[1]) }}
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('payroll.bank') }}{{ $banks[$member->payroll_bank_id] }}
    {{ __('payroll.bank_account_number') }}{{ $member->bank_account_number }}
    {{ __('payroll.basic_pay') }}{{ $member->basic_pay }}
    {{ __('payroll.position') }}{{ $positions[$member->position] }}
    {{ __('payroll.department') }}{{ $departments[$member->department] }}
    {{ __('payroll.payroll_categories') }}{{ $payroll_categories[$member->payroll_category] }}
    -
    -
    - -
    - -

    Payments

    -
    - - - - - - - - - - - - - - - - - - - @if(count($payments) > 0) - @foreach($payments as $payment) - - - - - - - - - - - - - - - @endforeach - @else - - @endif - -
    Payment PeriodAllowancesDeductionsPAYENSSFBasic PayGross PayTotal DeductionsNet Pay
    {{ $payment->month }}, {{ $payment->year }}{{ ugandan_shillings($payment->allowances) }}{{ ugandan_shillings($payment->deductions) }}{{ ugandan_shillings($payment->paye_payment) }}{{ ugandan_shillings($payment->nssf_payment) }}{{ ugandan_shillings($payment->basic_pay) }}{{ ugandan_shillings($payment->gross_pay) }}{{ ugandan_shillings($payment->total_deductions) }}{{ ugandan_shillings($payment->net_pay) }} - {{ Form::model($payment->id ,['method' => 'POST', 'route' => ['payroll.view_payslip', $payment->id]]) }} - - {{ Form::close() }} - - {{ Form::model($payment->id ,['method' => 'POST', 'route' => ['payroll.edit_payslip', $payment->id]]) }} - - {{ Form::close() }} - - {{ Form::model($payment->id ,['method' => 'POST', 'route' => ['payroll.destroy_payslip', $payment->id]]) }} - - {{ Form::close() }} -
    {{ __('payroll.no_records_available') }}
    -
    - - {{ __('payroll.pay_member') }} - -
    - -

    {{ __('payroll.allowances_deductions') }}

    - -
    - - - - - - - - - - - - - - - - - @if(count($allow_deductions) > 0) - @php - $total_deductions = 0; - $total_allowances = 0; - @endphp - - @foreach($allow_deductions as $record) - - - - - - - - - - - - - @endforeach - - - - - - @else - - - - @endif - -
    {{ __('payroll.type') }}{{ __('payroll.amount') }}{{ __('payroll.income_account') }}{{ __('payroll.is_recurring') }}{{ __('payroll.recurring_period') }}{{ __('payroll.recurring_final_date') }}{{ __('payroll.reason') }}{{ __('payroll.added_to_payslip') }}{{ __('payroll.created_by') }}{{ __('payroll.created_on') }}
    - @if($record->type == 0) - @php $total_allowances += $record->amount; @endphp - {{ __('payroll.allowance') }} - @else - @php $total_deductions += $record->amount; @endphp - {{ __('payroll.deduction') }} - @endif - {{ ugandan_shillings($record->amount) }}{{ $income_accounts[$record->income_account_id] ?? 'N/A' }}{{ [0 => 'No', 1 => 'Yes'][$record->recurring] ?? 'N/A' }}{{ [0 => 'End of Contract', 1 => 'Defined Date'][$record->recurring_period] ?? 'N/A' }}{{ $record->recurring_final_date ? streamline_date($record->recurring_final_date) : 'N/A' }}{{ $record->reason }} - @if($record->billed == 0) - {{ __('payroll.no') }} - @else - {{ __('payroll.yes') }} - @endif - {{ get_full_name($record->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date_time($record->created_at) }}
    - Total Allowances: {{ ugandan_shillings($total_allowances) }} - - Total Deductions: {{ ugandan_shillings($total_deductions) }} -
    {{ __('payroll.no_records_available') }}
    -
    - - {{ __('payroll.allowances_deductions') }} -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll/view_payroll_payments.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll/view_payroll_payments.blade.php deleted file mode 100755 index bfe71997..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll/view_payroll_payments.blade.php +++ /dev/null @@ -1,155 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') -
    -
    -

    Payroll Payments

    -
    -
    - -
    -
    - -
    - {{ Form::open(['route' => 'payroll.view_payroll_payments' , 'data-toggle' => 'validator']) }} -
    -
    -
    -
    - {{ Form::label('start_date','Date From') }} - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'start_date']) }} -
    -
    -
    -
    - {{ Form::label('end_date','Date To') }} - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'end_date']) }} -
    -
    -
    -
    - {{ Form::label('bank_id','Bank') }} - {{ Form::select('bank_id', $banks,'',['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    - {{ Form::button('Search',['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    -
    - {{ Form::close() }} -
    - -
    -
    -
    - @include('flash::message') -

    -
    -
    - - - - - - - - - - - - - - - - - - - - @foreach($payments as $payment) - - - - - - - - - - - - - - - - @endforeach - -
    Staff MemberPayment PeriodAllowancesDeductionsPAYENSSFBasic PayGross PayTotal DeductionsNet Pay
    {{ $member_details_first_name[$payment->member_id] }} {{ $member_details_last_name[$payment->member_id] }}{{ $payment->month }}, {{ $payment->year }}{{ ugandan_shillings($payment->allowances) }}{{ ugandan_shillings($payment->deductions) }}{{ ugandan_shillings($payment->paye_payment) }}{{ ugandan_shillings($payment->nssf_payment) }}{{ ugandan_shillings($payment->basic_pay) }}{{ ugandan_shillings($payment->gross_pay) }}{{ ugandan_shillings($payment->total_deductions) }}{{ ugandan_shillings($payment->net_pay) }} - {{ Form::model($payment->id ,['method' => 'POST', 'route' => ['payroll.view_payslip', $payment->id]]) }} - - {{ Form::close() }} - - {{ Form::model($payment->id ,['method' => 'POST', 'route' => ['payroll.edit_payslip', $payment->id]]) }} - - {{ Form::close() }} - - {{ Form::model($payment->id ,['method' => 'POST', 'route' => ['payroll.destroy_payslip', $payment->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll/view_payslip.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll/view_payslip.blade.php deleted file mode 100755 index 4dce6d6a..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll/view_payslip.blade.php +++ /dev/null @@ -1,196 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    Payslip

    -
    -
    - -
    -
    - -
    - @include('flash::message') - - Print -
    - - -
    - -@endsection - -@push('scripts') - - - - - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll_categories/create.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll_categories/create.blade.php deleted file mode 100755 index f2c79cc1..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll_categories/create.blade.php +++ /dev/null @@ -1,45 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('payroll_categories.add_category') }}

    -
    - -
    - -
    -
    - @include('payroll::payroll_categories.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'payroll_categories.store', 'data-toggle' => 'validator']) }} -
    - {{ Form::label('name', __('payroll_categories.payroll_categories_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - {{ Form::button(__('payroll_categories.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10 submit-btn']) }} - {{ Form::button(__('payroll_categories.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll_categories/edit.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll_categories/edit.blade.php deleted file mode 100755 index 5ce2b7f9..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll_categories/edit.blade.php +++ /dev/null @@ -1,47 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('payroll_categories.edit') }}

    -
    - -
    - -
    -
    - @include('payroll::payroll_categories.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($category, ['method' => 'PUT', 'route' => ['payroll_categories.update',$category], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('payroll_categories.payroll_categories_name')) }} - {{ Form::text('name', $category->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('payroll_categories.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('payroll_categories.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll_categories/inactive.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll_categories/inactive.blade.php deleted file mode 100755 index 1462cd27..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll_categories/inactive.blade.php +++ /dev/null @@ -1,77 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('payroll_categories.activate_category') }}

    -
    - -
    - -
    -
    - @include('payroll::payroll_categories.menu') -
    -
    - -
    -
    -
    -
    - - - - - - - - - @foreach($categories as $category) - - - - - @endforeach - -
    {{ __('payroll_categories.payroll_categories_name') }}
    {{ $category->name }} - {{ Form::model($category->id ,['method' => 'POST', 'route' => ['payroll_categories.activate', $category->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll_categories/index.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll_categories/index.blade.php deleted file mode 100755 index b6de0afc..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll_categories/index.blade.php +++ /dev/null @@ -1,106 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('payroll_categories.payroll_categories') }}

    -
    - -
    - -
    -
    - @include('payroll::payroll_categories.menu') -
    -
    - - -
    -
    -
    - - @include('flash::message') - -
    - - - - - - - - - - @foreach($categories as $category) - - - - - - @endforeach - -
    {{ __('payroll_categories.payroll_categories_name') }}
    {{ $category->name }} - {{ __('payroll_categories.edit') }} - - {{ Form::model($category->id ,['method' => 'DELETE', 'route' => ['payroll_categories.destroy', $category->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll_categories/menu.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll_categories/menu.blade.php deleted file mode 100755 index c00c5878..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll_categories/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    - -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll_defaults/edit_nssf_rate.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll_defaults/edit_nssf_rate.blade.php deleted file mode 100755 index b1b19d36..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll_defaults/edit_nssf_rate.blade.php +++ /dev/null @@ -1,37 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('finance.edit_social_security_rate') }}

    -
    -
    - -
    -
    - -
    - @include('flash::message') - - {{ Form::model(1 ,['method' => 'POST', 'route' => ['payroll_defaults.save_nssf_rate', 1]]) }} - -
    - {{ Form::label('nssf_rate', __('finance.social_security_rate')) }} - {{ Form::number('nssf_rate', $nssf_rate->nssf_rate, ['class' => 'form-control compulsory', 'required', 'step' => '0.01']) }} -
    -
    - - {{ Form::button(__('finance.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('finance.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll_defaults/edit_tax_rate.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll_defaults/edit_tax_rate.blade.php deleted file mode 100644 index 05b75c6d..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll_defaults/edit_tax_rate.blade.php +++ /dev/null @@ -1,100 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('finance.edit_tax_rate') }}

    -
    -
    - -
    -
    - -
    - @include('flash::message') - - {{ Form::open(['route' => 'payroll_defaults.save_tax_rate', 'data-toggle' => 'validator']) }} - - @php - $tax_from = json_decode($tax_rate_record->tax_from); - $tax_to = json_decode($tax_rate_record->tax_to); - $tax_rate = json_decode($tax_rate_record->tax_rate); - @endphp - - - - - - - - - - - - - @if(!is_null($tax_from)) - @for($i = 0; $i < count($tax_from); $i++) - - - - - - - @endfor - @else - - - - - - - @endif - -
    FromToTax Percentage (0 - 100)
    - @if($i > 0) - - @endif -
    - - {{ __('triage.add_row') }} - -

    - - {{ Form::button(__('finance.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('finance.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll_salary_scales/create.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll_salary_scales/create.blade.php deleted file mode 100755 index da42754c..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll_salary_scales/create.blade.php +++ /dev/null @@ -1,45 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('payroll_salary_scale.add_category') }}

    -
    - -
    - -
    -
    - @include('payroll::payroll_salary_scales.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'payroll_salary_scales.store', 'data-toggle' => 'validator']) }} -
    - {{ Form::label('name', __('payroll_salary_scale.salary_scale_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    - {{ Form::button(__('payroll_salary_scale.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10 submit-btn']) }} - {{ Form::button(__('payroll_salary_scale.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll_salary_scales/edit.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll_salary_scales/edit.blade.php deleted file mode 100755 index 3e4e6f2d..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll_salary_scales/edit.blade.php +++ /dev/null @@ -1,47 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('payroll_salary_scale.edit') }}

    -
    - -
    - -
    -
    - @include('payroll::payroll_salary_scales.menu') -
    -
    - -
    -
    - - @include('flash::message') -
    - {{ Form::model($scale, ['method' => 'PUT', 'route' => ['payroll_salary_scales.update',$scale], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('payroll_salary_scale.salary_scale_name')) }} - {{ Form::text('name', $scale->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('payroll_salary_scale.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('payroll_salary_scale.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll_salary_scales/inactive.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll_salary_scales/inactive.blade.php deleted file mode 100755 index c0262ac6..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll_salary_scales/inactive.blade.php +++ /dev/null @@ -1,77 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('payroll_salary_scale.activate_category') }}

    -
    - -
    - -
    -
    - @include('payroll::payroll_salary_scales.menu') -
    -
    - -
    -
    -
    -
    - - - - - - - - - @foreach($scales as $scale) - - - - - @endforeach - -
    {{ __('payroll_salary_scale.salary_scale_name') }}
    {{ $scale->name }} - {{ Form::model($scale->id ,['method' => 'POST', 'route' => ['payroll_salary_scales.activate', $scale->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll_salary_scales/index.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll_salary_scales/index.blade.php deleted file mode 100755 index f7b4621b..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll_salary_scales/index.blade.php +++ /dev/null @@ -1,106 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('payroll_salary_scale.salary_scale') }}

    -
    - -
    - -
    -
    - @include('payroll::payroll_salary_scales.menu') -
    -
    - - -
    -
    -
    - - @include('flash::message') - -
    - - - - - - - - - - @foreach($scales as $scale) - - - - - - @endforeach - -
    {{ __('payroll_salary_scale.salary_scale_name') }}
    {{ $scale->name }} - {{ __('payroll_salary_scale.edit') }} - - {{ Form::model($scale->id ,['method' => 'DELETE', 'route' => ['payroll_salary_scales.destroy', $scale->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll_salary_scales/menu.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll_salary_scales/menu.blade.php deleted file mode 100755 index 4def4978..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll_salary_scales/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ -
    - -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll_schedule/create.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll_schedule/create.blade.php deleted file mode 100644 index fe992ddd..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll_schedule/create.blade.php +++ /dev/null @@ -1,375 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('payroll.payroll_schedules') }}

    -
    -
    - -
    -
    - - @include('payroll::payroll.menu') - -
    - @include('flash::message') - - {{ Form::open(['route' => 'payroll_schedules.create']) }} - -

    {{ __('payroll.filter_by_category') }}

    - -
    -
    -
    - {{ Form::label('payroll_category',__('payroll.payroll_category')) }} - {{ Form::select('payroll_category',$payroll_categories,'',['class' => 'form-control compulsory','required']) }} -
    -
    - -
    -
    - {{ Form::submit(__('investigations.search'), ['class'=>'btn btn-success']) }} -
    -
    -
    - - {{ Form::close() }} - - @if(count($employees) > 0) -
    - -

    {{ __('payroll.payroll_schedule_details') }}

    - - {{ Form::open(['route' => 'payroll_schedules.save_schedule', 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('payroll.payroll_schedule_name')) }} - {{ Form::text('name','',['class' => 'form-control compulsory', 'required']) }} -
    - -
    -
    -
    - {{ Form::label('pay_year',__('payroll.payment_year')) }} - {{ Form::select('pay_year',$years,'',['class' => 'form-control compulsory','required']) }} -
    - -
    - {{ Form::label('salaries_expense_account',__('payroll.salaries_expenses_account')) }} - {{ Form::select('salaries_expense_account',$expense_accounts,'',['class' => 'form-control compulsory','required']) }} -
    - -
    - {{ Form::label('salaries_payable_account',__('payroll.salaries_payable_account')) }} - {{ Form::select('salaries_payable_account',$payable_accounts,'',['class' => 'form-control compulsory','required']) }} -
    -
    -
    -
    - {{ Form::label('pay_month',__('payroll.payment_month')) }} - {{ Form::select('pay_month',$months,'',['class' => 'form-control compulsory','required']) }} -
    - -
    - {{ Form::label('tax_expense_account',__('payroll.tax_expense_account')) }} - {{ Form::select('tax_expense_account',$expense_accounts,'',['class' => 'form-control compulsory','required']) }} -
    - -
    - {{ Form::label('tax_payable_account',__('payroll.tax_payable_account')) }} - {{ Form::select('tax_payable_account',$payable_accounts,'',['class' => 'form-control compulsory','required']) }} -
    -
    -
    -
    - {{ Form::label('due_date', __('payroll.due_date')) }} - {{ Form::text('due_date','',['class' => 'form-control compulsory', 'readonly', 'required', 'id'=>'due_date']) }} -
    - -
    - {{ Form::label('social_security_expense_account',__('payroll.social_security_expense_account')) }} - {{ Form::select('social_security_expense_account',$expense_accounts,'',['class' => 'form-control compulsory','required']) }} -
    - -
    - {{ Form::label('social_security_payable_account',__('payroll.social_security_payable_account')) }} - {{ Form::select('social_security_payable_account',$payable_accounts,'',['class' => 'form-control compulsory','required']) }} -
    -
    -
    - -
    - {{ Form::label('memo', __('payroll.memo')) }} - -
    - -
    - - - - - - - - - - - - - - - - - - @foreach($employees as $employee) - - - - - {{ Form::hidden('payroll_category[]', $employee->payroll_category) }} - @php - $deductions = 0; - $allowances = 0; - $deductions_arr = []; - $allowances_arr = []; - - $allow_deducts = \Illuminate\Support\Facades\DB::table('payroll_allowances_or_deductions')->where('billed', 0)->where('member_id', $employee->id)->whereNull('deleted_at')->get(); - - foreach ($allow_deducts as $allow_deduct) { - if ($allow_deduct->type == 0) { - $allowances += $allow_deduct->amount; - $allowances_arr[] = $allow_deduct->id; - } else { - $deductions += $allow_deduct->amount; - $deductions_arr[] = $allow_deduct->id; - } - } - - $gross_pay = $employee->basic_pay + $allowances; - $total_deductions = $employee->tax_amount + $employee->social_security_amount + $deductions; - @endphp - {{ Form::hidden('allowances_arr[]', implode(',', $allowances_arr), ['id' => 'allowances_arr_' . $employee->id]) }} - {{ Form::hidden('deductions_arr[]', implode(',', $deductions_arr), ['id' => 'deductions_arr_' . $employee->id]) }} - - - - - - - - - - - @endforeach - - - - - - - - - - - - - - - -
    {{ __('payroll.employee_name') }}{{ __('payroll.payroll_category') }}{{ __('payroll.basic_pay') }}{{ __('payroll.allowances') }}{{ __('payroll.gross_pay') }}{{ __('payroll.tax_amount') }}{{ __('payroll.social_security_amount') }}{{ __('payroll.deductions') }}{{ __('payroll.total_deductions') }}{{ __('payroll.net_pay') }}
    - - {{ Form::hidden('employee_id[]', $employee->id) }} - {{ $employee->first_name . ' ' . $employee->last_name }} ({{ $employee->number }}){{ $payroll_categories[$employee->payroll_category] }}{{ Form::number('basic_pay[]', $employee->basic_pay, ['class' => 'form-control compulsory basic_pay_field', 'required', 'id' => 'basic_pay_' . $employee->id]) }} - {{ Form::number('allowance[]', $allowances, ['class' => 'form-control compulsory allowance_field', 'readonly', 'required', 'id' => 'allowance_' . $employee->id]) }} - - View Allowances - {{ Form::number('gross_pay[]', $gross_pay, ['class' => 'form-control compulsory gross_pay_field', 'readonly', 'required', 'id' => 'gross_pay_' . $employee->id]) }}{{ Form::number('tax[]', $employee->tax_amount, ['class' => 'form-control compulsory tax_field', 'required', 'id' => 'tax_' . $employee->id]) }}{{ Form::number('social_security[]', $employee->social_security_amount, ['class' => 'form-control compulsory social_security_field', 'required', 'id' => 'social_security_' . $employee->id]) }} - {{ Form::number('deductions[]', $deductions, ['class' => 'form-control compulsory deductions_field', 'readonly', 'required', 'id' => 'deductions_' . $employee->id]) }} - - View Deductions - {{ Form::number('total_deductions[]', $total_deductions, ['class' => 'form-control compulsory total_deductions_field', 'readonly', 'required', 'id' => 'total_deductions_' . $employee->id]) }}{{ Form::number('net_pay[]', ($gross_pay - $total_deductions), ['class' => 'form-control compulsory net_pay_field', 'readonly', 'required', 'id' => 'net_pay_' . $employee->id]) }}
    TOTALS
    -
    - - - - -

    - - {{ Form::close() }} - @endif -
    - - -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll_schedule/details.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll_schedule/details.blade.php deleted file mode 100644 index ca455dfb..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll_schedule/details.blade.php +++ /dev/null @@ -1,160 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('payroll.payroll_schedules') }}

    -
    -
    - -
    -
    - - @include('payroll::payroll.menu') - -
    - @include('flash::message') - - Print - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('payroll.payroll_schedule_name') }}{{ $schedule->name }}{{ __('payroll.created_by') }}{{ get_full_name($schedule->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ __('payroll.created_at') }}{{ streamline_date_time($schedule->created_at) }}
    {{ __('payroll.payment_year') }}{{ $schedule->pay_year }}{{ __('payroll.payment_month') }}{{ $schedule->pay_month }}{{ __('payroll.due_date') }}{{ streamline_date($schedule->due_date) }}
    {{ __('payroll.salaries_expenses_account') }}{{ $expense_accounts[$schedule->salaries_expense_account] }}{{ __('payroll.tax_expense_account') }}{{ $expense_accounts[$schedule->tax_expense_account] }}{{ __('payroll.social_security_expense_account') }}{{ $expense_accounts[$schedule->social_security_expense_account] }}
    {{ __('payroll.salaries_payable_account') }}{{ $payable_accounts[$schedule->salaries_payable_account] }}{{ __('payroll.tax_payable_account') }}{{ $payable_accounts[$schedule->tax_payable_account] }}{{ __('payroll.social_security_payable_account') }}{{ $payable_accounts[$schedule->social_security_payable_account] }}
    {{ __('payroll.memo') }}{{ $schedule->memo }}
    -
    - -

    - -
    - - - - - - - - - - - - - - - - - @php - $payroll_category_arr = explode(",", $schedule->payroll_category); - $employee_id_arr = explode(",", $schedule->employee_id); - $basic_pay_arr = explode(",", $schedule->basic_pay); - $allowances_arr = explode(",", $schedule->allowances); - $gross_pay_arr = explode(",", $schedule->gross_pay); - $tax_amount_arr = explode(",", $schedule->tax_amount); - $social_security_amount_arr = explode(",", $schedule->social_security_amount); - $deductions_arr = explode(",", $schedule->deductions); - $total_deductions_arr = explode(",", $schedule->total_deductions); - $net_pay_arr = explode(",", $schedule->net_pay); - - $basic_pay_total = 0; - $allowances_total = 0; - $gross_pay_total = 0; - $tax_amount_total = 0; - $social_security_amount_total = 0; - $deductions_total = 0; - $total_deductions_total = 0; - $net_pay_total = 0; - @endphp - - @for($i = 0; $i < count($employee_id_arr); $i++) - @php - $employee = \Illuminate\Support\Facades\DB::table('payrolls')->where('id', $employee_id_arr[$i])->first(); - $patient = \Illuminate\Support\Facades\DB::table('patients')->where('id', $employee->patient_id)->first(); - - $basic_pay_total += $basic_pay_arr[$i]; - $allowances_total += $allowances_arr[$i]; - $gross_pay_total += $gross_pay_arr[$i]; - $tax_amount_total += $tax_amount_arr[$i]; - $social_security_amount_total += $social_security_amount_arr[$i]; - $deductions_total += $deductions_arr[$i]; - $total_deductions_total += $total_deductions_arr[$i]; - $net_pay_total += $net_pay_arr[$i]; - @endphp - - - - {{ Form::hidden('payroll_category[]', $employee->payroll_category) }} - - - - - - - - - - - @endfor - - - - - - - - - - - - - - -
    {{ __('payroll.employee_name') }}{{ __('payroll.payroll_category') }}{{ __('payroll.basic_pay') }}{{ __('payroll.allowances') }}{{ __('payroll.gross_pay') }}{{ __('payroll.tax_amount') }}{{ __('payroll.social_security_amount') }}{{ __('payroll.deductions') }}{{ __('payroll.total_deductions') }}{{ __('payroll.net_pay') }}
    {{ $patient->first_name . ' ' . $patient->last_name }} ({{ $patient->number }}){{ $payroll_categories[$employee->payroll_category] }}{{ ugandan_shillings($basic_pay_arr[$i]) }}{{ ugandan_shillings($allowances_arr[$i]) }}{{ ugandan_shillings($gross_pay_arr[$i]) }}{{ ugandan_shillings($tax_amount_arr[$i]) }}{{ ugandan_shillings($social_security_amount_arr[$i]) }}{{ ugandan_shillings($deductions_arr[$i]) }}{{ ugandan_shillings($total_deductions_arr[$i]) }}{{ ugandan_shillings($net_pay_arr[$i]) }}
    TOTALS{{ ugandan_shillings($basic_pay_total) }}{{ ugandan_shillings($allowances_total) }}{{ ugandan_shillings($gross_pay_total) }}{{ ugandan_shillings($tax_amount_total) }}{{ ugandan_shillings($social_security_amount_total) }}{{ ugandan_shillings($deductions_total) }}{{ ugandan_shillings($total_deductions_total) }}{{ ugandan_shillings($net_pay_total) }}
    -
    -
    -@endsection - -@push('scripts') -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll_schedule/index.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll_schedule/index.blade.php deleted file mode 100644 index a1a6231c..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll_schedule/index.blade.php +++ /dev/null @@ -1,88 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('payroll.payroll_schedules') }}

    -
    -
    - -
    -
    - - @include('payroll::payroll.menu') - -
    - @include('flash::message') - -
    - - - - - - - - - - - - - - - @php $totals = 0; @endphp - @foreach($schedules as $schedule) - - - - @php - $total_net_pay = array_sum(explode(",", $schedule->net_pay)); - $totals += $total_net_pay; - @endphp - - - - - - - - @endforeach - -
    {{ __('payroll.payroll_schedule_name') }}{{ __('payroll.pay_period') }}{{ __('payroll.total_net_pay') }}{{ __('payroll.due_date') }}{{ __('payroll.payment_date') }}{{ __('payroll.created_at') }}{{ __('payroll.created_by') }}
    {{ $schedule->name }}{{ $schedule->pay_month }} {{ $schedule->pay_year }}{{ ugandan_shillings($total_net_pay) }}{{ streamline_date($schedule->due_date) }}{{ $schedule->payment_date ? streamline_date($schedule->payment_date) : 'Not Paid' }}{{ get_full_name($schedule->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date_time($schedule->created_at) }}Details
    -
    - -
    - -

    {{ __('payroll.total_net_pay') }}: {{ ugandan_shillings($totals) }}

    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Payroll/Resources/views/payroll_schedule/print_details.blade.php b/docker/statistics/Modules/Payroll/Resources/views/payroll_schedule/print_details.blade.php deleted file mode 100644 index b79ae43e..00000000 --- a/docker/statistics/Modules/Payroll/Resources/views/payroll_schedule/print_details.blade.php +++ /dev/null @@ -1,165 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('payroll.payroll_schedule_name') }}{{ $schedule->name }}{{ __('payroll.created_by') }}{{ get_full_name($schedule->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ __('payroll.created_at') }}{{ streamline_date_time($schedule->created_at) }}
    {{ __('payroll.payment_year') }}{{ $schedule->pay_year }}{{ __('payroll.payment_month') }}{{ $schedule->pay_month }}{{ __('payroll.due_date') }}{{ streamline_date($schedule->due_date) }}
    {{ __('payroll.salaries_expenses_account') }}{{ $expense_accounts[$schedule->salaries_expense_account] }}{{ __('payroll.tax_expense_account') }}{{ $expense_accounts[$schedule->tax_expense_account] }}{{ __('payroll.social_security_expense_account') }}{{ $expense_accounts[$schedule->social_security_expense_account] }}
    {{ __('payroll.salaries_payable_account') }}{{ $payable_accounts[$schedule->salaries_payable_account] }}{{ __('payroll.tax_payable_account') }}{{ $payable_accounts[$schedule->tax_payable_account] }}{{ __('payroll.social_security_payable_account') }}{{ $payable_accounts[$schedule->social_security_payable_account] }}
    {{ __('payroll.memo') }}{{ $schedule->memo }}
    - -

    - - - - - - - - - - - - - - - - - - @php - $payroll_category_arr = explode(",", $schedule->payroll_category); - $employee_id_arr = explode(",", $schedule->employee_id); - $basic_pay_arr = explode(",", $schedule->basic_pay); - $allowances_arr = explode(",", $schedule->allowances); - $gross_pay_arr = explode(",", $schedule->gross_pay); - $tax_amount_arr = explode(",", $schedule->tax_amount); - $social_security_amount_arr = explode(",", $schedule->social_security_amount); - $deductions_arr = explode(",", $schedule->deductions); - $total_deductions_arr = explode(",", $schedule->total_deductions); - $net_pay_arr = explode(",", $schedule->net_pay); - - $basic_pay_total = 0; - $allowances_total = 0; - $gross_pay_total = 0; - $tax_amount_total = 0; - $social_security_amount_total = 0; - $deductions_total = 0; - $total_deductions_total = 0; - $net_pay_total = 0; - @endphp - - @for($i = 0; $i < count($employee_id_arr); $i++) - @php - $employee = \Illuminate\Support\Facades\DB::table('payrolls')->where('id', $employee_id_arr[$i])->first(); - $patient = \Illuminate\Support\Facades\DB::table('patients')->where('id', $employee->patient_id)->first(); - - $basic_pay_total += $basic_pay_arr[$i]; - $allowances_total += $allowances_arr[$i]; - $gross_pay_total += $gross_pay_arr[$i]; - $tax_amount_total += $tax_amount_arr[$i]; - $social_security_amount_total += $social_security_amount_arr[$i]; - $deductions_total += $deductions_arr[$i]; - $total_deductions_total += $total_deductions_arr[$i]; - $net_pay_total += $net_pay_arr[$i]; - @endphp - - - - {{ Form::hidden('payroll_category[]', $employee->payroll_category) }} - - - - - - - - - - - @endfor - - - - - - - - - - - - - - -
    {{ __('payroll.employee_name') }}{{ __('payroll.payroll_category') }}{{ __('payroll.basic_pay') }}{{ __('payroll.allowances') }}{{ __('payroll.gross_pay') }}{{ __('payroll.tax_amount') }}{{ __('payroll.social_security_amount') }}{{ __('payroll.deductions') }}{{ __('payroll.total_deductions') }}{{ __('payroll.net_pay') }}
    {{ $patient->first_name . ' ' . $patient->last_name }} ({{ $patient->number }}){{ $payroll_categories[$employee->payroll_category] }}{{ ugandan_shillings($basic_pay_arr[$i]) }}{{ ugandan_shillings($allowances_arr[$i]) }}{{ ugandan_shillings($gross_pay_arr[$i]) }}{{ ugandan_shillings($tax_amount_arr[$i]) }}{{ ugandan_shillings($social_security_amount_arr[$i]) }}{{ ugandan_shillings($deductions_arr[$i]) }}{{ ugandan_shillings($total_deductions_arr[$i]) }}{{ ugandan_shillings($net_pay_arr[$i]) }}
    TOTALS{{ ugandan_shillings($basic_pay_total) }}{{ ugandan_shillings($allowances_total) }}{{ ugandan_shillings($gross_pay_total) }}{{ ugandan_shillings($tax_amount_total) }}{{ ugandan_shillings($social_security_amount_total) }}{{ ugandan_shillings($deductions_total) }}{{ ugandan_shillings($total_deductions_total) }}{{ ugandan_shillings($net_pay_total) }}
    -
    - - diff --git a/docker/statistics/Modules/Payroll/Routes/api.php b/docker/statistics/Modules/Payroll/Routes/api.php deleted file mode 100644 index 50755bdb..00000000 --- a/docker/statistics/Modules/Payroll/Routes/api.php +++ /dev/null @@ -1,18 +0,0 @@ -get('/payroll', function () { - return "Payroll"; -}); diff --git a/docker/statistics/Modules/Payroll/Routes/web.php b/docker/statistics/Modules/Payroll/Routes/web.php deleted file mode 100644 index f4cf8fc1..00000000 --- a/docker/statistics/Modules/Payroll/Routes/web.php +++ /dev/null @@ -1,65 +0,0 @@ - ['auth', 'disablebackbutton', 'user-locale','subscription-tracking', 'password-expiry']], function () { - /* Payroll Routes */ - Route::any('/payroll/make_payment{id}', 'PayrollController@make_payment')->name('payroll.make_payment'); - Route::any('/payroll/save_payment', 'PayrollController@save_payment')->name('payroll.save_payment'); - Route::any('/payroll/view_payroll_payments', 'PayrollController@view_payroll_payments')->name('payroll.view_payroll_payments'); - Route::any('/payroll/destroy_payslip{id}', 'PayrollController@destroy_payslip')->name('payroll.destroy_payslip'); - Route::get('/payroll/inactive_payslips', 'PayrollController@inactive_payslips')->name('payroll.inactive_payslips'); - Route::post('/payroll/activate_payslip{id}', 'PayrollController@activate_payslip')->name('payroll.activate_payslip'); - Route::any('/payroll/edit_payslip{id}', 'PayrollController@edit_payslip')->name('payroll.edit_payslip'); - Route::any('/payroll/update_payslip', 'PayrollController@update_payslip')->name('payroll.update_payslip'); - Route::any('/payroll/view_payslip{id}', 'PayrollController@view_payslip')->name('payroll.view_payslip'); - Route::any('/payroll/view_payroll_member_details{id}', 'PayrollController@view_payroll_member_details')->name('payroll.view_payroll_member_details'); - Route::get('/payroll/calculate_nssf', 'PayrollController@calculate_nssf'); - Route::get('/payroll/calculate_paye', 'PayrollController@calculate_paye'); - Route::any('/payroll/deactivate{id}', 'PayrollController@deactivate')->name('payroll.deactivate'); - Route::get('/payroll/inactive', 'PayrollController@inactive')->name('payroll.inactive'); - Route::post('/payroll/activate{id}', 'PayrollController@activate')->name('payroll.activate'); - Route::get('/payroll/bulk_create', 'PayrollController@bulk_create')->name('payroll.bulk_create'); - Route::any('/payroll/bulk_store', 'PayrollController@bulk_store')->name('payroll.bulk_store'); - Route::any('/payroll/bulk_edit', 'PayrollController@bulk_edit')->name('payroll.edit.bulk_edit'); - Route::any('/payroll/bulk_update', 'PayrollController@bulk_update')->name('payroll.bulk_update'); - Route::any('/payroll/create_bulk_payment', 'PayrollController@create_bulk_payment')->name('payroll.create_bulk_payment'); - Route::any('/payroll/store_bulk_payment', 'PayrollController@store_bulk_payment')->name('payroll.store_bulk_payment'); - Route::any('/payroll/add_new_department_dynamically', 'PayrollController@add_new_department_dynamically')->name('payroll.add_new_department_dynamically'); - Route::any('/payroll/allowances_or_deductions/{id}', 'PayrollController@allowances_or_deductions'); - Route::any('/payroll/add_allowances_or_deductions/{id}', 'PayrollController@add_allowances_or_deductions'); - Route::any('/payroll/save_allowances_or_deductions', 'PayrollController@save_allowances_or_deductions')->name('payroll.save_allowances_or_deductions'); - Route::any('/payroll/allowance_or_deductions_receipt/{id}', 'PayrollController@allowance_or_deductions_receipt'); - Route::any('/payroll/get_allowance_or_deductions/', 'PayrollController@get_allowance_or_deductions'); - Route::any('/payroll/remove_allowance_deduction/{id}', 'PayrollController@remove_allowance_deduction'); - Route::any('/payroll/index_search/', 'PayrollController@index_search')->name('payroll.index_search'); - Route::any('/payroll/print_staff_details/{id}', 'PayrollController@print_staff_details')->name('payroll.print_staff_details'); - Route::any('/payroll/print_allowances_or_deductions/{id}', 'PayrollController@print_allowances_or_deductions'); - Route::resource('payroll', 'PayrollController'); - - /* Payroll Defaults Routes */ - Route::any('/payroll_defaults/edit_nssf_rate', 'PayrollDefaultsController@edit_nssf_rate')->name('payroll_defaults.edit_nssf_rate'); - Route::any('/payroll_defaults/save_nssf_rate', 'PayrollDefaultsController@save_nssf_rate')->name('payroll_defaults.save_nssf_rate'); - Route::any('/payroll_defaults/edit_tax_rate', 'PayrollDefaultsController@edit_tax_rate')->name('payroll_defaults.edit_tax_rate'); - Route::any('/payroll_defaults/save_tax_rate', 'PayrollDefaultsController@save_tax_rate')->name('payroll_defaults.save_tax_rate'); - - /* Payroll Categories Routes */ - Route::get('/payroll_categories/inactive', 'PayrollCategoriesController@inactive')->name('payroll_categories.inactive'); - Route::post('/payroll_categories/activate{id}', 'PayrollCategoriesController@activate')->name('payroll_categories.activate'); - Route::resource('payroll_categories', 'PayrollCategoriesController'); - - /* Payroll Categories Routes */ - Route::get('/payroll_salary_scales/inactive', 'PayrollSalaryScaleController@inactive')->name('payroll_salary_scales.inactive'); - Route::post('/payroll_salary_scales/activate{id}', 'PayrollSalaryScaleController@activate')->name('payroll_salary_scales.activate'); - Route::resource('payroll_salary_scales', 'PayrollSalaryScaleController'); - - /* Payroll Schedules Routes */ - Route::get('/payroll_schedules/inactive', 'PayrollScheduleController@inactive')->name('payroll_schedules.inactive'); - Route::post('/payroll_schedules/activate{id}', 'PayrollScheduleController@activate')->name('payroll_schedules.activate'); - Route::any('/payroll_schedules/create', 'PayrollScheduleController@create')->name('payroll_schedules.create'); - Route::any('/payroll_schedules/save_schedule', 'PayrollScheduleController@save_schedule')->name('payroll_schedules.save_schedule'); - Route::any('/payroll_schedules/index', 'PayrollScheduleController@index')->name('payroll_schedules.index'); - Route::any('/payroll_schedules/get_allowance_deductions_details', 'PayrollScheduleController@get_allowance_deductions_details')->name('payroll_schedules.get_allowance_deductions_details'); - Route::any('/payroll_schedules/details/{id}', 'PayrollScheduleController@details')->name('payroll_schedules.details'); - Route::any('/payroll_schedules/print_details/{id}', 'PayrollScheduleController@print_details')->name('payroll_schedules.print_details'); -}); \ No newline at end of file diff --git a/docker/statistics/Modules/Payroll/bitbucket-pipelines.yml b/docker/statistics/Modules/Payroll/bitbucket-pipelines.yml deleted file mode 100644 index e850a8fd..00000000 --- a/docker/statistics/Modules/Payroll/bitbucket-pipelines.yml +++ /dev/null @@ -1,19 +0,0 @@ -image: alpine/git:latest - -pipelines: - branches: - main: - - step: - name: Merge To Beta - script: - - git remote set-url origin https://Kabricks:${APP_SECRET}@bitbucket.org/dcsammi/${BITBUCKET_REPO_SLUG} - - git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*" - - git fetch - - git checkout beta - - git merge main - - git commit --amend -m "[skip ci] Merge changes from main" - - git push - - step: - name: Deploy To Test - script: - - echo "Ready to deploy to demo or production!" diff --git a/docker/statistics/Modules/Payroll/module.json b/docker/statistics/Modules/Payroll/module.json deleted file mode 100644 index f128aa30..00000000 --- a/docker/statistics/Modules/Payroll/module.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "Payroll", - "alias": "payroll", - "description": "Payroll", - "keywords": [], - "priority": 0, - "providers": [ - "Modules\\Payroll\\Providers\\PayrollServiceProvider" - ], - "files": [] -} diff --git a/docker/statistics/Modules/Pharmacy/Config/config.php b/docker/statistics/Modules/Pharmacy/Config/config.php deleted file mode 100644 index 2f5188c3..00000000 --- a/docker/statistics/Modules/Pharmacy/Config/config.php +++ /dev/null @@ -1,5 +0,0 @@ - 'Pharmacy' -]; diff --git a/docker/statistics/Modules/Pharmacy/Http/Controllers/Controller.php b/docker/statistics/Modules/Pharmacy/Http/Controllers/Controller.php deleted file mode 100755 index f2089691..00000000 --- a/docker/statistics/Modules/Pharmacy/Http/Controllers/Controller.php +++ /dev/null @@ -1,13 +0,0 @@ -middleware('auth'); - $this->middleware('permission:pharmacy-incoming-prescriptions', ['only' => ['index']]); - $this->middleware('permission:pharmacy-ward-dispensing', ['only' => ['store', 'ward_dispensing']]); - $this->middleware('permission:pharmacy-stock-sheet', ['only' => ['stock_sheet']]); - $this->middleware('permission:pharmacy-optical-stock-sheet', ['only' => ['pharmacy_optical_stock_sheet']]); - $this->middleware('permission:pharmacy-drug-requisition', ['only' => ['requisition_for_drugs', 'store_requisition']]); - $this->middleware('permission:pharmacy-saved-requisitions', ['only' => ['select_temporary_requisition', 'edit_temporary_requisition']]); - $this->middleware('permission:pharmacy-previous-requisitions', ['only' => ['previous_drug_requisitions', 'edit_previous_requisition', 'update_previous_requisition']]); - $this->middleware('permission:confirm-prescriptions', ['only' => ['confirm_prescriptions','confirm_dispensing_details','store_prescription_confirmation','view_dispensing_details_error']]); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() { - - $today = Carbon::today()->toDateString(); - $display = "Report for ".streamline_date($today); - - if(is_incoming_prescriptions_feature_enabled()){ - $pending_unpaid_prescriptions = Treatment::where(['confirmation_status' => 1,'dispense_status' => 0, 'payment_status'=> 0])->whereDate('created_at', $today)->orderBy('created_at', 'desc')->get(); - $pending_paid_prescriptions = Treatment::where(['confirmation_status' => 1,'dispense_status' => 0, 'payment_status'=> 1])->whereDate('created_at', $today)->orderBy('created_at', 'desc')->get(); - $confirmed_unpaid_prescriptions = Treatment::where(['confirmation_status' => 1,'dispense_status' => 1, 'payment_status'=> 0])->whereDate('created_at', $today)->orderBy('created_at', 'desc')->get(); - $confirmed_paid_prescriptions = Treatment::where(['confirmation_status' => 1,'dispense_status' => 1, 'payment_status'=> 1])->whereDate('created_at', $today)->orderBy('created_at', 'desc')->get(); - } else{ - $pending_unpaid_prescriptions = Treatment::where(['dispense_status' => 0, 'payment_status'=> 0])->whereDate('created_at', $today)->orderBy('created_at', 'desc')->get(); - $pending_paid_prescriptions = Treatment::where(['dispense_status' => 0, 'payment_status'=> 1])->whereDate('created_at', $today)->orderBy('created_at', 'desc')->get(); - $confirmed_unpaid_prescriptions = Treatment::where(['dispense_status' => 1, 'payment_status'=> 0])->whereDate('created_at', $today)->orderBy('created_at', 'desc')->get(); - $confirmed_paid_prescriptions = Treatment::where(['dispense_status' => 1, 'payment_status'=> 1])->whereDate('created_at', $today)->orderBy('created_at', 'desc')->get(); - } - - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - - return view('pharmacy::pharmacy.index', compact('pending_paid_prescriptions', 'pending_unpaid_prescriptions','confirmed_paid_prescriptions', - 'confirmed_unpaid_prescriptions', 'categories', 'display')); - } - - public function search(Request $request){ - - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $display = dateLabelSetter2($request); - $filters = []; - - if(is_incoming_prescriptions_feature_enabled()){ - $filters[] = ['confirmation_status', '=', 1]; - } - - if (isset($request->patient_id) && $request->patient_id != 0) { - $filters[] = ['patient_id', '=', $request->patient_id]; - $pending_unpaid_prescriptions = Treatment::where(['patient_id' => $request->patient_id,'dispense_status' => 0, 'payment_status'=> 0]) - ->where($filters)->orderBy('created_at', 'desc')->get(); - $pending_paid_prescriptions = Treatment::where(['patient_id' => $request->patient_id,'dispense_status' => 0, 'payment_status'=> 1]) - ->where($filters)->orderBy('created_at', 'desc')->get(); - $confirmed_unpaid_prescriptions = Treatment::where(['patient_id' => $request->patient_id,'dispense_status' => 1, 'payment_status'=> 0]) - ->where($filters)->orderBy('created_at', 'desc')->get(); - $confirmed_paid_prescriptions = Treatment::where(['patient_id' => $request->patient_id,'dispense_status' => 1, 'payment_status'=> 1]) - ->where($filters)->orderBy('created_at', 'desc')->get(); - } else { - switch ($request->dates){ - case 'today': - $end = Carbon::today()->endOfDay(); - $start = Carbon::today()->startOfDay(); - break; - case 'yesterday': - $end = Carbon::yesterday()->endOfDay(); - $start = Carbon::yesterday()->startOfDay(); - break; - case 'custom_date': - $end = Carbon::parse($request->start_date)->endOfDay(); - $start = Carbon::parse($request->start_date)->startOfDay(); - break; - case 'custom_date_range': - $end = Carbon::parse($request->end_date)->endOfDay(); - $start = Carbon::parse($request->start_date)->startOfDay(); - } - - $pending_unpaid_prescriptions = Treatment::where(['dispense_status' => 0, 'payment_status'=> 0]) - ->whereBetween('created_at',[$start, $end])->where($filters)->orderBy('created_at', 'desc')->get(); - $pending_paid_prescriptions = Treatment::where(['dispense_status' => 0, 'payment_status'=> 1]) - ->whereBetween('created_at',[$start, $end])->where($filters)->orderBy('created_at', 'desc')->get(); - $confirmed_unpaid_prescriptions = Treatment::where(['dispense_status' => 1, 'payment_status'=> 0]) - ->whereBetween('created_at',[$start, $end])->where($filters)->orderBy('created_at', 'desc')->get(); - $confirmed_paid_prescriptions = Treatment::where(['dispense_status' => 1, 'payment_status'=> 1]) - ->whereBetween('created_at',[$start, $end])->where($filters)->orderBy('created_at', 'desc')->get(); - } - - return view('pharmacy::pharmacy.index', compact('pending_paid_prescriptions', 'pending_unpaid_prescriptions','confirmed_paid_prescriptions', - 'confirmed_unpaid_prescriptions', 'categories', 'display')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() { - // - } - - /** - * Store a new ward dispensing - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - // check if any drug has been selected - if(is_array($request->drug_id)){ - $ward_id = $request->ward; - $dispensation_date = Carbon::createFromFormat('d/m/Y', $request->dispensation_date)->toDateString(); - $drug_id_array = $request->drug_id; - $quantity_returned_array = $request->quantity_returned; - $quantity_dispensed_array = $request->quantity_dispensed; - $total_array = $request->total; - $stock_array = $request->stock; - $pharmacy_comment_array = $request->pharmacy_comment; - - for ($x = 0; $x < count($drug_id_array); $x++) { - //Incrementing the quantity in the drugs table with quantity returned every time the query runs - $drug = Drug::find($drug_id_array[$x]); - $new_stock_after_return = $drug->pharmacy_stock + $quantity_returned_array[$x]; - $drug->pharmacy_stock = $new_stock_after_return; - $drug->updated_by = Auth::id(); - $drug->updated_at = Carbon::now(); - $drug->update(); - - //Decrementing the quantity in the drugs table with the quantity dispensed every time the query runs - $new_stock_after_dispensing = $drug->pharmacy_stock - $quantity_dispensed_array[$x]; - $drug->pharmacy_stock = $new_stock_after_dispensing; - $drug->updated_by = Auth::id(); - $drug->updated_at = Carbon::now(); - $drug->update(); - } - - //Run the query to insert the ward dispensing into the ward dispensing table - $ward_dispensing = new WardDispensing; - $ward_dispensing->ward_id = $ward_id; - $ward_dispensing->drug_id = implode(',', $drug_id_array); - $ward_dispensing->quantity_returned = implode(',', $quantity_returned_array); - $ward_dispensing->quantity_dispensed = implode(',', $quantity_dispensed_array); - $ward_dispensing->stock = implode(',', $stock_array); - $ward_dispensing->total = implode(',', $total_array); - $ward_dispensing->dispensation_date = $dispensation_date; - $ward_dispensing->comment = implode(',', $pharmacy_comment_array); - $ward_dispensing->received_by = $request->received_by; - $ward_dispensing->created_by = Auth::id(); - if ($ward_dispensing->save()) { - flash('Drugs have been successfully dispensed')->success(); - return redirect('ward_dispensing'); - } - flash('Error in dispensing. Kindly contact the system admin ')->error(); - return redirect()->back(); - } else { - flash('Error in dispensing. Kindly contact the system admin ')->error(); - return redirect()->back(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - // - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - // - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - // - } - - /* view dispensing details */ - - public function view_dispensing_details(Request $request) { - $treatment_id = $request->treatment_id; - $patient_id = $request->patient_id; - $episode_id = $request->episode_id; - - $patient = Patient::where(['id' => $patient_id])->first(); - $treatment = Treatment::find($treatment_id); - - $previous_treatments = Treatment::where('patient_id',$patient_id)->where('episode_id', '!=', $episode_id)->take(5)->get(); - - return view('pharmacy::pharmacy.view_dispensing_details', compact('patient_id', 'treatment_id', 'patient', 'treatment', 'previous_treatments')); - } - - /** - * Return to dispensing view with errors - * - * @param $treatment_id - * @param $patient_id - * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View - */ - public function view_dispensing_details_error($treatment_id, $patient_id) { - - $patient = Patient::where(['id' => $patient_id])->first(); - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $marital_statuses = DB::table('marital_statuses')->pluck("name", "id"); - $drug_categories = DB::table('drug_categories')->get(); - $treatment = Treatment::find($treatment_id); - - //allergies and alerts - $known_patient_allergies = Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->pluck('name', 'id'); - - return view('pharmacy::pharmacy.view_dispensing_details', compact('patient_id', 'treatment_id', 'patient', 'categories', 'marital_statuses', 'drug_categories', 'treatment', 'known_patient_alerts', 'known_patient_allergies', 'drug_categories_array')); - } - - /* dispense prescriptions */ - - public function dispense_prescription(Request $request) { - $patient_id = $request->patient_id; - $treatment_id = $request->treatment_id; - - $drug_ids_array = $request->drug_id; - $quantity_to_dispense_array = $request->quantity_to_dispense; - - $dose_array = $request->dose; - $dose_2_array = isset($request->dose2) ? $request->dose2 : []; - $frequency_array = $request->frequency; - $duration_array = $request->duration; - $instructions_to_patient_array = $request->instructions; - $to_take_away = $request->tta; - $comment = $request->comment; - $purchased_elsewhere = $request->purchased_elsewhere; - $purchased_elsewhere_array = []; - /* - 1.reduce pharmacy_stock of that drug that's been dispensed - 2.insert into patient_dispensing - 3.insert into prescription error if there is one - 4.update treatment and set dispense status to 1 where id = treatment_id. - 5.issue patient dispensed receipt - */ - for ($x = 0; $x < count($drug_ids_array); $x++) { - if (isset($purchased_elsewhere) && count($purchased_elsewhere) > 0 && in_array($drug_ids_array[$x], $purchased_elsewhere)) { - $purchased_elsewhere_array[] = 1; - } else { - $drug = Drug::find($drug_ids_array[$x]); - - if ($drug) { - if (get_inventory_reduction_point() == 1) { - $current_stock = $drug->pharmacy_stock; - $new_stock = $current_stock - $quantity_to_dispense_array[$x]; - $drug->pharmacy_stock = $new_stock; - $drug->update(); - } - } else { - $quantity_to_dispense_array[$x] = 0; - } - - $purchased_elsewhere_array[] = 0; - } - } - - /* ========= batch calculations =========== */ - $batch_drug_ids_array = $request->batch_drug_id; - $batched_dispensed_array = $request->batch_dispensed_from?? []; - $batch_quantity_dispensed_array = $request->batch_quantity_to_dispense; - for ($x = 0; $x < count($batched_dispensed_array); $x++) { - if (isset($purchased_elsewhere) && count($purchased_elsewhere) > 0 && in_array($batch_drug_ids_array[$x] ?? 0, $purchased_elsewhere)){ - //in purchased elsewhere so do not reduce - } else{ - if (get_inventory_reduction_point() == 1) { - reduce_batch_item_stock($item_type = 1,$batch_drug_ids_array[$x],$batched_dispensed_array[$x]??0, 'drugs', 'pharmacy_stock',$batch_quantity_dispensed_array[$x] ?? 0, 'treatments','Dispensing', $treatment_id, $patient_id); - - // reduce_batch_item_from_pharmacy($item_type = 1, $batch_drug_ids_array[$x] ?? 0, $batched_dispensed_array[$x] ?? 0, $batch_quantity_dispensed_array[$x] ?? 0, "treatments", $treatment_id, $patient_id); - } - } - } - /* ========= end of batch calculations ==== */ - - //Inserting patient dispensing - $patient_dispensing = new PatientDispensing; - $patient_dispensing->patient_id = $patient_id; - $patient_dispensing->treatment_id = $treatment_id; - $patient_dispensing->drugs = implode(',', $drug_ids_array); - $patient_dispensing->dose = implode(',', $dose_array); - $patient_dispensing->dose2 = implode(',', $dose_2_array); - $patient_dispensing->drug_frequency = implode(',', $frequency_array); - $patient_dispensing->duration = implode(',', $duration_array); - $patient_dispensing->quantity_dispensed = implode(',', $quantity_to_dispense_array); - $patient_dispensing->dispensed = 1; - $patient_dispensing->instructions = implode(',', $instructions_to_patient_array); - $patient_dispensing->tta = $to_take_away; - $patient_dispensing->prescription_date = Carbon::now(); - $patient_dispensing->pharmacy_comment = $comment; - $patient_dispensing->purchased_elsewhere = implode(",", $purchased_elsewhere_array); - $patient_dispensing->created_by = Auth::id(); - $patient_dispensing->save(); - - $dispensing_id = $patient_dispensing->id; // get the last inserted ID - - //Updating the treatment table to show that the previous prescription was altered - $treatment_model = Treatment::find($treatment_id); - $treatment_model->dispense_status = 1; - $treatment_model->purchased_elsewhere = implode(",", $purchased_elsewhere_array); - /*====== save the current selling price now for those patients that will pay later when price has changed ====*/ - $unit_selling_prices_array = []; - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - for ($i=0; $i < count($drug_ids_array) ; $i++) { - $drug_insurance_status = get_name($drug_ids_array[$i], "id", "insurance_coverage", "drugs"); - if ($price_list_id) { - $treatment_amount = get_price_list_category_price($price_list_id, 3, $drug_ids_array[$i]); - if($drug_insurance_status == 1 && patient_insurance_status($patient_id) == 1){ - $treatment_amount = get_chi_price_list_category_price($price_list_id, 3, $drug_ids_array[$i]); - } - } else { - // check if drug and patient is eligible for insurance - if($drug_insurance_status == 1 && patient_insurance_status($patient_id) == 1){ - $treatment_amount = get_name($drug_ids_array[$i], "id", "insured_price", "drugs"); - } else { - $treatment_amount = get_name($drug_ids_array[$i], "id", "non_insured_price", "drugs"); - } - } - $unit_selling_prices_array[] = $treatment_amount; - } - /* =============================================== */ - $treatment_model->unit_selling_prices = implode(",", $unit_selling_prices_array); - $treatment_model->save(); - - flash('Treatment dispensed successfully')->success(); - return redirect('patient_dispensing_receipt/' . $dispensing_id); - } - - public function edit_dispensing_details($patient_id, $treatment_id){ - $treatment = Treatment::find($treatment_id); - session()->put('alter_episode_id', $treatment->episode_id); - session()->put('alter_patient_id', $patient_id); - return redirect('/prescriptions/create'); - } - - public function save_altered_prescription(Request $request){ - $patient_id = $request->patient_id; - $treatment_id = $request->treatment_id; - - $drug_ids_array = $request->drug_id; - $quantity_to_dispense_array = $request->quantity_to_dispense; - - $dose_array = $request->dose; - $dose_2_array = isset($request->dose2) ? $request->dose2 : []; - $frequency_array = $request->frequency; - $duration_array = $request->duration; - $instructions_to_patient_array = $request->instructions; - $prescribed_by = $request->prescribed_by; - $to_take_away = $request->tta; - $pharmacist = Auth::id(); - $comment = $request->comment; - $type_of_error = []; - isset($request->wrong_dosage) ? $type_of_error[] = "Wrong dosage" : ""; - isset($request->wrong_frequency) ? $type_of_error[] = "Wrong frequency" : ""; - isset($request->inadequate_funds) ? $type_of_error[] = "Inadequate Funds" : ""; - isset($request->other_error) ? $type_of_error[] = "Other error" : ""; - $type_of_error = implode(',', $type_of_error); - $severity_of_error = $request->severity_of_error; - - // update the drug stock levels - for ($x = 0; $x < count($drug_ids_array); $x++) { - $drug = Drug::find($drug_ids_array[$x]); - $current_stock = $drug->pharmacy_stock; - $new_stock = $current_stock - $quantity_to_dispense_array[$x]; - $drug->pharmacy_stock = $new_stock; - $drug->update(); - } - - // inserting patient dispensing - $patient_dispensing = new PatientDispensing; - $patient_dispensing->patient_id = $patient_id; - $patient_dispensing->treatment_id = $treatment_id; - $patient_dispensing->drugs = implode(',', $drug_ids_array); - $patient_dispensing->dose = implode(',', $dose_array); - $patient_dispensing->dose2 = implode(',', $dose_2_array); - $patient_dispensing->drug_frequency = implode(',', $frequency_array); - $patient_dispensing->duration = implode(',', $duration_array); - $patient_dispensing->quantity_dispensed = implode(',', $quantity_to_dispense_array); - $patient_dispensing->dispensed = 1; - $patient_dispensing->instructions = implode(',', $instructions_to_patient_array); - $patient_dispensing->tta = $to_take_away; - $patient_dispensing->prescription_date = Carbon::now(); - $patient_dispensing->pharmacy_comment = $comment; - $patient_dispensing->created_by = Auth::id(); - $patient_dispensing->save(); - $dispensing_id = $patient_dispensing->id; - - // updating the treatment table to show that the previous prescription was altered - $treatment_model = Treatment::find($treatment_id); - $treatment_model->altered = $patient_dispensing->id; - $treatment_model->dispense_status = 1; - $treatment_model->update(); - - // inserting the prescription errors - $prescription_error = new PrescriptionError; - $prescription_error->patient_id = $patient_id; - $prescription_error->patient_dispensings_id = $dispensing_id; - $prescription_error->type_of_error = $type_of_error; - $prescription_error->severity_of_error = $severity_of_error; - $prescription_error->prescriber = $prescribed_by; - $prescription_error->pharmacist = Auth::id(); - $prescription_error->created_by = Auth::id(); - $prescription_error->comment = $comment; - $prescription_error->save(); - - flash('Treatment altered and dispensed successfully')->success(); - - return redirect('patient_dispensing_receipt/' . $dispensing_id); - } - - /* function for ward dispensing */ - - public function ward_dispensing(Request $request) { - $drugs = DB::table('drugs')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id'); - $wards = DB::table('wards')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $wards = ['' => '- select -'] + $wards; - - $staff_array = $this->userService->pluckUserFullName(); - - if (isset($request->drugs_to_dispense)) { - $selected_drugs_array = $request->drugs_to_dispense; - $drugs_to_dispense_collection = Drug::whereIn('id', $selected_drugs_array)->get(); - return view('pharmacy::pharmacy.ward_dispensing', compact('drugs', 'wards', 'drugs_to_dispense_collection', 'staff_array')); - } - - return view('pharmacy::pharmacy.ward_dispensing', compact('drugs', 'wards', 'staff_array')); - } - - // view past ward dispensing details - public function view_ward_dispensing(Request $request){ - $wards = Ward::orderBy('name')->pluck('name', 'id')->toArray(); - $wards = ['' => '- select -'] + $wards; - - if (isset($request->ward)){ - $search_complete = true; - $ward_id = $request->ward; - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - - $ward_dispensing = WardDispensing::where('ward_id', $ward_id) - ->whereBetween('created_at', [$start_date, $end_date]) - ->paginate(50); - - return view('pharmacy::pharmacy.view_ward_dispensing', compact('wards', 'search_complete', 'ward_id', 'start_date', 'end_date', 'ward_dispensing')); - } else { - $search_complete = false; - return view('pharmacy::pharmacy.view_ward_dispensing', compact('wards', 'search_complete')); - } - } - - /* view pharmacy stock sheet */ - - public function stock_sheet() { - $drugs = DB::table('drugs')->where('available', 1)->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - - if (count($drugs) < 1) { - flash()->error("There is out of stock of drugs"); - return redirect('/drugs/'); - } else { - return view('pharmacy::pharmacy.stock_sheet', compact('drugs')); - } - } - - - /* patient dispensing receipt */ - public function patient_dispensing_receipt($dispensing_id) { - $patient_dispensing = PatientDispensing::find($dispensing_id); - session()->put('patient_id', $patient_dispensing->patient_id); - $episode_id = PatientEpisode::where([['patient_id', $patient_dispensing->patient_id],['treatment_id', $patient_dispensing->treatment_id]])->first(['id']); - $hospital_details = HospitalInformation::find(1); - return view('pharmacy::pharmacy.patient_dispensing_receipt', compact('patient_dispensing', 'hospital_details', 'episode_id')); - } - - /* requisition for drugs */ - public function requisition_for_drugs(Request $request) { - $quotation_type_options = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $quotation_type_options = ['' => '- Select Requistion Type -'] + $quotation_type_options; - $results = []; - $item_type = 0; - $names_array = []; - if (isset($request->quotation_type)) { - $item_type = $request->quotation_type; //1-drug 2-sundry 3-dental 4-radiology 5-Lab - if ($item_type == 1) { - $names_array = DB::table('drugs')->where('available', 1)->orderBy('name')->whereNull('deleted_at')->pluck('name','id')->prepend('All Drugs', 'all_items'); - } elseif ($item_type == 2) { - $names_array = DB::table('sundries')->where('available', 1)->orderBy('name')->whereNull('deleted_at')->pluck('name','id')->prepend('All Sundries', 'all_items'); - } elseif ($item_type == 3) { - $names_array = DB::table('dentals')->orderBy('name')->whereNull('deleted_at')->pluck('name','id')->prepend('All Dentals', 'all_items'); - } elseif ($item_type == 4) { - $names_array = DB::table('radiologies')->orderBy('name')->whereNull('deleted_at')->pluck('name','id')->prepend('All Radiology Items', 'all_items'); - } elseif ($item_type == 5) { - $names_array = DB::table('labs')->orderBy('name')->whereNull('deleted_at')->pluck('name','id')->prepend('All Labs', 'all_items'); - } elseif ($item_type == 6) { - $names_array = DB::table('general_items')->orderBy('name')->whereNull('deleted_at')->pluck('name','id')->prepend('All General Items', 'all_items'); - } elseif ($item_type == 7) { - $names_array = DB::table('eye_glasses')->orderBy('name')->whereNull('deleted_at')->pluck('name','id')->prepend('All Optical Items', 'all_items'); - } - } - - return view('pharmacy::pharmacy.requisition_for_drugs', compact('quotation_type_options', 'results', 'item_type','names_array')); - } - - /* handle the search from drug requisitions */ - public function drug_requisition_search(Request $request) { - $quotation_type_options = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $quotation_type_options = ['' => '- Select Requistion Type -'] + $quotation_type_options; - $results = null; - $item_type = $request->item_type; - $item_ids_array = $request->drug_name; - $names_array = []; - if (isset($request->item_type)) { - if ($item_type == 1) { - $results = (in_array("all_items", $item_ids_array))? Drug::where('available', 1)->orderby('name', 'asc')->get() :Drug::whereIn('id', $item_ids_array)->where('available', 1)->orderBy('name','asc')->get(); - $names_array = Drug::where('available', 1)->orderby('name')->distinct()->pluck('name','id'); - } elseif ($item_type == 2) { - $results = (in_array("all_items", $item_ids_array))? Sundry::where('available', 1)->orderBy('name','asc')->get() :Sundry::whereIn('id', $item_ids_array)->where('available', 1)->orderBy('name','asc')->get(); - $names_array = Sundry::where('available', 1)->orderby('name')->distinct()->pluck('name','id'); - } elseif ($item_type == 3) { - $results = (in_array("all_items", $item_ids_array))? Dental::orderBy('name','asc')->get() :Dental::whereIn('id', $item_ids_array)->orderBy('name','asc')->get(); - $names_array = Dental::orderBy('name')->distinct()->pluck('name','id'); - } elseif ($item_type == 4) { - $results = (in_array("all_items", $item_ids_array))? Radiology::orderBy('name','asc')->get():Radiology::whereIn('id', $item_ids_array)->orderBy('name','asc')->get(); - $names_array = Radiology::orderBy('name')->distinct()->pluck('name','id'); - } elseif ($item_type == 5) { - $results = (in_array("all_items", $item_ids_array))? Lab::orderBy('name','asc')->get() : Lab::whereIn('id', $item_ids_array)->orderBy('name','asc')->get(); - $names_array = Lab::orderBy('name')->distinct()->pluck('name','id'); - } elseif ($item_type == 6) { - $results = (in_array("all_items", $item_ids_array))? GeneralItem::orderBy('name','asc')->get() : GeneralItem::whereIn('id', $item_ids_array)->orderBy('name','asc')->get(); - $names_array = GeneralItem::orderBy('name')->distinct()->pluck('name','id'); - } elseif ($item_type == 7) { - $results =(in_array("all_items", $item_ids_array))? EyeGlasses::orderBy('name','asc')->get(): EyeGlasses::whereIn('id', $item_ids_array)->orderBy('name','asc')->get(); - $names_array = EyeGlasses::orderBy('name')->distinct()->pluck('name','id'); - } - } - - return view('pharmacy::pharmacy.requisition_for_drugs', compact('quotation_type_options', 'results', 'item_type','names_array')); - } - - /* store requisitions */ - - public function store_requisition(Request $request) { - $drug_id_array = $request->drug_id; - $quantity_array = $request->quantity; - $item_type = $request->item_type; - $user_id = Auth::id(); - - /* return back if no quantity has been filled */ - if (array_sum($quantity_array) < 1) { - flash('Please insert some values!')->error(); - return redirect()->back(); - } - - if (isset($request->save_for_later)) { - // insert into temporary requisitions table - $temporary_requisition = new TemporaryRequisition; - $temporary_requisition->quotation_type_id = $item_type; - $temporary_requisition->drug_id = implode(',', $drug_id_array); - $temporary_requisition->quantity_requested = implode(',', $quantity_array); - $temporary_requisition->created_by = $user_id; - if ($temporary_requisition->save()) { - flash('Requisition has been saved for later')->success(); - return redirect('select_temporary_requisition'); - } - return redirect()->back(); - } elseif (isset($request->complete_request)) { - /* - 1.insert into the requisitions table - 2.if it was a previously temporary requisition, do step 1(insert into requisitions) and update completion_status in the temporary table to 1 - */ - - $filtered_drugs_array = []; - $filtered_quantities_array = []; - $associative_requested_drugs_array = []; - for ($i=0; $i < count($drug_id_array) ; $i++) { - if ($quantity_array[$i] != "") { - $associative_requested_drugs_array[$drug_id_array[$i]] = $quantity_array[$i]; - $filtered_drugs_array[] = $drug_id_array[$i]; - $filtered_quantities_array[] = $quantity_array[$i]; - } - } - $new_requisition = new Requisition; - $new_requisition->quotation_type_id = $item_type; - $new_requisition->drug_id = implode(',', $filtered_drugs_array); - $new_requisition->quantity_requested = implode(',', $filtered_quantities_array); - $new_requisition->created_by = $user_id; - $new_requisition->save(); - - flash('Requisition number ' . $new_requisition->id . ' made successfully')->success(); - return redirect('/print_requisition_receipt/' . $new_requisition->id); - } elseif (isset($request->complete_previously_temporary_requisition)) { - $temporary_requisition_model = TemporaryRequisition::find($request->temporary_requisition_id); - $temporary_requisition_model->completion_status = 1; - $temporary_requisition_model->updated_by = $user_id; - $temporary_requisition_model->update(); - - $requisition_model = new Requisition; - $requisition_model->quotation_type_id = $temporary_requisition_model->quotation_type_id; - $requisition_model->drug_id = implode(',', $drug_id_array); - $requisition_model->quantity_requested = implode(',', $quantity_array); - $requisition_model->created_by = $user_id; - $requisition_model->save(); - - return redirect('/print_requisition_receipt/' . $requisition_model->id); - } elseif (isset($request->update_temporary_requisition)) { - $temporary_requisition_model = TemporaryRequisition::find($request->temporary_requisition_id); - $temporary_requisition_model->drug_id = implode(',', $drug_id_array); - $temporary_requisition_model->quantity_requested = implode(',', $quantity_array); - $temporary_requisition_model->updated_by = $user_id; - $temporary_requisition_model->update(); - flash('Requisition updated successfully')->success(); - return redirect('previous_drug_requisitions'); - } else { - flash('Please search for items')->error(); - return redirect()->back(); - } - } - - /* select and view temporary requisitions */ - - public function select_temporary_requisition(Request $request) { - $quotation_type_options = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $quotation_type_options = ['' => '- Select Requisition type -'] + $quotation_type_options; - $results = 0; - $quotation_type = 0; - if (isset($request->quotation_type)) { - $quotation_type = $request->quotation_type; - //1-drug 2-sundry 3-dental 4-radiology 5-Lab - $results = TemporaryRequisition::where(['quotation_type_id' => $quotation_type, 'completion_status' => 0])->orderBy('id', 'desc')->get(); - } - return view('pharmacy::pharmacy.select_temporary_requisitions', compact('quotation_type_options', 'results', 'quotation_type')); - } - - /* edit temporary requisition */ - - public function edit_temporary_requisition(Request $request) { - $quotation_type = $request->item_type; - $requisition_id = $request->requisition_id; - $suppliers = DB::table('suppliers')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $suppliers = ['' => '- select -'] + $suppliers; - $requisition_results = TemporaryRequisition::where(['id' => $requisition_id, 'completion_status' => 0])->orderBy('id', 'desc')->get(); - //1-drug 2-sundry 3-dental 4-radiology 5-Lab - if ($quotation_type == 1) { - $items = Drug::where('available', 1)->orderby('name', 'asc')->get(); - } elseif ($quotation_type == 2) { - $items = Sundry::where('available', 1)->orderby('name', 'asc')->get(); - } elseif ($quotation_type == 3) { - $items = Dental::orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 4) { - $items = Radiology::orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 5) { - $items = Lab::orderBy('name', 'asc')->get(); - } - return view('pharmacy::pharmacy.edit_temporary_requisition', compact('items', 'quotation_type', 'suppliers', 'requisition_id', 'requisition_results')); - } - - /* view previous drug quotations */ - public function previous_drug_requisitions(Request $request) { - - $quotation_type_options = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $quotation_type_options = ['' => '- Select Requisition type -'] + $quotation_type_options; - $results = []; - $item_type = ""; - $display = ""; - - if(isset($request->start_date) && isset($request->end_date)){ - - if (isset($request->quotation_type)) { - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date)->toDateString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->end_date)->toDateString(); - $start_date = Carbon::parse($start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($end_date)->endOfDay()->toDateTimeString(); - $results = Requisition::whereBetween('created_at',[$start_date, $end_date])->where('quotation_type_id',$request->quotation_type)->orderBy('id','desc')->get(); - } - - } - return view('pharmacy::pharmacy.previous_requisitions', compact('quotation_type_options','results','item_type','display')); - } - - /* edit a previous requisition */ - - public function edit_previous_requisition(Request $request) { - $requisition_id = $request->requisition_id; - $item_type = $request->item_type; - $results = DB::select("SELECT * FROM requisitions where id = {$requisition_id}"); - if ($item_type == 4 ||$item_type == 5 ) { - $results = get_requisition_all_batches($results,['store_stock','lab_stock'],['store_batches','lab_batches'],['total_store_stock','total_lab_stock'],$item_type); - }else{ - //if source is from labs for sundries - if ($item_type==2 && $results[0]->requisition_origin == 2){ - $results = get_all_batch_details($results,['store_stock','lab_stock'],['store_batches','lab_batches'],['total_store_stock','total_lab_stock'],$item_type); - } - // if source is from imaging for sundries - elseif ($item_type==2 && $results[0]->requisition_origin == 3){ - $results = get_all_batch_details($results,['store_stock','radiology_stock'],['store_batches','imaging_batches'],['total_store_stock','total_imaging_stock'],$item_type); - } - else $results = get_all_batch_details($results,['store_stock','pharmacy_stock'],['store_batches','pharmacy_batches'],['total_store_stock','total_pharmacy_stock'],$item_type); - } - return view('pharmacy::pharmacy.edit_previous_requisition', compact('requisition_id', 'item_type', 'results')); - } - - /* function to update edited previous requisition */ - public function update_previous_requisition(Request $request) { - $requisition_id = $request->requisition_id; - $quantity_requested_string = implode(',', $request->quantity_requested); - $drugs_string = implode(',', $request->drug_id); - $units_string = implode(',', $request->units); - - $requisition_model = Requisition::find(intval($requisition_id)); - if($requisition_model != null){ - //$requisition_model->drug_id = $drugs_string; - $requisition_model->quantity_requested = $quantity_requested_string; - if ($requisition_model->update()) { - flash('Requisition has been updated')->success(); - return redirect('/print_requisition_receipt/' . $requisition_id); - } - } - flash('Error occured while trying to update')->error(); - return redirect()->back(); - } - - /* pharmacy sundries stock sheet */ - public function sundries_stock_sheet() - { - $sundries = DB::table('sundries')->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - - if (empty($sundries)) { - flash()->error("There is out of stock of sundries"); - return redirect('/sundries/'); - } else { - return view('pharmacy::pharmacy.sundries_stock_sheet', compact('sundries')); - } - } - - /* update the sundries stock sheet */ - public function update_sundries_stock_sheet(Request $request) - { - $sundry_ids = $request->sundry_id; - $quantity = $request->quantity; - - for ($x = 0; $x < count($sundry_ids); $x++): - $sundry = Sundry::find($sundry_ids[$x]); - $sundry->pharmacy_stock = $quantity[$x]; - $update_store_stock = $sundry->update(); - endfor; - - if ($update_store_stock): - flash('Pharmacy Stock Levels Updated')->success(); - return redirect('pharmacy_sundries_stock_sheet'); - endif; - - flash('Sorry, unable to update stock')->error(); - return redirect()->back(); - } - - public function print_requisition_receipt($id) { - $requisition_model = Requisition::find($id); - $hospital_details = HospitalInformation::find(1); - $requisition_id = $id; - return view('pharmacy::pharmacy.requisition_receipt', compact('hospital_details', 'requisition_id', 'requisition_model')); - } - - /* list all unconfirmed prescriptions */ - public function confirm_prescriptions(Request $request) { - $search_text = ""; - $filters = []; - - if (isset($request->patient_id) && $request->patient_id != 0) { - array_push($filters, ['patient_id', '=', $request->patient_id]); - - $search_text = "Showing results for " . get_full_name($request->patient_id, 'id', 'first_name', 'last_name', 'patients') . " (" . get_name($request->patient_id, 'id', 'number', 'patients') . ")"; - } elseif($request->search_by == 0){ - // last 24 hours - array_push($filters, ['created_at', '>', Carbon::now()->subDay()]); - $search_text = "Showing prescriptions in the past 24 hours"; - } elseif($request->search_by == 1){ - // custom date - $start_date = Carbon::createFromFormat('d/m/Y', $request->reg_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->reg_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date]); - array_push($filters, ['created_at', '<', $end_date]); - - $search_text = "Showing prescriptions made between " . streamline_date_plain($start_date) . " and " . streamline_date_plain($end_date); - } elseif($request->search_by == 2){ - // custom date range - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date]); - array_push($filters, ['created_at', '<', $end_date]); - - $search_text = "Showing prescriptions made between " . streamline_date_plain($start_date) . " and " . streamline_date_plain($end_date); - } else { - // last 24 hours - array_push($filters, ['created_at', '>', Carbon::now()->subDay()]); - $search_text = "Showing prescriptions in the past 24 hours"; - } - - $unconfirmed_prescriptions = Treatment::where(['dispense_status' => 0]) - ->where(['confirmation_status' => 0]) - ->where($filters) - ->orderBy('created_at', 'desc') - ->get(); - - $confirmed_prescriptions = Treatment::where(['dispense_status' => 0]) - ->where(['confirmation_status' => 1]) - ->where(['payment_status' => 0]) - ->where($filters) - ->orderBy('created_at', 'desc') - ->get(); - - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - - return view('pharmacy::pharmacy.incoming_unconfirmed_prescriptions', compact('confirmed_prescriptions','unconfirmed_prescriptions', 'categories')); - } - - public function confirm_dispensing_details(Request $request) { - $treatment_id = $request->treatment_id; - $patient_id = $request->patient_id; - $episode_id = $request->episode_id; - - $patient = Patient::where(['id' => $patient_id])->first(); - $treatment = Treatment::find($treatment_id); - $previous_treatments = Treatment::where('patient_id',$patient_id)->where('episode_id', '!=', $episode_id)->take(5)->get(); - - return view('pharmacy::pharmacy.confirm_dispensation_details', compact('patient_id', 'treatment_id', 'patient', 'treatment', 'previous_treatments')); - } - - public function store_prescription_confirmation(Request $request) { - $purchased_elsewhere = $request->purchased_elsewhere; - - $treatment = Treatment::find($request->treatment_id); - - $purchased_elsewhere_array = []; - - $drugs = explode(",", $treatment->drugs); - - if (!is_null($purchased_elsewhere) && count($purchased_elsewhere) > 0) { - foreach ($drugs as $drug) { - if (in_array($drug, $purchased_elsewhere)) { - $purchased_elsewhere_array[] = 1; - } else { - $purchased_elsewhere_array[] = 0; - } - } - } else { - $purchased_elsewhere_array = array_fill(0, count($drugs), 0); - } - - $treatment->confirmation_status = 1; - $treatment->purchased_elsewhere = implode(",", $purchased_elsewhere_array); - $treatment->update(); - - flash('Treatment has been confirmed')->success(); - return redirect('confirm_prescriptions'); - } - - public function alter_dispensing_details(Request $request){ - $treatment_id = $request->treatment_id; - $patient_id = $request->patient_id; - - if (isset($request->alter)) { - $patient = Patient::where(['id' => $patient_id])->first(); - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $marital_statuses = DB::table('marital_statuses')->pluck("name", "id"); - $drug_categories = DB::table('drug_categories')->get(); - $treatment = Treatment::find($treatment_id); - $patient_dispensings = PatientDispensing::where(['treatment_id' => $treatment_id])->get(); - $dispensed_drugs_array = []; - //This is to handle altering a treatment where some of the drugs have been dispensed - if (count($patient_dispensings) > 0) { - foreach ($patient_dispensings as $patient_dispensing) { - $dispensed_drugs_array_exploded = explode(",", $patient_dispensing->drugs); - $dispensed_drugs_array = array_merge($dispensed_drugs_array, $dispensed_drugs_array_exploded); - } - } - $dosage_frequencies = DB::table('dosage_frequencies')->pluck("name", "id")->toArray(); - $drug_options = DB::table('drugs')->where('available', 1)->pluck("name", "id")->toArray(); - - /* make frequencies drop down that will be used by ajax to dynamically add another prescription */ - $frequencyDropDown = ''; - $frequencyDropDown .= ''; - $frequencies = DosageFrequency::orderBy('name', 'asc')->get(); - foreach ($frequencies as $frequency) { - $frequencyDropDown .= ''; - } - - /* make drugs drop down that will be used by ajax to dynamically add another prescription */ - $drugsDropDown = ''; - $drugsDropDown .= ''; - $drugs_drop_down = Drug::where('available', 1)->orderby('name', 'asc')->get(); - foreach ($drugs_drop_down as $drop_down) { - if ($drop_down->insurance_coverage == 1) { - $drugsDropDown .= ''; - } else { - $drugsDropDown .= ''; - } - } - $known_patient_allergies = Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id',$patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->pluck('name', 'id'); - return view('pharmacy::pharmacy.edit_dispensing_details', compact('patient_id', 'treatment_id', 'patient', 'categories', 'marital_statuses', 'drug_categories', 'treatment', 'dosage_frequencies', 'drug_options', 'frequencyDropDown', 'drugsDropDown', 'known_patient_alerts', 'known_patient_allergies','dispensed_drugs_array', 'drug_categories_array')); - } - - $drug_ids_array = $request->drug_id; - $quantity_to_dispense_array = $request->quantity_to_dispense; - - $dose_array = $request->dose; - $dose_2_array = isset($request->dose2) ? $request->dose2 : []; - $frequency_array = $request->frequency; - $duration_array = $request->duration; - $instructions_to_patient_array = $request->instructions; - $prescribed_by = $request->prescribed_by; - $to_take_away = $request->tta; - $pharmacist = Auth::id(); - $comment = $request->comment; - $type_of_error = []; - isset($request->wrong_dosage) ? $type_of_error[] = "Wrong dosage" : ""; - isset($request->wrong_frequency) ? $type_of_error[] = "Wrong frequency" : ""; - isset($request->inadequate_funds) ? $type_of_error[] = "Inadequate Funds" : ""; - isset($request->other_error) ? $type_of_error[] = "Other error" : ""; - $type_of_error = implode(',', $type_of_error); - $severity_of_error = $request->severity_of_error; - /* - 1.reduce pharmacy_stock of that drug that's been dispensed - 2.insert into patient_dispensing - 3.insert into prescription error if there is one - 4.update treatment and set dispense status to 1 where id = treatment_id. - 5.issue patient dispensed receipt - */ - - //$dispensing_id = $patient_dispensing->id; // get the last inserted ID - //inserting the prescription errors - $treatment_record = Treatment::find($treatment_id); - if (isset($request->severity_of_error) && !is_null($request->severity_of_error)) { - $prescription_error = new PrescriptionError; - $prescription_error->patient_id = $patient_id; - $prescription_error->patient_dispensings_id = 0; //$dispensing_id; update the dispensing id when dispensed - $prescription_error->type_of_error = $type_of_error; - $prescription_error->severity_of_error = $severity_of_error; - $prescription_error->prescriber = $prescribed_by; - $prescription_error->pharmacist = Auth::id(); - $prescription_error->created_by = Auth::id(); - $prescription_error->comment = $comment; - $prescription_error->episode_id = $treatment_record->episode_id; - $prescription_error->save(); - - //update the treatments table if anything has been added or subtracted - $treatment_record->drugs = implode(",", $request->drug_id); - $treatment_record->doses = implode(",", $request->dose); - $treatment_record->dose2 = implode(",", $request->dose_two); - $treatment_record->frequencies = implode(",", $request->frequency); - $treatment_record->durations = implode(",", $request->duration); - $treatment_record->quantities_dispensed = implode(",", $request->quantity_to_dispense); - $treatment_record->instruction = implode(",", $request->instructions); - $treatment_record->update(); - } - - //Updating the treatment table to show that the previous prescription was altered - $treatment_model = Treatment::find($treatment_id); - $treatment_model->altered = 0; //$dispensing_id; update with the dispensing id when dispensed - $treatment_model->confirmation_status = 1; - $update_treatment_alter = $treatment_model->update(); - - flash('Treatment has been Updated')->success(); - return redirect('confirm_prescriptions'); - } - - public function check_if_prescription_had_error($patient_id, $episode_id) - { - $prescription_errors = PrescriptionError::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $status = null; - if (count($prescription_errors) > 0) { - foreach ($prescription_errors as $error_record) { - $status = $error_record->id; - } - } - - return $status; - } - - /* ward dispensing per chart */ - public function ward_dispensing_per_chart(Request $request) - { - - $wards = DB::table('wards')->where('available', 1)->orderBy('name')->pluck("name", "id")->toArray(); - $wards = ['0' => 'All wards'] + $wards; - $search_by = $request->search_by; - $drugs = Drug::where('available', 1)->orderBy('name')->pluck('name', 'id')->prepend('-- Select Drug --', '')->toArray(); - - $drugs_dropdown = ""; - - foreach ($drugs as $id => $name) { - $this_drug_name = str_replace("'", '', $name); - $this_drug_name = str_replace("\"", '', $this_drug_name); - $drugs_dropdown .= ''; - } - - $cancer_protocols = CancerProtocol::pluck('name', 'id'); - - $search_text = 0; - - if (isset($request->patient_id) && $request->patient_id != 0) { - $inpatients = InpatientInfo::where(['discharged' => 0]) - ->where('patient_id', $request->patient_id) - ->orderBy('created_at', 'desc') - ->get(); - - $search_text = "Showing results for " . get_full_name($request->patient_id, 'id', 'first_name', 'last_name', 'patients') . " (" . get_name($request->patient_id, 'id', 'number', 'patients') . ")"; - - $ward_id = 0; - - } elseif (isset($request->ward_id)) { - $ward_id = $request->ward_id; - $inpatients = []; - $filters = []; - $start_date = ""; - $end_date = ""; - - if($request->search_by == 0){ - // last 24 hours - $last_day = Carbon::now()->subDay(); - - array_push($filters, ['created_at', '>', $last_day]); - } elseif($request->search_by == 1){ - // custom date - $start_date = Carbon::createFromFormat('d/m/Y', $request->reg_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->reg_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date]); - array_push($filters, ['created_at', '<', $end_date]); - } elseif($request->search_by == 2){ - // custom date range - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date]); - array_push($filters, ['created_at', '<', $end_date]); - } elseif($request->search_by == 3){ - // - } - - if (!empty($ward_id) && $ward_id != 0) { - if($request->search_by == 0){ - $search_text = "Showing patients admitted to " . get_name($ward_id, 'id', 'name', 'wards') . "in last 24 hours"; - } else { - $search_text = "Showing patients admitted to " . get_name($ward_id, 'id', 'name', 'wards') . " between " . streamline_date_plain($start_date) . " and " . streamline_date_plain($end_date); - } - $inpatients = InpatientInfo::where(['ward_id' => $ward_id, 'discharged' => 0])->where($filters)->orderBy('created_at', 'desc')->get(); - } else { - if($request->search_by == 0){ - $search_text = "Showing patients admitted in the past 24 hours"; - } else { - $search_text = "Showing patients admitted between " . streamline_date_plain($start_date) . " and " . streamline_date_plain($end_date); - } - $inpatients = InpatientInfo::where(['discharged' => 0])->where($filters)->orderBy('created_at', 'desc')->get(); - } - } else { - $inpatients = []; - $ward_id = 0; - } - - return view('pharmacy::pharmacy.ward_dispensing_per_chart', compact('inpatients', 'wards', 'ward_id', 'search_by', 'drugs', 'search_text', 'drugs_dropdown', 'cancer_protocols')); - } - - public function store_ward_dispensing_per_chart(Request $request) - { - //store in the ward_dipensings_per_charts table but also store in the ward_treatment_dispensations table so that they are billable on individual patient inpatient sheet/bill - - $dipensed_drugs_array = $request->dispensed_drugs ?? []; - $quantity_dispensed_array = $request->quantity_dispensed; - $patient_ids_array = $request->patient_id; - $episode_ids_array = $request->episode_id; - $inpatient_info_ids_array = $request->inpatient_info_id; - $ward_ids_array = $request->ward_id; - - $clean_patient_id_array = []; - $clean_episode_id_array = []; - $clean_inpatient_info_id_array = []; - $clean_ward_id_array = []; - $clean_drug_id_array = []; - $clean_quantity_given_array = []; - $cancer_protocol_ids = []; - $cancer_protocol_ward_charts = []; - - if (isset($request->request_comment_patient_id)) { - - // logic for the cancer protocol - $request_comment_patient_id_arr = $request->request_comment_patient_id; - $request_comment_episode_id_arr = $request->request_comment_episode_id; - $request_comment_protocol_id_arr = $request->request_comment_protocol_id; - $protocol_weight_arr = $request->protocol_weight; - $protocol_height_arr = $request->protocol_height; - $protocol_vitals_date_taken_arr = $request->protocol_vitals_date_taken; - $protocol_ward_id_arr = $request->protocol_ward_id; - $protocol_id_arr = $request->protocol_id; - $request_comment_arr = $request->request_comment; - - for ($i = 0; $i < count($request_comment_arr); $i++) { - $cancer_protocol_ward_charts[$request_comment_patient_id_arr[$i] . '_' . $request_comment_episode_id_arr[$i] . '_' . $request_comment_protocol_id_arr[$i]]['request_comment'] = $request_comment_arr[$i]; - $cancer_protocol_ward_charts[$request_comment_patient_id_arr[$i] . '_' . $request_comment_episode_id_arr[$i] . '_' . $request_comment_protocol_id_arr[$i]]['protocol_weight'] = $protocol_weight_arr[$i]; - $cancer_protocol_ward_charts[$request_comment_patient_id_arr[$i] . '_' . $request_comment_episode_id_arr[$i] . '_' . $request_comment_protocol_id_arr[$i]]['protocol_height'] = $protocol_height_arr[$i]; - $cancer_protocol_ward_charts[$request_comment_patient_id_arr[$i] . '_' . $request_comment_episode_id_arr[$i] . '_' . $request_comment_protocol_id_arr[$i]]['protocol_vitals_date_taken'] = $protocol_vitals_date_taken_arr[$i]; - $cancer_protocol_ward_charts[$request_comment_patient_id_arr[$i] . '_' . $request_comment_episode_id_arr[$i] . '_' . $request_comment_protocol_id_arr[$i]]['protocol_ward_id'] = $protocol_ward_id_arr[$i]; - } - - $protocol_drug_id_arr = $request->protocol_drug_id; - $protocol_section_arr = $request->protocol_section; - $protocol_drug_factor_arr = $request->protocol_drug_factor; - $protocol_drug_factor_value_arr = $request->protocol_drug_factor_value; - $protocol_drug_dose_arr = $request->protocol_drug_dose; - $protocol_drug_dosage_label_arr = $request->protocol_drug_dosage_label; - $protocol_drug_unit_value_arr = $request->protocol_drug_unit_value; - $protocol_dosage_to_dispense_arr = $request->protocol_dosage_to_dispense; - $protocol_quantity_to_dispense_arr = $request->protocol_quantity_to_dispense; - $protocol_is_drug_selected_arr = $request->protocol_is_drug_selected; - $protocol_instruction_arr = $request->protocol_instruction; - $protocol_patient_id_arr = $request->protocol_patient_id; - $protocol_episode_id_arr = $request->protocol_episode_id; - - for ($i = 0; $i < count($protocol_drug_id_arr); $i++) { - if ($protocol_is_drug_selected_arr[$i] == 1) { - $cancer_protocol_ward_charts[$protocol_patient_id_arr[$i] . '_' . $protocol_episode_id_arr[$i] . '_' . $protocol_id_arr[$i]]["protocol_section"][] = $protocol_section_arr[$i]; - $cancer_protocol_ward_charts[$protocol_patient_id_arr[$i] . '_' . $protocol_episode_id_arr[$i] . '_' . $protocol_id_arr[$i]]["protocol_drug_id"][] = $protocol_drug_id_arr[$i]; - $cancer_protocol_ward_charts[$protocol_patient_id_arr[$i] . '_' . $protocol_episode_id_arr[$i] . '_' . $protocol_id_arr[$i]]["protocol_drug_factor"][] = $protocol_drug_factor_arr[$i]; - $cancer_protocol_ward_charts[$protocol_patient_id_arr[$i] . '_' . $protocol_episode_id_arr[$i] . '_' . $protocol_id_arr[$i]]["protocol_drug_factor_value"][] = $protocol_drug_factor_value_arr[$i]; - $cancer_protocol_ward_charts[$protocol_patient_id_arr[$i] . '_' . $protocol_episode_id_arr[$i] . '_' . $protocol_id_arr[$i]]["protocol_drug_dose"][] = $protocol_drug_dose_arr[$i]; - $cancer_protocol_ward_charts[$protocol_patient_id_arr[$i] . '_' . $protocol_episode_id_arr[$i] . '_' . $protocol_id_arr[$i]]["protocol_drug_dosage_label"][] = $protocol_drug_dosage_label_arr[$i]; - $cancer_protocol_ward_charts[$protocol_patient_id_arr[$i] . '_' . $protocol_episode_id_arr[$i] . '_' . $protocol_id_arr[$i]]["protocol_drug_unit_value"][] = $protocol_drug_unit_value_arr[$i]; - $cancer_protocol_ward_charts[$protocol_patient_id_arr[$i] . '_' . $protocol_episode_id_arr[$i] . '_' . $protocol_id_arr[$i]]["protocol_dosage_to_dispense"][] = $protocol_dosage_to_dispense_arr[$i]; - $cancer_protocol_ward_charts[$protocol_patient_id_arr[$i] . '_' . $protocol_episode_id_arr[$i] . '_' . $protocol_id_arr[$i]]["protocol_quantity_to_dispense"][] = $protocol_quantity_to_dispense_arr[$i]; - $cancer_protocol_ward_charts[$protocol_patient_id_arr[$i] . '_' . $protocol_episode_id_arr[$i] . '_' . $protocol_id_arr[$i]]["protocol_instruction"][] = $protocol_instruction_arr[$i]; - } - } - - foreach ($cancer_protocol_ward_charts as $key => $values) { - $exploded_key = explode("_", $key); - - if (count($values) == 5) { - // none of the drugs were ticked - continue; - } - - $cancer_protocol_ward_chart = new CancerProtocolWardChart(); - $cancer_protocol_ward_chart->patient_id = $exploded_key[0]; - $cancer_protocol_ward_chart->episode_id = $exploded_key[1]; - $cancer_protocol_ward_chart->ward_id = $values['protocol_ward_id']; - $cancer_protocol_ward_chart->height = $values['protocol_height']; - $cancer_protocol_ward_chart->weight = $values['protocol_weight']; - $cancer_protocol_ward_chart->vitals_date_taken = $values['protocol_vitals_date_taken']; - $cancer_protocol_ward_chart->request_comment = $values['request_comment']; - $cancer_protocol_ward_chart->protocol_id = $exploded_key[2]; - $cancer_protocol_ward_chart->protocol_drug_id = implode(',', $values['protocol_drug_id']); - $cancer_protocol_ward_chart->protocol_section = implode(',', $values['protocol_section']); - $cancer_protocol_ward_chart->protocol_drug_factor = implode(',', $values['protocol_drug_factor']); - $cancer_protocol_ward_chart->protocol_drug_factor_value = implode(',', $values['protocol_drug_factor_value']); - $cancer_protocol_ward_chart->protocol_drug_dose = implode(',', $values['protocol_drug_dose']); - $cancer_protocol_ward_chart->protocol_drug_dosage_label = implode(',', $values['protocol_drug_dosage_label']); - $cancer_protocol_ward_chart->protocol_drug_unit_value = implode(',', $values['protocol_drug_unit_value']); - $cancer_protocol_ward_chart->protocol_dosage_to_dispense = implode(',', $values['protocol_dosage_to_dispense']); - $cancer_protocol_ward_chart->protocol_quantity_to_dispense = implode(',', $values['protocol_quantity_to_dispense']); - $cancer_protocol_ward_chart->protocol_instruction = json_encode($values['protocol_instruction']); - $cancer_protocol_ward_chart->created_by = Auth::id(); - $cancer_protocol_ward_chart->save(); - - $cancer_protocol_ids[] = $cancer_protocol_ward_chart->id; - } - } - - for ($i=0; $i < count($dipensed_drugs_array) ; $i++) { - if (!is_null($dipensed_drugs_array[$i]) && !is_null($quantity_dispensed_array[$i])) { - $clean_patient_id_array[] = $patient_ids_array[$i]; - $clean_episode_id_array[] = $episode_ids_array[$i]; - $clean_inpatient_info_id_array[] = $inpatient_info_ids_array[$i]; - $clean_ward_id_array[] = $ward_ids_array[$i]; - $clean_drug_id_array[] = $dipensed_drugs_array[$i]; - $clean_quantity_given_array[] = $quantity_dispensed_array[$i]; - } - } - - $incoming_ward_chart = new IncomingWardChart; - $incoming_ward_chart->patient_ids = implode(",", $clean_patient_id_array); - $incoming_ward_chart->episode_ids = implode(",", $clean_episode_id_array); - $incoming_ward_chart->inpatient_info_ids = implode(",", $clean_inpatient_info_id_array); - $incoming_ward_chart->drug_ids = implode(",", $clean_drug_id_array); - $incoming_ward_chart->quantity_given = implode(",", $clean_quantity_given_array); - $incoming_ward_chart->ward_ids = implode(",", $clean_ward_id_array); - $incoming_ward_chart->chart_ward_id = $request->chart_ward_id; - $incoming_ward_chart->created_by = Auth::id(); - $incoming_ward_chart->has_cancer_protocol = (count($cancer_protocol_ids) > 0) ? implode(",", $cancer_protocol_ids) : NULL; - $incoming_ward_chart->save(); - - flash('Patient charts have been saved')->success(); - return redirect('incoming_ward_charts'); - } - - public function incoming_ward_charts(Request $request) - { - $ward_id = $request->ward_id; - $filters = []; - $start_date = null; $end_date = null; - - if($request->search_by == 0){ - // last 24 hours - $last_day = Carbon::now()->subDay(); - - $filters[] = ['created_at', '>', $last_day]; - } elseif($request->search_by == 1){ - // custom date - $start_date = Carbon::createFromFormat('d/m/Y', $request->reg_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->reg_date)->endOfDay()->toDateTimeString(); - - $filters[] = ['created_at', '>', $start_date]; - $filters[] = ['created_at', '<', $end_date]; - } elseif($request->search_by == 2){ - // custom date range - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->end_date)->endOfDay()->toDateTimeString(); - - $filters[] = ['created_at', '>', $start_date]; - $filters[] = ['created_at', '<', $end_date]; - } - - $search_by = $request->search_by; - - if (!empty($ward_id) && $ward_id != 0) { - $incoming_charts = IncomingWardChart::where(['chart_ward_id' => $ward_id, 'completion_status' => 0])->where($filters)->get(); - } else { - $incoming_charts = IncomingWardChart::where(['completion_status' => 0])->where($filters)->get(); - } - - $staff_array = $this->userService->pluckUserFullName(); - - $wards = DB::table('wards')->where('available', 1)->orderBy('name')->pluck("name", "id")->toArray(); - $wards = ['0' => 'All wards'] + $wards; - return view('pharmacy::pharmacy.incoming_ward_chart',compact('staff_array', 'wards', 'ward_id', 'search_by','start_date','end_date', 'incoming_charts')); - } - - public function approve_ward_dispensing_per_chart($incoming_ward_chart_id) - { - $search_by = null; - $cancer_protocol_orders = false; - - $incoming_chart_record = IncomingWardChart::find($incoming_ward_chart_id); - $ward_id = $incoming_chart_record->chart_ward_id; - - if (!is_null($incoming_chart_record)) { - $drug_ids_array = explode(",", $incoming_chart_record->drug_ids); - $quantity_given_array = explode(",", $incoming_chart_record->quantity_given); - - if (!is_null($incoming_chart_record->has_cancer_protocol)) { - $cancer_protocol_ids = explode(",", $incoming_chart_record->has_cancer_protocol); - - $cancer_protocol_orders = CancerProtocolWardChart::whereIn('id', $cancer_protocol_ids)->get(); - } - } - - $drugs_to_dispense_array = []; - $quantities_to_dispense_array = []; - for ($i = 0; $i < count($drug_ids_array); $i++) { - // check if a drug id already exists in the drugs array - if (in_array($drug_ids_array[$i], $drugs_to_dispense_array)) { - //get key of that drug which exists - $key = array_search($drug_ids_array[$i], $drugs_to_dispense_array); - //increment the "to_dispense_qty" value of drug - $quantities_to_dispense_array[$key] += $quantity_given_array[$i]; - } else { - //drugs does not exist, create new entry - $drugs_to_dispense_array[] = $drug_ids_array[$i]; - $quantities_to_dispense_array[] = $quantity_given_array[$i]; - } - } - - $wards = DB::table('wards')->where('available', 1)->orderBy('name')->pluck("name", "id")->toArray(); - $wards = ['0' => 'All wards'] + $wards; - $drugs = DB::table('drugs')->whereNull('deleted_at')->where('available', 1)->pluck('name', 'id')->toArray(); - $staff_array = $this->userService->pluckUserFullName(); - $drug_forms = DB::table('drug_forms')->whereNull('deleted_at')->pluck('name', 'id')->toArray(); - - $batches_array = DB::table('item_batch_watcher')->where('pharmacy_stock', '>', 0)->orWhere('store_stock', '>', 0)->get(); - - return view('pharmacy::pharmacy.approve_ward_dispensing_per_chart',compact('drug_forms','staff_array', 'wards', 'ward_id', 'search_by', 'drugs', 'drugs_to_dispense_array', 'quantities_to_dispense_array', 'incoming_chart_record', 'batches_array', 'cancer_protocol_orders')); - } - - public function cancel_ward_dispensing_per_chart($incoming_ward_chart_id) - { - $incoming_chart_record = IncomingWardChart::find($incoming_ward_chart_id); - - if ($incoming_chart_record) { - if (!is_null($incoming_chart_record->has_cancer_protocol)) { - $cancer_protocol_ids = explode(",", $incoming_chart_record->has_cancer_protocol); - $delete_cancer_protocol_orders = CancerProtocolWardChart::whereIn('id', $cancer_protocol_ids)->delete(); - } - - $incoming_chart_record->delete(); - flash("Ward chart deleted successfully")->success(); - } else { - flash("Could not cancel ward chart")->error(); - } - - return redirect('incoming_ward_charts'); - } - - public function store_approved_dispensings_per_chart(Request $request) { - /* - *update the completion_status to 1 in ward_dispensation_per_chart table - *record the records in the ward treatment dispensations table, created_by shd be equal to received_by - *store details in the ward_chart_approvals table and update the records with the approval_id - */ - - $protocol_drug_ids_arr =$batch_id= []; - - - - if (isset($request->protocol_ward_charts_id)) { - $protocol_ward_charts_id_arr = $request->protocol_ward_charts_id; - - $protocol_ward_id_arr = $request->protocol_ward_id; - $protocol_patient_id_arr = $request->protocol_patient_id; - $protocol_episode_id_arr = $request->protocol_episode_id; - $protocol_quantity_to_dispense_arr = $request->protocol_quantity_to_dispense; - $protocol_instruction_arr = $request->protocol_instruction; - $protocol_drug_ids_arr = $request->protocol_drug_ids; - - $protocol_orders = CancerProtocolWardChart::whereIn('id', $protocol_ward_charts_id_arr)->get(); - - if (count($protocol_orders) > 0) { - // check if the drug is consuming from more than one batch - foreach ($request->cancer_batch_item_ids as $key => $id ){ - $batch_id[$id][] = $request->cancer_batch_dispensed_from[$key]; - } - foreach ($protocol_orders as $protocol_order) { - $protocol_order->approved_by = Auth::id(); - $protocol_order->completion_status = 1; - $protocol_order->update(); - } - - /* create a new entry for the approval that has been done */ - $chart_approval = new WardChartApproval; - $chart_approval->drug_ids = implode(",", $protocol_drug_ids_arr); - $chart_approval->quantity_dispensed = implode(",", $protocol_quantity_to_dispense_arr); - $chart_approval->comments = implode(",", $protocol_instruction_arr); - $chart_approval->received_by = $request->received_by; - $chart_approval->approval_date = is_null($request->approval_date) ? Carbon::now() : Carbon::createFromFormat('d/m/Y',$request->approval_date)->toDateString(); - $chart_approval->incoming_ward_charts_id = $request->incoming_chart_id; - $chart_approval->cancer_protocol_order_id = implode(",", $protocol_ward_charts_id_arr); - $chart_approval->created_by = Auth::id(); - $chart_approval->ward_id = $protocol_ward_id_arr[0] ?? 0; - $chart_approval->save(); - - // Loop through each entry and group by drug ID - foreach ($protocol_drug_ids_arr as $index => $drugId) { - $patientId = $protocol_patient_id_arr[$index]; - $quantity = $protocol_quantity_to_dispense_arr[$index]; - $esp = $protocol_episode_id_arr[$index]; - // Initialize the drug group if not already created - if (!isset($groupedData[$drugId])) { - $groupedData[$drugId] = []; - } - // Append the patient and quantity data - $groupedData[$drugId][] = [ - 'patient_id' => $patientId, - 'episode_id'=>$esp, - 'quantity' => $quantity, - 'batch_id' => null, - ]; - } - foreach($batch_id as $ind => $batch){ - foreach ($batch as $key => $value) { - foreach($groupedData[$ind] as $key => $data){ - $groupedData[$ind][$key]['batch_id'][] = $value; - } - } - - } - foreach($groupedData as $ind => $data){ - foreach($data as $d){ - WardTreatmentBatchDispensation::create([ - "patient_id"=>$d['patient_id'], - "episode_id"=>$d['episode_id'], - "item_id"=>$ind, - "incoming_ward_chart_id"=>$request->incoming_chart_id, - "item_batch_id"=>implode(",", $d['batch_id']??[]), - ]); - } - } - /* update the ward_treatment_dispensations table to show the drugs on the respective inpatient sheet */ - for ($i=0; $i < count($protocol_patient_id_arr) ; $i++) { - $ward_treatment_id = $this->dispensationService->saveDispensation((int)$protocol_patient_id_arr[$i], (int)$protocol_episode_id_arr[$i], - $protocol_drug_ids_arr[$i], (int)$protocol_quantity_to_dispense_arr[$i], 0, $protocol_ward_id_arr[$i] ?? 0, $request->incoming_chart_id); - - /*====== reduce the pharmacy stock if some quantity has been given.========*/ - if ($protocol_quantity_to_dispense_arr[$i] > 0) { - $ward_drug_details = Drug::find($protocol_drug_ids_arr[$i]); - $current_stock = $ward_drug_details->pharmacy_stock; - $new_stock = $current_stock - $protocol_quantity_to_dispense_arr[$i]; - $ward_drug_details->pharmacy_stock = $new_stock; - $ward_drug_details->update(); - } - } - - /* ==== reduction according to batches selected ==== */ - $cancer_batch_item_ids_array = $request->cancer_batch_item_ids ?? []; - $cancer_items_batches_array = $request->cancer_batch_dispensed_from ?? []; - $cancer_items_quantities_array = $request->cancer_batch_quantity_dispensed ?? []; - - for ($i=0; $i < count($cancer_batch_item_ids_array) ; $i++) { - reduce_batch_item_stock(1,$cancer_batch_item_ids_array[$i],$cancer_items_batches_array[$i],'drugs','pharmacy_stock',$cancer_items_quantities_array[$i],'incoming_ward_charts','Drug',$request->incoming_chart_id,null); - - // reduce_batch_item_from_pharmacy(1, $cancer_batch_item_ids_array[$i], $cancer_items_batches_array[$i], $cancer_items_quantities_array[$i], "incoming_ward_charts", $request->incoming_chart_id, null); - } - /* ==== end of batch === */ - } - } - - $incoming_chart_to_update = IncomingWardChart::find($request->incoming_chart_id); - if ($incoming_chart_to_update) { - $incoming_chart_to_update->approved_by = Auth::id(); - $incoming_chart_to_update->completion_status = 1; - $incoming_chart_to_update->update(); - - // check if there are normal drugs to process - if (isset($request->drug_id) && is_array($request->drug_id)) { - // check if the drug is consuming from more than one batch - foreach ($request->batch_item_ids as $key => $id ){ - $batch_id[$id][] = $request->batch_dispensed_from[$key]; - } - /* get some patient details from the incoming_ward_charts table*/ - - $patient_ids_array = explode(",", $incoming_chart_to_update->patient_ids); - $episode_ids_array = explode(",", $incoming_chart_to_update->episode_ids); - $drug_ids_array = explode(",", $incoming_chart_to_update->drug_ids); - $quantities_given_array = explode(",", $incoming_chart_to_update->quantity_given); - $wards_array = explode(",", $incoming_chart_to_update->ward_ids); - /* create a new entry for the approval that has been done */ - $chart_approval = new WardChartApproval; - $chart_approval->drug_ids = implode(",", $request->drug_id); - $chart_approval->quantity_dispensed = implode(",", $request->quantity_dispensed); - $chart_approval->comments = implode(",", $request->comments); - $chart_approval->received_by = $request->received_by; - $chart_approval->approval_date = is_null($request->approval_date) ? Carbon::now() : Carbon::createFromFormat('d/m/Y',$request->approval_date)->toDateString(); - $chart_approval->incoming_ward_charts_id = $request->incoming_chart_id; - $chart_approval->created_by = Auth::id(); - $chart_approval->ward_id = is_null($incoming_chart_to_update) ? 0 : $incoming_chart_to_update->chart_ward_id; - $chart_approval->save(); - $groupedData = []; - - // Loop through each entry and group by drug ID - foreach ($drug_ids_array as $index => $drugId) { - $patientId = $patient_ids_array[$index]; - $quantity = $quantities_given_array[$index]; - $esp = $episode_ids_array[$index]; - // Initialize the drug group if not already created - if (!isset($groupedData[$drugId])) { - $groupedData[$drugId] = []; - } - // Append the patient and quantity data - $groupedData[$drugId][] = [ - 'patient_id' => $patientId, - 'episode_id'=>$esp, - 'quantity' => $quantity, - 'batch_id' => null, - ]; - } - foreach($batch_id as $ind => $batch){ - foreach ($batch as $key => $value) { - foreach($groupedData[$ind] as $key => $data){ - $groupedData[$ind][$key]['batch_id'][] = $value; - } - } - - } - foreach($groupedData as $ind => $data){ - foreach($data as $d){ - WardTreatmentBatchDispensation::create([ - "patient_id"=>$d['patient_id'], - "episode_id"=>$d['episode_id'], - "item_id"=>$ind, - "incoming_ward_chart_id"=>$incoming_chart_to_update->id, - "item_batch_id"=>implode(",", $d['batch_id']??[]), - ]); - } - } - /* update the ward_treatment_dispensations table to show the drugs on the respective inpatient sheet */ - for ($i=0; $i < count($patient_ids_array) ; $i++) { - $ward_treatment_id = $this->dispensationService->saveDispensation((int)$patient_ids_array[$i], (int)$episode_ids_array[$i], - $drug_ids_array[$i], (int)$quantities_given_array[$i], 0, $wards_array[$i] ?? 0, $incoming_chart_to_update->id); - - /*====== reduce the pharmacy stock if some quantity has been given.========*/ - if ($drug_ids_array[$i] != "" && $quantities_given_array[$i] != "") { - $drug = Drug::find($drug_ids_array[$i]); - if ($drug) { - $current_stock = $drug->pharmacy_stock; - $new_stock = $current_stock - $quantities_given_array[$i]; - $drug->pharmacy_stock = $new_stock; - $drug->update(); - } - } - } - - /* ==== reduction according to batches selected ==== */ - $items_ids_array = $request->batch_item_ids ?? []; - $items_batches_array = $request->batch_dispensed_from ?? []; - $items_quantities_array = $request->batch_quantity_dispensed ?? []; - - for ($i=0; $i < count($items_batches_array) ; $i++) { - reduce_batch_item_stock(1,$items_ids_array[$i],$items_batches_array[$i],'drugs','pharmacy_stock',$items_quantities_array[$i],'incoming_ward_charts','Drug',$request->incoming_chart_id,null); - // reduce_batch_item_from_pharmacy(1, $items_ids_array[$i], $items_batches_array[$i], $items_quantities_array[$i], "incoming_ward_charts", $request->incoming_chart_id, null); - } - /* ==== end of batch === */ - } - - flash("Ward chart has been approved")->success(); - - if (count($protocol_drug_ids_arr) > 0) { - session()->put('request_array', $request->all()); - return redirect('print_protocol_ward_chart'); - } - return redirect('incoming_ward_charts'); - } else { - flash("Ward Chart not found")->error(); - return redirect()->back()->withInput(); - } - } - - /* put patient_id and episode_id in session. Done when one clicks the "view inpatient sheet" on ward_dispensing page */ - public function set_inpatient_sheet($patient_id, $episode_id) - { - session()->put('patient_id', $patient_id); - session()->put('episode_id', $episode_id); - - return redirect('in_patient_sheet'); - } - - public function drug_chart_details(Request $request) - { - $drug_id = $request->drug_id; - $incoming_chart_id = $request->chart_id; - - $incoming_chart_record = IncomingWardChart::find($incoming_chart_id); - - if (!is_null($incoming_chart_record)) { - $patient_ids_array = explode(",", $incoming_chart_record->patient_ids); - $episode_ids_array = explode(",", $incoming_chart_record->episode_ids); - $inpatient_info_ids_array = explode(",", $incoming_chart_record->inpatient_info_ids); - $drug_ids_array = explode(",", $incoming_chart_record->drug_ids); - $ward_ids_array = explode(",", $incoming_chart_record->ward_ids); - $quantity_given_array = explode(",", $incoming_chart_record->quantity_given); - } - - $code = ""; - $counter = 1; - - for ($i=0; $i < count($drug_ids_array) ; $i++) { - if ($drug_ids_array[$i] == $drug_id) { - $code .= ""; - $code .= ""; - $code .= $counter; - $code .= ""; - $code .= ""; - $code .= get_full_name($patient_ids_array[$i], 'id', 'first_name', 'last_name', 'patients') . " (" . get_name($patient_ids_array[$i], 'id', 'number', 'patients') . ")"; - $code .= ""; - $code .= ""; - $code .= get_name($ward_ids_array[$i], 'id', 'name', 'wards'); - $code .= ""; - $code .= ""; - $code .= get_name($drug_ids_array[$i], 'id', 'name', 'drugs'); - $code .= ""; - $code .= ""; - $code .= $quantity_given_array[$i]; - $code .= ""; - $code .= ""; - $counter++; - } - } - - /*if ($ward_dipensings_per_chart->count() > 0){ - foreach ($ward_dipensings_per_chart as $record){ - $code .= ""; - $code .= ""; - $code .= $counter; - $code .= ""; - $code .= ""; - $code .= get_full_name($record->patient_id, 'id', 'first_name', 'last_name', 'patients') . " (" . get_name($record->patient_id, 'id', 'number', 'patients') . ")"; - $code .= ""; - $code .= ""; - $code .= get_name($record->ward_id, 'id', 'name', 'wards'); - $code .= ""; - $code .= ""; - $code .= get_name($record->drug_id, 'id', 'name', 'drugs'); - $code .= ""; - $code .= ""; - $code .= $record->quantity_given; - $code .= ""; - $code .= ""; - $counter++; - } - } else { - $code .= "

    No records

    "; - }*/ - - // check if the code is empty for when clinics selected are not available - if ($code == ''){ - $code .= "

    No record

    "; - } - - return $code; - } - - public function view_ward_patient_prescriptions(Request $request) - { - $patient_id = $request->patient_id; - $episode_id = $request->episode_id; - - $ward_prescriptions = WardTreatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - - $code = ""; - - if(count($ward_prescriptions) > 0){ - foreach($ward_prescriptions as $treatment){ - $drug_explode = explode(",", $treatment->drugs); - $dose_explode = explode(",", $treatment->doses); - $dose2_explode = explode(",", $treatment->dose2); - $drug_frequency_explode = explode(",", $treatment->frequencies); - $instruction_explode = explode(",", $treatment->instruction); - $duration_explode = explode(",", $treatment->durations); - //$long_term_explode = explode(",", $treatment_row['Long_Term']); - $dispense_explode = explode(",", $treatment->dispensed); - //$form_explode = explode(",", $treatment_row['Form']); - $quantity_to_dispense = explode(",", $treatment->quantities_dispensed); - - for ($x = 0; $x < count($drug_explode); $x++){ - $code .= ""; - $code .= ""; - $code .= $x+1; - $code .= ""; - $code .= ""; - if(get_name($drug_explode[$x], 'id', 'insurance_coverage', 'drugs') == 1){ - $code .= "".get_name($drug_explode[$x], 'id', 'name', 'drugs').""; - } else{ - $code .= "".get_name($drug_explode[$x], 'id', 'name', 'drugs').""; - } - $code .= ""; - $code .= ""; - - $form_id = isset($drug_explode[$x]) ? get_name($drug_explode[$x], 'id', 'form_id', 'drugs') : ""; - $unit_id = isset($drug_explode[$x]) ? get_name($drug_explode[$x], 'id', 'unit_id', 'drugs') : ""; - $form_name = isset($form_id) ? get_name($form_id, 'id', 'name', 'drug_forms') : ""; - $unit_name = isset($unit_id) ? get_name($unit_id, 'id', 'name', 'drug_units') : ""; - - $code .= isset($dose_explode[$x]) ? $dose_explode[$x] : "" . $unit_name; - $code .= ""; - $code .= ""; - $code .= get_name( isset($drug_frequency_explode[$x]) ? $drug_frequency_explode[$x] : "", 'id', 'name', 'dosage_frequencies'); - $code .= ""; - $code .= ""; - $code .= isset($duration_explode[$x]) ? $duration_explode[$x] : ""; - $code .= ""; - $code .= ""; - $code .= isset($quantity_to_dispense[$x]) ? $quantity_to_dispense[$x] : ""; - $code .= ""; - $code .= ""; - $code .= isset($instruction_explode[$x]) ? $instruction_explode[$x] : ""; - $code .= ""; - $code .= ""; - } - $code .= "Prescribed by ".get_full_name($treatment->created_by, "id", "first_name", "last_name", "users")." on ".streamline_date($treatment->created_at).""; - } - } else { - $code .= "

    No prescriptions recorded in the system

    "; - } - - return $code; - } - - public function edit_ward_dispensing_chart(Request $request, $id) - { - $incoming_chart = IncomingWardChart::find($id); - $patient_ass_array = []; //holding the associative array we will loop through - $patient_episodes_array = []; - $patient_inpatient_info_array = []; - - if (!is_null($incoming_chart)) { - $patient_ids_array = explode(",", $incoming_chart->patient_ids); - $episode_ids_array = explode(",", $incoming_chart->episode_ids); - $inpatient_info_ids_array = explode(",", $incoming_chart->inpatient_info_ids); - $drug_ids_array = explode(",", $incoming_chart->drug_ids); - $quantity_given_array = explode(",", $incoming_chart->quantity_given); - - for ($i=0; $i < count($patient_ids_array) ; $i++) { - $inner_array = []; - if (array_key_exists($patient_ids_array[$i], $patient_ass_array)) { - /* check just in case the same drug appears for the same patient twice then ++ quantity */ - if (array_key_exists($drug_ids_array[$i], $patient_ass_array[$patient_ids_array[$i]])) { - $previous_qty = $patient_ass_array[$patient_ids_array[$i]][$drug_ids_array[$i]]; - $patient_ass_array[$patient_ids_array[$i]][$drug_ids_array[$i]] = $previous_qty + $quantity_given_array[$i]; - } else{ - $patient_ass_array[$patient_ids_array[$i]][$drug_ids_array[$i]] = $quantity_given_array[$i]; - } - } else{ - $inner_array[$drug_ids_array[$i]] = $quantity_given_array[$i]; - $patient_ass_array[$patient_ids_array[$i]] = $inner_array; - } - - //we need these 2 array below - $patient_episodes_array[$patient_ids_array[$i]] = $episode_ids_array[$i]; - $patient_inpatient_info_array[$patient_ids_array[$i]] = $inpatient_info_ids_array[$i]; - } - } - - $drugs = Drug::where('available', 1)->orderby('name')->pluck('name', 'id')->prepend('-- Select Drug --', '')->toArray(); - - return view('pharmacy::pharmacy.edit_ward_chart', compact('drugs', 'incoming_chart', 'patient_ass_array', 'patient_episodes_array', 'patient_inpatient_info_array')); - } - - public function update_ward_dispensing_per_chart(Request $request) - { - $incoming_chart_to_update = IncomingWardChart::find($request->incoming_chart_id); - - $dipensed_drugs_array = $request->dispensed_drugs; - $quantity_dispensed_array = $request->quantity_dispensed; - $patient_ids_array = $request->patient_id; - $episode_ids_array = $request->episode_id; - $inpatient_info_ids_array = $request->inpatient_info_id; - $ward_ids_array = $request->ward_id; - $chart_ward_id = $request->chart_ward_id; //if it is 0, then it is a chart from all wards - - $clean_patient_id_array = []; - $clean_episode_id_array = []; - $clean_inpatient_info_id_array = []; - $clean_ward_id_array = []; - $clean_drug_id_array = []; - $clean_quantity_given_array = []; - - for ($i=0; $i < count($dipensed_drugs_array) ; $i++) { - if (!is_null($dipensed_drugs_array[$i]) && !is_null($quantity_dispensed_array[$i])) { - $clean_patient_id_array[] = $patient_ids_array[$i]; - $clean_episode_id_array[] = $episode_ids_array[$i]; - $clean_inpatient_info_id_array[] = $inpatient_info_ids_array[$i]; - $clean_ward_id_array[] = $ward_ids_array[$i]; - $clean_drug_id_array[] = $dipensed_drugs_array[$i]; - $clean_quantity_given_array[] = $quantity_dispensed_array[$i]; - } - } - - $incoming_chart_to_update->patient_ids = implode(",", $clean_patient_id_array); - $incoming_chart_to_update->episode_ids = implode(",", $clean_episode_id_array); - $incoming_chart_to_update->inpatient_info_ids = implode(",", $clean_inpatient_info_id_array); - $incoming_chart_to_update->drug_ids = implode(",", $clean_drug_id_array); - $incoming_chart_to_update->quantity_given = implode(",", $clean_quantity_given_array); - $incoming_chart_to_update->ward_ids = implode(",", $clean_ward_id_array); - $incoming_chart_to_update->chart_ward_id = $request->chart_ward_id; - $incoming_chart_to_update->updated_by = Auth::id(); - $incoming_chart_to_update->update(); - - flash('Patient charts have been updated')->success(); - return redirect('incoming_ward_charts'); - } - - public function return_drugs_per_chart(Request $request) { - $wards = DB::table('wards')->where('available', 1)->orderBy('name')->pluck("name", "id")->toArray(); - $wards = ['0' => 'All wards'] + $wards; - $filters = []; - if (isset($request->patient_id) && $request->patient_id != 0) { - $filters[] = ['patient_id', '=', $request->patient_id]; - } - //get all inpatients that are not discharged - $ipatients = InpatientInfo::where(['discharged' => 0])->orderBy('created_at', 'desc')->get(); - foreach($ipatients as $patient){ - $patients[]= Patient::find($patient->patient_id); - } - if (isset($request->ward_id)) { - $ward_id = $request->ward_id; - $drugs = Drug::where('available', 1)->orderby('name')->pluck('name', 'id')->prepend('-- Select Drug --', '')->toArray(); - - if($request->search_by == 0){ - // last 24 hours - $last_day = Carbon::now()->subDay(); - - array_push($filters, ['created_at', '>', $last_day]); - } elseif($request->search_by == 1){ - // custom date - $start_date = Carbon::createFromFormat('d/m/Y', $request->reg_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->reg_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date]); - array_push($filters, ['created_at', '<', $end_date]); - } elseif($request->search_by == 2){ - // custom date range - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date]); - array_push($filters, ['created_at', '<', $end_date]); - } elseif($request->search_by == 3){ - // - } - - $search_by = $request->search_by; - - if (!empty($ward_id) && $ward_id != 0) { - $inpatients = InpatientInfo::where(['ward_id' => $ward_id, 'discharged' => 0])->where($filters)->orderBy('created_at', 'desc')->get(); - } else { - $inpatients = InpatientInfo::where(['discharged' => 0])->where($filters)->orderBy('created_at', 'desc')->get(); - } - foreach($inpatients as $patient){ - $patient->ward_treatment =WardTreatmentDispensation::where(['patient_id' => $patient->patient_id, 'episode_id' => $patient->episode_id])->get(); - $batches_items =WardTreatmentBatchDispensation::where(['patient_id' => $patient->patient_id, 'episode_id' => $patient->episode_id])->get(); - if (count($batches_items) > 0) { - $batch_id_records=[]; - foreach ($batches_items as $batches) { - $batch_id_records[] = ($batches->item_batch_id!=null)? explode(',',$batches->item_batch_id):[]; - } - //check the count of ward_treatment - if (count($patient->ward_treatment) > count($batch_id_records)){ - //add the difference to as the start of the array - for ($i=count($batch_id_records); $i < count($patient->ward_treatment); $i++) { - array_unshift($batch_id_records, []); - } - } - $patient->batch_items = $batch_id_records; - }else{ - $patient->batch_items = []; - } - } - } else { - $inpatients = []; - $drugs = []; - $search_by = ""; - $ward_id = 0; - // $patients=[]; - } - return view('pharmacy::pharmacy.return_drugs_per_chart', compact('inpatients','patients', 'wards', 'ward_id', 'search_by', 'drugs')); - } - - - public function store_returned_drugs_per_chart(Request $request) { - $drug_ids_array = $request->drug_id; - $ward_treatment_dispensations_id_array = $request->ward_treatment_dispensations_id; - $quantity_dispensed_array = $request->quantity_dispensed; - $quantity_to_return_array = $request->quantity_to_return; - $patient_ids_array = $request->patient_id; - $episode_ids_array = $request->episode_id; - $inpatient_info_ids_array = $request->inpatient_info_id; - $selected_batch_id_array = $request->batch_id; - $batch_id_array = $request->ward_treatment_batch_id; - for ($i = 0; $i < count($drug_ids_array); $i++) { - if (!isset($quantity_to_return_array[$i]) || !isset($quantity_dispensed_array[$i]) || !isset($ward_treatment_dispensations_id_array[$i])) { continue; } - - if ($quantity_to_return_array[$i] > 0 && !($quantity_dispensed_array[$i] < $quantity_to_return_array[$i])) { - $difference_in_drugs = $quantity_dispensed_array[$i] - $quantity_to_return_array[$i]; - $returned_drugs = new ReturnedDrugsPerWardChart; - $returned_drugs->ward_treatment_dispensation_id = $ward_treatment_dispensations_id_array[$i]; - $returned_drugs->quantity_before = $quantity_dispensed_array[$i]; - $returned_drugs->quantity_returned = $quantity_to_return_array[$i]; - $returned_drugs->created_by = Auth::id(); - $returned_drugs->save(); - - $ward_treatments_dispensation = WardTreatmentDispensation::find($ward_treatment_dispensations_id_array[$i]); - $ward_treatments_dispensation->quantity_given = $difference_in_drugs; - $ward_treatments_dispensation->save(); - //check if selected batch id is - if (isset($request->batch_id)){$selected_batch_id= $selected_batch_id_array[$i];}else{$selected_batch_id=null;} - $drug = Drug::find($drug_ids_array[$i]); - if ($drug) { - $drug->pharmacy_stock = $drug->pharmacy_stock + $quantity_to_return_array[$i]; - $drug->update(); - //return quantity to batch - $this->itemService->returnStockToAnySection($item_type=1,$drug_ids_array[$i],$ward_treatments_dispensation,$patient_ids_array[$i],$episode_ids_array[$i], $quantity_to_return_array[$i],'pharmacy_stock',$selected_batch_id); - } - } - } - - flash("Drugs have been returned from ward per chart")->success(); - return redirect('return_drugs_per_chart'); - } - - public function ward_dispensing_per_chart_report(Request $request) - { - $ward_id = $request->ward_id; - $filters = []; - - if($request->search_by == 1){ - // custom date - $start_date = Carbon::createFromFormat('d/m/Y', $request->reg_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->reg_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date]); - array_push($filters, ['created_at', '<', $end_date]); - } elseif($request->search_by == 2){ - // custom date range - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date]); - array_push($filters, ['created_at', '<', $end_date]); - } else { - // last 24 hours - $last_day = Carbon::now()->subDay(); - - array_push($filters, ['created_at', '>', $last_day]); - } - - $search_by = $request->search_by; - - if (!empty($ward_id) && $ward_id != 0) { - $ward_chart_approvals = WardChartApproval::where(['ward_id' => $ward_id])->where($filters)->orderBy('created_at', 'desc')->get(); - } else { - $ward_chart_approvals = WardChartApproval::where($filters)->orderBy('created_at', 'desc')->get(); - } - - $staff_array = $this->userService->pluckUserFullName(); - $wards = DB::table('wards')->where('available', 1)->orderBy('name')->pluck("name", "id")->toArray(); - $wards = ['0' => 'All wards'] + $wards; - - return view('pharmacy::pharmacy.ward_dispensing_per_chart_report', compact('ward_chart_approvals', 'wards', 'staff_array', 'ward_id', 'search_by')); - } - - public function ward_chart_report_details(Request $request): View - { - $chart_approval_record = WardChartApproval::find($request->approval_id); - - return view('pharmacy::pharmacy.ward_chart_report_details', compact('chart_approval_record')); - } - - public function print_ward_chart_report_details($approval_id): RedirectResponse - { - $chart_record = WardChartApproval::find($approval_id); - - if (!$chart_record || is_null($chart_record->cancer_protocol_order_id)) { - return redirect()->back(); - } - - $cancer_records = CancerProtocolWardChart::whereIn('id', explode(",", $chart_record->cancer_protocol_order_id)) - ->get(); - - if (count($cancer_records) === 0) { - return redirect()->back(); - } - - $request_array = ["protocol_instruction" => explode(",", $chart_record->comments)]; - - foreach ($cancer_records as $cancer_record) { - $protocol_drug_ids = explode(",", $cancer_record->protocol_drug_id); - $request_array = array_merge_recursive( - $request_array, - [ - "protocol_ward_id" => array_fill(0, count($protocol_drug_ids), $cancer_record->ward_id), - "protocol_patient_id" => array_fill(0, count($protocol_drug_ids), $cancer_record->patient_id), - "protocol_episode_id" => array_fill(0, count($protocol_drug_ids), $cancer_record->episode_id), - "protocol_drug_dose" => explode(",", $cancer_record->protocol_drug_dose), - "protocol_dosage_to_dispense" => explode(",", $cancer_record->protocol_dosage_to_dispense), - "protocol_quantity_to_dispense" => explode(",", $cancer_record->protocol_quantity_to_dispense), - "protocol_drug_ids" => $protocol_drug_ids, - "protocol_drug_dose_label" => explode(",", $cancer_record->protocol_drug_dosage_label), - ] - ); - } - - session()->put('request_array', $request_array); - return redirect('print_protocol_ward_chart'); - } - - public function drugs_stock_reconciliation(Request $request) { - $drugs = []; - $item_ids_array = $request->search_items_ids; - - if ($item_ids_array) { - $is_all_items = in_array("all_items", $item_ids_array); - - if ($is_all_items) { - $drugs = Drug::where('available', 1)->orderby('name', 'asc')->get(); - } else{ - $drugs = Drug::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } - } - - $chart_of_accounts = ChartOfAccount::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $chart_of_accounts = ['' => '- select -'] + $chart_of_accounts; - - $drugs_dropdown = DB::table('drugs')->where('available', 1)->whereNull('deleted_at')->orderBy('name', 'asc')->pluck('name','id')->prepend('All drugs', 'all_items')->toArray(); - - $stock_adjustment_chart_of_account = ChartOfAccount::where('slug', 'stock_adjustment')->first(); - - return view('pharmacy::pharmacy.drugs_stock_reconciliation', compact('drugs', 'chart_of_accounts', 'drugs_dropdown', 'stock_adjustment_chart_of_account')); - } - - public function store_pharmacy_drugs_stock_count(Request $request) - { - $drugs_ids_array = $request->drug_id; - $cost_price_array = $request->cost_price; - $system_stock_array = $request->system_stock; - $physical_stock_array = $request->physical_stock; - $difference_array = $request->difference; - $expiry_date_array = $request->expiry_date; - $reason_for_difference_array = $request->reason_for_difference; - - $batch_drug_ids_array = $request->batch_drug_id; - $unique_drug_ids_with_batches_array = array_unique($batch_drug_ids_array); - $batch_numbers_array = $request->batch_number; - $batch_quantity_balances_array = $request->batch_quantity_balance; - $batch_expiry_dates_array = $request->expiry_date; - $batch_unit_cost = $request->batch_unit_cost; - $batch_db_record_ids_array = $request->item_batch_watcher_id; - $batch_unit_cost = $request->batch_unit_cost; - - $drugs_with_initial_stock_array = is_null($request->is_initial_stock) ? [] : $request->is_initial_stock; - $stock_adjustment_chart_of_account = ChartOfAccount::where('slug', 'stock_adjustment')->first(); - $affected_account_id = $stock_adjustment_chart_of_account->id; - $opening_inventory_chart_of_account = ChartOfAccount::where('slug', 'opening_inventory')->first(); - //$affected_account_id = $request->account_id; - //get the max identifier - $max_stock_count_identifier = DB::table('pharmacy_stock_reconciliations')->max('stock_count_identifier'); - $reconcile_drug_pharmacy_stock = true; - - //update batch tracking tables with reconciliations - for ($i=0; $i < count($batch_numbers_array) ; $i++) { - if (!is_null($batch_numbers_array[$i]) && !is_null($batch_quantity_balances_array[$i])) { - //enforce double entry per batch - if (in_array($batch_drug_ids_array[$i], $drugs_with_initial_stock_array)) { - $affected_account_id = $opening_inventory_chart_of_account->id;//override adjustment a/c to be opening_inv - } else{ - $affected_account_id = $stock_adjustment_chart_of_account->id; - } - account_for_batch_reconciliations_difference(1, $batch_drug_ids_array[$i], $affected_account_id, $batch_numbers_array[$i], $batch_quantity_balances_array[$i], $request->reconciliation_date, "pharmacy", null); - - reconcile_batches(1, $batch_drug_ids_array[$i], $batch_numbers_array[$i], $batch_quantity_balances_array[$i], $batch_expiry_dates_array[$i], "pharmacy",$batch_unit_cost[$i]??0, $batch_db_record_ids_array[$i]??0, null); - } - } - - if (isset($request->reconcile_stock)) { - for ($x = 0; $x < count($drugs_ids_array); $x++): - /* check if the difference value is not null and then update the drug */ - if (!is_null($difference_array[$x])) { - $physical_stock = new PharmacyStockReconciliation; - $physical_stock->drug_id = $drugs_ids_array[$x]; - $physical_stock->system_stock = $system_stock_array[$x]; - $physical_stock->physical_stock = $physical_stock_array[$x]; - $physical_stock->difference = $difference_array[$x]; - $physical_stock->reason_for_difference = $reason_for_difference_array[$x]; - $physical_stock->completion_status = 1; - $physical_stock->affected_account_id = $affected_account_id; - $physical_stock->reconciliation_date = $request->reconciliation_date; - $physical_stock->general_comment = $request->general_comment; - $physical_stock->created_by = Auth::id(); - $physical_stock->save(); - //add the stock_count_identifier of the newly counted stock - $physical_stock_record_to_update = PharmacyStockReconciliation::find($physical_stock->id); - $physical_stock_record_to_update->stock_count_identifier = $max_stock_count_identifier+1;//increase ID by 1 for new - $physical_stock_record_to_update->update(); - - //update the system stock levels with the newly counted physical stock - //update only those with new physical value - $drugs = Drug::find($drugs_ids_array[$x]); - $drugs->pharmacy_stock = $physical_stock_array[$x]; - $drugs->expiry_date = $expiry_date_array[$x]; - if (in_array($drugs->id, $drugs_with_initial_stock_array)) { - $existing_opening_stock = is_null($drugs->opening_stock) ? 0 : $drugs->opening_stock; - $drugs->opening_stock = $existing_opening_stock + $physical_stock_array[$x]; - $drugs->opening_cost_price = $cost_price_array[$x]; - $drugs->opening_stock_date = $request->reconciliation_date; - $drugs->pharmacy_opening_stock = $physical_stock_array[$x]; - $affected_account_id = $opening_inventory_chart_of_account->id;//overide adjustment a/c to be opening_inv - } else{ - $affected_account_id = $stock_adjustment_chart_of_account->id; - } - $drugs->updated_by = Auth::id(); - - //enforce double entry - //account_for_stock_reconciliations_difference($item_type = 1, $drugs_ids_array[$x], $affected_account_id, $difference_array[$x], $cost_price_array[$x], $request->reconciliation_date); - - $reconcile_drug_pharmacy_stock = $drugs->update(); - }else $reconcile_drug_pharmacy_stock = true; - endfor; - - if ($reconcile_drug_pharmacy_stock): - flash('Stock levels have been reconciled')->success(); - return redirect('pharmacy_stock_sheet'); - endif; - } else if(isset($request->save_stock)){ - //save these for editing later on - for ($x = 0; $x < count($drugs_ids_array); $x++): - $physical_stock = new PharmacyStockReconciliation; - $physical_stock->drug_id = $drugs_ids_array[$x]; - $physical_stock->system_stock = $system_stock_array[$x]; - $physical_stock->physical_stock = $physical_stock_array[$x]; - $physical_stock->difference = $difference_array[$x]; - $physical_stock->reason_for_difference = $reason_for_difference_array[$x]; - $physical_stock->completion_status = 0; - $physical_stock->created_by = Auth::id(); - $saved_physical_stock = $physical_stock->save(); - //add stock_count_identifier that will be used in resuming edit - $physical_stock_record_to_that_will_be_updated = PharmacyStockReconciliation::find($physical_stock->id); - $physical_stock_record_to_that_will_be_updated->stock_count_identifier = $max_stock_count_identifier+1;//increase ID by 1 for new - $physical_stock_record_to_that_will_be_updated->update(); - endfor; - - if ($saved_physical_stock): - flash('Physical stock has been saved. You can resume later')->success(); - return redirect('pharmacy_stock_sheet'); - endif; - } - - flash('Sorry, unable to update stock')->error(); - return redirect()->back(); - } - - public function drugs_stock_reconciliation_report() - { - $reconciled_stocks = PharmacyStockReconciliation::groupBy("stock_count_identifier")->get(); - return view('pharmacy::pharmacy.drugs_stock_reconciliation_report',compact('reconciled_stocks')); - } - - /* stock reconciliation report details */ - public function drugs_stock_reconciliation_report_details(Request $request) - { - $drugs_reconciled = PharmacyStockReconciliation::where(['stock_count_identifier' => $request->stock_count_identifier])->get(); - return view('pharmacy::pharmacy.drugs_stock_reconciliation_report_details',compact('drugs_reconciled')); - } - - public function alter_prescriptions($treatment_id, $patient_id) { - $treatment = Treatment::find($treatment_id); - session()->put('alter_episode_id', $treatment->episode_id); - session()->put('alter_patient_id', $patient_id); - return redirect('/prescriptions/create'); - } - - public function patient_drugs_given_so_far($patient_id, $episode_id) { - $ward_quantities_given_option = DB::table('ward_treatment_dispensations')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->groupBy('drug_id')->selectRaw('*, sum(quantity_given) as quantity_given')->get(); - - $original_ward_presc = WardTreatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $stopped_ward_drugs_array = []; - - foreach ($original_ward_presc as $presc_record) { - $stopped_drugs_array = is_null($presc_record->stopped_drugs) ? [] : explode(",", $presc_record->stopped_drugs); - $stopped_ward_drugs_array = array_merge($stopped_ward_drugs_array, $stopped_drugs_array); - } - - $html_text = ""; - - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - - foreach($ward_quantities_given_option as $record){ - $html_text .= ""; - - $dispensation_details = WardTreatmentDispensation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'drug_id' => $record->drug_id])->get(); - - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - - for($i = 1; $i < count($dispensation_details); $i++) { - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - $html_text .= ""; - } - - $html_text .= ""; - } - - $html_text .= '
    Drug Name Date Quantity
    "; - $html_text .= get_name($record->drug_id, "id", "name", "drugs"); - - if (in_array($record->drug_id, $stopped_ward_drugs_array)) { - $html_text .= "

    "; - } else { - $html_text .= "

    "; - } - - $html_text .= "
    " . streamline_date_time($dispensation_details[0]->created_at) . " by " . get_full_name($dispensation_details[0]->created_by, "id", "first_name", "last_name", "users") . "" . $dispensation_details[0]->quantity_given . "
    " . streamline_date_time($dispensation_details[$i]->created_at) . " by " . get_full_name($dispensation_details[$i]->created_by, "id", "first_name", "last_name", "users") . "" . $dispensation_details[$i]->quantity_given . "
    Total " . $record->quantity_given . "
    '; - - return json_encode([ - "html" => $html_text - ]); - } - - public function pharmacy_dispensation_report_patients(Request $request) { - $filters = []; - - if($request->search_by == 0){ - // last 24 hours - array_push($filters, ['created_at', '>', Carbon::now()->subDay()]); - $search_text = "Showing dispensations in the past 24 hours"; - } elseif($request->search_by == 1){ - // custom date - $start_date = Carbon::createFromFormat('d/m/Y', $request->reg_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->reg_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date]); - array_push($filters, ['created_at', '<', $end_date]); - - $search_text = "Showing dispensations made between " . streamline_date_plain($start_date) . " and " . streamline_date_plain($end_date); - } elseif($request->search_by == 2){ - // custom date range - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date]); - array_push($filters, ['created_at', '<', $end_date]); - - $search_text = "Showing dispensations made between " . streamline_date_plain($start_date) . " and " . streamline_date_plain($end_date); - } else { - // last 24 hours - array_push($filters, ['created_at', '>', Carbon::now()->subDay()]); - $search_text = "Showing dispensations in the past 24 hours"; - } - - $dispensations = PatientDispensing::where($filters)->get(); - - return view('pharmacy::pharmacy.pharmacy_dispensation_report_patients', compact('dispensations', 'search_text')); - } - - public function cancel_dispensation($id) { - $dispensation = PatientDispensing::find($id); - - $cancelled_dispensation = new CancelledPatientOpdDispensation(); - $cancelled_dispensation->patient_id = $dispensation->patient_id; - $cancelled_dispensation->treatment_id = $dispensation->treatment_id; - $cancelled_dispensation->drugs = $dispensation->drugs; - $cancelled_dispensation->dose = $dispensation->dose; - $cancelled_dispensation->dose2 = $dispensation->dose2; - $cancelled_dispensation->drug_frequency = $dispensation->drug_frequency; - $cancelled_dispensation->instructions = $dispensation->instructions; - $cancelled_dispensation->duration = $dispensation->duration; - $cancelled_dispensation->quantity_dispensed = $dispensation->quantity_dispensed; - $cancelled_dispensation->tta = $dispensation->tta; - $cancelled_dispensation->previous_created_by = $dispensation->created_by; - $cancelled_dispensation->previous_created_at = $dispensation->created_at; - $cancelled_dispensation->created_by = Auth::id(); - $cancelled_dispensation->save(); - - $treatment = Treatment::find($dispensation->treatment_id); - $treatment->dispense_status = 0; - $treatment->update(); - - // fill back the drug quantities - $drug_ids_array = explode(",", $dispensation->drugs); - $quantity_to_dispense_array = explode(",", $dispensation->quantity_dispensed); - - if ($dispensation->purchased_elsewhere) { - $purchased_elsewhere_array = explode(",", $dispensation->purchased_elsewhere); - } else { - $purchased_elsewhere_array = array_fill(0, count($drug_ids_array), 0); - } - - for ($x = 0; $x < count($drug_ids_array); $x++) { - $drug = Drug::find($drug_ids_array[$x]); - - if ($drug && $purchased_elsewhere_array[$x] == 0) { - $current_stock = $drug->pharmacy_stock; - $new_stock = $current_stock + $quantity_to_dispense_array[$x]; - $drug->pharmacy_stock = $new_stock; - $drug->update(); - //reverse the used batches too - reverse_dispensed_item_batches(1, $drug_ids_array[$x], $quantity_to_dispense_array[$x], $dispensation->patient_id, 'treatments', $treatment->id); - } - } - - $dispensation->forceDelete(); - flash('Patient dispensation has been cancelled!')->success(); - return redirect('pharmacy_dispensation_report_patients'); - } - - public function pharmacy_dispensation_report_drugs(Request $request) - { - $search_text = ""; - $filters = []; - - $selected_drug_id = $request->drug_id; - /* create associative array of drugs with their quantities */ - $drugs_qty_associative_array = []; - - if($request->search_by == 0){ - // last 24 hours - array_push($filters, ['created_at', '>', Carbon::now()->subDay()]); - $search_text = "Showing dispensations in the past 24 hours"; - } elseif($request->search_by == 1){ - // custom date - $start_date = Carbon::createFromFormat('d/m/Y', $request->reg_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->reg_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date]); - array_push($filters, ['created_at', '<', $end_date]); - - $search_text = "Showing dispensations made between " . streamline_date_plain($start_date) . " and " . streamline_date_plain($end_date); - } elseif($request->search_by == 2){ - // custom date range - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date]); - array_push($filters, ['created_at', '<', $end_date]); - - $search_text = "Showing dispensations made between " . streamline_date_plain($start_date) . " and " . streamline_date_plain($end_date); - } else { - // last 24 hours - array_push($filters, ['created_at', '>', Carbon::now()->subDay()]); - $search_text = "Showing dispensations in the past 24 hours"; - } - - $drugs_selection_array = Drug::where('available', 1)->pluck("name","id")->toArray(); - $drugs_selection_array = ['' => '- select -'] + $drugs_selection_array; - - $drugs_dispensed_with_qty_array = []; - $opd_drugs_dispensed_with_qty_array = []; - $ipd_drugs_dispensed_with_qty_array = []; - $drugs_dispensed = []; - $quantity_dispensed = []; - - $opd_dispensations = PatientDispensing::where($filters)->get(); - if (count($opd_dispensations) > 0) { - foreach ($opd_dispensations as $opd_record) { - $drugs_array = explode(",", $opd_record->drugs); - $quantities_array = explode(",", $opd_record->quantity_dispensed); - $purchased_elsewhere_array = explode(",", $opd_record->purchased_elsewhere); - - for ($i=0; $i < count($drugs_array); $i++) { - if (isset($purchased_elsewhere_array[$i]) && $purchased_elsewhere_array[$i] == 0) { - if (!is_null($selected_drug_id)) { - if ($selected_drug_id == $drugs_array[$i]) { - /* ============ meet Ms.Elegant for the first date with opd stuff ==========*/ - if (array_key_exists($drugs_array[$i], $drugs_qty_associative_array)){ - //echo "Found the Key"; - $drugs_qty_associative_array[$drugs_array[$i]] += $quantities_array[$i]; - } - else{ - //echo "Key not Found"; - $drugs_qty_associative_array[$drugs_array[$i]] = $quantities_array[$i]; - } - /*============ bye bye Ms.Elegant ========*/ - - - /* ============ meet Ms.Elegant's little sister ==========*/ - if (array_key_exists($drugs_array[$i], $opd_drugs_dispensed_with_qty_array)){ - //echo "Found the Key"; - $opd_drugs_dispensed_with_qty_array[$drugs_array[$i]] += $quantities_array[$i]; - } - else{ - //echo "Key not Found"; - $opd_drugs_dispensed_with_qty_array[$drugs_array[$i]] = $quantities_array[$i]; - } - /*============ bye bye Ms.Elegant's little sister ========*/ - } - } else{ - /* ============ meet Ms.Elegant for the first date with opd stuff ==========*/ - if (array_key_exists($drugs_array[$i], $drugs_qty_associative_array)){ - //echo "Found the Key"; - $drugs_qty_associative_array[$drugs_array[$i]] += $quantities_array[$i]; - } - else{ - //echo "Key not Found"; - $drugs_qty_associative_array[$drugs_array[$i]] = $quantities_array[$i]; - } - /*============ bye bye Ms.Elegant ========*/ - - - /* ============ meet Ms.Elegant's little sister ==========*/ - if (array_key_exists($drugs_array[$i], $opd_drugs_dispensed_with_qty_array)){ - //echo "Found the Key"; - $opd_drugs_dispensed_with_qty_array[$drugs_array[$i]] += $quantities_array[$i]; - } - else{ - //echo "Key not Found"; - $opd_drugs_dispensed_with_qty_array[$drugs_array[$i]] = $quantities_array[$i]; - } - /*============ bye bye Ms.Elegant's little sister ========*/ - } - } - } - } - } - - $ward_quantities = []; - $ward_dispensed_drugs = []; - - if (!is_null($selected_drug_id)) { - $ward_dispensations = WardTreatmentDispensation::where($filters)->where('drug_id', $selected_drug_id)->get(); - } else { - //selected_drug_id - $ward_dispensations = WardTreatmentDispensation::where($filters)->get(); - } - - if (count($ward_dispensations) > 0) { - foreach ($ward_dispensations as $ward_record) { - - /* ============ meet Ms.Elegant for the second date with ward stuff ==========*/ - if (array_key_exists($ward_record->drug_id, $drugs_qty_associative_array)){ - //echo "Found the Key"; - $drugs_qty_associative_array[$ward_record->drug_id] += $ward_record->quantity_given; - } - else{ - //echo "Key not Found"; - $drugs_qty_associative_array[$ward_record->drug_id] = $ward_record->quantity_given; - } - /*============ bye bye Ms.Elegant ========*/ - - - /* ============ meet Ms.Elegant's other little sister ==========*/ - if (array_key_exists($ward_record->drug_id, $ipd_drugs_dispensed_with_qty_array)){ - //echo "Found the Key"; - $ipd_drugs_dispensed_with_qty_array[$ward_record->drug_id] += $ward_record->quantity_given; - } - else{ - //echo "Key not Found"; - $ipd_drugs_dispensed_with_qty_array[$ward_record->drug_id] = $ward_record->quantity_given; - } - /*============ bye bye Ms.Elegant's other little sister ========*/ - } - } - - return view('pharmacy::pharmacy.pharmacy_dispensation_report_drugs', compact('drugs_selection_array', 'drugs_dispensed', 'quantity_dispensed', 'ward_quantities', 'ward_dispensed_drugs', 'drugs_qty_associative_array', 'search_text', 'opd_drugs_dispensed_with_qty_array', 'ipd_drugs_dispensed_with_qty_array', 'request')); - } - - public function dispensation_report_details(Request $request) - { - $search_text = ""; - $filters = []; - /* create associative array of drugs with their quantities */ - $drugs_qty_associative_array = []; - $selected_drug_id = $request->details_drug_id; - - if($request->details_search_by == 0){ - // last 24 hours - array_push($filters, ['created_at', '>', Carbon::now()->subDay()]); - $search_text = "Showing dispensations in the past 24 hours"; - } elseif($request->details_search_by == 1){ - // custom date - $start_date = Carbon::createFromFormat('d/m/Y', $request->details_reg_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->details_reg_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date]); - array_push($filters, ['created_at', '<', $end_date]); - - $search_text = "Showing dispensations made between " . streamline_date_plain($start_date) . " and " . streamline_date_plain($end_date); - } elseif($request->details_search_by == 2){ - // custom date range - $start_date = Carbon::createFromFormat('d/m/Y', $request->details_start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->details_end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date]); - array_push($filters, ['created_at', '<', $end_date]); - - $search_text = "Showing dispensations made between " . streamline_date_plain($start_date) . " and " . streamline_date_plain($end_date); - } else { - // last 24 hours - array_push($filters, ['created_at', '>', Carbon::now()->subDay()]); - $search_text = "Showing dispensations in the past 24 hours"; - } - - $drugs_array = Drug::pluck("name","id")->toArray(); - $drugs_array = ['' => '- select -'] + $drugs_array; - - $drugs_dispensed_with_qty_array = []; - $opd_drugs_dispensed_with_qty_array = []; - $ipd_drugs_dispensed_with_qty_array = []; - $drugs_dispensed = []; - $quantity_dispensed = []; - - $opd_dispensations = PatientDispensing::where($filters)->get(); - if (count($opd_dispensations) > 0) { - foreach ($opd_dispensations as $opd_record) { - $drugs_array = explode(",", $opd_record->drugs); - $quantities_array = explode(",", $opd_record->quantity_dispensed); - $purchased_elsewhere_array = explode(",", $opd_record->purchased_elsewhere); - - for ($i=0; $i < count($drugs_array); $i++) { - if (isset($purchased_elsewhere_array[$i]) && $purchased_elsewhere_array[$i] == 0) { - /* ============ meet Ms.Elegant for the first date with opd stuff ==========*/ - if (array_key_exists($drugs_array[$i], $drugs_qty_associative_array)){ - //echo "Found the Key"; - $drugs_qty_associative_array[$drugs_array[$i]] += $quantities_array[$i]; - } - else{ - //echo "Key not Found"; - $drugs_qty_associative_array[$drugs_array[$i]] = $quantities_array[$i]; - } - /*============ bye bye Ms.Elegant ========*/ - - - /* ============ meet Ms.Elegant's little sister ==========*/ - if (array_key_exists($drugs_array[$i], $opd_drugs_dispensed_with_qty_array)){ - //echo "Found the Key"; - $opd_drugs_dispensed_with_qty_array[$drugs_array[$i]] += $quantities_array[$i]; - } - else{ - //echo "Key not Found"; - $opd_drugs_dispensed_with_qty_array[$drugs_array[$i]] = $quantities_array[$i]; - } - /*============ bye bye Ms.Elegant's little sister ========*/ - } - } - } - } - - $ward_dispensations = WardTreatmentDispensation::where($filters)->where('drug_id', $selected_drug_id)->get(); - - return view('pharmacy::pharmacy.dispensation_report_details', compact('search_text', 'ward_dispensations', 'selected_drug_id', 'opd_dispensations')); - } - - public function dispensed_details_review(Request $request) { - $treatment_id = $request->treatment_id; - $patient_id = $request->patient_id; - $episode_id = $request->episode_id; - - $patient = Patient::where(['id' => $patient_id])->first(); - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $marital_statuses = DB::table('marital_statuses')->pluck("name", "id"); - $drug_categories = DB::table('drug_categories')->get(); - $treatment = Treatment::find($treatment_id); - //$treatments = Treatment::where(['episode_id' => $episode_id, 'dispense_status' => 0])->get(); - $dosage_frequencies = DB::table('dosage_frequencies')->pluck("name", "id")->toArray(); - - //allergies and alerts - $known_patient_allergies = Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->pluck('name', 'id'); - - return view('pharmacy::pharmacy.dispensed_details_review', compact('patient_id', 'treatment_id', 'patient', 'categories', 'marital_statuses', 'drug_categories', 'treatment', 'known_patient_alerts', 'known_patient_allergies', 'drug_categories_array','dosage_frequencies')); - } - - public function view_prescriptions_to_cancel(Request $request) { - $search_by = $request->search_by; - $reg_date = $request->reg_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - $filters = []; - - if($search_by == 0){ - // last 24 hours - $start_date_search = Carbon::now()->subDay(); - $end_date_search = Carbon::now(); - $date_search = "Today"; - } elseif($search_by == 1){ - // custom date - $start_date_search = Carbon::parse($reg_date)->startOfDay(); - $end_date_search = Carbon::parse($reg_date)->endOfDay(); - $date_search = streamline_date($start_date_search); - } elseif($search_by == 2){ - // custom date range - $start_date_search = Carbon::parse($start_date)->startOfDay(); - $end_date_search = Carbon::parse($end_date)->endOfDay(); - $date_search = streamline_date($start_date_search) . " to " . streamline_date($end_date_search); - } - - $prescriptions = Treatment::where('dispense_status', 0) - ->where('payment_status', 0) - ->whereBetween('created_at', [$start_date_search, $end_date_search]) - ->orderBy('id','desc') - ->get(); - - return view('pharmacy::pharmacy.view_prescriptions_to_cancel',compact('prescriptions', 'date_search')); - } - - public function cancel_prescriptions($treatment_id) { - $treatment = Treatment::find($treatment_id); - - try { - $treatment->delete(); - - // check if there are any insurance claims available - $claim = InsuranceClaim::where('order_id', $treatment_id)->where('item_type', 4)->first(); - - if ($claim) { - $claim->delete(); - } - - flash("Treatment order has been cancelled.")->success(); - } catch (\Exception $exception) { - flash("Treatment order has not been cancelled.")->error(); - } - - return redirect('/pharmacy/view_prescriptions_to_cancel'); - } - - public function view_cancelled_prescriptions(Request $request) { - $search_by = $request->search_by; - $reg_date = $request->reg_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - $filters = []; - - if($search_by == 0){ - // last 24 hours - $start_date_search = Carbon::now()->subDay(); - $end_date_search = Carbon::now(); - $date_search = "Today"; - } elseif($search_by == 1){ - // custom date - $start_date_search = Carbon::parse($reg_date)->startOfDay(); - $end_date_search = Carbon::parse($reg_date)->endOfDay(); - $date_search = streamline_date($start_date_search); - } elseif($search_by == 2){ - // custom date range - $start_date_search = Carbon::parse($start_date)->startOfDay(); - $end_date_search = Carbon::parse($end_date)->endOfDay(); - $date_search = streamline_date($start_date_search) . " to " . streamline_date($end_date_search); - } - - $prescriptions = DB::table('treatments') - ->whereNotNull('deleted_at') - ->whereBetween('deleted_at', [$start_date_search, $end_date_search]) - ->orderBy('id','desc') - ->get(); - - return view('pharmacy::pharmacy.view_cancelled_prescriptions',compact('prescriptions', 'date_search')); - } - - public function restore_deleted_ordered_treatments($id) { - $treatment = Treatment::withTrashed()->find($id); - - try { - $treatment->restore(); - - // check if there are any insurance claims available - $claim = InsuranceClaim::onlyTrashed()->where('order_id', $id)->where('service_type', 4)->first(); - - if ($claim) { - $claim->restore(); - } - - flash("Treatment order has been activated")->success(); - } catch (\Exception $exception) { - flash("Treatment order has not been activated")->error(); - } - - return redirect('/pharmacy/view_cancelled_prescriptions'); - } - - public function dispense_treatment_progressively($treatment_id) { - $treatment = Treatment::find($treatment_id); - - $treatment_opd = new TreatmentOpdProgressive(); - $treatment_opd->patient_id = $treatment->patient_id; - $treatment_opd->episode_id = $treatment->episode_id; - $treatment_opd->initial_treatment_id = $treatment->id; - $treatment_opd->treatment_ids = $treatment->id; - $treatment_opd->is_first_treatment_given = 0; - $treatment_opd->drugs = $treatment->drugs; - $treatment_opd->dose = $treatment->doses; - $treatment_opd->drug_frequency = $treatment->frequencies; - $treatment_opd->durations = $treatment->durations; - $treatment_opd->quantities_to_dispense = $treatment->quantities_dispensed; - $treatment_opd->instruction = $treatment->instruction; - $treatment_opd->created_by = Auth::id(); - $treatment_opd->prescribed_by = $treatment->created_by; - $treatment_opd->order_comments = $treatment->order_comments; - $treatment_opd->save(); - - $treatment->confirmation_status = 1; - $treatment->is_treatment_progressive = $treatment_opd->id; - $treatment->save(); - - flash('Treatment has been confirmed and progressive dispensation started')->success(); - return redirect('confirm_prescriptions'); - } - - public function confirm_progressive_prescriptions(Request $request) { - $today = Carbon::today(); - $yesterday = Carbon::yesterday(); - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $display = dateLabelSetter2($request); - $filters = []; - - if (isset($request->patient_id) && $request->patient_id != 0) { - array_push($filters, ['patient_id', '=', $request->patient_id]); - } - - switch ($request->dates){ - case 'today': - default: - $end = Carbon::parse($today)->endOfDay(); - $start = Carbon::parse($today)->startOfDay(); - break; - case 'yesterday': - $end = Carbon::parse($yesterday)->endOfDay(); - $start = Carbon::parse($yesterday)->startOfDay(); - break; - case 'custom_date': - $end = Carbon::parse($request->start)->endOfDay(); - $start = Carbon::parse($request->start_date)->startOfDay(); - break; - case 'custom_date_range': - $end = Carbon::parse($request->end_date)->endOfDay(); - $start = Carbon::parse($request->start_date)->startOfDay(); - - } - - $prescriptions = TreatmentOpdProgressive::where('is_dispensation_complete', 0) - ->whereBetween('created_at',[$start, $end]) - ->where($filters) - ->orderBy('created_at', 'desc') - ->get(); - - return view('pharmacy::pharmacy.confirm_progressive_prescriptions', compact('prescriptions', 'categories', 'display')); - } - - public function confirm_progressive_prescriptions_details($treatment_id) { - $original_prescription = TreatmentOpdProgressive::find($treatment_id); - $patient_id = $original_prescription->patient_id; - - if ($original_prescription->is_first_treatment_given != 0) { - $previous_progressive_treatments = Treatment::whereIn('id', explode(",", $original_prescription->treatment_ids))->get(); - } else { - $previous_progressive_treatments = []; - } - - $patient = Patient::find($patient_id); - - return view('pharmacy::pharmacy.confirm_progressive_prescriptions_details', compact('previous_progressive_treatments', 'original_prescription', 'patient', 'patient_id')); - } - - public function save_progressive_prescriptions(Request $request) { - $duration_array = $request->duration; - $patient_id = $request->patient_id; - $episode_id = $request->episode_id; - $time_duration = []; - $is_first_treatment = false; - $quantity_given_so_far = $request->quantity_given_so_far; - $quantity_prescribed = $request->quantity_prescribed; - $quantity_dispensed = $request->quantity_dispensed; - $is_treatment_done = array_fill(0, count($duration_array), false); - - $original_prescription = TreatmentOpdProgressive::find($request->progressive_id); - - // check if this is the first time a progressive prescription is made to update it - if ($original_prescription->is_first_treatment_given == 0) { - $treatment = Treatment::find($original_prescription->initial_treatment_id); - - if ($treatment->dispense_status == 1) { - // if the treatment has been dispensed then lock the record - $original_prescription->is_dispensation_complete = 1; - $original_prescription->save(); - flash("The treatment order for " . get_patient_name($patient_id) . " has already been dispensed!")->error(); - return redirect("/confirm_progressive_prescriptions"); - } - - $treatment->updated_by = Auth::id(); - $original_prescription->is_first_treatment_given = 1; - $original_prescription->payment_status = $treatment->payment_status; - $is_first_treatment = true; - } else { - $treatment = new Treatment; - $treatment->created_by = Auth::id(); - $treatment->payment_status = $original_prescription->payment_status; - } - - // sort the durations by adding days string - for ($i = 0; $i < count($duration_array); $i++) { - $time_duration[] = $duration_array[$i] . " Days"; - - $is_treatment_done[$i] = (($quantity_given_so_far[$i] + $quantity_dispensed[$i]) > ($quantity_prescribed[$i] - 1)); - } - - // insert treatment details with confirmation and progressive - $treatment->patient_id = $patient_id; - $treatment->episode_id = $episode_id; - $treatment->drugs = implode(',', $request->drug_id); - $treatment->doses = implode(',', $request->dose); - $treatment->frequencies = implode(',', $request->frequency); - $treatment->durations = implode(',', $time_duration); - $treatment->quantities_dispensed = implode(',', $request->quantity_dispensed); - $treatment->instruction = implode(',', $request->instructions); - $treatment->confirmation_status = 1; - $treatment->is_treatment_progressive = $request->progressive_id; - - if ($treatment->save()) { - // redo the insurance claim for treatment if it exists - if ($request->patient_insurance_status == 1) { - generate_insurance_claim($treatment->id, 4); - } - - // group the treatment ids - $current_treatment_ids = explode(",", $original_prescription->treatment_ids); - - // avoid repeating the first id - if (!$is_first_treatment) { - $current_treatment_ids[] = $treatment->id; - } - - // check if all medicine in the original prescription has been dispensed and close this record - if (!in_array(false, $is_treatment_done)) { - $original_prescription->is_dispensation_complete = 1; - } - - $original_prescription->treatment_ids = implode(",", $current_treatment_ids); - $original_prescription->save(); - - flash("New treatment record has been created")->success(); - } else { - flash("Failed to create a new treatment record")->error(); - } - return redirect("/confirm_progressive_prescriptions"); - } - - public function cancel_progressive_prescriptions($treatment_id) { - $treatment = TreatmentOpdProgressive::find($treatment_id); - - if ($treatment->delete()) { - flash("Progressive treatment order has been cancelled.")->success(); - return redirect('/confirm_progressive_prescriptions'); - } - } - - public function view_cancelled_progressive_prescriptions(Request $request) { - $search_by = $request->search_by; - $reg_date = $request->reg_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - $filters = []; - - if($search_by == 0){ - // last 24 hours - $start_date_search = Carbon::now()->subDay(); - $end_date_search = Carbon::now(); - $date_search = "Today"; - } elseif($search_by == 1){ - // custom date - $start_date_search = Carbon::parse($reg_date)->startOfDay(); - $end_date_search = Carbon::parse($reg_date)->endOfDay(); - $date_search = streamline_date($start_date_search); - } elseif($search_by == 2){ - // custom date range - $start_date_search = Carbon::parse($start_date)->startOfDay(); - $end_date_search = Carbon::parse($end_date)->endOfDay(); - $date_search = streamline_date($start_date_search) . " to " . streamline_date($end_date_search); - } - - $prescriptions = DB::table('treatments_opd_progressive') - ->whereNotNull('deleted_at') - ->whereBetween('deleted_at', [$start_date_search, $end_date_search]) - ->orderBy('id','desc') - ->get(); - - return view('pharmacy::pharmacy.view_cancelled_progressive_prescriptions',compact('prescriptions', 'date_search')); - } - - public function restore_deleted_progressive_prescriptions($id) { - $treatment = TreatmentOpdProgressive::withTrashed()->find($id); - - if ($treatment->restore()){ - flash("Progressive treatment order has been activated.")->success(); - return redirect('/pharmacy/view_cancelled_progressive_prescriptions'); - } - } - - public function delete_requisition($id) { - $requisition = Requisition::find($id); - - if ($requisition && $requisition->delete()) { - flash("Requisition has been deleted")->success(); - } else { - flash("Unable to delete requisition. Please contact the Stre@mline Support team")->error(); - } - - return redirect()->back(); - } - - public function delete_temporary_requisition($id) { - $temporary_requisition = TemporaryRequisition::find($id); - - // confirm the temp exists - if ($temporary_requisition && $temporary_requisition->delete()) { - flash("Requisition has been deleted")->success(); - } else { - flash("Unable to delete requisition. Please contact the Stre@mline Support team")->error(); - } - - return redirect()->back(); - } - - public function item_requisition_print($requisition_id, $item_type) - { - $hospital_details = HospitalInformation::first(); - $requisition_model = Requisition::withTrashed()->find($requisition_id); - - $data = [ - 'hospitalInfo' => $hospital_details, - 'requisition_model' => $requisition_model, - 'requisition_id' => $requisition_id, - 'item_type' => $item_type - ]; - - $pdf = SnappyPDF::loadView('pharmacy::pharmacy/item_requisition_print', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 10) - ->setOption('margin-top', 5) - ->setOption('margin-left', 2) - ->setOption('margin-right', 2) - ->setOption('footer-font-size', 10) - ->setOption('footer-html', '- Stre@mline - '. get_full_name(Auth::id(), "id", "first_name", "last_name", "users") .' '.streamline_date_time(date('Y-m-d')).''); - - return $pdf->inline('ITEMS BILL' . date(" d-m-y h:ia") . '.pdf'); - } - - public function sundries_stock_reconciliation(Request $request) { - $sundries = []; - $item_ids_array = $request->search_items_ids; - - if ($item_ids_array) { - $is_all_items = in_array("all_items", $item_ids_array); - - if ($is_all_items) { - $sundries = Sundry::where('available', 1)->orderby('name', 'asc')->get(); - } else{ - $sundries = Sundry::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } - } - - $chart_of_accounts = ChartOfAccount::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $chart_of_accounts = ['' => '- select -'] + $chart_of_accounts; - - $sundries_dropdown = DB::table('sundries')->whereNull('deleted_at')->orderBy('name', 'asc')->pluck('name','id')->prepend('All sundries', 'all_items')->toArray(); - - $stock_adjustment_chart_of_account = ChartOfAccount::where('slug', 'stock_adjustment')->first(); - - return view('pharmacy::pharmacy.sundries_stock_reconciliation', compact('sundries', 'chart_of_accounts', 'sundries_dropdown', 'stock_adjustment_chart_of_account')); - } - - public function store_pharmacy_sundries_stock_count(Request $request) - { - $sundries_ids_array = $request->sundry_id; - $cost_price_array = $request->cost_price; - $system_stock_array = $request->system_stock; - $physical_stock_array = $request->physical_stock; - $difference_array = $request->difference; - $expiry_date_array = $request->expiry_date; - $reason_for_difference_array = $request->reason_for_difference; - - $batch_sundry_ids_array = $request->batch_sundry_id; - $unique_sundry_ids_with_batches_array = array_unique($batch_sundry_ids_array); - $batch_numbers_array = $request->batch_number; - $batch_quantity_balances_array = $request->batch_quantity_balance; - $batch_expiry_dates_array = $request->expiry_date; - $batch_unit_cost= $request->batch_unit_cost; - $batch_db_record_ids_array = $request->item_batch_watcher_id; - $batch_unit_cost= $request->batch_unit_cost; - $sundries_with_initial_stock_array = is_null($request->is_initial_stock) ? [] : $request->is_initial_stock; - $stock_adjustment_chart_of_account = ChartOfAccount::where('slug', 'stock_adjustment')->first(); - $affected_account_id = $stock_adjustment_chart_of_account->id; - $opening_inventory_chart_of_account = ChartOfAccount::where('slug', 'opening_inventory')->first(); - //$affected_account_id = $request->account_id; - //get the max identfier - $max_stock_count_identifier = DB::table('pharmacy_sundry_stock_reconciliations')->max('stock_count_identifier'); - $reconcile_sundry_pharmacy_stock = true; - - //update batch tracking tables with reconciliations - for ($i=0; $i < count($batch_numbers_array) ; $i++) { - if (!is_null($batch_numbers_array[$i]) && !is_null($batch_quantity_balances_array[$i])) { - //enforce double entry per batch - if (in_array($batch_sundry_ids_array[$i], $sundries_with_initial_stock_array)) { - $affected_account_id = $opening_inventory_chart_of_account->id;//override adjustment a/c to be opening_inv - } else{ - $affected_account_id = $stock_adjustment_chart_of_account->id; - } - account_for_batch_reconciliations_difference($item_type = 2, $batch_sundry_ids_array[$i], $affected_account_id, $batch_numbers_array[$i], $batch_quantity_balances_array[$i], $request->reconciliation_date, "pharmacy", $ward_id = null); - - reconcile_batches($item_type = 2, $batch_sundry_ids_array[$i], $batch_numbers_array[$i], $batch_quantity_balances_array[$i], $batch_expiry_dates_array[$i], "pharmacy", $batch_unit_cost[$i]??0, $batch_db_record_ids_array[$i]??0, $ward_id=null); - } - } - - if (isset($request->reconcile_stock)) { - for ($x = 0; $x < count($sundries_ids_array); $x++): - /* check if the difference value is not null and then update the sundry */ - if (!is_null($difference_array[$x])) { - $physical_stock = new PharmacySundryStockReconciliation; - $physical_stock->sundry_id = $sundries_ids_array[$x]; - $physical_stock->system_stock = $system_stock_array[$x]; - $physical_stock->physical_stock = $physical_stock_array[$x]; - $physical_stock->difference = $difference_array[$x]; - $physical_stock->reason_for_difference = $reason_for_difference_array[$x]; - $physical_stock->completion_status = 1; - $physical_stock->affected_account_id = $affected_account_id; - $physical_stock->reconciliation_date = $request->reconciliation_date; - $physical_stock->general_comment = $request->general_comment; - $physical_stock->created_by = Auth::id(); - $physical_stock->save(); - //add the stock_count_identifier of the newly counted stock - $physical_stock_record_to_update = PharmacySundryStockReconciliation::find($physical_stock->id); - $physical_stock_record_to_update->stock_count_identifier = $max_stock_count_identifier+1;//increase ID by 1 for new - $physical_stock_record_to_update->update(); - - //update the system stock levels with the newly counted physical stock - //update only those with new physical value - $sundry = Sundry::find($sundries_ids_array[$x]); - $sundry->pharmacy_stock = $physical_stock_array[$x]; - $sundry->expiry_date = $expiry_date_array[$x]; - if (in_array($sundry->id, $sundries_with_initial_stock_array)) { - $existing_opening_stock = is_null($sundry->opening_stock) ? 0 : $sundry->opening_stock; - $sundry->opening_stock = $existing_opening_stock + $physical_stock_array[$x]; - $sundry->opening_cost_price = $cost_price_array[$x]; - $sundry->opening_stock_date = $request->reconciliation_date; - $sundry->pharmacy_opening_stock = $physical_stock_array[$x]; - $affected_account_id = $opening_inventory_chart_of_account->id;//overide adjustment a/c to be opening_inv - } else{ - $affected_account_id = $stock_adjustment_chart_of_account->id; - } - $sundry->updated_by = Auth::id(); - - //enforce double entry - account_for_stock_reconciliations_difference($item_type = 2, $sundries_ids_array[$x], $affected_account_id, $difference_array[$x], $cost_price_array[$x], $request->reconciliation_date); - - $reconcile_drug_pharmacy_stock = $sundry->update(); - }else $reconcile_drug_pharmacy_stock = true; - endfor; - - if ($reconcile_drug_pharmacy_stock): - flash('Stock levels have been reconciled')->success(); - return redirect('pharmacy_sundries_stock_sheet'); - endif; - } else if(isset($request->save_stock)){ - //save these for editing later on - for ($x = 0; $x < count($sundries_ids_array); $x++): - $physical_stock = new PharmacySundryStockReconciliation; - $physical_stock->sundry_id = $sundries_ids_array[$x]; - $physical_stock->system_stock = $system_stock_array[$x]; - $physical_stock->physical_stock = $physical_stock_array[$x]; - $physical_stock->difference = $difference_array[$x]; - $physical_stock->reason_for_difference = $reason_for_difference_array[$x]; - $physical_stock->completion_status = 0; - $physical_stock->created_by = Auth::id(); - $saved_physical_stock = $physical_stock->save(); - //add stock_count_identifier that will be used in resuming edit - $physical_stock_record_to_that_will_be_updated = PharmacySundryStockReconciliation::find($physical_stock->id); - $physical_stock_record_to_that_will_be_updated->stock_count_identifier = $max_stock_count_identifier+1;//increase ID by 1 for new - $physical_stock_record_to_that_will_be_updated->update(); - endfor; - - if ($saved_physical_stock): - flash('Physical stock has been saved. You can resume later')->success(); - return redirect('pharmacy_sundries_stock_sheet'); - endif; - } - - flash('Sorry, unable to update stock')->error(); - return redirect()->back(); - } - - public function sundries_stock_reconciliation_report(Request $request) - { - if (!empty($request->dates)) { - - if ($request->dates == "today") { - - $today = Carbon::today()->startOfDay()->toDateTimeString(); - $end = Carbon::parse($today)->endOfDay()->toDateTimeString(); - $reconciled_stocks = PharmacySundryStockReconciliation::groupBy("stock_count_identifier")->whereBetween('created_at', [$today, $end])->orderBy('stock_count_identifier', 'desc')->get(); - } else if ($request->dates == "yesterday") { - - $yesterday = Carbon::yesterday()->startOfDay()->toDateTimeString(); - $end = Carbon::parse($yesterday)->endOfDay()->toDateTimeString(); - $reconciled_stocks = PharmacySundryStockReconciliation::groupBy("stock_count_identifier")->whereBetween('created_at', [$yesterday, $end])->orderBy('stock_count_identifier', 'desc')->get(); - } else if ($request->dates == "custom_date") { - - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->start_date)->endOfDay()->toDateTimeString(); - $reconciled_stocks = PharmacySundryStockReconciliation::groupBy("stock_count_identifier")->whereBetween('created_at', [$start, $end])->orderBy('stock_count_identifier', 'desc')->get(); - } else if ($request->dates == "custom_date_range") { - - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $reconciled_stocks = PharmacySundryStockReconciliation::groupBy("stock_count_identifier")->whereBetween('created_at', [$start, $end])->orderBy('stock_count_identifier', 'desc')->get(); - } - } else $reconciled_stocks = PharmacySundryStockReconciliation::groupBy("stock_count_identifier")->orderBy('stock_count_identifier', 'desc')->get(); - - return view('pharmacy::pharmacy.sundries_stock_reconciliation_report',compact('reconciled_stocks')); - } - public function opticals_stock_reconciliation_report(Request $request) - { - if (!empty($request->dates)) { - - if ($request->dates == "today") { - - $today = Carbon::today()->startOfDay()->toDateTimeString(); - $end = Carbon::parse($today)->endOfDay()->toDateTimeString(); - $reconciled_stocks = OpticalStockReconciliation::select('stock_count_identifier', 'created_by', 'created_at', 'general_comment', DB::raw('SUM(variance) as total'))->groupBy('stock_count_identifier', 'created_by', 'created_at', 'general_comment')->where('type',1)->whereBetween('created_at', [$today, $end])->orderBy('stock_count_identifier', 'desc')->get(); - } else if ($request->dates == "yesterday") { - - $yesterday = Carbon::yesterday()->startOfDay()->toDateTimeString(); - $end = Carbon::parse($yesterday)->endOfDay()->toDateTimeString(); - $reconciled_stocks = OpticalStockReconciliation::select('stock_count_identifier', 'created_by', 'created_at', 'general_comment', DB::raw('SUM(variance) as total'))->groupBy('stock_count_identifier', 'created_by', 'created_at', 'general_comment')->where('type',1)->whereBetween('created_at', [$yesterday, $end])->orderBy('stock_count_identifier', 'desc')->get(); - } else if ($request->dates == "custom_date") { - - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->start_date)->endOfDay()->toDateTimeString(); - $reconciled_stocks = OpticalStockReconciliation::select('stock_count_identifier', 'created_by', 'created_at', 'general_comment', DB::raw('SUM(variance) as total'))->groupBy('stock_count_identifier', 'created_by', 'created_at', 'general_comment')->where('type',1)->whereBetween('created_at', [$start, $end])->orderBy('stock_count_identifier', 'desc')->get(); - } else if ($request->dates == "custom_date_range") { - - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $reconciled_stocks = OpticalStockReconciliation::select('stock_count_identifier', 'created_by', 'created_at', 'general_comment', DB::raw('SUM(variance) as total'))->groupBy('stock_count_identifier', 'created_by', 'created_at', 'general_comment')->where('type',1)->whereBetween('created_at', [$start, $end])->orderBy('stock_count_identifier', 'desc')->get(); - } - } else $reconciled_stocks = OpticalStockReconciliation::select('stock_count_identifier', 'created_by', 'created_at', 'general_comment', DB::raw('SUM(variance) as total'))->where('type',1)->groupBy('stock_count_identifier', 'created_by', 'created_at', 'general_comment')->orderBy('stock_count_identifier', 'desc')->get(); - - - return view('pharmacy::pharmacy.opticals_stock_reconciliation_report',compact('reconciled_stocks')); - } - public function opticals_stock_reconciliation_report_details(Request $request) - { - $opticals_reconciled = OpticalStockReconciliation::where(['stock_count_identifier' => $request->stock_count_identifier])->get(); - $opticals_reconciled = $this->itemService->processReconcileItems($opticals_reconciled); - return view('pharmacy::pharmacy.opticals_stock_reconciliation_report_print', compact('opticals_reconciled')); - } - - /* stock reconciliation report details */ - public function sundries_stock_reconciliation_report_details(Request $request) - { - $sundries_reconciled = PharmacySundryStockReconciliation::where(['stock_count_identifier' => $request->stock_count_identifier])->get(); - return view('pharmacy::pharmacy.sundries_stock_reconciliation_report_details',compact('sundries_reconciled')); - } - - public function print_protocol_ward_chart() - { - $request_array = session()->get('request_array'); - - $protocol_ward_id_arr = $request_array['protocol_ward_id']; - $protocol_patient_id_arr = $request_array['protocol_patient_id']; - $protocol_episode_id_arr = $request_array['protocol_episode_id']; - $protocol_drug_dose_arr = $request_array['protocol_drug_dose']; - $protocol_dosage_to_dispense_arr = $request_array['protocol_dosage_to_dispense']; - $protocol_quantity_to_dispense_arr = $request_array['protocol_quantity_to_dispense']; - $protocol_instruction_arr = $request_array['protocol_instruction']; - $protocol_drug_ids_arr = $request_array['protocol_drug_ids']; - $protocol_drug_dose_label_arr = $request_array['protocol_drug_dose_label']; - - session()->forget('request_array'); - - $hospital_details = HospitalInformation::find(1); - $wards = DB::table('wards')->whereNull('deleted_at')->pluck('name', 'id')->toArray(); - - return view('pharmacy::pharmacy.print_protocol_ward_chart', compact('protocol_ward_id_arr', 'protocol_patient_id_arr', 'protocol_episode_id_arr', 'protocol_drug_dose_arr', - 'protocol_dosage_to_dispense_arr', 'wards', 'protocol_quantity_to_dispense_arr', 'protocol_instruction_arr', 'protocol_drug_ids_arr', 'hospital_details', 'protocol_drug_dose_label_arr')); - } - - public function optical_stock_reconciliation(Request $request) { - $optics = []; - $item_ids_array = $request->search_items_ids; - - if ($item_ids_array) { - $is_all_items = in_array("all_items", $item_ids_array); - - if ($is_all_items) { - $optics = EyeGlasses::orderBy('name', 'asc')->get(); - } else{ - $optics = EyeGlasses::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } - } - - $chart_of_accounts = ChartOfAccount::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $chart_of_accounts = ['' => '- select -'] + $chart_of_accounts; - - $optic_dropdown = DB::table('eye_glasses')->whereNull('deleted_at')->orderBy('name', 'asc')->pluck('name','id')->prepend('All Optical Items', 'all_items')->toArray(); - $reasons = $this->itemService->getAllReconciliationReasonsArray(); - - $stock_adjustment_chart_of_account = ChartOfAccount::where('slug', 'stock_adjustment')->first(); - - return view('pharmacy::pharmacy.optical_stock_reconciliation', compact('optics','reasons', 'chart_of_accounts', 'optic_dropdown', 'stock_adjustment_chart_of_account')); - } - - public function store_pharmacy_optical_stock_count(Request $request) { - - $item_ids_array = $request->drug_id; - $cost_price_array = $request->cost_price; - $system_stock_array = $request->system_stock; - $physical_stock_array = $request->physical_stock; - $difference_array = $request->difference; - $reason_for_difference_array = $request->reason_for_difference; - $difference_in_cost_value_array=$request->difference_in_cost_value; - - $batch_sundry_ids_array = $request->batch_drug_id; - $unique_sundry_ids_with_batches_array = array_unique($batch_sundry_ids_array); - $batch_numbers_array = $request->batch_number; - $batch_quantity_balances_array = $request->batch_quantity_balance; - $batch_expiry_dates_array = $request->expiry_date; - $batch_unit_cost= $request->batch_unit_cost; - $batch_db_record_ids_array = $request->item_batch_watcher_id; - $reconciliation_date=Carbon::createFromFormat('d/m/Y', $request->reconciliation_date)->toDateString(); - $batch_reason_array = $request->reconcile_reason; - $sundries_with_initial_stock_array = is_null($request->is_initial_stock) ? [] : $request->is_initial_stock; - $stock_adjustment_chart_of_account = ChartOfAccount::where('slug', 'stock_adjustment')->first(); - $affected_account_id = $stock_adjustment_chart_of_account->id; - $opening_inventory_chart_of_account = ChartOfAccount::where('slug', 'opening_inventory')->first(); - $batches =[]; - - //get the max identfier - $max_stock_count_identifier = OpticalStockReconciliation::max('stock_count_identifier'); - $reconcile_optical_pharmacy_stock = true; - //update batch tracking tables with reconciliations - for ($i=0; $i < count($batch_numbers_array) ; $i++) { - if (!is_null($batch_numbers_array[$i]) && !is_null($batch_quantity_balances_array[$i])) { - //enforce double entry per batch - if (in_array($batch_sundry_ids_array[$i], $sundries_with_initial_stock_array)) { - $affected_account_id = $opening_inventory_chart_of_account->id;//override adjustment a/c to be opening_inv - } else{ - $affected_account_id = $stock_adjustment_chart_of_account->id; - } - account_for_batch_reconciliations_difference($item_type = 7, $batch_sundry_ids_array[$i], $affected_account_id, $batch_numbers_array[$i], $batch_quantity_balances_array[$i], $request->reconciliation_date, "pharmacy", $ward_id = null); - $batches=$this->itemService->reconcileBatches($batches,$batch_reason_array[$i],1,$item_type = 7, $batch_sundry_ids_array[$i], $batch_numbers_array[$i], $batch_quantity_balances_array[$i], $batch_expiry_dates_array[$i], "pharmacy", $batch_unit_cost[$i]??0, $batch_db_record_ids_array[$i]??0, $ward_id=null); - } - } - - if (isset($request->reconcile_stock)) { - for ($x = 0; $x < count($item_ids_array); $x++): - /* check if the difference value is not null and then update the optical */ - if (!is_null($difference_array[$x])) { - $this->itemService->createOpticalReconciliation(1,$batches,$difference_in_cost_value_array[$x],$item_ids_array[$x],$physical_stock_array[$x],$difference_array[$x],$system_stock_array[$x],1,$affected_account_id,$reconciliation_date,$request->general_comment,$max_stock_count_identifier); - - //update the system stock levels with the newly counted physical stock - //update only those with new physical value - $eye_glass = EyeGlasses::find($item_ids_array[$x]); - $eye_glass->pharmacy_stock = $physical_stock_array[$x]; - if (in_array($eye_glass->id, $sundries_with_initial_stock_array)) { - $existing_opening_stock = is_null($eye_glass->opening_stock) ? 0 : $eye_glass->opening_stock; - $eye_glass->opening_stock = $existing_opening_stock + $physical_stock_array[$x]; - $eye_glass->opening_cost_price = $cost_price_array[$x]; - $eye_glass->opening_stock_date = $request->reconciliation_date; - $eye_glass->pharmacy_opening_stock = $physical_stock_array[$x]; - } - - $eye_glass->updated_by = Auth::id(); - $reconcile_optical_pharmacy_stock = $eye_glass->update(); - }else $reconcile_optical_pharmacy_stock = true; - endfor; - - if ($reconcile_optical_pharmacy_stock): - flash('Stock levels have been reconciled')->success(); - return redirect('pharmacy_optical_stock_sheet'); - endif; - flash('Sorry, unable to update stock')->error(); - return redirect()->back(); - } - - } - public function pharmacy_optical_stock_sheet(){ - $opticals = EyeGlasses::orderBy('name', 'asc')->get(); - // getting the labs stock batches - $opticals= calculate_stock_value($opticals,7,'pharmacy_stock'); - if (count($opticals) < 1) { - flash()->error("There are no registered opticals"); - return redirect('/opticals/'); - } else { - return view('pharmacy::pharmacy.optical_stock_sheet', compact('opticals')); - } - } - -} diff --git a/docker/statistics/Modules/Pharmacy/Http/Controllers/PrescriptionErrorsController.php b/docker/statistics/Modules/Pharmacy/Http/Controllers/PrescriptionErrorsController.php deleted file mode 100755 index f8ad44fd..00000000 --- a/docker/statistics/Modules/Pharmacy/Http/Controllers/PrescriptionErrorsController.php +++ /dev/null @@ -1,66 +0,0 @@ -start_date)){ - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date)->toDateString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->end_date)->toDateString(); - } else { - $start_date = Carbon::now()->startOfDay()->toDateTimeString(); - $end_date = Carbon::now()->endOfDay()->toDateTimeString(); - } - - $prescription_errors = DB::table('prescription_errors')->orderBy('created_at', 'desc') - ->whereBetween('created_at', [$start_date, $end_date]) - ->paginate(1000); - - $search_text = "Searching between " . streamline_date($start_date) . " and " . streamline_date($end_date); - - return view('pharmacy::prescription_errors.index', compact('prescription_errors', 'search_text')); - } - - public function view_prescription_error_details($id){ - $prescription_error = PrescriptionError::find($id); - - if (!$prescription_error){ - return back()->withInput(); - } - - $altered_drugs_array = array( - "drugs" => $prescription_error->previous_drugs, - "dose" => $prescription_error->previous_doses, - "drug_frequency" => $prescription_error->previous_frequencies, - "instructions" => $prescription_error->previous_instruction, - "duration" => $prescription_error->previous_durations, - "quantity_dispensed" => $prescription_error->previous_quantities_dispensed, - ); - - $prescribed_drugs = Treatment::find($prescription_error->treatment_id); - - if (!$prescribed_drugs){ - return back()->withInput(); - } - - $prescribed_drugs_array = array( - "drugs" => $prescribed_drugs->drugs, - "dose" => $prescribed_drugs->doses, - "drug_frequency" => $prescribed_drugs->frequencies, - "instructions" => $prescribed_drugs->instruction, - "duration" => $prescribed_drugs->durations, - "quantity_dispensed" => $prescribed_drugs->quantities_dispensed, - ); - - return view('pharmacy::prescription_errors.view_prescription_error_details', compact('prescription_error', 'prescribed_drugs_array', 'altered_drugs_array')); - } -} diff --git a/docker/statistics/Modules/Pharmacy/Http/Controllers/PrescriptionsController.php b/docker/statistics/Modules/Pharmacy/Http/Controllers/PrescriptionsController.php deleted file mode 100755 index 9068b5ee..00000000 --- a/docker/statistics/Modules/Pharmacy/Http/Controllers/PrescriptionsController.php +++ /dev/null @@ -1,719 +0,0 @@ -has('alter_episode_id')) { - $patient_id = session()->get('alter_patient_id'); - $episode_id = session()->get('alter_episode_id'); - } else { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - } - - $patient = Patient::where('id', $patient_id)->first(); - $drugs = Drug::where('available', 1)->orderby('name')->pluck('name', 'id')->toArray(); - $dosage_frequencies = DB::table('dosage_frequencies')->orderBy('name')->pluck('name', 'id'); - $treatment = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'payment_status' => 0, 'dispense_status' => 0, 'inpatient_bill_generated' => 0])->first(); - $dispensed_drugs = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'dispense_status' => 1])->get(); - $paid_drugs = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'payment_status' => 1])->get(); - $dispensed_drugs = $dispensed_drugs->merge($paid_drugs); - - if (session()->get("ward_prescription") == 1) { - $treatment = false; - } - - if (session()->get("tta") == 1) { - //$treatment = false; - } - - // collect chronic drug ids as array - $chronic_drugs_array = ChronicPatient::where('patient_id', $patient_id)->whereNotNull('drug_id')->get(['drug_id']); - - $previous_treatments = Treatment::where('patient_id',$patient_id)->where('episode_id', '!=', $episode_id)->take(5)->get(); - - return view('pharmacy::prescriptions.create',compact('patient_id','episode_id','patient','drugs','treatment','chronic_drugs_array', 'dispensed_drugs', 'dosage_frequencies', 'previous_treatments')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) { - // - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - // - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - // - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - // - } - - /** - * Add episode id to prep for prescriptions - * - * @param $id - */ - public function set_episode_id($id) { - session()->put(['episode_id' => $id]); - } - - /** - * Get the factor of a drug frequency - * - * @param $frequency_id - * @return \Illuminate\Http\JsonResponse - */ - public function get_factor($frequency_id) { - $sql = "select factor as alias from dosage_frequencies where id='$frequency_id'"; - $results = DB::select($sql); - $result = isset($results[0]) ? $results[0]->alias : ""; - return response()->json($result); - } - - /** - * Checking if the patient is allergic to a medicine - * - * @param $patient_id - * @param $drug_category_id - * @return boolean - */ - public static function checkPatientAllergies($patient_id, $drug_category_id) { - $patient_allergies = Allergy::where('patient_id' , $patient_id)->select('names')->get(); - - $patient_allergies_array = []; - - foreach ($patient_allergies as $allergy) { - $patient_allergies_array = array_merge($patient_allergies_array, explode(",", $allergy->names)); - } - - if (in_array($drug_category_id, $patient_allergies_array)){ - return true; - } else { - return false; - } - } - - /* check if the quantity dispensed is more than the what is in store */ - - public function check_dispensed_drugs_quantity(Request $request) { - if (isset($request->treatment_id) && isset($request->purchased_elsewhere)) { - // update the purchased elsewhere column of the treatment - DB::table('treatments')->where('id', $request->treatment_id)->update([ - 'purchased_elsewhere' => implode(",", $request->purchased_elsewhere) - ]); - } - - $drugs_array = $request->drug_id_array; - - // check if the request has purchased elsewhere - if (isset($request->purchased_elsewhere)) { - $purchased_elsewhere_array = $request->purchased_elsewhere; - } else { - // if not just set empty array with all 0s - $purchased_elsewhere_array = array_fill(0, count($drugs_array), 0); - } - - $quantity_dispensed_array = $request->quantity_dispensed_array; - $flash_message = ""; - $is_over_dispensed = false; - for ($i = 0; $i < count($drugs_array); $i++) { - // check if drug is to be bought from the hospice - if ($purchased_elsewhere_array[$i] == 0) { - $drug_details = DB::table('drugs')->where('id', $drugs_array[$i])->first(); - - //$pharmacy_stock = $drug_details->pharmacy_stock; - //$store_stock = $drug_details->store_stock; - $pharmacy_stock = ItemBatchWatcher::where(['item_type' => 1, 'item_id' => $drugs_array[$i]])->sum('pharmacy_stock'); - $store_stock = ItemBatchWatcher::where(['item_type' => 1, 'item_id' => $drugs_array[$i]])->sum('store_stock'); - - if (stock_levels_to_consider() == 0) { - $total_stock = (($pharmacy_stock < 0) ? 0 : $pharmacy_stock) + (($store_stock < 0) ? 0 : $store_stock); - } else { - $total_stock = (($pharmacy_stock < 0) ? 0 : $pharmacy_stock); - } - - if ($total_stock < $quantity_dispensed_array[$i]) { - $is_over_dispensed = true; - $flash_message .= $drug_details->name . " only has " . $total_stock . " dispensable unit(s) in stock \n\n"; - } - } - } - - if ($is_over_dispensed) { - $can_be_prescribed = is_prescribing_out_of_stock_drugs_allowed(session()->get("ward_prescription") == 1 || session()->get("tta") == 1); - $can_be_dispensed = can_dispense_out_of_stock_drugs(); - $message = [($can_be_prescribed ? "1" : "2"), $flash_message, ($can_be_dispensed ? "1" : "2")]; - } else { - $message = ["0", "", "0"]; - } - - return $message; - } - - /** - * Create new prescriptions record for patient - * - * @param Request $request - * @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector|string - */ - public function process_prescription(Request $request) { - - if (session()->has('alter_episode_id')) { - $patient_id = session()->get('alter_patient_id'); - $episode_id = session()->get('alter_episode_id'); - } else { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - } - - if (is_null($patient_id) || is_null($episode_id)) { - flash('Invalid patient record selected')->success(); - return redirect('/home'); - } - - //1.check for any chronic drug and save in chronic_patient if the record doesnt exist in the db - //2.check if the treatment has been done and insert or update accordingly - //3.update patient_episode table with treatment details - //4.log the insertion in whichever audit table is used - $validator = Validator::make($request->all(), [ - 'drug_id' => 'required', - 'dose' => 'required', - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - - /* - * check if its a ward prescription NOTE: Kindly leave this check at this position of this script else me and u :) - */ - if (session()->get("ward_prescription") == 1) { - $this->process_ward_prescription($request); - flash("Prescription has been saved")->success(); - return redirect('in_patient_sheet'); - } - $drugs_array = $request->drug_id; - $duration_array = $request->item_duration; - $time_duration = []; - $purchased_elsewhere_array = []; - $purchased_elsewhere = $request->purchased_elsewhere; - - // check whether treatment for episode exists and is not paid - if (isset($request->treatment_id) && get_name($request->treatment_id, 'id', 'payment_status', 'treatments') == 0) { - $treatment = Treatment::find($request->treatment_id); - $treatment->updated_by = Auth::id(); - } else { - $treatment = new Treatment; - $treatment->created_by = Auth::id(); - } - - for ($i = 0; $i < count($drugs_array); $i++) { - if (isset($purchased_elsewhere) && count($purchased_elsewhere) > 0 && in_array($drugs_array[$i], $purchased_elsewhere)) { - $purchased_elsewhere_array[] = 1; - } else { - $purchased_elsewhere_array[] = 0; - } - - if (is_drug_chronic($drugs_array[$i])) { - register_chronic_patient($patient_id, $episode_id, $drugs_array[$i]); - } - $time_duration[] = $duration_array[$i] . " " . "Days"; - } - - $treatment->patient_id = $patient_id; - $treatment->episode_id = $episode_id; - $treatment->drugs = implode(',', $request->drug_id); - $treatment->doses = implode(',', $request->dose); - $treatment->frequencies = implode(',', $request->frequency); - $treatment->durations = implode(',', $time_duration); - $treatment->quantities_dispensed = implode(',', $request->item_dispense); - $treatment->instruction = implode(',', $request->item_instructions); - $treatment->purchased_elsewhere = implode(',', $purchased_elsewhere_array); - $treatment->dispense_status = 0; - $treatment->eye = implode(",", $request->eye); - $treatment->order_comments = $request->order_comments; - - if (!session()->has('alter_episode_id') && $request->is_progressive_treatment_setup != 1) { - $treatment->confirmation_status = 0; - } - - // get tta session if available - $tta = session()->get("tta"); - $treatment->tta = isset($tta) ? 1 : 0; - // unset the session for tta - session()->forget('tta'); - - $treatment->save(); - - // save the progressive treatment if available - if ($request->is_progressive_treatment_setup == 1) { - if (isset($request->treatment_opd_progressive_id) && $request->treatment_opd_progressive_id != 0) { - $prog_treatment_opd = TreatmentOpdProgressive::find($request->treatment_opd_progressive_id); - } else { - $prog_treatment_opd = new TreatmentOpdProgressive(); - } - - $prog_treatment_opd->patient_id = $treatment->patient_id; - $prog_treatment_opd->episode_id = $treatment->episode_id; - $prog_treatment_opd->initial_treatment_id = $treatment->id; - $prog_treatment_opd->treatment_ids = $treatment->id; - $prog_treatment_opd->is_first_treatment_given = 1; - $prog_treatment_opd->drugs = $treatment->drugs; - $prog_treatment_opd->dose = $treatment->doses; - $prog_treatment_opd->drug_frequency = $treatment->frequencies; - $prog_treatment_opd->durations = $treatment->durations; - $prog_treatment_opd->quantities_to_dispense = $treatment->quantities_dispensed; - $prog_treatment_opd->instruction = $treatment->instruction; - $prog_treatment_opd->created_by = Auth::id(); - $prog_treatment_opd->prescribed_by = $treatment->created_by; - $prog_treatment_opd->order_comments = $treatment->order_comments; - $prog_treatment_opd->save(); - - // create the first dose to dispense - $time_duration = []; - $first_dose_quantity_dispensed = []; - $first_dose_quantity = $request->first_dose_quantity; - $first_dose_duration = $request->first_dose_duration; - for ($i = 0; $i < count($drugs_array); $i++) { - $time_duration[] = ($first_dose_duration[$i] ?? 1) . " Days"; - $first_dose_quantity_dispensed[] = $first_dose_quantity[$i] ?? 1; - } - - $assigned_treatment = Treatment::find($treatment->id); - $assigned_treatment->durations = implode(',', $time_duration); - $assigned_treatment->quantities_dispensed = implode(',', $first_dose_quantity_dispensed); - $assigned_treatment->is_treatment_progressive = $prog_treatment_opd->id; - $assigned_treatment->save(); - } elseif (isset($request->treatment_opd_progressive_id) && $request->treatment_opd_progressive_id != 0) { - // if the above is not set but this is set that means the progressive treatment has been removed so we should delete - $prog_treatment_opd = TreatmentOpdProgressive::find($request->treatment_opd_progressive_id); - $prog_treatment_opd->forceDelete(); - - $assigned_treatment = Treatment::find($treatment->id); - $assigned_treatment->is_treatment_progressive = 0; - $assigned_treatment->save(); - } - - if (session()->has('alter_episode_id')) { - $type_of_error = []; - $type_of_error[] = isset($request->wrong_dosage) ? "Wrong dosage" : ""; - $type_of_error[] = isset($request->wrong_frequency) ? "Wrong frequency" : ""; - $type_of_error[] = isset($request->inadequate_funds) ? "Inadequate Funds" : ""; - $type_of_error[] = isset($request->other_error) ? "Other error" : ""; - $type_of_error = implode(',', $type_of_error); - - $severity_of_error = $request->severity_of_error; - - // inserting the prescription errors - $prescription_error = new PrescriptionError; - $prescription_error->patient_id = $patient_id; - $prescription_error->treatment_id = $treatment->id; - $prescription_error->patient_dispensings_id = 0; - $prescription_error->type_of_error = $type_of_error; - $prescription_error->severity_of_error = $severity_of_error; - $prescription_error->prescriber = $treatment->created_by; - $prescription_error->pharmacist = Auth::id(); - $prescription_error->created_by = Auth::id(); - $prescription_error->previous_drugs = get_name($treatment->id, 'id', 'drugs', 'treatments'); - $prescription_error->previous_doses = get_name($treatment->id, 'id', 'doses', 'treatments'); - $prescription_error->previous_frequencies = get_name($treatment->id, 'id', 'frequencies', 'treatments'); - $prescription_error->previous_durations = get_name($treatment->id, 'id', 'durations', 'treatments'); - $prescription_error->previous_quantities_dispensed = get_name($treatment->id, 'id', 'quantities_dispensed', 'treatments'); - $prescription_error->previous_instruction = get_name($treatment->id, 'id', 'instruction', 'treatments'); - $prescription_error->comment = $request->comment; - $prescription_error->save(); - - if ($request->get('submit-btn') == "Alter and Confirm Prescription") { - $treatment->confirmation_status = 1; - } - - $treatment->altered = $prescription_error->id; - $treatment->is_new_alter_model = 1; - - $treatment->save(); - session()->forget('alter_episode_id'); - session()->forget('alter_patient_id'); - - flash("Treatment has been altered.")->success(); - return redirect('/confirm_prescriptions'); - } - - // update the patient episode table with the id of the saved treatment - if ($treatment->tta == 0 && !isset($request->treatment_id)): - $treatment_id = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'drugs' => $treatment->drugs])->pluck('id')->first(); - $episode = PatientEpisode::find($episode_id); - $episode->treatment_id = $treatment_id; - $episode->update(); - endif; - - // create an insurance claim for the ordered items - if ($request->patient_insurance_status == 1) { - generate_insurance_claim($treatment->id, 4); - } - - // redirect to the consultation page if it wasn't a tta or to the in-patient sheet if it was a tta - flash("Prescription has been saved")->success(); - - if ($treatment->tta == 1) { - return redirect('in_patient_sheet'); - } else { - if (session()->has('redirect_to_consultation')) { - $url = session()->get('redirect_to_consultation'); - session()->forget('redirect_to_consultation'); - return redirect($url); - } elseif (session()->has('anc_visit_redirect')) { - $url = session()->get('anc_visit_redirect'); - session()->forget('anc_visit_redirect'); - return redirect($url); - } else { - if(session()->has('previous_action') && session()->get('previous_action') == 'anc_consultation_page') { - session()->forget('previous_action'); - return redirect("ante_natal_clinic/route"); - } - else return redirect("/patient_episodes"); - } - } - } - } - - /** - * Print prescriptions list - * - * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View - */ - public function print_treatment() { - $patient_id = session()->get("patient_id"); - $episode_id = session()->get("episode_id"); - $patient = Patient::where('id', $patient_id)->first(); - $categories = PatientCategory::pluck("name", "id"); - $marital_statuses = MaritalStatus::pluck("name", "id"); - $drug_categories = DrugCategory::get(); - $drugs = Drug::where('available', 1)->orderby('name')->pluck('name', 'id'); - $allergies = Allergy::where(['patient_id' => $patient_id])->pluck('patient_id', 'names'); - - $treatment = Treatment::where(["patient_id" => $patient_id, "episode_id" => $episode_id])->first(); //maybe check id too - return view('pharmacy::prescriptions.print_treatment', compact('patient_id', 'episode_id', 'patient', 'categories', 'marital_statuses', 'drug_categories', 'drugs', 'allergies', 'treatment')); - } - - /* - * process prescription that has been ordered from the inpatient sheet - */ - public function process_ward_prescription(Request $request) { - - $validator = Validator::make($request->all(), [ - 'drug_id' => 'required', - 'dose' => 'required', - ]); - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - return back()->withErrors($validator)->withInput(); - } else { - - $drugs_array = $request->drug_id; - $duration_array = $request->item_duration; - $time_duration = []; - - $patient_id = session()->get("patient_id"); - $episode_id = session()->get("episode_id"); - - // check whether treatment for episode exists and is not paid - if (isset($request->treatment_id) && get_name($request->treatment_id, 'id', 'payment_status', 'ward_treatments') == 0) { - $ward_treatment = WardTreatment::find($request->treatment_id); - } else { - $ward_treatment = new WardTreatment; - } - - for ($i = 0; $i < count($drugs_array); $i++) { - if (is_drug_chronic($drugs_array[$i])) { - register_chronic_patient($patient_id, $episode_id, $drugs_array[$i]); - } - - $time_duration[] = $duration_array[$i] . " Days"; - } - - $ward_treatment->patient_id = $patient_id; - $ward_treatment->episode_id = $episode_id; - $ward_treatment->ward_id = session()->get("ward_id"); - session()->forget('ward_id'); - $ward_treatment->drugs = implode(',', $request->drug_id); - $ward_treatment->doses = implode(',', $request->dose); - $ward_treatment->frequencies = implode(',', $request->frequency); - $ward_treatment->durations = implode(',', $time_duration); - $ward_treatment->quantities_dispensed = implode(',', $request->item_dispense); - $ward_treatment->instruction = implode(',', $request->item_instructions); - $ward_treatment->eye = implode(',', $request->eye); - $ward_treatment->dispense_status = null; - - // get tta session if available - $ward_prescription = session()->get("ward_prescription"); - // unset the session for ward prescription - session()->forget('ward_prescription'); - - $ward_treatment->created_by = Auth::id(); - - // check whether treatment for episode exists and is not paid - if (isset($request->treatment_id) && get_name($request->treatment_id, 'id','payment_status','ward_treatments') == 0) { - $ward_treatment->update(); - } else { - $ward_treatment->save(); - } - - // update the patient episode table with the id of the saved treatment - if (isset($request->treatment_id)) { - $ward_treatment_id = WardTreatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'drugs' => $ward_treatment->drugs])->pluck('id')->first(); - $episode = PatientEpisode::find($episode_id); - $episode->treatment_id = $ward_treatment_id; - $episode->update(); - } - - flash("Prescription has been saved")->success(); - return redirect('in_patient_sheet'); - } - } - - public function drug_refill(Request $request) - { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $patient = Patient::find($patient_id); - - $dispensed_drugs_from_parent_episode = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'dispense_status' => 1])->get(); - if (count($dispensed_drugs_from_parent_episode) == 0) { - flash("No treatment was given during this episode so you can not do a drug refill")->error(); - return redirect()->back(); - } - - /*==== create a new episode but attached to the original epsiode as appointment is started/activated ========*/ - $episode = new PatientEpisode; - $episode->patient_id = $patient_id; - $episode->clinic_id = get_default_hospital_clinic(); - $episode->parent_episode_id = $episode_id;//the original episode_id - $episode->created_by = Auth::id(); - $episode->updated_by = Auth::id(); - - try { - $episode->save(); - //put the newly created episode into session - session()->put('episode_id', $episode->id); - - flash("A new refill episode has been created")->success(); - - // collect chronic drug ids as array - return redirect('create_drug_refill'); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - public function create_drug_refill() - { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $patient = Patient::where('id', $patient_id)->first(); - $epsiode_details = PatientEpisode::find($episode_id); - $parent_episode_id = $epsiode_details->parent_episode_id; - - $treatment_collection = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'payment_status' => 0, 'dispense_status' => 0, 'inpatient_bill_generated' => 0])->get(); - $dispensed_drugs = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'dispense_status' => 1])->get(); - $dispensed_drugs_from_parent_episode = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $parent_episode_id, 'dispense_status' => 1])->get(); - $treatment = count($treatment_collection) > 0 ? $treatment_collection->first() : false; - - - $categories = PatientCategory::pluck("name", "id"); - $marital_statuses = MaritalStatus::pluck("name", "id"); - $drug_categories = DrugCategory::get(); - $drugs = Drug::where('available', 1)->orderby('name')->pluck('name', 'id'); - $patient_prescriptions = null; - $chronic_drugs_array = ChronicPatient::where('patient_id', $patient_id)->whereNotNull('drug_id')->select('drug_id')->get()->toArray(); - $chronic_results = Drug::whereIn('id', $chronic_drugs_array)->get(); - $documents = PatientDocument::where('patient_id',$patient_id)->orderBy('created_at','desc')->take(2)->get(); - $known_patient_allergies = Allergy::where('patient_id' , $patient_id)->orderBy('created_at','desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id' , $patient_id)->orderBy('created_at','desc')->take(2)->get(); - $drug_categories_array = DrugCategory::pluck('name', 'id'); - $dosage_frequencies = DosageFrequency::orderBy('name')->select("id", "name")->get(); - - return view('pharmacy::prescriptions.drug_refill',compact('patient_id','episode_id','patient','categories','marital_statuses','drug_categories','patient_prescriptions','drugs','treatment','chronic_results','documents','known_patient_alerts','known_patient_allergies','drug_categories_array', 'dispensed_drugs','dispensed_drugs_from_parent_episode','parent_episode_id','dosage_frequencies')); - } - - public function get_drug_details(Request $request) { - $drug_id = $request->drug_id; - $patient_id = $request->patient_id; - $patient_insurance_status = $request->patient_insurance_status ?? 0; - - $drug = DB::table('drugs')->find($drug_id); - $patient_is_allergic = $this->checkPatientAllergies($patient_id, $drug->category_id); - $can_drug_be_prescribed = !$patient_is_allergic; - - if (stock_levels_to_consider() == 0) { - $total_stock = $this->itemsStockService->getItemAllQuantityByTotal($drug_id, 1); - } else { - $total_stock = $this->itemsStockService->getItemPharmacyQuantity($drug_id, 1); - } - - $drug_out_of_stock = $total_stock < 1; - - if (!is_chi_enabled() && !is_drug_covered_by_pay_later_category(get_name($patient_id, 'id', 'category_id', 'patients'), $drug->id)) { - $covered_by_pat_cat = "Not Covered by " . get_name(get_name($patient_id, 'id', 'category_id', 'patients'), 'id', 'name', 'patient_categories'); - } else { - $covered_by_pat_cat = ""; - } - - $drug_expiry_date = $this->itemsStockService->getItemLatestExpiryDate($drug_id, 1) ?? $drug->expiry_date; - if (Carbon::createFromFormat('Y-m-d', $drug_expiry_date)->isBefore(Carbon::tomorrow())) { - $drug_is_expired = 1; - } else { - $drug_is_expired = 0; - } - - if (is_chi_enabled()) { - if (is_patient_item_covered($patient_id, $drug->id, 4)) { - $covered_by_chi = '  
    Covered by CHI'; - } else { - $covered_by_chi = '  
    Not covered by CHI'; - } - } else { - $covered_by_chi = ""; - } - - if(is_numeric($patient_insurance_status) && $patient_insurance_status == 1 && $patient_id != 0 && is_numeric($patient_id)) { - $selling_price = get_item_insurance_co_payment($patient_id, $drug->id, 4, false, 0); - } else { - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_id) { - $selling_price = get_price_list_category_price($price_list_id, 3, $drug->id); - } else { - $selling_price = get_name($drug->id, "id", "non_insured_price", "drugs"); - } - } - - if ($drug->prompt) { - $prompt = "
    "; - $prompt .= read_more($drug->prompt, 'prompt_short' . $drug->id, 'prompt_long' . $drug->id); - $prompt .= "
    "; - } else { - $prompt = 0; - } - - $drug_references = ""; - $reference_array = explode(",", $drug->reference_areas); - $reference_name = explode(",", $drug->reference_name); - for ($x = 0; $x < count($reference_array); $x++){ - if(isset($reference_array[$x]) && isset($reference_name[$x])){ - $drug_references = "".$reference_name[$x]."
    "; - } - } - - return json_encode([ - "pharmacy_comment" => ($drug->pharmacy_comment) ?: 0, - "drug_references" => $drug_references, - "is_covered" => 1, - "prompt" => $prompt, - "drug_form" => get_name($drug->form_id, 'id', 'name', 'drug_forms'), - "drug_unit" => get_name($drug->unit_id, 'id', 'name', 'drug_units'), - "can_drug_be_prescribed" => ($can_drug_be_prescribed) ? 1 : 0, - "patient_is_allergic" => ($patient_is_allergic) ? 1 : 0, - "drug_out_of_stock" => ($drug_out_of_stock) ? 1 : 0, - "selling_price" => $selling_price, - "pack" => $drug->pack, - "strength" => $drug->strength, - "covered_by_pat_cat" => $covered_by_pat_cat, - "covered_by_chi" => $covered_by_chi, - "drug_is_expired" => $drug_is_expired, - ]); - } - -} diff --git a/docker/statistics/Modules/Pharmacy/Providers/PharmacyServiceProvider.php b/docker/statistics/Modules/Pharmacy/Providers/PharmacyServiceProvider.php deleted file mode 100644 index 4ce41891..00000000 --- a/docker/statistics/Modules/Pharmacy/Providers/PharmacyServiceProvider.php +++ /dev/null @@ -1,113 +0,0 @@ -registerTranslations(); - $this->registerConfig(); - $this->registerViews(); - $this->loadMigrationsFrom(module_path($this->moduleName, 'Database/Migrations')); - } - - /** - * Register the service provider. - * - * @return void - */ - public function register() - { - $this->app->register(RouteServiceProvider::class); - } - - /** - * Register config. - * - * @return void - */ - protected function registerConfig() - { - $this->publishes([ - module_path($this->moduleName, 'Config/config.php') => config_path($this->moduleNameLower . '.php'), - ], 'config'); - $this->mergeConfigFrom( - module_path($this->moduleName, 'Config/config.php'), $this->moduleNameLower - ); - } - - /** - * Register views. - * - * @return void - */ - public function registerViews() - { - $viewPath = resource_path('views/modules/' . $this->moduleNameLower); - - $sourcePath = module_path($this->moduleName, 'Resources/views'); - - $this->publishes([ - $sourcePath => $viewPath - ], ['views', $this->moduleNameLower . '-module-views']); - - $this->loadViewsFrom(array_merge($this->getPublishableViewPaths(), [$sourcePath]), $this->moduleNameLower); - } - - /** - * Register translations. - * - * @return void - */ - public function registerTranslations() - { - $langPath = resource_path('lang/modules/' . $this->moduleNameLower); - - if (is_dir($langPath)) { - $this->loadTranslationsFrom($langPath, $this->moduleNameLower); - $this->loadJsonTranslationsFrom($langPath); - } else { - $this->loadTranslationsFrom(module_path($this->moduleName, 'Resources/lang'), $this->moduleNameLower); - $this->loadJsonTranslationsFrom(module_path($this->moduleName, 'Resources/lang')); - } - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides() - { - return []; - } - - private function getPublishableViewPaths(): array - { - $paths = []; - foreach (\Config::get('view.paths') as $path) { - if (is_dir($path . '/modules/' . $this->moduleNameLower)) { - $paths[] = $path . '/modules/' . $this->moduleNameLower; - } - } - return $paths; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Providers/RouteServiceProvider.php b/docker/statistics/Modules/Pharmacy/Providers/RouteServiceProvider.php deleted file mode 100755 index 1d4a34f1..00000000 --- a/docker/statistics/Modules/Pharmacy/Providers/RouteServiceProvider.php +++ /dev/null @@ -1,68 +0,0 @@ -mapApiRoutes(); - $this->mapWebRoutes(); - } - - /** - * Define the "web" routes for the application. - * - * These routes all receive session state, CSRF protection, etc. - * - * @return void - */ - protected function mapWebRoutes() - { - Route::middleware('web') - ->namespace($this->namespace) - ->group(module_path('Pharmacy', '/Routes/web.php')); - } - - /** - * Define the "api" routes for the application. - * - * These routes are typically stateless. - * - * @return void - */ - protected function mapApiRoutes() - { - Route::prefix('api') - ->middleware('api') - ->namespace($this->namespace) - ->group(module_path('Pharmacy', '/Routes/api.php')); - } -} diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/approve_ward_dispensing_per_chart.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/approve_ward_dispensing_per_chart.blade.php deleted file mode 100755 index c064f74c..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/approve_ward_dispensing_per_chart.blade.php +++ /dev/null @@ -1,609 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.confirm_ward_dispensation_per_chart') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') - @foreach ($errors->all() as $error) -
    {{ $error }}
    - @endforeach -
    -
    - - @include('pharmacy::pharmacy.ward_dispensing_menu') - -
    -
    -
    -
    -
    - -
    -
    -
    - {{ __('pharmacy.showing_results_from') }} : -

    {{ is_null($ward_id) ? '' : ($ward_id == 0 ? 'All wards' : get_name($ward_id, 'id', 'name', 'wards')) }} {!! is_null($search_by) ? '' : '' !!}

    -
    -
    -
    -
    - -
    - {{ Form::open(['route' => 'pharmacy.store_approved_dispensings_per_chart', 'class' => 'typeahead', 'method' => 'ANY']) }} - -
    -
    -
    - @php - $count = 1; - - $facade_batches_options = []; - $option_batches = ""; - foreach ($batches_array as $item_batch) { - $option_batches .= ""; - - $facade_batches_options[$item_batch->id] = $item_batch->batch_number." (Expiry Date: ".$item_batch->expiry_date.")"; - } - @endphp -
    - - - - - - - - - - - - - @if(count($drugs_to_dispense_array) > 0) - @for($i = 0; $i < count($drugs_to_dispense_array); $i++) - @php if (empty($drugs_to_dispense_array[$i])) {continue;} @endphp - - - - - - - - - @endfor - @endif - -
    #{{ __('pharmacy.drug') }}{{ __('pharmacy.quantity_total') }}{{ __('pharmacy.quantity_dispensed') }}{{ __('pharmacy.comment') }}{{ __('pharmacy.action') }}
    - {{ $i + 1 }} - - @php - $auto_deductable_batches_array = get_pharmacy_batch_watcher_ids_to_use_based_on_needed_quantity($drugs_to_dispense_array[$i], 1, $quantities_to_dispense_array[$i]); - if ($auto_deductable_batches_array){ - $get_drug_batches = track_batch_stock(1,$drugs_to_dispense_array[$i],'pharmacy_stock'); - //filter out all batches and get the batches for each drug - $filtered_batches = []; - foreach ($get_drug_batches as $data) { - $batch_number = $data['id']; - if (isset($facade_batches_options[$batch_number])) { - $filtered_batches[$batch_number] = $facade_batches_options[$batch_number]; - } - } - } - @endphp - {{ $drugs[$drugs_to_dispense_array[$i]] }} - - @foreach ($auto_deductable_batches_array as $deductable_batch => $batch_quantity) -
    - -
    - @endforeach - -
    - -
    - - - - -
    - {{ $quantities_to_dispense_array[$i] }} - - - - - - - - -     - {{ __('pharmacy.edit_chart') }} -
    -
    -
    -
    - - @if($cancer_protocol_orders) -
    - -
    - - - - - - - - - - - - - - - @php $cancer_protocol_count = 0; @endphp - @foreach($cancer_protocol_orders as $cancer_protocol_order) - {{ Form::hidden('protocol_ward_charts_id[]', $cancer_protocol_order->id) }} - @php - $patient_id = $cancer_protocol_order->patient_id; - $protocol_id = $cancer_protocol_order->protocol_id; - $height = $cancer_protocol_order->height; - $weight = $cancer_protocol_order->weight; - $vitals_date_taken = $cancer_protocol_order->vitals_date_taken; - $request_comment = $cancer_protocol_order->request_comment; - $ward_id = $cancer_protocol_order->ward_id; - $protocol_drug_ids = explode(',', $cancer_protocol_order->protocol_drug_id); - $protocol_section = explode(',', $cancer_protocol_order->protocol_section); - $protocol_drug_factor = explode(',', $cancer_protocol_order->protocol_drug_factor); - $protocol_drug_factor_value = explode(',', $cancer_protocol_order->protocol_drug_factor_value); - $protocol_drug_dose = explode(',', $cancer_protocol_order->protocol_drug_dose); - $protocol_drug_dosage_label = explode(',', $cancer_protocol_order->protocol_drug_dosage_label); - $protocol_drug_unit_value = explode(',', $cancer_protocol_order->protocol_drug_unit_value); - $protocol_dosage_to_dispense = explode(',', $cancer_protocol_order->protocol_dosage_to_dispense); - $protocol_quantity_to_dispense = explode(',', $cancer_protocol_order->protocol_quantity_to_dispense); - $protocol_instruction = json_decode($cancer_protocol_order->protocol_instruction, false); - @endphp - - - - @for($i = 0; $i < count($protocol_drug_ids); $i++) - - - - - - - - - - @php $cancer_protocol_count++; @endphp - @endfor - @endforeach - -
    PatientDrugsFactorFactor ValueDosageAmount to DispenseQuantity to reduce on stockInstructions
    -

    - {{ get_full_name($patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($patient_id, 'id', 'number', 'patients') }}) - -

    - - Height: {{ $height }}    Weight: {{ $weight }} - -
    - - Taken on: {{ Carbon\Carbon::parse($vitals_date_taken)->toDateTimeString() }} - -

    - - Request Comment: {{ $request_comment }} - -

    - - Protocol Name: {{ get_name($protocol_id, 'id', 'name', 'cancer_protocols') }} - -

    - - Prescribed By: {{ get_full_name($cancer_protocol_order->created_by, 'id', 'first_name', 'last_name', 'users') }} -

    -
    - {{ $drugs[$protocol_drug_ids[$i]] }} - {{ Form::hidden('protocol_drug_ids[]', $protocol_drug_ids[$i]) }} - {{ Form::hidden('protocol_patient_id[]', $cancer_protocol_order->patient_id) }} - {{ Form::hidden('protocol_episode_id[]', $cancer_protocol_order->episode_id) }} - {{ Form::hidden('protocol_ward_id[]', $cancer_protocol_order->ward_id) }} - - @php - $auto_deductable_batches_array = get_pharmacy_batch_watcher_ids_to_use_based_on_needed_quantity($protocol_drug_ids[$i], 1, $protocol_quantity_to_dispense[$i]); - if ($auto_deductable_batches_array){ - $get_drug_batches = track_batch_stock(1,$protocol_drug_ids[$i],'pharmacy_stock'); - //filter out all batches and get the batches for each drug - $filtered_batches = []; - foreach ($get_drug_batches as $data) { - $batch_number = $data['id']; - if (isset($facade_batches_options[$batch_number])) { - $filtered_batches[$batch_number] = $facade_batches_options[$batch_number]; - } - } - } - @endphp - @if(count($auto_deductable_batches_array) > 0) -

    - - - -
    Batches To Dispense From
    - @foreach ($auto_deductable_batches_array as $deductable_batch => $batch_quantity) -
    -
    - - {{ Form::select('cancer_batch_dispensed_from[]', $filtered_batches, $deductable_batch, ['class' => '','style' => 'color: black; font-size: 14px;'])}} -
    -
    -
    - {{ Form::text('cancer_batch_quantity_dispensed[]', $batch_quantity, ['class' => 'form-control', 'style' => 'padding: 1px 5px; height: 20px;'])}} -
    -
    -
    - @endforeach -
    - - - @endif - - @php - $drug_details = \Streamline\Models\Drug::find($protocol_drug_ids[$i]); - @endphp - - {{ Form::hidden('drug_strength[]', $drug_details->strength, ['id' => 'protocol_drug_strength_' . $cancer_protocol_count]) }} - {{ Form::hidden('drug_pack[]', $drug_details->pack, ['id' => 'protocol_drug_pack_' . $cancer_protocol_count]) }} - -

    - - @if ($protocol_section[$i] == 'pre_chemo') - Pre-Chemo - @elseif ($protocol_section[$i] == 'chemo') - Chemo - @else - Post-Chemo - @endif -
    - @if ($protocol_drug_factor[$i] == 1) - BSA - @php $protocol_drug_factor_label = "m2" @endphp - @elseif ($protocol_drug_factor[$i] == 2) - Weight - @php $protocol_drug_factor_label = "Kg" @endphp - @else - Standard - @php $protocol_drug_factor_label = "" @endphp - @endif - {{ Form::hidden('protocol_drug_factor[]', $protocol_drug_factor[$i], ['id' => 'protocol_drug_factor_' . $cancer_protocol_count]) }} - - {{ Form::number('protocol_drug_factor_value[]', $protocol_drug_factor_value[$i], ['class' => 'form-control', 'readonly', 'id' => 'protocol_drug_factor_value_' . $cancer_protocol_count]) }} - {!! $protocol_drug_factor_label !!} - - {{ Form::number('protocol_drug_dose[]', $protocol_drug_dose[$i], ['class' => 'form-control', 'id' => 'protocol_drug_dose_' . $cancer_protocol_count, 'onchange'=>'change_protocol_calculations(\'drug_dose\', ' . $cancer_protocol_count . ')', (Auth::user()->can('alter-cancer-protocol-chart-dispensing')) ? '' : 'readonly']) }} - {{ Form::hidden('protocol_drug_dose_label[]', $protocol_drug_dosage_label[$i]) }} - {!! $protocol_drug_dosage_label[$i] !!} - - {{ Form::number('protocol_dosage_to_dispense[]', $protocol_dosage_to_dispense[$i], ['class' => 'form-control', 'id' => 'protocol_dosage_to_dispense_' . $cancer_protocol_count, 'onchange'=>'change_protocol_calculations(\'dosage_to_dispense\', ' . $cancer_protocol_count . ')', (Auth::user()->can('alter-cancer-protocol-chart-dispensing')) ? '' : 'readonly']) }} - {{ $protocol_drug_unit_value[$i] }} - - {{ Form::number('protocol_quantity_to_dispense[]', $protocol_quantity_to_dispense[$i], ['class' => 'form-control', 'id' => 'protocol_quantity_to_dispense_' . $cancer_protocol_count, (Auth::user()->can('alter-cancer-protocol-chart-dispensing')) ? '' : 'readonly']) }} - {{ $drug_forms[$drug_details->form_id] }} - {{ Form::textarea('protocol_instruction[]', $protocol_instruction[$i], ['class' => 'form-control', 'rows' => '3']) }}
    -
    - -
    - @endif - -
    -
    -
    - {{ Form::label('received_by', __('pharmacy.received_by_title')) }} - {{ Form::select('received_by', $staff_array, '', ['id'=>'received_by','class' => 'form-control col-sm-8 compulsory ward_allocation','required']) }} -
    -
    - -
    -
    -
    -
    - -
    - {{ Form::label('approval_date',__('pharmacy.approved_and_dispensed_on')) }} -
    - {{ Form::text('approval_date', \Carbon\Carbon::now()->format('d/m/Y'), ['class' => 'form-control compulsory', 'required' => 'true','readonly','id'=>'approval_date']) }} - -
    -
    - -
    - {{ Form::label('approved_by',__('pharmacy.approved_by_title')) }} -
    - - {{ get_full_name(auth()->user()->id, 'id', 'first_name', 'last_name', 'users') }} -
    - -
    - -
    -
    -
    - {{ Form::close() }} -
    -
    -
    -
    -
    - - - -@endsection -@push('scripts') - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/confirm_dispensation_details.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/confirm_dispensation_details.blade.php deleted file mode 100755 index 52184927..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/confirm_dispensation_details.blade.php +++ /dev/null @@ -1,508 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.confirm_prescription_details') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    -
    - -@if( Auth::user()->can('view-previous-patient-prescriptions')) - @if(count($previous_treatments) > 0) -
    -

    {{ __('prescriptions.previous_prescriptions') }}

    - -
    - - - - - - - - - - - - - @foreach($previous_treatments as $past_treatment) - @php - $past_drug_ids_array = explode(",", $past_treatment->drugs); - $past_dosage_array = explode(",", $past_treatment->doses); - $past_quantities_array = explode(",", $past_treatment->quantities_dispensed); - $past_frequencies_array = explode(",", $past_treatment->frequencies); - $past_durations_array = explode(",", $past_treatment->durations); - $past_instructions_array = explode(",", $past_treatment->instructions); - @endphp - - - - - - - - - - - - @endforeach - -
    {{ __('prescriptions.date') }}{{ __('prescriptions.clinic') }}{{ __('prescriptions.primary_diagnosis') }}{{ __('prescriptions.other_diagnoses') }}{{ __('prescriptions.prescribed_by') }}
    - {{ streamline_date_time($past_treatment->created_at) }} -
    - @if(check_if_episode_is_a_followup($past_treatment->episode_id)) -
    ({{ __('patient_episode.review_from') }} {{ streamline_date(get_name(get_name($past_treatment->episode_id, 'id', 'parent_episode_id', 'patient_episodes'), 'id', 'created_at', 'patient_episodes')) }})
    - @endif -
    - {{ get_name(get_name($past_treatment->episode_id, 'id', 'clinic_id', 'patient_episodes'), "id", "name", "clinics") }} - - {{ get_name(get_name($past_treatment->episode_id, 'episode_id', 'primary_diagnosis', 'consultations'), 'id', 'name', 'diagnoses') }} - {{ get_full_name($past_treatment->created_by, "id", "first_name", "last_name", "users") }} - {{ __('prescriptions.view_details') }} -
    -
    - @if(Auth::user()->can('view-patients-home')) - {{ __('prescriptions.patient_home') }} - @endif -
    - @endif -@endif - -
    -
    -
    - - @include('flash::message') - - @if($treatment->is_treatment_progressive != 0) - -

    {{ __('pharmacy.progressive_prescriptions') }}

    - - @php $original_prescription = Streamline\Models\TreatmentOpdProgressive::find($treatment->is_treatment_progressive); @endphp -

    {{ __('pharmacy.original_prescription') }}

    - -
    - - - - - - - - - - - - - - - @if($original_prescription) - @php - $drug_explode = explode(",", $original_prescription->drugs); - $dose_explode = explode(",", $original_prescription->dose); - $drug_frequency_explode = explode(",", $original_prescription->drug_frequency); - $instruction_explode = explode(",", $original_prescription->instruction); - $duration_explode = explode(",", $original_prescription->durations); - $quantity_to_dispense = explode(",", $original_prescription->quantities_to_dispense); - $treatment_amount = 0; - $grand_treatment_total = 0; - $quantity_given_so_far = array_fill(0, count($drug_explode), 0); - $quantity_prescribed = array_fill(0, count($drug_explode), 0); - @endphp - - @for ($x = 0; $x < count($drug_explode); $x++) - @php - $treatment_subtotal = 0; - - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if(patient_insurance_status($patient_id) == 1){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $drug_explode[$x], 4, true, 0); - $treatment_amount = $item_insurance_details[2]; - } else { - if ($price_list_id) { - $treatment_amount = get_price_list_category_price($price_list_id, 3, $drug_explode[$x]); - } else { - $treatment_amount = get_name($drug_explode[$x], "id", "non_insured_price", "drugs"); - } - } - - if(isset($quantity_to_dispense[$x]) && $quantity_to_dispense[$x] != ""){ - $treatment_subtotal = $quantity_to_dispense[$x] * $treatment_amount; - } - - $grand_treatment_total += $treatment_subtotal; - $quantity_prescribed[$x] = $quantity_to_dispense[$x]; - @endphp - - - - - - - - - - - - @endfor - - - - - - - - - - - @else - - @endif - -
    #{{ __('pharmacy.drug_name') }}{{ __('pharmacy.dose') }}{{ __('pharmacy.frequency') }}{{ __('pharmacy.duration') }}{{ __('pharmacy.quantity_to_dispense') }}{{ __('pharmacy.instructions') }}{{ __('pharmacy.amount') }}
    {{ $x+1 }}.{{ get_name($drug_explode[$x], 'id', 'name', 'drugs') }} - @php - $form_id = get_name($drug_explode[$x], 'id', 'form_id', 'drugs'); - $unit_id = get_name($drug_explode[$x], 'id', 'unit_id', 'drugs'); - $form_name = get_name($form_id, 'id', 'name', 'drug_forms'); - $unit_name = get_name($unit_id, 'id', 'name', 'drug_units'); - @endphp - @if(isset($dose_explode[$x]) && $dose_explode[$x] != "") - {{ $dose_explode[$x] }} {{ $unit_name }} - @endif - - @if(isset($drug_frequency_explode[$x]) && $drug_frequency_explode[$x] != "") - {{ get_name($drug_frequency_explode[$x], 'id', 'name', 'dosage_frequencies') }} - @endif - {{ $duration_explode[$x] }}{{ $quantity_to_dispense[$x] }}{{ isset($instruction_explode[$x]) ? $instruction_explode[$x] : "" }}{{ ugandan_shillings($treatment_subtotal) }}
    {{ __('pharmacy.total') }}{{ ugandan_shillings($grand_treatment_total) }}
    {{ __('pharmacy.prescribed_by') }}{{ get_full_name($original_prescription->prescribed_by, 'id', 'first_name', 'last_name', 'users') }}
    {{ __('pharmacy.no_records') }}
    -
    - -
    - -

    {{ __('pharmacy.first_dispense') }}

    - @endif - -
    -
    -
    - {{ csrf_field() }} -
    - - - - - - - - - - - - - - - - - @php $i=1; @endphp - @if($treatment) - @php - $drug_explode = explode(",", $treatment->drugs); - $dose_explode = explode(",", $treatment->doses); - $dose2_explode = explode(",", $treatment->dose2); - $drug_frequency_explode = explode(",", $treatment->frequencies); - $instruction_explode = explode(",", $treatment->instruction); - $duration_explode = explode(",", $treatment->durations); - //$long_term_explode = explode(",", $treatment_row['Long_Term']); - $dispense_explode = explode(",", $treatment->dispensed); - //$form_explode = explode(",", $treatment_row['Form']); - $quantity_to_dispense = explode(",", $treatment->quantities_dispensed); - $treatment_amount = 0; - $treatment_amount_total = 0; - $grand_treatment_total = 0; - @endphp - - - - - @for ($x = 0; $x < count($drug_explode); $x++) - @php - $treatment_subtotal = 0; - - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if(patient_insurance_status($patient_id) == 1){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $drug_explode[$x], 4, true, 0); - $treatment_amount = $item_insurance_details[2]; - } else { - if ($price_list_id) { - $treatment_amount = get_price_list_category_price($price_list_id, 3, $drug_explode[$x]); - } else { - $treatment_amount = get_name($drug_explode[$x], "id", "non_insured_price", "drugs"); - } - } - - if(isset($quantity_to_dispense[$x]) && $quantity_to_dispense[$x] != ""){ - $treatment_subtotal = $quantity_to_dispense[$x] * $treatment_amount; - } - - $grand_treatment_total += $treatment_subtotal; - - // add amounts to totals - $treatment_amount_total += $treatment_amount; - @endphp - - - - - - - @if (!empty($dose2_explode[$x])) - @php - $form_id2 = get_name($dose2_explode[$x], 'id', 'form_id', 'drugs'); - $form_name2 = get_name($form_id2, 'id', 'name', 'drug_units'); - @endphp - - {{ Form::hidden('dose2[]', $dose2_explode[$x]) }} - @endif - - - - @php - $drug_pharmacy_stock = 0; - - $batch_records = \Streamline\Models\ItemBatchWatcher::where(['item_type' => 1, 'item_id' => $drug_explode[$x]])->where('pharmacy_stock', '!=', 0)->get(); - - if(count($batch_records) > 0){ - foreach($batch_records as $record){ - $drug_pharmacy_stock += $record->pharmacy_stock; - } - } - @endphp - - - - - - @endfor - - - - - - - @php $i++; @endphp - @else - - @endif - -
    #{{ __('pharmacy.drug_name') }}{{ __('pharmacy.dose') }}{{ __('pharmacy.frequency') }}{{ __('pharmacy.duration') }}{{ __('pharmacy.quantity') }}{{ __('pharmacy.quantity_in_pharmacy') }}{{ __('pharmacy.instructions') }}{{ __('pharmacy.amount') }}{{ __('pharmacy.to_be_purcharsed_elsewhere') }}
    {{ $x+1 }}. - - @if(get_name($drug_explode[$x], 'id', 'insurance_coverage', 'drugs') == 1) - - @else - - @endif - - @php - $form_id = get_name($drug_explode[$x], 'id', 'form_id', 'drugs'); - $unit_id = get_name($drug_explode[$x], 'id', 'unit_id', 'drugs'); - $form_name = get_name($form_id, 'id', 'name', 'drug_forms'); - $unit_name = get_name($unit_id, 'id', 'name', 'drug_units'); - @endphp - @if(isset($dose_explode[$x]) && $dose_explode[$x] != "") - - {{ Form::hidden('dose[]', $dose_explode[$x]) }} - @else - {{ Form::hidden('dose[]', 0) }} - @endif - - @if(isset($drug_frequency_explode[$x]) && $drug_frequency_explode[$x] != "") - - @else - {{ Form::hidden('frequency[]', 0) }} - @endif - - - - - {{ Form::text('quantity_in_pharmacy', $drug_pharmacy_stock, ['class' => 'form-control', 'readonly']) }} - - - {{ ugandan_shillings($treatment_subtotal) }} - {{ Form::hidden('treatment_subtotal[]', $treatment_subtotal, ['id' => 'treatment_subtotal_' . $drug_explode[$x]]) }} -
    {{ __('pharmacy.total') }}{{ ugandan_shillings($grand_treatment_total) }}
    {{ __('pharmacy.no_records') }}
    -
    - - @if(isset($treatment->order_comments)) -
    - - {{ Form::label('order_comments', 'Treatment Order Comments') }} - - -

    - @endif - -
    - {{ __('pharmacy.alter') }}  -   - @if(Auth::user()->can('view-progressive-prescriptions') && $treatment->is_treatment_progressive == 0){{ __('pharmacy.confirm_and_dispense_progressively') }}@endif - {{--Confirm--}} -
    - -
    - -
    - {{ __('pharmacy.prescribed_by') }} : {{ get_name($treatment->created_by, 'id', 'first_name', 'users')}} {{ get_name($treatment->created_by, 'id', 'last_name', 'users') }} ({{ get_name($treatment->created_by, 'id', 'phone', 'users') }}) -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/confirm_progressive_prescriptions.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/confirm_progressive_prescriptions.blade.php deleted file mode 100755 index 1603ac20..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/confirm_progressive_prescriptions.blade.php +++ /dev/null @@ -1,245 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.progressive_treatments') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    - {{ Form::open(['method'=>'post','route' => 'pharmacy.confirm_progressive_prescriptions', 'class' => 'typeahead']) }} - - {{ Form::hidden('patient_id', 0, ['id' => 'patient_id']) }} - -
    -
    -
    - - -
    -
    - - - -
    - {{ Form::label('search_patient', __('pharmacy.search_by_patient')) }} -
    - -
    -
    - -
    -
    - {{ Form::submit(__('pharmacy.submit'), ['class'=>'btn btn-success pull-right']) }} -
    -
    -
    - {{ Form::close() }} -
    -
    -
    -
    - -
    - @include('flash::message') - @if(isset($display)) -
    -
    -
    -
    -

    {!! isset($display) ? $display : '' !!}

    -
    -
    -
    -
    - @endif - -
    - - - - - - - - - - - - - @if(count($prescriptions) > 0) - @foreach($prescriptions as $prescription) - - - - - - - - - @endforeach - @else - - - - @endif - -
    {{ __('pharmacy.date_first_ordered') }}{{ __('pharmacy.date_last_updated') }}{{ __('pharmacy.patient_name') }}{{ __('pharmacy.patient_category') }}{{ __('pharmacy.prescribed_by') }}{{ __('pharmacy.actions') }}
    {{ streamline_date_time_short($prescription->created_at) }} - @if(!is_null($prescription->updated_at) && !is_null($prescription->updated_by)) - {{ streamline_date_time_short($prescription->updated_at) }} by {{ get_full_name($prescription->updated_by, 'id', 'first_name', 'last_name', 'users') }} - @endif - {!! insurance_flag($prescription->patient_id) !!} ({{ get_name($prescription->patient_id, 'id', 'number', 'patients') }}){{ isset($categories[get_name($prescription->patient_id, 'id', 'category_id', 'patients')]) ? $categories[get_name($prescription->patient_id, 'id', 'category_id', 'patients')] : "" }}{{ get_full_name($prescription->created_by, 'id', 'first_name', 'last_name', 'users') }} - {{ __('pharmacy.select') }} -
    {{ __('pharmacy.there_are_no_unconfirmed_progessive_treatments') }}
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush - -@push('styles') - -@endpush diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/confirm_progressive_prescriptions_details.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/confirm_progressive_prescriptions_details.blade.php deleted file mode 100755 index c89ae383..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/confirm_progressive_prescriptions_details.blade.php +++ /dev/null @@ -1,473 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.confirm_progressive_treatment') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    -
    - -
    - @include('flash::message') - -

    {{ __('pharmacy.original_prescription') }}

    - -
    - - - - - - - - - - - - - - - @if($original_prescription) - @php - $drug_explode = explode(",", $original_prescription->drugs); - $dose_explode = explode(",", $original_prescription->dose); - $drug_frequency_explode = explode(",", $original_prescription->drug_frequency); - $instruction_explode = explode(",", $original_prescription->instruction); - $duration_explode = explode(",", $original_prescription->durations); - $quantity_to_dispense = explode(",", $original_prescription->quantities_to_dispense); - $treatment_amount = 0; - $grand_treatment_total = 0; - $quantity_given_so_far = array_fill(0, count($drug_explode), 0); - $quantity_prescribed = array_fill(0, count($drug_explode), 0); - @endphp - - @for ($x = 0; $x < count($drug_explode); $x++) - @php - $treatment_subtotal = 0; - - // get insurance status for drug - $drug_insurance_status = get_name($drug_explode[$x], "id", "insurance_coverage", "drugs"); - - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_id) { - $treatment_amount = get_price_list_category_price($price_list_id, 3, $drug_explode[$x]); - } else { - // check if drug and patient is eligible for insurance - if($drug_insurance_status == 1 && patient_insurance_status($patient_id) == 1){ - $treatment_amount = get_name($drug_explode[$x], "id", "insured_price", "drugs"); - } else { - $treatment_amount = get_name($drug_explode[$x], "id", "non_insured_price", "drugs"); - } - } - - if(isset($quantity_to_dispense[$x]) && $quantity_to_dispense[$x] != ""){ - $treatment_subtotal = $quantity_to_dispense[$x] * $treatment_amount; - } else { - $treatment_subtotal = 0; - } - - $grand_treatment_total += $treatment_subtotal; - $quantity_prescribed[$x] = $quantity_to_dispense[$x]; - @endphp - - - - - - - - - - - - @endfor - - - - - - - - - - - @else - - @endif - -
    #{{ __('pharmacy.drug_name') }}{{ __('pharmacy.dose') }}{{ __('pharmacy.frequency') }}{{ __('pharmacy.duration') }}{{ __('pharmacy.quantity_to_dispense') }}{{ __('pharmacy.instructions') }}{{ __('pharmacy.amount') }}
    {{ $x+1 }}.{{ get_name($drug_explode[$x], 'id', 'name', 'drugs') }} - @php - $form_id = get_name($drug_explode[$x], 'id', 'form_id', 'drugs'); - $unit_id = get_name($drug_explode[$x], 'id', 'unit_id', 'drugs'); - $form_name = get_name($form_id, 'id', 'name', 'drug_forms'); - $unit_name = get_name($unit_id, 'id', 'name', 'drug_units'); - @endphp - @if(isset($dose_explode[$x]) && $dose_explode[$x] != "") - {{ $dose_explode[$x] }} {{ $unit_name }} - @endif - - @if(isset($drug_frequency_explode[$x]) && $drug_frequency_explode[$x] != "") - {{ get_name($drug_frequency_explode[$x], 'id', 'name', 'dosage_frequencies') }} - @endif - {{ $duration_explode[$x] }}{{ $quantity_to_dispense[$x] }}{{ isset($instruction_explode[$x]) ? $instruction_explode[$x] : "" }}{{ ugandan_shillings($treatment_subtotal) }}
    {{ __('pharmacy.total') }}{{ ugandan_shillings($grand_treatment_total) }}
    {{ __('pharmacy.prescribed_by') }}{{ get_full_name($original_prescription->prescribed_by, 'id', 'first_name', 'last_name', 'users') }}
    {{ __('pharmacy.no_records') }}
    -
    - - @if(isset($original_prescription->order_comments)) -
    - - {{ Form::label('order_comments', __('pharmacy.treatment_order_comments')) }} - - -

    - @endif - - @if(count($previous_progressive_treatments) > 0) - @php $total_amount_paid_so_far = 0; @endphp -
    - -

    {{ __('pharmacy.treatment_given') }}

    - -
    - - - - - - - - - - - - - - @foreach($previous_progressive_treatments as $treatment) - @php - $drugs = explode(",", $treatment->drugs); - $doses = explode(",", $treatment->doses); - $drug_frequency_explode = explode(",", $treatment->frequencies); - $instruction_explode = explode(",", $treatment->instruction); - $duration_explode = explode(",", $treatment->durations); - $quantity_to_dispense = explode(",", $treatment->quantities_dispensed); - $status_text = ""; - - if($treatment->payment_status == 1) { - $status_text .= __('pharmacy.paid_comma'); - } else { - $status_text .= __('pharmacy.not_paid_comma'); - } - - if($treatment->dispense_status == 1) { - $status_text .= __('pharmacy.dispensed'); - } else { - $status_text .= __('pharmacy.not_dispensed'); - } - @endphp - - - - - - - - - - @for($i=1; $i < count($drugs); $i++) - - - - - - - - - @endfor - @endforeach - - - - - - - - - - - -
    {{ __('pharmacy.date') }}{{ __('pharmacy.drugs') }}{{ __('pharmacy.dose') }}{{ __('pharmacy.frequency') }}{{ __('pharmacy.duration') }}{{ __('pharmacy.quantities_dispensed') }}{{ __('pharmacy.amount') }}
    - {{ __('pharmacy.created_on') }} {{ streamline_date_time($treatment->created_at) }} by {{ get_full_name($treatment->created_by, 'id', 'first_name', 'last_name', 'users') }} -

    - {{ $status_text }} -
    {{ get_drug_name($drugs[0]) }} - @php - $unit_id = get_name($drugs[0], 'id', 'unit_id', 'drugs'); - $unit_name = get_name($unit_id, 'id', 'name', 'drug_units'); - @endphp - @if(isset($doses[0]) && $doses[0] != "") - {{ $doses[0] }} {{ $unit_name }} - @endif - - @if(isset($drug_frequency_explode[0]) && $drug_frequency_explode[0] != "") - {{ get_name($drug_frequency_explode[0], 'id', 'name', 'dosage_frequencies') }} - @endif - - {{ $duration_explode[0] }} - - @php - $form_id = get_name($drugs[0], 'id', 'form_id', 'drugs'); - $form_name = get_name($form_id, 'id', 'name', 'drug_forms'); - $quantity_given_so_far[0] += $quantity_to_dispense[0]; - @endphp - {{ $quantity_to_dispense[0] }} {{ $form_name }} - - @php - $treatment_subtotal = 0; - - // get insurance status for drug - $drug_insurance_status = get_name($drugs[0], "id", "insurance_coverage", "drugs"); - - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_id) { - $treatment_amount = get_price_list_category_price($price_list_id, 3, $drugs[0]); - } else { - // check if drug and patient is eligible for insurance - if($drug_insurance_status == 1 && patient_insurance_status($patient_id) == 1){ - $treatment_amount = get_name($drugs[0], "id", "insured_price", "drugs"); - } else { - $treatment_amount = get_name($drugs[0], "id", "non_insured_price", "drugs"); - } - } - - $treatment_subtotal = $quantity_to_dispense[0] * $treatment_amount; - - $total_amount_paid_so_far += $treatment_subtotal; - @endphp - {{ ugandan_shillings($treatment_subtotal) }} -
    {{ get_drug_name($drugs[$i]) }} - @php - $unit_id = get_name($drugs[$i], 'id', 'unit_id', 'drugs'); - $unit_name = get_name($unit_id, 'id', 'name', 'drug_units'); - @endphp - @if(isset($doses[$i]) && $doses[$i] != "") - {{ $doses[$i] }} {{ $unit_name }} - @endif - - @if(isset($drug_frequency_explode[$i]) && $drug_frequency_explode[$i] != "") - {{ get_name($drug_frequency_explode[$i], 'id', 'name', 'dosage_frequencies') }} - @endif - {{ $duration_explode[$i] }} - @php - $form_id = get_name($drugs[$i], 'id', 'form_id', 'drugs'); - $form_name = get_name($form_id, 'id', 'name', 'drug_forms'); - $quantity_given_so_far[$i] += $quantity_to_dispense[$i]; - @endphp - {{ $quantity_to_dispense[$i] }} {{ $form_name }} - - @php - $treatment_subtotal = 0; - - // get insurance status for drug - $drug_insurance_status = get_name($drugs[$i], "id", "insurance_coverage", "drugs"); - - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_id) { - $treatment_amount = get_price_list_category_price($price_list_id, 3, $drugs[$i]); - } else { - // check if drug and patient is eligible for insurance - if($drug_insurance_status == 1 && patient_insurance_status($patient_id) == 1){ - $treatment_amount = get_name($drugs[$i], "id", "insured_price", "drugs"); - } else { - $treatment_amount = get_name($drugs[$i], "id", "non_insured_price", "drugs"); - } - } - - $treatment_subtotal = $quantity_to_dispense[$i] * $treatment_amount; - - $total_amount_paid_so_far += $treatment_subtotal; - @endphp - {{ ugandan_shillings($treatment_subtotal) }} -
    {{ __('pharmacy.total_amount_prescribed_so_far') }}{{ ugandan_shillings($total_amount_paid_so_far) }}
    {{ __('pharmacy.total_amount_remaining') }}{{ ugandan_shillings($grand_treatment_total - $total_amount_paid_so_far) }}
    -
    - @endif - -
    - -

    {{ __('pharmacy.prescibe_new_treatment') }}

    - - {{ Form::open(['route' => 'pharmacy.save_progressive_prescriptions', 'data-toggle' => 'validator']) }} - -
    - - - - - - - - - - - - - - - - - @if($original_prescription) - @php $patient_insurance_status = patient_insurance_status($original_prescription->patient_id); @endphp - {{ Form::hidden('patient_id', $original_prescription->patient_id) }} - {{ Form::hidden('patient_insurance_status', $patient_insurance_status, ['id' => 'patient_insurance_status']) }} - {{ Form::hidden('episode_id', $original_prescription->episode_id) }} - {{ Form::hidden('progressive_id', $original_prescription->id) }} - - @php - $i=1; - $drug_explode = explode(",", $original_prescription->drugs); - $dose_explode = explode(",", $original_prescription->dose); - $drug_frequency_explode = explode(",", $original_prescription->drug_frequency); - $instruction_explode = explode(",", $original_prescription->instruction); - $duration_explode = explode(",", $original_prescription->durations); - $quantity_to_dispense = explode(",", $original_prescription->quantities_to_dispense); - $treatment_amount = 0; - $grand_treatment_total = 0; - @endphp - - @for ($x = 0; $x < count($drug_explode); $x++) - @php - $treatment_subtotal = 0; - - // get insurance status for drug - $drug_insurance_status = get_name($drug_explode[$x], "id", "insurance_coverage", "drugs"); - - // get insurance status for drug - $drug_insurance_status = get_name($drug_explode[$x], "id", "insurance_coverage", "drugs"); - - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_id) { - $treatment_amount = get_price_list_category_price($price_list_id, 3, $drug_explode[$x]); - } else { - // check if drug and patient is eligible for insurance - if($drug_insurance_status == 1 && patient_insurance_status($patient_id) == 1){ - $treatment_amount = get_name($drug_explode[$x], "id", "insured_price", "drugs"); - } else { - $treatment_amount = get_name($drug_explode[$x], "id", "non_insured_price", "drugs"); - } - } - - $treatment_subtotal = $treatment_amount; - - $grand_treatment_total += $treatment_subtotal; - @endphp - - - - - - - - - - - - - - - @endfor - - - - - - @php $i++; @endphp - @else - - @endif - -
    #{{ __('pharmacy.drug_name') }}{{ __('pharmacy.dose') }}{{ __('pharmacy.frequency') }}{{ __('pharmacy.duration') }}{{ __('pharmacy.quantity_prescribed') }}{{ __('pharmacy.quantity_dispensed') }}{{ __('pharmacy.quantity_to_dispense') }}{{ __('pharmacy.instructions') }}{{ __('pharmacy.amount') }}
    {{ $x+1 }}.{{ get_name($drug_explode[$x], 'id', 'name', 'drugs') }} {{ Form::hidden('drug_id[]', $drug_explode[$x]) }} - @php - $form_id = get_name($drug_explode[$x], 'id', 'form_id', 'drugs'); - $unit_id = get_name($drug_explode[$x], 'id', 'unit_id', 'drugs'); - $form_name = get_name($form_id, 'id', 'name', 'drug_forms'); - $unit_name = get_name($unit_id, 'id', 'name', 'drug_units'); - @endphp - @if(isset($dose_explode[$x]) && $dose_explode[$x] != "") - {{ $dose_explode[$x] }} {{ $unit_name }} - {{ Form::hidden('dose[]', $dose_explode[$x]) }} - @else - {{ Form::hidden('dose[]', 0) }} - @endif - - @if(isset($drug_frequency_explode[$x]) && $drug_frequency_explode[$x] != "") - {{ get_name($drug_frequency_explode[$x], 'id', 'name', 'dosage_frequencies') }} - {{ Form::hidden('frequency[]', $drug_frequency_explode[$x]) }} - @else - {{ Form::hidden('frequency[]', 0) }} - @endif - {{ Form::number('duration[]', 1, ['class' => 'form-control compulsory', 'required']) }} {{ __('pharmacy.days') }}{{ Form::number('quantity_prescribed[]', $quantity_prescribed[$x], ['class' => 'form-control compulsory', 'readonly']) }}{{ Form::number('quantity_given_so_far[]', $quantity_given_so_far[$x], ['class' => 'form-control compulsory', 'readonly']) }}{{ Form::number('quantity_dispensed[]', 0, ['class' => 'form-control compulsory', 'required', 'id' => 'quantity_dispensed' . $x, 'min' => 0, 'max' => $quantity_prescribed[$x]-$quantity_given_so_far[$x], ($quantity_given_so_far[$x] >= $quantity_prescribed[$x]) ? 'readonly' : '']) }}{{ Form::textarea('instructions[]', "", ['class' => 'form-control', 'rows' => '3']) }}{{ $treatment_subtotal }} UGx
    {{ __('pharmacy.total') }}{{ ugandan_shillings($grand_treatment_total) }}
    {{ __('pharmacy.no_records') }}
    -
    - -
    - - {{ Form::button("Submit",['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10 submit-btn']) }} - - {{ __('pharmacy.cancel_progressive_treatment') }} - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - -@endpush - diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/dispensation_menu.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/dispensation_menu.blade.php deleted file mode 100755 index 6ce9cc12..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/dispensation_menu.blade.php +++ /dev/null @@ -1,6 +0,0 @@ -
    - -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/dispensation_report_details.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/dispensation_report_details.blade.php deleted file mode 100755 index af479b1b..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/dispensation_report_details.blade.php +++ /dev/null @@ -1,239 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.dispensation_report_details') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    {{ __('pharmacy.dispensation_report_details') }}
    -
    -

    {{ __('pharmacy.out_patient_department') }}

    -
    - - - - - - - - - - - - - @php $opd_counter = 1; $total_opd_quantity = 0; @endphp - @if(count($opd_dispensations)) - @foreach($opd_dispensations as $opd_record) - drugs); - $quantities_array = explode(",", $opd_record->quantity_dispensed); - ?> - - @for ($i=0; $i < count($drugs_array); $i++) - @if($drugs_array[$i] == $selected_drug_id) - - - - - @php - $total_opd_quantity += $quantities_array[$i]; - @endphp - - - - treatment_id, "id", "episode_id", "treatments"); - $clinic_id = get_name($episode_id, "id", "clinic_id", "patient_episodes"); - ?> - - - @php $opd_counter++; @endphp - @endif - @endfor - @endforeach - - - - - - - - - @endif - - -
    - - -

    {{ __('pharmacy.in_patient_department') }}

    -
    - - - - - - - - - - - - - @php $ward_counter = 1; $total_ipd_quantity = 0; @endphp - @if(count($ward_dispensations)) - @foreach($ward_dispensations as $ward_record) - - - - - @php $total_ipd_quantity += $ward_record->quantity_given; @endphp - - - - - - @php $ward_counter++; @endphp - @endforeach - - - - - - - - - @endif - - -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/dispensed_details_review.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/dispensed_details_review.blade.php deleted file mode 100755 index ed885196..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/dispensed_details_review.blade.php +++ /dev/null @@ -1,205 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.dispensing_details') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    -
    - -
    -
    -
    - - @include('flash::message') - -
    -
    -
    - {{ csrf_field() }} -
    - - - - - - - - - - - - - - - - @if($treatment) - @php - $total_amount_to_pay = 0; - $drug_explode = explode(",", $treatment->drugs); - $dose_explode = explode(",", $treatment->doses); - $dose2_explode = explode(",", $treatment->dose2); - $drug_frequency_explode = explode(",", $treatment->frequencies); - $instruction_explode = explode(",", $treatment->instruction); - $duration_explode = explode(",", $treatment->durations); - //$long_term_explode = explode(",", $treatment_row['Long_Term']); - $dispense_explode = explode(",", $treatment->dispensed); - //$form_explode = explode(",", $treatment_row['Form']); - $quantity_to_dispense = explode(",", $treatment->quantities_dispensed); - $purchased_elsewhere = explode(",", $treatment->purchased_elsewhere); - @endphp - - - - - - - - - @for ($x = 0; $x < count($drug_explode); $x++) - - - - - - @if (!empty($dose2_explode[$x])) - @php - $form_id2 = isset($drug_explode[$x]) ? get_name($dose2_explode[$x], 'id', 'form_id', 'drugs') : ""; - $form_name2 = isset($drug_explode[$x]) ? get_name($form_id2, 'id', 'name', 'drug_units') : ""; - @endphp - - {{ Form::hidden('dose2[]', isset($dose2_explode[$x]) ? $dose2_explode[$x] : "") }} - @endif - - - - - - - - @endfor - - - - - - - @else - - @endif - -
    #{{ __('pharmacy.drug_name') }}{{ __('pharmacy.dose') }}{{ __('pharmacy.frequency') }}{{ __('pharmacy.duration') }}{{ __('pharmacy.quantity') }}{{ __('pharmacy.amount') }}{{ __('pharmacy.instructions') }}
    -

    {{ __('pharmacy.prescribed_on') }} {{ streamline_date_time($treatment->created_at) }} {{ __('pharmacy.by') }} {{ isset($treatment) ? get_full_name($treatment->created_by, 'id', 'first_name', 'last_name', 'users'): "" }} ({{ isset($treatment) ? get_name($treatment->created_by, 'id', 'phone', 'users') : "" }})

    -
    {{ $x+1 }}. - - @if(get_name($drug_explode[$x], 'id', 'insurance_coverage', 'drugs') == 1) - - @else - - @endif - - @php - $form_id = isset($drug_explode[$x]) ? get_name($drug_explode[$x], 'id', 'form_id', 'drugs') : ""; - $unit_id = isset($drug_explode[$x]) ? get_name($drug_explode[$x], 'id', 'unit_id', 'drugs') : ""; - $form_name = isset($form_id) ? get_name($form_id, 'id', 'name', 'drug_forms') : ""; - $unit_name = isset($unit_id) ? get_name($unit_id, 'id', 'name', 'drug_units') : ""; - @endphp - - {{ Form::hidden('dose[]', isset($dose_explode[$x]) ? $dose_explode[$x] : "") }} - - - - - - - - @php - $treatment_amount = 0; - $insurance_amount = 0; - - if(get_name($drug_explode[$x], "id", "name", "drugs") != "N/A"){ - // insurance flag - $is_insured = 0; - $insurance_amount = 0; - - // get insurance status for drug - $drug_insurance_status = get_name($drug_explode[$x], "id", "insurance_coverage", "drugs"); - - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($treatment->patient_id); - if ($price_list_id) { - $treatment_amount = get_price_list_category_price($price_list_id, 3, $drug_explode[$x]); - } else { - // check if drug and patient is eligible for insurance - if($drug_insurance_status == 1 && patient_insurance_status($treatment->patient_id) == 1){ - $treatment_amount = get_name($drug_explode[$x], "id", "insured_price", "drugs"); - $insurance_amount = get_name($drug_explode[$x], "id", "non_insured_price", "drugs") - $treatment_amount; - $is_insured = 1; - } else { - $treatment_amount = get_name($drug_explode[$x], "id", "non_insured_price", "drugs"); - } - } - - if(isset($quantity_to_dispense[$x]) && $quantity_to_dispense[$x] != ""){ - $treatment_subtotal = $quantity_to_dispense[$x] * $treatment_amount; - $insurance_amount *= $quantity_to_dispense[$x]; - } else { - $treatment_subtotal = 0; - } - } - $total_amount_to_pay += $treatment_subtotal; - @endphp - {{ ugandan_shillings($treatment_subtotal) }} - - - - @if($purchased_elsewhere[$x] == 1) - Purchased Elsewhere - @endif -
    {{ __('pharmacy.total') }}
    {{ ugandan_shillings($total_amount_to_pay) }}
    {{ __('pharmacy.no_records') }}
    -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/drugs_stock_reconciliation.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/drugs_stock_reconciliation.blade.php deleted file mode 100755 index 6c0d5321..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/drugs_stock_reconciliation.blade.php +++ /dev/null @@ -1,697 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.pharmacy_drugs_stock_reconciliation') }}

    -
    -
    - -
    -
    - - -@include('flash::message') - -
    - {{ Form::open(['route' => 'pharmacy.drugs_stock_reconciliation', 'method' => 'ANY', 'role' => 'search']) }} -
    -
    -
    - {{ Form::select('search_items_ids[]',$drugs_dropdown,'',['id'=>'drug_ids', 'multiple'=>true, 'class' => 'form-control col-sm-8 drug_ids']) }} -
    -
    - -
    - -
    -
    - {{ Form::close() }} -
    - -
    -
    - {{ csrf_field() }} -
    -
    - - -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - - @if(track_items_using_batches()) - - @endif - - - - - - - - - - - - - - @if(track_items_using_batches()) - - @endif - - - - - - - - - - - - - - @if(track_items_using_batches()) - - @endif - - - - - - - - - @foreach($drugs as $drug) - @php - $drug_pharmacy_stock = 0; - $batch_records = \Streamline\Models\ItemBatchWatcher::where(['item_type' => 1, 'item_id' => $drug->id])->where('pharmacy_stock', '!=', 0)->get(); - - if (count($batch_records) > 0) { - foreach ($batch_records as $batch_record) { - $drug_pharmacy_stock += $batch_record->pharmacy_stock; - } - } - @endphp - - - - @if(track_items_using_batches()) - - @endif - - - - - - - - - @endforeach - -
    {{ __('stores.drug_name') }}{{ __('pharmacy.pharmacy_system_stock') }}{{ __('stores.batch_details_and_others') }}{{ __('pharmacy.pharmacy_physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.reason_for_difference') }}{{ __('stores.selling_price') }}
    {{ __('stores.drug_name') }}{{ __('pharmacy.pharmacy_system_stock') }}{{ __('stores.batch_details_and_others') }}{{ __('pharmacy.pharmacy_physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.reason_for_difference') }}{{ __('stores.selling_price') }}
    - @if($drug->insurance_coverage == 1) - {{ $drug->name }} - @else - {{ $drug->name }} - @endif - -
    - {{ $drug_pharmacy_stock }} - - -
    -
    - - @if(count($batch_records) > 0) - @foreach($batch_records as $record) -
    -
    - {{ Form::hidden('item_batch_watcher_id[]', $record->id, ['class' => 'batch_record_id_class_'.$record->id]) }} - {{ Form::hidden('batch_drug_id[]', $drug->id, ['class' => 'batch_id_class_'.$drug->id]) }} - {{ Form::hidden('batch_quotation_id[]', $record->id) }} - - - - - -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    - -
    -
    -
    - {{ __('stores.quantity') }}:{{ $record->pharmacy_stock }}
    - @if(Auth::user()->can('remove-batch-during-stock-reconciliation')) - {{-- - @php - $batch_no = $record->batch_number; - $drug_id = $drug->id; - @endphp - Remove batch - --}} - @endif - @if(Auth::user()->can('edit-batch-during-stock-reconciliation')) - - @php - $batch_no = $record->batch_number; - $drug_id = $drug->id; - @endphp - {{ __('stores.edit_batch') }} - - @endif -
    - {{-- --}} -
    -
    - {{ __('stores.unit_cost') }}: {{ $record->cost_price }} - -
    - - -
    -
    - {{ __('stores.expiry_date') }}: {{ $record->expiry_date }} -
    - -
    -
    - @endforeach - @else -
    -
    - {{ Form::hidden('item_batch_watcher_id[]', 0) }} - {{ Form::hidden('batch_drug_id[]', $drug->id) }} - {{ Form::hidden('batch_quotation_id[]', 0) }} - -
    - -
    - -
    - -
    - -
    -
    - -
    -
    - -
    -
    - @endif -
    -
    - {{ $drug_pharmacy_stock == 0 ? $drug_pharmacy_stock : $drug_pharmacy_stock }} -
    - -
    - - -
    -
    - -
    - - -
    - {{ ugandan_shillings($drug->non_insured_price) }} -
    -
    -
    -
    -


    -
    -
    - - -
    -
    -
    -
    - {{ Form::label('account_id', __('stores.general_comment')) }} -
    -
    - {{--
    - {{ Form::text('account_id', $stock_adjustment_chart_of_account->name, ['class' => 'form-control', 'id' => 'account_id']) }} -
    -
    --}} -
    - {{ Form::textarea('general_comment','',['class' => 'form-control', 'placeholder' => __('pharmacy.add_general_comment'), 'rows' => 4]) }} -
    -
    -
    -
    - - - {{ __('pharmacy.note') }}: - {{ __('pharmacy.stock_differences_are_reflected_in') }} {{ $stock_adjustment_chart_of_account->name }} {{ __('pharmacy.if_it_is_not_opening_stock') }}. {!! __('pharmacy.if_it_is_the_opening_stock_then_the_affected_account') !!} - -
    -
    - {{--
    -
    - {{ Form::label('account_id', __('stores.select_chart_of_account_affected')) }} -
    -
    -
    - {{ Form::select('account_id', $chart_of_accounts, null, ['class' => 'form-control', 'id' => 'account_id']) }} -
    -
    -
    -
    - - - This is the account that will be affected by the variances incase it is not the intial stock take of the drug - -
    -
    --}} -
    -
    - -
    -
    - - - - -
    -
    -
    -
    -
    - - -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/drugs_stock_reconciliation_report.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/drugs_stock_reconciliation_report.blade.php deleted file mode 100755 index 0f69232d..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/drugs_stock_reconciliation_report.blade.php +++ /dev/null @@ -1,185 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('pharmacy.drugs_stock_reconciliation_report') }}

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    - - - {{ Form::open(['method'=>'post','route' => 'stores.stock_reconciliation_report']) }} - -
    -

    {{ __('pharmacy.select_a_date_range') }}

    -
    - -
    - -
    - - - - -
    - {{ Form::submit(__('pharmacy.submit'), ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    - - - -
    -
    -
    -
    -
    -
    - - - - - - - - - @php - $counter = 0; - @endphp - - - @if(count($reconciled_stocks) > 0) - @foreach($reconciled_stocks as $record) - - - - - - - - @php - $counter++; - @endphp - @endforeach - @endif - -
    {{ __('pharmacy.date') }}{{ __('pharmacy.staff_in_charge') }}{{ __('pharmacy.reconciliation_id') }}{{ __('pharmacy.action') }}
    {{ streamline_date($record->created_at) }}{{ get_full_name($record->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ sprintf("%04u", $record->stock_count_identifier) }} - {{ Form::open(['method'=>'post','route' => 'pharmacy.drugs_stock_reconciliation_report_details']) }} - {{ Form::hidden('stock_count_identifier', $record->stock_count_identifier) }} - {{ Form::submit('Details', ['class'=>'btn btn-success']) }} - {{ Form::close() }} -
    -
    -
    -
    -
    -
    - -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/drugs_stock_reconciliation_report_details.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/drugs_stock_reconciliation_report_details.blade.php deleted file mode 100755 index 97900730..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/drugs_stock_reconciliation_report_details.blade.php +++ /dev/null @@ -1,130 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.drugs_stock_reconciliation_report_details') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -
    -
    -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - @foreach($drugs_reconciled as $reconciliation_record) - @php - $drug_name = get_name($reconciliation_record->drug_id, "id", "name", "drugs"); - $insurance_coverage = get_name($reconciliation_record->drug_id, "id", "insurance_coverage", "drugs"); - @endphp - - - - - - - - - - @endforeach - -
    {{ __('stores.drug_name') }}{{ __('stores.system_stock') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.reason_for_difference') }}{{ __('pharmacy.reconciled_by') }}{{ __('pharmacy.performed_on') }}
    {{ __('stores.drug_name') }}{{ __('stores.system_stock') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.reason_for_difference') }}{{ __('pharmacy.reconciled_by') }}{{ __('pharmacy.performed_on') }}
    - @if($insurance_coverage == 1) - {{ $drug_name }} - @else - {{ $drug_name }} - @endif - -
    - {{ $reconciliation_record->system_stock }} -
    -
    -
    - {{ $reconciliation_record->physical_stock }} -
    -
    -
    - {{ $reconciliation_record->difference }} -
    -
    -
    - {{ $reconciliation_record->reason_for_difference }} -
    -
    -
    - {{ get_full_name($reconciliation_record->created_by, 'id', 'first_name', 'last_name', 'users') }} -
    -
    -
    - {{ streamline_date($reconciliation_record->created_at) }} -
    -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/edit_dispensing_details.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/edit_dispensing_details.blade.php deleted file mode 100755 index 6bbe6efd..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/edit_dispensing_details.blade.php +++ /dev/null @@ -1,447 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.edit_dispensing_details') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    -
    - -
    -
    -
    -

    {{ __('pharmacy.prescription_details_for') }} {{ date_format($treatment->created_at, 'l \, jS F Y') }}

    -
    -
    -
    - {{ csrf_field() }} -
    - - - - - - - - - - - - - - - @if(!is_null($treatment)) - @php - $i=1; $total_drugs_price = 0; - $drug_explode = explode(",", $treatment->drugs); - $dose_explode = explode(",", $treatment->doses); - $dose2_explode = explode(",", $treatment->dose2); - $drug_frequency_explode = explode(",", $treatment->frequencies); - $instruction_explode = explode(",", $treatment->instruction); - $duration_explode = explode(",", $treatment->durations); - $dispense_explode = explode(",", $treatment->dispensed); - $quantity_to_dispense = explode(",", $treatment->quantities_dispensed); - @endphp - - - - - @for ($x = 0; $x < count($drug_explode); $x++) - @if(in_array($drug_explode[$x], $dispensed_drugs_array)) - - - - - - - - - - - @else - @if(get_name($drug_explode[$x], 'id', 'name', 'drugs') != "N/A") - - - - - - - - - - - @endif - @endif - @endfor - - @php $x++; @endphp - @else - - @endif - - - - - -
    #{{ __('pharmacy.drug_name') }}{{ __('pharmacy.dose') }}{{ __('pharmacy.frequency') }}{{ __('pharmacy.duration') }}{{ __('pharmacy.quantity') }}{{ __('pharmacy.price') }}{{ __('pharmacy.instructions') }}
    - - - @if(get_name($drug_explode[$x], 'id', 'insurance_coverage', 'drugs') == 1) - {!! ''.get_name($drug_explode[$x], 'id', 'name', 'drugs').'' !!} - @else - {!! ''.get_name($drug_explode[$x], 'id', 'name', 'drugs').'' !!} - @endif - {{ __('pharmacy.already_dispensed') }} - - @php - $form_id = get_name($drug_explode[$x], 'id', 'form_id', 'drugs'); - $form_name = get_name($form_id, 'id', 'name', 'drug_units'); - $drug_form = get_name($drug_explode[$x], "id", "name", "unit_of_measure"); - @endphp -
    -
    - {{ $dose_explode[$x] }} - {{ $form_name }} - -
    -
    - @if (!empty($dose2_explode[$x])) - @php - $form_id2 = get_name($dose2_explode[$x], 'id', 'form_id', 'drugs'); - $form_name2 = get_name($form_id2, 'id', 'name', 'drug_units'); - @endphp - {{ $form_name2 }} - - @else - - @endif -
    -
    -
    - {{ $dosage_frequencies[$drug_frequency_explode[$x]] }} - - @php - $duration_array = explode(' ',$duration_explode[$x]); - $duration = $duration_array[0]; //e.g $duration_array=['2','days']; - @endphp - {{ $duration }} {{ __('pharmacy.days') }} - - {{ $quantity_to_dispense[$x] }} - - @php - $selling_price = get_name($drug_explode[$x], 'id', 'non_insured_price', 'drugs'); - $price = $quantity_to_dispense[$x] * $selling_price; - $total_drugs_price = $total_drugs_price + $price; - echo ugandan_shillings($price); - @endphp - - {{ $instruction_explode[$x] }} -
    - X - - - @if(get_name($drug_explode[$x], 'id', 'insurance_coverage', 'drugs') == 1) - - @else - - @endif - - @php - $form_id = get_name($drug_explode[$x], 'id', 'form_id', 'drugs'); - $form_name = get_name($form_id, 'id', 'name', 'drug_units'); - $drug_form = get_name($drug_explode[$x], "id", "name", "unit_of_measure") - @endphp -
    -
    - - {{ $form_name }} - -
    -
    - @if (!empty($dose2_explode[$x])) - @php - $form_id2 = get_name($dose2_explode[$x], 'id', 'form_id', 'drugs'); - $form_name2 = get_name($form_id2, 'id', 'name', 'drug_units'); - @endphp - - {{ $form_name2 }} - - @else - {{ __('pharmacy.add_dose') }} - - @endif -
    -
    -
    - {{ Form::select('frequency[]',$dosage_frequencies,$drug_frequency_explode[$x],['class' => 'form-control compulsory','id' => 'frequency'.$drug_explode[$x],'required']) }} - - @php - $duration_array = explode(' ',$duration_explode[$x]); - $duration = $duration_array[0]; //e.g $duration_array=['2','days']; - @endphp - - {{ __('pharmacy.duration_in_days') }} - - - - - - - - - @php - $selling_price = get_name($drug_explode[$x], 'id', 'non_insured_price', 'drugs'); - $price = $quantity_to_dispense[$x] * $selling_price; - $total_drugs_price = $total_drugs_price + $price; - echo ugandan_shillings($price); - @endphp - - -
    {{ __('pharmacy.total') }}: {{ ugandan_shillings($total_drugs_price) }}
    {{ __('pharmacy.no_records') }}
    - {{ __('pharmacy.add_more_drugs') }} -
    -
    -
    - -
    - {{ __('pharmacy.type_of_error') }} - - - - - - - - - - - - - - - - - - -
    {{ __('pharmacy.wrong_dosage') }}
    - -
    -
    {{ __('pharmacy.wrong_frequency') }}
    -
    -
    {{ __('pharmacy.inadequate_funds') }}
    -
    -
    {{ __('pharmacy.other') }}
    -
    -
    - -
    - {{ __('pharmacy.severity_of_error') }} - - - - - - - - - - - - - - - -
    {{ __('pharmacy.mild') }}
    - -
    -
    {{ __('pharmacy.moderate') }}
    -
    -
    {{ __('pharmacy.severe') }}
    -
    -
    - -
    -
    -
    {{ __('pharmacy.comments') }}
    -
    - -
    -
    -
    - -
    - @if($treatment->dispensed == 0) -
    - {{ __('pharmacy.prescribed_by') }} : {{ get_name($treatment->created_by, 'id', 'first_name', 'users') }} {{ get_name($treatment->created_by, 'id', 'last_name', 'users') }} ({{ get_name($treatment->created_by, 'id', 'phone', 'users') }}) - -
    - -
    -   -
    - @else -
    - {{ __('pharmacy.prescription_dispensed_warning') }}! -
    - @endif - -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - -@endpush diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/edit_previous_requisition.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/edit_previous_requisition.blade.php deleted file mode 100755 index a80948e8..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/edit_previous_requisition.blade.php +++ /dev/null @@ -1,379 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.edit_requisition') }} #{{ sprintf('%04u', $requisition_id) }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -

    {{ __('pharmacy.previous_requisition_from') }} {{ get_requisition_origin($results[0]->requisition_origin) }} - {{ get_full_name($results[0]->created_by, "id", "first_name", "last_name", "users") }} {{ streamline_date($results[0]->created_at) }}

    -
    -
    -
    - {{ csrf_field() }} - - -
    - - - - {{-- --}} - - - - - @if($item_type !=2 && $item_type !=4) @endif - - - - @php $i=1; @endphp - @if(!is_null($results)) - @foreach($results as $result) - - @php - $items_array = explode(",", $result->drug_id); - $quantity_array = explode(",", $result->quantity_requested); - @endphp - @if($result->quotation_type_id == 1) - @for($i=0; $i < count($items_array) ; $i++) - - - {{-- --}} - - - - - - - @endfor - @elseif($result->quotation_type_id == 2) - @for($i=0; $i < count($items_array) ; $i++) - - - {{-- --}} - - - - - - - {{-- --}} - - @endfor - @elseif($result->quotation_type_id == 3) - @for($i=0; $i < count($items_array) ; $i++) - - - {{-- --}} - - - - - @endfor - @elseif($result->quotation_type_id == 4) - @for($i=0; $i < count($items_array) ; $i++) - - - {{-- --}} - - - - - - - {{-- --}} - - @endfor - @elseif($result->quotation_type_id == 5) - @for($i=0; $i < count($items_array) ; $i++) - - - {{-- --}} - - - - - - - - @endfor - @endif - @endforeach - @else - - @endif - -
    {{ __('pharmacy.date') }}{{ get_name($item_type, 'id', 'name', 'quotation_types') }}{{ __('pharmacy.store_stock') }}{{ get_requisition_origin($results[0]->requisition_origin) }} {{ __('stores.stock') }}{{ __('pharmacy.quantity') }}{{ __('pharmacy.units') }}
    - {{ streamline_date($result->created_at) }} - - {{ get_name($items_array[$i], 'id', 'name', 'drugs') }} - - @forelse($result->batches[$i]->store_batches as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->store_stock }}
    - - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - @empty - @endforelse - Total Stock: {{ $result->batches[$i]->total_store_stock }} -
    - @forelse($result->batches[$i]->lab_batches as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->lab_stock }}
    - - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - @empty - @endforelse - Total : {{ $result->batches[$i]->total_lab_stock }} -
    - - - - - {{ $form_name }} -
    - {{ streamline_date($result->created_at) }} - - {{ get_name($items_array[$i], 'id', 'name', 'sundries') }} - - @forelse($result->batches[$i]->store_batches as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->store_stock }}
    - - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - @empty - @endforelse - Total Stock: {{ $result->batches[$i]->total_store_stock }} -
    - @if ($result->requisition_origin == 2) - @forelse($result->batches[$i]->lab_batches as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->lab_stock }}
    - - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - @empty - @endforelse - Total : {{ $result->batches[$i]->total_lab_stock }} - @elseif ($result->requisition_origin == 3) - @forelse($result->batches[$i]->imaging_batches as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->radiology_stock }}
    - - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - @empty - @endforelse - Total : {{ $result->batches[$i]->total_imaging_stock }} - @else - @forelse($result->batches[$i]->pharmacy_batches as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->pharmacy_stock }}
    - - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - @empty - @endforelse - Total : {{ $result->batches[$i]->total_pharmacy_stock }} - @endif - -
    - - - {{ $form_name }} -
    - {{ streamline_date($result->created_at) }} - - {{ get_name($items_array[$i], 'id', 'name', 'dentals') }} - - - - - - {{ $form_name }} - -
    - {{ streamline_date($result->created_at) }} - - {{ get_name($items_array[$i], 'id', 'name', 'radiologies') }} - - @forelse($result->batches[$i]->store_batches as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->store_stock }}
    - - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - @empty - @endforelse - Total Stock: {{ $result->batches[$i]->total_store_stock }} -
    - @forelse($result->batches[$i]->lab_batches as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->lab_stock }}
    - - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - @empty - @endforelse - Total : {{ $result->batches[$i]->total_lab_stock }} -
    - - - {{ $form_name }} - -
    - {{ streamline_date($result->created_at) }} - - {{ get_name($items_array[$i], 'id', 'name', 'labs') }} - - @forelse($result->batches[$i]->store_batches as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->store_stock }}
    - - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - @empty - @endforelse - Total Stock: {{ $result->batches[$i]->total_store_stock }} -
    - @forelse($result->batches[$i]->lab_batches as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->lab_stock }}
    - - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - @empty - @endforelse - Total : {{ $result->batches[$i]->total_lab_stock }} -
    - - - - - {{ $form_name }} -
    {{ __('pharmacy.no_records') }}
    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/edit_temporary_requisition.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/edit_temporary_requisition.blade.php deleted file mode 100755 index e53570df..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/edit_temporary_requisition.blade.php +++ /dev/null @@ -1,227 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.edit_requisition') }} # {{ sprintf('%04u', $requisition_id) }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    -
    - - {{ csrf_field() }} -
    - - - - - - - - - - - - - - - - - - - @if(!is_null($requisition_results)) - @foreach($requisition_results as $result) - @php - $drug_id_explode = explode(",", $result->drug_id); - $quantity_explode = explode(",", $result->quantity_requested); - $supplier_id = $result->supplier_id; - $expected_date = $result->expected_date; - @endphp - - @for ($x = 0; $x < count($drug_id_explode); $x++) - @php - $drug_form_id = 0; - if($result->quotation_type_id == 1){ - $drug_form_id = get_name($drug_id_explode[$x], "id", "form_id", "drugs"); - } else if($result->quotation_type_id == 2){ - $drug_form_id = 0;//get_name($drug_id_explode[$x], "id", "form_id", "sundries"); - } else if($result->quotation_type_id == 5){ - $drug_form_id = get_name($drug_id_explode[$x], "id", "form_id", "labs"); - } - - $drug_form_name = get_name($drug_form_id, "id", "name", "unit_of_measure"); - @endphp - - - @if($result->quotation_type_id == 1) - - @elseif($result->quotation_type_id == 2) - - @elseif($result->quotation_type_id == 5) - - @endif - - - - @endfor - @endforeach - - @else - - @endif - -
    {{ __('pharmacy.date') }}{{ __('pharmacy.name') }}{{ __('pharmacy.quantity') }}
    {{ __('pharmacy.date') }}{{ __('pharmacy.name') }}{{ __('pharmacy.quantity') }}
    {{ streamline_date($result->created_at) }}{{ get_name($drug_id_explode[$x], "id", "name", "drugs") }}{{ get_name($drug_id_explode[$x], "id", "name", "sundries") }}{{ get_name($drug_id_explode[$x], "id", "name", "labs") }} - - - {{ $drug_form_name }}
    {{ __('pharmacy.no_records') }}
    -
    -
    - -
    - - - - {{ Form::button(__('pharmacy.update_requisition'),['type'=>'submit','form'=>'quotation_form','id'=>'save_temporary_request','name'=>'update_temporary_requisition','value'=>'1','formaction'=>'store_pharmacy_requisition','class'=>'btn btn-default waves-effect waves-light m-r-10']) }} - -
    - - {{ Form::button(__('pharmacy.complete_request'),['type'=>'submit','form'=>'quotation_form','id'=>'submit_quotation_for_drugs','name'=>'complete_previously_temporary_requisition','value'=>'1','formaction'=>'store_pharmacy_requisition','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    - - - - - - - - - - - - - - -@endpush - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/edit_ward_chart.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/edit_ward_chart.blade.php deleted file mode 100755 index 8c2931f0..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/edit_ward_chart.blade.php +++ /dev/null @@ -1,404 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.edit_ward_dispensing_chart') }} ({{ get_name($incoming_chart->chart_ward_id, "id", "name", "wards")}})

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') - @foreach ($errors->all() as $error) -
    {{ $error }}
    - @endforeach -
    -
    - - @include('pharmacy::pharmacy.ward_dispensing_menu') - -
    -
    -
    -
    -
    - {{ Form::open(['route' => 'pharmacy.update_ward_dispensing_per_chart', 'class' => 'typeahead', 'method' => 'ANY']) }} - - -
    -
    -
    - @php - $count = 1; - @endphp -
    - - - - - - - - - - - - - - - @if(count($patient_ass_array) > 0) - @foreach($patient_ass_array as $patient_id => $drug_id_qty_arr) - @php - $inpatient_info_id = $patient_inpatient_info_array[$patient_id]; - $in_patient = \Streamline\Models\InpatientInfo::find($inpatient_info_id); - - if (!$in_patient) {continue;} - @endphp - - - - - - - - - - - @php $count++; @endphp - @endforeach - @endif - -
    #{{ __('pharmacy.patient_number') }}{{ __('pharmacy.patient_name') }}{{ __('pharmacy.ward') }}{{ __('pharmacy.date_of_admission') }}{{ __('pharmacy.drugs_given_so_far') }}{{ __('pharmacy.drug_and_qty_given') }}{{ __('pharmacy.action') }}
    - {{ $count }} - - {{ get_name($patient_id, "id", "number", "patients") }} - - {{ get_full_name($patient_id, "id", "first_name", "last_name", "patients") }} - - {{ get_name($in_patient->ward_id, "id", "name", "wards") }} - - {{ streamline_date($in_patient->created_at) }} - - $in_patient->patient_id, 'episode_id' => $in_patient->episode_id])->get(); - - $drug_quantity_dispensed_so_far = 0; - - if(count($ward_quantities_given_option1) > 0){ - foreach($ward_quantities_given_option1 as $ward_quantity_given){ - $drug_quantity_dispensed_so_far += $ward_quantity_given->quantity_given; - } - } - - $ward_quantities_given_option2 = DB::table('ward_treatment_dispensations')->where(['patient_id' => $in_patient->patient_id, 'episode_id' => $in_patient->episode_id])->groupBy('drug_id')->selectRaw('*, sum(quantity_given) as quantity_given')->get(); - ?> - - @foreach($ward_quantities_given_option2 as $record) -
    -
    - {{ get_name($record->drug_id, "id", "name", "drugs") }} -
    -
    - {{ __('pharmacy.quantity_given') }} -
    - - $in_patient->patient_id, 'episode_id' => $in_patient->episode_id, 'drug_id' => $record->drug_id])->get(); - ?> - - @foreach($dispensation_details as $dispensation) -
    - {{ __('pharmacy.date') }}: {{ streamline_date($dispensation->created_at)}} - - {{ __('pharmacy.by') }}: {{ get_full_name($dispensation->created_by, "id", "first_name", "last_name", "users")}} -
    -
    - Qty: - {{ $dispensation->quantity_given }} -
    - @endforeach - -
    {{ __('pharmacy.total') }}
    -
    {{ $record->quantity_given }}
    -
    - @endforeach -
    -
    -
    - @foreach($drug_id_qty_arr as $drug_id => $qty) -
    - {{ Form::select('dispensed_drugs[]', $drugs, $drug_id, ['class' => 'form-control prescription-drugs']) }} -
    -
    - {{ Form::number('quantity_dispensed[]', $qty, ['class' => 'form-control', 'placeholder' => 'Quantity Given','style'=> 'padding-left: 5px;padding-right:5px;']) }} -
    - - @endforeach -
    - -
    -
    - {{ __('investigations.select_patient') }} -
    - {{ __('pharmacy.go_to_inpatient_sheet') }} - -
    -
    - -
    -
    -
    - {{ Form::close() }} -
    -
    -
    -
    -
    - - - - -@endsection -@push('scripts') - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/incoming_unconfirmed_prescriptions.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/incoming_unconfirmed_prescriptions.blade.php deleted file mode 100755 index 9a9fbf27..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/incoming_unconfirmed_prescriptions.blade.php +++ /dev/null @@ -1,276 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.unconfirmed_prescriptions') }}

    -
    -
    - -
    -
    - -
    - -
    - {{ Form::open(['route' => 'pharmacy.confirm_prescriptions', 'class' => 'typeahead', 'method' => 'ANY', 'role' => 'search']) }} - - {{ Form::hidden('patient_id', 0, ['id' => 'patient_id']) }} - -
    -
    -
    - {{ Form::label('search_by', __('pharmacy.prescription_date')) }} - {{ Form::select('search_by', ['3'=>__('pharmacy.all_records'),'0'=>__('pharmacy.last_24_hours'),'1'=>__('pharmacy.custom_date'),'2'=>__('pharmacy.date_range')], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - - -
    - {{ Form::label('search_patient', __('pharmacy.search_by_patient')) }} -
    - -
    -
    - -
    -

    - {{ Form::button(__('pharmacy.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    -
    - {{ Form::close() }} -
    -
    - -
    -
    -
    - - @include('flash::message') - -
    -
    -
    - -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - @if(count($unconfirmed_prescriptions) > 0) - @foreach($unconfirmed_prescriptions as $prescription) - - - - - - - - - - - @endforeach - @else - - - - @endif - -
    {{ __('pharmacy.date') }}{{ __('pharmacy.patient_number') }}{{ __('pharmacy.patient_name') }}{{ __('pharmacy.category') }}{{ __('pharmacy.payment') }}{{ __('pharmacy.ward') }}{{ __('pharmacy.prescribed_by') }}{{ __('pharmacy.actions') }}
    {{ streamline_date_time_short($prescription->created_at) }}{{ get_name($prescription->patient_id, 'id', 'number', 'patients') }}{!! insurance_flag($prescription->patient_id) !!}{{ isset($categories[get_name($prescription->patient_id, 'id', 'category_id', 'patients')]) ? $categories[get_name($prescription->patient_id, 'id', 'category_id', 'patients')] : "" }}{!! $prescription->payment_status == 1 ? "" : "" !!} - @if($prescription->tta == 1) - {{ get_ward_name($prescription->patient_id, $prescription->episode_id) }} - @else - - @endif - {{ get_full_name($prescription->created_by, 'id', 'first_name', 'last_name', 'users') }} - - {{ csrf_field() }} - - - - - -
    {{ __('pharmacy.no_records') }}
    -
    -
    -
    -
    -
    -
    - - - - - - - - - - - - - - @if(count($confirmed_prescriptions) > 0) - @foreach($confirmed_prescriptions as $prescription) - - - - - - - - - - @endforeach - @else - - - - @endif - -
    {{ __('pharmacy.date') }}{{ __('pharmacy.patient_number') }}{{ __('pharmacy.patient_name') }}{{ __('pharmacy.category') }}{{ __('pharmacy.payment') }}{{ __('pharmacy.ward') }}{{ __('pharmacy.actions') }}
    {{ streamline_date_time_short($prescription->created_at) }}{{ get_name($prescription->patient_id, 'id', 'number', 'patients') }}{!! insurance_flag($prescription->patient_id) !!}{{ isset($categories[get_name($prescription->patient_id, 'id', 'category_id', 'patients')]) ? $categories[get_name($prescription->patient_id, 'id', 'category_id', 'patients')] : "" }}{!! $prescription->payment_status == 1 ? "" : "" !!} - @if($prescription->tta == 1) - {{ get_ward_name($prescription->patient_id, $prescription->episode_id) }} - @else - - @endif - - Alter -
    {{ __('pharmacy.no_records') }}
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/incoming_ward_chart.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/incoming_ward_chart.blade.php deleted file mode 100755 index bf5cbf25..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/incoming_ward_chart.blade.php +++ /dev/null @@ -1,299 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.incoming_ward_chart') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') - @foreach ($errors->all() as $error) -
    {{ $error }}
    - @endforeach -
    -
    - - @include('pharmacy::pharmacy.ward_dispensing_menu') - -
    -
    -
    -
    -
    - -
    - {{ Form::open(['route' => 'pharmacy.incoming_ward_charts', 'class' => 'typeahead', 'method' => 'ANY', 'role' => 'search']) }} - -
    -
    -
    - {{ Form::label('ward_id', __('pharmacy.wards')) }} - {{ Form::select('ward_id', $wards, '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    - {{ Form::label('search_by', __('pharmacy.admission_date')) }} - {{ Form::select('search_by', ['3'=>__('pharmacy.all_records'),'0'=>__('pharmacy.last_24_hours'),'1'=>__('pharmacy.custom_date'),'2'=>__('pharmacy.date_range')], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - - -
    -

    - {{ Form::button(__('pharmacy.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    -
    -
    -
    -
    - {{ __('pharmacy.showing_results_from') }} : -

    {{ is_null($ward_id) ? __('pharmacy.show_patients_all_wards') : ($ward_id == 0 ? 'All wards' : get_name($ward_id, 'id', 'name', 'wards')) }} {!! is_null($search_by) ? 'in the last 24 hours' : '' !!}

    -
    -
    - {{ Form::close() }} -
    -
    - -
    -
    -
    -
    - @php - $count = 1; - @endphp -
    - - - - - - - - - - - - - - @if(count($incoming_charts) > 0) - @foreach($incoming_charts as $ward_chart) - - - - - - - - - - @php $count++; @endphp - @endforeach - @endif - -
    #{{ __('pharmacy.time_of_chart_submission') }}{{ __('pharmacy.staff_in_charge') }}{{ __('pharmacy.source_ward') }}{{ __('pharmacy.status') }}
    - {{ $count }} - - {{ streamline_date_time($ward_chart->created_at) }} - - {{ get_full_name($ward_chart->created_by, "id", "first_name", "last_name", "users") }} - - {{ get_name($ward_chart->chart_ward_id, "id", "name", "wards") == "N/A" ? "All wards" : get_name($ward_chart->chart_ward_id, "id", "name", "wards") }} - - {!! $ward_chart->completion_status == 1 ? "Approved" : "Pending" !!} - - @if(Auth::user()->can('approve-ward-dispensings-per-chart')) - - {{ __('pharmacy.approve') }} - - @endif - - @if(Auth::user()->can('cancel-ward-chart-dispensing')) - - {{ __('pharmacy.cancel') }} - - @endif -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -@endsection -@push('scripts') - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/index.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/index.blade.php deleted file mode 100755 index 254cf355..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/index.blade.php +++ /dev/null @@ -1,696 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.incoming_prescriptions') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    - {{ Form::open(['method'=>'post','route' => 'pharmacy.search', 'class' => 'typeahead']) }} - - {{ Form::hidden('patient_id', 0, ['id' => 'patient_id']) }} - -
    -
    -
    - - -
    -
    - - - -
    - {{ Form::label('search_patient', __('pharmacy.search_by_patient')) }} -
    - -
    -
    - -
    -
    - {{ Form::submit(__('pharmacy.submit'), ['class'=>'btn btn-success pull-right']) }} -
    -
    -
    - {{ Form::close() }} -
    -
    -
    -
    - -
    -
    - @include('flash::message') - @if(isset($display)) -
    -
    -
    -
    -

    {!! isset($display) ? $display : '' !!}

    -
    -
    -
    -
    - @endif -
    -
    -
    - -
    -
    -
    -
    - - - - - - - - - - - - - - - - @if(count($pending_paid_prescriptions) > 0) - @foreach($pending_paid_prescriptions as $prescription) - @php - $treatment_amount = 0; - $treatment_amount_total = 0; - $insurance_amount = 0; - $insurance_amount_total = 0; - $grand_total_for_treatment = 0; - - // ids of the ordered drugs - $drug_ids = explode(",", $prescription->drugs); - - // quantities of the ordered drugs - $drug_quantities = explode(",", $prescription->quantities_dispensed); - - - for ($i = 0; $i < count($drug_ids); $i++){ - if(get_name($drug_ids[$i], "id", "name", "drugs") != "N/A"){ - // get insurance status for drug - $drug_insurance_status = get_name($drug_ids[$i], "id", "insurance_coverage", "drugs"); - - // insurance flag - $is_insured = 0; - $insurance_amount = 0; - - // get insurance status for drug - $drug_insurance_status = get_name($drug_ids[$i], "id", "insurance_coverage", "drugs"); - - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($prescription->patient_id); - if ($price_list_id) { - $treatment_amount = get_price_list_category_price($price_list_id, 3, $drug_ids[$i]); - } else { - // check if drug and patient is eligible for insurance - if($drug_insurance_status == 1 && patient_insurance_status($prescription->patient_id) == 1){ - $treatment_amount = get_name($drug_ids[$i], "id", "insured_price", "drugs"); - $insurance_amount = get_name($drug_ids[$i], "id", "non_insured_price", "drugs") - $treatment_amount; - $is_insured = 1; - } else { - $treatment_amount = get_name($drug_ids[$i], "id", "non_insured_price", "drugs"); - } - } - - if(isset($drug_quantities[$i]) && $drug_quantities[$i] != ""){ - $treatment_subtotal = $drug_quantities[$i] * $treatment_amount; - $insurance_amount *= $drug_quantities[$i]; - } else { - $treatment_subtotal = 0; - } - - // add amounts to totals - $treatment_amount_total += $treatment_amount; - $insurance_amount_total += $insurance_amount; - $grand_total_for_treatment += $treatment_subtotal; - } - } - @endphp - - - - - - - - - - @php - $episode = \Streamline\Models\PatientEpisode::where('id', $prescription->episode_id)->pluck('paid_over')->first(); - @endphp - - - @endforeach - @else - - - - @endif - -
    {{ __('pharmacy.date') }}{{ __('pharmacy.patient_number') }}{{ __('pharmacy.patient_name') }}{{ __('pharmacy.patient_category') }}{{ __('pharmacy.payment') }}{{ __('pharmacy.amount') }}{{ __('pharmacy.ward') }}{{ __('pharmacy.prescribed_by') }}{{ __('pharmacy.actions') }}
    {{ streamline_date_time_short($prescription->created_at) }}{{ get_name($prescription->patient_id, 'id', 'number', 'patients') }}{!! insurance_flag($prescription->patient_id) !!}{{ isset($categories[get_name($prescription->patient_id, 'id', 'category_id', 'patients')]) ? $categories[get_name($prescription->patient_id, 'id', 'category_id', 'patients')] : "" }}{!! $prescription->payment_status == 1 ? "" : "" !!} - {{ ugandan_shillings($grand_total_for_treatment) }} - - @if($prescription->tta == 1) - {{ get_ward_name($prescription->patient_id, $prescription->episode_id) }} - @else - - @endif - {{ get_full_name($prescription->created_by, 'id', 'first_name', 'last_name', 'users') }} - @if($prescription->payment_status == 1) -
    -
    -
    - {{ csrf_field() }} - - - - -
    -
    -
    -
    - @else - - @endif -
    {{ __('pharmacy.no_incoming_prescriptions') }}
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - @if(count($pending_unpaid_prescriptions) > 0) - @foreach($pending_unpaid_prescriptions as $prescription) - @php - $treatment_amount = 0; - $treatment_amount_total = 0; - $insurance_amount = 0; - $insurance_amount_total = 0; - $grand_total_for_treatment = 0; - - // ids of the ordered drugs - $drug_ids = explode(",", $prescription->drugs); - - // quantities of the ordered drugs - $drug_quantities = explode(",", $prescription->quantities_dispensed); - - - for ($i = 0; $i < count($drug_ids); $i++){ - if(get_name($drug_ids[$i], "id", "name", "drugs") != "N/A"){ - // get insurance status for drug - $drug_insurance_status = get_name($drug_ids[$i], "id", "insurance_coverage", "drugs"); - - // insurance flag - $is_insured = 0; - $insurance_amount = 0; - - // get insurance status for drug - $drug_insurance_status = get_name($drug_ids[$i], "id", "insurance_coverage", "drugs"); - - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($prescription->patient_id); - if ($price_list_id) { - $treatment_amount = get_price_list_category_price($price_list_id, 3, $drug_ids[$i]); - } else { - // check if drug and patient is eligible for insurance - if($drug_insurance_status == 1 && patient_insurance_status($prescription->patient_id) == 1){ - $treatment_amount = get_name($drug_ids[$i], "id", "insured_price", "drugs"); - $insurance_amount = get_name($drug_ids[$i], "id", "non_insured_price", "drugs") - $treatment_amount; - $is_insured = 1; - } else { - $treatment_amount = get_name($drug_ids[$i], "id", "non_insured_price", "drugs"); - } - } - - if(isset($drug_quantities[$i]) && $drug_quantities[$i] != ""){ - $treatment_subtotal = $drug_quantities[$i] * $treatment_amount; - $insurance_amount *= $drug_quantities[$i]; - } else { - $treatment_subtotal = 0; - } - - // add amounts to totals - $treatment_amount_total += $treatment_amount; - $insurance_amount_total += $insurance_amount; - $grand_total_for_treatment += $treatment_subtotal; - } - } - @endphp - - - - - - - - - - - - @endforeach - @else - - - - @endif - -
    {{ __('pharmacy.date') }}{{ __('pharmacy.patient_number') }}{{ __('pharmacy.patient_name') }}{{ __('pharmacy.patient_category') }}{{ __('pharmacy.payment') }}{{ __('pharmacy.amount') }}{{ __('pharmacy.ward') }}{{ __('pharmacy.prescribed_by') }}{{ __('pharmacy.actions') }}
    {{ streamline_date_time_short($prescription->created_at) }}{{ get_name($prescription->patient_id, 'id', 'number', 'patients') }}{!! insurance_flag($prescription->patient_id) !!}{{ isset($categories[get_name($prescription->patient_id, 'id', 'category_id', 'patients')]) ? $categories[get_name($prescription->patient_id, 'id', 'category_id', 'patients')] : "" }}{!! ($prescription->inpatient_bill_generated == 1) ? "" : "" !!} - {{ ugandan_shillings($grand_total_for_treatment) }} - - @if($prescription->tta == 1) - {{ get_ward_name($prescription->patient_id, $prescription->episode_id) }} - @else - - @endif - {{ get_full_name($prescription->created_by, 'id', 'first_name', 'last_name', 'users') }} - @if(is_dispense_unpaid_prescription_enabled($prescription->patient_id)) -
    - {{ csrf_field() }} - - - - -
    - @else - @if($prescription->payment_status == 1 || $prescription->inpatient_bill_generated == 1) -
    - {{ csrf_field() }} - - - - -
    - @else - - @endif - @endif -
    {{ __('pharmacy.no_incoming_prescriptions') }}
    -
    -
    - -
    -
    - - - - - - - - - - - - - - - - @if(count($confirmed_unpaid_prescriptions) > 0) - @foreach($confirmed_unpaid_prescriptions as $prescription) - @php - $treatment_amount = 0; - $treatment_amount_total = 0; - $insurance_amount = 0; - $insurance_amount_total = 0; - $grand_total_for_treatment = 0; - - // ids of the ordered drugs - $drug_ids = explode(",", $prescription->drugs); - - // quantities of the ordered drugs - $drug_quantities = explode(",", $prescription->quantities_dispensed); - - - for ($i = 0; $i < count($drug_ids); $i++){ - if(get_name($drug_ids[$i], "id", "name", "drugs") != "N/A"){ - // get insurance status for drug - $drug_insurance_status = get_name($drug_ids[$i], "id", "insurance_coverage", "drugs"); - - // insurance flag - $is_insured = 0; - $insurance_amount = 0; - - // get insurance status for drug - $drug_insurance_status = get_name($drug_ids[$i], "id", "insurance_coverage", "drugs"); - - // check if the patient category is attached to a price list - $price_list_id = is_patient_category_attached_to_price_list($prescription->patient_id); - if ($price_list_id) { - $treatment_amount = get_price_list_category_price($price_list_id, 3, $drug_ids[$i]); - } else { - // check if drug and patient is eligible for insurance - if($drug_insurance_status == 1 && patient_insurance_status($prescription->patient_id) == 1){ - $treatment_amount = get_name($drug_ids[$i], "id", "insured_price", "drugs"); - $insurance_amount = get_name($drug_ids[$i], "id", "non_insured_price", "drugs") - $treatment_amount; - $is_insured = 1; - } else { - $treatment_amount = get_name($drug_ids[$i], "id", "non_insured_price", "drugs"); - } - } - - if(isset($drug_quantities[$i]) && $drug_quantities[$i] != ""){ - $treatment_subtotal = $drug_quantities[$i] * $treatment_amount; - $insurance_amount *= $drug_quantities[$i]; - } else { - $treatment_subtotal = 0; - } - - // add amounts to totals - $treatment_amount_total += $treatment_amount; - $insurance_amount_total += $insurance_amount; - $grand_total_for_treatment += $treatment_subtotal; - } - } - @endphp - - - - - - - - - - - - @endforeach - @else - - - - @endif - -
    {{ __('pharmacy.date') }}{{ __('pharmacy.patient_number') }}{{ __('pharmacy.patient_name') }}{{ __('pharmacy.patient_category') }}{{ __('pharmacy.payment') }}{{ __('pharmacy.amount') }}{{ __('pharmacy.ward') }}{{ __('pharmacy.prescribed_by') }}{{ __('pharmacy.actions') }}
    {{ streamline_date_time_short($prescription->created_at) }}{{ get_name($prescription->patient_id, 'id', 'number', 'patients') }}{!! insurance_flag($prescription->patient_id) !!}{{ isset($categories[get_name($prescription->patient_id, 'id', 'category_id', 'patients')]) ? $categories[get_name($prescription->patient_id, 'id', 'category_id', 'patients')] : "" }}{!! $prescription->payment_status == 1 ? "" : "" !!} - {{ ugandan_shillings($grand_total_for_treatment) }} - - @if($prescription->tta == 1) - {{ get_ward_name($prescription->patient_id, $prescription->episode_id) }} - @else - - @endif - {{ get_full_name($prescription->created_by, 'id', 'first_name', 'last_name', 'users') }} -
    - {{ csrf_field() }} - - - - -
    -
    {{ __('pharmacy.no_incoming_prescriptions') }}
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/item_requisition_print.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/item_requisition_print.blade.php deleted file mode 100755 index 286e0478..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/item_requisition_print.blade.php +++ /dev/null @@ -1,188 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'ITEM REQUISITION PRINTOUT - Stre@mline') }} - - - - - - - -
    - @include('layouts.header_pdf_print') -
    {{get_quotation_type_name($requisition_model->quotation_type_id)}} {{ __('pharmacy.request_from_requisition') }}{{ get_requisition_origin($requisition_model->requisition_origin) }}
    - -
    -
    -
    - -
    -
    -
    -
    -
    - - - - - - - @if($requisition_model->quotation_type_id ==1 || $requisition_model->quotation_type_id ==5) @endif - - - - - @php - $counter = 1; - $grand_total = 0; - $requisition_type_id = $requisition_model->quotation_type_id; - $item_array = explode(",", $requisition_model->drug_id); - $quantity_array = explode(",", $requisition_model->quantity_requested); - @endphp - - @for($i = 0; $i < count($quantity_array) ; $i++) - @if(isset($quantity_array[$i]) && $quantity_array[$i] != "" && isset($item_array[$i])) - - - - @if($requisition_type_id == 1) - - @php - $drug_form = get_name($item_array[$i], 'id', 'form_id', 'drugs'); - $cost_price = get_name($item_array[$i], 'id', 'cost_price', 'drugs'); - $drug_form_name = get_name($drug_form,'id','name','drug_forms'); - if ($drug_form_name == 'N/A') $drug_form_name =null; - @endphp - @elseif($requisition_type_id == 2) - - @php - $drug_form = get_name($item_array[$i], 'id', 'package_unit_id', 'sundries'); - $cost_price = get_name($item_array[$i], 'id', 'cost_price', 'sundries'); - @endphp - @elseif($requisition_type_id == 3) - - @php - $cost_price = get_name($item_array[$i], 'id', 'cost_price', 'dentals'); - $drug_form = null; - @endphp - @elseif($requisition_type_id == 4) - - @php - $cost_price = get_name($item_array[$i], 'id', 'cost_price', 'radiologies'); - $drug_form = get_name($item_array[$i], 'id', 'unit_id', 'radiologies'); - @endphp - @elseif($requisition_type_id == 5) - - @php - $cost_price = get_name($item_array[$i], 'id', 'cost_price', 'labs'); - $drug_form = get_name($item_array[$i], 'id', 'form_id', 'labs'); - $drug_form_name=get_name($drug_form, 'id','name','lab_forms'); - if ($drug_form_name == 'N/A') $drug_form_name =null; - @endphp - @elseif($requisition_type_id == 6) - - @php - $cost_price = get_name($item_array[$i], 'id', 'cost_price', 'general_items'); - $drug_form = null; - @endphp - @elseif($requisition_type_id == 7) - - @php - $cost_price = get_name($item_array[$i], 'id', 'cost_price', 'eye_glasses'); - $drug_form = null; - @endphp - @endif - - - @if($requisition_type_id ==1 || $requisition_type_id ==5 ) - - @endif - - - @php $counter++; @endphp - @endif - @endfor - - - - - @if($requisition_type_id ==1 || $requisition_model->quotation_type_id ==5) @endif - - - - -
    {{ __('pharmacy.number') }}{{ __('pharmacy.item_name') }}{{ __('pharmacy.quantity') }}{{ __('pharmacy.units') }}{{ __('pharmacy.cost_value') }}
    {{ $counter }}. {{ get_name($item_array[$i], 'id', 'name', 'drugs') }}{{ get_name($item_array[$i], 'id', 'name','sundries') }}{{ get_name($item_array[$i], 'id', 'name','dentals') }}{{ get_name($item_array[$i], 'id', 'name','radiologies') }}{{ get_name($item_array[$i], 'id', 'name','labs') }}{{ get_name($item_array[$i], 'id', 'name','general_items') }}{{ get_name($item_array[$i], 'id', 'name','eye_glasses') }}{{ $quantity_array[$i] }}{{ $drug_form_name }} - @php - if (track_items_using_batches()){ - $item_sub_total =get_unit_cost_from_store_batch($item_array[$i],$requisition_type_id,$quantity_array[$i],'store_stock'); - }else{ - $quantity = (isset($quantity_array[$i]) && is_numeric($quantity_array[$i])) ? $quantity_array[$i] : 0; - $item_cost = is_numeric($cost_price) ? $cost_price : 0; - $item_sub_total = $quantity * $item_cost; - } - $grand_total += $item_sub_total; - @endphp - {{ ugandan_shillings($item_sub_total) }} -
    Total{{ ugandan_shillings($grand_total) }}
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    - {{ __('pharmacy.requisitioned_by') }}:

    - {{ get_full_name($requisition_model->created_by, "id", "first_name", "last_name", "users") }}

    - {{ streamline_date_time_short($requisition_model->created_at) }}

    - ....................................... -
    -
    -
    -
    -
    -
    - {{ __('pharmacy.received_by') }}:

    - ....................................... -
    -
    -
    -
    -
    -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/optical_stock_reconciliation.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/optical_stock_reconciliation.blade.php deleted file mode 100644 index f4831548..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/optical_stock_reconciliation.blade.php +++ /dev/null @@ -1,740 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.pharmacy_optical_stock_reconciliation') }}

    -
    -
    - -
    -
    - - -@include('flash::message') - -
    - {{ Form::open(['route' => 'pharmacy.optical_stock_reconciliation', 'method' => 'ANY', 'role' => 'search']) }} -
    -
    -
    - {{ Form::select('search_items_ids[]',$optic_dropdown,'',['id'=>'drug_ids', 'multiple'=>true, 'class' => 'form-control col-sm-8 drug_ids']) }} -
    -
    - -
    - -
    -
    - {{ Form::close() }} -
    - -
    -
    - {{ csrf_field() }} -
    -
    - - -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - - @if(track_items_using_batches()) - - @endif - - - - {{-- --}} - - - - - - - - - @if(track_items_using_batches()) - - @endif - - - - {{-- --}} - - - - - - - - - @if(track_items_using_batches()) - - @endif - - - - {{-- --}} - - - - @foreach($optics as $drug) - @php - $drug_pharmacy_stock = 0; - $batch_records = \Streamline\Models\ItemBatchWatcher::where(['item_type' => 7, 'item_id' => $drug->id])->where('pharmacy_stock', '>', 0)->get(); - - if (count($batch_records) > 0) { - foreach ($batch_records as $batch_record) { - $drug_pharmacy_stock += $batch_record->pharmacy_stock; - } - } - @endphp - - - - @if(track_items_using_batches()) - - @endif - - - - - {{-- --}} - - - - @endforeach - -
    {{ __('stores.drug_name') }}{{ __('pharmacy.pharmacy_system_stock') }}{{ __('stores.batch_details_and_others') }}{{ __('pharmacy.pharmacy_physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.reason_for_difference') }}{{ __('stores.selling_price') }}
    {{ __('stores.drug_name') }}{{ __('pharmacy.pharmacy_system_stock') }}{{ __('stores.batch_details_and_others') }}{{ __('pharmacy.pharmacy_physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.reason_for_difference') }}{{ __('stores.selling_price') }}
    - @if($drug->insurance_coverage == 1) - {{ $drug->name }} - @else - {{ $drug->name }} - @endif - -
    - {{ $drug_pharmacy_stock }} - - -
    -
    - - @if(count($batch_records) > 0) - @foreach($batch_records as $record) -
    -
    - {{ Form::hidden('item_batch_watcher_id[]', $record->id, ['class' => 'batch_record_id_class_'.$record->id]) }} - {{ Form::hidden('batch_drug_id[]', $drug->id, ['class' => 'batch_id_class_'.$drug->id]) }} - {{ Form::hidden('batch_quotation_id[]', $record->id) }} - - - - - -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    - -
    -
    -
    - {{ __('stores.quantity') }}:{{ $record->pharmacy_stock }}
    - @if(Auth::user()->can('remove-batch-during-stock-reconciliation')) - {{-- - @php - $batch_no = $record->batch_number; - $drug_id = $drug->id; - @endphp - Remove batch - --}} - @endif - @if(Auth::user()->can('edit-batch-during-stock-reconciliation')) - - @php - $batch_no = $record->batch_number; - $drug_id = $drug->id; - @endphp - {{ __('stores.edit_batch') }} - - @endif -
    -
    -
    - {{ __('stores.unit_cost') }}: {{ $record->cost_price }} - -
    - - -
    -
    - {{ __('stores.expiry_date') }}: {{ $record->expiry_date }} -
    - -
    - -
    - @endforeach - @else -
    -
    - {{ Form::hidden('item_batch_watcher_id[]', 0) }} - {{ Form::hidden('batch_drug_id[]', $drug->id) }} - {{ Form::hidden('batch_quotation_id[]', 0) }} - -
    - -
    - -
    - -
    - -
    -
    - -
    -
    - -
    - -
    - @endif -
    -
    - {{ $drug_pharmacy_stock == 0 ? $drug_pharmacy_stock : $drug_pharmacy_stock }} -
    - -
    - - -
    -
    - -
    - - -
    - {{ ugandan_shillings($drug->non_insured_price) }} -
    -
    -
    -
    -


    -
    -
    - - -
    -
    -
    -
    - {{ Form::label('account_id', __('stores.general_comment')) }} -
    -
    -
    - {{ Form::textarea('general_comment','',['class' => 'form-control', 'placeholder' => __('pharmacy.add_general_comment'), 'rows' => 4]) }} -
    -
    -
    -
    - - - {{ __('pharmacy.note') }}: - {{ __('pharmacy.stock_differences_are_reflected_in') }} {{ $stock_adjustment_chart_of_account->name }} {{ __('pharmacy.if_it_is_not_opening_stock') }}. {!! __('pharmacy.if_it_is_the_opening_stock_then_the_affected_account') !!} - -
    -
    - -
    -
    - -
    -
    - - - - -
    -
    -
    -
    -
    - - -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/optical_stock_sheet.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/optical_stock_sheet.blade.php deleted file mode 100644 index 62cbe2da..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/optical_stock_sheet.blade.php +++ /dev/null @@ -1,190 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.pharmacy_opticals_stock_sheet') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -
    -
    -
    - {{ csrf_field() }} -

    {{ __('pharmacy.export_data_to_copy_csv_pdf') }}

    -
    - - - - - @if(track_items_using_batches()) @endif - - - - - - - - - - @if(track_items_using_batches())@endif - - - - - - - - @foreach($opticals as $sundry) - - - @if(track_items_using_batches()) - - @endif - - - - - - @endforeach - -
    {{ __('pharmacy.sundry_name') }}{{ __('stores.batch_details') }}{{ __('pharmacy.pharmacy_stock') }}{{ __('pharmacy.cost_value') }}{{ __('pharmacy.selling_price') }}{{ __('pharmacy.sale_value') }}
    {{ __('pharmacy.sundry_name') }}{{ __('stores.batch_details') }}{{ __('pharmacy.pharmacy_stock') }}{{ __('pharmacy.cost_value') }}{{ __('pharmacy.selling_price') }}{{ __('pharmacy.sale_value') }}
    - @if($sundry->insurance == 1) - {{ $sundry->name }} - @else - {{ $sundry->name }} - @endif - - @forelse($sundry->batches as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->pharmacy_stock }}
    - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - {{ __('stores.unit_cost') }}: {{ $record->cost_price }} -
    -
    - {{ Form::hidden('item_batch_watcher_id[]', 0) }} - {{ Form::hidden('batch_drug_id[]', $record->id) }} - {{ Form::hidden('batch_item_id[]', $record->item_id) }} - -
    - -
    - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    -
    - @empty - @endforelse - - - -
    -
    - {{ $sundry->total_stock }} -
    - -
    -
    - {{ ugandan_shillings($sundry->item_cost_value) }} -
    -
    -
    - {{ ugandan_shillings($sundry->non_insured_price) }} -
    -
    -
    - {{ ugandan_shillings($sundry->total_stock * $sundry->non_insured_price) }} -
    -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/opticals_stock_reconciliation_report.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/opticals_stock_reconciliation_report.blade.php deleted file mode 100644 index f094fff5..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/opticals_stock_reconciliation_report.blade.php +++ /dev/null @@ -1,188 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('layout.optical_stock_reconciliation_report') }}

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    - - - {{ Form::open(['method'=>'post','route' => 'pharmacy.opticals_stock_reconciliation_report']) }} - -
    -

    {{ __('pharmacy.select_a_date_range') }}

    -
    - -
    - -
    - - - - -
    - {{ Form::submit(__('pharmacy.submit'), ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    - - - -
    -
    -
    -
    -
    -
    - - - - - - - - - - - @php - $counter = 0; - @endphp - - - @if(count($reconciled_stocks) > 0) - @foreach($reconciled_stocks as $record) - - - - - - - - - - @php - $counter++; - @endphp - @endforeach - @endif - -
    {{ __('pharmacy.date') }}{{ __('pharmacy.staff_in_charge') }}{{ __('pharmacy.reconciliation_id') }}{{ __('pharmacy.total_variance') }}{{ __('pharmacy.general_comment') }}{{ __('pharmacy.action') }}
    {{ streamline_date($record->created_at) }}{{ get_full_name($record->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ sprintf("%04u", $record->stock_count_identifier) }}{{ ugandan_shillings($record->total) }}{{ $record->general_comment }} - {{ Form::open(['method'=>'post','route' => 'pharmacy.opticals_stock_reconciliation_report_details']) }} - {{ Form::hidden('stock_count_identifier', $record->stock_count_identifier) }} - {{ Form::submit('Details', ['class'=>'btn btn-success']) }} - {{ Form::close() }} -
    -
    -
    -
    -
    -
    - -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/opticals_stock_reconciliation_report_print.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/opticals_stock_reconciliation_report_print.blade.php deleted file mode 100644 index 866e50a5..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/opticals_stock_reconciliation_report_print.blade.php +++ /dev/null @@ -1,163 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.opticals_stock_reconciliation_report_details') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -
    -
    -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - @foreach($opticals_reconciled as $reconciliation_record) - @php - $sundry_name = get_name($reconciliation_record->item_id, "id", "name", "eye_glasses"); - $insurance_coverage = get_name($reconciliation_record->item_id, "id", "insurance", "sundries"); - @endphp - - - - - - - - - - - @endforeach - -
    {{ __('stores.name') }}{{ __('stores.system_stock') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('pharmacy.reconciled_by') }}{{ __('pharmacy.performed_on') }}
    {{ __('stores.name') }}{{ __('stores.system_stock') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('pharmacy.reconciled_by') }}{{ __('pharmacy.performed_on') }}
    - @if($insurance_coverage == 1) - {{ $sundry_name }} - @else - {{ $sundry_name }} - @endif - -
    - {{ $reconciliation_record->system_stock }} -
    - @forelse($reconciliation_record->batches as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record['original_batch_number'] }} -
    -
    - {{ __('stores.quantity') }}: {{ $record['original_quantity'] }}
    - - -
    -
    - {{ __('stores.unit_cost') }}: {{ $record['original_unit_cost'] }} -
    -
    - @empty - @endforelse -
    -
    - {{ $reconciliation_record->physical_stock }} -
    - @forelse($reconciliation_record->batches as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record['batch_number'] }} -
    -
    - {{ __('stores.quantity') }}: {{ $record['quantity'] }}
    - -
    -
    - {{ __('stores.unit_cost') }}: {{ $record['unit_cost'] }}
    - {{ __('stores.reason') }}: {{ $record['reason'] }} -
    -
    - @empty - @endforelse -
    -
    - {{ $reconciliation_record->difference }} -
    -
    -
    - {{ ugandan_shillings($reconciliation_record->variance) }} -
    -
    -
    - {{ get_full_name($reconciliation_record->created_by, 'id', 'first_name', 'last_name', 'users') }} -
    -
    -
    - {{ streamline_date($reconciliation_record->created_at) }} -
    -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/patient_dispensing_receipt.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/patient_dispensing_receipt.blade.php deleted file mode 100755 index a4d62081..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/patient_dispensing_receipt.blade.php +++ /dev/null @@ -1,209 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.dispensing_receipt') }}

    -
    -
    - -
    -
    -
    - @if (!empty($episode_id)) -
    -
    -
    - @if(Auth::user()->can('view-episode-summary')) - {{ __('patient_episode.episode_summary') }} - @endif -
    -

    - @endif -
    -
    -
    -

    - {{ $hospital_details->name }} - {{ $hospital_details->address }} - {{ __('pharmacy.phone') }}: {{ $hospital_details->phone_number }}
    - {{ __('pharmacy.email') }}: {{ $hospital_details->email }}
    - {{ __('pharmacy.department') }}: {{ __('pharmacy.pharmacy') }}
    - {{ __('pharmacy.date') }}: {{ streamline_date($patient_dispensing->created_at) }}
    - {{ __('pharmacy.patient_name') }}: {{ get_name($patient_dispensing->patient_id, 'id', 'first_name', 'patients') }} {{ get_name($patient_dispensing->patient_id, 'id', 'last_name', 'patients') }}
    - {{ __('pharmacy.patient_number') }} : {{ get_name($patient_dispensing->patient_id, 'id', 'number', 'patients') }}
    -

    - - @php - $drugs_array = explode(",", $patient_dispensing->drugs); - $dosage_array = explode(",", $patient_dispensing->dose); - $dosage2_array = explode(",", $patient_dispensing->dose2); - $frequency_array = explode(",", $patient_dispensing->drug_frequency); - $duration_array = explode(",", $patient_dispensing->duration); - $quantity_dispensed_array = explode(",", $patient_dispensing->quantity_dispensed); - $instruction_array = explode(",", $patient_dispensing->instructions); - // replace empty instructions with N/A - $instruction_array = array_map(function($value) { - return $value === "" ? 'N/A' : $value; - }, $instruction_array); - - $department = ($patient_dispensing->tta == 1) ? "IN-PATIENT" : "OPD"; - @endphp - - @for ($x = 0; $x < count($drugs_array); $x++) - @php - $drug_form_id = get_name($drugs_array[$x], "id", "form_id", "drugs"); - $drug_form_name = get_name($drug_form_id, "id", "name", "unit_of_measure"); - $drug_unit_id = get_name($drugs_array[$x], "id", "unit_id", "drugs"); - $drug_unit = get_name($drug_unit_id, "id", "name", "drug_units"); - $drug_strength = get_name($drugs_array[$x], "id", "strength", "drugs"); - @endphp - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @if(get_name(isset($patient_dispensing->patient_id) ? $patient_dispensing->patient_id: "", 'id', 'language', 'patients') == "vern") - - @else - - @endif - - - - -

    - @endfor - - {{ __('pharmacy.dispensed_by') }} : {{ auth()->user()->first_name }} {{ auth()->user()->last_name }} - © Stre@mline -
    -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - -@endpush - - diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/pharmacy_dispensation_report_drugs.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/pharmacy_dispensation_report_drugs.blade.php deleted file mode 100755 index 3909e32e..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/pharmacy_dispensation_report_drugs.blade.php +++ /dev/null @@ -1,253 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.dispensation_report_drugs') }}

    -
    -
    - -
    -
    - -
    -
    - @include('pharmacy::pharmacy.dispensation_menu') -
    -
    - -
    -
    - - @include('flash::message') - @foreach ($errors->all() as $error) -
    {{ $error }}
    - @endforeach - -
    - -
    - {{ Form::open(['route' => 'pharmacy.pharmacy_dispensation_report_drugs', 'method' => 'ANY', 'role' => 'search']) }} - -
    -
    -
    - {{ Form::label('drug_id', __('pharmacy.drug')) }} - {{ Form::select('drug_id', $drugs_selection_array, '', ['class' => 'form-control', 'id' => 'drugs_select']) }} -
    -
    -
    -
    -
    - {{ Form::label('search_by', __('pharmacy.search_by')) }} - {{ Form::select('search_by', ['3'=>__('pharmacy.all_records'),'0'=>__('pharmacy.last_24_hours'),'1'=>__('pharmacy.custom_date'),'2'=>__('pharmacy.date_range')], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - - -
    -

    - {{ Form::button(__('pharmacy.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    -
    - {{ Form::close() }} -
    -
    -
    -
    - -
    -
    -
    -

    {{ $search_text }}

    -
    - - - - - - - - - - - - - @php $counter = 1; @endphp - @if(count($drugs_qty_associative_array) > 0) - @foreach($drugs_qty_associative_array as $drug_id => $quantity_dispensed) - - - - - - - - - @php $counter++; @endphp - @endforeach - @endif - - -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/pharmacy_dispensation_report_patients.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/pharmacy_dispensation_report_patients.blade.php deleted file mode 100755 index 73bf98b5..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/pharmacy_dispensation_report_patients.blade.php +++ /dev/null @@ -1,265 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.dispensation_report_patients') }}

    -
    -
    - -
    -
    - -
    -
    - @include('pharmacy::pharmacy.dispensation_menu') -
    -
    - -
    -
    - - @include('flash::message') - @foreach ($errors->all() as $error) -
    {{ $error }}
    - @endforeach - -
    - -
    - {{ Form::open(['route' => 'pharmacy.pharmacy_dispensation_report_patients', 'method' => 'ANY', 'role' => 'search']) }} - -
    -
    -
    - {{ Form::label('search_by', __('pharmacy.search_by')) }} - {{ Form::select('search_by', ['0'=>__('pharmacy.last_24_hours'),'1'=>__('pharmacy.custom_date'),'2'=>__('pharmacy.date_range')], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - - -
    -

    - {{ Form::button(__('pharmacy.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    -
    - {{ Form::close() }} -
    -
    -
    -
    - -
    -
    -
    -

    {{ $search_text }}

    -
    - - - - - - - - - - - - - - @php $counter = 1; @endphp - @if(count($dispensations) > 0) - @foreach($dispensations as $dispensation) - - - - @php - $drugs = explode(",", $dispensation->drugs); - $quantities = explode(",", $dispensation->quantity_dispensed); - @endphp - - - - - - - @php $counter++; @endphp - @endforeach - @endif - - -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/previous_requisitions.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/previous_requisitions.blade.php deleted file mode 100755 index 11740fe1..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/previous_requisitions.blade.php +++ /dev/null @@ -1,144 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.previous_requisitions') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    -
    - {{ Form::open(['method' => 'post', 'route'=>'pharmacy.previous_requisitions'])}} - - {{ Form::label('quotation_type', __('pharmacy.requisition_type')) }} - {{ Form::select('quotation_type', $quotation_type_options , null, ['class'=>'form-control compulsory', 'required']) }} - -
    - {{ __('pharmacy.requisitioned_between') }}
    - {{ Form::label('start_date',__('pharmacy.start')) }} -
    - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-autoclose1']) }} - -
    -
    - {{ Form::label('end_date',__('pharmacy.end')) }} -
    - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-autoclose2']) }} - -
    -
    - - {{ Form::button(__('pharmacy.search'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - - {{ Form::close() }} -
    - - -
    -
    {!! $display ?? '' !!}

    -
    - - - - - - - - - - - @if(!is_null($results)) - @foreach($results as $result) - - - - - - - @endforeach - @else - - @endif - -
    {{ __('pharmacy.requisition_number') }}{{ __('pharmacy.quantity') }}{{ __('pharmacy.date_requested') }}
    # {{ sprintf('%04u', $result->id) }} - quantity_requested); - ?> - {{ count($drug_id_array) }} {{ __('pharmacy.items') }} - - {{ streamline_date(get_name($result->id, "id", "created_at", "requisitions")) }} - - @if($result->issue_status == 1) - - {{ csrf_field() }} - - - - - @else - @if( $result->approval_status != 1) -
    - {{ csrf_field() }} - - - -
    - @else - {{ __('pharmacy.view') }} - - @endif - @endif -
    {{ __('pharmacy.please_search_records') }}
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/print_protocol_ward_chart.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/print_protocol_ward_chart.blade.php deleted file mode 100644 index 4d35dfa3..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/print_protocol_ward_chart.blade.php +++ /dev/null @@ -1,175 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.dispensing_receipt') }}

    -
    -
    - -
    -
    - @include('flash::message') -
    -
    -
    - - - -
    -
    -
    - @for ($x = 0; $x < count($protocol_drug_ids_arr); $x++) - @php - $drug_details = \Illuminate\Support\Facades\DB::table('drugs')->where('id', $protocol_drug_ids_arr[$x])->first(); - $patient_details = \Illuminate\Support\Facades\DB::table('patients')->where('id', $protocol_patient_id_arr[$x])->first(); - - $drug_form_id = $drug_details->form_id; - $drug_form_name = get_name($drug_form_id, "id", "name", "unit_of_measure"); - $drug_unit_id = $drug_details->unit_id; - $drug_unit = get_name($drug_unit_id, "id", "name", "drug_units"); - $drug_strength = $drug_details->strength; - @endphp - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @if($patient_details->language == "vern") - - @else - - @endif - - - - -

    - @endfor - - {{ __('pharmacy.dispensed_by') }} : {{ auth()->user()->first_name }} {{ auth()->user()->last_name }} - © Stre@mline - - - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - -@endpush - - diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/requisition_for_drugs.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/requisition_for_drugs.blade.php deleted file mode 100755 index 3af9b65a..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/requisition_for_drugs.blade.php +++ /dev/null @@ -1,225 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.requisitions') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    - @if(count($results) <= 0) -
    - {{ Form::open(['method' => 'post', 'route'=>'pharmacy.requisition_for_drugs'])}} - - {{ Form::label('quotation_type', __('pharmacy.requisition_type')) }} - {{ Form::select('quotation_type', $quotation_type_options , null, ['class'=>'form-control compulsory', 'required']) }}
    - - {{ Form::button(__('pharmacy.submit_requisition_type'),['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} - {{ Form::close() }} -
    - @endif - -
    - @if(isset($item_type) && $item_type != 0) - {{ Form::open(['route' => 'pharmacy.drug_requisition_search', 'method' => 'ANY', 'role' => 'search']) }} -
    - -
    -
    - {{ Form::select('drug_name[]',$names_array,'',['id'=>'item_ids', 'multiple'=>true, 'class' => 'form-control col-sm-8 item_ids']) }} -
    -
    - -
    - -
    -
    - - @if(isset($criteria) && isset($resultCount)) -

    - {{ __('pharmacy.search_criteria') }} : {{ $criteria }}    {{ __('pharmacy.total_results') }} : {{ $resultCount }}    {{ __('pharmacy.clear_search') }} -

    - @endif - {{ Form::close() }} - @endif - - {{ Form::open(['method' => 'post', 'route'=>'pharmacy.store_requisition'])}} - -
    - - - - - - - - - - - - @if(count($results) > 0) - @php $count = 0; @endphp - @foreach($results as $result) - @php - $count++; - $drug_store_stock = $drug_pharmacy_stock = 0; - $store_batch_records =track_batch_stock($item_type,$result->id,'store_stock'); - $pharmacy_batch_records =track_batch_stock($item_type,$result->id,'pharmacy_stock'); - @endphp - - - - - - - - @endforeach - @else - - @endif - -
    #{{ __('pharmacy.item_name') }}{{ __('pharmacy.store_stock') }}{{ __('pharmacy.pharmacy_stock') }}{{ __('pharmacy.quantity_requested') }}
    {{ $count }} - {{ $result->name }} - - - @if(count($store_batch_records) > 0) - @foreach($store_batch_records as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->store_stock }}
    - @php - $drug_store_stock += $record->store_stock; - @endphp - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - @endforeach - @endif - Total Stock: {{ $drug_store_stock }} -
    - @if(count($pharmacy_batch_records) > 0) - @foreach($pharmacy_batch_records as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->pharmacy_stock }}
    - @php - $drug_pharmacy_stock += $record->pharmacy_stock; - @endphp - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - @endforeach - @endif - Total : {{ $drug_pharmacy_stock }} -
    - -
    {{ __('pharmacy.please_search_records') }}
    -
    -
    - - @if(count($results) > 0 ) -
    -
    - {{ Form::button(__('pharmacy.save_for_later'),['type'=>'submit','name'=>'save_for_later','value'=>'1','class'=>' btn btn-default waves-effect waves-light ']) }} -
    -
    - {{ Form::button(__('pharmacy.complete_request'),['type'=>'submit','name'=>'complete_request','value'=>'1','class'=>' btn btn-success waves-effect waves-light ']) }} -
    - {{ Form::close() }} -
    -
    -
    - @endif -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/requisition_receipt.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/requisition_receipt.blade.php deleted file mode 100755 index 59807faf..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/requisition_receipt.blade.php +++ /dev/null @@ -1,212 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.print_requisition') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    -
    - - PDF {{ __('stores.print') }} - -
    -
    -

    - -
    -
    -
    -
    -
    -
    {{ __('pharmacy.date') }} : {{ streamline_date($requisition_model->created_at) }}
    -
    -
    - {{ $hospital_details->name }}
    - {{ $hospital_details->address }}
    - {{ get_name($hospital_details->district, "id", "name", "districts") }}
    - {{ $hospital_details->email }}
    - {{ $hospital_details->phone_number }}
    -
    -
    - -
    - {{get_quotation_type_name($requisition_model->quotation_type_id)}} {{ __('pharmacy.request_from_requisition') }} {{ get_requisition_origin($requisition_model->requisition_origin) }}: -
    - -
    - - - - - - - @if($requisition_model->quotation_type_id ==1 || $requisition_model->quotation_type_id ==5) @endif - - - - - @php - $counter = 1; - $grand_total = 0; - $requisiton_details = $requisition_model; - $requisition_type_id = $requisition_model->quotation_type_id; - $item_array = explode(",", $requisiton_details->drug_id); - $quantity_array = explode(",", $requisiton_details->quantity_requested); - @endphp - - @for($i = 0; $i < count($quantity_array) ; $i++) - @if(isset($quantity_array[$i]) && $quantity_array[$i] != "" && isset($item_array[$i])) - - - - @if($requisition_type_id == 1) - - @php - $cost_price = get_name($item_array[$i], 'id', 'cost_price', 'drugs'); - $drug_form = get_name($item_array[$i], 'id', 'form_id', 'drugs'); - $drug_form_name = get_name($drug_form,'id','name','drug_forms'); - if ($drug_form_name == 'N/A') $drug_form_name =null; - @endphp - @elseif($requisition_type_id == 2) - - @php - $cost_price = get_name($item_array[$i], 'id', 'cost_price', 'sundries'); - $drug_form = get_name($item_array[$i], 'id', 'package_unit_id', 'sundries'); - @endphp - @elseif($requisition_type_id == 3) - - @php - $cost_price = get_name($item_array[$i], 'id', 'cost_price', 'dentals'); - $drug_form = null; - @endphp - @elseif($requisition_type_id == 4) - - @php - $cost_price = get_name($item_array[$i], 'id', 'cost_price', 'radiologies'); - $drug_form = get_name($item_array[$i], 'id', 'form_id', 'radiologies'); - @endphp - @elseif($requisition_type_id == 5) - - @php - $cost_price = get_name($item_array[$i], 'id', 'cost_price', 'labs'); - $drug_form = get_name($item_array[$i], 'id', 'form_id', 'labs'); - $drug_form_name=get_name($drug_form, 'id','name','lab_forms'); - if ($drug_form_name == 'N/A') $drug_form_name =null; - @endphp - @elseif($requisition_type_id == 6) - - @php - $cost_price = get_name($item_array[$i], 'id', 'cost_price', 'general_items'); - $drug_form = null; - @endphp - @elseif($requisition_type_id == 7) - - @php - $cost_price = get_name($item_array[$i], 'id', 'buying_price', 'eye_glasses'); - $drug_form = null; - @endphp - @endif - - - @if($requisition_type_id ==1 || $requisition_type_id ==5 )@endif - - - @php $counter++; @endphp - @endif - @endfor - - - - - @if($requisition_type_id ==1 || $requisition_model->quotation_type_id ==5) @endif - - - - -
    {{ __('pharmacy.number') }}{{ __('pharmacy.item_name') }}{{ __('pharmacy.quantity') }}{{ __('pharmacy.units') }}{{ __('pharmacy.cost_value') }}
    {{ $counter }}. {{ get_name($item_array[$i], 'id', 'name', 'drugs') }}{{ get_name($item_array[$i], 'id', 'name','sundries') }}{{ get_name($item_array[$i], 'id', 'name','dentals') }}{{ get_name($item_array[$i], 'id', 'name','radiologies') }}{{ get_name($item_array[$i], 'id', 'name','labs') }}{{ get_name($item_array[$i], 'id', 'name','general_items') }}{{ get_name($item_array[$i], 'id', 'name','eye_glasses') }}{{ $quantity_array[$i] }}{{ $drug_form_name }} - @php - if (track_items_using_batches()){ - $item_sub_total =get_unit_cost_from_store_batch($item_array[$i],$requisition_type_id,$quantity_array[$i],'store_stock'); - }else{ - $quantity = (isset($quantity_array[$i]) && is_numeric($quantity_array[$i])) ? $quantity_array[$i] : 0; - $item_cost = is_numeric($cost_price) ? $cost_price : 0; - $item_sub_total = $quantity * $item_cost; - } - $grand_total += $item_sub_total; - @endphp - {{ ugandan_shillings($item_sub_total) }} -
    {{ __('pharmacy.total') }}{{ ugandan_shillings($grand_total) }}
    -
    -
    -
    - -
    - {{ __('pharmacy.requisitioned_by') }}:

    - {{ get_full_name($requisition_model->created_by, "id", "first_name", "last_name", "users") }}

    - {{ streamline_date_time_short($requisition_model->created_at) }}

    - ....................................... -
    -
    - {{ __('pharmacy.received_by') }}:

    - ....................................... -
    -
    -
    - {{ get_full_name(auth()->user()->id, "id", "first_name", "last_name", "users") .' '.streamline_date_time(date('Y-m-d')) }} -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - -@endpush - - - - diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/return_drugs_per_chart.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/return_drugs_per_chart.blade.php deleted file mode 100755 index 549c93c6..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/return_drugs_per_chart.blade.php +++ /dev/null @@ -1,357 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.ward_dispensing_chart') }}

    -
    -
    - -
    -
    - - @include('pharmacy::pharmacy.ward_dispensing_menu') - -
    -
    -
    -
    -
    - -
    - {{ Form::open(['route' => 'pharmacy.return_drugs_per_chart', 'class' => 'typeahead', 'method' => 'ANY', 'role' => 'search']) }} - {{ Form::hidden('patient_id', 0, ['id' => 'patient_id']) }} -
    -
    -
    - {{ Form::label('ward_id', __('pharmacy.wards')) }} - {{ Form::select('ward_id', $wards, '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    - {{ Form::label('search_by', __('pharmacy.admission_date')) }} - {{ Form::select('search_by', ['3'=>__('pharmacy.all_records'),'0'=>__('pharmacy.last_24_hours'),'1'=>__('pharmacy.custom_date'),'2'=>__('pharmacy.date_range')], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - -
    - {{ Form::label('search_patient', __('pharmacy.search_by_patient')) }} -
    - -
    -
    -
    -

    - {{ Form::button(__('pharmacy.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    -
    -
    - - @if(count($inpatients) > 0) -

    {{ __('pharmacy.ward') }}: {{ ($ward_id == 0 ? 'All wards' : get_name($ward_id, 'id', 'name', 'wards')) }}

    - @endif - - @include('flash::message') - - {{ Form::close() }} -
    -
    - - @if(count($inpatients) > 0) -
    - {{ Form::open(['route' => 'pharmacy.store_returned_drugs_per_chart', 'class' => 'typeahead', 'method' => 'ANY', "id"=>"return_drugs_chart"]) }} - -
    -
    -
    -
    - - - - - - - - - - - @if(count($inpatients[0]->batch_items) > 0) @endif - - - - @if(count($inpatients) > 0) - @php $counter=0 @endphp - @foreach($inpatients as $in_patient) - $in_patient->patient_id, 'episode_id' => $in_patient->episode_id])->get(); - - ?> - @if(count($in_patient->ward_treatment) > 0) - - - - - - - - - @if((count($in_patient->batch_items[0]??[]) > 0)) - - @else - - @endif - - @for($i = 1; $i < count($in_patient->ward_treatment); $i++) - @php $counter++ @endphp - {{ Form::hidden('patient_id[]',$in_patient->ward_treatment[$i]->patient_id) }} - {{ Form::hidden('episode_id[]',$in_patient->ward_treatment[$i]->episode_id) }} - {{ Form::hidden('drug_id[]', $in_patient->ward_treatment[$i]->drug_id) }} - {{ Form::hidden('ward_treatment_dispensations_id[]', $in_patient->ward_treatment[$i]->id) }} - {{ Form::hidden('ward_treatment_batch_id[]', $in_patient->ward_treatment[$i]->batch_id) }} - - - - - - @if((count($in_patient->batch_items[$i]??[]) > 0)) - - @else - - - @endif - - @endfor - @php $counter++ @endphp - @endif - @endforeach - @endif - -
    {{ __('pharmacy.patient_name') }}{{ __('pharmacy.ward') }}{{ __('pharmacy.date_of_admission') }}{{ __('pharmacy.drugs') }}{{ __('pharmacy.date_given') }}{{ __('pharmacy.quantity_given') }}{{ __('pharmacy.quantity_to_return') }}{{ __('pharmacy.batch_to_return') }}
    - {{ get_full_name($in_patient->patient_id, "id", "first_name", "last_name", "patients") }} - - ({{ get_name($in_patient->patient_id, "id", "number", "patients") }}) - - {{ get_name($in_patient->ward_id, "id", "name", "wards") }} - - {{ streamline_date($in_patient->created_at) }} - - {{ Form::hidden('patient_id[]',$in_patient->ward_treatment[0]->patient_id) }} - {{ Form::hidden('episode_id[]',$in_patient->ward_treatment[0]->episode_id) }} - {{ Form::hidden('inpatient_info_id[]',$in_patient->id) }} - {{ Form::hidden('drug_id[]', $in_patient->ward_treatment[0]->drug_id) }} - {{ Form::hidden('ward_treatment_dispensations_id[]', $in_patient->ward_treatment[0]->id) }} - {{ Form::hidden('ward_treatment_batch_id[]', $in_patient->ward_treatment[0]->batch_id) }} - - {{ get_name($in_patient->ward_treatment[0]->drug_id, "id", "name", "drugs") }} - - {{ streamline_date_time($in_patient->ward_treatment[0]->created_at) }} by {{ ucwords(get_full_name($in_patient->ward_treatment[0]->created_by, 'id', 'first_name', 'last_name', 'users')) }} - - {{ Form::number('quantity_dispensed[]', $in_patient->ward_treatment[0]->quantity_given, ['class' => 'form-control', 'readonly']) }} - - {{ Form::number('quantity_to_return[]', 0, ['class' => 'form-control batch_qty qty_'.$counter,'id'=>'batch_quantity_'.$counter]) }} - - @php - $option_batches = ""; - foreach ($in_patient->batch_items[0] as $value) { - $batch = get_batch_by_id($value); - $option_batches .= ""; - } - @endphp - - {{ Form::hidden('batch_id[]',null,['id'=>'null'.$counter]) }}
    - {{ get_name($in_patient->ward_treatment[$i]->drug_id, "id", "name", "drugs") }} - - {{ streamline_date_time($in_patient->ward_treatment[$i]->created_at) }} by {{ ucwords(get_full_name($in_patient->ward_treatment[$i]->created_by, 'id', 'first_name', 'last_name', 'users')) }} - - {{ Form::number('quantity_dispensed[]', $in_patient->ward_treatment[$i]->quantity_given, ['class' => 'form-control', 'readonly']) }} - - {{ Form::number('quantity_to_return[]', 0, ['class' => 'form-control batch_qty qty_'.$counter,'id'=>'batch_quantity_'.$counter]) }} - - @php - $option_batches = ""; - foreach ($in_patient->batch_items[$i] as $value) { - $batch = get_batch_by_id($value); - $option_batches .= ""; - } - @endphp - - {{ Form::hidden('batch_id[]',null,['id'=>'null'.$counter]) }}
    -
    - {{ Form::button(__('pharmacy.return_drugs'),['type'=>'button','class'=>'btn btn-success waves-effect waves-light m-r-10','id'=>'submit-drugs']) }} -
    -
    -
    - {{ Form::close() }} -
    - @endif -
    -
    -
    -
    - - - - -@endsection -@push('scripts') - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/select_temporary_requisitions.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/select_temporary_requisitions.blade.php deleted file mode 100755 index b8d11936..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/select_temporary_requisitions.blade.php +++ /dev/null @@ -1,130 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.saved_for_requisition') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    - @if(is_object($results) || is_array($results)) -
    -
    - - - - - - - - - - - - - - - - - - - - - - - @foreach($results as $result) - @php $quantity_explode = explode(",", $result->quantity_requested); @endphp - - - - - - - - - @endforeach - -
    {{ __('pharmacy.requisition_number') }}{{ __('stores.number_of_items') }}{{ __('pharmacy.date_started') }}{{ __('stores.requisitioned_by') }}
    {{ __('pharmacy.requisition_number') }}{{ __('stores.number_of_items') }}{{ __('pharmacy.date_started') }}{{ __('stores.requisitioned_by') }}
    # {{ sprintf('%04u', $result->id) }}{{ count(array_filter($quantity_explode)) }}{{ streamline_date_time($result->created_at) }}{{ get_full_name($result->created_by, "id", "first_name", "last_name", "users") }} -
    - {{ csrf_field() }} - - - -
    -
    - @if(Auth::user()->can('delete-store-requisition')) {{ __('pharmacy.cancel_requisition') }} @endif -
    -
    -
    - @else -
    - {{ Form::open(['method' => 'post', 'route'=>'pharmacy.select_temporary_requisition'])}} - - {{ Form::label('quotation_type', __('pharmacy.requisition_type')) }} - {{ Form::select('quotation_type', $quotation_type_options , null, ['class'=>'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::button(__('pharmacy.view_saved_for_later'),['type'=>'submit','class'=>'btn btn-info btn-rounded waves-effect waves-light m-r-10']) }} -
    - - {{ Form::close() }} - @endif -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/stock_sheet.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/stock_sheet.blade.php deleted file mode 100755 index 13260333..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/stock_sheet.blade.php +++ /dev/null @@ -1,183 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.pharmacy_stock_sheet') }}

    -
    -
    - -
    -
    - -@include('flash::message') -
    - @php - $total_cost_value = 0; - @endphp - - -
    - -
    - - - - - @if(track_items_using_batches())@endif - - - - - - - - - - @if(track_items_using_batches())@endif - - - - - - - - @php $cost_value = 0; $sale_value = 0; @endphp - @foreach($drugs as $drug) - - - @php - $drug_pharmacy_stock = 0; - $item_cost_value = 0; - @endphp - @if(track_items_using_batches()) - - @endif - - - - - @php - $total_cost_value += $item_cost_value; - $sale_value += ($drug->non_insured_price * $drug_pharmacy_stock); - @endphp - - @endforeach - - - - - - @if(track_items_using_batches())@endif - - - - - - -
    {{ __('pharmacy.item_name') }}{{ __('stores.batch_details') }}{{ __('pharmacy.pharmacy_stock') }}{{ __('pharmacy.cost_value') }}{{ __('pharmacy.selling_price') }}{{ __('pharmacy.sale_value') }}
    {{ __('pharmacy.item_name') }}{{ __('stores.batch_details') }}{{ __('pharmacy.pharmacy_stock') }}{{ __('pharmacy.cost_value') }}{{ __('pharmacy.selling_price') }}{{ __('pharmacy.sale_value') }}
    - @if($drug->insurance_coverage == 1) - {{ $drug->name }} - @else - {{ $drug->name }} - @endif - - @php - $batch_records = \Streamline\Models\ItemBatchWatcher::where(['item_type' => 1, 'item_id' => $drug->id])->where('pharmacy_stock', '!=', 0)->get(); - @endphp - - @if(count($batch_records) > 0) - @foreach($batch_records as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->pharmacy_stock }}
    - @php - $drug_pharmacy_stock += $record->pharmacy_stock; - @endphp - {{ __('stores.expiry_date') }}: {{ $record->expiry_date }} -
    -
    - {{ __('stores.unit_cost') }}: {{ $record->cost_price }} -
    -
    - @php - $item_cost_value += $record->cost_price * $record->pharmacy_stock; - @endphp - @endforeach - @endif -
    -
    - {{ $drug_pharmacy_stock }} -
    - -
    {{ ugandan_shillings($item_cost_value) }}{{ ugandan_shillings($drug->non_insured_price) }}{{ ugandan_shillings($drug->non_insured_price * $drug_pharmacy_stock) }}
    {{ __('stores.batch_details') }}{{ ugandan_shillings($total_cost_value) }}{{ ugandan_shillings($sale_value) }}
    -
    - -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/sundries_stock_reconciliation.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/sundries_stock_reconciliation.blade.php deleted file mode 100644 index 5e673e8e..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/sundries_stock_reconciliation.blade.php +++ /dev/null @@ -1,637 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('layout.sundries_stock_reconciliation') }}

    -
    -
    - -
    -
    - - -@include('flash::message') - -
    - {{ Form::open(['route' => 'pharmacy.sundries_stock_reconciliation', 'method' => 'ANY', 'role' => 'search']) }} -
    -
    -
    - {{ Form::select('search_items_ids[]',$sundries_dropdown,'',['id'=>'sundry_ids', 'multiple'=>true, 'class' => 'form-control col-sm-8 sundry_ids']) }} -
    -
    - -
    - -
    -
    - {{ Form::close() }} -
    - -
    -
    - {{ csrf_field() }} -
    -
    -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @foreach($sundries as $sundry) - @php - $sundry_pharmacy_stock = 0; - $batch_records = \Streamline\Models\ItemBatchWatcher::where(['item_type' => 2, 'item_id' => $sundry->id])->where('pharmacy_stock', '!=', 0)->get(); - - if (count($batch_records) > 0) { - foreach ($batch_records as $batch_record) { - $sundry_pharmacy_stock += $batch_record->pharmacy_stock; - } - } - @endphp - - - - - - - - - - - - - @endforeach - -
    {{ __('stores.sundry_name') }}{{ __('stores.batch_details_and_others') }}{{ __('pharmacy.pharmacy_system_stock') }}{{ __('pharmacy.pharmacy_physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.reason_for_difference') }}{{ __('stores.selling_price') }}
    {{ __('stores.sundry_name') }}{{ __('stores.batch_details_and_others') }}{{ __('pharmacy.pharmacy_system_stock') }}{{ __('pharmacy.pharmacy_physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.reason_for_difference') }}{{ __('stores.selling_price') }}
    - @if($sundry->insurance_coverage == 1) - {{ $sundry->name }} - @else - {{ $sundry->name }} - @endif - - - @if(count($batch_records) > 0) - @foreach($batch_records as $record) -
    -
    - {{ Form::hidden('item_batch_watcher_id[]', $record->id) }} - {{ Form::hidden('batch_sundry_id[]', $sundry->id, ['class' => 'batch_id_class_'.$sundry->id]) }} - - - -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    - -
    -
    - {{ __('stores.unit_cost') }}: {{ $record->cost_price }} -
    -
    -
    - {{ __('stores.quantity') }}:{{ $record->pharmacy_stock }}
    - @if(Auth::user()->can('remove-batch-during-stock-reconciliation')) - {{-- - @php - $batch_no = $record->batch_number; - $sundry_id = $sundry->id; - @endphp - Remove batch - --}} - @endif - @if(Auth::user()->can('edit-batch-during-stock-reconciliation')) - - @php - $batch_no = $record->batch_number; - $sundry_id = $sundry->id; - @endphp - {{ __('stores.edit_batch') }} - - @endif -
    - - - -
    -
    -
    - {{ __('stores.expiry_date') }}: {{ $record->expiry_date }} -
    - -
    -
    - @endforeach - @else -
    -
    - {{ Form::hidden('item_batch_watcher_id[]', 0) }} - {{ Form::hidden('batch_sundry_id[]', $sundry->id) }} - -
    - -
    - -
    -
    - -
    -
    -
    - -
    - -
    -
    - -
    -
    - @endif -
    -
    - {{ $sundry_pharmacy_stock }} - - -
    -
    -
    - {{ $sundry_pharmacy_stock }} -
    - -
    - - -
    -
    - -
    - - -
    - {{ ugandan_shillings($sundry->non_insured_price) }} -
    -
    -
    -
    -


    -
    -
    - - -
    -
    -
    -
    - {{ Form::label('account_id', __('stores.general_comment')) }} -
    -
    - {{--
    - {{ Form::text('account_id', $stock_adjustment_chart_of_account->name, ['class' => 'form-control', 'id' => 'account_id']) }} -
    -
    --}} -
    - {{ Form::textarea('general_comment','',['class' => 'form-control', 'placeholder' => __('pharmacy.add_general_comment'), 'rows' => 4]) }} -
    -
    -
    -
    - - - {{ __('pharmacy.note') }}: - {{ __('pharmacy.stock_differences_are_reflected_in') }} {{ $stock_adjustment_chart_of_account->name }} {{ __('pharmacy.if_it_is_not_opening_stock') }}. {!! __('pharmacy.if_it_is_the_opening_stock_then_the_affected_account') !!} - -
    -
    - {{--
    -
    - {{ Form::label('account_id', __('stores.select_chart_of_account_affected')) }} -
    -
    -
    - {{ Form::select('account_id', $chart_of_accounts, null, ['class' => 'form-control', 'id' => 'account_id']) }} -
    -
    -
    -
    - - - This is the account that will be affected by the variances incase it is not the intial stock take of the sundry - -
    -
    --}} -
    -
    - -
    -
    - - - - -
    -
    -
    -
    -
    - - -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/sundries_stock_reconciliation_report.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/sundries_stock_reconciliation_report.blade.php deleted file mode 100644 index 124da1ae..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/sundries_stock_reconciliation_report.blade.php +++ /dev/null @@ -1,185 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('layout.sundries_stock_reconciliation_report') }}

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    - - - {{ Form::open(['method'=>'post','route' => 'pharmacy.sundries_stock_reconciliation_report']) }} - -
    -

    {{ __('pharmacy.select_a_date_range') }}

    -
    - -
    - -
    - - - - -
    - {{ Form::submit(__('pharmacy.submit'), ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    - - - -
    -
    -
    -
    -
    -
    - - - - - - - - - @php - $counter = 0; - @endphp - - - @if(count($reconciled_stocks) > 0) - @foreach($reconciled_stocks as $record) - - - - - - - - @php - $counter++; - @endphp - @endforeach - @endif - -
    {{ __('pharmacy.date') }}{{ __('pharmacy.staff_in_charge') }}{{ __('pharmacy.reconciliation_id') }}{{ __('pharmacy.action') }}
    {{ streamline_date($record->created_at) }}{{ get_full_name($record->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ sprintf("%04u", $record->stock_count_identifier) }} - {{ Form::open(['method'=>'post','route' => 'pharmacy.sundries_stock_reconciliation_report_details']) }} - {{ Form::hidden('stock_count_identifier', $record->stock_count_identifier) }} - {{ Form::submit('Details', ['class'=>'btn btn-success']) }} - {{ Form::close() }} -
    -
    -
    -
    -
    -
    - -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/sundries_stock_reconciliation_report_details.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/sundries_stock_reconciliation_report_details.blade.php deleted file mode 100644 index 0e65e5db..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/sundries_stock_reconciliation_report_details.blade.php +++ /dev/null @@ -1,130 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.sundries_stock_reconciliation_report_details') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -
    -
    -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - @foreach($sundries_reconciled as $reconciliation_record) - @php - $sundry_name = get_name($reconciliation_record->sundry_id, "id", "name", "sundries"); - $insurance_coverage = get_name($reconciliation_record->sundry_id, "id", "insurance", "sundries"); - @endphp - - - - - - - - - - @endforeach - -
    {{ __('stores.sundry_name') }}{{ __('stores.system_stock') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.reason_for_difference') }}{{ __('pharmacy.reconciled_by') }}{{ __('pharmacy.performed_on') }}
    {{ __('stores.sundry_name') }}{{ __('stores.system_stock') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.reason_for_difference') }}{{ __('pharmacy.reconciled_by') }}{{ __('pharmacy.performed_on') }}
    - @if($insurance_coverage == 1) - {{ $sundry_name }} - @else - {{ $sundry_name }} - @endif - -
    - {{ $reconciliation_record->system_stock }} -
    -
    -
    - {{ $reconciliation_record->physical_stock }} -
    -
    -
    - {{ $reconciliation_record->difference }} -
    -
    -
    - {{ $reconciliation_record->reason_for_difference }} -
    -
    -
    - {{ get_full_name($reconciliation_record->created_by, 'id', 'first_name', 'last_name', 'users') }} -
    -
    -
    - {{ streamline_date($reconciliation_record->created_at) }} -
    -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/sundries_stock_sheet.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/sundries_stock_sheet.blade.php deleted file mode 100755 index c68fa28e..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/sundries_stock_sheet.blade.php +++ /dev/null @@ -1,186 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.pharmacy_sundries_stock_sheet') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -
    -
    -
    - {{ csrf_field() }} -

    {{ __('pharmacy.export_data_to_copy_csv_pdf') }}

    -
    - - - - - @if(track_items_using_batches()) @endif - - - - - {{-- --}} - - - - - - @if(track_items_using_batches())@endif - - - - - {{-- --}} - - - - @foreach($sundries as $sundry) - - - @if(track_items_using_batches()) - - @endif - - - - - {{-- --}} - - @endforeach - -
    {{ __('pharmacy.sundry_name') }}{{ __('stores.batch_details') }}{{ __('pharmacy.pharmacy_stock') }}{{ __('pharmacy.cost_value') }}{{ __('pharmacy.selling_price') }}{{ __('pharmacy.sale_value') }}{{ __('pharmacy.expiry_date') }}
    {{ __('pharmacy.sundry_name') }}{{ __('stores.batch_details') }}{{ __('pharmacy.pharmacy_stock') }}{{ __('pharmacy.cost_value') }}{{ __('pharmacy.selling_price') }}{{ __('pharmacy.sale_value') }}{{ __('pharmacy.expiry_date') }}
    - @if($sundry->insurance == 1) - {{ $sundry->name }} - @else - {{ $sundry->name }} - @endif - - @php - $batch_records = track_batch_stock(2,$sundry->id,'pharmacy_stock'); - // \Streamline\Models\ItemBatchWatcher::where(['item_type' => 2, 'item_id' => $sundry->id])->where('pharmacy_stock', '!=', 0)->get(); - - $sundry_pharmacy_stock = $item_cost_value = 0; - @endphp - - @if(count($batch_records) > 0) - @foreach($batch_records as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->pharmacy_stock }}
    - @php - $sundry_pharmacy_stock += $record->pharmacy_stock; - @endphp - {{ __('stores.expiry_date') }}: {{ $record->expiry_date }} -
    -
    - {{ __('stores.unit_cost') }}: {{ $record->cost_price }} -
    -
    - @php - $item_cost_value += $record->cost_price * $record->pharmacy_stock; - @endphp - @endforeach - @endif -
    -
    - {{ $sundry_pharmacy_stock }} -
    - -
    -
    - {{ ugandan_shillings($item_cost_value) }} -
    -
    -
    - {{ ugandan_shillings($sundry->non_insured_price) }} -
    -
    -
    - {{ ugandan_shillings($sundry_pharmacy_stock * $sundry->non_insured_price) }} -
    -
    -
    - {{ streamline_date($sundry->expiry_date) }} -
    -
    -
    -
    -
    -
    - - {{--
    -
    - - - -
    - -
    --}} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/view_cancelled_prescriptions.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/view_cancelled_prescriptions.blade.php deleted file mode 100755 index d1e7b8cf..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/view_cancelled_prescriptions.blade.php +++ /dev/null @@ -1,174 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('pharmacy.cancalled_treatments') }}

    -
    - -
    - - {{ Form::open(['route' => 'pharmacy.view_cancelled_prescriptions', 'method' => 'ANY']) }} - -
    -
    -
    -
    - {{ Form::label('search_by', __('investigations.date')) }} - {{ Form::select('search_by', ['0'=>'Last 24 hours','1'=>'Custom Date','2'=>'Custom Range'], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - - -
    -

    - {{ Form::button(__('investigations.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    - -
    -

    {{ __('pharmacy.search_date') }}: {{ $date_search }}

    -
    -
    -
    - {{ Form::close() }} - -
    -
    - - @include('flash::message') - -
    -
    - - - - - - - - - - - - @if(count($prescriptions) > 0) - @foreach($prescriptions as $prescription) - @php - $drug_ids = explode(",", $prescription->drugs); - $quantites = explode(",", $prescription->quantities_dispensed); - @endphp - - - - - - - - - @endforeach - @endif - -
    {{ __('pharmacy.date_cancelled') }}{{ __('investigations.patient_names') }}{{ __('pharmacy.drugs_ordered') }}{{ __('investigations.action') }}
    {{ streamline_date_time($prescription->deleted_at) }}{{ get_full_name($prescription->patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($prescription->patient_id, 'id', 'number', 'patients') }}) -
      - @for($i=0; $i < count($drug_ids); $i++) -
    1. {{ get_name($drug_ids[$i], 'id', 'name', 'drugs') }}
    2. - @endfor -
    -
    - {{ __('pharmacy.restore_prescription') }} - - {{ __('investigations.select_patient') }} -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/view_cancelled_progressive_prescriptions.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/view_cancelled_progressive_prescriptions.blade.php deleted file mode 100755 index 86abc75d..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/view_cancelled_progressive_prescriptions.blade.php +++ /dev/null @@ -1,174 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('pharmacy.cancelled_progressive_treatments') }}

    -
    - -
    - - {{ Form::open(['route' => 'pharmacy.view_cancelled_progressive_prescriptions', 'method' => 'ANY']) }} - -
    -
    -
    -
    - {{ Form::label('search_by', __('investigations.date')) }} - {{ Form::select('search_by', ['0'=>'Last 24 hours','1'=>'Custom Date','2'=>'Custom Range'], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - - -
    -

    - {{ Form::button(__('investigations.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    - -
    -

    {{ __('pharmacy.search_date') }}: {{ $date_search }}

    -
    -
    -
    - {{ Form::close() }} - -
    -
    - - @include('flash::message') - -
    -
    - - - - - - - - - - - - @if(count($prescriptions) > 0) - @foreach($prescriptions as $prescription) - @php - $drug_ids = explode(",", $prescription->drugs); - $quantites = explode(",", $prescription->quantities_to_dispense); - @endphp - - - - - - - - - @endforeach - @endif - -
    {{ __('pharmacy.date_cancelled') }}{{ __('investigations.patient_names') }}{{ __('pharmacy.drugs_ordered') }}{{ __('investigations.action') }}
    {{ streamline_date_time($prescription->deleted_at) }}{{ get_full_name($prescription->patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($prescription->patient_id, 'id', 'number', 'patients') }}) -
      - @for($i=0; $i < count($drug_ids); $i++) -
    1. {{ get_name($drug_ids[$i], 'id', 'name', 'drugs') }}
    2. - @endfor -
    -
    - {{ __('pharmacy.restore_prescription') }} - - {{ __('investigations.select_patient') }} -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/view_dispensing_details.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/view_dispensing_details.blade.php deleted file mode 100755 index b80f4741..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/view_dispensing_details.blade.php +++ /dev/null @@ -1,661 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('pharmacy.dispensing_details') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    -
    - -@php - $option_batches = ""; -@endphp - -@if( Auth::user()->can('view-previous-patient-prescriptions')) - @if(count($previous_treatments) > 0) -
    -

    {{ __('prescriptions.previous_prescriptions') }}

    - -
    - - - - - - - - - - - - - @foreach($previous_treatments as $past_treatment) - @php - $past_drug_ids_array = explode(",", $past_treatment->drugs); - $past_dosage_array = explode(",", $past_treatment->doses); - $past_quantities_array = explode(",", $past_treatment->quantities_dispensed); - $past_frequencies_array = explode(",", $past_treatment->frequencies); - $past_durations_array = explode(",", $past_treatment->durations); - $past_instructions_array = explode(",", $past_treatment->instructions); - @endphp - - - - - - - - - - - - @endforeach - -
    {{ __('prescriptions.date') }}{{ __('prescriptions.clinic') }}{{ __('prescriptions.primary_diagnosis') }}{{ __('prescriptions.other_diagnoses') }}{{ __('prescriptions.prescribed_by') }}
    - {{ streamline_date_time($past_treatment->created_at) }} -
    - @if(check_if_episode_is_a_followup($past_treatment->episode_id)) -
    ({{ __('patient_episode.review_from') }} {{ streamline_date(get_name(get_name($past_treatment->episode_id, 'id', 'parent_episode_id', 'patient_episodes'), 'id', 'created_at', 'patient_episodes')) }})
    - @endif -
    - {{ get_name(get_name($past_treatment->episode_id, 'id', 'clinic_id', 'patient_episodes'), "id", "name", "clinics") }} - - {{ get_name(get_name($past_treatment->episode_id, 'episode_id', 'primary_diagnosis', 'consultations'), 'id', 'name', 'diagnoses') }} - {{ get_full_name($past_treatment->created_by, "id", "first_name", "last_name", "users") }} - {{ __('prescriptions.view_details') }} -
    -
    - @if(Auth::user()->can('view-patients-home')) - {{ __('prescriptions.patient_home') }} - @endif -
    - @endif -@endif - -
    -
    -
    - - @include('flash::message') - - @php $is_any_drug_out_of_stock = $is_any_drug_purchased_else_where = false; $out_stocked_drugs = []; @endphp - -
    - @if( Auth::user()->can('view-patient-diagnosis-at-pharmacy')) - @if(is_eye_module_enabled() && is_patient_in_eye_clinic($treatment->episode_id)) - @php - $right_eye_diagnoses = explode(',',get_name($treatment->episode_id, 'episode_id', 'right_eye_diagnosis', 'eye_clinic_main_exam')); - $left_eye_diagnoses = explode(',',get_name($treatment->episode_id, 'episode_id', 'left_eye_diagnosis', 'eye_clinic_main_exam')); - @endphp -
    -

    Diagnosis

    - - - - - - - - - -
    {{ __('patient_episode.left_eye_diagnosis') }} - @if(count($left_eye_diagnoses) > 0) -
      - @for($x = 0; $x < count($left_eye_diagnoses); $x++) -
    1. {{ isset($left_eye_diagnoses[$x]) ? get_name($left_eye_diagnoses[$x], 'id', 'name', 'diagnoses') : 'N/A' }}
    2. - @endfor -
    - @else - No Diagnosis - @endif -
    {{ __('patient_episode.right_eye_diagnosis') }} - @if(count($right_eye_diagnoses) > 0) -
      - @for($x = 0; $x < count($right_eye_diagnoses); $x++) -
    1. {{ isset($right_eye_diagnoses[$x]) ? get_name($right_eye_diagnoses[$x], 'id', 'name', 'diagnoses') : 'N/A' }}
    2. - @endfor -
    - @else - No Diagnosis - @endif -
    - -
    -
    - @else -
    -
    - - - @php - $primary_diagnosis = ""; - $secondary_diagnosis_array = []; - if ($treatment) { - $consultation = \Streamline\Models\Consultation::where('episode_id', $treatment->episode_id)->first(); - if ($consultation) { - $primary_diagnosis = is_null($consultation->primary_diagnosis) ? "" : get_name($consultation->primary_diagnosis, 'id', 'name', 'diagnoses'); - $other_diagnoses_array = unserialize($consultation->other_diagnoses); - if (is_array($other_diagnoses_array)) { - for ($i=0; $i < count($other_diagnoses_array) ; $i++) { - $secondary_diagnosis_array[] = get_name($other_diagnoses_array[$i], 'id', 'name', 'diagnoses'); - } - } - } - } - @endphp - - - - - - - - - -
    {{ __('pharmacy.primary_diagnosis') }} :{{ $primary_diagnosis }}
    {{ __('pharmacy.secondary_diagnosis') }} : -
      - @for ($i = 0; $i < count($secondary_diagnosis_array); $i++) -
    • {{ $secondary_diagnosis_array[$i] }}
    • - @endfor -
    -
    -
    -
    - @endif - @endif - -
    -
    - {{ csrf_field() }} -
    - - - - - @if(is_eye_module_enabled() && is_patient_in_eye_clinic($treatment->episode_id))@endif - - - - - - - - - - - - - @if($treatment) - @php - $total_amount_to_pay = 0; - $drug_explode = explode(",", $treatment->drugs); - $dose_explode = explode(",", $treatment->doses); - $dose2_explode = explode(",", $treatment->dose2); - $drug_frequency_explode = explode(",", $treatment->frequencies); - $instruction_explode = explode(",", $treatment->instruction); - $duration_explode = explode(",", $treatment->durations); - //$long_term_explode = explode(",", $treatment_row['Long_Term']); - $dispense_explode = explode(",", $treatment->dispensed); - //$form_explode = explode(",", $treatment_row['Form']); - $quantity_to_dispense = explode(",", $treatment->quantities_dispensed); - $purchased_elsewhere = is_null($treatment->purchased_elsewhere) ? [] : explode(",", $treatment->purchased_elsewhere); - $eye_explode = explode(',', $treatment->eye); - @endphp - - - - - - - - - @for ($x = 0; $x < count($drug_explode); $x++) - @php - $auto_deductable_batches_array = get_lab_batches_to_use_based_on_needed_quantity($drug_explode[$x], $item_type = 1, $quantity_to_dispense[$x],'pharmacy_stock'); - @endphp - - - @if(is_eye_module_enabled() && is_patient_in_eye_clinic($treatment->episode_id)) - - @endif - - - - @if (!empty($dose2_explode[$x])) - @php - $form_id2 = isset($drug_explode[$x]) ? get_name($dose2_explode[$x], 'id', 'form_id', 'drugs') : ""; - $form_name2 = isset($drug_explode[$x]) ? get_name($form_id2, 'id', 'name', 'drug_units') : ""; - @endphp - - {{ Form::hidden('dose2[]', isset($dose2_explode[$x]) ? $dose2_explode[$x] : "") }} - @endif - - - - - - - - @endfor - - - - - - - @else - - @endif - -
    #{{ __('pharmacy.eye') }}{{ __('pharmacy.drug_name') }}{{ __('pharmacy.dose') }}{{ __('pharmacy.frequency') }}{{ __('pharmacy.duration') }}{{ __('pharmacy.quantity') }}{{ __('pharmacy.amount') }}{{ __('pharmacy.instructions') }}{{ __('pharmacy.to_be_purcharsed_elsewhere') }}
    episode_id)) colspan="10" @else colspan="9" @endif> -

    {{ __('pharmacy.prescribed_on') }} {{ streamline_date_time($treatment->created_at) }} {{ __('pharmacy.by') }} {{ isset($treatment) ? get_full_name($treatment->created_by, 'id', 'first_name', 'last_name', 'users'): "" }} ({{ isset($treatment) ? get_name($treatment->created_by, 'id', 'phone', 'users') : "" }})

    -
    {{ $x+1 }}. - @if(isset($eye_explode[$x])) - @if($eye_explode[$x] == 0) - Left - @elseif($eye_explode[$x] == 1) - Right - @else - Both - @endif - @endif - - - @if(get_name($drug_explode[$x], 'id', 'insurance_coverage', 'drugs') == 1) - - @else - - @endif - - @if (count($auto_deductable_batches_array) > 0) - @foreach ($auto_deductable_batches_array as $deductable_batch => $quantity) - - @endforeach - @else - - @endif - - - - @php - $form_id = isset($drug_explode[$x]) ? get_name($drug_explode[$x], 'id', 'form_id', 'drugs') : ""; - $unit_id = isset($drug_explode[$x]) ? get_name($drug_explode[$x], 'id', 'unit_id', 'drugs') : ""; - $form_name = isset($form_id) ? get_name($form_id, 'id', 'name', 'drug_forms') : ""; - $unit_name = isset($unit_id) ? get_name($unit_id, 'id', 'name', 'drug_units') : ""; - @endphp - - {{ Form::hidden('dose[]', isset($dose_explode[$x]) ? $dose_explode[$x] : "") }} - - - - - - - - - @php - //$pharmacy_stock = get_name($drug_explode[$x], 'id', 'pharmacy_stock', 'drugs'); - $pharmacy_stock = \Streamline\Models\ItemBatchWatcher::where(['item_type' => 1, 'item_id' => $drug_explode[$x]])->sum('pharmacy_stock'); - @endphp - - {{-- @if(count($auto_deductable_batches_array) < 1) - - @endif --}} - - {{-- @foreach ($auto_deductable_batches_array as $deductable_batch => $quantity) - - @endforeach --}} - - - @if(isset($quantity_to_dispense[$x]) && ($pharmacy_stock - $quantity_to_dispense[$x]) < 0 && !($treatment->payment_status == 1 && get_inventory_reduction_point() == 2)) - @php $is_any_drug_out_of_stock = true; $out_stocked_drugs[] = $drug_explode[$x]; @endphp - - @endif - - @php - $treatment_amount = 0; - $treatment_subtotal = 0; - - if(get_name($drug_explode[$x], "id", "name", "drugs") != "N/A"){ - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if(patient_insurance_status($patient_id) == 1){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $drug_explode[$x], 4, true, 0); - $treatment_amount = $item_insurance_details[2]; - } else { - if ($price_list_id) { - $treatment_amount = get_price_list_category_price($price_list_id, 3, $drug_explode[$x]); - } else { - $treatment_amount = get_name($drug_explode[$x], "id", "non_insured_price", "drugs"); - } - } - - if(isset($quantity_to_dispense[$x]) && $quantity_to_dispense[$x] != ""){ - $treatment_subtotal = $quantity_to_dispense[$x] * $treatment_amount; - } - } - - if(!(isset($purchased_elsewhere[$x]) && $purchased_elsewhere[$x] == 1)){ - $total_amount_to_pay += $treatment_subtotal; - } else { - $is_any_drug_purchased_else_where = true; - } - @endphp - {{ ugandan_shillings($treatment_subtotal) }} - - - - payment_status == 1) disabled @endif/>
    episode_id)) colspan="6" @else colspan="5" @endif>
    {{ __('pharmacy.total') }}
    {{ ugandan_shillings($total_amount_to_pay) }}
    episode_id)) colspan="10" @else colspan="9" @endif>{{ __('pharmacy.no_records') }}
    -
    - - @if(isset($treatment->order_comments)) -
    - - {{ Form::label('order_comments', __('pharmacy.treatment_order_comments')) }} - - -

    - @endif - -
    - @if($treatment->payment_status == 0) - {{ __('pharmacy.alter')}}  - @else - {{ __('pharmacy.alter')}}  - @endif - - @if($is_any_drug_out_of_stock && !can_dispense_out_of_stock_drugs() && !$is_any_drug_purchased_else_where) -

    - @else - - {{ __('pharmacy.confirm_dispensing') }} - @endif - - @if(Auth::user()->can('view-patients-home') && empty($previous_treatments)) - {{ __('prescriptions.patient_home') }} - @endif -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/view_prescriptions_to_cancel.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/view_prescriptions_to_cancel.blade.php deleted file mode 100755 index c12f57d0..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/view_prescriptions_to_cancel.blade.php +++ /dev/null @@ -1,174 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('pharmacy.cancel_treatment')}}

    -
    - -
    - - {{ Form::open(['route' => 'pharmacy.view_prescriptions_to_cancel', 'method' => 'ANY']) }} - -
    -
    -
    -
    - {{ Form::label('search_by', __('investigations.date')) }} - {{ Form::select('search_by', ['0'=>'Last 24 hours','1'=>'Custom Date','2'=>'Custom Range'], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - - -
    -

    - {{ Form::button(__('investigations.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    - -
    -

    {{ __('pharmacy.search_date') }}: {{ $date_search }}

    -
    -
    -
    - {{ Form::close() }} - -
    -
    - - @include('flash::message') - -
    -
    - - - - - - - - - - - - @if(count($prescriptions) > 0) - @foreach($prescriptions as $prescription) - @php - $drug_ids = explode(",", $prescription->drugs); - $quantites = explode(",", $prescription->quantities_dispensed); - @endphp - - - - - - - - - @endforeach - @endif - -
    {{ __('investigations.date') }}{{ __('investigations.patient_names') }}{{ __('pharmacy.drugs_ordered') }}{{ __('investigations.action') }}
    {{ streamline_date_time($prescription->created_at) }}{{ get_full_name($prescription->patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($prescription->patient_id, 'id', 'number', 'patients') }}) -
      - @for($i=0; $i < count($drug_ids); $i++) -
    1. {{ get_name($drug_ids[$i], 'id', 'name', 'drugs') }}
    2. - @endfor -
    -
    - {{ __('pharmacy.cancel_prescription') }} - - {{ __('investigations.select_patient') }} -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/view_ward_dispensing.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/view_ward_dispensing.blade.php deleted file mode 100755 index a4affb9b..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/view_ward_dispensing.blade.php +++ /dev/null @@ -1,141 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.view_ward_dispensing') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    - -
    -
    -
    -
    - {{ Form::open(['route' => 'pharmacy.view_ward_dispensing' , 'data-toggle' => 'validator']) }} -
    -
    -
    - {{ Form::label('ward', __('pharmacy.select_ward')) }} - {{ Form::select('ward',$wards,'',['id'=>'prescription-drugs','class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    - {{ Form::label('start_date',__('pharmacy.date_from')) }} - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'start_date']) }} -
    -
    -
    -
    - {{ Form::label('end_date',__('pharmacy.date_to')) }} - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'end_date']) }} -
    -
    -
    -
    - {{ Form::button(__('pharmacy.search'),['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    - {{ Form::close() }} -
    -
    -
    -
    - - @if($search_complete) -
    -
    -
    -

    {{ get_name($ward_id, 'id', 'name', 'wards') }}: {{ streamline_date($start_date) }} {{ __('pharmacy.to') }} {{ streamline_date($end_date) }}

    -
    - - - - - - - - - - - - - - @if(count($ward_dispensing) > 0) - @foreach($ward_dispensing as $record) - @php - $drug_ids_array = explode(",", $record->drug_id); - $quantity_returned_array = explode(",", $record->quantity_returned); - $quantity_dispensed_array = explode(",", $record->quantity_dispensed); - $comments_array = explode(",", $record->comment); - @endphp - - - - - - - - - - @for($i = 1; $i < count($drug_ids_array); $i++) - - - - - - - - - @endfor - @endforeach - @else - - - - @endif - -
    {{ __('pharmacy.date') }}{{ __('pharmacy.drug_name') }}{{ __('pharmacy.quantity_returned') }}{{ __('pharmacy.quantity_dispensed') }}{{ __('pharmacy.units') }}{{ __('pharmacy.comments') }}{{ __('pharmacy.received_by') }}
    {{ streamline_date($record->dispensation_date) }}{{ get_name($drug_ids_array[0], 'id', 'name', 'drugs') }}{{ $quantity_returned_array[0] }}{{ $quantity_dispensed_array[0] }}{{ get_name(get_name($drug_ids_array[0], 'id', 'unit_id', 'drugs'), 'id', 'name', 'unit_of_measure') }}{{ $comments_array[0] }}{{ get_full_name($record->received_by, 'id', 'first_name', 'last_name', 'users') }}
    {{ get_name($drug_ids_array[$i], 'id', 'name', 'drugs') }}{{ $quantity_returned_array[$i] }}{{ $quantity_dispensed_array[$i] }}{{ get_name(get_name($drug_ids_array[$i], 'id', 'unit_id', 'drugs'), 'id', 'name', 'unit_of_measure') }}{{ $comments_array[$i] }}{{ get_full_name($record->received_by, 'id', 'first_name', 'last_name', 'users') }}
    {{ __('pharmacy.no_records_for_search') }}
    -
    - - {{ $ward_dispensing->links() }} -
    -
    -
    - @endif -@endsection -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/ward_chart_report_details.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/ward_chart_report_details.blade.php deleted file mode 100755 index 7f30d307..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/ward_chart_report_details.blade.php +++ /dev/null @@ -1,164 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.incoming_ward_chart') }}

    -
    - -
    - -
    -
    - -
    -
    - @include('flash::message') - @foreach ($errors->all() as $error) -
    {{ $error }}
    - @endforeach -
    -
    - -@include('pharmacy::pharmacy.ward_dispensing_menu') - -
    - @php - $count = 1; - @endphp -
    - - - - - - - - - - - - - @if($chart_approval_record) - @php - $drug_ids_array = explode(",", $chart_approval_record->drug_ids); - $quantities_array = explode(",", $chart_approval_record->quantity_dispensed); - $comments_array = explode(",", $chart_approval_record->comments); - @endphp - - @for($i=0; $i < count($drug_ids_array); $i++) - - - - - - - - - @php $count++; @endphp - @endfor - @endif - -
    #{{ __('pharmacy.drugs') }}{{ __('pharmacy.quantity') }}{{ __('pharmacy.comments') }}{{ __('pharmacy.received_by') }}{{ __('pharmacy.date') }}
    - {{ $count }} - - {{ get_name($drug_ids_array[$i], "id", "name", "drugs") }} - - {{ $quantities_array[$i] }} - - {{ $comments_array[$i] }} - - {{ get_full_name($chart_approval_record->received_by, "id", "first_name", "last_name", "users") }} - - {{ streamline_date_time($chart_approval_record->created_at) }} -
    -
    - -
    - - @if(!is_null($chart_approval_record->cancer_protocol_order_id)) - Print Details - @endif -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/ward_dispensing.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/ward_dispensing.blade.php deleted file mode 100755 index 449426ce..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/ward_dispensing.blade.php +++ /dev/null @@ -1,224 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.view_ward_dispensing') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    - - -
    -
    - - @include('flash::message') - @foreach ($errors->all() as $error) -
    {{ $error }}
    - @endforeach -
    - -


    -
    -
    - {{ Form::open(['route' => 'pharmacy.ward_dispensing' , 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('drugs', __('pharmacy.select_drugs_ward_dispensing')) }} - {{ Form::select('drugs_to_dispense[]',$drugs,'',['id'=>'prescription-drugs','multiple'=>true,'class' => 'form-control col-sm-8 compulsory prescription-drugs']) }} -
    - -
    - {{ Form::button(__('pharmacy.confirm_drugs'),['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10','style'=>'padding: .6rem 1.2rem;']) }} -
    - {{ Form::close() }} -
    - -
    - @if(isset($drugs_to_dispense_collection)) - {{ Form::open(['route' => 'pharmacy.store' , 'data-toggle' => 'validator']) }} -
    - {{ Form::label('ward', __('pharmacy.ward_allocation')) }} - {{ Form::select('ward',$wards,'',['id'=>'prescription-drugs','class' => 'form-control col-sm-8 compulsory ward_allocation','required']) }} -
    - -
    - {{ Form::label('received_by', __('pharmacy.received_by')) }} - {{ Form::select('received_by',$staff_array,'',['id'=>'staff_array','class' => 'form-control col-sm-8 compulsory','required']) }} -
    - - {{ Form::label('dispensation_date',__('pharmacy.date')) }} -
    - {{ Form::text('dispensation_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-autoclose']) }} - -
    - @endif -
    -
    -
    -
    -
    - -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - @php $count = 1; @endphp - @if(isset($drugs_to_dispense_collection) && count($drugs_to_dispense_collection) > 0) - @foreach($drugs_to_dispense_collection as $drug) - - - - - - - - - - @php $count++; @endphp - @endforeach - @else - - @endif - -
    #{{ __('pharmacy.drug') }}{{ __('pharmacy.balance_on_ward') }}{{ __('pharmacy.dispensed') }}{{ __('pharmacy.total') }}{{ __('pharmacy.stock') }}{{ __('pharmacy.comment') }}
    {{ __('pharmacy.selected') }}
    - @if ($drug->pharmacy_stock > 0 ) - x {{ $count }} - - @endif - - @php - $insurance_color = ($drug->insurance_coverage == 'Yes') ? "green" : "orange"; - @endphp - @if ($drug->pharmacy_stock <= 0) - {{ __('pharmacy.out_of_stock') }} - @endif - {{$drug->name}} - pharmacy_comment); - if (!empty($pharm_comment)): - echo "
    " . $pharm_comment . "
    "; - endif; - /*the reference area code was here put it doesn't exist in the drugs table as was the case in the inventory_items*/ - ?> -
    - - - - - - - - - -
    {{ __('pharmacy.no_drug_search_yet') }}
    - @if(isset($drugs_to_dispense_collection)) - - @endif - {{ Form::close() }} -
    -
    -
    -
    -@endsection -@push('scripts') - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/ward_dispensing_menu.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/ward_dispensing_menu.blade.php deleted file mode 100755 index e35af791..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/ward_dispensing_menu.blade.php +++ /dev/null @@ -1,17 +0,0 @@ -
    -
    - {{ __('pharmacy.ward_dispensing_per_chart_request') }} - - @if( Auth::user()->can('view-incoming-ward-dispensing-per-chart')) - {{ __('pharmacy.incoming_ward_charts_requests') }} - @endif - - @if( Auth::user()->can('approve-ward-dispensings-per-chart')) - {{ __('pharmacy.ward_dispensing_per_chart_report') }} - @endif - - @if( Auth::user()->can('return-drugs-per-chart')) - {{ __('pharmacy.return_drugs_per_chart') }} - @endif -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/ward_dispensing_per_chart.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/ward_dispensing_per_chart.blade.php deleted file mode 100755 index 5b2cc019..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/ward_dispensing_per_chart.blade.php +++ /dev/null @@ -1,639 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.ward_dispensing_chart') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') - @foreach ($errors->all() as $error) -
    {{ $error }}
    - @endforeach -
    -
    - - @include('pharmacy::pharmacy.ward_dispensing_menu') - - @php $count = 1; @endphp - -
    -
    -
    -
    -
    - -
    - {{ Form::open(['route' => 'pharmacy.ward_dispensing_per_chart', 'class' => 'typeahead', 'method' => 'ANY', 'role' => 'search']) }} - - {{ Form::hidden('patient_id', 0, ['id' => 'patient_id']) }} - -
    -
    -
    - {{ Form::label('ward_id', __('pharmacy.wards')) }} - {{ Form::select('ward_id', $wards, '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    - {{ Form::label('search_by', __('pharmacy.admission_date')) }} - {{ Form::select('search_by', ['3'=>__('pharmacy.all_records'),'0'=>__('pharmacy.last_24_hours'),'1'=>__('pharmacy.custom_date'),'2'=>__('pharmacy.date_range')], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - - -
    - {{ Form::label('search_patient', 'Search By Patient') }} -
    - -
    -
    - -
    -

    - {{ Form::button(__('pharmacy.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    -
    -
    - @if($search_text !== 0) -

    {{ $search_text }}

    - @endif - {{ Form::close() }} -
    -
    - - @if(count($inpatients) > 0) -
    - {{ Form::open(['route' => 'pharmacy.store_ward_dispensing_per_chart', 'class' => 'typeahead', 'method' => 'ANY']) }} - -
    -
    -
    -
    - - - - - - - - - - - - - - @if(count($inpatients) > 0) - @foreach($inpatients as $in_patient) - @php - $original_ward_presc = \Streamline\Models\WardTreatment::where(['patient_id' => $in_patient->patient_id, 'episode_id' => $in_patient->episode_id])->get(); - $stopped_ward_drugs_array = []; - - foreach ($original_ward_presc as $presc_record) { - $stopped_drugs_array = is_null($presc_record->stopped_drugs) ? [] : explode(",", $presc_record->stopped_drugs); - $stopped_ward_drugs_array = array_merge($stopped_ward_drugs_array, $stopped_drugs_array); - } - @endphp - - - - - - - - - - @foreach($ordered_cancer_protocols as $ordered_cancer_protocol) - - - - - @endforeach - @php $count++; @endphp - @endforeach - @endif - -
    #{{ __('pharmacy.patient_name') }}{{ __('pharmacy.ward') }}{{ __('pharmacy.date_of_admission') }}{{ __('pharmacy.drugs_given_so_far') }}{{ __('pharmacy.drug_and_qty_given') }}{{ __('pharmacy.action') }}
    - {{ $count }} - - {{ ucwords(strtolower(get_full_name($in_patient->patient_id, "id", "first_name", "last_name", "patients"))) }} - ({{ get_name($in_patient->patient_id, "id", "number", "patients") }}) - - {{ get_name($in_patient->ward_id, "id", "name", "wards") }} - - {{ streamline_date($in_patient->created_at) }} - - @php $ward_quantities_given_option2 = DB::table('ward_treatment_dispensations')->where(['patient_id' => $in_patient->patient_id, 'episode_id' => $in_patient->episode_id])->groupBy('drug_id')->selectRaw('*, sum(quantity_given) as quantity_given')->get(); @endphp - - @if(count($ward_quantities_given_option2) > 0) - - - - - - - @php - $dispensation_details = \Streamline\Models\WardTreatmentDispensation::where(['patient_id' => $in_patient->patient_id, 'episode_id' => $in_patient->episode_id, 'drug_id' => $ward_quantities_given_option2[0]->drug_id])->get(); - @endphp - - - - - - @if(count($ward_quantities_given_option2) > 1) - - - - @endif -
    {{ __('pharmacy.drug_name') }} {{ __('pharmacy.date') }} {{ __('pharmacy.quantity') }}
    {{ get_name($ward_quantities_given_option2[0]->drug_id, "id", "name", "drugs") }}{{ streamline_date_time($dispensation_details[0]->created_at) }}{{ $dispensation_details[0]->quantity_given }}
    {{ __('pharmacy.view_more') }}
    - @endif -
    -

    - - - - - - -
    - @if(count($ward_quantities_given_option2) > 0) - @foreach($ward_quantities_given_option2 as $patient_record) -
    -
    - -
    -
    -
    - @if (in_array($patient_record->drug_id, $stopped_ward_drugs_array)) - - @else - - @endif -
    -
    - - - - -
    -
    - - - @endforeach - @endif -
    - - - @php - $ordered_cancer_protocols = \Illuminate\Support\Facades\DB::table('ordered_cancer_protocols') - ->whereNull('deleted_at')->where('protocol_status', 0)->where('inpatient_id', $in_patient->id)->get(); - @endphp - - @if(count($ordered_cancer_protocols) > 0) -
    - -

    - - @foreach($ordered_cancer_protocols as $ordered_cancer_protocol) -
    -
    -

    {{ $cancer_protocols[$ordered_cancer_protocol->protocol_id] }}

    - -
    - -
    -
    - @endforeach - @endif -
    - {{ __('investigations.select_patient') }} -

    - {{ __('pharmacy.go_to_inpatient_sheet') }} -

    - -
    -
    - -
    - - - - {{ __('pharmacy.click') }} {{ __('pharmacy.submit_chart') }} {{ __('pharmacy.to_confirm_dispensations_for_approval') }}.
    - -
    -
    -
    -
    -
    - {{ Form::close() }} -
    - @endif -
    -
    -
    -
    - - - - - -@endsection - -@push('scripts') - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/ward_dispensing_per_chart_report.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/ward_dispensing_per_chart_report.blade.php deleted file mode 100755 index e4502bb4..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/pharmacy/ward_dispensing_per_chart_report.blade.php +++ /dev/null @@ -1,270 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('pharmacy.incoming_ward_chart') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') - @foreach ($errors->all() as $error) -
    {{ $error }}
    - @endforeach -
    -
    - - @include('pharmacy::pharmacy.ward_dispensing_menu') - -
    -
    -
    -
    -
    - -
    - {{ Form::open(['route' => 'pharmacy.ward_dispensing_per_chart_report', 'class' => 'typeahead', 'method' => 'ANY', 'role' => 'search']) }} - -
    -
    -
    - {{ Form::label('ward_id', __('pharmacy.wards')) }} - {{ Form::select('ward_id', $wards, '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    - {{ Form::label('search_by', __('pharmacy.admission_date')) }} - {{ Form::select('search_by', ['3'=>__('pharmacy.all_records'),'0'=>__('pharmacy.last_24_hours'),'1'=>__('pharmacy.custom_date'),'2'=>__('pharmacy.date_range')], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - - -
    -

    - {{ Form::button(__('pharmacy.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    -
    -
    -
    -
    - {{ __('pharmacy.showing_results_from') }} : -

    {{ is_null($ward_id) ? __('pharmacy.show_patients_all_wards') : ($ward_id == 0 ? 'All wards' : get_name($ward_id, 'id', 'name', 'wards')) }} {!! is_null($search_by) ? 'in the last 24 hours' : '' !!}

    -
    -
    - {{ Form::close() }} -
    -
    - -
    -
    -
    -
    - @php - $count = 1; - @endphp -
    - - - - - - - - - - - - - - @if(count($ward_chart_approvals) > 0) - @foreach($ward_chart_approvals as $approval_record) - - - - - - - - - - @php $count++; @endphp - @endforeach - @endif - -
    #Date chart was submittedDate chart was approved and dispensedWardRequested ByApproved ByAction
    - {{ $count }} - - {{ streamline_date_time($approval_record->incoming_chart->created_at) }} - - {{ streamline_date_time($approval_record->created_at) }} - - {{ get_name($approval_record->ward_id, "id", "name", "wards") == "N/A" ? "All wards" : get_name($approval_record->ward_id, "id", "name", "wards") }} - - {{ is_null($approval_record->incoming_chart->updated_by) ? get_full_name($approval_record->incoming_chart->created_by, "id", "first_name", "last_name", "users") : get_full_name($approval_record->incoming_chart->updated_by, "id", "first_name", "last_name", "users") }} - - {{ get_full_name($approval_record->created_by, "id", "first_name", "last_name", "users") }} - - {{ Form::open(['url' => 'ward_chart_report_details'])}} - - {{ Form::hidden('approval_id', $approval_record->id)}} - - {{ Form::close() }} -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -@endsection -@push('scripts') - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/prescription_errors/index.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/prescription_errors/index.blade.php deleted file mode 100755 index bde9a980..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/prescription_errors/index.blade.php +++ /dev/null @@ -1,152 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('prescription_errors.prescription_errors') }}

    -
    -
    - -
    -
    - -
    - {{ Form::open(['route' => 'view_prescription_errors' , 'data-toggle' => 'validator']) }} -
    -
    -
    -
    - {{ Form::label('start_date',__('prescription_errors.date_from')) }} - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'start_date']) }} -
    -
    -
    -
    - {{ Form::label('end_date',__('prescription_errors.date_to')) }} - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'end_date']) }} -
    -
    -
    -
    - {{ Form::button(__('prescription_errors.search'),['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    -
    - {{ Form::close() }} -
    - -
    -
    -

    {{ $search_text }}

    - -

    {{ __('prescription_errors.export_data_to_copy_csv_pdf_print') }}

    -
    - - - - - - - - - - - - - - - @foreach($prescription_errors as $record) - @php - // an error fixed on 30 Jan 2020 where all prescriptions where - // creating a prescription error - if (is_null($record->severity_of_error)){ - continue; - } - - // old system was serializing and the new system is using comma separeted - if (@unserialize($record->type_of_error)){ - $error_types_array = @unserialize($record->type_of_error); - } else { - $error_types_array = explode(",", $record->type_of_error); - } - @endphp - - - - - - - - - - - - @endforeach - - -
    {{ __('prescription_errors.name_of_prescriber') }}{{ __('prescription_errors.error_type') }}{{ __('prescription_errors.severity') }}{{ __('prescription_errors.date') }}{{ __('prescription_errors.patient') }}{{ __('prescription_errors.pharmacist') }}{{ __('prescription_errors.comments') }}
    {{ get_full_name($record->prescriber, 'id', 'first_name', 'last_name', 'users') }} -
      - @foreach ($error_types_array as $error_type) -
    1. {{ $error_type }}
    2. - @endforeach -
    -
    {{ $record->severity_of_error }}{{ streamline_date_time($record->created_at) }}{{ get_full_name($record->patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($record->patient_id, 'id', 'number', 'patients') }}){{ get_full_name($record->pharmacist, 'id', 'first_name', 'last_name', 'users') }}{{ $record->comment }} - {{ __('prescription_errors.view_details') }} - - {{ __('prescription_errors.select_patient') }} -
    -
    - - {{ $prescription_errors->links() }} -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/prescription_errors/view_prescription_error_details.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/prescription_errors/view_prescription_error_details.blade.php deleted file mode 100755 index 5d2ff476..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/prescription_errors/view_prescription_error_details.blade.php +++ /dev/null @@ -1,182 +0,0 @@ -@extends('layouts.main') - -@push('styles') -@endpush - -@section('content') - -
    -
    -

    {{ __('prescription_errors.prescription_error_details') }}

    -
    - -
    - -
    - @php - // old system was serializing and the new system is using comma separeted - if (@unserialize($prescription_error->type_of_error)){ - $error_types_array = @unserialize($prescription_error->type_of_error); - } else { - $error_types_array = explode(",", $prescription_error->type_of_error); - } - @endphp - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('prescription_errors.patient') }}{{ get_full_name($prescription_error->patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($prescription_error->patient_id, 'id', 'number', 'patients') }}){{ __('prescription_errors.date') }}{{ streamline_date_time($prescription_error->created_at) }}{{ __('prescription_errors.error_type') }} -
      - @foreach ($error_types_array as $error_type) -
    1. {{ $error_type }}
    2. - @endforeach -
    -
    {{ __('prescription_errors.severity') }}{{ $prescription_error->severity_of_error }}{{ __('prescription_errors.prescriber') }}{{ get_full_name($prescription_error->prescriber, 'id', 'first_name', 'last_name', 'users') }}{{ __('prescription_errors.pharmacist') }}{{ get_full_name($prescription_error->pharmacist, 'id', 'first_name', 'last_name', 'users') }}
    {{ __('prescription_errors.comments') }}{{ $prescription_error->comment }}{{ __('prescription_errors.view_patient_details') }}
    - -
    - -
    - - - - - - - - - - - - @php - $prescribed_records = explode(",", $prescribed_drugs_array['drugs']); - $altered_records = explode(",", $altered_drugs_array['drugs']); - @endphp - - - - - - @php - $prescribed_records = explode(",", $prescribed_drugs_array['dose']); - $altered_records = explode(",", $altered_drugs_array['dose']); - @endphp - - - - - - @php - $prescribed_records = explode(",", $prescribed_drugs_array['drug_frequency']); - $altered_records = explode(",", $altered_drugs_array['drug_frequency']); - @endphp - - - - - - @php - $prescribed_records = explode(",", $prescribed_drugs_array['instructions']); - $altered_records = explode(",", $altered_drugs_array['instructions']); - @endphp - - - - - - @php - $prescribed_records = explode(",", $prescribed_drugs_array['duration']); - $altered_records = explode(",", $altered_drugs_array['duration']); - @endphp - - - - - - @php - $prescribed_records = explode(",", $prescribed_drugs_array['quantity_dispensed']); - $altered_records = explode(",", $altered_drugs_array['quantity_dispensed']); - @endphp - - - - -
    {{ __('prescription_errors.prescribed_record') }}{{ __('prescription_errors.altered_record') }}
    {{ __('prescription_errors.drugs') }} - @foreach($prescribed_records as $record) - -> {{ get_name($record, 'id', 'name', 'drugs') }}
    - @endforeach -
    - @foreach($altered_records as $record) - -> {{ get_name($record, 'id', 'name', 'drugs') }}
    - @endforeach -
    {{ __('prescription_errors.dose') }} - @foreach($prescribed_records as $record) - -> {{ $record }}
    - @endforeach -
    - @foreach($altered_records as $record) - -> {{ $record }}
    - @endforeach -
    {{ __('prescription_errors.frequency') }} - @foreach($prescribed_records as $record) - -> {{ get_name($record, 'id', 'name', 'dosage_frequencies') }}
    - @endforeach -
    - @foreach($altered_records as $record) - -> {{ get_name($record, 'id', 'name', 'dosage_frequencies') }}
    - @endforeach -
    {{ __('prescription_errors.instructions') }} - @foreach($prescribed_records as $record) - -> {{ $record }}
    - @endforeach -
    - @foreach($altered_records as $record) - -> {{ $record }}
    - @endforeach -
    {{ __('prescription_errors.duration') }} - @foreach($prescribed_records as $record) - -> {{ $record }}
    - @endforeach -
    - @foreach($altered_records as $record) - -> {{ $record }} {{ __('prescription_errors.days') }}
    - @endforeach -
    {{ __('prescription_errors.quantity_dispensed') }} - @foreach($prescribed_records as $record) - -> {{ $record }}
    - @endforeach -
    - @foreach($altered_records as $record) - -> {{ $record }}
    - @endforeach -
    -
    -
    - -@endsection - -@push('scripts') -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/prescriptions/create.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/prescriptions/create.blade.php deleted file mode 100755 index 845fb0f7..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/prescriptions/create.blade.php +++ /dev/null @@ -1,1205 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    - @if(session()->has('alter_episode_id')) -

    Alter Prescriptions

    - @else -

    {{ __('prescriptions.treatment_for_episode') }}:{{ streamline_date(get_name($episode_id, 'id', 'created_at', 'patient_episodes')) }}

    - @endif -
    - -
    - -
    -
    - @include('patients::allergies.header') -
    -
    -
    - - @if( Auth::user()->can('view-previous-patient-prescriptions')) - @if(count($previous_treatments) > 0) -
    -

    {{ __('prescriptions.previous_prescriptions') }}

    - -
    - - - - - - - - - - - - - @foreach($previous_treatments as $past_treatment) - @php - $past_drug_ids_array = explode(",", $past_treatment->drugs); - $past_dosage_array = explode(",", $past_treatment->doses); - $past_quantities_array = explode(",", $past_treatment->quantities_dispensed); - $past_frequencies_array = explode(",", $past_treatment->frequencies); - $past_durations_array = explode(",", $past_treatment->durations); - $past_instructions_array = explode(",", $past_treatment->instructions); - @endphp - - - - - - - - - - - - @endforeach - -
    {{ __('prescriptions.date') }}{{ __('prescriptions.clinic') }}{{ __('prescriptions.primary_diagnosis') }}{{ __('prescriptions.other_diagnoses') }}{{ __('prescriptions.prescribed_by') }}
    - {{ streamline_date_time($past_treatment->created_at) }} -
    - @if(check_if_episode_is_a_followup($past_treatment->episode_id)) -
    ({{ __('patient_episode.review_from') }} {{ streamline_date(get_name(get_name($past_treatment->episode_id, 'id', 'parent_episode_id', 'patient_episodes'), 'id', 'created_at', 'patient_episodes')) }})
    - @endif -
    - {{ get_name(get_name($past_treatment->episode_id, 'id', 'clinic_id', 'patient_episodes'), "id", "name", "clinics") }} - - {{ get_name(get_name($past_treatment->episode_id, 'episode_id', 'primary_diagnosis', 'consultations'), 'id', 'name', 'diagnoses') }} - {{ get_full_name($past_treatment->created_by, "id", "first_name", "last_name", "users") }} - {{ __('prescriptions.view_details') }} -
    -
    - @if(Auth::user()->can('view-patients-home')) - {{ __('prescriptions.patient_home') }} - @endif -
    - @endif - @endif - - {{ Form::open(['route' => 'prescriptions.process' , 'data-toggle' => 'validator', 'id' => 'selected_drugs_form']) }} - -
    - @if (count($chronic_drugs_array) > 0) - - - - @foreach ($chronic_drugs_array as $chronic_drug) - @if(isset($drugs[$chronic_drug->drug_id])) - - - - - @endif - @endforeach - -
    Patient's Chronic Drugs
    {{ $drugs[$chronic_drug->drug_id] }}
    - -
    - @endif - - - - {{ Form::hidden('is_progressive_treatment_setup', 0, ['id' => 'is_progressive_treatment_setup']) }} - -
    - - - - - - - - - @php $patient_insurance_status = patient_insurance_status($patient_id); @endphp - - {{ Form::hidden('patient_id', $patient_id, ['id' => 'patient_id']) }} - {{ Form::hidden('patient_insurance_status', $patient_insurance_status, ['id' => 'patient_insurance_status']) }} - - @if(!is_out_of_stock_message_disabled()) - {{ Form::hidden('show_out_of_stock_message', 1, ['id' => 'show_out_of_stock_message']) }} - @endif - - @php - $option_drugs = ""; - foreach ($drugs as $key => $value){ - $drug_name = str_replace("'", '', $value); - $drug_name = str_replace("\"", '', $drug_name); - $drug_name = str_replace("+", '', $drug_name); - //$drug_name = preg_replace('/[^A-Za-z0-9\-]/', '', $drug_name); - $option_drugs .= ""; - } - - $option_frequencies = ""; - foreach ($dosage_frequencies as $key => $value){ - $option_frequencies .= ""; - } - - $counter = 0; - $total_amount = 0; - $first_dose_total_amount = 0; - $treatment_opd_progressive_id = 0; - @endphp - - - @if($treatment) - - - @php - if ($treatment->is_treatment_progressive != 0) { - $treatment_progressive = Streamline\Models\TreatmentOpdProgressive::find($treatment->is_treatment_progressive); - } - - if (isset($treatment_progressive) && $treatment_progressive->treatment_ids == $treatment->id) { - $treatment_opd_progressive_id = $treatment_progressive->id; - $progressive_quantity_dispensed_array = explode(",", $treatment->quantities_dispensed); - $progressive_durations_array = explode(",", $treatment->durations); - $treatment = $treatment_progressive; - $drugs_array = explode(",", $treatment->drugs); - $dosage_array = explode(",", $treatment->dose); - $frequencies_array = explode(",", $treatment->drug_frequency); - $duration_array = explode(",", $treatment->durations); - $quantity_dispensed_array = explode(",", $treatment->quantities_to_dispense); - $instructions_array = explode(",", $treatment->instruction); - $purchased_elsewhere_array = explode(",", $treatment->purchased_elsewhere); - } else { - $drugs_array = explode(",", $treatment->drugs); - $progressive_quantity_dispensed_array = array_fill(0, count($drugs_array), 0); - $progressive_durations_array = array_fill(0, count($drugs_array), 0); - $dosage_array = explode(",", $treatment->doses); - $frequencies_array = explode(",", $treatment->frequencies); - $duration_array = explode(",", $treatment->durations); - $quantity_dispensed_array = explode(",", $treatment->quantities_dispensed); - $instructions_array = explode(",", $treatment->instruction); - $purchased_elsewhere_array = explode(",", $treatment->purchased_elsewhere); - } - - $total_drug_price = 0; - $eye_array = explode(",", $treatment->eye); - @endphp - - - @for ($x = 0; $x < count($drugs_array); $x++) - - @php - $treament_drug = \DB::table('drugs')->where('id',$drugs_array[$x])->first(); - - if(!is_numeric($quantity_dispensed_array[$x])) { - $quantity_dispensed_array[$x] = 0; - } - - // check if the patient category is attached to a price list - $treatment_drug_price = 0; - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - - if (is_numeric($drugs_array[$x])) { - if ($patient_insurance_status == 1) { - $treatment_drug_price = get_item_insurance_co_payment($patient_id, $drugs_array[$x], 4, false, 0); - } else { - if ($price_list_id) { - $treatment_drug_price = get_price_list_category_price($price_list_id, 3, $drugs_array[$x]); - } else { - $treatment_drug_price = get_name($drugs_array[$x], "id", "non_insured_price", "drugs"); - } - } - - if (!is_numeric($treatment_drug_price)) { - $treatment_drug_price = 0; - } - - $total_amount += $treatment_drug_price * $quantity_dispensed_array[$x]; - - $reference_array = explode(",", $treament_drug->reference_areas); - $reference_name = explode(",", $treament_drug->reference_name); - } else { - continue; - } - @endphp - - - - - @php $counter++; @endphp - @endfor - @else - - - - @endif - - @if( Auth::user()->can('add-row-on-prescription')) - - - - @endif -
    -
    -
    {{ __('prescriptions.drug') }}
    -
    {{ __('prescriptions.dosage') }}
    -
    {{ __('prescriptions.prompt') }}
    -
    {{ __('prescriptions.duration') }}
    -
    {{ __('prescriptions.dispense') }}
    - - - -
    {{ __('prescriptions.instructions') }}
    -
    -
    -
    -
    -
    -
    -
    - {{ Form::select('drug_id[]', $drugs, $drugs_array[$x], ['class' => 'form-control compulsory drugs_id_class', 'id' => 'drugs_id_' . $counter]) }} - - - - - - - - - - - @php $pharm_comment = trim($treament_drug->pharmacy_comment); @endphp -
    - @for ($j = 0; $j < count($reference_array); $j++) - @if(isset($reference_array[$j]) && isset($reference_name[$j])) - {{ $reference_name[$j] }}
    - @endif - @endfor -
    - -
    -   
    - @if (!is_chi_enabled() && !is_drug_covered_by_pay_later_category(get_name($patient_id, 'id', 'category_id', 'patients'), $treament_drug->id)) - - Not covered by {{ get_name(get_name($patient_id, 'id', 'category_id', 'patients'), 'id', 'name', 'patient_categories') }} - - @endif -
    -
    - @if (is_chi_enabled()) - @if (is_patient_item_covered($patient_id, $drugs_array[$x], 4)) -   
    Covered by CHI - @else -   
    Not covered by CHI - @endif - @endif -
    - -
    -
    - - {{ Form::select('eye[]', [2 => 'Both', 0 => 'Left', 1 => 'Right'], $eye_array[$x] ?? 2, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - @if(!is_incoming_prescriptions_feature_enabled()) -
    - Tick if drug will be purchased elsewhere - @endif -
    -
    -
    -
    -
    - - {{ get_name($treament_drug->unit_id, 'id', 'name', 'drug_units') }} -
    -
    - {{ Form::select('frequency[]', $dosage_frequencies, $frequencies_array[$x], ['class' => 'form-control frequency_class', 'id' => 'frequency' . $counter]) }} - -
    -
    -
    -
    -
    - {!! read_more($treament_drug->prompt, 'prompt_short' . $treament_drug->id, 'prompt_long' . $treament_drug->id) !!} - -
    -
    -
    -
    -
    - - Days -
    -
    -
    -
    -
    -
    - -
    -
    -
    - - - -
    - -
    -
    -
    - @if($counter == 0) - - @else - - @endif -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - - - - - -
      
    -
    - -
    -
    - - - - -
    -
    - - @if(!is_incoming_prescriptions_feature_enabled()) -
    - Tick if drug will be purchased elsewhere - @endif -
    -
    -
    -
    -
    - - -
    -
    - - -
    -
    -
    -
    -
    -
    -
    - Days -
    -
    -
    -
    -
    -
    - -
    -
    -
    - - - -
    - -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - -
    -
    -
    -
    - -
    -
    -
    -
    -
    - - @if(view_prescription_price_on_order()) -

    Total: {{ ugandan_shillings($total_amount) }}

    - @endif - - - -
    - - {{ Form::label('order_comments', 'Treatment Order Comments') }} - - -

    - - @if(str_replace(url('/'), '', url()->previous()) != "/confirm_prescriptions") - Ignore prescription - @endif - - - - @if(!session()->has('alter_episode_id')) - - @endif - - @if(session()->has('alter_episode_id')) -
    - -

    Alter Prescriptions Details

    -
    -
    - {{ __('pharmacy.type_of_error') }} - - - - - - - - - - - - - - - - - - - -
    {{ __('pharmacy.wrong_dosage') }}
    - -
    -
    {{ __('pharmacy.wrong_frequency') }}
    -
    -
    {{ __('pharmacy.inadequate_funds') }}
    -
    -
    {{ __('pharmacy.other') }}
    -
    -
    - -
    - {{ __('pharmacy.severity_of_error') }} - - - - - - - - - - - - - - - -
    {{ __('pharmacy.mild') }}
    - -
    -
    {{ __('pharmacy.moderate') }}
    -
    -
    {{ __('pharmacy.severe') }}
    -
    -
    - -
    -
    -
    {{ __('pharmacy.comments') }}
    -
    - -
    -
    -
    -
    - -
    - - - -

    - @endif -
    - - {{ Form::close() }} - -
    -

    {{ __('prescriptions.treatment_for_given_episode') }}

    -
    - - - - - - - - - - - - - - - @if(count($dispensed_drugs) > 0) - @foreach($dispensed_drugs as $treatment) - @php - $drugs_array = explode(",", $treatment->drugs); - $dosage_array = explode(",", $treatment->doses); - $dosage2_array = explode(",", $treatment->dose2); - $frequencies_array = explode(",", $treatment->frequencies); - $duration_array = explode(",", $treatment->durations); - $quantity_dispensed_array = explode(",", $treatment->quantities_dispensed); - $instructions_array = explode(",", $treatment->instruction); - $purchased_elsewhere_array = is_null($treatment->purchased_elsewhere) ? [] : explode(",", $treatment->purchased_elsewhere); - @endphp - @for($x = 0; $x < count($drugs_array); $x++) - @php - $frequency_name = get_name($frequencies_array[$x], 'id', 'name', 'dosage_frequencies'); - $unit = get_name($drugs_array[$x], 'id', 'name', 'drug_units'); - $unit = $unit=="N/A"?"":$unit; - $drug_unit = "" . $unit . ""; - $dose2 = (empty($dosage2_array[$x])) ? "" : " | " . $dosage2_array[$x] . $drug_unit; - - $status_text = ""; - - if($treatment->payment_status == 1) { - $status_text .= "Paid, "; - } else { - $status_text .= "Not Paid, "; - } - - if($treatment->dispense_status == 1) { - $status_text .= "Dispensed"; - } else { - $status_text .= "Not Dispensed"; - } - - if($treatment->altered == 1) { - $status_text .= ", Altered"; - } - @endphp - - - - - - - @if(isset($purchased_elsewhere_array[$x]) && $purchased_elsewhere_array[$x] == 1) - - @else - - @endif - - - - @endfor - @endforeach - @else - - - - @endif - - -
    {{ __('prescriptions.date') }}{{ __('prescriptions.drug') }}{{ __('prescriptions.dosage') }}{{ __('prescriptions.duration') }}{{ __('prescriptions.quantity') }}{{ __('prescriptions.status') }}{{ __('prescriptions.instructions') }}
    {{ streamline_date_time($treatment->updated_at) }}{{ get_name($drugs_array[$x], 'id', "name", 'drugs') }}{{ $dosage_array[$x] }} {!! $drug_unit !!} {{ $dose2 }}    {{ $frequency_name }}{{ $duration_array[$x] }}{{ $quantity_dispensed_array[$x] }}Purchased From Elsewhere{{ $status_text }} - {{ isset($instructions_array[$x]) ? trim($instructions_array[$x]) : 'N/A' }} - - @if(array_key_exists($drugs_array[$x], $drugs)) - - @endif -
    {{ __('prescriptions.no_treatment_history') }}
    -
    -
    -@endsection - -@push('scripts') - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/prescriptions/drug_refill.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/prescriptions/drug_refill.blade.php deleted file mode 100755 index ca91dd99..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/prescriptions/drug_refill.blade.php +++ /dev/null @@ -1,938 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    - -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - - -
    -
    - - @include('flash::message') - @foreach ($errors->all() as $error) -
    {{ $error }}
    - @endforeach -
    - {{ Form::open(['route' => 'prescriptions.display_selected_drugs' , 'id'=>'prescriptions_form']) }} - - - {!! session()->get("ward_prescription") == 1 ? "__('prescriptions.ward_prescription')" : "" !!} - -
    - {{ Form::label('drugs', __("prescriptions.prescribe_drugs")) }} -
    -
    - {{ Form::select('prescription_drugs[]',$drugs,'',['id'=>'prescription-drugs','multiple'=>true,'class' => 'form-control col-sm-8 compulsory prescription-drugs']) }} -
    -
    - {{ Form::button('Confirm Treatment',['type'=>'submit','class'=>'btn btn-secondary waves-effect waves-light m-r-10','style'=>'padding: .6rem 1.2rem;']) }} -
    -
    -
    - - {{ Form::close() }} -
    -
    -
    - @php - $fre_drop = ""; - $fre_query = "select * from dosage_frequencies order by name"; - $results = \DB::select($fre_query); - foreach ($results as $result){ - $fre_drop .= ""; - } - @endphp - -
    -
    -
    -
    - {{ Form::open(['route' => 'prescriptions.process' , 'data-toggle' => 'validator', 'id' => 'selected_drugs_form']) }} - - - - - - - - - - - - - - - - - - - - @if($patient_prescriptions) - @if(count($patient_prescriptions) > 0) - @foreach($patient_prescriptions as $prescription) - @php - $patient_is_allergic = \Modules\Pharmacy\Http\Controllers\PrescriptionsController::checkPatientAllergies($patient_id, $prescription->category_id); - @endphp - - - - - - - - - - - @endforeach - @endif - - - - - - @else - - @endif - - - @if(count($dispensed_drugs_from_parent_episode)) - - - - - - - - - - @foreach($dispensed_drugs_from_parent_episode as $dispensed_treatment) - @if($dispensed_treatment->altered == 0) - @php - $drugs_array = explode(",", $dispensed_treatment->drugs); - $dosage_array = explode(",", $dispensed_treatment->doses); - $dosage2_array = explode(",", $dispensed_treatment->dose2); - $frequencies_array = explode(",", $dispensed_treatment->frequencies); - $duration_array = explode(",", $dispensed_treatment->durations); - $quantity_dispensed_array = explode(",", $dispensed_treatment->quantities_dispensed); - $instructions_array = explode(",", $dispensed_treatment->instruction); - @endphp - - @for($j = 0; $j < count($drugs_array); $j++) - @php - $drug_details = \Streamline\Models\Drug::find($drugs_array[$j]); - $frequency_name = get_name($frequencies_array[$j], 'id', 'name', 'dosage_frequencies'); - $unit = get_name($drugs_array[$j], 'id', 'name', 'drug_units'); - $unit = $unit=="N/A"?"":$unit; - $drug_unit = "" . $unit . ""; - $dose2 = (empty($dosage2_array[$j])) ? "" : " | " . $dosage2_array[$j] . $drug_unit; - @endphp - - - - - - - - - - - - - - - - @endfor - @else - @php - $drugs_array = explode(",", get_name($dispensed_treatment->altered, 'id', 'drugs', 'patient_dispensings')); - $dosage_array = explode(",", get_name($dispensed_treatment->altered, 'id', 'dose', 'patient_dispensings')); - $dosage2_array = explode(",", get_name($dispensed_treatment->altered, 'id', 'dose2', 'patient_dispensings')); - $frequencies_array = explode(",", get_name($dispensed_treatment->altered, 'id', 'drug_frequency', 'patient_dispensings')); - $duration_array = explode(",", get_name($dispensed_treatment->altered, 'id', 'duration', 'patient_dispensings')); - $quantity_dispensed_array = explode(",", get_name($dispensed_treatment->altered, 'id', 'quantity_dispensed', 'patient_dispensings')); - $instructions_array = explode(",", get_name($dispensed_treatment->altered, 'id', 'instructions', 'patient_dispensings')); - @endphp - - @for($k = 0; $k < count($drugs_array); $k++) - @php - $drug_details = \Streamline\Models\Drug::find($drugs_array[$k]); - $frequency_name = get_name($frequencies_array[$k], 'id', 'name', 'dosage_frequencies'); - $unit = get_name($drugs_array[$k], 'id', 'name', 'drug_units'); - $unit = $unit=="N/A"?"":$unit; - $drug_unit = "" . $unit . ""; - $dose2 = (empty($dosage2_array[$k])) ? "" : " | " . $dosage2_array[$k] . $drug_unit; - @endphp - - - - - - - - - - - - @endfor - @endif - @endforeach - @endif - - - - @if($treatment) - @php - $drugs_array = explode(",", $treatment->drugs); - $dosage_array = explode(",", $treatment->doses); - $frequencies_array = explode(",", $treatment->frequencies); - $duration_array = explode(",", $treatment->durations); - $quantity_dispensed_array = explode(",", $treatment->quantities_dispensed); - $total_drug_price = 0; - $instructions_array = explode(",", $treatment->instruction); - @endphp - - - - - - - - - - insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) ? "green" : "orange"; - echo "" - . "" - . ""; - ?> - - - - - - - - insurance_coverage == 1 && patient_insurance_status($patient_id) == 1){ - $drug_price = $treament_drug->insured_price * $quantity_dispensed_array[$x]; - } else { - $drug_price = $treament_drug->non_insured_price * $quantity_dispensed_array[$x]; - } - $total_drug_price += $drug_price; - echo ""; - ?> - - - - "; - } - } - $final_total = ugandan_shillings($total_drug_price); - ?> - - - - - - @endif - -
    #{{ __('prescriptions.drug') }}{{ __('prescriptions.dosage') }}{{ __('prescriptions.prompt') }}{{ __('prescriptions.duration') }}{{ __('prescriptions.dispense') }}{{ __('prescriptions.price') }}{{ __('prescriptions.instructions') }}
    Selected
    - @php - $total_stock = (($prescription->pharmacy_stock < 0) ? 0 : $prescription->pharmacy_stock) + (($prescription->store_stock < 0) ? 0 : $prescription->store_stock); - @endphp - @if ($total_stock > 0 && !$patient_is_allergic) - - - @endif - - @php - $insurance_color = ($prescription->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) ? "green" : "orange"; - @endphp - @if ($patient_is_allergic) - {{ __('prescriptions.patient_is_allergic') }}   - @endif - @if ($total_stock <= 0) - {{ __('prescriptions.out_of_stock') }} - @endif - {{ $prescription->name }} - pharmacy_comment); - $reference_array = explode(",", $prescription->reference_areas); - $reference_name = explode(",", $prescription->reference_name); - ?> - @for ($x = 0; $x < count($reference_array); $x++) - @if(isset($reference_array[$x]) && isset($reference_name[$x])) - {{ $reference_name[$x] }}
    - @endif - @endfor - @if (!empty($pharm_comment)) -
    {{ $pharm_comment }}
    - @endif -
    -
    -
    - - - unit_id); ?> - {{ $drugunit }} - -
    -
    - - - {{ __('prescriptions.add_dose') }} -
    -
    - -
    - prompt)): - echo '
    '; - echo $prescription->prompt; - echo "
    "; - endif; - - // Hidden field for Long Term - echo ""; - ?> - -
    - - - Duration in days - - - form_id); ?> - - - @if($prescription->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - - @else - - @endif - - - - - -
    {{ __('prescriptions.grand_total') }}
    {{ __('prescriptions.no_drugs_searched') }}
    {{ __('prescriptions.drug_refill_from') }} {{ streamline_date(get_name($parent_episode_id, 'id', 'created_at', 'patient_episodes')) }}
    - @php - $total_stock = $drug_details->pharmacy_stock; - @endphp - @if ($total_stock > 0) - - - @endif - - @php - $insurance_color = ($drug_details->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) ? "green" : "orange"; - @endphp - - @if ($total_stock <= 0) - {{ __('prescriptions.out_of_stock') }} - @endif - - {{ $drug_details->name }} - - pharmacy_comment); - $reference_array = explode(",", $drug_details->reference_areas); - $reference_name = explode(",", $drug_details->reference_name); - ?> - - - @for ($x = 0; $x < count($reference_array); $x++) - @if(isset($reference_array[$x]) && isset($reference_name[$x])) - {{ $reference_name[$x] }}
    - @endif - @endfor - - @if (!empty($pharm_comment)) -
    {{ $pharm_comment }}
    - @endif -
    -
    -
    - - - unit_id); ?> - {{ $drugunit }} - -
    -
    - - - {{ __('prescriptions.add_dose') }} -
    -
    - -
    - prompt)): - echo '
    '; - echo $drug_details->prompt; - echo "
    "; - endif; - - // Hidden field for Long Term - echo ""; - ?> - -
    - - @php $duration_with_days_text = explode(" ", $duration_array[$j]); @endphp - - - - {{ __('prescriptions.duration_in_days') }} - - - form_id); ?> - - - @if($drug_details->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - - @else - - @endif - - - - - -
    - @php - $total_stock = $drug_details->pharmacy_stock; - @endphp - - @if ($total_stock > 0) - - - @endif - - @php - $insurance_color = ($drug_details->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) ? "green" : "orange"; - @endphp - @if ($total_stock <= 0) - {{ __('prescriptions.out_of_stock') }} - @endif - {{ $drug_details->name }} - - pharmacy_comment); - $reference_array = explode(",", $drug_details->reference_areas); - $reference_name = explode(",", $drug_details->reference_name); - ?> - - @for ($x = 0; $x < count($reference_array); $x++) - @if(isset($reference_array[$x]) && isset($reference_name[$x])) - {{ $reference_name[$x] }}
    - @endif - @endfor - @if (!empty($pharm_comment)) -
    {{ $pharm_comment }}
    - @endif -
    -
    -
    - - - unit_id); ?> - {{ $drugunit }} - -
    -
    - - - {{ __('prescriptions.add_dose') }} -
    -
    - -
    - prompt)): - echo '
    '; - echo $drug_details->prompt; - echo "
    "; - endif; - - // Hidden field for Long Term - echo ""; - ?> - -
    - - @php $duration_with_days_text = explode(" ", $duration_array[$k]); @endphp - - - - {{ __('prescriptions.duration_in_days') }} - - - form_id); ?> - - - @if($drug_details->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - - @else - - @endif - - - - - -
    PendingPrint
    "; - - echo ""; - - echo "" - . "" . $treament_drug->name . ""; - $pharm_comment = trim($treament_drug->pharmacy_comment); - if (!empty($pharm_comment)): - echo "
    " . $pharm_comment . "
    "; - endif; - echo "
    -
    -
    - - - unit_id); - ?> - -
    - - -
    - -
    - " - . $treament_drug->prompt - . ""; - ?> - - - - - Duration in days - - - form_id); - ?> - - - @if($treament_drug->insurance_coverage == 1 && patient_insurance_status($patient_id) == 1) - - @else - - @endif - - - - " - . ugandan_shillings($drug_price) - . " - -
    Grand total {{ $final_total }}
    - - - - - {{ Form::close() }} -
    -
    -
    -
    - -
    -

    Treatment Given For This Episode

    -
    - - - - - - - - - - - - - - @if(count($dispensed_drugs) > 0) - @foreach($dispensed_drugs as $treatment) - @php - $drugs_array = explode(",", $treatment->drugs); - $dosage_array = explode(",", $treatment->doses); - $dosage2_array = explode(",", $treatment->dose2); - $frequencies_array = explode(",", $treatment->frequencies); - $duration_array = explode(",", $treatment->durations); - $quantity_dispensed_array = explode(",", $treatment->quantities_dispensed); - $instructions_array = explode(",", $treatment->instruction); - @endphp - @for($x = 0; $x < count($drugs_array); $x++) - @php - $frequency_name = get_name($frequencies_array[$x], 'id', 'name', 'dosage_frequencies'); - $unit = get_name($drugs_array[$x], 'id', 'name', 'drug_units'); - $unit = $unit=="N/A"?"":$unit; - $drug_unit = "" . $unit . ""; - $dose2 = (empty($dosage2_array[$x])) ? "" : " | " . $dosage2_array[$x] . $drug_unit; - @endphp - - - - - - - - - - @endfor - @endforeach - @else - - - - @endif - - -
    DATEDRUG NAMEDOSAGEDURATIONQUANTITYSTATUSINSTRUCTION
    {{ streamline_date_time($treatment->updated_at) }}{{ get_name($drugs_array[$x], 'id', "name", 'drugs') }}{{ $dosage_array[$x] }} {!! $drug_unit !!} {{ $dose2 }}    {{ $frequency_name }}{{ $duration_array[$x] }}{{ $quantity_dispensed_array[$x] }} - @if($treatment->altered == 0) - {{ __('prescriptions.dispensed') }} - @else - {{ __('prescriptions.altered_and_dispensed') }} - @endif - - {{ isset($instructions_array[$x]) ? trim($instructions_array[$x]) : 'N/A' }} -
    No treatment history for this episode
    -
    -
    -@endsection -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Resources/views/prescriptions/print_treatment.blade.php b/docker/statistics/Modules/Pharmacy/Resources/views/prescriptions/print_treatment.blade.php deleted file mode 100755 index 5bef8756..00000000 --- a/docker/statistics/Modules/Pharmacy/Resources/views/prescriptions/print_treatment.blade.php +++ /dev/null @@ -1,77 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ $patient->last_name }} {{ __('prescriptions.treatment_for_episode') }}:{{ streamline_date(get_name($episode_id, 'id', 'created_at', 'patient_episodes')) }}

    -
    - -
    - -
    -
    -
    -
    - {{ __('prescriptions.patient_treatment') }} - - - - - - - - - - - - - drugs); - $dosage_array = explode(",", $treatment->doses); - $dosage2_array = explode(",", $treatment->dose2); - $frequencies_array = explode(",", $treatment->frequencies); - $duration_array = explode(",", $treatment->durations); - $quantity_dispensed_array = explode(",", $treatment->quantities_dispensed); - $total_drug_price = 0; - $instructions_array = explode(",", $treatment->instruction); - ?> - - @for ($x = 0; $x < count($drugs_array); $x++) - - - - - - - @php - if(get_name($drugs_array[$x], "id", "insurance_coverage", "drugs") == 1 && patient_insurance_status($patient->id) == 1){ - $cost_price = get_name($drugs_array[$x], "id", "insured_price", "drugs"); - } else { - $cost_price = get_name($drugs_array[$x], "id", "non_insured_price", "drugs"); - } - - $drug_price = $cost_price * $quantity_dispensed_array[$x]; - $total_drug_price += $drug_price; - @endphp - - - - @endfor - - -
    #{{ __('prescriptions.drug') }}{{ __('prescriptions.dosage') }}{{ __('prescriptions.duration') }}{{ __('prescriptions.quantity') }}{{ __('prescriptions.total_cost') }}{{ __('prescriptions.instructions') }}
    {{ $x+1 }}{{ get_name($drugs_array[$x], 'id', 'name', 'drugs') }} {{ $dosage_array[$x] }} {{ get_name($frequencies_array[$x], 'id', 'name', 'dosage_frequencies') }} {{ $duration_array[$x] }} {{ $quantity_dispensed_array[$x] }} {{ ugandan_shillings($drug_price) }} {{ trim($instructions_array[$x]) }}
    {{ __('prescriptions.total') }}{{ ugandan_shillings($total_drug_price) }}
    -
    -
    -
    -
    -@endsection \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/Routes/api.php b/docker/statistics/Modules/Pharmacy/Routes/api.php deleted file mode 100644 index 7adb08f9..00000000 --- a/docker/statistics/Modules/Pharmacy/Routes/api.php +++ /dev/null @@ -1,18 +0,0 @@ -get('/pharmacy', function () { - return "Pharmacy"; -}); diff --git a/docker/statistics/Modules/Pharmacy/Routes/web.php b/docker/statistics/Modules/Pharmacy/Routes/web.php deleted file mode 100644 index dbfaf159..00000000 --- a/docker/statistics/Modules/Pharmacy/Routes/web.php +++ /dev/null @@ -1,124 +0,0 @@ - ['auth', 'disablebackbutton', 'user-locale','subscription-tracking', 'password-expiry']], function () { - /* Pharmacy Controller */ - Route::any('view_dispensing_details', 'PharmacyController@view_dispensing_details'); - Route::any('view_dispensing_details_error/{treatment_id}/{patient_id}', 'PharmacyController@view_dispensing_details'); - Route::any('dispense_prescription', 'PharmacyController@dispense_prescription'); - Route::any('pharmacy/edit_dispensing_details/{patient_id}/{treatment_id}', 'PharmacyController@edit_dispensing_details'); - Route::any('pharmacy/save_altered_prescription', 'PharmacyController@save_altered_prescription'); - Route::any('ward_dispensing', 'PharmacyController@ward_dispensing')->name('pharmacy.ward_dispensing'); - Route::any('view_ward_dispensing', 'PharmacyController@view_ward_dispensing')->name('pharmacy.view_ward_dispensing'); - Route::any('pharmacy_stock_sheet', 'PharmacyController@stock_sheet')->name('pharmacy.stock_sheet'); - Route::get('patient_dispensing_receipt/{dispensing_id}', 'PharmacyController@patient_dispensing_receipt'); - Route::any('requisition_for_drugs', 'PharmacyController@requisition_for_drugs')->name('pharmacy.requisition_for_drugs'); - Route::post('store_pharmacy_requisition', 'PharmacyController@store_requisition')->name('pharmacy.store_requisition'); - Route::any('select_temporary_requisition', 'PharmacyController@select_temporary_requisition')->name('pharmacy.select_temporary_requisition'); - Route::post('edit_temporary_requisition', 'PharmacyController@edit_temporary_requisition'); - Route::any('previous_drug_requisitions', 'PharmacyController@previous_drug_requisitions')->name('pharmacy.previous_requisitions'); - Route::post('edit_previous_requisition', 'PharmacyController@edit_previous_requisition'); - Route::post('update_previous_requisition', 'PharmacyController@update_previous_requisition'); - Route::any('/pharmacy/delete_requisition/{id}', 'PharmacyController@delete_requisition'); - Route::any('/pharmacy/delete_temporary_requisition/{id}', 'PharmacyController@delete_temporary_requisition'); - Route::any('/pharmacy/search', 'PharmacyController@search')->name('pharmacy.search'); - Route::any('/pharmacy/cancel_dispensation/{id}', 'PharmacyController@cancel_dispensation'); - Route::any('/pharmacy/cancel_prescriptions/{treatment_id}', 'PharmacyController@cancel_prescriptions'); - Route::any('/pharmacy/restore_deleted_ordered_treatments/{treatment_id}', 'PharmacyController@restore_deleted_ordered_treatments'); - Route::any('/pharmacy/view_prescriptions_to_cancel', 'PharmacyController@view_prescriptions_to_cancel')->name('pharmacy.view_prescriptions_to_cancel'); - Route::any('/pharmacy/view_cancelled_prescriptions', 'PharmacyController@view_cancelled_prescriptions')->name('pharmacy.view_cancelled_prescriptions'); - Route::any('/pharmacy/cancel_progressive_prescriptions/{treatment_id}', 'PharmacyController@cancel_progressive_prescriptions'); - Route::any('/pharmacy/restore_deleted_progressive_prescriptions/{treatment_id}', 'PharmacyController@restore_deleted_progressive_prescriptions'); - Route::any('/pharmacy/view_cancelled_progressive_prescriptions', 'PharmacyController@view_cancelled_progressive_prescriptions')->name('pharmacy.view_cancelled_progressive_prescriptions'); - Route::any('update_pharmacy_stock_sheet', 'PharmacyController@update_stock_sheet')->name('update_pharmacy_stock_sheet'); - Route::resource('pharmacy', 'PharmacyController'); - Route::any('print_requisition_receipt/{id}', 'PharmacyController@print_requisition_receipt'); - - /* Pharmacy requisition */ - Route::any('drug_requisition_search', 'PharmacyController@drug_requisition_search')->name('pharmacy.drug_requisition_search'); - - /* ward dispensing per chart */ - Route::any('ward_dispensing_per_chart', 'PharmacyController@ward_dispensing_per_chart')->name('pharmacy.ward_dispensing_per_chart'); - Route::any('store_ward_dispensing_per_chart', 'PharmacyController@store_ward_dispensing_per_chart')->name('pharmacy.store_ward_dispensing_per_chart'); - Route::any('approve_ward_dispensing_per_chart/{incoming_ward_chart_id}', 'PharmacyController@approve_ward_dispensing_per_chart')->name('pharmacy.approve_ward_dispensing_per_chart'); - Route::any('cancel_ward_dispensing_per_chart/{incoming_ward_chart_id}', 'PharmacyController@cancel_ward_dispensing_per_chart')->name('pharmacy.cancel_ward_dispensing_per_chart'); - Route::any('store_approved_dispensings_per_chart', 'PharmacyController@store_approved_dispensings_per_chart')->name('pharmacy.store_approved_dispensings_per_chart'); - Route::any('patient_drugs_given_so_far/{patient_id}/{episode_id}', 'PharmacyController@patient_drugs_given_so_far')->name('pharmacy.patient_drugs_given_so_far'); - Route::any('select_inpatient_sheet/{patient_id}/{episode_id}', 'PharmacyController@set_inpatient_sheet'); - - /* add sundries stock sheet to pharmacy */ - Route::any('pharmacy_sundries_stock_sheet', 'PharmacyController@sundries_stock_sheet')->name('pharmacy.sundries_stock_sheet'); - Route::any('update_pharmacy_sundries_stock_sheet', 'PharmacyController@update_sundries_stock_sheet'); - - /* confirm prescriptions */ - Route::any('confirm_prescriptions', 'PharmacyController@confirm_prescriptions')->name('pharmacy.confirm_prescriptions'); - Route::any('confirm_dispensing_details', 'PharmacyController@confirm_dispensing_details'); - Route::any('alter_dispensing_details', 'PharmacyController@alter_dispensing_details'); - Route::any('store_prescription_confirmation', 'PharmacyController@store_prescription_confirmation'); - Route::any('alter_prescriptions/{treatment_id}/{patient_id}', 'PharmacyController@alter_prescriptions'); - Route::any('dispense_treatment_progressively/{treatment_id}/', 'PharmacyController@dispense_treatment_progressively'); - Route::any('confirm_progressive_prescriptions', 'PharmacyController@confirm_progressive_prescriptions')->name('pharmacy.confirm_progressive_prescriptions'); - Route::any('confirm_progressive_prescriptions_details/{treatment_id}/', 'PharmacyController@confirm_progressive_prescriptions_details')->name('pharmacy.confirm_progressive_prescriptions_details'); - Route::any('save_progressive_prescriptions', 'PharmacyController@save_progressive_prescriptions')->name('pharmacy.save_progressive_prescriptions'); - Route::any('get_progressive_treatment_balance', 'PharmacyController@get_progressive_treatment_balance'); - - /* ward dispensing per charts */ - Route::any('drug_chart_details', 'PharmacyController@drug_chart_details'); - Route::any('view_ward_patient_prescriptions', 'PharmacyController@view_ward_patient_prescriptions'); - Route::any('incoming_ward_charts', 'PharmacyController@incoming_ward_charts')->name('pharmacy.incoming_ward_charts'); - Route::any('edit_ward_dispensing_chart/{id}', 'PharmacyController@edit_ward_dispensing_chart')->name('pharmacy.edit_ward_dispensing_chart'); - Route::any('update_ward_dispensing_per_chart', 'PharmacyController@update_ward_dispensing_per_chart')->name('pharmacy.update_ward_dispensing_per_chart'); - Route::any('ward_dispensing_per_chart_report', 'PharmacyController@ward_dispensing_per_chart_report')->name('pharmacy.ward_dispensing_per_chart_report'); - Route::any('ward_chart_report_details', 'PharmacyController@ward_chart_report_details'); - Route::any('print_ward_chart_report_details/{approval_id}', 'PharmacyController@print_ward_chart_report_details'); - Route::any('return_drugs_per_chart', 'PharmacyController@return_drugs_per_chart')->name('pharmacy.return_drugs_per_chart'); - Route::any('store_returned_drugs_per_chart', 'PharmacyController@store_returned_drugs_per_chart')->name('pharmacy.store_returned_drugs_per_chart'); - - /* pharmacy stock reconciliation */ - Route::any('pharmacy_stock_reconciliation', 'PharmacyController@drugs_stock_reconciliation')->name('pharmacy.drugs_stock_reconciliation'); - Route::any('store_pharmacy_drugs_stock_count', 'PharmacyController@store_pharmacy_drugs_stock_count')->name('pharmacy.store_drugs_stock_count'); - Route::any('pharmacy_stock_reconciliation_report', 'PharmacyController@drugs_stock_reconciliation_report')->name('pharmacy.drugs_stock_reconciliation_report'); - Route::any('drugs_stock_reconciliation_report_details', 'PharmacyController@drugs_stock_reconciliation_report_details')->name('pharmacy.drugs_stock_reconciliation_report_details'); - - /* pharmacy dispensation report */ - Route::any('pharmacy_dispensation_report_patients', 'PharmacyController@pharmacy_dispensation_report_patients')->name('pharmacy.pharmacy_dispensation_report_patients'); - Route::any('pharmacy_dispensation_report_drugs', 'PharmacyController@pharmacy_dispensation_report_drugs')->name('pharmacy.pharmacy_dispensation_report_drugs'); - Route::any('pharmacy_dispensation_report_details', 'PharmacyController@dispensation_report_details')->name('pharmacy.dispensation_report_details'); - Route::any('dispensed_details_review', 'PharmacyController@dispensed_details_review')->name('pharmacy.dispensed_details_review'); - - Route::any('item_requisition_print/{requisition_id}/{item_type}', 'PharmacyController@item_requisition_print'); - - /* pharmacy stock reconciliation */ - Route::any('pharmacy_sundries_stock_reconciliation', 'PharmacyController@sundries_stock_reconciliation')->name('pharmacy.sundries_stock_reconciliation'); - Route::any('store_pharmacy_sundries_stock_count', 'PharmacyController@store_pharmacy_sundries_stock_count')->name('pharmacy.store_sundries_stock_count'); - Route::any('pharmacy_sundries_stock_reconciliation_report', 'PharmacyController@sundries_stock_reconciliation_report')->name('pharmacy.sundries_stock_reconciliation_report'); - Route::any('pharmacy_sundries_stock_reconciliation_report_details', 'PharmacyController@sundries_stock_reconciliation_report_details')->name('pharmacy.sundries_stock_reconciliation_report_details'); - Route::any('pharmacy_opticals_stock_reconciliation_report', 'PharmacyController@opticals_stock_reconciliation_report')->name('pharmacy.opticals_stock_reconciliation_report'); - Route::post('pharmacy_opticals_stock_reconciliation_report_details', 'PharmacyController@opticals_stock_reconciliation_report_details')->name('pharmacy.opticals_stock_reconciliation_report_details'); - - - - /* Prescription Errors */ - Route::any('view_prescription_errors', 'PrescriptionErrorsController@index')->name('view_prescription_errors'); - Route::any('view_prescription_error_details/{id}', 'PrescriptionErrorsController@view_prescription_error_details')->name('view_prescription_error_details'); - - /* Prescriptions Routes */ - Route::get('/prescriptions/print_treatment', 'PrescriptionsController@print_treatment'); - Route::post('/prescriptions/process_prescription', 'PrescriptionsController@process_prescription')->name('prescriptions.process'); - Route::get('check_dispensed_drugs_quantity', 'PrescriptionsController@check_dispensed_drugs_quantity'); - Route::get('/prescriptions/get_factor/{frequency_id}', 'PrescriptionsController@get_factor'); - Route::get('/prescriptions/get_drug_details', 'PrescriptionsController@get_drug_details'); - Route::resource('prescriptions', 'PrescriptionsController'); - - /* drug refill */ - Route::any('drug_refill', 'PrescriptionsController@drug_refill')->name('prescriptions.drug_refill'); - Route::get('create_drug_refill', 'PrescriptionsController@create_drug_refill')->name('prescriptions.create_drug_refill'); - - // protocol ward charts - Route::any('print_protocol_ward_chart', 'PharmacyController@print_protocol_ward_chart')->name('print_protocol_ward_chart'); - - Route::any('pharmacy_optical_stock_reconciliation', 'PharmacyController@optical_stock_reconciliation')->name('pharmacy.optical_stock_reconciliation'); - Route::any('store_pharmacy_optical_stock_count', 'PharmacyController@store_pharmacy_optical_stock_count')->name('pharmacy.store_optical_stock_count'); - Route::get('pharmacy_optical_stock_sheet', 'PharmacyController@pharmacy_optical_stock_sheet')->name('pharmacy.pharmacy_optical_stock_sheet'); -}); \ No newline at end of file diff --git a/docker/statistics/Modules/Pharmacy/bitbucket-pipelines.yml b/docker/statistics/Modules/Pharmacy/bitbucket-pipelines.yml deleted file mode 100644 index e850a8fd..00000000 --- a/docker/statistics/Modules/Pharmacy/bitbucket-pipelines.yml +++ /dev/null @@ -1,19 +0,0 @@ -image: alpine/git:latest - -pipelines: - branches: - main: - - step: - name: Merge To Beta - script: - - git remote set-url origin https://Kabricks:${APP_SECRET}@bitbucket.org/dcsammi/${BITBUCKET_REPO_SLUG} - - git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*" - - git fetch - - git checkout beta - - git merge main - - git commit --amend -m "[skip ci] Merge changes from main" - - git push - - step: - name: Deploy To Test - script: - - echo "Ready to deploy to demo or production!" diff --git a/docker/statistics/Modules/Pharmacy/module.json b/docker/statistics/Modules/Pharmacy/module.json deleted file mode 100644 index e095af09..00000000 --- a/docker/statistics/Modules/Pharmacy/module.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "Pharmacy", - "alias": "pharmacy", - "description": "Pharmacy", - "keywords": [], - "priority": 0, - "providers": [ - "Modules\\Pharmacy\\Providers\\PharmacyServiceProvider" - ], - "files": [] -} diff --git a/docker/statistics/Modules/Reports/Config/config.php b/docker/statistics/Modules/Reports/Config/config.php deleted file mode 100644 index 930b23bf..00000000 --- a/docker/statistics/Modules/Reports/Config/config.php +++ /dev/null @@ -1,5 +0,0 @@ - 'Reports' -]; diff --git a/docker/statistics/Modules/Reports/Http/Controllers/Controller.php b/docker/statistics/Modules/Reports/Http/Controllers/Controller.php deleted file mode 100755 index ffcb2308..00000000 --- a/docker/statistics/Modules/Reports/Http/Controllers/Controller.php +++ /dev/null @@ -1,13 +0,0 @@ -date_from) && isset($request->date_to)) { - $attendance_from = Carbon::createFromFormat('d/m/Y', $request->date_from)->startOfDay()->toDateString(); - $attendance_to = Carbon::createFromFormat('d/m/Y', $request->date_to)->endOfDay()->toDateString(); - $search_button = $request->filterBtn; - } else { - $date = date_create(date("d-m-Y")); - date_sub($date, date_interval_create_from_date_string("6 days")); - $startDate = date_format($date, "d-m-Y"); - $attendance_from = date_format($date, "Y-m-d"); - $attendance_to = date("Y-m-d"); - } - - $flu_id = get_name("Influenza", "name", "id", "diagnoses"); - $ebola_id = get_name("Ebola Fever", "name", "id", "diagnoses"); - //$death_pox_id = 0; - $case_pox = 0; - $case_flu = $cma = DB::table('consultations')->where('primary_diagnosis', $flu_id)->whereBetween('created_at', [$attendance_from, $attendance_to])->count(); - $case_ebola = DB::table('consultations')->where('primary_diagnosis', $ebola_id)->whereBetween('created_at', [$attendance_from, $attendance_to])->count(); - $death_pox = 0; - //outcome_id = 5; to get death cases - $death_flu = DB::table('consultations')->where('primary_diagnosis', $flu_id)->where('outcome_id', 5)->whereBetween('created_at', [$attendance_from, $attendance_to])->count(); - $death_ebola = DB::table('consultations')->where('primary_diagnosis', $ebola_id)->where('outcome_id', 5)->whereBetween('created_at', [$attendance_from, $attendance_to])->count(); - /* used from form 5 to 8 */ - $malaria_id = get_name("6A", "hmis_no_inpatient", "id", "diagnoses"); - $mat_one = DB::table('consultations')->where('primary_diagnosis', $malaria_id)->whereBetween('created_at', [$attendance_from, $attendance_to])->count(); - // DB::enableQueryLog(); - $mat_two = DB::table('consultations')->whereNotNull('rdt')->whereBetween('created_at', [$attendance_from, $attendance_to])->count(); - $mat_three = DB::table('consultations')->where('rdt', 1)->whereBetween('created_at', [$attendance_from, $attendance_to])->count(); - $mat_four = DB::table('investigations')->where('name', 'Stool Microscopy')->count(); - $mat_five = 0; - $mat_six = 0; - $mat_seven = DB::table('treatments')->leftJoin('consultations', 'treatments.episode_id', '=', 'consultations.episode_id') - ->where('consultations.rdt', 0) //0-negative - ->whereBetween('consultations.created_at', [$attendance_from, $attendance_to]) - ->count(); - $mat_eight = DB::table('treatments')->leftJoin('consultations', 'treatments.episode_id', '=', 'consultations.episode_id') - ->where('consultations.rdt', 1) //1-positive - ->whereBetween('consultations.created_at', [$attendance_from, $attendance_to]) - ->count(); - $mat_nine = 0; - $mat_ten = 0; - $tra_one = 0; - $tra_two = is_numeric(get_name("ORS Sachets", "name", "store_stock", "drugs")) ? get_name("ORS Sachets", "name", "store_stock", "drugs") + get_name("ORS Sachets", "name", "pharmacy_stock", "drugs") : 0; - $tra_three = 0; - $tra_four = is_numeric(get_name("Amoxicilin 250mg cap", "name", "store_stock", "drugs")) ? get_name("Amoxicilin 250mg cap", "name", "store_stock", "drugs") + get_name("Amoxicilin 250mg cap", "name", "pharmacy_stock", "drugs") + get_name("Amoxycilin 125mg/5mL 100ml susp", "name", "store_stock", "drugs") + get_name("Amoxycilin 125mg/5mL 100ml susp", "name", "pharmacy_stock", "drugs") : 0; - $tra_five = 0; - $tra_six = 0; - $tra_seven = is_numeric(get_name("Fansidar 525mg tab", "name", "store_stock", "drugs")) ? get_name("Fansidar 525mg tab", "name", "store_stock", "drugs") + get_name("Fansidar 525mg tab", "name", "pharmacy_stock", "drugs") : 0; - $tra_eight = 0; - $arv_one = 0; - $arv_two = 0; - $arv_three = 0; - - return view('reports::hmis_reports.weekly_epidemiological_surveillance_form', compact('hospital_information', 'search_button', 'attendance_from', 'attendance_to', 'case_pox', 'case_flu', 'case_ebola', 'death_flu', 'death_ebola', 'death_pox', 'mat_one', 'mat_two', 'mat_three', 'mat_four', 'mat_five', 'mat_six', 'mat_seven', 'mat_eight', 'mat_nine', 'mat_ten', 'tra_one', 'tra_two', 'tra_three', 'tra_four', 'tra_five', 'tra_six', 'tra_seven', 'tra_eight', 'arv_one', 'arv_two', 'arv_three')); - } - - /** - * * Get details of a weekly epidemiliological cases report for specific period of time - */ - public function weekly_epidemiological_surveillance_cases_details($diagnosis_id) - { - $attendance_from = session()->get('attendance_from'); - $attendance_to = session()->get('attendance_to'); - $weekly_cases_details_sql = "SELECT * FROM consultations WHERE primary_diagnosis = {$diagnosis_id} AND created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}'"; - $weekly_cases_details_results = DB::select($weekly_cases_details_sql); - return view('reports::hmis_reports.weekly_epidemiological_surveillance_cases_details', compact('attendance_from', 'attendance_to', 'weekly_cases_details_results')); - } - - /** - * * Get details of a weekly epidemiliological deaths report for specific period of time - */ - public function weekly_epidemiological_surveillance_deaths_details($diagnosis_id) - { - //outcome_id = 5 stands for died - $attendance_from = session()->get('attendance_from'); - $attendance_to = session()->get('attendance_to'); - $weekly_cases_details_sql = "SELECT * FROM consultations WHERE primary_diagnosis = {$diagnosis_id} AND outcome_id=5 AND created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}'"; - $weekly_cases_details_results = DB::select($weekly_cases_details_sql); - return view('reports::hmis_reports.weekly_epidemiological_surveillance_cases_details', compact('attendance_from', 'attendance_to', 'weekly_cases_details_results')); - } - - /* Generate the essential medicines and health supplies report - * */ - - public function essential_medicines_report(Request $request) - { - $hospital_information = HospitalInformation::find(1); - - if (isset($request->date_from) && isset($request->date_to)) { - $from_date = Carbon::createFromFormat('d/m/Y', $request->date_from)->toDateString(); - $to_date = Carbon::createFromFormat('d/m/Y', $request->date_to)->toDateString(); - } else { - $date = date_create(date("d-m-Y")); - date_sub($date, date_interval_create_from_date_string("29 days")); - $startDate = date_format($date, "d-m-Y"); - $from_date = date_format($date, "Y-m-d"); - $to_date = date("Y-m-d"); - } - $issued_drugs_sql = "SELECT * FROM requisitions WHERE quotation_type_id = 1 AND issue_status = 1 AND issued_on BETWEEN '{$from_date}' AND '{$to_date}'"; - $issued_drugs_results = DB::select($issued_drugs_sql); - $hssip_indicator_sql = "SELECT * FROM drugs WHERE deleted_at IS NUll AND hssip !='' AND hssip < 'S07' ORDER BY hssip ASC"; - $hssip_indicator_results = DB::select($hssip_indicator_sql); - $other_programmatic_sql = "SELECT * FROM drugs WHERE deleted_at IS NULL AND hssip > 'S06' AND hssip < 'S42' ORDER BY hssip ASC "; - $other_programmatic_results = DB::select($other_programmatic_sql); - - $other_drugs_sql = "SELECT i.id, i.name, s.out_of_stock_date FROM drugs i, inventory_stock_dates s WHERE i.id = s.item_id AND s.out_of_stock_date BETWEEN '{$from_date}' AND '{$to_date}' AND i.deleted_at IS NULL AND i.hssip = '' ORDER BY i.name ASC"; - $other_drugs_results = DB::select($other_drugs_sql); - $drug_row_array = []; - $drug_count = 0; - $half_count = 0; - if (count($other_drugs_results) > 0) { - $drug_count = count($other_drugs_results); - $half_count = (int) ($drug_count / 2); - foreach ($other_drugs_results as $other_drug) { - $drug_row_array[] = array("item_id" => $other_drug->id, "item_name" => $other_drug->name); - } - } - - return view('reports::hmis_reports.essential_medicines_report', compact('hospital_information', 'issued_drugs_results', 'hssip_indicator_results', 'other_programmatic_results', 'from_date', 'to_date', 'drug_count', 'half_count', 'drug_row_array')); - } - - /** - * Generate out patient register report (HMIS 031) - page 1 - * */ - public function out_patient_register_report(Request $request) - { - $hospital_information = HospitalInformation::find(1); - $filtering_date = isset($request->filter_date) ? Carbon::createFromFormat('d/m/Y', $request->filter_date)->toDateString() : date('Y-m-d'); - $episodes_query = "SELECT e.id, e.triage_id, e.patient_id, d.first_name, d.last_name, d.gender, d.date_of_birth, ds.name as district_name, p.name as parish_name, v.name as village_name, s.name as subcounty_name, d.county_id, d.next_of_kin, t.observations, t.new_attendance, t.re_attendance FROM patient_episodes e, patients d, villages v, parishes p, subcounties s, districts ds, triage t WHERE e.created_at LIKE '{$filtering_date}%' AND e.patient_id = d.id AND d.village_id = v.id AND d.parish_id = p.id AND d.subcounty_id = s.id AND d.district_id = ds.id AND e.id = t.episode_id"; - $episodes_results = DB::select($episodes_query); - - return view('reports::hmis_reports.002.out_patient_register_report', compact('hospital_information', 'filtering_date', 'episodes_results')); - } - - public function out_patient_register_report_2(Request $request) - { - $hospital_information = HospitalInformation::find(1); - $filtering_date = isset($request->filter_date) ? Carbon::createFromFormat('d/m/Y', $request->filter_date)->toDateString() : date('Y-m-d'); - - $episodes_query = "SELECT e.id, e.triage_id, e.patient_id, d.first_name, d.last_name, d.gender, d.date_of_birth, ds.name as district_name, p.name as parish_name, v.name as village_name, s.name as subcounty_name, d.county_id, d.next_of_kin, t.observations, t.new_attendance, t.re_attendance FROM patient_episodes e, patients d, villages v, parishes p, subcounties s, districts ds, triage t WHERE e.created_at LIKE '{$filtering_date}%' AND e.patient_id = d.id AND d.village_id = v.id AND d.parish_id = p.id AND d.subcounty_id = s.id AND d.district_id = ds.id AND e.id = t.episode_id"; - $episodes_results = DB::select($episodes_query); - - return view('reports::hmis_reports.002.out_patient_register_report_2', compact('hospital_information', 'filtering_date', 'episodes_results')); - } - - /** - * View expired drugs in the system - * - * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View - */ - public function expired_drugs_report() - { - $drugs = Drug::where('expiry_date', '<', date('Y-m-d')) - ->where('pharmacy_stock', '>', '0') - ->orderBy('name', 'asc') - ->get(); - - return view('reports::hmis_reports.expired_drugs_report', compact('drugs')); - } - - /** - * View drug stock levels in the system - * - * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View - */ - public function drug_stock_level() - { - $drugs = Drug::orderBy('name', 'asc')->get(); - - return view('reports::hmis_reports.drug_stock_level', compact('drugs')); - } - - /** - * View drug consumption in the system with financial metrics - * - * @param Request $request - * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View - */ - public function drug_consumption_report(Request $request) - { - // check for date search - if (!is_null($request->start_date) && !is_null($request->end_date)) { - $start_date = $request->start_date; - $end_date = $request->end_date; - } else { - $start_date = date('Y-m-d'); - $end_date = date('Y-m-d'); - } - - $drugs_array = []; - $dispensed_array = []; - - // prep the dates for search queries - $start_date_clean = Carbon::parse($start_date)->startOfDay()->toDateTimeString(); - $end_date_clean = Carbon::parse($end_date)->endOfDay()->toDateTimeString(); - - // get drugs dispensed to patients in opd - $opd_drugs = DB::table('patient_dispensings')->where([['created_at', '>', $start_date_clean], ['created_at', '<', $end_date_clean]])->select('drugs', 'quantity_dispensed')->get(); - - foreach ($opd_drugs as $drug) { - $drugs = explode(",", $drug->drugs); - $dispensed = explode(",", $drug->quantity_dispensed); - - // loop through the drugs - for ($i = 0; $i < count($drugs); $i++) { - // check if a drug id already exists in the drugs array - if (in_array($drugs[$i], $drugs_array)) { - //get key of that drug which exists - $key = array_search($drugs[$i], $drugs_array); - - //increment the dispensed value of said drug - $clean_dispensed = (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - if (is_numeric($dispensed_array[$key])) { - $dispensed_array[$key] += $clean_dispensed; - } else { - $dispensed_array[$key] = $clean_dispensed; - } - $dispensed_array[$key] += $clean_dispensed; - } else { - //drugs does not exist, create new entry - array_push($drugs_array, $drugs[$i]); - array_push($dispensed_array, $dispensed[$i]); - } - } - } - - $ward_drugs = DB::table('ward_dispensings')->where([['created_at', '>', $start_date_clean], ['created_at', '<', $end_date_clean]])->select('drug_id', 'quantity_dispensed')->get(); - - foreach ($ward_drugs as $drug) { - $drugs = explode(",", $drug->drug_id); - $dispensed = explode(",", $drug->quantity_dispensed); - - // loop through the drugs - for ($i = 0; $i < count($drugs); $i++) { - // check if a drug id already exists in the drugs array - if (in_array($drugs[$i], $drugs_array)) { - //get key of that drug which exists - $key = array_search($drugs[$i], $drugs_array); - - //increment the dispensed value of said drug - $clean_dispensed = (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - if (is_numeric($dispensed_array[$key])) { - $dispensed_array[$key] += $clean_dispensed; - } else { - $dispensed_array[$key] = $clean_dispensed; - } - } else { - //drugs does not exist, create new entry - array_push($drugs_array, $drugs[$i]); - array_push($dispensed_array, $dispensed[$i]); - } - } - } - - return view('reports::hmis_reports.drug_consumption_report', compact('start_date', 'end_date', 'drugs_array', 'dispensed_array')); - } - - /** - * View drug consumption in the last year - */ - public function drug_consumption_analysis() - { - // get all drugs in the system - $drugs = Drug::select('id')->get(); - - //drugs ids - $drugs_array = []; - - foreach ($drugs as $drug) { - // insert drug id into array - $drugs_array[] = $drug->id; - } - - // get total of all drugs in the array - $drugs_array_total = count($drugs_array); - - //initialize month arrays with count of drugs total - $january = array_fill(0, $drugs_array_total, 0); - $february = array_fill(0, $drugs_array_total, 0); - $march = array_fill(0, $drugs_array_total, 0); - $april = array_fill(0, $drugs_array_total, 0); - $may = array_fill(0, $drugs_array_total, 0); - $june = array_fill(0, $drugs_array_total, 0); - $july = array_fill(0, $drugs_array_total, 0); - $august = array_fill(0, $drugs_array_total, 0); - $september = array_fill(0, $drugs_array_total, 0); - $october = array_fill(0, $drugs_array_total, 0); - $november = array_fill(0, $drugs_array_total, 0); - $december = array_fill(0, $drugs_array_total, 0); - - // lets start a fairy tale - $one_year_ago_today = Carbon::now()->subYear(); - - // get drugs dispensed to wards - $ward_drugs = DB::table('ward_dispensings')->where([['created_at', '>', $one_year_ago_today]])->select('drug_id', 'quantity_dispensed', 'created_at')->get(); - - foreach ($ward_drugs as $drug) { - // get month in which drug was dispensed - $month = (int) Carbon::parse($drug->created_at)->format('m'); - - $drugs = explode(",", $drug->drug_id); - $dispensed = explode(",", $drug->quantity_dispensed); - - // loop through the drugs - for ($i = 0; $i < count($drugs); $i++) { - if (in_array($drugs[$i], $drugs_array)) { - //get key of that drug which exists - $key = array_search($drugs[$i], $drugs_array); - - //update month quantity according to date returned - switch ($month) { - case 1: - $january[$key] += (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - break; - case 2: - $february[$key] += (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - break; - case 3: - $march[$key] += (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - break; - case 4: - $april[$key] += (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - break; - case 5: - $may[$key] += (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - break; - case 6: - $june[$key] += (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - break; - case 7: - $july[$key] += (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - break; - case 8: - $august[$key] += (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - break; - case 9: - $september[$key] += (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - break; - case 10: - $october[$key] += (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - break; - case 11: - $november[$key] += (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - break; - case 12: - $december[$key] += (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - break; - default: - # code... - break; - } - } - } - } - - // get drugs dispensed to patients in opd - $opd_drugs = DB::table('patient_dispensings')->where([['created_at', '>', $one_year_ago_today]])->select('drugs', 'quantity_dispensed', 'created_at')->get(); - - foreach ($opd_drugs as $drug) { - // get month in which drug was dispensed - $month = (int) Carbon::parse($drug->created_at)->format('m'); - - $drugs = explode(",", $drug->drugs); - $dispensed = explode(",", $drug->quantity_dispensed); - - // loop through the drugs - for ($i = 0; $i < count($drugs); $i++) { - if (in_array($drugs[$i], $drugs_array)) { - //get key of that drug which exists - $key = array_search($drugs[$i], $drugs_array); - - //update month quantity according to date returned - switch ($month) { - case 1: - $january[$key] += (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - break; - case 2: - $february[$key] += (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - break; - case 3: - $march[$key] += (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - break; - case 4: - $april[$key] += (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - break; - case 5: - $may[$key] += (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - break; - case 6: - $june[$key] += (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - break; - case 7: - $july[$key] += (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - break; - case 8: - $august[$key] += (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - break; - case 9: - $september[$key] += (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - break; - case 10: - $october[$key] += (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - break; - case 11: - $november[$key] += (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - break; - case 12: - $december[$key] += (isset($dispensed[$i]) && is_numeric($dispensed[$i])) ? $dispensed[$i] : 0; - break; - default: - # code... - break; - } - } - } - } - $data = compact('drugs_array', 'january', 'february', 'march', 'april', - 'may', 'june', 'july', 'august', 'september', 'october', 'november', 'december'); - - return view('reports::hmis_reports.drug_consumption_analysis', $data); - } - - public function streamline_outpatient_report(Request $request) - { - set_time_limit(0); - $hospital_information = HospitalInformation::find(1); - $clinics = Clinic::orderBy('name')->pluck('name', 'id')->prepend('OPD', 0)->prepend('-- Select --', ''); - $age = AgeGroup::pluck('name', 'id')->toArray(); - $age = ['' => '- select -'] + $age; - $patient_array = []; - $patient_array_adults = []; - $patient_array_males = []; - $patient_array_females = []; - $patient_array_admitted = []; - $patient_array_children = []; - $patient_array_children_males = []; - $patient_array_children_females = []; - $patient_array_age = []; - $criteria = ''; - $filters = []; - - if (isset($request->date_from)) { - $attendance_from = Carbon::parse($request->date_from)->startOfDay()->toDateTimeString(); - $attendance_to = Carbon::parse($request->date_to)->endOfDay()->toDateTimeString(); - $inpatient_attendance_from = Carbon::parse($request->date_from)->toDateString(); - $inpatient_attendance_to = Carbon::parse($request->date_to)->toDateString(); - $clinic_id = $request->clinic_id; - $patient_type = $request->patient_type; - } else { - $attendance_from = Carbon::now()->startOfDay()->toDateTimeString(); - $attendance_to = Carbon::now()->endOfDay()->toDateTimeString(); - $inpatient_attendance_from = Carbon::now()->toDateString(); - $inpatient_attendance_to = Carbon::now()->toDateString(); - $clinic_id = 0; - $patient_type = 1; - } - - if ($clinic_id == 0) { - $triage = Triage::whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereBetween('created_at', [$attendance_from, $attendance_to]) - ->select('patient_id', 'created_at') - ->get(); - } else { - $triage = Triage::where('clinic_allocation', $clinic_id) - ->whereNotIn('patient_id', findTestOrDemoPatients()) - ->whereBetween('created_at', [$attendance_from, $attendance_to]) - ->select('patient_id', 'created_at') - ->get(); - } - - if ($patient_type == 2) { - // record for insured patients - foreach ($triage as $record) { - $patient = Patient::where('id', $record->patient_id)->first(); - $patient_was_insured = patient_was_insured($patient->id, $record->created_at); - - if ($patient_was_insured) { - $age_at_visit = days_months_years(get_name($patient->id, 'id', 'date_of_birth', 'patients'), $record->created_at)[2]; - - // Children - if ($age_at_visit <= 12) { - if ($patient->gender == 1) { - array_push($filters, ['patients.gender', '=', $patient->gender]); - $patient_array_children_males[] = $patient->id; - $patient_array[] = $patient->id; - } elseif ($patient->gender == 2) { - array_push($filters, ['patients.gender', '=', $patient->gender]); - $patient_array_children_females[] = $patient->id; - $patient_array[] = $patient->id; - } else { - $patient_array_children[] = $patient->id; - $patient_array[] = $patient->id; - } - // $patient_array_children[] = $patient->id; - // $patient_array[] = $patient->id; - } - - // Adults - if ($age_at_visit > 12) { - if (!is_null($request->age) && is_numeric($request->age)) { - array_push($filters, ['age_groups.name', '=', $request->age]); - $patient_array_age[] = $patient->id; - } - if (($request->gender == 1) && is_numeric($request->gender)) { - array_push($filters, ['patients.gender', '=', $request->gender]); - $patient_array_males[] = $patient->id; - } elseif (($request->gender == 2) && is_numeric($request->gender)) { - array_push($filters, ['patients.gender', '=', $request->gender]); - $patient_array_females[] = $patient->id; - } else { - $patient_array_adults[] = $patient->id; - $patient_array[] = $patient->id; - } - } - - // find out if patient was admitted during this time period - $inpatient_info = InpatientInfo::where('patient_id', $patient->id) - ->whereBetween('admitted_on', [$inpatient_attendance_from, $inpatient_attendance_to]) - ->first(); - - if ($inpatient_info) { - $patient_array_admitted[] = $patient->id; - } - } - } - } else { - // record for all patients - foreach ($triage as $record) { - $patient = Patient::withTrashed()->find($record->patient_id); - if ($patient) { - $age_at_visit = days_months_years(get_name($patient->id, 'id', 'date_of_birth', 'patients'), $record->created_at)[2]; - if ($age_at_visit <= 12) { - if ($patient->gender == 1) { - array_push($filters, ['patients.gender', '=', $patient->gender]); - $patient_array_children_males[] = $patient->id; - $patient_array[] = $patient->id; - } elseif ($patient->gender == 2) { - array_push($filters, ['patients.gender', '=', $patient->gender]); - $patient_array_children_females[] = $patient->id; - $patient_array[] = $patient->id; - } else { - $patient_array_children[] = $patient->id; - $patient_array[] = $patient->id; - } - $patient_array_children[] = $patient->id; - $patient_array[] = $patient->id; - } - - // Adults - if ($age_at_visit > 12) { - if (!is_null($request->age)) { - array_push($filters, ['age_groups.name', '=', $request->age]); - $patient_array_age[] = $patient->id; - } - if (($patient->gender == 1)) { - array_push($filters, ['patients.gender', '=', $patient->gender]); - $patient_array_males[] = $patient->id; - } elseif (($patient->gender == 2)) { - array_push($filters, ['patients.gender', '=', $patient->gender]); - $patient_array_females[] = $patient->id; - } else { - array_push($filters, ['patients.gender', '=', $patient->gender]); - $patient_array_adults[] = $patient->id; - $patient_array[] = $patient->id; - } - $patient_array_adults[] = $patient->id; - $patient_array[] = $patient->id; - } - - // find out if patient was admitted during this time period - $inpatient_info = InpatientInfo::where('patient_id', $patient->id) - ->whereBetween('admitted_on', [$inpatient_attendance_from, $inpatient_attendance_to]) - ->first(); - - if ($inpatient_info) { - $patient_array_admitted[] = $patient->id; - } - } - } - } - - // now collect the total amounts spent for these individual patients - $insurance_drugs_total = 0; - $insurance_investigations_total = 0; - $insurance_procedures_total = 0; - $insurance_others_total = 0; - $insurance_sundries_total = 0; - $insurance_consultations_total = 0; - - $drugs_insurance = DB::table('insurance_expenditure') - ->whereIn('patient_id', $patient_array) - ->where('tag_id', 3) - ->whereBetween('created_at', [$attendance_from, $attendance_to]) - ->select('insurance_amount') - ->get(); - - $sundries_insurance = DB::table('insurance_expenditure') - ->whereIn('patient_id', $patient_array) - ->where('tag_id', 5) - ->whereBetween('created_at', [$attendance_from, $attendance_to]) - ->select('insurance_amount') - ->get(); - - $investigations_insurance = DB::table('insurance_expenditure') - ->whereIn('patient_id', $patient_array) - ->where('tag_id', 2) - ->whereBetween('created_at', [$attendance_from, $attendance_to]) - ->select('insurance_amount') - ->get(); - - $deposits_insurance = DB::table('insurance_expenditure') - ->whereIn('patient_id', $patient_array) - ->whereIn('tag_id', [6, 7, 8]) - ->whereBetween('created_at', [$attendance_from, $attendance_to]) - ->select('insurance_amount', 'item_id') - ->get(); - - $procedures_insurance = DB::table('insurance_expenditure') - ->whereIn('patient_id', $patient_array) - ->where('tag_id', 4) - ->whereBetween('created_at', [$attendance_from, $attendance_to]) - ->select('insurance_amount') - ->get(); - - foreach ($drugs_insurance as $drug) { - $insurance_drugs_total += $drug->insurance_amount; - } - - foreach ($investigations_insurance as $investigation) { - $insurance_investigations_total += $investigation->insurance_amount; - } - - foreach ($procedures_insurance as $procedure) { - $insurance_procedures_total += $procedure->insurance_amount; - } - - foreach ($sundries_insurance as $sundry) { - $insurance_sundries_total += $sundry->insurance_amount; - } - - foreach ($deposits_insurance as $deposit) { - $service_type = DB::table('services')->where('id', $deposit->item_id)->value('item_type'); - - if ($service_type == 'Consultation') { - $insurance_consultations_total += $deposit->insurance_amount; - } - - if ($service_type == 'Service' || $service_type == 'Other_service') { - $insurance_others_total += $deposit->insurance_amount; - } - } - - $drugs_total = 0; - $investigations_total = 0; - $procedures_total = 0; - $others_total = 0; - $sundries_total = 0; - $consultations_total = 0; - - // if patient is insured, skip this section - if ($patient_type != 2) { - $drugs = DB::table('treatment_deposits') - ->whereIn('patient_id', $patient_array) - ->whereBetween('created_at', [$attendance_from, $attendance_to]) - ->select('patient_amount_paid', 'refund_amount') - ->get(); - - $sundries = DB::table('sundries_deposits') - ->whereIn('patient_id', $patient_array) - ->whereBetween('created_at', [$attendance_from, $attendance_to]) - ->select('patient_amount_paid', 'refund_amount') - ->get(); - - $investigations = DB::table('investigation_deposits') - ->whereIn('patient_id', $patient_array) - ->whereBetween('created_at', [$attendance_from, $attendance_to]) - ->select('patient_amount_paid', 'refund_amount') - ->get(); - - $deposits = DB::table('service_deposits') - ->whereIn('patient_id', $patient_array) - ->whereBetween('created_at', [$attendance_from, $attendance_to]) - ->select('patient_amount_paid', 'refund_amount', 'service_type') - ->get(); - - $procedures = DB::table('procedure_deposits') - ->whereIn('patient_id', $patient_array) - ->whereBetween('created_at', [$attendance_from, $attendance_to]) - ->select('patient_amount_paid', 'refund_amount') - ->get(); - - foreach ($drugs as $drug) { - $drugs_total += ($drug->patient_amount_paid - $drug->refund_amount); - } - - foreach ($investigations as $investigation) { - $investigations_total += ($investigation->patient_amount_paid - $investigation->refund_amount); - } - - foreach ($procedures as $procedure) { - $procedures_total += ($procedure->patient_amount_paid - $procedure->refund_amount); - } - - foreach ($sundries as $sundry) { - $sundries_total += ($sundry->patient_amount_paid - $sundry->refund_amount); - } - - foreach ($deposits as $deposit) { - if ($deposit->service_type == 'Consultation') { - $consultations_total += ($deposit->patient_amount_paid - $deposit->refund_amount); - } - - if ($deposit->service_type == 'Services' || $deposit->service_type == 'Service' || $deposit->service_type == 'Other_service') { - $others_total += ($deposit->patient_amount_paid - $deposit->refund_amount); - } - } - } - - $total_costs_consultation = $consultations_total + $insurance_consultations_total; - $total_costs_services = $others_total + $insurance_others_total; - $total_costs_investigations = $investigations_total + $insurance_investigations_total; - $total_costs_drug = $drugs_total + $insurance_drugs_total; - $total_costs_procedures = $procedures_total + $insurance_procedures_total; - $total_costs_sundries = $sundries_total + $insurance_sundries_total; - $total_costs = $total_costs_consultation + $total_costs_services + $total_costs_investigations + $total_costs_drug + $total_costs_procedures + $total_costs_sundries; - - return view('reports::hmis_reports.streamline_outpatient_report', compact('age', 'hospital_information', 'clinics', 'attendance_from', 'attendance_to', 'total_costs', 'total_costs_consultation', 'total_costs_services', 'total_costs_drug', 'total_costs_investigations', 'total_costs_procedures', 'total_costs_sundries', 'patient_array', 'clinic_id', 'patient_type', 'patient_array', 'patient_array_admitted', 'patient_array_adults', 'patient_array_children', 'patient_array_age', 'patient_array_males', 'patient_array_females', 'patient_array_children_males', 'patient_array_children_females')); - } - - /* - * out patient streamline report income drill down - */ - - public function streamline_outpatient_income_details(Request $request) - { - //'Investigations=2','Treatments=3','Procedures=4','Sundries=5','Consultation=6','Co-Payments=7','Services=8' - $date_filter_string = $request->dates; - $date_filter_array = explode('/', $date_filter_string); - $date_from = $date_filter_array[0]; - $date_to = $date_filter_array[0]; - $deposits = []; - $insurance_expenditure = []; - $tag_id = $request->tag_id; - $patients_json_encoded_string = $request->patient_filter; - $department = $request->department; - $insured_or_all_patients = $request->insured_or_all; - $patient_id_decode = []; - if (isset($request->patient_filter)) { - $patient_ids = $request->patient_filter; - $patient_id_decode = json_decode($patient_ids); - $patient_ids_string = !is_null($patient_id_decode) ? implode(",", $patient_id_decode) : ""; - - if (!empty($patient_ids_string)) { - $patient_filter_sales = " select_client IN IN (" . $patient_ids_string . ") AND "; - $patient_filter_general = " patient_id IN (" . $patient_ids_string . ") AND "; - } - } - //Consultation=6 - if ($tag_id == 6) { - if ($insured_or_all_patients == 1) { - $deposits = ServiceDeposit::where('service_type', 'Consultation')->whereDate('created_at', '>=', $date_from)->whereDate('created_at', '<=', $date_to)->get(); - $insurance_expenditure = InsuranceExpenditure::whereIn('item_id', $patient_id_decode)->where('tag_id', 6)->whereDate('created_at', '>=', $date_from)->whereDate('created_at', '<=', $date_to)->get(); - } else { - $insurance_expenditure = InsuranceExpenditure::whereIn('item_id', $patient_id_decode)->where('tag_id', 6)->whereDate('created_at', '>=', $date_from)->whereDate('created_at', '<=', $date_to)->get(); - } //Investigations=2 - } else if ($tag_id == 2) { - if ($insured_or_all_patients == 1) { - $deposits = InvestigationDeposit::whereDate('created_at', '>=', $date_from)->whereDate('created_at', '<=', $date_to)->get(); - $insurance_expenditure = InsuranceExpenditure::whereIn('item_id', $patient_id_decode)->where('tag_id', 2)->whereDate('created_at', '>=', $date_from)->whereDate('created_at', '<=', $date_to)->get(); - return view('reports::hmis_reports.streamline_outpatient_income_detailed_report', compact('department', 'tag_id', 'date_from', 'date_to', 'deposits', 'insurance_expenditure')); - } else { - $insurance_expenditure = InsuranceExpenditure::whereIn('item_id', $patient_id_decode)->where('tag_id', 2)->whereDate('created_at', '>=', $date_from)->whereDate('created_at', '<=', $date_to)->get(); - return view('reports::hmis_reports.streamline_outpatient_income_detailed_report', compact('department', 'tag_id', 'date_from', 'date_to', 'deposits', 'insurance_expenditure')); - } //Treatments=3 - } else if ($tag_id == 3) { - if ($insured_or_all_patients == 1) { - $deposits = TreatmentDeposits::whereDate('created_at', '>=', $date_from)->whereDate('created_at', '<=', $date_to)->get(); - $insurance_expenditure = InsuranceExpenditure::whereIn('item_id', $patient_id_decode)->where('tag_id', 3)->whereDate('created_at', '>=', $date_from)->whereDate('created_at', '<=', $date_to)->get(); - return view('reports::hmis_reports.streamline_outpatient_income_detailed_report', compact('department', 'tag_id', 'date_from', 'date_to', 'deposits', 'insurance_expenditure')); - } else { - $insurance_expenditure = InsuranceExpenditure::whereIn('item_id', $patient_id_decode)->where('tag_id', 3)->whereDate('created_at', '>=', $date_from)->whereDate('created_at', '<=', $date_to)->get(); - return view('reports::hmis_reports.streamline_outpatient_income_detailed_report', compact('department', 'tag_id', 'date_from', 'date_to', 'deposits', 'insurance_expenditure')); - } //Procedures = 4 - } else if ($tag_id == 4) { - if ($insured_or_all_patients == 1) { - $deposits = ProcedureDeposit::whereDate('created_at', '>=', $date_from)->whereDate('created_at', '<=', $date_to)->get(); - $insurance_expenditure = InsuranceExpenditure::whereIn('item_id', $patient_id_decode)->where('tag_id', 4)->whereDate('created_at', '>=', $date_from)->whereDate('created_at', '<=', $date_to)->get(); - return view('reports::hmis_reports.streamline_outpatient_income_detailed_report', compact('department', 'tag_id', 'date_from', 'date_to', 'deposits', 'insurance_expenditure')); - } else { - $insurance_expenditure = InsuranceExpenditure::whereIn('item_id', $patient_id_decode)->where('tag_id', 4)->whereDate('created_at', '>=', $date_from)->whereDate('created_at', '<=', $date_to)->get(); - return view('reports::hmis_reports.streamline_outpatient_income_detailed_report', compact('department', 'tag_id', 'date_from', 'date_to', 'deposits', 'insurance_expenditure')); - } - } - return view('reports::hmis_reports.streamline_outpatient_income_detailed_report', compact('department', 'tag_id', 'date_from', 'date_to', 'deposits', 'insurance_expenditure')); - } - - public function streamline_outpatient_details(Request $request) - { - $patients_lists = []; - $patient_array_adults = json_decode($request->patient_array_adults); - $patient_array_males = json_decode($request->patient_array_males); - $patient_array_females = json_decode($request->patient_array_females); - $patient_array_children = json_decode($request->patient_array_children); - $patient_array_children_males = json_decode($request->patient_array_children_males); - $patient_array_children_females = json_decode($request->patient_array_children_females); - $patient_array = json_decode($request->patient_array); - $patient_array_admitted = json_decode($request->patient_array_admitted); - $patients = Patient::get(); - $patient_category = "Adults"; - $patient_data = []; - - if ($patient_array_adults) { - foreach ($patient_array_adults as $patient_array_adult) { - $patient = Patient::where('id', $patient_array_adult)->first(); - $patient_data[] = $patient; - $patient_category = "Adults"; - } - return view('reports::hmis_reports.streamline_outpatient_list_report', compact('patient_category','patient_data', 'patients', 'patient_array_adults')); - } - if ($patient_array_males) { - foreach (collect($patient_array_males) as $patient_array_male) { - $patient = Patient::where('id', $patient_array_male)->first(); - $patient_data[] = $patient; - $patient_category = "Male Adults"; - } - return view('reports::hmis_reports.streamline_outpatient_list_report', compact('patient_category','patient_data', 'patients', 'patient_array_males')); - } - if ($patient_array_females) { - foreach ($patient_array_females as $patient_array_female) { - $patient = Patient::where('id', $patient_array_female)->first(); - $patient_data[] = $patient; - $patient_category = "Female Adults"; - } - return view('reports::hmis_reports.streamline_outpatient_list_report', compact('patient_category','patient_data', 'patients', 'patient_array_females')); - } - if ($patient_array_children) { - foreach ($patient_array_children as $patient_array_child) { - $patient = Patient::where('id', $patient_array_child)->first(); - $patient_data[] = $patient; - $patient_category = "Children"; - } - return view('reports::hmis_reports.streamline_outpatient_list_report', compact('patient_category','patient_data', 'patient_array_children')); - } - if ($patient_array_children_males) { - foreach ($patient_array_children_males as $patient_array_children_male) { - $patient = Patient::where('id', $patient_array_children_male)->first(); - $patient_data[] = $patient; - $patient_category = "Male Children"; - } - return view('reports::hmis_reports.streamline_outpatient_list_report', compact('patient_category','patient_data', 'patient_array_children_males')); - } - if ($patient_array_children_females) { - foreach ($patient_array_children_females as $patient_array_children_female) { - $patient = Patient::where('id', $patient_array_children_female)->first(); - $patient_data[] = $patient; - $patient_category = "Female Children"; - } - return view('reports::hmis_reports.streamline_outpatient_list_report', compact('patient_category', 'patient_data', 'patient_array_children_females')); - } - if ($patient_array) { - foreach ($patient_array as $patient_arr) { - $patient = Patient::where('id', $patient_arr)->first(); - $patient_data[] = $patient; - $patient_category = "All Patients"; - } - return view('reports::hmis_reports.streamline_outpatient_list_report', compact('patient_category','patient_data', 'patient_array')); - } - if ($patient_array_admitted) { - foreach ($patient_array_admitted as $patient_array_admit) { - $patient = Patient::where('id', $patient_array_admit)->first(); - $patient_data[] = $patient; - $patient_category = "Admitted Patients"; - } - return view('reports::hmis_reports.streamline_outpatient_list_report', compact('patient_category','patient_data', 'patient_array_admitted')); - } - } - - /* - * out patient streamline report attendance drill down - */ - - public function streamline_outpatient_attendance_details(Request $request) - { - $date_from = $request->from; - $date_to = $request->to; - $patient_array = json_decode($request->patient_array); - $department_id = $request->department; - return view('reports::hmis_reports.streamline_outpatient_attendance_detailed_report', compact('date_from', 'date_to', 'patient_array')); - } - - /** - * Reprint Investigations Receipt coing from streamline outpatient report - * - * @param $id - * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View - */ - public function reprint_investigation_receipt($id) - { - - // get payment details for the services - $investigation_payment = InvestigationDeposit::where(['receipt_number' => $id])->first(); - - $patient_to_pay = $investigation_payment->patient_amount_paid; - - $investigation_prices_array = explode(",", $investigation_payment->investigation_amounts); - $investigation_ids_array = explode(",", $investigation_payment->investigation_items); - - $total_amount_pay = 0; - - foreach ($investigation_prices_array as $price) { - $total_amount_pay += $price; - } - - $receipt_date = $investigation_payment->created_at; - - // receipt number - $receipt_number = $investigation_payment->receipt_number; - - // details to be used for receipt - $hospital_information = HospitalInformation::first(); - - $discounts_applied = $total_amount_pay - $patient_to_pay; - - $patient = Patient::find($investigation_payment->patient_id); - - $compact_values = compact('hospital_information', 'receipt_date', 'receipt_number', 'discounts_applied', - 'patient', 'investigation_ids_array', 'investigation_prices_array', 'total_amount_pay', 'patient_to_pay'); - - return view('patient_finance::patient_finance.receipts.investigations_reprint', $compact_values); - } - - public function disease_prevalence_charts(Request $request) - { - - $month_array = []; - $data_array = []; - $array_tracker = []; - - // check for date search - if (!is_null($request->start_date) && !is_null($request->end_date)) { - $start_date = $request->start_date; - $end_date = $request->end_date; - } else { - $start_date = date('Y-m-d'); - $end_date = date('Y-m-d'); - } - - // check for selected diagnosis - if (!is_null($request->diagnosis_id)) { - $diagnosis_id = $request->diagnosis_id; - $diagnosis_name = get_name($diagnosis_id, 'id', 'name', 'diagnoses'); - } else { - // get a random diagnosis - $diagnosis_id = 11; - $diagnosis_name = get_name($diagnosis_id, 'id', 'name', 'diagnoses'); - } - - // prep the dates for search queries - $start_date_clean = Carbon::parse($start_date)->startOfDay()->toDateTimeString(); - $end_date_clean = Carbon::parse($end_date)->endOfDay()->toDateTimeString(); - - // get drugs dispensed - $diagnoses = DB::table('consultations')->where([['created_at', '>', $start_date_clean], ['created_at', '<', $end_date_clean], ['primary_diagnosis', '=', $diagnosis_id]])->select('primary_diagnosis', 'created_at')->get(); - - $label = 'Disease Prevalence For ' . $diagnosis_name; - - foreach ($diagnoses as $diagnosis) { - $month = (int) Carbon::parse($diagnosis->created_at)->format('m'); - $year = (int) Carbon::parse($diagnosis->created_at)->format('Y'); - $string_tracker = $year . $month; - - if (in_array($string_tracker, $array_tracker)) { - $key = array_search($string_tracker, $array_tracker); - - $current_count = $data_array[$key]; - $data_array[$key] = $current_count + 1; - } else { - array_push($data_array, 1); - array_push($array_tracker, $string_tracker); - - $month_name = ""; - - switch ($month) { - case 1: - $month_name = "January"; - break; - case 2: - $month_name = "February"; - break; - case 3: - $month_name = "March"; - break; - case 4: - $month_name = "April"; - break; - case 5: - $month_name = "May"; - break; - case 6: - $month_name = "June"; - break; - case 7: - $month_name = "July"; - break; - case 8: - $month_name = "August"; - break; - case 9: - $month_name = "September"; - break; - case 10: - $month_name = "October"; - break; - case 11: - $month_name = "November"; - break; - case 12: - $month_name = "December"; - break; - default: - # code... - break; - } - - $result = $month_name . " " . $year; - - // add the new date - array_push($month_array, $result); - } - } - - $diagnoses = Diagnosis::pluck('name', 'id')->toArray(); - $diagnoses = ['' => '- select -'] + $diagnoses; - - return view('reports::hmis_reports.disease_prevalence_charts', compact('month_array', 'data_array', 'label', 'diagnoses')); - } - - /** - * * opd attendance referrals diagnosis totals steamline report - * */ - public function opd_attendance_referrals_diagnosis_totals(Request $request) - { - $hospital_information = HospitalInformation::find(1); - if (isset($request->date_from) && isset($request->date_to)) { - $attendance_from = Carbon::createFromFormat('d/m/Y', $request->date_from)->toDateString(); - $attendance_to = Carbon::createFromFormat('d/m/Y', $request->date_to)->toDateString(); - $search_button = $request->filterBtn; - } else { - $date = date_create(date("d-m-Y")); - date_sub($date, date_interval_create_from_date_string("0 days")); - $startDate = date_format($date, "d-m-Y"); - $attendance_from = date_format($date, "Y-m-d"); - $attendance_to = date("Y-m-d"); - } - return view('reports::hmis_reports.opd_attendance_referrals_diagnosis_totals', compact('hospital_information', 'attendance_from', 'attendance_to')); - } - -// Inpatient monthly report 108 - public function hmis_108(Request $request) - { - - $valid = Validator::make($request->all(), [ - 'date_from' => 'nullable|date|required_with:date_to', - 'date_to' => 'bail|nullable|required_with:date_from|date|after:date_from', - ]); - if($valid->fails()){ - $string = ""; - foreach ($valid->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($valid)->withInput(); - } - $start = !empty($request->date_from)? $request->date_from : Carbon::now()->subMonth()->startOfMonth()->format('Y-m-d'); - $end = !empty($request->date_to)? $request->date_to : date("Y-m-t", strtotime($start)); - $citizenship = isset($request->type)? $request->type :1; - $page = 'census'; - $dates = $ward_data = $referral_data = []; $counter = $referred_from = $self_referred = $referred_to = $ran_away=0; - if(empty($request->date_from)){ - $dates['last_month'] = date('F', strtotime($start)); - $dates['last_year'] = date('Y', strtotime($start)); - $dates['days'] = date('t', strtotime($start)); - $dates['citizenship'] = $citizenship; - }else { - $dates['start'] = date('d-M-Y', strtotime($start)); - $dates['end'] = date('d-M-Y', strtotime($end)); - $dates['days'] = intval((new DateTime($start))->diff(new DateTime($end))->format("%a")); - $dates['citizenship'] = $citizenship; - } - $ward_types = HmisWard::all('name', 'id'); - foreach ($ward_types as $ward_type) - { - $ward_info = Ward::select('id', 'name', 'beds')->where('hmis_ward_id', $ward_type['id'])->get(); - if (!empty($ward_info)) { - - $ward_ids = $patient_ids = $dead_ids = $ward_beds = [];$ward_days_count = $ward_deaths = $ward_admissions =0; - foreach ($ward_info as $ward){ - $ward_ids[] = $ward->id; - $ward_beds[] = $ward->beds; - } - $admissions = DB::table('inpatient_info as i')->leftjoin('triage AS t', 't.episode_id', '=', 'i.episode_id') - ->leftjoin('patients AS p', 'p.id', '=', 'i.patient_id') - ->whereIn('i.ward_id', $ward_ids)->where('p.citizenship', $citizenship) - ->whereBetween('i.admitted_on', [$start, $end]) - ->select('i.id','i.outcome_id','i.patient_id','i.admitted_on','i.discharged_on', 't.referral') - ->get(); - $ward_admissions = !empty($admissions)? count($admissions):0; - foreach ($admissions as $admission) { - $admitted_on = new DateTime($admission->admitted_on); - if($admission->outcome_id == '8'){ - $ran_away +=1; - $referral_data['ran_away_ids'][] = $admission->patient_id; - } - elseif($admission->outcome_id == '4') { - $referred_from +=1; - $referral_data['referred_from_ids'][] = $admission->patient_id; - } - elseif($admission->outcome_id == '5') { - $ward_deaths +=1; - $dead_ids[] = $admission->patient_id; - } - if($admission->referral == '1') { - $self_referred +=1; - $referral_data['self_referred_ids'][] = $admission->patient_id; - } - else { - $referred_to +=1; - $referral_data['referred_to_ids'][] = $admission->patient_id; - } - if(!empty($admission->discharged_on) && ($admission->discharged_on !== "0000-00-00") ){ - if(intval($admitted_on->diff(new DateTime($admission->discharged_on))->format("%a")) > 30) $test[] =['id' =>$admission->id,'count'=>intval($admitted_on->diff(new DateTime($admission->discharged_on))->format("%a"))]; - $ward_days_count += intval($admitted_on->diff(new DateTime($admission->discharged_on))->format("%a")); - }else { - $ward_days_count += intval($admitted_on->diff(new DateTime($end))->format("%a")); - } - $patient_ids[] = $admission->patient_id; - } - - $ward_data[$counter]['admissions'] = $ward_admissions; - $ward_data[$counter]['deaths'] = $ward_deaths; - $ward_data[$counter]['days_count'] = $ward_days_count; - $ward_data[$counter]['ward_beds'] = array_sum($ward_beds); - $ward_data[$counter]['ward_name'] = $ward_type['name']; - $ward_data[$counter]['id'] = $ward_type['id']; - $ward_data[$counter]['patient_ids'] = $patient_ids; - $ward_data[$counter]['dead_ids'] = $dead_ids; - $counter++; - $referral_data['referred_to'] = $referred_to; - $referral_data['referred_to_ids'] = isset($referral_data['referred_to_ids'])? $referral_data['referred_to_ids']:[]; - $referral_data['self_referred'] = $self_referred; - $referral_data['self_referred_ids'] = isset($referral_data['self_referred_ids'])? $referral_data['self_referred_ids']:[]; - $referral_data['referred_from'] = $referred_from; - $referral_data['referred_from_ids'] = isset($referral_data['referred_from_ids'])? $referral_data['referred_from_ids']:[]; - $referral_data['ran_away'] = $ran_away; - $referral_data['ran_away_ids'] = isset($referral_data['ran_away_ids'])? $referral_data['ran_away_ids']:[]; - - }else { - $ward_data[$counter]['admissions'] = 0; - $ward_data[$counter]['deaths'] = 0; - $ward_data[$counter]['days_count'] = 0; - $ward_data[$counter]['ward_beds'] = 0; - $ward_data[$counter]['ward_name'] = $ward_type['name']; - $ward_data[$counter]['id'] = $ward_type['id']; - $ward_data[$counter]['patient_ids'] = []; - $ward_data[$counter]['dead_ids'] =[]; - $counter++; - } - } - return view('reports::hmis_reports.108.index', compact('ward_data','referral_data', 'dates','page')); - } - - - public function hmis_108_drill(Request $request) { - - $patientIDs = unserialize($request->patients); - $page = $request->page; - $diagnoses = unserialize($request->diagnoses); - - $patients = DB::table('patients')->whereIn('id', array_unique($patientIDs))->orderBy('last_name','asc')->get(); - $categories = DB::table('patient_categories')->pluck('name', 'id'); - - return view('reports::hmis_reports.108.drill-down', compact('patients', 'categories','page', 'diagnoses')); - } - - function print_Hmis_108_information(Request $request) { - $ward_data = !empty($request->ward_data)? unserialize($request->ward_data):[]; - $referral_data = !empty($request->referral_data)? unserialize($request->referral_data):[]; - $dates = !empty($request->dates)? unserialize($request->dates):[]; - $counted_procedures =!empty($request->counted_procedures)? unserialize($request->counted_procedures):[]; - $counted_investigations =!empty($request->counted_investigations)? unserialize($request->counted_investigations):[]; - $diagnoses_data =!empty($request->diagnoses_data)? unserialize($request->diagnoses_data):[]; - $table_options = !empty($request->table_options)? unserialize($request->table_options):[]; - $page = $request->page; - $pdf = SnappyPDF::loadView('reports::hmis_reports.108.print-census-information', compact('ward_data','referral_data', 'dates','page','counted_investigations','table_options','counted_procedures','diagnoses_data')) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', ''. config('app.name') .' - Printed On ' . date('Y-m-d') . ' By ' . auth()->user()->first_name . " " . auth()->user()->last_name . ''); - return $pdf->inline(__('hmis_reports.hmis_108_report_census') . date(" d-m-y h:ia") . '.pdf'); - } - - public function hmis_108_procedures(Request $request) { - request()->validate([ - 'date_from' => 'nullable|date|required_with:date_to', - 'date_to' => 'bail|nullable|required_with:date_from|date|after:date_from', - ]); - $start = !empty($request->date_from)? $request->date_from : Carbon::now()->subMonth()->startOfMonth()->format('Y-m-d'); - $end = !empty($request->date_to)? $request->date_to : date("Y-m-t", strtotime($start)); - $citizenship = isset($request->type)? $request->type :1; - $page = 'procedures';$table_options =[]; - $dates = $new_procedure = $counted_procedures = $table_options = $actual_procedures =[]; - if(empty($request->date_from)){ - $dates['last_month'] = date('F', strtotime($start)); - $dates['last_year'] = date('Y', strtotime($start)); - $dates['days'] = date('t', strtotime($start)); - $dates['citizenship'] = $citizenship; - }else { - $dates['start'] = date('d-M-Y', strtotime($start)); - $dates['end'] = date('d-M-Y', strtotime($end)); - $dates['days'] = intval((new DateTime($start))->diff(new DateTime($end))->format("%a")); - $dates['citizenship'] = $citizenship; - } - - $procedures = WardProcedure::where([['procedure_id','<>', ''], ['citizenship', $citizenship]])->whereBetween('ward_procedures.created_at', [$start, $end])->select('ward_procedures.id','patient_id','episode_id','procedure_date as admitted_on','procedure_id as procedures','performed_by as procedures_done_by')->leftJoin('patients', 'patients.id','ward_procedures.patient_id')->get()->toArray(); - foreach($procedures as $procedure) { - $new_procedure[] =['id'=>$procedure['id'],'patient_id'=>$procedure['patient_id'],'episode_id'=>$procedure['episode_id'],'admitted_on'=>$procedure['admitted_on'], 'procedures_done_by'=>$procedure['procedures_done_by'], 'procedure_ids'=> $procedure['procedures']]; - $actual_procedures[] = $procedure['procedures']; - } - $procedures_count = !empty($actual_procedures)? array_unique($actual_procedures) : []; - foreach($procedures_count as $value){ - $procedure_info = DB::table('procedures AS p')->leftJoin('hmis_category_options AS a','a.id', 'p.hmis_no_inpatient') - ->leftJoin('hmis_categories AS h','h.id', 'p.hmis_category_inpatient')->where([['p.id', $value],['p.hmis_inpatient_type', 1]]) - ->select('h.id as category_id','h.number as category_number', 'h.title as category_name','a.id as option_id','a.name as option_name','a.number as option_number','p.id','p.name', 'p.hmis_no_inpatient')->first(); - if(!empty($procedure_info)) { - $patient_ids = []; - foreach($new_procedure as $pro) if($value == $pro['procedure_ids']) $patient_ids[] = $pro['patient_id']; - $counted_procedures[] =['id'=>$value, 'count'=>count($patient_ids), 'name'=>$procedure_info->name, 'chosen_option'=>$procedure_info->hmis_no_inpatient ?? 'None', 'category_id'=>$procedure_info->category_id ?? '58','category_number'=>$procedure_info->category_number ?? '3.13','category_name'=>$procedure_info->category_name ?? 'Other Un-classified Surgical Procedures','option_id'=>$procedure_info->option_id ?? '98','option_name'=>$procedure_info->option_name ?? 'Others','option_number'=>$procedure_info->option_number ?? 'OT04', 'patient_ids' => $patient_ids]; - } - } - $inpatient_categories = HmisCategory::where('section_number', '3')->select('id','number', 'title')->get()->toArray(); - foreach($inpatient_categories as $inpatient_category) { - $category_options = HmisCategoryOptions::where('hmis_category_id', $inpatient_category['id'])->select('id','number', 'name')->get()->toArray(); - $table_options[] = ['category_id'=>$inpatient_category['id'],'category_name'=>$inpatient_category['title'],'category_number'=>$inpatient_category['number'],'category_options'=>$category_options]; - } - return view('reports::hmis_reports.108.index', compact('dates','counted_procedures','table_options','page')); - } - - public function hmis_108_radiology_and_imaging(Request $request) { - request()->validate([ - 'date_from' => 'nullable|date|required_with:date_to', - 'date_to' => 'bail|nullable|required_with:date_from|date|after:date_from', - ]); - $start = !empty($request->date_from)? $request->date_from : Carbon::now()->subMonth()->startOfMonth()->format('Y-m-d'); - $end = !empty($request->date_to)? $request->date_to : date("Y-m-t", strtotime($start)); - $citizenship = isset($request->type)? $request->type :1; - $page = 'radiology and Imaging';$table_options =[]; - $dates = $investigation_ids = $ids_count = $counted_investigations =[]; - if(empty($request->date_from)){ - $dates['last_month'] = date('F', strtotime($start)); - $dates['last_year'] = date('Y', strtotime($start)); - $dates['days'] = date('t', strtotime($start)); - $dates['citizenship'] = $citizenship; - }else { - $dates['start'] = date('d-M-Y', strtotime($start)); - $dates['end'] = date('d-M-Y', strtotime($end)); - $dates['days'] = intval((new DateTime($start))->diff(new DateTime($end))->format("%a")); - $dates['citizenship'] = $citizenship; - } - - $investigations = OrderedInvestigation::whereBetween('created_at', [$start, $end])->where('inpatient', 1)->get(['id', 'patient_id','episode_id','investigation_id']); - - foreach($investigations as $investigation) { - $ordered_investigations = explode(',', $investigation->investigation_id); - foreach ($ordered_investigations as $ordered_investigation) if(!empty($ordered_investigation)) { - $investigation_ids[] =$ordered_investigation; - $ids_count[] = ['id' => $investigation->id, 'patient_id' => $investigation->patient_id, 'episode_id' => $investigation->episode_id, 'investigation_id' => $ordered_investigation]; - } - } - $investigations_count = (!empty($investigation_ids))? array_unique($investigation_ids):[]; - foreach($investigations_count as $value){ - $investigation_info = DB::table('investigations AS p')->leftJoin('hmis_category_options AS a','a.id', 'p.hmis_no_inpatient') - ->leftJoin('hmis_categories AS h','h.id', 'p.hmis_category_inpatient')->where('p.id', $value) - ->select('h.id as category_id','h.number as category_number', 'h.title as category_name','a.id as option_id','a.name as option_name','a.number as option_number','p.id','p.name', 'p.hmis_no_inpatient')->first(); - if(!empty($investigation_info)) { - $male_under_four = $male_over_five = $female_under_four = $female_over_five = 0; - $patientIds = $male_under_four_ids = $male_over_five_ids = $female_under_four_ids = $female_over_five_ids = $patients = []; - $patient_ids = array_filter($ids_count, function ($item) use ($value) { - return $item['investigation_id'] == $value; - }); - foreach ($patient_ids as $options) $patientIds[]=$options['patient_id']; - $patients = Patient::whereIn('id', array_unique($patientIds))->where('citizenship', $citizenship)->select('id','date_of_birth', 'gender')->get(); - foreach ($patients as $patient){ - $age = Carbon::parse($patient->dob)->age; - if($age < 4) { - if($patient->gender == '1'){ - $male_over_five++; - $male_over_five_ids[] = $patient->id; - } - elseif($patient->gender == '2'){ - $female_over_five++; - $female_over_five_ids[] = $patient->id; - } - } else{ - if($patient->gender == '1'){ - $male_under_four++; - $male_under_four_ids[] = $patient->id; - } - elseif($patient->gender == '2'){ - $female_under_four++; - $female_under_four_ids[] = $patient->id; - } - - } - - } - $counted_investigations[] =[ - 'id'=>$value, 'count'=>count(array_unique($patientIds)), 'name'=>$investigation_info->name, 'chosen_option'=>$investigation_info->hmis_no_inpatient ?? 'None', - 'category_id'=>$investigation_info->category_id ?? '58','category_number'=>$investigation_info->category_number ?? '3.13', - 'category_name'=>$investigation_info->category_name ?? 'Other Un-classified Surgical Procedures','option_id'=>$investigation_info->option_id ?? '98', - 'option_name'=>$investigation_info->option_name ?? 'Others', 'female_under_four'=>$female_under_four, 'male_under_four'=>$male_under_four, - 'option_number'=>$investigation_info->option_number ?? 'OT04', 'patient_ids' => $patient_ids, 'male_over_five'=>$male_over_five, - 'female_under_four_ids' =>$female_under_four_ids, 'male_under_four_ids'=>$male_under_four_ids, 'female_over_five'=>$female_over_five, - 'female_over_five_ids'=>$female_over_five_ids, 'male_over_five_ids'=>$male_over_five_ids - ]; - } - } - $inpatient_categories = HmisCategory::where('section_number', '5')->select('id','number', 'title')->get()->toArray(); - foreach($inpatient_categories as $inpatient_category) { - $category_options = HmisCategoryOptions::where('hmis_category_id', $inpatient_category['id'])->select('id','number', 'name')->get()->toArray(); - $table_options[] = ['category_id'=>$inpatient_category['id'],'category_name'=>$inpatient_category['title'],'category_number'=>$inpatient_category['number'],'category_options'=>$category_options]; - } - return view('reports::hmis_reports.108.index', compact('dates','counted_investigations','table_options','page')); - } - - public function hmis_108_admissions_and_deaths (Request $request) { - request()->validate([ - 'date_from' => 'nullable|date|required_with:date_to', - 'date_to' => 'bail|nullable|required_with:date_from|date|after:date_from', - ]); - $start = !empty($request->date_from)? $request->date_from : Carbon::now()->subMonth()->startOfMonth()->format('Y-m-d'); - $end = !empty($request->date_to)? $request->date_to : date("Y-m-t", strtotime($start)); - $citizenship = isset($request->type)? $request->type :1; - $page = 'Admissions and Deaths by Diagnosis'; - $dates = $primary_diagnosis = $other_diagnoses = $patients = $table_options = $dependent_options = $diagnoses_data =[]; - if(empty($request->date_from)){ - $dates['last_month'] = date('F', strtotime($start)); - $dates['last_year'] = date('Y', strtotime($start)); - $dates['days'] = date('t', strtotime($start)); - $dates['citizenship'] = $citizenship; - }else { - $dates['start'] = date('d-M-Y', strtotime($start)); - $dates['end'] = date('d-M-Y', strtotime($end)); - $dates['days'] = intval((new DateTime($start))->diff(new DateTime($end))->format("%a")); - $dates['citizenship'] = $citizenship; - } - $parent_categories = array_unique(HmisCategoryOptions::where('parent_option', '<>','')->pluck('parent_option')->toArray()); - $episodes = DB::table('inpatient_info as i')->leftJoin('patients as p', 'i.patient_id','p.id') - ->select('i.id','i.patient_id', 'gender', 'date_of_birth as dob','admitted_on', 'outcome_id', 'primary_diagnosis', 'other_diagnoses') - ->whereBetween('admitted_on', [$start, $end]) - ->where([['gender','<>',''], ['primary_diagnosis','<>',''],['citizenship', $citizenship]]) - ->get(); - foreach ($episodes as $episode) { - $primary_diagnosis[] = $episode->primary_diagnosis; - $others = (!empty($episode->other_diagnoses))? unserialize($episode->other_diagnoses):[]; - if(!empty($others)) foreach($others as $other) if(!empty($other)) $other_diagnoses[] = $other; - $patients[] = ['id'=> $episode->id,'patient_id'=> $episode->patient_id, 'gender'=> $episode->gender, 'age'=> Carbon::parse($episode->dob)->age,'admitted_on'=> $episode->admitted_on, 'outcome_id'=> $episode->outcome_id, 'primary_diagnosis'=> $episode->primary_diagnosis, 'other_diagnoses'=> $others]; - } - $all_diagnoses = array_unique(array_merge($primary_diagnosis,$other_diagnoses)); - $diag = Diagnosis::where([['hmis_category','<>',''],['hmis_no_inpatient','<>','']])->whereIn('id', $all_diagnoses)->select('id','name', 'hmis_no_inpatient','hmis_category','dependent_option')->get(); - foreach($diag as $dia) { - $diagnosis = $dia->id;$other = []; - $primary = array_filter($patients, function ($item) use ($diagnosis) { - return $item['primary_diagnosis'] == $diagnosis; - }); - foreach ($patients as $patient) if(!empty($patient['other_diagnoses']) && in_array($diagnosis, $patient['other_diagnoses'])) $other[] =$patient; - $diagnoses_data[]=['id'=>$diagnosis,'name'=>$dia->name, 'hmis_category'=>$dia->hmis_category, 'hmis_category_option'=>$dia->hmis_no_inpatient, 'dependent_option'=>$dia->dependent_option, 'primary'=>$primary, 'other'=>$other]; - } - - $diagnosis_categories = HmisCategory::where('section_number', '6')->select('id','number', 'title')->get()->toArray(); - foreach($diagnosis_categories as $diagnosis_category) { - $options=[]; - $category_options = HmisCategoryOptions::where('hmis_category_id', $diagnosis_category['id'])->select('id','number', 'name')->get()->toArray(); - foreach($category_options as $category_option) { - $dependent_options = []; - if(in_array($category_option['id'], $parent_categories)) $dependent_options = HmisCategoryOptions::where('parent_option', $category_option['id'])->select('id','number', 'name')->get()->toArray(); - $options[]=['id'=>$category_option['id'], 'name'=>$category_option['name'], 'number'=>$category_option['number'], 'dependent_options'=>$dependent_options]; - } - $table_options[] = ['category_id'=>$diagnosis_category['id'],'category_name'=>$diagnosis_category['title'],'category_number'=>$diagnosis_category['number'],'category_options'=>$options, 'dependent_options'=>$dependent_options]; - } - return view('reports::hmis_reports.108.index', compact('dates','diagnoses_data','table_options','page')); - } - - public function hmis_108_mental_health (Request $request) { - request()->validate([ - 'date_from' => 'nullable|date|required_with:date_to', - 'date_to' => 'bail|nullable|required_with:date_from|date|after:date_from', - ]); - $start = !empty($request->date_from)? $request->date_from : Carbon::now()->subMonth()->startOfMonth()->format('Y-m-d'); - $end = !empty($request->date_to)? $request->date_to : date("Y-m-t", strtotime($start)); - $citizenship = isset($request->type)? $request->type :1; - $page = 'Mental Health'; - $dates = $investigation_ids = $patients = $primary_diagnosis = $table_options = $other_diagnoses = $diagnoses_data =[]; - if(empty($request->date_from)){ - $dates['last_month'] = date('F', strtotime($start)); - $dates['last_year'] = date('Y', strtotime($start)); - $dates['days'] = date('t', strtotime($start)); - $dates['citizenship'] = $citizenship; - }else { - $dates['start'] = date('d-M-Y', strtotime($start)); - $dates['end'] = date('d-M-Y', strtotime($end)); - $dates['days'] = intval((new DateTime($start))->diff(new DateTime($end))->format("%a")); - $dates['citizenship'] = $citizenship; - } - $episodes = DB::table('inpatient_info as i')->leftJoin('patients as p', 'i.patient_id','p.id') - ->select('i.id','i.patient_id', 'gender', 'date_of_birth as dob','admitted_on', 'outcome_id', 'primary_diagnosis', 'other_diagnoses') - ->whereBetween('admitted_on', [$start, $end]) - ->where([['gender','<>',''], ['primary_diagnosis','<>',''], ['citizenship', $citizenship]]) - ->get(); - foreach ($episodes as $episode) { - $primary_diagnosis[] = $episode->primary_diagnosis; - $others = (!empty($episode->other_diagnoses))? unserialize($episode->other_diagnoses):[]; - if(!empty($others)) foreach($others as $other) if(!empty($other)) $other_diagnoses[] = $other; - $patients[] = ['id'=> $episode->id,'patient_id'=> $episode->patient_id, 'gender'=> $episode->gender, 'age'=> Carbon::parse($episode->dob)->age,'admitted_on'=> $episode->admitted_on, 'outcome_id'=> $episode->outcome_id, 'primary_diagnosis'=> $episode->primary_diagnosis, 'other_diagnoses'=> $others]; - } - $all_diagnoses = array_unique(array_merge($primary_diagnosis,$other_diagnoses)); - $diag = Diagnosis::where([['hmis_category','<>',''],['hmis_no_inpatient','<>','']])->whereIn('id', $all_diagnoses)->select('id','name', 'hmis_no_inpatient','hmis_category','dependent_option')->get(); - foreach($diag as $dia) { - $diagnosis = $dia->id;$other = []; - $primary = array_filter($patients, function ($item) use ($diagnosis) { - return $item['primary_diagnosis'] == $diagnosis; - }); - foreach ($patients as $patient) if(!empty($patient['other_diagnoses']) && in_array($diagnosis, $patient['other_diagnoses'])) $other[] =$patient; - $diagnoses_data[]=['id'=>$diagnosis,'name'=>$dia->name, 'hmis_category'=>$dia->hmis_category, 'hmis_category_option'=>$dia->hmis_no_inpatient, 'dependent_option'=>$dia->dependent_option, 'primary'=>$primary, 'other'=>$other]; - } - - $diagnosis_categories = HmisCategory::where('section_number', '7')->select('id','number', 'title')->get()->toArray(); - foreach($diagnosis_categories as $diagnosis_category) { - $options=[]; - $category_options = HmisCategoryOptions::where('hmis_category_id', $diagnosis_category['id'])->select('id','number', 'name')->get()->toArray(); - foreach($category_options as $category_option) $options[]=['id'=>$category_option['id'], 'name'=>$category_option['name'], 'number'=>$category_option['number']]; - - $table_options[] = ['category_id'=>$diagnosis_category['id'],'category_name'=>$diagnosis_category['title'],'category_number'=>$diagnosis_category['number'],'category_options'=>$options]; - } - return view('reports::hmis_reports.108.index', compact('dates','diagnoses_data','table_options','page')); - } - - public function hmis_108_special_services (Request $request) { - request()->validate([ - 'date_from' => 'nullable|date|required_with:date_to', - 'date_to' => 'bail|nullable|required_with:date_from|date|after:date_from', - ]); - $start = !empty($request->date_from)? $request->date_from : Carbon::now()->subMonth()->startOfMonth()->format('Y-m-d'); - $end = !empty($request->date_to)? $request->date_to : date("Y-m-t", strtotime($start)); - $citizenship = isset($request->type)? $request->type :1; - $page = 'Utilization of Special Services';$table_options =[]; - $dates = $investigation_ids = $counted_investigations =[]; - if(empty($request->date_from)){ - $dates['last_month'] = date('F', strtotime($start)); - $dates['last_year'] = date('Y', strtotime($start)); - $dates['days'] = date('t', strtotime($start)); - $dates['citizenship'] = $citizenship; - }else { - $dates['start'] = date('d-M-Y', strtotime($start)); - $dates['end'] = date('d-M-Y', strtotime($end)); - $dates['days'] = intval((new DateTime($start))->diff(new DateTime($end))->format("%a")); - $dates['citizenship'] = $citizenship; - } - return view('reports::hmis_reports.108.index', compact('dates','counted_investigations','table_options','page')); - } - - public function hmis_108_others (Request $request) { - request()->validate([ - 'date_from' => 'nullable|date|required_with:date_to', - 'date_to' => 'bail|nullable|required_with:date_from|date|after:date_from', - ]); - $start = !empty($request->date_from)? $request->date_from : Carbon::now()->subMonth()->startOfMonth()->format('Y-m-d'); - $end = !empty($request->date_to)? $request->date_to : date("Y-m-t", strtotime($start)); - $citizenship = isset($request->type)? $request->type :1; - $page = 'others'; $dates = $table_options =[];$counter = 0; - $alc_male_10_to_19 = $alc_male_over_25 = $alc_male_over_25 = $tob_male_10_to_19=$tob_male_20_to_24=$tob_male_over_25=$alc_female_10_to_19=$alc_female_20_to_24=$alc_female_over_25=$tob_female_10_to_19=$tob_female_20_to_24=$tob_female_over_25 = []; - if(empty($request->date_from)){ - $dates['last_month'] = date('F', strtotime($start)); - $dates['last_year'] = date('Y', strtotime($start)); - $dates['days'] = date('t', strtotime($start)); - $dates['citizenship'] = $citizenship; - }else { - $dates['start'] = date('d-M-Y', strtotime($start)); - $dates['end'] = date('d-M-Y', strtotime($end)); - $dates['days'] = intval((new DateTime($start))->diff(new DateTime($end))->format("%a")); - $dates['citizenship'] = $citizenship; - } - $risky_behaviours = DB::table('inpatient_info as i')->leftJoin('patient_episodes as e', 'i.episode_id','e.id') - ->leftJoin('triage as t', 't.id','e.triage_id')->leftJoin('patients as p', 'i.patient_id','p.id') - ->select('i.id','i.patient_id', 't.id as triage_id', 't.observations','p.gender', 'p.date_of_birth as dob','admitted_on') - ->where([['observations','<>',''],['gender','<>',''],['citizenship', $citizenship]])->whereBetween('i.admitted_on', [$start, $end]) - ->orWhere([ ['observations', 'LIKE', '%Alcohol use=High%'], - ['observations', 'LIKE', '%Alcohol use=Moderate%'], - ['observations', 'LIKE', '%Alcohol use=Low%'], - ['observations', 'LIKE', '%Tobacco use=High%'], - ['observations', 'LIKE', '%Tobacco use=Moderate%'], - ['observations', 'LIKE', '%Tobacco use=Low%'] - ]) - ->orderBy('patient_id', 'desc') - ->get(); - foreach($risky_behaviours as $risky_behaviour){ - $age = Carbon::parse($risky_behaviour->dob)->age; - $observations = explode(',', $risky_behaviour->observations); - if($risky_behaviour->gender == '1'){ - if($age >9 && $age < 20 && (in_array('Alcohol use=High', $observations) || in_array('Alcohol use=Moderate', $observations) || in_array('Alcohol use=Low', $observations))) $alc_male_10_to_19[] = $risky_behaviour->patient_id; - elseif ($age >19 && $age < 25 && (in_array('Alcohol use=High', $observations) || in_array('Alcohol use=Moderate', $observations) || in_array('Alcohol use=Low', $observations))) $alc_male_20_to_24[] = $risky_behaviour->patient_id; - elseif ($age > 24 && (in_array('Alcohol use=High', $observations) || in_array('Alcohol use=Moderate', $observations) || in_array('Alcohol use=Low', $observations))) $alc_male_over_25[] = $risky_behaviour->patient_id; - elseif($age >9 && $age < 20 && (in_array('Tobacco use=High', $observations) || in_array('Tobacco use=Moderate', $observations) || in_array('Tobacco use=Low', $observations))) $tob_male_10_to_19[] = $risky_behaviour->patient_id; - elseif ($age >19 && $age < 25 && (in_array('Tobacco use=High', $observations) || in_array('Tobacco use=Moderate', $observations) || in_array('Tobacco use=Low', $observations))) $tob_male_20_to_24[] = $risky_behaviour->patient_id; - elseif ($age > 24 && (in_array('Tobacco use=High', $observations) || in_array('Tobacco use=Moderate', $observations) || in_array('Tobacco use=Low', $observations))) $tob_male_over_25[] = $risky_behaviour->patient_id; - }elseif ($risky_behaviour->gender == '2') { - if($age >9 && $age < 20 && (in_array('Alcohol use=High', $observations) || in_array('Alcohol use=Moderate', $observations) || in_array('Alcohol use=Low', $observations))) $alc_female_10_to_19[] = $risky_behaviour->patient_id; - elseif ($age >19 && $age < 25 && (in_array('Alcohol use=High', $observations) || in_array('Alcohol use=Moderate', $observations) || in_array('Alcohol use=Low', $observations))) $alc_female_20_to_24[] = $risky_behaviour->patient_id; - elseif ($age > 24 && (in_array('Alcohol use=High', $observations) || in_array('Alcohol use=Moderate', $observations) || in_array('Alcohol use=Low', $observations))) $alc_female_over_25[] = $risky_behaviour->patient_id; - elseif($age >9 && $age < 20 && (in_array('Tobacco use=High', $observations) || in_array('Tobacco use=Moderate', $observations) || in_array('Tobacco use=Low', $observations))) $tob_female_10_to_19[] = $risky_behaviour->patient_id; - elseif ($age >19 && $age < 25 && (in_array('Tobacco use=High', $observations) || in_array('Tobacco use=Moderate', $observations) || in_array('Tobacco use=Low', $observations))) $tob_female_20_to_24[] = $risky_behaviour->patient_id; - elseif ($age > 24 && (in_array('Tobacco use=High', $observations) || in_array('Tobacco use=Moderate', $observations) || in_array('Tobacco use=Low', $observations))) $tob_female_over_25[] = $risky_behaviour->patient_id; - } - } - $table_options[$counter] = ['alc_male_10_to_19'=>$alc_male_10_to_19,'alc_male_20_to_24'=>$alc_male_over_25,'alc_male_over_25'=>$alc_male_over_25, 'tob_male_10_to_19'=>$tob_male_10_to_19,'tob_male_20_to_24'=>$tob_male_20_to_24,'tob_male_over_25'=>$tob_male_over_25, - 'alc_female_10_to_19'=>$alc_female_10_to_19,'alc_female_20_to_24'=>$alc_female_20_to_24,'alc_female_over_25'=>$alc_female_over_25,'tob_female_10_to_19'=>$tob_female_10_to_19,'tob_female_20_to_24'=>$tob_female_20_to_24,'tob_female_over_25'=>$tob_female_over_25]; - $counter++; $totals= $diagnosed = $presumptive = $screened = []; - - $tuberculosis_screenings = DB::table('inpatient_info as i')->leftJoin('patient_episodes as e', 'i.episode_id','e.id') - ->leftJoin('triage as t', 't.id','e.triage_id')->leftJoin('patients as p', 'i.patient_id','p.id') - ->select('i.id','i.patient_id', 't.id as triage_id', 't.observations','p.gender', 'any_tb_sysmptoms','p.date_of_birth as dob','admitted_on', 'tb_status_assessment') - ->where([['any_tb_sysmptoms','<>',''],['gender','<>',''],['tb_status_assessment','<>','']])->whereBetween('i.admitted_on', [$start, $end]) - ->orderBy('patient_id', 'desc') - ->get()->toArray(); - foreach ($tuberculosis_screenings as $key => $tuberculosis_screening) { - $age = Carbon::parse($tuberculosis_screening->dob)->age; - $totals['total_tb_screened'][] = $tuberculosis_screening->patient_id; - if ($tuberculosis_screening->tb_status_assessment == '1') $totals['total_tb_diagnosed'][] = $tuberculosis_screening->patient_id; - if ($tuberculosis_screening->any_tb_sysmptoms == '1') $totals['total_tb_presumptive'][] = $tuberculosis_screening->patient_id; - if ($age < 10) { - if ($tuberculosis_screening->gender == '1') { - $screened['male_screened_0_9'][] = $tuberculosis_screening->patient_id; - if($tuberculosis_screening->tb_status_assessment == '1') $diagnosed['male_diagnosed_0_9'][] = $tuberculosis_screening->patient_id; - if ($tuberculosis_screening->any_tb_sysmptoms == '1') $presumptive['male_presumptive_0_9'][] = $tuberculosis_screening->patient_id; - } elseif ($tuberculosis_screening->gender == '2') { - $screened['female_screened_0_9'][] = $tuberculosis_screening->patient_id; - if($tuberculosis_screening->tb_status_assessment == '1') $diagnosed['female_diagnosed_0_9'][] = $tuberculosis_screening->patient_id; - if ($tuberculosis_screening->any_tb_sysmptoms == '1') $presumptive['female_presumptive_0_9'][] = $tuberculosis_screening->patient_id; - } - } elseif ($age >9 && $age < 15) { - if ($tuberculosis_screening->gender == '1') { - $screened['male_screened_10_14'][] = $tuberculosis_screening->patient_id; - if($tuberculosis_screening->tb_status_assessment == '1') $diagnosed['male_diagnosed_10_14'][] = $tuberculosis_screening->patient_id; - if ($tuberculosis_screening->any_tb_sysmptoms == '1') $presumptive['male_presumptive_10_14'][] = $tuberculosis_screening->patient_id; - } elseif ($tuberculosis_screening->gender == '2') { - $screened['female_screened_10_14'][] = $tuberculosis_screening->patient_id; - if($tuberculosis_screening->tb_status_assessment == '1') $diagnosed['female_diagnosed_10_14'][] = $tuberculosis_screening->patient_id; - if ($tuberculosis_screening->any_tb_sysmptoms == '1') $presumptive['female_presumptive_10_14'][] = $tuberculosis_screening->patient_id; - } - }elseif ($age >14 && $age < 20) { - if ($tuberculosis_screening->gender == '1') { - $screened['male_screened_15_19'][] = $tuberculosis_screening->patient_id; - if($tuberculosis_screening->tb_status_assessment == '1') $diagnosed['male_diagnosed_15_19'][] = $tuberculosis_screening->patient_id; - if ($tuberculosis_screening->any_tb_sysmptoms == '1') $presumptive['male_presumptive_15_19'][] = $tuberculosis_screening->patient_id; - } elseif ($tuberculosis_screening->gender == '2') { - $screened['female_screened_15_19'][] = $tuberculosis_screening->patient_id; - if($tuberculosis_screening->tb_status_assessment == '1') $diagnosed['female_diagnosed_15_19'][] = $tuberculosis_screening->patient_id; - if ($tuberculosis_screening->any_tb_sysmptoms == '1') $presumptive['female_presumptive_15_19'][] = $tuberculosis_screening->patient_id; - } - } else { - if ($tuberculosis_screening->gender == '1') { - $screened['male_screened_over_20'][] = $tuberculosis_screening->patient_id; - if($tuberculosis_screening->tb_status_assessment == '1') $diagnosed['male_diagnosed_over_20'][] = $tuberculosis_screening->patient_id; - if ($tuberculosis_screening->any_tb_sysmptoms == '1') $presumptive['male_presumptive_over_20'][] = $tuberculosis_screening->patient_id; - } elseif ($tuberculosis_screening->gender == '2') { - $screened['female_screened_over_20'][] = $tuberculosis_screening->patient_id; - if($tuberculosis_screening->tb_status_assessment == '1') $diagnosed['female_diagnosed_over_20'][] = $tuberculosis_screening->patient_id; - if ($tuberculosis_screening->any_tb_sysmptoms == '1') $presumptive['female_presumptive_over_20'][] = $tuberculosis_screening->patient_id; - } - } - - - } - $table_options[$counter] =['totals'=>$totals, 'diagnosed'=>$diagnosed, 'presumptive'=>$presumptive,'screened'=>$screened]; - $counter++; - - return view('reports::hmis_reports.108.index', compact('dates','table_options','page')); - } - - //HMIS 033b: HEALTH UNIT WEEKLY EPIDEMIOLOGICAL SURVEILLANCE REPORT - public function weekly_cases_and_deaths (Request $request){ - request()->validate([ - 'date_from' => 'nullable|date|required_with:date_to', - 'date_to' => 'bail|nullable|required_with:date_from|date|after:date_from', - ]); - $start = !empty($request->date_from)? Carbon::parse($request->date_from)->startOfDay()->toDateString() : Carbon::now()->subWeek()->startOfWeek()->toDateString(); - $end = !empty($request->date_to)? Carbon::parse($request->date_to)->endOfDay()->toDateString() : Carbon::parse($start)->endOfWeek()->toDateString(); - $week_number = empty($request->date_to)? idate('W', strtotime($start)):''; - $hospital_information = HospitalInformation::find(1); - $diagnoses_data = $other_diagnoses_data = []; - $diagnoses = [ - ['name'=>'Malaria (diagnosed)', 'code'=>'MA', 'icd10'=>['B54', 'B531','B538'],'group'=>'1'], - ['name'=>'Dysentery', 'code'=>'DY', 'icd10'=>['A03.9'],'group'=>'1'], - ['name'=>'Severe Acute Respiratory Infection (SARI)', 'code'=>'SA', 'icd10'=>['U04'],'group'=>'1'], - ['name'=>'Acute Flaccid Paralysis', 'code'=>'AF', 'icd10'=>['A80'],'group'=>'1'], - ['name'=>'Adverse Events Following Immunization (AEFI)', 'code'=>'AE', 'icd10'=>['T80'],'group'=>'1'], - ['name'=>'Animal Bites (suspected rabies)', 'code'=>'AB', 'icd10'=>['A82'],'group'=>'1'], - ['name'=>'Bacterial Meningitis', 'code'=>'MG', 'icd10'=>['KH987'],'group'=>'1'], - ['name'=>'Cholera', 'code'=>'CH', 'icd10'=>['A00','A001', 'A009'],'group'=>'1'], - ['name'=>'Guinea Worm', 'code'=>'GW', 'icd10'=>['B72'],'group'=>'1'], - ['name'=>'Measles', 'code'=>'ME', 'icd10'=>['B05','B050','B051','B052','B053','B054','B0581','B0589', 'B059'],'group'=>'1'], - ['name'=>'Neonatal tetanus', 'code'=>'NT', 'icd10'=>['A33', 'A34', 'A35'],'group'=>'1'], - ['name'=>'Plague', 'code'=>'PL', 'icd10'=>['A20'],'group'=>'1'], - ['name'=>'Typhoid Fever', 'code'=>'TF', 'icd10'=>['A01.0'],'group'=>'1'], - ['name'=>'Hepatitis B', 'code'=>'HB', 'icd10'=>['B180', 'B181', 'B191', 'B182', 'B192'],'group'=>'1'], - ['name'=>'Rifampicin resistant TB cases', 'code'=>'DR', 'icd10'=>['U50.2'],'group'=>'1'], - ['name'=>'Yellow Fever', 'code'=>'YF', 'icd10'=>['A95'],'group'=>'1'], - ['name'=>'Other Viral Hemorrhagic Fevers (EVD, MVD, RVF, CCHF)', 'code'=>'VF', 'icd10'=>[],'group'=>'1'], - ['name'=>'Leprosy', 'code'=>'LP', 'icd10'=>['A30'],'group'=>'1'], - ['name'=>'Anthrax', 'code'=>'AX', 'icd10'=>['A22'],'group'=>'1'], - ['name'=>'Maternal death', 'code'=>'MD', 'icd10'=>[],'group'=>'1'], - ['name'=>'Macerated Still births', 'code'=>'MB', 'icd10'=>[],'group'=>'1'], - ['name'=>'Fresh Still Birth', 'code'=>'FB', 'icd10'=>[],'group'=>'2'], - ['name'=>'Early Neonatal deaths 0-7 days', 'code'=>'ND', 'icd10'=>[],'group'=>'1'], - - ['name'=>'Chikungunya', 'code'=>'CG', 'icd10'=>['A920'],'group'=>'2'], - ['name'=>'Dengue', 'code'=>'DG', 'icd10'=>['A90', 'A91'],'group'=>'2'], - ['name'=>'Influenza-like Illness', 'code'=>'IL', 'icd10'=>[],'group'=>'2'], - ['name'=>'Acute viral hepatitis', 'code'=>'HP', 'icd10'=>['B179'],'group'=>'2'], - ['name'=>'Dracunculiasis', 'code'=>'DC', 'icd10'=>['B72'],'group'=>'2'], - ['name'=>'Onchocerciasis', 'code'=>'OC', 'icd10'=>['B7300','B7301','B7302','B7309','B731'],'group'=>'2'], - ['name'=>'Buruli ulcer', 'code'=>'BU', 'icd10'=>[],'group'=>'2'], - ['name'=>'Lymphatic Filariasis', 'code'=>'LF', 'icd10'=>['B74.0','B74.9'],'group'=>'2'], - ['name'=>'Noma', 'code'=>'NO', 'icd10'=>[],'group'=>'2'], - ['name'=>'Human Influenza due to a new subtype', 'code'=>'HN', 'icd10'=>[],'group'=>'2'], - ['name'=>'Severe Acute Respiratory Syndrome (SARS)', 'code'=>'SS', 'icd10'=>['U04.9'],'group'=>'2'], - ['name'=>'Smallpox', 'code'=>'SP', 'icd10'=>['B03'],'group'=>'2'], - ['name'=>'Diarrhoea with dehydration <5', 'code'=>'DD', 'icd10'=>['A09.0'],'group'=>'2'], - ['name'=>'Severe pneumonia <5', 'code'=>'PN', 'icd10'=>[],'group'=>'2'], - ['name'=>'Human African Trypanosomiasis', 'code'=>'TX', 'icd10'=>['B569'],'group'=>'2'], - ['name'=>'Trachoma', 'code'=>'TR', 'icd10'=>['B940'],'group'=>'2'], - ['name'=>'Schistosomiasis', 'code'=>'SC', 'icd10'=>['B650','B651','B652','B658','B659'],'group'=>'2'], - ['name'=>'Diphtheria', 'code'=>'DP', 'icd10'=>['A360','A361','A362','A363', 'A369'],'group'=>'2'], - ['name'=>'Pertussis (Whooping cough)', 'code'=>'WC', 'icd10'=>['A3700','A3701'],'group'=>'2'], - ['name'=>'Brucellosis', 'code'=>'BC', 'icd10'=>['A230','A231','A232','A233','A238','A239','A23.9'],'group'=>'2'], - ['name'=>'Kala azar', 'code'=>'KA', 'icd10'=>['B55','B550','B551','B552','B559'],'group'=>'2'], - ['name'=>'Nodding Syndrome', 'code'=>'NS', 'icd10'=>[],'group'=>'2'], - ['name'=>'Adverse Drug Reactions (ADR)', 'code'=>'AR', 'icd10'=>[],'group'=>'2'], - ]; - foreach ($diagnoses as $diagnosis) { - $diagnosis_ids = !empty($diagnosis['icd10'])? Diagnosis::whereIn('icd10_code', $diagnosis['icd10'])->pluck('id')->toArray():[]; - $case_ids = $death_ids =[]; - foreach($diagnosis_ids as $id){ - $inpatient_episodes = InpatientInfo::whereBetween('admitted_on', [$start, $end])->where(function ($query) use($id) { $query->where('primary_diagnosis', $id)->orWhere('other_diagnoses', 'LIKE', '%'.$id.'%'); })->select('id', 'patient_id', 'primary_diagnosis', 'other_diagnoses', 'outcome_id'); - $outpatient_episodes = Consultation::whereBetween('created_at', [$start, $end])->where(function ($query) use($id) { $query->where('primary_diagnosis', $id)->orWhere('other_diagnoses', 'LIKE', '%'.$id.'%'); })->select('id', 'patient_id', 'primary_diagnosis', 'other_diagnoses', 'outcome_id')->union($inpatient_episodes)->get(); - foreach ($outpatient_episodes as $episodes){ - if(in_array($episodes->primary_diagnosis, $diagnosis_ids)){ - if($episodes->outcome_id == '5') $death_ids[] = $episodes->patient_id; - $case_ids[] = $episodes->patient_id; - } else { - $other_ids = unserialize($episodes->other_diagnoses); - if(!empty($other_ids[0])) if(in_array($id, $other_ids)) { - if($episodes->outcome_id == '5') $death_ids[] = $episodes->patient_id; - $case_ids[] = $episodes->patient_id; - } - } - } - } - if($diagnosis['group'] == '2' && (!empty($case_ids) || !empty($death_ids))) $other_diagnoses_data[] = ['name'=>$diagnosis['name'], 'code'=>$diagnosis['code'], 'deaths'=>array_unique($death_ids), 'cases'=>array_unique($case_ids)]; - elseif($diagnosis['group'] == '1') $diagnoses_data[]=['name'=>$diagnosis['name'], 'code'=>$diagnosis['code'], 'deaths'=>array_unique($death_ids), 'cases'=>array_unique($case_ids)]; - } - $new_attendance = $all_attendances = $rdt_data = $tb_episodes = $tb_data = []; - $attendances = Triage::whereBetween('created_at', [$start, $end])->select('patient_id', 're_attendance', 'new_attendance','any_tb_sysmptoms', 'episode_id')->get(); - $rdt_tests = Consultation::whereBetween('consultations.created_at', [$start, $end])->whereIn('rdt', [0,1])->leftJoin('treatments', 'treatments.episode_id','consultations.episode_id')->select('consultations.patient_id', 'dispense_status', 'rdt')->get(); - foreach ($attendances as $attendance) { - if($attendance->new_attendance == '1') $new_attendance[] = $attendance->patient_id; - $all_attendances[] = $attendance->patient_id; - if(!is_null($attendance->any_tb_sysmptoms)) { - if($attendance->any_tb_sysmptoms == '1') $tb_presumptive[] = $attendance->patient_id; - $tb_cases[] = $attendance->patient_id; - $tb_episodes[] = $attendance->episode_id; - } - } - foreach ($rdt_tests as $rdt_test) { - $rdt_cases[] = $rdt_test->patient_id; - if(!empty($rdt_test->rdt)) { - $positive_rdt[] = $rdt_test->patient_id; - if($rdt_test->dispense_status == '1') $positive_rdt_treated[] = $rdt_test->patient_id; - } - elseif ($rdt_test->rdt =='0' && $rdt_test->dispense_status == '1') $negative_rdt_treated[] = $rdt_test->patient_id; - } - if (!empty($tb_episodes)) { $episodes=[]; - $episodes[] =Consultation::whereIn('consultations.episode_id', $tb_episodes)->leftJoin('treatments', 'treatments.episode_id','consultations.episode_id')->select('consultations.patient_id', 'dispense_status', 'tb_status_assessment')->get()->toArray(); - $episodes[] =InpatientInfo::whereIn('inpatient_info.episode_id', $tb_episodes)->leftJoin('treatments', 'treatments.episode_id','inpatient_info.episode_id')->select('inpatient_info.patient_id', 'dispense_status', 'tb_status_assessment')->get()->toArray(); - foreach ($episodes as $episode) { - foreach ($episode as $value) { - if ($value['tb_status_assessment'] == '1') { - $def_tb[] = $value['patient_id']; - if ($value['dispense_status'] == '1') $tb_treated[] = $value['patient_id']; - } - } - } - } - $rdt_data['rdt_cases'] = $rdt_cases ?? []; - $rdt_data['positive_rdt'] = $positive_rdt ?? []; - $rdt_data['positive_rdt_treated'] = $positive_rdt_treated ?? []; - $rdt_data['negative_rdt_treated'] = $negative_rdt_treated ?? []; - $tb_data['tb_cases'] = $tb_cases ?? []; - $tb_data['tb_presumptive'] = $tb_presumptive ?? []; - $tb_data['def_tb'] = $def_tb ?? []; - $tb_data['tb_treated'] = $tb_treated ?? []; - - return view('reports::hmis_reports.033.cases_and_deaths', compact('start','end', 'week_number','hospital_information', 'diagnoses_data', 'other_diagnoses_data', 'new_attendance', 'all_attendances','rdt_data','tb_data')); - - } - - public function print_hmis_033b (Request $request){ - $diagnoses_data = !empty($request->diagnoses_data)? unserialize($request->diagnoses_data):[]; - $other_diagnoses_data = !empty($request->other_diagnoses_data)? unserialize($request->other_diagnoses_data):[]; - $start = $request->start; - $end = $request->end; - $week_number = !empty($request->week_number)? $request->week_number:''; - $pdf = SnappyPDF::loadView('reports::hmis_reports.033.print_033b', compact('start','end', 'week_number','diagnoses_data','other_diagnoses_data')) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', ''. config('app.name') .' - Printed On ' . date('Y-m-d') . ' By ' . auth()->user()->first_name . " " . auth()->user()->last_name . ''); - return $pdf->inline(__('hmis_reports.hmis_108_report_census') . date(" d-m-y h:ia") . '.pdf'); - } -} diff --git a/docker/statistics/Modules/Reports/Http/Controllers/HmisController002.php b/docker/statistics/Modules/Reports/Http/Controllers/HmisController002.php deleted file mode 100755 index 3c66266a..00000000 --- a/docker/statistics/Modules/Reports/Http/Controllers/HmisController002.php +++ /dev/null @@ -1,161 +0,0 @@ -search_date_by){ - case 'yesterday': - $end_date = Carbon::yesterday()->endOfDay()->format('Y-m-d H:i:s'); - $start_date = Carbon::yesterday()->startOfDay()->format('Y-m-d H:i:s'); - $search_text .= "Yesterday "; - break; - case 'custom_date': - $end_date = Carbon::parse($request->start_date)->endOfDay()->format('Y-m-d H:i:s'); - $start_date = Carbon::parse($request->start_date)->startOfDay()->format('Y-m-d H:i:s'); - $search_text .= "From: " . streamline_date($start_date) . " "; - break; - case 'custom_date_range': - $end_date = Carbon::parse($request->end_date)->endOfDay()->format('Y-m-d H:i:s'); - $start_date = Carbon::parse($request->start_date)->startOfDay()->format('Y-m-d H:i:s'); - $search_text .= "From: " . streamline_date($start_date) . " to " . streamline_date($end_date) . " "; - break; - case 'today': - default: - $end_date = Carbon::today()->endOfDay()->format('Y-m-d H:i:s'); - $start_date = Carbon::today()->startOfDay()->format('Y-m-d H:i:s'); - $search_text .= "Today "; - break; - } - - $episodes = PatientEpisode::leftJoin('triage', 'patient_episodes.triage_id', '=', 'triage.id') - ->leftJoin('patients', 'patient_episodes.patient_id', '=', 'patients.id') - ->leftJoin('consultations as c', 'patient_episodes.id', '=', 'c.episode_id') - ->leftJoin('districts', 'patients.district_id', '=', 'districts.id') - ->leftJoin('subcounties', 'patients.subcounty_id', '=', 'subcounties.id') - ->leftJoin('parishes', 'patients.parish_id', '=', 'parishes.id') - ->leftJoin('villages', 'patients.village_id', '=', 'villages.id') - ->leftJoin('family_relations', 'patients.next_of_kin_relationship', '=', 'family_relations.id') - ->select('patient_episodes.id as id', 'first_name', 'last_name', 'date_of_birth', 'gender', 'citizenship', 'next_of_kin', 'national_id', 'phone', 'rbs', 'phone_of_next_of_kin', 'next_of_kin_relationship', 'family_relations.name as relation', 'observations', 'new_attendance', 'villages.name as village', 'parishes.name as parish', 'subcounties.name as subcounty', 'districts.name as district', 'patient_episodes.created_at', 'patient_episodes.consultation_id','patient_episodes.triage_id') - ->whereBetween('patient_episodes.created_at', [$start_date, $end_date])->orderBy('id', 'asc') - ->get(); - - $hospital_info = HospitalInformation::find(1); - - return view('reports::hmis_reports.002.page-1', compact('search_text', 'episodes', 'start_date','hospital_info','end_date')); - } - - public function page_1_print($start_date, $end_date) { - $episodes = PatientEpisode::leftJoin('triage', 'patient_episodes.triage_id', '=', 'triage.id') - ->leftJoin('patients', 'patient_episodes.patient_id', '=', 'patients.id') - ->leftJoin('consultations as c', 'patient_episodes.id', '=', 'c.episode_id') - ->leftJoin('districts', 'patients.district_id', '=', 'districts.id') - ->leftJoin('subcounties', 'patients.subcounty_id', '=', 'subcounties.id') - ->leftJoin('parishes', 'patients.parish_id', '=', 'parishes.id') - ->leftJoin('villages', 'patients.village_id', '=', 'villages.id') - ->leftJoin('family_relations', 'patients.next_of_kin_relationship', '=', 'family_relations.id') - ->select('patient_episodes.id as id', 'first_name', 'last_name', 'date_of_birth', 'gender', 'citizenship', 'next_of_kin', 'national_id', 'phone', 'rbs', 'phone_of_next_of_kin', 'next_of_kin_relationship', 'family_relations.name as relation', 'observations', 'new_attendance', 'villages.name as village', 'parishes.name as parish', 'subcounties.name as subcounty', 'districts.name as district', 'patient_episodes.created_at', 'patient_episodes.consultation_id','patient_episodes.triage_id') - ->whereBetween('patient_episodes.created_at', [$start_date, $end_date])->orderBy('id', 'asc') - ->get(); - - $search_text = "From: " . streamline_date($start_date) . " to " . streamline_date($end_date); - $hospital_info = HospitalInformation::find(1); - $data = [ - 'search_text' => $search_text, - 'episodes' => $episodes, - 'hospital_info' => $hospital_info, - 'start_date' => $start_date, - 'end_date' => $end_date - ]; - - $pdf = SnappyPDF::loadView('reports::hmis_reports/002/page-1-print', $data) - ->setOrientation('landscape') - ->setPaper('a3') - ->setOption('margin-bottom', 10) - ->setOption('footer-left', 'Stre@mline') - ->setOption('footer-right', '[page] of [toPage]'); - - return $pdf->inline('HMIS OPD 002 - Outpatient Register' . date(" d-m-y h:ia") . '.pdf'); - } - - public function page_2(Request $request) { - $search_text = !empty($request->search_text)? $request->search_text :""; - if(!empty($request->page_1_start_date)){ - $end_date = $request->end_date; - $start_date = $request->page_1_start_date; - } else - switch ($request->search_date_by){ - case 'yesterday': - $end_date = Carbon::yesterday()->endOfDay()->format('Y-m-d H:i:s'); - $start_date = Carbon::yesterday()->startOfDay()->format('Y-m-d H:i:s'); - $search_text .= "Yesterday "; - break; - case 'custom_date': - $end_date = Carbon::parse($request->start_date)->endOfDay()->format('Y-m-d H:i:s'); - $start_date = Carbon::parse($request->start_date)->startOfDay()->format('Y-m-d H:i:s'); - $search_text .= "From: " . streamline_date($start_date) . " "; - break; - case 'custom_date_range': - $end_date = Carbon::parse($request->end_date)->endOfDay()->format('Y-m-d H:i:s'); - $start_date = Carbon::parse($request->start_date)->startOfDay()->format('Y-m-d H:i:s'); - $search_text .= "From: " . streamline_date($start_date) . " to " . streamline_date($end_date) . " "; - break; - case 'today': - default: - $end_date = Carbon::today()->endOfDay()->format('Y-m-d H:i:s'); - $start_date = Carbon::today()->startOfDay()->format('Y-m-d H:i:s'); - $search_text .= "Today "; - break; - } - - $episodes = PatientEpisode::leftJoin('triage', 'patient_episodes.triage_id', '=', 'triage.id') - ->leftJoin('patients', 'patient_episodes.patient_id', '=', 'patients.id') - ->leftJoin('consultations as c', 'patient_episodes.id', '=', 'c.episode_id') - ->leftJoin('treatments as t', 'patient_episodes.id', '=', 't.episode_id') - ->leftJoin('investigation_results as or', 'or.episode_id','patient_episodes.id') - ->leftJoin('eye_clinic_main_exam as e', 'patient_episodes.id', '=', 'e.episode_id') - ->select('patient_episodes.id as id', 'first_name', 'last_name', 'date_of_birth', 'gender', 'next_of_kin', 'national_id','patients.id as patient_id', 'attendance', 'phone', 'phone_of_next_of_kin', 'new_attendance', 're_attendance','primary_diagnosis','other_diagnoses','rdt',DB::raw('GROUP_CONCAT(drugs) as drugs'),DB::raw('GROUP_CONCAT(frequencies) as frequencies'),DB::raw('GROUP_CONCAT(durations) as durations'),DB::raw('GROUP_CONCAT(doses) as doses'),'tb_status_assessment', - 'next_of_kin_relationship', 'right_eye_diagnosis', 'triage.symptoms', 'c.symptoms as symps', 'patient_episodes.clinic_id', 'left_eye_diagnosis', DB::raw('GROUP_CONCAT(or.investigation_id) as investigation_ids'), 'observations', 'new_attendance', 'patient_episodes.created_at', 'patient_episodes.consultation_id','patient_episodes.triage_id', 'number', 'c.referred_to') - ->whereBetween('patient_episodes.created_at', [$start_date, $end_date])->orderBy('id', 'asc')->groupBy('id') - ->get(); - - $hospital_info = HospitalInformation::find(1); - $fever_symptom_ids = DB::table('symptoms')->where('name', 'LIKE', "%fever%")->orderBy('name')->pluck('id')->toArray(); - $tb_clinic_ids = DB::table('clinics')->where('name', 'LIKE', "%tb%")->orWhere('name', 'LIKE', "%tuber%")->pluck('id')->toArray(); - $investigations = Investigation::whereIn('hmis_002_slug', [2,3])->pluck('id')->toArray(); - return view('reports::hmis_reports.002.page-2', compact('search_text', 'episodes', 'start_date', 'end_date', 'hospital_info', 'fever_symptom_ids','tb_clinic_ids','investigations')); - } - - public function page_2_print(Request $request) { - $data = [ - 'search_text' => $request->search_text, - 'episodes'=> unserialize($request->episodes), - 'start_date' => $request->start_date, - 'end_date' => $request->end_date, - 'hospital_info' => unserialize($request->hospital_info), - 'fever_symptom_ids'=> unserialize($request->fever_symptom_ids), - 'tb_clinic_ids'=> unserialize($request->tb_clinic_ids), - 'investigations'=> unserialize($request->investigations) - ]; - - $pdf = SnappyPDF::loadView('reports::hmis_reports/002/page-2-print', $data) - ->setOrientation('landscape') - ->setPaper('a3') - ->setOption('margin-bottom', 10) - ->setOption('footer-left', 'Stre@mline') - ->setOption('footer-right', '[page] of [toPage]'); - - return $pdf->inline('HMIS OPD 002 - Outpatient Register' . date(" d-m-y h:ia") . '.pdf'); - } -} diff --git a/docker/statistics/Modules/Reports/Http/Controllers/HmisController105.php b/docker/statistics/Modules/Reports/Http/Controllers/HmisController105.php deleted file mode 100755 index 06f56220..00000000 --- a/docker/statistics/Modules/Reports/Http/Controllers/HmisController105.php +++ /dev/null @@ -1,762 +0,0 @@ -date_from)) { - $attendance_from = Carbon::createFromFormat('d-m-Y', $request->date_from)->format('Y-m-d'); - // Add one day to make the report accurate - $attendance_to = Carbon::createFromFormat('d-m-Y', $request->date_to)->addDays(1)->format('Y-m-d'); - - $dateRange = $request->date_from . '/' . $request->date_to; - } else { - $attendance_from = Carbon::today()->subDays(6)->format('Y-m-d'); - $attendance_to = Carbon::today()->addDays(1)->format('Y-m-d'); - - $dateRange = Carbon::today()->subDays(6)->format('d-m-Y') . '/' . Carbon::today()->addDays(1)->format('d-m-Y'); - } - - $patient_ids_male_0_28_days_new_attendance = []; - $patient_ids_male_0_28_days_re_attendance = []; - $patient_ids_female_0_28_days_new_attendance = []; - $patient_ids_female_0_28_days_re_attendance = []; - - $patient_ids_male_29days_4yrs_new_attendance = []; - $patient_ids_male_29days_4yrs_re_attendance = []; - $patient_ids_female_29days_4yrs_new_attendance = []; - $patient_ids_female_29days_4yrs_re_attendance = []; - - $patient_ids_male_5_9yrs_new_attendance = []; - $patient_ids_male_5_9yrs_re_attendance = []; - $patient_ids_female_5_9yrs_new_attendance = []; - $patient_ids_female_5_9yrs_re_attendance = []; - - $patient_ids_male_10_19yrs_new_attendance = []; - $patient_ids_male_10_19yrs_re_attendance = []; - $patient_ids_female_10_19yrs_new_attendance = []; - $patient_ids_female_10_19yrs_re_attendance = []; - - $patient_ids_male_20yrs_new_attendance = []; - $patient_ids_male_20yrs_re_attendance = []; - $patient_ids_female_20yrs_new_attendance = []; - $patient_ids_female_20yrs_re_attendance = []; - - - /*$triageRecords = DB::table('triage')->whereIn('new_attendance', [0, 1])->whereIn('re_attendance', [0, 1]) - ->whereBetween('created_at', [$attendance_from, $attendance_to]) - ->select('patient_id', 'new_attendance', 're_attendance')->get();*/ - $triageRecords = DB::table('triage')->whereBetween('created_at', [$attendance_from, $attendance_to]) - ->where(function($q) { - $q->whereIn('new_attendance', [0, 1]) - ->orWhereIn('re_attendance', [0, 1]); - })->select('patient_id', 'new_attendance', 're_attendance')->get(); - - - foreach ($triageRecords as $triage): -// Get patient and their age - $patient = DB::table('patients')->where('id', $triage->patient_id)->select('id', 'date_of_birth', 'gender', 'created_at')->first(); - - if ($patient && in_array($patient->gender, [1, 2])): // Check if patient has valid gender - $dateOfBirth = Carbon::parse($patient->date_of_birth); - //$dateCreated = Carbon::parse($patient->created_at); - $currentDateTimeStamp = Carbon::now(); - - $diffInDays = $dateOfBirth->diffInDays($currentDateTimeStamp); - - - switch ($diffInDays): - case ($diffInDays >= 0 && $diffInDays <= 29): // 0 - 28 days olds - if ($patient->gender == 1): // Males - - if (!empty($triage->new_attendance)): - $patient_ids_male_0_28_days_new_attendance[] = $patient->id; - endif; - - if (!empty($triage->re_attendance)): - $patient_ids_male_0_28_days_re_attendance[] = $patient->id; - endif; - elseif ($patient->gender == 2): // Females - - if (!empty($triage->new_attendance)): - $patient_ids_female_0_28_days_new_attendance[] = $patient->id; - endif; - - if (!empty($triage->re_attendance)): - $patient_ids_female_0_28_days_re_attendance[] = $patient->id; - endif; - endif; - break; - case ($diffInDays >= 28 && $diffInDays <= 1825): // 29 Days - 4 Years - if ($patient->gender == 1): // Males - - if (!empty($triage->new_attendance)): - $patient_ids_male_29days_4yrs_new_attendance[] = $patient->id; - endif; - - if (!empty($triage->re_attendance)): - $patient_ids_male_29days_4yrs_re_attendance[] = $patient->id; - endif; - elseif ($patient->gender == 2): // Females - - if (!empty($triage->new_attendance)): - $patient_ids_female_29days_4yrs_new_attendance[] = $patient->id; - endif; - - if (!empty($triage->re_attendance)): - $patient_ids_female_29days_4yrs_re_attendance[] = $patient->id; - endif; - endif; - break; - case ($diffInDays >= 1826 && $diffInDays <= 3650): // 5 - 9 Years - if ($patient->gender == 1): // Males - - if (!empty($triage->new_attendance)): - $patient_ids_male_5_9yrs_new_attendance[] = $patient->id; - endif; - - if (!empty($triage->re_attendance)): - $patient_ids_male_5_9yrs_re_attendance[] = $patient->id; - endif; - elseif ($patient->gender == 2): // Females - - if (!empty($triage->new_attendance)): - $patient_ids_female_5_9yrs_new_attendance[] = $patient->id; - endif; - - if (!empty($triage->re_attendance)): - $patient_ids_female_5_9yrs_re_attendance[] = $patient->id; - endif; - endif; - break; - case ($diffInDays >= 3651 && $diffInDays <= 7300): // 10 - 19 Years - if ($patient->gender == 1): // Males - - if (!empty($triage->new_attendance)): - $patient_ids_male_10_19yrs_new_attendance[] = $patient->id; - endif; - - if (!empty($triage->re_attendance)): - $patient_ids_male_10_19yrs_re_attendance[] = $patient->id; - endif; - elseif ($patient->gender == 2): // Females - - if (!empty($triage->new_attendance)): - $patient_ids_female_10_19yrs_new_attendance[] = $patient->id; - endif; - - if (!empty($triage->re_attendance)): - $patient_ids_female_10_19yrs_re_attendance[] = $patient->id; - endif; - endif; - break; - case ($diffInDays >= 7301): // 20 Years & Above - if ($patient->gender == 1): // Males - - if (!empty($triage->new_attendance)): - $patient_ids_male_20yrs_new_attendance[] = $patient->id; - endif; - - if (!empty($triage->re_attendance)): - $patient_ids_male_20yrs_re_attendance[] = $patient->id; - endif; - elseif ($patient->gender == 2): // Females - - if (!empty($triage->new_attendance)): - $patient_ids_female_20yrs_new_attendance[] = $patient->id; - endif; - - if (!empty($triage->re_attendance)): - $patient_ids_female_20yrs_re_attendance[] = $patient->id; - endif; - endif; - break; - default: - break; - endswitch; - endif; - endforeach; - - $printing = false; - - - return view('reports::hmis_reports.105.index', compact('hospital_information', 'attendance_from', 'attendance_to', - 'patient_ids_male_0_28_days_new_attendance', 'patient_ids_male_0_28_days_re_attendance', - 'patient_ids_female_0_28_days_new_attendance', 'patient_ids_female_0_28_days_re_attendance', - 'patient_ids_male_29days_4yrs_new_attendance', 'patient_ids_male_29days_4yrs_re_attendance', - 'patient_ids_female_29days_4yrs_new_attendance', 'patient_ids_female_29days_4yrs_re_attendance', - 'patient_ids_male_5_9yrs_new_attendance', 'patient_ids_male_5_9yrs_re_attendance', - 'patient_ids_female_5_9yrs_new_attendance', 'patient_ids_female_5_9yrs_re_attendance', - 'patient_ids_male_10_19yrs_new_attendance', 'patient_ids_male_10_19yrs_re_attendance', - 'patient_ids_female_10_19yrs_new_attendance', 'patient_ids_female_10_19yrs_re_attendance', - 'patient_ids_male_20yrs_new_attendance', 'patient_ids_male_20yrs_re_attendance', 'dateRange', - 'patient_ids_female_20yrs_new_attendance', 'patient_ids_female_20yrs_re_attendance', 'printing')); - } - - public function print_hmis_105(Request $request) { - - $hospital_information = HospitalInformation::find(1); - //dd($request->all()); - - if(request()->segment(4)) { - $attendance_from = request()->segment(4); - // Add one day to make the report accurate - $attendance_to = request()->segment(5); - - $dateRange = $request->date_from . '/' . $request->date_to; - } else { - $attendance_from = Carbon::today()->subDays(6)->format('Y-m-d'); - $attendance_to = Carbon::today()->addDays(1)->format('Y-m-d'); - - $dateRange = Carbon::today()->subDays(6)->format('d-m-Y') . '/' . Carbon::today()->addDays(1)->format('d-m-Y'); - } - - $patient_ids_male_0_28_days_new_attendance = []; - $patient_ids_male_0_28_days_re_attendance = []; - $patient_ids_female_0_28_days_new_attendance = []; - $patient_ids_female_0_28_days_re_attendance = []; - - $patient_ids_male_29days_4yrs_new_attendance = []; - $patient_ids_male_29days_4yrs_re_attendance = []; - $patient_ids_female_29days_4yrs_new_attendance = []; - $patient_ids_female_29days_4yrs_re_attendance = []; - - $patient_ids_male_5_9yrs_new_attendance = []; - $patient_ids_male_5_9yrs_re_attendance = []; - $patient_ids_female_5_9yrs_new_attendance = []; - $patient_ids_female_5_9yrs_re_attendance = []; - - $patient_ids_male_10_19yrs_new_attendance = []; - $patient_ids_male_10_19yrs_re_attendance = []; - $patient_ids_female_10_19yrs_new_attendance = []; - $patient_ids_female_10_19yrs_re_attendance = []; - - $patient_ids_male_20yrs_new_attendance = []; - $patient_ids_male_20yrs_re_attendance = []; - $patient_ids_female_20yrs_new_attendance = []; - $patient_ids_female_20yrs_re_attendance = []; - - if (!empty($attendance_from) && !empty($attendance_to)) { - - $triageRecords = DB::table('triage')->whereIn('new_attendance', [0, 1])->whereIn('re_attendance', [0, 1]) - ->whereBetween('created_at', [$attendance_from, $attendance_to]) - ->select('patient_id', 'new_attendance', 're_attendance')->get(); - - foreach ($triageRecords as $triage): -// Get patient and their age - $patient = DB::table('patients')->where('id', $triage->patient_id)->select('id', 'date_of_birth', 'gender', 'created_at')->first(); - - if ($patient && in_array($patient->gender, [1, 2])): // Check if patient has valid gender - $dateOfBirth = Carbon::parse($patient->date_of_birth); - $dateCreated = Carbon::parse($patient->created_at); - - $diffInDays = $dateOfBirth->diffInDays($dateCreated); - - - switch ($diffInDays): - case ($diffInDays >= 0 && $diffInDays <= 29): // 0 - 28 days olds - if ($patient->gender == 1): // Males - - if ($triage->new_attendance): - $patient_ids_male_0_28_days_new_attendance[] = $patient->id; - endif; - - if ($triage->re_attendance): - $patient_ids_male_0_28_days_re_attendance[] = $patient->id; - endif; - - elseif ($patient->gender == 2): // Females - - if ($triage->new_attendance): - $patient_ids_female_0_28_days_new_attendance[] = $patient->id; - endif; - - if ($triage->re_attendance): - $patient_ids_female_0_28_days_re_attendance[] = $patient->id; - endif; - - endif; - break; - case ($diffInDays >= 28 && $diffInDays <= 1825): // 29 Days - 4 Years - if ($patient->gender == 1): // Males - - if ($triage->new_attendance): - $patient_ids_male_29days_4yrs_new_attendance[] = $patient->id; - endif; - - if ($triage->re_attendance): - $patient_ids_male_29days_4yrs_re_attendance[] = $patient->id; - endif; - - elseif ($patient->gender == 2): // Females - - if ($triage->new_attendance): - $patient_ids_female_29days_4yrs_new_attendance[] = $patient->id; - endif; - - if ($triage->re_attendance): - $patient_ids_female_29days_4yrs_re_attendance[] = $patient->id; - endif; - - endif; - break; - case ($diffInDays >= 1826 && $diffInDays <= 3650): // 5 - 9 Years - if ($patient->gender == 1): // Males - - if ($triage->new_attendance): - $patient_ids_male_5_9yrs_new_attendance[] = $patient->id; - endif; - - if ($triage->re_attendance): - $patient_ids_male_5_9yrs_re_attendance[] = $patient->id; - endif; - - elseif ($patient->gender == 2): // Females - - if ($triage->new_attendance): - $patient_ids_female_5_9yrs_new_attendance[] = $patient->id; - endif; - - if ($triage->re_attendance): - $patient_ids_female_5_9yrs_re_attendance[] = $patient->id; - endif; - - endif; - break; - case ($diffInDays >= 3651 && $diffInDays <= 7300): // 10 - 19 Years - if ($patient->gender == 1): // Males - - if ($triage->new_attendance): - $patient_ids_male_10_19yrs_new_attendance[] = $patient->id; - endif; - - if ($triage->re_attendance): - $patient_ids_male_10_19yrs_re_attendance[] = $patient->id; - endif; - - elseif ($patient->gender == 2): // Females - - if ($triage->new_attendance): - $patient_ids_female_10_19yrs_new_attendance[] = $patient->id; - endif; - - if ($triage->re_attendance): - $patient_ids_female_10_19yrs_re_attendance[] = $patient->id; - endif; - endif; - break; - case ($diffInDays >= 7301): // 20 Years & Above - if ($patient->gender == 1): // Males - - if ($triage->new_attendance): - $patient_ids_male_20yrs_new_attendance[] = $patient->id; - endif; - - if ($triage->re_attendance): - $patient_ids_male_20yrs_re_attendance[] = $patient->id; - endif; - - elseif ($patient->gender == 2): // Females - - if ($triage->new_attendance): - $patient_ids_female_20yrs_new_attendance[] = $patient->id; - endif; - - if ($triage->re_attendance): - $patient_ids_female_20yrs_re_attendance[] = $patient->id; - endif; - endif; - break; - - default: - break; - endswitch; - - endif; - endforeach; - } - - $data = [ - 'hospital_information' => $hospital_information, - 'attendance_from' => $attendance_from, - 'attendance_to' => $attendance_to, - 'patient_ids_male_0_28_days_new_attendance' => $patient_ids_male_0_28_days_new_attendance, - 'patient_ids_male_0_28_days_re_attendance' => $patient_ids_male_0_28_days_re_attendance, - 'patient_ids_female_0_28_days_new_attendance' => $patient_ids_female_0_28_days_new_attendance, - 'patient_ids_female_0_28_days_re_attendance' => $patient_ids_female_0_28_days_re_attendance, - 'patient_ids_male_29days_4yrs_new_attendance' => $patient_ids_male_29days_4yrs_new_attendance, - 'patient_ids_male_29days_4yrs_re_attendance' => $patient_ids_male_29days_4yrs_re_attendance, - 'patient_ids_female_29days_4yrs_new_attendance' => $patient_ids_female_29days_4yrs_new_attendance, - 'patient_ids_female_29days_4yrs_re_attendance' => $patient_ids_female_29days_4yrs_re_attendance, - 'patient_ids_male_5_9yrs_new_attendance' => $patient_ids_male_5_9yrs_new_attendance, - 'patient_ids_male_5_9yrs_re_attendance' => $patient_ids_male_5_9yrs_re_attendance, - 'patient_ids_female_5_9yrs_new_attendance' => $patient_ids_female_5_9yrs_new_attendance, - 'patient_ids_female_5_9yrs_re_attendance' => $patient_ids_female_5_9yrs_re_attendance, - 'patient_ids_male_10_19yrs_new_attendance' => $patient_ids_male_10_19yrs_new_attendance, - 'patient_ids_male_10_19yrs_re_attendance' => $patient_ids_male_10_19yrs_re_attendance, - 'patient_ids_female_10_19yrs_new_attendance' => $patient_ids_female_10_19yrs_new_attendance, - 'patient_ids_female_10_19yrs_re_attendance' => $patient_ids_female_10_19yrs_re_attendance, - 'patient_ids_male_20yrs_new_attendance' => $patient_ids_male_20yrs_new_attendance, - 'patient_ids_male_20yrs_re_attendance' => $patient_ids_male_20yrs_re_attendance, - 'patient_ids_female_20yrs_new_attendance' => $patient_ids_female_20yrs_new_attendance, - 'patient_ids_female_20yrs_re_attendance' => $patient_ids_female_20yrs_re_attendance, - 'printing' => false - ]; - - $pdf = SnappyPDF::loadView('reports::hmis_reports/105/print', $data) - ->setOrientation('landscape') - ->setPaper('a4') - ->setOption('margin-bottom', 10) - ->setOption('footer-left', 'Stre@mline') - ->setOption('footer-right', '[page] of [toPage]'); - - - return $pdf->inline('HMIS 105 Report' . date(" d-m-y h:ia") . '.pdf'); - } - - public function opd_attendance_drill(Request $request) { - - $patientIDs = unserialize($request->patients); - - $patients = DB::table('patients')->whereIn('id', $patientIDs)->orderBy('last_name')->paginate(25); - $categories = DB::table('patient_categories')->pluck('name', 'id'); - - return view('reports::hmis_reports.105.opd-attendance-details', compact('patients', 'categories')); - } - - public function opd_referral_drill(Request $request) { - $patientIDs = decrypt($request->patients); - - $patients = DB::table('patients')->whereIn('id', $patientIDs)->orderBy('last_name')->paginate(25); - $categories = DB::table('patient_categories')->pluck('name', 'id'); - - return view('reports::hmis_reports.105.opd-referral-details', compact('patients', 'categories')); - } - - public function opd_diagnosis_drill(Request $request) { - - $patientIDs = decrypt($request->patients); - - $patients = DB::table('patients')->whereIn('id', $patientIDs)->orderBy('last_name')->paginate(25); - $categories = DB::table('patient_categories')->pluck('name', 'id'); - - return view('reports::hmis_reports.105.opd-diagnosis-details', compact('patients', 'categories')); - } - - /* form for displaying risky behaviour report */ - - public function risky_behaviours(Request $request) { - - $hospital_information = HospitalInformation::find(1); - - if (isset($request->date_from) && isset($request->date_to)) { - - $attendance_from = Carbon::createFromFormat('d/m/Y', $request->date_from)->toDateString(); - $attendance_to = Carbon::createFromFormat('d/m/Y', $request->date_to)->toDateString(); - - $search_button = $request->filterBtn; - } else { - $attendance_from = \Carbon\Carbon::today()->subDays(30)->format('Y-m-d'); - $attendance_to = date("Y-m-d"); - } - - $alcohol_male_5to9 = []; - $alcohol_male_10to19 = []; - $alcohol_male_20plus = []; - - $tobacco_male_5to9 = []; - $tobacco_male_10to19 = []; - $tobacco_male_20plus = []; - - $alcohol_female_5to9 = []; - $alcohol_female_10to19 = []; - $alcohol_female_20plus = []; - - $tobacco_female_5to9 = []; - $tobacco_female_10to19 = []; - $tobacco_female_20plus = []; - - // $query_behavior = "SELECT t.patient_id as patient_id, t.id as triage_id, t.observations as observations, t.created_at as create_date," - // . "d.date_of_birth as dob, d.gender as gender FROM triage t, patients d " - // . "WHERE (t.created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}')" - // . " AND (patient_id = d.id) AND ((t.observations LIKE '%Alcohol use=High%') " - // . "OR (t.observations LIKE '%Alcohol use=Moderate%') " - // . "OR (t.observations LIKE '%Alcohol use=Low%') " - // . "OR (t.observations LIKE '%Tobacco use=High%') " - // . "OR (t.observations LIKE '%Tobacco use=Moderate%') " - // . "OR (t.observations LIKE '%Tobacco use=Low%')) ORDER BY patient_id DESC"; - - // $triage_results1 = DB::select($query_behavior); - $triage_results = DB::table('triage') - ->leftJoin('patients', 'triage.patient_id', '=', 'patients.id') - ->select('patient_id', 'date_of_birth as dob','gender','patient_id','observations','triage.id as triage_id','triage.created_at as create_date') - ->whereBetween('triage.created_at', [$attendance_from, $attendance_to]) - ->orWhere([ ['observations', 'LIKE', '%Alcohol use=High%'], - ['observations', 'LIKE', '%Alcohol use=Moderate%'], - ['observations', 'LIKE', '%Alcohol use=Low%'], - ['observations', 'LIKE', '%Tobacco use=High%'], - ['observations', 'LIKE', '%Tobacco use=Moderate%'], - ['observations', 'LIKE', '%Tobacco use=Low%'] - ]) - ->orderBy('patient_id', 'desc') - ->get(); - if (count($triage_results) > 0) { - foreach ($triage_results as $triage_result) { - - $dob = new Carbon($triage_result->dob); - $age = $dob->diffInYears($triage_result->create_date); - - $age = intval($age); - $sex = $triage_result->gender; - $observation_explode = explode(",", $triage_result->observations); - - if ($age > 5 && $age < 10) { - if ($sex == 1 && (in_array('Alcohol use=High', $observation_explode) || in_array('Alcohol use=Moderate', $observation_explode) || in_array('Alcohol use=Low', $observation_explode))) { - array_push($alcohol_male_5to9, $triage_result->patient_id); - } - if ($sex == 1 && (in_array('Tobacco use=High', $observation_explode) || in_array('Tobacco use=Moderate', $observation_explode) || in_array('Tobacco use=Low', $observation_explode))) { - array_push($tobacco_male_5to9, $triage_result->patient_id); - } - if ($sex == 2 && (in_array('Alcohol use=High', $observation_explode) || in_array('Alcohol use=Moderate', $observation_explode) || in_array('Alcohol use=Low', $observation_explode))) { - array_push($alcohol_female_5to9, $triage_result->patient_id); - } - if ($sex == 2 && (in_array('Tobacco use=High', $observation_explode) || in_array('Tobacco use=Moderate', $observation_explode) || in_array('Tobacco use=Low', $observation_explode))) { - array_push($tobacco_female_5to9, $triage_result->patient_id); - } - } elseif ($age > 10 && $age < 20) { - if ($sex == 1 && (in_array('Alcohol use=High', $observation_explode) || in_array('Alcohol use=Moderate', $observation_explode) || in_array('Alcohol use=Low', $observation_explode))) { - array_push($alcohol_male_10to19, $triage_result->patient_id); - } - if ($sex == 1 && (in_array('Tobacco use=High', $observation_explode) || in_array('Tobacco use=Moderate', $observation_explode) || in_array('Tobacco use=Low', $observation_explode))) { - array_push($tobacco_male_10to19, $triage_result->patient_id); - } - if ($sex == 2 && (in_array('Alcohol use=High', $observation_explode) || in_array('Alcohol use=Moderate', $observation_explode) || in_array('Alcohol use=Low', $observation_explode))) { - array_push($alcohol_female_10to19, $triage_result->patient_id); - } - if ($sex == 2 && (in_array('Tobacco use=High', $observation_explode) || in_array('Tobacco use=Moderate', $observation_explode) || in_array('Tobacco use=Low', $observation_explode))) { - array_push($tobacco_female_10to19, $triage_result->patient_id); - } - } elseif ($age > 20) { - if ($sex == 1 && (in_array('Alcohol use=High', $observation_explode) || in_array('Alcohol use=Moderate', $observation_explode) || in_array('Alcohol use=Low', $observation_explode))) { - array_push($alcohol_male_20plus, $triage_result->patient_id); - } - if ($sex == 1 && (in_array('Tobacco use=High', $observation_explode) || in_array('Tobacco use=Moderate', $observation_explode) || in_array('Tobacco use=Low', $observation_explode))) { - array_push($tobacco_male_20plus, $triage_result->patient_id); - } - if ($sex == 2 && (in_array('Alcohol use=High', $observation_explode) || in_array('Alcohol use=Moderate', $observation_explode) || in_array('Alcohol use=Low', $observation_explode))) { - array_push($alcohol_female_20plus, $triage_result->patient_id); - } - if ($sex == 2 && (in_array('Tobacco use=High', $observation_explode) || in_array('Tobacco use=Moderate', $observation_explode) || in_array('Tobacco use=Low', $observation_explode))) { - array_push($tobacco_female_20plus, $triage_result->patient_id); - } - } - } - } - return view('reports::hmis_reports.105.risky-behaviours', compact('hospital_information', 'attendance_from', 'attendance_to', - 'triage_results', 'alcohol_male_10to19', 'alcohol_male_5to9', 'alcohol_male_20plus', - 'tobacco_male_10to19', 'tobacco_male_5to9', 'tobacco_male_20plus', 'alcohol_female_10to19', - 'alcohol_female_5to9', 'alcohol_female_20plus', 'tobacco_female_10to19', - 'tobacco_female_5to9', 'tobacco_female_20plus')); - } - - public function risky_behaviour_drill(Request $request) { - $behaviour = $request->behaviour; - $gender = $request->sex; - $age = $request->age; - $patient_id_array = unserialize($request->patient_ids); - $patients_results = DB::table('patients')->whereIn('id', $patient_id_array)->get(); - return view('reports::hmis_reports.105.risky-behaviours-drill', compact('behaviour', 'gender', 'age', 'patients_results')); - } - - public function monthly_outpatient_diagnoses(Request $request) { - request()->validate([ - 'date_from' => 'nullable|date|required_with:date_to', - 'date_to' => 'bail|nullable|required_with:date_from|date|after:date_from', - ]); - $start = !empty($request->date_from)? date('Y-m-d', strtotime($request->date_from)) : Carbon::now()->subMonth()->startOfMonth()->format('Y-m-d'); - $end = !empty($request->date_to)? date('Y-m-d', strtotime($request->date_to)) : date("Y-m-t", strtotime($start)); - $page = 'Outpatient Diagnoses';$printing = false; - $citizenship = isset($request->type)? $request->type :1; - $dates = $primary_diagnosis = $other_diagnoses = $table_options = $dependent_options = $diagnoses_data = []; - if(empty($request->date_from)){ - $dates['last_month'] = date('F', strtotime($start)); - $dates['last_year'] = date('Y', strtotime($start)); - $dates['days'] = date('t', strtotime($start)); - $dates['citizenship'] = $citizenship; - $dateRange = $start . '/' . $end; - $attendance_from = $start; - $attendance_to = $end; - }else { - $dates['start'] = date('d-M-Y', strtotime($start)); - $dates['end'] = date('d-M-Y', strtotime($end)); - $dates['days'] = intval((new DateTime($start))->diff(new DateTime($end))->format("%a")); - $dates['citizenship'] = $citizenship; - $attendance_from = $start; - $attendance_to = $end; - $dateRange = $attendance_from . '/' . $attendance_to; - } - $parent_categories = array_unique(HmisCategoryOptions::where('parent_option', '<>','')->pluck('parent_option')->toArray()); - $episodes = Consultation::leftJoin('patients as p', 'consultations.patient_id','p.id') - ->leftJoin('triage as tr', 'consultations.episode_id','tr.episode_id') - ->select('consultations.id','consultations.patient_id', 'consultations.episode_id', 'gender', 'date_of_birth as dob', 'primary_diagnosis', 'other_diagnoses', 'rdt') - ->whereBetween('consultations.created_at', [Carbon::parse($start)->startOfDay()->toDateTimeString(), Carbon::parse($end)->endOfDay()->toDateTimeString()])->where('citizenship', $citizenship)->get(); - $primary_diagnosis = $ordered_investigations = $prescribed_treatments = $ordered_investigation_results = $others =$other_diagnoses = $patientIds = []; - foreach ($episodes as $episode) { - $primary_diagnosis[] = $episode->primary_diagnosis; - $others = (!empty($episode->other_diagnoses))? unserialize($episode->other_diagnoses):[]; - if(!empty($others)) foreach($others as $other) if(!empty($other)) $other_diagnoses[] = $other; - $patients[] = ['id'=> $episode->id,'patient_id'=> $episode->patient_id, 'episode_id'=>$episode->episode_id, 'gender'=> $episode->gender, 'age'=> $episode->dob, 'primary_diagnosis'=> $episode->primary_diagnosis, 'other_diagnoses'=> $others, 'rdt' => $episode->rdt ]; - } - $malaria_diagnoses = Diagnosis::where('outpatient_hmis_category',10096)->whereIn('outpatient_dependent_option', [400, 401, 399, 402])->get(['id','name', 'outpatient_hmis_category_option','outpatient_hmis_category','outpatient_dependent_option'])->first(); - $all_diagnoses = array_unique(array_merge($primary_diagnosis,$other_diagnoses)); - $diag = Diagnosis::whereNotNull(['outpatient_hmis_category','outpatient_hmis_category_option'])->whereIn('id', $all_diagnoses)->get(['id','name', 'outpatient_hmis_category_option','outpatient_hmis_category','outpatient_dependent_option']); - foreach($diag as $dia) { - $diagnosis = $dia->id;$other = $primary = $other = []; - if(!empty($patients)) { - $primary = array_filter($patients, function ($item) use ($diagnosis) { - return $item['primary_diagnosis'] == $diagnosis; - }); - foreach ($patients as $patient) if(in_array($diagnosis, $patient['other_diagnoses'] )) $other[] =$patient; - } - $diagnoses_data[]=['id'=>$diagnosis,'name'=>$dia->name, 'hmis_category'=>$dia->outpatient_hmis_category, 'hmis_category_option'=>$dia->outpatient_hmis_category_option, 'dependent_option'=>$dia->outpatient_dependent_option, 'primary'=>$primary, 'other'=>$other]; - } - - $diagnosis_categories = HmisCategory::where('section_number', '1')->select('id','number', 'title')->get()->toArray(); - foreach($diagnosis_categories as $diagnosis_category) { - $options=[]; - $category_options = HmisCategoryOptions::where('hmis_category_id', $diagnosis_category['id'])->select('id','number', 'name')->get()->toArray(); - foreach($category_options as $category_option) { - $dependent_options = []; - if(in_array($category_option['id'], $parent_categories)) $dependent_options = HmisCategoryOptions::where('parent_option', $category_option['id'])->select('id','number', 'name')->get()->toArray(); - $options[]=['id'=>$category_option['id'], 'name'=>$category_option['name'], 'number'=>$category_option['number'], 'dependent_options'=>$dependent_options]; - } - $table_options[] = ['category_id'=>$diagnosis_category['id'],'category_name'=>$diagnosis_category['title'],'category_number'=>$diagnosis_category['number'],'category_options'=>$options, 'dependent_options'=>$dependent_options]; - } - $hospital_information = HospitalInformation::find(1); - $malaria_investigations =Investigation::whereIn('hmis_002_slug', [2,3])->pluck('id')->toArray(); - $malaria_ids = ''; - foreach($malaria_investigations as $key => $malaria_investigation) { - if(count($malaria_investigations) == 1) $malaria_ids .= 'FIND_IN_SET('.$malaria_investigation.',r.investigation_id)'; - else { - if($key == 0) $malaria_ids .= '(FIND_IN_SET('.$malaria_investigation.',r.investigation_id)'; - else $malaria_ids .= ' OR FIND_IN_SET('.$malaria_investigation.',r.investigation_id)'; - if($key == array_key_last($malaria_investigations)) $malaria_ids .=')'; - } - } - if(!empty($malaria_ids)){ - $results = OrderedInvestigation::leftJoin('patients as p', 'patient_id','p.id')->leftJoin('investigation_results as r', 'order_id','ordered_investigations.id') - ->leftJoin('consultations as c', 'c.episode_id','ordered_investigations.episode_id')->where([['ordered_investigations.inpatient',0], ['citizenship', $citizenship]]) - ->whereRaw($malaria_ids) - ->whereBetween('ordered_investigations.created_at', [Carbon::parse($start)->startOfDay()->toDateTimeString(), Carbon::parse($end)->endOfDay()->toDateTimeString()]) - ->get(['ordered_investigations.id','p.id as patient_id', 'r.investigation_id','r.episode_id','gender','date_of_birth as age','value', 'r.id as result_id', 'primary_diagnosis', 'other_diagnoses', 'per_investigation']); - foreach($results as $result) { - $other_diagnoses = unserialize($result->other_diagnoses); - $ordered_investigations[] = ['id'=> $result->id,'patient_id'=> $result->patient_id, 'episode_id'=>$result->episode_id, 'gender'=> $result->gender, 'age'=> $result->age, "primary_diagnosis" =>$result->primary_diagnosis?? 'N/A', "other_diagnoses" => (!empty($other_diagnoses))? $other_diagnoses:[]]; - $ids = explode(',', $result->investigation_id); - $values = explode(',', $result->value); - $authenticated = explode(',', $result->per_investigation); - foreach($malaria_investigations as $malaria_investigation){ - $id = array_search($malaria_investigation, $ids); - if($id !== false) { - $inv_result = strtolower($values[$id]); - $result_authenticated = $authenticated[$id]; - if((str_contains($inv_result, 'pos') || $inv_result =='+'|| $inv_result =='++'|| $inv_result =='+++') && !in_array($result->patient_id, $patientIds) && !empty($result_authenticated)) { - $ordered_investigation_results[] = ['id'=> $result->result_id,'patient_id'=> $result->patient_id, 'result'=>$inv_result ,'episode_id'=>$result->episode_id, 'gender'=> $result->gender, 'age'=> $result->age, "primary_diagnosis" => $result->primary_diagnosis?? 'N/A', "other_diagnoses" => (!empty($other_diagnoses))? $other_diagnoses:[]]; - $patientIds[] = $result->patient_id; - } - } - } - } - } - $anti_malarials = DB::table('drugs')->leftJoin('drug_categories as d', 'category_id','d.id')->where('d.anti_malarial', 1)->pluck('drugs.id')->toArray(); - $patientIds = []; - $anti_malarial_ids = ''; - foreach($anti_malarials as $key => $anti_malarial) { - if(count($anti_malarials) == 1) $anti_malarial_ids .= 'FIND_IN_SET('.$anti_malarial.',drugs)'; - else { - if($key == 0) $anti_malarial_ids .= '(FIND_IN_SET('.$anti_malarial.',drugs)'; - else $anti_malarial_ids .= ' OR FIND_IN_SET('.$anti_malarial.',drugs)'; - if($key == array_key_last($anti_malarials)) $anti_malarial_ids .=')'; - } - } - if(!empty($anti_malarial_ids)){ - $treatments = Treatment::leftJoin('patients as p', 'patient_id','p.id') ->leftJoin('consultations as c', 'c.episode_id','treatments.episode_id') - ->where([['citizenship', $citizenship]])->whereBetween('treatments.created_at', [Carbon::parse($start)->startOfDay()->toDateTimeString(), Carbon::parse($end)->endOfDay()->toDateTimeString()]) - ->whereRaw($anti_malarial_ids) - ->groupBy('patient_id') - ->get(['treatments.id','p.id as patient_id', DB::raw('GROUP_CONCAT(drugs) as drugs'),'c.episode_id','gender','date_of_birth as age', 'primary_diagnosis', 'other_diagnoses']); - foreach ($treatments as $treatment) { - $other_diagnoses = unserialize($treatment->other_diagnoses); - if(!in_array($treatment->patient_id, $patientIds)) { - $prescribed_treatments[] = ['id'=> $treatment->id,'patient_id'=> $treatment->patient_id, 'episode_id'=>$treatment->episode_id, 'gender'=> $treatment->gender, 'age'=> $treatment->age, "primary_diagnosis" => $treatment->primary_diagnosis, "other_diagnoses" => !empty($other_diagnoses)? $other_diagnoses:[], 'drugs'=> $treatment->drugs]; - $patientIds[] = $treatment->patient_id; - } - } - } - return view('reports::hmis_reports.105.index', compact('hospital_information','dates','diagnoses_data','table_options','page', 'dateRange', 'attendance_from', 'attendance_to', 'printing', 'ordered_investigation_results', 'ordered_investigations', 'prescribed_treatments', 'malaria_diagnoses')); - } - - public function print_hmis_105_information(Request $request){ - $diagnoses_data =!empty($request->diagnoses_data)? unserialize($request->diagnoses_data):[]; - $table_options = !empty($request->table_options)? unserialize($request->table_options):[]; - $ordered_investigation_results = !empty($request->ordered_investigation_results)? unserialize($request->ordered_investigation_results):[]; - $ordered_investigations = !empty($request->ordered_investigations)? unserialize($request->ordered_investigations):[]; - $prescribed_treatments = !empty($request->prescribed_treatments)? unserialize($request->prescribed_treatments):[]; - $dates = !empty($request->dates)? unserialize($request->dates):[]; - $page = $request->page; - $pdf = SnappyPDF::loadView('reports::hmis_reports.105.print_hmis_105_information', compact('dates','page','table_options','diagnoses_data','ordered_investigations', 'ordered_investigation_results', 'prescribed_treatments')) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', ''. config('app.name') .' - Printed On ' . date('Y-m-d') . ' By ' . auth()->user()->first_name . " " . auth()->user()->last_name . ''); - return $pdf->inline(__('hmis_reports.hmis_108_report_census') . date(" d-m-y h:ia") . '.pdf'); - - } - - public function hmis_data(){ - try{ - DB::transaction(function() { - $options = HmisCategoryOptions::leftJoin('hmis_categories AS a','a.id', 'hmis_category_options.hmis_category_id') - ->select('a.id as outpatient_hmis_category','hmis_category_options.id','parent_option', 'hmis_category_options.number as number') - ->where([['a.type', 0], ['a.section_number',1]])->orWhereNotNull('parent_option') - ->get(); - foreach ($options as $option) { - if(!empty($option->parent_option)) { - $outpatient_hmis_category = HmisCategoryOptions::find($option->parent_option); - Diagnosis::where('hmis_no_outpatient',$option->number)->update(['outpatient_hmis_category'=>$outpatient_hmis_category->hmis_category_id, 'outpatient_hmis_category_option'=>$option->parent_option, 'outpatient_dependent_option'=>$option->id]); - } - else Diagnosis::where('hmis_no_outpatient',$option->number)->update(['outpatient_hmis_category'=>$option->outpatient_hmis_category, 'outpatient_hmis_category_option'=>$option->id]); - } - }); - - }catch(\Exception $e){ - flash('HMIS Outpatient Data has NOT been reconciled. Contact system admin. '.$e->getMessage())->error(); - return redirect()->back()->withInput(); - } - - flash("HMIS Outpatient Data has been reconciled.")->success(); - return redirect("/list/hmis-reports"); - } - -} diff --git a/docker/statistics/Modules/Reports/Http/Controllers/MentalHealthReportsController.php b/docker/statistics/Modules/Reports/Http/Controllers/MentalHealthReportsController.php deleted file mode 100755 index f87815e2..00000000 --- a/docker/statistics/Modules/Reports/Http/Controllers/MentalHealthReportsController.php +++ /dev/null @@ -1,209 +0,0 @@ -start_date)){ - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - } else { - $start_date = Carbon::now()->startOfDay()->toDateTimeString(); - $end_date = Carbon::now()->endOfDay()->toDateTimeString(); - } - - // get all diagnoses with hmis category mental health - $diagnoses = Diagnosis::where('hmis_category', 8)->get()->toArray(); - - $reports = []; - - foreach ($diagnoses as $diagnosis){ - $patient_ids =[]; - $consultation = Consultation::where('primary_diagnosis', $diagnosis['id'])->whereBetween('created_at', [$start_date, $end_date])->get(); - if(!empty($consultation)) foreach ($consultation as $key => $value) $patient_ids[] = $value->patient_id; - - $reports[] = ['name'=>$diagnosis['name'], 'count'=>count($consultation), 'patient_ids'=>$patient_ids]; - - } - return view('reports::mental_health_reports.diagnosed_patients', compact('start_date', 'end_date', 'reports')); - } - - public function persons_taking_psychotropic_drugs(Request $request){ - - // get array of accepted drugs - $drugs = Drug::whereIn('category_id', [13,27,32,37,46,53])->pluck('id', 'id')->toArray(); - $drugs = array_fill_keys(array_keys($drugs), 0); - $drug_patient_id = []; - if (isset($request->start_date)){ - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - } else { - $start_date = Carbon::now()->startOfDay()->toDateTimeString(); - $end_date = Carbon::now()->endOfDay()->toDateTimeString(); - } - - // get all diagnoses with hmis category mental health - $diagnoses = Diagnosis::where('hmis_category', 8)->get()->toArray(); - - foreach ($diagnoses as $diagnosis){ - $consultations = Consultation::where('primary_diagnosis', $diagnosis['id'])->whereBetween('created_at', [$start_date, $end_date])->get(); - - foreach ($consultations as $consultation){ - $patient_id = $consultation->patient_id; - $episode_id = $consultation->episode_id; - - // select treatments - $treatments = Treatment::where('patient_id', $patient_id)->where('episode_id', $episode_id)->get(); - - foreach ($treatments as $treatment){ - $ordered_drugs_array = explode(",", $treatment->drugs); - - // i'm tired of foreach's - foreach ($ordered_drugs_array as $record){ - if (key_exists($record, $drugs)){ - $drugs[$record]++; - $drug_patient_id[$record]['patient_ids'][]= $patient_id; - } - } - } - } - } - - return view('reports::mental_health_reports.persons_taking_psychotropic_drugs', compact('drugs', 'start_date','drug_patient_id', 'end_date')); - } - - public function diagnosed_persons_who_received_treatment(Request $request){ - if (isset($request->start_date)){ - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - } else { - $start_date = Carbon::now()->startOfDay()->toDateTimeString(); - $end_date = Carbon::now()->endOfDay()->toDateTimeString(); - } - - // get all diagnoses with hmis category mental health - $diagnoses = Diagnosis::where('hmis_category', 8)->get()->toArray(); - - $reports = []; - $reports_counter = 0; - - foreach ($diagnoses as $diagnosis){ - $consultations = Consultation::where('primary_diagnosis', $diagnosis['id'])->whereBetween('created_at', [$start_date, $end_date])->get(); - $reports[$reports_counter]['name'] = $diagnosis['name']; - $reports[$reports_counter]['number_of_patients'] = count($consultations); - $patient_ids = $treated_patient_ids =[]; - - $patients_who_received_treatment = 0; - - foreach ($consultations as $consultation){ - // select treatments - $treatments = Treatment::where('patient_id', $consultation->patient_id)->where('episode_id', $consultation->episode_id)->get(); - - if (count($treatments) > 0){ - // patient received treatment - $patients_who_received_treatment++; - foreach($treatments as $treatment) $treated_patient_ids[] = $treatment->patient_id; - } - $patient_ids[]= $consultation->patient_id; - } - - $reports[$reports_counter]['number_of_patients_with_treatment'] = $patients_who_received_treatment; - $reports[$reports_counter]['patient_ids'] = $patient_ids; - $reports[$reports_counter]['treated_patient_ids'] = $treated_patient_ids; - - $reports_counter++; - } - return view('reports::mental_health_reports.diagnosed_persons_who_received_treatment', compact('reports', 'start_date', 'end_date')); - } - - public function patients_lost_to_follow_up(Request $request) { - if (isset($request->start_date)){ - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date)->toDateString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->end_date)->toDateString(); - } else { - $start_date = Carbon::now()->startOfDay()->toDateTimeString(); - $end_date = Carbon::now()->endOfDay()->toDateTimeString(); - } - - // get all diagnoses with hmis category mental health - $diagnoses = Diagnosis::where('hmis_category', 8)->pluck('id')->toArray(); - - $follow_ups = $number_of_patients_lost_ids = $total_follow_ups_ids = []; - $number_of_patients_lost = 0; - $total_follow_ups = 0; - - $lost_follow_ups = PatientAppointment::whereBetween('appointment_date', [$start_date, $end_date])->get(); - - foreach ($lost_follow_ups as $record) { - $consultation = Consultation::where('episode_id', $record->episode_id)->first(); - - if ($consultation && in_array($consultation->primary_diagnosis, $diagnoses)){ - - if ($record->appointment_fulfilled == 0){ - $follow_ups[$number_of_patients_lost]['patient_id']= $number_of_patients_lost_ids[] = $record->patient_id; - $follow_ups[$number_of_patients_lost]['created_at'] = $record->created_at; - $follow_ups[$number_of_patients_lost]['appointment_date'] = $record->appointment_date; - $number_of_patients_lost++; - } - $total_follow_ups++; - $total_follow_ups_ids[]= $record->patient_id; - } - } - - $number_of_patients_followed_up = $total_follow_ups - $number_of_patients_lost; - $number_of_patients_followed_up_ids = array_diff($total_follow_ups_ids, $number_of_patients_lost_ids); - $drop_out_rate = $total_follow_ups > 0 ? ($number_of_patients_lost / $total_follow_ups) * 100 : 0; - - return view('reports::mental_health_reports.patients_lost_to_follow_up', compact('follow_ups', 'start_date', 'end_date', 'total_follow_ups', 'number_of_patients_followed_up', 'number_of_patients_lost', 'drop_out_rate','number_of_patients_followed_up_ids','number_of_patients_lost_ids', 'total_follow_ups_ids')); - } - - public function days_drugs_out_of_stock(Request $request) { - - $drugs = DB::table('drugs')->where('available', 1)->whereNull('deleted_at') - ->whereIn('category_id', [13,27,32,37,46,53]) - ->pluck('id')->toArray(); - - if (isset($request->start_date)) { - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date); - $end_date = Carbon::createFromFormat('d/m/Y', $request->end_date); - } else { - $start_date = Carbon::now(); - $end_date = Carbon::now(); - } - - $selected_drugs = []; - - $stock_watcher_records = DB::table('stock_watcher') - ->where('item_type', 1) - ->whereIn('item_id', $drugs) - ->get(); - - foreach ($stock_watcher_records as $record) { - $start_date_search = clone $start_date; // or you can use $start_date->copy() - $end_date_search = clone $end_date; - - $details_arr = json_decode($record->details, true); - - // keep incrementing the start date till it reaches the next day after the end date and stop - while (!$start_date_search->isAfter($end_date_search)) { - if (isset($details_arr[$start_date_search->toDateString()]) && $details_arr[$start_date_search->toDateString()]["pharmacy_stock"] < 1 && $details_arr[$start_date_search->toDateString()]["store_stock"] < 1) { - $selected_drugs[$record->item_id] = 1 + ($selected_drugs[$record->item_id] ?? 0); - } - - $start_date_search->addDay(); - } - } - - return view('reports::mental_health_reports.days_drugs_out_of_stock', compact('selected_drugs', 'start_date', 'end_date')); - } -} diff --git a/docker/statistics/Modules/Reports/Http/Controllers/NiraReportController.php b/docker/statistics/Modules/Reports/Http/Controllers/NiraReportController.php deleted file mode 100755 index eb3df6b4..00000000 --- a/docker/statistics/Modules/Reports/Http/Controllers/NiraReportController.php +++ /dev/null @@ -1,78 +0,0 @@ -middleware('auth'); - $this->middleware('permission:nira-birth-report', ['only' => ['birth_report']]); - } - - public function birth_report() { - $episode_id = session()->get('episode_id'); - -// Getting details from the maternity delivery records table - $deliveryRecord = MaternityDeliveryRecord::select('patient_id', 'foetal_number', 'date_of_birth', 'delivery_time', 'gender', 'weight') - ->where('episode_id', $episode_id)->first(); - - $hospitalInfo = HospitalInformation::select('name', 'district', 'parish', 'sub_county', 'country', 'sub_district')->where('id', 1)->first(); - $hospitalDistrict = District::find($hospitalInfo->district)->name; - $hospitalSubcounty = Subcounty::find($hospitalInfo->sub_county)->name; - $hospitalParish = Parish::find($hospitalInfo->parish)->name; - $hospitalLocation = $hospitalParish . ',' . $hospitalSubcounty; - $hospitalDistrict = $hospitalDistrict . ',' . $hospitalInfo->country; - - $date_of_birth = is_null($deliveryRecord) ? [] : explode(',', $deliveryRecord->date_of_birth); - $delivery_time = is_null($deliveryRecord) ? [] : explode(',', $deliveryRecord->delivery_time); - - $babyOne = [ - 'dob' => is_null($deliveryRecord) ? 'NA' : $date_of_birth[0], - 'delivery_time' => is_null($deliveryRecord) ? 'NA' : Carbon::parse($delivery_time[0])->format('g:i A'), - 'hospitalLocation' => is_null($deliveryRecord) ? 'NA' : $hospitalLocation, - 'hospitalDistrict' => is_null($deliveryRecord) ? 'NA' : $hospitalDistrict, - 'hospitalName' => is_null($deliveryRecord) ? 'NA' : $hospitalInfo->name, - 'gender' => is_null($deliveryRecord) ? 'NA' : $deliveryRecord->gender[0], - 'weight' => is_null($deliveryRecord) ? 'NA' : $deliveryRecord->weight[0], - ]; - - $motherDetail = is_null($deliveryRecord) ? '' : - Patient::select('first_name', 'last_name', 'occupation_id', 'national_id', 'district_id', 'county_id', 'subcounty_id', 'parish_id', 'village_id') - ->where('id', $deliveryRecord->patient_id)->first(); - $mother = [ - 'last_name' => is_null($deliveryRecord) ? 'NA' : $motherDetail->last_name, - 'first_name' => is_null($deliveryRecord) ? 'NA' : $motherDetail->first_name, - 'NIN' => is_null($deliveryRecord) ? 'NA' : $motherDetail->national_id, - 'occupation' => is_null($deliveryRecord) ? 'NA' : Occupation::find($motherDetail->occupation_id)->name, - 'district' => is_null($deliveryRecord) ? 'NA' : District::find($motherDetail->district_id)->name, - 'county' => is_null($deliveryRecord) ? 'NA' : County::find($motherDetail->county_id)->name, - 'subcounty' => is_null($deliveryRecord) ? 'NA' : Subcounty::find($motherDetail->subcounty_id)->name, - 'parish' => is_null($deliveryRecord) ? 'NA' : Parish::find($motherDetail->parish_id)->name, - 'village' => is_null($deliveryRecord) ? 'NA' : Village::find($motherDetail->village_id)->name - ]; - - if (is_null($deliveryRecord)): - flash("The MATERNITY DELIVERY RECORD has not been saved on Stre@mline.")->error(); - endif; - - return view('reports::reports.nira.birth', compact('babyOne', 'mother')); - } - - public function death_report() { - $episode_id = session()->get('episode_id'); - return view('reports::reports.nira.death'); - } - -} diff --git a/docker/statistics/Modules/Reports/Http/Controllers/ReportsDashboardController.php b/docker/statistics/Modules/Reports/Http/Controllers/ReportsDashboardController.php deleted file mode 100755 index 9527eca7..00000000 --- a/docker/statistics/Modules/Reports/Http/Controllers/ReportsDashboardController.php +++ /dev/null @@ -1,2233 +0,0 @@ -get_date_range($request); - $start_date = $dates_array[0]; - $end_date = $dates_array[1]; - $drugs = []; - $merge_values = []; - $pharmacy_names = []; - $pharmacy_figures = []; - $cash_drugs_array = []; - $insurance_drugs_array = []; - $total_drugs_paid_via_cash = 0; - $purchased_elsewhere_counts = []; - $paid_prescriptions_percentage = 0; - $total_drugs_paid_via_insurance = 0; - $unpaid_prescriptions_percentage = 0; - $invoiced_prescriptions_percentage = 0; - $pharmacy_most_active_staff_figures = []; - $pharmacy_most_active_staff_members = []; - $most_active_pharmacy_staff_results = []; - $purchased_elsewhere_prescriptions_percentage = 0; - - $display_text = "Showing results between " . streamline_date($start_date) . " and " . streamline_date($end_date); - - //1. PHARMACY EPISODES VS PRESCRIPIONS - $patient_episodes = DB::table('patient_episodes')-> - whereBetween('patient_episodes.created_at', [$start_date, $end_date]) - ->get() - ->count(); - $pharmacy_patients = DB::table('patient_episodes') - ->whereBetween('patient_episodes.created_at', [$start_date, $end_date]) - ->join('patients', 'patients.id', '=', 'patient_episodes.patient_id') - ->select( - 'patient_episodes.patient_id', 'patient_episodes.treatment_id')->where('treatment_id', '>=', 1) - ->get()->count(); - - $up = DB::table('treatments') - ->whereBetween('treatments.created_at', [$start_date, $end_date]) - ->join('patients', 'patients.id', '=', 'treatments.patient_id') - ->where('payment_status', 0) - ->get()->count(); - $pp = DB::table('treatments') - ->whereBetween('treatments.created_at', [$start_date, $end_date]) - ->join('patients', 'patients.id', '=', 'treatments.patient_id') - ->where('payment_status', 1) - ->get()->count(); - $ip = DB::table('treatments') - ->whereBetween('treatments.created_at', [$start_date, $end_date]) - ->join('patients', 'patients.id', '=', 'treatments.patient_id') - ->join('patient_category_invoices', 'patient_category_invoices.patient_id', '=', 'treatments.patient_id') - ->select('treatments.dispense_status', 'patient_category_invoices.status', 'treatments.episode_id', - 'treatments.patient_id', 'patient_category_invoices.payment_complete', - 'patient_category_invoices.invoice_generated', 'patient_category_invoices.tag_id') - ->where('patient_category_invoices.tag_id', 3)->distinct('episode_id') - ->get()->count(); - - $pharmacy_prescriptions = $up + $pp + $ip; - $pharmacy_names[] = ['Prescriptions', 'Patients', 'Episodes']; - $pharmacy_figures[] = $pharmacy_patients; - $pharmacy_figures[] = $patient_episodes; - $pharmacy_figures[] = $pharmacy_prescriptions; - - - //2. PHARMACY DISPENSING PATTERN - $pharmacy_dispensing_labels = ['Paid & Dispensed', 'Unpaid & Dispensed', 'Invoiced & Dispensed']; - $paid_and_dispensed_prescriptions = DB::table('treatments')->whereBetween('created_at', [$start_date, $end_date])->where('dispense_status', 1)->where('payment_status', 1)->get()->count(); - $paid_and_undispensed_prescriptions = DB::table('treatments')->whereBetween('created_at', [$start_date, $end_date])->where('dispense_status', 0)->where('payment_status', 1)->get()->count(); - $unpaid_and_dispensed_prescriptions = DB::table('treatments')->whereBetween('created_at', [$start_date, $end_date])->where('dispense_status', 1)->where('payment_status', 0)->get()->count(); - - $invoiced_and_dispensed_prescriptions = DB::table('treatments') - ->whereBetween('treatments.created_at', [$start_date, $end_date]) - ->join('patient_category_invoices', 'patient_category_invoices.patient_id', '=', 'treatments.patient_id') - ->select('treatments.dispense_status', 'patient_category_invoices.status', 'treatments.episode_id', - 'treatments.patient_id', 'patient_category_invoices.payment_complete', - 'patient_category_invoices.invoice_generated', 'patient_category_invoices.tag_id') - ->where('dispense_status', 1)->where('patient_category_invoices.tag_id', 3) - ->get()->count(); - - $invoiced_and_undispensed_prescriptions = DB::table('treatments') - ->whereBetween('treatments.created_at', [$start_date, $end_date]) - ->join('patient_category_invoices', 'patient_category_invoices.patient_id', '=', 'treatments.patient_id') - ->select('treatments.dispense_status', 'patient_category_invoices.status', 'treatments.episode_id', - 'treatments.patient_id', 'patient_category_invoices.payment_complete', - 'patient_category_invoices.invoice_generated', 'patient_category_invoices.tag_id') - ->where('dispense_status', 0)->where('patient_category_invoices.tag_id', 3) - ->get()->count(); - - $pharmacy_dispensing_datasets[] = $paid_and_dispensed_prescriptions; - $pharmacy_dispensing_datasets[] = $paid_and_undispensed_prescriptions; - $pharmacy_dispensing_datasets[] = $unpaid_and_dispensed_prescriptions; - $pharmacy_dispensing_datasets[] = $invoiced_and_dispensed_prescriptions; - $pharmacy_dispensing_datasets[] = $invoiced_and_undispensed_prescriptions; - $total_dispensed = $paid_and_dispensed_prescriptions + $paid_and_undispensed_prescriptions + $unpaid_and_dispensed_prescriptions - + $invoiced_and_dispensed_prescriptions + $invoiced_and_undispensed_prescriptions; - if($total_dispensed !== 0){ - $paid_and_dispensed_prescriptions_percentage = ($paid_and_dispensed_prescriptions / ($total_dispensed)) * 100; - $paid_and_undispensed_prescriptions_percentage = ($paid_and_undispensed_prescriptions / ($total_dispensed)) * 100; - $unpaid_and_dispensed_prescriptions_percentage = ($unpaid_and_dispensed_prescriptions / ($total_dispensed)) * 100; - $invoiced_and_dispensed_prescriptions_percentage = ($invoiced_and_dispensed_prescriptions / ($total_dispensed)) * 100; - $invoiced_and_undispensed_prescriptions_percentage = ($invoiced_and_undispensed_prescriptions / ($total_dispensed)) * 100; - } else{ - $paid_and_undispensed_prescriptions_percentage = 0; - $unpaid_and_dispensed_prescriptions_percentage = 0; - $invoiced_and_dispensed_prescriptions_percentage = 0; - $invoiced_and_undispensed_prescriptions_percentage = 0; - $paid_and_dispensed_prescriptions_percentage = 0; - $paid_prescriptions_percentage = 0; - $unpaid_prescriptions_percentage = 0; - $invoiced_prescriptions_percentage = 0; - $purchased_elsewhere_prescriptions_percentage = 0; - } - - //3. PHARMACY PRESCRIPTIONS PATTERN - //Invoiced Pharmacy Prescriptions - $invoiced_prescriptions = DB::table('treatments') - ->whereBetween('treatments.created_at', [$start_date, $end_date]) - ->join('patient_category_invoices', 'patient_category_invoices.patient_id', '=', 'treatments.patient_id') - ->select('treatments.dispense_status', 'patient_category_invoices.status', 'treatments.episode_id', - 'treatments.patient_id', 'patient_category_invoices.payment_complete', - 'patient_category_invoices.invoice_generated', 'patient_category_invoices.tag_id') - ->where('patient_category_invoices.tag_id', 3) - //->distinct('episode_id') - ->get()->count(); - - //Unpaid Pharmacy Prescriptions - $unpaid_prescriptions = DB::table('treatments') - ->whereBetween('treatments.created_at', [$start_date, $end_date]) - ->where('payment_status', 0) - ->get(); - - if(count($unpaid_prescriptions) > 0) { - $unpaid_merge_values = count($unpaid_prescriptions); - } else { - $unpaid_merge_values = 0; - } - - //Paid Pharmacy Prescriptions - $paid_prescriptions = DB::table('treatments') - ->whereBetween('treatments.created_at', [$start_date, $end_date]) - ->where('payment_status', 1) - ->get(); - - $invoice_prescriptions = DB::table('patient_category_invoices') - ->whereBetween('patient_category_invoices.created_at', [$start_date, $end_date]) - ->select('patient_id') - ->get(); - //$paid_prescriptions = count($paid_prescriptions) - count($invoice_prescriptions); - - if(count($paid_prescriptions) > 0){ - $paid_merge_values = count($paid_prescriptions); - } else { - $paid_merge_values = 0; - } - - //Purchased Elsewhere Prescriptions - $purchased_elsewhere_prescriptions = DB::table('treatments') - ->whereBetween('treatments.created_at', [$start_date, $end_date]) - ->select('purchased_elsewhere') - ->where('purchased_elsewhere', '!=', NULL) - ->get(); - - if(count($purchased_elsewhere_prescriptions) > 0) { - $purchased_elsewhere_counts = []; - foreach($purchased_elsewhere_prescriptions as $pew){ - $purchased_elsewhere_results = explode(',', $pew->purchased_elsewhere); - foreach($purchased_elsewhere_results as $per){ - if($per == 1){ - $purchased_elsewhere_counts[] = $per; - } - } - } - } else { - $purchased_elsewhere_prescriptions = 0; - } - - //Computations for Pharmacy Dashboard - $purchased_elsewhere_prescriptions = count($purchased_elsewhere_counts); - $unpaid_prescriptions = $unpaid_merge_values; - $paid_prescriptions = $paid_merge_values; - $pharmacy_patient_prescriptions_datasets[] = $invoiced_prescriptions; - $pharmacy_patient_prescriptions_datasets[] = $unpaid_prescriptions; - $pharmacy_patient_prescriptions_datasets[] = $paid_prescriptions; - - $total_prescriptions = $invoiced_prescriptions + $unpaid_prescriptions + $paid_prescriptions; - - if($total_prescriptions !== 0) { - $invoiced_prescriptions_percentage = ($invoiced_prescriptions / ($total_prescriptions)) * 100; - $unpaid_prescriptions_percentage = ($unpaid_prescriptions / ($total_prescriptions)) * 100; - $paid_prescriptions_percentage = ($paid_prescriptions / ($total_prescriptions)) * 100; - $purchased_elsewhere_prescriptions_percentage = ($purchased_elsewhere_prescriptions / ($total_prescriptions)) * 100; - } else { - - } - - //4. PHARMACY TOP DRUGS - $patient_dispensings = DB::table('patient_dispensings') - ->whereBetween('created_at', [$start_date, $end_date]) - ->select('drugs', 'quantity_dispensed', 'patient_id') - ->get(); - $drug_id_array = []; - $drug_male_array = []; - $drug_female_array = []; - foreach ($patient_dispensings as $drug) { - // split into an array for drugs - $temp_drugs_array = explode(",", $drug->drugs); - $temp_dispensed_array = explode(",", $drug->quantity_dispensed); - - for ($i = 0; $i < count($temp_dispensed_array); $i++) { - if ($temp_dispensed_array[$i] == "") { - $temp_dispensed_array[$i] = 0; - } - - if (array_key_exists($temp_drugs_array[$i], $drug_id_array)) { - $drug_id_array[$temp_drugs_array[$i]] = $drug_id_array[$temp_drugs_array[$i]] + $temp_dispensed_array[$i]; - - if (get_name($drug->patient_id, 'id', 'gender', 'patients') == 1 && isset($drug_male_array[$temp_drugs_array[$i]])) { - $drug_male_array[$temp_drugs_array[$i]] = $drug_male_array[$temp_drugs_array[$i]] + $temp_dispensed_array[$i]; - } elseif (get_name($drug->patient_id, 'id', 'gender', 'patients') == 2 && isset($drug_female_array[$temp_drugs_array[$i]])) { - $drug_female_array[$temp_drugs_array[$i]] = $drug_female_array[$temp_drugs_array[$i]] + $temp_dispensed_array[$i]; - } - } else { - $drug_id_array[$temp_drugs_array[$i]] = $temp_dispensed_array[$i]; - if (get_name($drug->patient_id, 'id', 'gender', 'patients') == 1) { - $drug_male_array[$temp_drugs_array[$i]] = $temp_dispensed_array[$i]; - } else { - $drug_female_array[$temp_drugs_array[$i]] = $temp_dispensed_array[$i]; - } - } - } - } - arsort($drug_id_array); - $drug_id_array = array_slice($drug_id_array, 0, 10, true); - $drugs = []; - $drugs_names = []; - $drugs_figures = []; - foreach ($drug_id_array as $key => $value) { - $male = $drug_male_array[$key] ?? 0; - $female = $drug_female_array[$key] ?? 0; - - $drugs[] = [ - "id" => $key, - "name" => get_name($key, 'id', 'name', 'drugs'), - "male" => $male, - "female" => $female, - "total" => $male + $female, - ]; - $drugs_names[] = get_name($key, 'id', 'name', 'drugs'); - $drugs_figures[] = $male + $female; - } - - //5. PHARMACY MOST ACTIVE STAFF - $most_active_pharmacy_staff = DB::table('patient_dispensings') - ->whereBetween('patient_dispensings.created_at', [$start_date, $end_date]) - ->join('users', 'users.id', '=', 'patient_dispensings.created_by') - ->select(DB::raw('count(*) as user_activity_count'))->addSelect('users.first_name', 'users.last_name', - 'patient_dispensings.created_by as treatment_deposits_creator_id', - 'users.phone as staff_number') - ->groupBy('patient_dispensings.created_by') - ->take(5) - ->get(); - - foreach($most_active_pharmacy_staff as $maps) { - $most_active_pharmacy_staff_results[] = $maps; - $pharmacy_most_active_staff_members[] = $maps->first_name. " ".$maps->last_name; - $pharmacy_most_active_staff_figures[] = $maps->user_activity_count; - } - - //6. DRUGS PAID BY CASH VS DRUGS PAID BY INVOICE - $drugs_paid_via_insurance = $invoiced_prescriptions; - - $drugs_paid_via_cash = $paid_prescriptions; - - if($drugs_paid_via_insurance > 0) { - $total_drugs_paid_via_insurance = $drugs_paid_via_insurance; - } - - if($drugs_paid_via_cash > 0) { - $total_drugs_paid_via_cash = $drugs_paid_via_cash; - } - - $pharmacy_drugs_via_cash = $total_drugs_paid_via_cash; - $pharmacy_drugs_via_insurance = $total_drugs_paid_via_insurance; - if($total_drugs_paid_via_insurance !== 0 && $total_drugs_paid_via_cash !== 0) { - $pharmacy_drugs_via_cash_percentage = ($total_drugs_paid_via_cash / ($total_drugs_paid_via_cash + $total_drugs_paid_via_insurance)) * 100; - $pharmacy_drugs_via_insurance_percentage = ($total_drugs_paid_via_insurance / ($total_drugs_paid_via_cash + $total_drugs_paid_via_insurance)) * 100; - - } else { - $pharmacy_drugs_via_cash_percentage = 0; - $pharmacy_drugs_via_insurance_percentage = 0; - } - $drugs_paid_via_cash = $total_drugs_paid_via_cash; - $drugs_paid_via_insurance = $total_drugs_paid_via_insurance; - $pharmacy_drugs_via_cash_vs_drugs_via_insurance_figures[] = $drugs_paid_via_cash; - $pharmacy_drugs_via_cash_vs_drugs_via_insurance_figures[] = $drugs_paid_via_insurance; - - //GRAPHS - //Pharmacy top drugs chart - $pharmacy_top_drugs_chart = app()->chartjs - ->name('drugsChart') - ->type('bar') - ->size(['width' => 600, 'height' => 400]) - ->labels($drugs_names) - ->datasets([ - [ - "label" => "No. of drugs sold", - 'backgroundColor' => ['#355070', '#6d597a', '#b56576', '#e56b6f', '#eaac8b', '#461220', '#8c2f39', '#b23a48', '#d9f2b4', '#353831'], - 'data' => $drugs_figures - ] - ]) - ->optionsRaw([ - 'legend' => [ - 'display' => false, - ], - 'scales' => [ - 'yAxes' => [['ticks' => ['beginAtZero' => true], - 'scaleLabel' => [ - 'display' => true, - 'labelString' => 'No. of drugs sold' - ], - ],], - 'xAxes' => [['ticks' => ['autoSkip' => false,],]] - ], - ]) - ->options([]); - //Pharmacy prescription chart - $pharmacy_prescription_pattern_chart = app()->chartjs - ->name('pharmacy_patient_prescriptions') - ->type('pie') - ->size(['width' => 700, 'height' => 300]) - ->labels(['Invoiced', 'Unpaid', 'Paid']) - ->datasets([ - [ - "label" => 'Pharmacy Statistics', - 'backgroundColor' => ['#809848', '#E03123', '#4AB64F'], - 'data' => $pharmacy_patient_prescriptions_datasets - ] - ]) - ->options([]); - //Pharmacy dispensing chart - $pharmacy_dispensing_pattern_chart = app()->chartjs - ->name('pharmacy_patient_dispensing') - ->type('pie') - ->size(['width' => 700, 'height' => 300]) - ->labels(['P & D', 'P & U', 'U & D', 'I & D', 'I & U']) - ->datasets([ - [ - "label" => 'Pharmacy Statistics', - 'backgroundColor' => ['#319B79', '#00bfb2', '#028090', '#f0f3bd', '#c64191'], - 'data' => $pharmacy_dispensing_datasets, - ] - ]) - ->options([]); - //Pharmacy episodes vs prescriptions chart - $pharmacy_episodes_vs_prescriptions_chart = app()->chartjs - ->name('pharmacy_patient_statistics') - ->type('bar') - ->size(['width' => 800, 'height' => 200]) - ->labels(['Patients', 'Episodes', 'Prescriptions']) - ->datasets([ - [ - "label" => 'Pharmacy Statistics', - 'backgroundColor' => ['#9ed8db','#467599', '#1d3354'], - 'data' => $pharmacy_figures - ] - ]) - ->optionsRaw([ - 'scales' => [ - 'yAxes' => [['ticks' => ['beginAtZero' => true],],], - 'xAxes' => [['ticks' => ['autoSkip' => false,],]] - ] - ]) - ->options([]); - //Pharmacy most active staff chart - $pharmacy_most_active_pharmacy_staff_chart = app()->chartjs - ->name('pharmacy_most_active_staff') - ->type('bar') - ->size(['width' => 800, 'height' => 200]) - ->labels($pharmacy_most_active_staff_members) - ->datasets([ - [ - "label" => 'Number of Prescriptions Dispensed', - 'backgroundColor' => ['#55dde0', '#33658a', '#2f4858', '#f6ae2d', '#f26419'], - 'data' => $pharmacy_most_active_staff_figures - ] - ]) - ->optionsRaw([ - 'scales' => [ - 'yAxes' => [['ticks' => ['beginAtZero' => true],],], - 'xAxes' => [['ticks' => ['autoSkip' => false,],]] - ] - ]) - ->options([]); - //Pharmacy drugs purchased by cash vs other payment options chart - $pharmacy_drugs_via_cash_vs_drugs_via_insurance_chart = app()->chartjs - ->name('pharmacy_drugs_via_cash_vs_drugs_via_insurance') - ->type('pie') - ->size(['width' => 700, 'height' => 300]) - ->labels(['Prescriptions Paid By Cash', 'Invoiced']) - ->datasets([ - [ - "label" => 'Cash Vs Insurance', - 'backgroundColor' => ['#aa4465','#592e83'], - 'data' => $pharmacy_drugs_via_cash_vs_drugs_via_insurance_figures - ] - ]) - ->options([]); - - return view('reports::reports_dashboard.pharmacy_overview', compact('pharmacy_patients', 'patient_episodes','pharmacy_prescriptions', 'pharmacy_dispensing_pattern_chart', - 'paid_and_dispensed_prescriptions', 'unpaid_and_dispensed_prescriptions', 'paid_and_undispensed_prescriptions', - 'unpaid_and_dispensed_prescriptions', 'invoiced_and_undispensed_prescriptions', 'invoiced_and_dispensed_prescriptions', - 'paid_and_undispensed_prescriptions_percentage','unpaid_and_dispensed_prescriptions_percentage', - 'invoiced_and_dispensed_prescriptions_percentage','invoiced_and_undispensed_prescriptions_percentage', 'paid_and_dispensed_prescriptions_percentage', - 'pharmacy_dispensing_datasets', 'pharmacy_episodes_vs_prescriptions_chart', 'pharmacy_prescription_pattern_chart', - 'paid_prescriptions_percentage', 'unpaid_prescriptions_percentage', - 'invoiced_prescriptions_percentage', 'purchased_elsewhere_prescriptions_percentage', - 'invoiced_prescriptions', 'unpaid_prescriptions', 'paid_prescriptions', 'purchased_elsewhere_prescriptions', - 'pharmacy_patient_prescriptions_datasets', 'pharmacy_top_drugs_chart', 'drugs', 'display_text', 'pharmacy_drugs_via_cash', 'pharmacy_drugs_via_insurance', - 'pharmacy_drugs_via_cash_vs_drugs_via_insurance_chart', 'pharmacy_drugs_via_cash_percentage', - 'pharmacy_drugs_via_cash_vs_drugs_via_insurance_figures', 'pharmacy_drugs_via_insurance_percentage', 'most_active_pharmacy_staff_results', - 'pharmacy_most_active_pharmacy_staff_chart', 'pharmacy_most_active_staff_members')); - } - //pharmacy top drugs - public function pharmacy_top_drugs(Request $request) - { - $dates_array = $this->get_date_range($request); - $start_date = $dates_array[0]; - $end_date = $dates_array[1]; - $display_text = "Showing results between " . streamline_date($start_date) . " and " . streamline_date($end_date); - - $patient_dispensings = DB::table('patient_dispensings') - ->whereBetween('created_at', [$start_date, $end_date]) - ->select('drugs', 'quantity_dispensed', 'patient_id') - ->get(); - $drug_id_array = []; - $drug_male_array = []; - $drug_female_array = []; - foreach ($patient_dispensings as $drug) { - // split into an array for drugs - $temp_drugs_array = explode(",", $drug->drugs); - $temp_dispensed_array = explode(",", $drug->quantity_dispensed); - - for ($i = 0; $i < count($temp_dispensed_array); $i++) { - if ($temp_dispensed_array[$i] == "") { - $temp_dispensed_array[$i] = 0; - } - - if (array_key_exists($temp_drugs_array[$i], $drug_id_array)) { - $drug_id_array[$temp_drugs_array[$i]] = $drug_id_array[$temp_drugs_array[$i]] + $temp_dispensed_array[$i]; - - if (get_name($drug->patient_id, 'id', 'gender', 'patients') == 1 && isset($drug_male_array[$temp_drugs_array[$i]])) { - $drug_male_array[$temp_drugs_array[$i]] = $drug_male_array[$temp_drugs_array[$i]] + $temp_dispensed_array[$i]; - } elseif (get_name($drug->patient_id, 'id', 'gender', 'patients') == 2 && isset($drug_female_array[$temp_drugs_array[$i]])) { - $drug_female_array[$temp_drugs_array[$i]] = $drug_female_array[$temp_drugs_array[$i]] + $temp_dispensed_array[$i]; - } - } else { - $drug_id_array[$temp_drugs_array[$i]] = $temp_dispensed_array[$i]; - if (get_name($drug->patient_id, 'id', 'gender', 'patients') == 1) { - $drug_male_array[$temp_drugs_array[$i]] = $temp_dispensed_array[$i]; - } else { - $drug_female_array[$temp_drugs_array[$i]] = $temp_dispensed_array[$i]; - } - } - } - } - arsort($drug_id_array); - $drug_id_array = array_slice($drug_id_array, 0, 10, true); - $drugs = []; - $drugs_names = []; - $drugs_figures = []; - foreach ($drug_id_array as $key => $value) { - $male = $drug_male_array[$key] ?? 0; - $female = $drug_female_array[$key] ?? 0; - - $drugs[] = [ - "id" => $key, - "name" => get_name($key, 'id', 'name', 'drugs'), - "male" => $male, - "female" => $female, - "total" => $male + $female, - ]; - - $drugs_names[] = get_name($key, 'id', 'name', 'drugs'); - $drugs_figures[] = $male + $female; - } - return view('reports::reports_dashboard.pharmacy_top_drugs', compact('display_text', 'drugs', 'drugs_names')); - } - - //pharmacy lists - public function pharmacy_lists(Request $request) - { - $dates_array = $this->get_date_range($request); - $start_date = $dates_array[0]; - $end_date = $dates_array[1]; - $display_text = "Showing results between " . streamline_date($start_date) . " and " . streamline_date($end_date); - - if($request->pharmacy_dispensing_pattern == 'pharmacy_dispensing_pattern') { - return $this->pharmacy_dispensing_pattern($request); - } elseif($request->pharmacy_prescription_pattern == 'pharmacy_prescription_pattern') { - return $this->pharmacy_prescription_pattern($request); - } elseif($request->pharmacy_top_drugs == 'pharmacy_top_drugs') { - return $this->pharmacy_top_drugs($request); - } elseif($request->pharmacy_episodes_vs_prescriptions == 'pharmacy_episodes_vs_prescriptions') { - return $this->pharmacy_episodes_vs_prescriptions($request); - } - } - - //top diagnoses - public function top_diagnoses(Request $request) - { - $dates_array = $this->get_date_range($request); - $start_date = $dates_array[0]; - $end_date = $dates_array[1]; - - $display_text = "Showing results between " . streamline_date($start_date) . " and " . streamline_date($end_date); - - $diagnoses_array = DB::table('consultations') - ->whereBetween('created_at', [$start_date, $end_date]) - ->selectRaw('primary_diagnosis, COUNT(*) as count') - ->groupBy('primary_diagnosis') - ->orderBy('count', 'desc') - ->limit(10) - ->get() - ->toArray(); - - $diagnoses = []; - $diagnoses_names = []; - $diagnoses_figures = []; - - foreach ($diagnoses_array as $diagnosis) { - $records = DB::table('consultations') - ->whereBetween('created_at', [$start_date, $end_date]) - ->where('primary_diagnosis', $diagnosis->primary_diagnosis) - ->get(['patient_id']); - - $male = 0; - $female = 0; - - foreach ($records as $record) { - if (get_name($record->patient_id, 'id', 'gender', 'patients') == 1) { - $male++; - } else { - $female++; - } - } - - $diagnoses[] = [ - "id" => $diagnosis->primary_diagnosis, - "name" => get_name($diagnosis->primary_diagnosis, 'id', 'name', 'diagnoses'), - "male" => $male, - "female" => $female, - "total" => ($male + $female), - ]; - - $diagnoses_names[] = get_name($diagnosis->primary_diagnosis, 'id', 'name', 'diagnoses'); - $diagnoses_figures[] = $male + $female; - } - - $diagnoses_chart = app()->chartjs - ->name('diagnosisChart') - ->type('horizontalBar') - ->size(['width' => 600, 'height' => 400]) - ->labels($diagnoses_names) - ->datasets([ - [ - "label" => "Top Recorded Diagnoses", - 'backgroundColor' => '#9a04f0', - 'data' => $diagnoses_figures - ] - ]) - ->optionsRaw([ - 'scales' => [ - 'yAxes' => [['ticks' => ['autoSkip' => false],],], - 'xAxes' => [['ticks' => ['beginAtZero' => true,],]] - ] - ]) - ->options([]); - - return view('reports::reports_dashboard.top_diagnoses', compact('diagnoses', 'diagnoses_chart', 'diagnoses_names', 'diagnoses_figures', 'display_text')); - } - - //top investigations - public function top_investigations(Request $request) - { - $dates_array = $this->get_date_range($request); - $start_date = $dates_array[0]; - $end_date = $dates_array[1]; - - $display_text = "Showing results between " . streamline_date($start_date) . " and " . streamline_date($end_date); - - $investigations_with_results = DB::table('investigation_results') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(); - $investigation_id_array = []; - $investigation_male_array = []; - $investigation_female_array = []; - - foreach ($investigations_with_results as $value) { - // split into an array for labs - $temp_investigations_array = explode(",", $value->investigation_id); - - // loop through the temporary arrays - for ($i = 0; $i < count($temp_investigations_array); $i++) { - // check if we have already recorded the diagnosis - if (array_key_exists($temp_investigations_array[$i], $investigation_id_array)) { - $investigation_id_array[$temp_investigations_array[$i]] = $investigation_id_array[$temp_investigations_array[$i]] + 1; - if (get_name($value->patient_id, 'id', 'gender', 'patients') == 1 && isset($investigation_male_array[$temp_investigations_array[$i]])) { - $investigation_male_array[$temp_investigations_array[$i]] = $investigation_male_array[$temp_investigations_array[$i]] + 1; - } elseif (get_name($value->patient_id, 'id', 'gender', 'patients') == 2 && isset($investigation_female_array[$temp_investigations_array[$i]])) { - $investigation_female_array[$temp_investigations_array[$i]] = $investigation_female_array[$temp_investigations_array[$i]] + 1; - } - } else { - if (get_name($value->patient_id, 'id', 'gender', 'patients') == 1) { - $investigation_male_array[$temp_investigations_array[$i]] = 1; - } else { - $investigation_female_array[$temp_investigations_array[$i]] = 1; - } - - $investigation_id_array[$temp_investigations_array[$i]] = 1; - } - } - } - - arsort($investigation_id_array); - $investigation_id_array = array_slice($investigation_id_array, 0, 10, true); - - $investigations = []; - $investigations_names = []; - $investigations_figures = []; - - foreach ($investigation_id_array as $key => $value) { - $male = $investigation_male_array[$key] ?? 0; - $female = $investigation_female_array[$key] ?? 0; - - $investigations[] = [ - "id" => $key, - "name" => get_name($key, 'id', 'name', 'investigations'), - "male" => $male, - "female" => $female, - "total" => $male + $female, - ]; - - $investigations_names[] = get_name($key, 'id', 'name', 'investigations'); - $investigations_figures[] = $male + $female; - } - - $investigation_chart = app()->chartjs - ->name('investigationChart') - ->type('horizontalBar') - ->size(['width' => 600, 'height' => 400]) - ->labels($investigations_names) - ->datasets([ - [ - "label" => "Top Recorded Investigations", - 'backgroundColor' => '#9a04f0', - 'data' => $investigations_figures - ] - ]) - ->optionsRaw([ - 'scales' => [ - 'yAxes' => [['ticks' => ['autoSkip' => false],],], - 'xAxes' => [['ticks' => ['beginAtZero' => true,],]] - ] - ]) - ->options([]); - - return view('reports::reports_dashboard.top_investigations', compact('investigations', 'investigation_chart', 'display_text')); - } - - //diagnoses details - public function diagnosis_details($id) - { - $months = []; - $male_figures = []; - $female_figures = []; - for ($i = 0; $i < 14; $i++) { - $start_date_search = Carbon::now()->subMonthsNoOverflow($i)->firstOfMonth()->startOfDay(); - $end_date_search = Carbon::now()->subMonthsNoOverflow($i)->lastOfMonth()->endOfDay(); - - $diagnoses = DB::table('consultations') - ->where('primary_diagnosis', $id) - ->whereBetween('created_at', [$start_date_search, $end_date_search]) - ->get(['patient_id']); - $male = 0; - $female = 0; - - foreach ($diagnoses as $diagnosis) { - if (get_name($diagnosis->patient_id, 'id', 'gender', 'patients') == 1) { - $male++; - } else { - $female++; - } - } - - $months[] = Carbon::now()->subMonthsNoOverflow($i)->englishMonth . " " . Carbon::now()->subMonthsNoOverflow($i)->yearIso; - $male_figures[] = $male; - $female_figures[] = $female; - } - - return view('reports::reports_dashboard.diagnosis_details', compact('months', 'male_figures', 'female_figures', 'id')); - } - - //top suppliers - public function top_suppliers(Request $request) - { - $dates_array = $this->get_date_range($request); - $start_date = $dates_array[0]; - $end_date = $dates_array[1]; - - $display_text = "Showing results between " . streamline_date($start_date) . " and " . streamline_date($end_date); - - $suppliers = DB::table('suppliers') - ->get(['id', 'name']); - - $top_suppliers = []; - - foreach ($suppliers as $supplier) { - $quotations = DB::table('quotations') - ->whereBetween('created_at', [$start_date, $end_date]) - ->whereNotNull('total_price') - ->where('supplier_id', $supplier->id) - ->get(); - - $total = 0; - - foreach ($quotations as $quotation) { - $total += $quotation->total_price; - } - - $top_suppliers[$supplier->id] = $total; - } - - arsort($top_suppliers); - $top_suppliers = array_slice($top_suppliers, 0, 10, true); - - $names = []; - $amounts = []; - - foreach ($top_suppliers as $key => $value) { - $names[] = get_name($key, 'id', 'name', 'suppliers'); - $amounts[] = $value; - } - - return view('reports::reports_dashboard.top_suppliers', compact('names', 'amounts', 'display_text')); - } - - /** - * Staff Reports including doctors, pharmacists, lab attendants, nurses and receptionists - */ - public function top_staff(Request $request) - { - $dates_array = $this->get_date_range($request); - $start_date = $dates_array[0]; - $end_date = $dates_array[1]; - $consultation = []; - $colors = ['#55dde0', '#33658a', '#2f4858', - '#f6ae2d', '#f26419', '#2d2d2a', '#353831', '#38423b', - '#3f5e5a', '#20fc8f', '#f19a3e', '#98d9c2', '#403233', - '#840032', '#002642', '#ff57bb', '#e01a4f', '#f15946', - '#0d0630', '#a2a392']; - $top_performing_lab_attendants_results = []; - $top_performing_lab_attendants_members = []; - $top_performing_lab_attendants_figures = []; - $top_performing_nurses_at_triage_members = []; - $top_performing_nurses_at_triage_figures = []; - $top_performing_lab_attendants_received_by = []; - $top_performing_lab_attendants_entered_by = []; - $top_performing_lab_attendants_authenticated_by = []; - $top_performing_receptionists_at_triage_members = []; - $top_performing_receptionists_at_triage_figures = []; - $pharmacy_most_active_staff_members = []; - $most_active_pharmacy_staff_results = []; - $pharmacy_most_active_staff_figures = []; - $top_performing_doctor_members = []; - $top_performing_doctor_figures = []; - $users = User::all(); - - $display_text = "Showing results between " . streamline_date($start_date) . " and " . streamline_date($end_date); - - // 1.TOP PERFORMIMG DOCTORS AT OPD - $consultations = DB::table('consultations')->whereNull('deleted_at') - ->whereBetween('created_at', [$start_date, $end_date]) - ->where('completed', 1) - ->get(['consultation_done_by', 'created_by', 'updated_by', 'episode_id']); - - $doctors = []; - - foreach ($consultations as $consultation) { - if (!is_null($consultation->consultation_done_by)) { - $doctor_id = $consultation->consultation_done_by; - } else { - $doctor_id = $consultation->created_by; - } - - if (isset($doctors[$doctor_id])) { - $doctors[$doctor_id] = $doctors[$doctor_id] + 1; - } else { - $doctors[$doctor_id] = 1; - } - } - - arsort($doctors); - - if (count($doctors) > 10) { - $doctors = array_slice($doctors, 0, 10, true); - } - - foreach ($doctors as $doctor_id => $doctor) { - $top_performing_doctor_members[] = get_full_name($doctor_id, 'id', 'first_name', 'last_name', 'users'); - $top_performing_doctor_figures[] = $doctor; - } - - //displaying graphical data of top doctor performers - $top_performing_doctors_chart = app()->chartjs - ->name('top_performing_doctors') - ->type('bar') - ->size(['width' => 800, 'height' => 400]) - ->labels($top_performing_doctor_members) - ->datasets([ - [ - "label" => 'Consultations at OPD', - 'backgroundColor' => $colors, - 'data' => $top_performing_doctor_figures - ] - ]) - ->optionsRaw([ - 'legend' => [ - 'display' => false, - ], - 'scales' => [ - 'yAxes' => [['ticks' => ['beginAtZero' => true], - 'scaleLabel' => [ - 'display' => true, - 'labelString' => 'No. of consultations at OPD' - ], - ],], - 'xAxes' => [['ticks' => ['autoSkip' => false, - 'scaleLabel' => [ - 'display' => true, - 'labelString' => 'Staff Names' - ], - ],]] - ] - ]) - ->options([]); - - // 2.TOP PERFORMING LAB ATTENDANTS - //results received by - $requests_received_by = DB::table('ordered_investigations') - ->whereBetween('ordered_investigations.created_at', [$start_date, $end_date]) - ->join('users', 'users.id', '=', 'ordered_investigations.request_received_by') - ->select('ordered_investigations.created_at as created_at', - 'ordered_investigations.request_received_by as request_received_by', - 'users.id as user_id', 'users.first_name', 'users.last_name') - ->get(); - - //results entered by - $requests_entered_by = DB::table('investigation_results') - ->whereBetween('investigation_results.created_at', [$start_date, $end_date]) - ->join('users', 'users.id', '=', 'investigation_results.created_by') - ->select('investigation_results.created_at as created_at', 'investigation_results.created_by as request_entered_by','users.id as user_id', 'users.first_name', 'users.last_name') - ->get(); - - //results authenticated by - $requests_authenticated_by = DB::table('investigation_results') - ->whereBetween('investigation_results.created_at', [$start_date, $end_date]) - ->join('users', 'users.id', '=', 'investigation_results.authenticated_by') - ->select('investigation_results.created_at as created_at', 'investigation_results.authenticated_by as request_authenticated_by','users.id as user_id', 'users.first_name', 'users.last_name') - ->get(); - - $members = []; - //merge all collections to array and group by user_id - $array_merges = array_merge($requests_received_by->toArray(), $requests_entered_by->toArray(), $requests_authenticated_by->toArray()); - $array_groups = array_group_by_key($array_merges, 'user_id'); - //sorting by descending order - arsort($array_groups); - //pick the top 10 elements in the array - $array_groups = array_slice($array_groups, 0, 10, true); - //loop through list assigning corresponding values to each member - foreach($array_groups as $array_group){ - $collected = collect($array_group); - $user_id = null; - $group_received_by = $collected->groupBy('request_received_by')->all(); - $group_entered_by = $collected->groupBy('request_entered_by')->all(); - $group_authenticated_by = $collected->groupBy('request_authenticated_by')->all(); - - $group_received_by = count(array_shift($group_received_by)); - $group_entered_by = count(array_pop($group_entered_by)); - $group_authenticated_by = count(array_pop($group_authenticated_by)); - - $top_performing_lab_attendants_figures[] = $group_received_by + $group_entered_by + $group_authenticated_by; - $top_performing_lab_attendants_received_by[] = $group_received_by; - $top_performing_lab_attendants_entered_by[] = $group_entered_by; - $top_performing_lab_attendants_authenticated_by[] = $group_authenticated_by; - } - //extract keys as user ids - $keys = array_keys($array_groups); - //store user ids - foreach($keys as $key){ - $members[] = User::find($key); - } - //create a list of members to populate on graph - foreach($members as $member){ - $top_performing_lab_attendants_members[] = $member->first_name. " ".$member->last_name; - } - - //displaying graphical data of lab performers - $top_performing_lab_attendants_chart = app()->chartjs - ->name('top_performing_lab_attendants') - ->type('bar') - ->size(['width' => 800, 'height' => 400]) - ->labels($top_performing_lab_attendants_members) - ->datasets([ - [ - 'label' => 'Requests received + Results entered + Results authenticated', - // 'label' => 'Requests received '.'('.$top_performing_lab_attendants_received_by[$i].')'. - // '+ Results entered ' .'('.$top_performing_lab_attendants_entered_by[$i].')'. - // '+ Results authenticated '.'('.($top_performing_lab_attendants_authenticated_by[$i].')'), - 'backgroundColor' => $colors, - 'data' => $top_performing_lab_attendants_figures - ] - ]) - ->optionsRaw([ - 'legend' => [ - 'display' => false, - ], - 'scales' => [ - 'yAxes' => [['ticks' => ['beginAtZero' => true], - 'scaleLabel' => [ - 'display' => true, - 'labelString' => 'No of requests received, entered and authenticated' - ], - ],], - 'xAxes' => [['ticks' => ['autoSkip' => false, - 'scaleLabel' => [ - 'display' => true, - 'labelString' => 'Staff Names' - ], - ],]] - ] - ]) - ->options([]); - - // 3.TOP PERFORMING NURSES AT TRIAGE - //triage created by - $triage_created_by = DB::table('triage') - ->whereBetween('triage.created_at', [$start_date, $end_date]) - ->join('users', 'users.id', '=', 'triage.created_by') - ->select('triage.created_at as created_at', - 'triage.created_by as episode_created_by', - 'users.id as user_id', 'users.first_name', 'users.last_name') - ->get(); - - $members = []; - //merge all collections to array and group by user_id - $array_merges = array_merge($triage_created_by->toArray()); - $array_groups = array_group_by_key($array_merges, 'user_id'); - //sorting by descending order - arsort($array_groups); - //pick the top 10 elements in the array - $array_groups = array_slice($array_groups, 0, 10, true); - //loop through list assigning corresponding values to each member - foreach($array_groups as $array_group){ - $top_performing_nurses_at_triage_figures[] = count($array_group); - } - //extract keys as user ids - $keys = array_keys($array_groups); - //store user ids for only doctors - foreach($keys as $key){ - $members[] = User::find($key); - } - //create a list of members to populate on graph - foreach($members as $member){ - $top_performing_nurses_at_triage_members[] = $member->first_name. " ".$member->last_name; - } - //displaying graphical data of top nurse performers - $top_performing_nurses_at_triage_chart = app()->chartjs - ->name('top_performing_nurses_at_triage') - ->type('bar') - ->size(['width' => 800, 'height' => 400]) - ->labels($top_performing_nurses_at_triage_members) - ->datasets([ - [ - "label" => 'Number of Triage records submitted', - 'backgroundColor' => $colors, - 'data' => $top_performing_nurses_at_triage_figures - ] - ]) - ->optionsRaw([ - 'legend' => [ - 'display' => false, - ], - 'scales' => [ - 'yAxes' => [['ticks' => ['beginAtZero' => true], - 'scaleLabel' => [ - 'display' => true, - 'labelString' => 'No of triage records submitted' - ], - ],], - 'xAxes' => [['ticks' => ['autoSkip' => false,],]] - ] - ]) - ->options([]); - - // 4.TOP PERFORMING STAFF AT PHARMACY - //treatment created by - $treatment_created_by = DB::table('treatments') - ->whereBetween('treatments.created_at', [$start_date, $end_date]) - ->join('users', 'users.id', '=', 'treatments.created_by') - ->select('treatments.created_at as created_at', - 'treatments.dispense_status as dispense_status', - 'treatments.created_by as treatment_created_by', - 'users.id as user_id', 'users.first_name', 'users.last_name') - ->get(); - - //patient dispensing dispensed by - $treatment_dispensed_by = DB::table('patient_dispensings') - ->whereBetween('patient_dispensings.created_at', [$start_date, $end_date]) - ->join('users', 'users.id', '=', 'patient_dispensings.created_by') - ->select('patient_dispensings.created_at as created_at', - 'patient_dispensings.dispensed as is_dispensed', - 'patient_dispensings.created_by as treatment_created_by', - 'users.id as user_id', 'users.first_name', 'users.last_name') - ->get(); - - //ward dispensing dispensed by - $ward_dispensed_by = DB::table('ward_dispensings') - ->whereBetween('ward_dispensings.created_at', [$start_date, $end_date]) - ->join('users', 'users.id', '=', 'ward_dispensings.created_by') - ->select('ward_dispensings.created_at as created_at', - 'ward_dispensings.received_by as received_by', - 'ward_dispensings.created_by as ward_dispensed_by', - 'users.id as user_id', 'users.first_name', 'users.last_name') - ->get(); - - $members = []; - //merge all collections to array and group by user_id - $array_merges = array_merge($treatment_created_by->toArray(), $treatment_dispensed_by->toArray(), $ward_dispensed_by->toArray()); - $array_groups = array_group_by_key($array_merges, 'user_id'); - //sorting by descending order - arsort($array_groups); - //pick the top 10 elements in the array - $array_groups = array_slice($array_groups, 0, 10, true); - //loop through list assigning corresponding values to each member - foreach($array_groups as $array_group){ - $pharmacy_most_active_staff_figures[] = count($array_group); - } - //extract keys as user ids - $keys = array_keys($array_groups); - //store user ids for only doctors - foreach($keys as $key){ - $members[] = User::find($key); - } - //create a list of members to populate on graph - foreach($members as $member){ - if ($member) { - $pharmacy_most_active_staff_members[] = $member->first_name. " ".$member->last_name; - } - } - //displaying graphical data of top pharmacy performers - $top_performing_pharmacy_staff_chart = app()->chartjs - ->name('top_performing_pharmacy_staff') - ->type('bar') - ->size(['width' => 800, 'height' => 400]) - ->labels($pharmacy_most_active_staff_members) - ->datasets([ - [ - "label" => 'No of ward dispensings + patient dispensings + treatments created', - 'backgroundColor' => $colors, - 'data' => $pharmacy_most_active_staff_figures - ] - ]) - ->optionsRaw([ - 'legend' => [ - 'display' => false, - ], - 'stacked' => true, - 'scales' => [ - 'yAxes' => [['ticks' => ['beginAtZero' => true], - 'scaleLabel' => [ - 'display' => true, - 'labelString' => 'No. of Contributions' - ], - ],], - 'xAxes' => [['ticks' => ['autoSkip' => false,], - 'scaleLabel' => [ - 'display' => true, - 'labelString' => 'Staff Names' - ], - ]] - ], - - ]) - ->options([]); - - // 5.TOP PERFORMING RECEPTIONISTS AT TRIAGE - //patient episodes created by - $episodes_created_by = DB::table('patient_episodes') - ->whereBetween('patient_episodes.created_at', [$start_date, $end_date]) - ->join('users', 'users.id', '=', 'patient_episodes.created_by') - ->select('patient_episodes.created_at as created_at', - 'patient_episodes.created_by as episode_created_by', - 'users.id as user_id', 'users.first_name', 'users.last_name') - ->get(); - - $members = []; - //merge all collections to array and group by user_id - $array_merges = array_merge($episodes_created_by->toArray()); - $array_groups = array_group_by_key($array_merges, 'user_id'); - //sorting by descending order - arsort($array_groups); - //pick the top 10 elements in the array - $array_groups = array_slice($array_groups, 0, 10, true); - //loop through list assigning corresponding values to each member - foreach($array_groups as $array_group){ - $top_performing_receptionists_at_triage_figures[] = count($array_group); - } - //extract keys as user ids - $keys = array_keys($array_groups); - //store user ids for only doctors - foreach($keys as $key){ - $members[] = User::find($key); - } - - //create a list of members to populate on graph - foreach($members as $member){ - if ($member) { - $pharmacy_most_active_staff_members[] = $member->first_name. " ".$member->last_name; - } - } - //displaying graphical data of top reception performers - $top_performing_receptionists_at_triage_chart = app()->chartjs - ->name('top_performing_receptionists_at_triage') - ->type('bar') - ->size(['width' => 800, 'height' => 400]) - ->labels($top_performing_receptionists_at_triage_members) - ->datasets([ - [ - "label" => 'No of patients created + episodes started', - 'backgroundColor' => $colors, - 'data' => $top_performing_receptionists_at_triage_figures - ] - ]) - ->optionsRaw([ - 'legend' => [ - 'display' => false, - ], - 'scales' => [ - 'yAxes' => [['ticks' => ['beginAtZero' => true], - 'scaleLabel' => [ - 'display' => true, - 'labelString' => 'Patients created + Episodes started' - ], - ],], - 'xAxes' => [['ticks' => ['autoSkip' => false, - 'scaleLabel' => [ - 'display' => true, - 'labelString' => 'Staff Names' - ], - ],]] - ] - ]) - ->options([]); - $date = $request->dates; - - if(!empty($request->print)){ - $pdf = SnappyPDF::loadView('reports::reports_dashboard.print_top_doctors_and_staff',compact('display_text', 'top_performing_receptionists_at_triage_chart', - 'top_performing_nurses_at_triage_chart', 'top_performing_doctors_chart', 'top_performing_lab_attendants_chart', 'top_performing_pharmacy_staff_chart')) - ->setOrientation('landscape') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('enable-javascript', true) - ->setOption('javascript-delay', 13500) - ->setOption('enable-smart-shrinking', true) - ->setOption('no-stop-slow-scripts', true) - ->setOption('footer-html', ''.config('app.name').' - Printed On ' . date('Y-m-d') . ' By ' . auth()->user()->first_name . " " . auth()->user()->last_name . ''); - - return $pdf->inline('Staff Overview' . date(" d-m-y h:ia") . '.pdf'); - - }else return view('reports::reports_dashboard.top_doctors_and_staff', compact('display_text', 'date','top_performing_receptionists_at_triage_chart', - 'top_performing_nurses_at_triage_chart', 'top_performing_doctors_chart', 'top_performing_lab_attendants_chart', 'top_performing_pharmacy_staff_chart')); - } - - - //average patient wait times - public function average_patient_wait_times(Request $request) - { - //return $this->average_wait_time_reception_to_triage($request); - $dates_array = $this->get_date_range($request); - $start_date = $dates_array[0]; - $end_date = $dates_array[1]; - - $display_text = "Showing results between " . streamline_date($start_date) . " and " . streamline_date($end_date); - - $days = []; - $times = []; - $dates = []; - $counter = 0; - $mon_total_time = 0; - $mon_patients = 0; - $tue_total_time = 0; - $tue_patients = 0; - $wed_total_time = 0; - $wed_patients = 0; - $thu_total_time = 0; - $thu_patients = 0; - $fri_total_time = 0; - $fri_patients = 0; - $sat_total_time = 0; - $sat_patients = 0; - $sun_total_time = 0; - $sun_patients = 0; - $more_than_day_time = 0; - $more_than_day_patients = 0; - - //Average wait time for patients to see doctor - $patient_episodes = DB::table('patient_episodes') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(['id', 'created_at']); - - foreach ($patient_episodes as $episode) { - $consultation = DB::table('consultations') - ->where('episode_id', $episode->id) - ->first(); - - if ($consultation) { - $start_date = new DateTime($episode->created_at); - $end_date = new DateTime($consultation->created_at); - - $dates[$counter]["id"] = 1; - $dates[$counter]["start"] = $episode->created_at; - $dates[$counter]["end"] = $consultation->created_at; - - $interval = date_diff($start_date, $end_date); - $minutes = $interval->days * 24 * 60; - $minutes += $interval->h * 60; - $minutes += $interval->i; - $dates[$counter]["diff"] = $minutes; - - if (Carbon::instance($start_date)->isSameDay($end_date)) { - switch ($start_date->format('l')) { - case 'Monday': - $mon_total_time += $minutes; - $mon_patients++; - break; - case 'Tuesday': - $tue_total_time += $minutes; - $tue_patients++; - break; - case 'Wednesday': - $wed_total_time += $minutes; - $wed_patients++; - break; - case 'Thursday': - $thu_total_time += $minutes; - $thu_patients++; - break; - case 'Friday': - $fri_total_time += $minutes; - $fri_patients++; - break; - case 'Saturday': - $sat_total_time += $minutes; - $sat_patients++; - break; - case 'Sunday': - $sun_total_time += $minutes; - $sun_patients++; - break; - } - } else { - $more_than_day_time += $minutes; - $more_than_day_patients++; - } - - $counter++; - } - - $days = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]; - $mon_average = ($mon_patients == 0) ? 0 : (int)round($mon_total_time / $mon_patients); - $tue_average = ($tue_patients == 0) ? 0 : (int)round($tue_total_time / $tue_patients); - $wed_average = ($wed_patients == 0) ? 0 : (int)round($wed_total_time / $wed_patients); - $thu_average = ($thu_patients == 0) ? 0 : (int)round($thu_total_time / $thu_patients); - $fri_average = ($fri_patients == 0) ? 0 : (int)round($fri_total_time / $fri_patients); - $sat_average = ($sat_patients == 0) ? 0 : (int)round($sat_total_time / $sat_patients); - $sun_average = ($sun_patients == 0) ? 0 : (int)round($sun_total_time / $sun_patients); - $times = [$mon_average, $tue_average, $wed_average, $thu_average, $fri_average, $sat_average, $sun_average]; - } - - //Average wait time for patients from reception to triage - $episode_creation_to_triage_taken_results = DB::table('patient_episodes') - ->whereBetween('patient_episodes.created_at', [$start_date, $end_date]) - ->join('triage', 'triage.patient_id', '=', 'patient_episodes.patient_id') - // ->select('patient_episodes.patient_id as patient_id', 'patient_episodes.created_at as patient_episode_creation_date', - // 'triage.created_at as triage_creation_date') - ->get(); - - foreach ($episode_creation_to_triage_taken_results as $episode) { - $consultation = DB::table('consultations') - ->where('episode_id', $episode->id) - ->first(); - - if ($consultation) { - $start_date = new DateTime($episode->created_at); - $end_date = new DateTime($consultation->created_at); - - $dates[$counter]["id"] = 1; - $dates[$counter]["start"] = $episode->created_at; - $dates[$counter]["end"] = $consultation->created_at; - - $interval = date_diff($start_date, $end_date); - $minutes = $interval->days * 24 * 60; - $minutes += $interval->h * 60; - $minutes += $interval->i; - $dates[$counter]["diff"] = $minutes; - - if (Carbon::instance($start_date)->isSameDay($end_date)) { - switch ($start_date->format('l')) { - case 'Monday': - $mon_total_time += $minutes; - $mon_patients++; - break; - case 'Tuesday': - $tue_total_time += $minutes; - $tue_patients++; - break; - case 'Wednesday': - $wed_total_time += $minutes; - $wed_patients++; - break; - case 'Thursday': - $thu_total_time += $minutes; - $thu_patients++; - break; - case 'Friday': - $fri_total_time += $minutes; - $fri_patients++; - break; - case 'Saturday': - $sat_total_time += $minutes; - $sat_patients++; - break; - case 'Sunday': - $sun_total_time += $minutes; - $sun_patients++; - break; - } - } else { - $more_than_day_time += $minutes; - $more_than_day_patients++; - } - - $counter++; - } - - $days = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]; - $mon_average = ($mon_patients == 0) ? 0 : (int)round($mon_total_time / $mon_patients); - $tue_average = ($tue_patients == 0) ? 0 : (int)round($tue_total_time / $tue_patients); - $wed_average = ($wed_patients == 0) ? 0 : (int)round($wed_total_time / $wed_patients); - $thu_average = ($thu_patients == 0) ? 0 : (int)round($thu_total_time / $thu_patients); - $fri_average = ($fri_patients == 0) ? 0 : (int)round($fri_total_time / $fri_patients); - $sat_average = ($sat_patients == 0) ? 0 : (int)round($sat_total_time / $sat_patients); - $sun_average = ($sun_patients == 0) ? 0 : (int)round($sun_total_time / $sun_patients); - $times = [$mon_average, $tue_average, $wed_average, $thu_average, $fri_average, $sat_average, $sun_average]; - } - - //Average wait time for patients from triage to doctor - $wait_time_from_triage_to_doctors = DB::table('patient_episodes') - ->whereBetween('patient_episodes.created_at', [$start_date, $end_date]) - ->join('triage', 'triage.patient_id', '=', 'patient_episodes.patient_id') - ->select( - 'patient_episodes.patient_id as patient_id', 'patient_episodes.created_at as patient_episode_creation_date', - 'triage.created_at as triage_creation_date') - ->get(); - - foreach ($wait_time_from_triage_to_doctors as $episode) { - $consultation = DB::table('consultations') - ->where('episode_id', $episode->patient_id) - ->first(); - - if ($consultation) { - $start_date = new DateTime($episode->patient_episode_creation_date); - $end_date = new DateTime($consultation->created_at); - - $dates[$counter]["id"] = 1; - $dates[$counter]["start"] = $episode->patient_episode_creation_date; - $dates[$counter]["end"] = $consultation->created_at; - - $interval = date_diff($start_date, $end_date); - $minutes = $interval->days * 24 * 60; - $minutes += $interval->h * 60; - $minutes += $interval->i; - $dates[$counter]["diff"] = $minutes; - - if (Carbon::instance($start_date)->isSameDay($end_date)) { - switch ($start_date->format('l')) { - case 'Monday': - $mon_total_time += $minutes; - $mon_patients++; - break; - case 'Tuesday': - $tue_total_time += $minutes; - $tue_patients++; - break; - case 'Wednesday': - $wed_total_time += $minutes; - $wed_patients++; - break; - case 'Thursday': - $thu_total_time += $minutes; - $thu_patients++; - break; - case 'Friday': - $fri_total_time += $minutes; - $fri_patients++; - break; - case 'Saturday': - $sat_total_time += $minutes; - $sat_patients++; - break; - case 'Sunday': - $sun_total_time += $minutes; - $sun_patients++; - break; - } - } else { - $more_than_day_time += $minutes; - $more_than_day_patients++; - } - - $counter++; - } - - $days = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]; - $mon_average = ($mon_patients == 0) ? 0 : (int)round($mon_total_time / $mon_patients); - $tue_average = ($tue_patients == 0) ? 0 : (int)round($tue_total_time / $tue_patients); - $wed_average = ($wed_patients == 0) ? 0 : (int)round($wed_total_time / $wed_patients); - $thu_average = ($thu_patients == 0) ? 0 : (int)round($thu_total_time / $thu_patients); - $fri_average = ($fri_patients == 0) ? 0 : (int)round($fri_total_time / $fri_patients); - $sat_average = ($sat_patients == 0) ? 0 : (int)round($sat_total_time / $sat_patients); - $sun_average = ($sun_patients == 0) ? 0 : (int)round($sun_total_time / $sun_patients); - $times = [$mon_average, $tue_average, $wed_average, $thu_average, $fri_average, $sat_average, $sun_average]; - } - - //Average wait time for patients from doctor to lab - - //Average wait time for patients from treatments submission to confirmation - - //Average wait time for patients from treatments submission to dispensation - - return view('reports::reports_dashboard.average_patient_wait_times', compact('display_text', 'dates', 'days', 'times')); - } - - //average wait time reception to triage - public function average_wait_time_reception_to_triage(Request $request) - { - $dates_array = $this->get_date_range($request); - $start_date = $dates_array[0]; - $end_date = $dates_array[1]; - - $display_text = "Showing results between " . streamline_date($start_date) . " and " . streamline_date($end_date); - - $days = []; - $times = []; - $dates = []; - $counter = 0; - $mon_total_time = 0; - $mon_patients = 0; - $tue_total_time = 0; - $tue_patients = 0; - $wed_total_time = 0; - $wed_patients = 0; - $thu_total_time = 0; - $thu_patients = 0; - $fri_total_time = 0; - $fri_patients = 0; - $sat_total_time = 0; - $sat_patients = 0; - $sun_total_time = 0; - $sun_patients = 0; - $more_than_day_time = 0; - $more_than_day_patients = 0; - - - $patient_episodes = DB::table('patient_episodes') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(['id', 'created_at']); - - - foreach ($patient_episodes as $episode) { - $consultation = DB::table('consultations') - ->where('episode_id', $episode->id) - ->first(); - - if ($consultation) { - $start_date = new DateTime($episode->created_at); - $end_date = new DateTime($consultation->created_at); - - $dates[$counter]["id"] = 1; - $dates[$counter]["start"] = $episode->created_at; - $dates[$counter]["end"] = $consultation->created_at; - - $interval = date_diff($start_date, $end_date); - $minutes = $interval->days * 24 * 60; - $minutes += $interval->h * 60; - $minutes += $interval->i; - $dates[$counter]["diff"] = $minutes; - - if (Carbon::instance($start_date)->isSameDay($end_date)) { - switch ($start_date->format('l')) { - case 'Monday': - $mon_total_time += $minutes; - $mon_patients++; - break; - case 'Tuesday': - $tue_total_time += $minutes; - $tue_patients++; - break; - case 'Wednesday': - $wed_total_time += $minutes; - $wed_patients++; - break; - case 'Thursday': - $thu_total_time += $minutes; - $thu_patients++; - break; - case 'Friday': - $fri_total_time += $minutes; - $fri_patients++; - break; - case 'Saturday': - $sat_total_time += $minutes; - $sat_patients++; - break; - case 'Sunday': - $sun_total_time += $minutes; - $sun_patients++; - break; - } - } else { - $more_than_day_time += $minutes; - $more_than_day_patients++; - } - - $counter++; - } - - $days = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]; - $mon_average = ($mon_patients == 0) ? 0 : (int)round($mon_total_time / $mon_patients); - $tue_average = ($tue_patients == 0) ? 0 : (int)round($tue_total_time / $tue_patients); - $wed_average = ($wed_patients == 0) ? 0 : (int)round($wed_total_time / $wed_patients); - $thu_average = ($thu_patients == 0) ? 0 : (int)round($thu_total_time / $thu_patients); - $fri_average = ($fri_patients == 0) ? 0 : (int)round($fri_total_time / $fri_patients); - $sat_average = ($sat_patients == 0) ? 0 : (int)round($sat_total_time / $sat_patients); - $sun_average = ($sun_patients == 0) ? 0 : (int)round($sun_total_time / $sun_patients); - $times = [$mon_average, $tue_average, $wed_average, $thu_average, $fri_average, $sat_average, $sun_average]; - - } - return compact('days', 'times', 'display_text', 'dates'); - } - - //attendance - public function attendance(Request $request) - { - $male = 0; - $female = 0; - $periods = array(); - $period_header = "Months"; - $display_text = "Showing this Year's results"; - $consultations_figures = array(); - $religions_figures = array(); - $occupations_figures = array(); - $districts_figures = array(); - $start_date = Carbon::today()->startOfYear(); - $end_date = Carbon::today()->endOfYear(); - $religions = DB::table('religions')->whereNull('deleted_at')->pluck('name'); - $occupations = DB::table('occupations')->whereNull('deleted_at')->pluck('name'); - $districts = DB::table('districts')->whereNull('deleted_at')->pluck('name'); - $this_year = Carbon::today()->year; - - $consultations = DB::table('consultations') - ->whereNotNull("primary_diagnosis") - ->whereBetween('created_at', [$start_date, $end_date]) - ->select( - DB::raw('GROUP_CONCAT(DISTINCT patient_id) as `patientIds`'), - DB::raw('COUNT(id) as `consultationsInMonth`'), - DB::raw('YEAR(created_at) year, MONTH(created_at) month') - ) - ->groupBy('year', 'month') - ->get(); - - // Religions - foreach (range(0, count($religions) - 1) as $number) { - $religions_figures[$number] = 0; - } - - // Occupations - foreach (range(0, count($occupations) - 1) as $number) { - $occupations_figures[$number] = 0; - } - - // Districts - foreach (range(0, count($districts) - 1) as $number) { - $districts_figures[$number] = 0; - } - - if (isset($request->dates)) { - switch ($request->dates): - case 'week': - $period_header = "Last Week"; - $display_text = "Showing results for the last Week"; - $start_date = Carbon::today()->startOfWeek(); - $end_date = Carbon::today()->endOfWeek(); - - $consultations = DB::table('consultations') - ->whereNotNull("primary_diagnosis") - ->whereBetween('created_at', [$start_date, $end_date]) - ->select( - DB::raw('GROUP_CONCAT(DISTINCT patient_id) as `patientIds`'), - DB::raw('COUNT(id) as `consultationsInDay`'), - DB::raw('DAY(created_at) day') - ) - ->groupBy('day') - ->get(); - - $periods = getDaysList(); - foreach (range(0, 7) as $number) { - $consultations_figures[$number] = 0; - } - - foreach ($consultations as $consultation) { - if ($consultation->day > 0) { - $consultations_figures[$consultation->day] = $consultation->consultationsInDay; - $patient_ids = explode(',', $consultation->patientIds); - - foreach ($patient_ids as $patient_id) { - // Male vs Female - if (get_name($patient_id, 'id', 'gender', 'patients') == 1) { - $male++; - } else { - $female++; - } - - // Religions - $religion = get_name($patient_id, 'id', 'religion_id', 'patients'); - if (!is_null($religion) && $religion != 0) { - if (isset($religions_figures[$religion - 1])) { - $religions_figures[$religion - 1] += 1; - } - } - - // Occupations - $occupation = get_name($patient_id, 'id', 'occupation_id', 'patients'); - if (!is_null($occupation) && $occupation != 0) { - if (isset($occupations_figures[$occupation - 1])) { - $occupations_figures[$occupation - 1] += 1; - } - } - - // Districts - $district = get_name($patient_id, 'id', 'district_id', 'patients'); - if (!is_null($district) && $district != 0) { - if (isset($districts_figures[$district - 1])) { - $districts_figures[$district - 1] += 1; - } - } - } - } - } - - break; - - case 'month': - $period_header = "Last Month"; - $display_text = "Showing results for the last Month"; - $start_date = Carbon::today()->startOfMonth(); - $end_date = Carbon::today()->endOfMonth(); - - $consultations = DB::table('consultations') - ->whereNotNull("primary_diagnosis") - ->whereBetween('created_at', [$start_date, $end_date]) - ->select( - DB::raw('GROUP_CONCAT(DISTINCT patient_id) as `patientIds`'), - DB::raw('COUNT(id) as `consultationsInDay`'), - DB::raw('DAY(created_at) day') - ) - ->groupBy('day') - ->get(); - - foreach (range(0, 31) as $number) { - $consultations_figures[$number] = 0; - $periods[$number] = $number; - } - - foreach ($consultations as $consultation) { - if ($consultation->day > 0) { - $consultations_figures[$consultation->day] = $consultation->consultationsInDay; - $patient_ids = explode(',', $consultation->patientIds); - - foreach ($patient_ids as $patient_id) { - // Male vs Female - if (get_name($patient_id, 'id', 'gender', 'patients') == 1) { - $male++; - } else { - $female++; - } - - // Religions - $religion = get_name($patient_id, 'id', 'religion_id', 'patients'); - if (!is_null($religion) && $religion != 0) { - if (isset($religions_figures[$religion - 1])) { - $religions_figures[$religion - 1] += 1; - } - } - - // Occupations - $occupation = get_name($patient_id, 'id', 'occupation_id', 'patients'); - if (!is_null($occupation) && $occupation != 0) { - if (isset($occupations_figures[$occupation - 1])) { - $occupations_figures[$occupation - 1] += 1; - } - } - - // Districts - $district = get_name($patient_id, 'id', 'district_id', 'patients'); - if (!is_null($district) && $district != 0) { - if (isset($districts_figures[$district - 1])) { - $districts_figures[$district - 1] += 1; - } - } - } - } - } - - break; - - case 'year': - $periods = getMonthsList(); - foreach (range(0, 12) as $number) { - $consultations_figures[$number] = 0; - } - - foreach ($consultations as $consultation) { - if ($consultation->month > 0) { - $consultations_figures[$consultation->month] = $consultation->consultationsInMonth; - $patient_ids = explode(',', $consultation->patientIds); - - foreach ($patient_ids as $patient_id) { - // Male vs Female - if (get_name($patient_id, 'id', 'gender', 'patients') == 1) { - $male++; - } else { - $female++; - } - - // Religions - $religion = get_name($patient_id, 'id', 'religion_id', 'patients'); - if (!is_null($religion) && $religion != 0) { - if (isset($religions_figures[$religion - 1])) { - $religions_figures[$religion - 1] += 1; - } - } - - // Occupations - $occupation = get_name($patient_id, 'id', 'occupation_id', 'patients'); - if (!is_null($occupation) && $occupation != 0) { - if (isset($occupations_figures[$occupation - 1])) { - $occupations_figures[$occupation - 1] += 1; - } - } - - // Districts - $district = get_name($patient_id, 'id', 'district_id', 'patients'); - if (!is_null($district) && $district != 0) { - if (isset($districts_figures[$district - 1])) { - $districts_figures[$district - 1] += 1; - } - } - } - } - } - - break; - - default: - $periods = getMonthsList(); - foreach (range(0, 12) as $number) { - $consultations_figures[$number] = 0; - } - - foreach ($consultations as $consultation) { - if ($consultation->month > 0) { - $consultations_figures[$consultation->month] = $consultation->consultationsInMonth; - $patient_ids = explode(',', $consultation->patientIds); - - foreach ($patient_ids as $patient_id) { - // Male vs Female - if (get_name($patient_id, 'id', 'gender', 'patients') == 1) { - $male++; - } else { - $female++; - } - - // Religions - $religion = get_name($patient_id, 'id', 'religion_id', 'patients'); - if (!is_null($religion) && $religion != 0) { - if (isset($religions_figures[$religion - 1])) { - $religions_figures[$religion - 1] += 1; - } - } - - // Occupations - $occupation = get_name($patient_id, 'id', 'occupation_id', 'patients'); - if (!is_null($occupation) && $occupation != 0) { - if (isset($occupations_figures[$occupation - 1])) { - $occupations_figures[$occupation - 1] += 1; - } - } - - // Districts - $district = get_name($patient_id, 'id', 'district_id', 'patients'); - if (!is_null($district) && $district != 0) { - if (isset($districts_figures[$district - 1])) { - $districts_figures[$district - 1] += 1; - } - } - } - } - } - - break; - endswitch; - } else { - $periods = getMonthsList(); - foreach (range(0, 12) as $number) { - $consultations_figures[$number] = 0; - } - - foreach ($consultations as $consultation) { - if ($consultation->month > 0) { - $consultations_figures[$consultation->month] = $consultation->consultationsInMonth; - $patient_ids = explode(',', $consultation->patientIds); - - foreach ($patient_ids as $patient_id) { - // Male vs Female - if (get_name($patient_id, 'id', 'gender', 'patients') == 1) { - $male++; - } else { - $female++; - } - - // Religions - $religion = get_name($patient_id, 'id', 'religion_id', 'patients'); - if (!is_null($religion) && $religion != 0) { - if (isset($religions_figures[$religion - 1])) { - $religions_figures[$religion - 1] += 1; - } - } - - // Occupations - $occupation = get_name($patient_id, 'id', 'occupation_id', 'patients'); - if (!is_null($occupation) && $occupation != 0) { - if (isset($occupations_figures[$occupation - 1])) { - $occupations_figures[$occupation - 1] += 1; - } - } - - // Districts - $district = get_name($patient_id, 'id', 'district_id', 'patients'); - if (!is_null($district) && $district != 0) { - if (isset($districts_figures[$district - 1])) { - $districts_figures[$district - 1] += 1; - } - } - } - } - } - } - - $consultationsYearVsYear = DB::table('consultations') - ->whereNotNull("primary_diagnosis") - ->where('created_at', '>=', '2017-01-01 00:00:00') // Starting from 2017 - ->select( - DB::raw('COUNT(id) as `consultationsInMonth`'), - DB::raw('YEAR(created_at) year, MONTH(created_at) month') - ) - ->groupBy('year', 'month') - ->get(); - - $consultations_year_vs_year = array(); - $periods_year_vs_year = getMonthsList(); - foreach (range(2017, $this_year) as $year) { - foreach (range(0, 12) as $number) { - $consultations_year_vs_year[$year][$number] = 0; - } - } - - foreach ($consultationsYearVsYear as $consultation) { - if ($consultation->month > 0) { - $consultations_year_vs_year[$consultation->year][$consultation->month] = $consultation->consultationsInMonth; - } - } - - // Districts (Top 10) - sort($districts_figures, SORT_NUMERIC); - $districts_figures_sorted = array_reverse($districts_figures, true); // true to preserve keys - $districts_figures_top_10_sliced = array_slice($districts_figures_sorted, 0, 10, true); - $districts_top_10 = array(); - $districts_figures_top_10 = array(); - foreach ($districts_figures_top_10_sliced as $key => $value) { - array_push($districts_top_10, $districts[$key]); - array_push($districts_figures_top_10, $value); - } - $date = $request->dates; - if(!empty($request->print)) { - $pdf = SnappyPDF::loadView('reports::reports_dashboard.print_attendance',compact('periods', - 'this_year','consultations_figures','display_text','period_header','consultations_year_vs_year', - 'periods_year_vs_year','male','female','religions_figures','religions','occupations_figures', - 'occupations','districts_figures_top_10','districts_top_10')) - ->setOrientation('landscape') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('enable-javascript', true) - ->setOption('javascript-delay', 13500) - ->setOption('enable-smart-shrinking', true) - ->setOption('no-stop-slow-scripts', true) - ->setOption('footer-html', ''.config('app.name').' - Printed On ' . date('Y-m-d') . ' By ' . auth()->user()->first_name . " " . auth()->user()->last_name . ''); - - return $pdf->inline('Hospital Attendance' . date(" d-m-y h:ia") . '.pdf'); - } - else return view('reports::reports_dashboard.attendance', compact( - 'periods', - 'this_year', - 'consultations_figures', - 'display_text', - 'period_header', - 'consultations_year_vs_year', - 'periods_year_vs_year', - 'male','date', - 'female', - 'religions_figures', - 'religions', - 'occupations_figures', - 'occupations', - 'districts_figures_top_10', - 'districts_top_10' - )); - } - - //get date range - public function get_date_range($request) - { - if (in_array($request->dates, ['week', 'month', 'year', 'custom'])) { - if ($request->dates == 'week') { - $start_date = Carbon::today()->subWeek()->startOfDay(); - $end_date = Carbon::today()->endOfDay(); - } elseif ($request->dates == 'month') { - $start_date = Carbon::today()->subMonth()->startOfDay(); - $end_date = Carbon::today()->endOfDay(); - } elseif ($request->dates == 'year') { - $start_date = Carbon::today()->subYear()->startOfDay(); - $end_date = Carbon::today()->endOfDay(); - } elseif ($request->dates == 'custom' && isset($request->start_date) && isset($request->end_date)) { - $start_date = Carbon::createFromFormat('d-m-Y', $request->start_date)->startOfDay(); - $end_date = Carbon::createFromFormat('d-m-Y', $request->end_date)->endOfDay(); - } else { - $start_date = Carbon::today()->startOfMonth()->startOfDay(); - $end_date = Carbon::today()->endOfDay(); - } - } else { - $start_date = Carbon::today()->startOfMonth()->startOfDay(); - $end_date = Carbon::today()->endOfDay(); - } - - return [$start_date, $end_date]; - } - - //inpatient statistics - public function inpatient_statistics(Request $request) - { - //average admission bills i.e accrual - //total cost i.e total bills in accrual - //average days admitted - //total patients seen - $average_admission_bills = 0; - $total_accrual_bills = 0; - $average_days_admitted = 0; - $total_patients_seen = 0; - $duration_days_array = []; - $admission_diagnoses_array = []; - $periods = ""; - $consultations_figures = ""; - - $period_header = "Time Period"; - $display_text = "Showing results for"; - - $today = Carbon::today()->toDateTimeString(); - $last_24_hours = Carbon::now()->subDay(); - $last_month = Carbon::now()->subMonth(); - - $month_of_admissions_array = []; - $patients_admissions_array = []; - $admissions_months_for_plotting_array = []; - $admissions_patient_nos__for_plotting_array = []; - $average_stay_in_days_plotting_array = []; - $inpatient_info_records = null; - $inpatient_bills_records = null; - - if (is_null($request->dates)) { - //default - $display_text .= " last 24 hours"; - $inpatient_info_records = InpatientInfo::where('created_at', '>', $last_24_hours)->get(); - $inpatient_bills_records = InpatientBill::where('created_at', '>', $last_24_hours)->get(); - } else { - - if (isset($request->dates)) { - switch ($request->dates): - case 'week': - $period_header = "Last Week"; - $display_text = "Showing results for the last Week"; - $start_date = Carbon::today()->startOfWeek(); - $end_date = Carbon::today()->endOfWeek(); - //do this - break; - case 'month': - $period_header = "Last Month"; - $display_text = "Showing results for the last Month"; - $start_date = Carbon::today()->startOfMonth(); - $end_date = Carbon::today()->endOfMonth(); - //do this - break; - case 'year': - $period_header = "Last 1 Year"; - $display_text = "Showing results for the last 1 Year"; - $start_date = Carbon::today()->startOfYear(); - $end_date = Carbon::today()->endOfYear(); - //do sub year - break; - case 'custom': - $start_date = Carbon::createFromFormat('d-m-Y', $request->start_date)->startOfDay(); - $end_date = Carbon::createFromFormat('d-m-Y', $request->end_date)->endOfDay(); - break; - default: - //do defualt - break; - endswitch; - - $inpatient_info_records = InpatientInfo::where([['created_at', '>', $start_date], ['created_at', '<', $end_date]])->get(); - $inpatient_bills_records = InpatientBill::where([['created_at', '>', $start_date], ['created_at', '<', $end_date]])->get(); - } - } - - foreach ($inpatient_info_records as $inpatient_info) { - $admitted_on = Carbon::parse($inpatient_info->admitted_on); - $currentDateTimeStamp = Carbon::now(); - if (is_null($inpatient_info->discharged_on)) { - $duration = $admitted_on->diffInDays($currentDateTimeStamp); - $duration = $duration == 0 ? 1 : $duration; // if the they have been admitted in less than a day count it - $duration_days_array[] = $duration; - } else { - $duration = $admitted_on->diffInDays($inpatient_info->discharged_on); - $duration = $duration == 0 ? 1 : $duration; // if the they have been admitted in less than a day count it - $duration_days_array[] = $duration; - } - - /*== handle primary diagnosis ==*/ - if (array_key_exists($inpatient_info->primary_diagnosis, $admission_diagnoses_array)) { - $diagnosed_patients = $admission_diagnoses_array[$inpatient_info->primary_diagnosis]; - $admission_diagnoses_array[$inpatient_info->primary_diagnosis] = $diagnosed_patients + 1; - } else { - $admission_diagnoses_array[$inpatient_info->primary_diagnosis] = 1; - } - /*====*/ - - /*== handle other diagnosis ==*/ - $other_diagnoses_array = is_null($inpatient_info->other_diagnoses) ? [] : @unserialize($inpatient_info->other_diagnoses); - - if (is_array($other_diagnoses_array)) { - for ($i = 0; $i < count($other_diagnoses_array); $i++) { - if (array_key_exists($other_diagnoses_array[$i], $admission_diagnoses_array)) { - $diagnosed_patients = $admission_diagnoses_array[$other_diagnoses_array[$i]]; - $admission_diagnoses_array[$other_diagnoses_array[$i]] = $diagnosed_patients + 1; - } else { - $admission_diagnoses_array[$other_diagnoses_array[$i]] = 1; - } - } - } - /*====*/ - - $month_of_admissions_array[] = $inpatient_info->created_at->format('M Y'); - $patients_admissions_array[] = $inpatient_info->patient_id; - } - - arsort($admission_diagnoses_array); - $admission_diagnoses_array = array_slice($admission_diagnoses_array, 0, 10, true); - unset($admission_diagnoses_array[""]); //remove empty diagnosis with a "" - - $total_patients_seen = count($inpatient_info_records); - - foreach ($inpatient_bills_records as $inpatient_bill) { - $total_accrual_bills += $inpatient_bill->amount_to_pay + $inpatient_bill->amount_paid + $inpatient_bill->invoices_amount; - } - - $average_admission_bills = $total_patients_seen == 0 ? 0 : ($total_accrual_bills / $total_patients_seen); - $average_admission_bills = intval($average_admission_bills); - $no_of_items_in_duration_array = count($duration_days_array) == 0 ? 1 : count($duration_days_array); //handle division by zero - $average_days_admitted = array_sum($duration_days_array) / $no_of_items_in_duration_array; - $average_days_admitted = intval($average_days_admitted); - - /*== do this for organising graph data ==*/ - $month_admission_number_ass_array = []; - for ($i = 0; $i < count($month_of_admissions_array); $i++) { - if (array_key_exists($month_of_admissions_array[$i], $month_admission_number_ass_array)) { - $month_admission_number_ass_array[$month_of_admissions_array[$i]] += 1; - } else { - $month_admission_number_ass_array[$month_of_admissions_array[$i]] = 1; - } - } - - $admissions_months_for_plotting_array = array_keys($month_admission_number_ass_array); - $admissions_patient_nos__for_plotting_array = array_values($month_admission_number_ass_array); - /*== end of graph data stuff ==*/ - - return view('reports::reports_dashboard.inpatient_statistics', compact('periods', 'consultations_figures', 'display_text', 'period_header', 'average_admission_bills', 'total_accrual_bills', 'average_days_admitted', 'total_patients_seen', 'admission_diagnoses_array', 'admissions_patient_nos__for_plotting_array', 'admissions_months_for_plotting_array')); - } - - public function staff_overview_investigations(Request $request) { - $search_text = ""; - $filters = []; - - switch ($request->search_date_by){ - case 'yesterday': - $end_date = Carbon::yesterday()->endOfDay(); - $start_date = Carbon::yesterday()->startOfDay(); - $search_text .= "Yesterday "; - break; - case 'custom_date': - $end_date = Carbon::parse($request->start_date)->endOfDay(); - $start_date = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "From: " . streamline_date($start_date) . " "; - break; - case 'custom_date_range': - $end_date = Carbon::parse($request->end_date)->endOfDay(); - $start_date = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "From: " . streamline_date($start_date) . " to " . streamline_date($end_date) . " "; - break; - case 'today': - default: - $end_date = Carbon::today()->endOfDay(); - $start_date = Carbon::today()->startOfDay(); - $search_text .= "Today "; - break; - } - - if (isset($request->user_id) && $request->user_id != 0) { - $filters[] = ['investigation_results.created_by', '=', $request->user_id]; - $search_text .= "| User: " . get_full_name($request->user_id, 'id', 'first_name', 'last_name', 'users'); - } - - $investigations = DB::table('investigation_results') - ->leftJoin('users', 'users.id', '=', 'investigation_results.created_by') - ->whereNull('investigation_results.deleted_at') - ->whereBetween('investigation_results.created_at', [$start_date, $end_date]) - ->where($filters) - ->get(['users.first_name', 'users.last_name', 'investigation_results.created_at', 'investigation_results.investigation_id']); - - $investigation_names = DB::table('investigations')->pluck('name', 'id'); - - return view('reports::reports_dashboard.staff_overview_investigations', compact('search_text', 'investigations', 'investigation_names')); - } - - public function print_top_diagnoses(Request $request){ - - $diagnoses = unserialize($request->diagnoses); - $diagnoses_names = unserialize($request->diagnoses_names); - $diagnoses_figures= unserialize($request->diagnoses_figures); - $display_text = $request->display_text; - $diagnoses_chart = app()->chartjs - ->name('diagnosisChart') - ->type('horizontalBar') - ->size(['width' => 600, 'height' => 400]) - ->labels($diagnoses_names) - ->datasets([ - [ - "label" => "Top Recorded Diagnoses", - 'backgroundColor' => '#9a04f0', - 'data' => $diagnoses_figures - ] - ]) - ->optionsRaw([ - 'scales' => [ - 'yAxes' => [['ticks' => ['autoSkip' => false],],], - 'xAxes' => [['ticks' => ['beginAtZero' => true,],]] - ] - ]) - ->options([]); - - - $pdf = SnappyPDF::loadView('reports::reports_dashboard.print_top_diagnoses',compact('diagnoses', 'diagnoses_chart', 'diagnoses_names', 'diagnoses_figures', 'display_text')) - ->setOrientation('landscape') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('enable-javascript', true) - ->setOption('javascript-delay', 13500) - ->setOption('enable-smart-shrinking', true) - ->setOption('no-stop-slow-scripts', true) - ->setOption('footer-html', ''.config('app.name').' - Printed On ' . date('Y-m-d') . ' By ' . auth()->user()->first_name . " " . auth()->user()->last_name . ''); - - return $pdf->inline('Top Recorded Diagnoses' . date(" d-m-y h:ia") . '.pdf'); - - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Http/Controllers/StreamlineReportsController.php b/docker/statistics/Modules/Reports/Http/Controllers/StreamlineReportsController.php deleted file mode 100755 index f506b4e3..00000000 --- a/docker/statistics/Modules/Reports/Http/Controllers/StreamlineReportsController.php +++ /dev/null @@ -1,2904 +0,0 @@ -middleware('auth'); - //$this->middleware('permission:streamline-reports-list'); - } - - /** - * Display a listing of the resource. - * - */ - public function index() { - $diagnoses = DB::table('diagnoses')->where('available', 1)->whereNull('deleted_at')->pluck('name', 'id')->toArray(); - $diagnoses = ['0' => 'All'] + $diagnoses; - - $age = DB::table('age_groups')->whereNull('deleted_at')->pluck('name', 'id')->toArray(); - $age = [-1 => 'Custom Age Group'] + $age; - $age = ['' => 'All'] + $age; - - $treatments = DB::table('drugs')->whereNull('deleted_at')->pluck('name', 'id')->toArray(); - $treatments = [0 => 'All'] + $treatments; - - $investigations = DB::table('investigations')->whereNull('deleted_at')->pluck('name', 'id')->toArray(); - $investigations = [0 => 'All'] + $investigations; - - $symptoms = DB::table('symptoms')->whereNull('deleted_at')->pluck('name', 'id')->toArray(); - $symptoms = [0 => 'All'] + $symptoms; - $patient_categories = PatientCategory::orderBy('name')->pluck('name', 'id')->prepend('All', '0'); - $custom_reg_fields = PatientRegistrationField::orderBy('name', 'asc')->pluck('name', 'id')->prepend('All', '0'); - - return view('reports::hmis_reports.streamline_reports', compact('diagnoses', 'symptoms', 'age', 'treatments', 'patient_categories','investigations', 'custom_reg_fields')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - // - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - // - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - public function edit($id) - { - // - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - // - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - } - - /** - * access the different reports - */ - public function listReports() - { - return view('reports::hmis_reports.list_memorised_reports'); - } - - public function health_unit_quarterly_report() - { - return view('reports::hmis_reports.health_unit_quarterly_report'); - } - - public function charge_book() - { - $procedures = DB::table('procedures')->whereNull('deleted_at')->orderBy('name')->get()->toArray(); - $services = DB::table('services')->whereNull('deleted_at')->orderBy('name')->get()->toArray(); - $sundries = DB::table('sundries')->whereNull('deleted_at')->orderBy('name')->get()->toArray(); - $investigations = DB::table('investigations')->whereNull('deleted_at')->orderBy('name')->get()->toArray(); - $drugs = DB::table('drugs')->whereNull('deleted_at')->orderBy('name')->get()->toArray(); - $bed_categories = DB::table('inpatient_bed_categories')->whereNull('deleted_at')->get()->toArray(); - - return view('reports::reports.charge-book.index', compact( - 'procedures', - 'services', - 'sundries', - 'investigations', - 'drugs', - 'bed_categories' - )); - } - - public function charge_book_print() - { - $procedures = DB::table('procedures')->orderBy('name')->get()->toArray(); - $services = DB::table('services')->orderBy('name')->get()->toArray(); - $sundries = DB::table('sundries')->orderBy('name')->get()->toArray(); - $investigations = DB::table('investigations')->orderBy('name')->get()->toArray(); - $drugs = DB::table('drugs')->orderBy('name')->get()->toArray(); - $bed_categories = DB::table('inpatient_bed_categories')->get()->toArray(); - - $hospital_information = HospitalInformation::find(1); - - $data = [ - "procedures" => $procedures, - "services" => $services, - "sundries" => $sundries, - "investigations" => $investigations, - "drugs" => $drugs, - "bed_categories" => $bed_categories, - 'hospitalInfo' => $hospital_information, - ]; - - $pdf = SnappyPDF::loadView('reports::reports/charge-book/print', $data) - ->setOrientation('landscape') - ->setPaper('a4') - ->setOption('margin-bottom', 10) - ->setOption('footer-html', 'Stre@mline'); - - - return $pdf->inline('Streamline Charge Book' . date(" d-m-y h:ia") . '.pdf'); - } - - /** - * return cases this week - */ - public function cases() - { - return view('reports::hmis_reports.weekly_epidem_form'); - } - - public function streamline_reports_details(Request $request) { - $criteria = ''; - $filters = $eye_filters = []; - - // check if gender is selected - if (!is_null($request->gender)) { - if ($request->gender == 0) { - $criteria .= 'Gender (All) '; - } elseif ($request->gender == 1) { - $filters[] = $eye_filters[] = ['patients.gender', '=', 1]; - $criteria .= 'Gender (Male) '; - } elseif ($request->gender == 2) { - $filters[] = $eye_filters[] = ['patients.gender', '=', 2]; - $criteria .= 'Gender (Female) '; - } - } - - //Patient Registration Fields - if(!empty($request->custom_reg_fields)) { - if (!empty($custom_reg_field_options)) { - $filters[] = $eye_filters[] = ['patients.registration_fields', 'LIKE', '%'.$request->custom_reg_field_options.'%']; - $criteria .= 'Patient Registation Fields (' . get_name($request->custom_reg_fields, 'id', 'name', 'patient_registration_fields') . ') '; - $criteria .= 'Patient Registation Field option (' . $request->custom_reg_field_options . ') '; - } else { - $filters[] = $eye_filters[] = ['patients.registration_fields', 'LIKE', '%reg_field_'.$request->custom_reg_fields.'%']; - $criteria .= 'Patient Registation Fields (' . get_name($request->custom_reg_fields, 'id', 'name', 'patient_registration_fields') . ') '; - } - $custom_field = get_name($request->custom_reg_fields, 'id', 'name', 'patient_registration_fields'); - if(!empty($request->custom_reg_field_options)) $custom_field .= ' ('.$request->custom_reg_field_options. ')'; - session()->put('custom_field', $custom_field); - } - - // check if age group is selected - if (!is_null($request->age)) { - if ($request->age == -1) { - // for the custom age - $start_date = Carbon::now()->subYears($request->first_age); - $end_date = Carbon::now()->subYears($request->second_age); - - $criteria .= 'Age Group:(' . $request->first_age . ' - ' . $request->second_age . ' Years) '; - } else { - $age_group = DB::table('age_groups')->where('id', $request->age)->first(); - - if ($age_group->age_type == 1) { - $start_date = Carbon::now()->subYears($age_group->from_age); - $end_date = Carbon::now()->subYears($age_group->to_age); - } elseif ($age_group->age_type == 2) { - $start_date = Carbon::now()->subMonths($age_group->from_age); - $end_date = Carbon::now()->subMonths($age_group->to_age); - } elseif ($age_group->age_type == 3) { - $start_date = Carbon::now()->subDays($age_group->from_age); - $end_date = Carbon::now()->subDays($age_group->to_age); - } - - $criteria .= 'Age Group:' . $age_group->name . ' '; - } - - array_push($filters, ['patients.date_of_birth', '<', $start_date->toDateString()], ['patients.date_of_birth', '>', $end_date->toDateString()]); - array_push($eye_filters, ['patients.date_of_birth', '<', $start_date->toDateString()], ['patients.date_of_birth', '>', $end_date->toDateString()]); - } - - if (!is_null($request->district) && is_numeric($request->district)) { - $filters[] = $eye_filters[] = ['patients.district_id', '=', $request->district]; - $criteria .= 'District (' . get_name($request->district, 'id', 'name', 'districts') . ') '; - } - - if (!is_null($request->county) && is_numeric($request->county)) { - $filters[] = $eye_filters[] = ['patients.county_id', '=', $request->county]; - $criteria .= 'County (' . get_name($request->county, 'id', 'name', 'counties') . ') '; - } - - if (!is_null($request->sub_county) && is_numeric($request->sub_county)) { - $filters[] = $eye_filters[] = ['patients.subcounty_id', '=', $request->sub_county]; - $criteria .= 'Sub County (' . get_name($request->sub_county, 'id', 'name', 'subcounties') . ') '; - } - - if (!is_null($request->parish) && is_numeric($request->parish)) { - $filters[] = $eye_filters[] = ['patients.parish_id', '=', $request->parish]; - $criteria .= 'Parish (' . get_name($request->parish, 'id', 'name', 'parishes') . ') '; - } - - if (!is_null($request->village) && is_numeric($request->village)) { - $filters[] = $eye_filters[] = ['patients.village_id', '=', $request->village]; - $criteria .= 'Village (' . get_name($request->village, 'id', 'name', 'villages') . ') '; - } - - $patient_categories_names = DB::table('patient_categories')->pluck('name', 'id')->toArray(); - - if ($request->report_category == 1) { - if (!Auth::user()->can('streamline-reports-diagnosis')) { - flash('You do not have access to this report.')->error(); - return redirect('/streamline_reports'); - } - - // specific search queries for consultations - // check if inpatient/outpatient is selected - if (!is_null($request->in_out_patient)) { - if ($request->in_out_patient == 0) { - $criteria .= 'Inpatient and Outpatient '; - } elseif ($request->in_out_patient == 1) { - $filters[] = ['consultations.ward_id', '!=', NULL]; - $eye_filters[] = ['e.ward_id', '!=', NULL]; - $criteria .= 'Inpatient '; - } elseif ($request->in_out_patient == 2) { - $filters[] = ['consultations.ward_id', '=', NULL]; - $eye_filters[] = ['e.ward_id', '=', NULL]; - $criteria .= 'Outpatient '; - } - } - - // check if dates are selected - if (!is_null($request->start_date) && !is_null($request->end_date)) { - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - - $filters[] = ['consultations.created_at', '>', $start_date]; - $filters[] = ['consultations.created_at', '<', $end_date]; - $eye_filters[] = ['e.created_at', '>', $start_date]; - $eye_filters[] = ['e.created_at', '<', $end_date]; - $criteria .= 'Between (' . $request->start_date . ') And (' . $request->end_date . ')'; - } - - if(!empty($request->patient_category)) { - $filters[] = ['patients.category_id', $request->patient_category]; - $criteria .= ' Patient Category(' . ($patient_categories_names[$request->patient_category] ?? 'N/A') . ') '; - } else { - $criteria .= ' Patient Category(All) '; - } - - // search for diagnosis - if (is_null($request->diagnosis)) { - flash("Please select a diagnosis")->error(); - return redirect("streamline_reports"); - } else { - if ($request->diagnosis != 0) { - // get specified diagnosis - $filters[] = ['consultations.primary_diagnosis', '=', $request->diagnosis]; - $eye_diagnoses = DB::table('eye_clinic_main_exam as e')->leftjoin('patients', 'e.patient_id', '=', 'patients.id') - ->where($eye_filters) - ->whereRaw("FIND_IN_SET(".$request->diagnosis. ",e.right_eye_diagnosis) OR FIND_IN_SET(".$request->diagnosis. ",e.left_eye_diagnosis)") - ->get(['patients.id', 'patients.gender', 'e.right_eye_diagnosis', 'e.left_eye_diagnosis']); - } else { - $eye_diagnoses = DB::table('eye_clinic_main_exam as e')->leftjoin('patients', 'e.patient_id', '=', 'patients.id') - ->where($eye_filters) - ->get(['patients.id', 'patients.gender', 'e.right_eye_diagnosis', 'e.left_eye_diagnosis']); - } - - // collect patient information and along with consultations - $diagnosis = Consultation::where($filters) - ->join('patients', 'consultations.patient_id', '=', 'patients.id') - ->select('patients.id', 'patients.gender', 'consultations.primary_diagnosis') - ->get(); - - if (count($diagnosis) > 0 || count($eye_diagnoses) > 0) { - - // store the search in the session variable - session()->put('search_query_filters', $filters); - session()->put('eye_search_query_filters', $eye_filters); - - // ready the ammunition - $male_totals_array = []; - $female_totals_array = []; - $diagnosis_array = []; - $male_totals = 0; - $female_totals = 0; - - // loop through the results, make sure there no repeated diagnosis, or is that diagnoses?, ids and total for the genders - foreach ($diagnosis as $record) { - - // check if we have already recorded the diagnosis - if (in_array($record->primary_diagnosis, $diagnosis_array)) { - // We've struck gold! Now find the key - $key = array_search($record->primary_diagnosis, $diagnosis_array); - // increment the appropriate genders - if ($record->gender == 1) { - // use the key to find count dracula himself - $current_count = $male_totals_array[$key] ?? 0; - $male_totals_array[$key] = $current_count + 1; - - $male_totals++; - } elseif ($record->gender == 2) { - // or is it a her...self - $current_count = $female_totals_array[$key] ?? 0; - $female_totals_array[$key] = $current_count + 1; - - $female_totals++; - } - } else { - // diagnosis is not recorded so insert it - $diagnosis_array[] = $record->primary_diagnosis; - - // bring up the initiates - if ($record->gender == 1) { - // the males - $male_totals_array[] = 1; - $female_totals_array[] = 0; - - $male_totals++; - } elseif ($record->gender == 2) { - // the females - $female_totals_array[] = 1; - $male_totals_array[] = 0; - - $female_totals++; - } - } - } - - foreach ($eye_diagnoses as $record) { - $actual_diagnoses = []; - $right_eye_diagnosis = explode(',',$record->right_eye_diagnosis); - $left_eye_diagnosis = explode(',',$record->left_eye_diagnosis); - foreach ($right_eye_diagnosis as $value) $actual_diagnoses[] = $value; - foreach ($left_eye_diagnosis as $value) $actual_diagnoses[] = $value; - $unique_diagnoses = array_unique($actual_diagnoses); - foreach ($unique_diagnoses as $eye_diagnosis) { - if ($request->diagnosis != 0 && $eye_diagnosis != $request->diagnosis) { - continue; - } - - // check if we have already recorded the diagnosis - if (in_array($eye_diagnosis, $diagnosis_array)) { - // We've struck gold! Now find the key - $key = array_search($eye_diagnosis, $diagnosis_array); - // increment the appropriate genders - if ($record->gender == 1) { - // use the key to find count dracula himself - $current_count = $male_totals_array[$key] ?? 0; - $male_totals_array[$key] = $current_count + 1; - - $male_totals++; - } elseif ($record->gender == 2) { - // or is it a her...self - $current_count = $female_totals_array[$key] ?? 0; - $female_totals_array[$key] = $current_count + 1; - - $female_totals++; - } - } else { - // diagnosis is not recorded so insert it - $diagnosis_array[] = $eye_diagnosis; - - // bring up the initiates - if ($record->gender == 1) { - // the males - $male_totals_array[] = 1; - $female_totals_array[] = 0; - - $male_totals++; - } elseif ($record->gender == 2) { - // the females - $female_totals_array[] = 1; - $male_totals_array[] = 0; - - $female_totals++; - } - } - } - } - // send the data with some kisses - return view('reports::hmis_reports.diagnosis_report', compact('criteria', 'diagnosis_array', 'male_totals_array', 'female_totals_array', 'male_totals', 'female_totals')); - } else { - flash("No results found for the diagnosis search")->error(); - return redirect("streamline_reports"); - } - } - } elseif ($request->report_category == 2) { - if (!Auth::user()->can('streamline-reports-treatment')) { - flash('You do not have access to this report.')->error(); - return redirect('/streamline_reports'); - } - - // search for treatment - - if (is_null($request->treatment)) { - flash("Please select a drug")->error(); - return redirect("streamline_reports"); - } else { - - // check if dates are selected - if (!is_null($request->start_date) && !is_null($request->end_date)) { - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - - $filters[] = ['patient_dispensings.created_at', '>', $start_date]; - $filters[] = ['patient_dispensings.created_at', '<', $end_date]; - $criteria .= 'Between (' . $request->start_date . ') And (' . $request->end_date . ')'; - } - - if(!empty($request->patient_category)) { - $filters[] = ['patients.category_id', $request->patient_category]; - $criteria .= ' Patient Category(' . ($patient_categories_names[$request->patient_category] ?? 'N/A') . ') '; - } else { - $criteria .= ' Patient Category(All) '; - } - - // collect patient information and along with consultations - $drugs = DB::table('patient_dispensings') - ->where($filters) - ->join('patients', 'patient_dispensings.patient_id', '=', 'patients.id') - ->select('patient_dispensings.drugs', 'patient_dispensings.quantity_dispensed') - ->get(); - - if ($drugs->count() > 0) { - - // store the search in the session variable - session()->put('search_query_filters', $filters); - - // check if a specific treatment has been searched for and go straight to details - if ($request->treatment != 0) { - return redirect('/streamline_reports/treatments_drill_down/' . $request->treatment); - } - - $drugs_array = []; - $dispensed_array = []; - - foreach ($drugs as $drug) { - // split into an array for drugs - $temp_drugs_array = explode(",", $drug->drugs); - $temp_dispensed_array = explode(",", $drug->quantity_dispensed); - - // loop through the temporary arrays - for ($i = 0; $i < count($temp_dispensed_array); $i++) { - // check if we have already recorded the diagnosis - if (in_array($temp_drugs_array[$i], $drugs_array)) { - // We've struck gold! Now find the key - $key = array_search($temp_drugs_array[$i], $drugs_array); - $dispensed_key = isset($dispensed_array[$key]) ? (int)$dispensed_array[$key] : 0; - $temp_dispensed_key = isset($temp_dispensed_array[$i]) ? (int)$temp_dispensed_array[$i] : 0; - - $dispensed_array[$key] = $dispensed_key + $temp_dispensed_key; - } else { - // diagnosis is not recorded so insert it - $drugs_array[] = $temp_drugs_array[$i]; - $dispensed_array[] = $temp_dispensed_array[$i]; - } - } - } - - // check if drugs have returned results - if (count($drugs_array) < 1) { - flash("No results found for the treatment search")->error(); - return redirect("streamline_reports"); - } - - return view('reports::hmis_reports.treatment_report', compact('criteria', 'drugs_array', 'dispensed_array')); - } else { - flash("No results found for the treatment search")->error(); - return redirect("streamline_reports"); - } - } - } elseif ($request->report_category == 3) { - if (!Auth::user()->can('streamline-reports-investigations')) { - flash('You do not have access to this report.')->error(); - return redirect('/streamline_reports'); - } - - // search for lab tests - - if (is_null($request->lab_test)) { - flash("Please select a laboratory test")->error(); - return redirect("streamline_reports"); - } else { - // check if dates are selected - if (!is_null($request->start_date) && !is_null($request->end_date)) { - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - - $filters[] = ['investigation_results.created_at', '>', $start_date]; - $filters[] = ['investigation_results.created_at', '<', $end_date]; - $criteria .= 'Between (' . $request->start_date . ') And (' . $request->end_date . ')'; - } - - // check if inpatient/outpatient is selected - if (!is_null($request->in_out_patient)) { - if ($request->in_out_patient == 0) { - $criteria .= 'Inpatient and Outpatient '; - } elseif ($request->in_out_patient == 1) { - $filters[] = ['investigation_results.inpatient', '=', 1]; - $criteria .= 'Inpatient '; - } elseif ($request->in_out_patient == 2) { - $filters[] = ['investigation_results.inpatient', '=', 0]; - $criteria .= 'Outpatient '; - } - } - - if(!empty($request->patient_category)) { - $filters[] = ['patients.category_id', $request->patient_category]; - $criteria .= ' Patient Category(' . ($patient_categories_names[$request->patient_category] ?? 'N/A') . ') '; - } else { - $criteria .= ' Patient Category(All) '; - } - - // collect patient information and along with consultations - $investigations_results = DB::table('investigation_results') - ->where($filters) - ->join('patients', 'investigation_results.patient_id', '=', 'patients.id') - ->select('investigation_results.investigation_id', 'investigation_results.value', 'investigation_results.id') - ->get(); - - if ($investigations_results->count() > 0) { - - // store the search in the session variable - session()->put('search_query_filters', $filters); - - // check if a specific lab test has been searched for and go straight to details - if ($request->lab_test != 0) { - return redirect('/streamline_reports/investigations_drill_down/' . $request->lab_test); - } - - $super_categories_names = DB::table('investigation_super_categories')->pluck('name', 'id')->toArray(); - $categories_names = DB::table('investigation_categories')->pluck('name', 'id')->toArray(); - $investigation_names = DB::table('investigations')->pluck('name', 'id')->toArray(); - - $investigations = []; - $investigation_categories = []; - $investigation_super_categories = []; - $inv_category_counts = []; - - foreach ($investigations_results as $value) { - // split into an array for labs - $temp_investigations_array = explode(",", $value->investigation_id); - - // loop through the temporary arrays - for ($i = 0; $i < count($temp_investigations_array); $i++) { - $inv_id = $temp_investigations_array[$i]; - $investigation_category = get_name($inv_id, 'id', 'category', 'investigations'); - - if (!is_integer($investigation_category)) { - continue; - } - - // check if we have already recorded the diagnosis - if (isset($investigations[$investigation_category][$inv_id])) { - $investigations[$investigation_category][$inv_id] = $investigations[$investigation_category][$inv_id] + 1; - } else { - // investigation is not recorded so insert it - $investigations[$investigation_category][$inv_id] = 1; - $inv_category_counts[$investigation_category] = 1 + ($inv_category_counts[$investigation_category] ?? 0); - } - - // add the investigation category here - if (isset($investigation_categories[$investigation_category])) { - $investigation_categories[$investigation_category] = $investigation_categories[$investigation_category] + 1; - } else { - $investigation_categories[$investigation_category] = 1; - } - } - } - - // go through the categories and elevate to the super categories - foreach ($investigation_categories as $key => $category_count) { - $super_id = get_name($key, 'id', 'super_category_id', 'investigation_categories'); - - if (!is_integer($super_id)) { - continue; - } - - if (isset($investigation_super_categories[$super_id])) { - $investigation_super_categories[$super_id]["count"] = $investigation_super_categories[$super_id]["count"] + $category_count; - $investigation_super_categories[$super_id]["inv_count"] = $investigation_super_categories[$super_id]["inv_count"] + $inv_category_counts[$key]; - } else { - $investigation_super_categories[$super_id]["count"] = $category_count; - $investigation_super_categories[$super_id]["inv_count"] = $inv_category_counts[$key]; - } - - $investigation_super_categories[$super_id]["sub_categories"][$key]["count"] = $category_count; - } - - // check if labs have returned results - if (count($investigations) < 1) { - flash("No results found for the labs search")->error(); - return redirect("streamline_reports"); - } - - return view('reports::hmis_reports.investigation_report', compact('criteria', 'investigations', 'investigation_super_categories', 'super_categories_names', 'categories_names', 'investigation_names')); - } else { - flash("No results found for the labs search")->error(); - return redirect("streamline_reports"); - } - } - } elseif ($request->report_category == 4) { - if (!Auth::user()->can('streamline-reports-patient-visits')) { - flash('You do not have access to this report.')->error(); - return redirect('/streamline_reports'); - } - - // check if inpatient/outpatient is selected - $is_outpatient_queried = true; - $is_inpatient_queried = true; - - if (!is_null($request->in_out_patient) && $request->in_out_patient != 0) { - if ($request->in_out_patient == 1) { - $criteria .= 'Inpatient '; - $is_outpatient_queried = false; - } elseif ($request->in_out_patient == 2) { - $criteria .= 'Outpatient '; - $is_inpatient_queried = false; - } - } else { - $criteria .= 'Inpatient and Outpatient '; - } - - $age_groups = AgeGroup::all(); - $age_group_data = []; - - // check if dates are selected - if (!is_null($request->start_date) && !is_null($request->end_date)) { - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $number_of_days = Carbon::parse($request->start_date)->startOfDay()->diffInDays(Carbon::parse($request->end_date)->endOfDay()); - $number_of_days = $number_of_days == 0 ? 1 : $number_of_days; - } else { - $start_date = Carbon::today()->startOfDay()->toDateTimeString(); - $end_date = Carbon::today()->endOfDay()->toDateTimeString(); - $number_of_days = 1; - } - - $filters[] = ['patient_episodes.created_at', '>', $start_date]; - $filters[] = ['patient_episodes.created_at', '<', $end_date]; - - $new_patients = 0; - $returning_patients = 0; - $total_admissions = 0; - $total_discharges = 0; - $total_ward_deaths = 0; - $total_opd_deaths = 0; - $total_opd_deaths_arr = []; - $total_re_attendance = 0; - $unique_patients = []; - $total_patients_in_clinics = 0; - $number_of_episodes = 0; - $triaged_patients = 0; - $wards = DB::table('wards')->pluck('name', 'id')->toArray(); - - $patient_clinics[0] = [ - "name" => "No Clinic Assigned", - "total_patients" => 0, - "male" => 0, - "new" => 0, - "patient_ids" => [], - "total_episodes" => 0, - ]; - - if(!empty($request->patient_category)) { - $filters[] = ['patients.category_id', $request->patient_category]; - $criteria .= ' Patient Category(' . ($patient_categories_names[$request->patient_category] ?? 'N/A') . ') '; - } else { - $criteria .= ' Patient Category(All) '; - } - - $patient_wards = []; - $patient_categories = []; - - // get ordered procedures - $ipd_procedures = DB::table('ward_procedures')->whereNull('deleted_at')->whereBetween('created_at', [$start_date, $end_date])->count(); - $opd_procedures = DB::table('ordered_procedures')->whereNull('deleted_at')->whereBetween('created_at', [$start_date, $end_date])->count(); - - // collect patient information and along with consultations - $episodes = DB::table('patient_episodes') - ->where($filters) - ->whereNull('patient_episodes.deleted_at') - ->join('patients', 'patient_episodes.patient_id', '=', 'patients.id') - ->select('patient_episodes.patient_id', 'patient_episodes.id', 'patient_episodes.consultation_id', 'patient_episodes.clinic_id', 'patient_episodes.triage_id') - ->get(); - - if (count($episodes) > 0) { - $total_patients = $total_female_patients = $total_male_patients = 0; - $total_patients_arr = $total_female_patients_arr = $total_male_patients_arr = []; - - foreach ($episodes as $episode) { - $number_of_episodes++; - $is_patient_admitted = false; - $patient = DB::table('patients')->find($episode->patient_id); - - // if a patient does not have DOB or gender, exclude them - if (!$patient || is_null($patient->date_of_birth) || ($patient->gender != 1 && $patient->gender != 2)) { - continue; - } - - // check if patient is triaged - if (!is_null($episode->triage_id)) { - $triaged_patients++; - } - - if (!is_null($request->in_out_patient)) { - $inpatient_record = DB::table('inpatient_info')->where('episode_id', $episode->id)->first(); - - if (($request->in_out_patient == 1 && !$inpatient_record) || ($request->in_out_patient == 2 && $inpatient_record)) { - // (episode has no inpatient record and we want inpatients) or (episode has an inpatient record and we want outpatients) - continue; - } - - if ($inpatient_record) { - $is_patient_admitted = true; - - if (isset($patient_wards[$inpatient_record->ward_id])) { - $patient_wards[$inpatient_record->ward_id]["total_episodes"] = $patient_wards[$inpatient_record->ward_id]["total_episodes"] + 1; - $patient_wards[$inpatient_record->ward_id]["discharged"] = $inpatient_record->discharged == 1 ? $patient_wards[$inpatient_record->ward_id]["discharged"] + 1 : $patient_wards[$inpatient_record->ward_id]["discharged"]; - $patient_wards[$inpatient_record->ward_id]["deaths"] = $inpatient_record->outcome_id == 5 ? $patient_wards[$inpatient_record->ward_id]["deaths"] + 1 : $patient_wards[$inpatient_record->ward_id]["deaths"]; - - if (!isset($patient_wards[$inpatient_record->ward_id]["patient_ids"][$patient->id])) { - $total_admissions++; - $patient_wards[$inpatient_record->ward_id]["total_patients"] = $patient_wards[$inpatient_record->ward_id]["total_patients"] + 1; - $patient_wards[$inpatient_record->ward_id]["male"] = $patient->gender == 1 ? $patient_wards[$inpatient_record->ward_id]["male"] + 1 : $patient_wards[$inpatient_record->ward_id]["male"]; - $patient_wards[$inpatient_record->ward_id]["female"] = $patient->gender == 2 ? $patient_wards[$inpatient_record->ward_id]["female"] + 1 : $patient_wards[$inpatient_record->ward_id]["female"]; - $patient_wards[$inpatient_record->ward_id]["new"] = is_patient_new_in_ward($episode->patient_id, $inpatient_record->ward_id, $episode->id) ? $patient_wards[$inpatient_record->ward_id]["new"] + 1 : $patient_wards[$inpatient_record->ward_id]["new"]; - $patient_wards[$inpatient_record->ward_id]["patient_ids"][$patient->id] = $patient->id; - - if ($patient->gender == 1) { - $patient_wards[$inpatient_record->ward_id]["male_arr"][] = $patient->id; - } else { - $patient_wards[$inpatient_record->ward_id]["female_arr"][] = $patient->id; - } - - if ($inpatient_record->discharged == 1) { - $patient_wards[$inpatient_record->ward_id]["discharged_arr"][] = $patient->id; - $total_discharges++; - } - - if ($inpatient_record->outcome_id == 5) { - $patient_wards[$inpatient_record->ward_id]["deaths_arr"][] = $patient->id; - $total_ward_deaths++; - } - } - } else { - $total_admissions++; - $patient_wards[$inpatient_record->ward_id]["name"] = $wards[$inpatient_record->ward_id] ?? 'N/A'; - $patient_wards[$inpatient_record->ward_id]["total_patients"] = 1; - $patient_wards[$inpatient_record->ward_id]["total_episodes"] = 1; - $patient_wards[$inpatient_record->ward_id]["male_arr"] = []; - $patient_wards[$inpatient_record->ward_id]["female_arr"] = []; - $patient_wards[$inpatient_record->ward_id]["discharged_arr"] = []; - $patient_wards[$inpatient_record->ward_id]["deaths_arr"] = []; - - if ($patient->gender == 1) { - $patient_wards[$inpatient_record->ward_id]["male_arr"][] = $patient->id; - } else { - $patient_wards[$inpatient_record->ward_id]["female_arr"][] = $patient->id; - } - - if ($inpatient_record->discharged == 1) { - $patient_wards[$inpatient_record->ward_id]["discharged_arr"][] = $patient->id; - $total_discharges++; - } - - if ($inpatient_record->outcome_id == 5) { - $patient_wards[$inpatient_record->ward_id]["deaths_arr"][] = $patient->id; - $total_ward_deaths++; - } - - $patient_wards[$inpatient_record->ward_id]["male"] = $patient->gender == 1 ? 1 : 0; - $patient_wards[$inpatient_record->ward_id]["female"] = $patient->gender == 2 ? 1 : 0; - $patient_wards[$inpatient_record->ward_id]["new"] = is_patient_new_in_ward($episode->patient_id, $inpatient_record->ward_id, $episode->id) ? 1 : 0; - $patient_wards[$inpatient_record->ward_id]["discharged"] = $inpatient_record->discharged == 1 ? 1 : 0; - $patient_wards[$inpatient_record->ward_id]["deaths"] = $inpatient_record->outcome_id == 5 ? 1 : 0; - $patient_wards[$inpatient_record->ward_id]["patient_ids"] = [$patient->id]; - $patient_wards[$inpatient_record->ward_id]["admitted_as_of"] = 0; - $patient_wards[$inpatient_record->ward_id]["admitted_as_of_arr"] = []; - } - } elseif (get_name($episode->consultation_id, 'id', 'outcome_id', 'consultations') == 5) { - $total_opd_deaths++; - $total_opd_deaths_arr[] = $episode->patient_id; - } - } - - // create data for the clinics part of the report - if ($episode->clinic_id) { - if (isset($patient_clinics[$episode->clinic_id])) { - if (!in_array($patient->id, $patient_clinics[$episode->clinic_id]["patient_ids"])) { - $patient_clinics[$episode->clinic_id]["total_patients"] = $patient_clinics[$episode->clinic_id]["total_patients"] + 1; - $patient_clinics[$episode->clinic_id]["male"] = $patient->gender == 1 ? $patient_clinics[$episode->clinic_id]["male"] + 1 : $patient_clinics[$episode->clinic_id]["male"]; - $patient_clinics[$episode->clinic_id]["new"] = is_patient_new_in_clinic($episode->patient_id, $episode->clinic_id, $episode->id) ? $patient_clinics[$episode->clinic_id]["new"] + 1 : $patient_clinics[$episode->clinic_id]["new"]; - $patient_clinics[$episode->clinic_id]["patient_ids"][] = $patient->id; - $total_patients_in_clinics++; - } - - $patient_clinics[$episode->clinic_id]["total_episodes"] = $patient_clinics[$episode->clinic_id]["total_episodes"] + 1; - } else { - $patient_clinics[$episode->clinic_id] = [ - "name" => get_name($episode->clinic_id, 'id', 'name', 'clinics'), - "total_patients" => 1, - "male" => $patient->gender == 1 ? 1 : 0, - "new" => is_patient_new_in_clinic($episode->patient_id, $episode->clinic_id, $episode->id) ? 1 : 0, - "patient_ids" => [$patient->id], - "total_episodes" => 1, - ]; - $total_patients_in_clinics++; - } - } else { - if (!isset($patient_clinics[0]["patient_ids"][$patient->id])) { - $patient_clinics[0]["total_patients"] = $patient_clinics[0]["total_patients"] + 1; - $patient_clinics[0]["male"] = $patient->gender == 1 ? $patient_clinics[0]["male"] + 1 : $patient_clinics[0]["male"]; - $patient_clinics[0]["new"] = $patient_clinics[0]["new"] + 1; - $patient_clinics[0]["patient_ids"][$patient->id] = $patient->id; - $total_patients_in_clinics++; - } - - $patient_clinics[0]["total_episodes"] = $patient_clinics[0]["total_episodes"] + 1; - } - - // prepare report by patient category - if (isset($patient_categories[$patient->category_id])) { - if (!isset($patient_categories[$patient->category_id]["patient_ids"][$patient->id])) { - $patient_categories[$patient->category_id]["total_patients"] = $patient_categories[$patient->category_id]["total_patients"] + 1; - $patient_categories[$patient->category_id]["male"] = $patient->gender == 1 ? $patient_categories[$patient->category_id]["male"] + 1 : $patient_categories[$patient->category_id]["male"]; - $patient_categories[$patient->category_id]["new"] = is_patient_new($episode->patient_id, $episode->id) ? $patient_categories[$patient->category_id]["new"] + 1 : $patient_categories[$patient->category_id]["new"]; - $patient_categories[$patient->category_id]["patient_ids"][$patient->id] = $patient->id; - } - - $patient_categories[$patient->category_id]["admissions"] = $is_patient_admitted ? $patient_categories[$patient->category_id]["admissions"] + 1 : $patient_categories[$patient->category_id]["admissions"]; - $patient_categories[$patient->category_id]["total_episodes"] = $patient_categories[$patient->category_id]["total_episodes"] + 1; - } else { - $patient_categories[$patient->category_id] = [ - "name" => $patient_categories_names[$patient->category_id] ?? 'N/A', - "total_patients" => 1, - "male" => $patient->gender == 1 ? 1 : 0, - "new" => is_patient_new($episode->patient_id, $episode->id) ? 1 : 0, - "patient_ids" => [$patient->id], - "total_episodes" => 1, - "admissions" => $is_patient_admitted ? 1 : 0, - ]; - } - - if (!isset($unique_patients[$episode->patient_id])) { - // check if this is a new attendance - $current_diagnosis = get_name($episode->consultation_id, 'id', 'primary_diagnosis', 'consultations'); - if ($current_diagnosis != 'N/A') { - $current_episode_date = get_name($episode->consultation_id, 'id', 'created_at', 'consultations'); - $start_of_day = Carbon::parse($current_episode_date)->startOfDay(); - $end_of_day = Carbon::parse($current_episode_date)->endOfDay(); - - $past_diagnoses_count = DB::table('consultations') - ->where('patient_id', $episode->patient_id) - ->where('primary_diagnosis', $current_diagnosis) - ->whereNotBetween('created_at', [$start_of_day, $end_of_day]) - ->count(); - - if ($past_diagnoses_count > 1) { - $total_re_attendance++; - } - } - - // check if this is a new patient or returning by number of episodes - if (is_patient_new($episode->patient_id, $episode->id)) { - $new_patients++; - } else { - $returning_patients++; - } - - if ($patient->date_of_birth != "") { - $dob = Carbon::parse($patient->date_of_birth); - $age_diff_days = $dob->diffInDays(Carbon::now()); - } else { - $age_diff_days = 0; - } - - $unique_patients[$episode->patient_id] = $episode->patient_id; - - foreach ($age_groups as $age_group_record) { - // turn into days - if ($age_group_record->age_type == 3) { - // days - $first_day = $age_group_record->from_age; - $last_day = $age_group_record->to_age; - } elseif ($age_group_record->age_type == 2) { - // months - $first_day = $age_group_record->from_age * 30; - $last_day = $age_group_record->to_age * 30; - } else { - // years - $first_day = $age_group_record->from_age * 365; - $last_day = $age_group_record->to_age * 365; - } - - if (between($age_diff_days, $first_day, $last_day)) { - $age_group_data[$age_group_record->id]['name'] = $age_group_record->name; - - // patient fits this age group - if ($patient->gender == 1) { - $age_group_data[$age_group_record->id]['male'][] = $episode->patient_id; - $total_male_patients++; - $total_male_patients_arr[] = $episode->patient_id; - } else { - $age_group_data[$age_group_record->id]['female'][] = $episode->patient_id; - $total_female_patients++; - $total_female_patients_arr[] = $episode->patient_id; - } - - $total_patients++; - $total_patients_arr[] = $episode->patient_id; - break; - } - } - } - } - - // sort the clinics according to those with the most patients - usort($patient_clinics, function ($a, $b) { - return $b['total_patients'] <=> $a['total_patients']; - }); - - // sort the wards according to those with the most patients - usort($patient_wards, function ($a, $b) { - return $b['total_patients'] <=> $a['total_patients']; - }); - - // sort the wards according to those with the most patients - usort($patient_categories, function ($a, $b) { - return $b['total_patients'] <=> $a['total_patients']; - }); - - $all_discharges = DB::table('inpatient_info') - ->whereBetween('discharged_on', [$start_date,$end_date]) - ->count(); - - $still_admitted = 0; - $still_admitted_arr = []; - - $still_admitted_patients = DB::table('inpatient_info') - ->where('discharged_on', '>', $end_date) - ->OrWhereNull('discharged_on') - ->where('admitted_on', '<', $end_date) - ->get(['ward_id', 'patient_id']); - - foreach ($still_admitted_patients as $still_admitted_patient) { - $still_admitted++; - $still_admitted_arr[] = $still_admitted_patient->patient_id; - if (isset($patient_wards[$still_admitted_patient->ward_id])) { - $patient_wards[$still_admitted_patient->ward_id]['admitted_as_of'] += 1; - $patient_wards[$still_admitted_patient->ward_id]['admitted_as_of_arr'][] = $still_admitted_patient->patient_id; - } - } - - return view('reports::hmis_reports.patient_visits_report', compact('criteria', 'total_male_patients', 'new_patients', 'returning_patients', 'total_admissions', 'total_discharges', 'all_discharges', 'still_admitted', 'total_re_attendance', 'is_outpatient_queried', 'number_of_episodes', - 'start_date', 'end_date', 'total_patients', 'total_female_patients', 'is_inpatient_queried', 'total_ward_deaths', 'total_opd_deaths', 'patient_clinics', 'patient_wards', 'total_patients_in_clinics', 'patient_categories', 'number_of_days', 'triaged_patients', 'ipd_procedures', 'opd_procedures', - 'total_male_patients_arr', 'total_female_patients_arr', 'total_patients_arr', 'still_admitted_arr', 'total_opd_deaths_arr', 'age_group_data')); - } else { - flash("No results found for the patients search")->error(); - return redirect("streamline_reports"); - } - } elseif ($request->report_category == 5) { - if (!Auth::user()->can('streamline-reports-symptoms')) { - flash('You do not have access to this report.')->error(); - return redirect('/streamline_reports'); - } - - // search for symptoms - if (is_null($request->symptoms)) { - flash("Please select a symptom")->error(); - return redirect("streamline_reports"); - } else { - // check if dates are selected - if (!is_null($request->start_date) && !is_null($request->end_date)) { - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['triage.created_at', '>', $start_date]); - array_push($filters, ['triage.created_at', '<', $end_date]); - $criteria .= 'Between (' . $request->start_date . ') And (' . $request->end_date . ')'; - } - - // check if inpatient/outpatient is selected - if (!is_null($request->in_out_patient)) { - if ($request->in_out_patient == 0) { - $criteria .= 'Inpatient and Outpatient '; - } elseif ($request->in_out_patient == 1) { - array_push($filters, ['consultations.ward_id', '<>', '']); - $criteria .= 'Inpatient '; - } elseif ($request->in_out_patient == 2) { - array_push($filters, ['consultations.ward_id', '=', '']); - $criteria .= 'Outpatient '; - } - } - - if(!empty($request->patient_category)) { - $filters[] = ['patients.category_id', $request->patient_category]; - $criteria .= ' Patient Category(' . ($patient_categories_names[$request->patient_category] ?? 'N/A') . ') '; - } else { - $criteria .= ' Patient Category(All) '; - } - - // collect patient information and along with consultations - $symptoms = DB::table('triage') - ->leftjoin('patients', 'triage.patient_id', '=', 'patients.id') - ->leftjoin('consultations', 'triage.episode_id', '=', 'consultations.episode_id') - ->where($filters) - ->select('triage.id', 'triage.patient_id','triage.episode_id', 'triage.symptoms','consultations.symptoms as symptoms2','triage.created_at') - ->get(); - if (!empty($symptoms)) { - - // store the search in the session variable - session()->put('search_query_filters', $filters); - - // check if a specific lab test has been searched for and go straight to details - if ($request->symptoms != 0) { - return redirect('/streamline_reports/symptoms_drill_down/' . $request->symptoms); - } - - $symptoms_id_array = []; - $values_array = []; - - foreach ($symptoms as $value) { - $symptoms1 = !(is_null($value->symptoms) || $value->symptoms == '') ? explode(",", $value->symptoms) : []; - $symptoms2 = !(is_null($value->symptoms2) || $value->symptoms2 == '') ? explode(",", $value->symptoms2) : []; - $temp_symptoms_array = array_merge($symptoms1, $symptoms2); - - // loop through the temporary arrays - for ($i = 0; $i < count($temp_symptoms_array); $i++) { - // check if we have already recorded the diagnosis - if (in_array($temp_symptoms_array[$i], $symptoms_id_array)) { - // We've struck gold! Now find the key - $key = array_search($temp_symptoms_array[$i], $symptoms_id_array); - - $values_array[$key] = $values_array[$key] + 1; - } else { - // diagnosis is not recorded so insert it - array_push($symptoms_id_array, $temp_symptoms_array[$i]); - array_push($values_array, 1); - } - } - } - - // check if symptoms have returned results - if (count($symptoms_id_array) < 1) { - flash("No results found for the symptoms search")->error(); - return redirect("streamline_reports"); - } - - return view('reports::hmis_reports.symptoms_report', compact('criteria', 'symptoms_id_array', 'values_array')); - } else { - flash("No results found for the symptoms search")->error(); - return redirect("streamline_reports"); - } - } - } elseif ($request->report_category == 6) { - if (!Auth::user()->can('streamline-reports-doctors')) { - flash('You do not have access to this report.')->error(); - return redirect('/streamline_reports'); - } - - if (!is_null($request->start_date) && !is_null($request->end_date)) { - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - } else { - $start_date = Carbon::today()->startOfDay()->toDateTimeString(); - $end_date = Carbon::today()->endOfDay()->toDateTimeString(); - } - - $criteria .= 'Between (' . $request->start_date . ') And (' . $request->end_date . ')'; - - $consultations = DB::table('consultations')->whereNull('deleted_at') - ->whereBetween('created_at', [$start_date, $end_date]) - ->where('completed', 1) - ->get(['consultation_done_by', 'created_by', 'updated_by', 'ward_id', 'episode_id']); - - $eye_consultations = DB::table('eye_clinic_main_exam')->whereNull('deleted_at') - ->whereBetween('created_at', [$start_date, $end_date]) - ->where('completed', 1) - ->get(['consultation_done_by', 'created_by', 'updated_by', 'ward_id', 'episode_id']); - - $doctors = []; - - foreach ($consultations as $consultation) { - if (!is_null($consultation->consultation_done_by)) { - $doctor_id = $consultation->consultation_done_by; - } else { - $doctor_id = $consultation->created_by; - } - - $treatment_numbers = DB::table('treatments')->where('episode_id', $consultation->episode_id) - ->where('created_by', $doctor_id) - ->whereNull('deleted_at') - ->count(); - - $investigation_numbers = DB::table('ordered_investigations')->where('episode_id', $consultation->episode_id) - ->where('created_by', $doctor_id) - ->whereNull('deleted_at') - ->count(); - - if (isset($doctors[$doctor_id])) { - $doctors[$doctor_id]["patients_seen"] = $doctors[$doctor_id]["patients_seen"] + 1; - $doctors[$doctor_id]["investigations"] = $doctors[$doctor_id]["investigations"] + $investigation_numbers; - $doctors[$doctor_id]["prescriptions"] = $doctors[$doctor_id]["prescriptions"] + $treatment_numbers; - $doctors[$doctor_id]["admissions"] = $doctors[$doctor_id]["admissions"] + (!is_null($consultation->ward_id) ? 1 : 0); - } else { - $doctors[$doctor_id] = [ - "id" => $doctor_id, - "name" => get_full_name($doctor_id, 'id', 'first_name', 'last_name', 'users'), - "patients_seen" => 1, - "investigations" => $investigation_numbers, - "prescriptions" => $treatment_numbers, - "admissions" => !is_null($consultation->ward_id) ? 1 : 0 - ]; - } - } - - foreach ($eye_consultations as $eye_consultation) { - if (!is_null($eye_consultation->consultation_done_by)) { - $doctor_id = $eye_consultation->consultation_done_by; - } else { - $doctor_id = $eye_consultation->created_by; - } - - $treatment_numbers = DB::table('treatments')->where('episode_id', $eye_consultation->episode_id) - ->where('created_by', $doctor_id) - ->whereNull('deleted_at') - ->count(); - - $investigation_numbers = DB::table('ordered_investigations')->where('episode_id', $eye_consultation->episode_id) - ->where('created_by', $doctor_id) - ->whereNull('deleted_at') - ->count(); - - if (isset($doctors[$doctor_id])) { - $doctors[$doctor_id]["patients_seen"] = $doctors[$doctor_id]["patients_seen"] + 1; - $doctors[$doctor_id]["investigations"] = $doctors[$doctor_id]["investigations"] + $investigation_numbers; - $doctors[$doctor_id]["prescriptions"] = $doctors[$doctor_id]["prescriptions"] + $treatment_numbers; - $doctors[$doctor_id]["admissions"] = $doctors[$doctor_id]["admissions"] + (!is_null($eye_consultation->ward_id) ? 1 : 0); - } else { - $doctors[$doctor_id] = [ - "id" => $doctor_id, - "name" => get_full_name($doctor_id, 'id', 'first_name', 'last_name', 'users'), - "patients_seen" => 1, - "investigations" => $investigation_numbers, - "prescriptions" => $treatment_numbers, - "admissions" => !is_null($eye_consultation->ward_id) ? 1 : 0 - ]; - } - } - - if (count($doctors) > 0) { - return view('reports::hmis_reports.doctors_performance_report', compact('criteria', 'doctors', 'start_date', 'end_date')); - } else { - flash("No results found for the doctors search")->error(); - return redirect("streamline_reports"); - } - } else { - flash("No results found for the search")->error(); - return redirect("streamline_reports"); - } - } - - public function patient_visits_breakdown($title, $patients) - { - $patients = DB::table('patients')->whereIn('id', explode(",", $patients))->get(); - - return view('reports::hmis_reports.patient_visits_breakdown', compact('patients', 'title')); - } - - public function diagnosis_drill_down($diagnosis_id, $gender) { - // get the filter session - $filters = session()->get('search_query_filters'); - $eye_filters = session()->get('eye_search_query_filters'); - $custom_field = session()->get('custom_field'); - - // clear the filter session - session()->forget('search_query_filters'); - session()->forget('eye_search_query_filters'); - session()->forget('custom_field'); - - // check whether it is null as some people will try to reload this page - if (is_null($filters)) { - // redirect them back to the main reports page - return redirect("streamline_reports"); - } - - // add gender to filters - if ($gender != 3) { - $filters[] = ['patients.gender', '=', $gender]; - $eye_filters[] = ['patients.gender', '=', $gender]; - } - - // add diagnosis id to filters - $filters[] = ['consultations.primary_diagnosis', '=', $diagnosis_id]; - - $eye_diagnoses = DB::table('eye_clinic_main_exam as e')->join('patients', 'e.patient_id', '=', 'patients.id') - ->where($eye_filters) - ->whereRaw("FIND_IN_SET(". $diagnosis_id . ",right_eye_diagnosis) OR FIND_IN_SET(". $diagnosis_id . ",left_eye_diagnosis)") - ->get(['patients.id', 'patients.gender', 'patients.number', 'patients.date_of_birth', 'right_eye_diagnosis', 'left_eye_diagnosis', 'e.created_at', 'next_of_kin', 'phone_of_next_of_kin', 'phone']); - - // collect patient information and along with consultations - $diagnosis = DB::table('consultations') - ->where($filters) - ->join('patients', 'consultations.patient_id', '=', 'patients.id') - ->select('patients.id', 'patients.number', 'patients.gender', 'patients.date_of_birth', 'consultations.primary_diagnosis', 'consultations.created_at', 'next_of_kin', 'phone_of_next_of_kin', 'phone') - ->get(); - - $patients = []; - - foreach ($diagnosis as $record) { - $patients[] = [ - "patient_number" => $record->number, "patient_id" => $record->id, - "patient_name" => insurance_flag($record->id), "gender" => ($record->gender == 1 ? __('hmis_reports.male') : __('hmis_reports.female')), - "date_of_birth" => $record->date_of_birth, "created_at" => $record->created_at, 'next_of_kin'=> $record->next_of_kin, - 'phone_of_next_of_kin'=> $record->phone_of_next_of_kin, 'phone'=> $record->phone - ]; - } - - foreach ($eye_diagnoses as $record) { - $patients[] = [ - "patient_number" => $record->number, "patient_id" => $record->id, - "patient_name" => insurance_flag($record->id), "gender" => ($record->gender == 1 ? __('hmis_reports.male') : __('hmis_reports.female')), - "date_of_birth" => get_patients_age($record->date_of_birth), - "created_at" => streamline_date_time($record->created_at), - 'next_of_kin'=> $record->next_of_kin, 'phone_of_next_of_kin'=> $record->phone_of_next_of_kin, 'phone'=> $record->phone - ]; - } - - return view('reports::hmis_reports.diagnosis_drill_down', compact('patients', 'diagnosis_id', 'custom_field')); - } - - public function treatments_drill_down($drug_id) { - // get the filter session - $filters = session()->get('search_query_filters'); - $custom_field = session()->get('custom_field'); - $drugs = DB::table('patient_dispensings') - ->where($filters) - ->whereRaw('FIND_IN_SET(' . $drug_id . ',patient_dispensings.drugs)') - ->join('patients', 'patient_dispensings.patient_id', '=', 'patients.id') - ->select('patients.id', 'patients.number', 'patient_dispensings.drugs', 'patient_dispensings.quantity_dispensed', 'patient_dispensings.created_at') - ->get(); - - $dispensed_array = []; - $patient_number_array = []; - $patient_id_array = []; - $date_array = []; - session()->forget('custom_field'); - foreach ($drugs as $drug) { - // split into an array for drugs - $temp_drugs_array = explode(",", $drug->drugs); - $temp_dispensed_array = explode(",", $drug->quantity_dispensed); - - // loop through the temporary arrays - for ($i = 0; $i < count($temp_dispensed_array); $i++) { - - // check if specific drug has been requested - if ($drug_id == $temp_drugs_array[$i]) { - // diagnosis is not recorded so insert it - $dispensed_array[] = $temp_dispensed_array[$i]; - $patient_number_array[] = $drug->number; - $patient_id_array[] = $drug->id; - $date_array[] = $drug->created_at; - } - } - } - - return view('reports::hmis_reports.treatments_drill_down', compact('dispensed_array', 'patient_id_array', 'date_array', 'patient_number_array', 'drug_id', 'custom_field')); - } - - public function investigations_drill_down($investigation_id) { - // get the filter session - $filters = session()->get('search_query_filters'); - $custom_field = session()->get('custom_field'); - $investigations = InvestigationResults::where($filters) - ->whereRaw('FIND_IN_SET(' . $investigation_id . ',investigation_results.investigation_id)') - ->leftjoin('patients', 'investigation_results.patient_id', '=', 'patients.id') - ->get(['investigation_results.investigation_id', 'investigation_results.value', 'investigation_results.created_at', 'patients.number', 'patients.id']); - - $result_templates_array = $inv_temp = []; - $patient_records = $transformed_inv_temp = []; - session()->forget('custom_field'); - $result_templates = DB::table('investigation_result_templates')->whereNull('deleted_at')->where('investigation_id', $investigation_id)->get(); - - foreach ($result_templates as $template) { - $result_templates_array[$template->template]['counter'] = 0; - $inv_temp[] = $template->template; - $transformed_inv_temp[] = strtolower(str_replace(' ', '', $template->template)); - } - - if(!empty($result_templates_array)) $result_templates_array['Other Results']['counter'] = 0; - - foreach ($investigations as $investigation) { - // split into an array for investigations - $temp_investigations_array = explode(",", $investigation->investigation_id); - $temp_value_array = explode(",", $investigation->value); - $id = array_search($investigation_id, $temp_investigations_array); - $inv_result = $temp_value_array[$id]; - $temp_key = array_search(strtolower(str_replace(' ', '', $inv_result)), $transformed_inv_temp); - if($temp_key !== false) $template_key = $inv_temp[$temp_key]; - - $patient_records[] = [ - "patient_number" => $investigation->number, - "patient_id" => $investigation->id, - "created_at" => $investigation->created_at, - "value" => $inv_result - ]; - - // check if the result template is set - if ($temp_key !== false) { - $result_templates_array[$template_key]['counter'] = $result_templates_array[$template_key]['counter'] + 1; - $result_templates_array[$template_key]['patients'][] = [ - "patient_number" => $investigation->number, - "patient_id" => $investigation->id, - "created_at" => $investigation->created_at, - "value" => $inv_result - ]; - } else { - if (isset($result_templates_array['Other Results']['counter'])) { - $result_templates_array['Other Results']['counter'] = $result_templates_array['Other Results']['counter'] + 1; - $result_templates_array['Other Results']['patients'][] = [ - "patient_number" => $investigation->number, - "patient_id" => $investigation->id, - "created_at" => $investigation->created_at, - "value" => $inv_result - ]; - } - } - } - - return view('reports::hmis_reports.investigations_drill_down', compact('patient_records', 'investigation_id', 'result_templates_array', 'custom_field')); - } - - public function symptoms_drill_down($symptom_id) - { - // get the filter session - $filters = session()->get('search_query_filters'); - $custom_field = session()->get('custom_field'); - // clear the filter session - session()->forget('search_query_filters'); - session()->forget('custom_field'); - if (is_null($filters)) { - // redirect them back to the main reports page - return redirect("streamline_reports"); - } - - $symptoms = DB::table('triage') - ->leftjoin('patients', 'triage.patient_id', '=', 'patients.id') - ->leftjoin('consultations', 'triage.episode_id', '=', 'consultations.episode_id') - ->where(function($query) use ($symptom_id) { - $query->whereRaw('FIND_IN_SET(' . $symptom_id . ', triage.symptoms)') - ->orWhereRaw('FIND_IN_SET(' . $symptom_id . ', consultations.symptoms)'); - }) - ->where($filters) - ->get(['patients.gender', 'patients.number', 'patients.date_of_birth','triage.patient_id', 'triage.created_at','next_of_kin', 'phone_of_next_of_kin', 'phone']); - - return view('reports::hmis_reports.symptoms_drill_down', compact('symptoms', 'symptom_id','custom_field')); - } - - /** - * Body mass index report - * */ - public function bmi_report(Request $request) - { - $hospital_information = HospitalInformation::find(1); - if (isset($request->date_from) && isset($request->date_to)) { - $attendance_from = Carbon::createFromFormat('d/m/Y', $request->date_from)->toDateString(); - $attendance_to = Carbon::createFromFormat('d/m/Y', $request->date_to)->toDateString(); - $search_button = $request->filterBtn; - } else { - $date = date_create(date("d-m-Y")); - date_sub($date, date_interval_create_from_date_string("31 days")); - $startDate = date_format($date, "d-m-Y"); - $attendance_from = date_format($date, "Y-m-d"); - $attendance_to = date("Y-m-d"); - } - // $sql_query = "SELECT t.patient_id as patient_id, t.id, t.observations, d.date_of_birth, d.gender FROM triage t, patients d WHERE (t.created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}') AND t.patient_id = d.id AND (YEAR(CURDATE()) - YEAR(d.date_of_birth)) > 5 AND t.observations LIKE '%BMI=%' ORDER BY t.patient_id DESC"; - $triage_results = DB::table('triage') - ->leftJoin('patients', 'triage.patient_id', '=', 'patients.id') - ->select('patient_id', 'date_of_birth','gender','patient_id','observations','triage.id') - ->whereBetween('triage.created_at', [$attendance_from, $attendance_to]) - ->where('observations', 'LIKE', '%BMI=%')->whereRaw('(YEAR(CURDATE()) - YEAR(date_of_birth)) >= 5') - ->orderBy('patient_id', 'desc') - ->get(); - // $triage_results1 = DB::select($sql_query); - // 5 - 10 years MALES ARRAY - $severely_underweight_5_10yrs_male_array = array(); - $underweight_5_10yrs_male_array = array(); - $normal_5_10yrs_male_array = array(); - $overweight_5_10yrs_male_array = array(); - $obese_5_10yrs_male_array = array(); - // 11 - 18 years MALES ARRAY - $severely_underweight_11_18yrs_male_array = array(); - $underweight_11_18yrs_male_array = array(); - $normal_11_18yrs_male_array = array(); - $overweight_11_18yrs_male_array = array(); - $obese_11_18yrs_male_array = array(); - // > 18 years MALES ARRAY - $severely_underweight_18yrs_male_array = array(); - $underweight_18yrs_male_array = array(); - $normal_18yrs_male_array = array(); - $overweight_18yrs_male_array = array(); - $obese_18yrs_male_array = array(); - - // 5 - 10 years FEMALES ARRAY - $severely_underweight_5_10yrs_female_array = array(); - $underweight_5_10yrs_female_array = array(); - $normal_5_10yrs_female_array = array(); - $overweight_5_10yrs_female_array = array(); - $obese_5_10yrs_female_array = array(); - // 11 - 18 years FEMALES ARRAY - $severely_underweight_11_18yrs_female_array = array(); - $underweight_11_18yrs_female_array = array(); - $normal_11_18yrs_female_array = array(); - $overweight_11_18yrs_female_array = array(); - $obese_11_18yrs_female_array = array(); - // > 18 years FEMALES ARRAY - $severely_underweight_18yrs_female_array = array(); - $underweight_18yrs_female_array = array(); - $normal_18yrs_female_array = array(); - $overweight_18yrs_female_array = array(); - $obese_18yrs_female_array = array(); - - if (count($triage_results) > 0): - foreach ($triage_results as $result) { - $observation_explode = explode(",", $result->observations); - $bmi_string = custom_search_array_like("BMI", $observation_explode); // returns 'BMI=27.1' - $bmi = explode("=", $bmi_string)[1]; // returns the real BMI 27.1 - if (empty($bmi) || $bmi == "" || $bmi == " "): - continue; - endif; - $patient_id = $result->patient_id; - $date_of_birth = new Carbon($result->date_of_birth); - $age_years = $date_of_birth->diffInYears(Carbon::now()); - $age_years = (int)$age_years; - $sex = $result->gender; - - if (between($age_years, 5, 10)): - if ($sex == 1 && $bmi < 16): - $severely_underweight_5_10yrs_male_array[] = $patient_id; - endif; - if ($sex == 1 && between($bmi, 16, 18.5)): - $underweight_5_10yrs_male_array[] = $patient_id; - endif; - if ($sex == 1 && between($bmi, 18.5, 25)): - $normal_5_10yrs_male_array[] = $patient_id; - endif; - if ($sex == 1 && between($bmi, 25, 30)): - $overweight_5_10yrs_male_array[] = $patient_id; - endif; - if ($sex == 1 && $bmi > 30): - $obese_5_10yrs_male_array[] = $patient_id; - endif; - - if ($sex == 2 && $bmi < 16): - $severely_underweight_5_10yrs_female_array[] = $patient_id; - endif; - if ($sex == 2 && between($bmi, 16, 18.5)): - $underweight_5_10yrs_female_array[] = $patient_id; - endif; - if ($sex == 2 && between($bmi, 18.5, 25)): - $normal_5_10yrs_female_array[] = $patient_id; - endif; - if ($sex == 2 && between($bmi, 25, 30)): - $overweight_5_10yrs_female_array[] = $patient_id; - endif; - if ($sex == 2 && $bmi > 30): - $obese_5_10yrs_female_array[] = $patient_id; - endif; - endif; - - if (between($age_years, 11, 18)): - if ($sex == 1 && $bmi < 16): - $severely_underweight_11_18yrs_male_array[] = $patient_id; - endif; - if ($sex == 1 && between($bmi, 16, 18.5)): - $underweight_11_18yrs_male_array[] = $patient_id; - endif; - if ($sex == 1 && between($bmi, 18.5, 25)): - $normal_11_18yrs_male_array[] = $patient_id; - endif; - if ($sex == 1 && between($bmi, 25, 30)): - $overweight_11_18yrs_male_array[] = $patient_id; - endif; - if ($sex == 1 && $bmi > 30): - $obese_11_18yrs_male_array[] = $patient_id; - endif; - - if ($sex == 2 && $bmi < 16): - $severely_underweight_11_18yrs_female_array[] = $patient_id; - endif; - if ($sex == 2 && between($bmi, 16, 18.5)): - $underweight_11_18yrs_female_array[] = $patient_id; - endif; - if ($sex == 2 && between($bmi, 18.5, 25)): - $normal_11_18yrs_female_array[] = $patient_id; - endif; - if ($sex == 2 && between($bmi, 25, 30)): - $overweight_11_18yrs_female_array[] = $patient_id; - endif; - if ($sex == 2 && $bmi > 30): - $obese_11_18yrs_female_array[] = $patient_id; - endif; - endif; - - - if ($age_years >= 18): - if ($sex == 1 && $bmi < 16): - $severely_underweight_18yrs_male_array[] = $patient_id; - endif; - if ($sex == 1 && between($bmi, 16, 18.5)): - $underweight_18yrs_male_array[] = $patient_id; - endif; - if ($sex == 1 && between($bmi, 18.5, 25)): - $normal_18yrs_male_array[] = $patient_id; - endif; - if ($sex == 1 && between($bmi, 25, 30)): - $overweight_18yrs_male_array[] = $patient_id; - endif; - if ($sex == 1 && $bmi > 30): - $obese_18yrs_male_array[] = $patient_id; - endif; - - if ($sex == 2 && $bmi < 16): - $severely_underweight_18yrs_female_array[] = $patient_id; - endif; - if ($sex == 2 && between($bmi, 16, 18.5)): - $underweight_18yrs_female_array[] = $patient_id; - endif; - if ($sex == 2 && between($bmi, 18.5, 25)): - $normal_18yrs_female_array[] = $patient_id; - endif; - if ($sex == 2 && between($bmi, 25, 30)): - $overweight_18yrs_female_array[] = $patient_id; - endif; - if ($sex == 2 && $bmi > 30): - $obese_18yrs_female_array[] = $patient_id; - endif; - endif; - } - endif; - - $severely_underweight_5_10yrs_male_array = array(); - $underweight_5_10yrs_male_array = array(); - return view('reports::hmis_reports.bmi_report', compact('hospital_information', 'attendance_from', 'attendance_to', 'triage_results', 'obese_18yrs_female_array', 'overweight_18yrs_female_array', 'normal_18yrs_female_array', 'underweight_18yrs_female_array', 'severely_underweight_18yrs_female_array', 'obese_11_18yrs_female_array', 'overweight_11_18yrs_female_array', 'normal_11_18yrs_female_array', 'underweight_11_18yrs_female_array', 'severely_underweight_11_18yrs_female_array', 'obese_5_10yrs_female_array', 'overweight_5_10yrs_female_array', 'normal_5_10yrs_female_array', 'underweight_5_10yrs_female_array', 'severely_underweight_5_10yrs_female_array', 'obese_18yrs_male_array', 'overweight_18yrs_male_array', 'normal_18yrs_male_array', 'underweight_18yrs_male_array', 'severely_underweight_18yrs_male_array', 'obese_11_18yrs_male_array', 'overweight_11_18yrs_male_array', 'normal_11_18yrs_male_array', 'underweight_11_18yrs_male_array', 'severely_underweight_11_18yrs_male_array', 'obese_5_10yrs_male_array', 'overweight_5_10yrs_male_array', 'normal_5_10yrs_male_array', 'underweight_5_10yrs_male_array', 'severely_underweight_5_10yrs_male_array')); - } - - /* - * bmi report drill down - */ - - public function bmi_report_details(Request $request) - { - $from = $request->from; - $to = $request->to; - $age_range = $request->age_range; - $search_criteria = $request->search_criteria; - $patient_id_array = unserialize($request->patient_ids); - $patient_query = "SELECT * FROM patients WHERE id IN (" . implode(',', $patient_id_array) . ")"; - $patients_results = DB::select($patient_query); - return view('reports::hmis_reports.bmi_report_details', compact('from', 'to', 'age_range', 'search_criteria', 'patients_results')); - } - - /* - * Family plannig report - */ - - public function family_planning_report(Request $request) - { - $hospital_information = HospitalInformation::find(1); - if (isset($request->date_from) && isset($request->date_to)) { - $attendance_from = Carbon::createFromFormat('d/m/Y', $request->date_from)->toDateString(); - $attendance_to = Carbon::createFromFormat('d/m/Y', $request->date_to)->toDateString(); - $search_button = $request->filterBtn; - } else { - $date = date_create(date("d-m-Y")); - date_sub($date, date_interval_create_from_date_string("30 days")); - $startDate = date_format($date, "d-m-Y"); - $attendance_from = date_format($date, "Y-m-d"); - $attendance_to = date("Y-m-d"); - } - $sql_query = "SELECT t.patient_id as patient_id, t.id as triage_id, t.fp_action as fp_action, d.gender FROM triage t, patients d WHERE (t.created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}') AND (patient_id = d.id) AND (YEAR(CURDATE()) - YEAR(d.date_of_birth)) > 17"; - $triage_results = DB::select($sql_query); - - $counseling_male = []; - $counseling_female = []; - $fp_clinic_male = []; - $fp_clinic_female = []; - - if (count($triage_results) > 0): - foreach ($triage_results as $result) { - $sex = $result->gender; - $fp_action = $result->fp_action; - - if ($sex == 1 && $fp_action == 'Counseling') { - array_push($counseling_male, $result->patient_id); - } - if ($sex == 1 && $fp_action == 'Referral to FP clinic') { - array_push($fp_clinic_male, $result->patient_id); - } - if ($sex == 2 && $fp_action == 'Counseling') { - array_push($counseling_female, $result->patient_id); - } - if ($sex == 2 && $fp_action == 'Referral to FP clinic') { - array_push($fp_clinic_female, $result->patient_id); - } - } - endif; - - return view('reports::hmis_reports.family_planning_report', compact('hospital_information', 'attendance_from', 'attendance_to', 'triage_results', 'counseling_male', 'counseling_female', 'fp_clinic_male', 'fp_clinic_female')); - } - - /* - * family planning report details - */ - - public function family_planning_report_details(Request $request) - { - $from = $request->from; - $to = $request->to; - $gender = $request->sex; - $patient_id_array = unserialize($request->patient_ids); - $patient_query = "SELECT * FROM patients WHERE id IN (" . implode(',', $patient_id_array) . ")"; - $patients_results = DB::select($patient_query); - return view('reports::hmis_reports.family_planning_report_details', compact('from', 'to', 'patients_results', 'gender')); - } - - /* - * RDT report - */ - - public function rdt_report(Request $request) - { - $hospital_information = HospitalInformation::find(1); - if (isset($request->date_from) && isset($request->date_to)) { - $attendance_from = Carbon::createFromFormat('d/m/Y', $request->date_from)->toDateString(); - $attendance_to = Carbon::createFromFormat('d/m/Y', $request->date_to)->toDateString(); - $search_button = $request->filterBtn; - } else { - $date = date_create(date("d-m-Y")); - date_sub($date, date_interval_create_from_date_string("6 days")); - $startDate = date_format($date, "d-m-Y"); - $attendance_from = date_format($date, "Y-m-d"); - $attendance_to = date("Y-m-d"); - } - /* rdt positive=1 negative=0 */ - $pos_male_child_sql = "SELECT c.patient_id, c.rdt, c.created_at, d.id, d.gender, d.date_of_birth from consultations c,patients d where c.patient_id = d.id AND c.rdt = 1 AND d.gender = 1 AND (YEAR(CURDATE()) - YEAR(d.date_of_birth)) <= 12 AND c.created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}' order by c.created_at DESC"; - $pos_male_child = count(DB::select($pos_male_child_sql)); - - $pos_male_adult_sql = "SELECT c.patient_id, c.rdt, c.created_at, d.id, d.gender, d.date_of_birth from consultations c,patients d where c.patient_id = d.id AND c.rdt = 1 AND d.gender = 1 AND (YEAR(CURDATE()) - YEAR(d.date_of_birth)) > 12 AND c.created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}' order by c.created_at DESC"; - $pos_male_adult = count(DB::select($pos_male_adult_sql)); - - $pos_female_child_sql = "SELECT c.patient_id, c.rdt, c.created_at, d.id, d.gender, d.date_of_birth from consultations c,patients d where c.patient_id = d.id AND c.rdt = 1 AND d.gender = 2 AND (YEAR(CURDATE()) - YEAR(d.date_of_birth)) <= 12 AND c.created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}' order by c.created_at DESC"; - $pos_female_child = count(DB::select($pos_female_child_sql)); - - $pos_female_adult_sql = "SELECT c.patient_id, c.rdt, c.created_at, d.id, d.gender, d.date_of_birth from consultations c,patients d where c.patient_id = d.id AND c.rdt = 1 AND d.gender = 2 AND (YEAR(CURDATE()) - YEAR(d.date_of_birth)) > 12 AND c.created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}' order by c.created_at DESC"; - $pos_female_adult = count(DB::select($pos_female_adult_sql)); - - $neg_male_child_sql = "SELECT c.patient_id, c.rdt, c.created_at, d.id, d.gender, d.date_of_birth from consultations c,patients d where c.patient_id = d.id AND c.rdt = 0 AND d.gender = 1 AND (YEAR(CURDATE()) - YEAR(d.date_of_birth)) <= 12 AND c.created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}' order by c.created_at DESC"; - $neg_male_child = count(DB::select($neg_male_child_sql)); - - $neg_male_adult_sql = "SELECT c.patient_id, c.rdt, c.created_at, d.id, d.gender, d.date_of_birth from consultations c,patients d where c.patient_id = d.id AND c.rdt = 0 AND d.gender = 1 AND (YEAR(CURDATE()) - YEAR(d.date_of_birth)) > 12 AND c.created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}' order by c.created_at DESC"; - $neg_male_adult = count(DB::select($neg_male_adult_sql)); - - $neg_female_child_sql = "SELECT c.patient_id, c.rdt, c.created_at, d.id, d.gender, d.date_of_birth from consultations c,patients d where c.patient_id = d.id AND c.rdt = 0 AND d.gender = 2 AND (YEAR(CURDATE()) - YEAR(d.date_of_birth)) <= 12 AND c.created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}' order by c.created_at DESC"; - $neg_female_child = count(DB::select($neg_female_child_sql)); - - $neg_female_adult_sql = "SELECT c.patient_id, c.rdt, c.created_at, d.id, d.gender, d.date_of_birth from consultations c,patients d where c.patient_id = d.id AND c.rdt = 0 AND d.gender = 2 AND (YEAR(CURDATE()) - YEAR(d.date_of_birth)) > 12 AND c.created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}' order by c.created_at DESC"; - $neg_female_adult = count(DB::select($neg_female_adult_sql)); - - return view('reports::hmis_reports.rdt_report', compact('hospital_information', 'attendance_from', 'attendance_to', 'pos_male_child', 'pos_male_adult', 'pos_female_child', 'pos_female_adult', 'neg_male_child', 'neg_male_adult', 'neg_female_child', 'neg_female_adult')); - } - - /* report to show carried out anaesthesias */ - - public function anaesthesia_report(Request $request) - { - $procedures = DB::table('procedures')->orderBy("name", "asc")->pluck("name", "id")->prepend('- select -', ''); - $diagnoses = Diagnosis::where('available', 1)->orderBy("name", "asc")->pluck("name", "id")->prepend('- select -', ''); - $anaesthesia_types = DB::table('procedures')->where('category_id', 3)->orderBy("name", "asc")->pluck("name", "id")->prepend('- select -', ''); - $users = DB::table('users')->orderBy("first_name", "asc")->select("id")->get()->toArray(); - $doctors = []; - $all_users = []; - foreach ($users as $value) { - $user = User::withTrashed()->find($value->id); - if (!is_null($user)) { - $all_users[$value->id] = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users'); - } - } - $all_users = ['' => '- select -'] + $all_users; - - $search_by = $request->search_by; - $reg_date = $request->reg_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - $filters = []; - - if (is_null($search_by)) { - $anaesthesia_records = Anaesthesia::orderBy('created_at', 'desc')->paginate(500); - } else { - if ($search_by == 0) { - // last 24 hours - $last_day = Carbon::now()->subDay(); - array_push($filters, ['anaesthesias.created_at', '>', $last_day]); - } elseif ($search_by == 1) { - // custom date - //$selected_date_filter = Carbon::createFromFormat('d/m/Y', $request->reg_date)->toDateString(); - //array_push($filters, ['anaesthesias.created_at', $selected_date_filter]); - $start_date_search = Carbon::parse($reg_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::parse($reg_date)->endOfDay()->toDateTimeString(); - array_push($filters, ['anaesthesias.created_at', '>', $start_date_search]); - array_push($filters, ['anaesthesias.created_at', '<', $end_date_search]); - } elseif ($search_by == 2) { - // custom date range - $start_date_search = Carbon::createFromFormat('d/m/Y', $start_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::createFromFormat('d/m/Y', $end_date)->endOfDay()->toDateTimeString(); - array_push($filters, ['anaesthesias.created_at', '>', $start_date_search]); - array_push($filters, ['anaesthesias.created_at', '<', $end_date_search]); - } - - if ($request->has('surgical_operation') && !is_null($request->surgical_operation)) { - array_push($filters, ['anaesthesias.procedure_id', $request->surgical_operation]); - } - - if ($request->has('anaesthetist') && !is_null($request->anaesthetist)) { - array_push($filters, ['anaesthesias.anaesthetist', $request->anaesthetist]); - } - - if ($request->has('anaesthesia_type') && !is_null($request->anaesthesia_type)) { - array_push($filters, ['anaesthesias.anaesthesia_type', $request->anaesthesia_type]); - } - - if ($request->has('diagnosis') && !is_null($request->diagnosis)) { - array_push($filters, ['consultations.primary_diagnosis', $request->diagnosis]); - $anaesthesia_records = DB::table('anaesthesias')->join('consultations', 'consultations.episode_id', '=', 'anaesthesias.episode_id')->where($filters)->get(); - } else { - $anaesthesia_records = Anaesthesia::where($filters)->orderBy('created_at', 'desc')->get(); - } - } - - return view('reports::hmis_reports.anaesthesia_report', compact('anaesthesia_records', 'procedures', 'diagnoses', 'anaesthesia_types', 'all_users')); - } - - /* report to show carried out surgeries */ - - public function surgery_report(Request $request) { - $procedures = DB::table('procedures')->orderBy("name", "asc")->pluck("name", "id")->prepend('- select -', ''); - $theatre_locations = DB::table('theatre_locations')->orderBy("name", "asc")->pluck("name", "id")->prepend('- select -', ''); - $diagnoses = DB::table('diagnoses')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck("name", "id")->prepend('- select -', ''); - $users = DB::table('users')->orderBy("first_name", "asc")->select("id", 'first_name', 'last_name')->get()->toArray(); - - $all_users = []; - foreach ($users as $value) { - $all_users[$value->id] = $value->first_name . ' ' . $value->last_name; - } - $all_users = ['' => '- select -'] + $all_users; - - $search_by = $request->search_by; - $filters = []; - - if ($search_by == 1) { - // custom date - $selected_date_filter = Carbon::createFromFormat('d/m/Y', $request->reg_date)->toDateString(); - $filters[] = ['surgeries.date_surgery_completed', $selected_date_filter]; - } elseif ($search_by == 2) { - // custom date range - $start_date_search = Carbon::createFromFormat('d/m/Y', $request->start_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::createFromFormat('d/m/Y', $request->end_date)->endOfDay()->toDateTimeString(); - - $filters[] = ['surgeries.date_surgery_completed', '>', $start_date_search]; - $filters[] = ['surgeries.date_surgery_completed', '<', $end_date_search]; - } else { - $filters[] = ['surgeries.date_surgery_completed', today()->toDateString()]; - } - - if ($request->has('surgical_operation') && !is_null($request->surgical_operation)) { - $filters[] = ['surgeries.procedure_id', $request->surgical_operation]; - } - - if ($request->has('surgeon') && !is_null($request->surgeon)) { - $filters[] = ['surgeries.surgeon', $request->surgeon]; - } - - if ($request->has('assistant_surgeon') && !is_null($request->assistant_surgeon)) { - $filters[] = ['surgeries.assistant_surgeon', $request->assistant_surgeon]; - } - - if ($request->has('diagnosis') && !is_null($request->diagnosis)) { - $filters[] = ['consultations.primary_diagnosis', $request->diagnosis]; - } - - $surgery_records = Surgery::join('consultations', 'consultations.episode_id', '=', 'surgeries.episode_id') - ->join('patients', 'patients.id', '=', 'surgeries.patient_id') - ->where($filters)->get(['surgeries.*', 'consultations.primary_diagnosis', 'patients.number', 'patients.first_name', 'patients.last_name']); - - return view('reports::hmis_reports.surgery_report', compact('surgery_records', 'procedures', 'theatre_locations', 'diagnoses', 'all_users')); - } - - public function ward_re_admittance_report(Request $request) - { - $wards = Ward::pluck('name', 'id')->toArray(); - $wards = [0 => '- select -'] + $wards; - $missing_search_parameters = false; - - if (isset($request->start_date) && isset($request->start_date)) { - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - } else { - $missing_search_parameters = true; - } - - if ($missing_search_parameters || $request->ward_id == 0) { - flash("Please select ward and date range to generate report")->error(); - return view('reports::hmis_reports.ward_re_admittance_report', compact('wards')); - } - - $ward = $request->ward_id; - - // get all patients discharged - $discharged_patients = InpatientInfo::where('discharged', 1)->where('ward_id', $ward)->whereBetween('created_at', [$start_date, $end_date])->orderBy('created_at', 'asc')->get(); - - // arrays to track the recurring patient ids - $patient_ids_array = []; - $discharge_date_array = []; - - // array to track the re-admittance information - $readmittances = []; - $count = 0; - - foreach ($discharged_patients as $record) { - if (in_array($record->patient_id, $patient_ids_array)) { - $readmittances[$count]['number'] = get_name($record->patient_id, 'id', 'number', 'patients'); - $readmittances[$count]['name'] = get_full_name($record->patient_id, 'id', 'first_name', 'last_name', 'patients'); - $dob = new Carbon(get_name($record->patient_id, 'id', 'date_of_birth', 'patients')); - $readmittances[$count]['age'] = $dob->diffInYears(Carbon::now()) . " year(s)"; - $readmittances[$count]['gender'] = get_name($record->patient_id, 'id', 'gender', 'patients') == 1 ? 'Male' : 'Female'; - $readmittances[$count]['primary_diagnosis'] = get_name(get_name($record->episode_id, 'episode_id', 'primary_diagnosis', 'consultations'), 'id', 'name', 'diagnoses'); - $key = array_search($record->patient_id, $patient_ids_array); - $readmittances[$count]['discharge_date'] = streamline_date($discharge_date_array[$key]); - $readmittances[$count]['readmission_date'] = streamline_date($record->created_at); - $readmittances[$count]['comments'] = ($record->comments) ? $record->comments : "N/A"; - $readmittances[$count]['patient_id'] = $record->patient_id; - - $count++; - } else { - $patient_ids_array[] = $record->patient_id; - $discharge_date_array[] = $record->discharged_on; - } - } - - return view('reports::hmis_reports.ward_re_admittance_report', compact('start_date', 'end_date', 'wards', 'ward', 'readmittances')); - } - - public function patients_lost_to_follow_up(Request $request) - { - if (isset($request->start_date)) { - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date)->toDateString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->end_date)->toDateString(); - } else { - $start_date = Carbon::now()->startOfDay()->toDateTimeString(); - $end_date = Carbon::now()->endOfDay()->toDateTimeString(); - } - - $lost_follow_ups = PatientAppointment::where('appointment_fulfilled', 0) - ->whereBetween('appointment_date', [$start_date, $end_date]) - ->get(); - - $total_follow_ups = PatientAppointment::whereBetween('appointment_date', [$start_date, $end_date])->count(); - $number_of_patients_lost = count($lost_follow_ups); - $number_of_patients_followed_up = $total_follow_ups - $number_of_patients_lost; - $drop_out_rate = $total_follow_ups > 0 ? ($number_of_patients_lost / $total_follow_ups) * 100 : 0; - - return view('reports::hmis_reports.patients_lost_to_follow_up', compact('lost_follow_ups', 'start_date', 'end_date', 'total_follow_ups', 'number_of_patients_followed_up', 'number_of_patients_lost', 'drop_out_rate')); - } - - public function days_drugs_out_of_stock(Request $request) { - if (isset($request->start_date)) { - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date); - $end_date = Carbon::createFromFormat('d/m/Y', $request->end_date); - } else { - $start_date = Carbon::now(); - $end_date = Carbon::now(); - } - - $selected_drugs = []; - - $stock_watcher_records = DB::table('stock_watcher') - ->where('item_type', 1) - ->get(); - - foreach ($stock_watcher_records as $record) { - $start_date_search = clone $start_date; // or you can use $start_date->copy() - $end_date_search = clone $end_date; - - $details_arr = json_decode($record->details, true); - - // keep incrementing the start date till it reaches the next day after the end date and stop - while (!$start_date_search->isAfter($end_date_search)) { - if (isset($details_arr[$start_date_search->toDateString()]) && $details_arr[$start_date_search->toDateString()]["pharmacy_stock"] < 1 && $details_arr[$start_date_search->toDateString()]["store_stock"] < 1) { - $selected_drugs[$record->item_id] = 1 + ($selected_drugs[$record->item_id] ?? 0); - } - - $start_date_search->addDay(); - } - } - - return view('reports::hmis_reports.days_drugs_out_of_stock', compact('selected_drugs', 'start_date', 'end_date')); - } - - public function list_hmis_reports() - { - return view('reports::hmis_reports.list-hmis-reports'); - } - - public function print_patient_visits_report(Request $request) - { - $hospitalInfo = DB::table('hospital_information')->find(1); - - $data = [ - 'hospitalInfo' => $hospitalInfo, - 'criteria' => $request->criteria, - 'returning_patients' => $request->returning_patients, - 'new_patients' => $request->new_patients, - 'total_male_patients' => $request->total_male_patients, - 'total_re_attendance' => $request->total_re_attendance, - 'total_discharges' => $request->total_discharges, - 'all_discharges' => $request->all_discharges, - 'still_admitted' => $request->still_admitted, - 'total_admissions' => $request->total_admissions, - 'is_outpatient_queried' => $request->is_outpatient_queried, - 'end_date' => $request->end_date, - 'total_patients' => $request->total_patients, - 'total_female_patients' => $request->total_female_patients, - 'patient_wards' => unserialize($request->patient_wards), - 'age_group_data' => unserialize($request->age_group_data), - 'start_date' => $request->start_date, - 'total_ward_deaths' => $request->total_ward_deaths, - 'total_opd_deaths' => $request->total_opd_deaths, - 'patient_clinics' => unserialize($request->patient_clinics), - 'is_inpatient_queried' => $request->is_inpatient_queried, - 'number_of_episodes' => $request->number_of_episodes, - 'total_patients_in_clinics' => $request->total_patients_in_clinics, - 'patient_categories' => unserialize($request->patient_categories), - 'number_of_days' => $request->number_of_days, - ]; - - $pdf = SnappyPDF::loadView('reports::hmis_reports/patient_visits_report_print', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Stre@mline'); - - return $pdf->inline('Patient Visits Report' . date(" d-m-y h:ia") . '.pdf'); - } - - public function tb_screening_report(Request $request) - { - $triage_filters = $consultation_filter = $inpatient_filter = []; - - $search_by = $request->search_by; - $custom_date = $request->custom_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - - if ($search_by == 0) { - // last 24 hours - $last_day = Carbon::now()->subDay(); - - array_push($triage_filters, ['triage.created_at', '>', $last_day]); - array_push($consultation_filter, ['consultations.created_at', '>', $last_day]); - array_push($inpatient_filter, ['inpatient_info.created_at', '>', $last_day]); - $date_search = "Last 24 hours"; - } elseif ($search_by == 1) { - // custom date - $start_date_search = Carbon::parse($custom_date)->startOfDay()->toDateTimeString(); - ; - $end_date_search = Carbon::parse($custom_date)->endOfDay()->toDateTimeString(); - ; - - array_push($triage_filters, ['triage.created_at', '>', $start_date_search]); - array_push($triage_filters, ['triage.created_at', '<', $end_date_search]); - array_push($consultation_filter, ['consultations.created_at', '>', $start_date_search]); - array_push($consultation_filter, ['consultations.created_at', '<', $end_date_search]); - array_push($inpatient_filter, ['inpatient_info.created_at', '>', $start_date_search]); - array_push($inpatient_filter, ['inpatient_info.created_at', '<', $end_date_search]); - $date_search = streamline_date($start_date_search); - } elseif ($search_by == 2) { - // custom date range - $start_date_search = Carbon::parse($start_date)->startOfDay()->toDateTimeString(); - ; - $end_date_search = Carbon::parse($end_date)->endOfDay()->toDateTimeString(); - ; - - array_push($triage_filters, ['triage.created_at', '>', $start_date_search]); - array_push($triage_filters, ['triage.created_at', '<', $end_date_search]); - array_push($consultation_filter, ['consultations.created_at', '>', $start_date_search]); - array_push($consultation_filter, ['consultations.created_at', '<', $end_date_search]); - array_push($inpatient_filter, ['inpatient_info.created_at', '>', $start_date_search]); - array_push($inpatient_filter, ['inpatient_info.created_at', '<', $end_date_search]); - $date_search = streamline_date($start_date_search) . " to " . streamline_date($end_date_search); - } elseif ($search_by == 4) { - // Today - $today = Carbon::today()->toDateTimeString(); - - array_push($triage_filters, ['triage.created_at', '>=', $today]); - array_push($consultation_filter, ['consultations.created_at', '>=', $today]); - array_push($inpatient_filter, ['inpatient_info.created_at', '>=', $today]); - $date_search = "Today"; - } elseif ($search_by == 3) { - // Today - $yesterday = Carbon::yesterday()->toDateTimeString(); - - array_push($triage_filters, ['triage.created_at', '>=', $yesterday]); - array_push($consultation_filter, ['consultations.created_at', '>=', $yesterday]); - array_push($inpatient_filter, ['inpatient_info.created_at', '>=', $yesterday]); - $date_search = "Yesterday"; - } - - //load from triage (any_tb_sysmptoms i.e 1-patient has TB sign, 0-no TB signs) - //tb triage symptoms with 1- yes and 0 - no (cough_for_2_weeks,fever_for_2_weeks,tb_weight_loss,tb_excessive_night_sweats,tb_poor_weight_gain,tb_contact_with_tb_person) - //load from consultations (tb_status_assessment i.e 1-definite TB, 2-possible TB, 3-definitely not TB) - - // <5 years, 5- 9years, 10-14years, 15-19years, 20+ years - $below_5_males_screened_array = $btn_5_and_9_males_screened_array = $btn_10_and_14_males_screened_array = $btn_15_and_19_males_screened_array = $above_19_males_screened_array = []; - - $below_5_females_screened_array = $btn_5_and_9_females_screened_array = $btn_10_and_14_females_screened_array = $btn_15_and_19_females_screened_array = $above_19_females_screened_array = []; - - $below_5_males_presumptives_identified_array = $btn_5_and_9_males_presumptives_identified_array = $btn_10_and_14_males_presumptives_identified_array = $btn_15_and_19_males_presumptives_identified_array = $above_19_males_presumptives_identified_array = []; - - $below_5_females_presumptives_identified_array = $btn_5_and_9_females_presumptives_identified_array = $btn_10_and_14_females_presumptives_identified_array = $btn_15_and_19_females_presumptives_identified_array = $above_19_females_presumptives_identified_array = []; - - $patients_screened_at_triage = Triage::where($triage_filters)->whereNotNull('any_tb_sysmptoms')->leftJoin('patients', 'triage.patient_id', '=', 'patients.id')->select('triage.id as triage_id', 'triage.any_tb_sysmptoms', 'patients.id as patient_id', 'patients.gender', 'patients.date_of_birth')->get(); - $consultations_assesments = Consultation::where($consultation_filter)->whereNotNull('tb_status_assessment')->leftJoin('patients', 'consultations.patient_id', '=', 'patients.id')->select('consultations.id as consultation_id', 'consultations.tb_status_assessment', 'patients.id as patient_id', 'patients.gender', 'patients.date_of_birth')->get(); - - foreach ($patients_screened_at_triage as $triage_record) { - $ca = Carbon::parse($triage_record->date_of_birth); - $age = $ca->diffInYears(); - - if ($age < 5) { - if ($triage_record->gender == 1) { - $below_5_males_screened_array[] = $triage_record->triage_id; - $triage_record->any_tb_sysmptoms == 1 ? $below_5_males_presumptives_identified_array[] = $triage_record->triage_id : ""; - } else { - $below_5_females_screened_array[] = $triage_record->triage_id; - $triage_record->any_tb_sysmptoms == 1 ? $below_5_females_presumptives_identified_array[] = $triage_record->triage_id : ""; - } - } - - if (($age >= 5) && ($age < 10)) { - if ($triage_record->gender == 1) { - $btn_5_and_9_males_screened_array[] = $triage_record->triage_id; - $triage_record->any_tb_sysmptoms == 1 ? $btn_5_and_9_males_screened_array[] = $triage_record->triage_id : ""; - } else { - $btn_5_and_9_females_screened_array[] = $triage_record->triage_id; - $triage_record->any_tb_sysmptoms == 1 ? $btn_5_and_9_females_screened_array[] = $triage_record->triage_id : ""; - } - } - - if (($age >= 10) && ($age < 15)) { - if ($triage_record->gender == 1) { - $btn_10_and_14_males_screened_array[] = $triage_record->triage_id; - $triage_record->any_tb_sysmptoms == 1 ? $btn_10_and_14_males_presumptives_identified_array[] = $triage_record->triage_id : ""; - } else { - $btn_10_and_14_females_screened_array[] = $triage_record->triage_id; - $triage_record->any_tb_sysmptoms == 1 ? $btn_10_and_14_females_presumptives_identified_array[] = $triage_record->triage_id : ""; - } - } - - if (($age >= 15) && ($age < 20)) { - if ($triage_record->gender == 1) { - $btn_15_and_19_males_screened_array[] = $triage_record->triage_id; - $triage_record->any_tb_sysmptoms == 1 ? $btn_15_and_19_males_presumptives_identified_array[] = $triage_record->triage_id : ""; - } else { - $btn_15_and_19_females_screened_array[] = $triage_record->triage_id; - $triage_record->any_tb_sysmptoms == 1 ? $btn_15_and_19_females_presumptives_identified_array[] = $triage_record->triage_id : ""; - } - } - - if ($age >= 20) { - if ($triage_record->gender == 1) { - $above_19_males_screened_array[] = $triage_record->triage_id; - $triage_record->any_tb_sysmptoms == 1 ? $above_19_males_presumptives_identified_array[] = $triage_record->triage_id : ""; - } else { - $above_19_females_screened_array[] = $triage_record->triage_id; - $triage_record->any_tb_sysmptoms == 1 ? $above_19_females_presumptives_identified_array[] = $triage_record->triage_id : ""; - } - } - } - - $below_5_males_presumptives_array = $btn_5_and_9_males_presumptives_array = $btn_10_and_14_males_presumptives_array = $btn_15_and_19_males_presumptives_array = $above_19_males_presumptives_array = []; - - $below_5_females_presumptives_array = $btn_5_and_9_females_presumptives_array = $btn_10_and_14_females_presumptives_array = $btn_15_and_19_females_presumptives_array = $above_19_females_presumptives_array = []; - - foreach ($consultations_assesments as $consultation_record) { - $ca = Carbon::parse($consultation_record->date_of_birth); - $age = $ca->diffInYears(); - - if (($age < 5) && (in_array($consultation_record->tb_status_assessment, [1]))) { - if ($consultation_record->gender == 1) { - $below_5_males_presumptives_array[] = $consultation_record->consultation_id; - } else { - $below_5_females_presumptives_array[] = $consultation_record->consultation_id; - } - } - - if (($age >= 5) && ($age < 10) && (in_array($consultation_record->tb_status_assessment, [1]))) { - if ($consultation_record->gender == 1) { - $btn_5_and_9_males_presumptives_array[] = $consultation_record->consultation_id; - } else { - $btn_5_and_9_females_presumptives_array[] = $consultation_record->consultation_id; - } - } - - if (($age >= 10) && ($age < 15) && (in_array($consultation_record->tb_status_assessment, [1]))) { - if ($consultation_record->gender == 1) { - $btn_10_and_14_males_presumptives_array[] = $consultation_record->consultation_id; - } else { - $btn_10_and_14_females_presumptives_array[] = $consultation_record->consultation_id; - } - } - - if (($age >= 15) && ($age < 20) && (in_array($consultation_record->tb_status_assessment, [1]))) { - if ($consultation_record->gender == 1) { - $btn_15_and_19_males_presumptives_array[] = $consultation_record->consultation_id; - } else { - $btn_15_and_19_females_presumptives_array[] = $consultation_record->consultation_id; - } - } - - if ($age >= 20 && (in_array($consultation_record->tb_status_assessment, [1]))) { - if ($consultation_record->gender == 1) { - $above_19_males_presumptives_array[] = $consultation_record->consultation_id; - } else { - $above_19_females_presumptives_array[] = $consultation_record->consultation_id; - } - } - } - - $below_5_males_possible_TB_at_OPD_array = $btn_5_and_9_males_possible_TB_at_OPD_array = $btn_10_and_14_males_possible_TB_at_OPD_array = $btn_15_and_19_males_possible_TB_at_OPD_array = $above_19_males_possible_TB_at_OPD_array = []; - - $below_5_females_possible_TB_at_OPD_array = $btn_5_and_9_females_possible_TB_at_OPD_array = $btn_10_and_14_females_possible_TB_at_OPD_array = $btn_15_and_19_females_possible_TB_at_OPD_array = $above_19_females_possible_TB_at_OPD_array = []; - - foreach ($consultations_assesments as $consultation_record) { - $ca = Carbon::parse($consultation_record->date_of_birth); - $age = $ca->diffInYears(); - - if (($age < 5) && (in_array($consultation_record->tb_status_assessment, [2]))) { - if ($consultation_record->gender == 1) { - $below_5_males_possible_TB_at_OPD_array[] = $consultation_record->consultation_id; - } else{ - $below_5_females_possible_TB_at_OPD_array[] = $consultation_record->consultation_id; - } - } - - if (($age >= 5) && ($age < 10) && (in_array($consultation_record->tb_status_assessment, [2]))) { - if ($consultation_record->gender == 1) { - $btn_5_and_9_males_possible_TB_at_OPD_array[] = $consultation_record->consultation_id; - } else{ - $btn_5_and_9_females_possible_TB_at_OPD_array[] = $consultation_record->consultation_id; - } - } - - if (($age >= 10) && ($age < 15) && (in_array($consultation_record->tb_status_assessment, [2]))) { - if ($consultation_record->gender == 1) { - $btn_10_and_14_males_possible_TB_at_OPD_array[] = $consultation_record->consultation_id; - } else{ - $btn_10_and_14_females_possible_TB_at_OPD_array[] = $consultation_record->consultation_id; - } - } - - if (($age >= 15) && ($age < 20) && (in_array($consultation_record->tb_status_assessment, [2]))) { - if ($consultation_record->gender == 1) { - $btn_15_and_19_males_possible_TB_at_OPD_array[] = $consultation_record->consultation_id; - } else{ - $btn_15_and_19_females_possible_TB_at_OPD_array[] = $consultation_record->consultation_id; - } - } - - if ($age >= 20 && (in_array($consultation_record->tb_status_assessment, [2]))) { - if ($consultation_record->gender == 1) { - $above_19_males_possible_TB_at_OPD_array[] = $consultation_record->consultation_id; - } else{ - $above_19_females_possible_TB_at_OPD_array[] = $consultation_record->consultation_id; - } - } - } - - $inpatient_assesments = InpatientInfo::where($inpatient_filter)->whereNotNull('tb_status_assessment')->leftJoin('patients', 'inpatient_info.patient_id', '=', 'patients.id')->select('inpatient_info.id as inpatient_info_id', 'inpatient_info.tb_status_assessment', 'patients.id as patient_id', 'patients.gender', 'patients.date_of_birth')->get(); - $below_5_males_inpatient_presumptives_array = $btn_5_and_9_males_inpatient_presumptives_array = $btn_10_and_14_males_inpatient_presumptives_array = $btn_15_and_19_males_inpatient_presumptives_array = $above_19_males_inpatient_presumptives_array = []; - - $below_5_females_inpatient_presumptives_array = $btn_5_and_9_females_inpatient_presumptives_array = $btn_10_and_14_females_inpatient_presumptives_array = $btn_15_and_19_females_inpatient_presumptives_array = $above_19_females_inpatient_presumptives_array = []; - - foreach ($inpatient_assesments as $inpatient_info_record) { - $ca = Carbon::parse($inpatient_info_record->date_of_birth); - $age = $ca->diffInYears(); - - if (($age < 5) && (in_array($inpatient_info_record->tb_status_assessment, [1]))) { - if ($inpatient_info_record->gender == 1) { - $below_5_males_inpatient_presumptives_array[] = $inpatient_info_record->inpatient_info_id; - } else { - $below_5_females_inpatient_presumptives_array[] = $inpatient_info_record->inpatient_info_id; - } - } - - if (($age >= 5) && ($age < 10) && (in_array($inpatient_info_record->tb_status_assessment, [1]))) { - if ($inpatient_info_record->gender == 1) { - $btn_5_and_9_males_inpatient_presumptives_array[] = $inpatient_info_record->inpatient_info_id; - } else { - $btn_5_and_9_females_inpatient_presumptives_array[] = $inpatient_info_record->inpatient_info_id; - } - } - - if (($age >= 10) && ($age < 15) && (in_array($inpatient_info_record->tb_status_assessment, [1]))) { - if ($inpatient_info_record->gender == 1) { - $btn_10_and_14_males_inpatient_presumptives_array[] = $inpatient_info_record->inpatient_info_id; - } else { - $btn_10_and_14_females_inpatient_presumptives_array[] = $inpatient_info_record->inpatient_info_id; - } - } - - if (($age >= 15) && ($age < 20) && (in_array($inpatient_info_record->tb_status_assessment, [1]))) { - if ($inpatient_info_record->gender == 1) { - $btn_15_and_19_males_inpatient_presumptives_array[] = $inpatient_info_record->inpatient_info_id; - } else { - $btn_15_and_19_females_inpatient_presumptives_array[] = $inpatient_info_record->inpatient_info_id; - } - } - - if ($age >= 20 && (in_array($inpatient_info_record->tb_status_assessment, [1]))) { - if ($inpatient_info_record->gender == 1) { - $above_19_males_inpatient_presumptives_array[] = $inpatient_info_record->inpatient_info_id; - } else { - $above_19_females_inpatient_presumptives_array[] = $inpatient_info_record->inpatient_info_id; - } - } - } - - $below_5_males_possible_TB_at_IPD_array = $btn_5_and_9_males_possible_TB_at_IPD_array = $btn_10_and_14_males_possible_TB_at_IPD_array = $btn_15_and_19_males_possible_TB_at_IPD_array = $above_19_males_possible_TB_at_IPD_array = []; - - $below_5_females_possible_TB_at_IPD_array = $btn_5_and_9_females_possible_TB_at_IPD_array = $btn_10_and_14_females_possible_TB_at_IPD_array = $btn_15_and_19_females_possible_TB_at_IPD_array = $above_19_females_possible_TB_at_IPD_array = []; - - foreach ($inpatient_assesments as $inpatient_info_record) { - $ca = Carbon::parse($inpatient_info_record->date_of_birth); - $age = $ca->diffInYears(); - - if (($age < 5) && (in_array($inpatient_info_record->tb_status_assessment, [2]))) { - if ($inpatient_info_record->gender == 1) { - $below_5_males_possible_TB_at_IPD_array[] = $inpatient_info_record->inpatient_info_id; - } else{ - $below_5_females_possible_TB_at_IPD_array[] = $inpatient_info_record->inpatient_info_id; - } - } - - if (($age >= 5) && ($age < 10) && (in_array($inpatient_info_record->tb_status_assessment, [2]))) { - if ($inpatient_info_record->gender == 1) { - $btn_5_and_9_males_possible_TB_at_IPD_array[] = $inpatient_info_record->inpatient_info_id; - } else{ - $btn_5_and_9_females_possible_TB_at_IPD_array[] = $inpatient_info_record->inpatient_info_id; - } - } - - if (($age >= 10) && ($age < 15) && (in_array($inpatient_info_record->tb_status_assessment, [2]))) { - if ($inpatient_info_record->gender == 1) { - $btn_10_and_14_males_possible_TB_at_IPD_array[] = $inpatient_info_record->inpatient_info_id; - } else{ - $btn_10_and_14_females_possible_TB_at_IPD_array[] = $inpatient_info_record->inpatient_info_id; - } - } - - if (($age >= 15) && ($age < 20) && (in_array($inpatient_info_record->tb_status_assessment, [2]))) { - if ($inpatient_info_record->gender == 1) { - $btn_15_and_19_males_possible_TB_at_IPD_array[] = $inpatient_info_record->inpatient_info_id; - } else{ - $btn_15_and_19_females_possible_TB_at_IPD_array[] = $inpatient_info_record->inpatient_info_id; - } - } - - if ($age >= 20 && (in_array($inpatient_info_record->tb_status_assessment, [2]))) { - if ($inpatient_info_record->gender == 1) { - $above_19_males_possible_TB_at_IPD_array[] = $inpatient_info_record->inpatient_info_id; - } else{ - $above_19_females_possible_TB_at_IPD_array[] = $inpatient_info_record->inpatient_info_id; - } - } - } - - return view('reports::hmis_reports.tb_screening_report', compact('start_date', 'end_date', 'search_by', 'custom_date', 'above_19_females_screened_array', 'above_19_males_screened_array', 'btn_15_and_19_females_screened_array', 'btn_15_and_19_males_screened_array', 'btn_10_and_14_females_screened_array', 'btn_10_and_14_males_screened_array', 'btn_5_and_9_females_screened_array', 'btn_5_and_9_males_screened_array', 'below_5_females_screened_array', 'below_5_males_screened_array', 'above_19_females_presumptives_array', 'above_19_males_presumptives_array', 'btn_15_and_19_females_presumptives_array', 'btn_15_and_19_males_presumptives_array', 'btn_10_and_14_females_presumptives_array', 'btn_10_and_14_males_presumptives_array', 'btn_5_and_9_females_presumptives_array', 'btn_5_and_9_males_presumptives_array', 'below_5_females_presumptives_array', 'below_5_males_presumptives_array','above_19_females_inpatient_presumptives_array', 'above_19_males_inpatient_presumptives_array', 'btn_15_and_19_females_inpatient_presumptives_array', 'btn_15_and_19_males_inpatient_presumptives_array', 'btn_10_and_14_females_inpatient_presumptives_array', 'btn_10_and_14_males_inpatient_presumptives_array', 'btn_5_and_9_females_inpatient_presumptives_array', 'btn_5_and_9_males_inpatient_presumptives_array', 'below_5_females_inpatient_presumptives_array', 'below_5_males_inpatient_presumptives_array', 'below_5_males_presumptives_identified_array', 'btn_5_and_9_males_presumptives_identified_array', 'btn_10_and_14_males_presumptives_identified_array', 'btn_15_and_19_males_presumptives_identified_array', 'above_19_males_presumptives_identified_array', 'below_5_females_presumptives_identified_array', 'btn_5_and_9_females_presumptives_identified_array', 'btn_10_and_14_females_presumptives_identified_array', 'btn_15_and_19_females_presumptives_identified_array', 'above_19_females_presumptives_identified_array', 'above_19_females_possible_TB_at_OPD_array', 'above_19_males_possible_TB_at_OPD_array', 'btn_15_and_19_females_possible_TB_at_OPD_array', 'btn_15_and_19_males_possible_TB_at_OPD_array', 'btn_10_and_14_females_possible_TB_at_OPD_array', 'btn_10_and_14_males_possible_TB_at_OPD_array', 'btn_5_and_9_females_possible_TB_at_OPD_array', 'btn_5_and_9_males_possible_TB_at_OPD_array', 'below_5_females_possible_TB_at_OPD_array', 'below_5_males_possible_TB_at_OPD_array', 'above_19_females_possible_TB_at_IPD_array', 'above_19_males_possible_TB_at_IPD_array', 'btn_15_and_19_females_possible_TB_at_IPD_array', 'btn_15_and_19_males_possible_TB_at_IPD_array', 'btn_10_and_14_females_possible_TB_at_IPD_array', 'btn_10_and_14_males_possible_TB_at_IPD_array', 'btn_5_and_9_females_possible_TB_at_IPD_array', 'btn_5_and_9_males_possible_TB_at_IPD_array', 'below_5_females_possible_TB_at_IPD_array', 'below_5_males_possible_TB_at_IPD_array')); - } - - public function tb_screening_report_presumptive(Request $request) - { - $section = $request->section; - $record_ids = explode(",", $request->record_ids); - - return view('reports::hmis_reports.tb_screening_report_details', compact('record_ids', 'section')); - } - - public function tb_screening_report_triage_details(Request $request) - { - $section = $request->section; - $record_ids = explode(",", $request->record_ids); - - return view('reports::hmis_reports.tb_screening_report_triage_details', compact('record_ids', 'section')); - } - - public function tb_screening_triage_presumptives(Request $request) - { - $section = $request->section; - $record_ids = explode(",", $request->record_ids); - - return view('reports::hmis_reports.tb_screening_triage_presumptives', compact('record_ids', 'section')); - } - - public function procedures_report(Request $request) - { - $procedures = DB::table('procedures')->orderBy("name", "asc")->pluck("name", "id")->prepend('- select -', ''); - - $users = DB::table('users')->orderBy("first_name", "asc")->select("id")->get()->toArray(); - $doctors = []; - $all_users = []; - foreach ($users as $value) { - $user = User::withTrashed()->find($value->id); - if (!is_null($user)) { - $all_users[$value->id] = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users'); - } - } - $all_users = ['' => '- select -'] + $all_users; - $search_string = null; - - $search_by = $request->search_by; - $reg_date = $request->reg_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - $filters = []; - - if ($search_by == 0) { - // last 24 hours - $last_day = Carbon::now()->subDay(); - array_push($filters, ['ward_procedures.created_at', '>', $last_day]); - $search_string = "

    Showing results of ".streamline_date($last_day)."

    "; - } elseif ($search_by == 1) { - // custom date - if (is_null($request->reg_date)) { - flash('Please select a date')->error(); - return redirect()->back(); - } - $selected_date_filter = Carbon::createFromFormat('d/m/Y', $request->reg_date)->toDateString(); - array_push($filters, ['ward_procedures.created_at', $selected_date_filter]); - $search_string = "

    Showing results of ".streamline_date($selected_date_filter)."

    "; - } elseif ($search_by == 2) { - // custom date range - if (is_null($start_date) || is_null($end_date)) { - flash('Please select a date')->error(); - return redirect()->back(); - } - $start_date_search = Carbon::createFromFormat('d/m/Y', $start_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::createFromFormat('d/m/Y', $end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['ward_procedures.created_at', '>', $start_date_search]); - array_push($filters, ['ward_procedures.created_at', '<', $end_date_search]); - $search_string = "

    Showing between ".streamline_date($start_date_search). " and ".streamline_date($end_date_search)."

    "; - } - - if ($request->has('procedure_ordered') && !is_null($request->procedure_ordered)) { - array_push($filters, ['ward_procedures.procedure_id', $request->procedure_ordered]); - } - - if ($request->has('created_by') && !is_null($request->created_by)) { - array_push($filters, ['ward_procedures.created_by', $request->created_by]); - } - - $procedure_ipd = WardProcedure::where($filters)->orderBy('created_at', 'desc')->paginate(500); - - $filters = []; - - if ($search_by == 0) { - // last 24 hours - $last_day = Carbon::now()->subDay(); - array_push($filters, ['ordered_procedures.created_at', '>', $last_day]); - } elseif ($search_by == 1) { - // custom date - $selected_date_filter = Carbon::createFromFormat('d/m/Y', $request->reg_date)->toDateString(); - array_push($filters, ['ordered_procedures.created_at', $selected_date_filter]); - } elseif ($search_by == 2) { - // custom date range - $start_date_search = Carbon::createFromFormat('d/m/Y', $start_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::createFromFormat('d/m/Y', $end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['ordered_procedures.created_at', '>', $start_date_search]); - array_push($filters, ['ordered_procedures.created_at', '<', $end_date_search]); - } - - if ($request->has('procedure_ordered') && !is_null($request->procedure_ordered)) { - array_push($filters, ['ordered_procedures.procedure_id', $request->procedure_ordered]); - } - - if ($request->has('created_by') && !is_null($request->created_by)) { - array_push($filters, ['ordered_procedures.created_by', $request->created_by]); - } - - $procedure_opd = OrderedProcedure::where($filters)->orderBy('created_at', 'desc')->paginate(500); - - return view('reports::hmis_reports.procedures_report', compact('procedure_ipd','procedure_opd', 'procedures', 'all_users', 'search_string')); - } - - public function performed_services_report(Request $request) - { - $services = DB::table('services')->orderBy("name", "asc")->pluck("name", "id")->prepend('- All services -', ''); - - $users = DB::table('users')->orderBy("first_name", "asc")->select("id")->get()->toArray(); - $doctors = []; - $all_users = []; - $search_string = null; - foreach ($users as $value) { - $user = User::withTrashed()->find($value->id); - if (!is_null($user)) { - $all_users[$value->id] = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users'); - } - } - $all_users = ['' => '- select -'] + $all_users; - - $search_by = $request->search_by; - $reg_date = $request->reg_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - $filters = []; - - if ($search_by == 0) { - // last 24 hours - $last_day = Carbon::now()->subDay(); - array_push($filters, ['ward_consultations_and_services.created_at', '>', $last_day]); - $search_string = "

    Showing results of ".streamline_date($last_day)."

    "; - } elseif ($search_by == 1) { - // custom date - if (is_null($request->reg_date)) { - flash('Please select a date')->error(); - return redirect()->back(); - } - $selected_date_filter = Carbon::createFromFormat('d/m/Y', $request->reg_date)->toDateString(); - array_push($filters, ['ward_consultations_and_services.created_at', $selected_date_filter]); - $search_string = "

    Showing results of ".streamline_date($selected_date_filter)."

    "; - } elseif ($search_by == 2) { - // custom date range - if (is_null($start_date) || is_null($end_date)) { - flash('Please select a date')->error(); - return redirect()->back(); - } - $start_date_search = Carbon::createFromFormat('d/m/Y', $start_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::createFromFormat('d/m/Y', $end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['ward_consultations_and_services.created_at', '>', $start_date_search]); - array_push($filters, ['ward_consultations_and_services.created_at', '<', $end_date_search]); - $search_string = "

    Showing between ".streamline_date($start_date_search). " and ".streamline_date($end_date_search)."

    "; - } - - if ($request->has('procedure_ordered') && !is_null($request->procedure_ordered)) { - array_push($filters, ['ward_consultations_and_services.procedure_id', $request->procedure_ordered]); - } - - if ($request->has('created_by') && !is_null($request->created_by)) { - array_push($filters, ['ward_consultations_and_services.created_by', $request->created_by]); - } - - $services_ipd = WardConsultationsAndService::where($filters)->orderBy('created_at', 'desc')->paginate(500); - - $filters = []; - - if ($search_by == 0) { - // last 24 hours - $last_day = Carbon::now()->subDay(); - array_push($filters, ['staff_performed_services.created_at', '>', $last_day]); - } elseif ($search_by == 1) { - // custom date - $selected_date_filter = Carbon::createFromFormat('d/m/Y', $request->reg_date)->toDateString(); - array_push($filters, ['staff_performed_services.created_at', $selected_date_filter]); - } elseif ($search_by == 2) { - // custom date range - $start_date_search = Carbon::createFromFormat('d/m/Y', $start_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::createFromFormat('d/m/Y', $end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['staff_performed_services.created_at', '>', $start_date_search]); - array_push($filters, ['staff_performed_services.created_at', '<', $end_date_search]); - } - - if ($request->has('procedure_ordered') && !is_null($request->procedure_ordered)) { - array_push($filters, ['staff_performed_services.procedure_id', $request->procedure_ordered]); - } - - if ($request->has('created_by') && !is_null($request->created_by)) { - array_push($filters, ['ordered_services.created_by', $request->created_by]); - } - - $services_opd = StaffPerformedService::where('item_category', 3)->where($filters)->orderBy('created_at', 'desc')->paginate(500); - - return view('reports::hmis_reports.services_report', compact('services_ipd','services_opd', 'services', 'all_users', 'search_string')); - } - - public function maternity_report(Request $request) - { - $modes_of_delivery = DB::table('mode_of_delivery')->orderBy("name", "asc")->pluck("name", "id")->prepend('- All modes of delivery -', ''); - - $search_by = $request->search_by; - $reg_date = $request->reg_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - $filters = []; - $filters_string = ""; - - if ($search_by == 0) { - // last 24 hours - $last_day = Carbon::now()->subDay(); - array_push($filters, ['created_at', '>', $last_day]); - } elseif ($search_by == 1) { - // custom date - if (is_null($request->reg_date)) { - flash('Please select a date')->error(); - return redirect()->back(); - } - $selected_date_filter = Carbon::createFromFormat('d/m/Y', $request->reg_date)->toDateString(); - array_push($filters, ['created_at', $selected_date_filter]); - } elseif ($search_by == 2) { - // custom date range - if (is_null($start_date) || is_null($end_date)) { - flash('Please select a date')->error(); - return redirect()->back(); - } - $start_date_search = Carbon::createFromFormat('d/m/Y', $start_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::createFromFormat('d/m/Y', $end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date_search]); - array_push($filters, ['created_at', '<', $end_date_search]); - } - - $maternity_records = MaternityDeliveryRecord::where($filters)->orderBy('created_at', 'desc')->paginate(500); - $delivery_records_numbers_array = []; - - if (count($maternity_records)) { - foreach ($maternity_records as $record) { - $foetal_number = $record->foetal_number; - $modes_of_delivery_array = explode(",", $record->mode_of_delivery); - - for ($i=0; $i < count($modes_of_delivery_array) ; $i++) { - if (!is_null($request->mode_of_delivery)) { - if (($i < $foetal_number) && ($request->mode_of_delivery == $modes_of_delivery_array[$i]) && ($modes_of_delivery_array[$i] != "")) { - $delivery_records_numbers_array[$modes_of_delivery_array[$i]] = $delivery_records_numbers_array[$modes_of_delivery_array[$i]] + 1; - } - } else{ - if (($i < $foetal_number) && ($modes_of_delivery_array[$i] != "")) { - if (array_key_exists($modes_of_delivery_array[$i], $delivery_records_numbers_array)) { - $delivery_records_numbers_array[$modes_of_delivery_array[$i]] = $delivery_records_numbers_array[$modes_of_delivery_array[$i]] + 1; - } else{ - $delivery_records_numbers_array[$modes_of_delivery_array[$i]] = 1; - } - } - } - } - } - } - - return view('reports::hmis_reports.maternity_report', compact('delivery_records_numbers_array', 'modes_of_delivery', 'search_by', 'reg_date', 'start_date', 'end_date')); - } - - public function maternity_report_details(Request $request) - { - $modes_of_delivery = DB::table('mode_of_delivery')->orderBy("name", "asc")->pluck("name", "id")->prepend('- All modes of delivery -', ''); - - $search_by = $request->search_by; - $reg_date = $request->reg_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - $filters = []; - $filters_string = ""; - - if ($search_by == 0) { - // last 24 hours - $last_day = Carbon::now()->subDay(); - array_push($filters, ['created_at', '>', $last_day]); - } elseif ($search_by == 1) { - // custom date - if (is_null($request->reg_date)) { - flash('Please select a date')->error(); - return redirect()->back(); - } - $selected_date_filter = Carbon::createFromFormat('d/m/Y', $request->reg_date)->toDateString(); - array_push($filters, ['created_at', $selected_date_filter]); - } elseif ($search_by == 2) { - // custom date range - if (is_null($start_date) || is_null($end_date)) { - flash('Please select a date')->error(); - return redirect()->back(); - } - $start_date_search = Carbon::createFromFormat('d/m/Y', $start_date)->startOfDay()->toDateTimeString(); - $end_date_search = Carbon::createFromFormat('d/m/Y', $end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date_search]); - array_push($filters, ['created_at', '<', $end_date_search]); - } - - $maternity_records = MaternityDeliveryRecord::where($filters)->orderBy('created_at', 'desc')->paginate(500); - - $selected_modes_of_delivery = $request->mode_of_delivery; - - return view('reports::hmis_reports.maternity_report_details', compact('maternity_records', 'modes_of_delivery', 'search_by', 'reg_date', 'start_date', 'end_date', 'selected_modes_of_delivery')); - } - - public function doctors_performance_report_details(Request $request) { - $start_date = $request->start_date; - $end_date = $request->end_date; - $doctor_id = $request->doctor_id; - $report_type = $request->report_type; - $patients = []; - $admitted_patients = []; - $prescriptions = []; - $investigation_orders = []; - - $diagnoses = Diagnosis::where('available', 1)->pluck('name', 'id'); - $wards = DB::table('wards')->pluck('name', 'id'); - $drugs = DB::table('drugs')->pluck('name', 'id'); - $patient_categories = DB::table('patient_categories')->pluck('name', 'id'); - $clinics = DB::table('clinics')->pluck('name', 'id'); - $investigations = DB::table('investigations')->pluck('name', 'id'); - - $criteria = 'Between (' . streamline_date($start_date) . ') And (' . streamline_date($end_date) . ')'; - - $consultations = DB::table('consultations')->whereNull('consultations.deleted_at') - ->whereBetween('consultations.created_at', [$start_date, $end_date]) - ->where('consultations.completed', 1) - ->where(function($query) use ($doctor_id){ - $query->where('consultations.consultation_done_by', $doctor_id) - ->orWhere('consultations.created_by', $doctor_id); - //->orWhere('consultations.updated_by', $doctor_id); - }) - ->join('patients', 'consultations.patient_id', '=', 'patients.id') - ->join('patient_episodes', 'consultations.episode_id', '=', 'patient_episodes.id') - ->get(['patients.number', 'patients.first_name', 'patients.last_name', 'consultations.patient_id', 'consultations.admitted_on', 'patient_episodes.clinic_id', - 'consultations.primary_diagnosis', 'consultations.ward_id', 'consultations.episode_id', 'consultations.created_at', 'patients.category_id']); - - foreach ($consultations as $consultation) { - - if ($report_type == 1) { - $patients[] = [ - "id" => $consultation->patient_id, - "name" => $consultation->first_name . ' ' . $consultation->last_name, - "number" => $consultation->number, - "patient_category" => $patient_categories[$consultation->category_id] ?? 'N/A', - "clinic" => $clinics[$consultation->clinic_id] ?? 'N/A', - "diagnosis" => $diagnoses[$consultation->primary_diagnosis] ?? 'N/A', - "date" => streamline_date_time($consultation->created_at), - ]; - } elseif ($report_type == 2) { - $ordered_investigations = DB::table('ordered_investigations')->where('episode_id', $consultation->episode_id) - ->where('created_by', $doctor_id) - ->whereNull('deleted_at') - ->get(['investigation_id', 'created_at', 'investigation_status']); - - if (count($ordered_investigations) > 0) { - $investigation_orders[] = [ - "id" => $consultation->patient_id, - "name" => $consultation->first_name . ' ' . $consultation->last_name, - "number" => $consultation->number, - "patient_category" => $patient_categories[$consultation->category_id] ?? 'N/A', - "clinic" => $clinics[$consultation->clinic_id] ?? 'N/A', - "diagnosis" => $diagnoses[$consultation->primary_diagnosis] ?? 'N/A', - "investigations" => $ordered_investigations, - "date" => streamline_date_time($consultation->created_at), - ]; - } - } elseif ($report_type == 3) { - $treatments = DB::table('treatments')->where('episode_id', $consultation->episode_id) - ->where('created_by', $doctor_id) - ->whereNull('deleted_at') - ->get(['drugs', 'created_at']); - - if (count($treatments) > 0) { - $prescriptions[] = [ - "id" => $consultation->patient_id, - "name" => $consultation->first_name . ' ' . $consultation->last_name, - "number" => $consultation->number, - "patient_category" => $patient_categories[$consultation->category_id] ?? 'N/A', - "clinic" => $clinics[$consultation->clinic_id] ?? 'N/A', - "diagnosis" => $diagnoses[$consultation->primary_diagnosis] ?? 'N/A', - "treatments" => $treatments, - "date" => streamline_date_time($consultation->created_at), - ]; - } - } elseif ($report_type == 4) { - if (!is_null($consultation->ward_id)) { - $admitted_patients[] = [ - "id" => $consultation->patient_id, - "name" => $consultation->first_name . ' ' . $consultation->last_name, - "number" => $consultation->number, - "patient_category" => $patient_categories[$consultation->category_id] ?? 'N/A', - "clinic" => $clinics[$consultation->clinic_id] ?? 'N/A', - "diagnosis" => $diagnoses[$consultation->primary_diagnosis] ?? 'N/A', - "ward" => $wards[$consultation->ward_id] ?? 'N/A', - "date" => streamline_date_time($consultation->created_at), - ]; - } - } - } - - return view('reports::hmis_reports.doctors_performance_report_details', compact('criteria', 'patients', 'report_type', 'start_date', 'end_date', 'doctor_id', 'report_type', - 'admitted_patients', 'prescriptions', 'investigation_orders', 'drugs', 'investigations')); - } - - public function view_investigation_specimen_report(Request $request) { - $search_text = ""; - - switch ($request->search_date_by){ - case 'yesterday': - $end_date = Carbon::yesterday()->endOfDay(); - $start_date = Carbon::yesterday()->startOfDay(); - $search_text .= "Yesterday "; - break; - case 'custom_date': - $end_date = Carbon::parse($request->start_date)->endOfDay(); - $start_date = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "From: " . streamline_date($start_date) . " "; - break; - case 'custom_date_range': - $end_date = Carbon::parse($request->end_date)->endOfDay(); - $start_date = Carbon::parse($request->start_date)->startOfDay(); - $search_text .= "From: " . streamline_date($start_date) . " to " . streamline_date($end_date) . " "; - break; - case 'today': - default: - $end_date = Carbon::today()->endOfDay(); - $start_date = Carbon::today()->startOfDay(); - $search_text .= "Today "; - break; - } - - $filter = []; - - if (isset($request->specimen_status) && $request->specimen_status != 0) { - $filter[] = ['ordered_investigations.specimen_status', 'like', '%' . $request->specimen_status . '%']; - } - - $records = DB::table('ordered_investigations') - ->join('patients', 'patients.id', '=', 'ordered_investigations.patient_id') - ->where('ordered_investigations.request_received', 1) - ->where($filter) - ->whereNull('ordered_investigations.deleted_at') - ->whereBetween('ordered_investigations.created_at', [$start_date, $end_date]) - ->where('ordered_investigations.order_type', 'Lab') - ->get(['ordered_investigations.patient_id', 'ordered_investigations.investigation_id', 'ordered_investigations.specimen', 'ordered_investigations.specimen_status', - 'ordered_investigations.specimen_reason', 'ordered_investigations.request_received_date', 'ordered_investigations.request_received_by', 'patients.first_name', 'patients.last_name', 'patients.number']); - - $investigations = DB::table('investigations')->pluck('name', 'id')->toArray(); - $laboratory_specimens = DB::table('laboratory_specimens')->pluck('name', 'id')->toArray(); - - return view('reports::hmis_reports.view_investigation_specimen_report', compact('search_text', 'records', 'investigations', 'laboratory_specimens')); - } - - public function get_registration_field_options (Request $request) { - $option = PatientRegistrationField::where('id', $request->id)->whereNotNull('options')->first(); - if (!empty($option)) { - $data =''; - $options = explode(',', $option->options); - foreach($options as $option){ - $data .= ''; - } - } else $data ='false'; - return $data; - } - - public function view_eye_clinic_report(Request $request) { - if(isset($request->start_date) && isset($request->end_date)){ - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - } else { - $start_date = Carbon::today()->startOfDay()->toDateTimeString(); - $end_date = Carbon::today()->endOfDay()->toDateTimeString(); - } - - $diagnoses = \Illuminate\Support\Facades\DB::table('diagnoses')->pluck('name', 'id'); - $districts = \Illuminate\Support\Facades\DB::table('districts')->pluck('name', 'id'); - $procedures = \Illuminate\Support\Facades\DB::table('procedures')->pluck('name', 'id'); - - $main_exams = \Illuminate\Support\Facades\DB::table('eye_clinic_main_exam as me') - ->join('eye_clinic_base_exam_refraction as bf', 'bf.episode_id', '=', 'me.episode_id') - ->join('patients as pt', 'pt.id', '=', 'me.patient_id') - ->join('ordered_procedures as pr', 'pr.episode_id', '=', 'me.episode_id') - ->whereBetween('me.created_at', [$start_date, $end_date]) - ->whereNull('me.deleted_at')->whereNull('pt.deleted_at')->whereNull('pr.deleted_at') - ->get(['me.patient_id', 'me.episode_id', 'right_eye_diagnosis', 'left_eye_diagnosis', 'cdr_left', 'cdr_right', 'iop_left', 'iop_right', - 'visual_acuity_distance_sc_right', 'visual_acuity_distance_sc_left', 'visual_acuity_distance_cc_right', 'visual_acuity_distance_cc_left', - 'visual_acuity_distance_ph_right', 'visual_acuity_distance_ph_left', 'visual_acuity_near_sc_right', 'visual_acuity_near_sc_left', - 'visual_acuity_near_cc_right', 'visual_acuity_near_cc_left', 'pt.first_name', 'pt.last_name', 'pt.date_of_birth', 'pt.district_id', 'pt.gender', - 'pr.procedure_id', 'pr.eye']); - - return view('eye_clinic::eye_clinic.view_eye_clinic_report', compact('diagnoses', 'districts', 'procedures', 'start_date', 'end_date', 'main_exams')); - } - - public function print_eye_clinic_report($start_date, $end_date) { - $diagnoses = \Illuminate\Support\Facades\DB::table('diagnoses')->pluck('name', 'id'); - $districts = \Illuminate\Support\Facades\DB::table('districts')->pluck('name', 'id'); - $procedures = \Illuminate\Support\Facades\DB::table('procedures')->pluck('name', 'id'); - - $main_exams = \Illuminate\Support\Facades\DB::table('eye_clinic_main_exam as me') - ->join('eye_clinic_base_exam_refraction as bf', 'bf.episode_id', '=', 'me.episode_id') - ->join('patients as pt', 'pt.id', '=', 'me.patient_id') - ->join('ordered_procedures as pr', 'pr.episode_id', '=', 'me.episode_id') - ->whereBetween('me.created_at', [$start_date, $end_date]) - ->whereNull('me.deleted_at')->whereNull('pt.deleted_at')->whereNull('pr.deleted_at') - ->get(['me.patient_id', 'me.episode_id', 'right_eye_diagnosis', 'left_eye_diagnosis', 'cdr_left', 'cdr_right', 'iop_left', 'iop_right', - 'visual_acuity_distance_sc_right', 'visual_acuity_distance_sc_left', 'visual_acuity_distance_cc_right', 'visual_acuity_distance_cc_left', - 'visual_acuity_distance_ph_right', 'visual_acuity_distance_ph_left', 'visual_acuity_near_sc_right', 'visual_acuity_near_sc_left', - 'visual_acuity_near_cc_right', 'visual_acuity_near_cc_left', 'pt.first_name', 'pt.last_name', 'pt.date_of_birth', 'pt.district_id', 'pt.gender', - 'pr.procedure_id', 'pr.eye']); - - $hospital_information = HospitalInformation::find(1); - - $data = [ - 'main_exams' => $main_exams, - 'hospitalInfo' => $hospital_information, - 'diagnoses' => $diagnoses, - 'districts' => $districts, - 'procedures' => $procedures - ]; - - $pdf = SnappyPDF::loadView('eye_clinic::eye_clinic/print_eye_clinic_report', $data) - ->setOrientation('landscape') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Printed On ' . date('d-M-Y h:ia') . ''); - - return $pdf->inline('Eye Clinic Report' . date(" d-m-y h:ia") . '.pdf'); - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Providers/ReportsServiceProvider.php b/docker/statistics/Modules/Reports/Providers/ReportsServiceProvider.php deleted file mode 100644 index 1bbbb3e5..00000000 --- a/docker/statistics/Modules/Reports/Providers/ReportsServiceProvider.php +++ /dev/null @@ -1,113 +0,0 @@ -registerTranslations(); - $this->registerConfig(); - $this->registerViews(); - $this->loadMigrationsFrom(module_path($this->moduleName, 'Database/Migrations')); - } - - /** - * Register the service provider. - * - * @return void - */ - public function register() - { - $this->app->register(RouteServiceProvider::class); - } - - /** - * Register config. - * - * @return void - */ - protected function registerConfig() - { - $this->publishes([ - module_path($this->moduleName, 'Config/config.php') => config_path($this->moduleNameLower . '.php'), - ], 'config'); - $this->mergeConfigFrom( - module_path($this->moduleName, 'Config/config.php'), $this->moduleNameLower - ); - } - - /** - * Register views. - * - * @return void - */ - public function registerViews() - { - $viewPath = resource_path('views/modules/' . $this->moduleNameLower); - - $sourcePath = module_path($this->moduleName, 'Resources/views'); - - $this->publishes([ - $sourcePath => $viewPath - ], ['views', $this->moduleNameLower . '-module-views']); - - $this->loadViewsFrom(array_merge($this->getPublishableViewPaths(), [$sourcePath]), $this->moduleNameLower); - } - - /** - * Register translations. - * - * @return void - */ - public function registerTranslations() - { - $langPath = resource_path('lang/modules/' . $this->moduleNameLower); - - if (is_dir($langPath)) { - $this->loadTranslationsFrom($langPath, $this->moduleNameLower); - $this->loadJsonTranslationsFrom($langPath); - } else { - $this->loadTranslationsFrom(module_path($this->moduleName, 'Resources/lang'), $this->moduleNameLower); - $this->loadJsonTranslationsFrom(module_path($this->moduleName, 'Resources/lang')); - } - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides() - { - return []; - } - - private function getPublishableViewPaths(): array - { - $paths = []; - foreach (\Config::get('view.paths') as $path) { - if (is_dir($path . '/modules/' . $this->moduleNameLower)) { - $paths[] = $path . '/modules/' . $this->moduleNameLower; - } - } - return $paths; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Providers/RouteServiceProvider.php b/docker/statistics/Modules/Reports/Providers/RouteServiceProvider.php deleted file mode 100755 index 87428db9..00000000 --- a/docker/statistics/Modules/Reports/Providers/RouteServiceProvider.php +++ /dev/null @@ -1,68 +0,0 @@ -mapApiRoutes(); - $this->mapWebRoutes(); - } - - /** - * Define the "web" routes for the application. - * - * These routes all receive session state, CSRF protection, etc. - * - * @return void - */ - protected function mapWebRoutes() - { - Route::middleware('web') - ->namespace($this->namespace) - ->group(module_path('Reports', '/Routes/web.php')); - } - - /** - * Define the "api" routes for the application. - * - * These routes are typically stateless. - * - * @return void - */ - protected function mapApiRoutes() - { - Route::prefix('api') - ->middleware('api') - ->namespace($this->namespace) - ->group(module_path('Reports', '/Routes/api.php')); - } -} diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/002/out_patient_register_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/002/out_patient_register_report.blade.php deleted file mode 100755 index f6a4a4ce..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/002/out_patient_register_report.blade.php +++ /dev/null @@ -1,242 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -

    Out patient register report 1

    -
    -
    - -
    -
    - -
    -
    -
    - -
    -
    -     -
    - -
    -
    -
    -

    - -
    - @include('flash::message') -

    OUT PATIENT REGISTER(HMIS 031) - PAGE 1

    - -
    -
    - - {{ Form::open(['url' => 'out_patient_register_report','data-toggle'=>'validator']) }} - - search to view results - - - - - - - - - {{ Form::close() }} -
    Select a date:
    - {{ Form::text('filter_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-from']) }} -
    - {{ Form::submit('Search',['class' => 'btn btn-success btn-sm','name' => 'date_filter']) }} -
    -
    - -
    - - - - - - - - - - - - - -
    HEALTH UNIT:{{ $hospital_information->name }}
    Date :{{ streamline_date($filtering_date) }}
    No of patients:{{ count($episodes_results) }}
    -
    - -
    -
    -
    -
    -
    - -
    - -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - @if(count($episodes_results) > 0) - @foreach($episodes_results as $result) - - - - - - - - - - - - - - - - - - - - - - @endforeach - @else - - - - @endif - -
    SerialName Of PatientResidenceAge - - SexMUACBMIBlood PressureNext Of KinClassification -
    WeightWeight For Age Z Score
    Village, Parish, Subcounty, District Height/LengthHeight/Length For Age Z ScoreBlood Sugar
    {{ $result->id }}{{ $result->first_name }} {{ $result->last_name }}{{ patient_residence($result->patient_id) }} - date_of_birth, $today); - $age_days = $difference[0]; - $age_months = $difference[1]; - $age_years = $difference[2]; - - if (between($age_days, 0, 28) && between($age_months, 0, 0) && between($age_years, 0, 0)): - echo "0 - 28 Days"; - elseif (between($age_days, 0, 31) && between($age_months, 0, 12) && between($age_years, 0, 5)): - echo "28 days - 4 years"; - elseif (between($age_days, 0, 31) && between($age_months, 0, 12) && between($age_years, 5, 59)): - echo "5 - 59 years"; - elseif (between($age_days, 0, 31) && between($age_months, 0, 12) && between($age_years, 59, 140)): - echo " > 60 years"; - endif; - ?> - {{ $result->gender == 1 ? 'Male' : 'Female' }}   - observations); - $hmis_observations = array(); - foreach ($observations as $key => $value): - $values = explode('=', $value); - if ($values[0] == 'MUAC' || $values[0] == 'Weight' || $values[0] == 'Height' || $values[0] == 'BMI' || $values[0] == 'Systolic bp' || $values[0] == 'Diastolic bp'): - $hmis_observations[$values[0]] = $values[1]; - else: - continue; - endif; - endforeach; - ?> - {{ isset($hmis_observations['MUAC']) ? $hmis_observations['MUAC'].'cm' : ""}} - {{ isset($hmis_observations['BMI']) ? $hmis_observations['BMI'] : "" }}{{ isset($hmis_observations['Systolic bp']) && isset($hmis_observations['Diastolic bp']) ? $hmis_observations['Systolic bp'] . '/' . $hmis_observations['Diastolic bp'] . 'mmHg' : "" }}{{ ucwords($result->next_of_kin) }}{{ $result->new_attendance != null ? 'New atttendace' : 'Re attendance'}}
    {{ isset($hmis_observations['Weight(Kg)']) ? $hmis_observations['Weight(Kg)'] . "kg" : "" }}
    {{ isset($hmis_observations['Height(m)']) ? $hmis_observations['Height(m)'] . "m" : "" }}  
    No - records available -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush - - - diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/002/out_patient_register_report_2.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/002/out_patient_register_report_2.blade.php deleted file mode 100755 index fa774923..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/002/out_patient_register_report_2.blade.php +++ /dev/null @@ -1,255 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -

    Out patient register report 2

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -     -
    -
    -
    -
    -

    - -
    - @include('flash::message') -

    OUT PATIENT REGISTER(HMIS 031) PAGE 2

    - -
    -
    - - {{ Form::open(['url' => 'out_patient_register_report_2','data-toggle'=>'validator']) }} - - search to view results - - - - - - - - - {{ Form::close() }} -
    Select a date:
    - {{ Form::text('filter_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-from']) }} -
    - {{ Form::submit('Search',['class' => 'btn btn-success btn-sm','name' => 'date_filter']) }} -
    -
    - -
    - - - - - - - - - - - - - -
    HEALTH UNIT:{{ $hospital_information->name }}
    Date :{{ streamline_date($filtering_date) }}
    No of patients:{{ count($episodes_results) }}
    -
    - -
    -
    -
    -
    -
    - -
    - -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @if(count($episodes_results) > 0) - @foreach($episodes_results as $results) - - - - - - - - - - - - - - - - - - - - @endforeach - @endif - -
    Serial Malaria TestTB     
    Tobacco useFeverTests DoneResultsNew Presumed TB CasePatient Sent To The LabLab TB ResultLink Ro TB ClinicNew DiagnosisDrugs/TreatmentDisabilityRef. In NumRef. Out Num
    Alcohol use
    {{ $results->id }} - observations); - $hmis_observations = array(); - foreach ($observations as $key => $value): - $values = explode('=', $value); - if ($values[0] == 'Alcohol use' || $values[0] == 'Tobacco use'): - $hmis_observations[$values[0]] = $values[1]; - else: - continue; - endif; - endforeach; - echo empty($hmis_observations['Tobacco use']) ? '' : 'Tobacco -' . $hmis_observations['Tobacco use']; - ?> -   -
      - id, 'episode_id', 'investigation_id', 'investigation_results'); - if ($investigations != "N/A") { - $investigations_query = "SELECT name from investigations WHERE id IN ({$investigations})"; - $investigation_query_results = \DB::select($investigations_query); - foreach ($investigation_query_results as $result) { - echo "
    • ". $result->name ."
    • "; - } - } - ?> -
    -
    -
      - id, 'episode_id', 'value', 'investigation_results')); - for ($x = 1; $x < count($inv_values); $x++): - echo "
    • {$inv_values[$x]}
    • "; - endfor; - ?> -
    -
         - id, 'episode_id', 'primary_diagnosis', 'consultations'); - $diagnosis_name = get_name($primary_diagnosis_id, 'id', 'name', 'diagnoses'); - echo $diagnosis_name; - ?> - - id, 'episode_id', 'drugs', 'treatments'); - $drugs_query = "SELECT name from drugs WHERE id IN({$drug_ids})"; - $drugs_query_result = \DB::select($drugs_query); - foreach ($drugs_query_result as $result) { - echo "
  • ".$result->name."
  • "; - } - ?> -
      {{ get_name($results->patient_id, 'id', 'number', 'patients') }}
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush - - - diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/002/page-1-print.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/002/page-1-print.blade.php deleted file mode 100755 index 5acbdcd8..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/002/page-1-print.blade.php +++ /dev/null @@ -1,277 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'HMIS Report 002 - Stre@mline') }} - - - - - - - - - -
    - Responsive image -

    HMIS OPD 002: OUTPATIENT REGISTER

    - - - @php $counter = 1; $month1 = ''; @endphp -
    -
    - - - - - - - - - - -
    {{ __('hmis_reports.health_unit') }} : {{ $hospital_info->name }}
    {{ __('hmis_reports.subcounty') }} : {{ get_name($hospital_info->sub_county,'id', 'name', 'subcounties') }}
    {{ __('hmis_reports.district') }} : {{ get_name($hospital_info->district,'id', 'name', 'districts') }}
    -
    -
    - - - - - - - - - - -
    {{ __('hmis_reports.code') }} : {{ $hospital_info->code }}
    {{ __('hmis_reports.level') }} : {{ $hospital_info->level }}
    {{ __('hmis_reports.health_sub_district') }} : {{ $hospital_info->sub_district }}
    -
    -
    - - - - - - - - - - -
    {{ __('hmis_reports.reporting_period') }}
    {{ __('hmis_reports.date_opened') }}:  {{ streamline_date($start_date) }}
    {{ __('hmis_reports.date_closed') }}:    {{ streamline_date($end_date) }}
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @if(count($episodes) > 0) - - @foreach($episodes as $episode) - @if (!empty($episode->consultation_id) || !empty($episode->triage_id)) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - {{-- Height/ Length for Age Z Score (N/S/SS) --}} - {{-- Blood sugar --}} - - - - - - - - @endif - @endforeach - - @else - - - - - - @endif -
    Serial NoNINNameAgeSex - Client
    Category
    -
    ResidenceNext Of Kin NameNutrition AssessmentBlood
    - Pressure
    - (mmHg) -
    - Need For Palliative
    Care (✓/X)
    - -
    Tobacco Use
    MUAC (cm +(R/Y/G/ND)BMI (SM/MM/N/ OW/O)W/H Or L
    - Score
    - (Z Score) -
    BMI For Age
    - (SM/M/N/OW/O) -
    Weight (Kg)Weight For Age Z Score
    - (SU/U/N/OW/O) -
    Blood Sugar
    - (mm/l) -
    Tobacco
    - Exposure -
    (N/R/F)Height/ Length
    - (cm) -
    Height/ Length for Age Z
    - Score (N/S/SS) -
    Alcohol Use
    - {{-- {{ $episode->id }} --}} - {{ sprintf("%04u", $counter) }} - {{ strtoupper($episode->national_id) }}{{ ucwords(strtolower($episode->last_name)) }} - @php - $month2 = date('Y-m', strtotime($episode->created_at)); - if (empty($month1) || $month1 === $month2) $counter++; - else $counter = 1; - $dateOfBirth = \Carbon\Carbon::parse($episode->date_of_birth); - $diffInDays = $dateOfBirth->diffInDays(\Carbon\Carbon::now()); - if($diffInDays < 30) $age = $diffInDays .' Days'; - elseif ($diffInDays > 29 && $diffInDays < 365) $age = $dateOfBirth->diffInMonths(\Carbon\Carbon::now()) .' MTH'; - else $age = $dateOfBirth->diffInYears(\Carbon\Carbon::now()) .' Yrs'; - echo $age; $month1 = date('Y-m', strtotime($episode->created_at)); - @endphp - - gender; - - if ($gender == 1): - echo 'M'; - elseif ($gender == 2): - echo 'F'; - endif; - ?> - {{ ($episode->citizenship == '1')? 'N':'F' }}{{ ucwords(strtolower($episode->village)) }}{{ ucwords(strtolower($episode->next_of_kin)) }} - @php - $observations = explode(',', $episode->observations); - $hmis_observations = []; - - foreach ($observations as $key => $value){ - $values = explode('=', $value); - $hmis_observations[$values[0]] = $values[1] ?? ''; - } - $muac =$hmis_observations['MUAC']?? ''; - @endphp - {{ isset($hmis_observations['MUAC']) ? $hmis_observations['MUAC'].' cm' : "ND"}} - @if ((12.5 <= $muac) && ($muac <= 50)) -

    G

    - @elseif ((11.5 <= $muac) && ($muac <= 12.4)) -

    Y

    - @elseif ((1 <= $muac) && ($muac <= 11.4)) -

    R

    - @endif -
    {{ !empty($hmis_observations['BMI'])? $hmis_observations['BMI']:"ND" }} - {{ isset($hmis_observations['Systolic bp']) && isset($hmis_observations['Diastolic bp']) ? $hmis_observations['Systolic bp'] . '/' . $hmis_observations['Diastolic bp'] . ' mmHg' : "ND" }} -   - {{-- {{ $hmis_observations['Tobacco use'] ?? "" }} --}} - @if (isset($hmis_observations['Tobacco use'])) - @if ($hmis_observations['Tobacco use'] == 'Nil') - No - {{-- --}} - @else - Yes - {{-- --}} - @endif - @else - ND - @endif -
    {{ ucwords(strtolower($episode->first_name)) }}{{ ucwords(strtolower($episode->parish)) }}{{ ucwords(strtolower($episode->phone_of_next_of_kin)) }} {{-- Tobacco Exposure --}} - @if (isset($hmis_observations['Tobacco use'])) - @if ($hmis_observations['Tobacco use'] == 'Nil') - No - {{-- --}} - @else - Yes - {{-- --}} - @endif - @else - ND - @endif -
    {{ $episode->phone }}{{ ucwords(strtolower($episode->subcounty)) }}{{ ucwords(strtolower($episode->relation)) }} - {{ isset($hmis_observations['Weight']) ? $hmis_observations['Weight'] . " kg" : "" }} - {{ !empty($episode->rbs)? $episode->rbs :'ND' }} - @if (isset($hmis_observations['Alcohol use'])) - @if ($hmis_observations['Alcohol use'] == 'Nil') - No - {{-- --}} - @else - Yes - {{-- --}} - @endif - @else - ND - @endif -
    {{ ucwords(strtolower($episode->district)) }} - {{ isset($hmis_observations['Height']) ? $hmis_observations['Height'] . " m" : "" }} -  
    No records available
    - -
    - - diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/002/page-1.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/002/page-1.blade.php deleted file mode 100755 index 2898bef4..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/002/page-1.blade.php +++ /dev/null @@ -1,421 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - - -@section('content') -
    -
    -

    HMIS OPD 002 : OUTPATIENT REGISTER

    -
    -
    - -
    -
    -
    -
    -
    -

    - HMIS OPD 002: OUTPATIENT REGISTER PAGE 1 -

    -
    - - {{ Form::open(['method' => 'POST', 'route' => 'hmis_report_002_page_2', 'target' => "_blank"]) }} - - - -
    - -
    - {{ Form::close() }} - -
    - -
    -
    - - - - - - - - - - -
    {{ __('hmis_reports.health_unit') }} : {{ $hospital_info->name }}
    {{ __('hmis_reports.subcounty') }} : {{ get_name($hospital_info->sub_county,'id', 'name', 'subcounties') }}
    {{ __('hmis_reports.district') }} : {{ get_name($hospital_info->district,'id', 'name', 'districts') }}
    -
    -
    - - - - - - - - - - -
    {{ __('hmis_reports.code') }} : {{ $hospital_info->code }}
    {{ __('hmis_reports.level') }} : {{ $hospital_info->level }}
    {{ __('hmis_reports.health_sub_district') }} : {{ $hospital_info->sub_district }}
    -
    -
    - - - - - - - - - - -
    {{ __('hmis_reports.reporting_period') }}
    {{ __('hmis_reports.date_opened') }}:  {{ streamline_date($start_date) }}
    {{ __('hmis_reports.date_closed') }}:    {{ streamline_date($end_date) }}
    - -
    -
    - - {{ Form::open(['url' => 'hmis/002/page-1','data-toggle'=>'validator']) }} - -
    -
    -
    - - -
    -
    - - - - - -
    {{ Form::submit('Search',['class' => 'btn btn-success','name' => 'date_filter', "style"=>"border-radius: 5px;"]) }}
    -
    - - {{ Form::close() }} - -

    - -

    - -
    - @php $counter = 1; $month1 = ''; $episode_counter = 0; @endphp - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @if(count($episodes) > 0) - - @foreach($episodes as $episode) - @if (!empty($episode->consultation_id) || !empty($episode->triage_id)) - - - - - - - - - - - - {{-- W/H Or L Score (Z Score) --}} - - {{-- Palliative care --}} - - - - - - - {{-- BMI For Age (SM/M/N/OW/O) --}} - - - - - - - - {{-- Height/ Length for Age Z Score (N/S/SS) --}} - {{-- Blood sugar --}} - - - - - - {{-- Height/ Length for Age Z Score (N/S/SS) --}} - - @endif - @endforeach - @if ($episode_counter == 0) - - - - @endif - - @else - - - - - - @endif -
    Serial NoNINNameAgeSex - Client
    Category
    -
    ResidenceNext Of Kin NameNutrition AssessmentBlood
    - Pressure
    - (mmHg) -
    - Need For Palliative
    Care (✓/X)
    - -
    Tobacco Use
    MUAC (cm +(R/Y/G/ND)BMI (SM/MM/N/ OW/O)W/H Or L
    - Score
    - (Z Score) -
    BMI For Age
    - (SM/M/N/OW/O) -
    Weight (Kg)Weight For Age Z Score
    - (SU/U/N/OW/O) -
    Blood Sugar
    - (mm/l) -
    Tobacco
    - Exposure -
    (N/R/F)Height/ Length
    - (cm) -
    Height/ Length for Age Z
    - Score (N/S/SS) -
    Alcohol Use
    - {{ sprintf("%04u", $counter) }} - {{ strtoupper($episode->national_id) }}{{ ucwords(strtolower($episode->last_name)) }} - @php - $month2 = date('Y-m', strtotime($episode->created_at)); - if (empty($month1) || $month1 === $month2) $counter++; - else $counter = 1; - $dateOfBirth = \Carbon\Carbon::parse($episode->date_of_birth); - $diffInDays = $dateOfBirth->diffInDays(\Carbon\Carbon::now()); - if($diffInDays < 30) $age = $diffInDays .' Days'; - elseif ($diffInDays > 29 && $diffInDays < 365) $age = $dateOfBirth->diffInMonths(\Carbon\Carbon::now()) .' MTH'; - else $age = $dateOfBirth->diffInYears(\Carbon\Carbon::now()) .' Yrs'; - echo $age; - $month1 = date('Y-m', strtotime($episode->created_at)); - $episode_counter++; - @endphp - - - gender; - - if ($gender == 1): - echo 'M'; - elseif ($gender == 2): - echo 'F'; - endif; - ?> - {{ ($episode->citizenship == '1')? 'N':'F' }}{{ ucwords(strtolower($episode->village)) }}{{ ucwords(strtolower($episode->next_of_kin)) }} - @php - $observations = explode(',', $episode->observations); - $hmis_observations = []; - - foreach ($observations as $key => $value){ - $values = explode('=', $value); - $hmis_observations[$values[0]] = $values[1] ?? ''; - } - $muac =$hmis_observations['MUAC']?? ''; - @endphp - {{ !empty($hmis_observations['MUAC']) ? $hmis_observations['MUAC'].' cm ' : "ND "}} - @if ((12.5 <= $muac) && ($muac <= 50)) -

    G

    - @elseif ((11.5 <= $muac) && ($muac <= 12.4)) -

    Y

    - @elseif ((1 <= $muac) && ($muac <= 11.4)) -

    R

    - @endif - -
    - @php - if (!empty($hmis_observations['Height'])) { - if(intval($hmis_observations['Height']) > 4) $height = $hmis_observations['Height']; - else $height = ($hmis_observations['Height'] * 100); - } - else $height = ''; - if (!empty($hmis_observations['BMI'])) $bmi = $hmis_observations['BMI']; - elseif (!empty($height) && !empty($hmis_observations['Weight'])) $bmi = round($hmis_observations['Weight'] / pow(($height / 100), 2), 1); - else $bmi = 'ND'; - echo $bmi; - @endphp - {{-- {{ !empty($hmis_observations['BMI'])? $hmis_observations['BMI']:"ND" }} --}} - - {{ !empty($hmis_observations['Systolic bp']) && !empty($hmis_observations['Diastolic bp']) ? $hmis_observations['Systolic bp'] . '/' . $hmis_observations['Diastolic bp'] . ' mmHg' : "ND" }} -   - {{-- {{ $hmis_observations['Tobacco use'] ?? "" }} --}} - @if (!empty($hmis_observations['Tobacco use'])) - @if ($hmis_observations['Tobacco use'] == 'Nil') - - @else - - @endif - @else - ND - @endif -
    {{ ucwords(strtolower($episode->first_name)) }}{{ ucwords(strtolower($episode->parish)) }}{{ ucwords($episode->phone_of_next_of_kin) }} {{-- Tobacco Exposure --}} - @if (!empty($hmis_observations['Tobacco use'])) - @if ($hmis_observations['Tobacco use'] == 'Nil') - - @else - - @endif - @else - ND - @endif -
    {{ $episode->phone }}{{ ucwords(strtolower($episode->subcounty)) }}{{ ucwords(strtolower($episode->relation)) }} - {{ isset($hmis_observations['Weight']) ? $hmis_observations['Weight'] . " kg" : "" }} - {{ !empty($episode->rbs)? $episode->rbs :'ND' }} - @if (!empty($hmis_observations['Alcohol use'])) - @if ($hmis_observations['Alcohol use'] == 'Nil') - - @else - - @endif - @else - ND - @endif -
    {{ ucwords(strtolower($episode->district)) }} {{ !empty($height)? $height .' cm': $height }}  
    No records available
    No records available
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush - - - diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/002/page-2-print.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/002/page-2-print.blade.php deleted file mode 100755 index 3dd5e337..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/002/page-2-print.blade.php +++ /dev/null @@ -1,324 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'HMIS Report 002 - Stre@mline') }} - - - - - - - - - -
    - Responsive image -

    HMIS OPD 002: OUTPATIENT REGISTER

    - @php - $counter = 1;$str_length = 3; - @endphp -
    -
    - - - - - - - - - - -
    {{ __('hmis_reports.health_unit') }} : {{ $hospital_info['name'] }}
    {{ __('hmis_reports.subcounty') }} : {{ get_name($hospital_info['sub_county'],'id', 'name', 'subcounties') }}
    {{ __('hmis_reports.district') }} : {{ get_name($hospital_info['district'],'id', 'name', 'districts') }}
    -
    -
    - - - - - - - - - - -
    {{ __('hmis_reports.code') }} : {{ $hospital_info['code'] }}
    {{ __('hmis_reports.level') }} : {{ $hospital_info['level'] }}
    {{ __('hmis_reports.health_sub_district') }} : {{ $hospital_info['sub_district'] }}
    -
    -
    - - - - - - - - - - -
    {{ __('hmis_reports.reporting_period') }}
    {{ __('hmis_reports.date_opened') }}:  {{ streamline_date($start_date) }}
    {{ __('hmis_reports.date_closed') }}:    {{ streamline_date($end_date) }}
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @if(count($episodes) > 0) - - @foreach($episodes as $episode) - @if (!empty($episode['consultation_id']) || !empty($episode['triage_id'])) - - - - - - - {{-- Malaria Test ->fever --}} - {{-- Malaria Test ->Tests Done --}} - {{-- Malaria Test ->Results --}} - {{-- TB-> Presumed TB Case--}} - {{-- Patient Sent To The Lab For TB testing --}} - {{-- Lab. TB Result --}} - {{-- TB->Linked To TB Clinic --}} - - - @php - $drug_names= $diagnoses = []; - if(!empty($episode['primary_diagnosis'])) $diagnoses[] = get_name($episode['primary_diagnosis'], 'id', 'name', 'diagnoses'); - if(!empty($episode['other_diagnoses'])) { - $other_diagnoses = unserialize($episode['other_diagnoses']); - foreach ($other_diagnoses as $diagnosis) $diagnoses[] = get_name($diagnosis, 'id', 'name', 'diagnoses'); - } - if (!empty($episode['right_eye_diagnosis'])) { - $right_eye_diagnoses = explode(',', $episode['right_eye_diagnosis']); - foreach ($right_eye_diagnoses as $diagnosis) $diagnoses[] = get_name($diagnosis, 'id', 'name', 'diagnoses'); - } - if (!empty($episode['left_eye_diagnosis'])) { - $left_eye_diagnoses = explode(',', $episode['left_eye_diagnosis']); - foreach ($left_eye_diagnoses as $diagnosis) $diagnoses[] = get_name($diagnosis, 'id', 'name', 'diagnoses'); - } - - if(!empty($episode['drugs'])) { - $drugs =explode(',', $episode['drugs']); - $frequencies = explode(',', $episode['frequencies']); - $durations = explode(',', $episode['durations']); - $dose_explode = explode(",", $episode['doses']); - for($i=0; $i < count($drugs); $i++) { - $unit_id = get_name($drugs[$i], 'id', 'unit_id', 'drugs'); - $unit_name = get_name($unit_id, 'id', 'name', 'drug_units'); - $drug_names[]= ucwords(strtolower(get_name($drugs[$i], 'id' , 'name' , 'drugs'))) .' ( ' . $dose_explode[$i] . $unit_name . ' To be taken '.get_name($frequencies[$i], 'id' , 'name' , 'dosage_frequencies').' for '.$durations[$i] . ')'; - } - } - @endphp - {{-- Diagnosis --}} - {{-- Prescription --}} - {{-- Disability (Write code of disability) --}} - {{-- Ref. In No. --}} - {{-- Ref. Out No. --}} - - - - {{-- Screened For HIV (Y/N) --}} - {{-- Linked To TB Clinic ->(Yes/No) --}} - - - - {{-- Eligible For HIV Testing (Y/N) --}} - {{-- Linked To TB Clinic ->(Where) --}} - - - {{-- TB empty space --}} - {{-- TB-> Unit TB No. --}} - - @endif - @endforeach - - @else - - - - - - @endif -
    Serial NoNINNameAgeSexMalaria TestTBTicket ClassificationDiagnosisPrescriptionDisability (Write code of disability)Ref. In No.Ref. Out No
    Fever (Yes/No)Tests Done (B/S. RDT/ND)Results (POS/NEG/N/A)Presumed TB Case
    (Y/N)
    Patient Sent To The Lab For TB testing (Y/N)Lab. TB Result (POS/ NEG/ NA)Linked To TB ClinicNew AttendanceRe - Attendance
    Screened For HIV (Y/N)(Yes/No)
    Eligible For HIV Testing (Y/N)Where
    Unit TB No.
    - {{ sprintf("%04u", $counter) }} - {{ strtoupper($episode['national_id']) }}{{ ucwords(strtolower($episode['last_name'])) }} - @php - $month2 = date('Y-m', strtotime($episode['created_at'])); - if (empty($month1) || $month1 === $month2) $counter++; - else $counter = 1; - $dateOfBirth = \Carbon\Carbon::parse($episode['date_of_birth']); - $diffInDays = $dateOfBirth->diffInDays(\Carbon\Carbon::now()); - if($diffInDays < 30) $age = $diffInDays .' Days'; - elseif ($diffInDays > 29 && $diffInDays < 365) $age = $dateOfBirth->diffInMonths(\Carbon\Carbon::now()) .' MTH'; - else $age = $dateOfBirth->diffInYears(\Carbon\Carbon::now()) .' Yrs'; - echo $age; $month1 = date('Y-m', strtotime($episode['created_at'])); - @endphp - - - - @php - $triage_symptoms = !empty($episode['symptoms'])? explode(',', $episode['symptoms']):[]; - $consultation_symptoms = !empty($episode['symps'])? explode(',', $episode['symps']):[]; - $symptoms = []; - foreach ($triage_symptoms as $triage_symptom) if (!empty($triage_symptom)) $symptoms[] =$triage_symptom; - foreach ($consultation_symptoms as $consultation_symptom) if (!empty($consultation_symptom)) $symptoms[] =$consultation_symptom; - @endphp - @if (array_intersect($symptoms, $fever_symptom_ids)) - Y - @else - No - @endif - - @if (!empty($episode['investigation_ids'])) - @php - $rdt = $bs = $tb = $bs_result = $tb_result = [];$inv_result=''; - $investigation_ids = explode(',', $episode['investigation_ids']); - foreach ($investigation_ids as $investigation_id) { - if (in_array($investigation_id, array_keys($investigations))) { - if($investigations[$investigation_id] == 1) array_push($tb, $investigation_id); - elseif($investigations[$investigation_id] == 2) array_push($rdt, $investigation_id); - else array_push($bs, $investigation_id); - $results = Streamline\Models\InvestigationResults::whereRaw('FIND_IN_SET(' . $investigation_id . ',investigation_id)')->where([['episode_id', $episode['id']], ['patient_id', $episode['patient_id']]])->orderBy('id', 'DESC')->first(['id','investigation_id','value']); - if (!empty($results)) { - $ids = explode(',', $results->investigation_id); - $values = explode(',', $results->value); - $id = array_search($investigation_id, $ids); - $inv_result = strtolower($values[$id]); - } - } - } - @endphp - @endif - @if (!empty($rdt) || !is_null($episode['rdt'])) - RDT - @elseif(!empty($bs)) - B/S - @else - ND - @endif - - @if (!is_null($episode['rdt']) || !empty($rdt)) - @if (!empty($episode['rdt']) ||((!empty($rdt) && !empty($inv_result)) && (str_contains($inv_result, 'pos') || $inv_result == '+'|| $inv_result == '++'|| $inv_result == '+++'))) - POS - @elseif($episode['rdt'] == 0 || (!empty($inv_result) && (str_contains($inv_result, 'neg') || $inv_result == '-'))) - NEG - @endif - @elseif (!empty($bs) && !empty($inv_result)) - {{ $inv_result }} - @else - N/A - @endif - - @if (!empty($episode['tb_status_assessment']) && ($episode['tb_status_assessment'] == '1' || $episode['tb_status_assessment'] == '2')) - Y - @else - N - @endif - - @if (!empty($tb)) - Y - @else - N - @endif - - @if (!empty(!empty($tb) && !empty($inv_result))) - {{ $inv_result }} - @else - N/A - @endif - - {{ (!empty($episode['clinic_id']) && in_array($episode['clinic_id'], $tb_clinic_ids))? 'Yes':'No' }} - - @if ($episode['new_attendance'] == 1 || $episode['attendance'] == 1) - - @else - - @endif - - @if ($episode['re_attendance'] == 1 || $episode['attendance'] == 2) - - @else - - @endif - - @if (!empty($diagnoses)) - {{ ucwords(strtolower(implode(', ', $diagnoses))) }}. - @else - ND - @endif - - @if (!empty($drug_names)) - {!! implode('

    ', $drug_names) !!}. - @else - N/A - @endif -
    - @if (!empty($episode['referred_to'])) - {{ $episode['number'] }} - @endif -
    {{ ucwords(strtolower($episode['first_name'])) }}
    {{ $episode['phone'] }}
    No records available
    - -
    - - diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/002/page-2.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/002/page-2.blade.php deleted file mode 100755 index a270ca62..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/002/page-2.blade.php +++ /dev/null @@ -1,466 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush -@php - $counter = 1;$str_length = 3; $episode_counter = 0; -@endphp - -@section('content') -
    -
    -

    HMIS OPD 002 : OUTPATIENT REGISTER

    -
    -
    - -
    -
    -
    -
    -
    -

    - HMIS OPD 002: OUTPATIENT REGISTER PAGE 2 -

    -
    -
    - {{ Form::open(['url' => 'hmis/002/page-2/print','data-toggle'=>'validator', 'target'=>"_blank"]) }} - {{ Form::hidden('search_text', $search_text) }} - {{ Form::hidden('episodes', serialize(($episodes->toArray()))) }} - {{ Form::hidden('start_date', $start_date) }} - {{ Form::hidden('end_date', $end_date) }} - {{ Form::hidden('hospital_info', serialize($hospital_info->toArray())) }} - {{ Form::hidden('fever_symptom_ids', serialize($fever_symptom_ids)) }} - {{ Form::hidden('tb_clinic_ids', serialize($tb_clinic_ids)) }} - {{ Form::hidden('investigations', serialize($investigations)) }} - - {{ Form::close() }} -
    - -
    - Page 1 -
    -
    -
    -
    - - - - - - - - - - -
    {{ __('hmis_reports.health_unit') }} : {{ $hospital_info->name }}
    {{ __('hmis_reports.subcounty') }} : {{ get_name($hospital_info->sub_county,'id', 'name', 'subcounties') }}
    {{ __('hmis_reports.district') }} : {{ get_name($hospital_info->district,'id', 'name', 'districts') }}
    -
    -
    - - - - - - - - - - -
    {{ __('hmis_reports.code') }} : {{ $hospital_info->code }}
    {{ __('hmis_reports.level') }} : {{ $hospital_info->level }}
    {{ __('hmis_reports.health_sub_district') }} : {{ $hospital_info->sub_district }}
    -
    -
    - - - - - - - - - - -
    {{ __('hmis_reports.reporting_period') }}
    {{ __('hmis_reports.date_opened') }}:  {{ streamline_date($start_date) }}
    {{ __('hmis_reports.date_closed') }}:    {{ streamline_date($end_date) }}
    - -
    -
    - - {{ Form::open(['url' => 'hmis/002/page-2','data-toggle'=>'validator']) }} - -
    -
    -
    - - -
    -
    - - - - - -
    {{ Form::submit('Search',['class' => 'btn btn-success mt-3','name' => 'date_filter']) }}
    -
    - - {{ Form::close() }} - -

    - -

    - -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - {{-- --}} - - - - - - - - {{-- --}} - - - - - @if(count($episodes) > 0) - @foreach($episodes as $episode) - @if (!empty($episode->consultation_id) || !empty($episode->triage_id)) - - - - - - - {{-- Malaria Test ->fever --}} - {{-- Malaria Test ->Tests Done --}} - {{-- Malaria Test ->Results --}} - {{-- TB-> Presumed TB Case--}} - {{-- Patient Sent To The Lab For TB testing --}} - {{-- Lab. TB Result --}} - {{-- TB->Linked To TB Clinic --}} - - - @php - $drug_names= $diagnoses = []; - if(!empty($episode->primary_diagnosis)) $diagnoses[] = get_name($episode->primary_diagnosis, 'id', 'name', 'diagnoses'); - if(!empty($episode->other_diagnoses)) { - $other_diagnoses = unserialize($episode->other_diagnoses); - foreach ($other_diagnoses as $diagnosis) $diagnoses[] = get_name($diagnosis, 'id', 'name', 'diagnoses'); - } - if (!empty($episode->right_eye_diagnosis)) { - $right_eye_diagnoses = explode(',', $episode->right_eye_diagnosis); - foreach ($right_eye_diagnoses as $diagnosis) $diagnoses[] = get_name($diagnosis, 'id', 'name', 'diagnoses'); - } - if (!empty($episode->left_eye_diagnosis)) { - $left_eye_diagnoses = explode(',', $episode->left_eye_diagnosis); - foreach ($left_eye_diagnoses as $diagnosis) $diagnoses[] = get_name($diagnosis, 'id', 'name', 'diagnoses'); - } - - if(!empty($episode->drugs)) { - $drugs =explode(',', $episode->drugs); - $frequencies = explode(',', $episode->frequencies); - $durations = explode(',', $episode->durations); - $dose_explode = explode(",", $episode->doses); - for($i=0; $i < count($drugs); $i++) { - $unit_id = get_name($drugs[$i], 'id', 'unit_id', 'drugs'); - $unit_name = get_name($unit_id, 'id', 'name', 'drug_units'); - $drug_names[]= ucwords(strtolower(get_name($drugs[$i], 'id' , 'name' , 'drugs'))) .' ( ' . $dose_explode[$i] . $unit_name . ' To be taken '.get_name($frequencies[$i], 'id' , 'name' , 'dosage_frequencies').' for '.$durations[$i] . ')'; - } - } - $episode_counter++; - @endphp - {{-- Diagnosis --}} - {{-- Prescription --}} - {{-- Disability (Write code of disability) --}} - {{-- Ref. In No. --}} - {{-- Ref. Out No. --}} - - - - {{-- Screened For HIV (Y/N) --}} - {{-- Linked To TB Clinic ->(Yes/No) --}} - - - - {{-- Eligible For HIV Testing (Y/N) --}} - {{-- Linked To TB Clinic ->(Where) --}} - - - {{-- TB empty space --}} - {{-- TB-> Unit TB No. --}} - - @endif - @endforeach - @if ($episode_counter == 0) - - - - @endif - @else - - - - @endif - -
    Serial NoNINNameAgeSexMalaria TestTBTicket ClassificationDiagnosisPrescriptionDisability (Write code of disability)Ref. In No.Ref. Out No
    Fever (Yes/No)Tests Done (B/S. RDT/ND)Results (POS/NEG/N/A)Presumed TB Case
    (Y/N)
    Patient Sent To The Lab For TB testing (Y/N)Lab. TB Result (POS/ NEG/ NA)Linked To TB Clinic (Yes/No)New AttendanceRe - Attendance
    Screened For HIV (Y/N)(Yes/No)
    Eligible For HIV Testing (Y/N)Where
    Unit TB No.
    - {{ sprintf("%04u", $counter) }} - {{ strtoupper($episode->national_id) }}{{ ucwords(strtolower($episode->last_name)) }} - @php - $month2 = date('Y-m', strtotime($episode->created_at)); - if (empty($month1) || $month1 === $month2) $counter++; - else $counter = 1; - $dateOfBirth = \Carbon\Carbon::parse($episode->date_of_birth); - $diffInDays = $dateOfBirth->diffInDays(\Carbon\Carbon::now()); - if($diffInDays < 30) $age = $diffInDays .' Days'; - elseif ($diffInDays > 29 && $diffInDays < 365) $age = $dateOfBirth->diffInMonths(\Carbon\Carbon::now()) .' MTH'; - else $age = $dateOfBirth->diffInYears(\Carbon\Carbon::now()) .' Yrs'; - echo $age; $month1 = date('Y-m', strtotime($episode->created_at)); - @endphp - - gender; - - if ($gender == 1): - echo 'M'; - elseif ($gender == 2): - echo 'F'; - endif; - ?> - - @php - $triage_symptoms = !empty($episode->symptoms)? explode(',', $episode->symptoms):[]; - $consultation_symptoms = !empty($episode->symps)? explode(',', $episode->symps):[]; - $rdt = $bs = $tb = $bs_result = $tb_result = [];$inv_result=''; - $symptoms = []; - foreach ($triage_symptoms as $triage_symptom) if (!empty($triage_symptom)) $symptoms[] =$triage_symptom; - foreach ($consultation_symptoms as $consultation_symptom) if (!empty($consultation_symptom)) $symptoms[] =$consultation_symptom; - @endphp - @if (array_intersect($symptoms, $fever_symptom_ids)) - Y - @else - No - @endif - - @if (!empty($episode->investigation_ids)) - @php - $investigation_ids = explode(',', $episode->investigation_ids); - foreach ($investigation_ids as $investigation_id) { - if (in_array($investigation_id, array_keys($investigations))) { - if($investigations[$investigation_id] == 1) array_push($tb, $investigation_id); - elseif($investigations[$investigation_id] == 2) array_push($rdt, $investigation_id); - elseif($investigations[$investigation_id] == 3) array_push($bs, $investigation_id); - $results = Streamline\Models\InvestigationResults::whereRaw('FIND_IN_SET(' . $investigation_id . ',investigation_id)')->where([['episode_id', $episode->id], ['patient_id', $episode->patient_id]])->orderBy('id', 'DESC')->first(['id','investigation_id','value']); - if (!empty($results)) { - $ids = explode(',', $results->investigation_id); - $values = explode(',', $results->value); - $id = array_search($investigation_id, $ids); - $inv_result = strtolower($values[$id]); - } - } - } - @endphp - @endif - @if (!empty($rdt) || !is_null($episode->rdt)) - RDT - @elseif(!empty($bs)) - B/S - @else - ND - @endif - - @if (!is_null($episode->rdt) || !empty($rdt)) - @if (!empty($episode->rdt) || ((!empty($rdt) && !empty($inv_result)) && (preg_match('/pos/i', $inv_result) || $inv_result == '+'|| $inv_result == '++'|| $inv_result == '+++'))) - POS - @elseif($episode->rdt == 0 || (!empty($inv_result) && (str_contains($inv_result, 'neg') || $inv_result == '-'))) - NEG - @endif - @elseif (!empty($bs) && !empty($inv_result)) - {{ $inv_result }} - @else - N/A - @endif - - @if (!empty($episode->tb_status_assessment) && ($episode->tb_status_assessment == '1' || $episode->tb_status_assessment == '2')) - Y - @else - N - @endif - - @if (!empty($tb)) - Y - @else - N - @endif - - @if (!empty(!empty($tb) && !empty($inv_result))) - {{ $inv_result }} - @else - N/A - @endif - - {{ (!empty($episode->clinic_id) && in_array($episode->clinic_id, $tb_clinic_ids))? 'Yes':'No' }} - - @if ($episode->new_attendance == 1 || $episode->attendance == 1) - - @else - - @endif - - @if ($episode->re_attendance == 1 || $episode->attendance == 2) - - @else - - @endif - - @if (!empty($diagnoses)) - {{ ucwords(strtolower(implode(', ', $diagnoses))) }}. - @else - ND - @endif - - @if (!empty($drug_names)) - {!! implode('

    ', $drug_names) !!}. - @else - N/A - @endif -
    - @if (!empty($episode->referred_to)) - {{ $episode->number }} - @endif -
    {{ ucwords(strtolower($episode->first_name)) }}
    {{ $episode->phone }}
    No records available
    No records available
    -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush - - - diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/033/cases_and_deaths.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/033/cases_and_deaths.blade.php deleted file mode 100644 index 72298b1b..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/033/cases_and_deaths.blade.php +++ /dev/null @@ -1,749 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_reports.hmis_033_report') }}

    -
    - -
    -@include('flash::message') - - -
    -

    {{ __('hmis_reports.hmis_033b_title') }}

    -
    - {{ Form::open(['url' => Request::url(), 'method' => 'ANY', 'role' => 'search', 'id' => 'search_form']) }} - -
    - {{ __('hmis_reports.from') }} - - {{ __('hmis_reports.to') }} - -
    -
    - -
    - {{ Form::close() }} - - - {{ Form::open(['method' => 'POST', 'route' => 'print_hmis_033b', 'target' => "_blank"]) }} - - - - - -
    - -
    - {{ Form::close() }} -
    - -

    -
    -
    - - - - - - - - - - - - - -
    {{ __('hmis_reports.health_unit') }} : {{ $hospital_information->name }}
    {{ __('hmis_reports.subcounty') }} : {{ get_name($hospital_information->sub_county,'id', 'name', 'subcounties') }}
    {{ __('hmis_reports.parish') }} : {{ get_name($hospital_information->parish,'id', 'name', 'parishes') }}
    {{ __('hmis_reports.district') }} : {{ get_name($hospital_information->district,'id', 'name', 'districts') }}
    -
    -
    - - - - - - - - - - -
    {{ __('hmis_reports.code') }} : {{ $hospital_information->code }}
    {{ __('hmis_reports.level') }} : {{ $hospital_information->level }}
    {{ __('hmis_reports.health_sub_district') }} : {{ $hospital_information->sub_district }}
    -
    -
    - - - - - @if (!empty($week_number)) - - - - @endif - - - - - - -
    {{ __('hmis_reports.date_of_report') }}:
    Week Number: {{ $week_number }}
    From:  {{ $start }}
    To:     {{ $end }}
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - @php - $counter = 0; - @endphp - @foreach ($diagnoses_data as $diagnosis) - - - - - - - - - - @endforeach - -
    CASES AND DEATHS THIS WEEK
    1. CasesCodeTotal Cases this week2. DeathTested CasesPos (+ve) Cases
    Total Death This Week
    {{ ++$counter }}.{{ $diagnosis['name'] }}{{ $diagnosis['code'] }} - @if (!empty($diagnosis['cases'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>$diagnosis['code'].'_cases_drill' ]) }} - - {{ commas(count($diagnosis['cases'])) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($diagnosis['deaths'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>$diagnosis['code'].'_deaths_drill' ]) }} - - {{ commas(count($diagnosis['deaths'])) }} - {{ Form::close() }} - @else - 0 - @endif - N/AN/A
    -
    -
    - @if (!empty($other_diagnoses_data)) -
    -
    - - - - - - - - - - - - - - - - - - - @php - $counter = 0; - @endphp - @foreach ($other_diagnoses_data as $diagnosis) - - - - - - - - - - @endforeach - -
    Other conditions
    Cases (EPC)CodeTotal Cases this weekDeath (EPD)Tested CasesPos (+ve) Cases
    Total Death This Week
    {{ ++$counter }}.{{ $diagnosis['name'] }}{{ $diagnosis['code'] }} - @if (!empty($diagnosis['cases'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>$diagnosis['code'].'_cases_drill' ]) }} - - {{ commas(count($diagnosis['cases'])) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($diagnosis['deaths'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>$diagnosis['code'].'_deaths_drill' ]) }} - - {{ commas(count($diagnosis['deaths'])) }} - {{ Form::close() }} - @else - 0 - @endif - N/AN/A
    -
    -
    - @endif -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    OPD AND EMTCT SUMMARY
    MetricAPT
    OPD New Attendance - @if (!empty($new_attendance)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>'new_attendance_drill' ]) }} - - {{ commas(count($new_attendance)) }} - {{ Form::close() }} - @else - 0 - @endif -
    Total OPD Attendance - @if (!empty($all_attendances)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>'all_attendances_drill' ]) }} - - {{ commas(count($all_attendances)) }} - {{ Form::close() }} - @else - 0 - @endif - {{-- {{ count($all_attendances) }} --}} -
    Expected eMTCT Mothers on appt0
    eMTCT Missed appointments0
    SUMMARY OF MALARIA CASES TESTED AND TREATED
    MetricMAT
    Suspected malaria (fever)0
    Cases tested with RDT - @if (!empty($rdt_data['rdt_cases'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>'rdt_cases_drill' ]) }} - - {{ commas(count($rdt_data['rdt_cases'])) }} - {{ Form::close() }} - @else - 0 - @endif -
    RDT Positive Cases - @if (!empty($rdt_data['positive_rdt'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>'positive_rdt_drill' ]) }} - - {{ commas(count($rdt_data['positive_rdt'])) }} - {{ Form::close() }} - @else - 0 - @endif -
    Cases tested with Microscopy0
    Microscopy Positive Cases0
    Not tested cases treated0
    RDT Negative Cases Treated - @if (!empty($rdt_data['negative_rdt_treated'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>'negative_rdt_treated_drill' ]) }} - - {{ commas(count($rdt_data['negative_rdt_treated'])) }} - {{ Form::close() }} - @else - 0 - @endif -
    RDT Positive Cases Treated - @if (!empty($rdt_data['positive_rdt_treated'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>'positive_rdt_treated_drill' ]) }} - - {{ commas(count($rdt_data['positive_rdt_treated'])) }} - {{ Form::close() }} - @else - 0 - @endif -
    Microscopy Negative Cases Treated0
    Microscopy Positive Cases Treated0
    SUMMARY OF TUBERCULOSIS CASES TESTED AND TREATED DURING THE WEEK
    MetricTB
    Clients screened for TB in OPD - @if (!empty($tb_data['tb_cases'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>'tb_cases_drill' ]) }} - - {{ commas(count($tb_data['tb_cases'])) }} - {{ Form::close() }} - @else - 0 - @endif -
    Presumptive TB Cases Identified - @if (!empty($tb_data['tb_presumptive'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>'tb_presumptive_drill' ]) }} - - {{ commas(count($tb_data['tb_presumptive'])) }} - {{ Form::close() }} - @else - 0 - @endif -
    New and Relapse diagnosed and registered - @if (!empty($tb_data['def_tb'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>'def_tb_drill' ]) }} - - {{ commas(count($tb_data['def_tb'])) }} - {{ Form::close() }} - @else - 0 - @endif -
    New and Relapse TB cases started on treatment - @if (!empty($tb_data['tb_treated'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>'tb_treated_drill' ]) }} - - {{ commas(count($tb_data['tb_treated'])) }} - {{ Form::close() }} - @else - 0 - @endif -
    Bacteriologically TB cases registered0
    Bacteriologically confirmed TB cases Tested with Genexpert0
    Number of TB contacts traced and screened0
    TRACER MEDICINES - STOCK BALANCE
    MetricTRA
    ACT (Tablets) 0
    ORS (Sackets)0
    Measles Vaccine Doses0
    Amoxicillin Dispersible 250mg Tablets0
    Depot medroxy progesterone acetate (DMPA) injectable0
    IV artesunate 60 mg vials0
    Fansidar Tablets0
    RDT (Malaria) Tests0
    HIV TESTING KITS, TB, & eMTCT Drugs - STOCK BALANCE
    MetricARV
    Determine HIV 1 & 2 screening test0
    ARVs (Fixed – DC eMTCT)0
    Lopinavir / Ritonavir pellets-Pack of 120 capsules0
    Nevirapine suspension-bottle of 10 Ml/l(100ml)0
    Tenofovir / Lamivudine / Dolutegravir Packs of 30 tabs0
    RHZE Blister of 28 tablets0
    RH Blisters of 28 tablets0
    R(75) H(50) Z(150) Blisters of 28 tablets0
    INH 300mg Blisters of 28 tablets0
    NH 100mg blisters of 10 tablets0
    SUMMARY OF GENEXPERT REPORT FOR GENEXPERT SITES ONLY
    MetricGP
    No of samples tested0
    No of samples rejected0
    Total MTB detected0
    Total No. Rif R0
    No. of errors/invalid results0
    No. GeneXpert modules working0
    No of cartridges remaining0
    SUMMARY OF TPT INITIATION
    MetricTPT
    Number of Adult ART clients initiated TPT0
    Number of children and adolescents on ART who started TPT0
    Number of children 0 – 4 yrs who are contacts of TB patients eligible for TPT0
    Number of children 0 – 4 yrs who are contacts of TB patients initiated on TPT0
    -
    -
    -
    - {{--
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    SUMMARY OF MALARIA CASES TESTED AND TREATED
    Suspected malaria (fever)Cases tested with RDTRDT Positive CasesCases tested with MicroscopyMicroscopy Positive CasesNot tested cases treatedRDT Negative Cases TreatedRDT Positive Cases TreatedMicroscopy Negative Cases TreatedMicroscopy Positive Cases Treated
    MAT0000000000
    -
    -
    --}} - {{--
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    SUMMARY OF TUBERCULOSIS CASES TESTED AND TREATED DURING THE WEEK
    Clients screened for TB in OPDPresumptive TB Cases IdentifiedNew and Relapse diagnosed and registeredNew and Relapse TB cases started on treatmentBacteriologically TB cases registeredBacteriologically confirmed TB cases Tested with GenexpertNumber of TB contacts traced and screened
    TB0000000
    -
    -
    --}} - {{--
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    TRACER MEDICINES - STOCK BALANCE
    ACT (Tablets) ORS (Sackets)Measles Vaccine DosesAmoxicillin Dispersible 250mg TabletsDepot medroxy progesterone acetate (DMPA) injectableIV artesunate 60 mg vialsFansidar TabletsRDT (Malaria) Tests
    TRA00000000
    -
    -
    --}} - {{--
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    HIV TESTING KITS, TB, & eMTCT Drugs - STOCK BALANCE
    Determine HIV 1 & 2 screening testARVs (Fixed – DC eMTCT)Lopinavir / Ritonavir pellets-Pack of 120 capsulesNevirapine suspension-bottle of 10 Ml/l(100ml)Tenofovir / Lamivudine / Dolutegravir Packs of 30 tabsRHZE Blister of 28 tabletsRH Blisters of 28 tabletsR(75) H(50) Z(150) Blisters of 28 tabletsINH 300mg Blisters of 28 tabletsNH 100mg blisters of 10 tablets
    ARV0000000000
    -
    -
    --}} - {{--
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    SUMMARY OF GENEXPERT REPORT FOR GENEXPERT SITES ONLY
    No of samples testedNo of samples rejectedTotal MTB detectedTotal No. Rif RNo. of errors/invalid resultsNo. GeneXpert modules workingNo of cartridges remaining
    GP0000000
    -
    -
    --}} - {{--
    -
    - - - - - - - - - - - - - - - - - - - - - - -
    SUMMARY OF TPT INITIATION
    Number of Adult ART clients initiated TPTNumber of children and adolescents on ART who started TPTNumber of children 0 – 4 yrs who are contacts of TB patients eligible for TPTNumber of children 0 – 4 yrs who are contacts of TB patients initiated on TPT
    TPT0000
    -
    -
    --}} -
    -
    - - - -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/033/print_033b.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/033/print_033b.blade.php deleted file mode 100644 index b478e923..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/033/print_033b.blade.php +++ /dev/null @@ -1,211 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Streamline') }} - - - - - - - - - - - -
    - @php - $hospital_information = \Streamline\Models\HospitalInformation::find(1); - @endphp - - @if(is_null($hospital_information->pdf_print_header)) - Responsive image -

    - {{ $hospital_information->name . ' | ' . $hospital_information->phone_number . ' | ' . - $hospital_information->email . ' | ' . $hospital_information->address . ' ' . - $hospital_information->country }} -

    - @else - Responsive image - @endif - -
    -

    {{ __('hmis_reports.hmis_033b_title') }}

    -
    -
    - - - - @if (!empty($week_number)) - - @endif - - - -
    {{ __('hmis_reports.date_of_report') }}: Week Number: {{ $week_number }}From:  {{ $start }}To:  {{ $end }}
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - @php - $counter = 0; - @endphp - @foreach ($diagnoses_data as $diagnosis) - - - - - - - - - - @endforeach - -
    CASES AND DEATHS THIS WEEK
    1. CasesCodeTotal Cases this week2. DeathTested CasesPos (+ve) Cases
    Total Death This Week
    {{ ++$counter }}.{{ $diagnosis['name'] }}{{ $diagnosis['code'] }} - @if (!empty($diagnosis['cases'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>$diagnosis['code'].'_cases_drill' ]) }} - - {{ commas(count($diagnosis['cases'])) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($diagnosis['deaths'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>$diagnosis['code'].'_deaths_drill' ]) }} - - {{ commas(count($diagnosis['deaths'])) }} - {{ Form::close() }} - @else - 0 - @endif - 00
    -
    -
    - @if (!empty($other_diagnoses_data)) -
    -
    - - - - - - - - - - - - - - - - - - - @php - $counter = 0; - @endphp - @foreach ($other_diagnoses_data as $diagnosis) - - - - - - - - - - @endforeach - -
    Other conditions
    Cases (EPC)CodeTotal Cases this weekDeath (EPD)Tested CasesPos (+ve) Cases
    Total Death This Week
    {{ ++$counter }}.{{ $diagnosis['name'] }}{{ $diagnosis['code'] }} - @if (!empty($diagnosis['cases'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>$diagnosis['code'].'_cases_drill' ]) }} - - {{ commas(count($diagnosis['cases'])) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($diagnosis['deaths'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>$diagnosis['code'].'_deaths_drill' ]) }} - - {{ commas(count($diagnosis['deaths'])) }} - {{ Form::close() }} - @else - 0 - @endif - 00
    -
    -
    - @endif -
    - - - - - - - - - - - - - - \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/child_health_services_and_vaccination.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/child_health_services_and_vaccination.blade.php deleted file mode 100755 index 443967ab..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/child_health_services_and_vaccination.blade.php +++ /dev/null @@ -1,437 +0,0 @@ -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    2.7 CHILD HEALTH SERVICES
    6 – 11 Months12 – 59 Months5 – 14 Years
    MaleFemaleMaleFemaleMaleFemale
    CH01- Vit A supplement (1st dose)Static
    Outreach
    In school
    CH02- Vit A supplement (2nd dose)Static
    Outreach
    In school
    CH03- Dewormed (1st dose)Static
    Outreach
    In school
    CH04- Dewormed (2nd dose)Static
    Outreach
    In school
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    2.7.1 HPV VACCINATION
    Vaccination of only 10 years OLD girlsFacility(F)School(S)Community(C)
    VP01. HPV1-Dose 1
    VP02.HPV2-Dose 2
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    2.7.2 TETANUS VACCINATION (Td VACCINE)
    DosesPregnant womenNon-pregnant women
    StaticOutreachStaticOutreachImmunization In School
    TD01. Td1-Dose 1
    TD02. Td2-Dose 2
    TD03. Td3-Dose 3
    TD04. Td4-Dose 4
    TD05. Td5-Dose 5
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    2.7.3 CHILD IMMUNISATION
    DosesUnder 11-4 Years5 – 14 Years
    StaticOutreachStaticOutreachStaticOutreach
    CL01. BCG
    CL02. Protection At Birth for Td(PAB)
    CL03. Polio 0
    CL04. Polio 1
    CL05. Polio 2
    CL06. Polio 3
    CL07. IPV
    CL08. DPT-HepB+Hib 1
    CL09. DPT-HepB+Hib 2
    CL10. DPT-HepB+Hib 3
    CL11. PCV 1
    CL12. PCV 2
    CL13. PCV 3
    CL14. Rotavirus 1 Vaccine
    CL15. Rotavirus 2 Vaccine
    CL16. Measles (MR1)
    CL17. Measles 2 (MR2)
    CL18. Fully immunized by 1 year
    CL19. Number received LLIN
    - - - - - - - - - - - -
    2.7.4 VACCINE AVAILABILITY AND WASTAGE
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/exposed_infants_and_family_planning.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/exposed_infants_and_family_planning.blade.php deleted file mode 100755 index 28fad08a..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/exposed_infants_and_family_planning.blade.php +++ /dev/null @@ -1,1071 +0,0 @@ -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    2.4 EXPOSED INFANT DIAGNOSIS (EID) SERVICESNUMBER
    - ED01. Exposed Infants Tested for HIV below 18 months of age by 1st PCR - Total
    Within 2 Months
    Tested HIV+
    Tested HIV+ within 2 months
    - ED02. Exposed Infants Tested for HIV by 2nd PCR - Total
    Tested HIV+
    - ED03. Exposed Infants Tested for HIV by 3rd PCR - Total
    Tested HIV+
    - ED04. 1st DNA/PCR results returned - Total
    Results returned within 2 weeks
    Results given to caregiver
    - ED05. 2nd DNA/PCR results returned - Total
    Results returned within 2 weeks
    Results given to caregiver
    - ED06. DNA/PCR 6 weeks after cessation of breastfeeding results returned - Total
    Results returned within 2 weeks
    Results given to caregiver
    ED07.HIV exposed infants given ARV prophylaxis for the first time at mother baby care point
    - ED08. Number of HIV+ infants from EID enrolled on ART - Total
    Within 2 Months
    - ED09. HIV exposed started on CPT - Total
    Within 2 Months
    - 2.4.1 OUTCOMES OF HIV EXPOSED INFANTS REGISTERED 24 MONTHS AGO - NUMBER
    OE01.Total number of HEIs registered in the birth cohort
    OE02. HEIs that initiated ARV prophylaxis for eMTCT between 0-6 weeks in the cohort
    OE03. HEIs that received ARV prophylaxis for 12 weeks (High risk infants) in the cohort
    OE04. HEIs that received CTX prophylaxis at the age within 2 months in the cohort
    OE05. HEIs that had a 1st DNA/PCR done within 2 months
    OE06. HEIs that had a 2nd DNA/PCR at 9 months of age
    OE07. HEIs that had DNA/PCR done at 6 weeks after cessation of breastfeeding
    OE08. Number of HIV exposed infants exclusively breastfed for the first 6 completed months during the reporting period
    OE09. Number of HIV exposed infants who were reported to be breastfed up-to 1 year
    - 2.4.2 FINAL TEST RESULTS –HEI Outcomes at 24 months - NUMBER
    - OE10.Number of HIV exposed infants tested HIV positive on any DNA/PCR or rapid test - Total
    Within 2 Months
    OE11.Number of HIV exposed infants who died before 18 months of age
    OE12.Number of HIV exposed infants transferred out before 18 months of age
    OE13.Number of HIV exposed infants were lost to follow up before 18 months of age
    OE14.Number of HIV exposed infants who were discharged HIV negative on final rapid test
    OE15.Number of HEIs whose final HIV status is unknown (include in care but no test done)
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    2.6.1 CONTRACEPTIVES DISPENSEDNO. DISP AT UNITNO. DISP IN OUTREACHNO. DISP BY CBD'sNO. DISP BY PHARMARCIES / DRUG SHOPS
    CT01. Oral: Lo-Femenal (cycles)
    CT02. Oral: Microgynon (cycles)
    CT03. Oral: Ovrette or other POP (cycles)
    CT04. Oral: Levonogesteral (cycles)
    CT05. Oral: Emergency contraceptives
    CT06. Oral: Others (cycles)
    CT06. Oral: Others (cycles)
    CT07. Female condoms (pieces)
    CT08. Male condoms (pieces)
    CT09: Injectable 3 months IM (doses)
    CT10. Injectable 3 months SC (doses)
    CT11. Injectable 2 months (doses)
    CT12. Injectable 1 month (doses)
    CT13. FAM-SDM (Cycle beads) (pieces)
    CT14. IUDs–Copper T
    CT15. IUDs –Hormonal
    CT16. 3 year implant (e.g impalanon NXT, Levo plant)
    CT17. 4 year implant (e.g Sino plant)
    CT18. 5 year implant (e.g Jadella)
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    2.6.2 MINOR OPERATIONS IN FAMILY PLANNINGNumber
    MF01.Female sterilization (tubal ligation)Below 15 years
    15-19 years
    20-24 years
    25-49 years
    50+ years
    MF02. Male sterilization (vasectomy)Below 15 years
    15-19 years
    20-24 years
    25-49 years
    50+ years
    MF03. Implant removals
    MF04. IUD removals
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    2.6.3 INTEGRATED SERVICES IN FAMILY PLANNING
    Data ElementNumber
    FH01. Number HIV+ FP Users
    FH02. Number of FP Users screened for Cervical Cancer
    FH03. STI screening in Family planningTotal screened
    Positive
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    2.6.4 POST PARTUM FAMILY PLANNINGNumber
    PFH01. No of Mothers who received family planning in Postpartum byTimingLess Than 48 hours
    48hrs to 3 weeks
    4weeks to 5weeks
    6 weeks to 5 months
    6 months to 12 months
    MethodOral formulation
    Injectable
    implants
    IUDs
    Sterilization
    -
    - - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    2.5 EARLY RETENTION MONITORING FOR EMTCT WOMEN
    NUMBERNET CURRENT COHORT
    ER01. EMTCT mothers known to be active on ART treatment 1 month after ART initiation
    ER02. EMTCT mothers known to be active on ART treatment 2 months after ART initiation
    ER03. EMTCT mothers known to be active on ART treatment 3 months after ART initiation
    - * Net current Cohort=Original Cohort + Transfer In – Transfer Out -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    2.6 FAMILY PLANNING METHODSNEW USERSREVISITS
    FP01.Oral: Lo-FemenalBelow 15 years
    15-19 years
    20-24 years
    25-59 years
    50+ years
    FP02. Oral: MicrogynonBelow 15 years
    15-19 years
    20-24 years
    25-59 years
    50+ years
    FP03. Oral: Ovrette or another POPBelow 15 years
    15-19 years
    20-24 years
    25-59 years
    50+ years
    FP04. Oral: LevonogesteralBelow 15 years
    15-19 years
    20-24 years
    25-59 years
    50+ years
    FP05. Oral: OthersBelow 15 years
    15-19 years
    20-24 years
    25-59 years
    50+ years
    FP06. Injectable DMPA(IM e.g Depo)3 monthsBelow 15 years
    15-19 years
    20-24 years
    25-59 years
    50+ years
    FP07.Injectable DMPA(SC e.g Sayana press) 3 monthsBelow 15 years
    15-19 years
    20-24 years
    25-59 years
    50+ years
    FP08. Injection 2 monthsBelow 15 years
    15-19 years
    20-24 years
    25-59 years
    50+ years
    FP09. Injection 1 monthBelow 15 years
    15-19 years
    20-24 years
    25-59 years
    50+ years
    FP10. 3 year implant(e.g. implananon NXT,Levo plant)Below 15 years
    15-19 years
    20-24 years
    25-59 years
    50+ years
    FP11. 4 year implant (e.g. Sino plant)Below 15 years
    15-19 years
    20-24 years
    25-59 years
    50+ years
    FP12. 5 year implant (e.g. Jadella)Below 15 years
    15-19 years
    20-24 years
    25-59 years
    50+ years
    FP13. IUD-Copper-TBelow 15 years
    15-19 years
    20-24 years
    25-59 years
    50+ years
    FP14. IUD-HormonalBelow 15 years
    15-19 years
    20-24 years
    25-59 years
    50+ years
    FP15. FAM-SDM methodBelow 15 years
    15-19 years
    20-24 years
    25-59 years
    50+ years
    FP16. FAM-LAMBelow 15 years
    15-19 years
    20-24 years
    25-59 years
    50+ years
    FP17. FAM-Two Days MethodBelow 15 years
    15-19 years
    20-24 years
    25-59 years
    50+ years
    FP18. Emergency Contraceptive Pills usersBelow 15 years
    15-19 years
    20-24 years
    25-59 years
    50+ years
    FP19. Female condomsBelow 15 years
    15-19 years
    20-24 years
    25-59 years
    50+ years
    FP20. Male condomsBelow 15 years
    15-19 years
    20-24 years
    25-59 years
    50+ years
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/index.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/index.blade.php deleted file mode 100755 index b977d432..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/index.blade.php +++ /dev/null @@ -1,282 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('hmis_reports.hmis_105_report') }}

    -
    -
    - -
    -
    - -
    -
    -
    - @if (!empty($page)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_105.print_Hmis_105_information', 'target' => "_blank"]) }} - @if ($page == 'Outpatient Diagnoses') - - - - - - @endif - - -
    - -
    - {{ Form::close() }} - @else - {{ __('hmis_reports.print') }} - @endif - Download CSV -
    -
    -

    - -
    -
    -
    -
    -
    - @csrf() - -
    - {{ __('hmis_reports.from') }} - - {{ __('hmis_reports.to') }} - - {{ __('hmis_reports.report_type') }} - -
    -
    -
    - -
    -
    - -
    -
    -
    - @include('flash::message') -

    {{ __('hmis_reports.hmis_105') }}

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    {{ __('hmis_reports.health_unit') }}{{ $hospital_information->name }}
    {{ __('hmis_reports.district') }}{{ get_name($hospital_information->district, 'id','name','districts') }}
    {{ __('hmis_reports.subcounty') }}{{ get_name($hospital_information->sub_county,'id','name','subcounties') }}
    {{ __('hmis_reports.code') }}{{ $hospital_information->code }}
    -
    -
    - - - - - - - - - - - - - -
    {{ __('hmis_reports.level') }}{{ $hospital_information->level }}
    {{ __('hmis_reports.health_sub_district') }}{{ $hospital_information->sub_district }}
    {{ __('hmis_reports.reporting_period') }} - {{ streamline_date($attendance_from) }} {{ __('hmis_reports.to') }} {{ streamline_date($attendance_to) }} -
    -
    -
    -
    -
    - @if (!empty($page)) -
    - {{--
    1.3 {{ __('hmis_reports.outpatient_diagnoses') }}
    --}} - {{-- @include('reports::hmis_reports.105.opd_diagnoses') --}} - @include('reports::hmis_reports.105.monthly_diagnoses') -
    - @else - -
    -
    -
    1.1 {{ __('hmis_reports.outpatient_attendance') }}
    - @include('reports::hmis_reports.105.opd_attendance') -
    -
    -
    1.2 {{ __('hmis_reports.outpatient_referrals') }}
    - @include('reports::hmis_reports.105.opd_referrals') -
    -
    - -
    - @include('reports::hmis_reports.105.tuberclosis_and_leprosy_services') -
    - -
    - @include('reports::hmis_reports.105.nutrition_services') -
    - -
    -
    -
    2.0 {{ __('hmis_reports.maternal_and_child_health_services') }}
    -
    -
    - -
    - @include('reports::hmis_reports.105.maternal_and_child_health_services') -
    - -
    - @include('reports::hmis_reports.105.maternity') -
    - -
    - @include('reports::hmis_reports.105.post_natal') -
    - -
    - @include('reports::hmis_reports.105.exposed_infants_and_family_planning') -
    - -
    - @include('reports::hmis_reports.105.child_health_services_and_vaccination') -
    - -
    - @include('reports::hmis_reports.105.lab-routine-tests') -
    - @endif -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush - - - diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/lab-routine-tests.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/lab-routine-tests.php deleted file mode 100755 index e10d1361..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/lab-routine-tests.php +++ /dev/null @@ -1,176 +0,0 @@ -
    -
    -
    10.2 LABORATORY ROUTINE TESTS
    -
    -
    - -
    -
    - - - - - - -
    10.2.1 Number of Routine Tests Done in Facility Laboratory
    -
    -
    - -
    -
    - - - - - - - - - - get(); - - foreach ($invCategories AS $invCategory): - if ($invCategory->id > 7): - continue; - endif; - ?> - - - - where('hmis_category', $invCategory->id) - ->select('id', 'name', 'hmis_no_outpatient') - ->orderBy('hmis_no_outpatient')->get(); - - foreach ($investigations as $investigation): -// Get the number of done tests - $investigation_results = DB::table('investigation_results') - ->whereRaw("CONCAT(',', investigation_id, ',') LIKE '%,{$investigation->id},%'") - ->whereBetween('created_at', [$attendance_from, $attendance_to]) - ->select('investigation_id', 'value'); - ?> - - - - - - - -
    Lab TestNumber DoneNumber Positive
    title; ?>
    hmis_no_outpatient . '. ' . $investigation->name; ?>count(); ?> - get() as $result): - - $ids = explode(',', $result->investigation_id); - $findings = explode(',', $result->value); - - $countPositive = 0; - - foreach ($ids as $key => $id): - - if ($id == $investigation->id): // Only this lab ID - - $value = strtolower($findings[$key]); - - if ( - strpos($value, 'positive') !== false || strpos($value, '+') !== false || - strpos($value, 'seen') != false - ): - $countPositive++; - endif; - - break; - endif; - - endforeach; - - endforeach; - - echo $countPositive; - ?> -
    -
    -
    - - - - - - - - - - id < 8): - continue; - endif; - ?> - - - - where('hmis_category', $invCategory->id) - ->select('id', 'name', 'hmis_no_outpatient') - ->orderBy('hmis_no_outpatient')->get(); - - foreach ($investigations as $investigation): -// Get the number of done tests - $investigation_results = DB::table('investigation_results') - ->whereRaw("CONCAT(',', investigation_id, ',') LIKE '%,{$investigation->id},%'") - ->whereBetween('created_at', [$attendance_from, $attendance_to]) - ->select('investigation_id', 'value'); - ?> - - - - - - - -
    Lab TestNumber DoneNumber Positive
    title; ?>
    hmis_no_outpatient . '. ' . $investigation->name; ?>count(); ?> - get() as $result): - - $ids = explode(',', $result->investigation_id); - $findings = explode(',', $result->value); - - $countPositive = 0; - - foreach ($ids as $key => $id): - - if ($id == $investigation->id): // Only this lab ID - - $value = strtolower($findings[$key]); - - if ( - strpos($value, 'positive') !== false || strpos($value, '+') !== false || - strpos($value, 'seen') != false - ): - $countPositive++; - endif; - - break; - endif; - - endforeach; - - endforeach; - - echo $countPositive; - ?> -
    -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/maternal_and_child_health_services.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/maternal_and_child_health_services.blade.php deleted file mode 100755 index 426e1e82..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/maternal_and_child_health_services.blade.php +++ /dev/null @@ -1,1376 +0,0 @@ -join('patients', 'ante_natal_clinic_followups.patient_id', '=', 'patients.id') - ->whereBetween('ante_natal_clinic_followups.created_at', [$attendance_from, $attendance_to]) - ->select('patients.id as patient_id', 'patients.gender', - 'patients.date_of_birth', 'ante_natal_clinic_followups.episode_id', 'ante_natal_clinic_followups.ante_natal_clinic_date', - 'ante_natal_clinic_followups.ante_natal_clinic_visit_number', - 'ante_natal_clinic_followups.checklist', 'ante_natal_clinic_followups.created_at', 'ante_natal_clinic_followups.outcome_id')->get(); - //dd($ante_natal_clinic_followups); - - foreach ($ante_natal_clinic_followups as $anc_visit) { - - $dateOfBirth = \Carbon\Carbon::parse($anc_visit->date_of_birth); - $diffYears = \Carbon\Carbon::now()->diffInYears($dateOfBirth); - - $patientId = $anc_visit->patient_id; - $gender = $anc_visit->gender; - - $checklist_array = is_null($anc_visit->checklist) ? [] : @unserialize($anc_visit->checklist); - $checklist_array = !is_array($checklist_array) ? [] : $checklist_array; - //dd($checklist_array); - - if ($diffYears < 15): #below 15 years - if ($anc_visit->ante_natal_clinic_visit_number == 1): - $below_15_years_first_visits[] = $patientId; - endif; - - if ($anc_visit->ante_natal_clinic_visit_number == 4): - $below_15_years_four_visits[] = $patientId; - endif; - - if ($anc_visit->ante_natal_clinic_visit_number > 4 && $anc_visit->ante_natal_clinic_visit_number < 8): - $below_15_years_above_four_visits_but_below_8[] = $patientId; - endif; - - if ($anc_visit->ante_natal_clinic_visit_number == 8): - $below_15_years_8_visits[] = $patientId; - endif; - - $attendances_below_15_years_visits[] = $patientId; - - if (in_array("First Dose IPT", $checklist_array)) { - $first_dose_ipt_below_15_years_visits[] = $patientId; - } - - if (in_array("Second Dose IPT", $checklist_array)) { - $second_dose_ipt_below_15_years_visits[] = $patientId; - } - - if (in_array("Third Dose IPT", $checklist_array)) { - $third_dose_ipt_below_15_years_visits[] = $patientId; - } - - if (in_array("Fourth Dose IPT", $checklist_array)) { - $fourth_dose_ipt_below_15_years_visits[] = $patientId; - } - endif; - - if ($diffYears >= 15 && $diffYears <= 19): - if ($anc_visit->ante_natal_clinic_visit_number == 1): - $between_15_to_19_years_first_visits[] = $patientId; - endif; - - if ($anc_visit->ante_natal_clinic_visit_number == 4): - $between_15_to_19_years_four_visits[] = $patientId; - endif; - - if ($anc_visit->ante_natal_clinic_visit_number > 4 && $anc_visit->ante_natal_clinic_visit_number < 8): - $between_15_to_19_years_above_four_visits_but_below_8[] = $patientId; - endif; - - if ($anc_visit->ante_natal_clinic_visit_number == 8): - $between_15_to_19_years_8_visits[] = $patientId; - endif; - - $attendances_between_15_to_19_years_visits[] = $patientId; - - if (in_array("First Dose IPT", $checklist_array)) { - $first_dose_ipt_between_15_to_19_years_visits[] = $patientId; - } - - if (in_array("Second Dose IPT", $checklist_array)) { - $second_dose_ipt_between_15_to_19_years_visits[] = $patientId; - } - - if (in_array("Third Dose IPT", $checklist_array)) { - $third_dose_ipt_between_15_to_19_years_visits[] = $patientId; - } - - if (in_array("Fourth Dose IPT", $checklist_array)) { - $fourth_dose_ipt_between_15_to_19_years_visits[] = $patientId; - } - endif; - - if ($diffYears >= 20 && $diffYears <= 24): - if ($anc_visit->ante_natal_clinic_visit_number == 1): - $between_20_to_24_years_first_visits[] = $patientId; - endif; - - if ($anc_visit->ante_natal_clinic_visit_number == 4): - $between_20_to_24_years_four_visits[] = $patientId; - endif; - - if ($anc_visit->ante_natal_clinic_visit_number > 4 && $anc_visit->ante_natal_clinic_visit_number < 8): - $between_20_to_24_years_above_four_visits_but_below_8[] = $patientId; - endif; - - if ($anc_visit->ante_natal_clinic_visit_number == 8): - $between_20_to_24_years_8_visits[] = $patientId; - endif; - - $attendances_between_20_to_24_years_visits[] = $patientId; - - if (in_array("First Dose IPT", $checklist_array)) { - $first_dose_ipt_between_20_to_24_years_visits[] = $patientId; - } - - if (in_array("Second Dose IPT", $checklist_array)) { - $second_dose_ipt_between_20_to_24_years_visits[] = $patientId; - } - - if (in_array("Third Dose IPT", $checklist_array)) { - $third_dose_ipt_between_20_to_24_years_visits[] = $patientId; - } - - if (in_array("Fourth Dose IPT", $checklist_array)) { - $fourth_dose_ipt_between_20_to_24_years_visits[] = $patientId; - } - endif; - - if ($diffYears >= 25 && $diffYears <= 49): - if ($anc_visit->ante_natal_clinic_visit_number == 1): - $between_25_to_49_years_first_visits[] = $patientId; - endif; - - if ($anc_visit->ante_natal_clinic_visit_number == 4): - $between_25_to_49_years_four_visits[] = $patientId; - endif; - - if ($anc_visit->ante_natal_clinic_visit_number > 4 && $anc_visit->ante_natal_clinic_visit_number < 8): - $between_25_to_49_years_above_four_visits_but_below_8[] = $patientId; - endif; - - if ($anc_visit->ante_natal_clinic_visit_number == 8): - $between_25_to_49_years_8_visits[] = $patientId; - endif; - - $attendances_between_25_to_49_years_visits[] = $patientId; - - if (in_array("First Dose IPT", $checklist_array)) { - $first_dose_ipt_between_25_to_49_years_visits[] = $patientId; - } - - if (in_array("Second Dose IPT", $checklist_array)) { - $second_dose_ipt_between_25_to_49_years_visits[] = $patientId; - } - - if (in_array("Third Dose IPT", $checklist_array)) { - $third_dose_ipt_between_25_to_49_years_visits[] = $patientId; - } - - if (in_array("Fourth Dose IPT", $checklist_array)) { - $fourth_dose_ipt_between_25_to_49_years_visits[] = $patientId; - } - endif; - - if ($diffYears > 50): #above 50 years - if ($anc_visit->ante_natal_clinic_visit_number == 1): - $above_50_years_first_visits[] = $patientId; - endif; - - if ($anc_visit->ante_natal_clinic_visit_number == 4): - $above_50_years_four_visits[] = $patientId; - endif; - - if ($anc_visit->ante_natal_clinic_visit_number > 4 && $anc_visit->ante_natal_clinic_visit_number < 8): - $above_50_years_above_four_visits_but_below_8[] = $patientId; - endif; - - if ($anc_visit->ante_natal_clinic_visit_number == 8): - $above_50_years_8_visits[] = $patientId; - endif; - - $attendances_above_50_years_visits[] = $patientId; - - if (in_array("First Dose IPT", $checklist_array)) { - $first_dose_ipt_above_50_years_visits[] = $patientId; - } - - if (in_array("Second Dose IPT", $checklist_array)) { - $second_dose_ipt_above_50_years_visits[] = $patientId; - } - - if (in_array("Third Dose IPT", $checklist_array)) { - $third_dose_ipt_above_50_years_visits[] = $patientId; - } - - if (in_array("Fourth Dose IPT", $checklist_array)) { - $fourth_dose_ipt_above_50_years_visits[] = $patientId; - } - endif; - - $triage = DB::table('triage')->where(['patient_id' => $patientId, 'episode_id' => $anc_visit->episode_id])->select('referral', 'new_attendance', 're_attendance')->first(); - - if ($triage) { - if ($triage->referral != 1){ // make sure its not a self referral - $referrals_to_unit[] = $patientId; - } - - if (!is_null($triage->new_attendance)){ - $new_attendances_anc_array[] = $patientId; - } - - if (!is_null($triage->re_attendance)){ - $re_attendances_anc_array[] = $patientId; - } - } - - if ($anc_visit->outcome_id == 4){ // 4 is referred to another hospital i.e referred from unit - $referrals_from_unit[] = $anc_visit->episode_id; - } - } - } -?> - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    2.0 ANTENATALNUMBER
    - AN01.ANC 1st contacts/visits for women - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Total
    Below 15 years{{ count($below_15_years_first_visits) }}
    15-19 years{{ count($between_15_to_19_years_first_visits) }}
    20-24 years{{ count($between_20_to_24_years_first_visits) }}
    25-49 years{{ count($between_25_to_49_years_first_visits) }}
    50+ years{{ count($above_50_years_first_visits) }}
    No. in 1st Trimester{{ count($below_15_years_first_visits) + count($between_15_to_19_years_first_visits) + count($between_20_to_24_years_first_visits) + count($between_25_to_49_years_first_visits) + + count($above_50_years_first_visits) }}
    -
    - AN02.ANC 4th contacts/visits for women - - - - - - - - - - - - - - - - - - - - - - - - -
    Below 15 years{{ count($below_15_years_four_visits) }}
    15-19 years{{ count($between_15_to_19_years_four_visits) }}
    20-24 years{{ count($between_20_to_24_years_four_visits) }}
    25-49 years{{ count($between_25_to_49_years_four_visits) }}
    50+ years{{ count($above_50_years_four_visits) }}
    -
    - AN03.ANC 4+ contacts/visits for women - - - - - - - - - - - - - - - - - - - - - - - - -
    Below 15 years{{ count($below_15_years_above_four_visits_but_below_8) }}
    15-19 years{{ count($between_15_to_19_years_above_four_visits_but_below_8) }}
    20-24 years{{ count($between_20_to_24_years_above_four_visits_but_below_8) }}
    25-49 years{{ count($between_25_to_49_years_above_four_visits_but_below_8) }}
    50+ years{{ count($above_50_years_above_four_visits_but_below_8) }}
    -
    - AN04.ANC 8 contacts/visits for women - - - - - - - - - - - - - - - - - - - - - - - - -
    Below 15 years{{ count($below_15_years_8_visits) }}
    15-19 years{{ count($between_15_to_19_years_8_visits) }}
    20-24 years{{ count($between_20_to_24_years_8_visits) }}
    25-49 years{{ count($between_25_to_49_years_8_visits) }}
    50+ years{{ count($above_50_years_8_visits) }}
    -
    - AN05. Total ANC contacts/visits (new clients + Re-attendances) - - - - - - - - - - - - - - - - - - - - - - - - -
    Below 15 years{{ count($attendances_below_15_years_visits) }}
    15-19 years{{ count($attendances_between_15_to_19_years_visits) }}
    20-24 years{{ count($attendances_between_20_to_24_years_visits) }}
    25-49 years{{ count($attendances_between_25_to_49_years_visits) }}
    50+ years{{ count($attendances_above_50_years_visits) }}
    -
    - AN06. Referrals to ANC unit - - - - - - - - - - - - -
    Total referrals{{ count($referrals_to_unit) }}
    From community services0
    -
    - AN07. ANC Referrals from unit - - - - - - - - - - - - -
    Total referrals{{ count($referrals_from_unit) }}
    HIV+ mothers newly enrolled in MCH groups0
    -
    - AN08. First dose IPT (IPT1) - - - - - - - - - - - - - - - - - - - - - - - - -
    Below 15 years{{ count($first_dose_ipt_below_15_years_visits) }}
    15-19 years{{ count($first_dose_ipt_between_15_to_19_years_visits) }}
    20-24 years{{ count($first_dose_ipt_between_20_to_24_years_visits) }}
    25-49 years{{ count($first_dose_ipt_between_25_to_49_years_visits) }}
    50+ years{{ count($first_dose_ipt_above_50_years_visits) }}
    -
    - AN08. Second dose IPT (IPT2) - - - - - - - - - - - - - - - - - - - - - - - - -
    Below 15 years{{ count($second_dose_ipt_below_15_years_visits) }}
    15-19 years{{ count($second_dose_ipt_between_15_to_19_years_visits) }}
    20-24 years{{ count($second_dose_ipt_between_20_to_24_years_visits) }}
    25-49 years{{ count($second_dose_ipt_between_25_to_49_years_visits) }}
    50+ years{{ count($second_dose_ipt_above_50_years_visits) }}
    -
    - AN09. Third dose IPT (IPT3) - - - - - - - - - - - - - - - - - - - - - - - - -
    Below 15 years{{ count($third_dose_ipt_below_15_years_visits) }}
    15-19 years{{ count($third_dose_ipt_between_15_to_19_years_visits) }}
    20-24 years{{ count($third_dose_ipt_between_20_to_24_years_visits) }}
    25-49 years{{ count($third_dose_ipt_between_25_to_49_years_visits) }}
    50+ years{{ count($third_dose_ipt_above_50_years_visits) }}
    -
    - AN30. Pregnant Women tested HIV+ for 1st time this pregnancy (TRR) at any ANC visit - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Total NumberANC 1
    Below 15 years00
    15-19 years00
    20-24 years00
    25-49 years00
    50+ years00
    -
    - AN31. HIV+ Pregnant women assessed by CD4 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Total NumberANC 1
    Below 15 years00
    15-19 years00
    20-24 years00
    25-49 years00
    50+ years00
    -
    - AN32. HIV+ pregnant women initiated on ART for eMTCT at Any visit irrespective of when tested HIV+ (TRR, TRR+ and HIV+ not yet started ART(TRR√ & TRRK)) - - - - - - - - - - - - - - - - - - - - - - - - -
    Below 15 years0
    15-19 years0
    20-24 years0
    25-49 years0
    50+ years0
    -
    - AN33. Pregnant Women who knew status before 1st ANC - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Total (TRK + TRRK)
    HIV + (TRRK)Below 15 years0
    15-19 years0
    20-24 years0
    25-49 years0
    50+ years0
    -
    - AN34.HIV+ pregnant women already on ART before 1st ANC (ART-K) - - - - - - - - - - - - - - - - - - - - - -
    Below 15 yearsTotal ART-Kduring the month0
    Viral Load Samples collected during the month0
    Viral Load results Returned during the month0
    Viral Load Suppressed during the month0
    - - - - - - - - - - - - - - - - - - - - - -
    Below 15-19 yearsTotal ART-Kduring the month0
    Viral Load Samples collected during the month0
    Viral Load results Returned during the month0
    Viral Load Suppressed during the month0
    - - - - - - - - - - - - - - - - - - - - - -
    Below 20-24 yearsTotal ART-Kduring the month0
    Viral Load Samples collected during the month0
    Viral Load results Returned during the month0
    Viral Load Suppressed during the month0
    - - - - - - - - - - - - - - - - - - - - - -
    Below 25-49 yearsTotal ART-Kduring the month0
    Viral Load Samples collected during the month0
    Viral Load results Returned during the month0
    Viral Load Suppressed during the month0
    - - - - - - - - - - - - - - - - - - - - - -
    50+ yearsTotal ART-Kduring the month0
    Viral Load Samples collected during the month0
    Viral Load results Returned during the month0
    Viral Load Suppressed during the month0
    -
    -
    - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    2.1 ANTENATAL (Continuation)NUMBER
    - AN11. IPT 4 & 4+ Dose - - - - - - - - - - - - - - - - - - - - - - - - -
    Below 15 years{{ count($fourth_dose_ipt_below_15_years_visits) }}
    15-19 years{{ count($fourth_dose_ipt_between_15_to_19_years_visits) }}
    20-24 years{{ count($fourth_dose_ipt_between_20_to_24_years_visits) }}
    25-49 years{{ count($fourth_dose_ipt_between_25_to_49_years_visits) }}
    50+ years{{ count($fourth_dose_ipt_above_50_years_visits) }}
    -
    - AN12. TB Screening for ANC clients - - - - - - - - - - - - - - - - -
    Screened for TB0
    Presumed to have TB0
    Diagnosed with TB0
    -
    - AN13. Blood & Rhesus group (O) - - - - - - - - - - - - -
    Total0
    Rhesus O+0
    -
    - AN14. Blood & Rhesus group (A) - - - - - - - - - - - - -
    Total0
    Rhesus A+0
    -
    - AN15. Blood & Rhesus group (B) - - - - - - - - - - - - -
    Total0
    Rhesus B+0
    -
    - AN16. Blood & Rhesus group (AB) - - - - - - - - - - - - -
    Total0
    Rhesus AB+0
    -
    - AN17.No. of pregnant women who were tested for Anaemia using Hb Test at ANC 1st Contact / visit - 0
    - AN18. No. of pregnant women with Anaemia(Hb <10g/dl) at ANC 1st Contact / visit - 0
    - AN19. No. of pregnant women who were tested for anaemia using Hb test at ANC after 36 weeks - 0
    - AN20. No. of pregnant women with Anaemia (Hb <10g/dl) at ANC after 36 weeks - 0
    - AN21. Pregnant Women receiving at least 30 tablets of Folic Acid and Iron Sulphate at ANC 1st contact / visit (Only Folic Acid recommended during 1st trimester) - 0
    - AN22. Pregnant Women receiving at least 30 tablets of Folic Acid and Iron Sulphate at ANC after 36 weeks of gestation - 0
    - AN23. Pregnant Women receiving LLINs at ANC 1st visit - 0
    - AN24. No. of pregnant women who received obstetric-ultra sound scan during any ANC visit in the reporting month - - - - - - - - - - - - -
    Total U/S Scan done0
    No. done before 24 weeks of gestation and below0
    -
    - AN25. No. of pregnant women dewormed or receiving mebendazole - - - - - - - - - - - - -
    Total0
    After 28 weeks of gestation0
    -
    - AN26. Pregnant Women tested for syphilis for the first time in this pregnancy - - - - - - - - - - - - - - - - -
    No. Tested0
    No. Tested Positive0
    No. started on syphilis treatment0
    -
    - AN27. Male partners tested for syphilis - - - - - - - - - - - - - - - - -
    No. Tested0
    No. Tested Positive0
    No. started on syphilis treatment0
    -
    - AN28. Pregnant women tested for Hepatitis B - - - - - - - - - - - - - - - - -
    No. Tested0
    No. Tested Positive0
    No. started on Hep B treatment0
    -
    - AN29. Pregnant women newly tested for HIV in this pregnancy at any ANC visit (TR & TRR) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Total NumberANC 1
    Below 15 years00
    15-19 years00
    20-24 years00
    25-49 years00
    50+ years00
    -
    - AN35. Pregnant women who re-tested later in pregnancy - - - - - - - - - - - - -
    Total (TR+ &TRR+)0
    HIV+ (TRR+)0
    -
    - AN36. HIV+ pregnant women given ARV prophylaxis for the un born infants for the 1st time in ANC - - 0
    - AN37. Pregnant women given self-testing kits for their male partners - - - - - - - - - - - - - - - - -
    Total0
    Tests returned HIV+0
    Tests returned HIV negative0
    -
    - AN38: Male partners received HIV test results in eMTCT - - - - - - - - - - - - -
    Total tested (TR & TRR)0
    HIV+ (TRR).0
    -
    - AN39. Male partners with a known status at their first visit as a couple in ANC - - - - - - - - - - - - -
    Total tested (TR & TRR)0
    HIV+ (TRR).0
    -
    - AN40. HIV+ Male partners initiated on ART in the ANC setting - - 0
    - AN41. Number of discordant couple identified in ANC - - 0
    - AN42.Pregnant women who received Counselling - - - - - - - - - - - - - -
    Maternal NutritionTotal0
    HIV+0
    - - - - - - - - - - - - - -
    Infant Feeding CounsellingTotal0
    HIV+0
    -
    -
    - diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/maternity.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/maternity.blade.php deleted file mode 100755 index e24ef9ca..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/maternity.blade.php +++ /dev/null @@ -1,632 +0,0 @@ -get(); - foreach ($wards as $ward) { - $maternity_ward_ids_array[] = $ward->id; - } - - $maternity_ward_admissions = DB::table('inpatient_info')->whereIn('ward_id', $maternity_ward_ids_array)->whereBetween('created_at', [$attendance_from, $attendance_to])->get(); - - if (!empty($attendance_from) && !empty($attendance_to)){ - - $maternity_admissions_records = DB::table('maternity_inpatients') - ->join('patients', 'maternity_inpatients.patient_id', '=', 'patients.id') - ->whereBetween('maternity_inpatients.created_at', [$attendance_from, $attendance_to]) - ->select('patients.id as patient_id', 'patients.gender', - 'patients.date_of_birth', 'maternity_inpatients.*')->get(); - //dd($maternity_inpatients); - - foreach ($maternity_admissions_records as $maternity_admission) { - - $dateOfBirth = \Carbon\Carbon::parse($maternity_admission->date_of_birth); - $diffYears = \Carbon\Carbon::now()->diffInYears($dateOfBirth); - - $patientId = $maternity_admission->patient_id; - $gender = $maternity_admission->gender; - - if ($maternity_admission->referral_from != 1 && !is_null($maternity_admission->referral_from)){ // make sure its not a self referral - $referrals_to_maternity++; - } - - $inpatient_details = DB::table('inpatient_info')->where(['episode_id' => $maternity_admission->episode_id, 'patient_id' => $maternity_admission->patient_id])->first(); - - if ($inpatient_details) { - if ($inpatient_details->outcome_id == 4) { // outcome id for referred - $referrals_out_of_maternity++; - } - } - } - - $delivery_records = DB::table('maternity_delivery_records') - ->join('patients', 'maternity_delivery_records.patient_id', '=', 'patients.id') - ->whereBetween('maternity_delivery_records.created_at', [$attendance_from, $attendance_to]) - ->select('patients.id as patient_id', 'patients.gender', - 'patients.date_of_birth as mother_date_of_birth', 'maternity_delivery_records.*')->get(); - - foreach ($delivery_records as $delivery) { - - $dateOfBirth = \Carbon\Carbon::parse($delivery->mother_date_of_birth); - $diffYears = \Carbon\Carbon::now()->diffInYears($dateOfBirth); - - $patientId = $delivery->patient_id; - $gender = $delivery->gender; - - $baby_condition_array = explode(",", $delivery->baby_condition); - $babies_delivered_weights_array = explode(",", $delivery->weight); - //dd($babies_delivered_weights_array); - - for ($i=0; $i < $delivery->foetal_number ; $i++) { - if ($baby_condition_array[$i] == 1) { //alive - $alive_condition_babies_array[] = $delivery->patient_id; - - if ($babies_delivered_weights_array[$i] < 2.5) { - $alive_condition_babies_under_2_point_5_array[] = $delivery->patient_id; - } - } - - if ($baby_condition_array[$i] == 2) { //fresh SB - $fresh_sb_condition_babies_array[] = $delivery->patient_id; - - if ($babies_delivered_weights_array[$i] < 2.5) { - $fresh_sb_condition_babies_under_2_point_5_array[] = $delivery->patient_id; - } - } - - if ($baby_condition_array[$i] == 3) { //macerated SB - $macerated_sb_condition_babies_array[] = $delivery->patient_id; - - if ($babies_delivered_weights_array[$i] < 2.5) { - $macerated_sb_condition_babies_under_2_point_5_array[] = $delivery->patient_id; - } - } - } - - if ($diffYears < 15): #below 15 years - $delivery_records_for_below_15_years[] = $delivery->patient_id; - endif; - - if ($diffYears >= 15 && $diffYears <= 19): - $delivery_records_for_between_15_to_19_years[] = $delivery->patient_id; - endif; - - if ($diffYears >= 20 && $diffYears <= 24): - $delivery_records_for_between_20_to_24_years[] = $delivery->patient_id; - endif; - - if ($diffYears >= 25 && $diffYears <= 49): - $delivery_records_for_between_25_to_49_years[] = $delivery->patient_id; - endif; - - if ($diffYears > 50): - $delivery_records_for_above_50_years[] = $delivery->patient_id; - endif; - } - } -?> - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    2.2 MATERNITYNUMBER
    - MA01: Admissions - {{ count($maternity_ward_admissions) }}
    - MA02: Referrals to maternity unit - - - - - - - - - - - - -
    Total{{ $referrals_to_maternity }}
    From community services0
    -
    - MA03: Maternity referrals out - {{ $referrals_out_of_maternity }}
    - MA04: Deliveries in unit - - - - - - - - - - - - - - - - - - - - - - - - - -
    MA04a. TotalBelow 15 years{{ count($delivery_records_for_below_15_years) }}
    15-19 years{{ count($delivery_records_for_between_15_to_19_years) }}
    20-24 years{{ count($delivery_records_for_between_20_to_24_years) }}
    25-49 years{{ count($delivery_records_for_between_25_to_49_years) }}
    50+ years{{ count($delivery_records_for_above_50_years) }}
    - - - - - - - - - - - - - -
    MA04b. Live birthsTotal{{ count($alive_condition_babies_array) }}
    < 2.5 Kg{{ count($alive_condition_babies_under_2_point_5_array) }}
    - - - - - - - - - - - - - -
    MA04c. Fresh still Total birthTotal{{ count($fresh_sb_condition_babies_array) }}
    < 2.5 Kg{{ count($fresh_sb_condition_babies_under_2_point_5_array) }}
    - - - - - - - - - - - - - -
    MA04d. Macerated still birthTotal{{ count($macerated_sb_condition_babies_array) }}
    < 2.5 Kg{{ count($macerated_sb_condition_babies_under_2_point_5_array) }}
    -
    - MA05. Pre-Term births - - - - - - - - - - - - - - - - -
    Total0
    Alive0
    < 2.5 Kg0
    -
    - MA06. Born Before Arrival - - - - - - - - - - - - - - - - -
    Total0
    Alive0
    < 2.5 Kg0
    -
    - MA07. No. of low birth weight babies (<2.5 Kg) initiated on kangaroo (KMC) - 0
    - MA08. Live babies at discharge - 0
    - MA09. No. of Babies born with defect - 0
    - MA10. No. of Babies received LLIN - 0
    - MA11. Newborn deaths (0-7 days) - 0
    - MA12. Neonatal Death 8-28 days - 0
    - MA13. Maternal deaths - - - - - - - - - - - - - - - - - - - - - - - - -
    Below 15 years0
    15-19 years0
    20-24 years0
    25-49 years0
    50+ years0
    -
    -
    - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    2.2 MATERNITYNUMBER
    - MA14. No. of mothers who initiated breastfeeding within the 1st hour after delivery - - - - - - - - - - - - -
    Total0
    No. HIV +0
    -
    - MA15. Women tested for HIV in labour 1st time this Pregnancy - - - - - - - - - - - - -
    Total (TR & TRR)0
    HIV+ (TRR)0
    -
    - MA16. Women re-tested for HIV in labour - - - - - - - - - - - - -
    Total (TR+ & TRR+)0
    HIV+ (TRR+)0
    -
    - MA17. HIV+ women initiating ART in maternity - 0
    - MA18. Male partners received HIV test results in the maternity setting - - - - - - - - - - - - -
    Total (TR+ & TRR+)0
    HIV+ (TRR+)0
    -
    - MA19. HIV+ male partners initiated on ART in the maternity setting - 0
    - MA20. Number of discordant couples identified in maternity - 0
    - MA21. Mothers Received nutrition Counselling - - - - - - - - - - - - - -
    Maternal NutritionalTotal0
    HIV+0
    - - - - - - - - - - - - - -
    Infant FeedingTotal0
    HIV+0
    -
    - MA22. Deliveries to HIV+ women in unit - - - - - - - - - - - - -
    Total0
    Live Birth0
    -
    - MA23. HIV Exposed infants given ARVs - - - - - - - - - - - - -
    Total number0
    Number of high-risk infants 12 weeks0
    -
    - MA24. No. of babies with Birth asphyxia - 0
    - MA25: No. of Live babies Successfully Resuscitated - 0
    - MA26. Number received PNC check at 6 hours after birth - - - - - - - - - - - - -
    Baby0
    Mother0
    -
    - MA27. Number received PNC within 24 hours after birth - - - - - - - - - - - - -
    Baby0
    Mother0
    -
    - MA28. Uterotonics used in management of 3rd stage of labour - - - - - - - - - - - - - - - - -
    Oxytocin0
    Misoprostol0
    Egometrine0
    -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/monthly_diagnoses.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/monthly_diagnoses.blade.php deleted file mode 100644 index 721a5147..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/monthly_diagnoses.blade.php +++ /dev/null @@ -1,632 +0,0 @@ -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - @php - //Malaria Data - $option_ids = [400, 401, 399, 402]; $data= $malaria_options = []; - foreach ($option_ids as $option) { - $data_count = array_filter($diagnoses_data, function ($item) use ($option) { - return $item['dependent_option'] == $option; - }); - if(!empty($data_count)) $data[] = $data_count; - } - foreach($data as $values) foreach ($values as $key => $value) $malaria_options[] = $value; - @endphp - @for ($i=0;$i - - - @if ($i == 22) - @include('reports::hmis_reports.105.opd-risky-behaviours') - @else - @foreach ($table_options[$i]['category_options'] as $category_option) - @if (!empty($category_option['dependent_options'])) - - - - @foreach ($category_option['dependent_options'] as $key => $dependent_option) - - @php - $option_id =$dependent_option['id']; - if (in_array($option_id, $option_ids)){ - - if($option_id == 402) { //Malaria cases treated - $option_count = []; - if (!empty($malaria_options)) { - $keys = array_key_first($malaria_options); - $option_count[0] = ["id" => $malaria_options[$keys]['id'], "name" => $malaria_options[$keys]['name'], "hmis_category" => $malaria_options[$keys]['hmis_category'], "hmis_category_option" => $malaria_options[$keys]['hmis_category_option'], "dependent_option" => $malaria_options[$keys]['dependent_option'], "primary"=>$prescribed_treatments, "other"=>[]]; - } - - }elseif($option_id == 399){ //Suspected Fever - $option_count = []; - if(!empty($malaria_options)){ - $keys = array_key_first($malaria_options); - $option_count[] = ["id" => $malaria_options[$keys]['id'], "name" => $malaria_options[$keys]['name'], "hmis_category" => $malaria_options[$keys]['hmis_category'], "hmis_category_option" => $malaria_options[$keys]['hmis_category_option'], "dependent_option" => $malaria_options[$keys]['dependent_option'], "primary"=>$ordered_investigations, "other"=>[]]; - } - // else { - // $option_count[] = ["id" => $malaria_diagnoses->id, "name" => $malaria_diagnoses->name, "hmis_category" => $malaria_diagnoses->outpatient_hmis_category, "hmis_category_option" => $malaria_diagnoses->outpatient_hmis_category_option, "dependent_option" => 399, "primary"=>$ordered_investigations, "other"=>[]]; - // } - } elseif($option_id == 400){ //Malaria Total - $option_count = $malaria_options; - }elseif($option_id == 401){ //Malaria confirmed (B/s and RDT Positive) - $option_count = []; - if(!empty($malaria_options)){ - $keys = array_key_first($malaria_options); - $option_count[] = ["id" => $malaria_options[$keys]['id'], "name" => $malaria_options[$keys]['name'], "hmis_category" => $malaria_options[$keys]['hmis_category'], "hmis_category_option" => $malaria_options[$keys]['hmis_category_option'], "dependent_option" => $malaria_options[$keys]['dependent_option'], "primary"=>$ordered_investigation_results, "other"=>[]]; - } // else $option_count[] = ["id" => $malaria_diagnoses->id, "name" => $malaria_diagnoses->name, "hmis_category" => $malaria_diagnoses->outpatient_hmis_category, "hmis_category_option" => $malaria_diagnoses->outpatient_hmis_category_option, "dependent_option" => 401, "primary"=>$ordered_investigation_results, "other"=>[]]; - } - } else $option_count = array_filter($diagnoses_data, function ($item) use ($option_id) { - return $item['dependent_option'] == $option_id; - }); - $case_male_0_28_days = $case_female_0_28_days = $case_male_29_4_years = $case_female_29_4_years = []; - $case_male_5_9_years = $case_female_5_9_years = $case_male_10_19_years = $case_female_10_19_years = $case_male_over_20_years = $case_female_over_20_years =[]; - $case_male_0_28_days_diagnoses = $case_female_0_28_days_diagnoses = $case_male_29_4_years_diagnoses = $case_female_29_4_years_diagnoses = []; - $case_male_5_9_years_diagnoses = $case_female_5_9_years_diagnoses = $case_male_10_19_years_diagnoses = $case_female_10_19_years_diagnoses = $case_male_over_20_years_diagnoses = $case_female_over_20_years_diagnoses =[]; - - foreach ($option_count as $options){ - foreach ($options['primary'] as $option) { - $days = Carbon\Carbon::parse($option['age'])->diffInDays(Carbon\Carbon::now()); - $diagnoses = []; - if($days < 29) { - if($option['gender'] == '1') { - $case_male_0_28_days[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_male_0_28_days_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - elseif($option['gender'] == '2') { - $case_female_0_28_days[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_female_0_28_days_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - } else { - $age = Carbon\Carbon::parse($option['age'])->age; - if($age < 5){ - if($option['gender'] == '1') { - $case_male_29_4_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_male_29_4_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - elseif($option['gender'] == '2') { - $case_female_29_4_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_female_29_4_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - }elseif ($age > 4 && $age < 10) { - if($option['gender'] == '1') { - $case_male_5_9_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_male_5_9_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - elseif($option['gender'] == '2') { - $case_female_5_9_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_female_5_9_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - }elseif ($age > 9 && $age < 20) { - if($option['gender'] == '1'){ - $case_male_10_19_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_male_10_19_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - elseif($option['gender'] == '2') { - $case_female_10_19_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_female_10_19_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - }else { - if($option['gender'] == '1') { - $case_male_over_20_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_male_over_20_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - elseif($option['gender'] == '2') { - $case_female_over_20_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_female_over_20_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - } - } - } - foreach ($options['other'] as $option){ - $days = Carbon\Carbon::parse($option['age'])->diffInDays(Carbon\Carbon::now()); - $diagnoses = []; - if($days < 29) { - if($option['gender'] == '1') { - $case_male_0_28_days[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_male_0_28_days_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - elseif($option['gender'] == '2') { - $case_female_0_28_days[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_female_0_28_days_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - } else { - $age = Carbon\Carbon::parse($option['age'])->age; - if($age < 5){ - if($option['gender'] == '1') { - $case_male_29_4_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_male_29_4_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - elseif($option['gender'] == '2') { - $case_female_29_4_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_female_29_4_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - }elseif ($age > 4 && $age < 10) { - if($option['gender'] == '1') { - $case_male_5_9_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_male_5_9_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - elseif($option['gender'] == '2') { - $case_female_5_9_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_female_5_9_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - }elseif ($age > 9 && $age < 20) { - if($option['gender'] == '1'){ - $case_male_10_19_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_male_10_19_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - elseif($option['gender'] == '2') { - $case_female_10_19_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_female_10_19_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - }else { - if($option['gender'] == '1') { - $case_male_over_20_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_male_over_20_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - elseif($option['gender'] == '2') { - $case_female_over_20_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_female_over_20_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - } - } - } - } - @endphp - - - - - - - - - - - - - @endforeach - @else - - @php - $option_id =$category_option['id']; - $option_count =array_filter($diagnoses_data, function ($item) use ($option_id) { - return $item['hmis_category_option'] == $option_id; - }); - $case_male_0_28_days = $case_female_0_28_days = $case_male_29_4_years = $case_female_29_4_years = []; - $case_male_5_9_years = $case_female_5_9_years = $case_male_10_19_years = $case_female_10_19_years = $case_male_over_20_years = $case_female_over_20_years =[]; - $case_male_0_28_days_diagnoses = $case_female_0_28_days_diagnoses = $case_male_29_4_years_diagnoses = $case_female_29_4_years_diagnoses = []; - $case_male_5_9_years_diagnoses = $case_female_5_9_years_diagnoses = $case_male_10_19_years_diagnoses = $case_female_10_19_years_diagnoses = $case_male_over_20_years_diagnoses = $case_female_over_20_years_diagnoses =[]; - foreach ($option_count as $options){ - foreach ($options['primary'] as $option) { - $days = Carbon\Carbon::parse($option['age'])->diffInDays(Carbon\Carbon::now()); - $diagnoses = []; - if($days < 29) { - if($option['gender'] == '1') { - $case_male_0_28_days[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_male_0_28_days_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - elseif($option['gender'] == '2') { - $case_female_0_28_days[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_female_0_28_days_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - } else { - $age = Carbon\Carbon::parse($option['age'])->age; - if($age < 5){ - if($option['gender'] == '1') { - $case_male_29_4_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_male_29_4_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - elseif($option['gender'] == '2') { - $case_female_29_4_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_female_29_4_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - }elseif ($age > 4 && $age < 10) { - if($option['gender'] == '1') { - $case_male_5_9_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_male_5_9_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - elseif($option['gender'] == '2') { - $case_female_5_9_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_female_5_9_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - }elseif ($age > 9 && $age < 20) { - if($option['gender'] == '1'){ - $case_male_10_19_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_male_10_19_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - elseif($option['gender'] == '2') { - $case_female_10_19_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_female_10_19_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - }else { - if($option['gender'] == '1') { - $case_male_over_20_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_male_over_20_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - elseif($option['gender'] == '2') { - $case_female_over_20_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_female_over_20_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - } - } - } - foreach ($options['other'] as $option){ - $days = Carbon\Carbon::parse($option['age'])->diffInDays(Carbon\Carbon::now()); - $diagnoses = []; - if($days < 29) { - if($option['gender'] == '1') { - $case_male_0_28_days[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_male_0_28_days_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - elseif($option['gender'] == '2') { - $case_female_0_28_days[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_female_0_28_days_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - } else { - $age = Carbon\Carbon::parse($option['age'])->age; - if($age < 5){ - if($option['gender'] == '1') { - $case_male_29_4_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_male_29_4_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - elseif($option['gender'] == '2') { - $case_female_29_4_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_female_29_4_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - }elseif ($age > 4 && $age < 10) { - if($option['gender'] == '1') { - $case_male_5_9_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_male_5_9_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - elseif($option['gender'] == '2') { - $case_female_5_9_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_female_5_9_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - }elseif ($age > 9 && $age < 20) { - if($option['gender'] == '1'){ - $case_male_10_19_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_male_10_19_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - elseif($option['gender'] == '2') { - $case_female_10_19_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_female_10_19_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - }else { - if($option['gender'] == '1') { - $case_male_over_20_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_male_over_20_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - elseif($option['gender'] == '2') { - $case_female_over_20_years[] = $option['patient_id']; - $diagnoses[]= $option['primary_diagnosis']; - foreach ($option['other_diagnoses'] as $value) $diagnoses[]= $value; - $case_female_over_20_years_diagnoses[] = ['patient_id'=>$option['patient_id'], 'diagnoses'=>$diagnoses]; - } - } - } - } - } - @endphp - - - - - - - - - - - - - - @endif - @endforeach - @endif - @endfor - -
    1.3 OUTPATIENT DIAGNOSES FOR THE MONTH
    Diagnosis
    0-28 days29 days - 4Yrs5 - 9Yrs10 - 19Yrs20Yrs & above
    MaleFemaleMaleFemaleMaleFemaleMaleFemaleMaleFemale
    {{ $table_options[$i]['category_number'].'. '.$table_options[$i]['category_name'] }}
    {{ $category_option['number'].'. '.$category_option['name'] }}
    {{ $dependent_option['number'].'. '.$dependent_option['name'] }} - @if (!empty($case_male_0_28_days)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_case_male_0_28_days_drill' ]) }} - - - {{ commas(count(array_unique($case_male_0_28_days))) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_0_28_days)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_'.'case_female_0_28_days'.'_drill' ]) }} - - - {{ commas(count(array_unique($case_female_0_28_days))) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_male_29_4_years)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_'.'case_male_29_4_years'.'_drill' ]) }} - - - {{ commas(count(array_unique($case_male_29_4_years))) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_29_4_years)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_'.'case_female_29_4_years'.'_drill' ]) }} - - - {{ commas(count(array_unique($case_female_29_4_years))) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_male_5_9_years)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_'.'case_male_5_9_years'.'_drill' ]) }} - - - {{ commas(count(array_unique($case_male_5_9_years))) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_5_9_years)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_'.'case_female_5_9_years'.'_drill' ]) }} - - - {{ commas(count(array_unique($case_female_5_9_years))) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_male_10_19_years)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_'.'case_male_10_19_years'.'_drill' ]) }} - - - {{ commas(count(array_unique($case_male_10_19_years))) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_10_19_years)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_'.'case_female_10_19_years'.'_drill' ]) }} - - - {{ commas(count(array_unique($case_female_10_19_years))) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_male_over_20_years)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_'.'case_male_over_20_years'.'_drill' ]) }} - - - {{ commas(count(array_unique($case_male_over_20_years))) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_over_20_years)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_'.'case_female_over_20_years'.'_drill' ]) }} - - - {{ commas(count(array_unique($case_female_over_20_years))) }} - {{ Form::close() }} - @else - 0 - @endif -
    {{ $category_option['number'].'. '.$category_option['name'] }} - @if (!empty($case_male_0_28_days)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_case_male_0_28_days_drill' ]) }} - - - {{ commas(count(array_unique($case_male_0_28_days))) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_0_28_days)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_female_0_28_days'.'_drill' ]) }} - - - {{ commas(count(array_unique($case_female_0_28_days))) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_male_29_4_years)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_male_29_4_years'.'_drill' ]) }} - - - {{ commas(count(array_unique($case_male_29_4_years))) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_29_4_years)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_female_29_4_years'.'_drill' ]) }} - - - {{ commas(count(array_unique($case_female_29_4_years))) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_male_5_9_years)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_male_5_9_years'.'_drill' ]) }} - - - {{ commas(count(array_unique($case_male_5_9_years))) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_5_9_years)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_female_5_9_years'.'_drill' ]) }} - - - {{ commas(count(array_unique($case_female_5_9_years))) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_male_10_19_years)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_male_10_19_years'.'_drill' ]) }} - - - {{ commas(count(array_unique($case_male_10_19_years))) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_10_19_years)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_female_10_19_years'.'_drill' ]) }} - - - {{ commas(count(array_unique($case_female_10_19_years))) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_male_over_20_years)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_male_over_20_years'.'_drill' ]) }} - - - {{ commas(count(array_unique($case_male_over_20_years))) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_over_20_years)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_female_over_20_years'.'_drill' ]) }} - - - {{ commas(count(array_unique($case_female_over_20_years))) }} - {{ Form::close() }} - @else - 0 - @endif -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/nutrition_services.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/nutrition_services.blade.php deleted file mode 100755 index 8782e66c..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/nutrition_services.blade.php +++ /dev/null @@ -1,769 +0,0 @@ -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    1.5 Nutrition Services
    Data Elements0-5 Months6-23 Months24-59 Months5-9 Years10-19 Years20-24 Years25+ Years
    MaleFemaleMaleFemaleMaleFemaleMaleFemaleMaleFemaleMaleFemaleMaleFemale
    Non pregnantPregnant / LactatingNon pregnantPregnant / LactatingNon pregnantPregnant / Lactating
    - NA01. No. of clients who received nutrition assessment in this month using; - NA01a. MUAC Tape
    NA01b. W/H or L Z-Score
    NA01c. BMI for Age Z-Score
    NA01e. Body Mass Index (BMI)
    NA02. No. of children that are underweight (W/A ≤-2 SD)
    - NA03. No. of identified malnourished clients this month; - NA03a. MAM using MUAC: MUAC: ≥ 11.5cm & < 12.5cm (children 0-59 mths) MUAC: ≥ 19.0cm & <23.0cm (PLW 10-25+ yrs)
    NA03b. MAM using W/H or L W/H or L: ≥ -3 SD & < -2 SD
    NA03c. SAM using MUAC MUAC: < 11.5cm (children 0-59 mths) MUAC: <19.0cm (PLW 10-25+ yrs)
    NA03d. SAM using W/H or L W/H or L: < -3 SD
    NA03e. SAM With Oedema
    NA03f. Moderately Malnourished
    (5-9yrs & 10-19yrs: <- 2SD & ≥-3SD;
    >19yrs: ≥16.0 & ≤16.9)
    NA03g. Severely Malnourished (5-9yr & 10-19 yrs: <-3SD;>19yrs: < 16.0)
    NA03h. Overweight (5-9yrs:>+1SD & ≤+3SD; >19yrs:≥25.0 & ≤29.9)
    NA03i. Obese (5-9yrs & 10-19yrs: <+ 2SD; >19yrs: ≥ 30.0)
    - NA04. No. of SAM admissions in OTC this month; - NA04a. Total
    NA04b. New Admissions
    - NA05. No. of Readmissions into OTC this month; - NA05a. Relapses
    NA05b. Defaulters
    - NA06. No. of MAM admissions in Supplementary Feeding Care (SFC) - NA06a. Total
    NA06b. New Admissions
    - NA07. No. ofReadmissions in SFC this Month - NA07a. Relapses
    NA07b. Defaulters
    - NA08. No. of clients with SAM admitted into treatment and - NA08a. Discharged as cured within this month
    NA08b. Did not respond to care in OTC (non-response) after 3 months of treatment
    NA08c. Defaulted from care within this month (absent for 2 consecutive visits)
    NA08d. Died during treatment within this month
    NA09. Total number of days spent in OTC for all clients discharged as cured this month
    - NA10. No.of clients with MAM admitted into treatment - NA10a.Discharged as cured within this month
    NA10b. Did not respond to care in SFC (non-response) after 3 months of treatment
    NA10c. Defaulted from care within this month (absent for 2 consecutive visits)
    NA10d. Died during treatment within this month
    NA11. Total number of days spent in SFC for all clients discharged as cured this month
    NA12. No. of malnourished clients who are positive for TB
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/obsolete/opd_attendance_referrals_diagnosis_totals.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/obsolete/opd_attendance_referrals_diagnosis_totals.blade.php deleted file mode 100755 index bc73862b..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/obsolete/opd_attendance_referrals_diagnosis_totals.blade.php +++ /dev/null @@ -1,116 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -

    Memorized reports

    -
    -
    - -
    -
    - -
    - @include('flash::message') -

    OPD ATTENDANCES, REFERRALS AND DIAGNOSES TOTALS FOR THE MONTH

    - -
    -
    - Showing results from {{streamline_date($attendance_from)}} to {{streamline_date($attendance_to)}} -
    -
    -
    - {{-- change the url to point to the same form --}} -
    - @csrf() -
    -
    - {{ Form::label('date_from','Date From') }} -
    - {{ Form::text('date_from','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-from']) }} - -
    -
    -
    -    -
    - {{ Form::label('date_to','Date To') }} -
    - {{ Form::text('date_to','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-to']) }} - -
    -
    -
    -    -
    - {{ Form::label('.','.') }} -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    1.1 OUTPATIENT ATTENDANCE
    - @include('reports::hmis_reports.opd_attendance_totals') -
    -
    -
    1.2 OUTPATIENT REFERRALS
    - @include('reports::hmis_reports.105.opd_referrals') -
    -
    -
    1.3 OUTPATIENT DIAGNOSES
    - @include('reports::hmis_reports.opd_diagnoses_totals') -
    -
    -
    - -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush - - - diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/obsolete/opd_attendance_totals.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/obsolete/opd_attendance_totals.blade.php deleted file mode 100755 index 986d332f..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/obsolete/opd_attendance_totals.blade.php +++ /dev/null @@ -1,188 +0,0 @@ -date_of_birth, $attendance_to); - $age_days = $age_array[0]; - $age_months = $age_array[1]; - $age_years = $age_array[2]; - $patient_id = $patient_query_opd_attendance->patient_id; - - if(is_add_attendance_to_consultation_enabled()) $attendance_query_sql = "SELECT id, attendance FROM consultations WHERE patient_id = $patient_id"; - else $attendance_query_sql = "SELECT id, new_attendance, re_attendance FROM triage WHERE patient_id = $patient_id"; - $attendance_query_sql_results = DB::select($attendance_query_sql); - foreach($attendance_query_sql_results as $attendance_result) { - $new_attendance = (!empty($attendance_result->attendance) && $attendance_result->attendance == 1 )? $attendance_result->attendance : $attendance_result->new_attendance; - $re_attendance = (!empty($attendance_result->attendance) && $attendance_result->attendance == 2 )? $attendance_result->attendance :$attendance_result->re_attendance; - - // 0 - 28 days -------------------------------------------------------------------- - // For males (New Attendance) - if (between($age_days, 0, 28) && $age_months == 0 && $age_years == 0 && $patient_query_opd_attendance->gender == 1 && !is_null($new_attendance)): - $num_male_0_28_days_new_attendance++; - endif; - - // For males (Re-Attendance) - if (between($age_days, 0, 28) && $age_months == 0 && $age_years == 0 && $patient_query_opd_attendance->gender == 1 && !is_null($re_attendance)): - $num_male_0_28_days_re_attendance++; - endif; - - // For females (New Attendance) - if (between($age_days, 0, 28) && $age_months == 0 && $age_years == 0 && $patient_query_opd_attendance->gender == 2 && !is_null($new_attendance)): - $num_female_0_28_days_new_attendance++; - endif; - - // For females (Re-Attendance) - if (between($age_days, 0, 28) && $age_months == 0 && $age_years == 0 && $patient_query_opd_attendance->gender == 2 && !is_null($re_attendance)): - $num_female_0_28_days_re_attendance++; - endif; - - // 29 days to 4 years --------------------------------------------------------------- - // For males (New Attendance) - if ($age_months > 0 && $age_years < 5 && $patient_query_opd_attendance->gender == 1 && !is_null($new_attendance)): - $num_male_29days_4yrs_new_attendance++; - endif; - - // For males (Re-Attendance) - if ($age_months > 0 && $age_years < 5 && $patient_query_opd_attendance->gender == 1 && !is_null($re_attendance)): - $num_male_29days_4yrs_re_attendance++; - endif; - - // For females (New Attendance) - if ($age_months > 0 && $age_years < 5 && $patient_query_opd_attendance->gender == 2 && !is_null($new_attendance)): - $num_female_29days_4yrs_new_attendance++; - endif; - - // For females (Re-Attendance) - if ($age_months > 0 && $age_years < 5 && $patient_query_opd_attendance->gender == 2 && !is_null($re_attendance)): - $num_female_29days_4yrs_re_attendance++; - endif; - - // 5 to 59 years ------------------------------------------------------------ - // For males (New Attendance) - if (between($age_years, 5, 60) && $patient_query_opd_attendance->gender == 1 && !is_null($new_attendance)): - $num_male_5_59yrs_new_attendance++; - endif; - - // For males (Re-Attendance) - if (between($age_years, 5, 60) && $patient_query_opd_attendance->gender == 1 && !is_null($re_attendance)): - $num_male_5_59yrs_re_attendance++; - endif; - - // For females (New Attendance) - if (between($age_years, 5, 60) && $patient_query_opd_attendance->gender == 2 && !is_null($new_attendance)): - $num_female_5_59yrs_new_attendance++; - endif; - - // For females (Re-Attendance) - if (between($age_years, 5, 60) && $patient_query_opd_attendance->gender == 2 && !is_null($re_attendance)): - $num_female_5_59yrs_re_attendance++; - endif; - - // For patients aged above 60 years ------------------------------------------------------ - // For males (New Attendance) - if ($age_years > 60 && $patient_query_opd_attendance->gender == 1 && !is_null($new_attendance)): - $num_male_60yrs_new_attendance++; - endif; - - // For males (Re-Attendance) - if ($age_years > 60 && $patient_query_opd_attendance->gender == 1 && !is_null($re_attendance)): - $num_male_60yrs_re_attendance++; - endif; - - // For females (New Attendance) - if ($age_years > 60 && $patient_query_opd_attendance->gender == 2 && !is_null($new_attendance)): - $num_female_60yrs_new_attendance++; - endif; - - // For females (Re-Attendance) - if ($age_years > 60 && $patient_query_opd_attendance->gender == 2 && !is_null($re_attendance)): - $num_female_60yrs_re_attendance++; - endif; - } - } -endif; -?> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Category0 - 28 Days29 Days - 4 Years5 - 59 Years60 Years & Above
    MFMFMFMF
    New Attendance
    Re-attendance
    Total Attendance
    diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/obsolete/opd_diagnoses_totals.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/obsolete/opd_diagnoses_totals.blade.php deleted file mode 100755 index fe81b3b9..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/obsolete/opd_diagnoses_totals.blade.php +++ /dev/null @@ -1,162 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - id; - $male_0_28_days = 0; - $female_0_28_days = 0; - $male_29days_4years = 0; - $female_29days_4years = 0; - $male_5_59_years = 0; - $female_5_59_years = 0; - $male_60_years = 0; - $female_60_years = 0; - - if (!empty($attendance_from) && !empty($attendance_to)): - - $patient_query_diagnosis_sql = "SELECT d.id, d.gender, TIMESTAMPDIFF(DAY,d.date_of_birth,'{$attendance_to}') AS age FROM patients d, consultations c WHERE d.id = c.patient_id AND c.primary_diagnosis = {$diagnosis_id} AND c.created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}'"; - $patient_query_diagnosis_result = DB::select($patient_query_diagnosis_sql); - - foreach($patient_query_diagnosis_result as $patient_query_diagnosis){ - $gender = $patient_query_diagnosis->gender; - $age_years = round($patient_query_diagnosis->age / 365); - // $age_months = round($patient_row_diagnosis['age'] / 30); - $age_days = $patient_query_diagnosis->age; - // 0 - 28 Days =========================================================================================== - // Male - if (between($age_days, 0, 28) && $gender == 1): - $male_0_28_days++; - endif; - // Female - if (between($age_days, 0, 28) && $gender == 2): - $female_0_28_days++; - endif; - // 29 - 4 Years =========================================================================================== - // Male - if (between($age_days, 29, 1825) && $gender == 1): - $male_29days_4years++; - endif; - // Female - if (between($age_days, 29, 1825) && $gender == 2): - $female_29days_4years++; - endif; - // 5 - 59 Years =========================================================================================== - // Male - if (between($age_years, 5, 60) && $gender == 1): - $male_5_59_years++; - endif; - // Female - if (between($age_years, 5, 60) && $gender == 2): - $female_5_59_years++; - endif; - // 60 Years and above =========================================================================================== - // Male - if ($age_years > 60 && $gender == 1): - $male_60_years++; - endif; - // Female - if ($age_years > 60 && $gender == 2): - $female_60_years++; - endif; - } - endif; - ?> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Diagnosis Name0 - 28 Days29 Days - 4 Years5 - 59 Years60 Years & Above
    MFMFMFMF
    name; ?> - 0) ? "{$male_0_28_days}" : $male_0_28_days; - ?> - - 0) ? "{$female_0_28_days}" : $female_0_28_days; - ?> - - 0) ? "{$male_29days_4years}" : $male_29days_4years; - ?> - - 0) ? "{$female_29days_4years}" : $female_29days_4years; - ?> - - 0) ? "{$male_5_59_years}" : $male_5_59_years; - ?> - - 0) ? "{$female_5_59_years}" : $female_5_59_years; - ?> - - 0) ? "{$male_60_years}" : $male_60_years; - ?> - - 0) ? "{$female_60_years}" : $female_60_years; - ?> -
    Diagnosis Name0 - 28 Days29 Days - 4 Years5 - 59 Years60 Years & Above
    MFMFMFMF
    \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/opd-attendance-details.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/opd-attendance-details.blade.php deleted file mode 100755 index 45cc5bdb..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/opd-attendance-details.blade.php +++ /dev/null @@ -1,83 +0,0 @@ -@extends('layouts.main') - -@section('content') - -
    -
    -

    {{ __('hmis_reports.hmis_105_report') }}

    -
    - -
    - -
    - -
    - -
    -

    {{ __('hmis_reports.patient_details') }}

    - {{ __('hmis_reports.print') }} -
    - - - -
    - {{ $patients->links() }} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    #{{ __('hmis_reports.patient_number') }}{{ __('hmis_reports.names') }}{{ __('hmis_reports.date_of_birth') }}{{ __('hmis_reports.gender') }}{{ __('hmis_reports.phone') }}{{ __('hmis_reports.category') }}{{ __('hmis_reports.select') }}
    {{ $numbering }}{{ $patient->number }}{{ $patient->first_name . ' ' . $patient->last_name }}{{ Carbon\Carbon::parse($patient->date_of_birth)->format('jS M Y') }}{{ $patient->gender == 1 ? 'Male' : 'Female' }}{{ $patient->phone }}{{ isset($categories[$patient->category_id]) ? $categories[$patient->category_id] : 'NA' }} -
    - @csrf() - -
    -
    - {{ $patients->links() }} -
    - -
    - - -
    -@endsection diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/opd-diagnosis-details.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/opd-diagnosis-details.blade.php deleted file mode 100755 index c783dc08..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/opd-diagnosis-details.blade.php +++ /dev/null @@ -1,88 +0,0 @@ -@extends('layouts.main') - -@section('content') - -
    -
    -

    {{ __('hmis_reports.hmis_105_report') }}

    -
    - -
    - -
    - -
    - -
    -

    {{ __('hmis_reports.patient_details') }}

    - {{ __('hmis_reports.print') }} -
    - - - -
    - {{ $patients->links() }} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    #{{ __('hmis_reports.patient_names') }}{{ __('hmis_reports.names') }}{{ __('hmis_reports.date_of_birth') }}{{ __('hmis_reports.gender') }}{{ __('hmis_reports.phone') }}{{ __('hmis_reports.category') }}{{ __('hmis_reports.select') }}
    {{ $numbering }}{{ $patient->number }}{{ $patient->first_name . ' ' . $patient->last_name }}{{ Carbon\Carbon::parse($patient->date_of_birth)->format('jS M Y') }}{{ $patient->gender == 1 ? __('hmis_reports.male') : __('hmis_reports.female') }}{{ $patient->phone }}{{ isset($categories[$patient->category_id]) ? $categories[$patient->category_id] : 'NA' }} -
    - @csrf() - -
    -
    {{ __('hmis_reports.no_records_found') }}
    - {{ $patients->links() }} -
    - -
    - - -
    -@endsection diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/opd-referral-details.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/opd-referral-details.blade.php deleted file mode 100755 index f4a5430f..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/opd-referral-details.blade.php +++ /dev/null @@ -1,88 +0,0 @@ -@extends('layouts.main') - -@section('content') - -
    -
    -

    {{ __('hmis_reports.hmis_105_report') }}

    -
    - -
    - -
    - -
    - -
    -

    {{ __('hmis_reports.patient_details') }}

    - {{ __('hmis_reports.print') }} -
    - - - -
    - {{ $patients->links() }} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    #{{ __('hmis_reports.patient_names') }}{{ __('hmis_reports.names') }}{{ __('hmis_reports.date_of_birth') }}{{ __('hmis_reports.gender') }}{{ __('hmis_reports.phone') }}{{ __('hmis_reports.category') }}{{ __('hmis_reports.select') }}
    {{ $numbering }}{{ $patient->number }}{{ $patient->last_name . ' ' . $patient->first_name }}{{ Carbon\Carbon::parse($patient->date_of_birth)->format('jS M Y') }}{{ $patient->gender == 1 ? __('hmis_reports.male') : __('hmis_reports.female') }}{{ $patient->phone }}{{ isset($categories[$patient->category_id]) ? $categories[$patient->category_id] : 'NA' }} -
    - @csrf() - -
    -
    {{ __('hmis_reports.no_records_found') }}
    - {{ $patients->links() }} -
    - -
    - - -
    -@endsection diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/opd-risky-behaviours.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/opd-risky-behaviours.blade.php deleted file mode 100755 index c306f9c7..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/opd-risky-behaviours.blade.php +++ /dev/null @@ -1,279 +0,0 @@ -date_from) && isset($request->date_to)) { - // - // $attendance_from = Carbon::createFromFormat('d/m/Y', $request->date_from)->toDateString(); - // $attendance_to = Carbon::createFromFormat('d/m/Y', $request->date_to)->toDateString(); - // - // $search_button = $request->filterBtn; - //} else { - // $attendance_from = \Carbon\Carbon::today()->subDays(30)->format('Y-m-d'); - // $attendance_to = date("Y-m-d"); - //} - - $alcohol_male_5to9 = []; - $alcohol_male_10to19 = []; - $alcohol_male_20plus = []; - - $tobacco_male_5to9 = []; - $tobacco_male_10to19 = []; - $tobacco_male_20plus = []; - - $alcohol_female_5to9 = []; - $alcohol_female_10to19 = []; - $alcohol_female_20plus = []; - - $tobacco_female_5to9 = []; - $tobacco_female_10to19 = []; - $tobacco_female_20plus = []; - - $query_behavior = "SELECT t.patient_id as patient_id, t.id as triage_id, t.observations as observations, t.created_at as create_date," - . "d.date_of_birth as dob, d.gender as gender FROM triage t, patients d " - . "WHERE (t.created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}')" - . " AND (patient_id = d.id) AND ((t.observations LIKE '%Alcohol use=High%') " - . "OR (t.observations LIKE '%Alcohol use=Moderate%') " - . "OR (t.observations LIKE '%Alcohol use=Low%') " - . "OR (t.observations LIKE '%Tobacco use=High%') " - . "OR (t.observations LIKE '%Tobacco use=Moderate%') " - . "OR (t.observations LIKE '%Tobacco use=Low%')) GROUP BY patient_id ORDER BY patient_id DESC"; - - $triage_results = DB::select($query_behavior); - - if (count($triage_results) > 0) { - foreach ($triage_results as $triage_result) { - - $dob = new \Carbon\Carbon($triage_result->dob); - $age = $dob->diffInYears($triage_result->create_date); - - $age = intval($age); - $sex = $triage_result->gender; - $observation_explode = explode(",", $triage_result->observations); - - if ($age > 5 && $age < 10) { - if ($sex == 1 && (in_array('Alcohol use=High', $observation_explode) || in_array('Alcohol use=Moderate', $observation_explode) || in_array('Alcohol use=Low', $observation_explode))) { - array_push($alcohol_male_5to9, $triage_result->patient_id); - } - if ($sex == 1 && (in_array('Tobacco use=High', $observation_explode) || in_array('Tobacco use=Moderate', $observation_explode) || in_array('Tobacco use=Low', $observation_explode))) { - array_push($tobacco_male_5to9, $triage_result->patient_id); - } - if ($sex == 2 && (in_array('Alcohol use=High', $observation_explode) || in_array('Alcohol use=Moderate', $observation_explode) || in_array('Alcohol use=Low', $observation_explode))) { - array_push($alcohol_female_5to9, $triage_result->patient_id); - } - if ($sex == 2 && (in_array('Tobacco use=High', $observation_explode) || in_array('Tobacco use=Moderate', $observation_explode) || in_array('Tobacco use=Low', $observation_explode))) { - array_push($tobacco_female_5to9, $triage_result->patient_id); - } - } elseif ($age > 10 && $age < 20) { - if ($sex == 1 && (in_array('Alcohol use=High', $observation_explode) || in_array('Alcohol use=Moderate', $observation_explode) || in_array('Alcohol use=Low', $observation_explode))) { - array_push($alcohol_male_10to19, $triage_result->patient_id); - } - if ($sex == 1 && (in_array('Tobacco use=High', $observation_explode) || in_array('Tobacco use=Moderate', $observation_explode) || in_array('Tobacco use=Low', $observation_explode))) { - array_push($tobacco_male_10to19, $triage_result->patient_id); - } - if ($sex == 2 && (in_array('Alcohol use=High', $observation_explode) || in_array('Alcohol use=Moderate', $observation_explode) || in_array('Alcohol use=Low', $observation_explode))) { - array_push($alcohol_female_10to19, $triage_result->patient_id); - } - if ($sex == 2 && (in_array('Tobacco use=High', $observation_explode) || in_array('Tobacco use=Moderate', $observation_explode) || in_array('Tobacco use=Low', $observation_explode))) { - array_push($tobacco_female_10to19, $triage_result->patient_id); - } - } elseif ($age > 20) { - if ($sex == 1 && (in_array('Alcohol use=High', $observation_explode) || in_array('Alcohol use=Moderate', $observation_explode) || in_array('Alcohol use=Low', $observation_explode))) { - array_push($alcohol_male_20plus, $triage_result->patient_id); - } - if ($sex == 1 && (in_array('Tobacco use=High', $observation_explode) || in_array('Tobacco use=Moderate', $observation_explode) || in_array('Tobacco use=Low', $observation_explode))) { - array_push($tobacco_male_20plus, $triage_result->patient_id); - } - if ($sex == 2 && (in_array('Alcohol use=High', $observation_explode) || in_array('Alcohol use=Moderate', $observation_explode) || in_array('Alcohol use=Low', $observation_explode))) { - array_push($alcohol_female_20plus, $triage_result->patient_id); - } - if ($sex == 2 && (in_array('Tobacco use=High', $observation_explode) || in_array('Tobacco use=Moderate', $observation_explode) || in_array('Tobacco use=Low', $observation_explode))) { - array_push($tobacco_female_20plus, $triage_result->patient_id); - } - } - } - } -?> -{{-- - 1.3.9 - RISKY BEHAVIOURS - --}} - - RB01 - Alcohol use - - - - - -
    - @csrf - - - - - @if(count($alcohol_male_5to9) > 0) - - @else - {!! '   ' . count($alcohol_male_5to9) !!} - @endif -
    - - -
    - @csrf - - - - - @if(count($alcohol_female_5to9) > 0) - - @else - {!! '   ' . count($alcohol_female_5to9) !!} - @endif -
    - - -
    - @csrf - - - - - @if(count($alcohol_male_10to19) > 0) - - @else - {!! '   ' . count($alcohol_male_10to19) !!} - @endif -
    - - -
    - @csrf - - - - - @if(count($alcohol_female_10to19) > 0) - - @else - {!! '   ' . count($alcohol_female_10to19) !!} - @endif -
    - - -
    - @csrf - - - - - @if(count($alcohol_male_20plus) > 0) - - @else - {!! '   ' . count($alcohol_male_20plus) !!} - @endif -
    - - -
    - @csrf - - - - - @if(count($alcohol_female_20plus) > 0) - - @else - {!! '   ' . count($alcohol_female_20plus) !!} - @endif -
    - - - - RB02 - Tobacco use - - - - - -
    - @csrf - - - - - @if(count($tobacco_male_5to9) > 0) - - @else - {!! '   ' . count($tobacco_male_5to9) !!} - @endif -
    - - -
    - @csrf - - - - - @if (count($tobacco_female_5to9) > 0) - - @else - {!! '   ' . count($tobacco_female_5to9) !!} - @endif -
    - - -
    - @csrf - - - - - @if(count($tobacco_male_10to19) > 0) - - @else - {!! '   ' . count($tobacco_male_10to19) !!} - @endif -
    - - -
    - @csrf - - - - - @if(count($tobacco_female_10to19) > 0) - - @else - {!! '   ' . count($tobacco_female_10to19) !!} - @endif -
    - - -
    - @csrf - - - - - @if(count($tobacco_male_20plus) > 0) - - @else - {!! '   ' . count($tobacco_male_20plus) !!} - @endif -
    - - -
    - @csrf - - - - - @if(count($tobacco_female_20plus) > 0) - - @else - {!! '   ' . count($tobacco_female_20plus) !!} - @endif -
    - - diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/opd_attendance.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/opd_attendance.blade.php deleted file mode 100755 index 10d76bd8..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/opd_attendance.blade.php +++ /dev/null @@ -1,175 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Category0 - 28 Days29 Days - 4 Years5 - 9 Years10 - 19 Years20 Years & Above
    MFMFMFMFMF
    OA01 New attendance - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - -
    OA02 Reattendance - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - -
    - diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/opd_diagnoses.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/opd_diagnoses.blade.php deleted file mode 100755 index 7b31f9b9..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/opd_diagnoses.blade.php +++ /dev/null @@ -1,343 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - select('id', 'number', 'title')->get(); - - $count = 1; - - foreach ($hmis_categories_query as $hmis_category_row) { - - echo ""; - - $diagnosis_query = DB::table('diagnoses')->select('id', 'name', 'hmis_no_outpatient', 'hmis_category')->where('hmis_category', $hmis_category_row->id)->orderBy('hmis_no_outpatient', 'desc')->get(); - - foreach ($diagnosis_query as $diagnosis_row) { - - $OPDNo = $diagnosis_row->hmis_no_outpatient; - - if (empty($OPDNo) || is_null($OPDNo) || - trim($OPDNo) == '-' || ctype_digit(trim($OPDNo)) || - trim($OPDNo) == '.' || trim($OPDNo) == '`'): - //continue; - endif; - - $male_0_28_days = []; - $female_0_28_days = []; - - $male_29days_4years = []; - $female_29days_4years = []; - - $male_5_9years = []; - $female_5_9years = []; - - $male_10_19years = []; - $female_10_19years = []; - - $male_20years = []; - $female_20years = []; - - if (!empty($attendance_from) && !empty($attendance_to)): - - $consultations = DB::table('consultations') - ->join('patients', 'consultations.patient_id', '=', 'patients.id') - ->whereBetween('consultations.created_at', [$attendance_from, $attendance_to]) - ->select('patients.id as patient_id', 'patients.gender', - 'patients.date_of_birth', 'consultations.primary_diagnosis', - 'consultations.other_diagnoses', 'consultations.created_at')->get(); - - foreach ($consultations as $consultation) { - - $dateOfBirth = \Carbon\Carbon::parse($consultation->date_of_birth); - //$dateCreated = \Carbon\Carbon::parse($consultation->created_at); - $currentDateTimeStamp = \Carbon\Carbon::now(); - - $diffInDays = $dateOfBirth->diffInDays($currentDateTimeStamp); - - $patientId = $consultation->patient_id; - $gender = $consultation->gender; - - $primaryDiaganosis = $consultation->primary_diagnosis; - $otherDiagnosis = is_null($consultation->other_diagnoses) ? [] : unserialize($consultation->other_diagnoses); - -// 0 - 29 Days =========================================================================================== -// Male - if ($diffInDays >= 0 && $diffInDays <= 29 && $gender == 1): #1 means Male, 2 means a female, 3 others - if ($primaryDiaganosis == $diagnosis_row->id): - $male_0_28_days[] = $patientId; - endif; - - if (in_array($diagnosis_row->id, $otherDiagnosis)): - $male_0_28_days[] = $patientId; - endif; - endif; -// Female - if ($diffInDays >= 0 && $diffInDays <= 29 && $gender == 2): - if ($primaryDiaganosis == $diagnosis_row->id): - $female_0_28_days[] = $patientId; - endif; - - if (in_array($diagnosis_row->id, $otherDiagnosis)): - $female_0_28_days[] = $patientId; - endif; - endif; -// 29 - 4 Years =========================================================================================== -// Male - if ($diffInDays >= 28 && $diffInDays <= 1825 && $gender == 1): - if ($primaryDiaganosis == $diagnosis_row->id): - $male_29days_4years[] = $patientId; - endif; - - if (in_array($diagnosis_row->id, $otherDiagnosis)): - $male_29days_4years[] = $patientId; - endif; - endif; -// Female - if ($diffInDays >= 28 && $diffInDays <= 1825 && $gender == 2): - if ($primaryDiaganosis == $diagnosis_row->id): - $female_29days_4years[] = $patientId; - endif; - - if (in_array($diagnosis_row->id, $otherDiagnosis)): - $female_29days_4years[] = $patientId; - endif; - endif; -// 5 - 9 Years =========================================================================================== -// Male - if ($diffInDays >= 1826 && $diffInDays <= 3650 && $gender == 1): - if ($primaryDiaganosis == $diagnosis_row->id): - $male_5_9years[] = $patientId; - endif; - - if (in_array($diagnosis_row->id, $otherDiagnosis)): - $male_5_9years[] = $patientId; - endif; - endif; -// Female - if ($diffInDays >= 1826 && $diffInDays <= 3650 && $gender == 2): - if ($primaryDiaganosis == $diagnosis_row->id): - $female_5_9years[] = $patientId; - endif; - - if (in_array($diagnosis_row->id, $otherDiagnosis)): - $female_5_9years[] = $patientId; - endif; - endif; -// 10 - 19 Years =========================================================================================== -// Male - if ($diffInDays >= 3651 && $diffInDays <= 7300 && $gender == 1): - if ($primaryDiaganosis == $diagnosis_row->id): - $male_10_19years[] = $patientId; - endif; - - if (in_array($diagnosis_row->id, $otherDiagnosis)): - $male_10_19years[] = $patientId; - endif; - endif; -// Female - if ($diffInDays >= 3651 && $diffInDays <= 7300 && $gender == 2): - if ($primaryDiaganosis == $diagnosis_row->id): - $female_10_19years[] = $patientId; - endif; - - if (in_array($diagnosis_row->id, $otherDiagnosis)): - $female_10_19years[] = $patientId; - endif; - endif; -// 20 Years and above =========================================================================================== -// Male - if ($diffInDays >= 7301 && $gender == 1): - if ($primaryDiaganosis == $diagnosis_row->id): - $male_20years[] = $patientId; - endif; - - if (in_array($diagnosis_row->id, $otherDiagnosis)): - $male_20years[] = $patientId; - endif; - endif; -// Female - if ($diffInDays >= 7301 && $gender == 2): - if ($primaryDiaganosis == $diagnosis_row->id): - $female_20years[] = $patientId; - endif; - - if (in_array($diagnosis_row->id, $otherDiagnosis)): - $female_20years[] = $patientId; - endif; - endif; - } - endif; - ?> - - - @if(substr($OPDNo, 0, 3) == 'EP01') - - @else - - @endif - - - - - - - - - - - - - - - - @include('reports::hmis_reports.105.opd-risky-behaviours') - -
    Diagnosis Name0 - 28 Days29 Days - 4 Years5 - 9 Years10 - 19 Years20 Years & Above
    MaleFemaleMaleFemaleMaleFemaleMaleFemaleMaleFemale
    " - . "" . $hmis_category_row->number . "" . $hmis_category_row->title . "
    {{ $OPDNo }}{{ $OPDNo }}{{ $diagnosis_row->name }} - 0): - ?> - {{ count($male_0_28_days) }} - - - 0): - ?> - {{ count($female_0_28_days) }} - - - 0): - ?> - {{ count($male_29days_4years) }} - - - 0): - ?> - {{ count($female_29days_4years) }} - - - 0): - ?> - {{ count($male_5_9years) }} - - - 0): - ?> - {{ count($female_5_9years) }} - - - 0): - ?> - {{ count($male_10_19years) }} - - - 0): - ?> - {{ count($female_10_19years) }} - - - 0): - ?> - {{ count($male_20years) }} - - - 0): - ?> - {{ count($female_20years) }} - -
    - - diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/opd_referrals.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/opd_referrals.blade.php deleted file mode 100755 index 3458b4f6..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/opd_referrals.blade.php +++ /dev/null @@ -1,366 +0,0 @@ - 20 Years -$male_20_years_to = []; -$female_20_years_to = []; -$male_20_years_from = []; -$female_20_years_from = []; - -$episodes = DB::table('patient_episodes')->whereBetween('created_at', [$attendance_from, $attendance_to])->select('patient_id', 'triage_id', 'consultation_id', 'created_at')->get(); -foreach ($episodes as $episode): - - $patient = DB::table('patients')->select('id', 'date_of_birth', 'gender')->find($episode->patient_id); - - if (!$patient): - continue; - endif; - - $dateOfBirth = \Carbon\Carbon::parse($patient->date_of_birth); - $dateCreated = \Carbon\Carbon::parse($episode->created_at); - - $diffInDays = $dateOfBirth->diffInDays($dateCreated); - - $triageId = $episode->triage_id; - $consultationId = $episode->consultation_id; - -// Referrals to UNIT - $triage = DB::table('triage')->select('referral')->find($triageId); - if ($triage): - - if ($triage->referral != 1): // make sure its not a self referral - switch ($diffInDays) { - case ($diffInDays >= 0 && $diffInDays <= 29): // 0 - 28 days olds - - if ($patient->gender == 1): // Males - $male_0_28_days_to[] = $patient->id; - endif; - - if ($patient->gender == 2): // Females - $female_0_28_days_to[] = $patient->id; - endif; - break; - - case ($diffInDays >= 28 && $diffInDays <= 1825): // 29 Days - 4 Years - - if ($patient->gender == 1): // Males - $male_29_4_years_to[] = $patient->id; - endif; - - if ($patient->gender == 2): // Females - $female_29_4_years_to[] = $patient->id; - endif; - break; - - case ($diffInDays >= 1826 && $diffInDays <= 3650): // 5 - 9 Years - - if ($patient->gender == 1): // Males - $male_5_9_years_to[] = $patient->id; - endif; - - if ($patient->gender == 2): // Females - $female_5_9_years_to[] = $patient->id; - endif; - break; - - case ($diffInDays >= 3651 && $diffInDays <= 7300): // 10 - 19 Years - - if ($patient->gender == 1): // Males - $male_10_19_years_to[] = $patient->id; - endif; - - if ($patient->gender == 2): // Females - $female_10_19_years_to[] = $patient->id; - endif; - - break; - - case ($diffInDays >= 7301): // 20 Years & Above - - if ($patient->gender == 1): // Males - $male_20_years_to[] = $patient->id; - endif; - - if ($patient->gender == 2): // Females - $female_20_years_to[] = $patient->id; - endif; - - break; - - default: - break; - } - endif; - endif; - -// Referrals from UNIT - $consultation = DB::table('consultations')->select('outcome_id')->find($consultationId); - if ($consultation): - - if (!empty($consultation) && $consultation->outcome_id == 4): // make sure the outcome if a referral outside the same hostpital - switch ($diffInDays) { - case ($diffInDays >= 0 && $diffInDays <= 29): // 0 - 28 days olds - - if ($patient->gender == 1): // Males - $male_0_28_days_from[] = $patient->id; - endif; - - if ($patient->gender == 2): // Females - $female_0_28_days_from[] = $patient->id; - endif; - break; - - - case ($diffInDays >= 28 && $diffInDays <= 1825): // 29 Days - 4 Years - - if ($patient->gender == 1): // Males - $male_29_4_years_from[] = $patient->id; - endif; - - if ($patient->gender == 2): // Females - $female_29_4_years_from[] = $patient->id; - endif; - break; - - - case ($diffInDays >= 1826 && $diffInDays <= 3650): // 5 - 9 Years - - if ($patient->gender == 1): // Males - $male_5_9_years_from[] = $patient->id; - endif; - - if ($patient->gender == 2): // Females - $female_5_9_years_from[] = $patient->id; - endif; - - break; - - - case ($diffInDays >= 3651 && $diffInDays <= 7300): // 10 - 19 Years - - if ($patient->gender == 1): // Males - $male_10_19_years_from[] = $patient->id; - endif; - - if ($patient->gender == 2): // Females - $female_10_19_years_from[] = $patient->id; - endif; - - break; - - case ($diffInDays >= 7301): // 20 Years & Above - - if ($patient->gender == 1): // Males - $male_20_years_from[] = $patient->id; - endif; - - if ($patient->gender == 2): // Females - $female_20_years_from[] = $patient->id; - endif; - - break; - - default: - break; - } - endif; - - endif; -endforeach; -?> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Category0 - 28 Days29 Days - 4 Years5 - 9 Years10 - 19 Years20 Years & Above
    MFMFMFMFMF
    OR01 Referrals to unit - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - -
    OR02 Referrals from unit - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - - - - - "> - - -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/post_natal.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/post_natal.blade.php deleted file mode 100755 index e6e8592b..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/post_natal.blade.php +++ /dev/null @@ -1,333 +0,0 @@ -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    2.3 POSTNATALNUMBER
    - PN01.Post Natal Attendances - - - - - - - - - - - - - - - - - - - - - - - - - -
    Age groupBelow 15 years0
    15-19 years0
    20-24 years0
    25-49 years0
    50+ years0
    - - - - - - - - - - - - - - - - - - - - - -
    Timing24 Hours0
    6 Days0
    6 Weeks0
    6 Months0
    -
    - PN02. Referrals to PNC unit - - - - - - - - - - - - -
    Total referrals0
    From community services0
    -
    - PN03. Breast feeding mothers tested for HIV 1st time during Postnatal - - - - - - - - - - - - -
    Total (TR & TRR)0
    HIV+ (TRR)0
    -
    - PN04.Breastfeeding mothers re-tested for HIV during Postnatal - - - - - - - - - - - - -
    Total (TR+ & TRR+)0
    TRR+0
    -
    - PN05. HIV+ women initiating ART in Postnatal - - - - - - - - - - - - - - - - - - - - -
    Total HIV+0
    New Positives (TRR)0
    Positive on re-test (TRR+)0
    Positives but never initiated in ANC, Labour and Delivery (TRRK)0
    -
    -
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    2.3 POSTNATALNUMBER
    - PN06.HIV+ breastfeeding mothers newly enrolled in MCH groups - 0
    - PN07: Mother-baby pairs enrolled at Mother-Baby care point - 0
    - PN08. Male partners received HIV test results in the postnatal setting - - - - - - - - - - - - -
    Total (TR & TRR)0
    HIV+ (TRR)0
    -
    - PN09. HIV+ male partners initiated on ART in the postnatal setting - 0
    - PN10.Breast feeding mothers given self-testing kits for their male partners - - - - - - - - - - - - - - - - -
    Total0
    Tests returned HIV+0
    Tests returned HIV negative0
    -
    - PN11. Number of discordant couples identified in PNC - 0
    - PN12. Cancer of the breast - - - - - - - - - - - - -
    Clients screened for Cancer of the breast0
    Clients with pre-malignant conditions of breast0
    -
    - PN13. Cancer of the Cervix - - - - - - - - - - - - -
    Clients screened for Cancer of the Cervix0
    Clients with pre-malignant conditions of cervix0
    -
    - PN14. Lactating mothers who received Nutritional assessment - - - - - - - - - - - - -
    Total0
    HIV+0
    -
    - PN15. Post-natal mothers who received Counselling - - - - - - - - - - - - - -
    Maternal NutritionalTotal0
    HIV+0
    - - - - - - - - - - - - - -
    Infant FeedingTotal0
    HIV+0
    -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/print.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/print.blade.php deleted file mode 100755 index 34c52fc8..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/print.blade.php +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'HMIS Report 105 - Stre@mline') }} - - - - - - - - -
    - Responsive image -

    HMIS FORM 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT

    -
    -
    - - - - - - - - - - - - - - - - - - - - - -
    Health Unit{{ $hospital_information->name }}
    District{{ get_name($hospital_information->district, 'id','name','districts') }}
    Subcounty{{ get_name($hospital_information->sub_county,'id','name','subcounties') }}
    Report Type - National   - - Refugee   - - Foreigner   -
    -
    -
    - - - - - - - - - - - - - -
    Level{{ $hospital_information->level }}
    Health Sub-District{{ $hospital_information->sub_district }}
    Reporting Period - {{ \Carbon\Carbon::createFromFormat('Y-m-d',$attendance_from)->format('d m Y') }} - to {{ \Carbon\Carbon::createFromFormat('Y-m-d',$attendance_to)->format('d m Y') }} -
    -
    - -
    - - - - - - -
    Code{{ $hospital_information->code }}
    - -
    -
    -
    -
    -
    1.1 OUTPATIENT ATTENDANCE
    - @include('reports::hmis_reports.105.opd_attendance') -
    -
    -
    1.2 OUTPATIENT REFERRALS
    - @include('reports::hmis_reports.105.opd_referrals') -
    -
    -
    -
    -
    1.3 OUTPATIENT DIAGNOSES
    - @include('reports::hmis_reports.105.opd_diagnoses') -
    -
    - - @include('reports::hmis_reports.105.lab-routine-tests') - - -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/print_hmis_105_information.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/print_hmis_105_information.blade.php deleted file mode 100644 index 182379c6..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/print_hmis_105_information.blade.php +++ /dev/null @@ -1,123 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Streamline') }} - - - - - - - - - - - -
    - @php - $hospital_information = \Streamline\Models\HospitalInformation::find(1); - $attendance_to = !empty($dates['end'])? $dates['end']:$dates['days'].'-'.$dates['last_month'].'-'.$dates['last_year']; - $attendance_from = !empty($dates['start'])? $dates['start']:'01-'.$dates['last_month'].'-'.$dates['last_year']; - @endphp - Responsive image -

    Ministry of Health

    -

    {{ __('hmis_reports.hmis_105') }}

    -
    -
    - - - - - - - - - - - - - - - - - -
    {{ __('hmis_reports.health_unit') }}{{ $hospital_information->name }}
    {{ strtoupper(__('hmis_reports.district')) }}{{ get_name($hospital_information->district, 'id','name','districts') }}
    {{ strtoupper(__('hmis_reports.subcounty')) }}{{ get_name($hospital_information->sub_county,'id','name','subcounties') }}
    {{strtoupper( __('hmis_reports.code')) }}{{ $hospital_information->code }}
    -
    -
    - - - - - - - - - - - - - - - - - -
    {{ __('hmis_reports.level') }}{{ $hospital_information->level }}
    {{ __('hmis_reports.health_sub_district') }}{{ $hospital_information->sub_district }}
    {{ __('hmis_reports.reporting_period') }} - {{ streamline_date($attendance_from) }} {{ __('hmis_reports.to') }} {{ streamline_date($attendance_to) }} -
    {{ strtoupper( __('hmis_reports.selected_report_type')) }}{{ (!empty($dates['citizenship']) && $dates['citizenship'] == '1')? 'National':'Foreigner / Non Ugandan' }}
    -
    -
    - @if ($page == 'Outpatient Diagnoses') - {{--
    -

    {{ __('hmis_reports.hmis_108_report_admissions_deaths') }}

    -
    --}} -
    - @include('reports::hmis_reports.105.monthly_diagnoses') -
    - @endif -
    - - - \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/risky-behaviours-drill.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/risky-behaviours-drill.blade.php deleted file mode 100755 index 245c8ea6..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/risky-behaviours-drill.blade.php +++ /dev/null @@ -1,126 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -
    RISKY BEHAVIOUR DETAILS
    -
    -
    - -
    -
    -
    - @include('flash::message') -

    RISKY BEHAVIOUR DETAILS

    - -
    -
    - - - - - - - - - - - - - - @php $counter = 1; @endphp - @if(count($patients_results) > 0) - @foreach($patients_results as $patient) - @php $dob = new Carbon\Carbon($patient->date_of_birth); @endphp - - - - - - - - - - @php $counter++; @endphp - @endforeach - @else - - @endif - -
    Patient NumberFull NamesGenderAgePhone
    {{ $counter }}.{{ $patient->number }}{!! insurance_flag($patient->id) !!}{{ $patient->gender == 1 ? "Male" : "Female" }}{{ $dob->diffInYears(Carbon\Carbon::now()) }}yrs{{ $patient->phone }} - Select -
    No records found
    -
    - {{-- Total number of patients: {{ count($patients_results) }} --}} -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/risky-behaviours.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/risky-behaviours.blade.php deleted file mode 100755 index 128c171f..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/risky-behaviours.blade.php +++ /dev/null @@ -1,281 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -
    RISKY BEHAVIOUR
    -
    -
    - -
    -
    -
    - @include('flash::message') -

    RISKY BEHAVIOUR

    - -
    -
    - Showing results from {{ streamline_date($attendance_from) }} to {{ streamline_date($attendance_to) }} -
    -
    - {{ Form::open(['url' => '/hmis/105/risky-behaviours','data-toggle'=>'validator']) }} - - {{ Form::label('date_from','Date From') }} -
    -
    -
    - {{ Form::text('date_from','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-from']) }} - -
    -
    -
    - {{ Form::label('date_to','Date To') }} -
    -
    -
    - {{ Form::text('date_to','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-to']) }} - -
    -
    -
    - {{ Form::submit('Search',['name' => 'filterBtn','class' => 'btn btn-success']) }} - {{ Form::close() }} -
    -
    -
    -
    -
    -
    RISKY BEHAVIOUR
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    1.3.9 RISKY BEHAVIOURS
    MALEFEMALE
    5 - 9 Years10 - 19 Years >=20 Years5 - 9 Years10 - 19 Years >=20 Years
    R1 - Alcohol use -
    - @csrf - - - - - @if(count($alcohol_male_5to9) > 0) - - @else - {!! '   ' . count($alcohol_male_5to9) !!} - @endif -
    -
    -
    - @csrf - - - - - @if(count($alcohol_male_10to19) > 0) - - @else - {!! '   ' . count($alcohol_male_10to19) !!} - @endif -
    -
    -
    - @csrf - - - - - @if(count($alcohol_male_20plus) > 0) - - @else - {!! '   ' . count($alcohol_male_20plus) !!} - @endif -
    -
    -
    - @csrf - - - - - @if(count($alcohol_female_5to9) > 0) - - @else - {!! '   ' . count($alcohol_female_5to9) !!} - @endif -
    -
    -
    - @csrf - - - - - @if(count($alcohol_female_10to19) > 0) - - @else - {!! '   ' . count($alcohol_female_10to19) !!} - @endif -
    -
    -
    - @csrf - - - - - @if(count($alcohol_female_20plus) > 0) - - @else - {!! '   ' . count($alcohol_female_20plus) !!} - @endif -
    -
    R2 - Tobacco use -
    - @csrf - - - - - @if(count($tobacco_male_5to9) > 0) - - @else - {!! '   ' . count($tobacco_male_5to9) !!} - @endif -
    -
    -
    - @csrf - - - - - @if(count($tobacco_male_10to19) > 0) - - @else - {!! '   ' . count($tobacco_male_10to19) !!} - @endif -
    -
    -
    - @csrf - - - - - @if(count($tobacco_male_20plus) > 0) - - @else - {!! '   ' . count($tobacco_male_20plus) !!} - @endif -
    -
    -
    - @csrf - - - - - @if (count($tobacco_female_5to9) > 0) - - @else - {!! '   ' . count($tobacco_female_5to9) !!} - @endif -
    -
    -
    - @csrf - - - - - @if(count($tobacco_female_10to19) > 0) - - @else - {!! '   ' . count($tobacco_female_10to19) !!} - @endif -
    -
    -
    - @csrf - - - - - @if(count($tobacco_female_20plus) > 0) - - @else - {!! '   ' . count($tobacco_female_20plus) !!} - @endif -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/sample_105_table.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/sample_105_table.blade.php deleted file mode 100755 index f14a4a78..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/sample_105_table.blade.php +++ /dev/null @@ -1,47770 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') - - -
    - -
    - -
    - -
    - - - -

    10 – 19Yrs

    - - -

    20Yrs & above

    - -  - - - -

    Male

    - - -

    Female

    - - -

    Male

    - - -

    Female

    - - -

    Male

    - - -

    Female

    - - -

    Male

    - - -

    Female

    - - -

    Male

    - - -

    Female

    - -  - - - -

     

    - - -

     

    - - - - -

    1.3.1 Epidemic-Prone Diseases

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - -  - - - -

    Malaria

    - - -

    EP01a. Suspected fever

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - -  - - - -

    EP01b. Malaria Total

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - -  - - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - -  - - - -

    EP01.

    - - -

    EP01c. Malaria confirmed (B/s

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - -  - - - -

    and RDT Positive)

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - -  - - - -

    EP01d. Malaria cases treated

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - -  - - - -

    EP02. Acute Flaccid Paralysis

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - -  - - - -

    EP03. Animal Bites (suspected rabies)

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - -  - - - -

    EP04. Cholera

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - -  - - - -

    EP05. Dysentery

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - -  - - - -

    EP06. Guinea Worm

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - -  - - - -

    EP07. Measles

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - -  - - - -

    EP08. Bacterial Meningitis

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - - -

     

    - -  - - - -

     

    -

    EP09. Neonatal tetanus

    -

     

    -

    EP10. Plague

    -

     

    -

    EP11. Yellow Fever

    -

     

    -

    EP12. Other Viral Haemorrhagic

    -

    Fevers

    -

    EP13. Severe Acute Respiratory

    -

    Infection (SARI)

    -

    EP14. Adverse Events

    -

    Following                Serious

    -

    Immunization

    -

    (AEFI)                  Non Serious

    -

     

    -

    EP15. Typhoid Fever

    -

     

    -

    EP16. Presumptive MDR TB cases

    -

     

    -

    EP17. Other Emerging infectious

    -

    Diseases e.g. Influenza like

    -

     

    -

    illness (ILI), SARS

    -

     

    -

    1.3.2 Other Infectious / Communicable Diseases

    -

     

    -

    CD01. Diarrhoea – Acute

    -

     

    -

    CD02. Diarrhoea –Persistent

    -

     

    -

    CD03. Urethral discharges

    -

     

    -

    CD04. Genital ulcers

    -

     

    -

    Print Version September 2019

    -


    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT

    -
    -

     

    -
    -

    Page 2

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Diagnosis

    -
    -

    0-28 days

    -
    -

    29 days - 4Yrs

    -
    -

    5 – 9Yrs

    -
    -

    10 – 19Yrs

    -
    -

     

    -
    -

    20Yrs & above

    -
    -

    Male

    -
    -

    Female

    -
    -

    Male

    -
    -

    Female

    -
    -

    Male

    -
    -

    Female

    -
    -

    Male

    -
    -

    Female

    -
    -

     

    -
    -

    Male

    -
    -

    Female

    -
    -

     

    -
    -

     

    -
    -

    1.3.2 Other Infectious / Communicable Diseases (Continued)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CD05. Sexually Transmitted   Infection

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    due to Sexual Gender Based

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Violence

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CD06. Other Sexually Transmitted

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Infections

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CD07. Urinary Tract Infections (UTI)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CD08. Intestinal Worms

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CD09. Haematological Meningitis

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CD10. Other types of meningitis

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CD11.Cough or cold - No pneumonia

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CD12. Pneumonia

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CD13. Severe Pneumonia

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CD14. Skin Diseases

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CD15. Tetanus (over 28 days)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CD16. Sleeping sickness

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CD17. Pelvic Inflammatory Disease (PID)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CD18. Brucellosis

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    1.3.3 Neonatal Diseases

    -

     

    -

    ND01. Neonatal Sepsis (0-7days)

    -

     

    -

    ND02. Neonatal Sepsis (8-28days)

    -

     

    -

    ND03. Neonatal Pneumonia (0-7days)

    -

     

    -

    ND04. Neonatal Pneumonia(8-28days)

    -

     

    -

    ND05. Neonatal Meningitis

    -

     

    -

    ND06. Neonatal Jaundice

    -

     

    -

    ND07. Premature baby (as a Condition

    -

     

    -

    for management)

    -

     

    -

    ND08. Other Neonatal Conditions

    -

     

    -

    1.3.4 Non Communicable Diseases/Conditions

    -

     

    -

    NC01. Sickle Cell Anaemia

    -

     

    -

    NC02. Other types of Anaemia

    -

     

    -

    NC03. Gastro-Intestinal Disorders

    -

     

    -

    (non-Infective)

    -

     

    -

    NC04. Pain Requiring Palliative Care

    -

     

    -

    1.3.5 Oral diseases

    -

     

    -

    OD01. Dental Caries

    -

     

    -

    OD02. Gingivitis

    -

     

    -

    OD03. HIV-Oral lesions

    -

     

    -

    OD04. Oral Cancers

    -

     

    -

    OD05. Other Oral Conditions

    -

     

    -

    1.3.6 ENT conditions

    -

     

    -

    EN01. Otitis media acute and chronic

    -

     

    -

    EN02. Mastoiditis

    -

     

    -

    EN03. Hearing loss

    -

     

    -

    EN04. Rhinitis

    -

     

    -

    EN05. Sinusitis

    -

     

    -

    EN06. Epixtasis

    -

     

    -

    EN07. Adenoid Hypertrophy

    -

     

    -

    EN08. Foreign Body in nose ear and

    -

    aero- digestive system

    -

     

    -

    EN09. Infected pre -auricular sinuses

    -

    and abscess

    -

     

    -

    Print Version September 2019

    -


    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT

    -
    -

     

    -
    -

    Page 3

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Diagnosis

    -
    -

    0-28 days

    -
    -

    29 days - 4Yrs

    -
    -

    5 – 9Yrs

    -
    -

    10 – 19Yrs

    -
    -

     

    -
    -

    20Yrs & above

    -
    -

    Male

    -
    -

    Female

    -
    -

    Male

    -
    -

    Female

    -
    -

    Male

    -
    -

    Female

    -
    -

    Male

    -
    -

    Female

    -
    -

     

    -
    -

    Male

    -
    -

    Female

    -
    -

     

    -
    -

     

    -
    -

    1.3.6 ENT conditions (Continued)

    -

     

    -

    EN10. Otitis external

    -

     

    -

    EN11. Mastoid abscess

    -

     

    -

    EN12. Vertigo

    -

     

    -

    EN13. Tonsillitis

    -

     

    -

    EN14. Tonsillar hypertrophy

    -

     

    -

    EN15. Tinnitus

    -

     

    -

    EN16. Head and neck cancers

    -

     

    -

    EN17. Other ENT conditions

    -

     

    -

    1.3.7 Eye conditions

    -

     

    -

    EC01. Allergic conjunctivitis

    -

     

    -

    EC02. Bacterial Conjunctivitis

    -

     

    -

    EC03. Ophthalmia neonatorum

    -

     

    -

    EC04. Other Forms of Conjunctivitis

    -

     

    -

    EC05. Corneal Ulcers/ Keratitis

    -

     

    -

    EC06. Un Operable Cataract (>6/60)

    -

     

    -

    EC07. Operable Cataract (< 6/60)

    -

     

    -

    EC08. Refractive errors

    -

     

    -

    EC09. Glaucoma

    -

     

    -

    EC10. Trachoma

    -

     

    -

    EC11. Vitamin A Deficiency

    -

     

    -

    EC12. Ocular trauma and Burns

    -

     

    -

    EC13. Diabetic Retinopathy (All stages)

    -

     

    -

    EC14. Chorioretinal, Macular &

    -

     

    -

    Vitreous Disorders

    -

     

    -

    EC15. Uveitis

    -

     

    -

    EC16. Endophthalmitis

    -

     

    -

    EC17. Corneal scars (Non

    -

     

    -

    trachomatous)

    -

     

    -

    EC18. Tumours

    -

     

    -

    EC19. Strabismus ( All types)

    -

     

    -

    EC20. Ptosis and other lid Disorders

    -

     

    -

    EC21. Squamous Cell Carcinoma of

    -

    Conjunctiva

    -

     

    -

    EC22. Retinoblastoma

    -

     

    -

    EC23. Other Malignant Tumours

    -

     

    -

    EC24. Other Benign Tumours/Growths

    -

     

    -

    EC25. Other Eye Disorders

    -

     

    -

    EC26. Blindness

    -

     

    -

    EC27. Other eye conditions

    -

     

    -

    EC28. Spectacles Dispensed

    -

     

    -

    1.3.8 Mental Health

    -

     

    -

    MH01. Anxiety Disorders

    -

     

    -

    MH02. Anxiety Disorders due to gender

    -

    based violence

    -

     

    -

    MH03. Unipolar Depressive Disorder

    -

     

    -

    MH04. Bipolar disorder

    -

     

    -

    MH05. Schizophrenia

    -

     

    -

    MH06. Post -Traumatic Stress Disorder

    -

     

    -

    MH07. Epilepsy

    -

     

    -

    MH08. HIV related psychosis

    -

     

    -

    Print Version September 2019

    -


    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT

    -
    -

     

    -
    -

    Page 4

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Diagnosis

    -
    -

    0-28 days

    -
    -

    29 days - 4Yrs

    -
    -

    5 – 9Yrs

    -
    -

    10 – 19Yrs

    -
    -

     

    -
    -

    20Yrs & above

    -
    -

    Male

    -
    -

    Female

    -
    -

    Male

    -
    -

    Female

    -
    -

    Male

    -
    -

    Female

    -
    -

    Male

    -
    -

    Female

    -
    -

     

    -
    -

    Male

    -
    -

    Female

    -
    -

     

    -
    -

     

    -
    -

    1.3.8 Mental Health (Continued)

    -

     

    -

    MH09. Alzheimer’s disease

    -

     

    -

    MH10. HIV related dementia

    -

     

    -

    MH11. Alcohol related Dementia

    -

     

    -

    MH12. Dementia due to stroke

    -

    (Diabetes, Hypertension)

    -

     

    -

    MH13. Other form of Dementia

    -

     

    -

    MH14. Other Adult Mental Health

    -

    Conditions

    -

     

    -

    MH15. Internet addiction

    -

     

    -

    MH16. Alcohol Use Disorder

    -

     

    -

    MH17. Substance (Drug) use Disorder

    -

     

    -

    MH18. Delirium

    -

     

    -

    MH19. Intellectual disability

    -

     

    -

    MH20. Autism spectrum disorders

    -

     

    -

    1.3.9 Neurological Disorders

    -

     

    -

    NE01. Aphasia or Loss of Language

    -

    due to Stroke;

    -

    NE02. Dysarthria or Speech Disorder

    -

    due to Stroke

    -

     

    -

    NE03. Parkinson’s disease

    -

     

    -

    NE04. Dementia or excessive

    -

    forgetfulness due to advanced age,

    -

     

    -

    NE05. Amyotrophic Lateral

    -

    Sclerosis(ALS)

    -

     

    -

    NE06. Speech disorders due to Head

    -

    Injuries(penetrating or closed)

    -

     

    -

    NE07. Persons in Coma / Emergency Care

    -

     

    -

    NE08. Alzheimer Disease

    -

     

    -

    NE09. Down Syndrome (DS)

    -

     

    -

    NE10. CP / PMLD

    -

     

    -

    NE11. Child abuse and Neglect

    -

     

    -

    NE12. Attention Deficit Hyperactivity

    -

    disorder (ADHD)

    -

     

    -

    NE13. Learning Disability

    -

     

    -

    NE14. Conduct disorders

    -

     

    -

    NE15. Eating disorders (anorexia,

    -

    Bulimia, other feeding)

    -

     

    -

    NE16. Somatoform disorders

    -

     

    -

    NE17. Sleeping Disorders

    -

     

    -

    NE18. Enuresis/Encopresis

    -

     

    -

    NE19. Other Childhood Mental

    -

    Disorders

    -

    NE20. Mental illness due other Medical/

    -

    surgical conditions

    -

     

    -

    NE21. Attempted Suicide/Self-harm

    -

     

    -

    1.3.10 Chronic respiratory diseases

    -

     

    -

    CR01. Asthma

    -

     

    -

    CR02. Chronic Obstructive Pulmonary

    -

    Disease (COPD)

    -

     

    -

    1.3.11 Cancers

    -

     

    -

    CA01. Cervical Cancer

    -

     

    -

    CA02. Prostate Cancer

    -

     

    -

    CA03. Breast Cancer

    -

     

    -

    CA04. Lung Cancer

    -

     

    -

    CA05. Liver Cancer

    -

     

    -

    Print Version September 2019

    -


    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT

    -
    -

     

    -
    -

    Page 5

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Diagnosis

    -
    -

    0-28 days

    -
    -

    29 days - 4Yrs

    -
    -

    5 – 9Yrs

    -
    -

    10 – 19Yrs

    -
    -

     

    -
    -

    20Yrs & above

    -
    -

    Male

    -
    -

    Female

    -
    -

    Male

    -
    -

    Female

    -
    -

    Male

    -
    -

    Female

    -
    -

    Male

    -
    -

    Female

    -
    -

     

    -
    -

    Male

    -
    -

    Female

    -
    -

     

    -
    -

     

    -
    -

    1.3.11 Cancers (Continued)

    -

     

    -

    CA06. Colon Cancer

    -

     

    -

    CA07. Kaposis Sarcoma

    -

     

    -

    CA08. Other Cancers

    -

     

    -

    1.3.12 Physiotherapy

    -

     

    -

    PT01. Muscular disorders.

    -

     

    -

    PT02. Joint dysfunction.

    -

     

    -

    PT03. Soft tissue injuries.

    -

     

    -

    PT04. Chronic respiratory diseases.

    -

     

    -

    PT05. Chest trauma/Injury.

    -

     

    -

    PT06. Paralysis due to spinal cord

    -

    injury and other diseases

    -

     

    -

    PT07. Cerebral Palsy/Delayed motor

    -

    or sensory developmental milestones.(CP)

    -

     

    -

    PT08. Upper Motor Neuron lesions (UMN)

    -

     

    -

    PT09. Facial palsy

    -

     

    -

    PT10. Lower motor neuron lesions

    -

    (LMN)

    -

    PT11. Gynaecological, obstetric and

    -

    urogenital conditions

    -

     

    -

    PT12. Amputee

    -

     

    -

    PT13. Altered Posture and gait.

    -

     

    -

    PT14. Injection neuritis/Acute flaccid

    -

    paralysis

    -

     

    -

    PT15. Congenital abnormalities

    -

     

    -

    PT16. Spine disorders e.g neck, thoracic,

    -

    lumber, coccygeal pains

    -

     

    -

    PT17. Lymph oedema.

    -

     

    -

    PT18. Patients prescribed with

    -

    assistive  devices

    -

     

    -

    PT19. Others

    -

     

    -

    1.3.13 Occupational therapy conditions

    -

     

    -

    OT01.Neuro-developmental Disorders

    -

     

    -

    OT02.Sensory Integration disorders

    -

     

    -

    OT03.Adult Neurological Disorders

    -

     

    -

    OT04.Burn injuries

    -

     

    -

    OT05.Post-burns contractures

    -

     

    -

    OT06.Orthopaedic Conditions

    -

     

    -

    OT07. Mental Health Conditions

    -

     

    -

    OT08.Birth Defects and Trauma

    -

     

    -

    OT09. Arthrogryposis

    -

     

    -

    OT10. HIV/ AIDS

    -

     

    -

    OT11. Diabetes

    -

     

    -

    OT12. Cancer

    -

     

    -

    OT13. Other chronic conditions

    -

     

    -

    OT14.Cardiac Conditions

    -

     

    -

    OT15. Patients prescribed with

    -

    assistive devices

    -

     

    -

    1.3.14 Speech and Language Therapy

    -

     

    -

    SL01. Speech and language delay/

    -

    disorder

    -

     

    -

    SL02. Motor speech disorders

    -

     

    -

    SL03. Hearing impairments

    -

     

    -

    SL04. Voice disorders

    -

     

    -

    Print Version September 2019

    -


    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT

    -
    -

     

    -
    -

    Page 6

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Diagnosis

    -
    -

    0-28 days

    -
    -

    29 days - 4Yrs

    -
    -

    5 – 9Yrs

    -
    -

    10 – 19Yrs

    -
    -

     

    -
    -

    20Yrs & above

    -
    -

    Male

    -
    -

    Female

    -
    -

    Male

    -
    -

    Female

    -
    -

    Male

    -
    -

    Female

    -
    -

    Male

    -
    -

    Female

    -
    -

     

    -
    -

    Male

    -
    -

    Female

    -
    -

     

    -
    -

     

    -
    -

    1.3.14 Speech and Language Therapy

    -
    -

    (Continued)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    SL05. Dysfluency /stammering

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -

    SL06. Acquired neurological disorders

    -

     

    -

    SL07. Cleft lip and palate

    -

     

    -

    SL08. Others

    -

     

    -

    1.3.15 Disabilities

    -

     

    -

    DS01.Individuals with Difficulty in seeing

    -

     

    -

    DS02.Individuals with Albinism

    -

     

    -

    DS03.Individuals with Difficulty in hearing

    -

     

    -

    DS04.Individuals with Speech Difficulties

    -

     

    -

    DS05.Individuals with delayed age

    -

    specific motor development

    -

     

    -

    DS06.Individuals with Dwarfism

    -

     

    -

    DS07.Individuals with Difficulty

    -

    understanding

    -

    DS08.Individuals with Difficulty in

    -

    remembering

    -

     

    -

    DS09.Individuals with Difficulty in reading

    -

     

    -

    DS10.Individuals with Difficulty in writing

    -

     

    -

    DS11.Individuals with Difficulty in self-care

    -

     

    -

    DS12.Individuals with Mentally

    -

    impairment

    -

    DS13. Individuals with Emotionally

    -

    impairment

    -

     

    -
      -
    1. 1.3.16 Cardiovascular diseases
    2. -
    -

    CV01. Stroke/ Cardiovascular

    -

    Accident(CVA)

    -

     

    -

    CV02. Hypertension

    -

     

    -

    CV03. Heart failure

    -

     

    -

    CV04. Ischemic Heart Diseases

    -

     

    -

    CV05. Rheumatic Heart Diseases

    -

     

    -

    CV06. Chronic Heart Diseases

    -

     

    -

    CV07. Other Cardiovascular Diseases

    -

     

    -

    1.3.17 Endocrine and Metabolic Disorders

    -

     

    -

    EM01. Diabetes mellitus

    -

     

    -

    EM02. Thyroid Disease

    -

     

    -

    EM03. Other Endocrine and Metabolic

    -

    Diseases

    -

     

    -

    1.3.18 Injuries

    -

     

    -

    IN01. Jaw injuries

    -

     

    - - - - - - - - - - - - - - - - - - - - - - -
    -

    IN02.Road

    -
    -

    IN02a. Motor Vehicle

    -
     
    -

    IN02b. Motor Cycle

    -
     
    -

    Traffic

    -
    -

    IN02c. Bicycles

    -
     
    -

    Injuries

    -
    -

     

    -

    IN02d. Others

    -

     

    -

    IN03. Injuries due to Gender based

    -

    violence

    -

    IN04. Injuries (Trauma due to other

    -

    causes)

    -

     

    - - - - - - - - - - - - - -
    -

    IN05. Animal

    -
    -

    IN05a.

    -
    -

    Domestic

    -
    -

    bites

    -
    -

    IN05b.

    -
    -

    Wild

    -
    -

     

    -

    IN06. Snake bites

    -

     

    -

    IN07. Insect bites

    -

     

    -

    1.3.19 Minor Operations in OPD

    -

     

    -

    MN01. Tooth extractions

    -

     

    -

    MN02. Dental Fillings

    -

     

    -

    MN03. Other Minor Operations

    -

     

    -

    Print Version September 2019

    -


    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT

    -
    -

     

    -
    -

    Page 7

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Diagnosis

    -
    -

    0-28 days

    -
    -

    29 days - 4Yrs

    -
    -

    5 – 9Yrs

    -
    -

    10 – 19Yrs

    -
    -

     

    -
    -

    20Yrs & above

    -
    -

    Male

    -
    -

    Female

    -
    -

    Male

    -
    -

    Female

    -
    -

    Male

    -
    -

    Female

    -
    -

    Male

    -
    -

    Female

    -
    -

     

    -
    -

    Male

    -
    -

    Female

    -
    -

     

    -
    -

     

    -
    -

     

    -

    1.3.20 Neglected Tropical Diseases (NTDs)

    -

     

    -

    NT01. Leishmaniasis

    -

     

    -

    NT02. Lymphatic Filariasis (hydrocele)

    -

     

    -

    NT03. Lymphatic Filariasis

    -

    (Lympoedema)

    -

     

    -

    NT04. Urinary Schistosomiasis

    -

     

    -

    NT05. Intestinal Schistosomiasis

    -

     

    -

    NT06. Onchocerciasis

    -

     

    -

    1.3.21 Maternal conditions

    -

     

    -

    MC01. Abortions due to Gender-Based

    -

    Violence (GBV)

    -

     

    -

    MC02. Abortions due to other causes

    -

     

    -

    MC03. Number of Post Abortion women

    -

    who received FP

    -

     

    -

    MC04. Malaria in pregnancy

    -

     

    -

    MC05. High blood pressure in pregnancy

    -

     

    -

    pressure in pregnancy

    -

     

    -

    MC06. Obstructed labour

    -

     

    -

    MC07. Puerperal sepsis

    -

     

    -

    MC08. Haemorrhage related to

    -

    pregnancy (APH)

    -

    MC09. Haemorrhage related to

    -

    pregnancy (PPH)

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    MC10. Breast

    -
    -

    Total Screened

    -
     
    -

    Number with breast

    -
     
    -

    cancer

    -
    -

     

    -
    -

    cancer

    -
     
    -

    MC11. Cervical

    -
    -

    Total Screened

    -
     
    -

    Number with cervical

    -
     
    -

    cancer

    -
    -

     

    -
    -

    cancer

    -
     
    -

     

    -

    1.3.22 Other OPD conditions

    -

     

    -

    OP01. All others

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    OP02. Other diagnoses

    -
    -

    Disease code1

    -
     
    -

    (specify priority

    -
    -

    Disease code2

    -
     
    -

    diseases for District)

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    Disease code3

    -
     
    -

     

    -
    -

    DT01. Deaths in OPD

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -

    1.3.23 Risky Behaviours

    -

     

    -

    RB01. Alcohol use

    -

     

    -

    RB02. Tobacco use

    -

     

    -

    RB03. Tobacco exposure

    -

     

    -

    1.3.24 Emergency Medical Services

    -

     

    -

    ES01. Number of emergency cases at

    -

    the facility

    -

    ES02. Patients that receive care at the

    -

    scene of emergency

    -

    ES03. Emergency cases that arrive at

    -

    the facility using an Ambulance

    -

     

    -

    ES04. Number of patients assessed

    -

    for level of consciousness using

    -

     

    -

    GCS/ other comma score

    -

     

    -

    ES05. Number of patients accessing care

    -

    within 1hr in an emergency unit

    -

     

    -

    ES06. Number of patients who develop

    -

    complications within 24 hours

    -

     

    -

    after management/care

    -

     

    -

    ES07. Number of patients with hypoxemia

    -

    administered with oxygen

    -

    ES08. Number of patients with external

    -

    haemorrhages controlled

    -

     

    -

     

    -

    Print Version September 2019

    -


    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT

    -
    -

     

    -
    -

    Page 8

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Diagnosis

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    0-28 days

    -
    -

    29 days - 4Yrs

    -
    -

    5 – 9Yrs

    -
    -

    10 – 19Yrs

    -
    -

     

    -
    -

    20Yrs & above

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Male

    -
    -

    Female

    -
    -

    Male

    -
    -

    Female

    -
    -

    Male

    -
    -

    Female

    -
    -

    Male

    -
    -

    Female

    -
    -

     

    -
    -

    Male

    -
    -

    Female

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    1.3.24 Emergency Medical Services (Continued)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    ES09a. Medical

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    emergencies

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    ES09b. Obstetrics

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    gynaecology

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    ES09.

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    emergencies

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    ES09c. Paediatric

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Number of

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    emergencies

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    death at

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    ES09d. Surgical

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    emergency

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    unit

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    emergencies

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    ES09e. Road traffic

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Injuries

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    ES09f. Burns

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    ES09g. Poisoning

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    ES10. Total number of Death in

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Emergency Unit

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    ES11. Number of

    -
    -

     

    -
    -

    ES11a.Tetanus

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Patients

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    ES11b. Rabies

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    receiving

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    vaccination for

    -
    -

     

    -
    -

    ES11c. Others

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -

    1.4 Tuberculosis and Leprosy services

    -

     

    - - - - - - - - - - - - - -
    -

    <5 years

    -
    -

    5 - 9years

    -
    -

    10-14 years

    -
    -

    15-19 years

    -
    -

    20+ years

    -
    -

    Male  Female Male  Female Male  Female Male  Female Male  Female

    -
    -

     

    -

    TB Screening in OPD

    -

     

    -

    TP01. Number screened for TB in OPD

    -

     

    -

    TP02. Number of presumptive TB cases identified

    -

    from OPD

    -

    TP03. Number of presumptive cases diagnosed

    -

    with TB from OPD

    -

     

    -

    Registration in TB Treatment Unit

    -

     

    -

    TP04. Total New and relapse TB cases registered

    -

    in TB treatment unit

    -

     

    -

    TB Preventive Therapy (TPT)

    -

     

    -

    TP05. Number of contacts of TB patients started

    -

    on TPT

    -

     

    -

    TP06. Number of ART clients started on TPT

    -

     

    -

    Leprosy services

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    TP07. New and relapse

    -
    -

    PB (Paucibacillary)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    leprosy cases registered

    -
    -

    MB (MultiBacillary)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    1.5 Nutrition Services

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Data Elements

    -
    -

    0-5

    -
    -

    6-23

    -
    -

    24-59

    -
    -

    5-9

    -
    -

     

    -
    -

    10-19

    -
    -

     

    -
    -

    20-24

    -
    -

     

    -
    -

    25+

    -
    -

     

    -
    -

     

    -
    -

    Months

    -
    -

    Months

    -
    -

    Months

    -
    -

    Years

    -
    -

     

    -
    -

    Years

    -
    -

    Years

    -
    -

    Years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

     

    -
    -

    F

    -
    -

    M

    -
    -

     

    -
    -

    F

    -
    -

    M

    -
    -

     

    -
    -

    F

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    NonPregnant

    -
    -

    Pregnant /Lactating

    -
    -

     

    -
    -

    NonPregnant

    -
    -

     

    -
    -

    Pregnant /Lactating

    -
    -

     

    -
    -

    NonPregnant

    -
    -

     

    -
    -

    Pregnant /Lactating

    -
    -

    NA01. No. of clients

    -
    -

     

    -
    -

     

    -
    -

    NA01a. MUAC Tape

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    NA01b. W/H or L Z-Score

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    who received

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    nutrition assessment in

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    this month

    -
    -

     

    -
    -

     

    -
    -

    NA01c. BMI for Age

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    using;

    -
    -

     

    -
    -

     

    -
    -

    Z-Score

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    NA01e. Body Mass

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Index (BMI)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    NA02. No. of children that

    -
    -

    are underweight (W/A

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    ≤-2 SD)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    NA03. No. of

    -
    -

    NA03a. MAM using MUAC:

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    identified

    -
    -

    MUAC: ≥ 11.5cm & < 12.5cm

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    malnourished

    -
    -

    (children 0-59 mths)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    clients

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MUAC: ≥ 19.0cm & <23.0cm

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    this month;

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    (PLW 10-25+ yrs)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -

    Print Version September 2019

    -


    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT

    -
    -

    Page 9

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    NonPregnant

    -
    -

    Pregnant/Lactating

    -
    -

     

    -
    -

    NonPregnant

    -
    -

    Pregnant/Lactating

    -
    -

     

    -
    -

    NonPregnant

    -
    -

    Pregnant/Lactating

    -
    -

     

    -

    1.5 Nutrition Services (Continued)

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

     

    -
    -

    NA03b. MAM using W/H or L

    -
     
    -

     

    -
    -

    W/H or L: ≥ -3 SD & < -2 SD

    -
     
    -

     

    -
    -

    NA03c. SAM using MUAC

    -
     
    -

     

    -
    -

    MUAC: < 11.5cm (children

    -
     
    -

     

    -
    -

    0-59 mths) MUAC: <19.0cm

    -
     
    -

     

    -
    -

    (PLW 10-25+ yrs)

    -
     
    -

     

    -
    -

    NA03d. SAM using W/H or L

    -
     
    -

     

    -
    -

    W/H or L: < -3 SD

    -
     
    -

    NA03. No. of

    -
    -

    NA03e. SAM With Oedema

    -
     
    -

    identified

    -
    -

     

    -
     
    -

    NA03f. Moderately

    -
     
    -

    malnourished

    -
    -

    Malnourished

    -
     
    -

    clients

    -
    -

     

    -
     
    -

    (5-9yrs & 10-19yrs: <- 2SD & ≥-3SD;

    -
     
    -

    this month;

    -
    -

    >19yrs: ≥16.0 & ≤16.9)

    -
     
    -

     

    -
    -

     

    -
    -

    NA03g. Severely Malnourished

    -
     
    -

     

    -
    -

    (5-9yr & 10-19 yrs: <

    -
     
    -

     

    -
    -

    -3SD;>19yrs: < 16.0)

    -
     
    -

     

    -
    -

    NA03h. Overweight (5-9yrs:

    -
     
    -

     

    -
    -

    >+1SD & ≤+3SD; >19yrs:

    -
     
    -

     

    -
    -

    ≥25.0 & ≤29.9)

    -
     
    -

     

    -
    -

    NA03i. Obese (5-9yrs & 10-

    -
     
    -

     

    -
    -

    19yrs: <+ 2SD; >19yrs: ≥ 30.0)

    -
     
    -

    NA04. No. of SAM

    -
    -

    NA04a. Total

    -
     
    -

    admissions in

    -
    -

     

    -
     
    -

    NA04b. New Admissions

    -
     
    -

    OTC this month;

    -
    -

    NA05. No. of

    -
    -

    NA05a. Relapses

    -
     
    -

    Readmissions into

    -
    -

     

    -
     
    -

    NA05b. Defaulters

    -
     
    -

    OTC this month;

    -
    -

    NA06. No. of MAM

    -
    -

    NA06a. Total

    -
     
    -

    admissions in

    -
    -

     

    -
     
    -

    Supplementary

    -
    -

    NA06b. New Admissions

    -
     
    -

    Feeding Care (SFC);

    -
    -

    NA07. No. of

    -
    -

    NA07a. Relapses

    -
     
    -

    Readmissions in

    -
    -

     

    -
     
    -

    NA07b. Defaulters

    -
     
    -

    SFC this Month

    -
    -

     

    -
    -

    NA08a. Discharged as cured

    -
     
    -

     

    -
    -

    within this month

    -
     
    -

    NA08. No. of

    -
    -

    NA08b. Did not respond to care

    -
     
    -

    clients

    -
    -

    in OTC (non-response) after 3

    -
     
    -

    with SAM

    -
    -

    months of treatment

    -
     
    -

    admitted into

    -
    -

    NA08c. Defaulted from care

    -
     
    -

    treatment and

    -
    -

    within this month (absent for 2

    -
     
    -

     

    -
    -

    consecutive visits)

    -
     
    -

     

    -
    -

    NA08d. Died during treatment

    -
     
    -

     

    -
    -

    within this month

    -
     
    -

     

    -

    NA09. Total number of days spent in OTC for all

    -

    clients discharged as cured this month

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    NA10. No.

    -
    -

    NA10a.Discharged as cured within this month

    -
     
    -

    NA10b. Did not respond to care in

    -
     
    -

    of clients

    -
    -

    with MAM

    -
    -

    SFC (non-response) after 3 months of

    -
     
    -

    admitted

    -
    -

    treatment

    -
     
    -

    into

    -
    -

     

    -
     
    -

    NA10c. Defaulted from care within this month

    -
     
    -

    treatment

    -
    -

    (absent for 2 consecutive visits)

    -
     
    -

    and

    -
    -

    NA10d. Died during treatment within

    -
     
    -

     

    -
    -

     

    -
    -

    this month

    -
     
    -

     

    -

    NA11. Total number of days spent in SFC for all

    -

    clients discharged as cured this month

    -

     

    -

    NA12. No. of malnourished clients who are

    -

    positive for TB

    -

     

    -

    Print Version September 2019

    -


    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Page 10

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    2.0 MATERNAL AND CHILD HEALTH SERVICES

    -
    -

     

    -
    -

    2.1 ANTENATAL (Continued)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    NUMBER

    -
    -

    2.1 ANTENATAL

    -
    -

     

    -
    -

     

    -
    -

    NUMBER

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    AN11. IPT 4 & 4+ Dose

    -
    -

     

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Total

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    AN01.ANC 1st contacts/

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    visits for women

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
    -

    AN12. TB Screening for

    -
    -

     

    -
    -

    Screened for TB

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    No. in 1st Trimester

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Presumed to have TB

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    ANC clients

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Diagnosed with TB

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    AN02.ANC 4th contacts/

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
    -

    AN13. Blood & Rhesus group (O)

    -
    -

    Total

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Rhesus O+

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    visits for women

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Total

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
    -

    AN14. Blood & Rhesus group (A)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Rhesus A+

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Total

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

    AN15. Blood & Rhesus group (B)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Rhesus B+

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    AN03. ANC 4+ contacts/

    -
    -

     

    -
    -

     

    -
    -

    AN16. Blood & Rhesus group

    -
    -

    Total

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    visits for Women

    -
    -

     

    -
    -

     

    -
    -

    (AB)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Rhesus AB+

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    AN17.No. of pregnant women who were tested for

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Anaemia using Hb Test at ANC 1st Contact / visit

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

    AN18. No. of pregnant women with Anaemia

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    (Hb <10g/dl) at ANC 1st

    -
    -

    Contact / visit

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    AN04. ANC 8 contacts/

    -
    -

     

    -
    -

     

    -
    -

    AN19. No. of pregnant women who were tested for

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

    anaemia using Hb test at ANC after 36 weeks

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    visits for Women

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    AN20. No. of pregnant women with Anaemia

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    (Hb <10g/dl) at ANC after 36 weeks

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    AN21. Pregnant Women receiving at least 30 tablets of

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Folic Acid and Iron Sulphate at ANC 1st contact / visit

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    (Only Folic Acid recommended during 1st trimester)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    AN05. Total ANC contacts/

    -
    -

     

    -
    -

     

    -
    -

    AN22. Pregnant Women receiving at least 30 tablets

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

    of Folic Acid and Iron Sulphate at ANC after 36

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    visits (new clients + Re-

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    attendances)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    weeks of gestation

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    AN23. Pregnant Women receiving LLINs at ANC 1st visit

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    AN24. No. of pregnant women

    -
    -

    Total U/S Scan done

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    AN06. Referrals to ANC

    -
    -

    Total referrals

    -
    -

     

    -
    -

     

    -
    -

    who received obstetric-ultra

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    No. done before 24

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    unit

    -
    -

    From community services

    -
    -

     

    -
    -

     

    -
    -

    sound scan during any ANC

    -
    -

    weeks of gestation

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    visit in the reporting month

    -
    -

    and below

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Total referrals

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    AN07. ANC Referrals from

    -
    -

     

    -
    -

     

    -
    -

    AN25. No. of pregnant women

    -
    -

    Total

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HIV+ mothers newly

    -
    -

     

    -
    -

     

    -
    -

    dewormed or receiving

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    unit

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    After 28 weeks of

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    enrolled in MCH groups

    -
    -

     

    -
    -

     

    -
    -

    mebendazole

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    gestation

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

    AN26. Pregnant Women

    -
    -

     

    -
    -

     

    -
    -

    No. Tested

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
    -

    tested for syphilis for the first

    -
    -

    No. Tested Positive

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    time in this pregnancy

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    AN08. First dose IPT

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    No. started on

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    (IPT1)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    syphilis treatment

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
    -

    AN27. Male partners tested for

    -
    -

    No. Tested

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
    -

    No. Tested Positive

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    syphilis

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    No. started on

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    syphilis treatment

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    AN09. Second dose IPT

    -
    -

     

    -
    -

     

    -
    -

    AN28. Pregnant women tested

    -
    -

    No. Tested

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

    No. Tested Positive

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    (IPT2)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    for Hepatitis B.

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    No. started on Hep

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    B treatment

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Total Number

    -
    -

     

    -
    -

    ANC1

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

    AN29. Pregnant

    -
    -

     

    -
    -

    Below 15 years

    -
    -

    Number

    -
    -

     

    -
    -

    ANC1

    -
    -

     

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
    -

    women newly

    -
    -

     

    -
    -

    15-19 years

    -
    -

    Number

    -
    -

     

    -
    -

    ANC1

    -
    -

    AN10.Third dose IPT

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    tested for HIV in

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    20-24 years

    -
    -

    Number

    -
    -

     

    -
    -

    ANC1

    -
    -

    (IPT3)

    -
    -

     

    -
    -

     

    -
    -

    this pregnancy at

    -
    -

     

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    25-49 years

    -
    -

    Number

    -
    -

     

    -
    -

    ANC1

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    any ANC visit (TR

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
    -

    & TRR)

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

    Number

    -
    -

     

    -
    -

    ANC1

    -
    -

     

    -

    Print Version September 2019

    -


    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT                       Page 11

    -

     

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    2.1 ANTENATAL (Continued)

    -
    -

    NUMBER

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Total

    -
    -

    ANC1

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Number

    -
    -

    AN30. Pregnant

    -
    -

    Below 15 years

    -
    -

    Number

    -
    -

    ANC1

    -
     
    -

    15-19 years

    -
    -

    Number

    -
    -

    ANC1

    -
     
    -

    Women tested HIV+

    -
    -

    for 1st time this preg-

    -
    -

    20-24 years

    -
    -

    Number

    -
    -

    ANC1

    -
     
    -

    nancy (TRR) at any

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    25-49 years

    -
    -

    Number

    -
    -

    ANC1

    -
     
    -

    ANC Visit

    -
    -

     

    -
    -

    50+ years

    -
    -

    Number

    -
    -

    ANC1

    -
     
    -

     

    -
    -

    Below 15 years

    -
    -

    Number

    -
    -

    ANC1

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    AN31. HIV+ Pregnant

    -
    -

    15-19 years

    -
    -

    Number

    -
    -

    ANC1

    -
     
    -

    women assessed by

    -
    -

    20-24 years

    -
    -

    Number

    -
    -

    ANC1

    -
     
    -

    CD4

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    25-49 years

    -
    -

    Number

    -
    -

    ANC1

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    50+ years

    -
    -

    Number

    -
    -

    ANC1

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    AN32. HIV+ pregnant

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
     
    -

    women initiated on

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
     
    -

    ART for eMTCT at

    -
    -

     

    -
    -

     

    -
     
    -

    Any visit irrespective

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
     
    -

    of when tested HIV+

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
     
    -

    (TRR, TRR+ and

    -
    -

     

    -
    -

     

    -
     
    -

    HIV+ not yet started

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    50+ years

    -
    -

     

    -
    -

     

    -
     
    -

    ART(TRR√ & TRRK))

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Total (TRK + TRRK)

    -
    -

     

    -
    -

     

    -
     
    -

    AN33. Pregnant

    -
    -

    (TRRK)

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
     
    -

    Women who knew

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
     
    -

    status before

    -
    -

     

    -
    -

     

    -
     
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
     
    -

    1st ANC

    -
    -

     

    -
    -

     

    -
     
    -

    HIV+

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

    Total ART-K

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

    during the month

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    years

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Viral Load

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Samples collected

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    during the month

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    15

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Viral Load results

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Below

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Returned during

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    the month

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Viral Load

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

    Suppressed

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

    during the month

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

    Total ART-K

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

    during the month

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

    Viral Load

    -
    -

     

    -
    -

     

    -
     
    -

    AN34.HIV+ pregnant

    -
    -

    years

    -
    -

    Samples collected

    -
    -

     

    -
    -

     

    -
     
    -

    women already on

    -
    -

    during the month

    -
    -

     

    -
    -

     

    -
     
    -

    ART before 1st ANC

    -
    -

    Viral Load results

    -
    -

     

    -
    -

     

    -
     
    -

    -19

    -
    -

     

    -
    -

     

    -
     
    -

    (ART-K)

    -
    -

    Returned during

    -
    -

     

    -
    -

     

    -
     
    -

    15

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    the month

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

    Viral Load

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

    Suppressed

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

    during the month

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

    Total ART-K

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

    during the month

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    years

    -
    -

    Viral Load

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Samples collected

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    during the month

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    -24

    -
    -

    Viral Load results

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Returned during

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    20

    -
    -

    the month

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

    Viral Load

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

    Suppressed

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

    during the month

    -
    -

     

    -
    -

     

    -
     
    -

     

    -

     

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    2.1 ANTENATAL (Continued)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    NUMBER

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    years

    -
    -

    Total ART-K during the month

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Viral Load Samples

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    collected during the month

    -
    -

     

    -
    -

    AN34.HIV+

    -
    -

     

    -
    -

     

    -
    -

    49

    -
    -

     

    -
    -

    Viral Load results Returned

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    25-

    -
    -

     

    -
    -

    during the month

    -
    -

     

    -
    -

    pregnant

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Viral Load Suppressed

    -
    -

     

    -
    -

    women already

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    during the month

    -
    -

     

    -
    -

    on ART before

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Total ART-K during the month

    -
    -

     

    -
    -

    1st ANC (ART-K)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    (Continued)

    -
    -

     

    -
    -

     

    -
    -

    years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Viral Load Samples

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    collected during the month

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+

    -
    -

     

    -
    -

    Viral Load results

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Returned during the month

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Viral Load Suppressed

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    during the month

    -
    -

     

    -
    -

    AN35. Pregnant women

    -
    -

    Total (TR+ &TRR+)

    -
    -

     

    -
    -

    who re-tested later in

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HIV+ (TRR+)

    -
    -

     

    -
    -

    pregnancy

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    AN36. HIV+ pregnant women given ARV prophylaxis for

    -
    -

     

    -
    -

    the un born infants for the 1st time in ANC

    -
    -

     

    -
    -

    AN37. Pregnant

    -
    -

    Total

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    women given

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Tests returned HIV+

    -
    -

     

    -
    -

    self-testing kits for

    -
    -

     

    -
    -

    their male partners

    -
    -

    Tests returned HIV negative

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    AN38: Male partners

    -
    -

    Total tested (TR & TRR)

    -
    -

     

    -
    -

    received HIV test

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HIV+ (TRR).

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    results in eMTCT

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    AN39. Male partners

    -
    -

    Total (TRK & TRRK)

    -
    -

     

    -
    -

    with a known status

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    at their first visit as a

    -
    -

    HIV+ (TRRK)

    -
    -

     

    -
    -

    couple in ANC

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    AN40. HIV+ Male

    -
    -

    partners initiated on ART in the ANC

    -
    -

     

    -
    -

    setting

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    AN41. Number of discordant couple identified in ANC

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    AN42.

    -
    -

    Maternal Nutrition

    -
    -

    Total

    -
    -

     

    -
    -

    Pregnant

    -
    -

    Counselling

    -
    -

     

    -
    -

    HIV+

    -
    -

     

    -
    -

    women

    -
    -

     

    -
    -

     

    -
    -

    who

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Total

    -
    -

     

    -
    -

    received

    -
    -

    Infant Feeding

    -
    -

     

    -
    -

    Counselling

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Counselling

    -
    -

     

    -
    -

    HIV+

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    2.2 MATERNITY

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    NUMBER

    -
    -

    MA01: Admissions

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MA02: Referrals to

    -
    -

     

    -
    -

    Total

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    maternity unit

    -
    -

     

    -
    -

    From community services

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MA03: Maternity referrals out

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MA04a. Total

    -
    -

     

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MA04:

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Total

    -
    -

     

    -
    -

     

    -
    -

    Deliveries in

    -
    -

     

    -
    -

    MA04b.

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    unit

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Live births

    -
    -

     

    -
    -

    < 2.5 Kg

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MA04c. Fresh still

    -
    -

    Total

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    birth

    -
    -

     

    -
    -

     

    -
    -

    < 2.5 Kg

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MA04d.

    -
    -

     

    -
    -

     

    -
    -

    Total

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Macerated still

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    < 2.5 Kg

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    birth

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -

    Print Version September 2019

    -


    - - - - - - -
    -

    PN05. HIV+ women initiating ART in Postnatal

    -
    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT                       Page 12

    -


    -

     

    -

    2.2 MATERNITY (continued)

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    NUMBER

    -
    -

    MA05. Pre-Term births

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Total

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Alive

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    < 2.5 Kg

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Total

    -
    -

     

    -
    -

     

    -
    -

    MA06. Born Before Arrival

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Alive

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    < 2.5 Kg

    -
    -

     

    -
    -

    MA07. No. of low birth weight babies (<2.5 Kg)

    -
    -

     

    -
    -

    initiated on kangaroo (KMC)

    -
    -

     

    -
    -

     

    -
    -

    MA08. Live babies at discharge

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MA09. No. of Babies born with defect

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MA10. No. of Babies received LLIN

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MA11. Newborn deaths (0-7 days)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MA12. Neonatal Death 8-28 days

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MA13. Maternal deaths

    -
    -

     

    -
    -

     

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MA14. No. of mothers who

    -
    -

     

    -
    -

     

    -
    -

    Total

    -
    -

     

    -
    -

     

    -
    -

    initiated breastfeeding within

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    No. HIV +

    -
    -

     

    -
    -

     

    -
    -

    the 1st hour after delivery

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MA15. Women tested for HIV in

    -
    -

     

    -
    -

    Total (TR & TRR)

    -
    -

     

    -
    -

    labour 1st time this Pregnancy

    -
    -

     

    -
    -

    HIV+ (TRR)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MA16. Women re-tested for

    -
    -

     

    -
    -

     

    -
    -

    Total (TR+ & TRR+)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HIV in labour

    -
    -

     

    -
    -

     

    -
    -

    HIV+ (TRR+)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MA17. HIV+ women initiating ART in maternity

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MA18. Male partners received

    -
    -

     

    -
    -

    Total (TR & TRR)

    -
    -

     

    -
    -

    HIV test results in the

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HIV+ (TRR)

    -
    -

     

    -
    -

    maternity setting

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MA19. HIV+ male partners initiated on ART in

    -
    -

     

    -
    -

    the maternity setting

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MA20. Number of discordant couples identified

    -
    -

     

    -
    -

    in maternity

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Maternal

    -
    -

    Total

    -
    -

     

    -
    -

    MA21. Mothers Received

    -
    -

     

    -
    -

    Nutritional

    -
    -

    HIV+

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    nutrition Counselling

    -
    -

     

    -
    -

    Infant

    -
    -

    Total

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Feeding

    -
    -

    HIV+

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MA22. Deliveries to HIV+

    -
    -

     

    -
    -

    Total

    -
    -

     

    -
    -

     

    -
    -

    women in unit

    -
    -

     

    -
    -

    Live births

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MA23. HIV Exposed

    -
    -

     

    -
    -

    Total number

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Number of high-risk

    -
    -

     

    -
    -

    infants given ARVs

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    infants 12 weeks

    -
    -

     

    -
    -

    MA24. No. of babies with Birth asphyxia

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MA25: No. of Live babies Successfully

    -
    -

     

    -
    -

     

    -
    -

    Resuscitated

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MA26. Number received

    -
    -

     

    -
    -

    Baby

    -
    -

     

    -
    -

     

    -
    -

    PNC check at 6 hours

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Mother

    -
    -

     

    -
    -

     

    -
    -

    after birth

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    2.2 MATERNITY (Continued)

    -
    -

     

    -
    -

    NUMBER

    -
    -

    MA27. Number received PNC

    -
    -

    Baby

    -
    -

     

    -
    -

    within 24 hours after birth

    -
    -

    Mother

    -
    -

     

    -
    -

    MA28. Uterotonics used in man-

    -
    -

    Oxytocin

    -
    -

     

    -
    -

    Misoprostol

    -
    -

     

    -
    -

    agement of 3rd stage of labour

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Egometrine

    -
    -

     

    -
    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    2.3 POSTNATAL

    -
    -

     

    -
    -

    NUMBER

    -
    -

     

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

    15-19 years

    -
    -

     

    -
    -

    Age group

    -
    -

    20-24 years

    -
    -

    PN01.Post Natal

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

    50+ years

    -
    -

    Attendances

    -
    -

     

    -
    -

     

    -
    -

    24 Hours

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Timing

    -
    -

    6 Days

    -
    -

     

    -
    -

    6 Weeks

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    6 Months

    -
    -

    PN02. Referrals to

    -
    -

    Total referrals

    -
    -

    PNC unit

    -
    -

    From community services

    -
    -

    PN03. Breast feeding Total (TR & TRR)

    -
    -

    mothers tested for

    -
    -

     

    -
    -

     

    -
    -

    HIV 1st time during

    -
    -

    HIV+ (TRR)

    -
    -

     

    -
    -

    Postnatal

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    PN04.Breastfeedng

    -
    -

    Total (TR+ & TRR+)

    -
    -

    mothers re-tested for

    -
    -

     

    -
    -

     

    -
    -

    TRR+

    -
    -

     

    -
    -

    HIV during Postnatal

    -
    -

     

    -
    -

     

    -
    -

    Total HIV+

    -
    -

     

    -
    -

     

    -

    New Positives (TRR)

    -

     

    -

    Positive on re-test (TRR+)

    -

     

    -

    Positives but never initiated in ANC, Labour and Delivery (TRRK)

    -

     

    -

    PN06.HIV+ breastfeeding mothers newly enrolled in MCH groups

    -

    PN07: Mother-baby pairs enrolled at Mother-Baby care point

    -

    PN08. Male partners Total (TR & TRR)

    -

    received HIV

    -

    test results in the

    -

    postnatal setting     HIV+ (TRR)

    -

     

    -

    PN09. HIV+ male partners initiated on ART in the postnatal setting

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    PN10.Breast

    -
    -

    Total

    -
     
    -

    feeding mothers

    -
    -

     

    -
     
    -

    Tests returned HIV+

    -
     
    -

    given self-testing

    -
    -

    kits for their male

    -
    -

     

    -
     
    -

    Tests returned HIV negative

    -
     
    -

    partners

    -
    -

     

    -

    PN11. Number of discordant couples identified in PNC

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    PN12. Cancer of

    -
    -

    Clients screened for Cancer of

    -
     
    -

    the Breast

    -
    -

     

    -
     
    -

    the breast

    -
    -

    Clients with pre-malignant

    -
     
    -

     

    -
    -

    conditions of breast

    -
    -

     

    -
     
    -

    PN13. Cancer of

    -
    -

    Clients screened for Cancer of

    -
     
    -

    the Cervix

    -
    -

     

    -
     
    -

    the Cervix

    -
    -

    Clients with pre-malignant

    -
     
    -

     

    -
    -

    conditions of cervix

    -
    -

     

    -
     
    -

    PN14. Lactating mothers who received

    -
    -

    Total

    -
     
    -

    Nutritional assessment

    -
    -

    HIV+

    -
     
    -

    PN15. Post-

    -
    -

    Maternal Nutritional

    -
    -

    Total

    -
     
    -

    HIV+

    -
     
    -

    natal mothers

    -
    -

     

    -
    -

    who received

    -
    -

     

    -
    -

    Total

    -
     
    -

    Counselling

    -
    -

    Infant Feeding

    -
    -

     

    -
     
    -

    HIV+

    -
     
    -

     

    -
    -

     

    -
    -

     

    -

     

    -

    Print Version September 2019

    -


    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT                       Page 13

    -


    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

     

    -
    -

     

    -
     
    -

    2.4 EXPOSED INFANT DIAGNOSIS (EID)

    -
    -

    NUMBER

    -
     
    -

    SERVICES

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    ED01. Exposed Infants

    -
    -

    Total

    -
    -

     

    -
    -

     

    -
     
    -

    Within 2 Months

    -
    -

     

    -
     
    -

    Tested for HIV below 18

    -
    -

     

    -
     
    -

    months of age by 1st

    -
    -

    Tested HIV+

    -
    -

     

    -
     
    -

    PCR

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    Tested HIV+ within 2

    -
    -

     

    -
     
    -

     

    -
    -

    months

    -
    -

     

    -
     
    -

    ED02. Exposed Infants

    -
    -

    Total

    -
    -

     

    -
    -

     

    -
     
    -

    Tested for HIV by 2nd

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    Tested HIV+

    -
    -

     

    -
     
    -

    PCR

    -
    -

     

    -
     
    -

    ED03. Exposed Infants

    -
    -

    Total

    -
    -

     

    -
    -

     

    -
     
    -

    Tested for HIV by 3rd

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    Tested HIV+

    -
    -

     

    -
     
    -

    PCR

    -
    -

     

    -
     
    -

    ED04. 1st DNA/PCR

    -
    -

    Total

    -
    -

     

    -
    -

     

    -
     
    -

    Results returned within 2

    -
    -

     

    -
     
    -

    results returned

    -
    -

    weeks

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Results given to caregiver

    -
    -

     

    -
     
    -

    ED05. 2nd DNA/PCR

    -
    -

    Total

    -
    -

     

    -
    -

     

    -
     
    -

    Results returned within 2

    -
    -

     

    -
     
    -

    results returned

    -
    -

    weeks

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Results given to caregiver

    -
    -

     

    -
     
    -

    ED06. DNA/PCR 6

    -
    -

    Total

    -
    -

     

    -
    -

     

    -
     
    -

    weeks after cessation

    -
    -

    Results returned within 2

    -
    -

     

    -
     
    -

    of breastfeeding results

    -
    -

    weeks

    -
    -

     

    -
    -

     

    -
     
    -

    returned

    -
    -

    Results given to caregiver

    -
    -

     

    -
     
    -

    ED07.HIV exposed infants

    -
    -

    given ARV prophylaxis for the

    -
    -

     

    -
     
    -

    first time at mother baby care point

    -
    -

     

    -
    -

     

    -
     
    -

    ED08. Number of HIV+

    -
    -

    Total

    -
    -

     

    -
    -

     

    -
     
    -

    infants from EID enrolled

    -
    -

     

    -
    -

     

    -
     
    -

    Within 2 Months

    -
    -

     

    -
     
    -

    on ART

    -
    -

     

    -
     
    -

    ED09. HIV exposed

    -
    -

    Total

    -
    -

     

    -
    -

     

    -
     
    -

    started on CPT

    -
    -

    Within 2 Months

    -
    -

     

    -
     
    -

    2.4.1 OUTCOMES OF HIV

    -
    -

    EXPOSED INFANTS

    -
    -

    NUMBER

    -
     
    -

    REGISTERED 24 MONTHS AGO

    -
    -

     

    -
     
    -

    OE01.Total number of HEIs registered in the birth cohort

    -
    -

     

    -
     
    -

    OE02. HEIs that initiated ARV prophylaxis for

    -
    -

     

    -
     
    -

    eMTCT between 0-6 weeks in the cohort

    -
    -

     

    -
     
    -

    OE03. HEIs that received ARV prophylaxis for 12

    -
    -

     

    -
     
    -

    weeks (High risk infants) in the cohort

    -
    -

     

    -
     
    -

    OE04. HEIs that received CTX prophylaxis at the

    -
    -

     

    -
     
    -

    age within 2 months in the cohort

    -
    -

     

    -
     
    -

    OE05. HEIs that had a 1st DNA/PCR done within

    -
    -

     

    -
     
    -

    2 months

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    OE06. HEIs that had a 2nd DNA/PCR at 9 months

    -
    -

     

    -
     
    -

    of age

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    OE07. HEIs that had DNA/PCR done at 6 weeks

    -
    -

     

    -
     
    -

    after cessation of breastfeeding

    -
    -

     

    -
    -

     

    -
     
    -

    OE08. Number of HIV exposed infants exclusively

    -
    -

     

    -
     
    -

    breastfed for the first 6 completed months during

    -
    -

     

    -
     
    -

    the reporting period

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    OE09. Number of HIV exposed infants who were

    -
    -

     

    -
     
    -

    reported to be breastfed up-to 1 year

    -
    -

     

    -
     
    -

    2.4.2 FINAL TEST RESULTS –HEI Outcomes at

    -
    -

    NUMBER

    -
     
    -

    24 months.

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    OE10.Number of HIV exposed

    -
    -

     

    -
    -

    Total

    -
    -

     

    -
     
    -

    infants tested HIV positive on

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Initiated on ART

    -
    -

     

    -
     
    -

    any DNA/PCR or rapid test

    -
    -

     

    -
    -

     

    -
     
    -

    OE11.Number of HIV exposed infants who died

    -
    -

     

    -
     
    -

    before 18 months of age

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    OE12.Number of HIV exposed infants transferred

    -
    -

     

    -
     
    -

    out before 18 months of age

    -
    -

     

    -
    -

     

    -
     
    -

    OE13.Number of HIV exposed infants were lost to

    -
    -

     

    -
     
    -

    follow up before 18 months of age

    -
    -

     

    -
     
    -

    OE14. Number of HIV exposed infants who were

    -
    -

     

    -
     
    -

    discharged HIV negative on final rapid test

    -
    -

     

    -
     
    -

    OE15.Number of HEIs whose final HIV status is

    -
    -

     

    -
     
    -

    unknown (include in care but no test done)

    -
    -

     

    -
     
    -

     

    -

     

    -

    2.5 EARLY RETENTION MONITORING FOR EMTCT WOMEN

    -

     

    -

    NET

    -

    NUMBER CURRENT

    -

    COHORT*

    -

     

    -

    ER01. EMTCT mothers known to be active on ART treatment 1 month after ART initiation

    -

     

    -

    ER02. EMTCT mothers known to be active on ART treatment 2 months after ART initiation

    -

     

    -

    ER03. EMTCT mothers known to be active on ART treatment 3 months after ART initiation

    -

     

    -

    *Net current Cohort=Original Cohort + Transfer In – Transfer Out

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    2.6 FAMILY PLANNING METHODS

    -
    -

    NEW

    -
    -

    REVISITS

    -
     
    -

    USERS

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
     
    -

    FP01.Oral:

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
     
    -

    Lo-Femenal

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
     
    -

    FP02. Oral:

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
     
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
     
    -

    Microgynon

    -
    -

     

    -
    -

     

    -
     
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
     
    -

    FP03. Oral: Ovrette or

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
     
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
     
    -

    another POP

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
     
    -

    FP04. Oral:

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
     
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
     
    -

    Levonogesteral

    -
    -

     

    -
    -

     

    -
     
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
     
    -

    FP05. Oral: Others

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
     
    -

    FP06. Injectable

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
     
    -

    DMPA(IM e.g Depo)3

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
     
    -

    months

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
     
    -

    FP07.Injectable

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
     
    -

    DMPA(SC e.g Sayana

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
     
    -

    press) 3 months

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
     
    -

    FP08. Injection 2

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
     
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
     
    -

    months

    -
    -

     

    -
    -

     

    -
     
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
     
    -

     

    -

     

    -

    Print Version September 2019

    -


    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT

    -
    -

     

    -
    -

     

    -
    -

    Page 14

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    2.6 FAMILY PLANNING METHODS

    -
    -

    NEW

    -
    -

    REVISITS

    -
    -

    2.6 FAMILY PLANNING METHODS

    -
    -

    NEW

    -
    -

     

    -
    -

    REVISITS

    -
    -

     

    -
    -

    USERS

    -
    -

    USERS

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    FP19. Female

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    FP09. Injection 1

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    condoms

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    month

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    FP10. 3 year implant

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    FP20. Male condoms

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    (e.g. implananon NXT,

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Levo plant)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    NO.DISP.ATUNIT

    -
    -

     

    -
    -

    NO.DISP.INOUTREACH

    -
    -

    NO.DISP.BYCBDs

    -
    -

     

    -
    -

    NO.DISP.BYPHARMACIES/DRUGSHOPS

    -
    -

     

    -
    -

    (e.g. Sino plant)

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    2.6.1 CONTRACEPTIVES

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    FP11. 4 year implant

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    DISPENSED

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CT01. Oral: Lo-Femenal (cycles)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CT02. Oral: Microgynon (cycles)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    FP12. 5 year implant

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CT03. Oral: Ovrette or other POP (cycles)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CT04. Oral: Levonogesteral (cycles)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    (e.g. Jadella)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CT05. Oral: Emergency

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    contraceptives

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CT06. Oral: Others (cycles)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CT07. Female condoms (pieces)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    FP13. IUD-Copper-T

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CT08. Male condoms (pieces)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CT09: Injectable 3 months IM (doses)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CT10. Injectable 3 months SC (doses)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CT11. Injectable 2 months (doses)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CT12. Injectable 1 month (doses)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    FP14. IUD-Hormonal

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CT13. FAM-SDM (Cycle beads)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    (pieces)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CT14. IUDs–Copper T

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CT15. IUDs –Hormonal

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CT16. 3 year implant (e.g impalanon

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    FP15. FAM-SDM

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    NXT, Levo plant)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CT17. 4 year implant (e.g Sino plant)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    method

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CT18. 5 year implant (e.g Jadella)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    2.6.2 MINOR OPERATIONS IN FAMILY PLANNING

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    FP16. FAM-LAM

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MF01.Female sterilization

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    (tubal ligation)

    -
    -

     

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    FP17. FAM-Two Days

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Method

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MF02. Male sterilization

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    (vasectomy)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Below 15 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    FP18. Emergency

    -
    -

    15-19 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Contraceptive Pills

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    users

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MF03. Implant removals

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    25-49 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MF04. IUD removals

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    50+ years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Print Version September 2019

    -


    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT                       Page 15

    -

     

    -

     

    -

    2.6.3 INTEGRATED SERVICES IN FAMILY PLANNING

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    Data Element

    -
    -

     

    -
    -

    NUMBER

    -
    -

     

    -
    -

    FH01. Number HIV+ FP Users

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    FH02. Number of FP Users screened for Cervical Cancer

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    FH03. STI screening in

    -
    -

    Total screened

    -
    -

     

    -
    -

     

    -
    -

    Family planning

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Positive

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -

     

    -

    2.6.4 POST PARTUM FAMILY PLANNING

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

     

    -
    -

     

    -
    -

    Less Than 48 hours

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    48hrs to 3 weeks

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Timing

    -
    -

    4weeks to 5weeks

    -
    -

     

    -
    -

    PFH01. No of

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    6 weeks to 5 months

    -
    -

     

    -
    -

    Mothers who

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    6 months to 12 months

    -
    -

     

    -
    -

    received family

    -
    -

     

    -
    -

     

    -
    -

    planning in

    -
    -

     

    -
    -

    Oral formulation

    -
    -

     

    -
    -

    Postpartum by

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Injectable

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Method

    -
    -

    implants

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    IUDs

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Sterilization

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -

     

    -

    2.7 CHILD HEALTH SERVICES

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    6 – 11 Months

    -
    -

     

    -
    -

    12 – 59 Months

    -
    -

     

    -
    -

    5 – 14 Years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Male

    -
    -

     

    -
    -

    Female

    -
    -

     

    -
    -

    Male

    -
    -

     

    -
    -

    Female

    -
    -

     

    -
    -

    Male

    -
    -

     

    -
    -

    Female

    -
    -

     

    -
    -

    CH01- Vit A supplement

    -
    -

    Static

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    (1st dose)

    -
    -

    Outreach

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    In school

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CH02- Vit A supplement

    -
    -

    Static

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    (2nd dose)

    -
    -

    Outreach

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    In school

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CH03- Dewormed

    -
    -

    Static

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    (1st dose)

    -
    -

    Outreach

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    In school

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CH04- Dewormed

    -
    -

    Static

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    (2nd dose)

    -
    -

    Outreach

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    In school

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    2.7.1 HPV VACCINATION

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Vaccination of only 10 years OLD girls

    -
    -

     

    -
    -

    Facility

    -
    -

     

    -
    -

     

    -
    -

    School

    -
    -

     

    -
    -

    Community

    -
    -

     

    -
    -

     

    -
    -

    (F)

    -
    -

     

    -
    -

     

    -
    -

    (S)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    (C)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VP01. HPV1-Dose 1

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VP02.HPV2-Dose 2

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    2.7.2 TETANUS VACCINATION (Td VACCINE)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Doses

    -
    -

     

    -
    -

    Pregnant women

    -
    -

     

    -
    -

    Non-pregnant women

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Static

    -
    -

    Outreach

    -
    -

     

    -
    -

    Static

    -
    -

     

    -
    -

     

    -
    -

    Outreach

    -
    -

     

    -
    -

     

    -
    -

    Immunization

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    in School

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    TD01. Td1-Dose 1

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    TD02. Td2-Dose 2

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    TD03. Td3-Dose 3

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    TD04. Td4-Dose 4

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    TD05. Td5-Dose 5

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -

     

    -

     

    -

     

    -

     

    -

    Print Version September 2019

    -


    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT

    -
    -

     

    -
    -

    Page 16

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    2.7.3 CHILD IMMUNISATION

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    Doses

    -
    -

     

    -
    -

    Under 1

    -
    -

    1-4 Years

    -
    -

    5 – 14 Years

    -
     
    -

    Static

    -
    -

    Outreach

    -
    -

    Static

    -
    -

    Outreach

    -
    -

    Static

    -
    -

    Outreach

    -
     
    -

     

    -
    -

     

    -

    CL01. BCG

    -

     

    -

    CL02. Protection At Birth for Td(PAB)

    -

     

    -

    CL03. Polio 0

    -

     

    -

    CL04. Polio 1

    -

     

    -

    CL05. Polio 2

    -

     

    -

    CL06. Polio 3

    -

     

    -

    CL07. IPV

    -

     

    -

    CL08. DPT-HepB+Hib 1

    -

     

    -

    CL09. DPT-HepB+Hib 2

    -

     

    -

    CL10. DPT-HepB+Hib 3

    -

     

    -

    CL11. PCV 1

    -

     

    -

    CL12. PCV 2

    -

     

    -

    CL13. PCV 3

    -

     

    -

    CL14. Rotavirus 1 Vaccine

    -

     

    -

    CL15. Rotavirus 2 Vaccine

    -

     

    -

    CL16. Measles (MR1)

    -

     

    -

    CL17. Measles 2 (MR2)

    -

     

    -

    CL18. Fully immunized by 1 year

    -

     

    -

    CL19. Number received LLIN

    -

     

    -

     

    -

     

    -

     

    -

    2.7.4 VACCINE AVAILABILITY AND WASTAGE

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    Antigen

    -
    -

    Open Balance

    -
    -

    Received

    -
    -

    Closing

    -
    -

    Doses wasted

    -
     
    -

     

    -
    -

     

    -
     
    -

    Doses in Closed

    -
    -

    Doses in Open

    -
     
    -

    (A)

    -
    -

    (B)

    -
    -

    Balance (C)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Vials (CV)

    -
    -

    Vials (OV)

    -
     
    -

     

    -

    WT01. BCG

    -

     

    -

    WT02. Polio (OPV)

    -

     

    -

    WT03. IPV

    -

     

    -

    WT04. DPT+HepB+Hib

    -

     

    -

    WT05. PCV

    -

     

    -

    WT06. Rotavirus

    -

     

    -

    WT07. Measles

    -

     

    -

    WT08. Td

    -

     

    -

    WT09. HPV

    -

     

    -

    WT10. Yellow Fever

    -

     

    -

    2.7.5 COLD CHAIN MONITORING

    -

     

    -

    CC01. Number of high temperature alarms

    -

     

    -

    CC02. Number of low temperature alarms

    -

     

    -

    CC03. Number of cold chain refrigerators available

    -

     

    -

    CC04. Number of cold chain refrigerators that are functional

    -

     

    -

     

    -

     

    -

     

    -

    Print Version September 2019

    -


    - - - - - - - - - - - - - - - -
    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT

    -
    -

    Page 17

    -
    -

     

    -
    -

     

    -
    -

    2.7.6 EPI/EID/PMTCT Integration

    -
    -

    TOTAL

    -
    -

     

    -

    PI01. Number of Infants screened for HIV-exposure at DPT1, 2, 3 and Measles immunization during month

    -

     

    -

    PI02. Number of HIV-exposed infants identified at immunisation during the month

    -

     

    -

    PI03. Number of HIV-exposed infants tested during immunisation during the month

    -

     

    -

    Total (TR & TRR)

    -

    PI04. Number of breastfeeding women tested for HIV for the first time at immunization

    -

    TRR

    -

     

    -

    Total (TRK & TRRK)

    -

    PI05. Number of breastfeeding women with a known HIV status at immunization

    -

    TRRK

    -

     

    -

    Total (TR+ & TRR+)

    -

    PI06. Number of breastfeeding women re-tested for HIV at immunization

    -

    TRR+

    -

     

    -

    PI07. Number of HIV+ breastfeeding women identified at immunization initiating ART

    -

     

    -

    3.0 HEPATITIS

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    <10yrs

    -
    -

     

    -
    -

    10-19yrs

    -
    -

    20-59yrs

    -
    -

    60+ years

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
            
    -

     

    -

    HB01. Number of clients tested for HepB

    -

     

    -

    HB02. Number tested negative for HepB

    -

     

    -

    1st Dose (New)

    -

    HB03. Number tested negative for              2nd Dose(Revisit)

    -

    HepB and Vaccinated

    -

     

    -

    3rd Dose(Revisit)

    -

     

    -

    HB04. Number tested positive for HepB

    -

     

    -

    HB05. Number tested positive for HepB and enrolled for treatment

    -

     

    -

    HB06. Number tested positive for HepB and not enrolled into care and treatment

    -

     

    -

    HB07. Number of persons assessed for HepB treatment effectiveness

    -

    (viral load suppression)

    -

     

    -

    HB08. Number of persons with HepB effective treatment (viral load suppression)

    -

     

    -

    HB09. Number of pregnant women tested for HepB (Subset of row 1)

    -

     

    -

    HB10. Number of pregnant women tested positive for HepB (Subset of row 4)

    -

     

    -

    HB11. Number of pregnant women tested positive for HepB and

    -

    initiated on HepB treatment (Subset of row 5)

    -

     

    -

    HB12. Number tested for HepC

    -

     

    -

    HB13. Number tested positive for HepC (Anti-HCV)

    -

     

    -

    HB14. Number confirmed positive for HepC (HCV RNA)

    -

     

    -

    HB15. Number tested positive for HCV RNA and enrolled for treatment

    -

     

    -

    HB16. Number of persons assessed for HepC Sustained Viral response

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

    Print Version September 2019

    -


    - - - - - - -
    -

    Family

    -
    - - - - - - -
    -

    Planning

    -
    - - - - - - -
    -

    PNC

    -
    - - - - - - -
    -

    Maternity

    -
    - - - - - - -
    -

    ANC

    -
    - - - - - - -
    -

    Young

    -
    - - - - - - -
    -

    Child

    -
    - - - - - - -
    -

    Clinic

    -
    - - - - - - -
    -

    STI Clinic

    -
    - - - - - - -
    -

    Nutrition Unit

    -
    - - - - - - -
    -

    TB Clinic

    -
    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT                                                                                                         Page 18

    -

     

    -

    4.0 HIV/AIDS TESTING SERVICES (HTS)

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    - - - - - - - - - -
    -

    testing)

    -
    -

    (by Entry Point for Health facility HT01. Number of individuals

    -
    -

     

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    Below 1yr

    -
    -

     

    -
    -

    1 – 4

    -
    -

     

    -
    -

    5 - 9

    -
    -

    10–14

    -
    -

    15-19

    -
    -

    20–24

    -
    -

    25-29

    -
    -

    30-34

    -
    -

    35–39

    -
    -

    40–44

    -
    -

    45–49

    -
    -

     

    -
    -

    50+

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
                            
    -

     

    -

    Tested for HIV

    -

     

    -

    Ward/IPD  New HIV positive

    -

     

    -

    Linked to HIV care

    -

     

    -

    Tested for HIV

    -

     

    -

    OPD        New HIV positive

    -

     

    -

    Linked to HIV care

    -

     

    -

    Tested for HIV

    -

     

    -

    ART Clinic New HIV positive

    -

     

    -

    Linked to HIV care

    -

     

    -

    Tested for HIV

    -

     

    -

    New HIV positive

    -

     

    -

    Linked to HIV care

    -

     

    -

    Tested for HIV

    -

     

    -

    New HIV positive

    -

     

    -

    Linked to HIV care

    -

     

    -

    Tested for HIV

    -

     

    -

    New HIV positive

    -

     

    -

    Linked to HIV care

    -

     

    -

    Tested for HIV

    -

     

    -

    New HIV positive

    -

     

    -

    Linked to HIV care

    -

     

    -

    Tested for HIV

    -

     

    -

    New HIV positive

    -

     

    -

    Linked to HIV care

    -

     

    -

    Tested for HIV

    -

     

    -

    New HIV positive

    -

     

    -

    Linked to HIV care

    -

     

    -

    Tested for HIV

    -

     

    -

    New HIV positive

    -

     

    -

    Linked to HIV care

    -

     

    -

    Tested for HIV

    -

     

    -

    New HIV positive

    -

     

    -

    Linked to HIV care

    -

     

    -

    Print Version September 20019

    -


    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT                                                                                                         Page 19

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    facility

    -
    -

     

    -
    -

    individuals

    -
    -

     

    -
    -

    SMC

    -
    -

    Health

    -
    -

     

    -
    -

    of

    -
    -

    testing)

    -
    -

     

    -
    -

    for

    -
    -

    EID

    -
    -

    Number

    -
    -

     

    -
    -

    Point

    -
    -

    Facility

    -
    -

    Entry

    -
    -

    HT01.

    -
    -

     

    -
    -

    Other

    -
    -

     

    -
    -

    Based

    -
    -

    (by

    -
    -

    Points

    -
    -

    for

    -
    -

     

    -
    -

    Work

    -
    -

     

    -
    -

    place

    -
    -

    Point

    -
    -

     

    -
    -

    Home-

    -
    -

    Entry

    -
    -

     

    -
    -

     

    -
    -

    Based

    -
    -

    Numberofindividuals(byCommunitytesting)

    -
    -

    Testing

    -
    -

    Drop in

    -
    -

     

    -
    -

     

    -
    -

    centre

    -
    -

     

    -
    -

     

    -
    -

    Hotspots

    -
    -

    HT02

    -
    -

     

    -
    -

    Other

    -
    -

     

    -
    -

     

    -
    -

    Community

    -
    -

     

    -
    -

     

    -
    -

    Testing

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -

    HT03. Total number of Individuals

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    of

    -
    -

     

    -
    -

    Health

    -
    -

    PITC

    -
    -

     

    -
    -

    Number

    -
    -

    approach)

    -
    -

    Facility

    -
    -

    (by

    -
    -

    individuals

    -
    -

     

    -
    -

    HT04.

    -
    -

    Testing

    -
    -

    Community

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    Below 1yr

    -
    -

     

    -
    -

    1 – 4

    -
    -

     

    -
    -

    5 - 9

    -
    -

    10–14

    -
    -

    15-19

    -
    -

    20–24

    -
    -

    25-29

    -
    -

    30-34

    -
    -

    35–39

    -
    -

    40–44

    -
    -

    45–49

    -
    -

     

    -
    -

    50+

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

     

    -
    -

    F

    -
    -

    M

    -
    -

     

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

     

    -
    -

    F

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -

    Tested for HIV

    -

     

    -

    New HIV positive

    -

     

    -

    Linked to HIV care

    -

     

    -

    Tested for HIV

    -

     

    -

    New HIV positive

    -

     

    -

    Linked to HIV care

    -

     

    -

    Tested for HIV

    -

     

    -

    New HIV positive

    -

     

    -

    Linked to HIV care

    -

     

    -

    Tested for HIV

    -

     

    -

    New HIV positive

    -

     

    -

    Linked to HIV care

    -

     

    -

    Tested for HIV

    -

     

    -

    New HIV positive

    -

     

    -

    Linked to HIV care

    -

     

    -

    Tested for HIV

    -

     

    -

    New HIV positive

    -

     

    -

    Linked to HIV care

    -

     

    -

    Tested for HIV

    -

     

    -

    New HIV positive

    -

     

    -

    Linked to HIV care

    -

     

    -

    Tested for HIV

    -

     

    -

    New HIV positive

    -

     

    -

    Linked to HIV care

    -

     

    -

    Tested for HIV

    -

     

    -

    New HIV positive

    -

     

    -

    Linked to HIV care

    -

     

    -

    Tested for HIV

    -

     

    -

    New HIV positive

    -

     

    -

    Linked to HIV care

    -

     

    -

    Tested for HIV

    -

     

    -

    New HIV positive

    -

     

    -

    Linked to HIV care

    -

     

    -

    Print Version September 20019

    -


    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT                                                                                                         Page 20

    -


    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    - - - - - - - - - - - - - - - - -
    -

    CICT/VICT

    -
    -

    of

    -
    -

    Testing approach

    -
    -

    HT05. Number

    -
    -

    individuals(by

    -
    -

     

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    Below 1yr

    -
    -

     

    -
    -

    1 – 4

    -
    -

     

    -
    -

    5 - 9

    -
    -

    10–14

    -
    -

    15-19

    -
    -

    20–24

    -
    -

    25-29

    -
    -

    30-34

    -
    -

    35–39

    -
    -

    40–44

    -
    -

    45–49

    -
    -

     

    -
    -

    50+

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
                            
    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    Health

    -
    -

    Tested for HIV

    -
     
    -

     

    -
     
    -

    New HIV positive

    -
     
    -

    Facility

    -
    -

     

    -
     
    -

     

    -
    -

    Linked to HIV care

    -
     
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Tested for HIV

    -
     
    -

     

    -

    Community  New HIV positive

    -

     

    -

    Linked to HIV care

    -

     

    -

    HT06. Number of Individuals who received

    -

     

    -

    HIV test results

    -

     

    -

    HT07. Number of individuals tested for the first

    -

    time ever

    -

     

    -

    HT08-Total Number of Individuals who tested

    -

    HIV positive (New + Known)

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - -
    -

    HT09 Number of newly

    -
    -

    Long-term infection

    -
     
    -

    diagnosed HIV positive

    -
    -

     

    -
     
    -

    individuals with a test

    -
    -

    Recent infection

    -
     
    -

    for recent infection result

    -
    -

     

    -

    HT10. HIV positive individuals with

    -

    presumptive TB

    -

     

    -

    HT11. Number of Individuals tested more than

    -

    once in the last 12 months

    -

     

    -

    HT12. Number of individuals who were

    -

    Counselled and Tested together as a Couple

    -

     

    -

    HT13. Number of individuals who were Tested

    -

    and Received results together as a Couple

    -

    HT14. Number of individuals with Concordant

    -

     

    -

    positive results who tested as Couples

    -

     

    -

    HT15. Number of individual with Discordant

    -

    results who tested as Couples

    -

     

    -

    HT16. Individuals counselled and tested for PEP

    -

     

    -

    HT17. Number of individuals tested as Special

    -

    Categories

    -

     

    -

     

    - - - - - - -
    -

    HT18. Number of individuals

    -
    -

     

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

     

    -
    -

    Tested for HIV

    -
     
    -

     

    -
    -

     

    -
     
    -

    Prisoners

    -
    -

    Tested HIV Positive

    -
     
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Linked to HIV Care

    -
     
    -

     

    -
    -

     

    -
     
    -

    People Who

    -
    -

    Tested for HIV

    -
     
    -

     

    -
     
    -

    Tested HIV Positive

    -
     
    -

    Inject Drugs

    -
    -

     

    -
     
    -

     

    -
    -

    Linked to HIV Care

    -
     
    -

     

    -
    -

     

    -
     
    -

    Uniformed

    -
    -

    Tested for HIV

    -
     
    -

     

    -
     
    -

    Tested HIV Positive

    -
     
    -

    men

    -
    -

     

    -
     
    -

     

    -
    -

    Linked to HIV Care

    -
     
    -

     

    -
    -

     

    -
     
    -

     

    -

     

    -

    Print Version September 20019

    -


    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT                                                                                                         Page 21

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    - - - - - - -
    -

    HT18. Number of individuals

    -
    -

     

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    Below 1yr

    -
    -

     

    -
    -

    1 – 4

    -
    -

     

    -
    -

    5 - 9

    -
    -

    10–14

    -
    -

    15-19

    -
    -

    20–24

    -
    -

    25-29

    -
    -

    30-34

    -
    -

    35–39

    -
    -

    40–44

    -
    -

    45–49

    -
    -

     

    -
    -

    50+

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
                            
    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

     

    -
    -

    Tested for HIV

    -
     
    -

    Migrant

    -
    -

     

    -
     
    -

    Tested HIV Positive

    -
     
    -

    Workers

    -
    -

     

    -
     
    -

     

    -
    -

    Linked to HIV Care

    -
     
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Tested for HIV

    -
     
    -

     

    -
    -

     

    -
     
    -

    Truckers

    -
    -

    Tested HIV Positive

    -
     
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Linked to HIV Care

    -
     
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Tested for HIV

    -
     
    -

     

    -
    -

     

    -
     
    -

    Fisher Folk

    -
    -

    Tested HIV Positive

    -
     
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Linked to HIV Care

    -
     
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Tested for HIV

    -
     
    -

     

    -
    -

     

    -
     
    -

    Refuges

    -
    -

    Tested HIV Positive

    -
     
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Linked to HIV Care

    -
     
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Tested for HIV

    -
     
    -

    Pregnant

    -
    -

     

    -
     
    -

    Tested HIV Positive

    -
     
    -

    women

    -
    -

     

    -
     
    -

     

    -
    -

    Linked to HIV Care

    -
     
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Tested for HIV

    -
     
    -

    Breast feeding

    -
    -

     

    -
     
    -

    Tested HIV Positive

    -
     
    -

    women

    -
    -

     

    -
     
    -

     

    -
    -

    Linked to HIV Care

    -
     
    -

     

    -
    -

     

    -
     
    -

    Adolescent

    -
    -

    Tested for HIV

    -
     
    -

     

    -
     
    -

    Girls and

    -
    -

    Tested HIV Positive

    -
     
    -

    Young Women

    -
    -

    (AGYW)

    -
    -

    Linked to HIV Care

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    People with

    -
    -

    Tested for HIV

    -
     
    -

     

    -
     
    -

    Tested HIV Positive

    -
     
    -

    Disabilities

    -
    -

    (PWD)

    -
    -

     

    -
     
    -

    Linked to HIV Care

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Tested for HIV

    -
     
    -

     

    -
    -

     

    -
     
    -

    Others

    -
    -

    Tested HIV Positive

    -
     
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

    Linked to HIV Care

    -
     
    -

     

    -
    -

     

    -
     
    -

     

    -

    Print Version September 20019

    -


    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Page 22

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

    Number of

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

    individuals

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Below 1yr

    -
    -

     

    -
    -

    1 – 4

    -
    -

     

    -
    -

    5 - 9

    -
    -

    10–14

    -
    -

    15-19

    -
    -

    20–24

    -
    -

    25-29

    -
    -

    30-34

    -
    -

    35–39

    -
    -

    40–44

    -
    -

    45–49

    -
    -

     

    -
    -

    50+

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

     

    -
    -

    F

    -
    -

    M

    -
    -

     

    -
    -

    F

    -
    -

    M

    -
    -

     

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

    F

    -
    -

    M

    -
    -

     

    -
    -

    F

    -
    -

     

    -
    -

    HT19. Number

    -
    -

    Elicited

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    of partners

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Notified

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HT20. Number

    -
    -

    Total

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    APN

    -
    -

    of partners

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    tested

    -
    -

    HIV Positive

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HT21. Number

    -
    -

    Already in HIV care

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    of HIV-positive

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Linked to HIV care/

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    partners

    -
    -

    ART

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HT22. Number

    -
    -

    Directly Assisted

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    of HIV Self -Test

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    kits distributed by

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Unassisted

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HIVST

    -
    -

    model

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HT23. Number of individuals who

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    report a Positive HIV Self-Test

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HT24. Number of individuals with

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    confirmed positive results with the

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    National algorithm

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

    Print Version September 20019

    -


    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Page 23

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    5.0 SAFE MALE CIRCUMCISION (SMC)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    Category

    -
    -

    Age Group0-60 days

    -
    -

    >2mth­

    -
    -

    1 – 9

    -
    -

    10–14

    -
    -

    15–19

    -
    -

    20–24

    -
    -

    25–29

    -
    -

    30–34

    -
    -

    35–39

    -
    -

    40–44

    -
    -

    45-49

    -
    -

    50+

    -
    -

    Total

    -
     
    -

    <1yr

    -
    -

    Yrs

    -
    -

    Yrs

    -
    -

    Yrs

    -
    -

    Yrs

    -
    -

    Yrs

    -
    -

    Yrs

    -
    -

    Yrs

    -
    -

    Yrs

    -
    -

    Yrs

    -
    -

    Yrs

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -

    +VE

    -

     

    -

    -VE

    -

    SM01. Number of Males

    -

     

    -

    Counselled and Tested for HIV at INC

    -

    SMC site

    -

     

    -

    Known +VE

    -

     

    -

    Not Tested

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    SM02. Number of Males

    -
    -

    Facility

    -
    -

    SC

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    DC

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Circumcised (by Age Group-

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Years) and Technique (SC

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    SC

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    - Surgical SMC, DC - Device-

    -
    -

    Outreach

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Based SMC)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    DC

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Technique

    -
    -

    Facility

    -
    -

     

    -
    -

     

    -
    -

    Outreach

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    SC

    -
    -

     

    -
    -

    DC

    -
    -

    SC

    -
    -

    DC

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    SM04. Number of males Circumcised who Returned for Follow Up

    -
    -

    Within 48 hours(0-48)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Within 7 days (>0-7)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Within 14 days (>0-14)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Beyond 14 days

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    SM05. Number of males Circumcised who Experienced one or more Adverse Events

    -
    -

    Moderate

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    (Report only Moderate or Severe AEs)

    -
    -

    Severe

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    NUMBER

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    SM06. Number of circumcised males with Adverse Events

    -
    -

    Managed by the site

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Referred

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    SM07. Number of clients who received Td

    -
    -

    First dose (Td1)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Second dose (Td2)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

     

    -

    Print Version September 20019

    -


    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT

    -
    -

     

    -
    -

    Page 24

    -
    -

     

    -
     
    -

    6.0 ESSENTIAL MEDICINES AND HEALTH SUPPLIES

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    6.1 STOCK STATUS (Out of stock means that there was NONE left in your health unit STORE)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    Note: The primary data sources for this sub-section are the Stock books and Stock Cards

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Quantity

    -
    -

    Days out of

    -
    -

    Stock on

    -
    -

    Quantity

    -
     
    -

    SN.

    -
    -

    NAME OF DRUG ITEM

    -
    -

    UNIT

    -
    -

    Consumed

    -
    -

    stock

    -
    -

     

    -
    -

    hand

    -
    -

    expired

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

    (units)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS01

    -
    -

    Artemether/Lumefantrine 20/120 mg

    -
    -

    Tablet

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS02

    -
    -

    Depot medroxy progesterone acetate (DMPA)

    -
    -

    Injectable

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS03

    -
    -

    Amoxicillin 250 mg capsule

    -
    -

    Capsule

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS04

    -
    -

    Sulfadoxine/ Pyrimethamine tablet

    -
    -

    Tablet

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS05

    -
    -

    ORS Sachets with zinc tablet

    -
    -

    Packet

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS06

    -
    -

    Measles Vaccine

    -
    -

    Vial

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS07

    -
    -

    Determine HIV 1 & 2 screening test

    -
    -

    Tests

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS08

    -
    -

    Stat -pack HIV Confirmatory rapid tests, tests

    -
    -

    Tests

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS09

    -
    -

    SD Bioline test Tie-Breaker

    -
    -

    Tests

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS10

    -
    -

    CD4 reagent

    -
    -

    Tests

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS11

    -
    -

    Malaria Rapid Diagnostic tests

    -
    -

    Tests

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS12

    -
    -

    GeneXpert Cartridges

    -
    -

    Cartridges

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS13

    -
    -

    Therapeutic milk F75 (75Kcal/100ml)

    -
    -

    Packet

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS14

    -
    -

    Oral Liquid Morphine 5ml/ml

    -
    -

    Bottle of 500 ml

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS15

    -
    -

    Ready to use Therapeutic feeds (RUTF)

    -
    -

    Sacket

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS16

    -
    -

    TDF/3TC/EFV 300mg/300mg/(600mg or 400mg )tablet

    -
    -

    Pack of 30

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS17

    -
    -

    AZT/3TC/NVP 300mg/150mg/200mg

    -
    -

    Pack of 60

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS18

    -
    -

    Atazanavir /ritonavir (ATV/r) 300/100mg tablet

    -
    -

    Pack of 30

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS19

    -
    -

    Tenofovir/Lamivudine (TDF/3TC) 300mg/300mg

    -
    -

    Pack of 30

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS20

    -
    -

    TDF/3TC/DTG 300mg/300mg/50mg(TLD)

    -
    -

    Pack of 30

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS21

    -
    -

    TLE 300mg/300mg/400mg

    -
    -

    Pack of 90

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS22

    -
    -

    Abacavir/Lamivudine (ABC/3TC) 120mg/60mg (Paediatric)

    -
    -

    Pack of 30

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS23

    -
    -

    Lopinavir 40mg/ritonavir 10mg pellets in capsules

    -
    -

    Pack of 120

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS24

    -
    -

    Cotrimoxazole 960mg tablet

    -
    -

    Pack of 1000

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS25

    -
    -

    (RHZE) blister strip 150/75/400/275 mg

    -
    -

    28 tablets

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS26

    -
    -

    Blood 450 ml

    -
    -

    Unit

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS27

    -
    -

    RHZ Blister 75mg/50mg/150mg

    -
    -

    28 tablets

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS28

    -
    -

    Misoprostol 200mcg Tablet**

    -
    -

    Tablet

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS29

    -
    -

    Amoxicillin dispersible 250mg tablet.

    -
    -

    Tablet

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS30

    -
    -

    Ceftriaxone 1g Injection

    -
    -

    Vial

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS31

    -
    -

    Oxytocin Injection

    -
    -

    Ampoule

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS32

    -
    -

    Chlorhexidine Digluconate Gel 7.1% (equivalent to 4%

    -
    -

    Tube

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    chlorhexidine)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS33

    -
    -

    Mama Kit**

    -
    -

    Kit

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS34

    -
    -

    Bendroflumethiazide (Aprinox) 5mg

    -
    -

    Tablet

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS35

    -
    -

    Artesunate 60mg

    -
    -

    Injection

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS36

    -
    -

    Nifedipine tablets 20mg tablet

    -
    -

    Tablet

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS37

    -
    -

    Captopril 25mg tablet

    -
    -

    Tablet

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS38

    -
    -

    Metformin 500mg

    -
    -

    Tablet

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS39

    -
    -

    Glibenclamide 5mg tablet

    -
    -

    Tablet

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS40

    -
    -

    Insulin short-acting

    -
    -

    Vial

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

    SS41

    -
    -

    Cardiac Aspirin 75/80 mg

    -
    -

    Tablet

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
     
    -

     

    -

    Print Version September 2019

    -


    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT

    -
    -

     

    -
    -

    Page 25

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    6.2 ADD THE GENERIC NAME OF DRUGS, VACCINES, CONTRACEPTIVES OR SUPPLIES THAT HAVE EXPIRED DURING THE MONTH:

    -
    -

    NO.

    -
    -

    ITEM

    -
    -

    NAME OF DRUG ITEM

    -
    -

     

    -
    -

    Quantity

    -
    -

     

    -
    -

    NO.

    -
    -

    ITEM

    -
    -

     

    -
    -

    NAME OF DRUG ITEM

    -
    -

     

    -
    -

     

    -
    -

    Quantity

    -
    -

     

    -
    -

    CODE

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CODE

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    1

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    6

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    2

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    7

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    3

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    8

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    4

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    9

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    5

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    10

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    7.0 OUTREACH ACTIVITIES

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Number Planned

    -
    -

    Number Conducted

    -
    -

    OH01. EPI Outreaches

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    OH02. HCT Outreaches

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    OH03. Environmental Health Visits

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    OH04. Health Education/Promotion Outreaches

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    OH5. Maternal Deaths Audited/Reviewed ( community Verbal autopsy)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    OH06.Perinatal Deaths Audited

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    OH07. Integrated SRH services outreaches (FP, ANC, PNC, ASRH, ADH, CaCx screening,

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Fistula screening & reintegration, GBV etc)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    OH08. Number of surgical and Treatment camps (e.g, Fistula repair, Gynaecological camps etc)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    OH09. School health outreaches

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    OH10. Total Number of Births registered during outreaches

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    OH11. Other Outreaches

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    8.0 MEETINGS

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Number Planned

    -
    -

    Number Conducted

    -
    -

    MT01. General Staff Meetings

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MT02. Quality Improvement (QI) Meetings

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MT03. Maternal& Perinatal Death Review committee Meetings

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MT04. Health Unit Management Committee/Hospital Board Meetings

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MT05. Community Accountability and client feedback review meetings ( Eg. Balazas, Community

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    meetings, community feedback meetings etc)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MT06. Other Meetings

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Health Education at Health Facility level

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Number Planned

    -
    -

    Number Conducted

    -
    -

    MT07. Health Education sessions at Health facility

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Adolescent /youth friendly services

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    10-19 Years

    -
    -

     

    -
    -

    20-24 years

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Male

    -
    -

    Female

    -
    -

    Male

    -
    -

     

    -
    -

     

    -
    -

    Female

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MT08.Number of adolescents who accessed adolescent friendly corner

    -
    -

     

    -
    -

    New

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    for any service

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Revisit

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    9.0 SUPPORT SUPERVISION VISITS

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Number Planned

    -
    -

    Number Conducted

    -
    -

    SV01. From Ministry of Health

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    SV02. From Regional Teams

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    SV03. From District Local Government

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    SV04. From the Health Sub-District (HSD)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    SV05. Other Support Supervisions done

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    LABORATORY

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    10.1.1. Total

    -
    -

     

    -
    -

     

    -
    -

    10.1.2. Number of Specimen Collected at Facility and Received from other

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    number of laboratory client

    -
    -

    facilities (For tests done within)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    visits

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Blood

    -
    -

    Stool/

    -
    -

    Urine

    -
    -

     

    -
    -

     

    -
    -

    Sputum

    -
    -

    CSF

    -
    -

     

    -
    -

    Pus

    -
    -

     

    -
    -

    Genital

    -
    -

     

    -
    -

    Skin

    -
    -

     

    -
    -

     

    -
    -

    Others

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Rectal

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Swab

    -
    -

     

    -
    -

    Swab

    -
    -

     

    -
    -

    Snip

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    swab

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    LV01.

    -
    -

     

    -
    -

     

    -
    -

    SC01.

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Outpatient

    -
    -

     

    -
    -

     

    -
    -

    Collected (IN)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    (OPD)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    LV02.

    -
    -

     

    -
    -

     

    -
    -

    SC02.

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Inpatient

    -
    -

     

    -
    -

     

    -
    -

    Received

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    (IPD)

    -
    -

     

    -
    -

     

    -
    -

    (OUT)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -

    Print Version September 2019

    -


    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT

    -
    -

    Page 26

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    10.2 LABORATORY ROUTINE TESTS

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    10.2.1 Number of Routine Tests Done in Facility Laboratory

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Lab Tests

    -
    -

    Number

    -
    -

    Number

    -
    -

     

    -
    -

    Lab Tests

    -
    -

     

    -
    -

    Number

    -
    -

    Number

    -
    -

    Done

    -
    -

    Positive

    -
    -

     

    -
    -

     

    -
    -

    Done

    -
    -

    Positive

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HEMATOLOGY (BLOOD)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    SEROLOGY

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HE01. Hb (Non automated)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    SR01.VDRL/ RPR

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HE02. CBC

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    SR02.TPHA

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HE03. Film Comment

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    SR03.Shigella Dysentery

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HE04. ESR

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    SR04. Hepatitis B SAgS

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HE05. Bleeding time

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    SR05. Brucella

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HE06. Prothrombin time

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    SR06. Pregnancy Test (HCG)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HE07. Clotting time

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    SR07. CRAG

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HE08. Sickle Cell

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    SR08. Rheumatoid factor

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HE09. Others

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    SR09. Hep B Core Ag

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    BLOOD TRANSFUSION

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    SR10. Hep C

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    BT01. AHG (Comb’s Test)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    SR11. Hep A

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    BT02. ABO Grouping

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MICROBIOLOGY (CSF, URINE, STOOL, BLOOD, SPUTUM, SWABS)

    -
    -

    BT03. Rhesus Grouping

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MB01. Auramine (FM) for AFBs

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    BT04. Cross Matching

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MB02. ZN for AFBs

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    IMMUNOLOGY

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MB03. Leishman Stain

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    IG01. CD4 test

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MB04. Gram

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    IG02. Viral Load Test

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MB05. India Ink

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    IG03. Hep B Viral Load

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MB06. Urine Microscopy

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    IG04. TB LAM

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MB07. Wet Preps

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MOLECULAR

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MB08. Others

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    ML01. TB Genexpert

    -
    -

     

    -
    -

    MTB+

    -
    -

     

    -
    -

     

    -
    -

    CLINICAL CHEMISTRY

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    (For Genexpert sites only)

    -
    -

     

    -
    -

    RR

    -
    -

     

    -
    -

     

    -
    -

    Renal Profile

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    ML02. Latent TB Infection test

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    RP01. Urea

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    ML03. TB Lamp Test

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    RP02. Calcium

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    PARASITOLOGY(Blood)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    RP03. Potassium

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    PS01. Malaria Microscopy

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    RP04. Sodium

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    PS02. Malaria RDTs

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    RP05. Creatinine

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    PS03. Trypanosoma

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Liver Profile

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    PS04. Microfilaria

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    LP01. ALT

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    PS05. Leishmania

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    LP02. AST

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    PS06. Trichinella

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    LP03. Albumin

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    PS07. Borrellia

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    LP04. Total Protein

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    STOOL MICROSCOPY

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Lipid/Thyroid Profile

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MS01. Entamoeba

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    LC01. Triglycerides

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MS02. Giardia Lumblia

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    LC02. Cholesterol

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MS03. Cryptosporidium

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    LC03. Free T3

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MS04. Isospora

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    LC04. Free T4

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MS05. Cyclospora

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    LC05. TSH

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MS06. Strongyloides

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Other Clinical Chemistry Tests

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MS07. Shistosoma

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CX01. Alkaline Phosphate

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MS08. Taenia

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CX02. Amylase

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MS09. Askaris

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CX03. Glucose

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MS10. Hookworm

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CX04. Total Bilirubin

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MS11. Trichuris

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CX05. Lipase

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MS12. Other parasites

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CX06. AFP

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    MS13 Total Tests Done for Stool Microscopy

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CX07. Others

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -

    Print Version September 2019

    -


    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT

    -
    -

    Page 27

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Lab Tests (Continued)

    -
    -

    Number

    -
    -

    Number

    -
    -

     

    -
    -

    Done

    -
    -

    Positive

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    CULTURE & SENSITIVITY

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
          
    -

     

    -

    CS01. Blood

    -

     

    -

    CS02. Urine

    -

     

    -

    CS03. Stool

    -

     

    -

    CS04. Genital Swabs

    -

     

    -

    CS05. Sputum

    -

     

    -

    10.3 SUMMARY OF HIV TESTS BY PURPOSE

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    Category

    -
    -

     

    -
    -

     

    -
    -

    HCT

    -
    -

    eMTCT

    -
    -

     

    -
    -

    Clinical

    -
    -

     

    -
    -

     

    -
    -

    SMC

    -
    -

    Test for

    -
    -

    Recency

    -
    -

     

    -
    -

    IQC

    -
    -

     

    -
    -

    EQA

    -
    -

     

    -
    -

     

    -
    -

    Total

    -
    -

     

    -
    -

    Incon-

    -
    -

    Repeat

    -
    -

    DNA

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Verifi-

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    clusive

    -
    -

    Confirmed

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Diagnosis

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    cation

    -
    -

    Testing

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Results

    -
    -

    Testers

    -
    -

    Tests

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HP01. Determine

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HP02. Statpak

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HP03. SD Bioline

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HP04. HIV Syphilis DUO

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    HP05. Oraquick (Self Testing)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    10.4 REFERRAL TESTING

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    10.4.1 Volume of Sample Referred

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    No. of

    -
    -

     

    -
    -

    Average

    -
    -

    No. of

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    No. of

    -
    -

     

    -
    -

    Average

    -
    -

    No. of

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Pending

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Pending

    -
    -

    Type of Test

    -
    -

     

    -
    -

    Specimen

    -
    -

    Turn Around

    -
    -

     

    -
    -

     

    -
    -

    Type of Test

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Specimen

    -
    -

     

    -
    -

    Turn Around

    -
    -

     

    -
    -

    Results/

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Results/

    -
    -

     

    -
    -

     

    -
    -

    Referred

    -
    -

    Time (Days)

    -
    -

    Feedback

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Referred

    -
    -

     

    -
    -

    Time (Days)

    -
    -

    Feedback

    -
    -

    Virology

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Microbiology(Continued)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS01. EID

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS15. Neonatal tetanus

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS02. Viral Load for HIV

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS16. Plague

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS03. CD4

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS17. Isolates

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS04. Sickle Cell Disease

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS19. Viral Haemorrhagic

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Confirmation

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Fevers(VHF)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS05. Histology

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS20. Animal Bites

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS06. Polio/or Acute Flaccid

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    (suspected rabies)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Paralysis

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS07. Severe Acute Respi-

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS21. Suspected outbreak

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    ratory Syndrome/Infection

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    samples (EBOLA, Marburg,

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    (SARS/SARI)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    others)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS22. Hepatitis B core Ag

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS08. TB GeneXpert

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS09. DST for Multi Drug

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS23. Hepatitis B Viral Load

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Resistance TB (MDR TB)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS24. Hepatitis C Viral load

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Microbiology

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS10. Typhoid Fever

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Parasitology

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS11. Cholera

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS25. Hemo parasites

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS12. Dysentery

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS26. Intestinal parasites

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS13. Rota Virus

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS27. Tissue parasites

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    VS14. Meningitis

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Totals

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    10.5 Number of Routine Tests that could not be conducted at facility and were referred to hub or other facility

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Routine Test Type

    -
    -

    Reasons for Referrals and Reasons for not conducting tests that are on test menu

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    (specify type test)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Equipment

    -
    -

     

    -
    -

    Reagent

    -
    -

     

    -
    -

     

    -
    -

    Supplies

    -
    -

     

    -
    -

    Power

    -
    -

     

    -
    -

    No testing

    -
    -

    Lack of

    -
    -

     

    -
    -

     

    -
    -

    Confirmatory

    -
    -

    For QA

    -
    -

     

    -
    -

    Others

    -
    -

     

    -
    -

    break down

    -
    -

     

    -
    -

    stock out

    -
    -

     

    -
    -

    stock out

    -
    -

    outage

    -
    -

     

    -
    -

    expertise

    -
    -

    required

    -
    -

     

    -
    -

     

    -
    -

    testing

    -
    -

     

    -
    -

     

    -
    -

    re-testing

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    equipment

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    RT01. CD4

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    RT02. TB

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    RT03. CBC

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    RT04. Chemistry

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    RT05. Microbiology

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    RT06. HIV screening

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    RT07. VDRL

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    RT08. Haematology

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    RT09. Parasitology

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -

    Print Version September 2019

    -


    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT                                                                                                         Page 28

    -


    -

     

    -

    10.6 AMR SURVEILANCE

    -

     

    -

    10.6.1 National Priority AMR

    -

     

    -

     

    -

     

    -

     

    - - - - - - - - - - - - - - - - - - -
    -

    Organisms

    -
    -

    Klebsiella

    -
    -

     

    -
    -

    NP01. No. of Isolates

    -
    -

     

    -
    -

    ANTIBIOTICS

    -
    -

    R  I

    -
    -

     

    -

    NP02. Ampicilin

    -

     

    -

    NP03. Azithromycin

    -

     

    -

    NP04.Amikacin

    -

     

    -

    NP05.Ceftriaxone

    -

     

    -

    NP06.Ceftazidime

    -

     

    -

    NP07.Cefotaxime

    -

     

    -

    NP08.Cefoxitin

    -

     

    -

    NP09.Cefixime

    -

     

    -

    NP10.Cotrimoxazole

    -

     

    -

    NP11.Ciprofloxacin

    -

     

    -

    NP12.Colistin

    -

     

    -

    NP13.Gentamicin

    -

     

    -

    NP14.Imipenem

    -

     

    -

    NP15.Levofloxacin

    -

     

    -

    NP16.Meropenem

    -

     

    -

    NP17.Oxacillin

    -

     

    -

    NP18.Penicillin G

    -

     

    -

    NP19.Vancomycin

    -

     

    -

    NP20. Augmentin

    -

     

    -

    NP21.Chloramphenicol

    -

     

    -

    NP22.Clindamycin

    -

     

    -

    NP23.Erythromycin

    -

     

    -

    NP24.Nalidixic acid

    -

     

    -

    NP25.Nitrofurantoin

    -

     

    -

    NP26.Piperacillin

    -

     

    -

    NP27.Piperacillin/ Tazobactam

    -

     

    -

    NP28.Tetracycline

    -

     

    -

     

    -

    Organisms

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    WHO Priority AMR Organisms

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Other AMR Organisms

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    pneumoniae

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Escherichia coli

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Salmonella spp

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Shigella spp

    -
    -

     

    -
    -

     

    -
    -

    Neisseria

    -
    -

    gonorrhoeae

    -
    -

     

    -
    -

    Staphylococcusaureus

    -
    -

     

    -
    -

    Streptococcus

    -
    -

    pneumoniae

    -
    -

     

    -
    -

    Acinetobacter

    -
    -

    baumannii

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Vibrio cholera.

    -
    -

     

    -
    -

     

    -
    -

    Enterococcus

    -
    -

    spp.

    -
    -

     

    -
    -

    Haemophilus

    -
    -

    influenza.

    -
    -

     

    -
    -

    Neisseria

    -
    -

    meningitides.

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Campylobacter.

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Others

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

     

    -
    -

    S

    -
    -

    R

    -
    -

     

    -
    -

    I

    -
    -

     

    -
    -

    S

    -
    -

    R

    -
    -

     

    -
    -

    I

    -
    -

     

    -
    -

    S

    -
    -

    R

    -
    -

     

    -
    -

    I

    -
    -

     

    -
    -

    S

    -
    -

    R

    -
    -

     

    -
    -

    I

    -
    -

     

    -
    -

    S

    -
    -

    R

    -
    -

     

    -
    -

    I

    -
    -

     

    -
    -

    S

    -
    -

    R

    -
    -

     

    -
    -

    I

    -
    -

     

    -
    -

    S

    -
    -

    R

    -
    -

     

    -
    -

    I

    -
    -

     

    -
    -

    S

    -
    -

    R

    -
    -

     

    -
    -

    I

    -
    -

     

    -
    -

    S

    -
    -

    R

    -
    -

     

    -
    -

    I

    -
    -

     

    -
    -

    S

    -
    -

    R

    -
    -

     

    -
    -

    I

    -
    -

     

    -
    -

    S

    -
    -

    R

    -
    -

     

    -
    -

    I

    -
    -

     

    -
    -

    S

    -
    -

    R

    -
    -

     

    -
    -

    I

    -
    -

     

    -
    -

    S

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -

     

    -

    Print Version September 20019

    -


    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    HMIS 105: HEALTH UNIT OUTPATIENT MONTHLY REPORT

    -
    -

     

    -
    -

    Page 29

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    10.7. LABORATORY SPECIMEN REJECTION

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Sample Type

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Reasons for Specimen Rejection

    -
    -

    Blood

    -
    -

    Stool/

    -
    -

    Sputum

    -
    -

    Pus

    -
    -

    Genital

    -
    -

    Skin

    -
    -

    Others

    -
    -

     

    -
    -

    Rectal   Urine

    -
    -

    Swab

    -
    -

    Swab

    -
    -

    snip

    -
    -

     

    -
    -

     

    -
    -

    Swab

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -

    RS01. Inadequate specimen volume

    -

     

    -

    RS02. Hemolyzed specimen

    -

     

    -

    RS03. Specimen without lab request form

    -

     

    -

    RS04. No test specified on lab request form accompanying

    -

     

    -

    specimen

    -

     

    -

    RS05. Specimen without label or identifier

    -

     

    -

    RS06. Wrong specimen label

    -

     

    -

    RS07. Unclear specimen label

    -

     

    -

    RS08. Wrong specimen container

    -

     

    -

    RS09. Damaged specimen container

    -

     

    -

    RS10. Too old specimen

    -

     

    -

    RS11. Date of specimen collection not specified

    -

     

    -

    RS12. Time of specimen collection not specified

    -

     

    -

    RS13. Specimen type unacceptable for required test

    -

     

    -

    RS14. Other reasons

    -

     

    -

    Totals

    -

     

    -
      -
    1. COMMENTS BY HEALTH FACILITY IN CHARGE:
    2. -
    -

     

    -

    .....................................................................................................................................................................................................................

    -

     

    -

    .....................................................................................................................................................................................................................

    -

     

    -

    .....................................................................................................................................................................................................................

    -

     

    -

    .....................................................................................................................................................................................................................

    -

     

    -

    .....................................................................................................................................................................................................................

    -

     

    -

     

    -

    Date of Report:...................................................

    -

     

    -

    Health Unit In-charge: Name:...............................................................................Title:................................Signature:...............................

    -

     

    -

    Phone No.:........................................................ Email:................................................................................................................................

    -

     

    -

     

    -

    - - - - - - - - - - - - - - -- - - - - - - - - - - (District/HSD use only)- - - - - - - - - - - - - - - - - - - - - -- - - - - -

    -

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    Date received

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Received by 7th of next month

    -
    -

    Yes

    -
    -

    No

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Checked by (signature)

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Date Entered

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

    Name of Data Entrant

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -
    -

     

    -

     

    -

     

    -

     

    -

    COMMENTS BY HSD:................................................................................................................................................................................

    -

     

    -

    .....................................................................................................................................................................................................................

    -

     

    -

    .....................................................................................................................................................................................................................

    -

     

    -

    .....................................................................................................................................................................................................................

    -

     

    -

    __________________________________________________________________________________________________________

    -

     

    -

    Print Version September 2019

    - - - - -
    - -
    - -
    - -
    - -@endsection - -@push('scripts') - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/tuberclosis_and_leprosy_services.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/tuberclosis_and_leprosy_services.blade.php deleted file mode 100755 index 6d1dd935..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/105/tuberclosis_and_leprosy_services.blade.php +++ /dev/null @@ -1,182 +0,0 @@ -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    1.4 Tuberculosis and Leprosy services
    < 5 years5-9 years10-14 years15-19 years20+ years
    MaleFemaleMaleFemaleMaleFemaleMaleFemaleMaleFemale
    TB Screening in OPD
    TP01. Number screened for TB in OPD
    TP02. Number of presumptive TB cases identified from OPD
    TP03. Number of presumptive cases diagnosed with TB from OPD
    Registration in TB Treatment Unit
    TP04. Total New and relapse TB cases registered in TB treatment unit
    TB Preventive Therapy (TPT)
    TP05. Number of contacts of TB patients started on TPT
    TP06. Number of ART clients started on TPT
    Leprosy services
    - TP07. New and relapse leprosy cases registered - - PB (Paucibacillary) -
    MB (MultiBacillary)
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/admissions-and-deaths.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/admissions-and-deaths.blade.php deleted file mode 100644 index 17969695..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/admissions-and-deaths.blade.php +++ /dev/null @@ -1,953 +0,0 @@ -
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @for ($i=0;$i<7;$i++) - - - - @foreach ($table_options[$i]['category_options'] as $category_option) - @if (!empty($category_option['dependent_options'])) - - - - @foreach ($category_option['dependent_options'] as $dependent_option) - - @php - $option_id =$dependent_option['id']; - $option_count =array_filter($diagnoses_data, function ($item) use ($option_id) { - return $item['dependent_option'] == $option_id; - }); - $case_male_under_five = $case_female_under_five = $case_male_over_five = $case_female_over_five = []; - $deaths_male_under_five = $deaths_female_under_five = $deaths_male_over_five = $deaths_female_over_five = []; - - foreach ($option_count as $options){ - foreach ($options['primary'] as $option) { - if($option['gender'] == '1'){ - if ($option['age'] < 5) { - if ($option['outcome_id'] == '5') $deaths_male_under_five[] = $option['patient_id']; - else $case_male_under_five[] = $option['patient_id']; - } else { - if ($option['outcome_id'] == '5') $deaths_male_over_five[] = $option['patient_id']; - else $case_male_over_five[] = $option['patient_id']; - } - }elseif ($option['gender'] == '2') { - if ($option['age'] < 5) { - if ($option['outcome_id'] == '5') $deaths_female_under_five[] = $option['patient_id']; - else $case_female_under_five[] = $option['patient_id']; - } else { - if ($option['outcome_id'] == '5') $deaths_female_over_five[] = $option['patient_id']; - else $case_female_over_five[] = $option['patient_id']; - } - } - } - foreach ($options['other'] as $option){ - if($option['gender'] == '1'){ - if ($option['age'] < 5) { - if ($option['outcome_id'] == '5') $deaths_male_under_five[] = $option['patient_id']; - else $case_male_under_five[] = $option['patient_id']; - } else { - if ($option['outcome_id'] == '5') $deaths_male_over_five[] = $option['patient_id']; - else $case_male_over_five[] = $option['patient_id']; - } - }elseif ($option['gender'] == '2') { - if ($option['age'] < 5) { - if ($option['outcome_id'] == '5') $deaths_female_under_five[] = $option['patient_id']; - else $case_female_under_five[] = $option['patient_id']; - } else { - if ($option['outcome_id'] == '5') $deaths_female_over_five[] = $option['patient_id']; - else $case_female_over_five[] = $option['patient_id']; - } - } - } - } - - - - @endphp - - - - - - - - - - - @endforeach - @else - - @php - $option_id =$category_option['id']; - $option_count =array_filter($diagnoses_data, function ($item) use ($option_id) { - return $item['hmis_category_option'] == $option_id; - }); - $case_male_under_five = $case_female_under_five = $case_male_over_five = $case_female_over_five = []; - $deaths_male_under_five = $deaths_female_under_five = $deaths_male_over_five = $deaths_female_over_five = []; - foreach ($option_count as $options){ - foreach ($options['primary'] as $option) { - if($option['gender'] == '1'){ - if ($option['age'] < 5) { - if ($option['outcome_id'] == '5') $deaths_male_under_five[] = $option['patient_id']; - else $case_male_under_five[] = $option['patient_id']; - } else { - if ($option['outcome_id'] == '5') $deaths_male_over_five[] = $option['patient_id']; - else $case_male_over_five[] = $option['patient_id']; - } - }elseif ($option['gender'] == '2') { - if ($option['age'] < 5) { - if ($option['outcome_id'] == '5') $deaths_female_under_five[] = $option['patient_id']; - else $case_female_under_five[] = $option['patient_id']; - } else { - if ($option['outcome_id'] == '5') $deaths_female_over_five[] = $option['patient_id']; - else $case_female_over_five[] = $option['patient_id']; - } - } - } - foreach ($options['other'] as $option){ - if($option['gender'] == '1'){ - if ($option['age'] < 5) { - if ($option['outcome_id'] == '5') $deaths_male_under_five[] = $option['patient_id']; - else $case_male_under_five[] = $option['patient_id']; - } else { - if ($option['outcome_id'] == '5') $deaths_male_over_five[] = $option['patient_id']; - else $case_male_over_five[] = $option['patient_id']; - } - }elseif ($option['gender'] == '2') { - if ($option['age'] < 5) { - if ($option['outcome_id'] == '5') $deaths_female_under_five[] = $option['patient_id']; - else $case_female_under_five[] = $option['patient_id']; - } else { - if ($option['outcome_id'] == '5') $deaths_female_over_five[] = $option['patient_id']; - else $case_female_over_five[] = $option['patient_id']; - } - } - } - } - @endphp - - - - - - - - - - - - @endif - @endforeach - @endfor - - - - @for ($i=7;$i<22;$i++) - - - - @foreach ($table_options[$i]['category_options'] as $category_option) - @if (!empty($category_option['dependent_options'])) - - @php - $rowspan = count($category_option['dependent_options']) + 1; - @endphp - - - @foreach ( $category_option['dependent_options'] as $dependent_option) - - @php - $option_id =$dependent_option['id']; - $option_count =array_filter($diagnoses_data, function ($item) use ($option_id) { - return $item['dependent_option'] == $option_id; - });//dd($diagnoses_data); - $case_male_under_five = $case_female_under_five = $case_male_over_five = $case_female_over_five = []; - $deaths_male_under_five = $deaths_female_under_five = $deaths_male_over_five = $deaths_female_over_five = []; - foreach ($option_count as $options){ - foreach ($options['primary'] as $option) { - if($option['gender'] == '1'){ - if ($option['age'] < 5) { - if ($option['outcome_id'] == '5') $deaths_male_under_five[] = $option['patient_id']; - else $case_male_under_five[] = $option['patient_id']; - } else { - if ($option['outcome_id'] == '5') $deaths_male_over_five[] = $option['patient_id']; - else $case_male_over_five[] = $option['patient_id']; - } - }elseif ($option['gender'] == '2') { - if ($option['age'] < 5) { - if ($option['outcome_id'] == '5') $deaths_female_under_five[] = $option['patient_id']; - else $case_female_under_five[] = $option['patient_id']; - } else { - if ($option['outcome_id'] == '5') $deaths_female_over_five[] = $option['patient_id']; - else $case_female_over_five[] = $option['patient_id']; - } - } - } - foreach ($options['other'] as $option){ - if($option['gender'] == '1'){ - if ($option['age'] < 5) { - if ($option['outcome_id'] == '5') $deaths_male_under_five[] = $option['patient_id']; - else $case_male_under_five[] = $option['patient_id']; - } else { - if ($option['outcome_id'] == '5') $deaths_male_over_five[] = $option['patient_id']; - else $case_male_over_five[] = $option['patient_id']; - } - }elseif ($option['gender'] == '2') { - if ($option['age'] < 5) { - if ($option['outcome_id'] == '5') $deaths_female_under_five[] = $option['patient_id']; - else $case_female_under_five[] = $option['patient_id']; - } else { - if ($option['outcome_id'] == '5') $deaths_female_over_five[] = $option['patient_id']; - else $case_female_over_five[] = $option['patient_id']; - } - } - } - } - @endphp - - - - - - - - - - - @endforeach - @else - - @php - $option_id =$category_option['id']; - $option_count =array_filter($diagnoses_data, function ($item) use ($option_id) { - return $item['hmis_category_option'] == $option_id; - }); - $case_male_under_five = $case_female_under_five = $case_male_over_five = $case_female_over_five = []; - $deaths_male_under_five = $deaths_female_under_five = $deaths_male_over_five = $deaths_female_over_five = []; - foreach ($option_count as $options){ - foreach ($options['primary'] as $option) { - if($option['gender'] == '1'){ - if ($option['age'] < 5) { - if ($option['outcome_id'] == '5') $deaths_male_under_five[] = $option['patient_id']; - else $case_male_under_five[] = $option['patient_id']; - } else { - if ($option['outcome_id'] == '5') $deaths_male_over_five[] = $option['patient_id']; - else $case_male_over_five[] = $option['patient_id']; - } - }elseif ($option['gender'] == '2') { - if ($option['age'] < 5) { - if ($option['outcome_id'] == '5') $deaths_female_under_five[] = $option['patient_id']; - else $case_female_under_five[] = $option['patient_id']; - } else { - if ($option['outcome_id'] == '5') $deaths_female_over_five[] = $option['patient_id']; - else $case_female_over_five[] = $option['patient_id']; - } - } - } - foreach ($options['other'] as $option){ - if($option['gender'] == '1'){ - if ($option['age'] < 5) { - if ($option['outcome_id'] == '5') $deaths_male_under_five[] = $option['patient_id']; - else $case_male_under_five[] = $option['patient_id']; - } else { - if ($option['outcome_id'] == '5') $deaths_male_over_five[] = $option['patient_id']; - else $case_male_over_five[] = $option['patient_id']; - } - }elseif ($option['gender'] == '2') { - if ($option['age'] < 5) { - if ($option['outcome_id'] == '5') $deaths_female_under_five[] = $option['patient_id']; - else $case_female_under_five[] = $option['patient_id']; - } else { - if ($option['outcome_id'] == '5') $deaths_female_over_five[] = $option['patient_id']; - else $case_female_over_five[] = $option['patient_id']; - } - } - } - } - @endphp - - - - - - - - - - - - @endif - @endforeach - @endfor - -
    6. NUMBER OF ADMISSIONS AND DEATHS BY DIAGNOSIS
    Diagnosis
    CasesDeaths
    Under five yearsFive years and aboveUnder five yearsFive years and above
    MaleFemaleMaleFemaleMaleFemaleMaleFemale
    6.1 Communicable Diseases
    {{ $table_options[$i]['category_number'].'. '.$table_options[$i]['category_name'] }}
    {{ $category_option['number'].'. '.$category_option['name'] }}
    {{ $dependent_option['number'].'. '.$dependent_option['name'] }} - @if (!empty($case_male_under_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_case_male_under_five_drill' ]) }} - - {{ commas(count($case_male_under_five)) }} - {{ Form::close() }} - @else - 0 - @endif - {{-- {{ count($case_male_under_five) }} --}} - - @if (!empty($case_female_under_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_'.'case_female_under_five'.'_drill' ]) }} - - {{ commas(count($case_female_under_five)) }} - {{ Form::close() }} - @else - 0 - @endif - {{-- {{ count($case_female_under_five) }} --}} - - @if (!empty($case_male_over_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_'.'case_male_over_five'.'_drill' ]) }} - - {{ commas(count($case_male_over_five)) }} - {{ Form::close() }} - @else - 0 - @endif - {{-- {{ count($case_male_over_five) }} --}} - - @if (!empty($case_female_over_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_'.'case_female_over_five'.'_drill' ]) }} - - {{ commas(count($case_female_over_five)) }} - {{ Form::close() }} - @else - 0 - @endif - {{-- {{ count($case_female_over_five) }} --}} - - @if (!empty($deaths_male_under_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_'.'deaths_male_under_five'.'_drill' ]) }} - - {{ commas(count($deaths_male_under_five)) }} - {{ Form::close() }} - @else - 0 - @endif - {{-- {{ count($deaths_male_under_five) }} --}} - - @if (!empty($deaths_female_under_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_'.'deaths_female_under_five'.'_drill' ]) }} - - {{ commas(count($deaths_female_under_five)) }} - {{ Form::close() }} - @else - 0 - @endif - {{-- {{ count($deaths_female_under_five) }} --}} - - @if (!empty($deaths_male_over_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_'.'deaths_male_over_five'.'_drill' ]) }} - - {{ commas(count($deaths_male_over_five)) }} - {{ Form::close() }} - @else - 0 - @endif - {{-- {{ count($deaths_male_over_five) }} --}} - - @if (!empty($deaths_female_over_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_'.'deaths_female_over_five'.'_drill' ]) }} - - {{ commas(count($deaths_female_over_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - {{-- {{ count($deaths_female_over_five) }} --}} -
    {{ $category_option['number'].'. '.$category_option['name'] }} - @if (!empty($case_male_under_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_case_male_under_five_drill' ]) }} - - {{ commas(count($case_male_under_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_under_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_female_under_five'.'_drill' ]) }} - - {{ commas(count($case_female_under_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_male_over_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_male_over_five'.'_drill' ]) }} - - {{ commas(count($case_male_over_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_over_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_female_over_five'.'_drill' ]) }} - - {{ commas(count($case_female_over_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($deaths_male_under_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'deaths_male_under_five'.'_drill' ]) }} - - {{ commas(count($deaths_male_under_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($deaths_female_under_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'deaths_female_under_five'.'_drill' ]) }} - - {{ commas(count($deaths_female_under_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($deaths_male_over_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'deaths_male_over_five'.'_drill' ]) }} - - {{ commas(count($deaths_male_over_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($deaths_female_over_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'deaths_female_over_five'.'_drill' ]) }} - - {{ commas(count($deaths_female_over_five)) }} - {{ Form::close() }} - @else - 0 - @endif -
    6.2 Non communicable diseases
    {{ $table_options[$i]['category_number'].'. '.$table_options[$i]['category_name'] }}
    {{ $category_option['number'].'. '.$category_option['name'] }}
    {{ $dependent_option['number'].'. '.$dependent_option['name'] }} - @if (!empty($case_male_under_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_case_male_under_five_drill' ]) }} - - {{ commas(count($case_male_under_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_under_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_'.'case_female_under_five'.'_drill' ]) }} - - {{ commas(count($case_female_under_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_male_over_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_'.'case_male_over_five'.'_drill' ]) }} - - {{ commas(count($case_male_over_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_over_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_'.'case_female_over_five'.'_drill' ]) }} - - {{ commas(count($case_female_over_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($deaths_male_under_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_'.'deaths_male_under_five'.'_drill' ]) }} - - {{ commas(count($deaths_male_under_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($deaths_female_under_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_'.'deaths_female_under_five'.'_drill' ]) }} - - {{ commas(count($deaths_female_under_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($deaths_male_over_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_'.'deaths_male_over_five'.'_drill' ]) }} - - {{ commas(count($deaths_male_over_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($deaths_female_over_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $dependent_option['number'].'_'.'deaths_female_over_five'.'_drill' ]) }} - - {{ commas(count($deaths_female_over_five)) }} - {{ Form::close() }} - @else - 0 - @endif -
    {{ $category_option['number'].'. '.$category_option['name'] }} - @if (!empty($case_male_under_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_case_male_under_five_drill' ]) }} - - {{ commas(count($case_male_under_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_under_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_female_under_five'.'_drill' ]) }} - - {{ commas(count($case_female_under_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_male_over_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_male_over_five'.'_drill' ]) }} - - {{ commas(count($case_male_over_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_over_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_female_over_five'.'_drill' ]) }} - - {{ commas(count($case_female_over_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($deaths_male_under_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'deaths_male_under_five'.'_drill' ]) }} - - {{ commas(count($deaths_male_under_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($deaths_female_under_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'deaths_female_under_five'.'_drill' ]) }} - - {{ commas(count($deaths_female_under_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($deaths_male_over_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'deaths_male_over_five'.'_drill' ]) }} - - {{ commas(count($deaths_male_over_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($deaths_female_over_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'deaths_female_over_five'.'_drill' ]) }} - - {{ commas(count($deaths_female_over_five)) }} - {{ Form::close() }} - @else - 0 - @endif -
    - - - - - - - - - - - - - - - - - - - - - - @for ($i=22;$i<24;$i++) - - - - @foreach ($table_options[$i]['category_options'] as $category_option) - @php - $option_id =$category_option['id']; - $option_count =array_filter($diagnoses_data, function ($item) use ($option_id) { - return $item['hmis_category_option'] == $option_id; - }); - $case_female_under_15 = $case_female_15_19 = $case_female_20_24 = $case_female_25_49 = $case_female_50 = []; - $deaths_female_under_15 = $deaths_female_15_19 = $deaths_female_20_24 = $deaths_female_25_49 = $deaths_female_50 = []; - foreach ($option_count as $options){ - foreach ($options['primary'] as $option) { - if ($option['age'] < 15) { - if ($option['outcome_id'] == '5') $deaths_female_under_15[] = $option['patient_id']; - else $case_female_under_15[] = $option['patient_id']; - } elseif ($option['age'] > 14 && $option['age'] < 20 ) { - if ($option['outcome_id'] == '5') $deaths_female_15_19[] = $option['patient_id']; - else $case_female_15_19[] = $option['patient_id']; - } elseif ($option['age'] > 19 && $option['age'] < 25) { - if ($option['outcome_id'] == '5') $deaths_female_20_24[] = $option['patient_id']; - else $case_female_20_24[] = $option['patient_id']; - } elseif ($option['age'] > 24 && $option['age'] < 50) { - if ($option['outcome_id'] == '5') $deaths_female_25_49[] = $option['patient_id']; - else $case_female_25_49[] = $option['patient_id']; - } else { - if ($option['outcome_id'] == '5') $deaths_female_50[] = $option['patient_id']; - else $case_female_50[] = $option['patient_id']; - } - } - foreach ($options['other'] as $option){ - if ($option['age'] < 15) { - if ($option['outcome_id'] == '5') $deaths_female_under_15[] = $option['patient_id']; - else $case_female_under_15[] = $option['patient_id']; - } elseif ($option['age'] > 14 && $option['age'] < 20 ) { - if ($option['outcome_id'] == '5') $deaths_female_15_19[] = $option['patient_id']; - else $case_female_15_19[] = $option['patient_id']; - } elseif ($option['age'] > 19 && $option['age'] < 25) { - if ($option['outcome_id'] == '5') $deaths_female_20_24[] = $option['patient_id']; - else $case_female_20_24[] = $option['patient_id']; - } elseif ($option['age'] > 24 && $option['age'] < 50) { - if ($option['outcome_id'] == '5') $deaths_female_25_49[] = $option['patient_id']; - else $case_female_25_49[] = $option['patient_id']; - } else { - if ($option['outcome_id'] == '5') $deaths_female_50[] = $option['patient_id']; - else $case_female_50[] = $option['patient_id']; - } - } - } - @endphp - - - - - - - - - - - - - - @endforeach - @endfor - -
    CasesDeaths
    Below 15 Years15-19 Years20-24 Years25-49 Years50+ YearsBelow 15 Years15-19 Years20-24 Years25-49 Years50+ Years
    {{ $table_options[$i]['category_number'].'. '.$table_options[$i]['category_name'] }}
    {{ $category_option['number'].'. '.$category_option['name'] }} - @if (!empty($case_female_under_15)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_female_under_15'.'_drill' ]) }} - - {{ commas(count($case_female_under_15)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_15_19)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_female_15_19'.'_drill' ]) }} - - {{ commas(count($case_female_15_19)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_20_24)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_female_20_24'.'_drill' ]) }} - - {{ commas(count($case_female_20_24)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_25_49)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_female_25_49'.'_drill' ]) }} - - {{ commas(count($case_female_25_49)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_50)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_female_50'.'_drill' ]) }} - - {{ commas(count($case_female_50)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($deaths_female_under_15)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'deaths_female_under_15'.'_drill' ]) }} - - {{ commas(count($deaths_female_under_15)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($deaths_female_15_19)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'deaths_female_15_19'.'_drill' ]) }} - - {{ commas(count($deaths_female_15_19)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($deaths_female_20_24)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'deaths_female_20_24'.'_drill' ]) }} - - {{ commas(count($deaths_female_20_24)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($deaths_female_25_49)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'deaths_female_25_49'.'_drill' ]) }} - - {{ commas(count($deaths_female_25_49)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($deaths_female_50)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'deaths_female_50'.'_drill' ]) }} - - {{ commas(count($deaths_female_50)) }} - {{ Form::close() }} - @else - 0 - @endif -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @foreach ($table_options[count($table_options)-1]['category_options'] as $category_option) - - @php - $option_id =$category_option['id']; - $option_count =array_filter($diagnoses_data, function ($item) use ($option_id) { - return $item['hmis_category_option'] == $option_id; - }); - $case_male_under_five = $case_female_under_five = $case_male_over_five = $case_female_over_five = []; - $deaths_male_under_five = $deaths_female_under_five = $deaths_male_over_five = $deaths_female_over_five = []; - foreach ($option_count as $options){ - foreach ($options['primary'] as $option) { - if($option['gender'] == '1'){ - if ($option['age'] < 5) { - if ($option['outcome_id'] == '5') $deaths_male_under_five[] = $option['patient_id']; - else $case_male_under_five[] = $option['patient_id']; - } else { - if ($option['outcome_id'] == '5') $deaths_male_over_five[] = $option['patient_id']; - else $case_male_over_five[] = $option['patient_id']; - } - }elseif ($option['gender'] == '2') { - if ($option['age'] < 5) { - if ($option['outcome_id'] == '5') $deaths_female_under_five[] = $option['patient_id']; - else $case_female_under_five[] = $option['patient_id']; - } else { - if ($option['outcome_id'] == '5') $deaths_female_over_five[] = $option['patient_id']; - else $case_female_over_five[] = $option['patient_id']; - } - } - } - foreach ($options['other'] as $option){ - if($option['gender'] == '1'){ - if ($option['age'] < 5) { - if ($option['outcome_id'] == '5') $deaths_male_under_five[] = $option['patient_id']; - else $case_male_under_five[] = $option['patient_id']; - } else { - if ($option['outcome_id'] == '5') $deaths_male_over_five[] = $option['patient_id']; - else $case_male_over_five[] = $option['patient_id']; - } - }elseif ($option['gender'] == '2') { - if ($option['age'] < 5) { - if ($option['outcome_id'] == '5') $deaths_female_under_five[] = $option['patient_id']; - else $case_female_under_five[] = $option['patient_id']; - } else { - if ($option['outcome_id'] == '5') $deaths_female_over_five[] = $option['patient_id']; - else $case_female_over_five[] = $option['patient_id']; - } - } - } - } - @endphp - - - - - - - - - - - @endforeach - -
    Diagnosis
    CasesDeaths
    Under five yearsFive years and aboveUnder five yearsFive years and above
    MaleFemaleMaleFemaleMaleFemaleMaleFemale
    {{ $table_options[count($table_options)-1]['category_number'].'. '.$table_options[count($table_options)-1]['category_name'] }}
    {{ $category_option['number'].'. '.$category_option['name'] }} - @if (!empty($case_male_under_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_case_male_under_five_drill' ]) }} - - {{ commas(count($case_male_under_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_under_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_female_under_five'.'_drill' ]) }} - - {{ commas(count($case_female_under_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_male_over_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_male_over_five'.'_drill' ]) }} - - {{ commas(count($case_male_over_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_over_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_female_over_five'.'_drill' ]) }} - - {{ commas(count($case_female_over_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($deaths_male_under_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'deaths_male_under_five'.'_drill' ]) }} - - {{ commas(count($deaths_male_under_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($deaths_female_under_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'deaths_female_under_five'.'_drill' ]) }} - - {{ commas(count($deaths_female_under_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($deaths_male_over_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'deaths_male_over_five'.'_drill' ]) }} - - {{ commas(count($deaths_male_over_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($deaths_female_over_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'deaths_female_over_five'.'_drill' ]) }} - - {{ commas(count($deaths_female_over_five)) }} - {{ Form::close() }} - @else - 0 - @endif -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/census-information.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/census-information.blade.php deleted file mode 100755 index 7120ed0f..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/census-information.blade.php +++ /dev/null @@ -1,180 +0,0 @@ -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - @php - $count = $total_beds = $total_admissions = $total_deaths = $total_days = 0; - $total_patient_ids = $total_dead_ids = []; - @endphp - @foreach ($ward_data as $ward) - - @php - $g = round($ward['days_count'] / $dates['days'],3); - $f = ($ward['admissions'] > 0)? round($ward['days_count'] / $ward['admissions'],3):0; - $bed_occupancy = ($ward['ward_beds'] > 0)? round(($g * 100) / $ward['ward_beds'],3):0; - $total_beds += $ward['ward_beds']; - $total_admissions += $ward['admissions']; - $total_deaths +=$ward['deaths']; - $total_days += $ward['days_count']; - $patient_ids = serialize($ward['patient_ids']); - $dead_ids = serialize($ward['dead_ids']); - if(!empty( $ward['patient_ids'])) foreach( $ward['patient_ids'] as $id) $total_patient_ids[] = $id; - if(!empty( $ward['dead_ids'])) foreach($ward['dead_ids'] as $dead_id) $total_dead_ids[] = $dead_id; - $admission_form_id = $ward['id'].'_drill'; - $deaths_form_id = 'deaths_'.$ward['id'].'_drill'; - @endphp - - - - - - - - - - - @endforeach - - - @php - $total_g = round($total_days / $dates['days'],3); - $total_f = ($total_admissions > 0)? round($total_days / $total_admissions, 3):0; - $total_bed_occupancy = ($total_beds > 0)? round(($total_g * 100) / $total_beds,3):0; - $self_referred_ids = serialize($referral_data['self_referred_ids']); - $referred_from_ids = serialize($referral_data['referred_from_ids']); - $ran_away_ids = serialize($referral_data['ran_away_ids']); - $referred_to_ids = serialize($referral_data['referred_to_ids']); - $total_ids = serialize($total_patient_ids); - @endphp - - - - - - - - - - -
    1. {{ __('hmis_reports.census_info') }}
    (A)(B)(C)(D)(E)(F)(G)(H)
    List of wardsNo. of BedsAdmissionsDeathsPatient daysAverage length of stay = E / CAverage Occupancy = E / No. of days in monthBed Occupancy = G x 100 / B
    {{ $ward['ward_name'] }} {{ commas($ward['ward_beds']) }} - @if (!empty($ward['admissions'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"$admission_form_id"]) }} - - {{ commas($ward['admissions']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($ward['deaths'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"$deaths_form_id"]) }} - - {{ commas($ward['deaths']) }} - {{ Form::close() }} - @else - 0 - @endif - {{ commas($ward['days_count']) }}{{ $f }}{{ $g }}{{ $bed_occupancy }}
    Totals {{ commas($total_beds) }} - @if (!empty($total_admissions)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>'total_admissions_drill']) }} - - {{ commas($total_admissions) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($total_deaths)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>'total_deaths_drill']) }} - - {{ commas($total_deaths) }} - {{ Form::close() }} - @else - 0 - @endif - {{ commas($total_days) }}{{ $total_f }}{{ $total_g }}{{ $total_bed_occupancy }}
    - - - - - - - - - - - - - - - - - - - - - - - -
    2. REFERRALSNUMBERS
    RF01. No. of Inpatients referred from this health unit - @if (!empty($referral_data['referred_from'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>'referred_from_drill']) }} - - {{ commas($referral_data['referred_from']) }} - {{ Form::close() }} - @else - 0 - @endif -
    RF02. No. of Inpatients referred to the health unit - @if (!empty($referral_data['referred_to'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>'referred_to_drill']) }} - - {{ commas($referral_data['referred_to']) }} - {{ Form::close() }} - @else - 0 - @endif -
    RF03. No. of inpatients who have self-referred - @if (!empty($referral_data['self_referred'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>'self_referred_drill']) }} - - {{ commas($referral_data['self_referred']) }} - {{ Form::close() }} - @else - 0 - @endif -
    RF04. No. of inpatients who have run-away - @if (!empty($referral_data['ran_away'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>'ran_away_drill']) }} - - {{ commas($referral_data['ran_away']) }} - {{ Form::close() }} - @else - 0 - @endif -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/drill-down.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/drill-down.blade.php deleted file mode 100644 index 98208f31..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/drill-down.blade.php +++ /dev/null @@ -1,141 +0,0 @@ -@extends('layouts.main') -@push('styles') - - -@endpush - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('hmis_reports.patient_details') }}

    -
    - -
    - -
    - -
    - - - -
    - - - - - - - - - - - - - - - - - id; $diag_ids = $diagnosis_names = []; - if(!empty($diagnoses)){ - $diagnosis =array_filter($diagnoses, function ($item) use ($id) { - return $item['patient_id'] == $id; - }); - foreach ($diagnosis as $diag) foreach ($diag['diagnoses'] as $value)$diag_ids[] = $value; - $patient_diagnoses = \Streamline\Models\Diagnosis::whereIn('id', $diag_ids)->get(['id','name']); - foreach ($patient_diagnoses as $name) $diagnosis_names[] = $name->name; - } - ?> - - - - - - - - - - - - - - -
    #{{ __('hmis_reports.patient_number') }}{{ !empty($diagnoses)? __('hmis_reports.diagnoses'): __('hmis_reports.names') }}{{ __('hmis_reports.date_of_birth') }}{{ __('hmis_reports.gender') }}{{ __('hmis_reports.phone') }}{{ __('hmis_reports.category') }}{{ __('hmis_reports.select') }}
    {{ $numbering }}{{ $patient->number }} - @if (!empty($diagnoses)) - {{ implode(', ', $diagnosis_names) }} - @else - {{ ucwords(strtolower($patient->first_name . ' ' . $patient->last_name)) }} - @endif - {{ Carbon\Carbon::parse($patient->date_of_birth)->format('jS M Y') }}{{ $patient->gender == 1 ? 'Male' : 'Female' }}{{ $patient->phone }}{{ isset($categories[$patient->category_id]) ? $categories[$patient->category_id] : 'NA' }} - @if (Auth::user()->can('view-patients-home')) - {{ __('hmis_reports.select') }} - @endif -
    -
    - -
    - - -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/index.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/index.blade.php deleted file mode 100755 index 60d4262f..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/index.blade.php +++ /dev/null @@ -1,242 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@php - $hospital_info = \Streamline\Models\HospitalInformation::find(1); -@endphp - -@section('content') -
    -
    -

    {{ __('hmis_reports.hmis_108_report') }}

    -
    - -
    -@include('flash::message') - - -
    -

    {{ __('hmis_reports.hmis_108') }}

    -
    - {{ Form::open(['url' => Request::url(), 'method' => 'ANY', 'role' => 'search', 'id' => 'search_form']) }} - -
    - {{ __('hmis_reports.from') }} - - {{ __('hmis_reports.to') }} - - Report type - -
    -
    - -
    - {{ Form::close() }} - - - - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.print_Hmis_108_information', 'target' => "_blank"]) }} - @if ($page == 'census') - - - @elseif ($page == 'procedures') - - - @elseif ($page == 'Utilization of Special Services') - - - @elseif ($page == 'radiology and Imaging') - - - @elseif ($page == 'Admissions and Deaths by Diagnosis') - - - @elseif ($page == 'Mental Health') - - - @elseif ($page == 'others') - - @endif - - -
    - -
    - {{ Form::close() }} -
    - -

    -
    -
    - - - - - - - - - - - - - -
    {{ __('hmis_reports.health_unit') }} : {{ $hospital_info->name }}
    {{ __('hmis_reports.subcounty') }} : {{ get_name($hospital_info->sub_county,'id', 'name', 'subcounties') }}
    {{ __('hmis_reports.parish') }} : {{ get_name($hospital_info->parish,'id', 'name', 'parishes') }}
    {{ __('hmis_reports.district') }} : {{ get_name($hospital_info->district,'id', 'name', 'districts') }}
    -
    -
    - - - - - - - - - - -
    {{ __('hmis_reports.code') }} : {{ $hospital_info->code }}
    {{ __('hmis_reports.level') }} : {{ $hospital_info->level }}
    {{ __('hmis_reports.health_sub_district') }} : {{ $hospital_info->sub_district }}
    -
    -
    - - - - - @if (!empty($dates['last_month'])) - - - - - - - @else - - - - - - - @endif -
    {{ __('hmis_reports.reporting_period') }}
    {{ __('hmis_reports.month') }}:  {{ $dates['last_month'] }}
    {{ __('hmis_reports.year') }}:    {{ $dates['last_year'] }}
    From:  {{ $dates['start'] }}
    To:     {{ $dates['end'] }}
    - -
    -
    - {{--
    --}} -
    - @if ($page == 'census') -
    - @include('reports::hmis_reports.108.census-information') -
    - @elseif ($page == 'procedures') -
    - @include('reports::hmis_reports.108.surgical') -
    - @elseif ($page == 'Utilization of Special Services') -
    - @include('reports::hmis_reports.108.special-services') -
    - @elseif ($page == 'radiology and Imaging') -
    - @include('reports::hmis_reports.108.radiology-imaging') -
    - @elseif ($page == 'Admissions and Deaths by Diagnosis') -
    - @include('reports::hmis_reports.108.admissions-and-deaths') -
    - @elseif ($page == 'Mental Health') -
    - @include('reports::hmis_reports.108.mental-health') -
    - @elseif ($page == 'others') -
    - @include('reports::hmis_reports.108.other-sections') -
    - @endif -
    -
    - - - -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/mental-health.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/mental-health.blade.php deleted file mode 100644 index dafc5be4..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/mental-health.blade.php +++ /dev/null @@ -1,205 +0,0 @@ -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @if (!empty($table_options)) - @foreach ($table_options[count($table_options)-1]['category_options'] as $category_option) - - @php - $option_id =$category_option['id']; - $option_count =array_filter($diagnoses_data, function ($item) use ($option_id) { - return $item['hmis_category_option'] == $option_id; - }); - $case_male_under_five = $case_female_under_five = $case_male_5_9 = $case_female_5_9 = $case_male_10_19 = $case_female_10_19 = $case_male_20_34 = $case_female_20_34 = $case_male_35_59 = $case_female_35_59 = $case_male_60 = $case_female_60 =[]; - foreach ($option_count as $options){ - foreach ($options['primary'] as $option) { - if($option['gender'] == '1'){ - if ($option['age'] < 5) $case_male_under_five[] = $option['patient_id']; - elseif ($option['age'] > 4 && $option['age'] < 10) $case_male_5_9[] = $option['patient_id']; - elseif ($option['age'] > 9 && $option['age'] < 20) $case_male_10_19[] = $option['patient_id']; - elseif ($option['age'] > 19 && $option['age'] < 35) $case_male_20_34[] = $option['patient_id']; - elseif ($option['age'] > 34 && $option['age'] < 60) $case_male_35_59[] = $option['patient_id']; - else $case_male_60[] = $option['patient_id']; - }elseif ($option['gender'] == '2') { - if ($option['age'] < 5) $case_female_under_five[] = $option['patient_id']; - elseif ($option['age'] > 4 && $option['age'] < 10) $case_female_5_9[] = $option['patient_id']; - elseif ($option['age'] > 9 && $option['age'] < 20) $case_female_10_19[] = $option['patient_id']; - elseif ($option['age'] > 19 && $option['age'] < 35) $case_female_20_34[] = $option['patient_id']; - elseif ($option['age'] > 34 && $option['age'] < 60) $case_female_35_59[] = $option['patient_id']; - else $case_female_60[] = $option['patient_id']; - } - } - foreach ($options['other'] as $option){ - if($option['gender'] == '1'){ - if ($option['age'] < 5) $case_male_under_five[] = $option['patient_id']; - elseif ($option['age'] > 4 && $option['age'] < 10) $case_male_5_9[] = $option['patient_id']; - elseif ($option['age'] > 9 && $option['age'] < 20) $case_male_10_19[] = $option['patient_id']; - elseif ($option['age'] > 19 && $option['age'] < 35) $case_male_20_34[] = $option['patient_id']; - elseif ($option['age'] > 34 && $option['age'] < 60) $case_male_35_59[] = $option['patient_id']; - else $case_male_60[] = $option['patient_id']; - }elseif ($option['gender'] == '2') { - if ($option['age'] < 5) $case_female_under_five[] = $option['patient_id']; - elseif ($option['age'] > 4 && $option['age'] < 10) $case_female_5_9[] = $option['patient_id']; - elseif ($option['age'] > 9 && $option['age'] < 20) $case_female_10_19[] = $option['patient_id']; - elseif ($option['age'] > 19 && $option['age'] < 35) $case_female_20_34[] = $option['patient_id']; - elseif ($option['age'] > 34 && $option['age'] < 60) $case_female_35_59[] = $option['patient_id']; - else $case_female_60[] = $option['patient_id']; - } - } - } - @endphp - - - - - - - - - - - - - - - @endforeach - @endif - - -
    7. Mental Health
    Diagnosis
    {{ '<5 Yrs' }}5-9 Yrs10-19 Yrs20-34 Yrs35-59 Yrs60+ Yrs
    MaleFemaleMaleFemaleMaleFemaleMaleFemaleMaleFemaleMaleFemale
    {{ $category_option['number'].'. '.$category_option['name'] }} - @if (!empty($case_male_under_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_case_male_under_five_drill' ]) }} - - {{ commas(count($case_male_under_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_under_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_female_under_five'.'_drill' ]) }} - - {{ commas(count($case_female_under_five)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_male_5_9)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_case_male_5_9_drill' ]) }} - - {{ commas(count($case_male_5_9)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_5_9)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_female_5_9'.'_drill' ]) }} - - {{ commas(count($case_female_5_9)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_male_10_19)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_case_male_10_19_drill' ]) }} - - {{ commas(count($case_male_10_19)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_10_19)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_female_10_19'.'_drill' ]) }} - - {{ commas(count($case_female_10_19)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_male_20_34)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_case_male_20_34_drill' ]) }} - - {{ commas(count($case_male_20_34)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_20_34)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_female_20_34'.'_drill' ]) }} - - {{ commas(count($case_female_20_34)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_male_35_59)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_case_male_35_59_drill' ]) }} - - {{ commas(count($case_male_35_59)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_35_59)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_female_35_59'.'_drill' ]) }} - - {{ commas(count($case_female_35_59)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_male_60)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_case_male_60_drill' ]) }} - - {{ commas(count($case_male_60)) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($case_female_60)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=> $category_option['number'].'_'.'case_female_60'.'_drill' ]) }} - - {{ commas(count($case_female_60)) }} - {{ Form::close() }} - @else - 0 - @endif -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/other-sections.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/other-sections.blade.php deleted file mode 100644 index 78a1d164..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/other-sections.blade.php +++ /dev/null @@ -1,662 +0,0 @@ -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    8. Risk Behaviour
    Risk BehaviourMaleFemale
    10-19yrs20-24yrs>=25yrs10-19yrs20-24yrs>=25yrs
    RB01. Alcohol use - @if (!empty($table_options[0]['alc_male_10_to_19'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"alc_male_10_to_19_drill"]) }} - - {{ count($table_options[0]['alc_male_10_to_19']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[0]['alc_male_20_to_24'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"alc_male_20_to_24_drill"]) }} - - {{ count($table_options[0]['alc_male_20_to_24']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[0]['alc_male_over_25'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"alc_male_over_25_drill"]) }} - - {{ count($table_options[0]['alc_male_over_25']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[0]['alc_female_10_to_19'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"alc_female_10_to_19_drill"]) }} - - {{ count($table_options[0]['alc_female_10_to_19']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[0]['alc_female_20_to_24'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"alc_female_20_to_24_drill"]) }} - - {{ count($table_options[0]['alc_female_20_to_24']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[0]['alc_female_over_25'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"alc_female_over_25_drill"]) }} - - {{ count($table_options[0]['alc_female_over_25']) }} - {{ Form::close() }} - @else - 0 - @endif -
    RB02. Tobacco use - @if (!empty($table_options[0]['tob_male_10_to_19'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"tob_male_10_to_19_drill"]) }} - - {{ count($table_options[0]['tob_male_10_to_19']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[0]['tob_male_20_to_24'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"tob_male_20_to_24_drill"]) }} - - {{ count($table_options[0]['tob_male_20_to_24']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[0]['tob_male_over_25'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"tob_male_over_25_drill"]) }} - - {{ count($table_options[0]['tob_male_over_25']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[0]['tob_female_10_to_19'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"tob_female_10_to_19_drill"]) }} - - {{ count($table_options[0]['tob_female_10_to_19']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[0]['tob_female_20_to_24'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"tob_female_20_to_24_drill"]) }} - - {{ count($table_options[0]['tob_female_20_to_24']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[0]['tob_female_over_25'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"tob_female_over_25_drill"]) }} - - {{ count($table_options[0]['tob_female_over_25']) }} - {{ Form::close() }} - @else - 0 - @endif -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    9. Tuberculosis (TB) Services
    TB Screening0-9 Years10-14 Years15-19 Years20+ YearsTotal
    MaleFemaleMaleFemaleMaleFemaleMaleFemale
    TB01. No. screened for TB in IPD - @if (!empty($table_options[1]['screened']['male_screened_0_9'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"screened_male_screened_0_9_drill"]) }} - - {{ count($table_options[1]['screened']['male_screened_0_9']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[1]['screened']['female_screened_0_9'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"screened_female_screened_0_9_drill"]) }} - - {{ count($table_options[1]['screened']['female_screened_0_9']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[1]['screened']['male_screened_10_14'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"screened_male_screened_10_14_drill"]) }} - - {{ count($table_options[1]['screened']['male_screened_10_14']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[1]['screened']['female_screened_10_14'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"screened_female_screened_10_14_drill"]) }} - - {{ count($table_options[1]['screened']['female_screened_10_14']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[1]['screened']['male_screened_15_19'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"screened_male_screened_15_19_drill"]) }} - - {{ count($table_options[1]['screened']['male_screened_15_19']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[1]['screened']['female_screened_15_19'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"screened_female_screened_15_19_drill"]) }} - - {{ count($table_options[1]['screened']['female_screened_15_19']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[1]['screened']['male_screened_over_20'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"screened_male_screened_over_20_drill"]) }} - - {{ count($table_options[1]['screened']['male_screened_over_20']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[1]['screened']['female_screened_over_20'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"screened_female_screened_over_20_drill"]) }} - - {{ count($table_options[1]['screened']['female_screened_over_20']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[1]['totals']['total_tb_screened'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"total_tb_screened_drill"]) }} - - {{ count($table_options[1]['totals']['total_tb_screened']) }} - {{ Form::close() }} - @else - 0 - @endif -
    TB02. No. of presumptive TB cases identified - @if (!empty($table_options[1]['presumptive']['male_presumptive_0_9'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"presumptive_male_presumptive_0_9_drill"]) }} - - {{ count($table_options[1]['presumptive']['male_presumptive_0_9']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[1]['presumptive']['female_presumptive_0_9'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"presumptive_female_presumptive_0_9_drill"]) }} - - {{ count($table_options[1]['presumptive']['female_presumptive_0_9']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[1]['presumptive']['male_presumptive_10_14'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"presumptive_male_presumptive_10_14_drill"]) }} - - {{ count($table_options[1]['presumptive']['male_presumptive_10_14']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[1]['presumptive']['female_presumptive_10_14'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"presumptive_female_presumptive_10_14_drill"]) }} - - {{ count($table_options[1]['presumptive']['female_presumptive_10_14']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[1]['presumptive']['male_presumptive_15_19'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"presumptive_male_presumptive_15_19_drill"]) }} - - {{ count($table_options[1]['presumptive']['male_presumptive_15_19']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[1]['presumptive']['female_presumptive_15_19'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"presumptive_female_presumptive_15_19_drill"]) }} - - {{ count($table_options[1]['presumptive']['female_presumptive_15_19']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[1]['presumptive']['male_presumptive_over_20'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"presumptive_male_presumptive_over_20_drill"]) }} - - {{ count($table_options[1]['presumptive']['male_presumptive_over_20']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[1]['presumptive']['female_presumptive_over_20'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"presumptive_female_presumptive_over_20_drill"]) }} - - {{ count($table_options[1]['presumptive']['female_presumptive_over_20']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[1]['totals']['total_tb_presumptive'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"total_tb_presumptive_drill"]) }} - - {{ count($table_options[1]['totals']['total_tb_presumptive']) }} - {{ Form::close() }} - @else - 0 - @endif -
    TB03. No. of presumptive cases diagnosed with TB - @if (!empty($table_options[1]['diagnosed']['male_diagnosed_0_9'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"diagnosed_male_diagnosed_0_9_drill"]) }} - - {{ count($table_options[1]['diagnosed']['male_diagnosed_0_9']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[1]['diagnosed']['female_diagnosed_0_9'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"diagnosed_female_diagnosed_0_9_drill"]) }} - - {{ count($table_options[1]['diagnosed']['female_diagnosed_0_9']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[1]['diagnosed']['male_diagnosed_10_14'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"diagnosed_male_diagnosed_10_14_drill"]) }} - - {{ count($table_options[1]['diagnosed']['male_diagnosed_10_14']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[1]['diagnosed']['female_diagnosed_10_14'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"diagnosed_female_diagnosed_10_14_drill"]) }} - - {{ count($table_options[1]['diagnosed']['female_diagnosed_10_14']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[1]['diagnosed']['male_diagnosed_15_19'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"diagnosed_male_diagnosed_15_19_drill"]) }} - - {{ count($table_options[1]['diagnosed']['male_diagnosed_15_19']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[1]['diagnosed']['female_diagnosed_15_19'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"diagnosed_female_diagnosed_15_19_drill"]) }} - - {{ count($table_options[1]['diagnosed']['female_diagnosed_15_19']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[1]['diagnosed']['male_diagnosed_over_20'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"diagnosed_male_diagnosed_over_20_drill"]) }} - - {{ count($table_options[1]['diagnosed']['male_diagnosed_over_20']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[1]['diagnosed']['female_diagnosed_over_20'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"diagnosed_female_diagnosed_over_20_drill"]) }} - - {{ count($table_options[1]['diagnosed']['female_diagnosed_over_20']) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($table_options[1]['totals']['total_tb_diagnosed'])) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"total_tb_diagnosed_drill"]) }} - - {{ count($table_options[1]['totals']['total_tb_diagnosed']) }} - {{ Form::close() }} - @else - 0 - @endif -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    10. Nutrition Inpatient Services
    Data Elements0-5 Months6-23 Months24-59 Months5-9 Years10-19 Years20-24 Years25+ Years
    MFMFMFMFMFMFMF
    Non PregnantPregnant / LactatingNon PregnantPregnant / LactatingNon PregnantPregnant / Lactating
    NA01. No. of SAM admissions In ITC this month;
    NA01a. Total00000000000000000
    NA01ab. New Admissions00000000000000000
    NA02. No. of clients with SAM (with complications) admitted into treatment and discharged as;
    NA02a. Successfully Treated this month00000000000000000
    NA02b. Defaulted from care within this month (absent for 2 days)00000000000000000
    NA02c. Died during treatment within this month00000000000000000
    NA03. No. of re-admissions into ITC this month;
    NA03a. Relapses00000000000000000
    NA03b. Defaulters00000000000000000
    NA04. Total number of days spent in ITC for all clients discharged as cured this month00000000000000000
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/print-census-information.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/print-census-information.blade.php deleted file mode 100644 index bcf4f064..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/print-census-information.blade.php +++ /dev/null @@ -1,258 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Streamline') }} - - - - - - - - - - - -
    - @php - $hospital_info = \Streamline\Models\HospitalInformation::find(1); - @endphp - Responsive image -

    Ministry of Health

    -

    {{ __('hmis_reports.hmis_108') }}

    -
    -
    - - - - - - - - - - - - - -
    {{ __('hmis_reports.health_unit') }} : {{ $hospital_info->name }}
    {{ __('hmis_reports.subcounty') }} : {{ get_name($hospital_info->sub_county,'id', 'name', 'subcounties') }}
    {{ __('hmis_reports.parish') }} : {{ get_name($hospital_info->parish,'id', 'name', 'parishes') }}
    {{ __('hmis_reports.district') }} : {{ get_name($hospital_info->district,'id', 'name', 'districts') }}
    -
    -
    - - - - - - - - - - -
    {{ __('hmis_reports.code') }} : {{ $hospital_info->code }}
    {{ __('hmis_reports.level') }} : {{ $hospital_info->level }}
    {{ __('hmis_reports.health_sub_district') }} : {{ $hospital_info->sub_district }}
    -
    -
    - - - - - @if (!empty($dates['last_month'])) - - - - - - - @else - - - - - - - @endif -
    {{ __('hmis_reports.reporting_period') }}
    {{ __('hmis_reports.month') }}:  {{ $dates['last_month'] }}
    {{ __('hmis_reports.year') }}:    {{ $dates['last_year'] }}
    From:  {{ $dates['start'] }}
    To:     {{ $dates['end'] }}
    - -
    -
    - @if ($page == 'census') -
    -

    {{ __('hmis_reports.hmis_108_report_census') }}

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - @php - $count = $total_beds = $total_admissions = $total_deaths = $total_days = 0; - @endphp - @foreach ($ward_data as $ward) - - @php - $g = round($ward['days_count'] / $dates['days'],3); - $f = ($ward['admissions'] > 0)? round($ward['days_count'] / $ward['admissions'],3):0; - $bed_occupancy = ($ward['ward_beds'] > 0)? round(($g * 100) / $ward['ward_beds'],3):0; - $total_beds += $ward['ward_beds']; - $total_admissions += $ward['admissions']; - $total_deaths +=$ward['deaths']; - $total_days += $ward['days_count']; - @endphp - - - - - - - - - - - @endforeach - - - @php - $total_g = round($total_days / $dates['days'],3); - $total_f = ($total_admissions > 0)? round($total_days / $total_admissions, 3):0; - $total_bed_occupancy = ($total_beds > 0)? round(($total_g * 100) / $total_beds,3):0; - @endphp - - - - - - - - - - -
    1. {{ __('hmis_reports.census_info') }}
    (A)(B)(C)(D)(E)(F)(G)(H)
    List of wardsNo. of BedsAdmissionsDeathsPatient daysAverage length of stay = E / CAverage Occupancy = E / No. of days in monthBed Occupancy = G x 100 / B
    {{ $ward['ward_name'] }} {{ commas($ward['ward_beds']) }}{{ commas($ward['admissions']) }}{{ commas($ward['deaths']) }}{{ commas($ward['days_count']) }}{{ $f }}{{ $g }}{{ $bed_occupancy }}
    Totals {{ commas($total_beds) }}{{ commas($total_admissions) }}{{ commas($total_deaths) }}{{ commas($total_days) }}{{ $total_f }}{{ $total_g }}{{ $total_bed_occupancy }}
    - - - - - - - - - - - - - - - - - - - - - - - -
    2. REFERRALSNUMBERS
    RF01. No. of Inpatients referred from this health unit{{ commas($referral_data['referred_from']) }}
    RF02. No. of Inpatients referred to the health unit{{ commas($referral_data['referred_to']) }}
    RF03. No. of inpatients who have self-referred{{ commas($referral_data['self_referred']) }}
    RF04. No. of inpatients who have run-away{{ commas($referral_data['ran_away']) }}
    - @elseif ($page == 'procedures') -
    -

    {{ __('hmis_reports.hmis_108_report_surgical_procedures') }}

    -
    - @include('reports::hmis_reports.108.surgical') - @elseif ($page == 'Utilization of Special Services') -
    -

    {{ __('hmis_reports.hmis_108_report_special_services') }}

    -
    - @include('reports::hmis_reports.108.special-services') - @elseif ($page == 'radiology and Imaging') -
    -

    {{ __('hmis_reports.hmis_108_report_radiology') }}

    -
    - @include('reports::hmis_reports.108.radiology-imaging') - @elseif ($page == 'Admissions and Deaths by Diagnosis') -
    -

    {{ __('hmis_reports.hmis_108_report_admissions_deaths') }}

    -
    - @include('reports::hmis_reports.108.admissions-and-deaths') - @elseif ($page == 'Mental Health') -
    -

    {{ __('hmis_reports.hmis_108_report_mental_health') }}

    -
    - @include('reports::hmis_reports.108.mental-health') - @elseif ($page == 'others') -
    -

    {{ __('hmis_reports.hmis_108_report_other_sections') }}

    -
    - @include('reports::hmis_reports.108.other-sections') - @endif - - -
    - - - - - - - - - - - - - - \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/radiology-imaging.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/radiology-imaging.blade.php deleted file mode 100644 index 54362667..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/radiology-imaging.blade.php +++ /dev/null @@ -1,105 +0,0 @@ -
    - - - - - - - - - - - - - - - - @foreach ($table_options as $option) - - - - @foreach ($option['category_options'] as $category_option) - - - @php - $option_id =$category_option['id']; - $option_count =array_filter($counted_investigations, function ($item) use ($option_id) { - return $item['option_id'] == $option_id; - }); - $option_counter = $male_under_four = $female_under_four = $male_over_five = $female_over_five = 0; - $patient_ids = $male_under_four_ids = $female_under_four_ids = $male_over_five_ids = $female_over_five_ids = []; - foreach ($option_count as $options) { - $option_counter += $options['count']; - if (!empty($options['male_under_four'])) { - $male_under_four += $options['male_under_four']; - $male_under_four_ids[] = $options['male_under_four_ids']; - } - if (!empty($options['female_under_four'])) { - $female_under_four += $options['female_under_four']; - $female_under_four_ids[] = $options['female_under_four_ids']; - } - if (!empty($options['male_over_five'])) { - $male_over_five += $options['male_over_five']; - $male_over_five_ids[] = $options['male_over_five_ids']; - } - if (!empty($options['female_over_five'])) { - $female_over_five +=$options['female_over_five']; - $female_over_five_ids[] = $options['female_over_five_ids']; - } - foreach ($options['patient_ids'] as $id) $patient_ids[]=$id['patient_id']; - } - $male_under_four_id = serialize($male_under_four_ids); - $female_under_four_id = serialize($female_under_four_ids); - $female_over_five_id = serialize($female_over_five_ids); - $male_over_five_id = serialize($male_over_five_ids); - $male_under_four_form_id = $option_id.'_male_under_four_drill'; - $female_under_four_form_id = $option_id.'_female_under_four_drill'; - $male_over_five_form_id = $option_id.'_male_over_five_drill'; - $female_over_five_form_id = $option_id.'_female_over_five_drill'; - @endphp - - - - - - @endforeach - @endforeach - -
    5. RADIOLOGY AND IMAGING SECTION
    0-4 years5 and over
    MaleFemaleMaleFemale
    {{ $option['category_number'] .'. '.$option['category_name'] }}
    {{ $category_option['number'].'. '.$category_option['name'] }} - @if (!empty($male_under_four)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"$male_under_four_form_id"]) }} - - {{ commas($male_under_four) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($female_under_four)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"$female_under_four_form_id"]) }} - - {{ commas($female_under_four) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($male_over_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"$male_over_five_form_id"]) }} - - {{ commas($male_over_five) }} - {{ Form::close() }} - @else - 0 - @endif - - @if (!empty($female_over_five)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"$female_over_five_form_id"]) }} - - {{ commas($female_over_five) }} - {{ Form::close() }} - @else - 0 - @endif -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/special-services.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/special-services.blade.php deleted file mode 100644 index 34e9837f..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/special-services.blade.php +++ /dev/null @@ -1,323 +0,0 @@ -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    4. UTILIZATION OF SPECIAL SERVICES:
    4a. Blood Transfusion Services Whole bloodPacked cellsPlatelets Fresh Frozen Plasma Cryoprecipitates
    UT01. No of units requested 00000
    UT02. No. of units received00000
    UT03. No. of units transfused00000
    UT04. No. of adverse Blood reactions in the facility00000
    4b. Reasons for transfusion
    Whole bloodPacked cellsPlatelets Fresh Frozen Plasma Cryoprecipitates
    0-4 yrs5+ yrs0-4 yrs5+ yrs0-4 yrs5+ yrs0-4 yrs5+ yrs0-4 yrs5+ yrs
    MFMFMFMFMFMFMFMFMFMF
    RT01. Severe malaria 00000000000000000000
    RT02. Obstetrics 00000000000000000000
    RT03. Gynaecology 00000000000000000000
    RT04. Accidents 00000000000000000000
    RT05. Cancer cases 00000000000000000000
    RT06. Sickle cell Anaemia 00000000000000000000
    RT07. Iron Deficiency Anaemia (IDA)00000000000000000000
    RT08. Other Coagulopathies 00000000000000000000
    RT09. Other surgeries 00000000000000000000
    Total units of blood Transfused 00000000000000000000
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/surgical.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/surgical.blade.php deleted file mode 100644 index c0c6e383..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/108/surgical.blade.php +++ /dev/null @@ -1,255 +0,0 @@ -
    - - - - - - - - - - @foreach ($table_options[0]['category_options'] as $option) - @if ($option['id'] != '5') - - - - - - - @else - - - - - - - - - - - - @endif - @endforeach - - @for ($i=1; $i<3;$i++) - - - - @foreach ($table_options[$i]['category_options'] as $option) - - - - - @endforeach - @endfor - -
    3. SURGICAL PROCEDURES
    3.1 Obstetrics/GynaecologyNUMBERS
    {{ $option['number'].'. '.$option['name'] }} - @php - $option_id =$option['id']; - $option_count =array_filter($counted_procedures, function ($item) use ($option_id) { - return $item['option_id'] == $option_id; - }); - $option_counter = 0; $patient_ids = []; - foreach ($option_count as $options) { - $option_counter += $options['count']; - foreach ($options['patient_ids'] as $id) $patient_ids[]=$id; - } - $ids = serialize($patient_ids); - $form_id = $option_id.'_drill'; - @endphp - @if (!empty($option_counter)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"$form_id"]) }} - - {{ $option_counter }} - {{ Form::close() }} - @else - {{ $option_counter }} - @endif -
    SP05. Hysterectomy
    Total Hysterectomy - @php - $option_id ="SP05a"; - $option_count =array_filter($counted_procedures, function ($item) use ($option_id) { - return $item['chosen_option'] == $option_id; - }); - $option_counter = 0; $patient_ids = []; - foreach ($option_count as $options) { - $option_counter += $options['count']; - foreach ($options['patient_ids'] as $id) $patient_ids[]=$id; - } - $ids = serialize($patient_ids); - $form_id = $option_id.'_drill'; - @endphp - @if (!empty($option_counter)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"$form_id"]) }} - - {{ $option_counter }} - {{ Form::close() }} - @else - {{ $option_counter }} - @endif -
    Sub-Total Hysterectomy - @php - $option_id ="SP05a"; - $option_count =array_filter($counted_procedures, function ($item) use ($option_id) { - return $item['chosen_option'] == $option_id; - }); - $option_counter = 0; $patient_ids = []; - foreach ($option_count as $options) { - $option_counter += $options['count']; - foreach ($options['patient_ids'] as $id) $patient_ids[]=$id; - } - $ids = serialize($patient_ids); - $form_id = $option_id.'_drill'; - @endphp - @if (!empty($option_counter)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"$form_id"]) }} - - {{ $option_counter }} - {{ Form::close() }} - @else - {{ $option_counter }} - @endif -
    {{ $table_options[$i]['category_number'] .'. '.$table_options[$i]['category_name'] }}
    {{ $option['number'].'. '.$option['name'] }} - @php - $option_id =$option['id']; - $option_count =array_filter($counted_procedures, function ($item) use ($option_id) { - return $item['option_id'] == $option_id; - }); - $option_counter = 0; $patient_ids = []; - foreach ($option_count as $options) { - $option_counter += $options['count']; - foreach ($options['patient_ids'] as $id) $patient_ids[]=$id; - } - $ids = serialize($patient_ids); - $form_id = $option_id.'_drill'; - @endphp - @if (!empty($option_counter)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"$form_id"]) }} - - {{ $option_counter }} - {{ Form::close() }} - @else - {{ $option_counter }} - @endif -
    -
    -
    - - - - - - - @foreach ($table_options[3]['category_options'] as $option) - - - - - @endforeach - -
    {{ $table_options[3]['category_number'] .'. '.$table_options[3]['category_name'] }}NUMBERS
    {{ $option['number'].'. '.$option['name'] }} - @php - $option_id =$option['id']; - $option_count =array_filter($counted_procedures, function ($item) use ($option_id) { - return $item['option_id'] == $option_id; - }); - $option_counter = 0; $patient_ids = []; - foreach ($option_count as $options) { - $option_counter += $options['count']; - foreach ($options['patient_ids'] as $id) $patient_ids[]=$id; - } - $form_id = $option_id.'_drill'; - $ids = serialize($patient_ids); - $form_id = $option_id.'_drill'; - @endphp - @if (!empty($option_counter)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"$form_id"]) }} - - {{ $option_counter }} - {{ Form::close() }} - @else - {{ $option_counter }} - @endif -
    -
    -
    -
    - - - @for ($i=4; $i<9;$i++) - - - - - @foreach ($table_options[$i]['category_options'] as $option) - - - - - @endforeach - @endfor - -
    {{ $table_options[$i]['category_number'] .'. '.$table_options[$i]['category_name'] }}NUMBERS
    {{ $option['number'].'. '.$option['name'] }} - @php - $option_id =$option['id']; - $option_count =array_filter($counted_procedures, function ($item) use ($option_id) { - return $item['option_id'] == $option_id; - }); - $option_counter = 0; $patient_ids = []; - foreach ($option_count as $options) { - $option_counter += $options['count']; - foreach ($options['patient_ids'] as $id) $patient_ids[]=$id; - } - $ids = serialize($patient_ids); - $form_id = $option_id.'_drill'; - @endphp - @if (!empty($option_counter)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"$form_id"]) }} - - {{ $option_counter }} - {{ Form::close() }} - @else - {{ $option_counter }} - @endif -
    -
    -
    - - - @for ($i=9; $i< count($table_options);$i++) - - - - - @foreach ($table_options[$i]['category_options'] as $option) - - - - - @endforeach - @endfor - -
    {{ $table_options[$i]['category_number'] .'. '.$table_options[$i]['category_name'] }}NUMBERS
    {{ $option['number'].'. '.$option['name'] }} - @php - $option_id =$option['id']; - $option_count =array_filter($counted_procedures, function ($item) use ($option_id) { - return $item['option_id'] == $option_id; - }); - $option_counter = 0; $patient_ids = []; - foreach ($option_count as $options) { - $option_counter += $options['count']; - foreach ($options['patient_ids'] as $id) $patient_ids[]=$id; - } - $form_id = $option_id.'_drill'; - $ids = serialize($patient_ids); - @endphp - @if (!empty($option_counter)) - {{ Form::open(['method' => 'POST', 'route' => 'hmis_108.drill_down', 'target' => "_blank", 'id'=>"$form_id"]) }} - - {{ $option_counter }} - {{ Form::close() }} - @else - {{ $option_counter }} - @endif -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/anaesthesia_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/anaesthesia_report.blade.php deleted file mode 100755 index 4d0ba027..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/anaesthesia_report.blade.php +++ /dev/null @@ -1,201 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('hmis_reports.anaesthesia_report') }}

    -
    -
    - -
    -
    - -
    - @include('flash::message') -

    {{ __('hmis_reports.anaesthesia_report') }}

    - -
    -
    - {{ Form::open(['url' => 'anaesthesia_report','data-toggle'=>'validator']) }} -
    - {{ Form::label('search_by', __('hmis_reports.date')) }} - {{ Form::select('search_by', ['0'=>__('hmis_reports.last_24_hours'),'1'=>__('hmis_reports.custom_date'),'2'=>__('hmis_reports.custom_range')], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - -
    - {{ Form::label('diagnosis',__('hmis_reports.diagnosis')) }} - {{ Form::select('diagnosis',$diagnoses, '',['class' => 'form-control','id' => 'diagnosis']) }} -
    -
    - {{ Form::label('surgical_operation',__('hmis_reports.surgical_operation')) }} - {{ Form::select('surgical_operation',$procedures,'',['class' => 'form-control', 'id' => 'surgical_operation']) }} -
    -
    - {{ Form::label('anaesthetist',__('hmis_reports.anaesthetist')) }} - {{ Form::select('anaesthetist', $all_users, '',['class' => 'form-control', 'id' => 'anaesthetist']) }} -
    -
    - {{ Form::label('anaesthesia_type',__('hmis_reports.type_of_anaesthesia')) }} - {{ Form::select('anaesthesia_type', $anaesthesia_types, '', ['class' => 'form-control', 'id'=>'anaesthesia_type']) }} -
    -

    - {{ Form::submit(__('hmis_reports.search'),['name' => 'filterBtn','class' => 'btn btn-success']) }} - {{ Form::close() }} -
    -
    - -
    - -
    -
    -
    - - - - - - - - - - - - - - - - - - - @foreach($anaesthesia_records as $anaesthesia) - - - - - - - - @php $surgeon_id = get_name($anaesthesia->surgery_id, 'id', 'surgeon', 'surgeries'); @endphp - - - - - - - - - - - @endforeach - -
    {{ __('hmis_reports.number') }}{{ __('hmis_reports.names') }}{{ __('hmis_reports.diagnoses') }}{{ __('hmis_reports.date') }}{{ __('hmis_reports.operation') }}{{ __('hmis_reports.surgeon') }}{{ __('hmis_reports.anaesthetist') }}{{ __('hmis_reports.type_of_anaesthesia') }}{{ __('hmis_reports.ventilated') }}{{ __('hmis_reports.transfusion') }}{{ __('hmis_reports.alert_comment') }}
    {{ get_name($anaesthesia->patient_id, 'id', 'number', 'patients') }}{{ get_name($anaesthesia->patient_id, 'id', 'first_name', 'patients') }} {{ get_name($anaesthesia->patient_id, 'id', 'last_name', 'patients') }}{{ isset($diagnoses[get_name($anaesthesia->episode_id, 'episode_id', 'primary_diagnosis', 'consultations')]) ? $diagnoses[get_name($anaesthesia->episode_id, 'episode_id', 'primary_diagnosis', 'consultations')] : "" }}{{ streamline_date($anaesthesia->created_at) }}{{ isset($procedures[$anaesthesia->procedure_id]) ? $procedures[$anaesthesia->procedure_id] : "" }}{{ get_name($surgeon_id, 'id', 'first_name', 'users') }} {{ get_name($surgeon_id, 'id', 'last_name', 'users') }}{{ get_name($anaesthesia->anaesthetist, 'id', 'first_name', 'users') }} {{ get_name($anaesthesia->anaesthetist, 'id', 'last_name', 'users') }}{{ isset($anaesthesia_types[$anaesthesia->anaesthesia_type]) ? $anaesthesia_types[$anaesthesia->anaesthesia_type] : "" }}{{ $anaesthesia->blood_given }}{{ $anaesthesia->comments }}{{ __('hmis_reports.view_details') }}
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/bmi_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/bmi_report.blade.php deleted file mode 100755 index 080e6c32..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/bmi_report.blade.php +++ /dev/null @@ -1,632 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -
    {{ __('hmis_reports.bmi_report') }}
    -
    -
    - -
    -
    -
    - @include('flash::message') -

    {{ __('hmis_reports.bmi_report') }}

    - -
    -
    - {{ __('hmis_reports.showing_results_from') }} {{ streamline_date($attendance_from) }} {{ __('hmis_reports.to') }} {{ streamline_date($attendance_to) }} -
    -
    - {{ Form::open(['url' => 'bmi_report','data-toggle'=>'validator']) }} - {{ Form::label('date_from',__('hmis_reports.from')) }} -
    -
    -
    - {{ Form::text('date_from','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-from']) }} - -
    -
    -
    - {{ Form::label('date_to',__('hmis_reports.to')) }} -
    -
    -
    - {{ Form::text('date_to','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-to']) }} - -
    -
    -
    - {{ Form::submit(__('hmis_reports.search'),['name' => 'filterBtn','class' => 'btn btn-success']) }} - {{ Form::close() }} -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    1.3.10 {{ __('hmis_reports.bmi') }}
    {{ __('hmis_reports.male') }}{{ __('hmis_reports.female') }}
    5 - 10 {{ __('hmis_reports.years') }}11 - 18 {{ __('hmis_reports.years') }} >=18 {{ __('hmis_reports.years') }}5 - 10 {{ __('hmis_reports.years') }}11 - 18 {{ __('hmis_reports.years') }} >=18 {{ __('hmis_reports.years') }}
    B1 - {{ __('hmis_reports.severely_underweight') }} (BMI<16) -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    - @csrf() - - - - - - 0): ?> - - -
    -
    B2 - {{ __('hmis_reports.underweight') }} (16<=BMI<18.5) -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    - @csrf() - - - - - - 0): ?> - - -
    -
    B3 - {{ __('hmis_reports.normal') }} (18.5<=BMI<25) -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    - @csrf() - - - - - - 0): ?> - - -
    -
    B4 - {{ __('hmis_reports.overweight') }} (25<=BMI<30) -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    - @csrf() - - - - - - 0): ?> - - -
    -
    B5 - {{ __('hmis_reports.obese') }} (BMI>30) -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    - @csrf() - - - - - - 0): ?> - - -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/bmi_report_details.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/bmi_report_details.blade.php deleted file mode 100755 index 6e94f149..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/bmi_report_details.blade.php +++ /dev/null @@ -1,125 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -
    {{ __('hmis_reports.bmi_report_details') }}
    -
    -
    - -
    -
    -
    - @include('flash::message') -

    {{ $search_criteria }} {{ __('hmis_reports.patients') }} ({{ $age_range }}) {{ __('hmis_reports.from') }} {{ streamline_date($from) }} {{ __('hmis_reports.to') }} {{ streamline_date($to) }}

    - -
    -
    - - - - - - - - - - - - - - @php $counter = 1; @endphp - @if(count($patients_results) > 0) - @foreach($patients_results as $patient) - @php $dob = new Carbon\Carbon($patient->date_of_birth); @endphp - - - - - - - - - - @php $counter++; @endphp - @endforeach - @else - - @endif - -
    {{ __('hmis_reports.patient_number') }}{{ __('hmis_reports.full_names') }}{{ __('hmis_reports.gender') }}{{ __('hmis_reports.age') }}{{ __('hmis_reports.phone') }}
    {{ $counter }}.{{ $patient->number }}{!! insurance_flag($patient->id) !!}{{ $patient->gender == 1 ? "Male" : "Female" }}{{ $dob->diffInYears(Carbon\Carbon::now()) }}yrs{{ $patient->phone }} - {{ __('hmis_reports.select') }} -
    {{ __('hmis_reports.no_records_found') }}
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/cases_this_week.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/cases_this_week.blade.php deleted file mode 100755 index 8ea4041b..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/cases_this_week.blade.php +++ /dev/null @@ -1,193 +0,0 @@ -@php - $cma_id = get_name("Malaria - proven", "name", "id", "diagnoses"); - $cdy_id = get_name("4", "hmis_no_inpatient", "id", "diagnoses"); - $csa_id = get_name("13", "hmis_no_inpatient", "id", "diagnoses"); - $caf_id = get_name("Acute flaccid paralysis (polio)", "name", "id", "diagnoses"); - $cae_id = get_name("14", "hmis_no_inpatient", "id", "diagnoses"); - $cab_id = get_name("2", "hmis_no_inpatient", "id", "diagnoses"); - $cmg_id = get_name("08", "hmis_no_inpatient", "id", "diagnoses"); - - $cch_id = get_name("3", "hmis_no_inpatient", "id", "diagnoses"); - $cgw_id = get_name("5", "hmis_no_inpatient", "id", "diagnoses"); - $cme_id = get_name("Measles", "name", "id", "diagnoses"); - $cnt_id = get_name("Tetanus (neonatal 0-28 days age)", "name", "id", "diagnoses"); - $cvf_id = get_name("Viral Haemorrhagic Fever (e.g. Ebola)", "name", "id", "diagnoses"); - $cpl_id = get_name("10", "hmis_no_inpatient", "id", "diagnoses"); - $ctf_id = get_name("15", "hmis_no_inpatient", "id", "diagnoses"); - $cyf_id = get_name("11", "hmis_no_inpatient", "id", "diagnoses"); - $ctb_id = get_name("16", "hmis_no_inpatient", "id", "diagnoses"); - - $cma_query = "SELECT * FROM consultations WHERE primary_diagnosis = '{$cma_id}' AND created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}'"; - $cdy_query = "SELECT * FROM consultations WHERE primary_diagnosis = '{$cdy_id}' AND created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}'"; - $csa_query = "SELECT * FROM consultations WHERE primary_diagnosis = '{$csa_id}' AND created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}'"; - $caf_query = "SELECT * FROM consultations WHERE primary_diagnosis = '{$caf_id}' AND created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}'"; - $cae_query = "SELECT * FROM consultations WHERE primary_diagnosis = '{$cae_id}' AND created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}'"; - $cab_query = "SELECT * FROM consultations WHERE primary_diagnosis = '{$cab_id}' AND created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}'"; - $cmg_query = "SELECT * FROM consultations WHERE primary_diagnosis = '{$cmg_id}' AND created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}'"; - $cch_query = "SELECT * FROM consultations WHERE primary_diagnosis = '{$cch_id}' AND created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}'"; - $cgw_query = "SELECT * FROM consultations WHERE primary_diagnosis = '{$cgw_id}' AND created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}'"; - $cme_query = "SELECT * FROM consultations WHERE primary_diagnosis = '{$cme_id}' AND created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}'"; - $cnt_query = "SELECT * FROM consultations WHERE primary_diagnosis = '{$cnt_id}' AND created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}'"; - $cvf_query = "SELECT * FROM consultations WHERE primary_diagnosis = '{$cvf_id}' AND created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}'"; - $cpl_query = "SELECT * FROM consultations WHERE primary_diagnosis = '{$cpl_id}' AND created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}'"; - $ctf_query = "SELECT * FROM consultations WHERE primary_diagnosis = '{$ctf_id}' AND created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}'"; - $cyf_query = "SELECT * FROM consultations WHERE primary_diagnosis = '{$cyf_id}' AND created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}'"; - $ctb_query = "SELECT * FROM consultations WHERE primary_diagnosis = '{$ctb_id}' AND created_at BETWEEN '{$attendance_from}' AND '{$attendance_to}'"; - - $cma = DB::select($cma_query); - $cma_row_count = count($cma); - - $cdy = DB::select($cdy_query); - $cdy_row_count = count($cdy); - - $csa = DB::select($csa_query); - $csa_row_count = count($csa); - - $caf = DB::select($caf_query); - $caf_row_count = count($caf); - - $cae = DB::select($cae_query); - $cae_row_count = count($cae); - - $cab = DB::select($cab_query); - $cab_row_count = count($cab); - - $cmg = DB::select($cmg_query); - $cmg_row_count = count($cmg); - - $cch = DB::select($cch_query); - $cch_row_count = count($cch); - - $cgw = DB::select($cgw_query); - $cgw_row_count = count($cgw); - - $cme = DB::select($cme_query); - $cme_row_count = count($cme); - - $cnt = DB::select($cnt_query); - $cnt_row_count = count($cnt); - - $cvf = DB::select($cvf_query); - $cvf_row_count = count($cvf); - - $cpl = DB::select($cpl_query); - $cpl_row_count=count($cpl); - - $ctf = DB::select($ctf_query); - $ctf_row_count = count($ctf); - - $cyf = DB::select($cyf_query); - $cyf_row_count = count($cyf); - - $ctb = DB::select($ctb_query); - $ctb_row_count = count($ctb); - session()->put(['attendance_from' => $attendance_from]); - session()->put(['attendance_to' => $attendance_to]); -@endphp - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('hmis_reports.cases') }}{{ __('hmis_reports.code') }}{{ __('hmis_reports.cases_this_week') }}
    1{{ __('hmis_reports.malaria') }}MA
    2{{ __('hmis_reports.dysentery') }}DY
    3{{ __('hmis_reports.sari') }}SA
    4{{ __('hmis_reports.acute_flaccid') }}AF
    5{{ __('hmis_reports.adverse_immun') }}AE
    6{{ __('hmis_reports.animal_bites') }}AB
    7{{ __('hmis_reports.bacteria_meningitis') }}MG
    8{{ __('hmis_reports.cholera') }}CH
    9{{ __('hmis_reports.guinea_worm') }}GW
    10{{ __('hmis_reports.measles') }}ME
    11{{ __('hmis_reports.neonatal_tetanus') }}NT
    12{{ __('hmis_reports.other_viral_fevers') }}VF
    13{{ __('hmis_reports.plague') }}PL
    14{{ __('hmis_reports.typhoid_fever') }}TF
    15{{ __('hmis_reports.yellow_fever') }}YF
    16{{ __('hmis_reports.presumptive_tb') }}TB
    \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/days_drugs_out_of_stock.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/days_drugs_out_of_stock.blade.php deleted file mode 100755 index 125f4efb..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/days_drugs_out_of_stock.blade.php +++ /dev/null @@ -1,93 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_reports.days_drugs_outta_stock') }}

    -
    -
    - -
    -
    - -
    - {{ Form::open(['route' => 'memorised_reports.days_drugs_out_of_stock' , 'data-toggle' => 'validator']) }} -
    -
    -
    -
    - {{ Form::label('start_date',__('hmis_reports.from')) }} - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'start_date']) }} -
    -
    -
    -
    - {{ Form::label('end_date',__('hmis_reports.to')) }} - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'end_date']) }} -
    -
    -
    -
    - {{ Form::button(__('hmis_reports.search'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    - {{ Form::close() }} -
    - -

    {{ __('hmis_reports.showing_results_from') }} {{ streamline_date($start_date) }} {{ __('hmis_reports.to') }} {{ streamline_date($end_date) }}

    - -
    - - - - - - - - - @if(count($selected_drugs) > 0) - @foreach($selected_drugs as $drug_id => $days) - - - - - @endforeach - @else - - - - @endif - -
    {{ __('hmis_reports.drug_name') }}{{ __('hmis_reports.num_days') }}
    {{ get_name($drug_id, 'id', 'name', 'drugs') }} {{ $days }}
    -

    {{ __('hmis_reports.no_drugs_outta_period') }}

    -
    -
    -
    - -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/deaths_this_week.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/deaths_this_week.blade.php deleted file mode 100755 index c87344eb..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/deaths_this_week.blade.php +++ /dev/null @@ -1,162 +0,0 @@ -@php - $dma_id = get_name("Malaria - proven", "name", "id", "diagnoses"); - $ddy_id = get_name("4", "hmis_no_inpatient", "id", "diagnoses"); - $dsa_id = get_name("13", "hmis_no_inpatient", "id", "diagnoses"); - $daf_id = get_name("Acute flaccid paralysis (polio)", "name", "id", "diagnoses"); - $dae_id = get_name("14", "hmis_no_inpatient", "id", "diagnoses"); - $dab_id = get_name("2", "hmis_no_inpatient", "id", "diagnoses"); - $dmg_id = get_name("08", "hmis_no_inpatient", "id", "diagnoses"); - $dch_id = get_name("3", "hmis_no_inpatient", "id", "diagnoses"); - $dgw_id = get_name("5", "hmis_no_inpatient", "id", "diagnoses"); - $dme_id = get_name("Measles", "name", "id", "diagnoses"); - $dnt_id = get_name("Tetanus (neonatal 0-28 days age)", "name", "id", "diagnoses"); - $dvf_id = get_name("Viral Haemorrhagic Fever (e.g. Ebola)", "name", "id", "diagnoses"); - $dpl_id = get_name("10", "hmis_no_inpatient", "id", "diagnoses"); - $dtf_id = get_name("15", "hmis_no_inpatient", "id", "diagnoses"); - $dyf_id = get_name("11", "hmis_no_inpatient", "id", "diagnoses"); - $dtb_id = get_name("16", "hmis_no_inpatient", "id", "diagnoses"); - $dmd = 0; //_id = get_name("Maternal", "name", "id", "diagnosis"); - $dpd = 0; //_id = get_name("Perinatal", "name", "id", "diagnosis"); - - // outcome_id = 5 means died - $dma_row_count = DB::table('consultations')->where('primary_diagnosis', $dma_id)->where('outcome_id', 5)->whereBetween('created_at', [$attendance_from, $attendance_to])->count(); - - $ddy_row_count = DB::table('consultations')->where('primary_diagnosis', $ddy_id)->where('outcome_id', 5)->whereBetween('created_at', [$attendance_from, $attendance_to])->count(); - - $dsa_row_count = DB::table('consultations')->where('primary_diagnosis', $dsa_id)->where('outcome_id', 5)->whereBetween('created_at', [$attendance_from, $attendance_to])->count(); - - $daf_row_count = DB::table('consultations')->where('primary_diagnosis', $daf_id)->where('outcome_id', 5)->whereBetween('created_at', [$attendance_from, $attendance_to])->count(); - - $dae_row_count = DB::table('consultations')->where('primary_diagnosis', $dae_id)->where('outcome_id', 5)->whereBetween('created_at', [$attendance_from, $attendance_to])->count(); - - $dab_row_count = DB::table('consultations')->where('primary_diagnosis', $dab_id)->where('outcome_id', 5)->whereBetween('created_at', [$attendance_from, $attendance_to])->count(); - - $dmg_row_count = DB::table('consultations')->where('primary_diagnosis', $dmg_id)->where('outcome_id', 5)->whereBetween('created_at', [$attendance_from, $attendance_to])->count(); - - $dch_row_count = DB::table('consultations')->where('primary_diagnosis', $dch_id)->where('outcome_id', 5)->whereBetween('created_at', [$attendance_from, $attendance_to])->count(); - - $dgw_row_count = DB::table('consultations')->where('primary_diagnosis', $dgw_id)->where('outcome_id', 5)->whereBetween('created_at', [$attendance_from, $attendance_to])->count(); - - $dme_row_count = DB::table('consultations')->where('primary_diagnosis', $dme_id)->where('outcome_id', 5)->whereBetween('created_at', [$attendance_from, $attendance_to])->count(); - - $dnt_row_count = DB::table('consultations')->where('primary_diagnosis', $dnt_id)->where('outcome_id', 5)->whereBetween('created_at', [$attendance_from, $attendance_to])->count(); - - $dvf_row_count = DB::table('consultations')->where('primary_diagnosis', $dvf_id)->where('outcome_id', 5)->whereBetween('created_at', [$attendance_from, $attendance_to])->count(); - - $dpl_row_count = DB::table('consultations')->where('primary_diagnosis', $dpl_id)->where('outcome_id', 5)->whereBetween('created_at', [$attendance_from, $attendance_to])->count(); - - $dtf_row_count = DB::table('consultations')->where('primary_diagnosis', $dtf_id)->where('outcome_id', 5)->whereBetween('created_at', [$attendance_from, $attendance_to])->count(); - - $dyf_row_count = DB::table('consultations')->where('primary_diagnosis', $dyf_id)->where('outcome_id', 5)->whereBetween('created_at', [$attendance_from, $attendance_to])->count(); - - $dtb_row_count = DB::table('consultations')->where('primary_diagnosis', $dtb_id)->where('outcome_id', 5)->whereBetween('created_at', [$attendance_from, $attendance_to])->count(); -@endphp - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('hmis_reports.deaths') }}{{ __('hmis_reports.code') }}{{ __('hmis_reports.deaths_this_week') }}
    1{{ __('hmis_reports.malaria') }}MA
    2{{ __('hmis_reports.dysentery') }}DY
    3{{ __('hmis_reports.sari') }}SA
    4{{ __('hmis_reports.acute_flaccid') }}AF
    5{{ __('hmis_reports.adverse_immun') }}AE
    6{{ __('hmis_reports.animal_bites') }}AB
    7{{ __('hmis_reports.bacteria_meningitis') }}MG
    8{{ __('hmis_reports.cholera') }}CH
    9{{ __('hmis_reports.guinea_worm') }}GW
    10{{ __('hmis_reports.measles') }}ME
    11{{ __('hmis_reports.neonatal_tetanus') }}NT
    12{{ __('hmis_reports.other_viral_fevers') }}VF
    13{{ __('hmis_reports.plague') }}PL
    14{{ __('hmis_reports.typhoid_fever') }}TF
    15{{ __('hmis_reports.yellow_fever') }}YF
    16{{ __('hmis_reports.presumptive_tb') }}TB
    \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/diagnosis_drill_down.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/diagnosis_drill_down.blade.php deleted file mode 100755 index 8e0f8da5..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/diagnosis_drill_down.blade.php +++ /dev/null @@ -1,123 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_reports.diagnosis_report_details') }}

    -
    -
    - -
    -
    - -
    -

    Diagnosis: {{ get_name($diagnosis_id, 'id', 'name', 'diagnoses') }}

    - -
    - - - - - - - - - - - - - - - - - @foreach($patients as $value) - - - - - - - - - - - - - @endforeach - -
    {{ __('hmis_reports.patient_number') }}{{ __('hmis_reports.full_names') }}{{ __('hmis_reports.gender') }}{{ __('hmis_reports.age') }}{{ __('patients.phone_number') }}{{ __('hmis_reports.next_of_kin') }}{{ __('hmis_reports.custom_field') }}{{ __('hmis_reports.date') }}
    - {{ $value["patient_number"] }} - - {!! $value["patient_name"] !!} - - {{ $value["gender"] }} - - {{ get_patients_age($value["date_of_birth"]) }} - {{ $value["phone"] }}{{ $value["next_of_kin"] }} ({{ $value["phone_of_next_of_kin"] }}){{ $custom_field?? '' }} - {{ streamline_date_time($value["created_at"]) }} - - {{ __('hmis_reports.select') }} - {{ __('patients.details') }}
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/diagnosis_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/diagnosis_report.blade.php deleted file mode 100755 index 66f0f001..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/diagnosis_report.blade.php +++ /dev/null @@ -1,101 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_reports.diagnosis_report') }}

    -
    -
    - -
    -
    - -
    - -

    {{ __('hmis_reports.search_criteria') }} : {{ $criteria }}    {{ __('hmis_reports.clear_search') }}

    - -
    - - - - - - - - - - - @for($i = 0; $i < count($diagnosis_array); $i++) - - - - - - - @endfor - -
    {{ __('hmis_reports.diagnosis_name') }}{{ __('hmis_reports.female') }}{{ __('hmis_reports.male') }}{{ __('hmis_reports.totals') }}
    {{ get_name($diagnosis_array[$i], 'id', 'name', 'diagnoses') }} - {{ isset($female_totals_array[$i]) ? $female_totals_array[$i] : 0 }} - @php $femalesArray = isset($female_totals_array[$i]) ? $female_totals_array[$i] : 0; @endphp - - {{ isset($male_totals_array[$i]) ? $male_totals_array[$i] : 0 }} - @php $malesArray = isset($male_totals_array[$i]) ? $male_totals_array[$i] : 0; @endphp - - {{ $femalesArray + $malesArray }} -
    -
    - -
    - - - - - - - - - - - - - - -
    {{ __('hmis_reports.female') }}{{ __('hmis_reports.male') }}{{ __('hmis_reports.totals') }}
    {{ __('hmis_reports.totals') }}{{ $female_totals }}{{ $male_totals }}{{ $male_totals + $female_totals }}
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/disease_prevalence_charts.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/disease_prevalence_charts.blade.php deleted file mode 100755 index c011fea7..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/disease_prevalence_charts.blade.php +++ /dev/null @@ -1,126 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_reports.disease_prevalence') }}

    -
    -
    - -
    -
    - -
    -
    - {{ Form::open(['route' => 'disease_prevalence_charts']) }} -
    -
    - {{ Form::label('diagnosis_id',__('hmis_reports.select_diagnosis')) }} - {{ Form::select('diagnosis_id',$diagnoses,'',['class'=>'form-control compulsory', 'id' => 'diagnosis']) }} -
    -
    -
    -
    - {{ Form::label('start_date',__('hmis_reports.from')) }} -
    - {{ Form::text('start_date','',['class' => 'form-control', 'required','readonly','id'=>'datepicker-from']) }} - -
    -
    -
    -
    -
    - {{ Form::label('end_date',__('hmis_reports.to')) }} -
    - {{ Form::text('end_date','',['class' => 'form-control', 'required','readonly','id'=>'datepicker-to']) }} - -
    -
    -
    -
    - {{ Form::button(__('hmis_reports.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('hmis_reports.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} -
    - {{ Form::close() }} -
    -
    - -
    - @include('flash::message') -

    {{ __('hmis_reports.disease_prevalence_time') }}

    - -
    - -
    -
    - @if(count($month_array) > 0) - - @else -

    {{ __('hmis_reports.no_records_found') }}

    - @endif -
    -
    -
    -@endsection - -@push('scripts') - - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/doctors_performance_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/doctors_performance_report.blade.php deleted file mode 100644 index 8bd0e911..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/doctors_performance_report.blade.php +++ /dev/null @@ -1,120 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    Stre@mline Reports

    -
    -
    - -
    -
    - -
    - @include('flash::message') - -

    Search criteria : {{ $criteria }}    Clear search

    - -
    - -

    Doctors' Performance Report

    - -
    - - - - - - - - - - - - - {{ csrf_field() }} - - {{ Form::hidden('doctor_id', 0, ['id' => 'doctor_id']) }} - {{ Form::hidden('report_type', 0, ['id' => 'report_type']) }} - {{ Form::hidden('start_date', $start_date) }} - {{ Form::hidden('end_date', $end_date) }} - - - - @foreach($doctors as $doctor) - - - - - - - - @endforeach - -
    Doctor NamePatients SeenInvestigation Requests MadePrescriptions MadeAdmissions Made
    {{ $doctor['name'] }} - @if($doctor['patients_seen'] > 0) - {{ $doctor['patients_seen'] }} - @else - {{ $doctor['patients_seen'] }} - @endif - - @if($doctor['investigations'] > 0) - {{ $doctor['investigations'] }} - @else - {{ $doctor['investigations'] }} - @endif - - @if($doctor['prescriptions'] > 0) - {{ $doctor['prescriptions'] }} - @else - {{ $doctor['prescriptions'] }} - @endif - - @if($doctor['admissions'] > 0) - {{ $doctor['admissions'] }} - @else - {{ $doctor['admissions'] }} - @endif -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush - - - diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/doctors_performance_report_details.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/doctors_performance_report_details.blade.php deleted file mode 100644 index c3e1b6f7..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/doctors_performance_report_details.blade.php +++ /dev/null @@ -1,199 +0,0 @@ -@extends('layouts.main') - -@push('styles') -@endpush - -@section('content') -
    -
    -

    Stre@mline Reports

    -
    -
    - -
    -
    - -
    -

    Search criteria : {{ $criteria }}

    - -
    - -

    Doctors' Performance Report Details For {{ get_full_name($doctor_id, 'id', 'first_name', 'last_name', 'users') }}

    - - @php $counter = 1; @endphp - - @if($report_type == 1) -

    Patients Seen

    -
    - - - - - - - @if(Auth::user()->can('view-patient-episode-primary-diagnoses'))@endif - - @if(Auth::user()->can('view-patients-home'))@endif - - - - @foreach($patients as $patient) - - - - - @if(Auth::user()->can('view-patient-episode-primary-diagnoses'))@endif - - @if(Auth::user()->can('view-patients-home'))@endif - - @endforeach - -
    #Patient NameClinic NameDiagnosisConsultation DatePatient Details
    {{ $counter }} @php $counter++; @endphp{{ $patient['name'] }} ({{ $patient['number'] }} - {{ $patient['patient_category'] }}){{ $patient['clinic'] }}{{ $patient['diagnosis'] }}{{ $patient['date'] }}Patient Details
    -
    - @elseif($report_type == 2) -

    Investigation Requests Made

    -
    - - - - - - - @if(Auth::user()->can('view-patient-episode-primary-diagnoses'))@endif - - - @if(Auth::user()->can('view-patients-home'))@endif - - - - @foreach($investigation_orders as $patient) - - - - - @if(Auth::user()->can('view-patient-episode-primary-diagnoses'))@endif - - - @if(Auth::user()->can('view-patients-home'))@endif - - @endforeach - -
    #Patient NameClinic NameDiagnosisConsultation DateInvestigations OrderedPatient Details
    {{ $counter }} @php $counter++; @endphp{{ $patient['name'] }} ({{ $patient['number'] }} - {{ $patient['patient_category'] }}){{ $patient['clinic'] }}{{ $patient['diagnosis'] }}{{ $patient['date'] }} - - - - - - - @foreach($patient['investigations'] as $pat_inv) - - - - - - @endforeach -
    InvestigationDate Ordered
    -
      - @foreach(explode(',', $pat_inv->investigation_id) as $investigation) -
    1. {{ $investigations[$investigation] }}
    2. - @endforeach -
    -
    {{ streamline_date_time($pat_inv->created_at) }} - @if($pat_inv->investigation_status == 1) - Results Available - @endif -
    -
    Patient Details
    -
    - @elseif($report_type == 3) -

    Prescriptions Made

    -
    - - - - - - - @if(Auth::user()->can('view-patient-episode-primary-diagnoses'))@endif - - - @if(Auth::user()->can('view-patients-home'))@endif - - - - @foreach($prescriptions as $patient) - - - - - @if(Auth::user()->can('view-patient-episode-primary-diagnoses'))@endif - - - @if(Auth::user()->can('view-patients-home'))@endif - - @endforeach - -
    #Patient NameClinic NameDiagnosisConsultation DateDrugs PrescribedPatient Details
    {{ $counter }} @php $counter++; @endphp{{ $patient['name'] }} ({{ $patient['number'] }} - {{ $patient['patient_category'] }}){{ $patient['clinic'] }}{{ $patient['diagnosis'] }}{{ $patient['date'] }} - - - - - - @foreach($patient['treatments'] as $prescription) - - - - - @endforeach -
    DrugsDate Prescribed
    -
      - @foreach(explode(',', $prescription->drugs) as $drug) -
    1. {{ $drugs[$drug] }}
    2. - @endforeach -
    -
    {{ streamline_date_time($prescription->created_at) }}
    -
    Patient Details
    -
    - @elseif($report_type == 4) -

    Admissions Made

    -
    - - - - - - - @if(Auth::user()->can('view-patient-episode-primary-diagnoses'))@endif - - - @if(Auth::user()->can('view-patients-home'))@endif - - - - @foreach($admitted_patients as $patient) - - - - - @if(Auth::user()->can('view-patient-episode-primary-diagnoses'))@endif - - - @if(Auth::user()->can('view-patients-home'))@endif - - @endforeach - -
    #Patient NameClinic NameDiagnosisConsultation DateWardPatient Details
    {{ $counter }} @php $counter++; @endphp{{ $patient['name'] }} ({{ $patient['number'] }} - {{ $patient['patient_category'] }}){{ $patient['clinic'] }}{{ $patient['diagnosis'] }}{{ $patient['date'] }}{{ $patient['ward'] }}Patient Details
    -
    - @endif -
    -@endsection - -@push('scripts') - -@endpush - - - diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/drug_consumption_analysis.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/drug_consumption_analysis.blade.php deleted file mode 100755 index 6f949a8d..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/drug_consumption_analysis.blade.php +++ /dev/null @@ -1,103 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('hmis_reports.drug_consumption_analysis') }}

    -
    -
    - -
    -
    - -
    - @include('flash::message') -

    {{ __('hmis_reports.drug_consumption_analysis') }}

    - -
    - -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - @for($i = 0; $i < count($drugs_array); $i++) - @php - $total_consumption = $january[$i] + $february[$i] + $march[$i] + $april[$i] + - $may[$i] + $june[$i] + $july[$i] + $august[$i] + $september[$i] + - $october[$i] + $november[$i] + $december[$i]; - @endphp - - - - - - - - - - - - - - - - - @endfor - -
    {{ __('hmis_reports.drug_name') }}JanFebMarAprMayJuneJulyAugSeptOctNovDec{{ __('hmis_reports.total') }}
    {{ get_name($drugs_array[$i], 'id', 'name', 'drugs') }}{{ $january[$i] }}{{ $february[$i] }}{{ $march[$i] }}{{ $april[$i] }}{{ $may[$i] }}{{ $june[$i] }}{{ $july[$i] }}{{ $august[$i] }}{{ $september[$i] }}{{ $october[$i] }}{{ $november[$i] }}{{ $december[$i] }}{{ $total_consumption }}
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/drug_consumption_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/drug_consumption_report.blade.php deleted file mode 100755 index 8f171727..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/drug_consumption_report.blade.php +++ /dev/null @@ -1,153 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('hmis_reports.drug_consumption_report') }}

    -
    -
    - -
    -
    - -
    - @include('flash::message') -

    {{ __('hmis_reports.drug_consumption_report') }}

    - -
    -
    - {{ __('hmis_reports.showing_results_from') }} {{ streamline_date($start_date) }} {{ __('hmis_reports.to') }} {{ streamline_date($end_date) }} -
    -
    - {{ Form::open(['url' => 'drug_consumption_report','data-toggle'=>'validator']) }} - {{ Form::label('start_date',__('hmis_reports.from')) }} -
    -
    -
    - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-from']) }} - -
    -
    -
    - {{ Form::label('end_date',__('hmis_reports.to')) }} -
    -
    -
    - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-to']) }} - -
    -
    -
    - {{ Form::submit(__('hmis_reports.search'),['name' => 'filterBtn','class' => 'btn btn-success']) }} - {{ Form::close() }} -
    -
    - -
    - -
    -
    -
    - - - - - - - - - - - - - @php - $total_cost_value = 0; - $total_sell_value = 0; - $total_profit = 0; - @endphp - @for($i = 0; $i < count($drugs_array); $i++) - @php - $clean_qty = (isset($dispensed_array[$i]) && is_numeric($dispensed_array[$i])) ? $dispensed_array[$i] : 0; - $cost_value = get_name($drugs_array[$i], 'id', 'cost_price', 'drugs') *$clean_qty; - $sell_value = get_name($drugs_array[$i], 'id', 'non_insured_price', 'drugs') *$clean_qty; - $profit = $sell_value - $cost_value; - $profit_margin = ($sell_value == 0) ? 0 : floor(($profit / $sell_value) * 100); - $total_cost_value += $cost_value; - $total_sell_value += $sell_value; - $total_profit += $profit; - @endphp - - - - - - - - - @endfor - -
    {{ __('hmis_reports.drug_name') }}{{ __('hmis_reports.consumption') }}{{ __('hmis_reports.cost_value') }}{{ __('hmis_reports.sell_value') }}{{ __('hmis_reports.profit') }}{{ __('hmis_reports.profit_margin') }}
    {{ get_name($drugs_array[$i], 'id', 'name', 'drugs') }}{{$clean_qty }}{{ ugandan_shillings($cost_value) }}{{ ugandan_shillings($sell_value) }}{{ ugandan_shillings($profit) }}{{ $profit_margin }} %
    -
    - -
    - - - - - - - - - - - - - -
    {{ __('hmis_reports.total_cost_value') }}{{ ugandan_shillings($total_cost_value) }}
    {{ __('hmis_reports.total_sell_value') }}{{ ugandan_shillings($total_sell_value) }}
    {{ __('hmis_reports.total_profit_value') }}{{ ugandan_shillings($total_profit) }}
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/drug_stock_level.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/drug_stock_level.blade.php deleted file mode 100755 index 5746e56c..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/drug_stock_level.blade.php +++ /dev/null @@ -1,120 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_reports.drug_stock_levels_report') }}

    -
    -
    - -
    -
    - -
    -
    -
    - -

    {{ __('hmis_reports.drug_stock_levels_report') }}

    -
    - -
    - - - - - - - - - - - - - @php - $total_buying_price = 0; - $total_stock_value = 0; - @endphp - @foreach($drugs as $drug) - @php - $stock_value = ($drug->store_stock + $drug->pharmacy_stock) * $drug->cost_price; - $total_buying_price += $drug->cost_price; - $total_stock_value += $stock_value; - @endphp - - - - - - - - - @endforeach - -
    {{ __('hmis_reports.drug_name') }}{{ __('hmis_reports.pharmacy_stock') }}{{ __('hmis_reports.store_stock') }}{{ __('hmis_reports.total_stock') }}{{ __('hmis_reports.cost_value') }}{{ __('hmis_reports.stock_value') }}
    - {{ $drug->name }} - - {{ $drug->pharmacy_stock }} - - {{ $drug->store_stock }} - - {{ $drug->pharmacy_stock + $drug->store_stock }} - - {{ ugandan_shillings($drug->cost_price) }} - - {{ ugandan_shillings($stock_value) }} -
    -
    - - - - - - - - - - -
    {{ __('hmis_reports.total_buying_price') }}{{ ugandan_shillings($total_buying_price) }}
    {{ __('hmis_reports.total_stock_value') }}{{ ugandan_shillings($total_stock_value) }}
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/essential_medicines_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/essential_medicines_report.blade.php deleted file mode 100755 index 4c8c65bd..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/essential_medicines_report.blade.php +++ /dev/null @@ -1,297 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('hmis_reports.essential_medicines_report') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -

    - -
    - @include('flash::message') -

    {{ __('hmis_reports.hmis_105') }}

    - -
    -
    - - - - - - - - - - - - - - - - - -
    {{ __('hmis_reports.health_unit') }}:{{ $hospital_information->name }}
    {{ __('hmis_reports.subcounty') }}:{{ get_name($hospital_information->sub_country,'id','name','subcounties') }}
    {{ __('hmis_reports.parish') }}:{{ get_name($hospital_information->parish,'id','name','parishes') }}
    {{ __('hmis_reports.district') }}:{{ get_name($hospital_information->district, 'id','name','districts') }}
    -
    - -
    - - - - - - - - - - - - - -
    {{ __('hmis_reports.code') }}:{{ $hospital_information->code }}
    {{ __('hmis_reports.level') }}:{{ $hospital_information->level }}
    {{ __('hmis_reports.health_sub_district') }}:{{ $hospital_information->sub_district }}
    -
    - -
    - - - - - - - - - - - - - -
    {{ __('hmis_reports.reporting_period') }}:
    {{ __('hmis_reports.from') }}: {{ streamline_date($from_date) }}
    T{{ __('hmis_reports.to') }}: {{ streamline_date($to_date) }}
    {{ __('hmis_reports.date_of_report') }}: {{ streamline_date(date('Y-m-d')) }}
    -
    - -
    - - {{ Form::open(['url' => 'essential_medicines_report','data-toggle'=>'validator']) }} - - {{ __('hmis_reports.search_to_view_results') }} - - - - - - - - - - - - - - - {{ Form::close() }} -
    {{ __('hmis_reports.from') }}:
    - {{ Form::text('date_from','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-from']) }} -
    {{ __('hmis_reports.to') }}:
    - {{ Form::text('date_to','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-to']) }} -
    - {{ Form::submit(__('hmis_reports.search'),['class' => 'btn btn-success btn-sm','name' => 'date_filter']) }} -
    -
    -
    - -
    - -
    -
    -
    - - - - - - - - - - - - -
    6. {{ __('hmis_reports.essential_meds_supplies') }}
    6.1 {{ __('hmis_reports.stock_status') }}
    {{ __('hmis_reports.primary_data_sources') }}
    - - - - - - - - - - - - -
    SN.{{ __('hmis_reports.name_of_drug_items') }}:{{ __('hmis_reports.unit') }}{{ __('hmis_reports.quantity_consumed_units') }}{{ __('hmis_reports.days_outta_stock') }}{{ __('hmis_reports.stock_on_hand') }}
    - - - - -
    {{ __('hmis_reports.hssip_indicator_items') }}:
    -
    -
    - -
    -
    - - - @if(count($hssip_indicator_results) > 0) - @foreach($hssip_indicator_results as $hssip_indicator) - - - - @php $form_name = get_name($hssip_indicator->form_id, "id", "name","unit_of_measure"); @endphp - - - - - - @endforeach - @endif -
    {{ str_replace("S0", "S", $hssip_indicator->hssip) }}{{ $hssip_indicator->name }}{{ ucwords($form_name) }}{{ isset($drug_data_array[$hssip_indicator->id]) ? $drug_data_array[$hssip_indicator->id] : 0 }}{{ days_out_of_stock($hssip_indicator->id, $from_date, $to_date) }}{{ $hssip_indicator->store_stock + $hssip_indicator->pharmacy_stock }}
    -
    -
    - -
    -
    - - - - - -
    {{ __('hmis_reports.other_programmatic_items') }}:
    - - - - @if(count($other_programmatic_results)) - @foreach($other_programmatic_results as $programmatic_result) - - - - @php - $form_name = get_name($programmatic_result->form_id, "id", "name","unit_of_measure"); - @endphp - - - - - - @endforeach - @endif -
    {{ str_replace("S0", "S", $programmatic_result->hssip) }}{{ $programmatic_result->name }}{{ ucwords($form_name) }}{{ isset($drug_data_array[$programmatic_result->id]) ? $drug_data_array[$programmatic_result->id] : 0 }}{{ days_out_of_stock($programmatic_result->id, $from_date, $to_date) }}{{ $programmatic_result->store_stock + $programmatic_result->pharmacy_stock }}
    -
    -
    - -
    -
    - - - - - -
    {{ __('hmis_reports.drugs_suffered_stock_out') }}:
    - - - - - - - - - - - @for ($i = 0, $j = $half_count; $i < $half_count, $j < $drug_count; $i++, $j++) - - - - - - - - - @endfor -
    {{ __('hmis_reports.number') }}.{{ __('hmis_reports.name_of_drug_items') }}:{{ __('hmis_reports.days_outta_stock') }}{{ __('hmis_reports.number') }}.{{ __('hmis_reports.name_of_drug_items') }}:{{ __('hmis_reports.days_outta_stock') }}
    {{ $i + 1 }}.{{ $drug_row_array[$i]["item_name"] }}{{ days_out_of_stock($drug_row_array[$i]["item_id"], $from_date, $to_date) }}{{ $j + 1 }}.{{ $drug_row_array[$j]["item_name"] }}{{ days_out_of_stock($drug_row_array[$j]["item_id"], $from_date, $to_date) }}
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush - - - diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/expired_drugs_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/expired_drugs_report.blade.php deleted file mode 100755 index e4ccfab9..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/expired_drugs_report.blade.php +++ /dev/null @@ -1,120 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_reports.expired_drugs_report') }}

    -
    -
    - -
    -
    - -
    -
    -
    - -

    {{ __('hmis_reports.expired_drugs_report') }}

    -
    - -
    - - - - - - - - - - - - - @php - $total_buying_price = 0; - $total_stock_value = 0; - @endphp - @foreach($drugs as $drug) - @php - $stock_value = ($drug->store_stock + $drug->pharmacy_stock) * $drug->cost_price; - $total_buying_price += $drug->cost_price; - $total_stock_value += $stock_value; - @endphp - - - - - - - - - @endforeach - -
    {{ __('hmis_reports.drug_name') }}{{ __('hmis_reports.pharmacy_stock') }}{{ __('hmis_reports.store_stock') }}{{ __('hmis_reports.total_stock') }}{{ __('hmis_reports.cost_value') }}{{ __('hmis_reports.stock_value') }}
    - {{ $drug->name }} - - {{ $drug->pharmacy_stock }} - - {{ $drug->store_stock }} - - {{ ugandan_shillings($drug->cost_price) }} - - {{ ugandan_shillings($stock_value) }} - - {{ streamline_date_time($drug->expiry_date) }} -
    -
    - - - - - - - - - - -
    {{ __('hmis_reports.total_buying_price') }}{{ ugandan_shillings($total_buying_price) }}
    {{ __('hmis_reports.total_stock_value') }}{{ ugandan_shillings($total_stock_value) }}
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/family_planning_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/family_planning_report.blade.php deleted file mode 100755 index 4af86f5e..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/family_planning_report.blade.php +++ /dev/null @@ -1,157 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -
    {{ __('hmis_reports.family_planning_report') }}
    -
    -
    - -
    -
    -
    - @include('flash::message') -

    {{ __('hmis_reports.family_planning_report') }}

    - -
    -
    - {{ __('hmis_reports.showing_results_from') }} {{ streamline_date($attendance_from) }} {{ __('hmis_reports.to') }} {{ streamline_date($attendance_to) }} -
    -
    - {{ Form::open(['url' => 'family_planning_report','data-toggle'=>'validator']) }} - {{ Form::label('date_from',__('hmis_reports.from')) }} -
    -
    -
    - {{ Form::text('date_from','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-from']) }} - -
    -
    -
    - {{ Form::label('date_to',__('hmis_reports.to')) }} -
    -
    -
    - {{ Form::text('date_to','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-to']) }} - -
    -
    -
    - {{ Form::submit(__('hmis_reports.search'),['name' => 'filterBtn','class' => 'btn btn-success']) }} - {{ Form::close() }} -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - -
     {{ __('hmis_reports.counseling') }}{{ __('hmis_reports.fp_clinic') }}
    {{ __('hmis_reports.male') }} -
    - @csrf() - - - - - -
    -
    -
    - @csrf() - - - - - -
    -
    {{ __('hmis_reports.female') }} -
    - @csrf() - - - - - -
    -
    -
    - @csrf() - - - - - -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/family_planning_report_details.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/family_planning_report_details.blade.php deleted file mode 100755 index c4f87c1a..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/family_planning_report_details.blade.php +++ /dev/null @@ -1,92 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -
    {{ __('hmis_reports.family_planning_report_details') }}
    -
    -
    - -
    -
    -
    - @include('flash::message') -

    {{ __('hmis_reports.showing_results_from') }} ({{ $gender }}) {{ __('hmis_reports.from') }} {{ streamline_date($from) }} {{ __('hmis_reports.to') }} {{ streamline_date($to) }}

    - -
    -
    - - - - - - - - - - - - - - @php $counter = 1; @endphp - @if(count($patients_results) > 0) - @foreach($patients_results as $patient) - @php $dob = new Carbon\Carbon($patient->date_of_birth); @endphp - - - - - - - - - - @php $counter++; @endphp - @endforeach - @else - - @endif - -
    {{ __('hmis_reports.patient_number') }}{{ __('hmis_reports.full_names') }}{{ __('hmis_reports.gender') }}{{ __('hmis_reports.age') }}{{ __('hmis_reports.phone') }}
    {{ $counter }}.{{ $patient->number }}{!! insurance_flag($patient->id) !!}{{ $patient->gender == 1 ? __('hmis_reports.male') : __('hmis_reports.female') }}{{ $dob->diffInYears(Carbon\Carbon::now()) }} {{ __('hmis_reports.years') }}{{ $patient->phone }} - {{ __('hmis_reports.select') }} -
    {{ __('hmis_reports.no_records_found') }}
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/health_unit_quarterly_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/health_unit_quarterly_report.blade.php deleted file mode 100755 index 2c35310b..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/health_unit_quarterly_report.blade.php +++ /dev/null @@ -1,3869 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') - -
    -
    -
    Health Unit Quartery Report
    -
    -
    - - -
    -
    - -
    -
    -
    -

    -
    -

    HMIS FORM 106a: HEALTH UNIT QUARTERLY

    -
    -

    Health Unit__________________________Level________________Code_________________District______________________________________

    -

    Health Sub-district_________________________________ Sub county__________________________ Parish_____________________

    -

    Reporting Period: From______________________ To___________________________(months) Financial Year_______________________

    - -
    - -

    1. HIV CARE / ART SERVICES

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    1A - HIV CARE/ART QUARTERLY CROSS SECTIONAL REPORT
    #
    Data Element
    Category
    No of Children < 2 years (24months)
    No. of Children 2- <- 5yrs
    No. of Children 5 – 14 yrs
    No. of Individuals 15 yrs and above
    Total
    Male
    Female
    Male
    Female
    Male
    Female
    Male
    Female
    A
    B
    C
    D
    E
    F
    G
    H
    I
    - 1Cumulative No. of clients ever enrolled in HIV care at this facility at the end of the previous quarter
    2No. of new patients enrolled in HIV care at this facility during the reporting quarter(Exclude transfer In)
    3No. of pregnant & lactating women enrolled into care during the reporting quarter. (Subset of row 2 above )
    4No. of clients started on INH Prophylaxis during the reporting quarter (Subset of row 2 above )
    5Cumulative Number of clients ever enrolled in HIV care at this facility at the end of the reporting quarter(row 1+ row 2)
    6No. of persons already enrolled in HIV care who transferred in from another facility during the quarter.
    7No. of active clients on pre-ART Care in the quarter
    8No. active on pre-ART Care who received CPT/Dapsone at their last visit in the quarter
    9No. active on pre-ART Care assessed for TB at last visit in the quarter
    10No. active on pre-ART Care diagnosed with TB in the quarter
    11No. active on pre-ART Care started on anti-TB treatment during the quarter
    12No. Active on pre-ART Care assessed for Malnutrition at their visit in quarter
    13No. active on pre-ART who are Malnourished at their last visit in the quarter
    14No. active on pre-ART Care eligible and ready but not started on ART by end of the quarter
    15Cumulative No. of clients ever enrolled on ART at this facility at the end of the previous quarter
    16No. of new clients started on ART at this facility during the quarter
    17No. Of new clients started on ART at this facility during the quarter based on CD4 count
    18No. of pregnant & Lactating women started on ART at this facility during the quarter(Subset of row 16 above)
    19Cumulative No. of individuals ever started on ART (row 15 + row 16)
    20No. active on ART on 1st line ARV regimen
    21No. active on ART on 2nd line ARV regimen
    22No. active on ART on 3rd line or higher ARV regimen
    23No. active on ART who received CPT/Dapsone at the last visit in the quarter
    24No. active on ART assessed for TB at last visit in the quarter
    25No. active on ART diagnosed with TB during the quarter
    26No. active on ART started on TB treatment during the quarter(New TB cases)
    27Total No. active on ART and on TB treatment during the quarter
    28No. active on ART with Good adherence(>95%) during the quarter
    29No. active on ART assessed for Malnutrition at their visit in quarter
    30No. active on ART who are Malnourished at their last visit in the quarter
    - -
    -
    -
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    1B - ART QUARTERLY COHORT ANALYSIS REPORT
    For all clients and eMTCT mothers starting ART by month/year: at baseline then results at 6 months on ART, 12 months on ART, 24 months on ART etc.
    Register
    #
    BASELINE
    FOLLOW-UP
    No. Of months completed on ART by various quarterly cohorts
    Record months / year when cohort started(3 months period)
    Started on ART in this clinic- original cohort
    Fraction of clients 5yrs & above with CD4 < 500
    Median CD4(for 5 years and above with available CD4- optional)
    Transfers In (TI) Add +
    Transfers Out (TO) Subtract -
    Net current cohort (N)(Column 3+TI-TO)
    Stopped
    Died
    Lost(missed appointment)
    Lost to Follow-up(DROP)
    No. of Cohort Alive and on ART (On Rx)
    Percent of cohort alive and on ART[ (On Rx) / N * 100 ]
    Fraction of clients 5yrs & above with CD4 <500
    Median CD4 (for 5 yrs and above with available CD4- optional)
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    1All patients 6 months
    eMTCT Mothers 6 months
    2All patients - 12 months -
    eMTCT - Mothers 12 months -
    3All patients - 24 months -
    eMTCT - Mothers 24 months -
    4All patients - 36 months -
    eMTCT Mothers 36 months
    5All patients - 48 months -
    eMTCT - Mothers 48 - months -
    6All patients - 60 months -
    eMTCT - Mothers 60 - months -
    7All patients - 72 months -
    eMTCT - Mothers 72 - months -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    LEGEND for Table 1B
    Reporting6-month12-month24-month36-month48-month60-month72-month
    Clients being - reported during the quarter: - Clients who - started on ART in the preceding months of : - Clients who started - on ART in the previous year, during the months - of: - Clients who - started on ART two years back, during the months - of: - - Clients who started - on ART three years back, during the months of: - Clients who started - on ART four years back, during the months of: - Clients who started - on ART five years back, during the months of: - Clients who started - on ART six years back, during the months of: -
    January 1 - March 31July, Aug, SeptJan, Feb. MarchJan, Feb. MarchJan, Feb. MarchJan, Feb. MarchJan, Feb. MarchJan, Feb. March
    April 1 - June 30Oct, Nov, DecApril, May, JuneApril, May, JuneApril, May, JuneApril, May, JuneApril, May, JuneApril, May, June
    July 1 - September 30Jan, Feb. MarchJuly, Aug, SeptJuly, Aug, SeptJuly, Aug, SeptJuly, Aug, SeptJuly, Aug, SeptJuly, Aug, Sept
    October 1 - - December 31 - April, May, JuneOct, Nov, DecOct, Nov, DecOct, Nov, DecOct, Nov, DecOct, Nov, DecOct, Nov, Dec
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    1C - POST EXPOSURE PROPHYLAXIS (PEP)
    Category
    Number
    0-4yrs5 – 14yrs15 – 49yrs50+ yrsTotal
    MaleFemaleMaleFemaleMaleFemaleMaleFemaleMaleFemale
    Q1-Exposures Reported at this facility at the end of the quarter
    Occupational Exposure
    Rape/Sexual Assault or - Defilement -
    Non Occupational Causes
    Others Causes
    Q2-Number provided with PEP following;
    Occupational Exposure
    Rape/Sexual Assault or - Defilement -
    Non Occupational Causes
    Others Causes
    Q3-Clients that completed full course of PEP
    Q4-Clients that completed the first 3 follow - up visits (1wk, 4wks, 3 months) -
    Q5-Individuals that sero converted following - PEP (after 3 months) -
    Q6-Individuals who experienced serious side - Effects -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    2. NUTRITION QUARTERLY CROSS-SECTIONAL REPORT
    RegisterNo.Data elementNumber
    Less than - 6 mths - 6-59 mths5-18 yrs18+ yrsTOTALSPregnant/Lactating - Women -
    OPD1N1-No. of clients who received nutrition assessment in this quarter using color coded MUAC tapes/Z score chart
    OPD, CHILD, INR
    2N2. No. of clients who received nutrition assessment using Height/Length for Age Z-scoresTotal
    Stunted
    3N3-No. of clients who received nutritional assessment and had malnutritionTotal
    MAM
    SAM without oedema
    SAM with oedema
    4N4-No. of newly identified - malnourished cases in this - quarter - Total
    HIV positive
    5N5-No. of clients who received nutrition supplementary / therapeutic feedsTotal
    HIV positive
    ANC, MAT,PNC
    6N6-No. of pregnant and lactating women who received maternal nutrition counselingTotal
    HIV positive
    7N7-No. of pregnant and lactating women who received infant feeding counselingTotal
    HIV positive
    EID
    8N8-No. of HIV exposed infants who were reported to be exclusively breastfed for the first 6 completed months during the reporting period
    9N9-No. of HIV exposed infants who were reported to be breastfed up-to 1 year
    INR10N10- No. of treated - malnourished clients who attained target exit criteria at the end of the quarter - Total
    HIV positive
    - -
    -

    3. TUBERCULOSIS/LEPROSY SERVICES

    -

    3.1 NEW AND RETREATMENT CASES OF TUBERCULOSIS

    -
    -
    a). New Patients, Relapses, Lost To Follow-up and Failures:-
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Type of PatientNewRelapseLost to follow upFailureTrt. History unknownOverall Total
    MFTotalMFMFMFMFMF
    Bacteriologically confirmed, PTB - (P-BC) -
    Clinically diagnosed PTB, (P-CD)
    EPTB, (bacteriologically or - clinically diagnosed) -
    Total
    - -
    -
    - -
    b). New Patients and Relapses By Sex & Age Groups:
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Type of patient0 - 45 – 1415 – 2425 - 3435 – 4445 – 5455 - 6465+Total
    MFMFMFMFMFMFMFMFMF
    P-BC New and - relapse -
    P-CD
    EPTB (BC or CD
    Total
    - -
    -
    -
    c). TB/HIV Section for TB Patients Registered During the Quarter
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Type of patientNo. offered HCTNo. tested for - HIV - No. HIV pos.No. on CPTNo. on - ART -
    MFMFMFMFMF
    New bacteriologically confirmed PTB
    New Clinically diagnosed PTB
    EPTB
    Other categories of TB cases
    Total
    Summary for Children (0 -14) years
    - -
    -
    -
    d). DOT Status of Patients Registered During the Quarter
    - - - - - - - - - - - - - - - - - - - - - - - - -
    SexDOT Status
    Number registered TB patientsNumber on facility basedNumber on community based DOT
    M
    F
    - -
    -
    -
    e) 2 IPT among under five contacts of smear positive patients
    - - - - - - - - - - - -
    No of smear positive patientsTotal no. of under-five contactsNo. of under five contacts on IPT
    - -
    -
    -
    f). Sputum conversion rate at end of intensive phase among smear positive patients enrolled on SCC one quarter previously (4-6 months ago) (i.e. among patients notified the previous quarter)
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    CategorySmear positive - patients registered during previous quarter - Smear not done - at end of intensive phase - Sputum conversion at:Smear remaining - positive at end of intensive phase - Total
    2 months3 months
    No%No%No%
    New smear pos patient
    Relapse patients pos Cat. 2
    Failure pos Cat. 2
    Return after LFU pos Cat. 2
    - -
    -
    -
    g). Laboratory examinations
    -
    g1. Sputum examination for patients finding during the quarter
    - - - - - - - - - - - - - -
    Number of presumptive PTB examined for patients finding by microscopy
    Number of sputum samples examined for patients finding
    Number of smear positive patients identified
    - -
    -
    -
    g2. Nucleic Acid Amplification Test (NAAT) e.g. GeneXpert examinations for patients finding during the quarter
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Type of patientNumber - examined - MTB and Rifampicin Resistance status
    Not - MTB - MTB - +/ Rif - R - MTB+/ - Rif S - Total - MTB - IndeterminateInvalid/ - Error Results -
    Smear positive re-treatment cases
    Smear negative HIV +
    Children (0 -14) years
    All other patients
    - -
    -
    -
    g 3. DST examination for DR surveillance among those notified the previous quarter (i.e. 4 – 6 months ago)
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Type of patientNo. enrolledNo. referred for DSTNo. with Rif - Resistance - No. with Mono ResistantNo. with poly resistanceNo. with - MDRTB - No. with XDRNo. with no resistanceTotal
    Cat 1 failures
    Relapse +
    LFU +
    Health worker
    Others e.g. contacts of - DR patients -
    - -
    -
    -
    TREATMENT OUTCOME OF PATIENTS REGISTERED 12 – 15 MONTHS EARLIER (All TB Patients) | QUARTER_______________ YEAR_________
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Patients reported during quarter [A] *Type of PatientCured - (1) - Treatment - completed - (2) - Died - (3) - Failure - (4) - Lost to - follow up - (5) - [B] * Total - number evaluated (Add 1 to 5) - No. not - evaluated - (A-B) * -
    MFTNEW PATIENTS - (Category I) -
    Bacteriologically - confirmed PTB -
    Clinically diagnosed PTB
    Extra-pulmonary
    TOTAL Category I
    MFTRETREATMENT - PATIENTS (Category II) -
    Bacteriologically confirmed relapses
    Bacteriologically confirmed failures
    Bacteriologically confirmed treatment after - loss to follow up -
    Others treated with - Category II -
    Total Category II
    -
    Of those excluded_______________(number) from evaluation of chemotherapy for the following reasons:_____________________
    - -
    -
    -
    TREATMENT OUTCOME OF PATIENTS REGISTERED 12 – 15 MONTHS EARLIER (Known HIV Pos)| QUARTER_________________ YEAR__________________
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Patients reported - during quarter [A] - * - Type of PatientCured - (1) - Treatment - completed (2) - Died - (3) - Failure - (4) - Lost to - follow up - (5) - [B] * Total - number evaluated (Add 1 to 5) - No. not - evaluated - (A-B) * -
    MFTNEW PATIENTS
    Bacteriologically confirmed PTB
    Clinically diagnosed - PTB -
    Extra-pulmonary
    TOTAL
    MFTRETREATMENT - PATIENTS -
    Bacteriologically - confirmed relapses -
    Bacteriologically - confirmed failures -
    Bacteriologically - confirmed treatment after loss to follow up -
    Others treated with - Category II -
    Total Category II
    -
    Of those excluded______________________________(number) from evaluation of chemotherapy for the following reasons:__________________________________
    - -
    -
    -
    Results of TB/HIV services offered to TB patients registered 12 - 15 months ago
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Types of TBTotal Number of - TB Patients registered - No. offered HCTNumber testedNo HIV positiveNo HIV + - started on - CPT - No HIV + - started on ART -
    MFMFMFMFMFMF
    New Bacteriologically confirmed - PTB -
    New clinically diagnosed PTB
    Extra-pulmonary TB
    Other categories of TB cases
    Total
    - -
    -
    -
    Results of Treatment of Tuberculosis for children aged (0 – 14) years and registered 12 - 15 Months Earlier
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    (ALL CHILDREN WITH TB)
    Patients reported - during quarter [A] * - Type of PatientCured - - (1) - Treatment - completed - (2) - Died - - (3) - Failure - - (4) - Lost to - follow up - (5) - [B] * Total - number evaluated (Add 1 to 5) - No. not evaluated - - (A-B) * -
    MFTNEW - PATIENTS -
    Bacteriologically confirmed PTB
    Clinically - diagnosed PTB -
    Extra-pulmonary
    Total
    (KNOWN HIV POSITIVE CHILDREN AT TREATMENT OUTCOME)
    Patients reported - during quarter [A] * - Type of PatientCured - - (1) - Treatment - completed - (2) - Died - - (3) - Failure - - (4) - Lost to - follow up - (5) - [B] * Total - number evaluated (Add 1 to 5) - No. not evaluated - - (A-B) * -
    MFTNEW - PATIENTS -
    Bacteriologically confirmed PTB
    Clinically - diagnosed PTB -
    Extra-pulmonary
    Total
    - -
    -
    -
    Results (cumulative) TB/HIV services offered to children aged 0-14 years with TB patients and registered 12 – 15 months ago
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Types of TBTotal No. of - Children with TB - registered - No. offered HCTNumber tested for - HIV - No HIV positiveNo HIV + started - on CPT - No HIV + - started on ART -
    MFMFMFMFMFMF
    - -
    -
    -
    Stock Status Report of Anti- TB Drugs
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Drug Item
    Received
    Quantity Utilized
    Adjustments ( Expiry, Transfers - Out and Other Losses) -
    Stock at Hand
    Streptomycin (1g)
    RHZE (150/75/400/275mg)
    RHZ (Paed) (60/30/150mg)
    RHE (150/75/275 mg)
    EH (400/150mg)
    RH (Paed) (60/60mg)
    RH (Adult) (150/75mg)
    INH (100mg)
    INH (300mg)
    Others specify...
    - -
    -
    -
    3.2 Drug Resistant TB Services
    -
    3.2.1 Drug Resistant TB Cases Registered/Treated
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Number of patients that were diagnosed with DR-TB during the quarter:
    Number of patients on the waiting List:
    Diagnosis - Category - New CasesPreviously - treated with first line drugs - Previously - treated with second line drug - Total - started Cat - IV - No tested - for HIV - No. HIV+No. on - CPT - No. on - ART -
    MFMFMFMFMFMFMFMF
    RR- mono - resistance -
    MDR
    XDR
    Number of contacts of DR TB PatientsTotal
    Screened for TB
    Diagnosed with TB
    - -
    -
    -
    3.2.3 Report on Six-month interim outcome assessment for patients started on drug resistant treatment. Form 06 (To be filled 9 months after treatment start
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Treatment categoryNumber started on treatmentPatients still on treatment - Smear and culture results at 6 months of Tx -
    Negative (Smear - and/or Culture - Positive - (Smear and/or - Culture) - No ResultsDiedLost to - follow up - Transferred - Out -
    MFTMFMFMNoMFMFMF
    RR- mono - resistance -
    MDR
    XDR
    - -
    -
    -
    3.2.4 Report on treatment outcomes of DR-TB (Category IV) patients initiated on treatment 24 months earlier.
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Treatment categoryRegistration - Group - No. started on TxCuredTX CompletedFailedLost to follow upDiedNot - Evaluated - Still on TxTotal
    RR- mono resistanceNew
    Previously treated With 1st line drugs Only
    Previously treated - With 2nd line drugs -
    Total
    MDRNew
    Previously treated With 1st line drugs Only
    Previously treated - With 2nd line drugs -
    Total
    XDRNew
    Previously treated - With 1st line drugs only -
    Previously treated - With 2nd line drugs -
    Total
    - -
    -
    -
    3.2.5 Report on treatment outcomes of DR-TB (Category IV) patients initiated on treatment 36 months earlier
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Treatment categoryRegistration - Group - No. started on TxCuredTX CompletedFailedLost to follow upDiedNot - Evaluated - Still on TxTotal
    RR- mono resistanceNew
    Previously treated With 1st line drugs Only
    Previously treated - With 2nd line drugs -
    Total
    MDRNew
    Previously treated With 1st line drugs Only
    Previously treated - With 2nd line drugs -
    Total
    XDRNew
    Previously treated - With 1st line drugs only -
    Previously treated - With 2nd line drugs -
    Total
    - -
    -
    -
    3.3 LEPROSY CONTROL
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Male AdMale ChFem. AdFem ChCategoryPB AdPB ChMB AdMB Ch
    Patients on treatment at beginning of quarter
    New cases – list them overleaf
    Relapses – list them overleaf
    Other additions e.g. transfer in
    TOTAL ADDITIONS
    Deaths
    Released from treatment
    Defaulted
    Other deductions e.g transfer out
    TOTAL DEDUCTIONS
    TOTAL ON MDT AT END OF QUARTER
    Disabled still on MDT
    Disabled no longer on MDT
    Have at least one insensitive foot (all)
    With ulcers (all)
    - -
    -
    -
    CASE FINDING ACTIVITIES CARRIED OUT THIS QUARTER
    - - - - - - - - - - - - - - - - - - - - - - - - - - -
    MethodNumber of people examinedNumber of cases found
    Contact surveillance
    Other surveys (schools, other)
    Examination of general suspects
    Total
    - -
    -
    -
    PAUCIBACILLARY (PB) CASES REPORTED IN ................ QUARTER 1 YEAR AGO.
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    New cases
    Return from default
    Transfers in
    - -
    -
    -
    MULTIBACILLARY (MB) CASES REPORTED IN ............. QUARTER 2 YEARS AGO.
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    CategoryReportedCompleted - MDT - Transferred - out - DefaultedDiedNot evaluatedTotal
    New cases
    Return from default
    Transfers in
    Relapses
    -

    1st Quarter: 1st Jan. – 31st Mar., 2nd Quarter: 1st Apr. – 30th Jun., 3rd Quarter: 1st Jul - 30th Sept., 4th Quarter: 1st Oct. – 31st Dec.

    -
    -
    - -
    4. COMMENTS BY HEALTH FACILITY IN CHARGE:
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    Date of Report:_____________ Health Unit In-charge: Name________________Title:________________ Signature__________________________ - -
    -
    -
    -
    - -

    -

    (District/HSD use only)

    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - -
    Date received
    Received by 7thYesNo
    Checked by (signature)
    Date Entered
    Name of Data Entrant
    -
    -
    -
    -
    - -
    -
    -
    COMMENTS BY HSD
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - -@endsection - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/investigation_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/investigation_report.blade.php deleted file mode 100755 index c2b5b445..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/investigation_report.blade.php +++ /dev/null @@ -1,100 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_reports.investigations_report') }}

    -
    -
    - -
    -
    - -
    - -

    {{ __('hmis_reports.search_criteria') }} : {{ $criteria }}    {{ __('hmis_reports.clear_search') }}

    - - - - - - - - - - - - @php $total = 0; @endphp - @foreach($investigation_super_categories as $super_id => $super_content) - - - {{-- --}} - - @foreach($super_content['sub_categories'] as $category_id => $category_content) - - - {{-- --}} - - @foreach($investigations[$category_id] as $investigation_id => $count) - - - - - @endforeach - @endforeach - @endforeach - {{--@foreach($investigations as $investigation_id => $investigation_count) - @php $total += $investigation_count; @endphp - - - - - @endforeach--}} - -
    {{ __('hmis_reports.investigation_super_category') }}{{ __('hmis_reports.investigation_category') }}{{ __('hmis_reports.investigation_name') }}{{ __('hmis_reports.number_test_performed') }}
    {{ $super_categories_names[$super_id] }} ({{ $super_content['count'] }})
    {{ $categories_names[$category_id] }} ({{ $category_content['count'] }})
    {{ $investigation_names[$investigation_id] }}{{ $count }}
    {{ get_name($investigation_id, 'id', 'name', 'investigations') }} - {{ $investigation_count }} -
    - - - {{ __('hmis_reports.totals') }} - {{ $total }} - - - -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/investigations_drill_down.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/investigations_drill_down.blade.php deleted file mode 100755 index bbfa87c1..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/investigations_drill_down.blade.php +++ /dev/null @@ -1,180 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_reports.investigations_report_details') }} ({{ get_name($investigation_id, 'id', 'name', 'investigations') }})

    -
    -
    - -
    -
    - -
    - @if(count($result_templates_array) > 0) -

    Results Template Breakdown

    - -
    - - - - - - - - - - @php $results_counter = 1; @endphp - @foreach($result_templates_array as $key => $record) - - - - - @php $results_counter++; @endphp - @endforeach - -
    ResultNo. Of Tests
    {{ $key }}{{ $record['counter'] }}
    -
    - -
    - - @php $results_counter = 1; @endphp - @foreach($result_templates_array as $key => $patient_records) - - @php $results_counter++; @endphp - @endforeach - @else -
    - - - - - - - - - - - - @foreach($patient_records as $record) - @php $patient = \Streamline\Models\Patient::withTrashed()->find($record['patient_id']); @endphp - - - - - - - - @endforeach - -
    {{ __('hmis_reports.full_names') }}{{ __('hmis_reports.gender') }} / {{ __('hmis_reports.age') }}{{ __('hmis_reports.investigation_performed_at') }}{{ __('hmis_reports.results') }}
    - {!! insurance_flag($record['patient_id']) !!} ({{ $record['patient_number'] }}) - - {{ $patient->gender == 1 ? __('hmis_reports.male') : __('hmis_reports.female') }} / {{ get_patients_age($patient->date_of_birth) }} - - {{ streamline_date_time($record['created_at']) }} - {{ $record['value'] }} - {{ __('hmis_reports.select') }} -
    -
    - @endif -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/list-hmis-reports.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/list-hmis-reports.blade.php deleted file mode 100755 index 9f68cbab..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/list-hmis-reports.blade.php +++ /dev/null @@ -1,123 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -
    {{ __('hmis_reports.hmis_reports') }}
    -
    -
    - -
    -
    - - @include('flash::message') -
    -
    -
    - -
    - -
    -
    -@endsection diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/list_memorised_reports.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/list_memorised_reports.blade.php deleted file mode 100755 index 093015d7..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/list_memorised_reports.blade.php +++ /dev/null @@ -1,279 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -
    {{ __('hmis_reports.memorised_streamline_reports') }}
    -
    -
    - -
    -
    - -
    - - - -
    - -

    {{ __('hmis_reports.mental_health_reports') }}

    - - -
    -@endsection \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/maternity_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/maternity_report.blade.php deleted file mode 100755 index 9af94777..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/maternity_report.blade.php +++ /dev/null @@ -1,190 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('hmis_reports.maternity_report') }}

    -
    -
    - -
    -
    - -
    - @include('flash::message') -

    {{ __('hmis_reports.maternity_report') }}

    - -

    -
    -
    -
    - {{ Form::open(['url' => 'memorised_reports/maternity_report','data-toggle'=>'validator']) }} -
    - {{ Form::label('search_by', __('hmis_reports.date')) }} - {{ Form::select('search_by', ['0'=>__('hmis_reports.last_24_hours'),'1'=>__('hmis_reports.custom_date'),'2'=>__('hmis_reports.custom_range')], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - -   -
    - {{ Form::label('mode_of_delivery',__('hmis_reports.modes_of_delivery')) }} - {{ Form::select('mode_of_delivery',$modes_of_delivery,'',['class' => 'form-control', 'id' => 'mode_of_delivery']) }} -
    -   -

    - {{ Form::submit(__('hmis_reports.search'),['name' => 'filterBtn','class' => 'btn btn-success']) }} - {{ Form::close() }} -
    -
    - -
    - -
    -
    -
    - - - - - - - - - @if (count($delivery_records_numbers_array)) - @foreach($delivery_records_numbers_array as $mode_of_delivery => $numbers) - - - - - @endforeach - @endif - -
    {{ __('hmis_reports.modes_of_delivery') }}{{ __('hmis_reports.number') }}
    - {{ $modes_of_delivery[$mode_of_delivery] }} - - {{ Form::open(['route' => 'streamline_reports.maternity_report_details']) }} - {{ Form::hidden('mode_of_delivery', $mode_of_delivery) }} - {{ Form::hidden('search_by', $search_by) }} - {{ Form::hidden('reg_date', $reg_date) }} - {{ Form::hidden('start_date', $start_date) }} - {{ Form::hidden('end_date', $end_date) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/maternity_report_details.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/maternity_report_details.blade.php deleted file mode 100755 index 413171e5..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/maternity_report_details.blade.php +++ /dev/null @@ -1,160 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_reports.maternity_report_details') }}

    -
    - -
    - -
    - @include('flash::message') - {{-- fetched data here --}} -
    -
    - - - - - - - - - - - - - - @php $counter = 1; @endphp - @if (count($maternity_records)) - @foreach ($maternity_records as $record) - @php - $foetal_number = $record->foetal_number; - $modes_of_delivery_array = explode(",", $record->mode_of_delivery); - $gender_array = explode(",", $record->gender); - $date_of_birth_array = explode(",", $record->date_of_birth); - $delivered_by_name_array = explode(",", $record->delivered_by_name); - $patient_id = $record->patient_id; - @endphp - - @for ($i=0; $i < count($modes_of_delivery_array) ; $i++) - @if (!is_null($selected_modes_of_delivery)) - @if (($i < $foetal_number) && ($selected_modes_of_delivery == $modes_of_delivery_array[$i]) && ($modes_of_delivery_array[$i] != "")) - - - - - - - - - - @php $counter++; @endphp - @endif - @endif - @endfor - @endforeach - @endif - -
    #Mother's NameMode of deliveryBaby genderBaby birth dateDelivered by
    - {{ $counter }} - - {{ get_full_name($patient_id, "id", "first_name", "last_name", "patients") }} ({{ get_name($patient_id, "id", "number", "patients")}}) - - {{ $modes_of_delivery[$modes_of_delivery_array[$i]] }} - - {{ $gender_array[$i] == 1 ? "Female" : "Male"}} - - {{ $date_of_birth_array[$i] }} - - {{ get_full_name($delivered_by_name_array[$i], "id", "first_name", "last_name", "users") }} - - {{ __('patients.select') }} -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/patient_visits_breakdown.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/patient_visits_breakdown.blade.php deleted file mode 100755 index 48b0fd6a..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/patient_visits_breakdown.blade.php +++ /dev/null @@ -1,112 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ $title }}

    -
    - -
    - -
    -
    - - - - - - - - - - - - @foreach($patients as $patient) - - - - - - - - @endforeach - -
    {{ __('hmis_reports.patient_number') }}{{ __('hmis_reports.full_names') }}{{ __('hmis_reports.gender') }}{{ __('hmis_reports.age') }}
    - {{ $patient->number }} - - {!! insurance_flag($patient->id) !!} - - {{ $patient->gender == 1 ? __('hmis_reports.male') : __('hmis_reports.female') }} - - {{ get_patients_age($patient->date_of_birth) }} - - {{ __('hmis_reports.select') }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/patient_visits_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/patient_visits_report.blade.php deleted file mode 100755 index c3c93e7c..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/patient_visits_report.blade.php +++ /dev/null @@ -1,314 +0,0 @@ -@extends('layouts.main') - -@push('styles') -@endpush - - -@section('content') -
    -
    -

    Stre@mline Reports

    -
    -
    - -
    -
    - -
    -
    - {{ csrf_field() }} - - {{ Form::hidden('criteria', $criteria) }} {{ Form::hidden('is_outpatient_queried', $is_outpatient_queried) }} {{ Form::hidden('age_group_data', serialize($age_group_data)) }} - {{ Form::hidden('returning_patients', $returning_patients) }} {{ Form::hidden('new_patients', $new_patients) }} {{ Form::hidden('total_male_patients', $total_male_patients) }} - {{ Form::hidden('total_re_attendance', $total_re_attendance) }} {{ Form::hidden('total_discharges', $total_discharges) }} {{ Form::hidden('total_admissions', $total_admissions) }} - {{ Form::hidden('end_date', $end_date) }} {{ Form::hidden('total_patients', $total_patients) }} {{ Form::hidden('total_female_patients', $total_female_patients) }} - {{ Form::hidden('patient_wards', serialize($patient_wards)) }} {{ Form::hidden('start_date', $start_date) }} - {{ Form::hidden('total_ward_deaths', $total_ward_deaths) }} {{ Form::hidden('total_opd_deaths', $total_opd_deaths) }} {{ Form::hidden('patient_clinics', serialize($patient_clinics)) }} - {{ Form::hidden('is_inpatient_queried', $is_inpatient_queried) }} {{ Form::hidden('number_of_episodes', $number_of_episodes) }} {{ Form::hidden('total_patients_in_clinics', $total_patients_in_clinics) }} - {{ Form::hidden('patient_categories', serialize($patient_categories)) }} {{ Form::hidden('all_discharges', $all_discharges) }} {{ Form::hidden('still_admitted', $still_admitted) }} {{ Form::hidden('number_of_days', $number_of_days) }} - -
    - - @include('flash::message') - -

    Patient Visits Report between {{ streamline_date($start_date) }} and {{ streamline_date($end_date) }}

    - -

    - -

    Search criteria : {{ $criteria }}    Clear search

    - -
    - -

    Patient Visits summary Report

    - -
    - - - - - - - - - - - - - - - - - - - - @if($is_outpatient_queried) - - - - - - - @endif - @if($is_inpatient_queried) - - - - - - - - - - - - - - - - - - - @endif - @if($is_outpatient_queried) - - - - - - - @endif - - - - - - -
    Total Number of patients{{ $total_patients }}Average No. of patients per day{{ ceil($total_patients / $number_of_days) }}
    Female - - {{ $total_female_patients }} ({{ round(($total_female_patients / $total_patients) * 100) }}%) - - Male - - {{ $total_male_patients }} ({{ round(($total_male_patients / $total_patients) * 100) }}%) - -
    New patients{{ $new_patients }} ({{ round(($new_patients / $total_patients) * 100) }}%)Returning patients{{ $returning_patients }} ({{ round(($returning_patients / $total_patients) * 100) }}%)
    Number of episodes created{{ $number_of_episodes }}Number of deaths at OPD{{ $total_opd_deaths }}
    Number of admissions{{ $total_admissions }} ({{ round(($total_admissions / $total_patients) * 100) }}%)Number of deaths at wards{{ $total_ward_deaths }}
    Number of patients discharged {{ $total_discharges }}Number of patients still admitted {{ $total_admissions - $total_discharges }}
    General Number of patients discharged {{ $all_discharges }}General Number of patients still admitted {{ $still_admitted }}
    OPD New Attendance{{ $total_patients - $total_re_attendance }}OPD Re-attendance{{ $total_re_attendance }}
    Number of Triaged Episodes{{ $triaged_patients }} ({{ round(($triaged_patients / $number_of_episodes) * 100) }}%)Number of Procedures Ordered - - - - - - - - - -
    OPD{{ $opd_procedures }}
    IPD{{ $ipd_procedures }}
    -
    -
    - - @if (!empty($age_group_data)) - @php - $age_group_header_code = ''; - $age_group_gender_header_code = ''; - $age_group_attendance_code = ''; - $age_group_total_attendance_code = ''; - - foreach ($age_group_data as $age_group){ - $age_group_header_code .= "" . $age_group['name'] . ""; - $age_group_gender_header_code .= "MF"; - - if (!empty($age_group['male'])) { - $male_count = count($age_group['male']); - $age_group_attendance_code .= '' . $male_count . ''; - } else { - $male_count = 0; - $age_group_attendance_code .= '0'; - } - - if (!empty($age_group['female'])) { - $female_count = count($age_group['female']); - $age_group_attendance_code .= '' . $female_count . ''; - } else { - $female_count = 0; - $age_group_attendance_code .= '0'; - } - - $age_group_total_attendance_code .= '' . ($male_count + $female_count) . ''; - } - @endphp - -
    - -

    Patients per age group

    - -
    - - - - - {!! $age_group_header_code !!} - - - - {!! $age_group_gender_header_code !!} - - - - - - {!! $age_group_attendance_code !!} - - - - {!! $age_group_total_attendance_code !!} - - -
    Age Group
    Gender
    Attendance
    Total Attendance
    -
    - @endif - - @if(count($patient_clinics) > 0 && $is_outpatient_queried) -
    - -

    Visits per clinic

    - -
    - - - - - - - - - - - - - - @foreach($patient_clinics as $patient_clinic) - - - - - - - - - - @endforeach - -
    Clinic NameNumber of PatientsMaleFemaleNewReturningNumber of Episodes created
    {{ $patient_clinic["name"] }}{{ $patient_clinic["total_patients"] }} ({{ round(($patient_clinic["total_patients"] / $total_patients_in_clinics) * 100) }}% of the total patients){{ $patient_clinic["male"] }}{{ $patient_clinic["total_patients"] - $patient_clinic["male"] }}{{ $patient_clinic["new"] }}{{ $patient_clinic["total_patients"] - $patient_clinic["new"] }}{{ $patient_clinic["total_episodes"] }}
    -
    - @endif - - @if(count($patient_categories) > 0 && $is_outpatient_queried) -
    - -

    OPD Visits Per Patient Category

    - -
    - - - - - - - - - - - - - - - @foreach($patient_categories as $patient_category) - - - - - - - - - - - @endforeach - -
    Patient Category NameNumber of PatientsMaleFemaleNewReturningPatients AdmittedNumber of Episodes created
    {{ $patient_category["name"] }}{{ $patient_category["total_patients"] }} ({{ round(($patient_category["total_patients"] / $total_patients) * 100) }}% of the total patients){{ $patient_category["male"] }}{{ $patient_category["total_patients"] - $patient_category["male"] }}{{ $patient_category["new"] }}{{ $patient_category["total_patients"] - $patient_category["new"] }}{{ $patient_category["admissions"] }} ({{ round(($patient_category["admissions"] / $patient_category["total_patients"]) * 100) }}% of the total patients in category){{ $patient_category["total_episodes"] }}
    -
    - @endif - - @if(count($patient_wards) > 0 && $is_inpatient_queried) -
    - -

    Admissions per ward

    - -
    - - - - - - - - - - - - - - - - - - @foreach($patient_wards as $patient_ward) - - - - - - - - - - - - - - @endforeach - -
    Ward NameNumber of PatientsMaleFemaleNew AdmissionsRe-AdmissionsDischargedStill AdmittedStill Admitted As Of {{ streamline_date($end_date) }}DeathsNumber of episodes created
    {{ $patient_ward["name"] }}{{ $patient_ward["total_patients"] }} ({{ round(($patient_ward["total_patients"] / $total_admissions) * 100) }}% of the total admissions){{ $patient_ward["male"] }}{{ $patient_ward["female"] }}{{ $patient_ward["new"] }}{{ $patient_ward["total_patients"] - $patient_ward["new"] }}{{ $patient_ward["discharged"] }}{{ $patient_ward["total_patients"] - $patient_ward["discharged"] }}{{ $patient_ward["admitted_as_of"] }}{{ $patient_ward["deaths"] }}{{ $patient_ward["total_episodes"] }}
    -
    - @endif -
    -@endsection - -@push('scripts') - -@endpush - - - diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/patient_visits_report_print.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/patient_visits_report_print.blade.php deleted file mode 100755 index 660efea0..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/patient_visits_report_print.blade.php +++ /dev/null @@ -1,274 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Inpatient Bill - Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') - -

    Patient Visits Report between {{ streamline_date($start_date) }} and {{ streamline_date($end_date) }}

    - -
    - -

    Patient Visits summary Report

    - - - - - - - - - - - - - - - - - - - - - @if($is_outpatient_queried) - - - - - - - @endif - @if($is_inpatient_queried) - - - - - - - - - - - - - - - - - - - @endif - @if($is_outpatient_queried) - - - - - - - @endif -
    Total Number of patients{{ $total_patients }}Average No. of patients per day{{ ceil($total_patients / $number_of_days) }}
    Female{{ $total_female_patients }} ({{ round(($total_female_patients / $total_patients) * 100) }}%)Male{{ $total_male_patients }} ({{ round(($total_male_patients / $total_patients) * 100) }}%)
    New patients{{ $new_patients }} ({{ round(($new_patients / $total_patients) * 100) }}%)Returning patients{{ $returning_patients }} ({{ round(($returning_patients / $total_patients) * 100) }}%)
    Number of episodes created{{ $number_of_episodes }}Number of deaths at OPD{{ $total_opd_deaths }}
    Number of admissions{{ $total_admissions }} ({{ round(($total_admissions / $total_patients) * 100) }}%)Number of deaths at wards{{ $total_ward_deaths }}
    Number of patients discharged (Those admitted in the selected time period and have been discharged){{ $total_discharges }}Number of patients still admitted (Those admitted in the selected time period and are still admitted up to-date){{ $total_admissions - $total_discharges }}
    General Number of patients discharged {{ $all_discharges }}General Number of patients still admitted {{ $still_admitted }}
    OPD New Attendance{{ $total_patients - $total_re_attendance }}OPD Re-attendance{{ $total_re_attendance }}
    - -
    - - @if (!empty($age_group_data)) - @php - $age_group_header_code = ''; - $age_group_gender_header_code = ''; - $age_group_attendance_code = ''; - $age_group_total_attendance_code = ''; - - foreach ($age_group_data as $age_group){ - $age_group_header_code .= "" . $age_group['name'] . ""; - $age_group_gender_header_code .= "MF"; - - if (!empty($age_group['male'])) { - $male_count = count($age_group['male']); - $age_group_attendance_code .= '' . $male_count . ''; - } else { - $male_count = 0; - $age_group_attendance_code .= '0'; - } - - if (!empty($age_group['female'])) { - $female_count = count($age_group['female']); - $age_group_attendance_code .= '' . $female_count . ''; - } else { - $female_count = 0; - $age_group_attendance_code .= '0'; - } - - $age_group_total_attendance_code .= '' . ($male_count + $female_count) . ''; - } - @endphp - -
    - -

    Patients per age group

    - -
    - - - - - {!! $age_group_header_code !!} - - - - {!! $age_group_gender_header_code !!} - - - - - - {!! $age_group_attendance_code !!} - - - - {!! $age_group_total_attendance_code !!} - - -
    Age Group
    Gender
    Attendance
    Total Attendance
    -
    - @endif - - @if(count($patient_clinics) > 0 && $is_outpatient_queried) -
    - -

    Visits per clinic

    - - - - - - - - - - - - - - - @foreach($patient_clinics as $patient_clinic) - - - - - - - - - - @endforeach - -
    Clinic NameNumber of PatientsMaleFemaleNewReturningNumber of Episodes created
    {{ $patient_clinic["name"] }}{{ $patient_clinic["total_patients"] }} ({{ round(($patient_clinic["total_patients"] / $total_patients_in_clinics) * 100) }}% of the total patients){{ $patient_clinic["male"] }}{{ $patient_clinic["total_patients"] - $patient_clinic["male"] }}{{ $patient_clinic["new"] }}{{ $patient_clinic["total_patients"] - $patient_clinic["new"] }}{{ $patient_clinic["total_episodes"] }}
    - @endif - - @if(count($patient_categories) > 0 && $is_outpatient_queried) -
    - -

    OPD Visits Per Patient Category

    - - - - - - - - - - - - - - - @foreach($patient_categories as $patient_category) - - - - - - - - - - @endforeach - -
    Patient Category NameNumber of PatientsMaleFemaleNewReturningNumber of Episodes created
    {{ $patient_category["name"] }}{{ $patient_category["total_patients"] }} ({{ round(($patient_category["total_patients"] / $total_patients) * 100) }}% of the total patients){{ $patient_category["male"] }}{{ $patient_category["total_patients"] - $patient_category["male"] }}{{ $patient_category["new"] }}{{ $patient_category["total_patients"] - $patient_category["new"] }}{{ $patient_category["total_episodes"] }}
    - @endif - - @if(count($patient_wards) > 0 && $is_inpatient_queried) -
    - -

    Admissions per ward

    - - - - - - - - - - - - - - - - - - - @foreach($patient_wards as $patient_ward) - - - - - - - - - - - - - - @endforeach - -
    Ward NameNumber of PatientsMaleFemaleNew AdmissionsRe-AdmissionsDischargedStill AdmittedStill Admitted As Of {{ streamline_date($end_date) }}DeathsNumber of episodes created
    {{ $patient_ward["name"] }}{{ $patient_ward["total_patients"] }} ({{ round(($patient_ward["total_patients"] / $total_admissions) * 100) }}% of the total admissions){{ $patient_ward["male"] }}{{ $patient_ward["female"] }}{{ $patient_ward["new"] }}{{ $patient_ward["total_patients"] - $patient_ward["new"] }}{{ $patient_ward["discharged"] }}{{ $patient_ward["total_patients"] - $patient_ward["discharged"] }}{{ $patient_ward["admitted_as_of"] }}{{ $patient_ward["deaths"] }}{{ $patient_ward["total_episodes"] }}
    - @endif -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/patients_lost_to_follow_up.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/patients_lost_to_follow_up.blade.php deleted file mode 100755 index 4c7905cd..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/patients_lost_to_follow_up.blade.php +++ /dev/null @@ -1,120 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_reports.follow_up_drop_out_report') }}

    -
    -
    - -
    -
    - -
    - {{ Form::open(['route' => 'memorised_reports.patients_lost_to_follow_up' , 'data-toggle' => 'validator']) }} -
    -
    -
    -
    - {{ Form::label('start_date',__('hmis_reports.from')) }} - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'start_date']) }} -
    -
    -
    -
    - {{ Form::label('end_date',__('hmis_reports.to')) }} - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'end_date']) }} -
    -
    -
    -
    - {{ Form::button(__('hmis_reports.search'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    - {{ Form::close() }} -
    - -

    {{ __('hmis_reports.showing_results_from') }} {{ streamline_date($start_date) }} {{ __('hmis_reports.to') }} {{ streamline_date($end_date) }}

    - -
    - - - - - - - - - - - @if(count($lost_follow_ups) > 0) - @foreach($lost_follow_ups as $record) - - - - - - - @endforeach - @else - - - - @endif - -
    {{ __('hmis_reports.patient_name') }}{{ __('hmis_reports.date_created') }}{{ __('hmis_reports.follow_up_date') }}
    {{ get_full_name($record->patient_id, 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($record->patient_id, 'id', 'number', 'patients') }}) {{ streamline_date($record->created_at) }}{{ streamline_date($record->appointment_date) }} - {{ __('hmis_reports.select') }} -
    -

    {{ __('hmis_reports.no_records_found') }}

    -
    - -
    - - - - - - - - - - - - - - - - - - -
    {{ __('hmis_reports.patients_to_follow_up') }}{{ $total_follow_ups }}
    {{ __('hmis_reports.patients_lost') }}{{ $number_of_patients_lost }}
    {{ __('hmis_reports.patients_followed_up') }}{{ $number_of_patients_followed_up }}
    {{ __('hmis_reports.drop_out_rate') }}{{ $drop_out_rate }} %
    -
    -
    - -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/procedures_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/procedures_report.blade.php deleted file mode 100755 index 5e8420d2..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/procedures_report.blade.php +++ /dev/null @@ -1,248 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('hmis_reports.procedures_report') }}

    -
    -
    - -
    -
    - -
    - @include('flash::message') -

    {{ __('hmis_reports.procedures_report') }}

    - -

    -
    -
    -
    - {{ Form::open(['url' => 'procedures_report','data-toggle'=>'validator']) }} -
    - {{ Form::label('search_by', __('hmis_reports.date')) }} - {{ Form::select('search_by', ['0'=>__('hmis_reports.last_24_hours'),'1'=>__('hmis_reports.custom_date'),'2'=>__('hmis_reports.custom_range')], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - -   - {{--
    - {{ Form::label('diagnosis',__('hmis_reports.diagnosis')) }} - {{ Form::select('diagnosis',$diagnoses, '',['class' => 'form-control','id' => 'diagnosis']) }} -
    --}} -
    - {{ Form::label('procedures',__('hmis_reports.procedures')) }} - {{ Form::select('procedure_id',$procedures,'',['class' => 'form-control', 'id' => 'procedure_id']) }} -
    -   -
    - {{ Form::label('performed_by',__('hmis_reports.performed_by')) }} - {{ Form::select('performed_by',$all_users,'',['class' => 'form-control', 'id' => 'performed_by']) }} -
    -   -

    - {{ Form::submit(__('hmis_reports.search'),['name' => 'filterBtn','class' => 'btn btn-success']) }} - {{ Form::close() }} -
    -
    - -
    - -
    -
    - {!! $search_string ?? $search_string !!} -
    - - - - - - {{-- --}} - - - - - - - - - - - @foreach($procedure_ipd as $procedure) - @php - $procedures = explode(",", $procedure->procedure_id); - $done_by = explode(",", $procedure->performed_by); - @endphp - - - - {{-- --}} - - - - - - - - - @endforeach - @foreach($procedure_opd as $procedure_op) - @php - $procedures = explode(",", $procedure_op->procedure_id); - $done_by = explode(",", $procedure_op->performed_id); - $done_status = explode(",", $procedure_op->performed); - @endphp - - - - - - - - - - - - @endforeach - -
    {{ __('hmis_reports.number') }}{{ __('hmis_reports.names') }}{{ __('hmis_reports.diagnoses') }}{{ __('hmis_reports.hidden_date') }}{{ __('hmis_reports.date') }}{{ __('hmis_reports.procedures') }}{{ __('hmis_reports.performed_by') }}{{ __('hmis_reports.done_from') }}{{ __('hmis_reports.done_status') }}
    {{ get_name($procedure->patient_id, 'id', 'number', 'patients') }}{{ get_name($procedure->patient_id, 'id', 'first_name', 'patients') }} {{ get_name($procedure->patient_id, 'id', 'last_name', 'patients') }}{{ isset($diagnoses[get_name($procedure->episode_id, 'episode_id', 'primary_diagnosis', 'consultations')]) ? $diagnoses[get_name($procedure->episode_id, 'episode_id', 'primary_diagnosis', 'consultations')] : "" }}{{ $procedure->procedure_date }}{{ !empty($procedure->procedure_date)? streamline_date($procedure->procedure_date) : streamline_date(Carbon\Carbon::createFromFormat('Y-m-d H:i:s', $procedure->created_at)->format('Y-m-d')) }} - @foreach ($procedures as $procedure_selected) -
  • {{ get_name($procedure_selected, 'id', 'name', 'procedures')}}
  • - @endforeach -
    - @foreach ($done_by as $performed_by) -
  • {{ get_full_name($performed_by, 'id', 'first_name', 'last_name', 'users')}}
  • - @endforeach -
    - IPD: {{ get_name($procedure->ward_id, 'id', 'name', 'wards') }} - - {{-- Perfomred status in IPD --}} - @foreach ($done_by as $performed_by) -
  • {!! $performed_by !== 0 ? ''.__("consultations.performed").'' : ''.__("consultations.not_performed").'' !!}
  • - @endforeach -
    {{ __('hmis_reports.view_patient') }}
    {{ get_name($procedure_op->patient_id, 'id', 'number', 'patients') }}{{ get_name($procedure_op->patient_id, 'id', 'first_name', 'patients') }} {{ get_name($procedure_op->patient_id, 'id', 'last_name', 'patients') }}{{ $procedure_op->procedure_date }}{{ !empty($procedure_op->procedure_date)? streamline_date($procedure_op->procedure_date) : streamline_date(Carbon\Carbon::createFromFormat('Y-m-d H:i:s', $procedure_op->created_at)->format('Y-m-d')) }} - @foreach ($procedures as $procedure_selected) -
  • {{ get_name($procedure_selected, 'id', 'name', 'procedures')}}
  • - @endforeach -
    - @foreach ($done_by as $performed_by) -
  • {{ get_full_name(get_name($performed_by, 'id', 'performed_by', 'staff_performed_services'), 'id', 'first_name', 'last_name', 'users')}}
  • - @endforeach -
    - OPD - - @foreach ($done_status as $performed) -
  • {!! $performed == 1 ? ''.__("consultations.performed").'' : ''.__("consultations.pending").'' !!}
  • - @endforeach -
    {{ __('hmis_reports.view_patient') }}
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/rdt_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/rdt_report.blade.php deleted file mode 100755 index 28cdea24..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/rdt_report.blade.php +++ /dev/null @@ -1,122 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -
    {{ __('hmis_reports.rdt_report') }}
    -
    -
    - -
    -
    -
    - @include('flash::message') -

    {{ __('hmis_reports.rdt_report') }}

    - -
    -
    - {{ __('hmis_reports.showing_results_from') }} {{ streamline_date($attendance_from) }} {{ __('hmis_reports.to') }} {{ streamline_date($attendance_to) }} -
    -
    - {{ Form::open(['url' => 'rdt_report','data-toggle'=>'validator']) }} - {{ Form::label('date_from',__('hmis_reports.from')) }} -
    -
    -
    - {{ Form::text('date_from','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-from']) }} - -
    -
    -
    - {{ Form::label('date_to',__('hmis_reports.to')) }} -
    -
    -
    - {{ Form::text('date_to','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-to']) }} - -
    -
    -
    - {{ Form::submit(__('hmis_reports.search'),['name' => 'filterBtn','class' => 'btn btn-success']) }} - {{ Form::close() }} -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    RDT{{ __('hmis_reports.male') }}{{ __('hmis_reports.female') }}
    {{ __('hmis_reports.children') }}{{ __('hmis_reports.adults') }}{{ __('hmis_reports.children') }}{{ __('hmis_reports.adults') }}
    - {{ __('hmis_reports.positive') }} - {{ $pos_male_child }}{{ $pos_male_adult }}{{ $pos_female_child }}{{ $pos_female_adult }}
    - {{ __('hmis_reports.negative') }} - {{ $neg_male_child }}{{ $neg_male_adult }}{{ $neg_female_child }}{{ $neg_female_adult }}
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/services_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/services_report.blade.php deleted file mode 100755 index 779e206c..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/services_report.blade.php +++ /dev/null @@ -1,242 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('hmis_reports.performed_services_report') }}

    -
    -
    - -
    -
    - -
    - @include('flash::message') -

    {{ __('hmis_reports.performed_services_report') }}

    - -

    -
    -
    -
    - {{ Form::open(['url' => 'performed_services_report','data-toggle'=>'validator']) }} -
    - {{ Form::label('search_by', __('hmis_reports.date')) }} - {{ Form::select('search_by', ['0'=>__('hmis_reports.last_24_hours'),'1'=>__('hmis_reports.custom_date'),'2'=>__('hmis_reports.custom_range')], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - -   -
    - {{ Form::label('services',__('hmis_reports.services')) }} - {{ Form::select('service_id',$services,'',['class' => 'form-control', 'id' => 'service_id']) }} -
    -   -
    - {{ Form::label('performed_by',__('hmis_reports.performed_by')) }} - {{ Form::select('performed_by',$all_users,'',['class' => 'form-control', 'id' => 'performed_by']) }} -
    -   -

    - {{ Form::submit(__('hmis_reports.search'),['name' => 'filterBtn','class' => 'btn btn-success']) }} - {{ Form::close() }} -
    -
    - -
    - -
    -
    - {!! $search_string ?? $search_string !!} -
    - - - - - - - - - - - - - - - - - @foreach($services_ipd as $service) - @php - $service_consumed = $service->service_id; - $performed_by = null; - if (str_contains($service_consumed, '__')){ - $service_and_performed_by_array = explode("__", $service_consumed); - $service_id = $service_and_performed_by_array[0]; - $performed_by = $service_and_performed_by_array[1]; - } else{ - $service_id = $service_consumed; - } - @endphp - - - - - - - - - - {{-- Perfomred status in IPD for future development --}} - - - - @endforeach - - @foreach($services_opd as $service_op) - @php - $service_id = $service_op->service_id; - @endphp - - - - - - - - - - {{-- Perfomred status in IPD for future development --}} - - - - @endforeach - -
    {{ __('hmis_reports.number') }}{{ __('hmis_reports.names') }}{{ __('hmis_reports.date') }}{{ __('hmis_reports.services') }}{{ __('hmis_reports.quantity') }}{{ __('hmis_reports.unit_price') }}{{ __('hmis_reports.performed_by') }}{{ __('hmis_reports.done_from') }}{{ __('hmis_reports.staff_fee') }}
    {{ get_name($service->patient_id, 'id', 'number', 'patients') }}{{ get_name($service->patient_id, 'id', 'first_name', 'patients') }} {{ get_name($service->patient_id, 'id', 'last_name', 'patients') }}{{ !is_null($service->dispensation_date) ? streamline_date($service->dispensation_date) : "" }} - {{ get_name($service_id, 'id', 'name', 'services')}} - {{ $service->quantity_given }}{{ ugandan_shillings($service->unit_price) }} - {{ $performed_by ? get_full_name($performed_by, 'id', 'first_name', 'last_name', 'users') : ""}} - - IPD: {{ get_name($service->ward_id, 'id', 'name', 'wards') }} - - {{ ugandan_shillings($service->staff_fee) }} - {{ __('investigations.select_patient') }}
    {{ get_name($service_op->patient_id, 'id', 'number', 'patients') }}{{ get_name($service_op->patient_id, 'id', 'first_name', 'patients') }} {{ get_name($service_op->patient_id, 'id', 'last_name', 'patients') }}{{ !is_null($service_op->date_performed) ? streamline_date($service_op->date_performed) : "" }} - {{ get_name($service_op->item_id, 'id', 'name', 'services')}} - 1{{ ugandan_shillings($service_op->item_price) }} - {{ get_full_name($service_op->performed_by, 'id', 'first_name', 'last_name', 'users') }} - - OPD - - {{ ugandan_shillings($service_op->performance_fee) }} - {{ __('investigations.select_patient') }}
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/streamline_outpatient_attendance_detailed_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/streamline_outpatient_attendance_detailed_report.blade.php deleted file mode 100755 index 1b398e3f..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/streamline_outpatient_attendance_detailed_report.blade.php +++ /dev/null @@ -1,95 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -
    {{ __('hmis_reports.streamline_outpatient_report_details') }}
    -
    -
    - -
    -
    -
    - @include('flash::message') -

    {{ __('hmis_reports.patient_details') }} {{ __('hmis_reports.from') }} {{ streamline_date($date_from) }} {{ __('hmis_reports.to') }} {{ streamline_date($date_to) }}

    - -
    -
    - - - - - - - - - - - - - - @php $counter = 1; @endphp - @if(count($patient_array) > 0) - @for($i = 0; $i < count($patient_array); $i++) - @php - $patient = Streamline\Models\Patient::find($patient_array[$i]); - $dob = new Carbon\Carbon($patient->date_of_birth); - @endphp - - - - - - - - - - @php $counter++; @endphp - @endfor - @else - - @endif - -
    {{ __('hmis_reports.patient_number') }}{{ __('hmis_reports.full_names') }}{{ __('hmis_reports.gender') }}{{ __('hmis_reports.age') }}{{ __('hmis_reports.phone') }}
    {{ $counter }}.{{ $patient->number }}{!! insurance_flag($patient->id) !!}{{ $patient->gender == 1 ? __('hmis_reports.male') : __('hmis_reports.female') }}{{ $dob->diffInYears(Carbon\Carbon::now()) }} {{ __('hmis_reports.years') }}{{ $patient->phone }} - {{ __('hmis_reports.select') }} -
    {{ __('hmis_reports.no_records_found') }}
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/streamline_outpatient_income_detailed_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/streamline_outpatient_income_detailed_report.blade.php deleted file mode 100755 index 1acb2c48..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/streamline_outpatient_income_detailed_report.blade.php +++ /dev/null @@ -1,255 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -
    {{ __('hmis_reports.streamline_outpatient_report_details') }}
    -
    -
    - -
    -
    -
    - -

    {{ __('hmis_reports.income_received_from') }} {{ get_name($department, 'id', 'name', 'clinics') }} {{ __('hmis_reports.from') }} {{ streamline_date($date_from) }} {{ __('hmis_reports.to') }} {{ streamline_date($date_to) }}

    - -
    -
    - - - - - - - - - - - - - - - - @php $counter = 1; $discount_total = 0; @endphp - @if($tag_id == 6) - @if(count($consultation_deposits) > 0) - @foreach($consultation_deposits as $deposit) - - - - @php - $item_ids_array = explode(',', $deposit->items_ids); - $item_amounts_array = explode(',', $deposit->items_amounts); - @endphp - - - - - - - @php $receipt_id = (int)$deposit->receipt_number; @endphp - - - @php $counter++; @endphp - @endforeach - @endif - @elseif($tag_id == 2) - @if(count($deposits) > 0) - @foreach($deposits as $deposit) - - - - @php - $item_ids_array = explode(',', $deposit->investigation_items); - $item_amounts_array = explode(',', $deposit->investigation_amounts); - @endphp - - - - - - - - - @php $counter++; @endphp - @endforeach - @endif - @elseif($tag_id == 3) - @if(count($deposits) > 0) - @foreach($deposits as $deposit) - - - - @php - $item_ids_array = explode(',', $deposit->treatment_items); - $item_amounts_array = explode(',', $deposit->treatment_subtotals); - @endphp - - - - - - - @php - $treatment_deposit = Streamline\Models\TreatmentDeposits::where(['receipt_number' => $deposit->receipt_number ])->first(); - $treatment_deposit_id = $treatment_deposit->id; - @endphp - - - @php $counter++; @endphp - @endforeach - @endif - @elseif($tag_id == 4) - @if(count($deposits) > 0) - @foreach($deposits as $deposit) - - - - @php - $item_ids_array = explode(',', $deposit->procedure_items); - $item_amounts_array = explode(',', $deposit->procedure_amounts); - @endphp - - - - - - - @php - $procedure_deposit = Streamline\Models\ProcedureDeposit::where(['receipt_number' => $deposit->receipt_number ])->first(); - $procedure_deposit_id = $procedure_deposit->id; - @endphp - - - @php $counter++; @endphp - @endforeach - @endif - @elseif(count($insurance_expenditure) > 0) - @foreach($insurance_expenditure as $expenditure) - - - - - - - - - - - - @endforeach - @else - - @endif - -
    {{ __('hmis_reports.receipt_number') }}{{ __('hmis_reports.item_name') }}{{ __('hmis_reports.amount') }}{{ __('hmis_reports.discount_if_any') }}{{ __('hmis_reports.staff') }}{{ __('hmis_reports.patient') }}{{ __('hmis_reports.date') }}
    {{ $counter }}.{{ $deposit->receipt_number }} -
      - @for($i = 0; $i < count($item_ids_array); $i++) -
    1. {{ get_name($item_ids_array[$i], 'id', 'name', 'services') }}
    2. - @endfor -
    -
    -
      - @for($i = 0; $i < count($item_amounts_array); $i++) -
    1. {{ $item_amounts_array[$i] }}
    2. - @endfor -
    -
    - {{ $discount = is_int(get_name($deposit->receipt_number, 'receipt_number', 'discount_amount', 'discounts')) ? get_name($deposit->receipt_number, 'receipt_number', 'discount_amount', 'discounts') : "" }} - @php $discount_total += is_int($discount) ? $discount : 0; @endphp - {{ get_full_name($deposit->created_by, 'id', 'first_name', 'last_name', 'users') }}{!! insurance_flag($deposit->patient_id) !!}{{ streamline_date($deposit->created_at) }} - {{ __('hmis_reports.print_receipt') }} -
    {{ $counter }}.{{ $deposit->receipt_number }} -
      - @for($i = 0; $i < count($item_ids_array); $i++) -
    1. {{ get_name($item_ids_array[$i], 'id', 'name', 'investigations') }}
    2. - @endfor -
    -
    -
      - @for($i = 0; $i < count($item_amounts_array); $i++) -
    1. {{ $item_amounts_array[$i] }}
    2. - @endfor -
    -
    - {{ $discount = is_int(get_name($deposit->receipt_number, 'receipt_number', 'discount_amount', 'discounts')) ? get_name($deposit->receipt_number, 'receipt_number', 'discount_amount', 'discounts') : "" }} - @php $discount_total += is_int($discount) ? $discount : 0; @endphp - {{ get_full_name($deposit->created_by, 'id', 'first_name', 'last_name', 'users') }}{!! insurance_flag($deposit->patient_id) !!}{{ streamline_date($deposit->created_at) }} - {{ __('hmis_reports.print_receipt') }} -
    {{ $counter }}.{{ $deposit->receipt_number }} -
      - @for($i = 0; $i < count($item_ids_array); $i++) -
    1. {{ get_name($item_ids_array[$i], 'id', 'name', 'drugs') }}
    2. - @endfor -
    -
    -
      - @for($i = 0; $i < count($item_amounts_array); $i++) -
    1. {{ $item_amounts_array[$i] }}
    2. - @endfor -
    -
    - {{ $discount = is_int(get_name($deposit->receipt_number, 'receipt_number', 'discount_amount', 'discounts')) ? get_name($deposit->receipt_number, 'receipt_number', 'discount_amount', 'discounts') : "" }} - @php $discount_total += is_int($discount) ? $discount : 0; @endphp - {{ get_full_name($deposit->created_by, 'id', 'first_name', 'last_name', 'users') }}{!! insurance_flag($deposit->patient_id) !!}{{ streamline_date($deposit->created_at) }} - {{ __('hmis_reports.print_receipt') }} -
    {{ $counter }}.{{ $deposit->receipt_number }} -
      - @for($i = 0; $i < count($item_ids_array); $i++) -
    1. {{ get_name($item_ids_array[$i], 'id', 'name', 'procedures') }}
    2. - @endfor -
    -
    -
      - @for($i = 0; $i < count($item_amounts_array); $i++) -
    1. {{ $item_amounts_array[$i] }}
    2. - @endfor -
    -
    - {{ $discount = is_int(get_name($deposit->receipt_number, 'receipt_number', 'discount_amount', 'discounts')) ? get_name($deposit->receipt_number, 'receipt_number', 'discount_amount', 'discounts') : "" }} - @php $discount_total += is_int($discount) ? $discount : 0; @endphp - {{ get_full_name($deposit->created_by, 'id', 'first_name', 'last_name', 'users') }}{!! insurance_flag($deposit->patient_id) !!}{{ streamline_date($deposit->created_at) }} - {{ __('hmis_reports.print_receipt') }} -
    {{ get_full_name($expenditure->created_by, 'id', 'first_name', 'last_name', 'users') }}{!! insurance_flag($expenditure->patient_id) !!}{{ streamline_date($expenditure->created_at) }} - {{ __('hmis_reports.print_receipt') }} -
    {{ __('hmis_reports.no_records_found') }}
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/streamline_outpatient_list_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/streamline_outpatient_list_report.blade.php deleted file mode 100755 index 725ea7dc..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/streamline_outpatient_list_report.blade.php +++ /dev/null @@ -1,292 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -
    {{ __('hmis_reports.streamline_outpatient_report_details') }}
    -
    -
    - -
    -
    -
    - -

    {{ __('hmis_reports.outpatient_list') }} for {{ $patient_category }}

    - -
    -
    - - - - - - - - - - - - - @php $counter = 1; @endphp - @if(isset($patient_array_adults)) - @if(count($patient_array_adults) > 0) - @foreach($patient_data as $patient ) - - - - - - - - - @php $counter++; @endphp - @endforeach - @endif - @endif - - @if(isset($patient_array_males)) - @if(count($patient_array_males) > 0) - @foreach($patient_data as $patient ) - - - - - - - - - @php $counter++; @endphp - @endforeach - @endif - @endif - - @if(isset($patient_array_females)) - @if(count($patient_array_females) > 0) - @foreach($patient_data as $patient ) - - - - - - - - - @php $counter++; @endphp - @endforeach - @endif - @endif - - @if(isset($patient_array_children)) - @if(count($patient_array_children) > 0) - @foreach($patient_data as $patient ) - - - - - - - - - @php $counter++; @endphp - @endforeach - @endif - @endif - - @if(isset($patient_array_children_males)) - @if(count($patient_array_children_males) > 0) - @foreach($patient_data as $patient ) - - - - - - - - - @php $counter++; @endphp - @endforeach - @endif - @endif - - @if(isset($patient_array_children_females)) - @if(count($patient_array_children_females) > 0) - @foreach($patient_data as $patient ) - - - - - - - - - @php $counter++; @endphp - @endforeach - @endif - @endif - - @if(isset($patient_array)) - @if(count($patient_array) > 0) - @foreach($patient_data as $patient ) - - - - - - - - - @php $counter++; @endphp - @endforeach - @endif - @endif - - @if(isset($patient_array_admitted)) - @if(count($patient_array_admitted) > 0) - @foreach($patient_data as $patient ) - - - - - - - - - @php $counter++; @endphp - @endforeach - @endif - @endif - - @if(isset($patient_array_admitted)) - @if(count($patient_array_admitted) > 0) - @foreach($patient_data as $patient ) - - - - - - - - - @php $counter++; @endphp - @endforeach - @endif - @endif - -
    {{ __('hmis_reports.patient') }}GenderTelephoneInsurance Status
    {{ $counter }}.{{ $patient->first_name }} {{ $patient->last_name }} @if ($patient->gender == 1) Male @else Female @endif{{ $patient->phone }} @if($patient->insurance_status == 1) Insured @else Not Insured @endif - {{ __('hmis_reports.select') }} -
    {{ $counter }}.{{ $patient->first_name }} {{ $patient->last_name }} @if ($patient->gender == 1) Male @else Female @endif{{ $patient->phone }} @if($patient->insurance_status == 1) Insured @else Not Insured @endif - {{ __('hmis_reports.select') }} -
    {{ $counter }}.{{ $patient->first_name }} {{ $patient->last_name }} @if ($patient->gender == 1) Male @else Female @endif{{ $patient->phone }} @if($patient->insurance_status == 1) Insured @else Not Insured @endif - {{ __('hmis_reports.select') }} -
    {{ $counter }}.{{ $patient->first_name }} {{ $patient->last_name }} @if ($patient->gender == 1) Male @else Female @endif{{ $patient->phone }} @if($patient->insurance_status == 1) Insured @else Not Insured @endif - {{ __('hmis_reports.select') }} -
    {{ $counter }}.{{ $patient->first_name }} {{ $patient->last_name }} @if ($patient->gender == 1) Male @else Female @endif{{ $patient->phone }} @if($patient->insurance_status == 1) Insured @else Not Insured @endif - {{ __('hmis_reports.select') }} -
    {{ $counter }}.{{ $patient->first_name }} {{ $patient->last_name }} @if ($patient->gender == 1) Male @else Female @endif{{ $patient->phone }} @if($patient->insurance_status == 1) Insured @else Not Insured @endif - {{ __('hmis_reports.select') }} -
    {{ $counter }}.{{ $patient->first_name }} {{ $patient->last_name }} @if ($patient->gender == 1) Male @else Female @endif{{ $patient->phone }} @if($patient->insurance_status == 1) Insured @else Not Insured @endif - {{ __('hmis_reports.select') }} -
    {{ $counter }}.{{ $patient->first_name }} {{ $patient->last_name }} @if ($patient->gender == 1) Male @else Female @endif{{ $patient->phone }} @if($patient->insurance_status == 1) Insured @else Not Insured @endif - {{ __('hmis_reports.select') }} -
    {{ $counter }}.{{ $patient->first_name }} {{ $patient->last_name }} @if ($patient->gender == 1) Male @else Female @endif{{ $patient->phone }} @if($patient->insurance_status == 1) Insured @else Not Insured @endif - {{ __('hmis_reports.select') }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/streamline_outpatient_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/streamline_outpatient_report.blade.php deleted file mode 100755 index b73553b5..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/streamline_outpatient_report.blade.php +++ /dev/null @@ -1,429 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_reports.streamline_outpatient_report') }}

    -
    -
    - -
    -
    - -
    - @include('flash::message') -
    -
    -

    {{ __('hmis_reports.from') }}: {{ streamline_date($attendance_from) }}

    -

    {{ __('hmis_reports.to') }}: {{ streamline_date($attendance_to) }}

    -

    {{ __('hmis_reports.clinic') }}: @if($clinic_id == 0) {{ __('hmis_reports.opd') }} @else {{ get_name($clinic_id, 'id', 'name', 'clinics') }} @endif -

    -

    @if($patient_type == 2) {{ __('hmis_reports.insured_patients') }} @else {{ __('hmis_reports.all_patients') }} @endif -

    -
    -
    -
    -
    - {{ Form::open(['url' => 'streamline_outpatient_report','data-toggle'=>'validator']) }} - {{ Form::label('date_from',__('hmis_reports.from')) }} -
    -
    -
    - {{ Form::text('date_from','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-from']) }} -
    -
    -
    - {{ Form::label('date_to',__('hmis_reports.to')) }} -
    -
    -
    - {{ Form::text('date_to','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-to']) }} -
    -
    -
    -
    -
    - {{--
    -
    - {{ Form::label('age',__('hmis_reports.age')) }} -
    -
    - {{ Form::select('age',$age,'',['class'=>'form-control', 'onclick' => 'checkAgeGroup(this.value)']) }} -
    -
    - {{ Form::label('gender',__('hmis_reports.gender')) }} -
    -
    - {{ Form::select('gender',['' => __('hmis_reports.select'), '0' => __('hmis_reports.all'), '1' => __('hmis_reports.male'),'2' => __('hmis_reports.female')],'',['class'=>'form-control']) }} -
    -
    --}} -
    -
    -
    - {{ Form::label('clinic_id',__('hmis_reports.clinic')) }} -
    -
    - {{ Form::select('clinic_id',$clinics,'',['class' => 'form-control', 'required']) }} -
    -
    - {{ Form::label('patient_type',__('hmis_reports.patients')) }} -
    -
    - {{ Form::select('patient_type',[0 => __('hmis_reports.select'),1 => __('hmis_reports.all_patients'), 2 => __('hmis_reports.insured_patients')],'',['class' => 'form-control', 'required']) }} -
    -
    - {{ Form::submit('Search',['class' => 'btn btn-success']) }} - {{ Form::close() }} -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - - - - - - -
    {{ __('hmis_reports.adults_seen') }} - @if(count($patient_array_adults) > 0) - {{ Form::open(['method'=>'post','route' => 'streamline_outpatient_details']) }} - - {{ Form::hidden('to', $attendance_to) }} - {{ Form::hidden('from', $attendance_from) }} - {{ Form::hidden('department', $clinic_id) }} - {{ Form::hidden('patient_array_adults', json_encode($patient_array_adults)) }} - {{ Form::submit(count($patient_array_adults), ['class'=>'btn btn-link']) }} - - {{ Form::close() }} - @else - {{ count($patient_array_adults) }} - @endif -
    {{ __('hmis_reports.males_seen') }} - @if(count($patient_array_males) > 0) - {{ Form::open(['method'=>'post','route' => 'streamline_outpatient_details']) }} - - {{ Form::hidden('to', $attendance_to) }} - {{ Form::hidden('from', $attendance_from) }} - {{ Form::hidden('department', $clinic_id) }} - {{ Form::hidden('patient_array_males', json_encode($patient_array_males)) }} - {{ Form::submit(count($patient_array_males), ['class'=>'btn btn-link']) }} - - {{ Form::close() }} - @else - {{ count($patient_array_males) }} - @endif -
    {{ __('hmis_reports.females_seen') }} - @if(count($patient_array_females) > 0) - {{ Form::open(['method'=>'post','route' => 'streamline_outpatient_details']) }} - - {{ Form::hidden('to', $attendance_to) }} - {{ Form::hidden('from', $attendance_from) }} - {{ Form::hidden('department', $clinic_id) }} - {{ Form::hidden('patient_array_females', json_encode($patient_array_females)) }} - {{ Form::submit(count($patient_array_females), ['class'=>'btn btn-link']) }} - - {{ Form::close() }} - @else - {{ count($patient_array_females) }} - @endif -
    -
    -
    -
    -
    - - - - - - - - - - - - - -
    {{ __('hmis_reports.children_seen') }} - @if(count($patient_array_children) > 0) - {{ Form::open(['method'=>'post','route' => 'streamline_outpatient_details']) }} - - {{ Form::hidden('to', $attendance_to) }} - {{ Form::hidden('from', $attendance_from) }} - {{ Form::hidden('department', $clinic_id) }} - {{ Form::hidden('patient_array_children', json_encode($patient_array_children)) }} - {{ Form::submit(count($patient_array_children), ['class'=>'btn btn-link']) }} - - {{ Form::close() }} - @else - {{ count($patient_array_children) }} - @endif -
    {{ __('hmis_reports.male_children_seen') }} - @if(count($patient_array_children_males) > 0) - {{ Form::open(['method'=>'post','route' => 'streamline_outpatient_details']) }} - - {{ Form::hidden('to', $attendance_to) }} - {{ Form::hidden('from', $attendance_from) }} - {{ Form::hidden('department', $clinic_id) }} - {{ Form::hidden('patient_array_children_males', json_encode($patient_array_children_males)) }} - {{ Form::submit(count($patient_array_children_males), ['class'=>'btn btn-link']) }} - - {{ Form::close() }} - @else - {{ count($patient_array_children_males) }} - @endif -
    {{ __('hmis_reports.female_children_seen') }} - @if(count($patient_array_children_females) > 0) - {{ Form::open(['method'=>'post','route' => 'streamline_outpatient_details']) }} - - {{ Form::hidden('to', $attendance_to) }} - {{ Form::hidden('from', $attendance_from) }} - {{ Form::hidden('department', $clinic_id) }} - {{ Form::hidden('patient_array_children_females', json_encode($patient_array_children_females)) }} - {{ Form::submit(count($patient_array_children_females), ['class'=>'btn btn-link']) }} - - {{ Form::close() }} - @else - {{ count($patient_array_children_females) }} - @endif -
    -
    -
    -
    -
    - - - - - - - - - -
    {{ __('hmis_reports.total_seen') }} - @if(count($patient_array) > 0) - {{ Form::open(['method'=>'post','route' => 'streamline_outpatient_details']) }} - - {{ Form::hidden('to', $attendance_to) }} - {{ Form::hidden('from', $attendance_from) }} - {{ Form::hidden('department', $clinic_id) }} - {{ Form::hidden('patient_array', json_encode($patient_array)) }} - {{ Form::submit(count($patient_array), ['class'=>'btn btn-link']) }} - - {{ Form::close() }} - @else - {{ count($patient_array) }} - @endif -
    {{ __('hmis_reports.total_admitted') }} - @if(count($patient_array_admitted) > 0) - {{ Form::open(['method'=>'post','route' => 'streamline_outpatient_details']) }} - - {{ Form::hidden('to', $attendance_to) }} - {{ Form::hidden('from', $attendance_from) }} - {{ Form::hidden('department', $clinic_id) }} - {{ Form::hidden('patient_array_admitted', json_encode($patient_array_admitted)) }} - {{ Form::submit(count($patient_array_admitted), ['class'=>'btn btn-link']) }} - - {{ Form::close() }} - @else - {{ count($patient_array_admitted) }} - @endif -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - - - - - - -
    {{ __('hmis_reports.consultation_costs') }} - @if($total_costs_consultation > 0) - {{ Form::open(['method'=>'post','route' => 'streamline_outpatient_income_details']) }} - - {{ Form::hidden('dates', ($attendance_from)."/".$attendance_to) }} - {{ Form::hidden('tag_id', 6) }} - {{ Form::hidden('patient_filter', json_encode($patient_array)) }} - {{ Form::hidden('department', $clinic_id) }} - {{ Form::hidden('insured_or_all', $patient_type) }} - {{ Form::submit(ugandan_shillings($total_costs_consultation), ['class'=>'btn btn-link']) }} - - {{ Form::close() }} - @else - {{ ugandan_shillings($total_costs_consultation) }} - @endif -
    {{ __('hmis_reports.other_services_costs') }} - @if($total_costs_services > 0) - {{ Form::open(['method'=>'post','route' => 'streamline_outpatient_income_details']) }} - - {{ Form::hidden('dates', ($attendance_from)."/".$attendance_to) }} - {{ Form::hidden('tag_id', 8) }} - {{ Form::hidden('patient_filter', json_encode($patient_array)) }} - {{ Form::hidden('department', $clinic_id) }} - {{ Form::hidden('insured_or_all', $patient_type) }} - {{ Form::submit(ugandan_shillings($total_costs_services), ['class'=>'btn btn-link']) }} - - {{ Form::close() }} - @else - {{ ugandan_shillings($total_costs_services) }} - @endif -
    {{ __('hmis_reports.investigation_costs') }} - @if($total_costs_investigations > 0) - {{ Form::open(['method'=>'post','route' => 'streamline_outpatient_income_details']) }} - - {{ Form::hidden('dates', ($attendance_from)."/".$attendance_to) }} - {{ Form::hidden('tag_id', 2) }} - {{ Form::hidden('patient_filter', json_encode($patient_array)) }} - {{ Form::hidden('department', $clinic_id) }} - {{ Form::hidden('insured_or_all', $patient_type) }} - {{ Form::submit(ugandan_shillings($total_costs_investigations), ['class'=>'btn btn-link']) }} - - {{ Form::close() }} - @else - {{ ugandan_shillings($total_costs_investigations) }} - @endif -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - -
    {{ __('hmis_reports.treatment_costs') }} - @if($total_costs_drug > 0) - {{ Form::open(['method'=>'post','route' => 'streamline_outpatient_income_details']) }} - - {{ Form::hidden('dates', ($attendance_from)."/".$attendance_to) }} - {{ Form::hidden('tag_id', 3) }} - {{ Form::hidden('patient_filter', json_encode($patient_array)) }} - {{ Form::hidden('department', $clinic_id) }} - {{ Form::hidden('insured_or_all', $patient_type) }} - {{ Form::submit(ugandan_shillings($total_costs_drug), ['class'=>'btn btn-link']) }} - - {{ Form::close() }} - @else - {{ ugandan_shillings($total_costs_drug) }} - @endif -
    {{ __('hmis_reports.procedure_costs') }} - @if($total_costs_procedures > 0) - {{ Form::open(['method'=>'post','route' => 'streamline_outpatient_income_details']) }} - - {{ Form::hidden('dates', ($attendance_from)."/".$attendance_to) }} - {{ Form::hidden('tag_id', 4) }} - {{ Form::hidden('patient_filter', json_encode($patient_array)) }} - {{ Form::hidden('department', $clinic_id) }} - {{ Form::hidden('insured_or_all', $patient_type) }} - {{ Form::submit(ugandan_shillings($total_costs_procedures), ['class'=>'btn btn-link']) }} - - {{ Form::close() }} - @else - {{ ugandan_shillings($total_costs_procedures) }} - @endif -
    {{ __('hmis_reports.sundries_costs') }} - @if($total_costs_sundries > 0) - {{ Form::open(['method'=>'post','route' => 'streamline_outpatient_income_details']) }} - - {{ Form::hidden('dates', ($attendance_from)."/".$attendance_to) }} - {{ Form::hidden('tag_id', 5) }} - {{ Form::hidden('patient_filter', json_encode($patient_array)) }} - {{ Form::hidden('department', $clinic_id) }} - {{ Form::hidden('insured_or_all', $patient_type) }} - {{ Form::submit(ugandan_shillings($total_costs_sundries), ['class'=>'btn btn-link']) }} - - {{ Form::close() }} - @else - {{ ugandan_shillings($total_costs_sundries) }} - @endif -
    {{ __('hmis_reports.total_cost') }} - {{ ugandan_shillings($total_costs) }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/streamline_reports.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/streamline_reports.blade.php deleted file mode 100755 index d2398d9d..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/streamline_reports.blade.php +++ /dev/null @@ -1,394 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_reports.streamline_reports') }}

    -
    -
    - -
    -
    - -
    -
    -
    - @if( Auth::user()->can('view-hmis-reports')) - {{ __('hmis_reports.hmis_reports') }} - @endif - @if( Auth::user()->can('view-memorised-reports')) - {{ __('hmis_reports.memorised_reports') }} - @endif -
    - @include('flash::message') - - {{ Form::open(['route' => 'streamline_reports.streamline_reports_details']) }} - -
    -
    -
    - {{ Form::label('report_category',__('hmis_reports.select_report_category')) }} - {{ Form::select('report_category',[''=> __('hmis_reports.select'), '1'=>'Primary Diagnosis', '2'=>__('hmis_reports.treatment'), '3'=>__('hmis_reports.laboratory_tests'), '4' => 'Patient Visits', '5' => 'Symptoms', '6' => 'Doctors Report'],'',['class'=>'form-control compulsory', 'id'=>'report_category', 'required']) }} -
    -
    -
    -
    - {{ Form::label('diagnosis',__('hmis_reports.select_diagnosis')) }} - {{ Form::select('diagnosis',$diagnoses,'',['class'=>'form-control compulsory', 'id' => 'diagnosis']) }} -
    - -
    - {{ Form::label('treatment',__('hmis_reports.select_drug_issued')) }} - {{ Form::select('treatment',$treatments,'',['class'=>'form-control compulsory', 'id' => 'treatment']) }} -
    - -
    - {{ Form::label('lab_test',__('hmis_reports.select_test_name')) }} - {{ Form::select('lab_test',$investigations,'',['class'=>'form-control compulsory', 'id' => 'lab_test']) }} -
    - -
    - {{ Form::label('symptoms',__('hmis_reports.symptoms')) }} - {{ Form::select('symptoms',$symptoms,'',['class'=>'form-control compulsory', 'id' => 'symptoms']) }} -
    -
    -
    - -
    -
    -
    - {{ Form::label('district',__('hmis_reports.district')) }} - -
    -
    -
    -
    - {{ Form::label('county',__('hmis_reports.county')) }} - -
    -
    -
    -
    - {{ Form::label('sub_county',__('hmis_reports.subcounty')) }} - -
    -
    -
    -
    - {{ Form::label('parish',__('hmis_reports.parish')) }} - -
    -
    -
    -
    - {{ Form::label('village',__('hmis_reports.village')) }} - -
    -
    -
    - -
    -
    -
    - {{ Form::label('age',__('hmis_reports.age')) }} - {{ Form::select('age',$age,'',['class'=>'form-control', 'onclick' => 'checkAgeGroup(this.value)']) }} -
    -
    -
    -
    - {{ Form::label('gender',__('hmis_reports.gender')) }} - {{ Form::select('gender',['0' => __('hmis_reports.all'), '1' => __('hmis_reports.male'),'2' => __('hmis_reports.female')],0,['class'=>'form-control']) }} -
    -
    -
    -
    - {{ Form::label('in_out_patient',__('hmis_reports.inpatient_outpatient')) }} - {{ Form::select('in_out_patient',['0' => __('hmis_reports.all'), '1' => __('hmis_reports.inpatient'),'2' => __('hmis_reports.outpatient')],0,['class'=>'form-control']) }} -
    -
    -
    -
    - {{ Form::label('patient_category',__('finance.select_patient_category')) }} - {{ Form::select('patient_category', $patient_categories,'',['class'=>'form-control compulsory', 'id' => 'patient_category']) }} -
    -
    -
    - -
    -
    -
    - {{ Form::label('custom_reg_fields', __('patients.patient_registration_fields')) }} - {{ Form::select('custom_reg_fields', $custom_reg_fields, 0,['class'=>'form-control compulsory', 'id' => 'custom_reg_fields']) }} -
    -
    - -
    - -
    - - -
    -
    - {{ Form::label('start_date',__('hmis_reports.start_date')) }} -
    - {{ Form::text('start_date','',['class' => 'form-control', 'required','readonly','id'=>'datepicker-from']) }} -
    -
    -
    -
    -
    - {{ Form::label('end_date',__('hmis_reports.end_date')) }} -
    - {{ Form::text('end_date','',['class' => 'form-control', 'required','readonly','id'=>'datepicker-to']) }} -
    -
    -
    -
    - - {{ Form::button(__('hmis_reports.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('hmis_reports.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/surgery_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/surgery_report.blade.php deleted file mode 100755 index 29906bde..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/surgery_report.blade.php +++ /dev/null @@ -1,212 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -

    {{ __('hmis_reports.surgery_report') }}

    -
    -
    - -
    -
    - -
    - @include('flash::message') -

    {{ __('hmis_reports.surgery_report') }}

    - -
    -
    - {{ Form::open(['url' => 'surgery_report','data-toggle'=>'validator']) }} -
    - {{ Form::label('search_by', __('hmis_reports.date')) }} - {{ Form::select('search_by', ['0'=>__('hmis_reports.today'),'1'=>__('hmis_reports.custom_date'),'2'=>__('hmis_reports.custom_range')], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - -
    - {{ Form::label('diagnosis',__('hmis_reports.diagnosis')) }} - {{ Form::select('diagnosis',$diagnoses, '',['class' => 'form-control','id' => 'diagnosis']) }} -
    -
    - {{ Form::label('surgical_operation',__('hmis_reports.surgical_operation')) }} - {{ Form::select('surgical_operation',$procedures,'',['class' => 'form-control', 'id' => 'surgical_operation']) }} -
    -
    - {{ Form::label('surgeon',__('hmis_reports.surgeon')) }} - {{ Form::select('surgeon',$all_users,'',['class' => 'form-control', 'id' => 'surgeon']) }} -
    -
    - {{ Form::label('assistant_surgeon',__('surgery.assistant_surgeon')) }} - {{ Form::select('assistant_surgeon',$all_users,'',['class' => 'form-control', 'id' => 'assistant_surgeon']) }} -
    -

    - {{ Form::submit(__('hmis_reports.search'),['name' => 'filterBtn','class' => 'btn btn-success']) }} - {{ Form::close() }} -
    -
    - -
    - -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - @foreach($surgery_records as $surgery) - - - - - - - - - - - - - - - - - @endforeach - -
    {{ __('hmis_reports.number') }}{{ __('hmis_reports.names') }}{{ __('hmis_reports.diagnoses') }}{{ __('hmis_reports.hidden_date') }}{{ __('hmis_reports.date') }}{{ __('hmis_reports.operation') }}{{ __('hmis_reports.surgeon') }}{{ __('surgery.assistant_surgeon') }}{{ __('hmis_reports.theatre') }}{{ __('hmis_reports.to') }}{{ __('hmis_reports.wound') }}{{ __('hmis_reports.outcome') }}{{ __('hmis_reports.alert_comment_notes') }}
    {{ $surgery->number }}{{ $surgery->first_name }} {{ $surgery->last_name }}{{ $diagnoses[$surgery->primary_diagnosis] ?? "" }}{{ $surgery->date_surgery_completed }}{{ !is_null($surgery->date_surgery_completed) ? streamline_date($surgery->date_surgery_completed) : "" }}{{ $procedures[$surgery->procedure_id] ?? "" }}{{ $all_users[$surgery->surgeon] ?? "" }}{{ $all_users[$surgery->assistant_surgeon] ?? "" }}{{ $theatre_locations[$surgery->theatre_location] ?? "" }} - {{ get_name($surgery->outcome, 'id', 'name', 'outcomes') }} - - {!! read_more($surgery->comments, 'comments_short' . $surgery->id, 'comments_long' . $surgery->id) !!} - - - {{ __('hmis_reports.view_details') }}
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/symptoms_drill_down.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/symptoms_drill_down.blade.php deleted file mode 100755 index a436211b..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/symptoms_drill_down.blade.php +++ /dev/null @@ -1,111 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    Symptoms report details

    -
    - -
    - -
    -

    Symptom: {{ get_name($symptom_id, 'id', 'name', 'symptoms') }}

    - -
    - - - - - - - - - - - - - - - - @foreach($symptoms as $symptom) - - - - - - - - - - - - @endforeach - -
    {{ __('hmis_reports.patient_number') }}{{ __('hmis_reports.full_names') }}{{ __('hmis_reports.gender') }}{{ __('hmis_reports.age') }}{{ __('hmis_reports.next_of_kin') }}{{ __('hmis_reports.custom_field') }}{{ __('hmis_reports.date') }}
    {{ $symptom->number }}{!! insurance_flag($symptom->patient_id) !!} ({{ $symptom->phone }}){{ $symptom->gender == 1 ? __('hmis_reports.male') : __('hmis_reports.female') }}{{ get_patients_age($symptom->date_of_birth) }}{{ $symptom->next_of_kin }} ({{ $symptom->phone_of_next_of_kin }}){{ $custom_field?? '' }}{{ streamline_date_time($symptom->created_at) }} - {{ __('hmis_reports.select') }} - {{ __('patients.details') }}
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/symptoms_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/symptoms_report.blade.php deleted file mode 100755 index fb8b6368..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/symptoms_report.blade.php +++ /dev/null @@ -1,98 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    Symptoms report

    -
    - -
    - -
    -
    -
    - -

    {{ __('hmis_reports.search_criteria') }} : {{ $criteria }}    {{ __('hmis_reports.clear_search') }}

    - - {{--
    --}} - - - - - - - - - @php $total = 0; @endphp - @for($i = 0; $i < count($symptoms_id_array); $i++) - @php $total += $values_array[$i]; @endphp - - - - - @endfor - - - - - -
    {{ __('hmis_reports.symptom_name') }}{{ __('hmis_reports.test_performed') }}
    {{ ucfirst(get_name($symptoms_id_array[$i], 'id', 'name', 'symptoms')) }} - {{ $values_array[$i] }} -
    {{ __('hmis_reports.totals') }}{{ $total }}
    - {{--
    --}} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/tb_screening_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/tb_screening_report.blade.php deleted file mode 100755 index 45d29b74..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/tb_screening_report.blade.php +++ /dev/null @@ -1,856 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_reports.tb_screening_report') }}

    -
    -
    - -
    -
    - -
    - @include('flash::message') - {{ Form::open(['route' => 'streamline_reports.tb_screening_report' , 'data-toggle' => 'validator']) }} -
    -
    -
    - {{ Form::label('search_by', __('patient_flow_monitoring.date')) }} - {{ Form::select('search_by', ['0'=>'Last 24 hours', '4'=>'TODAY', '3'=>'YESTERDAY', '1'=>'Custom Date', '2'=>'Custom Range'], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - -
    -
    - {{ Form::button(__('hmis_reports.search'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    - {{ Form::close() }} - - -
    - - {{-- fetched data here --}} -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    TB Screening at OPD < 5 years 6 - 9 years 10 - 14 Years 15 - 19 Years 20+ Years
    MFMFMFMFMF
    - TP01. Number screened for TB in OPD - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_triage']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $below_5_males_screened_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_triage']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $below_5_females_screened_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_triage']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_5_and_9_males_screened_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_triage']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_5_and_9_females_screened_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_triage']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_10_and_14_males_screened_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_triage']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_10_and_14_females_screened_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_triage']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_15_and_19_males_screened_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_triage']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_15_and_19_females_screened_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_triage']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $above_19_males_screened_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_triage']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $above_19_females_screened_array)) }} - - {{ Form::close() }} -
    TP02. Number of presumptive TB cases identified from OPD - - {{ Form::open(['route' => 'streamline_reports.tb_screening_triage_presumptives']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $below_5_males_presumptives_identified_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_triage_presumptives']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $below_5_females_presumptives_identified_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_triage_presumptives']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_5_and_9_males_presumptives_identified_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_triage_presumptives']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_5_and_9_females_presumptives_identified_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_triage_presumptives']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_10_and_14_males_presumptives_identified_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_triage_presumptives']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_10_and_14_females_presumptives_identified_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_triage_presumptives']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_15_and_19_males_presumptives_identified_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_triage_presumptives']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_15_and_19_females_presumptives_identified_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_triage_presumptives']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $above_19_males_presumptives_identified_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_triage_presumptives']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $above_19_females_presumptives_identified_array)) }} - - {{ Form::close() }} -
    TP03. Number of presumptive cases diagnosed with TB from OPD - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $below_5_males_presumptives_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $below_5_females_presumptives_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_5_and_9_males_presumptives_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_5_and_9_females_presumptives_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_10_and_14_males_presumptives_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_10_and_14_females_presumptives_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_15_and_19_males_presumptives_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_15_and_19_females_presumptives_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $above_19_males_presumptives_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $above_19_females_presumptives_array)) }} - - {{ Form::close() }} -
    Number of Possible TB from OPD - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $below_5_males_possible_TB_at_OPD_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $below_5_females_possible_TB_at_OPD_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_5_and_9_males_possible_TB_at_OPD_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_5_and_9_females_possible_TB_at_OPD_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_10_and_14_males_possible_TB_at_OPD_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_10_and_14_females_possible_TB_at_OPD_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_15_and_19_males_possible_TB_at_OPD_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_15_and_19_females_possible_TB_at_OPD_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $above_19_males_possible_TB_at_OPD_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'OPD') }} - {{ Form::hidden('record_ids', implode(",", $above_19_females_possible_TB_at_OPD_array)) }} - - {{ Form::close() }} -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    TB Screening at IPD < 5 years 6 - 9 years 10 - 14 Years 15 - 19 Years 20+ Years
    MFMFMFMFMF
    - TP01. Number screened for TB in IPD - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 -
    TP02. Number of presumptive TB cases identified from IPD - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 -
    TP03. Number of presumptive cases diagnosed with TB from IPD - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'IPD') }} - {{ Form::hidden('record_ids', implode(",", $below_5_males_inpatient_presumptives_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'IPD') }} - {{ Form::hidden('record_ids', implode(",", $below_5_females_inpatient_presumptives_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'IPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_5_and_9_males_inpatient_presumptives_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'IPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_5_and_9_females_inpatient_presumptives_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'IPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_10_and_14_males_inpatient_presumptives_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'IPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_10_and_14_females_inpatient_presumptives_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'IPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_15_and_19_males_inpatient_presumptives_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'IPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_15_and_19_females_inpatient_presumptives_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'IPD') }} - {{ Form::hidden('record_ids', implode(",", $above_19_males_inpatient_presumptives_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'IPD') }} - {{ Form::hidden('record_ids', implode(",", $above_19_females_inpatient_presumptives_array)) }} - - {{ Form::close() }} -
    Number of Possible TB from IPD - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'IPD') }} - {{ Form::hidden('record_ids', implode(",", $below_5_males_possible_TB_at_IPD_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'IPD') }} - {{ Form::hidden('record_ids', implode(",", $below_5_females_possible_TB_at_IPD_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'IPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_5_and_9_males_possible_TB_at_IPD_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'IPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_5_and_9_females_possible_TB_at_IPD_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'IPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_10_and_14_males_possible_TB_at_IPD_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'IPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_10_and_14_females_possible_TB_at_IPD_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'IPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_15_and_19_males_possible_TB_at_IPD_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'IPD') }} - {{ Form::hidden('record_ids', implode(",", $btn_15_and_19_females_possible_TB_at_IPD_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'IPD') }} - {{ Form::hidden('record_ids', implode(",", $above_19_males_possible_TB_at_IPD_array)) }} - - {{ Form::close() }} - - {{ Form::open(['route' => 'streamline_reports.tb_screening_report_presumptive']) }} - {{ Form::hidden('section', 'IPD') }} - {{ Form::hidden('record_ids', implode(",", $above_19_females_possible_TB_at_IPD_array)) }} - - {{ Form::close() }} -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/tb_screening_report_details.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/tb_screening_report_details.blade.php deleted file mode 100755 index c5903f4e..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/tb_screening_report_details.blade.php +++ /dev/null @@ -1,180 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_reports.tb_screening_report_details') }}

    -
    - -
    - -
    - @include('flash::message') - {{-- fetched data here --}} -
    -
    - - - - - - - - - - - - - @if ($section == "OPD") - @for ($i = 0; $i < count($record_ids); $i++) - @php - $consultation = \Streamline\Models\Consultation::withTrashed()->find($record_ids[$i]); - @endphp - - - - - - - - - @endfor - @elseif ($section == "IPD") - @for ($i = 0; $i < count($record_ids); $i++) - @php - $inpatient_info = \Streamline\Models\InpatientInfo::find($record_ids[$i]); - @endphp - - - - - - - - - @endfor - @endif - -
    #Patient NamePatient AgeAssessed OnTB outcome
    {{ $i + 1}} - {{ get_full_name($consultation->patient_id, "id", "first_name", "last_name", "patients") }} ({{ get_name($consultation->patient_id, "id", "number", "patients")}}) - - @php - $patient = \Streamline\Models\Patient::withTrashed()->find($consultation->patient_id); - $age = get_patients_age($patient->date_of_birth); - @endphp - {{ $age }} - - {{ streamline_date($consultation->created_at) }} from episode started on {{ streamline_date(get_name($consultation->episode_id, "id", "created_at", "patient_episodes")) }} - - @if ($consultation->tb_status_assessment == 1) - Definite TB - @elseif($consultation->tb_status_assessment == 2) - Possible TB - @endif - - {{ __('patients.select') }} -
    {{ $i + 1}} - {{ get_full_name($inpatient_info->patient_id, "id", "first_name", "last_name", "patients") }} ({{ get_name($inpatient_info->patient_id, "id", "number", "patients")}}) - - @php - $patient = \Streamline\Models\Patient::withTrashed()->find($inpatient_info->patient_id); - $age = get_patients_age($patient->date_of_birth); - @endphp - {{ $age }} - - {{ streamline_date($inpatient_info->created_at) }} from episode started on {{ streamline_date(get_name($inpatient_info->episode_id, "id", "created_at", "patient_episodes")) }} - - @if ($inpatient_info->tb_status_assessment == 1) - Definite TB - @elseif($inpatient_info->tb_status_assessment == 2) - Possible TB - @endif - - {{ __('patients.select') }} -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/tb_screening_report_triage_details.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/tb_screening_report_triage_details.blade.php deleted file mode 100755 index 45fdbc68..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/tb_screening_report_triage_details.blade.php +++ /dev/null @@ -1,180 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_reports.tb_screening_report_details') }}

    -
    - -
    - -
    - @include('flash::message') - {{-- fetched data here --}} -
    -
    - - - - - - - - - - - - - @if ($section == "OPD") - @for ($i = 0; $i < count($record_ids); $i++) - @php - $triage = \Streamline\Models\Triage::withTrashed()->find($record_ids[$i]); - @endphp - - - - - - - - - @endfor - @elseif ($section == "IPD") - @for ($i = 0; $i < count($record_ids); $i++) - @php - $triage = \Streamline\Models\Triage::find($record_ids[$i]); - @endphp - - - - - - - - - @endfor - @endif - -
    #Patient NamePatient AgeAssessed OnTB outcome
    {{ $i + 1}} - {{ get_full_name($triage->patient_id, "id", "first_name", "last_name", "patients") }} ({{ get_name($triage->patient_id, "id", "number", "patients")}}) - - @php - $patient = \Streamline\Models\Patient::withTrashed()->find($triage->patient_id); - $age = get_patients_age($patient->date_of_birth); - @endphp - {{ $age }} - - {{ streamline_date($triage->created_at) }} from episode started on {{ streamline_date(get_name($triage->episode_id, "id", "created_at", "patient_episodes")) }} - - @if ($triage->any_tb_sysmptoms == 0) - No TB Signs - @elseif($triage->any_tb_sysmptoms == 1) - TB Signs - @endif - - {{ __('patients.select') }} -
    {{ $i + 1}} - {{ get_full_name($triage->patient_id, "id", "first_name", "last_name", "patients") }} ({{ get_name($triage->patient_id, "id", "number", "patients")}}) - - @php - $patient = \Streamline\Models\Patient::withTrashed()->find($triage->patient_id); - $age = get_patients_age($patient->date_of_birth); - @endphp - {{ $age }} - - {{ streamline_date($triage->created_at) }} from episode started on {{ streamline_date(get_name($triage->episode_id, "id", "created_at", "patient_episodes")) }} - - @if ($triage->any_tb_sysmptoms == 0) - No TB Signs - @elseif($triage->any_tb_sysmptoms == 1) - Has TB Signs - @endif - - {{ __('patients.select') }} -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/tb_screening_triage_presumptives.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/tb_screening_triage_presumptives.blade.php deleted file mode 100755 index ab9efa16..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/tb_screening_triage_presumptives.blade.php +++ /dev/null @@ -1,205 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_reports.tb_screening_report_details') }}

    -
    - -
    - -
    - @include('flash::message') - {{-- fetched data here --}} -
    -
    - - - - - - - - - - - - - @if ($section == "OPD") - @for ($i = 0; $i < count($record_ids); $i++) - @php - $triage = \Streamline\Models\Triage::withTrashed()->find($record_ids[$i]); - @endphp - - - - - - - - - @endfor - @elseif ($section == "IPD") - @for ($i = 0; $i < count($record_ids); $i++) - @php - $triage = \Streamline\Models\Triage::find($record_ids[$i]); - @endphp - - - - - - - - - @endfor - @endif - -
    #Patient NamePatient AgeAssessed OnTB outcome
    {{ $i + 1}} - {{ get_full_name($triage->patient_id, "id", "first_name", "last_name", "patients") }} ({{ get_name($triage->patient_id, "id", "number", "patients")}}) - - @php - $patient = \Streamline\Models\Patient::withTrashed()->find($triage->patient_id); - $age = get_patients_age($patient->date_of_birth); - @endphp - {{ $age }} - - {{ streamline_date($triage->created_at) }} from episode started on {{ streamline_date(get_name($triage->episode_id, "id", "created_at", "patient_episodes")) }} - - @if ($triage->cough_for_2_weeks == 1) -
  • - A cough for more than two weeks -
  • - @endif - @if($triage->fever_for_2_weeks == 1) -
  • - Persistent fevers for 2 weeks or more -
  • - @endif - @if($triage->tb_weight_loss == 1) -
  • - Noticeable weight loss of more than 3 Kg -
  • - @endif - @if($triage->tb_poor_weight_gain == 1) -
  • - Poor weight gain in the last one month -
  • - @endif - @if($triage->tb_excessive_night_sweats == 1) -
  • - Excessive night sweats for three weeks or more -
  • - @endif - @if($triage->tb_contact_with_tb_person == 1) -
  • - Contact with a person with pulmonary TB or chronic cough -
  • - @endif -
    - {{ __('patients.select') }} -
    {{ $i + 1}} - {{ get_full_name($triage->patient_id, "id", "first_name", "last_name", "patients") }} ({{ get_name($triage->patient_id, "id", "number", "patients")}}) - - @php - $patient = \Streamline\Models\Patient::withTrashed()->find($triage->patient_id); - $age = get_patients_age($patient->date_of_birth); - @endphp - {{ $age }} - - {{ streamline_date($triage->created_at) }} from episode started on {{ streamline_date(get_name($triage->episode_id, "id", "created_at", "patient_episodes")) }} - - @if ($triage->any_tb_sysmptoms == 0) - No TB Signs - @elseif($triage->any_tb_sysmptoms == 1) - Has TB Signs - @endif - - {{ __('patients.select') }} -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/treatment_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/treatment_report.blade.php deleted file mode 100755 index 7d3fb3f6..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/treatment_report.blade.php +++ /dev/null @@ -1,77 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_reports.treatment_report') }}

    -
    -
    - -
    -
    - -
    -
    -
    - -

    {{ __('hmis_reports.search_criteria') }} : {{ $criteria }}    {{ __('hmis_reports.clear_search') }}

    - -
    - - - - - - - - - @for($i = 0; $i < count($drugs_array); $i++) - - - - - @endfor - -
    {{ __('hmis_reports.drug_name') }}{{ __('hmis_reports.quantity_dispensed') }}
    {{ get_name($drugs_array[$i], 'id', 'name', 'drugs') }} - {{ $dispensed_array[$i] }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/treatments_drill_down.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/treatments_drill_down.blade.php deleted file mode 100755 index 7a56cf6e..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/treatments_drill_down.blade.php +++ /dev/null @@ -1,132 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_reports.treatment_report_details') }}

    -
    -
    - -
    -
    - -
    -

    Drug: {{ get_name($drug_id, 'id', 'name', 'drugs') }}

    - -
    - - - - - - - - - - - - - - - - - @for($i = 0; $i < count($dispensed_array); $i++) - @php $patient = \Illuminate\Support\Facades\DB::table('patients')->where('id', $patient_id_array[$i])->first(); @endphp - - - - - - - - - - - - - @endfor - -
    {{ __('hmis_reports.quantity_dispensed') }}{{ __('hmis_reports.patient_number') }}{{ __('hmis_reports.full_names') }}{{ __('hmis_reports.gender') }}{{ __('hmis_reports.age') }}{{ __('hmis_reports.next_of_kin') }}{{ __('hmis_reports.custom_field') }}{{ __('hmis_reports.date') }}
    - {{ $dispensed_array[$i] }} - - {{ $patient_number_array[$i] }} - - {!! insurance_flag($patient_id_array[$i]) !!} ({{ $patient->phone }}) - - {{ $patient->gender == 1 ? __('hmis_reports.male') : __('hmis_reports.female') }} - - {{ get_patients_age($patient->date_of_birth) }} - {{ $patient->next_of_kin }} ({{ $patient->phone_of_next_of_kin }}){{ $custom_field?? '' }} - {{ streamline_date_time($date_array[$i]) }} - - {{ __('hmis_reports.select') }} - {{ __('patients.details') }}
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/view_investigation_specimen_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/view_investigation_specimen_report.blade.php deleted file mode 100644 index ab284b81..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/view_investigation_specimen_report.blade.php +++ /dev/null @@ -1,204 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_reports.view_investigation_specimen_report') }}

    -
    -
    - -
    -
    - -
    - {{ Form::open(['method'=>'post','route' => 'memorised_reports.view_investigation_specimen_report']) }} - -
    -
    -
    - - -
    -
    - - - -
    -
    - - -
    -
    - -
    -
    - {{ Form::submit(__('investigations.search'), ['class'=>'btn btn-success pull-right']) }} -
    -
    -
    - {{ Form::close() }} -
    - -
    - - @include('flash::message') - -

    -
    - -
    - - - - - - - - - - - - - - @foreach($records as $record) - @php - $inv_ids = explode(",", $record->investigation_id); - $specimens = explode(",", $record->specimen); - $status = explode(",", $record->specimen_status); - $reasons = explode(",", $record->specimen_reason); - @endphp - - - - - - - - - - @endforeach - -
    Patient InfoInvestigations OrderedSpecimenSpecimen StatusReason/CommentDate ReceivedRequest Received By
    - {{ $record->first_name . " " . $record->last_name . "(" . $record->number . ")" }} - -
      - @foreach($inv_ids as $inv_id) -
    1. {{ $investigations[$inv_id] ?? '' }}
    2. - @endforeach -
    -
    -
      - @foreach($specimens as $specimen) -
    1. {{ $laboratory_specimens[$specimen] ?? '' }}
    2. - @endforeach -
    -
    -
      - @foreach($status as $statis) -
    1. - @if ($statis == 1) - {{ __('investigations.taken') }} - @elseif ($statis == 2) - {{ __('investigations.not_taken') }} - @elseif ($statis == 3) - {{ __('investigations.rejected') }} - @endif -
    2. - @endforeach -
    -
    -
      - @foreach($reasons as $reason) -
    1. {{ $reason }}
    2. - @endforeach -
    -
    {{ streamline_date_time($record->request_received_date) }}{{ $record->request_received_by }}
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/ward_re_admittance_report.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/ward_re_admittance_report.blade.php deleted file mode 100755 index 1bafec74..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/ward_re_admittance_report.blade.php +++ /dev/null @@ -1,156 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('hmis_reports.ward_readmittance_report') }}

    -
    -
    - -
    -
    - -
    - @include('flash::message') - {{ Form::open(['route' => 'ward_re_admittance_report' , 'data-toggle' => 'validator']) }} -
    -
    -
    - {{ Form::label('ward_id',__('hmis_reports.ward')) }} - {{ Form::select('ward_id', $wards,null,['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    - {{ Form::label('start_date',__('hmis_reports.from')) }} - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'start_date']) }} -
    -
    -
    -
    - {{ Form::label('end_date',__('hmis_reports.to')) }} - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'end_date']) }} -
    -
    -
    -
    - {{ Form::button(__('hmis_reports.search'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    - {{ Form::close() }} -
    - - @if(isset($start_date)) -

    {{ __('hmis_reports.search_criteria') }} {{ __('hmis_reports.date') }} : {{ __('hmis_reports.from') }} {{ streamline_date($start_date) }} {{ __('hmis_reports.to') }} {{ streamline_date($end_date) }} {{ __('hmis_reports.ward') }}: {{ $wards[$ward] }}

    - -
    - - - - - - - - - - - - - - - - @if(count($readmittances) > 0) - @foreach($readmittances as $record) - - - - - - - - - - - - @endforeach - @else - - - - @endif - -
    {{ __('hmis_reports.patient_number') }}{{ __('hmis_reports.patient_name') }}{{ __('hmis_reports.age') }}{{ __('hmis_reports.gender') }}{{ __('hmis_reports.primary_diagnosis') }}{{ __('hmis_reports.date_of_discharge') }}{{ __('hmis_reports.date_of_readmission') }}{{ __('hmis_reports.comments') }}
    {{ $record['number'] }}{{ $record['name'] }}{{ $record['age'] }}{{ $record['gender'] }}{{ $record['primary_diagnosis'] }}{{ $record['discharge_date'] }}{{ $record['readmission_date'] }}{{ $record['comments'] }} - {{ __('hmis_reports.select') }} -
    {{ __('hmis_reports.no_records_found') }}
    -
    - @endif -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/weekly_epidemiological_surveillance_cases_details.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/weekly_epidemiological_surveillance_cases_details.blade.php deleted file mode 100755 index 7c19dc56..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/weekly_epidemiological_surveillance_cases_details.blade.php +++ /dev/null @@ -1,161 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -
    {{ __('hmis_reports.weekly_form_details') }}
    -
    -
    - -
    -
    -
    - @include('flash::message') -

    {{ __('hmis_reports.weekly_form_details') }}

    - -
    -
    - - - - - - - - - - - - - - - - - - @php $counter = 1; @endphp - @if(count($weekly_cases_details_results) > 0) - @foreach($weekly_cases_details_results as $result) - @php - $patient_name = get_full_name($result->patient_id, "id", "first_name", "last_name", "patients"); - $patient = Streamline\Models\Patient::find($result->patient_id); - $dob = !empty($patient->date_of_birth)? new Carbon\Carbon($patient->date_of_birth) :''; - $unserialised_other_diagnosis = unserialize($result->other_diagnoses); - $secondary_diagnosis_explode = is_string($unserialised_other_diagnosis) ? explode(",", $unserialised_other_diagnosis) : []; - $secondary_diagnosis = ""; - @endphp - - - - - - - - - - - - - - @php $counter++; @endphp - @endforeach - @else - - @endif - -
    {{ __('hmis_reports.patient_number') }}{{ __('hmis_reports.patient_name') }}{{ __('hmis_reports.gender') }}{{ __('hmis_reports.age') }}{{ __('hmis_reports.date') }}{{ __('hmis_reports.other_diagnoses') }}{{ __('hmis_reports.outcome') }}{{ __('hmis_reports.clinic_allocation') }}{{ __('hmis_reports.consultation_comments') }}{{ __('hmis_reports.action') }}
    {{ $counter }}.{{ $patient->number ?? '' }}{{ $patient_name ?? '' }} - @if (!empty($patient->gender)) - {{ $patient->gender == 1 ? "Male" : "Female" }} - @endif - - @if (!empty($dob)) - {{ $dob->diffInYears(Carbon\Carbon::now()) ?? '' }}yrs - @endif - {{ streamline_date($result->created_at) }} - @for ($s = 0; $s < count($secondary_diagnosis_explode); $s++) - $secondary_diagnosis .= get_name($secondary_diagnosis_explode[$s], "id", "name", "diagnoses"); - @endfor - {{ $secondary_diagnosis }} - {{ get_name($result->outcome_id,'id','name','outcomes') }}{{ get_name(get_name($result->episode_id,'episode_id', 'clinic_allocation', 'triage'),'id','name','clinics') }}{{ $result->comments }} - @if (!empty($patient->id)) - @if (Auth::user()->can('view-patients-home')) - {{ __('hmis_reports.details') }} - @endif - @else - Patient was deleted - @endif -
    {{ __('hmis_reports.no_records_found') }}
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/weekly_epidemiological_surveillance_form.blade.php b/docker/statistics/Modules/Reports/Resources/views/hmis_reports/weekly_epidemiological_surveillance_form.blade.php deleted file mode 100755 index c7f8d577..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/hmis_reports/weekly_epidemiological_surveillance_form.blade.php +++ /dev/null @@ -1,358 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -
    {{ __('hmis_reports.hmis_033b') }}
    -
    - -
    -
    - @include('flash::message') -

    {{ __('hmis_reports.hmis_033b') }}

    - -
    -
    - {{ __('hmis_reports.showing_results_from') }} {{ streamline_date($attendance_from) }} {{ __('hmis_reports.to') }} {{ streamline_date($attendance_to) }} -
    -
    - {{ Form::open(['url' => 'weekly_epidemiological_surveillance_form','data-toggle'=>'validator']) }} - {{ Form::label('date_from',__('hmis_reports.from')) }} -
    -
    -
    - {{ Form::text('date_from','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-from']) }} - -
    -
    -
    - {{ Form::label('date_to',__('hmis_reports.to')) }} -
    -
    -
    - {{ Form::text('date_to','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-to']) }} - -
    -
    -
    - {{ Form::submit(__('hmis_reports.search'),['name' => 'filterBtn','class' => 'btn btn-success']) }} - {{ Form::close() }} -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - -
    {{ __('hmis_reports.date_of_report') }}{{ streamline_date(date("d-m-Y")) }}
    {{ __('hmis_reports.week_no') }}{{ date("W") }}
    {{ __('hmis_reports.health_unit') }}{{ $hospital_information->name }}
    {{ __('hmis_reports.subcounty') }}{{ get_name($hospital_information->sub_county,'id','name','subcounties') }}
    -
    - -
    - - - - - - - - - - - - - -
    {{ __('hmis_reports.from') }} {{ streamline_date($attendance_from) }}
    {{ __('hmis_reports.health_unit_code') }}{{ $hospital_information->code }}
    {{ __('hmis_reports.health_sub_district') }}{{ get_name($hospital_information->district,'id','name','districts') }}
    -
    -
    - - - - - - - - - - - - - -
    {{ __('hmis_reports.to') }}{{ streamline_date($attendance_to) }}
    {{ __('hmis_reports.parish') }}{{ get_name($hospital_information->parish,'id','name','parishes') }}
    {{ __('hmis_reports.district') }}{{ get_name($hospital_information->district, 'id','name','districts') }}
    -
    -
    -
    -
    -
    -
    1. {{ __('hmis_reports.cases_this_week') }}
    - @include('reports::hmis_reports.cases_this_week') -
    -
    -
    2. {{ __('hmis_reports.deaths_this_week') }}
    - @include('reports::hmis_reports.deaths_this_week') -
    -
    - -
    -
    -
    3. {{ __('hmis_reports.other_conditions_cases') }}
    - - - - - - - - - - - - - - - - - - - - - -
    {{ __('hmis_reports.name_1st_condition') }}{{ __('hmis_reports.cases') }}{{ __('hmis_reports.name_2nd_condition') }}{{ __('hmis_reports.cases') }}{{ __('hmis_reports.name_3rd_condition') }}{{ __('hmis_reports.cases') }}
    EPCSmall Pox{{ $case_pox }}Influenza{{ $case_flu }}Ebola{{ $case_ebola }}
    -
    -
    - -
    -
    -
    4. {{ __('hmis_reports.other_conditions_deaths') }}
    - - - - - - - - - - - - - - - - - - - -
    {{ __('hmis_reports.name_1st_condition') }}{{ __('hmis_reports.deaths') }}{{ __('hmis_reports.name_2nd_condition') }}{{ __('hmis_reports.deaths') }}{{ __('hmis_reports.name_3rd_condition') }}{{ __('hmis_reports.deaths') }}
    EPDSmall Pox{{ $death_pox }}Influenza{{ $death_flu }}Ebola{{ $death_ebola }}
    -
    -
    - -
    -
    -
    -
    5. {{ __('hmis_reports.opd_summary') }}
    - - - - - - - - - - - - - - - - - - - - - -
    APT
    {{ __('hmis_reports.opd_new_attendance') }}0
    {{ __('hmis_reports.opd_total_attendance') }}0
    {{ __('hmis_reports.expected_mothers_appt') }}0
    {{ __('hmis_reports.missed_appointments') }}0
    -
    -
    -
    - -
    -
    -
    -
    6. {{ __('hmis_reports.summary_malaria_tested') }}
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    MAT
    {{ __('hmis_reports.suspected_malaria') }}{{ $mat_one }}
    {{ __('hmis_reports.rdt_tested') }}{{ $mat_two }}
    {{ __('hmis_reports.rdt_positive') }}{{ $mat_three }}
    {{ __('hmis_reports.micro_tested') }}{{ $mat_four }}
    {{ __('hmis_reports.micro_positive') }}{{ $mat_five }}
    {{ __('hmis_reports.not_tested_treated') }}{{ $mat_six }}
    {{ __('hmis_reports.rdt_negative_treated') }}{{ $mat_seven }}
    {{ __('hmis_reports.rdt_positive_treated') }}{{ $mat_eight }}
    {{ __('hmis_reports.micro_negative_treated') }}{{ $mat_nine }}
    {{ __('hmis_reports.micro_positive_treated') }}{{ $mat_ten }}
    -
    -
    -
    - -
    -
    -
    -
    7. {{ __('hmis_reports.tracer_medicines') }}
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    TRA
    ACT ({{ __('hmis_reports.tables') }}){{ $tra_one }}
    ORS ({{ __('hmis_reports.sachets') }}){{ $tra_two }}
    {{ __('hmis_reports.measles_vaccine') }}{{ $tra_three }}
    Amoxcilline{{ $tra_four }}
    Depo - Provera{{ $tra_five }}
    IV artesunate{{ $tra_six }}
    Fansidar{{ $tra_seven }}
    RDT (Malaria){{ $tra_eight }}
    -
    -
    -
    - -
    -
    -
    -
    8. {{ __('hmis_reports.hiv_kits_balance') }}
    - - - - - - - - - - - - - - - - - -
    ARV
    {{ __('hmis_reports.hiv_kits') }}{{ $arv_one }}
    ARVS(Fixed - DC eMTCT){{ $arv_two }}
    Nevirapine Therapy{{ $arv_three }}
    -
    *{{ __('hmis_reports.dose_combine') }}
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/mental_health_reports/days_drugs_out_of_stock.blade.php b/docker/statistics/Modules/Reports/Resources/views/mental_health_reports/days_drugs_out_of_stock.blade.php deleted file mode 100755 index 7a934a5e..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/mental_health_reports/days_drugs_out_of_stock.blade.php +++ /dev/null @@ -1,127 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('mental_health_reports.days_drugs_outta_stock') }}

    -
    -
    - -
    -
    - -
    - {{ Form::open(['route' => 'mental_health_reports.days_drugs_out_of_stock' , 'data-toggle' => 'validator']) }} -
    -
    -
    -
    - {{ Form::label('start_date',__('mental_health_reports.date_from')) }} - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'start_date']) }} -
    -
    -
    -
    - {{ Form::label('end_date',__('mental_health_reports.date_to')) }} - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'end_date']) }} -
    -
    -
    -
    - {{ Form::button(__('mental_health_reports.search'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    - {{ Form::close() }} -
    - -

    {{ __('mental_health_reports.showing_drugs_outta_stock') }} {{ streamline_date($start_date) }} {{ __('mental_health_reports.to') }} {{ streamline_date($end_date) }}

    - -
    - - - - - - - - - @if(count($selected_drugs) > 0) - @foreach($selected_drugs as $drug_id => $days) - - - - - @endforeach - @else - - - - @endif - -
    {{ __('mental_health_reports.drug_name') }}{{ __('mental_health_reports.number_of_days') }}
    {{ get_name($drug_id, 'id', 'name', 'drugs') }} {{ $days }}
    -

    {{ __('mental_health_reports.no_drugs_outta_stock') }}

    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/mental_health_reports/diagnosed_patients.blade.php b/docker/statistics/Modules/Reports/Resources/views/mental_health_reports/diagnosed_patients.blade.php deleted file mode 100755 index fb68b51a..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/mental_health_reports/diagnosed_patients.blade.php +++ /dev/null @@ -1,159 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('mental_health_reports.diagnosed_patients') }}

    -
    -
    - -
    -
    - -
    - {{ Form::open(['route' => 'mental_health_reports.diagnosed_patients' , 'data-toggle' => 'validator']) }} -
    -
    -
    -
    - {{ Form::label('start_date',__('mental_health_reports.date_from')) }} - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'start_date']) }} -
    -
    -
    -
    - {{ Form::label('end_date',__('mental_health_reports.date_to')) }} - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'end_date']) }} -
    -
    -
    -
    - {{ Form::button(__('mental_health_reports.search'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    - {{ Form::close() }} -
    - -

    {{ __('mental_health_reports.showing_results_from') }} {{ streamline_date($start_date) }} {{ __('mental_health_reports.to') }} {{ streamline_date($end_date) }}

    - - - - - - - - - - @php - $count = $total_patients = 0; - @endphp - - @foreach($reports as $report) - @php - $ids = serialize($report['patient_ids']); - @endphp - - - - - - @php - $total_patients += $report['count']; - foreach ($report['patient_ids'] as $value) $patient_ids[] = $value; - if(!empty($patient_ids)) $total_ids = serialize($patient_ids); - @endphp - @endforeach - - - - - - -
    {{ __('diagnoses.diagnosis_name') }}{{ __('diagnoses.number') }}
    {{ ++$count }}{{ $report['name'] }} - @if (!empty($report['count'])) - " target="_blank">{{ commas($report['count']) }} - @else - 0 - @endif -
    {{ __('mental_health_reports.total') }} - @if (!empty($total_patients)) - " target="_blank">{{ commas($total_patients) }} - @else - 0 - @endif -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/mental_health_reports/diagnosed_persons_who_received_treatment.blade.php b/docker/statistics/Modules/Reports/Resources/views/mental_health_reports/diagnosed_persons_who_received_treatment.blade.php deleted file mode 100755 index ad033adf..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/mental_health_reports/diagnosed_persons_who_received_treatment.blade.php +++ /dev/null @@ -1,169 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('mental_health_reports.diagnosed_patients_treatment_report') }}

    -
    -
    - -
    -
    - -
    - {{ Form::open(['route' => 'mental_health_reports.diagnosed_persons_who_received_treatment' , 'data-toggle' => 'validator']) }} -
    -
    -
    -
    - {{ Form::label('start_date',__('mental_health_reports.date_from')) }} - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'start_date']) }} -
    -
    -
    -
    - {{ Form::label('end_date',__('mental_health_reports.date_to')) }} - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'end_date']) }} -
    -
    -
    -
    - {{ Form::button(__('mental_health_reports.search'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    - {{ Form::close() }} -
    - -

    {{ __('mental_health_reports.showing_results_from') }} {{ streamline_date($start_date) }} {{ __('mental_health_reports.to') }} {{ streamline_date($end_date) }}

    - - - @php - $count = 1; - $total_patients = 0; - $total_patients_with_treatment = 0; - $total_patients_with_no_treatment = 0; - @endphp - - - - - - - - - - - - - @foreach($reports as $report) - - @php - $treated_ids = serialize($report['treated_patient_ids']); - $patient_ids = serialize($report['patient_ids']); - $untreated_ids = serialize(array_diff($report['patient_ids'],$report['treated_patient_ids'])); - $total_treated_ids = $total_untreated_ids = $total_patient_ids = []; - @endphp - - - - - - - @php - $count++; - foreach ($report['treated_patient_ids'] as $value) $total_treated_ids[] = $value; - $total_treated_id = serialize($total_treated_ids); - foreach ($report['patient_ids'] as $value) $total_patient_ids[] = $value; - $total_patient_id = serialize($total_patient_ids); - foreach (unserialize($untreated_ids) as $key => $value) $total_untreated_ids[] = $value; - $total_untreated_id = serialize($total_untreated_ids); - $total_patients += $report['number_of_patients']; - $total_patients_with_treatment += $report['number_of_patients_with_treatment']; - $total_patients_with_no_treatment += ($report['number_of_patients'] - $report['number_of_patients_with_treatment']); - @endphp - @endforeach - - - - - - - - - -
    #{{ __('mental_health_reports.diagnosis_name') }}{{ __('mental_health_reports.patients_with_diagnosis') }}{{ __('mental_health_reports.patients_with_treatment') }}{{ __('mental_health_reports.patients_with_no_treatment') }}
    {{ $count }}{{ $report['name'] }} - " target="_blank">{{ commas($report['number_of_patients']) }} - {{-- {{ $report['number_of_patients'] }} --}} - - " target="_blank">{{ commas($report['number_of_patients_with_treatment']) }} - {{-- {{ $report['number_of_patients_with_treatment'] }} --}} - " target="_blank">{{ commas($report['number_of_patients'] - $report['number_of_patients_with_treatment']) }}
    {{ __('mental_health_reports.total') }} - " target="_blank">{{ commas($total_patients) }} - {{-- {{ $total_patients }} --}} - - " target="_blank">{{ commas($total_patients_with_treatment) }} - {{-- {{ $total_patients_with_treatment }} --}} - " target="_blank">{{ commas($total_patients_with_no_treatment) }}
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/mental_health_reports/patients_lost_to_follow_up.blade.php b/docker/statistics/Modules/Reports/Resources/views/mental_health_reports/patients_lost_to_follow_up.blade.php deleted file mode 100755 index b1847b3b..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/mental_health_reports/patients_lost_to_follow_up.blade.php +++ /dev/null @@ -1,182 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('mental_health_reports.follow_up_drop_out_rate_report') }}

    -
    -
    - -
    -
    - -
    - {{ Form::open(['route' => 'mental_health_reports.patients_lost_to_follow_up' , 'data-toggle' => 'validator']) }} -
    -
    -
    -
    - {{ Form::label('start_date',__('mental_health_reports.date_from')) }} - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'start_date']) }} -
    -
    -
    -
    - {{ Form::label('end_date',__('mental_health_reports.date_to')) }} - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'end_date']) }} -
    -
    -
    -
    - {{ Form::button(__('mental_health_reports.search'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    - {{ Form::close() }} -
    - -

    {{ __('mental_health_reports.showing_results_from') }} {{ streamline_date($start_date) }} {{ __('mental_health_reports.to') }} {{ streamline_date($end_date) }}

    - -
    - - - - - - - - - - - @if(count($follow_ups) > 0) - @foreach($follow_ups as $record) - - - - - - - @endforeach - @else - - - - @endif - -
    {{ __('mental_health_reports.patient_name') }}{{ __('mental_health_reports.date_created') }}{{ __('mental_health_reports.follow_up_date') }}
    {{ get_full_name($record['patient_id'], 'id', 'first_name', 'last_name', 'patients') }} ({{ get_name($record['patient_id'], 'id', 'number', 'patients') }}) {{ streamline_date($record['created_at']) }}{{ streamline_date($record['appointment_date']) }} - {{ __('mental_health_reports.select_patient') }} -
    -

    {{ __('mental_health_reports.no_follow_ups_lost') }}

    -
    - -
    - @php - $number_of_patients_followed_up_id = serialize($number_of_patients_followed_up_ids); - $number_of_patients_lost_id = serialize($number_of_patients_lost_ids); - $total_follow_ups_id = serialize($total_follow_ups_ids); - @endphp - - - - - - - - - - - - - - - - - - - - - - - -
    Date ElementNumber
    {{ __('mental_health_reports.patients_to_follow_up') }} - @if (!empty($total_follow_ups)) - " target="_blank">{{ commas($total_follow_ups) }} - @else - 0 - @endif -
    {{ __('mental_health_reports.patients_lost') }} - @if (!empty($number_of_patients_lost)) - " target="_blank">{{ commas($number_of_patients_lost) }} - @else - 0 - @endif -
    {{ __('mental_health_reports.patients_followed_up') }} - @if (!empty($number_of_patients_followed_up)) - " target="_blank">{{ commas($number_of_patients_followed_up) }} - @else - 0 - @endif -
    {{ __('mental_health_reports.drop_out_rate') }}{{ $drop_out_rate }} %
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/mental_health_reports/persons_taking_psychotropic_drugs.blade.php b/docker/statistics/Modules/Reports/Resources/views/mental_health_reports/persons_taking_psychotropic_drugs.blade.php deleted file mode 100755 index 81ce0bd7..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/mental_health_reports/persons_taking_psychotropic_drugs.blade.php +++ /dev/null @@ -1,159 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('mental_health_reports.treatments_report') }}

    -
    -
    - -
    -
    - -
    - {{ Form::open(['route' => 'mental_health_reports.persons_taking_psychotropic_drugs' , 'data-toggle' => 'validator']) }} -
    -
    -
    -
    - {{ Form::label('start_date',__('mental_health_reports.date_from')) }} - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'start_date']) }} -
    -
    -
    -
    - {{ Form::label('end_date',__('mental_health_reports.date_to')) }} - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'end_date']) }} -
    -
    -
    -
    - {{ Form::button(__('mental_health_reports.search'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    - {{ Form::close() }} -
    - -

    {{ __('mental_health_reports.showing_results_from') }} {{ streamline_date($start_date) }} {{ __('mental_health_reports.to') }} {{ streamline_date($end_date) }}

    - - - @php - $count = 0; - $total_patients = 0; - $total_patient_ids=[]; - @endphp - - - - - - - - - @foreach($drugs as $drug_id => $patient_number) - @php - $patient_ids = !empty($drug_patient_id[$drug_id]['patient_ids'])? serialize($drug_patient_id[$drug_id]['patient_ids']):''; - if(!empty($drug_patient_id[$drug_id]['patient_ids'])) foreach ($drug_patient_id[$drug_id]['patient_ids'] as $value) $total_patient_ids[] = $value; - $total_patients += $patient_number; - $total_patient_id = serialize($total_patient_ids); - @endphp - - - - - - @endforeach - - - - - - -
    {{ __('diagnoses.drug_name') }}{{ __('diagnoses.number') }}
    {{ ++$count }}{{ get_name($drug_id, 'id', 'name', 'drugs') }} - @if (!empty($patient_ids)) - " target="_blank">{{ commas($patient_number) }} - @else - 0 - @endif -
    {{ __('mental_health_reports.total') }} - @if (!empty($total_patient_ids)) - " target="_blank">{{ commas($total_patients) }} - @else - 0 - @endif -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/reports/charge-book/index.blade.php b/docker/statistics/Modules/Reports/Resources/views/reports/charge-book/index.blade.php deleted file mode 100755 index aa5c3c01..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/reports/charge-book/index.blade.php +++ /dev/null @@ -1,273 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -
    {{ __('reports.charge_book') }}
    -
    - -
    -@php -$count = 1; -$item_count = 0; -$items_max = 20; -$number_of_sections = ceil(count($drugs) / $items_max); -$number_of_table_row = ceil($number_of_sections / 3); -@endphp -
    - - - - {{ __('reports.print_pdf') }} -

    {{ __('reports.bed_categories') }}

    -
    -
    - @foreach($bed_category_items as $items) -
    - - - - - - - - - - - - - - - @php $counter = 1; @endphp - @foreach($items as $bed_category) - - - - - - - - - - - @php $counter++; @endphp - @endforeach - -
    #{{ __('bed_categories.bed_category_name') }}{{ __('bed_categories.type_of_pricing') }}{{ __('bed_categories.per_night') }}{{ __('bed_categories.first_night') }}{{ __('bed_categories.range_of_nights') }}{{ __('bed_categories.cost_for_range') }}{{ __('bed_categories.cost_there_after') }}
    {{ $counter }}{{ $bed_category->name }}{{ $bed_category->cost_type == 1 ? 'Static Cost' : 'Structured cost' }}{{ !is_null($bed_category->cost_per_night) ? ugandan_shillings($bed_category->cost_per_night) : 'N/A' }}{{ !is_null($bed_category->cost_first_night) ? ugandan_shillings($bed_category->cost_first_night) : 'N/A' }} - @if(!is_null($bed_category->to_night)) - 2 - {{ $bed_category->to_night }} - @else - N/A - @endif - {{ !is_null($bed_category->cost_range) ? ugandan_shillings($bed_category->cost_range) : 'N/A'}}{{ !is_null($bed_category->cost_after) ? ugandan_shillings($bed_category->cost_after) : 'N/A' }}
    -
    - @endforeach -
    - -

    {{ __('reports.drugs') }}

    -
    -
    - - @foreach($drug_items as $items) -
    - - - - - - - - - - - @foreach($items as $item) - - - @if($item->insurance_coverage == 0) - - @else - - @endif - - - - - @endforeach - -
    #{{ __('reports.name') }}{{ __('reports.non_insured') }}{{ __('reports.insured') }}
    {{ trim($item->name) }}{{ trim($item->name) }}{{ commas($item->non_insured_price) }}{{ commas($item->insured_price) }}
    -
    - @endforeach -
    - -

    {{ __('reports.sundries') }}

    -
    -
    - - @foreach($sundry_items as $items) -
    - - - - - - - - - - - @foreach($items as $item) - - - - - - - - @endforeach - -
    #{{ __('reports.name') }}{{ __('reports.non_insured') }}{{ __('reports.insured') }}
    {{ $index }}{{ $item->name }}{{ commas($item->non_insured_price) }}{{ commas($item->insured_price) }}
    -
    - @endforeach -
    - -

    {{ __('reports.procedures') }}

    -
    -
    - - @foreach($procedure_items as $items) -
    - - - - - - - - - - - @foreach($items as $item) - - - - - - - - @endforeach - -
    #{{ __('reports.name') }}{{ __('reports.non_insured') }}{{ __('reports.insured') }}
    {{ $index }}{{ $item->name }}{{ commas($item->non_insured_price) }}{{ commas($item->insured_price) }}
    -
    - @endforeach -
    - -

    {{ __('reports.investigations') }}

    -
    -
    - - @foreach($investigation_items as $items) -
    - - - - - - - - - - - - @foreach($items as $item) - - - - @if($item->insurance_coverage == 0) - - @else - - @endif - - - - - @endforeach - -
    #{{ __('reports.name') }}{{ __('reports.insured') }}{{ __('reports.non_insured') }}{{ __('reports.insured') }}
    {{ $index }}{{ $item->name }}{{ __('reports.no') }}{{ __('reports.yes') }}{{ commas($item->non_insured_price) }}{{ commas($item->insured_price) }}
    -
    - @endforeach -
    - -

    {{ __('reports.services') }}

    -
    -
    - - @foreach($service_items as $items) -
    - - - - - - - - - - - @foreach($items as $item) - - - @if($item->insurance_coverage == 0) - - @else - - @endif - - - - - @endforeach - -
    #{{ __('reports.name') }}{{ __('reports.non_insured') }}{{ __('reports.insured') }}
    {{ $index }}{{ $item->name }}{{ $item->name }}{{ commas($item->non_insured_price) }}{{ commas($item->insured_price) }}
    -
    - @endforeach -
    -
    - -@endsection \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/reports/charge-book/print.blade.php b/docker/statistics/Modules/Reports/Resources/views/reports/charge-book/print.blade.php deleted file mode 100755 index 3adc05d4..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/reports/charge-book/print.blade.php +++ /dev/null @@ -1,278 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'HMIS Report 105 - Stre@mline') }} - - - - - - - - - - -
    - @include('layouts.header_pdf_print') -

    {{ __('reports.charge_book') }}

    - -

    {{ __('reports.bed_categories') }}

    -
    - @foreach($bed_category_items as $items) -
    - - - - - - - - - - - - - - - @php $counter = 1; @endphp - @foreach($items as $bed_category) - - - - - - - - - - - @php $counter++; @endphp - @endforeach - -
    #{{ __('bed_categories.name') }}{{ __('bed_categories.type') }}{{ __('bed_categories.per_night') }}{{ __('bed_categories.first_night') }}{{ __('bed_categories.range_of_nights') }}{{ __('bed_categories.cost_for_range') }}{{ __('bed_categories.cost_there_after') }}
    {{ $counter }}{{ $bed_category->name }}{{ $bed_category->cost_type == 1 ? 'Static Cost' : 'Structured cost' }}{{ !is_null($bed_category->cost_per_night) ? ugandan_shillings($bed_category->cost_per_night) : 'N/A' }}{{ !is_null($bed_category->cost_first_night) ? ugandan_shillings($bed_category->cost_first_night) : 'N/A' }} - @if(!is_null($bed_category->to_night)) - 2 - {{ $bed_category->to_night }} - @else - N/A - @endif - {{ !is_null($bed_category->cost_range) ? ugandan_shillings($bed_category->cost_range) : 'N/A'}}{{ !is_null($bed_category->cost_after) ? ugandan_shillings($bed_category->cost_after) : 'N/A' }}
    -
    - @endforeach -
    - - -

    {{ __('reports.drugs') }}

    - -
    - - @foreach($drug_items as $items) -
    - - - - - - - - - - - @foreach($items as $item) - - - @if($item->insurance_coverage == 0) - - @else - - @endif - - - - - @endforeach - -
    #{{ __('reports.name') }}{{ __('reports.non_insured') }}{{ __('reports.insured') }}
    {{ trim($item->name) }}{{ trim($item->name) }}{{ commas($item->non_insured_price) }}{{ commas($item->insured_price) }}
    -
    - @endforeach -
    - - -

    {{ __('reports.sundries') }}

    -
    -
    - - @foreach($sundry_items as $items) -
    - - - - - - - - - - - @foreach($items as $item) - - - - - - - - @endforeach - -
    #{{ __('reports.name') }}{{ __('reports.non_insured') }}{{ __('reports.insured') }}
    {{ $index }}{{ $item->name }}{{ commas($item->non_insured_price) }}{{ commas($item->insured_price) }}
    -
    - @endforeach -
    - -

    {{ __('reports.procedures') }}

    -
    -
    - - @foreach($procedure_items as $items) -
    - - - - - - - - - - - @foreach($items as $item) - - - - - - - - @endforeach - -
    #{{ __('reports.name') }}{{ __('reports.non_insured') }}{{ __('reports.insured') }}
    {{ $index }}{{ $item->name }}{{ commas($item->non_insured_price) }}{{ commas($item->insured_price) }}
    -
    - @endforeach -
    - -

    {{ __('reports.investigations') }}

    -
    -
    - - @foreach($investigation_items as $items) -
    - - - - - - - - - - - - @foreach($items as $item) - - - - @if($item->insurance_coverage == 0) - - @else - - @endif - - - - - @endforeach - -
    #{{ __('reports.name') }}{{ __('reports.insured') }}{{ __('reports.non_insured') }}{{ __('reports.insured') }}
    {{ $index }}{{ $item->name }}{{ __('reports.no') }}{{ __('reports.yes') }}{{ commas($item->non_insured_price) }}{{ commas($item->insured_price) }}
    -
    - @endforeach -
    - -

    {{ __('reports.services') }}

    -
    -
    - - @foreach($service_items as $items) -
    - - - - - - - - - - - @foreach($items as $item) - - - @if($item->insurance_coverage == 0) - - @else - - @endif - - - - - @endforeach - -
    #{{ __('reports.name') }}{{ __('reports.non_insured') }}{{ __('reports.insured') }}
    {{ $index }}{{ $item->name }}{{ $item->name }}{{ commas($item->non_insured_price) }}{{ commas($item->insured_price) }}
    -
    - @endforeach -
    -
    - - - \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/reports/nira/birth.blade.php b/docker/statistics/Modules/Reports/Resources/views/reports/nira/birth.blade.php deleted file mode 100755 index d62ea9ea..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/reports/nira/birth.blade.php +++ /dev/null @@ -1,199 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Notification of Birth

    -
    -
    - -
    -
    - -
    - -
    -
    - @include('flash::message') - FORM 3 - Regulation 8 (1) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      -
    - THE REGISTRATION OF PERSONS (BIRTHS AND DEATHS)
    - REGULATIONS, 2015 -
    NOTICE OF BIRTH OF A CHILD
    1 Date of birth (dd/mm/yy):    {{ $babyOne['dob'] }}      Time of birth {{ $babyOne['delivery_time'] }}
    2Place of birth  {{ $babyOne['hospitalLocation'] }}  
    Name of medical facility {{ $babyOne['hospitalName'] }}
    No. of - House and name of street .....................................................................................................................
    - City, Municipality, town or village {{ $babyOne['hospitalLocation'] }}
    - District   {{ $babyOne['hospitalDistrict'] }}
    3Name (if any) of child ..............................................................................................................................................
    4Sex of child {{ $babyOne['gender'] == 1 ? 'Male' : 'Female' }}
    5Weight at birth {{ $babyOne['weight'] }} Kg
     FATHER
    6 Surname......................................................................................................................................
    - Given Name........................................Other Names....................................................................
    7 Address (both physical and postal) .....................................................................................................
    - a) Village.............................................................................................................................
    - b) Parish...............................................................................................................................
    - c) Sub county ......................................................................................................................
    - d) County............................................................................................................................
    - e) District............................................................................................................................
    8Occupation..........................................................................................................................................
    9Nationality...........................................................................................................................................
    10National Identification Number/Alien Identification Number*
    - ..../..../..../..../..../..../..../..../..../..../..../..../..../..../
     MOTHER
    11Surname {{ $mother['last_name'] }}
    - Given Name {{ $mother['first_name'] }}    Other Names....................................................................
    12Maiden name ....................................................................................................................................
    13Address
    - (a) Village    {{ $mother['village'] }}
    - (b) Parish    {{ $mother['parish'] }}
    - (c) Sub county    {{ $mother['subcounty'] }}
    - (d) County    {{ $mother['county'] }}
    - (e) District    {{ $mother['district'] }}
    14Occupation {{ $mother['occupation'] }}
    16Parity1 ................................................................................................................................................
    17Nationality Ugandan
    18National Identification Number/Alien Identification Number*
    - @php - if(empty($mother['NIN'])): - echo '..../..../..../..../..../..../..../..../..../..../..../..../..../..../'; - else: - echo '' . $mother['NIN'] .''; - endif - @endphp -
    19Why was the birth not registered within the prescribed period? *
    - ..................................................................................................................................................................................
    - I, ......................................................................................(Name)............... ...................................................., by occupation
    - residing at ....................................... in the district of.......................... in Uganda, declare that the information above, given by me, is true and correct, that I know this of my own knowledge and that my means of knowing this is (briefly state your means of knowledge and the capacity in which you give this information)
    - .............................................................................................................................................................................................
    - .............................................................................................................................................................................................
    - Signed by ............................ at .......................on this day of .................., 20........
    - .........................................
    - Signature of Declarant
    - In the presence of ......................................................................................... (full name of witness)
    - Living at .................................................................................. (full address)
    - N.B.—
    - 1.All names must be written clearly in block capital letters.
    - 2. All alterations must be initialed.
    - 3.State whether the child is 1st, 2nd or 3rd, etc.
    - * delete whichever is not applicable.
    -
    -
    -
    -@endsection - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/reports/nira/death.blade.php b/docker/statistics/Modules/Reports/Resources/views/reports/nira/death.blade.php deleted file mode 100755 index 807d6eee..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/reports/nira/death.blade.php +++ /dev/null @@ -1,171 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Notification of Death

    -
    -
    - -
    -
    - -
    - -
    -
    - @include('flash::message') - FORM 12 - Regulation 19(4),20(1) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    - THE REGISTRATION OF PERSONS (BIRTHS AND
    - DEATHS) REGULATIONS, 2015 -
    NOTIFICATION OF DEATH
    1Name of deceased
    - Surname ...................................................................................
    - GivenName …………………................OtherName(s) ....................................
    2Date of birth (dd/mm/yy)............................
    - Place of birth ….............................................................................................................
    3Date of death (dd/mm/yy) ............................Time of death...........................................
    - Place of death …............................................................................................................
    - Name of hospital .........................................................
    4No. of house and name of street.....................................
    - City, Municipality, town or village District..................................................................
    5Sex
    6Age
    7Occupatoion
    8Residence
    - a. Village
    - b. Parish
    - c. Sub County
    - d. County
    - e. District
    9 Nationality
    10National Identification Number or Alien Identification Number
    - …/…/…/…/…/…/…/…/…/…/…/…/…/…
    11Cause of death ...........................................................................................................
    12If a dead body is found, also the name and address of the finder and narrate
    - shortly the circumstances .................................................................................................
    - ............................................................................................................................. .......
    - ............................................................................................................................. .......
    13If name unknown, give full description for purposes of identification........................
    - ......................................................................... .................................................... ........
    - .......................................................................................................................... .. .........
    14

    Why was the death not registered within the prescribed period?*.............................
    - ............................................................................................................................. ........
    - I, ......................................., by occupation a …….…………..,residing
    -
    - at ...........................................,in the district of …………………………….
    -
    - in Uganda, declare that the information above, given by me, is true and
    - correct, that I know this of my own knowledge and that my means of
    - knowing this is (briefly state the means of knowledge and the capacity in
    - which you give this information) ...............................................................
    - ....................................................................................................................
    - Signed by …………………………………………… Date(dd/mm/yy)…………………………
    - ..........................................................................
    - Signature of Notifier
    - In the presence of ................................................................................ (name of witness) Living
    - at............................................................................................... .............. (full address)
    - ..........................................................................
    - Signature of Witness

    -

    *delete whichever is not applicable.

    -
    -
    -
    -@endsection - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/attendance.blade.php b/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/attendance.blade.php deleted file mode 100755 index 0d1f0a0f..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/attendance.blade.php +++ /dev/null @@ -1,302 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    No. of Consultations / Hospital attendance

    -
    -
    - -
    -
    - -
    - {{ Form::open(['method' => 'post', 'route'=>'reports_dashboard.attendance'])}} -
    -
    -
    - {{ Form::label('date_range', "Select the date") }} -
    - -
    -
    -
    - -
    - {{ Form::button('Search',['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    -
    - {{ Form::close() }} -
    - {{ Form::open(['method' => 'POST', 'route' => 'reports_dashboard.attendance', 'id' =>'print_top_diagnoses', 'target'=>'_blank']) }} - - -
    - -
    - {{ Form::close() }} -
    -
    - -

    -
    - -

    No. of Consultations / Hospital attendance

    -
    - -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/average_patient_wait_times.blade.php b/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/average_patient_wait_times.blade.php deleted file mode 100755 index 17d13f80..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/average_patient_wait_times.blade.php +++ /dev/null @@ -1,324 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Average wait times for patients

    -
    -
    - -
    -
    -
    - {{ Form::open(['method' => 'post', 'route'=>'reports_dashboard.average_patient_wait_times'])}} -
    -
    -
    - {{ Form::label('date_range', "Select the date") }} -
    - -
    -
    -
    - - -
    - {{ Form::button('Search',['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    -
    -
    -

    -
    - {{ Form::close() }} - -
    - - -
    - -
    - {{-- Wait for Doctor --}} -
    -
    -
    - - {{-- Reception To Triage --}} - {{--
    -
    -
    --}} -
    -
    - {{-- Triage to Doctor --}} - {{--
    -
    -
    --}} - {{-- Doctor to Lab --}} - {{--
    -
    -
    --}} -
    -
    - {{-- Pharmacy treatment Submission To Confirmation--}} - {{--
    -
    -
    --}} - {{-- Pharmacy treatment Submission To Dispensation--}} - {{--
    -
    -
    --}} -
    - -
    -@endsection - -@push('scripts') - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/diagnosis_details.blade.php b/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/diagnosis_details.blade.php deleted file mode 100755 index 41b77e56..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/diagnosis_details.blade.php +++ /dev/null @@ -1,77 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ get_name($id, 'id', 'name', 'diagnoses') }}

    -
    -
    - -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/inpatient_statistics.blade.php b/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/inpatient_statistics.blade.php deleted file mode 100755 index 72bda6cd..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/inpatient_statistics.blade.php +++ /dev/null @@ -1,176 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Inpatient Statistics

    -
    -
    - -
    -
    - -
    - {{ Form::open(['method' => 'post', 'route'=>'reports_dashboard.inpatient_statistics'])}} -
    -
    -
    - {{ Form::label('date_range', "Select the date") }} -
    - -
    -
    -
    - - -
    - {{ Form::button('Search',['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    -
    - {{ Form::close() }} - -
    -

    -
    - -
    -
    -

    Inpatient Statistics

    -
    -
    -
    -

    Average Admission Bills

    -
    - {{ ugandan_shillings($average_admission_bills) }} -
    -
    -

    Total Admission Bills

    -
    - {{ ugandan_shillings($total_accrual_bills) }} -
    -
    -

    Average Days Admitted

    -
    - {{ $average_days_admitted }} -
    -
    -

    Total Patients Admitted

    -
    - {{ $total_patients_seen }} -
    -
    -
    -
    -
    -
    TOP 10 DIAGNOSIS
    -
    - - - - - - - @foreach($admission_diagnoses_array as $diagnosis_id => $number) - - - - - @endforeach - -
    DIAGNOSIS# PATIENTS
    {{ get_name($diagnosis_id, "id", "name", "diagnoses") }}{{ $number }}
    -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') -start_date_div - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/list.blade.php b/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/list.blade.php deleted file mode 100755 index 3e51e0f7..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/list.blade.php +++ /dev/null @@ -1,133 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Reports

    -
    -
    - -
    -
    - -
    -
    -
    - -
    -
    - -
    -
    -
    -@endsection - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/pharmacy_overview.blade.php b/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/pharmacy_overview.blade.php deleted file mode 100755 index 5828b6c6..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/pharmacy_overview.blade.php +++ /dev/null @@ -1,289 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Pharmacy Overview

    -
    -
    - -
    -
    - -
    - {{ Form::open(['method' => 'post', 'route'=>'reports_dashboard.pharmacy_overview'])}} -
    -
    -
    - {{ Form::label('date_range', "Select the date") }} -
    - -
    -
    -
    - - - -
    - {{ Form::button('Search',['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    -
    -
    - -
    - {{ Form::close() }} -
    -

    {{ $display_text }}

    -
    -
    - {{-- Pharmacy Dispensing Chart --}} -
    -
    Pharmacy Dispensing Chart
    - @if(isset($pharmacy_dispensing_pattern_chart)) - {!! $pharmacy_dispensing_pattern_chart->render() !!} -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Paid & Dispensed (P & D)Paid & Undispensed (P & U)Unpaid & Dispensed (U & D)Invoiced & Dispensed (I & D)Invoiced & Undispensed (I & U)
    {{ $paid_and_dispensed_prescriptions }}{{ $paid_and_undispensed_prescriptions }}{{ $unpaid_and_dispensed_prescriptions }}{{ $invoiced_and_dispensed_prescriptions }}{{ $invoiced_and_undispensed_prescriptions }}
    Percentage{{ number_format($paid_and_dispensed_prescriptions_percentage, 0) }} %{{ number_format($paid_and_undispensed_prescriptions_percentage, 0) }} %{{ number_format($unpaid_and_dispensed_prescriptions_percentage, 0) }} %{{ number_format($invoiced_and_dispensed_prescriptions_percentage, 0) }} %{{ number_format($invoiced_and_undispensed_prescriptions_percentage, 0) }} %
    -
    - @endif -
    - {{-- Pharmacy Prescribed Drugs Chart --}} -
    -
    Pharmacy Prescriptions Payment Chart
    - @if(isset($pharmacy_prescription_pattern_chart)) - {!! $pharmacy_prescription_pattern_chart->render() !!} -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Invoiced PrescriptionsUnpaid PrescriptionsPaid PrescriptionsTotal PrescriptionsPurchased Elsewhere Drugs
    {{ $invoiced_prescriptions }}{{ $unpaid_prescriptions }}{{ $paid_prescriptions }}{{ $invoiced_prescriptions + $unpaid_prescriptions + $paid_prescriptions }}{{ $purchased_elsewhere_prescriptions }}
    Percentage{{ number_format($invoiced_prescriptions_percentage, 1) }} %{{ number_format($unpaid_prescriptions_percentage, 1) }} %{{ number_format($paid_prescriptions_percentage, 1) }} %
    -
    - - @endif -
    - -
    -
    - {{-- Drugs Paid by Cash Vs Invoiced --}} -
    -
    Prescriptions Paid by Cash Vs Invoice
    - @if(isset($pharmacy_drugs_via_cash_vs_drugs_via_insurance_chart)) - {!! $pharmacy_drugs_via_cash_vs_drugs_via_insurance_chart->render() !!} -
    - - - - - - - - - - - - - - - - - - - - - - - -
    Paid by CashInvoicedTotal Paid Prescriptions
    {{ $pharmacy_drugs_via_cash }}{{ $pharmacy_drugs_via_insurance }}{{ $pharmacy_drugs_via_cash + $pharmacy_drugs_via_insurance }}
    Percentage {{ number_format($pharmacy_drugs_via_cash_percentage, 1) }} % {{ number_format($pharmacy_drugs_via_insurance_percentage, 1) }} %
    -
    - @endif -
    - {{-- Patient Episodes vs Prescriptions Chart --}} -
    -
    Patient Episodes vs Prescriptions Chart
    - @if(isset($pharmacy_episodes_vs_prescriptions_chart)) - {!! $pharmacy_episodes_vs_prescriptions_chart->render() !!} -
    - - - - - - - - - - - - - - - - - - - - - - - - - -
    PatientEpisodesPrescriptions
    {{ $pharmacy_patients }}{{ $patient_episodes }}{{ $pharmacy_prescriptions }}
    Percentage of episodes with prescriptions{{ number_format($percentage, 1) }}%
    -
    - @endif -
    -
    -
    - {{-- Pharmacy Top Fast Moving Drugs --}} -
    -
    Pharmacy Top Fast Moving Drugs
    - @if(isset($pharmacy_top_drugs_chart)) - {!! $pharmacy_top_drugs_chart->render() !!} - - @endif -
    - {{-- Most Active Pharmacy Staff --}} - {{--
    -
    Most Active Pharmacy Staff
    - @if(isset($pharmacy_most_active_pharmacy_staff_chart)) - {!! $pharmacy_most_active_pharmacy_staff_chart->render() !!} -
    - @endif -
    --}} -
    -
    -
    -@endsection - -@push('scripts') - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/pharmacy_patient_dispensings.blade.php b/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/pharmacy_patient_dispensings.blade.php deleted file mode 100755 index 4de97960..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/pharmacy_patient_dispensings.blade.php +++ /dev/null @@ -1,125 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Pharmacy Patient Dispensing

    -
    -
    - -
    -
    - -
    - {{ Form::open(['method' => 'post', 'route'=>'reports_dashboard.pharmacy_patient_dispensings'])}} -
    -
    -
    - {{ Form::label('date_range', "Select the date") }} -
    - -
    -
    -
    - - -
    - {{ Form::button('Search',['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    -
    - {{ Form::close() }} - -
    - -

    -
    - - @if(count($pharmacy_patient_dispensing_datasets) > 0) -

    Pharmacy Patient Dispensing

    - - {!! $chart->render() !!} - -
    - - {{--
    - - - - - - - - - - - @foreach($patient_dispensings as $patient_dispensing) - - - - - - - @endforeach - -
    Paid & DispensedUnpaid & DispensedPaid & Dispensed
    {{ $patient_dispensing }}{{ $patient_dispensing }}{{ $patient_dispensing }}Details
    -
    --}} - @else -

    No records found

    - @endif -
    -@endsection - -@push('scripts') - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/pharmacy_patient_prescriptions.blade.php b/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/pharmacy_patient_prescriptions.blade.php deleted file mode 100755 index 26cfcec4..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/pharmacy_patient_prescriptions.blade.php +++ /dev/null @@ -1,103 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Pharmacy Patient Prescriptions

    -
    -
    - -
    -
    - -
    - {{ Form::open(['method' => 'post', 'route'=>'reports_dashboard.pharmacy_patient_prescriptions'])}} -
    -
    -
    - {{ Form::label('date_range', "Select the date") }} -
    - -
    -
    -
    - - -
    - {{ Form::button('Search',['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    -
    - {{ Form::close() }} - -
    - -

    -
    - - @if(count($pharmacy_patient_prescriptions_datasets) > 0) -

    Pharmacy Patient Dispensing

    - - {!! $chart->render() !!} - -
    - - @else -

    No records found

    - @endif -
    -@endsection - -@push('scripts') - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/pharmacy_patient_statistics.blade.php b/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/pharmacy_patient_statistics.blade.php deleted file mode 100755 index b6094b3d..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/pharmacy_patient_statistics.blade.php +++ /dev/null @@ -1,127 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Pharmacy Statistics

    -
    -
    - -
    -
    - -
    - {{ Form::open(['method' => 'post', 'route'=>'reports_dashboard.pharmacy_patient_statistics'])}} -
    -
    -
    - {{ Form::label('date_range', "Select the date") }} -
    - -
    -
    -
    - - -
    - {{ Form::button('Search',['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    -
    - {{ Form::close() }} - -
    - -

    -
    - - -

    Pharmacy Statistics

    - - {!! $chart->render() !!} - -
    - {{-- @if(count($diagnoses) > 0) -
    - - - - - - - - - - - - @foreach($diagnoses as $diagnosis) - - - - - - - - @endforeach - -
    Diagnosis NameMaleFemaleTotal
    {{ $diagnosis["name"] }}{{ $diagnosis["male"] }}{{ $diagnosis["female"] }}{{ $diagnosis["total"] }}Details
    -
    - @else -

    No records found

    - @endif --}} -
    -@endsection - -@push('scripts') - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/print_attendance.blade.php b/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/print_attendance.blade.php deleted file mode 100644 index 7a9c9dac..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/print_attendance.blade.php +++ /dev/null @@ -1,300 +0,0 @@ - - - - - - - - - - - - - - - {{ config('app.name', 'Streamline') }} - - - - - - - - - - - - -
    -
    -
    -
    -
    - @php - $hospital_info = \Streamline\Models\HospitalInformation::find(1); - @endphp - - @if(is_null($hospital_info->pdf_print_header)) - Responsive image -

    - {{ $hospital_info->name . ' | ' . $hospital_info->phone_number . ' | ' . - $hospital_info->email . ' | ' . $hospital_info->address . ' ' . - $hospital_info->country }} -

    - @else - Responsive image - @endif -
    -
    -

    No. of Consultations / Hospital attendance

    -

    -
    -
    -
    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/print_top_diagnoses.blade.php b/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/print_top_diagnoses.blade.php deleted file mode 100644 index e205a059..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/print_top_diagnoses.blade.php +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - {{ config('app.name', 'Streamline') }} - - - - - - - - - - - - -
    -
    -
    -
    -
    - @php - $hospital_info = \Streamline\Models\HospitalInformation::find(1); - @endphp - - @if(is_null($hospital_info->pdf_print_header)) - Responsive image -

    - {{ $hospital_info->name . ' | ' . $hospital_info->phone_number . ' | ' . - $hospital_info->email . ' | ' . $hospital_info->address . ' ' . - $hospital_info->country }} -

    - @else - Responsive image - @endif -
    -
    -

    Top Recorded Diagnoses

    -

    -
    -
    -
    - @if(count($diagnoses) > 0) - - {!! $diagnoses_chart->render() !!} - -
    - - - - - - - - - - - - @foreach($diagnoses as $diagnosis) - - - - - - - - @endforeach - -
    Diagnosis NameMaleFemaleTotal
    {{ $diagnosis["name"] }}{{ $diagnosis["male"] }}{{ $diagnosis["female"] }}{{ $diagnosis["total"] }}Details
    - - @else -

    No records found

    - @endif -
    - - -
    - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/print_top_doctors_and_staff.blade.php b/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/print_top_doctors_and_staff.blade.php deleted file mode 100644 index 9250e372..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/print_top_doctors_and_staff.blade.php +++ /dev/null @@ -1,135 +0,0 @@ - - - - - - - - - - - - - - - {{ config('app.name', 'Streamline') }} - - - - - - - - - - - - -
    -
    -
    -
    -
    - @php - $hospital_info = \Streamline\Models\HospitalInformation::find(1); - @endphp - - @if(is_null($hospital_info->pdf_print_header)) - Responsive image -

    - {{ $hospital_info->name . ' | ' . $hospital_info->phone_number . ' | ' . - $hospital_info->email . ' | ' . $hospital_info->address . ' ' . - $hospital_info->country }} -

    - @else - Responsive image - @endif -
    -
    -

    Staff Overview

    -

    -
    -
    -
    -
    - {{-- Top Performing Doctors --}} -
    -
    Top Performing Doctors At OPD
    - @if(isset($top_performing_doctors_chart)) - {!! $top_performing_doctors_chart->render() !!} - @endif -
    -
    - {{-- Top Performing Lab Attendants --}} -
    -
    Top Performing Staff in Lab
    - @if(isset($top_performing_lab_attendants_chart)) - {!! $top_performing_lab_attendants_chart->render() !!} - @endif -
    -
    -
    -
    - {{-- Top Performing Nurses at Triage --}} -
    -
    Top Performing Nurses At Triage
    - @if(isset($top_performing_nurses_at_triage_chart)) - {!! $top_performing_nurses_at_triage_chart->render() !!} - @endif -
    -
    - {{-- Top Performing Receptionists at Triage--}} -
    -
    Top Performing Receptionists
    - @if(isset($top_performing_receptionists_at_triage_chart)) - {!! $top_performing_receptionists_at_triage_chart->render() !!} - @endif -
    -
    -
    - -
    - {{-- Most Active Pharmacy Staff --}} -
    -
    Top Performing Pharmacy Staff
    - @if(isset($top_performing_pharmacy_staff_chart)) - {!! $top_performing_pharmacy_staff_chart->render() !!} - @endif -
    -
    -
    - - -
    - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/staff_overview_investigations.blade.php b/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/staff_overview_investigations.blade.php deleted file mode 100755 index 1ab9b825..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/staff_overview_investigations.blade.php +++ /dev/null @@ -1,181 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('reports.staff_overview_by_investigations') }}

    -
    - -
    - -
    - {{ Form::open(['route' => 'reports_dashboard.staff_overview_investigations', 'data-toggle' => 'validator']) }} - - {{ Form::hidden('user_id', 0, ['id' => 'user_id']) }} - -
    -
    -
    - - -
    -
    - - - -
    - {{ Form::label('user_name', 'Search By User') }} -
    - -
    -
    - -
    -
    - {{ Form::submit(__('investigations.search'), ['class'=>'btn btn-success pull-right']) }} -
    -
    -
    - {{ Form::close() }} -
    - -
    - @include('flash::message') - -

    - -
    - -

    - -
    - -
    - - - - - - - - - - - @if(count($investigations) > 0) - @php $counter = 1 @endphp - @foreach($investigations as $investigation) - - - - - - - @php $counter++ @endphp - @endforeach - @else - - @endif - -
    #InvestigationsResults Created ByResults Created At
    {{ $counter }} - @php $investigation_ids = explode(",", $investigation->investigation_id) @endphp -
      - @foreach($investigation_ids as $id) -
    • {{ $investigation_names[$id] ?? '' }}
    • - @endforeach -
    -
    {{ $investigation->first_name . ' ' . $investigation->last_name }}{{ streamline_date_time($investigation->created_at) }}
    No results available
    -
    - -
    - -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/top_diagnoses.blade.php b/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/top_diagnoses.blade.php deleted file mode 100755 index debeae75..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/top_diagnoses.blade.php +++ /dev/null @@ -1,235 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    Top 10 Diagnoses

    -
    -
    - -
    -
    - -
    - {{ Form::open(['method' => 'post', 'route'=>'reports_dashboard.top_diagnoses'])}} -
    -
    -
    - {{ Form::label('date_range', "Select the date") }} -
    - -
    -
    -
    - - -
    -
    - {{ Form::label(' ') }} -
    - {{ Form::button('Search',['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    -
    -
    -
    - {{ Form::close() }} - {{--
    - {{ Form::open(['method' => 'POST', 'route' => 'reports_dashboard.print_top_diagnoses', 'id' =>'print_top_diagnoses', 'target'=>'_blank']) }} - - - - -
    - -
    - {{ Form::close() }} -
    --}} -
    - -

    -
    - - @if(count($diagnoses) > 0) -

    Top Recorded Diagnoses

    -
    - - {!! $diagnoses_chart->render() !!} -
    -
    - -
    - - - - - - - - - - - - @foreach($diagnoses as $diagnosis) - - - - - - - - @endforeach - -
    Diagnosis NameMaleFemaleTotal
    {{ $diagnosis["name"] }}{{ $diagnosis["male"] }}{{ $diagnosis["female"] }}{{ $diagnosis["total"] }}Details
    -
    - @else -

    No records found

    - @endif -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/top_doctors.blade.php b/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/top_doctors.blade.php deleted file mode 100755 index a690be5b..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/top_doctors.blade.php +++ /dev/null @@ -1,131 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Top Performing Doctors & Other Staff

    -
    -
    - -
    -
    -
    - {{ Form::open(['method' => 'post', 'route'=>'reports_dashboard.top_staff'])}} -
    -
    -
    - {{ Form::label('date_range', "Select the date") }} -
    - -
    -
    -
    - - -
    - {{ Form::button('Search',['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    -
    - {{ Form::close() }} - -
    - -

    - -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/top_doctors_and_staff.blade.php b/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/top_doctors_and_staff.blade.php deleted file mode 100755 index 9338d887..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/top_doctors_and_staff.blade.php +++ /dev/null @@ -1,219 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Staff Overview

    -
    -
    - -
    -
    - -
    - {{ Form::open(['method' => 'post', 'route'=>'reports_dashboard.top_staff'])}} -
    -
    -
    - {{ Form::label('date_range', "Select the date") }} -
    - -
    -
    -
    - - - -
    -
    - {{ Form::label(' ') }} -
    - {{ Form::button('Search',['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    -
    -
    -
    - {{ Form::close() }} -
    - {{-- --}} - -
    - {{--
    - {{ Form::open(['method' => 'POST', 'route' => 'reports_dashboard.top_staff', 'id' =>'print_top_staff', 'target'=>'_blank']) }} - - - - -
    - -
    - {{ Form::close() }} -
    --}} - -
    -

    {{ $display_text }}

    -
    -
    -
    - {{-- Top Performing Doctors --}} -
    -
    Top Performing Doctors At OPD
    - @if(isset($top_performing_doctors_chart)) - {!! $top_performing_doctors_chart->render() !!} - @endif -
    - {{-- Top Performing Lab Attendants --}} -
    -
    Top Performing Staff in Lab
    - @if(isset($top_performing_lab_attendants_chart)) - {!! $top_performing_lab_attendants_chart->render() !!} - @endif -
    -
    -
    - {{-- Top Performing Nurses at Triage --}} -
    -
    Top Performing Nurses At Triage
    - @if(isset($top_performing_nurses_at_triage_chart)) - {!! $top_performing_nurses_at_triage_chart->render() !!} - @endif -
    - {{-- Top Performing Receptionists at Triage--}} -
    -
    Top Performing Receptionists
    - @if(isset($top_performing_receptionists_at_triage_chart)) - {!! $top_performing_receptionists_at_triage_chart->render() !!} - @endif -
    -
    - -
    - {{-- Most Active Pharmacy Staff --}} -
    -
    Top Performing Pharmacy Staff
    - @if(isset($top_performing_pharmacy_staff_chart)) - {!! $top_performing_pharmacy_staff_chart->render() !!} - @endif -
    -
    -
    - {{-- Most Active Pharmacy Staff --}} -
    -
    Top Performing Pharmacy Staff
    - @if(isset($top_performing_pharmacy_staff_chart)) - {!! $top_performing_pharmacy_staff_chart->render() !!} - @endif -
    -
    -
    - -
    -
    -@endsection - -@push('scripts') - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/top_drugs.blade.php b/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/top_drugs.blade.php deleted file mode 100755 index 397404d0..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/top_drugs.blade.php +++ /dev/null @@ -1,127 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Top 10 Drugs

    -
    -
    - -
    -
    - -
    - {{ Form::open(['method' => 'post', 'route'=>'reports_dashboard.top_drugs'])}} -
    -
    -
    - {{ Form::label('date_range', "Select the date") }} -
    - -
    -
    -
    - - -
    - {{ Form::button('Search',['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    -
    - {{ Form::close() }} - -
    - -

    -
    - - @if(count($drugs) > 0) -

    Top Recorded Drugs

    - - {!! $drugs_chart->render() !!} - -
    - -
    - - - - - - - - - - - - @foreach($drugs as $drug) - - - - - - - - @endforeach - -
    Drug NameMaleFemaleTotal
    {{ $drug["name"] }}{{ $drug["male"] }}{{ $drug["female"] }}{{ $drug["total"] }}
    -
    - @else -

    No records found

    - @endif -
    -@endsection - -@push('scripts') - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/top_investigations.blade.php b/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/top_investigations.blade.php deleted file mode 100755 index d7156e41..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/top_investigations.blade.php +++ /dev/null @@ -1,127 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Top 10 Investigations

    -
    -
    - -
    -
    - -
    - {{ Form::open(['method' => 'post', 'route'=>'reports_dashboard.top_investigations'])}} -
    -
    -
    - {{ Form::label('date_range', "Select the date") }} -
    - -
    -
    -
    - - -
    - {{ Form::button('Search',['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    -
    - {{ Form::close() }} - -
    - -

    -
    - - @if(count($investigations) > 0) -

    Top Recorded Investigations

    - - {!! $investigation_chart->render() !!} - -
    - -
    - - - - - - - - - - - - @foreach($investigations as $investigation) - - - - - - - - @endforeach - -
    Investigation NameMaleFemaleTotal
    {{ $investigation["name"] }}{{ $investigation["male"] }}{{ $investigation["female"] }}{{ $investigation["total"] }}
    -
    - @else -

    No records found

    - @endif -
    -@endsection - -@push('scripts') - - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/top_suppliers.blade.php b/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/top_suppliers.blade.php deleted file mode 100755 index 044f3bbe..00000000 --- a/docker/statistics/Modules/Reports/Resources/views/reports_dashboard/top_suppliers.blade.php +++ /dev/null @@ -1,119 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Top Suppliers

    -
    -
    - -
    -
    -
    - {{ Form::open(['method' => 'post', 'route'=>'reports_dashboard.top_suppliers'])}} -
    -
    -
    - {{ Form::label('date_range', "Select the date") }} -
    - -
    -
    -
    - - -
    - {{ Form::button('Search',['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    -
    - {{ Form::close() }} - -
    - -

    -
    - -
    -
    -@endsection - -@push('scripts') - - - - -@endpush diff --git a/docker/statistics/Modules/Reports/Routes/api.php b/docker/statistics/Modules/Reports/Routes/api.php deleted file mode 100644 index f3595d13..00000000 --- a/docker/statistics/Modules/Reports/Routes/api.php +++ /dev/null @@ -1,18 +0,0 @@ -get('/reports', function () { - return "Reports"; -}); diff --git a/docker/statistics/Modules/Reports/Routes/web.php b/docker/statistics/Modules/Reports/Routes/web.php deleted file mode 100644 index bd081668..00000000 --- a/docker/statistics/Modules/Reports/Routes/web.php +++ /dev/null @@ -1,135 +0,0 @@ - ['auth', 'disablebackbutton', 'user-locale','subscription-tracking', 'password-expiry']], function () { - // Memorised Reports - Route::resource('reports', 'StreamlineReportsController'); - Route::resource('streamline_reports', 'StreamlineReportsController'); - Route::any('opd_attendance_referrals_diagnosis_totals', 'HmisController@opd_attendance_referrals_diagnosis_totals'); - Route::get('charge-book', 'StreamlineReportsController@charge_book')->name('reports.charge-book'); - Route::get('charge-book/print', 'StreamlineReportsController@charge_book_print')->name('reports.charge-book.print'); - Route::get('health_unit_quarterly_report', 'StreamlineReportsController@health_unit_quarterly_report')->name('streamline_reports.health_unit_quarterly_report'); - Route::get('list/hmis-reports', 'StreamlineReportsController@list_hmis_reports'); - Route::get('list_memorised_reports', 'StreamlineReportsController@listReports'); - Route::any('weekly_epidemiological_surveillance_form', 'HmisController@weekly_epidemiological_surveillance_surveillance_form'); - Route::any('weekly_epidemiological_surveillance_cases_details/{diagnosis_id}', 'HmisController@weekly_epidemiological_surveillance_cases_details'); - Route::any('weekly_epidemiological_surveillance_deaths_details/{diagnosis_id}', 'HmisController@weekly_epidemiological_surveillance_deaths_details'); - Route::any('/streamline_reports/streamline_reports_details', 'StreamlineReportsController@streamline_reports_details')->name('streamline_reports.streamline_reports_details'); - Route::any('/streamline_reports/diagnosis_drill_down/{diagnosis_id}/{gender}', 'StreamlineReportsController@diagnosis_drill_down')->name('streamline_reports.diagnosis_drill_down'); - Route::any('/streamline_reports/treatments_drill_down/{drug_id}', 'StreamlineReportsController@treatments_drill_down')->name('streamline_reports.treatments_drill_down'); - Route::any('/streamline_reports/investigations_drill_down/{investigation_id}', 'StreamlineReportsController@investigations_drill_down')->name('streamline_reports.investigations_drill_down'); - Route::any('/streamline_reports/symptoms_drill_down/{symptom_id}', 'StreamlineReportsController@symptoms_drill_down')->name('streamline_reports.symptoms_drill_down'); - Route::any('/streamline_reports/print_patient_visits_report', 'StreamlineReportsController@print_patient_visits_report')->name('streamline_reports.print_patient_visits_report'); - Route::any('/streamline_reports/patient_visits_breakdown/{title}/{patients}', 'StreamlineReportsController@patient_visits_breakdown'); - Route::any('/streamline_reports/doctors_performance_report_details', 'StreamlineReportsController@doctors_performance_report_details'); - Route::any('bmi_report', 'StreamlineReportsController@bmi_report'); - Route::any('bmi_report_details', 'StreamlineReportsController@bmi_report_details'); - Route::any('family_planning_report', 'StreamlineReportsController@family_planning_report'); - Route::any('family_planning_report_details', 'StreamlineReportsController@family_planning_report_details'); - Route::any('rdt_report', 'StreamlineReportsController@rdt_report'); - Route::any('anaesthesia_report', 'StreamlineReportsController@anaesthesia_report'); - Route::any('surgery_report', 'StreamlineReportsController@surgery_report'); - Route::any('ward_re_admittance_report', 'StreamlineReportsController@ward_re_admittance_report')->name('ward_re_admittance_report'); - Route::any('/memorised_reports/patients_lost_to_follow_up', 'StreamlineReportsController@patients_lost_to_follow_up')->name('memorised_reports.patients_lost_to_follow_up'); - Route::any('/memorised_reports/days_drugs_out_of_stock', 'StreamlineReportsController@days_drugs_out_of_stock')->name('memorised_reports.days_drugs_out_of_stock'); - Route::any('/memorised_reports/view_investigation_specimen_report', 'StreamlineReportsController@view_investigation_specimen_report')->name('memorised_reports.view_investigation_specimen_report'); - Route::any('procedures_report','StreamlineReportsController@procedures_report'); - Route::any('tb_screening_report', 'StreamlineReportsController@tb_screening_report')->name('streamline_reports.tb_screening_report'); - Route::any('tb_screening_report_presumptive_details', 'StreamlineReportsController@tb_screening_report_presumptive')->name('streamline_reports.tb_screening_report_presumptive'); - Route::any('tb_screening_report_triage_details', 'StreamlineReportsController@tb_screening_report_triage_details')->name('streamline_reports.tb_screening_report_triage'); - Route::any('performed_services_report','StreamlineReportsController@performed_services_report'); - Route::any('memorised_reports/maternity_report', 'StreamlineReportsController@maternity_report'); - Route::any('maternity_report_details', 'StreamlineReportsController@maternity_report_details')->name('streamline_reports.maternity_report_details'); - Route::any('tb_screening_triage_presumptives', 'StreamlineReportsController@tb_screening_triage_presumptives')->name('streamline_reports.tb_screening_triage_presumptives'); - - Route::match(array('GET','POST'), '/hmis/108/surgical-procedures', 'HmisController@hmis_108_procedures'); - Route::match(array('GET','POST'), '/hmis/108/radiology-and-imaging', 'HmisController@hmis_108_radiology_and_imaging'); - Route::match(array('GET','POST'), '/hmis/108/admissions-and-deaths', 'HmisController@hmis_108_admissions_and_deaths'); - Route::match(array('GET','POST'), '/hmis/108/mental-health', 'HmisController@hmis_108_mental_health'); - Route::match(array('GET','POST'), '/hmis/108/other-sections', 'HmisController@hmis_108_others'); - Route::match(array('GET','POST'), '/hmis/108/special-services', 'HmisController@hmis_108_special_services'); - Route::match(array('GET','POST'), '/hmis/033b/weekly_cases_and_deaths', 'HmisController@weekly_cases_and_deaths'); - Route::match(array('GET','POST'), '/hmis/105/monthly-outpatient-diagnoses', 'HmisController105@monthly_outpatient_diagnoses'); - - // HMIS Reports - Route::any('/hmis/105', 'HmisController105@hmis_105'); - Route::get('/hmis/105/print/{date_from}/{date_to}', 'HmisController105@print_hmis_105'); - Route::post('/hmis/105/print_Hmis_105_information', 'HmisController105@print_Hmis_105_information')->name('hmis_105.print_Hmis_105_information'); - Route::any('/hmis/105/risky-behaviours', 'HmisController105@risky_behaviours'); - Route::post('/hmis/105/risky-behaviours/drill-down', 'HmisController105@risky_behaviour_drill'); - Route::any('/hmis/108/surgical-procedures', 'HmisController@hmis_108_procedures'); - Route::any('/hmis/108/radiology-and-imaging', 'HmisController@hmis_108_radiology_and_imaging'); - Route::any('/hmis/108/admissions-and-deaths', 'HmisController@hmis_108_admissions_and_deaths'); - Route::any('/hmis/108/mental-health', 'HmisController@hmis_108_mental_health'); - Route::any('/hmis/108/other-sections', 'HmisController@hmis_108_others'); - Route::any('/hmis/108/special-services', 'HmisController@hmis_108_special_services'); - Route::any('/hmis/033b/weekly_cases_and_deaths', 'HmisController@weekly_cases_and_deaths'); - Route::get('opd_attendance_details/{patients}', 'HmisController105@opd_attendance_drill'); - Route::get('census_info_drill/{patients}/{page?}', 'HmisController@hmis_108_drill'); - Route::post('hmis-108-patient-information', 'HmisController@hmis_108_drill')->name('hmis_108.drill_down'); - Route::get('opd_referral_details/{patients}', 'HmisController105@opd_referral_drill'); - Route::get('opd-diagnosis-details/{patients}', 'HmisController105@opd_diagnosis_drill'); - - Route::resource('hmis_reports', 'HmisController'); - Route::any('expired_drugs_report', 'HmisController@expired_drugs_report'); - Route::any('drug_stock_level', 'HmisController@drug_stock_level'); - Route::any('essential_medicines_report', 'HmisController@essential_medicines_report'); - - Route::any('out_patient_register_report', 'HmisController@out_patient_register_report'); - Route::any('out_patient_register_report_2', 'HmisController@out_patient_register_report_2'); - Route::any('hmis/002/page-1', 'HmisController002@page_1'); - Route::any('hmis/002/page-2', 'HmisController002@page_2')->name('hmis_report_002_page_2'); - Route::any('hmis/002/page-1/print/{start_date}/{end_date}', 'HmisController002@page_1_print'); - Route::post('hmis/002/page-2/print', 'HmisController002@page_2_print'); - Route::get('/hmis_data', 'HmisController105@hmis_data'); - - Route::any('drug_consumption_report', 'HmisController@drug_consumption_report'); - Route::any('drug_consumption_analysis', 'HmisController@drug_consumption_analysis'); - Route::any('streamline_outpatient_report', 'HmisController@streamline_outpatient_report'); - Route::any('streamline_outpatient_income_details', 'HmisController@streamline_outpatient_income_details')->name('streamline_outpatient_income_details'); - Route::any('streamline_outpatient_details', 'HmisController@streamline_outpatient_details')->name('streamline_outpatient_details'); - Route::any('streamline_outpatient_attendance_details', 'HmisController@streamline_outpatient_attendance_details'); - Route::any('disease_prevalence_charts', 'HmisController@disease_prevalence_charts')->name('disease_prevalence_charts'); - - Route::any('/hmis/108', 'HmisController@hmis_108')->name('hmis.108'); - Route::post('/hmis/108/print_Hmis_108_information', 'HmisController@print_Hmis_108_information')->name('hmis_108.print_Hmis_108_information'); - Route::post('/hmis/033b/print', 'HmisController@print_hmis_033b')->name('print_hmis_033b'); - - Route::any('admission_details/{ward_id}/{from}/{to}', 'HmisController108@admission_details'); - - // Dashboard Reports - Route::any('reports_dashboard/list', 'ReportsDashboardController@list')->name('reports_dashboard.list'); - Route::any('reports_dashboard/top_diagnoses', 'ReportsDashboardController@top_diagnoses')->name('reports_dashboard.top_diagnoses'); - Route::post('print_top_diagnoses', 'ReportsDashboardController@print_top_diagnoses')->name('reports_dashboard.print_top_diagnoses'); - Route::any('reports_dashboard/top_drugs', 'ReportsDashboardController@top_drugs')->name('reports_dashboard.top_drugs'); - Route::any('reports_dashboard/top_investigations', 'ReportsDashboardController@top_investigations')->name('reports_dashboard.top_investigations'); - Route::any('reports_dashboard/diagnosis_details/{id}', 'ReportsDashboardController@diagnosis_details'); - Route::any('reports_dashboard/attendance', 'ReportsDashboardController@attendance')->name('reports_dashboard.attendance'); - Route::any('reports_dashboard/top_suppliers', 'ReportsDashboardController@top_suppliers')->name('reports_dashboard.top_suppliers'); - Route::any('reports_dashboard/top_staff', 'ReportsDashboardController@top_staff')->name('reports_dashboard.top_staff'); - Route::any('reports_dashboard/staff_overview_investigations', 'ReportsDashboardController@staff_overview_investigations')->name('reports_dashboard.staff_overview_investigations'); - Route::any('reports_dashboard/average_patient_wait_times', 'ReportsDashboardController@average_patient_wait_times')->name('reports_dashboard.average_patient_wait_times'); - Route::any('reports_dashboard/pharmacy_overview', 'ReportsDashboardController@pharmacy_overview')->name('reports_dashboard.pharmacy_overview'); - Route::any('reports_dashboard/pharmacy_lists', 'ReportsDashboardController@pharmacy_lists')->name('reports_dashboard.pharmacy_lists'); - Route::any('reports_dashboard/inpatient_statistics', 'ReportsDashboardController@inpatient_statistics')->name('reports_dashboard.inpatient_statistics'); - Route::any('reports_dashboard/pharmacy_patient_statistics', 'ReportsDashboardController@pharmacy_patient_statistics')->name('reports_dashboard.pharmacy_patient_statistics'); - Route::any('reports_dashboard/pharmacy_patient_prescriptions', 'ReportsDashboardController@pharmacy_patient_prescriptions')->name('reports_dashboard.pharmacy_patient_prescriptions'); - Route::any('reports_dashboard/pharmacy_patient_dispensings', 'ReportsDashboardController@pharmacy_patient_dispensings')->name('reports_dashboard.pharmacy_patient_dispensings'); - - // Nira Reports - Route::get('/reports/nira/birth', 'NiraReportController@birth_report'); - Route::get('/reports/nira/death', 'NiraReportController@death_report'); - - /* Mental Health Reports */ - Route::any('/mental_health_reports/diagnosed_patients', 'MentalHealthReportsController@diagnosed_patients')->name('mental_health_reports.diagnosed_patients'); - Route::any('/mental_health_reports/persons_taking_psychotropic_drugs', 'MentalHealthReportsController@persons_taking_psychotropic_drugs')->name('mental_health_reports.persons_taking_psychotropic_drugs'); - Route::any('/mental_health_reports/diagnosed_persons_who_received_treatment', 'MentalHealthReportsController@diagnosed_persons_who_received_treatment')->name('mental_health_reports.diagnosed_persons_who_received_treatment'); - Route::any('/mental_health_reports/patients_lost_to_follow_up', 'MentalHealthReportsController@patients_lost_to_follow_up')->name('mental_health_reports.patients_lost_to_follow_up'); - Route::any('/mental_health_reports/days_drugs_out_of_stock', 'MentalHealthReportsController@days_drugs_out_of_stock')->name('mental_health_reports.days_drugs_out_of_stock'); - - Route::get('get_registration_field_options', 'StreamlineReportsController@get_registration_field_options'); - - Route::any('/memorised_reports/view_eye_clinic_report', 'StreamlineReportsController@view_eye_clinic_report')->name('memorised_reports.view_eye_clinic_report'); - Route::any('/memorised_reports/print_eye_clinic_report/{start_date}/{end_date}', 'StreamlineReportsController@print_eye_clinic_report')->name('memorised_reports.print_eye_clinic_report'); -}); diff --git a/docker/statistics/Modules/Reports/bitbucket-pipelines.yml b/docker/statistics/Modules/Reports/bitbucket-pipelines.yml deleted file mode 100644 index e850a8fd..00000000 --- a/docker/statistics/Modules/Reports/bitbucket-pipelines.yml +++ /dev/null @@ -1,19 +0,0 @@ -image: alpine/git:latest - -pipelines: - branches: - main: - - step: - name: Merge To Beta - script: - - git remote set-url origin https://Kabricks:${APP_SECRET}@bitbucket.org/dcsammi/${BITBUCKET_REPO_SLUG} - - git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*" - - git fetch - - git checkout beta - - git merge main - - git commit --amend -m "[skip ci] Merge changes from main" - - git push - - step: - name: Deploy To Test - script: - - echo "Ready to deploy to demo or production!" diff --git a/docker/statistics/Modules/Reports/module.json b/docker/statistics/Modules/Reports/module.json deleted file mode 100644 index d985c8e1..00000000 --- a/docker/statistics/Modules/Reports/module.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "Reports", - "alias": "reports", - "description": "Streamline reports including memorised reports, HMIS reports and dashboard reports", - "keywords": [], - "priority": 0, - "providers": [ - "Modules\\Reports\\Providers\\ReportsServiceProvider" - ], - "files": [] -} diff --git a/docker/statistics/Modules/Stores/Config/config.php b/docker/statistics/Modules/Stores/Config/config.php deleted file mode 100644 index d7b3be97..00000000 --- a/docker/statistics/Modules/Stores/Config/config.php +++ /dev/null @@ -1,5 +0,0 @@ - 'Stores' -]; diff --git a/docker/statistics/Modules/Stores/Http/Controllers/Controller.php b/docker/statistics/Modules/Stores/Http/Controllers/Controller.php deleted file mode 100755 index 47b0fd0f..00000000 --- a/docker/statistics/Modules/Stores/Http/Controllers/Controller.php +++ /dev/null @@ -1,13 +0,0 @@ -middleware('auth'); - $this->middleware('permission:stores-home', ['only' => ['index']]); - } - - /** - * Display a listing of the resource. - */ - public function index() { - return view('stores::stores.index'); - } - - /** - * Show the form for creating a new resource. - */ - public function create() { - // - } - - /** - * Store a newly created resource in storage. - */ - public function store(Request $request) { - // - } - - /** - * Display the specified resource. - */ - public function show($id) { - // - } - - /** - * Show the form for editing the specified resource. - */ - public function edit($id) { - // - } - - /** - * Update the specified resource in storage. - */ - public function update(Request $request, $id) { - // - } - - /** - * Remove the specified resource from storage. - */ - public function destroy($id) { - // - } - - /* - select a quotation type - */ - public function select_quotation_type() { - $quotation_type_options = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $quotation_type_options = ['' => '- Select Quotation type -'] + $quotation_type_options; - return view('stores::stores.select_quotation', compact('quotation_type_options')); - } - - /* - display page for requesting a quotation of the selected type from @select_quotation_type() method - */ - public function request_a_quotation(Request $request) { - $quotation_type = $request->quotation_type; - - $items = null; - $suppliers = DB::table('suppliers')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - - $quotation_types_array = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $package_units = DB::table('package_units')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $package_units = ['' => '- select -'] + $package_units; - - //1-Drug 2-Sundry 3-Dental 4-Radiology 5-Lab 6-General Items - $item_ids_array = []; - if ($quotation_type == 1) { - $items = Drug::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 2) { - $items = Sundry::whereIn('id', $item_ids_array)->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 3) { - $items = Dental::whereIn('id', $item_ids_array)->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 4) { - $items = Radiology::whereIn('id', $item_ids_array)->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 5) { - $items = Lab::whereIn('id', $item_ids_array)->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 6) { - $items = GeneralItem::whereIn('id', $item_ids_array)->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 7) { - $items = EyeGlasses::whereIn('id', $item_ids_array)->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - } - - $drugs = Drug::where('available', 1)->orderby('name')->pluck('name', 'id')->prepend('All drugs', 'all_items'); - $sundries = Sundry::where('available', 1)->orderby('name')->pluck('name', 'id')->prepend('All sundries', 'all_items'); - $dentals = Dental::orderBy('name')->pluck('name', 'id')->prepend('All dentals', 'all_items'); - $radiologies = Radiology::orderBy('name')->pluck('name', 'id')->prepend('All radiologies', 'all_items'); - $labs = Lab::orderBy('name')->pluck('name', 'id')->prepend('All labs', 'all_items'); - $general_items = GeneralItem::orderBy('name')->pluck('name', 'id')->prepend('All general items', 'all_items'); - $opticals = EyeGlasses::orderBy('name')->pluck('name', 'id')->prepend('All optical items', 'all_items'); - - return view('stores::stores.request_quotation', compact('items', 'quotation_type', 'suppliers', 'quotation_types_array', 'package_units', 'drugs', 'sundries', 'dentals', 'radiologies', 'labs', 'general_items', 'opticals')); - } - - /* - function to save a new supplier - */ - public function save_new_supplier(Request $request) - { - $supplier = new Supplier; - $supplier->name = $request->supplier_name; - $supplier->company = $request->supplier_company; - $supplier->mobile_number = $request->supplier_contact; - $supplier->address = $request->supplier_address; - $supplier->created_by = Auth::id(); - $supplier->updated_by = Auth::id(); - $supplier->save(); - return $supplier->id; - } - - /* temporarily store the requested quotation */ - public function store_request_quotation_temporarily(Request $request) - { - $validator = Validator::make($request->all(), [ - /* 'expected_date' => 'required', - 'supplier' => 'required' */ - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash('Please make sure you fill in the supplier and expected date')->error(); - return redirect('select_quotation_type'); - } else { - $item_id_array = $request->item_id; - $quantity_array = $request->quantity; - $expected_date = Carbon::createFromFormat('d/m/Y', $request->expected_date)->toDateString(); - $item_type = $request->item_type; - - if (array_sum($quantity_array) < 1) { - flash('Please insert in some values')->error(); - return redirect('select_quotation_type'); - } - - $item_ids = implode(',', $item_id_array); - $quantity = implode(',', $quantity_array); - - $supplier_id_array = $request->supplier; - - if (!is_array($supplier_id_array)) { - $supplier_id_array = [$supplier_id_array]; - } - - for($y = 0; $y < count($supplier_id_array); $y++) { - $eloquent_model = is_null($request->quotation_id_temporary) ? null : TemporaryQuotation::find($request->quotation_id_temporary); - $eloquent_model = is_null($eloquent_model) ? New TemporaryQuotation : $eloquent_model; - $eloquent_model->quotation_type_id = $item_type; - $eloquent_model->drug_id = $item_ids; - $eloquent_model->package_unit = implode(",", $request->package_unit); - $eloquent_model->number_of_package_units = implode(",", $request->number_of_package_units); - $eloquent_model->quantity_per_package_unit = implode(",", $request->quantity_per_package_unit); - $eloquent_model->quantity = $quantity; - $eloquent_model->expected_date = $expected_date; - $eloquent_model->supplier_id = $supplier_id_array[$y]; - $eloquent_model->created_by = Auth::id(); - $eloquent_model->save(); - } - - flash('Saved Temporary Quotation Successfully')->success(); - return redirect('select_temporary_quotation_type'); - } - } - - public function select_temporary_quotation() - { - $quotation_type_options = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $quotation_type_options = ['' => '- Select Quotation type -'] + $quotation_type_options; - return view('stores::stores.select_temporary_quotation', compact('quotation_type_options')); - } - - /* view all temporary quotations of a selected type */ - public function temporary_quotations(Request $request) - { - $quotation_type = $request->quotation_type; - //1-drug 2-sundry 3-dental 4-radiology 5-Lab - $results = TemporaryQuotation::where(['quotation_type_id' => $quotation_type, 'completion_status' => 0])->orderBy('id', 'desc')->get(); - return view('stores::stores.view_temporary_quotations', compact('results', 'quotation_type')); - } - - /* edit temporary quotations */ - public function edit_temporary_quotations(Request $request) - { - $quotation_type = $request->item_type; - $quotation_id = $request->quotation_id; - $suppliers = DB::table('suppliers')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $suppliers = ['' => '- select -'] + $suppliers; - $quotation_results = TemporaryQuotation::where(['id' => $quotation_id, 'completion_status' => 0])->orderBy('id', 'desc')->get(); - $package_units = DB::table('package_units')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $package_units = ['' => '- select -'] + $package_units; - $added_items_collection = null; - - $items = []; - - //1-drug 2-sundry 3-dental 4-radiology 5-Lab - if ($quotation_type == 1) { - $items = Drug::whereNull('deleted_at')->orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 2) { - $items = Sundry::whereNull('deleted_at')->orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 3) { - $items = Dental::whereNull('deleted_at')->orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 4) { - $items = Radiology::whereNull('deleted_at')->orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 5) { - $items = Lab::whereNull('deleted_at')->orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 6) { - $items = GeneralItem::whereNull('deleted_at')->orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 6) { - $items = EyeGlasses::whereNull('deleted_at')->orderBy('name', 'asc')->get(); - } - - $drugs = Drug::where('available', 1)->orderby('name')->pluck('name', 'id')->prepend('All drugs', 'all_items'); - $sundries = Sundry::where('available', 1)->orderby('name')->pluck('name', 'id')->prepend('All sundries', 'all_items'); - $dentals = Dental::orderBy('name')->pluck('name', 'id')->prepend('All dentals', 'all_items'); - $radiologies = Radiology::orderBy('name')->pluck('name', 'id')->prepend('All radiologies', 'all_items'); - $labs = Lab::orderBy('name')->pluck('name', 'id')->prepend('All labs', 'all_items'); - $general_items = GeneralItem::orderBy('name')->pluck('name', 'id')->prepend('All general items', 'all_items'); - $opticals = EyeGlasses::orderBy('name')->pluck('name', 'id')->prepend('All optical items', 'all_items'); - - return view('stores::stores.edit_temporary_quotation', compact('items', 'quotation_type', 'suppliers', 'quotation_id', 'quotation_results', 'package_units', 'added_items_collection', 'drugs', - 'sundries', 'dentals', 'radiologies', 'labs', 'general_items', 'opticals')); - } - - /* store the requested quotation*/ - public function store_request_quotation(Request $request) - { - $validator = Validator::make($request->all(), [ - 'expected_date' => 'required', - 'supplier' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash('Please make sure you fill in the supplier and expected date')->error(); - return redirect('select_quotation_type'); - } else { - $item_id_array = $request->item_id; - $quantity_array = $request->quantity; - $package_unit_array = $request->package_unit; - $number_of_package_units_array = $request->number_of_package_units; - $quantity_per_package_unit_array = $request->quantity_per_package_unit; - $expected_date = strpos($request->expected_date, '-') !== false ? $request->expected_date : Carbon::createFromFormat('d/m/Y', $request->expected_date)->toDateString(); - $memo = $request->memo; - $user_id = Auth::id(); - $item_type = $request->item_type; - $quotation_date = Carbon::now(); - - if (array_sum($quantity_array) < 1) { - flash('Please insert in some values')->error(); - return redirect('select_quotation_type'); - } - - $supplier_id_array = $request->supplier; - - if (!is_array($supplier_id_array)) { - $supplier_id_array = [$supplier_id_array]; - } - - $count = count($item_id_array); - $form_data = array(); - - for($y = 0; $y < count($supplier_id_array); $y++) { - $supplier_id = $supplier_id_array[$y]; - $results = DB::select("select max(quotation_number) quotation_number from quotations limit 1"); - $current_quotation_number = 0; - foreach ($results as $result) { - $current_quotation_number = $result->quotation_number + 1; - } - - //$non_zero_count = count(array_filter($quantity_array, "nonzero")); generating an error for but to be reviewed - $non_zero_count = count($quantity_array); - $expected_last_quotation_number = $current_quotation_number + $non_zero_count; - - for ($x = 0; $x < $count; $x++) : - if (empty($quantity_array[$x])) : - continue; - endif; - - if (empty($item_id_array[$x])) : - continue; - endif; - - $eloquent_model = new Quotation; - $eloquent_model->quotation_type_id = $item_type; - $eloquent_model->drug_id = $item_id_array[$x]; - $eloquent_model->package_unit = $package_unit_array[$x]; - $eloquent_model->number_of_package_units = $number_of_package_units_array[$x]; - $eloquent_model->quantity_per_package_unit = $quantity_per_package_unit_array[$x]; - $eloquent_model->quantity = $quantity_array[$x]; - $eloquent_model->expected_date = $expected_date; - $eloquent_model->quotation_user = $user_id; - $eloquent_model->quotation_number = $current_quotation_number; - $eloquent_model->quotation_date = $quotation_date; - $eloquent_model->supplier_id = $supplier_id; - $eloquent_model->created_by = Auth::id(); - $eloquent_model->save(); - endfor; - - $last_quotation_id = $eloquent_model->id; - $new_quotation_number = get_name($last_quotation_id, "id", "quotation_number", "quotations"); - - if (isset($request->submit_quotation_for_drugs) && ($new_quotation_number == $expected_last_quotation_number)) { - - $temporary_quotation_id = $request->quotation_id_temporary; - $eloquent_model_to_update = TemporaryQuotation::find($temporary_quotation_id); - $eloquent_model_to_update->completion_status = 1; - $eloquent_model_to_update->updated_by = Auth::id(); - $eloquent_model_to_update->updated_at = Carbon::now(); - $eloquent_model_to_update->update(); - } - } - - - flash('Request for quotation was successful')->success(); - return redirect('items_purchase_order?item_type=' . $item_type . '"ation_number=' . $current_quotation_number); - } - } - - public function items_purchase_order() - { - $quotation_number = $_GET['quotation_number']; - $item_type = $_GET['item_type']; - $hospital_details = HospitalInformation::first(); - $table_quotations = "quotations"; - $quotation_results = DB::select("select * from $table_quotations where quotation_number = {$quotation_number}"); - - return view('stores::stores.items_purchase_order', compact('quotation_number', 'item_type', 'hospital_details', 'quotation_results', 'table_quotations')); - } - - public function quotation_to_bill(Request $request) - { - $quotation_type_options = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $quotation_type_options = ['' => '- Select Quotation type -'] + $quotation_type_options; - $results = 0; - $table_quotations = ""; - $item_type = ""; - - if (isset($request->quotation_type)) { - $item_type = $request->quotation_type; - $table_quotations = "quotations"; - $results = DB::select("select DISTINCT(quotation_number) from quotations where quotation_type_id= $item_type AND receive_status = 0 AND approval_status = 0 AND deleted_at IS NULL ORDER BY quotation_number desc"); - $result_message = "There are no pending quotations for " . strtolower($item_type); - } - $package_units = DB::table('package_units')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $package_units = ['' => '- select -'] + $package_units; - - $quotation_types_array = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - return view('stores::stores.quotation_to_bill', compact('quotation_type_options', 'item_type', 'results', 'table_quotations', 'quotation_types_array', 'package_units')); - } - - public function bill_items(Request $request) - { - if (isset($request->add_bill_button)) { - $table_quotations = "quotations"; - $package_units = DB::table('package_units')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $package_units = ['' => '- select -'] + $package_units; - $quotation_number = $request->quotation_number; - $item_type = $request->item_type; - $supplier_id = get_name($quotation_number, 'quotation_number', 'supplier_id', 'quotations'); - $quotation_types_array = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $results = DB::select("SELECT * FROM quotations where quotation_number = {$quotation_number}"); - - return view('stores::stores.bill_items', compact('quotation_number', 'item_type', 'results', 'table_quotations', 'supplier_id', 'quotation_types_array', 'package_units')); - } elseif (isset($request->delete_quotation)) { - $quotation_number = $request->quotation_number; - $eloquent_model = Quotation::where(['quotation_number' => $quotation_number])->delete(); - - if ($eloquent_model) { - flash('Quotation has been deleted')->success(); - } else { - flash('Unable to delete quotation. Please try again')->error(); - } - - return redirect('quotation_to_bill'); - } else { - return redirect('quotation_to_bill'); - } - } - - /* store billed drugs */ - public function store_drug_bill(Request $request) - { - $hospital_details = HospitalInformation::first(); - $quotation_id = $request->quotation_id; - $quantity_required = $request->quantity_required; - $bill = $request->bill; - $package_unit_array = $request->package_unit; - $number_of_package_units_array = $request->number_of_package_units; - $quantity_per_package_unit_array = $request->quantity_per_package_unit; - $quantity_per_package_unit_array = $request->quantity_per_package_unit; - $bill_per_package_unit_array = $request->bill_per_package_unit; - $billing_date = Carbon::now(); - $billing_user = Auth::id(); - $form_data = array(); - $full_quotation_id_array = array(); - $item_type = $request->item_type; - $supplier_reference = $request->supplier_reference; - $quotation_number_full = get_name($quotation_id[0], 'id', 'quotation_number', 'quotations'); - - $full_quotation_id_results = DB::select("SELECT id FROM quotations where quotation_number = {$quotation_number_full}"); - foreach ($full_quotation_id_results as $result) { - array_push($full_quotation_id_array, $result->id); - } - - $deletion_quotation_id_array = array_diff($full_quotation_id_array, $quotation_id); - - $count = count($quotation_id); - for ($x = 0; $x < $count; $x++) : - //$total_price = ($quantity_required[$x] * $bill[$x]); - $total_price = ($number_of_package_units_array[$x] * $bill_per_package_unit_array[$x]); - - $eloquent_model = Quotation::find($quotation_id[$x]); - $eloquent_model->quotation_type_id = $item_type; - $eloquent_model->bill = $bill[$x]; - $eloquent_model->package_unit = $package_unit_array[$x]; - $eloquent_model->number_of_package_units = $number_of_package_units_array[$x]; - $eloquent_model->quantity_per_package_unit = $quantity_per_package_unit_array[$x]; - $eloquent_model->bill_per_package_unit = $bill_per_package_unit_array[$x]; - $eloquent_model->billing_date = $billing_date; - $eloquent_model->billing_user = $billing_user; - $eloquent_model->total_price = $total_price; - $eloquent_model->quantity = $quantity_required[$x]; - $eloquent_model->supplier_reference = $supplier_reference; - $eloquent_model->updated_by = $billing_user; - $eloquent_model->updated_at = Carbon::now(); - $update_bill = $eloquent_model->update(); - endfor; - - if ($update_bill) { - foreach ($deletion_quotation_id_array as $value) { - DB::table('quotations')->where('id', '=', $value)->delete(); - } - } - // Acquiring the quotation number for use in the session - $quotation_number = get_name($quotation_id[0], "id", "quotation_number", "quotations"); - // Setting the session to be used on the print - session()->put(['quotation_number' => $quotation_number]); - $table_quotations = 'quotations'; - $quotations_results = DB::select("SELECT * FROM quotations where quotation_number = {$quotation_number}"); - $billing_stage = 1; - - return view('stores::stores.print_drug_bill', compact('quotation_number', 'item_type', 'quotations_results', 'hospital_details', 'table_quotations', 'supplier_reference', 'billing_stage')); - } - - /* select a quotation to approve */ - public function select_quotation_to_approve(Request $request) - { - $quotation_type_options = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $quotation_type_options = ['' => '- Select Quotation type -'] + $quotation_type_options; - $results = 0; - $table_quotations = ""; - $item_type = ""; - - if (isset($request->quotation_type)) { - $item_type = $request->quotation_type; - $table_quotations = "quotations"; - - $results = DB::select("select DISTINCT(quotation_number),supplier_id from $table_quotations where receive_status = 0 AND deleted_at IS NULL AND approval_status = 0 AND quotation_type_id = " . $item_type . " ORDER BY quotation_number desc"); - $result_message = "There are no pending quotations for " . strtolower($item_type); - foreach($results as &$result){ - $result->supplier_name = Supplier::find($result->supplier_id)->name??''; - $total_bill=0; - $get_bill = Quotation::where('quotation_number',$result->quotation_number)->get(); - foreach($get_bill as $bill){ - $total_bill += $bill->total_price; - } - $result->total_bill = $total_bill; - } - } - return view('stores::stores.select_quotation_to_approve', compact('quotation_type_options', 'item_type', 'results', 'table_quotations')); - } - - /* approve or delete a quotation */ - public function approve_or_delete_quotation(Request $request) - { - $package_units = DB::table('package_units')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $package_units = ['' => '- select -'] + $package_units; - - if (isset($request->approve_purchase)) { - $quotation_number = $request->quotation_number; - $item_type = $request->item_type; - $table_quotations = "quotations"; - $supplier_id = get_name($quotation_number, "quotation_number", "supplier_id", "quotations"); - $supplier_reference = get_name($quotation_number, "quotation_number", "supplier_reference", "quotations"); - $quotation_results = DB::select("SELECT * FROM $table_quotations where quotation_number={$quotation_number} AND deleted_at IS NULL"); - - return view('stores::stores.approve_purchase', compact('quotation_number', 'item_type', 'quotation_results', 'table_quotations', 'supplier_id', 'package_units', 'supplier_reference')); - } elseif (isset($request->delete_purchase)) { - $quotation_number = $request->quotation_number; - $eloquent_model = Quotation::where(['quotation_number' => $quotation_number])->delete(); - - if ($eloquent_model) { - flash('Quotation has been deleted')->success(); - } else { - flash('Unable to delete quotation. Please try again')->error(); - } - - return redirect('select_quotation_to_approve'); - } else { - return redirect('select_quotation_to_approve'); - } - } - - public function store_approved_purchase(Request $request) - { - $hospital_details = HospitalInformation::first(); - $quotation_id = $request->quotation_id; - $quantity_required = $request->quantity_required; - $bill = $request->bill; - $package_unit_array = $request->package_unit; - $number_of_package_units_array = $request->number_of_package_units; - $quantity_per_package_unit_array = $request->quantity_per_package_unit; - $bill_per_package_unit_array = $request->bill_per_package_unit; - $approval_status = 1; - $approval_date = Carbon::now(); - $approval_user = Auth::id(); - $item_type = $request->item_type; - $count = count($quotation_id); - $form_data = array(); - $table_quotations = "quotations"; - - for ($x = 0; $x < $count; $x++) : - if (empty($quantity_required[$x])) { - continue; - } - if (empty($bill[$x])) { - continue; - } - // calculating the total price - //$total_price = ($quantity_required[$x] * $bill[$x]); - $total_price = ($number_of_package_units_array[$x] * $bill_per_package_unit_array[$x]); - - $eloquent_model = Quotation::find($quotation_id[$x]); - $eloquent_model->bill = $bill[$x]; - $eloquent_model->package_unit = $package_unit_array[$x]; - $eloquent_model->number_of_package_units = $number_of_package_units_array[$x]; - $eloquent_model->quantity_per_package_unit = $quantity_per_package_unit_array[$x]; - $eloquent_model->bill_per_package_unit = $bill_per_package_unit_array[$x]; - $eloquent_model->approval_status = $approval_status; - $eloquent_model->approval_user = $approval_user; - $eloquent_model->approval_date = $approval_date; - $eloquent_model->quantity = $quantity_required[$x]; - $eloquent_model->total_price = $total_price; - $eloquent_model->updated_at = Carbon::now(); - $eloquent_model->update(); - endfor; - // Aquiring the quotation number for use in the session - $quotation_number = get_name($quotation_id[0], "id", "quotation_number", $table_quotations); - $supplier_reference = get_name($quotation_number, "quotation_number", "supplier_reference", "quotations"); - // Unsetting the session first. Just in case - session()->put(['quotation_number' => $quotation_number]); - $quotations_results = DB::select("SELECT * FROM $table_quotations where quotation_number = {$quotation_number}"); - - return view('stores::stores.print_drug_bill', compact('quotation_number', 'item_type', 'quotations_results', 'hospital_details', 'table_quotations', 'supplier_reference')); - } - - /* function to receive items */ - public function receive_items(Request $request) { - $quotation_type_options = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $quotation_type_options = ['' => '- Select Quotation type -'] + $quotation_type_options; - $results = []; - $table_quotations = ""; - $item_type = ""; - if (isset($request->quotation_type)) { - - $filters = []; - - if ($request->search_by == 0) { - // last 24 hours - $last_day = Carbon::now()->subDay(); - - array_push($filters, ['created_at', '>', $last_day]); - } elseif ($request->search_by == 1) { - // custom date - $start_date = Carbon::parse($request->reg_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->reg_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date]); - array_push($filters, ['created_at', '<', $end_date]); - } elseif ($request->search_by == 2) { - // custom date range - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date]); - array_push($filters, ['created_at', '<', $end_date]); - } - - $item_type = $request->quotation_type; - $table_quotations = "quotations"; - $results = DB::table($table_quotations) - ->select(DB::raw('DISTINCT(quotation_number)')) - ->where('receive_status', '=', 0) - ->where('approval_status', '=', 1) - ->whereNotNull('approval_user') - ->whereNotNull('bill') - ->whereNull('deleted_at') - ->where('quotation_type_id', $item_type) - ->where($filters) - ->orderBy('quotation_number', 'desc') - ->get(); - - $result_message = "There are no pending " . strtolower($item_type) . " purchase orders to clear"; - } - return view('stores::stores.receive_items', compact('quotation_type_options', 'item_type', 'results', 'table_quotations')); - } - - /* comfirm receipt of items */ - public function confirm_item_receipt(Request $request) - { - $package_units = DB::table('package_units')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $package_units = ['' => '- select -'] + $package_units; - $quotation_number = $request->quotation_number; - - if (isset($request->add_bill_button)) { - $item_type = $request->item_type; - $total_price = $request->total_price; - /* the query below is for only quotation_types of drugs only*/ - $results = DB::select("select * from quotations quotation where quotation_number = {$quotation_number} AND receive_status = 0 AND approval_status = 1"); - - return view('stores::stores.confirm_items_receipt', compact('quotation_number', 'item_type', 'total_price', 'results', 'package_units')); - } elseif (isset($request->delete_bill_button)) { - $eloquent_model = Quotation::where(['quotation_number' => $quotation_number])->delete(); - - if ($eloquent_model) { - flash('Quotation has been deleted')->success(); - } else { - flash('Unable to delete quotation. Please try again')->error(); - } - - return redirect('receive_items'); - } else { - return redirect('receive_items'); - } - } - - /* function to store received items */ - public function store_received_items(Request $request) - { - $validator = Validator::make($request->all(), [ - 'received_on_date' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash('please ensure you have filled in the received date and batch number')->error(); - return redirect('select_receive_items_option'); - } else { - /* =============== */ - //check if the items have required values to complete double entry before proceeding - if ($request->item_type == 3 || $request->item_type == 4 || $request->item_type == 5) { - for ($i=0; $i < count($request->item_id) ; $i++) { - if (($request->item_type == 3) && get_name($request->item_id[$i], "id", "expenses_account_id", "dentals") == null) { - flash("Please make sure that all dentals have expense accounts e.g ".get_name($request->item_id[$i], "id", "name", "dentals"))->error(); - return redirect('select_receive_items_option'); - } - - if (($request->item_type == 4) && get_name($request->item_id[$i], "id", "expenses_account_id", "radiologies") == null) { - flash("Please make sure that all radiologies have expense accounts e.g ".get_name($request->item_id[$i], "id", "name", "radiologies"))->error(); - return redirect('select_receive_items_option'); - } - - if (($request->item_type == 5) && get_name($request->item_id[$i], "id", "expenses_account_id", "labs") == null) { - flash("Please make sure that all labs have expense accounts e.g ".get_name($request->item_id[$i], "id", "name", "labs"))->error(); - return redirect('select_receive_items_option'); - } - - if (($request->item_type == 6) && get_name($request->item_id[$i], "id", "expenses_account_id", "general_items") == null) { - flash("Please make sure that all general items have expense accounts e.g ".get_name($request->item_id[$i], "id", "name", "general_items"))->error(); - return redirect('select_receive_items_option'); - } - } - } - /* =============== */ - $quotation_id_array = $request->quotation_id; - $package_unit_array = $request->package_unit; - $number_of_package_units_array = $request->number_of_package_units; - $quantity_per_package_unit_array = $request->quantity_per_package_unit; - $bill_per_package_unit_array = $request->bill_per_package_unit; - $quantity_array = $request->quantity; - $bill_array = $request->bill; - $receive_user = Auth::id(); - $receive_date = Carbon::createFromFormat('d/m/Y', $request->received_on_date)->toDateString(); - $expiry_date = $request->expiry_date; - $batch_numbers_array = $request->batch_number; - $item_type = $request->item_type; - $total_price = 0; - $table_quotations = "quotations"; - $item_id_array = $request->item_id; - - $already_updated_quotations = []; - //get next grn_number - $new_grn_number = Quotation::where('quotation_number', $request->quotation_number)->max('grn_number'); - if (is_null($new_grn_number)) { - $new_grn_number = (float)$request->quotation_number +0.1; - } else { - $new_grn_number = (float)$new_grn_number + 0.1; - } - for ($x = 0; $x < count($quotation_id_array); $x++) { - //Expiry date of the drugs - $expiry_date_for_each = isset($expiry_date[$x]) ? Carbon::createFromFormat('d/m/Y', $expiry_date[$x])->toDateString() : ""; - // Updating the total price incase it has changed - //$total_price = $bill_array[$x] * $quantity_array[$x]; - $total_price = $bill_per_package_unit_array[$x] * $number_of_package_units_array[$x]; - - //check if the quotation has already been updated and this is a new batch of same quotation of same drug - $new_batch_quotation = false; - $extra_batch_of_same_drug = in_array($quotation_id_array[$x], $already_updated_quotations); - if (in_array($quotation_id_array[$x], $already_updated_quotations)) { - $eloquent_model = new Quotation; - $new_batch_quotation = true; - } else { - $eloquent_model = Quotation::find($quotation_id_array[$x]); - } - - $quotation_type_id = $request->item_type; - $eloquent_model->quotation_type_id = $request->item_type; - - $eloquent_model->drug_id = $item_id_array[$x]; - $eloquent_model->receive_bill = $bill_array[$x]; - $eloquent_model->package_unit = $package_unit_array[$x]; - $eloquent_model->receive_number_of_package_units = $number_of_package_units_array[$x]; - $eloquent_model->receive_quantity_per_package_unit = $quantity_per_package_unit_array[$x]; - if ($new_batch_quotation) { - $eloquent_model->receive_bill_per_package_unit = $bill_array[$x] * $quantity_per_package_unit_array[$x]; - }else{ - $eloquent_model->receive_bill_per_package_unit = $bill_per_package_unit_array[$x]; - } - $eloquent_model->receive_quantity = $quantity_array[$x]; - $eloquent_model->receive_user = $receive_user; - $eloquent_model->receive_date = $receive_date; - $eloquent_model->receive_status = 1; - $eloquent_model->receiver_comment = $request->receiver_comment; - $eloquent_model->total_price = $total_price; - $eloquent_model->expiry_date = $expiry_date_for_each; - $eloquent_model->batch_number = $batch_numbers_array[$x]; - $eloquent_model->batch_balance = $quantity_array[$x]; - $eloquent_model->grn_number=$new_grn_number; - $eloquent_model->quotation_number = $request->quotation_number; - $eloquent_model->updated_at = Carbon::now(); - $eloquent_model->updated_by = Auth::id(); - $eloquent_model->save(); - - //keep a record of quotation_ids that have been updated. This is to help in quotation that have extra batches - $already_updated_quotations[] = $quotation_id_array[$x]; - - // Increasing the stock level in necessary inventory tables i.e //1-drug,2-sundry,3-dental,4-radiology 5-Lab - //check for the quotation_type_id then know what table to use in getting $old_quantity - $store_item = null; - $drug_id = get_name($quotation_id_array[$x], "id", "drug_id", "quotations"); - $quantity_to_add = $quantity_array[$x]; - - if ($quotation_type_id == 1) { - $old_quantity = get_name($drug_id, "id", "store_stock", "drugs"); - if ($old_quantity == "N/A") { - $old_quantity = 0; - }; - $new_quantity = $old_quantity + (int)$quantity_to_add; - $store_item = Drug::find($drug_id); - if (!is_null($store_item)) { - $store_item->store_stock = $new_quantity; - $store_item->expiry_date = $expiry_date_for_each; - save_new_cost_of_good($drug_id, $quotation_type_id, $bill_array[$x]); - } - } elseif ($quotation_type_id == 2) { - $old_quantity = get_name($drug_id, "id", "store_stock", "sundries"); - $new_quantity = $old_quantity + (int)$quantity_to_add; - $store_item = Sundry::find($drug_id); - if (!is_null($store_item)) { - $store_item->store_stock = $new_quantity; - $store_item->expiry_date = $expiry_date_for_each; - save_new_cost_of_good($drug_id, $quotation_type_id, $bill_array[$x]); - } - } elseif ($quotation_type_id == 3) { - $old_quantity = get_name($drug_id, "id", "store_stock", "dentals"); - $new_quantity = $old_quantity + (int)$quantity_to_add; - $store_item = Dental::find($drug_id); - if (!is_null($store_item)) { - $store_item->store_stock = $new_quantity; - $store_item->expiry_date = $expiry_date_for_each; - save_new_cost_of_good($drug_id, $quotation_type_id, $bill_array[$x]); - } - } elseif ($quotation_type_id == 4) { - $old_quantity = get_name($drug_id, "id", "store_stock", "radiologies"); - $new_quantity = $old_quantity + (int)$quantity_to_add; - $store_item = Radiology::find($drug_id); - if (!is_null($store_item)) { - $store_item->store_stock = $new_quantity; - $store_item->expiry_date = $expiry_date_for_each; - save_new_cost_of_good($drug_id, $quotation_type_id, $bill_array[$x]); - } - } elseif ($quotation_type_id == 5) { - $old_quantity = get_name($drug_id, "id", "store_stock", "labs"); - $new_quantity = $old_quantity + (int)$quantity_to_add; - $store_item = Lab::find($drug_id); - if (!is_null($store_item)) { - $store_item->store_stock = $new_quantity; - $store_item->expiry_date = $expiry_date_for_each; - save_new_cost_of_good($drug_id, $quotation_type_id, $bill_array[$x]); - } - } elseif ($quotation_type_id == 6) { - $old_quantity = get_name($drug_id, "id", "store_stock", "general_items"); - $new_quantity = $old_quantity + (int)$quantity_to_add; - $store_item = GeneralItem::find($drug_id); - if (!is_null($store_item)) { - $store_item->store_stock = $new_quantity; - $store_item->expiry_date = $expiry_date_for_each; - save_new_cost_of_good($drug_id, $quotation_type_id, $bill_array[$x]); - } - } elseif ($quotation_type_id == 7) { - $old_quantity = get_name($drug_id, "id", "store_stock", "eye_glasses"); - $new_quantity = $old_quantity + (int)$quantity_to_add; - $store_item = EyeGlasses::find($drug_id); - if (!is_null($store_item)) { - $store_item->store_stock = $new_quantity; - $store_item->expiry_date = $expiry_date_for_each; - save_new_cost_of_good($drug_id, $quotation_type_id, $bill_array[$x]); - } - } - - if (!is_null($store_item)) { - $store_item->updated_at = Carbon::now(); - $store_item->updated_by = Auth::id(); - $store_item->update(); - create_batch_watcher_record($drug_id, $quotation_type_id, $bill_array[$x],$batch_numbers_array[$x], $quantity_array[$x], $pharmacy_stock = 0,$lab_stock=0, $expiry_date_for_each); - } - - if ($old_quantity <= 0 && $new_quantity > 0) { - $query_stock_dates_results = DB::select("SELECT id FROM inventory_stock_dates WHERE item_id = $drug_id AND quotation_type_id = $item_type ORDER BY id DESC LIMIT 1"); - $stock_id = isset($query_stock_dates_results[0]) ? $query_stock_dates_results[0]->id : 0; - - if (count($query_stock_dates_results) != 0) { - $inventory_stock_date_model = InventoryStockDate::find($stock_id); - $inventory_stock_date_model->restock_date = $receive_date; - $inventory_stock_date_model->update(); - } - } - - $last_quotation_id = $eloquent_model->id; - $new_quotation_number = $request->quotation_number; - } - flash('Stock Levels Updated')->success(); - - //immediately create inventory bill for the received items to enforce double entry - $this->auto_create_inventory_bill_or_expense($request, $new_quotation_number); - - return redirect('goods_received_note/' . $new_grn_number); - } - } - - /* function to get the stock sheet */ - public function stock_sheet() - { - $drugs = DB::table('drugs')->where('available', 1)->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - - if (count($drugs) < 1) { - flash()->error("There is no out of stock drugs"); - return redirect('/drugs/'); - } else { - return view('stores::stores.stock_sheet', compact('drugs')); - } - } - - /* function to update the stock_sheet */ - public function update_stock_sheet(Request $request) - { - - $drugs_ids = $request->drug_id; - $quantity = $request->quantity; - $cost_price = $request->cost_price; - $insured_price = $request->insured_price; - $non_insured_price = $request->non_insured_price; - $expired_dates = $request->expiry_date; - - $batch_quotation_ids_array = $request->batch_quotation_id; - $batch_drug_ids_array = $request->batch_drug_id; - $batch_numbers_array = $request->batch_number; - $batch_expiry_dates_array = $request->expiry_date; - - for ($x = 0; $x < count($drugs_ids); $x++) : - $drugs = Drug::find($drugs_ids[$x]); - $drugs->store_stock = $quantity[$x]; - $drugs->cost_price = $cost_price[$x]; - $drugs->insured_price = $insured_price[$x]; - $drugs->non_insured_price = $non_insured_price[$x]; - $drugs->expiry_date = $expired_dates[$x]; - $update_store_stock = $drugs->update(); - endfor; - - /*==== do this to cater for the newer introduced editing batch number ======*/ - if (is_array($batch_drug_ids_array)) { - for ($i = 0; $i < count($batch_drug_ids_array); $i++) : - if (!is_null($batch_drug_ids_array[$i]) && $batch_drug_ids_array[$i] != "") { - $quotation_record = Quotation::where(['drug_id' => $batch_drug_ids_array[$i], 'batch_number' => $batch_numbers_array[$i]])->first(); - if (!is_null($quotation_record)) { - $quotation_record->expiry_date = $batch_expiry_dates_array[$i]; - $quotation_record->update(); - } - - //update the expiry date on drugs table of the batch in use - $drug = Drug::withTrashed()->find($batch_drug_ids_array[$i]); - if (($drug->batch_number_in_use == $batch_numbers_array[$i]) && ($drug->quotation_id_of_batch_in_use == $batch_quotation_ids_array[$i])) { - $drugs->expiry_date = $batch_expiry_dates_array[$i]; - } - } - endfor; - } - /*=========== end the catering for the newer introduced batch number ===========*/ - - if ($update_store_stock) : - flash('Store Stock Levels Updated')->success(); - return redirect('stores_stock_sheet'); - endif; - - flash('Sorry, unable to update stock')->error(); - return redirect()->back(); - } - - /* issue drugs */ - public function issue_store_items() { - $quotation_results = DB::table('requisitions')->whereNull('issue_status') - ->whereNull('deleted_at') - ->orderBy('id', 'desc') - ->get(); - - return view('stores::stores.issue_drugs', compact('quotation_results')); - } - - /* issue out drugs form */ - public function issue_out_drugs_form(Request $request) { - $requisition_id = $request->requisition_id; - $requisition = Requisition::find($requisition_id); - $drug_id_explode_array = explode(",", $requisition->drug_id); - $quantity_explode_array = explode(",", $requisition->quantity_requested); - $quantity_approved_array = $requisition->quantity_approved ? explode(",", $requisition->quantity_approved) : []; - $associative_requested_drugs_array = []; - $associative_approved_drugs_array = []; - $unit_of_measure = DB::table('unit_of_measure')->pluck("name", "id")->toArray(); - $batches_array = DB::table('item_batch_watcher')->where('store_stock', '>', 0)->get(); - $quotation_id = $requisition->quotation_type_id; - $drug_forms = DB::table('drug_forms')->pluck("name", "id")->prepend('-select-', '')->toArray(); - $staff_array = $this->userService->pluckUserFullName(); - $staff_array = ['' => 'Select Staff'] + $staff_array; - for ($i = 0; $i < count($drug_id_explode_array); $i++) { - if (isset($quantity_explode_array[$i]) && $quantity_explode_array[$i] != "") { - $associative_requested_drugs_array[$drug_id_explode_array[$i]] = $quantity_explode_array[$i]; - $associative_approved_drugs_array[$drug_id_explode_array[$i]] = $quantity_approved_array[$i]??0; - } - } - // do this if requisition type is drugs - if ($requisition->quotation_type_id == 1){$table_name ='drugs'; } - - // do this if the requisition type is for sundries - if ($requisition->quotation_type_id == 2){ $table_name ='sundries';} - - if ($requisition->quotation_type_id == 4) {$table_name = 'radiologies';} - - // do this if the requisition type is for labs - if ($requisition->quotation_type_id == 5){$table_name = 'labs';} - if ($requisition->quotation_type_id == 3) {$table_name = 'dentals'; - // do this if the requisition type is for general items - for ($i = 0; $i < count($drug_id_explode_array); $i++) { - if ($quantity_explode_array[$i] != "") { - $associative_requested_drugs_array[$drug_id_explode_array[$i]] = $quantity_explode_array[$i]; - } - } - return view('stores::stores.issue_out_general_items_form', compact('requisition','table_name','associative_approved_drugs_array', 'requisition_id', 'associative_requested_drugs_array', 'unit_of_measure', 'batches_array')); - } - - if ($requisition->quotation_type_id == 6) { - $table_name = 'general_items'; - // do this if the requisition type is for general items - for ($i = 0; $i < count($drug_id_explode_array); $i++) { - if ($quantity_explode_array[$i] != "") { - $associative_requested_drugs_array[$drug_id_explode_array[$i]] = $quantity_explode_array[$i]; - } - } - return view('stores::stores.issue_out_general_items_form', compact('requisition','table_name','associative_approved_drugs_array', 'requisition_id', 'associative_requested_drugs_array', 'unit_of_measure', 'batches_array')); - } - if ($requisition->quotation_type_id == 7) { - $table_name='eye_glasses'; - } - return view('stores::stores.issue_out_drugs_form', compact('requisition','staff_array','quotation_id', 'requisition_id', 'associative_requested_drugs_array', 'unit_of_measure', 'drug_forms', 'batches_array', 'associative_approved_drugs_array','table_name')); - } - - /* issue out drugs e.g to the pharmacy */ - public function issue_out_drugs(Request $request) - { - $requisition_id = $request->requisition_id; - $quantity_issued_array = $request->quantity_issued; - $drug_id_array = $request->drug_id; - $batch_number_id_array=$request->issued_batch_number; - $units_array = $request->units; - $cost_value_array = $request->cost_value; - $issued_cost_value = []; - //loop thru to formulate the issued_cost_value of issued items - // for ($y=0; $y < count($request->issued_batch_number) ; $y++) { - // # code... - // } - - $associative_requested_drugs_array = []; - $associative_requested_batches_array = []; - $issued_by = Auth::id(); - $issued_on = isset($request->issue_date) ? Carbon::createFromFormat('d/m/Y', $request->issue_date)->toDateString() : ""; - $quantity_issued = ""; - $inventory_data = ""; - $update_inventory_items = ""; - $units = ""; - $item_batch_calculations = false; - $issue_out_comment = isset($request->issue_out_comment) ? $request->issue_out_comment : ""; - $received_by = isset($request->received_by) ? $request->received_by : ""; - $requisition = Requisition::find($requisition_id); - $requisition_type = $requisition->quotation_type_id; //might be 1=drugs, 2=sundries, labs etc - if ($requisition_type == 2) { - //do this for sundries - for ($i = 0; $i < count($drug_id_array); $i++) { - if ($quantity_issued_array[$i] != "") { - $drug_name = get_name($drug_id_array[$i], "id", "name", "sundries"); - /* check just in case the same drug appears for the same patient twice then ++ quantity */ - if (array_key_exists($drug_name, $associative_requested_drugs_array)) { - $previous_qty = $associative_requested_drugs_array[$drug_name]; - $associative_requested_drugs_array[$drug_name] = $previous_qty + $quantity_issued_array[$i]; - } else{ - $associative_requested_drugs_array[$drug_name] = $quantity_issued_array[$i]; - } - $associative_requested_batches_array[$drug_name]=$batch_number_id_array[$i]; - } - } - for ($x = 0; $x < count($drug_id_array); $x++) : - //do this for sundries batches - $batch_number_id = $request->issued_batch_number[$x]; - //Decreasing the store stock - $current_store_stock = get_name($drug_id_array[$x], 'id', 'store_stock', 'sundries'); - $current_store_stock = is_numeric($current_store_stock) ? $current_store_stock : 0; - $new_store_stock = $current_store_stock - $quantity_issued_array[$x]; - // Increasing the Pharmacy stock or the Lab stock - $drug = Sundry::withTrashed()->find($drug_id_array[$x]); - // Data to update the drugs table - if ($drug) { - if ($requisition->requisition_origin == 2) { - //if origin is from lab - $current_lab_stock = get_name($drug_id_array[$x], 'id', 'lab_stock', 'sundries'); - $current_lab_stock = is_numeric($current_lab_stock) ? $current_lab_stock : 0; - $new_lab_stock = $current_lab_stock + $quantity_issued_array[$x]; - $drug->lab_stock = $new_lab_stock; - $this->itemsStockService->move_batch_item_from_store_to_other_sections($item_type = 2, $drug_id_array[$x], $batch_number_id, $quantity_issued_array[$x], $requisition_id,'sundries','labs',['id','batch_number','store_stock','lab_stock'],'lab_stock'); - } - else if($requisition->requisition_origin == 3){ - //if origin is from Imaging - $this->itemsStockService->move_batch_item_from_store_to_other_sections($item_type = 2, $drug_id_array[$x], $batch_number_id, $quantity_issued_array[$x], $requisition_id,'sundries','Imaging',['id','batch_number','store_stock','radiology_stock'],'radiology_stock'); - } - else { - $current_pharmacy_stock = get_name($drug_id_array[$x], 'id', 'pharmacy_stock', 'sundries'); - $current_pharmacy_stock = is_numeric($current_pharmacy_stock) ? $current_pharmacy_stock : 0; - $new_pharmacy_stock = $current_pharmacy_stock + $quantity_issued_array[$x]; - $drug->pharmacy_stock = $new_pharmacy_stock; - //move sundry items from store to pharmacy stock - $this->itemsStockService->move_batch_item_from_store_to_other_sections($item_type = 2, $drug_id_array[$x], $batch_number_id, $quantity_issued_array[$x], $requisition_id,'sundries','pharmacy',['id','batch_number','store_stock','pharmacy_stock'],'pharmacy_stock'); - } - $drug->store_stock = $new_store_stock; - $drug->update(); - } - - if ($current_store_stock > 0 && $new_store_stock <= 0) { - $inventory_stock_date = new InventoryStockDate; - $inventory_stock_date->quotation_type_id = 2; //1 = quotation type for sundries - $inventory_stock_date->item_id = $drug_id_array[$x]; - $inventory_stock_date->out_of_stock_date = $issued_on; - $inventory_stock_date->save(); - } - endfor; - } else if ($requisition_type == 1) { - $drug_name = ""; - if (is_array($drug_id_array)) { - for ($i = 0; $i < count($drug_id_array); $i++) { - if ($quantity_issued_array[$i] != "") { - $drug_name = get_name($drug_id_array[$i], "id", "name", "drugs"); - /* check just in case the same drug appears for the same patient twice then ++ quantity */ - if (array_key_exists($drug_name, $associative_requested_drugs_array)) { - $previous_qty = $associative_requested_drugs_array[$drug_name]; - $associative_requested_drugs_array[$drug_name] = $previous_qty + $quantity_issued_array[$i]; - } else{ - $associative_requested_drugs_array[$drug_name] = $quantity_issued_array[$i]; - } - $associative_requested_batches_array[$drug_name]=$batch_number_id_array[$i]; - } - } - - for ($x = 0; $x < count($drug_id_array); $x++) : - //do this for drugs batches - //$batch_number = null; - //if (batch_tracking_method() == "manual") { - $batch_number_id = $request->issued_batch_number[$x]; - //} - //$item_batch_calculations = batch_calculations_for_item_based_on_fifo($drug_id_array[$x], $quantity_issued_array[$x], $batch_number, $item_type = 1); - /* i commented the auto calculation out since the users should now add several batches issuing from */ - - //Decreasing the store stock - $current_store_stock = get_name($drug_id_array[$x], 'id', 'store_stock', 'drugs'); - $current_store_stock = is_numeric($current_store_stock) ? $current_store_stock : 0; - $new_store_stock = $current_store_stock - $quantity_issued_array[$x]; - // Increasing the Pharmacy stock - $current_pharmacy_stock = get_name($drug_id_array[$x], 'id', 'pharmacy_stock', 'drugs'); - $current_pharmacy_stock = is_numeric($current_pharmacy_stock) ? $current_pharmacy_stock : 0; - $new_pharmacy_stock = $current_pharmacy_stock + $quantity_issued_array[$x]; - // Data to update the drugs table - $drug = Drug::find($drug_id_array[$x]); - if ($drug) { - $drug->pharmacy_stock = $new_pharmacy_stock; - $drug->store_stock = $new_store_stock; - $drug->update(); - //move drug items from store to pharmacy stock - $this->itemsStockService->move_batch_item_from_store_to_other_sections($item_type = 1, $drug_id_array[$x], $batch_number_id, $quantity_issued_array[$x], $requisition_id,'drugs','pharmacy',['id','batch_number','store_stock','pharmacy_stock'],'pharmacy_stock'); - } - if ($current_store_stock > 0 && $new_store_stock <= 0) { - $inventory_stock_date = new InventoryStockDate; - $inventory_stock_date->quotation_type_id = 1; //1 = quotation type for drug - $inventory_stock_date->item_id = $drug_id_array[$x]; - $inventory_stock_date->out_of_stock_date = $issued_on; - $inventory_stock_date->save(); - } - endfor; - - } else { - $drug_id_array = []; - $quantity_issued_array = []; - } - } else if ($requisition_type == 4) { - //do this for radiologies - for ($i = 0; $i < count($drug_id_array); $i++) { - if ($quantity_issued_array[$i] != "") { - $drug_name = get_name($drug_id_array[$i], "id", "name", "radiologies"); - $associative_requested_drugs_array[$drug_name] = $quantity_issued_array[$i]; - $associative_requested_batches_array[$drug_name]=$batch_number_id_array[$i]; - } - } - - for ($x = 0; $x < count($drug_id_array); $x++) : - $batch_number_id = $request->issued_batch_number[$x]; - //Decreasing the store stock - $current_store_stock = get_name($drug_id_array[$x], 'id', 'store_stock', 'radiologies'); - $current_store_stock = is_numeric($current_store_stock) ? $current_store_stock : 0; - $new_store_stock = $current_store_stock - $quantity_issued_array[$x]; - // Increasing the Pharmacy stock - $current_pharmacy_stock = get_name($drug_id_array[$x], 'id', 'pharmacy_stock', 'radiologies'); - $current_pharmacy_stock = is_numeric($current_pharmacy_stock) ? $current_pharmacy_stock : 0; - $new_pharmacy_stock = $current_pharmacy_stock + $quantity_issued_array[$x]; - // Data to update the radiology table - $radiology = Radiology::find($drug_id_array[$x]); - if ($radiology) { - $radiology->pharmacy_stock = $new_pharmacy_stock; - $radiology->store_stock = $new_store_stock; - $radiology->update(); - //move lab items from store to lab stock - $this->itemsStockService->move_batch_item_from_store_to_other_sections($item_type = 4, $drug_id_array[$x], $batch_number_id, $quantity_issued_array[$x], $requisition_id,'radiologies','Imaging',['id','batch_number','store_stock','lab_stock'],'lab_stock'); - } - - if ($current_store_stock > 0 && $new_store_stock <= 0) { - $inventory_stock_date = new InventoryStockDate; - $inventory_stock_date->quotation_type_id = 4; //1 = quotation type for radiologies - $inventory_stock_date->item_id = $drug_id_array[$x]; - $inventory_stock_date->out_of_stock_date = $issued_on; - $inventory_stock_date->save(); - } - endfor; - } else if ($requisition_type == 5) { - //do this for labs - for ($i = 0; $i < count($drug_id_array); $i++) { - if ($quantity_issued_array[$i] != "") { - $drug_name = get_name($drug_id_array[$i], "id", "name", "labs"); - $associative_requested_drugs_array[$drug_name] = $quantity_issued_array[$i]; - $associative_requested_batches_array[$drug_name]=$batch_number_id_array[$i]; - } - } - - for ($x = 0; $x < count($drug_id_array); $x++) : - $batch_number_id = $request->issued_batch_number[$x]; - //Decreasing the store stock - $current_store_stock = get_name($drug_id_array[$x], 'id', 'store_stock', 'labs'); - $current_store_stock = is_numeric($current_store_stock) ? $current_store_stock : 0; - $new_store_stock = $current_store_stock - $quantity_issued_array[$x]; - - // Increasing the Laboratory stock - $current_laboratory_stock = get_name($drug_id_array[$x], 'id', 'laboratory_stock', 'labs'); - $current_laboratory_stock = is_numeric($current_laboratory_stock) ? $current_laboratory_stock : 0; - $new_laboratory_stock = $current_laboratory_stock + $quantity_issued_array[$x]; - // Data to update the drugs table - $drug = Lab::find($drug_id_array[$x]); - if ($drug) { - $drug->laboratory_stock = $new_laboratory_stock; - $drug->store_stock = $new_store_stock; - $drug->update(); - //move lab items from store to lab stock - $this->itemsStockService->move_batch_item_from_store_to_other_sections($item_type = 5, $drug_id_array[$x], $batch_number_id, $quantity_issued_array[$x], $requisition_id,'labs','lab',['id','batch_number','store_stock','lab_stock'],'lab_stock'); - } - - if ($current_store_stock > 0 && $new_store_stock <= 0) { - $inventory_stock_date = new InventoryStockDate; - $inventory_stock_date->quotation_type_id = 5; //1 = quotation type for labs - $inventory_stock_date->item_id = $drug_id_array[$x]; - $inventory_stock_date->out_of_stock_date = $issued_on; - $inventory_stock_date->save(); - } - endfor; - }else if ($requisition_type == 3){ - //do this for dentals - for ($i = 0; $i < count($drug_id_array); $i++) { - if ($quantity_issued_array[$i] != "") { - $drug_name = get_name($drug_id_array[$i], "id", "name", "dentals"); - $associative_requested_drugs_array[$drug_name] = $quantity_issued_array[$i]; - $associative_requested_batches_array[$drug_name]=$batch_number_id_array[$i]??0; - } - } - - for ($x = 0; $x < count($drug_id_array); $x++) { - $batch_number_id = $request->issued_batch_number[$x]??0; - //Decreasing the store stock - $current_store_stock = get_name($drug_id_array[$x], 'id', 'store_stock', 'dentals'); - $current_store_stock = is_numeric($current_store_stock) ? $current_store_stock : 0; - $new_store_stock = $current_store_stock - $quantity_issued_array[$x]; - - // Increasing the Pharmacy stock - $current_pharmacy_stock = get_name($drug_id_array[$x], 'id', 'pharmacy_stock', 'dentals'); - $current_pharmacy_stock = is_numeric($current_pharmacy_stock) ? $current_pharmacy_stock : 0; - $new_pharmacy_stock = $current_pharmacy_stock + $quantity_issued_array[$x]; - // Data to update the dental table - $dental = Dental::find($drug_id_array[$x]); - if ($dental) { - $dental->pharmacy_stock = $new_pharmacy_stock; - $dental->store_stock = $new_store_stock; - $dental->update(); - //move drug items from store to pharmacy stock - // $this->itemsStockService->move_batch_item_from_store_to_other_sections($item_type = 3, $drug_id_array[$x], $batch_number_id, $quantity_issued_array[$x], $requisition_id,'Opticals','pharmacy',['id','batch_number','store_stock','pharmacy_stock'],'pharmacy_stock'); - } - - if ($current_store_stock > 0 && $new_store_stock <= 0) { - $inventory_stock_date = new InventoryStockDate; - $inventory_stock_date->quotation_type_id = 3; - $inventory_stock_date->item_id = $drug_id_array[$x]; - $inventory_stock_date->out_of_stock_date = $issued_on; - $inventory_stock_date->save(); - } - } - - }else if ($requisition_type == 6) { - //do this for general itmes - for ($i = 0; $i < count($drug_id_array); $i++) { - if ($quantity_issued_array[$i] != "") { - $drug_name = get_name($drug_id_array[$i], "id", "name", "general_items"); - $associative_requested_drugs_array[$drug_name] = $quantity_issued_array[$i]; - } - } - - for ($x = 0; $x < count($drug_id_array); $x++) : - //Decreasing the store stock - $current_store_stock = get_name($drug_id_array[$x], 'id', 'store_stock', 'general_items'); - $current_store_stock = is_numeric($current_store_stock) ? $current_store_stock : 0; - $new_store_stock = $current_store_stock - $quantity_issued_array[$x]; - if ($request->has('issue_out_to_lab')) { - // Increasing the Laboratory stock - $current_laboratory_stock = get_name($drug_id_array[$x], 'id', 'pharmacy_stock', 'general_items'); - $current_laboratory_stock = is_numeric($current_laboratory_stock) ? $current_laboratory_stock : 0; - $new_laboratory_stock = $current_laboratory_stock + $quantity_issued_array[$x]; - // Data to update the drugs table - $drug = Lab::find($drug_id_array[$x]); - if ($drug) { - $drug->laboratory_stock = $new_laboratory_stock; - $drug->store_stock = $new_store_stock; - $drug->update(); - } - } elseif ($request->has('issue_out_to_pharmacy')) { - // Increasing the Pharmacy stock - $current_pharmacy_stock = get_name($drug_id_array[$x], 'id', 'pharmacy_stock', 'general_items'); - $current_pharmacy_stock = is_numeric($current_pharmacy_stock) ? $current_pharmacy_stock : 0; - $new_pharmacy_stock = $current_pharmacy_stock + $quantity_issued_array[$x]; - // Data to update the drugs table - $drug = Lab::find($drug_id_array[$x]); - if ($drug) { - $drug->pharmacy_stock = $new_pharmacy_stock; - $drug->store_stock = $new_store_stock; - $drug->update(); - } - } - - if ($current_store_stock > 0 && $new_store_stock <= 0) { - $inventory_stock_date = new InventoryStockDate; - $inventory_stock_date->quotation_type_id = 5; //1 = quotation type for labs - $inventory_stock_date->item_id = $drug_id_array[$x]; - $inventory_stock_date->out_of_stock_date = $issued_on; - $inventory_stock_date->save(); - } - endfor; - } else if ($requisition_type == 7) { - //do this for opticals - for ($i = 0; $i < count($drug_id_array); $i++) { - if ($quantity_issued_array[$i] != "") { - $drug_name = get_name($drug_id_array[$i], "id", "name", "eye_glasses"); - $associative_requested_drugs_array[$drug_name] = $quantity_issued_array[$i]; - $associative_requested_batches_array[$drug_name]=$batch_number_id_array[$i]; - } - } - - for ($x = 0; $x < count($drug_id_array); $x++) { - $batch_number_id = $request->issued_batch_number[$x]; - //Decreasing the store stock - $current_store_stock = get_name($drug_id_array[$x], 'id', 'store_stock', 'eye_glasses'); - $current_store_stock = is_numeric($current_store_stock) ? $current_store_stock : 0; - $new_store_stock = $current_store_stock - $quantity_issued_array[$x]; - - // Increasing the Pharmacy stock - $current_pharmacy_stock = get_name($drug_id_array[$x], 'id', 'pharmacy_stock', 'eye_glasses'); - $current_pharmacy_stock = is_numeric($current_pharmacy_stock) ? $current_pharmacy_stock : 0; - $new_pharmacy_stock = $current_pharmacy_stock + $quantity_issued_array[$x]; - // Data to update the drugs table - $drug = EyeGlasses::find($drug_id_array[$x]); - - - if ($drug) { - $drug->pharmacy_stock = $new_pharmacy_stock; - $drug->store_stock = $new_store_stock; - $drug->update(); - //move drug items from store to pharmacy stock - $this->itemsStockService->move_batch_item_from_store_to_other_sections($item_type = 7, $drug_id_array[$x], $batch_number_id, $quantity_issued_array[$x], $requisition_id,'Opticals','pharmacy',['id','batch_number','store_stock','pharmacy_stock'],'pharmacy_stock'); - } - - if ($current_store_stock > 0 && $new_store_stock <= 0) { - $inventory_stock_date = new InventoryStockDate; - $inventory_stock_date->quotation_type_id = 7; - $inventory_stock_date->item_id = $drug_id_array[$x]; - $inventory_stock_date->out_of_stock_date = $issued_on; - $inventory_stock_date->save(); - } - } - } else { - redirect()->back()->withInput(); - } - - // Updating the requisitions table - $requisition = Requisition::find($requisition_id); - //check if requisition is approved - if ($requisition->approved_by == null){ - $requisition->approved_by = Auth::user()->id; - $requisition->approved_date = date('Y-m-d H:i:s'); - } - $requisition->item_ids_issued_out = implode(',', $drug_id_array); - $requisition->batch_issued_out = implode(', ', $batch_number_id_array??[]); - $requisition->quantity_issued = implode(',', $quantity_issued_array); - $requisition->cost_value = implode(',', $cost_value_array); - $requisition->issued_by = $issued_by; - $requisition->issue_status = 1; - $requisition->issued_on = $issued_on; - $requisition->received_by=$received_by; - $requisition->received_comment=$issue_out_comment; - //$requisition->unit_of_measure = isset($requisition->unit_of_measure) ? implode(',', $units_array) : null; - $requisition->update(); - // recreating the session - session()->put(['requisition_id' => $requisition_id]); - $hospital_details = HospitalInformation::find(1); - if ($requisition_type == 2) {$table_name='sundries'; } - if ($requisition_type == 1) {$table_name= 'drugs';} - if ($requisition_type == 4) {$table_name='radiologies';} - if ($requisition_type == 5) {$table_name='labs'; } - if ($requisition_type == 3) {$table_name='dentals';$buyin_price='buying_price'; - return view('stores::stores.print_issued_opticals', compact('requisition','table_name','buyin_price', 'hospital_details', 'associative_requested_drugs_array', 'requisition_id', 'requisition_type')); - } - if ($requisition_type == 6) {$table_name='general_items'; $buyin_price='cost_price'; - return view('stores::stores.print_issued_opticals', compact('requisition','table_name','buyin_price', 'hospital_details', 'associative_requested_drugs_array', 'requisition_id', 'requisition_type')); - } - if ($requisition_type == 7) { - $table_name= 'eye_glasses'; - // return view('stores::stores.print_issued_opticals', compact('requisition', 'hospital_details', 'associative_requested_drugs_array', 'requisition_id', 'requisition_type')); - } - return view('stores::stores.print_issued_drugs', compact('requisition', 'table_name','hospital_details', 'associative_requested_drugs_array','associative_requested_batches_array', 'requisition_id', 'requisition_type')); - - } - - /* previous received items */ - public function previously_received_items(Request $request) - { - $quotation_type_options = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $quotation_type_options = ['' => '- Select Quotation type -'] + $quotation_type_options; - $suppliers = DB::table('suppliers')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $suppliers = ['' => '- All Suppliers -'] + $suppliers; - $results = 0; - $table_quotations = "quotations"; - $item_type = $display = ""; - $supplier_id = $request->supplier_id; - - if (isset($request->start_date) && isset($request->end_date)) { - - if (isset($request->quotation_type)) { - $item_type = $request->quotation_type; - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->end_date)->endOfDay()->toDateTimeString(); - if(is_null($supplier_id)){ - - $results = DB::select("select DISTINCT(quotation_number),receive_date, quotation_type_id, bill_id from $table_quotations where quotation_type_id = '{$item_type}' AND deleted_at IS NULL AND receive_status = 1 AND approval_status = 1 AND approval_user IS NOT NULL AND receive_date BETWEEN '{$start_date}' AND '{$end_date}' ORDER BY receive_date"); - $display = "Received between " . streamline_date($start_date) . " and " . streamline_date($end_date) . " from " . get_name($suppliers, "id", "name", "suppliers") ; - } else { - - $results = DB::select("select DISTINCT(quotation_number),receive_date, quotation_type_id, bill_id from $table_quotations where quotation_type_id = '{$item_type}' AND deleted_at IS NULL AND supplier_id = '{$supplier_id}' AND receive_status = 1 AND approval_status = 1 AND approval_user IS NOT NULL AND receive_date BETWEEN '{$start_date}' AND '{$end_date}' ORDER BY receive_date"); - $display = "Received between " . streamline_date($start_date) . " and " . streamline_date($end_date) . " from " . get_name($suppliers, "id", "name", "suppliers") ; - } - - } - } - - return view('stores::stores.previously_received_items', compact('results', 'quotation_type_options', 'suppliers', 'table_quotations', 'item_type', 'display')); - } - - /* function to display details of previously received items */ - public function previous_received_items_details(Request $request) - { - $quotation_number = $request->quotation_number; - $item_type = $request->quotation_type; - $table_quotations = "quotations"; - $quotations_results = DB::select("SELECT * FROM $table_quotations where grn_number = {$quotation_number}"); - - return view('stores::stores.previously_received_items_details', compact('quotation_number', 'item_type', 'table_quotations', 'quotations_results')); - } - - /* previous issued items */ - public function previously_issued_items(Request $request) - { - $quotation_type_options = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $quotation_type_options = ['' => '- Select Item Type -'] + $quotation_type_options; - $results = 0; - $date_filter = "issued_on BETWEEN CURDATE() - INTERVAL 30 DAY AND CURDATE()"; - $display = "Issued out within this month"; - $item_type = "1"; - $start_date = Carbon::now()->startOfMonth()->toDateTimeString(); - $end_date = Carbon::now()->endOfMonth()->toDateTimeString(); - if (isset($request->start_date) && isset($request->end_date)) { - - if (isset($request->quotation_type)) { - $item_type = $request->quotation_type; - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->end_date)->endOfDay()->toDateTimeString(); - $date_filter = "issued_on BETWEEN '{$start_date}' AND '{$end_date}'"; - $display = "issued between " . streamline_date($start_date) . " and " . streamline_date($end_date); - } - } - - $results = Requisition::select('id', 'quotation_type_id', 'drug_id','item_ids_issued_out', 'quantity_requested', 'created_at', 'issued_by', 'issued_on', 'cost_value') - ->whereBetween('created_at', [$start_date, $end_date])->where(['issue_status'=>1,'quotation_type_id'=>$item_type])->orderBy('issued_on', 'desc')->limit(20)->get(); - return view('stores::stores.previously_issued_items', compact('results', 'quotation_type_options', 'item_type', 'display')); - } - - /* function to display details of previously issued items */ - public function previous_issued_items_details(Request $request) - { - $requisition_id = $request->requisition_id; - $results = DB::select("select * from requisitions where id = {$requisition_id} AND issue_status = 1 ORDER BY id desc"); - if (isset($results[0])) { - $item_type = $results[0]->quotation_type_id; - } else{ - flash('no issues requisition has been found in Stre@mline')->success(); - return redirect()->back(); - } - - return view('stores::stores.previously_issued_items_details', compact('requisition_id', 'item_type', 'results')); - } - - /* previous quotations */ - public function previous_quotations(Request $request) - { - $quotation_type_options = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $quotation_type_options = ['' => '- Select Quotation type -'] + $quotation_type_options; - $results = 0; - $item_type = ""; - $display = ""; - - if (isset($request->start_date) && isset($request->end_date)) { - if (isset($request->quotation_type)) { - $item_type = $request->quotation_type; - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $approval_status = $request->approval_status; - - if ($approval_status == 1) { - //approved - $results = DB::select("select DISTINCT(quotation_number), approval_status, bill from quotations where approval_status = 1 AND created_at BETWEEN '{$start_date}' AND '{$end_date}' AND deleted_at IS NULL ORDER BY quotation_number desc"); - } elseif ($approval_status == 0) { - //pending - $results = DB::select("select DISTINCT(quotation_number), approval_status, bill from quotations where approval_status = 0 AND created_at BETWEEN '{$start_date}' AND '{$end_date}' AND deleted_at IS NULL ORDER BY quotation_number desc"); - } elseif ($approval_status == 2) { - //all - $results = DB::select("select DISTINCT(quotation_number), approval_status, bill from quotations where created_at BETWEEN '{$start_date}' AND '{$end_date}' AND deleted_at IS NULL ORDER BY quotation_number desc"); - } - - $display = "Approval between " . streamline_date($start_date) . " and " . streamline_date($end_date); - } - } - - return view('stores::stores.previous_quotations', compact('quotation_type_options', 'results', 'item_type', 'display')); - } - - /* edit a previous quotation */ - public function edit_previous_quotation(Request $request) { - $quotation_number = $request->quotation_number; - $item_type = $request->item_type; - $results = DB::table('quotations')->where('quotation_number', $quotation_number)->get(); - $package_units = DB::table('package_units')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $package_units = ['' => '- select -'] + $package_units; - $suppliers = DB::table('suppliers')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $suppliers = ['' => '- Select Suppliers -'] + $suppliers; - - return view('stores::stores.edit_previous_quotation', compact('quotation_number', 'item_type', 'results', 'package_units', 'suppliers')); - } - - /* function to update edited previous quotation */ - public function update_previous_quotation(Request $request) { - $quotation_id_array = $request->quotation_id; - $package_unit_array = $request->package_unit; - $number_of_package_units_array = $request->number_of_package_units; - $quantity_per_package_unit_array = $request->quantity_per_package_unit; - $quantity_array = $request->quantity; - $supplier_id = $request->supplier_id; - $expected_date = Carbon::createFromFormat('d/m/Y', $request->expected_date)->toDateString(); - - for ($x = 0; $x < count($quotation_id_array); $x++) { - $quotation_model = Quotation::find($quotation_id_array[$x]); - $quotation_model->quantity = $quantity_array[$x]; - $quotation_model->quantity_per_package_unit = $quantity_per_package_unit_array[$x]; - $quotation_model->number_of_package_units = $number_of_package_units_array[$x]; - $quotation_model->package_unit = $package_unit_array[$x]; - $quotation_model->supplier_id = $supplier_id; - $quotation_model->expected_date = $expected_date; - $quotation_model->update(); - } - - flash('Request for quotation was edited successfully')->success(); - return redirect('previous_quotations'); - } - - /* view previous purchase orders */ - public function previous_purchase_orders(Request $request) - { - $quotation_type_options = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $quotation_type_options = ['' => '- Select Quotation type -'] + $quotation_type_options; - $results = []; - $item_type = ""; - $display = ""; - $result_message = ""; - - if (isset($request->start_date) && isset($request->end_date)) { - - - if (isset($request->quotation_type)) { - $item_type = $request->quotation_type; - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->end_date)->endOfDay()->toDateTimeString(); - $display = "Approved between " . streamline_date($start_date) . " and " . streamline_date($end_date); - - $results = Quotation::select(DB::raw("DISTINCT (quotation_number) "))->where('approval_user', '!=', 0)->whereBetween('approval_date', [$start_date, $end_date])->where('quotation_type_id', $item_type)->orderBy('quotation_number', 'desc')->get(); - $result_message = "No " . strtolower($item_type) . " purchase orders have been made"; - } - } - - return view('stores::stores.previous_purchase_orders', compact('quotation_type_options', 'item_type', 'results', 'display')); - } - - /* view previous order history */ - public function previous_order_history(Request $request) { - $item_options = []; - $quotation_type_options = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $quotation_type_options = ['' => '- Select Quotation type -'] + $quotation_type_options; - - $item_options['drugs'] = DB::table('drugs')->where('available', 1)->whereNull('deleted_at')->pluck('name', 'id')->toArray() + ['' => '-- select --']; - $item_options['sundries'] = DB::table('sundries')->whereNull('deleted_at')->pluck('name', 'id')->toArray() + ['' => '-- select --']; - $item_options['dentals'] = DB::table('dentals')->whereNull('deleted_at')->pluck('name', 'id')->toArray() + ['' => '-- select --']; - $item_options['labs'] = DB::table('labs')->whereNull('deleted_at')->pluck('name', 'id')->toArray() + ['' => '-- select --']; - $item_options['radiologies'] = DB::table('radiologies')->whereNull('deleted_at')->pluck('name', 'id')->toArray() + ['' => '-- select --']; - $item_options['general_items'] = DB::table('general_items')->whereNull('deleted_at')->pluck('name', 'id')->toArray() + ['' => '-- select --']; - $item_options['eye_glasses'] = DB::table('eye_glasses')->whereNull('deleted_at')->pluck('name', 'id')->toArray() + ['' => '-- select --']; - - $item_type = 0; - $item_id = 0; - $quotation_type_id = 0; - $item_name = "N/A"; - - if (isset($request->start_date) && isset($request->end_date)) { - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date)->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->end_date)->toDateTimeString(); - } else { - $start_date = Carbon::now()->toDateTimeString(); - $end_date = Carbon::now()->toDateTimeString(); - } - - if (isset($request->selected_drugs) && $request->quotation_type == 1) { - //Drugs - $item_id = $request->selected_drugs; - $quotation_type_id = $request->quotation_type; - $item_name = DB::table('drugs')->find($request->selected_drugs)->name; - } elseif(isset($request->selected_sundries) && $request->quotation_type == 2) { - //Sundries - $item_id = $request->selected_sundries; - $quotation_type_id = $request->quotation_type; - $item_name = DB::table('sundries')->find($request->selected_sundries)->name; - } elseif(isset($request->selected_dentals) && $request->quotation_type == 3) { - //Dentals - $item_id = $request->selected_dentals; - $quotation_type_id = $request->quotation_type; - $item_name = DB::table('dentals')->find($request->selected_dentals)->name; - } elseif(isset($request->selected_radiologies) && $request->quotation_type == 4) { - //Radiologies - $item_id = $request->selected_radiologies; - $quotation_type_id = $request->quotation_type; - $item_name = DB::table('radiologies')->find($request->selected_radiologies)->name; - } elseif(isset($request->selected_labs) && $request->quotation_type == 5) { - //Labs - $item_id = $request->selected_labs; - $quotation_type_id = $request->quotation_type; - $item_name = DB::table('labs')->find($request->selected_labs)->name; - } elseif(isset($request->selected_general_items) && $request->quotation_type == 6) { - //General Items - $item_id = $request->selected_general_items; - $quotation_type_id = $request->quotation_type; - $item_name = DB::table('general_items')->find($request->selected_general_items)->name; - } elseif(isset($request->selected_eye_glasses) && $request->quotation_type == 7) { - //Eye Glasses - $item_id = $request->selected_eye_glasses; - $quotation_type_id = $request->quotation_type; - $item_name = DB::table('eye_glasses')->find($request->selected_eye_glasses)->name; - } - - $display = "Records for " . $item_name . " between " . streamline_date($start_date) . " and " . streamline_date($end_date); - - $results = DB::table('quotations') - ->select('*')->whereNull('deleted_at') - ->where('quotation_type_id', $quotation_type_id) - ->where('drug_id', $item_id) - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(); - - return view('stores::stores.previous_order_history', compact('item_options', 'item_name', 'results', 'quotation_type_options', 'item_type', 'display')); - } - - /* function to print the drug bill */ - public function print_drug_bill(Request $request) - { - $quotation_number = $request->quotation_number; - $item_type = $request->item_type; - $hospital_details = HospitalInformation::find(1); - $table_quotations = 'quotations'; - $quotations_results = DB::select("SELECT * FROM quotations where quotation_number = {$quotation_number}"); - - return view('stores::stores.print_drug_bill', compact('quotation_number', 'item_type', 'hospital_details', 'table_quotations', 'quotations_results')); - } - - /* sundries stock sheet */ - public function sundries_stock_sheet() - { - $sundries = DB::table('sundries')->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - - if (count($sundries) < 1) { - flash()->error("There is no out of stock sundries"); - return redirect('/sundries/'); - } else { - return view('stores::stores.sundries_stock_sheet', compact('sundries')); - } - } - - /* update stock sheet */ - public function update_sundries_stock_sheet(Request $request) - { - $sundry_ids = $request->sundry_id; - $quantity = $request->quantity; - $expired_dates = $request->expiry_date; - - for ($x = 0; $x < count($sundry_ids); $x++) : - $sundry = Sundry::find($sundry_ids[$x]); - $sundry->store_stock = $quantity[$x]; - $sundry->expiry_date = $expired_dates[$x]; - $update_store_stock = $sundry->update(); - endfor; - - if ($update_store_stock) : - flash('Sundry Store Stock Levels Updated')->success(); - return redirect('sundries_stock_sheet'); - endif; - - flash('Sorry, unable to update stock')->error(); - return redirect()->back(); - } - - public function physical_stock_count() - { - //check if there is a physical count that wasn't completed and alert the user otherwise allow the user go ahead with create new count - $ongoing_physical_count = StoreStockReconciliation::where('completion_status', 0)->get(); - if (count($ongoing_physical_count) > 0) { - flash('There is an ongoing physical count. You can not start a new count, please resume previous count')->error(); - return redirect()->back(); - } - - $drugs = []; - - $batch_numbers = []; - $sql = "SELECT DISTINCT batch_number FROM quotations"; - $results = DB::select($sql); - foreach ($results as $result) { - $batch_numbers[$result->batch_number] = $result->batch_number; - } - - $chart_of_accounts = ChartOfAccount::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $chart_of_accounts = ['' => '- select -'] + $chart_of_accounts; - - $batch_numbers = ['' => '- select -'] + $batch_numbers; - - $drugs_dropdown = DB::table('drugs')->where('available', 1)->whereNull('deleted_at')->orderBy('name', 'asc')->pluck('name','id')->prepend('All drugs', 'all_items')->toArray(); - - return view('stores::stores.physical_stock_count', compact('drugs', 'batch_numbers', 'chart_of_accounts', 'drugs_dropdown')); - } - - - /* physical stock count */ - public function resume_physical_stock_count() - { - //check if there is a physical count that wasn't completed and alert the user otherwise allow the user go ahead with create new count - $stock_reconciliations = DB::table('store_stock_reconciliations')->where('completion_status', 0)->get(); - if (count($stock_reconciliations) < 1) { - flash()->error("There is no ongoing physical count"); - return redirect('stores'); - } else { - return view('stores::stores.resume_physical_stock_count', compact('stock_reconciliations')); - } - } - - /* update physical stock count */ - public function update_physical_stock_count(Request $request) - { - $batch_quotation_ids_array = $request->batch_quotation_id; - $batch_drug_ids_array = (isset($request->batch_drug_id) && is_array($request->batch_drug_id)) ? $request->batch_drug_id : []; - $unique_drug_ids_with_batches_array = array_unique($batch_drug_ids_array); - $batch_numbers_array = $request->batch_number; - $batch_unit_cost_array = $request->batch_unit_cost; - $batch_quantity_balances_array = $request->batch_quantity_balance; - $batch_expiry_dates_array = $request->expiry_date; - $batch_db_record_ids_array = $request->batch_db_record_id; - - // TODO Please remove when merged into new batch tracking - // if (is_array($batch_numbers_array) && count(array_unique($batch_numbers_array)) < count($batch_numbers_array)) { - // flash('Duplicate batch numbers have been found!')->error(); - // return redirect('physical_stock_count'); - // } - - $drugs_ids_array = $request->drug_id; - $system_stock_array = $request->system_stock; - $physical_stock_array = $request->physical_stock; - $cost_price_array = $request->cost_price; - $difference_array = $request->difference; - $shrinkage_array = $request->shrinkage; - $markup_array = $request->mark_up; - $reason_for_difference_array = $request->reason_for_difference; - - $drugs_with_initial_stock_array = is_null($request->is_initial_stock) ? [] : $request->is_initial_stock; - $stock_adjustment_chart_of_account = ChartOfAccount::where('slug', 'stock_adjustment')->first(); - $affected_account_id = $stock_adjustment_chart_of_account->id; - $opening_inventory_chart_of_account = ChartOfAccount::where('slug', 'opening_inventory')->first(); - //get the max identifier - $max_stock_count_identifier = DB::table('store_stock_reconciliations')->max('stock_count_identifier'); - $reconcile_drug_store_stock = true; - - //update batch tracking tables with reconciliations - for ($i=0; $i < count($batch_numbers_array) ; $i++) { - if (!is_null($batch_numbers_array[$i]) && !is_null($batch_quantity_balances_array[$i])) { - //enforce double entry per batch - if (in_array($batch_drug_ids_array[$i], $drugs_with_initial_stock_array)) { - $affected_account_id = $opening_inventory_chart_of_account->id;//override adjustment a/c to be opening_inv - } else{ - $affected_account_id = $stock_adjustment_chart_of_account->id; - } - //$batch_db_record_ids_array - account_for_batch_reconciliations_difference($item_type = 1, $batch_drug_ids_array[$i], $affected_account_id, $batch_numbers_array[$i], $batch_quantity_balances_array[$i], $request->reconciliation_date, "store", $ward_id = null); - - reconcile_batches($item_type = 1, $batch_drug_ids_array[$i], $batch_numbers_array[$i], $batch_quantity_balances_array[$i], $batch_expiry_dates_array[$i], "store", $batch_unit_cost_array[$i]??0, $batch_db_record_ids_array[$i]??0, $ward_id=null); - } - } - - if (isset($request->reconcile_stock)) { - for ($x = 0; $x < count($drugs_ids_array); $x++) : - /* check if the difference value is not null and then update the drug */ - if (!is_null($difference_array[$x])) { - $physical_stock = new StoreStockReconciliation; - $physical_stock->drug_id = $drugs_ids_array[$x]; - $physical_stock->system_stock = $system_stock_array[$x]; - $physical_stock->physical_stock = $physical_stock_array[$x]; - $physical_stock->difference = $difference_array[$x]; - //$physical_stock->shrinkage = $shrinkage_array[$x]; - $physical_stock->mark_up = $markup_array[$x]; - $physical_stock->reason_for_difference = $reason_for_difference_array[$x]; - $physical_stock->completion_status = 1; - $physical_stock->affected_account_id = $affected_account_id; - $physical_stock->reconciliation_date = $request->reconciliation_date; - $physical_stock->general_comment = $request->general_comment; - $physical_stock->created_by = Auth::id(); - $physical_stock->save(); - //add the stock_count_identifier of the newly counted stock - $physical_stock_record_to_update = StoreStockReconciliation::find($physical_stock->id); - $physical_stock_record_to_update->stock_count_identifier = $max_stock_count_identifier + 1; //increase ID by 1 for new - $physical_stock_record_to_update->update(); - - //update the system stock levels with the newly counted physical stock - //update only those with new physical value - $drugs = Drug::withTrashed()->find($drugs_ids_array[$x]); - $drugs->store_stock = $physical_stock_array[$x]; - if (in_array($drugs->id, $drugs_with_initial_stock_array)) { - $existing_opening_stock = is_null($drugs->opening_stock) ? 0 : $drugs->opening_stock; - $drugs->opening_stock = $existing_opening_stock + $physical_stock_array[$x]; - $drugs->opening_cost_price = $cost_price_array[$x]?? $drugs->cost_price; - $drugs->opening_stock_date = $request->reconciliation_date; - $drugs->store_opening_stock = $physical_stock_array[$x]; - $affected_account_id = $opening_inventory_chart_of_account->id;//overide adjustment a/c to be opening_inv - } else{ - $affected_account_id = $stock_adjustment_chart_of_account->id; - } - $drugs->updated_by = Auth::id(); - - //enforce double entry - //account_for_stock_reconciliations_difference($item_type = 1, $drugs_ids_array[$x], $affected_account_id, $difference_array[$x], $cost_price_array[$x], $request->reconciliation_date); - - $reconcile_drug_store_stock = $drugs->update(); - } - endfor; - - /*==== do this to cater for the newer introduced editing batch number ======*/ - if (track_items_using_batches()) : - for ($i = 0; $i < count($batch_numbers_array); $i++) : - if (!is_null($batch_numbers_array[$i]) && $batch_drug_ids_array[$i] != "") { - if ($batch_quotation_ids_array[$i] != '0') { - $quotation_record = Quotation::where(['drug_id' => $batch_drug_ids_array[$i], 'batch_number' => $batch_numbers_array[$i]])->first(); - if (!is_null($quotation_record)) { - $quotation_record->batch_balance = $batch_quantity_balances_array[$i]; - $quotation_record->update(); - } - } elseif ($batch_quantity_balances_array[$i] != null && $batch_numbers_array[$i] != null && $batch_quotation_ids_array[$i] == '0') { - //assume that this batch doesnt have a corresponding quotation so make one - $new_quotation = new Quotation; - $new_quotation->quotation_type_id = 1; - $new_quotation->drug_id = $batch_drug_ids_array[$i]; - $new_quotation->quantity = $batch_quantity_balances_array[$i]; - $new_quotation->expected_date = date('Y-m-d'); - $new_quotation->quotation_user = Auth::id(); - $new_quotation->quotation_date = date('Y-m-d'); - $new_quotation->billing_date = Carbon::now(); - $new_quotation->billing_user = Auth::id(); - $new_quotation->approval_date = Carbon::now(); - $new_quotation->approval_status = 1; - $new_quotation->approval_user = Auth::id(); - $new_quotation->receive_user = Auth::id(); - $new_quotation->receive_date = date('Y-m-d'); - $new_quotation->receive_status = 1; - $new_quotation->expiry_date = $batch_expiry_dates_array[$i]; - $new_quotation->batch_number = $batch_numbers_array[$i]; - $new_quotation->batch_balance = $batch_quantity_balances_array[$i]; - $new_quotation->directly_received_items = 1; - $new_quotation->created_by = Auth::id(); - $new_quotation->save(); - } - } - endfor; - - foreach ($unique_drug_ids_with_batches_array as $batch_drug) { - $all_batch_balances_for_drug = Quotation::where(['drug_id' => $batch_drug, 'quotation_type_id' => 1])->where('batch_balance', '>', 0)->sum('batch_balance'); - if ($all_batch_balances_for_drug > 0) { - $drug_record = Drug::withTrashed()->find($batch_drug); - $drug_record->store_stock = $all_batch_balances_for_drug; - $drug_record->update(); - } - } - endif; - /*=========== end the catering for the newer introduced batch number ===========*/ - - if ($reconcile_drug_store_stock) : - flash('Stock levels have been reconciled')->success(); - return redirect('physical_stock_count'); - endif; - } else if (isset($request->save_stock)) { - //save these for editing later on - for ($x = 0; $x < count($drugs_ids_array); $x++) : - $physical_stock = new StoreStockReconciliation; - $physical_stock->drug_id = $drugs_ids_array[$x]; - $physical_stock->system_stock = $system_stock_array[$x]; - $physical_stock->physical_stock = $physical_stock_array[$x]; - $physical_stock->difference = $difference_array[$x]; - //$physical_stock->shrinkage = $shrinkage_array[$x]; - $physical_stock->mark_up = $markup_array[$x]; - $physical_stock->reason_for_difference = $reason_for_difference_array[$x]; - $physical_stock->completion_status = 0; - $physical_stock->created_by = Auth::id(); - $saved_physical_stock = $physical_stock->save(); - //add stock_count_identifier that will be used in resuming edit - $physical_stock_record_to_that_will_be_updated = StoreStockReconciliation::find($physical_stock->id); - $physical_stock_record_to_that_will_be_updated->stock_count_identifier = $max_stock_count_identifier + 1; //increase ID by 1 for new - $physical_stock_record_to_that_will_be_updated->update(); - endfor; - - /*==== do this to cater for the newer introduced editing batch number ======*/ - if (track_items_using_batches()) : - for ($i = 0; $i < count($batch_drug_ids_array); $i++) : - if (!is_null($batch_drug_ids_array[$i]) && $batch_drug_ids_array[$i] != "") { - $temp_reconciliation_batch_details = new BatchDetailsForTemporaryStockReconciliation; - $temp_reconciliation_batch_details->drug_id = $batch_drug_ids_array[$i]; - $temp_reconciliation_batch_details->batch_number = $batch_numbers_array[$i]; - $temp_reconciliation_batch_details->batch_quantity = $batch_quantity_balances_array[$i]; - $temp_reconciliation_batch_details->batch_quotation_id = $batch_quotation_ids_array[$i]; - $temp_reconciliation_batch_details->stock_count_identifier = $max_stock_count_identifier + 1; - $temp_reconciliation_batch_details->save(); - } - endfor; - endif; - /*=========== end the catering for the newer introduced batch number ===========*/ - - if ($saved_physical_stock) : - flash('Physical stock has been saved. You can resume later')->success(); - return redirect('stores'); - endif; - } - - flash('Sorry, unable to update stock')->error(); - return redirect()->back(); - } - - /* handle a resumed physical stock count */ - public function complete_resumed_physical_stock_count(Request $request) - { - $batch_quotation_ids_array = $request->batch_quotation_id; - $batch_drug_ids_array = $request->batch_drug_id; - $batch_numbers_array = $request->batch_number; - $batch_quantity_balances_array = $request->batch_quantity_balance; - - $reconciliation_ids_array = $request->reconciliation_record_ids; - $drugs_ids_array = $request->drug_id; - $system_stock_array = $request->system_stock; - $physical_stock_array = $request->physical_stock; - $difference_array = $request->difference; - //$shrinkage_array = $request->shrinkage; - $markup_array = $request->mark_up; - $reason_for_difference_array = $request->reason_for_difference; - - if (isset($request->reconcile_stock)) { - for ($x = 0; $x < count($reconciliation_ids_array); $x++) { - $physical_stock = StoreStockReconciliation::find($reconciliation_ids_array[$x]); - $physical_stock->drug_id = $drugs_ids_array[$x]; - $physical_stock->system_stock = $system_stock_array[$x]; - $physical_stock->physical_stock = $physical_stock_array[$x]; - $physical_stock->difference = $difference_array[$x]; - //$physical_stock->shrinkage = $shrinkage_array[$x]; - $physical_stock->mark_up = $markup_array[$x]; - $physical_stock->reason_for_difference = $reason_for_difference_array[$x]; - $physical_stock->completion_status = isset($request->reconcile_stock) ? 1 : 0; - if (isset($request->reconcile_stock_top)) { - $physical_stock->completion_status = 1; - } - - if ($physical_stock->update()) { - //update the system stock levels with the newly counted physical stock - //update only those with new physical value - if (isset($drugs_ids_array[$x]) && !is_null($drugs_ids_array[$x]) && $drugs_ids_array[$x] != "") { - $drug = Drug::withTrashed()->find($drugs_ids_array[$x]); - $drug->store_stock = $physical_stock_array[$x]; - $drug->updated_by = Auth::id(); - $reconcile_drug_store_stock = $drug->update(); - } - } - } - - /*==== do this to cater for the newer introduced editing batch number ======*/ - for ($i = 0; $i < count($batch_drug_ids_array); $i++) : - if (!is_null($batch_drug_ids_array[$i]) && $batch_drug_ids_array[$i] != "") { - $quotation_record = Quotation::where(['drug_id' => $batch_drug_ids_array[$i], 'batch_number' => $batch_numbers_array[$i]])->first(); - if (!is_null($quotation_record)) { - $quotation_record->batch_balance = $batch_quantity_balances_array[$i]; - $quotation_record->update(); - } - } - endfor; - /*=========== end the catering for the newer introduced batch number ===========*/ - - flash('Stock levels details have been updated')->success(); - return redirect('stores'); - } else if (isset($request->save_stock)) { - //get the max identfier - $max_stock_count_identifier = DB::table('store_stock_reconciliations')->max('stock_count_identifier'); - - //save these for editing later on - for ($x = 0; $x < count($drugs_ids_array); $x++) : - $physical_stock = new StoreStockReconciliation; - $physical_stock->drug_id = $drugs_ids_array[$x]; - $physical_stock->system_stock = $system_stock_array[$x]; - $physical_stock->physical_stock = $physical_stock_array[$x]; - $physical_stock->difference = $difference_array[$x]; - //$physical_stock->shrinkage = $shrinkage_array[$x]; - $physical_stock->mark_up = $markup_array[$x]; - $physical_stock->reason_for_difference = $reason_for_difference_array[$x]; - $physical_stock->completion_status = 0; - $physical_stock->created_by = Auth::id(); - $saved_physical_stock = $physical_stock->save(); - //add stock_count_identifier that will be used in resuming edit - $physical_stock_record_to_that_will_be_updated = StoreStockReconciliation::find($physical_stock->id); - $physical_stock_record_to_that_will_be_updated->stock_count_identifier = $max_stock_count_identifier + 1; //increase ID by 1 for new - $physical_stock_record_to_that_will_be_updated->update(); - endfor; - - /*==== do this to cater for the newer introduced editing batch number ======*/ - for ($i = 0; $i < count($batch_drug_ids_array); $i++) : - if (!is_null($batch_drug_ids_array[$i]) && $batch_drug_ids_array[$i] != "") { - $temp_reconciliation_batch_details = new BatchDetailsForTemporaryStockReconciliation; - $temp_reconciliation_batch_details->drug_id = $batch_drug_ids_array[$i]; - $temp_reconciliation_batch_details->batch_number = $batch_numbers_array[$i]; - $temp_reconciliation_batch_details->batch_quantity = $batch_quantity_balances_array[$i]; - $temp_reconciliation_batch_details->batch_quotation_id = $batch_quotation_ids_array[$i]; - $temp_reconciliation_batch_details->stock_count_identifier = $max_stock_count_identifier + 1; - $temp_reconciliation_batch_details->save(); - } - endfor; - /*=========== end the catering for the newer introduced batch number ===========*/ - - flash('Physical stock has been saved. You can resume later')->success(); - return redirect('stores'); - } - } - - /* stock reconciliation report */ - public function stock_reconciliation_report(Request $request) - { - - if (!empty($request->dates)) { - - if ($request->dates == "today") { - - $today = Carbon::today()->startOfDay()->toDateString(); - $end = Carbon::parse($today)->endOfDay()->toDateTimeString(); - $reconciled_stocks = StoreStockReconciliation::groupBy("stock_count_identifier")->whereBetween('created_at', [$today, $end])->orderBy('stock_count_identifier', 'desc')->get(); - } else if ($request->dates == "yesterday") { - - $yesterday = Carbon::yesterday()->startOfDay()->toDateString(); - $end = Carbon::parse($yesterday)->endOfDay()->toDateTimeString(); - $reconciled_stocks = StoreStockReconciliation::groupBy("stock_count_identifier")->whereBetween('created_at', [$yesterday, $end])->orderBy('stock_count_identifier', 'desc')->get(); - } else if ($request->dates == "custom_date") { - - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->start_date)->endOfDay()->toDateTimeString(); - $reconciled_stocks = StoreStockReconciliation::groupBy("stock_count_identifier")->whereBetween('created_at', [$start, $end])->orderBy('stock_count_identifier', 'desc')->get(); - } else if ($request->dates == "custom_date_range") { - - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $reconciled_stocks = StoreStockReconciliation::groupBy("stock_count_identifier")->whereBetween('created_at', [$start, $end])->orderBy('stock_count_identifier', 'desc')->get(); - } - } else $reconciled_stocks = StoreStockReconciliation::groupBy("stock_count_identifier")->orderBy('stock_count_identifier', 'desc')->get(); - return view('stores::stores.stock_reconciliation_report', compact('reconciled_stocks')); - } - public function labs_stock_reconciliation_report(Request $request){ - $filters=[]; - if (!empty($request->dates)) { - switch ($request->dates) { - case 'today': - $today = Carbon::today()->startOfDay()->toDateString(); - $end = Carbon::parse($today)->endOfDay()->toDateTimeString(); - array_push($filters, [$today, $end]); - break; - case 'yesterday': - $yesterday = Carbon::yesterday()->startOfDay()->toDateTimeString(); - $end = Carbon::parse($yesterday)->endOfDay()->toDateTimeString(); - array_push($filters, [$yesterday, $end]); - break; - case 'custom_date': - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->start_date)->endOfDay()->toDateTimeString(); - array_push($filters, [$start, $end]); - break; - case 'custom_date_range': - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - array_push($filters, [$start, $end]); - break; - default: - # code... - break; - } - } else{ - $today = Carbon::today()->startOfDay()->toDateString(); - $end = Carbon::parse($today)->endOfDay()->toDateTimeString(); - array_push($filters, [$today, $end]); - } - $reconciled_stocks = GeneralStockReconciliation::groupBy("stock_count_identifier")->where(['source'=>1,'item_type'=>5])->whereBetween('reconciliation_date', $filters)->orderBy('stock_count_identifier', 'desc')->get(); - $route='stores.labs_stock_reconciliation_report_details'; - $title='stores.labs_reconciliation_report'; - $route_filter='stores.labs_stock_reconciliation_report'; - return view('stores::stores.sundries_stock_reconciliation_report', compact('reconciled_stocks','route','route_filter','title')); - - } - public function labs_stock_reconciliation_report_details(Request $request){ - $table_name='labs'; - $active='stores.labs_stock_reconciliation_report_details'; - $route = 'stores.labs_stock_reconciliation_report'; - $route_title ='stores.labs_reconciliation_report'; - $var=false; - $items_reconciled = GeneralStockReconciliation::where(['stock_count_identifier' => $request->stock_count_identifier])->get(); - return view('stores::stores.items_stock_reconciliation_report_details', compact('items_reconciled','var','route_title','table_name','active','route')); - } - public function radiologies_stock_reconciliation_report(Request $request){ - $filters=[]; - if (!empty($request->dates)) { - switch ($request->dates) { - case 'today': - $today = Carbon::today()->startOfDay()->toDateString(); - $end = Carbon::parse($today)->endOfDay()->toDateTimeString(); - array_push($filters, [$today, $end]); - break; - case 'yesterday': - $yesterday = Carbon::yesterday()->startOfDay()->toDateString(); - $end = Carbon::parse($yesterday)->endOfDay()->toDateTimeString(); - array_push($filters, [$yesterday, $end]); - break; - case 'custom_date': - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->start_date)->endOfDay()->toDateTimeString(); - array_push($filters, [$start, $end]); - break; - case 'custom_date_range': - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - array_push($filters, [$start, $end]); - break; - default: - # code... - break; - } - } else{ - $today = Carbon::today()->startOfDay()->toDateString(); - $end = Carbon::parse($today)->endOfDay()->toDateTimeString(); - array_push($filters, [$today, $end]); - } - $reconciled_stocks = GeneralStockReconciliation::groupBy("stock_count_identifier")->where(['source'=>1,'item_type'=>4])->whereBetween('reconciliation_date', $filters)->orderBy('stock_count_identifier', 'desc')->get(); - $route='stores.radiologies_stock_reconciliation_report_details'; - $title='stores.radiologies_reconciliation_report'; - $route_filter='stores.radiologies_stock_reconciliation_report'; - return view('stores::stores.sundries_stock_reconciliation_report', compact('reconciled_stocks','route','route_filter','title')); - - } - public function radiologies_stock_reconciliation_report_details(Request $request){ - $table_name='radiologies'; - $active='stores.radiologies_stock_reconciliation_report_details'; - $route = 'stores.radiologies_stock_reconciliation_report'; - $route_title ='stores.radiologies_reconciliation_report'; - $var=false; - $items_reconciled = GeneralStockReconciliation::where(['stock_count_identifier' => $request->stock_count_identifier])->get(); - return view('stores::stores.items_stock_reconciliation_report_details', compact('items_reconciled','var','route_title','table_name','active','route')); - } - - /* stock reconciliation report details */ - public function stock_reconciliation_report_details(Request $request) - { - $drugs_reconciled = StoreStockReconciliation::where(['stock_count_identifier' => $request->stock_count_identifier])->get(); - return view('stores::stores.stock_reconciliation_report_details', compact('drugs_reconciled')); - } - - /* average monthly stock consumption */ - public function average_monthly_consumption(Request $request) - { - $filters = []; - $drugs_array = []; - $month_consumption_array = []; - $drugs_quantity_array = []; - $month_consumption_array = []; - /* create associative array of drugs with their quantities */ - $drugs_qty_associative_array = []; - - //if the start and end date are set check with isset($request->start_date) and isset($request->end_date) - if (isset($request->start_date) && isset($request->end_date)) { - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date]); - array_push($filters, ['created_at', '<', $end_date]); - - $drugs_dispensed_with_qty_array = []; - $opd_drugs_dispensed_with_qty_array = []; - $ipd_drugs_dispensed_with_qty_array = []; - $drugs_dispensed = []; - $quantity_dispensed = []; - - $opd_dispensations = PatientDispensing::where($filters)->get(); - if (count($opd_dispensations) > 0) { - foreach ($opd_dispensations as $opd_record) { - //dd($opd_record); - $dispensation_month_year = Carbon::parse($opd_record->created_at)->format('Y-m'); - - $drugs_array = explode(",", $opd_record->drugs); - $quantities_array = explode(",", $opd_record->quantity_dispensed); - $purchased_elsewhere_array = explode(",", $opd_record->purchased_elsewhere); - - for ($i = 0; $i < count($drugs_array); $i++) { - if (isset($purchased_elsewhere_array[$i]) && $purchased_elsewhere_array[$i] == 0) { - /* ============ meet Ms.Elegant for the first date with opd stuff ==========*/ - if (array_key_exists($drugs_array[$i], $drugs_qty_associative_array)) { - $drugs_qty_associative_array[$drugs_array[$i]] += is_numeric($quantities_array[$i]) ? $quantities_array[$i] : 0; - } else { - $drugs_qty_associative_array[$drugs_array[$i]] = $quantities_array[$i]; - } - /*============ bye bye Ms.Elegant ========*/ - - /* ============ meet Ms.Elegant's little sister ==========*/ - if (array_key_exists($drugs_array[$i], $opd_drugs_dispensed_with_qty_array)) { - $opd_drugs_dispensed_with_qty_array[$drugs_array[$i]] += is_numeric($quantities_array[$i]) ? $quantities_array[$i] : 0; - } else { - $opd_drugs_dispensed_with_qty_array[$drugs_array[$i]] = $quantities_array[$i]; - } - /*============ bye bye Ms.Elegant's little sister ========*/ - } - } - - //check and caress the outer array at this point - $month_consumption_array[$dispensation_month_year] = $opd_drugs_dispensed_with_qty_array; - //dd($month_consumption_array); - /*if (array_key_exists($dispensation_month_year, $month_consumption_array)){ - $month_consumption_array[$dispensation_month_year] = $opd_drugs_dispensed_with_qty_array; - } - else{ - $month_consumption_array[$dispensation_month_year] = $opd_drugs_dispensed_with_qty_array; - }*/ - } - //$month_consumption_array["2020-01" => [panadol=20, coertum=10], "2020-02" => [panadol=13, coertum=2]] - } - - $ward_dispensations = WardTreatmentDispensation::where($filters)->get(); - if (count($ward_dispensations) > 0) { - $ipd_drugs_dispensed_with_qty_array = []; - foreach ($ward_dispensations as $ward_record) { - //dd($ward_record->created_at); - $ward_dispensation_month_year = Carbon::parse($ward_record->created_at)->format('Y-m'); - - /* ============ meet Ms.Elegant for the second date with ward stuff ==========*/ - if (array_key_exists($ward_record->drug_id, $drugs_qty_associative_array)) { - $drugs_qty_associative_array[$ward_record->drug_id] += $ward_record->quantity_given; - } else { - $drugs_qty_associative_array[$ward_record->drug_id] = $ward_record->quantity_given; - } - - if (array_key_exists($ward_record->drug_id, $ipd_drugs_dispensed_with_qty_array)) { - $ipd_drugs_dispensed_with_qty_array[$ward_record->drug_id] += $ward_record->quantity_given; - } else { - $ipd_drugs_dispensed_with_qty_array[$ward_record->drug_id] = $ward_record->quantity_given; - } - /*============ bye bye Ms.Elegant's other little sister ========*/ - - //loop through the $month_consumption_array and find drugs quantity in that month and increase - if (array_key_exists($ward_dispensation_month_year, $month_consumption_array)) { - foreach ($month_consumption_array as $month_year => $drugs_qty_array) { - if ($ward_dispensation_month_year == $month_year) { - # look for the drug in the inner opd array and increase the quantity - foreach ($drugs_qty_array as $opd_drug_id => $opd_quantity_given_out) { - if ($opd_drug_id == $ward_record->drug_id) { - $month_consumption_array[$month_year][$ward_record->drug_id] = $opd_quantity_given_out + $ward_record->quantity_given; - } - } - } - } - } else { - $month_consumption_array[$ward_dispensation_month_year] = $ipd_drugs_dispensed_with_qty_array; - } - } - //dd($month_consumption_array); - } - } - - return view('stores::stores.average_monthly_consumption', compact('month_consumption_array')); - } - - /* average monthly stock consumption details */ - public function average_monthly_consumption_details(Request $request) - { - $details_quantity = $request->total_consumption; - $details_month_year_array = explode("-", $request->month_year); - $details_month = $details_month_year_array[0]; - $details_year = $details_month_year_array[1]; - $details_drug_id = $request->drug_id; - $labelsDaysArray = []; - $datasetsDataQuantityArray = []; - $display = "Showing consumption for the month of " . $request->month_year; - - $month_dispensation_details = DB::table('patient_dispensings')->whereMonth('created_at', $details_month)->whereYear('created_at', $details_year)->get(); - //dd($month_dispensation_details); - $dispensed_drug_ids_for_the_month_array = []; - $dispensed_dates_for_the_month_array = []; - //inialize for the first day of the month - $dispensed_dates_for_the_month_array["1"] = 0; - $labelString = ""; - - foreach ($month_dispensation_details as $dispensation_details) { - //dd($dispensation_details); - $drug_ids_array = explode(",", $dispensation_details->drugs); - $quantity_dispensed_array = explode(",", $dispensation_details->quantity_dispensed); - //get the day of the month that this dispensation was given - $date = new DateTime($dispensation_details->created_at); - $dispensation_day_of_the_month = $date->format('d'); - $labelString = $date->format('M Y'); - - for ($i = 0; $i < count($drug_ids_array); $i++) { - //add this if smt to handle that annoying trailing "" from old streamline and also check if the id is the same as the drug we are searching for - if (($drug_ids_array[$i] != "") && ($drug_ids_array[$i] == $details_drug_id)) { - - if (array_key_exists($dispensation_day_of_the_month, $dispensed_dates_for_the_month_array)) { - //get the current quantity from the associative array $drugs_quantity_array and increase it by the new quantity. - $previous_drug_quantity = (int)$dispensed_dates_for_the_month_array[$dispensation_day_of_the_month]; - //dd((int)$quantity_dispensed_array[$i]); - $dispensed_dates_for_the_month_array[$dispensation_day_of_the_month] = $previous_drug_quantity + (int)$quantity_dispensed_array[$i]; - } else { - //add the first dispensed quantity of the drug in that particular month by adding it to drugs_quantity_array array - $dispensed_dates_for_the_month_array[$dispensation_day_of_the_month] = (int)$quantity_dispensed_array[$i]; - } - } - } - } - - $labelsDaysArray = array_keys($dispensed_dates_for_the_month_array); - $datasetsDataQuantityArray = array_values($dispensed_dates_for_the_month_array); - $drug_name = get_name($details_drug_id, "id", "name", "drugs"); - - $chartjs = app()->chartjs - ->name('lineChartTest') - ->type('line') - ->size(['width' => 400, 'height' => 200]) - ->labels($labelsDaysArray) - ->datasets([ - [ - "label" => $drug_name, - 'backgroundColor' => "rgba(38, 185, 154, 0.31)", - 'borderColor' => "rgba(38, 185, 154, 0.7)", - "pointBorderColor" => "rgba(38, 185, 154, 0.7)", - "pointBackgroundColor" => "rgba(38, 185, 154, 0.7)", - "pointHoverBackgroundColor" => "#fff", - "pointHoverBorderColor" => "rgba(220,220,220,1)", - "data" => $datasetsDataQuantityArray, - ] - ]) - ->optionsRaw([ - 'legend' => [ - 'display' => true, - 'labels' => [ - 'fontColor' => '#000' - ] - ], - 'scales' => [ - 'xAxes' => [ - [ - 'stacked' => true, - 'scaleLabel' => [ - 'display' => true, - 'labelString' => $labelString - ], - 'stepSize' => 20, - 'gridLines' => [ - 'display' => true - ] - ] - ], - 'yAxes' => [ - [ - 'stacked' => true, - 'scaleLabel' => [ - 'display' => true, - 'labelString' => 'Quantity consumed ' . '(' . $details_quantity . ')' - ], - 'stepSize' => 40, - 'gridLines' => [ - 'display' => true - ] - ] - ], - ] - ]) - ->options([]); - - return view('stores::stores.average_monthly_consumption_details', compact('chartjs', 'display')); - } - - /* report to show issued drugs to pharmacy */ - public function drugs_issued_to_pharmacy_report(Request $request) - { - $requisition_id = $request->requisition_id; - $item_type = $request->item_type; - $results = null; - - if (isset($request->dates)) { - - if ($request->dates == "today") { - - $today = Carbon::today()->toDateString(); - $results = DB::table('requisitions')->whereNull('deleted_at')->where('issue_status', 1)->whereDate('issued_on', $today)->orderBy('issued_on', 'desc')->get(); - } else if ($request->dates == "yesterday") { - - $yesterday = Carbon::yesterday()->toDateString(); - $results = DB::table('requisitions')->whereNull('deleted_at')->where('issue_status', 1)->whereDate('issued_on', $yesterday)->orderBy('issued_on', 'desc')->get(); - } else if ($request->dates == "custom_date") { - - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $results = DB::table('requisitions')->whereNull('deleted_at')->where('issue_status', 1)->whereDate('issued_on', $start)->orderBy('issued_on', 'desc')->get(); - } else if ($request->dates == "custom_date_range") { - - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $results = DB::table('requisitions')->whereNull('deleted_at')->where('issue_status', 1)->whereBetween('issued_on', [$start, $end])->orderBy('issued_on', 'desc')->get(); - } - } else { - $results = DB::table('requisitions')->whereNull('deleted_at')->where('issue_status', 1)->orderBy('issued_on', 'desc')->get(); - } - - return view('stores::stores.drugs_issued_to_pharmacy_report', compact('requisition_id', 'item_type', 'results')); - } - - /* report to show issued drugs to pharmacy */ - public function drugs_issued_to_pharmacy_report_details(Request $request) - { - $requisition_id = $request->requisition_id; - $item_type = $request->item_type; - $results = null; - - $results = DB::table('requisitions')->whereNull('deleted_at')->where(['id' => $requisition_id, 'issue_status' => 1])->orderBy('id', 'desc')->get(); - - return view('stores::stores.drugs_issued_to_pharmacy_details', compact('requisition_id', 'item_type', 'results')); - } - - public function daily_stock_value_report(Request $request) { - $filters = $items = $drug_ids = $sundry_ids = $general_ids = $optical_ids = []; - $date = now()->toDateString(); - $total = [ - 'total_drugs_stock_value' => 0, - 'total_drugs_pharmacy_value' => 0, - 'total_sundries_stock_value' => 0, - 'total_sundries_pharmacy_value' => 0, - 'total_drugs_ward_value' => 0, - 'total_drugs_ward_cost_value' => 0, - 'total_general_items_stock_value' => 0, - 'total_general_items_pharmacy_value' => 0, - 'total_optical_items_stock_value' => 0, - 'total_drugs_pharmacy_cost_value' => 0, - 'total_radiology_stock_value' => 0, - 'total_drugs_store_cost_value' => 0, - 'total_sundries_store_cost_value' => 0, - 'total_sundries_pharmacy_cost_value' => 0, - 'total_sundries_ward_value' => 0, - 'total_sundries_ward_cost_value'=> 0, - 'total_general_items_pharmacy_cost_value' => 0, - 'total_general_items_store_cost_value' => 0, - 'total_labs_stock_value' => 0, - 'total_labs_lab_value' => 0, - 'total_labs_store_cost_value' => 0, - 'total_labs_lab_cost_value' => 0, - 'total_radiology_lab_cost_value' => 0, - 'total_radiology_store_cost_value' => 0, - 'total_radiology_lab_value' => 0, - ]; - $items = []; - $item_type=1; - if (isset($request->date_to_search)) { - $date = Carbon::parse($request->date_to_search)->toDateString(); - } - if (isset($request->item_type)) { - $item_type = $request->item_type; - } - $drug_ids = $sundry_ids = $general_ids = $optical_ids = []; - $records = BatchStockWatcher::get(); - foreach ($records as $record) { - $details_arr = json_decode($record->details, true); - $opening_stock_date=get_closest_element_in_array(array_keys($details_arr), $date); - if (isset($details_arr[$date]) || isset($details_arr[$opening_stock_date])){ $details = $details_arr[$date] ?? $details_arr[$opening_stock_date];} - else{$details =[];continue;} // explode ward stock - $ward_stock = $details['ward_stock'] ? explode(",",$details['ward_stock']) : []; - // get total ward stock - $total_ward_stock = array_sum($ward_stock); - // if($opening_stock_date <= $date){ - if ($record->item_type == 1) { - if(get_name($record->item_batch_watcher_id, "id", "batch_number", "item_batch_watcher") =='N/A')continue; - if ($details["store_stock"] <= 0 && $details["pharmacy_stock"] <= 0 && $total_ward_stock <= 0) continue; - $total['total_drugs_stock_value'] += $details["selling_price"] * $details["store_stock"]; - $total['total_drugs_pharmacy_value'] += $details["selling_price"] * $details["pharmacy_stock"]; - $total['total_drugs_store_cost_value'] += $details["buying_price"] * $details["store_stock"]; - $total['total_drugs_pharmacy_cost_value'] += $details["buying_price"] * $details["pharmacy_stock"]; - $total['total_drugs_ward_cost_value'] += $details["buying_price"] * $total_ward_stock; - $total['total_drugs_ward_value'] += $details["selling_price"] * $total_ward_stock; - $drug_ids[] = $record->item_id; - } elseif ($record->item_type == 2) { - if(get_name($record->item_batch_watcher_id, "id", "batch_number", "item_batch_watcher") =='N/A')continue; - if ($details["store_stock"] <= 0 && $details["pharmacy_stock"] <= 0 && $total_ward_stock <= 0) continue; - $total['total_sundries_stock_value'] += $details["selling_price"] * $details["store_stock"]; - $total['total_sundries_pharmacy_value'] += $details["selling_price"] * $details["pharmacy_stock"]; - $total['total_sundries_store_cost_value'] += $details["buying_price"] * $details["store_stock"]; - $total['total_sundries_pharmacy_cost_value'] += $details["buying_price"] * $details["pharmacy_stock"]; - $total['total_sundries_ward_cost_value'] += $details["buying_price"] * $total_ward_stock; - $total['total_sundries_ward_value'] += $details["selling_price"] * $total_ward_stock; - $sundry_ids[] = $record->item_id; - } elseif ($record->item_type == 4) { - if(get_name($record->item_batch_watcher_id, "id", "batch_number", "item_batch_watcher") =='N/A')continue; - if ($details["store_stock"] <= 0 && ($details["lab_stock"] ?? 0) <= 0) continue; - $total['total_radiology_stock_value'] += $details["selling_price"] * $details["store_stock"]; - $total['total_radiology_lab_value'] += $details["selling_price"] * ($details["lab_stock"] ?? 0); - $total['total_radiology_store_cost_value'] += $details["buying_price"] * $details["store_stock"]; - $total['total_radiology_lab_cost_value'] += $details["buying_price"] * ($details["lab_stock"] ?? 0); - $sundry_ids[] = $record->item_id; - } elseif ($record->item_type == 5) { - if(get_name($record->item_batch_watcher_id, "id", "batch_number", "item_batch_watcher") =='N/A')continue; - if ($details["store_stock"] <= 0 && ($details["lab_stock"] ?? 0) <= 0) continue; - $total['total_labs_stock_value'] += $details["selling_price"] * $details["store_stock"]; - $total['total_labs_lab_value'] += $details["selling_price"] * ($details["lab_stock"] ?? 0); - $total['total_labs_store_cost_value'] += $details["buying_price"] * $details["store_stock"]; - $total['total_labs_lab_cost_value'] += $details["buying_price"] * ($details["lab_stock"] ?? 0); - $sundry_ids[] = $record->item_id; - } elseif ($record->item_type == 6) { - $total['total_general_items_stock_value'] += $details["selling_price"] * $details["store_stock"]; - $total['total_general_items_pharmacy_value'] += $details["selling_price"] * $details["pharmacy_stock"]; - $total['total_general_items_store_cost_value'] += $details["buying_price"] * $details["store_stock"]; - $total['total_general_items_pharmacy_cost_value'] += $details["buying_price"] * $details["pharmacy_stock"]; - $general_ids[] = $record->item_id; - } elseif ($record->item_type == 7) { - $total['total_optical_items_stock_value'] += $details["selling_price"] * $details["store_stock"]; - $optical_ids[] = $record->item_id; - } - $name_table=get_table_name($record->item_type); - - $items[] = [ - "item_type_id"=> $record->item_type, - "item_type" => get_item_type_name($record->item_type), - "item_id" => $record->item_id, - "item_name" => get_name($record->item_id, 'id', 'name', "{$name_table}"), - "batch_number" => get_name($record->item_batch_watcher_id, "id", "batch_number", "item_batch_watcher"), - "pharmacy_stock" => $details["pharmacy_stock"], - "store_stock" => $details["store_stock"], - "ward_stock" => $total_ward_stock, - "lab_stock" => $details["lab_stock"] ?? 0, - "buying_price" => $details["buying_price"], - "selling_price" => $details["selling_price"], - "pharmacy_value" => $details["selling_price"] * $details["pharmacy_stock"], - "store_value" => $details["selling_price"] * $details["store_stock"], - "ward_value" => $details["selling_price"] * $total_ward_stock, - ]; - // } - } - $items = array_filter($items, function($item) use ($item_type){ - return $item['item_type_id'] == $item_type; - }); - $search_text = "Date: " . streamline_date($date); - return view('stores::stores.daily_stock_value_report', compact('search_text', 'item_type','date','items','total')); - - } - - public function sundries_physical_stock_count() - { - //check if there is a physical count that wasn't completed and alert the user otherwise allow the user go ahead with create new count - $ongoing_physical_count = SundryStoreStockReconciliation::where('completion_status', 0)->get(); - if (count($ongoing_physical_count) > 0) { - flash('There is an ongoing physical count. You can not start a new count, please resume previous count')->error(); - return redirect()->back(); - } - - $sundries = []; //DB::table('sundries')->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - - $sundries_dropdown = DB::table('sundries')->whereNull('deleted_at')->orderBy('name', 'asc')->pluck('name','id')->prepend('All sundries', 'all_items')->toArray(); - - $chart_of_accounts = ChartOfAccount::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $chart_of_accounts = ['' => '- select -'] + $chart_of_accounts; - - return view('stores::stores.sundries_physical_stock_count', compact('sundries', 'chart_of_accounts', 'sundries_dropdown')); - } - // labs reconcilation - public function labs_physical_stock_count(Request $request){ - $item_ids_array=$stock_adjustment_chart_of_account = null; - if (isset($request->search_items_ids)){ - $item_ids_array = $request->search_items_ids; - $is_all_items = in_array("all_items", $item_ids_array); - } - $labs =[]; - if ($item_ids_array != null){ - if ($is_all_items) { - $labs = Lab::orderby('name', 'asc')->get(); - } else{ - $labs = Lab::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } - $stock_adjustment_chart_of_account = ChartOfAccount::where('slug', 'stock_adjustment')->first(); - } - $labs_dropdown = Lab::orderBy('name', 'asc')->pluck('name', 'id')->prepend('All Labs', 'all_items')->toArray(); - // $chart_of_accounts = ChartOfAccount::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - // $chart_of_accounts = ['' => '- select -'] + $chart_of_accounts; - return view('stores::stores.labs_physical_stock_count', compact('labs', 'labs_dropdown','stock_adjustment_chart_of_account')); - } - public function update_labs_physical_stock_count(Request $request){ - $batch_quotation_ids_array = $request->batch_quotation_id; - $batch_radiology_ids_array = (isset($request->batch_radiology_id) && is_array($request->batch_radiology_id)) ? $request->batch_radiology_id : []; - $unique_radiology_ids_with_batches_array = is_array($batch_radiology_ids_array) ? array_unique($batch_radiology_ids_array) : []; - $batch_numbers_array = $request->batch_number; - $batch_unit_cost_array = $request->batch_unit_cost; - $batch_quantity_balances_array = $request->batch_quantity_balance; - $batch_expiry_dates_array = $request->expiry_date; - $batch_db_record_ids_array = $request->batch_db_record_id; - - $radiology_ids_array = $request->radiology_id; - $system_stock_array = $request->system_stock; - $physical_stock_array = $request->physical_stock; - $cost_price_array = $request->cost_price; - $difference_array = $request->difference; - $reason_for_difference_array = $request->reason_for_difference; - //get the max identifier - $sundries_with_initial_stock_array = is_null($request->is_initial_stock) ? [] : $request->is_initial_stock; - // $affected_account_id = $request->account_id; - - $stock_adjustment_chart_of_account = ChartOfAccount::where('slug', 'stock_adjustment')->first(); - $affected_account_id = $stock_adjustment_chart_of_account->id; - $opening_inventory_chart_of_account = ChartOfAccount::where('slug', 'opening_inventory')->first(); - - $reconcile_drug_store_stock = true; - $reconcile_date = $request->reconciliation_date; - //get the max identifier - $max_stock_count_identifier = DB::table('general_stock_reconciliations')->max('stock_count_identifier'); - - //update batch tracking tables with reconciliations - for ($i=0; $i < count($batch_numbers_array) ; $i++) { - if (!is_null($batch_numbers_array[$i]) && !is_null($batch_quantity_balances_array[$i])) { - //enforce double entry per batch - if (in_array($batch_radiology_ids_array[$i], $sundries_with_initial_stock_array)) { - $affected_account_id = $opening_inventory_chart_of_account->id;//overide adjustment a/c to be opening_inv - } else{ - $affected_account_id = $stock_adjustment_chart_of_account->id; - } - reconcile_batches(5, $batch_radiology_ids_array[$i], $batch_numbers_array[$i], $batch_quantity_balances_array[$i], $batch_expiry_dates_array[$i], "store", $batch_unit_cost_array[$i]??0, $batch_db_record_ids_array[$i]??0, $ward_id=null); - } - } - if (isset($request->reconcile_stock)) { - for ($x = 0; $x < count($radiology_ids_array); $x++) : - /* check if the difference value is not null and then update the radiology */ - if (!is_null($difference_array[$x])) { - record_stock_reconciliation(5,$radiology_ids_array[$x],$physical_stock_array[$x],$difference_array[$x],$system_stock_array[$x] - , $reason_for_difference_array[$x],1,$affected_account_id,$reconcile_date,$request->general_comment,1,$max_stock_count_identifier); - //update the system stock levels with the newly counted physical stock - //update only those with new physical value - $radiology = Lab::find($radiology_ids_array[$x]); - $radiology->store_stock = $physical_stock_array[$x]; - $radiology->updated_by = Auth::id(); - $reconcile_drug_store_stock = $radiology->update(); - } - endfor; - - /*==== do this to cater for the newer introduced editing batch number ======*/ - if (track_items_using_batches()) : - for ($i = 0; $i < count($batch_radiology_ids_array); $i++) : - if (!is_null($batch_radiology_ids_array[$i]) && $batch_radiology_ids_array[$i] != "") { - if ($batch_quotation_ids_array[$i] != '0') { - $quotation_record = Quotation::where(['drug_id' => $batch_radiology_ids_array[$i], 'batch_number' => $batch_numbers_array[$i], 'quotation_type_id' => 5])->first(); - if (!is_null($quotation_record)) { - $quotation_record->batch_balance = $batch_quantity_balances_array[$i]; - $quotation_record->update(); - } - } - elseif ($batch_quantity_balances_array[$i] != null && $batch_numbers_array[$i] != null && $batch_quotation_ids_array[$i] == '0') { - //assume that this batch doesn't have a corresponding quotation so make one - $new_quotation = new Quotation; - $new_quotation->quotation_type_id = 5; - $new_quotation->drug_id = $batch_radiology_ids_array[$i]; - $new_quotation->quantity = $batch_quantity_balances_array[$i]; - $new_quotation->expected_date = date('Y-m-d'); - $new_quotation->quotation_user = Auth::id(); - $new_quotation->quotation_date = date('Y-m-d'); - $new_quotation->billing_date = Carbon::now(); - $new_quotation->billing_user = Auth::id(); - $new_quotation->approval_date = Carbon::now(); - $new_quotation->approval_status = 1; - $new_quotation->approval_user = Auth::id(); - $new_quotation->receive_user = Auth::id(); - $new_quotation->receive_date = date('Y-m-d'); - $new_quotation->receive_status = 1; - $new_quotation->expiry_date = $batch_expiry_dates_array[$i]; - $new_quotation->batch_number = $batch_numbers_array[$i]; - $new_quotation->batch_balance = $batch_quantity_balances_array[$i]; - $new_quotation->directly_received_items = 1; - $new_quotation->created_by = Auth::id(); - $new_quotation->save(); - } - } - endfor; - foreach ($unique_radiology_ids_with_batches_array as $batch_sundry) { - $all_batch_balances_for_sundry = Quotation::where(['drug_id' => $batch_sundry, 'quotation_type_id' => 5])->where('batch_balance', '>', 0)->sum('batch_balance'); - if ($all_batch_balances_for_sundry > 0) { - $sundry_record = Lab::withTrashed()->find($batch_sundry); - $sundry_record->store_stock = $all_batch_balances_for_sundry; - $sundry_record->update(); - } - } - endif; - /*=========== end the catering for the newer introduced batch number ===========*/ - if ($reconcile_drug_store_stock) : - flash('Stock levels have been reconciled')->success(); - return redirect('stores_labs_stock_sheet'); - endif; - } - flash('Sorry, unable to update stock')->error(); - return redirect()->back(); - } - // Radiology reconciliation - public function radiologies_physical_stock_count(Request $request){ - $radiologies = []; - $item_ids_array=$stock_adjustment_chart_of_account = null; - if (isset($request->search_items_ids)){ - $item_ids_array = $request->search_items_ids; - $is_all_items = in_array("all_items", $item_ids_array); - } - $labs =[]; - if ($item_ids_array != null){ - if ($is_all_items) { - $radiologies = Radiology::orderby('name', 'asc')->get(); - } else{ - $radiologies = Radiology::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } - $stock_adjustment_chart_of_account = ChartOfAccount::where('slug', 'stock_adjustment')->first(); - } - - $radiologies_dropdown = Radiology::orderBy('name', 'asc')->pluck('name','id')->prepend('All Radiologies', 'all_items')->toArray(); - - $chart_of_accounts = ChartOfAccount::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $chart_of_accounts = ['' => '- select -'] + $chart_of_accounts; - - return view('stores::stores.radiologies_physical_stock_count', compact('radiologies', 'chart_of_accounts', 'radiologies_dropdown','stock_adjustment_chart_of_account')); - } - - public function update_radiologies_physical_stock_count(Request $request){ - $batch_quotation_ids_array = $request->batch_quotation_id; - $batch_radiology_ids_array = (isset($request->batch_radiology_id) && is_array($request->batch_radiology_id)) ? $request->batch_radiology_id : []; - $unique_radiology_ids_with_batches_array = is_array($batch_radiology_ids_array) ? array_unique($batch_radiology_ids_array) : []; - $batch_numbers_array = $request->batch_number; - $batch_unit_cost_array = $request->batch_unit_cost; - $batch_quantity_balances_array = $request->batch_quantity_balance; - $batch_expiry_dates_array = $request->expiry_date; - $batch_db_record_ids_array = $request->batch_db_record_id; - - $radiology_ids_array = $request->radiology_id; - $system_stock_array = $request->system_stock; - $physical_stock_array = $request->physical_stock; - $cost_price_array = $request->cost_price; - $difference_array = $request->difference; - $reason_for_difference_array = $request->reason_for_difference; - //get the max identifier - $sundries_with_initial_stock_array = is_null($request->is_initial_stock) ? [] : $request->is_initial_stock; - // $affected_account_id = $request->account_id; - - $stock_adjustment_chart_of_account = ChartOfAccount::where('slug', 'stock_adjustment')->first(); - $affected_account_id = $stock_adjustment_chart_of_account->id; - $opening_inventory_chart_of_account = ChartOfAccount::where('slug', 'opening_inventory')->first(); - - $reconcile_drug_store_stock = true; - $reconcile_date = $request->reconciliation_date; - //get the max identifier - $max_stock_count_identifier = DB::table('general_stock_reconciliations')->max('stock_count_identifier'); - - //update batch tracking tables with reconciliations - for ($i=0; $i < count($batch_numbers_array) ; $i++) { - if (!is_null($batch_numbers_array[$i]) && !is_null($batch_quantity_balances_array[$i])) { - //enforce double entry per batch - if (in_array($batch_radiology_ids_array[$i], $sundries_with_initial_stock_array)) { - $affected_account_id = $opening_inventory_chart_of_account->id;//overide adjustment a/c to be opening_inv - } else{ - $affected_account_id = $stock_adjustment_chart_of_account->id; - } - reconcile_batches(4, $batch_radiology_ids_array[$i], $batch_numbers_array[$i], $batch_quantity_balances_array[$i], $batch_expiry_dates_array[$i], "store", $batch_unit_cost_array[$i]??0, $batch_db_record_ids_array[$i]??0, $ward_id=null); - } - } - if (isset($request->reconcile_stock)) { - for ($x = 0; $x < count($radiology_ids_array); $x++) : - /* check if the difference value is not null and then update the radiology */ - if (!is_null($difference_array[$x])) { - record_stock_reconciliation(4,$radiology_ids_array[$x],$physical_stock_array[$x],$difference_array[$x],$system_stock_array[$x] - , $reason_for_difference_array[$x],1,$affected_account_id,$reconcile_date,$request->general_comment,1,$max_stock_count_identifier); - //update the system stock levels with the newly counted physical stock - //update only those with new physical value - $radiology = Radiology::find($radiology_ids_array[$x]); - $radiology->store_stock = $physical_stock_array[$x]; - - $radiology->updated_by = Auth::id(); - $reconcile_drug_store_stock = $radiology->update(); - } - endfor; - - /*==== do this to cater for the newer introduced editing batch number ======*/ - if (track_items_using_batches()) : - for ($i = 0; $i < count($batch_radiology_ids_array); $i++) : - if (!is_null($batch_radiology_ids_array[$i]) && $batch_radiology_ids_array[$i] != "") { - if ($batch_quotation_ids_array[$i] != '0') { - $quotation_record = Quotation::where(['drug_id' => $batch_radiology_ids_array[$i], 'batch_number' => $batch_numbers_array[$i], 'quotation_type_id' => 4])->first(); - if (!is_null($quotation_record)) { - $quotation_record->batch_balance = $batch_quantity_balances_array[$i]; - $quotation_record->update(); - } - } elseif ($batch_quantity_balances_array[$i] != null && $batch_numbers_array[$i] != null && $batch_quotation_ids_array[$i] == '0') { - //assume that this batch doesn't have a corresponding quotation so make one - $new_quotation = new Quotation; - $new_quotation->quotation_type_id = 4; - $new_quotation->drug_id = $batch_radiology_ids_array[$i]; - $new_quotation->quantity = $batch_quantity_balances_array[$i]; - $new_quotation->expected_date = date('Y-m-d'); - $new_quotation->quotation_user = Auth::id(); - $new_quotation->quotation_date = date('Y-m-d'); - $new_quotation->billing_date = Carbon::now(); - $new_quotation->billing_user = Auth::id(); - $new_quotation->approval_date = Carbon::now(); - $new_quotation->approval_status = 1; - $new_quotation->approval_user = Auth::id(); - $new_quotation->receive_user = Auth::id(); - $new_quotation->receive_date = date('Y-m-d'); - $new_quotation->receive_status = 1; - $new_quotation->expiry_date = $batch_expiry_dates_array[$i]; - $new_quotation->batch_number = $batch_numbers_array[$i]; - $new_quotation->batch_balance = $batch_quantity_balances_array[$i]; - $new_quotation->directly_received_items = 1; - $new_quotation->created_by = Auth::id(); - $new_quotation->save(); - } - } - endfor; - - foreach ($unique_radiology_ids_with_batches_array as $batch_sundry) { - $all_batch_balances_for_sundry = Quotation::where(['drug_id' => $batch_sundry, 'quotation_type_id' => 4])->where('batch_balance', '>', 0)->sum('batch_balance'); - if ($all_batch_balances_for_sundry > 0) { - $sundry_record = Radiology::withTrashed()->find($batch_sundry); - $sundry_record->store_stock = $all_batch_balances_for_sundry; - $sundry_record->update(); - } - } - endif; - /*=========== end the catering for the newer introduced batch number ===========*/ - - if ($reconcile_drug_store_stock) : - flash('Stock levels have been reconciled')->success(); - return redirect('store_radiology_stock_sheet'); - endif; - } - flash('Sorry, unable to update stock')->error(); - return redirect()->back(); - - } - - public function update_sundries_physical_stock_count(Request $request) - { - $batch_quotation_ids_array = $request->batch_quotation_id; - $batch_sundry_ids_array = (isset($request->batch_sundry_id) && is_array($request->batch_sundry_id)) ? $request->batch_sundry_id : []; - $unique_sundry_ids_with_batches_array = is_array($batch_sundry_ids_array) ? array_unique($batch_sundry_ids_array) : []; - $batch_numbers_array = $request->batch_number; - $batch_unit_cost_array = $request->batch_unit_cost; - $batch_quantity_balances_array = $request->batch_quantity_balance; - $batch_expiry_dates_array = $request->expiry_date; - $batch_db_record_ids_array = $request->batch_db_record_id; - - $sundries_ids_array = $request->sundry_id; - $system_stock_array = $request->system_stock; - $physical_stock_array = $request->physical_stock; - $cost_price_array = $request->cost_price; - $difference_array = $request->difference; - $shrinkage_array = $request->shrinkage; - $markup_array = $request->mark_up; - $reason_for_difference_array = $request->reason_for_difference; - //get the max identifier - $sundries_with_initial_stock_array = is_null($request->is_initial_stock) ? [] : $request->is_initial_stock; - $affected_account_id = $request->account_id; - - $stock_adjustment_chart_of_account = ChartOfAccount::where('slug', 'stock_adjustment')->first(); - $affected_account_id = $stock_adjustment_chart_of_account->id; - $opening_inventory_chart_of_account = ChartOfAccount::where('slug', 'opening_inventory')->first(); - - $reconcile_drug_store_stock = true; - //get the max identifier - $max_stock_count_identifier = DB::table('sundry_store_stock_reconciliations')->max('stock_count_identifier'); - - //update batch tracking tables with reconciliations - for ($i=0; $i < count($batch_numbers_array) ; $i++) { - if (!is_null($batch_numbers_array[$i]) && !is_null($batch_quantity_balances_array[$i])) { - //enforce double entry per batch - if (in_array($batch_sundry_ids_array[$i], $sundries_with_initial_stock_array)) { - $affected_account_id = $opening_inventory_chart_of_account->id;//overide adjustment a/c to be opening_inv - } else{ - $affected_account_id = $stock_adjustment_chart_of_account->id; - } - account_for_batch_reconciliations_difference($item_type = 2, $batch_sundry_ids_array[$i], $affected_account_id, $batch_numbers_array[$i], $batch_quantity_balances_array[$i], $request->reconciliation_date, "store", $ward_id = null); - - reconcile_batches($item_type = 2, $batch_sundry_ids_array[$i], $batch_numbers_array[$i], $batch_quantity_balances_array[$i], $batch_expiry_dates_array[$i], "store", $batch_unit_cost_array[$i]??0, $batch_db_record_ids_array[$i]??0, $ward_id=null); - } - } - - if (isset($request->reconcile_stock)) { - for ($x = 0; $x < count($sundries_ids_array); $x++) : - /* check if the difference value is not null and then update the drug */ - if (!is_null($difference_array[$x])) { - $physical_stock = new SundryStoreStockReconciliation; - $physical_stock->sundry_id = $sundries_ids_array[$x]; - $physical_stock->system_stock = $system_stock_array[$x]; - $physical_stock->physical_stock = $physical_stock_array[$x]; - $physical_stock->difference = $difference_array[$x]; - //$physical_stock->shrinkage = $shrinkage_array[$x]; - $physical_stock->mark_up = $markup_array[$x]; - $physical_stock->reason_for_difference = $reason_for_difference_array[$x]; - $physical_stock->completion_status = 1; - $physical_stock->affected_account_id = $affected_account_id; - $physical_stock->reconciliation_date = $request->reconciliation_date; - $physical_stock->general_comment = $request->general_comment; - $physical_stock->created_by = Auth::id(); - $physical_stock->save(); - //add the stock_count_identifier of the newly counted stock - $physical_stock_record_to_update = SundryStoreStockReconciliation::find($physical_stock->id); - $physical_stock_record_to_update->stock_count_identifier = $max_stock_count_identifier + 1; //increase ID by 1 for new - $physical_stock_record_to_update->update(); - - //update the system stock levels with the newly counted physical stock - //update only those with new physical value - $sundry = Sundry::find($sundries_ids_array[$x]); - $sundry->store_stock = $physical_stock_array[$x]; - if (in_array($sundry->id, $sundries_with_initial_stock_array)) { - $existing_opening_stock = is_null($sundry->opening_stock) ? 0 : $sundry->opening_stock; - $sundry->opening_stock = $existing_opening_stock + $physical_stock_array[$x]; - $sundry->opening_cost_price = $cost_price_array[$x]; - $sundry->opening_stock_date = $request->reconciliation_date; - $sundry->store_opening_stock = $physical_stock_array[$x]; - $affected_account_id = $opening_inventory_chart_of_account->id;//overide adjustment a/c to be opening_inv - } else{ - $affected_account_id = $stock_adjustment_chart_of_account->id; - } - //enforce double entry - //account_for_stock_reconciliations_difference($item_type = 2, $sundries_ids_array[$x], $affected_account_id, $difference_array[$x], $cost_price_array[$x], $request->reconciliation_date); - $sundry->updated_by = Auth::id(); - $reconcile_drug_store_stock = $sundry->update(); - } - endfor; - - /*==== do this to cater for the newer introduced editing batch number ======*/ - if (track_items_using_batches()) : - for ($i = 0; $i < count($batch_sundry_ids_array); $i++) : - if (!is_null($batch_sundry_ids_array[$i]) && $batch_sundry_ids_array[$i] != "") { - if ($batch_quotation_ids_array[$i] != '0') { - $quotation_record = Quotation::where(['drug_id' => $batch_sundry_ids_array[$i], 'batch_number' => $batch_numbers_array[$i], 'quotation_type_id' => 2])->first(); - if (!is_null($quotation_record)) { - $quotation_record->batch_balance = $batch_quantity_balances_array[$i]; - $quotation_record->update(); - } - } elseif ($batch_quantity_balances_array[$i] != null && $batch_numbers_array[$i] != null && $batch_quotation_ids_array[$i] == '0') { - //assume that this batch doesn't have a corresponding quotation so make one - $new_quotation = new Quotation; - $new_quotation->quotation_type_id = 2; - $new_quotation->drug_id = $batch_sundry_ids_array[$i]; - $new_quotation->quantity = $batch_quantity_balances_array[$i]; - $new_quotation->expected_date = date('Y-m-d'); - $new_quotation->quotation_user = Auth::id(); - $new_quotation->quotation_date = date('Y-m-d'); - $new_quotation->billing_date = Carbon::now(); - $new_quotation->billing_user = Auth::id(); - $new_quotation->approval_date = Carbon::now(); - $new_quotation->approval_status = 1; - $new_quotation->approval_user = Auth::id(); - $new_quotation->receive_user = Auth::id(); - $new_quotation->receive_date = date('Y-m-d'); - $new_quotation->receive_status = 1; - $new_quotation->expiry_date = $batch_expiry_dates_array[$i]; - $new_quotation->batch_number = $batch_numbers_array[$i]; - $new_quotation->batch_balance = $batch_quantity_balances_array[$i]; - $new_quotation->directly_received_items = 1; - $new_quotation->created_by = Auth::id(); - $new_quotation->save(); - } - } - endfor; - - foreach ($unique_sundry_ids_with_batches_array as $batch_sundry) { - $all_batch_balances_for_sundry = Quotation::where(['drug_id' => $batch_sundry, 'quotation_type_id' => 2])->where('batch_balance', '>', 0)->sum('batch_balance'); - if ($all_batch_balances_for_sundry > 0) { - $sundry_record = Sundry::withTrashed()->find($batch_sundry); - $sundry_record->store_stock = $all_batch_balances_for_sundry; - $sundry_record->update(); - } - } - endif; - /*=========== end the catering for the newer introduced batch number ===========*/ - - if ($reconcile_drug_store_stock) : - flash('Stock levels have been reconciled')->success(); - return redirect('sundries_stock_sheet'); - endif; - } else if (isset($request->save_stock)) { - //save these for editing later on - for ($x = 0; $x < count($sundries_ids_array); $x++) : - $physical_stock = new SundryStoreStockReconciliation; - $physical_stock->sundry_id = $sundries_ids_array[$x]; - $physical_stock->system_stock = $system_stock_array[$x]; - $physical_stock->physical_stock = $physical_stock_array[$x]; - $physical_stock->difference = $difference_array[$x]; - //$physical_stock->shrinkage = $shrinkage_array[$x]; - $physical_stock->mark_up = $markup_array[$x]; - $physical_stock->reason_for_difference = $reason_for_difference_array[$x]; - $physical_stock->completion_status = 0; - $physical_stock->created_by = Auth::id(); - $saved_physical_stock = $physical_stock->save(); - //add stock_count_identifier that will be used in resuming edit - $physical_stock_record_to_that_will_be_updated = SundryStoreStockReconciliation::find($physical_stock->id); - $physical_stock_record_to_that_will_be_updated->stock_count_identifier = $max_stock_count_identifier + 1; //increase ID by 1 for new - $physical_stock_record_to_that_will_be_updated->update(); - endfor; - - /*==== do this to cater for the newer introduced editing batch number ======*/ - if (track_items_using_batches()) : - for ($i = 0; $i < count($batch_sundry_ids_array); $i++) : - if (!is_null($batch_sundry_ids_array[$i]) && $batch_sundry_ids_array[$i] != "") { - $temp_reconciliation_batch_details = new BatchDetailsForTemporaryStockReconciliation; - $temp_reconciliation_batch_details->drug_id = $batch_sundry_ids_array[$i]; - $temp_reconciliation_batch_details->batch_number = $batch_numbers_array[$i]; - $temp_reconciliation_batch_details->batch_quantity = $batch_quantity_balances_array[$i]; - $temp_reconciliation_batch_details->batch_quotation_id = $batch_quotation_ids_array[$i]; - $temp_reconciliation_batch_details->stock_count_identifier = $max_stock_count_identifier + 1; - $temp_reconciliation_batch_details->save(); - } - endfor; - endif; - /*=========== end the catering for the newer introduced batch number ===========*/ - - if ($saved_physical_stock) : - flash('Physical stock has been saved. You can resume later')->success(); - return redirect('stores'); - endif; - } - - flash('Sorry, unable to update stock')->error(); - return redirect()->back(); - } - - public function resume_sundries_physical_stock_count() - { - //check if there is a physical count that wasn't completed and alert the user otherwise allow the user go ahead with create new count - $stock_reconciliations = DB::table('sundry_store_stock_reconciliations')->where('completion_status', 0)->get(); - if (count($stock_reconciliations) < 1) { - flash()->error("There is no ongoing physical sundries count"); - return redirect('stores'); - } else { - return view('stores::stores.resume_sundries_physical_stock_count', compact('stock_reconciliations')); - } - } - - /* handle a resumed sundries physical stock count */ - public function complete_resumed_sundries_stock_count(Request $request) - { - $reconciliation_ids_array = $request->reconciliation_record_ids; - $sundries_ids_array = $request->sundry_id; - $system_stock_array = $request->system_stock; - $physical_stock_array = $request->physical_stock; - $difference_array = $request->difference; - $shrinkage_array = $request->shrinkage; - $markup_array = $request->mark_up; - $reason_for_difference_array = $request->reason_for_difference; - - for ($x = 0; $x < count($reconciliation_ids_array); $x++) { - $physical_stock = SundryStoreStockReconciliation::find($reconciliation_ids_array[$x]); - $physical_stock->sundry_id = $sundries_ids_array[$x]; - $physical_stock->system_stock = $system_stock_array[$x]; - $physical_stock->physical_stock = $physical_stock_array[$x]; - $physical_stock->difference = $difference_array[$x]; - $physical_stock->shrinkage = $shrinkage_array[$x]; - $physical_stock->mark_up = $markup_array[$x]; - $physical_stock->reason_for_difference = $reason_for_difference_array[$x]; - $physical_stock->completion_status = isset($request->reconcile_stock) ? 1 : 0; - if (isset($request->reconcile_stock_top)) { - $physical_stock->completion_status = 1; - } - - if ($physical_stock->update()) { - //update the system stock levels with the newly counted physical stock - //update only those with new physical value - if (isset($sundries_ids_array[$x]) && !is_null($sundries_ids_array[$x]) && $sundries_ids_array[$x] != "") { - $sundry = Sundry::withTrashed()->find($sundries_ids_array[$x]); - $sundry->store_stock = $physical_stock_array[$x]; - $sundry->updated_by = Auth::id(); - $reconcile_drug_store_stock = $sundry->update(); - } - } - } - - flash('Stock levels details have been updated')->success(); - return redirect('stores'); - } - - /* sundries stock reconciliation report */ - public function sundries_stock_reconciliation_report(Request $request) - { - $filters=[]; - if (!empty($request->dates)) { - switch ($request->dates) { - case 'today': - $today = Carbon::today()->startOfDay()->toDateString(); - $end = Carbon::parse($today)->endOfDay()->toDateTimeString(); - array_push($filters, [$today, $end]); - break; - case 'yesterday': - $yesterday = Carbon::yesterday()->startOfDay()->toDateString(); - $end = Carbon::parse($yesterday)->endOfDay()->toDateTimeString(); - array_push($filters, [$yesterday, $end]); - break; - case 'custom_date': - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->start_date)->endOfDay()->toDateTimeString(); - array_push($filters, [$start, $end]); - break; - case 'custom_date_range': - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - array_push($filters, [$start, $end]); - break; - default: - # code... - break; - } - } else{ - $today = Carbon::today()->startOfDay()->toDateString(); - $end = Carbon::parse($today)->endOfDay()->toDateTimeString(); - array_push($filters, [$today, $end]); - } - $reconciled_stocks = SundryStoreStockReconciliation::groupBy("stock_count_identifier")->whereBetween('created_at', $filters)->orderBy('stock_count_identifier', 'desc')->get(); - $route='stores.sundries_stock_reconciliation_report_details'; - $title='stores.sundries_stock_reconciliation_report'; - $route_filter='stores.sundries_stock_reconciliation_report'; - return view('stores::stores.sundries_stock_reconciliation_report', compact('reconciled_stocks','route','route_filter','title')); - } - - /* stock reconciliation report details */ - public function sundries_stock_reconciliation_report_details(Request $request) - { - $sundries_reconciled = SundryStoreStockReconciliation::where(['stock_count_identifier' => $request->stock_count_identifier])->get(); - return view('stores::stores.sundries_stock_reconciliation_report_details', compact('sundries_reconciled')); - } - - //GENERAL ITEMS - - /* update stock sheet */ - public function update_general_items_stock_sheet(Request $request) - { - $general_items_ids = $request->general_item_id; - $quantity = $request->quantity; - $expired_dates = $request->expiry_date; - - for ($x = 0; $x < count($general_items_ids); $x++) : - $general_item = GeneralItem::find($general_items_ids[$x]); - $general_item->store_stock = $quantity[$x]; - $general_item->expiry_date = $expired_dates[$x]; - $update_store_stock = $general_item->update(); - endfor; - - if ($update_store_stock) : - flash('General Items Store Stock Levels Updated')->success(); - return redirect('general_items_stock_sheet'); - endif; - - flash('Sorry, unable to update stock')->error(); - return redirect()->back(); - } - - public function general_items_physical_stock_count() - { - //check if there is a physical count that wasn't completed and alert the user otherwise allow the user go ahead with create new count - $ongoing_physical_count = GeneralItemStoreStockReconciliation::where('completion_status', 0)->get(); - if (count($ongoing_physical_count) > 0) { - flash('There is an ongoing physical count. You can not start a new count, please resume previous count')->error(); - return redirect()->back(); - } - - $general_items = DB::table('general_items')->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - if (count($general_items) < 1) { - flash()->error("There is no general items in stock"); - return redirect('general_items'); - } else { - $chart_of_accounts = ChartOfAccount::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $chart_of_accounts = ['' => '- select -'] + $chart_of_accounts; - - $general_items_dropdown = DB::table('general_items')->whereNull('deleted_at')->orderBy('name', 'asc')->pluck('name','id')->prepend('All drugs', 'all_items')->toArray(); - - return view('stores::stores.general_items_physical_stock_count', compact('general_items', 'chart_of_accounts', 'general_items_dropdown')); - } - } - - /* handle updating general items physical stock count */ - public function update_general_items_physical_stock_count(Request $request) - { - $batch_quotation_ids_array = $request->batch_quotation_id; - $batch_general_item_ids_array = (isset($request->batch_general_item_id) && is_array($request->batch_general_item_id)) ? $request->batch_general_item_id : []; - $unique_sundry_ids_with_batches_array = array_unique($batch_general_item_ids_array); - $batch_numbers_array = $request->batch_number; - $batch_unit_cost_array = $request->batch_unit_cost; - $batch_quantity_balances_array = $request->batch_quantity_balance; - $batch_expiry_dates_array = $request->expiry_date; - $batch_db_record_ids_array = $request->batch_db_record_id; - - $general_items_ids_array = $request->general_item_id; - $system_stock_array = $request->system_stock; - $physical_stock_array = $request->physical_stock; - $cost_price_array = $request->cost_price; - $difference_array = $request->difference; - $shrinkage_array = $request->shrinkage; - $markup_array = $request->mark_up; - $reason_for_difference_array = $request->reason_for_difference; - //get the max identifier - $stock_adjustment_chart_of_account = ChartOfAccount::where('slug', 'stock_adjustment')->first(); - $affected_account_id = $stock_adjustment_chart_of_account->id; - $opening_inventory_chart_of_account = ChartOfAccount::where('slug', 'opening_inventory')->first(); - $general_items_with_initial_stock_array = is_null($request->is_initial_stock) ? [] : $request->is_initial_stock; - $affected_account_id = $request->account_id; - - $reconcile_drug_store_stock = true; - - $max_stock_count_identifier = DB::table('general_item_store_stock_reconciliations')->max('stock_count_identifier'); - - //update batch tracking tables with reconciliations - for ($i=0; $i < count($batch_numbers_array) ; $i++) { - if (!is_null($batch_numbers_array[$i]) && !is_null($batch_quantity_balances_array[$i])) { - //enforce double entry per batch - if (in_array($batch_general_item_ids_array[$i], $general_items_with_initial_stock_array)) { - $affected_account_id = $opening_inventory_chart_of_account->id;//overide adjustment a/c to be opening_inv - } else{ - $affected_account_id = $stock_adjustment_chart_of_account->id; - } - account_for_batch_reconciliations_difference($item_type = 6, $batch_general_item_ids_array[$i], $affected_account_id, $batch_numbers_array[$i], $batch_quantity_balances_array[$i], $request->reconciliation_date, "store", $ward_id = null); - - reconcile_batches($item_type = 6, $batch_general_item_ids_array[$i], $batch_numbers_array[$i], $batch_quantity_balances_array[$i], $batch_expiry_dates_array[$i], "store", $batch_unit_cost_array[$i]??0, $batch_db_record_ids_array[$i]??0, $ward_id=null); - } - } - - if (isset($request->reconcile_stock)) { - for ($x = 0; $x < count($general_items_ids_array); $x++) : - /* check if the difference value is not null and then update the drug */ - if (!is_null($difference_array[$x])) { - $physical_stock = new GeneralItemStoreStockReconciliation; - $physical_stock->general_item_id = $general_items_ids_array[$x]; - $physical_stock->system_stock = $system_stock_array[$x]; - $physical_stock->physical_stock = $physical_stock_array[$x]; - $physical_stock->difference = $difference_array[$x]; - //$physical_stock->shrinkage = $shrinkage_array[$x]; - $physical_stock->mark_up = $markup_array[$x]; - $physical_stock->reason_for_difference = $reason_for_difference_array[$x]; - $physical_stock->completion_status = 1; - $physical_stock->affected_account_id = $affected_account_id; - $physical_stock->reconciliation_date = $request->reconciliation_date; - $physical_stock->created_by = Auth::id(); - $physical_stock->save(); - //add the stock_count_identifier of the newly counted stock - $physical_stock_record_to_update = GeneralItemStoreStockReconciliation::find($physical_stock->id); - $physical_stock_record_to_update->stock_count_identifier = $max_stock_count_identifier + 1; //increase ID by 1 for new - $physical_stock_record_to_update->update(); - - //update the system stock levels with the newly counted physical stock - //update only those with new physical value - $general_item = GeneralItem::find($general_items_ids_array[$x]); - $general_item->store_stock = $physical_stock_array[$x]; - if (in_array($general_item->id, $general_items_with_initial_stock_array)) { - $general_item->opening_stock = $physical_stock_array[$x]; - $general_item->opening_cost_price = $cost_price_array[$x]; - } - $general_item->updated_by = Auth::id(); - $reconcile_drug_store_stock = $general_item->update(); - } - endfor; - - /*==== do this to cater for the newer introduced editing batch number ======*/ - if (track_items_using_batches()) : - for ($i = 0; $i < count($batch_general_item_ids_array); $i++) : - if (!is_null($batch_general_item_ids_array[$i]) && $batch_general_item_ids_array[$i] != "") { - if ($batch_quotation_ids_array[$i] != '0') { - $quotation_record = Quotation::where(['drug_id' => $batch_general_item_ids_array[$i], 'batch_number' => $batch_numbers_array[$i], 'quotation_type_id' => 6])->first(); - if (!is_null($quotation_record)) { - $quotation_record->batch_balance = $batch_quantity_balances_array[$i]; - $quotation_record->update(); - } - } elseif ($batch_quantity_balances_array[$i] != null && $batch_numbers_array[$i] != null && $batch_quotation_ids_array[$i] == '0') { - //assume that this batch doesnt have a corresponding quotation so make one - $new_quotation = new Quotation; - $new_quotation->quotation_type_id = 6; - $new_quotation->drug_id = $batch_general_item_ids_array[$i]; - $new_quotation->quantity = $batch_quantity_balances_array[$i]; - $new_quotation->expected_date = date('Y-m-d'); - $new_quotation->quotation_user = Auth::id(); - $new_quotation->quotation_date = date('Y-m-d'); - $new_quotation->billing_date = Carbon::now(); - $new_quotation->billing_user = Auth::id(); - $new_quotation->approval_date = Carbon::now(); - $new_quotation->approval_status = 1; - $new_quotation->approval_user = Auth::id(); - $new_quotation->receive_user = Auth::id(); - $new_quotation->receive_date = date('Y-m-d'); - $new_quotation->receive_status = 1; - $new_quotation->expiry_date = $batch_expiry_dates_array[$i]; - $new_quotation->batch_number = $batch_numbers_array[$i]; - $new_quotation->batch_balance = $batch_quantity_balances_array[$i]; - $new_quotation->directly_received_items = 1; - $new_quotation->created_by = Auth::id(); - $new_quotation->save(); - } - } - endfor; - - foreach ($unique_sundry_ids_with_batches_array as $batch_sundry) { - $all_batch_balances_for_general_item = Quotation::where(['drug_id' => $batch_sundry, 'quotation_type_id' => 6])->where('batch_balance', '>', 0)->sum('batch_balance'); - if ($all_batch_balances_for_general_item > 0) { - $general_item_record = GeneralItem::withTrashed()->find($batch_sundry); - $general_item_record->store_stock = $all_batch_balances_for_general_item; - $general_item_record->update(); - } - } - endif; - /*=========== end the catering for the newer introduced batch number ===========*/ - - if ($reconcile_drug_store_stock) : - flash('Stock levels have been reconciled')->success(); - return redirect('general_items_stock_sheet'); - endif; - } else if (isset($request->save_stock)) { - //save these for editing later on - for ($x = 0; $x < count($general_items_ids_array); $x++) : - $physical_stock = new GeneralItemStoreStockReconciliation; - $physical_stock->sundry_id = $general_items_ids_array[$x]; - $physical_stock->system_stock = $system_stock_array[$x]; - $physical_stock->physical_stock = $physical_stock_array[$x]; - $physical_stock->difference = $difference_array[$x]; - //$physical_stock->shrinkage = $shrinkage_array[$x]; - $physical_stock->mark_up = $markup_array[$x]; - $physical_stock->reason_for_difference = $reason_for_difference_array[$x]; - $physical_stock->completion_status = 0; - $physical_stock->created_by = Auth::id(); - $saved_physical_stock = $physical_stock->save(); - //add stock_count_identifier that will be used in resuming edit - $physical_stock_record_to_that_will_be_updated = GeneralItemStoreStockReconciliation::find($physical_stock->id); - $physical_stock_record_to_that_will_be_updated->stock_count_identifier = $max_stock_count_identifier + 1; //increase ID by 1 for new - $physical_stock_record_to_that_will_be_updated->update(); - endfor; - - if ($saved_physical_stock) : - flash('Physical stock has been saved. You can resume later')->success(); - return redirect('stores'); - endif; - } - - flash('Sorry, unable to update stock')->error(); - return redirect()->back(); - } - - /* handle to resume general items physical stock count */ - public function resume_general_items_physical_stock_count() - { - //check if there is a physical count that wasn't completed and alert the user otherwise allow the user go ahead with create new count - $stock_reconciliations = DB::table('general_item_store_stock_reconciliations')->where('completion_status', 0)->get(); - if (count($stock_reconciliations) < 1) { - flash()->error("There is no ongoing physical sundries count"); - return redirect('stores'); - } else { - return view('stores::stores.resume_general_items_physical_stock_count', compact('stock_reconciliations')); - } - } - - /* handle a resumed general items physical stock count */ - public function complete_resumed_general_items_stock_count(Request $request) - { - $reconciliation_ids_array = $request->reconciliation_record_ids; - $general_items_ids_array = $request->sundry_id; - $system_stock_array = $request->system_stock; - $physical_stock_array = $request->physical_stock; - $difference_array = $request->difference; - $shrinkage_array = $request->shrinkage; - $markup_array = $request->mark_up; - $reason_for_difference_array = $request->reason_for_difference; - - for ($x = 0; $x < count($reconciliation_ids_array); $x++) { - $physical_stock = SundryStoreStockReconciliation::find($reconciliation_ids_array[$x]); - $physical_stock->sundry_id = $general_items_ids_array[$x]; - $physical_stock->system_stock = $system_stock_array[$x]; - $physical_stock->physical_stock = $physical_stock_array[$x]; - $physical_stock->difference = $difference_array[$x]; - $physical_stock->shrinkage = $shrinkage_array[$x]; - $physical_stock->mark_up = $markup_array[$x]; - $physical_stock->reason_for_difference = $reason_for_difference_array[$x]; - $physical_stock->completion_status = isset($request->reconcile_stock) ? 1 : 0; - if (isset($request->reconcile_stock_top)) { - $physical_stock->completion_status = 1; - } - - if ($physical_stock->update()) { - //update the system stock levels with the newly counted physical stock - //update only those with new physical value - if (isset($general_items_ids_array[$x]) && !is_null($general_items_ids_array[$x]) && $general_items_ids_array[$x] != "") { - $general_item = GeneralItem::withTrashed()->find($general_items_ids_array[$x]); - $general_item->store_stock = $physical_stock_array[$x]; - $general_item->updated_by = Auth::id(); - $reconcile_drug_store_stock = $general_item->update(); - } - } - } - - flash('Stock levels details have been updated')->success(); - return redirect('stores'); - } - - /* general_items stock reconciliation report */ - public function general_items_stock_reconciliation_report(Request $request) - { - $reconciled_stocks = GeneralItemStoreStockReconciliation::groupBy("stock_count_identifier")->get(); - return view('stores::stores.general_items_stock_reconciliation_report', compact('reconciled_stocks')); - } - - /* general_items reconciliation report details */ - public function general_items_stock_reconciliation_report_details(Request $request) - { - $var=false; - $general_items_reconciled = GeneralItemStoreStockReconciliation::where(['stock_count_identifier' => $request->stock_count_identifier])->get(); - return view('stores::stores.general_items_stock_reconciliation_report_details', compact('general_items_reconciled','var')); - } - //END GENERAL ITEMS - - public function select_receive_items_option(Request $request) - { - $quotation_type_options = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $quotation_type_options = ['' => '- Select Quotation type -'] + $quotation_type_options; - $results = null; - - return view('stores::stores.select_receive_items_option', compact('quotation_type_options')); - } - - public function receive_items_directly(Request $request) - { - $package_units = DB::table('package_units')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $package_units = ['' => '- select -'] + $package_units; - - $quotation_type_options = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $quotation_type_options = ['' => '- Select Quotation type -'] + $quotation_type_options; - $results = null; - $filters = []; - - $quotation_type = $request->quotation_type; - $items = null; - $suppliers = DB::table('suppliers')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $suppliers = ['' => '- select -'] + $suppliers; - $quotation_types_array = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - //1-drug 2-sundry 3-dental 4-radiology 5-Lab - if ($quotation_type == 1) { - $items = Drug::where('available', 1)->orderby('name', 'asc')->paginate(50); - } elseif ($quotation_type == 2) { - $items = Sundry::whereNull('deleted_at')->orderBy('name', 'asc')->paginate(50); - } elseif ($quotation_type == 3) { - $items = Dental::whereNull('deleted_at')->orderBy('name', 'asc')->paginate(50); - } elseif ($quotation_type == 4) { - $items = Radiology::whereNull('deleted_at')->orderBy('name', 'asc')->paginate(50); - } elseif ($quotation_type == 5) { - $items = Lab::whereNull('deleted_at')->orderBy('name', 'asc')->paginate(50); - } elseif ($quotation_type == 6) { - $items = GeneralItem::whereNull('deleted_at')->orderBy('name', 'asc')->paginate(50); - } elseif ($quotation_type == 7) { - $items = EyeGlasses::whereNull('deleted_at')->orderBy('name', 'asc')->paginate(50); - } - $drugs = Drug::where('available', 1)->orderby('name')->pluck('name', 'id'); - $sundries = Sundry::where('available', 1)->orderby('name')->pluck('name', 'id'); - $dentals = Dental::orderBy('name')->pluck('name', 'id'); - $radiologies = Radiology::orderBy('name')->pluck('name', 'id'); - $labs = Lab::orderBy('name')->pluck('name', 'id'); - $general_items = GeneralItem::orderBy('name')->pluck('name', 'id'); - $optical_items = EyeGlasses::orderBy('name')->pluck('name', 'id'); - - return view('stores::stores.receive_items_directly', compact('items', 'quotation_type', 'suppliers', 'quotation_types_array', 'drugs', 'sundries', 'dentals', 'radiologies', 'labs', 'package_units', 'general_items', 'optical_items')); - } - - public function store_received_items_directly(Request $request) - { - $validator = Validator::make($request->all(), [ - 'received_on_date' => 'required', - 'supplier' => 'required' - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash('please ensure you have filled in the received date and batch number')->error(); - return redirect('receive_items_directly'); - } else { - /* =============== */ - //check if the items have required values to complete double entry before proceeding - if ($request->item_type == 3 || $request->item_type == 4 || $request->item_type == 5) { - for ($i=0; $i < count($request->item_id) ; $i++) { - if (($request->item_type == 3) && get_name($request->item_id[$i], "id", "expenses_account_id", "dentals") == null) { - flash("Please make sure that all dentals have expense accounts e.g ".get_name($request->item_id[$i], "id", "name", "dentals"))->error(); - return redirect('select_receive_items_option'); - } - - if (($request->item_type == 4) && get_name($request->item_id[$i], "id", "expenses_account_id", "radiologies") == null) { - flash("Please make sure that all radiologies have expense accounts e.g ".get_name($request->item_id[$i], "id", "name", "radiologies"))->error(); - return redirect('select_receive_items_option'); - } - - if (($request->item_type == 5) && get_name($request->item_id[$i], "id", "expenses_account_id", "labs") == null) { - flash("Please make sure that all labs have expense accountse.g ".get_name($request->item_id[$i], "id", "name", "labs"))->error(); - return redirect('select_receive_items_option'); - } - - if (($request->item_type == 6) && get_name($request->item_id[$i], "id", "expenses_account_id", "general_items") == null) { - flash("Please make sure that all general items have expense accountse.g ".get_name($request->item_id[$i], "id", "name", "general_items"))->error(); - return redirect('select_receive_items_option'); - } - } - } - /* =============== */ - $package_unit_array = $request->package_unit; - $number_of_package_units_array = $request->number_of_package_units; - $quantity_per_package_unit_array = $request->quantity_per_package_unit; - $bill_per_package_unit_array = $request->bill_per_package_unit; - - $item_id_array = $request->item_id; - $quantity_array = $request->quantity; - $expected_date = date('Y-m-d'); - $supplier_id = $request->supplier; - $user_id = Auth::id(); - $item_type = $request->item_type; - $quotation_date = Carbon::now(); - $bill_array = $request->bill; - $receive_date = Carbon::createFromFormat('d/m/Y', $request->received_on_date)->toDateString(); - $expiry_date = $request->expiry_date; - $batch_numbers_array = $request->batch_number; - $total_price = 0; - - $results = DB::select("select max(quotation_number) quotation_number from quotations limit 1"); - $current_quotation_number = 0; - foreach ($results as $result) { - $current_quotation_number = $result->quotation_number + 1; - } - //get next grn_number - $new_grn_number = Quotation::where('quotation_number', $current_quotation_number)->max('grn_number'); - if (is_null($new_grn_number)) { - $new_grn_number = (float)$current_quotation_number +0.1; - } else { - $new_grn_number = (float)$new_grn_number + 0.1; - } - - //$non_zero_count = count(array_filter($quantity_array, "nonzero")); generating an error for but to be reviewed - $non_zero_count = count($quantity_array); - $expected_last_quotation_number = $current_quotation_number + $non_zero_count; - $old_quantity = 0; - $new_quantity = 0; - - for ($x = 0; $x < count($item_id_array); $x++) : - //Expiry date of the drugs - $expiry_date_for_each = isset($expiry_date[$x]) ? Carbon::createFromFormat('d/m/Y', $expiry_date[$x])->toDateString() : ""; - // Updating the total price incase it has changed - //$total_price = $bill_array[$x] * $quantity_array[$x]; - $total_price = $number_of_package_units_array[$x] * $bill_per_package_unit_array[$x]; - - $eloquent_model = new Quotation; - $eloquent_model->quotation_type_id = $item_type; - $eloquent_model->drug_id = $item_id_array[$x]; - $eloquent_model->package_unit = $package_unit_array[$x]; - $eloquent_model->number_of_package_units = $number_of_package_units_array[$x]; - $eloquent_model->quantity_per_package_unit = $quantity_per_package_unit_array[$x]; - $eloquent_model->bill_per_package_unit = $bill_per_package_unit_array[$x]; - $eloquent_model->quantity = $quantity_array[$x]; - $eloquent_model->expected_date = $expected_date; - $eloquent_model->quotation_user = $user_id; - $eloquent_model->quotation_number = $current_quotation_number; - $eloquent_model->quotation_date = $quotation_date; - $eloquent_model->supplier_id = $supplier_id; - $eloquent_model->bill = $bill_array[$x]; - $eloquent_model->billing_date = Carbon::now(); - $eloquent_model->billing_user = Auth::id(); - $eloquent_model->approval_date = Carbon::now(); - $eloquent_model->approval_status = 1; - $eloquent_model->approval_user = Auth::id(); - $eloquent_model->receive_user = Auth::id(); - $eloquent_model->receive_date = $receive_date; - $eloquent_model->receive_status = 1; - $eloquent_model->grn_number=$new_grn_number; - $eloquent_model->receive_number_of_package_units = $number_of_package_units_array[$x]; - $eloquent_model->receive_quantity_per_package_unit = $quantity_per_package_unit_array[$x]; - $eloquent_model->receive_bill_per_package_unit = $bill_per_package_unit_array[$x]; - $eloquent_model->receive_quantity = $quantity_array[$x]; - $eloquent_model->receive_bill = $bill_array[$x]; - $eloquent_model->receiver_comment = $request->receiver_comment; - $eloquent_model->total_price = $total_price; - $eloquent_model->expiry_date = $expiry_date_for_each; - $eloquent_model->batch_number = $batch_numbers_array[$x]; - $eloquent_model->batch_balance = $quantity_array[$x]; - $eloquent_model->directly_received_items = 1; - - if ($request->has('store_submit_button')) { - $eloquent_model->destination = 'store'; - create_batch_watcher_record($item_id_array[$x], $item_type, $bill_array[$x],$batch_numbers_array[$x], $quantity_array[$x], $pharmacy_stock = 0,$lab_stock=0, $expiry_date_for_each); - } else if ($request->has('pharmacy_submit_button')) { - $eloquent_model->destination = 'pharmacy'; - create_batch_watcher_record($item_id_array[$x], $item_type, $bill_array[$x],$batch_numbers_array[$x], $store_stock = 0, $quantity_array[$x],$lab_stock=0, $expiry_date_for_each); - } elseif ($request->has('lab_submit_button')) { - $eloquent_model->destination = 'lab'; - create_batch_watcher_record($item_id_array[$x], $item_type, $bill_array[$x],$batch_numbers_array[$x],$store_stock=0 , $pharmacy_stock = 0,$quantity_array[$x], $expiry_date_for_each); - }elseif ($request->has('radiology_submit_button')) - { - $eloquent_model->destination = 'Imaging'; - create_batch_watcher_record($item_id_array[$x], $item_type, $bill_array[$x], $batch_numbers_array[$x], $store_stock=0, $pharmacy_stock = 0, $quantity_array[$x], $expiry_date_for_each); - } - - $eloquent_model->created_by = Auth::id(); - - if ($eloquent_model->save()) { - // Increasing the stock level in necessary inventory tables i.e //1-drug,2-sundry,3-dental,4-radiology 5-Lab - //check for the quotation_type_id then know what table to use in getting $old_quantity - $store_item = null; - $drug_id = $item_id_array[$x]; - $quantity_to_add = $quantity_array[$x]; - - //do the necessary stock additions depending on which button has been clicked on the form - if ($request->has('store_submit_button')) { - if ($item_type == 1) { - $old_quantity = get_name($drug_id, "id", "store_stock", "drugs"); - if ($old_quantity == "N/A") { - $old_quantity = 0; - }; - $new_quantity = $old_quantity + (int)$quantity_to_add; - $store_item = Drug::find($drug_id); - if (!is_null($store_item)) { - $store_item->store_stock = $new_quantity; - $store_item->expiry_date = $expiry_date_for_each; - save_new_cost_of_good($drug_id, $item_type, $bill_array[$x]); - } - } elseif ($item_type == 2) { - $old_quantity = get_name($drug_id, "id", "store_stock", "sundries"); - $new_quantity = $old_quantity + (int)$quantity_to_add; - $store_item = Sundry::find($drug_id); - if (!is_null($store_item)) { - $store_item->store_stock = $new_quantity; - $store_item->expiry_date = $expiry_date_for_each; - save_new_cost_of_good($drug_id, $item_type, $bill_array[$x]); - } - } elseif ($item_type == 3) { - $old_quantity = get_name($drug_id, "id", "store_stock", "dentals"); - $new_quantity = $old_quantity + (int)$quantity_to_add; - $store_item = Dental::find($drug_id); - if (!is_null($store_item)) { - $store_item->store_stock = $new_quantity; - $store_item->expiry_date = $expiry_date_for_each; - save_new_cost_of_good($drug_id, $item_type, $bill_array[$x]); - } - } elseif ($item_type == 4) { - $old_quantity = get_name($drug_id, "id", "store_stock", "radiologies"); - $new_quantity = $old_quantity + (int)$quantity_to_add; - $store_item = Radiology::find($drug_id); - if (!is_null($store_item)) { - $store_item->store_stock = $new_quantity; - $store_item->expiry_date = $expiry_date_for_each; - save_new_cost_of_good($drug_id, $item_type, $bill_array[$x]); - } - } elseif ($item_type == 5) { - $old_quantity = get_name($drug_id, "id", "store_stock", "labs"); - $new_quantity = $old_quantity + (int)$quantity_to_add; - $store_item = Lab::find($drug_id); - if (!is_null($store_item)) { - $store_item->store_stock = $new_quantity; - $store_item->expiry_date = $expiry_date_for_each; - save_new_cost_of_good($drug_id, $item_type, $bill_array[$x]); - } - } elseif ($item_type == 6) { - $old_quantity = get_name($drug_id, "id", "store_stock", "general_items"); - $new_quantity = $old_quantity + (int)$quantity_to_add; - $store_item = GeneralItem::find($drug_id); - if (!is_null($store_item)) { - $store_item->store_stock = $new_quantity; - $store_item->expiry_date = $expiry_date_for_each; - save_new_cost_of_good($drug_id, $item_type, $bill_array[$x]); - } - } elseif ($item_type == 7) { - $old_quantity = get_name($drug_id, "id", "store_stock", "eye_glasses"); - $new_quantity = $old_quantity + (int)$quantity_to_add; - $store_item = EyeGlasses::find($drug_id); - if (!is_null($store_item)) { - $store_item->store_stock = $new_quantity; - $store_item->expiry_date = $expiry_date_for_each; - save_new_cost_of_good($drug_id, $item_type, $bill_array[$x]); - } - } - } else if ($request->has('pharmacy_submit_button')) { - if ($item_type == 1) { - $old_quantity = get_name($drug_id, "id", "pharmacy_stock", "drugs"); - if ($old_quantity == "N/A") { - $old_quantity = 0; - }; - $new_quantity = $old_quantity + (int)$quantity_to_add; - $store_item = Drug::find($drug_id); - if (!is_null($store_item)) { - $store_item->pharmacy_stock = $new_quantity; - $store_item->expiry_date = $expiry_date_for_each; - save_new_cost_of_good($drug_id, $item_type, $bill_array[$x]); - } - } elseif ($item_type == 2) { - $old_quantity = get_name($drug_id, "id", "pharmacy_stock", "sundries"); - $new_quantity = $old_quantity + (int)$quantity_to_add; - $store_item = Sundry::find($drug_id); - if (!is_null($store_item)) { - $store_item->pharmacy_stock = $new_quantity; - $store_item->expiry_date = $expiry_date_for_each; - save_new_cost_of_good($drug_id, $item_type, $bill_array[$x]); - } - } elseif ($item_type == 3) { - $old_quantity = get_name($drug_id, "id", "pharmacy_stock", "dentals"); - $new_quantity = $old_quantity + (int)$quantity_to_add; - $store_item = Dental::find($drug_id); - if (!is_null($store_item)) { - $store_item->pharmacy_stock = $new_quantity; - $store_item->expiry_date = $expiry_date_for_each; - save_new_cost_of_good($drug_id, $item_type, $bill_array[$x]); - } - } elseif ($item_type == 4) { - $old_quantity = get_name($drug_id, "id", "pharmacy_stock", "radiologies"); - $new_quantity = $old_quantity + (int)$quantity_to_add; - $store_item = Radiology::find($drug_id); - if (!is_null($store_item)) { - $store_item->pharmacy_stock = $new_quantity; - $store_item->expiry_date = $expiry_date_for_each; - save_new_cost_of_good($drug_id, $item_type, $bill_array[$x]); - } - } elseif ($item_type == 5) { - $old_quantity = get_name($drug_id, "id", "pharmacy_stock", "labs"); - $new_quantity = $old_quantity + (int)$quantity_to_add; - $store_item = Lab::find($drug_id); - if (!is_null($store_item)) { - $store_item->pharmacy_stock = $new_quantity; - $store_item->expiry_date = $expiry_date_for_each; - save_new_cost_of_good($drug_id, $item_type, $bill_array[$x]); - } - } elseif ($item_type == 6) { - $old_quantity = get_name($drug_id, "id", "pharmacy_stock", "general_items"); - $new_quantity = $old_quantity + (int)$quantity_to_add; - $store_item = GeneralItem::find($drug_id); - if (!is_null($store_item)) { - $store_item->pharmacy_stock = $new_quantity; - $store_item->expiry_date = $expiry_date_for_each; - save_new_cost_of_good($drug_id, $item_type, $bill_array[$x]); - } - } elseif ($item_type == 7) { - $old_quantity = get_name($drug_id, "id", "pharmacy_stock", "eye_glasses"); - $new_quantity = $old_quantity + (int)$quantity_to_add; - $store_item = EyeGlasses::find($drug_id); - if (!is_null($store_item)) { - $store_item->pharmacy_stock = $new_quantity; - $store_item->expiry_date = $expiry_date_for_each; - save_new_cost_of_good($drug_id, $item_type, $bill_array[$x]); - } - } - } elseif ($request->has('lab_submit_button')) { - if ($item_type == 5) { - $old_quantity = get_name($drug_id, "id", "laboratory_stock", "labs"); - $new_quantity = $old_quantity + (int)$quantity_to_add; - $store_item = Lab::find($drug_id); - if (!is_null($store_item)) { - $store_item->laboratory_stock = $new_quantity; - $store_item->expiry_date = $expiry_date_for_each; - save_new_cost_of_good($drug_id, $item_type, $bill_array[$x]); - } - } - } - - - if (!is_null($store_item)) { - $store_item->updated_at = Carbon::now(); - $store_item->updated_by = Auth::id(); - $store_item->update(); - } - - if ($old_quantity <= 0 && $new_quantity > 0) { - $query_stock_dates_results = DB::select("SELECT id FROM inventory_stock_dates WHERE item_id = $drug_id AND quotation_type_id = $item_type ORDER BY id DESC LIMIT 1"); - $stock_id = isset($query_stock_dates_results[0]) ? $query_stock_dates_results[0]->id : 0; - - if (count($query_stock_dates_results) != 0) { - $inventory_stock_date_model = InventoryStockDate::find($stock_id); - $inventory_stock_date_model->restock_date = $receive_date; - $inventory_stock_date_model->update(); - } - } - } - endfor; - - //immediately create inventory bill for the received items to enforce double entry - $this->auto_create_inventory_bill_or_expense($request, $current_quotation_number); - - $last_quotation_id = $eloquent_model->id; - $new_quotation_number = get_name($last_quotation_id, "id", "quotation_number", "quotations"); - - flash('Stock Levels Updated ')->success(); - return redirect('goods_received_note/' . $new_grn_number); - } - } - - public function goods_received_note($quotation_number) - { - $hospital_details = HospitalInformation::first(); - $quotation_items = Quotation::where(['grn_number' => $quotation_number])->get(); - $quotations = Quotation::where(['grn_number' => $quotation_number])->first(); - - return view('stores::stores.goods_received_note', compact('hospital_details', 'quotation_items', 'quotations')); - } - - public function goods_received_note_print($quotation_number) - { - $hospital_details = HospitalInformation::first(); - $quotation_items = Quotation::where(['grn_number' => $quotation_number])->get(); - $quotations = Quotation::where(['grn_number' => $quotation_number])->first(); - - $data = [ - 'hospitalInfo' => $hospital_details, - 'quotation_items' => $quotation_items, - 'quotations' => $quotations, - ]; - - $pdf = SnappyPDF::loadView('stores::stores/goods_received_note_print', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Stre@mline '.streamline_date(date('Y-m-d')).' Printed By: '.get_full_name(Auth::id(), "id", "first_name", "last_name", "users").' '.streamline_date_time(date('Y-m-d H:m:i'))); - - - return $pdf->inline('Goods Recieved Note' . date(" d-m-y h:ia") . '.pdf'); - } - - public function receive_items_directly_search(Request $request) - { - $package_units = DB::table('package_units')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $package_units = ['' => '- select -'] + $package_units; - - $quotation_type = $request->quotation_type; - $item_ids_array = $request->items_ids; - $quotation_type_options = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $quotation_type_options = ['' => '- Select Quotation type -'] + $quotation_type_options; - $results = null; - $filters = []; - - $items = null; - $suppliers = DB::table('suppliers')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $suppliers = ['' => '- select -'] + $suppliers; - $quotation_types_array = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - //1-drug 2-sundry 3-dental 4-radiology 5-Lab - if ($quotation_type == 1) { - $items = Drug::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 2) { - $items = Sundry::whereIn('id', $item_ids_array)->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 3) { - $items = Dental::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 4) { - $items = Radiology::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 5) { - $items = Lab::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 6) { - $items = GeneralItem::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 7) { - $items = EyeGlasses::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } - $drugs = Drug::where('available', 1)->orderby('name')->pluck('name', 'id'); - $sundries = Sundry::where('available', 1)->orderby('name')->pluck('name', 'id'); - $dentals = Dental::orderBy('name')->pluck('name', 'id'); - $radiologies = Radiology::orderBy('name')->pluck('name', 'id'); - $labs = Lab::orderBy('name')->pluck('name', 'id'); - $general_items = GeneralItem::orderBy('name')->pluck('name', 'id'); - $optical_items = EyeGlasses::orderBy('name')->pluck('name', 'id'); - - return view('stores::stores.receive_items_directly', compact('items', 'quotation_type', 'suppliers', 'quotation_types_array', 'drugs', 'sundries', 'dentals', 'radiologies', 'labs', 'package_units', 'general_items', 'optical_items')); - } - - /* labs stock sheet */ - public function labs_stock_sheet(Request $request) - { - $labs = DB::table('labs')->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - // getting the lab store stock batches - $labs= calculate_stock_value($labs,5,'store_stock'); - $total_cost_value = 0; - foreach($labs as $key => $lab){ - $total_cost_value += $lab->item_cost_value; - } - if (count($labs) < 1) { - flash()->error("There is no out of stock labs"); - return redirect('/labs/'); - } else { - return view('stores::stores.labs_stock_sheet', compact('labs','total_cost_value')); - } - } - /*radiology stock sheet */ - public function radiology_stock_sheet(Request $request){ - $radiologies = DB::table('radiologies')->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - // getting the radiology stock batches - $radiologies= calculate_stock_value($radiologies,4,'store_stock'); - $total_cost_value = 0; - foreach($radiologies as $key => $radiology){ - $total_cost_value += $radiology->item_cost_value; - } - if (count($radiologies) < 1) { - flash()->error("There is no out of stock radiologies"); - return redirect('/radiology/'); - } else { - return view('stores::stores.radiology_stock_sheet', compact('radiologies','total_cost_value')); - } - } - - /* general items stock sheet*/ - /* general items stock sheet */ - public function general_items_stock_sheet() - { - $general_items = DB::table('general_items')->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - - if (count($general_items) < 1) { - flash()->error("There is no out of stock sundries"); - return redirect('/general_items/'); - } else { - return view('stores::stores.general_items_stock_sheet', compact('general_items')); - } - } - - public function request_a_quotation_search(Request $request) - { - $quotation_type = $request->quotation_type; - $item_ids_array = $request->items_ids; - $is_all_items = in_array("all_items", $item_ids_array); - $amc_period = $request->amc_period; - - $quotation_type_options = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $quotation_type_options = ['' => '- Select Quotation type -'] + $quotation_type_options; - $results = null; - $filters = []; - - $items = null; - $suppliers = DB::table('suppliers')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $suppliers = ['' => '- select -'] + $suppliers; - $quotation_types_array = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - //1-drug 2-sundry 3-dental 4-radiology 5-Lab - - if ($quotation_type == 1) { - if ($is_all_items) { - $items = Drug::where('available', 1)->orderby('name', 'asc')->get(); - } else{ - $items = Drug::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } - } elseif ($quotation_type == 2) { - if ($is_all_items) { - $items = Sundry::where('available', 1)->orderby('name', 'asc')->get(); - } else{ - $items = Sundry::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } - } elseif ($quotation_type == 3) { - if ($is_all_items) { - $items = Dental::orderBy('name', 'asc')->get(); - } else { - $items = Dental::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } - } elseif ($quotation_type == 4) { - if ($is_all_items) { - $items = Radiology::orderBy('name', 'asc')->get(); - } else{ - $items = Radiology::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } - } elseif ($quotation_type == 5) { - if ($is_all_items) { - $items = Lab::orderBy('name', 'asc')->get(); - } else { - $items = Lab::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } - } elseif ($quotation_type == 6) { - if ($is_all_items) { - $items = GeneralItem::orderBy('name', 'asc')->get(); - } else { - $items = GeneralItem::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } - } elseif ($quotation_type == 7) { - if ($is_all_items) { - $items = EyeGlasses::whereNull('deleted_at')->orderBy('name', 'asc')->get(); - } else { - $items = EyeGlasses::whereIn('id', $item_ids_array)->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - } - } - - $drugs = Drug::where('available', 1)->orderby('name')->pluck('name', 'id'); - $sundries = Sundry::where('available', 1)->orderby('name')->pluck('name', 'id'); - $dentals = Dental::orderBy('name')->pluck('name', 'id'); - $radiologies = Radiology::orderBy('name')->pluck('name', 'id'); - $labs = Lab::orderBy('name')->pluck('name', 'id'); - $general_items = GeneralItem::orderBy('name')->pluck('name', 'id'); - $opticals = EyeGlasses::orderBy('name')->pluck('name', 'id'); - - $suppliers = DB::table('suppliers')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $quotation_types_array = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $package_units = DB::table('package_units')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $package_units = ['' => '- select -'] + $package_units; - - return view('stores::stores.request_quotation', compact('items', 'quotation_type', 'suppliers', 'quotation_types_array', 'package_units', 'drugs', 'sundries', 'dentals', 'radiologies', 'labs', 'general_items', 'amc_period', 'opticals')); - } - - public function lab_requisition_for_sundries(Request $request) - { - $quotation_type_options = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $quotation_type_options = ['' => '- Select Requisition type -'] + $quotation_type_options; - $names_array = []; - - $item_type = 2; //1-drug 2-sundry 3-dental 4-radiology 5-Lab - $item_ids_array = $request->item_name; - if (is_null($item_ids_array)) { - $item_ids_array = []; - } - - if ($item_type == 1) { - $results = Drug::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - $names_array = Drug::where('available', 1)->orderby('name')->distinct()->pluck('name', 'id'); - } elseif ($item_type == 2) { - $results = Sundry::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - $names_array = Sundry::where('available', 1)->orderby('name')->distinct()->pluck('name', 'id'); - } elseif ($item_type == 3) { - $results = Dental::whereIn('id', $item_ids_array)->whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - $names_array = Dental::orderBy('name')->distinct()->pluck('name', 'id'); - } elseif ($item_type == 4) { - $results = Radiology::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - $names_array = Radiology::orderBy('name')->distinct()->pluck('name', 'id'); - } elseif ($item_type == 5) { - $results = Lab::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - $names_array = Lab::orderBy('name')->distinct()->pluck('name', 'id'); - } elseif ($item_type == 6) { - $results = GeneralItem::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - $names_array = GeneralItem::orderBy('name')->distinct()->pluck('name', 'id'); - } - - return view('stores::stores.labs_sundries_requisition', compact('quotation_type_options', 'results', 'item_type', 'names_array')); - } - public function radiology_requisition_for_sundries(Request $request){ - $quotation_type_options = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $quotation_type_options = ['' => '- Select Requisition type -'] + $quotation_type_options; - $names_array = []; - - $item_type = 2; //1-drug 2-sundry 3-dental 4-radiology 5-Lab - $item_ids_array = $request->item_name; - if (is_null($item_ids_array)) { - $item_ids_array = []; - } - if ($item_type == 2) { - $results = Sundry::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - $names_array = Sundry::where('available', 1)->orderby('name')->distinct()->pluck('name', 'id'); - } - return view('stores::stores.radiology_sundries_requisition', compact('quotation_type_options', 'results', 'item_type', 'names_array')); - - } - public function store_radiology_requisition_for_sundries(Request $request){ - $item_id_array = $request->item_id; - $quantity_array = $request->quantity; - $item_type = $request->item_type; - $user_id = Auth::id(); - /* return back if no quantity has been filled */ - if (array_sum($quantity_array) < 1) { - flash('Please insert some values!')->error(); - return redirect()->back(); - } - - $filtered_items_array = []; - $filtered_quantities_array = []; - $associative_requested_items_array = []; - for ($i = 0; $i < count($item_id_array); $i++) { - if ($quantity_array[$i] != "") { - $associative_requested_items_array[$item_id_array[$i]] = $quantity_array[$i]; - $filtered_items_array[] = $item_id_array[$i]; - $filtered_quantities_array[] = $quantity_array[$i]; - } - } - $new_requisition = new Requisition; - $new_requisition->quotation_type_id = $item_type; - $new_requisition->drug_id = implode(',', $filtered_items_array); - $new_requisition->quantity_requested = implode(',', $filtered_quantities_array); - $new_requisition->requisition_origin = 3; //1-pharmacy, 2-lab ,3 radiologies - $new_requisition->created_by = $user_id; - $new_requisition->save(); - - flash('Requisition number ' . $new_requisition->id . ' made successfully')->success(); - return redirect('/print_requisition_receipt/' . $new_requisition->id); - } - public function store_lab_requisition_for_sundries(Request $request) - { - $item_id_array = $request->item_id; - $quantity_array = $request->quantity; - $item_type = $request->item_type; - $user_id = Auth::id(); - - /* return back if no quantity has been filled */ - if (array_sum($quantity_array) < 1) { - flash('Please insert some values!')->error(); - return redirect()->back(); - } - - $filtered_items_array = []; - $filtered_quantities_array = []; - $associative_requested_items_array = []; - for ($i = 0; $i < count($item_id_array); $i++) { - if ($quantity_array[$i] != "") { - $associative_requested_items_array[$item_id_array[$i]] = $quantity_array[$i]; - $filtered_items_array[] = $item_id_array[$i]; - $filtered_quantities_array[] = $quantity_array[$i]; - } - } - $new_requisition = new Requisition; - $new_requisition->quotation_type_id = $item_type; - $new_requisition->drug_id = implode(',', $filtered_items_array); - $new_requisition->quantity_requested = implode(',', $filtered_quantities_array); - $new_requisition->requisition_origin = 2; //1-pharmacy, 2-lab ,3 radiologies - $new_requisition->created_by = $user_id; - $new_requisition->save(); - - flash('Requisition number ' . $new_requisition->id . ' made successfully')->success(); - return redirect('/print_requisition_receipt/' . $new_requisition->id); - } - // Labs Sundries stock sheet - public function lab_sundries_stock_sheet(Request $request) - { - $sundries = DB::table('sundries')->whereNull('deleted_at')->orderBy('name', 'asc')->paginate(500); - - if (empty($sundries)) { - flash()->error("There is out of stock of sundries"); - return redirect('/sundries/'); - } else { - return view('stores::stores.labs_sundries_stock_sheet', compact('sundries')); - } - } - //radiology sundries stock sheet - public function radiology_sundries_stock_sheet(Request $request){ - $sundries = DB::table('sundries')->whereNull('deleted_at')->orderBy('name', 'asc')->paginate(500); - - if (empty($sundries)) { - flash()->error("There is out of stock of sundries"); - return redirect('/sundries/'); - } else { - return view('stores::stores.radiology_sundries_stock_sheet', compact('sundries')); - } - } - - public function delete_received_items($quotation_number) - { - $quotation_items = DB::table('quotations') - ->where('quotation_number', $quotation_number) - ->get(['drug_id', 'quantity', 'destination', 'quotation_type_id', 'batch_number']); - - // reduce the amount from pharmacy or stores - foreach ($quotation_items as $item) { - if ($item->quotation_type_id == 1) { - $store_item = Drug::find($item->drug_id); - if ($store_item) { - if ($item->destination == "store") { - $store_item->store_stock = $store_item->store_stock - $item->quantity; - } else { - $store_item->pharmacy_stock = $store_item->pharmacy_stock - $item->quantity; - } - $store_item->save(); - } - - $item_batch_watcher = ItemBatchWatcher::where(['item_type'=>1, 'item_id'=>$item->drug_id, 'batch_number' => $item->batch_number])->delete(); - } elseif ($item->quotation_type_id == 2) { - $store_item = Sundry::find($item->drug_id); - if ($store_item) { - if ($item->destination == "store") { - $store_item->store_stock = $store_item->store_stock - $item->quantity; - } else { - $store_item->pharmacy_stock = $store_item->pharmacy_stock - $item->quantity; - } - $store_item->save(); - } - - $item_batch_watcher = ItemBatchWatcher::where(['item_type'=>2, 'item_id'=>$item->drug_id, 'batch_number' => $item->batch_number])->delete(); - } elseif ($item->quotation_type_id == 3) { - $store_item = Dental::find($item->drug_id); - if ($store_item) { - if ($item->destination == "store") { - $store_item->store_stock = $store_item->store_stock - $item->quantity; - } else { - $store_item->pharmacy_stock = $store_item->pharmacy_stock - $item->quantity; - } - $store_item->save(); - } - } elseif ($item->quotation_type_id == 4) { - $store_item = Radiology::find($item->drug_id); - if ($store_item) { - if ($item->destination == "store") { - $store_item->store_stock = $store_item->store_stock - $item->quantity; - } else { - $store_item->pharmacy_stock = $store_item->pharmacy_stock - $item->quantity; - } - $store_item->save(); - } - $item_batch_watcher = ItemBatchWatcher::where(['item_type'=>4, 'item_id'=>$item->drug_id, 'batch_number' => $item->batch_number])->delete(); - - } elseif ($item->quotation_type_id == 5) { - $store_item = Lab::find($item->drug_id); - if ($store_item) { - if ($item->destination == "store") { - $store_item->store_stock = $store_item->store_stock - $item->quantity; - } else { - $store_item->pharmacy_stock = $store_item->pharmacy_stock - $item->quantity; - } - $store_item->save(); - } - $item_batch_watcher = ItemBatchWatcher::where(['item_type'=>5, 'item_id'=>$item->drug_id, 'batch_number' => $item->batch_number])->delete(); - - } elseif ($item->quotation_type_id == 7) { - $store_item = EyeGlasses::find($item->drug_id); - if ($store_item) { - if ($item->destination == "store") { - $store_item->store_stock = $store_item->store_stock - $item->quantity; - } else { - $store_item->pharmacy_stock = $store_item->pharmacy_stock - $item->quantity; - } - $store_item->save(); - } - $item_batch_watcher = ItemBatchWatcher::where(['item_type'=>7, 'item_id'=>$item->drug_id, 'batch_number' => $item->batch_number])->delete(); - - } - } - - //delete the attached bill - $bill_id = null; - $quotation_record = Quotation::where('quotation_number', $quotation_number)->first(); - if ($quotation_record) { - $bill_id = $quotation_record->bill_id; - if ($bill_id) { - $hospital_bill = HospitalBill::find($bill_id); - $hospital_bill->delete(); - } - } - - $update = Quotation::where('quotation_number', $quotation_number)->delete(); - - flash("Previously received items have been deleted")->success(); - - return redirect('/previously_received_items/'); - } - - public function check_batch_balance(Request $request) - { - $quotation = ItemBatchWatcher::where(['item_id' => $request->drug_id, 'batch_number' => $request->batch_number])->first(); - - if ($quotation) { - if ($quotation->batch_balance > 0) { - return true; - } - return "This batch has no balance left"; - } - - return "No batch of this drug found"; - } - - public function attach_unattached_items_to_fake_system_batches() - { - //1. get stock value, check the quotation in use - //2. check batch balances of quotation and see if they equate to store stock - //3. if they don't, attach the remaning un accounted balance to fake system batch - $drugs = Drug::where('available', 1)->orderby('name', 'desc')->get(); - foreach ($drugs as $drug) { - $drug_store_stock = $drug->store_stock; - //batch details on drugs table ======= batch_number_in_use, quotation_id_of_batch_in_use, balance_of_batch_in_use - $all_quotations_of_this_drug = Quotation::where(['drug_id' => $drug->id, 'quotation_type_id' => 1])->get(); - $balance_on_drug_batches = 0; - - foreach ($all_quotations_of_this_drug as $quotation) { - $balance_on_drug_batches += $quotation->batch_balance; - } - - if ($drug_store_stock > $balance_on_drug_batches) { - $unattached_to_quotation_balance = $drug_store_stock - $balance_on_drug_batches; - $total_price = get_name($drug->id, "id", "cost_price", "drugs") * $balance_on_drug_batches; - //create system fake quotation - $new_quotation = new Quotation; - $new_quotation->quotation_type_id = 1; - $new_quotation->drug_id = $drug->id; - $new_quotation->quantity = $unattached_to_quotation_balance; - $new_quotation->expected_date = Carbon::now(); - $new_quotation->quotation_user = Auth::id(); - $new_quotation->quotation_number = 0; - $new_quotation->quotation_date = Carbon::now(); - $new_quotation->receive_user = Auth::id(); - $new_quotation->receive_date = Carbon::now(); - $new_quotation->receive_status = 1; - $new_quotation->receiver_comment = "SYSTEM CREATED QUOTATION"; - $new_quotation->total_price = $total_price; - $new_quotation->expiry_date = Carbon::now()->addYear(); - $new_quotation->batch_number = "SYSTEM_CREATED_QUOTATION"; - $new_quotation->batch_balance = $unattached_to_quotation_balance; - $new_quotation->supplier_id = 0; - $new_quotation->created_by = Auth::id(); - $new_quotation->save(); - //update the drug batch details to this one - $drug->batch_number_in_use = $new_quotation->batch_number; - $drug->quotation_id_of_batch_in_use = $new_quotation->id; - $drug->balance_of_batch_in_use = $new_quotation->batch_balance; - $drug->update(); - } - } - - //cater for sundry quantities that don't have attached batches - $sundries = Sundry::where('available', 1)->orderby('name', 'desc')->get(); - foreach ($sundries as $sundry) { - $sundry_store_stock = $sundry->store_stock; - //batch details on drugs table ======= batch_number_in_use, quotation_id_of_batch_in_use, balance_of_batch_in_use - $all_quotations_of_this_sundry = Quotation::where(['drug_id' => $sundry->id, 'quotation_type_id' => 2])->get(); - $balance_on_sundries_batches = 0; - - foreach ($all_quotations_of_this_sundry as $quotation) { - $balance_on_sundries_batches += $quotation->batch_balance; - } - - if ($sundry_store_stock > $balance_on_sundries_batches) { - $unattached_to_quotation_balance = $sundry_store_stock - $balance_on_sundries_batches; - $total_price = get_name($sundry->id, "id", "buying_price", "sundries") * $balance_on_sundries_batches; - //create system fake quotation - $new_quotation = new Quotation; - $new_quotation->quotation_type_id = 2; - $new_quotation->drug_id = $sundry->id; - $new_quotation->quantity = $unattached_to_quotation_balance; - $new_quotation->expected_date = Carbon::now(); - $new_quotation->quotation_user = Auth::id(); - $new_quotation->quotation_number = 0; - $new_quotation->quotation_date = Carbon::now(); - $new_quotation->receive_user = Auth::id(); - $new_quotation->receive_date = Carbon::now(); - $new_quotation->receive_status = 1; - $new_quotation->receiver_comment = "SYSTEM CREATED QUOTATION"; - $new_quotation->total_price = $total_price; - $new_quotation->expiry_date = Carbon::now()->addYear(); - $new_quotation->batch_number = "SYSTEM_CREATED_QUOTATION"; - $new_quotation->batch_balance = $unattached_to_quotation_balance; - $new_quotation->supplier_id = 0; - $new_quotation->created_by = Auth::id(); - $new_quotation->save(); - //update the sundry batch details to this one - $sundry->batch_number_in_use = $new_quotation->batch_number; - $sundry->quotation_id_of_batch_in_use = $new_quotation->id; - $sundry->balance_of_batch_in_use = $new_quotation->batch_balance; - $sundry->update(); - } - } - - flash("system has attached auto created batch to items that didn't have batches")->success(); - return redirect('stores_stock_sheet'); - } - - public function edit_temporary_quotation_search(Request $request) - { - $quotation_type = $request->item_type; - $quotation_id = $request->quotation_id; - $suppliers = DB::table('suppliers')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $suppliers = ['' => '- select -'] + $suppliers; - $quotation_results = TemporaryQuotation::where(['id' => $quotation_id, 'completion_status' => 0])->orderBy('id', 'desc')->get(); - $package_units = DB::table('package_units')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $package_units = ['' => '- select -'] + $package_units; - $item_ids_array = []; - $item_ids_array = $request->items_ids; - $added_items_collection = null; - - //1-drug 2-sundry 3-dental 4-radiology 5-Lab - if ($quotation_type == 1) { - $items = Drug::whereNull('deleted_at')->orderBy('name', 'asc')->get(); - $added_items_collection = Drug::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 2) { - $items = Sundry::whereNull('deleted_at')->orderBy('name', 'asc')->get(); - $added_items_collection = Sundry::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 3) { - $items = Dental::whereNull('deleted_at')->orderBy('name', 'asc')->get(); - $added_items_collection = Dental::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 4) { - $items = Radiology::whereNull('deleted_at')->orderBy('name', 'asc')->get(); - $added_items_collection = Radiology::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 5) { - $items = Lab::whereNull('deleted_at')->orderBy('name', 'asc')->get(); - $added_items_collection = Lab::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 6) { - $items = GeneralItem::whereNull('deleted_at')->orderBy('name', 'asc')->get(); - $added_items_collection = GeneralItem::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } elseif ($quotation_type == 7) { - $items = EyeGlasses::whereNull('deleted_at')->orderBy('name', 'asc')->get(); - $added_items_collection = EyeGlasses::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } - - $drugs = Drug::where('available', 1)->orderby('name')->pluck('name', 'id')->prepend('All drugs', 'all_items'); - $sundries = Sundry::where('available', 1)->orderby('name')->pluck('name', 'id')->prepend('All sundries', 'all_items'); - $dentals = Dental::orderBy('name')->pluck('name', 'id')->prepend('All dentals', 'all_items'); - $radiologies = Radiology::orderBy('name')->pluck('name', 'id')->prepend('All radiologies', 'all_items'); - $labs = Lab::orderBy('name')->pluck('name', 'id')->prepend('All labs', 'all_items'); - $general_items = GeneralItem::orderBy('name')->pluck('name', 'id')->prepend('All general items', 'all_items'); - $opticals = EyeGlasses::orderBy('name')->pluck('name', 'id')->prepend('All Optical Items', 'all_items'); - - return view('stores::stores.edit_temporary_quotation', compact('items', 'quotation_type', 'suppliers', 'quotation_id', 'quotation_results', 'package_units', 'added_items_collection', 'drugs', 'sundries', 'dentals', 'radiologies', 'labs', 'general_items', 'opticals')); - } - - public function remove_item_batch(Request $request) - { - $item_id = $request->item_id; - $batch_number = $request->batch_number; - $item_type = $request->item_type; - //1.find the batch and delete it - //2.if one happens, find the drug and reduce the stock by the batch quantity - - $item_batch_watcher = ItemBatchWatcher::find($item_id); - $quotation_record = Quotation::where(['drug_id' => $item_batch_watcher->item_id, 'batch_number' => $batch_number, 'quotation_type_id' => $item_type])->first(); - - if ($item_batch_watcher) { - if($item_type == 1 || $item_type == 2 || $item_type== 7){ - if ($item_batch_watcher->pharmacy_stock != 0) { - return 0; - } - } - if($item_type == 4 || $item_type == 5){ - if ($item_batch_watcher->lab_stock != 0) { - return 0; - } - } - } - - if (!is_null($quotation_record)) { - $quotaion_id = $quotation_record->id; - if ($quotation_record->delete()) { - if ($item_type == 1) { - $drug = Drug::withTrashed()->find($item_id); - $drug->store_stock = $drug->store_stock - $quotation_record->batch_balance; - //if it is the batch in use, delete the details from the drugs table - if ($drug->quotation_id_of_batch_in_use == $quotaion_id) { - $drug->batch_number_in_use = null; - $drug->quotation_id_of_batch_in_use = null; - $drug->balance_of_batch_in_use = 0; - } - $drug->update(); - } - if ($item_type ==4) { - $radiology = Radiology::withTrashed()->find($item_id); - $radiology->store_stock = $radiology->store_stock - $quotation_record->batch_balance; - $radiology->update(); - } - if ($item_type ==2) { - $sundry = Sundry::withTrashed()->find($item_id); - $sundry->store_stock = $sundry->store_stock - $quotation_record->batch_balance; - //if it is the batch in use, delete the details from the sundries table - if ($sundry->quotation_id_of_batch_in_use == $quotaion_id) { - $sundry->batch_number_in_use = null; - $sundry->quotation_id_of_batch_in_use = null; - $sundry->balance_of_batch_in_use = 0; - } - $sundry->update(); - } - } - if ($item_batch_watcher) { - $item_batch_watcher->delete(); - } - - return 1; - } - return 0; - } - - public function approve_requisitioned_opd_items(Request $request) - { - $quotation_results = DB::select("select * from requisitions where issue_status IS NULL and approval_status=0 and deleted_at IS NULL ORDER BY id desc"); - return view('stores::stores.approve_opd_item_requisitions', compact('quotation_results')); - } - - public function details_of_items_to_approve($id){ - $requisition = Requisition::find($id); - $requisition_id = $id; - - $drug_id_explode_array = explode(",", $requisition->drug_id); - $quantity_explode_array = explode(",", $requisition->quantity_requested); - $per_drug_explode_array = explode(",", $requisition->per_drug); - $associative_requested_drugs_array = []; - $unit_of_measure = DB::table('unit_of_measure')->pluck("name", "id")->toArray(); - - if ($requisition->quotation_type_id == 1) { - // do this if requisition type is drugs - for ($i = 0; $i < count($drug_id_explode_array); $i++) { - if (isset($quantity_explode_array[$i]) && $quantity_explode_array[$i] != "") { - if ($requisition->quotation_type_id == 1) { - $drug_name = get_name($drug_id_explode_array[$i], "id", "name", "drugs"); - } else if ($requisition->quotation_type_id == 2) { - $drug_name = get_name($drug_id_explode_array[$i], "id", "name", "sundries"); - } - - $associative_requested_drugs_array[$drug_name] = $quantity_explode_array[$i]; - } - } - } - - if ($requisition->quotation_type_id == 2) { - // do this if the requisition type is for sundries - for ($i = 0; $i < count($drug_id_explode_array); $i++) { - if ($quantity_explode_array[$i] != "") { - $drug_name = get_name($drug_id_explode_array[$i], "id", "name", "sundries"); - $associative_requested_drugs_array[$drug_name] = $quantity_explode_array[$i]; - } - } - } - if ($requisition->quotation_type_id == 3) { - // do this if the requisition type is for dentals - for ($i = 0; $i < count($drug_id_explode_array); $i++) { - if ($quantity_explode_array[$i] != "") { - $drug_name = get_name($drug_id_explode_array[$i], "id", "name", "dentals"); - $associative_requested_drugs_array[$drug_name] = $quantity_explode_array[$i]; - } - } - } - if ($requisition->quotation_type_id == 4){ - // do this if the requisition type is for radiologies - for ($i = 0; $i < count($drug_id_explode_array); $i++) { - if ($quantity_explode_array[$i] != "") { - $drug_name = get_name($drug_id_explode_array[$i], "id", "name", "radiologies"); - $associative_requested_drugs_array[$drug_name] = $quantity_explode_array[$i]; - } - } - } - - if ($requisition->quotation_type_id == 5) { - // do this if the requisition type is for labs - for ($i = 0; $i < count($drug_id_explode_array); $i++) { - if ($quantity_explode_array[$i] != "") { - $drug_name = get_name($drug_id_explode_array[$i], "id", "name", "labs"); - $associative_requested_drugs_array[$drug_name] = $quantity_explode_array[$i]; - } - } - } - - if ($requisition->quotation_type_id == 6) { - // do this if the requisition type is for general items - for ($i = 0; $i < count($drug_id_explode_array); $i++) { - if ($quantity_explode_array[$i] != "") { - $drug_name = get_name($drug_id_explode_array[$i], "id", "name", "general_items"); - $associative_requested_drugs_array[$drug_name] = $quantity_explode_array[$i]; - } - } - } - if ($requisition->quotation_type_id == 7) { - // do this if the requisition type is for opticals - for ($i = 0; $i < count($drug_id_explode_array); $i++) { - if ($quantity_explode_array[$i] != "") { - $drug_name = get_name($drug_id_explode_array[$i], "id", "name", "eye_glasses"); - $associative_requested_drugs_array[$drug_name] = $quantity_explode_array[$i]; - } - } - } - - return view('stores::stores.opd_details_to_approve', compact('associative_requested_drugs_array', 'requisition_id', 'requisition')); - } - - public function approve_requisition(Request $request) - { - $requisition_id = $request->requisition_id; - $requisition = Requisition::find($requisition_id); - if ($requisition) { - $requisition->approval_status = 1; - $requisition->approved_by = Auth::id(); - $requisition->approved_date = Carbon::now(); - $requisition->quantity_approved = $request->quantity_approved ? implode(",", $request->quantity_approved) : null; - $requisition->update(); - } - - flash("Requisition number ".sprintf('%04u', $requisition->id)." has been approved")->success(); - - return redirect('approve_requisitioned_opd_items'); - } - - public function viewing_items_to_issue_out($id) - { - $requisition = Requisition::find($id); - $requisition_id = $id; - - $drug_id_explode_array = explode(",", $requisition->drug_id); - $quantity_explode_array = explode(",", $requisition->quantity_requested); - $per_drug_explode_array = explode(",", $requisition->per_drug); - $associative_requested_drugs_array = []; - $unit_of_measure = DB::table('unit_of_measure')->pluck("name", "id")->toArray(); - - if ($requisition->quotation_type_id == 1) { - // do this if requisition type is drugs - for ($i = 0; $i < count($drug_id_explode_array); $i++) { - if (isset($quantity_explode_array[$i]) && $quantity_explode_array[$i] != "") { - if ($requisition->quotation_type_id == 1) { - $drug_name = get_name($drug_id_explode_array[$i], "id", "name", "drugs"); - } else if ($requisition->quotation_type_id == 2) { - $drug_name = get_name($drug_id_explode_array[$i], "id", "name", "sundries"); - } - - $associative_requested_drugs_array[$drug_name] = $quantity_explode_array[$i]; - } - } - } - - if ($requisition->quotation_type_id == 2) { - // do this if the requisition type is for sundries - for ($i = 0; $i < count($drug_id_explode_array); $i++) { - if ($quantity_explode_array[$i] != "") { - $drug_name = get_name($drug_id_explode_array[$i], "id", "name", "sundries"); - $associative_requested_drugs_array[$drug_name] = $quantity_explode_array[$i]; - } - } - } - - if ($requisition->quotation_type_id == 5) { - // do this if the requisition type is for labs - for ($i = 0; $i < count($drug_id_explode_array); $i++) { - if ($quantity_explode_array[$i] != "") { - $drug_name = get_name($drug_id_explode_array[$i], "id", "name", "labs"); - $associative_requested_drugs_array[$drug_name] = $quantity_explode_array[$i]; - } - } - } - - if ($requisition->quotation_type_id == 6) { - // do this if the requisition type is for labs - for ($i = 0; $i < count($drug_id_explode_array); $i++) { - if ($quantity_explode_array[$i] != "") { - $drug_name = get_name($drug_id_explode_array[$i], "id", "name", "general_items"); - $associative_requested_drugs_array[$drug_name] = $quantity_explode_array[$i]; - } - } - } - - return view('stores::stores.view_opd_requisitioned_items', compact('associative_requested_drugs_array', 'requisition_id', 'requisition')); - } - - public function edit_item_batch(Request $request) - { - $item_id = $request->item_id; - $original_batch_record_id = $request->original_batch_record_id; - $original_batch_number = $request->original_batch_number; - $item_type = $request->item_type; - $batch_number_edit = $request->new_batch_number_edit; - //1.find the batch - //2.check if it is the one in use using the original batch number and edit it before edit in quotations table - - $existing_batch_record = Quotation::where(['drug_id' => $item_id, 'batch_number' => $batch_number_edit, 'quotation_type_id' => $item_type])->first(); - if ($existing_batch_record) { - return 2; - } - - if ($item_type == 1) { - $drug = Drug::withTrashed()->find($item_id); - if ($drug->batch_number_in_use == $original_batch_number) { - $drug->batch_number_in_use = $batch_number_edit; - $drug->update(); - } - } elseif($item_type == 2){ - $sundry = Sundry::withTrashed()->find($item_id); - if ($sundry->batch_number_in_use == $original_batch_number) { - $sundry->batch_number_in_use = $batch_number_edit; - $sundry->update(); - } - } - - $quotation_record = Quotation::where(['drug_id' => $item_id, 'batch_number' => $original_batch_number, 'quotation_type_id' => $item_type])->first(); - if ($quotation_record) { - $quotation_record->batch_number = $batch_number_edit; - $quotation_record->update(); - } - - //$item_batch_record = ItemBatchWatcher::where(['item_id' => $item_id, 'batch_number' => $original_batch_number, 'item_type' => $item_type])->first(); - $item_batch_record = ItemBatchWatcher::find($original_batch_record_id); - if ($item_batch_record) { - $item_batch_record->batch_number = $batch_number_edit; - if ($item_batch_record->update()) { - return 1; - } - } - - return 0; - } - - public function physical_stock_count_search(Request $request) - { - $item_ids_array = $request->search_items_ids; - $item_ids_array = is_array($item_ids_array) ? $item_ids_array : []; - $is_all_items = in_array("all_items", $item_ids_array); - - $ongoing_physical_count = StoreStockReconciliation::where('completion_status', 0)->get(); - - if (count($ongoing_physical_count) > 0) { - flash('There is an ongoing physical count. You can not start a new count, please resume previous count')->error(); - return redirect()->back(); - } - - if ($is_all_items) { - $drugs = Drug::where('available', 1)->orderby('name', 'asc')->get(); - } else{ - $drugs = Drug::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } - - if (count($drugs) < 1) { - flash()->error("There is no drugs stock"); - return redirect('/drugs/'); - } else { - $batch_numbers = []; - $sql = "SELECT DISTINCT batch_number FROM quotations"; - $results = DB::select($sql); - foreach ($results as $result) { - $batch_numbers[$result->batch_number] = $result->batch_number; - } - - $stock_adjustment_chart_of_account = ChartOfAccount::where('slug', 'stock_adjustment')->first(); - - $batch_numbers = ['' => '- select -'] + $batch_numbers; - - $drugs_dropdown = DB::table('drugs')->where('available', 1)->whereNull('deleted_at')->orderBy('name', 'asc')->pluck('name','id')->prepend('All drugs', 'all_items')->toArray(); - - return view('stores::stores.physical_stock_count', compact('drugs', 'batch_numbers', 'stock_adjustment_chart_of_account', 'drugs_dropdown')); - } - } - - public function sundries_physical_stock_count_search(Request $request) - { - $item_ids_array = $request->search_items_ids; - $is_all_items = in_array("all_items", $item_ids_array); - - $ongoing_physical_count = SundryStoreStockReconciliation::where('completion_status', 0)->get(); - if (count($ongoing_physical_count) > 0) { - flash('There is an ongoing physical count. You can not start a new count, please resume previous count')->error(); - return redirect()->back(); - } - - $sundries = []; //DB::table('sundries')->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - - if ($is_all_items) { - $sundries = Sundry::where('available', 1)->orderby('name', 'asc')->get(); - } else{ - $sundries = Sundry::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } - - $sundries_dropdown = DB::table('sundries')->whereNull('deleted_at')->orderBy('name', 'asc')->pluck('name','id')->prepend('All sundries', 'all_items')->toArray(); - - $stock_adjustment_chart_of_account = ChartOfAccount::where('slug', 'stock_adjustment')->first(); - - return view('stores::stores.sundries_physical_stock_count', compact('sundries', 'sundries_dropdown', 'stock_adjustment_chart_of_account')); - } - - public function general_items_physical_stock_count_search(Request $request) - { - $item_ids_array = $request->search_items_ids; - $is_all_items = in_array("all_items", $item_ids_array); - - $ongoing_physical_count = GeneralItemStoreStockReconciliation::where('completion_status', 0)->get(); - if (count($ongoing_physical_count) > 0) { - flash('There is an ongoing physical count. You can not start a new count, please resume previous count')->error(); - return redirect()->back(); - } - - $general_items = []; //DB::table('general_items')->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - - if ($is_all_items) { - $general_items = GeneralItem::orderBy('name', 'asc')->get(); - } else{ - $general_items = GeneralItem::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } - - if (count($general_items) < 1) { - flash()->error("There is no general items in stock"); - return redirect('general_items'); - } else { - $chart_of_accounts = ChartOfAccount::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $chart_of_accounts = ['' => '- select -'] + $chart_of_accounts; - - $general_items_dropdown = DB::table('general_items')->whereNull('deleted_at')->orderBy('name', 'asc')->pluck('name','id')->prepend('All drugs', 'all_items')->toArray(); - - return view('stores::stores.general_items_physical_stock_count', compact('general_items', 'chart_of_accounts', 'general_items_dropdown')); - } - } - - public function update_labs_stock_sheet(Request $request) - { - $lab_ids_array = $request->lab_id; - $quantities_array = $request->quantity; - $non_insured_prices_array = $request->non_insured_price; - $expiry_dates_array = $request->expiry_date; - - for ($i=0; $i < count($lab_ids_array) ; $i++) { - $lab = Lab::withTrashed()->find($lab_ids_array[$i]); - $lab->store_stock = $quantities_array[$i]; - $lab->non_insured_price = $non_insured_prices_array[$i]; - $lab->expiry_date = $expiry_dates_array[$i]; - $lab->save(); - } - - flash('stock sheet has been updated')->success(); - return redirect('labs_stock_sheet'); - } - - public function get_item_cost_price() - { - $category_id = $_GET['category_id']; - $item_id_array = $_GET['item_id']; - $item_id = $item_id_array[0]; - $cost_price = 0; - - if ($category_id == 1) { - $drug = Drug::withTrashed()->find($item_id); - if ($drug) { - $cost_price = $drug->cost_price; - } - } elseif($category_id == 2){ - $sundry = Sundry::withTrashed()->find($item_id); - if ($sundry) { - $cost_price = $sundry->cost_price; - } - } - - return ugandan_shillings($cost_price); - } - - public function item_bill_print($quotation_number, $item_type) - { - $supplier_reference = DB::table('quotations')->where(['quotation_number' => $quotation_number])->first(); - $hospital_details = HospitalInformation::first(); - $quotations_results = DB::select("SELECT * FROM quotations where quotation_number = {$quotation_number}"); - $approval_status = 0; - if (count($quotations_results)) { - if($quotations_results[0]->approval_status == 1){ - $approval_status = 1; - } - } - $logged_user_fn = auth()->user()->first_name; - $logged_user_ln = auth()->user()->last_name; - - $data = [ - 'hospitalInfo' => $hospital_details, - 'quotations_results' => $quotations_results, - 'quotation_number' => $quotation_number, - 'supplier_reference' => $supplier_reference->supplier_reference, - 'item_type' => $item_type, - 'approval_status' => $approval_status - ]; - - $pdf = SnappyPDF::loadView('stores::stores/item_bill_print', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 10) - ->setOption('margin-top', 5) - ->setOption('margin-left', 2) - ->setOption('margin-right', 2) - ->setOption('footer-font-size', 10) - ->setOption('footer-html', '- Stre@mline - '.$logged_user_fn." ".$logged_user_ln .' '.streamline_date_time(date('Y-m-d')).''); - - return $pdf->inline('ITEMS BILL' . date(" d-m-y h:ia") . '.pdf'); - } - - public function items_purchase_order_print($quotation_number, $item_type) - { - $hospital_details = HospitalInformation::first(); - $table_quotations = "quotations"; - $quotation_results = DB::select("select * from $table_quotations where quotation_number = {$quotation_number}"); - - $data = [ - 'hospitalInfo' => $hospital_details, - 'item_type' => $item_type, - 'quotation_number' => $quotation_number, - 'quotation_results' => $quotation_results, - 'table_quotations' => $table_quotations - ]; - - $pdf = SnappyPDF::loadView('stores::stores/items_purchase_order_print', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 10) - ->setOption('margin-top', 5) - ->setOption('margin-left', 2) - ->setOption('margin-right', 2) - ->setOption('footer-font-size', 10) - ->setOption('footer-html', '- Stre@mline - '.get_full_name(Auth::id(), "id", "first_name", "last_name", "users") .' '.streamline_date_time(date('Y-m-d')).''); - - - return $pdf->inline('Purchase order' . date(" d-m-y h:ia") . '.pdf'); - } - - public function auto_create_inventory_bill_or_expense(Request $request, $quotation_number) - { - $logged_in_user = Auth::id(); - $supplier_id = $request->supplier; - $item_type = $request->item_type; - $quotation_date = Carbon::now(); - $bill_array = $request->bill; - $receive_date = Carbon::createFromFormat('d/m/Y', $request->received_on_date)->toDateString(); - - //$bill_date = Carbon::parse($request->bill_date)->toDateString(); - //$bill_due_date = Carbon::parse($request->bill_due_date)->toDateString(); - - $quotation_total_bill = Quotation::where(['quotation_number' => $quotation_number])->get()->sum('total_price'); - $expense_account_id_array = $item_ids_array = $item_quatities_array = $item_amounts_array = []; - $quotation_items = Quotation::where(['quotation_number' => $quotation_number])->get(); - foreach ($quotation_items as $quotation_record) { - //$quotation_total_bill =+ $quotation_record->total_price; - if (in_array($item_type, [1,2])) { - $expense_account_id_array[] = 14; //chart of account id for expenses - } elseif($item_type == 3){ - $expense_account_id_array[] = get_name($quotation_record->drug_id, 'id', 'expenses_account_id', 'dentals'); - } elseif($item_type == 4){ - $expense_account_id_array[] = get_name($quotation_record->drug_id, 'id', 'expenses_account_id', 'radiologies'); - } elseif($item_type == 5){ - $expense_account_id_array[] = get_name($quotation_record->drug_id, 'id', 'expenses_account_id', 'labs'); - } elseif($item_type == 6){ - $expense_account_id_array[] = get_name($quotation_record->drug_id, 'id', 'expenses_account_id', 'general_items'); - } elseif($item_type == 7){ - $expense_account_id_array[] = get_name($quotation_record->drug_id, 'id', 'expenses_account_id', 'eye_glasses'); - } - - $item_ids_array[] = $quotation_record->drug_id; - $item_quatities_array[] = $quotation_record->receive_quantity; - $item_amounts_array[] = $quotation_record->total_price; - } - - $bill = new HospitalBill; - $bill->vendor = $supplier_id; - $bill->bill_date = $receive_date; - //$bill->bill_term = $request->bill_term; - $bill->bill_memo = "UN-VERIFIED AUTO CREATED STRE@MLINE INVENTORY BILL"; - $bill->bill_number = "UN-VERIFIED BILL FROM QUOTATION-".$quotation_number; - $bill->bill_due_date = $receive_date; - $bill->total_amount = $quotation_total_bill; - $bill->item_ids = implode(',', $item_ids_array); - $bill->item_accounts = implode(',', $expense_account_id_array); - $bill->item_quantities = implode(',', $item_quatities_array); - $bill->item_subtotals = implode(',', $item_amounts_array); - $bill->created_by = $logged_in_user; - - $bill->balance_history = serialize(array()); - $bill->receipt_history = serialize(array()); - $bill->staff_incharge_history = serialize(array()); - $bill->amount_paid_history = serialize(array()); - $bill->date_paid_history = serialize(array()); - - $track_invoice = new TrackInvoice; - $track_invoice->reason = $bill->bill_memo; - $track_invoice->created_by = $logged_in_user; - - switch ($item_type) { - case 1: - $bill->bill_type = 'DRU'; - break; - case 2: - $bill->bill_type = 'SUN'; - break; - case 3: - $bill->bill_type = 'DEN'; - break; - case 4: - $bill->bill_type = 'RAD'; - break; - case 5: - $bill->bill_type = 'LAB'; - break; - case 6: - $bill->bill_type = 'GEN'; - break; - case 7: - $bill->bill_type = 'EYE'; - break; - } - - if ($bill->save() && $track_invoice->save()) { - $accounts_payable_balance = ChartOfAccount::find(14); // chart of accout: Account payable - ChartOfAccount::where('id', 14)->update(['balance' => (int)$quotation_total_bill + (int)$accounts_payable_balance->balance]); - flash('Bill has successfully been saved.')->success(); - } else { - flash('Failed to save Bill.')->error(); - } - - $update = Quotation::where('quotation_number', $quotation_number) - ->update(['bill_id' => $bill->id, 'invoice_generated' => 0, 'invoice_date' => $bill->bill_date, 'invoice_number' => $bill->bill_number]); - } - - public function issued_item_print($requisition_id, $item_type) - { - $requisition_model = Requisition::withTrashed()->find($requisition_id); - $data = [ - 'requisition_model' => $requisition_model, - 'requisition_id' => $requisition_id, - 'item_type' => $item_type, - 'isDom' => true, - ]; - $pdf_card = new DomPDF(); - $html = view('stores::stores/issued_item_print',$data)->render(); - $pdf_card = DomPDF::loadHtml($html); - $options = [ - 'dpi' => 100, - 'isPhpEnabled' => true, - 'isHtml5ParserEnabled' => true, - 'isJavascriptEnabled' => true, - 'isRemoteEnabled' => true, - 'footer-html'=>'- Stre@mline - '. get_full_name(Auth::id(), "id", "first_name", "last_name", "users") .' '.streamline_date_time(date('Y-m-d')).'' - ]; - DomPDF::setOptions($options); - $pdf_card->setPaper('A4', 'potrait'); - $pdf_card->render(); - return $pdf_card->stream('ITEMS BILL' . date(" d-m-y h:ia") . '.pdf', array('Attachment' => false)); - } - - public function print_previous_issued_items_details($requisition_id, $item_type) - { - $results = DB::select("select * from requisitions where id = {$requisition_id} AND issue_status = 1 ORDER BY id desc"); - - $hospital_details = HospitalInformation::first(); - - $data = [ - 'hospitalInfo' => $hospital_details, - 'results' => $results, - 'requisition_id' => $requisition_id, - 'item_type' => $item_type - ]; - - $pdf = SnappyPDF::loadView('stores::stores/print_previously_issued_items_details', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 10) - ->setOption('margin-top', 5) - ->setOption('margin-left', 2) - ->setOption('margin-right', 2) - ->setOption('footer-font-size', 10) - ->setOption('footer-html', '- Stre@mline - ' . get_full_name(Auth::id(), "id", "first_name", "last_name", "users") . ' ' . streamline_date_time(date('Y-m-d')) . ''); - - return $pdf->inline('ISSUED ITEMS' . date(" d-m-y h:ia") . '.pdf'); - } - - public function optical_items_stock_sheet() { - $opticals = DB::table('eye_glasses')->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - // getting the lab store stock batches - $opticals= calculate_stock_value($opticals,7,'store_stock'); - $total_cost_value = 0; - foreach($opticals as $key => $lab){ - $total_cost_value += $lab->item_cost_value; - } - if (count($opticals) < 1) { - flash()->error("There are no registered opticals"); - return redirect('/opticals/'); - } else { - return view('stores::stores.optical_items_stock_sheet', compact('opticals','total_cost_value')); - } - } - - public function clean_opening_stock_balance() { - $drugs = Drug::where('available', 1)->orderby('name', 'asc')->get(); - foreach ($drugs as $drug ) { - if (!is_null($drug->pharmacy_opening_stock) || !is_null($drug->store_opening_stock)) { - $store_open_stock = is_null($drug->store_opening_stock) ? 0 : $drug->store_opening_stock; - $pharm_open_stock = is_null($drug->pharmacy_opening_stock) ? 0 : $drug->pharmacy_opening_stock; - $drug->opening_stock = $store_open_stock + $pharm_open_stock; - $drug->opening_stock_date = '2022-01-01'; - $drug->update(); - } - - if (is_null($drug->opening_stock_date) && !is_null($drug->opening_stock)) { - $drug->opening_stock_date = '2022-01-01'; - $drug->update(); - } - } - - echo('done with clean'); - } - - public function optical_physical_stock_count(Request $request) { - if (isset($request->search_items_ids)) { - $item_ids_array = $request->search_items_ids; - $is_all_items = in_array("all_items", $item_ids_array); - - if ($is_all_items) { - $eye_glasses = EyeGlasses::orderBy('name', 'asc')->get(); - } else{ - $eye_glasses = EyeGlasses::whereIn('id', $item_ids_array)->orderBy('name', 'asc')->get(); - } - } else { - $eye_glasses = []; - } - - $optical_dropdown = EyeGlasses::whereNull('deleted_at')->orderBy('name')->pluck('name','id')->prepend('All Optical Items', 'all_items')->toArray(); - - $stock_adjustment_chart_of_account = ChartOfAccount::where('slug', 'stock_adjustment')->first(); - $reasons = $this->itemsStockService->getAllReconciliationReasonsArray(); - - return view('stores::stores.optical_physical_stock_count', compact('eye_glasses','reasons', 'stock_adjustment_chart_of_account', 'optical_dropdown')); - } - - public function update_optical_physical_stock_count(Request $request) - { - $batch_quotation_ids_array = $request->batch_quotation_id; - $batch_drug_ids_array = (isset($request->batch_drug_id) && is_array($request->batch_drug_id)) ? $request->batch_drug_id : []; - $unique_drug_ids_with_batches_array = array_unique($batch_drug_ids_array); - $batch_numbers_array = $request->batch_number; - $batch_unit_cost_array = $request->batch_unit_cost; - $batch_quantity_balances_array = $request->batch_quantity_balance; - - $batch_expiry_dates_array = $request->expiry_date; - $batch_db_record_ids_array = $request->item_batch_watcher_id; - $difference_in_cost_value_array=$request->difference_in_cost_value; - $drugs_ids_array = $request->drug_id; - $system_stock_array = $request->system_stock; - $physical_stock_array = $request->physical_stock; - $cost_price_array = $request->cost_price; - $difference_array = $request->difference; - $shrinkage_array = $request->shrinkage; - $markup_array = $request->mark_up; - $reason_for_difference_array = $request->reason_for_difference; - $batch_reason_array = $request->reconcile_reason; - - $drugs_with_initial_stock_array = is_null($request->is_initial_stock) ? [] : $request->is_initial_stock; - $stock_adjustment_chart_of_account = ChartOfAccount::where('slug', 'stock_adjustment')->first(); - $affected_account_id = $stock_adjustment_chart_of_account->id; - $opening_inventory_chart_of_account = ChartOfAccount::where('slug', 'opening_inventory')->first(); - //get the max identifier - $max_stock_count_identifier = OpticalStockReconciliation::max('stock_count_identifier'); - $reconcile_optical_store_stock = true; - $batches =[]; - for ($i=0; $i < count($batch_numbers_array) ; $i++) { - if (!is_null($batch_numbers_array[$i]) && !is_null($batch_quantity_balances_array[$i])) { - //enforce double entry per batch - if (in_array($batch_drug_ids_array[$i], $drugs_with_initial_stock_array)) { - $affected_account_id = $opening_inventory_chart_of_account->id;//override adjustment a/c to be opening_inv - } else{ - $affected_account_id = $stock_adjustment_chart_of_account->id; - } - account_for_batch_reconciliations_difference($item_type = 7, $batch_drug_ids_array[$i], $affected_account_id, $batch_numbers_array[$i], $batch_quantity_balances_array[$i], $request->reconciliation_date, "store", $ward_id = null); - - $batches=$this->itemsStockService->reconcileBatches($batches,$batch_reason_array[$i],0,$item_type = 7, $batch_drug_ids_array[$i], $batch_numbers_array[$i], $batch_quantity_balances_array[$i], $batch_expiry_dates_array[$i], "store", $batch_unit_cost_array[$i]??0, $batch_db_record_ids_array[$i]??0, $ward_id=null); - } - } - if (isset($request->reconcile_stock)) { - for ($x = 0; $x < count($drugs_ids_array); $x++) : - /* check if the difference value is not null and then update the optical */ - if (!is_null($difference_array[$x])) { - $this->itemsStockService->createOpticalReconciliation(0,$batches,$difference_in_cost_value_array[$x],$drugs_ids_array[$x],$physical_stock_array[$x],$difference_array[$x], $system_stock_array[$x],1,$affected_account_id,$request->reconciliation_date,$request->general_comment,$max_stock_count_identifier); - //update the system stock levels with the newly counted physical stock - - $eye = EyeGlasses::find($drugs_ids_array[$x]); - $eye->store_stock = $physical_stock_array[$x]; - - if (in_array($eye->id, $drugs_with_initial_stock_array)) { - $existing_opening_stock = is_null($eye->opening_stock) ? 0 : $eye->opening_stock; - $eye->opening_stock = $existing_opening_stock + $physical_stock_array[$x]; - $eye->opening_cost_price = $cost_price_array[$x]; - $eye->opening_stock_date = $request->reconciliation_date; - $eye->store_opening_stock = $physical_stock_array[$x]; - } - - $eye->updated_by = Auth::id(); - $reconcile_optical_store_stock = $eye->update(); - } - endfor; - - /*==== do this to cater for the newer introduced editing batch number ======*/ - if (track_items_using_batches()) : - for ($i = 0; $i < count($batch_numbers_array); $i++) : - if (!is_null($batch_numbers_array[$i]) && $batch_drug_ids_array[$i] != "") { - if ($batch_quotation_ids_array[$i] != '0') { - $quotation_record = Quotation::where(['drug_id' => $batch_drug_ids_array[$i], 'batch_number' => $batch_numbers_array[$i]])->first(); - if (!is_null($quotation_record)) { - $quotation_record->batch_balance = $batch_quantity_balances_array[$i]; - $quotation_record->update(); - } - } elseif ($batch_quantity_balances_array[$i] != null && $batch_numbers_array[$i] != null && $batch_quotation_ids_array[$i] == '0') { - //assume that this batch doesnt have a corresponding quotation so make one - $new_quotation = new Quotation; - $new_quotation->quotation_type_id = 7; - $new_quotation->drug_id = $batch_drug_ids_array[$i]; - $new_quotation->quantity = $batch_quantity_balances_array[$i]; - $new_quotation->expected_date = date('Y-m-d'); - $new_quotation->quotation_user = Auth::id(); - $new_quotation->quotation_date = date('Y-m-d'); - $new_quotation->billing_date = Carbon::now(); - $new_quotation->billing_user = Auth::id(); - $new_quotation->approval_date = Carbon::now(); - $new_quotation->approval_status = 1; - $new_quotation->approval_user = Auth::id(); - $new_quotation->receive_user = Auth::id(); - $new_quotation->receive_date = date('Y-m-d'); - $new_quotation->receive_status = 1; - $new_quotation->expiry_date = $batch_expiry_dates_array[$i]; - $new_quotation->batch_number = $batch_numbers_array[$i]; - $new_quotation->batch_balance = $batch_quantity_balances_array[$i]; - $new_quotation->directly_received_items = 1; - $new_quotation->created_by = Auth::id(); - $new_quotation->save(); - } - } - endfor; - - foreach ($unique_drug_ids_with_batches_array as $batch_drug) { - $all_batch_balances_for_drug = Quotation::where(['drug_id' => $batch_drug, 'quotation_type_id' => 1])->where('batch_balance', '>', 0)->sum('batch_balance'); - if ($all_batch_balances_for_drug > 0) { - $drug_record = EyeGlasses::withTrashed()->find($batch_drug); - $drug_record->store_stock = $all_batch_balances_for_drug; - $drug_record->update(); - } - } - endif; - /*=========== end the catering for the newer introduced batch number ===========*/ - - if ($reconcile_optical_store_stock) : - flash('Stock levels have been reconciled')->success(); - return redirect('optical_items_stock_sheet'); - endif; - flash('Unable to complete stock reconciliation')->success(); - return redirect()->back(); - - } - } - public function optical_stock_reconciliation_report(Request $request) - { - if (!empty($request->dates)) { - - if ($request->dates == "today") { - - $today = Carbon::today()->startOfDay()->toDateTimeString(); - $end = Carbon::parse($today)->endOfDay()->toDateTimeString(); - $reconciled_stocks = OpticalStockReconciliation::select('stock_count_identifier', 'created_by', 'created_at', 'general_comment', DB::raw('SUM(variance) as total'))->groupBy('stock_count_identifier', 'created_by', 'created_at', 'general_comment')->where('type',0)->whereBetween('created_at', [$today, $end])->orderBy('stock_count_identifier', 'desc')->get(); - } else if ($request->dates == "yesterday") { - - $yesterday = Carbon::yesterday()->startOfDay()->toDateTimeString(); - $end = Carbon::parse($yesterday)->endOfDay()->toDateTimeString(); - $reconciled_stocks = OpticalStockReconciliation::select('stock_count_identifier', 'created_by', 'created_at', 'general_comment', DB::raw('SUM(variance) as total'))->groupBy('stock_count_identifier', 'created_by', 'created_at', 'general_comment')->where('type',0)->whereBetween('created_at', [$yesterday, $end])->orderBy('stock_count_identifier', 'desc')->get(); - } else if ($request->dates == "custom_date") { - - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->start_date)->endOfDay()->toDateTimeString(); - $reconciled_stocks = OpticalStockReconciliation::select('stock_count_identifier', 'created_by', 'created_at', 'general_comment', DB::raw('SUM(variance) as total'))->groupBy('stock_count_identifier', 'created_by', 'created_at', 'general_comment')->where('type',0)->whereBetween('created_at', [$start, $end])->orderBy('stock_count_identifier', 'desc')->get(); - } else if ($request->dates == "custom_date_range") { - - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $reconciled_stocks = OpticalStockReconciliation::select('stock_count_identifier', 'created_by', 'created_at', 'general_comment', DB::raw('SUM(variance) as total'))->groupBy('stock_count_identifier', 'created_by', 'created_at', 'general_comment')->where('type',0)->whereBetween('created_at', [$start, $end])->orderBy('stock_count_identifier', 'desc')->get(); - } - } else $reconciled_stocks = OpticalStockReconciliation::select('stock_count_identifier', 'created_by', 'created_at', 'general_comment', DB::raw('SUM(variance) as total'))->where('type',0)->groupBy('stock_count_identifier', 'created_by', 'created_at', 'general_comment')->orderBy('stock_count_identifier', 'desc')->get(); - return view('stores::stores.optical_stock_reconciliation_report', compact('reconciled_stocks')); - } - public function optical_stock_reconciliation_report_details(Request $request) - { - $table_name='eye_glasses'; - $active='stores.optical_stock_reconciliation_report_details'; - $route = 'stores.optical_stock_reconciliation_report'; - $route_title ='stores.optical_stock_reconciliation_report'; - $items_reconciled = OpticalStockReconciliation::where('stock_count_identifier', $request->stock_count_identifier)->get(); - $items_reconciled = $this->itemsStockService->processReconcileItems($items_reconciled); - $var=true; - return view('stores::stores.items_stock_reconciliation_report_details', compact('items_reconciled','var','route_title','table_name','active','route')); - - } - public function issued_items_history(Request $request){ - $item_options = []; - $quotation_type_options = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $quotation_type_options = ['' => '- Select Quotation type -'] + $quotation_type_options; - - $item_options['drugs'] = DB::table('drugs')->where('available', 1)->whereNull('deleted_at')->pluck('name', 'id')->prepend('All drugs', 'all_items')->toArray() + ['' => '-- select --']; - $item_options['sundries'] = DB::table('sundries')->whereNull('deleted_at')->pluck('name', 'id')->prepend('All sundries', 'all_items')->toArray() + ['' => '-- select --']; - $item_options['dentals'] = DB::table('dentals')->whereNull('deleted_at')->pluck('name', 'id')->prepend('All dentals', 'all_items')->toArray() + ['' => '-- select --']; - $item_options['labs'] = DB::table('labs')->whereNull('deleted_at')->pluck('name', 'id')->prepend('All labs', 'all_items')->toArray() + ['' => '-- select --']; - $item_options['radiologies'] = DB::table('radiologies')->whereNull('deleted_at')->pluck('name', 'id')->prepend('All radiologies', 'all_items')->toArray() + ['' => '-- select --']; - $item_options['general_items'] = DB::table('general_items')->whereNull('deleted_at')->pluck('name', 'id')->prepend('All general items', 'all_items')->toArray() + ['' => '-- select --']; - $item_options['eye_glasses'] = DB::table('eye_glasses')->whereNull('deleted_at')->pluck('name', 'id')->prepend('All eye glasses', 'all_items')->toArray() + ['' => '-- select --']; - - $item_type = 0; - $item_id = 0; - $quotation_type_id = 0; - $item_name = "N/A"; - $search_all_items = false; - $start_date_raw = $request->start_date; - $end_date_raw = $request->end_date; - - if (isset($request->start_date) && isset($request->end_date)) { - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date)->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->end_date)->toDateTimeString(); - } else { - $start_date = Carbon::now()->toDateTimeString(); - $end_date = Carbon::now()->toDateTimeString(); - } - - if (isset($request->selected_drugs) && $request->quotation_type == 1) { - //Drugs - $item_id = $request->selected_drugs; - $quotation_type_id = $request->quotation_type; - $item_id == "all_items" ?: $item_name = DB::table('drugs')->find($request->selected_drugs)->name; - } elseif(isset($request->selected_sundries) && $request->quotation_type == 2) { - //Sundries - $item_id = $request->selected_sundries; - $quotation_type_id = $request->quotation_type; - $item_id == "all_items" ?: $item_name = DB::table('sundries')->find($request->selected_sundries)->name; - } elseif(isset($request->selected_dentals) && $request->quotation_type == 3) { - //Dentals - $item_id = $request->selected_dentals; - $quotation_type_id = $request->quotation_type; - $item_id == "all_items" ?: $item_name = DB::table('dentals')->find($request->selected_dentals)->name; - } elseif(isset($request->selected_radiologies) && $request->quotation_type == 4) { - //Radiologies - $item_id = $request->selected_radiologies; - $quotation_type_id = $request->quotation_type; - $item_id == "all_items" ?: $item_name = DB::table('radiologies')->find($request->selected_radiologies)->name; - } elseif(isset($request->selected_labs) && $request->quotation_type == 5) { - //Labs - $item_id = $request->selected_labs; - $quotation_type_id = $request->quotation_type; - $item_id == "all_items" ?: $item_name = DB::table('labs')->find($request->selected_labs)->name; - } elseif(isset($request->selected_general_items) && $request->quotation_type == 6) { - //General Items - $item_id = $request->selected_general_items; - $quotation_type_id = $request->quotation_type; - $item_id == "all_items" ?: $item_name = DB::table('general_items')->find($request->selected_general_items)->name; - } elseif(isset($request->selected_eye_glasses) && $request->quotation_type == 7) { - //Eye Glasses - $item_id = $request->selected_eye_glasses; - $quotation_type_id = $request->quotation_type; - $item_id == "all_items" ?: $item_name = DB::table('eye_glasses')->find($request->selected_eye_glasses)->name; - } - - $display = "Records for " . $item_name . " between " . streamline_date($start_date) . " and " . streamline_date($end_date); - - $all_items_results = $ward_results = []; - - if ($item_id == "all_items") { - $search_all_items = true; - $results = DB::table('requisitions') - ->select('*')->whereNull('deleted_at') - ->where('quotation_type_id', $quotation_type_id) - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(); - - $ward_results = DB::table('ward_item_requests') - ->select('*')->whereNull('deleted_at') - ->where(['item_type' => $quotation_type_id, 'issued_from' => 'store']) - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(); - - if(count($results) > 0): - foreach($results as $result): - $item_type = $request->quotation_type; - $requested_item_ids_explode = explode(",", $result->drug_id); - $quantity_requested_explode = explode(",", $result->quantity_requested); - $item_id_explode = explode(",", $result->item_ids_issued_out); - $issued_out_explode = explode(",", $result->quantity_issued); - $cost_value_explode = explode(",", $result->cost_value); - - // for($x = 0; $x < count($item_id_explode); $x++): - // $item_key = array_search($item_id_explode[$x], $requested_item_ids_explode); - // $qty_requested = $quantity_requested_explode[$item_key]; - // $duplicate_checker[] = $item_id_explode[$x]; - // //$cost_value = $cost_value_explode[$item_key]; - // $cost_value = $cost_value_explode[$x]; - - // if(array_key_exists($item_id_explode[$x],$all_items_results)): - // $all_items_results[$item_id_explode[$x]]["quantity_requested"] += in_array($item_id_explode[$x], $duplicate_checker) ? 0 : (int)$qty_requested ?? 0; - // $all_items_results[$item_id_explode[$x]]["quantity_issued"] += (int)$issued_out_explode[$x] ?? 0; - // $all_items_results[$item_id_explode[$x]]["cost_value"] += (int)$cost_value ?? 0; - // else: - // $all_items_results[$item_id_explode[$x]]["quantity_requested"] = (int)$qty_requested ?? 0; - // $all_items_results[$item_id_explode[$x]]["quantity_issued"] = (int)$issued_out_explode[$x] ?? 0; - // $all_items_results[$item_id_explode[$x]]["cost_value"] = (int)$cost_value ?? 0; - // endif; - // endfor; - for($x = 0; $x < count($item_id_explode); $x++): - $cost_value = isset($cost_value_explode[$x]) ? (int)$cost_value_explode[$x] : 0; - $qty_requested = isset($quantity_requested_explode[$x]) ? (int)$quantity_requested_explode[$x] : 0; - $issued_qty = isset($issued_out_explode[$x]) ? (int)$issued_out_explode[$x] : 0; - - if(array_key_exists($item_id_explode[$x],$all_items_results)): - $all_items_results[$item_id_explode[$x]]["quantity_requested"] += $qty_requested; - $all_items_results[$item_id_explode[$x]]["quantity_issued"] += $issued_qty; - $all_items_results[$item_id_explode[$x]]["cost_value"] += $cost_value; - else: - $all_items_results[$item_id_explode[$x]]["quantity_requested"] = $qty_requested; - $all_items_results[$item_id_explode[$x]]["quantity_issued"] = $issued_qty; - $all_items_results[$item_id_explode[$x]]["cost_value"] = $cost_value; - endif; - endfor; - endforeach; - endif; - - if(count($ward_results) > 0): - foreach($ward_results as $ward_result): - $item_type = $request->quotation_type; - $requested_item_ids_explode = explode(",", $ward_result->item_ids); - $quantity_requested_explode = explode(",", $ward_result->item_quantities); - $item_id_explode = explode(",", $ward_result->item_ids_issued_out); - $issued_out_explode = explode(",", $ward_result->quantity_issued_out); - // $cost_value_explode = explode(",", $ward_result->cost_value); - for($x = 0; $x < count($item_id_explode); $x++): - $cost_value = 0; - $qty_requested = 0; - $issued_qty = isset($issued_out_explode[$x]) ? (int)$issued_out_explode[$x] : 0; - - if(array_key_exists($item_id_explode[$x],$all_items_results)): - $all_items_results[$item_id_explode[$x]]["quantity_requested"] += $qty_requested; - $all_items_results[$item_id_explode[$x]]["quantity_issued"] += $issued_qty; - $all_items_results[$item_id_explode[$x]]["cost_value"] += $cost_value; - else: - $all_items_results[$item_id_explode[$x]]["quantity_requested"] = $qty_requested; - $all_items_results[$item_id_explode[$x]]["quantity_issued"] = $issued_qty; - $all_items_results[$item_id_explode[$x]]["cost_value"] = $cost_value; - endif; - endfor; - endforeach; - endif; - } else{ - $results = DB::table('requisitions') - ->select('*')->whereNull('deleted_at') - ->where('quotation_type_id', $quotation_type_id) - ->whereRaw('FIND_IN_SET(' . $item_id . ',drug_id)') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(); - $ward_results = DB::table('ward_item_requests') - ->select('*')->whereNull('deleted_at') - ->where(['item_type' => $quotation_type_id, 'issued_from' => 'store']) - ->whereRaw('FIND_IN_SET(' . $item_id . ',item_ids_issued_out)') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(); - } - - - return view('stores::stores.issued_items_history', compact('item_options', 'quotation_type_options', 'item_type', 'results', 'display', 'item_id', 'search_all_items', 'all_items_results', 'start_date_raw', 'end_date_raw', 'ward_results')); - } - - public function electronic_stock_card(Request $request){ - $item_options = []; - $quotation_type_options = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $quotation_type_options = ['' => '- Select Item type -'] + $quotation_type_options; - - $item_options['drugs'] = ['all_items' => 'All Drugs'] + DB::table('drugs')->where('available', 1)->orderBy('name','asc')->whereNull('deleted_at')->pluck('name', 'id')->toArray(); - $item_options['sundries'] = ['all_items' => 'All Sundries'] + DB::table('sundries')->whereNull('deleted_at')->orderBy('name','asc')->pluck('name', 'id')->toArray() ; - $item_options['dentals'] =['all_items' => 'All Dentals'] + DB::table('dentals')->whereNull('deleted_at')->orderBy('name','asc')->pluck('name', 'id')->toArray() ; - $item_options['labs'] =['all_items' => 'All Labs'] + DB::table('labs')->whereNull('deleted_at')->orderBy('name','asc')->pluck('name', 'id')->toArray() ; - $item_options['radiologies'] =['all_items' => 'All Radiologies'] + DB::table('radiologies')->whereNull('deleted_at')->orderBy('name','asc')->pluck('name', 'id')->toArray() ; - $item_options['general_items'] =['all_items' => 'All General Items'] + DB::table('general_items')->whereNull('deleted_at')->orderBy('name','asc')->pluck('name', 'id')->toArray() ; - $item_options['eye_glasses'] = ['all_items' => 'All Opticals'] + DB::table('eye_glasses')->whereNull('deleted_at')->orderBy('name','asc')->pluck('name', 'id')->toArray(); - $item_type = 0; - $item_id =$filters=$reconciled_stocks= []; - $item_type_name=''; - $quotation_type_id = 0; - $selling_price=$units=[]; - $item_name = "N/A"; - $search_all_items = false; - $start_date_raw = $request->start_date; - $end_date_raw = $request->end_date; - if (isset($request->start_date) && isset($request->end_date)) { - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date)->startOfDay()->toDateTimeString(); - $end_date=$closing_stock_date = Carbon::createFromFormat('d/m/Y', $request->end_date)->endOfDay()->toDateTimeString(); - $opening_stock_date = Carbon::createFromFormat('d/m/Y', $request->start_date)->subDay()->toDateTimeString(); - } else { - $start_date = Carbon::now()->startOfDay()->toDateTimeString(); - $end_date=$closing_stock_date = Carbon::now()->endOfDay()->toDateTimeString(); - $opening_stock_date = Carbon::now()->subDay()->toDateTimeString(); - } - - if (isset($request->selected_drugs) && $request->quotation_type == 1) { - //Drugs - $item_type_name="Drugs"; - if (in_array('all_items', $request->selected_drugs)) { - $item_id = Drug::where('available', 1)->pluck('id')->toArray(); - }else $item_id = $request->selected_drugs; - $quotation_type_id =$item_type= $request->quotation_type; - $selling_price = Drug::select()->whereIn('id', $item_id)->pluck('non_insured_price')->toArray(); - $table_name = 'drugs'; - $table_col_name='name'; - } elseif(isset($request->selected_sundries) && $request->quotation_type == 2) { - //Sundries - $item_type_name="Sundries"; - if (in_array('all_items', $request->selected_sundries)){ - $item_id = Sundry::pluck('id')->toArray(); - }else $item_id = $request->selected_sundries; - $quotation_type_id=$item_type = $request->quotation_type; - $selling_price = Sundry::select()->whereIn('id', $item_id)->pluck('non_insured_price')->toArray(); - $table_name = 'sundries'; - $table_col_name='name'; - } elseif(isset($request->selected_dentals) && $request->quotation_type == 3) { - //Dentals - $item_type_name='Dentals'; - $item_id = $request->selected_dentals; - $quotation_type_id =$item_type= $request->quotation_type; - $selling_price = Dental::select()->whereIn('id', $item_id)->pluck('non_insured_price')->toArray(); - $table_name = 'dentals'; - $table_col_name='name'; - } elseif(isset($request->selected_radiologies) && $request->quotation_type == 4) { - //Radiologies - $item_type_name='Radiologies'; - if (in_array('all_items', $request->selected_radiologies)){ - $item_id = Radiology::pluck('id')->toArray(); - } else $item_id = $request->selected_radiologies; - $quotation_type_id =$item_type= $request->quotation_type; - $table_name = 'radiologies'; - $table_col_name='name'; - } elseif(isset($request->selected_labs) && $request->quotation_type == 5) { - //Labs - $item_type_name='Labs'; - if (in_array('all_items',$request->selected_labs)){ - $item_id = Lab::pluck('id')->toArray(); - } else {$item_id = $request->selected_labs;} - $quotation_type_id =$item_type= $request->quotation_type; - $table_name = 'labs'; - $table_col_name='name'; - } elseif(isset($request->selected_general_items) && $request->quotation_type == 6) { - //General Items - $item_type_name='General Items'; - if (in_array('all_items', $request->selected_general_items)){ - $item_id = GeneralItem::pluck('id')->toArray(); - }else{$item_id = $request->selected_general_items;} - $quotation_type_id =$item_type= $request->quotation_type; - $table_name = 'general_items'; - $table_col_name='name'; - } elseif(isset($request->selected_eye_glasses) && $request->quotation_type == 7) { - //Eye Glasses - $item_type_name='Eye Glasses'; - if (in_array('all_items', $request->selected_eye_glasses)){ - $item_id = EyeGlasses::pluck('id')->toArray(); - }else $item_id = $request->selected_eye_glasses; - $quotation_type_id =$item_type= $request->quotation_type; - $table_name = 'eye_glasses'; - $table_col_name='name'; - } - - $batch_stock_watcher = BatchStockWatcher::whereIn('item_id',$item_id)->where('item_type',$quotation_type_id)->whereNot('item_batch_watcher_id',0)->get(); - foreach ($batch_stock_watcher as $record){ - $details_arr = json_decode($record->details, true); - $details = $details_arr[$opening_stock_date] ?? $details_arr[get_closest_element_in_array(array_keys($details_arr), $opening_stock_date)]??[]; - $details_closing= $details_arr[$closing_stock_date] ?? $details_arr[get_closest_element_in_array(array_keys($details_arr), $closing_stock_date)]??[]; - $record->opening_stock = $details; - $record->date_opening_stock = get_closest_element_in_array(array_keys($details_arr), $opening_stock_date); - $record->closing_stock = $details_closing; - } - $display = "{$item_type_name} Stock Movement between " . streamline_date($start_date) . " and " . streamline_date($end_date); - - $results = ItemBatchWatcher::select('item_id', DB::raw('SUM(store_stock) as total_store_stock'), DB::raw('SUM(cost_price) as cost_value')) - ->where('item_type', $quotation_type_id) - ->whereIn('item_id', $item_id) - ->groupBy('item_id') - ->get(); - //get prev issue out - $issued_out_items = BatchIssuedTracking::whereIn('item_id',$item_id)->where('item_type',$quotation_type_id)->whereBetween('created_at', [$start_date, $end_date]) - ->orderBy('created_at', 'desc')->get()->toArray(); - // get prev received items - $received_items = Quotation::select('quotation_type_id','drug_id','approval_status','approval_user','billing_user','receive_quantity','receive_date','receive_bill_per_package_unit','destination','receive_bill') - ->where(['quotation_type_id'=>$quotation_type_id,'receive_status'=>1,'approval_status'=>1,'destination'=>'store']) - ->whereBetween('receive_date', [$start_date, $end_date])->whereNotNull(['approval_user','billing_user']) - ->get()->toArray(); - if (in_array($quotation_type_id, [4, 5])){ - $reconciled_stocks = GeneralStockReconciliation::where(['source'=>1,'item_type'=>$quotation_type_id]) - ->whereBetween('created_at',[$start_date, $end_date])->orderBy('stock_count_identifier', 'desc')->get()->toArray(); - } - else if($quotation_type_id == 1) { - $reconciled_stocks = StoreStockReconciliation::select('drug_id as item_id','difference')->whereBetween('created_at', [$start_date, $end_date])->orderBy('stock_count_identifier', 'desc')->get()->toArray(); - } - else if ($quotation_type_id == 2){ - $reconciled_stocks = SundryStoreStockReconciliation::select('sundry_id as item_id','difference')->whereBetween('created_at', [$start_date, $end_date])->orderBy('stock_count_identifier', 'desc')->get()->toArray(); - } - else if ($quotation_type_id == 6){ - $reconciled_stocks = GeneralItemStoreStockReconciliation::select('general_item_id as item_id','difference')->whereBetween('created_at', [$start_date, $end_date])->orderBy('stock_count_identifier', 'desc')->get()->toArray(); - } - - // Prepare a lookup array for item_ids_issued_out - $issued_out_lookup =$batch_stocks= $received_items_lookup =$adjusted_stock= []; - foreach ($received_items as $received_item) { - foreach ($item_id as $item) { - if (!isset($received_items_lookup[$item])) { - $received_items_lookup[$item] = []; - } - if($received_item['drug_id'] == $item) - $received_items_lookup[$item][] = $received_item; - } - } - //reconclied stocks - foreach ($reconciled_stocks as $stock){ - foreach ($item_id as $item) { - if (!isset($adjusted_stock[$item])) { - $adjusted_stock[$item] = []; - } - if($stock['item_id'] == $item) - $adjusted_stock[$item][] = $stock; - } - } - //issued out items - foreach ($batch_stock_watcher as $stock_value){ - foreach ($item_id as $item) { - if (!isset($batch_stocks[$item])) { - $batch_stocks[$item] = []; - } - if($stock_value['item_id'] == $item) - $batch_stocks[$item][] = $stock_value; - } - } - foreach ($issued_out_items as &$issued_out) { - //get batch cost value and expiry - $batch_item_details = ItemBatchWatcher::where('item_id', $issued_out['item_id']) - ->where('batch_number', $issued_out['batch_number']) - ->where('item_type', $quotation_type_id)->first(); - $issued_out['unit_cost'] = $batch_item_details->cost_price??0; - if (!isset($issued_out_lookup[$issued_out['item_id']])) { - $issued_out_lookup[$issued_out['item_id']] = []; - } - $issued_out_lookup[$issued_out['item_id']][] = $issued_out; - } - // Process results - $counter=0; - $totals=[ - 'total_store_stock'=>0, - 'total_received_stock'=>0, - 'total_received_cost_value'=>0, - 'total_received_sale_value'=>0, - 'total_issued_out_stock'=>0, - 'total_issued_out_cost_value'=>0, - 'total_issued_out_sale_value'=>0, - 'total_adjusted_stock'=>0, - 'total_cost_value'=>0, - 'total_sale_value'=>0, - 'total_opening_stock'=>0, - 'total_closing_stock'=>0, - 'total_closing_cost_value'=>0, - 'total_closing_sale_value'=>0, - ]; - foreach ($results as $result) { - $itemId = $result->item_id; - $result->item_name = get_name($itemId,'id','name',"{$table_name}"); - $unit_name=$this->itemsStockService->get_item_form_name($itemId,$request->quotation_type); - $result->unit_name = $unit_name; - $result->selling_price = $selling_price[$counter] ?? 0; - $counter++; - $issuedOutItems = $result->issued_out_items ?? [ // Initialize or reuse - 'quantity' => 0, - 'cost_value' => 0, - 'sale_value'=>0, - ]; - if (isset($issued_out_lookup[$itemId])) { - foreach ($issued_out_lookup[$itemId] as $issuedOut) { - $issuedOutItems['quantity'] += (int)$issuedOut['quantity_moved']; - $issuedOutItems['cost_value'] += (int)$issuedOut['quantity_moved'] * (int)$issuedOut['unit_cost']; - $issuedOutItems['sale_value'] += (int)$issuedOut['quantity_moved'] * (int)$result->selling_price; - } - } - // Update object property after loop - $result->issued_out_items = $issuedOutItems; - $receivedItems = $result->received_items ?? [ // Initialize or reuse - 'quantity' => 0, - 'cost_value' => 0, - 'sale_value' => 0 - ]; - if(isset($received_items_lookup[$itemId])){ - foreach ($received_items_lookup[$itemId] as $receivedItem) { - $receivedItems['quantity'] += (int)$receivedItem['receive_quantity']; - $receivedItems['cost_value'] += (int)$receivedItem['receive_quantity'] * (int)$receivedItem['receive_bill']; - } - } - // Update object property after loop - $result->received_items = $receivedItems; - if(isset($adjusted_stock[$itemId])){ - $adjustedStock = $result->adjusted_stock ?? [ // Initialize or reuse - 'quantity' => 0, - ]; - foreach ($adjusted_stock[$itemId] as $stock) { - $adjustedStock['quantity'] += (int)$stock['difference']; - } - // Update object property after loop - $result->adjusted_stock = $adjustedStock; - } - $batchStock = $result->batch_stock ?? [ // Initialize or reuse - 'opening_stock' => 0, - 'closing_stock' => 0, - 'opening_cost_value' => 0, - 'opening_sale_value' => 0, - 'closing_cost_value'=>0, - 'closing_sale_value'=>0 - ]; - if (isset($batch_stocks[$itemId])) { - foreach ($batch_stocks[$itemId] as $stock) { - //filter out opening stock value that are after the date - if($stock->date_opening_stock <= $opening_stock_date){ - $batchStock['opening_stock'] += (count($stock->opening_stock) > 0) ??(int)$stock->opening_stock['store_stock']; - $batchStock['opening_cost_value'] += ((count($stock->opening_stock) > 0) ??(int)$stock->opening_stock['store_stock']*(int)$stock->opening_stock['buying_price']); - $batchStock['opening_sale_value'] += ((count($stock->opening_stock) > 0) ??(int)$stock->opening_stock['store_stock']*(int)$stock->opening_stock['selling_price']); - } - $batchStock['closing_stock'] += (count($stock->closing_stock) > 0) ??(int)$stock->closing_stock['store_stock']??0; - $batchStock['closing_cost_value'] += ((count($stock->closing_stock) > 0) ??(int)$stock->closing_stock['store_stock']??0*(int)$stock->closing_stock['buying_price']); - $batchStock['closing_sale_value'] += ((count($stock->closing_stock) > 0) ??(int)$stock->closing_stock['store_stock']??0*(int)$stock->closing_stock['selling_price']); - } - // Update object property after loop - $result->batch_stock = $batchStock; - } - $totals['total_store_stock'] += $result->total_store_stock; - $totals['total_received_stock'] += $result->received_items['quantity'] ?? 0; - $totals['total_received_cost_value'] += $result->received_items['cost_value'] ?? 0; - $totals['total_received_sale_value'] += $result->received_items['sale_value'] ?? 0; - $totals['total_issued_out_stock'] += $result->issued_out_items['quantity'] ?? 0; - $totals['total_issued_out_cost_value'] += $result->issued_out_items['cost_value'] ?? 0; - $totals['total_issued_out_sale_value'] += $result->issued_out_items['sale_value'] ?? 0; - $totals['total_adjusted_stock'] += $result->adjusted_stock['quantity'] ?? 0; - $totals['total_cost_value'] += $result->batch_stock['opening_cost_value']; - $totals['total_sale_value'] += $result->batch_stock['opening_sale_value']; - $totals['total_opening_stock'] +=$result->batch_stock['opening_stock']; - $totals['total_closing_stock'] +=$result->batch_stock['closing_stock']; - $totals['total_closing_cost_value'] +=$result->batch_stock['closing_cost_value']; - $totals['total_closing_sale_value'] +=$result->batch_stock['closing_sale_value']; - } - - return view('stores::stores.electronic_stock_card', compact('item_options','totals','start_date','end_date','opening_stock_date', 'quotation_type_options', 'item_type', 'results', 'display', 'item_id')); - } - public function electronic_stock_card_details(Request $request) - { - $item_id = $request->item_id; - $item_type = $request->item_type; - $start_date = $request->start_date; - $request_type=$request->request_type; - $opening_stock_date=$request->opening_stock_date; - $end_date =$closing_stock_date= $request->end_date; - $display=$stock_reorder=$table_unit_name=$item_name=''; - $amc=0; - if ($item_type == 1) { - //Drugs - $amc=get_item_average_monthly_consumption($item_type,$item_id,30); - $selling_price = Drug::select()->where('id', $item_id)->pluck('non_insured_price')->toArray(); - $units = Drug::select()->where('id', $item_id)->pluck('unit_id')->toArray(); - $table_unit_name='drug_forms'; - $table_name = 'drugs'; - $table_col_name='name'; - $table_reorder_name='reorder_level'; - } elseif($item_type == 2) { - //Sundries - $amc=get_item_average_monthly_consumption($item_type,$item_id,30); - $selling_price = Sundry::select()->where('id', $item_id)->pluck('non_insured_price')->toArray(); - $table_name = 'sundries'; - $table_col_name='name'; - $units= Sundry::select('form_id')->where('id', $item_id)->first()['form_id']; - $table_unit_name='general_forms'; - $table_reorder_name='re_order_level'; - } elseif($item_type == 3) { - //Dentals - $selling_price = Dental::select()->where('id', $item_id)->pluck('non_insured_price')->toArray(); - $table_name = 'dentals'; - $table_col_name='name'; - $table_reorder_name='re_order_level'; - } elseif($item_type == 4) { - //Radiologies - $table_name = 'radiologies'; - $table_unit_name='general_forms'; - $table_col_name='name'; - $table_reorder_name='reorder_level'; - } elseif($item_type == 5) { - //Labs - $units= Lab::select()->where('id', $item_id)->pluck('form_id')->toArray(); - $table_name = 'labs'; - $table_unit_name='lab_forms'; - $table_col_name='name'; - $table_reorder_name='reorder_level'; - } elseif($item_type == 6) { - //General Items - $table_name = 'general_items'; - $table_col_name='name'; - $table_reorder_name='reorder_level'; - } elseif($item_type == 7) { - //Eye Glasses - $table_name = 'eye_glasses'; - $table_col_name='name'; - $table_reorder_name='reorder_level'; - } - $item_name=get_name($item_id, 'id', 'name', "{$table_name}"); - ($table_unit_name!='')? $unit_name=get_name($item_id, 'id', 'name', "{$table_unit_name}"):$unit_name=''; - $unit_name=($unit_name == 'N/A')?'':$unit_name; - $stock_reorder=get_name($item_id, 'id', "{$table_reorder_name}", "{$table_name}"); - $batch_stock_watcher = BatchStockWatcher::where('item_id',$item_id)->where('item_type',$item_type)->whereNot('item_batch_watcher_id',0)->get(); - foreach ($batch_stock_watcher as $record){ - $details_arr = json_decode($record->details, true); - $details = $details_arr[$opening_stock_date] ?? $details_arr[get_closest_element_in_array(array_keys($details_arr), $opening_stock_date)]; - $details_closing= $details_arr[$closing_stock_date] ?? $details_arr[get_closest_element_in_array(array_keys($details_arr), $closing_stock_date)]; - $record->opening_stock = $details; - $record->date_opening_stock = get_closest_element_in_array(array_keys($details_arr), $opening_stock_date); - $record->closing_stock = $details_closing; - } - //get prev issue out - $issued_out_items =BatchIssuedTracking::where('item_id',$item_id)->where('item_type',$item_type)->whereBetween('created_at', [$start_date, $end_date]) - ->orderBy('created_at', 'desc')->get()->toArray(); - // get prev received items - $received_items = Quotation::select('id','quotation_type_id','drug_id','directly_received_items','batch_number','expiry_date','supplier_id','approval_user','billing_user','receive_quantity','receive_date','receive_bill_per_package_unit','destination','receive_bill') - ->where(['quotation_type_id'=>$item_type,'drug_id'=>$item_id,'receive_status'=>1,'approval_status'=>1,'destination'=>'store']) - ->whereBetween('receive_date', [$start_date, $end_date])->whereNotNull(['approval_user','billing_user']) - ->get()->toArray(); - if (in_array($item_type, [4, 5])){ - $reconciled_stocks = GeneralStockReconciliation::where(['source'=>1,'item_type'=>$item_type,'item_id'=>$item_id]) - ->whereBetween('created_at',[$start_date, $end_date])->orderBy('stock_count_identifier', 'desc')->get()->toArray(); - } - else if($item_type == 1) { - $reconciled_stocks = StoreStockReconciliation::select('drug_id as item_id','difference','reconciliation_date','id')->where('drug_id',$item_id)->whereBetween('created_at', [$start_date, $end_date])->orderBy('stock_count_identifier', 'desc')->get()->toArray(); - } - else if ($item_type == 2){ - $reconciled_stocks = SundryStoreStockReconciliation::select('sundry_id as item_id','difference','reconciliation_date','id')->where('sundry_id',$item_id)->whereBetween('created_at', [$start_date, $end_date])->orderBy('stock_count_identifier', 'desc')->get()->toArray(); - } - else if ($item_type == 6){ - $reconciled_stocks = GeneralItemStoreStockReconciliation::select('general_item_id as item_id','difference','id','created_at as reconciliation_date')->where('general_item_id',$item_id)->whereBetween('created_at', [$start_date, $end_date])->orderBy('stock_count_identifier', 'desc')->get()->toArray(); - } - $display = "Stock Movement Details for " . $item_name . " between " . streamline_date($start_date) . " and " . streamline_date($end_date); - $data_array=combineByDate($issued_out_items,$received_items,$batch_stock_watcher,$reconciled_stocks,$item_id,$opening_stock_date); - $opening_stock=$data_array['opening_stock']; - $closing_stock=$data_array['closing_stock']; - $data=$data_array['data']; - if ($request_type=='2') { - $data_details = [ - 'data' => $data, - 'unit_name' => $unit_name, - 'amc' => $amc, - 'opening_stock' => $opening_stock, - 'closing_stock' => $closing_stock, - 'stock_reorder' => $stock_reorder, - 'start_date'=>$start_date, - 'end_date'=>$end_date, - 'display'=>$display, - ]; - //print view - $pdf = SnappyPDF::loadView('stores::stores/electronic_stock_card_details_print', $data_details) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Stre@mline '.streamline_date(date('Y-m-d')).' Printed By: '.get_full_name(Auth::id(), "id", "first_name", "last_name", "users").' '.streamline_date_time(date('Y-m-d H:m:i'))); - return $pdf->inline('Stock Card Details' . date(" d-m-y h:ia") . '.pdf'); - } - return view('stores::stores.electronic_stock_card_details', compact('data','unit_name','amc','start_date','end_date','opening_stock_date','item_type','item_id','opening_stock','closing_stock','stock_reorder', 'display')); - } - - public function electronic_stock_card_receive_items_drill_down(Request $request){ - $item_id = $request->item_id; - $item_type = $request->item_type; - $start_date =$opening_stock_date= $request->start_date; - $end_date =$closing_stock_date= $request->end_date; - $display=$unit_name=$item_name=''; - $selling_price=0; - $units=$table_unit_name=''; - $request_type = $request->request_type; - if ($item_type == 1) { - //Drugs - $selling_price = Drug::select('non_insured_price')->where('id', $item_id)->first()['non_insured_price']; - $units = Drug::select('form_id')->where('id', $item_id)->first()['form_id']; - $table_unit_name='drug_forms'; - $table_name = 'drugs'; - $table_col_name='name'; - } elseif($item_type == 2) { - //Sundries - $amc=get_item_average_monthly_consumption($item_type,$item_id,30); - $selling_price = Sundry::select('non_insured_price')->where('id', $item_id)->first()['non_insured_price']; - $table_name = 'sundries'; - $units= Sundry::select('form_id')->where('id', $item_id)->first()['form_id']; - $table_unit_name='general_forms'; - $table_col_name='name'; - } elseif($item_type == 3) { - //Dentals - $selling_price = Dental::select('non_insured_price')->where('id', $item_id)->first()['non_insured_price']; - $table_name = 'dentals'; - $table_col_name='name'; - } elseif($item_type == 4) { - //Radiologies - $table_unit_name='general_forms'; - $units = Radiology::select()->where('id', $item_id)->first()['form_id']; - $table_name = 'radiologies'; - $table_col_name='name'; - } elseif($item_type == 5) { - //Labs - $units= Lab::select()->where('id', $item_id)->first()['form_id']; - $table_name = 'labs'; - $table_unit_name='lab_forms'; - $table_col_name='name'; - } elseif($item_type == 6) { - //General Items - $table_name = 'general_items'; - $table_col_name='name'; - } elseif($item_type == 7) { - //Eye Glasses - $table_name = 'eye_glasses'; - $table_col_name='name'; - } - $item_name=get_name($item_id, 'id', 'name', "{$table_name}"); - ($units != '') ? $unit_name=get_name($units, 'id', 'name', "{$table_unit_name}"): $unit_name=''; - $data_items = Quotation::select('id','quotation_type_id','quotation_number','grn_number','drug_id','directly_received_items','batch_number','expiry_date','supplier_id','approval_user','billing_user','receive_quantity as quantity','receive_date as date','receive_bill_per_package_unit','destination','receive_bill as unit_cost') - ->where(['quotation_type_id'=>$item_type,'drug_id'=>$item_id,'receive_status'=>1,'approval_status'=>1,'destination'=>'store']) - ->whereBetween('receive_date', [$start_date, $end_date])->whereNotNull(['approval_user','billing_user','supplier_id','receive_quantity']) - ->get()->toArray(); - $display = "Received Stock Details for " . $item_name . " between " . streamline_date($start_date) . " and " . streamline_date($end_date); - - $summary=[]; - foreach ($data_items as &$record){ - $supplier_name = get_name($record['supplier_id'],'id','name','suppliers'); - if (!isset($supplier[$supplier_name])){ - $summary[$supplier_name]=$record['quantity']; - } - else{ - $summary[$supplier_name]+=$record['quantity']; - } - $record['name']=$supplier_name; - $record['cost_value']= (int) $record['quantity'] * (int) $record['unit_cost']; - $record['sale_value'] = (int) $record['quantity'] * (int) $selling_price; - } - $type=1; - $route='stores.received_items_drill_down'; - if ($request_type == '2'){ - $data_details = [ - 'data_items' => $data_items, - 'unit_name' => $unit_name, - 'start_date'=>$start_date, - 'end_date'=>$end_date, - 'type'=>$type, - 'item_type'=>$item_type, - 'summary'=>$summary, - 'display'=>$display, - ]; - //print view - $pdf = SnappyPDF::loadView('stores::stores/electronic_stock_card_drill_details_print', $data_details) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Stre@mline '.streamline_date(date('Y-m-d')).' Printed By: '.get_full_name(Auth::id(), "id", "first_name", "last_name", "users").' '.streamline_date_time(date('Y-m-d H:m:i'))); - return $pdf->inline('Received Stock Card Details' . date(" d-m-y h:ia") . '.pdf'); - } - return view('stores::stores.electronic_stock_card_drill_details', compact('data_items','item_type','route','item_id','start_date','end_date', 'summary', 'display','unit_name','type')); - } - public function electronic_stock_card_issued_items_drill_down(Request $request){ - $item_id = $request->item_id; - $item_type = $request->item_type; - $start_date =$opening_stock_date= $request->start_date; - $end_date =$closing_stock_date= $request->end_date; - $display=$unit_name=$item_name=''; - $selling_price=0; - $units=$table_unit_name=''; - $request_type = $request->request_type; - if ($item_type == 1) { - //Drugs - $selling_price = Drug::select('non_insured_price')->where('id', $item_id)->first()['non_insured_price']; - $units = Drug::select('form_id')->where('id', $item_id)->first()['form_id']; - $table_unit_name='drug_forms'; - $table_name = 'drugs'; - $table_col_name='name'; - } elseif($item_type == 2) { - //Sundries - $amc=get_item_average_monthly_consumption($item_type,$item_id,30); - $selling_price = Sundry::select('non_insured_price')->where('id', $item_id)->first()['non_insured_price']; - $table_name = 'sundries'; - $units = Sundry::select('form_id')->where('id', $item_id)->first()['form_id']; - $table_unit_name='general_forms'; - $table_col_name='name'; - } elseif($item_type == 3) { - //Dentals - $selling_price = Dental::select('non_insured_price')->where('id', $item_id)->first()['non_insured_price']; - $table_name = 'dentals'; - $table_col_name='name'; - } elseif($item_type == 4) { - //Radiologies - $table_unit_name='general_forms'; - $units = Radiology::select('form_id')->where('id', $item_id)->first()['form_id']; - $table_name = 'radiologies'; - $table_col_name='name'; - } elseif($item_type == 5) { - //Labs - $units= Lab::select('form_id')->where('id', $item_id)->first()['form_id']; - $table_name = 'labs'; - $table_unit_name='lab_forms'; - $table_col_name='name'; - } elseif($item_type == 6) { - //General Items - $table_name = 'general_items'; - $table_col_name='name'; - } elseif($item_type == 7) { - //Eye Glasses - $table_name = 'eye_glasses'; - $table_col_name='name'; - } - $item_name=get_name($item_id, 'id', 'name', "{$table_name}"); - ($units != '') ? $unit_name=get_name($units, 'id', 'name', "{$table_unit_name}"): $unit_name=''; - //get prev issue out - $issued_out_items = BatchIssuedTracking::select('requisition_id','id','batch_number','quantity_moved as quantity','moved_to','created_at','item_id')->where(['item_id'=>$item_id,'item_type'=>$item_type])->whereBetween('created_at', [$start_date, $end_date]) - ->orderBy('created_at', 'desc')->get()->toArray(); - $display = "Issued Out Stock Details for " . $item_name . " between " . streamline_date($start_date) . " and " . streamline_date($end_date); - - // Add issued data - $data_items=$summary=[]; - foreach ($issued_out_items as &$item) { - $batch_item_details = ItemBatchWatcher::where(['item_id'=> $item['item_id'],'batch_number'=>$item['batch_number'],'item_type'=>$item_type])->first(); - if ($item['moved_to']== 'ward'){ - //get ward name - $ward_id = get_name($item['requisition_id'],'id','ward_id','ward_item_requests'); - $item['name'] = get_name($ward_id, 'id', 'name', 'wards'); - $item['name_title']='IPD'; - } else $item['name_title']=$item['name']=$item['moved_to']; - - $item['date']= explode('T',$item['created_at'])[0]; - if (!isset($summary[$item['name_title']])){ - $summary[$item['name_title']]=$item['quantity']; - }else $summary[$item['name_title']]+=$item['quantity']; - $item['cost_value']= (int) $item['quantity'] * (int) $batch_item_details->cost_price??0; - $item['sale_value'] = (int) $item['quantity'] * (int) $selling_price; - $item['expiry_date'] = $batch_item_details->expiry_date; - $item['unit_cost']= $batch_item_details->cost_price??0; - $item['quotation_number']=$item['requisition_id']; - $data_items[]=$item; - } - $type=2; - $route='stores.issued_items_drill_down'; - if ($request_type == '2'){ - $data_details = [ - 'data_items' => $data_items, - 'unit_name' => $unit_name, - 'start_date'=>$start_date, - 'end_date'=>$end_date, - 'type'=>$type, - 'item_type'=>$item_type, - 'summary'=>$summary, - 'display'=>$display, - ]; - //print view - $pdf = SnappyPDF::loadView('stores::stores/electronic_stock_card_drill_details_print', $data_details) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Stre@mline '.streamline_date(date('Y-m-d')).' Printed By: '.get_full_name(Auth::id(), "id", "first_name", "last_name", "users").' '.streamline_date_time(date('Y-m-d H:m:i'))); - return $pdf->inline('Issued Out Stock Card Details' . date(" d-m-y h:ia") . '.pdf'); - } - return view('stores::stores.electronic_stock_card_drill_details', compact('data_items','route', 'summary','item_id','start_date','end_date','item_type', 'display','unit_name','type')); - } - public function electronic_stock_card_adjustment_drill_down(Request $request){ - $item_id = $request->item_id; - $item_type = $request->item_type; - $start_date =$opening_stock_date= $request->start_date; - $end_date =$closing_stock_date= $request->end_date; - $display=$unit_name=$item_name=''; - $selling_price=0; - $units=$table_unit_name=''; - $request_type = $request->request_type; - if ($item_type == 1) { - //Drugs - $selling_price = Drug::select('non_insured_price')->where('id', $item_id)->first()['non_insured_price']; - $units = Drug::select('form_id')->where('id', $item_id)->first()['form_id']; - $table_unit_name='drug_forms'; - $table_name = 'drugs'; - $table_col_name='name'; - } elseif($item_type == 2) { - //Sundries - $amc=get_item_average_monthly_consumption($item_type,$item_id,30); - $selling_price = Sundry::select('non_insured_price')->where('id', $item_id)->first()['non_insured_price']; - $table_name = 'sundries'; - $units = Sundry::select('form_id')->where('id', $item_id)->first()['form_id']; - $table_unit_name='general_forms'; - $table_col_name='name'; - } elseif($item_type == 3) { - //Dentals - $selling_price = Dental::select('non_insured_price')->where('id', $item_id)->first()['non_insured_price']; - $table_name = 'dentals'; - $table_col_name='name'; - } elseif($item_type == 4) { - //Radiologies - $units = Radiology::select('form_id')->where('id', $item_id)->first()['form_id']; - $table_unit_name='general_forms'; - $table_name = 'radiologies'; - $table_col_name='name'; - } elseif($item_type == 5) { - //Labs - $units= Lab::select('form_id')->where('id', $item_id)->first()['form_id']; - $table_name = 'labs'; - $table_unit_name='lab_forms'; - $table_col_name='name'; - } elseif($item_type == 6) { - //General Items - $table_name = 'general_items'; - $table_col_name='name'; - } elseif($item_type == 7) { - //Eye Glasses - $table_name = 'eye_glasses'; - $table_col_name='name'; - } - $item_name=get_name($item_id, 'id', 'name', "{$table_name}"); - ($units != '') ? $unit_name=get_name($units, 'id', 'name', "{$table_unit_name}"): $unit_name=''; - if (in_array($item_type, [4, 5])){ - if ($item_type == 4){ - $route='stores.radiologies_stock_reconciliation_report_details'; - } - if ($item_type == 5){ - $route='stores.labs_stock_reconciliation_report_details'; - } - $reconciled_stocks = GeneralStockReconciliation::where(['source'=>1,'item_type'=>$item_type,'item_id'=>$item_id]) - ->whereBetween('created_at',[$start_date, $end_date])->orderBy('stock_count_identifier', 'desc')->get()->toArray(); - } - else if($item_type == 1) { - $route='stores.stock_reconciliation_report_details'; - $reconciled_stocks = StoreStockReconciliation::select('drug_id as item_id','difference','stock_count_identifier','reconciliation_date','id','created_by','system_stock','physical_stock')->where('drug_id',$item_id)->whereBetween('created_at', [$start_date, $end_date])->orderBy('stock_count_identifier', 'desc')->get()->toArray(); - } - else if ($item_type == 2){ - $route='stores.sundries_stock_reconciliation_report_details'; - $reconciled_stocks = SundryStoreStockReconciliation::select('sundry_id as item_id','difference','stock_count_identifier','reconciliation_date','id','created_by','system_stock','physical_stock')->where('sundry_id',$item_id)->whereBetween('created_at', [$start_date, $end_date])->orderBy('stock_count_identifier', 'desc')->get()->toArray(); - } - else if ($item_type == 6){ - $route='stores.general_items_stock_reconciliation_report_details'; - $reconciled_stocks = GeneralItemStoreStockReconciliation::select('general_item_id as item_id','difference','stock_count_identifier','reconciliation_date','id','created_by','system_stock','physical_stock')->where('general_item_id',$item_id)->whereBetween('created_at', [$start_date, $end_date])->orderBy('stock_count_identifier', 'desc')->get()->toArray(); - } - foreach($reconciled_stocks as &$stock){ - $stock['name']=get_full_name($stock['created_by'], 'id', 'first_name','last_name', 'users'); - $stock['date']= explode('T', $stock['reconciliation_date'])[0]; - } - $display = "Adjusted Stock Card Details for " . $item_name . " between " . streamline_date($start_date) . " and " . streamline_date($end_date); - if ($request_type == '2'){ - $data_details = [ - 'reconciled_stocks' => $reconciled_stocks, - 'unit_name' => $unit_name, - 'start_date'=>$start_date, - 'end_date'=>$end_date, - 'display'=>$display, - ]; - //print view - $pdf = SnappyPDF::loadView('stores::stores/electronic_adjusted_stock_card_drill_details_print', $data_details) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Stre@mline '.streamline_date(date('Y-m-d')).' Printed By: '.get_full_name(Auth::id(), "id", "first_name", "last_name", "users").' '.streamline_date_time(date('Y-m-d H:m:i'))); - return $pdf->inline('Adjusted Stock Card Details' . date(" d-m-y h:ia") . '.pdf'); - } - return view('stores::stores.electronic_adjusted_stock_card_drill_details', compact('display','item_id','start_date','end_date','item_type','route', 'unit_name','reconciled_stocks')); - } - - public function clean_labs_with_no_expense_accounts() - { - $labs_bills = HospitalBill::where('bill_type','LAB')->get(); - $items_accounts_new_array = []; - - foreach ($labs_bills as $bill) { - $expense_account_id = null; - $items_ids_array = explode(",", $bill->item_ids); - $items_expense_accounts_array = explode(",", $bill->item_accounts); - $items_accounts_new_array = []; - - for ($i=0; $i < count($items_ids_array) ; $i++) { - $expense_account_id = get_name($items_ids_array[$i], 'id', 'expenses_account_id', 'labs'); - if (is_null($expense_account_id) || $expense_account_id == "N/A" || $expense_account_id == "") { - $expense_account_id = get_name('labs_expense_account', 'slug', 'id', 'chart_of_accounts'); - - if ($expense_account_id == "N/A") { - $expense_account_id = 14; //default to payable account if needed accounts are not found - } - } - - $items_accounts_new_array[] = $expense_account_id; - } - - //update the bills record with new accounts - $bill->item_accounts = implode(",", $items_accounts_new_array); - $bill->update(); - } - - return "Lab bills with no expenses accounts have been cleaned"; - } - - public function get_item_batch_watcher_details(Request $request) - { - $batch_record = ItemBatchWatcher::find($request->batch_number); - if ($batch_record) { - return $batch_record; - } - return false; - } - - public function clean_stock_watcher_to_remove_deleted(Request $request){ - $all_batches_array = ItemBatchWatcher::where('item_type', 1)->pluck('id')->toArray(); - - $batch_stock_watcher = BatchStockWatcher::where('item_type', 1)->whereNotIn('item_batch_watcher_id', $all_batches_array)->delete(); - - $all_batch_stock_watcher = BatchStockWatcher::where('item_type', 1)->get(); - - $associative_doubles_array = []; - $duplicate_records = []; - foreach ($all_batch_stock_watcher as $one_batch_row) { - if (array_key_exists($one_batch_row->item_batch_watcher_id, $associative_doubles_array)) { - $associative_doubles_array[$one_batch_row->item_batch_watcher_id] = $one_batch_row->id; - $duplicate_records[$one_batch_row->item_batch_watcher_id] = $one_batch_row->id; - } else{ - $associative_doubles_array[$one_batch_row->item_batch_watcher_id] = $one_batch_row->id; - } - } - - //delete the duplicate - foreach ($duplicate_records as $item_batch_watcher_id => $stocker_watcher_id) { - $stock_watcher_records = BatchStockWatcher::where(['item_batch_watcher_id' => $item_batch_watcher_id, 'item_type' => 1])->first(); - $stock_watcher_records->delete(); - } - - return "removed drugs with deleted batches"; - } - - public function issued_items_history_cost_centres(Request $request){ - $item_options = []; - $quotation_type_options = DB::table('quotation_types')->pluck('name', 'id')->toArray(); - $quotation_type_options = ['' => '- Select Quotation type -'] + $quotation_type_options; - $item_options['drugs'] = DB::table('drugs')->where('available', 1)->whereNull('deleted_at')->pluck('name', 'id')->prepend('All drugs', 'all_items')->toArray() + ['' => '-- select --']; - $item_options['sundries'] = DB::table('sundries')->whereNull('deleted_at')->pluck('name', 'id')->prepend('All sundries', 'all_items')->toArray() + ['' => '-- select --']; - $item_options['dentals'] = DB::table('dentals')->whereNull('deleted_at')->pluck('name', 'id')->prepend('All dentals', 'all_items')->toArray() + ['' => '-- select --']; - $item_options['labs'] = DB::table('labs')->whereNull('deleted_at')->pluck('name', 'id')->prepend('All labs', 'all_items')->toArray() + ['' => '-- select --']; - $item_options['radiologies'] = DB::table('radiologies')->whereNull('deleted_at')->pluck('name', 'id')->prepend('All radiologies', 'all_items')->toArray() + ['' => '-- select --']; - $item_options['general_items'] = DB::table('general_items')->whereNull('deleted_at')->pluck('name', 'id')->prepend('All general items', 'all_items')->toArray() + ['' => '-- select --']; - $item_options['eye_glasses'] = DB::table('eye_glasses')->whereNull('deleted_at')->pluck('name', 'id')->prepend('All eye glasses', 'all_items')->toArray() + ['' => '-- select --']; - $item_type = 0; - $item_id = 0; - $quotation_type_id = 0; - $item_name = "N/A"; - $search_all_items = false; - $start_date_raw = $request->start_date; - $end_date_raw = $request->end_date; - if (isset($request->start_date) && isset($request->end_date)) { - $start_date = Carbon::createFromFormat('d/m/Y', $request->start_date)->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $request->end_date)->toDateTimeString(); - } else { - $start_date = Carbon::now()->toDateTimeString(); - $end_date = Carbon::now()->toDateTimeString(); - } - if (isset($request->selected_drugs) && $request->quotation_type == 1) { - //Drugs - $item_id = $request->selected_drugs; - $quotation_type_id = $request->quotation_type; - $item_id == "all_items" ?: $item_name = DB::table('drugs')->find($request->selected_drugs)->name; - } elseif(isset($request->selected_sundries) && $request->quotation_type == 2) { - //Sundries - $item_id = $request->selected_sundries; - $quotation_type_id = $request->quotation_type; - $item_id == "all_items" ?: $item_name = DB::table('sundries')->find($request->selected_sundries)->name; - } elseif(isset($request->selected_dentals) && $request->quotation_type == 3) { - //Dentals - $item_id = $request->selected_dentals; - $quotation_type_id = $request->quotation_type; - $item_id == "all_items" ?: $item_name = DB::table('dentals')->find($request->selected_dentals)->name; - } elseif(isset($request->selected_radiologies) && $request->quotation_type == 4) { - //Radiologies - $item_id = $request->selected_radiologies; - $quotation_type_id = $request->quotation_type; - $item_id == "all_items" ?: $item_name = DB::table('radiologies')->find($request->selected_radiologies)->name; - } elseif(isset($request->selected_labs) && $request->quotation_type == 5) { - //Labs - $item_id = $request->selected_labs; - $quotation_type_id = $request->quotation_type; - $item_id == "all_items" ?: $item_name = DB::table('labs')->find($request->selected_labs)->name; - } elseif(isset($request->selected_general_items) && $request->quotation_type == 6) { - //General Items - $item_id = $request->selected_general_items; - $quotation_type_id = $request->quotation_type; - $item_id == "all_items" ?: $item_name = DB::table('general_items')->find($request->selected_general_items)->name; - } elseif(isset($request->selected_eye_glasses) && $request->quotation_type == 7) { - //Eye Glasses - $item_id = $request->selected_eye_glasses; - $quotation_type_id = $request->quotation_type; - $item_id == "all_items" ?: $item_name = DB::table('eye_glasses')->find($request->selected_eye_glasses)->name; - } - $display = "Records for " . $item_name . " between " . streamline_date($start_date) . " and " . streamline_date($end_date); - $all_items_results = $ward_results = []; - $results = DB::table('requisitions') - ->select('*')->whereNull('deleted_at') - ->where('quotation_type_id', $quotation_type_id) - ->whereRaw('FIND_IN_SET(' . $item_id . ',drug_id)') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(); - if(count($results) > 0): - foreach($results as $result): - $item_type = $request->quotation_type; - $requested_item_ids_explode = explode(",", $result->drug_id); - $quantity_requested_explode = explode(",", $result->quantity_requested); - $item_id_explode = explode(",", $result->item_ids_issued_out); - $issued_out_explode = explode(",", $result->quantity_issued); - $cost_value_explode = explode(",", $result->cost_value); - for($x = 0; $x < count($item_id_explode); $x++): - if ($item_id == $item_id_explode[$x]) { - $cost_value = isset($cost_value_explode[$x]) ? (int)$cost_value_explode[$x] : 0; - $qty_requested = $quantity_requested_explode[$x] ? (int)$quantity_requested_explode[$x] : 0; - $issued_qty = isset($issued_out_explode[$x]) ? (int)$issued_out_explode[$x] : 0; - - if(array_key_exists($item_id_explode[$x],$all_items_results)): - $all_items_results[$item_id_explode[$x]]["quantity_requested"] += $qty_requested; - $all_items_results[$item_id_explode[$x]]["quantity_issued"] += $issued_qty; - $all_items_results[$item_id_explode[$x]]["cost_value"] += $cost_value; - else: - $all_items_results[$item_id_explode[$x]]["quantity_requested"] = $qty_requested; - $all_items_results[$item_id_explode[$x]]["quantity_issued"] = $issued_qty; - $all_items_results[$item_id_explode[$x]]["cost_value"] = $cost_value; - endif; - } - endfor; - endforeach; - endif; - $ward_results = DB::table('ward_item_requests') - ->select('*')->whereNull('deleted_at') - ->where(['item_type' => $quotation_type_id, 'issued_from' => 'store']) - ->whereRaw('FIND_IN_SET(' . $item_id . ',item_ids_issued_out)') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(); - $ward_quantities_array = []; - if (count($ward_results)) { - foreach ($ward_results as $single_record) { - $ward_id = $single_record->ward_id; - $requested_item_ids_explode = explode(",", $single_record->item_ids); - $quantity_requested_explode = explode(",", $single_record->item_quantities); - $item_id_explode = explode(",", $single_record->item_ids_issued_out); - $issued_out_explode = explode(",", $single_record->quantity_issued_out); - for($x = 0; $x < count($item_id_explode); $x++){ - if ($item_id == $item_id_explode[$x]) { - if(array_key_exists($ward_id,$ward_quantities_array)): - $ward_quantities_array[$ward_id] += $issued_out_explode[$x]; - else: - $ward_quantities_array[$ward_id] = $issued_out_explode[$x]; - endif; - } - } - } - } - - return view('stores::stores.issued_items_history_cost_centres', compact('item_options', 'quotation_type_options', 'item_type', 'results', 'display', 'item_id', 'search_all_items', 'all_items_results', 'start_date_raw', 'end_date_raw', 'ward_quantities_array')); - } -} diff --git a/docker/statistics/Modules/Stores/Providers/RouteServiceProvider.php b/docker/statistics/Modules/Stores/Providers/RouteServiceProvider.php deleted file mode 100755 index edc8fb8b..00000000 --- a/docker/statistics/Modules/Stores/Providers/RouteServiceProvider.php +++ /dev/null @@ -1,68 +0,0 @@ -mapApiRoutes(); - $this->mapWebRoutes(); - } - - /** - * Define the "web" routes for the application. - * - * These routes all receive session state, CSRF protection, etc. - * - * @return void - */ - protected function mapWebRoutes() - { - Route::middleware('web') - ->namespace($this->namespace) - ->group(module_path('Stores', '/Routes/web.php')); - } - - /** - * Define the "api" routes for the application. - * - * These routes are typically stateless. - * - * @return void - */ - protected function mapApiRoutes() - { - Route::prefix('api') - ->middleware('api') - ->namespace($this->namespace) - ->group(module_path('Stores', '/Routes/api.php')); - } -} diff --git a/docker/statistics/Modules/Stores/Providers/StoresServiceProvider.php b/docker/statistics/Modules/Stores/Providers/StoresServiceProvider.php deleted file mode 100644 index 93e8714c..00000000 --- a/docker/statistics/Modules/Stores/Providers/StoresServiceProvider.php +++ /dev/null @@ -1,113 +0,0 @@ -registerTranslations(); - $this->registerConfig(); - $this->registerViews(); - $this->loadMigrationsFrom(module_path($this->moduleName, 'Database/Migrations')); - } - - /** - * Register the service provider. - * - * @return void - */ - public function register() - { - $this->app->register(RouteServiceProvider::class); - } - - /** - * Register config. - * - * @return void - */ - protected function registerConfig() - { - $this->publishes([ - module_path($this->moduleName, 'Config/config.php') => config_path($this->moduleNameLower . '.php'), - ], 'config'); - $this->mergeConfigFrom( - module_path($this->moduleName, 'Config/config.php'), $this->moduleNameLower - ); - } - - /** - * Register views. - * - * @return void - */ - public function registerViews() - { - $viewPath = resource_path('views/modules/' . $this->moduleNameLower); - - $sourcePath = module_path($this->moduleName, 'Resources/views'); - - $this->publishes([ - $sourcePath => $viewPath - ], ['views', $this->moduleNameLower . '-module-views']); - - $this->loadViewsFrom(array_merge($this->getPublishableViewPaths(), [$sourcePath]), $this->moduleNameLower); - } - - /** - * Register translations. - * - * @return void - */ - public function registerTranslations() - { - $langPath = resource_path('lang/modules/' . $this->moduleNameLower); - - if (is_dir($langPath)) { - $this->loadTranslationsFrom($langPath, $this->moduleNameLower); - $this->loadJsonTranslationsFrom($langPath); - } else { - $this->loadTranslationsFrom(module_path($this->moduleName, 'Resources/lang'), $this->moduleNameLower); - $this->loadJsonTranslationsFrom(module_path($this->moduleName, 'Resources/lang')); - } - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides() - { - return []; - } - - private function getPublishableViewPaths(): array - { - $paths = []; - foreach (\Config::get('view.paths') as $path) { - if (is_dir($path . '/modules/' . $this->moduleNameLower)) { - $paths[] = $path . '/modules/' . $this->moduleNameLower; - } - } - return $paths; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/approve_opd_item_requisitions.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/approve_opd_item_requisitions.blade.php deleted file mode 100755 index 5dc484fb..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/approve_opd_item_requisitions.blade.php +++ /dev/null @@ -1,131 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.approve_items_requisitions') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - @if(empty($quotation_results)) - - - - @else - @foreach($quotation_results as $result) - - - - - - - - - - @endforeach - @endif - -
    {{ __('stores.requisition_number') }}{{ __('stores.number_items') }}{{ __('stores.requisition_source') }}{{ __('stores.date_requested') }}{{ __('stores.requisitioned_by') }}
    {{ __('stores.no_pending_requisitions') }}
    {{ sprintf('%04u', $result->id) }} - @php - $drug_id_explode_array = explode(",", $result->drug_id); - $quantity_explode_array = explode(",", $result->quantity_requested); - @endphp - {{ !empty($quantity_explode_array) ? count(array_filter($quantity_explode_array)) : 0 }} {{get_quotation_type_name($result->quotation_type_id)}} - {{ get_requisition_origin($result->requisition_origin) }}{{ streamline_date($result->created_at) }}{{ get_full_name($result->created_by, "id", "first_name", "last_name", "users") }} - @if( Auth::user()->can('approve-opd-requisitions')) -
    -
    - - {{ __('stores.approve') }} - - - {{--
    - @csrf - - -
    --}} -
    - {{-- --}} -
    - @endif -
    - @if(Auth::user()->can('delete-store-requisition')) - {{ __('stores.cancel_requisition') }} - @endif -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/approve_purchase.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/approve_purchase.blade.php deleted file mode 100755 index 2283a8a6..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/approve_purchase.blade.php +++ /dev/null @@ -1,573 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.approve_for_purchase_camel_case') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    -
    -
    - - - {{ __('stores.note') }}: {{ __('stores.the_average_monthly_consumption_is_for_last_3_months') }}.
    -
    -
    -
    -
    -
    - {{ csrf_field() }} -
    - - - - - - - - - - - - - - - - - - @php $i=1; $amc_period = 3; @endphp - @if(!is_null($quotation_results)) - @foreach($quotation_results as $result) - @if($result->quotation_type_id == 1) - - - - - - - - - - - - - - - - @elseif($result->quotation_type_id == 2) - - - - - - - - - - - - - - - @elseif($result->quotation_type_id == 3) - - - - - - - - - - - - - - @elseif($result->quotation_type_id == 4) - - - - - - - - - - - - - - @elseif($result->quotation_type_id == 5) - - - - - - - - - - - - - - @elseif($result->quotation_type_id == 6) - - - - - - - - - - - - - - @elseif($result->quotation_type_id == 7) - - - - - - - - - - - - - - @endif - @php $i++; @endphp - @endforeach - - - - - - @else - - @endif - -
    #{{ __('stores.item_name') }}{{ __('stores.package_unit') }}{{ __('stores.no_of_package_units') }}{{ __('stores.quantity_in_each_package_unit') }}{{ __('stores.bill_per_package_unit') }}{{ __('stores.units') }}{{ __('stores.quantity_required') }}{{ __('stores.bill_per_item') }}{{ __('stores.last_cost_price') }}{{ __('stores.total_bill') }}
    {{ $i }}. - {{ get_name($result->drug_id, 'id', 'name', 'drugs') }} - @php - $stock_current_amount=track_batch_stock(1,$result->drug_id,'store_stock'); - $pharmacy_current_stock =track_batch_stock(1,$result->drug_id,'pharmacy_stock'); - $total_store_stock =$total_pharmacy_stock= 0; - foreach ($stock_current_amount as $lab) $total_store_stock += $lab->store_stock; - foreach ($pharmacy_current_stock as $la) $total_pharmacy_stock += $la->pharmacy_stock; - - @endphp -
    -
    - {{ $total_store_stock }} {{ __('stores.in_store') }} -

    -
    - {{ $total_pharmacy_stock }} {{ __('stores.in_pharmacy') }} -

    - @if (!is_null($amc_period)) -
    - {{ __('stores.average_monthly_consumption') }}: {{ get_item_average_monthly_consumption($result->quotation_type_id, $result->drug_id, $amc_period) }} -
    - @endif -
    - {{ Form::select('package_unit[]', $package_units, $result->package_unit, ['class' => 'form-control compulsory', 'required']) }} - - - - - - - - drug_id, 'id', 'form_id', 'drugs'); - ?> - {{ get_name($drug_form_int, 'id', 'name', 'unit_of_measure') }} - - - - - - - {{ ugandan_shillings_with_decimals(get_latest_unit_cost_value($result->drug_id,$result->quotation_type_id,1)) }} - -
    {{ $i }}. - {{ get_name($result->drug_id, 'id', 'name', 'sundries') }} - @php - // $stock_current_amount = get_name($result->drug_id, 'id', 'store_stock', 'sundries'); - // $pharmacy_current_stock = get_name($result->drug_id, 'id', 'pharmacy_stock', 'sundries'); - $stock_current_amount=track_batch_stock(2,$result->drug_id,'store_stock'); - $pharmacy_current_stock =track_batch_stock(2,$result->drug_id,'pharmacy_stock'); - $total_store_stock =$total_pharmacy_stock= 0; - foreach ($stock_current_amount as $lab) $total_store_stock += $lab->store_stock; - foreach ($pharmacy_current_stock as $la) $total_pharmacy_stock += $la->pharmacy_stock; - - @endphp -
    -
    - {{ $total_store_stock }} {{ __('stores.in_store') }} -

    -
    - {{ $total_pharmacy_stock }} {{ __('stores.in_pharmacy') }} -

    - @if (!is_null($amc_period)) -
    - {{ __('stores.average_monthly_consumption') }}: {{ get_item_average_monthly_consumption($result->quotation_type_id, $result->drug_id, $amc_period) }} -
    - @endif -
    - {{ Form::select('package_unit[]', $package_units, $result->package_unit, ['class' => 'form-control compulsory', 'required']) }} - - - - - - - - - - - - - - {{ ugandan_shillings_with_decimals(get_latest_unit_cost_value($result->drug_id,$result->quotation_type_id,1)) }} - -
    {{ $i }}. - {{ get_name($result->drug_id, 'id', 'name', 'dentals') }} - - {{ Form::select('package_unit[]', $package_units, $result->package_unit, ['class' => 'form-control compulsory', 'required']) }} - - - - - - - - - - - - - - {{ ugandan_shillings_with_decimals(get_latest_unit_cost_value($result->drug_id,$result->quotation_type_id,1)) }} - -
    {{ $i }}. - {{ get_name($result->drug_id, 'id', 'name', 'radiologies') }} - @php - if (track_items_using_batches()){ - $stock_current_amount=track_batch_stock(4,$result->drug_id,'store_stock'); - $imaging_current_stock =track_batch_stock(4,$result->drug_id,'lab_stock'); - $total_store_stock =$total_imaging_stock= 0; - foreach ($stock_current_amount as $lab) $total_store_stock += $lab->store_stock; - foreach ($imaging_current_stock as $la) $total_imaging_stock += $la->lab_stock; - }else{ - $total_store_stock = get_name($result->drug_id, 'id', 'store_stock', 'radiologies'); - $total_imaging_stock = get_name($result->drug_id, 'id', 'pharmacy_stock', 'radiologies'); - } - @endphp -
    -
    - {{ $total_store_stock }} {{ __('stores.in_store') }} -

    -
    - {{ $total_imaging_stock }} {{ __('stores.in_imaging') }} -

    -
    - {{ Form::select('package_unit[]', $package_units, $result->package_unit, ['class' => 'form-control compulsory', 'required']) }} - - - - - - - - - - - - - - {{ ugandan_shillings_with_decimals(get_latest_unit_cost_value($result->drug_id,$result->quotation_type_id,1)) }} - -
    {{ $i }}. - {{ get_name($result->drug_id, 'id', 'name', 'labs') }} - @php - if (track_items_using_batches()){ - $stock_current_amount=track_batch_stock(5,$result->drug_id,'store_stock'); - $lab_current_stock =track_batch_stock(5,$result->drug_id,'lab_stock'); - $total_store_stock =$total_lab_stock= 0; - foreach ($stock_current_amount as $lab) $total_store_stock += $lab->store_stock; - foreach ($lab_current_stock as $la) $total_lab_stock += $la->lab_stock; - }else{ - $total_store_stock = get_name($result->drug_id, 'id', 'store_stock', 'labs'); - $total_lab_stock = get_name($result->drug_id, 'id', 'pharmacy_stock', 'labs'); - } - @endphp -
    -
    - {{ $total_store_stock }} {{ __('stores.in_store') }} -

    -
    - {{ $total_lab_stock }} {{ __('stores.in_lab') }} -

    -
    - {{ Form::select('package_unit[]', $package_units, $result->package_unit, ['class' => 'form-control compulsory', 'required']) }} - - - - - - - - - - - - - - {{ ugandan_shillings_with_decimals(get_latest_unit_cost_value($result->drug_id,$result->quotation_type_id,1)) }} - -
    {{ $i }}. - {{ get_name($result->drug_id, 'id', 'name', 'general_items') }} - - {{ Form::select('package_unit[]', $package_units, $result->package_unit, ['class' => 'form-control compulsory', 'required']) }} - - - - - - - - - - - - - - {{ ugandan_shillings_with_decimals(get_latest_unit_cost_value($result->drug_id,$result->quotation_type_id,1)) }} - -
    {{ $i }}. - {{ get_name($result->drug_id, 'id', 'name', 'eye_glasses') }} - @php - if (track_items_using_batches()){ - $stock_current_amount=track_batch_stock(7,$result->drug_id,'store_stock'); - $pharmacy_current_stock =track_batch_stock(7,$result->drug_id,'pharmacy_stock'); - $total_store_stock =$total_pharmacy_stock= 0; - foreach ($stock_current_amount as $lab) $total_store_stock += $lab->store_stock; - foreach ($pharmacy_current_stock as $la) $total_pharmacy_stock += $la->lab_stock; - }else{ - $total_store_stock = get_name($result->drug_id, 'id', 'store_stock', 'eye_glasses'); - $total_pharmacy_stock = get_name($result->drug_id, 'id', 'pharmacy_stock', 'eye_glasses'); - } - @endphp -
    -
    - {{ $total_store_stock }} {{ __('stores.in_store') }} -

    -
    - {{ $total_pharmacy_stock }} {{ __('stores.in_pharmacy') }} -

    -
    - {{ Form::select('package_unit[]', $package_units, $result->package_unit, ['class' => 'form-control compulsory', 'required']) }} - - - - - - - - - - - - - - {{ ugandan_shillings_with_decimals( (get_latest_unit_cost_value($result->drug_id,$result->quotation_type_id,1) == 0 )? get_name($result->drug_id, 'id', 'buying_price', 'eye_glasses') : get_latest_unit_cost_value($result->drug_id,$result->quotation_type_id,1)) }} - -
    {{ __('stores.total_bill') }} - -
    {{ __('stores.no_records') }}
    -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - @php - $memo = get_name($quotation_number, 'quotation_number', 'memo', $table_quotations) - @endphp - @if (!is_null($memo)) - - - @endif -
    {{ __('stores.total_bill') }}
    {{ __('stores.quotation_number') }}# {{ sprintf('%04u', $quotation_number) }}
    {{ __('stores.supplier') }}{!! supplier_address($supplier_id) !!}
    {{ __('stores.supplier_reference') }}{!! $supplier_reference !!}
    {{ __('stores.expected_date') }}{{ streamline_date(get_name($quotation_number, 'quotation_number', 'expected_date', $table_quotations)) }}
    {{ __('stores.quotation_by') }} - {{ get_name(get_name($quotation_number, 'quotation_number', 'quotation_user', $table_quotations), "id", "first_name", "users") }} - {{ get_name(get_name($quotation_number, 'quotation_number', 'quotation_user', $table_quotations), "id", "last_name", "users") }} -
    {{ __('stores.memo') }}: - {{ $memo }} -
    -
    - -
    - - {{-- --}} -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/average_monthly_consumption.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/average_monthly_consumption.blade.php deleted file mode 100755 index 9e265acb..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/average_monthly_consumption.blade.php +++ /dev/null @@ -1,218 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.average_monthly_drug_consumption') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -

    {{ __('stores.average_monthly_drug_consumption') }}

    - -
    -
    - {{ __('stores.show_consumption_for_the_month_of') }}   -
    -
    - {{ Form::open(['url' => 'average_monthly_consumption','data-toggle'=>'validator']) }} - {{ Form::label('start_date',__('stores.date_from')) }} -
    -
    -
    - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-from']) }} - -
    -
    -
    - {{ Form::label('end_date',__('stores.date_to')) }} -
    -
    -
    - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-to']) }} - -
    -
    -
    - {{ Form::submit(__('stores.search'),['name' => 'filterBtn','class' => 'btn btn-success']) }} - {{ Form::close() }} -
    -
    -
    - -
    - -
    - @php $counter = 0; @endphp - @foreach($month_consumption_array as $month_year_period => $drug_consumption_values_array) - {{ __('stores.consumption_for') }} {{ $month_year_period}}
    - - - - -
    - @php - $graph_to_render = "graph{$counter}"; - - $$graph_to_render = drawBarChart($top_10_consumed_array, $graph_to_render); - @endphp - - {!! is_null($$graph_to_render) ? "" : $$graph_to_render->render() !!} -
    - -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - - - - - - - @php $total_sell_price = 0; @endphp - - @foreach($drug_consumption_values_array as $drug_id => $drug_quantity) - - - - @php - $consumed_qty = (int)$drug_quantity; - $non_insured_price = get_name($drug_id, "id", "non_insured_price", "drugs"); - $sell_value = is_int($non_insured_price) ? ($consumed_qty * $non_insured_price) : 0; - @endphp - - - - @endforeach - - - - - - - -
    {{ __('stores.drug') }}{{ __('stores.quantity_consumed') }}{{ __('stores.sell_value') }}
    {{ get_name($drug_id, "id", "name", "drugs") }}{{ $drug_quantity }}{{ ugandan_shillings($sell_value) }} - @php $total_sell_price += (int)$sell_value; @endphp - {{ Form::open(['url' => 'average_monthly_consumption_details']) }} - {{ Form::hidden('drug_id', $drug_id) }} - {{ Form::hidden('month_year', $month_year_period) }} - {{ Form::hidden('total_consumption', $drug_quantity) }} - {{ Form::submit('Details', ['class' => 'btn btn-success']) }} - {{ Form::close() }} -
    {{ __('stores.total_value') }}{{ ugandan_shillings($total_sell_price) }}
    - @php $counter++; @endphp -
    - @endforeach -
    -
    -
    -
    -@endsection - -@php -function drawBarChart($sorted_associative_array, $graph_to_render) -{ - $drug_ids_array = array_keys($sorted_associative_array); - $drug_names_array = []; - for ($i=0; $i < count($drug_ids_array) ; $i++) { - $drug_name = get_name($drug_ids_array[$i], 'id', 'name', 'drugs'); - array_push($drug_names_array, $drug_name); - } - $consumed_quantities_array = array_values($sorted_associative_array); - - $chartjs = null; - - $chartjs = app()->chartjs - ->name('barChartTest'.$graph_to_render) - ->type('bar') - ->size(['width' => 400, 'height' => 200]) - ->labels($drug_names_array) - ->datasets([ - [ - "label" => "Most consumed drugs", - 'backgroundColor' => '#90e0f0', - 'data' => $consumed_quantities_array - ] - ]) - ->optionsRaw([ - 'scales' => [ - 'yAxes' => [ - [ - 'ticks' => [ - 'beginAtZero' => true, - ], - ], - ], - 'xAxes' => [ - [ - 'ticks' => [ - 'autoSkip' => false - ], - ] - ] - ] - ]) - ->options([]); - - return $chartjs; -} -@endphp - -@push('scripts') - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/average_monthly_consumption_details.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/average_monthly_consumption_details.blade.php deleted file mode 100755 index ae2d405b..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/average_monthly_consumption_details.blade.php +++ /dev/null @@ -1,78 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.average_monthly_drug_consumption') }}

    -
    - -
    - -
    -
    - - @include('flash::message') -
    -
    -
    - {!! isset($display) ? ''.$display.'' : '' !!} -
    -
    - -
    -
    - {!! $chartjs->render() !!} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/bill_items.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/bill_items.blade.php deleted file mode 100755 index 8fed3bc5..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/bill_items.blade.php +++ /dev/null @@ -1,449 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.bill_for') }} {{ $quotation_types_array[$item_type] }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    -
    - - {{ csrf_field() }} -
    - - - - - - - - - - - - - - - - - - @php $i=1; @endphp - @if(!is_null($results)) - @foreach($results as $result) - @if($result->quotation_type_id == 1) - - - - - - - - - - - - - - @elseif($result->quotation_type_id == 2) - - - - - - - - - - - - - - @elseif($result->quotation_type_id == 3) - - - - - - - - - - - - - - @elseif($result->quotation_type_id == 4) - - - - - - - - - - - - - - @elseif($result->quotation_type_id == 5) - - - - - - - - - - - - - - @elseif($result->quotation_type_id == 6) - - - - - - - - - - - - - - @elseif($result->quotation_type_id == 7) - - - - - - - - - - - - - - @endif - @php $i++; @endphp - @endforeach - - - - - - @else - - @endif - -
    #{{ __('stores.item_name') }}{{ __('stores.package_unit') }}{{ __('stores.no_of_package_units') }}{{ __('stores.quantity_in_each_package_unit') }}{{ __('stores.bill_per_package_unit') }}{{ __('stores.quantity') }}{{ __('stores.units') }}{{ __('stores.bill_per_item') }}{{ __('stores.last_cost_price') }}{{ __('stores.total_bill') }}
    {{ $i }}. - {{ get_name($result->drug_id, 'id', 'name', 'drugs') }} - - {{ Form::select('package_unit[]', $package_units, $result->package_unit, ['class' => 'form-control compulsory', 'required']) }} - - - - - - - - - - drug_id, 'id', 'form_id', 'drugs'); - ?> - {{ get_name($drug_form_int, 'id', 'name', 'unit_of_measure') }} - - - - - {{ ugandan_shillings(get_latest_unit_cost_value($result->drug_id,$result->quotation_type_id,1)) }} - -
    {{ $i }}. - {{ get_name($result->drug_id, 'id', 'name', 'sundries') }} - - {{ Form::select('package_unit[]', $package_units, $result->package_unit, ['class' => 'form-control compulsory', 'required']) }} - - - - - - - - - - - - - - {{ ugandan_shillings(get_latest_unit_cost_value($result->drug_id,$result->quotation_type_id,1)) }} - -
    {{ $i }}. - {{ get_name($result->drug_id, 'id', 'name', 'dentals') }} - - {{ Form::select('package_unit[]', $package_units, $result->package_unit, ['class' => 'form-control compulsory', 'required']) }} - - - - - - - - - - - - - - {{ ugandan_shillings(get_latest_unit_cost_value($result->drug_id,$result->quotation_type_id,1)) }} - -
    {{ $i }}. - {{ get_name($result->drug_id, 'id', 'name', 'radiologies') }} - - {{ Form::select('package_unit[]', $package_units, $result->package_unit, ['class' => 'form-control compulsory', 'required']) }} - - - - - - - - - - - - - - {{ ugandan_shillings(get_latest_unit_cost_value($result->drug_id,$result->quotation_type_id,1)) }} - -
    {{ $i }}. - {{ get_name($result->drug_id, 'id', 'name', 'labs') }} - - {{ Form::select('package_unit[]', $package_units, $result->package_unit, ['class' => 'form-control compulsory', 'required']) }} - - - - - - - - - - - - - - {{ ugandan_shillings(get_latest_unit_cost_value($result->drug_id,$result->quotation_type_id,1)) }} - -
    {{ $i }}. - {{ get_name($result->drug_id, 'id', 'name', 'general_items') }} - - {{ Form::select('package_unit[]', $package_units, $result->package_unit, ['class' => 'form-control compulsory', 'required']) }} - - - - - - - - - - - - - - {{ ugandan_shillings(get_latest_unit_cost_value($result->drug_id,$result->quotation_type_id,1)) }} - -
    {{ $i }}. - {{ get_name($result->drug_id, 'id', 'name', 'eye_glasses') }} - - {{ Form::select('package_unit[]', $package_units, $result->package_unit, ['class' => 'form-control compulsory', 'required']) }} - - - - - - - - - - - - - - {{ ugandan_shillings( (get_latest_unit_cost_value($result->drug_id,$result->quotation_type_id,1) == 0 )? get_name($result->drug_id, 'id', 'buying_price', 'eye_glasses') : get_latest_unit_cost_value($result->drug_id,$result->quotation_type_id,1)) }} - -
    {{ __('stores.total_bill') }} - -
    {{ __('stores.no_records') }}
    -
    -
    - -
    - - - - - - - - - - - - - - - - - - - - - - @php - $memo = get_name($quotation_number, 'quotation_number', 'memo', 'quotations'); - @endphp - @if (!is_null($memo)) - - - - - @endif -
    {{ __('stores.total_bill') }}
    {{ __('stores.quotation_number') }}.{{ sprintf('%04u', $quotation_number) }}
    {{ __('stores.supplier') }}{!! supplier_address($supplier_id) !!}
    {{ __('stores.supplier_reference') }}
    {{ __('stores.expected_date') }}{{ streamline_date(get_name($quotation_number, 'quotation_number', 'expected_date', 'quotations')) }}
    {{ __('stores.memo') }}:{{ $memo }}
    - -
    - -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/confirm_items_receipt.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/confirm_items_receipt.blade.php deleted file mode 100755 index 041c8147..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/confirm_items_receipt.blade.php +++ /dev/null @@ -1,593 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.confirm_items_receipt') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    -
    - - {{ csrf_field() }} - -


    -
    - - - - {{-- --}} - - - - - - - - - @if($item_type == 1 && show_drug_brand_name())@endif - - - - - @php $i=1; @endphp - @if(!is_null($results)) - @foreach($results as $result) - @if($result->quotation_type_id == 1) - - {{-- --}} - - - - - - - - - @if(show_drug_brand_name()) - - @endif - - - - - - - @elseif($result->quotation_type_id == 2) - - - - - - - - - - - - - - - - - @elseif($result->quotation_type_id == 3) - - - - - - - - - - - - - - @elseif($result->quotation_type_id == 4) - - - - - - - - - - - - - - - - - - - @elseif($result->quotation_type_id == 5) - - - - - - - - - - - - - - - - - @elseif($result->quotation_type_id == 6) - - - - - - - - - - - - - - @elseif($result->quotation_type_id == 7) - - - - - - - - - - - - - - - - - - @endif - @php $i++; @endphp - @endforeach - @else - - @endif - -
    #{{ get_name($item_type, 'id', 'name', 'quotation_types') }}{{ __('stores.package_unit') }}{{ __('stores.no_of_package_units') }}{{ __('stores.bill_per_package_unit') }}{{ __('stores.quantity_in_each_package_unit') }}{{ __('stores.total') }} {{ __('stores.quantity') }}{{ __('stores.bill_per_item') }}{{ __('stores.batch_no') }}{{ __('stores.brand_name') }}{{ __('stores.expiry_date') }}
    - {{ $i }}. --}} - - {{-- - {{ get_name($result->drug_id, "id", "name", "drugs") }} - - {{ Form::select('package_unit[]', $package_units, $result->package_unit ? $result->package_unit : 1, ['class' => 'form-control compulsory', 'required', 'id' => 'item_package_'.$result->drug_id]) }} - - - - can('edit-bill-per-package-unit') ) @else readonly @endif> - - can('edit-quatity-per-package-unit') ) @else readonly @endif> - - - - - - - - - - - -
    - {{ Form::text('expiry_date[]','',['class' => 'form-control compulsory datepicker-autoclose', 'required','readonly']) }} - -
    - {{ __('stores.add_batch_of') }} {{ get_name($result->drug_id, "id", "name", "drugs") }} -
    - {{ get_name($result->drug_id, "id", "name", "sundries") }} - - {{ Form::select('package_unit[]', $package_units, $result->package_unit, ['class' => 'form-control compulsory', 'required', 'id' => 'item_package_'.$result->drug_id]) }} - - - - can('edit-bill-per-package-unit') ) @else readonly @endif> - - can('edit-quatity-per-package-unit') ) @else readonly @endif> - - - - - - - - - -
    - {{ Form::text('expiry_date[]','',['class' => 'form-control compulsory datepicker-autoclose', 'required','readonly']) }} - -
    - {{ __('stores.add_batch_of') }} {{ get_name($result->drug_id, "id", "name", "sundries") }} -
    - {{ get_name($result->drug_id, "id", "name", "dentals") }} - - {{ Form::select('package_unit[]', $package_units, $result->package_unit, ['class' => 'form-control compulsory', 'required', 'id' => 'item_package_'.$result->drug_id]) }} - - - - can('edit-bill-per-package-unit') ) @else readonly @endif> - - can('edit-quatity-per-package-unit') ) @else readonly @endif> - - - - - - - - - -
    - {{ Form::text('expiry_date[]','',['class' => 'form-control compulsory datepicker-autoclose', 'required','readonly']) }} - -
    -
    - {{ get_name($result->drug_id, "id", "name", "radiologies") }} - - {{ Form::select('package_unit[]', $package_units, $result->package_unit, ['class' => 'form-control compulsory', 'required', 'id' => 'item_package_'.$result->drug_id]) }} - - - - can('edit-bill-per-package-unit') ) @else readonly @endif> - - can('edit-quatity-per-package-unit') ) @else readonly @endif> - - - - - - - - - -
    - {{ Form::text('expiry_date[]','',['class' => 'form-control compulsory datepicker-autoclose', 'required','readonly']) }} - -
    - {{ __('stores.add_batch_of') }} {{ get_name($result->drug_id, "id", "name", "radiologies") }} -
    - {{ get_name($result->drug_id, "id", "name", "labs") }} - - {{ Form::select('package_unit[]', $package_units, $result->package_unit, ['class' => 'form-control compulsory', 'required', 'id' => 'item_package_'.$result->drug_id]) }} - - - - can('edit-bill-per-package-unit') ) @else readonly @endif> - - can('edit-quatity-per-package-unit') ) @else readonly @endif> - - - - - - - - - -
    - {{ Form::text('expiry_date[]','',['class' => 'form-control compulsory datepicker-autoclose', 'required','readonly']) }} - -
    - {{ __('stores.add_batch_of') }} {{ get_name($result->drug_id, "id", "name", "labs") }} -
    - {{ get_name($result->drug_id, "id", "name", "general_items") }} - - {{ Form::select('package_unit[]', $package_units, $result->package_unit ? $result->package_unit : 1, ['class' => 'form-control compulsory', 'required', 'id' => 'item_package_'.$result->drug_id]) }} - - - - can('edit-bill-per-package-unit') ) @else readonly @endif> - - can('edit-quatity-per-package-unit') ) @else readonly @endif> - - - - - - - - {{-- --}} - - -
    - {{ Form::text('expiry_date[]','',['class' => 'form-control compulsory datepicker-autoclose', 'required','readonly']) }} - -
    -
    - {{ get_name($result->drug_id, "id", "name", "eye_glasses") }} - - {{ Form::select('package_unit[]', $package_units, $result->package_unit, ['class' => 'form-control compulsory', 'required', 'id' => 'item_package_'.$result->drug_id]) }} - - - - can('edit-bill-per-package-unit') ) @else readonly @endif> - - can('edit-quatity-per-package-unit') ) @else readonly @endif> - - - - - - - - - -
    - {{ Form::text('expiry_date[]','',['class' => 'form-control compulsory datepicker-autoclose', 'required','readonly']) }} - -
    - {{ __('stores.add_batch_of') }} {{ get_name($result->drug_id, "id", "name", "eye_glasses") }} -
    {{ __('stores.no_records') }}
    -
    -
    -
    - -

    - -
    -
    - - - - - - - - - @php - $supplier_id = get_name($quotation_number, 'quotation_number', 'supplier_id', 'quotations'); - @endphp - - - - - - - - - - - - - - - - - - -
    {{ __('stores.quotation_number') }}# {{ sprintf('%04u', $quotation_number) }}
    {{ __('stores.supplier') }}{!! supplier_address($supplier_id) !!}
    {{ __('stores.grand_total') }}{{ ugandan_shillings_with_decimals($total_price) }}
    {{ __('stores.expected_date') }}{{ streamline_date(get_name($quotation_number, 'quotation_number', 'expected_date', 'quotations')) }}
    {{ __('stores.received_total') }}
    {{ __('stores.received_on') }} -
    - {{ Form::text('received_on_date', Carbon\Carbon::parse(Carbon\Carbon::now())->format('d/m/Y'),['class' => 'form-control compulsory', 'required','readonly','id' => 'datepicker-autoclose1']) }} - -
    -
    - -
    - -
    -
    -
    -
    -
    - {{ Form::label('receiver_comment', __('stores.receiver_comment'), ['style' => 'font-size: bolder; font-weight: 600']) }} - {{ Form::textarea('receiver_comment',null,['class'=>'form-control', 'rows' => 5, 'cols' => 20]) }} -
    -
    -
    -
    -
    -
    -
    -@php - $quotation_id = $result->id; -@endphp -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/daily_stock_value_report.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/daily_stock_value_report.blade.php deleted file mode 100755 index cec9e85a..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/daily_stock_value_report.blade.php +++ /dev/null @@ -1,640 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('stores.stock_value_report') }}

    -
    - -
    - -
    -
    - -
    - {{ Form::open(['route' => 'stores.daily_stock_value_report' , 'data-toggle' => 'validator']) }} - -
    -
    - {{--
    -
    - {{ Form::label('item_type', __('stores.select_item')) }} - {{ Form::select('item_type', $item_types, 0,['class' => 'form-control compulsory', 'required']) }} -
    -
    --}} - -
    -
    - {{ Form::label('date_to_search',__('stores.date')) }} - {{ Form::text('date_to_search','',['class' => 'form-control compulsory', 'required','readonly','id'=>'date_to_search']) }} - -
    - -
    -
    -
    - {{ Form::button(__('stores.search'),['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    - -
    -
    - - {{ Form::close() }} - -
    - -
    - - {{ $search_text }} -

    -
    -
    -
    -
    - {{ Form::open(['route' => 'stores.daily_stock_value_report' , 'method' => 'POST']) }} - - - - {{ Form::close() }} -
    -
    - {{ Form::open(['route' => 'stores.daily_stock_value_report' , 'method' => 'POST']) }} - - - - {{ Form::close() }} -
    -
    - {{ Form::open(['route' => 'stores.daily_stock_value_report' , 'method' => 'POST']) }} - - - - {{ Form::close() }} -
    -
    - {{ Form::open(['route' => 'stores.daily_stock_value_report' , 'method' => 'POST']) }} - - - - {{ Form::close() }} -
    -
    - {{ Form::open(['route' => 'stores.daily_stock_value_report' , 'method' => 'POST']) }} - - - - {{ Form::close() }} -
    -
    -
    -
    - - -
    - @if ($item_type == 1) -
    -
    - - - - - - - - - - - - - - - - - - - - - @foreach($items as $item) - @if($item['batch_number'] !='N/A') - - - - - - - - - - - - - - - @endif - @endforeach - - -
    {{ __('stores.item_name') }}{{ __('stores.store_stock') }}{{ __('stores.pharmacy_stock') }}{{ __('stores.ward_stock') }}{{ __('stores.buying_price') }}{{ __('stores.selling_price') }}{{ __('stores.pharmacy_cost_value') }}{{ __('stores.pharmacy_selling_value') }}{{ __('stores.store_cost_value') }}{{ __('stores.store_selling_value') }}{{ __('stores.ward_cost_value') }}{{ __('stores.ward_selling_value') }}
    - - {{ $item["item_name"] }} - - @if (in_array($item["item_type"], ["Drugs"])) - -
    - - Batch: {{ $item["batch_number"] ?? "" }} - - @endif - -
    {{ $item["store_stock"] }}{{ $item["pharmacy_stock"] }}{{ $item["ward_stock"] }}{{ ugandan_shillings($item["buying_price"]) }}{{ ugandan_shillings($item["selling_price"]) }}{{ ugandan_shillings($item["buying_price"] * $item["pharmacy_stock"]) }}{{ ugandan_shillings($item["pharmacy_value"]) }}{{ ugandan_shillings($item["buying_price"] * $item["store_stock"]) }}{{ ugandan_shillings($item["store_value"]) }}{{ ugandan_shillings($item["buying_price"] * $item["ward_stock"]) }}{{ ugandan_shillings($item["ward_value"]) }}
    - -
    - -
    - @elseif($item_type == 2) -
    -
    - - - - - - - - - - - - - - - - - - - @foreach($items as $item) - @if($item['batch_number'] !='N/A') - - - - - - - - - - - - - - - @endif - @endforeach - -
    {{ __('stores.item_name') }}{{ __('stores.store_stock') }}{{ __('stores.pharmacy_stock') }}{{ __('stores.ward_stock') }}{{ __('stores.buying_price') }}{{ __('stores.selling_price') }}{{ __('stores.pharmacy_cost_value') }}{{ __('stores.pharmacy_selling_value') }}{{ __('stores.store_cost_value') }}{{ __('stores.store_selling_value') }}{{ __('stores.ward_cost_value') }}{{ __('stores.ward_selling_value') }}
    - {{ $item["item_name"] }} -
    - Batch: {{ $item["batch_number"] ?? "" }} -
    {{ $item["store_stock"] }}{{ $item["pharmacy_stock"] }}{{ $item["ward_stock"] }}{{ ugandan_shillings($item["buying_price"]) }}{{ ugandan_shillings($item["selling_price"]) }}{{ ugandan_shillings($item["buying_price"] * $item["pharmacy_stock"]) }}{{ ugandan_shillings($item["pharmacy_value"]) }}{{ ugandan_shillings($item["buying_price"] * $item["store_stock"]) }}{{ ugandan_shillings($item["store_value"]) }}{{ ugandan_shillings($item["buying_price"] * $item["ward_stock"]) }}{{ ugandan_shillings($item["ward_value"]) }}
    -
    -
    - @elseif($item_type == 5) -
    -
    - - - - - - - - - - - - - @foreach($items as $item) - @if($item["batch_number"] != 'N/A') - - - - - - - - - @endif - @endforeach - -
    {{ __('stores.item_name') }}{{ __('stores.store_stock') }}{{ __('stores.lab_stock') }}{{ __('stores.buying_price') }}{{ __('stores.lab_cost_value') }}{{ __('stores.store_cost_value') }}
    - {{ $item["item_name"] }} -
    - Batch: {{ $item["batch_number"] ?? "" }} - -
    {{ $item["store_stock"] }}{{ $item["lab_stock"] }}{{ ugandan_shillings($item["buying_price"]) }}{{ ugandan_shillings($item["buying_price"] * $item["lab_stock"]) }}{{ ugandan_shillings($item["buying_price"] * $item["store_stock"]) }}
    -
    -
    - @elseif($item_type == 4) -
    -
    - - - - - - - - - - - - - @foreach($items as $item) - @if($item["batch_number"] != 'N/A') - - - - - - - - - @endif - @endforeach - -
    {{ __('stores.item_name') }}{{ __('stores.store_stock') }}{{ __('stores.imaging_stock') }}{{ __('stores.buying_price') }}{{ __('stores.lab_cost_value') }}{{ __('stores.store_cost_value') }}
    - {{ $item["item_name"] }} -
    - Batch: {{ $item["batch_number"] ?? "" }} -
    {{ $item["store_stock"] }}{{ $item["lab_stock"] }}{{ ugandan_shillings($item["buying_price"]) }}{{ ugandan_shillings($item["buying_price"] * $item["lab_stock"]) }}{{ ugandan_shillings($item["buying_price"] * $item["store_stock"]) }}
    -
    -
    - @elseif($item_type == 6) -
    -
    - - - - - - - - - - - - - - - - - - @foreach($items as $item) - - - - - - - - - - - - - @endforeach - -
    {{ __('stores.item_name') }}{{ __('stores.store_stock') }}{{ __('stores.pharmacy_stock') }}{{ __('stores.buying_price') }}{{ __('stores.selling_price') }}{{ __('stores.pharmacy_cost_value') }}{{ __('stores.pharmacy_selling_value') }}{{ __('stores.store_cost_value') }}{{ __('stores.store_selling_value') }}
    - {{ $item["item_name"] }} - - {{ $item["store_stock"] }}{{ $item["pharmacy_stock"] }}{{ ugandan_shillings($item["buying_price"]) }}{{ ugandan_shillings($item["selling_price"]) }}{{ ugandan_shillings($item["buying_price"] * $item["pharmacy_stock"]) }}{{ ugandan_shillings($item["pharmacy_value"]) }}{{ ugandan_shillings($item["buying_price"] * $item["store_stock"]) }}{{ ugandan_shillings($item["store_value"]) }}
    -
    -
    - @endif - -
    -
    -
    - @if ($item_type == 1) - @if(count($total) > 0 ) -
    -

    {{ __('stores.drugs_total_value') }}

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('stores.pharmacy_stock_selling_value') }}{{ ugandan_shillings($total['total_drugs_pharmacy_value'] ) }}
    {{ __('stores.ward_stock_selling_value') }}{{ ugandan_shillings($total['total_drugs_ward_value']) }}
    {{ __('stores.store_stock_selling_value') }}{{ ugandan_shillings($total['total_drugs_stock_value']) }}
    {{ __('stores.total_stock_selling_value') }}{{ ugandan_shillings($total['total_drugs_stock_value']+ $total['total_drugs_pharmacy_value']+$total['total_drugs_ward_value']) }}
    {{ __('stores.pharmacy_stock_cost_value') }}{{ ugandan_shillings($total['total_drugs_pharmacy_cost_value']) }}
    {{ __('stores.ward_stock_cost_value') }}{{ ugandan_shillings($total['total_drugs_ward_cost_value']) }}
    {{ __('stores.store_stock_cost_value') }}{{ ugandan_shillings($total['total_drugs_store_cost_value']) }}
    {{ __('stores.total_stock_cost_value') }}{{ ugandan_shillings($total['total_drugs_store_cost_value'] +$total['total_drugs_pharmacy_cost_value'] +$total['total_drugs_ward_cost_value']) }}
    - -
    - @endif - @elseif($item_type == 2) - @if(count($total) > 0 ) -
    -

    {{ __('stores.sundries_total_value') }}

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('stores.pharmacy_stock_selling_value') }}{{ ugandan_shillings($total['total_sundries_pharmacy_value']) }}
    {{ __('stores.ward_stock_selling_value') }}{{ ugandan_shillings($total['total_sundries_ward_value']) }}
    {{ __('stores.store_stock_selling_value') }}{{ ugandan_shillings($total['total_sundries_stock_value']) }}
    {{ __('stores.total_stock_selling_value') }}{{ ugandan_shillings($total['total_sundries_stock_value'] + $total['total_sundries_pharmacy_value']+$total['total_sundries_ward_value']) }}
    {{ __('stores.pharmacy_stock_cost_value') }}{{ ugandan_shillings($total['total_sundries_pharmacy_cost_value']) }}
    {{ __('stores.ward_stock_cost_value') }}{{ ugandan_shillings($total['total_sundries_ward_cost_value']) }}
    {{ __('stores.store_stock_cost_value') }}{{ ugandan_shillings($total['total_sundries_store_cost_value']) }}
    {{ __('stores.total_stock_cost_value') }}{{ ugandan_shillings($total['total_sundries_store_cost_value'] + $total['total_sundries_pharmacy_cost_value']+$total['total_sundries_ward_cost_value']) }}
    -
    - @endif - @elseif($item_type == 5) - @if(count($total) > 0 ) -
    -

    {{ __('stores.labs_total_value') }}

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('stores.labs_stock_selling_value') }}{{ ugandan_shillings($total['total_labs_lab_value']) }}
    {{ __('stores.store_stock_selling_value') }}{{ ugandan_shillings($total['total_labs_stock_value']) }}
    {{ __('stores.total_stock_selling_value') }}{{ ugandan_shillings($total['total_labs_stock_value'] + $total['total_labs_lab_value']) }}
    {{ __('stores.labs_stock_cost_value') }}{{ ugandan_shillings($total['total_labs_lab_cost_value']) }}
    {{ __('stores.store_stock_cost_value') }}{{ ugandan_shillings($total['total_labs_store_cost_value']) }}
    {{ __('stores.total_stock_cost_value') }}{{ ugandan_shillings($total['total_labs_store_cost_value'] + $total['total_labs_lab_cost_value']) }}
    - -
    - @endif - @elseif($item_type == 4) - @if(count($total) > 0 ) -
    -

    {{ __('stores.radiologies_total_value') }}

    - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('stores.imaging_stock_selling_value') }}{{ ugandan_shillings($total['total_radiology_lab_value']) }}
    {{ __('stores.store_stock_selling_value') }}{{ ugandan_shillings($total['total_radiology_stock_value']) }}
    {{ __('stores.total_stock_selling_value') }}{{ ugandan_shillings($total['total_radiology_stock_value'] + $total['total_radiology_lab_value']) }}
    {{ __('stores.imaging_stock_cost_value') }}{{ ugandan_shillings($total['total_radiology_lab_cost_value']) }}
    {{ __('stores.store_stock_cost_value') }}{{ugandan_shillings($total['total_radiology_store_cost_value']) }}
    {{ __('stores.total_stock_cost_value') }}{{ ugandan_shillings($total['total_radiology_lab_cost_value'] + $total['total_radiology_store_cost_value']) }}
    -
    - @endif - @elseif($item_type == 6) - @if(count($total) > 0 ) -
    - -

    {{ __('stores.general_items_total_value') }}

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('stores.pharmacy_stock_selling_value') }}{{ ugandan_shillings($total['total_general_items_pharmacy_value']) }}
    {{ __('stores.store_stock_selling_value') }}{{ ugandan_shillings($total['total_general_items_stock_value']) }}
    {{ __('stores.total_stock_selling_value') }}{{ ugandan_shillings($total['total_general_items_stock_value'] + $total['total_general_items_pharmacy_value']) }}
    {{ __('stores.pharmacy_stock_cost_value') }}{{ ugandan_shillings($total['total_general_items_pharmacy_cost_value']) }}
    {{ __('stores.store_stock_cost_value') }}{{ ugandan_shillings($total['total_general_items_store_cost_value']) }}
    {{ __('stores.total_stock_cost_value') }}{{ ugandan_shillings($total['total_general_items_store_cost_value'] + $total['total_general_items_pharmacy_cost_value']) }}
    - -
    - @endif - @elseif($item_type == 7) - @if(count($total) > 0 ) - @if(is_eye_module_enabled()) -
    -

    {{ __('stores.optical_items_total_value') }}

    - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('stores.pharmacy_stock_value') }}{{ ugandan_shillings(0) }}
    {{ __('stores.store_stock_value') }}{{ ugandan_shillings($total['total_optical_items_stock_value']) }}
    {{ __('stores.total_stock_value') }}{{ ugandan_shillings($total['total_general_items_stock_value'] + 0) }}
    - -
    - @endif - @endif - @endif - -
    - -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/drugs_issued_to_pharmacy_details.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/drugs_issued_to_pharmacy_details.blade.php deleted file mode 100755 index 479c5d8a..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/drugs_issued_to_pharmacy_details.blade.php +++ /dev/null @@ -1,221 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@include('flash::message') - -@section('content') -
    -
    -

    {{ __('stores.items_issued_to_pharmacy') }}

    -
    -
    - -
    -
    - - -
    -
    -
    -
    -
    -
    -
    - - - - - - - - - - - - - - @php $i = 1; $grand_total = 0; $grand_cost_total = 0; @endphp - @if(count($results) > 0) - @foreach($results as $result) - @if($result->quotation_type_id == 1) - @php - $drug_id_explode = explode(",", $result->drug_id); - $quantity_explode = explode(",", $result->quantity_requested); - $per_drug = explode(",", $result->per_drug); - $issued_out_explode = explode(",", $result->quantity_issued); - - @endphp - - @for($x = 0; $x < count($drug_id_explode); $x++) - - - - - - - - - - @php - $i++; - $issue_out_quantity = (isset($issued_out_explode[$x]) && is_numeric($issued_out_explode[$x])) ? $issued_out_explode[$x] : 0; - - $item_id_cost_price = isset($drug_id_explode[$x]) ? get_name($drug_id_explode[$x], 'id', 'cost_price', 'drugs') : 0; - - $item_id_selling_price = isset($drug_id_explode[$x]) ? get_name($drug_id_explode[$x], 'id', 'non_insured_price', 'drugs') : 0; - - $grand_cost_total += $issue_out_quantity * (int)$item_id_cost_price; - $grand_total += $issue_out_quantity * (int)$item_id_selling_price; - @endphp - @endfor - @elseif($result->quotation_type_id == 2) - @php - $drug_id_explode = explode(",", $result->drug_id); - $quantity_explode = explode(",", $result->quantity_requested); - $per_drug = explode(",", $result->per_drug); - $issued_out_explode = explode(",", $result->quantity_issued); - @endphp - - @for($x = 0; $x < count($drug_id_explode); $x++) - - - - - - - - - - @php - $i++; - - $issue_out_quantity = (isset($issued_out_explode[$x]) && is_numeric($issued_out_explode[$x])) ? $issued_out_explode[$x] : 0; - - $item_id_cost_price = isset($drug_id_explode[$x]) ? get_name($drug_id_explode[$x], 'id', 'cost_price', 'sundries') : 0; - - $item_id_selling_price = isset($drug_id_explode[$x]) ? get_name($drug_id_explode[$x], 'id', 'non_insured_price', 'sundries') : 0; - - $grand_cost_total += $issue_out_quantity * (int)$item_id_cost_price; - $grand_total += $issue_out_quantity * (int)$item_id_selling_price; - @endphp - @endfor - @endif - @endforeach - - - - @else - - @endif - -
    #{{ __('stores.item_name') }}{{ __('stores.quantity_request') }}{{ __('stores.quantity_issued') }}{{ __('stores.cost_price') }}{{ __('stores.sell_value') }}{{ __('stores.issued_on') }}
    {{ $i }} {{ get_name($drug_id_explode[$x], 'id', 'name', 'drugs') }} {{ isset($quantity_explode[$x]) ? $quantity_explode[$x] : "" }}{{ isset($issued_out_explode[$x]) ? $issued_out_explode[$x] : "" }}{{ (isset($issued_out_explode[$x]) && is_numeric($issued_out_explode[$x]) && is_numeric($drug_id_explode[$x])) ? ugandan_shillings($issued_out_explode[$x] * get_name($drug_id_explode[$x], 'id', 'cost_price', 'drugs')) : 0 }}{{ (isset($issued_out_explode[$x]) && is_numeric($issued_out_explode[$x]) && is_numeric($drug_id_explode[$x])) ? ugandan_shillings($issued_out_explode[$x] * get_name($drug_id_explode[$x], 'id', 'non_insured_price', 'drugs')) : 0 }}{{ streamline_date($result->issued_on) }}
    {{ $i }} {{ get_name($drug_id_explode[$x], 'id', 'name', 'sundries') }} {{ isset($quantity_explode[$x]) ? $quantity_explode[$x] : "" }}{{ isset($issued_out_explode[$x]) ? $issued_out_explode[$x] : "" }}{{ (isset($issued_out_explode[$x]) && is_numeric($issued_out_explode[$x]) && is_numeric($drug_id_explode[$x])) ? ugandan_shillings($issued_out_explode[$x] * get_name($drug_id_explode[$x], 'id', 'cost_price', 'sundries')) : 0 }}{{ (isset($issued_out_explode[$x]) && is_numeric($issued_out_explode[$x]) && is_numeric($drug_id_explode[$x])) ? ugandan_shillings($issued_out_explode[$x] * get_name($drug_id_explode[$x], 'id', 'non_insured_price', 'sundries')) : 0 }}{{ streamline_date($result->issued_on) }}
    {{ __('stores.total_amount') }}{{ ugandan_shillings($grand_cost_total) }}{{ ugandan_shillings($grand_total) }}
    {{ __('stores.No records') }}
    -
    -
    - -
    -
    -
    -
    -
    -@endsection - - -@push('scripts') - - - - - - - - - - - - -@endpush - - - - diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/drugs_issued_to_pharmacy_report.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/drugs_issued_to_pharmacy_report.blade.php deleted file mode 100755 index e00f5ded..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/drugs_issued_to_pharmacy_report.blade.php +++ /dev/null @@ -1,263 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.issued_to_pharmacy') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    -
    -
    -
    - {{ Form::open(['method'=>'post','route' => 'stores.drugs_issued_to_pharmacy_report']) }} - -
    - {{ Form::label('issued_on', __('stores.issued_on')) }} - -
    - - - - - -
    - {{ Form::submit(__('stores.submit'), ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    - - -
    -
    - - - - - - - - - - - - - - - @if(count($results) > 0) - @foreach($results as $result) - - - - - - - - - - - @endforeach - @else - - @endif - -
    {{ __('stores.requisition_number') }}{{ __('stores.quantity') }}{{ __('stores.issued_by') }}{{ __('stores.date_requested') }}{{ __('stores.date_issued') }}{{ __('stores.cost_price')}}{{ __('stores.sell_value') }}
    # {{ sprintf('%04u', $result->id) }} - drug_id); - $quatity_issued_array = explode(",", $result->quantity_issued); - - count($drug_id_explode) . " Drugs"; - $total_amount_value_of_requisition = 0; - $total_cost_amount_value_of_requisition = 0; - /* calculate the amount of all the drugs */ - for ($i=0; $i < count($drug_id_explode) ; $i++) { - $price = 0; - $cost_price = 0; - if ($result->quotation_type_id == 1) { - if (isset($quatity_issued_array[$i]) && is_numeric($quatity_issued_array[$i])) { - $cost_price = get_name($drug_id_explode[$i], 'id', 'cost_price', 'drugs') != "N/A" ? get_name($drug_id_explode[$i], 'id', 'cost_price', 'drugs') : 0; - $price = get_name($drug_id_explode[$i], 'id', 'non_insured_price', 'drugs') != "N/A" ? get_name($drug_id_explode[$i], 'id', 'non_insured_price', 'drugs') : 0; - $total_cost_amount_value_of_requisition += $cost_price * $quatity_issued_array[$i]; - $total_amount_value_of_requisition += $price * $quatity_issued_array[$i]; - } - } else if ($result->quotation_type_id == 2) { - if (isset($quatity_issued_array[$i]) && is_numeric($quatity_issued_array[$i])) { - $cost_price = get_name($drug_id_explode[$i], 'id', 'cost_price', 'drugs') != "N/A" ? get_name($drug_id_explode[$i], 'id', 'cost_price', 'drugs') : 0; - $price = get_name($drug_id_explode[$i], 'id', 'non_insured_price', 'sundries') != "N/A" ? get_name($drug_id_explode[$i], 'id', 'non_insured_price', 'sundries') : 0; - $total_cost_amount_value_of_requisition += $cost_price * $quatity_issued_array[$i]; - $total_amount_value_of_requisition += $price * $quatity_issued_array[$i]; - } - } - } - ?> - {{ count($drug_id_explode) }} {{ __('stores.drugs') }} - - {{ get_full_name($result->issued_by, "id", "first_name", "last_name", "users") }} - - {{ streamline_date($result->created_at) }} - - {{ streamline_date($result->issued_on) }} - - {{ ugandan_shillings($total_cost_amount_value_of_requisition)}} - - {{ ugandan_shillings($total_amount_value_of_requisition) }} - - - {{ csrf_field() }} - - - - -
    {{ __('stores.please_search_for_records') }}
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - -@endpush - diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/edit_previous_quotation.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/edit_previous_quotation.blade.php deleted file mode 100755 index 99d02e78..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/edit_previous_quotation.blade.php +++ /dev/null @@ -1,143 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.editing_quotation') }} #{{ sprintf('%04u', $quotation_number) }}

    -
    -
    - -
    -
    - - @include('flash::message') - -
    - - {{ Form::open(['route' => 'stores.update_previous_quotation', 'data-toggle' => 'validator']) }} - -
    -
    -
    - - - - - - - - - - - - @foreach($results as $result) - - {{ Form::hidden('quotation_id[]', $result->id) }} - @if($result->quotation_type_id == 1) - - @elseif($result->quotation_type_id == 2) - - @elseif($result->quotation_type_id == 5) - - @endif - - - - - - - @endforeach - -
    {{ get_name($item_type, 'id', 'name', 'quotation_types') }}Package UnitNumber of Package UnitsQuantity in Each Package UnitQuantity
    - {{ get_name($result->drug_id, 'id', 'name', 'drugs') }} - - {{ get_name($result->drug_id, 'id', 'name', 'sundries') }} - - {{ get_name($result->drug_id, 'id', 'name', 'labs') }} - - {{ Form::select('package_unit[]', $package_units, $result->package_unit, ['class' => 'form-control compulsory', 'required', 'id' => 'package_unit_selected_' . $result->id]) }} - - - - - - -
    -
    -
    - -
    -
    - {{ Form::label('supplier', 'Supplier') }} - {{ Form::select('supplier_id', $suppliers, $result->supplier_id, ['id' => 'supplier', 'class' => 'form-control col-sm-8 supplier','required']) }} -
    - -
    - {{ Form::label('expected_date', 'Expected Date') }} -
    - {{ Form::text('expected_date', date_format(date_create($result->expected_date), 'd/m/Y'), ['class' => 'form-control compulsory', 'required', 'readonly', 'id' => 'expected_date']) }} -
    -
    - -
    - -
    -
    -
    - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/edit_temporary_quotation.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/edit_temporary_quotation.blade.php deleted file mode 100755 index 8cb1481f..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/edit_temporary_quotation.blade.php +++ /dev/null @@ -1,352 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.edit_quotation') }} # {{ sprintf('%04u', $quotation_id) }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    - {{ Form::open(['route' => 'stores.edit_temporary_quotation_search', 'method' => 'ANY', 'role' => 'search']) }} -
    -
    -
    - - - @if ($quotation_type == 1) - {{ Form::select('items_ids[]', $drugs, '', ['id' => 'drug_ids', 'multiple' => true, 'class' => 'form-control col-sm-8 drug_ids']) }} - @elseif($quotation_type == 2) - {{ Form::select('items_ids[]', $sundries, '', ['id' => 'sundry_ids', 'multiple' => true, 'class' => 'form-control col-sm-8 sundry_ids']) }} - @elseif($quotation_type == 3) - {{ Form::select('items_ids[]', $dentals, '', ['id' => 'dental_ids', 'multiple' => true, 'class' => 'form-control col-sm-8 dental_ids']) }} - @elseif($quotation_type == 4) - {{ Form::select('items_ids[]', $radiologies, '', ['id' => 'radiology_ids', 'multiple' => true, 'class' => 'form-control col-sm-8 radiology_ids']) }} - @elseif($quotation_type == 5) - {{ Form::select('items_ids[]', $labs, '', ['id' => 'lab_ids', 'multiple' => true, 'class' => 'form-control col-sm-8 lab_ids']) }} - @elseif($quotation_type == 6) - {{ Form::select('items_ids[]', $general_items, '', ['id' => 'general_items_ids', 'multiple' => true, 'class' => 'form-control col-sm-8 general_items_ids']) }} - @elseif($quotation_type == 7) - {{ Form::select('items_ids[]', $opticals, '', ['id' => 'optical_ids', 'multiple' => true, 'class' => 'form-control col-sm-8 optical_ids']) }} - @endif -
    -
    - -
    - -
    - -
    -
    - - - - {{ __('stores.note') }}: {{ __('stores.you_can_add_more_items_by_searching_from_above') }}
    -
    -
    -
    -
    - - @if(isset($criteria) && isset($resultCount)) -

    - {{ __('stores.search_criteria') }} {{ $criteria }}    {{ __('stores.total_results') }} {{ $resultCount }}    {{ __('stores.clear_search') }} -

    - @endif - {{ Form::close() }} -
    -
    - -
    -
    -
    -
    -
    - {{ csrf_field() }} -
    - - - - - - - - - - - - - - - - - - - - - - - @php - $supplier_id = null; - $expected_date = null; - @endphp - - @if(!is_null($quotation_results)) - @foreach($quotation_results as $result) - @php - $drug_id_explode = explode(",", $result->drug_id); - $quantity_explode = explode(",", $result->quantity); - $package_unit_array = explode(",", $result->package_unit); - $number_of_package_units_array = explode(",", $result->number_of_package_units); - $quantity_per_package_unit_array = explode(",", $result->quantity_per_package_unit); - $supplier_id = $result->supplier_id; - $expected_date = $result->expected_date; - @endphp - - @for ($x = 0; $x < count($drug_id_explode); $x++) - @php - $drug_form_id = get_name($drug_id_explode[$x], "id", "form_id", "drugs"); - $drug_form_name = get_name($drug_form_id, "id", "name", "unit_of_measure"); - @endphp - - - @if($result->quotation_type_id == 1) - - @elseif($result->quotation_type_id == 2) - - @elseif($result->quotation_type_id == 5) - - @endif - - - - - - @endfor - @endforeach - - @if (!is_null($added_items_collection)) - @foreach($added_items_collection as $added_item) - @php - $drug_form_id = get_name($added_item->id, "id", "form_id", "drugs"); - @endphp - - - @if($quotation_type == 1) - - @elseif($quotation_type == 2) - - @elseif($quotation_type == 5) - - @endif - - - - - - @endforeach - @endif - - @else - - @endif - -
    {{ __('stores.date') }}{{ __('stores.item_name') }}{{ __('stores.package_unit') }}{{ __('stores.number_of_package_units') }}{{ __('stores.quantity_per_package_unit') }}{{ __('stores.quantity') }}
    {{ __('stores.date') }}{{ __('stores.item_name') }}{{ __('stores.package_unit') }}{{ __('stores.number_of_package_units') }}{{ __('stores.quantity_per_package_unit') }}{{ __('stores.quantity') }}
    {{ streamline_date($result->created_at) }}{{ get_name($drug_id_explode[$x], "id", "name", "drugs") }}{{ get_name($drug_id_explode[$x], "id", "name", "sundries") }}{{ get_name($drug_id_explode[$x], "id", "name", "labs") }} - {{ Form::select('package_unit[]', $package_units, isset($package_unit_array[$x]) ? $package_unit_array[$x] : "", ['class' => 'form-control compulsory', 'required']) }} - - - - - - - -
    {{ get_name($added_item->id, "id", "name", "drugs") }}{{ get_name($added_item->id, "id", "name", "sundries") }}{{ get_name($added_item->id, "id", "name", "labs") }} - {{ Form::select('package_unit[]', $package_units, 1, ['class' => 'form-control compulsory', 'required']) }} - - - - - - - -
    {{ __('stores.no_records') }}
    -
    -
    - -
    - -
    - {{ Form::label('supplier', __('stores.supplier')) }} - {{ Form::select('supplier', $suppliers , $supplier_id, ['class'=>'form-control compulsory', 'required']) }} -
    - -
    - {{ Form::label('expected_date',__('stores.expected_date')) }} -
    - {{ Form::text('expected_date', \Carbon\Carbon::parse($expected_date)->format('d/m/Y') ,['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-autoclose']) }} - -
    -
    -
    - -
    - - {{ Form::button(__('stores.update_quotation'),['type'=>'submit','form'=>'quotation_form','id'=>'save_temporary_request','formaction'=>'store_request_quotation_temporarily','class'=>'btn btn-default waves-effect waves-light m-r-10']) }} - - {{ Form::button(__('stores.complete_request'),['type'=>'submit','form'=>'quotation_form','id'=>'submit_quotation_for_drugs','name'=>'submit_quotation_for_drugs','formaction'=>'store_request_quotation','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - -@endpush - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/electronic_adjusted_stock_card_drill_details.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/electronic_adjusted_stock_card_drill_details.blade.php deleted file mode 100644 index d607ae2e..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/electronic_adjusted_stock_card_drill_details.blade.php +++ /dev/null @@ -1,153 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') -
    -
    -

    - {{ __('stores.adjusted_stock_card_details') }}

    -
    -
    - -
    -
    - - @include('flash::message') -
    -
    -
    - -
    - {{ Form::open(['route' => 'stores.adjustment_drill_down' , 'method' => 'POST','target' => "_blank",'id'=>'adjustmentPrintItemsForm']) }} - - - - {{-- --}} - - - - {{ __('stores.pdf_print') }} - {{ Form::close() }} -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    - -
    -
    -
    -
    - -
    -

    {{ $display }}

    - -
    -
    - - - - - - - - - - - - - - - @forelse($reconciled_stocks as $result) - - - - - - - - - - @empty - @endforelse - - - - - -
    {{ __('stores.date') }} {{ __('stores.performed_by') }}{{ __('stores.system_stock') }}{{ __('stores.adjustement') }}{{ __('stores.physical_stock') }}
    {{ streamline_date($result['date']) }}{{ $result['name'] }}{{ $result['system_stock'] }} {{ $unit_name }}{{ $result['difference'] }} {{ $unit_name }}{{ $result['physical_stock'] }} {{ $unit_name }} - @if (Auth()->user()->can('view-details-adjusted-stock')) - {{ Form::open(['method'=>'post','route' => $route, 'target' => "_blank",'id' => 'adjustedItemsForm'.$result['id'] ]) }} - {{ Form::hidden('stock_count_identifier', $result['stock_count_identifier']) }} - {{ __('stores.details') }} - {{ Form::close() }} - @endif -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/electronic_adjusted_stock_card_drill_details_print.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/electronic_adjusted_stock_card_drill_details_print.blade.php deleted file mode 100644 index 85e6ec39..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/electronic_adjusted_stock_card_drill_details_print.blade.php +++ /dev/null @@ -1,70 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'STOCK CARD DETAILS - Stre@mline') }} - - - - - - - -
    - @include('layouts.header_pdf_print') - -
    {{ $display}}
    - -
    - -
    - - - - - - - - - - - - - @forelse($reconciled_stocks as $result) - - - - - - - - @empty - @endforelse - - - -
    {{ __('stores.date') }} {{ __('stores.performed_by') }}{{ __('stores.system_stock') }}{{ __('stores.adjustement') }}{{ __('stores.physical_stock') }}
    {{ streamline_date($result['date']) }}{{ $result['name'] }}{{ $result['system_stock'] }} {{ $unit_name }}{{ $result['difference'] }} {{ $unit_name }}{{ $result['physical_stock'] }} {{ $unit_name }}
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/electronic_stock_card.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/electronic_stock_card.blade.php deleted file mode 100644 index 6195e9a3..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/electronic_stock_card.blade.php +++ /dev/null @@ -1,495 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.electronic_stock_card') }}

    -
    -
    - -
    -
    - - @include('flash::message') - -
    -
    -
    - {{ Form::open(['method' => 'post', 'route'=>'stores.electronic_stock_card'])}} - {{ Form::label('quotation_type', __('stores.item_type')) }} - {{ Form::select('quotation_type', $quotation_type_options , null, ['class'=>'form-control compulsory', 'required']) }} -
    - -
    -
    - {{ Form::label('selected_drugs', __('stores.select_item')) }} - {{ Form::select('selected_drugs[]', $item_options['drugs'], null, ['id' => 'drugs_select', 'class' => 'form-control compulsory','multiple']) }} -
    - -
    - {{ Form::label('selected_sundries', __('stores.select_item')) }} - {{ Form::select('selected_sundries[]', $item_options['sundries'], null, ['id' => 'sundries_select', 'class' => 'form-control compulsory','multiple']) }} -
    - -
    - {{ Form::label('selected_dentals', __('stores.select_item')) }} - {{ Form::select('selected_dentals[]', $item_options['dentals'], null, ['id' => 'dentals_select', 'class' => 'form-control compulsory','multiple']) }} -
    - -
    - {{ Form::label('selected_labs', __('stores.select_item')) }} - {{ Form::select('selected_labs[]', $item_options['labs'], null, ['id' => 'labs_select', 'class' => 'form-control compulsory','multiple']) }} -
    - -
    - {{ Form::label('selected_radiologies', __('stores.select_item')) }} - {{ Form::select('selected_radiologies[]', $item_options['radiologies'], null, ['id' => 'radiologies_select', 'class' => 'form-control compulsory','multiple']) }} -
    - -
    - {{ Form::label('selected_general_items', __('stores.select_item')) }} - {{ Form::select('selected_general_items[]', $item_options['general_items'], null, ['id' => 'general_items_select', 'class' => 'form-control compulsory','multiple']) }} -
    - -
    - {{ Form::label('selected_eye_glasses', __('stores.select_item')) }} - {{ Form::select('selected_eye_glasses[]', $item_options['eye_glasses'], null, ['id' => 'eye_glasses_select', 'class' => 'form-control compulsory','multiple']) }} -
    -
    - -
    - {{ Form::label('start_date',__('stores.start')) }} -
    - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-autoclose1']) }} - -
    -
    - -
    - {{ Form::label('end_date',__('stores.end')) }} -
    - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-autoclose2']) }} - -
    -
    -
    -
    - -
    -
    - - {{ Form::close() }} -
    - -
    -
    - -
    - - -
    -
    - - -
    -
    - -
    -

    {{ $display }}

    -
    - - - - - - - - - - - - - - - @php $counter = 1; @endphp - @forelse($results as $result) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @empty - @endforelse - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('stores.item') }}{{ __('stores.opening_stock') }}{{ __('stores.received_stock') }}{{ __('stores.issued_stock') }}{{ __('stores.adjustement') }}{{ __('stores.closing_stock') }}
    - {{ $result->item_name }} - -
    - {{ $result->batch_stock['opening_stock'] }} {{ $result->unit_name }} -
    -
    -
    - @if ($result->received_items['quantity'] > 0) - {{ Form::open(['method'=>'post','route' => 'stores.received_items_drill_down', 'target' => "_blank",'id' => 'receivedItemsForm'.$result->item_id ]) }} - {{ Form::hidden('item_type', $item_type) }} - {{ Form::hidden('item_id', $result->item_id) }} - {{ Form::hidden('start_date', $start_date) }} - {{ Form::hidden('end_date', $end_date) }} - {{ Form::hidden('request_type', 1) }} - {{ $result->received_items['quantity'] }} {{ $result->unit_name }} - {{ Form::close() }} - @else - {{ $result->received_items['quantity'] }} {{ $result->unit_name }} - @endif -
    -
    -
    - @if ($result->issued_out_items['quantity'] > 0) - {{ Form::open(['method'=>'post','route' => 'stores.issued_items_drill_down', 'target' => "_blank",'id' => 'issuedItemsForm'.$result->item_id ]) }} - {{ Form::hidden('item_type', $item_type) }} - {{ Form::hidden('item_id', $result->item_id) }} - {{ Form::hidden('start_date', $start_date) }} - {{ Form::hidden('end_date', $end_date) }} - {{ Form::hidden('request_type', 1) }} - {{ $result->issued_out_items['quantity'] }} {{ $result->unit_name }} - {{ Form::close() }} - @else - {{ $result->issued_out_items['quantity'] }} {{ $result->unit_name }} - @endif -
    -
    - @if (($result->adjusted_stock['quantity']??0) > 0) - {{ Form::open(['method'=>'post','route' => 'stores.adjustment_drill_down', 'target' => "_blank",'id'=>'adjustmentItemsForm'.$result->item_id ]) }} - {{ Form::hidden('item_type', $item_type) }} - {{ Form::hidden('item_id', $result->item_id) }} - {{ Form::hidden('start_date', $start_date) }} - {{ Form::hidden('end_date', $end_date) }} - {{ Form::hidden('request_type', 1) }} - {{ $result->adjusted_stock['quantity']??0 }} {{ $result->unit_name }} - {{ Form::close() }} - @else - {{ $result->adjusted_stock['quantity']??0 }} {{ $result->unit_name }} - @endif - -
    - {{ $result->batch_stock['closing_stock'] }} {{ $result->unit_name }} -
    -
    -
    - @if (Auth()->user()->can('view-details-electronic-stock-card')) - {{ Form::open(['route' => 'stores.electronic_stock_card_details' , 'method' => 'POST','target' => "_blank",'id'=>'detailsItemsForm'.$result->item_id]) }} - - - - - - - - - {{ __('stores.details') }} - {{ Form::close() }} - @endif -
    -
    {{ __('stores.total') }} {{ $totals['total_opening_stock'] }} {{ $totals['total_received_stock'] }} {{ $totals['total_issued_out_stock'] }} {{ $totals['total_adjusted_stock'] }}{{ $totals['total_closing_stock'] }} -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/electronic_stock_card_details.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/electronic_stock_card_details.blade.php deleted file mode 100644 index f97ef082..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/electronic_stock_card_details.blade.php +++ /dev/null @@ -1,200 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.electronic_stock_card_details') }}

    -
    -
    - -
    -
    - - @include('flash::message') -
    -
    -
    - -
    - {{ Form::open(['route' => 'stores.electronic_stock_card_details_print' , 'method' => 'POST','target' => "_blank"]) }} - - - - - - - - {{ Form::close() }} -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    - -
    -

    {{ $display }}

    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @forelse($data as $result) - - - - - - - - - - - - @empty - @endforelse - - - - - - - - - - - - - - - -
    {{ __('stores.amc') }}    {{ $amc }} {{ $unit_name }}{{ __('stores.stock_reorder') }}    {{ $stock_reorder }} {{ $unit_name }}{{ __('stores.closing_stock') }}    {{ $closing_stock }} {{ $unit_name }}
    {{ __('stores.date') }}{{ __('stores.to_or_from') }}{{ __('stores.voucher_number') }}{{ __('stores.qty_in') }}{{ __('stores.qty_out') }}{{ __('stores.adjustement') }}{{ __('stores.batch_no') }}{{ __('stores.expiry_date') }}{{ __('stores.balance_on_hand') }}
    {{ streamline_date($start_date) }}{{ __('stores.opening_stock') }}{{ $opening_stock }}
    {{ streamline_date($result['date']) }}{{ $result['to_from'] }}{{ $result['voucher_number'] }}{{ $result['qty_in'] }}{{ $result['qty_out'] }}{{ $result['losses'] }}{{ $result['batch'] }}@if ($result['expiry'] != ''){{ streamline_date($result['expiry']) }} @endif{{ $result['balance'] }}
    {{ streamline_date($end_date) }}{{ __('stores.closing_stock') }}{{ $closing_stock }}
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/electronic_stock_card_details_print.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/electronic_stock_card_details_print.blade.php deleted file mode 100644 index e1375ac9..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/electronic_stock_card_details_print.blade.php +++ /dev/null @@ -1,110 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'STOCK CARD DETAILS - Stre@mline') }} - - - - - - - -
    - @include('layouts.header_pdf_print') - -
    {{ $display}}
    - -
    - - {{--
    - {{ __('stores.lpo_no') }}: {{ $quotation_items->first()->quotation_number }} | - {{ __('stores.supplier_title') }} : {{ get_name($quotation_items->first()->supplier_id, "id", "name", "suppliers" ) }} | - {{ __('stores.received_on') }}: {{ streamline_date($quotation_items->first()->receive_date) }} -
    --}} - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @forelse($data as $result) - - - - - - - - - - - - @empty - @endforelse - - - - - - - - - - - - - -
    {{ __('stores.amc') }}    {{ $amc }} {{ $unit_name }}{{ __('stores.stock_reorder') }}   {{ $stock_reorder }} {{ $unit_name }}{{ __('stores.closing_stock') }}   {{ $closing_stock }} {{ $unit_name }}
    {{ __('stores.date') }}{{ __('stores.to_or_from') }}{{ __('stores.voucher_number') }}{{ __('stores.qty_in') }}{{ __('stores.qty_out') }}{{ __('stores.adjustement') }}{{ __('stores.batch_no') }}{{ __('stores.expiry_date') }}{{ __('stores.balance_on_hand') }}
    {{ streamline_date($start_date) }}{{ __('stores.opening_stock') }}{{ $opening_stock }}
    {{ streamline_date($result['date']) }}{{ $result['to_from'] }}{{ $result['voucher_number'] }}{{ $result['qty_in'] }}{{ $result['qty_out'] }}{{ $result['losses'] }}{{ $result['batch'] }}@if ($result['expiry'] != ''){{ streamline_date($result['expiry']) }} @endif{{ $result['balance'] }}
    {{ streamline_date($end_date) }}{{ __('stores.closing_stock') }}{{ $closing_stock }}
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/electronic_stock_card_drill_details.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/electronic_stock_card_drill_details.blade.php deleted file mode 100644 index b6bf5e09..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/electronic_stock_card_drill_details.blade.php +++ /dev/null @@ -1,184 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') -
    -
    -

    - @if ($type == 1){{ __('stores.received_stock_card_details') }}@else {{ __('stores.issued_stock_card_details') }}@endif

    -
    -
    - -
    -
    - - @include('flash::message') -
    -
    -
    - -
    - {{ Form::open(['route' => $route , 'method' => 'POST','target' => "_blank",'id'=>'PrintItemsForm']) }} - - - - - - - {{ __('stores.pdf_print') }} - {{ Form::close() }} -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    - -
    -

    {{ $display }}

    - -
    -
    - - - - @forelse ( $summary as $key => $record) - - @empty - - @endforelse - - - - - - - - - - - - - - @forelse($data_items as $result) - - - - - - - - - - @empty - @endforelse - - - - - -
    {{ $key }} {{ $record }} {{ $unit_name }}
    {{ __('stores.date') }} @if($type==1){{ __('stores.supplier') }}@else{{ __('stores.issued_to') }} @endif{{ __('stores.quantity') }}{{ __('stores.cost_value') }}{{ __('stores.sale_value') }}
    {{ streamline_date($result['date']) }}{{ $result['name'] }}{{ $result['quantity'] }} {{ $unit_name }} -
    -
    - {{ __('stores.batch') }}: {{ $result['batch_number'] }} -
    -
    - {{ __('stores.quantity') }}: {{ $result['quantity'] }}
    - {{ __('stores.expiry_date') }}: {{ $result['expiry_date'] }} -
    -
    - {{ __('stores.unit_cost') }}: {{ $result['unit_cost'] }} -
    -
    -
    {{ ugandan_shillings($result['cost_value']) }}{{ ugandan_shillings($result['sale_value']) }} - @if ($type==1) - @if (Auth()->user()->can('view-details-received-drill-down')) - {{ __('stores.details') }} - @endif - @else - @if ($result['moved_to'] == "ward") - @if (Auth()->user()->can('view-details-issued-drill-down')) - {{ __('stores.details') }} - @endif - @else - @if (Auth()->user()->can('view-details-issued-drill-down')) - {{ Form::open(['method'=>'post','route' => 'stores.previous_issued_items_details', 'target' => "_blank",'id' => 'receivedItemsForm'.$result['id'] ]) }} - {{ Form::hidden('requisition_id', $result['quotation_number']) }} - {{ __('stores.details') }} - {{ Form::close() }} - @endif - - @endif - @endif -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/electronic_stock_card_drill_details_print.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/electronic_stock_card_drill_details_print.blade.php deleted file mode 100644 index 45b54fb2..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/electronic_stock_card_drill_details_print.blade.php +++ /dev/null @@ -1,77 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'STOCK CARD DETAILS - Stre@mline') }} - - - - - - - -
    - @include('layouts.header_pdf_print') - -
    {{ $display}}
    - -
    - - - - @forelse ( $summary as $key => $record) - - @empty - - @endforelse - - - - - - - - - - - - - - @forelse($data_items as $result) - - - - - - - - - - @empty - @endforelse - -
    {{ $key }} {{ $record }} {{ $unit_name }}
    {{ __('stores.date') }} @if($type==1){{ __('stores.supplier') }}@else{{ __('stores.issued_to') }} @endif{{ __('stores.quantity') }}{{ __('stores.batch_no') }}{{ __('stores.expiry_date') }}{{ __('stores.cost_value') }}{{ __('stores.sale_value') }}
    {{ streamline_date($result['date']) }}{{ $result['name'] }}{{ $result['quantity'] }} {{ $unit_name }}{{ $result['batch_number'] }}{{ streamline_date($result['expiry_date']) }}{{ ugandan_shillings($result['cost_value']) }}{{ ugandan_shillings($result['sale_value']) }}
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/general_items_physical_stock_count.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/general_items_physical_stock_count.blade.php deleted file mode 100755 index 114b77b9..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/general_items_physical_stock_count.blade.php +++ /dev/null @@ -1,620 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.general_items_stock_reconciliation') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') - -
    - {{ Form::open(['route' => 'stores.general_items_physical_stock_count_search', 'method' => 'ANY', 'role' => 'search']) }} -
    -
    -
    - {{ Form::select('search_items_ids[]',$general_items_dropdown,'',['id'=>'general_item_ids', 'multiple'=>true, 'class' => 'form-control col-sm-8 general_item_ids']) }} -
    -
    - -
    - -
    - -
    -
    - - - - {{ __('stores.note') }}: {{ __('stores.if_not_goint_to_reconcile_all_first_filter') }}.
    -
    -
    -
    -
    - - @if(isset($criteria) && isset($resultCount)) -

    - {{ __('stores.search_criteria') }} {{ $criteria }}    {{ __('stores.total_results') }} {{ $resultCount }}    {{ __('stores.clear_search') }} -

    - @endif - {{ Form::close() }} -
    -
    - -
    -
    -
    -
    - - {{ csrf_field() }} -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @foreach($general_items as $general_item) - @php - $general_item_store_stock = 0; - $item_cost_value = 0; - $batch_records = \Streamline\Models\ItemBatchWatcher::where(['item_type' => 6, 'item_id' => $general_item->id])->where('store_stock', '!=', 0)->get(); - - if(count($batch_records) > 0){ - foreach($batch_records as $record){ - $general_item_store_stock += $record->store_stock; - $item_cost_value += $record->cost_price * $record->store_stock; - } - } - @endphp - - - - - - - - - - - - - - - - @endforeach - -
    {{ __('stores.general_item_name') }}{{ __('stores.system_stock') }}{{ __('stores.cost_price') }}{{ __('stores.stock_value') }}{{ __('stores.batch_details_and_others') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.shrinkage') }}{{ __('stores.reason_for_difference') }}{{ __('stores.selling_price') }}{{ __('stores.markup') }}
    {{ __('stores.general_item_name') }}{{ __('stores.system_stock') }}{{ __('stores.cost_price') }}{{ __('stores.stock_value') }}{{ __('stores.batch_details_and_others') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.shrinkage') }}{{ __('stores.reason_for_difference') }}{{ __('stores.selling_price') }}{{ __('stores.markup') }}
    - @if($general_item->insurance == 1) - {{ $general_item->name }} - @else - {{ $general_item->name }} - @endif - -
    - {{ $general_item_store_stock }} - - -
    -
    -
    - {{ ugandan_shillings($general_item->cost_price) }} -
    - -
    -
    - {{ ugandan_shillings($general_item_store_stock * $general_item->cost_price) }} -
    -
    - @php - $quotation_records = get_all_batches_for_this_drug_with_balances($general_item->id, $item_type = 6); - - $batch_records = \Streamline\Models\ItemBatchWatcher::where(['item_type' => 6, 'item_id' => $general_item->id])->where('store_stock', '!=', 0)->get(); - @endphp - - @if(count($batch_records) > 0) - @foreach($batch_records as $record) -
    -
    - {{ Form::hidden('batch_db_record_id[]', $record->id, ['class' => 'batch_record_id_class_'.$record->id]) }} - {{ Form::hidden('batch_quotation_id[]', $record->id) }} - {{ Form::hidden('batch_general_item_id[]', $general_item->id, ['class' => 'batch_id_class_'.$general_item->id]) }} - -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    - -
    -
    - {{ __('stores.unit_cost') }}: {{ $record->cost_price }} -
    - -
    -
    - {{ __('stores.quantity') }}:{{ $record->store_stock }} - @if(Auth::user()->can('remove-batch-during-stock-reconciliation')) - - @php - $batch_no = $record->batch_number; - $general_item_id = $record->id; - @endphp - Remove batch - - @endif - @if(Auth::user()->can('edit-batch-during-stock-reconciliation')) - - @php - $batch_no = $record->batch_number; - $general_item_id = $general_item->id; - @endphp - {{ __('stores.edit_batch') }} - - @endif -
    - -
    -
    - -
    -
    - @endforeach - @else -
    -
    - {{ Form::hidden('batch_db_record_id[]', 0, ['class' => 'batch_record_id_class_'.$general_item->id]) }} - {{ Form::hidden('batch_quotation_id[]', 0) }} - {{ Form::hidden('batch_general_item_id[]', $general_item->id) }} - -
    - -
    - -
    -
    - - -
    -
    - -
    -
    - @endif -
    -
    - {{ $general_item_store_stock }} -
    - -
    - - -
    -
    - -
    -
    -
    - -
    - - -
    - {{ ugandan_shillings($general_item->non_insured_price) }} -
    -
    - @php - $selling_price = $general_item->non_insured_price; - $cost_price = $general_item->cost_price; - $mark_up = $selling_price-$cost_price; - /* if($cost_price != 0){ - $markUp = (($selling_price-$cost_price)/$cost_price)*100; - $markUp = round($markUp); - } else { - $markUp = "N/A"; - } */ - @endphp - {{ $mark_up }} - -
    -
    -
    -

    -
    -
    - - -
    -
    -
    -
    - {{ Form::label('account_id', __('stores.select_chart_of_account_affected')) }} -
    -
    -
    - {{ Form::select('account_id', $chart_of_accounts, null, ['class' => 'form-control', 'id' => 'account_id']) }} -
    -
    -
    -
    - - - {{ __('stores.this_is_the_account_that_will_be_affected_explanation') }} - -
    -
    -
    -
    - -
    -
    - - - - -
    - -
    -
    -
    -
    -
    - - -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/general_items_report.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/general_items_report.blade.php deleted file mode 100755 index 193ac9e4..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/general_items_report.blade.php +++ /dev/null @@ -1,205 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.stock_value_report') }}

    -
    -
    - -
    -
    - -
    - {{ Form::open(['route' => 'stores.daily_stock_value_report' , 'data-toggle' => 'validator']) }} -
    -
    -
    -
    - {{ Form::label('item_type', __('stores.select_item')) }} - {{ Form::select('item_type',[0 => 'All', 1 => 'Drugs', 2 => 'Sundries'],0,['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    - {{ Form::label('date_to_search',__('stores.date')) }} - {{ Form::text('date_to_search','',['class' => 'form-control compulsory', 'required','readonly','id'=>'date_to_search']) }} -
    -
    -
    -
    - {{ Form::button(__('stores.search'),['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    -
    -
    - {{ Form::close() }} -
    - -
    - - {{ $search_text }} - -

    - -
    - - - - - - - - - - - - - - - @php - $total_drugs_stock_value = 0; - $total_drugs_pharmacy_value = 0; - $total_sundries_stock_value = 0; - $total_sundries_pharmacy_value = 0; - $total_general_items_stock_value = 0; - $total_general_items_pharmacy_value = 0; - @endphp - @if(count($records) > 0) - @foreach($records as $record) - @php - if($record->item_type == 1) { - $item_type_name = "Drugs"; - $item_name = get_name($record->item_id, 'id', 'name', 'drugs'); - $total_drugs_stock_value += $record->selling_price * $record->store_stock; - $total_drugs_pharmacy_value += $record->selling_price * $record->pharmacy_stock; - } elseif($record->item_type == 2){ - $item_type_name = "Sundries"; - $item_name = get_name($record->item_id, 'id', 'name', 'sundries'); - $total_sundries_stock_value += $record->selling_price * $record->store_stock; - $total_sundries_pharmacy_value += $record->selling_price * $record->pharmacy_stock; - } elseif($record->item_type == 3){ - $item_type_name = "General Items"; - $item_name = get_name($record->item_id, 'id', 'name', 'general_items'); - $total_general_items_stock_value += $record->selling_price * $record->store_stock; - $total_general_items_pharmacy_value += $record->selling_price * $record->pharmacy_stock; - } - @endphp - - - - - - - - - - - @endforeach - @else - - - - @endif - -
    {{ __('stores.item_type') }}{{ __('stores.item_name') }}{{ __('stores.pharmacy_stock') }}{{ __('stores.store_stock') }}{{ __('stores.buying_price') }}{{ __('stores.selling_price') }}{{ __('stores.pharmacy_value') }}{{ __('stores.store_value') }}
    {{ $item_type_name }}{{ $item_name }}{{ $record->pharmacy_stock }}{{ $record->store_stock }}{{ ugandan_shillings($record->buying_price) }}{{ ugandan_shillings($record->selling_price) }}{{ ugandan_shillings($record->selling_price * $record->pharmacy_stock) }}{{ ugandan_shillings($record->selling_price * $record->store_stock) }}
    {{ __('stores.no_records_available_for_this_search') }}
    -
    - -
    - -
    -
    -

    {{ __('stores.drugs_total_value') }}

    - - - - - - - - - - - - - -
    {{ __('stores.pharmacy_stock_value') }}{{ ugandan_shillings($total_drugs_pharmacy_value) }}
    {{ __('stores.store_stock_value') }}{{ ugandan_shillings($total_drugs_stock_value) }}
    {{ __('stores.total_stock_value') }}{{ ugandan_shillings($total_drugs_stock_value + $total_drugs_pharmacy_value) }}
    -
    - -
    -

    {{ __('stores.sundries_total_value') }}

    - - - - - - - - - - - - - -
    {{ __('stores.pharmacy_stock_value') }}{{ ugandan_shillings($total_sundries_pharmacy_value) }}
    {{ __('stores.store_stock_value') }}{{ ugandan_shillings($total_sundries_stock_value) }}
    {{ __('stores.total_stock_value') }}{{ ugandan_shillings($total_sundries_stock_value + $total_sundries_pharmacy_value) }}
    -
    - -
    -

    {{ __('stores.general_items_total_value') }}

    - - - - - - - - - - - - - -
    {{ __('stores.pharmacy_stock_value') }}{{ ugandan_shillings($total_general_items_pharmacy_value) }}
    {{ __('stores.store_stock_value') }}{{ ugandan_shillings($total_general_items_stock_value) }}
    {{ __('stores.total_stock_value') }}{{ ugandan_shillings($total_general_items_stock_value + $total_general_items_pharmacy_value) }}
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/general_items_stock_reconciliation_report.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/general_items_stock_reconciliation_report.blade.php deleted file mode 100755 index 8d952503..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/general_items_stock_reconciliation_report.blade.php +++ /dev/null @@ -1,190 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('stores.general_items_stock_reconciliation_report') }}

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    - - - {{ Form::open(['method'=>'post','route' => 'stores.general_items_stock_reconciliation_report']) }} - -
    -

    {{ __('stores.select_a_date_range') }}

    -
    - -
    - -
    - - - - -
    - {{ Form::submit(__('stores.submit'), ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    - - - -
    -
    -
    -
    -
    -
    - - - - - - - - - @php - $counter = 0; - @endphp - - - @if(count($reconciled_stocks) > 0) - @foreach($reconciled_stocks as $record) - - - - - - - - @php - $counter++; - @endphp - @endforeach - @endif - -
    {{ __('stores.date') }}{{ __('stores.staff_in_charge') }}{{ __('stores.reconciliation_id') }}{{ __('stores.action') }}
    {{ streamline_date($record->created_at) }}{{ get_full_name($record->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ sprintf("%04u", $record->stock_count_identifier) }} - {{ Form::open(['method'=>'post','route' => 'stores.general_items_stock_reconciliation_report_details']) }} - {{ Form::hidden('stock_count_identifier', $record->stock_count_identifier) }} - {{ Form::submit(__('stores.details'), ['class'=>'btn btn-success']) }} - {{ Form::close() }} -
    -
    -
    -
    -
    -
    - -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/general_items_stock_reconciliation_report_details.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/general_items_stock_reconciliation_report_details.blade.php deleted file mode 100755 index db5472ed..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/general_items_stock_reconciliation_report_details.blade.php +++ /dev/null @@ -1,131 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.general_items_stock_reconciliation_details') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -
    -
    -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - - - - - - - - - {{-- - - - - - - - - - - --}} - - @foreach($general_items_reconciled as $reconciliation_record) - @php - $general_item_name = get_name($reconciliation_record->general_item_id, "id", "name", "general_items"); - $insurance_coverage = get_name($reconciliation_record->general_item_id, "id", "insurance", "general_items"); - @endphp - - - - - - - - - - @endforeach - -
    {{ __('stores.general_item_name') }}{{ __('stores.system_stock') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.reason_for_difference') }}{{ __('stores.reconciled_by') }}{{ __('stores.performed_on') }}
    General Item nameSystem stockPhysical stockDifferenceReason for differenceReconciled byPerformed on
    - @if($insurance_coverage == 1) - {{ $general_item_name }} - @else - {{ $general_item_name }} - @endif - -
    - {{ $reconciliation_record->system_stock }} -
    -
    -
    - {{ $reconciliation_record->physical_stock }} -
    -
    -
    - {{ $reconciliation_record->difference }} -
    -
    -
    - {{ $reconciliation_record->reason_for_difference }} -
    -
    -
    - {{ get_full_name($reconciliation_record->created_by, 'id', 'first_name', 'last_name', 'users') }} -
    -
    -
    - {{ streamline_date($reconciliation_record->created_at) }} -
    -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/general_items_stock_sheet.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/general_items_stock_sheet.blade.php deleted file mode 100755 index 418fd55b..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/general_items_stock_sheet.blade.php +++ /dev/null @@ -1,136 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.general_items_stock_sheet') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -
    -
    -
    - {{ csrf_field() }} -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - - - - - - - @foreach($general_items as $general_item) - @php - $general_item_store_stock = 0; - $batch_records = \Streamline\Models\ItemBatchWatcher::where(['item_type' => 6, 'item_id' => $general_item->id])->where('store_stock', '!=', 0)->get(); - - if(count($batch_records) > 0){ - foreach($batch_records as $record){ - $general_item_store_stock += $record->store_stock; - } - } - @endphp - - - - - - - @endforeach - - -
    {{ __('stores.general_item') }}{{ __('stores.store_stock') }}{{ __('stores.cost_price') }}{{ __('stores.expiry_date') }}
    - {{ $general_item->name }} - -
    - {{ $general_item_store_stock }} -
    - -
    - {{ $general_item->cost_price }} - -
    - {{ streamline_date($general_item->expiry_date) }} -
    - -
    -
    -
    - -
    -
    - - - -
    - -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/goods_received_note.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/goods_received_note.blade.php deleted file mode 100755 index e426be09..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/goods_received_note.blade.php +++ /dev/null @@ -1,295 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.goods_received_note') }}

    -
    -
    - -
    -
    - - @include('flash::message') - -
    - -

    - -
    -
    -
    -
    -
    - -
    -
    - {{ $hospital_details->name }}
    - {{ $hospital_details->address }}
    - {{ get_name($hospital_details->district, "id", "name", "districts") }}
    - {{ $hospital_details->email }}
    - {{ $hospital_details->phone_number }}
    - No: {{ $quotation_items->first()->grn_number }} -
    - - - - -
    {{ __('stores.goods_received_note_title') }}
    -
    -
    - {{ __('stores.supplier_title') }} : {{ get_name($quotation_items->first()->supplier_id, "id", "name", "suppliers" ) }} -
    -
    - {{ __('stores.received_on') }} : {{ streamline_date($quotation_items->first()->receive_date) }} -
    -
    - -
    -
    -
    -
    - -
    -
    -
    - - - - - - - - - - - - - - - - @php - $i = 1; - $grand_total = 0; - $receiver_comment = null; - @endphp - - @foreach ($quotation_items as $record) - @php $drug_id = $record->drug_id; @endphp - @if($record->quotation_type_id == 1) - @php - $drug_form_id = get_name($drug_id, "id", "form_id", "drugs"); - $drug_form_name = get_name($drug_form_id, "id", "name", "drug_forms"); - @endphp - - - - - - - - - - - - - - @elseif($record->quotation_type_id == 2) - - - - - - - - - - - - - @elseif($record->quotation_type_id == 3) - - - - - - - - - - - - - @elseif($record->quotation_type_id == 4) - - - - - - - - - - - - - @elseif($record->quotation_type_id == 5) - - - - - - - - - - - - @elseif($record->quotation_type_id == 6) - - - - - - - - - - - - @elseif($record->quotation_type_id == 7) - - - - - - - - - - - - @endif - - @php - $i++; - $grand_total += $record->total_price; - $receiver_comment = $record->receiver_comment; - @endphp - @endforeach - - - - - - - - - - - - - - -
    #{{ __('stores.name') }}{{ __('stores.package_unit') }}{{ __('stores.number_of_packages') }}{{ __('stores.quantity_in_each_package_unit') }}{{ __('stores.price_per_package_unit') }}{{ __('stores.total') }} {{ __('stores.quantity') }}{{ __('stores.batch_number') }}{{ __('stores.total_price') }}
    {{ $i }}{{ get_name($drug_id, "id", "name", "drugs") }}{{ get_name($record->package_unit, "id", "name", "package_units") }}{{ $record->receive_number_of_package_units }}{{ $record->receive_quantity_per_package_unit }} - {{ is_null($record->receive_bill_per_package_unit) ? ugandan_shillings_with_decimals($record->bill_per_package_unit) : ugandan_shillings_with_decimals($record->receive_bill_per_package_unit) }} - {{ $record->receive_quantity }} {{ $drug_form_name }}{{ $record->batch_number }}{{ ugandan_shillings_with_decimals($record->total_price) }}
    {{ $i }}{{ get_name($drug_id, "id", "name", "sundries") }}{{ get_name($record->package_unit, "id", "name", "package_units") }}{{ $record->receive_number_of_package_units }}{{ $record->receive_quantity_per_package_unit }}{{ is_null($record->receive_bill_per_package_unit) ? ugandan_shillings_with_decimals($record->bill_per_package_unit) : ugandan_shillings_with_decimals($record->receive_bill_per_package_unit) }}{{ $record->receive_quantity }}{{ $record->batch_number }}{{ ugandan_shillings_with_decimals($record->total_price) }}
    {{ $i }}{{ get_name($record->drug_id, "id", "name", "dentals") }}{{ get_name($record->package_unit, "id", "name", "package_units") }}{{ $record->receive_number_of_package_units }}{{ $record->receive_quantity_per_package_unit }}{{ is_null($record->receive_bill_per_package_unit) ? ugandan_shillings_with_decimals($record->bill_per_package_unit) : ugandan_shillings_with_decimals($record->receive_bill_per_package_unit) }}{{ $record->receive_quantity }}{{ $record->batch_number }}{{ ugandan_shillings_with_decimals($record->total_price) }}
    {{ $i }}{{ get_name($record->drug_id, "id", "name", "radiologies") }}{{ get_name($record->package_unit, "id", "name", "package_units") }}{{ $record->receive_number_of_package_units }}{{ $record->receive_quantity_per_package_unit }}{{ is_null($record->receive_bill_per_package_unit) ? ugandan_shillings_with_decimals($record->bill_per_package_unit) : ugandan_shillings_with_decimals($record->receive_bill_per_package_unit) }}{{ $record->receive_quantity }}{{ $record->batch_number }}{{ ugandan_shillings_with_decimals($record->total_price) }}
    {{ $i }}{{ get_name($record->drug_id, "id", "name", "labs") }}{{ get_name($record->package_unit, "id", "name", "package_units") }}{{ $record->receive_number_of_package_units }}{{ $record->receive_quantity_per_package_unit }}{{ is_null($record->receive_bill_per_package_unit) ? ugandan_shillings_with_decimals($record->bill_per_package_unit) : ugandan_shillings_with_decimals($record->receive_bill_per_package_unit) }}{{ $record->receive_quantity }}{{ $record->batch_number }}{{ ugandan_shillings_with_decimals($record->total_price) }}
    {{ $i }}{{ get_name($record->drug_id, "id", "name", "general_items") }}{{ get_name($record->package_unit, "id", "name", "package_units") }}{{ $record->receive_number_of_package_units }}{{ $record->receive_quantity_per_package_unit }}{{ is_null($record->receive_bill_per_package_unit) ? ugandan_shillings_with_decimals($record->bill_per_package_unit) : ugandan_shillings_with_decimals($record->receive_bill_per_package_unit) }}{{ $record->receive_quantity }}{{ $record->batch_number }}{{ ugandan_shillings_with_decimals($record->total_price) }}
    {{ $i }}{{ get_name($record->drug_id, "id", "name", "eye_glasses") }}{{ get_name($record->package_unit, "id", "name", "package_units") }}{{ $record->receive_number_of_package_units }}{{ $record->receive_quantity_per_package_unit }}{{ is_null($record->receive_bill_per_package_unit) ? ugandan_shillings($record->bill_per_package_unit) : ugandan_shillings($record->receive_bill_per_package_unit) }}{{ $record->receive_quantity }}{{ $record->batch_number }}{{ ugandan_shillings($record->total_price) }}
    {{ __('stores.total') }}{{ ugandan_shillings_with_decimals($grand_total) }}
    -
    -
    -
    - - @if (!is_null($receiver_comment)) -
    - {{ __('stores.receiver_comment') }}:
    - {{ $receiver_comment }}

    -
    - @endif - -
    -
    -
    - {{ __('stores.created_by') }}:

    - {{ get_full_name($quotations->created_by, 'id', 'first_name', 'last_name', 'users') }}
    - ({{ get_name($quotations->created_by, 'id','phone', 'users') }})
    - On {{ streamline_date_time(get_name($quotations->quotation_number, 'quotation_number','created_at', 'quotations')) }}

    -
    - -
    - {{ __('stores.approved_by') }}:

    - {{ get_full_name($quotations->approval_user, 'id', 'first_name', 'last_name', 'users') }}
    - ({{ get_name($quotations->approval_user, 'id','phone', 'users') }})
    - On {{ streamline_date_time(get_name($quotations->quotation_number, "quotation_number", "approval_date", "quotations")) }}

    -
    - -
    - {{ __('stores.billed_by') }}:

    - {{ get_full_name($quotations->billing_user, 'id', 'first_name', 'last_name', 'users') }}
    - ({{ get_name($quotations->billing_user, 'id','phone', 'users') }})
    - On {{ streamline_date_time(get_name($quotations->quotation_number, "quotation_number", "billing_date", "quotations")) }}

    -
    - -
    - {{ __('stores.received_by') }}:

    - {{ get_full_name(auth()->user()->id, 'id', 'first_name', 'last_name', 'users') }}
    - ({{ get_name(auth()->user()->id, 'id','phone', 'users') }})
    - {{ __('stores.on') }} {{ streamline_date(get_name($quotations->quotation_number, "quotation_number", "receive_date", "quotations")) }}

    -
    - -
    - {{ __('stores.delivered_by') }}:

    - ....................................... -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - -@endpush - - - - diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/goods_received_note_print.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/goods_received_note_print.blade.php deleted file mode 100755 index fefbbe24..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/goods_received_note_print.blade.php +++ /dev/null @@ -1,220 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'GOODS RECEIVED NOTE - Stre@mline') }} - - - - - - - -
    - @include('layouts.header_pdf_print') - -
    {{ __('stores.goods_received_note_title') }}
    - -
    - -
    - {{ __('stores.lpo_no') }}: {{ $quotation_items->first()->quotation_number }} | - {{ __('stores.supplier_title') }} : {{ get_name($quotation_items->first()->supplier_id, "id", "name", "suppliers" ) }} | - {{ __('stores.received_on') }}: {{ streamline_date($quotation_items->first()->receive_date) }} -
    - -
    - - - - - - - - - - - - - - - - @php - $i = 1; - $grand_total = 0; - $receiver_comment = null; - @endphp - - @foreach ($quotation_items as $record) - @php $drug_id = $record->drug_id; @endphp - @if($record->quotation_type_id == 1) - @php - $drug_form_id = get_name($drug_id, "id", "form_id", "drugs"); - $drug_form_name = get_name($drug_form_id, "id", "name", "drug_forms"); - @endphp - - - - - - - - - - - - @elseif($record->quotation_type_id == 2) - - - - - - - - - - - - @elseif($record->quotation_type_id == 3) - - - - - - - - - - - - @elseif($record->quotation_type_id == 4) - - - - - - - - - - - - @elseif($record->quotation_type_id == 5) - - - - - - - - - - - @elseif($record->quotation_type_id == 6) - - - - - - - - - - - - @elseif($record->quotation_type_id == 7) - - - - - - - - - - - @endif - - @php - $i++; - $grand_total += $record->total_price; - $receiver_comment = $record->receiver_comment; - @endphp - @endforeach - - - - - - - - - - - - - -
    #{{ __('stores.name') }}{{ __('stores.package_unit') }}{{ __('stores.no_of_package_units') }}{{ __('stores.no_in_each_package_unit') }}{{ __('stores.price_per_package_unit') }}{{ __('stores.batch_number') }}{{ __('stores.total_price') }}
    {{ $i }}{{ get_name($drug_id, "id", "name", "drugs") }}{{ get_name($record->package_unit, "id", "name", "package_units") }}{{ $record->receive_number_of_package_units }}{{ $record->receive_quantity_per_package_unit }}{{ is_null($record->receive_bill_per_package_unit) ? ugandan_shillings_with_decimals($record->bill_per_package_unit) : ugandan_shillings_with_decimals($record->receive_bill_per_package_unit) }}{{ $record->batch_number }}{{ ugandan_shillings_with_decimals($record->total_price) }}
    {{ $i }}{{ get_name($drug_id, "id", "name", "sundries") }}{{ get_name($record->package_unit, "id", "name", "package_units") }}{{ $record->receive_number_of_package_units }}{{ $record->receive_quantity_per_package_unit }}{{ is_null($record->receive_bill_per_package_unit) ? ugandan_shillings_with_decimals($record->bill_per_package_unit) : ugandan_shillings_with_decimals($record->receive_bill_per_package_unit) }}{{ $record->batch_number }}{{ ugandan_shillings_with_decimals($record->total_price) }}
    {{ $i }}{{ get_name($record->drug_id, "id", "name", "dentals") }}{{ get_name($record->package_unit, "id", "name", "package_units") }}{{ $record->receive_number_of_package_units }}{{ $record->receive_quantity_per_package_unit }}{{ is_null($record->receive_bill_per_package_unit) ? ugandan_shillings_with_decimals($record->bill_per_package_unit) : ugandan_shillings_with_decimals($record->receive_bill_per_package_unit) }}{{ $record->batch_number }}{{ ugandan_shillings_with_decimals($record->total_price) }}
    {{ $i }}{{ get_name($record->drug_id, "id", "name", "radiologies") }}{{ get_name($record->package_unit, "id", "name", "package_units") }}{{ $record->receive_number_of_package_units }}{{ $record->receive_quantity_per_package_unit }}{{ is_null($record->receive_bill_per_package_unit) ? ugandan_shillings_with_decimals($record->bill_per_package_unit) : ugandan_shillings_with_decimals($record->receive_bill_per_package_unit) }}{{ $record->batch_number }}{{ ugandan_shillings_with_decimals($record->total_price) }}
    {{ $i }}{{ get_name($record->drug_id, "id", "name", "labs") }}{{ get_name($record->package_unit, "id", "name", "package_units") }}{{ $record->receive_number_of_package_units }}{{ $record->receive_quantity_per_package_unit }}{{ is_null($record->receive_bill_per_package_unit) ? ugandan_shillings_with_decimals($record->bill_per_package_unit) : ugandan_shillings_with_decimals($record->receive_bill_per_package_unit) }}{{ $record->batch_number }}{{ ugandan_shillings_with_decimals($record->total_price) }}
    {{ $i }}{{ get_name($record->drug_id, "id", "name", "general_items") }}{{ get_name($record->package_unit, "id", "name", "package_units") }}{{ $record->receive_number_of_package_units }}{{ $record->receive_quantity_per_package_unit }}{{ is_null($record->receive_bill_per_package_unit) ? ugandan_shillings_with_decimals($record->bill_per_package_unit) : ugandan_shillings_with_decimals($record->receive_bill_per_package_unit) }}{{ $record->batch_number }}{{ ugandan_shillings_with_decimals($record->total_price) }}
    {{ $i }}{{ get_name($record->drug_id, "id", "name", "eye_glasses") }}{{ get_name($record->package_unit, "id", "name", "package_units") }}{{ $record->receive_number_of_package_units }}{{ $record->receive_quantity_per_package_unit }}{{ is_null($record->receive_bill_per_package_unit) ? ugandan_shillings_with_decimals($record->bill_per_package_unit) : ugandan_shillings_with_decimals($record->receive_bill_per_package_unit) }}{{ $record->batch_number }}{{ ugandan_shillings_with_decimals($record->total_price) }}
    {{ __('stores.total') }}{{ ugandan_shillings_with_decimals($grand_total) }}
    - - @if (!is_null($receiver_comment)) - {{ __('stores.receiver_comment') }}:
    {{ $receiver_comment }} - @endif - -
    -
    - {{ __('stores.rfg_generated_by') }}:

    - {{ get_full_name($quotations->created_by, 'id', 'first_name', 'last_name', 'users') }}
    - ({{ get_name($quotations->created_by, 'id','phone', 'users') }})
    - {{ __('stores.on') }} {{ streamline_date_time(get_name($quotations->quotation_number, 'quotation_number','created_at', 'quotations')) }}

    -
    - -
    - {{ __('stores.approved_by') }}:

    - {{ get_full_name($quotations->approval_user, 'id', 'first_name', 'last_name', 'users') }}
    - ({{ get_name($quotations->approval_user, 'id','phone', 'users') }})
    - {{ __('stores.on') }} {{ streamline_date_time($quotations->approval_date) }} -
    - -
    - {{ __('stores.billed_by') }}:

    - {{ get_full_name($quotations->billing_user, 'id', 'first_name', 'last_name', 'users') }}
    - ({{ get_name($quotations->billing_user, 'id','phone', 'users') }})
    - {{ __('stores.on') }} {{ streamline_date_time($quotations->billing_date) }} -
    - -
    - {{ __('stores.received_by') }}:

    - {{ get_full_name(auth()->user()->id, 'id', 'first_name', 'last_name', 'users') }}
    - ({{ get_name(auth()->user()->id, 'id','phone', 'users') }})
    - {{ __('stores.on') }} {{ streamline_date($quotations->receive_date) }} -
    - -
    - {{ __('stores.delivered_by') }}:

    - ......................... -
    -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/index.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/index.blade.php deleted file mode 100755 index f49c6925..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/index.blade.php +++ /dev/null @@ -1,345 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('stores.stores_home') }}

    -
    -
    - -
    -
    - -
    -
    -
    - @include('flash::message') -
    - - -
    -

    {{ __('stores.requests_management') }}

    - -
    - -
    -

    {{ __('stores.stock_management') }}

    - -
    - -
    -

    {{ __('stores.reports') }}

    - -
    -
    -
    -@endsection diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/issue_drugs.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/issue_drugs.blade.php deleted file mode 100755 index 485203a5..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/issue_drugs.blade.php +++ /dev/null @@ -1,129 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.issue_items') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - @if(empty($quotation_results)) - - - - @else - @foreach($quotation_results as $result) - - - - - - - - - - @endforeach - @endif - -
    {{ __('stores.requisition_number') }}{{ __('stores.number_items') }}{{ __('stores.requisition_source') }}{{ __('stores.date_requested') }}{{ __('stores.requisitioned_by') }}
    {{ __('stores.no_pending_requisitions') }}
    {{ sprintf('%04u', $result->id) }} - @php - $drug_id_explode_array = explode(",", $result->drug_id); - $quantity_explode_array = explode(",", $result->quantity_requested); - @endphp - {{ !empty($quantity_explode_array) ? count(array_filter($quantity_explode_array)) : 0 }} {{get_quotation_type_name($result->quotation_type_id)}} - {{ get_requisition_origin($result->requisition_origin) }}{{ streamline_date_time($result->created_at) }}{{ get_full_name($result->created_by, "id", "first_name", "last_name", "users") }} - @if ($result->approval_status == 0) - @if( Auth::user()->can('approve-and-issue-out-opd-requisitions')) -
    - @csrf - - -
    - @endif - @endif - - @if($result->approval_status == 1) - @if( Auth::user()->can('issue-out-opd-requisitions')) -
    - @csrf - - -
    - @endif - @endif -
    @if(Auth::user()->can('delete-store-requisition')) {{ __('stores.cancel_requisition') }} @endif
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/issue_out_drugs_form.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/issue_out_drugs_form.blade.php deleted file mode 100755 index 77c27e04..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/issue_out_drugs_form.blade.php +++ /dev/null @@ -1,560 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.issue') }} {{get_quotation_type_name($requisition->quotation_type_id)}}

    -
    -
    - -
    -
    - - @include('flash::message') - -
    -
    -
    -
    -

    {{ __('stores.issue_to') }} {{ get_requisition_origin($requisition->requisition_origin) }} - {{ get_full_name($requisition->created_by, "id", "first_name", "last_name", "users") }} {{ streamline_date($requisition->created_at) }}

    -
    -
    -
    - @csrf - - - - - - - {{-- --}} - - - - - @if(track_items_using_batches())@endif - - - - - - - @php - $facade_batches_options = []; - $drug_form_name=''; - - $all_drug_batches = ""; - foreach ($batches_array as $item_batch) { - $all_drug_batches .= ""; - } - @endphp - - @foreach ($associative_requested_drugs_array as $drug_id => $quantity_requested) - @php - $usable_batches_array = DB::table('item_batch_watcher')->whereNull('deleted_at')->where(['item_id' => $drug_id, 'item_type' => $requisition->quotation_type_id])->where(function ($query) { - $query->where('store_stock', '>', 0); - })->get(); - - $facade_batches_options = []; - $option_batches = ""; - foreach ($usable_batches_array as $item_batch) { - $option_batches .= ""; - - $facade_batches_options[$item_batch->id] = $item_batch->batch_number." (Expiry Date: ".streamline_date_plain($item_batch->expiry_date).")"; - } - $facade_batches_options = ["--Select--"] + $facade_batches_options; - - - $drug_name_requested = get_name($drug_id, "id", "name", "{$table_name}"); - $store_stock = get_name($drug_id, "id", "store_stock", "{$table_name}"); - if ( $requisition->quotation_type_id == 1){ - $drug_form_id = get_name($drug_id, "id", "form_id", "drugs"); - $drug_form_name = get_name($drug_form_id, "id", "name", "unit_of_measure"); - } - - $latest_drug_cost_price = (int)get_latest_unit_cost_value($drug_id, $requisition->quotation_type_id); - - $latest_drug_cost_price = is_numeric($latest_drug_cost_price) ? (int)$latest_drug_cost_price : 0; - if($requisition->approval_status == 1){$batch_quantity_requested=$associative_approved_drugs_array[$drug_id]; }else{$batch_quantity_requested=$quantity_requested;} - $needed_batches_array = get_stores_batch_watcher_ids_to_use_based_on_needed_quantity($drug_id, $requisition->quotation_type_id, $batch_quantity_requested); - - $store_batch_records =track_batch_stock($requisition->quotation_type_id,$drug_id,'store_stock'); - if ($requisition->quotation_type_id == 2){ - if($requisition->requisition_origin == 2){ - $other_batch_records=track_batch_stock_selected_column($requisition->quotation_type_id,$drug_id,'lab_stock',['batch_number','lab_stock as stock','expiry_date']); - } - else if($requisition->requisition_origin == 3){ - $other_batch_records=track_batch_stock_selected_column($requisition->quotation_type_id,$drug_id,'radiology_stock',['batch_number','radiology_stock as stock','expiry_date']); - } else { - $other_batch_records=track_batch_stock_selected_column($requisition->quotation_type_id,$drug_id,'pharmacy_stock',['batch_number','pharmacy_stock as stock','expiry_date']); - } - - }else{ - - if ($requisition->quotation_type_id == 5 || $requisition->quotation_type_id == 4){ - $other_batch_records=track_batch_stock_selected_column($requisition->quotation_type_id,$drug_id,'lab_stock',['batch_number','lab_stock as stock','expiry_date']); - } - else { - $other_batch_records=track_batch_stock_selected_column($requisition->quotation_type_id,$drug_id,'pharmacy_stock',['batch_number','pharmacy_stock as stock','expiry_date']); - } - } - - - @endphp - - @if (count($needed_batches_array) > 0) - @foreach ($needed_batches_array as $needed_batch => $bacth_qty) - @php $drug_store_stock=$unit_stock = 0; @endphp - - - - - {{ Form::hidden('drug_name[]', $drug_name_requested, ['id' => 'drug_name' . $drug_id, 'class' => 'drug_name_'.$drug_id]) }} - - - - - - - - - - - @endforeach - @else - @php $drug_store_stock=$unit_stock = 0; @endphp - - - - - - {{ Form::hidden('drug_name[]', $drug_name_requested, ['id' => 'drug_name' . $drug_id, 'class' => 'drug_name_'.$drug_id]) }} - {{ Form::hidden('store_stock[]', $drug_store_stock, ['class' => 'form-control drugs_to_issue_out', 'readonly', 'id' => 'store_stock' . $drug_id]) }} - {{-- --}} - - - - - - - - - - - - @endif - @endforeach - -
    {{ __('stores.item_name') }}{{ __('stores.store_batches') }}{{ get_requisition_origin($requisition->requisition_origin) }} {{ __('stores.stock') }}{{ __('stores.store_stock') }}{{ __('stores.quantity_requested') }}{{ __('stores.quantity_approved') }}{{ __('stores.cost_value') }}{{ __('stores.quantity_to_issued') }}{{ __('stores.issuing_from_batch') }} ({{ batch_tracking_method()}})
    - {{ $drug_name_requested }} - - @if(count($store_batch_records) > 0) - @foreach($store_batch_records as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->store_stock }}
    - @php - $drug_store_stock += $record->store_stock; - @endphp - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - @endforeach - Total: {{$drug_store_stock}} - @endif - {{ Form::hidden('store_stock[]', $drug_store_stock, ['class' => 'form-control drugs_to_issue_out', 'readonly', 'id' => 'store_stock' . $drug_id]) }} - -
    - @if(count($other_batch_records) > 0) - @foreach($other_batch_records as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->stock }}
    - @php - $unit_stock += $record->stock; - @endphp - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date)}} -
    -
    - @endforeach - Total: {{ $unit_stock}} - @endif -
    - - @if ($drug_form_name !='')

    {{ $quantity_requested }} {{ $drug_form_name }}

    @endif -
    - {{-- {{ Form::select('units[]', $unit_of_measure, $drug_form_id, ['class' => 'form-control', 'readonly']) }} --}} - - - - - @if (Auth::user()->can('edit-quantity-to-issue')) - - @else - - @endif - - @if (batch_tracking_method() == "manual") - -
    - @if (Auth::user()->can('add-new-batch-to-issue-out')) - {{ __('stores.add_batch_small') }} - @endif - @else - {{ Form::select('issued_batch_number[]', $facade_batches_options, $needed_batch, ['class' => 'form-control compulsory batchScan', 'id' => 'batch_scan_id_'.$drug_id]) }} -
    - @if (Auth::user()->can('add-new-batch-to-issue-out')) - {{ __('stores.add_batch_small') }} - @endif - @endif -
    - {{ $drug_name_requested }} - - @if(count($store_batch_records) > 0) - @foreach($store_batch_records as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->store_stock }}
    - @php - $drug_store_stock += $record->store_stock; - @endphp - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - @endforeach - Total: {{$drug_store_stock}} - @endif -
    - - - - @if ($drug_form_name !='')

    {{ $quantity_requested }} {{ $drug_form_name }}

    @endif -
    - {{-- {{ Form::select('units[]', $unit_of_measure, $drug_form_id, ['class' => 'form-control']) }} --}} - - - - - @if (Auth::user()->can('edit-quantity-to-issue')) - - @else - - @endif - - @if (batch_tracking_method() == "manual") - -
    - @if (Auth::user()->can('add-new-batch-to-issue-out')) - {{ __('stores.add_batch_small') }} - @endif - @else - {{ Form::select('issued_batch_number[]', $facade_batches_options, '', ['required', 'class' => 'form-control compulsory batchScan'])}} -
    - @if (Auth::user()->can('add-new-batch-to-issue-out')) - {{ __('stores.add_batch_small') }} - @endif - @endif -    Remove item -
    -
    - -
    -
    -
    - -
    -
    - {{ Form::label('received_by', 'RECEIVED BY') }} - {{ Form::select('received_by', $staff_array, '', ['id'=>'received_by','class' => 'form-control col-sm-8 ward_allocation','required']) }} -
    -
    -
    -
    - {{ Form::label('issue_date',__('stores.issue_date')) }} -
    - {{ Form::text('issue_date',\Carbon\Carbon::now()->format('d/m/Y'),['class' => 'form-control compulsory', 'required', 'readonly','id'=>'datepicker-autoclose']) }} - -
    -
    -
    - -
    - -
    -
    - {{ Form::label('issue_out_comment', 'COMMENT') }} - {{ Form::textarea('issue_out_comment', '', ['class' => 'form-control col-sm-8']) }} -
    -
    - -
    - - - {{ Form::button(__('stores.issue'),['type'=>'submit','id'=>'save_issue_out_drugs','form'=>'issue_out_drugs_form','formaction'=>'issue_out_drugs','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} - -
    -
    -
    -
    - {{--
    -
    - {{ Form::label('issue_date',__('stores.issue_date')) }} -
    - {{ Form::text('issue_date',\Carbon\Carbon::now()->format('d/m/Y'),['class' => 'form-control compulsory', 'required', 'readonly','id'=>'datepicker-autoclose']) }} - -
    -
    -
    - - {{ Form::button(__('stores.issue_drugs'),['type'=>'submit','form'=>'issue_out_drugs_form','id'=>'save_issue_out_drugs','formaction'=>'issue_out_drugs','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    --}} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush - - - - diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/issue_out_general_items_form.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/issue_out_general_items_form.blade.php deleted file mode 100755 index 60f03ad8..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/issue_out_general_items_form.blade.php +++ /dev/null @@ -1,308 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.issue') }} {{get_quotation_type_name($requisition->quotation_type_id)}}

    -
    -
    - -
    -
    - - @include('flash::message') - -
    -
    -
    -
    -
    -
    - - @csrf - - - - - - - - - - - @if(track_items_using_batches()) - - @endif - - - - - @php - $drug_id_explode_array = explode(",", $requisition->drug_id); - $quantity_explode_array = explode(",", $requisition->quantity_requested); - $per_drug_explode_array = explode(",", $requisition->per_drug); - @endphp - - - - - - -
    {{ __('stores.date') }}
    - {{ streamline_date($requisition->created_at) }} - - - - - - - - - @if ($requisition->quotation_type_id != 3) @endif - @if(track_items_using_batches()) - - @endif - - @foreach ($associative_requested_drugs_array as $general_item_id => $quantity_requested) - @php - $drug_name_requested = get_name($general_item_id, "id", "name", "{$table_name}"); - $store_stock = get_name($general_item_id, "id", "store_stock", "{$table_name}"); - $general_form_id = "N/A"; //get_name($general_item_id, "id", "form_id", "general_items"); - $general_form_name = get_name($general_form_id, "id", "name", "unit_of_measure"); - $latest_general_item_cost_price = get_latest_cost_of_good($general_item_id, 1); - $latest_general_item_cost_price = is_numeric($latest_general_item_cost_price) ? $latest_general_item_cost_price : 0; - @endphp - - - - - - - @if($requisition->quotation_type_id !=3) - - @endif - @if(track_items_using_batches()) - @php - - //display to the user the batch that is going to be used - $batch_in_use=null; - $batch_details_to_use = get_batch_and_quotation_id_details_to_use_for_particular_item_based_on_fifo($general_item_id, $batch_number = null, $requisition->quotation_type_id); - - if (!is_null($batch_details_to_use)) { - $batch_in_use = $batch_details_to_use['batch_number']; - } - - @endphp - - - @endif - - @if (batch_tracking_method() == "manual") - - - - @endif - @endforeach -
    {{ __('stores.item_name') }}{{ __('stores.quantity_requested') }}{{ __('stores.quantity_issued') }}{{ __('stores.store_stock') }}{{ __('stores.cost_value') }}{{ __('stores.units') }}{{ __('stores.issuing_from_batch') }}
    - {{ $drug_name_requested }} - - - - - - {{ Form::hidden('drug_name[]', $drug_name_requested, ['id' => 'drug_name' . $general_item_id]) }} - {{ Form::number('store_stock[]', $store_stock, ['class' => 'form-control drugs_to_issue_out', 'readonly', 'id' => 'store_stock' . $general_item_id]) }} - - - - - {{ Form::select('units[]', $unit_of_measure, $general_form_id, ['class' => 'form-control']) }} - - @if (batch_tracking_method() == "manual") - - add batch ({{$drug_name_requested}}) - @else - {{ $batch_in_use }} - @endif -
    -
    -
    -
    -
    - {{ Form::label('issue_date',__('stores.issue_date')) }} -
    - {{ Form::text('issue_date',null,['class' => 'form-control compulsory', 'required', 'readonly','id'=>'datepicker-autoclose']) }} - -
    -
    -
    - - {{ Form::button('Issue Items',['type'=>'submit','form'=>'issue_out_drugs_form','id'=>'save_issue_out_drugs','formaction'=>'issue_out_drugs','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - -@endpush - - diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/issue_out_labs_form.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/issue_out_labs_form.blade.php deleted file mode 100755 index 566e1ae4..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/issue_out_labs_form.blade.php +++ /dev/null @@ -1,216 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.issue_items') }}

    -
    -
    - -
    - @include('flash::message') -
    - -
    -
    -
    -
    -
    -
    - - @csrf - - - - - - - - - - - - - @php - $drug_id_explode_array = explode(",", $requisition->drug_id); - $quantity_explode_array = explode(",", $requisition->quantity_requested); - $per_drug_explode_array = explode(",", $requisition->per_drug); - @endphp - - - - - - -
    {{ __('stores.date') }}
    - {{ streamline_date($requisition->created_at) }} - - - - - - - - - - {{-- --}} - - @foreach ($associative_requested_drugs_array as $labs_id => $quantity_requested) - @php - $drug_name_requested = get_name($labs_id, "id", "name", "labs"); - $latest_drug_cost_price = get_latest_cost_of_good($labs_id, 4); - $latest_drug_cost_price = is_numeric($latest_drug_cost_price) ? $latest_drug_cost_price : 0; - $needed_batches_array = get_stores_batch_watcher_ids_to_use_based_on_needed_quantity($labs_id, 5, $quantity_requested); - - $store_batch_records = track_batch_stock(5,$labs_id,'store_stock'); - $item_store_stock = 0; - @endphp - @forelse ($needed_batches_array as $needed_batch => $bacth_qty) - - - - - - - {{-- --}} - - {{-- --}} - - @empty - - - - - - - @endforelse - - @endforeach -
    {{ __('stores.item_name') }}{{ __('stores.quantity_requested') }}{{ __('stores.quantity_issued') }}{{ __('stores.store_stock') }}{{ __('stores.cost_unit') }}{{ __('stores.cost_value') }}{{ __('stores.units') }}
    - {{ $drug_name_requested }} - - - - @if(count($store_batch_records) > 0) - @foreach($store_batch_records as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->store_stock }}
    - @php - $item_store_stock += $record->store_stock; - @endphp - {{ __('stores.expiry_date') }}: {{ $record->expiry_date }} -
    -
    - @endforeach - Total Stock: {{ $item_store_stock }} - @endif -
    - - - - {{ Form::hidden('drug_name[]', $drug_name_requested, ['id' => 'drug_name' . $labs_id, 'class' => 'drug_name_'.$labs_id]) }} - {{ Form::number('store_stock[]', $item_store_stock, ['class' => 'form-control drugs_to_issue_out', 'readonly', 'id' => 'store_stock' . $labs_id]) }} - - - - - {{ Form::select('units[]', $unit_of_measure, '', ['class' => 'form-control']) }} -
    - {{ $drug_name_requested }} - - - - - -
    -
    -
    -
    -
    - {{ Form::label('issue_date',__('stores.issue_date')) }} -
    - {{ Form::text('issue_date',\Carbon\Carbon::now()->format('d/m/Y'),['class' => 'form-control compulsory', 'required', 'readonly','id'=>'datepicker-autoclose']) }} - -
    -
    -
    - - {{ Form::button(__('stores.issue_out_to_lab'),['type'=>'submit','form'=>'issue_out_drugs_form','id'=>'save_issue_out_to_lab','formaction'=>'issue_out_drugs','class'=>'btn btn-success waves-effect waves-light m-r-10','name'=>'issue_out_to_lab']) }} -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush - - - - diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/issue_out_optical_items_form.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/issue_out_optical_items_form.blade.php deleted file mode 100644 index 33f2e4d8..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/issue_out_optical_items_form.blade.php +++ /dev/null @@ -1,138 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.issue_optical_items') }}

    -
    -
    - -
    -
    - - @include('flash::message') - -
    - - @csrf -
    -
    - - @php - $drug_id_explode_array = explode(",", $requisition->drug_id); - $quantity_explode_array = explode(",", $requisition->quantity_requested); - $per_drug_explode_array = explode(",", $requisition->per_drug); - @endphp - - - - - - - - - - @foreach ($associative_requested_drugs_array as $general_item_id => $quantity_requested) - @php - $drug_name_requested = get_name($general_item_id, "id", "name", "eye_glasses"); - $store_stock = get_name($general_item_id, "id", "store_stock", "eye_glasses"); - $general_form_id = "N/A"; - $latest_general_item_cost_price = get_name($general_item_id, "id", "buying_price", "eye_glasses"); - @endphp - - - - - - - - @endforeach -
    {{ __('stores.item_name') }}{{ __('stores.quantity_requested') }}{{ __('stores.quantity_issued') }}{{ __('stores.store_stock') }}{{ __('stores.cost_value') }}
    - {{ $drug_name_requested }} - - - - - - {{ Form::hidden('drug_name[]', $drug_name_requested, ['id' => 'drug_name' . $general_item_id]) }} - {{ Form::number('store_stock[]', $store_stock, ['class' => 'form-control drugs_to_issue_out', 'readonly', 'id' => 'store_stock' . $general_item_id]) }} - - - -
    -
    -
    -
    - {{ Form::label('issue_date',__('stores.issue_date')) }} -
    - {{ Form::text('issue_date',null,['class' => 'form-control compulsory', 'required', 'readonly','id'=>'datepicker-autoclose']) }} - -
    -
    -
    - - {{ Form::button('Issue Items',['type'=>'submit','form'=>'issue_out_drugs_form','id'=>'save_issue_out_drugs','formaction'=>'issue_out_drugs','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    -
    - - -
    -@endsection - -@push('scripts') - - - - -@endpush - - diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/issue_out_radiologies_form.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/issue_out_radiologies_form.blade.php deleted file mode 100755 index 512d8007..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/issue_out_radiologies_form.blade.php +++ /dev/null @@ -1,222 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.issue_out') }}

    -
    -
    - -
    - @include('flash::message') -
    - -
    -
    -
    -
    -
    -
    -
    - @csrf - - - - - - - - - - - @if(track_items_using_batches()) - - @endif - - - - - @php - $drug_id_explode_array = explode(",", $requisition->drug_id); - $quantity_explode_array = explode(",", $requisition->quantity_requested); - $per_drug_explode_array = explode(",", $requisition->per_drug); - @endphp - - - - - - -
    {{ __('stores.date') }}
    - {{ streamline_date($requisition->created_at) }} - - - - - - - - - - @if(track_items_using_batches()) - - @endif - - @foreach ($associative_requested_drugs_array as $drug_name_requested => $quantity_requested) - @php - $radiology_name = $drug_name_requested; - $radiology_id = get_name($drug_name_requested, "name", "id", "radiologies"); - $store_stock = get_name($radiology_id, "id", "store_stock", "radiologies"); - $latest_drug_cost_price = get_latest_cost_of_good($radiology_id, 2); - $latest_drug_cost_price = is_numeric($latest_drug_cost_price) ? $latest_drug_cost_price : 0; - @endphp - - - - - - - - - @endforeach -
    {{ __('stores.item_name') }}{{ __('stores.quantity_requested') }}{{ __('stores.quantity_issued') }}{{ __('stores.store_stock') }}{{ __('stores.cost_value') }}{{ __('stores.units') }}{{ __('stores.issuing_from_batch') }}
    - {{ $drug_name_requested }} - - - - - {{ Form::hidden('drug_name[]', $drug_name_requested, ['id' => 'drug_name' . $radiology_id]) }} - {{ Form::number('store_stock[]', $store_stock, ['class' => 'form-control drugs_to_issue_out', 'readonly', 'id' => 'store_stock' . $radiology_id]) }} - - - - - {{ Form::select('units[]', $unit_of_measure, '', ['class' => 'form-control']) }} -
    -
    -
    -
    -
    - {{ Form::label('issue_date',__('stores.issue_date')) }} -
    - {{ Form::text('issue_date',\Carbon\Carbon::now()->format('d/m/Y'),['class' => 'form-control compulsory', 'required', 'readonly','id'=>'datepicker-autoclose']) }} - -
    -
    -
    - - {{ Form::button(__('stores.issue_items'),['type'=>'submit','form'=>'issue_out_drugs_form','id'=>'save_issue_out_drugs','formaction'=>'issue_out_drugs','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush - - - - diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/issue_out_sundries_form.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/issue_out_sundries_form.blade.php deleted file mode 100755 index bc02e8b1..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/issue_out_sundries_form.blade.php +++ /dev/null @@ -1,376 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.issue_out') }}

    -
    -
    - -
    - @include('flash::message') -
    - -
    -
    -
    -
    -

    {{ __('stores.issue_to') }} {{ get_requisition_origin($requisition->requisition_origin) }} - {{ get_full_name($requisition->created_by, "id", "first_name", "last_name", "users") }} {{ streamline_date($requisition->created_at) }}

    -
    -
    - - @csrf - - - - - - - - - - {{-- --}} - {{-- --}} - {{-- --}} - @if(track_items_using_batches()) - - @endif - - - - - @php - $drug_id_explode_array = explode(",", $requisition->drug_id); - $quantity_explode_array = explode(",", $requisition->quantity_requested); - $per_drug_explode_array = explode(",", $requisition->per_drug); - @endphp - - @php - $facade_batches_options = []; - $option_batches = ""; - foreach ($batches_array as $item_batch) { - $option_batches .= ""; - - $facade_batches_options[$item_batch->id] = $item_batch->batch_number." (Expiry Date: ".$item_batch->expiry_date.")"; - } - $facade_batches_options = ['' => '- select -'] + $facade_batches_options; - @endphp - - @foreach ($associative_requested_drugs_array as $sundry_id => $quantity_requested) - @php - $drug_name_requested = get_name($sundry_id, "id", "name", "sundries"); - $store_stock = get_name($sundry_id, "id", "store_stock", "sundries"); - $latest_drug_cost_price = get_latest_cost_of_good($sundry_id, 2); - $latest_drug_cost_price = is_numeric($latest_drug_cost_price) ? $latest_drug_cost_price : 0; - - $needed_batches_array = get_stores_batch_watcher_ids_to_use_based_on_needed_quantity($sundry_id, 2, $quantity_requested); - - $store_batch_records = track_batch_stock(2,$sundry_id,'store_stock'); - $other_batch_records=track_batch_stock_selected_column(2,$sundry_id,'pharmacy_stock',['batch_number','pharmacy_stock as stock','expiry_date']); - - $drug_store_stock=$unit_stock = 0; - @endphp - @if (count($needed_batches_array) > 0) - @foreach ($needed_batches_array as $needed_batch => $bacth_qty) - - - - - - - - - {{ Form::hidden('drug_name[]', $drug_name_requested, ['id' => 'drug_name' . $sundry_id, 'class' => 'drug_name_'.$sundry_id]) }} - {{-- --}} - - {{-- --}} - {{-- --}} - - - - @endforeach - @else - - - - - - - - - {{ Form::hidden('drug_name[]', $drug_name_requested, ['id' => 'drug_name' . $sundry_id]) }} - {{-- --}} - - {{-- --}} - {{-- --}} - - - - @endif - @endforeach - -
    {{ __('stores.item_name') }}{{ __('stores.store_stock') }}{{ __('stores.unit_stock') }}{{ __('stores.quantity_requested') }}{{ __('stores.quantity_approved') }}{{ __('stores.quantity_issued') }}{{ __('stores.cost_unit') }}{{ __('stores.cost_value') }}{{ __('stores.units') }}{{ __('stores.issuing_from_batch') }}
    - {{ $drug_name_requested }} - - @if(count($store_batch_records) > 0) - @foreach($store_batch_records as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->store_stock }}
    - @php - $drug_store_stock += $record->store_stock; - @endphp - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - @endforeach - @endif -
    - @if(count($other_batch_records) > 0) - @foreach($other_batch_records as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->stock }}
    - @php - $unit_stock += $record->stock; - @endphp - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date)}} -
    -
    - @endforeach - Total: {{ $unit_stock}} - @endif -
    - - - - - - - {{ Form::number('store_stock[]', $drug_store_stock, ['class' => 'form-control drugs_to_issue_out', 'readonly', 'id' => 'store_stock' . $sundry_id]) }} - - - - {{ Form::select('units[]', $unit_of_measure, '', ['class' => 'form-control']) }} - - @if (batch_tracking_method() == "manual") - - {{ __('stores.add_batch_small') }} - @else - {{ Form::select('issued_batch_number[]', $facade_batches_options, $needed_batch, ['class' => 'form-control compulsory batchScan', 'id' => 'batch_scan_id_'.$sundry_id]) }} - {{ __('stores.add_batch_small') }} - @endif -
    - {{ $drug_name_requested }} - - @if(count($store_batch_records) > 0) - @foreach($store_batch_records as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->store_stock }}
    - @php - $drug_store_stock += $record->store_stock; - @endphp - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - @endforeach - @endif -
    - @if(count($other_batch_records) > 0) - @foreach($other_batch_records as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->stock }}
    - @php - $unit_stock += $record->stock; - @endphp - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date)}} -
    -
    - @endforeach - Total: {{ $unit_stock}} - @endif -
    - - - - - - - {{ Form::number('store_stock[]', $drug_store_stock, ['class' => 'form-control drugs_to_issue_out', 'readonly', 'id' => 'store_stock' . $sundry_id]) }} - - - - {{ Form::select('units[]', $unit_of_measure, '', ['class' => 'form-control']) }} - - @if (batch_tracking_method() == "manual") - - {{ __('stores.add_batch_small') }} - @else - {{ Form::select('issued_batch_number[]', $facade_batches_options, '', ['class' => 'form-control compulsory batchScan'])}} - {{ __('stores.add_batch_small') }} - @endif -   Remove item -
    - -
    -
    -
    - {{ Form::label('issue_date',__('stores.issue_date')) }} -
    - {{ Form::text('issue_date',\Carbon\Carbon::now()->format('d/m/Y'),['class' => 'form-control compulsory', 'required', 'readonly','id'=>'datepicker-autoclose']) }} - -
    -
    -
    - - {{ Form::button(__('stores.issue_drugs'),['type'=>'submit','form'=>'issue_out_drugs_form','id'=>'save_issue_out_drugs','formaction'=>'issue_out_drugs','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush - - - - diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/issued_item_print.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/issued_item_print.blade.php deleted file mode 100755 index bce0f272..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/issued_item_print.blade.php +++ /dev/null @@ -1,179 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'ISSUED ITEM PRINTOUT - Stre@mline') }} - - - - - - -
    -
    - @include('layouts.header_pdf_print') -
    - -
    {{ __('stores.issued') }} {{ get_quotation_type_name($requisition_model->quotation_type_id) }} {{__('stores.from_stores_to')}} {{ get_requisition_origin($requisition_model->requisition_origin) }}
    -
    - - - - - - - - @if ($requisition_model->quotation_type_id == 1)@endif - - - - - @php - $counter = 1; - $grand_total = 0; - $requisition_type_id = $requisition_model->quotation_type_id; - $item_array = explode(",", $requisition_model->item_ids_issued_out); - $quantity_array = explode(",", $requisition_model->quantity_issued); - $batch_array = explode(",", $requisition_model->batch_issued_out); - $cost_value = explode(",",$requisition_model->cost_value); - @endphp - - @for($i = 0; $i < count($quantity_array) ; $i++) - @if(isset($quantity_array[$i]) && $quantity_array[$i] != "" && isset($item_array[$i])) - - - - @if($requisition_type_id == 1) - - @php - $cost_price = get_name($item_array[$i], 'id', 'cost_price', 'drugs'); - @endphp - @elseif($requisition_type_id == 2) - - @php - $cost_price = get_name($item_array[$i], 'id', 'cost_price', 'sundries'); - @endphp - @elseif($requisition_type_id == 3) - - @php - $cost_price = get_name($item_array[$i], 'id', 'buying_price', 'dentals'); - @endphp - @elseif($requisition_type_id == 4) - - @php - $cost_price = get_name($item_array[$i], 'id', 'cost_price', 'radiologies'); - @endphp - @elseif($requisition_type_id == 5) - - @php - $cost_price = get_name($item_array[$i], 'id', 'cost_price', 'labs'); - @endphp - @elseif($requisition_type_id == 6) - - @php - $cost_price = get_name($item_array[$i], 'id', 'cost_price', 'general_items'); - @endphp - @elseif($requisition_type_id == 7) - - @php - $cost_price =null; - @endphp - @endif - - - - @php - $drug_form = get_name($item_array[$i], 'id', 'form_id', 'drugs'); - @endphp - @if ($requisition_type_id == 1) - - @endif - - - @php $counter++; @endphp - @endif - @endfor - - - - - @if ($requisition_type_id == 1)@endif - - - - -
    {{ __('pharmacy.number') }}{{ __('pharmacy.item_name') }}{{ __('pharmacy.quantity') }}{{ __('stores.batch') }}{{ __('pharmacy.units') }}{{ __('pharmacy.cost_value') }}
    {{ $counter }}. {{ get_name($item_array[$i], 'id', 'name', 'drugs') }}{{ get_name($item_array[$i], 'id', 'name','sundries') }}{{ get_name($item_array[$i], 'id', 'name','dentals') }}{{ get_name($item_array[$i], 'id', 'name','radiologies') }}{{ get_name($item_array[$i], 'id', 'name','labs') }}{{ get_name($item_array[$i], 'id', 'name','general_items') }}{{ get_name($item_array[$i], 'id', 'name','eye_glasses') }}{{ $quantity_array[$i] }} - @php - $batch_number= get_name($batch_array[$i]??0,'id','batch_number','item_batch_watcher'); - @endphp - {{ $batch_number }} - - {{ get_name($drug_form, 'id', 'name', 'unit_of_measure') }} - - @php - $quantity = (isset($quantity_array[$i]) && is_numeric($quantity_array[$i])) ? $quantity_array[$i] : 0; - $item_cost = is_numeric($cost_value[$i]) ? $cost_value[$i] : 0; - $item_sub_total = $item_cost; - $grand_total += $item_sub_total; - @endphp - {{ ugandan_shillings($item_sub_total) }} -
    Total{{ ugandan_shillings($grand_total) }}
    - - @if($requisition_model->received_comment) - - @endif -
    - {{ __('stores.general_comment') }} -

    {{ $requisition_model->received_comment }}

    -
    -
    - - - - @if($requisition_model->approved_by != '') - - @endif - - - -
    - {{ __('pharmacy.requisitioned_by') }}: {{ get_full_name($requisition_model->created_by, "id", "first_name", "last_name", "users") }}

    - Requisitioned On: {{ streamline_date_time_short($requisition_model->created_at) }}

    - ....................................... -
    - {{ __('stores.approved_by') }}: {{ get_full_name($requisition_model->approved_by, "id", "first_name", "last_name", "users") }}

    - {{ __('stores.approved_on') }}: {{ streamline_date_time_short($requisition_model->approved_date) }}

    - ....................................... -
    - {{ __('stores.issued_by') }}: {{ get_full_name($requisition_model->issued_by, "id", "first_name", "last_name", "users") }}

    - Issued On: {{ streamline_date_time_short($requisition_model->updated_at) }}

    - ....................................... -
    - {{ __('stores.received_by') }}: @if($requisition_model->received_by != '') {{ get_full_name($requisition_model->received_by, "id", "first_name", "last_name", "users") }}@endif

    - {{ __('stores.received_on') }}: @if($requisition_model->issued_on != ''){{ streamline_date($requisition_model->issued_on) }}@endif

    - - ....................................... -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/issued_items_history.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/issued_items_history.blade.php deleted file mode 100644 index 032ee512..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/issued_items_history.blade.php +++ /dev/null @@ -1,530 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.issued_items_history') }}

    -
    -
    - -
    -
    - - @include('flash::message') - -
    -
    -
    - {{ Form::open(['method' => 'post', 'route'=>'stores.issued_items_history'])}} - {{ Form::label('quotation_type', __('stores.order_type')) }} - {{ Form::select('quotation_type', $quotation_type_options , null, ['class'=>'form-control compulsory', 'required']) }} -
    - -
    -
    - {{ Form::label('selected_drugs', __('stores.select_item')) }} - {{ Form::select('selected_drugs', $item_options['drugs'], null, ['id' => 'drugs_select', 'class' => 'form-control compulsory']) }} -
    - -
    - {{ Form::label('selected_sundries', __('stores.select_item')) }} - {{ Form::select('selected_sundries', $item_options['sundries'], null, ['id' => 'sundries_select', 'class' => 'form-control compulsory']) }} -
    - -
    - {{ Form::label('selected_dentals', __('stores.select_item')) }} - {{ Form::select('selected_dentals', $item_options['dentals'], null, ['id' => 'dentals_select', 'class' => 'form-control compulsory']) }} -
    - -
    - {{ Form::label('selected_labs', __('stores.select_item')) }} - {{ Form::select('selected_labs', $item_options['labs'], null, ['id' => 'labs_select', 'class' => 'form-control compulsory']) }} -
    - -
    - {{ Form::label('selected_radiologies', __('stores.select_item')) }} - {{ Form::select('selected_radiologies', $item_options['radiologies'], null, ['id' => 'radiologies_select', 'class' => 'form-control compulsory']) }} -
    - -
    - {{ Form::label('selected_general_items', __('stores.select_item')) }} - {{ Form::select('selected_general_items', $item_options['general_items'], null, ['id' => 'general_items_select', 'class' => 'form-control compulsory']) }} -
    - -
    - {{ Form::label('selected_eye_glasses', __('stores.select_item')) }} - {{ Form::select('selected_eye_glasses', $item_options['eye_glasses'], null, ['id' => 'eye_glasses_select', 'class' => 'form-control compulsory']) }} -
    -
    - -
    - {{ Form::label('start_date',__('stores.start')) }} -
    - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-autoclose1']) }} - -
    -
    - -
    - {{ Form::label('end_date',__('stores.end')) }} -
    - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-autoclose2']) }} - -
    -
    -
    -
    - -
    -
    - - {{ Form::close() }} -
    - -
    - - @php - $grand_total_requested = $grand_total_issued = $grand_cost_value = 0; - @endphp - - @if ($search_all_items) -
    -

    {{ $display }}

    - -
    - - - - - - - - - - - - - - @if(count($all_items_results) > 0) - @php $counter = 1; @endphp - @foreach($all_items_results as $item_id => $value_array) - - - - - - - - - @php - $counter++; - $grand_total_requested += (int)$value_array["quantity_requested"] ?? 0; - $grand_total_issued += (int)$value_array["quantity_issued"] ?? 0; - $grand_cost_value += (int)$value_array["cost_value"] ?? 0; - @endphp - @endforeach - @endif - - - - - - - - - - - -
    #{{ __('stores.item_name') }}{{ __('stores.quantity_requested') }}{{ __('stores.cost_value') }}{{ __('stores.quantity_issued') }}
    {{ $counter }} - @switch($item_type) - @case(1) - {{ get_name($item_id, "id", "name", "drugs") }} - @break - @case(2) - {{ get_name($item_id, "id", "name", "sundries") }} - @break - @case(3) - {{ get_name($item_id, "id", "name", "dentals") }} - @break - @case(4) - {{ get_name($item_id, "id", "name", "radiologies") }} - @break - @case(5) - {{ get_name($item_id, "id", "name", "labs") }} - @break - @case(6) - {{ get_name($item_id, "id", "name", "general_items") }} - @break - @case(7) - {{ get_name($item_id, "id", "name", "eye_glasses") }} - @break - @default - - @endswitch - {{ $value_array["quantity_requested"] }}{{ ugandan_shillings($value_array["cost_value"]) }}{{ $value_array["quantity_issued"] }} - - {{ csrf_field() }} - - - - @switch($item_type) - @case(1) - - @break - @case(2) - - @break - @case(3) - - @break - @case(4) - - @break - @case(5) - - @break - @case(6) - - @break - @case(7) - - @break - @default - @endswitch - - - -
    - {{ csrf_field() }} - - - - @switch($item_type) - @case(1) - - @break - @case(2) - - @break - @case(3) - - @break - @case(4) - - @break - @case(5) - - @break - @case(6) - - @break - @case(7) - - @break - @default - @endswitch - -
    -
    {{ $grand_total_requested }}{{ ugandan_shillings($grand_cost_value) }}{{ $grand_total_issued }}
    -
    - - @else - -
    -

    {{ $display }}

    - -
    - - - - - - - - - - - - - - - - @if(count($results) > 0) - @php $counter = 1; @endphp - @foreach($results as $result) - @php - $requested_item_id_explode = explode(",", $result->drug_id); - $item_id_explode = explode(",", $result->item_ids_issued_out); - $quantity_explode = explode(",", $result->quantity_requested); - $issued_out_explode = explode(",", $result->quantity_issued); - $item_cost_value_explode = explode(",", $result->cost_value); - @endphp - - @for($x = 0; $x < count($item_id_explode); $x++) - @if($item_id_explode[$x] == $item_id) - - - - - - - - - - - @php - $counter++; - $grand_total_requested += (int)$quantity_explode[$x] ?? 0; - $grand_total_issued += isset($issued_out_explode[$x]) ? (int)$issued_out_explode[$x] : 0; - $grand_cost_value += isset($item_cost_value_explode[$x]) ? (int)$item_cost_value_explode[$x] : 0; - @endphp - @endif - @endfor - @endforeach - @else - - @endif - - {{-- start wards calculations --}} - @if(count($ward_results) > 0) - @foreach($ward_results as $ward_result) - @php - $item_id_explode = explode(",", $ward_result->item_ids_issued_out); - /* $quantity_explode = explode(",", $ward_result->item_quantities); */ - $issued_out_explode = explode(",", $ward_result->quantity_issued_out); - /* $item_cost_value_explode = explode(",", $ward_result->cost_value); */ - @endphp - @for($x = 0; $x < count($item_id_explode); $x++) - @if($item_id_explode[$x] == $item_id) - - - - - - - - - - - @php - $counter++; - $grand_total_requested += 0; - $grand_total_issued += (int)$issued_out_explode[$x] ?? 0; - $grand_cost_value += 0; - @endphp - @endif - @endfor - @endforeach - @endif - {{-- end wards calculations --}} - - - - - - - - - - - - - - -
    #{{ __('stores.quantity_requested') }}{{ __('stores.cost_value') }}{{ __('stores.quantity_issued') }}{{ __('stores.requested_by') }}{{ __('stores.issued_by') }}{{ __('stores.issued_on') }}
    {{ $counter }} {{ $quantity_explode[$x] ?? "" }}{{ ugandan_shillings($item_cost_value_explode[$x] ?? 0) }}{{ $issued_out_explode[$x] ?? "" }}{{ get_full_name($result->created_by, "id", "first_name", "last_name", "users") }}{{ get_full_name($result->issued_by, "id", "first_name", "last_name", "users") }}{{ streamline_date($result->issued_on) }} -
    - {{ csrf_field() }} - - - -
    -
    {{ __('stores.please_search_for_records') }}
    {{ $counter }} {{-- {{ $quantity_explode[$x] ?? "" }} --}}{{-- {{ ugandan_shillings($item_cost_value_explode[$x] ?? 0) }} --}}{{ $issued_out_explode[$x] ?? "" }}{{ get_full_name($ward_result->created_by, "id", "first_name", "last_name", "users") }}{{ get_full_name($ward_result->dispensed_by, "id", "first_name", "last_name", "users") }}{{ streamline_date($ward_result->dispensation_date) }} -
    - {{ csrf_field() }} - - - -
    -
    {{ $grand_total_requested }}{{ ugandan_shillings($grand_cost_value)}}{{ $grand_total_issued }}
    -
    - @endif -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/issued_items_history_cost_centres.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/issued_items_history_cost_centres.blade.php deleted file mode 100644 index e854cb7c..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/issued_items_history_cost_centres.blade.php +++ /dev/null @@ -1,312 +0,0 @@ -@extends('layouts.main') -@push('styles') - - - - -@endpush -@section('content') -
    -
    -

    {{ __('stores.issued_items_history') }}

    -
    -
    - -
    -
    - @include('flash::message') -
    -
    -
    - {{ Form::open(['method' => 'post', 'route'=>'stores.issued_items_history'])}} - {{ Form::label('quotation_type', __('stores.order_type')) }} - {{ Form::select('quotation_type', $quotation_type_options , null, ['class'=>'form-control compulsory', 'required']) }} -
    -
    -
    - {{ Form::label('selected_drugs', __('stores.select_item')) }} - {{ Form::select('selected_drugs', $item_options['drugs'], null, ['id' => 'drugs_select', 'class' => 'form-control compulsory']) }} -
    -
    - {{ Form::label('selected_sundries', __('stores.select_item')) }} - {{ Form::select('selected_sundries', $item_options['sundries'], null, ['id' => 'sundries_select', 'class' => 'form-control compulsory']) }} -
    -
    - {{ Form::label('selected_dentals', __('stores.select_item')) }} - {{ Form::select('selected_dentals', $item_options['dentals'], null, ['id' => 'dentals_select', 'class' => 'form-control compulsory']) }} -
    -
    - {{ Form::label('selected_labs', __('stores.select_item')) }} - {{ Form::select('selected_labs', $item_options['labs'], null, ['id' => 'labs_select', 'class' => 'form-control compulsory']) }} -
    -
    - {{ Form::label('selected_radiologies', __('stores.select_item')) }} - {{ Form::select('selected_radiologies', $item_options['radiologies'], null, ['id' => 'radiologies_select', 'class' => 'form-control compulsory']) }} -
    -
    - {{ Form::label('selected_general_items', __('stores.select_item')) }} - {{ Form::select('selected_general_items', $item_options['general_items'], null, ['id' => 'general_items_select', 'class' => 'form-control compulsory']) }} -
    -
    - {{ Form::label('selected_eye_glasses', __('stores.select_item')) }} - {{ Form::select('selected_eye_glasses', $item_options['eye_glasses'], null, ['id' => 'eye_glasses_select', 'class' => 'form-control compulsory']) }} -
    -
    -
    - {{ Form::label('start_date',__('stores.start')) }} -
    - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-autoclose1']) }} - -
    -
    -
    - {{ Form::label('end_date',__('stores.end')) }} -
    - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-autoclose2']) }} - -
    -
    -
    -
    - -
    -
    - {{ Form::close() }} -
    -
    - @php - $grand_total_requested = $grand_total_issued = $grand_cost_value = 0; - @endphp -
    -

    {{ $display }}

    -
    - - - - - - - - - - - @if(count($all_items_results) > 0) - @php $counter = 1; @endphp - @foreach($all_items_results as $drug_id => $statistics_array) - - - - - - - @endforeach - @endif - {{-- start wards calculations --}} - @if(count($ward_quantities_array) > 0) - @foreach($ward_quantities_array as $ward_id => $qty_issued_to_this_ward) - @php $counter++; @endphp - - - - - - @endforeach - @endif - {{-- end wards calculations --}} - - - - - - - - - -
    #{{ __('stores.cost_center') }}{{ __('stores.quantity_issued') }}
    {{ $counter }} OPD {{ $statistics_array["quantity_issued"] }} -
    - {{ csrf_field() }} - - - - @switch($item_type) - @case(1) - - @break - @case(2) - - @break - @case(3) - - @break - @case(4) - - @break - @case(5) - - @break - @case(6) - - @break - @case(7) - - @break - @default - @endswitch - -
    -
    {{ $counter }} {{ get_name($ward_id, "id", "name", "wards") }} {{ $qty_issued_to_this_ward }}
    {{ $grand_total_requested }}{{ ugandan_shillings($grand_cost_value)}}{{ $grand_total_issued }}
    -
    -
    -@endsection -@push('scripts') - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/item_bill_print.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/item_bill_print.blade.php deleted file mode 100755 index ee0a63ae..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/item_bill_print.blade.php +++ /dev/null @@ -1,244 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'ITEM BILL PRINTOUT - Stre@mline') }} - - - - - - - -
    - @include('layouts.header_pdf_print') -
    {{ $approval_status == 1 ? __('stores.purchase_order_confirmation') : "Purchase order proposal" }}
    - -
    - -
    - Quotation No: {{ $quotation_number }}
    - @php - $supplier_id = get_name($quotation_number, "quotation_number", "supplier_id", "quotations"); - $supplier = \Streamline\Models\Supplier::withTrashed()->find($supplier_id); - @endphp - @if($supplier) - SUPPLIER: {{ $supplier->name }} | {{ $supplier->mobile_number }} | {{ $supplier->address }} - @endif -
    - -
    - - - - - - - - - - - - - - -
    {{ __('stores.our_order_ref') }}{{ __('stores.your_order_ref') }}{{ __('stores.date_ordered') }}{{ __('stores.expected_date') }}
    # {{ sprintf("%04u", $quotation_number) }}# {{ $supplier_reference }}{{ streamline_date(get_name($quotation_number, "quotation_number", "quotation_date", "quotations")) }}{{ streamline_date(get_name($quotation_number, "quotation_number", "expected_date", "quotations")) }}
    - -
    - - - - - - - - - - - - - - - - @php $i = 1; $total_price = 0; @endphp - @if(count($quotations_results) > 0) - @foreach($quotations_results as $result) - @if($result->quotation_type_id == 1) - - - - - - @php - $drug_form = get_name($result->drug_id, 'id', 'form_id', 'drugs'); - @endphp - - - - - - @elseif($result->quotation_type_id == 2) - - - - - - - - - - - @elseif($result->quotation_type_id == 3) - - - - - - - - - - - @elseif($result->quotation_type_id == 4) - - - - - - - - - - - @elseif($result->quotation_type_id == 5) - - - - - - - - - - - @elseif($result->quotation_type_id == 6) - - - - - - - - - - - @elseif($result->quotation_type_id == 7) - - - - - - - - - - {{-- --}} - - @endif - @php - $i++; - $total_price += $result->total_price; - @endphp - @endforeach - - - - - - - @else - - @endif - -
    #{{ __('stores.item_name') }}No of Package UnitsBill Per Package Unit{{ __('stores.units') }}{{ __('stores.quantity') }}{{ __('stores.per_item') }}{{ __('stores.net_price') }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'drugs') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }} - - {{ ugandan_shillings_with_decimals($result->bill_per_package_unit) }} - {{ get_name($drug_form, 'id', 'name', 'unit_of_measure') }}{{ $result->quantity }}{{ ugandan_shillings_with_decimals($result->bill) }}{{ ugandan_shillings_with_decimals($result->total_price) }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'sundries') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }} - - {{ ugandan_shillings_with_decimals($result->bill_per_package_unit) }} - {{ $result->quantity }}{{ ugandan_shillings_with_decimals($result->bill) }}{{ ugandan_shillings_with_decimals($result->total_price) }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'dentals') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }}(s) - - {{ ugandan_shillings_with_decimals($result->bill_per_package_unit) }} - {{ $result->quantity }}{{ ugandan_shillings_with_decimals($result->bill) }}{{ ugandan_shillings_with_decimals($result->total_price) }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'radiologies') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }}(s) - - {{ ugandan_shillings_with_decimals($result->bill_per_package_unit) }} - {{ $result->quantity }}{{ ugandan_shillings_with_decimals($result->bill) }}{{ ugandan_shillings_with_decimals($result->total_price) }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'labs') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }} - - {{ ugandan_shillings_with_decimals($result->bill_per_package_unit) }} - {{ $result->quantity }}{{ ugandan_shillings_with_decimals($result->bill) }}{{ ugandan_shillings_with_decimals($result->total_price) }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'general_items') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }}(s) - - {{ ugandan_shillings_with_decimals($result->bill_per_package_unit) }} - {{ $result->quantity }}{{ ugandan_shillings_with_decimals($result->bill) }}{{ ugandan_shillings_with_decimals($result->total_price) }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'eye_glasses') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }}(s) - - {{ ugandan_shillings($result->bill_per_package_unit) }} - {{ $result->quantity }}{{ ugandan_shillings($result->bill) }}{{ ugandan_shillings($result->total_price) }}{{ streamline_date($result->expected_date) }}
    Total{{ ugandan_shillings_with_decimals($total_price) }}
    {{ __('stores.no_records_found') }}
    - -
    -
    - {{ __('stores.quotation_by') }}:
    - {{ get_full_name(get_name($quotation_number, "quotation_number", "created_by", "quotations"), "id", "first_name", "last_name", "users") }}
    - ({{ get_name(get_name($quotation_number, "quotation_number", "created_by", "quotations"), 'id','phone', 'users') }})
    - On {{ streamline_date(get_name($quotation_number, "quotation_number", "created_at", "quotations")) }}

    - ....................................... -
    -
    - {{ __('stores.approved_by') }}:
    - @if ($approval_status == 1) - {{ get_full_name(get_name($quotation_number, "quotation_number", "approval_user", "quotations"), "id", "first_name", "last_name", "users") }}
    - ({{ get_name(get_name($quotation_number, "quotation_number", "approval_user", "quotations"), 'id','phone', 'users') }})
    - On {{ streamline_date(get_name($quotation_number, "quotation_number", "approval_date", "quotations")) }}

    - @endif - ....................................... -
    -
    - {{ __('stores.checked_by') }}:

    - ....................................... -
    -
    - {{ __('stores.authorised_by') }}:

    - ....................................... -
    -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/items_purchase_order.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/items_purchase_order.blade.php deleted file mode 100755 index 1afa2bb6..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/items_purchase_order.blade.php +++ /dev/null @@ -1,225 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.request_for_quotation') }}

    -
    -
    - -
    - @include('flash::message') -
    - -
    -
    -
    - {{-- --}} -
    - - PDF {{ __('stores.print') }} - -
    -
    -

    - -
    -
    -
    -
    -
    -
    {{ __('stores.date') }} : {{ streamline_date(date('Y-m-d')) }}
    -
    -
    - {{ $hospital_details->name }}
    - {{ $hospital_details->address }}
    - {{ get_name($hospital_details->district, "id", "name", "districts") }}
    - {{ $hospital_details->email }}
    - {{ $hospital_details->phone_number }}
    -
    -
    - @php - $supplier_id = get_name($quotation_number, "quotation_number", "supplier_id", $table_quotations); - $supplier_name = get_name($supplier_id, "id", "name", "suppliers"); - $supplier_address = get_name($supplier_id, "id", "address", "suppliers"); - $supplier_mobile_no = get_name($supplier_id, "id", "mobile_number", "suppliers"); - @endphp -
    -
    - {{ $supplier_name }}
    - {{ $supplier_address }}
    - {{ $supplier_mobile_no }} -
    -
    - -
    - {{ __('stores.request_for_quotation') }}: -
    -
    - - - - - - - - - - - - - @php $i = 1; @endphp - @if(count($quotation_results) > 0) - @foreach($quotation_results as $result) - - @if($result->quotation_type_id == 1) - - - - - - @php - $drug_form = get_name($result->drug_id, 'id', 'form_id', 'drugs'); - @endphp - - - - @elseif($result->quotation_type_id == 2) - - - - - - - - - @elseif($result->quotation_type_id == 3) - - - - - - - - - @elseif($result->quotation_type_id == 4) - - - - - - - - - @elseif($result->quotation_type_id == 5) - - - - - - - - - @elseif($result->quotation_type_id == 6) - - - - - - - - - @elseif($result->quotation_type_id == 7) - - - - - - - - - @endif - @php $i++; @endphp - @endforeach - @else - - @endif - -
    #{{ __('stores.item_name') }}{{ __('stores.no_of_package_units') }}{{ __('stores.quantity') }}{{ __('stores.units') }}{{ __('stores.expected_date') }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'drugs') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }}(s) - {{ $result->quantity }}{{ get_name($drug_form, 'id', 'name', 'drug_forms') }}{{ streamline_date($result->expected_date) }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'sundries') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }}(s) - {{ $result->quantity }}{{ streamline_date($result->expected_date) }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'dentals') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }}(s) - {{ $result->quantity }}{{ streamline_date($result->expected_date) }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'radiologies') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }}(s) - {{ $result->quantity }}{{ streamline_date($result->expected_date) }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'labs') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }}(s) - {{ $result->quantity }}{{ streamline_date($result->expected_date) }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'general_items') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }}(s) - {{ $result->quantity }}{{ streamline_date($result->expected_date) }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'eye_glasses') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }}(s) - {{ $result->quantity }}{{ streamline_date($result->expected_date) }}
    {{ __('stores.no_records') }}
    -
    -
    -
    - -
    - {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}

    - {{ $hospital_details->name }} -
    -
    - {{ __('stores.authorised_by') }}:

    - ....................................... -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - -@endpush - - - - diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/items_purchase_order_print.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/items_purchase_order_print.blade.php deleted file mode 100755 index 1682dd21..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/items_purchase_order_print.blade.php +++ /dev/null @@ -1,171 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Theatre Details - Stre@mline') }} - - - - - - - - - -
    - @include('layouts.header_pdf_print') - - @php - $supplier_id = get_name($quotation_number, "quotation_number", "supplier_id", $table_quotations); - $supplier_name = get_name($supplier_id, "id", "name", "suppliers"); - $supplier_address = get_name($supplier_id, "id", "address", "suppliers"); - $supplier_mobile_no = get_name($supplier_id, "id", "mobile_number", "suppliers"); - @endphp - -
    - {{ __('stores.request_for_quotation') }}:

    - {{ __('stores.supplier_title') }}: {{ $supplier_name }} | {{ $supplier_mobile_no }} | {{ $supplier_address }} -
    - -
    - - - - - - - - - - - - - - @php $i = 1; @endphp - @if(count($quotation_results) > 0) - @foreach($quotation_results as $result) - - @if($result->quotation_type_id == 1) - - - - - - @php - $drug_form = get_name($result->drug_id, 'id', 'form_id', 'drugs'); - @endphp - - - - @elseif($result->quotation_type_id == 2) - - - - - - - - - @elseif($result->quotation_type_id == 3) - - - - - - - - - @elseif($result->quotation_type_id == 4) - - - - - - - - - @elseif($result->quotation_type_id == 5) - - - - - - - - - @elseif($result->quotation_type_id == 6) - - - - - - - - - @elseif($result->quotation_type_id == 7) - - - - - - - - - @endif - @php $i++; @endphp - @endforeach - @else - - @endif - -
    #{{ __('stores.item_name') }}{{ __('stores.number_of_package_units') }}{{ __('stores.quantity') }}{{ __('stores.units') }}{{ __('stores.expected_date') }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'drugs') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }}(s) - {{ $result->quantity }}{{ get_name($drug_form, 'id', 'name', 'drug_forms') }}{{ streamline_date($result->expected_date) }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'sundries') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }}(s) - {{ $result->quantity }}{{ streamline_date($result->expected_date) }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'dentals') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }}(s) - {{ $result->quantity }}{{ streamline_date($result->expected_date) }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'radiologies') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }}(s) - {{ $result->quantity }}{{ streamline_date($result->expected_date) }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'labs') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }}(s) - {{ $result->quantity }}{{ streamline_date($result->expected_date) }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'general_items') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }}(s) - {{ $result->quantity }}{{ streamline_date($result->expected_date) }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'eye_glasses') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }}(s) - {{ $result->quantity }}{{ streamline_date($result->expected_date) }}
    {{ __('stores.no_records') }}
    - -


    - -
    -
    - {{ auth()->user()->first_name }} {{ auth()->user()->last_name }}
    - ({{ get_name(get_name($quotation_number, "quotation_number", "created_by", "quotations"), 'id','phone', 'users') }})
    - {{ __('stores.on') }} {{ streamline_date(get_name($quotation_number, "quotation_number", "created_at", "quotations")) }}

    -
    -
    - {{ __('stores.authorised_by') }}:

    - ....................................... -
    -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/items_stock_reconciliation_report_details.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/items_stock_reconciliation_report_details.blade.php deleted file mode 100644 index 087f3478..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/items_stock_reconciliation_report_details.blade.php +++ /dev/null @@ -1,174 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __($active) }}

    -
    - -
    - -
    -
    - - @include('flash::message') -
    -
    -
    -

    {{__($route_title) }} {{ __('stores.reconciliation_id') }} {{ sprintf("%04u", $items_reconciled[0]->stock_count_identifier) }}

    -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - - - - @if(!$var)@endif - @if($var) @endif - - - - - - - - - - - @if(!$var) @endif - @if($var) @endif - - - - - - @foreach($items_reconciled as $reconciliation_record) - @php - $sundry_name = get_name($reconciliation_record->item_id, "id", "name", "{$table_name}"); - - @endphp - - - - - - @if(!$var) - - @endif - @if($var) - - @endif - - - - @endforeach - -
    {{ __('stores.item_name') }}{{ __('stores.system_stock') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.reason_for_difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.reconciled_by') }}{{ __('stores.performed_on') }}
    {{ __('stores.item_name') }}{{ __('stores.system_stock') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.reason_for_difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.reconciled_by') }}{{ __('stores.performed_on') }}
    - {{ $sundry_name }} - - -
    - {{ $reconciliation_record->system_stock }} -
    - @if($var) - @forelse($reconciliation_record->batches as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record['original_batch_number'] }} -
    -
    - {{ __('stores.quantity') }}: {{ $record['original_quantity'] }}
    - - -
    -
    - {{ __('stores.unit_cost') }}: {{ $record['original_unit_cost'] }}
    -
    -
    - @empty - @endforelse - @endif - -
    -
    - {{ $reconciliation_record->physical_stock }} -
    - @if($var) - @forelse($reconciliation_record->batches as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record['batch_number'] }} -
    -
    - {{ __('stores.quantity') }}: {{ $record['quantity'] }}
    - - {{-- {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date )}} --}} -
    -
    - {{ __('stores.unit_cost') }}: {{ $record['unit_cost'] }}
    - {{ __('stores.reason') }}: {{ $record['reason']}} -
    -
    - @empty - @endforelse - @endif -
    -
    - {{ $reconciliation_record->difference }} -
    -
    {{ $reconciliation_record->reason }} -
    - {{ ugandan_shillings($reconciliation_record->variance) }} -
    -
    -
    - {{ get_full_name($reconciliation_record->created_by, 'id', 'first_name', 'last_name', 'users') }} -
    -
    -
    - {{ streamline_date($reconciliation_record->created_at) }} -
    -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/labs_physical_stock_count.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/labs_physical_stock_count.blade.php deleted file mode 100644 index 11a5095e..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/labs_physical_stock_count.blade.php +++ /dev/null @@ -1,642 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.labs_stock_reconciliation') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') - -
    - {{ Form::open(['route' => 'stores.labs_physical_stock_count_search', 'method' => 'POST', 'role' => 'search']) }} -
    -
    -
    - {{ Form::select('search_items_ids[]',$labs_dropdown,'',['id'=>'sundries_ids', 'multiple'=>true, 'class' => 'form-control col-sm-8 sundries_ids']) }} -
    -
    - -
    - -
    - -
    -
    - - - - {{ __('stores.note') }}: {{ __('stores.if_not_going_to_reconcile_all_the_first_filter') }}.
    -
    -
    -
    -
    - - @if(isset($criteria) && isset($resultCount)) -

    - {{ __('stores.search_criteria') }} {{ $criteria }}    {{ __('stores.total_results') }} {{ $resultCount }}    {{ __('stores.clear_search') }} -

    - @endif - {{ Form::close() }} -
    -
    - -
    -
    -
    -
    - - -
    - {{ csrf_field() }} -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - - - - @if(track_items_using_batches()) - - @endif - - - - - {{-- - --}} - {{-- --}} - - - - - - - - - @if(track_items_using_batches()) - - @endif - - - - - {{-- --}} - {{-- --}} - {{-- --}} - - - - - - - - - - - - - {{-- --}} - @if(track_items_using_batches()) - - @endif - {{-- --}} - {{-- --}} - - @foreach($labs as $sundry) - @php - $radiology_store_stock = 0; - $item_cost_value = 0; - $batch_records = \Streamline\Models\ItemBatchWatcher::where(['item_type' => 5, 'item_id' => $sundry->id])->where('store_stock', '!=', 0)->get(); - - if(count($batch_records) > 0){ - foreach($batch_records as $record){ - $radiology_store_stock += $record->store_stock; - $item_cost_value += $record->cost_price * $record->store_stock; - } - } - @endphp - - - - - - @if(track_items_using_batches()) - - @endif - - - - - {{-- - --}} - {{-- --}} - - @endforeach - -
    {{ __('stores.item_name') }}{{ __('stores.system_stock') }}{{ __('stores.cost_price') }}{{ __('stores.stock_value') }}{{ __('stores.batch_details_and_others') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.reason_for_difference') }}{{ __('stores.selling_price') }}{{ __('stores.markup') }}
    {{ __('stores.item_name') }}{{ __('stores.system_stock') }}{{ __('stores.cost_price') }}{{ __('stores.stock_value') }}{{ __('stores.batch_details_and_others') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.reason_for_difference') }}{{ __('stores.selling_price') }}{{ __('stores.markup') }}
    {{ __('stores.batch_details_and_others') }} - {{ __('stores.select_all') }} - - -
    - @if($sundry->insurance == 1) - {{ $sundry->name }} - @else - {{ $sundry->name }} - @endif - -
    - {{ $radiology_store_stock }} - - -
    -
    -
    - {{ ugandan_shillings($sundry->cost_price) }} -
    - -
    -
    - {{ ugandan_shillings($item_cost_value) }} -
    -
    - @php - $quotation_records = get_all_batches_for_this_drug_with_balances($sundry->id, $item_type = 5); - - $batch_records = \Streamline\Models\ItemBatchWatcher::where(['item_type' => 5, 'item_id' => $sundry->id])->where('store_stock', '!=', 0)->get(); - @endphp - - @if(count($batch_records) > 0) - @foreach($batch_records as $record) -
    -
    - {{ Form::hidden('batch_db_record_id[]', $record->id, ['class' => 'batch_record_id_class_'.$record->id]) }} - {{ Form::hidden('batch_quotation_id[]', $record->id) }} - {{ Form::hidden('batch_radiology_id[]', $sundry->id, ['class' => 'batch_id_class_'.$sundry->id]) }} - -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    - -
    -
    - {{ __('stores.unit_cost') }}: {{ $record->cost_price }} -
    - -
    -
    - {{ __('stores.quantity') }}:{{ $record->store_stock }} - -
    -
    - -
    - @if(Auth::user()->can('remove-batch-during-stock-reconciliation')) - - @php - $batch_no = $record->batch_number; - $batch_id = $record->id; - @endphp - Remove batch - - @endif - @if(Auth::user()->can('edit-batch-during-stock-reconciliation')) - - @php - $batch_no = $record->batch_number; - $sundry_id = $sundry->id; - @endphp - {{ __('stores.edit_batch') }} - - @endif -
    -
    - -
    -
    - @endforeach - @else -
    -
    - {{ Form::hidden('batch_db_record_id[]', 0, ['class' => 'batch_record_id_class_'.$sundry->id]) }} - {{ Form::hidden('batch_quotation_id[]', 0) }} - {{ Form::hidden('batch_radiology_id[]', $sundry->id) }} - -
    - -
    - -
    -
    -
    -
    -
    - -
    - -
    -
    - -
    -
    - @endif -
    -
    - {{ $sundry->store_stock }} -
    - -
    - - -
    -
    - -
    - - -
    - {{ ugandan_shillings($sundry->non_insured_price) }} -
    -
    - @php - $selling_price = $sundry->non_insured_price; - $cost_price = $sundry->cost_price; - $mark_up = $selling_price-$cost_price; - @endphp - {{ $mark_up }} - -
    -
    - @if (count($labs) > 0) -
    -

    -
    - -
    - - -
    -
    -
    -
    - {{ Form::label('account_id', __('stores.general_comment')) }} -
    -
    - {{--
    - {{ Form::select('account_id', $chart_of_accounts, null, ['class' => 'form-control', 'id' => 'account_id']) }} -
    -
    --}} -
    - {{ Form::textarea('general_comment','',['class' => 'form-control', 'placeholder' => __('stores.add_general_comment'), 'rows' => 4]) }} -
    -
    -
    -
    - - - {{ __('pharmacy.note') }}: - {{ __('pharmacy.stock_differences_are_reflected_in') }} {{ $stock_adjustment_chart_of_account->name }} {{ __('pharmacy.if_it_is_not_opening_stock') }}. {!! __('pharmacy.if_it_is_the_opening_stock_then_the_affected_account') !!} - -
    -
    -
    - @endif -
    - @if (count($labs) > 0) -
    - - - - -
    - @endif - -
    -
    - -
    -
    -
    -
    - - -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/labs_stock_sheet.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/labs_stock_sheet.blade.php deleted file mode 100755 index d2fa5f83..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/labs_stock_sheet.blade.php +++ /dev/null @@ -1,170 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.labs_stock_sheet') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -
    - {{ csrf_field() }} -
    -
    -

    {{ __('stores.labs_stock_sheet') }}

    - @php - $selling_total = 0; - $chi_total = 0; - $cost_price_total = 0; - @endphp -
    - - - - - - - - - - - @foreach($labs as $lab) - - - - - - {{-- --}} - - @endforeach - - - - - - - - {{-- --}} - - -
    {{ __('stores.name') }}{{ __('stores.store_stock') }}{{ __('stores.cost_value') }}{{ __('stores.selling_value') }}
    - @if($lab->insurance_coverage == 1) - {{ $lab->name }} - @else - {{ $lab->name }} - @endif - - @forelse($lab->batches as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->store_stock }}
    - - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date )}} -
    -
    - {{ __('stores.unit_cost') }}: {{ $record->cost_price }} -
    -
    - @empty - @endforelse - -
    - {{ $lab->total_stock }} -
    - -
    -
    - {{ ugandan_shillings($lab->item_cost_value) }} -
    - -
    -
    - {{ ugandan_shillings($lab->non_insured_price) }} - @php $selling_total +=$lab->non_insured_price; @endphp -
    - -
    -
    - {{ streamline_date($lab->expiry_date) }} -
    - -
    {{ __('stores.total') }}{{ ugandan_shillings($total_cost_value) }}{{ ugandan_shillings($selling_total) }}.
    -
    -
    - -
    - -
    - -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/labs_sundries_requisition.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/labs_sundries_requisition.blade.php deleted file mode 100755 index 20aa293d..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/labs_sundries_requisition.blade.php +++ /dev/null @@ -1,206 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.lab_sundry_requisition') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    - -
    - @if(isset($item_type) && $item_type != 0) - {{ Form::open(['route' => 'stores.lab_sundries', 'method' => 'ANY', 'role' => 'search']) }} -
    - -
    -
    - {{ Form::select('item_name[]',$names_array,'',['id'=>'item_ids', 'multiple'=>true, 'class' => 'form-control col-sm-8 item_ids']) }} -
    -
    - -
    - -
    -
    - - @if(isset($criteria) && isset($resultCount)) -

    - {{ __('pharmacy.search_criteria') }} : {{ $criteria }}    {{ __('pharmacy.total_results') }} : {{ $resultCount }}    {{ __('pharmacy.clear_search') }} -

    - @endif - {{ Form::close() }} - @endif - - {{ Form::open(['method' => 'post', 'route'=>'stores.store_sundries_requisition'])}} - -
    - - - - - - - - - - - - @if(count($results) > 0) - @php $count=0; @endphp - @foreach($results as $result) - @php - $count++; - $lab_store_stock = $lab_stock = 0; - $store_batch_records= track_batch_stock(2,$result->id,'store_stock'); - $lab_batch_records =track_batch_stock(2,$result->id,'lab_stock'); - @endphp - - - - - - - - @endforeach - @else - - @endif - -
    #{{ __('labs.name') }}{{ __('pharmacy.store_stock') }}{{ __('labs.lab_stock') }}{{ __('pharmacy.quantity_requested') }}
    {{ $count }} - {{ $result->name }} - - - @if(count($store_batch_records) > 0) - @foreach($store_batch_records as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->store_stock }}
    - @php - $lab_store_stock += $record->store_stock; - @endphp - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - @endforeach - @endif - Total Stock: {{ $lab_store_stock }} -
    - @if(count($lab_batch_records) > 0) - @foreach($lab_batch_records as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->lab_stock }}
    - @php - $lab_stock += $record->lab_stock; - @endphp - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - @endforeach - @endif - Total : {{ $lab_stock }} -
    - -
    {{ __('pharmacy.please_search_records') }}
    -
    -
    - - @if(count($results) > 0 ) -
    - {{ Form::button(__('pharmacy.complete_request'),['type'=>'submit','name'=>'complete_request','value'=>'1','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - - {{ Form::close() }} -
    - @endif -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/labs_sundries_stock_sheet.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/labs_sundries_stock_sheet.blade.php deleted file mode 100755 index 893a75a2..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/labs_sundries_stock_sheet.blade.php +++ /dev/null @@ -1,205 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.lab_sundries_stock_sheet') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -
    -
    - - {{ csrf_field() }} -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - @if(track_items_using_batches()) - - @endif - - - - - - - - - - @if(track_items_using_batches()) - - @endif - - - - - - - - @foreach($sundries as $sundry) - - - - @if(track_items_using_batches()) - - @endif - - - - - - @endforeach - -
    {{ __('stores.sundry_name') }}{{ __('stores.batch_details') }}{{ __('stores.lab_stock') }}{{ __('stores.cost_value') }}{{ __('stores.selling_price') }}{{ __('stores.sale_value') }}
    {{ __('stores.sundry_name') }}{{ __('stores.batch_details') }}{{ __('stores.lab_stock') }}{{ __('stores.cost_value') }}{{ __('stores.selling_price') }}{{ __('stores.selling_value') }}
    - @if($sundry->insurance == 1) - {{ $sundry->name }} - @else - {{ $sundry->name }} - @endif - - @php - $batch_records = track_batch_stock(2,$sundry->id,'lab_stock'); - // \Streamline\Models\ItemBatchWatcher::where(['item_type' => 2, 'item_id' => $sundry->id])->where('pharmacy_stock', '!=', 0)->get(); - - $sundry_lab_stock = $item_cost_value = 0; - @endphp - @forelse($batch_records as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->lab_stock }}
    - @php - $sundry_lab_stock += $record->lab_stock; - @endphp - {{ __('stores.expiry_date') }}: {{ $record->expiry_date }} -
    -
    - {{ __('stores.unit_cost') }}: {{ $record->cost_price }} -
    -
    - @php - $item_cost_value += $record->cost_price * $record->lab_stock; - - @endphp - @empty - @endforelse -
    -
    - @if(track_items_using_batches()){{ $sundry_lab_stock }}@else{{$sundry->lab_stock }}@endif -
    - -
    -
    - @if(track_items_using_batches()){{ugandan_shillings($item_cost_value) }}@else {{ $sundry->lab_stock * $sundry->cost_price }} @endif -
    -
    -
    -
    -
    - {{ugandan_shillings( $sundry->non_insured_price) }} -
    -
    -
    -
    -
    - @if(track_items_using_batches()){{ugandan_shillings($sundry_lab_stock * $sundry->non_insured_price) }}@else {{ $sundry->lab_stock * $sundry->non_insured_price }} @endif -
    -
    -
    -
    -
    -
    - -
    - -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/opd_details_to_approve.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/opd_details_to_approve.blade.php deleted file mode 100644 index 98a1bd2b..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/opd_details_to_approve.blade.php +++ /dev/null @@ -1,300 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.requisitioned_items') }}

    -
    -
    - -
    -
    - - @include('flash::message') - -
    -
    -
    -
    -

    {{ __('stores.approve_from') }} {{ get_requisition_origin($requisition->requisition_origin) }} - {{ get_full_name($requisition->created_by, "id", "first_name", "last_name", "users") }} {{ streamline_date($requisition->created_at) }}

    -
    -
    - - @csrf - - - - - - - - - @if(track_items_using_batches()) - - @endif - - - - - @foreach ($associative_requested_drugs_array as $drug_name_requested => $quantity_requested) - @php - $drug_store_stock=$other_store_stock=0; - // 1-drug 2-sundry 3-dental 4-radiology 5-Lab , 6-general item, 7-optical - if ($requisition->quotation_type_id == 1) { - $drug_id = get_name($drug_name_requested, "name", "id", "drugs"); - $store_batch_records= track_batch_stock($requisition->quotation_type_id,$drug_id,'store_stock'); - $other_batch_records=track_batch_stock_selected_column($requisition->quotation_type_id,$drug_id,'pharmacy_stock',['batch_number','pharmacy_stock as stock','expiry_date']); - - } else if ($requisition->quotation_type_id == 2) { - $drug_id = get_name($drug_name_requested, "name", "id", "sundries"); - $store_batch_records= track_batch_stock($requisition->quotation_type_id,$drug_id,'store_stock'); - //sundries from pharmacy - if ($requisition->requisition_origin == null || $requisition->requisition_origin == 1){ - $other_batch_records=track_batch_stock_selected_column($requisition->quotation_type_id,$drug_id,'pharmacy_stock',['batch_number','pharmacy_stock as stock','expiry_date']); - } - if ($requisition->requisition_origin == 2){ - //sundries from labs - $other_batch_records=track_batch_stock_selected_column($requisition->quotation_type_id,$drug_id,'lab_stock',['batch_number','lab_stock as stock','expiry_date']); - } - if ($requisition->requisition_origin == 3){ - //sundries from radiologies - $other_batch_records=track_batch_stock_selected_column($requisition->quotation_type_id,$drug_id,'radiology_stock',['batch_number','radiology_stock as stock','expiry_date']); - } - - } else if ($requisition->quotation_type_id == 3) { - $drug_id = get_name($drug_name_requested, "name", "id", "dentals"); - $drug_store_stock = get_name($drug_id, "id", "store_stock", "dentals");$store_batch_records=$other_batch_records=[]; - // $other_batch_records=track_batch_stock_selected_column($requisition->quotation_type_id,$drug_id,'pharmacy_stock',['batch_number','pharmacy_stock as stock','expiry_date']); - // $store_batch_records= track_batch_stock($requisition->quotation_type_id,$drug_id,'store_stock'); - } else if ($requisition->quotation_type_id == 4) { - $drug_id = get_name($drug_name_requested, "name", "id", "radiologies"); - $other_batch_records=track_batch_stock_selected_column($requisition->quotation_type_id,$drug_id,'lab_stock',['batch_number','lab_stock as stock','expiry_date']); - $store_batch_records= track_batch_stock($requisition->quotation_type_id,$drug_id,'store_stock'); - - } else if ($requisition->quotation_type_id == 5) { - $drug_id = get_name($drug_name_requested, "name", "id", "labs"); - $store_batch_records= track_batch_stock($requisition->quotation_type_id,$drug_id,'store_stock'); - $other_batch_records=track_batch_stock_selected_column($requisition->quotation_type_id,$drug_id,'lab_stock',['batch_number','lab_stock as stock','expiry_date']); - - } else if ($requisition->quotation_type_id == 6) { - $drug_id = get_name($drug_name_requested, "name", "id", "general_items"); - $drug_store_stock = get_name($drug_id, "id", "store_stock", "general_items");$store_batch_records=$other_batch_records=[]; - } - else if ($requisition->quotation_type_id == 7) { - $drug_id = get_name($drug_name_requested, "name", "id", "eye_glasses"); - $store_batch_records= track_batch_stock($requisition->quotation_type_id,$drug_id,'store_stock'); - $other_batch_records=track_batch_stock_selected_column($requisition->quotation_type_id,$drug_id,'pharmacy_stock',['batch_number','pharmacy_stock as stock','expiry_date']); - } - @endphp - - - - - - - - @endforeach - -
    {{ __('stores.item_name') }}{{ __('stores.store_stock') }}{{ __('stores.unit_stock') }}{{ __('stores.quantity_requested') }}{{ __('stores.quantity_approved') }}
    - {{ $drug_name_requested }} - - @forelse($store_batch_records as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->store_stock }}
    - @php - $drug_store_stock += $record->store_stock; - @endphp - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - - @empty - @endforelse - Total Stock: {{ $drug_store_stock }} - {{ Form::hidden('drug_name[]', $drug_name_requested, ['id' => 'drug_name' . $drug_id]) }} - {{ Form::hidden('store_stock[]', $drug_store_stock, ['class' => 'form-control drugs_to_issue_out', 'readonly', 'id' => 'store_stock' . $drug_id]) }} -
    - @forelse($other_batch_records as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->stock }}
    - @php - $other_store_stock += $record->stock; - @endphp - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - - @empty - @endforelse - Total Stock: {{ $other_store_stock }} - {{ Form::hidden('drug_name[]', $drug_name_requested, ['id' => 'drug_name' . $drug_id]) }} - {{ Form::hidden('store_stock[]', $other_store_stock, ['class' => 'form-control drugs_to_issue_out', 'readonly', 'id' => 'store_stock' . $drug_id]) }} -
    - - - -
    - - - -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush - - - - diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/optical_items_stock_sheet.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/optical_items_stock_sheet.blade.php deleted file mode 100644 index 72a7c230..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/optical_items_stock_sheet.blade.php +++ /dev/null @@ -1,164 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.optical_stock_sheet') }}

    -
    -
    - -
    -
    - -
    - @include('flash::message') -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - @php - $selling_total = 0; - $chi_total = 0; - $cost_price_total = 0; - @endphp - - - - - - - - - - - - - - @foreach($opticals as $optical) - - - - - - - - - - - @endforeach - - - - - - - - - - - - - -
    {{ __('stores.name') }}{{ __('stores.store_batches') }}{{ __('stores.store_stock') }}{{ __('stores.cost_value') }}{{ __('stores.cash_price') }}{{ __('stores.selling_value') }}{{ __('stores.income_account') }}{{ __('stores.cog_account') }}
    - @if($optical->insurance == 1) - {{ $optical->name }} - @else - {{ $optical->name }} - @endif - - @forelse($optical->batches as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->store_stock }}
    - - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date )}} -
    -
    - {{ __('stores.unit_cost') }}: {{ $record->cost_price }} -
    -
    - @empty - @endforelse - -
    {{ $optical->total_stock }}
    -
    - {{ ugandan_shillings($optical->item_cost_value) }} -
    - -
    -
    - {{ ugandan_shillings($optical->non_insured_price) }} - @php $selling_total +=$optical->non_insured_price; @endphp -
    -
    -
    - {{ ugandan_shillings($optical->non_insured_price * $optical->total_stock) }} - -
    -
    {{ get_name($optical->account_id, "id", "name", "chart_of_accounts") }}{{ get_name($optical->cost_of_goods_account, "id", "name", "chart_of_accounts") }}
    {{ __('stores.name') }}{{ __('stores.store_batches') }}{{ __('stores.store_stock') }}{{ __('stores.cost_value') }}{{ __('stores.cash_price') }}{{ __('stores.selling_value') }}{{ __('stores.income_account') }}{{ __('stores.cog_account') }}
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/optical_physical_stock_count.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/optical_physical_stock_count.blade.php deleted file mode 100644 index 3633d133..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/optical_physical_stock_count.blade.php +++ /dev/null @@ -1,741 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.optical_stock_reconciliation') }}

    -
    -
    - -
    -
    - - -@include('flash::message') - -
    - {{ Form::open(['route' => 'stores.optical_physical_stock_count', 'method' => 'ANY', 'role' => 'search']) }} -
    -
    -
    - {{ Form::select('search_items_ids[]',$optical_dropdown,'',['id'=>'drug_ids', 'multiple'=>true, 'class' => 'form-control col-sm-8 drug_ids']) }} -
    -
    - -
    - -
    -
    - {{ Form::close() }} -
    - -
    -
    - {{ csrf_field() }} -
    -
    - - -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - - @if(track_items_using_batches()) - - @endif - - - - {{-- --}} - - - - - - - - - @if(track_items_using_batches()) - - @endif - - - - {{-- --}} - - - - - - - - - @if(track_items_using_batches()) - - @endif - - - - {{-- --}} - - - - @foreach($eye_glasses as $drug) - @php - $quotation_records = get_all_batches_for_this_drug_with_balances($drug->id, $item_type = 1); - $drug_store_stock = 0; - $batch_records = \Streamline\Models\ItemBatchWatcher::where(['item_type' => 7, 'item_id' => $drug->id])->where('store_stock', '>', 0)->get(); - - if (count($batch_records) > 0) { - foreach ($batch_records as $batch_record) { - $drug_store_stock += $batch_record->store_stock; - } - } - @endphp - - - - @if(track_items_using_batches()) - - @endif - - - - - {{-- --}} - - - - @endforeach - -
    {{ __('stores.drug_name') }}{{ __('pharmacy.pharmacy_system_stock') }}{{ __('stores.batch_details_and_others') }}{{ __('pharmacy.pharmacy_physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.reason_for_difference') }}{{ __('stores.selling_price') }}
    {{ __('stores.drug_name') }}{{ __('pharmacy.pharmacy_system_stock') }}{{ __('stores.batch_details_and_others') }}{{ __('pharmacy.pharmacy_physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.reason_for_difference') }}{{ __('stores.selling_price') }}
    - @if($drug->insurance_coverage == 1) - {{ $drug->name }} - @else - {{ $drug->name }} - @endif - -
    - {{ $drug_store_stock }} - - -
    -
    - - @if(count($batch_records) > 0) - @foreach($batch_records as $record) -
    -
    - {{ Form::hidden('item_batch_watcher_id[]', $record->id, ['class' => 'batch_record_id_class_'.$record->id]) }} - {{ Form::hidden('batch_drug_id[]', $drug->id, ['class' => 'batch_id_class_'.$drug->id]) }} - {{ Form::hidden('batch_quotation_id[]', $record->id) }} - - - - - -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    - -
    -
    -
    - {{ __('stores.quantity') }}:{{ $record->store_stock }}
    - @if(Auth::user()->can('remove-batch-during-stock-reconciliation')) - - @php - $batch_no = $record->batch_number; - $drug_id = $record->id; - @endphp - Remove batch - - @endif - @if(Auth::user()->can('edit-batch-during-stock-reconciliation')) - - @php - $batch_no = $record->batch_number; - $drug_id = $drug->id; - @endphp - {{ __('stores.edit_batch') }} - - @endif -
    -
    -
    - {{ __('stores.unit_cost') }}: {{ $record->cost_price }} - -
    - - -
    -
    - {{ __('stores.expiry_date') }}: {{ $record->expiry_date }} -
    - -
    - -
    - @endforeach - @else -
    -
    - {{ Form::hidden('item_batch_watcher_id[]', 0) }} - {{ Form::hidden('batch_drug_id[]', $drug->id) }} - {{ Form::hidden('batch_quotation_id[]', 0) }} - -
    - -
    - -
    - -
    - -
    -
    - -
    -
    - -
    - -
    - @endif -
    -
    - {{ $drug_store_stock == 0 ? $drug_store_stock : $drug_store_stock }} -
    - -
    - - -
    -
    - -
    - - -
    - {{ ugandan_shillings($drug->non_insured_price) }} -
    -
    -
    -
    -


    -
    -
    - - -
    -
    -
    -
    - {{ Form::label('account_id', __('stores.general_comment')) }} -
    -
    -
    - {{ Form::textarea('general_comment','',['class' => 'form-control', 'placeholder' => __('pharmacy.add_general_comment'), 'rows' => 4]) }} -
    -
    -
    -
    - - - {{ __('pharmacy.note') }}: - {{ __('pharmacy.stock_differences_are_reflected_in') }} {{ $stock_adjustment_chart_of_account->name }} {{ __('pharmacy.if_it_is_not_opening_stock') }}. {!! __('pharmacy.if_it_is_the_opening_stock_then_the_affected_account') !!} - -
    -
    - -
    -
    - -
    -
    - - - - -
    -
    -
    -
    -
    - - -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/optical_stock_reconciliation_report.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/optical_stock_reconciliation_report.blade.php deleted file mode 100644 index 72b891ec..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/optical_stock_reconciliation_report.blade.php +++ /dev/null @@ -1,201 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('stores.optical_stock_reconciliation_report') }}

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    - - - {{ Form::open(['method'=>'post','route' => 'stores.optical_stock_reconciliation_report']) }} - -
    -

    {{ __('stores.select_a_date_or_a_date_range') }}

    -
    - -
    - -
    - - - - -
    - {{ Form::submit(__('stores.submit'), ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    - - - -
    -
    -
    -
    -
    -
    - - - - - - - - - - - @php - $counter = 0; - @endphp - - - @if(count($reconciled_stocks) > 0) - @foreach($reconciled_stocks as $record) - - - - - - - - - - @php - $counter++; - @endphp - @endforeach - @endif - -
    {{ __('stores.date') }}{{ __('stores.staff_in_charge') }}{{ __('stores.reconciliation_id') }}{{ __('stores.total_variance') }}{{ __('stores.general_comment') }}{{ __('stores.action') }}
    {{ streamline_date($record->created_at) }}{{ get_full_name($record->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ sprintf("%04u", $record->stock_count_identifier) }}{{ ugandan_shillings($record->total) }}{{ $record->general_comment }} - {{ Form::open(['method'=>'post','route' => 'stores.optical_stock_reconciliation_report_details']) }} - {{ Form::hidden('stock_count_identifier', $record->stock_count_identifier) }} - {{ Form::submit('Details', ['class'=>'btn btn-success']) }} - {{ Form::close() }} -
    -
    -
    -
    -
    -
    - -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/order_history_print.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/order_history_print.blade.php deleted file mode 100644 index 1977786a..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/order_history_print.blade.php +++ /dev/null @@ -1,174 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Order History Print - Stre@mline') }} - - - - - - - - - -
    - @include('layouts.header_pdf_print') - - - {{-- - - - - - - - --}} -
    {{ __('patient_finance.date') }}{{ streamline_date_time_short($receipt_date) }}{{ __('patient_finance.receipt_number') }}{{ $receipt_number }}{{ __('family_accounts.deposit_date') }}{{ $new_family_deposit->deposit_date }}
    - - - - - - - - - - - - - - - - - - - - - @foreach ($data as $result) - @foreach (json_decode($result) as $res) - - - - - - - - - - - {{-- --}} - - - - - - - - @endforeach - @endforeach - -
    {{ __('stores.rfq_no') }}{{ __('stores.batch_no') }}{{ __('stores.item') }}{{ __('stores.quantity') }}{{ __('stores.unit_cost_price') }}{{ __('stores.total_price') }}{{ __('stores.received_by') }}{{ __('stores.created_by') }}{{ __('stores.approved_by') }}{{ __('stores.approved_on') }}{{ __('stores.status') }}{{ __('stores.supplier') }}{{ __('stores.expected_date') }}{{ __('stores.memo') }}
    1# {{ sprintf('%04u', $res->quotation_number) }}{{ !empty($res->batch_number) ? $res->batch_number : "N/A"}}{{ 2}}{{ $res->quantity }} {{ get_name($res->package_unit, 'id', - "name", "package_units") }}{{ $res->bill_per_package_unit }}{{ $res->total_price }}{{ get_full_name($res->receive_user, "id", "first_name", - "last_name", "users") }}{{ get_full_name($res->created_by, "id", "first_name", - "last_name", "users") }} - quotation_number; - $quotation_number = is_null($quotation_number) ? 0 : $quotation_number; - $results_to_count = DB::select("select drug_id from quotations where quotation_number = {$quotation_number} AND deleted_at IS NULL"); - ?> - {{ count($results_to_count) }} Items - - {{ get_name(get_name($res->quotation_number, "quotation_number", - "approval_user", "quotations"), "id", "first_name", "users") }} - - {{ streamline_date(get_name($res->quotation_number, "quotation_number", - "approval_date", "quotations")) }} - - @if($res->approval_status == 1 && $res->receive_status == 0) -
    {{ __('stores.approved_not_received') }}
    - @elseif($res->approval_status == 0) -
    {{ __('stores.not_approved') }}
    - @elseif($res->approval_status == 1 && $res->receive_status == 1) -
    {{ __('stores.received') }}
    - @else -
    {{ __('stores.not_received') }}
    - @endif -
    - {{ get_name(get_name($res->quotation_number, "quotation_number", - "supplier_id", "quotations"), "id", "name", "suppliers") }} - - {{ streamline_date(get_name($res->quotation_number, "quotation_number", - "expected_date", "quotations")) }} - - @php - $memo = get_name($res->quotation_number, "quotation_number", "memo", - "quotations"); - @endphp - {!! read_more($memo, 'short_debits' . $res->quotation_number, 'long_debits' . - $res->quotation_number) !!} - -
    - -
    -
    - {{ __('stores.created_by') }}: {{ get_full_name($res->created_by, "id", "first_name", - "last_name", "users") }} -
    -
    - {{ __('stores.received_by') }}: {{ get_full_name($res->receive_user, "id", "first_name", - "last_name", "users") }} -
    -
    - {{ __('stores.approved_by') }}: {{ get_full_name($res->approval_user, "id", "first_name", - "last_name", "users") }} -
    -
    - {{ __('stores.received_on') }}: {{ get_name($res->receive_date, "id", "name", - "quotations") }} -
    -
    - {{ __('stores.approved_on') }}: {{ date(" d M Y h:ia") }} -
    -
    - -
    -
    - © {{ date('Y') }} Stre@mline -
    -
    - {{ __('stores.printed_on') }} {{ date(" d M Y h:ia") }} By {{ auth()->user()->first_name }} {{ auth()->user()->last_name }} -
    -
    - -
    - - - \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/physical_stock_count.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/physical_stock_count.blade.php deleted file mode 100755 index 93eae8b3..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/physical_stock_count.blade.php +++ /dev/null @@ -1,691 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.drugs_stock_reconciliation') }}

    -
    -
    - -
    -
    - -
    - -
    - - @include('flash::message') - -
    - {{ Form::open(['route' => 'stores.physical_stock_count_search', 'method' => 'ANY', 'role' => 'search']) }} -
    -
    -
    - {{ Form::select('search_items_ids[]',$drugs_dropdown,'',['id'=>'drug_ids', 'multiple'=>true, 'class' => 'form-control col-sm-8 drug_ids']) }} -
    -
    - -
    - -
    - -
    -
    - - - - {{ __('pharmacy.note') }}: {{ __('stores.if_not_going_to_reconcile_all_the_first_filter') }}.
    -
    -
    -
    -
    - - @if(isset($criteria) && isset($resultCount)) -

    - {{ __('stores.search_criteria') }} {{ $criteria }}    {{ __('stores.total_results') }} {{ $resultCount }}    {{ __('stores.clear_search') }} -

    - @endif - {{ Form::close() }} -
    -
    - -
    -
    -
    -
    - - -
    - {{ csrf_field() }} -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - - - {{-- @if(track_items_using_batches()) --}} - - {{-- @endif --}} - - - - - - - - - - - - - - - {{-- @if(track_items_using_batches()) --}} - - {{-- @endif --}} - - - - - - - - - - - - - - - - - - - - {{-- @if(track_items_using_batches()) --}} - - {{-- @endif --}} - - - - @foreach($drugs as $drug) - @php - $drug_store_stock = 0; - $item_cost_value = 0; - $batch_records = \Streamline\Models\ItemBatchWatcher::where(['item_type' => 1, 'item_id' => $drug->id])->where('store_stock', '!=', 0)->get(); - - if(count($batch_records) > 0){ - foreach($batch_records as $record){ - $drug_store_stock += $record->store_stock; - $item_cost_value += $record->cost_price * $record->store_stock; - } - } - @endphp - - - - - {{-- @if(track_items_using_batches()) --}} - - {{-- @endif --}} - - - - {{----}} - - - - - - @endforeach - -
    {{ __('stores.item_name') }}{{ __('stores.system_stock') }}{{ __('stores.stock_value') }}{{ __('stores.batch_details_and_others') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.reason_for_difference') }}{{ __('stores.selling_price') }}{{ __('stores.markup') }}
    {{ __('stores.item_name') }}{{ __('stores.system_stock') }}{{ __('stores.stock_value') }}{{ __('stores.batch_details_and_others') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.reason_for_difference') }}{{ __('stores.selling_price') }}{{ __('stores.markup') }}
    - @if($drug->insurance_coverage == 1) - {{ $drug->name }} - @else - {{ $drug->name }} - @endif - -
    - {{ $drug_store_stock }} - - - -
    -
    -
    - {{ ugandan_shillings($item_cost_value) }} -
    -
    - @php - $quotation_records = get_all_batches_for_this_drug_with_balances($drug->id, $item_type = 1); - - $batch_records = \Streamline\Models\ItemBatchWatcher::where(['item_type' => 1, 'item_id' => $drug->id])->where('store_stock', '!=', 0)->get(); - @endphp - - @if(count($batch_records) > 0) - @foreach($batch_records as $record) - {{--
    batch_number == $details_of_batch_in_use['batch_number']) && ($record->id == $details_of_batch_in_use['quotation_id'])) style="background-color: #e1e1ef; border-radius: 5px 5px;" @endif> -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->store_stock }}
    - @php - $drug_store_stock += $record->store_stock; - @endphp - {{ __('stores.expiry_date') }}: {{ $record->expiry_date }} -
    -
    --}} - -
    -
    - {{ Form::hidden('batch_db_record_id[]', $record->id, ['class' => 'batch_record_id_class_'.$record->id]) }} - {{ Form::hidden('batch_quotation_id[]', $record->id) }} - {{ Form::hidden('batch_drug_id[]', $drug->id, ['class' => 'batch_id_class_'.$drug->id]) }} - -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    - -
    -
    - {{ __('stores.unit_cost') }}: {{ $record->cost_price }} -
    - -
    -
    - {{ __('stores.quantity') }}:{{ $record->store_stock }} - @if(Auth::user()->can('remove-batch-during-stock-reconciliation')) - - @php - $batch_no = $record->batch_number; - $drug_id = $record->id; - @endphp - Remove batch - - @endif - @if(Auth::user()->can('edit-batch-during-stock-reconciliation')) - - @php - $batch_no = $record->batch_number; - $drug_id = $drug->id; - @endphp - {{ __('stores.edit_batch') }} - - @endif -
    -
    - -
    - -
    -
    - @endforeach - @else -
    -
    - {{ Form::hidden('batch_db_record_id[]', 0, ['class' => 'batch_record_id_class_'.$drug->id]) }} - {{ Form::hidden('batch_quotation_id[]', 0) }} - {{ Form::hidden('batch_drug_id[]', $drug->id) }} - - {{-- --}} - -
    -
    - -
    -
    -
    - -
    - -
    -
    - -
    -
    - @endif -
    -
    - {{ $drug_store_stock }} -
    - -
    - - -
    -
    - -
    -
    -
    - -
    - - -
    - {{ ugandan_shillings($drug->non_insured_price) }} -
    -
    - @php - $selling_price = $drug->non_insured_price; - $cost_price = $drug->cost_price; - $mark_up = $selling_price-$cost_price; - /* if($cost_price != 0){ - $markUp = (($selling_price-$cost_price)/$cost_price)*100; - $markUp = round($markUp); - } else { - $markUp = "N/A"; - } */ - @endphp - {{ $mark_up }} - -
    -
    - @if (count($drugs) > 0) -
    -


    -
    -
    - - -
    -
    -
    -
    - {{ Form::label('account_id', __('stores.general_comment')) }} -
    -
    - {{--
    - {{ Form::text('account_id', $stock_adjustment_chart_of_account->name, ['class' => 'form-control', 'id' => 'account_id']) }} -
    -
    --}} -
    - {{ Form::textarea('general_comment','',['class' => 'form-control', 'placeholder' => __('pharmacy.add_general_comment'), 'rows' => 4]) }} -
    -
    -
    -
    - - - {{ __('pharmacy.note') }}: - {{ __('pharmacy.stock_differences_are_reflected_in') }} {{ $stock_adjustment_chart_of_account->name }} {{ __('pharmacy.if_it_is_not_opening_stock') }}. {!! __('pharmacy.if_it_is_the_opening_stock_then_the_affected_account') !!} - -
    -
    -
    - @endif -
    - -
    - @if (count($drugs) > 0) -
    - - - - -
    - @endif - -
    -
    -
    -
    -
    - - -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/previous_order_history.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/previous_order_history.blade.php deleted file mode 100755 index 83ac2197..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/previous_order_history.blade.php +++ /dev/null @@ -1,339 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.previous_item_order_history') }}

    -
    -
    - -
    -
    - - @include('flash::message') - -
    -
    -
    - {{ Form::open(['method' => 'post', 'route'=>'stores.previous_order_history'])}} - {{ Form::label('quotation_type', __('stores.order_type')) }} - {{ Form::select('quotation_type', $quotation_type_options , null, ['class'=>'form-control compulsory', 'required']) }} -
    - -
    -
    - {{ Form::label('selected_drugs', __('stores.select_item')) }} - {{ Form::select('selected_drugs', $item_options['drugs'], null, ['id' => 'drugs_select', 'class' => 'form-control compulsory']) }} -
    - -
    - {{ Form::label('selected_sundries', __('stores.select_item')) }} - {{ Form::select('selected_sundries', $item_options['sundries'], null, ['id' => 'sundries_select', 'class' => 'form-control compulsory']) }} -
    - -
    - {{ Form::label('selected_dentals', __('stores.select_item')) }} - {{ Form::select('selected_dentals', $item_options['dentals'], null, ['id' => 'dentals_select', 'class' => 'form-control compulsory']) }} -
    - -
    - {{ Form::label('selected_labs', __('stores.select_item')) }} - {{ Form::select('selected_labs', $item_options['labs'], null, ['id' => 'labs_select', 'class' => 'form-control compulsory']) }} -
    - -
    - {{ Form::label('selected_radiologies', __('stores.select_item')) }} - {{ Form::select('selected_radiologies', $item_options['radiologies'], null, ['id' => 'radiologies_select', 'class' => 'form-control compulsory']) }} -
    - -
    - {{ Form::label('selected_general_items', __('stores.select_item')) }} - {{ Form::select('selected_general_items', $item_options['general_items'], null, ['id' => 'general_items_select', 'class' => 'form-control compulsory']) }} -
    - -
    - {{ Form::label('selected_eye_glasses', __('stores.select_item')) }} - {{ Form::select('selected_eye_glasses', $item_options['eye_glasses'], null, ['id' => 'eye_glasses_select', 'class' => 'form-control compulsory']) }} -
    -
    - -
    - {{ Form::label('start_date',__('stores.start')) }} -
    - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-autoclose1']) }} - -
    -
    - -
    - {{ Form::label('end_date',__('stores.end')) }} -
    - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-autoclose2']) }} - -
    -
    -
    -
    - -
    -
    - - {{ Form::close() }} -
    - -
    - -
    -

    {{ $display }}

    - -
    - - - - - - - - - - - - - - - - - - - - - - @if(isset($results) && count($results) != 0) - @foreach($results as $result) - - - - - - - - - - - - - - - - - @endforeach - @else - - @endif - -
    {{ __('stores.rfq_no') }}{{ __('stores.batch_no') }}{{ __('stores.quantity') }}{{ __('stores.unit_cost_price') }}{{ __('stores.total_price') }}{{ __('stores.received_by') }}{{ __('stores.created_by') }}{{ __('stores.approved_by') }}{{ __('stores.approved_on') }}{{ __('stores.status') }}{{ __('stores.supplier') }}{{ __('stores.expected_date') }}{{ __('stores.memo') }}
    # {{ sprintf('%04u', $result->quotation_number) }}{{ !empty($result->batch_number) ? $result->batch_number : "N/A"}}{{ $result->quantity }} {{ get_name($result->package_unit, 'id', "name", "package_units") }}{{ $result->bill_per_package_unit }}{{ $result->total_price }}{{ get_full_name($result->receive_user, "id", "first_name", "last_name", "users") }}{{ get_full_name($result->created_by, "id", "first_name", "last_name", "users") }} - {{ get_name(get_name($result->quotation_number, "quotation_number", "approval_user", "quotations"), "id", "first_name", "users") }} - - {{ streamline_date(get_name($result->quotation_number, "quotation_number", "approval_date", "quotations")) }} - - @if($result->approval_status == 1 && $result->receive_status == 0) -
    {{ __('stores.approved_not_received') }}
    - @elseif($result->approval_status == 0) -
    {{ __('stores.not_approved') }}
    - @elseif($result->approval_status == 1 && $result->receive_status == 1) -
    {{ __('stores.received') }}
    - @else -
    {{ __('stores.not_received') }}
    - @endif -
    - {{ get_name(get_name($result->quotation_number, "quotation_number", "supplier_id", "quotations"), "id", "name", "suppliers") }} - - {{ streamline_date(get_name($result->quotation_number, "quotation_number", "expected_date", "quotations")) }} - - @php - $memo = get_name($result->quotation_number, "quotation_number", "memo", "quotations"); - @endphp - {!! read_more($memo, 'short_debits' . $result->quotation_number, 'long_debits' . $result->quotation_number) !!} - - -
    - {{ csrf_field() }} - - - -
    -
    {{ __('stores.please_search_for_records') }}
    -
    -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/previous_purchase_orders.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/previous_purchase_orders.blade.php deleted file mode 100755 index 12c2373e..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/previous_purchase_orders.blade.php +++ /dev/null @@ -1,172 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.previous_purchase_orders') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    -
    - {{ Form::open(['method' => 'post', 'route'=>'stores.previous_purchase_orders'])}} - - {{ Form::label('quotation_type', __('stores.order_type')) }} - {{ Form::select('quotation_type', $quotation_type_options , null, ['class'=>'form-control compulsory', 'required']) }} - -
    - {{ __('stores.approved_between') }}
    - {{ Form::label('start_date',__('stores.start')) }} -
    - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-autoclose1']) }} - -
    -
    - {{ Form::label('end_date',__('stores.end')) }} -
    - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-autoclose2']) }} - -
    -
    - - {{ Form::button(__('stores.search'),['type'=>'submit','class'=>'btn btn-primary pull-right btn-rounded waves-effect waves-light m-r-10']) }} - - {{ Form::close() }} -
    - - -
    -
    {!! isset($display) ? $display : '' !!}

    -
    - - - - - - - - - - - - - - - - @if($results && count($results) != 0) - @foreach($results as $result) - - - - - - - - - - - - @endforeach - @else - - @endif - -
    {{ __('stores.quotation_number') }}{{ __('stores.quantity') }}{{ __('stores.approved_by') }}{{ __('stores.approved_on') }}{{ __('stores.received_status') }}{{ __('stores.supplier') }}{{ __('stores.expected_date') }}{{ __('stores.memo') }}
    # {{ sprintf('%04u', $result->quotation_number) }} - quotation_number; - $quotation_number = is_null($quotation_number) ? 0 : $quotation_number; - $results_to_count = DB::select("select drug_id from quotations where quotation_number = {$quotation_number} AND deleted_at IS NULL"); - ?> - {{ count($results_to_count) }} {{ __('stores.items') }} - - {{ get_name(get_name($result->quotation_number, "quotation_number", "approval_user", "quotations"), "id", "first_name", "users") }} - - {{ streamline_date(get_name($result->quotation_number, "quotation_number", "approval_date", "quotations")) }} - - @if(get_name($result->quotation_number, "quotation_number", "receive_status", "quotations") == 1)
    {{ __('stores.received') }}
    @else
    {{ __('stores.unreceived') }}
    @endif -
    - {{ get_name(get_name($result->quotation_number, "quotation_number", "supplier_id", "quotations"), "id", "name", "suppliers") }} - - {{ streamline_date(get_name($result->quotation_number, "quotation_number", "expected_date", "quotations")) }} - - @php - $memo = get_name($result->quotation_number, "quotation_number", "memo", "quotations"); - @endphp - {!! read_more($memo, 'short_debits' . $result->quotation_number, 'long_debits' . $result->quotation_number) !!} - - -
    - {{ csrf_field() }} - - - -
    -
    {{ __('stores.please_search_for_records') }}
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/previous_quotations.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/previous_quotations.blade.php deleted file mode 100755 index 7b211167..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/previous_quotations.blade.php +++ /dev/null @@ -1,154 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.previous_quotations') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    -
    - {{ Form::open(['method' => 'post', 'route'=>'stores.previous_quotations'])}} - - {{ Form::label('quotation_type', __('stores.quotation_type')) }} - {{ Form::select('quotation_type', $quotation_type_options , null, ['class'=>'form-control compulsory', 'required']) }} - -
    - {{ Form::label('approval_status', __('stores.approval_status')) }} - {{ Form::select('approval_status', ['' => '-- Select Status --', '1' => 'Approved', '0' => 'Pending', '2' => 'All'] , null, ['class'=>'form-control compulsory', 'required']) }} - -
    - {{ __('stores.received_between') }}
    - {{ Form::label('start_date',__('stores.start')) }} -
    - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-autoclose1']) }} - -
    -
    - {{ Form::label('end_date',__('stores.end')) }} -
    - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-autoclose2']) }} - -
    -
    - - {{ Form::button(__('stores.search'),['type'=>'submit','class'=>'btn btn-primary btn-rounded pull-right waves-effect waves-light m-r-10']) }} - - {{ Form::close() }} -
    - - -
    -
    {!! isset($display) ? $display : '' !!}

    -
    - - - - - - - - - - - - - - @if($results && $results != 0) - @foreach($results as $result) - @if (!is_null($result->quotation_number)) - - - - - - - - - - @endif - @endforeach - @else - - @endif - -
    {{ __('stores.quotation_number') }}{{ __('stores.quantity') }}{{ __('stores.date_created') }}{{ __('stores.supplier') }}{{ __('stores.expected_date') }}
    # {{ sprintf('%04u', $result->quotation_number) }} - quotation_number; - $results_to_count = DB::select("select drug_id from quotations where quotation_number = {$quotation_number} AND deleted_at IS NULL"); - ?> - {{ count($results_to_count) }} Items - - {{ streamline_date(get_name($result->quotation_number, "quotation_number", "created_at", "quotations")) }} - - {{ get_name(get_name($result->quotation_number, "quotation_number", "supplier_id", "quotations"), "id", "name", "suppliers") }} - - {{ streamline_date(get_name($result->quotation_number, "quotation_number", "expected_date", "quotations")) }} - - @if($result->approval_status == 0 && is_null($result->bill)) -
    - {{ csrf_field() }} - - - -
    - @endif -
    - Print -
    {{ __('stores.please_search_for_records') }}
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/previously_issued_items.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/previously_issued_items.blade.php deleted file mode 100755 index de74ee07..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/previously_issued_items.blade.php +++ /dev/null @@ -1,166 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.previous_issued_items') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    -
    - {{ Form::open(['method' => 'post', 'route'=>'stores.previously_issued_items'])}} - - {{ Form::label('item_type', __('stores.item_type')) }} - {{ Form::select('quotation_type', $quotation_type_options , null, ['class'=>'form-control compulsory', 'required']) }} - -
    - {{ __('stores.received_between') }}
    - {{ Form::label('start_date',__('stores.start')) }} -
    - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-autoclose1']) }} - -
    -
    - {{ Form::label('end_date',__('stores.end')) }} -
    - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-autoclose2']) }} - -
    -
    - - {{ Form::button(__('stores.search'),['type'=>'submit','class'=>'btn btn-primary btn-rounded waves-effect waves-light m-r-10 pull-right']) }} - - {{ Form::close() }} -
    - - -
    -
    {!! isset($display) ? $display : '' !!}

    -
    - - - - - - - - - - - - - - @php - $grand_total = 0; - @endphp - - @forelse($results as $result) - - - - - - - - - - @empty - - @endforelse - - - - - - - - - - - - -
    {{ __('stores.requisition_number') }}{{ __('stores.quantity') }}{{ __('stores.cost_value') }}{{ __('stores.issued_by') }}{{ __('stores.date_requested') }}{{ __('stores.date_issued') }}
    # {{ sprintf('%04u', $result->id) }} - item_ids_issued_out); - count($drug_id_explode) . " Items"; - - $cost_value_explode = explode(",", $result->cost_value); - $cost_value_total = array_sum($cost_value_explode); - ?> - {{ count($drug_id_explode) }} {{ __('stores.items') }} - - {{ ugandan_shillings($cost_value_total) }} - @php $grand_total += $cost_value_total; @endphp - - {{ get_full_name($result->issued_by, "id", "first_name", "last_name", "users") }} - - {{ streamline_date($result->created_at) }} - - {{ streamline_date($result->issued_on) }} - -
    - {{ csrf_field() }} - - - -
    -
    {{ __('stores.please_search_for_records') }}
    - {{ __('stores.total') }} - - {{ ugandan_shillings($grand_total) }} -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/previously_issued_items_details.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/previously_issued_items_details.blade.php deleted file mode 100755 index a165ab98..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/previously_issued_items_details.blade.php +++ /dev/null @@ -1,366 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@include('flash::message') - -@section('content') -
    -
    -

    {{ __('stores.previously_issued_items_details') }}

    -
    -
    - -
    -
    - -
    -
    -
    - {{--
    --}} -
    - - PDF {{ __('stores.print') }} - -
    -
    -

    - -
    -
    -
    -
    -
    - {{ __('stores.issued_items') }} -
    -
    - - - - - - - - - - - - - - - - - @php $i = 1; @endphp - @if($results) - @foreach($results as $result) - @if($result->quotation_type_id == 1) - @php - $requested_drug_id_explode = explode(",", $result->drug_id); - $quantity_explode = explode(",", $result->quantity_requested); - $per_drug = explode(",", $result->per_drug); - $issued_out_explode = explode(",", $result->quantity_issued); - $drug_id_explode = explode(",", $result->item_ids_issued_out); - @endphp - - @for($x = 0; $x < count($drug_id_explode); $x++) - @php - $drug_form_id = get_name($drug_id_explode[$x], "id", "form_id", "drugs"); - $drug_form_name = get_name($drug_form_id, "id", "name", "unit_of_measure"); - $issued_batches = \Streamline\Models\BatchIssuedTracking::where(['requisition_id' => $requisition_id, 'item_type' => $item_type, 'item_id' => $drug_id_explode[$x]])->get(); - @endphp - - - - - - - - - - - - - @php $i++; @endphp - @endfor - @elseif($result->quotation_type_id == 2) - @php - $drug_id_explode = explode(",", $result->item_ids_issued_out); - $quantity_explode = explode(",", $result->quantity_requested); - $per_drug = explode(",", $result->per_drug); - $issued_out_explode = explode(",", $result->quantity_issued); - @endphp - - @for($x = 0; $x < count($drug_id_explode); $x++) - @php - // $drug_form_id = get_name($drug_id_explode[$x], "id", "form_id", ""); - // $drug_form_name = get_name($drug_form_id, "id", "name", "unit_of_measure"); - $drug_form_name=null; - $issued_batches = \Streamline\Models\BatchIssuedTracking::where(['requisition_id' => $requisition_id, 'item_type' => $item_type, 'item_id' => $drug_id_explode[$x]])->get(); - @endphp - - - - - - - - - - - - - @php $i++; @endphp - @endfor - @elseif($result->quotation_type_id == 4) - @php - $drug_id_explode = explode(",", $result->item_ids_issued_out); - $quantity_explode = explode(",", $result->quantity_requested); - $per_drug = explode(",", $result->per_drug); - $issued_out_explode = explode(",", $result->quantity_issued); - @endphp - - @for($x = 0; $x < count($drug_id_explode); $x++) - @php - $drug_form_id = get_name($drug_id_explode[$x], "id", "form_id", "radiologies"); - $drug_form_name = get_name($drug_form_id, "id", "name", "unit_of_measure"); - $issued_batches = \Streamline\Models\BatchIssuedTracking::where(['requisition_id' => $requisition_id, 'item_type' => $item_type, 'item_id' => $drug_id_explode[$x]])->get(); - @endphp - - - - - - - - - - - - - @php $i++; @endphp - @endfor - @elseif($result->quotation_type_id == 5) - @php - $drug_id_explode = explode(",", $result->item_ids_issued_out); - $quantity_explode = explode(",", $result->quantity_requested); - $per_drug = explode(",", $result->per_drug); - $issued_out_explode = explode(",", $result->quantity_issued); - @endphp - - @for($x = 0; $x < count($drug_id_explode); $x++) - @php - $drug_form_id = get_name($drug_id_explode[$x], "id", "unit_id", "labs"); - $drug_form_name = get_name($drug_form_id, "id", "name", "unit_of_measure"); - $issued_batches = \Streamline\Models\BatchIssuedTracking::where(['requisition_id' => $requisition_id, 'item_type' => $item_type, 'item_id' => $drug_id_explode[$x]])->get(); - @endphp - - - - - - - - - - - - - @php $i++; @endphp - @endfor - @elseif($result->quotation_type_id == 6) - @php - $drug_id_explode = explode(",", $result->item_ids_issued_out); - $quantity_explode = explode(",", $result->quantity_requested); - $per_drug = explode(",", $result->per_drug); - $issued_out_explode = explode(",", $result->quantity_issued); - @endphp - - @for($x = 0; $x < count($drug_id_explode); $x++) - - - - - - - - - - - - - @php $i++; @endphp - @endfor - @elseif($result->quotation_type_id == 7) - @php - $drug_id_explode = explode(",", $result->item_ids_issued_out); - $quantity_explode = explode(",", $result->quantity_requested); - $per_drug = explode(",", $result->per_drug); - $issued_out_explode = explode(",", $result->quantity_issued); - @endphp - - @for($x = 0; $x < count($drug_id_explode); $x++) - @php - $issued_batches = \Streamline\Models\BatchIssuedTracking::where(['requisition_id' => $requisition_id, 'item_type' => $item_type, 'item_id' => $drug_id_explode[$x]])->get(); - @endphp - - - - - - - - - - - - - @php $i++; @endphp - @endfor - @endif - @endforeach - @else - - @endif - -
    #{{ __('stores.item_name') }}{{ __('stores.quantity_requested') }}{{ __('stores.quantity_issued') }}{{ __('stores.units') }}{{ __('stores.requested_by') }}{{ __('stores.issued_by') }}{{ __('stores.approved_by') }}{{ __('stores.approved_on') }}{{ __('stores.issued_on') }}
    {{ $i }} {{ get_name($drug_id_explode[$x], 'id', 'name', 'drugs') }} {{ isset($quantity_explode[$x]) ? $quantity_explode[$x] : "" }} - {{ isset($issued_out_explode[$x]) ? $issued_out_explode[$x] : "" }} - @if (count($issued_batches) > 0) - @foreach ($issued_batches as $batch_record) -
    -
    - {{ __('stores.batch') }}: {{ $batch_record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $batch_record->quantity_moved }} -
    -
    - @endforeach - @endif -
    {{ $drug_form_name }}{{ get_full_name($result->created_by, "id", "first_name", "last_name", "users") }}{{ get_full_name($result->issued_by, "id", "first_name", "last_name", "users") }}@if($result->approved_by != ''){{ get_full_name($result->approved_by, "id", "first_name", "last_name", "users") }}@else {{ null }} @endif@if($result->approved_date != ''){{ streamline_date_time_short($result->approved_date) }} @else {{ null }} @endif{{ streamline_date($result->issued_on) }}
    {{ $i }} {{ get_name($drug_id_explode[$x], 'id', 'name', 'sundries') }} {{ isset($quantity_explode[$x]) ? $quantity_explode[$x] : "" }}{{ isset($issued_out_explode[$x]) ? $issued_out_explode[$x] : "" }} - @if (count($issued_batches) > 0) - @foreach ($issued_batches as $batch_record) -
    -
    - {{ __('stores.batch') }}: {{ $batch_record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $batch_record->quantity_moved }} -
    -
    - @endforeach - @endif -
    {{ $drug_form_name }}{{ get_full_name($result->created_by, "id", "first_name", "last_name", "users") }}{{ get_full_name($result->issued_by, "id", "first_name", "last_name", "users") }}@if($result->approved_by != ''){{ get_full_name($result->approved_by, "id", "first_name", "last_name", "users") }}@else {{ null }} @endif@if($result->approved_date != ''){{ streamline_date_time_short($result->approved_date) }} @else {{ null }} @endif{{ streamline_date($result->issued_on) }}
    {{ $i }} {{ get_name($drug_id_explode[$x], 'id', 'name', 'radiologies') }} {{ isset($quantity_explode[$x]) ? $quantity_explode[$x] : "" }}{{ isset($issued_out_explode[$x]) ? $issued_out_explode[$x] : "" }} - @if (count($issued_batches) > 0) - @foreach ($issued_batches as $batch_record) -
    -
    - {{ __('stores.batch') }}: {{ $batch_record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $batch_record->quantity_moved }} -
    -
    - @endforeach - @endif - -
    {{ $drug_form_name }}{{ get_full_name($result->created_by, "id", "first_name", "last_name", "users") }}{{ get_full_name($result->issued_by, "id", "first_name", "last_name", "users") }}@if($result->approved_by != ''){{ get_full_name($result->approved_by, "id", "first_name", "last_name", "users") }}@else {{ null }} @endif@if($result->approved_date != ''){{ streamline_date_time_short($result->approved_date) }} @else {{ null }} @endif{{ streamline_date($result->issued_on) }}
    {{ $i }} {{ get_name($drug_id_explode[$x], 'id', 'name', 'labs') }} {{ isset($quantity_explode[$x]) ? $quantity_explode[$x] : "" }}{{ isset($issued_out_explode[$x]) ? $issued_out_explode[$x] : "" }} - - @forelse ($issued_batches as $batch_record) -
    -
    - {{ __('stores.batch') }}: {{ $batch_record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $batch_record->quantity_moved }} -
    -
    - @empty - @endforelse - -
    {{ $drug_form_name }}{{ get_full_name($result->created_by, "id", "first_name", "last_name", "users") }}{{ get_full_name($result->issued_by, "id", "first_name", "last_name", "users") }}@if($result->approved_by != ''){{ get_full_name($result->approved_by, "id", "first_name", "last_name", "users") }}@else {{ null }} @endif@if($result->approved_date != ''){{ streamline_date_time_short($result->approved_date) }} @else {{ null }} @endif{{ streamline_date($result->issued_on) }}
    {{ $i }} {{ get_name($drug_id_explode[$x], 'id', 'name', 'general_items') }} {{ isset($quantity_explode[$x]) ? $quantity_explode[$x] : "" }}{{ isset($issued_out_explode[$x]) ? $issued_out_explode[$x] : "" }}{{ get_full_name($result->created_by, "id", "first_name", "last_name", "users") }}{{ get_full_name($result->issued_by, "id", "first_name", "last_name", "users") }}@if($result->approved_by != ''){{ get_full_name($result->approved_by, "id", "first_name", "last_name", "users") }}@else {{ null }} @endif@if($result->approved_date != ''){{ streamline_date_time_short($result->approved_date) }} @else {{ null }} @endif{{ streamline_date($result->issued_on) }}
    {{ $i }} {{ get_name($drug_id_explode[$x], 'id', 'name', 'eye_glasses') }} {{ isset($quantity_explode[$x]) ? $quantity_explode[$x] : "" }}{{ isset($issued_out_explode[$x]) ? $issued_out_explode[$x] : "" }} - @forelse ($issued_batches as $batch_record) -
    -
    - {{ __('stores.batch') }}: {{ $batch_record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $batch_record->quantity_moved }} -
    -
    - @empty - @endforelse -
    {{ get_full_name($result->created_by, "id", "first_name", "last_name", "users") }}{{ get_full_name($result->issued_by, "id", "first_name", "last_name", "users") }}@if($result->approved_by != ''){{ get_full_name($result->approved_by, "id", "first_name", "last_name", "users") }}@else {{ null }} @endif@if($result->approved_date != ''){{ streamline_date_time_short($result->approved_date) }} @else {{ null }} @endif{{ streamline_date($result->issued_on) }}
    {{ __('stores.no_records_found') }}
    -
    -
    - © {{ __('stores.streamline_powered_by_kisiizi') }} -
    -
    -
    -
    -
    -@endsection - - -@push('scripts') - - - - - - - - - -@endpush - - - - diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/previously_received_items.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/previously_received_items.blade.php deleted file mode 100755 index 082f12b0..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/previously_received_items.blade.php +++ /dev/null @@ -1,220 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.previously_received_items') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    -
    - {{ Form::open(['method' => 'post', 'route'=>'stores.previously_received_items'])}} - - {{ Form::label('quotation_type', __('stores.quotation_type')) }} - {{ Form::select('quotation_type', $quotation_type_options , null, ['class'=>'form-control compulsory', 'required']) }} - -
    -
    - {{ Form::label('supplier', __('stores.supplier')) }} - {{ Form::select('supplier_id', $suppliers , null, ['id'=>'suppliers_dropdown','class'=>'form-control']) }} -
    - - {{ __('stores.received_between') }}
    - {{ Form::label('start_date',__('stores.start')) }} -
    - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-autoclose1']) }} - -
    -
    - {{ Form::label('end_date',__('stores.end')) }} -
    - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-autoclose2']) }} - -
    -
    - - {{ Form::button(__('stores.search'),['type'=>'submit','class'=>'btn btn-primary btn-rounded waves-effect waves-light m-r-10']) }} - - {{ Form::close() }} -
    - - -
    -
    {!! isset($display) ? $display : '' !!}

    -
    - - - - - - - - - - - - - - - - - @php - $grand_total = 0; - @endphp - - @if($results && $results != 0) - @foreach($results as $result) - @if (!is_null($result->quotation_number)) - - - - - - - - - - - - - @endif - @endforeach - @else - - @endif - - - - - - - - - - - - - - - -
    {{ __('stores.quotation_number') }}{{ __('stores.quantity') }}{{ __('stores.total_bill') }}{{ __('stores.supplier') }}{{ __('stores.approved_by') }}{{ __('stores.payment_status') }}{{ __('stores.received_by') }}{{ __('stores.received_on') }}{{ __('stores.record_date') }}
    # {{ sprintf('%04u', $result->quotation_number) }} - @php - $quotation_number = $result->quotation_number; - $quotation_number = (is_null($quotation_number) || $quotation_number == '') ? 0 : $quotation_number; - $results_to_count = DB::select("select drug_id from $table_quotations where quotation_number={$quotation_number} AND deleted_at IS NULL"); - @endphp - {{ count($results_to_count) }} {{ __('stores.items') }} - - @php - $total_bill = DB::table($table_quotations)->where('quotation_number', '=', $quotation_number)->sum('total_price'); - $total_bill = is_numeric($total_bill) ? $total_bill : 0; - $grand_total += $total_bill; - @endphp - {{ ugandan_shillings($total_bill) }} - - {{ get_name(get_name($quotation_number, "quotation_number", "supplier_id", $table_quotations), "id", "name", "suppliers") }} - - @php - $user_id = get_name($quotation_number, "quotation_number", "approval_user", $table_quotations); - @endphp - {{ get_full_name($user_id, "id", "first_name", "last_name", "users") }} - - @php - $bal = get_name($result->bill_id, "id", "balance", "hospital_bills"); - @endphp - @if($bal === 0)
    {{ __('stores.paid') }}
    @elseif($bal == "")
    N/A
    @elseif($bal > 0)
    {{ __('stores.balance') }}: {{$bal}}
    @else
    {{ __('stores.not_paid') }}
    @endif - -
    - @php - $received_by = get_name($quotation_number, "quotation_number", "receive_user", $table_quotations); - $grn_number = get_name($quotation_number, "quotation_number", "grn_number", $table_quotations); - @endphp - {{ get_full_name($received_by, "id", "first_name", "last_name", "users") }} - - {{ streamline_date(get_name($quotation_number, "quotation_number", "receive_date", $table_quotations)) }} - - {{ streamline_date_time_short(get_name($quotation_number, "quotation_number", "updated_at", $table_quotations)) }} - -
    - {{ csrf_field() }} - - - -
    -
    {{ __('stores.please_search_for_records') }}
    - {{ __('stores.total') }} - - - {{ ugandan_shillings($grand_total) }} - -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/previously_received_items_details.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/previously_received_items_details.blade.php deleted file mode 100755 index 2eaf5cee..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/previously_received_items_details.blade.php +++ /dev/null @@ -1,247 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@include('flash::message') - -@section('content') -
    -
    -

    {{ __('stores.previously_received_items_details') }}

    -
    -
    - -
    -
    - -
    - -
    -
    -
    -
    -
    - {{ __('stores.received') }} -
    -
    - - - - - - - - - - - - - - - - - - @php $i = 1; $total_price = 0; $received_by = 0; @endphp - @if($quotations_results) - @foreach($quotations_results as $result) - @php $drug_id = $result->drug_id; $received_by = $result->receive_user; @endphp - @if($result->quotation_type_id == 1) - @php - $drug_form_id = get_name($drug_id, "id", "form_id", "drugs"); - $drug_form_name = get_name($drug_form_id, "id", "name", "drug_forms"); - @endphp - - - - - - - - - - - - - - - - @elseif($result->quotation_type_id == 2) - - - - - - - - - - - - - - - @elseif($result->quotation_type_id == 3) - - - - - - - - - - - - - - - @elseif($result->quotation_type_id == 4) - - - - - - - - - - - - - - - @elseif($result->quotation_type_id == 5) - - - - - - - - - - - - - - @elseif($result->quotation_type_id == 6) - - - - - - - - - - - - - - - @elseif($result->quotation_type_id == 7) - - - - - - - - - - - - - - - @endif - - @php - $i++; - $total_price += $result->total_price; - @endphp - @endforeach - @else - - @endif - -
    #{{ __('stores.name') }}{{ __('stores.package_unit') }}{{ __('stores.number_of_packages') }}{{ __('stores.quantity_in_each_package_unit') }}{{ __('stores.price_per_package_unit') }}{{ __('stores.total') }} {{ __('stores.quantity') }}{{ __('stores.bill_per_item') }}{{ __('stores.batch_number') }}{{ __('stores.total_price') }}{{ __('stores.expiry_date') }}
    {{ $i }}{{ get_name($drug_id, "id", "name", "drugs") }}{{ get_name($result->package_unit, "id", "name", "package_units") }}{{ $result->receive_number_of_package_units }}{{ $result->receive_quantity_per_package_unit }}{{ is_null($result->receive_bill_per_package_unit) ? ugandan_shillings_with_decimals(($result->receive_quantity_per_package_unit * $result->receive_bill)) : ugandan_shillings_with_decimals($result->receive_bill_per_package_unit) }}{{ $result->receive_quantity }} {{ $drug_form_name }}{{ ugandan_shillings($result->receive_bill) }}{{ $result->batch_number }}{{ ugandan_shillings($result->total_price) }}{{ streamline_date($result->expiry_date) }}
    {{ $i }}{{ get_name($drug_id, "id", "name", "sundries") }}{{ get_name($result->package_unit, "id", "name", "package_units") }}{{ $result->receive_number_of_package_units }}{{ $result->receive_quantity_per_package_unit }}{{ is_null($result->receive_bill_per_package_unit) ? ugandan_shillings_with_decimals(($result->receive_quantity_per_package_unit * $result->receive_bill)) : ugandan_shillings_with_decimals($result->receive_bill_per_package_unit) }}{{ $result->receive_quantity }}{{ ugandan_shillings($result->receive_bill) }}{{ $result->batch_number }}{{ ugandan_shillings($result->total_price) }}{{ streamline_date($result->expiry_date) }}
    {{ $i }}{{ get_name($drug_id, "id", "name", "dentals") }}{{ get_name($result->package_unit, "id", "name", "package_units") }}{{ $result->receive_number_of_package_units }}{{ $result->receive_quantity_per_package_unit }}{{ is_null($result->receive_bill_per_package_unit) ? ugandan_shillings_with_decimals(($result->receive_quantity_per_package_unit * $result->receive_bill)) : ugandan_shillings_with_decimals($result->receive_bill_per_package_unit) }}{{ $result->receive_quantity }}{{ ugandan_shillings($result->receive_bill) }}{{ $result->batch_number }}{{ ugandan_shillings($result->total_price) }}{{ streamline_date($result->expiry_date) }}
    {{ $i }}{{ get_name($drug_id, "id", "name", "radiologies") }}{{ get_name($result->package_unit, "id", "name", "package_units") }}{{ $result->receive_number_of_package_units }}{{ $result->receive_quantity_per_package_unit }}{{ is_null($result->receive_bill_per_package_unit) ? ugandan_shillings_with_decimals(($result->receive_quantity_per_package_unit * $result->receive_bill)) : ugandan_shillings_with_decimals($result->receive_bill_per_package_unit) }}{{ $result->receive_quantity }}{{ ugandan_shillings($result->receive_bill) }}{{ $result->batch_number }}{{ ugandan_shillings($result->total_price) }}{{ streamline_date($result->expiry_date) }}
    {{ $i }}{{ get_name($drug_id, "id", "name", "labs") }}{{ get_name($result->package_unit, "id", "name", "package_units") }}{{ $result->receive_number_of_package_units }}{{ $result->receive_quantity_per_package_unit }}{{ is_null($result->receive_bill_per_package_unit) ? ugandan_shillings_with_decimals(($result->receive_quantity_per_package_unit * $result->receive_bill)) : ugandan_shillings_with_decimals($result->receive_bill_per_package_unit) }}{{ $result->receive_quantity }}{{ ugandan_shillings($result->receive_bill) }}{{ $result->batch_number }}{{ ugandan_shillings($result->total_price) }}{{ streamline_date($result->expiry_date) }}
    {{ $i }}{{ get_name($drug_id, "id", "name", "general_items") }}{{ get_name($result->package_unit, "id", "name", "package_units") }}{{ $result->receive_number_of_package_units }}{{ $result->receive_quantity_per_package_unit }}{{ is_null($result->receive_bill_per_package_unit) ? ugandan_shillings_with_decimals(($result->receive_quantity_per_package_unit * $result->receive_bill)) : ugandan_shillings_with_decimals($result->receive_bill_per_package_unit) }}{{ $result->receive_quantity }}{{ ugandan_shillings($result->receive_bill) }}{{ $result->batch_number }}{{ ugandan_shillings($result->total_price) }}{{ streamline_date($result->expiry_date) }}
    {{ $i }}{{ get_name($drug_id, "id", "name", "eye_glasses") }}{{ get_name($result->package_unit, "id", "name", "package_units") }}{{ $result->receive_number_of_package_units }}{{ $result->receive_quantity_per_package_unit }}{{ is_null($result->receive_bill_per_package_unit) ? ugandan_shillings_with_decimals(($result->receive_quantity_per_package_unit * $result->receive_bill)) : ugandan_shillings_with_decimals($result->receive_bill_per_package_unit) }}{{ $result->receive_quantity }}{{ ugandan_shillings($result->receive_bill) }}{{ $result->batch_number }}{{ ugandan_shillings($result->total_price) }}{{ streamline_date($result->expiry_date) }}
    {{ __('stores.no_records_found') }}
    -
    -
    -
    -
    - -
    -
    - @php - $supplier_id = get_name($quotation_number, "grn_number", "supplier_id", $table_quotations); - $approval_user_id = get_name($quotation_number, "grn_number", "approval_user", $table_quotations); - @endphp -
    - {{ __('stores.quotation_number') }} : # {{ sprintf('%04u', $quotation_number) }} -
    -
    - {{ __('stores.approved_by') }} : {{ get_name($approval_user_id , "id", "first_name", "users") }} {{ get_name($approval_user_id , "id", "last_name", "users") }} -
    -
    - {{ __('stores.grand_total') }} : {{ ugandan_shillings($total_price) }} -
    -
    - {{ __('stores.received_by') }} : {{ get_full_name($received_by , "id", "first_name", "last_name", "users") }} -
    -
    - {{ __('stores.received_date') }} : {{ streamline_date(get_name($quotation_number, "grn_number", "receive_date", $table_quotations)) }} -
    -
    - {{ __('stores.supplier') }} :
    {!! supplier_address($supplier_id) !!} -
    -
    -
    -
    -
    -
    - - @if($result->invoice_generated == 0 && Auth::user()->can('delete-received-store-items')) - {{ __('stores.delete_received_items') }} - @endif -@endsection - -@push('scripts') - - - - - - - -@endpush - - - diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/print_drug_bill.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/print_drug_bill.blade.php deleted file mode 100755 index a6196381..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/print_drug_bill.blade.php +++ /dev/null @@ -1,306 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@include('flash::message') - -@section('content') -
    -
    -

    {{ __('stores.purchase_order') }}

    -
    -
    - -
    -
    - -
    -
    -
    - {{--
    --}} - - PDF {{ __('stores.print') }} - -
    -
    -

    - -
    -
    -
    -
    -
    -
    - {{ $hospital_details->name }}
    - {{ $hospital_details->address }}
    - {{ get_name($hospital_details->district, "id", "name", "districts") }}
    - {{ $hospital_details->email }}
    - {{ $hospital_details->phone_number }}
    -
    -
    - @php - $supplier_id = get_name($quotation_number, "quotation_number", "supplier_id", $table_quotations); - $supplier_name = get_name($supplier_id, "id", "name", "suppliers"); - $supplier_address = get_name($supplier_id, "id", "address", "suppliers"); - $supplier_mobile_no = get_name($supplier_id, "id", "mobile_number", "suppliers"); - @endphp -
    -
    - {{ $supplier_name }}
    - {{ $supplier_address }}
    - {{ $supplier_mobile_no }} -
    -
    - -
    - @if(isset($billing_stage)) - {{ __('stores.purchase_order_proposal') }} : - @else - {{ __('stores.purchase_order_confirmation') }} : - @endif -
    -
    - {{ __('stores.our_order_ref') }}
    - # {{ sprintf("%04u", $quotation_number) }} -
    -
    - {{ __('stores.your_order_ref') }}
    - # {{ isset($supplier_reference) ? $supplier_reference : "" }} -
    -
    - {{ __('stores.date_ordered') }}
    - @php $quotation_date = get_name($quotation_number, "quotation_number", "quotation_date", $table_quotations); @endphp - {{ streamline_date($quotation_date) }} -
    -
    - {{ __('stores.validated_by') }}
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - @php $i = 1; $total_price = 0; @endphp - @if(count($quotations_results) > 0) - @foreach($quotations_results as $result) - @if($result->quotation_type_id == 1) - - - - - - @php - $drug_form = get_name($result->drug_id, 'id', 'form_id', 'drugs'); - @endphp - - - - - - - @elseif($result->quotation_type_id == 2) - - - - - - - - - - - - @elseif($result->quotation_type_id == 3) - - - - - - - - - - - - @elseif($result->quotation_type_id == 4) - - - - - - - - - - - - @elseif($result->quotation_type_id == 5) - - - - - - - - - - - - @elseif($result->quotation_type_id == 6) - - - - - - - - - - - - @elseif($result->quotation_type_id == 7) - - - - - - - - - - - - @endif - @php - $i++; - $total_price += $result->total_price; - @endphp - @endforeach - @else - - @endif - -
    #{{ __('stores.item_name') }}{{ __('stores.number_of_packages_units') }}{{ __('stores.bill_per_package_unit') }}{{ __('stores.units') }}{{ __('stores.quantity') }}{{ __('stores.per_item') }}{{ __('stores.net_price') }}{{ __('stores.expected_date') }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'drugs') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }}(s) - - {{ ugandan_shillings_with_decimals($result->bill_per_package_unit) }} - {{ get_name($drug_form, 'id', 'name', 'unit_of_measure') }}{{ $result->quantity }}{{ ugandan_shillings_with_decimals($result->bill) }}{{ ugandan_shillings_with_decimals($result->total_price) }}{{ streamline_date($result->expected_date) }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'sundries') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }}(s) - - {{ ugandan_shillings_with_decimals($result->bill_per_package_unit) }} - {{ $result->quantity }}{{ ugandan_shillings_with_decimals($result->bill) }}{{ ugandan_shillings_with_decimals($result->total_price) }}{{ streamline_date($result->expected_date) }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'dentals') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }}(s) - - {{ ugandan_shillings_with_decimals($result->bill_per_package_unit) }} - {{ $result->quantity }}{{ ugandan_shillings_with_decimals($result->bill) }}{{ ugandan_shillings_with_decimals($result->total_price) }}{{ streamline_date($result->expected_date) }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'radiologies') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }}(s) - - {{ ugandan_shillings_with_decimals($result->bill_per_package_unit) }} - {{ $result->quantity }}{{ ugandan_shillings_with_decimals($result->bill) }}{{ ugandan_shillings_with_decimals($result->total_price) }}{{ streamline_date($result->expected_date) }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'labs') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }}(s) - - {{ ugandan_shillings_with_decimals($result->bill_per_package_unit) }} - {{ $result->quantity }}{{ ugandan_shillings_with_decimals($result->bill) }}{{ ugandan_shillings_with_decimals($result->total_price) }}{{ streamline_date($result->expected_date) }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'general_items') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }}(s) - - {{ ugandan_shillings_with_decimals($result->bill_per_package_unit) }} - {{ $result->quantity }}{{ ugandan_shillings_with_decimals($result->bill) }}{{ ugandan_shillings_with_decimals($result->total_price) }}{{ streamline_date($result->expected_date) }}
    {{ $i }}{{ get_name($result->drug_id, 'id', 'name', 'eye_glasses') }} - {{ $result->number_of_package_units }} {{ get_name($result->package_unit, 'id', 'name', 'package_units') }}(s) - - {{ ugandan_shillings($result->bill_per_package_unit) }} - {{ $result->quantity }}{{ ugandan_shillings($result->bill) }}{{ ugandan_shillings($result->total_price) }}{{ streamline_date($result->expected_date) }}
    {{ __('stores.no_records_found') }}
    -
    -
    -
    - -
    - {{ __('stores.net_total') }} : {{ ugandan_shillings_with_decimals($total_price) }}
    - {{ __('stores.taxes') }} :
    - {{ __('stores.total') }} : {{ ugandan_shillings_with_decimals($total_price) }}
    -
    - -
    -
    - {{ __('stores.created_by') }}:

    - {{ get_full_name(get_name($quotation_number, "quotation_number", "created_by", $table_quotations), "id", "first_name", "last_name", "users") }}
    - ({{ get_name(get_name($quotation_number, "quotation_number", "created_by", "quotations"), 'id','phone', 'users') }})
    - {{ __('stores.on') }} {{ streamline_date(get_name($quotation_number, "quotation_number", "created_at", "quotations")) }}

    - ....................................... -
    -
    - {{ __('stores.approved_by') }}:

    - @if (get_name($quotation_number, "quotation_number", "approval_date", $table_quotations) != null) - {{ get_full_name(get_name($quotation_number, "quotation_number", "approval_user", "quotations"), "id", "first_name", "last_name", "users") }}
    - ({{ get_name(get_name($quotation_number, "quotation_number", "approval_user", "quotations"), 'id','phone', 'users') }})
    - {{ __('stores.on') }} {{ streamline_date(get_name($quotation_number, "quotation_number", "approval_date", "quotations")) }}

    - @endif - ....................................... -
    -
    - {{ __('stores.checked_by') }}:


    - ....................................... -
    -
    - {{ __('stores.authorised_by') }}:


    - ....................................... -
    -
    -

    - Stre@mline: - {{ auth()->user()->first_name }} {{ auth()->user()->last_name }} {{ __('stores.at') }} {{ streamline_date_time(Date('Y-m-d H:i:s')) }} -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/print_issued_drugs.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/print_issued_drugs.blade.php deleted file mode 100755 index 42dd1987..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/print_issued_drugs.blade.php +++ /dev/null @@ -1,223 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.issued') }} {{ get_quotation_type_name($requisition->quotation_type_id) }}

    -
    -
    - -
    -
    - - {{-- @include('flash::message') --}} - -
    -
    -
    - {{--
    --}} -
    - - PDF {{ __('stores.print') }} - -
    -
    -

    - -
    -
    -
    -
    -
    -
    - {{ $hospital_details->name }}
    - {{ $hospital_details->address }}
    - {{ get_name($hospital_details->district, "id", "name", "districts") }}
    - {{ $hospital_details->email }}
    - {{ $hospital_details->phone_number }}
    -
    -
    - -
    -
    -
    -
    - -
    - {{ __('stores.issued') }} {{ get_quotation_type_name($requisition->quotation_type_id) }} {{__('stores.from_stores_to')}} {{ get_requisition_origin($requisition->requisition_origin) }} -
    -
    - - - - - - - - @if($requisition->quotation_type_id == 1) - - @endif - - - - - @php $i = $grand_total =$unit_cost_value= 0; $cost_unit_price = explode(',',$requisition->cost_value); @endphp - @foreach ($associative_requested_drugs_array as $drug_name_requested => $quantity_issued) - @php - $drug_id = get_name($drug_name_requested, "name", "id", "{$table_name}"); - $unit_cost_value = $cost_unit_price[$i]; - // if drugs get drug form - if($requisition->quotation_type_id == 1){ - $drug_form_id = get_name($drug_id, "id", "form_id", "drugs"); - $drug_form_name = get_name($drug_form_id, "id", "name", "unit_of_measure"); - } - $i++; - //get batch number - $batch_name =get_name($associative_requested_batches_array[$drug_name_requested],'id','batch_number','item_batch_watcher'); - $cost_price = get_name($drug_id, 'id', 'cost_price', "{$table_name}"); - $quantity = is_numeric($quantity_issued) ? $quantity_issued : 0; - $item_cost = is_numeric($cost_price) ? $cost_price : 0; - $item_sub_total = $quantity * $item_cost; - $grand_total += $unit_cost_value; - @endphp - - - - - - @if($requisition->quotation_type_id == 1) @endif - - - @endforeach - - - - - - - -
    #{{ __('stores.item_name') }}{{ __('stores.quantity') }}{{ __('stores.batch_number') }}{{ __('stores.units') }}{{ __('stores.cost_value') }}
    {{ $i }}{{ $drug_name_requested }}{{ $quantity_issued }}{{ $batch_name }}{{ $drug_form_name }}{{ ugandan_shillings($unit_cost_value) }}
    {{ __('stores.total') }}{{ ugandan_shillings($grand_total) }}
    -
    -
    - @if($requisition->received_comment) - {{ __('stores.general_comment') }} -

    {{ $requisition->received_comment }}

    @endif -
    -
    -
    - -
    -
    - {{ __('pharmacy.requisitioned_by') }}: {{ get_full_name($requisition->created_by, "id", "first_name", "last_name", "users") }}

    - {{ __('stores.requisitioned_on') }}: {{ streamline_date_time_short($requisition->created_at) }}

    - ....................................... -
    - @if($requisition->approved_by != '') -
    - {{ __('stores.approved_by') }}: {{ get_full_name($requisition->approved_by, "id", "first_name", "last_name", "users") }}

    - {{ __('stores.approved_on') }}: {{ streamline_date_time_short($requisition->approved_date) }}

    - ....................................... -
    - @endif -
    - {{ __('stores.issued_by') }}: {{ get_full_name($requisition->issued_by, "id", "first_name", "last_name", "users") }}

    - {{ __('stores.issued_on') }}: {{ streamline_date_time_short($requisition->updated_at) }}

    - ....................................... -
    - -
    - {{ __('stores.received_by') }}: @if($requisition->received_by != '') {{ get_full_name($requisition->received_by, "id", "first_name", "last_name", "users") }}@endif

    - {{ __('stores.received_on') }}: @if($requisition->received_by != ''){{ streamline_date($requisition->issued_on) }}@endif

    - ....................................... -
    - - @php - $batches_whose_quantity_has_reduced_array = session()->get('batches_whose_quantity_has_reduced_array'); - - $drugs_whose_batches_have_reduced_array = session()->get('drugs_whose_batches_have_reduced_array'); - - $quantities_array = is_array($batches_whose_quantity_has_reduced_array) ? array_values($batches_whose_quantity_has_reduced_array) : null; - $drug_ids_array = is_array($drugs_whose_batches_have_reduced_array) ? array_values($drugs_whose_batches_have_reduced_array) : null; - $batch_numbers_array = is_array($drugs_whose_batches_have_reduced_array) ? array_keys($drugs_whose_batches_have_reduced_array) : null; - @endphp - - @if(isset($batches_whose_quantity_has_reduced_array) && !is_null($batches_whose_quantity_has_reduced_array)) -
    -
    -
    - - - {{ __('stores.note') }}:{{ __('stores.these_items_have_been_issued_from_batch') }} - - - - - - - - - - @for($i = 0; $i < count($drug_ids_array); $i++) - - - - - - @endfor - -
    {{ __('stores.item') }}{{ __('stores.batch_number') }}{{ __('stores.quantity') }}
    {{ get_name($drug_ids_array[$i], "id", "name", "drugs") }}{{ $batch_numbers_array[$i] }}{{ $quantities_array[$i] }}
    -
    -
    -
    -
    -
    - {{ get_full_name(auth()->user()->id, "id", "first_name", "last_name", "users") .' '.streamline_date_time(date('Y-m-d')) }} -
    - @endif -
    -
    -
    -
    -@endsection - -@push('scripts') - -@endpush - - - - diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/print_issued_labs.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/print_issued_labs.blade.php deleted file mode 100755 index dfca9895..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/print_issued_labs.blade.php +++ /dev/null @@ -1,158 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@include('flash::message') - -@section('content') -
    -
    -

    {{ __('stores.issued_labs') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    - - PDF {{ __('stores.print') }} - -
    -
    -

    - -
    -
    -
    -
    -
    -
    - {{ $hospital_details->name }}
    - {{ $hospital_details->address }}
    - {{ get_name($hospital_details->district, "id", "name", "districts") }}
    - {{ $hospital_details->email }}
    - {{ $hospital_details->phone_number }}
    - {{ streamline_date(date('Y-m-d')) }} -
    -
    - -
    -
    -
    -
    - -
    - {{ __('stores.issued_labs_from_store') }} -
    -
    - - - - - - - - - - - - @php $i = 0; $grand_total = 0; @endphp - @foreach ($associative_requested_drugs_array as $drug_name_requested => $quantity_issued) - @php - $drug_id = get_name($drug_name_requested, "name", "id", "labs"); - $i++; - - $cost_price = get_name($drug_id, 'id', 'cost_price', 'labs'); - $quantity = is_numeric($quantity_issued) ? $quantity_issued : 0; - $item_cost = is_numeric($cost_price) ? $cost_price : 0; - $item_sub_total = $quantity * $item_cost; - $grand_total += $item_sub_total; - @endphp - - - - - - - - @endforeach - - - - - - - - -
    {{ __('stores.number') }}{{ __('stores.name') }}{{ __('stores.quantity_issued') }}{{ __('stores.cost_value') }}
    {{ $i }}{{ $drug_name_requested }}{{ $quantity_issued }}{{ ugandan_shillings($item_sub_total) }}
    {{ __('stores.total') }}{{ ugandan_shillings($grand_total) }}
    -
    -
    -
    - -
    -
    - {{ __('stores.issued_by') }}: {{ get_full_name($requisition->issued_by, "id", "first_name", "last_name", "users") }}

    - {{ __('stores.issued_on') }}: {{ streamline_date($requisition->issued_on) }}

    - ....................................... -
    -
    -
    -
    - {{ __('stores.received_by') }}:

    - ....................................... -
    -
    -
    - {{ get_full_name(auth()->user()->id, "id", "first_name", "last_name", "users") .' '.streamline_date_time(date('Y-m-d')) }} -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - -@endpush - - - - diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/print_issued_opticals.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/print_issued_opticals.blade.php deleted file mode 100644 index ffd943fa..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/print_issued_opticals.blade.php +++ /dev/null @@ -1,159 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@include('flash::message') - -@section('content') -
    -
    -

    {{ __('stores.issued') }} {{get_quotation_type_name($requisition->quotation_type_id)}}

    -
    -
    - -
    -
    - -
    -
    -
    - {{--
    --}} -
    - - PDF {{ __('stores.print') }} - -
    -
    -

    - -
    -
    -
    -
    -
    -
    - {{ $hospital_details->name }}
    - {{ $hospital_details->address }}
    - {{ get_name($hospital_details->district, "id", "name", "districts") }}
    - {{ $hospital_details->email }}
    - {{ $hospital_details->phone_number }}
    - {{ streamline_date(date('Y-m-d')) }} -
    -
    - -
    -
    -
    -
    - -
    - {{-- {{ __('stores.issued_labs_from_store') }} --}} -
    -
    - - - - - - - - - - - - @php $i = 0; $grand_total = 0; @endphp - @foreach ($associative_requested_drugs_array as $drug_name_requested => $quantity_issued) - @php - $drug_id = get_name($drug_name_requested, "name", "id", "{$table_name}"); - $i++; - - - $cost_price = get_name($drug_id, 'id', "{$buyin_price}", "{$table_name}"); - $quantity = is_numeric($quantity_issued) ? $quantity_issued : 0; - $item_cost = is_numeric($cost_price) ? $cost_price : 0; - $item_sub_total = $quantity * $item_cost; - $grand_total += $item_sub_total; - @endphp - - - - - - - - @endforeach - - - - - - - - -
    {{ __('stores.number') }}{{ __('stores.name') }}{{ __('stores.quantity_issued') }}{{ __('stores.cost_value') }}
    {{ $i }}{{ $drug_name_requested }}{{ $quantity_issued }}{{ ugandan_shillings($item_sub_total) }}
    {{ __('stores.total') }}{{ ugandan_shillings($grand_total) }}
    -
    -
    -
    - -
    -
    - {{ __('stores.issued_by') }}: {{ get_full_name($requisition->issued_by, "id", "first_name", "last_name", "users") }}

    - {{ __('stores.issued_on') }}: {{ streamline_date($requisition->issued_on) }}

    - ....................................... -
    -
    -
    -
    - {{ __('stores.received_by') }}:

    - ....................................... -
    -
    -
    - {{ get_full_name(auth()->user()->id, "id", "first_name", "last_name", "users") .' '.streamline_date_time(date('Y-m-d')) }} -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - -@endpush - - - - diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/print_issued_radiologies.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/print_issued_radiologies.blade.php deleted file mode 100755 index 8f78f6e5..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/print_issued_radiologies.blade.php +++ /dev/null @@ -1,132 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@include('flash::message') - -@section('content') -
    -
    -

    {{ __('stores.issued_radiologies') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -

    - -
    -
    -
    -
    -
    -
    - {{ $hospital_details->name }}
    - {{ $hospital_details->address }}
    - {{ get_name($hospital_details->district, "id", "name", "districts") }}
    - {{ $hospital_details->email }}
    - {{ $hospital_details->phone_number }}
    - {{ streamline_date(date('Y-m-d')) }} -
    -
    - -
    -
    -
    -
    - -
    - {{ __('stores.issued_labs_from_store') }} -
    -
    - - - - - - - - - - @php $i = 0; @endphp - @foreach ($associative_requested_drugs_array as $drug_name_requested => $quantity_issued) - @php - $drug_id = get_name($drug_name_requested, "name", "id", "radiologies"); - $i++; - @endphp - - - - - - @endforeach - -
    #{{ __('stores.name') }}{{ __('stores.quantity') }}
    {{ $i }}{{ $drug_name_requested }}{{ $quantity_issued }}
    -
    -
    -
    - -
    -
    - {{ __('stores.issued_by') }}:

    - ....................................... -
    -
    -
    -
    - {{ __('stores.received_by') }}:

    - ....................................... -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - -@endpush - - - - diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/print_issued_sundries.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/print_issued_sundries.blade.php deleted file mode 100755 index 6edb44ef..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/print_issued_sundries.blade.php +++ /dev/null @@ -1,161 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.issued_sundries') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    - - PDF {{ __('stores.print') }} - -
    -
    -

    - -
    -
    -
    -
    -
    -
    - {{ $hospital_details->name }}
    - {{ $hospital_details->address }}
    - {{ get_name($hospital_details->district, "id", "name", "districts") }}
    - {{ $hospital_details->email }}
    - {{ $hospital_details->phone_number }}
    - {{ streamline_date(date('Y-m-d')) }} -
    -
    - -
    -
    -
    -
    - -
    - {{ __('stores.issued_sundries_from_store') }} -
    -
    - - - - - - - - - - - - @php $i = 0; $grand_total = 0; @endphp - @foreach ($associative_requested_drugs_array as $drug_name_requested => $quantity_issued) - @php - $drug_id = get_name($drug_name_requested, "name", "id", "sundries"); - $i++; - - $cost_price = get_name($drug_id, 'id', 'cost_price', 'sundries'); - $quantity = is_numeric($quantity_issued) ? $quantity_issued : 0; - $item_cost = is_numeric($cost_price) ? $cost_price : 0; - $item_sub_total = $quantity * $item_cost; - $grand_total += $item_sub_total; - @endphp - - - - - - - - @endforeach - - - - - - - - -
    {{ __('stores.number_short') }}{{ __('stores.sundry_name') }}{{ __('stores.quantity_issued') }}{{ __('stores.cost_value') }}
    {{ $i }}{{ $drug_name_requested }}{{ $quantity_issued }}{{ ugandan_shillings($item_sub_total) }}
    {{ __('stores.total') }}{{ ugandan_shillings($grand_total) }}
    -
    -
    -
    - -
    -
    - {{ __('pharmacy.requisitioned_by') }}: {{ get_full_name($requisition->created_by, "id", "first_name", "last_name", "users") }}

    - {{ __('stores.requisitioned_on') }}: {{ streamline_date_time_short($requisition->created_at) }}

    - ....................................... -
    -
    - {{ __('stores.issued_by') }}: {{ get_full_name($requisition->issued_by, "id", "first_name", "last_name", "users") }}

    - {{ __('stores.issued_on') }}: {{ streamline_date($requisition->issued_on) }}

    - ....................................... -
    -
    - {{ __('stores.received_by') }}:

    - ....................................... -
    -
    -
    - {{ get_full_name(auth()->user()->id, "id", "first_name", "last_name", "users") .' '.streamline_date_time(date('Y-m-d')) }} -
    -
    - - @include('flash::message') -
    -
    -
    -
    -@endsection - -@push('scripts') - -@endpush - - - - diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/print_previously_issued_items_details.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/print_previously_issued_items_details.blade.php deleted file mode 100755 index 85dbddbc..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/print_previously_issued_items_details.blade.php +++ /dev/null @@ -1,262 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'ISSUED ITEM PRINTOUT - Stre@mline') }} - - - - - - @php - $requisition_model = \Streamline\Models\Requisition::withTrashed()->find($requisition_id); - @endphp - - -
    - @include('layouts.header_pdf_print') -
    - {{ __('stores.issued') }} {{ get_quotation_type_name($requisition_model->quotation_type_id) }} {{__('stores.from_stores_to')}} {{ get_requisition_origin($requisition_model->requisition_origin) }} - - {{-- {{ __('pharmacy.request_for_requisition') }} --}} -
    - -
    -
    -
    - -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - @php $i = 1; @endphp - @if($results) - @foreach($results as $result) - @if($result->quotation_type_id == 1) - @php - $requested_drug_id_explode = explode(",", $result->drug_id); - $quantity_explode = explode(",", $result->quantity_requested); - $per_drug = explode(",", $result->per_drug); - $issued_out_explode = explode(",", $result->quantity_issued); - $drug_id_explode = explode(",", $result->item_ids_issued_out); - @endphp - - @for($x = 0; $x < count($drug_id_explode); $x++) - @php - $drug_form_id = get_name($drug_id_explode[$x], "id", "form_id", "drugs"); - $drug_form_name = get_name($drug_form_id, "id", "name", "unit_of_measure"); - @endphp - - - - - - - - - - - @php $i++; @endphp - @endfor - @elseif($result->quotation_type_id == 2) - @php - $drug_id_explode = explode(",", $result->drug_id); - $quantity_explode = explode(",", $result->quantity_requested); - $per_drug = explode(",", $result->per_drug); - $issued_out_explode = explode(",", $result->quantity_issued); - @endphp - - @for($x = 0; $x < count($drug_id_explode); $x++) - @php - // $drug_form_id = get_name($drug_id_explode[$x], "id", "form_id", "drugs"); - // $drug_form_name = get_name($drug_form_id, "id", "name", "unit_of_measure"); - $drug_form_name = null; - @endphp - - - - - - - - - - - @php $i++; @endphp - @endfor - @elseif($result->quotation_type_id == 4) - @php - $drug_id_explode = explode(",", $result->drug_id); - $quantity_explode = explode(",", $result->quantity_requested); - $per_drug = explode(",", $result->per_drug); - $issued_out_explode = explode(",", $result->quantity_issued); - @endphp - - @for($x = 0; $x < count($drug_id_explode); $x++) - @php - $drug_form_id = get_name($drug_id_explode[$x], "id", "form_id", "radiologies"); - $drug_form_name = get_name($drug_form_id, "id", "name", "unit_of_measure"); - @endphp - - - - - - - - - - - @php $i++; @endphp - @endfor - @elseif($result->quotation_type_id == 5) - @php - $drug_id_explode = explode(",", $result->drug_id); - $quantity_explode = explode(",", $result->quantity_requested); - $per_drug = explode(",", $result->per_drug); - $issued_out_explode = explode(",", $result->quantity_issued); - @endphp - - @for($x = 0; $x < count($drug_id_explode); $x++) - @php - $drug_form_id = get_name($drug_id_explode[$x], "id", "form_id", "labs"); - $drug_form_name = get_name($drug_form_id, "id", "name", "unit_of_measure"); - @endphp - - - - - - - - - - - @php $i++; @endphp - @endfor - @elseif($result->quotation_type_id == 6) - @php - $drug_id_explode = explode(",", $result->drug_id); - $quantity_explode = explode(",", $result->quantity_requested); - $per_drug = explode(",", $result->per_drug); - $issued_out_explode = explode(",", $result->quantity_issued); - @endphp - - @for($x = 0; $x < count($drug_id_explode); $x++) - - - - - - - - - - - @php $i++; @endphp - @endfor - @elseif($result->quotation_type_id == 7) - @php - $drug_id_explode = explode(",", $result->drug_id); - $quantity_explode = explode(",", $result->quantity_requested); - $per_drug = explode(",", $result->per_drug); - $issued_out_explode = explode(",", $result->quantity_issued); - @endphp - - @for($x = 0; $x < count($drug_id_explode); $x++) - - - - - - - - - - - @php $i++; @endphp - @endfor - @endif - @endforeach - @else - - @endif - -
    #{{ __('stores.item_name') }}{{ __('stores.quantity_requested') }}{{ __('stores.quantity_issued') }}{{ __('stores.units') }}{{ __('stores.requested_by') }}{{ __('stores.issued_by') }}{{ __('stores.issued_on') }}
    {{ $i }} {{ get_name($drug_id_explode[$x], 'id', 'name', 'drugs') }} {{ isset($quantity_explode[$x]) ? $quantity_explode[$x] : "" }}{{ isset($issued_out_explode[$x]) ? $issued_out_explode[$x] : "" }}{{ $drug_form_name }}{{ get_full_name($result->created_by, "id", "first_name", "last_name", "users") }}{{ get_full_name($result->issued_by, "id", "first_name", "last_name", "users") }}{{ streamline_date($result->issued_on) }}
    {{ $i }} {{ get_name($drug_id_explode[$x], 'id', 'name', 'sundries') }} {{ isset($quantity_explode[$x]) ? $quantity_explode[$x] : "" }}{{ isset($issued_out_explode[$x]) ? $issued_out_explode[$x] : "" }}{{ $drug_form_name }}{{ get_full_name($result->created_by, "id", "first_name", "last_name", "users") }}{{ get_full_name($result->issued_by, "id", "first_name", "last_name", "users") }}{{ streamline_date($result->issued_on) }}
    {{ $i }} {{ get_name($drug_id_explode[$x], 'id', 'name', 'radiologies') }} {{ isset($quantity_explode[$x]) ? $quantity_explode[$x] : "" }}{{ isset($issued_out_explode[$x]) ? $issued_out_explode[$x] : "" }}{{ $drug_form_name }}{{ get_full_name($result->created_by, "id", "first_name", "last_name", "users") }}{{ get_full_name($result->issued_by, "id", "first_name", "last_name", "users") }}{{ streamline_date($result->issued_on) }}
    {{ $i }} {{ get_name($drug_id_explode[$x], 'id', 'name', 'labs') }} {{ isset($quantity_explode[$x]) ? $quantity_explode[$x] : "" }}{{ isset($issued_out_explode[$x]) ? $issued_out_explode[$x] : "" }}{{ $drug_form_name }}{{ get_full_name($result->created_by, "id", "first_name", "last_name", "users") }}{{ get_full_name($result->issued_by, "id", "first_name", "last_name", "users") }}{{ streamline_date($result->issued_on) }}
    {{ $i }} {{ get_name($drug_id_explode[$x], 'id', 'name', 'general_items') }} {{ isset($quantity_explode[$x]) ? $quantity_explode[$x] : "" }}{{ isset($issued_out_explode[$x]) ? $issued_out_explode[$x] : "" }}{{ get_full_name($result->created_by, "id", "first_name", "last_name", "users") }}{{ get_full_name($result->issued_by, "id", "first_name", "last_name", "users") }}{{ streamline_date($result->issued_on) }}
    {{ $i }} {{ get_name($drug_id_explode[$x], 'id', 'name', 'eye_glasses') }} {{ isset($quantity_explode[$x]) ? $quantity_explode[$x] : "" }}{{ isset($issued_out_explode[$x]) ? $issued_out_explode[$x] : "" }}{{ get_full_name($result->created_by, "id", "first_name", "last_name", "users") }}{{ get_full_name($result->issued_by, "id", "first_name", "last_name", "users") }}{{ streamline_date($result->issued_on) }}
    {{ __('stores.no_records_found') }}
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    - - {{ __('pharmacy.requisitioned_by') }}: {{ get_full_name($requisition_model->created_by, "id", "first_name", "last_name", "users") }}

    - {{ __('stores.requisitioned_on') }}: {{ streamline_date_time_short($requisition_model->created_at) }}

    - ....................................... -
    -
    - {{ __('stores.approved_by') }}: @if($requisition_model->approved_by != ''){{ get_full_name($requisition_model->approved_by, "id", "first_name", "last_name", "users") }} @else {{ null }} @endif

    - {{ __('stores.approved_on') }}: {{ streamline_date_time_short($requisition_model->approved_date) }}

    - ....................................... -
    -
    - {{ __('pharmacy.received_by') }}:@if($requisition_model->received_by != '') {{ get_full_name($requisition_model->received_by, "id", "first_name", "last_name", "users") }}@endif

    - {{ __('stores.received_on') }}: @if($requisition_model->received_by != ''){{ streamline_date_time_short($requisition_model->issued_on) }}@endif

    - - ....................................... -
    -
    -
    -
    -
    -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/quotation_to_bill.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/quotation_to_bill.blade.php deleted file mode 100755 index e71a12e9..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/quotation_to_bill.blade.php +++ /dev/null @@ -1,133 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.bill_for') }} {{ $item_type == '' ? '' :$quotation_types_array[$item_type] }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    -
    - {{ Form::open(['method' => 'post', 'route'=>'stores.quotation_to_bill'])}} - - {{ Form::label('quotation_type', __('stores.quotation_type')) }} - {{ Form::select('quotation_type', $quotation_type_options , null, ['class'=>'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::button(__('stores.search'),['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    - - {{ Form::close() }} - -
    -
    - - - - - - - - - - - - - - @if($results && $results != 0) - @foreach($results as $result) - - - - - - - - - - @endforeach - @else - - @endif - -
    {{ __('stores.quotation_number') }}{{ __('stores.quantity') }}{{ __('stores.date_created') }}{{ __('stores.supplier') }}{{ __('stores.expected_date') }}{{ __('stores.created_by') }}
    {{ sprintf('%04u', $result->quotation_number) }} - quotation_number; -// $results_to_count = DB::select("select drug_id from $table_quotations where Quotation_Number = {$quotation_number} AND active = 1"); - $results_to_count = DB::select("select drug_id from $table_quotations where Quotation_Number = {$quotation_number}"); - ?> - {{ count($results_to_count) }} {{ __('stores.items') }} - - {{ streamline_date_time_short(get_name($result->quotation_number, "quotation_number", "created_at", $table_quotations)) }} - - {{ get_name(get_name($result->quotation_number, "quotation_number", "supplier_id", $table_quotations), "id", "name", "suppliers") }} - - {{ streamline_date(get_name($result->quotation_number, "quotation_number", "expected_date", $table_quotations)) }} - - {{ get_full_name(get_name($result->quotation_number, "quotation_number", "created_by", $table_quotations), 'id', 'first_name', 'last_name', 'users') }} - -
    - {{ csrf_field() }} - - - - - @if(Auth::user()->can('delete-items-quotation')) - - @endif -
    -
    {{ __('stores.please_search_for_records') }}
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/radiologies_physical_stock_count.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/radiologies_physical_stock_count.blade.php deleted file mode 100644 index bbb8924a..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/radiologies_physical_stock_count.blade.php +++ /dev/null @@ -1,643 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.radiologies_stock_reconciliation') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') - -
    - {{ Form::open(['route' => 'stores.radiologies_physical_stock_count_search', 'method' => 'POST', 'role' => 'search']) }} -
    -
    -
    - {{ Form::select('search_items_ids[]',$radiologies_dropdown,'',['id'=>'sundries_ids', 'multiple'=>true, 'class' => 'form-control col-sm-8 sundries_ids']) }} -
    -
    - -
    - -
    - -
    -
    - - - - {{ __('stores.note') }}: {{ __('stores.if_not_going_to_reconcile_all_the_first_filter') }}.
    -
    -
    -
    -
    - - @if(isset($criteria) && isset($resultCount)) -

    - {{ __('stores.search_criteria') }} {{ $criteria }}    {{ __('stores.total_results') }} {{ $resultCount }}    {{ __('stores.clear_search') }} -

    - @endif - {{ Form::close() }} -
    -
    - -
    -
    -
    -
    - - -
    - {{ csrf_field() }} -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - - - - @if(track_items_using_batches()) - - @endif - - - - - {{-- - --}} - {{-- --}} - - - - - - - - - @if(track_items_using_batches()) - - @endif - - - - - {{-- --}} - {{-- --}} - {{-- --}} - - - - - - - - - - - - - {{-- --}} - @if(track_items_using_batches()) - - @endif - {{-- --}} - {{-- --}} - - @foreach($radiologies as $sundry) - @php - $radiology_store_stock = 0; - $item_cost_value = 0; - $batch_records = \Streamline\Models\ItemBatchWatcher::where(['item_type' => 4, 'item_id' => $sundry->id])->where('store_stock', '!=', 0)->get(); - - if(count($batch_records) > 0){ - foreach($batch_records as $record){ - $radiology_store_stock += $record->store_stock; - $item_cost_value += $record->cost_price * $record->store_stock; - } - } - @endphp - - - - - - @if(track_items_using_batches()) - - @endif - - - - - {{-- - --}} - {{-- --}} - - @endforeach - -
    {{ __('stores.item_name') }}{{ __('stores.system_stock') }}{{ __('stores.cost_price') }}{{ __('stores.stock_value') }}{{ __('stores.batch_details_and_others') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.reason_for_difference') }}{{ __('stores.selling_price') }}{{ __('stores.markup') }}
    {{ __('stores.item_name') }}{{ __('stores.system_stock') }}{{ __('stores.cost_price') }}{{ __('stores.stock_value') }}{{ __('stores.batch_details_and_others') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.reason_for_difference') }}{{ __('stores.selling_price') }}{{ __('stores.markup') }}
    {{ __('stores.batch_details_and_others') }} - {{ __('stores.select_all') }} - - -
    - @if($sundry->insurance == 1) - {{ $sundry->name }} - @else - {{ $sundry->name }} - @endif - -
    - {{ $radiology_store_stock }} - - -
    -
    -
    - {{ ugandan_shillings($sundry->cost_price) }} -
    - -
    -
    - {{ ugandan_shillings($item_cost_value) }} -
    -
    - @php - $quotation_records = get_all_batches_for_this_drug_with_balances($sundry->id, $item_type = 4); - - $batch_records = \Streamline\Models\ItemBatchWatcher::where(['item_type' => 4, 'item_id' => $sundry->id])->where('store_stock', '!=', 0)->get(); - @endphp - - @if(count($batch_records) > 0) - @foreach($batch_records as $record) -
    -
    - {{ Form::hidden('batch_db_record_id[]', $record->id, ['class' => 'batch_record_id_class_'.$record->id]) }} - {{ Form::hidden('batch_quotation_id[]', $record->id) }} - {{ Form::hidden('batch_radiology_id[]', $sundry->id, ['class' => 'batch_id_class_'.$sundry->id]) }} - -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    - -
    -
    - {{ __('stores.unit_cost') }}: {{ $record->cost_price }} -
    - -
    -
    - {{ __('stores.quantity') }}:{{ $record->store_stock }} - -
    -
    - -
    - @if(Auth::user()->can('remove-batch-during-stock-reconciliation')) - - @php - $batch_no = $record->batch_number; - $batch_id = $record->id; - @endphp - Remove batch - - @endif - @if(Auth::user()->can('edit-batch-during-stock-reconciliation')) - - @php - $batch_no = $record->batch_number; - $sundry_id = $sundry->id; - @endphp - {{ __('stores.edit_batch') }} - - @endif -
    -
    - -
    -
    - @endforeach - @else -
    -
    - {{ Form::hidden('batch_db_record_id[]', 0, ['class' => 'batch_record_id_class_'.$sundry->id]) }} - {{ Form::hidden('batch_quotation_id[]', 0) }} - {{ Form::hidden('batch_radiology_id[]', $sundry->id) }} - -
    - -
    - -
    -
    -
    -
    -
    - -
    - -
    -
    - -
    -
    - @endif -
    -
    - {{ $sundry->store_stock }} -
    - -
    - - -
    -
    - -
    - - -
    - {{ ugandan_shillings($sundry->non_insured_price) }} -
    -
    - @php - $selling_price = $sundry->non_insured_price; - $cost_price = $sundry->cost_price; - $mark_up = $selling_price-$cost_price; - @endphp - {{ $mark_up }} - -
    -
    - @if (count($radiologies) > 0) -
    -

    -
    - -
    - - -
    -
    -
    -
    - {{ Form::label('account_id', __('stores.general_comment')) }} -
    -
    - {{--
    - {{ Form::select('account_id', $chart_of_accounts, null, ['class' => 'form-control', 'id' => 'account_id']) }} -
    -
    --}} -
    - {{ Form::textarea('general_comment','',['class' => 'form-control', 'placeholder' => __('stores.add_general_comment'), 'rows' => 4]) }} -
    -
    -
    -
    - - - {{ __('pharmacy.note') }}: - {{ __('pharmacy.stock_differences_are_reflected_in') }} {{ $stock_adjustment_chart_of_account->name }} {{ __('pharmacy.if_it_is_not_opening_stock') }}. {!! __('pharmacy.if_it_is_the_opening_stock_then_the_affected_account') !!} - -
    -
    -
    - @endif -
    - @if (count($radiologies) > 0) -
    - - - - -
    - @endif - -
    -
    - -
    -
    -
    -
    - - -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/radiology_stock_sheet.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/radiology_stock_sheet.blade.php deleted file mode 100644 index 66b3c0c3..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/radiology_stock_sheet.blade.php +++ /dev/null @@ -1,179 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.store_radiologies_stock_sheet') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -
    -
    -
    - {{ csrf_field() }} -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - - - {{-- --}} - {{-- --}} - - {{-- --}} - - - - - @forelse($radiologies as $radio) - - - - - - {{-- --}} - {{-- --}} - - {{-- --}} - - @empty - @endforelse - - - - - - - - {{-- --}} - {{-- --}} - {{-- --}} - - - - - - {{-- --}} - {{-- --}} - - {{-- --}} - - -
    {{ __('stores.item_name') }}{{ __('stores.store_stock') }}{{ __('stores.cost_value') }}{{ __('stores.cash_price') }}{{ __('stores.expiry_date') }}{{ __('clinical_data.expense_account') }}{{ __('stores.cog_account') }}
    - {{ $radio->name }} - - @forelse($radio->batches as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->store_stock }}
    - - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date )}} -
    -
    - {{ __('stores.unit_cost') }}: {{ $record->cost_price }} -
    -
    - @empty - @endforelse - -
    - {{ $radio->total_stock }} -
    - - -
    - {{ ugandan_shillings($radio->item_cost_value) }} - - - {{ $radio->non_insured_price}} - -
    - {{ streamline_date($radio->expiry_date) }} -
    - {{-- -- -
    - {{ get_name($radio->expenses_account_id, "id", "name", "chart_of_accounts") }} - - {{ get_name($sundry->cost_of_goods_account, "id", "name", "chart_of_accounts") }} -
    {{ ugandan_shillings_with_decimals($total_cost_value) }}
    {{ __('stores.item_name') }}{{ __('stores.store_stock') }}{{ __('stores.cost_value') }}{{ __('stores.cash_price') }}{{ __('stores.expiry_date') }}{{ __('clinical_data.expense_account') }}{{ __('stores.cog_account') }}
    -
    -
    - - {{--
    -
    - - - -
    - -
    --}} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/radiology_sundries_requisition.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/radiology_sundries_requisition.blade.php deleted file mode 100644 index ba4e5ad9..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/radiology_sundries_requisition.blade.php +++ /dev/null @@ -1,206 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.radiology_sundry_requisition') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    - -
    - @if(isset($item_type) && $item_type != 0) - {{ Form::open(['route' => 'stores.radiology_sundries', 'method' => 'ANY', 'role' => 'search']) }} -
    - -
    -
    - {{ Form::select('item_name[]',$names_array,'',['id'=>'item_ids', 'multiple'=>true, 'class' => 'form-control col-sm-8 item_ids']) }} -
    -
    - -
    - -
    -
    - - @if(isset($criteria) && isset($resultCount)) -

    - {{ __('pharmacy.search_criteria') }} : {{ $criteria }}    {{ __('pharmacy.total_results') }} : {{ $resultCount }}    {{ __('pharmacy.clear_search') }} -

    - @endif - {{ Form::close() }} - @endif - - {{ Form::open(['method' => 'post', 'route'=>'stores.store_radiology_requisition'])}} - -
    - - - - - - - - - - - - @if(count($results) > 0) - @php $count=0; @endphp - @foreach($results as $result) - @php - $count++; - $lab_store_stock = $lab_stock = 0; - $store_batch_records= track_batch_stock(2,$result->id,'store_stock'); - $radiology_batch_records =track_batch_stock(2,$result->id,'radiology_stock'); - @endphp - - - - - - - - @endforeach - @else - - @endif - -
    #{{ __('labs.name') }}{{ __('pharmacy.store_stock') }}{{ __('labs.imaging_stock') }}{{ __('pharmacy.quantity_requested') }}
    {{ $count }} - {{ $result->name }} - - - @if(count($store_batch_records) > 0) - @foreach($store_batch_records as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->store_stock }}
    - @php - $lab_store_stock += $record->store_stock; - @endphp - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - @endforeach - @endif - Total Stock: {{ $lab_store_stock }} -
    - @if(count($radiology_batch_records) > 0) - @foreach($radiology_batch_records as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->radiology_stock }}
    - @php - $lab_stock += $record->radiology_stock; - @endphp - {{ __('stores.expiry_date') }}: {{ streamline_date_plain($record->expiry_date) }} -
    -
    - @endforeach - @endif - Total : {{ $lab_stock }} -
    - -
    {{ __('pharmacy.please_search_records') }}
    -
    -
    - - @if(count($results) > 0 ) -
    - {{ Form::button(__('stores.submit_request'),['type'=>'submit','name'=>'complete_request','value'=>'1','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - - {{ Form::close() }} -
    - @endif -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/radiology_sundries_stock_sheet.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/radiology_sundries_stock_sheet.blade.php deleted file mode 100644 index d498ee15..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/radiology_sundries_stock_sheet.blade.php +++ /dev/null @@ -1,202 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.radiology_sundries_stock_sheet') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -
    -
    - - {{ csrf_field() }} -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - @if(track_items_using_batches()) - - @endif - - - - - - - - - - @if(track_items_using_batches()) - - @endif - - - - - - - - @foreach($sundries as $sundry) - - - - @if(track_items_using_batches()) - - @endif - - - - - - @endforeach - -
    {{ __('stores.sundry_name') }}{{ __('stores.batch_details') }}{{ __('stores.imaging_stock') }}{{ __('stores.cost_value') }}{{ __('stores.selling_price') }}{{ __('stores.sale_value') }}
    {{ __('stores.sundry_name') }}{{ __('stores.batch_details') }}{{ __('stores.imaging_stock') }}{{ __('stores.cost_value') }}{{ __('stores.selling_price') }}{{ __('stores.selling_value') }}
    - @if($sundry->insurance == 1) - {{ $sundry->name }} - @else - {{ $sundry->name }} - @endif - - @php - $batch_records = track_batch_stock(2,$sundry->id,'radiology_stock'); - $sundry_lab_stock = $item_cost_value = 0; - @endphp - @forelse($batch_records as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->radiology_stock }}
    - @php - $sundry_lab_stock += $record->radiology_stock; - @endphp - {{ __('stores.expiry_date') }}: {{ $record->expiry_date }} -
    -
    - {{ __('stores.unit_cost') }}: {{ $record->cost_price }} -
    -
    - @php - $item_cost_value += $record->cost_price * $record->radiology_stock; - - @endphp - @empty - @endforelse -
    -
    - @if(track_items_using_batches()){{ $sundry_lab_stock }}@else{{$sundry->lab_stock }}@endif -
    - -
    -
    - @if(track_items_using_batches()){{ugandan_shillings($item_cost_value) }}@else {{ $sundry->lab_stock * $sundry->cost_price }} @endif -
    -
    -
    -
    -
    - {{ugandan_shillings( $sundry->non_insured_price) }} -
    -
    -
    -
    -
    - @if(track_items_using_batches()){{ugandan_shillings($sundry_lab_stock * $sundry->non_insured_price) }}@else {{ $sundry->lab_stock * $sundry->non_insured_price }} @endif -
    -
    -
    -
    -
    -
    - -
    - -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/receive_items.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/receive_items.blade.php deleted file mode 100755 index 9f500627..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/receive_items.blade.php +++ /dev/null @@ -1,189 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.receive_items') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    -
    - {{ Form::open(['method' => 'post', 'route'=>'stores.receive_items'])}} - - {{ Form::label('quotation_type', __('stores.quotation_type')) }} - {{ Form::select('quotation_type', $quotation_type_options , null, ['class'=>'form-control compulsory', 'required']) }} -
    -
    - -
    -
    - {{ Form::label('search_by', __('stores.date')) }} - {{ Form::select('search_by', ['3'=>'All records','0'=>'Last 24 hours','1'=>'Custom Date','2'=>'Custom Range'], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - - -
    - {{ Form::button(__('stores.search'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} -
    - {{ Form::close() }} -
    -
    -
    -
    - - - - - - - - - - - - - @if(count($results) > 0) - @foreach($results as $result) - - - - - - - - - @endforeach - @else - - @endif - -
    {{ __('stores.quotation_number') }}{{ __('stores.approved_by') }}{{ __('stores.expected_date') }}{{ __('stores.supplier') }}{{ __('stores.total_price') }}
    - # {{ sprintf('%04u', $result->quotation_number) }} - - @php - $approved_by_id = get_name($result->quotation_number, "quotation_number", "approval_user", $table_quotations); - @endphp - - {{ get_name($approved_by_id, "id", "first_name", "users") }} {{ get_name($approved_by_id, "id", "last_name", "users") }} - - {{ streamline_date(get_name($result->quotation_number, "quotation_number", "expected_date", $table_quotations)) }} - - {{ get_name(get_name($result->quotation_number, "quotation_number", "supplier_id", $table_quotations), "id", "name", "suppliers") }} - - quotation_number." AND deleted_at IS NULL"; - $results = \DB::select($total_query); - $total = $results[0]->total; - ?> - {{ ugandan_shillings($total) }} - -
    - {{ csrf_field() }} - - - - - @if(Auth::user()->can('delete-items-quotation')) - - @endif -
    -
    {{ __('stores.no_records_found') }}
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/receive_items_directly.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/receive_items_directly.blade.php deleted file mode 100755 index 9e70d886..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/receive_items_directly.blade.php +++ /dev/null @@ -1,662 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.receive') }} {{ $quotation_types_array[$quotation_type] }} {{ __('stores.directly_into_streamline') }}

    -
    -
    - -
    -
    - - @include('flash::message') - -
    -
    -
    - {{ Form::open(['route' => 'stores.receive_items_directly_search', 'method' => 'ANY', 'role' => 'search']) }} -
    -
    -
    - - @if($quotation_type == 1) - {{ Form::select('items_ids[]',$drugs,'',['id'=>'drug_ids', 'multiple'=>true, 'class' => 'form-control col-sm-8 drug_ids']) }} - @elseif($quotation_type == 2) - {{ Form::select('items_ids[]',$sundries,'',['id'=>'sundry_ids', 'multiple'=>true, 'class' => 'form-control col-sm-8 sundry_ids']) }} - @elseif($quotation_type == 3) - {{ Form::select('items_ids[]',$dentals,'',['id'=>'dental_ids', 'multiple'=>true, 'class' => 'form-control col-sm-8 dental_ids']) }} - @elseif($quotation_type == 4) - {{ Form::select('items_ids[]',$radiologies,'',['id'=>'radiology_ids', 'multiple'=>true, 'class' => 'form-control col-sm-8 radiology_ids']) }} - @elseif($quotation_type == 5) - {{ Form::select('items_ids[]',$labs,'',['id'=>'lab_ids', 'multiple'=>true, 'class' => 'form-control col-sm-8 lab_ids']) }} - @elseif($quotation_type == 6) - {{ Form::select('items_ids[]',$general_items,'',['id'=>'general_items_ids', 'multiple'=>true, 'class' => 'form-control col-sm-8 general_items_ids']) }} - @elseif($quotation_type == 7) - {{ Form::select('items_ids[]',$optical_items,'',['id'=>'optical_items_id', 'multiple'=>true, 'class' => 'form-control col-sm-8 optical_items_id']) }} - @else - @endif - - {{--{{ Form::text('drug_ids', '', ['class' => 'form-control typeahead', 'placeholder' => 'Search Name', 'autocomplete' => 'off', 'spellcheck' => false]) }}--}} -
    -
    - -
    - -
    -
    - - @if(isset($criteria) && isset($resultCount)) -

    - {{ __('stores.search_criteria') }} {{ $criteria }}    {{ __('stores.total_results') }} {{ $resultCount }}    {{ __('stores.clear_search') }} -

    - @endif - {{ Form::close() }} -
    -
    - -
    -
    - {{ csrf_field() }} -
    -
    -
    - -
    - {{ Form::label('supplier', __('stores.supplier')) }} - {{ Form::select('supplier', $suppliers , null, ['id'=>'suppliers_dropdown','class'=>'form-control compulsory', 'required']) }} - {{ __('stores.add_new_supplier') }} -
    -
    -
    - -
    -
    -
    - {{ Form::label('received_on_date',__('stores.received_on')) }} -
    - {{ Form::text('received_on_date',Carbon\Carbon::parse(Carbon\Carbon::now())->format('d/m/Y'),['class' => 'form-control compulsory', 'required','readonly','id' => 'received_on_date']) }} - -
    -
    -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @if(count($items) == 0) - - @elseif(!is_null($items)) - @foreach($items as $item) - - @php - $quantity_in_package_unit = 0; - $package_unit_id = ''; - @endphp - - @if($quotation_type == 1 || $quotation_type == 2) - @php - - $package_unit_id = $item->package_unit_id; - $package_unit_id = !is_null($package_unit_id) ? $package_unit_id : ''; - - if($item->does_package_unit_have_sub_packages == 1){ - - $quantity_in_sub_package = is_null($item->quantity_in_each_sub_package) ? 0 : $item->quantity_in_each_sub_package; - - $subs_in_main_package = is_null($item->number_of_sub_packages_in_main_package_unit) ? 0 : $item->number_of_sub_packages_in_main_package_unit; - - $quantity_in_package_unit = $quantity_in_sub_package * $subs_in_main_package; - } else { - $quantity_in_package_unit = $item->quantity_in_each_package_unit; - } - @endphp - @endif - - - @if($quotation_type == 1) - - @elseif($quotation_type == 2) - - @elseif($quotation_type == 3) - - @elseif($quotation_type == 4) - - @elseif($quotation_type == 5) - - @elseif($quotation_type == 7) - - - @else - - @endif - - - - - - - - - - - - - - @endforeach - - - - - - @else - - @endif - -
    {{ __('stores.names') }}{{ __('stores.last_cost_price') }}{{ __('stores.package_unit') }}{{ __('stores.number_of_packages_units') }}{{ __('stores.quantity_in_each_package') }}{{ __('stores.bill_per_package_unit') }}{{ __('stores.quantity') }}{{ __('stores.bill_per_item') }}{{ __('stores.total_bill') }}{{ __('stores.batch_number') }}{{ __('stores.expiry_date') }}
    {{ __('stores.names') }}{{ __('stores.last_cost_price') }}{{ __('stores.package_unit') }}{{ __('stores.number_of_packages_units') }}{{ __('stores.quantity_in_each_package') }}{{ __('stores.bill_per_package_unit') }}{{ __('stores.quantity') }}{{ __('stores.bill_per_item') }}{{ __('stores.total_bill') }}{{ __('stores.batch_number') }}{{ __('stores.expiry_date') }}
    {{ __('stores.no_records_found') }}
    - {{ $item->name }} - {{ ugandan_shillings_with_decimals( (get_latest_unit_cost_value($item->id,$quotation_type,1) == 0 )? $item->cost_price : get_latest_unit_cost_value($item->id,$quotation_type,1)) }}{{ ugandan_shillings_with_decimals( (get_latest_unit_cost_value($item->id,$quotation_type,1) == 0 )? $item->cost_price : get_latest_unit_cost_value($item->id,$quotation_type,1)) }}{{ ugandan_shillings_with_decimals( (get_latest_unit_cost_value($item->id,$quotation_type,1) == 0 )? $item->buying_price : get_latest_unit_cost_value($item->id,$quotation_type,1)) }}{{ ugandan_shillings_with_decimals( (get_latest_unit_cost_value($item->id,$quotation_type,1) == 0 )? $item->cost_price : get_latest_unit_cost_value($item->id,$quotation_type,1)) }}{{ ugandan_shillings_with_decimals( (get_latest_unit_cost_value($item->id,$quotation_type,1) == 0 )? $item->cost_price : get_latest_unit_cost_value($item->id,$quotation_type,1)) }}{{ ugandan_shillings_with_decimals( (get_latest_unit_cost_value($item->id,$quotation_type,1) == 0 )? $item->buying_price : get_latest_unit_cost_value($item->id,$quotation_type,1)) }} - - - {{ Form::select('package_unit[]', $package_units, $package_unit_id, ['class' => 'form-control compulsory', 'required', 'id' => 'package_unit_selected_'.$item->id]) }} - -
    -
    - -
    -
    {{ $package_unit_id != "" ? get_name($package_unit_id, 'id', 'name', 'package_units') : "" }}
    -
    - - - - -
    -
    - - -
    -
    - @php $unit_name = ""; $form_name=""; @endphp - - @if($quotation_type == 1 || $quotation_type == 2) - @php - $drug_unit = get_name($item->id, 'id', 'unit_id','drugs'); - $unit_name = get_name($drug_unit, 'id', 'name','drug_units'); - - $drug_form = get_name($item->id, 'id', 'form_id', 'drugs'); - $form_name = get_name($drug_form, 'id', 'name','drug_forms'); - @endphp - @endif - - @if($quotation_type == 1) - {{ $form_name }} - @endif -
    -
    -
    - - - - - - -
    - {{ Form::text('expiry_date[]','',['class' => 'form-control compulsory datepicker-autoclose', 'required','readonly']) }} - -
    - {{ __('stores.add_batch_of') }} {{ $item->name }} -
    {{ __('stores.total_bill') }} - -
    {{ __('stores.no_records_found') }}
    -
    -
    -
    - {{ Form::label('receiver_comment', __('stores.receiver_comment'), ['style' => 'font-size: bolder; font-weight: 600']) }} - {{ Form::textarea('receiver_comment',null,['class'=>'form-control', 'rows' => 5, 'cols' => 20]) }} -
    -
    -
    -
    - @if( Auth::user()->can('receive-items-directly-store')) - {{ Form::button(__('stores.receive_into_store'),['type'=>'submit','form'=>'quotation_form','id'=>'store_submit_button','formaction'=>'store_received_items_directly','class'=>'btn btn-success waves-effect waves-light m-r-10','name'=>'store_submit_button']) }} - @endif - - @if( Auth::user()->can('receive-items-directly-pharmacy')) - @if($quotation_type == 5) - {{ Form::button(__('stores.receive_into_labs'),['type'=>'submit','form'=>'quotation_form','id'=>'lab_submit_button','formaction'=>'store_received_items_directly','class'=>'btn btn-success waves-effect waves-light m-r-10','name'=>'lab_submit_button']) }} - @elseif( $quotation_type== 4) - {{ Form::button(__('stores.receive_into_imaging'),['type'=>'submit','form'=>'quotation_form','id'=>'lab_submit_button','formaction'=>'store_received_items_directly','class'=>'btn btn-success waves-effect waves-light m-r-10','name'=>'radiology_submit_button']) }} - - @else - {{ Form::button(__('stores.receive_into_pharmacy'),['type'=>'submit','form'=>'quotation_form','id'=>'pharmacy_submit_button','formaction'=>'store_received_items_directly','class'=>'btn btn-success waves-effect waves-light m-r-10','name'=>'pharmacy_submit_button']) }} - @endif - @endif -
    -
    -
    - {{ Form::close() }} -
    -
    - - -@endsection - -@push('scripts') - - - - - - - - - - - - - - -@endpush - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/request_quotation.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/request_quotation.blade.php deleted file mode 100755 index 4216cd84..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/request_quotation.blade.php +++ /dev/null @@ -1,449 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.quotation_for') }} {{ $quotation_types_array[$quotation_type] }}

    -
    -
    - -
    -
    - - @include('flash::message') - -
    -
    -
    - {{ Form::open(['route' => 'stores.request_a_quotation_search', 'method' => 'ANY', 'role' => 'search']) }} -
    -
    -
    - - @if ($quotation_type == 1) - {{ Form::select('items_ids[]', $drugs, '', ['id' => 'drug_ids', 'multiple' => true, 'class' => 'form-control col-sm-8 drug_ids']) }} - @elseif($quotation_type == 2) - {{ Form::select('items_ids[]', $sundries, '', ['id' => 'sundry_ids', 'multiple' => true, 'class' => 'form-control col-sm-8 sundry_ids']) }} - @elseif($quotation_type == 3) - {{ Form::select('items_ids[]', $dentals, '', ['id' => 'dental_ids', 'multiple' => true, 'class' => 'form-control col-sm-8 dental_ids']) }} - @elseif($quotation_type == 4) - {{ Form::select('items_ids[]', $radiologies, '', ['id' => 'radiology_ids', 'multiple' => true, 'class' => 'form-control col-sm-8 radiology_ids']) }} - @elseif($quotation_type == 5) - {{ Form::select('items_ids[]', $labs, '', ['id' => 'lab_ids', 'multiple' => true, 'class' => 'form-control col-sm-8 lab_ids']) }} - @elseif($quotation_type == 6) - {{ Form::select('items_ids[]', $general_items, '', ['id' => 'general_items_ids', 'multiple' => true, 'class' => 'form-control col-sm-8 general_items_ids']) }} - @elseif($quotation_type == 7) - {{ Form::select('items_ids[]', $opticals, '', ['id' => 'optical_ids', 'multiple' => true, 'class' => 'form-control col-sm-8 optical_ids']) }} - @endif -
    -
    - -
    - {{ Form::select('amc_period', ['' => __('stores.select_AMC_period'),'1'=> __('stores.LAST_1_MONTH'), '3'=>__('stores.LAST_3_MONTHS'), '6'=>__('stores.LAST_6_MONTHS')], '', ['class' => 'form-control','id'=>'amc_period']) }} -
    -
    - -
    - -
    - -
    -
    - - - - {{ __('stores.note') }}: {{ __('stores.first_filter_out_items_to_request_msg') }}.
    -
    -
    -
    -
    - - @if (isset($criteria) && isset($resultCount)) -

    - {{ __('stores.search_criteria') }} {{ $criteria }} -    {{ __('stores.total_results') }} {{ $resultCount }} -    {{ __('stores.clear_search') }} -

    - @endif - {{ Form::close() }} -
    -
    - -
    - - {{ csrf_field() }} -
    -
    -
    -
    - - - - - - - - - - - - @if (count($items) == 0) - - - - @elseif(!is_null($items)) - @foreach ($items as $item) - @php - $quantity_in_package_unit = 0; - $package_unit_id = ''; - @endphp - - @if ($quotation_type == 1 || $quotation_type == 2) - @php - - $package_unit_id = $item->package_unit_id; - $package_unit_id = !is_null($package_unit_id) ? $package_unit_id : ''; - - if ($item->does_package_unit_have_sub_packages == 1) { - $quantity_in_sub_package = is_null($item->quantity_in_each_sub_package) ? 0 : $item->quantity_in_each_sub_package; - - $subs_in_main_package = is_null($item->number_of_sub_packages_in_main_package_unit) ? 0 : $item->number_of_sub_packages_in_main_package_unit; - - $quantity_in_package_unit = $quantity_in_sub_package * $subs_in_main_package; - } else { - $quantity_in_package_unit = $item->quantity_in_each_package_unit; - } - @endphp - @endif - - @php - $drug_current_stock = 0; - $stock_current_amount = $pharmacy_current_stock = 0; - if ($quotation_type == 1) { - $stock_current_amount = get_name($item->id, 'id', 'store_stock', 'drugs'); - $pharmacy_current_stock = get_name($item->id, 'id', 'pharmacy_stock', 'drugs'); - } elseif ($quotation_type == 2) { - $stock_current_amount = get_name($item->id, 'id', 'store_stock', 'sundries'); - $pharmacy_current_stock = get_name($item->id, 'id', 'pharmacy_stock', 'sundries'); - } elseif ($quotation_type == 5) { - $stock_current_amount = get_name($item->id, 'id', 'store_stock', 'labs'); - $pharmacy_current_stock = get_name($item->id, 'id', 'pharmacy_stock', 'labs'); - } elseif ($quotation_type == 6) { - $stock_current_amount = get_name($item->id, 'id', 'store_stock', 'general_items'); - $pharmacy_current_stock = get_name($item->id, 'id', 'pharmacy_stock', 'general_items'); - } elseif ($quotation_type == 7) { - $stock_current_amount = get_name($item->id, 'id', 'store_stock', 'eye_glasses'); - $pharmacy_current_stock = get_name($item->id, 'id', 'pharmacy_stock', 'eye_glasses'); - } - - @endphp - - - - - - - @endforeach - @endif - -
    {{ __('stores.item_name') }}{{ __('stores.package_unit') }}{{ __('stores.number_of_packages_units') }}{{ __('stores.quantity_in_each_package_unit') }}{{ __('stores.quantity') }}
    - {{ __('stores.no_records_in_database') }} -
    {{ $item->name }}
    -
    - {{ $stock_current_amount }} {{ __('stores.in_stores') }} -

    -
    - {{ $pharmacy_current_stock }} {{ __('stores.in_pharmacy') }} -

    - @if (!is_null($amc_period)) -
    - {{ __('stores.average_monthly_consumption') }}: {{ get_item_average_monthly_consumption($quotation_type, $item->id, $amc_period) }} -
    - @endif -
    - {{ Form::select('package_unit[]', $package_units, $package_unit_id ? $package_unit_id : 1, ['class' => 'form-control compulsory', 'required', 'id' => 'package_unit_selected_' . $item->id]) }} - -
    -
    - -
    -
    - {{ $package_unit_id != '' ? get_name($package_unit_id, 'id', 'name', 'package_units') : '' }} -
    -
    -
    - - -
    -
    - - -
    -
    - @php $unit_name = ""; @endphp - - @if ($quotation_type == 1) - @php - $drug_unit = get_name($item->id, 'id', 'unit_id', 'drugs'); - $unit_name = get_name($drug_unit, 'id', 'name', 'drug_units'); - - $drug_form = get_name($item->id, 'id', 'form_id', 'drugs'); - $form_name = get_name($drug_form, 'id', 'name', 'drug_forms'); - @endphp - @else - @php $form_name = ""; @endphp - @endif - {{ $form_name }} -
    -
    -
    -
    -
    - @if(!is_null($items) && count($items) > 0) -
    - -
    - {{ Form::label('supplier', __('stores.supplier')) }} - {{ Form::select('supplier[]', $suppliers, '', ['id' => 'supplier', 'multiple' => true, 'class' => 'form-control col-sm-8 supplier','required']) }} - {{ __('stores.add_supplier') }} -
    -
    -
    -
    - {{ Form::label('expected_date', __('stores.expected_date')) }} -
    - {{ Form::text('expected_date', '', ['class' => 'form-control compulsory', 'required', 'readonly', 'id' => 'datepicker-autoclose']) }} - -
    -
    -
    - -
    -
    -
    - {!! Form::label('order_memo', __('stores.order_memo_slash_description'), ['style' => 'font-weight:bolder']) !!} - {{ Form::textarea('memo','',['class'=>'form-control','rows'=>'4']) }} -
    -
    - @endif - -
    - {{ Form::button(__('stores.save_for_later'), ['type' => 'submit', 'form' => 'quotation_form', 'id' => 'save_temporary_request', 'formaction' => 'store_request_quotation_temporarily', 'class' => 'btn btn-default btn-rounded waves-effect waves-light m-r-10']) }} -
    -
    - - {{ Form::button(__('stores.complete_request'), ['type' => 'submit', 'form' => 'quotation_form', 'id' => 'submit_button', 'formaction' => 'store_request_quotation', 'class' => 'btn btn-success waves-effect btn-rounded waves-light m-r-10']) }} -
    -
    - -
    - -
    -
    - - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush - -@push('styles') - -@endpush diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/resume_general_items_physical_stock_count.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/resume_general_items_physical_stock_count.blade.php deleted file mode 100755 index 713c2132..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/resume_general_items_physical_stock_count.blade.php +++ /dev/null @@ -1,218 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.resume_physical_stock_count') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -
    -
    -
    - {{ csrf_field() }} -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @foreach($stock_reconciliations as $reconciliation_record) - @php $general_item = \Streamline\Models\GeneralItem::find($reconciliation_record->general_item_id); @endphp - - - - - - - - - - - - - @endforeach - -
    {{ __('stores.general_item_name') }}{{ __('stores.system_stock') }}{{ __('stores.selling_price') }}{{ __('stores.stock_value') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.shrinkage') }}{{ __('stores.reason_for_difference') }}{{ __('stores.markup') }}
    {{ __('stores.general_item_name') }}{{ __('stores.system_stock') }}{{ __('stores.selling_price') }}{{ __('stores.stock_value') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.shrinkage') }}{{ __('stores.reason_for_difference') }}{{ __('stores.markup') }}
    - @if($general_item->insurance_coverage == 1) - {{ $general_item->name }} - @else - {{ $general_item->name }} - @endif - - -
    - {{ $general_item->store_stock }} - - -
    -
    -
    - {{ ugandan_shillings($general_item->non_insured_price) }} -
    -
    -
    - {{ ugandan_shillings($general_item->store_stock * $general_item->non_insured_price) }} -
    -
    -
    - {{ $reconciliation_record->physical_stock }} -
    - -
    - - - @php - $diff_in_cost = ($reconciliation_record->physical_stock - $reconciliation_record->system_stock) * $general_item->cost_price; - @endphp -
    - {{ $diff_in_cost }} -
    - -
    -
    - {{ $reconciliation_record->shrinkage }} -
    - -
    - - - @php - $selling_price = $general_item->non_insured_price; - $cost_price = $general_item->cost_price; - if($cost_price != 0){ - $markUp = (($selling_price-$cost_price)/$cost_price)*100; - $markUp = round($markUp); - } else { - $markUp = "N/A"; - } - @endphp - -
    -
    -
    - -
    -
    - - -

    - -
    - -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/resume_physical_stock_count.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/resume_physical_stock_count.blade.php deleted file mode 100755 index c248a319..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/resume_physical_stock_count.blade.php +++ /dev/null @@ -1,258 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.resume_physical_stock_count') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -
    -
    -
    - {{ csrf_field() }} -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - - - - - - - - {{----}} - - - - - - - - - - - - - - - - {{----}} - - - - - - - @foreach($stock_reconciliations as $reconciliation_record) - @php $drug = \Streamline\Models\Drug::find($reconciliation_record->drug_id); @endphp - - - - - - - - - - - - - - @endforeach - -
    {{ __('stores.item_name') }}{{ __('stores.system_stock') }}{{ __('stores.cost_price') }}{{ __('stores.stock_value') }}{{ __('stores.batch_details') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.shrinkage') }}{{ __('stores.reason_for_difference') }}{{ __('stores.selling_price') }}{{ __('stores.markup') }}
    {{ __('stores.item_name') }}{{ __('stores.system_stock') }}{{ __('stores.cost_price') }}{{ __('stores.stock_value') }}{{ __('stores.batch_details') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.shrinkage') }}{{ __('stores.reason_for_difference') }}{{ __('stores.selling_price') }}{{ __('stores.markup') }}
    - @if($drug->insurance_coverage == 1) - {{ $drug->name }} - @else - {{ $drug->name }} - @endif - - -
    - {{ $drug->store_stock }} - - -
    -
    -
    - {{ ugandan_shillings($drug->cost_price) }} -
    -
    -
    - {{ ugandan_shillings($drug->store_stock * $drug->non_insured_price) }} -
    -
    - @php - $quotation_records = get_all_batches_for_this_drug_with_balances($drug->id, $item_type = 1); - $temp_reconciliation_batch_details = get_batch_details_for_temporary_reconciliation($drug->id, $reconciliation_record->stock_count_identifier); - @endphp - - @if(count($temp_reconciliation_batch_details) > 0) - @foreach($temp_reconciliation_batch_details as $temp_record) -
    -
    - {{ Form::hidden('batch_quotation_id[]', $temp_record->batch_quotation_id) }} - {{ Form::hidden('batch_drug_id[]', $drug->id, ['class' => 'batch_id_class_'.$drug->id]) }} - - {{ Form::text('batch_number[]', $temp_record->batch_number, ['class' => 'form-control batch_number_'.$drug->id, 'readonly' => 'true']) }} -
    -
    - -
    -
    - @endforeach - @elseif(count($quotation_records) > 0) - @foreach($quotation_records as $record) -
    -
    - {{ Form::hidden('batch_quotation_id[]', $record->id) }} - {{ Form::hidden('batch_drug_id[]', $drug->id, ['class' => 'batch_id_class_'.$drug->id]) }} - - {{ Form::text('batch_number[]', $record->batch_number, ['class' => 'form-control batch_number_'.$drug->id, 'readonly' => 'true']) }} -
    -
    - -
    -
    - @endforeach - @endif -
    -
    - {{ $reconciliation_record->physical_stock }} -
    - -
    - - - @php - $diff_in_cost = ($reconciliation_record->physical_stock - $reconciliation_record->system_stock) * $drug->cost_price; - @endphp -
    - {{ $diff_in_cost }} -
    - -
    -
    - {{ $reconciliation_record->shrinkage }} -
    - -
    - - - @php - $selling_price = $drug->non_insured_price; - $cost_price = $drug->cost_price; - if($cost_price != 0){ - $markUp = (($selling_price-$cost_price)/$cost_price)*100; - $markUp = round($markUp); - } else { - $markUp = "N/A"; - } - @endphp - -
    -
    -
    - -
    -
    - - -

    - -
    - -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/resume_sundries_physical_stock_count.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/resume_sundries_physical_stock_count.blade.php deleted file mode 100755 index beebbda2..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/resume_sundries_physical_stock_count.blade.php +++ /dev/null @@ -1,218 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.resume_physical_stock_count') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -
    -
    -
    - {{ csrf_field() }} -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @foreach($stock_reconciliations as $reconciliation_record) - @php $sundry = \Streamline\Models\Sundry::withTrashed()->find($reconciliation_record->sundry_id); @endphp - - - - - - - - - - - - - @endforeach - -
    {{ __('stores.sundry_name') }}{{ __('stores.system_stock') }}{{ __('stores.selling_price') }}{{ __('stores.stock_value') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.shrinkage') }}{{ __('stores.reason_for_difference') }}{{ __('stores.markup') }}
    {{ __('stores.sundry_name') }}{{ __('stores.system_stock') }}{{ __('stores.selling_price') }}{{ __('stores.stock_value') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.shrinkage') }}{{ __('stores.reason_for_difference') }}{{ __('stores.markup') }}
    - @if($sundry->insurance == 1) - {{ $sundry->name }} - @else - {{ $sundry->name }} - @endif - - -
    - {{ $sundry->store_stock }} - - -
    -
    -
    - {{ ugandan_shillings($sundry->non_insured_price) }} -
    -
    -
    - {{ ugandan_shillings($sundry->store_stock * $sundry->non_insured_price) }} -
    -
    -
    - {{ $reconciliation_record->physical_stock }} -
    - -
    - - - @php - $diff_in_cost = ($reconciliation_record->physical_stock - $reconciliation_record->system_stock) * $sundry->cost_price; - @endphp -
    - {{ $diff_in_cost }} -
    - -
    -
    - {{ $reconciliation_record->shrinkage }} -
    - -
    - - - @php - $selling_price = $sundry->non_insured_price; - $cost_price = $sundry->cost_price; - if($cost_price != 0){ - $markUp = (($selling_price-$cost_price)/$cost_price)*100; - $markUp = round($markUp); - } else { - $markUp = "N/A"; - } - @endphp - -
    -
    -
    - -
    -
    - - -

    - -
    - -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/select_quotation.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/select_quotation.blade.php deleted file mode 100755 index d8874c54..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/select_quotation.blade.php +++ /dev/null @@ -1,79 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.request_a_quotation_camel_case') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    -
    - {{ Form::open(['method' => 'post', 'route'=>'stores.request_quotation'])}} - - {{ Form::label('quotation_type', __('stores.quotation_type')) }} - {{ Form::select('quotation_type', $quotation_type_options , null, ['class'=>'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::button(__('stores.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} -
    - - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/select_quotation_to_approve.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/select_quotation_to_approve.blade.php deleted file mode 100755 index f6d7de9b..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/select_quotation_to_approve.blade.php +++ /dev/null @@ -1,153 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.approve') }} {{ get_name($item_type, "id", "name", "quotation_types") }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    -
    - {{ Form::open(['method' => 'post', 'route'=>'stores.select_quotation_to_approve'])}} - - {{ Form::label('quotation_type', 'Quotation type') }} - {{ Form::select('quotation_type', $quotation_type_options , null, ['class'=>'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::button('Search',['type'=>'submit','class'=>'btn btn-rounded btn-success waves-effect waves-light m-r-10']) }} -
    - - {{ Form::close() }} - -
    -
    - - - - - - - - - - - - - - - @if($results && $results != 0) - @foreach($results as $result) - - - - - - - - - - - @endforeach - @else - - - - @endif - -
    {{ __('stores.quotation_no') }}{{ __('stores.quantity') }}{{ __('stores.supplier') }}{{ __('stores.bill') }}{{ __('stores.date_created') }}{{ __('stores.expected_date') }}{{ __('stores.memo') }}
    # {{ sprintf('%04u', $result->quotation_number) }} - quotation_number; - $results_to_count = DB::select("select drug_id from $table_quotations where Quotation_Number = {$quotation_number}"); - ?> - {{ count($results_to_count) }} {{ __('stores.items') }} - - {{ $result->supplier_name }} - - {{ ugandan_shillings_with_decimals($result->total_bill) }} - - {{ streamline_date(get_name($result->quotation_number, "quotation_number", "quotation_date", $table_quotations)) }} - - {{ streamline_date(get_name($result->quotation_number, "quotation_number", "expected_date", $table_quotations)) }} - - @php - $memo = get_name($result->quotation_number, "quotation_number", "memo", $table_quotations); - @endphp - {!! read_more($memo, 'short_debits' . $result->quotation_number, 'long_debits' . $result->quotation_number) !!} - - -
    - {{ csrf_field() }} - - - - @if(Auth::user()->can('delete-items-quotation')) - - @endif -
    -
    {{ __('stores.no_records') }}
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/select_receive_items_option.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/select_receive_items_option.blade.php deleted file mode 100755 index baff0e7b..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/select_receive_items_option.blade.php +++ /dev/null @@ -1,213 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.receive_items_options') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    - - - - - -
    -
    -@endsection - -@push('scripts') - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/select_temporary_quotation.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/select_temporary_quotation.blade.php deleted file mode 100755 index cc744089..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/select_temporary_quotation.blade.php +++ /dev/null @@ -1,79 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.request_a_temporary_quotation') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    -
    - {{ Form::open(['method' => 'post', 'route'=>'stores.request_temporary_quotation'])}} - - {{ Form::label('quotation_type', __('stores.quotation_type')) }} - {{ Form::select('quotation_type', $quotation_type_options , null, ['class'=>'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::button(__('stores.submit'),['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} -
    - - {{ Form::close() }} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/stock_reconciliation_report.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/stock_reconciliation_report.blade.php deleted file mode 100755 index 1659e88a..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/stock_reconciliation_report.blade.php +++ /dev/null @@ -1,221 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('stores.stock_reconciliation_report') }}

    -
    -
    - -
    -
    - -
    - -
    -
    - -
    - - - {{ Form::open(['method'=>'post','route' => 'stores.stock_reconciliation_report']) }} - -
    -

    {{ __('stores.select_a_date_or_a_date_range') }}

    -
    - -
    - -
    - - - - -
    - {{ Form::submit(__('stores.submit'), ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    - - - -
    -
    -
    -
    -
    -
    - - - - - - - - - - @php - $counter = 0; - @endphp - - - @if(count($reconciled_stocks) > 0) - @foreach($reconciled_stocks as $record) - - - - - - - - - @php - $counter++; - @endphp - @endforeach - @endif - -
    {{ __('stores.date') }}{{ __('stores.staff_in_charge') }}{{ __('stores.reconciliation_id') }}{{ __('stores.general_comment') }}{{ __('stores.action') }}
    {{ streamline_date($record->created_at) }}{{ get_full_name($record->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ sprintf("%04u", $record->stock_count_identifier) }}{{ $record->general_comment }} - {{ Form::open(['method'=>'post','route' => 'stores.stock_reconciliation_report_details']) }} - {{ Form::hidden('stock_count_identifier', $record->stock_count_identifier) }} - {{ Form::submit('Details', ['class'=>'btn btn-success']) }} - {{ Form::close() }} -
    -
    -
    -
    -
    -
    - -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/stock_reconciliation_report_details.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/stock_reconciliation_report_details.blade.php deleted file mode 100755 index ea18fcb4..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/stock_reconciliation_report_details.blade.php +++ /dev/null @@ -1,131 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.stock_reconciliation_report_details') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -
    -
    -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - @foreach($drugs_reconciled as $reconciliation_record) - @php - $drug_name = get_name($reconciliation_record->drug_id, "id", "name", "drugs"); - $insurance_coverage = get_name($reconciliation_record->drug_id, "id", "insurance_coverage", "drugs"); - @endphp - - - - - - - - - - @endforeach - -
    {{ __('stores.item_name') }}{{ __('stores.system_stock') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.reason_for_difference') }}{{ __('stores.reconciled_by') }}{{ __('stores.performed_on') }}
    {{ __('stores.item_name') }}{{ __('stores.system_stock') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.reason_for_difference') }}{{ __('stores.reconciled_by') }}{{ __('stores.performed_on') }}
    - @if($insurance_coverage == 1) - {{ $drug_name }} - @else - {{ $drug_name }} - @endif - -
    - {{ $reconciliation_record->system_stock }} -
    -
    -
    - {{ $reconciliation_record->physical_stock }} -
    -
    -
    - {{ $reconciliation_record->difference }} -
    -
    -
    - {{ $reconciliation_record->reason_for_difference }} -
    -
    -
    - {{ get_full_name($reconciliation_record->created_by, 'id', 'first_name', 'last_name', 'users') }} -
    -
    -
    - {{ streamline_date($reconciliation_record->created_at) }} -
    -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/stock_sheet.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/stock_sheet.blade.php deleted file mode 100755 index 5bef1632..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/stock_sheet.blade.php +++ /dev/null @@ -1,239 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.stores_stock_sheet') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') - - @php - $total_cost_value = 0; - $total_sale_value = 0; - @endphp -
    -
    -
    - {{ csrf_field() }} -
    -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @foreach($drugs as $drug) - - @php - $quotation_records = get_all_batches_for_this_drug_with_balances($drug->id, $item_type = 1); - $details_of_batch_in_use = details_of_batch_currently_in_use($drug->id); - - $batch_records = \Streamline\Models\ItemBatchWatcher::where(['item_type' => 1, 'item_id' => $drug->id])->where('store_stock', '!=', 0)->get(); - @endphp - - @php - $drug_store_stock = 0; - $item_cost_value = 0; - @endphp - - - - - - - - - - - - - - - - - - - - @php - $total_cost_value += $item_cost_value; - @endphp - @endforeach - - - - - - - - - - - - - -
    {{ __('stores.item_name') }}{{ __('stores.batch_details') }}{{ __('stores.store_stock') }}{{ __('stores.cost_value') }}{{ __('stores.chi_price') }}{{ __('stores.cash_price') }}{{ __('stores.sale_value') }}{{ __('stores.income_account') }}{{ __('stores.cog_account') }}
    {{ __('stores.item_name') }}{{ __('stores.batch_details') }}{{ __('stores.store_stock') }}{{ __('stores.cost_value') }}{{ __('stores.chi_price') }}{{ __('stores.cash_price') }}{{ __('stores.sale_value') }}{{ __('stores.income_account') }}{{ __('stores.cog_account') }}
    - @if($drug->insurance_coverage == 1) - {{ $drug->name }} - @else - {{ $drug->name }} - @endif - - @if(count($batch_records) > 0) - @foreach($batch_records as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->store_stock }}
    - @php - $drug_store_stock += $record->store_stock; - @endphp - {{ __('stores.expiry_date') }}: {{ $record->expiry_date }} -
    -
    - {{ __('stores.unit_cost') }}: {{ $record->cost_price }} -
    -
    - - @php - $item_cost_value += $record->cost_price * $record->store_stock; - @endphp - @endforeach - @endif -
    -
    - {{ $drug_store_stock }} -
    - -
    - {{ ugandan_shillings($item_cost_value) }} - -
    - {{ $drug->insured_price }} -
    - -
    -
    - {{ $drug->non_insured_price }} -
    - -
    - {{ ugandan_shillings($drug->non_insured_price * $drug_store_stock) }} - @php $total_sale_value += $drug->non_insured_price * $drug_store_stock; @endphp - - {{ get_name($drug->account_id, "id", "name", "chart_of_accounts") }} - - {{ get_name($drug->cost_of_goods_account, "id", "name", "chart_of_accounts") }} -
    {{ __('stores.total_stock_value') }}{{ ugandan_shillings($total_cost_value) }}{{ ugandan_shillings($total_sale_value) }}
    -
    -
    - -
    -
    - - - -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/sundries_physical_stock_count.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/sundries_physical_stock_count.blade.php deleted file mode 100755 index c4c5b614..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/sundries_physical_stock_count.blade.php +++ /dev/null @@ -1,669 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.sundries_stock_reconciliation') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') - -
    - {{ Form::open(['route' => 'stores.sundries_physical_stock_count_search', 'method' => 'ANY', 'role' => 'search']) }} -
    -
    -
    - {{ Form::select('search_items_ids[]',$sundries_dropdown,'',['id'=>'sundries_ids', 'multiple'=>true, 'class' => 'form-control col-sm-8 sundries_ids']) }} -
    -
    - -
    - -
    - -
    -
    - - - - {{ __('stores.note') }}: {{ __('stores.if_not_going_to_reconcile_all_the_first_filter') }}.
    -
    -
    -
    -
    - - @if(isset($criteria) && isset($resultCount)) -

    - {{ __('stores.search_criteria') }} {{ $criteria }}    {{ __('stores.total_results') }} {{ $resultCount }}    {{ __('stores.clear_search') }} -

    - @endif - {{ Form::close() }} -
    -
    - -
    -
    -
    -
    - - -
    - {{ csrf_field() }} -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - - - - @if(track_items_using_batches()) - - @endif - - - - - - - - - - - - - - - - @if(track_items_using_batches()) - - @endif - - - - - - - - - - - - - - - - - - - - - @if(track_items_using_batches()) - - @endif - - - - @foreach($sundries as $sundry) - @php - $sundry_store_stock = 0; - $item_cost_value = 0; - $batch_records = \Streamline\Models\ItemBatchWatcher::where(['item_type' => 2, 'item_id' => $sundry->id])->where('store_stock', '!=', 0)->get(); - - if(count($batch_records) > 0){ - foreach($batch_records as $record){ - $sundry_store_stock += $record->store_stock; - $item_cost_value += $record->cost_price * $record->store_stock; - } - } - @endphp - - - - - - @if(track_items_using_batches()) - - @endif - - - - {{-- --}} - - - - - - @endforeach - -
    {{ __('stores.sundry_name') }}{{ __('stores.system_stock') }}{{ __('stores.cost_price') }}{{ __('stores.stock_value') }}{{ __('stores.batch_details_and_others') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.reason_for_difference') }}{{ __('stores.selling_price') }}{{ __('stores.markup') }}
    {{ __('stores.sundry_name') }}{{ __('stores.system_stock') }}{{ __('stores.cost_price') }}{{ __('stores.stock_value') }}{{ __('stores.batch_details_and_others') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.variance_in_stock') }}{{ __('stores.reason_for_difference') }}{{ __('stores.selling_price') }}{{ __('stores.markup') }}
    - @if($sundry->insurance == 1) - {{ $sundry->name }} - @else - {{ $sundry->name }} - @endif - -
    - {{ $sundry_store_stock }} - - -
    -
    -
    - {{ ugandan_shillings($sundry->cost_price) }} -
    - -
    -
    - {{ ugandan_shillings($item_cost_value) }} -
    -
    - @php - $quotation_records = get_all_batches_for_this_drug_with_balances($sundry->id, $item_type = 2); - - $batch_records = \Streamline\Models\ItemBatchWatcher::where(['item_type' => 2, 'item_id' => $sundry->id])->where('store_stock', '!=', 0)->get(); - @endphp - - @if(count($batch_records) > 0) - @foreach($batch_records as $record) - {{--
    -
    - {{ Form::hidden('batch_quotation_id[]', $record->id) }} - {{ Form::hidden('batch_sundry_id[]', $sundry->id, ['class' => 'batch_id_class_'.$sundry->id]) }} - -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    - -
    -
    -
    - {{ __('stores.quantity') }}:{{ $record->batch_balance }} - @if(Auth::user()->can('remove-batch-during-stock-reconciliation')) - - @php - $batch_no = $record->batch_number; - $sundry_id = $record->id; - @endphp - Remove batch - - @endif - @if(Auth::user()->can('edit-batch-during-stock-reconciliation')) - - @php - $batch_no = $record->batch_number; - $sundry_id = $sundry->id; - @endphp - {{ __('stores.edit_batch') }} - - @endif -
    - -
    -
    - -
    -
    --}} -
    -
    - {{ Form::hidden('batch_db_record_id[]', $record->id, ['class' => 'batch_record_id_class_'.$record->id]) }} - {{ Form::hidden('batch_quotation_id[]', $record->id) }} - {{ Form::hidden('batch_sundry_id[]', $sundry->id, ['class' => 'batch_id_class_'.$sundry->id]) }} - -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    - -
    -
    - {{ __('stores.unit_cost') }}: {{ $record->cost_price }} -
    - -
    -
    - {{ __('stores.quantity') }}:{{ $record->store_stock }} - @if(Auth::user()->can('remove-batch-during-stock-reconciliation')) - - @php - $batch_no = $record->batch_number; - $sundry_id = $record->id; - @endphp - Remove batch - - @endif - @if(Auth::user()->can('edit-batch-during-stock-reconciliation')) - - @php - $batch_no = $record->batch_number; - $sundry_id = $sundry->id; - @endphp - {{ __('stores.edit_batch') }} - - @endif -
    -
    - -
    - -
    -
    - @endforeach - @else -
    -
    - {{ Form::hidden('batch_db_record_id[]', 0, ['class' => 'batch_record_id_class_'.$sundry->id]) }} - {{ Form::hidden('batch_quotation_id[]', 0) }} - {{ Form::hidden('batch_sundry_id[]', $sundry->id) }} - -
    - -
    - -
    -
    -
    -
    -
    - -
    - -
    -
    - -
    -
    - @endif -
    -
    - {{ $sundry->store_stock }} -
    - -
    - - -
    -
    - -
    -
    -
    - -
    - - -
    - {{ ugandan_shillings($sundry->non_insured_price) }} -
    -
    - @php - $selling_price = $sundry->non_insured_price; - $cost_price = $sundry->cost_price; - $mark_up = $selling_price-$cost_price; - @endphp - {{ $mark_up }} - -
    -
    - @if (count($sundries) > 0) -
    -

    -
    -
    - - -
    -
    -
    -
    - {{ Form::label('account_id', __('stores.general_comment')) }} -
    -
    - {{--
    - {{ Form::select('account_id', $chart_of_accounts, null, ['class' => 'form-control', 'id' => 'account_id']) }} -
    -
    --}} -
    - {{ Form::textarea('general_comment','',['class' => 'form-control', 'placeholder' => __('stores.add_general_comment'), 'rows' => 4]) }} -
    -
    -
    -
    - - - {{ __('pharmacy.note') }}: - {{ __('pharmacy.stock_differences_are_reflected_in') }} {{ $stock_adjustment_chart_of_account->name }} {{ __('pharmacy.if_it_is_not_opening_stock') }}. {!! __('pharmacy.if_it_is_the_opening_stock_then_the_affected_account') !!} - -
    -
    -
    - @endif -
    - -
    - @if (count($sundries) > 0) -
    - - - - -
    - @endif - -
    -
    -
    -
    -
    - - -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/sundries_stock_reconciliation_report.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/sundries_stock_reconciliation_report.blade.php deleted file mode 100755 index 7f094a2f..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/sundries_stock_reconciliation_report.blade.php +++ /dev/null @@ -1,188 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __($title) }}

    -
    - -
    - -
    - -
    -
    - -
    - - - {{ Form::open(['method'=>'post','route' => "$route_filter"]) }} - -
    -

    {{ __('stores.select_a_date_or_a_date_range') }}

    -
    - -
    - -
    - - - - -
    - {{ Form::submit(__('stores.submit'), ['class'=>'btn btn-success pull-right']) }} -
    - {{ Form::close() }} -
    -
    -
    - - - -
    -
    -
    -
    -
    -
    - - - - - - - - - - - - - @forelse($reconciled_stocks as $record) - - - - - - - - @empty - - - - @endforelse - - -
    {{ __('stores.date') }}{{ __('stores.staff_in_charge') }}{{ __('stores.reconciliation_id') }}{{ __('stores.general_comment') }}{{ __('stores.action') }}
    {{ streamline_date($record->reconciliation_date) }}{{ get_full_name($record->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ sprintf("%04u", $record->stock_count_identifier) }}{{ $record->general_comment }} - {{ Form::open(['method'=>'post','route' => "$route"]) }} - {{ Form::hidden('stock_count_identifier', $record->stock_count_identifier) }} - {{ Form::submit('Details', ['class'=>'btn btn-success']) }} - {{ Form::close() }} -
    No details Found
    -
    -
    -
    -
    -
    - -
    - -@endsection - -@push('scripts') - - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/sundries_stock_reconciliation_report_details.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/sundries_stock_reconciliation_report_details.blade.php deleted file mode 100755 index fee8959a..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/sundries_stock_reconciliation_report_details.blade.php +++ /dev/null @@ -1,133 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.sundries_stock_reconciliation_report_details') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -
    -
    -

    {{ __('stores.sundries_stock_reconciliation_report') }} {{ __('stores.reconciliation_id') }} {{ sprintf("%04u", $sundries_reconciled[0]->stock_count_identifier) }}

    - -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - @foreach($sundries_reconciled as $reconciliation_record) - @php - $sundry_name = get_name($reconciliation_record->sundry_id, "id", "name", "sundries"); - $insurance_coverage = get_name($reconciliation_record->sundry_id, "id", "insurance", "sundries"); - @endphp - - - - - - - - - - @endforeach - -
    {{ __('stores.sundry_name') }}{{ __('stores.system_stock') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.reason_for_difference') }}{{ __('stores.reconciled_by') }}{{ __('stores.performed_on') }}
    {{ __('stores.sundry_name') }}{{ __('stores.system_stock') }}{{ __('stores.physical_stock') }}{{ __('stores.difference') }}{{ __('stores.reason_for_difference') }}{{ __('stores.reconciled_by') }}{{ __('stores.performed_on') }}
    - @if($insurance_coverage == 1) - {{ $sundry_name }} - @else - {{ $sundry_name }} - @endif - -
    - {{ $reconciliation_record->system_stock }} -
    -
    -
    - {{ $reconciliation_record->physical_stock }} -
    -
    -
    - {{ $reconciliation_record->difference }} -
    -
    -
    - {{ $reconciliation_record->reason_for_difference }} -
    -
    -
    - {{ get_full_name($reconciliation_record->created_by, 'id', 'first_name', 'last_name', 'users') }} -
    -
    -
    - {{ streamline_date($reconciliation_record->created_at) }} -
    -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/sundries_stock_sheet.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/sundries_stock_sheet.blade.php deleted file mode 100755 index 103d7a88..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/sundries_stock_sheet.blade.php +++ /dev/null @@ -1,198 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.store_sundries_stock_sheet') }}

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -
    -
    -
    - {{ csrf_field() }} -

    {{ __('stores.export_data_to_csv_excel_pdf') }}

    -
    - - - - - - - - - - - - - - @php $total_cost_value = 0; @endphp - @foreach($sundries as $sundry) - @php - $sundry_store_stock = 0; - $batch_records = \Streamline\Models\ItemBatchWatcher::where(['item_type' => 2, 'item_id' => $sundry->id])->where('store_stock', '!=', 0)->get(); - - if(count($batch_records) > 0){ - foreach($batch_records as $record){ - $sundry_store_stock += $record->store_stock; - } - } - @endphp - - - - - - - - - - @endforeach - - - - - - - - - - - - - - - - - - - - - -
    {{ __('stores.item_name') }}{{ __('stores.store_stock') }}{{ __('stores.cost_value') }}{{ __('stores.cash_price') }}{{ __('stores.expiry_date') }}{{ __('stores.income_account') }}{{ __('stores.cog_account') }}
    - @if($sundry->insurance == 1) - {{ $sundry->name }} - @else - {{ $sundry->name }} - @endif - - @php $item_store_stock = $item_cost_value = 0; @endphp - @if(count($batch_records) > 0) - @foreach($batch_records as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->store_stock }}
    - @php - $item_store_stock += $record->store_stock; - @endphp - {{ __('stores.expiry_date') }}: {{ $record->expiry_date }} -
    -
    - {{ __('stores.unit_cost') }}: {{ $record->cost_price }} -
    -
    - - @php - $item_cost_value += $record->cost_price * $record->store_stock; - @endphp - @endforeach - @endif -
    - {{ $sundry_store_stock }} -
    - - -
    - {{ ugandan_shillings($item_cost_value) }} - @php $total_cost_value += $item_cost_value; @endphp - - {{ $sundry->non_insured_price}} - -
    - {{ streamline_date($sundry->expiry_date) }} -
    - {{-- --}} -
    - {{ get_name($sundry->account_id, "id", "name", "chart_of_accounts") }} - - {{ get_name($sundry->cost_of_goods_account, "id", "name", "chart_of_accounts") }} -
    {{ ugandan_shillings_with_decimals($total_cost_value) }}
    {{ __('stores.item_name') }}{{ __('stores.store_stock') }}{{ __('stores.cost_value') }}{{ __('stores.cash_price') }}{{ __('stores.expiry_date') }}{{ __('stores.income_account') }}{{ __('stores.cog_account') }}
    -
    -
    - - {{--
    -
    - - - -
    - -
    --}} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/view_opd_requisitioned_items.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/view_opd_requisitioned_items.blade.php deleted file mode 100755 index c7a15e88..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/view_opd_requisitioned_items.blade.php +++ /dev/null @@ -1,265 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.requisitioned_items') }}

    -
    -
    - -
    -
    - - @include('flash::message') - -
    -
    -
    -
    -

    {{ __('stores.view_a_list_of_requisitioned_items') }}

    -
    -
    - @csrf - - - - - - - - - - - @if(track_items_using_batches()) - - @endif - - - - - - - - - -
    {{ __('stores.date') }}
    - {{ streamline_date($requisition->created_at) }} - - - - - - - - @foreach ($associative_requested_drugs_array as $drug_name_requested => $quantity_requested) - @php - $item_store_stock=0; - if ($requisition->quotation_type_id == 1) { - $drug_id = get_name($drug_name_requested, "name", "id", "drugs"); - $store_batch_records= track_batch_stock($requisition->quotation_type_id,$drug_id,'store_stock'); - // $store_stock = get_name($drug_id, "id", "store_stock", "drugs"); - } else if ($requisition->quotation_type_id == 2) { - $drug_id = get_name($drug_name_requested, "name", "id", "sundries"); - $store_batch_records= track_batch_stock($requisition->quotation_type_id,$drug_id,'store_stock'); - // $store_stock = get_name($drug_id, "id", "store_stock", "sundries"); - } else if ($requisition->quotation_type_id == 3) { - $drug_id = get_name($drug_name_requested, "name", "id", "drugs"); - $store_batch_records= track_batch_stock($requisition->quotation_type_id,$drug_id,'store_stock'); - // $store_stock = get_name($drug_id, "id", "store_stock", "drugs"); - } else if ($requisition->quotation_type_id == 4) { - $drug_id = get_name($drug_name_requested, "name", "id", "drugs"); - $store_batch_records= track_batch_stock($requisition->quotation_type_id,$drug_id,'store_stock'); - // $store_stock = get_name($drug_id, "id", "store_stock", "drugs"); - } else if ($requisition->quotation_type_id == 5) { - $drug_id = get_name($drug_name_requested, "name", "id", "labs"); - $store_batch_records= track_batch_stock($requisition->quotation_type_id,$drug_id,'store_stock'); - // $store_stock = get_name($drug_id, "id", "store_stock", "labs"); - } else if ($requisition->quotation_type_id == 6) { - $drug_id = get_name($drug_name_requested, "name", "id", "general_items"); - $store_stock = get_name($drug_id, "id", "store_stock", "general_items"); - } - @endphp - - - - - - @endforeach -
    {{ __('stores.item_name') }}{{ __('stores.quantity_requested') }}{{ __('stores.store_stock') }}
    - {{ $drug_name_requested }} - - - - @forelse($store_batch_records as $record) -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $record->store_stock }}
    - @php - $item_store_stock += $record->store_stock; - @endphp - {{ __('stores.expiry_date') }}: {{ $record->expiry_date }} -
    -
    - - @empty - @endforelse - Total Stock: {{ $item_store_stock }} - {{ Form::hidden('drug_name[]', $drug_name_requested, ['id' => 'drug_name' . $drug_id]) }} - {{ Form::number('store_stock[]', $item_store_stock, ['class' => 'form-control drugs_to_issue_out', 'readonly', 'id' => 'store_stock' . $drug_id]) }} -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush - - - - diff --git a/docker/statistics/Modules/Stores/Resources/views/stores/view_temporary_quotations.blade.php b/docker/statistics/Modules/Stores/Resources/views/stores/view_temporary_quotations.blade.php deleted file mode 100755 index 5c1c25fb..00000000 --- a/docker/statistics/Modules/Stores/Resources/views/stores/view_temporary_quotations.blade.php +++ /dev/null @@ -1,119 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('stores.temporary') }} {{ get_name($quotation_type, 'id' , 'name' , 'quotation_types') }} {{ __('stores.quotations') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - @if(!is_null($results)) - @foreach($results as $result) - @php - $quantity_explode = explode(",", $result->quantity); - $drugs_explode = explode(",", $result->drug_id); - @endphp - - - - - - - - - @endforeach - @else - - @endif - -
    {{ __('stores.quotation_number') }}{{ __('stores.quantity') }}{{ __('stores.date_started') }}{{ __('stores.supplier') }}{{ __('stores.saved_by') }}
    {{ __('stores.quotation_number') }}{{ __('stores.quantity') }}{{ __('stores.date_started') }}{{ __('stores.supplier') }}{{ __('stores.saved_by') }}
    # {{ sprintf('%04u', $result->id) }}{{ count(array_filter($drugs_explode)) }}{{ streamline_date($result->created_at) }}{{ get_name($result->supplier_id, 'id', 'name', 'suppliers') }}{{ get_full_name($result->created_by, "id", "first_name", "last_name", "users") }} -
    - {{ csrf_field() }} - - - -
    -
    {{ __('stores.no_records') }}
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Routes/api.php b/docker/statistics/Modules/Stores/Routes/api.php deleted file mode 100644 index 6c65149c..00000000 --- a/docker/statistics/Modules/Stores/Routes/api.php +++ /dev/null @@ -1,18 +0,0 @@ -get('/stores', function () { - return "Stores"; -}); diff --git a/docker/statistics/Modules/Stores/Routes/web.php b/docker/statistics/Modules/Stores/Routes/web.php deleted file mode 100644 index 09386d29..00000000 --- a/docker/statistics/Modules/Stores/Routes/web.php +++ /dev/null @@ -1,174 +0,0 @@ - ['auth', 'disablebackbutton', 'user-locale','subscription-tracking', 'password-expiry']], function () { - /* lab requisition for sundries */ - Route::any('lab_sundries_requisition', 'StoresController@lab_requisition_for_sundries')->name('stores.lab_sundries'); - Route::any('store_lab_sundries_requisition', 'StoresController@store_lab_requisition_for_sundries')->name('stores.store_sundries_requisition'); - Route::any('lab_sundries_stock_sheet', 'StoresController@lab_sundries_stock_sheet')->name('stores.lab_sundries_stock_sheet'); - /* radiology requisition for sundries */ - Route::any('imaging_sundries_requisition', 'StoresController@radiology_requisition_for_sundries')->name('stores.radiology_sundries'); - Route::post('store_radiology_sundries_requisition', 'StoresController@store_radiology_requisition_for_sundries')->name('stores.store_radiology_requisition'); - Route::any('imaging_sundries_stock_sheet', 'StoresController@radiology_sundries_stock_sheet')->name('stores.radiology_sundries_stock_sheet'); - - Route::any('check_item_batch_balance', 'StoresController@check_batch_balance'); - - Route::any('edit_temporary_quotation_search', 'StoresController@edit_temporary_quotation_search')->name('stores.edit_temporary_quotation_search'); - Route::any('remove_item_batch', 'StoresController@remove_item_batch'); - Route::any('approve_requisitioned_opd_items', 'StoresController@approve_requisitioned_opd_items')->name('stores.approve_requisitioned_opd_items'); - Route::any('approve_opd_requisition', 'StoresController@approve_requisition')->name('stores.approve_requisition'); - Route::get('viewing_items_to_issue_out/{id}', 'StoresController@viewing_items_to_issue_out'); - - Route::any('editing_item_batch_number', 'StoresController@edit_item_batch'); - Route::any('physical_stock_count_search', 'StoresController@physical_stock_count_search')->name('stores.physical_stock_count_search'); - Route::any('sundries_physical_stock_count_search', 'StoresController@sundries_physical_stock_count_search')->name('stores.sundries_physical_stock_count_search'); - Route::any('general_items_physical_stock_count_search', 'StoresController@general_items_physical_stock_count_search')->name('stores.general_items_physical_stock_count_search'); - - Route::get('items_purchase_order_print/{quotation_number}/{item_type}', 'StoresController@items_purchase_order_print'); - Route::get('item_bill_print/{quotation_number}/{item_type}', 'StoresController@item_bill_print'); - Route::get('issued_out_items_print/{requisition_id}', 'StoresController@issued_out_items_print'); - Route::any('issued_item_print/{requisition_id}/{item_type}', 'StoresController@issued_item_print'); - Route::any('print_previous_issued_items_details/{requisition_id}/{item_type}', 'StoresController@print_previous_issued_items_details')->name('stores.print_previous_issued_items_details'); - - Route::any('update_labs_stock_sheet', 'StoresController@update_labs_stock_sheet'); - Route::any('get_item_cost_price', 'StoresController@get_item_cost_price'); - - /* Stores Controller */ - Route::any('/stores/daily_stock_value_report', 'StoresController@daily_stock_value_report')->name('stores.daily_stock_value_report'); - Route::any('select_quotation_type', 'StoresController@select_quotation_type')->name('stores.select_quotation'); - Route::any('request_quotation', 'StoresController@request_a_quotation')->name('stores.request_quotation'); - Route::get('save_new_supplier', 'StoresController@save_new_supplier'); - Route::post('store_request_quotation_temporarily', 'StoresController@store_request_quotation_temporarily'); - Route::post('store_request_quotation', 'StoresController@store_request_quotation'); - Route::any('select_temporary_quotation_type', 'StoresController@select_temporary_quotation'); - Route::post('temporary_quotation', 'StoresController@temporary_quotations')->name('stores.request_temporary_quotation'); - Route::post('edit_temporary_quotations', 'StoresController@edit_temporary_quotations'); - Route::get('items_purchase_order', 'StoresController@items_purchase_order'); - Route::any('quotation_to_bill', 'StoresController@quotation_to_bill')->name('stores.quotation_to_bill'); - Route::any('bill_items', 'StoresController@bill_items')->name('stores.bill_items'); - Route::any('store_drug_bill', 'StoresController@store_drug_bill'); - Route::any('select_quotation_to_approve', 'StoresController@select_quotation_to_approve')->name('stores.select_quotation_to_approve'); - Route::any('approve_or_delete_quotation', 'StoresController@approve_or_delete_quotation'); - Route::any('store_approved_purchase', 'StoresController@store_approved_purchase'); - Route::any('receive_items', 'StoresController@receive_items')->name('stores.receive_items'); - Route::any('confirm_item_receipt', 'StoresController@confirm_item_receipt'); - Route::any('store_received_items', 'StoresController@store_received_items'); - Route::any('select_receive_items_option', 'StoresController@select_receive_items_option')->name('stores.select_receive_items_option'); - Route::any('receive_items_directly', 'StoresController@receive_items_directly')->name('stores.receive_items_directly'); - Route::any('store_received_items_directly', 'StoresController@store_received_items_directly')->name('stores.store_received_items_directly'); - Route::any('receive_items_directly_search', 'StoresController@receive_items_directly_search')->name('stores.receive_items_directly_search'); - Route::any('stores_stock_sheet', 'StoresController@stock_sheet')->name('stores.stores_stock_sheet'); - Route::any('update_stock_sheet', 'StoresController@update_stock_sheet'); - Route::get('issue_store_items', 'StoresController@issue_store_items')->name('stores.issue_store_items'); - Route::any('previously_received_items', 'StoresController@previously_received_items')->name('stores.previously_received_items'); - Route::post('previous_received_items_details', 'StoresController@previous_received_items_details'); - Route::any('previously_issued_items', 'StoresController@previously_issued_items')->name('stores.previously_issued_items'); - Route::any('previous_quotations', 'StoresController@previous_quotations')->name('stores.previous_quotations'); - Route::post('edit_previous_quotation', 'StoresController@edit_previous_quotation'); - Route::post('update_previous_quotation', 'StoresController@update_previous_quotation')->name('stores.update_previous_quotation'); - Route::any('previous_purchase_orders', 'StoresController@previous_purchase_orders')->name('stores.previous_purchase_orders'); - Route::any('previous_order_history', 'StoresController@previous_order_history')->name('stores.previous_order_history'); - Route::any('issued_items_history', 'StoresController@issued_items_history')->name('stores.issued_items_history'); - Route::any('print_drug_bill', 'StoresController@print_drug_bill'); - Route::post('issue_out_drugs_form', 'StoresController@issue_out_drugs_form')->name('stores.issue_out_drugs_form'); - Route::post('issue_out_drugs', 'StoresController@issue_out_drugs')->name('stores.issue_out_drugs'); - Route::any('delete_received_items/{quotation_number}', 'StoresController@delete_received_items'); - Route::any('optical_items_stock_sheet', 'StoresController@optical_items_stock_sheet')->name('stores.optical_items_stock_sheet'); - Route::resource('stores', 'StoresController'); - - Route::any('previous_issued_items_details', 'StoresController@previous_issued_items_details')->name('stores.previous_issued_items_details'); - - /* Physical stock count */ - Route::any('physical_stock_count', 'StoresController@physical_stock_count')->name('stores.physical_stock_count'); - Route::any('update_physical_stock_count', 'StoresController@update_physical_stock_count'); - Route::any('general_items_update_physical_stock_count', 'StoresController@update_general_items_physical_stock_count')->name('general_items.update_physical_stock_count'); - - Route::any('resume_physical_stock_count', 'StoresController@resume_physical_stock_count')->name('stores.resume_physical_stock_count'); - Route::any('complete_resumed_physical_stock_count', 'StoresController@complete_resumed_physical_stock_count'); - Route::any('stock_reconciliation_report', 'StoresController@stock_reconciliation_report')->name('stores.stock_reconciliation_report'); - Route::any('stock_reconciliation_report_details', 'StoresController@stock_reconciliation_report_details')->name('stores.stock_reconciliation_report_details'); - - /* Physical stock count for sundries */ - Route::any('sundries_physical_stock_count', 'StoresController@sundries_physical_stock_count')->name('stores.sundries_physical_stock_count'); - Route::any('update_sundries_physical_stock_count', 'StoresController@update_sundries_physical_stock_count'); - Route::any('resume_sundries_physical_stock_count', 'StoresController@resume_sundries_physical_stock_count')->name('stores.resume_sundries_physical_stock_count'); - Route::any('complete_resumed_sundries_stock_count', 'StoresController@complete_resumed_sundries_stock_count'); - Route::any('sundries_stock_reconciliation_report', 'StoresController@sundries_stock_reconciliation_report')->name('stores.sundries_stock_reconciliation_report'); - Route::any('sundries_stock_reconciliation_report_details', 'StoresController@sundries_stock_reconciliation_report_details')->name('stores.sundries_stock_reconciliation_report_details'); - /* Physical stock count for Radiologies */ - Route::get('stores_radiologies_stock_reconciliation_report','StoresController@radiologies_stock_reconciliation_report'); - Route::post('stores_radiologies_stock_reconciliation_report','StoresController@radiologies_stock_reconciliation_report')->name('stores.radiologies_stock_reconciliation_report'); - Route::post('stores_radiologies_stock_reconciliation_report_details', 'StoresController@radiologies_stock_reconciliation_report_details')->name('stores.radiologies_stock_reconciliation_report_details'); - Route::get('radiologies_physical_stock_count', 'StoresController@radiologies_physical_stock_count')->name('stores.radiologies_physical_stock_count'); - Route::post('update_radiologies_physical_stock_count', 'StoresController@update_radiologies_physical_stock_count'); - Route::any('resume_radiologies_physical_stock_count', 'StoresController@resume_radiologies_physical_stock_count')->name('stores.resume_radiologies_physical_stock_count'); - Route::post('radiologies_physical_stock_count_search', 'StoresController@radiologies_physical_stock_count')->name('stores.radiologies_physical_stock_count_search'); - /* Phyical Stock count for lab items */ - Route::get('stores_labs_physical_stock_count', 'StoresController@labs_physical_stock_count')->name('stores.labs_physical_stock_count'); - Route::get('stores_labs_stock_reconciliation_report','StoresController@labs_stock_reconciliation_report'); - Route::post('stores_labs_stock_reconciliation_report','StoresController@labs_stock_reconciliation_report')->name('stores.labs_stock_reconciliation_report'); - Route::post('stores_labs_stock_reconciliation_report_details', 'StoresController@labs_stock_reconciliation_report_details')->name('stores.labs_stock_reconciliation_report_details'); - - Route::post('update_labs_physical_stock_count', 'StoresController@update_labs_physical_stock_count'); - Route::any('resume_labs_physical_stock_count', 'StoresController@resume_labs_physical_stock_count')->name('stores.resume_labs_physical_stock_count'); - Route::post('stores_labs_physical_stock_count_search', 'StoresController@labs_physical_stock_count')->name('stores.labs_physical_stock_count_search'); - /* Physical stock count for general items */ - Route::any('general_items_physical_stock_count', 'StoresController@general_items_physical_stock_count')->name('stores.general_items_physical_stock_count'); - Route::any('update_general_items_physical_stock_count', 'StoresController@update_general_items_physical_stock_count'); - Route::any('resume_general_items_physical_stock_count', 'StoresController@resume_general_items_physical_stock_count')->name('stores.resume_general_items_physical_stock_count'); - Route::any('complete_resumed_general_items_stock_count', 'StoresController@complete_resumed_general_items_stock_count'); - Route::any('general_items_stock_reconciliation_report', 'StoresController@general_items_stock_reconciliation_report')->name('stores.general_items_stock_reconciliation_report'); - Route::any('general_items_stock_reconciliation_report_details', 'StoresController@general_items_stock_reconciliation_report_details')->name('stores.general_items_stock_reconciliation_report_details'); - - Route::any('electronic_stock_card', 'StoresController@electronic_stock_card')->name('stores.electronic_stock_card'); - Route::post('electronic_stock_card_details', 'StoresController@electronic_stock_card_details')->name('stores.electronic_stock_card_details'); - Route::post('electronic_stock_card_details_print', 'StoresController@electronic_stock_card_details')->name('stores.electronic_stock_card_details_print'); - Route::post('electronic_stock_card_receive_items_drill_down', 'StoresController@electronic_stock_card_receive_items_drill_down')->name('stores.received_items_drill_down'); - Route::post('electronic_stock_card_issued_items_drill_down', 'StoresController@electronic_stock_card_issued_items_drill_down')->name('stores.issued_items_drill_down'); - Route::post('electronic_stock_card_adjustment_drill_down', 'StoresController@electronic_stock_card_adjustment_drill_down')->name('stores.adjustment_drill_down'); - /* Physical stock count for optical */ - Route::any('optical_physical_stock_count', 'StoresController@optical_physical_stock_count')->name('stores.optical_physical_stock_count'); - Route::any('update_optical_physical_stock_count', 'StoresController@update_optical_physical_stock_count'); - Route::any('optical_stock_reconciliation_report', 'StoresController@optical_stock_reconciliation_report')->name('stores.optical_stock_reconciliation_report'); - Route::any('optical_stock_reconciliation_report_details', 'StoresController@optical_stock_reconciliation_report_details')->name('stores.optical_stock_reconciliation_report_details'); - - /* stores monthly consumption */ - Route::any('average_monthly_consumption', 'StoresController@average_monthly_consumption')->name('stores.average_monthly_consumption'); - Route::any('average_monthly_consumption_details', 'StoresController@average_monthly_consumption_details')->name('stores.average_monthly_consumption_details'); - Route::any('average_consumption_per_month', 'StoresController@average_consumption_per_month')->name('stores.average_consumption_per_month'); - - /* Sundry stock sheet */ - Route::any('sundries_stock_sheet', 'StoresController@sundries_stock_sheet')->name('stores.sundries_stock_sheet'); - Route::any('update_sundries_stock_sheet', 'StoresController@update_sundries_stock_sheet'); - - /* General Items stock sheet */ - Route::any('general_items_stock_sheet', 'StoresController@general_items_stock_sheet')->name('stores.general_items_stock_sheet'); - Route::any('update_general_items_stock_sheet', 'StoresController@update_general_items_stock_sheet'); - - /* drugs issued to pharmacy report */ - Route::any('drugs_issued_to_pharmacy_report', 'StoresController@drugs_issued_to_pharmacy_report')->name('stores.drugs_issued_to_pharmacy_report'); - Route::any('drugs_issued_to_pharmacy_report_details', 'StoresController@drugs_issued_to_pharmacy_report_details'); - - /* labs stock sheet */ - Route::any('stores_labs_stock_sheet', 'StoresController@labs_stock_sheet')->name('stores.labs_stock_sheet'); - // radiology stock sheet - Route::get('store_radiology_stock_sheet','StoresController@radiology_stock_sheet')->name('stores.radiology_stock_sheet'); - /* request a quotation search */ - Route::any('request_a_quotation_search', 'StoresController@request_a_quotation_search')->name('stores.request_a_quotation_search'); - - /* goods received note route */ - Route::get('goods_received_note/{quotation_number}', 'StoresController@goods_received_note')->name('stores.goods_received_note'); - Route::get('goods_received_note_print/{quotation_number}', 'StoresController@goods_received_note_print')->name('stores.goods_received_note_print'); - - Route::any('clean_opening_stock_balance', 'StoresController@clean_opening_stock_balance'); - - Route::any('clean_labs_with_no_expense_accounts', 'StoresController@clean_labs_with_no_expense_accounts'); - - Route::any('get_item_batch_watcher_details', 'StoresController@get_item_batch_watcher_details'); - Route::any('clean_stock_watcher_to_remove_deleted', 'StoresController@clean_stock_watcher_to_remove_deleted'); - Route::get('clean_batch_watcher_deleted_batches', 'StoresController@remove_batches_from_batch_watcher'); - - Route::any('details_of_items_to_approve/{id}', 'StoresController@details_of_items_to_approve'); - Route::any('issued_items_history_cost_centres', 'StoresController@issued_items_history_cost_centres')->name('stores.issued_items_history_cost_centres'); -}); \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/Services/StoresItemService.php b/docker/statistics/Modules/Stores/Services/StoresItemService.php deleted file mode 100755 index 1ebb81fc..00000000 --- a/docker/statistics/Modules/Stores/Services/StoresItemService.php +++ /dev/null @@ -1,370 +0,0 @@ -form_id; - $form_name = DrugForm::find($form_id)->name??''; - return $form_name; - break; - case 2: - //get sundry item form - $form_id = Sundry::find($item_id)->form_id; - $form_name = GeneralForm::find($form_id)->name??''; - return $form_name; - break; - case 3: - //get dental item form - $form_name=''; - return $form_name; - break; - case 4: - //get radiology item form - $form_id = Radiology::find($item_id)->form_id; - $form_name = GeneralForm::find($form_id)->name??''; - return $form_name; - break; - case 5: - //get labs item form - $form_id = Lab::find($item_id)->form_id??''; - $form_name = LabForm::find($form_id)->name??''; - return $form_name; - break; - case 6: - //get general_item item form - $form_name=''; - return $form_name; - break; - case 7: - //get optical item form - $form_name=''; - return $form_name; - break; - } - } - public function find_item_batch_watcher($batch_item_id, $selected_columns): array|object|null - { - return ItemBatchWatcher::select($selected_columns)->find($batch_item_id); - } - public function move_item_between_sections($item_batch_watcher, $quantity_to_move, $other_stock) - { - $item_batch_watcher->store_stock -= $quantity_to_move; - $item_batch_watcher->{$other_stock} =$item_batch_watcher->{$other_stock} + $quantity_to_move; - $item_batch_watcher->save(); - } - public function move_next_available_item($item_type, $item_id,$column, $selected_columns, $quantity_to_move,$other_stock): array|object|null - { - - if (batch_tracking_method() == "FIFO") { - $random_batch_next = ItemBatchWatcher::where(['item_id' => $item_id, 'item_type' => $item_type])->where("{$column}", '>', 0)->orderBy('id', 'asc')->select($selected_columns)->first();; - } - elseif (batch_tracking_method() == "FEFO") { - $random_batch_next = ItemBatchWatcher::where(['item_id' => $item_id, 'item_type' => $item_type])->where("{$column}", '>', 0)->orderBy(DB::raw('ABS(DATEDIFF(expiry_date, NOW()))'))->select($selected_columns)->first();; - } - if ($random_batch_next) { - $random_batch_next->store_stock -= $quantity_to_move; - $random_batch_next->{$other_stock} += $quantity_to_move; - $random_batch_next->save(); - return $random_batch_next; - } - return false; - } - public function move_batch_item_from_store_to_other_sections($item_type, $item_id, $batch_item_id, $quantity_to_move, $requisition_id,$item_name_table,$move_to,$selected_columns,$other_stock) - { - $item_batch_watcher = $this->find_item_batch_watcher($batch_item_id,$selected_columns); - $batch_number = ""; - if ($item_batch_watcher) { - $this->move_item_between_sections($item_batch_watcher, $quantity_to_move, $other_stock); - $batch_number = $item_batch_watcher->batch_number; - } else{ - //reduce the next one in line that has enough store stock. - $batch_details= $this->move_next_available_item($item_type, $item_id,'store_stock', $selected_columns, $quantity_to_move,$other_stock); - if($batch_details){ - $batch_number = $batch_details->batch_number; - } - } - record_store_stock_movement($item_type, $item_id, $batch_number, $quantity_to_move, "{$move_to}", $requisition_id); - } - - //function to create optical reconciliation - public function createOpticalReconciliation($item_type,$batche,$variance, $item_id, $physical_new_stock, $difference, $system_stock,$completion,$affected_account_id,$reconciliation_date,$general_comment,$max_stock_count_identifier):void - { - $batch = $batche[$item_id]; - $physical_stock = new OpticalStockReconciliation; - $physical_stock->item_id = $item_id; - $physical_stock->system_stock = $system_stock; - $physical_stock->physical_stock = $physical_new_stock; - $physical_stock->difference = $difference; - $physical_stock->variance = $variance; - $physical_stock->batches = json_encode($batche[$item_id]); - $physical_stock->reason_for_difference = null; - $physical_stock->affected_account_id = $affected_account_id; - $physical_stock->completion_status = $completion; - $physical_stock->reconciliation_date = $reconciliation_date; - $physical_stock->stock_count_identifier = $max_stock_count_identifier+1;//increase ID by 1 for new - $physical_stock->general_comment = $general_comment; - $physical_stock->type =$item_type; //1 - pharmarcy, 0 - stores - $physical_stock->created_by = Auth::id(); - $physical_stock->save(); - if (isset($batch['reason_id'])){ - foreach($batch['reason_id'] as $reason_id){ - //update reconciliation reason - StockReconciliationReason::where('id', $reason_id)->update(['reconciliation_id' => $physical_stock->id]); - } - - } - } - //save reconciliation reason - public function saveReconciliationReason($item_type,$item_id,$reason,$source):int - { - $reason_stock = new StockReconciliationReason; - $reason_stock->item_id = $item_id; - $reason_stock->item_type = $item_type; - $reason_stock->reason_id = $reason; - $reason_stock->source = $source; - $reason_stock->created_by = Auth::id(); - $reason_stock->save(); - return $reason_stock->id; - } - - public function reconcileBatches($batches,$reason,$source, $item_type, $item_id, $batch_number, $batch_quantity, $batch_expiry_date, $store_or_pharmacy, $batch_unit_cost, $batch_records_db_id, $ward_id): array - { - $batch_record = ItemBatchWatcher::find($batch_records_db_id); - - if ($batch_record) { - $item_batch_watcher = $batch_record; - } else { - $item_batch_watcher = new ItemBatchWatcher; - $item_batch_watcher->item_id = $item_id; - $item_batch_watcher->item_type = $item_type; - } - - // Determine the original quantity based on store_or_pharmacy - $original_quantity = 0; - switch ($store_or_pharmacy) { - case 'store': - $original_quantity = $item_batch_watcher->store_stock ?? 0; - break; - case 'pharmacy': - $original_quantity = $item_batch_watcher->pharmacy_stock ?? 0; - break; - case 'lab': - $original_quantity = $item_batch_watcher->lab_stock ?? 0; - break; - case 'ward': - // Special handling for ward stock (aggregate or specific ward) - $exploded_ward_stocks = $item_batch_watcher->ward_stock ? explode(",", $item_batch_watcher->ward_stock) : []; - $exploded_ward_ids = $item_batch_watcher->ward_id ? explode(",", $item_batch_watcher->ward_id) : []; - $ward_id_key = array_search($ward_id, $exploded_ward_ids); - $original_quantity = $ward_id_key !== false ? ($exploded_ward_stocks[$ward_id_key] ?? 0) : 0; - break; - } - - $original_values = [ - 'original_unit_cost' => $item_batch_watcher->cost_price ?? 0, - 'original_quantity' => $original_quantity, - 'original_batch_number' => $item_batch_watcher->batch_number ?? null, - ]; - - $adjusted_values = [ - 'batch_id' => $batch_record->id??null, - 'unit_cost' => $batch_unit_cost, - 'quantity' => $batch_quantity, - 'expiry_date' => $batch_expiry_date, - 'batch_number' => $batch_number, - ]; - - if (isset($batches[$item_id])) { - $batch_exists = false; - foreach ($batches[$item_id] as &$data) { - // Check if batch_id exists - if(isset($data['batch_id'])){ - if ($data['batch_id'] == $batch_record->id) { - $batch_exists = true; - // Update the existing batch - $data['original_unit_cost'] = $original_values['original_unit_cost']; - $data['original_quantity'] = $original_values['original_quantity']; - $data['original_batch_number'] = $original_values['original_batch_number']; - - $data['unit_cost'] = $batch_unit_cost; - $data['quantity'] = $batch_quantity; - $data['expiry_date'] = $batch_expiry_date; - $data['batch_number'] = $batch_number; - break; - } - - } - } - - // If batch_id doesn't exist, add new batch - if (!$batch_exists) { - $batches[$item_id][] = array_merge($original_values, $adjusted_values); - } - } else { - $batches[$item_id][] = array_merge($original_values, $adjusted_values); - } - - // Update ItemBatchWatcher - $item_batch_watcher->batch_number = $batch_number; - is_null($batch_unit_cost) ? "" : $item_batch_watcher->cost_price = $batch_unit_cost; - - if ($store_or_pharmacy == "store") { - $item_batch_watcher->store_stock = $batch_quantity; - } - if ($store_or_pharmacy == "pharmacy") { - $item_batch_watcher->pharmacy_stock = $batch_quantity; - } - if ($store_or_pharmacy == "lab"){ - $item_batch_watcher->lab_stock = $batch_quantity; - } - if ($store_or_pharmacy == "ward") { - - $exploded_ward_stocks = $item_batch_watcher->ward_stock ? explode(",",$item_batch_watcher->ward_stock) : []; - $exploded_ward_ids = $item_batch_watcher->ward_id ? explode(",", $item_batch_watcher->ward_id) : []; - - $ward_id_key = array_search($ward_id, $exploded_ward_ids); - - if($ward_id_key !== false){ - $exploded_ward_stocks[$ward_id_key] = $batch_quantity; - } - - $item_batch_watcher->ward_stock = implode(",", $exploded_ward_stocks); - } - if($reason != ''){ - $reason_id =$this->saveReconciliationReason($item_type,$item_id,$reason,$source); - $batches[$item_id]['reason_id'][] = $reason_id; - } - - $item_batch_watcher->expiry_date = $batch_expiry_date; - $item_batch_watcher->save(); - - return $batches; - } - public function processReconcileItems($items_reconciled):EloquentCollection - { - foreach($items_reconciled as $item_reconciled){ - $batches = json_decode($item_reconciled->batches,true) ; - //remove reason_id if exist - if(isset($batches['reason_id'])){ - // Set reason_id property on the $item_reconciled object - $item_reconciled->reason_id = $batches['reason_id']; - // Remove reason_id from the batches array - unset($batches['reason_id']); - } - //modified batches array to JSON - //get reason - if(isset($item_reconciled->reason_id)){ - foreach($item_reconciled->reason_id as $val){ - $store_reason = StockReconciliationReason::find($val); - if (!is_null($store_reason)) { - $reason = ReconilicationReason::find($store_reason->reason_id); - if (!is_null($reason)){ - $reasons[] = $reason->name; - } - } - } - } - foreach($batches as $batch_key => $batch){ - $batch['reason'] = isset($reasons[$batch_key]) ? $reasons[$batch_key] : null; - $batches[$batch_key] = $batch; - } - $item_reconciled->batches = $batches; - } - return $items_reconciled; - - } - //function to get all reconciliation reasons - public function getAllReconciliationReasonsArray():array - { - return ReconilicationReason::orderBy('name','asc')->pluck('name','id')->prepend('Select Reason ', '')->toArray(); - } - //function to return stock to any col stores or pharmacy - public function returnStockToAnySection($item_type,$drug_id,$ward_treatments_dispensation,$patient_id,$episode_id, $quantity_to_return,$stock_col,$selected_batch_id):void - { - if ($selected_batch_id !=null){ - $batch_id = $selected_batch_id; - }else{ - $batch_id = WardTreatmentBatchDispensation::where(['patient_id'=>$patient_id,'episode_id'=>$episode_id,'item_id'=>$drug_id])->value('item_batch_id'); - } - //check for batch id - if($batch_id != null){ - //get batch number that was consumed - $containsComma = array_filter([$batch_id], function($string) { - return strpos($string, ',') !== false; - }); - if (!empty($containsComma)) { - $batch_id = explode(', ', $batch_id); - $batch_id = $batch_id[0]; - } - - //get item batch watcher record using batch number, item_type, item_id, where stock is not 0 - $item_batch_watcher = ItemBatchWatcher::find($batch_id); - if ($item_batch_watcher) { - $item_batch_watcher->{$stock_col} = $item_batch_watcher->{$stock_col} + $quantity_to_return; - $item_batch_watcher->update(); - }else{ - // check if that drug has any batch number - $item_batch_watcher = ItemBatchWatcher::where(['item_type'=>$item_type, 'item_id'=>$drug_id, ])->where("{$stock_col}", '>', '0')->orderBy(DB::raw('ABS(DATEDIFF(expiry_date, NOW()))'))->first(); - if ($item_batch_watcher) { - $item_batch_watcher->{$stock_col} = $item_batch_watcher->{$stock_col} + $quantity_to_return; - $item_batch_watcher->update(); - }else{ - $item_batch_watcher = new ItemBatchWatcher; - $item_batch_watcher->item_type = $item_type; - $item_batch_watcher->item_id = $drug_id; - $item_batch_watcher->batch_number = 'RTS-00'.$drug_id; - $item_batch_watcher->{$stock_col} = $quantity_to_return; - $item_batch_watcher->cost_price = $ward_treatments_dispensation->cost_price; - // add one month to expiry date - $item_batch_watcher->expiry_date = date('Y-m-d', strtotime('+1 month')); - $item_batch_watcher->save(); - } - } - - }else{ - // check if that drug has any batch number - $item_batch_watcher = ItemBatchWatcher::where(['item_type'=>$item_type, 'item_id'=>$drug_id, ])->where("{$stock_col}", '>', '0')->orderBy(DB::raw('ABS(DATEDIFF(expiry_date, NOW()))'))->first(); - if ($item_batch_watcher) { - $item_batch_watcher->{$stock_col} = $item_batch_watcher->{$stock_col} + $quantity_to_return; - $item_batch_watcher->update(); - }else{ - $item_batch_watcher = new ItemBatchWatcher; - $item_batch_watcher->item_type = $item_type; - $item_batch_watcher->item_id = $drug_id; - $item_batch_watcher->batch_number = 'RTS-00'.$drug_id; - $item_batch_watcher->{$stock_col} = $quantity_to_return; - $item_batch_watcher->cost_price = $ward_treatments_dispensation->cost_price; - // add one month to expiry date - $item_batch_watcher->expiry_date = date('Y-m-d', strtotime('+1 month')); - $item_batch_watcher->save(); - } - - } - - } - -} \ No newline at end of file diff --git a/docker/statistics/Modules/Stores/bitbucket-pipelines.yml b/docker/statistics/Modules/Stores/bitbucket-pipelines.yml deleted file mode 100644 index e850a8fd..00000000 --- a/docker/statistics/Modules/Stores/bitbucket-pipelines.yml +++ /dev/null @@ -1,19 +0,0 @@ -image: alpine/git:latest - -pipelines: - branches: - main: - - step: - name: Merge To Beta - script: - - git remote set-url origin https://Kabricks:${APP_SECRET}@bitbucket.org/dcsammi/${BITBUCKET_REPO_SLUG} - - git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*" - - git fetch - - git checkout beta - - git merge main - - git commit --amend -m "[skip ci] Merge changes from main" - - git push - - step: - name: Deploy To Test - script: - - echo "Ready to deploy to demo or production!" diff --git a/docker/statistics/Modules/Stores/module.json b/docker/statistics/Modules/Stores/module.json deleted file mode 100644 index 50145fe8..00000000 --- a/docker/statistics/Modules/Stores/module.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "Stores", - "alias": "stores", - "description": "Stores", - "keywords": [], - "priority": 0, - "providers": [ - "Modules\\Stores\\Providers\\StoresServiceProvider" - ], - "files": [] -} diff --git a/docker/statistics/Modules/Theatre/Config/config.php b/docker/statistics/Modules/Theatre/Config/config.php deleted file mode 100644 index 5728f075..00000000 --- a/docker/statistics/Modules/Theatre/Config/config.php +++ /dev/null @@ -1,5 +0,0 @@ - 'Theatre' -]; diff --git a/docker/statistics/Modules/Theatre/Http/Controllers/Controller.php b/docker/statistics/Modules/Theatre/Http/Controllers/Controller.php deleted file mode 100755 index 4ccb0e11..00000000 --- a/docker/statistics/Modules/Theatre/Http/Controllers/Controller.php +++ /dev/null @@ -1,13 +0,0 @@ -get('patient_id'); - $episode_id = session()->get('episode_id'); - $patient = Patient::find($patient_id); - //check if surgery data is available for this current episode - $surgery_done = Surgery::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('id', 'desc')->first(); - $documents = DB::table('patient_documents')->whereNull('deleted_at')->where('patient_id', $patient_id)->orderBy('date_taken', 'desc')->take(2)->get(); - $categories = DB::table('patient_categories')->where('available', 1)->whereNull('deleted_at')->pluck("name", "id"); - $drug_categories = DB::table('drug_categories')->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - //allergies and alerts - $known_patient_allergies = Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->whereNull('deleted_at')->pluck('name', 'id'); - //dropdown options used by the form - $iv_fluids = DB::table('iv_fluids')->whereNull('deleted_at')->orderBy("name", "asc")->pluck("name", "id")->prepend('- select -', '')->toArray(); - $iv_fluids[0] = 'Nil'; - $procedures = DB::table('procedures')->where('available', 1)->whereNull('deleted_at')->orderBy("name", "asc")->pluck("name", "id")->prepend('- select -', ''); - - $users = DB::table('users')->whereNull('deleted_at')->orderBy("first_name", "asc")->select("id")->get()->toArray(); - $doctors = []; - foreach ($users as $value) { - $user = User::find($value->id); - if (!is_null($user)) { - if ($user->hasRole('Doctors') || $user->hasRole('Doctor')) { - $doctors[$value->id] = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users'); - } - } - } - // add --select-- - $doctors = ['' => '- select -'] + $doctors; - $nurses = []; - foreach ($users as $value) { - $user = User::find($value->id); - if (!is_null($user)) { - if ($user->hasRole('Enrolled Nurse') || $user->hasRole('Nursing') || $user->hasRole('Nursing - Senior Ward Staff') || $user->hasRole('Specialist Nurses')) { - $nurses[$value->id] = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users'); - } - } - } - // add --select-- - $nurses = ['' => '- select -'] + $nurses; - - $anaesthesia_types = DB::table('procedures')->whereNull('deleted_at')->where('category_id', 3)->orderBy("name", "asc")->pluck("name", "id")->prepend('- select -', ''); - $anaesthesia_inductions = DB::table('anaesthesia_inductions')->whereNull('deleted_at')->orderBy("name", "asc")->pluck("name", "id"); - $anti_biotics = DB::table('drugs')->whereNull('deleted_at')->whereIn('category_id', [6, 9, 10, 11, 15, 29, 41, 94])->orderBy("name", "asc")->pluck("name", "id")->prepend('- select -', '')->toArray(); - $anti_biotics[0] = 'Nil'; - $airways = DB::table('anaesthesia_airways')->whereNull('deleted_at')->orderBy("name", "asc")->pluck("name", "id")->prepend('- select -', ''); - $anaesthesia_etts = DB::table('anaesthesia_etts')->whereNull('deleted_at')->pluck("name", "id")->prepend('- select -', ''); - $muscle_relaxants = DB::table('muscle_relaxants')->whereNull('deleted_at')->pluck("name", "id")->prepend('- select -', '')->toArray(); - $muscle_relaxants[0] = 'Nil'; - $analgesics = DB::table('analgesics')->whereNull('deleted_at')->pluck("name", "id")->prepend('- select -', '')->toArray(); - $analgesics[0] = 'Nil'; - $anaesthetic_agents = DB::table('anaesthetic_agents')->whereNull('deleted_at')->pluck("name", "id"); - $anaesthetic_techniques = DB::table('anaesthetic_techniques')->whereNull('deleted_at')->pluck("name", "id"); - $needle_types = DB::table('needle_types')->whereNull('deleted_at')->pluck("name", "id")->prepend('- select -', ''); - $drugs = DB::table('drugs')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $units = DB::table('drug_units')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - //inpatient_row = {} no idea where it is gotten from the old streamline - //$iv_fluid_ids = unserialize($inpatient_row["iv_fluids"]); - $iv_fluid_ids = []; //use the unserialized value after figuring where the old streamline gets them - //check if there exists an anaesthesia record of this episode already - $anaesthesia_records = Anaesthesia::where(['episode_id' => $episode_id])->get(); - $sundries_array = DB::table('sundries')->whereNull('deleted_at')->orderBy("name","asc")->pluck("name", "id")->prepend('- select -', ''); - $diagnoses = Diagnosis::where('available', 1)->orderby('name', 'asc')->pluck("name", "id")->prepend('- select -', ''); - $diagnoses_all = Diagnosis::select('id', 'prompts', 'reference_areas', 'reference_names')->get(); - - $hmis_categories = DB::table('hmis_categories')->whereNull('deleted_at')->orderBy('title', 'asc')->pluck('title', 'id')->toArray(); - $hmis_categories = ['' => '- select -'] + $hmis_categories; - - $volatile_liquid_anaethetics = VolatileLiquidAnaesthetics::orderBy('name', 'asc')->pluck("name", "id"); - - return view('theatre::anaesthetics.create', compact('episode_id', 'patient_id', 'patient', 'documents', 'users', 'drugs', 'units', 'drug_categories', 'known_patient_alerts', 'known_patient_allergies', 'drug_categories_array', 'categories', 'procedures', 'anaesthesia_types', 'hmis_categories', 'anaesthesia_inductions', 'anti_biotics', 'airways', 'anaesthesia_etts', 'muscle_relaxants', 'analgesics', 'anaesthetic_agents', 'anaesthetic_techniques', 'needle_types', 'iv_fluids', 'iv_fluid_ids', 'surgery_done', 'anaesthesia_records', 'nurses', 'doctors', 'sundries_array', 'diagnoses', 'diagnoses_all', 'volatile_liquid_anaethetics')); - } - - /** - * Store a newly created resource in storage. - * - */ - public function store(Request $request) : RedirectResponse - { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $theatre_ward_id = get_name("theatre", "slug", "id", "wards"); - - if (!is_integer($theatre_ward_id)) { - flash('Theatre ward not registered')->error(); - return redirect()->back()->withInput(); - } - - $procedure = $request->procedure_id; - $anaesthetist = $request->anaesthetist; - $time_commenced = $request->anaesthetic_commence_time; - $checklist_confirmed_by = $request->checklist_confirmed_by; - $anaesthesia_type = $request->anaesthesia_type; - $induction = $request->induction ? implode(",", $request->induction) : null; - $anaesthesia_checklist = array( - "oxygen" => isset($request->oxygen) ? 1 : 0, - "diazepam" => isset($request->diazepam) ? 1 : 0, - "atropine" => isset($request->atropine) ? 1 : 0, - "ergometrine" => isset($request->ergometrine) ? 1 : 0, - "oxytocin" => isset($request->oxytocin) ? 1 : 0, - "misoprostol" => isset($request->misoprostol) ? 1 : 0, - "paracetamol" => isset($request->paracetamol) ? 1 : 0, - "hydralazine" => isset($request->hydralazine) ? 1 : 0, - "ephedrine" => isset($request->ephedrine) ? 1 : 0, - "adrenaline" => isset($request->adrenaline) ? 1 : 0, - "tranexamic_acid" => isset($request->tranexamic_acid) ? 1 : 0 - ); - $anaesthesia_checklist = serialize($anaesthesia_checklist); - $antibiotics_array = $request->antibiotics; - $antibiotics = implode(",", $antibiotics_array); - $airway = $request->airway; - $ett = $request->ett; - $agent_used = $request->agent_used ? implode(",", $request->agent_used) : null; - $technique = $request->technique ? implode(",", $request->technique) : null; - - $monitoring_signs = array( - "continuos_sao2" => isset($request->continuos_sao2) ? 1 : 0, - "intermittent_sao2" => isset($request->intermittent_sao2) ? 1 : 0, - "full_vital_monitor" => isset($request->full_vital_monitor) ? 1 : 0, - "end_tidal_co2" => isset($request->end_tidal_co2) ? 1 : 0 - ); - $monitoring_signs = serialize($monitoring_signs); - $needle_type = $request->needle_type; - $volume_administered = $request->volume_administered; - $muscle_relaxant = $request->muscle_relaxant; - $analgesic = implode(",", $request->analgesic); - $volatile_liquid_anaesthetic_used = $request->volatile_liquid_anaesthetic_used; - - $iv_fluids = array( - "iv_fluids" => isset($request->iv_fluid_id) ? array_filter($request->iv_fluid_id) : NULL, - "units" => isset($request->iv_fluid_units) ? array_filter($request->iv_fluid_units) : NULL - ); - $iv_fluids = serialize($iv_fluids); - - $blood_given = $request->blood_given; - $comments = $request->comments; - $surgery_complete = $request->surgery_complete; - $surgery_id = $request->surgery_id; - - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('created_at', 'desc')->first(); - - // Prepare the other drugs given and cost for storing - $drug_ids = $request->drugs; - - if (count($drug_ids) > 0 && $drug_ids[0] != null): // Make sure some drugs have been selected - $doses = $request->dose; - $units = $request->units; - $drugs_given = []; - $drugs_cost = []; - $drug_quantity_used_array = $drug_frequency_array = $drug_purchased_elsewhere = $drug_eyey_array = $drug_order_comments_array = $drug_instructions_array = $drug_duration_array = []; - - foreach ($drug_ids as $key => $value): - $drugs_given[] = [ - 'id' => $value, - 'dose' => $doses[$key], - 'unit' => $units[$key] - ]; - // Gettings the cost - // @TODO - Check if a patient is insured or not - $drug = DB::table('drugs')->whereNull('deleted_at')->select('non_insured_price', 'strength', 'pack')->find($value); - - /* - * Formula for cost - * (Dose/DrugStrength)/DrugPack * UnitPrice - */ - if ($drug) { - $drugs_cost[] = (($doses[$key] / $drug->strength) / $drug->pack) * $drug->non_insured_price; - $drug_quantity_used = ($doses[$key] / $drug->strength) / $drug->pack; - reduce_ward_stock_with_consumed_quantity($value, $drug_quantity_used, 1, $theatre_ward_id, $patient_id, $episode_id, null); - - $drug_quantity_used_array[] = $drug_quantity_used; - $drug_frequency_array[] = ""; - $drug_purchased_elsewhere[] = ""; - $drug_eyey_array[] = ""; - $drug_order_comments_array[] = ""; - $drug_instructions_array[] = ""; - $drug_duration_array[] = ""; - } - endforeach; - - $drugs_given_serial = serialize($drugs_given); - $drugs_cost_serial = serialize($drugs_cost); - - if ($inpatient_info){ - // make treatment record for billing - for ($i=0; $i < count($drug_ids) ; $i++) { - if (isset($drug_quantity_used_array[$i]) && isset( $drug_ids[$i])) { - $ward_treatment_id = $this->dispensationService->saveDispensation((int)$patient_id, (int)$episode_id, $drug_ids[$i], (int)$drug_quantity_used_array[$i], - 0, $request->ward_id ?? 0); - } - } - } else{ - // bill drugs as opd treatment - $treatment = new Treatment; - $treatment->patient_id = $patient_id; - $treatment->episode_id = $episode_id; - $treatment->drugs = implode(',', $drug_ids); - $treatment->doses = implode(',', $doses); - $treatment->frequencies = implode(',', $drug_frequency_array); - $treatment->durations = implode(',', $drug_duration_array); - $treatment->quantities_dispensed = implode(',', $drug_quantity_used_array); - $treatment->instruction = implode(',', $drug_instructions_array); - $treatment->purchased_elsewhere = implode(',', $drug_purchased_elsewhere); - $treatment->dispense_status = 0; - $treatment->eye = implode(",", $drug_eyey_array); - $treatment->order_comments = ""; - $treatment->created_by = auth()->user()->id; - $treatment->save(); - - //do this for sundries to be billed - $sundry_used_array = $request->sundries_used; - $sundry_quantity_array = $request->sundries_quantity_used; - for ($i=0; $i < count($sundry_used_array); $i++) { - if (!is_null($sundry_used_array[$i])) { - $ordered_sundry_objects = OrderedSundry::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->where('sundries_id',$sundry_used_array[$i])->get(); - - if (count($ordered_sundry_objects) > 0) { - foreach ($ordered_sundry_objects as $sundry_to_update) { - $sundry_to_update->quantity = $sundry_quantity_array[$i]; - $sundry_to_update->payment_status = 0; - $sundry_to_update->update(); - } - } else { - $ordered_sundry = new OrderedSundry; - $ordered_sundry->patient_id = $patient_id; - $ordered_sundry->episode_id = $episode_id; - $ordered_sundry->sundries_id = $sundry_used_array[$i]; - $ordered_sundry->quantity = $sundry_quantity_array[$i]; - $ordered_sundry->payment_status = 0; - $ordered_sundry->created_by = Auth::id(); - $ordered_sundry->save(); - } - } - } - } - else: - $drugs_given_serial = null; - $drugs_cost_serial = null; - endif; - - if ($inpatient_info){ - //do this for sundries orders billing - $ward_sundries_ids_array = $request->sundries_used; - $ward_sundries_quantities_array = $request->sundries_quantity_used; - - if (is_array($ward_sundries_ids_array)) { - for ($j = 0; $j < count($ward_sundries_ids_array); $j++) { - // only save if the dispensed drug quantity is not null - if (!is_null($ward_sundries_quantities_array[$j])) { - $ward_sundry_dispensations = new WardSundryDispensation; - $ward_sundry_dispensations->patient_id = $patient_id; - $ward_sundry_dispensations->episode_id = $episode_id; - $ward_sundry_dispensations->sundry_id = $ward_sundries_ids_array[$j]; - $ward_sundry_dispensations->quantity_given = $ward_sundries_quantities_array[$j]; - $ward_sundry_dispensations->ward_id = $inpatient_info->ward_id; - $ward_sundry_dispensations->created_by = Auth::id(); - $ward_sundry_dispensations->save(); - } - } - } - - $extra_items_array = $request->extras_used; - $extra_costs_array = $request->extras_cost; - - $ward_extras_income_account = ChartOfAccount::where('slug', 'ward_extras_income_account')->first(); - - if (is_array($extra_items_array)) { - for ($k = 0; $k < count($extra_items_array); $k++) { - // only save if the dispensed drug quantity is not null - if (!is_null($extra_items_array[$k])) { - $ward_extra = new WardExtra; - $ward_extra->patient_id = $patient_id; - $ward_extra->episode_id = $episode_id; - $ward_extra->extra_item = $extra_items_array[$k]; - $ward_extra->extra_cost = $extra_costs_array[$k]; - $ward_extra->current_chart_of_account = !is_null($ward_extras_income_account) ? $ward_extras_income_account->id : 0; - $ward_extra->ward_id = $inpatient_info->ward_id; - $ward_extra->created_by = Auth::id(); - $ward_extra->save(); - } - } - } - } - - $anaesthesia_record = New Anaesthesia; - - //record into anaesthesia table - $anaesthesia_record->episode_id = $episode_id; - $anaesthesia_record->patient_id = $patient_id; - $anaesthesia_record->procedure_id = $procedure; - $anaesthesia_record->surgery_id = ($surgery_complete) ? $surgery_id : NULL; - $anaesthesia_record->anaesthetist = $anaesthetist; - $anaesthesia_record->time_commenced = $time_commenced; - $anaesthesia_record->primary_diagnosis = $request->primary_diagnosis; - $anaesthesia_record->other_diagnoses = serialize($request->other_diagnosis); - $anaesthesia_record->checklist_confirmed_by = $checklist_confirmed_by; - $anaesthesia_record->anaesthesia_type = $anaesthesia_type; - $anaesthesia_record->induction = $induction; - $anaesthesia_record->anaesthesia_checklist = $anaesthesia_checklist; - $anaesthesia_record->antibiotics = $antibiotics; - $anaesthesia_record->airway = $airway; - $anaesthesia_record->ETT = $ett; - $anaesthesia_record->agent_used = $agent_used; - $anaesthesia_record->technique = $technique; - $anaesthesia_record->monitoring_signs = $monitoring_signs; - $anaesthesia_record->needle_type = $needle_type; - $anaesthesia_record->volume_administered = $volume_administered; - $anaesthesia_record->muscle_relaxant = $muscle_relaxant; - $anaesthesia_record->analgesic = $analgesic; - $anaesthesia_record->volatile_liquid_anaethetics = $request->volatile_liquid_anaethetics; - $anaesthesia_record->volatile_liquid_anaesthetic_used = $volatile_liquid_anaesthetic_used; - $anaesthesia_record->iv_fluids = $iv_fluids; - $anaesthesia_record->blood_given = $blood_given; - $anaesthesia_record->comments = $comments; - $anaesthesia_record->other_drugs_given = $drugs_given_serial; - $anaesthesia_record->other_drugs_cost = $drugs_cost_serial; - $anaesthesia_record->mallampati_score = $request->mallampati_score; - $anaesthesia_record->asa_classification = $request->asa_classification; - - $extras_array = $request->extras_used; - $extras_cost_array = $request->extras_cost; - $unserialized_extras_array = array( - "extras" => $extras_array, - "cost" => $extras_cost_array - ); - $anaesthesia_record->extras_used = serialize($unserialized_extras_array); - - $sundry_used_array = $request->sundries_used; - $sundry_quantity_array = $request->sundries_quantity_used; - $unserialized_sundries_array = array( - "sundries" => $sundry_used_array, - "quantity" => $sundry_quantity_array - ); - - for ($i=0; $i < count($sundry_used_array) ; $i++) { - reduce_ward_stock_with_consumed_quantity($sundry_used_array[$i], $sundry_quantity_array[$i], 2, $theatre_ward_id, $patient_id, $episode_id, null); - } - - $anaesthesia_record->sundries_used = serialize($unserialized_sundries_array); - - $anaesthesia_record->created_by = Auth::id(); - $save_anaesthesia_record = $anaesthesia_record->save(); - - if ($save_anaesthesia_record) { - // save the procedure info in inpatient or OPD if surgery is not complete - /* i have commented out the if stmt coz i dt remember why we needed to check if surgery is done or not before saving the procedure in the rescpective table */ - //if (!$surgery_complete){ - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('created_at', 'desc')->first(); - - if ($inpatient_info) { - //check_if_there_are_exisiting_procedures and add the new ones instead of over riding them - if (!is_null($inpatient_info->procedures) && $inpatient_info->procedures != '') { - $unserialized_procedures_array = unserialize($inpatient_info->procedures); - $unserialized_procedures_array[] = $anaesthesia_type; - $inpatient_info->procedures = serialize($unserialized_procedures_array); - } else { - $inpatient_info->procedures = serialize([$anaesthesia_type]); - } - - // procedure_done_by - if(!is_null($inpatient_info->procedures_done_by) && $inpatient_info->procedures_done_by != ''){ - $procedures_done_by_array = @unserialize($inpatient_info->procedures_done_by); - $procedures_done_by_array[] = $request->anaesthetist; - $inpatient_info->procedures_done_by = serialize($procedures_done_by_array); - } else { - $inpatient_info->procedures_done_by = serialize([$request->anaesthetist]); - } - - // procedure_hospital_fee - if(!is_null($inpatient_info->procedure_hospital_fee) && $inpatient_info->procedure_hospital_fee != ''){ - $procedures_hospital_fee_array = @unserialize($inpatient_info->procedure_hospital_fee); - $procedures_hospital_fee_array[] = get_name($anaesthesia_type, "id", "non_insured_price", "procedures"); - $inpatient_info->procedure_hospital_fee = serialize($procedures_hospital_fee_array); - } else { - $inpatient_info->procedure_hospital_fee = serialize([0]); - } - - // procedure_staff_fee - if(!is_null($inpatient_info->procedure_staff_fee) && $inpatient_info->procedure_staff_fee != ''){ - $procedures_staff_fee_array = @unserialize($inpatient_info->procedure_staff_fee); - $procedures_staff_fee_array[] = 0; - $inpatient_info->procedure_staff_fee = serialize($procedures_staff_fee_array); - } else { - $inpatient_info->procedure_staff_fee = serialize([0]); - } - - $inpatient_info->updated_by = Auth::id(); - $inpatient_info->save(); - } else { - $procedure_performed_id = record_staff_that_has_performed_the_service($patient_id, $episode_id, 1, $anaesthesia_type, 0, $request->anaesthetist); - - $ordered_procedure = new OrderedProcedure; - $ordered_procedure->patient_id = $patient_id; - $ordered_procedure->episode_id = $episode_id; - $ordered_procedure->procedure_id = $anaesthesia_type; - $ordered_procedure->payment_status = 0; - $ordered_procedure->performed = 1; - $ordered_procedure->performed_id = $procedure_performed_id; - $ordered_procedure->created_by = Auth::id(); - $ordered_procedure->save(); - } - //} - // if surgery was completed, update the anaesthesia_id - if ($surgery_complete) { - // update anaesthesia table with surgery_id - $update = DB::table('surgeries')->where('id', $surgery_id)->update([ - "anaesthesia_id" => $anaesthesia_record->id - ]); - } - - flash('Anaesthesia has been saved')->success(); - return redirect('anaesthetics/history'); - } else { - flash('There was an error')->error(); - return redirect()->back()->withInput(); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) { - - $anaesthesia_record = Anaesthesia::find($id); - - $patient_id = $anaesthesia_record->patient_id; - $episode_id = $anaesthesia_record->episode_id; - $patient = Patient::find($patient_id); - $surgery_done = Surgery::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('id', 'desc')->first(); - $documents = DB::table('patient_documents')->whereNull('deleted_at')->where('patient_id', $patient_id)->orderBy('date_taken', 'desc')->take(2)->get(); - $categories = DB::table('patient_categories')->where('available', 1)->whereNull('deleted_at')->pluck("name", "id"); - $drug_categories = DB::table('drug_categories')->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - //allergies and alerts - $known_patient_allergies = Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->whereNull('deleted_at')->pluck('name', 'id'); - - //$inpatient_info or $ordered_procedure - $ordered_procedure = OrderedProcedure::where(['episode_id' => $episode_id])->get(); - $inpatient_info = InpatientInfo::where(['episode_id' => $episode_id])->get(); - return view('theatre::anaesthetics.show', compact('episode_id', 'patient_id', 'patient', 'documents', 'drug_categories', 'known_patient_alerts', 'known_patient_allergies', 'drug_categories_array', 'categories', 'anaesthesia_record', 'ordered_procedure', 'inpatient_info')); - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) { - $anaesthesia_record = Anaesthesia::find($id); - $patient_id = $anaesthesia_record->patient_id; - $episode_id = $anaesthesia_record->episode_id; - $patient = Patient::find($patient_id); - //check if surgery data is available for this current episode - $surgery_done = Surgery::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('id', 'desc')->first(); - $documents = DB::table('patient_documents')->whereNull('deleted_at')->where('patient_id',$patient_id)->orderBy('date_taken','desc')->take(2)->get(); - $categories = DB::table('patient_categories')->where('available', 1)->whereNull('deleted_at')->pluck("name", "id"); - $drug_categories = DB::table('drug_categories')->whereNull('deleted_at')->orderBy('name','asc')->get(); - //allergies and alerts - $known_patient_allergies = Allergy::where('patient_id' , $patient_id)->orderBy('created_at','desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id', $patient_id)->orderBy('created_at','desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->whereNull('deleted_at')->pluck('name', 'id'); - //dropdown options used by the form - $iv_fluids = DB::table('iv_fluids')->whereNull('deleted_at')->orderBy("name","asc")->pluck("name", "id")->prepend('- select -', ''); - $procedures = DB::table('procedures')->whereNull('deleted_at')->orderBy("name","asc")->pluck("name", "id")->prepend('- select -', ''); - - $users = DB::table('users')->orderBy("first_name","asc")->whereNull('deleted_at')->select("id")->get()->toArray(); - $doctors = []; - $all_staff = []; - foreach ($users as $value){ - $user = User::find($value->id); - if(!is_null($user)){ - if ($user->hasRole('doctors') || $user->hasRole('doctor')) { - $doctors[$value->id] = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users'); - } - $all_staff[$value->id] = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users'); - } - } - // add --select-- - $doctors = ['' => '- select -'] + $doctors; - $all_staff = ['' => '- select -'] + $all_staff; - $nurses = []; - foreach ($users as $value){ - $user = User::find($value->id); - if(!is_null($user)){ - if ($user->hasRole('Enrolled Nurse') || $user->hasRole('Nursing') || $user->hasRole('Nursing - Senior Ward Staff') || $user->hasRole('Specialist Nurses')) { - $nurses[$value->id] = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users'); - } - } - } - // add --select-- - $nurses = ['' => '- select -'] + $nurses; - - $anaesthesia_types = DB::table('procedures')->whereNull('deleted_at')->where('category_id',3)->whereNotNull('slug')->orderBy("name","asc")->pluck("name", "id")->prepend('- select -', ''); - $anaesthesia_inductions = DB::table('anaesthesia_inductions')->whereNull('deleted_at')->orderBy("name","asc")->pluck("name", "id")->prepend('- select -', ''); - $anti_biotics = DB::table('drugs')->whereNull('deleted_at')->whereIn('category_id', [6, 9, 10, 11, 15, 29, 41, 94])->orderBy("name", "asc")->pluck("name", "id")->prepend('- select -', '')->toArray(); - $anti_biotics[0] = 'Nil'; - $airways = DB::table('anaesthesia_airways')->whereNull('deleted_at')->orderBy("name","asc")->pluck("name", "id")->prepend('- select -', ''); - $anaesthesia_etts = DB::table('anaesthesia_etts')->whereNull('deleted_at')->pluck("name", "id")->prepend('- select -', ''); - $muscle_relaxants = DB::table('muscle_relaxants')->whereNull('deleted_at')->pluck("name", "id")->prepend('- select -', ''); - $analgesics = DB::table('analgesics')->whereNull('deleted_at')->pluck("name", "id")->prepend('- select -', ''); - $anaesthetic_agents = DB::table('anaesthetic_agents')->whereNull('deleted_at')->pluck("name", "id")->prepend('- select -', ''); - $anaesthetic_techniques = DB::table('anaesthetic_techniques')->whereNull('deleted_at')->pluck("name", "id")->prepend('- select -', ''); - $needle_types = DB::table('needle_types')->whereNull('deleted_at')->pluck("name", "id")->prepend('- select -', ''); - //inpatient_row = {} no idea where it is gotten from the old streamline - //$iv_fluid_ids = unserialize($inpatient_row["iv_fluids"]); - $iv_fluid_ids = []; - $users = User::orderBy('first_name')->select("id", "first_name", "last_name")->get(); - $sundries_array = DB::table('sundries')->whereNull('deleted_at')->orderBy("name","asc")->pluck("name", "id")->prepend('- select -', ''); - $drugs = DB::table('drugs')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $units = DB::table('drug_units')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $diagnoses = Diagnosis::where('available', 1)->orderBy('name', 'asc')->pluck("name", "id")->prepend('- select -', ''); - $diagnoses_all = Diagnosis::select('id', 'prompts', 'reference_areas', 'reference_names')->get(); - $volatile_liquid_anaethetics = VolatileLiquidAnaesthetics::orderBy('name', 'asc')->pluck("name", "id"); - - return view('theatre::anaesthetics.edit',compact('anaesthesia_record','episode_id','patient_id','patient','documents','users','drug_categories','known_patient_alerts','known_patient_allergies','drug_categories_array','categories','procedures','anaesthesia_types','anaesthesia_inductions','anti_biotics','airways','anaesthesia_etts','muscle_relaxants','analgesics','anaesthetic_agents','anaesthetic_techniques','needle_types','iv_fluids','iv_fluid_ids','surgery_done', 'nurses','doctors','all_staff','sundries_array','drugs','units', 'diagnoses', 'diagnoses_all', 'volatile_liquid_anaethetics')); - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) { - $anaesthesia_record = Anaesthesia::find($id); - - $procedure = $request->procedure_id; - $anaesthetist = $request->anaesthetist; - $time_commenced = $request->anaesthetic_commence_time; //date("H:i", strtotime($row['time_d'])); anaesthetic_commence_time - $checklist_confirmed_by = $request->checklist_confirmed_by; - $anaesthesia_type = $request->anaesthesia_type; - $induction = $request->induction ? implode($request->induction) : null; - $anaesthesia_checklist = array( - "oxygen" => isset($request->oxygen) ? 1 : 0, - "diazepam" => isset($request->diazepam) ? 1 : 0, - "atropine" => isset($request->atropine) ? 1 : 0, - "ergometrine" => isset($request->ergometrine) ? 1 : 0, - "oxytocin" => isset($request->oxytocin) ? 1 : 0, - "misoprostol" => isset($request->misoprostol) ? 1 : 0, - "paracetamol" => isset($request->paracetamol) ? 1 : 0, - "hydralazine" => isset($request->hydralazine) ? 1 : 0, - "ephedrine" => isset($request->ephedrine) ? 1 : 0, - "adrenaline" => isset($request->adrenaline) ? 1 : 0, - "tranexamic_acid" => isset($request->tranexamic_acid) ? 1 : 0 - ); - $anaesthesia_checklist = serialize($anaesthesia_checklist); - $antibiotics_array = $request->antibiotics; - $antibiotics = implode(",", $antibiotics_array); - $airway = $request->airway; - $ett = $request->ett; - $agent_used = is_array($request->agent_used) ? implode(",", $request->agent_used) : null; - $technique = is_array($request->technique) ? implode(",", $request->technique) : null; - - $monitoring_signs = array( - "continuos_sao2" => isset($request->continuos_sao2) ? 1 : 0, - "intermittent_sao2" => isset($request->intermittent_sao2) ? 1 : 0, - "full_vital_monitor" => isset($request->full_vital_monitor) ? 1 : 0, - "end_tidal_co2" => isset($request->end_tidal_co2) ? 1 : 0 - ); - $monitoring_signs = serialize($monitoring_signs); - $needle_type = $request->needle_type; - $volume_administered = $request->volume_administered; - $muscle_relaxant = $request->muscle_relaxant; - $analgesic = is_array($request->analgesic) ? implode(",", $request->analgesic) : null; - $volatile_liquid_anaesthetic_used = $request->volatile_liquid_anaesthetic_used; - - $iv_fluids = array( - "iv_fluids" => isset($request->iv_fluid_id) ? array_filter($request->iv_fluid_id) : NULL, - "units" => isset($request->iv_fluid_units) ? array_filter($request->iv_fluid_units) : NULL - ); - $iv_fluids = serialize($iv_fluids); - - $blood_given = $request->blood_given; - $comments = $request->comments; - $surgery_complete = $request->surgery_complete; - - $surgery_id = $request->surgery_id; - - // Prepare the other drugs given and cost for storing - $drug_ids = $request->drugs; - - if (count($drug_ids) > 0 && $drug_ids[0] != null): // Make sure some drugs have been selected - $doses = $request->dose; - $units = $request->units; - $drugs_given = []; - $drugs_cost = []; - - foreach ($drug_ids as $key => $value): - $drugs_given[] = [ - 'id' => $value, - 'dose' => $doses[$key], - 'unit' => $units[$key] - ]; - // Gettings the cost - // @TODO - Check if a patient is insured or not - $drug = DB::table('drugs')->select('non_insured_price', 'strength', 'pack')->find($value); - - /* - * Formula for cost - * (Dose/DrugStrength)/DrugPack * UnitPrice - */ - $drugs_cost[] = (($doses[$key] / $drug->strength) / $drug->pack) * $drug->non_insured_price; - endforeach; - - $drugs_given_serial = serialize($drugs_given); - $drugs_cost_serial = serialize($drugs_cost); - else: - $drugs_given_serial = null; - $drugs_cost_serial = null; - endif; - - //record into anaesthesia table - $anaesthesia_record->procedure_id = $procedure; - $anaesthesia_record->surgery_id = ($surgery_complete) ? $surgery_id : NULL; - $anaesthesia_record->anaesthetist = $anaesthetist; - $anaesthesia_record->time_commenced = $time_commenced; - $anaesthesia_record->checklist_confirmed_by = $checklist_confirmed_by; - $anaesthesia_record->anaesthesia_type = $anaesthesia_type; - $anaesthesia_record->induction = $induction; - $anaesthesia_record->anaesthesia_checklist = $anaesthesia_checklist; - $anaesthesia_record->antibiotics = $antibiotics; - $anaesthesia_record->airway = $airway; - $anaesthesia_record->ETT = $ett; - $anaesthesia_record->agent_used = $agent_used; - $anaesthesia_record->technique = $technique; - $anaesthesia_record->monitoring_signs = $monitoring_signs; - $anaesthesia_record->needle_type = $needle_type; - $anaesthesia_record->volume_administered = $volume_administered; - $anaesthesia_record->muscle_relaxant = $muscle_relaxant; - $anaesthesia_record->analgesic = $analgesic; - $anaesthesia_record->volatile_liquid_anaethetics = $request->volatile_liquid_anaethetics; - $anaesthesia_record->volatile_liquid_anaesthetic_used = $volatile_liquid_anaesthetic_used; - $anaesthesia_record->iv_fluids = $iv_fluids; - $anaesthesia_record->blood_given = $blood_given; - $anaesthesia_record->comments = $comments; - $anaesthesia_record->other_drugs_given = $drugs_given_serial; - $anaesthesia_record->other_drugs_cost = $drugs_cost_serial; - $anaesthesia_record->mallampati_score = $request->mallampati_score; - $anaesthesia_record->asa_classification = $request->asa_classification; - - $extras_array = $request->extras_used; - $extras_cost_array = $request->extras_cost; - $unserialized_extras_array = array( - "extras" => $extras_array, - "cost" => $extras_cost_array - ); - $anaesthesia_record->extras_used = serialize($unserialized_extras_array); - - $sundry_used_array = $request->sundries_used; - $sundry_quantity_array = $request->sundries_quantity_used; - $unserialized_sundries_array = array( - "sundries" => $sundry_used_array, - "quantity" => $sundry_quantity_array - ); - $anaesthesia_record->sundries_used = serialize($unserialized_sundries_array); - $anaesthesia_record->created_by = Auth::id(); - $save_anaesthesia_record = $anaesthesia_record->update(); - - if ($save_anaesthesia_record) { - /* check if this episode exists in the inpatient_info then add/update anaesthesia_type into procedures column,else add anaesthesia_type into ordered_procedures */ - flash('Anaesthesia has been updated')->success(); - return redirect('anaesthetics/history'); - } else { - flash('There was an error')->error(); - return redirect()->back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) { - // - } - - /* get procedure slug */ - - public function get_procedure_slug(Request $request) { - $procedure_id = $request->procedure_id; - $slug = get_name($procedure_id, 'id', 'slug', 'procedures'); - return $slug; - } - - /* add a new doctor to the users table */ - - public function add_new_doctor_or_nurse(Request $request) { - $user = new User; - $user->first_name = $request->fname; - $user->last_name = $request->lname; - $user->username = $request->fname . $request->lname; - //$set_url = str_replace(url('/'), '', url()->current()); - //if($set_url == '/add_new_doctor') add user category of doctor - //if($set_url == '/add_new_nurse') add user category of nurse - if ($user->save()) { - $last_inserted_id = $user->id; - return $last_inserted_id; - } - return 'error occurred'; - } - - /* add new airway */ - - public function add_new_airway(Request $request) { - $airway = new AnaesthesiaAirway; - $airway->name = $request->name; - $airway->created_by = Auth::id(); - if ($airway->save()) { - $last_inserted_id = $airway->id; - return $last_inserted_id; - } - return 'error occurred'; - } - - /* add new analgesic */ - - public function add_new_analgesic(Request $request) { - $analgesic = new Analgesic; - $analgesic->name = $request->name; - $analgesic->created_by = Auth::id(); - if ($analgesic->save()) { - $last_inserted_id = $analgesic->id; - return $last_inserted_id; - } - return 'error occurred'; - } - - public function history() { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $patient = Patient::find($patient_id); - - $documents = DB::table('patient_documents')->whereNull('deleted_at')->where('patient_id', $patient_id)->orderBy('date_taken', 'desc')->take(2)->get(); - $categories = DB::table('patient_categories')->where('available', 1)->whereNull('deleted_at')->pluck("name", "id"); - $drug_categories = DB::table('drug_categories')->whereNull('deleted_at')->orderBy('name', 'asc')->get(); - //allergies and alerts - $known_patient_allergies = Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->whereNull('deleted_at')->pluck('name', 'id'); - $users = DB::table('users')->whereNull('deleted_at')->orderBy("first_name", "asc")->pluck("first_name", "id")->prepend('- select -', ''); - - $anaesthesia_records = Anaesthesia::where(['episode_id' => $episode_id])->get(); - return view('theatre::anaesthetics.history', compact('episode_id', 'patient_id', 'patient', 'documents', 'users', 'drug_categories', 'known_patient_alerts', 'known_patient_allergies', 'drug_categories_array', 'categories', 'anaesthesia_records')); - } - - public function view_history($id) { - - $anaesthesia = Anaesthesia::find($id); - - $patient_id = $anaesthesia->patient_id; - $episode_id = $anaesthesia->episode_id; - - $patient = Patient::find($patient_id); - $diagnoses = DB::table('diagnoses')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck("name", "id")->prepend('- select -', ''); - - return view('theatre::anaesthetics.view_history', compact('patient_id', 'episode_id', 'patient', 'anaesthesia', 'diagnoses', 'id')); - } - - public function anaesthesia_print($anaesthesia_id) - { - $anaesthesia = Anaesthesia::withTrashed()->find($anaesthesia_id); - if (!$anaesthesia) { - return redirect()->back(); - } - - $patient_id = $anaesthesia->patient_id; - $episode_id = $anaesthesia->episode_id; - - $patient = Patient::find($patient_id); - $hospitalInfo = DB::table('hospital_information')->find(1); - $diagnoses = DB::table('diagnoses')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck("name", "id")->prepend('- select -', ''); - - $data = [ - 'patient' => $patient, - 'patient_id' => $patient_id, - 'episode_id' => $episode_id, - 'hospitalInfo' => $hospitalInfo, - 'diagnoses' => $diagnoses, - 'anaesthesia' => $anaesthesia - ]; - - $pdf = SnappyPDF::loadView('theatre::anaesthetics/anaesthesia_print', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Stre@mline'); - - - return $pdf->inline('Anaesthesia Details' . date(" d-m-y h:ia") . '.pdf'); - } - - public function remove_drug_from_inpatient_bill($record_id, $drug_id) { - $anaesthesia = Anaesthesia::find($record_id); - - $other_drugs_bill = explode(",", $anaesthesia->other_drugs_bill); - $other_drugs_bill[] = $drug_id; - - $anaesthesia->other_drugs_bill = implode(",", $other_drugs_bill); - $anaesthesia->save(); - - return redirect('/anaesthetics/view_history/' . $record_id); - } - - public function add_drug_to_inpatient_bill($record_id, $drug_id) { - $anaesthesia = Anaesthesia::find($record_id); - - $other_drugs_bill = explode(",", $anaesthesia->other_drugs_bill); - - $key = array_search($drug_id, $other_drugs_bill); - - if ($key !== false) { - unset($other_drugs_bill[$key]); - } - - $anaesthesia->other_drugs_bill = implode(",", $other_drugs_bill); - $anaesthesia->save(); - - return redirect('/anaesthetics/view_history/' . $record_id); - } - -} diff --git a/docker/statistics/Modules/Theatre/Http/Controllers/TheatreSurgeryController.php b/docker/statistics/Modules/Theatre/Http/Controllers/TheatreSurgeryController.php deleted file mode 100755 index ba426b46..00000000 --- a/docker/statistics/Modules/Theatre/Http/Controllers/TheatreSurgeryController.php +++ /dev/null @@ -1,1232 +0,0 @@ -get('patient_id'); - $episode_id = session()->get('episode_id'); - $patient = Patient::find($patient_id); - $drug_categories = DB::table('drug_categories')->whereNull('deleted_at')->orderBy('name','asc')->get(); - $drug_categories_array = DB::table('drug_categories')->whereNull('deleted_at')->pluck('name', 'id'); - $categories = DB::table('patient_categories')->where('available', 1)->whereNull('deleted_at')->pluck("name", "id"); - $known_patient_allergies = Allergy::where('patient_id' , $patient_id)->orderBy('created_at','desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id' , $patient_id)->orderBy('created_at','desc')->take(2)->get(); - - $surgeries = DB::table('surgeries')->whereNull('deleted_at')->where('episode_id', $episode_id)->where('patient_id', $patient_id)->get()->toArray(); - $performed_anaesthesia = DB::table('anaesthesias')->whereNull('deleted_at')->where('episode_id', $episode_id)->where('patient_id', $patient_id)->get()->toArray(); - - return view('theatre::theatre_surgeries.index', compact('patient_id', 'episode_id', 'patient', 'categories', - 'known_patient_alerts', 'known_patient_allergies', 'drug_categories', 'surgeries', 'performed_anaesthesia', 'drug_categories_array')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $patient = Patient::find($patient_id); - - $positions = DB::table('staff_positions')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id'); - $positions->prepend('- select -', ''); - - $security_questions = SecurityQuestion::orderBy('name')->pluck('name', 'id'); - $security_questions->prepend('- select -', ''); - $drug_categories = DB::table('drug_categories')->whereNull('deleted_at')->orderBy('name','asc')->get(); - $roles = Role::pluck('name', 'name')->all(); - - $surgeries = DB::table('surgeries')->whereNull('deleted_at')->where('episode_id', $episode_id)->where('patient_id', $patient_id)->get()->toArray(); - $performed_anaesthesia = DB::table('anaesthesias')->where('episode_id', $episode_id)->where('patient_id', $patient_id)->get()->toArray(); - - $documents = DB::table('patient_documents')->whereNull('deleted_at')->where('patient_id',$patient_id)->orderBy('date_taken','desc')->take(2)->get(); - $categories = DB::table('patient_categories')->where('available', 1)->whereNull('deleted_at')->pluck("name", "id"); - $drug_categories = DB::table('drug_categories')->whereNull('deleted_at')->orderBy('name','asc')->get(); - //allergies and alerts - $known_patient_allergies = Allergy::where('patient_id' , $patient_id)->orderBy('created_at','desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id' , $patient_id)->orderBy('created_at','desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->whereNull('deleted_at')->pluck('name', 'id'); - //dropdown options - $procedures = DB::table('procedures')->where('available', 1)->whereNull('deleted_at')->orderBy("name","asc")->pluck("name", "id"); - $theatre_locations = DB::table('theatre_locations')->whereNull('deleted_at')->orderBy("name","asc")->pluck("name", "id")->prepend('- select -', ''); - $outcomes = DB::table('outcomes')->whereNull('deleted_at')->orderBy("name","asc")->pluck("name", "id")->prepend('- select -', ''); - $users = DB::table('users')->whereNull('deleted_at')->orderBy("first_name","asc")->select("id")->get()->toArray(); - $doctors = []; - $nursing = []; - $theatre_in_charge_users = []; - foreach ($users as $value){ - $user = User::find($value->id); - if (!is_null($user)) { - if ($user->hasRole('Doctors') || $user->hasRole('Doctor')) { - $doctors[$value->id] = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users'); - } - if ($user->hasRole('Nursing')) { - $nursing[$value->id] = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users'); - } - if ($user->hasRole('Doctors') || $user->hasRole('Nursing - senior ward staff') || $user->hasRole('Doctor') || $user->hasRole('Specialist Nurses') || $user->hasRole('Midwives')) { - $theatre_in_charge_users[$value->id] = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users'); - } - } - } - - $doctors = ['' => '- select -'] + $doctors; - $nursing = ['' => '- select -'] + $nursing; - $doctors[0] = "None"; - $nursing[0] = "None"; - $theatre_in_charge_users = ['' => '- select -'] + $theatre_in_charge_users; - $theatre_in_charge_users[0] = "None"; - - //$anaesthesia_id - $anaesthesia = DB::table('anaesthesias')->whereNull('deleted_at')->where('patient_id', $patient_id)->where('episode_id', $episode_id)->first(); - if(!is_null($anaesthesia)){ - $anaesthesia_complete = TRUE; - } else { - $anaesthesia_complete = FALSE; - } - - $wards = DB::table('wards')->where('available', 1)->whereNull('deleted_at')->orderBy("name","asc")->pluck("name", "id")->prepend('- select -', ''); - $referrals = DB::table('referral_hospitals')->whereNull('deleted_at')->orderBy("name","asc")->pluck("name", "id")->prepend('- select -', ''); - $sundries_array = DB::table('sundries')->whereNull('deleted_at')->orderBy("name","asc")->pluck("name", "id")->prepend('- select -', ''); - - $episode_consultation_details = Consultation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $episode_consultation_outcome = null; - //dd($episode_consultation_details); - $ward_id = null; - $admission_date = null; - - if ($episode_consultation_details) { - $episode_consultation_outcome = $episode_consultation_details->outcome_id; - if ($episode_consultation_outcome == 1) { - $inpatient_record = InpatientInfo::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $ward_id = $inpatient_record->ward_id; - $admission_date = $episode_consultation_details->admitted_on; - } - } else { - $inpatient_record = InpatientInfo::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - if ($inpatient_record) { - $episode_consultation_outcome = $inpatient_record->outcome_id; - if ($episode_consultation_outcome == 1) { - $ward_id = $inpatient_record->ward_id; - $admission_date = $inpatient_record->admitted_on; - } - } - } - - $clinics = Clinic::orderBy('name')->pluck("name", "id")->toArray(); - $clinics = ['0' => "Don't assign clinic"] + $clinics; - $users_collection = DB::table('users')->whereNull('deleted_at')->orderBy("first_name","asc")->select("id")->get()->toArray(); - $users = User::orderBy('first_name')->select("id", "first_name", "last_name")->get(); - $diagnoses = Diagnosis::where('available', 1)->orderby('name', 'asc')->pluck("name", "id")->prepend('- select -', ''); - $diagnoses_all = Diagnosis::select('id', 'prompts', 'reference_areas', 'reference_names')->get(); - $drugs = DB::table('drugs')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - $units = DB::table('drug_units')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - - $hmis_categories = DB::table('hmis_categories')->whereNull('deleted_at')->orderBy('title', 'asc')->pluck('title', 'id')->toArray(); - $hmis_categories = ['' => '- select -'] + $hmis_categories; - - return view('theatre::theatre_surgeries.create',compact('episode_id','patient_id','patient','documents', 'categories','drug_categories','known_patient_alerts','known_patient_allergies','drug_categories_array', 'procedures','theatre_locations','outcomes','doctors', 'anaesthesia', 'anaesthesia_complete','positions', 'roles', 'security_questions', 'surgeries', 'performed_anaesthesia','nursing','wards','referrals','theatre_in_charge_users', - 'sundries_array','episode_consultation_details','clinics','users', 'episode_consultation_outcome', 'diagnoses', 'diagnoses_all', 'drugs', 'units', 'ward_id', 'admission_date', 'hmis_categories')); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector - */ - public function store(Request $request) - { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $anaesthesia_id = $request->anaesthesia_id; - $theatre_ward_id = get_name("theatre", "slug", "id", "wards"); - - if (!is_integer($theatre_ward_id)) { - flash('Theatre ward not registered')->error(); - return redirect()->back()->withInput(); - } - - $procedures = implode(",", $request->procedure_id); - $surgery_type = $request->surgery_type; - $surgeon = $request->surgeon; - $assistant_surgeon = $request->assistant_surgeon; - $scrub_nurse = $request->scrub_nurse; - $authorised_swab_check = $request->authorised_swab_check; - $theatre_location = $request->theatre_location; - $time_surgery_completed = $request->time_surgery_completed;//change to carbon time format - $date_surgery_completed = $request->date_surgery_completed; //change to carbon date format - - $theatre_incharge = $request->theatre_incharge; - $estimated_blood_loss = $request->estimated_blood_loss; - $outcome = $request->outcome; - /*$vicryl_sutures_used = $request->vicryl_sutures_used; - $other_sutures_used = $request->other_sutures_used;*/ - $other_scrub_staff = $request->other_scrub_staff; - $comments = $request->comments; - $staff_id = $request->theatre_incharge; - - // Prepare the other drugs given and cost for storing - $drug_ids = $request->drugs; - - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id,'episode_id' => $episode_id,'discharged' => 0])->orderBy('created_at','desc')->first(); - - if (count($drug_ids) > 0) { - $doses = $request->dose; - $units = $request->units; - $drugs_given = []; - $drugs_cost = []; - $drug_quantity_used_array = $drug_frequency_array = $drug_purchased_elsewhere = $drug_eyey_array = $drug_order_comments_array = $drug_instructions_array = $drug_duration_array = []; - - foreach ($drug_ids as $key => $value): - $drugs_given[] = [ - 'id' => $value, - 'dose' => $doses[$key], - 'unit' => $units[$key] - ]; - - $drug = DB::table('drugs')->whereNull('deleted_at')->select('non_insured_price', 'strength', 'pack')->find($value); - - if ($drug) { - $drugs_cost[] = (($doses[$key] / $drug->strength) / $drug->pack) * $drug->non_insured_price; - $drug_quantity_used = ($doses[$key] / $drug->strength) / $drug->pack; - reduce_ward_stock_with_consumed_quantity($value, $drug_quantity_used, 1, $theatre_ward_id, $patient_id, $episode_id, null); - - $drug_quantity_used_array[] = $drug_quantity_used; - $drug_frequency_array[] = ""; - $drug_purchased_elsewhere[] = ""; - $drug_eyey_array[] = ""; - $drug_instructions_array[] = ""; - $drug_duration_array[] = ""; - } - endforeach; - - $drugs_given_serial = serialize($drugs_given); - $drugs_cost_serial = serialize($drugs_cost); - - if ($inpatient_info){ - for ($i=0; $i < count($drug_ids) ; $i++) { - if (isset($drug_quantity_used_array[$i]) && isset( $drug_ids[$i])) { - $ward_treatment_id = $this->dispensationService->saveDispensation((int)$patient_id, (int)$episode_id, $drug_ids[$i], (int)$drug_quantity_used_array[$i], - 0, $request->ward_id ?? 0); - } - } - } else { - $treatment = new Treatment; - $treatment->patient_id = $patient_id; - $treatment->episode_id = $episode_id; - $treatment->drugs = implode(',', $drug_ids); - $treatment->doses = implode(',', $doses); - $treatment->frequencies = implode(',', $drug_frequency_array); - $treatment->durations = implode(',', $drug_duration_array); - $treatment->quantities_dispensed = implode(',', $drug_quantity_used_array); - $treatment->instruction = implode(',', $drug_instructions_array); - $treatment->purchased_elsewhere = implode(',', $drug_purchased_elsewhere); - $treatment->dispense_status = 0; - $treatment->eye = implode(",", $drug_eyey_array); - $treatment->order_comments = ""; - $treatment->created_by = auth()->user()->id; - $treatment->save(); - } - } else { - $drugs_given_serial = null; - $drugs_cost_serial = null; - } - - // insert data to surgery table - $surgery = new Surgery; - - switch ($outcome){ - case 1: // Admitted - $surgery->ward_id_admitted = $request->ward_id; - $surgery->admitted_on = $request->admitted_on; - - // check if the patient is currently admitted and just update their status - if ($inpatient_info) { - $inpatient_info->ward_id = $request->ward_id; - $inpatient_info->updated_by = $staff_id; - $inpatient_info->save(); - } else { - // admit the patient - $inpatient = new InpatientInfo; - $inpatient->patient_id = $patient_id; - $inpatient->episode_id = $episode_id; - $inpatient->admitted_on = Carbon::createFromFormat('Y-m-d', $request->admitted_on)->toDateString(); - $inpatient->ward_id = $request->ward_id; - $inpatient->primary_diagnosis = ""; - $inpatient->comments = $comments; - $inpatient->created_by = $staff_id; - $inpatient->save(); - } - break; - case 2: // Discharged - // discharge the patient if admitted - discharge_patient_from_ward($patient_id, $episode_id, Auth::id(), date('Y-m-d')); - break; - case 3: // Home with Follow up - // discharge the patient if admitted - discharge_patient_from_ward($patient_id, $episode_id, Auth::id(), date('Y-m-d')); - - $surgery->followup_where = $request->followup_where; - $surgery->followup_when = $request->followup_when; - - // get current clinic of patient if available - $episode_information = PatientEpisode::find($episode_id); - - if ($episode_information->clinic_id){ - $clinic_allocation_id = $episode_information->clinic_id; - } else { - $clinic_allocation_id = 0; - } - - // save information to the follow-up table - $appointment = new PatientAppointment(); - $appointment->patient_id = $patient_id; - $appointment->incharge_id = Auth::id(); - $appointment->clinic_allocation = $clinic_allocation_id; - $appointment->episode_id = $episode_id; - $appointment->appointment_date = Carbon::createFromFormat('Y-m-d', $request->followup_when)->toDateString(); - $appointment->appointment_time = "09:00:00"; - $appointment->created_from = "Surgery"; - $appointment->created_by = Auth::id(); - $appointment->updated_by = Auth::id(); - $appointment->save(); - break; - case 4: // Referred - $surgery->referred_to = $request->referral_id; - - // discharge the patient if admitted - discharge_patient_from_ward($patient_id, $episode_id, Auth::id(), date('Y-m-d')); - break; - case 5: // Died - // discharge the patient if admitted - discharge_patient_from_ward($patient_id, $episode_id, Auth::id(), date('Y-m-d')); - break; - case 6: // Return to ward - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id,'episode_id' => $episode_id,'discharged' => 0])->orderBy('created_at','desc')->first(); - if ($inpatient_info) { - $inpatient_info->outcome_id = 1; - $inpatient_info->discharged = 0; - $inpatient_info->update(); - } - break; - } - - if ($request->anaesthesia_complete) { - $surgery->anaesthesia_id = $anaesthesia_id; - } - - $surgery->episode_id = $episode_id; - $surgery->patient_id = $patient_id; - $surgery->procedure_id = $procedures; - $surgery->surgery_type = $surgery_type; - $surgery->primary_diagnosis = $request->primary_diagnosis; - $surgery->other_diagnoses = serialize($request->other_diagnosis); - $surgery->surgeon = $surgeon; - $surgery->assistant_surgeon = $assistant_surgeon; - $surgery->scrub_nurse = $scrub_nurse; - $surgery->authorised_swab_check = $authorised_swab_check; - $surgery->theatre_location = $theatre_location; - $surgery->time_surgery_completed = $time_surgery_completed; - $surgery->date_surgery_completed = !is_null($date_surgery_completed) ? Carbon::createFromFormat('Y-m-d', $date_surgery_completed)->toDateString() : null; - $surgery->theatre_in_charge = $theatre_incharge; - $surgery->estimated_blood_loss = $estimated_blood_loss; - $surgery->outcome = $outcome; - $surgery->other_scrub_staff = $other_scrub_staff; - $surgery->other_drugs_given = $drugs_given_serial; - $surgery->other_drugs_cost = $drugs_cost_serial; - /*$surgery->vicryl_sutures_used = $vicryl_sutures_used; - $surgery->other_sutures_used = $other_sutures_used;*/ - $extras_array = $request->extras_used; - $extras_cost_array = $request->extras_cost; - $unserialized_extras_array = array( - "extras" => $extras_array, - "cost" => $extras_cost_array - ); - $surgery->extras_used = serialize($unserialized_extras_array); - - $sundry_used_array = $request->sundries_used; - $sundry_quantity_array = $request->sundries_quantity_used; - $unserialized_sundries_array = array( - "sundries" => $sundry_used_array, - "quantity" => $sundry_quantity_array - ); - $surgery->sundries_used = serialize($unserialized_sundries_array); - - $surgery->comments = $comments; - $surgery->created_by = Auth::id(); - $surgery->save(); - - // save the procedure info in inpatient or OPD if anaesthesia is not complete - /* i have commented out the if stmt coz i dt remember why we needed to check if anaeasthesia is done or not before saving the procedure in the respective table */ - //if (!$request->anaesthesia_complete){ - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->orderBy('created_at','desc')->first(); - - if ($inpatient_info){ - //check_if_there_are_exisiting_procedures and add the new ones instead of over riding them - if(!is_null($inpatient_info->procedures) && $inpatient_info->procedures != ''){ - $procedures_array = @unserialize($inpatient_info->procedures); - $unserialized_procedures_array[] = isset($procedures_array[0]) ? $procedures_array[0] : []; - for ($i=0; $i < count($request->procedure_id) ; $i++) { - $unserialized_procedures_array[] = $request->procedure_id[$i]; - } - $inpatient_info->procedures = serialize($unserialized_procedures_array); - } else { - $fresh_procedure_array = []; - for ($i=0; $i < count($request->procedure_id) ; $i++) { - $fresh_procedure_array[] = $request->procedure_id[$i]; - } - $inpatient_info->procedures = serialize($fresh_procedure_array); - } - - // procedure_done_by - if(!is_null($inpatient_info->procedures_done_by) && $inpatient_info->procedures_done_by != ''){ - $procedures_done_by_array = @unserialize($inpatient_info->procedures_done_by); - for ($i=0; $i < count($request->procedure_id) ; $i++) { - $procedures_done_by_array[] = $request->surgeon; - } - $inpatient_info->procedures_done_by = serialize($procedures_done_by_array); - } else { - $fresh_procedure_done_by_array = []; - for ($i=0; $i < count($request->procedure_id) ; $i++) { - $fresh_procedure_done_by_array[] = $request->surgeon; - } - $inpatient_info->procedures_done_by = serialize($fresh_procedure_done_by_array); - } - - // procedure_hospital_fee - if(!is_null($inpatient_info->procedure_hospital_fee) && $inpatient_info->procedure_hospital_fee != ''){ - $procedures_hospital_fee_array = @unserialize($inpatient_info->procedure_hospital_fee); - for ($i=0; $i < count($request->procedure_id) ; $i++) { - $procedures_hospital_fee_array[] = get_procedure_hospital_fees_func($request->procedure_id[$i], $patient_id); - } - $inpatient_info->procedure_hospital_fee = serialize($procedures_hospital_fee_array); - } else { - $fresh_procedure_hospital_fee_array = []; - for ($i=0; $i < count($request->procedure_id); $i++) { - $fresh_procedure_hospital_fee_array[] = get_procedure_hospital_fees_func($request->procedure_id[$i], $patient_id); - } - $inpatient_info->procedure_hospital_fee = serialize($fresh_procedure_hospital_fee_array); - } - - // procedure_staff_fee - if(!is_null($inpatient_info->procedure_staff_fee) && $inpatient_info->procedure_staff_fee != ''){ - $procedures_staff_fee_array = @unserialize($inpatient_info->procedure_staff_fee); - for ($i=0; $i < count($request->procedure_id) ; $i++) { - $procedures_staff_fee_array[] = $request->procedure_performance_fee; - } - $inpatient_info->procedure_staff_fee = serialize($procedures_staff_fee_array); - } else { - $fresh_procedure_staff_fee_array = []; - for ($i=0; $i < count($request->procedure_id) ; $i++) { - $fresh_procedure_staff_fee_array[] = $request->procedure_performance_fee; - } - $inpatient_info->procedure_staff_fee = serialize($fresh_procedure_staff_fee_array); - } - $inpatient_info->updated_by = Auth::id(); - $inpatient_info->save(); - - for ($i=0; $i < count($request->procedure_id) ; $i++) { - $ward_procedures_record = WardProcedure::firstOrNew(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'procedure_id' => $request->procedure_id[$i], 'performed_by' => $request->surgeon]); - $ward_procedures_record->patient_id = $patient_id; - $ward_procedures_record->episode_id = $episode_id; - $ward_procedures_record->procedure_id = $request->procedure_id[$i]; - $ward_procedures_record->performed_by = $request->surgeon; - $ward_procedures_record->hospital_fee = get_procedure_hospital_fees_func($request->procedure_id[$i], $patient_id); - $ward_procedures_record->staff_fee = $request->procedure_performance_fee; - $ward_procedures_record->ward_id = $inpatient_info->ward_id; - $ward_procedures_record->created_by = Auth::id(); - $ward_procedures_record->save(); - } - - $ward_sundries_ids_array = $request->sundries_used; - $ward_sundries_quantities_array = $request->sundries_quantity_used; - - if (is_array($ward_sundries_ids_array)) { - for ($j = 0; $j < count($ward_sundries_ids_array); $j++) { - // only save if the dispensed drug quantity is not null - if (!is_null($ward_sundries_quantities_array[$j])) { - $ward_sundry_dispensations = new WardSundryDispensation; - $ward_sundry_dispensations->patient_id = $patient_id; - $ward_sundry_dispensations->episode_id = $episode_id; - $ward_sundry_dispensations->sundry_id = $ward_sundries_ids_array[$j]; - $ward_sundry_dispensations->quantity_given = $ward_sundries_quantities_array[$j]; - $ward_sundry_dispensations->ward_id = $inpatient_info->ward_id; - $ward_sundry_dispensations->created_by = Auth::id(); - $ward_sundry_dispensations->save(); - } - } - } - - $extra_items_array = $request->extras_used; - $extra_costs_array = $request->extras_cost; - - $ward_extras_income_account = ChartOfAccount::where('slug', 'ward_extras_income_account')->first(); - - if (is_array($extra_items_array)) { - for ($k = 0; $k < count($extra_items_array); $k++) { - // only save if the dispensed drug quantity is not null - if (!is_null($extra_items_array[$k])) { - $ward_extra = new WardExtra; - $ward_extra->patient_id = $patient_id; - $ward_extra->episode_id = $episode_id; - $ward_extra->extra_item = $extra_items_array[$k]; - $ward_extra->extra_cost = $extra_costs_array[$k]; - $ward_extra->current_chart_of_account = !is_null($ward_extras_income_account) ? $ward_extras_income_account->id : 0; - $ward_extra->ward_id = $inpatient_info->ward_id; - $ward_extra->created_by = Auth::id(); - $ward_extra->save(); - } - } - } - } else { - for ($i=0; $i < count($request->procedure_id) ; $i++) { - $procedure_performed_id = record_staff_that_has_performed_the_service($patient_id, $episode_id, 1, $request->procedure_id[$i], 0, $request->surgeon); - - $ordered_procedure = new OrderedProcedure; - $ordered_procedure->patient_id = $patient_id; - $ordered_procedure->episode_id = $episode_id; - $ordered_procedure->procedure_id = $request->procedure_id[$i]; - $ordered_procedure->payment_status = 0; - $ordered_procedure->performed = 1; - $ordered_procedure->performed_id = $procedure_performed_id; - $ordered_procedure->created_by = Auth::id(); - $ordered_procedure->save(); - } - } - //} - - //insert sundries e.g vicryl sutures used into sundries deposit table so that they are billed too - $sundry_used_array = $request->sundries_used; - $sundry_quantity_array = $request->sundries_quantity_used; - - if($inpatient_info){ - $inpatient_sundries = @unserialize($inpatient_info->sundries); - $sundries_array = isset($inpatient_sundries['sundries']) ? $inpatient_sundries['sundries'] : []; - $quantity_array = isset($inpatient_sundries['quantity']) ? $inpatient_sundries['quantity'] : []; - - //add the used sundries from theatre to any exisiting ones to inpatient - for ($i=0; $i < count($sundry_used_array); $i++) { - if (!is_null($sundry_used_array[$i])) { - $sundries_array[] = $sundry_used_array[$i]; - $quantity_array[] = $sundry_quantity_array[$i]; - reduce_ward_stock_with_consumed_quantity($sundry_used_array[$i], $sundry_quantity_array[$i], 2, $theatre_ward_id, $patient_id, $episode_id, null); - } - } - - $unserialized_sundries_array = array( - "sundries" => $sundries_array, - "quantity" => $quantity_array - ); - - $inpatient_info->sundries = serialize($unserialized_sundries_array); - $inpatient_info->save(); - } else{ - for ($i=0; $i < count($sundry_used_array); $i++) { - if (!is_null($sundry_used_array[$i])) { - $ordered_sundry_objects = OrderedSundry::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->where('sundries_id',$sundry_used_array[$i])->get(); - - if (count($ordered_sundry_objects) > 0) { - foreach ($ordered_sundry_objects as $sundry_to_update) { - $sundry_to_update->quantity = $sundry_quantity_array[$i]; - $sundry_to_update->payment_status = 0; - $sundry_to_update->update(); - } - } else { - $ordered_sundry = new OrderedSundry; - $ordered_sundry->patient_id = $patient_id; - $ordered_sundry->episode_id = $episode_id; - $ordered_sundry->sundries_id = $sundry_used_array[$i]; - $ordered_sundry->quantity = $sundry_quantity_array[$i]; - $ordered_sundry->payment_status = 0; - $ordered_sundry->created_by = Auth::id(); - $ordered_sundry->save(); - } - - reduce_ward_stock_with_consumed_quantity($sundry_used_array[$i], $sundry_quantity_array[$i], 2, $theatre_ward_id, $patient_id, $episode_id, null); - } - } - } - - $surgery = Response::json(array('success' => true, 'last_insert_id' => $surgery->id), 200); - - if ($request->anaesthesia_complete) { - // update anaesthesia table with surgery_id - $update = DB::table('anaesthesias')->whereNull('deleted_at')->where('id',$anaesthesia_id )->update([ - "surgery_id" => $surgery->getData()->last_insert_id - ]); - } - - flash("Surgery information saved successfully")->success(); - return redirect("/theatre_surgery/"); - - } - - public function theatre_surgery_quick_store(Request $request){ - - $user = new User(); - - $user->first_name = $request->first_name; - $user->last_name = $request->last_name; - $user->username = $request->user_name; - $user->phone = $request->phone_number; - $user->position_id = $request->position_id; - $user->registration_number = $request->registration_number; - $user->email = $request->email; - $user->pin = $request->secret_pin; - $user->security_question_id = $request->security_question; - $user->security_answer = $request->security_answer; - - $user->created_by = Auth::id(); - if ($user->save()) { - $last_inserted_id = $user->id; - return $last_inserted_id; - } - return 'error occurred'; - } - - public function add_new_theatre_location(Request $request) - { - $theatre_location = new TheatreLocation; - $theatre_location->name = $request->name; - - $theatre_location->created_by = Auth::id(); - if ($theatre_location->save()) { - $last_inserted_id = $theatre_location->id; - return $last_inserted_id; - } - return 'error occurred'; - } - - public function details($id){ - - $surgery = Surgery::find($id); - $patient_id = $surgery->patient_id; - $episode_id = $surgery->episode_id; - - $patient = Patient::find($patient_id); - $categories = PatientCategory::pluck("name", "id"); - $marital_statuses = MaritalStatus::pluck("name", "id"); - $occupations = Occupation::pluck('name', 'id'); - $drug_categories = DrugCategory::orderBy('name', 'asc')->get(); - $documents = PatientDocument::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_allergies = Allergy::where('patient_id' , $patient_id)->orderBy('created_at','desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id' , $patient_id)->orderBy('created_at','desc')->take(2)->get(); - $drug_categories_array = DrugCategory::pluck('name', 'id'); - $diagnoses = DB::table('diagnoses')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck("name", "id")->prepend('- select -', ''); - - - return view('theatre::theatre_surgeries.detail',compact('patient_id', 'episode_id', 'patient', - 'categories', 'known_patient_allergies', 'drug_categories', 'drug_categories_array', - 'documents', 'marital_statuses', 'occupations', 'surgery', 'known_patient_alerts', 'diagnoses')); - } - - /* - get staff positions from - */ - public function get_cadre(Request $request){ - $result = User::where('id', $request->user_id)->first(); - $cadre = get_name($result->position_id, 'id', 'name', 'staff_positions'); - return $cadre; - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) - { - $surgery_record = Surgery::find($id); - - $patient_id = $surgery_record->patient_id; - $episode_id = $surgery_record->episode_id; - $patient = Patient::find($patient_id); - - $positions = DB::table('staff_positions')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id'); - $positions->prepend('- select -', ''); - - $security_questions = SecurityQuestion::orderBy('name')->pluck('name', 'id'); - $security_questions->prepend('- select -', ''); - $drug_categories = DB::table('drug_categories')->whereNull('deleted_at')->orderBy('name','asc')->get(); - $roles = Role::pluck('name', 'name')->all(); - - $surgeries = DB::table('surgeries')->whereNull('deleted_at')->where('episode_id', $episode_id)->where('patient_id', $patient_id)->get()->toArray(); - $performed_anaesthesia = DB::table('anaesthesias')->whereNull('deleted_at')->where('episode_id', $episode_id)->where('patient_id', $patient_id)->get()->toArray(); - - $documents = DB::table('patient_documents')->whereNull('deleted_at')->where('patient_id',$patient_id)->orderBy('date_taken','desc')->take(2)->get(); - $categories = DB::table('patient_categories')->where('available', 1)->whereNull('deleted_at')->pluck("name", "id"); - $drug_categories = DB::table('drug_categories')->whereNull('deleted_at')->orderBy('name','asc')->get(); - //allergies and alerts - $known_patient_allergies = Allergy::where('patient_id' , $patient_id)->orderBy('created_at','desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id' , $patient_id)->orderBy('created_at','desc')->take(2)->get(); - $drug_categories_array = DB::table('drug_categories')->whereNull('deleted_at')->pluck('name', 'id'); - //dropdown options - $procedures = DB::table('procedures')->whereNull('deleted_at')->orderBy("name","asc")->pluck("name", "id")->prepend('- select -', ''); - $theatre_locations = DB::table('theatre_locations')->whereNull('deleted_at')->orderBy("name","asc")->pluck("name", "id")->prepend('- select -', ''); - $outcomes = DB::table('outcomes')->whereNull('deleted_at')->orderBy("name","asc")->pluck("name", "id")->prepend('- select -', ''); - $users = DB::table('users')->whereNull('deleted_at')->orderBy("first_name","asc")->select("id")->get()->toArray(); - $doctors = []; - $nursing = []; - $theatre_in_charge_users = []; - $all_staff = []; - foreach ($users as $value){ - $user = User::find($value->id); - if (!is_null($user)) { - if ($user->hasRole('Doctors') || $user->hasRole('Doctor')) { - $doctors[$value->id] = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users'); - } - if ($user->hasRole('Nursing')) { - $nursing[$value->id] = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users'); - } - if ($user->hasRole('Doctors') || $user->hasRole('Nursing - senior ward staff') || $user->hasRole('Doctor') || $user->hasRole('Specialist Nurses') || $user->hasRole('Midwives')) { - $theatre_in_charge_users[$value->id] = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users'); - } - $all_staff[$value->id] = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users'); - } - } - - $doctors = ['' => '- select -'] + $doctors; - $nursing = ['' => '- select -'] + $nursing; - $doctors[0] = "None"; - $nursing[0] = "None"; - $theatre_in_charge_users = ['' => '- select -'] + $theatre_in_charge_users; - $theatre_in_charge_users[0] = "None"; - $all_staff = ['' => '- select -'] + $all_staff; - - //$anaesthesia_id - $anaesthesia = DB::table('anaesthesias')->whereNull('deleted_at')->where('patient_id', $patient_id)->where('episode_id', $episode_id)->first(); - if(!is_null($anaesthesia)){ - $anaesthesia_complete = TRUE; - }else{ - $anaesthesia_complete = FALSE; - } - - $sundries_array = DB::table('sundries')->whereNull('deleted_at')->orderBy("name","asc")->pluck("name", "id")->prepend('- select -', ''); - //get sundries used - $ordered_sundries = OrderedSundry::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $used_sundries__ids_array = []; - $used_sundries_quantities_array = []; - foreach ($ordered_sundries as $order_sundry) { - $used_sundries__ids_array[] = $order_sundry->sundries_id; - $used_sundries_quantities_array[] = $order_sundry->quantity; - } - - $wards = DB::table('wards')->where('available', 1)->whereNull('deleted_at')->orderBy("name","asc")->pluck("name", "id")->prepend('- select -', ''); - $referrals = DB::table('referral_hospitals')->whereNull('deleted_at')->orderBy("name","asc")->pluck("name", "id")->prepend('- select -', ''); - - $episode_consultation_details = Consultation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $episode_consultation_outcome = null; - /*if ($episode_consultation_details) { - $episode_consultation_outcome = $episode_consultation_details->outcome_id; - }*/ - $ward_id = null; - $admission_date = null; - - if ($episode_consultation_details) { - $episode_consultation_outcome = $episode_consultation_details->outcome_id; - if ($episode_consultation_outcome == 1) { - $inpatient_record = InpatientInfo::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $ward_id = $inpatient_record->ward_id; - $admission_date = $episode_consultation_details->admitted_on; - } - } else { - $inpatient_record = InpatientInfo::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - if ($inpatient_record) { - $episode_consultation_outcome = $inpatient_record->outcome_id; - if ($episode_consultation_outcome == 1) { - $ward_id = $inpatient_record->ward_id; - $admission_date = $inpatient_record->admitted_on; - } - } - } - - $clinics = Clinic::orderBy('name')->pluck("name", "id")->toArray(); - $clinics = ['0' => "Don't assign clinic"] + $clinics; - $users_collection = DB::table('users')->whereNull('deleted_at')->orderBy("first_name","asc")->select("id")->get()->toArray(); - $users = User::orderBy('first_name')->select("id", "first_name", "last_name")->get(); - $diagnoses = Diagnosis::where('available', 1)->orderby('name', 'asc')->pluck("name", "id")->prepend('- select -', ''); - $diagnoses_all = Diagnosis::select('id', 'prompts', 'reference_areas', 'reference_names')->get(); - - return view('theatre::theatre_surgeries.edit',compact('surgery_record','episode_id','patient_id','patient','documents','categories','drug_categories','known_patient_alerts','known_patient_allergies','drug_categories_array','procedures','theatre_locations','outcomes','doctors', 'anaesthesia', 'anaesthesia_complete','positions','roles', 'security_questions', 'surgeries', 'performed_anaesthesia','nursing','sundries_array','all_staff','used_sundries__ids_array','used_sundries_quantities_array','wards','referrals','sundries_array','episode_consultation_details','clinics','users','diagnoses', 'diagnoses_all', 'ward_id', 'admission_date','episode_consultation_outcome')); - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - $patient_id = $request->patient_id; - $episode_id = $request->episode_id; - - $anaesthesia_id = $request->anaesthesia_id; - $surgery_id = $request->surgery_id; - - $procedures = implode(",", $request->procedure_id); - $surgery_type = $request->surgery_type; - $surgeon = $request->surgeon; - $assistant_surgeon = $request->assistant_surgeon; - $scrub_nurse = $request->scrub_nurse; - $authorised_swab_check = $request->authorised_swab_check; - $theatre_location = $request->theatre_location; - $time_surgery_completed = $request->time_surgery_completed;//change to carbon time format - $date_surgery_completed = $request->date_surgery_completed; //change to carbon date format - - $theatre_incharge = $request->theatre_incharge; - $estimated_blood_loss = $request->estimated_blood_loss; - $outcome = $request->outcome; - /*$vicryl_sutures_used = $request->vicryl_sutures_used; - $other_sutures_used = $request->other_sutures_used;*/ - $other_scrub_staff = $request->other_scrub_staff; - $comments = $request->comments; - $staff_id = $request->theatre_incharge; - - // insert data to surgery table - $surgery = Surgery::find($surgery_id); - - $previous_procedure_id = $surgery->procedure_id; - - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id,'episode_id' => $episode_id,'discharged' => 0])->orderBy('created_at','desc')->first(); - - switch ($outcome){ - case 1: // Admitted - $surgery->ward_id_admitted = $request->ward_id; - $surgery->admitted_on = $request->admitted_on; - - // check if the patient is currently admitted and just update their status - if ($inpatient_info) { - $inpatient_info->ward_id = $request->ward_id; - $inpatient_info->updated_by = $staff_id; - $inpatient_info->save(); - } else { - // admit the patient - $inpatient = new InpatientInfo; - $inpatient->patient_id = $patient_id; - $inpatient->episode_id = $episode_id; - $inpatient->admitted_on = $request->admitted_on; //Carbon::createFromFormat('d/m/Y', $request->admitted_on)->toDateString(); - $inpatient->ward_id = $request->ward_id; - $inpatient->primary_diagnosis = ""; - $inpatient->comments = $comments; - $inpatient->created_by = $staff_id; - $inpatient->save(); - } - break; - case 2: // Discharged - // discharge the patient if admitted - discharge_patient_from_ward($patient_id, $episode_id, Auth::id(), date('Y-m-d')); - break; - case 3: // Home with Follow up - // discharge the patient if admitted - discharge_patient_from_ward($patient_id, $episode_id, Auth::id(), date('Y-m-d')); - - $surgery->followup_where = $request->followup_where; - $surgery->followup_when = $request->followup_when; - - // get current clinic of patient if available - $episode_information = PatientEpisode::find($episode_id); - - if ($episode_information->clinic_id){ - $clinic_allocation_id = $episode_information->clinic_id; - } else { - $clinic_allocation_id = 0; - } - - // save information to the follow-up table - $appointment = new PatientAppointment(); - $appointment->patient_id = $patient_id; - $appointment->incharge_id = Auth::id(); - $appointment->clinic_allocation = $clinic_allocation_id; - $appointment->episode_id = $episode_id; - $appointment->appointment_date = Carbon::createFromFormat('d/m/Y', $request->followup_when)->toDateString(); - $appointment->appointment_time = "09:00:00"; - $appointment->created_from = "Surgery"; - $appointment->created_by = Auth::id(); - $appointment->updated_by = Auth::id(); - $appointment->save(); - break; - case 4: // Referred - $surgery->referred_to = $request->referral_id; - - // discharge the patient if admitted - discharge_patient_from_ward($patient_id, $episode_id, Auth::id(), date('Y-m-d')); - break; - case 5: // Died - // discharge the patient if admitted - discharge_patient_from_ward($patient_id, $episode_id, Auth::id(), date('Y-m-d')); - break; - case 6: // Return to ward - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id,'episode_id' => $episode_id,'discharged' => 0])->orderBy('created_at','desc')->first(); - if ($inpatient_info) { - $inpatient_info->outcome_id = 1; - $inpatient_info->discharged = 0; - $inpatient_info->update(); - } - break; - } - - if ($request->anaesthesia_complete) { - $surgery->anaesthesia_id = $anaesthesia_id; - } - - //$surgery->episode_id = $episode_id; - //$surgery->patient_id = $patient_id; - $surgery->procedure_id = $procedures; - $surgery->surgery_type = $surgery_type; - $surgery->surgeon = $surgeon; - $surgery->assistant_surgeon = $assistant_surgeon; - $surgery->scrub_nurse = $scrub_nurse; - $surgery->authorised_swab_check = $authorised_swab_check; - $surgery->theatre_location = $theatre_location; - $surgery->time_surgery_completed = $time_surgery_completed; - $surgery->date_surgery_completed = !is_null($date_surgery_completed) ? Carbon::createFromFormat('d/m/Y', $date_surgery_completed)->toDateString() : null; - $surgery->theatre_in_charge = $theatre_incharge; - $surgery->estimated_blood_loss = $estimated_blood_loss; - $surgery->outcome = $outcome; - $surgery->other_scrub_staff = $other_scrub_staff; - /*$surgery->vicryl_sutures_used = $vicryl_sutures_used; - $surgery->other_sutures_used = $other_sutures_used;*/ - $extras_array = $request->extras_used; - $extras_cost_array = $request->extras_cost; - $unserialized_extras_array = array( - "extras" => $extras_array, - "cost" => $extras_cost_array - ); - $surgery->extras_used = serialize($unserialized_extras_array); - - $sundry_used_array = $request->sundries_used; - $sundry_quantity_array = $request->sundries_quantity_used; - $unserialized_sundries_array = array( - "sundries" => $sundry_used_array, - "quantity" => $sundry_quantity_array - ); - $surgery->sundries_used = serialize($unserialized_sundries_array); - - $surgery->comments = $comments; - $surgery->created_by = Auth::id(); - $surgery->save(); - - // save the procedure info in inpatient or OPD if anaesthesia is not complete - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->orderBy('created_at','desc')->first(); - - if ($inpatient_info){ - //check_if_there_are_exisiting_procedures and add the new ones instead of over riding them - if(!is_null($inpatient_info->procedures)){ - $unserialized_procedures_array[] = unserialize($inpatient_info->procedures); - for ($i=0; $i < count($request->procedure_id) ; $i++) { - if (!in_array($request->procedure_id[$i], $unserialized_procedures_array)) { - $unserialized_procedures_array[] = $request->procedure_id[$i]; - } - } - $inpatient_info->procedures = serialize($unserialized_procedures_array); - } else { - $inpatient_info->procedures = serialize($request->procedure_id); - } - $inpatient_info->updated_by = Auth::id(); - $inpatient_info->save(); - - for ($i=0; $i < count($request->procedure_id) ; $i++) { - $ward_procedures_record = WardProcedure::firstOrNew(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'procedure_id' => $request->procedure_id[$i], 'performed_by' => $request->surgeon]); - $ward_procedures_record->patient_id = $patient_id; - $ward_procedures_record->episode_id = $episode_id; - $ward_procedures_record->procedure_id = $request->procedure_id[$i]; - $ward_procedures_record->performed_by = $request->surgeon; - $ward_procedures_record->hospital_fee = $request->procedure_hospital_fee; - $ward_procedures_record->staff_fee = $request->procedure_performance_fee; - $ward_procedures_record->ward_id = $inpatient_info->ward_id; - $ward_procedures_record->created_by = Auth::id(); - $ward_procedures_record->save(); - } - } else { - for ($i=0; $i < count($request->procedure_id) ; $i++) { - $exisiting_ordered_procedure = OrderedProcedure::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->where('procedure_id',$request->procedure_id[$i])->first(); - - $ordered_procedure = $exisiting_ordered_procedure ? $exisiting_ordered_procedure : new OrderedProcedure; - $ordered_procedure->patient_id = $patient_id; - $ordered_procedure->episode_id = $episode_id; - $ordered_procedure->procedure_id = $request->procedure_id[$i]; - $ordered_procedure->payment_status = 0; - $ordered_procedure->performed = 1; - $ordered_procedure->performed_id = 0; - $ordered_procedure->created_by = Auth::id(); - $ordered_procedure->save(); - } - } - - //insert sundries e.g vicryl sutures used into sundries deposit table so that they are billed too - $sundry_used_array = $request->sundries_used; - $sundry_quantity_array = $request->sundries_quantity_used; - - if($inpatient_info){ - - $inpatient_sundries = @unserialize($inpatient_info->sundries); - $sundries_array = isset($inpatient_sundries['sundries']) ? $inpatient_sundries['sundries'] : []; - $quantity_array = isset($inpatient_sundries['quantity']) ? $inpatient_sundries['quantity'] : []; - - //add the used sundries from theatre to any exisiting ones to inpatient - for ($i=0; $i < count($sundry_used_array); $i++) { - if (!is_null($sundry_used_array[$i])) { - $sundries_array[] = $sundry_used_array[$i]; - $quantity_array[] = $sundry_quantity_array[$i]; - } - } - - $unserialized_sundries_array = array( - "sundries" => $sundries_array, - "quantity" => $quantity_array - ); - - $inpatient_info->sundries = serialize($unserialized_sundries_array); - $inpatient_info->save(); - } else{ - for ($i=0; $i < count($sundry_used_array); $i++) { - if (!is_null($sundry_used_array[$i])) { - $ordered_sundry_objects = OrderedSundry::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->where('sundries_id',$sundry_used_array[$i])->get(); - - if (count($ordered_sundry_objects) > 0) { - foreach ($ordered_sundry_objects as $sundry_to_update) { - $sundry_to_update->quantity = $sundry_quantity_array[$i]; - $sundry_to_update->payment_status = 0; - $sundry_to_update->update(); - } - } else { - $ordered_sundry = new OrderedSundry; - $ordered_sundry->patient_id = $patient_id; - $ordered_sundry->episode_id = $episode_id; - $ordered_sundry->sundries_id = $sundry_used_array[$i]; - $ordered_sundry->quantity = $sundry_quantity_array[$i]; - $ordered_sundry->payment_status = 0; - $ordered_sundry->created_by = Auth::id(); - $ordered_sundry->save(); - } - } - } - } - - $surgery = Response::json(array('success' => true, 'last_insert_id' => $surgery->id), 200); - - if ($request->anaesthesia_complete) { - // update anaesthesia table with surgery_id - $update = DB::table('anaesthesias')->where('id',$anaesthesia_id )->update([ - "surgery_id" => $surgery->getData()->last_insert_id - ]); - } - - flash("Surgery information has been updated successfully")->success(); - return redirect("patient_episodes"); - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - // - } - - public function drugs_stock_sheet(Request $request) - { - $theatre_ward_id = get_name("theatre", "slug", "id", "wards"); - - if (!is_integer($theatre_ward_id)) { - flash('Theatre ward not registered')->error(); - return redirect()->back()->withInput(); - } - - $ward_stock_records = WardStock::where(['ward_id' => $theatre_ward_id, 'item_type' => 1])->get(); - - return view('theatre::theatre_surgeries.drugs_stock_sheet',compact('ward_stock_records', 'theatre_ward_id')); - } - - public function update_drugs_stock_sheet(Request $request) - { - $theatre_ward_id = $request->theatre_ward_id; - $drugs_ids_array = $request->drug_id; - $quantity_array = $request->quantity; - - for ($i=0; $i < count($drugs_ids_array); $i++) { - $drug_ward_stock = WardStock::where(['ward_id' => $theatre_ward_id, 'item_type' => 1, 'item_id' => $drugs_ids_array[$i]])->first(); - $drug_ward_stock->ward_item_stock = $quantity_array[$i]; - $drug_ward_stock->update(); - } - - return redirect('theatre_drugs_stock_sheet'); - } - - public function sundries_stock_sheet(Request $request) - { - $theatre_ward_id = get_name("theatre", "slug", "id", "wards"); - - if (!is_integer($theatre_ward_id)) { - flash('Theatre ward not registered')->error(); - return redirect()->back()->withInput(); - } - - $ward_stock_records = WardStock::where(['ward_id' => $theatre_ward_id, 'item_type' => 2])->get(); - - return view('theatre::theatre_surgeries.sundries_stock_sheet',compact('ward_stock_records', 'theatre_ward_id')); - } - - public function update_sundries_stock_sheet(Request $request) - { - //$items_array - $theatre_ward_id = $request->theatre_ward_id; - $sundry_ids_array = $request->sundry_id; - $quantity_array = $request->quantity; - - for ($i=0; $i < count($sundry_ids_array); $i++) { - $sundry_ward_stock = WardStock::where(['ward_id' => $theatre_ward_id, 'item_type' => 2, 'item_id' => $sundry_ids_array[$i]])->first(); - $sundry_ward_stock->ward_item_stock = $quantity_array[$i]; - $sundry_ward_stock->update(); - } - - return redirect('theatre_sundries_stock_sheet'); - } - - public function quick_add_procedure(Request $request) - { - // get all current price lists - $price_list = PriceListCategories::withTrashed()->select('id')->get(); - $price_list_category = []; - $price_list_price = []; - - foreach ($price_list as $record){ - array_push($price_list_category, $record->id); - array_push($price_list_price, $request->non_insured_price); - } - - $logged_in_user_id = Auth::user()->id; - $procedure = new Procedure; - - $procedure->name = $request->name; - $procedure->non_insured_price = $request->non_insured_price; - $procedure->insured_price = $request->insured_price; - $procedure->insurance = $request->insurance; - $procedure->price_list_category = implode(",", $price_list_category); - $procedure->price_list_price = implode(",", $price_list_price); - $procedure->account_id = $request->account_id; - $procedure->category_id = $request->category; - $procedure->hmis_number = $request->hmis_number; - /*== hmis stuff =====*/ - $procedure->hmis_no_outpatient = is_array($request->hmis_no_outpatient) ? implode(",", $request->hmis_no_outpatient) : ""; - $procedure->hmis_category = is_array($request->hmis_category) ? implode(",", $request->hmis_category) : ""; - $procedure->hmis_no_inpatient = $request->hmis_no_inpatient; - $procedure->hmis_category_inpatient = $request->hmis_category_inpatient; - /*===================*/ - $procedure->created_by = $logged_in_user_id; - $procedure->updated_by = $logged_in_user_id; - - if ($procedure->save()) { - $last_inserted_id = $procedure->id; - return $last_inserted_id; - } - return 'error occurred'; - } - - public function surgery_print($surgery_id) - { - $surgery = Surgery::withTrashed()->find($surgery_id); - if (!$surgery) { - return redirect()->back(); - } - - $patient_id = $surgery->patient_id; - $episode_id = $surgery->episode_id; - - $patient = Patient::find($patient_id); - $hospitalInfo = DB::table('hospital_information')->find(1); - $anaesthesia = Anaesthesia::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $diagnoses = DB::table('diagnoses')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck("name", "id")->prepend('- select -', ''); - - $data = [ - 'patient' => $patient, - 'patient_id' => $patient_id, - 'episode_id' => $episode_id, - 'hospitalInfo' => $hospitalInfo, - 'diagnoses' => $diagnoses, - 'anaesthesia' => $anaesthesia, - 'surgery' => $surgery - ]; - - $pdf = SnappyPDF::loadView('theatre::theatre_surgeries/surgery_print', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Stre@mline'); - - - return $pdf->inline('Surgery Details' . date(" d-m-y h:ia") . '.pdf'); - } -} diff --git a/docker/statistics/Modules/Theatre/Providers/RouteServiceProvider.php b/docker/statistics/Modules/Theatre/Providers/RouteServiceProvider.php deleted file mode 100755 index 3715a58b..00000000 --- a/docker/statistics/Modules/Theatre/Providers/RouteServiceProvider.php +++ /dev/null @@ -1,68 +0,0 @@ -mapApiRoutes(); - $this->mapWebRoutes(); - } - - /** - * Define the "web" routes for the application. - * - * These routes all receive session state, CSRF protection, etc. - * - * @return void - */ - protected function mapWebRoutes() - { - Route::middleware('web') - ->namespace($this->namespace) - ->group(module_path('Theatre', '/Routes/web.php')); - } - - /** - * Define the "api" routes for the application. - * - * These routes are typically stateless. - * - * @return void - */ - protected function mapApiRoutes() - { - Route::prefix('api') - ->middleware('api') - ->namespace($this->namespace) - ->group(module_path('Theatre', '/Routes/api.php')); - } -} diff --git a/docker/statistics/Modules/Theatre/Providers/TheatreServiceProvider.php b/docker/statistics/Modules/Theatre/Providers/TheatreServiceProvider.php deleted file mode 100644 index c3427ab6..00000000 --- a/docker/statistics/Modules/Theatre/Providers/TheatreServiceProvider.php +++ /dev/null @@ -1,113 +0,0 @@ -registerTranslations(); - $this->registerConfig(); - $this->registerViews(); - $this->loadMigrationsFrom(module_path($this->moduleName, 'Database/Migrations')); - } - - /** - * Register the service provider. - * - * @return void - */ - public function register() - { - $this->app->register(RouteServiceProvider::class); - } - - /** - * Register config. - * - * @return void - */ - protected function registerConfig() - { - $this->publishes([ - module_path($this->moduleName, 'Config/config.php') => config_path($this->moduleNameLower . '.php'), - ], 'config'); - $this->mergeConfigFrom( - module_path($this->moduleName, 'Config/config.php'), $this->moduleNameLower - ); - } - - /** - * Register views. - * - * @return void - */ - public function registerViews() - { - $viewPath = resource_path('views/modules/' . $this->moduleNameLower); - - $sourcePath = module_path($this->moduleName, 'Resources/views'); - - $this->publishes([ - $sourcePath => $viewPath - ], ['views', $this->moduleNameLower . '-module-views']); - - $this->loadViewsFrom(array_merge($this->getPublishableViewPaths(), [$sourcePath]), $this->moduleNameLower); - } - - /** - * Register translations. - * - * @return void - */ - public function registerTranslations() - { - $langPath = resource_path('lang/modules/' . $this->moduleNameLower); - - if (is_dir($langPath)) { - $this->loadTranslationsFrom($langPath, $this->moduleNameLower); - $this->loadJsonTranslationsFrom($langPath); - } else { - $this->loadTranslationsFrom(module_path($this->moduleName, 'Resources/lang'), $this->moduleNameLower); - $this->loadJsonTranslationsFrom(module_path($this->moduleName, 'Resources/lang')); - } - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides() - { - return []; - } - - private function getPublishableViewPaths(): array - { - $paths = []; - foreach (\Config::get('view.paths') as $path) { - if (is_dir($path . '/modules/' . $this->moduleNameLower)) { - $paths[] = $path . '/modules/' . $this->moduleNameLower; - } - } - return $paths; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/Theatre/Resources/views/anaesthetics/anaesthesia_print.blade.php b/docker/statistics/Modules/Theatre/Resources/views/anaesthetics/anaesthesia_print.blade.php deleted file mode 100755 index aa62e189..00000000 --- a/docker/statistics/Modules/Theatre/Resources/views/anaesthetics/anaesthesia_print.blade.php +++ /dev/null @@ -1,275 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Theatre Details - Stre@mline') }} - - - - - - - - - -
    - @include('layouts.header_pdf_print') -
    - {{ __('surgery.surgery_details') }} : {{ streamline_date($anaesthesia->created_at) }} -
    - -
    - - @php - $total_amount_to_pay = 0; - @endphp - -
    - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('surgery.patient_number') }}{{ $patient->number}} Anaethesia Type - {{ get_name($anaesthesia->anaesthesia_type , 'id', 'name', 'procedures') }} -
    {{ __('surgery.patient_names') }}{{ $patient->first_name}} {{ $patient->last_name}} {{ __('inpatient.age') }} - {{ get_patients_age($patient->date_of_birth) }} -
    {{ __('inpatient.residence') }}{{ patient_residence($patient->id) }} {{ __('inpatient.gender') }} - {{ $patient->gender == 1 ? __('inpatient.male') : __('inpatient.female') }} -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('anaesthetics.procedure') }}{{ get_name($anaesthesia->procedure_id, 'id', 'name', 'procedures') }}
    {{ __('anaesthetics.primary_diagnosis') }}{{ isset($diagnoses[$anaesthesia->primary_diagnosis]) ? $diagnoses[$anaesthesia->primary_diagnosis] : "" }}
    {{ __('anaesthetics.other_diagnoses') }} - @php - $other_diagnoses_array = @unserialize($anaesthesia->other_diagnoses); - @endphp - - @if(!empty($other_diagnoses_array) && $other_diagnoses_array[0] != "") - @foreach($other_diagnoses_array as $diagnosis) -
      - @if($diagnosis != "") -
    • {{ $diagnoses[$diagnosis] }}
    • - @endif -
    - @endforeach - @endif -
    {{ __('anaesthetics.date') }}{{ streamline_date($anaesthesia->created_at) }}
    {{ __('anaesthetics.time_anaesthesia_commenced') }}{{ date('h:i:s A', strtotime($anaesthesia->time_commenced)) }}
    {{ __('anaesthetics.anaesthetist') }}{{ get_full_name($anaesthesia->anaesthetist, 'id', 'first_name', 'last_name', 'users') }}
    {{ __('anaesthetics.anaesthetics') }}{{ get_name($anaesthesia->anaesthesia_type, 'id', 'name', 'procedures') }}
    {{ __('anaesthetics.blood_given') }}{{ $anaesthesia->blood_given }} units
    {{ __('anaesthetics.anaesthesia_checklist') }} - @php - $anaesthesia_checklist = ''; - $anaesthesia_checklist_array = unserialize($anaesthesia->anaesthesia_checklist); - foreach ($anaesthesia_checklist_array as $key => $value) { - if ($value == 1) { - $anaesthesia_checklist .= $key . ', '; - } - } - @endphp - {{ rtrim($anaesthesia_checklist, ', ') }} -
    {{ __('anaesthetics.monitoring_signs') }} - @php - $monitoring_signs = ''; - $monitoring_signs_array = unserialize($anaesthesia->monitoring_signs); - foreach ($monitoring_signs_array as $k => $v) { - if ($v == 1) { - $monitoring_signs .= $k . ', '; - } - } - @endphp - {{ rtrim($monitoring_signs, ', ') }} -
    {{ __('anaesthetics.type_of_needle_used') }}{{ get_name($anaesthesia->needle_type, 'id', 'name', 'needle_types') }}
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('anaesthetics.volume_administered') }}{{ $anaesthesia->volume_administered }} mls
    {{ __('anaesthetics.muscle_relaxants') }}{{ get_name($anaesthesia->muscle_relaxant, 'id', 'name', 'muscle_relaxants') }}
    {{ __('anaesthetics.checklist_confirmed_by') }}{{ get_full_name($anaesthesia->checklist_confirmed_by, 'id', 'first_name', 'last_name', 'users') }}
    {{ __('anaesthetics.induction') }}{{ get_name($anaesthesia->induction, 'id', 'name', 'anaesthesia_inductions') }}
    {{ __('anaesthetics.antibiotics') }} - @php - $antibiotics_array = explode(",", $anaesthesia->antibiotics) - @endphp - @for($i = 0; $i < count($antibiotics_array); $i++) - {{ $i + 1 }} - {{ get_name($antibiotics_array[$i], 'id', 'name', 'drugs') }}
    - @endfor -
    {{ __('anaesthetics.airway') }}{{ get_name($anaesthesia->airway, 'id', 'name', 'anaesthesia_airways') }}
    ETT{{ get_name($anaesthesia->ETT, 'id', 'name', 'anaesthesia_etts') }}
    {{ __('anaesthetics.agent_used') }}{{ get_name($anaesthesia->agent_used, 'id', 'name', 'anaesthetic_agents') }}
    {{ __('anaesthetics.technique') }}{{ get_name($anaesthesia->technique, 'id', 'name', 'anaesthetic_techniques') }}
    {{ __('anaesthetics.analgesics') }} - @php - $analgesics_array = explode(",", $anaesthesia->analgesic); - @endphp - @if (count($analgesics_array) > 0) -
      - @for ($i = 0; $i < count($analgesics_array); $i++) -
    • {{ get_name($analgesics_array[$i], 'id', 'name', 'analgesics') }}
    • - @endfor -
    - @endif -
    {{ __('anaesthetics.volatile_liquid_anaethetics') }}{{ get_name($anaesthesia->volatile_liquid_anaethetics, "id", "name", "volatile_liquid_anaesthetics") }}
    {{ __('anaesthetics.volatile_liquid_anaesthetic_used') }}{{ $anaesthesia->volatile_liquid_anaesthetic_used }} mls
    {{ __('anaesthetics.iv_fluids_used') }} - @php - $iv_fluids = ''; - $iv_fluid_array = unserialize($anaesthesia->iv_fluids); - $iv_fluid_ids = $iv_fluid_array['iv_fluids']; - $iv_fluid_units = $iv_fluid_array['units']; - - if (!empty($iv_fluid_ids)) { - foreach ($iv_fluid_ids as $x => $y) { - $iv_fluids .= '* ' . (isset($iv_fluid_units[$x]) ? $iv_fluid_units[$x] : "") . ': ' . $iv_fluid_units[$x] . ' mls
    '; - } - } - @endphp - {!! $iv_fluids !!} -
    -
    -
    - -

    - {{ __('surgery.comments') }} - -
    -
    - - - - - - -
    - {!! nl2br(e($anaesthesia->comments)) !!} -
    -
    -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/Theatre/Resources/views/anaesthetics/create.blade.php b/docker/statistics/Modules/Theatre/Resources/views/anaesthetics/create.blade.php deleted file mode 100755 index e9d3bf53..00000000 --- a/docker/statistics/Modules/Theatre/Resources/views/anaesthetics/create.blade.php +++ /dev/null @@ -1,1355 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('anaesthetics.theatre_module_anaesthetics') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -@if(isset($anaesthesia_records) && count($anaesthesia_records) > 0) -
    -
    - {{ __('anaesthetics.previous_anaesthesia_started_on') }} {{ streamline_date(get_name($episode_id, 'id', 'created_at', 'patient_episodes')) }} - - - - - - - - - - - - @foreach($anaesthesia_records as $anaesthesia) - - - - - - - - - - @endforeach - -
    {{ __('anaesthetics.procedure') }}{{ __('anaesthetics.surgery') }}{{ __('anaesthetics.anaesthetist') }}{{ __('anaesthetics.time_of_commencement') }}{{ __('anaesthetics.date') }}
    {{ get_name($anaesthesia->procedure_id,'id','name','procedures') }}{!! $anaesthesia->surgery_id != null ? 'Done' : 'Not done' !!}{{ get_name($anaesthesia->anaesthetist,'id','first_name','users') }}{{ $anaesthesia->time_commenced }}{{ streamline_date($anaesthesia->created_at) }}{{ __('anaesthetics.view_details') }}Edit Anaethesia
    -
    -
    -@endif - -
    -
    - @include('flash::message') - - @php - $consultation = \Streamline\Models\Consultation::where(['episode_id' => $episode_id, 'patient_id' => $patient_id])->first(); - @endphp - - @foreach ($errors->all() as $error) -
    {{ $error }}
    - @endforeach - -
    -

    {{ __('anaesthetics.create_new_anaesthesia') }}


    - {{ Form::open(['route' => 'anaesthetics.store','data-toggle'=>'validator']) }} -
    -
    -
    - - - - - - - - - - - - - - - - - - - -
    {{ __('inpatient.primary_diagnosis') }}{{ __('inpatient.prompt') }}{{ __('inpatient.references') }}
    -
    - {{ Form::select('primary_diagnosis', $diagnoses, $consultation ? $consultation->primary_diagnosis : "", ['class' => 'form-control select_field col-sm-12 compulsory', 'required', 'id' => 'primary_diagnosis']) }} -
    -
    {{ (isset($consultation->primary_diagnosis) && $consultation->primary_diagnosis != 0) ? $diagnoses_all->firstWhere('id',$consultation->primary_diagnosis)->prompts : "" }} 
    -
    - @if(!is_null($consultation) && $consultation->primary_diagnosis != 0) - @php - $reference_names = explode(",", get_name($consultation->primary_diagnosis, 'id', 'reference_names', 'diagnoses')); - $reference_areas = explode(",", get_name($consultation->primary_diagnosis, 'id', 'reference_areas', 'diagnoses')); - @endphp - @for($i = 0; $i < count($reference_names); $i++) - @if(isset($reference_areas[$i]) && isset($reference_names[$i])) - {{ $reference_names[$i] }} | - @endif - @endfor - @endif -
    -
    - {{ __('consultations.add_new_diagnosis') }} -
    -
    - -
    - -
    - - - - - - - - - - - @php - $other_diagnoses = []; - - if($consultation){ - $other_diagnoses = @unserialize($consultation->other_diagnoses); - } - @endphp - - @if(empty($other_diagnoses)) - - - - - - - @else - @foreach($other_diagnoses as $diagnosis) - - - - - - - @endforeach - @endif - -
    #{{ __('inpatient.other_diagnosis') }}{{ __('inpatient.prompt') }}{{ __('inpatient.references') }}
    - {{ Form::select('other_diagnosis[]', $diagnoses, '', ['class' => 'form-control col-sm-12 sec_d']) }} -
     
     
    - {{ Form::select('other_diagnosis[]', $diagnoses, $diagnosis, ['class' => 'form-control col-sm-12 select sec_d']) }} -
    {{ is_object($diagnoses_all->firstWhere('id',$diagnosis)) ? $diagnoses_all->firstWhere('id',$diagnosis)->prompts : '' }} 
    {{ is_object($diagnoses_all->firstWhere('id',$diagnosis)) ? $diagnoses_all->firstWhere('id',$diagnosis)->reference_names : '' }} 
    -
    - - {{ __('inpatient.add_row') }} - {{ __('inpatient.delete_row') }} -
    - - - @php $surgery_complete = false; @endphp - @if(!is_null($surgery_done)) - @php $surgery_complete = true; @endphp - - @endif - - -
    -

    -
    - {{ Form::label('procedure_id',__('anaesthetics.surgical_procedure')) }} - {{ Form::select('procedure_id',$procedures,$surgery_complete ? $surgery_done->procedure_id : "",['class' => 'form-control compulsory', 'required', 'data-error'=>'','id'=>'procedure_id']) }} -
    -
    - -
    - {{ Form::label('anaesthetist',__('anaesthetics.anaesthetist')) }} - {{ Form::select('anaesthetist',$doctors,'',['class' => 'form-control compulsory', 'required', 'data-error'=>'','id'=>'anaesthetist']) }} -
    - add new doctor -
    - -
    - {{ Form::label('anaesthetic_commence_time',__('anaesthetics.time_anaesthesia_commenced')) }} - {{ Form::time('anaesthetic_commence_time','',['class' => 'form-control compulsory', 'required', 'data-error'=>'','id'=>'anaesthetic_commence_time']) }} -
    -
    - -
    - {{ Form::label('mallampati_score',__('anaesthetics.mallampati_score')) }} - (Click To View Mallampati Details) - -
    - -
    - {{ Form::label('asa_classfication',__('anaesthetics.asa_classification')) }} - (Click To View ASA Classification Details) - -
    - -
    -
    - {{ Form::label('sundries_used','Sundries used') }} - {{ Form::select('sundries_used[]',$sundries_array,'',['class' => 'form-control sundries_sutures select_field', 'data-error'=>'','id'=>'vicryl_sutures_used']) }} -
    -
    - {{ Form::label('sundries_quantity_used','Quantity used') }} - {{ Form::number('sundries_quantity_used[]','',['class' => 'form-control', 'data-error'=>'']) }} -
    -
    - Add other sundries used

    - -
    -
    - {{ Form::label('extras_used','Extras used') }} - {{ Form::text('extras_used[]','',['class' => 'form-control', 'data-error'=>'']) }} -
    -
    - {{ Form::label('extras_cost','Cost') }} - {{ Form::number('extras_cost[]','',['class' => 'form-control', 'data-error'=>'']) }} -
    -
    - Add other extras used

    -
    - -
    -

    -
    - {{ Form::label('checklist_confirmed_by', __('anaesthetics.who_surgery_confirmed_by')) }} - {{ Form::select('checklist_confirmed_by',$nurses,'',['class' => 'form-control compulsory', 'required', 'data-error'=>'','id' => 'checklist_confirmed_by']) }} -
    - add new nurse -
    - -
    - {{ Form::label('anaesthesia_type', __('anaesthetics.type_of_anaethesia')) }} - {{ Form::select('anaesthesia_type',$anaesthesia_types,'',['class' => 'form-control compulsory', 'required', 'data-error'=>'','id' => 'anaesthesia_type']) }} -
    -
    - - - - - - - - -
    - -
    -

    - - - - - - -
    - {{ Form::label('comments', __('anaesthetics.comments')) }} - {{ Form::textarea('comments','',['class' => 'form-control', 'data-error'=>'','cols'=>'4']) }} -
    -
    - -
    - - {{ __('anaesthetics.any_risks_alert') }} -
    - -
    - -
    - -
    -
    -
    -
    -
    - - -
    -
    -
    -
    - - {{ Form::select('drugs[]', $drugs, '', ['class' => 'form-control select select_field','style'=>'margin-bottom: 5px;']) }} -
    -
    - - {{ Form::number('dose[]', '', ['class' => 'form-control']) }} -
    -
    - - {{ Form::select("units[]", $units, "", ["class" => "form-control select"]) }} -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - - - - - -@include('patients::consultations.add_diagnosis') - -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Theatre/Resources/views/anaesthetics/edit.blade.php b/docker/statistics/Modules/Theatre/Resources/views/anaesthetics/edit.blade.php deleted file mode 100755 index d61a9867..00000000 --- a/docker/statistics/Modules/Theatre/Resources/views/anaesthetics/edit.blade.php +++ /dev/null @@ -1,1266 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    Theatre module - anaesthetics

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - - -
    -
    - @include('flash::message') - - @foreach ($errors->all() as $error) -
    {{ $error }}
    - @endforeach - -
    -

    EDIT ANAESTHESIA


    - {{ Form::model($anaesthesia_record,['method' => 'PUT','route' => ['anaesthetics.update',$anaesthesia_record->id],'data-toggle'=>'validator']) }} -
    -
    -
    - - - - - - - - - - - - - - - -
    {{ __('inpatient.primary_diagnosis') }}{{ __('inpatient.prompt') }}{{ __('inpatient.references') }}
    -
    - {{ Form::select('primary_diagnosis', $diagnoses, $anaesthesia_record ? $anaesthesia_record->primary_diagnosis : "", ['class' => 'form-control select col-sm-12 compulsory', 'required', 'id' => 'primary_diagnosis']) }} -
    -
    {{ (isset($anaesthesia_record->primary_diagnosis) && $anaesthesia_record->primary_diagnosis != 0) ? $diagnoses_all->firstWhere('id',$anaesthesia_record->primary_diagnosis)->prompts : "" }} 
    -
    - @if(!is_null($anaesthesia_record) && $anaesthesia_record->primary_diagnosis != 0) - @php - $reference_names = explode(",", get_name($anaesthesia_record->primary_diagnosis, 'id', 'reference_names', 'diagnoses')); - $reference_areas = explode(",", get_name($anaesthesia_record->primary_diagnosis, 'id', 'reference_areas', 'diagnoses')); - @endphp - @for($i = 0; $i < count($reference_names); $i++) - @if(isset($reference_areas[$i]) && isset($reference_names[$i])) - {{ $reference_names[$i] }} | - @endif - @endfor - @endif -
    -
    -
    - -
    - -
    - - - - - - - - - - - @php - $other_diagnoses = []; - - if($anaesthesia_record){ - $other_diagnoses = @unserialize($anaesthesia_record->other_diagnoses); - } - @endphp - - @if(empty($other_diagnoses)) - - - - - - - @else - @foreach($other_diagnoses as $diagnosis) - - - - - - - @endforeach - @endif - -
    #{{ __('inpatient.other_diagnosis') }}{{ __('inpatient.prompt') }}{{ __('inpatient.references') }}
    - {{ Form::select('other_diagnosis[]', $diagnoses, '', ['class' => 'form-control col-sm-12 sec_d']) }} -
     
     
    - {{ Form::select('other_diagnosis[]', $diagnoses, $diagnosis, ['class' => 'form-control col-sm-12 select sec_d']) }} -
    {{ is_object($diagnoses_all->firstWhere('id',$diagnosis)) ? $diagnoses_all->firstWhere('id',$diagnosis)->prompts : '' }} 
    {{ is_object($diagnoses_all->firstWhere('id',$diagnosis)) ? $diagnoses_all->firstWhere('id',$diagnosis)->reference_names : '' }} 
    -
    - - {{ __('inpatient.add_row') }} - {{ __('inpatient.delete_row') }} -
    - - @php $surgery_complete = false; @endphp - @if(!is_null($surgery_done)) - @php $surgery_complete = true; @endphp - - @endif - - {{ Form::hidden('patient_id', $patient_id) }} - {{ Form::hidden('episode_id', $episode_id) }} - - -
    -

    -
    - {{ Form::label('procedure_id','Surgical procedure') }} - {{ Form::select('procedure_id', $procedures, $anaesthesia_record->procedure_id,['class' => 'form-control compulsory', 'required', 'data-error'=>'','id'=>'procedure_id']) }} -
    -
    - -
    - {{ Form::label('anaesthetist','Anaesthetist') }} - {{ Form::select('anaesthetist',$all_staff,$anaesthesia_record->anaesthetist,['class' => 'form-control compulsory', 'required', 'data-error'=>'','id'=>'anaesthetist']) }} -
    - add new doctor -
    - -
    - {{ Form::label('anaesthetic_commence_time','Time anaesthesia commenced') }} - {{ Form::time('anaesthetic_commence_time',$anaesthesia_record->time_commenced,['class' => 'form-control compulsory', 'required', 'data-error'=>'','id'=>'anaesthetic_commence_time']) }} -
    -
    - -
    - {{ Form::label('mallampati_score',__('anaesthetics.mallampati_score')) }} - (Click To View Mallampati Details) - -
    - -
    - {{ Form::label('asa_classfication',__('anaesthetics.asa_classification')) }} - (Click To View ASA Classification Details) - -
    - -
    - @php - $sundries_unserialized_array = @unserialize($anaesthesia_record->sundries_used); - - $used_sundries_ids_array = isset($sundries_unserialized_array['sundries']) ? $sundries_unserialized_array['sundries'] : []; - - $used_sundries_quantities_array = isset($sundries_unserialized_array['quantity']) ? $sundries_unserialized_array['quantity'] : []; - @endphp - - @if(!empty($used_sundries_ids_array)) - @for($i=0; $i < count($used_sundries_ids_array) ; $i++) -
    - {{ Form::label('sundries_used','Sundries used') }} - {{ Form::select('sundries_used[]',$sundries_array,$used_sundries_ids_array[$i],['class' => 'form-control sundries_sutures', 'data-error'=>'']) }} -
    -
    - {{ Form::label('sundries_quantity_used','Quantity used') }} - {{ Form::number('sundries_quantity_used[]',$used_sundries_quantities_array[$i],['class' => 'form-control', 'data-error'=>'']) }} -
    - @endfor - @else -
    - {{ Form::label('sundries_used','Sundries used') }} - {{ Form::select('sundries_used[]',$sundries_array,'',['class' => 'form-control sundries_sutures', 'data-error'=>'','id'=>'vicryl_sutures_used']) }} -
    -
    - {{ Form::label('sundries_quantity_used','Quantity used') }} - {{ Form::number('sundries_quantity_used[]','',['class' => 'form-control', 'data-error'=>'']) }} -
    - @endif -
    - Add other sundries used

    - -
    - @php - $theatre_extras_used = @unserialize($anaesthesia_record->extras_used); - - $extras_array = isset($theatre_extras_used['extras']) ? $theatre_extras_used['extras'] : []; - - $extras_cost_array = isset($theatre_extras_used['cost']) ? $theatre_extras_used['cost'] : []; - @endphp - - @if(count($extras_array) > 0) - @for($j = 0; $j < count($extras_array); $j++) -
    - {{ Form::label('extras_used','Extras used') }} - {{ Form::text('extras_used[]','',['class' => 'form-control', 'data-error'=>'']) }} -
    -
    - {{ Form::label('extras_cost','Cost') }} - {{ Form::number('extras_cost[]',$extras_cost_array[$j],['class' => 'form-control', 'data-error'=>'']) }} -
    - @endfor - @else -
    - {{ Form::label('extras_used','Extras used') }} - {{ Form::text('extras_used[]','',['class' => 'form-control', 'data-error'=>'']) }} -
    -
    - {{ Form::label('extras_cost','Cost') }} - {{ Form::number('extras_cost[]','',['class' => 'form-control', 'data-error'=>'']) }} -
    - @endif -
    - Add other extras used

    - -
    -
    -
    - - {{ Form::select('drugs[]', $drugs, '', ['class' => 'form-control select','style'=>'margin-bottom: 5px;']) }} -
    -
    - - {{ Form::number('dose[]', '', ['class' => 'form-control']) }} -
    -
    - - {{ Form::select("units[]", $units, "", ["class" => "form-control select"]) }} -
    -
    -
    - -
    - -
    -

    -
    - {{ Form::label('checklist_confirmed_by','WHO Safe Surgery Checklist confirmed by') }} - {{ Form::select('checklist_confirmed_by',$all_staff,$anaesthesia_record->checklist_confirmed_by,['class' => 'form-control compulsory', 'required', 'data-error'=>'','id' => 'checklist_confirmed_by']) }} -
    - add new nurse -
    - -
    - {{ Form::label('anaesthesia_type','Type of anaesthesia') }} - {{ Form::select('anaesthesia_type',$anaesthesia_types, $anaesthesia_record->anaesthesia_type,['class' => 'form-control compulsory', 'required', 'data-error'=>'','id' => 'anaesthesia_type']) }} -
    -
    - - @php - $anaesthesia_type = $anaesthesia_record->anaesthesia_type; - $procedure = \Streamline\Models\Procedure::find($anaesthesia_type); - $procedure_slug = $procedure->slug; - $induction_array = $anaesthesia_record->induction ? explode(",", $anaesthesia_record->induction) : []; - @endphp - - @if($procedure_slug == "General") -
    -
    - {{ Form::label('induction','Induction') }} - {{ Form::select('induction[]',$anaesthesia_inductions,$induction_array, ['class' => 'form-control', 'id' => 'induction', 'multiple' => 'true']) }} -
    -
    -
    - @else - - @endif - -
    - - - @php - $anaesthesia_checklist = unserialize($anaesthesia_record->anaesthesia_checklist); - @endphp - - - - - - - - - - - - - - - - - - -
    Adrenaline Atropine Diazepam
    Ergometrine Ephedrine Hydralazine
    Misoprostol Oxygen Oxytocin
    Paracetamol Suppository Tranexamic acid
    -
    -
    - {{ Form::label('antibiotics','Antibiotics') }} - @php - $antibiotics_array = explode(',', $anaesthesia_record->antibiotics); - @endphp -
    - @if(!empty($antibiotics_array)) - @for($i = 0; $i < count($antibiotics_array); $i++) - {{ Form::select('antibiotics[]',$anti_biotics,$antibiotics_array[$i],['class' => 'form-control compulsory antibiotics', 'required', 'data-error'=>'', 'style' => 'width: 85%; display: inline-block']) }} - @endfor - @else - {{ Form::select('antibiotics[]',$anti_biotics,'',['class' => 'form-control compulsory antibiotics', 'required', 'data-error'=>'', 'style' => 'width: 85%; display: inline-block']) }} - @endif - - Add +
    -
    -
    - -
    - {{ Form::label('airway','Airway') }} - {{ Form::select('airway', $airways, $anaesthesia_record->airway,['class' => 'form-control compulsory', 'required', 'data-error'=>'','id' => 'airway']) }} -
    - Add new -
    -
    - - @if($procedure_slug == "General") -
    - {{ Form::label('ett','ETT (mm)') }} - {{ Form::select('ett',$anaesthesia_etts,$anaesthesia_record->ETT,['class' => 'form-control', 'data-error'=>'','id' => 'ett']) }} -
    - @else - - @endif - - @php - $agent_used_array = $anaesthesia_record->agent_used ? explode(",", $anaesthesia_record->agent_used) : []; - $technique_array = $anaesthesia_record->technique ? explode(",", $anaesthesia_record->technique) : []; - @endphp - - -
    - -
    -

    - @if($procedure_slug == "General" || $procedure_slug == "Regional" || $procedure_slug == "Local" || $procedure_slug == "Spinal") - @php $monitoring_signs = unserialize($anaesthesia_record->monitoring_signs); @endphp -
    -
    - - MONITORING in addition to routine manual pulse, respiration,bp,auscultation in all patients. -
    - - - - - - - - - - - - - - - - - - - - -
    Continuous SaO2
    Intermittent SaO2
    Full vital signs monitor
    End tidal CO2
    -
    -
    - @else - - @endif - - @if($procedure_slug == "Spinal") -
    -
    - {{ Form::label('needle_type','Type of needle used') }} - {{ Form::select('needle_type',$needle_types,$anaesthesia_record->needle_type,['class' => 'form-control', 'data-error'=>'','id' => 'needle_type']) }} -
    -
    - - @php - $agent_used_array = $anaesthesia_record->agent_used ? explode(",", $anaesthesia_record->agent_used) : []; - $technique_array = $anaesthesia_record->technique ? explode(",", $anaesthesia_record->technique) : []; - @endphp - -
    - {{ Form::label('agent_used','Agent used') }} - {{ Form::select('agent_used',$anaesthetic_agents,$agent_used_array,['class' => 'form-control', 'multiple'=>'true','id' => 'agent_used']) }} -
    -
    - -
    - {{ Form::label('volume_administered','Volume administered (mls)') }} - {{ Form::number('volume_administered',$anaesthesia_record->volume_administered,['class' => 'form-control compulsory', 'step'=>'0.1','id' => 'volume_administered']) }} -
    -
    -
    - @else - - @endif - - @if($procedure_slug == "General") -
    -
    - {{ Form::label('muscle_relaxant','Muscle relaxants') }} - {{ Form::select('muscle_relaxant',$muscle_relaxants,$anaesthesia_record->muscle_relaxant,['class' => 'form-control', 'data-error'=>'','id' => 'muscle_relaxant']) }} -
    -
    - -
    - {{ Form::label('volatile_liquid_anaethetics', __('anaesthetics.volatile_liquid_anaethetics')) }} - {{ Form::select('volatile_liquid_anaethetics',$volatile_liquid_anaethetics,$anaesthesia_record->volatile_liquid_anaethetics,['class' => 'form-control', 'data-error'=>'','id' => 'volatile_liquid_anaethetics']) }} -
    -
    - -
    - {{ Form::label('volatile_liquid_anaesthetic_used',__('anaesthetics.volatile_liquid_anaesthetic_used')) }} - {{ Form::number('volatile_liquid_anaesthetic_used',$anaesthesia_record->volatile_liquid_anaesthetic_used,['class' => 'form-control compulsory', 'step'=>'0.1','id' => 'volatile_liquid_anaesthetic_used']) }} -
    -
    - - -
    - @else - - @endif - -
    -
    - @php - $analgesic_array = explode(",", $anaesthesia_record->analgesic); - @endphp - {{ Form::label('analgesic','Analgesics') }} - {{ Form::select('analgesic[]',$analgesics,$analgesic_array,['class' => 'form-control', 'data-error'=>'','id' => 'analgesic', 'multiple' => 'true']) }} -
    - add new -
    - - @php - $iv_fluids_array = unserialize($anaesthesia_record->iv_fluids); - $fluids_array = []; $units_array = []; - - if(!empty($iv_fluids_array)){ - $fluids_array = $iv_fluids_array['iv_fluids']; - $units_array = $iv_fluids_array['units']; - } - @endphp - -
    -
    - Iv fluids given during surgery -
    -
    - Add+ -
    -
    -
    -
    - - - @foreach($iv_fluid_ids as $k => $v) - - @endforeach - - - @if(!empty($iv_fluids_array)) - @for($i=0; $i < count($iv_fluids_array); $i++) - {{ Form::select('iv_fluid_id[]',$iv_fluids,isset($iv_fluids_array[$i]) ? $iv_fluids_array[$i] : '',['class' => 'form-control col-sm-7']) }}   - (mls)
    - @endfor - @endif -
    -
    -
    -
    -
    -
    - -
    - {{ Form::label('blood_given','Blood given (units)') }} - {{ Form::number('blood_given',$anaesthesia_record->blood_given,['class' => 'form-control compulsory', 'step'=>'0.1','id' => 'blood_given']) }} -
    -
    -
    - -
    - {{ Form::label('comments','Comments') }} - {{ Form::textarea('comments',$anaesthesia_record->comments,['class' => 'form-control', 'data-error'=>'','cols'=>'4']) }} -
    -
    - -
    - - If any risks identified for future procedures, please note them in Alerts box on top of Patient Home page. -
    - -
    - -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - - - - - - -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Theatre/Resources/views/anaesthetics/history.blade.php b/docker/statistics/Modules/Theatre/Resources/views/anaesthetics/history.blade.php deleted file mode 100755 index be99e212..00000000 --- a/docker/statistics/Modules/Theatre/Resources/views/anaesthetics/history.blade.php +++ /dev/null @@ -1,66 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    View Anaesthetics History

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - - @include('flash::message') - -
    -
    -
    -
    - - - - - - - - - - - @foreach($anaesthesia_records as $anaesthesia) - - - - - - - - - @endforeach - -
    ProcedureSurgeryAnaesthetistTime Of CommencementDate
    {{ get_name($anaesthesia->procedure_id,'id','name','procedures') }}{!! $anaesthesia->surgery_id != null ? get_name($anaesthesia->procedure_id, 'id','name','procedures') : 'Not done' !!}{{ get_full_name($anaesthesia->anaesthetist,'id','first_name','last_name','users') }}{{ $anaesthesia->time_commenced }}{{ streamline_date($anaesthesia->created_at) }}View Details
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/Theatre/Resources/views/anaesthetics/show.blade.php b/docker/statistics/Modules/Theatre/Resources/views/anaesthetics/show.blade.php deleted file mode 100755 index 82175794..00000000 --- a/docker/statistics/Modules/Theatre/Resources/views/anaesthetics/show.blade.php +++ /dev/null @@ -1,142 +0,0 @@ -@extends('layouts.main') - -@push('scripts') - -@endpush - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    Anaesthesia details

    -
    -
    - -
    -
    - -@php -$patient_id = session('patient_id'); -$episode_id = session('episode_id'); -@endphp - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    -
    -
    -
    ANAESTHESIA DETAILS FOR EPISODE STARTED ON {{ streamline_date(get_name($episode_id, 'id', 'created_at', 'patient_episodes')) }} -
    -
    -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - -
    ProcedureSurgeryAnaesthetistTime Of Commencement
    {{ get_name($anaesthesia_record->procedure_id, 'id', 'name', 'procedures') }}{!! $anaesthesia_record->surgery_id != null ? get_name($anaesthesia_record->surgery_id, 'id', 'name', 'surgeries'): 'Not done' !!}{{ get_name($anaesthesia_record->anaesthetist, 'id', 'first_name', 'users') }}{{ $anaesthesia_record->time_commenced }}
    -
    -
    -
    -
    -
    -
    -
    -
    - @if(count($inpatient_info) > 0) -
    -
    IN PATIENT DETAILS -
    - - -
    -
    - -
    - @else -
    -
    ORDERED PROCEDURE DETAILS -
    - - -
    -
    -
    - - - - - - - - - - - - - - - -
    ProcedurePerformedCreated by
    {{ get_name($ordered_procedure->procedure_id, 'id', 'name', 'procedures') }}{{ $ordered_procedure->perfomed == 1 ? 'Yes' : 'No' }}{{ get_name($ordered_procedure->created_by, 'id', 'first_name', 'users') }}
    -
    -
    - @endif -
    -
    -@endsection - - - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/Theatre/Resources/views/anaesthetics/view_history.blade.php b/docker/statistics/Modules/Theatre/Resources/views/anaesthetics/view_history.blade.php deleted file mode 100755 index 1985cbeb..00000000 --- a/docker/statistics/Modules/Theatre/Resources/views/anaesthetics/view_history.blade.php +++ /dev/null @@ -1,329 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('anaesthetics.view_anaesthetics_history') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('anaesthetics.items') }}{{ __('anaesthetics.details') }}
    {{ __('anaesthetics.procedure') }}{{ get_name($anaesthesia->procedure_id, 'id', 'name', 'procedures') }}
    {{ __('anaesthetics.date') }}{{ streamline_date($anaesthesia->created_at) }}
    {{ __('anaesthetics.time_anaesthesia_commenced') }}{{ date('h:i:s A', strtotime($anaesthesia->time_commenced)) }}
    {{ __('anaesthetics.primary_diagnosis') }}{{ isset($diagnoses[$anaesthesia->primary_diagnosis]) ? $diagnoses[$anaesthesia->primary_diagnosis] : "" }}
    {{ __('anaesthetics.other_diagnoses') }} - @php - $other_diagnoses_array = @unserialize($anaesthesia->other_diagnoses); - @endphp - - @if(!empty($other_diagnoses_array) && $other_diagnoses_array[0] != "") - @foreach($other_diagnoses_array as $diagnosis) -
      - @if($diagnosis != "") -
    • {{ $diagnoses[$diagnosis] }}
    • - @endif -
    - @endforeach - @endif -
    {{ __('anaesthetics.anaesthetist') }}{{ get_full_name($anaesthesia->anaesthetist, 'id', 'first_name', 'last_name', 'users') }}
    {{ __('anaesthetics.anaesthetics') }}{{ get_name($anaesthesia->anaesthesia_type, 'id', 'name', 'procedures') }}
    {{ __('anaesthetics.blood_given') }}{{ $anaesthesia->blood_given }} units
    {{ __('anaesthetics.anaesthesia_checklist') }} - @php - $anaesthesia_checklist = ''; - $anaesthesia_checklist_array = unserialize($anaesthesia->anaesthesia_checklist); - foreach ($anaesthesia_checklist_array as $key => $value) { - if ($value == 1) { - $anaesthesia_checklist .= $key . ', '; - } - } - @endphp - {{ rtrim($anaesthesia_checklist, ', ') }} -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('anaesthetics.items') }}{{ __('anaesthetics.details') }}
    {{ __('anaesthetics.checklist_confirmed_by') }}{{ get_full_name($anaesthesia->checklist_confirmed_by, 'id', 'first_name', 'last_name', 'users') }}
    {{ __('anaesthetics.induction') }} - @php - $induction_array = $anaesthesia->induction ? explode(",", $anaesthesia->induction) : []; - @endphp -
      - @for ($i = 0; $i < count($induction_array); $i++) -
    • {{ get_name($induction_array[$i], 'id', 'name', 'anaesthesia_inductions') }}
    • - @endfor -
    -
    {{ __('anaesthetics.antibiotics') }} - @php - $antibiotics_array = explode(",", $anaesthesia->antibiotics) - @endphp - @for($i = 0; $i < count($antibiotics_array); $i++) - {{ $i + 1 }} - {{ get_name($antibiotics_array[$i], 'id', 'name', 'drugs') }}
    - @endfor -
    {{ __('anaesthetics.airway') }}{{ get_name($anaesthesia->airway, 'id', 'name', 'anaesthesia_airways') }}
    ETT{{ get_name($anaesthesia->ETT, 'id', 'name', 'anaesthesia_etts') }}
    {{ __('anaesthetics.agent_used') }} - @php - $agent_used_array = $anaesthesia->agent_used ? explode(",", $anaesthesia->agent_used) : []; - @endphp - @for ($i = 0; $i < count($agent_used_array); $i++) -
      - {{ get_name($agent_used_array[$i], 'id', 'name', 'anaesthetic_agents') }} -
    - @endfor -
    {{ __('anaesthetics.technique') }} - @php - $technique_array = $anaesthesia->technique ? explode(",", $anaesthesia->technique) : []; - @endphp - @for ($i = 0; $i < count($technique_array); $i++) -
      - {{ get_name($technique_array[$i], 'id', 'name', 'anaesthetic_techniques') }} -
    - @endfor -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('anaesthetics.items') }}{{ __('anaesthetics.details') }}
    {{ __('anaesthetics.monitoring_signs') }} - @php - $monitoring_signs = ''; - $monitoring_signs_array = unserialize($anaesthesia->monitoring_signs); - foreach ($monitoring_signs_array as $k => $v) { - if ($v == 1) { - $monitoring_signs .= $k . ', '; - } - } - @endphp - {{ rtrim($monitoring_signs, ', ') }} -
    {{ __('anaesthetics.type_of_needle_used') }}{{ get_name($anaesthesia->needle_type, 'id', 'name', 'needle_types') }}
    {{ __('anaesthetics.volume_administered') }}{{ $anaesthesia->volume_administered }} mls
    {{ __('anaesthetics.muscle_relaxants') }}{{ get_name($anaesthesia->muscle_relaxant, 'id', 'name', 'muscle_relaxants') }}
    {{ __('anaesthetics.analgesics') }} - @php - $analgesics_array = explode(",", $anaesthesia->analgesic); - @endphp - @if (count($analgesics_array) > 0) -
      - @for ($i = 0; $i < count($analgesics_array); $i++) -
    • {{ get_name($analgesics_array[$i], 'id', 'name', 'analgesics') }}
    • - @endfor -
    - @endif -
    {{ __('anaesthetics.volatile_liquid_anaethetics') }}{{ get_name($anaesthesia->volatile_liquid_anaethetics, "id", "name", "volatile_liquid_anaesthetics") }}
    {{ __('anaesthetics.volatile_liquid_anaesthetic_used') }}{{ $anaesthesia->volatile_liquid_anaesthetic_used }} mls
    {{ __('anaesthetics.iv_fluids_used') }} - @php - $iv_fluids = ''; - $iv_fluid_array = unserialize($anaesthesia->iv_fluids); - $iv_fluid_ids = $iv_fluid_array['iv_fluids']; - $iv_fluid_units = $iv_fluid_array['units']; - - if (!empty($iv_fluid_ids)) { - foreach ($iv_fluid_ids as $x => $y) { - $iv_fluids .= '* ' . (isset($iv_fluid_units[$x]) ? $iv_fluid_units[$x] : "") . ': ' . $iv_fluid_units[$x] . ' mls
    '; - } - } - @endphp - {!! $iv_fluids !!} -
    {{ __('anaesthetics.comments') }}{!! nl2br(e($anaesthesia->comments)) !!}
    - -  Edit   -  Print -
    -
    -
    -
    - -
    - @php - $drugs_given_anae = unserialize($anaesthesia->other_drugs_given); - $drugs_given_anae_cost = unserialize($anaesthesia->other_drugs_cost); - $do_not_bill_other_drugs = explode(",", $anaesthesia->other_drugs_bill); - @endphp - - @if(count($drugs_given_anae) > 0) -
    -

    {{ __('anaesthetics.other_drugs_given') }}

    - -
    - - - - - - - - - - - @for($i = 0; $i < count($drugs_given_anae); $i++) - @php - $cost = isset($drugs_given_anae_cost[$i]) ? trim($drugs_given_anae_cost[$i]) : 0; - @endphp - - - - - - - @endfor - -
    {{ __('inpatient.drug_name') }}{{ __('inpatient.dose') }}{{ __('inpatient.cost') }}
    {{ get_name($drugs_given_anae[$i]['id'], 'id', 'name', 'drugs') }}{{ $drugs_given_anae[$i]['dose'] ?? "" }} {{ get_name($drugs_given_anae[$i]['unit'], 'id', 'name', 'drug_units') }}{{ ugandan_shillings($cost) }} - @if(in_array($drugs_given_anae[$i]['id'], $do_not_bill_other_drugs)) - Add to inpatient bill - @else - Remove from inpatient bill - @endif -
    -
    -
    - @endif -
    -
    -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/add/add_assistant_surgeon.blade.php b/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/add/add_assistant_surgeon.blade.php deleted file mode 100755 index 44428ed8..00000000 --- a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/add/add_assistant_surgeon.blade.php +++ /dev/null @@ -1,63 +0,0 @@ -
    -
    - -
    - {{ Form::label('first_name',__('theatre_surgeries.first_name')) }} - {{ Form::text('first_name','',['class' => 'form-control compulsory','id'=>'asg_first_name']) }} -
    - -
    - {{ Form::label('last_name',__('theatre_surgeries.last_name')) }} - {{ Form::text('last_name','',['class' => 'form-control compulsory','id'=>'asg_last_name']) }} -
    - -
    - {{ Form::label('username',__('theatre_surgeries.username')) }} - {{ Form::text('username','',['class' => 'form-control compulsory', 'id'=>'asg_user_name']) }} -
    - -
    - {{ Form::label('phone',__('theatre_surgeries.phone_number')) }} - {{ Form::text('phone','',['class' => 'form-control','data-mask'=>"0799 999 999", 'id'=>'asg_phone_number']) }} - (07xx) 123-456 -
    - -
    - {{ Form::label('email',__('theatre_surgeries.email_address')) }} - {{ Form::email('email','',['class' => 'form-control','id'=>'asg_email']) }} -
    - -
    - -
    - -
    - {{ Form::label('registration_number',__('theatre_surgeries.registration_number')) }} - {{ Form::text('registration_number','',['class' => 'form-control','id'=>'asg_registration_number']) }} -
    - -
    - {{ Form::label('position_id',__('theatre_surgeries.position')) }} - {{ Form::select('position_id',$positions,'',['class' => 'form-control compulsory', 'id'=>'asg_position_id']) }} -
    - -
    - {{ Form::label('pin',__('theatre_surgeries.secret_pin')) }} - {{ Form::number('pin',null,['class' => 'form-control compulsory pin','placeholder'=>'eg 12345','maxlength'=>'5','minlength'=>'5', 'id'=>'asg_secret_pin']) }} -
    - -
    - {{ Form::label('security_question_id',__('theatre_surgeries.security_question')) }} - {{ Form::select('security_question_id',$security_questions,'',['class' => 'form-control', 'id'=>'asg_security_question']) }} -
    - -
    - {{ Form::label('security_answer',__('theatre_surgeries.security_answer')) }} - {{ Form::text('security_answer','',['class' => 'form-control','id'=>'asg_security_answer']) }} -
    - - -
    - - -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/add/add_nurse.blade.php b/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/add/add_nurse.blade.php deleted file mode 100755 index 3301ed36..00000000 --- a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/add/add_nurse.blade.php +++ /dev/null @@ -1,63 +0,0 @@ -
    -
    - -
    - {{ Form::label('first_name',__('theatre_surgeries.first_name')) }} - {{ Form::text('first_name','',['class' => 'form-control compulsory','id'=>'n_first_name']) }} -
    - -
    - {{ Form::label('last_name',__('theatre_surgeries.last_name')) }} - {{ Form::text('last_name','',['class' => 'form-control compulsory','id'=>'n_last_name']) }} -
    - -
    - {{ Form::label('username',__('theatre_surgeries.username')) }} - {{ Form::text('username','',['class' => 'form-control compulsory', 'id'=>'n_user_name']) }} -
    - -
    - {{ Form::label('phone',__('theatre_surgeries.phone_number')) }} - {{ Form::text('phone','',['class' => 'form-control','data-mask'=>"0799 999 999", 'id'=>'n_phone_number']) }} - (07xx) 123-456 -
    - -
    - {{ Form::label('email',__('theatre_surgeries.email_address')) }} - {{ Form::email('email','',['class' => 'form-control','id'=>'n_email']) }} -
    - -
    - -
    - -
    - {{ Form::label('registration_number',__('theatre_surgeries.registration_number')) }} - {{ Form::text('registration_number','',['class' => 'form-control', 'id'=>'n_registration_number']) }} -
    - -
    - {{ Form::label('position_id',__('theatre_surgeries.position')) }} - {{ Form::select('position_id',$positions,'',['class' => 'form-control compulsory', 'id'=>'n_position_id']) }} -
    - -
    - {{ Form::label('pin',__('theatre_surgeries.secret_pin')) }} - {{ Form::number('pin',null,['class' => 'form-control compulsory pin','placeholder'=>'eg 12345','maxlength'=>'5','minlength'=>'5', 'id'=>'n_secret_pin']) }} -
    - -
    - {{ Form::label('security_question_id',__('theatre_surgeries.security_question')) }} - {{ Form::select('security_question_id',$security_questions,'',['class' => 'form-control', 'id'=>'n_security_question']) }} -
    - -
    - {{ Form::label('security_answer',__('theatre_surgeries.security_answer')) }} - {{ Form::text('security_answer','',['class' => 'form-control','id'=>'n_security_answer']) }} -
    - - -
    - - -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/add/add_procedure.blade.php b/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/add/add_procedure.blade.php deleted file mode 100755 index 30383627..00000000 --- a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/add/add_procedure.blade.php +++ /dev/null @@ -1,93 +0,0 @@ -@php - $procedure_categories = \Streamline\Models\ProcedureCategory::pluck('name', 'id') - ->toArray(); - - $procedure_categories = ['' => '- select -'] + $procedure_categories; - - $chart_of_accounts = \Streamline\Models\ChartOfAccount::orderBy('name', 'asc') - ->pluck('name', 'id') - ->toArray(); - - $chart_of_accounts = ['' => '- select -'] + $chart_of_accounts; - - $hmis_categories = \DB::table('hmis_categories')->orderBy('title', 'asc')->pluck('title', 'id')->toArray(); - - $hmis_categories = ['' => '- select -'] + $hmis_categories; -@endphp - -
    -
    - -
    - {{ Form::label('name', __('procedures.procedure_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'id' => 'new_procedure_name']) }} -
    -
    - -
    - {{ Form::label('non_insured_price', __('procedures.non_insured_price')) }} - {{ Form::number('non_insured_price', '', ['class' => 'form-control compulsory', 'id' => 'new_procedure_non_insured_price']) }} -
    -
    - -
    - {{ Form::label('insured_price', __('procedures.insured_price')) }} - {{ Form::number('insured_price', 0, ['class' => 'form-control', 'id' => 'new_procedure_insured_price']) }} -
    -
    - -
    - {{ Form::label('', __('procedures.insurance_coverage'), ["class"=>'col-md-12']) }} -  {{ __('procedures.yes') }} {{ Form::radio('insurance', 1, false, ['class' => 'check', 'data-radio'=>'iradio_flat-green', 'id' => 'new_procedure_insured_yes']) }} -  {{ __('procedures.no') }} {{ Form::radio('insurance', 0, false, ['class' => 'check', 'data-radio'=>'iradio_flat-green', 'id' => 'new_procedure_insured_no']) }} -
    -
    - -
    - {{ Form::label('category', __('procedures.category')) }} - {{ Form::select('category', $procedure_categories, null, ['class' => 'form-control compulsory', 'id' => 'new_procedure_category']) }} -
    -
    -
    - -
    - -
    - {{ Form::label('hmis_number', 'HMIS No.') }} - {{ Form::number('hmis_number', '', ['class'=>'form-control', 'id' => 'new_procedure_hmis_number']) }} -
    - -
    - {{ Form::label('account_id',__('procedures.chart_of_account_name')) }} - {{ Form::select('account_id',$chart_of_accounts,'',['class' => 'form-control compulsory', 'id' => 'new_procedure_account_id']) }} -
    -
    - -
    -
    -
    - {{ Form::label('hmis_no_outpatient', 'HMIS-out-patient No.') }} - {{ Form::text('hmis_no_outpatient[]', '', ['class'=>'form-control', 'id' => 'new_procedure_hmis_no_outpatient']) }} -
    -
    - {{ Form::label('hmis_category', 'HMIS category (Out Patient)') }} - {{ Form::select('hmis_category[]', $hmis_categories, '', ['class' => 'form-control', 'id' => 'new_procedure_hmis_category']) }} -
    -
    -
    - - -
    -
    -
    - {{ Form::label('hmis_no_inpatient', __('diagnoses.hmis_inpatient_category')) }} - {{ Form::text('hmis_no_inpatient', '', ['class'=>'form-control', 'id' => 'new_procedure_hmis_no_inpatient']) }} -
    -
    - {{ Form::label('hmis_category_inpatient', 'HMIS category (In Patient)') }} - {{ Form::select('hmis_category_inpatient', $hmis_categories, '', ['class' => 'form-control', 'id' => 'new_procedure_hmis_category_inpatient']) }} -
    -
    -
    -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/add/add_scrub_nurse.blade.php b/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/add/add_scrub_nurse.blade.php deleted file mode 100755 index bd3c4bed..00000000 --- a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/add/add_scrub_nurse.blade.php +++ /dev/null @@ -1,63 +0,0 @@ -
    -
    - -
    - {{ Form::label('first_name',__('theatre_surgeries.first_name')) }} - {{ Form::text('first_name','',['class' => 'form-control compulsory','id'=>'sn_first_name']) }} -
    - -
    - {{ Form::label('last_name',__('theatre_surgeries.last_name')) }} - {{ Form::text('last_name','',['class' => 'form-control compulsory','id'=>'sn_last_name']) }} -
    - -
    - {{ Form::label('username',__('theatre_surgeries.username')) }} - {{ Form::text('username','',['class' => 'form-control compulsory', 'id'=>'sn_user_name']) }} -
    - -
    - {{ Form::label('phone',__('theatre_surgeries.phone_number')) }} - {{ Form::text('phone','',['class' => 'form-control','data-mask'=>"0799 999 999", 'id'=>'sn_phone_number']) }} - (07xx) 123-456 -
    - -
    - {{ Form::label('email',__('theatre_surgeries.email_address')) }} - {{ Form::email('email','',['class' => 'form-control','id'=>'sn_email']) }} -
    - -
    - -
    - -
    - {{ Form::label('registration_number',__('theatre_surgeries.registration_number')) }} - {{ Form::text('registration_number','',['class' => 'form-control','id'=>'sn_registration_number']) }} -
    - -
    - {{ Form::label('position_id',__('theatre_surgeries.position')) }} - {{ Form::select('position_id',$positions,'',['class' => 'form-control compulsory', 'id'=>'sn_position_id']) }} -
    - -
    - {{ Form::label('pin',__('theatre_surgeries.secret_pin')) }} - {{ Form::number('pin',null,['class' => 'form-control compulsory pin','placeholder'=>'eg 12345','maxlength'=>'5','minlength'=>'5', 'id'=>'sn_secret_pin']) }} -
    - -
    - {{ Form::label('security_question_id',__('theatre_surgeries.security_question')) }} - {{ Form::select('security_question_id',$security_questions,'',['class' => 'form-control', 'id'=>'sn_security_question']) }} -
    - -
    - {{ Form::label('security_answer',__('theatre_surgeries.security_answer')) }} - {{ Form::text('security_answer','',['class' => 'form-control','id'=>'sn_security_answer']) }} -
    - - -
    - - -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/add/add_scrub_staff.blade.php b/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/add/add_scrub_staff.blade.php deleted file mode 100755 index bc56caec..00000000 --- a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/add/add_scrub_staff.blade.php +++ /dev/null @@ -1,65 +0,0 @@ -
    -
    - -
    - {{ Form::label('first_name',__('theatre_surgeries.first_name')) }} - {{ Form::text('first_name','',['class' => 'form-control compulsory','id'=>'ss_first_name']) }} -
    - -
    - {{ Form::label('last_name',__('theatre_surgeries.last_name')) }} - {{ Form::text('last_name','',['class' => 'form-control compulsory','id'=>'ss_last_name']) }} -
    - -
    - {{ Form::label('username',__('theatre_surgeries.username')) }} - {{ Form::text('username','',['class' => 'form-control compulsory', 'id'=>'ss_user_name']) }} -
    - -
    - {{ Form::label('phone',__('theatre_surgeries.phone_number')) }} - {{ Form::text('phone','',['class' => 'form-control','data-mask'=>"0799 999 999", 'id'=>'ss_phone_number']) }} - (07xx) 123-456 -
    - -
    - {{ Form::label('email',__('theatre_surgeries.email_address')) }} - {{ Form::email('email','',['class' => 'form-control','id'=>'ss_email']) }} -
    - - - -
    - -
    - -
    - {{ Form::label('registration_number',__('theatre_surgeries.registration_number')) }} - {{ Form::text('registration_number','',['class' => 'form-control','id'=>'ss_registration_number']) }} -
    - -
    - {{ Form::label('position_id',__('theatre_surgeries.position')) }} - {{ Form::select('position_id',$positions,'',['class' => 'form-control compulsory', 'id'=>'ss_position_id']) }} -
    - -
    - {{ Form::label('pin',__('theatre_surgeries.secret_pin')) }} - {{ Form::number('pin',null,['class' => 'form-control compulsory pin','placeholder'=>'eg 12345','maxlength'=>'5','minlength'=>'5', 'id'=>'ss_secret_pin']) }} -
    - -
    - {{ Form::label('security_question_id',__('theatre_surgeries.security_question')) }} - {{ Form::select('security_question_id',$security_questions,'',['class' => 'form-control', 'id'=>'ss_security_question']) }} -
    - -
    - {{ Form::label('security_answer',__('theatre_surgeries.security_answer')) }} - {{ Form::text('security_answer','',['class' => 'form-control','id'=>'ss_security_answer']) }} -
    - - -
    - - -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/add/add_surgeon.blade.php b/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/add/add_surgeon.blade.php deleted file mode 100755 index 6c792a8e..00000000 --- a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/add/add_surgeon.blade.php +++ /dev/null @@ -1,63 +0,0 @@ -
    -
    - -
    - {{ Form::label('first_name',__('theatre_surgeries.first_name')) }} - {{ Form::text('first_name','',['class' => 'form-control compulsory','id'=>'sg_first_name']) }} -
    - -
    - {{ Form::label('last_name',__('theatre_surgeries.last_name')) }} - {{ Form::text('last_name','',['class' => 'form-control compulsory','id'=>'sg_last_name']) }} -
    - -
    - {{ Form::label('username',__('theatre_surgeries.username')) }} - {{ Form::text('username','',['class' => 'form-control compulsory', 'placeholder'=>'eg Admin', 'id'=>'sg_user_name']) }} -
    - -
    - {{ Form::label('phone',__('theatre_surgeries.phone_number')) }} - {{ Form::text('phone','',['class' => 'form-control','data-mask'=>"0799 999 999", 'id'=>'sg_phone_number']) }} - (07xx) 123-456 -
    - -
    - {{ Form::label('email',__('theatre_surgeries.email_address')) }} - {{ Form::email('email','',['class' => 'form-control','id'=>'sg_email']) }} -
    - -
    - -
    - -
    - {{ Form::label('registration_number',__('theatre_surgeries.registration_number')) }} - {{ Form::text('registration_number','',['class' => 'form-control','id'=>'sg_registration_number']) }} -
    - -
    - {{ Form::label('position_id',__('theatre_surgeries.position')) }} - {{ Form::select('position_id',$positions,'',['class' => 'form-control compulsory', 'id'=>'sg_position_id']) }} -
    - -
    - {{ Form::label('pin',__('theatre_surgeries.secret_pin')) }} - {{ Form::number('pin',null,['class' => 'form-control compulsory pin','placeholder'=>'eg 12345','maxlength'=>'5','minlength'=>'5', 'id'=>'sg_secret_pin']) }} -
    - -
    - {{ Form::label('security_question_id',__('theatre_surgeries.security_question')) }} - {{ Form::select('security_question_id',$security_questions,'',['class' => 'form-control', 'id'=>'sg_security_question']) }} -
    - -
    - {{ Form::label('security_answer',__('theatre_surgeries.security_answer')) }} - {{ Form::text('security_answer','',['class' => 'form-control','id'=>'sg_security_answer']) }} -
    - - -
    - - -
    \ No newline at end of file diff --git a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/create.blade.php b/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/create.blade.php deleted file mode 100755 index b86bfce6..00000000 --- a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/create.blade.php +++ /dev/null @@ -1,1532 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('surgery.theatre_module_surgery') }}

    -
    -
    - -
    -
    -
    -
    - @include('patients::allergies.header') -
    -
    -
    - - - @if(isset($surgeries) && count($surgeries) > 0) -
    -
    -
    -
    -
    - {{ __('surgery.previous_surgeries_from_episode') }} {{ streamline_date(get_name($episode_id, 'id', 'created_at', 'patient_episodes')) }} - - - - - - - - - - - - @foreach($surgeries as $item) - - - - - - - - - - @endforeach - -
    {{ __('surgery.surgery') }}{{ __('surgery.anaesthetist') }}{{ __('surgery.surgeon') }}{{ __('surgery.time_of_commencement') }}{{ __('surgery.date') }}
    - @php - $procedures_array = explode(",", $item->procedure_id); - @endphp - @for ($i = 0; $i < count($procedures_array); $i++) - - {{ get_name($procedures_array[$i],'id','name','procedures') }}
    - @endfor -
    {{ get_full_name($item->surgeon, 'id', 'first_name', 'last_name', 'users') }}{{ get_full_name(get_name($item->anaesthesia_id,'id','anaesthetist','anaesthesias'),'id','first_name','last_name','users') }}{{ get_name($item->anaesthesia_id,'id','time_commenced','anaesthesias') }}{{ streamline_date($item->created_at) }}{{ __('surgery.view_details') }}Edit Details
    -
    -
    -
    -
    -
    - @endif - -
    -
    - @include('flash::message') - - @php - $consultation = \Streamline\Models\Consultation::where(['episode_id' => $episode_id, 'patient_id' => $patient_id])->first(); - @endphp - - @foreach ($errors->all() as $error) -
    {{ $error }}
    - @endforeach - -
    -

    {{ __('surgery.create_surgery') }}


    - {{ Form::open(['route' => 'theatre_surgery.store','data-toggle'=>'validator']) }} - - @if(!is_null($anaesthesia)) - {{Form::hidden('anaesthesia_id', $anaesthesia->id)}} - @endif - {{Form::hidden('anaesthesia_complete', $anaesthesia_complete)}} - -
    -
    -
    - - - - - - - - - - - - - - - - - - - -
    {{ __('inpatient.primary_diagnosis') }}{{ __('inpatient.prompt') }}{{ __('inpatient.references') }}
    -
    - {{ Form::select('primary_diagnosis', $diagnoses, $consultation ? $consultation->primary_diagnosis : "", ['class' => 'form-control select_field col-sm-12 compulsory', 'required', 'id' => 'primary_diagnosis']) }} -
    -
    {{ (isset($consultation->primary_diagnosis) && $consultation->primary_diagnosis != 0) ? $diagnoses_all->firstWhere('id',$consultation->primary_diagnosis)->prompts : "" }} 
    -
    - @if(!is_null($consultation) && $consultation->primary_diagnosis != 0) - @php - $reference_names = explode(",", get_name($consultation->primary_diagnosis, 'id', 'reference_names', 'diagnoses')); - $reference_areas = explode(",", get_name($consultation->primary_diagnosis, 'id', 'reference_areas', 'diagnoses')); - @endphp - @for($i = 0; $i < count($reference_names); $i++) - @if(isset($reference_areas[$i]) && isset($reference_names[$i])) - {{ $reference_names[$i] }} | - @endif - @endfor - @endif -
    -
    - {{ __('consultations.add_new_diagnosis') }} -
    -
    - -
    - -
    - - - - - - - - - - - @php - $other_diagnoses = []; - - if($consultation){ - $other_diagnoses = @unserialize($consultation->other_diagnoses); - } - @endphp - - @if(empty($other_diagnoses)) - - - - - - - @else - @foreach($other_diagnoses as $diagnosis) - - - - - - - @endforeach - @endif - -
    #{{ __('inpatient.other_diagnosis') }}{{ __('inpatient.prompt') }}{{ __('inpatient.references') }}
    - {{ Form::select('other_diagnosis[]', $diagnoses, '', ['class' => 'form-control col-sm-12 sec_d']) }} -
     
     
    - {{ Form::select('other_diagnosis[]', $diagnoses, $diagnosis, ['class' => 'form-control col-sm-12 select sec_d']) }} -
    {{ is_object($diagnoses_all->firstWhere('id',$diagnosis)) ? $diagnoses_all->firstWhere('id',$diagnosis)->prompts : '' }} 
    {{ is_object($diagnoses_all->firstWhere('id',$diagnosis)) ? $diagnoses_all->firstWhere('id',$diagnosis)->reference_names : '' }} 
    -
    - - {{ __('inpatient.add_row') }} - {{ __('inpatient.delete_row') }} -
    - -
    -

    -
    - {{ Form::label('procedure_id', __('surgery.surgical_procedure')) }} - {{ Form::select('procedure_id[]',$procedures,$anaesthesia_complete ? $anaesthesia->procedure_id : '',['class' => 'form-control select compulsory', 'required', 'data-error'=>'','id'=>'procedure_id', 'multiple'=>'true']) }} -
    - New procedure -
    - -
    -
    - {{ Form::label('surgeon',__('surgery.surgeon')) }} - {{ Form::select('surgeon', $doctors, '', ['class' => 'form-control compulsory', 'required', 'data-error'=>'', 'id'=>'surgeon', 'onchange'=>'get_cadre(this.value)']) }} -
    - - add new surgeon -
    - -
    - {{ Form::label('cadre',__('surgery.cadre')) }} - {{ Form::text('cadre','',['class' => 'form-control', 'data-error'=>'','id'=>'cadre','readonly'=>'true']) }} -
    -
    -
    - - - - -
    - {{ Form::hidden('procedure_hospital_fee', 0, ['class' => 'form-control performance_fee', 'readonly', 'id' => 'procedure_hospital_fee']) }} - - {{ Form::label('staff_fee', 'Staff fee (PF: Professional Fee)') }} - {{ Form::number('procedure_performance_fee', 0, ['class' => 'form-control performance_fee', 'id' => 'first_procedure_performance_fee']) }} -
    - -
    - {{ Form::label('scrub_nurse',__('surgery.scrub_nurse')) }} - {{ Form::select('scrub_nurse', $nursing, 0, ['class' => 'form-control compulsory required', 'data-error'=>'','id'=>'scrub_nurse']) }} -
    - - add new nurse -
    - -
    - {{ Form::label('authorised_swab_check',__('surgery.scrub_check_authorized_by')) }} - {{ Form::select('authorised_swab_check', $nursing, 0,['class' => 'form-control compulsory required', 'data-error'=>'','id'=>'authorised_swab_check']) }} -
    -
    - -
    - {{ Form::label('date_surgery_completed',__('surgery.date_surgery_completed')) }} -
    - {{ Form::text('date_surgery_completed',date('Y-m-d'),['class' => 'form-control','readonly','id'=>'datepicker-autoclose']) }} - -
    -
    -
    - -
    - {{ Form::label('time_surgery_completed',__('surgery.time_surgery_completed')) }} - {{ Form::time('time_surgery_completed','',['class' => 'form-control', 'data-error'=>'','id'=>'time_surgery_completed']) }} -
    -
    - -
    - {{ Form::label('estimated_blood_loss',__('surgery.estimated_blood_loss')) }} - {{ Form::number('estimated_blood_loss','',['class' => 'form-control', 'data-error'=>'','id'=>'estimated_blood_loss']) }} -
    -
    - -
    - {{ Form::label('comments',__('surgery.comments')) }} - {{ Form::textarea('comments','',['class' => 'form-control', 'data-error'=>'','id'=>'comments']) }} -
    -
    - -
    - {{ __('surgery.completed_by') }} {{ auth()->user()->first_name }} {{ auth()->user()->last_name }} {{ __('surgery.on') }} {{ streamline_date(date('d-m-Y')) }} -
    -
    - -
    - -
    -

    -
    - {{ Form::label('surgery_type',__('surgery.surgery_type')) }} -
    - {{ Form::radio('surgery_type', 1, false, ["required"]) }} {{ __('surgery.elective') }}    - {{ Form::radio('surgery_type', 2, false, ["required"]) }} {{ __('surgery.emergency') }} -
    -
    - -
    - {{ Form::label('assistant_surgeon',__('surgery.assistant_surgeon')) }} - {{ Form::select('assistant_surgeon', $doctors, 0, ['class' => 'form-control compulsory', 'data-error'=>'','id'=>'assistant_surgeon','required']) }} - -
    - {{ __('surgery.add_new_assistant_surgeon') }} -
    - -
    - {{ Form::label('other_scrub_nurse',__('surgery.other_scrub_staff')) }} - {{ Form::select('other_scrub_staff', $nursing, 0,['class' => 'form-control', 'data-error'=>'','id'=>'other_scrub_staff','required']) }} -
    - - {{ __('surgery.add_new_scrub_staff') }} -
    - -
    - {{ Form::label('theatre_location',__('surgery.theatre_location')) }} - {{ Form::select('theatre_location',$theatre_locations,'',['class' => 'form-control', 'data-error'=>'','id'=>'theatre_location']) }} -
    - {{ __('surgery.add_new_theatre_location') }} -
    - -
    - {{ Form::label('theatre_incharge',__('theatre_surgeries.designated_incharge')) }} - {{ Form::select('theatre_incharge', $theatre_in_charge_users, 0,['class' => 'form-control compulsory', 'data-error'=>'','id'=>'theatre_incharge','required']) }} -
    - - {{ __('surgery.add_new_nurse') }} -
    - -
    - {{ Form::label('outcome',__('surgery.outcome')) }} - {{ Form::select('outcome',$outcomes, is_null($episode_consultation_outcome) ? '' : $episode_consultation_outcome ,['class' => 'form-control', 'data-error'=>'','id'=>'outcome','required']) }} -
    - - - - - - - - - -
    -
    - {{ Form::label('sundries_used','Sundries used') }} - {{ Form::select('sundries_used[]',$sundries_array,'',['class' => 'form-control sundries_sutures select_field', 'data-error'=>'','id'=>'vicryl_sutures_used']) }} -
    -
    - {{ Form::label('sundries_quantity_used','Quantity used') }} - {{ Form::number('sundries_quantity_used[]','',['class' => 'form-control', 'data-error'=>'']) }} -
    -
    - Add other sundries used

    - -
    -
    - {{ Form::label('extras_used','Extras used') }} - {{ Form::text('extras_used[]','',['class' => 'form-control', 'data-error'=>'']) }} -
    -
    - {{ Form::label('extras_cost','Cost') }} - {{ Form::number('extras_cost[]','',['class' => 'form-control', 'data-error'=>'']) }} -
    -
    - Add other extras used

    - -
    -
    -
    -
    - - {{ Form::select('drugs[]', $drugs, '', ['class' => 'form-control select_field other_drug_id','style'=>'margin-bottom: 5px;', 'id' => 'other_drug_id_0']) }} -
    -
    - - {{ Form::number('dose[]', '', ['class' => 'form-control other_drug_dose', 'id' => 'other_drug_dose_0']) }} -
    -
    - - {{ Form::select("units[]", $units, "", ["class" => "form-control select other_drug_unit", 'id' => 'other_drug_unit_0']) }} -
    -
    -
    -
    - {{ __('anaesthetics.add_more_drugs') }}

    - -
    - - {{ __('surgery.if_any_risks_alert') }}. -
    - -
    - {{ Form::submit(__('surgery.complete'),['class' => 'btn btn-success', 'onclick'=>'return confirm_outcome()']) }} -
    -
    -
    - {{ Form::close() }} -
    -
    -
    - - - - - - - - - - - - - - - - - @include('patients::consultations.add_diagnosis') - -@endsection - -@push('scripts') - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/detail.blade.php b/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/detail.blade.php deleted file mode 100755 index 069b180f..00000000 --- a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/detail.blade.php +++ /dev/null @@ -1,186 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    - {{ __('surgery.details_of_surgery') }} -

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('surgery.item') }}{{ __('surgery.details') }}
    {{ __('surgery.surgery_performed') }} - @php - $procedures_array = explode(",", $surgery->procedure_id); - @endphp - @for ($i = 0; $i < count($procedures_array); $i++) - - {{ get_name($procedures_array[$i],'id','name','procedures') }}
    - @endfor -
    {{ __('surgery.date') }}{{ streamline_date($surgery->created_at) }}
    {{ __('surgery.time_of_commencement') }}{{ get_name($surgery->anaesthesia_id,'id','time_commenced','anaesthesias') }}
    {{ __('surgery.surgeon') }}{{ is_numeric($surgery->surgeon) ? get_full_name($surgery->surgeon, 'id', 'first_name', 'last_name', 'users') : $surgery->surgeon }}
    {{ __('surgery.theatre') }}{{ get_name($surgery->theatre_location, 'id', 'name', 'theatre_locations') }}
    {{ __('surgery.theatre_incharge') }}{{ is_numeric($surgery->theatre_in_charge) ? get_full_name($surgery->theatre_in_charge, 'id', 'first_name', 'last_name', 'users') : $surgery->theatre_in_charge }}
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('surgery.item') }}{{ __('surgery.details') }}
    {{ __('surgery.assistant_surgeon') }}{{ get_full_name($surgery->assistant_surgeon, 'id', 'first_name', 'last_name', 'users') }}
    {{ __('surgery.scrub_nurse') }}{{ get_full_name($surgery->scrub_nurse, 'id', 'first_name', 'last_name', 'users') }}
    {{ __('surgery.other_scrub_staff') }}{{ get_full_name($surgery->other_scrub_staff, 'id', 'first_name', 'last_name', 'users') }}
    {{ __('surgery.primary_diagnosis') }}{{ isset($diagnoses[$surgery->primary_diagnosis]) ? $diagnoses[$surgery->primary_diagnosis] : "" }}
    {{ __('surgery.other_diagnoses') }} - @php - $other_diagnoses_array = @unserialize($surgery->other_diagnoses); - @endphp - - @if(!empty($other_diagnoses_array) && $other_diagnoses_array[0] != "") - @foreach($other_diagnoses_array as $diagnosis) -
      - @if($diagnosis != "") -
    • {{ $diagnoses[$diagnosis] }}
    • - @endif -
    - @endforeach - @endif -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('surgery.item') }}{{ __('surgery.details') }}
    {{ __('surgery.estimated_blood_loss') }}{{ $surgery->estimated_blood_loss }}
    {{ __('surgery.number_of_vicryl_sutures_used') }}{{ $surgery->vicryl_sutures_used }}
    {{ __('surgery.other_sutures_used') }}{{ $surgery->other_sutures_used }}
    {{ __('surgery.outcome') }}{{ (is_numeric($surgery->outcome)) ? get_name($surgery->outcome, 'id', 'name', 'outcomes') : "Not Available" }}
    {{ __('surgery.time_surgery_completed') }}{{ streamline_time($surgery->time_surgery_completed)}}
    {{ __('surgery.date_of_surgery') }}{{ streamline_date($surgery->date_surgery_completed) }}
    {{ __('surgery.comments') }}{!! nl2br(e($surgery->comments)) !!}
    - - Edit Details -  Print -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/drugs_stock_sheet.blade.php b/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/drugs_stock_sheet.blade.php deleted file mode 100755 index 65f12b3a..00000000 --- a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/drugs_stock_sheet.blade.php +++ /dev/null @@ -1,122 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    Theatre Drugs Stock Sheet

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -
    -
    -
    - {{ csrf_field() }} - - - -

    Export data to Copy, CSV, Excel, PDF & Print

    -
    - - - - - - - - - - - - - - - @foreach($ward_stock_records as $record) - @php - $drug = \Streamline\Models\Drug::withTrashed()->find($record->item_id); - @endphp - - - - - - @endforeach - -
    Drug NameTheatre Stock
    Drug NameTheatre Stock
    - @if($drug->insurance_coverage == 1) - {{ $drug->name }} - @else - {{ $drug->name }} - @endif - -
    - {{ $record->ward_item_stock }} -
    - -
    -
    - - - -
    -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/edit.blade.php b/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/edit.blade.php deleted file mode 100755 index e6be01b0..00000000 --- a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/edit.blade.php +++ /dev/null @@ -1,1219 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    Theatre module - surgery

    -
    -
    - -
    -
    -
    -
    - @include('patients::allergies.header') -
    -
    -
    - - - @if(isset($surgeries) && count($surgeries) > 0) -
    -
    -
    -
    -
    - PREVIOUS SURGERIES FROM EPISODE STARTED ON {{ streamline_date(get_name($episode_id, 'id', 'created_at', 'patient_episodes')) }} - - - - - - - - - - - @foreach($surgeries as $surgery_record) - - - - - - - - - @endforeach - -
    SurgerySurgeonAnaesthetistTime Of CommencementDate
    - @php - $procedures_array = explode(",", $surgery_record->procedure_id); - @endphp - @for ($i = 0; $i < count($procedures_array); $i++) - - {{ get_name($procedures_array[$i],'id','name','procedures') }}
    - @endfor -
    {{ get_full_name($surgery_record->surgeon, 'id', 'first_name', 'last_name', 'users') }}{{ get_name($surgery_record->anaesthesia_id,'id','id','anaesthesias') }}{{ $surgery_record->time_surgery_completed }}{{ streamline_date($surgery_record->created_at) }}View Details
    -
    -
    -
    -
    -
    - @endif - -
    -
    - @include('flash::message') - - @foreach ($errors->all() as $error) -
    {{ $error }}
    - @endforeach - -
    -

    {{ __('surgery.edit_surgery') }}


    - {{ Form::model($surgery_record,['method' => 'PUT','route' => ['theatre_surgery.update',$surgery_record->id],'data-toggle'=>'validator']) }} - - @if(!is_null($anaesthesia)) - {{Form::hidden('anaesthesia_id', $anaesthesia->id)}} - @endif - {{ Form::hidden('anaesthesia_complete', $anaesthesia_complete) }} - {{ Form::hidden('patient_id', $patient_id) }} - {{ Form::hidden('episode_id', $episode_id) }} - - {{ Form::hidden('surgery_id', $surgery_record->id) }} - -
    -
    -
    - - - - - - - - - - - - - - - -
    {{ __('inpatient.primary_diagnosis') }}{{ __('inpatient.prompt') }}{{ __('inpatient.references') }}
    -
    - {{ Form::select('primary_diagnosis', $diagnoses, $surgery_record ? $surgery_record->primary_diagnosis : "", ['class' => 'form-control select col-sm-12 compulsory', 'required', 'id' => 'primary_diagnosis']) }} -
    -
    {{ (isset($surgery_record->primary_diagnosis) && $surgery_record->primary_diagnosis != 0) ? $diagnoses_all->firstWhere('id',$surgery_record->primary_diagnosis)->prompts : "" }} 
    -
    - @if(!is_null($surgery_record) && $surgery_record->primary_diagnosis != 0) - @php - $reference_names = explode(",", get_name($surgery_record->primary_diagnosis, 'id', 'reference_names', 'diagnoses')); - $reference_areas = explode(",", get_name($surgery_record->primary_diagnosis, 'id', 'reference_areas', 'diagnoses')); - @endphp - @for($i = 0; $i < count($reference_names); $i++) - @if(isset($reference_areas[$i]) && isset($reference_names[$i])) - {{ $reference_names[$i] }} | - @endif - @endfor - @endif -
    -
    -
    - -
    - -
    - - - - - - - - - - - @php - $other_diagnoses = []; - - if($surgery_record){ - $other_diagnoses = @unserialize($surgery_record->other_diagnoses); - } - @endphp - - @if(empty($other_diagnoses)) - - - - - - - @else - @foreach($other_diagnoses as $diagnosis) - - - - - - - @endforeach - @endif - -
    #{{ __('inpatient.other_diagnosis') }}{{ __('inpatient.prompt') }}{{ __('inpatient.references') }}
    - {{ Form::select('other_diagnosis[]', $diagnoses, '', ['class' => 'form-control col-sm-12 sec_d']) }} -
     
     
    - {{ Form::select('other_diagnosis[]', $diagnoses, $diagnosis, ['class' => 'form-control col-sm-12 select sec_d']) }} -
    {{ is_object($diagnoses_all->firstWhere('id',$diagnosis)) ? $diagnoses_all->firstWhere('id',$diagnosis)->prompts : '' }} 
    {{ is_object($diagnoses_all->firstWhere('id',$diagnosis)) ? $diagnoses_all->firstWhere('id',$diagnosis)->reference_names : '' }} 
    -
    - - {{ __('inpatient.add_row') }} - {{ __('inpatient.delete_row') }} -
    - -
    -

    -
    - @php - $procedures_array = explode(",", $surgery_record->procedure_id); - @endphp - {{ Form::label('procedure_id','Surgical procedure') }} - {{ Form::select('procedure_id[]',$procedures, $procedures_array,['class' => 'form-control compulsory', 'required', 'data-error'=>'','id'=>'procedure_id','multiple'=>'true']) }} -
    -
    - -
    -
    - {{ Form::label('surgeon','Surgeon') }} - {{ Form::select('surgeon', $doctors, $surgery_record->surgeon, ['class' => 'form-control compulsory', 'required', 'data-error'=>'', 'id'=>'surgeon', 'onchange'=>'get_cadre(this.value)']) }} -
    - - add new surgeon -
    - -
    - {{ Form::label('cadre','Cadre') }} - {{ Form::text('cadre','',['class' => 'form-control', 'data-error'=>'','id'=>'cadre','readonly'=>'true']) }} -
    -
    -
    - -
    - {{ Form::label('scrub_nurse','Scrub Nurse') }} - {{ Form::select('scrub_nurse', $all_staff, $surgery_record->scrub_nurse, ['class' => 'form-control compulsory required', 'data-error'=>'','id'=>'scrub_nurse']) }} -
    - - add new nurse -
    - -
    - {{ Form::label('authorised_swab_check','Scrub check authorised by') }} - {{ Form::select('authorised_swab_check', $all_staff, $surgery_record->authorised_swab_check,['class' => 'form-control compulsory required', 'data-error'=>'','id'=>'authorised_swab_check']) }} -
    -
    - -
    - {{ Form::label('date_surgery_completed','Date surgery completed') }} -
    - {{ Form::text('date_surgery_completed', '', ['class' => 'form-control','readonly','id'=>'datepicker-autoclose']) }} - -
    -
    -
    - -
    - {{ Form::label('time_surgery_completed','Time surgery completed') }} - {{ Form::time('time_surgery_completed',$surgery_record->time_surgery_completed,['class' => 'form-control', 'data-error'=>'','id'=>'time_surgery_completed']) }} -
    -
    - -
    - {{ Form::label('estimated_blood_loss','Estimated blood loss (mLs)') }} - {{ Form::number('estimated_blood_loss',$surgery_record->estimated_blood_loss,['class' => 'form-control', 'data-error'=>'','id'=>'estimated_blood_loss']) }} -
    -
    - -
    - {{ Form::label('comments','Comments') }} - {{ Form::textarea('comments',$surgery_record->comments,['class' => 'form-control', 'data-error'=>'','id'=>'comments']) }} -
    -
    - -
    - Completed by {{ auth()->user()->first_name }} {{ auth()->user()->last_name }} on {{ streamline_date(date('d-m-Y')) }} -
    -
    - -
    - -
    -

    -
    - {{ Form::label('surgery_type','Surgery Type') }} -
    - {{ Form::radio('surgery_type', 1, false, ["required"]) }} Elective    - {{ Form::radio('surgery_type', 2, false, ["required"]) }} Emergency -
    -
    - -
    - {{ Form::label('assistant_surgeon','Assistant surgeon') }} - {{ Form::select('assistant_surgeon', $doctors, $surgery_record->assistant_surgeon, ['class' => 'form-control compulsory', 'data-error'=>'','id'=>'assistant_surgeon','required']) }} - -
    - add new assistant surgeon -
    - -
    - {{ Form::label('scrub_nurse','Other scrub staff') }} - {{ Form::select('other_scrub_staff', $all_staff, $surgery_record->other_scrub_staff,['class' => 'form-control', 'data-error'=>'','id'=>'other_scrub_staff']) }} -
    - - add new scrub staff -
    - -
    - {{ Form::label('theatre_location','Theatre location') }} - {{ Form::select('theatre_location',$theatre_locations,$surgery_record->theatre_location,['class' => 'form-control', 'data-error'=>'','id'=>'theatre_location']) }} -
    - add new theatre location -
    - -
    - {{ Form::label('theatre_incharge','Designated in charge for this theatre') }} - {{ Form::select('theatre_incharge', $all_staff, $surgery_record->theatre_in_charge,['class' => 'form-control compulsory', 'data-error'=>'','id'=>'theatre_incharge','required']) }} -
    - - add new nurse -
    - - @php - $surgery_outcome = null; - if (is_null($surgery_record->outcome)) { - $surgery_outcome = is_null($episode_consultation_outcome) ? null : $episode_consultation_outcome; - } else { - $surgery_outcome = $surgery_record->outcome; - } - - @endphp - -
    - {{ Form::label('outcome',__('surgery.outcome')) }} - {{ Form::select('outcome',$outcomes, $surgery_outcome ,['class' => 'form-control', 'data-error'=>'','id'=>'outcome','required']) }} -
    - - - - - - - -
    - @php - $sundries_unserialized_array = @unserialize($surgery_record->sundries_used); - - $used_sundries_ids_array = isset($sundries_unserialized_array['sundries']) ? $sundries_unserialized_array['sundries'] : []; - - $used_sundries_quantities_array = isset($sundries_unserialized_array['quantity']) ? $sundries_unserialized_array['quantity'] : []; - @endphp - - @if(!empty($used_sundries_ids_array)) - @for($i=0; $i < count($used_sundries_ids_array) ; $i++) -
    - {{ Form::label('sundries_used','Sundries used') }} - {{ Form::select('sundries_used[]',$sundries_array,$used_sundries_ids_array[$i],['class' => 'form-control sundries_sutures', 'data-error'=>'']) }} -
    -
    - {{ Form::label('sundries_quantity_used','Quantity used') }} - {{ Form::number('sundries_quantity_used[]',$used_sundries_quantities_array[$i],['class' => 'form-control', 'data-error'=>'']) }} -
    - @endfor - @else -
    - {{ Form::label('sundries_used','Sundries used') }} - {{ Form::select('sundries_used[]',$sundries_array,'',['class' => 'form-control sundries_sutures', 'data-error'=>'','id'=>'vicryl_sutures_used']) }} -
    -
    - {{ Form::label('sundries_quantity_used','Quantity used') }} - {{ Form::number('sundries_quantity_used[]','',['class' => 'form-control', 'data-error'=>'']) }} -
    - @endif -
    - Add other sundries used

    - -
    - @php - $theatre_extras_used = @unserialize($surgery_record->extras_used); - - $extras_array = isset($theatre_extras_used['extras']) ? $theatre_extras_used['extras'] : []; - - $extras_cost_array = isset($theatre_extras_used['cost']) ? $theatre_extras_used['cost'] : []; - @endphp - - @if(count($extras_array) > 0) - @for($j = 0; $j < count($extras_array); $j++) - @php - $extra_item = is_null($extras_array[$j]) ? "" : $extras_array[$j]; - $extra_cost = is_null($extras_cost_array[$j]) ? "" : $extras_cost_array[$j]; - @endphp -
    - {{ Form::label('extras_used','Extras used') }} - {{ Form::text('extras_used[]',$extra_item,['class' => 'form-control', 'data-error'=>'']) }} -
    -
    - {{ Form::label('extras_cost','Cost') }} - {{ Form::number('extras_cost[]',$extra_cost,['class' => 'form-control', 'data-error'=>'']) }} -
    - @endfor - @else -
    - {{ Form::label('extras_used','Extras used') }} - {{ Form::text('extras_used[]','',['class' => 'form-control', 'data-error'=>'']) }} -
    -
    - {{ Form::label('extras_cost','Cost') }} - {{ Form::number('extras_cost[]','',['class' => 'form-control', 'data-error'=>'']) }} -
    - @endif -
    - Add other extras used

    - -
    - - If any risks identified for future procedures, please note them in Alerts box on top of Patient Home page. -
    - -
    - {{ Form::submit('Update',['class' => 'btn btn-success']) }} -
    -
    -
    - {{ Form::close() }} -
    -
    -
    - - - - - - - - - - - - - - -@endsection - -@push('scripts') - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/index.blade.php b/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/index.blade.php deleted file mode 100755 index 09f520ca..00000000 --- a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/index.blade.php +++ /dev/null @@ -1,67 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('theatre_surgeries.view_surgery_history') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - - @include('flash::message') - -
    -
    -
    -
    - - - - - - - - - - - @foreach($surgeries as $item) - - - - - - - - - @endforeach - -
    {{ __('surgery.surgery_performed') }}{{ __('surgery.surgeon') }}{{ __('theatre_surgeries.anaesthetist') }}{{ __('surgery.time_surgery_completed') }}{{ __('surgery.date_of_surgery') }}
    - @php - $procedures_array = explode(",", $item->procedure_id); - @endphp - @for ($i = 0; $i < count($procedures_array); $i++) - - {{ get_name($procedures_array[$i],'id','name','procedures') }}
    - @endfor -
    {{ get_full_name($item->surgeon, 'id', 'first_name', 'last_name', 'users') }}{{ get_full_name(get_name($item->anaesthesia_id,'id','anaesthetist','anaesthesias'),'id','first_name','last_name','users') }}{{ streamline_date_time($item->time_surgery_completed) }}{{ streamline_date($item->created_at) }}{{ __('surgery.details') }}
    -
    -
    -
    -
    - -@endsection \ No newline at end of file diff --git a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/sundries_stock_sheet.blade.php b/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/sundries_stock_sheet.blade.php deleted file mode 100755 index 8d808dcc..00000000 --- a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/sundries_stock_sheet.blade.php +++ /dev/null @@ -1,122 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    Theatre Sundries Stock Sheet

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -
    -
    -
    - {{ csrf_field() }} - - - -

    Export data to Copy, CSV, Excel, PDF & Print

    -
    - - - - - - - - - - - - - - - @foreach($ward_stock_records as $record) - @php - $sundry = \Streamline\Models\Sundry::withTrashed()->find($record->item_id); - @endphp - - - - - - @endforeach - -
    Sundry NameTheatre Stock
    Sundry NameTheatre Stock
    - @if($sundry->insurance_coverage == 1) - {{ $sundry->name }} - @else - {{ $sundry->name }} - @endif - -
    - {{ $record->ward_item_stock }} -
    - -
    -
    - - - -
    -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/surgery_print.blade.php b/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/surgery_print.blade.php deleted file mode 100755 index b25e6c93..00000000 --- a/docker/statistics/Modules/Theatre/Resources/views/theatre_surgeries/surgery_print.blade.php +++ /dev/null @@ -1,200 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Theatre Details - Stre@mline') }} - - - - - - - - - -
    - @include('layouts.header_pdf_print') -
    - {{ __('surgery.surgery_details') }} : {{ streamline_date($surgery->created_at) }} -
    - -
    - - @php - $total_amount_to_pay = 0; - @endphp - -
    - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('surgery.patient_number') }}{{ $patient->number}} {{ __('surgery.theatre_location') }} - {{ get_name($surgery->theatre_location , 'id', 'name', 'theatre_locations') }} -
    {{ __('surgery.patient_names') }}{{ $patient->first_name}} {{ $patient->last_name}} {{ __('inpatient.age') }} - {{ get_patients_age($patient->date_of_birth) }} -
    {{ __('inpatient.residence') }}{{ patient_residence($patient->id) }} {{ __('inpatient.gender') }} - {{ $patient->gender == 1 ? __('inpatient.male') : __('inpatient.female') }} -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('surgery.surgery_performed') }} - @php - $procedures_array = explode(",", $surgery->procedure_id); - @endphp - @for ($i = 0; $i < count($procedures_array); $i++) - - {{ get_name($procedures_array[$i],'id','name','procedures') }}
    - @endfor -
    {{ __('surgery.primary_diagnosis') }}{{ isset($diagnoses[$surgery->primary_diagnosis]) ? $diagnoses[$surgery->primary_diagnosis] : "" }}
    {{ __('surgery.other_diagnoses') }} - @php - $other_diagnoses_array = @unserialize($surgery->other_diagnoses); - @endphp - - @if(!empty($other_diagnoses_array) && $other_diagnoses_array[0] != "") - @foreach($other_diagnoses_array as $diagnosis) -
      - @if($diagnosis != "") -
    • {{ $diagnoses[$diagnosis] }}
    • - @endif -
    - @endforeach - @endif -
    {{ __('surgery.date') }}{{ streamline_date($surgery->created_at) }}
    {{ __('surgery.time_of_commencement') }}{{ get_name($surgery->anaesthesia_id,'id','time_commenced','anaesthesias') }}
    {{ __('surgery.surgeon') }}{{ is_numeric($surgery->surgeon) ? get_full_name($surgery->surgeon, 'id', 'first_name', 'last_name', 'users') : $surgery->surgeon }}
    {{ __('surgery.theatre') }}{{ get_name($surgery->theatre_location, 'id', 'name', 'theatre_locations') }}
    {{ __('surgery.theatre_incharge') }}{{ is_numeric($surgery->theatre_in_charge) ? get_full_name($surgery->theatre_in_charge, 'id', 'first_name', 'last_name', 'users') : $surgery->theatre_in_charge }}
    {{ __('surgery.assistant_surgeon') }}{{ get_full_name($surgery->assistant_surgeon, 'id', 'first_name', 'last_name', 'users') }}
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('surgery.scrub_nurse') }}{{ get_full_name($surgery->scrub_nurse, 'id', 'first_name', 'last_name', 'users') }}
    {{ __('surgery.other_scrub_staff') }}{{ get_full_name($surgery->other_scrub_staff, 'id', 'first_name', 'last_name', 'users') }}
    {{ __('surgery.estimated_blood_loss') }}{{ $surgery->estimated_blood_loss }}
    {{ __('surgery.anaesthesia_duration') }}{{ $surgery->anaesthesia_duration }}
    {{ __('surgery.anaesthesia') }}{{ is_null($surgery->anaesthesia_id) ? "None Given" : get_name(get_name($surgery->anaesthesia_id, "id", "anaesthesia_type", "anaesthesias"), "id", "name", "procedures") }}
    {{ __('surgery.outcome') }}{{ (is_numeric($surgery->outcome)) ? get_name($surgery->outcome, 'id', 'name', 'outcomes') : "Not Available" }}
    {{ __('surgery.time_surgery_completed') }}{{ streamline_time($surgery->time_surgery_completed)}}
    {{ __('surgery.date_of_surgery') }}{{ streamline_date($surgery->date_surgery_completed) }}
    -
    -
    - -

    - {{ __('surgery.comments') }} - -
    -
    - - - - - - -
    - {!! nl2br(e($surgery->comments)) !!} -
    -
    -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/Theatre/Routes/api.php b/docker/statistics/Modules/Theatre/Routes/api.php deleted file mode 100644 index e113dc7b..00000000 --- a/docker/statistics/Modules/Theatre/Routes/api.php +++ /dev/null @@ -1,18 +0,0 @@ -get('/theatre', function () { - return "Theatre"; -}); diff --git a/docker/statistics/Modules/Theatre/Routes/web.php b/docker/statistics/Modules/Theatre/Routes/web.php deleted file mode 100644 index b252a898..00000000 --- a/docker/statistics/Modules/Theatre/Routes/web.php +++ /dev/null @@ -1,31 +0,0 @@ - ['auth', 'disablebackbutton', 'user-locale','subscription-tracking', 'password-expiry']], function () { - /*theatre surgery module */ - Route::any('theatre_drugs_stock_sheet', 'TheatreSurgeryController@drugs_stock_sheet')->name('theatre.drugs_stock_sheet'); - Route::any('update_theatre_drugs_stock_sheet', 'TheatreSurgeryController@update_drugs_stock_sheet')->name('theatre.update_drugs_stock_sheet'); - Route::any('theatre_sundries_stock_sheet', 'TheatreSurgeryController@sundries_stock_sheet')->name('theatre.sundries_stock_sheet'); - Route::any('update_theatre_sundries_stock_sheet', 'TheatreSurgeryController@update_sundries_stock_sheet')->name('theatre.update_sundries_stock_sheet'); - Route::any('/theatre_surgery/details/{id}', 'TheatreSurgeryController@details')->name('theatre_surgery.details'); - Route::post('add_new_theatre_location', 'TheatreSurgeryController@add_new_theatre_location'); - Route::post('quick_add_user', 'TheatreSurgeryController@theatre_surgery_quick_store'); - Route::resource('theatre_surgery', 'TheatreSurgeryController'); - Route::get('get_cadre', 'TheatreSurgeryController@get_cadre'); - Route::any('quick_add_procedure', 'TheatreSurgeryController@quick_add_procedure')->name('theatre_surgery.quick_add_procedure'); - Route::any('surgery_print/{surgery_id}', 'TheatreSurgeryController@surgery_print')->name('theatre_surgery.details_print'); - - /* Theatre anaesthetics module */ - Route::any('/anaesthetics/view_history/{id}', 'TheatreAnaestheticsController@view_history')->name('theatre_anaesthetics.view_history'); - Route::any('/anaesthetics/remove_drug_from_inpatient_bill/{record_id}/{drug_id}', 'TheatreAnaestheticsController@remove_drug_from_inpatient_bill'); - Route::any('/anaesthetics/add_drug_to_inpatient_bill/{record_id}/{drug_id}', 'TheatreAnaestheticsController@add_drug_to_inpatient_bill'); - Route::any('/anaesthetics/history', 'TheatreAnaestheticsController@history')->name('theatre_anaesthetics.history'); - Route::resource('anaesthetics', 'TheatreAnaestheticsController'); - Route::post('get_procedure_slug', 'TheatreAnaestheticsController@get_procedure_slug'); - Route::post('add_new_doctor', 'TheatreAnaestheticsController@add_new_doctor_or_nurse'); - Route::post('add_new_nurse', 'TheatreAnaestheticsController@add_new_doctor_or_nurse'); - Route::post('add_new_airway', 'TheatreAnaestheticsController@add_new_airway'); - Route::post('add_new_analgesic', 'TheatreAnaestheticsController@add_new_analgesic'); - Route::any('anaesthesia_print/{surgery_id}', 'TheatreAnaestheticsController@anaesthesia_print')->name('theatre_anaesthetics.details_print'); -}); \ No newline at end of file diff --git a/docker/statistics/Modules/Theatre/bitbucket-pipelines.yml b/docker/statistics/Modules/Theatre/bitbucket-pipelines.yml deleted file mode 100644 index e850a8fd..00000000 --- a/docker/statistics/Modules/Theatre/bitbucket-pipelines.yml +++ /dev/null @@ -1,19 +0,0 @@ -image: alpine/git:latest - -pipelines: - branches: - main: - - step: - name: Merge To Beta - script: - - git remote set-url origin https://Kabricks:${APP_SECRET}@bitbucket.org/dcsammi/${BITBUCKET_REPO_SLUG} - - git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*" - - git fetch - - git checkout beta - - git merge main - - git commit --amend -m "[skip ci] Merge changes from main" - - git push - - step: - name: Deploy To Test - script: - - echo "Ready to deploy to demo or production!" diff --git a/docker/statistics/Modules/Theatre/module.json b/docker/statistics/Modules/Theatre/module.json deleted file mode 100644 index e71fd71e..00000000 --- a/docker/statistics/Modules/Theatre/module.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "Theatre", - "alias": "theatre", - "description": "", - "keywords": [], - "priority": 0, - "providers": [ - "Modules\\Theatre\\Providers\\TheatreServiceProvider" - ], - "files": [] -} diff --git a/docker/statistics/Modules/WardManagement/Config/config.php b/docker/statistics/Modules/WardManagement/Config/config.php deleted file mode 100644 index 5290f979..00000000 --- a/docker/statistics/Modules/WardManagement/Config/config.php +++ /dev/null @@ -1,5 +0,0 @@ - 'WardManagement' -]; diff --git a/docker/statistics/Modules/WardManagement/Http/Controllers/Controller.php b/docker/statistics/Modules/WardManagement/Http/Controllers/Controller.php deleted file mode 100755 index 2a8227b2..00000000 --- a/docker/statistics/Modules/WardManagement/Http/Controllers/Controller.php +++ /dev/null @@ -1,13 +0,0 @@ -middleware('auth'); - $this->middleware('permission:hmis-ward-list', ['only' => ['index', 'select']]); - $this->middleware('permission:hmis-ward-create', ['only' => ['create', 'store']]); - $this->middleware('permission:hmis-ward-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:hmis-ward-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() - { - $wards = HmisWard::orderBy('name', 'asc')->paginate(50); - - return view('ward_management::hmis_wards.index', compact('wards')); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - return view('ward_management::hmis_wards.create'); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - $validator = Validator::make($request->all(), [ - 'name' => 'required|string|max:255|unique:hmis_wards', - 'slug' => 'required|string|max:255|unique:hmis_wards', - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $ward = new HmisWard; - $ward->name = $request->name; - $ward->slug = $request->slug; - $ward->created_by = auth()->user()->id; - $ward->save(); - flash($request->name . " Hmis Ward has been created")->success(); - return redirect("/hmis_wards/"); - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) - { - $ward = HmisWard::findOrFail($id); - return view('ward_management::hmis_wards.edit', compact('ward')); - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - $validator = Validator::make($request->all(), [ - 'name' => 'required|string|max:255|unique:hmis_wards,name,'.$id, - 'slug' => 'required|string|max:255|unique:hmis_wards,slug,'.$id, - - ]); - - if ($validator->fails()) { - $string = ""; - foreach ($validator->errors()->getMessages() as $item) { - $string .= "{$item[0]}
    "; - } - flash($string)->error(); - return back()->withErrors($validator)->withInput(); - } else { - $ward = HmisWard::find($id); - $ward->name = $request->name; - $ward->slug = $request->slug; - $ward->updated_by = auth()->user()->id; - $ward->save(); - flash($request->name . " Hmis Ward has been updated")->success(); - return redirect("/hmis_wards/"); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - $ward = HmisWard::findOrFail($id); - - if ($ward->delete()) { - flash("Hmis Ward has been deleted.")->success(); - return redirect('/hmis_wards/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() - { - $wards = HmisWard::onlyTrashed()->orderBy('created_at', 'desc')->paginate(50); - - return view('ward_management::hmis_wards.inactive', compact('wards')); - - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) - { - $ward = HmisWard::onlyTrashed()->findOrFail($id); - - if ($ward->restore()) { - flash("Hmis Ward has been activated.")->success(); - return redirect('/hmis_wards/'); - } else { - flash()->error("Hmis Ward hasn't been activated."); - return redirect()->route('hmis_wards.inactive'); - } - } -} diff --git a/docker/statistics/Modules/WardManagement/Http/Controllers/InpatientBillsController.php b/docker/statistics/Modules/WardManagement/Http/Controllers/InpatientBillsController.php deleted file mode 100755 index 986df6e6..00000000 --- a/docker/statistics/Modules/WardManagement/Http/Controllers/InpatientBillsController.php +++ /dev/null @@ -1,88 +0,0 @@ -middleware('auth'); - $this->middleware('permission:incoming-inpatient-bills', ['only' => ['incoming_inpatient_bills']]); - } - - public function incoming_inpatient_bills(Request $request) { - $filters = []; - - if ($request->search_by == 1) { - $end = Carbon::yesterday()->endOfDay()->toDateTimeString(); - $start = Carbon::yesterday()->startOfDay()->toDateTimeString(); - $search_text = " Yesterday"; - } else if ($request->search_by == 2) { - $end = Carbon::parse($request->reg_date)->endOfDay()->toDateTimeString(); - $start = Carbon::parse($request->reg_date)->startOfDay()->toDateTimeString(); - $search_text = " On: " . streamline_date($request->reg_date); - } else if ($request->search_by == 3) { - $end = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - $start = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $search_text = " Between: " . streamline_date($request->start_date) . " And " . streamline_date($request->end_date); - } else { - $end = Carbon::today()->endOfDay()->toDateTimeString(); - $start = Carbon::today()->startOfDay()->toDateTimeString(); - $search_text = " Today"; - } - - if(isset($request->ward_id) && $request->ward_id != 0){ - $filters[] = ['inpatient_info.ward_id', '=', $request->ward_id]; - } - - if ($request->inpatient_status == 1) { - // patient still admitted in date range - $search_text = "Patients Still Admitted" . $search_text; - - $inpatients_info = DB::table('inpatient_info') - ->where('inpatient_info.discharged_on', '>', $end) - ->OrWhereNull('inpatient_info.discharged_on') - ->where('inpatient_info.admitted_on', '<', $end) - ->join('patients', 'inpatient_info.patient_id', '=', 'patients.id') - ->join('inpatient_bills', 'inpatient_info.id', '=', 'inpatient_bills.inpatient_info_id') - ->select('inpatient_info.*', 'patients.category_id as patients_category_id', 'patients.number as patients_number', - 'inpatient_bills.amount_to_pay as bills_amount_to_pay', 'inpatient_bills.invoices_amount as bills_invoices_amount', 'inpatient_bills.created_by as bills_created_by', - 'inpatient_bills.updated_by as bills_updated_by', 'inpatient_bills.original_bill as bills_original_bill', 'inpatient_bills.amount_paid as bills_amount_paid') - ->paginate(200); - } else { - if ($request->inpatient_status == 2) { - // patient discharge in data range - $filters[] = ['inpatient_info.discharged_on', '>', $start]; - $filters[] = ['inpatient_info.discharged_on', '<', $end]; - $filters[] = ['inpatient_info.discharged', '=', 1]; - $search_text = "Patients Discharged" . $search_text; - } else { - // all patients - $filters[] = ['inpatient_info.created_at', '>', $start]; - $filters[] = ['inpatient_info.created_at', '<', $end]; - $search_text = "Patients Admitted" . $search_text; - } - - $inpatients_info = DB::table('inpatient_info') - ->where($filters) - ->join('patients', 'inpatient_info.patient_id', '=', 'patients.id') - ->join('inpatient_bills', 'inpatient_info.id', '=', 'inpatient_bills.inpatient_info_id') - ->select('inpatient_info.*', 'patients.category_id as patients_category_id', 'patients.number as patients_number', - 'inpatient_bills.amount_to_pay as bills_amount_to_pay', 'inpatient_bills.invoices_amount as bills_invoices_amount', 'inpatient_bills.created_by as bills_created_by', - 'inpatient_bills.updated_by as bills_updated_by', 'inpatient_bills.original_bill as bills_original_bill', 'inpatient_bills.amount_paid as bills_amount_paid') - ->paginate(200); - } - - $patient_categories = DB::table('patient_categories')->where('available', 1)->pluck('name', 'id')->toArray(); - $wards = DB::table('wards')->where('available', 1)->pluck('name', 'id')->toArray(); - $wards = ['' => '- select -', '0' => 'All wards'] + $wards; - - $inpatient_status = [0 => "All Patients", 1 => "Still Admitted", 2 => "Discharged"]; - - return view('ward_management::inpatient.incoming_bills',compact('inpatients_info','wards','inpatient_status', 'search_text', 'patient_categories')); - } -} diff --git a/docker/statistics/Modules/WardManagement/Http/Controllers/InpatientController.php b/docker/statistics/Modules/WardManagement/Http/Controllers/InpatientController.php deleted file mode 100755 index 7455ec10..00000000 --- a/docker/statistics/Modules/WardManagement/Http/Controllers/InpatientController.php +++ /dev/null @@ -1,3876 +0,0 @@ -middleware('auth'); - } - - /** - * Display a listing of the resource. - * - */ - public function index() { - // - } - - /* - * Display the in_patient_sheet form - */ - - public function in_patient_sheet() { - $episode_id = session()->get('episode_id'); - $patient_episode_details = PatientEpisode::find($episode_id); - $patient_id = $patient_episode_details->patient_id; - $patient = Patient::find($patient_id); - - $referrals = ReferralHospital::orderBy('name')->pluck('name', 'id')->prepend('- select -', ''); - - // inpatient info - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('created_at', 'desc')->first(); - if($inpatient_info->discharged == 1 && !Auth::user()->can('view-closed-inpatient-sheet')){ - flash("Access to a discharged patient's inpatient sheet is restricted. Contact system administrator.")->error(); - return redirect()->back(); - } - $specialities = Speciality::pluck('name', 'id')->prepend('- select -', ''); - $diagnosis_categories = DiagnosisCategory::all(); - $diagnoses = DB::table('diagnoses')->where('available', 1)->whereNull('deleted_at')->orderBy('name', 'asc')->pluck("name", "id")->prepend('- select -', ''); - $diagnoses_all = DB::table('diagnoses')->whereNull('deleted_at')->select('id', 'prompts', 'reference_areas', 'reference_names')->get(); - - // for the initial procedures select - $procedures = DB::table('procedures')->whereNull('deleted_at')->orderBy('name', 'asc')->pluck('name', 'id')->prepend('- select -', ''); - $procedures_results = DB::table('procedures')->whereNull('deleted_at')->select('id', 'name')->get(); - $options_procedures = ""; - foreach ($procedures_results as $procedure_result) { - $procedure_name = str_replace("'", '', $procedure_result->name); - $procedure_name = str_replace("\"", '', $procedure_name); - $options_procedures .= ""; - } - - // for the initial sundries select - $sundries = DB::table('sundries')->whereNull('deleted_at')->orderBy('name', 'asc')->pluck('name', 'id')->prepend('- select -', ''); - $sundries_results = DB::table('sundries')->whereNull('deleted_at')->select('id', 'name')->get(); - $options_sundries = ""; - foreach ($sundries_results as $sundry_result) { - $sundry_name = str_replace("'", '', $sundry_result->name); - $sundry_name = str_replace("\"", '', $sundry_name); - $options_sundries .= ""; - } - - // for the initial drugs select - $drugs = DB::table('drugs')->where('available', 1)->whereNull('deleted_at')->orderBy('name', 'asc')->pluck('name', 'id')->prepend('- select -', ''); - $drugs_results = DB::table('drugs')->where('available', 1)->whereNull('deleted_at')->select('id', 'name')->get(); - $options_drugs = ""; - foreach ($drugs_results as $drugs_result) { - $drug_name = str_replace("'", '', $drugs_result->name); - $drug_name = str_replace("\"", '', $drug_name); - $options_drugs .= ""; - } - - $symptoms = DB::table('symptoms')->whereNull('deleted_at')->pluck("name", "id"); - $documents = PatientDocument::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->get(); - $outcomes = Outcome::pluck('name', 'id'); - $wards = Ward::withTrashed()->pluck('name', 'id')->prepend('- select ward-', ''); - $treatment_to_take_away = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'tta' => 1])->get(); - $ward_prescriptions = WardTreatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $ward_dispensed_drugs_array = WardTreatmentDispensation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->distinct('drug_id')->pluck('drug_id')->toArray(); - $triage = Triage::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $patient_appointment = PatientAppointment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $anc_comments = AnteNatalClinicFollowup::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->select(['history_comments', 'clinic_examination_comments', 'investigation_and_management_plan_comments'])->first(); - // prep the inpatient investigation arrays and counters - $opd_investigations = []; - $opd_investigations_position = []; - $opd_investigations_date = []; - $ward_investigations = []; - $ward_investigations_position = []; - $ward_investigations_date = []; - - // get all investigations ordered in this episode - $ordered_investigations = OrderedInvestigation::where(['episode_id' => $episode_id])->get(); - - // get all results - $investigation_results_order_ids = InvestigationResults::pluck('order_id', 'id')->toArray(); - - foreach ($ordered_investigations as $investigation) { - if (isset($ward_investigations['id'])) { - $ward_investigations_position[] = count($ward_investigations['id']); - } else { - $ward_investigations_position[] = 0; - } - - if (isset($opd_investigations['id'])) { - $opd_investigations_position[] = count($opd_investigations['id']); - } else { - $opd_investigations_position[] = 0; - } - - $ward_investigations_date[] = "Ordered on " . streamline_date_time($investigation->created_at) . " by " . - get_full_name($investigation->created_by, 'id', 'first_name', 'last_name', 'users'); - $opd_investigations_date[] = streamline_date_time($investigation->created_at); - - $investigation_ids = explode(",", $investigation->investigation_id); - $inpatient_status = explode(",", $investigation->for_inpatient); - $eye_investigations = explode(",", $investigation->eye); - // check if results are available for this investigation - if (in_array($investigation->id, $investigation_results_order_ids)) { - // get the key if available - $key = array_search($investigation->id, $investigation_results_order_ids); - - // get the results object - $results = InvestigationResults::find($key); - - // exclude obstetric u/s results - if ($results->result_type != "Ultrasound_Obstetric") { - $investigation_results = explode(",", $results->value); - $investigation_per_valid = explode(",", $results->per_investigation); - $investigation_comments = explode(",", $results->comment); - - if ($results->all_authenticated == 1) { - for ($i = 0; $i < count($inpatient_status); $i++) { - if (isset($inpatient_status[$i]) && $inpatient_status[$i] == 0) { - $result = Investigation::withTrashed()->find($investigation_ids[$i]); - - if ($result) { - $opd_investigations['id'][] = $result->id; - $opd_investigations['name'][] = $result->name; - $opd_investigations['type'][] = $result->type; - $opd_investigations['slug'][] = $result->slug; - $opd_investigations['normal_ranges'][] = $result->normal_ranges; - $opd_investigations['value'][] = $investigation_results[$i] ?? ""; - $opd_investigations['result_time'][] = 'On '.streamline_date_time_short($results->created_at).' by '. get_full_name($results->created_by, 'id', 'first_name', 'last_name', 'users'); - $opd_investigations['comment'][] = $investigation_comments[$i] ?? ""; - $opd_investigations['eye'][] = $eye_investigations[$i] ?? ''; - } - } else { - $result = Investigation::withTrashed()->find($investigation_ids[$i]); - - if ($result) { - $ward_investigations['id'][] = $result->id; - $ward_investigations['name'][] = $result->name; - $ward_investigations['type'][] = $result->type; - $ward_investigations['normal_ranges'][] = $result->normal_ranges; - $ward_investigations['slug'][] = $result->slug; - $ward_investigations['result_time'][] = 'On '.streamline_date_time_short($results->created_at).' by '. get_full_name($results->created_by, 'id', 'first_name', 'last_name', 'users'); - $ward_investigations['value'][] = $investigation_results[$i] ?? ""; - $ward_investigations['comment'][] = $investigation_comments[$i] ?? ""; - $ward_investigations['eye'][] = $eye_investigations[$i] ?? ''; - } - } - } - } else { - for ($i = 0; $i < count($inpatient_status); $i++) { - - $investigation = Investigation::withTrashed()->find($investigation_ids[$i]); - - if (!$investigation) { - continue; - } - - if (isset($investigation_per_valid[$i]) && $investigation_per_valid[$i] == 1) { - // this investigation is authenticated - if (isset($inpatient_status[$i]) && $inpatient_status[$i] == 0) { - $opd_investigations['id'][] = $investigation->id; - $opd_investigations['name'][] = $investigation->name; - $opd_investigations['type'][] = $investigation->type; - $opd_investigations['slug'][] = $investigation->slug; - $opd_investigations['normal_ranges'][] = $investigation->normal_ranges; - $opd_investigations['value'][] = $investigation_results[$i] ?? ""; - $opd_investigations['comment'][] = $investigation_comments[$i] ?? ""; - $opd_investigations['eye'][] = $eye_investigations[$i] ?? ''; - } else { - $ward_investigations['id'][] = $investigation->id; - $ward_investigations['name'][] = $investigation->name; - $ward_investigations['type'][] = $investigation->type; - $ward_investigations['normal_ranges'][] = $investigation->normal_ranges; - $ward_investigations['slug'][] = $investigation->slug; - $ward_investigations['value'][] = $investigation_results[$i] ?? ""; - $ward_investigations['comment'][] = $investigation_comments[$i] ?? ""; - $ward_investigations['eye'][] = $eye_investigations[$i] ?? ''; - } - } else { - if (isset($investigation_per_valid[$i]) && $inpatient_status[$i] == 0) { - $opd_investigations['id'][] = $investigation->id; - $opd_investigations['name'][] = $investigation->name; - $opd_investigations['type'][] = $investigation->type; - $opd_investigations['slug'][] = $investigation->slug; - $opd_investigations['normal_ranges'][] = $investigation->normal_ranges; - $opd_investigations['value'][] = "Pending"; - $opd_investigations['comment'][] = "Pending"; - $opd_investigations['eye'][] = $eye_investigations[$i] ?? ''; - } else { - $ward_investigations['id'][] = $investigation->id; - $ward_investigations['name'][] = $investigation->name; - $ward_investigations['type'][] = $investigation->type; - $ward_investigations['normal_ranges'][] = $investigation->normal_ranges; - $ward_investigations['slug'][] = $investigation->slug; - $ward_investigations['value'][] = "Pending"; - $ward_investigations['comment'][] = "Pending"; - $ward_investigations['eye'][] = $eye_investigations[$i] ?? ''; - } - } - } - } - } - } else { - for ($i = 0; $i < count($inpatient_status); $i++) { - if (isset($inpatient_status[$i]) && $inpatient_status[$i] == 0) { - $result = Investigation::withTrashed()->find($investigation_ids[$i]); - - if ($result) { - $opd_investigations['id'][] = $result->id; - $opd_investigations['name'][] = $result->name; - $opd_investigations['type'][] = $result->type; - $opd_investigations['slug'][] = $result->slug; - $opd_investigations['normal_ranges'][] = $result->normal_ranges; - $opd_investigations['value'][] = "Pending"; - $opd_investigations['comment'][] = "Pending"; - $opd_investigations['eye'][] = $eye_investigations[$i] ?? ''; - } - } else { - $result = Investigation::withTrashed()->find($investigation_ids[$i]); - - if ($result) { - $ward_investigations['id'][] = $result->id; - $ward_investigations['name'][] = $result->name; - $ward_investigations['type'][] = $result->type; - $ward_investigations['normal_ranges'][] = $result->normal_ranges; - $ward_investigations['slug'][] = $result->slug; - $ward_investigations['value'][] = "Pending"; - $ward_investigations['comment'][] = "Pending"; - $ward_investigations['eye'][] = $eye_investigations[$i] ?? ''; - } - } - } - } - } - - $clinics = Clinic::orderBy('name')->pluck("name", "id")->toArray(); - $clinics = ['0' => "Don't assign clinic"] + $clinics; - $users = User::orderBy('first_name')->select("id", "first_name", "last_name")->get(); - - // for initial services select - $service_items = DB::table('services')->whereNull('deleted_at')->orderBy('name','asc')->pluck('name', 'id')->prepend('- select -', ''); - $service_results = DB::table('services')->whereNull('deleted_at')->select('id', 'name')->get(); - $options_services = ""; - foreach ($service_results as $service_result) { - $service_name = str_replace("'", '', $service_result->name); - $service_name = str_replace("\"", '', $service_name); - $service_name = str_replace("+", '', $service_name); - $options_services .= ""; - } - - $users_collection = DB::table('users')->orderBy("first_name","asc")->select("id")->get()->toArray(); - $service_with_users_array = []; - $users_array = []; - $options_users = ""; - foreach ($users_collection as $value){ - $user = User::find($value->id); - if (!is_null($user)) { - $users_array[$user->id] = $user->first_name . " ". $user->last_name; - $options_users .= ""; - if ($user->hasRole('Doctors') || $user->hasRole('Doctor')) { - //use this join query instead of the commented out query to cater for execution speed (N+1) - $consultation_records = DB::table('services') - ->join('staff_payment_configurations','staff_payment_configurations.item_id', '=', 'services.id') - ->where('staff_payment_configurations.user_id',$value->id) - ->where('staff_payment_configurations.item_category',3) - ->orderBy('staff_payment_configurations.created_at','asc') - ->select('services.*') - ->get(); - - foreach ($consultation_records as $record) { - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_id) { - $users_consultation_fee = get_price_list_category_price($price_list_id, 6, $record->id); - } else{ - $users_consultation_fee = $record->non_insured_price; - } - //concatnate the service_record_id with the users_id to form the key for the array - $dynamic_key = $record->id."__".$value->id; - $dynamic_value = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users')." (".$record->name.")"; - - $service_with_users_array[$dynamic_key] = $dynamic_value; - - //add these dynamically formed values to service_items array - array_add($service_items, $dynamic_key, $dynamic_value); - //add it to the services_options too i.e used when user clicks add_service btn - $options_services .= ""; - } - } - } - } - $service_with_users_array = ['' => '- select -'] + $service_with_users_array; - - $services_with_users_array = InpatientController::configured_users_with_their_services_array(); - - $users_array = ['' => '- select -'] + $users_array; - - $bed_categories = InpatientBedCategory::where('available', 1)->orderby('name','asc')->pluck('name', 'id')->prepend('- select -', ''); - $options_bed_categories = ""; - foreach ($bed_categories as $id => $bed_category) { - $options_bed_categories .= ""; - } - - $options_wards = ""; - foreach ($wards as $id => $ward_option) { - $options_wards .= ""; - } - - $today = date("Y-m-d"); - $dob = Carbon::parse($patient->date_of_birth); - $age_diff_days = $dob->diffInDays(Carbon::now()); - $age_diff_months = $age_diff_days / 30.436875; - $difference = days_months_years($dob, $today); - - $days = $difference[0]; - $months = $difference[1]; - $years = $difference[2]; - - $age_group = 0; - - if (between($days, 0, 28) && between($months, 0, 0) && between($years, 0, 0)) { - $age_group = 1; - } elseif (between($days, 0, 31) && between($months, 1, 12) && between($years, 0, 0)) { - $age_group = 2; - } elseif (between($days, 0, 31) && between($months, 0, 12) && between($years, 1, 5)) { - $age_group = 3; - } elseif (between($days, 0, 31) && between($months, 0, 12) && between($years, 6, 12)) { - $age_group = 4; - } elseif (between($days, 0, 31) && between($months, 0, 12) && between($years, 13, 200)) { - $age_group = 5; - } - - $observations = DB::table('observations') - ->whereNull('deleted_at') - ->where(function($query){ - $query->where('options', '') - ->orWhereNull('options'); - }) - ->whereRaw('FIND_IN_SET(' . $age_group . ',age_group)')->pluck('name', 'id'); - $options_observations = ""; - foreach ($observations as $key => $value) { - $options_observations .= ""; - } - - // check saved vitals - $patient_inpatient_vitals = DB::table('patient_inpatient_vitals') - ->whereNull('deleted_at') - ->where('inpatient_id', $inpatient_info->id) - ->orderBy('id', 'desc')->get(['id', 'vitals']); - - $patient_vitals = []; - - foreach ($patient_inpatient_vitals as $vital) { - $vitals_array = json_decode($vital->vitals, true); - - foreach ($vitals_array as $value) { - $patient_vitals[$value["name"]][] = ["value" => $value["value"], "time" => $value["time"]]; - } - } - - // get ordered cancer protocols - $ordered_cancer_protocols = DB::table('ordered_cancer_protocols') - ->whereNull('deleted_at')->where('inpatient_id', $inpatient_info->id)->get(); - - $drug_with_units = $this->drugsService->pluckAvailableDrugs('unit_id'); - $drug_with_forms = $this->drugsService->pluckAvailableDrugs('form_id'); - $drug_forms = $this->drugFormsService->pluckAvailableDrugForms('name'); - $drug_units = $this->drugUnitsService->pluckAvailableDrugUnits('name'); - $drug_routes = $this->drugRoutesService->pluckAvailableDrugRoutes('name'); - - $factors = CancerProtocolController::$factors; - if ($inpatient_info->discharged == 1) { - return view('ward_management::inpatient.inpatient_sheet_history', compact('patient', 'inpatient_info', 'specialities', 'diagnoses', 'diagnoses_all', 'procedures', 'options_procedures', 'sundries', 'options_sundries', 'drugs', 'options_drugs', 'outcomes', 'wards', 'triage', 'symptoms', 'documents', 'treatment_to_take_away', 'opd_investigations', 'diagnosis_categories', 'drug_with_units', 'drug_units', 'drug_routes', 'factors', - 'ward_investigations', 'referrals', 'patient_id', 'episode_id', 'ward_prescriptions', 'service_items', 'options_services','ward_dispensed_drugs_array','clinics', 'users', 'services_with_users_array', 'users_array', 'opd_investigations_position', 'ward_investigations_position', 'opd_investigations_date', 'ward_investigations_date', 'options_users', 'bed_categories', 'options_bed_categories', 'options_wards')); - } else { - - return view('ward_management::inpatient.inpatient_sheet', compact('patient', 'inpatient_info', 'specialities', 'diagnoses', 'diagnoses_all', 'procedures', 'options_procedures', 'sundries', 'options_sundries', 'anc_comments', 'drugs', 'options_drugs', 'outcomes', 'wards', 'triage', 'symptoms', 'documents', 'treatment_to_take_away', 'opd_investigations', 'diagnosis_categories', 'patient_vitals', 'drug_units', 'drug_routes', 'factors', 'age_group', 'options_observations', - 'ward_investigations', 'ward_prescriptions', 'referrals', 'patient_id', 'patient_appointment', 'episode_id', 'service_items', 'options_services','ward_dispensed_drugs_array','clinics', 'users', 'services_with_users_array', 'users_array', 'opd_investigations_position', 'ward_investigations_position', 'opd_investigations_date', 'ward_investigations_date', 'options_users', 'bed_categories', 'options_bed_categories', 'options_wards', 'ordered_cancer_protocols', 'drug_with_units', - 'drug_with_forms', 'drug_forms')); - } - } - - /* submit internal ward transfers */ - public function store_internal_ward_transfers(Request $request) { - $ward_transfer = new InternalWardTransfer; - $ward_transfer->patient_id = $request->patient_id; - $ward_transfer->from_ward = $request->from_ward; - $ward_transfer->to_ward = $request->to_ward; - $ward_transfer->transfer_date = Carbon::createFromFormat('d/m/Y', $request->transfer_date)->toDateString(); - $ward_transfer->comments = $request->transfer_comments; - $ward_transfer->created_by = Auth::id(); - - if ($ward_transfer->save()) { - //Updating the inpatient info table - $inpatient_info = InpatientInfo::find($request->info_id); - $inpatient_info->ward_id = $request->to_ward; - $inpatient_info->transferred = 1; - $inpatient_info->update(); - - $patient_id = $inpatient_info->patient_id; - $episode_id = $inpatient_info->episode_id; - - // check if there is a still admitted record and close it off - $still_admitted_record = WardBedStay::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'still_here' => 1])->first(); - - if ($still_admitted_record) { - // set the end date as today - $still_admitted_record->to = Carbon::createFromFormat('d/m/Y', $request->transfer_date)->toDateString(); - $still_admitted_record->still_here = 0; - $still_admitted_record->save(); - - $bed_number = $still_admitted_record->bed_number; - $bed_category = $still_admitted_record->bed_category; - $current_chart_of_account = $still_admitted_record->current_chart_of_account; - } else { - $latest_bed_record = WardBedStay::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('id', 'desc')->first(); - - $bed_number = $latest_bed_record->bed_number; - $bed_category = $latest_bed_record->bed_category; - $current_chart_of_account = $latest_bed_record->current_chart_of_account; - } - - // create new record with new ward copying the still or latest record - $ward_bed_stay = new WardBedStay(); - - $ward_bed_stay->patient_id = $patient_id; - $ward_bed_stay->episode_id = $episode_id; - $ward_bed_stay->ward_id = $request->to_ward; - $ward_bed_stay->bed_number = $bed_number; - $ward_bed_stay->bed_category = $bed_category; - $ward_bed_stay->bed_ward = $request->to_ward; - $ward_bed_stay->from = Carbon::createFromFormat('d/m/Y', $request->transfer_date)->toDateString(); - $ward_bed_stay->to = date('Y-m-d'); - $ward_bed_stay->still_here = 1; - $ward_bed_stay->duration = 0; - $ward_bed_stay->bed_fee_rate = 0; - $ward_bed_stay->bed_fee_total = 0; - $ward_bed_stay->current_chart_of_account = $current_chart_of_account; - $ward_bed_stay->created_by = Auth::id(); - $ward_bed_stay->save(); - } - return response()->json($request->all()); - } - - /* - * store from the in_patient_sheet form - */ - public function store(Request $request) { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $patient_insurance_status = $request->patient_insurance_status ?? 0; - - // change status for the cancer protocol - if (isset($request->ordered_cancer_protocol_id)) { - $ordered_cancer_protocol_ids = $request->ordered_cancer_protocol_id; - $ordered_cancer_protocol_status = $request->ordered_cancer_protocol_status; - for ($p = 0; $p < count($ordered_cancer_protocol_ids); $p++) { - $protocol = OrderedCancerProtocols::find($ordered_cancer_protocol_ids[$p]); - $protocol->protocol_status = $ordered_cancer_protocol_status[$p]; - $protocol->save(); - } - } - - // update the patient info - $inpatient_info = InpatientInfo::find($request->info_id); - $inpatient_info->primary_diagnosis = $request->primary_diagnosis; - $inpatient_info->other_diagnoses = serialize($request->other_diagnosis); - $inpatient_info->left_eye_diagnosis = $request->left_eye_diagnosis ? implode(',', $request->left_eye_diagnosis) : NULL; - $inpatient_info->right_eye_diagnosis = $request->left_eye_diagnosis ? implode(',', $request->right_eye_diagnosis) : NULL; - $inpatient_info->ward_message = $request->comments; - $inpatient_info->discharge_summary = $request->discharge_summary; - $inpatient_info->clinical_summary = $request->clinical_summary; - $inpatient_info->referral_notes = $request->referral_notes; - - if ($request->comments) { - $ward_inpatient_sheet_comments = new WardInpatientSheetComment; - $ward_inpatient_sheet_comments->patient_id = $patient_id; - $ward_inpatient_sheet_comments->episode_id = $episode_id; - $ward_inpatient_sheet_comments->ward_comments = $request->comments; - $ward_inpatient_sheet_comments->ward_id = $request->ward_id; - $ward_inpatient_sheet_comments->created_by = Auth::id(); - $ward_inpatient_sheet_comments->save(); - } - - // save for the nurse comments - if($request->nurse_comments){ - $ward_inpatient_sheet_nurse_comments = new WardInpatientSheetNurseComment; - $ward_inpatient_sheet_nurse_comments->patient_id = $patient_id; - $ward_inpatient_sheet_nurse_comments->episode_id = $episode_id; - $ward_inpatient_sheet_nurse_comments->ward_comments = $request->nurse_comments; - $ward_inpatient_sheet_nurse_comments->ward_id = $request->ward_id; - $ward_inpatient_sheet_nurse_comments->created_by = Auth::id(); - $ward_inpatient_sheet_nurse_comments->save(); - } - - if ($request->inpatient_history || $request->inpatient_result || $request->inpatient_vitals_and_examinations || $request->inpatient_impression || $request->inpatient_plan) { - $ward_inpatient_sheet_comments = new WardInpatientDetailedNote; - $ward_inpatient_sheet_comments->patient_id = $patient_id; - $ward_inpatient_sheet_comments->episode_id = $episode_id; - $ward_inpatient_sheet_comments->history = $request->inpatient_history; - $ward_inpatient_sheet_comments->result = $request->inpatient_result; - $ward_inpatient_sheet_comments->vitals = $request->inpatient_vitals_and_examinations; - $ward_inpatient_sheet_comments->impression = $request->inpatient_impression; - $ward_inpatient_sheet_comments->plan = $request->inpatient_plan; - $ward_inpatient_sheet_comments->ward_id = $request->ward_id; - $ward_inpatient_sheet_comments->created_by = Auth::id(); - $ward_inpatient_sheet_comments->save(); - } - - $inpatient_info->outcome_id = $request->outcome; - $inpatient_info->updated_by = Auth::id(); - $inpatient_info->tb_status_assessment = $request->tb_status_assessment; - - //bed categories - $bed_number_array = $request->on_bed_number; - $bed_category_array = $request->on_bed_bedcategory; - $bed_ward_array = $request->bed_ward; - $on_bed_from_array = $request->on_bed_from; - $still_here_or_not = $request->upto_option; - $on_bed_upto_array = $request->on_bed_upto; - $bed_duration_array = $request->bed_duration; - $bed_rate_array = $request->bed_rate; - - // if any of the currently saved are not in the previous it means they were deleted - $already_stored_bed_categories = WardBedStay::where(['episode_id' => $episode_id,'patient_id' => $patient_id,'ward_id' => $request->ward_id])->get(); - $previous_bed_stays = is_array($request->previous_bed_stays) ? $request->previous_bed_stays : []; - - foreach ($already_stored_bed_categories as $already_stored_bed_category) { - if (!in_array($already_stored_bed_category->id, $previous_bed_stays)) { - $already_stored_bed_category->delete(); - } - } - - if (is_array($bed_number_array)) { - for ($i=0; $i < count($bed_number_array) ; $i++) { - if (!empty($bed_category_array[$i]) && !empty($bed_ward_array[$i])) { - $ward_bed_stay = WardBedStay::firstOrNew(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'ward_id' => $request->ward_id, 'bed_category' => $bed_category_array[$i], 'bed_ward' => $bed_ward_array[$i]]); - $bed_category_cost = InpatientBedCategory::find($bed_category_array[$i]); - $ward_bed_stay->patient_id = $patient_id; - $ward_bed_stay->episode_id = $episode_id; - $ward_bed_stay->ward_id = $request->ward_id; - $ward_bed_stay->bed_number = $bed_number_array[$i]; - $ward_bed_stay->bed_category = $bed_category_array[$i]; - $ward_bed_stay->bed_ward = $bed_ward_array[$i]; - $ward_bed_stay->from = $on_bed_from_array[$i]; - $ward_bed_stay->to = $on_bed_upto_array[$i]; - if ($i == 0) { //the first item in array - $ward_bed_stay->still_here = $still_here_or_not == "Still here" ? 1 : 0; - } - $ward_bed_stay->duration = $bed_duration_array[$i] ?? 0; - $ward_bed_stay->bed_fee_rate = $bed_rate_array[$i] ?? 0; - if ($bed_category_cost->cost_type == 2) { - if (!empty($bed_duration_array[$i]) || !empty($bed_rate_array[$i])) { - if ($bed_duration_array[$i] == 1) { - $ward_bed_stay->bed_fee_total = $bed_category_cost->cost_first_night; - } elseif (($bed_duration_array[$i] - 1) <= $bed_category_cost->to_night) { - $amount = ($bed_duration_array[$i] - 1) * $bed_category_cost->cost_range; - $ward_bed_stay->bed_fee_total = $bed_category_cost->cost_first_night + $amount; - } else { - $other_days = $bed_category_cost->to_night + 1; - $range_amount = $bed_category_cost->to_night * $bed_category_cost->cost_range; - $cost_after = ($bed_duration_array[$i] - $other_days) * $bed_category_cost->cost_after; - $ward_bed_stay->bed_fee_total = $bed_category_cost->cost_first_night + $range_amount + $cost_after; - } - - } else $ward_bed_stay->bed_fee_total = 0; - } else $ward_bed_stay->bed_fee_total = ($bed_duration_array[$i] ?? 0) * ($bed_rate_array[$i] ?? 0); - - /*** add the current chart of account ***/ - $default_bed_categories_income_acc = ChartOfAccount::where('slug', 'default_ward_accomodation_income')->first(); - $default_bed_categories_income_acc_id = is_null($default_bed_categories_income_acc) ? null : $default_bed_categories_income_acc->id; - $bed_category_income_account = get_name($bed_category_array[$i], "id", "income_account", "inpatient_bed_categories"); - $bed_category_income_account = (is_null($bed_category_income_account) || $bed_category_income_account == "N/A") ? $default_bed_categories_income_acc_id : $bed_category_income_account; - $ward_bed_stay->current_chart_of_account = $bed_category_income_account; - /* **** */ - - $ward_bed_stay->created_by = Auth::id(); - $ward_bed_stay->save(); - } - } - } - - // check if a speciality is selected - if ($request->speciality) { - $inpatient_info->speciality_id = $request->speciality; - } - - // check if any procedure is selected - if (is_array($request->procedure_id) && !in_array(null, $request->procedure_id)) { - $inpatient_info->procedures = serialize($request->procedure_id); - } else { - $inpatient_info->procedures = ''; - } - - // procedure_done_by - if (is_array($request->procedure_done_by) && !in_array(null, $request->procedure_done_by)) { - $inpatient_info->procedures_done_by = serialize($request->procedure_done_by); - } - - // procedure_hospital_fee - if (is_array($request->procedure_hospital_fee) && !in_array(null, $request->procedure_hospital_fee)) { - $inpatient_info->procedure_hospital_fee = serialize($request->procedure_hospital_fee); - } else { - $inpatient_info->procedure_hospital_fee = ''; - } - - // procedure_staff_fee - if (is_array($request->procedure_performance_fee) && !in_array(null, $request->procedure_performance_fee)) { - $inpatient_info->procedure_staff_fee = serialize($request->procedure_performance_fee); - } else { - $inpatient_info->procedure_staff_fee = ''; - } - - $ward_procedure_ids_array = $request->procedure_id; - $ward_procedure_eye_array = $request->eye; - $ward_procedure_performed_by_array = $request->procedure_done_by; - $ward_procedure_hospital_fee_array = $request->procedure_hospital_fee; - $ward_procedure_staff_fee_array = $request->procedure_performance_fee; - $ward_procedure_dates_array = $request->procedure_date; - - //remove any previously stored consultations and services that are not in this new submission/save - $old_already_stored_procedure_record_ids = WardProcedure::where(['episode_id' => $episode_id,'patient_id' => $patient_id,'ward_id' =>$request->ward_id])->pluck('id')->toArray(); - $new_already_stored_procedure_record_ids = $request->procedure_record_id ?? []; - - for ($i=0; $i < count($old_already_stored_procedure_record_ids) ; $i++) { - if (!in_array($old_already_stored_procedure_record_ids[$i], $new_already_stored_procedure_record_ids)) { - $procedure_to_remove = WardProcedure::find($old_already_stored_procedure_record_ids[$i]); - if ($procedure_to_remove) { - $procedure_to_remove->delete(); - } - } - } - - if (is_array($ward_procedure_ids_array)) { - for ($x = 0; $x < count($ward_procedure_ids_array); $x++) { - if (!is_null($ward_procedure_ids_array[$x])) { - $ward_procedures_record = new WardProcedure; - - // get chi price if available - if ($patient_insurance_status == 1) { - $procedure_insurance_details = get_item_insurance_pricing($patient_id, $ward_procedure_ids_array[$x], 2, true, $request->ward_id); - $ward_procedures_record->chi_price = $procedure_insurance_details[1]; - } - - $ward_procedures_record->patient_id = $patient_id; - $ward_procedures_record->episode_id = $episode_id; - $ward_procedures_record->procedure_id = $ward_procedure_ids_array[$x]; - $ward_procedures_record->performed_by = $ward_procedure_performed_by_array[$x]; - $ward_procedures_record->hospital_fee = $ward_procedure_hospital_fee_array[$x]; - $ward_procedures_record->staff_fee = $ward_procedure_staff_fee_array[$x]; - $ward_procedures_record->procedure_date = is_null($ward_procedure_dates_array[$x]) ? Carbon::now() : $ward_procedure_dates_array[$x]; - $ward_procedures_record->ward_id = $request->ward_id; - $ward_procedures_record->eye = isset($ward_procedure_eye_array[$x])? $ward_procedure_eye_array[$x]:null; - $ward_procedures_record->current_chart_of_account = get_name($ward_procedure_ids_array[$x], "id", "account_id", "procedures"); - $ward_procedures_record->created_by = Auth::id(); - $ward_procedures_record->save(); - } - } - } - - // check if any sundry is selected - if (is_array($request->sundry_id) && !in_array(null, $request->sundry_id)) { - $sundry_id = $request->sundry_id; - $sundry_quantity = $request->sundry_quantity; - $sundries = array( - "sundries" => $sundry_id, - "quantity" => $sundry_quantity - ); - - $inpatient_info->sundries = serialize($sundries); - } else { - $inpatient_info->sundries = ''; - } - - $ward_sundries_ids_array = $request->sundry_id; - $ward_sundries_quantities_array = $request->sundry_quantity; - $ward_sundries_qty_given_so_far_array = $request->sundry_quantity_dispensed_so_far; - $ward_sundries_dates_array = $request->sundry_date; - - if (is_array($ward_sundries_ids_array)) { - for ($j = 0; $j < count($ward_sundries_ids_array); $j++) { - // only save if the dispensed drug quantity is not null - $sundry_details = Sundry::find($ward_sundries_ids_array[$j]); - - if (!is_null($ward_sundries_quantities_array[$j]) && $sundry_details) { - $ward_sundry_dispensations = new WardSundryDispensation; - $ward_sundry_dispensations->patient_id = $patient_id; - $ward_sundry_dispensations->episode_id = $episode_id; - $ward_sundry_dispensations->sundry_id = $ward_sundries_ids_array[$j]; - $ward_sundry_dispensations->quantity_given = $ward_sundries_quantities_array[$j]; - $ward_sundry_dispensations->dispensation_date = $ward_sundries_dates_array[$j]; - $ward_sundry_dispensations->current_chart_of_account = $sundry_details->account_id; - $ward_sundry_dispensations->inventory_account = $sundry_details->inventory_account; - $ward_sundry_dispensations->cost_of_goods_account = $sundry_details->cost_of_goods_account; - $ward_sundry_dispensations->cost_price = $sundry_details->cost_price; - - /* == save the selling price at point of dispensation === */ - $sundry_selling_price = 0; - if($patient_insurance_status == 1) { - $sundry_insurance_details = get_item_insurance_pricing($patient_id, $ward_sundries_ids_array[$j], 5, true, $request->ward_id); - $sundry_selling_price = $sundry_insurance_details[2]; - $ward_sundry_dispensations->chi_price = $sundry_insurance_details[1]; - } else { - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_id) { - $sundry_selling_price = get_price_list_category_price($price_list_id, 5, $ward_sundries_ids_array[$j]); - } else { - $sundry_selling_price = $sundry_details->non_insured_price; - } - } - - $ward_sundry_dispensations->price = $sundry_selling_price; - /* ============= */ - - $ward_sundry_dispensations->ward_id = $request->ward_id; - $ward_sundry_dispensations->created_by = Auth::id(); - $ward_sundry_dispensations->save(); - - reduce_ward_stock_with_consumed_quantity($ward_sundries_ids_array[$j], $ward_sundries_quantities_array[$j], 2, $request->ward_id, $patient_id, $episode_id, $ward_sundry_dispensations->id); - } - } - } - - //remove any previously stored sundries that are not in this new submission/save - $already_stored_ward_sundries_array = WardSundryDispensation::where(['episode_id' => $episode_id,'patient_id' => $patient_id,'ward_id' => $request->ward_id])->pluck('sundry_id')->toArray(); - - for ($i=0; $i < count($already_stored_ward_sundries_array) ; $i++) { - $ward_sundries_ids_array = is_null($ward_sundries_ids_array) ? [] : $ward_sundries_ids_array; - if (is_array($ward_sundries_ids_array) && !in_array($already_stored_ward_sundries_array[$i], $ward_sundries_ids_array)) { - - $sundry_to_remove = WardSundryDispensation::where(['episode_id' => $episode_id, 'patient_id' => $patient_id,'ward_id' => $request->ward_id, 'sundry_id' => $already_stored_ward_sundries_array[$i]])->first(); - if ($sundry_to_remove) { - $sundry_to_remove->delete(); - } - } - } - - - // check if any service is selected - if (is_array($request->service_id) && !in_array(null, $request->service_id)) { - $service_id = $request->service_id; - $service_quantities = $request->service_quantity; - - $services = array( - "services" => $service_id, - "quantity" => $service_quantities - ); - $inpatient_info->services = serialize($services); - } else { - $inpatient_info->services = ''; - } - - // services_unit_price - if (is_array($request->service_unit_price) && !in_array(null, $request->service_unit_price)) { - $inpatient_info->services_unit_price = serialize($request->service_unit_price); - } else { - $inpatient_info->services_unit_price = ''; - } - // service_staff_fee - if (is_array($request->service_staff_fee) && !in_array(null, $request->service_staff_fee)) { - $inpatient_info->services_staff_fee = serialize($request->service_staff_fee); - } else { - $inpatient_info->services_staff_fee = ''; - } - - $ward_services_ids_array = $request->service_id; - $ward_services_quantities_array = $request->service_quantity; - $ward_services_unit_prices_array = $request->service_unit_price; - $ward_services_staff_fees_array = $request->service_staff_fee; - $ward_services_dates_array = $request->service_date; - - //remove any previously stored consultations and services that are not in this new submission/save - $old_already_stored_consultation_and_services_record_ids = WardConsultationsAndService::where(['episode_id' => $episode_id,'patient_id' => $patient_id,'ward_id' =>$request->ward_id])->pluck('id')->toArray(); - $new_already_stored_consultation_and_services_record_ids = $request->ward_consultations_and_services_record_id; - - for ($i=0; $i < count($old_already_stored_consultation_and_services_record_ids) ; $i++) { - $new_already_stored_consultation_and_services_record_ids = is_null($new_already_stored_consultation_and_services_record_ids) ? [] : $new_already_stored_consultation_and_services_record_ids; - if (!in_array($old_already_stored_consultation_and_services_record_ids[$i], $new_already_stored_consultation_and_services_record_ids)) { - $services_to_remove = WardConsultationsAndService::find($old_already_stored_consultation_and_services_record_ids[$i]); - if ($services_to_remove) { - $services_to_remove->delete(); - } - } - } - - //do the dew here - if (is_array($ward_services_ids_array)) { - for ($j = 0; $j < count($ward_services_ids_array); $j++) { - // only save if the dispensed drug quantity is not null - if (!is_null($ward_services_quantities_array[$j])) { - $ward_services_and_consultations = new WardConsultationsAndService; - $ward_services_and_consultations->patient_id = $patient_id; - $ward_services_and_consultations->episode_id = $episode_id; - $ward_services_and_consultations->service_id = $ward_services_ids_array[$j]; - $ward_services_and_consultations->quantity_given = $ward_services_quantities_array[$j]; - $ward_services_and_consultations->unit_price = $ward_services_unit_prices_array[$j]; - $ward_services_and_consultations->staff_fee = $ward_services_staff_fees_array[$j]; - - // get chi price if available - if ($patient_insurance_status == 1) { - $service_insurance_details = get_item_insurance_pricing($patient_id, $ward_services_ids_array[$j], 1, true, $request->ward_id); - $ward_services_and_consultations->chi_price = $service_insurance_details[1]; - $ward_services_and_consultations->unit_price = $service_insurance_details[2]; - } - - $ward_services_and_consultations->dispensation_date = is_null($ward_services_dates_array[$j]) ? Carbon::now() : $ward_services_dates_array[$j]; - $ward_services_and_consultations->current_chart_of_account = get_name($ward_services_ids_array[$j], "id", "account_id", "services"); - $ward_services_and_consultations->ward_id = $request->ward_id; - $ward_services_and_consultations->created_by = Auth::id(); - $ward_services_and_consultations->save(); - } - } - } - - // check if any extras is selected - if (is_array($request->extra_name) && !in_array(null, $request->extra_name)) { - $extra_name = $request->extra_name; - $extra_cost = $request->extra_cost; - $extras = array( - "name" => $extra_name, - "cost" => $extra_cost - ); - $inpatient_info->extras = serialize($extras); - } else { - $inpatient_info->extras = ''; - } - - $extra_items_array = $request->extra_name ?? []; - $extra_costs_array = $request->extra_cost ?? []; - $extra_dates_array = $request->extra_date ?? []; - - $ward_extras_income_account = ChartOfAccount::where('slug', 'ward_extras_income_account')->first(); - - if (is_array($extra_items_array)) { - for ($k = 0; $k < count($extra_items_array); $k++) { - // only save if the dispensed drug quantity is not null - if (!is_null($extra_costs_array[$k])) { - $ward_extra = new WardExtra; - $ward_extra->patient_id = $patient_id; - $ward_extra->episode_id = $episode_id; - $ward_extra->extra_item = $extra_items_array[$k]; - $ward_extra->extra_cost = $extra_costs_array[$k]; - $ward_extra->current_chart_of_account = !is_null($ward_extras_income_account) ? $ward_extras_income_account->id : 0; - $ward_extra->dispensation_date = $extra_dates_array[$k]; - $ward_extra->ward_id = $request->ward_id; - $ward_extra->created_by = Auth::id(); - $ward_extra->save(); - } - } - } - - //remove any previously stored extras that are not in this new submission/save - $already_stored_extra_items_array = WardExtra::where(['episode_id' => $episode_id,'patient_id' => $patient_id,'ward_id' => $request->ward_id])->pluck('extra_item')->toArray(); - - for ($i=0; $i < count($already_stored_extra_items_array) ; $i++) { - if (!in_array($already_stored_extra_items_array[$i], $extra_items_array)) { - - $extra_to_remove = WardExtra::where(['episode_id' => $episode_id, 'patient_id' => $patient_id,'ward_id' => $request->ward_id, 'extra_item' => $already_stored_extra_items_array[$i]])->first(); - if ($extra_to_remove) { - $extra_to_remove->delete(); - } - } - } - - // check if any ward treatments are selected - if (isset($request->drugs) && is_array($request->drugs) && !in_array(null, $request->drugs)) { - $drug_id = $request->drugs; - $days = $request->drugs_days; - $treatments = array( - "drugs" => $drug_id, - "days" => $days - ); - $inpatient_info->ward_treatments = serialize($treatments); - } else { - $inpatient_info->ward_treatments = ''; - } - - // check if ward dispensing has been used - if (isset($request->ward_dispensed_drug_id) && isset($request->ward_quantity_dispensed)) { - - $dispensed_drug_ids_array = $request->ward_dispensed_drug_id; - $dispensed_drug_quantities_array = $request->ward_quantity_dispensed; - $dispensed_ward_treatment_ids_array = $request->ward_treatment_id; - - if (is_array($dispensed_drug_ids_array)) { - foreach ($dispensed_drug_ids_array as $i => $drug_id) { - if (!empty($dispensed_drug_quantities_array[$i])) { - $ward_treatment_id = $this->dispensationService->saveDispensation((int)$patient_id, (int)$episode_id, $drug_id, (int)$dispensed_drug_quantities_array[$i], - $dispensed_ward_treatment_ids_array[$i], $request->ward_id ?? 0); - - if ($ward_treatment_id) { - //reduce the ward stock from the ward stock table - reduce_ward_stock_with_consumed_quantity($drug_id, $dispensed_drug_quantities_array[$i], 1, $request->ward_id, $patient_id, $episode_id, $ward_treatment_id); - } - } - } - } - } - - if ($request->outcome == 2) { - // discharged - $inpatient_info->discharged = 1; - $inpatient_info->discharged_on = is_null($request->discharge_date) ? null : Carbon::createFromFormat('d/m/Y', $request->discharge_date)->toDateString(); - $inpatient_info->discharged_by = Auth::id(); - - /* when discharged, update the bed stays table with discharge date */ - $ward_bed_stay_active = WardBedStay::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'ward_id' => $request->ward_id, 'still_here' => 1])->first(); - if ($ward_bed_stay_active) { - $ward_bed_stay_active->still_here = 0; - $ward_bed_stay_active->to = is_null($ward_bed_stay_active->to) ? Carbon::createFromFormat('d/m/Y', $request->discharge_date)->toDateString() : $ward_bed_stay_active->to; - $ward_bed_stay_active->update(); - } - /* end of bed stay update */ - } else if ($request->outcome == 3) { - // home with follow up - $inpatient_info->discharged = 1; - $inpatient_info->discharged_on = date('Y-m-d'); - $inpatient_info->discharged_by = Auth::id(); - $inpatient_info->followup_where = $request->where; - $inpatient_info->followup_when = is_null($request->when) ? null : Carbon::createFromFormat('d/m/Y', $request->when)->toDateString(); - - // get current clinic of patient if available - $episode_information = PatientEpisode::find($episode_id); - - // save information to the follow-up table - $patient_appointment = PatientAppointment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $appointment = $patient_appointment ? $patient_appointment : new PatientAppointment(); - $appointment->patient_id = $patient_id; - $appointment->incharge_id = $request->followup_in_charge; - $appointment->clinic_allocation = $request->followup_clinic_allocation; - $appointment->episode_id = $episode_id; - $appointment->appointment_date = !is_null($request->followup_when) ? Carbon::createFromFormat('d/m/Y',$request->followup_when)->toDateString() : null; - $appointment->appointment_time = $request->followup_in_time; - $appointment->created_from = "Inpatient"; - $appointment->created_by = Auth::id(); - $appointment->updated_by = Auth::id(); - $appointment->save(); - } else if ($request->outcome == 4) { - // referred - $inpatient_info->discharged = 1; - $inpatient_info->discharged_on = date('Y-m-d'); - $inpatient_info->discharged_by = Auth::id(); - $inpatient_info->referred_to = $request->referral_id; - } else if ($request->outcome == 5) { - // died - $inpatient_info->died_on = $request->died_on; - $inpatient_info->discharged = 1; - $inpatient_info->discharged_on = date('Y-m-d'); - $inpatient_info->discharged_by = Auth::id(); - } else if ($request->outcome == 8) { - // ran away without paying - $inpatient_info->discharged = 1; - $inpatient_info->discharged_on = date('Y-m-d'); - $inpatient_info->discharged_by = Auth::id(); - } - - if ($inpatient_info->update()) { - if($request->outcome == 2 || $request->outcome == 3 || $request->outcome == 4){ - // check if there is a discharge risk record for the patient - $discharge_mortality = DB::table('discharge_mortality_risk')->where('inpatient_id', $request->info_id) - ->first(); - - if (is_smart_discharge_enabled() && $discharge_mortality) { - perform_post_discharge_actions($patient_id, $discharge_mortality->id); - } - } - - //record the update into the inpatient audit table - inpatient_sheet_audit($patient_id, $episode_id, $request); - - switch ($request->get('submit-btn')) { - case 'order_tta': - // set session for the tta - session()->put('tta', 1); - return redirect('/prescriptions/create/'); - case 'ward_prescription': - session()->put('ward_id', $inpatient_info->ward_id); - // set session for the ward prescription - session()->put('ward_prescription', 1); - return redirect('/prescriptions/create/'); - case 'order_investigation': - // set session for the ward investigation - session()->put('ward_investigation', 1); - return redirect('/investigations/investigations_review'); - case 'billing': - return redirect('inpatient_billing'); - case 'cancer_protocol': - session()->put('inpatient_info_id', $inpatient_info->id); - return redirect('/cancer_protocol/order_protocol/'); - case 'save': - default: - flash('Inpatient sheet has been saved')->success(); - - if (is_smart_discharge_enabled() && $request->redirect_to_pdrm_monitoring == 1) { - return redirect('/triage/edit_for_post_discharge/' . $inpatient_info->episode_id); - } else { - return redirect('in_patient_sheet'); - } - } - } else { - flash('An error occurred. Please contact system admin')->error(); - return redirect()->back(); - } - } - - public function inpatient_billing(Request $request) { - - if (session('print')){ - $print_bill = 1; - session()->forget('print'); - } else { - $print_bill = 0; - } - - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $patient = Patient::find($patient_id); - - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('created_at', 'desc')->first(); - - $treatment_to_take_away = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'tta' => 1])->get(); - $service_deposits = ServiceDeposit::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $patient_discount = PatientDiscount::where(['patient_category' => $patient->category_id])->select("discount", "pay_later")->first(); - - if (!is_null($patient_discount)) { - $patient_discount->toArray(); - } - - //get both ward and opd investigations - $ordered_ward_investigations = OrderedInvestigation::where(['episode_id' => $episode_id, 'payment_status' => '0'])->get(); - - // get all ordered investigations paid for in in-patient - $inpatient_bill_info = InpatientBill::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - - // set the saved opd prices here - $saved_sundry_prices = []; - $saved_drug_prices = []; - $saved_procedures_prices = []; - $saved_services_prices = []; - $saved_tta_prices = []; - $saved_chi_sundry_prices = []; - $saved_chi_drug_prices = []; - $saved_chi_procedures_prices = []; - $saved_chi_services_prices = []; - $saved_chi_tta_prices = []; - - if ($inpatient_bill_info) { - $pre_sundry_ids = $inpatient_bill_info->sundries_item_ids ? explode(",", $inpatient_bill_info->sundries_item_ids) : []; - $pre_sundry_prices = $inpatient_bill_info->sundries_item_prices ? explode(",", $inpatient_bill_info->sundries_item_prices) : []; - $pre_sundry_chi_prices = $inpatient_bill_info->sundries_item_chi_prices ? explode(",", $inpatient_bill_info->sundries_item_chi_prices) : []; - - for ($i = 0; $i < count($pre_sundry_ids); $i++) { - if (isset($pre_sundry_prices[$i])) { - $saved_sundry_prices[$pre_sundry_ids[$i]] = $pre_sundry_prices[$i]; - } - - if (isset($pre_sundry_chi_prices[$i])) { - $saved_chi_sundry_prices[$pre_sundry_ids[$i]] = $pre_sundry_chi_prices[$i]; - } - } - - $pre_drug_ids = $inpatient_bill_info->prescription_treatment_item_ids ? explode(",", $inpatient_bill_info->prescription_treatment_item_ids) : []; - $pre_drug_prices = $inpatient_bill_info->prescription_treatment_item_prices ? explode(",", $inpatient_bill_info->prescription_treatment_item_prices) : []; - $pre_drug_chi_prices = $inpatient_bill_info->prescription_treatment_item_chi_prices ? explode(",", $inpatient_bill_info->prescription_treatment_item_chi_prices) : []; - - for ($i = 0; $i < count($pre_drug_ids); $i++) { - if (isset($pre_drug_prices[$i])) { - $saved_drug_prices[$pre_drug_ids[$i]] = $pre_drug_prices[$i]; - } - - if (isset($pre_drug_chi_prices[$i])) { - $saved_chi_drug_prices[$pre_drug_ids[$i]] = $pre_drug_chi_prices[$i]; - } - } - - $pre_procedure_ids = $inpatient_bill_info->procedures_item_ids ? explode(",", $inpatient_bill_info->procedures_item_ids) : []; - $pre_procedure_prices = $inpatient_bill_info->procedures_item_prices ? explode(",", $inpatient_bill_info->procedures_item_prices) : []; - $pre_procedure_chi_prices = $inpatient_bill_info->procedures_item_chi_prices ? explode(",", $inpatient_bill_info->procedures_item_chi_prices) : []; - - for ($i = 0; $i < count($pre_procedure_ids); $i++) { - if (isset($pre_procedure_prices[$i])) { - $saved_procedures_prices[$pre_procedure_ids[$i]] = $pre_procedure_prices[$i]; - } - - if (isset($pre_procedure_chi_prices[$i])) { - $saved_chi_procedures_prices[$pre_procedure_ids[$i]] = $pre_procedure_chi_prices[$i]; - } - } - - $pre_service_ids = $inpatient_bill_info->services_item_ids ? explode(",", $inpatient_bill_info->services_item_ids) : []; - $pre_service_prices = $inpatient_bill_info->services_item_prices ? explode(",", $inpatient_bill_info->services_item_prices) : []; - $pre_service_chi_prices = $inpatient_bill_info->services_item_chi_prices ? explode(",", $inpatient_bill_info->services_item_chi_prices) : []; - - for ($i = 0; $i < count($pre_service_ids); $i++) { - if (isset($pre_service_prices[$i])) { - $saved_services_prices[$pre_service_ids[$i]] = $pre_service_prices[$i]; - } - - if (isset($pre_service_chi_prices[$i])) { - $saved_chi_services_prices[$pre_service_ids[$i]] = $pre_service_chi_prices[$i]; - } - } - - $pre_tta_ids = $inpatient_bill_info->tta_item_ids ? explode(",", $inpatient_bill_info->tta_item_ids) : []; - $pre_tta_prices = $inpatient_bill_info->tta_item_prices ? explode(",", $inpatient_bill_info->tta_item_prices) : []; - $pre_tta_chi_prices = $inpatient_bill_info->tta_item_chi_prices ? explode(",", $inpatient_bill_info->tta_item_chi_prices) : []; - - for ($i = 0; $i < count($pre_tta_ids); $i++) { - if (isset($pre_tta_prices[$i])) { - $saved_tta_prices[$pre_tta_ids[$i]] = $pre_tta_prices[$i]; - } - - if (isset($pre_tta_chi_prices[$i])) { - $saved_chi_tta_prices[$pre_tta_ids[$i]] = $pre_tta_chi_prices[$i]; - } - } - } - - // get ward dispensing details if available - $ward_treatment_drug_ids_that_have_been_dispensed_array = WardTreatmentDispensation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->whereNull('deleted_at')->distinct('drug_id')->pluck('drug_id')->toArray(); - $dispensed_drug_quantity_given_array = []; - - for ($i = 0; $i < count($ward_treatment_drug_ids_that_have_been_dispensed_array); $i++) { - $drug_ward_quantity_given = WardTreatmentDispensation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'drug_id' => $ward_treatment_drug_ids_that_have_been_dispensed_array[$i]])->sum('quantity_given'); - $dispensed_drug_quantity_given_array[$ward_treatment_drug_ids_that_have_been_dispensed_array[$i]] = $drug_ward_quantity_given; - } - - $price_list_categories = PriceListCategories::select('patient_category_id', 'id')->get(); - - if (isset($request->price_list_category_id) && $request->price_list_category_id != 0) { - $price_list_set = $request->price_list_category_id; - } else { - $price_list_set = false; - } - - //if the price list was changed before, continue using the price list that was set the last time - /* if($inpatient_bill_info && !is_null($inpatient_bill_info->price_list)){ - $price_list_set = $inpatient_bill_info->price_list; - } */ - - // Check for anaesthesia in this episode - $anaesthesia = DB::table('anaesthesias')->where('episode_id', $episode_id)->select('other_drugs_given', 'other_drugs_cost', 'other_drugs_bill')->first(); - $services_with_users_array = InpatientController::configured_users_with_their_services_array(); - - $service_items = Services::withTrashed()->orderBy('name','asc')->pluck('name', 'id')->prepend('- select -', ''); - $users_collection = DB::table('users')->orderBy("first_name","asc")->select("id")->get()->toArray(); - $service_with_users_array = []; - $users_array = []; - $options_users = ""; - foreach ($users_collection as $value){ - $user = User::find($value->id); - if (!is_null($user)) { - $users_array[$user->id] = $user->first_name . " ". $user->last_name; - $options_users .= ""; - if ($user->hasRole('Doctors') || $user->hasRole('Doctor')) { - //use this join query instead of the commented out query to cater for execution speed (N+1) - $consultation_records = DB::table('services') - ->join('staff_payment_configurations','staff_payment_configurations.item_id', '=', 'services.id') - ->where('staff_payment_configurations.user_id',$value->id) - ->where('staff_payment_configurations.item_category',3) - ->orderBy('staff_payment_configurations.created_at','asc') - ->select('services.*') - ->get(); - - foreach ($consultation_records as $record) { - $users_consultation_fee = $record->non_insured_price; - //concatenate the service_record_id with the users_id to form the key for the array - $dynamic_key = $record->id."__".$value->id; - $dynamic_value = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users')." (".$record->name.")"; - - $service_with_users_array[$dynamic_key] = $dynamic_value; - - //add these dynamically formed values to service_items array - array_add($service_items, $dynamic_key, $dynamic_value); - //add it to the services_options too i.e used when user clicks add_service btn - } - } - } - } - - $sundries = Sundry::where('available', 1)->orderby('name', 'asc')->pluck('name', 'id')->prepend('- select -', ''); - - //check for authenticated investigations - $investigation_results = InvestigationResults::where(['patient_id' => $patient_id,'episode_id' => $episode_id ,'inpatient' => 1])->get(); - - return view('ward_management::inpatient.inpatient_billing', compact('patient', 'dispensed_drug_quantity_given_array','patient', 'inpatient_info', 'patient_id', 'saved_sundry_prices','treatment_to_take_away', 'service_deposits', 'patient_discount', 'episode_id', 'ordered_ward_investigations', 'saved_chi_tta_prices', - 'price_list_categories', 'price_list_set', 'anaesthesia', 'print_bill', 'services_with_users_array', 'service_items', 'sundries', 'investigation_results', 'inpatient_bill_info', 'saved_drug_prices', 'saved_procedures_prices', 'saved_services_prices', 'saved_tta_prices', 'saved_chi_sundry_prices', 'saved_chi_drug_prices', 'saved_chi_procedures_prices', 'saved_chi_services_prices')); - } - - public function store_inpatient_bill(Request $request) { - - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $insurance_claims = []; - - // generate receipt number - $receipt_number = $this->receiptService->createReceipt('Inpatient Bill'); - - // begin transaction - DB::beginTransaction(); - - try { - // store ward investigations and there dynamic prices - $ward_investigations_array = $request->investigations_item_ids; - $ward_investigations_amounts_array = $request->investigation_amount; - $ward_investigations_insurance_amounts_array = $request->investigation_insurance_amount; - $ward_investigation_order_ids = $request->investigation_order_ids; - $investigations_tariff_ids = $request->investigations_tariff_ids; - $investigations_benefit_ids = $request->investigations_benefit_ids; - $ward_inv_pricing_ids = $request->ward_inv_pricing_ids; - $orders_with_pricing = []; - - if (is_array($ward_investigations_array)) { - for ($i=0; $i < count($ward_investigations_array) ; $i++) { - $ward_inv_pricing = WardInvestigationPricing::find($ward_inv_pricing_ids[$i]); - - if (!$ward_inv_pricing) { - $ward_inv_pricing = new WardInvestigationPricing(); - $ward_inv_pricing->patient_id = $patient_id; - $ward_inv_pricing->episode_id = $episode_id; - $ward_inv_pricing->investigation_id = $ward_investigations_array[$i]; - $ward_inv_pricing->order_id = $ward_investigation_order_ids[$i]; - $ward_inv_pricing->ward_id = get_name($request->inpatient_info_id, "id", "ward_id", "inpatient_info"); - $ward_inv_pricing->current_chart_of_account = get_name($ward_investigations_array[$i], "id", "account_id", "investigations"); - $ward_inv_pricing->created_by = Auth::id(); - } - - $ward_inv_pricing->price = $ward_investigations_amounts_array[$i]; - $ward_inv_pricing->chi_price = $ward_investigations_insurance_amounts_array[$i]; - $ward_inv_pricing->save(); - - $orders_with_pricing[$ward_investigation_order_ids[$i]][] = $ward_inv_pricing->id; - - // check if benefit is valid and save item - if ($investigations_benefit_ids[$i] != 0) { - $insurance_claims[3]["benefit_ids"][] = $investigations_benefit_ids[$i]; - $insurance_claims[3]["item_ids"][] = $ward_investigations_array[$i]; - $insurance_claims[3]["item_quantities"][] = 1; - $insurance_claims[3]["tariff_ids"][] = $investigations_tariff_ids[$i]; - $insurance_claims[3]["tariff_amounts"][] = $ward_investigations_insurance_amounts_array[$i]; - $insurance_claims[3]["co_payment_amounts"][] = $ward_investigations_amounts_array[$i]; - $insurance_claims[3]["item_cash_amounts"][] = $ward_investigations_insurance_amounts_array[$i] + $ward_investigations_amounts_array[$i]; - } - } - } - - // ward treatments - $ward_treatments_ids = $request->prescription_treatment_item_ids ?? []; - $ward_treatment_amounts = $request->prescription_treatment_item_prices ?? []; - $ward_treatment_insurance = $request->drug_unit_insurance_amount ?? []; - $ward_treatment_tariff_ids = $request->prescription_treatment_tariff_ids ?? []; - $ward_treatment_benefit_ids = $request->prescription_treatment_benefit_ids ?? []; - $ward_treatment_quantities = $request->ward_drug_quantity ?? []; - $ward_treatment_subtotal = $request->drug_subtotal ?? []; - $ward_treatment_subtotal_insurance = $request->drug_insurance_amount ?? []; - - for ($i=0; $i < count($ward_treatments_ids); $i++) { - $ward_treatment = WardTreatmentDispensation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'drug_id' => $ward_treatments_ids[$i]])->first(); - - if ($ward_treatment) { - $ward_treatment->price = $ward_treatment_amounts[$i] ?? 0; - $ward_treatment->chi_price = $ward_treatment_insurance[$i] ?? 0; - $ward_treatment->update(); - - // check if benefit is valid and save item - if ($ward_treatment_benefit_ids[$i] != 0) { - $insurance_claims[4]["benefit_ids"][] = $ward_treatment_benefit_ids[$i]; - $insurance_claims[4]["item_ids"][] = $ward_treatments_ids[$i]; - $insurance_claims[4]["item_quantities"][] = (int)$ward_treatment_quantities[$i]; - $insurance_claims[4]["tariff_ids"][] = $ward_treatment_tariff_ids[$i]; - $insurance_claims[4]["tariff_amounts"][] = $ward_treatment_subtotal_insurance[$i]; - $insurance_claims[4]["co_payment_amounts"][] = $ward_treatment_subtotal[$i]; - $insurance_claims[4]["item_cash_amounts"][] = $ward_treatment_subtotal_insurance[$i] + $ward_treatment_subtotal[$i]; - } - } - } - - // ward services - $ward_service_ids = $request->services_item_ids ?? []; - $ward_service_amounts = $request->services_item_prices ?? []; - $ward_service_insurance = $request->service_insurance_unit ?? []; - $ward_service_benefit_ids = $request->service_benefit_ids ?? []; - $ward_service_tariff_ids = $request->service_tariff_ids ?? []; - $ward_service_quantity = $request->service_quantity ?? []; - $ward_service_total_cost = $request->service_total_cost ?? []; - $ward_service_total_insurance = $request->service_insurance_amount ?? []; - - for ($i=0; $i < count($ward_service_ids); $i++) { - $ward_service = WardConsultationsAndService::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'service_id' => $ward_service_ids[$i]])->first(); - - if ($ward_service) { - $ward_service->unit_price = $ward_service_amounts[$i] ?? 0; - $ward_service->chi_price = $ward_service_insurance[$i] ?? 0; - $ward_service->update(); - - // check if benefit is valid and save item - if ($ward_service_benefit_ids[$i] != 0) { - $insurance_claims[1]["benefit_ids"][] = $ward_service_benefit_ids[$i]; - $insurance_claims[1]["item_ids"][] = $ward_service_ids[$i]; - $insurance_claims[1]["item_quantities"][] = $ward_service_quantity[$i]; - $insurance_claims[1]["tariff_ids"][] = $ward_service_tariff_ids[$i]; - $insurance_claims[1]["tariff_amounts"][] = $ward_service_total_insurance[$i]; - $insurance_claims[1]["co_payment_amounts"][] = $ward_service_total_cost[$i]; - $insurance_claims[1]["item_cash_amounts"][] = $ward_service_total_insurance[$i] + $ward_service_total_cost[$i]; - } - } - } - - // ward sundries - $ward_sundry_ids = $request->sundries_item_ids ?? []; - $ward_sundry_amounts = $request->sundries_item_prices ?? []; - $ward_sundry_insurance = $request->sundry_unit_insurance_amount ?? []; - $ward_sundry_tariff_ids = $request->sundries_tariff_ids ?? []; - $ward_sundry_benefit_ids = $request->sundries_benefit_ids ?? []; - $ward_sundry_quantity = $request->sundry_quantity_given ?? []; - $ward_sundry_subtotal = $request->sundry_subtotal ?? []; - $ward_sundry_subtotal_insurance = $request->sundry_insurance_amount ?? []; - - for ($i=0; $i < count($ward_sundry_ids); $i++) { - $ward_sundry = WardSundryDispensation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'sundry_id' => $ward_sundry_ids[$i]])->first(); - - if ($ward_sundry) { - $ward_sundry->price = $ward_sundry_amounts[$i] ?? 0; - $ward_sundry->chi_price = $ward_sundry_insurance[$i] ?? 0; - $ward_sundry->update(); - - // check if benefit is valid and save item - if ($ward_sundry_benefit_ids[$i] != 0) { - $insurance_claims[5]["benefit_ids"][] = $ward_sundry_benefit_ids[$i]; - $insurance_claims[5]["item_ids"][] = $ward_sundry_ids[$i]; - $insurance_claims[5]["item_quantities"][] = $ward_sundry_quantity[$i]; - $insurance_claims[5]["tariff_ids"][] = $ward_sundry_tariff_ids[$i]; - $insurance_claims[5]["tariff_amounts"][] = $ward_sundry_subtotal_insurance[$i]; - $insurance_claims[5]["co_payment_amounts"][] = $ward_sundry_subtotal[$i]; - $insurance_claims[5]["item_cash_amounts"][] = $ward_sundry_subtotal_insurance[$i] + $ward_sundry_subtotal[$i]; - } - } - } - - // ward procedures - $ward_procedure_ids = $request->procedures_item_ids ?? []; - $ward_procedure_amounts = $request->ipd_procedure_amount ?? []; - $ward_procedure_insurance = $request->ipd_procedure_insurance_amount ?? []; - $ward_procedure_benefit_ids = $request->ipd_procedure_benefit_ids ?? []; - $ward_procedure_tariff_ids = $request->ipd_procedure_tariff_ids ?? []; - $ward_procedure_order_ids = $request->ipd_procedure_order_ids ?? []; - - for ($i=0; $i < count($ward_procedure_ids); $i++) { - $ward_procedure = WardProcedure::where('id', $ward_procedure_order_ids[$i])->first(); - - if ($ward_procedure) { - $ward_procedure->hospital_fee = $ward_procedure_amounts[$i] ?? 0; - $ward_procedure->chi_price = $ward_procedure_insurance[$i] ?? 0; - $ward_procedure->update(); - - // check if benefit is valid and save item - if ($ward_procedure_benefit_ids[$i] != 0) { - $insurance_claims[2]["benefit_ids"][] = $ward_procedure_benefit_ids[$i]; - $insurance_claims[2]["item_ids"][] = $ward_procedure_ids[$i]; - $insurance_claims[2]["item_quantities"][] = 1; - $insurance_claims[2]["tariff_ids"][] = $ward_procedure_tariff_ids[$i]; - $insurance_claims[2]["tariff_amounts"][] = $ward_procedure_insurance[$i]; - $insurance_claims[2]["co_payment_amounts"][] = $ward_procedure_amounts[$i]; - $insurance_claims[2]["item_cash_amounts"][] = $ward_procedure_insurance[$i] + $ward_procedure_amounts[$i]; - } - } - } - - // make claims for items if insured - if ($request->patient_insurance_status == 1) { - $opd_treatment_item = $request->opd_treatment_item ?? []; - $opd_treatment_tariff = $request->opd_treatment_tariff ?? []; - $opd_treatment_benefit = $request->opd_treatment_benefit ?? []; - $opd_treatment_quantity = $request->opd_treatment_quantity ?? []; - $opd_treatment_subtotal = $request->opd_treatment_subtotal ?? []; - $opd_treatment_insurance_amount = $request->opd_treatment_insurance_amount ?? []; - - for ($i=0; $i < count($opd_treatment_item); $i++) { - if ($opd_treatment_benefit[$i] != 0) { - $insurance_claims[4]["benefit_ids"][] = $opd_treatment_benefit[$i]; - $insurance_claims[4]["item_ids"][] = $opd_treatment_item[$i]; - $insurance_claims[4]["item_quantities"][] = (int)$opd_treatment_quantity[$i]; - $insurance_claims[4]["tariff_ids"][] = $opd_treatment_tariff[$i]; - $insurance_claims[4]["tariff_amounts"][] = $opd_treatment_insurance_amount[$i]; - $insurance_claims[4]["co_payment_amounts"][] = $opd_treatment_subtotal[$i]; - $insurance_claims[4]["item_cash_amounts"][] = $opd_treatment_insurance_amount[$i] + $opd_treatment_subtotal[$i]; - } - } - - $tta_drugs_array = $request->tta_drugs_array ?? []; - $tta_tariff_ids = $request->tta_tariff_ids ?? []; - $tta_benefit_ids = $request->tta_benefit_ids ?? []; - $tta_quantity = $request->tta_quantity ?? []; - $tta_amount = $request->tta_amount ?? []; - $tta_insurance_amount = $request->tta_insurance_amount ?? []; - - for ($i=0; $i < count($tta_drugs_array); $i++) { - if ($tta_benefit_ids[$i] != 0) { - $insurance_claims[4]["benefit_ids"][] = $tta_benefit_ids[$i]; - $insurance_claims[4]["item_ids"][] = $tta_drugs_array[$i]; - $insurance_claims[4]["item_quantities"][] = (int)$tta_quantity[$i]; - $insurance_claims[4]["tariff_ids"][] = $tta_tariff_ids[$i]; - $insurance_claims[4]["tariff_amounts"][] = $tta_amount[$i]; - $insurance_claims[4]["co_payment_amounts"][] = $tta_insurance_amount[$i]; - $insurance_claims[4]["item_cash_amounts"][] = $tta_amount[$i] + $tta_insurance_amount[$i]; - } - } - - $opd_service_id = $request->opd_service_id ?? []; - $opd_service_benefit_ids = $request->opd_service_benefit_ids ?? []; - $opd_service_tariff_ids = $request->opd_service_tariff_ids ?? []; - $opd_service_quantity = $request->opd_service_quantity ?? []; - $opd_service_amount = $request->opd_service_amount ?? []; - $opd_service_insurance_amount = $request->opd_service_insurance_amount ?? []; - - for ($i=0; $i < count($opd_service_id); $i++) { - if ($opd_service_benefit_ids[$i] != 0) { - $insurance_claims[1]["benefit_ids"][] = $opd_service_benefit_ids[$i]; - $insurance_claims[1]["item_ids"][] = $opd_service_id[$i]; - $insurance_claims[1]["item_quantities"][] = $opd_service_quantity[$i]; - $insurance_claims[1]["tariff_ids"][] = $opd_service_tariff_ids[$i]; - $insurance_claims[1]["tariff_amounts"][] = $opd_service_insurance_amount[$i]; - $insurance_claims[1]["co_payment_amounts"][] = $opd_service_amount[$i]; - $insurance_claims[1]["item_cash_amounts"][] = $opd_service_insurance_amount[$i] + $opd_service_amount[$i]; - } - } - - $opd_sundries_ids = $request->opd_sundries_ids ?? []; - $opd_sundries_benefit_ids = $request->opd_sundries_benefit_ids ?? []; - $opd_sundries_tariff_ids = $request->opd_sundries_tariff_ids ?? []; - $opd_sundry_quantity = $request->opd_sundry_quantity ?? []; - $opd_sundry_subtotal = $request->opd_sundry_subtotal ?? []; - $opd_sundry_insurance_amount = $request->opd_sundry_insurance_amount ?? []; - - for ($i=0; $i < count($opd_sundries_ids); $i++) { - if ($opd_sundries_benefit_ids[$i] != 0) { - $insurance_claims[5]["benefit_ids"][] = $opd_sundries_benefit_ids[$i]; - $insurance_claims[5]["item_ids"][] = $opd_sundries_ids[$i]; - $insurance_claims[5]["item_quantities"][] = $opd_sundry_quantity[$i]; - $insurance_claims[5]["tariff_ids"][] = $opd_sundries_tariff_ids[$i]; - $insurance_claims[5]["tariff_amounts"][] = $opd_sundry_subtotal[$i]; - $insurance_claims[5]["co_payment_amounts"][] = $opd_sundry_insurance_amount[$i]; - $insurance_claims[5]["item_cash_amounts"][] = $opd_sundry_subtotal[$i] + $opd_sundry_insurance_amount[$i]; - } - } - - $opd_procedure_ids = $request->opd_procedure_ids ?? []; - $opd_procedure_benefit_ids = $request->opd_procedure_benefit_ids ?? []; - $opd_procedure_tariff_ids = $request->opd_procedure_tariff_ids ?? []; - $opd_procedure_amount = $request->opd_procedure_amount ?? []; - $opd_procedure_insurance_amount = $request->opd_procedure_insurance_amount ?? []; - - for ($i=0; $i < count($opd_procedure_ids); $i++) { - if ($opd_procedure_benefit_ids[$i] != 0) { - $insurance_claims[2]["benefit_ids"][] = $opd_procedure_benefit_ids[$i]; - $insurance_claims[2]["item_ids"][] = $opd_procedure_ids[$i]; - $insurance_claims[2]["item_quantities"][] = 1; - $insurance_claims[2]["tariff_ids"][] = $opd_procedure_tariff_ids[$i]; - $insurance_claims[2]["tariff_amounts"][] = $opd_procedure_insurance_amount[$i]; - $insurance_claims[2]["co_payment_amounts"][] = $opd_procedure_amount[$i]; - $insurance_claims[2]["item_cash_amounts"][] = $opd_procedure_insurance_amount[$i] + $opd_procedure_amount[$i]; - } - } - - $ward_bed_stays = WardBedStay::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->whereNotIn('chi_bed_rate_id', [0])->get(); - - foreach ($ward_bed_stays as $stay) { - $rate_info = DB::table('insurance_inpatient_accommodation_rates')->where('id', $stay->chi_bed_rate_id)->first(); - - if($rate_info) { - $insurance_claims[6]["benefit_ids"][] = $rate_info->benefit_id; - $insurance_claims[6]["item_ids"][] = $rate_info->id; - $insurance_claims[6]["item_quantities"][] = $stay->duration; - $insurance_claims[6]["tariff_ids"][] = 0; - $insurance_claims[6]["tariff_amounts"][] = $stay->chi_bed_fee_total; - $insurance_claims[6]["co_payment_amounts"][] = $stay->bed_fee_total; - $insurance_claims[6]["item_cash_amounts"][] = $stay->chi_bed_fee_total + $stay->bed_fee_total; - } - } - } - - // check if any investigations are available - if ($request->investigation_ids) { - $inpatient_info = InpatientInfo::find($request->inpatient_info_id); - $inpatient_info->investigation_ids = $request->investigation_ids; - $inpatient_info->update(); - - $order_ids_array = $request->investigation_order_ids; - - // update the ordered_investigation table to show it has been paid - for ($i = 0; $i < count($order_ids_array); $i++) { - OrderedInvestigation::where(['id' => $order_ids_array[$i]]) - ->update([ - 'inpatient_bill_generated' => 1, 'ward_pricing_id' => implode(",", $orders_with_pricing[$order_ids_array[$i]]) - ]); - remove_insurance_claim_by_order($order_ids_array[$i], 3); - } - } - - /* start unpaid opd items black magic */ - if ($request->opd_treatment_cost) { - $opd_ordered_treatments = []; - for ($i=0; $i < count($request->opd_treatment_id) ; $i++) { - $drug_details = DB::table('drugs')->find($request->opd_treatment_item[$i]); - $opd_ordered_treatments[$request->opd_treatment_id[$i]]['amount_paid'][] = $request->opd_treatment_subtotal[$i]; - $opd_ordered_treatments[$request->opd_treatment_id[$i]]['current_chart_of_account'][] = $drug_details->account_id; - $opd_ordered_treatments[$request->opd_treatment_id[$i]]['unit_selling_prices'][] = $request->opd_treatment_amount[$i]; - $opd_ordered_treatments[$request->opd_treatment_id[$i]]['unit_cost_price'][] = $drug_details->cost_price; - $opd_ordered_treatments[$request->opd_treatment_id[$i]]['cost_of_goods_account'][] = $drug_details->cost_of_goods_account; - $opd_ordered_treatments[$request->opd_treatment_id[$i]]['inventory_account'][] = $drug_details->inventory_account; - $opd_ordered_treatments[$request->opd_treatment_id[$i]]['bill_generated'] = $request->opd_inpatient_bill_generated[$i]; - } - - foreach ($opd_ordered_treatments as $key => $opd_ordered_treatment) { - if ($opd_ordered_treatment['bill_generated'] == 0) { - Treatment::where(['id' => $key])->update([ - 'inpatient_bill_generated' => 1, 'balance' => implode(",", $opd_ordered_treatment['amount_paid']), - 'current_chart_of_account' => implode(",", $opd_ordered_treatment['current_chart_of_account']), 'unit_selling_prices' => implode(",", $opd_ordered_treatment['unit_selling_prices']), - 'cost_of_goods_account' => implode(",", $opd_ordered_treatment['cost_of_goods_account']), 'unit_cost_price' => implode(",", $opd_ordered_treatment['unit_cost_price']), - 'inventory_account' => implode(",", $opd_ordered_treatment['inventory_account']), 'amount_paid' => implode(",", array_fill(0, count($opd_ordered_treatment['amount_paid']), 0)), - ]); - } else { - Treatment::where(['id' => $key])->update([ - 'unit_selling_prices' => implode(",", $opd_ordered_treatment['unit_selling_prices']) - ]); - } - - remove_insurance_claim_by_order($key, 4); - } - } - - if ($request->tta_treatment_id) { - $tta_treatments = []; - for ($i=0; $i < count($request->tta_treatment_id) ; $i++) { - $drug_details = DB::table('drugs')->find($request->tta_drugs_array[$i]); - $tta_treatments[$request->tta_treatment_id[$i]]['amount_paid'][] = $request->tta_amount[$i]; - $tta_treatments[$request->tta_treatment_id[$i]]['current_chart_of_account'][] = $drug_details->account_id; - $tta_treatments[$request->tta_treatment_id[$i]]['unit_selling_prices'][] = $request->tta_unit_cost[$i]; - $tta_treatments[$request->tta_treatment_id[$i]]['unit_cost_price'][] = $drug_details->cost_price; - $tta_treatments[$request->tta_treatment_id[$i]]['cost_of_goods_account'][] = $drug_details->cost_of_goods_account; - $tta_treatments[$request->tta_treatment_id[$i]]['inventory_account'][] = $drug_details->inventory_account; - $tta_treatments[$request->tta_treatment_id[$i]]['bill_generated'] = $request->tta_inpatient_bill_generated[$i]; - } - - foreach ($tta_treatments as $key => $tta_treatment) { - if ($tta_treatment['bill_generated'] == 0) { - Treatment::where(['id' => $key])->update([ - 'inpatient_bill_generated' => 1, 'balance' => implode(",", $tta_treatment['amount_paid']), - 'current_chart_of_account' => implode(",", $tta_treatment['current_chart_of_account']), 'unit_selling_prices' => implode(",", $tta_treatment['unit_selling_prices']), - 'cost_of_goods_account' => implode(",", $tta_treatment['cost_of_goods_account']), 'unit_cost_price' => implode(",", $tta_treatment['unit_cost_price']), - 'inventory_account' => implode(",", $tta_treatment['inventory_account']), 'amount_paid' => implode(",", array_fill(0, count($tta_treatment['amount_paid']), 0)), - ]); - } else { - Treatment::where(['id' => $key])->update([ - 'unit_selling_prices' => implode(",", $tta_treatment['unit_selling_prices']) - ]); - } - - remove_insurance_claim_by_order($key, 4); - } - } - - if ($request->opd_sundries_cost) { - $sundry_order_ids_array = explode(",", $request->opd_sundry_order_ids); - for ($i=0; $i < count($sundry_order_ids_array) ; $i++) { - OrderedSundry::where(['id' => $sundry_order_ids_array[$i]])->update(['inpatient_bill_generated' => 1]); - remove_insurance_claim_by_order($sundry_order_ids_array[$i], 5); - } - - $arr_opd_sundries_ids = $request->opd_sundries_ids; - $arr_opd_sundry_insurance_unit = $request->opd_sundry_insurance_unit; - $arr_opd_sundry_quantity = $request->opd_sundry_quantity; - $arr_opd_sundry_subtotal = $request->opd_sundry_subtotal; - - for ($i=0; $i < count($arr_opd_sundries_ids) ; $i++) { - $sundry_details = Sundry::find($arr_opd_sundries_ids[$i]); - - $ward_sundry_dispensations = new WardSundryDispensation; - $ward_sundry_dispensations->patient_id = $patient_id; - $ward_sundry_dispensations->episode_id = $episode_id; - $ward_sundry_dispensations->sundry_id = $arr_opd_sundries_ids[$i]; - $ward_sundry_dispensations->quantity_given = $arr_opd_sundry_quantity[$i]; - $ward_sundry_dispensations->dispensation_date = Carbon::now(); - $ward_sundry_dispensations->current_chart_of_account = $sundry_details->account_id; - $ward_sundry_dispensations->inventory_account = $sundry_details->inventory_account; - $ward_sundry_dispensations->cost_of_goods_account = $sundry_details->cost_of_goods_account; - $ward_sundry_dispensations->cost_price = $sundry_details->cost_price; - $ward_sundry_dispensations->chi_price = $arr_opd_sundry_insurance_unit[$i]; - $ward_sundry_dispensations->price = $arr_opd_sundry_subtotal[$i]; - $ward_sundry_dispensations->ward_id = get_name($request->inpatient_info_id, "id", "ward_id", "inpatient_info"); - $ward_sundry_dispensations->created_by = Auth::id(); - $ward_sundry_dispensations->save(); - } - } - - if ($request->opd_services_cost) { - $services_order_ids_array = $request->opd_service_order_id; - for ($i=0; $i < count($services_order_ids_array) ; $i++) { - OrderedService::where(['id' => $services_order_ids_array[$i]])->update(['inpatient_bill_generated' => 1]); - remove_insurance_claim_by_order($services_order_ids_array[$i], 1); - } - - $arr_opd_service_id = $request->opd_service_id; - $arr_opd_service_unit_cost = $request->opd_service_unit_cost; - $arr_opd_service_insurance_unit = $request->opd_service_insurance_unit; - $arr_opd_service_quantity = $request->opd_service_quantity; - - for ($i=0; $i < count($arr_opd_service_id) ; $i++) { - $ward_services_and_consultations = new WardConsultationsAndService; - $ward_services_and_consultations->patient_id = $patient_id; - $ward_services_and_consultations->episode_id = $episode_id; - $ward_services_and_consultations->service_id = $arr_opd_service_id[$i]; - $ward_services_and_consultations->quantity_given = $arr_opd_service_quantity[$i]; - $ward_services_and_consultations->unit_price = $arr_opd_service_unit_cost[$i]; - $ward_services_and_consultations->staff_fee = 0; - $ward_services_and_consultations->chi_price = $arr_opd_service_insurance_unit[$i]; - $ward_services_and_consultations->dispensation_date = Carbon::now(); - $ward_services_and_consultations->current_chart_of_account = get_name($arr_opd_service_id[$i], "id", "account_id", "services"); - $ward_services_and_consultations->ward_id = get_name($request->inpatient_info_id, "id", "ward_id", "inpatient_info"); - $ward_services_and_consultations->created_by = Auth::id(); - $ward_services_and_consultations->save(); - } - } - - if ($request->opd_procedures_cost) { - $procedure_order_ids_array = explode(",", $request->opd_procedure_order_ids); - for ($i=0; $i < count($procedure_order_ids_array) ; $i++) { - OrderedProcedure::where(['id' => $procedure_order_ids_array[$i]])->update(['inpatient_bill_generated' => 1]); - remove_insurance_claim_by_order($procedure_order_ids_array[$i], 2); - } - - $arr_opd_procedure_ids = $request->opd_procedure_ids; - $arr_opd_procedure_insurance_amount = $request->opd_procedure_insurance_amount; - $arr_opd_procedure_amount = $request->opd_procedure_amount; - - for ($x=0; $x < count($arr_opd_procedure_ids) ; $x++) { - $ward_procedures_record = new WardProcedure; - $ward_procedures_record->patient_id = $patient_id; - $ward_procedures_record->episode_id = $episode_id; - $ward_procedures_record->procedure_id = $arr_opd_procedure_ids[$x]; - $ward_procedures_record->hospital_fee = $arr_opd_procedure_amount[$x]; - $ward_procedures_record->staff_fee = 0; - $ward_procedures_record->chi_price = $arr_opd_procedure_insurance_amount[$x]; - $ward_procedures_record->procedure_date = Carbon::now(); - $ward_procedures_record->ward_id = get_name($request->inpatient_info_id, "id", "ward_id", "inpatient_info"); - $ward_procedures_record->eye = null; - $ward_procedures_record->current_chart_of_account = get_name($arr_opd_procedure_ids[$x], "id", "account_id", "procedures"); - $ward_procedures_record->created_by = Auth::id(); - $ward_procedures_record->save(); - } - } - - $inpatient_bill = InpatientBill::where(['patient_id'=>$patient_id, 'episode_id'=>$episode_id])->first(); - - if (is_null($inpatient_bill)) { - // create new record - $inpatient_bill = new InpatientBill; - $inpatient_bill->patient_id = $patient_id; - $inpatient_bill->episode_id = $episode_id; - $inpatient_bill->created_by = Auth::id(); - } else { - $inpatient_bill->updated_by = Auth::id(); - } - - //determine whether to update the prices in the ward table or not to allow retrospective billing - if (!is_null($request->billing_price_list)) { - $this->update_ward_consumption_prices_with_price_list($patient_id, $episode_id, $request->billing_price_list); - } - - $inpatient_bill->price_list = $request->billing_price_list; - $inpatient_bill->duration = $request->duration; - $inpatient_bill->receipt_number = $receipt_number; - $inpatient_bill->inpatient_info_id = $request->inpatient_info_id; - $inpatient_bill->treatment_cost = ($request->treatment_cost ?? 0) + ($request->opd_treatment_cost ?? 0); - $inpatient_bill->sundries_cost = ($request->sundries_cost ?? 0) + ($request->opd_sundries_cost ?? 0); - $inpatient_bill->services_cost = ($request->services_cost ?? 0) + ($request->opd_services_cost ?? 0); - $inpatient_bill->procedures_cost = ($request->procedures_cost ?? 0) + ($request->opd_procedures_cost ?? 0); - $inpatient_bill->extras_cost = $request->extras_cost; - $inpatient_bill->tta_cost = $request->tta_cost; - $inpatient_bill->investigation_cost = $request->investigation_cost ?? 0; - $inpatient_bill->insurance_hospital_stay_cost = $request->insurance_admission_cost ?? 0; - $inpatient_bill->hospital_stay_cost = $request->ward_bed_admission_cost ?? 0; - $inpatient_bill->insurance_investigation_cost = $request->insurance_investigation_cost ?? 0; - $inpatient_bill->insurance_treatment_cost = ($request->insurance_treatment_cost ?? 0) + ($request->insurance_opd_treatment ?? 0); - $inpatient_bill->insurance_sundries_cost = ($request->insurance_sundries_cost ?? 0) + ($request->insurance_opd_sundries_cost ?? 0); - $inpatient_bill->insurance_services_cost = ($request->insurance_services_cost ?? 0) + ($request->insurance_opd_services_cost ?? 0); - $inpatient_bill->insurance_procedures_cost = ($request->insurance_procedures_cost ?? 0) + ($request->insurance_opd_procedures_cost ?? 0); - $inpatient_bill->insurance_tta_cost = $request->insurance_tta_cost; - $inpatient_bill->amount_to_pay = $request->amount_owed; - $inpatient_bill->original_bill = $request->original_amount_owed; - $inpatient_bill->amount_paid = $request->deposits_made; - $inpatient_bill->invoices_amount = $request->invoices_amount + $request->ward_discount_total; - - // save items and prices for OPD items since IPD have their own tables 'cept for investigations - $inpatient_bill->investigations_item_prices = is_null($request->investigation_amount) ? null : implode(",",$request->investigation_amount); - $inpatient_bill->sundries_item_prices = is_null($request->opd_sundry_amount) ? null : implode(",",$request->opd_sundry_amount); - $inpatient_bill->prescription_treatment_item_prices = is_null($request->opd_treatment_amount) ? null : implode(",",$request->opd_treatment_amount); - $inpatient_bill->pf_treatment_item_prices = is_null($request->pf_treatment_item_prices) ? null : implode(",",$request->pf_treatment_item_prices); - $inpatient_bill->procedures_item_prices = is_null($request->opd_procedure_amount) ? null : implode(",",$request->opd_procedure_amount); - $inpatient_bill->services_item_prices = is_null($request->opd_service_unit_cost) ? null : implode(",",$request->opd_service_unit_cost); - $inpatient_bill->tta_item_prices = is_null($request->tta_unit_cost) ? null : implode(",",$request->tta_unit_cost); - - $inpatient_bill->investigations_item_chi_prices = is_null($request->investigation_insurance_amount) ? null : implode(",",$request->investigation_insurance_amount); - $inpatient_bill->sundries_item_chi_prices = is_null($request->opd_sundry_insurance_unit) ? null : implode(",",$request->opd_sundry_insurance_unit); - $inpatient_bill->prescription_treatment_item_chi_prices = is_null($request->opd_treatment_insurance_unit_amount) ? null : implode(",",$request->opd_treatment_insurance_unit_amount); - $inpatient_bill->procedures_item_chi_prices = is_null($request->opd_procedure_insurance_amount) ? null : implode(",",$request->opd_procedure_insurance_amount); - $inpatient_bill->services_item_chi_prices = is_null($request->opd_service_insurance_unit) ? null : implode(",",$request->opd_service_insurance_unit); - $inpatient_bill->tta_item_chi_prices = is_null($request->tta_insurance_unit) ? null : implode(",",$request->tta_insurance_unit); - - $inpatient_bill->investigations_item_ids = is_null($request->investigations_item_ids) ? null : implode(",",$request->investigations_item_ids); - $inpatient_bill->sundries_item_ids = is_null($request->opd_sundries_ids) ? null : implode(",",$request->opd_sundries_ids); - $inpatient_bill->prescription_treatment_item_ids = is_null($request->opd_treatment_item) ? null : implode(",",$request->opd_treatment_item); - $inpatient_bill->pf_treatment_item_ids = is_null($request->pf_treatment_item_ids) ? null : implode(",",$request->pf_treatment_item_ids); - $inpatient_bill->procedures_item_ids = is_null($request->opd_procedure_ids) ? null : implode(",",$request->opd_procedure_ids); - $inpatient_bill->services_item_ids = is_null($request->opd_service_id) ? null : implode(",",$request->opd_service_id); - $inpatient_bill->tta_item_ids = is_null($request->tta_drugs_array) ? null : implode(",",$request->tta_drugs_array); - - $saved_bill_savers_array = is_null($inpatient_bill->bill_saved_by) ? [] : explode(",", $inpatient_bill->bill_saved_by); - $saved_bill_savers_array[] = Auth::id(); - $inpatient_bill->bill_saved_by = implode(",", $saved_bill_savers_array); - - $bill_saved_at_array = is_null($inpatient_bill->bill_saved_at) ? [] : explode(",", $inpatient_bill->bill_saved_at); - $bill_saved_at_array[] = Carbon::now(); - $inpatient_bill->bill_saved_at = implode(",", $bill_saved_at_array); - - $inpatient_bill->save(); - - flash("Inpatient billing details have been saved successfully")->success(); - - // generate the insurance claims - if ($request->patient_insurance_status == 1) { - create_inpatient_claims($insurance_claims, $patient_id, $episode_id, $inpatient_bill->id); - } - - // handle closing the inpatient bill - if ($request->get('submit-btn') == 'save_close_bill') { - $inpatient_bill->bill_closed = 1; - $inpatient_bill->bill_closed_by = Auth::id(); - $inpatient_bill->bill_closed_at = Carbon::now(); - - $claim_ids_with_errors = DB::table('insurance_claims')->where('order_id', $inpatient_bill->id) - ->where('inpatient_outpatient', 1) - ->whereNull('insurance_claims.deleted_at') - ->where(function($query) { - $query->where('insurance_claims.is_authorisation_required', 1) - ->orWhereRaw('FIND_IN_SET(1,insurance_claims.is_item_authorisation_required)') - ->orWhere('insurance_claims.plan_validity_error', 1) - ->orWhereRaw('FIND_IN_SET(1,insurance_claims.benefit_waiting_period_error)') - ->orWhereRaw('FIND_IN_SET(1,insurance_claims.plan_limit_error)') - ->orWhereRaw('FIND_IN_SET(1,insurance_claims.benefit_limit_error)') - ->orWhereRaw('FIND_IN_SET(1,insurance_claims.item_limit_error)'); - })->pluck('id')->toArray(); - - if (count($claim_ids_with_errors) > 0) { - flash("Please make sure to adjudicate all claims before receiving payment")->error(); - } - - // finish adjudicating the claims - InsuranceClaim::where('order_id', $inpatient_bill->id) - ->whereNotIn('id', $claim_ids_with_errors) - ->where('inpatient_outpatient', 1)->update(['claim_status' => 2]); - - // for those with errors, flag them - InsuranceClaim::where('order_id', $inpatient_bill->id) - ->whereIn('id', $claim_ids_with_errors) - ->where('inpatient_outpatient', 1)->update(['adjudication_required' => 1]); - - $inpatient_bill->save(); - - flash("Inpatient bill has been closed successfully")->success(); - } - - // all good so we can commit - DB::commit(); - } catch (\Exception | \Error $exception) { - DB::rollback(); - - DB::table('system_errors')->insert([ - 'error_message' => $exception->getMessage(), 'error_trace' => $exception->getTraceAsString(), - 'logged_in_user' => Auth::id() - ]); - - flash("An error occurred. Please try again or contact Stre@mline Support")->error(); - return back()->withInput(); - } - - if ($request->get('submit-btn') == 'print') { - return redirect()->back()->with('print', 'true'); - } elseif($request->get('submit-btn') == 'pay_bill'){ - return redirect('patient_finance/make_inpatient_deposit'); - } elseif($request->get('submit-btn') == 'authorize_bill'){ - $saved_bill_authorizers_array = is_null($inpatient_bill->bill_authorized_by) ? [] : explode(",", $inpatient_bill->bill_authorized_by); - $saved_bill_authorizers_array[] = Auth::id(); - $inpatient_bill->bill_authorized_by = implode(",", $saved_bill_authorizers_array); - - $bill_authorized_at_at_array = is_null($inpatient_bill->bill_authorized_at) ? [] : explode(",", $inpatient_bill->bill_authorized_at); - $bill_authorized_at_at_array[] = Carbon::now(); - $inpatient_bill->bill_authorized_at = implode(",", $bill_authorized_at_at_array); - flash("Inpatient bill has been authorized")->success(); - $inpatient_bill->update(); - return redirect()->back(); - } else { - return redirect()->back(); - } - } - - public function edit_inpatient_sheet() { - $episode_id = session()->get('episode_id'); - $patient_id = session()->get('patient_id'); - - // check if bill exists and is not closed - $inpatient_bill = InpatientBill::where(['patient_id'=>$patient_id, 'episode_id'=>$episode_id])->first(); - - if ($inpatient_bill && $inpatient_bill->bill_closed == 1) { - flash("Inpatient information cannot be modified while inpatient bill is closed")->error(); - } else { - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('created_at', 'desc')->first(); - $inpatient_info->discharged = 0; - $inpatient_info->save(); - } - - return redirect('in_patient_sheet'); - } - - /* inpatient bill print */ - public function in_patient_bill_print($patient_id, $episode_id, $price_list_set) { - $patient = Patient::find($patient_id); - $hospitalInfo = DB::table('hospital_information')->find(1); - - $unserialized_price_list_set = unserialize($price_list_set); - $price_list_set = $unserialized_price_list_set['price_list_set']; - - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('created_at', 'desc')->first(); - - $treatment_to_take_away = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'tta' => 1])->get(); - $service_deposits = ServiceDeposit::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $patient_discount = PatientDiscount::where(['patient_category' => $patient->category_id])->select("discount", "pay_later")->first(); - - if (!is_null($patient_discount)) { - $patient_discount->toArray(); - } - - // get ward dispensing details if available - $ward_treatment_drug_ids_that_have_been_dispensed_array = WardTreatmentDispensation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->distinct('drug_id')->pluck('drug_id')->toArray(); - $dispensed_drug_quantity_given_array = []; - - for ($i = 0; $i < count($ward_treatment_drug_ids_that_have_been_dispensed_array); $i++) { - $drug_ward_quantity_given = WardTreatmentDispensation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'drug_id' => $ward_treatment_drug_ids_that_have_been_dispensed_array[$i]])->sum('quantity_given'); - $dispensed_drug_quantity_given_array[$ward_treatment_drug_ids_that_have_been_dispensed_array[$i]] = $drug_ward_quantity_given; - } - - $price_list_categories = PriceListCategories::select('patient_category_id', 'id')->get(); - // Check for anaesthesia in this episode - $anaesthesia = DB::table('anaesthesias')->where('episode_id', $episode_id)->select('other_drugs_given', 'other_drugs_cost')->first(); - - $ordered_ward_investigations = OrderedInvestigation::where(['episode_id' => $episode_id, 'payment_status' => '0'])->get(); - - /*=======necessary for staff payments configuration========*/ - $service_items = Services::withTrashed()->orderBy('name','asc')->pluck('name', 'id')->prepend('- select -', ''); - $services_with_users_array = InpatientController::configured_users_with_their_services_array(); - $sundries = Sundry::where('available', 1)->orderby('name', 'asc')->pluck('name', 'id')->prepend('- select -', ''); - $users_collection = DB::table('users')->orderBy("first_name","asc")->select("id")->get()->toArray(); - $service_with_users_array = []; - $users_array = []; - $options_users = ""; - foreach ($users_collection as $value){ - $user = User::find($value->id); - if (!is_null($user)) { - $users_array[$user->id] = $user->first_name . " ". $user->last_name; - $options_users .= ""; - if ($user->hasRole('Doctors') || $user->hasRole('Doctor')) { - //use this join query instead of the commented out query to cater for execution speed (N+1) - $consultation_records = DB::table('services') - ->join('staff_payment_configurations','staff_payment_configurations.item_id', '=', 'services.id') - ->where('staff_payment_configurations.user_id',$value->id) - ->where('staff_payment_configurations.item_category',3) - ->orderBy('staff_payment_configurations.created_at','asc') - ->select('services.*') - ->get(); - - foreach ($consultation_records as $record) { - $users_consultation_fee = $record->non_insured_price; - //concatnate the service_record_id with the users_id to form the key for the array - $dynamic_key = $record->id."__".$value->id; - $dynamic_value = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users')." (".$record->name.")"; - - $service_with_users_array[$dynamic_key] = $dynamic_value; - - //add these dynamically formed values to service_items array - array_add($service_items, $dynamic_key, $dynamic_value); - //add it to the services_options too i.e used when user clicks add_service btn - } - } - } - } - /*===================*/ - - //check for authenticated investigations - $investigation_results = InvestigationResults::where(['patient_id' => $patient_id,'episode_id' => $episode_id ,'inpatient' => 1])->get(); - - $debt_plan_payments = DebtPlan::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'tag_id' => 10])->get(); - - $data = [ - 'patient' => $patient, - 'price_list_set' => $price_list_set, - 'dispensed_drug_quantity_given_array' => $dispensed_drug_quantity_given_array, - 'inpatient_info' => $inpatient_info, - 'patient_id' => $patient_id, - 'treatment_to_take_away' => $treatment_to_take_away, - 'service_deposits' => $service_deposits, - 'patient_discount' => $patient_discount, - 'episode_id' => $episode_id, - 'price_list_categories' => $price_list_categories, - 'hospitalInfo' => $hospitalInfo, - 'anaesthesia' => $anaesthesia, - 'service_items' => $service_items, - 'sundries' => $sundries, - 'services_with_users_array' => $services_with_users_array, - 'ordered_ward_investigations' => $ordered_ward_investigations, - 'investigation_results' => $investigation_results, - 'debt_plan_payments' => $debt_plan_payments - ]; - - $pdf = SnappyPDF::loadView('ward_management::inpatient/inpatient_billing_print', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Stre@mline'); - - return $pdf->inline('Inpatient Bill' . date(" d-m-y h:ia") . '.pdf'); - } - - public function check_for_open_admissions($patient_id) { - $inpatient_info = InpatientInfo::where('patient_id', $patient_id) - ->where('discharged', 0) - ->get(); - - return count($inpatient_info); - } - - public function discharge_patient_past_admissions($patient_id) { - $inpatient_info = InpatientInfo::where('patient_id', $patient_id) - ->where('discharged', 0) - ->get(['id']); - - foreach ($inpatient_info as $record) { - // discharge the patient - DB::table('inpatient_info') - ->where('id', $record->id) - ->update(["discharged" => 1, "outcome_id" => 2, "discharged_on" => date('Y-m-d'), "discharged_by" => Auth::user()->id]); - } - } - - public static function configured_users_with_their_services_array(): array { - $users = User::orderBy("first_name","asc")->get(); - $service_with_users_array = []; - - foreach ($users as $user){ - if ($user->hasRole('Doctors') || $user->hasRole('Doctor')) { - //use this join query instead of the commented out query to cater for execution speed (N+1) - $consultation_records = DB::table('services') - ->join('staff_payment_configurations','staff_payment_configurations.item_id', '=', 'services.id') - ->where('staff_payment_configurations.user_id',$user->id) - ->where('staff_payment_configurations.item_category',3) - ->select('services.non_insured_price', 'services.id', 'services.name') - ->get(); - - foreach ($consultation_records as $record) { - $users_consultation_fee = $record->non_insured_price; - //concatnate the service_record_id with the users_id to form the key for the array - $dynamic_key = $record->id."__".$user->id; - $dynamic_value = $user->first_name . ' ' . $user->last_name ." (".$record->name." Fee: ".ugandan_shillings($users_consultation_fee).")"; - - $service_with_users_array[$dynamic_key] = $dynamic_value; - } - } - } - - return $service_with_users_array; - } - - public function get_procedure_hospital_fees($procedure_id, $patient_id) { - return get_procedure_hospital_fees_func($procedure_id, $patient_id); - } - - public function get_inpatient_services_fees(Request $request) { - $service_id = $request->service_id; - $patient_id = $request->patient_id; - $patient_insurance_status = $request->patient_insurance_status; - $ward_id = $request->ward_id ?? 0; - - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - $services_with_users_array = InpatientController::configured_users_with_their_services_array(); - - $staff_id = 0; - - if(array_key_exists($service_id, $services_with_users_array)){ - $services_user_key = explode("__", $service_id); - $cleaned_service_id = $services_user_key[0]; - $staff_id = $services_user_key[1]; - } else { - $cleaned_service_id = $service_id; - } - - if(is_numeric($patient_insurance_status) && $patient_insurance_status == 1 && $patient_id != 0 && is_numeric($patient_id)) { - $services_cost = get_item_insurance_co_payment($patient_id, $cleaned_service_id, 1, true, $ward_id); - } else { - if ($price_list_id) { - $services_cost = get_price_list_category_price($price_list_id, 6, $cleaned_service_id); - } else { - $services_cost = get_name($cleaned_service_id, "id", "non_insured_price", "services"); - } - } - - if($staff_id != 0){ - $services_price_and_staff_fee_array = [$services_cost, service_fee_configured_to_staff($staff_id,$cleaned_service_id,$price_list_id)]; - } else{ - $services_price_and_staff_fee_array = [$services_cost, 0]; - } - - return $services_price_and_staff_fee_array; - } - - public function inpatient_sundries_print($patient_id, $episode_id) { - $patient = Patient::find($patient_id); - $hospitalInfo = DB::table('hospital_information')->find(1); - - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('created_at', 'desc')->first(); - - // allergies header - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $known_patient_allergies = Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories = DB::table('drug_categories')->orderBy('name', 'asc')->get(); - $drug_categories_array = DrugCategory::pluck('name', 'id'); - $sundries = Sundry::where('available', 1)->orderby('name', 'asc')->pluck('name', 'id')->prepend('- select -', ''); - $price_list_set = false; - $price_list_categories = PriceListCategories::select('patient_category_id', 'id')->get(); - $patient_discount = PatientDiscount::where(['patient_category' => $patient->category_id])->select("discount", "pay_later")->first(); - - if (!is_null($patient_discount)) { - $patient_discount->toArray(); - } - - $data = [ - 'patient' => $patient, - 'patient_id' => $patient_id, - 'episode_id' => $episode_id, - 'price_list_set' => $price_list_set, - 'categories' => $categories, - 'known_patient_alerts' => $known_patient_allergies, - 'drug_categories' => $drug_categories, - 'drug_categories_array' => $drug_categories_array, - 'inpatient_info' => $inpatient_info, - 'price_list_categories' => $price_list_categories, - 'patient_discount' => $patient_discount, - 'hospitalInfo' => $hospitalInfo, - 'sundries' => $sundries, - ]; - - $pdf = SnappyPDF::loadView('ward_management::inpatient/inpatient_sundries_print', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Stre@mline'); - - - return $pdf->inline('Inpatient Sundries' . date(" d-m-y h:ia") . '.pdf'); - } - - public function inpatient_treatment_print($patient_id, $episode_id) - { - $patient = Patient::find($patient_id); - $hospitalInfo = DB::table('hospital_information')->find(1); - - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('created_at', 'desc')->first(); - - // allergies header - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $known_patient_allergies = Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories = DB::table('drug_categories')->orderBy('name', 'asc')->get(); - $drug_categories_array = DrugCategory::pluck('name', 'id'); - $price_list_set = false; - $price_list_categories = PriceListCategories::select('patient_category_id', 'id')->get(); - $patient_discount = PatientDiscount::where(['patient_category' => $patient->category_id])->select("discount", "pay_later")->first(); - - if (!is_null($patient_discount)) { - $patient_discount->toArray(); - } - - $data = [ - 'patient' => $patient, - 'patient_id' => $patient_id, - 'episode_id' => $episode_id, - 'price_list_set' => $price_list_set, - 'categories' => $categories, - 'known_patient_alerts' => $known_patient_allergies, - 'drug_categories' => $drug_categories, - 'drug_categories_array' => $drug_categories_array, - 'inpatient_info' => $inpatient_info, - 'price_list_categories' => $price_list_categories, - 'patient_discount' => $patient_discount, - 'hospitalInfo' => $hospitalInfo, - ]; - - $pdf = SnappyPDF::loadView('ward_management::inpatient/inpatient_treatment_print', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Stre@mline'); - - - return $pdf->inline('Inpatient Sundries' . date(" d-m-y h:ia") . '.pdf'); - } - - public function inpatient_extras_print($patient_id, $episode_id) - { - $patient = Patient::find($patient_id); - $hospitalInfo = DB::table('hospital_information')->find(1); - - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('created_at', 'desc')->first(); - - // allergies header - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $known_patient_allergies = Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories = DB::table('drug_categories')->orderBy('name', 'asc')->get(); - $drug_categories_array = DrugCategory::pluck('name', 'id'); - $price_list_set = false; - $price_list_categories = PriceListCategories::select('patient_category_id', 'id')->get(); - $patient_discount = PatientDiscount::where(['patient_category' => $patient->category_id])->select("discount", "pay_later")->first(); - - if (!is_null($patient_discount)) { - $patient_discount->toArray(); - } - - $data = [ - 'patient' => $patient, - 'patient_id' => $patient_id, - 'episode_id' => $episode_id, - 'price_list_set' => $price_list_set, - 'categories' => $categories, - 'known_patient_alerts' => $known_patient_allergies, - 'drug_categories' => $drug_categories, - 'drug_categories_array' => $drug_categories_array, - 'inpatient_info' => $inpatient_info, - 'price_list_categories' => $price_list_categories, - 'patient_discount' => $patient_discount, - 'hospitalInfo' => $hospitalInfo, - ]; - - $pdf = SnappyPDF::loadView('ward_management::inpatient/inpatient_extras_print', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Stre@mline'); - - - return $pdf->inline('Inpatient Extras' . date(" d-m-y h:ia") . '.pdf'); - } - - public function inpatient_consultation_and_services_print($patient_id, $episode_id) - { - $patient = Patient::find($patient_id); - $hospitalInfo = DB::table('hospital_information')->find(1); - - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('created_at', 'desc')->first(); - - // allergies header - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $known_patient_allergies = Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories = DB::table('drug_categories')->orderBy('name', 'asc')->get(); - $drug_categories_array = DrugCategory::pluck('name', 'id'); - $price_list_set = false; - $price_list_categories = PriceListCategories::select('patient_category_id', 'id')->get(); - $patient_discount = PatientDiscount::where(['patient_category' => $patient->category_id])->select("discount", "pay_later")->first(); - - if (!is_null($patient_discount)) { - $patient_discount->toArray(); - } - - $services_with_users_array = InpatientController::configured_users_with_their_services_array(); - $service_items = Services::withTrashed()->orderBy('name','asc')->pluck('name', 'id')->prepend('- select -', ''); - $users_collection = DB::table('users')->orderBy("first_name","asc")->select("id")->get()->toArray(); - - $service_with_users_array = []; - $users_array = []; - $options_users = ""; - foreach ($users_collection as $value){ - $user = User::find($value->id); - if (!is_null($user)) { - $users_array[$user->id] = $user->first_name . " ". $user->last_name; - if ($user->hasRole('Doctors') || $user->hasRole('Doctor')) { - //use this join query instead of the commented out query to cater for execution speed (N+1) - $consultation_records = DB::table('services') - ->join('staff_payment_configurations','staff_payment_configurations.item_id', '=', 'services.id') - ->where('staff_payment_configurations.user_id',$value->id) - ->where('staff_payment_configurations.item_category',3) - ->orderBy('staff_payment_configurations.created_at','asc') - ->select('services.*') - ->get(); - - foreach ($consultation_records as $record) { - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_id) { - $users_consultation_fee = get_price_list_category_price($price_list_id, 6, $record->id); - } else{ - $users_consultation_fee = $record->non_insured_price; - } - //concatnate the service_record_id with the users_id to form the key for the array - $dynamic_key = $record->id."__".$value->id; - $dynamic_value = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users')." (".$record->name." Fee: ".ugandan_shillings($users_consultation_fee).")"; - $service_with_users_array[$dynamic_key] = $dynamic_value; - - //add these dynamically formed values to service_items array - array_add($service_items, $dynamic_key, $dynamic_value); - } - } - } - } - - - $data = [ - 'patient' => $patient, - 'patient_id' => $patient_id, - 'episode_id' => $episode_id, - 'price_list_set' => $price_list_set, - 'categories' => $categories, - 'known_patient_alerts' => $known_patient_allergies, - 'drug_categories' => $drug_categories, - 'drug_categories_array' => $drug_categories_array, - 'inpatient_info' => $inpatient_info, - 'price_list_categories' => $price_list_categories, - 'patient_discount' => $patient_discount, - 'hospitalInfo' => $hospitalInfo, - 'services_with_users_array' => $services_with_users_array, - 'service_items' => $service_items - ]; - - $pdf = SnappyPDF::loadView('ward_management::inpatient/inpatient_consultation_and_services_print', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Stre@mline'); - - - return $pdf->inline('Inpatient Consultation and Services' . date(" d-m-y h:ia") . '.pdf'); - } - - public function inpatient_procedures_print($patient_id, $episode_id) - { - $patient = Patient::find($patient_id); - $hospitalInfo = DB::table('hospital_information')->find(1); - - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('created_at', 'desc')->first(); - - // allergies header - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $known_patient_allergies = Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories = DB::table('drug_categories')->orderBy('name', 'asc')->get(); - $drug_categories_array = DrugCategory::pluck('name', 'id'); - $price_list_set = false; - $price_list_categories = PriceListCategories::select('patient_category_id', 'id')->get(); - $patient_discount = PatientDiscount::where(['patient_category' => $patient->category_id])->select("discount", "pay_later")->first(); - - if (!is_null($patient_discount)) { - $patient_discount->toArray(); - } - - $data = [ - 'patient' => $patient, - 'patient_id' => $patient_id, - 'episode_id' => $episode_id, - 'price_list_set' => $price_list_set, - 'categories' => $categories, - 'known_patient_alerts' => $known_patient_allergies, - 'drug_categories' => $drug_categories, - 'drug_categories_array' => $drug_categories_array, - 'inpatient_info' => $inpatient_info, - 'price_list_categories' => $price_list_categories, - 'patient_discount' => $patient_discount, - 'hospitalInfo' => $hospitalInfo, - ]; - - $pdf = SnappyPDF::loadView('ward_management::inpatient/inpatient_procedures_print', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Stre@mline'); - - - return $pdf->inline('Inpatient Procedures' . date(" d-m-y h:ia") . '.pdf'); - } - - public function inpatient_investigations_print($patient_id, $episode_id) - { - $patient = Patient::find($patient_id); - $hospitalInfo = DB::table('hospital_information')->find(1); - - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('created_at', 'desc')->first(); - - // allergies header - $categories = DB::table('patient_categories')->where('available', 1)->pluck("name", "id"); - $known_patient_allergies = Allergy::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $known_patient_alerts = Alert::where('patient_id', $patient_id)->orderBy('created_at', 'desc')->take(2)->get(); - $drug_categories = DB::table('drug_categories')->orderBy('name', 'asc')->get(); - $drug_categories_array = DrugCategory::pluck('name', 'id'); - $price_list_set = false; - $price_list_categories = PriceListCategories::select('patient_category_id', 'id')->get(); - $patient_discount = PatientDiscount::where(['patient_category' => $patient->category_id])->select("discount", "pay_later")->first(); - - if (!is_null($patient_discount)) { - $patient_discount->toArray(); - } - - $data = [ - 'patient' => $patient, - 'patient_id' => $patient_id, - 'episode_id' => $episode_id, - 'price_list_set' => $price_list_set, - 'categories' => $categories, - 'known_patient_alerts' => $known_patient_allergies, - 'drug_categories' => $drug_categories, - 'drug_categories_array' => $drug_categories_array, - 'inpatient_info' => $inpatient_info, - 'price_list_categories' => $price_list_categories, - 'patient_discount' => $patient_discount, - 'hospitalInfo' => $hospitalInfo, - ]; - - $pdf = SnappyPDF::loadView('ward_management::inpatient/inpatient_invs_print', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Stre@mline'); - - - return $pdf->inline('Inpatient Investigations' . date(" d-m-y h:ia") . '.pdf'); - } - - public function inpatient_notes_print($patient_id, $episode_id) - { - $patient = Patient::find($patient_id); - $hospitalInfo = DB::table('hospital_information')->find(1); - - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('created_at', 'desc')->first(); - $patient_discount = PatientDiscount::where(['patient_category' => $patient->category_id])->select("discount", "pay_later")->first(); - - if (!is_null($patient_discount)) { - $patient_discount->toArray(); - } - - $data = [ - 'patient' => $patient, - 'patient_id' => $patient_id, - 'episode_id' => $episode_id, - 'inpatient_info' => $inpatient_info, - 'patient_discount' => $patient_discount, - 'hospitalInfo' => $hospitalInfo, - ]; - - $pdf = SnappyPDF::loadView('ward_management::inpatient/inpatient_notes_print', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Stre@mline'); - - - return $pdf->inline('Inpatient Notes' . date(" d-m-y h:ia") . '.pdf'); - } - - public function get_ward_bed_rate(Request $request) { - $bed_category_id = $request->bed_category_id; - $patient_id = $request->patient_id; - $patient_insurance_status = $request->patient_insurance_status; - $inpatient_bed_category = InpatientBedCategory::withTrashed()->find($bed_category_id); - - if ($inpatient_bed_category) { - if($patient_insurance_status == 1) { - return get_insurance_bed_rate($patient_id, $bed_category_id); - } else { - return ($inpatient_bed_category->cost_type == 1) ? $inpatient_bed_category->cost_per_night : $inpatient_bed_category->cost_first_night; - } - } - - return 0; - } - - public function discharge_summary_print() - { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - if(is_eye_module_enabled() && is_patient_in_eye_clinic($episode_id)) { - $main_exam = EyeClinicMainExam::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $base_exam = EyeClinicBaseExamRefraction::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - $slit_lamp_test_areas = SlitLampTestArea::all(); - $slit_lamp_test_area_values = SlitLampTestAreaValue::pluck('name', 'id')->toArray(); - $slit_lamp_test_area_ids = SlitLampTestAreaValue::pluck('id')->toArray(); - } else { - $main_exam = false; - $base_exam = false; - $slit_lamp_test_areas = []; - $slit_lamp_test_area_values = []; - $slit_lamp_test_area_ids = []; - } - - $patient = Patient::find($patient_id); - $hospitalInfo = DB::table('hospital_information')->find(1); - - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('created_at', 'desc')->first(); - $cons_comments = Consultation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->select(['comments', 'history_comments', 'clinic_examination_comments', 'investigation_and_management_plan_comments'])->first(); - $treatment_to_take_away = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'tta' => 1])->get(); - $service_deposits = ServiceDeposit::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $patient_discount = PatientDiscount::where(['patient_category' => $patient->category_id])->select("discount", "pay_later")->first(); - - if (!is_null($patient_discount)) { - $patient_discount->toArray(); - } - - // get ward dispensing details if available - $ward_treatment_drug_ids_that_have_been_dispensed_array = WardTreatmentDispensation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->distinct('drug_id')->pluck('drug_id')->toArray(); - $dispensed_drug_quantity_given_array = []; - - for ($i = 0; $i < count($ward_treatment_drug_ids_that_have_been_dispensed_array); $i++) { - $drug_ward_quantity_given = WardTreatmentDispensation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'drug_id' => $ward_treatment_drug_ids_that_have_been_dispensed_array[$i]])->sum('quantity_given'); - $dispensed_drug_quantity_given_array[$ward_treatment_drug_ids_that_have_been_dispensed_array[$i]] = $drug_ward_quantity_given; - } - - $price_list_categories = PriceListCategories::select('patient_category_id', 'id')->get(); - // Check for anaesthesia in this episode - $anaesthesia = DB::table('anaesthesias')->where('episode_id', $episode_id)->select('other_drugs_given', 'other_drugs_cost')->first(); - $price_list_set = false; - - /*=======necessary for staff payments configuration========*/ - $service_items = Services::withTrashed()->orderBy('name','asc')->pluck('name', 'id')->prepend('- select -', ''); - $services_with_users_array = InpatientController::configured_users_with_their_services_array(); - $sundries = Sundry::where('available', 1)->orderby('name', 'asc')->pluck('name', 'id')->prepend('- select -', ''); - $users_collection = DB::table('users')->orderBy("first_name","asc")->select("id")->get()->toArray(); - $service_with_users_array = []; - $users_array = []; - $options_users = ""; - foreach ($users_collection as $value){ - $user = User::find($value->id); - if (!is_null($user)) { - $users_array[$user->id] = $user->first_name . " ". $user->last_name; - $options_users .= ""; - if ($user->hasRole('Doctors') || $user->hasRole('Doctor')) { - //use this join query instead of the commented out query to cater for execution speed (N+1) - $consultation_records = DB::table('services') - ->join('staff_payment_configurations','staff_payment_configurations.item_id', '=', 'services.id') - ->where('staff_payment_configurations.user_id',$value->id) - ->where('staff_payment_configurations.item_category',3) - ->orderBy('staff_payment_configurations.created_at','asc') - ->select('services.*') - ->get(); - - foreach ($consultation_records as $record) { - $users_consultation_fee = $record->non_insured_price; - //concatnate the service_record_id with the users_id to form the key for the array - $dynamic_key = $record->id."__".$value->id; - $dynamic_value = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users')." (".$record->name.")"; - - $service_with_users_array[$dynamic_key] = $dynamic_value; - - //add these dynamically formed values to service_items array - array_add($service_items, $dynamic_key, $dynamic_value); - //add it to the services_options too i.e used when user clicks add_service btn - } - } - } - } - /*===================*/ - - /* ====== start work on investigations */ - // prep the inpatient investigation arrays and counters - $opd_investigations = []; - $opd_investigations_position = []; - $opd_investigations_date = []; - $ward_investigations = []; - $ward_investigations_position = []; - $ward_investigations_date = []; - - // get all investigations ordered in this episode - $ordered_investigations = OrderedInvestigation::where(['episode_id' => $episode_id])->get(); - - // get all results - $investigation_results_order_ids = InvestigationResults::pluck('order_id', 'id')->toArray(); - - foreach ($ordered_investigations as $investigation) { - if (isset($ward_investigations['id'])) { - $ward_investigations_position[] = count($ward_investigations['id']); - } else { - $ward_investigations_position[] = 0; - } - - if (isset($opd_investigations['id'])) { - $opd_investigations_position[] = count($opd_investigations['id']); - } else { - $opd_investigations_position[] = 0; - } - - $ward_investigations_date[] = "Ordered on " . streamline_date_time($investigation->created_at) . " by " . - get_full_name($investigation->created_by, 'id', 'first_name', 'last_name', 'users'); - $opd_investigations_date[] = streamline_date_time($investigation->created_at); - - $investigation_ids = explode(",", $investigation->investigation_id); - $inpatient_status = explode(",", $investigation->for_inpatient); - - // check if results are available for this investigation - if (in_array($investigation->id, $investigation_results_order_ids)) { - // get the key if available - $key = array_search($investigation->id, $investigation_results_order_ids); - - // get the results object - $results = InvestigationResults::find($key); - - // exclude obstetric u/s results - if ($results->result_type != "Ultrasound_Obstetric") { - $investigation_results = explode(",", $results->value); - $investigation_per_valid = explode(",", $results->per_investigation); - $investigation_comments = explode(",", $results->comment); - - if ($results->all_authenticated == 1) { - for ($i = 0; $i < count($inpatient_status); $i++) { - if (isset($inpatient_status[$i]) && $inpatient_status[$i] == 0) { - $result = Investigation::withTrashed()->find($investigation_ids[$i]); - - if ($result) { - $opd_investigations['id'][] = $result->id; - $opd_investigations['name'][] = $result->name; - $opd_investigations['type'][] = $result->type; - $opd_investigations['slug'][] = $result->slug; - $opd_investigations['value'][] = $investigation_results[$i] ?? ""; - $opd_investigations['comment'][] = $investigation_comments[$i] ?? ""; - } - } else { - $result = Investigation::withTrashed()->find($investigation_ids[$i]); - - if ($result) { - $ward_investigations['id'][] = $result->id; - $ward_investigations['name'][] = $result->name; - $ward_investigations['type'][] = $result->type; - $ward_investigations['slug'][] = $result->slug; - $ward_investigations['value'][] = $investigation_results[$i] ?? ""; - $ward_investigations['comment'][] = $investigation_comments[$i] ?? ""; - } - } - } - } else { - for ($i = 0; $i < count($inpatient_status); $i++) { - - $investigation = Investigation::withTrashed()->find($investigation_ids[$i]); - - if (!$investigation) { - continue; - } - - if (isset($investigation_per_valid[$i]) && $investigation_per_valid[$i] == 1) { - // this investigation is authenticated - if (isset($inpatient_status[$i]) && $inpatient_status[$i] == 0) { - $opd_investigations['id'][] = $investigation->id; - $opd_investigations['name'][] = $investigation->name; - $opd_investigations['type'][] = $investigation->type; - $opd_investigations['slug'][] = $investigation->slug; - $opd_investigations['value'][] = $investigation_results[$i] ?? ""; - $opd_investigations['comment'][] = $investigation_comments[$i] ?? ""; - } else { - $ward_investigations['id'][] = $investigation->id; - $ward_investigations['name'][] = $investigation->name; - $ward_investigations['type'][] = $investigation->type; - $ward_investigations['slug'][] = $investigation->slug; - $ward_investigations['value'][] = $investigation_results[$i] ?? ""; - $ward_investigations['comment'][] = $investigation_comments[$i] ?? ""; - } - } else { - if (isset($investigation_per_valid[$i]) && $inpatient_status[$i] == 0) { - $opd_investigations['id'][] = $investigation->id; - $opd_investigations['name'][] = $investigation->name; - $opd_investigations['type'][] = $investigation->type; - $opd_investigations['slug'][] = $investigation->slug; - $opd_investigations['value'][] = "Pending"; - $opd_investigations['comment'][] = "Pending"; - } else { - $ward_investigations['id'][] = $investigation->id; - $ward_investigations['name'][] = $investigation->name; - $ward_investigations['type'][] = $investigation->type; - $ward_investigations['slug'][] = $investigation->slug; - $ward_investigations['value'][] = "Pending"; - $ward_investigations['comment'][] = "Pending"; - } - } - } - } - } - } else { - for ($i = 0; $i < count($inpatient_status); $i++) { - if (isset($inpatient_status[$i]) && $inpatient_status[$i] == 0) { - $result = Investigation::withTrashed()->find($investigation_ids[$i]); - - if ($result) { - $opd_investigations['id'][] = $result->id; - $opd_investigations['name'][] = $result->name; - $opd_investigations['type'][] = $result->type; - $opd_investigations['slug'][] = $result->slug; - $opd_investigations['value'][] = "Pending"; - $opd_investigations['comment'][] = "Pending"; - } - } else { - $result = Investigation::withTrashed()->find($investigation_ids[$i]); - - if ($result) { - $ward_investigations['id'][] = $result->id; - $ward_investigations['name'][] = $result->name; - $ward_investigations['type'][] = $result->type; - $ward_investigations['slug'][] = $result->slug; - $ward_investigations['value'][] = "Pending"; - $ward_investigations['comment'][] = "Pending"; - } - } - } - } - } - /* ====== end work on investigations */ - - $data = [ - 'patient' => $patient, - 'price_list_set' => $price_list_set, - 'dispensed_drug_quantity_given_array' => $dispensed_drug_quantity_given_array, - 'inpatient_info' => $inpatient_info, - 'patient_id' => $patient_id, - 'treatment_to_take_away' => $treatment_to_take_away, - 'service_deposits' => $service_deposits, - 'patient_discount' => $patient_discount, - 'episode_id' => $episode_id, - 'price_list_categories' => $price_list_categories, - 'hospitalInfo' => $hospitalInfo, - 'anaesthesia' => $anaesthesia, - 'service_items' => $service_items, - 'sundries' => $sundries, - 'cons_comments'=>$cons_comments, - 'services_with_users_array' => $services_with_users_array, - 'ward_investigations' => $ward_investigations, - 'opd_investigations' => $opd_investigations, - 'opd_investigations_position' => $opd_investigations_position, - 'ward_investigations_position' => $ward_investigations_position, - 'opd_investigations_date' => $opd_investigations_date, - 'ward_investigations_date' => $ward_investigations_date, - 'base_exam' => $base_exam, - 'main_exam' => $main_exam, - 'slit_lamp_test_areas' => $slit_lamp_test_areas, - 'slit_lamp_test_area_values' => $slit_lamp_test_area_values, - 'slit_lamp_test_area_ids' => $slit_lamp_test_area_ids - ]; - - $pdf = SnappyPDF::loadView('ward_management::inpatient/discharge_summary_print', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Stre@mline'); - - return $pdf->inline('Discharge Summary' . date("y-m-d h:ia") . '.pdf'); - } - - public function receive_inpatient_payment(Request $request) - { - session()->put('patient_id', $request->patient_id); - session()->put('episode_id', $request->episode_id); - return redirect('patient_finance/make_inpatient_deposit'); - } - - public function cancel_ward_prescription($ward_prescription_id) - { - $ward_prescription = WardTreatment::find($ward_prescription_id); - if ($ward_prescription->delete()) { - flash('Ward prescription has been cancelled')->success(); - return redirect('in_patient_sheet'); - } - - flash('System could not cancel prescription')->error(); - return redirect()->back(); - } - - public function inpatient_bill_summary_print($patient_id, $episode_id, $price_list_set) { - $patient = Patient::find($patient_id); - $hospitalInfo = DB::table('hospital_information')->find(1); - - $unserialized_price_list_set = unserialize($price_list_set); - $price_list_set = $unserialized_price_list_set['price_list_set']; - - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('created_at', 'desc')->first(); - - $treatment_to_take_away = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'tta' => 1])->get(); - $service_deposits = ServiceDeposit::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $patient_discount = PatientDiscount::where(['patient_category' => $patient->category_id])->select("discount", "pay_later")->first(); - - if (!is_null($patient_discount)) { - $patient_discount->toArray(); - } - - // get ward dispensing details if available - $ward_treatment_drug_ids_that_have_been_dispensed_array = WardTreatmentDispensation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->distinct('drug_id')->pluck('drug_id')->toArray(); - $dispensed_drug_quantity_given_array = []; - - for ($i = 0; $i < count($ward_treatment_drug_ids_that_have_been_dispensed_array); $i++) { - $drug_ward_quantity_given = WardTreatmentDispensation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'drug_id' => $ward_treatment_drug_ids_that_have_been_dispensed_array[$i]])->sum('quantity_given'); - $dispensed_drug_quantity_given_array[$ward_treatment_drug_ids_that_have_been_dispensed_array[$i]] = $drug_ward_quantity_given; - } - - $price_list_categories = PriceListCategories::select('patient_category_id', 'id')->get(); - // Check for anaesthesia in this episode - $anaesthesia = DB::table('anaesthesias')->where('episode_id', $episode_id)->select('other_drugs_given', 'other_drugs_cost')->first(); - - $ordered_ward_investigations = OrderedInvestigation::where(['episode_id' => $episode_id, 'payment_status' => '0'])->get(); - - /*=======necessary for staff payments configuration========*/ - $service_items = Services::withTrashed()->orderBy('name','asc')->pluck('name', 'id')->prepend('- select -', ''); - $services_with_users_array = InpatientController::configured_users_with_their_services_array(); - $sundries = Sundry::where('available', 1)->orderby('name', 'asc')->pluck('name', 'id')->prepend('- select -', ''); - $users_collection = DB::table('users')->orderBy("first_name","asc")->select("id")->get()->toArray(); - $service_with_users_array = []; - $users_array = []; - $options_users = ""; - foreach ($users_collection as $value){ - $user = User::find($value->id); - if (!is_null($user)) { - $users_array[$user->id] = $user->first_name . " ". $user->last_name; - $options_users .= ""; - if ($user->hasRole('Doctors') || $user->hasRole('Doctor')) { - //use this join query instead of the commented out query to cater for execution speed (N+1) - $consultation_records = DB::table('services') - ->join('staff_payment_configurations','staff_payment_configurations.item_id', '=', 'services.id') - ->where('staff_payment_configurations.user_id',$value->id) - ->where('staff_payment_configurations.item_category',3) - ->orderBy('staff_payment_configurations.created_at','asc') - ->select('services.*') - ->get(); - - foreach ($consultation_records as $record) { - $users_consultation_fee = $record->non_insured_price; - //concatnate the service_record_id with the users_id to form the key for the array - $dynamic_key = $record->id."__".$value->id; - $dynamic_value = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users')." (".$record->name.")"; - - $service_with_users_array[$dynamic_key] = $dynamic_value; - - //add these dynamically formed values to service_items array - array_add($service_items, $dynamic_key, $dynamic_value); - //add it to the services_options too i.e used when user clicks add_service btn - } - } - } - } - /*===================*/ - - //check for authenticated investigations - $investigation_results = InvestigationResults::where(['patient_id' => $patient_id,'episode_id' => $episode_id ,'inpatient' => 1])->get(); - - $debt_plan_payments = DebtPlan::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'tag_id' => 10])->get(); - - $data = [ - 'patient' => $patient, - 'price_list_set' => $price_list_set, - 'dispensed_drug_quantity_given_array' => $dispensed_drug_quantity_given_array, - 'inpatient_info' => $inpatient_info, - 'patient_id' => $patient_id, - 'treatment_to_take_away' => $treatment_to_take_away, - 'service_deposits' => $service_deposits, - 'patient_discount' => $patient_discount, - 'episode_id' => $episode_id, - 'price_list_categories' => $price_list_categories, - 'hospitalInfo' => $hospitalInfo, - 'anaesthesia' => $anaesthesia, - 'service_items' => $service_items, - 'sundries' => $sundries, - 'services_with_users_array' => $services_with_users_array, - 'ordered_ward_investigations' => $ordered_ward_investigations, - 'investigation_results' => $investigation_results, - 'debt_plan_payments' => $debt_plan_payments - ]; - - $pdf = SnappyPDF::loadView('ward_management::inpatient/inpatient_bill_summary_print', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Stre@mline'); - - return $pdf->inline('Inpatient Bill' . date(" d-m-y h:ia") . '.pdf'); - } - - public function referral_notes_print() - { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $patient = Patient::find($patient_id); - $hospitalInfo = DB::table('hospital_information')->find(1); - - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('created_at', 'desc')->first(); - - $treatment_to_take_away = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'tta' => 1])->get(); - $service_deposits = ServiceDeposit::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $patient_discount = PatientDiscount::where(['patient_category' => $patient->category_id])->select("discount", "pay_later")->first(); - - if (!is_null($patient_discount)) { - $patient_discount->toArray(); - } - - // get ward dispensing details if available - $ward_treatment_drug_ids_that_have_been_dispensed_array = WardTreatmentDispensation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->distinct('drug_id')->pluck('drug_id')->toArray(); - $dispensed_drug_quantity_given_array = []; - - for ($i = 0; $i < count($ward_treatment_drug_ids_that_have_been_dispensed_array); $i++) { - $drug_ward_quantity_given = WardTreatmentDispensation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'drug_id' => $ward_treatment_drug_ids_that_have_been_dispensed_array[$i]])->sum('quantity_given'); - $dispensed_drug_quantity_given_array[$ward_treatment_drug_ids_that_have_been_dispensed_array[$i]] = $drug_ward_quantity_given; - } - - $price_list_categories = PriceListCategories::select('patient_category_id', 'id')->get(); - // Check for anaesthesia in this episode - $anaesthesia = DB::table('anaesthesias')->where('episode_id', $episode_id)->select('other_drugs_given', 'other_drugs_cost')->first(); - $price_list_set = false; - - /*=======necessary for staff payments configuration========*/ - $service_items = Services::withTrashed()->orderBy('name','asc')->pluck('name', 'id')->prepend('- select -', ''); - $services_with_users_array = InpatientController::configured_users_with_their_services_array(); - $sundries = Sundry::where('available', 1)->orderby('name', 'asc')->pluck('name', 'id')->prepend('- select -', ''); - $users_collection = DB::table('users')->orderBy("first_name","asc")->select("id")->get()->toArray(); - $service_with_users_array = []; - $users_array = []; - $options_users = ""; - foreach ($users_collection as $value){ - $user = User::find($value->id); - if (!is_null($user)) { - $users_array[$user->id] = $user->first_name . " ". $user->last_name; - $options_users .= ""; - if ($user->hasRole('Doctors') || $user->hasRole('Doctor')) { - //use this join query instead of the commented out query to cater for execution speed (N+1) - $consultation_records = DB::table('services') - ->join('staff_payment_configurations','staff_payment_configurations.item_id', '=', 'services.id') - ->where('staff_payment_configurations.user_id',$value->id) - ->where('staff_payment_configurations.item_category',3) - ->orderBy('staff_payment_configurations.created_at','asc') - ->select('services.*') - ->get(); - - foreach ($consultation_records as $record) { - $users_consultation_fee = $record->non_insured_price; - //concatnate the service_record_id with the users_id to form the key for the array - $dynamic_key = $record->id."__".$value->id; - $dynamic_value = get_full_name($value->id, 'id', 'first_name', 'last_name', 'users')." (".$record->name.")"; - - $service_with_users_array[$dynamic_key] = $dynamic_value; - - //add these dynamically formed values to service_items array - array_add($service_items, $dynamic_key, $dynamic_value); - //add it to the services_options too i.e used when user clicks add_service btn - } - } - } - } - /*===================*/ - - /* ====== start work on investigations */ - // prep the inpatient investigation arrays and counters - $opd_investigations = []; - $opd_investigations_position = []; - $opd_investigations_date = []; - $ward_investigations = []; - $ward_investigations_position = []; - $ward_investigations_date = []; - - // get all investigations ordered in this episode - $ordered_investigations = OrderedInvestigation::where(['episode_id' => $episode_id])->get(); - - // get all results - $investigation_results_order_ids = InvestigationResults::pluck('order_id', 'id')->toArray(); - - foreach ($ordered_investigations as $investigation) { - if (isset($ward_investigations['id'])) { - $ward_investigations_position[] = count($ward_investigations['id']); - } else { - $ward_investigations_position[] = 0; - } - - if (isset($opd_investigations['id'])) { - $opd_investigations_position[] = count($opd_investigations['id']); - } else { - $opd_investigations_position[] = 0; - } - - $ward_investigations_date[] = "Ordered on " . streamline_date_time($investigation->created_at) . " by " . - get_full_name($investigation->created_by, 'id', 'first_name', 'last_name', 'users'); - $opd_investigations_date[] = streamline_date_time($investigation->created_at); - - $investigation_ids = explode(",", $investigation->investigation_id); - $inpatient_status = explode(",", $investigation->for_inpatient); - - // check if results are available for this investigation - if (in_array($investigation->id, $investigation_results_order_ids)) { - // get the key if available - $key = array_search($investigation->id, $investigation_results_order_ids); - - // get the results object - $results = InvestigationResults::find($key); - - // exclude obstetric u/s results - if ($results->result_type != "Ultrasound_Obstetric") { - $investigation_results = explode(",", $results->value); - $investigation_per_valid = explode(",", $results->per_investigation); - $investigation_comments = explode(",", $results->comment); - - if ($results->all_authenticated == 1) { - for ($i = 0; $i < count($inpatient_status); $i++) { - if (isset($inpatient_status[$i]) && $inpatient_status[$i] == 0) { - $result = Investigation::withTrashed()->find($investigation_ids[$i]); - - if ($result) { - $opd_investigations['id'][] = $result->id; - $opd_investigations['name'][] = $result->name; - $opd_investigations['type'][] = $result->type; - $opd_investigations['slug'][] = $result->slug; - $opd_investigations['value'][] = $investigation_results[$i]; - $opd_investigations['comment'][] = $investigation_comments[$i]; - } - } else { - $result = Investigation::withTrashed()->find($investigation_ids[$i]); - - if ($result) { - $ward_investigations['id'][] = $result->id; - $ward_investigations['name'][] = $result->name; - $ward_investigations['type'][] = $result->type; - $ward_investigations['slug'][] = $result->slug; - $ward_investigations['value'][] = $investigation_results[$i] ?? ""; - $ward_investigations['comment'][] = $investigation_comments[$i]?? ""; - } - } - } - } else { - for ($i = 0; $i < count($inpatient_status); $i++) { - - $investigation = Investigation::withTrashed()->find($investigation_ids[$i]); - - if (!$investigation) { - continue; - } - - if (isset($investigation_per_valid[$i]) && $investigation_per_valid[$i] == 1) { - // this investigation is authenticated - if (isset($inpatient_status[$i]) && $inpatient_status[$i] == 0) { - $opd_investigations['id'][] = $investigation->id; - $opd_investigations['name'][] = $investigation->name; - $opd_investigations['type'][] = $investigation->type; - $opd_investigations['slug'][] = $investigation->slug; - $opd_investigations['value'][] = $investigation_results[$i]; - $opd_investigations['comment'][] = $investigation_comments[$i]; - } else { - $ward_investigations['id'][] = $investigation->id; - $ward_investigations['name'][] = $investigation->name; - $ward_investigations['type'][] = $investigation->type; - $ward_investigations['slug'][] = $investigation->slug; - $ward_investigations['value'][] = $investigation_results[$i]; - $ward_investigations['comment'][] = $investigation_comments[$i]; - } - } else { - if (isset($investigation_per_valid[$i]) && $inpatient_status[$i] == 0) { - $opd_investigations['id'][] = $investigation->id; - $opd_investigations['name'][] = $investigation->name; - $opd_investigations['type'][] = $investigation->type; - $opd_investigations['slug'][] = $investigation->slug; - $opd_investigations['value'][] = "Pending"; - $opd_investigations['comment'][] = "Pending"; - } else { - $ward_investigations['id'][] = $investigation->id; - $ward_investigations['name'][] = $investigation->name; - $ward_investigations['type'][] = $investigation->type; - $ward_investigations['slug'][] = $investigation->slug; - $ward_investigations['value'][] = "Pending"; - $ward_investigations['comment'][] = "Pending"; - } - } - } - } - } - } else { - for ($i = 0; $i < count($inpatient_status); $i++) { - if (isset($inpatient_status[$i]) && $inpatient_status[$i] == 0) { - $result = Investigation::withTrashed()->find($investigation_ids[$i]); - - if ($result) { - $opd_investigations['id'][] = $result->id; - $opd_investigations['name'][] = $result->name; - $opd_investigations['type'][] = $result->type; - $opd_investigations['slug'][] = $result->slug; - $opd_investigations['value'][] = "Pending"; - $opd_investigations['comment'][] = "Pending"; - } - } else { - $result = Investigation::withTrashed()->find($investigation_ids[$i]); - - if ($result) { - $ward_investigations['id'][] = $result->id; - $ward_investigations['name'][] = $result->name; - $ward_investigations['type'][] = $result->type; - $ward_investigations['slug'][] = $result->slug; - $ward_investigations['value'][] = "Pending"; - $ward_investigations['comment'][] = "Pending"; - } - } - } - } - } - /* ====== end work on investigations */ - - $data = [ - 'patient' => $patient, - 'price_list_set' => $price_list_set, - 'dispensed_drug_quantity_given_array' => $dispensed_drug_quantity_given_array, - 'inpatient_info' => $inpatient_info, - 'patient_id' => $patient_id, - 'treatment_to_take_away' => $treatment_to_take_away, - 'service_deposits' => $service_deposits, - 'patient_discount' => $patient_discount, - 'episode_id' => $episode_id, - 'price_list_categories' => $price_list_categories, - 'hospitalInfo' => $hospitalInfo, - 'anaesthesia' => $anaesthesia, - 'service_items' => $service_items, - 'sundries' => $sundries, - 'services_with_users_array' => $services_with_users_array, - 'ward_investigations' => $ward_investigations, - 'opd_investigations' => $opd_investigations, - 'opd_investigations_position' => $opd_investigations_position, - 'ward_investigations_position' => $ward_investigations_position, - 'opd_investigations_date' => $opd_investigations_date, - 'ward_investigations_date' => $ward_investigations_date - ]; - // return view('ward_management::inpatient/referral_notes_print', $data); - - $pdf = SnappyPDF::loadView('ward_management::inpatient/referral_notes_print', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Stre@mline'); - - return $pdf->inline('Referral Notes' . date("y-m-d h:ia") . '.pdf'); - } - - public function inpatient_attendant_pass(Request $request) - { - $episode_id = session()->get('episode_id'); - $patient_id = session()->get('patient_id'); - $total_deposits_paid = 0; - - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->orderBy('created_at','desc')->first(); - $inpatient_bill = InpatientBill::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->orderBy('created_at','desc')->first(); - - $inpatient_deposits = ServiceDeposit::where(['patient_id'=>$patient_id,'episode_id'=>$episode_id])->get(); - foreach($inpatient_deposits as $service_deposit): - - $item_ids_array = explode(",", $service_deposit->items_ids); - $item_amounts_array = explode(",", $service_deposit->items_amounts); - - if(($service_deposit->service_type == "Inpatient_Deposit") && ($service_deposit->patient_id == $patient_id) && ($service_deposit->episode_id == $episode_id)): - - $total_deposits_paid += $service_deposit->patient_amount_paid; - $latest_payment_date = $service_deposit->created_at; - $latest_deposit_id = $service_deposit->id; - endif; - endforeach; - - $number_of_days = 1; - if ($total_deposits_paid > 0) { - $number_of_days = 5; - } - - $patient = Patient::find($patient_id); - - return view('ward_management::inpatient.inpatient_attendant_pass',compact('patient', 'inpatient_info', 'inpatient_deposits', 'inpatient_bill','number_of_days')); - } - - public function store_inpatient_attendant_pass(Request $request) - { - $episode_id = session()->get('episode_id'); - $patient_id = session()->get('patient_id'); - $latest_deposit_id = null; - $total_deposits_paid = 0; - - $expiration_number_of_days = $request->expiry_days; - - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->orderBy('created_at','desc')->first(); - $service_deposits = ServiceDeposit::where(['patient_id'=>$patient_id,'episode_id'=>$episode_id])->get(); - - foreach($service_deposits as $service_deposit): - $item_ids_array = explode(",", $service_deposit->items_ids); - $item_amounts_array = explode(",", $service_deposit->items_amounts); - - if(($service_deposit->service_type == "Inpatient_Deposit") && ($service_deposit->patient_id == $patient_id) && ($service_deposit->episode_id == $episode_id)): - - $total_deposits_paid += $service_deposit->patient_amount_paid; - $latest_payment_date = $service_deposit->created_at; - $latest_deposit_id = $service_deposit->id; - endif; - endforeach; - - $inpatient_attendant_pass = InpatientAttendantPass::where(['services_deposit_id' => $latest_deposit_id, 'inpatient_info_id' => $inpatient_info->id])->first(); - - if (is_null($inpatient_attendant_pass)) { - $inpatient_attendant_pass = new InpatientAttendantPass; - $inpatient_attendant_pass->patient_id = $patient_id; - $inpatient_attendant_pass->episode_id = $episode_id; - $inpatient_attendant_pass->inpatient_info_id = $inpatient_info->id; - $inpatient_attendant_pass->services_deposit_id = $latest_deposit_id; - $inpatient_attendant_pass->expiry_date = Carbon::now()->addDays($expiration_number_of_days); - $inpatient_attendant_pass->created_by = Auth::id(); - $inpatient_attendant_pass->save(); - } - - $inpatient_attendant_pass_id = $inpatient_attendant_pass->id; - - session()->put(['number_of_days' => $expiration_number_of_days]); - session()->put(['inpatient_attendant_pass_id' => $inpatient_attendant_pass_id]); - - return redirect('print_inpatient_attendant_pass'); - } - - public function print_inpatient_attendant_pass(Request $request) - { - $episode_id = session()->get('episode_id'); - $patient_id = session()->get('patient_id'); - $number_of_days = session()->get('number_of_days'); - $inpatient_attendant_pass_id = session()->get('inpatient_attendant_pass_id'); - - $hospital_information = HospitalInformation::first(); - $patient = Patient::find($patient_id); - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->orderBy('created_at','desc')->first(); - - $total_deposits_paid = 0; - - $attendant_pass_information = InpatientAttendantPass::find($inpatient_attendant_pass_id); - - return view('ward_management::inpatient.inpatient_attendant_pass_print',compact('hospital_information', 'patient', 'attendant_pass_information', 'number_of_days', 'inpatient_info')); - } - - public function delete_doctor_notes($id) - { - $ward_doctor_notes = WardInpatientSheetComment::find($id); - $ward_doctor_notes->delete(); - - flash('Ward doctor notes have been deleted')->success(); - return redirect('in_patient_sheet'); - } - - public function delete_nurse_notes($id) - { - $ward_nurse_notes = WardInpatientSheetNurseComment::find($id); - $ward_nurse_notes->delete(); - - flash('Ward nurse notes have been deleted')->success(); - return redirect('in_patient_sheet'); - } - - public function re_calculate_inpatient_bill(Request $request) { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - $patient_insurance_status = (patient_insurance_status($patient_id) == 1); - - $ward_id = get_name($episode_id, 'episode_id', 'ward_id', 'inpatient_info'); - $ward_id = is_integer($ward_id) ? $ward_id : 0; - - $inpatient_bill = InpatientBill::where(['patient_id'=>$patient_id, 'episode_id'=>$episode_id])->first(); - - if (!$inpatient_bill) { - flash('No bill has been generated for this inpatient record')->error(); - return redirect()->back()->withInput(); - } - - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - - //ward treatments - $ward_treatments = WardTreatmentDispensation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - foreach ($ward_treatments as $ward_treatment) { - $drugs_details = Drug::find($ward_treatment->drug_id); - $drug_chi_price = 0; - - $ward_treatment->cost_price = $drugs_details->cost_price; - $ward_treatment->inventory_account = $drugs_details->inventory_account; - $ward_treatment->cost_of_goods_account = $drugs_details->cost_of_goods_account; - - if($patient_insurance_status){ - $item_pricing_details = get_item_insurance_pricing($patient_id, $ward_treatment->drug_id, 4, true, $ward_id); - $drug_selling_price = $item_pricing_details[2]; - $drug_chi_price = $item_pricing_details[1]; - } else { - if ($price_list_id) { - $drug_selling_price = get_price_list_category_price($price_list_id, 3, $ward_treatment->drug_id); - } else { - $drug_selling_price = $drugs_details->non_insured_price; - } - } - - $ward_treatment->price = $drug_selling_price; - $ward_treatment->chi_price = $drug_chi_price; - $ward_treatment->update(); - } - - //ward investigations - $ward_investigations = WardInvestigationPricing::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->get(); - foreach ($ward_investigations as $ward_inv_pricing) { - $investigation_chi_amount = 0; - - if($patient_insurance_status){ - $item_pricing_details = get_item_insurance_pricing($patient_id, $ward_inv_pricing->investigation_id, 3, true, $ward_id); - $investigation_amount = $item_pricing_details[2]; - $investigation_chi_amount = $item_pricing_details[1]; - } else { - if ($price_list_id) { - $investigation_amount = get_price_list_category_price($price_list_id, 2, $ward_inv_pricing->investigation_id); - } else { - $investigation_amount = get_name($ward_inv_pricing->investigation_id, "id", "non_insured_price", "investigations"); - } - } - - $ward_inv_pricing->price = $investigation_amount; - $ward_inv_pricing->chi_price = $investigation_chi_amount; - $ward_inv_pricing->current_chart_of_account = get_name($ward_inv_pricing->investigation_id, "id", "account_id", "investigations"); - $ward_inv_pricing->update(); - } - - // ward services - $ward_services = WardConsultationsAndService::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->get(); - foreach ($ward_services as $ward_serv) { - $service_chi_amount = 0; - - if($patient_insurance_status){ - $item_pricing_details = get_item_insurance_pricing($patient_id, $ward_serv->service_id, 1, true, $ward_id); - $service_amount = $item_pricing_details[2]; - $service_chi_amount = $item_pricing_details[1]; - } else { - if ($price_list_id) { - $service_amount = get_price_list_category_price($price_list_id, 6, $ward_serv->service_id); - } else { - $service_amount = get_name($ward_serv->service_id, "id", "non_insured_price", "services"); - } - } - - $ward_serv->unit_price = $service_amount; - $ward_serv->chi_price = $service_chi_amount; - $ward_serv->current_chart_of_account = get_name($ward_serv->service_id, "id", "account_id", "services"); - $ward_serv->update(); - } - - //ward sundries - $ward_sundries = WardSundryDispensation::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->get(); - foreach ($ward_sundries as $ward_sundry) { - $sundry_details = Sundry::find($ward_sundry->sundry_id); - $sundry_chi_price = 0; - - $ward_sundry->current_chart_of_account = $sundry_details->account_id; - $ward_sundry->inventory_account = $sundry_details->inventory_account; - $ward_sundry->cost_of_goods_account = $sundry_details->cost_of_goods_account; - $ward_sundry->cost_price = $sundry_details->cost_price; - - if($patient_insurance_status){ - $item_pricing_details = get_item_insurance_pricing($patient_id, $ward_sundry->sundry_id, 5, true, $ward_id); - $sundry_selling_price = $item_pricing_details[2]; - $sundry_chi_price = $item_pricing_details[1]; - } else { - if ($price_list_id) { - $sundry_selling_price = get_price_list_category_price($price_list_id, 5, $ward_sundry->sundry_id); - } else { - $sundry_selling_price = $sundry_details->non_insured_price; - } - } - - $ward_sundry->price = $sundry_selling_price; - $ward_sundry->chi_price = $sundry_chi_price; - $ward_sundry->update(); - } - - //ward procedures - $ward_procedures = WardProcedure::where(['patient_id' => $patient_id,'episode_id' => $episode_id])->get(); - foreach ($ward_procedures as $ward_procedure) { - $procedure_details = Procedure::find($ward_procedure->procedure_id); - $procedure_chi_price = 0; - - $ward_procedure->current_chart_of_account = $procedure_details->account_id; - - if($patient_insurance_status){ - $item_pricing_details = get_item_insurance_pricing($patient_id, $ward_procedure->procedure_id, 2, true, $ward_id); - $procedure_selling_price = $item_pricing_details[2]; - $procedure_chi_price = $item_pricing_details[1]; - } else { - if ($price_list_id) { - $procedure_selling_price = get_price_list_category_price($price_list_id, 4, $ward_procedure->procedure_id); - } else { - $procedure_selling_price = $procedure_details->non_insured_price; - } - } - - $ward_procedure->hospital_fee = $procedure_selling_price; - $ward_procedure->chi_price = $procedure_chi_price; - $ward_procedure->update(); - } - - // opd procedures - $opd_unpaid_procedures = OrderedProcedure::where(['patient_id' => $patient_id, 'episode_id' => $episode_id,'payment_status' => 0])->get(); - $saved_procedures_prices = []; - $saved_chi_procedures_prices = []; - foreach ($opd_unpaid_procedures as $opd_unpaid_procedure) { - $procedure_ids = explode(",", $opd_unpaid_procedure->procedure_id); - - for ($i = 0; $i < count($procedure_ids) ; $i++) { - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $procedure_ids[$i], 2, true, $ward_id); - $opd_procedure_amount = $item_insurance_details[2]; - $opd_procedure_insurance_amount = $item_insurance_details[1]; - } else { - if ($price_list_id) { - $opd_procedure_amount = get_price_list_category_price($price_list_id, 4, $procedure_ids[$i]); - } else { - $opd_procedure_amount = get_name($procedure_ids[$i], "id", "non_insured_price", "procedures"); - } - $opd_procedure_insurance_amount = 0; - } - - $saved_procedures_prices[] = $opd_procedure_amount; - $saved_chi_procedures_prices[] = $opd_procedure_insurance_amount; - } - } - - //opd treatments - $opd_unpaid_treatments = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id,'payment_status' => 0, 'tta' => 0])->get(); - $saved_drug_prices = []; - $saved_chi_drug_prices = []; - foreach ($opd_unpaid_treatments as $opd_treatment) { - $unit_selling_prices_array = []; - $opd_drug_ids = explode(",", $opd_treatment->drugs); - - for ($i=0; $i < count($opd_drug_ids) ; $i++) { - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $opd_drug_ids[$i], 4, true, $ward_id); - $treatment_amount = $item_insurance_details[2]; - $opd_treatment_insurance_amount = $item_insurance_details[1]; - } else { - if ($price_list_id) { - $treatment_amount = get_price_list_category_price($price_list_id, 3, $opd_drug_ids[$i]); - } else { - $treatment_amount = get_name($opd_drug_ids[$i], "id", "non_insured_price", "drugs"); - } - $opd_treatment_insurance_amount = 0; - } - - $unit_selling_prices_array[] = $treatment_amount; - $saved_drug_prices[] = $treatment_amount; - $saved_chi_drug_prices[] = $opd_treatment_insurance_amount; - } - $opd_treatment->unit_selling_prices = implode(",", $unit_selling_prices_array); - $opd_treatment->save(); - } - - //opd sundries - $opd_unpaid_sundries = OrderedSundry::where(['patient_id' => $patient_id, 'episode_id' => $episode_id,'payment_status' => 0])->get(); - $saved_sundry_prices = []; - $saved_chi_sundry_prices = []; - foreach ($opd_unpaid_sundries as $opd_sundry_order) { - $opd_sundry_ids_array = explode(",", $opd_sundry_order->sundries_id); - $unit_selling_prices_array = []; - - for ($i=0; $i < count($opd_sundry_ids_array) ; $i++) { - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $opd_sundry_ids_array[$i], 5, true, $ward_id); - $opd_sundry_amount = $item_insurance_details[2]; - $opd_sundry_insurance_amount = $item_insurance_details[1]; - } else { - if ($price_list_id) { - $opd_sundry_amount = get_price_list_category_price($price_list_id, 5, $opd_sundry_ids_array[$i]); - } else { - $opd_sundry_amount = get_name($opd_sundry_ids_array[$i], "id", "non_insured_price", "sundries"); - } - $opd_sundry_insurance_amount = 0; - } - - $unit_selling_prices_array[] = $opd_sundry_amount; - $saved_sundry_prices[] = $opd_sundry_amount; - $saved_chi_sundry_prices[] = $opd_sundry_insurance_amount; - } - - $opd_sundry_order->sundries_id = implode(",", $opd_sundry_ids_array); - $opd_sundry_order->sundries_amount = implode(",", $unit_selling_prices_array); - $opd_sundry_order->update(); - } - - //opd services - $opd_unpaid_services = OrderedService::where(['patient_id' => $patient_id, 'episode_id' => $episode_id,'payment_status' => 0])->get(); - $saved_services_prices = []; - $saved_chi_services_prices = []; - foreach($opd_unpaid_services as $opd_used_service){ - $service_ids_array = explode(",", $opd_used_service->service_id); - $services_amounts_array = []; - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - for ($i=0; $i < count($service_ids_array) ; $i++) { - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $service_ids_array[$i], 1, true, $ward_id); - $service_cost = $item_insurance_details[2]; - $opd_service_insurance = $item_insurance_details[1]; - } else { - if ($price_list_id) { - $service_cost = get_price_list_category_price($price_list_id, 6, $service_ids_array[$i]); - } else{ - $service_cost = get_name($service_ids_array[$i], "id", "non_insured_price", "services"); - } - $opd_service_insurance = 0; - } - - $services_amounts_array[] = $service_cost; - $saved_services_prices[] = $service_cost; - $saved_chi_services_prices[] = $opd_service_insurance; - } - - $opd_used_service->service_amount = implode(",", $services_amounts_array); - $opd_used_service->save(); - } - - $treatment_to_take_away = Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'tta' => 1])->get(); - $saved_tta_prices = []; - $saved_chi_tta_prices = []; - foreach($treatment_to_take_away as $treatment) { - $unit_selling_prices_array = []; - $opd_drug_ids = explode(",", $treatment->drugs); - - for ($i=0; $i < count($opd_drug_ids) ; $i++) { - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $opd_drug_ids[$i], 4, true, $ward_id); - $treatment_amount = $item_insurance_details[2]; - $opd_treatment_insurance_amount = $item_insurance_details[1]; - } else { - if ($price_list_id) { - $treatment_amount = get_price_list_category_price($price_list_id, 3, $opd_drug_ids[$i]); - } else { - $treatment_amount = get_name($opd_drug_ids[$i], "id", "non_insured_price", "drugs"); - } - $opd_treatment_insurance_amount = 0; - } - - $unit_selling_prices_array[] = $treatment_amount; - $saved_tta_prices[] = $treatment_amount; - $saved_chi_tta_prices[] = $opd_treatment_insurance_amount; - } - $treatment->unit_selling_prices = implode(",", $unit_selling_prices_array); - $treatment->save(); - } - - // save items and prices for OPD items since IPD have their own tables 'cept for investigations - $inpatient_bill->sundries_item_prices = implode(",", $saved_sundry_prices); - $inpatient_bill->prescription_treatment_item_prices = implode(",", $saved_drug_prices); - $inpatient_bill->procedures_item_prices = implode(",", $saved_procedures_prices); - $inpatient_bill->services_item_prices = implode(",", $saved_services_prices); - $inpatient_bill->tta_item_prices = implode(",", $saved_tta_prices); - - $inpatient_bill->sundries_item_chi_prices = implode(",", $saved_chi_sundry_prices); - $inpatient_bill->prescription_treatment_item_chi_prices = implode(",", $saved_chi_drug_prices); - $inpatient_bill->procedures_item_chi_prices = implode(",", $saved_chi_procedures_prices); - $inpatient_bill->services_item_chi_prices = implode(",", $saved_chi_services_prices); - $inpatient_bill->tta_item_chi_prices = implode(",", $saved_chi_tta_prices); - $inpatient_bill->save(); - - flash('Inpatient bill has been re-calculated using the current price list of the patient')->info(); - return redirect('inpatient_billing'); - } - - public function update_ward_consumption_prices_with_price_list($patient_id, $episode_id, $price_list_id) - { - //1.ward treatments - $ward_treatment_dispensations = WardTreatmentDispensation::where(['episode_id' => $episode_id, 'patient_id' => $patient_id])->get(); - if (count($ward_treatment_dispensations) > 0) { - foreach ($ward_treatment_dispensations as $ward_treatment) { - $ward_treatment->price = get_price_list_category_price($price_list_id, 3, $ward_treatment->drug_id); - $ward_treatment->update(); - } - } - - //2.ward sundries - $ward_sundry_dispensations = WardSundryDispensation::where(['episode_id' => $episode_id, 'patient_id' => $patient_id])->get(); - if (count($ward_sundry_dispensations) > 0) { - foreach ($ward_sundry_dispensations as $ward_sundry) { - $ward_sundry->price = get_price_list_category_price($price_list_id, 5, $ward_sundry->sundry_id); - $ward_sundry->update(); - } - } - - //3.ward services - $ward_consultations_and_services = WardConsultationsAndService::where(['episode_id' => $episode_id, 'patient_id' => $patient_id])->get(); - if (count($ward_consultations_and_services) > 0) { - foreach ($ward_consultations_and_services as $ward_service) { - if (is_numeric($ward_service->service_id)) { //make sure it is numeric to cater for staff configured services - $ward_service->unit_price = get_price_list_category_price($price_list_id, 6, $ward_service->service_id); - $ward_service->update(); - } - } - } - - //4.ward procedures - $ward_procedures = WardProcedure::where(['episode_id' => $episode_id, 'patient_id' => $patient_id])->get(); - if (count($ward_procedures) > 0) { - foreach ($ward_procedures as $ward_procedure) { - $ward_procedure->hospital_fee = get_price_list_category_price($price_list_id, 4, $ward_procedure->procedure_id); - $ward_procedure->update(); - } - } - - //update the inpatient record for procedures - $inpatient_info = InpatientInfo::where(['episode_id' => $episode_id, 'patient_id' => $patient_id])->first(); - $inpatient_procedures = @unserialize($inpatient_info->procedures); - $inpatient_procedures_hospital_fees = @unserialize($inpatient_info->procedure_hospital_fee); - $procedures_array = $hospital_fees_array = []; - if(is_array($inpatient_procedures)){ - for ($i = 0; $i < count($inpatient_procedures); $i++){ - $procedures_array[] = $inpatient_procedures[$i]; - $hospital_fees_array[] = get_price_list_category_price($price_list_id, 4, $inpatient_procedures[$i]); - } - } - $inpatient_info->procedures = serialize($procedures_array); - $inpatient_info->procedure_hospital_fee = serialize($hospital_fees_array); - $inpatient_info->update(); - - //5.ward investigations - $ward_investigations = WardInvestigationPricing::where(['episode_id' => $episode_id, 'patient_id' => $patient_id])->get(); - if (count($ward_investigations) > 0) { - foreach ($ward_investigations as $ward_inv) { - $ward_inv->price = get_price_list_category_price($price_list_id, 2, $ward_inv->investigation_id); - $ward_inv->update(); - } - } - } - - public function delete_inpatient_detailed_notes($id) - { - $ward_doctor_notes = WardInpatientDetailedNote::find($id); - $ward_doctor_notes->delete(); - - flash('Notes have been deleted')->success(); - return redirect('in_patient_sheet'); - } - - - public function update_inpatient_notes(Request $request) - { - //pick id from ajax post request :: id - $inpatient_notes_id = $request->id; - - // Validate the incoming request data - $request->validate([ - 'history' => 'nullable|string', - 'vitals' => 'nullable|string', - 'result' => 'nullable|string', - 'impression' => 'nullable|string', - 'plan' => 'nullable|string', - ]); - - try { - $ward_doctor_notes = WardInpatientDetailedNote::findOrFail($inpatient_notes_id); - $ward_doctor_notes->history = $request->history; - $ward_doctor_notes->result = $request->result; - $ward_doctor_notes->vitals = $request->vitals; - $ward_doctor_notes->impression = $request->impression; - $ward_doctor_notes->plan = $request->plan; - $ward_doctor_notes->save(); - - // Return a JSON response indicating success - return response()->json(['success' => true, 'message' => 'Inpatient notes updated successfully.']); - } catch (\Exception $e) { - \Log::error("Error updating inpatient notes: " . $e->getMessage()); - return response()->json([ - 'success' => false, - 'message' => 'An error occurred while updating notes.', - 'error' => $e->getMessage() // Include error message for debugging - ], 500); - } - - - } - - public function update_doctor_ward_notes(Request $request){ - - $doctor_inpatient_notes_id = $request->id; - - // Validate the incoming request data - $request->validate([ - 'ward_comments' => 'nullable|string', - ]); - - try { - $doctor_ward_notes = WardInpatientSheetComment::findOrFail($doctor_inpatient_notes_id); - $doctor_ward_notes->ward_comments = $request->ward_comments; - $doctor_ward_notes->save(); - - // Return a JSON response indicating success - return response()->json([ - 'success' => true, - 'message' => 'Doctor Ward inpatient notes updated successfully.' - ]); - } catch (\Exception $e) { - \Log::error("Error updating inpatient notes: " . $e->getMessage()); - return response()->json([ - 'success' => false, - 'message' => 'An error occurred while updating notes.', - 'error' => $e->getMessage() - ], 500); - } - - - } - - public function update_nurse_ward_notes(Request $request){ - - $nurse_inpatient_notes_id = $request->id; - - // Validate the incoming request data - $request->validate([ - 'ward_comments' => 'nullable|string', - ]); - - try { - $doctor_ward_notes = WardInpatientSheetNurseComment::findOrFail($nurse_inpatient_notes_id); - $doctor_ward_notes->ward_comments = $request->ward_comments; - $doctor_ward_notes->save(); - - // Return a JSON response indicating success - return response()->json([ - 'success' => true, - 'message' => 'Nurse Ward inpatient notes updated successfully.' - ]); - } catch (\Exception $e) { - \Log::error("Error updating inpatient notes: " . $e->getMessage()); - return response()->json([ - 'success' => false, - 'message' => 'An error occurred while updating notes.', - 'error' => $e->getMessage() - ], 500); - } - } - - public function inpatient_detailed_notes_print() - { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $patient = Patient::find($patient_id); - $hospitalInfo = DB::table('hospital_information')->find(1); - - $inpatient_info = InpatientInfo::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->orderBy('created_at', 'desc')->first(); - $patient_discount = PatientDiscount::where(['patient_category' => $patient->category_id])->select("discount", "pay_later")->first(); - - if (!is_null($patient_discount)) { - $patient_discount->toArray(); - } - - $data = [ - 'patient' => $patient, - 'patient_id' => $patient_id, - 'episode_id' => $episode_id, - 'inpatient_info' => $inpatient_info, - 'patient_discount' => $patient_discount, - 'hospitalInfo' => $hospitalInfo, - ]; - - $pdf = SnappyPDF::loadView('ward_management::inpatient/inpatient_detailed_notes_print', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Stre@mline'); - - - return $pdf->inline('Inpatient Notes' . date(" d-m-y h:ia") . '.pdf'); - } - - public function save_patient_vitals(Request $request) { - $vitals_observations = $request->vitals_observations; - $vitals_value = $request->vitals_value; - $vitals_datetime = $request->vitals_datetime; - $patient_id = $request->patient_id; - $episode_id = $request->episode_id; - $inpatient_id = $request->inpatient_id; - - $observations = DB::table('observations') - ->whereNull('deleted_at') - ->pluck('name', 'id'); - - $vitals = []; - - for ($i = 0; $i < count($vitals_observations); $i++) { - $exploded_date = explode("-", $vitals_datetime[$i]); - - if (!(empty($vitals_observations[$i]) || empty($vitals_value[$i]) || - empty($vitals_datetime[$i])) && strtotime($vitals_datetime[$i]) && - isset($observations[$vitals_observations[$i]]) && ((int)$exploded_date[0] <= (int)date('Y'))) { - $vitals[] = [ - "name" => $observations[$vitals_observations[$i]], - "value" => $vitals_value[$i], - "time" => $vitals_datetime[$i] - ]; - } - } - - if (count($vitals) === 0) { - return 0; - } - - $inpatient_vitals = new PatientInpatientVitals(); - $inpatient_vitals->patient_id = $patient_id; - $inpatient_vitals->episode_id = $episode_id; - $inpatient_vitals->inpatient_id = $inpatient_id; - $inpatient_vitals->vitals = json_encode($vitals); - $inpatient_vitals->created_by = Auth::id(); - - try { - $inpatient_vitals->save(); - return 1; - } catch (QueryException $exception) { - return 0; - } - } - - public function open_inpatient_bill($id) { - $inpatient_bill = InpatientBill::find($id); - - // TODO check if the insurance has been changed before opening - - try { - $inpatient_bill->bill_closed = 0; - $inpatient_bill->bill_closed_by = NULL; - $inpatient_bill->bill_closed_at = NULL; - $inpatient_bill->updated_by = Auth::id(); - $inpatient_bill->save(); - - $claim = InsuranceClaim::where('order_id', $id) - ->where('inpatient_outpatient', 1)->update(['claim_status' => 1]); - } catch (\ErrorException $e) { - flash("An error occurred, please try again")->error(); - } - - return redirect('inpatient_billing'); - } - - public function stop_ward_drug(Request $request){ - $ward_prescription_id = $request->ward_prescription_id; - $drug_id = $request->drug_id; - - $ward_treatment = WardTreatment::find($ward_prescription_id); - $stopped_drugs_array = is_null($ward_treatment->stopped_drugs) ? [] : explode(",", $ward_treatment->stopped_drugs); - if (!in_array($drug_id, $stopped_drugs_array)) { - $stopped_drugs_array[] = $drug_id; - $stopped_drugs_string = implode(",", $stopped_drugs_array); - - $ward_treatment->stopped_drugs = $stopped_drugs_string; - $ward_treatment->update(); - return 1; - } - return 0; - } - - public function resume_ward_drug(Request $request){ - $ward_prescription_id = $request->ward_prescription_id; - $drug_id = $request->drug_id; - - $ward_treatment = WardTreatment::find($ward_prescription_id); - $stopped_drugs_array = is_null($ward_treatment->stopped_drugs) ? [] : explode(",", $ward_treatment->stopped_drugs); - if (in_array($drug_id, $stopped_drugs_array)) { - - //get array of stopped drugs and find index of this drug, remove drug from array then implode - $key = array_search($drug_id, $stopped_drugs_array); - unset($stopped_drugs_array[$key]); - - $updated_drugs_string = implode(",", $stopped_drugs_array); - $ward_treatment->stopped_drugs = $updated_drugs_string; - $ward_treatment->update(); - return 1; - } - return 0; - } -} diff --git a/docker/statistics/Modules/WardManagement/Http/Controllers/TreatmentSheetController.php b/docker/statistics/Modules/WardManagement/Http/Controllers/TreatmentSheetController.php deleted file mode 100644 index 80fe0ae9..00000000 --- a/docker/statistics/Modules/WardManagement/Http/Controllers/TreatmentSheetController.php +++ /dev/null @@ -1,301 +0,0 @@ -middleware('auth'); - } - - public function viewTreatmentSheet(): View|RedirectResponse - { - $patient_id = session()->get('patient_id'); - $episode_id = session()->get('episode_id'); - - $inpatient_info = DB::table('inpatient_info')->where('episode_id', $episode_id)->first(); - - if ($inpatient_info) { - $ward_id = $inpatient_info->ward_id; - } else { - return redirect('home'); - } - - $patient = Patient::find($patient_id); - - $ordered_cancer_protocols = DB::table('ordered_cancer_protocols') - ->whereNull('deleted_at')->where('episode_id', $episode_id)->get(); - - $drugs = $this->drugsService->pluckAvailableDrugs('name'); - $drug_with_units = $this->drugsService->pluckAvailableDrugs('unit_id'); - $drug_units = $this->drugUnitsService->pluckAvailableDrugUnits('name'); - $drug_routes = $this->drugRoutesService->pluckAvailableDrugRoutes('name'); - $drug_with_forms = $this->drugsService->pluckAvailableDrugs('form_id'); - $drug_forms = $this->drugFormsService->pluckAvailableDrugForms('name'); - $factors = CancerProtocolController::$factors; - - $ward_prescriptions = WardTreatment::where('episode_id', $episode_id)->get(); - - $users_array = $this->userService->pluckUserFullName(); - $users_array = ['' => '- select -'] + $users_array; - - return view('ward_management::inpatient.treatment_sheet_view', compact('patient', 'episode_id', 'patient_id', 'inpatient_info', - 'ordered_cancer_protocols', 'drugs', 'drug_with_units', 'drug_units', 'drug_routes', 'factors', 'ward_prescriptions', 'users_array', - 'ward_id', 'drug_forms', 'drug_with_forms')); - } - - public function saveTreatmentSheet(Request $request) { - $pre_chemo_given_on = $request->pre_chemo_given_on ?? []; - $pre_chemo_tracker_num = $request->pre_chemo_tracker_num ?? []; - $pre_chemo_given_by = $request->pre_chemo_given_by ?? []; - $pre_chemo_quantity_given = $request->pre_chemo_quantity_given ?? []; - $pre_chemo_order_id = $request->pre_chemo_order_id ?? []; - $chemo_given_on = $request->chemo_given_on ?? []; - $chemo_tracker_num = $request->chemo_tracker_num ?? []; - $chemo_given_by = $request->chemo_given_by ?? []; - $chemo_quantity_given = $request->chemo_quantity_given ?? []; - $chemo_order_id = $request->chemo_order_id ?? []; - $post_chemo_given_on = $request->post_chemo_given_on ?? []; - $post_chemo_tracker_num = $request->post_chemo_tracker_num ?? []; - $post_chemo_given_by = $request->post_chemo_given_by ?? []; - $post_chemo_quantity_given = $request->post_chemo_quantity_given ?? []; - $post_chemo_order_id = $request->post_chemo_order_id ?? []; - $patient_id = $request->patient_id; - $episode_id = $request->episode_id; - $ward_id = $request->ward_id; - - $grouped_items = []; - $duration_counter = 0; - - for ($x = 0; $x < count($pre_chemo_order_id); $x++) { - if (isset($pre_chemo_given_by[$x]) && isset($pre_chemo_given_on[$x]) && $pre_chemo_quantity_given[$x] > 0) { - $grouped_items[$pre_chemo_order_id[$x]]['pre_chemo'][$pre_chemo_tracker_num[$x]] = [ - "pre_chemo_given_on" => $pre_chemo_given_on[$x], - "pre_chemo_given_by" => $pre_chemo_given_by[$x], - "pre_chemo_quantity_given" => $pre_chemo_quantity_given[$x] - ]; - } - } - - for ($x = 0; $x < count($chemo_order_id); $x++) { - if (isset($chemo_given_by[$x]) && isset($chemo_given_on[$x]) && $chemo_quantity_given[$x] > 0) { - $grouped_items[$chemo_order_id[$x]]['chemo'][$chemo_tracker_num[$x]] = [ - "chemo_given_on" => $chemo_given_on[$x], - "chemo_given_by" => $chemo_given_by[$x], - "chemo_quantity_given" => $chemo_quantity_given[$x] - ]; - } - } - - for ($x = 0; $x < count($post_chemo_order_id); $x++) { - if (isset($post_chemo_given_by[$x]) && isset($post_chemo_given_on[$x]) && $post_chemo_quantity_given[$x] > 0) { - $grouped_items[$post_chemo_order_id[$x]]['post_chemo'][$post_chemo_tracker_num[$x]] = [ - "post_chemo_given_on" => $post_chemo_given_on[$x], - "post_chemo_given_by" => $post_chemo_given_by[$x], - "post_chemo_quantity_given" => $post_chemo_quantity_given[$x] - ]; - } - } - - foreach ($grouped_items as $key => $grouped_item) { - $ordered_protocol = OrderedCancerProtocols::find($key); - - if ($ordered_protocol) { - $pre_chemo_drugs = json_decode($ordered_protocol->pre_chemo_drugs, true); - - for($x = 0; $x < count($pre_chemo_drugs); $x++) { - for($i = 0; $i < count($pre_chemo_drugs[$x]['dose']); $i++) { - for($p = 0; $p < count($pre_chemo_drugs[$x]['dose'][$i]['duration']); $p++) { - if (isset($grouped_item['pre_chemo']) && isset($grouped_item['pre_chemo'][$duration_counter])) { - $pre_chemo_drugs[$x]['dose'][$i]['duration'][$p]['given_by'] = $grouped_item['pre_chemo'][$duration_counter]['pre_chemo_given_by']; - $pre_chemo_drugs[$x]['dose'][$i]['duration'][$p]['given_on'] = $grouped_item['pre_chemo'][$duration_counter]['pre_chemo_given_on']; - $pre_chemo_drugs[$x]['dose'][$i]['duration'][$p]['quantity_given'] = $grouped_item['pre_chemo'][$duration_counter]['pre_chemo_quantity_given']; - $this->dispensationService->saveDispensation($patient_id, $episode_id, $pre_chemo_drugs[$x]['drug_id'], $grouped_item['pre_chemo'][$duration_counter]['pre_chemo_quantity_given'], 0, $ward_id); - $ordered_protocol->pre_chemo_status = 1; - } - - $duration_counter++; - } - } - } - - $ordered_protocol->pre_chemo_drugs = json_encode($pre_chemo_drugs); - - $chemo_drugs = json_decode($ordered_protocol->chemo_drugs, true); - - for($x = 0; $x < count($chemo_drugs); $x++) { - for($i = 0; $i < count($chemo_drugs[$x]['dose']); $i++) { - for($p = 0; $p < count($chemo_drugs[$x]['dose'][$i]['duration']); $p++) { - if (isset($grouped_item['chemo']) && isset($grouped_item['chemo'][$duration_counter])) { - $chemo_drugs[$x]['dose'][$i]['duration'][$p]['given_by'] = $grouped_item['chemo'][$duration_counter]['chemo_given_by']; - $chemo_drugs[$x]['dose'][$i]['duration'][$p]['given_on'] = $grouped_item['chemo'][$duration_counter]['chemo_given_on']; - $chemo_drugs[$x]['dose'][$i]['duration'][$p]['quantity_given'] = $grouped_item['chemo'][$duration_counter]['chemo_quantity_given']; - $this->dispensationService->saveDispensation($patient_id, $episode_id, $chemo_drugs[$x]['drug_id'], $grouped_item['chemo'][$duration_counter]['chemo_quantity_given'], 0, $ward_id); - $ordered_protocol->chemo_status = 1; - } - - $duration_counter++; - } - } - } - - $ordered_protocol->chemo_drugs = json_encode($chemo_drugs); - - $post_chemo_drugs = json_decode($ordered_protocol->post_chemo_drugs, true); - - for($x = 0; $x < count($post_chemo_drugs); $x++) { - for($i = 0; $i < count($post_chemo_drugs[$x]['dose']); $i++) { - for($p = 0; $p < count($post_chemo_drugs[$x]['dose'][$i]['duration']); $p++) { - if (isset($grouped_item['post_chemo']) && isset($grouped_item['post_chemo'][$duration_counter])) { - $post_chemo_drugs[$x]['dose'][$i]['duration'][$p]['given_by'] = $grouped_item['post_chemo'][$duration_counter]['post_chemo_given_by']; - $post_chemo_drugs[$x]['dose'][$i]['duration'][$p]['given_on'] = $grouped_item['post_chemo'][$duration_counter]['post_chemo_given_on']; - $post_chemo_drugs[$x]['dose'][$i]['duration'][$p]['quantity_given'] = $grouped_item['post_chemo'][$duration_counter]['post_chemo_quantity_given']; - $this->dispensationService->saveDispensation($patient_id, $episode_id, $post_chemo_drugs[$x]['drug_id'], $grouped_item['post_chemo'][$duration_counter]['post_chemo_quantity_given'], 0, $ward_id); - $ordered_protocol->post_chemo_status = 1; - } - - $duration_counter++; - } - } - } - - $ordered_protocol->post_chemo_drugs = json_encode($post_chemo_drugs); - - try { - $ordered_protocol->save(); - } catch (QueryException $e) { - return 0; - } - } - } - - // handle the rest of the treatments - $opd_given_by = $request->opd_given_by ?? []; - $opd_given_on = $request->opd_given_on ?? []; - $opd_order_number = $request->opd_order_number ?? []; - $opd_ward_treatment_id = $request->opd_ward_treatment_id ?? []; - $opd_drug_id = $request->opd_drug_id ?? []; - $opd_quantity_given = $request->opd_quantity_given ?? []; - - for ($x = 0; $x < count($opd_given_by); $x++) { - if (isset($opd_given_by[$x]) && isset($opd_given_on[$x])) { - $dispensations = new TreatmentSheetDispensations(); - $dispensations->patient_id = $patient_id; - $dispensations->episode_id = $episode_id; - $dispensations->ward_treatment_id = $opd_ward_treatment_id[$x]; - $dispensations->order_number = $opd_order_number[$x]; - $dispensations->drug_id = $opd_drug_id[$x]; - $dispensations->quantity_given = $opd_quantity_given[$x]; - $dispensations->given_by = $opd_given_by[$x]; - $dispensations->given_on = $opd_given_on[$x]; - $dispensations->created_by = Auth::id(); - $dispensations->save(); - - $this->dispensationService->saveDispensation($patient_id, $episode_id, $opd_drug_id[$x], $opd_quantity_given[$x], 0, $ward_id); - } - } - - if (session()->has('treatment_sheet_route')) { - $treatment_sheet_route = session()->get('treatment_sheet_route'); - session()->forget('treatment_sheet_route'); - return $treatment_sheet_route; - } else { - return "self"; - } - } - - public function printTreatmentSheet($episode_id) - { - $ordered_cancer_protocols = DB::table('ordered_cancer_protocols') - ->whereNull('deleted_at')->where('episode_id', $episode_id)->get(); - - $ward_prescriptions = WardTreatment::where('episode_id', $episode_id)->get(); - - $drugs = $this->drugsService->pluckAvailableDrugs('name'); - $drug_with_units = $this->drugsService->pluckAvailableDrugs('unit_id'); - $drug_units = $this->drugUnitsService->pluckAvailableDrugUnits('name'); - $drug_routes = $this->drugRoutesService->pluckAvailableDrugRoutes('name'); - $factors = CancerProtocolController::$factors; - - $inpatient_info = DB::table('inpatient_info')->where('episode_id', $episode_id)->first(); - - if ($inpatient_info) { - $patient_id = $inpatient_info->patient_id; - $ward_id = $inpatient_info->ward_id; - $admitted_on = $inpatient_info->admitted_on; - } else { - return redirect('home'); - } - - $patient = Patient::find($patient_id); - - $users_array = $this->userService->pluckUserFullName(); - $users_array = ['' => '- select -'] + $users_array; - - $data = [ - "patient" => $patient, - "users_array" => $users_array, - "ordered_cancer_protocols" => $ordered_cancer_protocols, - "ward_prescriptions" => $ward_prescriptions, - "factors" => $factors, - "drug_routes" => $drug_routes, - "drug_with_units" => $drug_with_units, - "drug_units" => $drug_units, - "drugs" => $drugs, - "ward_id" => $ward_id, - "admitted_on" => $admitted_on, - ]; - - $pdf = SnappyPDF::loadView('ward_management::inpatient/print_treatment_sheet', $data) - ->setOrientation('portrait') - ->setOption('margin-bottom', 7) - ->setOption('margin-top', 5) - ->setOption('footer-html', 'Stre@mline'); - - return $pdf->inline('Inpatient Bill' . date(" d-m-y h:ia") . '.pdf'); - } - - public function redirectBack(): RedirectResponse - { - $treatment_sheet_route = session()->get('treatment_sheet_route'); - session()->forget('treatment_sheet_route'); - - if ($treatment_sheet_route === "ward_home") { - return redirect('/wards/select'); - } else { - return redirect('/patient_episodes'); - } - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Http/Controllers/WardController.php b/docker/statistics/Modules/WardManagement/Http/Controllers/WardController.php deleted file mode 100755 index fe191f13..00000000 --- a/docker/statistics/Modules/WardManagement/Http/Controllers/WardController.php +++ /dev/null @@ -1,540 +0,0 @@ -middleware('auth'); - $this->middleware('permission:ward-list', ['only' => ['index', 'select']]); - $this->middleware('permission:ward-create', ['only' => ['create', 'store']]); - $this->middleware('permission:ward-edit', ['only' => ['edit', 'update']]); - $this->middleware('permission:ward-delete', ['only' => ['destroy', 'inactive', 'activate']]); - } - - public static $ward_types = ['maternity' => 'Maternity Ward', 'theatre' => 'Theatre Ward', 'psychiatric'=>'Psychiatric ward','emergency'=>'Emergency ward']; - - /** - * Display a listing of the resource. - */ - public function index() - { - $wards = DB::table('wards')->leftJoin('hmis_wards', 'hmis_wards.id', '=', 'wards.hmis_ward_id')->whereNull('wards.deleted_at') - ->select('wards.*', 'hmis_wards.name as hmis_ward')->orderby('name', 'asc')->get(); - - $inpatient_wards = InpatientInfo::distinct('ward_id')->pluck('ward_id', 'ward_id')->toArray(); - $ward_types = static::$ward_types; - - return view('ward_management::wards.index', compact('wards', 'inpatient_wards', 'ward_types')); - } - - /** - * Show the form for creating a new resource. - */ - public function create() - { - $wards = ['CHILDREN', 'MEDICAL LOWER (ISOLATION)', 'MATERNITY', 'MEDICAL UPPER', 'PSYCHIATRY Ahumuza Centre', 'REHABILITATION', 'SPECIAL CARE BABY UNIT', 'SURGICAL MALE', 'SURGICAL FEMALE', 'THEATRE', 'OPD', 'NIGHT NURSES CUPBOARD', 'DEMO TEST WARD', 'SCHOOL OF NURSING', 'GYNAECOLOGY WARD']; - $ward_types = HmisWard::all('name', 'id'); - $actual_ward_types = static::$ward_types; - return view('ward_management::wards.create', compact('wards', 'ward_types', 'actual_ward_types')); - } - - /** - * Store a newly created resource in storage. - */ - public function store(Request $request) - { - //validation passed - if (isset($request->skip)&& $request->skip == 'skip') { - //update the streamline setup table with the new finished step - $this->setupService->saveStep("wards registration", 1); - return redirect("service_items/create"); - } else { - $ward = new Ward; - $ward->name = $request->name; - $ward->available = $request->available; - $ward->beds = $request->beds; - $ward->hmis_ward_id = $request->type; - $ward->type = $request->ward_type; - if ($request->type == '4') $ward->slug = 'maternity'; - $ward->created_by = Auth::id(); - - try { - if (!is_null($ward->name)) { - $ward->save(); - } - - if (session()->has('streamline_setup')) { - if (isset($request->other_wards)) { - $other_wards_array = $request->other_wards; - $other_beds_array = $request->other_ward_beds; - $other_ward_types_array = $request->other_ward_types; - for ($i = 0; $i < count($other_wards_array); $i++) { - $ward = new Ward; - $ward->name = $other_wards_array[$i]; - $ward->beds = $other_beds_array[$i]; - $ward->slug = $other_ward_types_array[$i]; - $ward->created_by = Auth::id(); - $ward->save(); - } - } - - if (isset($request->selected_wards)) { - $selected_wards_array = $request->selected_wards; - if (!empty($selected_wards_array)) { - for ($i = 0; $i < count($selected_wards_array); $i++) { - $ward = new Ward; - $ward->name = $selected_wards_array[$i]; - $ward->beds = 0; - $ward->created_by = Auth::id(); - $ward->save(); - } - } - } - //update the streamline setup table with the new finished step - $this->setupService->saveStep("wards registration", 1); - flash("Wards have been added")->success(); - - return redirect("service_items/create"); - } - - flash($request->name . " Ward has been saved")->success(); - return redirect("/wards/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) - { - $ward = Ward::where(['id' => $id])->first(); - $ward_types = HmisWard::all('name', 'id')->toArray(); - $actual_ward_types = static::$ward_types; - $selected_ward_type = ''; - if (!$ward) { - flash()->error("Ward not found"); - return redirect('/wards/'); - } else { - if (!empty($ward->hmis_ward_id)) { - $hmis_ward_id = $ward->hmis_ward_id; - $other_ward_types = array_filter($ward_types, function ($item) use ($hmis_ward_id) { - return $item['id'] !== $hmis_ward_id; - }); - $selected_ward_type = array_filter($ward_types, function ($item) use ($hmis_ward_id) { - return $item['id'] == $hmis_ward_id; - }); - } else $other_ward_types = $ward_types; - return view('ward_management::wards.edit', compact('ward', 'other_ward_types', 'selected_ward_type', 'actual_ward_types')); - } - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - request()->validate([ - 'name' => 'required', - 'beds' => 'required', - 'type' => 'required' - ]); - - //validation passed - $ward = Ward::findOrFail($id); - - $ward->name = $request->name; - $ward->beds = $request->beds; - $ward->available = $request->available; - $ward->hmis_ward_id = $request->type; - $ward->type = $request->ward_type; - if ($request->type == '4') $ward->slug = 'maternity'; - $ward->updated_by = Auth::id(); - - try { - $ward->save(); - flash($request->name . " Ward has been updated")->success(); - return redirect("/wards/"); - } catch (QueryException $e) { - flash("An error occurred")->error(); - return back()->withInput(); - } - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - $ward = Ward::findOrFail($id); - - if ($ward->delete()) { - flash("Ward has been deleted.")->success(); - return redirect('/wards/'); - } - } - - /** - * Display a listing of the inactive resource(s). - * - * @return \Illuminate\Http\Response - */ - public function inactive() - { - $wards = Ward::onlyTrashed() - ->orderBy('name', 'asc') - ->paginate(50); - - if (empty($wards)) { - flash()->error("There is no inactive ward"); - return redirect('/wards/'); - } else { - return view('ward_management::wards.inactive', compact('wards')); - } - } - - /** - * Activate the specified resource in storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function activate($id) - { - $ward = Ward::withTrashed()->find($id); - - if ($ward->restore()) : - flash("Ward has been activated.")->success(); - return redirect('/wards/inactive'); - endif; - } - - public function select(Request $request) - { - $ward_id = $request->ward_id; - $search_by = $request->search_by; - $reg_date = $request->reg_date; - $start_date = $request->start_date; - $end_date = $request->end_date; - $patient_id = $request->patient_id; - - if (!isset($ward_id) && !isset($search_by)) { - $ward_id = session()->get('ward_id'); - $search_by = session()->get('search_by'); - $reg_date = session()->get('reg_date'); - $start_date = session()->get('start_date'); - $end_date = session()->get('end_date'); - $patient_id = session()->get('ward_patient_id'); - } else { - session()->put('ward_id', $ward_id); - session()->put('search_by', $search_by); - session()->put('reg_date', $reg_date); - session()->put('start_date', $start_date); - session()->put('end_date', $end_date); - session()->put('ward_patient_id', $patient_id); - } - - $patient_id = empty($patient_id) ? false : $patient_id; - $ward_id = empty($ward_id) ? false : $ward_id; - - if ($search_by === '0') { - $start_date = Carbon::today()->startOfCentury()->toDateTimeString(); - $end_date = Carbon::now()->endOfDay()->toDateTimeString(); - } elseif($search_by == 2){ - $start_date = Carbon::yesterday()->startOfDay()->toDateTimeString(); - $end_date = Carbon::yesterday()->endOfDay()->toDateTimeString(); - } elseif($search_by == 3 && !empty($reg_date)){ - // custom date - $start_date = Carbon::createFromFormat('d/m/Y', $reg_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $reg_date)->endOfDay()->toDateTimeString(); - } elseif($search_by == 4 && !(empty($start_date) || empty($end_date))){ - // custom date range - $start_date = Carbon::createFromFormat('d/m/Y', $start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::createFromFormat('d/m/Y', $end_date)->endOfDay()->toDateTimeString(); - } else { - $start_date = Carbon::now()->startOfDay()->toDateTimeString(); - $end_date = Carbon::now()->endOfDay()->toDateTimeString(); - } - - $inpatients = DB::table('inpatient_info as i')->leftJoin('patients as p', 'p.id','i.patient_id')->leftJoin('inpatient_bed_categories as b','b.id', 'i.bed_category_id') - ->leftJoin('wards as w','w.id', 'i.ward_id')->leftJoin('triage as t','t.episode_id', 'i.episode_id')->leftJoin('diagnoses as d','d.id', 'i.primary_diagnosis') - ->where('i.discharged', 0) - ->when($ward_id, function (Builder $query, string $ward_id) { - $query->where('i.ward_id', $ward_id); - }) - ->when($patient_id, function (Builder $query, string $patient_id) { - $query->where('i.patient_id', $patient_id); - }) - ->whereBetween('i.created_at', [$start_date, $end_date]) - ->whereNull('p.deleted_at') - ->select('i.episode_id', 'i.patient_id', 'i.id','i.bed_no','i.bed_category_id','i.admitted_on', 'i.primary_diagnosis', 'i.comments', 'i.ward_id', - 'b.name as bed_category', 'p.number', 'p.gender','p.date_of_birth','w.slug', 't.severe_grade','d.name as primary_diagnosis_name') - ->orderBy('i.created_at', 'desc')->get(); - - if (!is_null($ward_id)) { - if ($ward_id != 0) { - $search_text = get_name($ward_id, 'id', 'name', 'wards'); - } else { - $search_text = 'All Wards'; - } - } else { - $search_text = __('wards.no_ward_selected'); - } - - $search_text .= " From " . streamline_date($start_date) . " to " . streamline_date($end_date); - - $wards = DB::table('wards')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck("name", "id")->toArray(); - $wards = [0 => 'All Wards'] + $wards; - $wards = ['' => '- select -'] + $wards; - - return view('ward_management::wards.select', compact('inpatients', 'wards', 'ward_id', 'search_text')); - } - - /* submit bed category sent via ajax from the ward sheet containing patients */ - public function submit_bed_category(Request $request) - { - $bed_category = $request->bed_category; - $inpatient_id = $request->inpatient_id; - - $inpatient_info_collection = InpatientInfo::where(['id' => $inpatient_id])->get(); - if (!is_null($inpatient_info_collection)) { - $inpatient_info = $inpatient_info_collection->first(); - $inpatient_info->bed_category_id = $bed_category; - if ($inpatient_info->update()) { - return "success"; - } - } - return "error"; - } - - /* submit bed number sent via ajax from the ward sheet containing patients */ - public function submit_bed_number(Request $request) - { - $bed_number = $request->bed_no; - $inpatient_id = $request->inpatient_id; - - $inpatient_info_collection = InpatientInfo::where(['id' => $inpatient_id])->get(); - if (!is_null($inpatient_info_collection)) { - $inpatient_info = $inpatient_info_collection->first(); - $inpatient_info->bed_no = $bed_number; - if ($inpatient_info->update()) { - return "success"; - } - } - return "error"; - } - - /* submit ward message sent via ajax from the ward sheet containing patients */ - public function submit_ward_message(Request $request) - { - $comments = $request->comment; - $patient_id = $request->patient_id; - $episode_id = $request->episode_id; - - $inpatient_info_collection = InpatientInfo::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - if (!is_null($inpatient_info_collection)) { - $inpatient_info = $inpatient_info_collection->first(); - $inpatient_info->comments = $comments; - if ($inpatient_info->update()) { - return "success"; - } - } - return "error"; - } - - //set episode and patient_id for selected patient - public function route_patient_episode(Request $request) - { - $episode_id = $request->episode_id; - $patient_id = PatientEpisode::find($episode_id)->patient_id; - - session()->put('episode_id', $episode_id); - session()->put('patient_id', $patient_id); - - switch ($request->submit) { - case 'triage': - return redirect('/triage/'); - case 'consultation': - return redirect('/consultation/route'); - case 'create_anaesthetics': - return redirect('anaesthetics/create'); - case 'create_surgery': - return redirect('theatre_surgery/create'); - case 'anaesthetics_history': - return redirect('anaesthetics/history'); - case 'surgery_index': - return redirect('theatre_surgery'); - case 'inpatient_sheet': - case 'maternity_summary': - return redirect('in_patient_sheet'); - case 'inpatient_billing': - return redirect('inpatient_billing'); - case 'maternity_admission': - // return redirect('maternity_inpatient_sheet'); - return redirect('/maternity_admission/route'); - break; - case 'labour_ward_admission': - return redirect('labour_ward_admission_sheet'); - break; - case 'labour_ward_admission_sheet_details': - return redirect('labour_ward_admission_sheet_details'); - break; - case 'edit_labour_ward_admission_sheet': - return redirect('edit_labour_ward_admission_sheet'); - break; - case 'delivery_record': - return redirect('maternity_delivery_record'); - case 'treatment_sheet': - session()->put(['treatment_sheet_route' => 'ward_home']); - return redirect('treatment_sheet/view'); - default: - return redirect('/patient_episodes/'); - } - } - - public function drugs_stock_sheet(Request $request) - { - $ward_id = null; - $ward_stock_records = []; - $ward_id = $request->ward_id; - - $wards = Ward::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $wards = ['' => '- select -'] + $wards; - - if (!is_null($ward_id)) { - $ward_stock_records = WardStock::where(['ward_id' => $ward_id, 'item_type' => 1])->get(); - } - - return view('ward_management::wards.drugs_stock_sheet', compact('ward_stock_records', 'wards', 'ward_id')); - } - - public function update_drugs_stock_sheet(Request $request) - { - $ward_id = $request->ward_id; - $batch_drugs_ids_array = $request->batch_drug_id; - $batch_watcher_ids_array = $request->item_batch_watcher_id; - $batch_numbers_array = $request->batch_number; - $batch_quantity_array = $request->batch_quantity; - $batch_unit_cost_array = $request->batch_unit_cost; - $batch_expiry_dates_array = $request->batch_expiry_date; - $batch_db_record_ids_array = $request->item_batch_watcher_id; - - $stock_adjustment_chart_of_account = ChartOfAccount::where('slug', 'stock_adjustment')->first(); - $affected_account_id = $stock_adjustment_chart_of_account->id; - - - for ($i = 0; $i < count($batch_drugs_ids_array); $i++) { - - $max_stock_count_identifier = DB::table('ward_stock_reconciliations')->max('stock_count_identifier'); - - //enforce double entry per batch - account_for_batch_reconciliations_difference($item_type = 1, $batch_drugs_ids_array[$i], $affected_account_id, $batch_numbers_array[$i], $batch_quantity_array[$i], Carbon::now()->toDateString(), "ward", $ward_id); - - reconcile_batches($item_type = 1, $batch_drugs_ids_array[$i], $batch_numbers_array[$i], $batch_quantity_array[$i], $batch_expiry_dates_array[$i], "ward", $batch_unit_cost_array[$i] ?? 0, $batch_db_record_ids_array[$i] ?? 0, $ward_id); - - $physical_stock = new WardStockReconciliation; - $physical_stock->item_type = 1; - $physical_stock->item_id = $batch_drugs_ids_array[$i]; - $physical_stock->physical_stock = $batch_quantity_array[$i]; - $physical_stock->completion_status = 1; - $physical_stock->affected_account_id = $affected_account_id; - $physical_stock->general_comment = $request->general_comment; - $physical_stock->created_by = Auth::id(); - $physical_stock->save(); - //add the stock_count_identifier of the newly counted stock - $physical_stock_record_to_update = WardStockReconciliation::find($physical_stock->id); - $physical_stock_record_to_update->stock_count_identifier = $max_stock_count_identifier + 1; //increase ID by 1 for new - $physical_stock_record_to_update->update(); - - - - $drug_ward_stock = WardStock::where(['ward_id' => $ward_id, 'item_type' => 1, 'item_id' => $batch_drugs_ids_array[$i]])->first(); - $drug_ward_stock->ward_item_stock = $batch_quantity_array[$i]; - $drug_ward_stock->update(); - } - - flash("Ward stock has been updated")->success(); - - return redirect('ward_drugs_stock_sheet'); - } - - public function sundries_stock_sheet(Request $request) - { - $ward_id = null; - $ward_stock_records = []; - $ward_id = $request->ward_id; - - $wards = Ward::orderBy('name', 'asc')->pluck('name', 'id')->toArray(); - $wards = ['' => '- select -'] + $wards; - - if (!is_null($ward_id)) { - $ward_stock_records = WardStock::where(['ward_id' => $ward_id, 'item_type' => 2])->get(); - } - - return view('ward_management::wards.sundries_stock_sheet', compact('ward_stock_records', 'wards', 'ward_id')); - } - - public function update_sundries_stock_sheet(Request $request) - { - $ward_id = $request->ward_id; - $sundry_ids_array = $request->sundry_id; - $quantity_array = $request->quantity; - - for ($i = 0; $i < count($sundry_ids_array); $i++) { - $sundry_ward_stock = WardStock::where(['ward_id' => $ward_id, 'item_type' => 2, 'item_id' => $sundry_ids_array[$i]])->first(); - $sundry_ward_stock->ward_item_stock = $quantity_array[$i]; - $sundry_ward_stock->update(); - } - - return redirect('ward_sundries_stock_sheet'); - } - - public function home() - { - return view('ward_management::wards.home'); - } -} diff --git a/docker/statistics/Modules/WardManagement/Http/Controllers/WardItemRequestController.php b/docker/statistics/Modules/WardManagement/Http/Controllers/WardItemRequestController.php deleted file mode 100755 index c46431d3..00000000 --- a/docker/statistics/Modules/WardManagement/Http/Controllers/WardItemRequestController.php +++ /dev/null @@ -1,436 +0,0 @@ -userService = $userService; - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index() - { - // - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - // - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - // - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) - { - // - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - // - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - // - } - - /* incoming ward drug requests */ - public function incoming_ward_requests(Request $request) { - $search_complete = null; - $ward_item_requests = null; - $start_date = null; $end_date = null; - if (!is_null($request->item_type)) { - $search_complete = 1; - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - - if ($request->ward_id) { - $ward_item_requests = WardItemRequest::where('item_type', $request->item_type)->where('ward_id',$request->ward_id)->whereBetween('created_at', [$start_date, $end_date])->orderBy('created_at','desc') - ->get(); - } else { - $ward_item_requests = WardItemRequest::where('item_type', $request->item_type) - ->whereBetween('created_at', [$start_date, $end_date])->orderBy('created_at','desc') - ->get(); - } - } else { - //show drug requests of last 24 hours - $last_24_hours = Carbon::now()->subDay()->toDateTimeString(); - $ward_item_requests = WardItemRequest::where('created_at', '>=', $last_24_hours)->orderBy('created_at','desc')->get(); - } - - $wards = DB::table('wards')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $wards = ['' => '- select -'] + $wards; - - return view('ward_management::ward_item_requests.incoming_ward_requests',compact('wards','search_complete', 'ward_item_requests', 'start_date', 'end_date','wards')); - } - - /* ward request form */ - public function ward_item_requests(Request $request) { - $item_type = null; $ward_id = null; $drugs_requested = null; $general_items_requested = null; $sundries_requested = null; - $drugs = DB::table('drugs')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id'); - $sundries = DB::table('sundries')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id'); - $general_items = DB::table('general_items')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id'); - $wards = DB::table('wards')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $wards = ['' => '- select -'] + $wards; - $all_ward_item_requests = WardItemRequest::whereNull('dispensation_status')->paginate(500); - - if (!is_null($request->item_type)) { - $ward_id = $request->ward; - $item_type = $request->item_type; - - if($item_type == "1"){ - $drugs_requested = $request->drugs_requested; - } else if($item_type == "2"){ - $sundries_requested = $request->sundries_requested; - } else { - $general_items_requested = $request->general_items_requested; - } - } - - return view('ward_management::ward_item_requests.ward_item_request',compact('drugs','wards','sundries', 'general_items', 'item_type','ward_id', - 'drugs_requested', 'sundries_requested', 'general_items_requested', 'all_ward_item_requests')); - } - - /* store ward drug requests */ - public function store_ward_item_requests(Request $request) { - if (in_array(null, $request->quantity_requested)) { - flash("Please fill in the required fields")->error(); - return back()->withInput(); - } - - $ward_drug_request = new WardItemRequest; - $ward_drug_request->ward_id = $request->ward_id; - $ward_drug_request->item_type = $request->item_type; - $ward_drug_request->item_ids = implode(",", $request->item_id); - $ward_drug_request->item_quantities = implode(",", $request->quantity_requested); - $ward_drug_request->balance_on_ward_during_request = implode(",", $request->balance_on_ward_during_request); - $ward_drug_request->balance_returned = implode(",", $request->balance_returned); - $ward_drug_request->item_unit_cost = implode(",", $request->item_unit_cost); - $ward_drug_request->order_comment = $request->order_comment; - $ward_drug_request->created_by = Auth::id(); - $ward_drug_request->save(); - - flash('Ward request has been successfully submitted')->success(); - return redirect('ward_item_requests'); - } - - /* show details of a ward item request */ - public function ward_item_request_details(Request $request) - { - $ward_request_id = $request->ward_item_request_id; - $ward_request_details = WardItemRequest::find($ward_request_id); - $staff_array = $this->userService->pluckUserFullName(); - - $batches_array = []; - - return view('ward_management::ward_item_requests.ward_item_request_details',compact('ward_request_details','staff_array', 'batches_array')); - } - - /* store a ward item request action */ - public function store_ward_item_request_details_action(Request $request) - { - $ward_request_id = $request->ward_request_id; - $approved_button = $request->approve; - $dispensed_button = $request->dispense; - - $ward_request_record = WardItemRequest::find($ward_request_id); - $ward_id = $ward_request_record->ward_id; - - $item_ids_array = $request->item_ids; - $dispensed_batches_array = $request->dispensed_from_batch; - $ward_request_record->item_quantities_approved = implode(",", $request->quantity_approved); - $ward_request_record->item_ids_issued_out = implode(",", $request->item_ids); - $ward_request_record->quantity_issued_out = implode(",", $request->quantity_issued_out); - if (isset($approved_button)) { - $ward_request_record->comment = $request->comment; - $ward_request_record->approved_status = 1; - $ward_request_record->approved_by = Auth::id(); - $ward_request_record->approval_date = Carbon::now(); - $ward_request_record->update(); - flash('ward request has been approved')->success(); - return redirect('incoming_ward_requests'); - } elseif (isset($dispensed_button)) { - $ward_request_record->received_by = $request->received_by; - $ward_request_record->dispensation_status = 1; - $ward_request_record->dispensed_by = Auth::id(); - $ward_request_record->dispensation_date = Carbon::parse($request->dispensation_date)->toDateTimeString(); - $received_from_stores_or_pharmacy = $request->received_from; - $balance_returned_array = $request->balance_returned; - $item_quantities_issued_out_array = $request->quantity_issued_out; - - // 1 - means received from pharmacy, 2 means received from stores so do the respective stock reduction - if ($received_from_stores_or_pharmacy == 1) { - $ward_request_record->issued_from = "pharmacy"; - if ($ward_request_record->item_type == 1) { - for ($i=0; $i < count($item_ids_array) ; $i++) { - $drug = Drug::find($item_ids_array[$i]); - - if ($drug && !is_null($dispensed_batches_array[$i])) { - $stock_before_making_necessary_calculations = $drug->pharmacy_stock; - $balance_returned = empty($balance_returned_array[$i]) ? 0 : $balance_returned_array[$i]; - $quantity_approved = empty($item_quantities_issued_out_array[$i]) ? 0 : $item_quantities_issued_out_array[$i]; - $drug->pharmacy_stock = $stock_before_making_necessary_calculations + (int)$balance_returned - (int)$quantity_approved; - $drug->update(); - - // return the drugs to pharmacy - reduce_ward_stock_with_consumed_quantity($item_ids_array[$i], $balance_returned, 1, $ward_id, null, null, null); - update_ward_stock($ward_id, 1, $item_ids_array[$i], $item_quantities_issued_out_array[$i]); - move_batch_item_from_pharmacy_to_ward($item_type = 1, $item_ids_array[$i], $dispensed_batches_array[$i], $item_quantities_issued_out_array[$i], $ward_id); - } - } - } elseif ($ward_request_record->item_type == 2) { - for ($i=0; $i < count($item_ids_array) ; $i++) { - $sundry = Sundry::find($item_ids_array[$i]); - - if ($sundry && !is_null($dispensed_batches_array[$i])) { - $stock_before_making_necessary_calculations = $sundry->pharmacy_stock; - $balance_returned = empty($balance_returned_array[$i]) ? 0 : $balance_returned_array[$i]; - $quantity_approved = empty($item_quantities_issued_out_array[$i]) ? 0 : $item_quantities_issued_out_array[$i]; - $sundry->pharmacy_stock = $stock_before_making_necessary_calculations + (int)$balance_returned - (int)$quantity_approved; - $sundry->update(); - - // return the drugs to pharmacy - reduce_ward_stock_with_consumed_quantity($item_ids_array[$i], $balance_returned, 2, $ward_id, null, null, null); - update_ward_stock($ward_id, 2, $item_ids_array[$i], $item_quantities_issued_out_array[$i]); - move_batch_item_from_pharmacy_to_ward($item_type = 2, $item_ids_array[$i], $dispensed_batches_array[$i], $item_quantities_issued_out_array[$i], $ward_id); - } - } - } elseif ($ward_request_record->item_type == 3) { - for ($i=0; $i < count($item_ids_array) ; $i++) { - $general_item = GeneralItem::find($item_ids_array[$i]); - - if ($general_item && !is_null($dispensed_batches_array[$i])) { - $stock_before_making_necessary_calculations = $general_item->pharmacy_stock; - $balance_returned = empty($balance_returned_array[$i]) ? 0 : $balance_returned_array[$i]; - $quantity_approved = empty($item_quantities_issued_out_array[$i]) ? 0 : $item_quantities_issued_out_array[$i]; - $general_item->pharmacy_stock = $stock_before_making_necessary_calculations + (int)$balance_returned - (int)$quantity_approved; - $general_item->update(); - - // return the drugs to pharmacy - reduce_ward_stock_with_consumed_quantity($item_ids_array[$i], $balance_returned, 3, $ward_id, null, null, null); - update_ward_stock($ward_id, 3, $item_ids_array[$i], $item_quantities_issued_out_array[$i]); - move_batch_item_from_pharmacy_to_ward($item_type = 6, $item_ids_array[$i], $dispensed_batches_array[$i], $item_quantities_issued_out_array[$i], $ward_id); - } - } - } - } elseif ($received_from_stores_or_pharmacy == 2) { - $ward_request_record->issued_from = "store"; - if ($ward_request_record->item_type == 1) { - for ($i=0; $i < count($item_ids_array) ; $i++) { - $drug = Drug::withTrashed()->find($item_ids_array[$i]); - - if ($drug && !is_null($dispensed_batches_array[$i])) { - $stock_before_making_necessary_calculations = $drug->store_stock; - $balance_returned = empty($balance_returned_array[$i]) ? 0 : $balance_returned_array[$i]; - $quantity_approved = empty($item_quantities_issued_out_array[$i]) ? 0 : $item_quantities_issued_out_array[$i]; - $drug->store_stock = $stock_before_making_necessary_calculations + (int)$balance_returned - (int)$quantity_approved; - $drug->update(); - - // return the drugs to pharmacy - reduce_ward_stock_with_consumed_quantity($item_ids_array[$i], $balance_returned, 1, $ward_id, null, null, null); - update_ward_stock($ward_id, 1, $item_ids_array[$i], $item_quantities_issued_out_array[$i]); - move_batch_item_from_store_to_ward($item_type = 1, $item_ids_array[$i], $dispensed_batches_array[$i], $item_quantities_issued_out_array[$i], $ward_id, $ward_request_id); - - //cater for drug batch processing - /* $batch_number = null; - if (batch_tracking_method() == "manual") { - $batch_number = $dispensed_batches_array[$i] ?? null; - } - $item_batch_calculations = batch_calculations_for_item_based_on_fifo($item_ids_array[$i], $quantity_approved, $batch_number, $item_type = 1); */ - } - } - } elseif ($ward_request_record->item_type == 2) { - for ($i=0; $i < count($item_ids_array) ; $i++) { - $sundry = Sundry::withTrashed()->find($item_ids_array[$i]); - - if ($sundry && !is_null($dispensed_batches_array[$i])) { - $stock_before_making_necessary_calculations = $sundry->store_stock; - $balance_returned = empty($balance_returned_array[$i]) ? 0 : $balance_returned_array[$i]; - $quantity_approved = empty($item_quantities_issued_out_array[$i]) ? 0 : $item_quantities_issued_out_array[$i]; - $sundry->store_stock = $stock_before_making_necessary_calculations + (int)$balance_returned - (int)$quantity_approved; - $sundry->update(); - - // return the drugs to pharmacy - reduce_ward_stock_with_consumed_quantity($item_ids_array[$i], $balance_returned, 2, $ward_id, null, null, null); - update_ward_stock($ward_id, 2, $item_ids_array[$i], $item_quantities_issued_out_array[$i]); - move_batch_item_from_store_to_ward($item_type = 2, $item_ids_array[$i], $dispensed_batches_array[$i], $item_quantities_issued_out_array[$i], $ward_id, $ward_request_id); - - //cater for sundries batch processing - /* $batch_number = null; - if (batch_tracking_method() == "manual") { - $batch_number = $dispensed_batches_array[$i] ?? null; - } - $item_batch_calculations = batch_calculations_for_item_based_on_fifo($item_ids_array[$i], $quantity_approved, $batch_number, $item_type = 2); */ - } - } - } elseif ($ward_request_record->item_type == 3) { - for ($i=0; $i < count($item_ids_array) ; $i++) { - $general_item = GeneralItem::find($item_ids_array[$i]); - - if ($general_item && !is_null($dispensed_batches_array[$i])) { - $stock_before_making_necessary_calculations = $general_item->store_stock; - $balance_returned = empty($balance_returned_array[$i]) ? 0 : $balance_returned_array[$i]; - $quantity_approved = empty($item_quantities_issued_out_array[$i]) ? 0 : $item_quantities_issued_out_array[$i]; - $general_item->store_stock = $stock_before_making_necessary_calculations + (int)$balance_returned - (int)$quantity_approved; - $general_item->update(); - - // return the drugs to pharmacy - reduce_ward_stock_with_consumed_quantity($item_ids_array[$i], $balance_returned, 3, $ward_id, null, null, null); - update_ward_stock($ward_id, 3, $item_ids_array[$i], $item_quantities_issued_out_array[$i]); - move_batch_item_from_store_to_ward($item_type = 6, $item_ids_array[$i], $dispensed_batches_array[$i], $item_quantities_issued_out_array[$i], $ward_id, $ward_request_id); - } - } - } - } - $ward_request_record->update(); - - flash('Items for '.get_name($ward_request_record->ward_id, "id", "name", "wards").' have been successfully dispensed')->success(); - return view('ward_management::ward_item_requests.print_ward_item_request_receipt',compact('ward_request_record')); - } - } - - public function show_ward_item_request_details_action(Request $request) - { - $ward_request_id = $request->ward_request_id; - $ward_request_details = WardItemRequest::find($ward_request_id); - return view('ward_management::ward_item_requests.ward_request_show',compact('ward_request_details')); - } - - public function ward_item_request_edit(Request $request) - { - $ward_request_id = $request->ward_request_id; - $ward_request_details = WardItemRequest::find($ward_request_id); - $search_status = false; - return view('ward_management::ward_item_requests.ward_item_request_edit',compact('ward_request_details', 'search_status')); - } - - public function edit_ward_item_request_search(Request $request) - { - $ward_request_id = $request->ward_request_id; - $ward_request_details = WardItemRequest::find($ward_request_id); - $search_status = true; - $selected_item_ids_array = $request->items_ids; - - return view('ward_management::ward_item_requests.ward_item_request_edit',compact('ward_request_details', 'search_status', 'selected_item_ids_array')); - } - - public function update_ward_item_requests(Request $request) - { - $ward_request_id = $request->ward_request_id; - $ward_item_request = WardItemRequest::find($ward_request_id); - $ward_item_request->item_ids = implode(",", $request->item_ids); - $ward_item_request->item_quantities = implode(",", $request->item_quantities); - $ward_item_request->balance_on_ward_during_request = implode(",", $request->balance_on_ward_during_request); - $ward_item_request->balance_returned = implode(",", $request->balance_returned); - $ward_item_request->item_unit_cost = implode(",", $request->item_unit_cost); - $ward_item_request->order_comment = $request->order_comment; - $ward_item_request->created_by = Auth::id(); - $ward_item_request->save(); - - flash('Ward request has been successfully submitted')->success(); - return redirect('ward_item_requests'); - } - - public function ward_item_request_delete(Request $request) - { - $ward_request_id = $request->ward_request_id; - $ward_item_request = WardItemRequest::find($ward_request_id); - $ward_item_request->delete(); - - flash('Ward request has been successfully deleted')->error(); - return redirect('ward_item_requests'); - } - - public function print_ward_item_request_details($id) { - $ward_request_record = WardItemRequest::find($id); - - return view('ward_management::ward_item_requests.print_ward_item_request_receipt',compact('ward_request_record')); - } - - public function print_ward_item_request_details_pdf($id) { - $ward_request_record = WardItemRequest::find($id); - $hospital_information = HospitalInformation::find(1); - - $data = [ - 'ward_request_record' => $ward_request_record, - 'hospitalInfo' => $hospital_information - ]; - - $print_footer = (!is_null($hospital_information->print_footer)) ? '     ' . $hospital_information->print_footer . '' : ''; - - $pdf = SnappyPDF::loadView("ward_management::ward_item_requests/print_ward_item_request_details_pdf", $data) - ->setOrientation('portrait') - ->setPaper('a4') - ->setOption('margin-bottom', 5) - ->setOption('margin-top', 5) - ->setOption('footer-html', '© ' . date('Y') . ' Stre@mline' . $print_footer); - - return $pdf->inline('Ward Item Request Details' . date(" d-m-y h:ia") . '.pdf'); - } -} diff --git a/docker/statistics/Modules/WardManagement/Http/Controllers/WardsConsumptionController.php b/docker/statistics/Modules/WardManagement/Http/Controllers/WardsConsumptionController.php deleted file mode 100755 index c7f98433..00000000 --- a/docker/statistics/Modules/WardManagement/Http/Controllers/WardsConsumptionController.php +++ /dev/null @@ -1,623 +0,0 @@ -report_by; - $ward_id = $request->ward_details_for; - $drug_id = $request->drug_details_for; - $start_date = $request->start_date; - $end_date = $request->end_date; - $ward_treatment_dispensations = []; - $ward_sundry_dispensations = []; - $sundries_issued_to_ward = []; - $general_items_issued_to_ward = []; - $sundry_id = null; - $general_items_id = null; - $ward_item_request_records = []; - $general_items_item_request_records = []; - - if($request->search_by_details == 0){ - // last 24 hours - $last_day = Carbon::now()->subDay(); - - array_push($filters, ['created_at', '>', $last_day]); - } elseif($request->search_by_details == 1){ - // custom date - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date]); - array_push($filters, ['created_at', '<', $end_date]); - } elseif($request->search_by_details == 2){ - // custom date range - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - - array_push($filters, ['created_at', '>', $start_date]); - array_push($filters, ['created_at', '<', $end_date]); - } - - if ($request->report_by == 3) { - $sundry_id = $request->sundries_details_for; - $ward_item_request_records = WardItemRequest::where(['dispensation_status' => 1, 'item_type' => 2])->where($filters)->get(); - }else if ($request->report_by == 4) { - $sundry_id = $request->sundries_details_for; - $ward_id = $request->ward_details_for; - //$ward_item_request_records = WardItemRequest::where(['dispensation_status' => 1, 'item_type' => 2, 'ward_id' => $ward_id])->where($filters)->get(); - $ward_sundry_dispensations = WardSundryDispensation::where('ward_id', $ward_id)->where('sundry_id', $sundry_id)->where($filters)->get(); - } else if ($request->report_by == 6) { - $general_items_id = $request->general_items_details_for; - $ward_id = $request->ward_details_for; - //$ward_item_request_records = WardItemRequest::where(['dispensation_status' => 1, 'item_type' => 2, 'ward_id' => $ward_id])->where($filters)->get(); - $ward_general_items_dispensations = WardSundryDispensation::where('ward_id', $ward_id)->where('general_items_id', $general_items_id)->where($filters)->get(); - } - else{ - $ward_treatment_dispensations = WardTreatmentDispensation::where('ward_id', $ward_id)->where('drug_id', $drug_id)->where($filters)->get(); - } - - return view('ward_management::wards_consumption.wards_consumption_details',compact('start_date','end_date','ward_id','drug_id','ward_treatment_dispensations','sundries_issued_to_ward', 'sundry_id', 'ward_item_request_records','report_by', 'ward_sundry_dispensations')); - } - - public function ward_consumption_report(Request $request) { - $search_complete = true; - $consumption_filters = $ward_item_filters = []; - $selected_drug_id = 0; - $selected_sundry_id = 0; - $selected_general_items_id = 0; - $start_date = null; $end_date = null; - $report_by = $request->report_by; - $ward_id = $request->ward_id; - $search_text = ""; - - $wards = DB::table('wards')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $wards = ['' => '- select -'] + $wards; - - $drugs = DB::table('drugs')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $drugs = ['' => '- select -'] + $drugs; - - $sundries = DB::table('sundries')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $sundries = ['' => '- select -'] + $sundries; - - $general_items = DB::table('general_items')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $general_items = ['' => '- select -'] + $general_items; - - if($request->search_by == 0){ - // last 24 hours - $last_day = Carbon::now()->subDay(); - array_push($consumption_filters, ['created_at', '>', $last_day]); - array_push($ward_item_filters, ['dispensation_date', '>', $last_day]); - } elseif($request->search_by == 1){ - // custom date - $start_date = Carbon::parse($request->reg_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->reg_date)->endOfDay()->toDateTimeString(); - - array_push($consumption_filters, ['created_at', '>', $start_date]); - array_push($consumption_filters, ['created_at', '<', $end_date]); - array_push($ward_item_filters, ['dispensation_date', '>', $start_date]); - array_push($ward_item_filters, ['dispensation_date', '<', $end_date]); - } elseif($request->search_by == 2){ - // custom date range - $start_date = Carbon::parse($request->start_date)->startOfDay()->toDateTimeString(); - $end_date = Carbon::parse($request->end_date)->endOfDay()->toDateTimeString(); - - array_push($consumption_filters, ['created_at', '>', $start_date]); - array_push($consumption_filters, ['created_at', '<', $end_date]); - array_push($ward_item_filters, ['dispensation_date', '>', $start_date]); - array_push($ward_item_filters, ['dispensation_date', '<', $end_date]); - } - - //loop through the collections and from an array - $patient_consumptions = $item_ids = $array_of_wards_to_loop = $patient_ids = []; - $item_consumption = $item_requests = []; - - if ($request->report_by == 1) { - # report by drugs consumption per ward - //$ward_prescription_results = WardTreatment::where('ward_id', $ward_id)->where($consumption_filters)->get(); - $ward_treatment_dispensation_results = WardTreatmentDispensation::where('ward_id', $ward_id)->where($consumption_filters)->get(); - $ward_item_requests_results = WardItemRequest::where(['dispensation_status' => 1, 'item_type' => 1, 'ward_id' => $ward_id])->where($ward_item_filters)->get(); - $ward_dispensing_results = WardDispensing::where(['ward_id'=>$ward_id])->where($consumption_filters)->get(); - $results = Requisition::where($consumption_filters)->get(); - - foreach ($ward_dispensing_results as $ward_dispensing) { - $issued_item_ids = explode(",", $ward_dispensing->drug_id); - $issued_item_quantities = explode(",", $ward_dispensing->quantity_dispensed); - for ($i=0; $i < count($issued_item_ids) ; $i++) { - if(!in_array($issued_item_ids[$i], $item_ids)) {$item_ids[] = $issued_item_ids[$i];} - - if (isset($item_consumption[$issued_item_ids[$i]])) { - $item_consumption[$issued_item_ids[$i]] += (isset($issued_item_quantities[$i]) && is_numeric($issued_item_quantities[$i])) ? $issued_item_quantities[$i] : 0; - } else { - $item_consumption[$issued_item_ids[$i]] = (isset($issued_item_quantities[$i]) && is_numeric($issued_item_quantities[$i])) ? $issued_item_quantities[$i] : 0; - } - } - } - - foreach ($ward_treatment_dispensation_results as $dispensation_record) { - if(!in_array($dispensation_record->drug_id, $item_ids)) $item_ids[] = $dispensation_record->drug_id; - $patient_ids[$dispensation_record->drug_id][] = $dispensation_record->patient_id; - $episode_ids[] = ['episode_id'=>$dispensation_record->episode_id, 'patient_id'=>$dispensation_record->patient_id, 'drug_id'=>$dispensation_record->drug_id]; - $patient_consumptions[$dispensation_record->drug_id] = $dispensation_record->quantity_given + ($patient_consumptions[$dispensation_record->drug_id] ?? 0); - } - - foreach ($ward_item_requests_results as $ward_item_request) { - $issued_item_ids = explode(",", $ward_item_request->item_ids_issued_out); - $issued_item_quantities = explode(",", $ward_item_request->quantity_issued_out); - for ($i=0; $i < count($issued_item_ids) ; $i++) { - if(!in_array($issued_item_ids[$i], $item_ids)) {$item_ids[] = $issued_item_ids[$i];} - if (isset($item_consumption[$issued_item_ids[$i]])) { - $item_consumption[$issued_item_ids[$i]] += (isset($issued_item_quantities[$i]) && is_numeric($issued_item_quantities[$i])) ? $issued_item_quantities[$i] : 0; - } else { - $item_consumption[$issued_item_ids[$i]] = (isset($issued_item_quantities[$i]) && is_numeric($issued_item_quantities[$i])) ? $issued_item_quantities[$i] : 0; - } - } - - $requested_item_ids = explode(",", $ward_item_request->item_ids); - $requested_item_quantities = explode(",", $ward_item_request->item_quantities); - for ($i=0; $i < count($requested_item_ids) ; $i++) { - if(!in_array($requested_item_ids[$i], $item_ids)) {$item_ids[] = $requested_item_ids[$i];} - if (isset($item_requests[$requested_item_ids[$i]])) { - $item_requests[$requested_item_ids[$i]] += (isset($requested_item_quantities[$i]) && is_numeric($requested_item_quantities[$i])) ? $requested_item_quantities[$i] : 0; - } else { - $item_requests[$requested_item_ids[$i]] = (isset($requested_item_quantities[$i]) && is_numeric($requested_item_quantities[$i])) ? $requested_item_quantities[$i] : 0; - } - } - } - - $search_text = "Results for " . ($wards[$ward_id] ?? 'N/A') . " from " . streamline_date($start_date) . " to " . streamline_date($end_date); - - if ($ward_id == "pharmacy") { - if (count($results) > 0) { - foreach ($results as $pharmacy_record) { - $issued_item_ids = explode(",", $pharmacy_record->item_ids_issued_out); - $issued_item_quantities = explode(",", $pharmacy_record->quantity_issued); - - for ($i=0; $i < count($issued_item_ids) ; $i++) { - if(!in_array($issued_item_ids[$i], $item_ids)) {$item_ids[] = $issued_item_ids[$i];} - if (isset($item_consumption[$issued_item_ids[$i]])) { - $item_consumption[$issued_item_ids[$i]] += (isset($issued_item_quantities[$i]) && is_numeric($issued_item_quantities[$i])) ? $issued_item_quantities[$i] : 0; - } else { - $item_consumption[$issued_item_ids[$i]] = (isset($issued_item_quantities[$i]) && is_numeric($issued_item_quantities[$i])) ? $issued_item_quantities[$i] : 0; - } - } - - $requested_item_ids = explode(",", $pharmacy_record->drug_id); - $requested_item_quantities = explode(",", $pharmacy_record->quantity_requested); - for ($i=0; $i < count($requested_item_ids) ; $i++) { - if(!in_array($requested_item_ids[$i], $item_ids)) {$item_ids[] = $requested_item_ids[$i];} - if (isset($item_requests[$requested_item_ids[$i]])) { - $item_requests[$requested_item_ids[$i]] += (isset($requested_item_quantities[$i]) && is_numeric($requested_item_quantities[$i])) ? $requested_item_quantities[$i] : 0; - } else { - $item_requests[$requested_item_ids[$i]] = (isset($requested_item_quantities[$i]) && is_numeric($requested_item_quantities[$i])) ? $requested_item_quantities[$i] : 0; - } - } - } - } - $search_text = "Results for Pharmacy from " . streamline_date($start_date) . " to " . streamline_date($end_date); - } - } elseif ($request->report_by == 2) { - # report for drug - $selected_drug_id = $request->drug_id; - $ward_treatment_dispensation_results = WardTreatmentDispensation::where('ward_id', 2)->where($consumption_filters)->get(); - $ward_item_requests_results = WardItemRequest::where(['dispensation_status' => 1, 'item_type' => 1])->where($ward_item_filters)->get(); - $ward_dispensing_results = WardDispensing::where($consumption_filters)->whereRaw('FIND_IN_SET(' . $selected_drug_id . ',drug_id)')->get(); - $results = DB::table('requisitions')->select('*')->whereNull('deleted_at')->where('quotation_type_id', 1)->whereRaw('FIND_IN_SET(' . $selected_drug_id . ',drug_id)')->whereBetween('created_at', [$start_date, $end_date])->get(); - - if (count($results) > 0) { - foreach ($results as $pharmacy_record) { - $issued_item_ids = explode(",", $pharmacy_record->item_ids_issued_out); - $issued_item_quantities = explode(",", $pharmacy_record->quantity_issued); - for ($i=0; $i < count($issued_item_ids) ; $i++) { - if ($selected_drug_id == $issued_item_ids[$i]) { - if(!in_array("pharmacy", $array_of_wards_to_loop)) {$array_of_wards_to_loop[] = "pharmacy";} - if (isset($item_consumption["pharmacy"])) { - $item_consumption["pharmacy"] += (isset($issued_item_quantities[$i]) && is_numeric($issued_item_quantities[$i])) ? $issued_item_quantities[$i] : 0; - } else { - $item_consumption["pharmacy"] = (isset($issued_item_quantities[$i]) && is_numeric($issued_item_quantities[$i])) ? $issued_item_quantities[$i] : 0; - } - } - } - - //requested ids loop - $req_item_ids = explode(",", $pharmacy_record->drug_id); - $req_item_quantities = explode(",", $pharmacy_record->quantity_requested); - for ($i=0; $i < count($req_item_ids) ; $i++) { - if ($selected_drug_id == $req_item_ids[$i]) { - if(!in_array("pharmacy", $array_of_wards_to_loop)) {$array_of_wards_to_loop[] = "pharmacy";} - if (isset($item_requests["pharmacy"])) { - $item_requests["pharmacy"] += (isset($req_item_quantities[$i]) && is_numeric($req_item_quantities[$i])) ? $req_item_quantities[$i] : 0; - } else { - $item_requests["pharmacy"] = (isset($req_item_quantities[$i]) && is_numeric($req_item_quantities[$i])) ? $req_item_quantities[$i] : 0; - } - } - } - } - } - - if (count($ward_dispensing_results) > 0) { - foreach ($ward_dispensing_results as $ward_dispensing) { - $issued_item_ids = explode(",", $ward_dispensing->drug_id); - $issued_item_quantities = explode(",", $ward_dispensing->quantity_dispensed); - for ($i=0; $i < count($issued_item_ids) ; $i++) { - if ($selected_drug_id == $issued_item_ids[$i]) { - if(!in_array($ward_dispensing->ward_id, $array_of_wards_to_loop)) {$array_of_wards_to_loop[] = $ward_dispensing->ward_id;} - if (isset($item_consumption[$ward_dispensing->ward_id])) { - $item_consumption[$ward_dispensing->ward_id] += is_numeric($issued_item_quantities[$i]) ? $issued_item_quantities[$i] : 0; - } else { - $item_consumption[$ward_dispensing->ward_id] = is_numeric($issued_item_quantities[$i]) ? $issued_item_quantities[$i] : 0; - } - } - } - } - } - - if (count($ward_treatment_dispensation_results) > 0) { - foreach ($ward_treatment_dispensation_results as $dispensation_record) { - if ($selected_drug_id == $dispensation_record->drug_id) { - if(!in_array($dispensation_record->ward_id, $array_of_wards_to_loop)) {$array_of_wards_to_loop[] = $dispensation_record->ward_id;} - - $patient_consumptions[$dispensation_record->ward_id] = $dispensation_record->quantity_given + ($patient_consumptions[$dispensation_record->ward_id] ?? 0); - } - $patient_ids[$dispensation_record->drug_id][] = $dispensation_record->patient_id; - } - } - - if (count($ward_item_requests_results) > 0) { - foreach ($ward_item_requests_results as $ward_item_request) { - //issued out loop - $issued_item_ids = explode(",", $ward_item_request->item_ids_issued_out); - $issued_item_quantities = explode(",", $ward_item_request->quantity_issued_out); - for ($i=0; $i < count($issued_item_ids) ; $i++) { - if ($selected_drug_id == $issued_item_ids[$i]) { - if(!in_array($ward_item_request->ward_id, $array_of_wards_to_loop)) {$array_of_wards_to_loop[] = $ward_item_request->ward_id;} - if (isset($item_consumption[$ward_item_request->ward_id])) { - $item_consumption[$ward_item_request->ward_id] += is_numeric($issued_item_quantities[$i]) ? $issued_item_quantities[$i] : 0; - } else { - $item_consumption[$ward_item_request->ward_id] = is_numeric($issued_item_quantities[$i]) ? $issued_item_quantities[$i] : 0; - } - } - } - - //requested ids loop - $req_item_ids = explode(",", $ward_item_request->item_ids); - $req_item_quantities = explode(",", $ward_item_request->item_quantities); - for ($i=0; $i < count($req_item_ids) ; $i++) { - if ($selected_drug_id == $req_item_ids[$i]) { - if(!in_array($ward_item_request->ward_id, $array_of_wards_to_loop)) {$array_of_wards_to_loop[] = $ward_item_request->ward_id;} - if (isset($item_requests[$ward_item_request->ward_id])) { - $item_requests[$ward_item_request->ward_id] += (isset($req_item_quantities[$i]) && is_numeric($req_item_quantities[$i])) ? $req_item_quantities[$i] : 0; - } else { - $item_requests[$ward_item_request->ward_id] = (isset($req_item_quantities[$i]) && is_numeric($req_item_quantities[$i])) ? $req_item_quantities[$i] : 0; - } - } - } - } - } - - $opd_dispensations = PatientDispensing::where($consumption_filters)->get(); - if (count($opd_dispensations) > 0) { - foreach ($opd_dispensations as $opd_record) { - $opd_drugs_array = explode(",", $opd_record->drugs); - $opd_quantities_array = explode(",", $opd_record->quantity_dispensed); - for ($i=0; $i < count($opd_drugs_array); $i++) { - if ($selected_drug_id == $opd_drugs_array[$i]) { - if(!in_array("pharmacy", $array_of_wards_to_loop)) {$array_of_wards_to_loop[] = "pharmacy";} - - $patient_consumptions["pharmacy"] = ($opd_quantities_array[$i] ?? 0) + ($patient_consumptions["pharmacy"] ?? 0); - } - } - } - } - - $search_text = "Results for " . ($drugs[$selected_drug_id] ?? 'N/A') . " from " . streamline_date($start_date) . " to " . streamline_date($end_date); - } elseif ($request->report_by == 3) { - # report for sundry - $selected_sundry_id = $request->sundry_id; - $ward_item_requests_results = WardItemRequest::where(['dispensation_status' => 1, 'item_type' => 2])->where($ward_item_filters)->get(); - $ward_sundry_dispensation_results = WardSundryDispensation::where($consumption_filters)->get(); - - if (count($ward_item_requests_results) > 0) { - foreach ($ward_item_requests_results as $ward_item_request) { - $issued_item_ids = explode(",", $ward_item_request->item_ids_issued_out); - $issued_item_quantities = explode(",", $ward_item_request->quantity_issued_out); - for ($i=0; $i < count($issued_item_ids) ; $i++) { - if ($selected_sundry_id == $issued_item_ids[$i]) { - if(!in_array($ward_item_request->ward_id, $array_of_wards_to_loop)) {$array_of_wards_to_loop[] = $ward_item_request->ward_id;} - if (isset($item_consumption[$ward_item_request->ward_id])) { - $item_consumption[$ward_item_request->ward_id] += is_numeric($issued_item_quantities[$i]) ? $issued_item_quantities[$i] : 0; - } else { - $item_consumption[$ward_item_request->ward_id] = is_numeric($issued_item_quantities[$i]) ? $issued_item_quantities[$i] : 0; - } - } - } - } - } - - foreach ($ward_sundry_dispensation_results as $dispensation_record) { - if ($selected_sundry_id == $dispensation_record->sundry_id) { - if(!in_array($dispensation_record->ward_id, $array_of_wards_to_loop)) {$array_of_wards_to_loop[] = $dispensation_record->ward_id;} - if (isset($patient_consumptions[$dispensation_record->ward_id])) { - $patient_consumptions[$dispensation_record->ward_id] += $dispensation_record->quantity_given; - } else { - $patient_consumptions[$dispensation_record->ward_id] = $dispensation_record->quantity_given; - } - $patient_ids[$dispensation_record->sundry_id][] = $dispensation_record->patient_id; - } - } - - $search_text = "Results for " . ($sundries[$selected_sundry_id] ?? 'N/A') . " from " . streamline_date($start_date) . " to " . streamline_date($end_date); - } elseif ($request->report_by == 4) { - # report for sundries consumption per ward - $ward_sundry_dispensation_results = WardSundryDispensation::where('ward_id', $ward_id)->where($consumption_filters)->get(); - $ward_item_requests_results = WardItemRequest::where(['dispensation_status' => 1, 'item_type' => 2, 'ward_id' => $ward_id])->where($ward_item_filters)->get(); - - if (count($ward_sundry_dispensation_results) > 0) { - foreach ($ward_sundry_dispensation_results as $sundry_dispensation) { - if(!in_array($sundry_dispensation->sundry_id, $item_ids)) {$item_ids[] = $sundry_dispensation->sundry_id;} - if (isset($patient_consumptions[$sundry_dispensation->sundry_id])) { - $patient_consumptions[$sundry_dispensation->sundry_id] += $sundry_dispensation->quantity_given; - } else { - $patient_consumptions[$sundry_dispensation->sundry_id] = $sundry_dispensation->quantity_given; - } - $patient_ids[$sundry_dispensation->sundry_id][] = $sundry_dispensation->patient_id; - } - } - - if (count($ward_item_requests_results) > 0) { - foreach ($ward_item_requests_results as $ward_item_request) { - $issued_item_ids = explode(",", $ward_item_request->item_ids); - $issued_item_quantities = explode(",", $ward_item_request->quantity_issued_out); - for ($i=0; $i < count($issued_item_ids) ; $i++) { - if(!in_array($issued_item_ids[$i], $item_ids)) {$item_ids[] = $issued_item_ids[$i];} - if (isset($item_consumption[$issued_item_ids[$i]])) { - $item_consumption[$issued_item_ids[$i]] += (isset($issued_item_quantities[$i]) && is_numeric($issued_item_quantities[$i])) ? $issued_item_quantities[$i] : 0; - } else { - $item_consumption[$issued_item_ids[$i]] = (isset($issued_item_quantities[$i]) && is_numeric($issued_item_quantities[$i])) ? $issued_item_quantities[$i] : 0; - } - } - } - } - - $search_text = "Results for " . ($wards[$ward_id] ?? 'N/A') . " from " . streamline_date($start_date) . " to " . streamline_date($end_date); - } elseif ($request->report_by == 5) { - # report for general items - $selected_general_items_id = $request->general_items_id; - $ward_treatment_dispensation_results = WardTreatmentDispensation::where($consumption_filters)->get(); - $ward_item_requests_results = WardItemRequest::where(['dispensation_status' => 1, 'item_type' => 1])->where($ward_item_filters)->get(); - $ward_dispensing_results = WardDispensing::where($consumption_filters)->get(); - $general_items_ids_array = []; - - if (count($ward_dispensing_results) > 0) { - foreach ($ward_dispensing_results as $ward_dispensing) { - $issued_item_ids = explode(",", $ward_dispensing->drug_id); - $issued_item_quantities = explode(",", $ward_dispensing->quantity_dispensed); - for ($i=0; $i < count($issued_item_ids) ; $i++) { - if ($selected_drug_id == $issued_item_ids[$i]) { - if(!in_array($ward_dispensing->ward_id, $array_of_wards_to_loop)) {$array_of_wards_to_loop[] = $ward_dispensing->ward_id;} - if (isset($item_consumption[$ward_dispensing->ward_id])) { - $item_consumption[$ward_dispensing->ward_id] += is_numeric($issued_item_quantities[$i]) ? $issued_item_quantities[$i] : 0; - } else { - $item_consumption[$ward_dispensing->ward_id] = is_numeric($issued_item_quantities[$i]) ? $issued_item_quantities[$i] : 0; - } - } - } - } - } - - if (count($ward_treatment_dispensation_results) > 0) { - foreach ($ward_treatment_dispensation_results as $dispensation_record) { - if ($selected_drug_id == $dispensation_record->drug_id) { - if(!in_array($dispensation_record->ward_id, $array_of_wards_to_loop)) {$array_of_wards_to_loop[] = $dispensation_record->ward_id;} - if (isset($patient_consumptions[$dispensation_record->ward_id])) { - $patient_consumptions[$dispensation_record->ward_id] += $dispensation_record->quantity_given; - } else { - $patient_consumptions[$dispensation_record->ward_id] = $dispensation_record->quantity_given; - } - } - $patient_ids[$dispensation_record->drug_id][] = $dispensation_record->patient_id; - } - } - - if (count($ward_item_requests_results) > 0) { - foreach ($ward_item_requests_results as $ward_item_request) { - $issued_item_ids = explode(",", $ward_item_request->item_ids); - $issued_item_quantities = explode(",", $ward_item_request->quantity_issued_out); - for ($i=0; $i < count($issued_item_ids) ; $i++) { - if ($selected_drug_id == $issued_item_ids[$i]) { - if(!in_array($ward_item_request->ward_id, $array_of_wards_to_loop)) {$array_of_wards_to_loop[] = $ward_item_request->ward_id;} - if (isset($item_consumption[$ward_item_request->ward_id])) { - $item_consumption[$ward_item_request->ward_id] += is_numeric($issued_item_quantities[$i]) ? $issued_item_quantities[$i] : 0; - } else { - $item_consumption[$ward_item_request->ward_id] = is_numeric($issued_item_quantities[$i]) ? $issued_item_quantities[$i] : 0; - } - } - } - } - } - - $search_text = "Results for " . ($general_items[$selected_general_items_id] ?? 'N/A') . " from " . streamline_date($start_date) . " to " . streamline_date($end_date); - } elseif ($request->report_by == 6) { - $ward_item_requests_results = WardItemRequest::where(['dispensation_status' => 1, 'item_type' => 3, 'ward_id' => $ward_id])->where($ward_item_filters)->get(); - - if (count($ward_item_requests_results) > 0) { - foreach ($ward_item_requests_results as $ward_item_request) { - $issued_item_ids = explode(",", $ward_item_request->item_ids); - $issued_item_quantities = explode(",", $ward_item_request->quantity_issued_out); - for ($i=0; $i < count($issued_item_ids) ; $i++) { - - if(!in_array($issued_item_ids[$i], $item_ids)) { - $item_ids[] = $issued_item_ids[$i]; - } - - if (isset($item_consumption[$issued_item_ids[$i]])) { - $item_consumption[$issued_item_ids[$i]] += (isset($issued_item_quantities[$i]) && is_numeric($issued_item_quantities[$i])) ? $issued_item_quantities[$i] : 0; - } else { - $item_consumption[$issued_item_ids[$i]] = (isset($issued_item_quantities[$i]) && is_numeric($issued_item_quantities[$i])) ? $issued_item_quantities[$i] : 0; - } - } - } - } - - $search_text = "Results for " . ($wards[$ward_id] ?? 'N/A') . " from " . streamline_date($start_date) . " to " . streamline_date($end_date); - } - - return view('ward_management::wards_consumption.ward_consumption_report',compact('start_date', 'end_date', 'wards', 'drugs','patient_ids', 'sundries', 'general_items', 'search_complete', 'report_by', 'ward_id', 'item_ids', - 'patient_consumptions', 'array_of_wards_to_loop', 'selected_drug_id', 'selected_sundry_id', 'selected_general_items_id', 'search_text', 'item_consumption', 'start_date', 'end_date','item_requests')); - } - - public function patient_drill_down(Request $request) { - $item_id = $request->item_id; - $start_date = $request->start_date; - $end_date = $request->end_date; - $ward_id = $request->ward_id; - $wards = unserialize($request->wards); - $patient_id_array = unserialize($request->patient_ids); - $ward_name = $wards[$ward_id]; - if ($request->report_by == 1) { - $patients_results = WardTreatmentDispensation::join('patients', 'patients.id', '=', 'ward_treatment_dispensations.patient_id') - ->leftjoin('inpatient_info', 'inpatient_info.episode_id', 'ward_treatment_dispensations.episode_id') - ->whereBetween('ward_treatment_dispensations.created_at', [$start_date, $end_date])->where([['drug_id', $item_id],['ward_treatment_dispensations.ward_id', $ward_id]]) - ->get(['ward_treatment_dispensations.quantity_given', 'ward_treatment_dispensations.created_at as date_given', - 'patients.number', 'patients.id', 'patients.gender', 'patients.date_of_birth', 'ward_treatment_dispensations.episode_id', 'primary_diagnosis','other_diagnoses','right_eye_diagnosis','left_eye_diagnosis']); - $name = get_name($item_id, 'id', 'name', 'drugs'); - } elseif ($request->report_by == 3) { - $patients_results = WardSundryDispensation::join('patients', 'patients.id', '=', 'ward_sundry_dispensations.patient_id') - ->whereBetween('ward_sundry_dispensations.created_at', [$start_date, $end_date])->where('sundry_id', $item_id) - ->where('ward_id', $ward_id)->get(['ward_sundry_dispensations.quantity_given', 'ward_sundry_dispensations.created_at as date_given', - 'patients.number', 'patients.id', 'patients.gender', 'patients.date_of_birth']); - $name = get_name($item_id, 'id', 'name', 'sundries'); - } elseif ($request->report_by == 4) { - $patients_results = WardSundryDispensation::join('patients', 'patients.id', '=', 'ward_sundry_dispensations.patient_id') - ->whereBetween('ward_sundry_dispensations.created_at', [$start_date, $end_date])->where('sundry_id', $item_id) - ->where('ward_id', $ward_id)->get(['ward_sundry_dispensations.quantity_given', 'ward_sundry_dispensations.created_at as date_given', - 'patients.number', 'patients.id', 'patients.gender', 'patients.date_of_birth']); - $name = get_name($item_id, 'id', 'name', 'sundries'); - } else { - return redirect('ward_consumption_report'); - } - return view('ward_management::wards_consumption.patient_drill_down', compact('patients_results', 'name', 'ward_name')); - } - - public function issued_items_drill_down(Request $request){ - //form variables for search form - $wards = DB::table('wards')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $wards = ['' => '- select -'] + $wards; - $wards = ['pharmacy' => 'Pharmacy'] + $wards; - $drugs = DB::table('drugs')->where('available', 1)->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $drugs = ['' => '- select -'] + $drugs; - - $sundries = DB::table('sundries')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $sundries = ['' => '- select -'] + $sundries; - $general_items = DB::table('general_items')->whereNull('deleted_at')->orderBy('name')->pluck('name', 'id')->toArray(); - $general_items = ['' => '- select -'] + $general_items; - $quotation_type_id = $item_type = 0; - - //sent via request - $item_id = $request->item_id; - $start_date = $request->start_date; - $end_date = $request->end_date; - $ward_id = $request->ward_id; - $report_by = $request->report_by; - $wards = unserialize($request->wards); - $patient_id_array = unserialize($request->patient_ids); - $ward_name = $wards[$ward_id]; - // if (isset($request->start_date) && isset($request->end_date)) { - // $start_date_string = Carbon::createFromFormat('Y-m-d', $start_date)->toDateTimeString(); - // $end_date_string = Carbon::createFromFormat('Y-m-d', $end_date)->toDateTimeString(); - // } else { - // $start_date_string = Carbon::now()->toDateTimeString(); - // $end_date_string = Carbon::now()->toDateTimeString(); - // } - $display = "Records details between " . streamline_date($start_date) . " and " . streamline_date($end_date); - $results = $ward_results = []; - - if ($request->report_by == 1) { - // report by ward - if ($ward_id == "pharmacy") { - $results = DB::table('requisitions') - ->select('*')->whereNull('deleted_at') - ->where('quotation_type_id', 1) - ->whereRaw('FIND_IN_SET(' . $item_id . ',drug_id)') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(); - $display = "Records details for Pharmacy between " . streamline_date($start_date) . " and " . streamline_date($end_date); - } else { - $ward_results = DB::table('ward_item_requests') - ->select('*')->whereNull('deleted_at') - ->where(['item_type' => $quotation_type_id, 'ward_id' => $ward_id]) - ->whereRaw('FIND_IN_SET(' . $item_id . ',item_ids_issued_out)') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(); - $display = "Records details for ".get_name($ward_id, "id", "name", "wards")." between " . streamline_date($start_date) . " and " . streamline_date($end_date); - } - } elseif ($request->report_by == 2) { - //report by drugs - $quotation_type_id = $item_type = 1; - if ($ward_id == "pharmacy") { - $results = DB::table('requisitions') - ->select('*')->whereNull('deleted_at') - ->where('quotation_type_id', $quotation_type_id) - ->whereRaw('FIND_IN_SET(' . $item_id . ',drug_id)') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(); - $display = "Records details for Pharmacy between " . streamline_date($start_date) . " and " . streamline_date($end_date); - } else { - $ward_results = DB::table('ward_item_requests') - ->select('*')->whereNull('deleted_at') - ->where(['item_type' => $quotation_type_id, 'ward_id' => $ward_id]) - ->whereRaw('FIND_IN_SET(' . $item_id . ',item_ids_issued_out)') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(); - - $display = "Records details for ".get_name($ward_id, "id", "name", "wards")." between " . streamline_date($start_date) . " and " . streamline_date($end_date); - } - } elseif ($request->report_by == 3) { - if ($ward_id == "pharmacy") { - $results = DB::table('requisitions') - ->select('*')->whereNull('deleted_at') - ->where('quotation_type_id', 2) - ->whereRaw('FIND_IN_SET(' . $item_id . ',drug_id)') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(); - $display = "Records details for Pharmacy between " . streamline_date($start_date) . " and " . streamline_date($end_date); - } else { - $ward_results = DB::table('ward_item_requests') - ->select('*')->whereNull('deleted_at') - ->where(['item_type' => 2, 'ward_id' => $ward_id]) - ->whereRaw('FIND_IN_SET(' . $item_id . ',item_ids_issued_out)') - ->whereBetween('created_at', [$start_date, $end_date]) - ->get(); - - $display = "Records details for ".get_name($ward_id, "id", "name", "wards")." between " . streamline_date($start_date) . " and " . streamline_date($end_date); - } - } - - return view('ward_management::wards_consumption.issued_items_drill_down', compact('start_date', 'end_date', 'wards', 'drugs', 'sundries', 'general_items', 'report_by', 'display', 'results', 'display', 'item_id', 'ward_results', 'item_type')); - } -} diff --git a/docker/statistics/Modules/WardManagement/Providers/RouteServiceProvider.php b/docker/statistics/Modules/WardManagement/Providers/RouteServiceProvider.php deleted file mode 100755 index fb66c071..00000000 --- a/docker/statistics/Modules/WardManagement/Providers/RouteServiceProvider.php +++ /dev/null @@ -1,68 +0,0 @@ -mapApiRoutes(); - $this->mapWebRoutes(); - } - - /** - * Define the "web" routes for the application. - * - * These routes all receive session state, CSRF protection, etc. - * - * @return void - */ - protected function mapWebRoutes() - { - Route::middleware('web') - ->namespace($this->namespace) - ->group(module_path('WardManagement', '/Routes/web.php')); - } - - /** - * Define the "api" routes for the application. - * - * These routes are typically stateless. - * - * @return void - */ - protected function mapApiRoutes() - { - Route::prefix('api') - ->middleware('api') - ->namespace($this->namespace) - ->group(module_path('WardManagement', '/Routes/api.php')); - } -} diff --git a/docker/statistics/Modules/WardManagement/Providers/WardManagementServiceProvider.php b/docker/statistics/Modules/WardManagement/Providers/WardManagementServiceProvider.php deleted file mode 100644 index 4647d18b..00000000 --- a/docker/statistics/Modules/WardManagement/Providers/WardManagementServiceProvider.php +++ /dev/null @@ -1,113 +0,0 @@ -registerTranslations(); - $this->registerConfig(); - $this->registerViews(); - $this->loadMigrationsFrom(module_path($this->moduleName, 'Database/Migrations')); - } - - /** - * Register the service provider. - * - * @return void - */ - public function register() - { - $this->app->register(RouteServiceProvider::class); - } - - /** - * Register config. - * - * @return void - */ - protected function registerConfig() - { - $this->publishes([ - module_path($this->moduleName, 'Config/config.php') => config_path($this->moduleNameLower . '.php'), - ], 'config'); - $this->mergeConfigFrom( - module_path($this->moduleName, 'Config/config.php'), $this->moduleNameLower - ); - } - - /** - * Register views. - * - * @return void - */ - public function registerViews() - { - $viewPath = resource_path('views/modules/' . $this->moduleNameLower); - - $sourcePath = module_path($this->moduleName, 'Resources/views'); - - $this->publishes([ - $sourcePath => $viewPath - ], ['views', $this->moduleNameLower . '-module-views']); - - $this->loadViewsFrom(array_merge($this->getPublishableViewPaths(), [$sourcePath]), $this->moduleNameLower); - } - - /** - * Register translations. - * - * @return void - */ - public function registerTranslations() - { - $langPath = resource_path('lang/modules/' . $this->moduleNameLower); - - if (is_dir($langPath)) { - $this->loadTranslationsFrom($langPath, $this->moduleNameLower); - $this->loadJsonTranslationsFrom($langPath); - } else { - $this->loadTranslationsFrom(module_path($this->moduleName, 'Resources/lang'), $this->moduleNameLower); - $this->loadJsonTranslationsFrom(module_path($this->moduleName, 'Resources/lang')); - } - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides() - { - return []; - } - - private function getPublishableViewPaths(): array - { - $paths = []; - foreach (\Config::get('view.paths') as $path) { - if (is_dir($path . '/modules/' . $this->moduleNameLower)) { - $paths[] = $path . '/modules/' . $this->moduleNameLower; - } - } - return $paths; - } -} \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/hmis_wards/create.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/hmis_wards/create.blade.php deleted file mode 100644 index 97aa3465..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/hmis_wards/create.blade.php +++ /dev/null @@ -1,59 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('wards.add_ward') }}

    -
    -
    - -
    -
    - -
    -
    - @include('ward_management::hmis_wards.menu') -
    -
    - - -
    -
    - - @include('flash::message') -
    - {{ Form::open(['route' => 'hmis_wards.store', 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('wards.ward_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    - {{ Form::label('slug', __('wards.slug')) }} - {{ Form::text('slug', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    - - {{ Form::button(__('wards.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10 submit-btn']) }} - {{ Form::button(__('wards.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/WardManagement/Resources/views/hmis_wards/edit.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/hmis_wards/edit.blade.php deleted file mode 100644 index 7515dc03..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/hmis_wards/edit.blade.php +++ /dev/null @@ -1,62 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('wards.edit_ward') }}

    -
    -
    - -
    -
    - -
    -
    - @include('ward_management::hmis_wards.menu') -
    -
    - - -
    -
    - - @include('flash::message') -
    - {{ Form::model($ward, ['method' => 'PUT', 'route' => ['hmis_wards.update',$ward], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('wards.ward_name')) }} - {{ Form::text('name', $ward->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('slug', __('wards.slug')) }} - {{ Form::text('slug', $ward->slug, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - - {{ Form::button(__('wards.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('wards.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - -@endpush diff --git a/docker/statistics/Modules/WardManagement/Resources/views/hmis_wards/inactive.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/hmis_wards/inactive.blade.php deleted file mode 100644 index efccc1ba..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/hmis_wards/inactive.blade.php +++ /dev/null @@ -1,91 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('wards.activate_wards') }}

    -
    -
    - -
    -
    - -
    -
    - @include('ward_management::hmis_wards.menu') -
    -
    - - -
    -
    -
    -
    - - - - - - - - - - - - - - - - - @foreach($wards as $ward) - - - - - - @endforeach - -
    {{ __('wards.ward_name') }}{{ __('wards.slug') }}
    {{ __('wards.ward_name') }}{{ __('wards.slug') }}
    {{ $ward->name }}{{ $ward->slug }} - {{ Form::model($ward->id ,['method' => 'POST', 'route' => ['hmis_wards.activate', $ward->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/hmis_wards/index.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/hmis_wards/index.blade.php deleted file mode 100644 index 5a72ca44..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/hmis_wards/index.blade.php +++ /dev/null @@ -1,134 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('wards.wards') }}

    -
    -
    - -
    -
    - -
    -
    - @include('ward_management::hmis_wards.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - @foreach($wards as $ward) - - - - - - - @endforeach - -
    {{ __('wards.ward_name') }}{{ __('wards.slug') }}
    {{ __('wards.ward_name') }}{{ __('wards.slug') }}
    {{ $ward->name }}{{ $ward->slug }} - @if (Auth::user()->can('budget-edit')) - {{ __('wards.edit') }} - @endif - - - @if (Auth::user()->can('budget-edit')) - {{ Form::model($ward->id ,['method' => 'DELETE', 'route' => ['hmis_wards.destroy', $ward->id]]) }} - - {{ Form::close() }} - @endif -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/WardManagement/Resources/views/hmis_wards/menu.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/hmis_wards/menu.blade.php deleted file mode 100644 index f08aa1f5..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/hmis_wards/menu.blade.php +++ /dev/null @@ -1,19 +0,0 @@ -
    -
    - @if (Auth::user()->can('hmis-ward-create')) - {{ __('wards.hmis_create_ward') - }} - @endif - @if (Auth::user()->can('hmis-ward-list')) - {{ __('wards.hmis_view_wards') - }} - @endif - @if (Auth::user()->can('hmis-ward-delete')) - {{ __('wards.hmis_inactive_wards') - }} - @endif -
    -
    \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/discharge_summary_print.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/inpatient/discharge_summary_print.blade.php deleted file mode 100755 index 3edbd4df..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/discharge_summary_print.blade.php +++ /dev/null @@ -1,873 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Inpatient Bill - Stre@mline') }} - - - - - - - - @php - $total_deposits_paid = 0; - $total_amount_to_pay = 0; - $discount_amount = 0; - $insurance_hospital_stay = 0; - $insurance_investigations = 0; - $insurance_treatments = 0; - $insurance_sundries = 0; - $insurance_procedures = 0; - $insurance_tta = 0; - $insurance_services = 0; - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - $investigation_amount_total = 0; - @endphp - - -
    - @include('layouts.header_pdf_print') - -
    {{ __('inpatient.discharge_summary') }}
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('inpatient.patient_number') }}{{ $patient->number}} {{ __('inpatient.ward') }} - {{ get_name($inpatient_info->ward_id, 'id', 'name', 'wards') }}  |  - @if(is_null($inpatient_info->bed_category_id)) - @else - {{ get_name($inpatient_info->bed_category_id, 'id', 'name', 'inpatient_bed_categories') }} - @endif -
    {{ __('inpatient.patient_names') }}{{ $patient->first_name}} {{ $patient->last_name}} {{ __('inpatient.admitted') }} - @if($inpatient_info->discharged == 1) - @php $end_date = new DateTime($inpatient_info->discharged_on) @endphp - @else - @php $end_date = new DateTime(date('Y-m-d')) @endphp - @endif - - @php - $start_date = new DateTime($inpatient_info->admitted_on); - $days_spent_in_ward = ($end_date->diff($start_date)->format('%a')); - @endphp - - {{ streamline_date($inpatient_info->admitted_on) }} ( {{ $days_spent_in_ward }} {{ __('inpatient.days') }}) - - {{ Form::hidden("duration", $days_spent_in_ward) }} - {{ Form::hidden("inpatient_info_id", $inpatient_info->id) }} -
    {{ __('inpatient.age') }}date_of_birth); ?> {{ __('inpatient.discharged') }} - @if($inpatient_info->discharged == 1) - {{ streamline_date($inpatient_info->discharged_on) }} - @else - {{ __('inpatient.still_admitted') }} - @endif -
    {{ __('inpatient.gender') }}{{ $patient->gender == 1 ? __('inpatient.male') : __('inpatient.female') }} {{ __('inpatient.category') }} - {{ get_name($patient->category_id, 'id', 'name', 'patient_categories') }} - - @if(!is_null($patient_discount)) - ({{ $patient_discount["discount"] }} % {{ __('inpatient.discount') }}) - @endif -
    -
    -
    - - @if( Auth::user()->can('view-patient-episode-primary-diagnoses') && !$main_exam) -
    -
    - {{ __('inpatient.primary_diagnosis') }} - - @php - $primary_diagnosis = \Streamline\Models\Diagnosis::withTrashed()->find($inpatient_info->primary_diagnosis); - @endphp - - - - - - - -
    {{ $primary_diagnosis ? $primary_diagnosis->name : "" }}
    -
    -
    - @php $other_diagnoses = @unserialize($inpatient_info->other_diagnoses); @endphp - - @if(!empty($other_diagnoses) && !(count($other_diagnoses) == 1 && $other_diagnoses[0] == '')) - {{ __('inpatient.secondary_diagnosis') }} - - - - @foreach($other_diagnoses as $diagnosis) - @php - $other_diagnosis = \Streamline\Models\Diagnosis::withTrashed()->find($diagnosis); - @endphp - - - - @endforeach - -
    {{ $other_diagnosis ? $other_diagnosis->name : "" }}
    - @endif -
    -
    - @endif - -
    - - @if($cons_comments && ($cons_comments->comments || $cons_comments->history_comments || $cons_comments->clinic_examination_comments || $cons_comments->investigation_and_management_plan_comments)) -

    {{ __('inpatient.opd_consultation_comments') }}

    - - - @if($cons_comments->comments) - - - - - @endif - - @if($cons_comments->history_comments) - - - - - @endif - - @if($cons_comments->clinic_examination_comments) - - - - - @endif - - @if($cons_comments->investigation_and_management_plan_comments) - - - - - @endif -
    {{ __('inpatient.comments') }}{{ $cons_comments->comments }}
    {{ __('inpatient.history') }}{{ $cons_comments->history_comments }}
    {{ __('consultations.clinical_examination') }}{{ $cons_comments->clinic_examination_comments }}
    {{ __('consultations.investigation_and_mgt_plan') }}{{ $cons_comments->investigation_and_management_plan_comments }}
    - -
    - @endif - - {{ __('inpatient.clinical_summary') }} - - - - - - - -
    {{ $inpatient_info->clinical_summary }}
    - -
    - - {{ __('inpatient.investigations_done') }} - - - - - - - - - - - @if(count($ward_investigations) > 0) - @for($i = 0; $i < count($ward_investigations['name']); $i++) - @if(in_array($i, $ward_investigations_position)) - - - - @endif - - - - - - - @endfor - @else - - - - @endif - -
    Investigation NameResultComment
    - {{ $ward_investigations_date[array_search($i, $ward_investigations_position)] }} -
    {{ $ward_investigations['name'][$i] }} - @if($ward_investigations['type'][$i] == 1 && $ward_investigations['value'][$i] != "Pending") - {{ __('inpatient.refer_to_investigation_report') }} - @else - {!! nl2br(e($ward_investigations['value'][$i])) !!} - @endif - {!! nl2br(e($ward_investigations['comment'][$i])) !!}
    {{ __('inpatient.no_ward_invs') }}
    - - {{-- if patient has any treatment to take home --}} - @if (count($treatment_to_take_away) > 0) -
    - - {{ __('inpatient.treatment_on_discharge') }} - - @foreach($treatment_to_take_away as $treatment) - @php - $tta_drugs_array = explode(",", $treatment->drugs); - $tta_dose_array = explode(",", $treatment->doses); - $tta_freq_array = explode(",", $treatment->frequencies); - $tta_duration_array = explode(",", $treatment->durations); - @endphp - - - - - @for($x = 0; $x < count($tta_drugs_array); $x++) - @php - $drug_name = get_name($tta_drugs_array[$x], 'id', "name", 'drugs'); - $drug_unit = get_name(get_name($tta_drugs_array[$x], 'id', "unit_id", 'drugs'), "id", "name", "drug_units"); - $frequency = get_name($tta_freq_array[$x], "id", "name", "dosage_frequencies"); - @endphp - - - - - - @if($treatment->dispense_status == 1) - - @else - - @endif - - @endfor - @endforeach -
    {{ __('inpatient.ordered_on') }} {{ streamline_date($treatment->created_at) }} by {{ get_full_name($treatment->created_by, "id", "first_name", "last_name", "users") }}
    {{ $drug_name }}{{ $tta_dose_array[$x] }} {{ $drug_unit }} {{ $frequency}} {{ $tta_duration_array[$x] }}{{ __('inpatient.dispensed') }}{{ __('inpatient.pending_dispensing') }}
    - @endif - -
    - - @if($main_exam) -
    {{ __('patient_episode.eye_clinic') }} Main Exam
    -
    -
    - - - - - - - - - - - - - - - - - - -
    External
    RightLeft
    Ext{{ $main_exam->external_right }}{{ $main_exam->external_left }}
    - - - - - - - - - - - - - - - @foreach($slit_lamp_test_areas as $area) - - - @php - $right_slug = $area->slug."_right"; - $left_slug = $area->slug."_left"; - $left_other_slug = $area->slug."_other_left"; - $right_other_slug = $area->slug."_other_right"; - @endphp - - - - @endforeach - - -
    Slit Lamp
    SectionRightLeft
    {{ $area->name }} - @if(in_array($main_exam->$right_slug, $slit_lamp_test_area_ids)) - @php - $value_array = explode(',', $main_exam->$right_slug); - @endphp - @for($x = 0; $x < count($value_array); $x++) - - {{ $slit_lamp_test_area_values[$value_array[$x]] }}
    - @endfor - @endif - @if(isset($right_other_slug)) - - {{ $main_exam->$right_other_slug }} - @endif -
    - @if(in_array($main_exam->$left_slug, $slit_lamp_test_area_ids)) - @php - $value_array = explode(',', $main_exam->$left_slug); - @endphp - @for($x = 0; $x < count($value_array); $x++) - - {{ $slit_lamp_test_area_values[$value_array[$x]] }}
    - @endfor - @endif - @if(isset($left_other_slug)) - - {{ $main_exam->$left_other_slug }} - @endif -
    - @if (!empty($main_exam->doctors_notes)) - - - - - - - -
    {{ __('inpatient.doctor_comments') }} (Main Exam)
    {!! nl2br(e($main_exam->doctors_notes)) !!}
    - @endif - -
    - -
    - - - - - - - - - - @php - $right_diagnosis_array = explode(",", $main_exam->right_eye_diagnosis); - $left_diagnosis_array = explode(",", $main_exam->left_eye_diagnosis); - @endphp - @if(count($right_diagnosis_array) > 0) - @foreach($right_diagnosis_array as $id) - - - - - - @endforeach - @else - - - - @endif - @if(count($left_diagnosis_array) > 0) - @foreach($left_diagnosis_array as $id) - - - - - - @endforeach - @else - - - - @endif - -
    EYESECTIONDIAGNOSIS
    Right{{ get_name(get_name($id, 'id', 'diagnosis_category', 'diagnoses'),'id','name','diagnosis_categories') }}{{ get_name($id, 'id', 'name', 'diagnoses') }}
    ---
    Left{{ get_name(get_name($id, 'id', 'diagnosis_category', 'diagnoses'),'id','name','diagnosis_categories') }}{{ get_name($id, 'id', 'name', 'diagnoses') }}
    ---
    - - - - - - - - - - - - - - - - - -
    IOP
    RightLeft
    {{ $main_exam->iop_right ?? '-' }}{{ $main_exam->iop_left ?? '-' }}
    - - - - - - - - - - - - - - - - - -
    CDR
    RightLeft
    {{ $main_exam->cdr_right ?? '-' }}{{ $main_exam->cdr_left ?? '-' }}
    -
    -
    - @endif - - @if($base_exam) -

    -
    {{ __('patient_episode.eye_clinic') }} Base Refraction Exam
    -
    -
    - - - - - - - - - - - -
    Visual Acuity
    -
    -
    -
    Distance
    -
    Right
    -
    Left
    -
    -
    -
    -
    sc
    -
    - {{ Form::text('visual_acuity_distance_sc_right', $base_exam->visual_acuity_distance_sc_right, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('visual_acuity_distance_sc_left', $base_exam->visual_acuity_distance_sc_left, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    ph
    -
    - {{ Form::text('visual_acuity_distance_ph_right', $base_exam->visual_acuity_distance_ph_right, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('visual_acuity_distance_ph_left', $base_exam->visual_acuity_distance_ph_left, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    cc
    -
    - {{ Form::text('visual_acuity_distance_cc_right', $base_exam->visual_acuity_distance_cc_right, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('visual_acuity_distance_cc_left', $base_exam->visual_acuity_distance_cc_left, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    Near
    -
    -
    -
    -
    sc
    -
    - {{ Form::text('visual_acuity_near_sc_right', $base_exam->visual_acuity_near_sc_right, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('visual_acuity_near_sc_left', $base_exam->visual_acuity_near_sc_left, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    cc
    -
    - {{ Form::text('visual_acuity_near_cc_right', $base_exam->visual_acuity_near_cc_right, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::text('visual_acuity_near_cc_left', $base_exam->visual_acuity_near_cc_left, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    - - Add -
    -
    - {{ Form::text('added_values',$base_exam->added_values, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    - - -
    -
    - - {{ Form::text('best_right_vision',$base_exam->best_right_vision, ['class' => 'form-control', 'readonly']) }} -
    -
    - - {{ Form::text('best_left_vision',$base_exam->best_left_vision, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    -
    - - - - - - - - - - - -
    Refraction
    -
    -
    - Autorefractor -
    -
    -
    -
    -
    -
    -
    -
    Sphere
    -
    Cylinder
    -
    Axis
    -
    -
    -
    -
    -
    R
    -
    -
    -
    - {{ $base_exam->manifest_auto_right_sphere ?? "-" }} -
    -
    - {{ $base_exam->manifest_auto_right_cylinder ?? "-" }} -
    -
    - {{ $base_exam->manifest_auto_right_axis ?? "-" }} -
    -
    -
    -
    -
    -
    L
    -
    -
    -
    - {{ $base_exam->manifest_auto_left_sphere ?? "-" }} -
    -
    - {{ $base_exam->manifest_auto_left_cylinder ?? "-" }} -
    -
    - {{ $base_exam->manifest_auto_left_axis ?? "-" }} -
    -
    -
    -
    - Keratometry - -
    -
    -
    -
    -
    K1
    -
    K2
    -
    Axis
    -
    -
    -
    -
    -
    R
    -
    -
    -
    - {{ $base_exam->keratometry_k1_right ?? "-" }} -
    -
    - {{ $base_exam->keratometry_k2_right ?? "-" }} -
    -
    - {{ $base_exam->keratometry_axis_right ?? "-" }} -
    -
    -
    -
    -
    -
    L
    -
    -
    -
    - {{ $base_exam->keratometry_k1_left ?? "-" }} -
    -
    - {{ $base_exam->keratometry_k2_left ?? "-" }} -
    -
    - {{ $base_exam->keratometry_axis_left ?? "-" }} -
    -
    -
    -
    - - Retinoscope -
    -
    -
    -
    -
    Sphere
    -
    Cylinder
    -
    Axis
    -
    -
    -
    -
    -
    R
    -
    -
    -
    - {{ $base_exam->manifest_ret_right_sphere ?? "-" }} -
    -
    - {{ $base_exam->manifest_ret_right_cylinder ?? "-" }} -
    -
    - {{ $base_exam->manifest_ret_right_axis ?? "-" }} -
    -
    -
    -
    -
    -
    L
    -
    -
    -
    - {{ $base_exam->manifest_ret_left_sphere ?? "-" }} -
    -
    - {{ $base_exam->manifest_ret_left_cylinder ?? "-" }} -
    -
    - {{ $base_exam->manifest_ret_left_axis ?? "-" }} -
    -
    -
    -
    - - Subjective -
    -
    -
    -
    -
    Sphere
    -
    Cylinder
    -
    Axis
    -
    -
    -
    -
    -
    R
    -
    -
    -
    - {{ $base_exam->subjective_right_sphere ?? "-" }} -
    -
    - {{ $base_exam->subjective_right_cylinder ?? "-" }} -
    -
    - {{ $base_exam->subjective_right_axis ?? "-" }} -
    -
    -
    -
    -
    -
    L
    -
    -
    -
    - {{ $base_exam->subjective_left_sphere ?? "-" }} -
    -
    - {{ $base_exam->subjective_left_cylinder ?? "-" }} -
    -
    - {{ $base_exam->subjective_left_axis ?? "-" }} -
    -
    -
    -
    - -
    - -
    -
    - - {{ Form::text('pd_right_eye', $base_exam->pd_right_eye, ['class' => 'form-control', 'readonly']) }} -
    -
    - - {{ Form::text('pd_left_eye', $base_exam->pd_left_eye, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    -
    - @if (!empty($base_exam->comment)) -
    - - - - - - - -
    {{ __('inpatient.doctor_comments') }} (Base Refraction Exam)
    {!! nl2br(e($base_exam->comment)) !!}
    -
    - @endif -
    - @endif - - {{ __('inpatient.discharge_summary') }} - - - - - -
    {{ $inpatient_info->discharge_summary }}
    - - {{-- if a home with follow up show appointment details --}} - @if ($inpatient_info->outcome_id == 3) - @php - $patient_appointment = \Streamline\Models\PatientAppointment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->first(); - @endphp - -
    - - {{ __('inpatient.appointment_details') }} - - - - - - - - - - - - - - - - - -
    {{ __('inpatient.appointment_date') }}{{ streamline_date($patient_appointment->appointment_date) }} {{ __('inpatient.at') }} {{ $patient_appointment->appointment_time }}
    {{ __('inpatient.clinic') }}{{ get_name($patient_appointment->clinic_allocation, "id", "name", "clinics") }}
    {{ __('inpatient.doctor_to_see') }}{{ get_full_name($patient_appointment->incharge_id, "id", "first_name", "last_name", "users") }}
    - @endif - -
    - - - - - - - - -
    {{ __('inpatient.discharged_by') }}: {{ get_full_name($inpatient_info->discharged_by, "id", "first_name", "last_name", "users")}} {{ __('inpatient.on') }} {{ streamline_date($inpatient_info->discharged_on)}}
    - -
    - - - - - - - {{-- @if (is_add_stamp_feature_enabled() && !empty($hospitalInfo->stamp)) - - @endif --}} - - - - - {{-- @if (is_add_stamp_feature_enabled() && !empty($hospitalInfo->stamp)) - - @endif --}} - - -
    {{ __('inpatient.printed_by') }}: {{ get_full_name(auth()->id(), "id", "first_name", "last_name", "users") }} {{ __('inpatient.on') }} {{ streamline_date_time(date("Y-m-d H:i:s")) }}{{ __('inpatient.stamp') }}:
    {{ __('inpatient.printed_by_signature') }}: - {{ $hospitalInfo->name}} stamp -
    - @if (is_add_stamp_feature_enabled() && !empty($hospitalInfo->stamp)) - - - - - - - -
    {{ __('inpatient.stamp') }}: - {{ $hospitalInfo->name}} stamp -
    - @endif -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/incoming_bills.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/inpatient/incoming_bills.blade.php deleted file mode 100755 index bd7ddbac..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/incoming_bills.blade.php +++ /dev/null @@ -1,305 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('inpatient.incoming_inpatient_bills') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    - {{ Form::open(['route' => 'inpatient_bills.incoming', 'method' => 'POST']) }} - -
    - -
    -
    - {{ Form::label('ward_id', __('inpatient.wards')) }} - {{ Form::select('ward_id', $wards, '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - -
    -
    - {{ Form::label('inpatient_status', __('inpatient.inpatient_status')) }} - {{ Form::select('inpatient_status', $inpatient_status, 0, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - -
    -
    - {{ Form::label('search_by', __('inpatient.date')) }} - {{ Form::select('search_by', ['0'=>__('inpatient.today'), '1' => __('inpatient.yesterday'),'2'=>__('inpatient.custom_date'),'3'=>__('inpatient.custom_date_range')], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - - -
    -

    - {{ Form::button(__('inpatient.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    -
    - - {{ Form::close() }} -
    - -
    -
    -
    -

    -
    - - - - - - - - - - - - - - - - - - @php - $amount_to_pay_grand_total = 0; - $amount_paid_grand_total = 0; - $total_bill_sum = 0; - @endphp - @if(count($inpatients_info) > 0) - @foreach($inpatients_info as $inpatient_info) - - - - - - - - @php - $amount_to_pay = $inpatient_info->bills_amount_to_pay ?? 0; - - $bill_last_created_by = $inpatient_info->bills_created_by; - $bill_last_updated_by = $inpatient_info->bills_updated_by; - - $bill_last_updated_by = $bill_last_updated_by ? get_full_name($bill_last_updated_by, 'id', 'first_name', 'last_name', 'users') : get_full_name($bill_last_created_by, 'id', 'first_name', 'last_name', 'users'); - - $amount_to_pay_grand_total += is_numeric($amount_to_pay) ? $amount_to_pay : 0; - - $amount_to_pay = is_null($inpatient_info->bills_amount_to_pay) ? "" : ugandan_shillings($amount_to_pay); - - $invoices_amount = is_numeric($inpatient_info->bills_invoices_amount) ? $inpatient_info->bills_invoices_amount : 0; - $amount_paid = is_numeric($inpatient_info->bills_amount_paid) ? $inpatient_info->bills_amount_paid : 0; - - $amount_paid_plus_invoices_to_pay = $amount_paid + $invoices_amount; - $amount_paid_grand_total += $amount_paid_plus_invoices_to_pay; - $original_bill = is_numeric($inpatient_info->bills_original_bill) ? $inpatient_info->bills_original_bill : 0; - $total_bill_sum += $original_bill; - @endphp - - - - - - - @endforeach - @else - - @endif - - - - - - - - - - - - - - - - -
    {{ __('inpatient.admission_day_ward_discharge') }}{{ __('inpatient.patient_names') }}{{ __('inpatient.admitted_by') }}{{ __('inpatient.category') }}{{ __('inpatient.ward') }}{{ __('inpatient.total_saved_bill') }}{{ __('inpatient.amount_paid_and_invoiced') }}{{ __('inpatient.balance') }}{{ __('inpatient.bill_last_updated') }}{{ __('inpatient.action') }}
    {{ $inpatient_info->id }} - {{ streamline_date_time($inpatient_info->admitted_on) }} - @php - $admitted_on = new Carbon\Carbon($inpatient_info->admitted_on); - - if ($inpatient_info->discharged == 1) { - $days_on_ward = $admitted_on->diffInDays($inpatient_info->discharged_on); - } else { - $days_on_ward = $admitted_on->diffInDays(Carbon\Carbon::now()); - } - @endphp - -

    - - {{ $days_on_ward }} {{ __('inpatient.days_on_ward') }} - - @if($inpatient_info->discharged == 1) -

    {{ __('inpatient.discharged_on') }} {{ streamline_date($inpatient_info->discharged_on) }} {{ __('inpatient.by') }} {{ get_full_name($inpatient_info->discharged_by, 'id', 'first_name', 'last_name', 'users') }} - @endif -
    {!! insurance_flag($inpatient_info->patient_id) !!} ({{ $inpatient_info->patients_number }}) - {{ get_full_name($inpatient_info->created_by, "id", "first_name", "last_name", "users") }} - {{ $patient_categories[$inpatient_info->patients_category_id] ?? "" }}{{ $wards[$inpatient_info->ward_id] ?? "" }}{{ ugandan_shillings($original_bill) }}{!! ugandan_shillings($amount_paid_plus_invoices_to_pay) !!} - {!! $amount_to_pay !!} - - {{ streamline_date_time($inpatient_info->updated_at) }} by {{ $bill_last_updated_by }} - @php - $inpatient_bill_record = \Streamline\Models\InpatientBill::where(['patient_id' => $inpatient_info->patient_id, 'episode_id' => $inpatient_info->episode_id])->first(); - @endphp - - @if ($inpatient_bill_record) - @php - $bill_authorized_by_array = is_null($inpatient_bill_record->bill_authorized_by) ? [] : explode(",", $inpatient_bill_record->bill_authorized_by); - $bill_authorized_at_array = is_null($inpatient_bill_record->bill_authorized_at) ? [] : explode(",",$inpatient_bill_record->bill_authorized_at); - @endphp - @if (count($bill_authorized_by_array) > 0) -

    - {{ __('inpatient.bill_authorized_by') }}: - @for ($i = 0; $i < count($bill_authorized_by_array); $i++) - {{ get_full_name($bill_authorized_by_array[$i], "id", "first_name", "last_name", "users") }} {{ __('inpatient.on') }} {{ streamline_date_time($bill_authorized_at_array[$i]) }} - @endfor -

    - @endif - @endif -
    - Select Patient -

    - View Inpatient Bill -

    - {{ Form::open(['url' => 'receive_inpatient_payment']) }} - {{ Form::hidden('patient_id', $inpatient_info->patient_id) }} - {{ Form::hidden('episode_id', $inpatient_info->episode_id) }} - {{ Form::submit('Receive Payment', ['class' => 'btn btn-info btn-sm btn-rounded'])}} - {{ Form::close() }} -
    {{ __('inpatient.no_records_found') }}
    {{ __('inpatient.total') }}{{ ugandan_shillings($total_bill_sum) }}{{ ugandan_shillings($amount_paid_grand_total) }}{{ ugandan_shillings($amount_to_pay_grand_total) }}
    -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush - -@push('scripts') - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_attendant_pass.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_attendant_pass.blade.php deleted file mode 100755 index 1960c85e..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_attendant_pass.blade.php +++ /dev/null @@ -1,116 +0,0 @@ -@extends('layouts.main') - -@section('content') - -
    -
    -

    {{ __('inpatient.inpatient_attendant_pass') }}

    -
    -
    - -
    -
    - -
    -
    -
    -

    {{ __('inpatient.patient_information') }}

    - -
    - - - - - - - - - - - - - - - -
    {{ __('inpatient.patient_names') }}{!! insurance_flag($patient->id) !!}
    {{ __('inpatient.patient_number') }}{{ $patient->number }}
    {{ __('inpatient.pay_later') }} - @if(isset($discount->pay_later) && $discount->pay_later == 1) - {{ __('inpatient.yes') }} - {{ Form::hidden('pay_later', 1, ['id' => 'pay_later']) }} - @else - {{ __('inpatient.no') }} - {{ Form::hidden('pay_later', 0, ['id' => 'pay_later']) }} - @endif -
    -
    -
    -
    -

    {{ __('inpatient.deposits_made') }}

    -
    - - - - - - - - - @if(count($inpatient_deposits) > 0) - @php $total_paid = 0; @endphp - @foreach($inpatient_deposits as $deposit) - - - - - @php $total_paid += $deposit->patient_amount_paid; @endphp - - - @endforeach - - - - - @else - - - - @endif - -
    {{ __('inpatient.received_on') }}{{ __('inpatient.receipt_number') }}{{ __('inpatient.received_by') }}{{ __('inpatient.amount_paid') }}
    {{ $deposit->receipt_number }}{{ get_full_name($deposit->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ streamline_date($deposit->created_at) }}{{ ugandan_shillings($deposit->patient_amount_paid) }}
    {{ __('inpatient.total') }}{{ ugandan_shillings($total_paid) }}
    {{ __('inpatient.no_deposits_made_yet') }}
    -
    -
    -
    -
    - - {{ Form::open(['route' => 'store_inpatient_attendant_pass', 'data-toggle' => 'validator']) }} -
    -
    - @if(is_null($inpatient_bill)) -
    -

    {{ __('inpatient.no_patient_billing_generated') }}

    -
    - @endif -
    -
    -
    -
    -
    -
    -
    - {{ Form::label('expiry_days', __('inpatient.expire_after_how_many_days')) }} - {{ Form::number('expiry_days', $number_of_days, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    - {{ Form::button(__('inpatient.issue_pass'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'onclick' => 'return confirm("Are you sure you want to issue pass?")']) }} - {{ Form::button(__('inpatient.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} -
    -
    -
    -
    - {{ Form::close() }} - -@endsection diff --git a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_attendant_pass_print.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_attendant_pass_print.blade.php deleted file mode 100755 index f34dd832..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_attendant_pass_print.blade.php +++ /dev/null @@ -1,116 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('inpatient.inpatient_attendant_pass') }}

    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}Email: {{ $hospital_information->email }}
    - {{ __('inpatient.department') }}: {{ get_name($inpatient_info->ward_id, "id", "name", "wards") }}
    - {{ __('inpatient.date') }}: {{ streamline_date_time_short(\Carbon\Carbon::now()) }}
    - {{ __('inpatient.patient_names') }} : {{ $patient->first_name }} {{ $patient->last_name }} ({{ $patient->number }}) -{{ get_name($patient->category_id, "id", "name", "patient_categories") }} -

    - - - - - - - -
    - {{ __('inpatient.patient_pass_expires') }}
    - {{ streamline_date_time(\Carbon\Carbon::now()->addDays($number_of_days)) }}
    -
    -
    -
    -
    - -
    -
    -
    -
    - {{ __('inpatient.issued_by') }}: {{ get_full_name($attendant_pass_information->created_by, "id", "first_name", "last_name", "users") }} -
    -
    -
    -
    - - © Stre@mline -
    -
    -
    -
    -@endsection - -@push('styles') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_bill_summary_print.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_bill_summary_print.blade.php deleted file mode 100755 index 41384aea..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_bill_summary_print.blade.php +++ /dev/null @@ -1,1241 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Inpatient Bill Summary - Stre@mline') }} - - - - - - - -@php - $total_deposits_paid = 0; - $total_amount_to_pay = 0; - $discount_amount = 0; - $insurance_hospital_stay = 0; - $insurance_investigations = 0; - $insurance_treatments = 0; - $insurance_to_pay = 0; - $insurance_sundries = 0; - $insurance_procedures = 0; - $insurance_tta = 0; - $insurance_services = 0; - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - $investigation_amount_total = 0; - $insurance_opd_treatment = 0; - $opd_unpaid_treatment_total = $opd_sundries_total_cost = $opd_services_amount_total = $opd_procedure_amount_total = 0; - $patient_insurance_status = (patient_insurance_status($patient_id) == 1); - $chi_ward_accomodation_to_pay = 0; - $drugs_given_anae_cost_total = 0; - $opd_procedure_insurance_amount_total = 0; -@endphp - - -
    - @include('layouts.header_pdf_print') - -
    {{ __('inpatient.inpatient_bill_summary') }}
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('inpatient.patient_number') }}{{ $patient->number}} {{ __('inpatient.ward') }} - {{ get_name($inpatient_info->ward_id, 'id', 'name', 'wards') }}  |  - @if(is_null($inpatient_info->bed_category_id)) - @else - {{ get_name($inpatient_info->bed_category_id, 'id', 'name', 'inpatient_bed_categories') }} - @endif -
    {{ __('inpatient.patient_names') }}{{ $patient->first_name}} {{ $patient->last_name}} {{ __('inpatient.admitted') }} - @if($inpatient_info->discharged == 1) - @php $end_date = new DateTime($inpatient_info->discharged_on) @endphp - @else - @php $end_date = new DateTime(date('Y-m-d')) @endphp - @endif - - @php - $start_date = new DateTime($inpatient_info->admitted_on); - $days_spent_in_ward = ($end_date->diff($start_date)->format('%a')); - @endphp - - {{ streamline_date($inpatient_info->admitted_on) }} ( {{ $days_spent_in_ward }} {{ __('inpatient.days') }})) -
    {{ __('inpatient.age') }}date_of_birth); ?> {{ __('inpatient.discharged') }} - @if($inpatient_info->discharged == 1) - {{ streamline_date($inpatient_info->discharged_on) }} - @else - {{ __('inpatient.still_admitted') }} - @endif -
    {{ __('inpatient.gender') }}{{ $patient->gender == 1 ? __('inpatient.male') : __('inpatient.female') }} {{ __('inpatient.category') }} - {{ get_name($patient->category_id, 'id', 'name', 'patient_categories') }} - - @if(!is_null($patient_discount)) - ({{ $patient_discount["discount"] }} % {{ __('inpatient.discount') }}) - @endif -
    -
    - -
    -
    - @php $tta_total_cost = 0; @endphp - @if(count($treatment_to_take_away) > 0) -
    -
    - {{ __('inpatient.tta') }} -
    - - - @foreach($treatment_to_take_away as $treatment) - @php - $tta_drugs_array = explode(",", $treatment->drugs); - $tta_dispensed_array = explode(",", $treatment->quantities_dispensed); - @endphp - - @for($x = 0; $x < count($tta_drugs_array); $x++) - @php - $tariff_id = 0; - $benefit_id = 0; - $tta_insurance_amount = 0; - - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $tta_drugs_array[$x], 4, true, $inpatient_info->ward_id); - $drugs_cost = $item_insurance_details[2]; - $tta_insurance_amount = $item_insurance_details[1]; - $tariff_id = $item_insurance_details[3]; - $benefit_id = $item_insurance_details[4]; - } else { - if (isset($tta_unit_selling_prices_array[$x])) { - $drugs_cost = is_numeric($tta_unit_selling_prices_array[$x]) ? $tta_unit_selling_prices_array[$x] : 0; - } else { - if ($price_list_id) { - $drugs_cost = get_price_list_category_price($price_list_id, 3, $tta_drugs_array[$x]); - } else { - $drugs_cost = get_name($tta_drugs_array[$x], "id", "non_insured_price", "drugs"); - } - } - } - - $drugs_cost = $saved_tta_prices[$tta_drugs_array[$x]] ?? $drugs_cost; - $tta_insurance_amount = $saved_chi_tta_prices[$tta_drugs_array[$x]] ?? $tta_insurance_amount; - - $insurance_tta += $tta_dispensed_array[$x] * $tta_insurance_amount; - $tta_total_cost += $drugs_cost * $tta_dispensed_array[$x]; - @endphp - @endfor - @endforeach - - - - - - @if($insurance_tta > 0) - - - - - @endif -
    {{ __('inpatient.tta_total') }}{{ ugandan_shillings_with_decimals((int)$tta_total_cost) }}
    {{ __('inpatient.tta_total_chi') }}{{ ugandan_shillings_with_decimals($insurance_tta) }}
    -
    -
    - @endif - - - - @if(count($dispensed_drug_quantity_given_array) > 0) -
    - @if(get_ward_prescription_model() == 1 || $patient_insurance_status) -
    - {{ __('inpatient.treatments') }} -
    - - - @foreach($dispensed_drug_quantity_given_array as $drug_id => $quantity_given) - - @php - $created_at = now(); - - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $drug_id, 4, true, $inpatient_info->ward_id); - $drugs_cost = $item_insurance_details[2]; - $insurance_treatment_to_pay = $item_insurance_details[1]; - } else { - if ($price_list_id) { - $drugs_cost = get_price_list_category_price($price_list_id, 3, $drug_id); - } else { - $drugs_cost = get_name($drug_id, "id", "non_insured_price", "drugs"); - } - } - - //get actual total costs incase the price of item changed after dispensation to allow retro billing - $this_drug_total_price = 0; - $per_ward_drug_given_rows = \Illuminate\Support\Facades\DB::table('ward_treatment_dispensations')->whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'drug_id' => $drug_id])->get(); - - foreach ($per_ward_drug_given_rows as $drug_ward_record) { - $this_drug_sp = $drug_ward_record->price; - $this_drug_sp = is_numeric($this_drug_sp) ? $this_drug_sp : 0; - $this_drug_total_price += ($this_drug_sp * $drug_ward_record->quantity_given); - $insurance_treatment_to_pay = $drug_ward_record->chi_price; - $created_at = $drug_ward_record->created_at; - } - - $treatment_total_cost += $this_drug_total_price; - $insurance_treatments += ($insurance_treatment_to_pay * $quantity_given); - @endphp - @endforeach - - - - - - @if($insurance_treatments > 0) - - - - - @endif -
    {{ __('inpatient.treatment_total') }}{{ ugandan_shillings_with_decimals((int)$treatment_total_cost) }}
    {{ __('inpatient.treatment_total_chi') }}{{ ugandan_shillings_with_decimals($insurance_treatments) }}
    - @elseif(get_ward_prescription_model() == 2) - @php - $inpatient_ward_treatment = unserialize($inpatient_info->ward_treatments); - - $today = date("Y-m-d"); - $dob = get_name($patient_id, "id", "date_of_birth", "patients"); - $difference = days_months_years($dob, $today); - - $days = $difference[0]; - $months = $difference[1]; - $years = $difference[2]; - - $age_bracket = ""; - - if (between($years, 0, 5)){ - $age_bracket = __('inpatient.infant'); - } elseif (between($years, 6, 12)){ - $age_bracket = __('inpatient.child'); - } elseif ($years > 12){ - $age_bracket = __('inpatient.adult'); - } - @endphp -
    - {{ __('inpatient.treatment') }} {{ $age_bracket }} -
    -
      - @if(empty($inpatient_ward_treatment) || is_null($inpatient_ward_treatment)) -
    • {{ __('inpatient.no_treatments_ordered') }}
    • - @else - @php - // for old streamline system records which were using a weird naming convention - $drugs = $inpatient_ward_treatment['drugs'] ?? $inpatient_ward_treatment['Drugs']; - $days = $inpatient_ward_treatment['days'] ?? $inpatient_ward_treatment['Days']; - @endphp - @for($i = 0; $i < count($drugs); $i++) - @php - $daily_cost = 0; - if ($age_bracket == __('inpatient.infant')){ - $daily_cost = get_name($drugs[$i], 'id', 'ip_daily_cost_infant', 'drugs'); - } elseif ($age_bracket == __('inpatient.child')){ - $daily_cost = get_name($drugs[$i], 'id', 'ip_daily_cost_children', 'drugs'); - } elseif ($age_bracket == __('inpatient.adult')){ - $daily_cost = get_name($drugs[$i], 'id', 'ip_daily_cost_adult', 'drugs'); - } - - if (!is_numeric($daily_cost)){ - $daily_cost = 0; - } - - $treatment_total_cost += $daily_cost * $days[$i]; - @endphp - @endfor -
    • - {{ __('inpatient.subtotal') }} - {{ ugandan_shillings_with_decimals($treatment_total_cost) }} -
    • - @endif -
    - @endif -
    -
    - @endif - - $patient_id, 'episode_id' => $episode_id,'payment_status' => 0, 'tta' => 0])->get(); - ?> - @if(count($opd_unpaid_treatments) > 0) -
    -
    - {{ __('inpatient.unpaid_opd_treatment') }} -
    - - - - @php - $opd_treatment_balance = $opd_unpaid_treatment_total = $insurance_opd_treatment = 0; - @endphp - @if(count($opd_unpaid_treatments) > 0) - @foreach($opd_unpaid_treatments as $opd_treatment) - @if(!(is_incoming_prescriptions_feature_enabled() && $opd_treatment->confirmation_status == 0)) - @php - $opd_treatment_amount = 0; - $opd_treatment_insurance_amount = 0; - - $opd_drug_ids = explode(",", $opd_treatment->drugs); - $drug_quantities = explode(",", $opd_treatment->quantities_dispensed); - - $purchased_elsewhere = explode(",", $opd_treatment->purchased_elsewhere); - $unit_selling_prices_array = is_null($opd_treatment->unit_selling_prices) ? [] : explode(",", $opd_treatment->unit_selling_prices); - @endphp - - @for ($i = 0; $i < count($opd_drug_ids); $i++) - @if(get_name($opd_drug_ids[$i], "id", "name", "drugs") != "N/A") - @php - $opd_treatment_insurance_amount = 0; - - // check if drug and patient is eligible for insurance - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $opd_drug_ids[$i], 4, true, $inpatient_info->ward_id); - $opd_treatment_amount = $item_insurance_details[2]; - $opd_treatment_insurance_amount = $item_insurance_details[1]; - } else { - if (isset($unit_selling_prices_array[$i]) && !is_null($unit_selling_prices_array[$i])) { - $opd_treatment_amount = is_numeric($unit_selling_prices_array[$i]) ? $unit_selling_prices_array[$i] : 0; - } else { - if ($price_list_id) { - $opd_treatment_amount = get_price_list_category_price($price_list_id, 3, $opd_drug_ids[$i]); - } else { - $opd_treatment_amount = get_name($opd_drug_ids[$i], "id", "non_insured_price", "drugs"); - } - } - } - - // get money saved from the inpatient bill table - $opd_treatment_amount = $saved_drug_prices[$opd_drug_ids[$i]] ?? $opd_treatment_amount; - $opd_treatment_insurance_amount = $saved_chi_drug_prices[$opd_drug_ids[$i]] ?? $opd_treatment_insurance_amount; - - if(isset($drug_quantities[$i]) && $drug_quantities[$i] != ""){ - $opd_treatment_subtotal = $drug_quantities[$i] * $opd_treatment_amount; - $opd_treatment_insurance_subtotal = $drug_quantities[$i] * $opd_treatment_insurance_amount; - } else { - $opd_treatment_subtotal = 0; - $opd_treatment_insurance_subtotal = 0; - } - - // add amounts to totals - $opd_unpaid_treatment_total += $opd_treatment_subtotal; - $insurance_opd_treatment += $opd_treatment_insurance_subtotal; - @endphp - @endif - @endfor - @endif - @endforeach - - - - - - @if($insurance_opd_treatment > 0) - - - - - @endif - @endif - -
    {{ __('inpatient.opd_treatment') }}{{ ugandan_shillings_with_decimals($opd_unpaid_treatment_total) }}
    {{ __('inpatient.opd_treatment_chi') }}{{ ugandan_shillings_with_decimals($insurance_opd_treatment) }}
    -
    -
    - @endif - - whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->groupBy('sundry_id')->selectRaw('*, sum(quantity_given) as quantity_given')->get(); - $sundries_total_cost = 0; - ?> - - @if(count($ward_sundry_quantities_given) > 0) -
    -
    - {{ __('inpatient.sundries') }} -
    - - - @foreach($ward_sundry_quantities_given as $sundry_record) - @php - $sundries_cost = $this_sundry_sp = 0; - $insurance_sundry_amount = 0; - - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $sundry_record->sundry_id, 5, true, $inpatient_info->ward_id); - $sundries_cost = $item_insurance_details[2]; - $insurance_sundry_amount = $item_insurance_details[1]; - } else { - if ($price_list_id) { - $sundries_cost = get_price_list_category_price($price_list_id, 5, $sundry_record->sundry_id); - } else { - $sundries_cost = get_name($sundry_record->sundry_id, "id", "non_insured_price", "sundries"); - } - } - - //get actual total costs incase the price of item changed after dispensation to allow retro billing - $this_sundry_total_price = 0; - $per_ward_sundry_given_rows = DB::table('ward_sundry_dispensations')->whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'sundry_id' => $sundry_record->sundry_id])->get(); - - if (count($per_ward_sundry_given_rows) > 0) { - foreach ($per_ward_sundry_given_rows as $sundry_ward_record) { - $this_sundry_sp = ($sundry_ward_record->price != 0 && (is_null($price_list_set) || $price_list_set == "")) ? $sundry_ward_record->price : $sundries_cost; - $this_sundry_total_price += ($this_sundry_sp * $sundry_ward_record->quantity_given); - $insurance_sundry_amount = $sundry_ward_record->chi_price; - } - } else { - $this_sundry_total_price = $sundry_record->quantity_given * $sundries_cost; - } - - $sundries_total_cost += $this_sundry_total_price; - $insurance_sundries += ($sundry_record->quantity_given * $insurance_sundry_amount); - @endphp - @endforeach - - - - - - @if($insurance_sundries > 0) - - - - - @endif -
    {{ __('inpatient.sundries_total') }}{{ ugandan_shillings_with_decimals($sundries_total_cost) }}
    {{ __('inpatient.sundries_total_chi') }}{{ ugandan_shillings_with_decimals($insurance_sundries) }}
    -
    -
    - @endif - - @php - $opd_unpaid_sundries = \Streamline\Models\OrderedSundry::where(['patient_id' => $patient_id, 'episode_id' => $episode_id,'payment_status' => 0])->get(); - $opd_sundries_total_cost = $opd_insurance_sundries = 0; - @endphp - @if(count($opd_unpaid_sundries) > 0) - @php - $opd_sundries_ids = []; - $opd_sundries_quantity = []; - $opd_sundry_order_ids = []; - $opd_sundries_orders_amounts = []; - $opd_unit_sundries_selling_prices_array = []; - - foreach($opd_unpaid_sundries as $opd_ordered_sundry){ - $opd_sundries_ids = array_merge($opd_sundries_ids, explode(",", $opd_ordered_sundry->sundries_id)); - $opd_sundries_quantity = array_merge($opd_sundries_quantity, explode(",",$opd_ordered_sundry->quantity)); - $opd_unit_sundries_selling_prices_array = array_merge($opd_unit_sundries_selling_prices_array, explode(",",$opd_ordered_sundry->sundries_amount));// is_null($treatment->sundries_amount) ? [] : explode(",", $treatment->unit_selling_prices); - array_push($opd_sundry_order_ids, $opd_ordered_sundry->id); - //if amounts are put at the time of ordering - $opd_sundries_orders_amounts = is_null($opd_ordered_sundry->sundries_amount) ? array_merge($opd_sundries_orders_amounts, []) : array_merge($opd_sundries_orders_amounts, explode(",", $opd_ordered_sundry->sundries_amount)); - } - - $count_orders = count($opd_sundry_order_ids); - - // create strings from arrays to use when submitting - $opd_sundry_order_ids_string = implode(',', $opd_sundry_order_ids); - @endphp -
    -
    - {{ __('inpatient.unpaid_opd_sundries') }} -
    - - - - @php $orders_count = 0; @endphp - - @for ($i = 0; $i < count($opd_sundries_ids); $i++) - @php - // get insurance status for sundry - $opd_sundry_insurance_status = get_name($opd_sundries_ids[$i], "id", "insurance", "sundries"); - $opd_sund_insurance_amount = 0; - - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $opd_sundries_ids[$i], 5, true, $inpatient_info->ward_id); - $opd_sundry_amount = $item_insurance_details[2]; - $opd_sund_insurance_amount = $item_insurance_details[1]; - } else { - if (isset($opd_unit_sundries_selling_prices_array[$i]) && !is_null($opd_unit_sundries_selling_prices_array[$i]) && is_numeric($opd_unit_sundries_selling_prices_array[$i])) { - $opd_sundry_amount = $opd_unit_sundries_selling_prices_array[$i]; - } else { - // check if the patient category is attached to a price list - if ($price_list_set && $price_list_set != 0){ - $opd_sundry_amount = get_price_list_category_price($price_list_set, 5, $opd_sundries_ids[$i]); - } elseif ($price_list_id) { - $opd_sundry_amount = get_price_list_category_price($price_list_id, 5, $opd_sundries_ids[$i]); - } else { - //if amount was set at time of ordering - if (isset($opd_sundries_orders_amounts[$i]) && !is_null($opd_sundries_orders_amounts[$i])) { - $opd_sundry_amount = $opd_sundries_orders_amounts[$i]; - } else{ - $opd_sundry_amount = get_name($opd_sundries_ids[$i], "id", "non_insured_price", "sundries"); - } - } - } - } - - $opd_sundry_amount = $saved_sundry_prices[$opd_sundries_ids[$i]] ?? $opd_sundry_amount; - $opd_sund_insurance_amount = $saved_chi_sundry_prices[$opd_sundries_ids[$i]] ?? $opd_sund_insurance_amount; - - // get the subtotal for this sundry - $opd_sundry_subtotal = $opd_sundries_quantity[$orders_count] * $opd_sundry_amount; - $opd_sundry_insurance_subtotal = $opd_sundries_quantity[$orders_count] * $opd_sund_insurance_amount; - @endphp - @php - $orders_count++; - $opd_sundries_total_cost += $opd_sundry_subtotal; - $opd_insurance_sundries += $opd_sundry_insurance_subtotal; - @endphp - @endfor - - - - - - @if($opd_insurance_sundries > 0) - - - - - @endif - -
    {{ __('inpatient.sundries_total') }}{{ ugandan_shillings_with_decimals($opd_sundries_total_cost) }}
    {{ __('inpatient.sundries_total_chi') }}{{ ugandan_shillings_with_decimals($opd_insurance_sundries) }}
    -
    -
    - @endif - - whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - - $extras_total_cost = 0; - ?> - @if(count($ward_extras_given) > 0) -
    -
    - {{ __('inpatient.extras') }} -
    - - - @foreach($ward_extras_given as $extras_record) - @php $extras_total_cost += $extras_record->extra_cost; @endphp - @endforeach - - - - -
    {{ __('inpatient.extras_total') }}{{ ugandan_shillings_with_decimals($extras_total_cost) }}
    -
    -
    - @endif -
    - -
    - $patient_id, 'episode_id' => $episode_id])->get(); - $ward_bed_admission_total_cost = 0; - ?> - - @if($ward_bed_stays->count() > 0) -
    -
    - {{ __('inpatient.accomodation') }} -
    - - - @foreach($ward_bed_stays as $bed_record) - @php - $accomodation_cost = $bed_record->bed_fee_total; - $chi_accomodation_cost = $bed_record->chi_bed_fee_total; - $chi_ward_accomodation_to_pay += $chi_accomodation_cost; - $ward_bed_admission_total_cost += $accomodation_cost; - @endphp - @endforeach - - - - - - - @if($chi_ward_accomodation_to_pay > 0) - - - - - @endif -
    {{ __('inpatient.accomodation_total') }} - {{ ugandan_shillings_with_decimals($ward_bed_admission_total_cost) }} -
    {{ __('inpatient.accommodation_total_chi') }} - {{ ugandan_shillings_with_decimals($chi_ward_accomodation_to_pay) }} -
    -
    -
    - @endif - - @if($ordered_ward_investigations->count() > 0) -
    -
    - {{ __('inpatient.investigations') }} -
    - - - @php - // ids of the ordered investigations - $investigation_ids = $order_ids = $all_order_ids_array = []; - - foreach($ordered_ward_investigations as $ordered_investigation){ - if (get_investigation_billing_mode() == 1 && $ordered_investigation->investigation_status == 0) { - // no results yet, so ignore - continue; - } - - $investigation_ids = array_merge($investigation_ids, explode(",", $ordered_investigation->investigation_id)); - - $single_order_investigations = explode(",",$ordered_investigation->investigation_id); - for ($w=0; $w < count($single_order_investigations) ; $w++) { - echo ''; - $all_order_ids_array[] = $ordered_investigation->id; - } - - array_push($order_ids, $ordered_investigation->id); - } - - $count_orders = count($order_ids); - - // create strings from arrays to use when submitting - $order_ids_string = implode(',', $order_ids); - $investigation_ids_string = implode(',', $investigation_ids); - - $investigation_amount = 0; - @endphp - - @for ($i = 0; $i < count($investigation_ids); $i++) - @php - // get insurance status for investigation - $investigation_insurance_status = get_name($investigation_ids[$i], "id", "insurance_coverage", "investigations"); - $investigation_amount_insurance = 0; - - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $investigation_ids[$i], 3, true, $inpatient_info->ward_id); - $investigation_amount = $item_insurance_details[2]; - $investigation_amount_insurance = $item_insurance_details[1]; - } else { - if ($price_list_id) { - $investigation_amount = get_price_list_category_price($price_list_id, 2, $investigation_ids[$i]); - } else { - $investigation_amount = get_name($investigation_ids[$i], "id", "non_insured_price", "investigations"); - } - } - - //check if there is a saved record in ward investigation pricing - $saved_ward_price = get_ward_investigation_pricing($patient_id, $episode_id, $investigation_ids[$i], $all_order_ids_array[$i]); - - //if the inv exists in ward pricing table use that price else use default - if($saved_ward_price != "N/A"){ - $investigation_amount = (is_null($price_list_set) || $price_list_set == "") ? $saved_ward_price : $investigation_amount; - } - - $saved_ward_chi_price = get_ward_investigation_chi_pricing($patient_id, $episode_id, $investigation_ids[$i], $all_order_ids_array[$i]); - $investigation_amount_insurance = $saved_ward_chi_price == 'N/A' ? $investigation_amount_insurance : $saved_ward_chi_price; - - $investigation_amount_total += $investigation_amount; - $insurance_investigations += $investigation_amount_insurance; - @endphp - @endfor - - - - - - - @if($insurance_investigations > 0) - - - - - @endif -
    {{ __('inpatient.investigation_total') }} - {{ ugandan_shillings_with_decimals($investigation_amount_total) }} -
    {{ __('inpatient.investigation_total_chi') }} - {{ ugandan_shillings_with_decimals($insurance_investigations) }} -
    -
    -
    - @endif - - whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $procedures_total_cost = 0; - ?> - @if(count($ward_procedures) > 0) -
    -
    - {{ __('inpatient.procedures') }} -
    - - - @foreach($ward_procedures as $ward_procedure) - @php - $procedure_amount_insurance = 0; - - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $ward_procedure->procedure_id, 2, true, $inpatient_info->ward_id); - $procedure_price = $item_insurance_details[2]; - $procedure_amount_insurance = $item_insurance_details[1]; - } else { - $procedure_price = 0; - if ($price_list_id) { - $procedure_price = get_price_list_category_price($price_list_id, 4, $ward_procedure->procedure_id); - } else { - $procedure_price = get_name($ward_procedure->procedure_id, "id", "non_insured_price", "procedures"); - } - } - - $procedure_price = (is_null($price_list_set) || $price_list_set == "") ? $ward_procedure->hospital_fee : $procedure_price; - $procedure_amount_insurance = $ward_procedure->chi_price; - - $procedures_cost = $procedure_price + $ward_procedure->staff_fee; - $procedures_total_cost += $procedures_cost; - $insurance_procedures += $procedure_amount_insurance; - @endphp - @endforeach - - - - - - - @if($insurance_procedures > 0) - - - - - @endif -
    {{ __('inpatient.procedures_total') }}{{ ugandan_shillings_with_decimals($procedures_total_cost) }}
    {{ __('inpatient.procedures_total_chi') }} - {{ ugandan_shillings_with_decimals($insurance_procedures) }} -
    -
    -
    - @endif - - @php - $opd_unpaid_procedures = \Streamline\Models\OrderedProcedure::where(['patient_id' => $patient_id, 'episode_id' => $episode_id,'payment_status' => 0])->get(); - $opd_procedures_total_cost = $opd_insurance_procedures = 0; - @endphp - - @if(count($opd_unpaid_procedures) > 0) - @php - $opd_procedure_ids = []; - $opd_procedure_order_ids = []; - // amounts at the time was ordered - $opd_procedures_orders_amounts = []; - - foreach($opd_unpaid_procedures as $opd_ordered_procedure){ - $opd_procedure_ids = array_merge($opd_procedure_ids, explode(",", $opd_ordered_procedure->procedure_id)); - array_push($opd_procedure_order_ids, $opd_ordered_procedure->id); - //if amounts are put at the time of ordering - $opd_procedures_orders_amounts = is_null($opd_ordered_procedure->procedure_amount) ? array_merge($opd_procedures_orders_amounts, []) : array_merge($opd_procedures_orders_amounts, explode(",", $opd_ordered_procedure->procedure_amount)); - } - - $opd_count_orders = count($opd_procedure_order_ids); - - // create strings from arrays to use when submitting - $opd_procedure_order_ids_string = implode(',', $opd_procedure_order_ids); - $opd_procedure_ids_string = implode(',', $opd_procedure_ids); - $procedure_orders_amounts_string = implode(',', $opd_procedures_orders_amounts); - @endphp - -
    -
    - {{ __('inpatient.unpaid_opd_procedures') }} -
    - - - - @php - $opd_procedure_amount = 0; - $opd_procedure_insurance_amount_total = 0; - @endphp - - @for ($i = 0; $i < count($opd_procedure_ids); $i++) - @php - $opd_insurance_amount = 0; - - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $opd_procedure_ids[$i], 2, true, $inpatient_info->ward_id); - $opd_procedure_amount = $item_insurance_details[2]; - $opd_insurance_amount = $item_insurance_details[1]; - } else { - // check if the patient category is attached to a price list - if ($price_list_id) { - $opd_procedure_amount = get_price_list_category_price($price_list_id, 4, $opd_procedure_ids[$i]); - } else { - //if amount was set at time of ordering - if (isset($opd_procedures_orders_amounts[$i]) && !is_null($opd_procedures_orders_amounts[$i])) { - $opd_procedure_amount = $opd_procedures_orders_amounts[$i]; - } else{ - $opd_procedure_amount = get_name($opd_procedure_ids[$i], "id", "non_insured_price", "procedures"); - } - } - } - - $opd_procedure_amount = $saved_procedures_prices[$opd_procedure_ids[$i]] ?? $opd_procedure_amount; - $opd_insurance_amount = $saved_chi_procedures_prices[$opd_procedure_ids[$i]] ?? $opd_insurance_amount; - - // add amounts to totals - $opd_procedure_amount_total += $opd_procedure_amount; - $opd_procedure_insurance_amount_total += $opd_insurance_amount; - @endphp - @endfor - - - - - - - @if($opd_procedure_insurance_amount_total > 0) - - - - - @endif - -
    {{ __('inpatient.procedures_total') }}{{ ugandan_shillings_with_decimals($opd_procedure_amount_total) }}
    {{ __('inpatient.procedures_total_chi') }}{{ ugandan_shillings_with_decimals($opd_procedure_insurance_amount_total) }}
    -
    -
    - @endif - - @php - $services_total_cost = 0; - $ward_services_quantities_given = DB::table('ward_consultations_and_services')->whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - @endphp - - @if(count($ward_services_quantities_given) > 0) -
    -
    - {{ __('inpatient.consultation_and_services') }} -
    - - - - @foreach($ward_services_quantities_given as $record) - @php - $services_cost = 0; - $service_amount_insurance = 0; - - $service_id = 0; - if(array_key_exists($record->service_id, $services_with_users_array)){ - $custom_service_name = $services_with_users_array[$record->service_id]; - $services_user_key = explode("__", $record->service_id); - $service_id = $services_user_key[0]; - } else { - $service_id = $record->service_id; - } - - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $service_id, 1, true, $inpatient_info->ward_id); - $services_cost = $item_insurance_details[2]; - $service_amount_insurance = $item_insurance_details[1]; - } else { - if ($price_list_id) { - $services_cost = get_price_list_category_price($price_list_id, 6, $service_id); - } else { - $services_cost = get_name($service_id, "id", "non_insured_price", "services"); - } - } - - $services_cost = (is_null($price_list_set) || $price_list_set == "") ? $record->unit_price : $services_cost; - $service_amount_insurance = $record->chi_price; - - $services_total_cost += ($services_cost * $record->quantity_given); - $insurance_services += ($record->quantity_given * $service_amount_insurance); - @endphp - @endforeach - - - - - - - - @if($insurance_services > 0) - - - - - @endif -
    {{ __('inpatient.services_total') }}{{ ugandan_shillings_with_decimals($services_total_cost) }}
    {{ __('inpatient.services_total_chi') }}{{ ugandan_shillings_with_decimals($insurance_services) }}
    -
    -
    - @endif - - @php - $opd_unpaid_services = \Streamline\Models\OrderedService::where(['patient_id' => $patient_id, 'episode_id' => $episode_id,'payment_status' => 0])->get(); - $opd_services_amount_total = $opd_services_insurance_amount_total = 0; - @endphp - @if(count($opd_unpaid_services) > 0) -
    -
    - {{ __('inpatient.unpaid_opd_services') }} -
    - - - - @foreach($opd_unpaid_services as $used_service) - @php - $service_ids = explode(",", $used_service->service_id); - $service_quantity = explode(",", $used_service->quantity); - $ordered_services_amounts = (is_null($used_service->service_amount) || $used_service->service_amount == '') ? []: explode(",", $used_service->service_amount); - @endphp - - @for($i = 0; $i < count($service_ids); $i++) - @php - $service_cost = 0; - $opd_service_insurance = 0; - - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $service_ids[$i], 1, true, $inpatient_info->ward_id); - $service_cost = $item_insurance_details[2]; - $opd_service_insurance = $item_insurance_details[1]; - } else { - if($price_list_set && $price_list_set != 0){ - $service_cost = get_price_list_category_price($price_list_set, 6, $service_ids[$i]); - }else if($price_list_id){ - $service_cost = get_price_list_category_price($price_list_id, 6, $service_ids[$i]); - } else { - $pre_order = \Streamline\Models\Services::withTrashed()->find($service_ids[$i]); - - //if amount was set at time of ordering - if (isset($ordered_services_amounts[$i]) && !is_null($ordered_services_amounts[$i])) { - $service_cost = $ordered_services_amounts[$i]; - } else{ - $service_cost = $pre_order->non_insured_price; - } - } - } - - $service_cost = $saved_services_prices[$service_ids[$i]] ?? $service_cost; - $opd_service_insurance = $saved_chi_services_prices[$service_ids[$i]] ?? $opd_service_insurance; - - $opd_services_amount_total += ($service_cost * $service_quantity[$i]); - $opd_services_insurance_amount_total += ($opd_service_insurance * $service_quantity[$i]); - @endphp - @endfor - @endforeach - - - - - - @if($opd_services_insurance_amount_total > 0) - - - - - @endif - -
    {{ __('inpatient.services_total') }}{{ ugandan_shillings_with_decimals($opd_services_amount_total) }}
    {{ __('inpatient.services_total_chi') }}{{ ugandan_shillings_with_decimals($opd_services_insurance_amount_total) }}
    -
    -
    - @endif - - {{--other_drugs_given)): ?> -
    -
    {{ __('inpatient.anaesthetics') }}
    - - - other_drugs_given); - $drugs_given_anae_cost = unserialize($anaesthesia->other_drugs_cost); - - $drugs = DB::table('drugs')->where('available', 1)->pluck('name', 'id'); - $units = DB::table('drug_units')->pluck('name', 'id'); - - foreach ($drugs_given_anae as $key => $value): - $name = (isset($value['id']) && isset($drugs[$value['id']])) ? $drugs[$value['id']] : ""; - $dose = isset($value['dose']) ? $value['dose'] : ""; - $unit = $units[$value['unit']]; - $cost = trim($drugs_given_anae_cost[$key]); - $drugs_given_anae_cost_total = + $cost; - echo "" - . "" - . "" - . "" - . ""; - endforeach; - ?> - -
    {$name}{$dose}{$unit}" . ugandan_shillings_with_decimals($cost) . "
    - --}} - -
    -
    - - @php - $category_to_pay_deposits = 0; - $patient_category_invoices_record = \Streamline\Models\PatientCategoryInvoice::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'patient_category' => $patient->category_id])->get(); - - $ward_discount_records = \Streamline\Models\InpatientWardDiscounts::where(['inpatient_info_id' => $inpatient_info->id])->get(); - $ward_discount_total = 0; - @endphp - - @if(count($patient_category_invoices_record) > 0 || count($ward_discount_records) > 0) -
    -
    -
    -
    -
    - {{ __('inpatient.invoices_created') }} -
    -
      - - @if(count($patient_category_invoices_record) > 0) - @foreach($patient_category_invoices_record as $invoice_record) - @if($invoice_record->tag_id == 9 || $invoice_record->tag_id == 10) -
    • - {{ get_name($invoice_record->patient_category, "id", "name", "patient_categories") }} ({{ $invoice_record->receipt_number }})  |  - {{ streamline_date($invoice_record->created_at) }} - - {{ ugandan_shillings_with_decimals($invoice_record->patient_amount) }} - - @php - $category_to_pay_deposits += $invoice_record->patient_amount; - @endphp -
    • - @endif - @endforeach -
    • - {{ __('inpatient.total_invoices_made') }} - - {{ ugandan_shillings_with_decimals($category_to_pay_deposits) }} - -
    • - @else -
    • {{ __('inpatient.no_invoices_made') }}
    • - @endif -
    -
    -
    -
    -
    -
    - {{ __('inpatient.ward_discount_amount') }} -
    -
      - @if(count($ward_discount_records) > 0) - @foreach($ward_discount_records as $ward_discount) -
    • - {{ get_name($ward_discount->ward_id, 'id', 'name', 'wards') }}  |  - {{ streamline_date($ward_discount->created_at) }} - - {{ ugandan_shillings_with_decimals($ward_discount->amount) }} - - @php - $ward_discount_total += $ward_discount->amount; - @endphp -
    • - @endforeach -
    • - {{ __('inpatient.ward_discount_amount') }} - - {{ ugandan_shillings_with_decimals($ward_discount_total) }} - -
    • - @else -
    • {{ __('inpatient.no_ward_discounts_given') }}
    • - @endif -
    -
    -
    -
    - @endif - - @php $deposits_total_cost = 0; $total_debt_deposits_paid = 0; @endphp - @if(count($service_deposits) > 0) -
    -
    -
    -
    -
    - {{ __('inpatient.deposits_received') }} -
    -
      - @foreach($service_deposits as $service_deposit) - @php - $item_ids_array = explode(",", $service_deposit->items_ids); - $item_amounts_array = explode(",", $service_deposit->items_amounts); - @endphp - - @if(($service_deposit->service_type == "Inpatient_Deposit") && ($service_deposit->patient_id == $patient_id) && ($service_deposit->episode_id == $episode_id)) -
    • - @php - $total_deposits_paid += $service_deposit->patient_amount_paid; - @endphp - {{ $service_deposit->receipt_number }}  |  - {{ streamline_date($service_deposit->created_at) }} - - {{ ugandan_shillings_with_decimals($service_deposit->patient_amount_paid) }} - -
    • - @endif - @endforeach -
    • - {{ __('inpatient.total_deposits_made') }} - - {{ ugandan_shillings_with_decimals($total_deposits_paid) }} - -
    • -
    -
    -
    -
    -
    -
    {{ __('inpatient.debt_plan_payments') }}
    -
      - @foreach($debt_plan_payments as $debt_plan_payment) -
    • - @php - $total_debt_deposits_paid += $debt_plan_payment->staff_guarantor_to_pay; - @endphp - {{ streamline_date($debt_plan_payment->created_at) }} - - {{ ugandan_shillings_with_decimals($debt_plan_payment->staff_guarantor_to_pay) }} - -
    • - @endforeach -
    • - {{ __('inpatient.total_deposits_made') }} - - {{ ugandan_shillings_with_decimals($total_debt_deposits_paid) }} - -
    • -
    -
    -
    -
    - @endif -
    -
    -
    - @php - $unpaid_opd_grand_total = $opd_unpaid_treatment_total + $opd_sundries_total_cost + $opd_services_amount_total + $opd_procedure_amount_total; - - $amount_to_pay = $extras_total_cost + $tta_total_cost + $procedures_total_cost + $sundries_total_cost + $treatment_total_cost + $ward_bed_admission_total_cost + $investigation_amount_total + $services_total_cost + $drugs_given_anae_cost_total + $unpaid_opd_grand_total; - - $total_insurance_payment = $chi_ward_accomodation_to_pay + $insurance_investigations + $insurance_treatments + $insurance_sundries + $insurance_procedures + $insurance_tta + $insurance_services + - $insurance_opd_treatment + $opd_insurance_sundries + $opd_services_insurance_amount_total + $opd_procedure_insurance_amount_total; - @endphp - - - - - - - @if(patient_insurance_status($patient_id) == 1)@endif - - - - - - - - - @if(patient_insurance_status($patient_id) == 1)@endif - - - - -
    {{ __('inpatient.total_amount_to_pay') }}{{ __('inpatient.patient_to_pay_total') }}{{ __('inpatient.insurance_to_pay_total') }}{{ __('inpatient.total_deposits_made') }}{{ __('inpatient.patient_balance_to_pay') }}
    {{ ugandan_shillings_with_decimals((int)$total_insurance_payment + (int)$amount_to_pay) }}{{ ugandan_shillings_with_decimals((int)$amount_to_pay) }}{{ ugandan_shillings_with_decimals($total_insurance_payment) }}{{ ugandan_shillings_with_decimals((int)$total_deposits_paid) }}{{ ugandan_shillings_with_decimals((int)$amount_to_pay - (int)$total_deposits_paid - (int)$category_to_pay_deposits - (int)$ward_discount_total - (int)$total_debt_deposits_paid) }}
    -
    -
    -
    -
    -
    - @php - $inpatient_bill = \Streamline\Models\InpatientBill::where(['episode_id' => $episode_id, 'patient_id' => $patient_id])->first(); - @endphp - -
    -
    - {{ __('inpatient.bill_checked_by') }} -
    -
      -
    • - @if ($inpatient_bill) -

      - {{ __('inpatient.bill_authorized_by') }}: - @php - $bill_authorized_by_array = is_null($inpatient_bill->bill_authorized_by) ? [] : explode(",", $inpatient_bill->bill_authorized_by); - $bill_authorized_at_array = is_null($inpatient_bill->bill_authorized_at) ? [] : explode(",",$inpatient_bill->bill_authorized_at); - @endphp - @for ($i = 0; $i < count($bill_authorized_by_array); $i++) - {{ get_full_name($bill_authorized_by_array[$i], "id", "first_name", "last_name", "users") }} {{ __('inpatient.on') }} {{ streamline_date_time($bill_authorized_at_array[$i]) }} - @endfor -

      - @endif - - first_name . ' ' . Auth::user()->last_name; ?> - - {{ streamline_date_time(date("Y-m-d H:i:s")) }} - -    .................................................................. -
    • -
    -
    -
    -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_billing.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_billing.blade.php deleted file mode 100755 index 428521ed..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_billing.blade.php +++ /dev/null @@ -1,3169 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('inpatient.inpatient_billing') }}

    -
    - -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - -
    - - @include('flash::message') - - @php - $total_deposits_paid = 0; - $total_amount_to_pay = 0; - $discount_amount = 0; - $insurance_investigations = 0; - $insurance_treatments = 0; - $insurance_sundries = 0; - $insurance_services = 0; - $insurance_procedures = 0; - $insurance_tta = 0; - $investigation_amount_total = 0; - $insurance_opd_treatment = 0; - $opd_procedure_insurance_amount_total = 0; - $opd_unpaid_treatment_total = $opd_sundries_total_cost = $opd_services_amount_total = $opd_procedure_amount_total = 0; - - $price_list_set_serial = serialize(['price_list_set' => $price_list_set]); - $patient_insurance_status = (patient_insurance_status($patient_id) == 1); - $counter = 0; - $bill_closed = false; - @endphp - -
    - @php $price_list_id = is_patient_category_attached_to_price_list($patient_id); @endphp - @if(Auth::user()->can('price-list-category-change-billing') && !$patient_insurance_status) - {{ Form::open(['route' => 'inpatient_billing', 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('price_list_category_id', __('inpatient.price_list_category')) }} - -
    -
    -
    -
    - {{ Form::button(__('inpatient.apply_changes'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    - -
    - - {{ Form::close() }} - @endif - - @if(is_null($inpatient_info->bed_category_id)) -

    {{ __('inpatient.select_bed_category_warning') }}

    - @endif -
    -
    -
    - - {{ Form::open(['route' => 'store_inpatient_bill', 'id' => 'inpatient_bill_form']) }} - {{ Form::hidden('billing_price_list', $price_list_set) }} - {{ Form::hidden('patient_insurance_status', $patient_insurance_status) }} -
    - - - - - - - - - - - - - @if($inpatient_info->discharged == 1) - @php $end_date = new DateTime($inpatient_info->discharged_on) @endphp - @else - @php $end_date = new DateTime(date('Y-m-d')) @endphp - @endif - - @php - $start_date = new DateTime($inpatient_info->admitted_on); - $days_spent_in_ward = ($end_date->diff($start_date)->format('%a')); - @endphp - - - {{ Form::hidden("duration", $days_spent_in_ward) }} - {{ Form::hidden("inpatient_info_id", $inpatient_info->id) }} - - @if($inpatient_info->discharged == 1) - - @else - - @endif - - - - -
    {{ __('inpatient.ward') }}{{ get_name($inpatient_info->ward_id, 'id', 'name', 'wards') }}{{ __('inpatient.bed_category') }} - @if(is_null($inpatient_info->bed_category_id)) - - @else - {{ get_name($inpatient_info->bed_category_id, 'id', 'name', 'inpatient_bed_categories') }} - @endif - {{ __('inpatient.residence') }}{{ patient_residence($patient->id) }}
    {{ __('inpatient.admitted') }}{{ streamline_date($inpatient_info->admitted_on) }} ( {{ $days_spent_in_ward }} days){{ __('inpatient.discharged_on') }}{{ streamline_date($inpatient_info->discharged_on) }}{{ __('inpatient.still_admitted') }}{{ __('inpatient.category') }} - {{ get_name($patient->category_id, 'id', 'name', 'patient_categories') }} - - @if(!is_null($patient_discount)) - ({{ $patient_discount["discount"] }} % {{ __('inpatient.discount') }}) - @endif -
    -
    -
    -
    - - $patient_id, 'episode_id' => $episode_id])->get(); - $ward_bed_admission_total_cost = $chi_ward_accomodation_to_pay = 0; - ?> - - @if(count($ward_bed_stays) > 0) -
    -
    {{ __('inpatient.accomodation') }}
    {{ __('inpatient.view_bed_admission_details') }}
    -
    -
    - - - - - - - - - - - - - - @if(count($ward_bed_stays) > 0) - @foreach($ward_bed_stays as $bed_record) - @php - $accomodation_cost = $bed_record->bed_fee_total; - $chi_accomodation_cost = $bed_record->chi_bed_fee_total; - $chi_ward_accomodation_to_pay += $chi_accomodation_cost; - $ward_bed_admission_total_cost += $accomodation_cost; - @endphp - - - - - - - - - - - @endforeach - @endif - -
    {{ __('inpatient.bed_no') }}{{ __('inpatient.bed_category') }}{{ __('inpatient.from') }}{{ __('inpatient.to') }}{{ __('inpatient.duration') }}{{ __('inpatient.patient_to_pay') }}{{ __('inpatient.insurance_to_pay') }}
    {{ $bed_record->bed_number}}{{ get_name($bed_record->bed_category, "id", "name", "inpatient_bed_categories") }}{{ streamline_date($bed_record->from) }}{{ streamline_date($bed_record->to) }}{{ $bed_record->duration }}{{ ugandan_shillings_with_decimals($accomodation_cost) }} - {{ ugandan_shillings_with_decimals($chi_accomodation_cost) }} -
    -
    -
    -
    - {{ __('inpatient.patient_to_pay') }} -
    - {{ Form::hidden('ward_bed_admission_cost', $ward_bed_admission_total_cost, ['id' => 'ward_bed_admission_cost']) }} - {{ Form::text('display_ward_bed_admission_cost', ugandan_shillings_with_decimals($ward_bed_admission_total_cost), ['class' => 'form-control compulsory', 'readonly', 'id' => 'display_ward_bed_admission_cost']) }} - @if($patient_insurance_status) -
    - {{ __('inpatient.insurance_to_pay') }} -
    - {{ Form::hidden('insurance_admission_cost', $chi_ward_accomodation_to_pay, ['id' => 'insurance_admission_cost']) }} - {{ Form::text('display_insurance_ward_bed_admission_cost', ugandan_shillings_with_decimals($chi_ward_accomodation_to_pay), ['class' => 'form-control compulsory', 'readonly']) }} - @endif -
    -
    - @endif - @php $admission_cost = $ward_bed_admission_total_cost; @endphp - -
    - -
    count() < 1) style="display: none" @endif> -
    - {{ __('inpatient.investigations') }}
    {{ __('inpatient.view_investigation_details') }} -
    -
    -
    - - - - - - - - - - @if(count($ordered_ward_investigations) > 0) - @php - // ids of the ordered investigations - $investigation_ids = $ward_inv_pricing = $order_ids = $all_order_ids_array = []; - - foreach($ordered_ward_investigations as $ordered_investigation){ - if (get_investigation_billing_mode() == 1 && $ordered_investigation->investigation_status == 0) { - // no results yet, so ignore - continue; - } - - $investigation_ids = array_merge($investigation_ids, explode(",", $ordered_investigation->investigation_id)); - $ward_inv_pricing = array_merge($ward_inv_pricing, explode(",", $ordered_investigation->ward_pricing_id)); - - $single_order_investigations = explode(",",$ordered_investigation->investigation_id); - for ($w=0; $w < count($single_order_investigations) ; $w++) { - echo ''; - $all_order_ids_array[] = $ordered_investigation->id; - } - - array_push($order_ids, $ordered_investigation->id); - } - - $count_orders = count($order_ids); - - // create strings from arrays to use when submitting - $investigation_ids_string = implode(',', $investigation_ids); - - $investigation_amount = 0; - @endphp - - {{ Form::hidden('investigation_ids', $investigation_ids_string) }} - - @for ($i = 0; $i < count($investigation_ids); $i++) - @php - // get insurance status for investigation - $investigation_insurance_status = get_name($investigation_ids[$i], "id", "insurance_coverage", "investigations"); - - // insurance flag - $is_insured = 0; - $tariff_id = 0; - $benefit_id = 0; - $investigation_amount_insurance = 0; - - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $investigation_ids[$i], 3, true, $inpatient_info->ward_id); - $investigation_amount = $item_insurance_details[2]; - $investigation_amount_insurance = $item_insurance_details[1]; - $is_insured = $item_insurance_details[0]; - $tariff_id = $item_insurance_details[3]; - $benefit_id = $item_insurance_details[4]; - } else { - if ($price_list_set && $price_list_set != 0){ - $investigation_amount = get_price_list_category_price($price_list_set, 2, $investigation_ids[$i]); - } elseif ($price_list_id) { - $investigation_amount = get_price_list_category_price($price_list_id, 2, $investigation_ids[$i]); - } else { - $investigation_amount = get_name($investigation_ids[$i], "id", "non_insured_price", "investigations"); - } - } - - if (isset($ward_inv_pricing[$i]) && is_numeric($ward_inv_pricing[$i])) { - $saved_prices = get_investigation_ward_pricing_by_id($ward_inv_pricing[$i]); - $saved_ward_chi_price = $saved_prices[1]; - $saved_ward_price = $saved_prices[0]; - } else { - $saved_prices = get_investigation_ward_pricing($patient_id, $episode_id, $investigation_ids[$i], $all_order_ids_array[$i]); - $saved_ward_chi_price = $saved_prices[1]; - $saved_ward_price = $saved_prices[0]; - - if($saved_prices[2]) { - $ward_inv_pricing[$i] = $saved_prices[2]; - } - } - - //if the inv exists in ward pricing table use that price else use default - if($saved_ward_price != "N/A"){ - $investigation_amount = (is_null($price_list_set) || $price_list_set == "") ? $saved_ward_price : $investigation_amount; - } - - $investigation_amount_insurance = $saved_ward_chi_price == 'N/A' ? $investigation_amount_insurance : $saved_ward_chi_price; - - $investigation_amount_total += $investigation_amount; - $insurance_investigations += $investigation_amount_insurance; - @endphp - - - - - - - - @php $counter++; @endphp - @endfor - @else - - - - @endif - -
    {{ __('inpatient.name') }}{{ __('inpatient.patient_to_pay') }}{{ __('inpatient.insurance_to_pay') }}
    - @if($is_insured == 1) - - @else - - @endif - - {{ Form::hidden('investigations_item_ids[]', $investigation_ids[$i]) }} - {{ Form::hidden('investigations_tariff_ids[]', $tariff_id) }} - {{ Form::hidden('investigations_benefit_ids[]', $benefit_id) }} - {{ Form::hidden('ward_inv_pricing_ids[]', ((isset($ward_inv_pricing[$i]) && is_numeric($ward_inv_pricing[$i])) ? $ward_inv_pricing[$i] : 0)) }} - - @if(Auth::user()->can('edit-investigation-prices-on-inpatient-bill') && $is_insured == 0) - {{ Form::number('investigation_amount[]', $investigation_amount, ['class' => 'form-control investigation_amount', 'id' => 'investigation_amount_' . $counter]) }} - @else - {{ Form::number('investigation_amount[]', $investigation_amount, ['class' => 'form-control investigation_amount', 'readonly', 'id' => 'investigation_amount_' . $counter]) }} - @endif - - {{ Form::hidden('investigation_insured[]', $is_insured) }} - {{ Form::hidden('investigation_summed_amount[]', ($investigation_amount_insurance + $investigation_amount), ['id' => 'investigation_summed_amount_' . $counter]) }} - - @if($is_insured == 1 && Auth::user()->can('chi-to-pay-edit')) - {{ Form::number('investigation_insurance_amount[]', $investigation_amount_insurance, ['class' => 'form-control investigation_insurance_amount', 'id' => 'investigation_insurance_amount_' . $counter]) }} - @else - {{ Form::number('investigation_insurance_amount[]', $investigation_amount_insurance, ['class' => 'form-control investigation_insurance_amount', 'readonly', 'id' => 'investigation_insurance_amount_' . $counter]) }} - @endif -
    {{ __('inpatient.no_investigations_ordered') }}
    -
    -
    -
    - {{ __('inpatient.patient_to_pay') }} -
    - {{ Form::hidden('investigation_cost', $investigation_amount_total, ['id' => 'investigation_cost']) }} - {{ Form::hidden('insurance_investigation_cost', $insurance_investigations, ['id' => 'insurance_investigation_cost']) }} - {{ Form::text('display_investigation_cost', ugandan_shillings_with_decimals($investigation_amount_total), ['class' => 'form-control compulsory', 'readonly','id' => 'display_investigation_cost']) }} - - @if($patient_insurance_status) -
    {{ __('inpatient.insurance_to_pay') }}
    - {{ Form::text('display_insurance_investigation_cost', ugandan_shillings_with_decimals($insurance_investigations), ['class' => 'form-control compulsory', 'readonly','id' => 'display_insurance_investigation_cost']) }} - @endif -
    -
    - -
    count() < 1) style="display: none" @endif> - - @php - $inpatient_info_ward_treatments_array = unserialize($inpatient_info->ward_treatments); - $this_drug_sp = 0; - $insurance_treatment_to_pay = 0; - @endphp - - - - {{-- opd unpaid treatments --}} - @php - $opd_unpaid_treatments = \Streamline\Models\Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id,'payment_status' => 0, 'tta' => 0])->get(); - @endphp - - @if (count($opd_unpaid_treatments) > 0) -
    - - @endif - - {{-- sundries section below --}} -
    count() < 1) style="display: none" @endif> - - whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->groupBy('sundry_id')->selectRaw('*, sum(quantity_given) as quantity_given')->get(); - ?> - - - - {{-- opd unpaid sundries --}} - @php - $opd_unpaid_sundries = \Streamline\Models\OrderedSundry::where(['patient_id' => $patient_id, 'episode_id' => $episode_id,'payment_status' => 0,'inpatient_bill_generated' => 0])->get(); - $opd_sundries_total_cost = $opd_insurance_sundries = 0; - @endphp - @if (count($opd_unpaid_sundries) > 0) -
    - @php - $opd_sundries_ids = []; - $opd_sundries_quantity = []; - $opd_sundry_order_ids = []; - $opd_sundries_orders_amounts = []; - $opd_unit_sundries_selling_prices_array = []; - - foreach($opd_unpaid_sundries as $opd_ordered_sundry){ - $opd_sundries_ids = array_merge($opd_sundries_ids, explode(",", $opd_ordered_sundry->sundries_id)); - $opd_sundries_quantity = array_merge($opd_sundries_quantity, explode(",",$opd_ordered_sundry->quantity)); - $opd_unit_sundries_selling_prices_array = array_merge($opd_unit_sundries_selling_prices_array, explode(",",$opd_ordered_sundry->sundries_amount));// is_null($treatment->sundries_amount) ? [] : explode(",", $treatment->unit_selling_prices); - array_push($opd_sundry_order_ids, $opd_ordered_sundry->id); - //if amounts are put at the time of ordering - $opd_sundries_orders_amounts = is_null($opd_ordered_sundry->sundries_amount) ? array_merge($opd_sundries_orders_amounts, []) : array_merge($opd_sundries_orders_amounts, explode(",", $opd_ordered_sundry->sundries_amount)); - } - - $count_orders = count($opd_sundry_order_ids); - - // create strings from arrays to use when submitting - $opd_sundry_order_ids_string = implode(',', $opd_sundry_order_ids); - @endphp - - @endif - - {{-- services section below --}} -
    - - @php - $services_total_cost = 0; - $ward_services_quantities_given = DB::table('ward_consultations_and_services')->whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - @endphp - - - {{-- opd unpaid services --}} - @php - $opd_unpaid_services = \Streamline\Models\OrderedService::where(['patient_id' => $patient_id, 'episode_id' => $episode_id,'payment_status' => 0,'inpatient_bill_generated' => 0])->get(); - $opd_services_amount_total = $opd_services_insurance_amount_total = 0; - @endphp - @if (count($opd_unpaid_services) > 0) -
    - - @endif - -
    - - @php - $ward_procedures = DB::table('ward_procedures')->whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $procedures_total_cost = 0; - @endphp - - - - {{-- opd unpaid procedures --}} - @php - $opd_unpaid_procedures = \Streamline\Models\OrderedProcedure::where(['patient_id' => $patient_id, 'episode_id' => $episode_id,'payment_status' => 0,'inpatient_bill_generated' => 0])->get(); - $opd_procedures_total_cost = $opd_insurance_procedures = 0; - @endphp - -
    - @if (count($opd_unpaid_procedures) > 0) - @php - $opd_procedure_ids = []; - $opd_procedure_order_ids = []; - // amounts at the time was ordered - $opd_procedures_orders_amounts = []; - - foreach($opd_unpaid_procedures as $opd_ordered_procedure){ - $opd_procedure_ids = array_merge($opd_procedure_ids, explode(",", $opd_ordered_procedure->procedure_id)); - array_push($opd_procedure_order_ids, $opd_ordered_procedure->id); - //if amounts are put at the time of ordering - $opd_procedures_orders_amounts = is_null($opd_ordered_procedure->procedure_amount) ? array_merge($opd_procedures_orders_amounts, []) : array_merge($opd_procedures_orders_amounts, explode(",", $opd_ordered_procedure->procedure_amount)); - } - - $opd_count_orders = count($opd_procedure_order_ids); - - // create strings from arrays to use when submitting - $opd_procedure_order_ids_string = implode(',', $opd_procedure_order_ids); - $opd_procedure_ids_string = implode(',', $opd_procedure_ids); - $procedure_orders_amounts_string = implode(',', $opd_procedures_orders_amounts); - @endphp - - - @endif - -
    - - @php $drugs_given_anae_cost_total = 0; @endphp - - {{--other_drugs_given)): ?> -
    -
    {{ __('inpatient.anaesthetics') }}
    -
    - - - - - - - - - - other_drugs_given); - $drugs_given_anae_cost = unserialize($anaesthesia->other_drugs_cost); - $do_not_bill_other_drugs = explode(",", $anaesthesia->other_drugs_bill); - - $drugs = DB::table('drugs')->where('available', 1)->whereNull('deleted_at')->pluck('name', 'id'); - $units = DB::table('drug_units')->whereNull('deleted_at')->pluck('name', 'id'); - - if (count($drugs_given_anae) > 0) { - foreach ($drugs_given_anae as $key => $value) { - if (isset($drugs[$value['id']]) && !in_array($value['id'], $do_not_bill_other_drugs)) { - $name = $drugs[$value['id']] ?? ""; - $dose = $value['dose'] ?? ""; - $unit = $units[$value['unit']] ?? ""; - $cost = isset($drugs_given_anae_cost[$key]) ? trim($drugs_given_anae_cost[$key]) : 0; - $drugs_given_anae_cost_total += $cost; - echo "" - . "" - . "" - . "" - . ""; - } - } - } - ?> - -
    {{ __('inpatient.drug_name') }}{{ __('inpatient.dose') }}{{ __('inpatient.unit_price') }}
    {$name}{$dose}{$unit}".ugandan_shillings_with_decimals($cost)."
    -
    -
    - 'form-control compulsory', 'readonly']); ?> -
    -
    -
    - --}} - - - -
    - - - whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - ?> - - - -
    - - @php - $unpaid_opd_grand_total = $opd_unpaid_treatment_total + $opd_sundries_total_cost + $opd_services_amount_total + $opd_procedure_amount_total; - - $amount_to_pay = $extras_total_cost + $tta_total_cost + $procedures_total_cost + $sundries_total_cost + $treatment_total_cost + $admission_cost + $investigation_amount_total + $services_total_cost + $drugs_given_anae_cost_total + $unpaid_opd_grand_total; - - $total_insurance_payment = $chi_ward_accomodation_to_pay + $insurance_investigations + $insurance_treatments + $insurance_sundries + $insurance_procedures + $insurance_tta + $insurance_services + - $insurance_opd_treatment + $opd_insurance_sundries + $opd_services_insurance_amount_total + $opd_procedure_insurance_amount_total; - @endphp - - @if(count($service_deposits) > 0) - @foreach($service_deposits as $service_deposit) - @if(($service_deposit->service_type == "Inpatient_Deposit") && ($service_deposit->patient_id == $patient_id) && ($service_deposit->episode_id == $episode_id)) - @php - $total_deposits_paid += $service_deposit->patient_amount_paid; - @endphp - @endif - @endforeach - @endif - - @php - $co_payment = check_patient_category_co_payment_status($patient->category_id); - $total_copayment_share = 0; - if(!empty($co_payment) && $co_payment['co_payment_share'] != 0){ - $total_copayment_share = $amount_to_pay / $co_payment['co_payment_share']; - } - @endphp - -
    -
    - {{ __('inpatient.initial_total_bill') }} -

    - {{ Form::text('display_insurance_amount_owed', ugandan_shillings_with_decimals((int)$total_insurance_payment + (int)$amount_to_pay), ['class' => 'form-control compulsory', 'readonly']) }} -
    -
    - {{ __('inpatient.patient_to_pay_total') }} -

    - {{ Form::hidden('original_amount_owed', (int)$amount_to_pay, ['id' => 'original_amount_owed']) }} - {{ Form::text('display_amount_owed', ugandan_shillings_with_decimals((int)$amount_to_pay), ['class' => 'form-control compulsory', 'readonly', 'id' => 'display_amount_owed']) }} -
    - @if($total_insurance_payment == 0) -
    - {{ __('inpatient.insurance_to_pay_total') }} -

    - {{ Form::hidden('original_insurance_amount_owed', (int)$total_insurance_payment, ['id' => 'original_insurance_amount_owed']) }} - {{ Form::text('display_insurance_amount_owed', ugandan_shillings_with_decimals($total_insurance_payment), ['class' => 'form-control compulsory', 'readonly', 'id' => 'display_insurance_amount_owed']) }} -
    - @endif -
    -
    - - @php - $ward_discount_records = \Streamline\Models\InpatientWardDiscounts::where(['inpatient_info_id' => $inpatient_info->id])->get(); - $ward_discount_total = 0; - @endphp - @if(count($ward_discount_records) > 0) -
    -
    -
    {{ __('inpatient.ward_discount_amount') }}
    -
    -
    - - - - - - - - - - - @if(count($ward_discount_records) > 0) - @foreach($ward_discount_records as $ward_discount) - - - - - - @php - $ward_discount_total += $ward_discount->amount; - @endphp - - @endforeach - @else - - - - @endif - -
    {{ __('inpatient.staff_in_charge') }}{{ __('inpatient.ward') }}{{ __('inpatient.amount') }}{{ __('inpatient.date_received') }}
    {{ get_full_name($ward_discount->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ get_name($ward_discount->ward_id, 'id', 'name', 'wards') }}{{ ugandan_shillings_with_decimals($ward_discount->amount) }}{{ streamline_date_time($ward_discount->created_at) }}
    {{ __('inpatient.no_ward_discounts_given') }}
    -
    -
    -
    - {{ __('inpatient.total_ward_discount_amount') }} -
    - {{ Form::hidden('ward_discount_total', $ward_discount_total, ['id' => 'ward_discount_total']) }} - {{ Form::text('display_ward_discount_total', ugandan_shillings_with_decimals($ward_discount_total), ['class' => 'form-control compulsory', 'readonly']) }} -
    -
    - @endif - -
    - @php - $category_to_pay_deposits = 0; - $patient_category_invoices_record = \Streamline\Models\PatientCategoryInvoice::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'patient_category' => $patient->category_id])->get(); - @endphp - - - -
    - @php - $dependant_consumptions_total = 0; - $dependant_consumptions = \Streamline\Models\DependantsConsumption::where(['dependant_patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - @endphp - - - -
    - - @php - $debt_plan_total = 0; - $debt_plan_payments = \Streamline\Models\DebtPlan::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'tag_id' => 10])->get(); - @endphp - - - -
    - - - -
    - - @if (Auth::user()->can('view-inpatient-bill-saving-history')) - @if ($inpatient_bill_info && !is_null($inpatient_bill_info->bill_saved_by)) - @php - $bill_savers_array = explode(",", $inpatient_bill_info->bill_saved_by); - $saver_timestamps_array = explode(",", $inpatient_bill_info->bill_saved_at); - @endphp -
    -
    - {{ __('inpatient.bill_saving_trail') }} -
    - @for ($i = 0; $i < count($bill_savers_array); $i++) - @if (isset($bill_savers_array[$i]) && isset($saver_timestamps_array[$i])) -
      -
    • - {{ get_full_name($bill_savers_array[$i], "id", "first_name", "last_name", "users") }} - {{ streamline_date_time($saver_timestamps_array[$i]) }} -
    • -
    - @endif - @endfor -
    - -
    - @endif - @endif - -

    {{ __('inpatient.bill_checked_by') }}: {{ get_full_name(Illuminate\Support\Facades\Auth::id(), "id", "first_name", "last_name", "users") }} {{ __('inpatient.on') }} {{ streamline_date_time(date("Y-m-d")) }}

    - - - @if ($inpatient_bill_info) -

    - {{ __('inpatient.bill_authorized_by') }}: - @php - $bill_authorized_by_array = is_null($inpatient_bill_info->bill_authorized_by) ? [] : explode(",", $inpatient_bill_info->bill_authorized_by); - $bill_authorized_at_array = is_null($inpatient_bill_info->bill_authorized_at) ? [] : explode(",",$inpatient_bill_info->bill_authorized_at); - $bill_closed = $inpatient_bill_info->bill_closed == 1; - @endphp - @for ($i = 0; $i < count($bill_authorized_by_array); $i++) - {{ get_full_name($bill_authorized_by_array[$i], "id", "first_name", "last_name", "users") }} {{ __('inpatient.on') }} {{ streamline_date_time($bill_authorized_at_array[$i]) }} - @endfor -

    - - @if($inpatient_bill_info->bill_closed == 1) -

    - {{ __('inpatient.bill_closed_by') }}: - - {{ get_full_name($inpatient_bill_info->bill_closed_by, "id", "first_name", "last_name", "users") }} {{ __('inpatient.on') }} {{ streamline_date_time($inpatient_bill_info->bill_closed_at) }} -

    - @endif - @endif - -
    - -
    - @if( Auth::user()->can('view-inpatient-sheet')) - - @endif - - @if(Auth::user()->can('view-recalculate-inpatient-bill') && !$bill_closed) -
    - {{ Form::button(__('inpatient.re_calculate_bill'),['type'=>'submit','class' => 'btn btn-success col-md-12', 'name'=>'submit-btn','value'=>'re_calculate_bill', 'id' => 'recalculateBillBtn']) }} -
    - @endif - - @if( Auth::user()->can('authorize-inpatient-bill') && !$bill_closed) -
    - {{ Form::button(__('inpatient.authorize_bill'),['type'=>'submit','class' => 'btn btn-primary col-md-12', 'name'=>'submit-btn','value'=>'authorize_bill']) }} -
    - @endif - - - - - - @if (Auth::user()->can('pay-inpatient-bill-from-inpatient-billing-page') && !$bill_closed) -
    - {{ Form::button(__('inpatient.pay_bill'),['type'=>'submit','class' => 'btn btn-success col-md-12', 'name'=>'submit-btn','value'=>'pay_bill']) }} -
    - @endif - - @if (Auth::user()->can('open-inpatient-bill') && $bill_closed) - - @endif -
    - -
    - -
    - @if (Auth::user()->can('save-inpatient-bill') && !$bill_closed) -
    - {{ Form::button(__('inpatient.save_bill'),['type'=>'submit','class' => 'btn btn-success col-md-12', 'name'=>'submit-btn','value'=>'save']) }} -
    - @endif - - @if (Auth::user()->can('save-and-close-inpatient-bill') && $inpatient_info->discharged == 1 && !$bill_closed) -
    - {{ Form::button(__('inpatient.save_close_bill'),['type'=>'submit','class' => 'btn btn-success col-md-12', 'name'=>'submit-btn','value'=>'save_close_bill', 'id' => 'save_close_bill']) }} -
    - @endif -
    - - {{ Form::close() }} -
    - - - - - - - - - - - - - - - - -@endsection - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_billing_print.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_billing_print.blade.php deleted file mode 100755 index 52f31feb..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_billing_print.blade.php +++ /dev/null @@ -1,1415 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Inpatient Bill - Stre@mline') }} - - - - - - - - @php - $total_deposits_paid = 0; - $total_amount_to_pay = 0; - $discount_amount = 0; - $insurance_hospital_stay = 0; - $insurance_investigations = 0; - $insurance_treatments = 0; - $insurance_to_pay = 0; - $insurance_sundries = 0; - $insurance_procedures = 0; - $insurance_tta = 0; - $insurance_services = 0; - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - $investigation_amount_total = 0; - $insurance_opd_treatment = 0; - $opd_unpaid_treatment_total = $opd_sundries_total_cost = $opd_services_amount_total = $opd_procedure_amount_total = 0; - $patient_insurance_status = (patient_insurance_status($patient_id) == 1); - $chi_ward_accomodation_to_pay = 0; - $drugs_given_anae_cost_total = 0; - $opd_procedure_insurance_amount_total = 0; - @endphp - - -
    - @include('layouts.header_pdf_print') - -
    {{ __('inpatient.inpatient_bill_details') }}
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('inpatient.patient_number') }}{{ $patient->number}} {{ __('inpatient.ward') }} - {{ get_name($inpatient_info->ward_id, 'id', 'name', 'wards') }}  |  - @if($inpatient_info->bed_category_id) - {{ get_name($inpatient_info->bed_category_id, 'id', 'name', 'inpatient_bed_categories') }} - @endif -
    {{ __('inpatient.patient_names') }}{{ $patient->first_name}} {{ $patient->last_name}} {{ __('inpatient.admitted') }} - @if($inpatient_info->discharged == 1) - @php $end_date = new DateTime($inpatient_info->discharged_on) @endphp - @else - @php $end_date = new DateTime(date('Y-m-d')) @endphp - @endif - - @php - $start_date = new DateTime($inpatient_info->admitted_on); - $days_spent_in_ward = ($end_date->diff($start_date)->format('%a')); - @endphp - - {{ streamline_date($inpatient_info->admitted_on) }} ( {{ $days_spent_in_ward }} {{ __('inpatient.days') }}) -
    {{ __('inpatient.age') }}date_of_birth); ?> {{ __('inpatient.discharged') }} - @if($inpatient_info->discharged == 1) - {{ streamline_date($inpatient_info->discharged_on) }} - @else - {{ __('inpatient.still_admitted') }} - @endif -
    {{ __('inpatient.gender') }}{{ $patient->gender == 1 ? __('inpatient.male') : __('inpatient.female') }} {{ __('inpatient.category') }} - {{ get_name($patient->category_id, 'id', 'name', 'patient_categories') }} - - @if(!is_null($patient_discount)) - ({{ $patient_discount["discount"] }} % {{ __('inpatient.discount') }}) - @endif -
    -
    - -
    -
    - @php $tta_total_cost = 0; @endphp - @if(count($treatment_to_take_away) > 0) -
    -
    - {{ __('inpatient.tta') }} -
    - - - - - - - - - - - - - @foreach($treatment_to_take_away as $treatment) - @php - $tta_drugs_array = explode(",", $treatment->drugs); - $tta_dispensed_array = explode(",", $treatment->quantities_dispensed); - @endphp - - @for($x = 0; $x < count($tta_drugs_array); $x++) - @php - $tariff_id = 0; - $benefit_id = 0; - $tta_insurance_amount = 0; - - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $tta_drugs_array[$x], 4, true, $inpatient_info->ward_id); - $drugs_cost = $item_insurance_details[2]; - $tta_insurance_amount = $item_insurance_details[1]; - $tariff_id = $item_insurance_details[3]; - $benefit_id = $item_insurance_details[4]; - } else { - if (isset($tta_unit_selling_prices_array[$x])) { - $drugs_cost = is_numeric($tta_unit_selling_prices_array[$x]) ? $tta_unit_selling_prices_array[$x] : 0; - } else { - if ($price_list_id) { - $drugs_cost = get_price_list_category_price($price_list_id, 3, $tta_drugs_array[$x]); - } else { - $drugs_cost = get_name($tta_drugs_array[$x], "id", "non_insured_price", "drugs"); - } - } - } - - $drugs_cost = $saved_tta_prices[$tta_drugs_array[$x]] ?? $drugs_cost; - $tta_insurance_amount = $saved_chi_tta_prices[$tta_drugs_array[$x]] ?? $tta_insurance_amount; - - $insurance_tta += $tta_dispensed_array[$x] * $tta_insurance_amount; - $tta_total_cost += $drugs_cost * $tta_dispensed_array[$x]; - @endphp - - - - - - - - - @endfor - @endforeach - - - - - -
    {{ __('inpatient.date') }}{{ __('inpatient.name') }}{{ __('inpatient.quantity') }}{{ __('inpatient.unit_cost') }}{{ __('inpatient.patient_to_pay') }}{{ __('inpatient.insurance_to_pay') }}
    - {{ streamline_date($treatment->created_at) }} - {{ get_name($tta_drugs_array[$x], "id", "name", "drugs") }}{{ $tta_dispensed_array[$x] }}{{ ugandan_shillings_with_decimals($drugs_cost) }}{{ ugandan_shillings_with_decimals((int)$drugs_cost * (int)$tta_dispensed_array[$x]) }}{{ ugandan_shillings_with_decimals((int)$tta_insurance_amount * (int)$tta_dispensed_array[$x]) }}
    {{ __('inpatient.tta_total') }}{{ ugandan_shillings_with_decimals((int)$tta_total_cost) }}{{ ugandan_shillings_with_decimals($insurance_tta) }}
    -
    -
    - @endif - - - - @if(count($dispensed_drug_quantity_given_array) > 0) -
    - @if(get_ward_prescription_model() == 1 || $patient_insurance_status) -
    - {{ __('inpatient.treatments') }} -
    - - - - - - - - - - - - - @foreach($dispensed_drug_quantity_given_array as $drug_id => $quantity_given) - - @php - $created_at = now(); - - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $drug_id, 4, true, $inpatient_info->ward_id); - $drugs_cost = $item_insurance_details[2]; - $insurance_treatment_to_pay = $item_insurance_details[1]; - } else { - if ($price_list_id) { - $drugs_cost = get_price_list_category_price($price_list_id, 3, $drug_id); - } else { - $drugs_cost = get_name($drug_id, "id", "non_insured_price", "drugs"); - } - } - - //get actual total costs incase the price of item changed after dispensation to allow retro billing - $this_drug_total_price = 0; - $per_ward_drug_given_rows = \Illuminate\Support\Facades\DB::table('ward_treatment_dispensations')->whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'drug_id' => $drug_id])->get(); - - foreach ($per_ward_drug_given_rows as $drug_ward_record) { - $this_drug_sp = $drug_ward_record->price; - $this_drug_sp = is_numeric($this_drug_sp) ? $this_drug_sp : 0; - $this_drug_total_price += ($this_drug_sp * $drug_ward_record->quantity_given); - $insurance_treatment_to_pay = $drug_ward_record->chi_price; - $created_at = $drug_ward_record->created_at; - } - - $treatment_total_cost += $this_drug_total_price; - $insurance_treatments += ($insurance_treatment_to_pay * $quantity_given); - @endphp - - - - - - - - - - @endforeach - - - - - -
    {{ __('inpatient.date') }}{{ __('inpatient.name') }}{{ __('inpatient.quantity') }}{{ __('inpatient.unit_cost') }}{{ __('inpatient.patient_to_pay') }}{{ __('inpatient.insurance_to_pay') }}
    {{ streamline_date($created_at)}}{{ get_name($drug_id, "id", "name", "drugs") }}{{ $quantity_given }}{{ ugandan_shillings_with_decimals($this_drug_sp) }}{{ ugandan_shillings_with_decimals($this_drug_total_price) }}{{ ugandan_shillings_with_decimals($insurance_treatment_to_pay * $quantity_given) }}
    {{ __('inpatient.treatment_total') }}{{ ugandan_shillings_with_decimals((int)$treatment_total_cost) }}{{ ugandan_shillings_with_decimals($insurance_treatments) }}
    - @elseif(get_ward_prescription_model() == 2) - @php - $inpatient_ward_treatment = unserialize($inpatient_info->ward_treatments); - - $today = date("Y-m-d"); - $dob = get_name($patient_id, "id", "date_of_birth", "patients"); - $difference = days_months_years($dob, $today); - - $days = $difference[0]; - $months = $difference[1]; - $years = $difference[2]; - - $age_bracket = ""; - - if (between($years, 0, 5)){ - $age_bracket = __('inpatient.infant'); - } elseif (between($years, 6, 12)){ - $age_bracket = __('inpatient.child'); - } elseif ($years > 12){ - $age_bracket = __('inpatient.adult'); - } - @endphp -
    - {{ __('inpatient.treatment') }} {{ $age_bracket }} -
    -
      - @if(empty($inpatient_ward_treatment) || is_null($inpatient_ward_treatment)) -
    • {{ __('inpatient.no_treatments_ordered') }}
    • - @else - @php - // for old streamline system records which were using a weird naming convention - $drugs = $inpatient_ward_treatment['drugs'] ?? $inpatient_ward_treatment['Drugs']; - $days = $inpatient_ward_treatment['days'] ?? $inpatient_ward_treatment['Days']; - @endphp - @for($i = 0; $i < count($drugs); $i++) - @php - $daily_cost = 0; - if ($age_bracket == __('inpatient.infant')){ - $daily_cost = get_name($drugs[$i], 'id', 'ip_daily_cost_infant', 'drugs'); - } elseif ($age_bracket == __('inpatient.child')){ - $daily_cost = get_name($drugs[$i], 'id', 'ip_daily_cost_children', 'drugs'); - } elseif ($age_bracket == __('inpatient.adult')){ - $daily_cost = get_name($drugs[$i], 'id', 'ip_daily_cost_adult', 'drugs'); - } - - if (!is_numeric($daily_cost)){ - $daily_cost = 0; - } - @endphp -
    • - @php $drugs_cost = get_name($drugs[$i], "id", "non_insured_price", "drugs"); @endphp - - - - ( {{ $days[$i] }} {{ __('inpatient.days') }} ) * - - ( {{ ugandan_shillings_with_decimals($daily_cost) }}) - - {{ ugandan_shillings_with_decimals($daily_cost * $days[$i]) }} - @php $treatment_total_cost += $daily_cost * $days[$i]; @endphp - -
    • - @endfor -
    • - {{ __('inpatient.subtotal') }} - - {{ ugandan_shillings_with_decimals($treatment_total_cost) }} - -
    • - @endif -
    - @endif -
    -
    - @endif - - $patient_id, 'episode_id' => $episode_id,'payment_status' => 0, 'tta' => 0])->get(); - ?> - @if(count($opd_unpaid_treatments) > 0) -
    -
    - {{ __('inpatient.unpaid_opd_treatment') }} -
    - - - - - - - - - - - - - @php - $opd_treatment_balance = $opd_unpaid_treatment_total = $insurance_opd_treatment = 0; - @endphp - @if(count($opd_unpaid_treatments) > 0) - @foreach($opd_unpaid_treatments as $opd_treatment) - @if(!(is_incoming_prescriptions_feature_enabled() && $opd_treatment->confirmation_status == 0)) - @php - $opd_treatment_amount = 0; - $opd_treatment_insurance_amount = 0; - - $opd_drug_ids = explode(",", $opd_treatment->drugs); - $drug_quantities = explode(",", $opd_treatment->quantities_dispensed); - - $purchased_elsewhere = explode(",", $opd_treatment->purchased_elsewhere); - $unit_selling_prices_array = is_null($opd_treatment->unit_selling_prices) ? [] : explode(",", $opd_treatment->unit_selling_prices); - @endphp - - @for ($i = 0; $i < count($opd_drug_ids); $i++) - @if(get_name($opd_drug_ids[$i], "id", "name", "drugs") != "N/A") - @php - $opd_treatment_insurance_amount = 0; - - // check if drug and patient is eligible for insurance - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $opd_drug_ids[$i], 4, true, $inpatient_info->ward_id); - $opd_treatment_amount = $item_insurance_details[2]; - $opd_treatment_insurance_amount = $item_insurance_details[1]; - } else { - if (isset($unit_selling_prices_array[$i]) && !is_null($unit_selling_prices_array[$i])) { - $opd_treatment_amount = is_numeric($unit_selling_prices_array[$i]) ? $unit_selling_prices_array[$i] : 0; - } else { - if ($price_list_id) { - $opd_treatment_amount = get_price_list_category_price($price_list_id, 3, $opd_drug_ids[$i]); - } else { - $opd_treatment_amount = get_name($opd_drug_ids[$i], "id", "non_insured_price", "drugs"); - } - } - } - - // get money saved from the inpatient bill table - $opd_treatment_amount = $saved_drug_prices[$opd_drug_ids[$i]] ?? $opd_treatment_amount; - $opd_treatment_insurance_amount = $saved_chi_drug_prices[$opd_drug_ids[$i]] ?? $opd_treatment_insurance_amount; - - if(isset($drug_quantities[$i]) && $drug_quantities[$i] != ""){ - $opd_treatment_subtotal = $drug_quantities[$i] * $opd_treatment_amount; - $opd_treatment_insurance_subtotal = $drug_quantities[$i] * $opd_treatment_insurance_amount; - } else { - $opd_treatment_subtotal = 0; - $opd_treatment_insurance_subtotal = 0; - } - - // add amounts to totals - $opd_unpaid_treatment_total += $opd_treatment_subtotal; - $insurance_opd_treatment += $opd_treatment_insurance_subtotal; - @endphp - - @if (count($purchased_elsewhere) > 0 && isset($purchased_elsewhere[$i]) && $purchased_elsewhere[$i] == 1) - - - - - - @else - - - - - - - - @endif - @endif - @endfor - @endif - @endforeach - - - - - - @endif - -
    {{ __('inpatient.name') }}{{ __('inpatient.quantity') }}{{ __('inpatient.cost') }}{{ __('inpatient.patient_to_pay') }}{{ __('inpatient.insurance_to_pay') }}
    - - {{ $drug_quantities[$i] }}{{ __('inpatient.purchased_from_elsewhere') }}
    - - {{ $drug_quantities[$i] }}{{ ugandan_shillings($opd_treatment_amount) }}{{ ugandan_shillings($opd_treatment_subtotal) }}{{ ugandan_shillings($opd_treatment_insurance_subtotal) }}
    {{ __('inpatient.opd_treatment') }}{{ ugandan_shillings_with_decimals($opd_unpaid_treatment_total) }}{{ ugandan_shillings_with_decimals($insurance_opd_treatment) }}
    -
    -
    - @endif - - whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->groupBy('sundry_id')->selectRaw('*, sum(quantity_given) as quantity_given')->get(); - $sundries_total_cost = 0; - ?> - - @if(count($ward_sundry_quantities_given) > 0) -
    -
    - {{ __('inpatient.sundries') }} -
    - - - - - - - - - - - - - @foreach($ward_sundry_quantities_given as $sundry_record) - @php - $sundries_cost = $this_sundry_sp = 0; - $insurance_sundry_amount = 0; - - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $sundry_record->sundry_id, 5, true, $inpatient_info->ward_id); - $sundries_cost = $item_insurance_details[2]; - $insurance_sundry_amount = $item_insurance_details[1]; - } else { - if ($price_list_id) { - $sundries_cost = get_price_list_category_price($price_list_id, 5, $sundry_record->sundry_id); - } else { - $sundries_cost = get_name($sundry_record->sundry_id, "id", "non_insured_price", "sundries"); - } - } - - //get actual total costs incase the price of item changed after dispensation to allow retro billing - $this_sundry_total_price = 0; - $per_ward_sundry_given_rows = DB::table('ward_sundry_dispensations')->whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'sundry_id' => $sundry_record->sundry_id])->get(); - - if (count($per_ward_sundry_given_rows) > 0) { - foreach ($per_ward_sundry_given_rows as $sundry_ward_record) { - $this_sundry_sp = ($sundry_ward_record->price != 0 && (is_null($price_list_set) || $price_list_set == "")) ? $sundry_ward_record->price : $sundries_cost; - $this_sundry_total_price += ($this_sundry_sp * $sundry_ward_record->quantity_given); - $insurance_sundry_amount = $sundry_ward_record->chi_price; - } - } else { - $this_sundry_total_price = $sundry_record->quantity_given * $sundries_cost; - } - - $sundries_total_cost += $this_sundry_total_price; - $insurance_sundries += ($sundry_record->quantity_given * $insurance_sundry_amount); - @endphp - - - - - - - - - @endforeach - - - - - -
    {{ __('inpatient.date') }}{{ __('inpatient.name') }}{{ __('inpatient.quantity') }}{{ __('inpatient.unit_cost') }}{{ __('inpatient.patient_to_pay') }}{{ __('inpatient.insurance_to_pay') }}
    - {{ is_null($sundry_record->dispensation_date) ? streamline_date($sundry_record->created_at) : streamline_date($sundry_record->dispensation_date) }} - - {{ get_name($sundry_record->sundry_id, "id", "name", "sundries") }} - {{ $sundry_record->quantity_given }}{{ ugandan_shillings_with_decimals($this_sundry_sp) }}{{ ugandan_shillings_with_decimals($this_sundry_total_price) }}{{ ugandan_shillings_with_decimals($sundry_record->quantity_given * $insurance_sundry_amount) }}
    {{ __('inpatient.sundries_total') }}{{ ugandan_shillings_with_decimals($sundries_total_cost) }}{{ ugandan_shillings_with_decimals($insurance_sundries) }}
    -
    -
    - @endif - - @php - $opd_unpaid_sundries = \Streamline\Models\OrderedSundry::where(['patient_id' => $patient_id, 'episode_id' => $episode_id,'payment_status' => 0])->get(); - $opd_sundries_total_cost = $opd_insurance_sundries = 0; - @endphp - @if(count($opd_unpaid_sundries) > 0) - @php - $opd_sundries_ids = []; - $opd_sundries_quantity = []; - $opd_sundry_order_ids = []; - $opd_sundries_orders_amounts = []; - $opd_unit_sundries_selling_prices_array = []; - - foreach($opd_unpaid_sundries as $opd_ordered_sundry){ - $opd_sundries_ids = array_merge($opd_sundries_ids, explode(",", $opd_ordered_sundry->sundries_id)); - $opd_sundries_quantity = array_merge($opd_sundries_quantity, explode(",",$opd_ordered_sundry->quantity)); - $opd_unit_sundries_selling_prices_array = array_merge($opd_unit_sundries_selling_prices_array, explode(",",$opd_ordered_sundry->sundries_amount));// is_null($treatment->sundries_amount) ? [] : explode(",", $treatment->unit_selling_prices); - array_push($opd_sundry_order_ids, $opd_ordered_sundry->id); - //if amounts are put at the time of ordering - $opd_sundries_orders_amounts = is_null($opd_ordered_sundry->sundries_amount) ? array_merge($opd_sundries_orders_amounts, []) : array_merge($opd_sundries_orders_amounts, explode(",", $opd_ordered_sundry->sundries_amount)); - } - - $count_orders = count($opd_sundry_order_ids); - - // create strings from arrays to use when submitting - $opd_sundry_order_ids_string = implode(',', $opd_sundry_order_ids); - @endphp -
    -
    - {{ __('inpatient.unpaid_opd_sundries') }} -
    - - - - - - - - - - - - - @php $orders_count = 0; @endphp - - @for ($i = 0; $i < count($opd_sundries_ids); $i++) - @php - // get insurance status for sundry - $opd_sundry_insurance_status = get_name($opd_sundries_ids[$i], "id", "insurance", "sundries"); - $opd_sund_insurance_amount = 0; - - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $opd_sundries_ids[$i], 5, true, $inpatient_info->ward_id); - $opd_sundry_amount = $item_insurance_details[2]; - $opd_sund_insurance_amount = $item_insurance_details[1]; - } else { - if (isset($opd_unit_sundries_selling_prices_array[$i]) && !is_null($opd_unit_sundries_selling_prices_array[$i]) && is_numeric($opd_unit_sundries_selling_prices_array[$i])) { - $opd_sundry_amount = $opd_unit_sundries_selling_prices_array[$i]; - } else { - // check if the patient category is attached to a price list - if ($price_list_set && $price_list_set != 0){ - $opd_sundry_amount = get_price_list_category_price($price_list_set, 5, $opd_sundries_ids[$i]); - } elseif ($price_list_id) { - $opd_sundry_amount = get_price_list_category_price($price_list_id, 5, $opd_sundries_ids[$i]); - } else { - //if amount was set at time of ordering - if (isset($opd_sundries_orders_amounts[$i]) && !is_null($opd_sundries_orders_amounts[$i])) { - $opd_sundry_amount = $opd_sundries_orders_amounts[$i]; - } else{ - $opd_sundry_amount = get_name($opd_sundries_ids[$i], "id", "non_insured_price", "sundries"); - } - } - } - } - - $opd_sundry_amount = $saved_sundry_prices[$opd_sundries_ids[$i]] ?? $opd_sundry_amount; - $opd_sund_insurance_amount = $saved_chi_sundry_prices[$opd_sundries_ids[$i]] ?? $opd_sund_insurance_amount; - - // get the subtotal for this sundry - $opd_sundry_subtotal = $opd_sundries_quantity[$orders_count] * $opd_sundry_amount; - $opd_sundry_insurance_subtotal = $opd_sundries_quantity[$orders_count] * $opd_sund_insurance_amount; - @endphp - - - - - - - - - @php - $orders_count++; - $opd_sundries_total_cost += $opd_sundry_subtotal; - $opd_insurance_sundries += $opd_sundry_insurance_subtotal; - @endphp - @endfor - - - - - - -
    {{ __('patient_finance.sundry_name') }}{{ __('patient_finance.unit_cost') }}{{ __('patient_finance.quantity') }}{{ __('patient_finance.patient_to_pay') }}{{ __('inpatient.insurance_to_pay') }}
    {{ ugandan_shillings_with_decimals($opd_sundry_amount) }}{{ $opd_sundries_quantity[$orders_count] }}{{ ugandan_shillings_with_decimals($opd_sundry_subtotal) }}{{ ugandan_shillings_with_decimals($opd_sundry_insurance_subtotal) }}
    {{ __('inpatient.sundries_total') }}{{ ugandan_shillings_with_decimals($opd_sundries_total_cost) }}{{ ugandan_shillings_with_decimals($opd_insurance_sundries) }}
    -
    -
    - @endif - - whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - - $extras_total_cost = 0; - ?> - @if(count($ward_extras_given) > 0) -
    -
    - {{ __('inpatient.extras') }} -
    - - - - - - - - @foreach($ward_extras_given as $extras_record) - - - - - - @endforeach - - - - -
    {{ __('inpatient.date') }}{{ __('inpatient.name') }}{{ __('inpatient.cost') }}
    - {{ is_null($extras_record->dispensation_date) ? streamline_date($extras_record->created_at) : streamline_date($extras_record->dispensation_date) }} - {{ $extras_record->extra_item }} - {{ ugandan_shillings_with_decimals($extras_record->extra_cost) }} - @php $extras_total_cost += $extras_record->extra_cost; @endphp -
    {{ __('inpatient.extras_total') }}{{ ugandan_shillings_with_decimals($extras_total_cost) }}
    -
    -
    - @endif -
    - -
    - $patient_id, 'episode_id' => $episode_id])->get(); - $ward_bed_admission_total_cost = 0; - ?> - - @if($ward_bed_stays->count() > 0) -
    -
    - {{ __('inpatient.accomodation') }} -
    - - - - - - - - - - - - - - - @if(count($ward_bed_stays) > 0) - @foreach($ward_bed_stays as $bed_record) - @php - $accomodation_cost = $bed_record->bed_fee_total; - $chi_accomodation_cost = $bed_record->chi_bed_fee_total; - $chi_ward_accomodation_to_pay += $chi_accomodation_cost; - $ward_bed_admission_total_cost += $accomodation_cost; - @endphp - - - - - - - - - - - @endforeach - - - - - - - @endif - -
    {{ __('inpatient.bed_no') }}{{ __('inpatient.bed_category') }}{{ __('inpatient.from') }}{{ __('inpatient.to') }}{{ __('inpatient.duration') }}{{ __('inpatient.patient_to_pay') }}{{ __('inpatient.insurance_to_pay') }}
    {{ $bed_record->bed_number}}{{ get_name($bed_record->bed_category, "id", "name", "inpatient_bed_categories") }}{{ streamline_date($bed_record->from) }}{{ streamline_date($bed_record->to) }}{{ $bed_record->duration }}{{ ugandan_shillings_with_decimals($accomodation_cost) }} - {{ ugandan_shillings_with_decimals($chi_accomodation_cost) }} -
    {{ __('inpatient.accomodation_total') }} - {{ ugandan_shillings_with_decimals($ward_bed_admission_total_cost) }} - - {{ ugandan_shillings_with_decimals($chi_ward_accomodation_to_pay) }} -
    -
    -
    - @endif - - @if($ordered_ward_investigations->count() > 0) -
    -
    - {{ __('inpatient.investigations') }} -
    - - - - - - - - - - - @php - // ids of the ordered investigations - $investigation_ids = $order_ids = $all_order_ids_array = []; - - foreach($ordered_ward_investigations as $ordered_investigation){ - if (get_investigation_billing_mode() == 1 && $ordered_investigation->investigation_status == 0) { - // no results yet, so ignore - continue; - } - - $investigation_ids = array_merge($investigation_ids, explode(",", $ordered_investigation->investigation_id)); - - $single_order_investigations = explode(",",$ordered_investigation->investigation_id); - for ($w=0; $w < count($single_order_investigations) ; $w++) { - echo ''; - $all_order_ids_array[] = $ordered_investigation->id; - } - - array_push($order_ids, $ordered_investigation->id); - } - - $count_orders = count($order_ids); - - // create strings from arrays to use when submitting - $order_ids_string = implode(',', $order_ids); - $investigation_ids_string = implode(',', $investigation_ids); - - $investigation_amount = 0; - @endphp - - @for ($i = 0; $i < count($investigation_ids); $i++) - @php - // get insurance status for investigation - $investigation_insurance_status = get_name($investigation_ids[$i], "id", "insurance_coverage", "investigations"); - $investigation_amount_insurance = 0; - - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $investigation_ids[$i], 3, true, $inpatient_info->ward_id); - $investigation_amount = $item_insurance_details[2]; - $investigation_amount_insurance = $item_insurance_details[1]; - } else { - if ($price_list_id) { - $investigation_amount = get_price_list_category_price($price_list_id, 2, $investigation_ids[$i]); - } else { - $investigation_amount = get_name($investigation_ids[$i], "id", "non_insured_price", "investigations"); - } - } - - //check if there is a saved record in ward investigation pricing - $saved_ward_price = get_ward_investigation_pricing($patient_id, $episode_id, $investigation_ids[$i], $all_order_ids_array[$i]); - - //if the inv exists in ward pricing table use that price else use default - if($saved_ward_price != "N/A"){ - $investigation_amount = (is_null($price_list_set) || $price_list_set == "") ? $saved_ward_price : $investigation_amount; - } - - $saved_ward_chi_price = get_ward_investigation_chi_pricing($patient_id, $episode_id, $investigation_ids[$i], $all_order_ids_array[$i]); - $investigation_amount_insurance = $saved_ward_chi_price == 'N/A' ? $investigation_amount_insurance : $saved_ward_chi_price; - - $investigation_amount_total += $investigation_amount; - $insurance_investigations += $investigation_amount_insurance; - @endphp - - - - - - - @endfor - - - - - - -
    {{ __('inpatient.name') }}{{ __('inpatient.patient_to_pay') }}{{ __('inpatient.insurance_to_pay') }}
    {{ get_name($investigation_ids[$i], "id", "name", "investigations") }}{{ ugandan_shillings($investigation_amount) }}{{ ugandan_shillings($investigation_amount_insurance) }}
    {{ __('inpatient.investigation_total') }} - {{ ugandan_shillings_with_decimals($investigation_amount_total) }} - - {{ ugandan_shillings_with_decimals($insurance_investigations) }} -
    -
    -
    - @endif - - whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $procedures_total_cost = 0; - ?> - @if(count($ward_procedures) > 0) -
    -
    - {{ __('inpatient.procedures') }} -
    - - - - - - - - - - @foreach($ward_procedures as $ward_procedure) - @php - $procedure_amount_insurance = 0; - - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $ward_procedure->procedure_id, 2, true, $inpatient_info->ward_id); - $procedure_price = $item_insurance_details[2]; - $procedure_amount_insurance = $item_insurance_details[1]; - } else { - $procedure_price = 0; - if ($price_list_id) { - $procedure_price = get_price_list_category_price($price_list_id, 4, $ward_procedure->procedure_id); - } else { - $procedure_price = get_name($ward_procedure->procedure_id, "id", "non_insured_price", "procedures"); - } - } - - $procedure_price = (is_null($price_list_set) || $price_list_set == "") ? $ward_procedure->hospital_fee : $procedure_price; - $procedure_amount_insurance = $ward_procedure->chi_price; - - $procedures_cost = $procedure_price + $ward_procedure->staff_fee; - $procedures_total_cost += $procedures_cost; - $insurance_procedures += $procedure_amount_insurance; - @endphp - - - - - - @endforeach - - - - - - -
    {{ __('inpatient.name') }}{{ __('inpatient.patient_to_pay') }}{{ __('inpatient.insurance_to_pay') }}
    {{ get_name($ward_procedure->procedure_id, "id", "name", "procedures") }}{{ ugandan_shillings_with_decimals($procedures_cost) }}{{ ugandan_shillings_with_decimals($procedure_amount_insurance) }}
    {{ __('inpatient.procedures_total') }}{{ ugandan_shillings_with_decimals($procedures_total_cost) }} - {{ ugandan_shillings_with_decimals($insurance_procedures) }} -
    -
    -
    - @endif - - @php - $opd_unpaid_procedures = \Streamline\Models\OrderedProcedure::where(['patient_id' => $patient_id, 'episode_id' => $episode_id,'payment_status' => 0])->get(); - $opd_procedures_total_cost = $opd_insurance_procedures = 0; - @endphp - - @if(count($opd_unpaid_procedures) > 0) - @php - $opd_procedure_ids = []; - $opd_procedure_order_ids = []; - // amounts at the time was ordered - $opd_procedures_orders_amounts = []; - - foreach($opd_unpaid_procedures as $opd_ordered_procedure){ - $opd_procedure_ids = array_merge($opd_procedure_ids, explode(",", $opd_ordered_procedure->procedure_id)); - array_push($opd_procedure_order_ids, $opd_ordered_procedure->id); - //if amounts are put at the time of ordering - $opd_procedures_orders_amounts = is_null($opd_ordered_procedure->procedure_amount) ? array_merge($opd_procedures_orders_amounts, []) : array_merge($opd_procedures_orders_amounts, explode(",", $opd_ordered_procedure->procedure_amount)); - } - - $opd_count_orders = count($opd_procedure_order_ids); - - // create strings from arrays to use when submitting - $opd_procedure_order_ids_string = implode(',', $opd_procedure_order_ids); - $opd_procedure_ids_string = implode(',', $opd_procedure_ids); - $procedure_orders_amounts_string = implode(',', $opd_procedures_orders_amounts); - @endphp - -
    -
    - {{ __('inpatient.unpaid_opd_procedures') }} -
    - - - - - - - - - - - @php - $opd_procedure_amount = 0; - $opd_procedure_insurance_amount_total = 0; - @endphp - - @for ($i = 0; $i < count($opd_procedure_ids); $i++) - @php - $opd_insurance_amount = 0; - - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $opd_procedure_ids[$i], 2, true, $inpatient_info->ward_id); - $opd_procedure_amount = $item_insurance_details[2]; - $opd_insurance_amount = $item_insurance_details[1]; - } else { - // check if the patient category is attached to a price list - if ($price_list_id) { - $opd_procedure_amount = get_price_list_category_price($price_list_id, 4, $opd_procedure_ids[$i]); - } else { - //if amount was set at time of ordering - if (isset($opd_procedures_orders_amounts[$i]) && !is_null($opd_procedures_orders_amounts[$i])) { - $opd_procedure_amount = $opd_procedures_orders_amounts[$i]; - } else{ - $opd_procedure_amount = get_name($opd_procedure_ids[$i], "id", "non_insured_price", "procedures"); - } - } - } - - $opd_procedure_amount = $saved_procedures_prices[$opd_procedure_ids[$i]] ?? $opd_procedure_amount; - $opd_insurance_amount = $saved_chi_procedures_prices[$opd_procedure_ids[$i]] ?? $opd_insurance_amount; - - // add amounts to totals - $opd_procedure_amount_total += $opd_procedure_amount; - $opd_procedure_insurance_amount_total += $opd_insurance_amount; - @endphp - - - - - - - @endfor - - - - - - -
    {{ __('patient_finance.procedure_name') }}{{ __('patient_finance.patient_to_pay') }}{{ __('inpatient.insurance_to_pay') }}
    {{ get_name($opd_procedure_ids[$i], "id", "name", "procedures") }}{{ ugandan_shillings_with_decimals($opd_procedure_amount) }}{{ ugandan_shillings_with_decimals($opd_insurance_amount) }}
    {{ __('inpatient.procedures_total') }}{{ ugandan_shillings_with_decimals($opd_procedure_amount_total) }}{{ ugandan_shillings_with_decimals($opd_procedure_insurance_amount_total) }}
    -
    -
    - @endif - - @php - $services_total_cost = 0; - $ward_services_quantities_given = DB::table('ward_consultations_and_services')->whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - @endphp - - @if(count($ward_services_quantities_given) > 0) -
    -
    - {{ __('inpatient.consultation_and_services') }} -
    - - - - - - - - - - - - - - @foreach($ward_services_quantities_given as $record) - @php - $services_cost = 0; - $service_amount_insurance = 0; - - $service_id = 0; - if(array_key_exists($record->service_id, $services_with_users_array)){ - $custom_service_name = $services_with_users_array[$record->service_id]; - $services_user_key = explode("__", $record->service_id); - $service_id = $services_user_key[0]; - } else { - $service_id = $record->service_id; - } - - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $service_id, 1, true, $inpatient_info->ward_id); - $services_cost = $item_insurance_details[2]; - $service_amount_insurance = $item_insurance_details[1]; - } else { - if ($price_list_id) { - $services_cost = get_price_list_category_price($price_list_id, 6, $service_id); - } else { - $services_cost = get_name($service_id, "id", "non_insured_price", "services"); - } - } - - $services_cost = (is_null($price_list_set) || $price_list_set == "") ? $record->unit_price : $services_cost; - $service_amount_insurance = $record->chi_price; - - $services_total_cost += ($services_cost * $record->quantity_given); - $insurance_services += ($record->quantity_given * $service_amount_insurance); - @endphp - - - - - - - - - @endforeach - - - - - - - -
    {{ __('inpatient.date') }}{{ __('inpatient.name') }}{{ __('inpatient.quantity') }}{{ __('inpatient.unit_cost') }}{{ __('inpatient.patient_to_pay') }}{{ __('inpatient.insurance_to_pay') }}
    {{ streamline_date($record->dispensation_date) }}{{ $service_items[$record->service_id] ?? "" }}{{ ugandan_shillings_with_decimals($services_cost) }}{{ $record->quantity_given }}{{ ugandan_shillings_with_decimals($services_cost * $record->quantity_given) }}{{ ugandan_shillings_with_decimals($record->quantity_given * $service_amount_insurance) }}
    {{ __('inpatient.services_total') }}{{ ugandan_shillings_with_decimals($services_total_cost) }}{{ ugandan_shillings_with_decimals($insurance_services) }}
    -
    -
    - @endif - - @php - $opd_unpaid_services = \Streamline\Models\OrderedService::where(['patient_id' => $patient_id, 'episode_id' => $episode_id,'payment_status' => 0])->get(); - $opd_services_amount_total = $opd_services_insurance_amount_total = 0; - @endphp - @if(count($opd_unpaid_services) > 0) -
    -
    - {{ __('inpatient.unpaid_opd_services') }} -
    - - - - - - - - - - - - - @foreach($opd_unpaid_services as $used_service) - @php - $service_ids = explode(",", $used_service->service_id); - $service_quantity = explode(",", $used_service->quantity); - $ordered_services_amounts = (is_null($used_service->service_amount) || $used_service->service_amount == '') ? []: explode(",", $used_service->service_amount); - @endphp - - @for($i = 0; $i < count($service_ids); $i++) - @php - $service_cost = 0; - $opd_service_insurance = 0; - - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $service_ids[$i], 1, true, $inpatient_info->ward_id); - $service_cost = $item_insurance_details[2]; - $opd_service_insurance = $item_insurance_details[1]; - } else { - if($price_list_set && $price_list_set != 0){ - $service_cost = get_price_list_category_price($price_list_set, 6, $service_ids[$i]); - }else if($price_list_id){ - $service_cost = get_price_list_category_price($price_list_id, 6, $service_ids[$i]); - } else { - $pre_order = \Streamline\Models\Services::withTrashed()->find($service_ids[$i]); - - //if amount was set at time of ordering - if (isset($ordered_services_amounts[$i]) && !is_null($ordered_services_amounts[$i])) { - $service_cost = $ordered_services_amounts[$i]; - } else{ - $service_cost = $pre_order->non_insured_price; - } - } - } - - $service_cost = $saved_services_prices[$service_ids[$i]] ?? $service_cost; - $opd_service_insurance = $saved_chi_services_prices[$service_ids[$i]] ?? $opd_service_insurance; - @endphp - - - - - - - - @php - $opd_services_amount_total += ($service_cost * $service_quantity[$i]); - $opd_services_insurance_amount_total += ($opd_service_insurance * $service_quantity[$i]); - @endphp - @endfor - @endforeach - - - - - - -
    {{ __('inpatient.service') }}{{ __('inpatient.quantity') }}{{ __('inpatient.cost') }}{{ __('patient_finance.patient_to_pay') }}{{ __('inpatient.insurance_to_pay') }}
    {{ get_name($service_ids[$i], "id", "name", "services") }}{{ $service_quantity[$i] }}{{ ugandan_shillings_with_decimals($service_cost) }}{{ ugandan_shillings_with_decimals($service_cost * $service_quantity[$i]) }}{{ ugandan_shillings_with_decimals($opd_service_insurance * $service_quantity[$i]) }}
    {{ __('inpatient.services_total') }}{{ ugandan_shillings_with_decimals($opd_services_amount_total) }}{{ ugandan_shillings_with_decimals($opd_services_insurance_amount_total) }}
    -
    -
    - @endif - - {{--other_drugs_given)): ?> -
    -
    {{ __('inpatient.anaesthetics') }}
    - - - - - - - - - - other_drugs_given); - $drugs_given_anae_cost = unserialize($anaesthesia->other_drugs_cost); - - $drugs = DB::table('drugs')->where('available', 1)->pluck('name', 'id'); - $units = DB::table('drug_units')->pluck('name', 'id'); - - foreach ($drugs_given_anae as $key => $value): - $name = (isset($value['id']) && isset($drugs[$value['id']])) ? $drugs[$value['id']] : ""; - $dose = $value['dose'] ?? ""; - $unit = $units[$value['unit']] ?? ""; - $cost = trim($drugs_given_anae_cost[$key]); - $drugs_given_anae_cost_total = + $cost; - echo "" - . "" - . "" - . "" - . ""; - endforeach; - ?> - -
    {{ __('inpatient.drug_name') }}{{ __('inpatient.dose') }}{{ __('inpatient.cost') }}
    {$name}{$dose}{$unit}" . ugandan_shillings_with_decimals($cost) . "
    - --}} - -
    -
    - - @php - $category_to_pay_deposits = 0; - $patient_category_invoices_record = \Streamline\Models\PatientCategoryInvoice::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'patient_category' => $patient->category_id])->get(); - - $ward_discount_records = \Streamline\Models\InpatientWardDiscounts::where(['inpatient_info_id' => $inpatient_info->id])->get(); - $ward_discount_total = 0; - @endphp - - @if(count($patient_category_invoices_record) > 0 || count($ward_discount_records) > 0) -
    -
    -
    -
    -
    - {{ __('inpatient.invoices_created') }} -
    -
      - - @if(count($patient_category_invoices_record) > 0) - @foreach($patient_category_invoices_record as $invoice_record) - @if($invoice_record->tag_id == 9 || $invoice_record->tag_id == 10) -
    • - {{ get_name($invoice_record->patient_category, "id", "name", "patient_categories") }} ({{ $invoice_record->receipt_number }})  |  - {{ streamline_date($invoice_record->created_at) }} - - {{ ugandan_shillings_with_decimals($invoice_record->patient_amount) }} - - @php - $category_to_pay_deposits += $invoice_record->patient_amount; - @endphp -
    • - @endif - @endforeach -
    • - {{ __('inpatient.total_invoices_made') }} - - {{ ugandan_shillings_with_decimals($category_to_pay_deposits) }} - -
    • - @else -
    • {{ __('inpatient.no_invoices_made') }}
    • - @endif -
    -
    -
    -
    -
    -
    - {{ __('inpatient.ward_discount_amount') }} -
    -
      - @if(count($ward_discount_records) > 0) - @foreach($ward_discount_records as $ward_discount) -
    • - {{ get_name($ward_discount->ward_id, 'id', 'name', 'wards') }}  |  - {{ streamline_date($ward_discount->created_at) }} - - {{ ugandan_shillings_with_decimals($ward_discount->amount) }} - - @php - $ward_discount_total += $ward_discount->amount; - @endphp -
    • - @endforeach -
    • - {{ __('inpatient.ward_discount_amount') }} - - {{ ugandan_shillings_with_decimals($ward_discount_total) }} - -
    • - @else -
    • {{ __('inpatient.no_ward_discounts_given') }}
    • - @endif -
    -
    -
    -
    - @endif - - @php $deposits_total_cost = 0; $total_debt_deposits_paid = 0; @endphp - @if(count($service_deposits) > 0) -
    -
    -
    -
    -
    - {{ __('inpatient.deposits_received') }} -
    -
      - @foreach($service_deposits as $service_deposit) - @php - $item_ids_array = explode(",", $service_deposit->items_ids); - $item_amounts_array = explode(",", $service_deposit->items_amounts); - @endphp - - @if(($service_deposit->service_type == "Inpatient_Deposit") && ($service_deposit->patient_id == $patient_id) && ($service_deposit->episode_id == $episode_id)) -
    • - @php - $total_deposits_paid += $service_deposit->patient_amount_paid; - @endphp - {{ $service_deposit->receipt_number }}  |  - {{ streamline_date($service_deposit->created_at) }} - - {{ ugandan_shillings_with_decimals($service_deposit->patient_amount_paid) }} - -
    • - @endif - @endforeach -
    • - {{ __('inpatient.total_deposits_made') }} - - {{ ugandan_shillings_with_decimals($total_deposits_paid) }} - -
    • -
    -
    -
    -
    -
    -
    {{ __('inpatient.debt_plan_payments') }}
    -
      - @foreach($debt_plan_payments as $debt_plan_payment) -
    • - @php - $total_debt_deposits_paid += $debt_plan_payment->staff_guarantor_to_pay; - @endphp - {{ streamline_date($debt_plan_payment->created_at) }} - - {{ ugandan_shillings_with_decimals($debt_plan_payment->staff_guarantor_to_pay) }} - -
    • - @endforeach -
    • - {{ __('inpatient.total_deposits_made') }} - - {{ ugandan_shillings_with_decimals($total_debt_deposits_paid) }} - -
    • -
    -
    -
    -
    - @endif -
    -
    -
    - @php - $unpaid_opd_grand_total = $opd_unpaid_treatment_total + $opd_sundries_total_cost + $opd_services_amount_total + $opd_procedure_amount_total; - - $amount_to_pay = $extras_total_cost + $tta_total_cost + $procedures_total_cost + $sundries_total_cost + $treatment_total_cost + $ward_bed_admission_total_cost + $investigation_amount_total + $services_total_cost + $drugs_given_anae_cost_total + $unpaid_opd_grand_total; - - $total_insurance_payment = $chi_ward_accomodation_to_pay + $insurance_investigations + $insurance_treatments + $insurance_sundries + $insurance_procedures + $insurance_tta + $insurance_services + - $insurance_opd_treatment + $opd_insurance_sundries + $opd_services_insurance_amount_total + $opd_procedure_insurance_amount_total; - @endphp - - - - - - - @if($patient_insurance_status)@endif - - - - - - - - - @if($patient_insurance_status)@endif - - - - -
    {{ __('inpatient.total_amount_to_pay') }}{{ __('inpatient.patient_to_pay_total') }}{{ __('inpatient.insurance_to_pay_total') }}{{ __('inpatient.total_deposits_made') }}{{ __('inpatient.patient_balance_to_pay') }}
    {{ ugandan_shillings_with_decimals((int)$total_insurance_payment + (int)$amount_to_pay) }}{{ ugandan_shillings_with_decimals((int)$amount_to_pay) }}{{ ugandan_shillings_with_decimals($total_insurance_payment) }}{{ ugandan_shillings_with_decimals((int)$total_deposits_paid) }}{{ ugandan_shillings_with_decimals((int)$amount_to_pay - (int)$total_deposits_paid - (int)$category_to_pay_deposits - (int)$ward_discount_total - (int)$total_debt_deposits_paid) }}
    -
    -
    -
    -
    -
    - @php - $inpatient_bill = \Streamline\Models\InpatientBill::where(['episode_id' => $episode_id, 'patient_id' => $patient_id])->first(); - @endphp - -
    -
    - {{ __('inpatient.bill_checked_by') }} -
    -
      -
    • - @if ($inpatient_bill) -

      - {{ __('inpatient.bill_authorized_by') }}: - @php - $bill_authorized_by_array = is_null($inpatient_bill->bill_authorized_by) ? [] : explode(",", $inpatient_bill->bill_authorized_by); - $bill_authorized_at_array = is_null($inpatient_bill->bill_authorized_at) ? [] : explode(",",$inpatient_bill->bill_authorized_at); - @endphp - @for ($i = 0; $i < count($bill_authorized_by_array); $i++) - {{ get_full_name($bill_authorized_by_array[$i], "id", "first_name", "last_name", "users") }} {{ __('inpatient.on') }} {{ streamline_date_time($bill_authorized_at_array[$i]) }} - @endfor -

      - @endif - - first_name . ' ' . Auth::user()->last_name; ?> - - {{ streamline_date_time(date("Y-m-d H:i:s")) }} - -    .................................................................. -
    • -
    -
    -
    -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_consultation_and_services_print.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_consultation_and_services_print.blade.php deleted file mode 100755 index 8dc6ff28..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_consultation_and_services_print.blade.php +++ /dev/null @@ -1,178 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Inpatient Consultation and Services - Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') - -
    {{ __('inpatient.inpatient_consultation_and_services_details') }}
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('inpatient.patient_number') }}{{ $patient->number}} {{ __('inpatient.ward') }} - {{ get_name($inpatient_info->ward_id, 'id', 'name', 'wards') }}  |  - @if($inpatient_info->bed_category_id) - {{ get_name($inpatient_info->bed_category_id, 'id', 'name', 'inpatient_bed_categories') }} - @endif -
    {{ __('inpatient.patient_names') }}{{ $patient->first_name}} {{ $patient->last_name}} {{ __('inpatient.admitted') }} - @if($inpatient_info->discharged == 1) - @php $end_date = new DateTime($inpatient_info->discharged_on) @endphp - @else - @php $end_date = new DateTime(date('Y-m-d')) @endphp - @endif - - @php - $start_date = new DateTime($inpatient_info->admitted_on); - $days_spent_in_ward = ($end_date->diff($start_date)->format('%a')); - @endphp - - {{ streamline_date($inpatient_info->admitted_on) }} ( {{ $days_spent_in_ward }} {{ __('inpatient.days') }}) -
    {{ __('inpatient.age') }}date_of_birth); ?> {{ __('inpatient.discharged') }} - @if($inpatient_info->discharged == 1) - {{ streamline_date($inpatient_info->discharged_on) }} - @else - {{ __('inpatient.still_admitted') }} - @endif -
    {{ __('inpatient.gender') }}{{ $patient->gender == 1 ? __('inpatient.male') : __('inpatient.female') }} {{ __('inpatient.category') }} - {{ get_name($patient->category_id, 'id', 'name', 'patient_categories') }} - - @if(!is_null($patient_discount)) - ({{ $patient_discount["discount"] }} % {{ __('inpatient.discount') }}) - @endif -
    -
    - -
    -
    - where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->groupBy('service_id')->selectRaw('*, sum(quantity_given) as quantity_given')->get(); - ?> - - @if(count($ward_services_quantities_given) > 0) -
    -
    - {{ __('inpatient.consultation_and_services') }} -
    - - - - - - - - - - @foreach($ward_services_quantities_given as $record) - - $patient_id, 'episode_id' => $episode_id, 'service_id' => $record->service_id])->get(); - ?> - - @foreach($dispensation_details as $dispensation) - @php - $services_cost = $record->unit_price; - @endphp - - - - - - - @php - $single_service_cost = $services_cost * $dispensation->quantity_given; - - $services_total_cost += $single_service_cost; - @endphp - - @endforeach - @endforeach - - - - -
    {{ __('inpatient.date') }}{{ __('inpatient.name') }}{{ __('inpatient.quantity') }}{{ __('inpatient.unit_cost') }}{{ __('inpatient.subtotal') }}
    - {{ streamline_date($dispensation->created_at) }} -
    - {{ __('inpatient.by') }}: {{ get_full_name($dispensation->created_by, "id", "first_name", "last_name", "users") }} -
    - {{ $service_items[$dispensation->service_id] }} - - {{ $dispensation->quantity_given }} - - {{ ugandan_shillings($services_cost) }} - - {{ ugandan_shillings($services_cost * $dispensation->quantity_given) }} -
    {{ __('inpatient.services_total') }}{{ ugandan_shillings($services_total_cost) }}
    -
    - @endif -
    -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_detailed_notes_print.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_detailed_notes_print.blade.php deleted file mode 100644 index 8efe905a..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_detailed_notes_print.blade.php +++ /dev/null @@ -1,148 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Inpatient Progress Notes - Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') - -
    {{ __('inpatient.inpatient_details') }}
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('inpatient.patient_number') }}{{ $patient->number}} {{ __('inpatient.ward') }} - {{ get_name($inpatient_info->ward_id, 'id', 'name', 'wards') }}  |  - @if($inpatient_info->bed_category_id) - {{ get_name($inpatient_info->bed_category_id, 'id', 'name', 'inpatient_bed_categories') }} - @endif -
    {{ __('inpatient.patient_names') }}{{ $patient->first_name}} {{ $patient->last_name}} {{ __('inpatient.admitted') }} - @if($inpatient_info->discharged == 1) - @php $end_date = new DateTime($inpatient_info->discharged_on) @endphp - @else - @php $end_date = new DateTime(date('Y-m-d')) @endphp - @endif - - @php - $start_date = new DateTime($inpatient_info->admitted_on); - $days_spent_in_ward = ($end_date->diff($start_date)->format('%a')); - @endphp - - {{ streamline_date($inpatient_info->admitted_on) }} ( {{ $days_spent_in_ward }} {{ __('inpatient.days') }}) -
    {{ __('inpatient.age') }}date_of_birth); ?> {{ __('inpatient.discharged') }} - @if($inpatient_info->discharged == 1) - {{ streamline_date($inpatient_info->discharged_on) }} - @else - {{ __('inpatient.still_admitted') }} - @endif -
    {{ __('inpatient.gender') }}{{ $patient->gender == 1 ? __('inpatient.male') : __('inpatient.female') }} {{ __('inpatient.category') }} - {{ get_name($patient->category_id, 'id', 'name', 'patient_categories') }} - - @if(!is_null($patient_discount)) - ({{ $patient_discount["discount"] }} % {{ __('inpatient.discount') }}) - @endif -
    -
    - -
    -
    -
    -

    {{ __('inpatient.inpatient_detailed_notes') }}

    - - @php $sheet_histories = DB::table('ward_inpatient_detailed_notes')->whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); @endphp - @if(count($sheet_histories) > 0) - - - - - @foreach($sheet_histories as $comment_record) - - - - @endforeach -
    -
    history)) style="display:none;"@endif>{{ __('inpatient.history') }}
    - {{ $comment_record->history }} -
    result)) style="display:none;"@endif>{{ __('inpatient.results') }}
    - {{ $comment_record->result }} -
    vitals)) style="display:none;"@endif>{{ __('inpatient.vitals_and_examination') }}
    - {{ $comment_record->vitals }} -
    impression)) style="display:none;"@endif>{{ __('inpatient.impression') }}
    - {{ $comment_record->impression }} -
    plan)) style="display:none;"@endif>{{ __('inpatient.plan') }}
    - {{ $comment_record->plan }} -
    - {{ get_full_name($comment_record->created_by, "id", "first_name", "last_name", "users") }} {{ __('inpatient.on') }} {{ streamline_date_time_short($comment_record->created_at) }} -
    - @endif -
    -
    -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_extras_print.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_extras_print.blade.php deleted file mode 100755 index 2375c5af..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_extras_print.blade.php +++ /dev/null @@ -1,150 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Inpatient Extras - Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') - -
    {{ __('inpatient.inpatient_extras_details') }}
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('inpatient.patient_number') }}{{ $patient->number}} {{ __('inpatient.ward') }} - {{ get_name($inpatient_info->ward_id, 'id', 'name', 'wards') }}  |  - @if($inpatient_info->bed_category_id) - {{ get_name($inpatient_info->bed_category_id, 'id', 'name', 'inpatient_bed_categories') }} - @endif -
    {{ __('inpatient.patient_names') }}{{ $patient->first_name}} {{ $patient->last_name}} {{ __('inpatient.admitted') }} - @if($inpatient_info->discharged == 1) - @php $end_date = new DateTime($inpatient_info->discharged_on) @endphp - @else - @php $end_date = new DateTime(date('Y-m-d')) @endphp - @endif - - @php - $start_date = new DateTime($inpatient_info->admitted_on); - $days_spent_in_ward = ($end_date->diff($start_date)->format('%a')); - @endphp - - {{ streamline_date($inpatient_info->admitted_on) }} ( {{ $days_spent_in_ward }} {{ __('inpatient.days') }}) -
    {{ __('inpatient.age') }}date_of_birth); ?> {{ __('inpatient.discharged') }} - @if($inpatient_info->discharged == 1) - {{ streamline_date($inpatient_info->discharged_on) }} - @else - {{ __('inpatient.still_admitted') }} - @endif -
    {{ __('inpatient.gender') }}{{ $patient->gender == 1 ? __('inpatient.male') : __('inpatient.female') }} {{ __('inpatient.category') }} - {{ get_name($patient->category_id, 'id', 'name', 'patient_categories') }} - - @if(!is_null($patient_discount)) - ({{ $patient_discount["discount"] }} % {{ __('inpatient.discount') }}) - @endif -
    -
    - -
    -
    - where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $extras_total_cost = 0; - ?> - - @if(count($ward_extras_given) > 0) -
    - - - - - - - @foreach($ward_extras_given as $extras_record) - - - - - - @endforeach - - - - -
    {{ __('inpatient.date') }}{{ __('inpatient.name') }}{{ __('inpatient.cost') }}
    - {{ streamline_date($extras_record->created_at)}} - {{ __('inpatient.by') }}: {{ get_full_name($extras_record->created_by, "id", "first_name", "last_name", "users")}} - - {{ $extras_record->extra_item }} - - {{ ugandan_shillings($extras_record->extra_cost) }} - @php $extras_total_cost += $extras_record->extra_cost; @endphp -
    {{ __('inpatient.extras_total') }}{{ ugandan_shillings($extras_total_cost) }}
    -
    - @endif -
    -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_invs_print.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_invs_print.blade.php deleted file mode 100755 index 4ce14f9f..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_invs_print.blade.php +++ /dev/null @@ -1,146 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Inpatient Procedures - Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') - -
    {{ __('inpatient.inpatient_procedures_details') }}
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('inpatient.patient_number') }}{{ $patient->number}} {{ __('inpatient.ward') }} - {{ get_name($inpatient_info->ward_id, 'id', 'name', 'wards') }}  |  - @if($inpatient_info->bed_category_id) - {{ get_name($inpatient_info->bed_category_id, 'id', 'name', 'inpatient_bed_categories') }} - @endif -
    {{ __('inpatient.patient_names') }}{{ $patient->first_name}} {{ $patient->last_name}} {{ __('inpatient.admitted') }} - @if($inpatient_info->discharged == 1) - @php $end_date = new DateTime($inpatient_info->discharged_on) @endphp - @else - @php $end_date = new DateTime(date('Y-m-d')) @endphp - @endif - - @php - $start_date = new DateTime($inpatient_info->admitted_on); - $days_spent_in_ward = ($end_date->diff($start_date)->format('%a')); - @endphp - - {{ streamline_date($inpatient_info->admitted_on) }} ( {{ $days_spent_in_ward }} {{ __('inpatient.days') }}) -
    {{ __('inpatient.age') }}date_of_birth); ?> {{ __('inpatient.discharged') }} - @if($inpatient_info->discharged == 1) - {{ streamline_date($inpatient_info->discharged_on) }} - @else - {{ __('inpatient.still_admitted') }} - @endif -
    {{ __('inpatient.gender') }}{{ $patient->gender == 1 ? __('inpatient.male') : __('inpatient.female') }} {{ __('inpatient.category') }} - {{ get_name($patient->category_id, 'id', 'name', 'patient_categories') }} - - @if(!is_null($patient_discount)) - ({{ $patient_discount["discount"] }} % {{ __('inpatient.discount') }}) - @endif -
    -
    - -
    -
    -
    - - where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - ?> - - @if(count($ward_investigation_pricings) > 0) - @php $total_modal_investigations_cost = 0; @endphp - @foreach($ward_investigation_pricings as $ward_inv_price) - - - - - - @php $total_modal_investigations_cost += $ward_inv_price->price; @endphp - @endforeach - - - - - @endif -
    - {{ __('inpatient.recorded_by') }}: {{ get_full_name($ward_inv_price->created_by, "id", "first_name", "last_name", "users")}}
    - {{ __('inpatient.on') }} {{ streamline_date($ward_inv_price->created_at)}} -
    - {{ __('inpatient.name') }}: - {{ get_name($ward_inv_price->investigation_id, "id", "name", "investigations") }} - - {{ __('inpatient.price') }}:{{ ugandan_shillings($ward_inv_price->price) }} -
    {{ __('inpatient.total_cost_of_investigations') }}{{ ugandan_shillings($total_modal_investigations_cost) }}
    -
    -
    -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_notes_print.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_notes_print.blade.php deleted file mode 100755 index a331c5ac..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_notes_print.blade.php +++ /dev/null @@ -1,156 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Inpatient Progress Notes - Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') - -
    {{ __('inpatient.inpatient_progress_notes_details') }}
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('inpatient.patient_number') }}{{ $patient->number}} {{ __('inpatient.ward') }} - {{ get_name($inpatient_info->ward_id, 'id', 'name', 'wards') }}  |  - @if($inpatient_info->bed_category_id) - {{ get_name($inpatient_info->bed_category_id, 'id', 'name', 'inpatient_bed_categories') }} - @endif -
    {{ __('inpatient.patient_names') }}{{ $patient->first_name}} {{ $patient->last_name}} {{ __('inpatient.admitted') }} - @if($inpatient_info->discharged == 1) - @php $end_date = new DateTime($inpatient_info->discharged_on) @endphp - @else - @php $end_date = new DateTime(date('Y-m-d')) @endphp - @endif - - @php - $start_date = new DateTime($inpatient_info->admitted_on); - $days_spent_in_ward = ($end_date->diff($start_date)->format('%a')); - @endphp - - {{ streamline_date($inpatient_info->admitted_on) }} ( {{ $days_spent_in_ward }} {{ __('inpatient.days') }}) -
    {{ __('inpatient.age') }}date_of_birth); ?> {{ __('inpatient.discharged') }} - @if($inpatient_info->discharged == 1) - {{ streamline_date($inpatient_info->discharged_on) }} - @else - {{ __('inpatient.still_admitted') }} - @endif -
    {{ __('inpatient.gender') }}{{ $patient->gender == 1 ? __('inpatient.male') : __('inpatient.female') }} {{ __('inpatient.category') }} - {{ get_name($patient->category_id, 'id', 'name', 'patient_categories') }} - - @if(!is_null($patient_discount)) - ({{ $patient_discount["discount"] }} % {{ __('inpatient.discount') }}) - @endif -
    -
    - -
    -
    -
    -

    {{ __('inpatient.doctor_progress_notes') }}

    - - @php $sheet_comments = DB::table('ward_inpatient_sheet_comments')->whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); @endphp - @if(count($sheet_comments) > 0) - - @foreach($sheet_comments as $comment_record) - - - - - @endforeach -
    - {{ get_full_name($comment_record->created_by, "id", "first_name", "last_name", "users") }} - {{ __('inpatient.on') }} - {{ streamline_date_time($comment_record->created_at) }} - - {{ $comment_record->ward_comments }} -
    - @endif - -

    {{ __('inpatient.nurse_progress_notes') }}

    - - @php $sheet_comments = DB::table('ward_inpatient_sheet_nurse_comments')->whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); @endphp - @if(count($sheet_comments) > 0) - - @foreach($sheet_comments as $comment_record) - - - - - @endforeach -
    - {{ get_full_name($comment_record->created_by, "id", "first_name", "last_name", "users") }} - {{ __('inpatient.on') }} - {{ streamline_date_time($comment_record->created_at) }} - - {{ $comment_record->ward_comments }} -
    - @endif -
    -
    -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_procedures_print.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_procedures_print.blade.php deleted file mode 100755 index 7d78e47f..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_procedures_print.blade.php +++ /dev/null @@ -1,173 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Inpatient Procedures - Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') - -
    {{ __('inpatient.inpatient_procedures_details') }}
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('inpatient.patient_number') }}{{ $patient->number}} {{ __('inpatient.ward') }} - {{ get_name($inpatient_info->ward_id, 'id', 'name', 'wards') }}  |  - @if($inpatient_info->bed_category_id) - {{ get_name($inpatient_info->bed_category_id, 'id', 'name', 'inpatient_bed_categories') }} - @endif -
    {{ __('inpatient.patient_names') }}{{ $patient->first_name}} {{ $patient->last_name}} {{ __('inpatient.admitted') }} - @if($inpatient_info->discharged == 1) - @php $end_date = new DateTime($inpatient_info->discharged_on) @endphp - @else - @php $end_date = new DateTime(date('Y-m-d')) @endphp - @endif - - @php - $start_date = new DateTime($inpatient_info->admitted_on); - $days_spent_in_ward = ($end_date->diff($start_date)->format('%a')); - @endphp - - {{ streamline_date($inpatient_info->admitted_on) }} ( {{ $days_spent_in_ward }} {{ __('inpatient.days') }}) -
    {{ __('inpatient.age') }}date_of_birth); ?> {{ __('inpatient.discharged') }} - @if($inpatient_info->discharged == 1) - {{ streamline_date($inpatient_info->discharged_on) }} - @else - {{ __('inpatient.still_admitted') }} - @endif -
    {{ __('inpatient.gender') }}{{ $patient->gender == 1 ? __('inpatient.male') : __('inpatient.female') }} {{ __('inpatient.category') }} - {{ get_name($patient->category_id, 'id', 'name', 'patient_categories') }} - - @if(!is_null($patient_discount)) - ({{ $patient_discount["discount"] }} % {{ __('inpatient.discount') }}) - @endif -
    -
    - - - where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - - $total_modal_procedures_cost = 0; - - $inpatient_procedures = @unserialize($inpatient_info->procedures); - - $inpatient_procedures_done_by = @unserialize($inpatient_info->procedures_done_by); - - $inpatient_procedure_hospital_fees = @unserialize($inpatient_info->procedure_hospital_fee); - - $inpatient_procedures_staff_fees = @unserialize($inpatient_info->procedure_staff_fee); - - $procedures_staff_fee = DB::table('ward_procedures')->whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->pluck("staff_fee", "procedure_id")->toArray(); - - $procedures_hospital_fee = DB::table('ward_procedures')->whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->pluck("hospital_fee", "procedure_id")->toArray(); - - $procedures_counter = 0; - ?> - - - - - - - - - - - - - @foreach($ward_procedures as $ward_procedure_record) - - - - - - - - @php $total_modal_procedures_cost += $single_procedure_cost; @endphp - @endforeach - - - - - -
    Recorded By{{ __('inpatient.name') }}{{ __('inpatient.hospital_fees') }}{{ __('inpatient.staff_fees') }}{{ __('inpatient.performed_by') }}
    - {{ get_full_name($ward_procedure_record->created_by, "id", "first_name", "last_name", "users")}} - {{ __('inpatient.on') }} {{ is_null($ward_procedure_record->procedure_date) ? streamline_date($ward_procedure_record->created_at) : streamline_date($ward_procedure_record->procedure_date) }} - - {{ get_name($ward_procedure_record->procedure_id, "id", "name", "procedures") }} - @php - $single_procedure_cost = 0; - if($ward_procedure_record->hospital_fee || $ward_procedure_record->staff_fee) { - $single_procedure_cost = $ward_procedure_record->hospital_fee + $ward_procedure_record->staff_fee; - } - @endphp - ({{ __('inpatient.cost') }} : {{ugandan_shillings($single_procedure_cost) }}) - {{ ugandan_shillings($ward_procedure_record->hospital_fee) }}{{ ugandan_shillings($ward_procedure_record->staff_fee) }} - {{ get_full_name($ward_procedure_record->performed_by, "id", "first_name", "last_name", "users") }} -
    {{ __('inpatient.cost') }}{{ ugandan_shillings($total_modal_procedures_cost) }}
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_sheet.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_sheet.blade.php deleted file mode 100755 index 9ba61d0f..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_sheet.blade.php +++ /dev/null @@ -1,3555 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('inpatient.inpatient_sheet') }}

    -
    - -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - - {{-- check for maternity delivery record if patient has one --}} - @include('ward_management::inpatient.patient_delivery_record') - {{-- --}} - -
    -
    -
    - @include('flash::message') -
    - - - {{ __('inpatient.inpatient_warning') }} - -
    -
    -
    - @php - $dob = new Carbon\Carbon(get_name($inpatient_info->patient_id, 'id', 'date_of_birth', 'patients')); - $age_diff_months = $dob->diffInMonths(Carbon\Carbon::now()); - $discharge_mortality = \DB::table('discharge_mortality_risk')->where('patient_id', $inpatient_info->patient_id) - ->where('episode_id', $inpatient_info->episode_id) - ->first(); - $eyes = [2 => 'Both eyes', 0 => 'Left eye', 1 => 'Right eye']; - $other_diagnoses = []; - @endphp - - @if(is_smart_discharge_enabled() && $age_diff_months < 61 && $discharge_mortality) -

    Patient's post discharge risk of mortality is being monitored. You can fill in the required fields here

    -

    - - @if(is_null($discharge_mortality->post_discharge_mortality_risk)) - {{ Form::hidden('is_under_pdrm_monitoring', 1, ['id' => 'is_under_pdrm_monitoring']) }} - @else - {{ Form::hidden('is_under_pdrm_monitoring', 0, ['id' => 'is_under_pdrm_monitoring']) }} - @endif - @endif - - @if(is_null($inpatient_info->bed_category_id)) -

    {{ __('inpatient.bed_category_warning') }}

    - @endif - - {{ Form::open(['route' => 'in_patient.store']) }} - - @php $patient_insurance_status = patient_insurance_status($patient_id); @endphp - - {{ Form::hidden('patient_id', $patient_id, ['id' => 'patient_id']) }} - {{ Form::hidden('episode_id', $inpatient_info->episode_id, ['id' => 'episode_id']) }} - {{ Form::hidden('inpatient_id', $inpatient_info->id, ['id' => 'inpatient_id']) }} - {{ Form::hidden('patient_insurance_status', $patient_insurance_status, ['id' => 'patient_insurance_status'])}} - {{ Form::hidden('redirect_to_pdrm_monitoring', 0, ['id' => 'redirect_to_pdrm_monitoring']) }} - -
    - - - - - - - - - - - - - - @if($inpatient_info->discharged == 1) - - @else - - @endif - - - - - -
    {{ __('inpatient.admitted') }}{{ __('inpatient.discharged') }}{{ __('inpatient.ward') }}{{ __('inpatient.specialty') }}{{ __('inpatient.residence') }}
    {{ streamline_date($inpatient_info->admitted_on) }}{{ streamline_date($inpatient_info->discharged_on) }}{{ __('inpatient.still_admitted') }}{{ get_name($inpatient_info->ward_id, 'id', 'name', 'wards') }} - {{ Form::select('speciality',$specialities,$inpatient_info->speciality_id,['class' => 'form-control']) }} - {{ patient_residence($patient->id) }}
    -
    - -
    - @if (is_tuberculosis_screening_enabled()) - @include('patients::consultations.tb_screening') - @endif - -
    - {{ Form::hidden('info_id', $inpatient_info->id) }} - {{ Form::hidden('ward_id', $inpatient_info->ward_id, ['id' => 'ward_id']) }} -
    -

    {{ __('inpatient.accomodation') }}

    -
    - - - - - - - - - - - - - - - admitted_on); - - $ward_bed_stay_records = \Streamline\Models\WardBedStay::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $bed_category_fields = 0; - $current_date = \Carbon\Carbon::now(); - $duration_in_days = $admission_date->diffInDays($current_date); - ?> - - @if(count($ward_bed_stay_records) > 0) - @foreach($ward_bed_stay_records as $record) - - {{ Form::hidden('previous_bed_stays[]', $record->id) }} - - - - - - - - - - @php $bed_category_fields++; @endphp - @endforeach - @else - - - - - - - - - - - @php $bed_category_fields++; @endphp - @endif - -
    {{ __('inpatient.bed_no') }}{{ __('inpatient.bed_category') }}{{ __('inpatient.ward') }}{{ __('inpatient.from') }}{{ __('inpatient.to') }}{{ __('inpatient.duration') }}{{ __('inpatient.bed_rate') }}
    - {{ Form::text('on_bed_number[]', $record->bed_number, ['class' => 'form-control']) }} - - {{ Form::select('on_bed_bedcategory[]', $bed_categories, $record->bed_category, ['class' => 'form-control bed_category', 'id' => 'bed_category_'.$bed_category_fields]) }} - - {{ Form::select('bed_ward[]', $wards, $record->bed_ward, ['class' => 'form-control']) }} - -
    - {{ Form::text('on_bed_from[]', $record->from, ['class' => 'form-control bed_dates','readonly','id'=>'on_bed_from_'.$bed_category_fields]) }} - -
    -
    - @if($record->still_here == 1) - - - @else -
    - {{ Form::text('on_bed_upto[]', $record->to, ['class' => 'form-control bed_dates', 'readonly', 'id'=>'on_bed_upto_'.$bed_category_fields]) }} - -
    - @endif -
    - - - - - - -
    - {{ Form::text('on_bed_number[]', '', ['class' => 'form-control'])}} - - {{ Form::select('on_bed_bedcategory[]', $bed_categories, $inpatient_info->bed_category_id, ['class' => 'form-control bed_category', 'id' => 'bed_category_0']) }} - - {{ Form::select('bed_ward[]', $wards, $inpatient_info->ward_id, ['class' => 'form-control']) }} - -
    - {{ Form::text('on_bed_from[]', $admission_date->toDateString(), ['class' => 'form-control bed_dates','readonly','id'=>'on_bed_from_0']) }} - -
    -
    - - - - @php - $current_date = \Carbon\Carbon::now(); - $duration_in_days = $admission_date->diffInDays($current_date); - @endphp - - - -
    -

    -

    - - @php - $cons_comments = \Illuminate\Support\Facades\DB::table('consultations')->where('episode_id', $episode_id)->select(['comments', 'history_comments', 'clinic_examination_comments', 'investigation_and_management_plan_comments'])->first(); - $consultation_notes = \Streamline\Models\WardInpatientDetailedNote::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'ward_id' => 0])->latest()->get(['investigation_and_management_plan_comments', 'clinic_examination_comments', 'history_comments', 'created_by','created_at']); - $right_eye_diagnoses = explode(',',get_name($episode_id, 'episode_id', 'right_eye_diagnosis', 'eye_clinic_main_exam')); - $left_eye_diagnoses = explode(',',get_name($episode_id, 'episode_id', 'left_eye_diagnosis', 'eye_clinic_main_exam')); - $is_eye_module_enabled = is_eye_module_enabled() && is_patient_in_eye_clinic($episode_id); - $diagnosis_categories_options = ""; - $all_diagnosis_categories = ['' => '- select -']; - foreach ($diagnosis_categories as $item){ - $diagnosis_categories_options .= ""; - $all_diagnosis_categories[$item->id] = $item->name; - } - @endphp - - {{-- @dd($consultation_notes->toArray()) --}} - - {{-- @if($cons_comments && ($cons_comments->comments || $cons_comments->history_comments || $cons_comments->clinic_examination_comments || $cons_comments->investigation_and_management_plan_comments)) -

    {{ __('inpatient.opd_consultation_comments') }}

    - - - @if($cons_comments->comments) - - - - - @endif - - @if($cons_comments->history_comments) - - - - - @endif - - @if($cons_comments->clinic_examination_comments) - - - - - @endif - - @if($cons_comments->investigation_and_management_plan_comments) - - - - - @endif -
    {{ __('inpatient.comments') }}{{ $cons_comments->comments }}
    {{ __('inpatient.history') }}{{ $cons_comments->history_comments }}
    {{ __('consultations.clinical_examination') }}{{ $cons_comments->clinic_examination_comments }}
    {{ __('consultations.investigation_and_mgt_plan') }}{{ $cons_comments->investigation_and_management_plan_comments }}
    - -
    - @endif --}} - - {{-- fetch consultation notes --}} - - - @if ( count($consultation_notes) > 0 ) - - {{-- History consultation notes --}} - -

    {{ __('inpatient.opd_consultation_comments') }}

    - - - - - - - - - @forelse ($consultation_notes as $consultation_note) - @if(!empty($consultation_note->history_comments)) - - - - - - @endif - @empty - {{-- --}} - @endforelse -
    {{ __('consultations.history') }}
    {{ $consultation_note->history_comments ?? '' }} By {{ get_full_name($consultation_note->created_by, 'id', 'first_name', 'last_name', 'users') }}   on {{ streamline_date_time($consultation_note->created_at) ?? '' }}
    {{ __('consultations.no_previous_notes') }}
    - - {{-- Clinic Examination consultation notes --}} - - - - - - - - - @forelse ($consultation_notes as $consultation_note) - @if(!empty($consultation_note->clinic_examination_comments)) - - - - - @endif - @empty - {{-- --}} - @endforelse -
    {{ __('consultations.clinical_examination') }}
    {{ $consultation_note->clinic_examination_comments ?? '' }} By {{ get_full_name($consultation_note->created_by, 'id', 'first_name', 'last_name', 'users') }}   on {{ streamline_date_time($consultation_note->created_at) ?? '' }}
    {{ __('consultations.no_previous_notes') }}
    - - {{-- Investigation and Management Plan consultation notes --}} - - - - - - - - @forelse ($consultation_notes as $consultation_note) - @if(!empty($consultation_note->investigation_and_management_plan_comments)) - - - - - @endif - @empty - {{-- --}} - @endforelse -
    {{ __('consultations.investigation_and_mgt_plan') }}
    {{ $consultation_note->investigation_and_management_plan_comments ?? '' }} By {{ get_full_name($consultation_note->created_by, 'id', 'first_name', 'last_name', 'users') }}   on {{ streamline_date_time($consultation_note->created_at) ?? '' }}
    {{ __('consultations.no_previous_notes') }}
    - - @endif - - - {{-- end fetch consultation notes --}} - - - - @if($anc_comments && ($anc_comments->history_comments || $anc_comments->clinic_examination_comments || $anc_comments->investigation_and_management_plan_comments)) -

    {{ __('inpatient.anc_consultation_comments') }}

    - - - @if($anc_comments->history_comments) - - - - - @endif - - @if($anc_comments->clinic_examination_comments) - - - - - @endif - - @if($anc_comments->investigation_and_management_plan_comments) - - - - - @endif -
    {{ __('inpatient.history') }}{{ $anc_comments->history_comments }}
    {{ __('consultations.clinical_examination') }}{{ $anc_comments->clinic_examination_comments }}
    {{ __('consultations.investigation_and_mgt_plan') }}{{ $anc_comments->investigation_and_management_plan_comments }}
    - -
    - @endif - - -
    -
    -
    -
    - -
    -
    -
    -
    - @if(count($documents) > 0) - @foreach($documents as $document) -
  • - {{ $document->title }} -
  • - @endforeach - @else - {{ __('inpatient.no_documents_available') }} - @endif -
    - -
    -
    -
    -
    -
    - -
    -
    - -
    -
    -
    - - - - - - - - - @if($triage) - @php - $symptoms_explode = explode(",", $triage->symptoms); - $duration_explode = explode(",", $triage->symptom_duration); - @endphp - @for($i = 0; $i < count($symptoms_explode); $i++) - - - - - @endfor - @else - - - - @endif - -
    {{ __('inpatient.symptoms') }}{{ __('inpatient.duration') }}
    - @if(isset($symptoms[$symptoms_explode[$i]])) - {{ $symptoms[$symptoms_explode[$i]] }} - @else - N/A - @endif - {{ $duration_explode[$i] ?? '' }}
    {{ __('inpatient.no_symptoms_triage') }}
    -
    -
    -
    -
    -
    - -
    -
    - -
    -
    -
    - - - - - - - - - - - @if(count($opd_investigations) > 0) - @for($i = 0; $i < count($opd_investigations['name']); $i++) - @if(isset($opd_investigations['name'][$i])) - @if(in_array($i, $opd_investigations_position)) - - - - @endif - - - - - - - @endif - @endfor - @else - - - - @endif - -
    {{ __('inpatient.name') }}{{ __('inpatient.value') }}{{ __('inpatient.normal_range') }}{{ __('inpatient.comment') }}
    -
    {{ $opd_investigations_date[array_search($i, $opd_investigations_position)] }}
    -
    {{ $opd_investigations['name'][$i] }} - @if ($is_eye_module_enabled && isset($opd_investigations['eye'][$i])) -
    {{ $eyes[$opd_investigations['eye'][$i]] }} - @endif -
    - @if($opd_investigations['type'][$i] == 1 && $opd_investigations['value'][$i] != "Pending") - View Results - @else - {{ $opd_investigations['value'][$i] }}
    - {{ $opd_investigations['result_time'][$i]?? '' }} - @endif -
    {{ $opd_investigations['normal_ranges'][$i] ?? '' }}{{ $opd_investigations['comment'][$i] }}
    {{ __('inpatient.no_opd_invs') }}
    -
    -
    -
    -
    -
    - -
    -
    - -
    -
    -
    - - - - - - - - - - - @if(count($ward_investigations) > 0) - @for($i = 0; $i < count($ward_investigations['name']); $i++) - @if(in_array($i, $ward_investigations_position)) - - - - @endif - - - - - - - @endfor - @else - - - - @endif - -
    {{ __('inpatient.name') }}{{ __('inpatient.value') }}{{ __('inpatient.normal_range') }}{{ __('inpatient.comment') }}
    -
    {{ $ward_investigations_date[array_search($i, $ward_investigations_position)] }}
    -
    {{ $ward_investigations['name'][$i] }} - - @if ($is_eye_module_enabled && isset($ward_investigations['eye'][$i])) -
    {{ $eyes[$ward_investigations['eye'][$i]] }} - @endif -
    - @if($ward_investigations['type'][$i] == 1 && $ward_investigations['value'][$i] != "Pending") - View Results - @else - {{ $ward_investigations['value'][$i] }}
    - {{ $ward_investigations['result_time'][$i]?? '' }} - @endif -
    {{ $ward_investigations['normal_ranges'][$i] ?? '' }}{{ $ward_investigations['comment'][$i] }}
    {{ __('inpatient.no_ward_invs') }}
    -
    -
    -
    -
    -
    - -
    -
    - -
    -
    - {{ __('inpatient.transfer') }} {{ $patient->first_name }} {{ $patient->last_name }} {{ __('inpatient.to_another_ward') }}

    - -
    -
    - {{ Form::label('from',__('inpatient.from')) }} -
    -
    - {{ Form::text('from', $wards[$inpatient_info->ward_id], ['class' => 'form-control', 'readonly']) }} -
    -
    - -
    -
    - {{ Form::label('to',__('inpatient.to')) }} -
    -
    - {{ Form::select('to',$wards,'',['class' => 'form-control', 'id' => 'to_ward']) }} -
    -
    - -
    -
    - {{ Form::label('date_of_transfer',__('inpatient.date_of_transfer')) }} -
    -
    - {{ Form::text('date_of_transfer','',['class' => 'form-control','id' => 'date_of_transfer','readonly']) }} -
    -
    - -
    -
    - {{ Form::label('comments',__('inpatient.comment')) }} -
    -
    - {{ Form::textarea('transfer_comments','',['class' => 'form-control','rows'=>'4','id'=>'transfer_comments']) }} -
    -
    - - {{ __('inpatient.complete_ward_transfer') }} -
    -
    -
    -
    - -
    - -
    - {{ Form::button(__('inpatient.order_investigations'),['type'=>'submit','class'=>'btn btn-primary btn-small pull-right','name'=>'submit-btn','value'=>'order_investigation']) }} -
    -
    -
    -
    - -

    - - @if(Auth::user()->can('view-patient-episode-primary-diagnoses') && !($is_eye_module_enabled)) -
    -
    - - - - - - - - - - - - - - - @if( Auth::user()->can('add-new-diagnosis-from-consultation')) - - - - - @endif - -
    {{ __('inpatient.primary_diagnosis') }}{{ __('inpatient.prompt') }}{{ __('inpatient.references') }}
    -
    - {{ Form::select('primary_diagnosis', $diagnoses, $inpatient_info->primary_diagnosis, ['class' => 'form-control select col-md-12 compulsory', 'required', 'id' => 'primary_diagnosis']) }} -
    -
    {{ (isset($inpatient_info->primary_diagnosis) && $inpatient_info->primary_diagnosis != 0) ? get_name($inpatient_info->primary_diagnosis, "id", "prompts", "diagnoses") : "" }} 
    -
    - @if(!is_null($inpatient_info->primary_diagnosis) && $inpatient_info->primary_diagnosis != 0) - @php - $reference_names = explode(",", get_name($inpatient_info->primary_diagnosis, 'id', 'reference_names', 'diagnoses')); - $reference_areas = explode(",", get_name($inpatient_info->primary_diagnosis, 'id', 'reference_areas', 'diagnoses')); - @endphp - @for($i = 0; $i < count($reference_names); $i++) - @if(isset($reference_areas[$i]) && isset($reference_names[$i])) - {{ $reference_names[$i] }} | - @endif - @endfor - @endif -
    -
    - {{ __('consultations.add_new_diagnosis') }} -
    -

    -
    - -
    -
    - - - - - - - - - - @php - $other_diagnoses = $inpatient_info->other_diagnoses ? @unserialize($inpatient_info->other_diagnoses) : []; - $other_diagnoses = is_array($other_diagnoses) ? $other_diagnoses : []; - $option_diagnoses = ""; - foreach ($diagnoses as $key => $value){ - $option_diagnoses .= ""; - } - @endphp - - @if(empty($other_diagnoses)) - - - - - - - @else - @foreach($other_diagnoses as $key => $diagnosis) - - - - - - - @endforeach - @endif - -
    {{ __('inpatient.other_diagnosis') }}{{ __('inpatient.prompt') }}{{ __('inpatient.references') }}
    - -
     
     
    - {{ Form::select('other_diagnosis[]', $diagnoses, $diagnosis, ['class' => 'form-control col-sm-12 select sec_d','onchange'=>'other_diagnosis_prompt(this.value, '.$key.')' ]) }} -
    {{ is_object($diagnoses_all->firstWhere('id',$diagnosis)) ? $diagnoses_all->firstWhere('id',$diagnosis)->prompts : '' }} 
    {{ is_object($diagnoses_all->firstWhere('id',$diagnosis)) ? $diagnoses_all->firstWhere('id',$diagnosis)->reference_names : '' }} 
    -
    -
    - - {{ __('consultations.add_row') }} - @endif - -
    - - @if ($is_eye_module_enabled && Auth::user()->can('view-patient-episode-primary-diagnoses')) -
    - @if( Auth::user()->can('add-new-diagnosis-from-consultation')) - {{ __('consultations.add_new_diagnosis') }} - @endif -
    - -
    -
    - @if($inpatient_info->right_eye_diagnosis) - - - -
    -
    - - - - - - - - - - @php - $diagnosis_id_array = explode(",", $inpatient_info->right_eye_diagnosis); - @endphp - @if(count($diagnosis_id_array) > 0) - @foreach($diagnosis_id_array as $id) - - - - - @endforeach - @else - - - -
    - @endif - - - - - -
    {{ __('patient_episode.right_eye_diagnosis') }}
    SECTIONDIAGNOSIS
    {{ get_name(get_name($id, 'id', 'diagnosis_category', 'diagnoses'), 'id', 'name', 'diagnosis_categories') }}{{ get_name($id, 'id', 'name', 'diagnoses') }}
    No Diagnosis was registered for this patient...
    -
    -
    - @else -

    {{ __('patient_episode.right_eye_diagnosis') }}

    -
    - - - - - - - - - - - -
    -
    -
    SECTION
    -
    DIAGNOSIS
    -
    -
    -
    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    - @endif -
    - -
    - @if($inpatient_info->left_eye_diagnosis) - - -
    -
    - - - - - - - - - - @php - $diagnosis_id_array = explode(",", $inpatient_info->left_eye_diagnosis); - @endphp - @if(count($diagnosis_id_array) > 0) - @foreach($diagnosis_id_array as $id) - - - - - @endforeach - @else - - - -
    - @endif - - - - - -
    {{ __('patient_episode.left_eye_diagnosis') }}
    SECTIONDIAGNOSIS
    {{ get_name(get_name($id, 'id', 'diagnosis_category', 'diagnoses'), 'id', 'name', 'diagnosis_categories') }}{{ get_name($id, 'id', 'name', 'diagnoses') }}
    No Diagnosis was registered for this patient...
    -
    -
    - @else -
    -

    {{ __('patient_episode.left_eye_diagnosis') }}

    -
    - - - - - - - - - - - -
    -
    -
    SECTION
    -
    DIAGNOSIS
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    - @endif -
    -
    -

    - -
    -
    - - - - - - - - - - - -
    Main Exam {{ __('patient_episode.right_eye_diagnosis') }}
    - - @if(count($right_eye_diagnoses) > 0 && $right_eye_diagnoses[0] !== 'N/A') -
      - @for($x = 0; $x < count($right_eye_diagnoses); $x++) - @php - $category_id = isset($right_eye_diagnoses[$x]) ? get_name($right_eye_diagnoses[$x], 'id', 'diagnosis_category', 'diagnoses') : 'N/A'; - @endphp -
    1. {{ ($category_id != 'N/A')? $all_diagnosis_categories[$category_id] : $category_id }} : {{ isset($right_eye_diagnoses[$x]) ? get_name($right_eye_diagnoses[$x], 'id', 'name', 'diagnoses') : 'N/A' }}
    2. - @endfor -
    - @else - No Diagnosis - @endif -
    -
    -
    - - - - - - - - - - - -
    Main Exam {{ __('patient_episode.left_eye_diagnosis') }}
    - @if(count($left_eye_diagnoses) > 0 && $left_eye_diagnoses[0] != 'N/A') -
      - @for($x = 0; $x < count($left_eye_diagnoses); $x++) - @php $category_id = isset($left_eye_diagnoses[$x]) ? get_name($left_eye_diagnoses[$x], 'id', 'diagnosis_category', 'diagnoses') : 'N/A'; @endphp -
    1. {{ ($category_id != 'N/A')? $all_diagnosis_categories[$category_id] : $category_id }} : {{ isset($left_eye_diagnoses[$x]) ? get_name($left_eye_diagnoses[$x], 'id', 'name', 'diagnoses') : 'N/A' }}
    2. - @endfor -
    - @else - No Diagnosis - @endif -
    -
    -
    -
    - @endif -
    -
    - @php - $opd_ordered_procedures = \Streamline\Models\OrderedProcedure::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - @endphp - @if (count($opd_ordered_procedures) > 0) -

    {{ __('inpatient.opd_ordered_procedures') }}

    -
    - - - - - - - - - - @foreach ($opd_ordered_procedures as $opd_procedures) - @php - $procedure_ids_array = explode(",", $opd_procedures->procedure_id); - $procedure_performed_array = explode(",", $opd_procedures->performed); - @endphp - - @for($i = 0; $i < count($procedure_ids_array); $i++) - - - - - - @endfor - @endforeach - -
    {{ __('inpatient.procedure') }}{{ __('inpatient.performed') }}{{ __('inpatient.performed_by') }}
    {{ get_name($procedure_ids_array[$i], 'id', 'name', 'procedures') }} - {!! $procedure_performed_array[$i] == 1 ? ''.__("consultations.performed").'' : ''. __("consultations.pending").'' !!} - - @php - $performance_details = \Streamline\Models\StaffPerformedService::where(['episode_id' => $episode_id, 'item_category' => 1, 'item_id' => $procedure_ids_array[$i]])->first(); - @endphp - - {{ ($procedure_performed_array[$i] == 1 && $performance_details)? get_full_name($performance_details->performed_by, "id", "first_name", "last_name", "users") : "N/A" }} -
    -
    - @endif - -
    - - {{ __('inpatient.note_total_procedure_cost') }} -
    - {{ __('inpatient.view_procedures_details') }} - @php $procedures_counter = 0; $can_edit_procedure_pricing = 0; @endphp - @if( Auth::user()->can('add-procedures-on-inpatient-sheet')) -
    -
    -
    {{ __('inpatient.procedures') }}
    -
    -
    -
    {{ __('inpatient.hospital_fee') }}
    -
    -
    -
    {{ __('inpatient.performed_by') }}
    -
    -
    -
    {{ __('inpatient.staff_fee') }}
    -
    -
    -
    {{ __('inpatient.date') }}
    -
    -
    - -
    -
    - @php - // get the quantity given so far of this particular treatment - $ward_procedures_ordered = DB::table('ward_procedures')->whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - @endphp - - @if(count($ward_procedures_ordered) > 0) - @foreach($ward_procedures_ordered as $ward_procedure) -
    -
    - {{ Form::hidden('procedure_record_id[]', $ward_procedure->id) }} - {{ $procedures[$ward_procedure->procedure_id] ?? '' }} - - @if ($is_eye_module_enabled && isset($eyes[$ward_procedure->eye])) - {{ Form::hidden('eye[]', $ward_procedure->eye) }}{{ $eyes[$ward_procedure->eye] }} - @endif -
    -
    - {{ Form::number('procedure_hospital_fee_display[]', $ward_procedure->hospital_fee, ['class' => 'form-control performance_fee', 'readonly'])}} -
    -
    - {{ Form::hidden('procedure_done_by_display[]', $ward_procedure->performed_by) }} - {{ Form::text('procedure_done_by_name_display[]', $users_array[$ward_procedure->performed_by] ?? '', ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::number('procedure_performance_fee_display[]', $ward_procedure->staff_fee, ['class' => 'form-control performance_fee', 'readonly']) }} -
    -
    - {{ Form::text('procedure_date_display[]',$ward_procedure->procedure_date,['class' => 'form-control procedure_date','readonly']) }} -
    -
    - -
    -

    - - @if(Auth::user()->can('add-ward-procedures-fees')) - @php $can_edit_procedure_pricing = 1; @endphp - @endif - @endforeach - @else -
    -
    - {{ Form::select('procedure_id[]', $procedures, '', ['class' => 'form-control select', 'id' => 'procedure_item_0']) }} - - @if ($is_eye_module_enabled) -

    - - @endif -
    -
    - @if(Auth::user()->can('add-ward-procedures-fees')) - @php $can_edit_procedure_pricing = 1; @endphp - {{ Form::number('procedure_hospital_fee[]', '', ['class' => 'form-control performance_fee', 'id' => 'procedure_hospital_fee_0']) }} - @else - {{ Form::number('procedure_hospital_fee[]', '', ['class' => 'form-control performance_fee', 'readonly', 'id' => 'procedure_hospital_fee_0']) }} - @endif -
    -
    - {{ Form::select('procedure_done_by[]', $users_array, '', ['class' => 'form-control select', 'id' => 'first_procedure_done_by_0'])}} -
    -
    - @if( Auth::user()->can('add-ward-procedures-fees')) - {{ Form::number('procedure_performance_fee[]', 0, ['class' => 'form-control performance_fee','id' => 'first_procedure_performance_fee_0']) }} - @else - {{ Form::number('procedure_performance_fee[]', 0, ['class' => 'form-control performance_fee', 'readonly', 'id' => 'first_procedure_performance_fee_0']) }} - @endif -
    -
    -
    - {{ Form::text('procedure_date[]','',['class' => 'form-control procedure_date','readonly']) }} - -
    -
    -
    - -
    -
    - @php $procedures_counter++; @endphp - @endif -
    -
    -
    - {{ __('inpatient.add_procedure') }} - @endif - - @php $sundries_counter = 0; @endphp - @if( Auth::user()->can('add-sundries-on-inpatient-sheet')) -
    -

    {{ __('inpatient.sundries') }} {{ __('inpatient.view_sundries_consumption_details') }}

    -
    - @php - //get the quantity given so far of this particular sundry - $ward_sundry_quantities_given = DB::table('ward_sundry_dispensations')->whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->groupBy('sundry_id')->selectRaw('*, sum(quantity_given) as quantity_given')->get(); - @endphp - -
    -
    - - - @forelse ($ward_sundry_quantities_given as $dispensed_sundry_record) - - - - - - - - @empty - - - - - - - - @endforelse - -
    - {{ Form::hidden('sundry_id[]', $dispensed_sundry_record->sundry_id) }} - - {{ $sundries[$dispensed_sundry_record->sundry_id] ?? '' }} - -
    - {{ Form::text('sundry_date[]', $dispensed_sundry_record->dispensation_date, ['class' => 'form-control sundry_date','readonly']) }} -
    -
    - {{ Form::number('sundry_quantity_dispensed_so_far[]', $dispensed_sundry_record->quantity_given, ['class' => 'form-control', 'readonly' => 'true']) }} - - {{ Form::number('sundry_quantity[]', '', ['class' => 'form-control', 'placeholder' => __('inpatient.add_more')]) }} -
    - {{ Form::select('sundry_id[]', $sundries, '', ['class' => 'form-control select']) }} - -
    - {{ Form::text('sundry_date[]','',['class' => 'form-control sundry_date','readonly']) }} - -
    -
    -
    - {{ Form::number('sundry_quantity[]', '', ['class' => 'form-control', 'placeholder' => __('inpatient.quantity')]) }} -
    -
    -
    - {{ __('inpatient.add_sundry') }} -
    -
    -
    - @endif - - @php $extras_counter = 0; @endphp - @if(Auth::user()->can('add-extras-on-inpatient-sheet') && is_inpatient_sheet_extras_enabled()) -
    -

    {{ __('inpatient.extras') }} {{ __('inpatient.view_extras_consumption_details') }}

    -
    -
    - where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->whereNull('deleted_at')->get(); - - $extras_counter = 0; - ?> - - @if(count($ward_extras_given) > 0) - @foreach($ward_extras_given as $extras_record) -
    -
    - {{ Form::text('extra_name[]', $extras_record->extra_item, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::hidden('extra_cost[]', null, ['class'=>'form-control']) }} - {{ Form::number('already_extra_cost[]', $extras_record->extra_cost, ['class' => 'form-control', 'readonly']) }} -
    -
    -
    - {{ Form::text('extra_date[]', $extras_record->dispensation_date, ['class' => 'form-control extra_date','readonly']) }} - -
    -
    -
    - -
    -
    - @endforeach - @endif -
    -
    - {{ Form::text('extra_name[]', '', ['class' => 'form-control', 'placeholder' => __('inpatient.add_extra')]) }} -
    -
    - {{ Form::number('extra_cost[]', '', ['class' => 'form-control', 'placeholder' => __('inpatient.cost')]) }} -
    -
    -
    - {{ Form::text('extra_date[]','',['class' => 'form-control extra_date','readonly']) }} - -
    -
    -
    -
    -
    -
    - {{ __('inpatient.add_extras') }} - @endif - - @php - $services_counter = 1; - $opd_ordered_services = \Streamline\Models\OrderedService::where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - $can_edit_services_pricing = 0; - @endphp - @if( Auth::user()->can('add-consultation-and-services-on-inpatient-sheet')) - @if (count($opd_ordered_services) > 0) -
    -
    -
    -

    {{ __('inpatient.opd_ordered_services') }}

    -
    - - - - - - - - - - @foreach($opd_ordered_services as $service) - @php - $service_ids = explode(",", $service->service_id); - $service_quantity = explode(",", $service->quantity); - $service_performed = explode(",", $service->performed); - @endphp - - @for($i = 0; $i < count($service_ids); $i++) - - - - - - @endfor - @endforeach - -
    {{ __('inpatient.service') }}{{ __('inpatient.quantity') }}{{ __('inpatient.performed') }}
    {{ get_name($service_ids[$i], "id", "name", "services")}}{{ $service_quantity[$i] ?? "N?A" }} - {!! (isset($service_performed[$i]) && $service_performed[$i] == 1) ? ''.__("consultations.performed").'' : ''. __("consultations.pending").'' !!} -
    -
    -
    -
    - @endif - -
    -

    {{ __('inpatient.view_consultation_details') }}

    -
    -
    -
    {{ __('inpatient.consultation_and_services') }}
    -
    -
    -
    {{ __('inpatient.unit_price') }}
    -
    -
    -
    {{ __('inpatient.staff_fee') }}
    -
    -
    -
    {{ __('inpatient.date') }}
    -
    -
    -
    {{ __('inpatient.quantity') }}
    -
    -
    -
    -
    - whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - ?> - - @if(count($ward_service_quantities_given) > 0) - @foreach($ward_service_quantities_given as $record) -
    -
    - {{ Form::hidden('ward_consultations_and_services_record_id[]', $record->id) }} - {{ Form::hidden('service_id[]', $record->service_id) }} - {{ $service_items[$record->service_id] ?? "" }} -
    -
    - {{ Form::number('service_unit_price[]', $record->unit_price, ['class' => 'form-control', 'readonly' => 'true']) }} -
    -
    - {{ Form::number('service_staff_fee[]', $record->staff_fee, ['class' => 'form-control', 'readonly' => 'true']) }} -
    -
    -
    - {{ Form::text('service_date[]', $record->dispensation_date, ['class' => 'form-control service_date','readonly']) }} - -
    -
    -
    - {{ Form::number('service_quantity_dispensed_so_far[]', $record->quantity_given, ['class' => 'form-control', 'readonly' => 'true']) }} -
    -
    - {{ Form::number('service_quantity[]', '', ['class' => 'form-control', 'placeholder' => __('inpatient.add_more')]) }} -
    -
    - -
    -
    -
    - @endforeach - @endif -
    -
    - {{ Form::select('service_id[]', $service_items, '', ['class' => 'form-control select', 'id' => 'service_item_0']) }} -
    - @if( Auth::user()->can('edit-services-prices-on-inpatient-sheet')) - @php - $can_edit_services_pricing = 1; - @endphp -
    - {{ Form::number('service_unit_price[]', '', ['class' => 'form-control', 'placeholder' => 'unit price', 'id' => 'service_unit_price_0']) }} -
    -
    - {{ Form::number('service_staff_fee[]', '', ['class' => 'form-control', 'placeholder' => 'staff fee', 'id' => 'service_staff_fee_0']) }} -
    - @else -
    - {{ Form::number('service_unit_price[]', '', ['class' => 'form-control', 'placeholder' => 'unit price', 'id' => 'service_unit_price_0', 'readonly']) }} -
    -
    - {{ Form::number('service_staff_fee[]', '', ['class' => 'form-control', 'placeholder' => 'staff fee', 'id' => 'service_staff_fee_0', 'readonly']) }} -
    - @endif -
    -
    - {{ Form::text('service_date[]','',['class' => 'form-control service_date','readonly']) }} - -
    -
    -
    - {{ Form::number('service_quantity[]', '', ['class' => 'form-control', 'placeholder' => __('inpatient.quantity')]) }} -
    -
    -
    -
    -
    - {{ __('inpatient.add_service') }} - @endif - - @include('ward_management::inpatient.patient_vitals') - -
    -
    - @php - $ward_treatment_counter = 0; - $opd_treatments = \Streamline\Models\Treatment::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'tta' => 0])->get(); - @endphp - - @if( Auth::user()->can('add-ward-treatments-on-inpatient-sheet')) - @if(count($opd_treatments) > 0) -
    -
    -

    {{ __('inpatient.opd_prescription') }}

    -
    - - - - - - - - - - @foreach ($opd_treatments as $opd_treatment) - @php - $opd_treatment_drugs = explode(",", $opd_treatment->drugs); - $opd_treatment_dose_array = isset($opd_treatment->doses) ? explode(",", $opd_treatment->doses) : []; - $opd_treatment_freq_array = isset($opd_treatment->frequencies) ? explode(",", $opd_treatment->frequencies) : []; - $opd_treatment_duration_array = isset($opd_treatment->durations) ? explode(",", $opd_treatment->durations) : []; - $opd_purchased_elsewhere_array = is_null($opd_treatment->purchased_elsewhere) ? [] : explode(",", $opd_treatment->purchased_elsewhere); - @endphp - - @for($x = 0; $x < count($opd_treatment_drugs); $x++) - @php - $drug_name = get_name($opd_treatment_drugs[$x], 'id', "name", 'drugs'); - $drug_unit = get_name(get_name($opd_treatment_drugs[$x], 'id', "unit_id", 'drugs'), "id", "name", "drug_units"); - $frequency = get_name($opd_treatment_freq_array[$x], "id", "name", "dosage_frequencies"); - @endphp - - - - - @if($opd_treatment->dispense_status == 1) - @if(isset($opd_purchased_elsewhere_array[$x]) && $opd_purchased_elsewhere_array[$x] == 1) - - @else - - @endif - @else - - @endif - - @endfor - - - - - @endforeach -
    {{ __('inpatient.name') }}{{ __('inpatient.dose') }}{{ __('inpatient.duration') }}{{ __('inpatient.status') }}
    {{ $x+1 }}. {{ $drug_name }}{{ $opd_treatment_dose_array[$x] }} {{ $drug_unit }} {{ $frequency}} {{ $opd_treatment_duration_array[$x] }}Purchased From Elsewhere{{ __('inpatient.dispensed') }}{{ __('inpatient.pending_dispensing') }}
    {{ __('inpatient.prescribed_by') }}: {{ get_full_name($opd_treatment->created_by, "id", "first_name", "last_name", "users") }} {{ __('inpatient.on') }} {{ streamline_date_time($opd_treatment->created_at) }}
    -
    -
    -
    - @endif - - @php - $stopped_ward_drugs_array = []; - @endphp - - @if(get_ward_prescription_model() == 1) -

    {{ __('inpatient.ward_prescription') }}

    -
    - - - - - - - - - - - @if(count($ward_prescriptions) > 0) - @foreach($ward_prescriptions as $ward_prescription) - @php - $ward_prescription_drugs = explode(",", $ward_prescription->drugs); - $ward_prescription_dose_array = isset($ward_prescription->doses) ? explode(",", $ward_prescription->doses) : []; - $ward_prescription_freq_array = isset($ward_prescription->frequencies) ? explode(",", $ward_prescription->frequencies) : []; - $ward_prescription_duration_array = isset($ward_prescription->durations) ? explode(",", $ward_prescription->durations) : []; - $ward_prescription_quantity_array = isset($ward_prescription->quantities_dispensed) ? explode(",", $ward_prescription->quantities_dispensed) : []; - $ward_prescription_eye_array = isset($ward_prescription->eye) ? explode(",", $ward_prescription->eye) : []; - $stopped_drugs_array = is_null($ward_prescription->stopped_drugs) ? [] : explode(",", $ward_prescription->stopped_drugs); - $stopped_ward_drugs_array = array_merge($stopped_ward_drugs_array, $stopped_drugs_array); - @endphp - - - - - @for($x = 0; $x < count($ward_prescription_drugs); $x++) - @php - $drug_name = get_name($ward_prescription_drugs[$x], 'id', "name", 'drugs'); - $drug_unit = get_name(get_name($ward_prescription_drugs[$x], 'id', "unit_id", 'drugs'), "id", "name", "drug_units"); - $frequency = get_name($ward_prescription_freq_array[$x], "id", "name", "dosage_frequencies"); - @endphp - - - - - - - @endfor - @if(Auth::user()->can('cancel-ward-prescription')) - - - - @endif - @endforeach - @else - - - - @endif - -
    {{ __('inpatient.name') }}{{ __('inpatient.dose') }}{{ __('inpatient.duration') }}{{ ucfirst(__('inpatient.quantity')) }}
    {{ __('inpatient.ordered_on') }} {{ streamline_date_time($ward_prescription->created_at) }} {{ __('inpatient.by') }} {{ get_name($ward_prescription->created_by, "id", "first_name", "users")}} {{ get_name($ward_prescription->created_by, "id", "last_name", "users")}}
    {{ $x+1 }}. {{ $drug_name }} - @if ($is_eye_module_enabled && !empty($ward_prescription_eye_array)) -
    {{ $eyes[$ward_prescription_eye_array[$x]] }} - @endif - - @if (in_array($ward_prescription_drugs[$x], $stopped_ward_drugs_array)) - Resume Drug - @else - Stop Drug - @endif -
    {{ $ward_prescription_dose_array[$x] }} {{ $drug_unit }} {{ $frequency}} {{ $ward_prescription_duration_array[$x] }}{{ $ward_prescription_quantity_array[$x] }}
    Cancel prescription
    {{ __('inpatient.no_ward_drugs') }}
    - - {{ Form::button(__('inpatient.order_ward_presc'),['type'=>'submit','class'=>'btn btn-primary btn-small pull-right','name'=>'submit-btn','value'=>'ward_prescription']) }} -
    - -

    {{ __('inpatient.ward_treatments') }} {{ __('inpatient.view_ward_treatment_details') }} Treatment Sheet

    - - - - - - - - - - - - @php $avoid_double_display_array = []; @endphp - @if(!empty($ward_prescriptions)) - @foreach($ward_prescriptions as $ward_prescription) - @php - $loaded_ward_prescriptions = explode(",", $ward_prescription->drugs); - $loaded_ward_eyes = explode(",", $ward_prescription->eye); - @endphp - - @for($j = 0; $j < count($loaded_ward_prescriptions); $j++) - @if(!isset($avoid_double_display_array[$loaded_ward_prescriptions[$j]])) - @php - // get the quantity given so far of this particular treatment - $ward_quantities_given = \Streamline\Models\WardTreatmentDispensation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'drug_id' => $loaded_ward_prescriptions[$j]])->get(); - $drug_quantity_dispensed_so_far = 0; - $drug_treatment_sheet_quantity_dispensed_so_far = 0; - - foreach($ward_quantities_given as $ward_quantity_given){ - $drug_quantity_dispensed_so_far += $ward_quantity_given->quantity_given; - } - - foreach($ward_quantities_given as $ward_quantity_given){ - $drug_treatment_sheet_quantity_dispensed_so_far += $ward_quantity_given->quantity_given_treatment_sheet; - } - @endphp - - - - - @if (in_array($loaded_ward_prescriptions[$j], $stopped_ward_drugs_array)) - - @else - - @endif - - @endif - @endfor - @endforeach - @endif - - @php $ward_quantities_given_option = \Illuminate\Support\Facades\DB::table('ward_treatment_dispensations')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->groupBy('drug_id')->selectRaw('*, sum(quantity_given) as quantity_given, sum(quantity_given_treatment_sheet) as quantity_given_treatment_sheet')->get(); @endphp - - @foreach($ward_quantities_given_option as $record) - @if(!isset($avoid_double_display_array[$record->drug_id])) - - - - - - - @endif - @endforeach - -
    {{ __('inpatient.drug') }}{{ __('inpatient.quantity_dispensed') }}   {{ __('inpatient.quantity_administered') }}   {{ __('inpatient.ward_stock_dispensed') }}
    - {{ Form::hidden('ward_treatment_id[]', 0) }} - {{ Form::hidden('ward_dispensed_drug_id[]', $loaded_ward_prescriptions[$j]) }} - {{ Form::hidden('ward_dispensed_drug_name[]', get_name($loaded_ward_prescriptions[$j],'id','name','drugs')) }} - {{ get_name($loaded_ward_prescriptions[$j],'id','name','drugs') }} - @if ($is_eye_module_enabled && !empty($loaded_ward_eyes)) -
    {{ $eyes[$loaded_ward_eyes[$j]] }} - @endif - @php $avoid_double_display_array[$loaded_ward_prescriptions[$j]] = $loaded_ward_prescriptions[$j]; @endphp -
    - {{ Form::number('ward_quantity_dispensed_so_far[]', $drug_quantity_dispensed_so_far, ['class' => 'form-control', 'readonly' => 'true', 'step' => '.01']) }} - - {{ Form::number('quantity_given_treatment_sheet[]', $drug_treatment_sheet_quantity_dispensed_so_far, ['class' => 'form-control', 'readonly' => 'true']) }} - - {{ Form::number('ward_quantity_dispensed[]', '', ['class' => 'form-control', 'placeholder' => __('inpatient.drug_stopped'),'step' => '.01', 'readonly' => 'true']) }} - - {{ Form::number('ward_quantity_dispensed[]', '', ['class' => 'form-control', 'placeholder' => __('inpatient.add_more'),'step' => '.01']) }} -
    - {{ Form::hidden('ward_treatment_id[]', 0) }} - {{ Form::hidden('ward_dispensed_drug_id[]', $record->drug_id) }} - {{ Form::hidden('ward_dispensed_drug_name[]', get_name($record->drug_id,'id','name','drugs')) }} - {{ get_name($record->drug_id,'id','name','drugs') }} - - {{ Form::number('ward_quantity_dispensed_so_far[]', $record->quantity_given, ['class' => 'form-control', 'readonly' => 'true', 'step' => '.01']) }} - - {{ Form::number('quantity_given_treatment_sheet[]', $record->quantity_given_treatment_sheet, ['class' => 'form-control', 'readonly' => 'true']) }} - - {{ Form::number('ward_quantity_dispensed[]', '', ['class' => 'form-control', 'placeholder' => __('inpatient.add_more'), 'step' => '.01']) }} -
    - @endif - - @php $ward_treatment_counter = 0; @endphp - - @if(get_ward_prescription_model() == 2) -

    {{ __('inpatient.ward_treatments') }}

    -
    -
    - @php - $inpatient_ward_treatment = @unserialize($inpatient_info->ward_treatments); - @endphp - @if(empty($inpatient_ward_treatment)) -
    - {{ Form::select('drugs[]', $drugs, '', ['class' => 'form-control select']) }} -
    -
    - {{ Form::number('drugs_days[]', '', ['class' => 'form-control', 'placeholder' => __('inpatient.days')]) }} -
    - @else - @php - // for old streamline system records which were using a weird naming convention - $ward_drugs = isset($inpatient_ward_treatment['drugs']) ? $inpatient_ward_treatment['drugs'] : $inpatient_ward_treatment['Drugs']; - $days = isset($inpatient_ward_treatment['days']) ? $inpatient_ward_treatment['days'] : $inpatient_ward_treatment['Days']; - @endphp - @if(is_array($ward_drugs)) - @for($i = 0; $i < count($ward_drugs); $i++) - @if($ward_treatment_counter > 0) -
    -
    - {{ Form::select('drugs[]', $drugs, $ward_drugs[$i], ['class' => 'form-control select']) }} -
    -
    - {{ Form::number('drugs_days[]', $days[$i], ['class' => 'form-control']) }} -
    -
    - -
    -
    - @else -
    - {{ Form::select('drugs[]', $drugs, $ward_drugs[$i], ['class' => 'form-control select']) }} -
    -
    - {{ Form::number('drugs_days[]', $days[$i], ['class' => 'form-control']) }} -
    - @endif - @php $ward_treatment_counter++; @endphp - @endfor - @else -
    - {{ Form::select('drugs[]', $drugs, '', ['class' => 'form-control select']) }} -
    -
    - {{ Form::number('drugs_days[]', '', ['class' => 'form-control', 'placeholder' => __('inpatient.days')]) }} -
    - @endif - @endif -
    -
    -
    - {{ __('inpatient.add_treatment') }} - @endif -
    - -

    Prescribed Protocols

    -
    - - - - - - - - - - - - @if(count($ordered_cancer_protocols) > 0) - @foreach($ordered_cancer_protocols as $ordered_cancer_protocol) - {{ Form::hidden('ordered_cancer_protocol_id[]', $ordered_cancer_protocol->id) }} - - - - - - - - @endforeach - @else - - - - @endif - -
    Protocol NamePrescription DatePrescribed ByStatus
    {{ get_name($ordered_cancer_protocol->protocol_id, 'id', 'name', 'cancer_protocols') }}{{ streamline_date_time($ordered_cancer_protocol->created_at) }}{{ get_full_name($ordered_cancer_protocol->created_by, 'id', 'first_name', 'last_name', 'users') }}{{ Form::select('ordered_cancer_protocol_status[]', [0 => 'Ongoing', 1 => 'Stopped', 2 => 'Completed'], $ordered_cancer_protocol->protocol_status, ['class' => 'form-control']) }} - @if($ordered_cancer_protocol->pre_chemo_status == 0 && $ordered_cancer_protocol->chemo_status == 0 && $ordered_cancer_protocol->post_chemo_status == 0) - Cancel Protocol - @endif -
    No cancer protocols prescribed
    - - @if(Auth::user()->can('prescribe-cancer-protocol')) - {{ Form::button("Prescribe Protocol",['type'=>'submit','class'=>'btn btn-primary btn-small pull-right','name'=>'submit-btn','value'=>'cancer_protocol']) }} - @endif -
    - @endif - - @if( Auth::user()->can('add-to-take-home-drugs-on-inpatient-sheet')) -

    {{ __('inpatient.tta') }}

    -
    - - - - - - - - - - - @if(count($treatment_to_take_away) > 0) - @foreach($treatment_to_take_away as $treatment) - @php - $tta_drugs_array = explode(",", $treatment->drugs); - $tta_dose_array = explode(",", $treatment->doses); - $tta_freq_array = explode(",", $treatment->frequencies); - $tta_duration_array = explode(",", $treatment->durations); - $tta_eyes_array = explode(",", $treatment->eye); - $purchased_elsewhere_array = is_null($treatment->purchased_elsewhere) ? [] : explode(",", $treatment->purchased_elsewhere); - @endphp - - - - - @for($x = 0; $x < count($tta_drugs_array); $x++) - @php - $drug_name = get_name($tta_drugs_array[$x], 'id', "name", 'drugs'); - $drug_unit = get_name(get_name($tta_drugs_array[$x], 'id', "unit_id", 'drugs'), "id", "name", "drug_units"); - $frequency = get_name($tta_freq_array[$x], "id", "name", "dosage_frequencies"); - @endphp - - - - - - @if(isset($purchased_elsewhere_array[$x]) && $purchased_elsewhere_array[$x] == 1) - - @else - @if($treatment->dispense_status == 1) - - @else - - @endif - @endif - - @endfor - @endforeach - @else - - - - @endif - -
    {{ __('inpatient.name') }}{{ __('inpatient.dose') }}{{ __('inpatient.duration') }}{{ __('inpatient.status') }}
    {{ __('inpatient.ordered_on') }} {{ streamline_date_time($treatment->created_at) }} {{ __('inpatient.by') }} {{ get_full_name($treatment->created_by, "id", "first_name", "last_name", "users") }}
    {{ $drug_name }} - @if ($is_eye_module_enabled && !empty($tta_eyes_array)) -
    {{ $eyes[($tta_eyes_array[$x] ?? 0)] }} - @endif -
    {{ $tta_dose_array[$x] }} {{ $drug_unit }} {{ $frequency}} {{ $tta_duration_array[$x] }}Purchased From Elsewhere{{ __('inpatient.dispensed') }}{{ __('inpatient.pending_dispensing') }}
    {{ __('inpatient.no_tta_ordered') }}
    - {{ Form::button(__('inpatient.order_tta'),['type'=>'submit','class'=>'btn btn-primary btn-small pull-right','name'=>'submit-btn','value'=>'order_tta']) }} -
    -
    - @endif - - {{-- Adds Theatre Surgery Notes --}} - @php $theatre_surgeries = DB::table('surgeries')->orderBy('id', 'desc')->whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->take(20)->get(); @endphp - @if( Auth::user()->can('view-theatre-notes-from-the-inpatient-sheet') && count($theatre_surgeries) > 0) - @if(!is_null($theatre_surgeries->first()->comments)) -

    {{ __('inpatient.theater_surgery_notes') }}

    - - @foreach($theatre_surgeries as $surgery) - - - - @endforeach -
    - {{ $surgery->comments }} -
    - {{ get_full_name($surgery->created_by, "id", "first_name", "last_name", "users") }} {{ __('inpatient.on') }} {{ streamline_date_time_short($surgery->created_at) }} {{ __('inpatient.print_surgery_report') }} -
    - @endif - @endif -
    -
    - - - {{-- In patient sheet with detailed notes --}} - - @if (is_inpatient_sheet_with_detailed_notes_enabled()) -
    - - - @if( Auth::user()->can('view-medical-detailed-notes-on-inpatient-sheet')) - @php $inpatient_detailed_notes = DB::table('ward_inpatient_detailed_notes')->whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); @endphp - @if(count($inpatient_detailed_notes) > 0) - - - - - @foreach($inpatient_detailed_notes as $comment_record) - - - - - - @endforeach -
    - {{ __('inpatient.print_inpatient_detailed_notes') }} -
    -
    history)) style="display:none;"@endif>{{ __('inpatient.history') }}
    - {{ $comment_record->history }} -
    result)) style="display:none;"@endif>{{ __('inpatient.results') }}
    - {{ $comment_record->result }} -
    vitals)) style="display:none;"@endif>{{ __('inpatient.vitals_and_examination') }}
    - {{ $comment_record->vitals }} -
    impression)) style="display:none;"@endif>{{ __('inpatient.impression') }}
    - {{ $comment_record->impression }} -
    plan)) style="display:none;"@endif>{{ __('inpatient.plan') }}
    - {{ $comment_record->plan }} -   - {{ get_full_name($comment_record->created_by, "id", "first_name", "last_name", "users") }} {{ __('inpatient.on') }} {{ streamline_date_time_short($comment_record->created_at) }} - - {{-- edit_doctors_detailed_notes --}} - - @if( Auth::user()->can('edit-inpatient-detailed-notes') && (auth()->user()->id == $comment_record->created_by)) - Edit - @endif - - @if( Auth::user()->can('delete-inpatient-detailed-notes') && (auth()->user()->id == $comment_record->created_by)) - {{ __('inpatient.delete') }} - @endif - - - {{-- doctors detailed notes modal --}} - - -
    -

    {{ __('inpatient.view_all_notes') }}

    - @endif - @endif - -
    - @if( Auth::user()->can('add-medical-history-on-inpatient-sheet')) -
    -

    {{ __('inpatient.history') }}

    - -
    - @endif - - @if( Auth::user()->can('add-medical-results-on-inpatient-sheet')) -
    -

    {{ __('inpatient.results') }}

    - -
    - @endif - - @if( Auth::user()->can('add-vitals-and-examination-on-inpatient-sheet')) -
    -

    {{ __('inpatient.vitals_and_examination') }}

    - -
    - @endif -
    - -
    - @if( Auth::user()->can('add-impression-on-inpatient-sheet')) -
    -

    {{ __('inpatient.impression') }}

    - -
    - @endif - - @if( Auth::user()->can('add-plan-on-inpatient-sheet')) -
    -

    {{ __('inpatient.plan') }}

    - -
    - @endif -
    - @endif - -
    - -
    -
    -

    {{ __('inpatient.doctor_progress_notes') }}

    - @php $sheet_comments = DB::table('ward_inpatient_sheet_comments')->orderBy('id', 'desc')->whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->take(1)->get(); @endphp - @if(count($sheet_comments) > 0) - - - - - @foreach($sheet_comments as $comment_record) - - - - @endforeach -
    - {{ __('inpatient.print_notes') }} -
    - {{ $comment_record->ward_comments }} -

    - {{ get_full_name($comment_record->created_by, "id", "first_name", "last_name", "users") }} {{ __('inpatient.on') }} {{ streamline_date_time_short($comment_record->created_at) }} -
    - @endif - - {{-- Adds Doctor's progress Notes --}} - @if( Auth::user()->can('add-comments-on-inpatient-sheet')) -

    {{ __('inpatient.view_all_comments') }}

    - - @endif -
    -
    -

    {{ __('inpatient.nurse_progress_notes') }}

    - @php $sheet_comments = DB::table('ward_inpatient_sheet_nurse_comments')->orderBy('id', 'desc')->whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->take(1)->get(); @endphp - @if(count($sheet_comments) > 0) - - - - - @foreach($sheet_comments as $comment_record) - - - - @endforeach -
    - {{ __('inpatient.print_notes') }} -
    - {{ $comment_record->ward_comments }} -

    - {{ get_full_name($comment_record->created_by, "id", "first_name", "last_name", "users") }} on {{ streamline_date_time_short($comment_record->created_at) }} -
    - @endif - - {{-- Adds Nurse's progress Notes --}} - @if( Auth::user()->can('add-nurse-comments-on-inpatient-sheet')) -

    {{ __('inpatient.view_all_comments') }}

    - - @endif -
    -
    - -
    - -
    -
    - @if( Auth::user()->can('view-inpatient-billing')) - {{ Form::button(__('inpatient.inpatient_billing'),['type'=>'submit','class' => 'btn btn-info', 'name'=>'submit-btn','value'=>'billing', 'id' => 'submitInpatientBillButton']) }} - @endif -
    -
    - @if( Auth::user()->can('add-inpatient-sheet-outcome')) -

    {{ __('inpatient.outcome') }}

    - {{ Form::select('outcome',$outcomes, $inpatient_info->outcome_id??'',['class' => 'form-control','id'=>'outcome']) }} - @endif - -
    outcome_id !== 2) style="display: none;" @endif> -
    -
    -
    - - -
    -
    -
    -
    died_on)) style="display: none;" @endif> -
    - {{ Form::label('died_on',__('inpatient.died_on')) }} -
    -
    - {{ Form::text('died_on', '',['class' => 'form-control compulsory datepicker-autoclose', 'readonly', 'id'=>'died_on']) }} - -
    -
    -
    -
    outcome_id !== 3) style="display: none;" @endif> -
    -
    - {{ Form::label('followup_clinic_allocation', __('consultations.assigned_clinic')) }} - {{ Form::select('followup_clinic_allocation', $clinics, $patient_appointment->followup_clinic_allocation?? 0, ['class' => 'form-control col-sm-12 compulsory']) }} -
    - -
    - {{ Form::label('followup_in_charge', __('consultations.assign_incharge')) }} - -
    - -
    - {{ Form::label('followup_when',__('consultations.when')) }} -
    - {{ Form::text('followup_when', Carbon\Carbon::parse($inpatient_info->followup_when)->format('d/m/Y')?? '',['class' => 'form-control compulsory datepicker-autoclose','readonly', 'id' => 'followup_when']) }} - -
    -
    - -
    - {{ Form::label('followup_in_time', __('consultations.appointment_time')) }} - {{ Form::time('followup_in_time',$patient_appointment->appointment_time??'',['class' => 'form-control']) }} -
    -
    -
    outcome_id !== 4) style="display: none;" @endif> -
    -
    - {{ Form::label('referral_id',__('inpatient.referred_to')) }} -
    - {{ Form::select('referral_id', $referrals, $inpatient_info->referred_to?? '', ['class' => 'form-control compulsory']) }} -
    -
    -
    - {{ Form::label('referral_notes', __('inpatient.referral_notes')) }} - -
    -
    - -
    outcome_id !== 3 && $inpatient_info->outcome_id !== 2) style="display: none;" @endif> -
    -
    - {{ Form::label('discharge_summary', __('inpatient.discharge_summary')) }} - -
    -
    -
    - {{ Form::label('clinical_summary', __('inpatient.clinical_summary')) }} - -
    -
    -
    -
    - @if( Auth::user()->can('save-inpatient-sheet')) - {{ Form::button(__('inpatient.save_inpatient_sheet'),['type'=>'submit','class' => 'btn btn-success', 'style'=>'float:right;','name'=>'submit-btn','value'=>'save', 'id' => 'submitInpatientButton']) }} - @endif -
    -
    - {{ Form::close() }} -
    -
    -
    - - - - - - - - @include('ward_management::inpatient.treatment_sheet_details') - - - - {{-- doctor comments modal --}} - - - - - - - - - - - -@endsection - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_sheet_history.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_sheet_history.blade.php deleted file mode 100755 index ad1ec59f..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_sheet_history.blade.php +++ /dev/null @@ -1,1100 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('inpatient.inpatient_sheet_history') }}

    -
    - -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - - {{-- check for maternity delivery record if patient has one --}} - @include('ward_management::inpatient.patient_delivery_record') - {{-- --}} - -
    -
    -
    - @include('flash::message') - -
    - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('inpatient.admitted') }}{{ __('inpatient.discharged') }}{{ __('inpatient.ward') }}{{ __('inpatient.specialty') }}{{ __('inpatient.residence') }}{{ __('inpatient.bed_category') }}{{ __('inpatient.bed_no') }}
    {{ streamline_date($inpatient_info->admitted_on) }}{{ streamline_date($inpatient_info->discharged_on) }}{{ get_name($inpatient_info->ward_id, 'id', 'name', 'wards') }} - {{ Form::text('speciality', $specialities[$inpatient_info->speciality_id], ['class' => 'form-control', 'readonly']) }} - {{ patient_residence($patient->id) }}{{ get_name($inpatient_info->bed_category_id, 'id', 'name', 'inpatient_bed_categories') }}{{ $inpatient_info->bed_no }}
    -
    - -
    - -
    -
    -
    - - - - - - - - - - - - - - - - -
    {{ __('inpatient.primary_diagnosis') }}{{ __('inpatient.prompt') }}{{ __('inpatient.references') }}
    -
    - {{ Form::text('primary_diagnosis', isset($diagnoses[$inpatient_info->primary_diagnosis]) ? $diagnoses[$inpatient_info->primary_diagnosis] : "", ['class' => 'form-control', 'readonly']) }} -
    -
    {{ (isset($inpatient_info->primary_diagnosis) && $inpatient_info->primary_diagnosis != 0) ? $diagnoses_all->firstWhere('id',$inpatient_info->primary_diagnosis)->prompts : "" }} 
    {{(isset($inpatient_info->primary_diagnosis) && $inpatient_info->primary_diagnosis != 0) ? $diagnoses_all->firstWhere('id',$inpatient_info->primary_diagnosis)->reference_names : "" }} 
    -
    - -
    - -
    - - - - - - - - - - @php - $other_diagnoses = unserialize($inpatient_info->other_diagnoses); - @endphp - - @if(empty($other_diagnoses)) - - - - @else - @foreach($other_diagnoses as $diagnosis) - - - - - - @endforeach - @endif - -
    {{ __('inpatient.other_diagnosis') }}{{ __('inpatient.prompt') }}{{ __('inpatient.references') }}
    - {{ __('inpatient.no_diagnosis_recorded') }} -
    - {{ Form::text('other_diagnosis', isset($diagnoses[$diagnosis]) ? $diagnoses[$diagnosis] : '', ['class' => 'form-control', 'readonly']) }} -
    {{ is_object($diagnoses_all->firstWhere('id',$diagnosis)) ? $diagnoses_all->firstWhere('id',$diagnosis)->prompts : '' }} 
    {{ is_object($diagnoses_all->firstWhere('id',$diagnosis)) ? $diagnoses_all->firstWhere('id',$diagnosis)->reference_names : '' }} 
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    - @if(count($documents) > 0) - @foreach($documents as $document) -
  • - {{ $document->title }} -
  • - @endforeach - @else - {{ __('inpatient.no_documents_available') }} - @endif -
    - -
    -
    -
    -
    -
    - -
    -
    - -
    -
    -
    - - - - - - - - - @if($triage) - @php - $symptoms_explode = explode(",", $triage->symptoms); - $duration_explode = explode(",", $triage->symptom_duration); - @endphp - @for($i = 0; $i < count($symptoms_explode); $i++) - - - - - @endfor - @else - - - - @endif - -
    {{ __('inpatient.symptoms') }}{{ __('inpatient.duration') }}
    - @if(isset($symptoms[$symptoms_explode[$i]])) - {{ $symptoms[$symptoms_explode[$i]] }} - @else - N/A - @endif - {{ isset($duration_explode[$i]) ? $duration_explode[$i] : '' }}
    {{ __('inpatient.no_symptoms_triage') }}
    -
    -
    -
    -
    -
    - -
    -
    - -
    -
    -
    - - - - - - - - - - - @if(count($opd_investigations) > 0) - @for($i = 0; $i < count($opd_investigations['name']); $i++) - @if(isset($opd_investigations['name'][$i])) - @if(in_array($i, $opd_investigations_position)) - - - - @endif - - - - - - - @endif - @endfor - @else - - - - @endif - -
    {{ __('inpatient.name') }}{{ __('inpatient.value') }}{{ __('inpatient.normal_range') }}{{ __('inpatient.comment') }}
    -
    {{ $opd_investigations_date[array_search($i, $opd_investigations_position)] }}
    -
    {{ $opd_investigations['name'][$i] }} - @if($opd_investigations['type'][$i] == 1 && $opd_investigations['value'][$i] != "Pending") - {{ __('inpatient.view_results') }} - @else - {{ $opd_investigations['value'][$i] }}
    - {{ $opd_investigations['result_time'][$i]?? '' }} - @endif -
    {{ $opd_investigations['normal_ranges'][$i] ?? '' }}{{ $opd_investigations['comment'][$i] }}
    {{ __('inpatient.no_opd_invs') }}
    -
    -
    -
    -
    -
    - -
    -
    - -
    -
    -
    - - - - - - - - - - - @if(count($ward_investigations) > 0) - @for($i = 0; $i < count($ward_investigations['name']); $i++) - @if(in_array($i, $ward_investigations_position)) - - - - @endif - - - - - - - - @endfor - @else - - - - @endif - -
    {{ __('inpatient.name') }}{{ __('inpatient.value') }}{{ __('inpatient.normal_range') }}{{ __('inpatient.comment') }}
    -
    {{ $ward_investigations_date[array_search($i, $ward_investigations_position)] }}
    -
    {{ $ward_investigations['name'][$i] }} - @if($ward_investigations['type'][$i] == 1 && $ward_investigations['value'][$i] != "Pending") - {{ __('inpatient.view_results') }} - @else - {{ $ward_investigations['value'][$i] }}
    - {{ $ward_investigations['result_time'][$i]?? '' }} - @endif -
    {{ $ward_investigations['normal_ranges'][$i] ?? '' }}{{ $ward_investigations['comment'][$i] }}
    {{ __('inpatient.no_ward_invs') }}
    -
    -
    -
    -
    -
    -
    -
    - -
    - -
    -
    -

    {{ __('inpatient.procedures') }}

    - {{ __('inpatient.view_procedures_details') }} -
    - @php - // get the quantity given so far of this particular treatment - $ward_procedures_ordered = DB::table('ward_procedures')->whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - @endphp - - @if(count($ward_procedures_ordered) > 0) - @foreach($ward_procedures_ordered as $ward_procedure) - {{ Form::text('procedure_date_display[]',$procedures[$ward_procedure->procedure_id] ?? '',['class' => 'form-control','readonly']) }} -
    - @endforeach - @endif -
    - -
    -

    {{ __('inpatient.sundries') }} {{ __('inpatient.view_sundries_consumption_details') }}

    -
    -
    - whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->groupBy('sundry_id')->selectRaw('*, sum(quantity_given) as quantity_given')->get(); - - $sundries_counter = 0; - ?> - - @if(count($ward_sundry_quantities_given) > 0) - @foreach($ward_sundry_quantities_given as $dispensed_sundry_record) -
    - {{ Form::hidden('sundry_id[]', $dispensed_sundry_record->sundry_id) }} - - {{ Form::text('sundry_name[]', $sundries[$dispensed_sundry_record->sundry_id], ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::number('sundry_quantity_dispensed_so_far[]', $dispensed_sundry_record->quantity_given, ['class' => 'form-control', 'readonly' => 'true']) }} -
    - @endforeach - @endif -
    -
    -
    - -
    -

    {{ __('inpatient.extras') }} {{ __('inpatient.view_extras_consumption_details') }}

    -
    -
    - where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->whereNull('deleted_at')->get(); - - $extras_counter = 0; - ?> - - @if(count($ward_extras_given) > 0) - @foreach($ward_extras_given as $extras_record) -
    - {{ Form::text('extra_already_given[]', $extras_record->extra_item, ['class' => 'form-control', 'readonly']) }} -
    -
    - {{ Form::number('extra_already_given[]', $extras_record->extra_cost, ['class' => 'form-control', 'readonly']) }} -
    -
    . -
    - @endforeach - @endif -
    -
    - -
    - -

    {{ __('inpatient.consultation_and_services') }} {{ __('inpatient.view_consultation_details') }}

    -
    -
    - whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->groupBy('service_id')->selectRaw('*, sum(quantity_given) as quantity_given')->get(); - - $services_counter = 0; - ?> - - @if(count($ward_service_quantities_given) > 0) - @foreach($ward_service_quantities_given as $record) -
    - {{ Form::hidden('service_id[]', $record->service_id) }} - {{ Form::text('service_name[]', isset($service_items[$record->service_id]) ? $service_items[$record->service_id] : get_name($record->service_id, "id", "name", "services"), ['class' => 'form-control', 'readonly'=> 'true']) }} -
    -
    - {{ Form::number('service_quantity_dispensed_so_far[]', $record->quantity_given, ['class' => 'form-control', 'readonly' => 'true']) }} -
    - @endforeach -

    - @endif -
    -
    -
    -
    - @if(get_ward_prescription_model() == 1) -

    {{ __('inpatient.ward_prescription') }}

    -
    - - - - - - - - - - @if(count($ward_prescriptions) > 0) - @foreach($ward_prescriptions as $ward_prescription) - @php - $ward_prescription_drugs = explode(",", $ward_prescription->drugs); - $ward_prescription_dose_array = isset($ward_prescription->doses) ? explode(",", $ward_prescription->doses) : []; - $ward_prescription_freq_array = isset($ward_prescription->frequencies) ? explode(",", $ward_prescription->frequencies) : []; - $ward_prescription_duration_array = isset($ward_prescription->durations) ? explode(",", $ward_prescription->durations) : []; - @endphp - - - - - @for($x = 0; $x < count($ward_prescription_drugs); $x++) - @php - $drug_name = get_name($ward_prescription_drugs[$x], 'id', "name", 'drugs'); - $drug_unit = get_name(get_name($ward_prescription_drugs[$x], 'id', "unit_id", 'drugs'), "id", "name", "drug_units"); - $frequency = get_name($ward_prescription_freq_array[$x], "id", "name", "dosage_frequencies"); - @endphp - - - - - - @endfor - @endforeach - @else - - - - @endif - -
    {{ __('inpatient.name') }}{{ __('inpatient.dose') }}{{ __('inpatient.duration') }}
    {{ __('inpatient.ordered_on') }} {{ streamline_date($ward_prescription->created_at) }} {{ __('inpatient.by') }} {{ get_name($ward_prescription->created_by, "id", "first_name", "users")}} {{ get_name($ward_prescription->created_by, "id", "last_name", "users")}}
    {{ $x+1 }}. {{ $drug_name }}{{ $ward_prescription_dose_array[$x] }} {{ $drug_unit }} {{ $frequency}} {{ $ward_prescription_duration_array[$x] }}
    {{ __('inpatient.no_ward_drugs') }}
    -
    - -

    {{ __('inpatient.ward_treatments') }}{{ __('inpatient.view_ward_treatment_details') }}

    - - - - - - - - - - @php $avoid_double_display_array = []; @endphp - @if(!empty($ward_prescriptions)) - @foreach($ward_prescriptions as $ward_prescription) - @php - $loaded_ward_prescriptions = explode(",", $ward_prescription->drugs); - $loaded_ward_eyes = explode(",", $ward_prescription->eye); - @endphp - - @for($j = 0; $j < count($loaded_ward_prescriptions); $j++) - @if(!isset($avoid_double_display_array[$loaded_ward_prescriptions[$j]])) - @php - // get the quantity given so far of this particular treatment - $ward_quantities_given = \Streamline\Models\WardTreatmentDispensation::where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'drug_id' => $loaded_ward_prescriptions[$j]])->get(); - $drug_quantity_dispensed_so_far = 0; - - if(count($ward_quantities_given) > 0){ - foreach($ward_quantities_given as $ward_quantity_given){ - $drug_quantity_dispensed_so_far += $ward_quantity_given->quantity_given; - } - } - @endphp - - - - - - @endif - @endfor - @endforeach - @endif - - where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->groupBy('drug_id')->selectRaw('*, sum(quantity_given) as quantity_given')->get(); - ?> - - @foreach($ward_quantities_given_option as $record) - @if(!isset($avoid_double_display_array[$record->drug_id])) - - - - - @endif - @endforeach - -
    {{ __('inpatient.drug') }}{{ __('inpatient.quantity_given_so_far') }}
    - {{ Form::hidden('ward_treatment_id[]', 0) }} - {{ Form::hidden('ward_dispensed_drug_id[]', $loaded_ward_prescriptions[$j]) }} - {{ Form::hidden('ward_dispensed_drug_name[]', get_name($loaded_ward_prescriptions[$j],'id','name','drugs')) }} - {{ get_name($loaded_ward_prescriptions[$j],'id','name','drugs') }} - @php $avoid_double_display_array[$loaded_ward_prescriptions[$j]] = $loaded_ward_prescriptions[$j]; @endphp - - {{ Form::number('ward_quantity_dispensed_so_far[]', $drug_quantity_dispensed_so_far, ['class' => 'form-control', 'readonly' => 'true', 'step' => '.01']) }} -
    - {{ Form::hidden('ward_treatment_id[]', 0) }} - {{ Form::hidden('ward_dispensed_drug_id[]', $record->drug_id) }} - {{ Form::hidden('ward_dispensed_drug_name[]', get_name($record->drug_id,'id','name','drugs')) }} - {{ get_name($record->drug_id,'id','name','drugs') }} - - {{ Form::number('ward_quantity_dispensed_so_far[]', $record->quantity_given, ['class' => 'form-control', 'readonly' => 'true', 'step' => '.01']) }} -
    - @endif - - @if(get_ward_prescription_model() == 2) -

    {{ __('inpatient.ward_treatments') }}

    -
    - - - - - - - - - @php - $inpatient_ward_treatment = unserialize($inpatient_info->ward_treatments); - $ward_treatment_counter = 0; - @endphp - @if(!isset($inpatient_ward_treatment)) - - - - @else - @php - // for old streamline system records which were using a weird naming convention - $ward_drugs = isset($inpatient_ward_treatment['drugs']) ? $inpatient_ward_treatment['drugs'] : $inpatient_ward_treatment['Drugs']; - $days = isset($inpatient_ward_treatment['days']) ? $inpatient_ward_treatment['days'] : $inpatient_ward_treatment['Days']; - @endphp - @if(is_array($ward_drugs)) - @for($i = 0; $i < count($ward_drugs); $i++) - @if(isset($drugs[$ward_drugs[$i]])) - - - - - @endif - @endfor - @else - - - - @endif - @endif - -
    {{ __('inpatient.drugs') }}{{ __('inpatient.days') }}
    {{ __('inpatient.no_ward_drugs') }}
    {{ $drugs[$ward_drugs[$i]] }}{{ Form::text('drugs_days', $days[$i], ['class' => 'form-control', 'readonly']) }}
    {{ __('inpatient.no_ward_drugs') }}
    -
    - @endif - -
    -

    {{ __('inpatient.tta') }}

    -
    - - - - - - - - - - - @if(count($treatment_to_take_away) > 0) - @foreach($treatment_to_take_away as $treatment) - @php - $tta_drugs_array = explode(",", $treatment->drugs); - $tta_dose_array = explode(",", $treatment->doses); - $tta_freq_array = explode(",", $treatment->frequencies); - $tta_duration_array = explode(",", $treatment->durations); - @endphp - - - - - @for($x = 0; $x < count($tta_drugs_array); $x++) - @php - $drug_name = get_name($tta_drugs_array[$x], 'id', "name", 'drugs'); - $drug_unit = get_name(get_name($tta_drugs_array[$x], 'id', "unit_id", 'drugs'), "id", "name", "drug_units"); - $frequency = get_name($tta_freq_array[$x], "id", "name", "dosage_frequencies"); - @endphp - - - - - - @if($treatment->dispense_status == 1) - - @else - - @endif - - @endfor - @endforeach - @else - - - - @endif - -
    {{ __('inpatient.name') }}{{ __('inpatient.dose') }}{{ __('inpatient.duration') }}{{ __('inpatient.status') }}
    {{ __('inpatient.ordered_on') }} {{ streamline_date_time($treatment->created_at) }} by {{ get_full_name($treatment->created_by, "id", "first_name", "last_name", "users") }}
    {{ $drug_name }}{{ $tta_dose_array[$x] }} {{ $drug_unit }} {{ $frequency}} {{ $tta_duration_array[$x] }}{{ __('inpatient.dispensed') }}{{ __('inpatient.pending_dispensing') }}
    {{ __('inpatient.no_tta_ordered') }}
    -
    - - @php - $inpatient_detailed_notes = DB::table('ward_inpatient_detailed_notes')->whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->take(6)->get(); - @endphp - @if(count($inpatient_detailed_notes) > 0) - - - - - @foreach($inpatient_detailed_notes as $comment_record) - - - - @endforeach -
    - {{ __('inpatient.print_inpatient_detailed_notes') }} -
    -
    history)) style="display:none;"@endif>{{ __('inpatient.history') }}
    - {{ $comment_record->history }} -
    result)) style="display:none;"@endif>{{ __('inpatient.results') }}
    - {{ $comment_record->result }} -
    vitals)) style="display:none;"@endif>{{ __('inpatient.vitals_and_examination') }}
    - {{ $comment_record->vitals }} -
    impression)) style="display:none;"@endif>{{ __('inpatient.impression') }}
    - {{ $comment_record->impression }} -
    plan)) style="display:none;"@endif>{{ __('inpatient.plan') }}
    - {{ $comment_record->plan }} -   - {{ get_full_name($comment_record->created_by, "id", "first_name", "last_name", "users") }} {{ __('inpatient.on') }} {{ streamline_date_time_short($comment_record->created_at) }} -
    - @endif - -
    -

    {{ __('inpatient.progress_notes') }}

    - whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->get(); - ?> - - @if(count($sheet_comments) > 0) - - @foreach($sheet_comments as $comment_record) - - - - - @endforeach -
    - {{ get_full_name($comment_record->created_by, "id", "first_name", "last_name", "users") }} - {{ __('inpatient.on') }} - {{ streamline_date_time($comment_record->created_at) }} - - {{ $comment_record->ward_comments }} -
    - @endif - - {{ Form::textarea('comment', $inpatient_info->ward_message, ['class' => 'form-control', 'readonly']) }} -
    -

    {{ __('inpatient.outcome') }}

    - {{ Form::text('outcome', isset($outcomes[$inpatient_info->outcome_id]) ? $outcomes[$inpatient_info->outcome_id] : "", ['class' => 'form-control', 'readonly']) }} - - @if (isset($outcomes[$inpatient_info->outcome_id]) && $inpatient_info->outcome_id == 4) -
    - {{ __('inpatient.view_referral_notes') }} -
    - @endif - - @if (isset($outcomes[$inpatient_info->outcome_id]) && $inpatient_info->outcome_id == 5) -
    - {{ streamline_date($inpatient_info->died_on) }} -
    - @endif - -
    - -

    {{ __('inpatient.discharged_by') }}

    - - @if(is_null($inpatient_info->discharged_by)) - {!! "".get_full_name($inpatient_info->created_by, 'id', 'first_name', 'last_name', 'users')."" !!} {{ __('inpatient.on') }} {{ streamline_date_time($inpatient_info->created_at) }} - @else - {!! "".get_full_name($inpatient_info->discharged_by, 'id', 'first_name', 'last_name', 'users')."" !!} {{ __('inpatient.on') }} {{ streamline_date($inpatient_info->discharged_on) }} - @endif - -

    {{ __('inpatient.inpatient_record_updated') }}

    - - @if(is_null($inpatient_info->updated_by)) - {!! "".get_full_name($inpatient_info->created_by, 'id', 'first_name', 'last_name', 'users')."" !!} {{ __('inpatient.on') }} {{ streamline_date_time($inpatient_info->created_at) }} - @else - {!! "".get_full_name($inpatient_info->updated_by, 'id', 'first_name', 'last_name', 'users')."" !!} {{ __('inpatient.on') }} {{ streamline_date($inpatient_info->updated_at) }} - @endif - -
    -
    -
    -
    - -
    - @php - $discharge_mortality_risk = \Illuminate\Support\Facades\DB::table('discharge_mortality_risk')->where('episode_id', $episode_id)->first(); - - if ($discharge_mortality_risk) { - $scheduled_followups = \Illuminate\Support\Facades\DB::table('phone_followup_patients')->where('discharge_mortality_risk_id', $discharge_mortality_risk->id)->get(); - $vht_form_generate = ($discharge_mortality_risk->child_with_proven_infection == 1) && should_vht_form_be_generated($discharge_mortality_risk->post_discharge_mortality_risk, $discharge_mortality_risk->date_of_birth); - } else { - $vht_form_generate = false; - } - @endphp - @if($vht_form_generate) - @if (count($scheduled_followups) > 0) - Print VHT Discharge form - @else - Assign VHT To Patient - @endif - @endif -
    -
    - @if(Auth::user()->can('edit-patient-inpatient')) - {{ Form::open(['route' => 'edit_inpatient_sheet']) }} - {{ Form::button(__('inpatient.modify_inpatient_info'),['type'=>'submit','class' => 'btn btn-success', 'style'=>'float:right;','name'=>'submit-btn']) }} - {{ Form::close() }} - @endif -
    -
    -
    -
    -
    - - - - - - - - - - - - -@endsection - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_sundries_print.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_sundries_print.blade.php deleted file mode 100755 index 5a088551..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_sundries_print.blade.php +++ /dev/null @@ -1,183 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Inpatient Sundries - Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') - -
    {{ __('inpatient.inpatient_sundries_details') }}
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('inpatient.patient_number') }}{{ $patient->number}} {{ __('inpatient.ward') }} - {{ get_name($inpatient_info->ward_id, 'id', 'name', 'wards') }}  |  - @if($inpatient_info->bed_category_id) - {{ get_name($inpatient_info->bed_category_id, 'id', 'name', 'inpatient_bed_categories') }} - @endif -
    {{ __('inpatient.patient_names') }}{{ $patient->first_name}} {{ $patient->last_name}} {{ __('inpatient.admitted') }} - @if($inpatient_info->discharged == 1) - @php $end_date = new DateTime($inpatient_info->discharged_on) @endphp - @else - @php $end_date = new DateTime(date('Y-m-d')) @endphp - @endif - - @php - $start_date = new DateTime($inpatient_info->admitted_on); - $days_spent_in_ward = ($end_date->diff($start_date)->format('%a')); - @endphp - - {{ streamline_date($inpatient_info->admitted_on) }} ( {{ $days_spent_in_ward }} {{ __('inpatient.days') }}) -
    {{ __('inpatient.age') }}date_of_birth); ?> {{ __('inpatient.discharged') }} - @if($inpatient_info->discharged == 1) - {{ streamline_date($inpatient_info->discharged_on) }} - @else - {{ __('inpatient.still_admitted') }} - @endif -
    {{ __('inpatient.gender') }}{{ $patient->gender == 1 ? __('inpatient.male') : __('inpatient.female') }} {{ __('inpatient.category') }} - {{ get_name($patient->category_id, 'id', 'name', 'patient_categories') }} - - @if(!is_null($patient_discount)) - ({{ $patient_discount["discount"] }} % {{ __('inpatient.discount') }}) - @endif -
    -
    - - where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->groupBy('sundry_id')->selectRaw('*, sum(quantity_given) as quantity_given')->get(); - $sundries_total_cost = $insurance_sundries = 0; - $patient_insurance_status = (patient_insurance_status($patient_id) == 1); - ?> - -
    - - - - - - - - - - - - - @foreach($ward_sundry_quantities_given as $sundry_record) - @php - $sundries_cost = $this_sundry_sp = 0; - $is_insured = 0; - $tariff_id = 0; - $benefit_id = 0; - $insurance_sundry_amount = 0; - - if($patient_insurance_status){ - $item_insurance_details = get_item_insurance_pricing($patient_id, $sundry_record->sundry_id, 5, true, $inpatient_info->ward_id); - $sundries_cost = $item_insurance_details[2]; - $insurance_sundry_amount = $item_insurance_details[1]; - $is_insured = $item_insurance_details[0]; - $tariff_id = $item_insurance_details[3]; - $benefit_id = $item_insurance_details[4]; - } else { - $sundries_cost = get_name($sundry_record->sundry_id, "id", "non_insured_price", "sundries"); - } - - //get actual total costs incase the price of item changed after dispensation to allow retro billing - $this_sundry_total_price = 0; - $per_ward_sundry_given_rows = DB::table('ward_sundry_dispensations')->whereNull('deleted_at')->where(['patient_id' => $patient_id, 'episode_id' => $episode_id, 'sundry_id' => $sundry_record->sundry_id])->get(); - - if (count($per_ward_sundry_given_rows) > 0) { - foreach ($per_ward_sundry_given_rows as $sundry_ward_record) { - $this_sundry_sp = ($sundry_ward_record->price != 0) ? $sundry_ward_record->price : $sundries_cost; - $this_sundry_total_price += ($this_sundry_sp * $sundry_ward_record->quantity_given); - $insurance_sundry_amount = $sundry_ward_record->chi_price; - } - } else { - $this_sundry_total_price = $sundry_record->quantity_given * $sundries_cost; - } - - $sundries_total_cost += $this_sundry_total_price; - $insurance_sundries += ($sundry_record->quantity_given * $insurance_sundry_amount); - @endphp - - - - - - - - - @endforeach - - - - - - -
    {{ __('inpatient.name') }}{{ __('patient_finance.unit_cost') }}{{ __('inpatient.insurance_unit_price') }}{{ __('inpatient.quantity') }}{{ __('inpatient.patient_to_pay') }}{{ __('inpatient.insurance_to_pay') }}
    {{ get_name($sundry_record->sundry_id, "id", "name", "sundries") }}{{ $this_sundry_sp }}{{ $insurance_sundry_amount }}{{ $sundry_record->quantity_given }}{{ $this_sundry_total_price }}{{ $sundry_record->quantity_given * $insurance_sundry_amount }}
    {{ __('inpatient.sundries_total') }}{{ ugandan_shillings($sundries_total_cost) }}{{ ugandan_shillings($insurance_sundries) }}
    -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_treatment_print.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_treatment_print.blade.php deleted file mode 100755 index 293885cf..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/inpatient_treatment_print.blade.php +++ /dev/null @@ -1,189 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Inpatient Sundries - Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') - -
    {{ __('inpatient.inpatient_treatment_details') }}
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('inpatient.patient_number') }}{{ $patient->number}} {{ __('inpatient.ward') }} - {{ get_name($inpatient_info->ward_id, 'id', 'name', 'wards') }}  |  - @if($inpatient_info->bed_category_id) - {{ get_name($inpatient_info->bed_category_id, 'id', 'name', 'inpatient_bed_categories') }} - @endif -
    {{ __('inpatient.patient_names') }}{{ $patient->first_name}} {{ $patient->last_name}} {{ __('inpatient.admitted') }} - @if($inpatient_info->discharged == 1) - @php $end_date = new DateTime($inpatient_info->discharged_on) @endphp - @else - @php $end_date = new DateTime(date('Y-m-d')) @endphp - @endif - - @php - $start_date = new DateTime($inpatient_info->admitted_on); - $days_spent_in_ward = ($end_date->diff($start_date)->format('%a')); - @endphp - - {{ streamline_date($inpatient_info->admitted_on) }} ( {{ $days_spent_in_ward }} {{ __('inpatient.days') }}) -
    {{ __('inpatient.age') }}date_of_birth); ?> {{ __('inpatient.discharged') }} - @if($inpatient_info->discharged == 1) - {{ streamline_date($inpatient_info->discharged_on) }} - @else - {{ __('inpatient.still_admitted') }} - @endif -
    {{ __('inpatient.gender') }}{{ $patient->gender == 1 ? __('inpatient.male') : __('inpatient.female') }} {{ __('inpatient.category') }} - {{ get_name($patient->category_id, 'id', 'name', 'patient_categories') }} - - @if(!is_null($patient_discount)) - ({{ $patient_discount["discount"] }} % {{ __('inpatient.discount') }}) - @endif -
    -
    - -
    -
    - - where(['patient_id' => $patient_id, 'episode_id' => $episode_id])->groupBy('drug_id')->selectRaw('*, sum(quantity_given) as quantity_given')->get(); - - $treatment_total_cost = 0; - ?> - - @if(count($ward_quantities_given_option2) > 0) -
    - @if(get_ward_prescription_model() == 1) -
    - {{ __('inpatient.treatments') }} -
    - - - - - - - - - - @foreach($ward_quantities_given_option2 as $record) - $patient_id, 'episode_id' => $episode_id, 'drug_id' => $record->drug_id])->get(); - ?> - - @foreach($dispensation_details as $dispensation) - @php - $drugs_cost = 0; - // check if drug and patient is eligible for insurance - if(get_name($dispensation->drug_id, "id", "insurance_coverage", "drugs") == 1 && patient_insurance_status($patient_id) == 1){ - $drugs_cost = get_name($dispensation->drug_id, "id", "insured_price", "drugs"); - //$insurance_amount = get_name($dispensation->drug_id, "id", "non_insured_price", "drugs") - $treatment_amount; - //$is_insured = 1; - } else { - $drugs_cost = get_name($dispensation->drug_id, "id", "non_insured_price", "drugs"); - } - @endphp - - - - - - - - @php - $single_drug_subtotal = $drugs_cost * $dispensation->quantity_given; - - $treatment_total_cost += $single_drug_subtotal; - @endphp - - @endforeach - @endforeach - - - - -
    {{ __('inpatient.date') }}{{ __('inpatient.name') }}{{ __('inpatient.quantity') }}{{ __('inpatient.unit_cost') }}{{ __('inpatient.subtotal') }}
    - {{ streamline_date($dispensation->created_at) }} - {{ __('inpatient.by') }}: {{ get_full_name($dispensation->created_by, "id", "first_name", "last_name", "users") }} - - {{ get_name($record->drug_id, "id", "name", "drugs") }} - - {{ $dispensation->quantity_given }} - - {{ ugandan_shillings($drugs_cost) }} - - {{ ugandan_shillings($drugs_cost * $dispensation->quantity_given) }} -
    {{ __('inpatient.treatment_total') }}{{ ugandan_shillings($treatment_total_cost) }}
    - @endif -
    - @endif -
    -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/patient_delivery_record.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/inpatient/patient_delivery_record.blade.php deleted file mode 100644 index 996259c4..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/patient_delivery_record.blade.php +++ /dev/null @@ -1,426 +0,0 @@ -@push('styles') - -@endpush - -@php - $past_delivery_record = \Streamline\Models\MaternityDeliveryRecord::where(['patient_id' => $patient_id])->get(); - $babies = \Streamline\Models\Patient::where(['parent_id' => $patient_id])->get(); -@endphp - -@if (count($past_delivery_record) > 0) - @if( Auth::user()->can('view-delivery-record')) -
    -

    {{ __('inpatient.delivery_record_details') }}

    -
    - - - - - - - - - - - - - @foreach($past_delivery_record as $past_delivery_record) - - - - - - - - - - - - @endforeach - - @if (count($babies) > 0) - - - - @php $baby_counter = 1; @endphp - @foreach($babies as $baby) - - - - - @php $baby_counter++; @endphp - @endforeach - @endif - -
    {{ __('prescriptions.date') }}{{ __('inpatient.foetal_number') }}{{ __('maternity.blood_loss') }}{{ __('maternity.blood_loss_measurement') }}{{ __('inpatient.recorded_by') }}
    - {{ streamline_date_time($past_delivery_record->created_at) }} -
    - @if(check_if_episode_is_a_followup($past_delivery_record->episode_id)) -
    ({{ __('patient_episode.review_from') }} {{ streamline_date(get_name(get_name($past_delivery_record->episode_id, 'id', 'parent_episode_id', 'patient_episodes'), 'id', 'created_at', 'patient_episodes')) }})
    - @endif -
    - {{ $past_delivery_record->foetal_number }} - {{ $past_delivery_record->blood_loss }} (mls){{ $past_delivery_record->bloodloss_measurement }}{{ get_full_name($past_delivery_record->created_by, "id", "first_name", "last_name", "users") }} - {{ __('inpatient.view_details') }} -
    Baby details
    {{ $baby_counter }}. {{ $baby->first_name." ".$baby->last_name }} ({{ $baby->number }}) {{ __('inpatient.select_baby_home') }} -
    -
    -
    - @endif -@endif - -@push('scripts') - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/patient_vitals.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/inpatient/patient_vitals.blade.php deleted file mode 100644 index 19763c65..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/patient_vitals.blade.php +++ /dev/null @@ -1,267 +0,0 @@ -@if(Auth::user()->can('view-vitals-on-inpatient-sheet')) - -
    - -

    Vitals and Observations

    - - - - @if(count($patient_vitals) > 0) - @foreach($patient_vitals as $key => $value) - - - - - @endforeach - @else - - - - @endif - -
    {{ $key }} - - - - @php $vitals_counter = 0; @endphp - @foreach($value as $value_array) - @php - if($vitals_counter > 4) { - break; - } - $vitals_counter++; - @endphp - - @endforeach - - -
    - {{ $value_array["value"] }} - -
    - - @php - try { - echo Carbon\Carbon::parse($value_array["time"])->toDateTimeString(); - } catch (Exception) {} - @endphp -
    -
    No Vitals Registered
    - - View All Vitals - Add New Vitals -@endif - - - - - -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/print_treatment_sheet.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/inpatient/print_treatment_sheet.blade.php deleted file mode 100644 index 05aa0e93..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/print_treatment_sheet.blade.php +++ /dev/null @@ -1,388 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Inpatient Bill - Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') -
    {{ __('patient_episode.treatment_sheet') }}
    - - - - - - - - - - - - - - - - - -
    {{ __('patient_file.patient_names') }}{{ $patient->first_name}} {{ $patient->last_name}}{{ __('patient_file.patient_number') }}{{ $patient->number}}{{ __('patient_file.gender') }}gender == 1 ? __('patient_file.male') : __('patient_file.female') ?>
    {{ __('patient_file.category') }} - {{ get_name($patient->category_id, 'id', 'name', 'patient_categories') }} - {{ __('inpatient.ward') }} - {{ get_name($ward_id, 'id', 'name', 'wards') }} - {{ __('layout.admission_date') }}{{ streamline_date($admitted_on) }}
    - -
    - - @if(count($ordered_cancer_protocols) > 0) - - - - - - - - - - - - - - @foreach($ordered_cancer_protocols as $ordered_cancer_protocol) - @php - $pre_chemo_drugs = json_decode($ordered_cancer_protocol->pre_chemo_drugs, true); - $chemo_drugs = json_decode($ordered_cancer_protocol->chemo_drugs, true); - $post_chemo_drugs = json_decode($ordered_cancer_protocol->post_chemo_drugs, true); - - $pre_chemo_drugs_count = count($pre_chemo_drugs); - $chemo_drugs_count = count($chemo_drugs); - $post_chemo_drugs_count = count($post_chemo_drugs); - - $pre_chemo_doses_count = array_sum(array_map(function ($value) {return count($value['dose']);}, $pre_chemo_drugs)); - $chemo_doses_count = array_sum(array_map(function ($value) {return count($value['dose']);}, $chemo_drugs)); - $post_chemo_doses_count = array_sum(array_map(function ($value) {return count($value['dose']);}, $post_chemo_drugs)); - - $pre_chemo_doses_count += array_sum(array_map(function ($value) {return array_sum(array_map(function ($value_two) {return count($value_two['duration']);}, $value['dose']));}, $pre_chemo_drugs)); - $chemo_doses_count += array_sum(array_map(function ($value) {return array_sum(array_map(function ($value_two) {return count($value_two['duration']);}, $value['dose']));}, $chemo_drugs)); - $post_chemo_doses_count += array_sum(array_map(function ($value) {return array_sum(array_map(function ($value_two) {return count($value_two['duration']);}, $value['dose']));}, $post_chemo_drugs)); - - $protocol_details = \Streamline\Models\CancerProtocol::find($ordered_cancer_protocol->protocol_id); - $duration_counter = 0; - @endphp - - - - - - - - - @for($x = 0; $x < $pre_chemo_drugs_count; $x++) - @php - $pre_chemo_duration_count = array_sum(array_map(function ($value_two) {return count($value_two['duration']);}, $pre_chemo_drugs[$x]['dose'])); - @endphp - - - - - @for($i = 0; $i < count($pre_chemo_drugs[$x]['dose']); $i++) - - - - - @for($p = 0; $p < count($pre_chemo_drugs[$x]['dose'][$i]['duration']); $p++) - - @if(is_null($pre_chemo_drugs[$x]['dose'][$i]['duration'][$p]['given_by'])) - - - @else - - - - - @endif - - - @php $duration_counter++; @endphp - @endfor - @endfor - @endfor - - - - - - @for($x = 0; $x < $chemo_drugs_count; $x++) - @php - $chemo_duration_count = array_sum(array_map(function ($value_two) {return count($value_two['duration']);}, $chemo_drugs[$x]['dose'])); - @endphp - - - - - @for($i = 0; $i < count($chemo_drugs[$x]['dose']); $i++) - - - - - @for($p = 0; $p < count($chemo_drugs[$x]['dose'][$i]['duration']); $p++) - - @if(is_null($chemo_drugs[$x]['dose'][$i]['duration'][$p]['given_by'])) - - - @else - - - - - @endif - - - @php $duration_counter++; @endphp - @endfor - @endfor - @endfor - - - - - - @for($x = 0; $x < $post_chemo_drugs_count; $x++) - @php - $post_chemo_duration_count = array_sum(array_map(function ($value_two) {return count($value_two['duration']);}, $post_chemo_drugs[$x]['dose'])); - @endphp - - - - - @for($i = 0; $i < count($post_chemo_drugs[$x]['dose']); $i++) - - - - - @for($p = 0; $p < count($post_chemo_drugs[$x]['dose'][$i]['duration']); $p++) - - @if(is_null($post_chemo_drugs[$x]['dose'][$i]['duration'][$p]['given_by'])) - - - @else - - - - - @endif - - - @php $duration_counter++; @endphp - @endfor - @endfor - @endfor - @endforeach - -
    SectionDrugDoseDurationQuantity GivenGiven ByGiven On
    -

    {{ $protocol_details->name }} @if($ordered_cancer_protocol->protocol_status != 0) ({{ [1 => 'Stopped', 2 => 'Completed'][$ordered_cancer_protocol->protocol_status] ?? '' }}) @endif

    -
    Pre-Chemo
    - {{ $drugs[$pre_chemo_drugs[$x]['drug_id']] ?? '' }} - -

    - - Factor: {{ $factors[$pre_chemo_drugs[$x]['drug_factor']] ?? '' }} - -
    - - Route: {{ $drug_routes[$pre_chemo_drugs[$x]['drug_route']] ?? '' }} -
    - @php - $drug_dosage = $drug_units[$drug_with_units[$pre_chemo_drugs[$x]['drug_id']]]; - - if ($pre_chemo_drugs[$x]['drug_factor'] == 1) { - $drug_dosage .= '/m2'; - } else if ($pre_chemo_drugs[$x]['drug_factor'] == 2) { - $drug_dosage .= '/Kg'; - } - @endphp - - Dose: {{ $pre_chemo_drugs[$x]['dose'][$i]['dose'] }} {!! $drug_dosage !!} - - @if(!empty($pre_chemo_drugs[$x]['dose'][$i]['instructions'])) -

    - {{ $pre_chemo_drugs[$x]['dose'][$i]['instructions'] }} - @endif - - @if(!empty($pre_chemo_drugs[$x]['dose'][$i]['weight_range'])) -

    - ({{ $pre_chemo_drugs[$x]['dose'][$i]['weight_range'] }}) - @endif -
    - {{ $pre_chemo_drugs[$x]['dose'][$i]['duration'][$p]['name'] }} - - {{ $pre_chemo_drugs[$x]['dose'][$i]['duration'][$p]['name'] }} - {{ $pre_chemo_drugs[$x]['dose'][$i]['duration'][$p]['quantity_given'] }}{{ $users_array[$pre_chemo_drugs[$x]['dose'][$i]['duration'][$p]['given_by']] }}{{ Carbon\Carbon::parse($pre_chemo_drugs[$x]['dose'][$i]['duration'][$p]['given_on'])->toDateTimeString() }}
    Chemo
    - {{ $drugs[$chemo_drugs[$x]['drug_id']] ?? '' }} - -

    - - Factor: {{ $factors[$chemo_drugs[$x]['drug_factor']] ?? '' }} - -
    - - Route: {{ $drug_routes[$chemo_drugs[$x]['drug_route']] ?? '' }} -
    - @php - $drug_dosage = $drug_units[$drug_with_units[$chemo_drugs[$x]['drug_id']]]; - - if ($chemo_drugs[$x]['drug_factor'] == 1) { - $drug_dosage .= '/m2'; - } else if ($chemo_drugs[$x]['drug_factor'] == 2) { - $drug_dosage .= '/Kg'; - } - @endphp - - Dose: {{ $chemo_drugs[$x]['dose'][$i]['dose'] }} {!! $drug_dosage !!} - - @if(!empty($chemo_drugs[$x]['dose'][$i]['instructions'])) -

    - {{ $chemo_drugs[$x]['dose'][$i]['instructions'] }} - @endif - - @if(!empty($chemo_drugs[$x]['dose'][$i]['weight_range'])) -

    - ({{ $chemo_drugs[$x]['dose'][$i]['weight_range'] }}) - @endif -
    - {{ $chemo_drugs[$x]['dose'][$i]['duration'][$p]['name'] }} - - {{ $chemo_drugs[$x]['dose'][$i]['duration'][$p]['name'] }} - {{ $chemo_drugs[$x]['dose'][$i]['duration'][$p]['quantity_given'] }}{{ $users_array[$chemo_drugs[$x]['dose'][$i]['duration'][$p]['given_by']] }}{{ Carbon\Carbon::parse($chemo_drugs[$x]['dose'][$i]['duration'][$p]['given_on'])->toDateTimeString() }}
    Post-Chemo
    - {{ $drugs[$post_chemo_drugs[$x]['drug_id']] ?? '' }} - -

    - - Factor: {{ $factors[$post_chemo_drugs[$x]['drug_factor']] ?? '' }} - -
    - - Route: {{ $drug_routes[$post_chemo_drugs[$x]['drug_route']] ?? '' }} -
    - @php - $drug_dosage = $drug_units[$drug_with_units[$post_chemo_drugs[$x]['drug_id']]]; - - if ($post_chemo_drugs[$x]['drug_factor'] == 1) { - $drug_dosage .= '/m2'; - } else if ($post_chemo_drugs[$x]['drug_factor'] == 2) { - $drug_dosage .= '/Kg'; - } - @endphp - - Dose: {{ $post_chemo_drugs[$x]['dose'][$i]['dose'] }} {!! $drug_dosage !!} - - @if(!empty($post_chemo_drugs[$x]['dose'][$i]['instructions'])) -

    - {{ $post_chemo_drugs[$x]['dose'][$i]['instructions'] }} - @endif - - @if(!empty($post_chemo_drugs[$x]['dose'][$i]['weight_range'])) -

    - ({{ $post_chemo_drugs[$x]['dose'][$i]['weight_range'] }}) - @endif -
    - {{ $post_chemo_drugs[$x]['dose'][$i]['duration'][$p]['name'] }} - - {{ $post_chemo_drugs[$x]['dose'][$i]['duration'][$p]['name'] }} - {{ $post_chemo_drugs[$x]['dose'][$i]['duration'][$p]['quantity_given'] }}{{ $users_array[$post_chemo_drugs[$x]['dose'][$i]['duration'][$p]['given_by']] }}{{ Carbon\Carbon::parse($post_chemo_drugs[$x]['dose'][$i]['duration'][$p]['given_on'])->toDateTimeString() }}
    - -
    - @endif - - @if(count($ward_prescriptions) > 0) - - - - - - - - - - - @foreach($ward_prescriptions as $ward_prescription) - @php - $ward_prescription_drugs = explode(",", $ward_prescription->drugs); - $ward_prescription_dose_array = isset($ward_prescription->doses) ? explode(",", $ward_prescription->doses) : []; - $ward_prescription_freq_array = isset($ward_prescription->frequencies) ? explode(",", $ward_prescription->frequencies) : []; - $ward_prescription_duration_array = isset($ward_prescription->durations) ? explode(",", $ward_prescription->durations) : []; - $ward_prescription_quantity_array = isset($ward_prescription->quantities_dispensed) ? explode(",", $ward_prescription->quantities_dispensed) : []; - @endphp - - @for($x = 0; $x < count($ward_prescription_drugs); $x++) - @php - $drug_unit = get_name(get_name($ward_prescription_drugs[$x], 'id', "unit_id", 'drugs'), "id", "name", "drug_units"); - $frequency = get_name($ward_prescription_freq_array[$x], "id", "name", "dosage_frequencies"); - $current_factor = get_name($ward_prescription_freq_array[$x], "id", "factor", "dosage_frequencies"); - - try { $current_factor = (int)ceil($current_factor); } catch (ErrorException $e) { $current_factor = 1; } - - $split_duration = explode(" ", $ward_prescription_duration_array[$x]); - $duration_counter = 0; - $opd_quantity_to_give_per_day = ceil($ward_prescription_quantity_array[$x] / ((int)$split_duration[0] * $current_factor)); - @endphp - - - - - @for($p = 0; $p < $split_duration[0]; $p++) - @for($y = 0; $y < $current_factor; $y++) - @php - // get the dispensed so far - $treatment_sheet_dispensations = \Streamline\Models\TreatmentSheetDispensations::where('ward_treatment_id', $ward_prescription->id) - ->where('drug_id', $ward_prescription_drugs[$x])->where('order_number', $duration_counter)->first(); - @endphp - - @if($treatment_sheet_dispensations) - - - - @else - - @endif - @php $duration_counter++; @endphp - - @endfor - @endfor - @endfor - @endforeach - -
    DrugDurationGiven ByGiven On
    - {{ $drugs[$ward_prescription_drugs[$x]] }} -

    - {{ $ward_prescription_dose_array[$x] }} {{ $drug_unit }} {{ $frequency}} -
    Day {{ $p + 1 }}
    Dose {{ $y + 1 }}
    {{ $users_array[$treatment_sheet_dispensations->given_by] }}{{ Carbon\Carbon::parse($treatment_sheet_dispensations->given_on)->toDateTimeString() }}Day {{ $p + 1 }}     Dose {{ $y + 1 }}
    - @endif -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/referral_notes_print.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/inpatient/referral_notes_print.blade.php deleted file mode 100755 index 87119916..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/referral_notes_print.blade.php +++ /dev/null @@ -1,346 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Referral Notes - Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') - -
    {{ __('inpatient.inpatient_referral_notes') }}
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    {{ __('inpatient.patient_number') }}{{ $patient->number}} {{ __('inpatient.ward') }} - {{ get_name($inpatient_info->ward_id, 'id', 'name', 'wards') }}  |  - @if(is_null($inpatient_info->bed_category_id)) - @else - {{ get_name($inpatient_info->bed_category_id, 'id', 'name', 'inpatient_bed_categories') }} - @endif -
    {{ __('inpatient.patient_names') }}{{ $patient->first_name}} {{ $patient->last_name}} {{ __('inpatient.admitted') }} - @if($inpatient_info->discharged == 1) - @php $end_date = new DateTime($inpatient_info->discharged_on) @endphp - @else - @php $end_date = new DateTime(date('Y-m-d')) @endphp - @endif - - @php - $start_date = new DateTime($inpatient_info->admitted_on); - $days_spent_in_ward = ($end_date->diff($start_date)->format('%a')); - @endphp - - {{ streamline_date($inpatient_info->admitted_on) }} ( {{ $days_spent_in_ward }} {{ __('inpatient.days') }}) - - {{ Form::hidden("duration", $days_spent_in_ward) }} - {{ Form::hidden("inpatient_info_id", $inpatient_info->id) }} -
    {{ __('inpatient.age') }}date_of_birth); ?> {{ __('inpatient.discharged') }} - @if($inpatient_info->discharged == 1) - {{ streamline_date($inpatient_info->discharged_on) }} - @else - {{ __('inpatient.still_admitted') }} - @endif -
    {{ __('inpatient.gender') }}{{ $patient->gender == 1 ? __('inpatient.male') : __('inpatient.female') }} {{ __('inpatient.category') }} - {{ get_name($patient->category_id, 'id', 'name', 'patient_categories') }} - - @if(!is_null($patient_discount)) - ({{ $patient_discount["discount"] }} % {{ __('inpatient.discount') }}) - @endif -
    -
    - -
    - @if( Auth::user()->can('view-patient-episode-primary-diagnoses')) -
    -
    -
    - {{ __('inpatient.primary_diagnosis') }} -
    - - @php - $primary_diagnosis = \Streamline\Models\Diagnosis::withTrashed()->find($inpatient_info->primary_diagnosis); - @endphp - - - - - - - -
    {{ $primary_diagnosis ? $primary_diagnosis->name : "" }}
    -
    - - @php - $other_diagnoses = @unserialize($inpatient_info->other_diagnoses); - @endphp - - @if(!empty($other_diagnoses)) -
    -
    - {{ __('inpatient.secondary_diagnosis') }} -
    - - - @foreach($other_diagnoses as $diagnosis) - @php - $other_diagnosis = \Streamline\Models\Diagnosis::withTrashed()->find($diagnosis); - @endphp - - - - @endforeach - -
    {{ $other_diagnosis ? $other_diagnosis->name : "" }}
    -
    - @endif -
    - @endif -
    -
    - -
    -
    -
    -
    - {{ __('inpatient.clinical_summary') }} -
    - - - - - - -
    {{ $inpatient_info->clinical_summary }}
    -
    -
    -
    - -
    - -
    -
    -
    -
    - {{ __('inpatient.investigations_done') }} -
    - - - @if(count($ward_investigations) > 0) - @for($i = 0; $i < count($ward_investigations['name']); $i++) - @if(in_array($i, $ward_investigations_position)) - - - - @endif - - - - - - - @endfor - @else - - - - @endif - -
    -
    {{ $ward_investigations_date[array_search($i, $ward_investigations_position)] }}
    -
    {{ $ward_investigations['name'][$i] }} - @if($ward_investigations['type'][$i] == 1 && $ward_investigations['value'][$i] != "Pending") - {{ __('inpatient.refer_to_investigation_report') }} - @else - {{ $ward_investigations['value'][$i] }} - @endif - {{ $ward_investigations['comment'][$i] }}
    {{ __('inpatient.no_ward_invs') }}
    -
    -
    -
    - - {{-- if patient has any treatment to take home --}} - @if (count($treatment_to_take_away) > 0) -
    - -
    -
    -
    -
    - {{ __('inpatient.treatment_on_discharge') }} -
    - - @foreach($treatment_to_take_away as $treatment) - @php - $tta_drugs_array = explode(",", $treatment->drugs); - $tta_dose_array = explode(",", $treatment->doses); - $tta_freq_array = explode(",", $treatment->frequencies); - $tta_duration_array = explode(",", $treatment->durations); - $altered = $treatment->altered; - @endphp - - @if($altered == 0) - - - - @for($x = 0; $x < count($tta_drugs_array); $x++) - @php - $drug_name = get_name($tta_drugs_array[$x], 'id', "name", 'drugs'); - $drug_unit = get_name(get_name($tta_drugs_array[$x], 'id', "unit_id", 'drugs'), "id", "name", "drug_units"); - $frequency = get_name($tta_freq_array[$x], "id", "name", "dosage_frequencies"); - @endphp - - - - - - @endfor - @else - @php - $altered_dispensed_tta = \Streamline\Models\PatientDispensing::where(['treatment_id'=>$treatment->id, 'patient_id' => $patient->patient_id, 'tta' => 1])->first(); - - $tta_drugs_array = is_object($altered_dispensed_tta) ? explode(",", $altered_dispensed_tta->drugs) : []; - $tta_dose_array = is_object($altered_dispensed_tta) ? explode(",", $altered_dispensed_tta->dose) : []; - $tta_freq_array = is_object($altered_dispensed_tta) ?explode(",", $altered_dispensed_tta->drug_frequency) : []; - $tta_duration_array = is_object($altered_dispensed_tta) ? explode(",", $altered_dispensed_tta->duration) : []; - @endphp - - - @for($x = 1; $x < count($tta_drugs_array); $x++) - @php - $drug_name = get_name($tta_drugs_array[$x], 'id', "name", 'drugs'); - $drug_unit = get_name(get_name($tta_drugs_array[$x], 'id', "unit_id", 'drugs'), "id", "name", "drug_units"); - $frequency = get_name($tta_freq_array[$x], "id", "name", "dosage_frequencies"); - @endphp - - - - - - - @endfor - @endif - @endforeach -
    {{ __('inpatient.ordered_on') }} {{ streamline_date($treatment->created_at) }}
    {{ $drug_name }}{{ $tta_dose_array[$x] }} {{ $drug_unit }} {{ $frequency}} {{ $tta_duration_array[$x] }}
    {{ is_object($altered_dispensed_tta) ? streamline_date($altered_dispensed_tta->created_at) : "" }}
    {{ $drug_name }}{{ $tta_dose_array[$x] }} {{ $drug_unit }} {{ $frequency}} {{ $tta_duration_array[$x] }}
    -
    -
    -
    - @endif - -
    - -
    -
    -
    -
    - {{ __('inpatient.referral_notes') }} -
    - - - - - - -
    {{ $inpatient_info->referral_notes }}
    -
    -
    -
    - -
    - -
    -
    -
    - - - - - - - -
    {{ __('inpatient.referred_by') }}: {{ get_full_name($inpatient_info->discharged_by, "id", "first_name", "last_name", "users")}} {{ __('inpatient.on') }} {{ streamline_date($inpatient_info->discharged_on)}} {{ __('inpatient.to') }} {{ get_name($inpatient_info->referred_to, 'id', 'name', 'referral_hospitals') }}
    -
    -
    -
    - -
    - -
    -
    -
    -
    - {{ __('inpatient.printed_by') }} -
    -
      -
    • - first_name . ' ' . Auth::user()->last_name; ?> -    .................................................... -    ({{ streamline_date(date("Y-m-d")) }}) -
    • -
    -
    -
    -
    -
    - - \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/treatment_sheet_details.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/inpatient/treatment_sheet_details.blade.php deleted file mode 100644 index 1df967c4..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/treatment_sheet_details.blade.php +++ /dev/null @@ -1,581 +0,0 @@ - - -@push('scripts') - -@endpush diff --git a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/treatment_sheet_view.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/inpatient/treatment_sheet_view.blade.php deleted file mode 100644 index 5a4af95a..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/inpatient/treatment_sheet_view.blade.php +++ /dev/null @@ -1,49 +0,0 @@ -@extends('layouts.main') - -@push('styles') - -@endpush - -@section('content') -
    -
    -

    {{ __('patient_episode.treatment_sheet') }}

    -
    -
    - -
    -
    - -
    -
    - @include('patients::allergies.header') -
    -
    - - - -{{ Form::hidden('patient_id', $patient_id, ['id' => 'patient_id']) }} -{{ Form::hidden('episode_id', $episode_id, ['id' => 'episode_id']) }} -{{ Form::hidden('ward_id', $ward_id, ['id' => 'ward_id']) }} - -@include('ward_management::inpatient.treatment_sheet_details') -@endsection - -@push('scripts') - - -@endpush diff --git a/docker/statistics/Modules/WardManagement/Resources/views/ward_item_requests/incoming_ward_requests.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/ward_item_requests/incoming_ward_requests.blade.php deleted file mode 100755 index a4a64dc8..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/ward_item_requests/incoming_ward_requests.blade.php +++ /dev/null @@ -1,169 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    Incoming ward requests

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    -
    - -
    -
    - {{ Form::open(['route' => 'ward_item_request.incoming_ward_requests' , 'data-toggle' => 'validator']) }} -
    -
    -
    -
    - {{ Form::label('ward_id', 'Wards') }} - {{ Form::select('ward_id', $wards, '', ['class' => 'form-control']) }} -
    -
    -
    -
    -
    - {{ Form::label('item_type', 'Item type') }} - {{ Form::select('item_type',[''=>'--Select--', '1' => 'Drugs', '2' => 'Sundries', '3' => 'General Items'],'',['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    - {{ Form::label('start_date','Date From') }} - {{ Form::text('start_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'start_date']) }} -
    -
    -
    -
    - {{ Form::label('end_date','Date To') }} - {{ Form::text('end_date','',['class' => 'form-control compulsory', 'required','readonly','id'=>'end_date']) }} -
    -
    -
    -
    - {{ Form::button('Search',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    -
    - {{ Form::close() }} -
    -
    - - @if($search_complete || !is_null($ward_item_requests)) -
    -
    -
    - @if($search_complete) -

    {{ streamline_date($start_date) }} to {{ streamline_date($end_date) }}

    - @else -

    Item requests in the last 24 hours

    - @endif -
    - - - - - - - - - - - - - @if(count($ward_item_requests) > 0) - @foreach($ward_item_requests as $record) - @php - $item_type = $record->item_type; - $item_ids_array = explode(",", $record->item_ids); - $item_quantities_array = explode(",", $record->item_quantities); - @endphp - - - - - - - - - @endforeach - @else - - - - @endif - -
    DateWardItemsRequested byApproval status
    - {{ streamline_date($record->created_at) }} - {{ get_name($record->ward_id, 'id', 'name', 'wards') }} - {{ count($item_ids_array) }} - @if($record->item_type == "1") Drugs - @elseif($record->item_type == "2") Sundries - @else General Items - @endif - - {{ get_full_name($record->created_by, 'id', 'first_name', 'last_name', 'users') }} - {!! $record->approved_status == 1 ? "Approved" : "Not approved"!!} - {{ Form::open(['route' => 'ward_item_request.ward_item_request_details']) }} - {{ Form::hidden('ward_item_request_id',$record->id) }} - @if($record->dispensation_status == 1 && $record->approved_status == 1) - - View Details   - @elseif($record->approved_status == 1) - @if( Auth::user()->can('dispense-ward-request')) - - @else - - @endif - @else - @if( Auth::user()->can('approve-ward-request')) - - @else - - @endif - @endif - {{ Form::close() }} -
    No records available for this search query
    -
    -
    -
    -
    - @endif -@endsection -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/ward_item_requests/print_ward_item_request_details_pdf.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/ward_item_requests/print_ward_item_request_details_pdf.blade.php deleted file mode 100755 index 499411e4..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/ward_item_requests/print_ward_item_request_details_pdf.blade.php +++ /dev/null @@ -1,165 +0,0 @@ - - - - - - - - - - - - {{ config('app.name', 'Stre@mline') }} - - - - - - - - -
    - @include('layouts.header_pdf_print') -
    Ward request items receipt
    -
    Request from {{ get_name($ward_request_record->ward_id, "id", "name", "wards") }} on {{ streamline_date($ward_request_record->created_at) }}
    - - @php - $item_ids_array = explode(",", $ward_request_record->item_ids_issued_out); - $item_quantities_array = explode(",", $ward_request_record->item_quantities); - if($ward_request_record->approved_status == "1"){ - $items_on_request_array = explode(",", $ward_request_record->item_ids); - $balance_returned_array = explode(",", $ward_request_record->balance_returned); - $quantity_approved_array = explode(",", $ward_request_record->item_quantities_approved); - $quantity_issued_out_array = explode(",", $ward_request_record->quantity_issued_out); - - /* do this to create an ass array of items to balance returned */ - $item_with_requests_associative_array = []; - $item_with_balance_associative_array = []; - for ($c=0; $c < count($items_on_request_array) ; $c++) { - $item_with_requests_associative_array[$items_on_request_array[$c]] = $item_quantities_array[$c]; - $item_with_balance_associative_array[$items_on_request_array[$c]] = $balance_returned_array[$c]; - } - /* ***** */ - } - - $total_items_cost = 0; - @endphp - - - - - - - - - - - - - - - @for($i=0; $i < count($item_ids_array); $i++) - - - - - - - - - - @endfor - -
    No. - @if($ward_request_record->item_type == "1") - Drug - @elseif($ward_request_record->item_type == "2") - Sundry - @else - General Item - @endif - Balance returnedQuantity requestedQuantity issuedUnit costAmount
    - {{ $i + 1 }} - - @if($ward_request_record->item_type == "1") - {{ get_name($item_ids_array[$i], "id", "name", "drugs") }} - @elseif($ward_request_record->item_type == "2") - {{ get_name($item_ids_array[$i], "id", "name", "sundries") }} - @else - {{ get_name($item_ids_array[$i], "id", "name", "general_items") }} - @endif - - {{ $item_with_balance_associative_array[$item_ids_array[$i]] ?? "" }} - - {{ $item_with_requests_associative_array[$item_ids_array[$i]] ?? "" }} - - {{ $quantity_issued_out_array[$i] }} - - @if($ward_request_record->item_type == 1) - {{ ugandan_shillings_with_decimals(get_name($item_ids_array[$i], "id", "cost_price", "drugs")) }} - @elseif($ward_request_record->item_type == 2) - {{ ugandan_shillings_with_decimals(get_name($item_ids_array[$i], "id", "cost_price", "sundries")) }} - @elseif($ward_request_record->item_type == 3) - {{ ugandan_shillings_with_decimals(get_name($item_ids_array[$i], "id", "cost_price", "general_items")) }} - @endif - - @if($ward_request_record->item_type == 1) - @php - $total_items_cost += $quantity_issued_out_array[$i] * get_name($item_ids_array[$i], "id", "cost_price", "drugs"); - @endphp - - {{ ugandan_shillings_with_decimals($quantity_issued_out_array[$i] * get_name($item_ids_array[$i], "id", "cost_price", "drugs")) }} - @elseif($ward_request_record->item_type == 2) - @php - $total_items_cost += $quantity_issued_out_array[$i] * get_name($item_ids_array[$i], "id", "cost_price", "sundries"); - @endphp - - {{ ugandan_shillings_with_decimals($quantity_issued_out_array[$i] * get_name($item_ids_array[$i], "id", "cost_price", "sundries")) }} - @elseif($ward_request_record->item_type == 3) - @php - $total_items_cost += $quantity_issued_out_array[$i] * get_name($item_ids_array[$i], "id", "cost_price", "general_items"); - @endphp - - {{ ugandan_shillings_with_decimals($quantity_issued_out_array[$i] * get_name($item_ids_array[$i], "id", "cost_price", "general_items")) }} - @endif -
    - -
    - - COMMENT:
    {{ $ward_request_record->comment }} - -
    - -
    -
    - RECEIVED BY:
    {{ get_full_name($ward_request_record->received_by, 'id', 'first_name', 'last_name', 'users') }} -
    -
    - ISSUED BY:
    {{ get_full_name($ward_request_record->dispensed_by, 'id', 'first_name', 'last_name', 'users') }} -
    -
    - DISPENSED ON:
    {{ streamline_date($ward_request_record->dispensed_on) }} -
    -
    - APPROVED BY:
    {{ get_full_name($ward_request_record->approved_by, 'id', 'first_name', 'last_name', 'users') }} -
    -
    -
    - - diff --git a/docker/statistics/Modules/WardManagement/Resources/views/ward_item_requests/print_ward_item_request_receipt.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/ward_item_requests/print_ward_item_request_receipt.blade.php deleted file mode 100755 index d95ccb49..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/ward_item_requests/print_ward_item_request_receipt.blade.php +++ /dev/null @@ -1,181 +0,0 @@ -@extends('layouts.main') - -@push('styles') -@endpush - -@section('content') -
    -
    -

    Ward request items receipt

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    Print


    -
    -
    - -
    -
    -
    - @php - $item_ids_array = explode(",", $ward_request_record->item_ids_issued_out); - $item_quantities_array = explode(",", $ward_request_record->item_quantities); - if($ward_request_record->approved_status == "1"){ - $items_on_request_array = explode(",", $ward_request_record->item_ids); - $balance_returned_array = explode(",", $ward_request_record->balance_returned); - $quantity_approved_array = explode(",", $ward_request_record->item_quantities_approved); - $quantity_issued_out_array = explode(",", $ward_request_record->quantity_issued_out); - - /* do this to create an ass array of items to balance returned */ - $item_with_requests_associative_array = []; - $item_with_balance_associative_array = []; - for ($c=0; $c < count($items_on_request_array) ; $c++) { - $item_with_requests_associative_array[$items_on_request_array[$c]] = $item_quantities_array[$c]; - $item_with_balance_associative_array[$items_on_request_array[$c]] = $balance_returned_array[$c]; - } - /* ***** */ - } - - $hospital_information = \Streamline\Models\HospitalInformation::first(); - @endphp - -

    - {{ $hospital_information->name }} - {{ $hospital_information->address }} - Tel: {{ $hospital_information->phone_number }}
    - Email: {{ $hospital_information->email }}
    - Department: {{ get_name($ward_request_record->ward_id, "id", "name", "wards") }}
    - Authorized by: {{ get_full_name($ward_request_record->approved_by, 'id', 'first_name', 'last_name', 'users') }}
    -

    - @php - $total_items_cost = 0; - @endphp - -
    - - - - - - - - - - - - - - @for($i=0; $i < count($item_ids_array); $i++) - - - - - - - - - - @endfor - - - - - - - - - - - - -
    No. - @if($ward_request_record->item_type == "1") - Drug - @elseif($ward_request_record->item_type == "2") - Sundry - @else - General Item - @endif - Balance returnedQuantity requestedQuantity issuedUnit costAmount
    - {{ $i + 1 }} - - @if($ward_request_record->item_type == "1") - {{ get_name($item_ids_array[$i], "id", "name", "drugs") }} - @elseif($ward_request_record->item_type == "2") - {{ get_name($item_ids_array[$i], "id", "name", "sundries") }} - @else - {{ get_name($item_ids_array[$i], "id", "name", "general_items") }} - @endif - - {{ $item_with_balance_associative_array[$item_ids_array[$i]] ?? "" }} - - {{ $item_with_requests_associative_array[$item_ids_array[$i]] ?? "" }} - - {{ $quantity_issued_out_array[$i] }} - - @if($ward_request_record->item_type == 1) - {{ ugandan_shillings_with_decimals(get_name($item_ids_array[$i], "id", "cost_price", "drugs")) }} - @elseif($ward_request_record->item_type == 2) - {{ ugandan_shillings_with_decimals(get_name($item_ids_array[$i], "id", "cost_price", "sundries")) }} - @elseif($ward_request_record->item_type == 3) - {{ ugandan_shillings_with_decimals(get_name($item_ids_array[$i], "id", "cost_price", "general_items")) }} - @endif - - @if($ward_request_record->item_type == 1) - @php - $total_items_cost += $quantity_issued_out_array[$i] * get_name($item_ids_array[$i], "id", "cost_price", "drugs"); - @endphp - - {{ ugandan_shillings_with_decimals($quantity_issued_out_array[$i] * get_name($item_ids_array[$i], "id", "cost_price", "drugs")) }} - @elseif($ward_request_record->item_type == 2) - @php - $total_items_cost += $quantity_issued_out_array[$i] * get_name($item_ids_array[$i], "id", "cost_price", "sundries"); - @endphp - - {{ ugandan_shillings_with_decimals($quantity_issued_out_array[$i] * get_name($item_ids_array[$i], "id", "cost_price", "sundries")) }} - @elseif($ward_request_record->item_type == 3) - @php - $total_items_cost += $quantity_issued_out_array[$i] * get_name($item_ids_array[$i], "id", "cost_price", "general_items"); - @endphp - - {{ ugandan_shillings_with_decimals($quantity_issued_out_array[$i] * get_name($item_ids_array[$i], "id", "cost_price", "general_items")) }} - @endif -
    Total{{ ugandan_shillings_with_decimals($total_items_cost) }}
    -
    -
    -
    - COMMENT:
    {{ $ward_request_record->comment }} -
    -

    -
    - RECEIVED BY:
    {{ get_full_name($ward_request_record->received_by, 'id', 'first_name', 'last_name', 'users') }} -
    - -
    - ISSUED BY:
    {{ get_full_name($ward_request_record->dispensed_by, 'id', 'first_name', 'last_name', 'users') }} -
    - -
    - DISPENSED ON:
    {{ streamline_date($ward_request_record->dispensed_on) }} -
    - -
    - APPROVED BY:
    {{ get_full_name($ward_request_record->approved_by, 'id', 'first_name', 'last_name', 'users') }} -
    -
    -
    -
    -
    -@endsection -@push('scripts') -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/ward_item_requests/ward_item_request.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/ward_item_requests/ward_item_request.blade.php deleted file mode 100755 index e743022e..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/ward_item_requests/ward_item_request.blade.php +++ /dev/null @@ -1,453 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    Ward request

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') - @foreach ($errors->all() as $error) -
    {{ $error }}
    - @endforeach - -
    -

    Request for ward items

    -
    -
    - {{ Form::open(['route' => 'ward_item_request.ward_item_requests' , 'data-toggle' => 'validator']) }} -
    - {{ Form::label('ward', 'SELECT WARD') }} - {{ Form::select('ward',$wards,'',['id'=>'prescription-drugs','class' => 'form-control col-sm-8 compulsory ward_allocation']) }} -
    - -
    - {{ Form::label('item_type', 'ITEM TYPE') }} - {{ Form::select('item_type',['1' => 'Drugs', '2' => 'Sundries', '3' => 'General Items'],'',['id'=>'item_type','class' => 'form-control col-sm-8 compulsory']) }} -
    -
    - -
    -
    - {{ Form::label('drugs', 'SELECT DRUGS') }} - {{ Form::select('drugs_requested[]', $drugs,'',['id'=>'prescription-drugs', 'multiple'=>true, 'class' => 'form-control prescription-drugs']) }} -
    - - - - - -
    - {{ Form::button('Confirm',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10 confirmSelection','style'=>'padding: .6rem 1.2rem;']) }} -
    - {{ Form::close() }} -
    -
    -
    -
    -
    - -@if(isset($drugs_requested) || isset($sundries_requested) || isset($general_items_requested)) -
    - {{ Form::open(['route' => 'ward_item_request.store_ward_item_requests' , 'data-toggle' => 'validator']) }} -
    -
    - - {{ !is_null($ward_id) ? get_name($ward_id, "id", "name", "wards") : ""}} requests - -
    - -
    -
    - - - - - - @if($item_type == "1" || $item_type == "2") @endif - - - - - - - - - @if(isset($drugs_requested)) - @for($i=0; $i < count($drugs_requested); $i++) - @php - $batch_records = \Streamline\Models\ItemBatchWatcher::where(['item_type' => 1, 'item_id' => $drugs_requested[$i]])->where(function ($query) { - $query->where('pharmacy_stock', '>', 0) - ->orWhere('store_stock', '>', 0); - })->get(); - - $drug_pharmacy_stock = $drug_store_stock = 0; - - if (count($batch_records) > 0) { - foreach ($batch_records as $record) { - $drug_store_stock += $record->store_stock; - $drug_pharmacy_stock += $record->pharmacy_stock; - } - } - @endphp - - - - - - - - - - - @endfor - @elseif(isset($sundries_requested)) - @for($i=0; $i < count($sundries_requested); $i++) - @php - $batch_records = \Streamline\Models\ItemBatchWatcher::where(['item_type' => 2, 'item_id' => $sundries_requested[$i]])->where(function ($query) { - $query->where('pharmacy_stock', '>', 0) - ->orWhere('store_stock', '>', 0); - })->get(); - - $sundry_pharmacy_stock = $sundry_store_stock = 0; - - if (count($batch_records) > 0) { - foreach ($batch_records as $record) { - $sundry_store_stock += $record->store_stock; - $sundry_pharmacy_stock += $record->pharmacy_stock; - } - } - @endphp - - - - - - - - - - - @endfor - @elseif(isset($general_items_requested)) - @for($i=0; $i < count($general_items_requested); $i++) - - - - {{-- --}} - - - - - - - @endfor - @endif - -
    #ItemsPharmacy StockStore stockLast Dispensation to {{ !is_null($ward_id) ? get_name($ward_id, "id", "name", "wards") : ""}}Balance on wardQuantity To Be Returned To PharmacyQuantity requested
    - {{ $i + 1 }} - - where('id', $drugs_requested[$i])->pluck('cost_price')->first(); ?> - {{ $item_type == "1" ? get_name($drugs_requested[$i], "id", "name", "drugs") : ""}} - - - - - - {{ $item_type == "1" ? $drug_pharmacy_stock : "" }} - - {{ $item_type == "1" ? $drug_store_stock : "" }} - - {{-- last quantity given and when it was given --}} - @php - $last_dispensation_details_array = last_item_dispensation_to_ward($drugs_requested[$i], 1, $ward_id); - - $last_qty_taken = $last_dispensation_details_array[0]; - $date_taken = $last_dispensation_details_array[1]; - - $drug_form_name = ""; - $drug_form_id = get_name($drugs_requested[$i], "id", "form_id", "drugs"); - $drug_form_name = get_name($drug_form_id, "id", "name", "unit_of_measure"); - @endphp - {{ $last_qty_taken }} {{ $drug_form_name }} - {!! is_null($date_taken) ? "" : "

    Taken on: ".streamline_date($date_taken)."" !!} -
    - - - - - -
    - {{ $i + 1 }} - - where('id', $sundries_requested[$i])->pluck('cost_price')->first(); ?> - {{ $item_type == "2" ? get_name($sundries_requested[$i], "id", "name", "sundries") : ""}} - - - - - - {{ $sundry_pharmacy_stock }} - - {{ $sundry_store_stock }} - - {{-- last quantity given and when it was given --}} - @php - $last_dispensation_details_array = last_item_dispensation_to_ward($sundries_requested[$i], 2, $ward_id); - - $last_qty_taken = $last_dispensation_details_array[0]; - $date_taken = $last_dispensation_details_array[1]; - @endphp - {{ $last_qty_taken }} - {!! is_null($date_taken) ? "" : "

    Taken on: ".streamline_date($date_taken)."" !!} -
    - - - - - -
    - {{ $i + 1 }} - - where('id', $general_items_requested[$i])->pluck('cost_price')->first(); ?> - {{ $item_type == "3" ? get_name($general_items_requested[$i], "id", "name", "general_items") : "" }} - - - - - - {{ $item_type == "3" ? get_name($general_items_requested[$i], "id", "pharmacy_stock", "general_items") : ""}} - - {{ $item_type == "3" ? get_name($general_items_requested[$i], "id", "store_stock", "general_items") : ""}} - - {{-- last quantity given and when it was given --}} - - - - - - -
    - -
    -
    - {{ Form::label('order_comment', 'Order Comment', ['style' => 'font-size: bolder; font-weight: 600']) }} - {{ Form::textarea('order_comment',null,['class'=>'form-control', 'rows' => 5, 'cols' => 20]) }} -
    -
    - - - {{ Form::close() }} -
    -
    -
    -
    -@else -
    -

    List of all wards' requests

    -
    - - - - - - - - - - - - - - - @if(count($all_ward_item_requests) > 0) - @foreach($all_ward_item_requests as $record) - @php - $item_type = $record->item_type; - $item_ids_array = explode(",", $record->item_ids); - $item_quantities_array = explode(",", $record->item_quantities); - @endphp - - - - - - - - - - - @endforeach - @endif - -
    DateWardQuantityRequested byApproval status
    - {{ streamline_date($record->created_at) }} - {{ get_name($record->ward_id, 'id', 'name', 'wards') }} - {{ count($item_ids_array) }} - @if ($record->item_type == 1) - Drugs - @elseif($record->item_type == 2) - Sundries - @elseif($record->item_type == 3) - General Items - @endif - - {{ get_full_name($record->created_by, 'id', 'first_name', 'last_name', 'users') }} - - @if($record->dispensation_status == 1) - Dispensed - @elseif($record->approved_status == 1) - Approved - @else - Not approved - @endif - - {{ Form::open(['route' => 'ward_item_request.show_ward_item_request_details' , 'data-toggle' => 'validator']) }} - {{ Form::hidden('ward_request_id', $record->id)}} - {{ Form::button('Details',['type'=>'submit','class'=>'btn btn-success btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::close() }} - - @if( Auth::user()->can('edit-ward-item-request')) - @if($record->dispensation_status != 1 && $record->approved_status != 1) - {{ Form::open(['route' => 'ward_item_request.edit' , 'data-toggle' => 'validator']) }} - {{ Form::hidden('ward_request_id', $record->id)}} - {{ Form::button('Edit Request',['type'=>'submit','class'=>'btn btn-warning btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::close() }} - @endif - @endif - - @if( Auth::user()->can('delete-ward-item-request')) - {{ Form::open(['route' => 'ward_item_request.delete' , 'data-toggle' => 'validator']) }} - {{ Form::hidden('ward_request_id', $record->id)}} - {{ Form::button('Delete',['type'=>'submit','class'=>'btn btn-danger btn-rounded waves-effect waves-light m-r-10']) }} - {{ Form::close() }} - @endif -
    -
    -
    -@endif - -@endsection -@push('scripts') - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/ward_item_requests/ward_item_request_details.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/ward_item_requests/ward_item_request_details.blade.php deleted file mode 100755 index 34575214..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/ward_item_requests/ward_item_request_details.blade.php +++ /dev/null @@ -1,525 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    Ward request details

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    -
    - -
    -
    - -
    -

    - -
    -
    -
    -

    Request from {{ get_name($ward_request_details->ward_id, "id", "name", "wards") }} on {{ streamline_date($ward_request_details->created_at) }}

    - - @php - $item_ids_array = explode(",", $ward_request_details->item_ids); - $item_quantities_array = explode(",", $ward_request_details->item_quantities); - $balance_during_request_array = explode("," , $ward_request_details->balance_on_ward_during_request); - $balance_returned_array = explode(",", $ward_request_details->balance_returned); - if($ward_request_details->approved_status == "1"){ - $quantity_approved_array = explode(",", $ward_request_details->item_quantities_approved); - } - - $ward_id = $ward_request_details->ward_id; - @endphp - - {{ Form::open(['route' => 'ward_item_request.store_ward_item_request_details', 'data-toggle' => 'validator']) }} - -
    - - - - - - @if($ward_request_details->item_type == "1" || $ward_request_details->item_type == "2") - - @endif - - - - - - - @if($ward_request_details->approved_status == "1") - - - @endif - - - - @for($i=0; $i < count($item_ids_array); $i++) - @php - $item_type = $ward_request_details->item_type == 3 ? 6 : $ward_request_details->item_type; //change item_type to 6 if its general item since okellogum used 3 instead of 6 - - $item_batches_records = \DB::table('item_batch_watcher')->where(['item_id' => $item_ids_array[$i], 'item_type' => $item_type])->where(function ($query) { - $query->where('pharmacy_stock', '>', 0) - ->orWhere('store_stock', '>', 0); - })->get(); - - $facade_batches_options = []; - $option_batches = ""; - foreach ($item_batches_records as $item_batch) { - $option_batches .= ""; - - $facade_batches_options[$item_batch->id] = $item_batch->batch_number." (Expiry Date: ".$item_batch->expiry_date.")"; - } - $facade_batches_options = ['' => '- select -'] + $facade_batches_options; - - //$needed_batches_from_pharm_array = get_pharmacy_batches_to_use_based_on_needed_quantity($item_ids_array[$i], $item_type, $quantity_approved_array[$i]??0); - $needed_batches_from_pharm_array = get_pharmacy_batch_watcher_ids_to_use_based_on_needed_quantity($item_ids_array[$i], $item_type, $quantity_approved_array[$i]??0); - $needed_batches_from_store_array = get_stores_batch_watcher_ids_to_use_based_on_needed_quantity($item_ids_array[$i], $item_type, $quantity_approved_array[$i]??0); - - $default_batches_to_use = $ward_request_details->item_type == "1" ? $needed_batches_from_pharm_array : $needed_batches_from_store_array; - - @endphp - - @if (count($default_batches_to_use) > 0) - @foreach ($default_batches_to_use as $batch_to_dispense => $batch_qty_to_dispense) - - - - @if($ward_request_details->item_type == "1" || $ward_request_details->item_type == "2") - - @endif - - - - - - - - @if($ward_request_details->approved_status == "1") - - - @else - - @endif - - @endforeach - @else - - - - @if($ward_request_details->item_type == "1" || $ward_request_details->item_type == "2") - - @endif - - - - - - - - @if($ward_request_details->approved_status == "1") - - item_type, $item_quantities_array[$i]); - - if($ward_request_details->item_type == "1"){ - $drug_details = \Streamline\Models\Drug::withTrashed()->find($item_ids_array[$i]); - }elseif($ward_request_details->item_type == "2"){ - $sundry_details = \Streamline\Models\Sundry::withTrashed()->find($item_ids_array[$i]); - } - ?> - - @if (batch_tracking_method() == "manual") - - @else - - @endif - @else - - @endif - - @endif - @endfor - -
    # - @if($ward_request_details->item_type == "1") - Drug - @elseif($ward_request_details->item_type == "2") - Sundry - @else - General Item - @endif - Pharmacy StockStore stockQuantity requestedBalance on wardQuantity To Be Returned To PharmacyLast dispensation to {{ !is_null($ward_id) ? get_name($ward_id, "id", "name", "wards") : ""}} - Quantity approvedQuantity issuedBatch Number ({{ batch_tracking_method()}})
    - {{ $i + 1 }} - - @if($ward_request_details->item_type == "1") - {{ get_name($item_ids_array[$i], "id", "name", "drugs") }} - @php $item_name = get_name($item_ids_array[$i], "id", "name", "drugs"); @endphp - @elseif($ward_request_details->item_type == "2") - {{ get_name($item_ids_array[$i], "id", "name", "sundries") }} - @php $item_name = get_name($item_ids_array[$i], "id", "name", "sundries"); @endphp - @else - {{ get_name($item_ids_array[$i], "id", "name", "general_items") }} - @php $item_name = get_name($item_ids_array[$i], "id", "name", "general_items"); @endphp - @endif - {{ Form::hidden('item_name[]', $item_name, ['id' => 'item_name_'. $item_ids_array[$i], 'class' => 'item_name_'.$item_ids_array[$i]]) }} - - @php - $batch_records = (new Streamline\Services\ItemsStockService())->getItemQuantityByArray($item_ids_array[$i], $item_type); - - $item_pharmacy_stock = $batch_records[1]; - $item_store_stock = $batch_records[0]; - @endphp - - {{ $item_pharmacy_stock }} - - @if($ward_request_details->item_type == "1") - {{-- {{ get_name($item_ids_array[$i], "id", "store_stock", "drugs")}} --}} - {{ $item_store_stock }} - @elseif($ward_request_details->item_type == "2") - {{-- {{ get_name($item_ids_array[$i], "id", "store_stock", "sundries") }} --}} - {{ $item_store_stock }} - @else - {{ get_name($item_ids_array[$i], "id", "store_stock", "general_items")}} - @endif - - {{ $item_quantities_array[$i] }} - - - - @if($ward_request_details->approved_status == "1") - - @else - - @endif - - @if($ward_request_details->approved_status == "1") - - @else - - @endif - - {{-- last quantity given and when it was given --}} - @php - $last_dispensation_details_array = last_item_dispensation_to_ward($item_ids_array[$i], $ward_request_details->item_type, $ward_id); - - $last_qty_taken = $last_dispensation_details_array[0]; - $date_taken = $last_dispensation_details_array[1]; - - $drug_form_name = ""; - - if ($ward_request_details->item_type ==1) { - $drug_form_id = get_name($item_ids_array[$i], "id", "form_id", "drugs"); - $drug_form_name = get_name($drug_form_id, "id", "name", "unit_of_measure"); - } - @endphp - {{ $last_qty_taken }} {{ $drug_form_name }} - {!! is_null($date_taken) ? "" : "

    Taken on: ".streamline_date($date_taken)."" !!} -
    - @if($ward_request_details->approved_status == "1") - - @else - - @endif - - @if($ward_request_details->approved_status == "1") - - @else -
    - -
    - @endif -
    - {{ Form::select('dispensed_from_batch[]', $facade_batches_options, $batch_to_dispense, ['class' => 'form-control compulsory batchScan', 'required'])}} - {{ __('stores.add_batch_small') }} -     - {{ __('stores.remove_small') }} -
    - {{ $i + 1 }} - - @if($ward_request_details->item_type == "1") - {{ get_name($item_ids_array[$i], "id", "name", "drugs") }} - @php $item_name = get_name($item_ids_array[$i], "id", "name", "drugs"); @endphp - @elseif($ward_request_details->item_type == "2") - {{ get_name($item_ids_array[$i], "id", "name", "sundries") }} - @php $item_name = get_name($item_ids_array[$i], "id", "name", "sundries"); @endphp - @else - {{ get_name($item_ids_array[$i], "id", "name", "general_items") }} - @php $item_name = get_name($item_ids_array[$i], "id", "name", "general_items"); @endphp - @endif - {{ Form::hidden('item_name[]', $item_name, ['id' => 'item_name_'. $item_ids_array[$i], 'class' => 'item_name_'.$item_ids_array[$i]]) }} - - @php - $batch_records = (new Streamline\Services\ItemsStockService())->getItemQuantityByArray($item_ids_array[$i], $item_type); - - $item_pharmacy_stock = $batch_records[1]; - $item_store_stock = $batch_records[0]; - @endphp - - {{ $item_pharmacy_stock }} - - @if($ward_request_details->item_type == "1") - {{-- {{ get_name($item_ids_array[$i], "id", "store_stock", "drugs")}} --}} - {{ $item_store_stock }} - @elseif($ward_request_details->item_type == "2") - {{-- {{ get_name($item_ids_array[$i], "id", "store_stock", "sundries") }} --}} - {{ $item_store_stock }} - @else - {{ get_name($item_ids_array[$i], "id", "store_stock", "general_items")}} - @endif - - {{ $item_quantities_array[$i] }} - - - - @if($ward_request_details->approved_status == "1") - - @else - - @endif - - @if($ward_request_details->approved_status == "1") - - @else - - @endif - - {{-- last quantity given and when it was given --}} - @php - $last_dispensation_details_array = last_item_dispensation_to_ward($item_ids_array[$i], $ward_request_details->item_type, $ward_id); - - $last_qty_taken = $last_dispensation_details_array[0]; - $date_taken = $last_dispensation_details_array[1]; - - $drug_form_name = ""; - - if ($ward_request_details->item_type ==1) { - $drug_form_id = get_name($item_ids_array[$i], "id", "form_id", "drugs"); - $drug_form_name = get_name($drug_form_id, "id", "name", "unit_of_measure"); - } - @endphp - {{ $last_qty_taken }} {{ $drug_form_name }} - {!! is_null($date_taken) ? "" : "

    Taken on: ".streamline_date($date_taken)."" !!} -
    - @if($ward_request_details->approved_status == "1") - - @else - - @endif - - @if($ward_request_details->approved_status == "1") - - @else -
    - -
    - @endif -
    - - {{ __('stores.add_batch_small') }} - - {{-- @if (count($auto_deductable_batches_array) > 0) - @foreach ($auto_deductable_batches_array as $deductable_batch => $quantity) - {{ Form::select('dispensed_from_batch[]', $facade_batches_options, $deductable_batch, ['class' => 'form-control compulsory batchScan']) }} - @endforeach - @else --}} - {{ Form::select('dispensed_from_batch[]', $facade_batches_options, "", ['class' => 'form-control compulsory batchScan', 'required']) }} - {{-- @endif --}} - - {{ __('stores.add_batch_small') }} -    - {{ __('stores.remove_small') }} -
    -
    - @if (!is_null($ward_request_details->order_comment)) -
    -
    - {{ Form::label('order_comment', 'Order Comment', ['style' => 'font-size: bolder; font-weight: 600']) }} - {{ Form::textarea('order_comment',$ward_request_details->order_comment,['class'=>'form-control', 'rows' => 5, 'cols' => 20, 'readonly']) }} -
    -
    - @endif -
    -
    - -
    -
    -
    - @if($ward_request_details->approved_status == "1") -
    -
    - {{ Form::label('received_by', 'RECEIVED BY') }} - {{ Form::select('received_by', $staff_array, '', ['id'=>'received_by','class' => 'form-control col-sm-8 compulsory ward_allocation','required']) }} -
    -
    - -
    -
    - {{ Form::label('received_from', 'RECEIVED FROM') }} - {{ Form::select('received_from', ['1' => 'Pharmacy', '2' => 'Stores'], $ward_request_details->item_type == "1" ? 1 : 2, ['class' => 'form-control col-sm-8 compulsory receivedFromOption','required']) }} -
    -
    - -
    - {{ Form::label('dispensation_date','DISPENSED ON') }} -
    - {{ Form::text('dispensation_date', '', ['class' => 'form-control compulsory', 'required','readonly','id'=>'datepicker-autoclose']) }} - -
    -
    - -
    - Approved by - {{ get_full_name($ward_request_details->approved_by, 'id', 'first_name', 'last_name', 'users') }} -
    - @else -
    -
    - {{ Form::label('comment', 'COMMENT') }} - {{ Form::textarea('comment', '', ['class' => 'form-control col-sm-8']) }} -
    -
    - @endif - -
    - @if($ward_request_details->approved_status == "1") - - @else - - @endif - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection -@push('scripts') - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/ward_item_requests/ward_item_request_edit.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/ward_item_requests/ward_item_request_edit.blade.php deleted file mode 100755 index 0e3c9794..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/ward_item_requests/ward_item_request_edit.blade.php +++ /dev/null @@ -1,332 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    Ward request edit

    -
    -
    - -
    -
    - -
    -
    -
    -
    - - -
    -
    - - @include('flash::message') - @foreach ($errors->all() as $error) -
    {{ $error }}
    - @endforeach -
    -
    - - @php - $item_ids_array = explode(",", $ward_request_details->item_ids); - $item_quantities_array = explode(",", $ward_request_details->item_quantities); - $balance_during_request_array = explode("," , $ward_request_details->balance_on_ward_during_request); - $balance_returned_array = explode(",", $ward_request_details->balance_returned); - if($ward_request_details->approved_status == "1"){ - $quantity_approved_array = explode(",", $ward_request_details->item_quantities_approved); - } - @endphp - -
    -
    -
    - {{ Form::open(['route' => 'ward_item_request.edit_ward_item_request_search', 'method' => 'ANY', 'role' => 'search']) }} -
    -
    -
    - - - @if($ward_request_details->item_type == 1) - @php - $drugs = \Streamline\Models\Drug::where('available', 1)->orderby('name')->pluck('name', 'id'); - @endphp - {{ Form::select('items_ids[]',$drugs,$search_status ? $selected_item_ids_array : $item_ids_array,['id'=>'drug_ids', 'multiple'=>true, 'class' => 'form-control col-sm-8 drug_ids']) }} - @elseif($ward_request_details->item_type == 2) - @php - $sundries = \Streamline\Models\Sundry::where('available', 1)->orderby('name')->pluck('name', 'id'); - @endphp - {{ Form::select('items_ids[]',$sundries,$search_status ? $selected_item_ids_array : $item_ids_array,['id'=>'sundry_ids', 'multiple'=>true, 'class' => 'form-control col-sm-8 sundry_ids']) }} - @elseif($ward_request_details->item_type == 3) - @php - $general_items = \Streamline\Models\GeneralItem::orderBy('name')->pluck('name', 'id'); - @endphp - {{ Form::select('items_ids[]',$general_items,$search_status ? $selected_item_ids_array : $item_ids_array,['id'=>'general_item_ids', 'multiple'=>true, 'class' => 'form-control col-sm-8 general_item_ids']) }} - @endif -
    -
    - -
    - -
    - -
    -
    - - - - Note: You can add more items by searching from them from the above search box
    -
    -
    -
    -
    - - @if(isset($criteria) && isset($resultCount)) -

    - {{ __('stores.search_criteria') }} {{ $criteria }}    {{ __('stores.total_results') }} {{ $resultCount }}    {{ __('stores.clear_search') }} -

    - @endif - {{ Form::close() }} -
    -
    - - -
    -
    - {{ Form::open(['route' => 'ward_item_request.update_ward_item_requests' , 'data-toggle' => 'validator']) }} -
    - - -
    - - - - - - - - - - - - - @if ($search_status) - @for($i=0; $i < count($selected_item_ids_array); $i++) - - - - - - - - - @endfor - @else - @for($i=0; $i < count($item_ids_array); $i++) - - - - - - - - - @endfor - @endif - -
    # - @if($ward_request_details->item_type == "1") Drug - @elseif($ward_request_details->item_type == "2") Sundry - @else General Item - @endif - Store stockQuantity To Be Returned To PharmacyBalance on wardQuantity requested
    - {{ $i + 1 }} - - @if($ward_request_details->item_type == "1") - {{ get_name($selected_item_ids_array[$i], "id", "name", "drugs") }} - @php - $item_unit_cost = DB::table('drugs')->where('id', $selected_item_ids_array[$i])->pluck('cost_price')->first(); - @endphp - @elseif($ward_request_details->item_type == "2") - {{ get_name($selected_item_ids_array[$i], "id", "name", "sundries") }} - @php - $item_unit_cost = DB::table('sundries')->where('id', $selected_item_ids_array[$i])->pluck('cost_price')->first(); - @endphp - @else - {{ get_name($selected_item_ids_array[$i], "id", "name", "general_items") }} - @php - $item_unit_cost = DB::table('general_items')->where('id', $selected_item_ids_array[$i])->pluck('cost_price')->first(); - @endphp - @endif - - @if($ward_request_details->item_type == "1") - {{ get_name($selected_item_ids_array[$i], "id", "store_stock", "drugs") }} - @elseif($ward_request_details->item_type == "2") - {{ get_name($selected_item_ids_array[$i], "id", "store_stock", "sundries") }} - @else - {{ get_name($selected_item_ids_array[$i], "id", "store_stock", "general_items") }} - @endif - - - - - - - - -
    - {{ $i + 1 }} - - @if($ward_request_details->item_type == "1") - {{ get_name($item_ids_array[$i], "id", "name", "drugs") }} - @php - $item_unit_cost = DB::table('drugs')->where('id', $item_ids_array[$i])->pluck('cost_price')->first(); - @endphp - @elseif($ward_request_details->item_type == "2") - {{ get_name($item_ids_array[$i], "id", "name", "sundries") }} - @php - $item_unit_cost = DB::table('sundries')->where('id', $item_ids_array[$i])->pluck('cost_price')->first(); - @endphp - @else - {{ get_name($item_ids_array[$i], "id", "name", "general_items") }} - @php - $item_unit_cost = DB::table('general_items')->where('id', $item_ids_array[$i])->pluck('cost_price')->first(); - @endphp - @endif - - @if($ward_request_details->item_type == "1") - {{ get_name($item_ids_array[$i], "id", "store_stock", "drugs") }} - @elseif($ward_request_details->item_type == "2") - {{ get_name($item_ids_array[$i], "id", "store_stock", "sundries") }} - @else - {{ get_name($item_ids_array[$i], "id", "store_stock", "general_items") }} - @endif - - @if($ward_request_details->approved_status == "1") - - @else - - @endif - - @if($ward_request_details->approved_status == "1") - - @else - - @endif - - - - -
    -
    -
    - Requested by {{ get_full_name($ward_request_details->created_by, "id", "first_name", "last_name", "users") }} - {{ Form::submit('Update Request', ['class' => 'btn btn-success', 'style' => 'float: right;']) }} - {{ Form::close() }} -
    -
    -
    -@endsection -@push('scripts') - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/ward_item_requests/ward_request_show.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/ward_item_requests/ward_request_show.blade.php deleted file mode 100755 index 39159516..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/ward_item_requests/ward_request_show.blade.php +++ /dev/null @@ -1,207 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    Ward request details

    -
    -
    - -
    -
    - -
    -
    -
    -
    - - -
    -
    - - @include('flash::message') - @foreach ($errors->all() as $error) -
    {{ $error }}
    - @endforeach -
    -
    - - @php - $item_ids_array = explode(",", $ward_request_details->item_ids); - $item_quantities_array = explode(",", $ward_request_details->item_quantities); - $balance_during_request_array = explode("," , $ward_request_details->balance_on_ward_during_request); - if($ward_request_details->approved_status == "1"){ - $balance_returned_array = explode(",", $ward_request_details->balance_returned); - $quantity_approved_array = explode(",", $ward_request_details->item_quantities_approved); - } - @endphp - -
    -
    -
    -
    - - - - - - - - @if($ward_request_details->approved_status == "1") - - @endif - - - - @for($i=0; $i < count($item_ids_array); $i++) - - - - - - @if($ward_request_details->approved_status == "1") - - @endif - - @endfor - -
    # - @if($ward_request_details->item_type == "1") Drug - @elseif($ward_request_details->item_type == "2") Sundry - @else General Item - @endif - Quantity requestedBalance returned from wardQuantity given
    - {{ $i + 1 }} - - @if($ward_request_details->item_type == "1") - {{ get_name($item_ids_array[$i], "id", "name", "drugs") }} - @elseif($ward_request_details->item_type == "2") - {{ get_name($item_ids_array[$i], "id", "name", "sundries") }} - @else - {{ get_name($item_ids_array[$i], "id", "name", "general_items") }} - @endif - - {{ $item_quantities_array[$i] }} - - - - @if($ward_request_details->approved_status == "1") - - @else - - @endif - - @if($ward_request_details->approved_status == "1") - - @else - - @endif -
    -
    - Requested by {{ get_full_name($ward_request_details->created_by, "id", "first_name", "last_name", "users") }} -
    -
    -
    -@endsection -@push('scripts') - - - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/wards/create.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/wards/create.blade.php deleted file mode 100755 index c03ea7f6..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/wards/create.blade.php +++ /dev/null @@ -1,207 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('wards.add_ward') }}

    -
    -
    - -
    -
    - -
    -
    - @include('ward_management::wards.menu') -
    -
    - - -
    -
    - - @include('flash::message') -
    - @if (session()->has('streamline_setup')) -

    {{ __('wards.streamline_setup') }}

    -
    -
    - - {{ Form::open(['route' => 'wards.store']) }} -
    -
    -
    - {{ Form::label('name', __('wards.ward_name')) }} - {{ Form::text('name', '', ['class' => 'form-control',]) }} -
    -
    -
    -
    -
    - {{ Form::label('beds', __('wards.ward_beds')) }} - {{ Form::number('beds', '', ['class' => 'form-control',]) }} -
    -
    -
    -
    -
    - {{ Form::label('type', __('wards.hmis_ward')) }} - {{-- {{ Form::number('type', 0, ['class' => 'form-control',]) }} --}} - -
    -
    -
    -
    -
    - {{ Form::label("ward_type", __("wards.type")) }} - -
    -
    -
    -
    - {{ __('wards.add_another') }}

    -
    -
    -

    {{ __('wards.select_any') }}

    - @for($i=0; $i < count($wards); $i++) -
    - {{ Form::checkbox('selected_wards[]', $wards[$i], false) }} {{ $wards[$i] }}    -
    - @endfor -
    -
    - {{ Form::button(__('wards.next'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10 next']) }} - {{ Form::button(__('wards.skip'),['type'=>'submit','name' => 'skip', 'value' => 'skip','class'=>'btn btn-default waves-effect waves-light m-r-10']) }} - @else - - {{ Form::open(['route' => 'wards.store', 'data-toggle' => 'validator']) }} - -
    -
    -
    - {{ Form::label('name', __('wards.ward_name')) }} - {{ Form::text('name', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    - {{ Form::label('beds', __('wards.ward_beds')) }} - {{ Form::number('beds', '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    -
    -
    -
    -
    - {{ Form::label('type', __('wards.hmis_ward')) }} - -
    -
    -
    -
    -
    - {{ Form::label('available',__('wards.is_ward_available'), ["class"=>'col-md-12']) }} -   {{ __('wards.yes') }} {{ Form::radio('available', 1, false, ['class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -   {{ __('wards.no') }} {{ Form::radio('available', 0, false, ['class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    -
    -
    -
    -
    -
    - {{ Form::label('ward_type', __('wards.type')) }} - -
    -
    -
    -
    - - {{ Form::button(__('wards.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10 submit-btn']) }} - {{ Form::button(__('wards.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} - @endif -
    -
    -
    -@endsection - -@push('scripts') - - - - - - -@endpush diff --git a/docker/statistics/Modules/WardManagement/Resources/views/wards/drugs_stock_sheet.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/wards/drugs_stock_sheet.blade.php deleted file mode 100755 index 393bd3be..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/wards/drugs_stock_sheet.blade.php +++ /dev/null @@ -1,240 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    Ward Drugs Stock Sheet

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -
    -
    - {{ Form::open(['url' => 'ward_drugs_stock_sheet', 'method'=>'ANY', 'role'=>'search']) }} - -
    - -
    -
    - {{ Form::label('ward_id', 'Wards') }} - {{ Form::select('ward_id', $wards, '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - -
    -

    - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    - -
    - Showing results from : -

    {{ is_null($ward_id) ? 'No ward selected' : get_name($ward_id, 'id', 'name', 'wards') }}

    -
    -
    - - {{ Form::close() }} -
    - -
    -
    - {{ csrf_field() }} - - - -

    Export data to Copy, CSV, Excel, PDF & Print

    -
    - - - - - - - - - - - - - @php $total_cost_value=0; $total_sale_value=0; @endphp - @foreach($ward_stock_records as $record) - @php - $drug = \Streamline\Models\Drug::withTrashed()->find($record->item_id); - - $batch_records = \Streamline\Models\ItemBatchWatcher::where(['item_type' => 1, 'item_id' => $record->item_id])->whereRaw('FIND_IN_SET(' . $ward_id . ',ward_id)')->get(); - - $drug_ward_stock = 0;//dd($batch_records); - $item_cost_value = 0; - @endphp - - - - - - - - - @php - $total_cost_value += $item_cost_value; - $total_sale_value += ($drug->non_insured_price * $drug_ward_stock); - @endphp - - @endforeach - - - - - - - - - - - - - - - - - - - -
    Drug NameBatch Details{{ !is_null($ward_id) ? get_name($ward_id, "id", "name", "wards") : "" }} StockCost ValueCash PriceSale Value
    - @if($drug->insurance_coverage == 1) - {{ $drug->name }} - @else - {{ $drug->name }} - @endif - - @if (count($batch_records) > 0) - @foreach ($batch_records as $record) - @php - $exploded_ward_stocks = $record->ward_stock ? explode(",",$record->ward_stock) : []; - $exploded_ward_ids = $record->ward_id ? explode(",", $record->ward_id) : []; - - $ward_id_key = array_search($ward_id, $exploded_ward_ids); - - $this_wardz_stock = 0; - - if($ward_id_key !== false){ - //the ward stock already exists so get it and add this amount - $this_wardz_stock = $exploded_ward_stocks[$ward_id_key] ?? 0; - } - @endphp - -
    -
    - {{ __('stores.batch') }}: {{ $record->batch_number }} -
    -
    - {{ __('stores.quantity') }}: {{ $this_wardz_stock }}
    - @php - $drug_ward_stock += $this_wardz_stock; - $item_cost_value += $record->cost_price * $this_wardz_stock; - @endphp - {{ __('stores.expiry_date') }}: {{ $record->expiry_date }} -
    -
    - {{ __('stores.unit_cost') }}: {{ $record->cost_price }} -
    -
    - - - @endforeach - @endif -
    -
    - {{ $drug_ward_stock }} -
    - {{-- --}} -
    - {{ ugandan_shillings($item_cost_value) }} - {{ ugandan_shillings($drug->non_insured_price) }} - {{ ugandan_shillings($drug->non_insured_price * $drug_ward_stock) }} -
    Drug NameBatch Details{{ !is_null($ward_id) ? get_name($ward_id, "id", "name", "wards") : "" }} StockCost ValueCash PriceSale Value
    Total:{{ ugandan_shillings($total_cost_value) }}{{ ugandan_shillings($total_sale_value) }}
    - -
    - @if( Auth::user()->can('edit-ward-drug-stock-sheet')) - - - - @endif -
    -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/WardManagement/Resources/views/wards/edit.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/wards/edit.blade.php deleted file mode 100755 index 394699cb..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/wards/edit.blade.php +++ /dev/null @@ -1,102 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('wards.edit_ward') }}

    -
    -
    - -
    -
    - -
    -
    - @include('ward_management::wards.menu') -
    -
    - - -
    -
    - - @include('flash::message') -
    - {{ Form::model($ward, ['method' => 'PUT', 'route' => ['wards.update',$ward], 'data-toggle' => 'validator']) }} - -
    - {{ Form::label('name', __('wards.ward_name')) }} - {{ Form::text('name', $ward->name, ['class' => 'form-control compulsory', 'required']) }} -
    -
    - -
    - {{ Form::label('beds', __('wards.ward_beds')) }} - {{ Form::text('beds', $ward->beds, ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - {{ Form::label('type', __('wards.hmis_ward')) }} - {{-- {{ Form::text('type', $ward->slug, ['class' => 'form-control compulsory', 'required']) }} --}} - -
    -
    -
    - {{ Form::label('', __('wards.is_ward_available'), ["class"=>'col-md-12']) }} -   {{ __('wards.yes') }} {{ Form::radio('available', 1, $ward->available == 1, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -   {{ __('wards.no') }} {{ Form::radio('available', 0, $ward->available == 0, ["required", 'class' => 'check form-control', 'data-radio'=>'iradio_flat-green']) }} -
    -
    -
    - {{ Form::label('ward_type', __('wards.type')) }} - -
    -
    - - {{ Form::button(__('wards.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('wards.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -
    -
    -@endsection - -@push('scripts') - - - - - - -@endpush diff --git a/docker/statistics/Modules/WardManagement/Resources/views/wards/home.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/wards/home.blade.php deleted file mode 100755 index 779ef15a..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/wards/home.blade.php +++ /dev/null @@ -1,92 +0,0 @@ -@extends('layouts.main') - -@section('content') -
    -
    -

    {{ __('wards.wards_home') }}

    -
    -
    - -
    -
    - -
    - @include('flash::message') -
    -
    -

    {{ __('wards.patient_management') }}

    - -
    - -
    -

    {{ __('stores.stock_management') }}

    - -
    - -
    -

    {{ __('stores.reports') }}

    - -
    -
    -
    -@endsection diff --git a/docker/statistics/Modules/WardManagement/Resources/views/wards/inactive.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/wards/inactive.blade.php deleted file mode 100755 index 9041a4f0..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/wards/inactive.blade.php +++ /dev/null @@ -1,91 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('wards.activate_wards') }}

    -
    -
    - -
    -
    - -
    -
    - @include('ward_management::wards.menu') -
    -
    - - -
    -
    -
    -
    - - - - - - - - - - - - - - - - - @foreach($wards as $ward) - - - - - - @endforeach - -
    {{ __('wards.ward_name') }}{{ __('wards.ward_beds') }}
    {{ __('wards.ward_name') }}{{ __('wards.ward_beds') }}
    {{ $ward->name }}{{ $ward->beds }} - {{ Form::model($ward->id ,['method' => 'POST', 'route' => ['wards.activate', $ward->id]]) }} - - {{ Form::close() }} -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/WardManagement/Resources/views/wards/index.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/wards/index.blade.php deleted file mode 100755 index e4e17991..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/wards/index.blade.php +++ /dev/null @@ -1,141 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('wards.wards') }}

    -
    -
    - -
    -
    - -
    -
    - @include('ward_management::wards.menu') -
    -
    - -@include('flash::message') - -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - @foreach($wards as $ward) - - - - - - - - - @endforeach - -
    {{ __('wards.ward_name') }}{{ __('wards.hmis_ward') }}{{ __('wards.type') }}{{ __('wards.ward_beds') }}
    {{ __('wards.ward_name') }}{{ __('wards.hmis_ward') }}{{ __('wards.type') }}{{ __('wards.ward_beds') }}
    {{ $ward->name }}{{ $ward->hmis_ward }}{{ $ward_types[$ward->type]?? '' }}{{ $ward->beds }} - {{ __('wards.edit') }} - - @if (empty($inpatient_wards[$ward->id])) - {{ Form::model($ward->id ,['method' => 'DELETE', 'route' => ['wards.destroy', $ward->id]]) }} - - {{ Form::close() }} - @else - Ward in use - @endif -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/WardManagement/Resources/views/wards/menu.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/wards/menu.blade.php deleted file mode 100755 index ed3d69e4..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/wards/menu.blade.php +++ /dev/null @@ -1,7 +0,0 @@ - \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/wards/select.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/wards/select.blade.php deleted file mode 100755 index e90b9ee5..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/wards/select.blade.php +++ /dev/null @@ -1,724 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('wards.select_ward') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -@include ('errors.list') - -
    -
    -
    - {{ Form::open(['route' => 'wards.select', 'class' => 'typeahead', 'method' => 'ANY', 'role' => 'search']) }} - - {{ Form::hidden('patient_id', 0, ['id' => 'patient_id']) }} - -
    -
    -
    - {{ Form::label('ward_id', __('wards.wards')) }} - {{ Form::select('ward_id', $wards, '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - -
    -
    - {{ Form::label('search_by', __('wards.date')) }} - {{ Form::select('search_by', ['' => '--select--', 0 => 'All Records', 1 => __('wards.today'), 2 => __('wards.yesterday'), 3 => __('wards.custom_date'), 4 => __('wards.custom_range')], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - - -
    - {{ Form::label('search_patient', __('investigations.search_by_patient')) }} -
    - -
    -
    - -
    -

    - {{ Form::button(__('wards.submit'),['type'=>'submit','class'=>'btn btn-success waves-effect - waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    -
    -
    - -

    {{ $search_text }}

    - {{ Form::close() }} -
    -
    -
    - -
    -
    - {{ Form::open(['route' => 'wards.route_patient_episode']) }} - -
    -
    - - - - - - - - - - - - - - - - - - - @foreach($inpatients as $inpatient) - @if(\Streamline\Models\PatientEpisode::find($inpatient->episode_id)) - - - - - - - - - - - - - - - @endif - @endforeach - -
    {{ __('wards.bed') }}{{ __('wards.bed') }}{{ __('wards.bed_category') - }}{{ __('wards.admission') }} - {{ __('wards.names') }}{{ __('wards.sex') }}{{ __('wards.age') }}{{ __('wards.triage') }}{{ __('wards.primary_diagnosis') }}{{ __('wards.comments') }}{{ __('wards.comments') }} 
    - -

    {{ $inpatient->bed_no }}

    - - - - - -
    - -

    {{ $inpatient->bed_no }}

    -
    - -

    {{ $inpatient->bed_category }}

    - - -
    - admitted_on); - echo streamline_date($inpatient->admitted_on) . '
    '; - echo "" . $admitted_on->diffInDays(Carbon\Carbon::now()) . ' days'; - ?> -
    - patient_id) . '
    '; - echo "" . $inpatient->number . ''; - ?> -
    {{ $inpatient->gender == 1 ? __('wards.male') : __('wards.female') }}{{ get_patients_age($inpatient->date_of_birth) }} - @php - $severe_grade = !empty($inpatient->severe_grade)? - severe_grade($inpatient->severe_grade):'N/A'; - echo $severe_grade; - @endphp - {{ $inpatient->primary_diagnosis_name ?? - 'N/A' }} - -

    {{ $inpatient->comments }}

    - - - - - -
    - -

    {{ $inpatient->comments }}

    -
    - @if($inpatient->slug == "maternity") - - @else - - @endif - -
    -
    -
    - - - - - -
    - - @endsection - - @push('scripts') - - - - - - - - - - - - - - @endpush \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/wards/sundries_stock_sheet.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/wards/sundries_stock_sheet.blade.php deleted file mode 100755 index 251600d1..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/wards/sundries_stock_sheet.blade.php +++ /dev/null @@ -1,156 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    Ward Sundries Stock Sheet

    -
    -
    - -
    -
    - -
    -
    - - @include('flash::message') -
    -
    -
    - {{ Form::open(['url' => 'ward_sundries_stock_sheet','method'=>'ANY','role'=>'search']) }} - -
    - -
    -
    - {{ Form::label('ward_id', 'Wards') }} - {{ Form::select('ward_id', $wards, '', ['class' => 'form-control compulsory', 'required']) }} -
    -
    -
    - -
    -

    - {{ Form::button('Submit',['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10', 'id'=>'select_patient']) }} -
    -
    - -
    - Showing results from : -

    {{ is_null($ward_id) ? 'No ward selected' : get_name($ward_id, 'id', 'name', 'wards') }}

    -
    -
    - - {{ Form::close() }} -
    - -
    -
    - {{ csrf_field() }} - - - -

    Export data to Copy, CSV, Excel, PDF & Print

    -
    - - - - - - - - - - - - - - - @foreach($ward_stock_records as $record) - @php - $sundry = \Streamline\Models\Sundry::withTrashed()->find($record->item_id); - - if (!$sundry) { - continue; - } - @endphp - - - - - - @endforeach - -
    Sundry Name{{ !is_null($ward_id) ? get_name($ward_id, "id", "name", "wards") : "" }} Stock
    Sundry Name{{ !is_null($ward_id) ? get_name($ward_id, "id", "name", "wards") : "" }} Stock
    - @if($sundry->insurance_coverage == 1) - {{ $sundry->name }} - @else - {{ $sundry->name }} - @endif - -
    - {{ $record->ward_item_stock }} -
    - -
    -
    - @if( Auth::user()->can('edit-ward-sundry-stock-sheet')) - - - - @endif -
    -
    -
    -
    -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/WardManagement/Resources/views/wards_consumption/index.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/wards_consumption/index.blade.php deleted file mode 100755 index 66ec2687..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/wards_consumption/index.blade.php +++ /dev/null @@ -1,1004 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('ward_consumption.wards_consumption_report') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    -
    - -
    -
    - {{ Form::open(['route' => 'wards_consumption.ward_consumption_report' , 'data-toggle' => 'validator']) }} -
    -
    -
    -
    - {{ Form::label('report_by', __('ward_consumption.report_by')) }} - {{ Form::select('report_by', ['' => '--Select--', 1 => 'Drugs Consumption Per Ward', 2 => 'Drug', 3 => 'Sundry', 4 => 'Sundries Consumption Per Ward', 5 => 'General Items', 6 => 'General Items Consumption Per Ward'], '', ['class' => 'form-control', 'id'=>'report_by', 'required']) }} -
    -
    -
    - -
    - - - - - - - -
    - -
    -
    - {{ Form::label('search_by', __('ward_consumption.date')) }} - {{ Form::select('search_by', ['0'=>__('ward_consumption.last_24_hours'),'1'=>__('ward_consumption.custom_date'),'2'=>__('ward_consumption.custom_range')], '', ['class' => 'form-control','id'=>'search_by', 'required']) }} -
    -
    -
    - - - - - -
    -
    - {{ Form::button(__('ward_consumption.search'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    -
    - {{ Form::close() }} -
    -
    - - @if($search_complete) - @if($report_by == 1) -
    -
    -
    - @if($search_complete) -

    Results for {{ get_name($ward_id, "id", "name", "wards") }} from {{ streamline_date($start_date) }} to {{ streamline_date($end_date) }}

    - @else -

    - @endif -
    - - - - - - - - - - - - - - - @php $counter = 1; $issued_total_sum = 0; $dispensed_total_sum = 0; @endphp - @if(count($ward_drug_results) > 0) - @foreach($ward_drug_results as $drug_id => $drug_quantity) - - - - - - @php $drug_quantity_issued_to_ward = 0; @endphp - - @foreach($quantity_issued_to_ward as $ward_item_request_record) - @php - $items_ids_array = explode(",", $ward_item_request_record->item_ids); - $items_issued_array = explode(",", $ward_item_request_record->quantity_issued_out); - - for($i=0; $i < count($items_ids_array); $i++){ - if($items_ids_array[$i] == $drug_id){ - $drug_quantity_issued_to_ward += isset($items_issued_array[$i]) ? (int)$items_issued_array[$i] : 0; - } - } - @endphp - @endforeach - - - @foreach($quantity_issued_to_ward_using_ward_dispensing_table as $others_issued) - @php - $drugs_ids_array = explode(",", $others_issued->drug_id); - $drugs_issued_array = explode(",", $others_issued->quantity_dispensed); - - for($i=0; $i < count($drugs_ids_array); $i++){ - if($drugs_ids_array[$i] == $drug_id){ - $drug_quantity_issued_to_ward += isset($drugs_issued_array[$i]) ? (int)$drugs_issued_array[$i] : 0; - } - } - @endphp - @endforeach - - - - @php - $drug_quantity_issued_to_ward = is_numeric($drug_quantity_issued_to_ward) ? $drug_quantity_issued_to_ward : 0; - - $drug_cost_price = get_name($drug_id, "id", "cost_price", "drugs"); - $drug_cost_price = is_numeric($drug_cost_price) ? $drug_cost_price : 0; - - $issued_money_value = $drug_quantity_issued_to_ward * $drug_cost_price; - $issued_total_sum += $issued_money_value; - @endphp - - - - {{----}} - - - - - - - - - - @php $counter++; @endphp - @endforeach - @elseif(count($quantity_issued_to_ward) > 0) - @foreach($quantity_issued_to_ward as $ward_item_request_record) - @php - $items_ids_array = explode(",", $ward_item_request_record->item_ids); - $items_issued_array = explode(",",$ward_item_request_record->quantity_issued_out); - $item_qty_ass_array = []; - - for($i=0; $i < count($items_ids_array); $i++){ - if (array_key_exists($items_ids_array[$i], $item_qty_ass_array)) { - $item_qty_ass_array[$items_ids_array[$i]] += isset($items_issued_array[$i]) ? (int)$items_issued_array[$i] : 0; - } else { - $item_qty_ass_array[$items_ids_array[$i]] = isset($items_issued_array[$i]) ? (int)$items_issued_array[$i] : 0; - } - } - @endphp - @endforeach - - @foreach($item_qty_ass_array as $drug_id => $drug_quantity) - - - - - @php - $drug_quantity = is_numeric($drug_quantity) ? $drug_quantity : 0; - - $drug_cost_price = get_name($drug_id, "id", "cost_price", "drugs"); - $drug_cost_price = is_numeric($drug_cost_price) ? $drug_cost_price : 0; - - $issued_money_value = $drug_quantity * $drug_cost_price; - $issued_total_sum += $issued_money_value; - @endphp - - - - - - - - @endforeach - @endif - - - - - - - - - - - - - -
    #DrugQuantity issued to wardMoney value(Quantity Issued)Quantity dispensed to patientsMoney Value(Quantity Dispensed)Variance
    {{ $counter }}{{ get_name($drug_id, "id", "name", "drugs") }}{{ $drug_quantity_issued_to_ward }} - {{ ugandan_shillings($issued_money_value) }} - {{ $drug_quantity }} - {{ $drug_qty_dispensed = isset($drug_dispensation_results[$drug_id]) ? $drug_dispensation_results[$drug_id] : 0 }} - - @php - $dispensed_money_value = $drug_qty_dispensed * $drug_cost_price; - - $dispensed_total_sum += $dispensed_money_value; - @endphp - {{ ugandan_shillings($dispensed_money_value) }} - - {{ $drug_quantity_issued_to_ward - $drug_qty_dispensed }} - - - {{ Form::open(['method'=>'post','route' => 'wards_consumption.wards_consumption_details']) }} - - {{ Form::hidden('report_by', "1") }} - {{ Form::hidden('search_by_details', $search_by) }} - {{ Form::hidden('drug_details_for', $drug_id) }} - {{ Form::hidden('ward_details_for', $ward_id) }} - {{ Form::hidden('start_date', $start_date) }} - {{ Form::hidden('end_date', $end_date) }} - {{ Form::submit('Details', ['class'=>'btn btn-success ']) }} - - {{ Form::close() }} -
    {{ $counter }}{{ get_name($drug_id, "id", "name", "drugs") }}{{ $drug_quantity }} - {{ ugandan_shillings($issued_money_value) }} - - - {{ Form::open(['method'=>'post','route' => 'wards_consumption.wards_consumption_details']) }} - - {{ Form::hidden('report_by', "1") }} - {{ Form::hidden('search_by_details', $search_by) }} - {{ Form::hidden('drug_details_for', $drug_id) }} - {{ Form::hidden('ward_details_for', $ward_id) }} - {{ Form::hidden('start_date', $start_date) }} - {{ Form::hidden('end_date', $end_date) }} - {{ Form::submit('Details', ['class'=>'btn btn-success', 'disabled']) }} - - {{ Form::close() }} -
    Total{{ ugandan_shillings($issued_total_sum) }}{{ ugandan_shillings($dispensed_total_sum) }}
    -
    -
    -
    -
    - @elseif($report_by == 2) -
    -
    -
    - @if($search_complete) -

    Results for {{ get_name($selected_drug_id, "id", "name", "drugs") }} from {{ streamline_date($start_date) }} to {{ streamline_date($end_date) }}

    - @else -

    - @endif -
    - - - - - - - - - - - - - - - - @php $counter = 1; $issued_total_sum = 0; $dispensed_total_sum = 0; @endphp - @if(count($ward_drug_results) > 0) - @foreach($ward_drug_results as $ward_id => $drug_quantity) - - - - - - @php $drug_quantity_issued_to_ward = 0; @endphp - - @foreach($quantity_issued_to_ward as $ward_item_request_record) - @php - $items_ids_array = explode(",", $ward_item_request_record->item_ids); - $items_issued_array = explode(",", $ward_item_request_record->quantity_issued_out); - $row_ward_id = $ward_item_request_record->ward_id; - - for($i=0; $i < count($items_ids_array); $i++){ - if(($items_ids_array[$i] == $selected_drug_id) && ($ward_id == $row_ward_id)){ - $drug_quantity_issued_to_ward += isset($items_issued_array[$i]) ? (int)$items_issued_array[$i] : 0; - } - } - @endphp - @endforeach - - - @foreach($quantity_issued_to_ward_using_ward_dispensing_table as $others_issued) - @php - $drugs_ids_array = explode(",", $others_issued->drug_id); - $drugs_issued_array = explode(",", $others_issued->quantity_dispensed); - $row_ward_id = $others_issued->ward_id; - - for($i=0; $i < count($drugs_ids_array); $i++){ - if(($drugs_ids_array[$i] == $selected_drug_id) && ($ward_id == $row_ward_id)){ - $drug_quantity_issued_to_ward += (int)$drugs_issued_array[$i]; - } - } - @endphp - @endforeach - - - - @php - $issued_money_value = $drug_quantity_issued_to_ward * get_name($selected_drug_id, "id", "cost_price", "drugs"); - $issued_total_sum += $issued_money_value; - @endphp - - - - {{----}} - - - - - - - - - - @php $counter++; @endphp - @endforeach - @elseif(count($quantity_issued_to_ward) > 0) - @foreach($quantity_issued_to_ward as $ward_item_request_record) - @php - $items_ids_array = explode(",", $ward_item_request_record->item_ids); - $items_issued_array = explode(",",$ward_item_request_record->quantity_issued_out); - $ward_id = $ward_item_request_record->ward_id; - $ward_qty_ass_array = []; - - for($i=0; $i < count($items_ids_array); $i++){ - if ($selected_drug_id == $items_ids_array[$i]) { - if (array_key_exists($ward_id, $ward_qty_ass_array)) { - $ward_qty_ass_array[$ward_id] += isset($items_issued_array[$i]) ? (int)$items_issued_array[$i] : 0; - } else { - $ward_qty_ass_array[$ward_id] = isset($items_issued_array[$i]) ? (int)$items_issued_array[$i] : 0; - } - } - } - @endphp - @endforeach - - @foreach($ward_qty_ass_array as $ward_id => $drug_quantity) - - - - - @php - $drug_quantity = is_numeric($drug_quantity) ? $drug_quantity : 0; - - $drug_cost_price = get_name($selected_drug_id, "id", "cost_price", "drugs"); - $drug_cost_price = is_numeric($drug_cost_price) ? $drug_cost_price : 0; - - $issued_money_value = $drug_quantity * $drug_cost_price; - $issued_total_sum += $issued_money_value; - @endphp - - - - - - - - @endforeach - @endif - - - - - - - - - - - - - -
    #WardQuantity issued to wardMoney value(Quantity Issued)Quantity dispensed to patientsMoney Value(Quantity Dispensed)Variance
    {{ $counter }}{{ get_name($ward_id, "id", "name", "wards") }}{{ $drug_quantity_issued_to_ward }} - {{ ugandan_shillings($issued_money_value) }} - {{ $drug_quantity }} - {{ $drug_qty_dispensed = isset($drug_dispensation_results[$ward_id]) ? $drug_dispensation_results[$ward_id] : 0 }} - - @php - $dispensed_money_value = $drug_qty_dispensed * get_name($drug_id, "id", "cost_price", "drugs"); - $dispensed_total_sum += $dispensed_money_value; - @endphp - {{ ugandan_shillings($dispensed_money_value) }} - - {{ $drug_quantity_issued_to_ward - $drug_qty_dispensed }} - - - {{ Form::open(['method'=>'post','route' => 'wards_consumption.wards_consumption_details']) }} - - {{ Form::hidden('report_by', "1") }} - {{ Form::hidden('search_by_details', $search_by) }} - {{ Form::hidden('ward_details_for', $ward_id) }} - {{ Form::hidden('drug_details_for', $selected_drug_id) }} - {{ Form::hidden('start_date', $start_date) }} - {{ Form::hidden('end_date', $end_date) }} - {{ Form::submit('Consumption details', ['class'=>'btn btn-success ']) }} - - {{ Form::close() }} -
    {{ $counter }}{{ get_name($ward_id, "id", "name", "wards") }}{{ $drug_quantity }} - {{ ugandan_shillings($issued_money_value) }} - - {{ Form::open(['method'=>'post','route' => 'wards_consumption.wards_consumption_details']) }} - - {{ Form::hidden('report_by', "2") }} - {{ Form::hidden('search_by_details', $search_by) }} - {{ Form::hidden('drug_details_for', $selected_drug_id) }} - {{ Form::hidden('start_date', $start_date) }} - {{ Form::hidden('end_date', $end_date) }} - {{ Form::submit('Details', ['class'=>'btn btn-success', 'disabled']) }} - - {{ Form::close() }} -
    Total{{ ugandan_shillings($issued_total_sum) }}{{ ugandan_shillings($dispensed_total_sum) }}
    -
    -
    -
    -
    - @elseif($report_by == 3) -
    -
    -
    - @if($search_complete) -

    Results for {{ get_name($selected_sundry_id, "id", "name", "sundries") }} from {{ streamline_date($start_date) }} to {{ streamline_date($end_date) }}

    - @else -

    - @endif -
    - - - - - - - - - - - - @php - $counter = 1; - $issued_total_sum = 0; - $dispensed_total_sum = 0; - @endphp - - @if(count($ward_drug_results) > 0) - @foreach($ward_drug_results as $ward_id => $sundry_quantity) - - - - - - - - @php - $issued_money_value = $sundry_quantity * get_name($selected_sundry_id, "id", "cost_price", "sundries"); - $issued_total_sum += $issued_money_value; - @endphp - - - - - - @php $counter++; @endphp - @endforeach - @endif - - - - - - - - - - -
    #SundryQuantity issued to wardMoney value(Quantity Issued)
    {{ $counter }}{{ get_name($ward_id, "id", "name", "wards") }}{{ $sundry_quantity }} - {{ ugandan_shillings($issued_money_value) }} - - - {{ Form::open(['method'=>'post','route' => 'wards_consumption.wards_consumption_details']) }} - - {{ Form::hidden('report_by', "3") }} - {{ Form::hidden('search_by_details', $search_by) }} - {{ Form::hidden('ward_details_for', $ward_id) }} - {{ Form::hidden('sundries_details_for', $selected_sundry_id) }} - {{ Form::hidden('start_date', $start_date) }} - {{ Form::hidden('end_date', $end_date) }} - {{ Form::submit('Consumption details', ['class'=>'btn btn-success ']) }} - - {{ Form::close() }} -
    Total{{ ugandan_shillings($issued_total_sum) }}
    -
    -
    -
    -
    - @elseif($report_by == 4) - @elseif($report_by == 5) -
    -
    -
    - @if($search_complete) -

    Results for {{ get_name($selected_general_items_id, "id", "name", "general_items") }} from {{ streamline_date($start_date) }} to {{ streamline_date($end_date) }}

    - @else -

    - @endif -
    - - - - - - - - - - - - @php - $counter = 1; - $issued_total_sum = 0; - $dispensed_total_sum = 0; - @endphp - - @if(count($ward_drug_results) > 0) - @foreach($ward_drug_results as $ward_id => $general_items_quantity) - - - - - - - - @php - $issued_money_value = $general_items_quantity * get_name($selected_general_items_id, "id", "cost_price", "general_items"); - $issued_total_sum += $issued_money_value; - @endphp - - - - - - @php $counter++; @endphp - @endforeach - @endif - - - - - - - - - - -
    #General ItemQuantity issued to wardMoney value(Quantity Issued)
    {{ $counter }}{{ get_name($ward_id, "id", "name", "wards") }}{{ $general_items_quantity }} - {{ ugandan_shillings($issued_money_value) }} - - - {{ Form::open(['method'=>'post','route' => 'wards_consumption.wards_consumption_details']) }} - - {{ Form::hidden('report_by', "3") }} - {{ Form::hidden('search_by_details', $search_by) }} - {{ Form::hidden('ward_details_for', $ward_id) }} - {{ Form::hidden('general_items_details_for', $selected_general_items_id) }} - {{ Form::hidden('start_date', $start_date) }} - {{ Form::hidden('end_date', $end_date) }} - {{ Form::submit('Consumption details', ['class'=>'btn btn-success ']) }} - - {{ Form::close() }} -
    Total{{ ugandan_shillings($issued_total_sum) }}
    -
    -
    -
    -
    - @elseif($report_by == 6) -
    -
    -
    - @if($search_complete) -

    Results for {{ get_name($general_items_id, "id", "name", "general_items") }} from {{ streamline_date($start_date) }} to {{ streamline_date($end_date) }}

    - @else -

    - @endif -
    - - - - - - - - - - - - - - - @php $counter = 1; $issued_total_sum = 0; $dispensed_total_sum = 0; @endphp - @if(count($general_items_dispensation_results) > 0) - @foreach($general_items_dispensation_results as $general_items_id => $drug_quantity) - - - - - - @php $general_items_quantity_issued_to_ward = 0; @endphp - - @foreach($quantity_issued_to_ward as $ward_item_request_record) - @php - $items_ids_array = explode(",", $ward_item_request_record->item_ids); - $items_issued_array = explode(",", $ward_item_request_record->quantity_issued_out); - - for($i=0; $i < count($items_ids_array); $i++){ - if($items_ids_array[$i] == $general_items_id){ - $general_items_quantity_issued_to_ward += isset($items_issued_array[$i]) ? (int)$items_issued_array[$i] : 0; - } - } - @endphp - @endforeach - - - - @php - $general_items_quantity_issued_to_ward = is_numeric($general_items_quantity_issued_to_ward) ? $general_items_quantity_issued_to_ward : 0; - - $general_items_cost_price = get_name($general_items_id, "id", "cost_price", "general_items"); - $general_items_cost_price = is_numeric($general_items_cost_price) ? $general_items_cost_price : 0; - - $issued_money_value = $general_items_quantity_issued_to_ward * $general_items_cost_price; - $issued_total_sum += $issued_money_value; - @endphp - - - - - - - - - - - - @php $counter++; @endphp - @endforeach - @elseif(count($quantity_issued_to_ward) > 0) - @foreach($quantity_issued_to_ward as $ward_item_request_record) - @php - $items_ids_array = explode(",", $ward_item_request_record->item_ids); - $items_issued_array = explode(",",$ward_item_request_record->quantity_issued_out); - $item_qty_ass_array = []; - - for($i=0; $i < count($items_ids_array); $i++){ - if (array_key_exists($items_ids_array[$i], $item_qty_ass_array)) { - $item_qty_ass_array[$items_ids_array[$i]] += isset($items_issued_array[$i]) ? (int)$items_issued_array[$i] : 0; - } else { - $item_qty_ass_array[$items_ids_array[$i]] = isset($items_issued_array[$i]) ? (int)$items_issued_array[$i] : 0; - } - } - @endphp - @endforeach - - @foreach($item_qty_ass_array as $sundry_id => $sundry_quantity) - - - - - @php - $sundry_quantity = is_numeric($sundry_quantity) ? $sundry_quantity : 0; - - $drug_cost_price = get_name($sundry_id, "id", "cost_price", "sundries"); - $drug_cost_price = is_numeric($drug_cost_price) ? $drug_cost_price : 0; - - $issued_money_value = $sundry_quantity * $drug_cost_price; - $issued_total_sum += $issued_money_value; - @endphp - - - - - - - - @endforeach - @endif - - - - - - - - - - - - - -
    #General ItemsQuantity issued to wardMoney value(Quantity Issued)Quantity dispensed to patientsMoney Value(Quantity Dispensed)Variance
    {{ $counter }}{{ get_name($general_items_id, "id", "name", "general_items") }}{{ $general_items_quantity_issued_to_ward }} - {{ ugandan_shillings($issued_money_value) }} - - {{ $drug_qty_dispensed = isset($general_items_dispensation_results[$general_items_id]) ? $general_items_dispensation_results[$general_items_id] : 0 }} - - @php - $dispensed_money_value = $drug_qty_dispensed * $drug_cost_price; - - $dispensed_total_sum += $dispensed_money_value; - @endphp - {{ ugandan_shillings($dispensed_money_value) }} - - {{ $sundry_quantity_issued_to_ward - $drug_qty_dispensed }} - - {{ Form::open(['method'=>'post','route' => 'wards_consumption.wards_consumption_details']) }} - - {{ Form::hidden('report_by', "4") }} - {{ Form::hidden('search_by_details', $search_by) }} - {{ Form::hidden('general_items_details_for', $general_items_id) }} - {{ Form::hidden('ward_details_for', $ward_id) }} - {{ Form::hidden('start_date', $start_date) }} - {{ Form::hidden('end_date', $end_date) }} - {{ Form::submit('Details', ['class'=>'btn btn-success ']) }} - - {{ Form::close() }} -
    {{ $counter }}{{ get_name($sundry_id, "id", "name", "sundries") }}{{ $sundry_quantity }} - {{ ugandan_shillings($issued_money_value) }} - - - {{ Form::open(['method'=>'post','route' => 'wards_consumption.wards_consumption_details']) }} - - {{ Form::hidden('report_by', "1") }} - {{ Form::hidden('search_by_details', $search_by) }} - {{ Form::hidden('drug_details_for', $sundry_id) }} - {{ Form::hidden('ward_details_for', $ward_id) }} - {{ Form::hidden('start_date', $start_date) }} - {{ Form::hidden('end_date', $end_date) }} - {{ Form::submit('Details', ['class'=>'btn btn-success', 'disabled']) }} - - {{ Form::close() }} -
    Total{{ ugandan_shillings($issued_total_sum) }}{{ ugandan_shillings($dispensed_total_sum) }}
    -
    -
    -
    -
    - @endif - @endif -@endsection -@push('scripts') - - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/wards_consumption/issued_items_drill_down.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/wards_consumption/issued_items_drill_down.blade.php deleted file mode 100644 index 13acf772..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/wards_consumption/issued_items_drill_down.blade.php +++ /dev/null @@ -1,428 +0,0 @@ -@extends('layouts.main') -@push('styles') - - - - -@endpush -@section('content') -
    -
    -

    {{ __('ward_consumption.items_consumption_report') }}

    -
    -
    - -
    -
    -
    -
    - @include('flash::message') -
    -
    -
    -
    - {{ Form::open(['route' => 'wards_consumption.ward_consumption_report', 'data-toggle' => 'validator']) }} -
    -
    -
    -
    - {{ Form::label('report_by', __('ward_consumption.report_by')) }} - {{ Form::select('report_by', ['' => '--Select--', 1 => 'Drugs Consumption Per Unit', 2 => 'Drug', 3 => 'Sundry', 4 => 'Sundries Consumption Per Unit', 5 => 'General Items', 6 => 'General Items Consumption Per Unit'], '', ['class' => 'form-control', 'id' => 'report_by', 'required']) }} -
    -
    -
    -
    - - - - - -
    -
    -
    - {{ Form::label('search_by', __('ward_consumption.date')) }} - {{ Form::select('search_by', ['0' => __('ward_consumption.last_24_hours'), '1' => __('ward_consumption.custom_date'), '2' => __('ward_consumption.custom_range')], '', ['class' => 'form-control', 'id' => 'search_by', 'required']) }} -
    -
    -
    - - -
    -
    - {{ Form::button(__('ward_consumption.search'), ['type' => 'submit', 'class' => 'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    -
    - {{ Form::close() }} -
    -
    - @php - $grand_total_requested = $grand_cost_value = $grand_total_issued = 0; - @endphp -
    -
    -

    {{ $display }}

    -
    - - - - - - - - - - - - - - - @php $counter = 1; @endphp - @if(count($results) > 0) - @foreach($results as $result) - @php - $requested_item_id_explode = explode(",", $result->drug_id); - $item_id_explode = explode(",", $result->item_ids_issued_out); - $quantity_explode = explode(",", $result->quantity_requested); - $issued_out_explode = explode(",", $result->quantity_issued); - $item_cost_value_explode = explode(",", $result->cost_value); - @endphp - @for($x = 0; $x < count($item_id_explode); $x++) - @if($item_id_explode[$x] == $item_id) - - - - - - - - - - - @php - $counter++; - $grand_total_requested += (int)$quantity_explode[$x] ?? 0; - $grand_total_issued += isset($issued_out_explode[$x]) ? (int)$issued_out_explode[$x] : 0; - $grand_cost_value += isset($item_cost_value_explode[$x]) ? (int)$item_cost_value_explode[$x] : 0; - @endphp - @endif - @endfor - @endforeach - @endif - {{-- start wards calculations --}} - @if(count($ward_results) > 0) - @foreach($ward_results as $ward_result) - @php - $item_id_explode = explode(",", $ward_result->item_ids_issued_out); - /* $quantity_explode = explode(",", $ward_result->item_quantities); */ - $issued_out_explode = explode(",", $ward_result->quantity_issued_out); - /* $item_cost_value_explode = explode(",", $ward_result->cost_value); */ - $requested_item_ids = explode(",", $ward_result->item_ids); - $requested_item_quantities = explode(",", $ward_result->item_quantities); - $requested_item_unit_costs = explode(",", $ward_result->item_unit_cost); - $item_ids = []; - for ($i=0; $i < count($requested_item_ids) ; $i++) { - if(!in_array($requested_item_ids[$i], $item_ids)) {$item_ids[] = $requested_item_ids[$i];} - if (isset($item_requests[$requested_item_ids[$i]])) { - $item_requests[$requested_item_ids[$i]] = (isset($requested_item_quantities[$i]) && is_numeric($requested_item_quantities[$i])) ? $requested_item_quantities[$i] : 0; - $item_costs[$requested_item_ids[$i]] = (isset($requested_item_unit_costs[$i]) && is_numeric($requested_item_unit_costs[$i])) ? $requested_item_unit_costs[$i] : 0; - } else { - $item_requests[$requested_item_ids[$i]] = (isset($requested_item_quantities[$i]) && is_numeric($requested_item_quantities[$i])) ? $requested_item_quantities[$i] : 0; - $item_costs[$requested_item_ids[$i]] = (isset($requested_item_unit_costs[$i]) && is_numeric($requested_item_unit_costs[$i])) ? $requested_item_unit_costs[$i] : 0; - } - } - @endphp - @for($x = 0; $x < count($item_id_explode); $x++) - @if($item_id_explode[$x] == $item_id) - - - - - - - - - - - @php - $counter++; - $grand_total_issued += (int)$issued_out_explode[$x] ?? 0; - @endphp - @endif - @endfor - @endforeach - @endif - {{-- end wards calculations --}} - - - - - - - - - - - - - -
    #{{ __('stores.quantity_requested') }}{{ __('stores.cost_value') }}{{ __('stores.quantity_issued') }}{{ __('stores.requested_by') }}{{ __('stores.issued_by') }}{{ __('stores.issued_on') }}
    {{ $counter }} {{ $quantity_explode[$x] ?? "" }}{{ ugandan_shillings($item_cost_value_explode[$x] ?? 0) }}{{ $issued_out_explode[$x] ?? "" }}{{ get_full_name($result->created_by, "id", "first_name", "last_name", "users") }}{{ get_full_name($result->issued_by, "id", "first_name", "last_name", "users") }}{{ streamline_date($result->issued_on) }} -
    - {{ csrf_field() }} - - - -
    -
    {{ $counter }} - {{ $item_requests[$item_id] ?? 0 }} - - @php - $grand_total_requested += $item_requests[$item_id] ?? 0; - $cost_value = ($item_costs[$item_id] ?? 0) * ($item_requests[$item_id] ?? 0); - $grand_cost_value += $cost_value; - @endphp - {{ ugandan_shillings($cost_value) }} - {{ $issued_out_explode[$x] ?? "" }}{{ get_full_name($ward_result->created_by, "id", "first_name", "last_name", "users") }}{{ get_full_name($ward_result->dispensed_by, "id", "first_name", "last_name", "users") }}{{ streamline_date($ward_result->dispensation_date) }} -
    - {{ csrf_field() }} - - - -
    -
    {{ $grand_total_requested }}{{ ugandan_shillings($grand_cost_value)}}{{ $grand_total_issued }}
    -
    -
    -@endsection -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Resources/views/wards_consumption/patient_drill_down.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/wards_consumption/patient_drill_down.blade.php deleted file mode 100644 index 38044234..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/wards_consumption/patient_drill_down.blade.php +++ /dev/null @@ -1,156 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - - -@section('content') -
    -
    -
    Drug Consumption Details
    -
    -
    - -
    -
    -
    - @include('flash::message') -

    {{ ($name !== 'N/A')? $name:'Drug' }} Consumption Details

    - -
    -
    - - - - - - - - - - - - - - - - @php $counter = 0; @endphp - @foreach($patients_results as $patient) - @php $dob = new Carbon\Carbon($patient->date_of_birth); $other_diagnoses =[];@endphp - - - - - - - - - - - - @endforeach - -
    Patient NumberNameGenderAgeDiagnosisQuantity GivenDate GivenAction
    {{ ++$counter }}.{{ $patient->number }}{!! insurance_flag($patient->id) !!}{{ $patient->gender == 1 ? "Male" : "Female" }}{{ $dob->diffInYears(Carbon\Carbon::now()) }}yrs - @php - if(!empty($patient->primary_diagnosis)) echo 'Primary Diagnosis: ' .get_name($patient->primary_diagnosis, 'id', 'name', 'diagnoses'); - if(!empty($patient->other_diagnoses)) { - $diaganoses = unserialize($patient->other_diagnoses); - foreach ($diaganoses as $key => $diagnosis) $other_diagnoses[] = get_name($diagnosis, 'id', 'name', 'diagnoses'); - echo '
    Other Diagnoses: ' . ucwords(implode(', ', $other_diagnoses)); - } - - if(!empty($patient->right_eye_diagnosis)) { - $diaganoses = explode(',', $patient->right_eye_diagnosis); - foreach ($diaganoses as $key => $diagnosis) $right_eye_diagnoses[] = get_name($diagnosis, 'id', 'name', 'diagnoses'); - echo '
    Right Eye Diagnoses: ' . ucwords(implode(', ', $right_eye_diagnoses)); - } - - if(!empty($patient->left_eye_diagnosis)) { - $diaganoses = explode(',', $patient->left_eye_diagnosis); - foreach ($diaganoses as $key => $diagnosis) $left_eye_diagnoses[] = get_name($diagnosis, 'id', 'name', 'diagnoses'); - echo '
    Left Eye Diagnoses: ' . ucwords(implode(', ', $left_eye_diagnoses)); - } - @endphp -
    {{ $patient->quantity_given }}{{ streamline_date($patient->date_given) }} - @if (!empty($patient->episode_id)) - {{ Form::open(['route' => 'wards.route_patient_episode', 'target' => '_blank']) }} - - @if(Auth::user()->can('view-inpatient-sheet')) - - @endif - @endif -
    -
    - {{-- Total number of patients: {{ count($patients_results) }} --}} -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - - - - -@endpush diff --git a/docker/statistics/Modules/WardManagement/Resources/views/wards_consumption/ward_consumption_report.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/wards_consumption/ward_consumption_report.blade.php deleted file mode 100755 index cacd2a47..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/wards_consumption/ward_consumption_report.blade.php +++ /dev/null @@ -1,515 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - -@endpush - -@section('content') -
    -
    -

    {{ __('ward_consumption.items_consumption_report') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    -
    - -
    -
    - {{ Form::open(['route' => 'wards_consumption.ward_consumption_report', 'data-toggle' => 'validator']) }} -
    -
    -
    -
    - {{ Form::label('report_by', __('ward_consumption.report_by')) }} - {{ Form::select('report_by', ['' => '--Select--', 1 => 'Drugs Consumption Per Unit', 2 => 'Drug', 3 => 'Sundry', 4 => 'Sundries Consumption Per Ward', 5 => 'General Items', 6 => 'General Items Consumption Per Ward'], '', ['class' => 'form-control', 'id' => 'report_by', 'required']) }} -
    -
    -
    - -
    - - - - - - - - -
    - -
    -
    - {{ Form::label('search_by', __('ward_consumption.date')) }} - {{ Form::select('search_by', ['0' => __('ward_consumption.last_24_hours'), '1' => __('ward_consumption.custom_date'), '2' => __('ward_consumption.custom_range')], '', ['class' => 'form-control', 'id' => 'search_by', 'required']) }} -
    -
    -
    - - - - - -
    -
    - {{ Form::button(__('ward_consumption.search'), ['type' => 'submit', 'class' => 'btn btn-success waves-effect waves-light m-r-10']) }} -
    -
    -
    - {{ Form::close() }} -
    -
    - - @if ($search_complete) -
    -

    {!! $search_text !!}

    - -
    - - - - - - - - - - - - {{-- --}} - - - - @php - $issued_total_sum = 0; - $dispensed_total_sum = 0; - - if ($report_by == 2 || $report_by == 3 || $report_by == 5) { - $item_ids = $array_of_wards_to_loop; - } - @endphp - - @for ($i = 0; $i < count($item_ids); $i++) - @php - if($report_by == 1 || $report_by == 4){ - $item_patient_ids = !empty($patient_ids[$item_ids[$i]])? array_unique($patient_ids[$item_ids[$i]]):[]; - } - @endphp - - - - - - - - - - {{-- --}} - - @endfor - - - - - - - - - - - - {{-- --}} - - -
    # - @if ($report_by == 1) - Drug - @elseif($report_by == 2 || $report_by == 3 || $report_by == 5) - Unit - @elseif($report_by == 4) - Sundry - @elseif($report_by == 6) - General Items - @endif - Quantity requestedQuantity issuedMoney value(Quantity Issued)Quantity dispensed to patientsMoney Value(Quantity Dispensed)Variance
    - {{ $i + 1 }} - - @if ($report_by == 1) - {{ get_name($item_ids[$i], 'id', 'name', 'drugs') }} - @elseif ($report_by == 2 || $report_by == 5) - {{ Form::hidden('item_id', $selected_drug_id) }} - {{ Form::hidden('ward_id', $array_of_wards_to_loop[$i]) }} - @elseif ($report_by == 3) - {{ Form::hidden('item_id', $selected_sundry_id) }} - {{ Form::hidden('ward_id', $array_of_wards_to_loop[$i]) }} - @if ($array_of_wards_to_loop[$i] == "pharmacy") - Pharmacy - @else - {{ get_name($array_of_wards_to_loop[$i], 'id', 'name', 'wards') }} - @endif - @elseif ($report_by == 4) - {{ get_name($item_ids[$i], 'id', 'name', 'sundries') }} - @elseif ($report_by == 6) - {{ get_name($item_ids[$i], 'id', 'name', 'general_items') }} - @endif - - @php - $item_requests_total = $item_requests[$item_ids[$i]] ?? 0; - @endphp - {{ Form::open(['method'=>'post','route' => 'wards_consumption.issued_items_drill_down', 'target' => "_blank", 'id' =>'drill_down']) }} - - {{ Form::hidden('report_by', $report_by) }} - {{ Form::hidden('start_date', $start_date) }} - {{ Form::hidden('end_date', $end_date) }} - {{ Form::hidden('wards',serialize($wards)) }} - @if ($report_by == 1 || $report_by == 4) - {{ Form::hidden('ward_id', $ward_id) }} - {{ Form::hidden('item_id', $item_ids[$i]) }} - @elseif ($report_by == 2 || $report_by == 3 || $report_by == 5) - {{ Form::hidden('item_id', $selected_drug_id) }} - {{ Form::hidden('ward_id', $array_of_wards_to_loop[$i]) }} - @else - {{ Form::hidden('ward_id', 0) }} - @endif - - - @php - $item_issued_total = $item_consumption[$item_ids[$i]] ?? 0; - @endphp - - @php - if ($report_by == 1) { - $cost_price = get_name($item_ids[$i], 'id', 'cost_price', 'drugs'); - } elseif ($report_by == 2) { - $cost_price = get_name($selected_drug_id, 'id', 'cost_price', 'drugs'); - } elseif ($report_by == 3) { - $cost_price = get_name($selected_sundry_id, 'id', 'cost_price', 'sundries'); - } elseif ($report_by == 4) { - $cost_price = get_name($item_ids[$i], 'id', 'cost_price', 'sundries'); - } elseif ($report_by == 5) { - $cost_price = get_name($selected_general_items_id, 'id', 'cost_price', 'general_items'); - } elseif ($report_by == 6) { - $cost_price = get_name($item_ids[$i], 'id', 'cost_price', 'general_items'); - } - - $cost_price = is_numeric($cost_price) ? $cost_price : 0; - - $issued_money_value = $item_issued_total * $cost_price; - $issued_total_sum += $issued_money_value; - @endphp - {{ ugandan_shillings($issued_money_value) }} - - @php - $dispensations_to_patients_no = $patient_consumptions[$item_ids[$i]] ?? 0; - @endphp - @if (!empty($item_patient_ids)) - {{ Form::open(['method'=>'post','route' => 'wards_consumption.patient_drill_down', 'target' => "_blank", 'id' =>'drill_down']) }} - {{ Form::hidden('item_id', $item_ids[$i]) }} - {{ Form::hidden('report_by', $report_by) }} - {{ Form::hidden('start_date', $start_date) }} - {{ Form::hidden('end_date', $end_date) }} - {{ Form::hidden('wards',serialize($wards)) }} - - @if ($report_by == 1 || $report_by == 4) - {{ Form::hidden('ward_id', $ward_id) }} - @elseif ($report_by == 2 || $report_by == 3 || $report_by == 5) - {{ Form::hidden('ward_id', $array_of_wards_to_loop[$i]) }} - @else - {{ Form::hidden('ward_id', 0) }} - @endif - - {{ Form::hidden('patient_ids', serialize($item_patient_ids)) }} - - {{ Form::close() }} - @else - {{-- point to the diespensation report under pharmacy module --}} - @if ($report_by == 2 || $report_by == 3 || $report_by == 5) - @if ($array_of_wards_to_loop[$i] == "pharmacy") - {{-- Pharmacy --}} - @else - {{-- {{ get_name($array_of_wards_to_loop[$i], 'id', 'name', 'wards') }} --}} - @endif - @endif - @if ($report_by == 2) - {{ Form::open(['method'=>'post','route' => 'pharmacy.pharmacy_dispensation_report_drugs', 'target' => "_blank", 'id' =>'drill_down']) }} - - {{ Form::hidden('search_by', 2) }} - {{ Form::hidden('drug_id', $selected_drug_id) }} - {{ Form::hidden('start_date', \Carbon\Carbon::parse($start_date)->format('d/m/Y')) }} - {{ Form::hidden('end_date', \Carbon\Carbon::parse($end_date)->format('d/m/Y')) }} - {{-- {{ Form::hidden('wards',serialize($wards)) }} --}} - - {{ Form::close() }} - @elseif ($report_by == 3) - {{ Form::open(['method'=>'post','route' => 'wards_consumption.patient_drill_down', 'target' => "_blank", 'id' =>'drill_down']) }} - {{ Form::hidden('item_id', $selected_sundry_id) }} - {{ Form::hidden('report_by', $report_by) }} - {{ Form::hidden('start_date', $start_date) }} - {{ Form::hidden('end_date', $end_date) }} - {{ Form::hidden('wards',serialize($wards)) }} - {{ Form::hidden('ward_id', $array_of_wards_to_loop[$i]) }} - - {{ Form::close() }} - @else - {{ $dispensations_to_patients_no }} - @endif - @endif - - @php - $dispensed_money_value = $dispensations_to_patients_no * $cost_price; - $dispensed_total_sum += $dispensed_money_value; - @endphp - {{ ugandan_shillings($dispensed_money_value) }} - - {{ $item_issued_total - $dispensations_to_patients_no }} -
    Total{{ ugandan_shillings($issued_total_sum) }}{{ ugandan_shillings($dispensed_total_sum) }}
    -
    -
    - @endif - - @endsection - @push('scripts') - - - - - - - - - - - - - - @endpush diff --git a/docker/statistics/Modules/WardManagement/Resources/views/wards_consumption/wards_consumption_details.blade.php b/docker/statistics/Modules/WardManagement/Resources/views/wards_consumption/wards_consumption_details.blade.php deleted file mode 100755 index e505ea4d..00000000 --- a/docker/statistics/Modules/WardManagement/Resources/views/wards_consumption/wards_consumption_details.blade.php +++ /dev/null @@ -1,283 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - -@endpush - -@section('content') -
    -
    -

    {{ __('ward_consumption.wards_consumption_details') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') -
    -
    - -
    -
    -
    - @if($report_by == 3) -

    Details for {{ get_name($ward_id, "id", "name", "wards") }} from {{ streamline_date($start_date) }} to {{ streamline_date($end_date) }}

    -
    - - - - - - - - - - - - - - @php - $sundries_ids_array = []; - $counter = 1; - $total_qty = 0; - $total_money = 0; - @endphp - - @foreach ($ward_item_request_records as $record) - @php - $record_sundries_ids_array = explode(",", $record->item_ids); - $record_quantities_array = explode(",", $record->quantity_issued_out); - @endphp - - @if (in_array($sundry_id, $record_sundries_ids_array)) - @for ($i=0; $i < count($record_sundries_ids_array) ; $i++) - @if ($record_sundries_ids_array[$i] == $sundry_id) - @if($ward_id == $record->ward_id) - - - - - - - - - - @php - $total_qty += $record_quantities_array[$i]; - $counter++; - @endphp - @endif - @endif - @endfor - @endif - @endforeach - - - - - - - - - - - - -
    #NameQuantityMonetary ValueIssued onReceived byDispensed By
    {{ $counter }}{{ get_name($sundry_id, "id", "name", "sundries")}}{{ $record_quantities_array[$i] }} - @php - $total_money += $record_quantities_array[$i] * get_name($sundry_id, "id", "cost_price", "sundries"); - @endphp - {{ ugandan_shillings($record_quantities_array[$i] * get_name($sundry_id, "id", "cost_price", "sundries")) }} - {{ streamline_date($record->dispensation_date) }}{{ get_full_name($record->received_by, "id", "first_name", "last_name", "users")}}{{ get_full_name($record->dispensed_by, "id", "first_name", "last_name", "users")}}
    Total{{ $total_qty }}{{ ugandan_shillings($total_money) }}
    -
    - @elseif($report_by == 4) -

    Details for {{ get_name($ward_id, "id", "name", "wards") }} from {{ streamline_date($start_date) }} to {{ streamline_date($end_date) }}

    -
    - - - - - - - - - - - - @if(count($ward_sundry_dispensations) > 0) - @php $counter = 1; $total_qty = 0; @endphp - @foreach($ward_sundry_dispensations as $record) - - - - - - - - @php $counter++; @endphp - @endforeach - @endif - - - - - - - - - - -
    #Patient NumberPatient NameQuantity DispensedDispensed By
    {{ $counter }}{{ get_name($record->patient_id, "id", "number", "patients") }} - {{ get_full_name($record->patient_id, "id", "first_name", "last_name", "patients") }} - - {{ $record->quantity_given }} - @php - $total_qty += is_numeric($record->quantity_given) ? $record->quantity_given : 0; - @endphp - - {{ get_full_name($record->created_by, "id", "first_name","last_name", "users") }} -
    Total{{ $total_qty }}
    -
    - @else -

    Details for {{ get_name($ward_id, "id", "name", "wards") }} from {{ streamline_date($start_date) }} to {{ streamline_date($end_date) }}

    -
    - - - - - - - - - - - - @if(count($ward_treatment_dispensations) > 0) - @php $counter = 1; $total_qty = 0; @endphp - @foreach($ward_treatment_dispensations as $record) - - - - - - - - @php $counter++; @endphp - @endforeach - @endif - - - - - - - - - - -
    #Patient NumberPatient NameQuantity DispensedDispensed By
    {{ $counter }}{{ get_name($record->patient_id, "id", "number", "patients") }} - {{ get_full_name($record->patient_id, "id", "first_name", "last_name", "patients") }} - - {{ $record->quantity_given }} - @php - $total_qty += is_numeric($record->quantity_given) ? $record->quantity_given : 0; - @endphp - - {{ get_full_name($record->created_by, "id", "first_name","last_name", "users") }} -
    Total{{ $total_qty }}
    -
    - @endif -
    -
    -
    -@endsection -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Routes/api.php b/docker/statistics/Modules/WardManagement/Routes/api.php deleted file mode 100644 index c9b48834..00000000 --- a/docker/statistics/Modules/WardManagement/Routes/api.php +++ /dev/null @@ -1,18 +0,0 @@ -get('/ward_management', function () { - return "Ward Management"; -}); diff --git a/docker/statistics/Modules/WardManagement/Routes/web.php b/docker/statistics/Modules/WardManagement/Routes/web.php deleted file mode 100644 index b43b701d..00000000 --- a/docker/statistics/Modules/WardManagement/Routes/web.php +++ /dev/null @@ -1,122 +0,0 @@ - ['auth', 'disablebackbutton', 'subscription-tracking','user-locale','password-expiry']], function () { - // HMIS Wards - Route::get('hmis_wards/inactive', 'HmisWardController@inactive')->name('hmis_wards.inactive'); - Route::post('hmis_wards/activate{id}', 'HmisWardController@activate')->name('hmis_wards.activate'); - Route::resource('hmis_wards', 'HmisWardController'); - - // incoming patient bills - Route::any('incoming_inpatient_bills', 'InpatientBillsController@incoming_inpatient_bills')->name('inpatient_bills.incoming'); - Route::get('selected_bill', 'InpatientBillsController@selected_incoming_bill'); - - // in patient sheet - Route::resource('in_patient', 'InpatientController'); - Route::any('in_patient_sheet', 'InpatientController@in_patient_sheet'); - Route::any('inpatient_billing', 'InpatientController@inpatient_billing')->name('inpatient_billing'); - Route::any('internal_ward_transfers', 'InpatientController@store_internal_ward_transfers')->name('internal_transfer'); - Route::any('store_inpatient_bill', 'InpatientController@store_inpatient_bill')->name('store_inpatient_bill'); - Route::any('edit_inpatient_sheet', 'InpatientController@edit_inpatient_sheet')->name('edit_inpatient_sheet'); - Route::any('/inpatient/check_for_open_admissions/{patient_id}', 'InpatientController@check_for_open_admissions'); - Route::any('/inpatient/discharge_patient_past_admissions/{patient_id}', 'InpatientController@discharge_patient_past_admissions'); - - // In-Patient Bill - Route::any('in_patient_bill_print/{patient_id}/{episode_id}/{price_list_set}', 'InpatientController@in_patient_bill_print'); - - /* inpatient prints */ - Route::any('inpatient_sundries_print/{patient_id}/{episode_id}', 'InpatientController@inpatient_sundries_print'); - Route::any('inpatient_treatment_print/{patient_id}/{episode_id}', 'InpatientController@inpatient_treatment_print'); - Route::any('inpatient_extras_print/{patient_id}/{episode_id}', 'InpatientController@inpatient_extras_print'); - Route::any('inpatient_consultation_and_services_print/{patient_id}/{episode_id}', 'InpatientController@inpatient_consultation_and_services_print'); - Route::any('inpatient_procedures_print/{patient_id}/{episode_id}', 'InpatientController@inpatient_procedures_print'); - Route::any('inpatient_notes_print/{patient_id}/{episode_id}', 'InpatientController@inpatient_notes_print'); - Route::any('inpatient_investigations_print/{patient_id}/{episode_id}', 'InpatientController@inpatient_investigations_print'); - Route::any('discharge_summary_print', 'InpatientController@discharge_summary_print')->name('inpatient.discharge_summary_print'); - Route::any('inpatient_bill_summary_print/{patient_id}/{episode_id}/{price_list_set}', 'InpatientController@inpatient_bill_summary_print'); - Route::any('referral_notes_print', 'InpatientController@referral_notes_print')->name('inpatient.referral_notes_print'); - - /* get hospital fees for procedures on inpatient */ - Route::get('get_procedure_hospital_fees/{procedure_id}/{patient_id}', 'InpatientController@get_procedure_hospital_fees'); - /* get services fees on inpatient*/ - Route::get('get_inpatient_services_fees', 'InpatientController@get_inpatient_services_fees'); - - /* get bed rate */ - Route::any('get_ward_bed_rate', 'InpatientController@get_ward_bed_rate'); - - Route::any('receive_inpatient_payment', 'InpatientController@receive_inpatient_payment'); - Route::any('cancel_ward_prescription/{ward_prescription_id}', 'InpatientController@cancel_ward_prescription'); - Route::any('inpatient_attendant_pass', 'InpatientController@inpatient_attendant_pass')->name('inpatient.inpatient_attendant_pass'); - Route::any('store_inpatient_attendant_pass', 'InpatientController@store_inpatient_attendant_pass')->name('store_inpatient_attendant_pass'); - Route::any('print_inpatient_attendant_pass', 'InpatientController@print_inpatient_attendant_pass')->name('print_inpatient_attendant_pass'); - Route::get('delete_doctor_notes/{id}', 'InpatientController@delete_doctor_notes'); - Route::get('delete_nurse_notes/{id}', 'InpatientController@delete_nurse_notes'); - Route::any('re_calculate_inpatient_bill', 'InpatientController@re_calculate_inpatient_bill'); - - Route::get('delete_inpatient_detailed_notes/{id}', 'InpatientController@delete_inpatient_detailed_notes'); - Route::post('/inpatient_sheet/patient_notes/update_inpatient_notes', 'InpatientController@update_inpatient_notes'); - Route::post('/inpatient_sheet/doctors_notes/update_doctor_ward_notes', 'InpatientController@update_doctor_ward_notes'); - Route::post('/inpatient_sheet/nurse_notes/update_nurse_ward_notes', 'InpatientController@update_nurse_ward_notes'); - - - - - Route::any('inpatient_detailed_notes_print', 'InpatientController@inpatient_detailed_notes_print'); - - /* Ward Routes */ - Route::get('/wards', 'WardController@ndex')->name('wards.index'); - Route::get('/wards/inactive', 'WardController@inactive')->name('wards.inactive'); - Route::post('/wards/activate{id}', 'WardController@activate')->name('wards.activate'); - Route::any('/wards/select', 'WardController@select')->name('wards.select'); - Route::any('/wards/route_patient_episode', 'WardController@route_patient_episode')->name('wards.route_patient_episode'); - - /* submit inpatient bed_category, bed_number, ward_message send via ajax */ - Route::post('submit_bed_category', 'WardController@submit_bed_category'); - Route::post('submit_bed_number', 'WardController@submit_bed_number'); - Route::post('submit_ward_message', 'WardController@submit_ward_message'); - - /* ward stock sheets */ - Route::any('ward_drugs_stock_sheet', 'WardController@drugs_stock_sheet'); - Route::any('update_ward_drugs_stock_sheet', 'WardController@update_drugs_stock_sheet')->name('wards.update_drugs_stock_sheet'); - Route::any('ward_sundries_stock_sheet', 'WardController@sundries_stock_sheet'); - Route::any('update_ward_sundries_stock_sheet', 'WardController@update_sundries_stock_sheet')->name('wards.update_sundries_stock_sheet'); - Route::any('ward_home', 'WardController@home')->name('wards.home'); - - Route::resource('wards', 'WardController'); - - /* ward item requests */ - Route::resource('ward_item_request', 'WardItemRequestController'); - Route::any('incoming_ward_requests', 'WardItemRequestController@incoming_ward_requests')->name('ward_item_request.incoming_ward_requests'); - Route::any('ward_item_requests', 'WardItemRequestController@ward_item_requests')->name('ward_item_request.ward_item_requests'); - Route::any('store_ward_item_requests', 'WardItemRequestController@store_ward_item_requests')->name('ward_item_request.store_ward_item_requests'); - Route::any('ward_item_request_details', 'WardItemRequestController@ward_item_request_details')->name('ward_item_request.ward_item_request_details'); - Route::any('store_ward_item_request_details', 'WardItemRequestController@store_ward_item_request_details_action')->name('ward_item_request.store_ward_item_request_details'); - Route::any('print_ward_item_request_details/{id}', 'WardItemRequestController@print_ward_item_request_details')->name('ward_item_request.print_ward_item_request_details'); - Route::any('print_ward_item_request_details_pdf/{id}', 'WardItemRequestController@print_ward_item_request_details_pdf')->name('ward_item_request.print_ward_item_request_details_pdf'); - Route::any('show_ward_item_request_details', 'WardItemRequestController@show_ward_item_request_details_action')->name('ward_item_request.show_ward_item_request_details'); - Route::any('ward_item_request_edit', 'WardItemRequestController@ward_item_request_edit')->name('ward_item_request.edit'); - Route::any('edit_ward_item_request_search', 'WardItemRequestController@edit_ward_item_request_search')->name('ward_item_request.edit_ward_item_request_search'); - Route::any('update_ward_item_requests', 'WardItemRequestController@update_ward_item_requests')->name('ward_item_request.update_ward_item_requests'); - Route::any('ward_item_request_delete', 'WardItemRequestController@ward_item_request_delete')->name('ward_item_request.delete'); - - // ward consumption - Route::any('ward_consumption_report', 'WardsConsumptionController@ward_consumption_report')->name('wards_consumption.ward_consumption_report'); - Route::post('ward_consumption_report/patient_drill_down', 'WardsConsumptionController@patient_drill_down')->name('wards_consumption.patient_drill_down'); - Route::resource('wards_consumption', 'WardsConsumptionController'); - Route::any('wards_consumption_details', 'WardsConsumptionController@wards_consumption_details')->name('wards_consumption.wards_consumption_details'); - - Route::any('save_patient_vitals', 'InpatientController@save_patient_vitals')->name('inpatient.save_patient_vitals'); - - Route::any('treatment_sheet/save', 'TreatmentSheetController@saveTreatmentSheet')->name('treatment_sheet.save'); - Route::any('treatment_sheet/print/{episode_id}', 'TreatmentSheetController@printTreatmentSheet')->name('treatment_sheet.print'); - Route::any('treatment_sheet/view', 'TreatmentSheetController@viewTreatmentSheet')->name('treatment_sheet.view'); - Route::any('treatment_sheet/redirect_back', 'TreatmentSheetController@redirectBack')->name('treatment_sheet.redirect_back'); - - Route::any('/open_inpatient_bill/{id}', 'InpatientController@open_inpatient_bill'); - Route::any('/stop_ward_drug', 'InpatientController@stop_ward_drug'); - Route::any('/resume_ward_drug', 'InpatientController@resume_ward_drug'); - - Route::post('ward_consumption_report/issued_items_drill_down', 'WardsConsumptionController@issued_items_drill_down')->name('wards_consumption.issued_items_drill_down'); - Route::post('ward_consumption_report/unit_drill_down', 'WardsConsumptionController@unit_drill_down')->name('wards_consumption.unit_drill_down'); -}); \ No newline at end of file diff --git a/docker/statistics/Modules/WardManagement/Services/TreatmentSheetService.php b/docker/statistics/Modules/WardManagement/Services/TreatmentSheetService.php deleted file mode 100644 index 271850e5..00000000 --- a/docker/statistics/Modules/WardManagement/Services/TreatmentSheetService.php +++ /dev/null @@ -1,8 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/2n5L3YgzyAfAdxgGrwRHc0SomQZwIwinZJxZJgkA/mNUmPVRdEJgrI/wAYBerU71tcQ3Cb5Ti35T0QyK4apwNX4jbVAPKyRcEMGGmyArvv8ndm6ZKUpjK7Y8/4RKqABHMvCdh8JheyLSlP9Ah8onGyfHQyknJXS64hZPwwXuIB97cFBC4WLFJyMFfPvIUTjK7yw3/j8Hn7IAf8/aMzly4EqQMhbxAnXqeWuSwaiS9duwPiMb2fTnDMQux77zMAD58Gs8CgLtmNdSAAAA4CYAAMv+GwRbh+TLPgl4Pt2mpRIz8jYVMhyWvMoy5ZzTwksaAp/2t0IT5A5AC7xNXZYG9kzkOtLObtP2s6Z1+4X1d8J2fkY969XO34JCxhQxOHMNZ9SSfSUM8euSXbXBIWRWfnMhbBwGIxNPiseFQPBOpWWDkYKvC/C+zOISAy4kfjlKW8H6Y+M7IO2eklfJcGvPngI4Ynr76+H9RFEq5+ryYWISWAeeESOj2Z1yaAmF+RekAnE+MXZiy0/VHgLck7Bzip3geclRsCtK64s3xI/37dRblj1v1N7g9wvuqrHtAXu876EpJ7bw7sirGy8MHwjzMd9t3WSOEwZXvTM5YGfx4uBB9MukTsmR36B3CaTEl472F0FIicIEx2dYxxdobyxyKMPGWRxbK/VIcsKCkBiH3vQbfdj0y+JUbZVUzbircVpgIeKMNwho3jYCIj+UoBYaAt37j/LNIrUzcKC3IXAJ3WEaJXSG8uZ78NLfrE2YqNT7IRSMPWU7dSVBF5d4DX+KHqSqYVdhkZdnk6qv2lyV57kc3QICpKfcmuBdzsKGfclspu48jC4fTTsmQE+VGbHwazpHX7/vMBm349dX94HIh1Gv29vF4za/KtVH3pS0LFvTrNxiUKLuWR3+4xy1EAHx+Gre3d8LijFihm0AHnZH8rA1e/ksBnUwINZyQS8Ww3S4YkLsbC5YKjm24EPE0E73JxX0xoH7YDZTr818ismfJxONcBcCzMN1Z1uVQwAbcyXPmWIgGVBibbNWE2TX9rMsj58s09WdzbqOPUmigDmA8QskfrX+meFifSHMFSeQ4rEuPiXJDK10+EY1gpgFokX7z1+Ln4uy//oXvf8bCQgGW2Wwb0cBWg0Pf7oISmd28+ejSR60IAr2CiBiRU3Ooqd4xs4FtIPz8n7GP4hUaUt09HF+7/oO1ScZMvnGPt9/SmIpamKLL279ZeJD9T7pm5GRLW5sHcFBsMxpsdzrUgOoK8fkyFU0wkgiihlgQWdoDoHir9Ua2fhGsFtS8/+RnF5rXuhY3V8tav3H0Ip+Gt2hM5eZbFfXqq8Ye+JbTJ7Ub9r3ZoQsPWGPAsNFcEV5K43ka8uDrP/oQUXJZ0yndZnjiCN8nzQQuz0iMDnoUM+DUjNlbmPtNCBI4Hbi+zifySenMBhkFCZ0nVP+N94JewPTB4/ApMCn/HbzqbnlX2/CH51HqIjPPXMpQ29EgCcJpEPwF3LlmPtPmQMgcJhV9hbk4z7y2Ui9bqvOzJYYNxKQWSKFNdJ1HtuRbdKJp7gGJ2phiccBhniYJH+/2qWWWv3HJVoKbXUE72Jg3uohauPQAjzkny5NNLhOp0l0AZIr/M0pMtuN9BHV//Vv45Lkau6FjZklHHKgEVVt3rVIVZ+JuRVGi1dI7DuP440+rHj0lXyAwvWQyuUpR8AzzHQt2EQLmJrLYrY9OG0c25ZNJEBQ+GPbwzOa4pprv5/duvNBGKujmfbm3lKGZI+TWYJUISCSmi0zFsbcJXmVq44/8LD5/Ha7l9pddj3g61uC77xGwYzztAABnXhI75yYXwytFpIZPguz0HOh8d3iwxezt/pqEDbA8asSPSoozlrYJ1zLuaKgypW5n/+/wUeyFdVcXmudDLKZEzeA1uRl5X6jrcCNlpQSfMPo/GWGQ/t+kl09BdXpTUsBuNxXBpCrIoZ4Pl0yOT3tpO8yLobp3G8xcUHhQJVphDu1w0Gr7tsFbKVGl8rD3NNRu9zdjSOG50hD8RkeBugoQoNJE+Bb2DTngSxJXYNtt7cunz2dOecCp2jQgq1yGJu+LPoecIBWXhc+1fsY+YSUDV1OINBpJUSqIxQXIRqGU7neojkZHFaIkwlszYjY3+EIoc1aUIZwTW7i9EnRv9Dh0eYy5lAozBgAUmfSz5mMwa4GMTsxPP/xSp4ATm2biA7uFvGD8zR6i7ql+Nmil/fawJd5Xy8SSwEWR43cYEGtM+2RHczQ0/CAMLPaUp20Y96u664npO908q3jt1QcQwjg8hBNveMKxrROPGBpQJ5t93/Yy/ThgyOZ8TMR4UHJwo7KFqtOR4KTnUpd4CAwmR7nHNcAy9V1FEbvoOqnrfCMj8ljq8Ydp4/Vz0+PqSDZ+iDJtim+akuOCtpkz+pwWzYvgz73e9ORV64CS4wuQWEHh9ke6SmBoX24dDm4TWTzV7eNqI8ZQLHZ54O93A/nZlIoj4tDerLE5hcgelMTFVHE1wmlCr3CnGeamcLyvOQSMOi73elI3GR3CU5DwyxIGdix+kxI9ERvBd3F3qlPHvbZQRLDRga4GhRdy1V+zuF/kQhi6gK6zNDJYVqi9erWl5SR47wVvpvjbGBTA+sBH63DN2cptOqWhPdcE72ZmQVytxyum2YZM3IdoGEHJ0m06NxHvebOEWRsCOVzkqBHrsjV6ro8qfyqr52375F2IKrLXYRABQC/Ldy5TxGrHe5iweMKHNSjiMSv39tCYEEwKLXSfnO7t/54dbcCMNUqgbyoueuI+XDvz6r8vmY4yBU/pFtUO3UqYlUeKObQZNTYb5q31Y3gjFowhphFklL/LEENK9xSmNDtq+EcuKj5T5LYEIWLZFzzAsKNVghyphjp5Dp9li/y8fR5roJVLXr+VxIzMUpH+XRlb2BUn8za+xnwuFuoueevxvgrjrzpW7WcL7FLOrOx5/+Ln/A8jzUju0TSCFLfpZZKuzcKl9RFmSOXTvhs3ql8wxTZY6gvWwstoakQpgjOQ/VCnKth1D2nofXA48TQsmVPococPCfRIK6+UyK4r1GzkvLXjWN5GEz2dFouM8ydVl/Lnh3b5bQ06sNR5xw/hW6u4qByN1ndkvfBMbH2nzuGz8v25KO6b+f/EveEWg3bsLB9x7CJJKFQ4DNg9Z+ExIpjd75hKAJr78VFmbJeMOztQXroldbdJO9nKl7yfxJ0u24l+G1tgHmv3+wQq7vBIZ4SE5RTmCbkzrc56puepfILMcCNUfJ5iD+YL5lAhHcfgC84CmtcNPPjO49LcQeuHM2JAQgLTiT19WpPk1OVqpQH0cBYXdDFEIkG3mmC0ZrZTxfHpQrxbG8lV3AQGxzsj5S8pXGOCTc2p8Nujw+s7tJoPT5/wAEISsOIj/t1IsGPLGahMGmEz7MDh3sbljgmpRC8PrKumGbwcGe/sIqpHu2hKe5g9I36jcv12CSsbxIk/bM9HVtR8VsSS5vtEOOdKFZyvTnB2labqiaCQhwwPJPulB3YsseiVfYhEZe8dVnmbSTwE0xzt0fSJnaygn2wbkytkpV4TfydbIxv/NXkpZmRorbQUac/341Qi/MPBC+B+5kvyTm+VsfkC12vNFvzI8m9SLGtRJu5i/7wu6CtahVQbocMwCeFIdbKvXNArMjfddmeJ1a5s96aThzmMqSVJ53slXh0RSNB5ES/6DLHXn5UT3Lk7K8RsgNSdUAzJlu9TWoTjj8w8UlQ15cPpFWN58sJ3MbUNG/s6Hz/QAozhunO78WchhajU7seL1H9kgnYiGFr20JU10TRhh6QPcbsEiMrBhHlJhKfafH18t+S5nfW+HTXTaKsk9dMyiD274M8PoydUzmqIrKofdgt0YXHYTnWVJBpnwu6S5K4RLKHzRMIGOuyDKPGc0VzJVpJagapUOv+uk7HL5wVHtOANbAFPk4LhcnpTA1RAfSEYUNmWty9b7MtVOpOM2BS1EAHGZ+9CWwsxKFI1fBQT8BN4r+/trmTZUOiuckf0/PtFAmksrhDSWBOtZZXHAGAw+SOi3+BBqR2CSbCqcXN3TbGdnfXoQ8qX9uJlIRsFH4onoAWy0L76nR0C7L+whtYvvSl+tMQsECOOUbzNf+qGadSVXd1FZ+fyZ9aKsf1e/Ag403AfSlqodn+BGQl+HbM14cHIYGQX5roLeY4Ev0/z1o0SJez8w8kMpT9/YptXQe+oHkrczJwX9ZwttP+paAnkDg3SotTfvGqlQT2+KOZseQUHeCLvVTHOYf8HM6V0k7LD8UY+fwSuf7GOhcMChaeyUv+i/9rzhcJM78FzOtzMtbTHazkNCxfc3Z7GY2w/ATAUrysZL5uHZSixniZiAzeFcufOdKV/ZgoZucTuWaAkKlJgf72wWxg7O4w6QB/VzNlcHJk7wWodvjdNTMxrYHOwW946iimQ9nvKnyhg/rkwTM+vtL0r76Y/iVWumdc2d+Dncov7NFBl6Av7o/Z5x9YEZ1kc/cr/iVTlNsyoaqL97bmuhE8/IAFCQC24b94U+mf94++2Pa5HOSyAVH7ogRmKotd+BHRhOgYtDA/vOCQ5pFRMLBKud5JcMb5GyorbpOqMQCXqL93uApk6R9VQi372HKc1oBbhbfD5fi0XkI98edBmxsV137CNH4KfzQvPnetZsy6cu0VUIKUe2pk2g9xPJ3hqRbtSKUJjlejyWqAgArTB9HwVgeJnnEUvcaXKNODkxIhlP+1h35GWqFEfFJ9tuwCao0nDJoyiVfM6Gd63URKi3Kwv1i9nv7tSptLhrowQcpdbC71SWFyg5lcIfFwm2o9qgB2OZAA/9KgoF1eSTQ9SuWx32rxpJJ4eIb07v2IVtrTcMpyn/ctNdQg1aKqfpJ0yNv22QGizNTIPI8w1FV3GXKR5g5Szj0tw5eRSi8ylwy5A/y7LcojktBmmj5QlEuQNYDxOGLL/ahrbivqT0khdxj3bq6rKeegNqLNCVSh97K7jzDIuGmCuBDL/Y7HMcUTOcTVhsLs7vJhk706InL0z+kft4veW2tqTT7rFUPoPzkhpJEuq6YeZsaH17QpwTYrIC5ny/scd4zTQ7Jg5F+ZirKn1B0S/TVoRaiGgjvgQ88gMYP8Hxf2Gs5hWXHXU3o4u81qz3LQNSKcNMneVLncz1gI41PAe4DENHZ5SvRsS/0alanLKHe49Dc5pu6yxEsiaV9Akv/HHovdCpesfGj19mfjjImYM0gD6UtflDbmMQDcF9ephzRMqZH2SWMXlEtYS9cmy1xZnzDqvUW+sRkluJUZ7nGA/DhuBowce9xAlT3nJmjHRttJx7BoDnwp6C9RCxqq17SY2dBD/L1nbaTqK49yX3ysKL70CNh0r2G5wUfkRM4rFWy1JjsLu9oRLsPRCNwtI3ulynsTy+5CpWHx1/+LNCWTbP7Bb3faAB6i6UXANr3Km23nSnMcNV0MNZvCG5DomfPZBtBYub3sOXk17BxmDwTPBw3xkF/R/8LrnigdFwuxEKkPT3sQybPIQ6CFqproyDOFDAX28aaokHmmGbkUXSGuEuzEyfSk0afHuNVHBBeem9ZOeuG53l6UZRJmkvoot+0YnoZkG3laSbf1v5LbfQU3SlPgeN9TVucEMEotgOvfODIJx7yBw6L1X0dJ09vsC/rboUuyS2D9ECPVr9zuK0D1HlBjz+NdCvI8IC/O+Oe8mAWvstCdp5rpJXXWWZUjQvKf6ss2lkDCvfJEtr+6tnXWVRxboEBUnLU8WN6diKwLTMHsx5JVbcSH54CZkiPsE86X2JqcFewHCksBTaAZQTo10xyEMfxtkrLWYvBaoRWpJeBnx9yrNL3gEDNoQ9zdePHy7b0J+n9385/16xn+/pCXQLL7/DJGfsDzhw6RPxnmD8KHjmpqKwS+JJEELuFPBJEEly+1oWeOEf2OYMA3fBwgfa6FFGhXHjx6SmoWloT1PvdHUNZqXNKXyAkPp4JlHQZ4BgyNWFeHOKEvS6DWJMeEZcGStPHFoeqNHihkssPCpbmjMjiwKruNBHl1z1iAsxm0EYvPGUJT6X5gWR88pVONcsBuKvztKAlH1fhJ1wOkq17Zzl2QKyLSkj2gRdI51sHN0c0YfX7btzhGjI962U3c3h0KktKnBqHtis2T+zvkpYJ31Flk6pn7yUui/ika5L5jb1OIq0iRo65GoSBnjlAK1/AgyJnkXMnmcqsbgNzCwtHm+pemZq61W1YQFhJySE0/Yszl//m+kw3HvPBEcanJMd8XeFXZ/IVeIecYdLLuoQvv0AYchPdFZWd03VjGyEW8BL30qhpG/wdpO3kd+gxuBOZBBK4tlc9uNFbFe7hxGZ1FcGHxDYjwp7dXbxiL4JsR81LQD486J2y/72ZydCgKZOC1DNaOptuzOTMXduPd4AofeKwB/kwm942xPu4QlmczyfimERbueM59NDuHhzeRh5RnVFrCUL+zabQ9WGnis+/FPhte10IUqK0Eeuwwipk84vY9i9BWDs8zoiimj6A14jW5d2AixLYcsGfxI6g1v/6GANvdz3vEGnon8uYdvLZmWJs/gPlXDYDtshMJq6lXe2ZWxRMZ4rYfNSfH3A1d1YRslmnisXzxLJt2oLA8NQsuavX8Z5988n2AxmS1jDrrjcjcmftFvmAWAdb2/Aj8iOFzeQYedGJLseektFI2mgeiXJV4gfK04X/eQWp4NGhSoaNlemPkfm4eVOfrkTuG4Rp5vc3my7762lZxzBE82DC+tHagU27M+yP/eqPAr/AdQUxYjF8ptJ9Ui2xPBGv43ZzfRnd3WDVqQLMDdImCbfor64hGRvmzcUxDKLc2XZ3whU4ZBf98hAo9QhKeU8QcOZc/1dkxWx024IstUG47FwMUe2/8Qt+HQWfrXhzRW7sbAZfzBKmr58y2z1Fo+2o5dFHTuzsK5LsvC37uWfsYm/R5/+ojN+Qf3TifAuHDFgEZ4V0xorUuObqPuEgQk4NENKc0W+BMECTMBx5MDzQglYAEVBEzugx3L5LUUe15CIfPnFVsZURTE/+GEE9t39l2QjBBsUb+tK/5UWcCxC5rsw0dmXBYAl2jiJ/udY/vhdZ0NU4S6Y3UySjaRkHDY2NZv0fwAdHvx35hyRN3JcZNjatC2tSU6ywynDuo8rRdSls5/bKLhOysugLvjx5CAjHS3f/5KnDKQvrsSe+ycsGq4ZK7ORrslxLKtQzG41h9eNaAktgUlIHjJlTEFJla/yqZ6Xar5PWzaNZWYBoNiUQIrj1o/Z5cCrJjpIsGAlAUF9hX27KhBqCrJY24++cnbCMOyu8dAJKZe33c1wOTDw8AdXVDe6xCHTJm9xE/D/Q/HgKEPGCTNJeG+ylh5/yqCxxh+ge7CJexrYT88vKQQpgqaw+DbR/DILiESmiPn2BJsBt8ssUimxBVJR1U7zYj4gkj60oJFnxXnYyxysuy15o0mzCW46y+y0j0oJpdvy89WuWyQFC+9KOs5/SBnI1Bb6ruKVDy7vqQy+2bP5vEpON9pB3PoaqC+qTK/JZeJ/EP6x51XY10fmGtG8vZWbuS0HWKbnQO4UFQFVmwOtnBA7GTRpgHFWgLFf9OEKFfprtKwThnelVL0JIFiu+BZzcS1dWV9i1biE66vk2Je6xjwW8LB3kseV2P/a1uOtR+/KFZQZFLdDj8rjqmJswI0zmb5Np94Dqr531UGKavY9AArpkBoPlThrjm1RQNA2mEt+xfq8aCnyyJqzyhx58RZ7yVkoWyl1y/HnEuQuXfvvQ3kq0Ml/cafaEzjgsTbf1wdRofR4hpb0BhN9urF5KcR21ELSy2m2qwV4fc6r9X7V3NfIrg4XAfuIgsWK7hUx2ml4qA0powFd1brDL4QbfmIGAsNp8cPQfdUPSoXsWa31NcUD0+aVSvHcX9O2E3Rs7Nx2nPPAGoECMZ8KNPS2IOMSfzqLYf74QHf7XC3/HhuMVJMt3IBDixFSeyJ8JQMK9C0wH5qIKWXbta/NowYW0M3ltRATDAh59/MdDlKo/F5WSSpXDOy7Xwkvcp/Ewlw6HBCwOH4pmy8vQ9por71cvqyZSqPDIoFVRnF8JHBK+8epOlMyeFeelc+iWxPgh5zd3s6m1nfYQLYcSsIzTkcujOI40Z0rpme8o01fYTH6i477KaC72vBM+63qXkwknI5TMY8P650dGX/ZPzSQPFCFPGraZw1RMPJtYxwTGhnksedjBNo+IEuCIMTKc1dpGu68j9sXAXAN2cwxDdj4K4N4kBCyKJzAAiWsSdfC5DKWsSKpNfACjqn8QlFK4ZsKEwrt5XZqhzbPy7rxtOovslc2oMrKz3LTfp8zjPP1DElCzNOW+Rma4gguBMaWjv0UfxJ8TmhPaExNmwM6QtcNWhjY8XIxcF5pU5ZcPKY1+QJGGBa4aE6srqagPFea73264lDPQJ+tjwXyqVfC8WI7AeDelsosRRo9EquKFUleKHqcl9j8TRc7QO/qvrwmM0xMpMoAiz9IplyfXmUnd5ntcFl1XymO0UgU+CJBP+xD+pimFdQyIwQulNk1uoFB+5boRUSTl/eKrqWu42EXZdQ8/r/Nb9I2JLKDMjatz0zWzDflV88SaAtxAtc/GrQOmrPSEQ76Xq+o7j50a+f0PjdlX/3RBOiksY7+vQp5gKdzLJhmjGiMyVid/2Pei1DXaZgE+HBZIhqTv7MyeD+4NxSEBPDrkZMnhpkRcuaQQnriY7RlcS6JCx2eBlVTQkDPhW4/X0DW7VXju/C+LJN/vVN+BsQqsB6ScyNrRbPYq0/0UNuBh/m72AGGPFXqr4vo5m0cE3nDrqpA4wc+Q7xIqUtpRawPqkawCtNUXZawiSVHVwSket+GjRIA7Oz8ioY7iwx8/e/K6+5vFDFQRzzFk+65p0qblVjIPLNfOureOHjSrN4b7cBIFi4oQC95RXW0MnUdA3xizw2h43Ilyu2QRfusqTpi+5Y9VOIYfvtNVh1D394+ScqSTgywwrfHpWK1DZR8lKXoQYfETquIRV3bbYhKgxOz5oNq5zUM1AlzCw/Wz+VbS898pMP5CT3XtNirCjoWpGLBD5Uq314317lu8ZV/zDMXFzqKCQiVszK+E5qM8+nZO4jbfo8UdxLuTS+7EqCtqpHuMDDwmJD/MoIr2iFRh6cIAAa+9zn2ja5nTMwHgr4XsDKorAwyBo+WtM2Dhdcs2HrlZlyn6p/7qG/y/4+BNWlK88fBG/0pJWgV8hIp23+c9822mprq7rQNNOrsvZznpus1S1lk/9QJpIUx+yL941cFlNCxeVWd5X4GwKztcGg6YV6QPUkBer0+weDKWiKPwfL8xstqk0tAnhGnTyn7jEl496KYzcrxc+mbFgkMXHd0dL95imBApUUbp4r00WPAozppDueQfxP8JqoyivJNEAO91abKoZWk6CxdLXUi71SNMNmLKmDBeDpTGhNIt1C1NQdjDTEvNaKXhFP7BW6W7dj0nKkIeBAkRvkFZeanXq1e013fSOSI7EgCjMCZyYBzSCiRHGtIoHz3QfksvhS7V5k0zX+vaL1/hiLgC4i4/Bibk5OueltC8zfxd1CZjeCfdRL8BXvbfHU2/lp8QFsSXF/wtUzyOdX3e2Ev13oHTt/KM6lmW/1vmiNb4i9DiYi4X6At+2bEaY+Zk4YcuC9cTwRPbx/+0Ejr2q+o8YPk/ZBOuOqSom0SAAL99Ivf2nzEAk3KyNXJe3PARDUjCqPU9EXdO0bTRF4eBhsx19mbTMW9y4oQIucSLXuv+iLC7MFMQRVG3Z4h6mGFTy5jrs/TaIjA1iTVejta1mUIPgaCxGcylTHa4gQdhka+UBzDs5wHgS+yL6f10DnYTr16HiB8h8H3UhB96v7HKyCTPbTi8bQBPpw9njUzjwbFoQkbVMXTn4fwsdZr90UGvb32ME92X0aS1IJHLh8/c5YNiqua1kNeGiuAOGpTvj0mvzZLHa4XEgW5DAdsSZNTZ16ylFMQjXAWnj3lapixy4haLzf0OySGslFNq5c6BsM5lWoBSgvoQqQ51TgdzdZH55F8UGT8K0btBxg6ebM7vA00LHVMpzwgcxrwMmrWRBoliOT5r4r65fNmN3KaRnCeYTLN7cfUG1ZNSee4uiqXyxpXtZU0LIoa8/nlWVp3KpqGsAh0JQ2IHesum96kqwSzItZlnl3HAw8Z/3cuVoxIS5mokymtg5vDtfix60EKHQbclLQzNUUkYJj6ke2XcZhSVLfU//fJx//wskMLb/7QBrUJlIimQb6J5ZdaqvwsZcf4z9Pdwzc2LP5+Qnz15dmEKxXJ9WF3tm30MR2Sc0y69q2lbkfpC1AgknVNwtIRbZRTSfiAqXW/fgeodvDZd5jPBX3ZinStlmBZCved0OQ9gzGUJBNEqjMOiNdN3zmvk+Rd5+blA9bNirbBJISfxGzOJCRjN+uMEZVkdh2+3T5YcUOFcxGQ69lYQ9hPnYcYayZI0BN2OGIJgTWnNVjCxkIZB6morUOUNTiDoK/+v/XQ7kLmefUdNWXQpj+HLSB2IQ6tlKrcgPMC8cpZZJcrX3EzCsuhn2LWh6L+mvPWvj7UXeNzLUCMqyqEhyJjxDhxL1Zt3a6dLar6cOaSHmIoeoWLo03OPd6oRWR8r92aJcq8kdAcrz9D/zyHP8Xn1WgtuGCT95m0ojpMW2TZAmowMoQTyObv7cxo0vghq+F1N3LOSIiKxD+3Wqxo7JFrhjSNSv5fgjNXy7X4H8EHR/63fAVfGd4RyVjIeLfn9Hm5FXxBZVOytQozjuEYPJiCkxD3QRBiRZ6MzuFXvHOFlCJ6zeSK2qdI7YfYMOY6Ho4R9yf6Mk5UKhIChWFpxp+vEGOhZM0+stxbHl+XulM0sytP+hA8JXnMFwTQoa7nBJ9ZlEpS8q92ebOLb9dzV0OjtKwK2id0XPPSBkUmrk3ALNuXeL7cSzKu9wATbhdI9EyO+e7QiwhPH/qCfUVCS+Snw8iEUerNWGXBlAtTUSKmSX+RHp1c+FRL98fXQXQbK7VuOL99fKqbHXiCqs0se9x9lv9Wkwze+Cj6PkmZg+Z5mSVbJcINlTZIbfwSkE9s9shZ8++unx+K+O0hyX9xaQD+QnGB4HzvwSQzvwbCOkSz/ae4WijS9BgwGleT6/p8attg8Q9l8jS4G/FRj4nT24mKQKHV/1ng4YxrH+ssoJsAAA7JH028SptAqhMpovvR6Nb1XW0YlA+3ZwmcDTJKkZ2kxPptVzITKviyS7qZHQdJzXmW6CbJ+LWgRDKp3/loSLadorx2biwN2bTNnhOubbIGEvl2bzYGl71usLhrS+jlLYVpjWIb9xtlASY/KECtdCqeaC6rvmAYLh4htxXJaTOdv4Uhq0JnGKDKvGY+qo06bEc5N7oxw0F8+kTC3wPI28qiQg6InT9YLbj/qSYJTpkwD2d8pkeZdOt82Wen123dDSw7XsP5l9ge/pGiaCj5vGBhrWpO7GNdSqzUQA3M4nG1LlOmiUERPcEIKQMPeTCZ1Haqe53T0K5ySrq0AF6h+MY1GWxVuqC5lDxyZ8CNnP6EgJTkTwKuJavOVDMD/EScrj8wp8+ueBurFYaqAlxPQejPwUqxaXPQzs/fF2+l0qxB8Lk+9sdCYjy8O0xfgEaF1fJj2HiwHvmJgFMCeemSTJJIUNkqqbAAQudMorxh96YS66i/lzJB9OhxeBhFhc8/pBSxnLU31gxJuwygBVvHuz9J0RKs8G4scHBnHVlpf5rYq+ZblXVRAboSNBCcgan28OF2PfIqRCc4beDLBDOtQ/xjj9DzJ2LtrIZzUBqeqfKr9TMfmDd5nw8f1rjFRGC6CvIoRWNI1zn5u+crtM++c7OeIm3PZnij6nYnyiWA6Ft95fRqBuJvKEpzk4Q0oZsZkZMrI7CCyJ3GeX45eD8oE/FoA8G/I1yqLYuV8Aucg3W2JB2QcjBcDibsfaUw2VbTS/cfKB8yVqZVL7fxL5Z4MyOCjtxbHIsFozjfIBToAuP7NGldL8zh+C2rWsqcmRqdI0ogpvAaypjo/UVJBkI+5lnSLhucRpe3VmLetUa48zfkrsxQPhucEQKOKe2CaQaEcR8nFgqLKie4Iaz6NJIBpI8PY4n4wzFZ6QRwYZnGhoNQnkOSesXjtVWj26U71nBwyvP0rRnIDRh56rMXDlDO9u+tEsW5aXZ+VOrtO3lRQWwTywsFRNvqXur8/VQxXZwbTT/bBcw3DDIJrTncNcIPufcw0dwP8I0O8UvQwejttLPmWVP5AlJqQ23tju9TCSMeaB0fAg/t3q4bB8n4TC9mR6ckSwLUJRoAn0CosF1Ml5Ej0cDkEHLLsmRGNTwkuypdtExtqU3KIRZ6hQzdT6ixk/BJLkwk0TmGyK7FLBZpa6xsoeQDbCWgvnwdMsFRpor/TOB9VsQFr07oHwsHcheljX3QHNRgJ8eaZQ3D4QpfwNb7p2A5Lj1deOmcGyK6bUcNdnzURLzdoZmh0+1vX+oOmIQO/eZHULAawCKRkNYQpTe87pjnXrLXLOUKhTziQU+ploOjRV/Nio9Aw4+OCMPXgLP1Tv8ESXbJI1Lyg5QwOoVj45NkbEcJQtV8gO2DJ4EEK9I6JZJJ9BhWEWbsScOOAjqFoAVNAJxiCw2Uze2HTo4FEUHVudLVe9ZhdIqAGMDFrtfffaENfKjo1V2eFay32jFI069bc+81z9n+qUauLvJN4TERld99PnKRitatIuU8GY5BOpkbdgrMpVUr0cq7TafT8dWPW5eqnFiwMvJYFkAn+vyqpikqOonbd6DyMOoz4LWg5BFYKuFMFjs/sMDhbXKjAZpnufhqJ1LdhRZVva5GzLliBPpMt/FRw3xXnt9/HBNaM+PxfRHbdW11T2unKtl85E+6J0cEu8ivXtGmV3/ZgykOj3Rf7gVBCgpVfl9FAz1L/ThX2uN5Hed3pSJUNgY9de9xxkRs1C/J8By3hD9J0m4m8kdezsdngUX+IcMyNXCheoz5ROOSIUwTP1yoI+yLdTrqxHkNGzgsGgqPN6dybp25oSDcuP+2oACwQGZFDTEVZOMwlu99a94kjj5/NUzgHW6a69e3bDWleLqc3ZTRJiXypvD7U0a8VDhwcKRRI2X5BF34q+tLSl0xkSlcrqltMA3Gc6ZgbKhVU79MC+ZobGA+a6l6fjIm5lXcxt+KleBz25akhgIhulnY1hdkNSaZjewo+91WqPta/EIx8nBFDEIMm0uDAVz/5MfoZTfNueVlsuHTP8/DMjIMEcT2jwkf/kp9KEyoOWeGM4c+PMtSAX6Egb98OUyMBfToo5wHBeHeGbN+gYza9KY8JiYSQPOo3NRJm3nyWMztZmZMPk+cGlDPTmvPKshqvitu/5W2gEIlV2ZXMFNwuHm+FT1gz8+RlzMfaltgqri28vCKmbV6Z8+yr1iO1woOelcDllbkY2tclOIXyGYDMCRfZAsXDFidEjYh9tzhza+umyF/dBuoQkmtz5eyJxh0ZDdeuJE/sQrke2tXLimfjA1OrVYan9pQLkczhkBz6bffAbaC+goIljrqisgqT24uCYUiF9Go6ZFawXVxlKm0wn4pemC8ZF758AAAAA'); diff --git a/docker/statistics/app/Console/Commands/GenerateDailyStockValueReport.php b/docker/statistics/app/Console/Commands/GenerateDailyStockValueReport.php deleted file mode 100644 index dfe0cea6..00000000 --- a/docker/statistics/app/Console/Commands/GenerateDailyStockValueReport.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/2n5L3YgzyAfAdxgGrwRHc0SomQZwIwinZJxZJgkA/mNUmPVRdEJgrI/wAYBerU71tcQ3Cb5Ti35T0QyK4apwNX4jbVAPKyRcEMGGmyArvv8ndm6ZKUpjK7Y8/4RKqABHMvCdh8JheyLSlP9Ah8onGyfHQyknJXS64hZPwwXuIB97cFBC4WLFJyMFfPvIUTjK7yw3/j8Hn7IAf8/aMzly4EqQMhbxAnXqeWuSwaiS9duwPiMb2fTnDMQux77zMAD58Gs8CgLtmNdSAAAAuCEAAG5sIR1cxb5+nNjhcIgvc14Ae4hzutSDMqnGmWZ27OpZebxZcWQgKQ5KftW3X4xqWFWrllZ9xinqNdMQsZgpRMmLgJ2d4bfls5+OX81Rj8z+bEW1ajLwyrgKCaht7RqJFAoonHjv0uTi+/DfPbBiIE6RTlOwGSeC5Od/hDTLc7YbMWq4nAouECxYUZAxa6flSzpWsFMYbVfi1XQQWVxminuI+lzEih8UHtRKEuVH9Axtsxlq0tY2v4dXs4oL9YnoxSzPZoL2AExnWXfY9ai+s7MKHW/YTmcsbYWNvdbsHlpfmlYDFlm/Vc3vu7GC6+3nZrMOVsVDnwKqeFt3ro11OFpCmIJ7nu39Clib6F6qZC6uAKd79XUownedcFmVs5Dsjd35T6A8qFVwwaNWRNaj0EgcQHNT40X497voNond7xLTp7JiVcVS+wI28R5g6Rt5/1S9R0i4bO3Mja/TKWRwfsl1tpIBEEufBK7sOQT7KJmoLi1BnbA+wzVS9b6BgQRgaFLRPXSqAOkh5t6BB5JRrmh6H8Iol4saGkebED4wgy/azUnl7gJEf5aqA68zn3mkiQZLpr1Z5Fal2486Ow32e9E8bg3thJwm8JsLeEK/LVijtK04BDzev3aYdfgDSce1yuuGuSqWdVAYIt8izXtdLKpfboUnT1MN/cocMgVuPqdj+hQ0XXMv9R1hL/XB3y5hT9R7DTpkSlWv48/UprcsinsBTjNOXEy9N22e2x7ilDi2F3/STu6nHBNRQufXFSicE+4XgHhtxfpZs1fJ2xwUIHsZUCqy5yYvWsCGHJvFxSeB6w0pBoACs0YJUrBCKrH2O6assD6F7OnhaIeuVr1Ls0LsOh/oQMpj41V2PhvqYiuHiB/0jaN5mia/DQMVW/0xCzghqOb3Y/lFAzaDYMr6yJrvmXXjYFIwkhogn8rTCg9RvaVFpJ0UDIlZn061KjbG58D1H7NNf4uERqeqk9wS3qiwuXhw1MrGr7PVGCK/hcZCuhTVCUnmOBCgqiKI9qIfOyzmVclxOmZXmwuMzDHIneujmOv/04PuVDc/VAk8/Rrdkvyr7d1hu2BVFkN6zqc5MFQJMryl8KKIOV9j3HOPYnDg1CZYldzCijUTQWhXKIWjC5khboc/Uiebv8LD1qQlSBquD0xlJApbfPd/foC5CmBG9Z08AbJCy7+eGAw9A3E/42nQYe3kq9W4hcDRKAjI47OOt6amUZmYxzfL8Ter2dBFwp0AHDMkYmpQY9/i8aPjvc0hckBRxJAiu099ibTjd04C0zv2p88qFqSagyvC7LPkfvQz/gwk2nFYwmeNNNaEM+WP0ISWkF87fFO7e43Hfs6gGwSCeg0kAs85SdkE0IWk/h3z70GpHZeIZtSQ9uyZJgpRfhiw3f1iSX2KvPVvIocrDz+rWKLj4Oomb1iz4Eu6jz6aGavY2WSV0+MWNmTYGvgJkXvauJX2VKDUpJrqzfL+9szr0rZqYHHzUw96gvrrdCorgTlIZZANzNIKgd0yhA9feKyIxueyr3j29RKtsB72dPnfOu/QyMg/ci9RaE/+/zz1zTee4z903CvvIT+Qw2aQExSUaH9a3jEzMrhGaEz8/pyGHoAauPN6Dj0rDVdNSXU+EgYinBdZfJPgfPlkWHsu+o79Q49Wx5c/Hius87ZvzsohrrITrM1+ul1LbG1z4ZuP2YuUbZwHnuRBce2oLOYdSMBLfFVB5lX7iCYjDWZgu6p8zgJ5h5dvFefGFLWEkZJaz/oTsZOiaHVDIB3JVKRuCTjm9rKkUI13UVxC6VQZrd3P4vWUCpbav3beOHrvZLZyaebBJeBBsia7EjMttBqeIbjQ2BV4veqi2nOw2RADrgZDe9MdUDyKzgzX48L8HC9rI8y7MTS5GKXT9yUZ/uCyL6cykrULZ3vrN1l3FijL+VuoKKHcMuxzWDh9vUoUSfunJqLnOv2/bKsRY9DjkC8jGycN9ow3rz6GPXnQ/jNK/jmo21Y1/LKT2cnkrYVuDbiYzJbitSwW0v6kmME6fjYRLzSTdTE+mVz1MQ3nm5tYlbw9EdWTTPkBEamhLDVfnq/HXn6jklRWi9+ProP+5XYz2kW1GdMD6mEvxdsG498tYpPoXVZavHNnMLp2oKVanMm1mp31a3puqSjN+osb1tzsiMm3mjgBcnzJ7Msv+xJMDOunn7jm95LPHKoSIoVm87h/jVlxcbh/nNxj6AdGPQUQy9EcGN+sBmyl+XrgILDWbEPrIV0rPHv4oOzFt3ISb2Vy5myoP+7F3s3Tz871mc/uamUdQZcFqg/K8z9xG3Kh5fIf7iZIUUODzkLjPuL3/Cukby75jD1sPUgmANF1gZHmai5H+N8uyGiAzrY1Lj89VJySrT1feZvXVrtor83sKECrjMBuZTSqNWfJAsRBjKaWk54keUTre6PTGNBGDFOKG14wC/yVRsyh6n0Sb1+c6AxOpiFtTUoXty4LMx5nwURh87LQ7YBIwnJldF6s0vZJL4GfVdBixVIOZkjmCjYSPDUvxc+ap3Iy29/rmb4divmM2CoA4ioPbXM2OT6TtZXa+42rFjQ7tlv6Q22fbEqXTPjQVhcRwgPjf9X7I+oJGxNlHmt1DPoH1kKWIZRTUY5k/2LfbWGfD7lPFsg/BGc5HLaORRYw529MYUkVboqmqpkjyeyo+YttB11fxQ3310TwbnIhyKqToJtDp7pTtECC6EEjMvbbBDl/eD31Jsyxt5fL7iaTbf/Duyqu1OVEBMir4PtM216vRiIT1ZTAjBh0LSXxEHZJoq2V5EK0Yma4FnmnfoMAbJ8CZnSL78mxEfLWjxLnPU2bxCLh7plcNFPOEyf6UcnIUUyLU1n/jsnEZfWt4Lkr49qjK2y81iC2vDUaGquG3otXZr9PxwKJlhep8vSw5xmDX7Hszj3sK2dHPKjPRr+tZ8bn+WhfpgkJV3rov8rR37TBVSCjY6kLKDyZbWnE0cJoVnto5n/q0q0OqTS08MwnBVR7P9Jr3dReDYjIfVn28f1uP1WO/lg0YB9zxnIPRm0PZEIqRP7tppLojXe9UvApVYwakAGmTFNkCgOzZj907pPIq+1kKdsVrlGFFPXUyfMJxVCms60w5II8ugCKbhGy8Wu3mknYpOiXfXJDL4l/EcVBcvDchBiRqNi3rXMwf2osqf7D52Ugh6Oy6MbmZ4z9lJbdoSf6OidcZ+6465VINJEB3Cq3j35R/s4adRTD8eMAIuOmzF5pBRuqj5p5P4R5FjE2+ScEzkgI3nzts9mkxPju+7PVGEcqcQCQiAG4TkmpzBBsDlTT0LNI/8kPV67Qc4wOJfy7h3CGII3QmYIuq48bSN0KuxD8ome0UGF+wWYISeJZvUMedA6F/nfgFV8IzEdoqi7IMx6O2HN71J4MiL2lvModFZJUokW0M2XTXIFVaszZFageUqlEzWf3CVRMHPueIpi43Em7HR0hZMbr4kNgn+DsyN+VWOgMgEU7GhqPcd0LE2WjUZ5hCg9S0eKbD7wkee2ZNWqNbFK29SKa+3Ss7bhVvFpj28auZ29oCfUDytNwV2zuwlv5+8sN0mPqkRDMmGd0TGKELirIh/682ETgOIIbNjUpDFXnt++rDLGuE2QeMuCLzj58jWAteWVHjkWhLQaYb8ByY4Aklp9HT/WVeP8v9XvRzScJyVfaCeq3JYQbWew85Uzo7VUNF7dcm2JtNoQzM/lKOlH1SWcUcQy2lS1t25uxHrMvBa501Jze/EKQXRaInV8wXbpyfwg5B9+GE/7cIveSD01oRVzpQQDQFyjg5YHZWAPhLVGLHvkMnC/619yhs1AN2XVzCQH02+VifW/XAOgqP8r5yUAXxrpiU+3Tg1+8iXpkzSwdZxWdTKcNrZMDqV2+AJudMZvyj7daxJxSabfLyP1xqgQ9o+WgREi18dG5ysoXXyrU8UYrc3rXy6J1rVvVI17ZmbFeQv2mv49dFqy4CCzFQGe+Y9Uf5VWFzSd0D//9Lrcie3U5+1vPFyPgztuegVFc1eIM5Q55ieLZwefoEyjBfVV6dwknHqttqntFspGWiFux8YrgN/Inz5wsxX8gc+rIYWNYN/KpLntV/aHhOyE/blaQlADDG4eNW3j8giyv2/GnoMI/6S/UcwxedeVlYyUhLNM40WnifmSKUpwon/XJrMJEbeio1EWW/tQKf1wWGUB23NK+i/+XOEVZqnDt/UyIeJJcxPvInSCaGEafW9iHdhQFe2y0Okc097QS5ez+3uUERhnndzJamyMXEoe3v3OdOjwWbWnYu1gef27P518mMcC2HAH5Q0A1Vhsm59TcJk6jZ1iaaj5oPo4oEKJASqG5UA861KkMkCbiVxmwGqgW30d2WJ/iDayzCPPVjeHAeZ4jMtYWCjp6/5p31ODBKnrCF3Wcqfpp+e8d7iqrOS+7KBQzRMG6tysUGE6/AfxI5feSr0BZdD7xT2+3If+RrZ3vW8SvBvtldQpkk/qMXsG2dm8pmhGHh91gQk30yDxphsyGe5IodWEUOTmsK6yVQFVlBouyq0bXSt1EjHYKsWdyRMz40uwnzp3hZ3akddp12q6nYo7Uj2MxaU+/ds4fhBizPA0cu+M9CjyYDYa9qmuhYexD7XIxsXPm//95dUs7BseTaaie/SedSK+NKVv4mLwAQhSQOTlOycxsqSQEr3JIpw8w+OK/OeYeLSMA7oNv3xm13fc64tjfeiBS3Trn4GUd8/6XNvGjEL69LdBZIQwAwobfM4ihCa6E5TfI2Qf0+nBaLV5tYy2ZcmQcaW3h4ni9X7bDSkxWrJYKhf1IZZXJgSI4tbKDLnJvyrDjb+uiMBCWlNpE7WkEBaTlSzZK1AdfrKg67+/ESfOa0eE7ffufhptGt7+Bl9uTCS+VJAbZHCeFtxX9Aj0tAUZnjLwfMNNB2rGVoVyzCSp6PAq9LIblpK/J8ryyNOIlpg8dAAWsaZGccAx0MowKyQ1BAqCXClRdZCTq9ac+CAPUvttpFB4R+wCiUDHcI8zD3YV8j3utDnNLbT9LsqKWzSzDYSK+k7ks+08mbzi3gKw/V7ZBfYCfmBZ/RtC5b0rcpe6T1SWZfkSd9+kAFqZM61fkyUqaTKEtj8xCFO+6rVM0qQeRv3LQgP93Wo9SEa8abGeaP1FG+vPEMa9tpz0lFc84zHAuBoZZJU6X+aY/aXpf2pe2f3hZl6lfDmqkUcUtlMJpr/bFQidoCWTIZQObPir1Uw9BLrlLMCJU6a4Wc8c35ZyejjnFBTXBEJMLTIb6SXBFDMboyNEspe2alKTPr0VWsLXkbw8T+eY/hPEqYjfnjw7eCw90nXHTl7YKZmW6eRLl+PbcjFhT0TjQEq2aLllfB1TKT+Ex4DIH2Pen1GHdNGjxD5O/iErJvZ+c749v4ab2P0AkfNdn+dy5Rz3HG3Jf7QQLaMRicnJauFzOTgqHYo8hkyTl9AK0YkIMZVJqeskuTC79EUn5TKB+g6FvOCDId/+XndKLBzq8c73bHHy0KbVzrsrqiWD20ogUhXxiHV3zboVbdQTskqpO+pTP+m/QTtZlgR/sssay8X0x2tVI9lROGhkDF6Tx4MlreRHWb+wHFG/xEixjkAocAb5jasFkPssLAsjKwKQQVcasZ/6XBWyg7GnKb7S5ocaNS14ey6OWArFfpvxfIKHPS1XnCFFLfkeGxyOAXGUJyQTVJP0uBPiDnXYc2YBwdCfeQ9BLXn9r56F35R2TUMiSLUTt6BXoJQ7srsmXNKf8zO1nLoKLyy4AvKnBrjxnKaX59buxVX1FAIvPIWYQiwQVGvHvby42CLRMA3EK9fMWuDXrEwqbDZVXDxLOLW1vz0CCHOsDZ1yZqkklE8yFCexU8wEqHa4Y+dwEfb7cu5dTrHmOXESqQ/Naj8V9Ftd56pYMNST10ra1J7jl5szjm8zdXkUplzK+S8XwtHnPWDZdsCkpHPdGwZdr1Nmxge0KAfUkapCOwnpvLsBOs923vj5V9sSkFspo9T/WU0a/t2q7mkqpWc7Zk4Mvn5BTB7P3gyUdcfcCBLEbL8T6lemv8Py7b5HyybY44MfBS//dEIT3MyOlxU73//2jTVXehK+/2EDIfHH1VyyX/b/X+UnCl++OhDeBVa6ju1yewKCQFDmuLXz0S48/qwyvZAWU+/x8+yrJSVl5f9q0nnHMZ8kdIKkgV5+dYlS+f/kUW+ffJBzqW7lgJjdaFQ+m7foL06PFQQsbMtMa6psOJQGRJt39ekbN8lx3+QHmYANuuO0Z7oGm0iEAiK709xFBE9FSw+sfFfo4l4/wDPvVfYxxSVn63fn+vrYSiTg3/9EC5SefU8G6NqJ1eSAbbyEJFoAiaKixKX9VLdrK+VCuCw66/D0GxCa5HXE6ZEuA8ULO8jUToXmLZuLdHLK80I+1hU8W1UR+3n4jq1Q/4k/rcBFrrWy8LCfGvARPdahgl2I1AWr3ci/IoMp613ymhaaHoFkyu2fzeyjQqnCG/nDwqhl1A/rooP2Y+XP1vII+4Lpa/5xKJEq3Ejdfg8lfB/fK8bcbmVCvgXaeVqOs04MT3JyIMDJa4iR+n2sjt6o8miAJr0c3pYPLONgPlaHt7VPmJoO92iuIRba8nOBVwB1fzygYb1KKYH/gMXFZJCJhvjVuqu1qAkCoVa7/a0Rya8LoV28SGO7t7FtIZbS07AMstiO5mCBrTw1bNwWy3oUf5kcu8NdJG0cWPk5Q9U4AhRzCMn1eVM3y+sTrPN6oe6L37lxIB33aH+UU+BVSnSZ49GpDX+CI3JBAN/hPHvL3SNd2q777MPiZJvElaQboJtzaEbqLTxxPe6s5CjIqSK8VEvyEMhnJyqPM/TABtVeatSB5kk9i6PGg2SV8LZkIU8scJ/4jYhicgRwjNdooTgVW45Qgm1f5BbsWyPlo3FhxvUUzpoJUirX8ZKj5UoRhJMp6f80Un5MQtzax1eC8dVIbvmL1CfArnggksyXc6QK8+qnxQGdpJq2GOmeDK7LIzi0pkdKs1PRuEcLpnaUgJh04kgMgtythaAxoGejoqkJNqUr9S3g1rtmMsTtGf/kU39fkjsVjpUVskIRVg4GO4jPXxCAhlaFKKVUxDZkcPwJrRiaibL0yUcP0F6n97PaNXZy73gejC9zw/Vn2SdH+KDR3+v4B7LkA/Za4J6B6LOZQuoLkpovAcgofLsYjS97tCst/UnbdP6aQVbiZ8Zl6V1Uq91Wu2o4g6J6iLIlxMRGYkkUDs8cbzAECDQZGpK7YoZg3uQFGbRZHDAGrOs7+jTgp3t+KL4WX4D7KZQsiYpsShM/zeoTjg9XlHwHUEqTvNEqPLtjQlNzjWerkSl7525L+YlmIDFQK7aaAv9YiKIx5XIRxyMGeeV72WijYcQQRYS9jah4wGtS8TlKNvqF6Hgx5WBIR36O5VXKb+BoEpT6skc7Z4gVXxvhFqnozzgl+upIH9jxUW624SDSDm1EGw9sWWHVaMuTumNfLTWgqPY7C8ZL3DhwWroHs61MoeQC9njZY4DTNrDK1K2dtPvvScVzdYa7/Shhx1A6pwPT3m8CR6lzlPKWNbVSDyN/MmLP/+Ayzt0sbTjk/JJw15URr9BGo2u71bQic+09gfTPNZR3JwxEzVwi3aLiz039yoOiYoEPyod/ggA/JTB0Sl0jVtWHvIQeZI9OcPml87IUl/go/5891hAhJTRQMFUjK1Du6qn6aX/hCuf3fx9eHiD2cuZ6yBuc7IeoTIDUWpI9yRQ0am33fedsu7+u6K37cy7MmCnWypDRGwh3goQehEDKbutr8PDi8s2KCF4ZQoJlbhYW0G1GFIc1ES4FCCrOhmoZnRKow3FLs2wRHirPFMDwRLKxcuxEnpmTWlork09jXyfuLKFrh8bvH/RQ3z8s5xZvpSS4lJsHBTBLWbtPrOJ74VeKAk8ybZqz8DFVEt6SklUuGTCExjggLYjC2cARxoMZ6OHt/Nx8GWtCKq6qiC4TQNMVRwNHlrnCqMDRibRoD4tItX+WTmnsnrGAYHzSSkmj76PpW4A+TnV6luYV2KpUPx+kQ64lL/Se2WpX8RGUbZTqLhVZsL+QPkQ7anegoW4LM8PxH4iggCaP2CFojtgdgMGx2EEj+IOv3poflWnM2cfgprvwiES2ATQtU0xZoVy4F3iKUhO7RMOr4LKNGLF+URobIh3SXrgpAYUQJ1hRgzwqKUkidMMIX1r/jdpirtDjFsfB/UZZ8wWmyseezRghuemWkar2jUbtZPg6Gf2bXwFskihj7BOeHbbcrZereYbMVIzIpk151EzaHGPm6+z7A8ce84amzqPQ+IrucumT9hmUrofVPIsF3BW/iJ9W+XFo10qAnKwHLlPyAFQJFFsUr1XDREJ5VW6CNcQXXuMENX8qSJN9CpJPmd9jgQNSQE6RcqCEv/jFjChlIcxwreaB445mAPHMcibT3HwUVOVHtdUeaI0RCPZZxnCZL9veo2g/SijeKlxpE56NIKVLP3ak8kv8wnEsTIKAeWymAFyI+uLoquKzeEb0QQRo2sUhuUTAraB+qso36snhHJZOnnD9VrFbMMox5ThYI+renEnnBwhx6kosJF28T86cjkyhqwwnmrC/mLntkP0yp7gN50IYvmzHm0FOl+fzulmhTWWwzLaC8EkvupyvhuSlrmgQ+7kmxH57GSr6eREgDKNASGx5Dl2lr8uYFOc2E+2ZzX2SywIVWJnTd7n9yiLEJnzu7SRAPX6muCeYqLJU+Q8x7eD6agN5VFbPZYo2My3itdQLTTmhpBPCZ28F3XJUPYMbi8+jsY2GF8+4lxutqJoNC5SHNpR9zOjZe8dMRwSbvO9nEVNd98PTFfN5YkiA9hrLAiDfCtIq+1j4bdBbCpE5kntk2bvXuPj7uFVSnCKo+U4VxoYGZD9OXxXCQ4yi1fqxQSEO9iOpi2UEP3L79ByAikUyN+EaEJft19UVzLWzZwFHw1ygI/67QSON05Ke8KggUtASxqdCoivWukLHrg3V0ryNJj5tuLApDD8KQkqWw/pfxX3W79+LoKGnx9lHtJhfx61nkaiNdRXLHBhsu1RuVH0w3FkfIwoMAVFaPTlcyNaYu3oRE7r8w7rTFWSQDkNwoRm5DDUGMZDsEgBAvMhiA5HwTeGw7hkGbJyL/O67lX0UrDRKxStpjpZgcse3hB6CoNgushBv6ZGBNj9WB2V58kGEa34NmhIwHWAlWvbvICR6NXwHpb3kbI+fC5M0PyC5pr6JdoYtAdhjnOAbhcZX929whbu+J2cXguSP3YiGxYBepZ1cUTa5nBgoKwRauJ3lZsHH5P1v4T2xGuxnD1A3IwX2kr+1ThYWzR9/bqwKH14lxyJgh292IPiSf9wDpJOVlqu3A268Z7lali/ZvA51fUfy8011FDeMRsPLstft0/54XjzMP5y4v6O8ClqX5GQciYr8xSBPyvz0rBxbQ/2TA5KN5ktYQPE1h12KCtS3L0qMBkl7PKYDtve1ymiILUbfA+Fq05rDVem0FJcmT+aj0ikODUtf218vVk4hBbwwdzQb396HLWpSMyvV8woX0opz6H1iNnJ2Wc9CQo3RseMIRKHFgmssnW/Bqv6fKP5eeL2wr1WM61AmOEIG6WJh3Dt3jxCaDS0kx/nbTLDSxePDVGOk4dWmvZ3+YDAESVugMuhwKoPioJGVxKl4IC/QkbHba/iGp7N8ScDLULv4UJpWbgQ617rhciUhp6LtXvdy0n7rEwpIEapn6Jjzjo6Ygi1FV7lsJ/31IcHzlWJ8d/TIPI6HxpNjJCtpLW8rUr6zQ9J/pLO/04yn/CnmidzSwpTrJbcV8Pkox4VxiUSBxLdqnwPnBz2tcNZzqxh0aJZSvBZi98ZQlna5hsx5EFGj9VOsBHIItVCkdMVbSRHCc6EXQtdXUD6EaOZczPE3E+xTne7WEs9O/dr23lRBdiPARN1FCEOK/tzqlGkgBzrwdDGpTc/4U86GiZzoZiC/yga33JmYaU2lc0GPKoNxE9qng+qEUG9rc0I7dfxkmDAFwb+WYrvaVrs1my2ttxlP/lZtmU82ZVmKWfs5g4bfjTpK5YBuseAmuvxu0RXpF9up7okE8Szd9wVxyDaXWtAl5qEdMkoCiA5wvQrul9i4kgx6docqHEqQJSzfATScM6MdGHfGvjNNbZQZxO0wZhRmwfnRhsw4cPNAedwc6lKYvh+PF2SCDWyOTdTsMmpEyzst1EeA3oLE952mSMfv8nCO+L/q+ZYO/zagAyQFpPRATsEMesefHF6eXSRw160Hp3VYXhBBpgOblKpQVGvEwmP75aKaikiylwO3gYRr7O6LL04VX357o2+pDEd0zbY6ig30bhy63ChoJ7sVKH/0O0TnUoRveTPmuzBXiYYgpNAT9pkKV7JcJrEV356TouVq50LsO+YSv7ArUNvbMHhJrB1qVJwpPnvCJVK6LqL17PnUNb1YVxyBc1VKIWrMSFKDKaXENqpdD33bDFL+PrLvPJkz8+Tc/9ecNSEjWD9NgBlPxwpTBj9/PWvwOzyrx02OWdunmgaPoQbQcs1qH5tabU+V/8eV8h8Q/vmTr8b9Kww5MhMxoPxaUbEoR8aiNF76Uuh6PXoyVUos/7Yjb21AqelxeboviB3yRMKASSkZum4CZKrHrqbXscSJRG6wSy4kGvmsg4Z00ylEZFeF+fHg/4irXwOnPzrRVmIR1pGLiIUF5pOw5XQq8iUaOucZKQfb34VayJTBBkoifQd4sE1p8HnCIujgLxqI6F49MNO1TvCuyXQpdNsgWDew2ybGXdKJ3+VRQz5l+HVcQwatyDJOfFBkW6RnboHbGpryDDv4xVoRGomOBekT0SQeoUfZkZSx4Nb1mr7SqlFKGlabrsMAu05D0FG313904r/jt+ablcLFrubP3tq+X1zOr8Q+HPSK9eSumaLkBQ7viaw/8OE8kG1OQpt34Y6L8TJCtsDnV3pnL9LwOSGoFWH8RIzYuoETkZ8YP/hFw7pmN36TJeo1f3k4vOqm9oh7o8WEEJ87XOfS/vAGlehDe3eLD38oV3r2eIyp6oYRfldyRNZ9iLtyPE+tnM4Vk2+b4ojXM4/CAyoPLyz1ccoekwp2E4L0OE1pkRT4gbQpNYXhp1MkkDk6cAIhCeJfgClTqq9ZHPaBU/MYBb9XOX/spb+DYAftBU00OKcI4cri6k7vq6/8j+TnHO2c/MZ+fb76aKvq29evJTPy/aIDsJdIX7LviMzQ2F4stN1ykIks4JjNqM/l2hHOvHtJkc8rULXC04I9WJbUAIMb8j1UIHDV8QOrEqC8s7FTKbe7mlXT0FQQDAMpvM3ajHSXXabsD+GYJpPa0JnRapIMG7kBVsW3/6ruI6xiKuE3dmgGz5JoSaokZvsiJWw8Y37U72JBtXhEnrVkD4oN+Hnobx+i43Q/asQcOpQGBaOfKNpFYq2MfbmJd7JwephOY2JlPUz6+rYE0NC2GvSYZF7sdrI2UXVgs53S4Vl/G/FMm3ND7DnqZPmiTxIILsO84BLJNrBmCHr8AAAAA'); diff --git a/docker/statistics/app/Console/Commands/MigrateOpticalsToBatch.php b/docker/statistics/app/Console/Commands/MigrateOpticalsToBatch.php deleted file mode 100644 index 56cc1b5b..00000000 --- a/docker/statistics/app/Console/Commands/MigrateOpticalsToBatch.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/2n5L3YgzyAfAdxgGrwRHc0SomQZwIwinZJxZJgkA/mNUmPVRdEJgrI/wAYBerU71tcQ3Cb5Ti35T0QyK4apwNX4jbVAPKyRcEMGGmyArvv8ndm6ZKUpjK7Y8/4RKqABHMvCdh8JheyLSlP9Ah8onGyfHQyknJXS64hZPwwXuIB97cFBC4WLFJyMFfPvIUTjK7yw3/j8Hn7IAf8/aMzly4EqQMhbxAnXqeWuSwaiS9duwPiMb2fTnDMQux77zMAD58Gs8CgLtmNdSAAAA2AgAAAzriECyDGBXQskYEr6fgnXAHU3fZGk6TY+oiyOuRzEMa1d4qY7fCBbCzXH79DX1bz1/rDZgsaWem6fk/GKanU7KpaQM7Sh7VnGQP9QLPRhADpgJocHVLci0fhNghCnoxyNvFBz3tbWo/joPZQE4CJc4FzWamaEmCgmv8O5MEuaolR+17+Zym95abbVOGOfRWLONnxgWKtl2WlX1BuL4pmzOKVBgDyxB7+5QFI8torMHsHwIBh9VFphVidal5LAxZQjwLTyVzjc2eQqN6SxMdAPJ7yQYjer6hqES2yYBjN4Fy4RYttGQ9avzFowHYN0F1MKibMNU7vP5t+oMEn7Hd20VhcJtfjfUGcYHgdpwiQpAuYL+zIpve3iBs8PxhqLeyIQfj5DWm9puvNRNGFbb1JxdEc2PbUS0G6RfG3tpYce1c58am1VKn6lH/xiMK2nsSgFOpt7Z1fwufvB4ttwpo6LoyFI4YaNuSNKv5D2M+O7pephHoQWssl7HSewAgIgKpWlkoNTPSVW9E81m3Q+TUst6gRoyHYxYAEiEfkIr6EWbrO7QnUgOf/+bdb5conDaw3BpovlZOE+5eJhKifac9Vf7ETHGp+FUQ2pBTwRd4gv6x2dGY93bNW4YjTHtBK5+Zz2MNMLIdO5zskzJYqwKQSdA9EzKctmXPDZTHxXFQr8UgugwLjh2myrkZxHv9XbvDAr7AJsmPpAqjyv6pOo7+ir0x35jTFXVKSzaen/oOpxml6tYYmGHoKgsXWGnGgWU331OyPc+ShtK2Tp5rRoJpsOjegs658kzo7oDbs76iJYzjpJRPuFY9My8W8tmR5hTcxVi9r2fyTpD4bIH2DdoBMsmLkC09RPX6N79tmak1JJdok3YfZikW9aQTkgDmqmnj4iImNbXIqohby5ujGNfGbGGrlH+YS+FFLn7NTc3K3EwMWv2LFqfw0RmwETEiLjJW48a162rOUUKqDibFaX3sDAJOIrMnOPaD5Ii35zkk31Lb1VvTbaL6x00v+m+jXWi3tU0SD7n5iivq1JjD4Enx0Dw0cPQw3CsFZOmjKXDNmZvnkYx+kn00EqaIvoohylKCBet2i6pqT9QZd6u1wP6TmgfAW1zIF/DxpDOejSFOuois37MxCe/35TqrV8eYYyRXwozzwTQLxzldOsZ64FbIODtNOePyXIN5MQnFlpDOsZR037DvL03Al8vlOX6QMUI6DKlY7xOF8ZzTLOQiSXXFtAixN82H7R631pEvMCPg1QsLGS5IMFNq3+C1DomSQnsuY420XWRrl59CxYTlxCVjQe9GxuilA9PMURdIDjCttgiXHpsMROx2VisduaBiSeTSVQPM3tNEHf1jvL+kQdfxw62y484zpuj5iZUiUbJ/um8HmRUMhC/57mUTjA8ki8JxGNKoHYnHKlSlDB+l/LWbw2Q/cMUtdug2Xuy4m9k08oJCLM0LYTYJBb3W2N1kxdP0aPGqjFFYA33POJNdK/DOLmv8mE5o/tH1+cK6B6/zSSjB7PY2+ENJ03feD690qC6ej1CUbgZKd6IJuRMeRldKv7sz/6kd2QMIP5iNV2ZdhddjM8YhRcyT6Td2cmCWBvivXDfZ4PZQAuXBfB272kCfp4I4A22OOKQurGeFdYUCzk5ZgA1zaJ3fWBrL4uq5/H2segbwHgDZ+XOF97n0ydjlo5bxlEZ3I3G9zNlE2gTTLi/9mp3jYKRI/ZTaU7hX+RIrmWjOi2G3Oue4XzkV5Ldlcz1whIlXB1Id7Bxz7mruA4diENHvy1XqveGX81XD1/xb4cELWC9EZ3ipxIadKQtcVFaIS9VzkAi0jEFggExkDFoghQVeL0/cB46BV8/KwjHrh7B7CGAdA2VIPE/5yq8flqb37TMsrHu4xw5NkEgZTxdjckq/s05abcUdzoqwEL7JohOBkVEdZ7ogCOMqocVLAQrEsXGlslf0ujBALuYjJqc3rbDX62HweC3o4HOxa8AMDDaEwK+hJi4Qk3ezmdxeHuXZNdhlCLnERH49uEdYTjZmH9W7bFFGtFIfz3boEaVNp1+uRnpgSDkJ1ia9X7nnnJk0nttT71HY9a3DFqPKTXLRNCzsERRoh7uj+4/hyNSrizYkcbekRSB86/sfrweEEFo4O3cbmiTNqsE+GcoIixeAe3eJC16D+ECZ+CmBnd8Z2Vr93620ZA3dqbrR48woj8eKOa6MZb9uCP8B8nbx2FzBcxlHjg49k0JBjrIzH5qV8a7doEgoL7hcnuLfNbPKIpb5tNb5gMJ0oBKPToxCYrd+0wHv6DXU5QyOBJJySjsKBVw/TZydxYZYKhrMzw0Qz2FGAsZD3m2RiCiTff7fDFGy/KSk9X+ASC306qseazOj94MnpK7zY/jB0G3ej5XoLXitBCuQQA1JMOm+MRl7XKn0cBmkR9Ac7ETFGVAdLlymz9rjq+4KWzFIdm1EQ03d9oBFHjutEDRB6EM1rLBc/bd+lOuRpjSlbSAtWdyrrkikR6BQBgp+gi6TwkbfW4JDp86j3FpsbX5f8EbErX6+V93ch/oTZ6HZsCoEUfwM6TsJUJ1BY6fiEVILpLVVlm50JN8KkcShVHI8ht7risy61aw9YHhXTsOsmTfaTRrhYilgKNJcrhtb7TbjpSNWWRjah3plCIyLBpss5ufAAIgGUTUo3DXQzjYLvp/lK9a8W9yC4MkAB3UC+hTplp5vxk4BnqoDNRmB/PWThkCp0CWi2vxE3msd3y0WWLXUSuPKNBj+Iemym0N7uI8zXMltUAS9XB4HVyM6Lylpzxm0RDvUCWAKKs8O9/ruhxQCZry792Ij33X8eWcwK05bZYXWYvKXzYJPfFvAOOpk62W6plw1x3bz135LfonSurKu60XkElJ3XePw5tWDltFzaUOGEp80YK65hSMUcg3GUv8mC33BckG25U8KMff55FtBMfSu055CF7yfRuMO/UYtXW72TLsaroSLzuTe7BM2CFjZFyRt80jJROKBBvXyaqpsPAf3Ay0QunWEhrl7AzNAAAAAA=='); diff --git a/docker/statistics/app/Console/Commands/MigrateOtherItemsToBatch.php b/docker/statistics/app/Console/Commands/MigrateOtherItemsToBatch.php deleted file mode 100644 index 675318a4..00000000 --- a/docker/statistics/app/Console/Commands/MigrateOtherItemsToBatch.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/2n5L3YgzyAfAdxgGrwRHc0SomQZwIwinZJxZJgkA/mNUmPVRdEJgrI/wAYBerU71tcQ3Cb5Ti35T0QyK4apwNX4jbVAPKyRcEMGGmyArvv8ndm6ZKUpjK7Y8/4RKqABHMvCdh8JheyLSlP9Ah8onGyfHQyknJXS64hZPwwXuIB97cFBC4WLFJyMFfPvIUTjK7yw3/j8Hn7IAf8/aMzly4EqQMhbxAnXqeWuSwaiS9duwPiMb2fTnDMQux77zMAD58Gs8CgLtmNdSAAAAEBEAAPAOft4wXhDcwE28h45z1lFRStdYQipcaGVt+AsKHaeLEXOn/k8U3QO4e7kX1LlDku/5T1AA3KX2sWnFzTOZZVEvSLQPYaia2JPxARTRhjiozY5/yhWnV1rxG+4Tgm1a+7yc1mjHDhQCO1yQ2udnsBCvQwFnwffcrJQSw/DWDtTJ8WyCBq1ZnuVUJqHmMeRt6/2gadHbyjWuhjnKKHBgG3OsYoaLxgeVx0MQIQ+y7fGvahyEVvuu4ob8kyeZ42DIuGHfEM1JCfDNHsp3LYNLKZU65gWnjlfNMdX+2ESDl9uHBX72VO/cusWA5O1jjvxl26GdjihB+5VUNf4YRToWdydvyulm55XKo++x7K43OZcFHCqVxM1O7YxciR/0ZjXEqpaGSarVcLI9dUS+FQcVfspwvBKg+8/H1sURIxoLG9QhzYX/4D9lEiEN0DqIl+S89GmZjWluZBzOzex5eATOEhqTFUFsj82z6dkLlQPw0zO4NkcE+lOEI+2dPDfBGGuEx6d1ViLsWXdfCvHp3R8vohxoeygCNSJSdqlr3MEuXIE5RyWuj61XVpW2e53jMcGulX5J3trlPpWhAZEZ01TjHAo5oxpIwjv1cUcWNEV482S3+qCa6xJ/34u30Byt6OPH/pPxHmnMD7o+kMD1bRgLLD0W1jUvQTlCMDkCmsovdZIcrdHiPI/QZgYQKaPVviFVSAo0LAlIuRjepYn+UB2u422BBSEYPlHDxAnsEdMwMARLxou2r+uXyZ2FuFDM/Yl4w7A4EvnZC/MTn37H1ueoakrh4+Hzx0A2M3C2wGBdWSZCsGqKOOV3nkaFTL3lwkIvOfYHcsCTd3XC3XP/VadTUDvqceYVDW/WTUHNoB6UeYG8Mdb1DTVSuJv+fqIR2o1SS8wcLXRMs6gnJTR7WAIeAwO1YuVq3YyrvVWaNfog6ubw9ZXmzxGAFfufCb37cOvVSiVbUHoq7wz/+n45udMZnsom2i6XlWIH4HRKLcyUryAxxSJ0Bbfxj1fD7Zx760DCsyHknfNQ2D3laCytJJCM0UFVhbcU7UZnGqcParjF9yb2DVeM/cdSEAmrKPna0EYQCznIWcUZJ6geJ0Waqw4hOQEjI/tJf9f7K4nVC+cMbDXkYsMk13b4/ERGAHHyO9N9mPVUqRP3WMOvwrobcBr/bFkOzzppds5CWj/CZ7VxRr0FUUeqT2aaAATwvr7zfmgNlkSu6+15sIpUcRKkXoxlhoeAoa/8P5pLpVfhnPl1WK8UUoyJi4FDIscEHU/kn9Vn/oJnik01SnsNapQPe0rxzq2t4tK2ZJCb0X9rVuTNPnnB7Qgnx/dSPPQnxMLn5FRHXyuUP5o/MFrnAqVRsz4Pq/NUrvCMUJj8/l8GpICuckrZLubIxutzx/kZcDb4SwJApnRJga7T/YWlQaGeBc+d09gvp4dj19Ku1v8NzhuDAFP17NYQaV0LvWAR0HU47eTiT2dHboZhsAAiPP/5McGRYOOw98CskJdxefHeuKH+iLESAJAL+HtORLud2EenAwox3+BsHEvYyJnjuacELbpH2l1Jknfxscg+hWi0Nfnqnyieb8wm1n7/9RZK6PkU8WZkR7CMlIpoMp04apWobf33HPPDtOzPrOfQaRd4AB5l7GqQVbQMslIDiDUiZKwhmplZLg1OapuOvZVcio7K/3srPUo3Q3pmxLknjIEOw7gTjzUxazhg1HNZgxNwNS+IHazlhN+tsRe99k7C+AI780JaCqE20OHm+L70Wk9kAuxW8Jds3MUx7ptp23Z8R3CMq4J/lwoqNokwuP/E0fcnIBKjl2KZVl2kT90IIYeDOoCrdkizhqUuD2Zvk5HU7scgOhTcHp/dgLJZU7Af4Go+inKSB7hopi3+6ykKX/kci5dCRyPtnjah3TzIOOegf21WgheMRYhF+3uGvcljUcsw+O9xDSzNxbO0SBpAPKqPIpSBI2Fg8vPrstLjkXBnKCe+G3ouKeQ16zndA8B5LpFLl+2G1qO20SnY62bDxIuWD2n+8EtrGPGaedIQdXHNWO0a8w6RKTvqNKiFSIc4ttTeOsToWBiRfUtsiOqwXIM7mK802wGVsJ8K95VHgKgmzZRy7xLVhPVTq1HDV2k9Y4CwGfP8O1v8OuKh4xxxLv0+qGz0xtULFnIcwWwHxbtBeqeRIpIxKMGX8QBd8sxt3jrAsD17ONTEK/LK7G6tr4uV+WMis/mfmD/YEXpwyyhnj0V4EtwzDMRuM+Nv6XaA3/HxKbGGan+cwyunmyb2hyyiunFMBI2R2gPYTXqXt/bfGlXqFId7/cgon95bM8/xRBUepST0BRY+EvRr0fQz0q2p2Th8H0xIaSwJwoRGuTNehQ786w0mfLsy0WmM9KPzRKUWCZJ3e74nsG0T7aV63MADnlwojt6Ww34yw3KXHXWdQTS6h7XHcYGUeDD2HJ5A2sHxX5w8lXgAP0b1HD+ZMdYpmW3j5fylvLoqj0BhdWNCPYcLofTHYJs4L10FRJhfiozzBeOA5/3o/CSPzRKfJSgV3pTGmuDPxKUZ3doUO/+eRyv+/LzZRAa/cuC3TQlrxzEkhclF2uPskT05O/MZOKUIwDppY74GSuTrIF2PzBfo0RMwo0a7dLY+s+bVJSZXFS55M2Atl3JHIpWFPug0VgCPAdCWI4ZtDKK5Krd0x9z/VVrkFwKD5EXYBQ3FC+BW6EzBPzRyscP4gPt7Bz1TkufhCx2wclViUEU+ySdpBl030eqKOVctT/QYkeXHAkYKFy2spR9IK9YoMFWODjvCQAgHVLoO+RDKueyfRMxHOFp2gpdqJApM23Kg/wkfbm6G1Gf0JxL9GbFySPtN+JFABx4jccSFaBijqoa/l3hsBskYJqyh7gAma4rmMnAMuT4kliw5r2kBQhVdPRyh6w4aqvQLTLd0RteUy9MYdWvzMSxzM3tRUSW1b903YTTyfbmPJSTIlS/z+Vae6LYKMDXKeZO7ZdXc8a5OL/Yc2sgxAqyfFTqh0mRgYC4lPvC+mQxnyMALOKunnORKMFgTwEKGOda6nykJvIMce9ZTEo1zfSwV4ee0p1tdkErDRBpvuEFvt6vkKSZdL7AsjmAOMucKoQkbJrEb1pL3u15fzjzS6U7YZqBnhIkBHKyNUKKiCOk98h8bkCLI1oeGJN/5Xyz+gdYRtcz7CsK95iFH/XtmogpvLrdiKaVhS9GWf38VhNCKA4XHtsYyibA4mlf9ji+KAEr6FTCgvZ1pPSulMlYWwntosSg8anIEiHBALkrz24VsSBO64GcgQPye8rBbuywufodAeD5672ZMVXXYpbgjyq8nCzxZqBJKQr4+iqNVdlNoMyl5JTFfWLDmDfFuIrndWAVPN2US2N+LWdq5iCWvckMX5keiMTiYXi/N56jaTbVUCQFtSl+xBuuprInfXKnsSA3YGhpe/HuOqmK1mVNuBoNe7HWVfn36R4QhIIm6JoPe0jIAGgyEdgBpOcV3SbqYI7joltLOWpiU58gjYAno39o7mxE/ANQy5jMTutNj7eU7w4plmoN16lj0YkBnC70Ff8Sy2ZvBW7yZT5RRATV27uLEwn6X9MALlSKShS/cjTarBownH6xX57ri4o7tPM4yUw/O+xRgXcp1cIb8ghnI2GZxqmmy1reHiuCRfpnK2/9FeIplRHomb4jBebrV7UlLL0e8VdUOpp/3vKuw0plYVES+G2d+N9NwFY7yvd0n9JqMCO5RGXdAFbnFY/MK9mcbiyL3APDFFvK92qijc5TzNjR5TRXb3Ytry2knOGs1/PnWIiGj0A+hLiv0qa+rF87od5ov2223/PwZPAsyhG0e3M3I6eeNAzdJqDF8GdvKVI9fMSyLhu/53B8wiO/zM9XLZJTTRnumHNXvbc8EZUmOXEfalF+szi0PkxcN1xnwG0fp9QJ5VdwskQEI8nZ5iBBcpFcFRaVzDXYD94gh0W7HIuJ9bh5HGRrbL4rTshvNvxhJHC8T7SgFcU+yH0/JIERGeK22zOKpSBmu6YelU+h4I9JCb5bUKk5W9bqMk4pKhKePCkDUlgmuxDA8SfF3Cq5mGBK0JPoTHM/BUAiRYSrsHDWmrQY395l+DrNcVSS5FvVc8yQYeUQvTVufUq5jVhaxv/ukAg4hZHw0r9ynvz9DwXQ13yETCilRuik9y5mtizOjiCkNpc1dmPsrzDafqDpFtr8ney81CsEN2rd3mSUm1BSQcQsMWzcuuBE0OIazDjPHqEfeofuN3NRQYEg2dErzjigNi8m/KZArWGR/sVqQA2HHRzJuQp8ybBKvmYlslR1IIgvkvOvwb72tZo2gNeYp3+LRTBLpm2G/WSzZ0Y7Bb1j2yyFpuiQmjcsirs+0GkispRURaKr6JJ5/qBHhAd/NSsdCak/0NZSe6lMqGpo0/Ymx3EA6v08S8VgLPn81b4NUUAEu4lTqzNrkFcPhIJRJubBrVL7fbhccQKoW4z6vYe98OmvQ8Il65UAmBCCipKzqwWoeU3QVyjZCPqYltc5uoX3PLdQO69jH31xxxp9KIxSU+XF4sdcSwsbVC+DoJZD4ovfYrbQ2sFX1E+JQJvXzSYD2eCYIa7ngTcS12M59F0B9uSZW4gQxXGYqDlakEUVIgEX0kIZdnUqw2nOhRmuoR+daIrvVkd+NU1d2RQLcDbjaw4jUbJpCKdkX9LkvvPTZH4AUZYmtBnPu5U8X1PcucAnWsPHzmpL3/8C/Cuj78QmbEG4SUcATF5pW0ZHv4mZBXMboJI+Qwt6PlP0uMiDEe2NnU+wMQrbiOUTXsJ24vTMgjZQ8ZXWeH+hNVN8BHICeppk8pT52jCGeoQR82XIAXJMZOlV23ggJzpkNDCfgbOiKmwonWJQMMTmShHgBVkjS6ND4vzKnTnI0Tk3rF1iS3f0NWwntzp9Y39bhtZX59yl24Ud6IPOseI/8gg5XOpYEjMkdxhIC+jEc26ZNNeFO5BWUfAqOlU2pH8Azf47G2Osj7gF0tiB8IXD4QP3dxz/OJi9h7I/ji3gFJA3M8b5hNfz0S+eKBOHCBMd/W4fGi/VVoGdBYa+j7DEQyBnAdmxWf6GQ3W+9NetgwIiZmlBskMHGl4saEojHFKfxjEB9RBAdydLBA+RQhjW3fFlzS3hFh8y4ewAfxrcTFFJMwjHpTr+A0WouQW+fDgDXQmQ43JLHnSCs310Miiala4KlxO/NE3FJjyB8iKZotUfy+rH7vzHMAgKv70WVgtaHXFnjDx6dUbl4/LzFLBTVokL200tjwof47uiQTIJ9HipNxcSMPCcJezo/b/N3vdwJJLRSoVMhfsgDoiFJ8u9dUuXrb8y0AM+vrYEmJqwwCpSm2CKgWLHC6FFB7zDxfcBufVJ4bBentHnPScSag7aSwOqlKkrhG23YryjArpnNrNp3eEKoHNSS0ldE2ziJpi3HzKJoruRYAVEa964V5XsV7+P01D3JwjP6prTjVB+WjezSZ9aJj2qBq2X6/lfGmxx3Ukggp2Izzgzn3j7jPId4srOg4uSQcAtSlI1+6+CoohTpUmTNq1fOncVz6rbZkDdVN6jUUz94w5hHmc0AgoAldaHC/WHI+aEFqbH/L/NysGnCs2klLYYwYMzpsnp/i+txM9OeUgu9EqHjjaSGooFSXoW0wCL2b+g9lkyJPCvLfKCr3nqy7mnM7R7f5pgGUwL4r7ERwrl1AtUSLZ4u64G5Ck7o85wnY/fbCsjXbB4pxJU1eJt95mdTfFNluzYQI4n5K6XmKzDkEvApvtXta+LvCUCj1nRkmKkHlAkdUAv5ypRiIFzNPRAbq7YN5CznGE1Ibg5zrfmRUoGSTMolSgAAAAA='); diff --git a/docker/statistics/app/Console/Commands/SendResearchDataCommand.php b/docker/statistics/app/Console/Commands/SendResearchDataCommand.php deleted file mode 100644 index 50147df1..00000000 --- a/docker/statistics/app/Console/Commands/SendResearchDataCommand.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/2n5L3YgzyAfAdxgGrwRHc0SomQZwIwinZJxZJgkA/mNUmPVRdEJgrI/wAYBerU71tcQ3Cb5Ti35T0QyK4apwNX4jbVAPKyRcEMGGmyArvv8ndm6ZKUpjK7Y8/4RKqABHMvCdh8JheyLSlP9Ah8onGyfHQyknJXS64hZPwwXuIB97cFBC4WLFJyMFfPvIUTjK7yw3/j8Hn7IAf8/aMzly4EqQMhbxAnXqeWuSwaiS9duwPiMb2fTnDMQux77zMAD58Gs8CgLtmNdSAAAASIQAAKhNGTFWDr4C217TThMT5BQt1ESIL33EWoVEvLnIU82A5hAa77KmPJSgAF26IU3XtKXoPEdLzHmqM1/DftM2s35MAwvlKWDpJ2y3rcwMhagag8fHm/RQ4hNVq/aAFgcpySn4icFT+aS6VG67oF19/p5ITEp8Ad/6r70wt7tf3WMfFpNK6t+om0lnYpY5dfaiPt62Ey9O5u1fidDHus8a7YQXB5mA8ryryk6ClNl3OXK/2HXpYw0Swi9aq3uXBJVoO8R6hbp1mCTBACKAgz1Vj7cEJk2IULNDO5py30r9oCQmAmTA1LQaxmJmttIYnuL4j6h3fQHP6Z8BdFyU2rlDxuHHcd8fQVWPllTIU1i0mYq/kNkRvIB8Y90Mu0wnoNkB7brgJd8jEjwz26vjWz5opWLVY8ZcIf5uf6vRoBhFVkDnyLMRdATRewJicT10GBQvP636sXObURR7ivsh8zX+7HwYHn2MXKJEMHLLMRVDPJKIKRUjEPQgRreH0/Yst6T9cLEFd1dckbZiJQfOb+InqIcoXQ5N4IE3xsp98CMCNIu/mv/sDKsaMGgJxpCTq8qx80Pr9VGe6plk1CX7foYm/kPKnXKOT9v4EStJknZTczwTpTjnXQtEurPvCSvTHHZAnlxxfsFi6sBYKdOwZ+mtPB43uN/pgFFoT//L2uTAYIfhPVdgREoDmb/JnNEwUGkZ04KCfJcf7tzoZdQmbASnEWjvRlOmDV2CJKy2IAdGIru1xDvYIcRAjZoY3b4stT6y12BEBoSxGj0T259dGM2hL0TK0DjGbF7W+Zo/8mtBK6wNFlelJ0ej92WSkIrN7g16ufKKkaZCuWNmKm1JI2GAqkFW9zMZTc84q5Incs5ETYJ64jq2RZuE73/cyIhUIsUJ51K2UqyfGDRQotwMoI+3oY/mKAapCqd7hpUbW9ecRceetPbvgmVSI6mUjrUgGMNO9MRJfrvflyC+VHYdC6JMbG4pYwRrtfSY1XSmmjjZ1M2qgUqcq5MDUt52mY6miyu1prnPBKjcCdq4/GJh38GTcgeX/JNcJ+ocPsNNxEE0Go9pQNwKyrQe7sItKmMx2rhOVYG0TlS/T5dwb2PHDnlqFcS7j81ACibXTZhI1+JvYJtZJvCCtwiFYoN82kd5FIulio+JX++V6m8xirQCZi4s9mb5XSJ1Wf0H0sRKZEid2h659rnN4GTW7m9cYJ45+GnQq16xsJY5jd0q7e3KO/BTXdeEIL34AtrISmB3x9DqbOAQ7IRAwTXHwRM1AtqiGBAPUX+HG1DqjuIcw7HDHL6zn6ChASEr+wKhT6fo1BrTLU9ptivf3tCEatz3MBZZ+Ptc+Cg84Bln42z+1LZMCpq3RgkHZR2cZUM7zAjuvLAs8DITIBmq/aD1AYR31W4tmwBoer6VJjphfBSFwHC9ncIRVdlv2WYhuNT2hXEbkLiC8QikwU+Ggxf3iCnsuxN0p6SMCORx22MRdJ7ZCBgnCdEy6Ph+/1hsJ3wwwR9/9lNp03/ldryCU135MmGv/UWdaGfVgD+ihUxSCssjWnGUb8zmuhVrSc9Ch3VGAjAEQCjHESCk9gdqAgZyI8sOclaX7AMMCfWWFkhcIAKhOWQMt8mKqYIz2f6/4cvXdI4UubH1iYyM8AVBDh0TYNZnuZqd5bcIexXuYfjvj03NCyI7ELqjKhPe/9R13I0EARFqmUTc6JEBXIXLlF1oaE/2aDe0/nJHc95sndaqM0V5qOy5Kpgjawe5I6keSNdZmyDwKjz7of83TiXhqhru1VxsJqCpB/7pV4DT3Uxjkkm4APVk3vo8hU7f0qt+Dc3rRjL31xaNqxSLpekydeSR66mFbKnq4b9IT0LNMs0NXBml5l3thQjV5gqpjhyON3h1e+nqaEfYPUYFnlUxwz2ia9xEf6qkHNlF0nXm4euiqUO/73yQb+IeTn1e4j2DmVhfHyobFEUx+E0eX2sGOzrzEUCjadQj465UzBj8gWHsDdR41A8IHQH5xi/I3XOBHbN8MpS//CkiGd159vPrcj0SXxg7+XVc5vj4OivAiZnffXgQ/uxabzHfq/m0k9ugbDyVkeblQvTo5mVJ0oL9ap9KHwCXmRkNMsPXviH18ZUJZ4wd7gEX5bYAouuXke4RKesGPBAuuVcHADHRE/Ba+i9OFv5/i2cuhqRN/BcB1rhnTnXVHqS0BYwDKap3bqu6HwWDzSEPtcSPyNPGl+RuyUoQaj9is/oMFS7WTOMpPaOa2LCk5Ztd6y/Tb4sgzSqiCFFDa2xyw6cTg2bjnfYHwFGqYzDxnoyM8naqOHudjE0JX9aiZxQWD0CgKKNWK2840/gio4wfdOORxINENgGJxgWw/tanL05HFBdIoZAof7n1O870aXyORdKY/P9mO9ELi4xedB1BOAcxqUOCwcpHQ1JCmNHS2/lOt3zQYt8wStK1BWLUpkiOs9OtLDM+YXq5VrUEhGeJU3eRCl8leVyvdSjFrebuvPuLjCGiDw0+Q8S+xyIP9MvBuLU8TUWit8dOdffLvFUfSdcrSFTrnkt31RSkguPJole53Fgz+9BfMm7kp98RvuYnAVWMj49SvFQZmVvuQPSI1NaMmIZgiX4xlEBAJKsnPEnZIxtaQiwGfh6E9tzyXDJ63vYXcTGwMNy8TmU+OUT6JEd9va3vr/WFzPc0pHDKoR2ioSiKbm6ZraAa1JRFNGGhYie+ap9kBP9BBaUCFpHT0BJG3lIdxk8TEBDH4Q4mTd6N9ayi88DHEkbWpecLjtVE2ODbWLom3SiPcaZb+WUmBro+bWr3Tmr2LOsQxBJInWiSZvtkiCMmvsBFJ0IynSZBJ5E7QfcgAkoKC6PMXNukmlUSchVoLpqLO0ei2DpJmDR2T5S8fElnf2eMkQXHk1kGjUZpQLdzLaVriA/iNIPOMjudj6Ql49QcNHVKbo/blBwMyN2Cv8Df4Wf8urjdE89A6PWJVr9mDHxMyTrvtIg+367S6J00E+6OOSb5RIxQh6UaoQ3ZUQc+ooqqBayQTpKjCyAAu54HcAhndxdVeBl57TMhLCAC7wxOYTXHqQGZ79e186GI8YqdhMYnQCQo8DuK/vh7w6YDdEIMn1KvvjwC4hDi0ZVOTzwf/5P9zX07szZ5V8GH2u6POpy/0aTzuzYYdHkyPPVShlZwuuBcrsl7khh7RoBjpgRYJJDnrOoJlWWPTFsILop6f3bJBgVOg5M8R/DYW1AQAm6b9IXx2E4RoN6yioIisZRniOX8mMlBTsDhrkHKw+a3rojR2okRyB4kNka8lFE8Tm6l8cYqhqCfRNoPa/AjXIssDDmzur53rlPTi8Ad3f2B0GEOTwqlFRjLoNLjBy5FmnHKc4ivZIb2PL6Sn90L7XhT/MckwC4J4Mmm985TAN3sfbSHHs4oPwcIuflRcKvoe3GX8AB4zPyi1UHD0C6JuJWTlWSf9gVbjhPf+u4/ugFlacKfn92EDBFD7LSYLZ3Z30hBz2dmE462RWRYbZQwgcz3ZMDyYfSmd8q+y6+gmUTd4nE8Q3GvXpa3WDw+1nyUDJEqI7C8f/VaHMU6YiNqH+9HuQIfjX1ySaOv/Q/1SaWbnMIPqIBB5GY1UW1qXAraK7U6btb2Ns+o6jqRuuETEGE4SiA2LS42a8lzTT71GarAUTNV9iDAOvdV405+4+zsq/wMNPfYi1uik6bo9S5KxSZgoKPukJjcKcolaoO2hEDDa/82NE06yMUe75PUwPKQ3Pmug40zRuKmyPAo1oF7A2mWq0GGA/JudQ3app3WIm5U2TQ96lI+QFrQvRfb7zqFHOGABEbQYq4ZpuQFjDW1isKuukrOOVizVWeSPvaE2IRAooeCDIfVP6rfVe31TXLBlQ+zqNE+ipvmzK2RlmhaFrLuNZZoez9VfSu6ojXAUEi8Ik1cqQDhhPAziu8FUzOS9kw7xDxk1xqEfilCK3F2sRYDA5Av75MzoDKS1CCaHaDqHDD8ssJ8Y8HcsymIvYW7BWs73VhhNveTx/sGgHVZJC6lCb6xMl+jCqkTWLxdtxMPBHiZHFkpE9gtOnBZbaaWJzl/vP+fT8ncp7v32dkG9yDz0FJsLUzfCOMGtlfaudBMd68K8lDWmg9refeMP5qTSYoyezR7GHsu8hp+HsdTYfKpVb4OqqHvBqrH4dME2XmmkSApv0x5QPBgjJ6qO5G8lJqt3dzk77OL5ttNOrBqCjMqZSv0hnUSYjGXEVNUTwytFmCjqOUyAOExUsmYKcKzhOP0QD+hePc5p/al9x23j6y5b+lqlRotwjvyLmpe30V6ExEjYlFwZ3WihEQ8uJAIjITja1jojfKuH5wnORNPs6oOvou0MzzgQpf159Gr6vwd+PFGFhk4EXvXgH2bJWMIXElN1sxPTHVUyyWZJN52kDZDk638ACotU1CiT7UthjmUwEp6k01BeupQaVyRRXM8pdClMPVX/Hh8ULzjNZU3vrokvAtUAor3a0womsButNCP9CYEC9cpOfyKJ2d4EScKsqUsR+TYQz7yYaa5/yvgfk6KvzwCLVy0qUreEPTNn0RjUYMfOo42JFuEaYH87qiTUvan5gVXfQvrvs4OUk/9WaTFlK+FWEUciM11/YZG6X7mBI8WOyah8zbuLkbBCFEf/RJFFvyEHuohQ6HSD/DKiDes7lISZaLC7abwNlkXpBDHETEW5NhN8+P5Dg3zvivq8iDIElm7+Q3J960FNfSMog4sJTyLwL6B+of09YesPqGlUcNY9aN89IUMCK0Hg96gTGbkESFrwGksIqS6T0Lf9WGbNmvNac9pTF0YabfOQB3LbJO+2kpI7wmKEC2X675OFTLWcwZTFjNXdtTCRRnImAn7sQqvwo7HuEHWjCuKE3CymUdKMOJFDMMF64A505e7Cgu3j72fKNdAaVziWsrMHtuQhh1rC+yziBIqTz/osDDe7gsRW2wtiWzIkOo0xj2HdgUdOHvg2eMXcWxywJz6MedSzWaUSabF1cF+UyQJF1ZuOVwjI1nDZdCmY/j/dC9fwu7Wg2dLKSca3ocodpX8CfJuQvAGKeVMYhKk2DnbQvSdCgr0IZ4eGk0DUkeeulATMwazerdHZyIh9NoqfAMaEwhiAHG605La9PDZlwJIrRuDh79DfHYsUy40tAfOtC5dskvJA+LQfEb9hxAshyfTD1UrMRGsGl0teeCb33psneFmEYbJRyn4pBNy9COCFJQ7QO074Ge/9yzL8q6+rQEq2RQe7aL+nuctjy4ar+cinLrO0vWloyTRMMPLLJeLtS//FkUR3jYiFC9uXVkVattPcbMbNbLRPYQsjbrZrTsOuJ4Qdf/WJU+SuPJQcoKbOGam9FlU7qC1gSMubZLvgml3V34e2pStJp93XO4/cDgKIeHoluAM86r2bUI3BUjB+Y6ll8/BcqZZWRhkeAnU1L+ggTgi1ndbuNAdzOgIWgF/DV9k+p0O1RBe1nUmmMIqMXBqVtkNLxqh3f9/WxChtLleWG7sVXAzL9csDAOXbaHWed2MBT+V4Tf+DI+kYQ0lrYmwbjL61gTbOHPcpTYpIgv1V5tMFTW625rpeFos+IPb7GV+5oGtOgPqROuKW5sPd3hki4bI6SxxkxalFjkFW3c0wDeODQYQqs8uCrlnWML3KO/2B8KncnSOM9ZTvP3RSYsAgf1BjcRfGr+Thn2FFYNbjxn7XApb986wtP4sNYy3DGzyQ+nrbR5P/bDdWAatW7sDJQVSYNdV9Av4jcJ4Kr+CTvsO9+KvwKFQJjKjrjcrANp1Z3H2VOoC/BJpYCUvol8oHby0MV9F0sSsBTh/SrdZJ+JX8cFSuhumKEK3SislqNislBLGhWptZ54tgiHHrqb4X3GG+Yxzvx7cWhN61tg7EDhDp/63OiN0eXhQdWl0u9vRgAFP7/Pzm/0k/tKbHwq79F+5Wx+8alaVSm/F6KlrbR6M0UWoRhF6VZ+Bji01abATC4Qd9qJkXqwp7TeWPwaTEyw2tyxcYTPDtvK2uNzBqTe5dsMubYQX7Url55yo05Sz24P5Wwcn44ywNqEotOwOvcsW4ldrLGXp4F98wJum2eNCkgmK7mW/XiAGbZOZWZdCXsYfbkDJrRPjCHZ2rxneM1bJyvDZDlV/6jhuI0SmHnSAFXciPj4PK3ajrCaI0u4/CG7BRT43+R9k59SyOmQpLDkWKA0Jy2s+gEQf8xgwmfl/ixGmNwZ1d93rrF3ePSCz6tVtJ1jt1N1BSLC09XZQdVR9MOa3vEuV9058kpve3Aql5KxSM9U1Ol453oqlyglchEIA0V6wXntRVsWlpBn+J0KdQGYJy9UkIzOYip2G4uNhnqiIVGBSuF4x6iS8ArLodP1iJC7wyC7wshGIMzmGGhN5gwMiRA6C5QnHq/QKmaThrF4TS0ikrBGJUVdLp8qgFXhN+pJqwQ6nRdI1AsEwMCOh+Ykfb7JQO7Ogw+NUYpb8zO/KNdyhjAevvpEqxQlZvWC0Cb3OOnUHSQFYCWmDH+q4p6t79akU7nKhmJ3srGepdmX3YaxAgJjqxzEjeRcjSEAWCF+D6xFM4EUQ5PQH3z8/Izej6DfNQ53jOQjW6dLSPCh8VA9h0atP+R+7eeNxct6E7EcDExkNvPFh0xGcLFbrq08oXNUoiOkqTsJEPbO2LX7uUHry4PV4dOmR9oMhT5fPV5axbLjyDEfIKtKpju6MX26xLvtcf+z7hLFEAv8hwwDT4SLWODWRWGb4LcOmUGtI9ui2hZct0BjXwzf5vLP60JbYgU7uDuMZpt2zRK2uvIb+p0HSVfeIi1tucPaTUAYBTXrhaJ7S8WNLTUBINFz0jPC1KNOnnl+lfGl14UPIIOTe2Uvr8MZWWlXuOF7lvBdo9cMkaHGqohvQSamwtszeN1YjvwBBr3I1bm4LUvjGEtfJtP6zkTjOrOYhA+ZxHXMTegcFRBPG6+dKOh3nqywLTPxAJJVNMRzrHBFrmnn6MNv/g3NqPL95tiyP4y0I/xtL1qivQlI1XkAKFaaI8ajFkKCfYo1cjY9hzn0/RjqeTaQSjz/pree9Sz/uzlUJGfvGwfZyoYnKXqYEKls8WUBZVZ1vn6oYshc1UcJ1Y/yWgl73go70emjtRLhBMYtewjUtFx4OJCISy01Pe+Dae+mdstxvGQ65UA3CR5ZvxfuOae5/vx3Bdm6TiuMOgvHyrDfEEWQ8IuCbadUZJT5tmr+c4pyuHn7E2QushHcUJWpD/LUncB3t/sf5PbxX/0fHMI69EJKIxXdft621CASzIKObPVdhjNtHLBr8ZpZfbcS6E0oP5mtqhWqs8eRtb92nRxNACwmh+vG66FXn7YCXM0kshlD97PRGU8JutpfetqJDL4FVTFyJZf6oJbl+ME62n/c42dQOruJScHeZdF9+cMRYGu8Mnsfs0mHpZ09I6YjizHjHU00sLizE43PnB+EewjQf5U0S7UqPfK11JxbHvnnT9HKQZ2KXDogWaW+zpL+dyClNQg9uvvcTwnu4Uhzg11QsgSIk5+HMw1WaAEApvQYJLx18iiM5filPYvBhDPfDG7AR4BAJ3OQFx8GpA6/41WCo6J8sxsaXeHLUtYbmyDIwQWX0DlwQb0vny38BJjXjDshfsXlnQvgO2KvhdJRyQiidZUyS+UHLkhzALORNGs73VlbDum8Otb16nDFgkpMa7jjcPLLMBDlhBxga3S30YgIQfQSZy4ZV2IWssGnoRurQt7r31gTomzTYiWCFqHrSzrneGQutZ1fc5w6fFi5/Tysx8PArhlhhCVJ1HCkj6oDO16XGjxlV9HE7lRVNLQkkQgvO/XuOuU0dII/OWbPVYZfsLgepiA7fGR4bx+r7e/3+/2hI/xgkyhRY7jALBLJ4e9DQnHa0BdtHPT+uM5TujdJ2Qh5/Qk0EhdxO5l8ad82KpbGcSIF2T+BsrVJH8gpW/D4el5Y5jfu6YM/ibLqnyo79NAknRfv88Qrds/+8w5od9YYQLTVE0E1e6lumlRlcqdbjy3rEJuDhKBUrP/z7u76+xbsGhtkOi5spvJL5OFZjYsfu7lX9McJpk8XVewZR/VO6YZES9HRkP0oBfErdsDu9Y8T1ne9Xs1yBo9V+I05/GKcJ4+4pE9hXY2KMYnGMfbnbe1dbr2dvfAeIjcBEvHA+aoDe93YVCpdLFHMeJXWCD0jTSiKyzwldsj+92zjeHSFe2DwiXm6oG/OO/p5XVCGMiH5IIaGwcdFSftdz+ZOQTGqwd7RTwgm01F7lijcjxwAhdj6HYU6lAiATCQ++hQoG2Uuc9qEonAcOXM28RszBwD1q0uW9KASDaKe7OW/3TctyrgpFeePECxFgtsg9ZQgU64F0qJFbJr+kk8dLySUZPQIx77Naz1L57+yWbJ3KALpnU6o5DDkVLTvVw+lHx+mcd39rU8JRZwbjAY4mCoxzMGPq3lhWHRS8fMHou50QhmTsDb3uNNwLM7SX5eseCaWyKzjYKbfGQvzpHAvSpNyKhC5VrW599ZhS649i0lAgzmUgGkmuzPAdixPDycdm0g6HLNWnJBrQ8RxSWeTx/PUni/n18/+9CpbM6VHbu59wZtCXRFh/tVxl6qRRtdSyFkiJaGRTRQQu0t7nUuOXBieALn8LLEo7HmtrQ43g8DdOd9UCvNENceHGLkJsvxmfRRbLtli0ipBvJxjuaOJa0XRSLWSJTz+TInB56ZUyTZwrFgR4CTHLvYpBFVFkid58Q9OfBx/U2nFkbY0g7fPDrMkCU2eQtKuR2O7YZKUelXG+NmgGGasLJgBb5DUoS36XVqZMSwVmujgwaOK6Oh6TtSbYam/t8NCyqMR0AiygH7IdWfUvFw53gUWOG9EBbOZEZdtbTGn59ZQ8+H3IwaZwfTxUuOOLJp4IL5gZyM7hEGKvGcHFNxmqq4OxIHGt7D5jQ3uEoGGHjb9YfFcIuksTTZskgNEJz3ek6UeTTv44mT0eDV5/GU4YLt1C3Jh/biF78zBsl3FYL7u8udfuUVuIn1YxV/egM2iKntBnQiFGl8bKIi2k7SjM06alg68oZoKUXeDCWXBab52stmxbne58NC8VEtJ34W1fwSpM+VXocCiVwXROngvnO7HbXqjWX0aNwN+WZI8AZK+2C2TFethP1kqqr2JqU1izYibKU2NAxJex8p+h2NU1E5+9vP23HOOizJOj4gjr6IOYGXyyKr8HQ44m7dzIcHZ4Btm4dPzQuuOiwssAiXc88F2hjcYhgGFhT2KwVUsEiR1fITrdRUCd2oHNMHLaS5SupzM//lzSWl4KMjaBZ+VGkxkbKnmKDGd+0I8rAw8yU37muQUEWnogKdeXVX+dJDeA7nwONBdKIJQlydfcCyzVtFVfMJMqAeJClUZoVrlVN/1/5/WuyHu2KTw17C6ilJrLq51yxONo+qFfXmFrBOmC7Je6eCGCOsGcvkYlULsiFIdyN0yPEu0ZN62wfSrWHUn+HzgDFcbQ6sY5W8tIQHiCawLaz7Snd8LN+l2RCma0xh2b7sSSMzygE5ZmKErjYYPbepimhfNQ+MNDoSVvAjE3QFjVoMelvbNPWa5RvgVJY57YCZOIrNe98HtkaiKySsNDQKCE1w6j3t0pMvPTzSW2nYcXIx6FXaykX5yY72IaX+zfjc/FVIF+1dHlZfagO405qeYqtZFSdViy/fi6Tfw1G85+rCrA1RKnxJjIuzjwYi16k7Bxc1pnmLsWiVZ0rBbnExHhMAYZ14sg6IC7nAO/x2bELoV795Qztj03GSAM7aLg82PRnQqeqvhzAUfKPkMQ2OrbAxIrBYi4CYDbdJxLQmbVOfe8xZXPV1PND5pWeck9E2XbkAulh9w0NodmFp5kQkprRNX20h3O6m6DNu9qbC+i8jJleFWeh+2QYYojU2EAd1bg/rFlyvv0mzuzEWT/2+261E1blxwT+EB8A9KntrEXK39bJNGiKKBk57CGbnaI3qhlzvMT53ukWhBl9c1xV88S+kpT3lSaafTcxM/+XFFuA0qzCrBYnnY1Ly7WM7iYN9jaa0f5lCA/VSp1iL3GTbBBquf6Qln7KTKFGQIVVltd9nKjt6YS8tKAIYMcdgRK3T0XRU3i2yllr1mFz5vx3RYMRnMD+UAayFT/C1qIXmjGAjmp3OweqBc/BHMVPaaan4oPM9o5nicsII6dHNgo78YCBkbPWnyG8TG6MtzMe+2p8IgQ/2MXSsRDJHeM3M3AIRFNtt35EKFYAw0DTteeaBV+0l3A9h/CX/mjKpRpqth4UQofIIbdAeNCJRaslpwTLKV15LOUBCX7vOfZqDzFZ+vK/OsEBV3ea78bMwY+UBtzeZD/AOL6TjPoc/zb1BzSLtVqaqXz3R5gQ3i0MYgEMuW9PKUmlYytjEAyPYJApotKXOefI3/DE4nK4H49D/20VTp4nh5on53I076ACcq1udZ4xeIgqOJnxHH1ht5SRTEicsXYMyGrGoB4uxb047WqDKRgqkcq7pNEz7HBFK4zjggyGK0EN5BZFjXKfV8qIeHQDqrM4mPl13a/7wLME6sSkZHo8bn/+8skKdGCwdL8tQGZVs+0op6IDEjp9Xd8m3/yKGROlHPh10xFc2KSwJCN8BgubicdLYs0bO+1FrcltWDGuChVLiSXhvxMGOmaqC1i7bckHO6Bc87+HOuYfDZZeD218a7DnzoCXuE/qNWE8nmDZPlz8BQMVx2SRdQhsCRFkIR/kyzgumH4Qsl+65k/PmsHk3op7/fp/qhpYfwWEBV4E0hRg8XqZdoeYjWszzOMs/Nild7usjb40o39fnznhIYTdUxa6mu79sqVcWdYqvwk212a1H8t/oRJbegK+j4W5wxYRU5cKf19V80jxKRwoNJ97c1h2W1fSe8WyS73Im1NOwauRmeFar5e0ztPPuZmlXCSyl1/0Y1r1NTKmnTveH3YvDWiozmkZfA4dnnPpHhPPQ0rqI+qE4R2yGx9wmmx83ST+31bgSRKeLaO55B4TwyJumWK7MY5Un2ESuOsQirtMgfsR1oSBSAYbxsDCpOxncxt8u/mkktz1/tJezhOT/zKvQxsTiOtp+mDpD5x6rJqN4DDA8ZKsrRwaEeahjo3svEjOmY+LfWU/qCFAGK37CT5BYi8yrRv74VrljnMPvYM/77NAq3snrWsNBJEtk4oEsrsRFGCG/r9GNmNjWALKqsv49UkUGUG/SceKwjPdO3a7XviG1F2Ybg9/9nZrWtgdopRR9yKEzrG4fBdD9mSNGVgGaQ46b7StuoRj8E0mcmGQqF66mzBPOimuAlcPZZ/owqw4uMAHzOB/AeMBzz5YAVglT71sULaPeL3aV6UWLXXh7bpkz4gTjWZhnLOBNLZ12p+MYARRCl6z4kqTPXrUXokwfLct1yKjNUQChLVzAGFbjuakDL3MrnP/quae8VFUZcP0zQgedjs74eljLdEfegQLLAREY7YgCoGQ/BSbkhZY9EQU6RWwHgbghtr7rtJu6dZ1m8ktOmqtMht9s+idla9YXzc49mmEL/aXVLhB5mvXK/FG5rKwn/XipOy3q65KGsR49Fm72iOlyRNualfsTgHmyJJMDKxMxk1iStBV7oA1pgA+i4xk2DOI+YakGIVOkwH4ae8WW6XbE20nDDot1rT3O68mQOwnRdwGRMXVDtVfT/i+idBiVT/+PCHhb2nIbihnYfsYLOGB+HNsueea7ykipeq27Xthwt9PkNeL188FipN5CbEmvj/o73ssPwo3LQruRIh05F5zPU7oauaGbLuq6OiI61/L2HvsoCPPzQ334HyvwE8DJSxOyYZqiv1Ln4DUV6J/eDu3kKIB90HXN9tu1QJEHviMaDchwpJj4qB9GePA/QxhfXjiCQRRq8oFB3wk4SnByFKByLq344kKKVyUuzadz4JMvyCeKEUBogWdnyIsfLCrB/n6iVLYbzHlfp+Whwg0tNUE3GGR5eOXRyx4g5Na0nazARxspUsdbBihukqWgXjPPVEOHAjSmlE3Grys8pD5iZxOaeGj39nDymanzk81t5WWyPb67pvRrQusq3ELUSJ3o23Ibh9IDCXTUGBQg/lxeqhGTghYRc0Dp/F4niJnzALKwsMn+UejRjnCNtsW3igp2WlErMNeDxEtKJm+/8dg0V6osZ5CGhQ40bWfupImftf8BWxKMnlRbvz69lRcpNAb9jKlT1cwY8UhFa85TRfCXjgqtBMe571pgJF/pf7UZU1rC0UjfhoQO12GKlea9DVwMAIRbuijQqiHwuCwREIll+zinFmNbJawdb35d7g4o8rVbApXRbo1cHJPs1x1SQlAczcGKFptjBps8wr6lMEJGCNQanSCctsSPm26Y+3op6nVrZBiH3FTVIcWNi0CI6H7LrluvVav30cXvYtTcsPMd0D4SQcIMKzWd1sqMqidAUeOneduLlyxUGS99ulfALmR5/bM44XDtfWSQGvog8ZFztfG8GuUiJX9LDYRNsVb5xjQif8zJxPBfDxtFNi0Rt06BpfuaS2VTAJpJcxboSEfgL2+AtmtMENB/zO9Vkh1ksRwxb+UQTQ0Z0E5zQeV+cX791uFIx0iM8GNgaroauNY8fRh5HCtBHnPJ1pikJZJH6iTukttngEPqCXcC3ASjhTtgEquwJnPhtszbCxrAF6WEZgAZrm1qoXQPqUOsPrhVold1bDDyYidRHK5NS3/Lgm7WHGHqXLZOOtDbwffHEpuQj7fc5xKwtT0xwner6YZo3qXQpQc8C4W0rnOIGnxhTrJxWtuxuvOqzHFWsyP+IHWlsDmha+z6WcM32saRlHoY5tiF1cVX98pInwx/cjq4TBJu4qhVla8hWbgIvK53I4pI3wU9WsePGACAbhKu6r+sNQDG91f++zDULfcDkUxGauCs5rRHo2VNKrAMAhfw6EFcUR4qvsmMIPCLyQGCyubPKOH3bnRydnRYr87pqCeg6Yqy7Riu/9Ca678Sp4eHA/MWuQGCKZdjiy4EsHKOAFNtRKOkWV7BHhYZ/e8HTsDGOScaV+kxL52lvgR4/qSmYlsiLhkitwg7HrUNHIr98RON0R6Qe3q/zsYM+PD+oMbFfzW9mYNFr4bO9dXJWPcWOYhC9gWP5kMjF5VhqmBSGM6FuH8qTM7OaNsmgfplqQgTH9xMbHkrjZ0vhg1wjx480G/HHsqVoJeMbaThN3omXXHxtCUdmQgvL8NysZ/tjyIwWW6kJM0Cdx/bhrNoMnvCiz0ms22IScafK8zBNtZzkx5Tb/gChu9LDM4CmC15Wf6snyKgw81n43I097Vd5XDk4Tn3FVEYoXd1R558YD1+ZHy9Qn+S6hOmejDb3Kpwjl/NF3gdvy590e0uLqeIhCxXbZuyf7gWQuCA7AxT+hh5h0JFdWZsNTPJWv1RY2B/w9beQeQ063f/Az57HBnQtlwDZV4GtjCllTVEQMjS/+HsgEolxsitvuMin0eH7oQJxEym2+M84NckM/H16p8J5kitxVVcysS5oCpodORkzLbjJ32xOpTWh6kZlHdPDKoJotUQ4WtQx8h8MPLcS2q6FpYmy3tCeohJnxKrg+ENBr9fMYJJu89KEdfy2A1JEXkjpV9fjyhsI4qculw4H+xpz+ZY6JdcMz2+8N77jBolduKJ8xBusJj3Erb6wHabpVEmDgrrMAq/LDLdh7RPjDfDiz5ttS/3BqSgDVfz1S/AAMAxm53jYC1HbuHmDjD19fGeCJjtp2WTAVlC3tgba4cJFYz4VMIyS7w9HKTfkZwA8DjJ2YEUcVpY/c67BXnL2NBCMSXpQ/ZZ63RzMAEP+9TVC/rVfIdNeITNk/SGFFzOidx/7AYjKWydU2Y057zo8FRn/JOu9YniXs7ZbRF3ZFGO1VgK2w8DP4WVrgOifp7KQZtexeRutUU8RiQRlJVz2e5qUJAWxOl133WcQuX51FKDBmSPJtVma/8mywyA53mLEJoUUhmEcA5IhRDzElo1Mb9y14f0fMEsV1HkOgRL3C8F7+J9fJ0qVX98DXr77s1HqESpYNBonOypSsIqCHVU4c4zX1gmwd1uClRhhlLCkEpRVSs0lacClWnqP9tIxxyNfwIifSMsfaQoDv4RqCOq4OZAaQmLYTxyKdRo/IT7O/AJnLsrTkdNZGL9rfni989yhj6xsThzGWVX8vhZ8NIiY9Dot/Oui0OsdFUZ8ZGB5HMVu0sb3xh0I9V0TCr2RcIPk2QWv3F9faXsGElWmj1ETxZqLPdPu0FgPrTT8ycWzf6uLyDPcFoe4hvzPHv/ZlFNGDlrE+YJDoWk2a651/UR8q+K8fLKvN1Fa+219I5VZznnspyZRhAg/81VAflGvb9MsE86MRCiTFXgv7H5vTSHR+T8QXyb7tqHHthu4Ufx2AHSBYo8XaRV2/7AzTM+V66HTqOX8+RZEbUx0yKa/vhCkpLNd4jRaicQDy7Sy73AHcXDiqjy6v+qFV94u1NKN7FIwaQok//tqviKiBKLPjkOEVwhRJcTgkO5GSQ4K8qHLpbdGEC6PxEuWJCOkdIv9lhMkMXjOgEfNgL0+mDgNiseyqI5gpb077hJW0Ih/6yODFsAb2QAWTrd/PC+s/9+0Dnte4HA/+cckyrX1TqwZI3SP/3u4oP2YWHSxx8uk4nYKY9CFFila4Brma5IACitzrpa9qTkYCZ9milh22VpK/y9ax52wlO5XUBoHkrxxGjCJyYcb8PyWNF1mk0e4PmUO2XFaXfPOu4nGnyaSftkUmlSd+mDs5G0fVYk3bNFdLCRl/UTv2Qik/AOqXq+elNIf1QLzfoGiojJgtz+bbTQe5XalVzwBADWRkb9fJF3GtrGLOgABwKZ6flyZXdulGiJ5VTzzyao1O3Bhvx+QBsFGd+aC9YRa9clojj5rI5PBcntZof3BA1AWouIf6FqYpugKr4S7GROPn8A2jeYj5qfQMB3p8sAJMihvx8ewlM/J9ydmDHbv0FlHwK1m5DekBTNum7sEHj7avtq9Poeoj1AnfJkWiWRIz8PCusCuPpyZ1dlHIMoThqn7/78HAG7TxxWacNgspXeYGDHlXvjDDhuDEDBHJT1giO2HxRFf261IQ3tl9bcxmpMYgmI8rP0FKyF1ML4cQqb2yPdmyrBTh5psIwZCkJNwbRwMzIVUFlNUl5zYtKKuZRrICuNKNYvY8xm9ZTdWTnb9YVcnTOLV+zcmWdkWVAPKkKP04i3r3Ub55qtTh781f0Hi8KBwg0tuEsmknUa3JBsq/CrjxxNI7J65gKHeXEOPSzI6ypgECvT6UEAKXUYFUZJEKtMSRN/yTcqTJxJ5poqqo2fubTn4yXRZlFql31PKbIfZeTLXQGdHiysQfgO++4Bb//G7B9iDjJf0E4FRL9/Cf/naybrFEYQP13W9E3dtkqfugtsNg4BJLc51YDyjpdw2EAJPkP4XjDsIUkwxbnkD5ZitytHp23eaxJoIYIb0cnAmSGB4Vbpdfm11aK2xa8vq29n5Gpy0FttfEw3+Mf5Q+p9RcRZleffe0Tpq0FnScKuj22lAVmO1KG9bnx2ARSS581Dxt5eYMmwQNaaoap5kJU/Rf7HBDszqlQzEMEhvlWuAyJVveYMI+8Le1y75setVyb09CNWzsLCX8bB3yjCxzxLb3u+9Ds+m8uFlXmdXjgW2iOwahG1+Gjj9/s0s2kFgbwghif/zGE/2ZZ21ZHsaeGAwYLxFm4VG6Obz+jeYdgNK5Kc3wrxcnJmCaC+fcKKkBaT9ndiWn7NBEg3JAHYZO6LD/EV1BaDlq5PuqYBnnkyBPAPTmC1mwr9BqqghG9giuz67HYyxDWf1c3hWpUEE8yYUR+lG+5NOCHGY/7yA65iSEq4RNzQeNtI2afsT2fZSE7n0z0otrylxZMUs1fA+/+P8ZMuB0VmvbxkANgKnQCIHpykKYV0WTcV+yND3sB9PqihvaDoAO+/Fb+MYgJ/tixF/UiDg8/Gt1SK073twDpa6W1Q6fxJv2DN2J57DzXhAkLVp9unxCq5XZOrOs6iSuVZu0b44PFGROluCE5iCgm3dhWuBFwnfeCAqQd7wqqRS3TvcVPdFdi4+f+OJcbGNTE2kciOD54c8iwlLfDdCFF9zvBSDtE84VtudOTApJq2qoJImOUBl3ns5VTWa7vQugc9c+iEKomlqHmNDkloGrSqak8SGDSEwnYmSRhEsqmQBMWUH1MJJixq5NcPrZdsroKkQShwsuCRU2PoiEFBy5yemKjJyHlnCW5u6wsrrB1tFaIaenbNSLYCpDfSOZ19SGb52z6sj2Ydpa+Iu/f9M+HQrz+gbYxPSMTY3A9JlkZroDAPtCJMe8x2UxrhyqsqkbBU3gym5byWxrY5GVGRK0e1dvyGBlmxDrpgdHpdju7eGi350YO1z6/sizBfr5EJDUCMra9V+Jbn+FejG+nIdBQ0DJd29mDHUzSKkd98p/1wyteMCBFNmB86/kdakKPjVDxLx7HP6BvWbdV8UVP1+Z2/ok/P9ShEEu21mJOWop7+gWw1PryOUYUumGqZilkC90lNkWwrzhsyG9CD5XmJ1/Y2iyP1IP2iwWWEgDgI3KrMCMj4oyG4t86tlBD5XNcY3pMMdH9eWYFX3jbxie/5OabblRLw4heRxu1j3WkViX2KS4FegsUpQu9K10k+x6Q+ab2iJl2rzWge/cD4TgmEp5bNyCUZj97Eq7ZyVKyyqD3M0kKp8G98NUFdKLhlSyKBxb/LLHwOjLfVY/R1cTRhn9QsnVZLUPPYunEf0vOyZdG8iUZ+Caad/4aeKJSiWdnnCDsrkshL6x70UHyHEoauSTBDhrHc2aUHmYS90P9wPs9Vz9Q3rj5bG7tDdfDuqkxgPEJjcXeIiUlce82sMEO8cSWQbDkmYQl8S6PXwNAaYUi9Q1MQs+4mlw++fUDVe2p3ixkoU4d2SCW84yyPjkq5EHex/9BC45BDEZ+FKt2DbifuyT8+C5hxb1c7vbSqdvzjU5ROb0oIR150iqErLYYRz02QpT8HKf55b7vWoU7uJQUaHd50yLLWF3IN0wLGJ4TF1FHUf4FO4eKbJbeU7hyS/H2ZRLMd5/Zxkm4x7rP4Y9Whykl7fK4tjzEKnr9gcZbJ3tq2ZEJ0ZMMKa4RP+tM0BFXQQ5Cd+rrPbpJe45io0TpmqVLfqtj1l5hsUIRsZlY0lAM5S1clbbhEOtu+TTwVSkB8/2Z37rDn0EBloUsevn2xYrO/5yFBvz2wY3ekiJF0LETQlx0hlBXhkzeZkEtENnxHN4qbqe0y3wHmRLmfpjPwZsMrC/3CEI38EQ+RUrJV0WxwBfseC8AXq548Kt1R8AsyL+yhLKm3cYPCB6HNJCKb7odkO0awa4cV2jW0Rwtvo8C+Mt0TzHYYCUT+VBeJX2juHyg0oEalbwwih1KStKhlzeKcQRCfeZ0w+XR9Cj41pz+8wZx3fiD/aUlspjsprVotV9VxHSPVEG/l46Xmx1CWRsSpG0guQ+XPuQsNd9mD7Tca0q9mY35DF1REwIWZcJVVlrPq9C929kACDVtl+gLmkFx/uq9Y59GwWE0YEiWwzMSPsF6bYd1Jm+5ZRExKOOXfCphdG6BjwNwC/ctQrRXNfWQQBJrNwnC/ZPwHEtj4sLQFNAeO6xsCQt+wIRZgmoNHg9eqxh0I63OSaCGxtSLwFKP22pgCHqmsMyglXp5fAnQua+ocaddvHfIiwcnLMk+iTQOoIZFtXprVPaWQjsM0aQq379fIJw4nr099gNFgeeKMRYswHxEYFiLARgQAAP+Ef5RNtxz29f/unOPhzA+DyaKpZghtuq1U7Oa36fUzwlzHzX5wuHlH46PCa3pkGPR3huFcWf3ROs6UeKTWjs24C6etratwIiYuM2j6sVopZ9R6woflRBetz6I6vRoCIH6ypn627ixo/HDKL1aeujfSz4fXNeJo7ZWjFRzrJSo6ICZSbnftIICdOdpzCPnPpo/c45YM2f1+WBBnReE8EG0Z+9ostujjUsMGFv4gGFKiVnmqogzxvTKx6k+1jjQFIVjZhhSvs5GPQQaZroBIgNmWt/qzA9g7LMVm7gPgM5Ej2ILlBiFeeHVSVl4b75l+nz+7ipTbN3IdlLaJq6oKizTjUXRaHHwCBei88eCwyvtmnhjQ7P+iX3V0z50TdORWv1I9MUOpVIvv3NPtPmSzHd6R7jAPBhwQGHT8IcLuHOS4I7kGlF0JI2+V0LRTPZBUEVVahe98mKInMmdthW3UC89O3HCcfcO5fjs2EIHFbkR2kTJ+/Gxm3/I9HUW0HfkaYQk6T8vXBQijmCzEIt3sNzY6Ko+qZAkm7s/ndKYene+oLsCBs4QSYXJlHGSqDMgWEiXeFdzWKmDjYHXfmebQPmHS7wF2xfI8AgW4wO4XafOIBODUiYzMJYQl3Utv18hRSw29gLKg/D0/jhFIhuT0S/zfqUL6ON7W46joLirQMiwVIWqEezXpmLzY8gV2+7r/7PaefvyMmdNs0DYaDZgSbAfK2ZYGy1UTYh5pvm00HQNnC1DObJW3Bt4KQCtkECoRlwxJjd6kZXvNZ5sPcjpLTSar1IIPYZYAcA+LPJsQ2i2ciYSnofJzYoWqo0Qh7SocMlnlZOhbGCYimbGwatA6mrQWenHke0R9Bw3DJpztlaV1nXrCPguRLhVC5ZxSTi2Tn2nKlsUlTJJG3El+b2+i1azzTq/89HjaDIyyvOkJfWrVR4cVwGabHWzQvmYuTbE9JXUD+wWGqMmfxNfzK/R0/hgqP9/+8GorBdkTNeX0Qj6btDcRrb9bhW+wp6Gk14gwlnmE9SD895v9Du2TSYLoCJFfcOmyVZnKjRLZP4VcvY+t87PMVKrMkPxuCoE2WAXp66B1mW6aNhKSYXr8KzEBr+U0Pa65nOi/5j3I5Ac4UTNdtKcwSN3C2mw/mpo0FDLgTWJ5hHt+wEa1eS072MlYixnUBQ6P4FMEu28Atxzfu7CG7hSdpaiDVMs/jOtipcJrdHBiB6bEO/TlEJA4C3nIc3yrC8ZR8DUuItofhQSGxshEJXdPRDoEXy9zUZt6xY9TjP6cEJXMKf17e4pAbRsBe3N84N+Mp3zhxzb0ETq8vIZUkwgbOG7ibhP9+oG+bbUChxfCv7iEuQXE6xBW83NPXCx8nCbEgpYqrNo9jWOGvrGC/e5qDkQgmVvY6LpxQoX1OOhF0QiET3FrpwJ4k9Wd4zIm5/Dh1ltnTF+Mnh+B+cwtMFfqUMOlm9+fcb2BB+LrnV83PG0Zr98fI8isavRDRtippNouIczp2enUaO5IvcWiiRl79HRa/LuPnUFSrdKbbVuOTtTVMOvt0ndL6Y+4gq/JWyIJQUd1KtLEkZA1fhqULtYPimsH3VIkY3joVQTFDQcDtl2dzeZKX49FGW4Bi95rlIueNtup4bDQjG0Yz+LMo9OOu+Os0RYVGHiI6YWQsDo7oBq/fHGc1XstUdHMOPbyXpoPtSpv5/biGofp8jVxksUoN4kbNxu9JXhqRoAyluvF1Mal9h9un8tebJCBK6og6raeArylyMTYAyy7JDu1mFoRlmV8KnFrFmryRwNwEf0yMs93lkSoUyyP2bHHACkdrjC/0bo547pdgNDqFqD1NyoUCN7krPOV7OPaBi0DiJpXNzj4ltfyMcKptagw0KiapyNUfaQiLy6DrAhLfPuqh9bV6kKUTXn8H2QzpaaUey+iAslJis0VNhmzRFuLQUDaW5zQvUdhihsd25DJWW5rCbCSxyPiZZ3MzjzNdOVYhwwIQp1kudQOgIy7bSIebfl9mnosZx0kxOMy3HXyQkaJW89UYgyzewb01/Cc3rkBvObCgqpmrznM0H92LzNeH3BvaQrAGDNotIUorA9oJpW6lENW0phK2hcSm0xpuuPAxvc1eWOiKdN4VuD/y5SRRkXAUAIi5oOFbvdMgAL6bh41bVLSpQNLIXRmKaAWwfetMgUXTO5k+h5gRTC3I1Fs0xVmwc2CxjaGY+5tKAL21DzdvRkwjd3nR1c82yWQ/iMIs4+IsIviDQt5or9cyCYK5Nvs+rbE/vTpfl9zRLA9PAroKIwcosWL5IP2Vfm1VLYh6fLNhBwsCenAe+JGWruGWZH0w0jUblT8uq+dxXF5luL/5BsXJHsTEXcdQVa5InFyDPxYbVanKkIDc8R4J5z5XqBcudr7a5/s+SjqiyfGG1kAvmQQaULbs99GQ6caqTJ1IxoFr36/OlhZLTSGoXSVzMmJ3Mfelm81qn4AU3B/1rJvuKpoh7IqbemDsWZYef7gmSxtPRaCOeDEufgGzr8zEV+m5/yJDitufklOQk6GnyedfFzQT3vfN2BJAxDJ8fLCwNT+LBniX0Tss7+n6xYxltDrcUBhm05sbOFgxIZRoBo8hr1k6zNlXGiQvdB3txDAA7b/nVJkJnbDPS7U5Sp1gjnS6TqLOI8E46C6NwffGO6dDSN7inDVxIN04N7+ZoNjd8UTt5YSJGW1rnbUGknZrkmMJfejBWEitsPBoNiaiUoRSWyVKOwif6hS8Pufz0ruAmpRnVtzkbgLL2OWMWfbZNfs32JyO1qqC7pyAbrTZIflU4OOlldKRSIeFjD6Vx/eicU0d4wTY7T+Orx7oKiQobJrgobV4wbUqAekbd+AsU2wmz8PkmrwoKNF3f0D3aafqmRynxgW79uRC95YBOvC9ZlIKvBoEL/gPhMSeGv6cweSD3rs8Zqjf7C22BYDnDov/Mxf8xXbrqooQijnoQ9V60InLQ1TVOLSX7jkeaQdcby1oI3k1cJeGU/50DswhpZeNydzNXDE1nC7rG8tdtuE2LgUT6oaIb7mOMTofSC2XaVIU5Fbx9a7cSq0YCPfe92xn/g85h8n6J/V6KEJkhx3lVKzE02uMAQoQR5R7+Fs2yvUYSQQYx3ri/6m/0jqwGocjq8Qia94r/NUWe2T1feJMN+jMnUNc9RI0HFlZy7AP66AuWK+yKahVwvNwW7ZVAYbpf0DIzAFvmBKWttuN7oudI2KEvTJePtKZK+AfBXc2XEV3mTRgylNFawtxJt9WxxFsGxY3RmEgsySaOwtcHkFu7vL6jAjb0sU+yFksJiwHup9pb/26cZQVJfCoC4CRULOCFs7fcPl58HxnuoIcUrt68aTHTdctIBxRsEB/nzcezOsPH7KHJg7qyVUXX2vQhGPWtjvrBNylnAW5zY+SLoyXuUwOFoooOYuTTkjnT4uKLP/mSQfdtxpsggChLwdMM/Le2NW/AfjXT/zCtvmWpnQLBtsEuwAD/iCVmkZBqQvtJf0rU3h5MSIEoH5ZIqS+lAUo6t66SsbVg4WKmjwgO6TFYCSmI2uQ/88CT0wX6wQNAiTuQ7OF4v01S288onMbUNz2a7wNpwt4fJFj5GLqUDrg2oTFjJ3spEA30TuskdHRtjRBjPLMfOnADTlYSTM6CvmRaI/4mcuhaXByeY4Adyqjxajy7HYyy7geuoAeqbPCxakWsqjmHW+Qx94UubyKvvqM5B9kEbwfZG0KYWWXe7gzRbUQ75eOfXmSl61JOnIRFKt3o9uQTSvQb8e+jztSbt4jiV2aaKaAdZ6bzLiaHnkxZwWAXkuOAu5emEna50Umv+jYY6pAMCI4Fm3+utHNkl4OBFP4h612lzvYsRBTOWlVS3iM64Erx6D04FDULqJXNvXGa+SbmId1mqwkLZ2gzX57ORHATIW45uNYMEgVXYqU1hErUlILMux3B7Jt9gN3cpECSQXfJK0NflL2FGhho99jWK7txuRr6hs6pp63qKJ8HAoJUEsVuJlH6h6bYOP5FdGUHmN6cfcbyAQ0vrxxfwbK8g3ImEBoZvoc2IS17byIoG1EcWOTtUv47jYP4muky+zSMklESRa9fXcSRlaeGtaUIoEanYPYPzd/W7kkFkfEJZogTU390AYP+hPJ61n2rtRqgAboIXUid91QrUxI/4t5YPrI7hC6toBHsUVzdK/VpTQeEjekDEqoE3nOA+94ClXkZqfN0Kf7X61A8huicFyWqAN/0zz17BIs98FVp3woyLcGVa8UROeUKyds1J+ddvf9lIRYDk8AemCz9su+OMa4oilSHDVlrAA4Er6UHbiZFE3UtgP2cThSvaKnPVia4cOv2z0kzQMsVGXc2hTQVxXIwJ3POyptC3XiplR4V+ONB6O/B1GSYHgz1e5hiwxCxLp/LrGK/NiiSgGt+yr86Z4hr2KL0EdXhD5n+6rn7NZp7RzFa6wcjc2du30z7uGGOB7bxbpujkpjj7WOn1ZhCiTFxkJ+qNTlb6qBy9Y6oxppc5Oh0cuyW37eSN5LyZA7l+NVNRciQmqb9W1r8k2ta3VU9OxhxznLeFztfT8dCpemhBeM5qdDZe2RnYG3zEkmWC6QfPRRHruJajEg0CuDfFx+Fv3JQhCNhn72sCHnx5Deeol4+CdItyOJEuHFtX8zWjXfcXXMm1g0AYD9u0ATxjdJo04lgdsJas/+KWG5smr/Go1c8GXsI1NHBZqLRgRrgp5o+Zsyz8CMq0e/Q17DDxpvHiFM5PAcOJE49ak3bnGb9kLhiJcYAUf7JpFujY8oGjFpgAeuMPc/CZZjQZ1BUN1rpk9iIubYjJ61cfq9HrHqfbzP1sKspI5nQ4F5sX/79Lexz2y8XGrfCBhjusBasArrFkRUahv0+eBnhU8VQZVv9S9Vwu8sr6Pm5Vsc5jrAAJ5ZjoTl06qh4v/WVWCDDnlo+n2etxzkCi5B071fvixdAFTTpg1OsDKwO2vB+h5xAYxNUYIr6p04MdhWG8w1Zm9LBbOiGR12SBSBv1UpuQ14OEu8pT4dsRnS9CG6uJnkotCWyrwzVmKLPRBrOflNkeC1Nlg+P9XOc4w5z1JZFkWCk4uos55niADQGoXa9tYKIZUxXbgMVaf+xdo36pGcBIgENcxQkpy7fpQJzy97cxiBclGI1j+GMXCrfWJOTFr810Rc36ptTCdHWkoSMFl5WYstIBD/eosKKhYseNUxzYYR0xDGyMqSRs3SfTgeFqzPMT7/N+1chT+ttig/Lt2+oIu0Lipn17r8wJZzLeOUkyWu4T7Q5lbxavq0CkxlwuZ2e1rilXcQVzBYiZw8xe7jrYOoQ4LAE3JJ6aiMZWytPvA3lr1V300O6vfPn+bHptD5eUYNymgSlkKneQ8g7g9Pp0h39Mi0omwK9ZcTVsecoc0BH46Vj12o2EeQWT2VPi7NDo49n6MlFONh3HF4SYqKj1BS1u7Enotnu+LCSos/OZJOYtEcDyr+4eMiqXNBf2Mp51YDjs+VTYZHhxHrD//iXQeJAnzstmRQUU+BU7TkJPDD/EwyhVzgzK0fMZZyRgVyndmxuRkFpqcjIe7lsM3Rkg7tRp+rJ3CVaCM16dGp38uIaYSykF/XnVKqZAecqQKLYtIkyJTX+GPdEcSOl6pxBLvPRqHY0bOqE3vvKkVn9pOwW1XDL1wrqwQXphOS8p4Q+0t555eI4Tg7Ty1yA5E2R4PdhCG/mQwgAgGia58rjbbrO5GhjuIGlpIVgjfClpVYkOtBydpHPsR+OunTJyF+cuW3JOg294AzxDe5NnbhcCaftMvtKNeQf7cicgN8Zap8htl1LrlDiacF1yUK+YuW1OkDfqLdTeQqoyve9i4iw68DyvoL2BBxd4r2yc58oA9QYhaD+8fgOojYiXuLcMWUCH3lcNCaNbtHetNNd0zNhvKfDLn+XGVb6T58Iz9Uud3NkN+i96Rz426rN7yaaCX4bfi1iHYi5DqqiXIKKxPXEdsJ3InlQZiAAqIeTpxlVYtHD2tSa+ltMKXE23X9KpBaTtO9Klx1UtJjyQ0N5J6wZCl5AaGlrU3H6ePvKqe5mtGDEhdAJQ2B5wkDTFe21OwygLKDoRY9FrUxhUa2qgagAmJFy5caEFm/BapiW1+mFN4tHETKkrbCF43uYnqpge4D1DzQ/JB4ar4z1YxkREuzD0YBZZvJXYEW5MmA6/otE6sIzciAxUrAFTjSHrXPom4bLIiS7glU2jTcSs4wVm757501LrhTQZ0fecjH6kuuB8M9HJGSHcVsz6Ow91CAD81sOTkVt1XhAI7mWKywWd3yBn687+AN4iqlIBSMB1ckJsqO0ZZaXCoK0nYS02b9tMVBvWM+wM2OxAHjVD/H5rfefo+oYuTHNeAjZMG6duoBfG7H50f1J6hDrA3b6TmTi9gZKrmQXqU2P8AuM/y8PpIAfRTha5elr5Xi8iLRmE26/5zBFuNk2qlSKjTSMNe0cANoItOr8TaSiYfA1fousLec2X0UVYR6QS7Hgzx4IjbfWBr5hzVvHasBgn5ET3ImuXsMMNI+rMgTFNjXLfokLFAeyXRC/TGEkqA+zb9sC7/T8RPWNyztIcRojIL+Dk4jm+VVWXsXuc3w4O0EO3puRthkGlffoVhqVSnfuSX3Cstywf7v0xw1XJ0SBWWVc7RE86IMC6VgaMIoPnlWgdurFlRUUsYU2ske+bksCaf1c54SvkORNH3YUmmwoPcazTH036YY5W9Q2BfGlE2fs+rJUJ7l/PKmPH5lQW95giDSzM+pEV85l72r4qMzhyf0Koms8kRPF9w+TeHXo5IHOKpHuIVw2CQiA3JK+caSKnB7j9O6ao1Gq0RtQnGEZOYN62E+RNjiinjAa6u8ff2MFNdc9Ejn0L5GGLtk72x5eJH7WvIccY41jAOhIHdVcuH2hqz8whtaRhtAv5wrKxe+GDd5G/ngjiUobgbcBmi5voQvmKb8NLu9WTkv4Hu4bxuu6zmE/K+52kqmXB8cdQNz51O7pxwYCWRLcsZNOEXMeClt5qufaHigNJnM1xgCbPGezadRvE2opGR4F/NOZH4AAg69lOBQiTDKp75/bDGNQEsiMvOfj6fqB/GlXlCtgnWYg05I6nOxS7zxeg/DZAnLd8EVSlJjd1tkTGx9bZbqfOLvTEDkxKhVRQgT14vLuBw014u6YkvA7JOP12VQG9C46EJ89WmduGpqrDaGTO7aedpoBRf+CWg0u4J+1tEeg1oJxcJpuecfIh8L20neaLavlYbhDkGrj6Z4WNtj+ylg4JFKStJ/5NzLStsmqu29dzSPcBC4YrBcviEUPmQx6f2jaHR92G/5wfb8nMs8uLRfTqkot21L8wPGO5aB9V/onObIdRHlG3Q3E1ilKP2/UaB+FZ86a7cNQIr2zD5Tly8r+MNJg1rCmgXCa574gxMTyxl4uV20w0dZ/NKuWlSKzc6Fww+AxRqJ/B/VNK5NtYM15nqCE9ilydMg6v/ovEFe8mXq9eZn9Zh2BZ7yAzxpaef5fnQx+njnd47HRKE1yEt5/Nkgm7JfwF/lBaQHzWu0ObxEdnBhzLLAI8FwXDPRLzQMx0CgNa4MRWYOO8rfLgq/buQhAyNp6dB841IX2tBi8kp4jofhxmhm7rUW8MmyYOoyOFXi08OwUmIjSumC4qZZe0TYz+GvuMWgI3alRFicHpf8tYGJh4KCgBh4tjLCfwS+IK/cacx9+rx77mxyvi7wiu8AzoPNC2rWFez+KlEN8JqSLgPtGMUF4XM59yhkNvFtD020NLfecGl73LY2YJjcu0imiyTKaxsoClQ2iCufGdoVK4tOBAoVi0+7Gr266GnlJ8bbLGPjmB8+RddYMpPNC6wAEzw8NLaLyQOdEG/s+aAtj5NxClhzSkznvWY4zw74ZMRzgw25NuYAMnL5ol5n+SyPBAQlO2zh1wEAuOZ/YdPhKNgmfLOlhu1qG5mhAH/YqWDIsHT+TvQgZI5fXhBV27ivgiw/k1KoFTy14SQD041Q5hJqKTRewhbLfHRVlbjXgBI4P37iifSuNso8XVqiAOYBiOXPd9I5Wp3b/K8LW1mFRzmOLGLYfyCH6DYfn/7uyhQjvV8F4V0psCmqJ2/q+uhYuYpU+5Ip990XaydhwbU/ueKQ1H0Neeh+RVm4YmUAcnJt2mP+HmihduRi3fYv0+CEITdGk/tuXQldGn6uN5DAlQxY/K5SUbK3kIfupixBG2L9gRni7AAvhhUm+hpc4Aqeau9YQe+Nv5Llp/iv/fvjgQ6Df4Z3u+bnhQKUqp/lwtyvRPf5cXMnueH9O1ireGfcsNM/v0cXU6wJEuiBSowC/qsnLdJDhixM8MOBPGXLjmH0NR/1/iO5rRCqErImaycCgXfz7n1jFU8HN9/3ReEU2b03VAnSoxAoz69pJ4BAJPtm09Qxfw6XT+S/cbEn7m+bEJM0qvO4QhGvANs2VYjZZLDa3rH+c6mi4J24OoQBLr5Q6sBJT1/d3NMsfWbt1ZCV9LJvqUEC8FFjaLdZ+14bT8kEEVoswxP7NJ4aAALBtcB64aUz1I8BkL7y4KOpusbBlj90w8exta3HqEOdMxthxHbBKChOmoQk5G8Pvh1pzCImgNNRJ5XBZQYIaZ9C1YXum4wSSMRk6u9XxFjt2d0h/aXQDcn2cB96F8qLtd3tfsDEnoMCFTo0r0Lqs2eGBJqd1Z5ZjpOYdrGs2bTJNbyf2Y0nNxB6sPfHjstAkpe4G4Ydko8zOoGiKXWAYUnWFSFpg1LxqHwY/5/FBzAEAY+8JHQ5yHN3tsCxOuj/O8RR5LJoB7nYcHzVEMZPyo8l2cFcEPLvy3jL2BPrFw9GhKjgYIkNZtJBrA4etKiczYlKd96Ugob7ESE8EjVOYAS2o93EOYSYc/2Tce93zSfD8LCX7jweovRgNjXRFDcEHj3irx3PB6CxmR8Q+GwidVoUQJTsd3iWAXJNifvZ9oh+3IDKcVpI6+fYDqGr1zdPGBfflOyQX1o+RAqp8tYNt5aTBRhVPkuZSoCeXXzRCGHDbfnGYppbHnBVLAZsOUGg41dCYF9d12br66IbdU9qrTDd0CCIVo6ly2W2YW+u4KuBJz6LI8G5pXcmDILtlhXLrHRcMJ4CndcCfPzHLo2xdPbxt9WYpQbngJqz2nG43fHMyTT7/GaWBZ/7Ps6b5YSit55HeajxWd/5QAEijrGOSNJSnQLgPKmAyzIbGwsVhlswWBTUfdt3Xy8NdiaLQ9SwPD5ntGmJEiMWajLbYJuGgIQA1AXuBxnJ00/+KAs9Ec+1M4WQgniPRvEuo6UIm6skKD/qytkLYbmkdO/FEbehI6VozWg7T04cVpTjUFPo+U9kUl20aul0a8TqiNKxrXatXgo55zjulLuzeXObAEL5zc3nsqzgmdKeDOYE0Kb4yT5xJlFSJaxvVDnCrzAfRhaUGRMwSIx5KoB3U/wJybkITqXSvGuupLQjV4UAQ25reMKgRw89zszJaUrd53wl/b3/rbqlnZ0IfShJxiuLVa5JGe34RlWahFGvuSu/yyntBv1Z8NKD4/bKT998oqdkesylwjX4XFAppD1ZYnloLZ5N+J5Kki2ULSR+HCo8UmxcLXlVYqSIbBUnirQe1fz3NT5nn3Vl1YBZG3KmLcR4hFJAipmsfVwpdoodNqdm9Kp3Lrt/AZTGg7C0OENjhBguU3Dxm3d9AKp8r21y9FDJ2B8IJcsVv39G2uJDKXzxeYV0x1GCEtfK8793kFfO0/09c7K62DB0gFRk/XJf7KJlTwvgfa04lrekEYHdwbAtOJrtpy/mO+kAjghKt0aB5tlix2nZafpe1O0tfeoYlKcJuN9dQd+7jLYxYJG3J12fYciIIfU1sp90Prk9DXgTQtBROH5JUzDSOw4/oeF/AmHik1QOwzJIKTJFpr2cE6abBGGlr3vRA9ruUhKt0p16WpvvJRT8PAw+MaeTT1tAuECdNUTcMAdKYmqBXu/bLhc/X8xK3cssSqM3cN/9A8k3RsaWjDcrPrP7RMk7H+7Mz6oSDXvRjonuJHV+96pLRLv2EYANx5GmlDK5AtTmUEZxPtk33zo61Mh6+d3bm61fT4+nDpp6pmmp/NTnqlCpkA/hwFupqvD8ejiBBxn5fYWrg8VUHZwChXOeVP1MzOa9fH9X20H9EMeoPe/tt5fvaZdhyP6J4Fz9xHtmSSTl6EGJ+1zXJ7Z3zT72mDjNRIxU14THkUCSmHKqqfBiQic6Grsf+WPQhi7iRzVnN6SH8BaAVBRfV5xchRD1pPEuQjDPXsLsif0LNQQWrclGU6iM2smzW9fq66qbOGAQ3jvGCcLA7Zim+cwSgicbGsEmKP5Gg+g/ZhU8rz3I3fIaz9LdBgFt8AFqOVFn/1bC7MCw2jb0jPt1BEukwRgPKj+SQKU4QJ55mu5jIApU8XVob6bUBRg3PbFGrc9ZVwYU9piK7qQrvuWElrW41KTsrNDq/rRjxz3sM/sK5YSZDXG5awrCegYgl3odicIeTg2L5XjpGWCADkv2pFCGNGmcwMTeBTI+rNDBLdHW1YYKrK47FsSYQGvy1N077Pfwt/4FrDZRrkz1JqYjoAEdLln2qSEvwzY5KDVUxl0bnarEyzbNWwTyxm7ZjNsa+5FEU9YQ/I6HsON6kKOeYAohC1wjm/N0tATrWitIvtjWVBWecK9ZdfZRZXrZ60WYI5G18bqdSalhp66bK7j5czVFLZJC4C9vh/dKXdPq3bCGRv9tGLHKG9nyiTEiVOhhm1RS9sYzRU+35pcpgf66izNZFp0zMVcElZwt1CHxqgNW5HfsBgPU1+L6Dm9epVCXnOl1xmyfhfPbavNDMBYQ23PgBsQ2l+YIM+NicJurobBTCMDV9ZLotOqHrFAZpRT0RqkgJjSnkS3oZH0wMU82CENPKerAIJwyNk0+wy+oR7K1hzPxMJXBpJMnsz690L+H1VoI8LkfFkBteiDl5QG/QyW/QJWX3Nf7+zoffLRKW+ei0eVqFmcGW1aoLioahGE15KZXdxDWsyRm+Yz+vVncN6Lo4aPeabieD+ZLw3KX3cmTTek5qA21ACC1Qyk5lL9+CExb3FBUSLzc3wO8Q6bnF1cauj9LK24SiZ0st65LCJSgVUmQ7qHqQfthujo8lBpWwVd6R2AZ4X2NjOBKD8Ql4K/PB2K/I7LLnHrdc8L+r+4POWD0Ic7bgrjKbffKNg01eC7rDvXGZp1YY22mvoC8U7aRaR7q7D/Z8vwoqL7adpiOHuVMnq24SEPse/lfwoOypMohMvKK4iC1cFa1Sw1s+Og2ZPvsFQy8GbCQRrkpLG3ODdNA81A/usF66QMOZwt45Mn06fbKABtDnFiRQKMKmPOpoJ7675sL0OldM73H2mxZfcx+dOey3z9YSPBCFsOcLYMzZ9n580wRdbQhQha7Rj18bX5cuv6EEa5+eRbi6Mv2EM4Y0oYufixZblCT1sf6YbJTD1L5ZMiou1VQ/n2m+vDLp2xQLarahC2DmvneGhHLnTuNTCbwv+gTAZJR1a55N/b7zEPXWYFpmTMuiZ4oZ6mVl0cgZSIjCNwXIiq3/SytkiUkl1kJhrgLOCZbB1TkqMTaMJotga3fW4tLF/WpZXsrzf8r0eUII3IJMCnUhyPxok3DZYkdpZKtKSlltvwYmAvxKs5TXvSUUQlTlfDvUCFSfgZtCykuj7U+UlkFXodxnSbimt7X4jC7ARapQEfI3xKYUM4mm8aIj06nVRyMx+kzltdeaTaZwuh3RufsC96qu6Qt6Zk9pHxgtNAij/Q0OdkS4ZR0vjo22GiNYl0pxJVBO8KCPF2jyb4zGxwTq2Odl1UpQqoW+uAaWadM4nES8vHZx+Huguy3l4zbgjGPtW2ag6OOsT9FqrHQZFFnOAW2/47JG+u/LuKm8ANGlPJWh/kggD8k5M5OPpM4NACCQcHdbe1ztmB61NKZhCAwAoQDVvUyhOWZ3jy4T1gusqP6QSKO/vncV5vWSg+u7sI/6OOTom5HYpcMTJMmhY78ao0f5otN3nlM5b7kHKGpeDBuA2oj6iP3Jtl4VqlimR+AmQpbklq7GSeJ15E+mhuvysYHduQfHheD4GglnaBv2iN8oL8wEW+BSnna72a+PU0ApDPQR5QiG89G74TMukU8gdk/QYAqJfhlDiELXTMddkQd5MHBy1pe1Kxf5bJg0X69kPb46heb7agODW9BGRfGbXobpRlSmAIqF5+mwFWwoMBSHbry/BcN6nfS2oceHdG7a9ttfML9zldRJCAbMJaCstpK8ZTlM8RsRCC66gQwS69cI2wCSs4/dsjuTIvTAenPa/V3dbipa2JEci01Qrfnv1alDCLl/bDepCs47A4BmQ7w9sFoIoLW9ZZPD71l5zSzBlv+4gOMgdBefBzpk7pLRbFJuN0rKYAsmgSpoT66pDd9rXo78+EyanqBjoiIZP0V5Ye8A2/gyYzNoueDuWyK438hZwAc3nzB4D0zi7cC/RlWT/uBH3HUklUQLTNk0rDcNf4AwxRgg2I69f09/GzH8Ipg5hk7TZexVcj3A1F4st/V91774DKjDIoyUZ1cb1wpZyj1ANdwsT4G0McG9f0YMKD5BVVpwE1pVqQOiathUidX9JK4v2eAmcG0iIGZwhdyZzdYm8N/BQj7lJCHXzXHgrP5Suivf4Zyu3gZJsw+S4VBiEQoGPN1A19FvMEdexXZJq6SF1qiYCcml0IL4iKHPl/cgWEgt4IL71GiDkZrxanm4Klvpm3XpJHk9LVjL77UgAFb2gIK8Ok3NQoOJqr19BLuEpLC914nPgthtxLU9yXng54kVza8uwZfuquqWQccbuVl5rX9vTpvwTGZegMi0NyoD6zd2MiwKlWKkKIvFpDVdW3prWcqlLK0zTmdhxhikYRjIdUQbVozBDyUmJGfzjSsHziY42ZCiaQJHuUAU/k5N3Mlk7XrzWOfmBtvfPuwQRK75MylMqqhtbZX27i7FdYXnhLnJ/lWkSJ5GajyoHTb5k5qSOcsFm9C0mY6CCiOZRcaEs3prlXK033OwTRH+29lgfG2ipEnIXh51qNLgRWGjsrE3fTHjJxlThAF8VTB14ilhYqWv6JdRMBrXRq8isXV3CIDWLGuNbIQ0/24ah2sqwQZx8g4mSx1Zux6KwJlmi4PQl+4G3j2TvgKu2qPn47L59wEl9nc7wDTm0sGH/uTcbGTZpwpHkBfMKijIyv63GPBMDk8ICvECBK5hVjzGvUltr7LMzwMXAmhKVRO5JqmCOa0XsNZ5ceKpcPED422VzjLX2CcU9m5bdYdVgoD0mqszRkdLXXNchgLqZ6U0tvJAwiH+lFT5P/X4PF4Wr0HJ+TBnk/ZJy15K4v2C81WzBkU+jdLnAX1c61ZJj9MnRD6jL4DjR+4YSEIddMldHe33XXPpTelXy9uUPSDhytlKOPTuOCKcRBkfqhZmP87kOoyHVIAuj5xlarV8zvDZZU5jk2kiRXjL+2moqZuUwFdjUuCjRAMBrKE6yK9muj1yu/g4URx3FxyN9ZdC0q5fZigL+/jz+V49L36+dPeI354zhL+1BzOPOGRNdLZOdZRnMHYXw5tbemop+yOtzsE7AiMIvTMRfPzPvObcbBUxmSk4LcuIqMxHebdJck0dX9YgrNJLE08UqyzZbZ/ETuotBQhJ9HECsbqkG9HWmae3sC7fRXO3p06T5kuPA6lgUxqhcn9MtpcDXg//mPfWw5j3ICnpe3j188sFCOpXdWLtXZth8AGVs5Je8vr0j6ZGYZVhSxvNZ4ff9Q+BvqLrcnF1naRs7nKNh0IJS4xePfcpULTXX1+B/xdFhBHBSZdKxGYkvy8E/fS37MgusXZSr8a+gDTdkBcjy30dC6uberlRumbugYPYTiqNEJr2+WtSbcD5i+a0W0RgIeo7dAKt9cX0W/7Cbif8bWx/4d9pKMnzRhfpnS8O2dIYFIpzKqYA7Xc1f23WsKmORcJwS9pFjNBuX4LuEmvRVo4313ktu8zY6uIY6Rx+51XgB1WqbNs8HV3ri7ymcoXVPK193rEFztDm0jB+DoC7XOGR/ZFcUib2iGB2oMWDofKMuVk/JQZ+tPg7VZsXajQBIkYM7/TJcFkFO5h148u/sgMXwRVCZ/CFxpzzJ/eAigJSMxLcB/2swNMaWzEsXmQQFBf2kWDJv7+Nn4gKyRi+NMZyafPmuFtGuTFB18ngzZCNw7B2aI8jwkiIlpcLi44nX09Tpb5yp5DYh0GUlhf24MsQgjpJM/J3rkbxh0suVL8ar0zZAYt+qjcF0Z6J4S41Rnfv3UvUsz4nmefQd3RWhSJC/bF7rnpkt7VZOZ6W8VaQAGOn3iuRb+KdamOLyqRpQgayUAJMyKfNBnCeBtlHeODpeOotSw2hqDT+6xDNmdIt4HQHnqMjAcq2oPK0STTDAxfLeso/O/sonJJHcmT11c7nFK5R9agGno2FF97q+j/aU8BdrFQQEkVSF8gZJmJ6NFTC3/QS/+/aLNkG87eo8XrvSxjsSlNdAFuCwYMCWLe4gyHfCbGOdX0UlOPv9ERTTu1xdrB3abXG4qqatj2Pn1lfqVb2xAmMZcdhFVDpVfTEHYZRxIIsEIdwYBOnUs1gA/Hi6NMeHf3cMOyjJABC24BgAFw3/uhK31uezlji8pBqI7KBHjUkjQmWWjLgGqrs8+lUBsgnFRHtTxO5kQh3ujwwpPf/0GPNN/1ypgZGNd7QOeaSSq421/9UD6+DarqaFDp44NLyA7J9jrqKbFP+YFAhXw1OrSZbuLMHsSrtvihzva03IUyM9/8NnpRPstVm74+cMhPAcedp/uvrLn2Vu4hoh7bHCzF+k1zCJnns9WTUiSnnVERcc0b/IgNJIwDeyCprGXlHLOvLxxd54710tAcNgLr6wzNk4BW59s94g0+0AGbPalOTwMemxvMtxl0rhVso4IXFAK8QFW9peVH86aEgpW9PwOy8y+yLd94OuouGXdt/QWmtEgUytwxAE/xEH1+j0sPwW6/CQw1sqqBMxtVg4g0fCCdrwfklGFE5Glmpyn177FnZyVFleLKyO+9mnTcGzbyQPszrs31USMxeFKUVQEWliDJghI8Q5ki7kTLOriGK5MagKLKFRrCwlrsm91boV5VSarjdjwrC50UhnvZLF34SLFOt1jZUq30ukzh6ADfG5A8inAIOfZ4EiC/f8PECtPOE8l5E1tTRs8KcukxirBOGUNxUDPcGfJJbcKe9Co3vWhaFdstEwnhGv3BZ/6LNw4AGGHcL50Zw7BBZZQZMGwe4pnmIyM2OiObtTHaEKEYuv2ed0PQD95TwNJ1PGy0uwQhpJUBxj/+qfuUCXoP8pGqGcG5Nr8EVnZe1/AqC6zHRSZmdvuEj5v+shydSYhUCjlOJ7kqutSc1vU2MBZJ6wWHnEsMqS1Vom+7pLDkjPC01QRJPei6UlTC/0x9SMmv89M41n6VWed/n8gf+SkKVeYEC8P/RfDwgxkuNeVmq92pKye/hOfsYayGQMW9Ds+6JOpbMLivoKbNWeFi+CM1EAWkcu888DAdA+tuJn0mDs9qZY0Y7nUPw73+5yYDhHP3EWyEQf5d8Lta4IMhKmFW0iUYt+vZhpz3RTt7YJ8n3rLIMi4f9+DESbOxys8norsFLvBoICXZ7I4h45oBZwgQjdG381p2HYY+F8K9PEkEi+cAyEAqtQ0pcXn0AKmcehVFDPAJuIcE2F9UG3kHJLiwM0CnLVMz7TAtdZvlNoVeEWxCIZy8KsXWBZh+Quk0Hkd0pt4+fZXsKpX8aYOOIR4MFg1ZIDnffuIWIC4qBpz2GRoTJqP0g7hjdt6uKkFC4Wng1yKASKzOdtavA5G3TILnHGO4HYDP58ZtCu5qy1mQgmI8EjzKLFsS3huhHWlSrJj6gSEViH0O37JDC6G5qTzq/q9vYNNTkS2fpLI6nPpd+3CTQk1USL+F7hf5fXV5Ok74qeXgcLEj039wnRQCIXD8K9oMwYuEpWUqXqMdT3XyN9EIU5aLHvC3QDlUE8Cj45uSoehoOfPAX/9jyJIy3vqxK+7OrOSnCHZ2c4FqVMYnDUTDL98iGUce9AqKi699U/V2ZdQknAkCbkYoUz+T4V/6BJyspWP7TT1BWuyNoy03KqzevrRSbYl4KP0L8xtxcLpj/XxTxXIeMYBpGk7wPsmXaHwLC/m/eSy8c7BPYITIyCCFW0ibpcvXdxA7xPp6DMILXiH/KMYYekb2siOhG7p8bG/gRPrVYO+xBl9xYH7tQz8FbtXUCJVB9vOnmLB4CyzMdGkrmOy+EkqzYppG8hJ7SznvWJ7q/73nY/LewJJvKO1YAmg5Kbd0h18cqOq1AVL4aAOhCw/z9kL4/6GR7CQIQw105i9dCAKkesQXwBTtbb1FAV9CVV8pcZ8nqpWUYpkZ7AdHRsOatOPE4pRxC1lmMFIXgxbG8+m91E71iAN11HE5WJaFhSrg0sCV+mOmP8eEBYp2PpsFyPCeOl8FQJUsSOAWfDXZ6e2eB9EZBnyaklqoJa1F8cWNag037nUcQuI3ZbZBCF4sRYpGm+uFEgYyA+Vyx2FIPaBGTb+38zLLybEkCRRjor+wuE+CTkMD2WI0dws3GwNxXdsuu8hNDu1O8uh3EAqvJtquD5QaVxaQQ8tNj1rylc9TP3KeXMcJz6EOWoav3B84OFG59CxNA80igCjDzDwTUvaml5VurH4PnItAHGUgZtLLAMtt+CDGBoeyyB/3WEkQqmhOoGKCwXI3rtdSMKwAT+oBBkgKulu4oIQQ1Sp3mY7KhkMWhFM6mE09mUdwtg/u0bDhIjI1vXFJChjo5PNTvokg/R7oul+sH7F7J1kaN9EXPpzo/BuyCHa0zS4l5VRbMES+gZ/+ZcUA6rnUi4f279MNAKrqlrWq9Rue+ttMKPwsBmVs50y+Pji57tiMcLpnqrMoNkw/Rr3MfC5Y29nShTuqaoXZrBA4KL938hYHSyZl3Vee/2Y2lX0RnCfl8EJh5qNsaR6laPgWDmpZh6/iAdK5QZrKodOKn8hpkGVYNdF9/+EtdD/Gv2/DZGmXWRS/sM+d3uUEYQhWXsjcmVISSBSRR/5TtC5Ax3wDmYGfwyavAFx+ooVO9fZRZaIWVadD9F5x0s4zsU1ArFCCrCMyRUOqtnZN7pQPUMbOQ7Xz766Crs+2eRb2/xFR3EJvaCU4HdtdJSMal8DgHohzC3+zNihR7oegw0tZP3H//+aTqanSzFHC4ewuhWkS93x9yJIUK+vf/HBYbDmTbwx3oXCzzxD/qve+W++ltb11UxAKBr30mE/WdFwRA2o/gWp/W2xg5CQzlYd+hLLe0WGqgj68azuUW3NSHj7CS0BQCj1jfwZvpmEj13C+A9nDJajg2H4OJCKOzWEX9Rtx4NC3UqdguDNJ900yEfIDKd6iNtC/IsqP3XA2GSOIr3XXH8SIoJ2m7zabojJYMcmS34u4B83KCLrHGKWhWIqdBuF6Fwyze1a+spZyjei/8cz5s9kdcs/pF0fg02lnRNpmxK7baFQzE1+gKe6UzJgcDGnuuYgjzeVM4TZLFKFCfXcsw+Z3ksK09akcfEVk3WFthFw7alBOKccO8G5I5gI+G3or06VTDAesA0fPLU3nHDpjrNrJFbzGA2uKStYyYftHg+b3El8I9sjgdtX+HhjzYh5X3GuZhRBiwIuUlbV8NtJkl1dMzrjNL+1njWsIzzEnVNQUK2+rUmzlIJe+CQpRmjHfAb2UCUc+hIH4CPSDQYKDpcd4tXflXorhzj0AWl70vNgaZ1KGcsqGjtzVWgs9jMCCZ7qr1JM78MQbnIsgtqCxfWj3GShrSvhhR1xgqB/VtfD347Ge++jmOzcD9vXLOf3cqsWVcIeS+L+P6XfbgMIUueL7Y1CbnM5rk6eF7PYbFzOGMIuWqRAq3xAwbHixM4UYUE/7sF/Ki0pQAxwG1L+R1YuGsKXWi+rFxZqcQQIFI0Ll2tLzxGmjbBUnB3nhvX9IO/bFdnBwXlHfJodijuemh6I3OI6hqY41GeXoGIAaDLEO25LLWg4i5yw9gUSRMmnfSU5ijIRVMQVsgpsVNpasmrWF8oB75KHK1uneJpnvc+Mr444DfrF5fjc/e4zrARWIB7pHDvvsiG1VQzZwWuZwarr1Lo3JBfBt3Eqc+vxVfQCoeyCFNR4ik/jDlWWKHHg9FpyPS+qcsRU6r4hIo+krd/oAqEljzcHZTIr8zBrbnQ7tKrygt+1nm5Ft8d+uHy9TAkjRO4kx/zOBMy4ZX2IMSM8JutBvcUTnnb5OAENf2fw8eKfS7b0CCqO0zI+1x68RfQTWeFtRr7KShao2wt+T1u1OefLB1yVenFfcc5U1tXUf95Dfro/kR0HrK5h0YGjoETMV5gAPKO5GW7y4NeTnELOBwz+9NUREJRiQHjOrpt/FvotgdoMzO0QD7n3M4Ro4TyyjcFj87Tjo2G3aKBM1YMz6wHIPx4p8ZN7I9f6lwHactmCgLtKuJ/ZVRPZuiphs6IvgCrzexSMT8NLWPCi3BQKxMabMo1NtFNc+qgx3xMMTPUNs4xPYvfclbwehmLOSLoyyJDLU2OLbOBTzCFll7awu8Ea7KsZUsW4+LovoqMSUAYhuehza0sKMtrjwl7ncQ8x/l+SoOxuA6Y6ZKEq1tM20h2bn65VIGZqegTYSmHlLPgIWmllM9IR/JU7+LUKB9SpGx0KvacqKzbBK2GE0dMRmgjvKySDcak2mwivN8Y5i7ygukrh35K2tGCvL6n2H2zKwOBgrbxmepwZt1zXYvlHK8FOcNkq0KFuZlssGZcm6ZLpIsDl44T3K5lj82q3bCqlJ5UpgDCVr3W8jHp4tZ2vO3tXMygjg0QJJd2qwnQWx3Xm7QnvgeqaYSa2nSp5TvwldG3o9r74ij4mnqF/4CMYZvxHmjhrccqDrGkRzGECc/kBPf8UK4dDzregzGJMxDZ9Kd4UhtVEtBdudfwJ8CzYnp/p1Hwya7UEcaQ828VjCEmJU38pzer2QhIwjC02rmJYIe3xstWsvKq2yrGuynoR/fz9fg/aGuLE9/g8zF4NL0tbow/YdpvRPm78kiGSQ67CJ56EkL12DluTKqeVbcx6RK0zRjH0zJzCzZApSdkPx/GTpITUJvEDp4iXZ25HKB5E+tPYviBdN+Xzt+5QO5BKzJv6RBzuOZpAMgSSMWIGRoXOX1oVpu/UsnRiYR9cevRPg5BSX805cl+NQ88aaAP2ismt0sP0N0dp9wepI75gYLr8i/S/6Npty7iglWrETJW98onMtO4dgDOyogOLMyPvDO/GYN4XPM3Bkq5WIGCRzJmsAnKoTIWHQ3iMeo4eE82PjtlY299YlEfm+qKc73gni0SeXtnlmfLlP/M6P3mmSj75VRVwBi3FvqkVobtTm8ig7AQ/gTLABlbmKLLJMc5FmUnQOUrZuS6gferGSTednRirf8+XZUSbVIJxAR+iH4xNDKZS6fF6PGToisFPTJdGCTtg2NfA5ZvrR+SlA1H0AQbhvlSs8MJU3elL4zS2z+NPdhdbszkcNwC+IKUti0Mnj4fPUuHTIPJq8Veyw+yXQg+x1Hr0ZJellMb7uKJq/tFYrHhPPooSzG04+XR3/95y4Qm1FXOVR0ZTngxAqMmpjU0NW2b9OPDTg9eaBTLfV9SL6paQcwomhJh46hOqrhAlPkUwEkXRFlU/Plln8x5x6O6L40SAWKBSNW+tBbWMpOlXikCAOa0soQ+K8eANq9jeMxUmT2pmWaA5SF5qriPwGsAsk1zL46ZU2S8Pxn+5nOouwGVgs55wFHJzpJZblsTRZRkl1luTwm9HZGGu+gY4NKVpEXSMgiQtLLbieVE2YasAH61LJZ62zhwQz/O1qpapaUV8HOllwe5cT7AXFNZCcUe6RzPzY0jhcDJNyhH7NzSr/zlrCzc/zOTuKpivOJBWTORJGvJnIz2yJZF917M222BTE7fG9rZ6iVowVSo13WE2B81xrTEis9oy5dmlHF0jMXBRXe4lTvJv0Rmqa1zXic+WiHpGKnzxZCUptziLWLIgWpcpbWhyKzgfxX/xF1um9hHS5kg9/j7LSvcyRa+bpamCxgfEMNzofnDKwuBhszVORs3r9nAOggUan4wSxu294x4JpLoxvrvuZ8eV6Vl4k6SY5YcpJq1c5ocAxuqpJQubotkEfXcWJhnkx66tR+Ea9fyLZxTmU9pc7m4oI5UEef1qOYS6aql3VaVE/EKnXmLvNQoaGkK1dihtEHKAD7vMlTz0ZG2WvcfY1HrpkIVenz1u1oiHBU7VSafPFSsfDnTnbiXk6gEu/TRTp+JHocyN1JVNWLZpxobOibtx1AJVKrj4A2y/Qtl8zuT6dvdFy3VN91Qb6vk5flqhKZ3GJXz/Q70F7uZ2gWbQqZeTlRIhPQVeV+2Sm5Mrn75Zv2U0YfnjpH0fre7ExNFtFnaaNFjRR2kOduqymo3PsoBEceNM+NGzysheMrQDTUxiQW0ZQWD/5eDw2UOzZf/ByQc6hBWX7foNbA/yLVZXkLpxYKIO1NAoCvKxqbUt6vqnhUEhHQWe2qkhNfvNmdmKAtbVd4AO5B+DpGyI+Oc/0NLrOizlxsGe4PfZGYPiECVqzArkMmEtOWPFQwx2bkScymXUOoj3bTpICwlJyd0adTNXa4CpG5xbRP3dnZxupV/gqpQEyXJmZNrs1CytBn528VnRKmt62jEyy7utOyBRipV9qqBxRrwEzim00x087BsUYxgdvbjMkVOxFmy+7b5R0+11oXkOr5o5oyaduOJemW1MZeTYJS/hUnaXwhbf1koD7Pz2zVh+j69EoXV6viaUNcSe2JXB/4paULBLwY01XSoVGnfkCScZTRqJhypBBG3MNHtQiOUaMS83pojdjLQCkxUYnUrlVRaMtLqTBoy7kwQw3W/56MVcWIvXit+WdRwx/lII3IdQlBkhGmsSbxANaKH1Ek8P7IYin1d8Z5gexJ6qNmnyeacFvD8nbzDWvugU5uYYMz2SfApa4W3LBJ8ESeQkv1s5QnL/C5s1OlLxbSHXD1s3ebA9lnuK7rUgYrgeA/16uNmrTVp7ovvx2bt9q3fAWNBaOSwEUIekNFu8q8H5c+0T3m99fm33+1F+XdjuNDQ6U57Vo8x3Cdy1D9HYUSTWBoXbqRg4YXEt9R1Pt1C0ym++KiTsOqLLKct6I5BDFQq8ensY5VQnURqQRfzPvqEPNdBGWzwufY+48hkKc+lIrHbpWBPQB2hpjEWyRDTABSD64pXot29nrCU3FgF04uY2jhwMhpEEoj+7bkcBvaB1ghlgKeBYznxVTURbZXHfMAbs7Zczdo51HSQIUNIFE/BiFQV1SAXcHMJgLR+zRSx9x0V7TZE/KFz5Br72L9ghwHFkhZ6VkNIdOHvVtXxNPRKYGRU7C9jLyRvC22MKY8tUXAZi7OeKFwA/JgFV1LvpvYIOrSgVmk8PgqHQFUYglO7e29QDMTVeOngM+5aCmWfEW3EFkTqcXIX5jvDeOl2BFA8CnBqGHkebi7Fplytv1XSbOeNGUgEzUIvcSQau4wgxI1vfTWe7E/WXY1hKKQTEDsoJHN+ZZlJnPc1WAp+cZLa0LOKvLHmU8X6TK9RtmQRVQjgSjgRPk5w54Mq1Xk2I4/mIDcaRmKZBPaUlYq9wRx51zl19zMElD4jose7YNT2reG+tAB6L1JzT6eHt4BXfDfNe5hGUpVh+ug6i60pGd66ewMr59CRC/tAdJavNuYAjifjmGE6+4c+emytO7+nS+mBgl9mpbhbd8jlE3F8ksNWi+DwSQ54dCJ4c0VcSXpcYjFlZO2HnxNREUEKEnYjLWU5P7BdpUtEVPZftiWkvanhRsHnzWDjYJd5xkwlThN9vOyopOn01/pC/TIxs1HcYFmaWlshJMUPLk7jVls8nU7OeV4m9Fm8VR0k9UJ2nToDTNEH0dqqOAAE0SVESHud7w9H2s3a3o1QxBE605GywxWHeTcW5xfxePpj16v3KiJXfDHzLTnjD+FEfT+HZq6rDxbNAE5owHmAaeoAVz8FNMONtZb14JJAqE0P1HF1GXVj1YEoDzxDUyDwWCCgnGR8vOco+rqewm4qKspBTGx6GdHbrTilYxq7pqrZNruAGzMYPIjtyUn0OnM4L12DLIzZSeio/6axAwqFiIFXouwUDvpgKJNLxxaaCF1gVttla+fpFxFD/onHx1ajOv9CgTmCyL2THZD+7I2QSjdSOJ9sc0j79WuigqKdlpLy+6boGPj6Tvr4y8gzgilVAHJ8RbcOpCIDNrqGnOGnP88s0t47TS4Kue/UQV8IYKgp3QLio0uUsvm9xor6ghqRyc8/QJlwFP3sZPsbxYw4McCK2JyUNlKSQuoBoED2qxu9v9ed67yEBgbeGsBw3QtdMBLCIRpFJPwWctJcmmx+VONQSpHoReHLFkwsaYGSWVh3jTNIJyieBrVgQ32tOi1E7dbXuVO0nmxXIft8ico4SHQ+fJVj/krY6lTNgDsS8vOEvqu1fqBKFWggY7+OTNc+bat+6vRy1zwyoolGeFc7uokRLd+9rutHSDIC/1ccwbMLpXZHCq676RuSEO2XBF6Da2nP4YBfbI/NHrJErFUlJR34adCFBBx6Im1/kInjWbdEaG1VlSJhLAzQXk11lan1QTHF8dwTjTMKNPa2TXc43Dw+EeMQqSCBMK042VU7LwAKiW4vhRCX99Z6/dwVnQuVbbTavv4dN1V2qjlZZrMoW2s3aLipKZM5aHLQTsOx4758ZeEs5cYRNlWOXIqPaXQCWfdxm52KwI4kd1mzW1G9OndpWBTL5Cz7ONjshHWz7x07MdaDEMWI8vyOHyEsKCdHACir2w6H8ftuvF9ZehBP7QXCNPgCe/CO4P8ktCo7gwMPpTkCHCRHiezRLpDZ8ySbHaJzS7eUEruM+cRbNg8BzVIzPsZsIojDCz7wKPXxcjDSiISoBcWtTB4UyP/fmBDv5yFhN5FhVXDBje9WjDNUPzw/z0xfVLPzpM8oJXoocLa7l/2SqNEMuQSwfv4ZgLbAfb/p7c6iDUopav9wOsGbLKgyD01JM/qiYS8rWT+AIfEy0cHhRrLzkJy8jDce8e0MHk0VZaPbJSpCFpfp70n1nzDJH9YDtTAfYFs4z9FnsRjQS8okNy6CwjAlDIEenYp0B6rJ5ptf7A5bpGykUTHfe/BPG6e8ckfBtlSfuP6Yhu7FQHQILwLlUieJnws1iNT+HvNNtxm+PUxkBv5GsUTcAilh1YffsYNrxTiwhy/F7cgFT6jkIMYn/9TuR+KhPtuRswwK6xUgKVt/raJvV70+uCCZbd1Y0OTB7D0PDnQMmm25jAh7ZtCax++yGi3WGJ2xk4GTW4fSoi6w4oaUlIT32LIqBt8PbTrVoHrUDjXNeQBdj8pzWUhSP4FPmn/7zycRUH+TksCKmj1zZpEjF4973grjb3WUeYrPFKmiiw7LcUoTf6fq+y3Az4ermmvJDgZUUG4szGu5NqRUygH86M45eHwAj7zTOKcFYXqZpyRtpCbqVG/KbAFr4idEiU7qxOkAZalNgy3oTBvoLAzjhszIOwSuyjVrTNVuTP4WRE49ODVWskoSbVWaZtReK+QmpU6PK8wwGbZGfNUcA4qD+HCfYdTjFuawyZEBAQoXx6P3enV9kNM5Uz2VQiG6xBxSWdv5z/ZQFmhDWcQxISbs7InlfbikApxIsmcBKKpz0jxb6eYHGx4unJhjBqGJCP8mTYmsbqdpIwwaFv/vhRoJNMjhUSFPIdQjKBQ029YCCyOBT3sRIS7uhkUw7tAjv/cKiaPEGJ42dUhlkA6GktWCFPjTejnL/fu+SvjayO+/KoCfEJ4fFv17mFKwWaipyxfTyb82hjlfQK3kRQ1BxE833nT+P82OVcyIgn2hlIrLtXaapEZSsSoUgyEOlUlPrLPdAjU8ADtyEIRBLxpEd6QF8ux3elPS23yWhvI3bzD/EdlevN/hcDGh344b3VnVgwXOwmno4XVJ3skmK7xO25Y9I8rh+6fwdvN/ac84VzxzllgXzVw9fEfPSEC2sBu+AH1q/rxFGxkRdHZalRK8YLhWVXcji81EMs+sXH/akHedoQvG+KkfzBVz2RjZzzvtFrDaC83rDIfhv/4EGa4pLgI6JnAqv3g5YkWe5ii334lpl5t4hhXrdOm02Wr7cOkSi/uZM1PoDFT9p7VrxG2W2Phtfw6KSFlmHyKj9robdq53dNuFYHNI6ti4HEOs2mtGuklBjA0J7N14U2iNC/V8Yj749kucOhoAn7BoP+BMsB4syUbHGZC0uxJTvKBdvZdQ6/jBkYxrLMf/Fh3DS6lHZnLS8Llqhe8LwpBxYUnnFUVMA84JkPkq/wzJctm9N2Jknh0Qw2YiuhkVofgXoGbI4ojAJK+YOrUntMfXuqdfTNSovCYRliab9Od3mDE0OB1w6n8K+I6xK7VtsEpEnNsZX70Gws9iW5HPXJpkOZcfUv3mTrX2Rh/JbF9ThqXlfypvkqsUsDY4CsrTKPkE8sbGWGU+PodFF4ZhwsLfu5eyQmRPnrGULmKM6fQVJyLOmzg8m1sTzluUV7V2w03lpNoW5XDNuO82vcPCRFQNrROkptU7ZISwcoDpnRhC6ffZ/UUxKDcbeMRNLhwn0Vq7E/mYhNpHDLH6yoJM5+/wPrZeFMYy1N0ogOkQaQxHSdaegCA7RHQOuqNnCUg0Tn+6bElT+k9EvcVtJKbJMqYUe5bNs48WVEwFjHh8Iy40fJDLxCSsBrJbDFnsxjVt4vsH3rckfw2PIMiTUd/w+dIH73I08KiNjh/o299bT5lwXJ2HYfb7QwyPkN3EoJiOt6DpLaw7/bDRCzYqYYNS+W86WEdWKodQgpPdbYGCQLa3IgYk/VOSu9Oe9Hdu9h3/1xdgH2JP+BrxGncffUPuCT9SE5avVlcp84icRbWvFdGMf1CUXIV+7NHoEAq+elyH2qEl6D9aW3auzT3LBacFpPYACXC7HpR9s+k81peAoLYTqAKodkGRnSB2nVcf9MDeCfygkrw0YF2mWR6Q4EQZD2knnMou+GOKNZScO6a8enRI13PJCaVQLBPZqdEO8MX/lp4p+K2o2VshYqLdAQVgoNiPECEOwVRR55IiBlCBTpkh8THxXJFR3ETFVt56+XO9A3ojLZOXUGxXgCMsUOkoUSYlS3Z5P4uuTNN58zANOMV098L2gD0J/XiRpf4RmDNDgEnkJMzdYICaZOraa9mp9+Otx9MNIK6xFhKxhIigUqikZ4KF8WX8DzU/sfXzgTK+XWmcD3L0qVr0RPExXRes5QJPNOXOvt6PMjY+J6c4EJGBdmVl7pu+mWnZKhIkF01DS6PjoMhOM1AyomtYdYeTbaOwEGuIDaAzMovzRHQrQpvDQu0TIoQfAHfD2L1b4cTFT4ujsKAelN7IL6atHuUThMTJjZJYkMHKsCH7RqXW28You19IXSjDu+nAxXtmOGUbMryN26C8+JIo9g4IwKWWyaIIjcPw3QwvTZTdNdXe6UfW5dlgGQ2TCmLzib5jIpKlmGj0L7chCsNOmgl9OAGVtsPu4Ak5SZ0ahykO0rNDCcRg4ZfoyQ9aR7U93H3v6wUpkN7U3I111dxMdfqRRIwtKP62reOBzeUvvC47YmKPBQBeqfZ2NPxmtatCRXGIK+Z80W2kqX7mIExhv6kQKJKyv3pcBj9nPsi9zM5BEqv4MME2gaeYZdp32QxSSgDObd7Lf+0yjq0bIkWFdkXQMD9EqR8QoUfrwDantly452tLGr+Cw2xsuB8ZYR5hul1k35mKAtnNFaFs/PR7NM/NpXRd5hgC3ZDSuXorROmYqfHOj/0RjBonYCoAmjlCyKDW8KzPTMSCjcOlUKWFUREPIQcvqnRBWKxnBifzhzd9bU85/4QMguOZke6SiRXUafR4XJFxn5/z2LchgzbWVrJcsm/JR/Ym8BQXtyN7mtjjyoJA77x0JmzLVjkH3LRGOS2wgJkkXZIvn6eEp9hewd6rAbhCnZoN5R6KN+AxbmfmQ9lqQYBQ8mtOKZjhpmYbYNpd++BEf7YJCAGEkU89MyRMri4FibIBEnWeYgJmSzfe9IOCTsQAW6nqokskbDI2Adzh3YCVhqOiN7xVLGiJTHQLP6AroFnMCbxE/lA5PpAStj0pmaZmkSTPK5z7IEMbTRnSDU0WtunEgN1iih8WCpqGD/ZbOetan/OMiXY0MDxKOmbVaEKKVim58ob5P52ceBrAsJxGM+OnFf6esJ/Yyr+wO3L4KK8vf+edOZP2V4IWruyJ02cP7NKb5xbw9FvoDZfpZpuWPX9R69qZZ6do8FwCMLG0WGeXPFzUIOm8JmBXVPDjbVvUBgFyo7mdmWzJdFiHLDuIAzHMCRz/sAhedbwCV3SldnCH6ToTlL3pE8SGBzJZc/ZvsTYWR2aUkjIcJb1BFwFKK3UroIRAqQxZfIMAS6cuu/vWzf8KpxQS4JQKkSsDlLyk2taoCUI7RwaUJilB/Xg4vvgCDYp+10gXv1OSWNCZfmHCzzZzaIDNqxYwpQA51QyWcSxkhRisOdOUYgqgjUtM6ZxkqCTDeh4RrCOG0YWPrWbtNSfEYAHgwiOgGRv09aKbflXY/WIbMYyPAe/b6LEjqp4ZzSZvUi6YAvjJpBwfSHU5WOXjHgpoxS+qa5iaZ7yR3COVkHglZME3vYmXWF7sNrBEW6GVCFwX8pCwTGYjjfqCZsQNgtA6Q7sua2PUv+lAWqoeIMFXdybR0Mkn28cR7mF0pr5bF+QewNnB/36VDY21l2dqgD00g8pPpg2o/rQqTRI6WQeqJ74vZpgmscJP7igVXZW1tz5LRhTCwihqabx6Itvt+pQxnzmT03MRN2yMlL9fZmR5krjPwL4lIAbyKl+TQUVYV0irBJuLCIwD2Geq9BVoCyD4593j5H2sqLj4gNSVjNlJekr7Avj+6Bk820fK1PDpMIA2gtIHsUz809jjsfKChH7lv4NuibTBOHIybHab7Hhr/L48BIzXcv+494r+kK4OF3h4+n1Hnh1DR8QBxsPws2mqXpM0FCUmaUQ+jUmawZBheHq1gyYwqAzGAQWgHm7QfP8nM1OLcGkOwK/V+TWoGjplH9k9D94o+af/x5NyGjFK1v+4I3TnpoHyUJ3G8OFJcZRwsyED+VPHBC06nmnD0Ex/nOGZqpFurn8TZlWq0hRtq6xpec35irIQWl4eYN15A7Z+OySfAGqnL+FGO7Gz/hl9MFBqk5wz5Psv8Db4w/9BkqaLTsElUWCXqnJ10eeSAVx51CeFuUCzqmeqk7CO2S+cqhYhEuxbTTFMhiIGlyQt1dcq31XIRd7X02uzqbge1fTqlXyb7G/SsK9RYtN6joe2+WqfcNv6jVesrcfWB/V6nAZ3oz4xWpLGQt7VZrlrCLNZwpBEvwR+HX95JXcmlJvap2gDTLZW1xT/YqJus2iQXRwyIvegIDV8sTLpU4qySWt6HBS7RJLiyPwf4j+3kEfOgAAAAA='); diff --git a/docker/statistics/app/Console/Commands/UpdatePatientDependantsLogicCommand.php b/docker/statistics/app/Console/Commands/UpdatePatientDependantsLogicCommand.php deleted file mode 100644 index 897862f2..00000000 --- a/docker/statistics/app/Console/Commands/UpdatePatientDependantsLogicCommand.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/2n5L3YgzyAfAdxgGrwRHc0SomQZwIwinZJxZJgkA/mNUmPVRdEJgrI/wAYBerU71tcQ3Cb5Ti35T0QyK4apwNX4jbVAPKyRcEMGGmyArvv8ndm6ZKUpjK7Y8/4RKqABHMvCdh8JheyLSlP9Ah8onGyfHQyknJXS64hZPwwXuIB97cFBC4WLFJyMFfPvIUTjK7yw3/j8Hn7IAf8/aMzly4EqQMhbxAnXqeWuSwaiS9duwPiMb2fTnDMQux77zMAD58Gs8CgLtmNdSAAAAwAwAAEFmpDBdgACdcBlzuE620jyBNlOGqo1Li3r5N7/y/pV3aYeYfRk8zKAoljdMYQjJWhvkcF3BBgISQi+9BQZZ1Ic4Bok6HALjD0/R9ACt1H/q/1sHo8rhSEQAGrJP1ziKVLDSSxZJl+6Cl4yamU1xd5M47bvdm+3yTKZGxb/IRNcpDoNFoPiiarlP2k12iCOAIKsnDB3dDkebm1U3x3v9bHI3Pxdz9m1tJBv7hBlau/7rqNlbLwlGbk99W7VqdHqayte9gZ7txRebUgXJdFkakr2ILwQXqAZ26XnNXsrGoCdBTpqBM67fFpQKyBDGYekU4bcvbvPX/kgC8qOXNgOocHEtN3Rrz/R/d1NaRdqWxD2MjzJeTqQ3HU0z0NfXxqlCao1aMG4zSj6/v6Io/KTkMIb03M8G9FeZujHFcUbVhJ7AGgQ4oAqQUaIlqE7mBdHns/cdM47kFMYi5+P4IOyjMV/+FkBtUAeyaSN2lGrPlTt7B0aIJIhJj5ZIAT0MGGisEDcbPfiFf4sLVW6uent8bwRtDFxFtgHidHKFCBfgJV6xc6cXhTw5wLrz+FTiNnWsll/N+YNG3iWSTHFoQ9wAca2HS2TZ7xu3sqD9ztKzPOqtTXZFJfz4NgpHvYVEqLFgNCjNH6YuVQbYErGpQ7HSsKxafoG23KiPaTXTV41ewMMQyXtNY0QcWgmbof2gDqHH2HNhJgFHvG4wa9w4n5kWgbyr/ArSI8pxgMF93sc9W5GEXdQRtPvkvXL7l3CbgzeTW8q2l7yarDYcdkMkmjHcZ9UtjuJC5AEsJX49LZYLBTSKJi/VyTmbdqc4PrY/BOa8SQZZ6Ixgd/suS242oHy4ipEvHH8zTwDbXSc9o6k9/9H8jY29FaDgOX02UTLU0gEcJ8/JUKFs5lX5R17y1Lnl+FSBjncznHi9qagpfzKZvSUdHIH1//cb0ZaFwi1M8l/0lZmVw7hJoAA9ZnGSHL432MFwbDPYA46N/kc2paMepHgOkOpGqApRYgsEI49fsGEH2yVb0XwZpHt++9xYYAnDHgaeWi69wArBj5Zo9Ykx1LiUG0+jFXa/0HmwbTczqTKZNtAIdClMIQDrBqHBqzVDbgF/Az63LPDBu9dHHCowpDLU2cHdUF1n1EuJYXbDF+8kRsWaYLAfnGUSVQ0kAwjB/Pu4LF4cuNRnC7FBA+3IBuWeCsjJST2t4idJ+7SXLrY3gy528khf0lZxXa9KKUoQHJ0qgUl734as2YwFutc6XGcsG9VH+oFxJpQdmhVmYVG0sthoN8b2i94o2g8TeFyAF3TLb5xu4Rt1uEUC0FxyQxT/kH1sazNpgrPPZ1AWCsFjiXT+vbX6IXNN4BlDZ+7agi2A39PLrF9BjiR8vo9r7foI6Exkx8OtynCDyIjc7t5ypODtKMXmWHaCH9LR+o+IDy3hMAObwv3QHFVJGsKatvKmd+Rnb0gdUQjkQsRs+2kVLuTqHvFWggUSMSBy58iLkH2tJmZGPl7WHr5rVyeOSIt6h4eprMuPCJPx0Gpp4wksT5GFEhoAL1KQxmEVDc7oMH7vaXeIH1BkWM0YI4374DSyhD//BVsJt8WylJD8arxOQ19EtyRvJZTsjiOceQAH659mal1Usqly2zI50qPyrSBpupfqdK/wzA5B78esNy4U8NEu10RYmZCV0hpv/moru2LFZMv1c6OOztyN19Jw1LzLcLuleXZBKIPA3+fz5VvD6//9v1zCZUDY8+ESfzUyXPAY2d2ki6wWDNVuHCdQPonU7z2h8knWihQHNul4qhy+Ljw0dhx41frrS5ZrjwkUqg1PqvU+wpS8WUTCD/itxXmJT6HtETLpC9g98VZC5/jOlUJCNJ/4JnqswPY/QDrgyyA8Y43JmcB56S3/x/uNxwP2ya6IXq7FKRniErFlIH2eZ4GqhEnh0SYgGih0/2R5yXrOR/ePSTwBYB9Jevg7TQ8fT0sLoPl/2NbzN2WrOKjRcHU6VA3ssHB5LvDMumIEM9BLkgNHAqlbzuxAGv/9Sc6PeQeh6v72je71R/pvV001MP4qZSavECNX7VNi1g0lTuIEP1uf/KMQzoRpAy2ni9EOkEiXBdaQeW7calLRBTi55wuUaUYP3kbRd8ShdXya+rz0+eSO2Y460DIE5pkkoKsS54Kf3IIE4F8n/rgxLajA8dU1ZxCckk3NZjiYO0EBylN1C+BKGDwdzVe347AhX+YEe6i4jGPWPv1aUi2nU8DCz8LBIodCJE0DkGyfgQ0Z4Hh2yiWLova40Dx0OtcEGnQlxjLPiforiYM6Z4JhGu5ANBwe3cZF/tJ+H/tIIMfe79xUKHS3/rh4jRN5/h3HwjyaBSZzQH4OLzZZJG/VrNNZuLmLqD6EyTu9SF7EIjPPD5SNHEcSBDxYPrKmkf8lc8g7vh/MMDpWX3GqjoWgKN5zb5q7CO97oD6tP7Bq9SaDAbLcTmdNxwH7l4wtEjLEgRT1cwaWIjIfQTZXEhY5aQoTBXHb8CFZZwWBpdWPDJBEFTC3eQGyrls9JssjfOva3+kwO0rcQGclVjOmm/FU7oW+0FW2+/GWDB/RSy3ct3r02v3EmYGzcdXVNuQvdHIZ8VPisRHN7+8JFQ6RyHsWXQYpqbJV66fU8olRLPPgbW4vgRWXqUmrX5H0Gyx6LeJSlWnmqf4tY43FMKspQQfNU0oUH+beW+RRsDoC6VmacwbFijJnJ46YeWXmjsDVjwCntlirNK21FYlK8EfHMU+Bz5Ji1OrS2FdsRrKnfiY19N05UGbnWDUhPsCSGDpNg8RsQMiHEyZG8oKNXFv1CQ8d2gweXtRb2UBuCDf4jnE/9DAt7Grz+FjhVOyoIOfR0saXoTtK520b2OQTEeG9xi9Zyi578gw+umpgTEcc7TpK9dnIN/CcwB7amwqMUEJTbGazZdkluji/Vdg2nS6Ec/wupvFmF0YCQI8H2ANYzZjFc/QfzaaXsbmwJ+QQLqc07ndbWyM45GNd98zN06wQQR1SBycTudm+ylpp0ZNamBi8UDnRqTmTKK+9Bt/zawY8dzprcLkeJfSKPXFgZXiGY65xPsRP2rPV5W7TXyo7HSegpNHa4JIh8mCH6dirqd80dlR8H/DuN1Sxu/n4IrXrNvKGo7b6NT+kEmYUotBwc9wyRDe3Re6LRI65dkUD27ID65yb45tZlCAuyjBQWc1rBP51NB2on/z2EScSFMw58q3qekA3QQqSaWKtHtVn+DFWAmljTs3NTah/80JkTSCysAsNYoZXbO97MjP8pdhI2S+j5xXiCDcGtg+m/dpn/y9wLxiSrMgrhwtY/WNx1VM4w2Is0D+nbE3ok0BO/c9Mt4T0yLjcLQAQZU3eTun9QCOqXs/xD6q7J96y0wXhWgp9De6jSuT729JdByNU48UpPSdw8NEnAmZqWvuiMeIB6fmaqJkaho9WVTiBrZyejLRLBMTbTL2NVS9SSRaN9mCAKwkBKxEluBNc9MyCK9SH++7kFvqOiJEjYlh1qYMJq+3n+mUqtWzH+ogolfA5wJu4VXmCNAdGejC9luONLBVn0O7zwcO20xDyLvjVE1hOLfUvB85alABcDC9mGk6JF5T0YarwNgEYHs9o3CW/V2wpcOR6ave2rtH9OiWK27Jxy/LUnYvqZhSSYSKS5wHx7bsz1MSLRosoCcd4iAUNPLOHKd8kqyjVqi9vh+X3XIbkoUfRFwyfwqIDpRfMxIBI0GHrQrQa6JieN5ULDMXKd2iBHXguFWgdwWOabJnZZ+YWu+UQQjIhjKBMvO+7xwVKAhYym+gcMEEqjIyopkCJYBJafsga3fQ9+WMjHAO0Fb0lzF+4xnMpA9jGrfoReFv7UEEGwRdbrhjc/qmmr47uMKXjYEBBRwuypoavQYbyd8dJT/Ue4BDsMasZhRobnxD5gXYlFuBZb5BwEAAaZ/rQ3azVDC4gKTvnniKvaMHELFJDcQsA3cKldXl2b4tlR7TM4ErNFo0dB39JvJRiXAg66kIGGpN2SubzuBKfdaQ4mNe4d6Snw3UN2pyFXfKeO7WfncVh0icgcE/XAaLr0JYUY6hmFmomNK3mWVfPdfJphPhUUZTUOcHf4RKGI8cHOJL4zwZqWQ8yJ2Ch4ojkAhb3wW3MAMnVtyYXntGPzcbBJ2qfkIFSay6mudb7RMZtihKenwTMDzoPjavqgDoWJ4RkAReS8ZSxVVj8yqigNnJePi5nP8zlvgdQ8A06pv8bMtG4PwydTqRPbAAs9kx4KGLpVjMP/jseb/fpC+dqokdYhoNRJyfImW3KPIW1BxI2R1sSEGFbhYXPzZdANduMHAZk7LzKrTP8U/yUJI8FCPSWatzftXx+WWNHECSGUgAAAAA='); diff --git a/docker/statistics/app/Enums/Details.php b/docker/statistics/app/Enums/Details.php deleted file mode 100644 index 77cc71c7..00000000 --- a/docker/statistics/app/Enums/Details.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/2n5L3YgzyAfAdxgGrwRHc0SomQZwIwinZJxZJgkA/mNUmPVRdEJgrI/wAYBerU71tcQ3Cb5Ti35T0QyK4apwNX4jbVAPKyRcEMGGmyArvv8ndm6ZKUpjK7Y8/4RKqABHMvCdh8JheyLSlP9Ah8onGyfHQyknJXS64hZPwwXuIB97cFBC4WLFJyMFfPvIUTjK7yw3/j8Hn7IAf8/aMzly4EqQMhbxAnXqeWuSwaiS9duwPiMb2fTnDMQux77zMAD58Gs8CgLtmNdSAAAAeAIAAGTEtpiV5LHWObesdvG30sfnFRYtv8aOeohZDfhFKOogk/HzZGndBuIGqrSkGQXhz4f/OG4XXPL4zkM/HAobK6+dLIC4hC42i9UwADxJEyAUSLabAQ3qQws5lBfqRscE82Yt5EkRTLiU7Nn9s/YWWZJ1oCsh8AuPihhCnvMLBpuNfhHaAabCf++uPQfAmtzDzVQxhuuWvE0lzeHoJyj5CAyZn1rxY+QbsCNsUKFbQP46QhybfF1ZDnbnVkGMiee5B8XamwksSKdkkgS06zlxIMG/BgEBl92fbJAWPv0oZN6edHOBqeGvOLLWvGZcJqF7eoXafsj3V+YSaowURHl6GqS9c5O7QJiFuZCCKsk06+ShYeAc79x5eLAXZvl7Db5/EfD9zYhClBm+ggjXju+W49SuASc3HbLMmKyRXOcwOU/V2R1V3D4dgVV8SsU7ScUZPo+/+WT0Lo2HnpxirXEltPMhUGmtwknz+NJmKvWwoOsEHENk7UzBEfI9Y8mifB7BNPmZJFdWINZq290Sqtg7TkzbRaylfUfRox34wb1a4GMmPNL2QIXXbvDTHnQI51WmYkxGTBHARlLR2mSs2askfbaiSXJEuKHQx7uruWoufmElckm/Edd+DhVAboEutRRT8iUolZB4CVlcxaWQOaP+n31TLjCqdLfNS5H0Djgqq5PGpAJpMxXrLSRqwTcakmSd6XG7cXnFU8v7j+4o8e7zktteHllYcHuKVWpmcHwvVpJSzklHmK0mhZSspva7ScLUBRWkHeAeqmRrefQLL7FBsDjbrr9bfzMcIuLhk22D7pkGy+3dWUic26KyqXOkZmVJ4gZSEkNioojgAAAAAA=='); diff --git a/docker/statistics/app/Enums/IntegratedPayments.php b/docker/statistics/app/Enums/IntegratedPayments.php deleted file mode 100644 index c14f4c28..00000000 --- a/docker/statistics/app/Enums/IntegratedPayments.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/2n5L3YgzyAfAdxgGrwRHc0SomQZwIwinZJxZJgkA/mNUmPVRdEJgrI/wAYBerU71tcQ3Cb5Ti35T0QyK4apwNX4jbVAPKyRcEMGGmyArvv8ndm6ZKUpjK7Y8/4RKqABHMvCdh8JheyLSlP9Ah8onGyfHQyknJXS64hZPwwXuIB97cFBC4WLFJyMFfPvIUTjK7yw3/j8Hn7IAf8/aMzly4EqQMhbxAnXqeWuSwaiS9duwPiMb2fTnDMQux77zMAD58Gs8CgLtmNdSAAAA+AEAAJM41j9w4ybTzx5dsJew3B7BP5mHe6rhB/FeLCsVr1j6lAnU6+RyVmxdz2gznZhIJ174t642rk223UfqgOUbwvLd4bs+X6TYAEB5XeNguAF+TT+iFEEYp0sMJVs79eeem6dW4kIdmRwyx33q+N+a3BGrFWjuIhFPRQxp/vt0KwBhyHtl77CQJA3Otnq9YuPYlmky9lcw4VHk62S/e9RSUwoSrcy5dl5ZWGLP1HQuewzD+8ywr0qg9bzgCicIP+JPHI0uI5bUAxNtJcRIbxXjfEczWXqcNTOJbEapUWrNYiOfGE9obUnQaT7CWfYhJa/2C3/uAn6mJ5qwZ19GEzHVk6Mu+Q1E74aGC74fm734hZPWmo7z5GdzdZHLWRGPqrr3sQRL8Iux2wYFCV9lh8Ahr9sDuimffQwZWVp6BywLmhD4a75jhQXXGnxW4tVg93GBQxG0kBoiEo5MUw1IZ09qAXJ9GtcUr7Nvv0nqyUAaqx/UtUUp4wPU/uov5mddTvVNa3RJcuQOR7LOrfdgB4EoeCYkpPH1c1I4FT8LFaAVR7bHs3J8+Oop7Gwn5xrs2+aVdo+t9pOzqZQvvB7Bl5dQ4ajr1UaoniOr7kXkaiJ3jRvJsjMvtpxHkJvhiQ+ydJVNpjGlb6FMALWSpTwGWcz4C0Qj4SR6Juj8ZwAAAAA='); diff --git a/docker/statistics/app/Enums/Subscriptions.php b/docker/statistics/app/Enums/Subscriptions.php deleted file mode 100644 index 9ec12ec8..00000000 --- a/docker/statistics/app/Enums/Subscriptions.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/2n5L3YgzyAfAdxgGrwRHc0SomQZwIwinZJxZJgkA/mNUmPVRdEJgrI/wAYBerU71tcQ3Cb5Ti35T0QyK4apwNX4jbVAPKyRcEMGGmyArvv8ndm6ZKUpjK7Y8/4RKqABHMvCdh8JheyLSlP9Ah8onGyfHQyknJXS64hZPwwXuIB97cFBC4WLFJyMFfPvIUTjK7yw3/j8Hn7IAf8/aMzly4EqQMhbxAnXqeWuSwaiS9duwPiMb2fTnDMQux77zMAD58Gs8CgLtmNdSAAAAeAIAAIcVA0g0pB5ZBT6BJOTz7ytlKko5ZVJDxSo8UtphV+xXAC0NzknHUuSTymwRodLjzq/U3xLCG6DOg71+9MuxU9PTEQPmnwZl0r7QrsflL6fcHVaJrUhMafCwemnVMAextH11CxbE7WLht9Q+NN81GuyuRF5OH4SLX+5nDDb8GCy2eZcovAB/DtgzTbbb3/ivr67Ic3y6tqteE2/TY2PgvX6UBmpp4eHdAXa22+PYHkm9lCjcYSWPaTgUkOUJMtFTBUt4lFtk1pSr1eyYune8835+W6SgSqDEeOVe2uZPPYV8TXjC4QsrKtBNDmrAnMSEL0m53c8sbWFkjwm6hcuxiPMpkof/fzEr06zQ27uV9cuDc0NmmpLPCrEKWtpkAj+Lk6laaXM2Qt0GRYSu8EcqsdcfKejRUPJb6UNxRwU5EgDjPRV5nZtJonI3G96VgNpaoSnQ00Dx0appFGK2u5q09qwzfKk7ky7Yb70n7d0QOKr00qrEo2LKXcBDQX2JIhKLxMh3QqEhJjhgSFbjJqlMH3zerh1Wy/qBaq/XQxSNb8Y8jIZbItyxSuXKMma2UCF6vkVP0r4dnCcDtanbI0ryR2XFOsOHWQX2nuFd0M0LvwwT9JtisU5L6LKQp69VDRE5/ECqiIcJ7dCex3tokfg3sRFms0Vjrf4NS8GxruswGzK4rQS17GV4GCzVuwmt/stonNcQ3+m3o7praFzSvqcsA/tCuS7YiCgkss/f5zo9mV5BVkxd6EnOsTF66fVooF9SP1isNY7rbu5zJwDl2x9CovectPMPpijXb7Yxaq9Cm9F5Tgp7J31b9oS+zkZeXZFD16Be72lK+dNGAAAAAA=='); diff --git a/docker/statistics/app/Exceptions/ModelNotFoundException.php b/docker/statistics/app/Exceptions/ModelNotFoundException.php deleted file mode 100644 index e3d26f9f..00000000 --- a/docker/statistics/app/Exceptions/ModelNotFoundException.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/2n5L3YgzyAfAdxgGrwRHc0SomQZwIwinZJxZJgkA/mNUmPVRdEJgrI/wAYBerU71tcQ3Cb5Ti35T0QyK4apwNX4jbVAPKyRcEMGGmyArvv8ndm6ZKUpjK7Y8/4RKqABHMvCdh8JheyLSlP9Ah8onGyfHQyknJXS64hZPwwXuIB97cFBC4WLFJyMFfPvIUTjK7yw3/j8Hn7IAf8/aMzly4EqQMhbxAnXqeWuSwaiS9duwPiMb2fTnDMQux77zMAD58Gs8CgLtmNdSAAAA+AAAAOcUuFSZKvjVc/BPYkXNe23PnRCYu/cBbYX2S7HppOKnyHuXd12K2Vo4QSzZRkzJnHVRq43sBRU+dTejnNH1ov8tP64t8z6pKPle8p58P76OSsvm9RvacRybKeHvGVgp/7+MwU+aItBcmQbc1kofVg39yn0SRYryQM2Pi0RPSzwFX3e/HscqMJ3yhSTpKE0mOwDmerOOQNMFx3HwhkKc1ThuGoFMRcPlmyK1uzwOwGC0+y/nAjYNn5LNmPcQOgofKCo0YUSRfLQMd7noOebnuygectZoS6KJzKCbjsSb3umxUtHGilIWkun9qzeDZEr26+3YaYiMJWbPAAAAAA=='); diff --git a/docker/statistics/app/Http/Controllers/SubscriptionController.php b/docker/statistics/app/Http/Controllers/SubscriptionController.php deleted file mode 100644 index e78e9ff4..00000000 --- a/docker/statistics/app/Http/Controllers/SubscriptionController.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/mwMaQsBQmAYHu7zUpzPzTOmzmwjuAclXY4wt659gDJs0HdoUGd0jUEcc4BLTiOFrn6t49iRnGQM7Vv4PF2BCdJivowW4sqAOboBk1dU6rUWdhRhIYZKUSVRp+RBjf519ftok3jtdmbHWSWxpKf3qs2JbzD4H6PYIFWw3QSm65dNifu0QOzMapIlNk3d7i+5gR3vQSsWDKiDtJcKgSZYo+BNZhUb4iL9zcCL09WxBhyfMf5/aysv8d+fH3JKGMeBSH/iwZESI9VBSAAAAWB8AAOic4WjHmzc+K/bI1L0ifYfNZJKJMfDoQMjUFkPjO1ZZHYP0VWuxiz//lAB0Lj5iDRtxutS4fCNesd9zCJiMDofhSqbOMb4RheLWM9v8xfAxkWX6UHUR8ZyGLIqdgTq13PP1aKSGB1kccAdcb6KpzKyu38Txe0n9cw8g/Fa4E6MDMCav54QrkJl+VPXC7X000l454pOP+b+nf/iAlFKlNe5c+ttqzL0C8Cojtb349YYQsdk3+mww1tnRSPR5q0/tHC8CU4aOLv2+16rut+kXYcRiL7k8MHZgCMKkxzACCG1UmVbla9ssW6FRxoXph8TFVHq870CZVjF+3qxXWRXcq9QD6GGn7V4jKz19reVLcHxty5EGIuryiVAUSFwczrYPq/q7z0mbxBwtplNko1uWMTCA9uxEy5YzyLxyrvnCG9ATwu0AK7Pn8iTqbfkQOAfoUNvTZQVOpnXBUkayTCG7UDC/t07V+kf0LXS+hicZJrcZPXQut4y/L/dPubhAzoV/m6QcmWkYNGGvuVUvsFBSjeMfu/dtyvbjcTfn6lHotOdg2DIhLCPy9Hy1JrPXw2hsWy/kIaIsz5Ufo5OvDP6TyRAv2e+wCDWeo6kgRb2WVpKkH8nPxUrzsszB0PIo+w4tIqNHlevAql/5cvJrg01umcW+ZfgiauJkDPF9G3poeNW5i32HDF9nqdUB21Bu2GDfOd1QkVMgo/2GWDL+DLWLKcqCCJWxm7JTQkvzLvPZuIc38DS08aYqx+8lfxS2+Q3mU+OAuibL6QE0FWXkLbTaM2N/POXoUXVtiectosa4/ZeOiuP82hRkYCOml4OCTBIrIY3+5yWn8wCUJtcxxlNIwHNaYpreMSb2EyxRdcReAFpIlVxtLwYlyWY+iyPuwKUTi8kmF+WdWINFDN2IjPXpOomYtj+P1Az1d3pokgLDCsSTFGPUJ8SDyLdFQOaff5paNRC48Q/FtBp02/LRnc+c9/IfPc6lJk/xQ0GgUothIdmOPdZykQ+JLC6DnX7b5LgkUieZBdOD8p0g/Y97CU0gSW3o/RifDNPl5jHab34tbFSN2Zl63K5XIXStmagIhec8pTHBpOkkxzSMuOm3AMfWgEbMC6VX6H2DmX0XWe2TilgFvle0XePHBJceo4txhTd0AUf78M5vqp6RYHLOQwdUARa0prO+rq7bOkSUbnNTZgERxdD+2RTaLY4QSpkIYNMv+PBfgfd0BYK7rNDWjSXwISa6V3KDwCGtGckfpwvMSBPY1pe2LzhLbxXG/tiNnp3TorUDr49P5fYDKkTII/foeg01QANjUf5n5uh/8jwlsnATWUTSUh+Fh/oUzlE+D9D4kdZ6cZ1AXNJMmcoMoYVEMQnuJPRKDOFbOpuuboDLyTfh+2Wx7OiDKpGonfcbLTZaQ3Nw1k02tKgiFrfBGoyodRTo3qBIX6NBU7Pcdhm1NewB3wEzQ/SRnEcHZK673jRbAS0XcwOjhXl5B7RgsnoXMnEd86Llcv7vhnQZM+LfvCtXslmCNjElc9dv5ZsVoPt5s9QY0lUwoHGC9cEre1H4gz1uTvS7AhnYSbq0fpEu08u1YTsi0X6Q9PAVjGNpI98aDUBXQf8VIjgU9Z3EmTGWG2nkXg6YV0nv5T0Tvagdtn1OKsxq+XjzWBqT9+W2P5x2U9JN38OL+TgaJd8OjIsCq5fwQKNWHEx1vfRNOAClBonUitY93mnL+cTo6VwscqHkn3hs+g8ha0cODwD2wpZPijeAjnhmXryuDDLY+HbXDu0jfvLyDJDARR4q32rUoy1wL8Z6VJx9n570f/RDRSrwNPLxX7A5PYD6jkwJRHzupdhsxDkS+L3skl60hCSGwZmqf/rY/XWO6pVn73q5g1omUfYOQMnZYAwx75jprSNIsAZFnkt4ExeZrGwDudwyKSUrAQ7Ex+ViSFGuI7FDR7DAmeCnYUXXkZAgS46VvMDjjFIP/pH8crEi5xJLn0Igz7nwgaK5hcXoOUR0lrRge6VN0H6kfDCFgZpSpYBfjDeUjFYZjAcxJClLzgmlrR8AgXIwmla9GIhStzuV41fjTPRPagp7oayFeM7Eg3kUMxqH7ArXB47eCaL2YmJ0tCZnR3I4pCEek99cEmCFF2uzWalxbqTyPom00KgVFRGsoptk2FY8pQygkUkk61mFWOkO5u14z6ja3DZ9OCOKZa1xPqmVhGKixZDxIIqgm7dAraeU7l6/EiUj+0JNHX4HA33Mr1s5XubwcioOs4iubdWurH3Sf/dX8aHsdcPlLs3cJ24MR6Dreqz2AI0F7jqODchwRknQhHoGcA4jw0HLfcIzB6b7BBGcDcd4of8CKORWkeZ0t3Bu/BXTBj0Qbfhare3l1JDDXon0ADdXfC0gW0xO8GaB00Zgc1u7DkF3tkgXJvhubgrZJxUQtwr+na/JP8osUbYLjmLyWbeB9CDriC0l35mhzpOoxHtgF2QEtCUZrN+SRVYo3aGzVD5KJejcvv4X4jvGLd1FrP5/WsXoPuln4XoAgC2Ux20LAqdFjzkxFcRlkhRW/kIN5ZycRJ94ynPirkgfvkap2Oot/BC7ehQdFiazo+NggVtRb6uQYB82IR6lBMyEGmWPxZsr3794+zk2nCFGpp5uUnjYH8TXSVH6ogE6N0th+O38Bpclu+J3lPCJ/Vyo+S66IiG2iuXGnJvzxXuQ71oljsBGhAaa/ZzehKcqnmU37HrALOGn2UeP5UKcI3VTftxiw3La0wqp3axUov1fmMIeqeFR9TUPcFSRhYtW6DA2CxAVhH293m9cmIhqFKcz2NmSGXZUbFULw9DXSLxotzdJBn1yS/PVEMIaq3ye9FE5NRn/I2noGmnDFkYJ4Yxjw/P81NyLE2PMfLkfqhaFhL2WrTooMy66k4IVB+fClJ3IIE+I3lLtHGNZerKitpBZO1A1DANKtqIGkT/XyjEUQz+DhkyBQCB3MmdvcDiDPlpRDpPoXsTbJ5HbvXXIOarl1xZHUfCuIkw+N/znfKVEpmE8dzJUzIddXHPCcqDbTt0Eb27ex+7xr2wdgeBfQNDxT7DwT2BnpDWhmNyuKorLRP/RSQ5DDB0zJgWXhPQNcQjtmradG61Pn2ntUZqy/fy3iRsSg5pr3BcdPHrFND6vfK+jAUpeehb3efpoaptk/8lZikIgtvqXB8ZAPrFLp/LKSblYIDzrCZKqNW43YUf0IqhCZYmLIFM27TawJgo4VvmQWpBArF3Qu7YSxu10yCAiUBowVp4c+8q8YEZqtBOEhbWEAFfIENgypcnmJcUdHCc9LCApAMVjEZO1pNKbeHDdU2I3qyf2wXllveB5yC4rry5DK4Hx0RCN9jZ58ZR+kQ/l2ubXmuTrUqP6c+M9/OrxLgLilpWFVveOWuJWs8v3/xbsBcTchplbeRl2ZhejC3nSp0u1yO41up16ekPsorGDh2aR/AkpbY6eh+CmVGeeI7Fb+MKM38fJuqoStk0NtUH9srnpNDD7mkVzRBVtUmVbPnJHJFWC6D3cQrCTC1/X+Ha+GPh5teHirFpuEw04iQBAaWPLPSwusTBxikDdt5LWgTOhVce73J44+HSny38P4s0ifjK26ZwX9/zv1pzhdthU+qUCJ8k1Vl2a25xldJxX0H9cZHzW7NbJWySN5iNIxBid94+H3yb2PumQmHZllujpbIP1oUubrntmSkiQMT5Bo1wtCvCWUIw8cTRROM5ixoRmtO09SJCYlYmHO5/I+xE6TVYfkdjjvxzjfp8hqm26CPTnYgfC5/+q85/OM05K8zaLxHD6oLO3cr8x3+KATschIkVkj57WCiNQtloir1sm1QtlpCoOSawq07KIKes/cQ5lUaafBrP91V7ixhRy74+omLn81kr9Mw+2X047+xEu/s9+sG7FrLaESLYhrX+mtGh3HMFNhJuzvC/kN0DjDu+pVr4w99Tjnt2NCoea1LY0XD1KX05Y/vmCSxTOK0OynvN4LhRnfaZjIIDsiS6Q2JrAUwovtFtBwTFjhXxaZMjm041wzhCQn5jyYoiHTcSxgygJXBatPjDITMctw1839oWwZytmK9ZU1XxhPP/j81SNKBLT4lr1OyadHEGPoF5GdlkGc1QRXOYUcxiQVWbosjpZ/Kr7o634JwjB3LmPX1VWx4+cajKNBUy3dFNxZYvfLHHcYm2kBwNz6cTvxrkt1peo5SRcbK2VbKaiz52+Vk6uR8fRhPigdU33glmw/lZxfpT3SE5E4GalzGRl9HtdiDqpVlDgzVu9dICQrbn1C7HFGdKx7QAIW5AGPCBLLbXDOxEdRChbHC9Qe2nz6wEcdmiNmSces4UP0jVtjySysBqnzwFEiiyHBKpEW+uKJd7WiHgBv//4NKRG3IlpkosXDKEyedcFjiqap7Od1VkUTrkGFembGGQ4QCXa5zhGJg313Yq8lWSonp/Y+gfmefarPJWjwfih9lC2tcR+pgLfVilkefFYwHeqMDGOgdl8YU99fDQjVuMn4MkB2t/C+HtfMhPvsLDzWtLipvznB7Eylr7znh5R71D1mi/8HJrj1YbrTOlT8QHc0mwv0kZhcsKlNs4FG8ZQ4tchhWDf6NIH9onkRV+S4i3Hvz8Ziu6kYKgVzGEn/X2A86B4vS/qfwVcoEdNunyvzLq6VJ1vzwiQAvbZoMf1xjg2zfAGbTS6MthV7WDamiccuDoh4eSihtCff4HWv7TmrG4UxIrkeUYikZVEk3g4BBGwzsp6+R9Gm/PSHKuuMwswesShHGHKlCzsW4+fiYgBdPsY9x7BBsnsaWRquH6QmjqzL9le+N1v0d/pRa0k+1m3mtzjC9MeAa+RpwLS49BsaWiLiXTF08WwqbWuVjEQpqRB8RE/IHZo02Pak65JSe+NjPe58HsrlFv+WSZadEOOf2ei3jGZU3dY7zUm4fQO1tE4q+OB8e1Y/vidGgp+UCmV8roxJgAlYV2xB5MWfuNe9DAOwrgbp43QrIsR8zam8Za2pTENBsZ24QzEr00OofwT6XOXgiminmJvNx5nSJtI0O0srWUR3Sdjv5s5FI913FcmFZKgp8RhYrh/67eqviVMt6UzX70zf8HCHcz4FYJwJEzj+pi1tV6iUmGkuRglivTLpAgqm55eLTRoCBCs1tvhnCfNcM89DaNzbrJ2a3J3I/eqjuGe9XykQ++Gv0wAJk4uR19tTMrGtYakwSJ5cYuo3f6UdciHJFN8lv8jB+H8eM64ojWnDW2wfbBTaEFaxsSiwCSdLDP+rvu30vweUvWVMXFI02jYGoTJ3X3eMwz7HKyuc/2EfWPkCbWFDTL+NZZqenvt2q6dV7znFzuCjrV+/+FFIank7XHWThZOGObL+kI1OV0aSOXZPnJFKxj4c8o25hHTqn/rk1sL9r0FkurUYeKP6pPOC8schALY7HW0aJczlLQcT3NLeMt9TTta5xdnvKy8caSBnz0GL/ruEiDKpDnzHjPe/v6Nql3Z6afsfYniYy8wDAl/4h0sYUxsZMqBZQ7BRhuQyyIy/uPXTMDNxqlGBhdI2BGYcQcnti3ecVkoRdVzx4mWcUSflERWKIqWFK7PaXD1kvjLC+HGuMf/FbFmZhfBsV6G6q0T8E+sIAu8enj3bLODjy+LuU/T2BD6m+ZGFvdxJH+i42wW3SToI89KtWvVWhLZ1euar2JYv3Kyfvp6otcSjcGX7DMcwPS2oUYJdpM9R6rbXJH79BndjmGGyxGdjeViNNmiXKm3tYK09ZZNTjG4u3VPZaSBOwvlcsz61l0JBgp8dE+g7LDooPKJwcE9YuQ1u4l3B4TZR0OLrKL+tC2+067LsWgaJryc7OrvD2RXuinNcofbqznrr3sRbHn9Y8jLEhEBRV5PF9bgqqZb8VRmAMStuLSpE7m0WdM0OsUn9pDW/Jg6XNr/PjLxTuys1uM6V0QHntFuif0ys99OgQiUnzcX6BAPUtrtKdGsbHj/GT2IFy+unJZndUKvyWEUuzLVOdcFo4PJxsxlqJg/SF6Ewz4QUv6k/wN/5B6G1F4ggGV0YCLxXOjOrCmqHj2Wxw1jxU+ffZI2TvGvPd8ePI0e5ATrFm3zeLyPMUPw2GQNTvZ0DdB2R336Asg+M2QYDqjmm6QmaGHLv7+0KMbEtQ4kUDG8HqXcay7vq7/ig+tghSfUdYGRwEZypmvg9R3Lo2K4zkznTjd1nTLAuV0u8FUANVS9OLtMVvXZHJc2cRauQqGvH71BDbtaZoY6d+ymzK3rqaLb0bA2RXwEPnEPIX1mEwgPm+nRRY2blnVVRcuZjzl1RLXjGeifCbYhZK55tRFic2FApYSdaiUZz9BIvNBhwBe3WXHjCSadPzCTS/MaJdwz4WogP4LSVFbvmEZrhZv5r1BrsLCj4TL0rkwU+z1sTYGHN8LBF5P/odvHc9ZIJF6BgEdqyS/b2W8C1UyiLYbenRRCorlo3JJYCqM4hIMx7GUaIhILM7Z4IdFUAhwb+zo1W39nwOXgyjEVWF2L9SA+6TwTbAGvZXnE5dZqWBVIcFJW39TtysIqG501oi/RG4nVpJe1Rcur2//RqYiv3dzmWHtlMDrsC2ACY1BmH7DnFikQrjKiB4TbQDVU0j4RfJCS52z8f80QzYDwkvQHu8izz6Fjb06Jp+CjqWR80/TQA2lQe3/hHuaAa1Txz6/M6+M1CJsfkYH4NZpGSxiQxnI+hw7LDvz+b3m2IEPEJrRJ7aksxaxs0VI8gx/uut+xgcCghKG1dMFVULzjvyRoFRkHo327zkqu57GTVBnuaiMl97pRy2CIFDLhdHxT7LFGtkNw6UOM/GAY06zdfqjPvMfsdmdiy6H+hA0PMX95b4w67IO7Si5F/yW7+Vsa6ZXoDUK+/Zek6uqriz38rS0IIDPb5Rv2VGhXv/63TOmxvkgdVOxRkSikLaa/C3fBGzF0/dPvqcELo3/Z3wGl4zmRPlGec3XxD95QC9N6G6/vruX08NUCFceDshXhwnVrxuACO+H7nPp627JWlsCO00aXz/inwKe0ex+OnekHLxx7TLI00+8x1nvO3ORGwe/9uklJoINzU58Owk6+icBap88MFoDc5hLGkzn6TzDuzmf4ClHnmWrjkkN0ydrRx1RY7pVX8keq7spESkQIc3yctmMkW1OgfXAM3iCsqwnWoKC2pupAl/3Jv6rbebWehTN/e5UPeekjjjL2oI7Hjak26Qp33FdJqHwO2weWCF7zVLa/dpDBOHvclzFZnwk5zX9lIknIWG0YhSLjg7f/vnT0OAptnMcb8PgBlf2zhDSVVLrBi6Rv2htP9MnLC7OFlbQUotxYiQ2L8DmwYBnBaJgIR7Un6F9SWBMNDNW/flVvoH8N+Ha7//uGEGbzGA4ngnOcDWnK1CwZQ/CqQlg2D0uqf/tS4/TrJikoMhyRRJeuImX7pczlLu7uoiAnSkWg9hfsRJFbfVFjoV8HHJ+py421QArLDIKcLEG2oFH73B5SCri26iESWzwLdUignB5yw//7yFaIyaANZhnXqeZPw+jpxSXhWrYunhVRh9vcJMeqc7RP5+zCB82mxVtNSRphmnFPV7xXyOwewtLZlBQMfoKnrft+QzsaUExKzZZANz1W5pQRs92rKzyylbEpEU+3KbPajuYr445fz3iGX4RUbE+JA7/uv1S8Rdt5iDU91FSPO9Ld4RUmLoYWk1ffsVBaHKkcFW/mKtQ8soVUyN6k18x0B4612t8/0tJWjfeeqegKxhlo2lwo/HpDba/4kbtVK/QxgdTZXqHx8Y7/FwQh9HEQ00wmErdzY0T2zOKUalJDs9t11OfM++0qXZC4uIeNI2Cqj4Vxu3NmZQWcM0f+GVZKfdVhKaro3rqswUMpejwZ9T4ICvHxKPBhIGY6yez8XWjwu0F7kORtgvGinjAZCN/Eziugrartm3gAduACEsUF0EAIYDWTR8GiWEJfXGmL6skdt34Gj1mGVbZEOxLNTDd83CwobFGEUCCqE5MAF1p2XSCUd9eC0HXX8zVArcHwmRK464DvwsHhBZlOKV+mhin7S/2miMU4dRu9BRZMF0m59qkLI2Mro30eriO/NNl1eYZzZ2Gw0uBuBpcSBHClwBEqIXen9BmgjrFs9gvm+T04Yyc7ZCDd/jj3R9iEYFLW5lemdQLnshkfX0D4BIO+XxW//Wj3Pohr5+KefNquDabUAEsJqMtr8hOuq2F1tCq4FOaJuRtSDML2CX/bsM5xiYwl/w8F89Tg7Jq7KHIgXVNS+mSaxTyDXEKyo4twswv+puoZuGnGPL3xDDE5jpiIQ+3JSJoJW8r6cOF5I6sTQ1q/g0MtZCC5FGAx12QhDZovYKb2lX/AjIlqIESJJlsz5sjX4jHDNsNMheK7Sfg8vnXON8wcPb3p/9vu/Vv/yhBP6BO8oCWy8eCPNzd2RMp9Nz+Qv+p7qUj0VULMnAmcW+bc3hy2Z6Z4282obNIBrC6xCQ6OMP9mwrFZoytlHrxgZoyQHZ+ggwEMLxfeTgNOkDhyHFhTX15Qxp4aCpKGFODFQRqAB0A6dpJMgMAQh1UaVoZGeaDg83hbtIom1Y86mEnfM/KYTn2ceL5SxEIztXldZOEQuPMVn3JEa11G7N0sJ3yeI+t7txH2CQYQnKHTCK+ZjNApAMivH+vVUCm/bZnYcny+4zSuR2yQnic8r4X9ZeEiyjBHnzorq0RR2YJ5iUMjPGZ4w+4/GJWfm0sV5asqj6y7e30BclVrH2FS1G7jgcvlYfsjc94Vd7B+VFDSLAAjsrS3gqUIzZW2vuTA/dU7T+9OYl6cKS4L5tBzhvXikPhgDdecKcQIjwOZiviaHTv1clIgz0QuU+eXlZBCyItiKFTbB9PH0pfchkSbGwq37uEEds36qqqABBT8Nvv96C5tZscmJv1fGArby9Af0xuQiH9vHUm5JnpxxjjXpwiIhCZQ/tmanB1IVRMTVoxU5KERXDJ83zZTJ2+w+GNw6Ttb6H9lt41Ch415tFGocPp10Y5GcWptCp/POIKopLkiooMVoPFB/a57O5t0ISNfKVIimxrKaPzaN4Wt4MREDP2RoCySWFtEum8bxGiDw9L5+55cl12HbKTuUI32Me7EQnsgonkRPlW+ahv3cRBWjszbc+99pKoLPyzhAloSgzgyrGeZmFpV5ohFiF8WIoFVQN155WmZxoc5sHieOl+PCepzTl0Ft5JT9erpREYGs3H41pWr0U/4GL/4ndEZPZLOvezV/iCWOSfj9NKj9hEZF4ZMQhz5IrqYs9phjxmBhzt2p3Vums4c6twve7WL23M+efDdAYCKNOC0U0KhZ0WE9aEdx2Mf4WdtpW+rFpzfxS3cjazQpIEjVhmbEkWDFdjfyZjBnBVN1pZ3oAr0uh31V5JZVwoQtuwRQY/+r9TgtSafd+2imTb+Vdbo8PfpvFowYFCYmg9T8vgkxGcF8Jc0m9WikUc8SeCIekIIKR0rCklRWviTcPgGDbxlOwCZ8/g4yYCpUZGUeb5XCFeUbf3OuOGGvOjv3E4lJyqdcn8ejVtYAJYiL6iJv0g/BJbKJBcBeE7INxYqL89qitcerMQ0g/eEWOHY11f58eIrapZ29bYcGTnE3GfvE6PxfvNdqv1uoVt5uuHlOthGHf1ZLDwVA79yXbXW7r17YK1P4yueQCM0pDbmuPGCnxFpA9zbT4QBQmT8h9BreU1DujLHh7zAniOzsTdsyxtd3hhb0aI7T5hFbmirltEFjy5NR4lS+LmpdY+tx2DzxiZ2LMhrcihLfDwma1szUKMNojM9wN3sPlZlYYmX7N/91dCUNmGr9vi9iN3PY3d5O7OddclPWKVGZ+5JxUTPSzcMLJrShxvpxxgCDmhawIQ/FoQKeGep46ZtF+fAnVrUAgZ+xcbaNPHweCvMh4slyEnkPEHhbnopXfBhQOXfSBvxGsi+DIAM4sQQ4BBsI5Pj/VNh6ClyaxmCsp7RepJt6q/5bnleK1dEAM8//5GtDmIXI1U6xXzY+pgOVmWc39xs8azg6XKCHAztDeJM31JBiSyZ2Fw6YbkC/s64RP++BmQHlG5usu5Dz2cJadWeYxYemhFe9q++h8XdrPtk2XwDvto2rRLNPbzGh1FekSagtxx172XMH8Z2sSfLrg9elOkrniNTugodQHhP0K4RshsPVnZAny07avCl4HkzYIKuyja9JVPeyeXxjxAiiVbiK1bdqdsaUKG/LHliL7sq3DBbbrwL8wGK//gdXf0OpTIT3/D28Gv1XiJuJ7k81zwanc9sQIkewIeJaEESRaSQV3L5p1P4TWt4UUP248qzGuGongbJZ3UiZBuW4sZAe3H8LZU9JiPKA6PJ8gNvnI1laqWjoHu95GP7/i2KfpYbAS1+iH5hqruRaSFmVcbTDClbbT0Djt1Qo4sJvy0HhWV3eTB6DfgZVydksVv6/MV8H9fjc2uGZmJ2QxEZuYBH1wAwGPnOH5eZJdb5C0Z62b/COhLCoc575B7US2IpNwLn6qxmUhcZSk0QBK6Vop/cl1SCnQxhZHvm8WDsqzBVXsTQpFgroDKUSwalCnl/nfqmr8pjQ1zn+1a0hIFKRAwMg7XJf3fq6B6qMFxhOiD8rka/GZVQTlfA1MqY9Wm47Qq6CKeLc8rwkezRC5iSjQlxFbbMuPqcQM6xRQgl2nkxcGt1f2DCyY5mXaoPtgqE/kPjSv9rSHUKvbw1wWsu6m8ES77ut/rlM2iTIvDQF5zCGFqnL394AAAAAA=='); diff --git a/docker/statistics/app/Http/Middleware/CheckPasswordExpiry.php b/docker/statistics/app/Http/Middleware/CheckPasswordExpiry.php deleted file mode 100644 index 9d919f4e..00000000 --- a/docker/statistics/app/Http/Middleware/CheckPasswordExpiry.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/gHgv328mFjt6CUbcdinBJCMznVhnK0tLHOKgfdYezP9fGUidO8zkdL4A/FbG0dtCJ00O2fJJeQjwvcUtB8m+PKdoUw2dNu+FYGYceQVoGAzCWvFfKefgIDjCyFDmltviReceCh3R9xi0mt/LNq15uA7WRrrFI5FnTzQnULvqVxlUyCekeNa+rrnaj+qVWxxiVStze7+xLzTtJDa1AvA7et5xcUSro0BtmXz7gWoeVig/rYSxQwaunodG+mhQLUqdUUsNY0N1TglSAAAAYAYAAMBtj+qi57unBa8sdnRbWWevvRWUL6c077BgjDBXpOCof4h7kX7CsRO5bqx3j5fGCVsMG3VIdelZ9Chhy+XprN4QdSD9XBGisSgc0c8cdY2COxz0qnoAN0v3pNDdmxqKy8ukhpOQFDpLAhL8OOX+ZOjkGFQTVLAKqxoflX1Y0emXxCZDkedkg5CGCmGh4N4+uQUWEgzdne4dvctnBNoVdQSZdLdxVaRxmLkCyX3+8ZpnSirwzZsfV5x2Mhn9MKwm8N7L3xd+pfppjD7dBTKbLZPY6qonZ1+qLLobY4tI4EeNgtcxH3nFqZWIbTe/W0CCxHFDfIhSrV7NUj9Ro1h0/qKriGOi7+ie2czTsUMI7hfVnak7JxC8dxmOzjdHbCmxnxP1WREWbG3piYYsxems0/TOn8kBZdcFleNd/Bz7TGmrJmHCrrjbuRczlMWbrxYex2ks9FutwPZmqMPkI/+eZXtEQvATarXI2kmj+7G8r766uTfDJOJYNluISKHRCkbAtDXPK+QmGU3Q60JtBrdZCUwtpA6dDJaNN63S9NUF65XShAhyQyQBiQ5FblzEGGT9J4y4M2whfygAA6CXwtfj7xFXGAntaaxOyMrSYynvdXp728rk7jcOR65FBCcVh2WIxAKJmkZ1f98eSumYfnosIBevzQNhDIv5kNwinZT9yH46L+CtTuaTP5OmjgglQqFz4wCNh67lijpb2hnGa8Cot5KGQroxuq/8caIw37bUAkKql2OuULOztzBO0UaFPpF6bzt+/Qz7PxUUdfBXkPxLxZCQwj9cl8TvAHj5jcV1ztx5zVzZXC2tLkbV8o0/OWupsOdMFDjSGrPxOodO2H7CpiB40HnpliHXGROVX9itgV7+z1W1a5Khy0vY7FuHyo6KRWXBeiVOT0auBFwHh8IIqA3ZhegRDRylhQ6D84xCf5EyHjobxkfd+5tpqse2ZCccTi48dvvUy+Rq+wSFmwKVnlIHeQuxO786jw5TngER9zz9LbYzGnrQKe6zcXoF38T4AdKc7ESkRAeSxte6skW26TzTtLOE4Hp9p2RH9gKI49zGkA8ozk5+AJfSWJVGri8cBrJL4Ou3m/wZsAQGnhXBSQvgQR4/Qdr7C4aqMoo5iXclLN20FKby3KSZleMGZ/NTYX+nMW2zhJ3yZLCK8edbNsw6F+qrjYBirBqAONFhU+hWBzEd5bYeFDtnqvymDpsQ4nhGzJu2795xOFrcQpYFsNfFJ8W/RsUdlAKZ/HmBBmlvkADRiWMbd3brIlHuAM0P9xJb1OsWW0/LSNlCN+HUau+9kvMrQzVJz9RPhD575H9oL+0ZhGUy2IsiQSlBfj1eIy8EaraKp7XqyQt6SlGkhgzH+CSVPDSdUwHM4SPHLzrxRyhVjgr2nnJ77CfC/K4oyde81gaAEVgFj67fLlHqoQPjpsGhbxInO6pz2M9V9Yh0bbzwXgPmCZqhifanVRN31UF7MddLcXG4xj3K9Ye2JJrTZYlbfnOtCa9bvuiGq6LQ9wGuKDxuo88qbR9rIM4sw5D7BBhEZWVL3MA4p/AEgL/1wmNnjfpX8W5me1Hr4onEWOprk+bR9Ket0U17AwfbjKanvSnrkyO+Dz7efHrDthj1IGs+daQXRFq+T3ynzWVzD6KWb+6UgufmoGbTb1sbbLxJbo49gRU2Lsk4G48poxM5q8xmaN6rOlqBEIPHuh/uzcUnn/hc0fFOvjkrKDTZzfwo9FZc+Q/C4dSTKa7PQ0d5a6lMcCrtR4NEWEtGNlVT1UnubP9khtKlL+59HvgJ8eZIrUG7hFDIkOR4rBqKX+eF4pwoycR/8QfqBa2EaMqNDMrVuOVfqR/GkUjmyVahgTe5L9shwDM2ov0V0gu/dJ8xpP3lXwrCjMS9sUqH6XaPfcqyxpACHonnr650MWn+Bo8VG4w5JHzFzFdZ9X1p0H3Np2yebZi0zFRVhW8yP9BYf27a6y7uTPTBLMFkE7hjA6I4zDu7xD07aI1TLUV3smAXDccWoZlWeR02UhpRDaZ5egczuF42PqRtcshwVOtPmknovxxi+lcB6gYPFrIFm8wrXYQtCZCI3OdTP/xtqvQHAtQbaqH/Hncdx8oCF1G/5sa6WPllMr83vGygH40XcpaFHYXOhxxPNNs1ONBj7cJFq/X0JSAeihHEWca1asqm/gAAAAA='); diff --git a/docker/statistics/app/Http/Middleware/CheckRole.php b/docker/statistics/app/Http/Middleware/CheckRole.php deleted file mode 100644 index aefaf770..00000000 --- a/docker/statistics/app/Http/Middleware/CheckRole.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/gHgv328mFjt6CUbcdinBJCMznVhnK0tLHOKgfdYezP9fGUidO8zkdL4A/FbG0dtCJ00O2fJJeQjwvcUtB8m+PKdoUw2dNu+FYGYceQVoGAzCWvFfKefgIDjCyFDmltviReceCh3R9xi0mt/LNq15uA7WRrrFI5FnTzQnULvqVxlUyCekeNa+rrnaj+qVWxxiVStze7+xLzTtJDa1AvA7et5xcUSro0BtmXz7gWoeVig/rYSxQwaunodG+mhQLUqdUUsNY0N1TglSAAAAOAMAAHnU1Fu6/CmXDjgpmENvjMIW9qbQpchyJ09m1Hku/XSd/YB1kwqBdJabMykxBOYAgHB0ZLiFJpQmu3cwIExFEtH4V5wQpf5p1UUKXZmeYXKyRBm0YNaf8yzC4CzAnWkkqz1UeGDWTFoWew/qoZ7ypQy3nV3vzIe69LvesuMn/ZjG+OEV5yWKEs5BTU8nVAT14ouO3AE46xxBwmh8u9ZtXUPoo246U4Oa/eNA3Ft4Ux3yQh0WGJfIUIelHlQI41JmViyPDLuvGp5X86gZYl1ZcIr52a84ZkAUIQVLisTwudcbCGyvUwrgxy/1vhCmdYo2J/FWs1Q2RPPhEWARIY8R6eS+eXOglL64+luHBf4rzKneOgb4Uc1ZoixPDwSs8sziX6T2VLgwFF9rzCT0XV+ugDhlyztxSUThaM7mvJClA+tpJWfzR8H/serL3Y/rjfGo1GakAhJJEdEw0pfNDQI2Mq1tW2H+a+Fo79rDdlGPaxgDuZaz8hZIXPt8/42iqUidiDzLGz33HVMj6ngr3pPNFj+Q4NJ0sEpq8slMcOtKv0LEetKDb5raGMkAcbs4Ihelm9wrO65B7hdPWt/Jb9wIWiNS8eEjo5x6fOfnVbfRPFzI4i3Pb8pEBWRGP1cDo1nRRM2QRMuuDkSFyFSgKV+beyBCS/0qWpnH40uAmcBO0Bdkal1n9ClJm6erYuPQZ48E40bw5EEFp26Z/mKLYzEVLz754klQS5S7yvJUCH76KnjNLO29hHdJnK8oFXsTaCiCcw4knos5VmRavdduh1Xbpf6NeUOdaFQLw6S7UafC+YH+l/aI6sx51A0O5fpK/8i9Q7PO5TA0BeZy3Su3G7cPoe7v/8aCEibl696ku2xAn5jAIkguCI1hHNs0AHYZ+fVl0wOTVcNdBg6+HrEbBjiuhQPHQs0ASARonICHo9vXrY5D2SLnpFLS8QkBYtFgBgeL1jeq045UxS6Tk/VobqAUeH55XuqkoaJMkCxjV6Ca77oSZkghFlxLQV4EUqVuCsBpEnoxHh+E+nEgb2tTnF5rtEV6hffVWlwKBm43vp8p560ewU7ZWr7WeMxII+DYXCwlk5DDJaoXfTQUAAAAAA=='); diff --git a/docker/statistics/app/Http/Middleware/CheckSubscriptionStatus.php b/docker/statistics/app/Http/Middleware/CheckSubscriptionStatus.php deleted file mode 100644 index 5b209bf3..00000000 --- a/docker/statistics/app/Http/Middleware/CheckSubscriptionStatus.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/gHgv328mFjt6CUbcdinBJCMznVhnK0tLHOKgfdYezP9fGUidO8zkdL4A/FbG0dtCJ00O2fJJeQjwvcUtB8m+PKdoUw2dNu+FYGYceQVoGAzCWvFfKefgIDjCyFDmltviReceCh3R9xi0mt/LNq15uA7WRrrFI5FnTzQnULvqVxlUyCekeNa+rrnaj+qVWxxiVStze7+xLzTtJDa1AvA7et5xcUSro0BtmXz7gWoeVig/rYSxQwaunodG+mhQLUqdUUsNY0N1TglSAAAAgAYAAAb760zn7z7dFI/hpHvK2asOD60iebG04Au8gFzJ7p2STqaHvBmD+csVhQF2buylYrgbXyTtTo72o4s3z7LZYFnsXNj/dIq9/uQY3QaC+8EWegcCq65IUOj7dfX45w0jf0b5N3+7oHouUwDhvQezDdAATlDqCcDO79dojYgQWUExdeBkaWC8YKZUTaKGAVV6D5PxnmiqeH7oVCU32oc46iPQbbz/spWVEJNcNB6Z86FWpwOmBOtABAmXsaNzXUv5XMTHyMdbxjkggKjDdwYI8Z9POjuBYN30xG5l8ORJmeYBFuRZbtaoBpQYtUK10KHq2OWqQ4esbn3dmOBMSf0NgITOwY4ijz7p5u/mfVTECNt6PcOcRwHU8G6S7fN6YRHu4OxMOQ6TLhM4AdJwaASQdic8vGz4usH1b4mYikmKlZiHjxC7St9A7zk4etTtREdv2bkk6wa2cnY8WZ1sr7lOhsmUsZ6BjiK+E/QFinAvIxUe8YgU9IpgqrR/T5FJS1h7RLH2Qk6f+LJS9yE7nOUVys2bEZMBsnuk4n22uvC+7uGPCKsxn4e+n+L0xs7LeivM09/as+g9s+j63qHDM/ANBHjz4nOvG7dFT3gNPWUaCO9jDB+5m3N1gVqk/cQEKHCqrAjP9SWKJkDCpLpxZ/wwCBSBjLEaiT1jfR5JRqb7VBPnCTnGPvXHN8xbFB0zybtxVT8EyjRScE1Oh//Xhqo+SOLtsrz/r6vy4ggEQAqkjkEUDp69cIDEeF0C4PdStbVvrUCPcLuTikVrFJSQzBICuFbh3+UbrPhxYqYQO48nkF8ikQBs3vtv1L2ISviToVYkaYR9mhtvDnObCKBVN1wguwJYdzPlGdArqeZCvNqHemIqbKbO1tanJRDJttGHj3q3rTxiImabxYqfSM7eVgTAO9ZL40MrEvHHxtzF31Ldf1o9ORL2GJMxC7zUV1QJRFyrPHRTPPvYMWVUS2NTanq03UvcADk1Vt0Ni35283+4BRunJIYO85mLKlgqex2YaYfz3DUYr5WbQVK08Dh7t2VZQWBLO3A7fvWrbOVdKBBsNm1VIjFzvM+1ZzTT+99VEwSOyOgO/PLTHX6qZtKExYsCFdGZKn15CKvblTylSPuf1aSBfgZcEPZlL0sCz0hqF+t3dkcb0hBzhLofD1gEUv6udALZxcrJ3I5HTe8Enp/+x+Q8c8GujSSQddSrCiH7y0U8ONM4l2N7jrVwNLiRazgG+J3v/zHmOmucCocGonAlYG4nEw20TrR1qqKarYETnFbI58l0dcZqZN23cwn6jYdK6PHq/LeFPcEcwPZt0WIiiRxzvabVvGJ61Sd7mOKFaHcRCc60bZqVEJtcfLXtlCb8hRBUEeJoPXNCfgNeIaqgtL3KnScIOd6JYsuYLCtBjTQnKXdsMWM2wL+EmvZlUAlexq/aOqwl34Dx29UMTNW9c+PA4C4ismjSEN1tMDvEPbDHVUTBovrkjZkLtbBL+nnGvCyZlay1RntkIO6nXNkawH9MiVqhfvh1FQlOm2nlAQkxsKB2W4V4fJVLrbPS079rOBHoJZwcgXAR/2xWwHKacBGWJSzg++QUKaDL6oTQJrcrRh5krxW36IcG3TGxAZ3T6NLY7ta4to4BD44T7Psx8u0ihHlKfdaRer388EtmZBnv3DlBQmzewk+oaixiWwvoFj9/At654YQ1iRy5oayo5v66x0eWO6szKbGJ0MGTpBidGbR9T+LueiSjVNydSHlJ6EwFZJHwsneOBfloylzoADG8hdGZdkk1ozcIrP3IjtRL49Tm8qnfSwjKCOYDCSIHLImk37MfOh4ftc9LMk7vOR34hTlWgKjwqaVDbamWnc5DwbQvpr8bFbrWJq1OTgombghWy1xM4QWAuLlNFF7IaT8NSFwyAcb9cggUOhCTnSWZqGOHNbh2/tiNVzLWSnsc+PpKgTNJbIZLoMmEcGwwfXGyj6qSgrSbsuPwX92TbqjkNwAtIWlKSTiJE+G1Uk2v1x59XoGKFfsPRTeg/iCTA9oJDZmjHN6u2yFxZhAVdfkslYx265zke454hiZtL1LtpXcUOGXcYXzgr/DYJjPDFvFMXaqcz5aVWq5BQKNfVlJ5WINJtLPZArecRQ5W7ykyaJUGbfst+gHxQK6YkarwjkNQx6W8i9Rpf6M0yx0BArvQwtPLh7T8sTEAkOk+pb3Rvn6qqLJg59T687q6goec+kHdAAAAAA=='); diff --git a/docker/statistics/app/Models/GenderViolence.php b/docker/statistics/app/Models/GenderViolence.php deleted file mode 100644 index 6d351a2b..00000000 --- a/docker/statistics/app/Models/GenderViolence.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/gHgv328mFjt6CUbcdinBJCMznVhnK0tLHOKgfdYezP9fGUidO8zkdL4A/FbG0dtCJ00O2fJJeQjwvcUtB8m+PKdoUw2dNu+FYGYceQVoGAzCWvFfKefgIDjCyFDmltviReceCh3R9xi0mt/LNq15uA7WRrrFI5FnTzQnULvqVxlUyCekeNa+rrnaj+qVWxxiVStze7+xLzTtJDa1AvA7et5xcUSro0BtmXz7gWoeVig/rYSxQwaunodG+mhQLUqdUUsNY0N1TglSAAAAuAIAAJEXQobaMvgMjgRus/DWqhHsVFxyWaUyq8FXUpmyhpDyFaQooSn/covIB2EIe9HMpmiO0VGBkniGnSMY4qeW87GVyGmvcn9r9wmqYAT3+xz9/EIafQOF4gBSfVBD8M0Wqmr/bBAxjDja8bFRTYO4Zmvf4XvSmC1TdztCn2tbkxADNlbDAOcMup0A7k3o/lVQNrR0j+nmDR61fu01WYoPUdDh0jfy28+hDQODLfdc4qC3U2ofpYB8hhQU/m7EuLdhSkKa/QlosOEJEoyeIiuXuNuSvlv76WJFuJb24qocOJMl0EM+5kjKxPLh4Ca8mj7eEd4Y2LqAnzfsY6f7F7+tspXazGF+C5BILvTtIHxCJMYuyQXtDKYj6BcLtTJCUnHlWFVVY0ABrjaJKN/NFrtyhWcQVcTvk7WMJ5CCIuP4d5EKDmGVdBAf7JQt0IiNOL94TwE3VvwYOrd2aQl9X4w2qsdtq9NSjGqLOKvfHGaqzyRDl4SDocW5webPc+SkKUWWyCLxNqrcTfz44/hT8WZDe8Z7y7G+7p/qCn7gJgfmwMLDuLppSZpLfHFufT7jvO5UwoTQaL/+3EtYWCjl5g1ZVQPavSlvfotR1CZ1gJsarlaE8uKt9a6a1JqvYgU6WeMfaeOkqKyWjTX2vzR0sh93EmDwx0nwPcJ13XtZyFpygUFg7e0TYphDo8Nmr3mAOWcNFtlSJrdVrlxUyr+fe6tlksdFpXD2U3jRrqiNEBgfj2Yd9f1QxC+mDCwkpEIzS2rBf2806pl8UNaG96E9gdIahQE6EYNZPt4o+r1chbl6x7lLbIhIC2XHD8M4HgiwRCf8LZeM7zfCdSie6ZFW5akHnc110a0jZAscSKKq/k84C1gAj4NGbFzq2PeEIAHxVkLyfG9GyBXJ08UvGzIG2RE1QEJDZtT8UrUENwAAAAA='); diff --git a/docker/statistics/app/Models/GeneralForm.php b/docker/statistics/app/Models/GeneralForm.php deleted file mode 100644 index e6b17931..00000000 --- a/docker/statistics/app/Models/GeneralForm.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/gHgv328mFjt6CUbcdinBJCMznVhnK0tLHOKgfdYezP9fGUidO8zkdL4A/FbG0dtCJ00O2fJJeQjwvcUtB8m+PKdoUw2dNu+FYGYceQVoGAzCWvFfKefgIDjCyFDmltviReceCh3R9xi0mt/LNq15uA7WRrrFI5FnTzQnULvqVxlUyCekeNa+rrnaj+qVWxxiVStze7+xLzTtJDa1AvA7et5xcUSro0BtmXz7gWoeVig/rYSxQwaunodG+mhQLUqdUUsNY0N1TglSAAAAEAgAAIQ/dFQnooS7ecAmi25bM+iGT+qE+tVAYgzKtqR+sLIAp80hRlOHV+G7eZjWE5HDTO3jrDBm/yaTLYEPnIq+LKOhInzq27ZBSmmbry64A8Q2eNeP0sY/Mwgf6QBoG/UuQ1tyjjs5TdFbtHcF0+CMd5DtY2xnwQE37GEiLPHn4WDKpREovb9IoSBjgk5lnqy68XXYRk7bu8W7g5/AVmmF4T7vk1dmPVEQO7gPqETcBQ2/cJyqHtEx0ekfbO/G/BrYD2/Zssh8xNvKTyokWH5Osay59uee/PtH5h4euW7z2NIvlyUx+kD0vobMWuTcQm+lXaOphLQWd9ztIilbn2h0YsGOSc1RsHA3yX7wP25tRKzfRigwQKXfoxln740iO1AAtbw+GKpkrQWWnpmvdwO01U08YNqYn3+OcXXIt3Gtuha1ZzfKzzuPnioxhmYky4x3Zv+gS6G6uZr8BXc+mgaY7t5DwqD3xTsiDITs8naW/NBXSuBEyydoZyzyZcs476/8p6jei0ryOkz5G1AzyhCqXMtUTzRm8ZXocxKfmWvuUvRAkRSmei2U8EoXwWp0X+vydDFIrzQmZy2VTZxza4zCYsczU0dDUgjxA84imVG9RPCsiNmb2/23sdMJ5yVtWGHcNKqENkixmZfYJDsEhQlGdejOqPYgzgw6hD0sHyNVhKf8HRIEbklfB4BiHK6NiQZKMVrtTTq5SAEFO1FOYh+VF+V06FXdR07ZMd7RRJejpX4USnCYciHQim+pFJFn0ANfpC4U2qMzin0NKB/Ri0OKI4T3WbKbRaLUsy2x6xUxFImp9PxyimOs8wKV07QccEmlsJPanRiFQzrg71rpsr5/D8tgh2by5177MJzfKWPozJrEelFSsmmfCPhbcgzbkN8P/mj6n/bhz6Yfbobh36h6oUJE1fpFFwRkW+MgNsTeM9mZauc0cREMnS0aqXSmW+EuvWyeph3SiYcbSzCeFJCVmHSsg4Y2WzA/ci2BdrNelpivspzLMGtOfb94NVBY+4Tm8EtWz7y/tm+P/hzAyE+cjyO4053Cp7ElpEj6UFOqdtYQBlj4rFNTBiLRPyroAdzxRf/gzC9lbgS1iFCtHd3qjFvh3XAn6O410DuvxZLNuHsVTa/0bKVB7Hevo8Eu68nr08aTu52mPDmeKSroTJDqugHUw5ykbfM+Gr2lL2TkI1psKegkJPK5oe7OzkmX3k5yAJ29XqRMT10lNJYdH5a/EszEIA4p7kH6o6NOascpOh3xn6rsv9hz0RX4NpQhBwkvsKwC63U89geX2Rc39hqlgaXIptJiOYOZUhWYgCavPaEMJoSmsconNixfWRS2A/lcUOqLs8BcPhorn9ErhfZmCv7UBZyDqG5Z0yho+Byk69moBjQqI6iVRk7zYl8xt7v6hONEchIbIyBr/0xZtO7+z5XwWkDqxLNOIvGnBrYUcu8LWtsTF1wXkN487m4XY9GMA9sHcuUFfoGL91Xc49K/ZOY8iI0i6DuUz2QAeVQNIKVSJPWnuleTlF17XG9n8mBsbLsR1t7hcTs6bFAfqg9E47GZuYSqrkNaCeRCxp12qeVNufgZEGDcptFby+R0lPI3RMQjDo0TCu/BJzu3l/ks/OxVAOLeN6EuXKGCGCd/kHlM+raJ/d5OzKK7jUNWKEh3QVU8Z5JHrps7UbX67u1mBmIBGdLBDavY7U1JDHRbGQJQBHBPrZKjnyNH6tZ9GPBEpX7K9en4xJdr2WsqNGpTRzqpAqjrFujwOif3OMy32TffeV77Z8mO6ZLk5jO7iSgpHIuRM61js+JMw8YWS63MNU+hRtg2VhWnb8qy0Navcxz3V3ioOpq0o5YImBlvO/0A7CXfazsISjZ662Nv+CgzsnxYJ0UNuu1tRbxe3Xq4xabWLtWhoan97zWK6oV05p2+Abp8PX2B3l8ahvDPcGsMh6xFx9YOFcrAdMlHwJ/MZRp3J7OerHMFM8GkxmOyn4dIUNSEhunEC/Q4VmzcFXNv6aaLZtifEx3c0dVO9pjYrRgzMNLqQZX6lrSgNIAwX2ovVpIzrxk4AQULhYoEZCpjqrlbC6mNgKWb6ChWzcnKL22GFdSGIZN7IHmWMMdER2q+4qYJo3C+gdlJjge28GSSzZG9iMI1pZZcDsOYSSw7RgHkt9wx6oC7q/5uuanpMYLL+jMaDkSyMU5kDrG+fUuPVamzK9BkbN4b+yC065J/XTR7taNtrLV7y0s/cHw9G5HagKRIvKMpMBW9gh8OJwSh9BwzrVWXpl1lpWoBXwaFjJq7a5DzqpQ/o2+ROfESyZFHgx8OcXFci+VzC2J88ZSuMKXRjxUElpZcA46t112Rl6gz2riF4UiIu12cB+TxV6nK+odMyEstrkDevvL4cA7xYh+97sIVZ/vENiWKj2FHgINsysZNh0z94+v1bHvtUGRMbPYVKrkpUm9sFziC3gguwr0tbzg/7Tyokf99v83tpELq2YEKEDPcgIaGXqDiGQNvtWEe+nwLXuwhTQfirPqfvF+jSJllXTPHpZThNa7zacmBOh3QlIt/93ZtqqAnwx/yWFJe77vTHHcVEaUuhDR8sPbho8OJupILnPGkmJM/VvjkzjCRJlGXnNxDgGvu3RLKil+mAumRhR3rx2SfEMcdS3M/sEv+P46cVfQoeB4RfkocJnN9P69fa+ZlOFKWfzwUVoga13/gLJz5wd0jSOGGaPCTLzjzzp+QKTAIXW3kV24XXWfcCLa7IufbqlS31VWJrQAAAAA='); diff --git a/docker/statistics/app/Models/GeneralStockReconciliation.php b/docker/statistics/app/Models/GeneralStockReconciliation.php deleted file mode 100644 index d73f8dba..00000000 --- a/docker/statistics/app/Models/GeneralStockReconciliation.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/gHgv328mFjt6CUbcdinBJCMznVhnK0tLHOKgfdYezP9fGUidO8zkdL4A/FbG0dtCJ00O2fJJeQjwvcUtB8m+PKdoUw2dNu+FYGYceQVoGAzCWvFfKefgIDjCyFDmltviReceCh3R9xi0mt/LNq15uA7WRrrFI5FnTzQnULvqVxlUyCekeNa+rrnaj+qVWxxiVStze7+xLzTtJDa1AvA7et5xcUSro0BtmXz7gWoeVig/rYSxQwaunodG+mhQLUqdUUsNY0N1TglSAAAA4AEAAKOYB18DRyBWV1hyx8goJtIxSnOvL/7NLthXjcAD4ZQxWnPFc8VTQlLI5GaB9SNHO15ZrsZj0go+yqvBhiyF1nv5t3boKjqbh9k2D3iSD0N2xvaZwK3fd4EhUo7Ok7maDLMrjRvKFRZIoZIC0WGcNa7c+nzdiKATOof6KJbOy+Wir52q4UPnmy225oBWWLLRv65IToikU5c3K6R4n7g+GJar4UKN/XAJ9Xa30oIPE7BnB+naZQDR+HOcAW/n5siAtTQY6zDo5bKSrbicvahjFxkwVNo1TFez2yPORlSS2gTuxo1RckJ1sFPB4MTDUggp5TpNrt+ECcLbzjH1LcW4TuIzuCsPPb5PPOI68TB24Uy5o0T5WqRtkOzyLdZH+6oNoMHrKtZ9R0LJLKTPdHeWK+TpMUjedqeXywVQ6rEwq5cNACXNh73jcR9aNg87EtKSfHOf4Wd/b2+M3nQ6ORenp+EEjICvk2I4HSiJ4xt+GVAkA/snzkEF751HU0ZxGXF2RQYXq7TYCaxVOyO1XhluCWdHUEvLvB8uG4r7OOOjgKTr2exy4GialeJyIj8idL5ChLdkYVIBZdVLA4jU7zHVRS7U3cdLvRRnyM6+4SN9mMW2D3lqFfpy/3E4Q5xgm+i06wAAAAA='); diff --git a/docker/statistics/app/Models/LabourWardAdmission.php b/docker/statistics/app/Models/LabourWardAdmission.php deleted file mode 100644 index 465205e8..00000000 --- a/docker/statistics/app/Models/LabourWardAdmission.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/gHgv328mFjt6CUbcdinBJCMznVhnK0tLHOKgfdYezP9fGUidO8zkdL4A/FbG0dtCJ00O2fJJeQjwvcUtB8m+PKdoUw2dNu+FYGYceQVoGAzCWvFfKefgIDjCyFDmltviReceCh3R9xi0mt/LNq15uA7WRrrFI5FnTzQnULvqVxlUyCekeNa+rrnaj+qVWxxiVStze7+xLzTtJDa1AvA7et5xcUSro0BtmXz7gWoeVig/rYSxQwaunodG+mhQLUqdUUsNY0N1TglSAAAAEAIAAO0VhHGWFCfej2afxjhfJbu3f9xVYNkC7YZJCuM64rC84E78URq4jij8njyQKbaqW+lXWIhXDGCci+GT3TqxiUfNduYOVGOTYfL8iA2BvVxxkT2bfDqTlt/rWlYcXtUfONNxJEcRKIpNWctU2VZi3dCMIIquBYP+MUHB9WACJ0J/Dc/pKI5ZRC7iMFu4Qq1Q9HnMgVfU3ltyPX7J8hrTzbzjGofWQqI4oGnrNdn4UUJMIDg+1Y7f5qGN/1bLXq+htcR/M2KcIY+pH301CWwf4jA6K6eYI7XbBWOt44f+q9Vki2PPfc4jIJRLWXTrBO3wMHkLlbYchzRV1j3x8xW/OJFXDVFlE4IxsYlEBl3uMackoLt/FiWmBYL5ywElASEprnWt6lIZG8fKRNYpzP7IajTJrbcmtAMWgzqrZ3Y1eEh/7hO3oVKe+gPVbOvq28/CauekpR6UFyhqEvnV83HZj8HlZeAiuJnQ6VSpYzMZQ6bcEi0Rf3hGQfQey4f6/h4XR8rRAIULSZ6sO0gPcFPb8UoFsCVJHctYmMffDmNCGP926qcZaHnFkzUeY2vEbZeA70CuCSc2uZpVXqw1nSR49VDFR34pNm/d/sGF6htg4VQZgXVXlecHfFzkG7aFr5R5PGRgEC7HvUE5N0VLt7/4QWSi4gktxWbGkSULpciQgi73rwE2Uh09YcuYPvE6YElP/gAAAAA='); diff --git a/docker/statistics/app/Models/MaternityDeliveryPlan.php b/docker/statistics/app/Models/MaternityDeliveryPlan.php deleted file mode 100644 index 5a654206..00000000 --- a/docker/statistics/app/Models/MaternityDeliveryPlan.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/gHgv328mFjt6CUbcdinBJCMznVhnK0tLHOKgfdYezP9fGUidO8zkdL4A/FbG0dtCJ00O2fJJeQjwvcUtB8m+PKdoUw2dNu+FYGYceQVoGAzCWvFfKefgIDjCyFDmltviReceCh3R9xi0mt/LNq15uA7WRrrFI5FnTzQnULvqVxlUyCekeNa+rrnaj+qVWxxiVStze7+xLzTtJDa1AvA7et5xcUSro0BtmXz7gWoeVig/rYSxQwaunodG+mhQLUqdUUsNY0N1TglSAAAAKAIAAM73J54yotLbIuCQ6r6yC3EreNI2axoWJWwNgVMDxGozCUQp/KOQUKHFnk+KoytxNQpd4HGT4cW0vdGIfTmSV833vqapBCJMqef9tDUCv9GhB6teUUg3uK1UwzJ2BOrFV2+4s1sV73r7a7EdPr+M8ewFDY35PhGDkcTThlQeALTfJSgYd9/eYfxnu+dYBXEV4aMHKMFv7AkRVzNybGV/SbHAXSpeGfGzC2RHwMyPk/hYb+0FyIi0XIUSjPyXoPy93SbkWcMXsUB4bJIRC8JBV/Qtn+OYwpOVoqlNFPU3lPDOzJPBZ6SNtk0IwpMGSgasYPCiP1Hna//zT7D7UAFUVV17aj4XVDPaEHjNRSYopiLHowTnJLT/yNS0wxPGvx1gThOug7OGL0/AUdCLkD3IHDIafcQPYE2r3LL0aLAmcRzX3KWuvtAxUkQOWiTpTcQCRi3mrpxmJLIrIXb6Ld8pXrl1XTgaElgLjFRhDplTQ4fwe6qdmmC36B8bgW/sSTMPjTTXnPEdVymHOuIGMmIk/LEAkgSQIvElTQVoZWlHj+FG1q66e5KTmPriKwZ8XgGQgoc1P6ePDSPFDK1TjsMiAzeX0txa3B7ITtvAKAEoZy0BDujkrPn83oth6JHIiVOydjSOdNFh6NHWwmYoe94OeHgUNHyxvOfDueraaK6+mot2gUQq2/trsnrHZJ8ZDpz/DFPPyneAR9cSx33NClkOHDdxMZUpRd5GqwAAAAA='); diff --git a/docker/statistics/app/Models/MaternityMotherHistory.php b/docker/statistics/app/Models/MaternityMotherHistory.php deleted file mode 100644 index b2a1a8e8..00000000 --- a/docker/statistics/app/Models/MaternityMotherHistory.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/gHgv328mFjt6CUbcdinBJCMznVhnK0tLHOKgfdYezP9fGUidO8zkdL4A/FbG0dtCJ00O2fJJeQjwvcUtB8m+PKdoUw2dNu+FYGYceQVoGAzCWvFfKefgIDjCyFDmltviReceCh3R9xi0mt/LNq15uA7WRrrFI5FnTzQnULvqVxlUyCekeNa+rrnaj+qVWxxiVStze7+xLzTtJDa1AvA7et5xcUSro0BtmXz7gWoeVig/rYSxQwaunodG+mhQLUqdUUsNY0N1TglSAAAAMAIAAC3WFuK+GxPmNsCyx9JoxUv2unKT2Pogh26JQWVFfFFTiCmlzDLaWTZHTAE6WCMMOejRm2uSgkm6EdVu3HAnhuM2C+dixIT1yIie3RCS6BcO0qGDD2v3q1GTMIhqzGPk+X1gBAowRxY/w/Aw8nUi6amtR2aYIIKsX1i+7eIbRFehDCwDFNkVx2fxKN7PjP0K3PaFYBYC7k1+S5aUOBy51xwB1Y8AfUgdfeqLveIE6M00XUJZlMwBacC2ko0P1LocXDhjnm1PEe0iFHfMGgpM221alS1VLeDp6mN1VMssU2bjSY40hbPHmbwzd4n7UtDmVzk2dshjNT7j7yCxDtUPLmlwWkU1TsrnutWlIyad2TrQjHXuciZLmrxT44HakYkiypiQHs+XowGT3jjtaPascS3KLh8PZbknknmIzo5sclz48GD+76ZI3qkabttA8lzzPnZQxZEV3Qvf9SO6mcEBbv8ryuowm8t/wKz+q9kQ2InFbPTV+2F1Aspuze+OhN2fcTq+7IPf0yQY/W5uz0a8M9mjEwoqDJadaYeEjrlFUyl6r7efR9W84UOsTWLOyWTKnh4cuj8XykiM8pDSv54QXg37zJ7+WEDFsEtVroEaGHWS2YVaJrFdgAuVyK34eT1N7JYDeQZ/7Oum1bX0jdJYWHuF1m/QdinhvXYm2En8otB/VFDy/J4x0fBISv4CD7PiEEt94VJxhHHFAuhlDyz+ip7Xv5zrWjMmXIkehKkRuwLuAAAAAA=='); diff --git a/docker/statistics/app/Models/OtherFacilityOtherOperation.php b/docker/statistics/app/Models/OtherFacilityOtherOperation.php deleted file mode 100644 index e38f3a4d..00000000 --- a/docker/statistics/app/Models/OtherFacilityOtherOperation.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/gHgv328mFjt6CUbcdinBJCMznVhnK0tLHOKgfdYezP9fGUidO8zkdL4A/FbG0dtCJ00O2fJJeQjwvcUtB8m+PKdoUw2dNu+FYGYceQVoGAzCWvFfKefgIDjCyFDmltviReceCh3R9xi0mt/LNq15uA7WRrrFI5FnTzQnULvqVxlUyCekeNa+rrnaj+qVWxxiVStze7+xLzTtJDa1AvA7et5xcUSro0BtmXz7gWoeVig/rYSxQwaunodG+mhQLUqdUUsNY0N1TglSAAAA2AIAAFI2/zQbLH6vxswfYaP/7GzywtBbOaFzDYrIFlW8l3KCmpcPz3gbPnK0pK1YJ96dGQXppHmdIAhRX5EZK1dgl2jJuFm9zkzB0ant7tqYBJi94a4pBpv7bqnuyh7oW7IO63c/c7pAU3IQQs/ur6G9xk6tWxsAIA2qqxdnvtuYqy26OofUTJZC1OPV26V0AdvNKPV100z0Y1IO6+faXXMkjkPJc0eOSE+7rQ+PifHvSnaPfJemC0b5sQNcirBgDOftBeOk+m8tK6HT7xe2JHAkB5vtAhNMDMXOdtVfeliiqevr5uRHCwR6YJSL+Wk7IV+xTRG0xre7ivXNzp0KEegG96UEPqM1EXtMEm4ybSF/M/U7WlT3Jt4oVzNXCw9sg6LCyGvF7zbFrDkcw1jXAxemhFdm3O7GC/3cX7S7gBzPhLkeVLmXpkQ42bt6bLfciqqAc6W1m0vYsVGS1/tGk7MIGdh3oP9L/x/8yEbbax1xT+JOmx0rt4Pa2Q0GGPqpqQ+J3ATd5IWMJcHjtn7P8FV1zv1je1rEdh+859pEfAzvUDnLUsZIu7shB3cA+7YQJd9IvK/Nze3eXZ4NR9V6cRxVIgbWDhO8dY3XWU9fOnwhC9bh6XyDYImMVXPKDHmgnKkio1aikQ8h8jXw747zR/rm35e1/CilsjIw/3I+ogXP3E0A86//HluVymJsd+W5DcQvlldUfg36CMhvRs1Kfrwe2R5EvJHTmCy7o51LHe3+oVVcp6lh0DyHSnYGKT2X80USedj+BxGyni+rigkYmna4VUU4KMdSdbZghFzwcdQAsScxBiUvFuQ1mf+3WGhmH1aSmHpqq0Ymq8SBRfDUgH4eywnJwIkbsnrYpyjJiDr5uXgn3h/MJPS319YBROVTUg2gsnyftQ4Gaj0fftXdhiDp992yV8kptUp8SErrd5daAy4OSQi8lD6LWKAyr7269Vyy+AB30VMxL81HAAAAAA=='); diff --git a/docker/statistics/app/Models/OtherFacilityUterusOperation.php b/docker/statistics/app/Models/OtherFacilityUterusOperation.php deleted file mode 100644 index 9f8377df..00000000 --- a/docker/statistics/app/Models/OtherFacilityUterusOperation.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/gHgv328mFjt6CUbcdinBJCMznVhnK0tLHOKgfdYezP9fGUidO8zkdL4A/FbG0dtCJ00O2fJJeQjwvcUtB8m+PKdoUw2dNu+FYGYceQVoGAzCWvFfKefgIDjCyFDmltviReceCh3R9xi0mt/LNq15uA7WRrrFI5FnTzQnULvqVxlUyCekeNa+rrnaj+qVWxxiVStze7+xLzTtJDa1AvA7et5xcUSro0BtmXz7gWoeVig/rYSxQwaunodG+mhQLUqdUUsNY0N1TglSAAAAmAIAAGmYEePIAKommmh0Z6IgqDChil1bTgZ1YC44VcjotWDHSDroWDkZoUj8eTcz1i95Ehehl+/Zrmj5XbjgknWlFL1/lqmvVe2E4nh65yf0ltkjWDz9NLBxg0OmqremxcqtmQtVUOG6Wye/1mFNiAZkSFaYwlTGsTSc2eYdkBzTAEY5hwXKOSRga8F/EEuSHq5qQ9RRS1RNhMDXSRsMaRYuWVe+WhRXfKS1sbWzsEo/Tw84J0MQ5pegAqLlBLHKyfSLoEYpgkSkSYWxCmL3YRthWN+BzWMP5yDFPHVW+XhYVXLBCG/3SrsXnBDdgB+vY7N931rYtQRQAjz1WkXuiXNOIr9g0YgumLq/Fv4wIVO6Q1FAhWJc9lmZXfdBkUMlh/yAs92Woel41jUMQtu2eOy4NFomJU2shunWCsOJXgCLXWTUaCruapPDWoX1TM5doMJyDwm+jU86PbkrSX7l2MsINYGzyk+yAHdtNl2uKfRxdULNqvaT2vu/ec8yghAU+ZgI15mGSqWPtOjq+J6ohPFxVBpiUwtRs6wBVrQBVBfEqrgf6tO8EGdqu9xgaTAsbTZA9YM5PkgGD/KMUo3shONqtWBplB0gRHU+lnYo1wBf8dy/lvvdeqz9y4EIEK9msluufJBBWcC/pAKRFzBgoGy6FqmJqObmAwc2BQ9GGThVZjl0JjEWx2xzDFa/gNws/xsEI5hpcwA2Su7rZV5bKV5IjdGOFBLl9a9Gp280Y73lZc9Ws3IVveRSXa2BCYqQIKMtbYAw1xG5tZ+TDBphsrMYZBSxzjAVwxAoBmw/AKyI0xpUHl+JZjCkQot/Pk8Ux2gM+vEux+1GU+bOa48qav1JInTd8usLXVpUMaEyMM9p4J8g7Tf35dK1DtsAAAAA'); diff --git a/docker/statistics/app/Models/PatientDependantRenewal.php b/docker/statistics/app/Models/PatientDependantRenewal.php deleted file mode 100644 index 6903fac0..00000000 --- a/docker/statistics/app/Models/PatientDependantRenewal.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/P1N8tNQwaczrnzVH2sSYRhbSQnENOtSKoZ4ZGOu21RYN/pYxlMn0BQqw7w+KxLvV1c6Y3c8wnMzgFr+ZYPCuMLaXumG43QrPBQS/WIKY3G6zIrMt0fwqFF7etrGYx7dPx9ov2T0Ux9e8jjl/kqQyQCzALthvEeJTkDsSlrzF1DPi0ACBQzVqWW377JaPfs/dngPyOcFoahOUa1i7qXWnB8Ba1+XYxnNaaHFMLUOIa5EbL0i809mcxOp4claiIrtWyd4j9xTYfBhSAAAAMAIAAKC9P915X8s2mbKA/RHAW9yQ/t46jIL6lxUlxTcq1rlKV9TZWtTtIrGfEDOVDsfS89tuiga0BJTlHPUjhJj/ny7x1fkxch3ZuGN2KTCA6F/86tieEkmxwEuKwfI2fMvTmoLk6/XWOTMAQr9zJXjE9XqHWXZwizIKsj6/DRNifOGOpg7qT7bbWboBuOeJIVcrcTFWCNNPTSuIkQ1vLX+AhH74rgXQAClq4aN1+nQySsow91goWk5wynH6D5o6EZC/aY7BqH5fxTUS0KtJzsX3OZg08/a+HJhEB34miGbtGkj2PUzgEThrIuBWaUr1wMpXdB/QOkSV/uWEuGTafMXJkuDue1EB06uvmdAxxymjKcqAhk2eODQWpo0Uo/mFo0o1miErZUDUFfL/802HkAvbSZt+VeBjRxyXJsq2j8fakbrXKLHyaQsll4BdhPGsq5V6TDUGak0/O3oo5LVcrIN60Fpc7Tlb/xrab7wmtq63DWj1CcnXleoJU9M9UGFfZ5XHJU35y1OmCGZGuomWRl3zVmQaoceeqxmvuxT3IbVZmb4GhzcZv5nM+OytN5qhWnhgAeBYBzFlxDimq8Yd34JS0/mH4py4Ng7pLDBq9n5yDyuIdPIPBcu35ouikQdrhx6zl3L1ytuoOcwd2g/nrGeYwyNz4+JFaIsJFr2l4b+Q7YWMbZ6q40lUgResLLddfAf/lbwzeart2RbDmgisuImkvNyYbWwqqCk+5xJwioef3qhwAAAAAA=='); diff --git a/docker/statistics/app/Models/PelvicExaminationAndAssessment.php b/docker/statistics/app/Models/PelvicExaminationAndAssessment.php deleted file mode 100644 index 6a0c9673..00000000 --- a/docker/statistics/app/Models/PelvicExaminationAndAssessment.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/P1N8tNQwaczrnzVH2sSYRhbSQnENOtSKoZ4ZGOu21RYN/pYxlMn0BQqw7w+KxLvV1c6Y3c8wnMzgFr+ZYPCuMLaXumG43QrPBQS/WIKY3G6zIrMt0fwqFF7etrGYx7dPx9ov2T0Ux9e8jjl/kqQyQCzALthvEeJTkDsSlrzF1DPi0ACBQzVqWW377JaPfs/dngPyOcFoahOUa1i7qXWnB8Ba1+XYxnNaaHFMLUOIa5EbL0i809mcxOp4claiIrtWyd4j9xTYfBhSAAAAaAIAAM/f6jp01gCj/NLM7iL/NSNwZtXzDocpew0yf9TJQe/TSaJq9YFbNBbs5vm4cThLk6bBBdcNDQ8Payz1KcXnw8b8xckh67wSX4QJIxdnro4TA1zlZKkZutkWCTmxhnUDvQMAPYWdjvKSMonjP19ShpuvEztphPOP3gXN1YfZiY/JfW3+9pPefOeav7Frz3NAjc+JKqR4+LwxQA0+SV/xw8Fdej1lPXzkhPFoxFXutEGWpiR3rPEbfn7T27OArGVavPg8tW37wLmWeYfObR2yRBNG42Mn9a1C4O4eZs8DSVHsRgoiH8HMHKw9lgoVfBH7d5YVseJs9YmHz7fdT4Y2HTVSsEnless5j71uXT0gQbtpM6QSv1Ota796nYbdS69PVSX3T54lN+gGwkZ3WadmlbMDVfCZo5oem9vN+5u5Z084IrI/WaX0n1vCRZOm3ffl2GgXkWMH8W1eHW+rKPMC3kCoDJOgyzIi6nvRrQE2VkCgOuL+eGYHwNj1JklGU48bt3PSHFsuBJf6/4TqKeaUIbBUz/G3JkLG63VBPNGM6FGUC+SNCPWXm8dRezsEY7klJNbO6KI6ZLoZ4PVkAJYcxK3fA2XZ/9zMoOrmM0StbDBR52nErAAd6gAPXc6+EPUFhpMsDxxbRLgtdL3i0Tmuaklxk03TNo6IyomuhZsbylV9yLAl14M37XERoOO/pio1YwEshsWfdeJF6qA3N71Kc11r0J6/ErmWfUldi5IJz8lT6soO/AeNRA4oXLblACLwKM5Cdl+kDQ//f+AklXumeKABOphd8xEubWKF5+i7hNBPRLYdueU3PHsAAAAA'); diff --git a/docker/statistics/app/Models/ReconilicationReason.php b/docker/statistics/app/Models/ReconilicationReason.php deleted file mode 100644 index d610f429..00000000 --- a/docker/statistics/app/Models/ReconilicationReason.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/i8cooOhEkEazP6UoDmEY8pSStxg0c8k6BmzW8cEmyMhXrGPGv4JFeGYmqMdtCMfDtEowjqdXLLhedV6oZpBdMTuVV8t9oF4GFg1Cmu624WKVHPTFkOe89DWsmyeUpJyJmlfohwdIElBGpIT0lBYFXX9rNErXEgZbO7dnWx0SC9OnP2XKv/zx8qZNsQfSxrg+99uMqb+xjqxDnbM/H2d8BcaLft4RGRHoLYXC+0dWyc/xE4zea4e/TnRriZe1qhAJmJ44EUo8zs1SAAAAQAIAAIrxD3Aow2it+hscQQBcTIycVGCfQ5w1ybjv5qXOXnKc4rJnZdonjQWKQNNOeQs+FXN4IZnDaXgWDrP1jv/HLlysaFMH+YpImuJfd1L/FTwLvvmshaOVT6TR8G++w/xdwp9oDhfKaSVdErRYZsFaIkDUmX8tqxiODLFtyXTR1hsUVFTVTIWKuUvgW64h78hkSweIAADoBRnVrgGON4f9xMyEUTsDIjgIoId/yhGF+2bb9oWh1ExLkM1XDj8F+xUNSq1Fz+HtsvdBjLA1CnUaH5kknlK9C82jgz23JmgzGc8r2eUAVAPAA3kVP3Zhcmm49yovnn58H78LKU7qFRrPwNvBQ0PHO28epQYpwevPMyTQSutB7fmCd6afbRoQEv8EzLYeZTvIF5UKDgtizKtuPYbZlfd07Ourvu03iHBk+brLN2JzZ2Q2vgC9bfkYLEdcjvCxtDqKwFrjrJbys/fSMrGvnX1f7jTDBB8hqvxLya1I0V33PwhWj5iep5sA8Tx0FHHf/yQNQz6av/e5We+K3RYAsaLt6i1BWiKo9fLCuHWPhKhDUqiO4cWR0cKbILZUSKUdnmH5gYfGXWHpu84xxScriUTOLMlKWQDGNipoMGTm8WuVP07whUW1NcGB9ZJ3+UyROllIQazR0uFDNe/4HLsy/HwzhpOJg8EioBMhLfSQdIXvGZjYErrE4M9eo/16gAxxutW7bHzOgJPhgRXNy1S1A0IhsrGwzEe/ecQU182FBvAss9A/R/6nyEUuaUzFRQAAAAA='); diff --git a/docker/statistics/app/Models/ReportStockValue.php b/docker/statistics/app/Models/ReportStockValue.php deleted file mode 100644 index 44a591b2..00000000 --- a/docker/statistics/app/Models/ReportStockValue.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/i8cooOhEkEazP6UoDmEY8pSStxg0c8k6BmzW8cEmyMhXrGPGv4JFeGYmqMdtCMfDtEowjqdXLLhedV6oZpBdMTuVV8t9oF4GFg1Cmu624WKVHPTFkOe89DWsmyeUpJyJmlfohwdIElBGpIT0lBYFXX9rNErXEgZbO7dnWx0SC9OnP2XKv/zx8qZNsQfSxrg+99uMqb+xjqxDnbM/H2d8BcaLft4RGRHoLYXC+0dWyc/xE4zea4e/TnRriZe1qhAJmJ44EUo8zs1SAAAAkAIAALjazB9LTBOFF+brIPXQNwZr2n3jwHDox0HZaWgWNrHtH5xuSsp4CaewWhAIE7LXVAHR53VxSUIJ/LmX3/viuJ4i/iAiTi0zDxgoP4LFWZncubnYE8AHKOy9Zef6v0g8sCRRb76JtAKpjed4UGLuPimh5LOc/nDIjlxKlwIIA4GxRL7P+XqEoe7R+BEq3VWbXP/+rLU534YTEF2TVTiJHye1NEnfIMEIEJONu9B/szFi7Sw4k+FK1iRRdlyG5n6oQDfN7Vz0/Mdi8L8c1Z6R5a3IrNL/DpYyjmChY4gvL8x6LJ/RoH6a91LNdATaPmEp6RN8qtRoQ9zaR12JcjjoQkNmW31yh1bg6LVy+iJvkMduRqgDrh4GKLBIbNgf9/cR1jrJALiwCQS8AlQ9A9uNSlUFLrZWsNG6Q5s2fYbnZ2pCBHrPXg1AuktteSdY+E9gS+Gv4NXBrr61wj/lYplXn+TQFwWv/d5k6bSilq5KUnQlt1tsWysupJWqOFXay8/GPJgQgp8Sj+fY48fIrFBs/X/D4urJ9bQVuPa7mDBii7DfaL+Nn+g/1IHruuPThmoYhDEl0YllQ6uijNHlYTQjtyOMP99zJsdwWwwWyp5smPA84WF/AYlJHlhCv7SPJM8yZ1M4VMiuOG1cBjcCZ3DkGO2Yr9Rb1jfC4oshYCj04tUhnPUT0sErHor0BDMHOE/HNO2HXxHSUalzDj30UHrHhLnsVNEuJ4bpjDaRyoqlcSppXULMUoxLVNbqF37uUsS8wgUCoE1UTdOPNjRNLYl2FQ5BmSFRyjVsmRiv5f1l3HFQIbyR/LAUIpPw3mwxPSw4uFFltkZQfoT3yXFUC11UmBprvsWFD6UlyJGJqZa/e3JsAAAAAA=='); diff --git a/docker/statistics/app/Models/StockReconciliationReason.php b/docker/statistics/app/Models/StockReconciliationReason.php deleted file mode 100644 index 45af67b9..00000000 --- a/docker/statistics/app/Models/StockReconciliationReason.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/i8cooOhEkEazP6UoDmEY8pSStxg0c8k6BmzW8cEmyMhXrGPGv4JFeGYmqMdtCMfDtEowjqdXLLhedV6oZpBdMTuVV8t9oF4GFg1Cmu624WKVHPTFkOe89DWsmyeUpJyJmlfohwdIElBGpIT0lBYFXX9rNErXEgZbO7dnWx0SC9OnP2XKv/zx8qZNsQfSxrg+99uMqb+xjqxDnbM/H2d8BcaLft4RGRHoLYXC+0dWyc/xE4zea4e/TnRriZe1qhAJmJ44EUo8zs1SAAAAGAIAABchxuagYusdvLdNH3Nx+LVOyLkTKCTTHNveCvcXRY27zVv8NT/qUocfYPesUEqb8xK5VOVRvSDBcBQIMytJ/ggVrm/iuQaPBXTftXodRfyWoQxytJv6srFtUTA2jEuh6n2Sd72StIeKSZHFR8amdI4nzCa0M67s5ujvIN1oTOIx4snpdJ4bK4LO2TWh3svFoaQ4ebiiTo0iXeNyNq/gyaYqJt0MA7WyxwD7udwFwrxi9/AwdKry4b6O2jUXwNGVNDp9KE5rAUV08TurtAI4iBX06I2Pv2Ru/Tat7kKIDZ1SBTPMr9v2K4x5QzzNha2i32DjP91GFR/SZE5dFxBWtSJj9gHV+xV00CFijYHGNxsRdnfbSVjyalXiWQdgpTTw8zNox0vyFiL1beVBfnCgw88s4Hd5FNZxhl0bOyIhGHm25E7lYCUO4AbLf0hQyI8DeN5j9tLO9Ca7nkMO1+/THigEFkpeyMkg3szgbnLcN7d8evuyLhek8Hv9lfUF7Ii07Dg80/XCW9OuhXyb9PC2EQUk7EUOHyiZ3sFakrqbQay5NmDiG0LwUC4NSgOBe69PqXBab4zntznNTp2n5FNJLBWX5SDrumoFB9N/IZiYK6F9iJ84NlgzzGtzoia4MtGhcOez8+ye/aNjHype+U20e4p1yv118fLaA2fURMW1D/UMuJIXTBiysu6G6BtroPXlD1nwJfewUu2wAAAAAA=='); diff --git a/docker/statistics/app/Models/Subscription.php b/docker/statistics/app/Models/Subscription.php deleted file mode 100644 index 7c6818a4..00000000 --- a/docker/statistics/app/Models/Subscription.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/i8cooOhEkEazP6UoDmEY8pSStxg0c8k6BmzW8cEmyMhXrGPGv4JFeGYmqMdtCMfDtEowjqdXLLhedV6oZpBdMTuVV8t9oF4GFg1Cmu624WKVHPTFkOe89DWsmyeUpJyJmlfohwdIElBGpIT0lBYFXX9rNErXEgZbO7dnWx0SC9OnP2XKv/zx8qZNsQfSxrg+99uMqb+xjqxDnbM/H2d8BcaLft4RGRHoLYXC+0dWyc/xE4zea4e/TnRriZe1qhAJmJ44EUo8zs1SAAAAyA8AAI5dRfTOXsemk6ejAPGzXq174bDm2eUbN/sM0mWVJGRJsWXZm+FGLE+usQh6wa6iQxWcuj/cX284kHIRDc4LFx9lFH4hVIlO6Tx1M+y2/2XGo1DD735+YjhXGbaMH2+1hiKDwqAjU5GKqvWmUBUA8x989yDOuGu0NrUkUlaO5MWTXg9KOIeK5Nt30OO24Hae04+QsrLQ+ogHrnjACDh9BokE64lDfIE+XXZytyJ8O8fkxeD95ENE1r5/Sbn4ljUbAR12QT524QJ2htr6a/xhPzwPocbQaZb77a8jFXI1169p7NZIGPQfsQntL/lzDbfsfUSuUcgs7/eq0UH8i8lTXRZEOcA0Ezxe3iJ6dbxVgFecb3Ki6VWpB3QiPNha2/D+ca2mmVcW8wZrlLyQr2PFTRWxlnPeik43fS0oNC3aIlBK8mHA8r3HT6qw5Oz9ZNlg6BOYzgo6EGDDjw2WKvmd5Y6S3yPiSDD+OoeIQ/QJHkgnz6Fw8deIaW6pmw9STmvFV6hYWoREDoVPT7ixFjlI8Ljsxf4z7DJzC2ZK7oZvImTgHWqgW/itUP+KmAiBmrFHkUGh2y+cZY8ZjDXGucjIetRFAkpgwA7RRKC/cSche7utkNH1gEwaIp5wo4foeU2HKbnHEqNhqv1bka/F8JceR9xs9BwfpN8kcYip7tsWY2G2+SmEZMkqZfUb3D6cCBUphxoYCywlHDn/ed0MBknuA3eQXsdObrn+XHeCLvRw53pZSIROAOO3LE5iWFlwAXzKmzxms/O07x3QVygA/cZ/uzbmoG1JzRgOPu4fZe5dt1uQ3Q2ZE38l4VuLwON8F1kdueJullHpiA2qOO07lFsegHa1GXwkzqjKED+1pVyNtZx2Z/W+I52REKw9Ovm+JOAi6qaxihseQCbsQwCLqR8KhFCcpsE9IMdl315qWgP1El8Bo6XOc9wLcTx387eR5ffQeEkQL+nQqWbLY5savkGVDFGqhifmPZf4/H9/H6hsUcbAMQ6wRVYoqOAjdzH+D0zc94zl8fnxjhxdBeXkyOVqaf8V2X0ipXhW5z1/oPfHXfkAEIf46UEQ7BjHkom1vdwtDYEECOMjTEYotOOmjW1L1rIBDm1vdVIGnIU4DzmYza4ZE8C//wfVhjXx5a8XFlxUdMdgaChffKbI04YH/3eRkl9G0pyNgX7BHtbF1gsKvaye5Z/TZ4XSaun+rLHHjCo8JhfhSPfc7/IJZpf0aVtoZ6W0GRJSM6KoqnxySLNfz5XK7KEirqiXrGMjwAB14QwXXSgegfh2X30yYEHJ0AZybpqQf8cTmTi1TuBcSMhOiME8B/YyIvX5pDIBcrDajlHOSrti3JkK+qJ1vIM3LZ15OHxyhNoUPEpIpOw0RKWvblG30h7Na9zWlL7C1Xbo2NVcjquH9dsFJYXg3byi0gjNRiLKoBhl0NqrudFZcbTapmE0A5BWKb/Qx8YImPmqnC65Zv7jiW16mZ56lJZOoB+MdxAdvPsh6aqK+aLNsfqdgMmt+0zK9LnPepD4M2s5IY8KbyYCMwPcKSIrZNJDWPNB6oJt7fpP2799pSCiyZi8j7Mill/2HKvE3ZvVxEz1x0GluApsQkwGAC7ylOlZRkO01y3/Wiq4mnfclp/8znR9bIJLHkCLx+xAEiU/9yyfLdP5ZrA4NhQGQW5AwWZRbzdgcxG9TWdLdmb/S2RVkK62H9SPtlV6QSWrgXYW2wxGX52rOP/jLWqnjFOT6GD52yTteoP0JQ4N3AqZgzFj7BuYf6jADvk4MUCWNRzxbhmGBrtnMwAYd6EMALMoV2219xXM92RlPO+Qm9+q7aUSMVzbeI/9OyNl7EnAjz2MFx1anxL85lyJOmt/t4Y1hcEvNOqKyodKql4h5naupSely/nmp8Vh3jDrzeGWzPcJPhVh/AZjU7w5GwTstNlkjpToSpeIp6awxVDVZBo7yfWXsoxvjLUevPRBFeUuDPHqCLlUSBnimDepHIvj+YpYJ9+dBoJvEh9RvQxdZUuWIPhiyhwANk1S2otRgNRZ75lZcT7ewyVp2dDbaNBB43WRDzHFx0mhbJjULPT3mwCJOJ70NCadWOS3eKKhvvwRqWDnJ5XVdvzrLVGGmnnex6IbkLMt0uC0jie5llG6Ui+f/vYHAeU9fkgcAx2wOjz+a47mQQ7tIv8Kf02jklTgoD5MyFUliuZ/1YPx97gsEcqRwxhqac56UMYIPr+HH98qBYy8Tq67IIeV6Q3zSoZAF7JSkXs5MuSFe9+UCM4X/NhfPWypUvrlG18NNADeXTc/FaCABmPAupnid6SfTXExdVMexU94sQNJ5A4ySndGqj2n6NqRRQBKnPmg8SHzQ8hZa7A+QSLjHQrpgAvKlb+FMnWxp1uPaWqQAQ0U6pX4uGgApk3b9YhUnKN6tN+eRIV4HjPhAJlyB7mI6R3oOz4HEHMg/06ql5k1Ee0ZbUJL7obTnX7efP9q4WzHJpwi0bIBI0q/+Ya9K/Lt+zdn5v1wi519k+VL0DLZiSAnEoRc2NNjRY5fCACAwsT7kAYD9YdZTA/64Xi0t6hy8SlX/NSra4s6xbD2TXZR6UOptU/LHGSgqi20Qk4PjPjZF3HTa9/v1TIrEcsLMBA75VzUIgh6rQ6z7KqDUiQZtfI52eygMphQBhsgjc8PwiKLth69WbGj4Oyu2lJAeuTSvFpFf+70eoDKFsSnCOsLnFNFBeXw08wjrffq5RMQgDbF1TTa801e48ZtLS2c5qEVtOPZlbYLchDq9kr7yL/r2ux8qjFOgJdbPX1h48o/JWrZPICWKaE8vm1mVS+vvAlqB4hRlq1ybZSnauKNefUsWTk+I/gAqBQ0+hjQE04Z84TVgXrOOQ307GbPY0ZtKkIJcju6uM2OsIGXv+0xqm7dWY35VgV0iainv4FsZcZhDBOuP8AUZOuDTkL8m6fYB3/WUetBhWit+CU5qI+kjGZunpSX14b2avEbpcShtujryNZfLkd/Ez7iaQPatA0WlWpCMBPJ+FYZQ6l2mMNirIbfLodfIWOsniKLqVT7EQLDfy0yiyJZ24o7jyhqLSNFEwEqic/ggsNkjPgCSV5Ae9zSBQOHOtRWVjSLZpnHCK6Ka0yKYj/mepN46fgNnx2R6kFf0T2MWkb0XUKVtB+Mi4XA1xz8wPqoCgye41iPHKo+o1bnOxp4w/9Lj4VQodPoJmp7YCpQ1MdrwAxx1nZkTkmaRM3mn2ORrEegekXFdQAKUFp8/RdnueuyzQDWXaB57gGSCThIunuwG3rzcrQpQl2OEJn/N3tsDy0OVFG/IEATDTV+aSHHVuYzkmDpiibm1oFByE/cEzSXpAmA/mi9R3dEJh2O1oZGEx9jUDmTx7xNoMdgb37d7BZlW+ny57inBqfASKsN8TdsnnExZURUkS5lB0CXec+EFl++Bd1TLrzLlzS06aNI6THHrnheE3VWADYU1Si48/cG4khZnoSjTkTk6wOyMyadON91Bb7CAPaAgS+/HJJMjVCIKi31S7EJs/7snL0CV15WEk32xYR2hAJNsSrJ3L+LgX9y/0qe1J2lpHU/w78WsJbVtwGTmdmkqEX9CbkBtSN9lyt+MsKaXf8BbqdW1fWc+G2CSCyY5GJ6B/g4zFCpAn0g8nqPz1fnPp13aQFkbBDxYPmVuOV9xgkemyg6tQ5dwRZ3f20M2xvoOMwexKn9A6UeTpCcBeOxcFjWRfo0wmAGOi78256zIeGUdMerrNZylbejk+SUmCqZnsNq3ybwl7AU7wqwHZp2dob8eje0s16ntrTXUyrda71O7IlguQKTMug95vX15w03FtdN+GF7/B6rQaMk8wk6ZysPlgP0xtkpwEuacwiEzi/Kxn/OpJbr6/1SimHWFtQAR7SsLn/HLf+4MO8mmTr5evgMR8+OE6S2Rltk4rQlNoZWbbdZ9vUf5GKaYLcdQLR0WNOM3RzcLeT3L8JNjw7d8Quqh5iDypaYjbQiUiKleh27WtV+yova9DqaDioeVjHImAfrSDnleHzaqDDP9Kw3Nkyxr6C57hKBbdciZKDt3t5VFgky7p1pMhKerHxR/0CPEjTyHJk7zSjjbAFAt9RFvv8b52kR0B1/+JYheYf5g/HiKXXrZ9WmH0sJB60Psn0y98O7CpeH8nEHbm2+3hhgtsyr15gEyP7C7tcG/S3FKOg/M67bYMFpTas1GfS2JFaNR1wX7mhV+F49s4V/nPf8mMBzqw9K6IAW6WN7tw4njaZkoi/YiKvgxToffgKb2+tlOxChxgOHHeO/6a2l7OBp8bIgpkb7PbfXxbXMxXOU9K9UK9YNodhCYT07Q6wzkYdJXSj9GfapHGCF+3yDl85Za4K8TXw3+2sJI+4JiKivlih1W/NvlVhVob82LL/jTsNS9Ugr6AufuVkdyefdGhlFF12y3JLbBmHlBNJv9+UpTmvrjDdjY5wTcmo7zc2LiH1+zRyJQyIB8+d7BbjrV+fhU4FTQ4kqJ40AD7dEDpGmozKFFOTsmAUUpBKtY24MUzDw+sY8Wef1VfAhSfKwnbElGCC84cJ+QvpKXG14a+s19K6npbb/qwYUOy45tRE5DfSDsJjG+rwbVjTY4B509Lx7W+h7wjX+nZzzKrgalLN/xwG0FtUoOGMvPS1KfbG1+HHcOlc1tKYEso4QzxsfLRJndcbHj/sRjoZo98aNWgBEbJab5idBi9YJEvTvMN6VlwSYxVNndfnll8T+ssr74jfftrph++It9eILh8Sk4y5RYiztUMbTGk9QEqbIbSN0fwVT4ctJNipCAnGUWF3P+574tnJZhweIBSXfloHgRWGUGtWhpPq94kLUaKgRSjW53X80HsONCooFfmdxtOLfOn7Pydv9FOekSoEY6Asfg98dV/gHtHDW1eo6r5YXKirqVLToyNKXTOeFda8WdKJR9SKy4WqqJfm3+fHgZdk1idvFmuTkUhW4KCBPDrXH1Hhndu52qVtd5qO5vBPWXq4146ZIOaZiGKfR1Dxz6mK2s68zxVyamPk8MxW+ZCZY8VkaU065ALUyulQbIxP67l4MH+VF9HeFlB1jUek6e2NQ4ZoDrc8W+R2rtccy/uAQQ8qQQaU36TcJ5L1+BaB7BKQrvmXdM1MOu83kLCqujwNeGD1UvYP6+Rkw4yvH5zV/DX4CiHse2+iIc6Ex4vBLVaiMXkF7cdKaR7SM8f0Af+LU43sZhmqcHySI/XGHp0eymvP9JrT0zPlwoBxwit4AORZvV2s22zBvhCcYB+C2385t/LTkxYuPR+s1xPARcxS6JDbhalfkg0QNO6SZEsDqKuuQxlM2nBBQKSPSnbZKhgMzSrtofQGs/5AYghBgkFZfRK9mx2zxmbiHIQ5f9RYXRa3bPYNjXLOZPQe2UUDmwYYhAAAAAA=='); diff --git a/docker/statistics/app/Models/WardTreatmentBatchDispensation.php b/docker/statistics/app/Models/WardTreatmentBatchDispensation.php deleted file mode 100644 index d4443d7a..00000000 --- a/docker/statistics/app/Models/WardTreatmentBatchDispensation.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/2JUmQ5mPmWKA1TEwsQ06RvqfnxcmC4Yd8fv8FlGt/DM8G73V3lMApULLHtUzj7BvtBwnTvaKybsTOEO8+nfKEqClhK9MdOjYnTWOQpkbbGVPcjTgduIX3f2Oyz8HUbY9lnlGDo1jbujUn7QHGJkED7++HnjCH+Fslm+tR5QjbfVQA8ddJTCl2sxOA9gRi8qlyAVa1Kc3Lv3Snb2sNNRRynMYPVoBZhNMqHSt1IVTXx/1pjFrOU7eLm3tgl3qUj0QjivmsPZ7K7JSAAAA2AIAAP7jA97Cood8oa0nUQGPA/eVgAQWulPIMNnpSFz9rJ860oSGbifkynVnAPHFGwb/D7fxsr5KYD69XEm9I4gaZxAecbAk/lOhhGB0O7U33UsBYARNdw/irlHfD/ibEgAyHDXKwh3vJpZh3pbjV+APYvv0uS+KCJbqyzAeFpyNeljOJ2/4cGY55r2qFTiw3QhNYSIsYUTLUzY/tbwcY8y2XqVXU0K4yhzwMANUDrkTBOW+6/g/2rHFSVMuay3mYeArwJthFCPiUbDvfaU0w9mdz0Ffns3uwAO4T3kie/Mm5sSFROyyT0vsoPErAFNXreYacrUXeaXmxUwBb8IAhbrJwFMwFjESKyLQ6PlTdQbdID++102fpE7F38aG6p7OQMiDjTQfMqWseequXouGURNDG5y/nSNacZ0MfL6gul1lnegNbpaxFlk/rugZYTr3qeyqDvorS9YnXBaTX7K8v4GZL2y/Y6eba2t++X1w65i1tWGBDGV4N1bz4EHLnD2qtSu1ShBS2NPpUKW6cwijHaTdv5P9yX+4ndH4DrqywP7IRWXkKWfMo8rq1Z9lQ9AowQN4kYaOH2PQVbmrjtBvwnJ83ItcXdYbGhPat+n+e+b9U0HHd4cQUZzSOX2NAq7B1MzKBqV+mA9pXoDOTr0ZqO2ayCwX+458l2KgWYQRGO54oLPT+sDynEGe3VHP6s8ObgXmeHgCXb8FcvbpXn9GNQpWAaSxRr+F2DhoYFh3uFucOPsLJg0JYt5iE6I1lGt/30DLF59VJzpYDZCutIIVO2HmARtn4uZy1jTJB3Q+1CNfETFAzdDw3WLt9ywRPrzfbteRIO76uAHRBFxoo0Meok+Dwl9WmkGQrwINzvlkurKCZIj/H2MK1YqXyrlqVsAHVQPy6bbuGM1UwmHu1w4nW8ZMMJ38+8mNxePT/yLE5RHVtaypI4WcUUXyMBXdMCoIQf1ZYroBxopIIh7TAAAAAA=='); diff --git a/docker/statistics/app/Observers/InactiveUserObserver.php b/docker/statistics/app/Observers/InactiveUserObserver.php deleted file mode 100644 index 88a8fbfb..00000000 --- a/docker/statistics/app/Observers/InactiveUserObserver.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/2JUmQ5mPmWKA1TEwsQ06RvqfnxcmC4Yd8fv8FlGt/DM8G73V3lMApULLHtUzj7BvtBwnTvaKybsTOEO8+nfKEqClhK9MdOjYnTWOQpkbbGVPcjTgduIX3f2Oyz8HUbY9lnlGDo1jbujUn7QHGJkED7++HnjCH+Fslm+tR5QjbfVQA8ddJTCl2sxOA9gRi8qlyAVa1Kc3Lv3Snb2sNNRRynMYPVoBZhNMqHSt1IVTXx/1pjFrOU7eLm3tgl3qUj0QjivmsPZ7K7JSAAAA6AEAAKuyCYKoHqUZfahopvM2IS1G4aMWv0Lcr2AE5lEQnAsQ3IBXlwRTNFntkTLj1UVO7/Q7oWftCwGcDX+MdRvd01BafnA61R4blUrP5hrgv+D+3xmdH2mZRrB5qtmAAiiMttVvhYWzfhVCk9/DiFjeLLDNOsqRIqzEeaZJs2JG0ik7YC0OCls8csc+rcMc9QExuMDSgzvwp563Dzsj/77sALZhEazb0FAieQzO5AI8uykxthqIBp4feTb5zGBpacrhQTlwQHRr7UGqsmPBfP4QO6wFXU5IY4kp3r13CD8qVR6gAbeVsAkyso8uFdGNpp59VbjKpljo6oWKfnd/1QtOrSIck4quPiw7uwQhOB3T4nECEIotsq42fdqQHpS+TIelT4DcyXuhxnqSre31VswzI1Qs7wN32Tlt7ieyWHbFONoFH70aq378DD6pQSw29JSXY4mrgq33GczxHXmVoz9CDQV6BiAmZu+TUyqH5z23PYZGldgoeoW411p+i7TrHGTtE+Gq75LTDGQAiNimTQNqMujL6swuiBVz2UTukDBjuBaz5WXVS72EKf8cE5EwmTSStu+EeNl97ylrEM6aKlGq2ygT1tL1NdBqIxp6N5jF4+b3/IW8B2PwPakkitAD25cMqJ3/frxzrTMRAAAAAA=='); diff --git a/docker/statistics/app/Services/FinanceReports/IncomeCashService.php b/docker/statistics/app/Services/FinanceReports/IncomeCashService.php deleted file mode 100644 index a7f581d1..00000000 --- a/docker/statistics/app/Services/FinanceReports/IncomeCashService.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/2JUmQ5mPmWKA1TEwsQ06RvqfnxcmC4Yd8fv8FlGt/DM8G73V3lMApULLHtUzj7BvtBwnTvaKybsTOEO8+nfKEqClhK9MdOjYnTWOQpkbbGVPcjTgduIX3f2Oyz8HUbY9lnlGDo1jbujUn7QHGJkED7++HnjCH+Fslm+tR5QjbfVQA8ddJTCl2sxOA9gRi8qlyAVa1Kc3Lv3Snb2sNNRRynMYPVoBZhNMqHSt1IVTXx/1pjFrOU7eLm3tgl3qUj0QjivmsPZ7K7JSAAAAiDYAAAHidPOpPhz4guS+WGSXHfWi/PK/zTUMf9mY1vLEm2YbwDNhwuEw/s923HjTiOsmEh0slK15sGr2hyiFDReMjmE5QwQmIvq2UlW/y3mPUiR8VK18j91BpznQAGTGi9oFl+BevI4Io0KXs1VctOvqZQmUX/8B2cWU+GZS8MujBer/N2RyUpxiSvB1v/27y+W8OIuNI/7ktr+8HueDPazATFgY8LUMeWluTwvnrFlflVU4hAfB2nfLuELUqPI0SkAv7b0J0dPIUJQ2m0oHoi9g9SXa2/C5aIMJg85NCQZVuP1fiZNHqIn216lEz14Y97gLBWXYO+ntWJ5FlhO99wvocw3UsL91RqhJnXviErjhHuNM+vNLbcO06MS0awIa4T39getCNklkFYPAvJoqWLTccc4nsBviyduH9pC+XklKtg+TnP+kDKbYSOAZ8+nifVttnbuzGWu6PUyKMa9G91oHLMdzb65ZhKegLipRyQrfRqpVxElkBEMquCVn95FUnKkKxE4IXsJf9x0ztwHs8qLXXFKdKiZ3TSIOvdT8op/8FmTdwb8CmssbcHVqqtjt/Q15foFjiJYBtru+/ADvlFnDzr18BJeTXne7pAc44uIw2kDNisZ5/0fxHA6DCkecNhbpivNekEr6zAQjvXEkETLRtNXRLbbpvT+7ahW8AGFO8F0LRFX4r74arpRvEg3TB/qRKhMi8rQ4ARtkBcSxhU+Gj5z70EaZpPfsLasz8SRfuQ1bPe96ugknBnRYgMDiLLgA4l5vVlDn3zkW+WSM9r6xX4g0DCQSJHYN8/4GP6vzBiKzviUNML9xzj/9NB9ySGeIGz18NQrp73iY7N4FdhAtuKAs6+AiJGQSy76BbxsiOlXGacjN6v2fW49+zXitapQyTfDRIRsBoHjfU7BCFyJyOQ6zGK+GZkUyyeiyRgAy5w5UWlPMIscwNwH3UNqIsypOq9J9t65RmX4hu5YJ8jFhIwl/xWaYCQh4lj6w5UY9QgyS6ho4q6uSbNUkROFkq+08IQvPRRDar1RqvHqwl5LWxgsKVzmAvk+orYNyeILjYNVUAmrv9d66pTIXNLFAJZw8EpqRYC93jJNT3k8o8cUIUNSqWK5lVJtf5hfkx2Vk7hPGaOdaIMNiRafYnz6P3vGQ789x39IPYtCKZsgnw0fDIiJBgjyYmFYAMNJAzMQgMEOLiZRBzGUZ7FY9WkFSvxHBdTyhNq0qouTcing5NmGvfz3xviwxwJIflUK5V7RCgj5mRGrtZGLhcXLEH60yMnY8kQDpB9xViGGZ7B+oDvemc634QSUkVmjKY7Jing2JN89UHdYzo34ohUvs+JrTuZmJbf7gke2AeebDcVlkOvvArH4pr3JdvLsxNAMHRh18ga8+eV7R5Bl7n1BKOpJI9B52HdwsEQ2l1p+noWvMX5IzZe0aSemOeLw04mGWqpYvypsZRU9l8t1tcFJlT0XCAc10HxEyj2gRpymo4lINhVT2xqaoIvj0ANmH6RBaKP7bbA5bpSSH2h3zXhXcZwQxjR4l1qzxND69s6+fkYOWX2flwUD8Oa9ifW1cNbAKRZA3Ho5ByVWmoA2K8CM+x3BSY3zvqQUj2OqfRiFch3BJtOX7C7vzoHMiEsHBiwPnHCLS+YC1HUtgX8VAyDpvYfhshmBO9cPIm1deX2tm+n4rPji6O64b8lHZWu4kYsPWzDhpCJef4J/onJXiqlSoq5Z5117mMVFGj9AIPE8YZAWQ1D30IxA/gYgo6AHLXr7iv4m0m41ZZb/NMqHpYtqqG4JCzZddYdtYXSvtW8EOO3qBKXbYIVbW8lgQ7ALsnlJa6SZ537iuPtmSbHIChi5zW+yNcdSVpue3PtGlD9u/tDD0bhSUw0PmV1xAKutRT5unpQqmtKEBYa07ygwnK1HemLhUSArBRk+QDWiOzZai12TGowjVvMCoYTDa3sxDFzG/1QB/QVn9PWnNRQFo9LD8Y2n60fxwC1UN+i94it7qWE+1b8xgACbw9NHzJtZX8hfUlDUuhHastZhQ3yNAQCNaFtLa0rqPFIxqAGfTvncC03JexbE165qnW2kTC2XvvAfP/U5JFFRTUTVcPdbt64OFRIqs6H9ORJrv/N3v9qOgYJrz0AHVM96NlLSJ5+kvILyJsz4QyiUG4R7WSnscAawCEv3u64FFqZxcFaWEYgEGhwoeZYovDK9AB1z6udgxYmckn30qSagX/YtQ0bynnLPlh6RM7MA5jX2r8YKJeotsnIk4L4NZvNUw+zcG4LzXUgTxjFml1trmTBwLgs/taRstS7Yjq5UOl+dxVRCrbr2mEMnm+opG/AfOq1p2uActiHNy5KyMKqI5PwCldQhX+pdYQ6fO1Yb1zXfVqiJcAXhoxq0Gb3XbLCRcecdWHlNFTfAboJKGsgOnlnn/ovZaTwMDiWGbVmOcagxdzCm/MhzUXUAS+vyf22w65jwDSPkBTd219FR5bdgaiXMpcjW5OmRkYDlkEjrGa9TsyYhopdVnvTwIcTNNXlR8ffF5wQGKflydzz0whLTOsLejHJJTxy0mLd4CUBy06wkSC/NVhElyMOg+C7KzqwtuVa9fg3Xu/2ndyG07C2MBoPuBNuf9heBSBHmuSAS71UJMLCco+UT1imd8UWQlmrFJDccoNrAXwzQ28iQCI3G47SBo48p0I7LGoaWptAupvcQWM9M8QBrcWXN2n6oBc5ByVk7x+CUNFLmQqN5i+lhiBZd9ICje4GRJ1UDT3VeFgka4zVFARBWPNfMjEEM/7Rgjcv4B8jbDHRZns2gBoXzlgtRa5FyJb86WozY4PG4jvjD2q9jKBddGWXQIZaIYdZ3M5hw/fuCyiX9aWQw1HV8gyyimek5NceigmpPBovHXdCFOPTvhM/FZK425ednoQmUa2ci6kOM/AMK3LaGMkAC9HXRkeSfl/2sMjE8YKpWhjX7y9ApZEhnSUVBUulAW5nxPh2OQdDAXqHXjP2VgnHYZGBQtF0siDATfzhRorrKIuSWPOTZ7Rp2MMS2zZwLHycgZrhVd6wx1hTs9vrfOVSU4NwoeYER3wJ/GwfS3tadTmJshURb/gW+/o9VMhxe7BD4GelgV4mvOzcAgoBtdo6vHGtmULprEy1TPf2r+Z15LCM02xXJi3oCjpnwpZFO6Dgs8tC8gN6Z/iIrFmTOJZR3oFe4cRQGlRxiSKqVkf34hxxSJKXSpt6ldpy4IiA4rPmti5abpYS2cHWOZ4NoHNvZYK/njJ/Xo9XJc/o64h1jHDQ453Q1aQi5dXp53Dc/TLTcJ6cJci5crVOXN0shf8YItWzNkMUa4cAwRFZ/m0LxtQlhUHsx58XYNhQeGb4S8xC1pKQWNmMIGLcRujts9FXtxwEnD0h43fALFqrKnkGvPH62ZA7+SBV1kl+U/ItO4Bsj3vRe2R6E+9QvdMlvdYee3UBbxyp/8Utt2se/BeE4SAdpIM56H0wswq+oBvQPkgxy5hdbLvScy6YgXREDhmz/mU51jhtNrqYQZ5MJJoMHbjFEmNYGV3AT9IEPWbUbIW2SvQDNhPw+5kCqBsxW8TCVraEYjyQyOPJZNA1FVnYJmeCwcdtLQmc1QR27X8I5CvS/w1jBbRBIaRw104EHm0O5bNjg1YxTWGdLNeeTvPigW+A4SDD3tGWUESjmrQS6MORhbKpykN9Bk68E2/RxugHfGEUQPsJYn1mD88oxXkQ0c/H+cQbBmfcH6GzKh0mk6o8Th3vg25L64R+KWUn46bTc6edpf0P+f7Jlg8JA/z1q3DZ9M5ZxpZpmRbj5IjW109dni9U5iq9zv/hhR9aMH4NoGgYDqszgLVz3avXHp6nZJ4QaVEHwb5I9aNvS+w3N2XswAbhHs6CLaidJUcP+fuELC6hxZcr15f/nhyDzWiRXVON32CcQ0BmY+5dq+0kyGHWDKOmrfjq13o67t7ADp0ftjPj44TK+LgZAni0nRzXQc9t2/10SkBYukic3C8sxHr9OVuT+VtMaz1zCoUFZwmnZqrV9WlV1qJ8Bw456lE03JZ0d0qzEvnq4WTF9nrcoUh8lpzKi55YZdIhJUD36d275ZBkLHFOSn0e/NCRFBUccPfbN7J4mccGrjhb0KLXkTKSXf25xg0X+4lNX09bcTnzuRUphhWbWcd+HEVI0vDt39k09l8fuclZKdFFdylr6/i8bgfkPg4JpDGRy60QVTmzG6dwiKdhvwj1GssbDsCZjizBb1lDDLWO+026RZ073VJ1WIwWqEPCaFbTIVDGMcvc1ZmqiC/B02N9efgWNg5dV06I1B5NEsJ/whvWRIPUOp+NPpjtW+bi0DuWZSvDPNOk6ieS0DKYFJDCjIKKbfGVqL8m9WGsqqkONDZ28wvsDycttvf3wGMFhAIINDDyyJnIYxIhUEHfd0/yeAXInCbjZOC0IFhH432F7nKb+BCfMimrLCUZefFS6FvCDOlmmBLXwUxJ2m3nYXAlsapAb0IA08jmNsU6tgUONdb+g5AcCRAA6OSid1NnTBfVnS03xk3+gBo8Du8es1emaQF3QTDd1NXCnNnvMgz5StG+uI+T6DLEXhPj2U/qsvpTLhNmnrSVPhhx/9FfSF+W5bAcKuiRPGDfauFgHOH7H/NRV8oEPgOav6Nntp86Bo9KFVJHZ5kRRxeAa0cLZmeUP6FMhgFB/ayczpEnIq6CoAnpdhYIUDrJFeVO/yogW6ScUnM7tqy0XiVGx3WKbAvJaE7yN61tESsOVVx8d7UrNrWRMcn1Pz+vLSa+GQPXXI1F/KTPgvEesFEf8xv7zHXoRQ+omPw+4A+NIKF2dyvCHM2JdFqURitXBWW3QL08gNPlvgunrTE9rUs8gnA7p0t4Yr6btsy/cFRvtJGTCA44U7sB47jth1tl6ua0jCLkRHR34bdEvdmBmsao5CEz05USHTVly5bZ28iE0lI69ilzhdd6MysPdTCC94/g0VpaUAjz6He7CABb0k45eBWA5WQQQLtuVc12FDC3BHP4i8mSKhuPA5WWFnTe+qOBUFLNNeQmKUlP+VYWR3ANp3HxSEzJtu7pwNXsuZvpLlWcnbGFCqysuEYRHiKzoyUscfDmmPEyTyhdH3R20bGBsznFcb1+pCn369MQRUDLZtpR6HIiI22QrzKUnoie8qzqr81TvxIX1JBV/KMinfZeoPjM++0hvO+nv8eRTQ/Kf5iww7mqsVZUiENgk8SgOT6gTEmuICA9gjbXhIJ2CLG0Uv5eUZiLKnJePbXGjEYJwsBBf/IL0yPJIGRw2Mr4BtqFDS0xTjplI0Y2a+jLasnZG+erA1z2drQcXVe5OcchZJXrxWrk3iOAPvI55Ytu/c+jvP4NIsRQjGe8NRXO6sL98pV/WRl7PaYv2T0lTtWO1S0nRx2mj6d2fvb0hcGwx/0X1P9yUc62y1EhWJb5HC0hypeYCSs6flA1Fd/KwNK3Vf5qU6nRi5Dw7tvPcih2pxnMqpUUN9yONdvHYVet095DoAh37dTGn0HgjPkFI9FGeQkUdPFeDXCJHIAvlKuW0w285eVCGyqbp29naMeFs+YMe5AUkm4pgQ4wKWCc33f7Bj0COZ+EF+dKgT3NbZG2ilPijitI9AHoMZb507/CSbg8oU+tcJmIKilnuABTkKGYh2mJFsMOAAeziiq2tbZ4RKN+sDrOy9SHIdj3nQ/GnnLR2vRgNxE4KMjnH/563m0/C/rw54BOS/E7XG5oEZbUQoA9EdnlMECRGk4q7S2kG4eiISb6gx/qu8ZKvpE8hcIbHAAGLOq5mqHXdt2tXfLZ0QOZ1Ji3ExpwEejH+35vvGVL0gRi0iempFp591aKuxs/BXuAmvNPt3byVNSzJrZ468ZlSTBhwzhSRvYrT86/hteQMY7z0bi0670x/MF/O2kQaV5O0ywc00mRC+crhUVf7C1N1aOlijresTEOsj2Zif6anCom0ayJp96mZHnqwvd03TP0UBuqQ6tsU0hdLyxn4bQb/K5JU//8RvhUzcntOxW/4dyk/UT/njW7c4L/oyTN2gGjr7QbOuWDrIvaVLzRKvrXAHrNV0oOZA+QudSdiV6XwM5aOqrql/8mCH7V6z1RYQr5Es+kPJ8eo/ov+Mq9M3/ndVARMCvXNYCwRjVzCIbdGskRwWmPEl2CWFhjaaAz7FecAsNLpL5XJ263n6A9ZZcK69icqiJvpqfwYg9fUZCSdABjFh12uq7/2OF65xlVzgE5tIGRTqF6DUO6FEaT0wZ+puiunC4IsKGuv6hKNQu2zSqSwMr9gHh0wGd8ZZS/FOOyrW/bCTkdik9v3h/OKyQnra9JRpmHP0Ewx7rYKEyO+ILIgTrZUU74uyd0cr8T12XmhaNJrcJt2V92UbpY9ZoHmQaRyfsRyNjVEHv37DDlyXK/uRSzOObKX8RgGYG+k1U3sj9Nj0OF2wLnNaeDSWcvY8w/aV79RZcL8BrHH8llbYlDfwjz3gijv264/GVXSyHgVN/7gQNLUqK3CJZ0GG481ENdMRvzP/EtjPM6x3rbncV0pPeji2GC1TLq0WdFBN2zE+vjHD4flxI8bu+w7TDdcUMsl1rZkY2K9ZJLoBLRseH9+QddWSUVMkLF6F6wScuK4UF/GXUNmHLyqyC9iCIB+xJS4XJ7F3gJ5R70qnxtX1fFKHtGstI0CUgqX36jdiFQ0QI7d5ddlQSRWmcTMiJDiuKy880usC09vVTNr82KF/m8A8WvdwLgthRCsAMwp6grCDkJue+ATKn6VNOoXma5xksZv8wZ03ELqNigaKZxRv0PYBx8XKmQQktSNb7ny4YJ/NPzgBR1+8YlOiAvMI50zmb8MCp9kT1svYvoJOyfoWAmcjIYR11G1dWKFcO7WyggF27xqQFuXeptibtrR7JBjd8T1MmYxpDpg6FCMt3VK7oRh3XN5+bZEa7Qb+8zZpQT6ErcDbcRGii0pM0vMCG9fzbFs58+uXofSvoRy8wce9bQT6fy5zR/wZ3vSzLpq2M5ziO/oWgbQtzLKEOOPc9K7Oc4l2VOiKlmePkaxTuqEJfKlJVwS5sH+V2QFNuTQ4ybxsmHS3iB2e40SgMM4WWHM8V5eLcvDpLyojdj+LIPWC/ij9Tg6xrIKoUNccUwub0foS3EM7mrfFM8hUDAcGYxf7JLBMGLBftb+a4+ZMUZ8dOga1USdGJHeqWJYMTWspJmPLy7sN8SFjY1huIQZWwiJIxEzu5aUbuF0SNLHrdhkU8e2qKPGShB8HgqA8AfU4OFWq5Uhae42b6pg87mei0zg2ZlBUl4uMMWEfz3EgpFHovIZnlAV+H5JjiJ3TBuxiy7vqbK9K+juEh3rsGgoz6i+2ftU25I3HekqG/orcvTkHuFf6y8BeFtX1Plk1aatbeavELx8D+T9z7ZNY2LspT9PciHmyfA+APk22vkGmwvFosPz0GDEXSziCoM0ANEWun/aBfy3/x6uhv5GvYQcM+XZyE6+UtLUwYTjdLfwhmDmNvziBe66hNzZiRaEdEuFO5a+gRpxHyG/TUeEDFNVh9dWFLAfioQSN+YVKqpwJ/lNGZN7L1zOOBOCgy1zClc1y+6UHwEM+a6BjLiqhBDG0wUHQHHXu81HPp8b+/htnlft2RP8zczAAcSp3CXZOL1ZXzNPtJvc9MboDunnifYUKpqR3+BOCPBf/NVZ9bl+7T4rdIMRjs44+ZIROB3HAtLU1IEr0rdh6uNPgsBTcGgPvmsXIjvCRGLGW51zCB+Bo9SBjX6S3wWv/LWeVYKmXyPQ9LfY0XMvFGY8tY1WBSSQOTXz8q89AbxnwITbsp++W8sJ0EKqpdHeW+LyR9g+x0PWQqQKAx2eFMA3C3N4qeS6YdKw8EYDnEgiKZ//3nKoDqBFkKUh0OLE4tB/H2faFj6BRwzDV+Y0qiqfaAr1ML6cIr96MddiTWwR8SMlh7DGnrsP5Y933HRU3xD35JwP6T3ZAqjVimFAIxaIEPaYH9c1i71UAd3uppcw8OCRgNfhIFVcBWryM9i6QW+KGNhenETdKPFbz+ehkXLF3zOAI4Oavp6e8is95uYFdWY/+/MUncAgmNxlhPMfOsSqgAF3mPCkzNJwT//f4kuKrqdyk0PrtSGRAsGxGU4uzdVlqGA7X4TfEIIYTTGNG/hsEtFauF4bhhuqFgLK9F7frX9ES9fSyDG8DhfjObNC6pOQbeCf+27t9T2ew/BUaP4jxSnmDFpLKNRGEmJthED6ROgHNMue1pDjkVBBvG2krXfmcEauT/M9xCjX/iGPcEnyWRs/Q+aZ7US7EqqdIo2uW22h4LLIVM71uvBOs11R1HTfddJVJjIOEFNdLaKIZb69WTHZXJNXTMNPpaOCZJJREZ71lbghQpHArN7JDhpsnWbrOiebA5uOM+uHd1sbOFhlOQerK1iKTsP7cb8J5Qq22pOLqY5+SlAKHHPgIftGOmf4JrYCARVvhzJenqdpazoQo1lTy9GPIQoQagfYC5CkFlhWTkJSM2biU2s2oM7ydR/AZZpTSUpswa6FEGhjWWwjIRjgQxg9fQ6PC7QKQNuRIc5mOkXD4dGzTZmJCQlhnRCkO+ohDzXq7GRKjT5TAWQJn8nHfwgb3YtLoicNw9K4Rqi7+qolHKrHhd4uf0LevdF4lznRauaX1rJdiKtAr4bVFVz+kxiEx31lJl9gPq0BDn2tc+XTqZiyfEiT9YuB3ATZWGx/LFT9/CKmtUEhVe5xhZh4FySohaeMVMBCc1lWHH3XQ3jcui4IGG7646EQAzk+PE0dE1TywcTIO1owyusHONAWCum7ObOhvUwsTPVIV+yKd4txiFsEanaLbdm+BPVszIEBboryhOrEayPfcbwvz0PuncxGpQ195r+ENthsF0PWaN147hdvnpbZEHnHHukgPf2WwlvE3lDXfVe1rADj2yz5GiCuk0ceeyi65syKzmtJyNfSExgreTYEIdlorPgqVKKKXtOSAc93ooiM4P9t1KmFpUzWadkZHO/DmKNwHsdM3HMhuUJyuQZ5+ZUauCOknKQ+0kUTSSgHRQA5QMzhU9SD85lmhO0OXxoWPlrtGsIKNQgThml2Lqzck8QoDa/JYVbM2RXAj/yY3bw18izwP7b5QxQUbVgscWFDonzy6H2NpEe9W15HxI8HH3zGx8rBSSFDVSQYyNdZmqMZeZVQD12wZ9sEqZIW5XP5B/hSfNNqIjm0vItr7L5IfaZoiwpPRxeJHbSog+VfWOV6wFOS+6W4E+E2D5fBHj3e7y0Ip2KdBuIcvEWuz5C1ALuh9v9zvlKdhTCPdwEptdFz36qocneOufasybi8bn2bri1baZmcDWaiViwFcVjCj6oL0/oyzZtLZ9aoiXYowb7sx6JgPQkrgZSBciq+KqyfNwDI7AbGNTiIMYtouy/Qm7d53nDaxJAHKAJb8NZnCoIFq8MN4WCLXezRf21+9E2qrDccJ7pWiroFUSKwvaULcxtEUGIXctRr9W2HhwBdBA5nHFTapJLbhyWY2Xqa3/CTjhpXQdLpGtaJcPAvdltDUsbwylWoKPj4CfcnYADjcuJDBn+3Kid1CyvdHKJOB/cpuLK+vWLFEBu4xcia8a0tI17J9A90s1b+IkNxUY9omYr0rUrniBaXBYpi2yx3F38P/hZvx5LyvE7/HdmwmgunlW5giT9u0B9bvxsXLDlr0IIIGzASOhzzGX1pFsyOziKQ2B3nL4K/NF+nvuZ9opgjLkXkOdI1K5dv7iV75lgDTuUGRHetm+FHCoooyKY9B7lcgIg70Kzod1BRNM2pSDp6BQ9VH480BQx+KIn0ynLOSFo8w4P46SOQCsQXvDnoLZZ8Vj6bFe6r3iTqjZNmFaEqKNdEWQoeDmL66NlwCREqPPwokborNmOPzqnwfuoLzp7lOuVOVDRLuJ2K3swFHH2kfaH+xmmd3tAsHj2nu87EjQ7KyQ1Vm7l8cW004BiHumeuX6G2lVZnf6MANcUzgKu7A7CEyhawYkC9gzFZWAs6lJqz4pN61ijq5cXsfxV5zS+S9QIoyjPNtBk7bRWZAmLxHF2QnVqlnQPxYMheqje8GJqS/mgLwKkjmFrPys1cp/sAP+68G+3mmBLR+qh8aaHN02JYiVKPrTpdJXAxFqCEe3IAciIo6qUEyn/b3xzPgbRtsqpvJW45fxf2X5LFqa1d+M6ZMQ25AZw9885NStmSmynYj82V+Qw/vBLOvPQ6aV6XeDyYhSoxZIMcf8TENU8srrJ3fjjY+l7tusecxWImVE6cD/s/O0XzSMRPH98bMjXksbQHByRyry809oN3jw/UR/e9FW4mHdH7rk/3Xr/KJqa2EnCccz2X8+ihh56+3hiPe2MMdo4iNJmgzNkIoWjGhmmtlUrolXq49iKRwZGavjAwlfA+vdRZNg4+7XWLKxsbPBKqCjoZ9k7U5O+nuov0VzlF7TItb7mUxtpt0wKIaMFMoqdjQr8BJo8Wxqcm2jrTAHaDrI7EX8sDV4Yntt47+mGoqVZhHmfbIpFUzn89JAp5/nSOxCbgJOGFPWCikD3UCBQYGlHJz+86oHtryGEjLY3IBaeXFEz6FMaJRZhB8ON1sxKryeJma5tfFRDccdy2QK9TgJ4MUtVbfiaidTUp7qGQsIGgYNyQCCfrMturMA3/q1GyS9n5Qw/VsFnj5evGkJIEKURHaZOWIdMJCTt4I1kf9aBFkei6Zchw4NPcK4tdGzwuF+2G+0HVa3RjGtGvjtOmeoVom/69UtGytc3E36dHdUiAsCFGzIW5c/yK8LJUez/gAgw8/NUkWy1MsRCK8m4jHQrQHHYcguuD6eHD/GPc8SktphTjVWwgRSOC8afm0eMxi3RYAlRQfKgyHN6EbI3rgnAHq1/U0Wmq72c0qnuR41JTQdq9lRb9cO8d+BmXu1oA1atsast87zHKs3tH57Y3JXmZ6dLsqNrMqFUrRfoEC+EL4+ZPtkycuiWfPEVYxM1V+uIt3WolLb6uNpuWgiZmAxDm1u9v91k/lp8M1FpktVlLTXPxOYCRUUuBFwaya7qXa474b1ESoDhC6+lO4CCxfAh25tH0z/CmGS6wdC2nJThw3y2mZueSjPO+yFwqA7JFOBypTS8NhhbK4jnMoXmYovm00w09J82pXhJhPU7Fp2BI6dLSZywEeCo06rCz7wogS7raqG60wITxPKvH2z+uF0wpqRo7ZRJ6LHCqU9/4RQ2vsPchZQR5nN8v3q/yleJK1CrFRJwuQVj2GEER0v8XXk0rc+Y6Ff4fo7xBL+6WRnAVhM+wbvPhp/OLcqGXnDVRnMGtzwlIyou5dUf0J5SFBDB5XtVlC2Osmzdl354g1ojSj6MjA9kIoIcExyc8IBS3xry/kJtLG99209vadg7HPdMJ0I2mh0J3RrXcew6WH7pS/IoA4E29qz5bE5SIpyekyuyrXzuSFYI/0vrhfU8zI1Y2AAJXoBqOxhNF1/XIkkrS9Hn6OxScKGNnqKnSxrXjgI0PZrcZeQYeUzGoM4DH5eXxflJajwguIkX7vWCFOHe0ITfa3PPjxjaqbSecIxLUs9vL8QCO7EzdqeUN4Ybo+qhG01uiz0KZJ5suNqADbWf/TyMObh1Ci+cxVMfw+b7RoYfUeX2pgCKf9AZEnhfacsjZGnwyOkv6NZ4QyhGW7zt567cj9FIBWXF+MMQG6k5zJfql87ayt910BSsSFwMeJ89Yu5dDA4XpqVVJUyablt26iOVGDYtnbEDCbwG+zz35dpIL4m4/rqgneIXGHvmV7RoY620z7F5K+6Sol77oe0aGPi5WwSatQbHhV65hCrAh0HC0ZuQTCq0lj+PNOG/pMyUf8Omm+vmw7Lv08T9CeublooaPNlP0FnYrmF0DmqloHox8BN6IV2n9U3RhT8V6ScQMwc50QY5Oxoo7lbLP7vbkOKr5zp6DumizqsmvOiHxp8SEUdNCJP9NdYM6VoAGTzUplr+kKKhHkRLc3oo2Q29zNPhH3Bz9Nq/dq62OwmUuASH1u/ulq1RNVVqHAmM6rO4yEOaZ/pN6stDSydCSR0T3bz43sQg+94nd0ywU83gz9E/GvDa5CyXkUO0tsfQhdcMYO6jyFN5Seha/Kx33wIvYohmaqbhE4DkWPKtK8Qz5Lq+zo+cE2j4fY8VoOcpZGk8t+W1F9/+dxdC0OhTngcBFMZ1D4wTOVnq/ZQ3qLlE1WGrrhk56HY1h4HEjr0+OxLYazIdegy+/sjM8pvtyXeSB7DRWkK5rspVwDhd4+3fQP+4iCUzpYVLZn50aTkZtSj88z6x4YNhnNSSpW77H1DBnCi5D7K4YeBjaLV8ns7Wm9FLHsN7HNTeyIm9GX4bU1lL3mdpW90DKXT/rfVY+rUk/293JlUxfF3NU1w+EYkqQeFaeySllATVeHRegb9PlEOiGqSsUcxw9+PA1bNq37g+ZbX63wwJJy1p6DO04RCxnamcq8ruXe7ZRnFpR989KQ5XyIipAipqEa35hfxN6j3+kRAJ+oONqNoIx1Tn5+gUGDz/kIVmTCTu/zVI/y3aGHiAKmjCO3HPApP0uMycR8qixttur2zy+ynatQu1YvApgJ31cA8g90hFPexjwzZ6uM2P+UaPKrp6liAIPda8rvEP02GFKxQZYHcK9DLdTG7YcnbkZjg6T63Pk0MsH63FmMVgdVq9LogbNeKLVLoijOuqqT+GgGWj1MyblGEeNdyXowaZEKRIq+BeEUqRRSu2AcnHQt4WXIQFXh/iHYT1r8Kn70PUb5qkcJokHVN11Ulw9LSfQwc4pZbfwzRA+DCu0i9r1gu3KMeh2Up7/lsK6eimDRKTl7iYoCzXq4StyEO4hMcLRmaIGNavPILLkR0/vcxwqzbzBQNOFkg8BC7snjIcXjP1nCMPRZwOOcouDxYW+mfwcsR+nTdksGrNJrOWVGwnqwj9o0NdiFPsuGJFgOzO1QwyYrKXMtN88kRj9+sbQ3c08sjhrGCOKxKy5OhguBfozwfRy9BoZ2KZwIL0R3Bkd2eClDAlU2PELrM2Qco7dvZ63Yx9cU+D5g8kxXiRKU7iPYv28WaQKgWVyoTnGFIh4/onFF5RKre1XVsTpIvVzQ8MQO1P9ozt7U4bfQtJb1k1SSJv34LmZnTIxYge+2DlOwMtimyshw2aeGW+8LLFJGvk+2ZleTNxSAH9MM/8aogM5nXZXoEXzp9ihisqruo2/uI+DoFa+T6wAnK+73kFQrRh/6GG+yZiB++WAGfMjp0dBaADpYqpdnxdiPCuQrwqOPrdi65XC5h6S7hiYRVImD5cyz7zyuKcKaGY1AXdHE+NPjj7zGAmcmfelwjQB6Pi6xVUNAQGMOpzM3FL2qaEY+uZYjVWgQRuMXzcNW+eZhWfC8lWUpmkp3CAD5vzPeQJTS6GzK5TK50hCVnS/vXJrsVT4QWAjkuDYamgisNxZ2ewK4HXik+4gbcJdfG+No+WfXvMzXssBOEHVIHcp12qNx1tUbhobCZGonk1yMYpnHY3DbQWv8gYwiG8Xz6lMh7LF3VOLSLddz7F1VWMMr15YuvlbfSZcaUZifjjmGT0Kf2tUv0aauld7aqpjSKfCXuyN5K4GzsV3trollzatxNl9ydz24ZZ9Md48N9rTkyNwb5GKZYgC1g2r+XZA7wy6YEp0ESadUmSdDn5aJckz/y9JdpGjsgVtnAzNJvqwoEyTCFW+NfABgVyg1dgkpEUzj0e1Gi/cbeXEQviMIpyoq6tiqkmbF2NzXKbZ4JS30h+Z/Be9Ea8dLSfpW+WIBa39xL5HpqtCelS3yyfE41bDaEShezDnWAaQiOiab+V/5Ew2mmXzIktmd/786eF0dc/5As8eILL3v/VPdy3fWL0vW79zwzeyP3qkraMyivil9l/71u41H6ynceGlVT2klrumZ/fO78OCGwGEdpafExIKpLSeYXufG8pN6QctzPNH2aMiR6O1MpuBg/Nv5mgENX6EzJADQMbjDvp2lCtmwHQAdLvsaWtstLzF82AZvpA2IIjbhbaLw2vF2aty+DPoW2Wq8OKDpD4F+lN/HivcZ52gRFq1Luajc6JhrBs4VmhAR7gRZ4srrLVNckhSb59kC7PDPOF+FhHRbdAOBGnDO9AlKZzd2OEy1jiXNIrUkdXSSjo3PNq3i+wNUDZgE1nwY3G/eLBM7A8ggnLC/MxW9+HPMUQJQQBJ/V1tRSuPFqtxt3o80izvGGW5lEcVUvmfy7uaUkG084WmwNBuxSFH7pne5ctRbhZHcP6qyp2sS3hxAXzD1Ug8xMG/Bo8rhEmX3SqUWAlBe2y54bGSfAyVo5ZnUa+DYemPZIZUqoL3EMKVgdGn02HjUPGwTj2XQR0FPxljXUURIMmp8doGf/Yui7qCkLzv+Sthpw+yIKBPivx2rjjAQMPiPbolWaETxlemIZ49jHIpKfw/khgMR20mUCUzIKVYZdrCPgVT9nz6pmnURXMWCAxeepDmo0LIIj60K8V9tQvTVU9Lxsj7EI4EXm6e10gbw8EjT1G8kPcSOvvhMYlDJtVD0T2fUcRefDmtRpU4L9YM5IcJ4R2Jv8M4Jqbd4WpYdnXj/lyPK13eRFi3wCBPTJSC6ma2d5hXkWV0nZ4wrdXZpw+zZV9+td4i5ueAI05BhyhE5fK/5ucJsYRoO9LUI13IDQbNouVwknLjYdtPuy6nk0hWIYSZuWVr83pUJ6OOwMY9PCbCR9UKrS5UawdPhJ6evCIrIllggNke4r+SYh5+AmqxO1H/+3aVzgAwDl2ZjmfuyKontdlWBaGrHJUAE8Qo+IJKJU2hS9V4DqOj99sPT5u5LOFiLwmixm+Dga/E31iF1O+BsaQwWGeDzMHad1Y7aof/oz8I0VvlntDCmuMZ5Hk+1HRb2QkCkDCGR7G6aFtjVkxlMKBxfn/fSKQoppX4umEFX0JB5tT3f5Jsxe7GoD1Nn+vS0CxjQbtm7EV+ubU1sq5U2Pps1VBuR6bB/j0sbWZX4TRxGFRZXQxyGZJaXpaErByfU5vB6yPfqW9NjYIv4FC+EjPii5XqcHYw9X5FOMUpQnmjxyiQO0B205lGW7CzmsfWP7tnWWGXk4OwHoFx+/7VWs9YmQCeZYHHAtjdQkI1Cek2es/g4KPiWFvD28b2mn3ykXkN+LapUyTXmZiK/sznkLP0VAUPIY7fiU0gpBcWXkHMTsWJID3nJ0eH0L6GW7NKiXeL5u+stnX+N18SU1X/Nsypvrx3bsf6kaVAJTidldUdQ3kE9pQIAqdL8MVFOXu+xySmZuBtgH5eaacfKwWwyPmfVBqZH2X4B3hQcmkJTEGPuQActf0bnigqma2lQKnJyu6gcu87/KI4Tz+jUhf4QjvIJZvL7YG2RmWzr6/NiTrq7QowG6K2LeH8LVfkFJudnS/n2EVuHSXk+AAA6nvOhKJBZq5b6UPK2Kp5FmcGbU6PUZ3hX6T34bW1uNnikp8uoYqt7ILpMVj11hxhu0DMJXnseX1SkRTJ60Nk+cPNM4nScL32Aw0Z7YNoQq4sRKQ/2MqK4hGalJfyGBKNM9F/3A8W6NDPPBVT6yOfdJJgSWdyo9LKDABfA89/uF4mlTdr45ZzFWOY+BlvD91DUGOM43wkHAoTvgwPMz2xcSYYW4qW+yifRQ5HHspk4XQ/FfqE1nH8bIeTntARaF2WUp9Ovv0jEp7yE70jq3Ym0dWCRFFRmvFGzO5TYDDNjMzZ0RdyRRKX2fih3cBTaKXODhBEdejeY9ZP89T0QZikDGtywKJXR635XL7mWNdfBVyAnriYPNNmmduvh4aWibmxOWfDNykV8FUqNnDuSrSe6oOsbNDsMXtWYGAIt5Z7KOqVuPPmXAju95iZCh/FQQVIl/a9fxq+9PgmffOaz/hNuZKM4vi6AJcewvhWKvtLLYdGh4TKXhnxenOp9BdRddvjw+Xhp0ZQOtMlxd0kujSsPQ1Pf4EGr5rNrtuoirJZMLR3cpgXyuk64xnvRIu+H3Qoq7eaFD15lm3WUSdqUbFeoSjqn64WTOgOtxiorkK9pJQ+vhU3ksGH44qk+KFUVAFmwfWIDcOU0ue8RH3NZEuuG4EtiKKlDioX1irTrsG3Pt+4EYhm7+asGyKt5cU+ji+/fFIkF77Wh7o+d2yrBMzrfyQvgNTGpr+DZn7eeKwu6DgJRRqw5qwFxRqugENSbh9/auB0GFPbu0X1vMEVUwrgDhPEGtIEaqnukhOiCcEMxlXGl4yJBq+EWMmDPwtjXecKXCEjgvjWN2np0Hfb0Aae+bmf175txic4ehqN+7grLrBUbKbYHT01UWDgmc+fJ56RTdLGUjT/iGvjsTnmDwBRoKb8llaTWb8HAoo1Mm8Xb1vXMUM7AHOBlJZE+IPKtBO33qSBCaDbizT8M84hY7AXykV1V/vA5oSIRZvTk+RAq7uIlcgYtapC9XiCozO+keIo0yO/nRaPSQhLxrqMbRmk1RVsIa6tWr3ES5zD+HWp/Uix3wUpGCNtBcwjglPp+TtmZVWq3DOhbttDrQqoiPjfieGLQMC/RD/oX7ofcDc9CK1APRskKN/keTFu7GzRhGZh86NbiH2jpwR6olizuxeoVR/p7DvCxtT7fCU3O780hYUkGpZI42r7WfyFpcyeLmBzR/uNt8k0o7fzONEYfaeSxWR0F6jcKtsOyQgViPj3YUiq64qmXDCqe/0qHWFKepxhTmmlXEbohVTFjS5OeZUu8GcaL0gMLBq6JPXuaqw7RcKGbseMhH/9MjJ+39Phlrcr3821EUbGnln7YKkQf8cWgg4olSbtbCYFRRGPvHD6VAtfbEgNNBRi8EDkVMLdse9rd+tCxqpQR2iEQfQyp3UzRsx2RVqh2hVwN4giWubZEmAai9712NBddRim8CjauKonOkeKmMR/IBZ0Dn1jpBUav5rm+YD5c60kPTrHdvtp59+GSM18Q2ZHK6jTWlPfnEymjjxt9EmYeHaI5b4kcjWRhdHyqtjooOJ3phDuHoNlmvaf0JSeZxxsfkA7+0A+eOY7mBzMdj/FGbUR67Ly3Q5HSHmOuf9bldkIkk/JTIw1TMKqTVxyS5+q2EGgdENGmoYQvbOkRD07EnKlOxAXyyp4oOyzctH2HBkiuIjf1PyaU/H4jTMVYna0xkssN8rNxtTeqgVMMYMqm65bpkbvLvB2JtNiTwzI34fZyEwVI1jEI/NzLcASb4bm6PH+4SxrPHAWNzWoQ73ZYXXrpyXMPGSQ2u/OgOOZIPm4+tVYG9YtTYkvrk7ixzpfRSOmslhroXuLkRPajigfecfEe/jCwppRjaaeRMODIwIUtFEDb+3rXEdFiAGccSr4xsy3WuLFWneuza+oyyapen+jzj8l0/DW9enoPwtTe2oCjO1g1OiacvU6kM1CXTvIQZcAD0DqqpTeMEl2dQ88hRmRQFWfFd0gOkwttqdxt3afZjD9W/WjPqUVutNFMGLJEYAK7wfzQbNDiZcRJGKMKh9bHahDMSNrD1VFq+X3VPz/VXab5i/+Ck+95lE1ei1lzB2XAvJ2YXt7PqHS1KyQo/LLrL+EM8BkcTPk6KRzv/OhjeJ7CtT4HPOikLGKFgSFJVgtk0kHwirk87zSU/zknk7Z1bsJ2mKF9dXvb0jnWp+uci3L7SCI6d0g0PZjo65z8BKWEu8gnjuHrLrHiNQU71jtdSbDCCka+24d5eFYovIeU53VctOt3GoJDEVVVmDecLDv+ISGZ7EK3ItB88ujgfxNBLQnL8f3bed1hnUp1GhCi0LGxr9CgSh+xK9Ezq5vlk6hdsKz2OzTfrSZXYEilwun5vkTEql4pOSUHMzv4K91Qe/9QshT1SRQoVkwvCWBBXpiDdwDA358k7tQRLRmzP6P2w8qqfxEpgDpga3SPOjZLVA41g7YrGMQciUw1yGVhoYHGFUvMO6v0WE3chRWYsBV0vHU6BDlOS+gb9d8RXX/mJiQa7Oc3aXzt37Olp2fRTjaC8iECycfWBNGtdBp/k9NcZgs3DHAC4n60tbPPg5AbcUSOdHZax9HQEOZwS7n0WsVTQ6B6770exMvW/eQmF4Gn20DzaPZbrnRjzmPvSY105loDqQlLeWq3ejsqPAXnxXMgS+CgzIRBvgCGmA4iZvkp+9gYWDa+7IUI/ppSiZd/WAMDS+La9UC0EIiSTNY/kFvgIe192Xfbv00gsonwI9v793Prc90P41dhrj61qVzxRkQ0sQ1TpwXIr1tkihZSbrH4Ld4U4p9juwY0io8N4ByXhLNkkG3wjXe7e8KrUKbxvqi0efVy5BYF5F9IU87Z4zGq+q77owYgy9bDh/M+5WpTTeJM6GaaaCrXKrpYADXMi4d3aUAKgLhMSNIB43HivajzsZNhbsux4XnJyhkeig7yaoetSUxlN5DUooAFhgDiT3BNx3ckByMoNJGQXAgAtczHyFienpVn9tWQ1gzUPVtkwOcThqheBTGWUd9LxnrmDIQN9D6mw1s/J4JushcQOQziOVct1ehjFt/PSIq8frgQtfKW0re17HP/N3gDecKIawzWTiMUZ+EqObnvT1CxnhNfCcAzteQUeFzvHD203YE1O/J6KegmxIvf1Z1PBPTHkmVgvmVFkBIqZDzFbDJ026nVqDG7EtnRJDcJw1Qkf4wxPNeiwJgw4hQu8GMYr/vToqD17+Xti26sf9zO7C9q6agAAAAA'); diff --git a/docker/statistics/app/Services/GeneralSettingsService.php b/docker/statistics/app/Services/GeneralSettingsService.php deleted file mode 100644 index 32576e4c..00000000 --- a/docker/statistics/app/Services/GeneralSettingsService.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/2JUmQ5mPmWKA1TEwsQ06RvqfnxcmC4Yd8fv8FlGt/DM8G73V3lMApULLHtUzj7BvtBwnTvaKybsTOEO8+nfKEqClhK9MdOjYnTWOQpkbbGVPcjTgduIX3f2Oyz8HUbY9lnlGDo1jbujUn7QHGJkED7++HnjCH+Fslm+tR5QjbfVQA8ddJTCl2sxOA9gRi8qlyAVa1Kc3Lv3Snb2sNNRRynMYPVoBZhNMqHSt1IVTXx/1pjFrOU7eLm3tgl3qUj0QjivmsPZ7K7JSAAAAwAgAAHSn2C1vDxfTEV5B1AVuOQ6CZfZxkx+8U19q3rcs7NOFAkau/RcDDpqDBmVCKwQnZZPzu8G19lrcEnBj2NitkQ/B0gn4EfHwKu73k1N4zGqVklsEVkIhf78s+tTf4omnbyOXlTEGclFNAdRIBuV8ySCi0qSR9fTDT1BPpRh+X8NmS4qpV4PJMS0Tz5DRONpk9EjxWcsphr35RcubS3FSw9ARjoAICXds35FAtx98w1xG1YZ+8TRA6k3lVMH8RMSBSK1yydKX2m4Gtlh/rVe9QrW4tl43VU7VkLy1li6E03qqJPibrUkAXwnBaAN+nK0MBCqHaBDfp1wZUjuN7O8ZXl2F55PsKx5AT7MK4v8wZmN+Yn9AxT1LMHAwfE3jJAyTct7tXN/4olSbkuNwTxRART/BEIuspBYjZY8mHINwA1nmF/nKV+gH3x4zQ5T0IyncRwA++jkHNfLzMS6KPTgqSNivIW+ujn0Qoki36lqWoe16JySS9z7WGOAB137f1E117vUWCVmnSbjpOKUxmfTb4Do+BKZGDQ74lr7peSPh0xGDEvssCJ+GJ8VQZpgDzkceHLv2aekrbueI89yryHJzsl3jf0fl/w5i/n3NNsqOt5n/dZDNoA68mcGTPMBKBhamm7HWe6Ka6170cw5tFzn2vks1UtJDkMfXHyL8ZWpzWTKkuHTeUvHfYvY+u+nVrlhZlYU/6Fhjq6DtsqSD7hE8NnAS5w61+M9NusrsEHSB5V7IMX7nm9so9+HiIsvlmfbvEf/TwdkZIlQkjeRTvmG4SiX2XBUZVK0WStuaITqytMP2q2H1Emq6dqzd4BE/y/LtClusFcR25zJ4RfoIto1MFMk9jDwY/BEQkAzrLZdc/ZRHkjEbbECWpxM8XUECWQd9jFYfY3HIJ2dFR+2Q1FRzmRYDBFzebTNk3ztz5e/+FI6ECfmqWJlWvIZ2/DxNQ1xQ4Ni7EueFWqhhhTai+7vwt0xSJDNLSIoFmEqkjsISwgtjSmc4Q8jNoZ/wMwpvPDIorZWviNk8Z3q4q5eKX234PJ8JSqI4eUXoNvMFhl1VIlVegbpLmpm/xLvlcGV83oHjn6V/s2Hug1fqsyJ14rtBs/V38nHBp2xdQGGGy3PShvhkoxJKsaEs2aGMlOgaGZl9Oh1q/7nEgByDMuEFiUk+k27j4+43j4HDgGEZX6OpVNQQmN1/0iScfvpMI7ZF/WD7/bmRGsRhge+NVNy+dvbAZJEhUh9JCsL/YLOfWzO5swsfc5TjZJaZ0RrDJr0Q8/uNd+wXVxwXOxIdmZrI59PyIiEjInaOgHiL+XRvDxQkVouG9L/1rOYAhKBiR5BKf1GnpQHsEfqMH4WNYRw7sEUdTQTav29R5Ra3WLdumemTBUNgEtiXX7AaqvCguo9067rcWppvUb9TCZ/r194MlDSwg873WmzSqD/XratVwR2yBJDN3xceeL7WK8wqTumB6U/d39n2GI0KLrbn4cLd3QtrnGR5pQzfGW6ftHfFeI57KUTQOrdSEkbghJbYVq0hLijLqpQLV98850Z+7oFQvyTNLNon8c8g1oyVSt0EGzGuaRI1RNE3JJy0/Amn6HOAm9YY3kuUUOdw0UmmXCivOCOyd8urreHkinNCZa7d9fusSQdcRVrvr8mH0N0Xywz7ewIoVXXBBbBItb56yY24iEkEb4HfDAQH+gEDXj7ZyYGmTKupqTbq4oWEPXtu7dcql/qygqDh0M46wHYWUzXdrj6U3xCrw38mirZPRoeGjn4TftWYyKrC3Op+7iFI1Cs/IN0e1zMYHnYNIlNQT0UiN8X0n8GNVqIhuyLg2j7TzX4bK5c5dAD7FtOKN85LdDwSbaWraF3aaIEJl4XFkZ/KxnenxLAsbh6DN3l/xRg7niYilgkgYIbN1K/24RmkuvP71flnWOC9ZC0iX3N9tKJYS6vWgRWsKUDa8qvp6GTWmdYSqdPB1OJUcZR7yUc/s66aKkFJqrn70hfxX/AB1R0bq2WK6nEiBK5xY0dS1yP6I/IU8Xeuh8NAtcG6YUzugabkxVFaAf2eLSOzobOsF6fA0vyEcxoIFDDI3vcQLfVzxnkZ8e/BtIylJJACFerpegZHb3E/cVkWlo+lrLKUZVx6YLuD1s04IbeEs4suciAbOMaImusewj8VFm4KqxgWT+TuPy7XEhtBJkGqMPYIA+Q7vSxNmMwgsZnlwHYihxX3w+WUZAFQuoS+qSasyxpUEghXg55///qR8LDSdrht4UQyfjy7VYSQvU7XwpuJRx3E9Wti55e1ixCqydEUs5rHv7PRGaJUVTlkrd8/2PDjYS4WfH+1+WUSMfsfnEPfcQdwjECfksnLmsf62pSm7G9OZc07ACYU+N6ZlMBBZpEXgFUXJmt1xBgMpJS7vFxeuwdJkUqOFddzBEUFOugcFRVOrzLgetpi1LCCNaT7ED6i8QjJMHCM6rn/PUBCC9PB661ZDKRFCd2FFhng+0v7vX0vDcQWCLNg0+a0DnWJQQMrX7BqIEe+e/NGc46yk0BKDu+3AoxwfNAqahPKF+lJ44KyxVSzsDaBmKxU707t2SkYOZWxD6vwtBP1o0f0j78aRGlnO62y7nidbEOLbTTCgWHHEtStB0cYxDvqaYsLEu3ZfTdPK4Dn9ZDnUQIfEf3TeO7RItLWk18t4oQDu+kkiwKppgyZ/TXkUMVhhde/GwrSkH7CdLoU17Ps0b8+2+VKNbL8GOoNfJ6CBpFhwvxKUe+VMWHzN19uJ7l9d7Jif1r2WkhFJtLDknRqLboeQAHKQaIInpallpTu4HYkjaTJgRbpOG8nDgODbmcDJ0lrJYCkMvytc6zoUo2i7mpgNk7OwniHhQaZ0hvJxT9i/v3HJZUsp0K9ceW4s6+LHvfcOsVQaPVq+H6TRb6x/L9prCiY0tULt0hZC1c3pvTPYGAChCHajYD6KBMKm70Nq0A7zCygcsb+aGkDOMvFbee5dzG2Lv0pxQLfbTFDAAAAAA=='); diff --git a/docker/statistics/app/Services/ItemsStockService.php b/docker/statistics/app/Services/ItemsStockService.php deleted file mode 100644 index 2ac3f057..00000000 --- a/docker/statistics/app/Services/ItemsStockService.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/2JUmQ5mPmWKA1TEwsQ06RvqfnxcmC4Yd8fv8FlGt/DM8G73V3lMApULLHtUzj7BvtBwnTvaKybsTOEO8+nfKEqClhK9MdOjYnTWOQpkbbGVPcjTgduIX3f2Oyz8HUbY9lnlGDo1jbujUn7QHGJkED7++HnjCH+Fslm+tR5QjbfVQA8ddJTCl2sxOA9gRi8qlyAVa1Kc3Lv3Snb2sNNRRynMYPVoBZhNMqHSt1IVTXx/1pjFrOU7eLm3tgl3qUj0QjivmsPZ7K7JSAAAAyA8AAElCxkMsrky9HxhrUV6gSuodmGKd58KNFnAb/xtpzoz/U7E8GzzUurDcHyLjQ42XVE+zdH9j6qtIdmZtXzBGh53pduL9oIHE0jfsdlkt5nAWChQWCYTqRmp81vX10qW2L3WOxt9TgWSB6kZVjg643sBqAQmI1UI9DCMkv1Vg+2QHDh2NHCHxpnfS+CWPMGOeK25Jg3soDq5yeKmFb09FeZSPNcU56r7aZw+OgGfGJFU06KPXrqoIfkHJCVOH5MDHW3T38zs1fXCnJatj4ow9TqYcFnszPHzgyJvJI/Ehukm1JJH4KJNGdot+ulQsVCq5L/vW1uZwV4Ji2dM/0gsrwCfVTNw21lyVKc++dFPK96QcEVSZK596aXvPgFJGqJUNJvC+QAo/CkyksJB/T4vV9iQ6ecGQEGffKSX3SzPcU/Ao12IauiGtUrAVLt4EyjLiey4ofX8taIvYhBpyyjWn/88/LMR8GNQfNh6cs7pE6EoQcqZucXY2se5IcPiO00M+YhhE4HYbHQO/EjXg4RNimEMX0cSrz2LZZLxDhSU70kNPPZ26VmQ0pQ0Y+k8k44dQ2+GTcPY3TCyBocE8tA3V2EkPOKKJXENr75SSEeHItjCGNNhA8PqN185PJtsiIoMSMmUa9M7p8Ov5fxK8bl0IHt456O+WdGDFMSc3kPZUV1tRiJkeXBRLx/zkPV1XOHYVUYVDkTcDqg4D1nTXvU62fRDUct38y8wj4HQEjM7cDjBxabSUuksNCZZ00SR/9AP9NAseHd6Umh5mhirYedYJM+awDCT5CoSNUBg9ea/BeSdz5jYkBcPqo6mEu/cphItpfqAGYqfcZYLQ1ZqlyWKeuLUJWzcFPO68ZZf5sNokgKE5sOT5Edv3WOU8OLQ1MyOyjMnY52BWLYxzSlUAGjmiMafqY5eJyL2RpqgCoquXNa5JuZXHXfxLDk1/sjk6bTlJAJb2v8U95QmO9ZdOYD15mfRTi1NbIyFeliTiZFwVq4cimFB1I+IwWDr6A9MPiIzUISpVcllY5hUpCQ25Zzf404CRU4q/vSzZkxbequmyVmdpuF5lw+YbQBABeL47fnT/AFVJhWYkEgp7v+gTCt1k3cZdANdM6HDIvxonPw+b25Cz1gsj6kenQABuIetZx8aMXOSwyBE2MgbaDvk0h1F5R+1Kg+3Z/N9Z/pgQ4+1Qw2dF9AypzBTZdkRHHzZACQSANmu0/bQSdSdus0G+frwD0n00u7zvChBpgzgwGLEBoEepHJJCN46Bjonbm3xCm4ddk9+DA60i7ToG/eBjbxra3VvZUUyZEDXrI88FVrkYxTzxFNwfEbc7Ha/YQ94CswjcrTu6sdEvcP3GYeeY0uMUh4FQCzzcCkaMzoIzU/2yZAeUkGyaXQez09Ac1lcK9z696FKNw7e/nOsU8zMHicO/h9kwMTdUPyBFbJY6+upH1vQTAqedVvw5gNgMi+Qh/qvp9Jzf/l4R/7BkPGS0QRdyV7CBq7juAATnCD2Tbh7JfC5zG9h8fF2gRyOpf7xhT+f13AGzpjI+nF8nTErezqWZbe6MNDbXV5uPrv0mrxflyFIUiovPbZrvAINa+5Xu5FiGLrfzs/ml79QSXJnqVYgzcpINNv+SECbLurdX6/0CJl3N3UgstkhYyIttAZBqkkxn/dF+/3nkyCmzud1dRykD5/XE0EILDEt3LHk1xyCnOwdC4+f7PR1ziej3MlXwckV8ii7YplJ13HN3rSa94TeTS3cqIgtiOBZdLB5fhS07pYJdcTY5zcP9J4U4FpqqSUwzKnHIe2BXQKIVp1hWbKimKoj9Jfv9Z2atxvPgpDbysiuAcpz9akYFPEtT3mqSibc2vFiAvecmVdCf0oRfWd6AuE3I9k/YnqxLhMk9vgRKVRFym8rNtmrgxfh8U5x2tzWHjqknjZlcsEfEHRx9z5OTXKUsWrmOXXh84YUuqJj47HoBsIjZnRjeJRBLeCbI8srr3A3yTbdm1jNP5kOZSuI9Yx6Tcd3/llnJHxOOzV+U2QIsVUgTtnWi/h+N+7jgljrITYUcDIjR84rWtOqTbJh/yc0tsjGpbemUoSsXBzluW0xJoGmMxGllTiYCf2846CC4HePNmBv8SllQKzQdSC0tkcH+HRJ2b2USaK35wnPifl0qNSqNkdrKX6M2Nt2dlHElItApla1UOuJX95836RUv9rvMrN+5b/MmmX5bqFqJrMFatq3z927x/02Vikqc2lPpKRmrMi57Yb2GRu8Cb3dkNcceLtQyLBMsS6nP8UcRKNdAsaoyxixcuHNrDukik/FX7dc6/xHiW83d1cp87uyqyEDRhMrGwPX126HuUd7m6c1tlchfiK8EfVHd1WMAtZkY4HQksj8eZjibBf+LPv8w/kZ3s6CJhpYpqND5cENO7jymEPiulEdrJMfQZmJc3Twx41yLc2HM4YN3LJ1ywwwknKf1DhgvkV9nB5+aPF5BmNzZEtlyTEcOEwOYC8wuxpAlXPlgBxqcLejjKNqiFyuw5bgYyi/q75MrKJHTwuXsfc9bSX/e7o4nWMzXCjSuAYCxFXAFGDikocFBYCRyuaCSzP6MJy+8Wn1LFPRPhVEVVoQRlS6v0la9ZIQjq6Ymn5bj7fChxXEzSoa9oGmbz7UVvgKJLzRpITXL+z+ZKdDLCWWZKZxWbGTO5+wUgCSrzLAjHC435Z6o8SwADeKrWfcZ8MPphBTsMBrmKulxUD/lVvCkftdCfKby2Vfk0GsFeNTObO0oRYzivL1/HqAWsiOzxhaEvRvyf1d5haf/jW+b42WEGufDcY00JZ7eAKAQmml63flRbrj4FUCnPAFp6q6CGwDbFrGU7Ss7mXM6D+yP+XekDJjBRo0yBwuI0e3czRqu1/uTriU1mgaFUTqJ7NP/MzehxPxG3rQ36gGMy9rSDnXX71h4vNDS9jniqP7rBzEoJQv7RuhZp3sU3a1STwYEkSyoTVJ2jUR298e9OYNIQtIZXm6UY0yasYeArIpGC/84b00Tii4DZ9N81mGFFp6gfxjcQfXXbwyTVNBKQf9EBzg/61pyAdOArmfN356I960NS7wjW3CwwjXZYSNUEHVuAd/NFC+JgU5j2wWreftrycA6j8aUyBTZxY6GoFYJMfk9fgf3Zgm400ubCLt/ydthargHev+qXmil8ykRz9jiec9igHn9n0lr1QHGrqCDUfMFtLLU1aWbBA8B6qYhP16+UEw2E8J62pHFwqgaS4a0p2d+4+lR95NI2kBfEfM03zMdCUKrqbMzbXOinputNjtAMIdE92S8QwGldwQYykt4vdqi8CW8PCU9/YzSCUqznql1fajK1Gz8bm+2fLIRmuN4BYyN7l0wxepM0ufFRIW5WOu/7UUcf4EH4UMx3/NKBEFzQpIPOgK76tIihuLSCTeW3j/qarqfKmQSD8isLwOBVEiALEonUyp+PTE9xWDuuENDquQWIDt/HBDxXCoZmZcKrLzBNhxsOPHChWtJnY9drBFQM3VzsMqN/ZMxboPTeFy86WZuYUDKzmDHEghF7UE+hVZ8uEtidw3BXOI/F9DiVYnpidiB+CdD2zeHxl3B/64BjafCnPzSdmQh7sMVq6RJ8u0YrZqNzzreZus16ozL9FAbuSkPJL08WgQx7mQ6myPzeNSvY71XecrPZA0PPfulXN16U7QPe/ShQdudVj/VL/DMPdhtiGL05O0wK1CR055HfBs23CkheBUZxh8Tuy9dUUrfq+nIbW4VyiqHl89WPryaSC3nmRuJzKF/Hf13HlWOX26pSRsBlxNeRC3+GS3Y8MhSIf8pMgdj2bTyLKHdRujHMGp1W3qwo7+cWPRrx+FDWjpu5vqyb/pofXEavHshfE1er17Wkkq7AnkTl7NDEP1E++PySUIKV6HNL0EatqNBM6bpgprh2UKLOOr2Tzx9TU8HdsThfJNpWVSpkpYotEfE85WYY5o4mS3WF939wmvBcXEoJJhzE4KY7RO/q+W9HZVo28C4GeqMdtuxntNJaDnc2lC94+OPtwBKBLVRzUyTehogCBgRq7OoIWxcWRzEEjJ2zCWK2F8WSG7pMuvRdRmYOCMiWfvNEacDG0Ux95NTyRwjJkkW2zrJ5W2mdI08LRWTzTdiwQ9svkc1zsnizZx0peJXNlxKOviaiB8PBf1fEwgLgLqZvlp3VxeNy+WSKIRHqvb18IXeB2NCVYXXAJlh/Rbkiqi1UwG/z2ukQxCvk4G63lmVHvC1GJ+dRhiYYDIQW8cft5ze/pZZoczGBoSHc4EZcr7WxItLNAPp26Opr8CF2pLouYoPNqTwsanrq3skbCAZe5VSx8WOjCwKM6/XifYq/Wg76R5OHjxZmCJ2dBhyVXGnfzU1Eb25vTS7hs5bYNCJG+Vaz/XCULgB9sSNZ4QPcFEPx1COkCUB1YvQRXZbvbS6wIkyNbvArtt6y4mg+odVpqOOaIQzzL0LxFmt4Bp4aAOPHqJz/Iu2uQUzLn3UO8PQQlMeA/soMSdiBTF4Lr8BfKQAPyoyzaYdn4098ltn7s6HxzCY3OQh071rz36VrQnPIT1GV1SMKUxeVMgXXZ2xc1+BgYRo6QGN1Lip8XYNl03mcOp2S8F1XXXt21Z6Sbr1tskB/i2r554IHtMLgRyIdmLAeuhEC1Imwvv/BM3Pp8wlnHffxlLd17PKAt+zMmmWK7wWqgzmPonlIRBT9DFAWhlnM7fw9Lk4laEx9/sgpCo2yPoYNccvnIjBvG5bPyMcO22VqyZr2gpnzp/hsapY1zcz1LQjIlw6bV28LqRZkeOy8YNTi2W6ibpGY5cl8t9en2wWs5prhbBmbOyiUj2mRBzZy51NQrhynf2anUeMYn1ytrX9DDQ+oXS1LW08tKJfY6zxBfjV2OdDiJmUd4GIm/EW2IqMDXKGCNtJK13z9Eg7ZnyI8lQ4DxNNMcf3JtfcjF/ioousCdmeLEvJg75+zp/3/Ns2O6ZFbQB9GF7/aP5L/LL5aHNx7PPNXTnlrduaXSYe7y0nepEpwRUWNgsz0GP3Z0++Bez40Co+g0eG14dZMYCtawxy4OQahhVGc9MrsZF8JF0qeQwywaDb3oXToWOoZriHAYFOtK1mz/B5MS9MtjvMc38vyv3b9xv+qBqMYes8toPDc/szI+s5KopxKCDbac00N9In3Sr+32YAlOj5Y+ZzUYNpDglX/8Fou4bmndynqYyWAR5DLaDdq+S7dWQV+Btb1WNENDUgaX0cXhCookfvcBbnZ5I8dj0xRXjsrQPp5cvTb+lrKLH5nI/508/CwmuAGkKF4DY5UTgbSy4Rc3/7SLKSK6e8pXVSAQ8nLJLhIE0uzOHOeRHPaIYjI8Fp2vEqkWIkqlA/ZOC9Nb4MdrUFJ2FMov6E6kNee0TdJ85fAAAAAA=='); diff --git a/docker/statistics/app/Services/PatientCardsService.php b/docker/statistics/app/Services/PatientCardsService.php deleted file mode 100644 index e10ebf9f..00000000 --- a/docker/statistics/app/Services/PatientCardsService.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/67Si1ByIJvL0RNign5p0t8jOATgMS+G44WO7/HU/eMUXpM4VCzAn/C74ShPqfBNp0gng97Ycc1UrDASo7WsFA8+lM8duTxpb8Rz39l2bC6G+ANqRrqjxAN2+kaqudtQn81QNB60U+nhdBPUaDW455QBBy0Ao2vI0zKQ0TZP3IXwVvZLd7gJ9yW13HjvdcoDwQOFz9fe2GgFBSJrrWSgONSaOyUFZvqQjd4dlWe6N0Tv3CqHmlyLioREFVBEXul0xfyOczzPOJJVSAAAA2BIAAH/jyDDC37aId6DwxqJ/CFmJU4KK5pU8KjOoPvLrEazoUUmXN4HbnIPnoxqS8H05xQNPa/ni1Ou7X8YNo+8PRNwT6IThaG1HcaQSVx6zsI3SbTAncXyINNsMiyzdKa8qL/8DV721kf6xYCyr1vnnn7Bpgm5xRiGye9Lub80jKSkUKpfJ7q/JdqpxOBq2glt/4Q0YjCYeSEPa0xK9PgMMv9vIPRIBLuvTIjicmZEs+TPiignKS2ooHoTEJ/ARz87sduupPxL2/kKA8BBElVEmenXged+adYArPpTRzXDYeM6OcxwaClYZJOCMZZg74LlII5qRrpnsiamyYSzGbOLtsl+o8cVxOizm3GA1NC3HQj5dKCaPeVdVDqYtjO9vVVxmJF3WoROYqGffa4JSY4fINuNh2f8ZGSdf2ExMUPj2qx6pS6IfZwgigUsZx4ERdcDeEph1FJiDxjoN1cJnAZHKkne9pCoPc9bjSj+Lyce91EoPWFTUlTawiqdE44v9ViK6/sTwRWfVHwHy5T516+zvr9j4gN4Cffp7YBE2D5PaAV9h07N3GRvFxrDssFh2yp0klN2hru2F/FxVmavH8+jZ8qB5GAZ3FQbMfIkFxddaQ5PNDnjbHODU/8tqZunTR5nBzm+VgZemUsjjWyRn7HNBO3uWiwb6o6dZxqpW5UqIlRq9rW0iu+0RJtLhkOFrxML7esexihmJl7qegWo3vlqg6vmlirbZCjcHOXj+AkpmGBeGvBVSfU2K/f+rJUqj+DHmdciAs09aWTSwVOgj31jALczkVUATLihUgyTMQ6GH7BMSW/83ryXxnpjisdWW1f2TVMWJb2EebjYTkM4YKn7wLOWf7RMIH31O52AWbDQ6oNppaXKOJECCXT3Izls6Te9MUR2rMHETyM/VCIOXuytOH3tWaDlNGcCjQ3LDmVf59btTlV5KhDRY7s6DQKpddhQAgRp1hs6CobCF75+BeQp7khRRgcnt/k1c5AR10ZJx8MXZfbJkDke7RICZOZ6hR9BfRF94UEYVnlI15FAAVmTdjnwR0DQcGkoVVmWhslJsDkHiSHlCBaz4DlCrHcATAu78QDruh+pTDMYxSE2gNwn7TTeljdppxaKMRyVtfGPUYH9IKc59J72SucEHFWhVZ9kaE79qdujzRheEKxB/esK/EMW6eVtlx0uKzXm/7eBf7J8eD6/rqJFEoFxsiidaazHByQaI/TTc6yabV9LGnhocaNpgZikydwl7r9ScCOg81G6OyYwynCafFwFYlOZhUpkdYH9dDtyOzpCi+SXdpAUdd3JgVUsjgLN/UeudMIOE/R0DxN1IWrLZUF+3HV1951VHIlE2/F3SzHKmh7RxOxj93CRy638cYYYGHdN1ZJkOGmT1OfNf3Xz6/+SkdnuCr4J+k1mHHR+WmH7rXlPhI2Qqw4LjTmPKxhBvfljWx18gTRxFra7jJzHvdFkYlAx6gnFJTWPjx6FeKYTmC1UQA6KlUDBWekT2GLE4GMjlhzN2vrd7woshAU/4mM3aYS+DqamC1fdytNq9NKbxNfo3glC5LyC0Dokpz+vy4ZRvUzJ3/DvFxQdPoqviThn1FxOjNGJneX0tszq5a5gOtmsQtX1C13lXvgNC8VDSQy4MKZBDt7+JXccuNC3DrJLU8rMQHYQ+3SNAohx/A7NaFNkd7eEF3Fg5EzDGNXajFZRc37+Fci0uUEUK2Rf0DeK3GcdW959jjZOmZGXliSMxQ+k8Epl6GsR3H8ekveEgAheaq58TfyL6DEf+oSkOdFZll0lXvVCpVfIZBpFKqz+k341KcNSc2IwbtF3nXtqYaiy1C05Y/i9keCU22/xMA50IIhCGuvquFq4ZGEDQgkgRPkVt+9r7KIqOaabz0z9gYneUhehGY8OkdeBJCMte/I4YHflhkF0pIyqNLx4nHuV8ybf2QZuXeIryd15eSMYIYPs5tpLtQLJ6d9VV5IK01vv9wKyEb1bAOUrzDI00tNIP5rLohORaFCdsMJZ7rTnokZ0k93ox1IYvdKHAPh9/EmtARZnogZ//8+k9P/NYH6czdBM+uOav8jh814vlynZpzrwy+TpzHEJnvdMtSDsoiqtL4yV8IKjqkRRmNSS6HT0xTdjyQ6LQG6Zho0fPufHoAoafrCekqjKhLz2c4qKlevAPHLndb9TdedGJGlBYaLLvrYXyTks0SAN0bnWB9D7nfAOUjc26lmXFmG0qPKJ9wJEcSYX4oCYfI0jCRgZG0UjTZJL2jXW6BfVxH1IZ3hYgBuqJ9UaeFLBCyp+vJgJK7K7FJbuRH5XHswiY9EwyM9euv1vD1fqrKh6lvFas7GWcWDCBNtW0938wHNzfaVLONwRsLI9clNd9SaVq11HF87ltQgvAKi4O4408tLAJYEhN741ArBzLmLDldXcJFCYh9t7o8ZK0FQfOGJJURMbZc4vmP3i7qafiWgTUUrGY74Dq2Uua2ZzDyWAQS7UI5SGJhoCF/ax+zzuAXDIHkP6CBDM/19ucZrKnNSxDaALErrsgNpj/W7nLagL+3wjm4ChOxu2wYTha0e+aqk9Fu6hVTDqVTi/WfeRtDgTP9GJkosrIQT6WRTJZr3FwRl7B/RUATXLLstvVCuFPMReMAbeRwx/4kU+zejm0CY0xCEZhHxDvh0ImI1mJWTlbAIuOTR9Hv3DBA5rjHtH22FqZeyRuT1BkQq0BKxhjnE+7xmXb/uDIftfK+Yw3/i64ldXaEVa43Q5t876j+Gsb1s1Mh8CFMr4YcecoRZagfypmc5u6VIX52FbPcf9MCZBS8MsDsAt9GUjRkNGiEDCAT6y0ROuDo1FC1n38wbT2AQlF37nJ1Y5ahMUyPeGLreeSqm18AmFT0Bo/MTb06AkaNFTxc86oBG6jLdVQ7wPXXrhDd4rUjX5B/em9X/FEfNAAse3f0oYkE/Hvs5PdL7lkeCX9AiRJf+Lvkxd2u2Nt9pI/4Ja8LrsriB5BcjG4cC7+S7McaIwYbAd1uhJ15L4YMI//TFAjAF6t2slCHCcCtOFCkjCALQXahPaSazz1VPBINlSv8RYCcy39AUdpH7Hh2i6aeVKMUNHM7IwyXzTnEOZRK6T8nHG/YOpXAawuIIXuZq3hQ/3UnKLqQKlzjPy3u1k+AQ2imcTNHo/rb/DV4gQE3N/ltXH9UzxRJ+R+slav8ht6pkptjvhA5AUq3fe8FnHV6WbAbYE3/L1Up8Rf0SkStXQCjQNMq+jlkql/oDuYVlA8HFP1NdOspwuxAis+15uLgK7na+hp2j+wciNCTkZ+TVQ+QZnbILnEu6dPiiJ+rTsEt+uzpye7b4go2S35K15geh3MAv9dTlT4e5jNxLpiH+KCbpfzbabTwnMgyuBh4BVhVjdSi6UO0ilfmVJmbBfdaOMg91nByc0RPBpeEmNQmtqR138zayfx4/0VbgBnHEODuGh1+xbxE8kNqZMgj5P3g5gxi4IrdgF0SAuRvpUvnKGPP4SZtvV0brV5Ds39AHCbQV33Xpwqc1PynHV/Xbym0qpk8IHm97gcvB8rw743TWFWH3tneUnVxUYuMRps+lY0CwiYwsLcbQ0fbmeOI9SzedH/iMuCvxvikAVTGoz6VaAzWSnxYBwiQ8RRH0a4xd4dhHw1VLO8qaO0EKtjXVz2orteq3MScEzE91cXzFLDCIIkrBkglMP38l3UH8PxqOKvDY87Uv+q+E4xhIjlZlyc3lKm7P7K9zQdVSDvZ+0ibKEvUic/4A2d6gbarUg5D01VBAMbo7D7YjPyVLO13LQHIKRZgvGr9/lND7lzpQrrMM9e8gfF1MhGAfd/kblEyvphl5UJolQf3lYcviGfg9D4VwP8t0CUNptxOhVG6WlcFkq4DhVbJ0XAzy0Id+mnOZXa9IPgJUA37leHHOyM8loG0jbnUPouf/Wvc9SAJoQF26IAL1hxL2CQMW2SBbkdA+Is/4ygzkbfioytgUugxn2EjO8pU/wsN6D+o5EXBuM1DZBKRTi5G3SOb3V0z04L32gWoBq65cDzm3L1jJs17qGEBULAXwXLWpfQtVRx93FgwnSpjGJqbjyFWLp18j9G/XdzaLmw7lK9KrI+TEUfSWZi2LqwxHaBfKpQ08xkEG/pu8NKOHkXEfEQXFsPMK6r8CTyNnuNT+BOyiVVdiD3MFYp3gnJ+GlUo916gpCW720OZrC50D0eQBoEdZHdu9mdsNHcl1ZfFv6LOeVJz9diO3SLuCRb4r/MnPMx8E0Bu1rM5x5H4TXsgWGHv1mC0BQWbjVU0AbQ15IYhjpOfja3GLSz2gsz67z/U22tWRiIMOa4bwrSZdTaVjmvFoMrwx23KpKHThDreVB1PX7/q9EhpMtASpsSolmiwHdRkBrW3MB1qORXs4G/Wa4atAmZbwGjAGReKfCw8cCX9ZG+IU4IfuCTqjvOvaBMrirm03CautqeIRmYofUKGNR3aN0LUf0lYRBbu3XQqkhPr4wIZ++y/jK7IwJndEiZdBlRW2U7nLffHhFo/Yl3VSzcnDYIgF+twRxdD1TSR6mTR4WuVdw2aPfXQ2XBYiGYnJxwxRIntrlM9io1kByFGcie5Rt0yyEIgdLMkGIs6Cmqj3xolte8m1ZEyjC+9peg++A4hNVGNHoeVDhXDeg9DrC3epIImJXnW9va/Dqe3pJGZo8+KLTIlv6EFTYV1g/CrHZ3HlWoxOR7F/SIxkTSWOhssM5xl6VWXWu2MmvgZKSh6RfvvbMsqPWpEbwNPIpnM7uKZmsJrRLEJtIb+IS2MVqZ9FivCiRakMRRd4E8OdUb6CkR7nv/1AkvY+QADl22C8N4ZgaCUfMVAlounTX60p+HbWRYzEvC275CjxtZOsPGY+dODNaTo4qLTUL+wmTZXgMhvusob5cPl2Cq1EH/tug3ANR7SyFJB73YajHBrw/oC/BerDg85UHDp7ZMKJ9kKA5xCDp1Lnk3QKs8jLq25Qwrcv/K2KMF1IzxRirfGl4mHCdtLtSle9n62hm++OVsCz+FCFywPB7W3sEQcIbZ1K04f8AaPJR6s8MORpiCoNWlPkOBQPlzuYMsoN3pCEUKIA8QVOKm3iFUjShAugAfTnlEQlNUKzR5Owr/EKjqsVx9gOZvM6nUngpeJjXDn+8/o7v8+gHBuq9v49ivZTYK8Tby/s3XNxFSB1sGYukgXA6l7LDGdbyO2oDtTKcVs2vxP1njDgqbAySrNVgn1O7OTZG8ga2dbn1Qs20OPBjpxM6lmfOwByq9cLMJtG2MHCFQDSzaXHq+MBXs7LxrgHY2DQ4LWh6gsEuShS7QBjOIp0QO7xt+/HtS/qRbyPjQyW8EZDWoexJxQahXBpZGedMEEahECWcTX9fRkBxO8bIVfPXOKRgbYMs5dZFg+B+iPFx+oLUkdg+SuTqF9WYsrQqh8VP+7/zE3GHYOsfqohzP4gvzMS6mWgowebKcP7D8LMqrGjaF5wbiKfDtWPm155hpjorXHXrBBOig0WtAVqo1L/jUhZYvwE1iCAoHvXs5Bw7e4++0Fcv/e4NP5do5iyabYsQ93OgyzQ8QatEk02Vqnd8+p3fc58TwYRRtFEXKG2kIDfgw5n1+s328jkauBnaclAq6/IC/eNCcSlK0wSowzyGnHQquP+DP7lncok09T5C93TMXSSHywiGgG3Z4aFTpJkBkF+JrOWkzUK3U2Tor8xlrtkHeOnpRuLAVXBKYjxWGGBCO+1z0nfh6bXPfjC6M8tKMVj0X/bqC59lRef+eemP1jdQhvlNrv6+5mx8fSI/kS70mcsYijHMgIJE7jMWY2LItQGcFxRoF25c8Ob7IGnLuJZPrcNFbW240YbMuJv2O0FPJxvNyrytgbZjURtICHePdBgScpQ8cZvp9O+zb6efqYRWZgPYrcVibFiZQt/2RMHZkkZRyD53bxewRVt40ptZSmlpjpV60Bo5LLafJTL7a817CRy+qLHzz/l4rXzK/hVFFzFRxPduzqpeIw5t8TwrIytFLjFSdkD8FqDRqB6HaZr1Vhf49m/AwoTdGaEYWIP819o5isulCGFIZBnU1V/Hegc3MD5hopXwv4YMVy39qjHc/cRKM268EUbTjmniEaiBpv8xVogfgO1ReUPgCI4B7vZ0PhjPq/RluEKzi6LgjqzKUgwQjmBYLL27VPFhhd5oI4gSYb+rmyh9cJWogPqoZCxilLdco77AKqSjFMUqgy+XCXUI2Pouc4r1NVkaKLdBVb9DFMmNy0WGs8bjjmPsK8Ca1RWuuRwbHi2UUG3Na1PRObPBo5gYoyyK1VMG5YehHHXMOIXvBxeI176xXmQIKPzIErEJ8rrFaJoi/O3UAfzUoJIB4HOz7WpTRO4SNvMPgFUoRXnr82fM7/Ww7J6qopd9vaC+L4Et0iQW/sTQgQLlHhTa+tUzrJTZwuu/d/VKchKVqVxOvfDigLHn4mAAAAAA='); diff --git a/docker/statistics/app/Services/PatientDiscounts/DebtPlanService.php b/docker/statistics/app/Services/PatientDiscounts/DebtPlanService.php deleted file mode 100644 index 3b2e1ecd..00000000 --- a/docker/statistics/app/Services/PatientDiscounts/DebtPlanService.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/67Si1ByIJvL0RNign5p0t8jOATgMS+G44WO7/HU/eMUXpM4VCzAn/C74ShPqfBNp0gng97Ycc1UrDASo7WsFA8+lM8duTxpb8Rz39l2bC6G+ANqRrqjxAN2+kaqudtQn81QNB60U+nhdBPUaDW455QBBy0Ao2vI0zKQ0TZP3IXwVvZLd7gJ9yW13HjvdcoDwQOFz9fe2GgFBSJrrWSgONSaOyUFZvqQjd4dlWe6N0Tv3CqHmlyLioREFVBEXul0xfyOczzPOJJVSAAAAkB4AANmDXlyMZRvbETnrWOQsKPpyW9HbBlUVFjl8csYui+gj5WutOdcMUa3eawnYrLD1ezjJQd8KPJYONDkG6KU1HK7Sgu4smUWbVY1a0EzFQKmNMPIaqnSo+rg2eassHCIW2QpBomUcw+0j4j+GYkDowW1iThMZN5K8ZzlrKpycrlWGgOTjhT5powft8LkhcV7eXNv9Ykr2xFJi+VO7NhlUw6HfEcwygfqhNY3g8eSypZiY8jAPQiAk5k9165WUqLx4lGnB0Svkg3eIRcKV0+ry8UfkPoEUYdqk1eTeLlClHCqo6oVk8NgLN/90uR9wekiq9rx6kXw7K+CdmA7MdiRIxTEvAIezsXY7/QwSNDfInJnNhWO3vjiIoSszar9qW7GYdoGFciQ7SvJQYhV6sGgU05ztC91SQM9zgOR8XREnm913bpJmwkGHfz32mz9s3cJhlLqzlm8jtfj17x5gfwjV7a5clGRWVab85Myo9oDhsXo1P7nWMrRI8N3U5JfTQWzhLvHSTuWQrugryzywONFV4zb06ODJ8auRju2cHteFuFsOHSOBM2bzjYFB1gZb4UTXTgNt7lPe7XJl87EA4BhNJ3XT1aDJIDJ+uDmtUsXH34LkivIXEQjpnPBgDfJdZ5pWsswDyDQGXsy8yVzyQxPMhjx1VfQJ2DgG97icDQEHnBUs1mEQDqQlyAFvjqMybILrWlBGKhFNA7TJkMMdq0S5vpX8B0jfg7iMC/53rMy5c70yv3OBOg0+GbbCECYUqWPmwPrdezcF9L5zjjzX2Miu2xqGiXUS2phHp3ej4i1RroxTKjvx0E6eq7P2VIYBjkeMOM/7w1ea9lOvULbfpxSAM9cbQQnT1U+KV0mtURvqPjQjPhmFscgoJKJ0yOJnEZflG7PppQX0QeAYYvn1nGe7xYEJ2gG3ER/OgH49NCm4RicjF4dAY+SnT7kXDZphWFOwyfdh8Q/L22a5j8EIWy0lvHJ3zJ5x3O0JDkgj79qpxbx0PD+J5HWhcIRzux1Gwg4+bhidPiIvNGqyuIYbZu2AB2PygroJ5jf+b6i482h2FEjYhPX+KCpxgh/Z2tw0I0sLbcWiFzsZBkxuaEuXvuDfxKsBsrgExxSz5D0KLzqR4qC2LkwYfboFQuCNzoYvR94I476Fa5Hxwckr+4vDEicmZ/venlo0GYRTEFAOP1HutK3Dc7HIhyoVnpp0mP/YSL1BOkubxhh7dHvA1pOyvA24u6lAhPR14axKzfM+bItPuBgL50okygu2HSW4ZwR806Jqhc+E+HLTx4g69L6Ukamee4VU6ZEJxIRK2IsEyW9eLAMSsNb4S6a8yByAL8netG9ofQq6Hy4fGtV6k3EARnYYjpUMo/0YxejQsnh/iDCrR+JS4gQOghLUzsVI5DgzOEYedxdzgF6fYpxak0x8JZHWXtp0tCPJlwLOaXM1O8F2QBZFMd5otvhcB237C72VSAH1VL5rQg3bntXqtyhSKUZan1DsO5wjx/MqcCe9T9R2kB8J6F9+2TKynNVQzsrrjPO2MwXWSXlA4kblXDTmlCY330UvRFK6wNQc1dFwe/CvB8GrByrLRaG17LJiPXUYmYBezhK1CfzVtZNCpQYz48yM7R3APC1j0zbzp6K7EiY4jFl+zp5laW/sWOoAlflKxRYfJG9yjPUrPgdqHAJe9Vpj3BiNpNdTGBVy/pkwoPQ0WNAU9H5y1kKm0W0I8I/4H0nrjmkkxUaKcjUK4BlWUwsUIhWZS0zHTJAG6eHjOIEuCIivUZQrtvpy6TaJYwXGpoFR21As2ZorG4I8XNCipVWSPnrwQDIWl/I9Qw4qFvA1sBUWyiXPzbKTA2bgqtQyutX0UvjC29CvyROWSpyTtHhXHyB1dvebkN79HhxJeJHj4zLIwJHxT1LUhvnrZKM2x1DwYew5h+KjWJsc36UcOSQjmMFkoRVSq1qPqdnGwC0xC9CxZULBVoOAkz7n6mDiNxkOkLkmPJCJAQLmmtCYwHHzDUoIqtB8XnWZgtzcT+r/gjkuQZevDZLQyH3r0Ku7nBUu/Ki7BZLzxI86573DV95tY7lKYmceyGD75RIRf7WM3GFvbK+B9KAk1NN9YC2Gla6mDTal5i0Q14CDV5Rh4eDRei3UlZyb8hSL6X8UeKXsGV+u47EbpMM8J9r3OP8bVwv+0Xog4DCQyws6R0VueHZfJH5peO/qnGrd7QjOklpuK5As+GZoQB7xP8Ylj07NwMLd7zX1rKmnAwu5TDSuZDnxV+awrI0uqVjrARodSdCxxnEtA5aw7sIV5kN+Os14TyTnwHPqJBLd8ZLeBDfbWWE2HYsvyt98ql2FQylwifsS8R/Y4+mWV7IsYXquxbHUrdUWclcwusrsobhut7VvOLy2N3nre7gYyrToqHYdzK2Ku2zyAyWB4QQassTOWE9ineCwsTVH37j9YafDNzTDnzkFWZq13gcculm1c/xZ95s66OmAgGgs1hf/gNDku8ZAcNkVF2DNzXKMGnsbuu/boJGXEZv54WOqCf+0v0j8QbrVESESUJ65Mg4S3htXl99dVUJu+6/iMyx0xnaPMaLmss5R3xfgRuuhRhD2vbDOXKshmdvMtXRtP/mRSeMYDlQicKhs7uciLTiCLNyvY59c52cmQQNnZorb4lxe0u0Yxl20X71fqv/GhWEyn822vs5PRXB/u5Q+GMCJTJaQxBYUxllc+ED+tRBkVm6en9yfSyzYSn0ZDSzO8PDS40zU6WoFp7QIVr2vNAmkHOnpbBbFM0yPDFO+80E33vHeY3ljMnOssEcb7nT6BRiv2PXl/aR+ems1hTtmEfH4OrOvxaKKeoSNCU29VuGwkAAlTWlyiE2KhIRsITgGB6r94FrKSQpEYu2/7/ZpNRSCtprSkbjwd9oxnOUMriPICyL3YYsMgTo055baV3ap7NzyS+Q66MMG5bgxv3m/pCsrK9edSI9N5iURerQ0xrLyovrPTgYfJKXIm30rx1IiK2OL8VWFN2+cHowASA3ncbS97Q5CkQ8vZKrXbP39hsnlM1xluiMJYeIZWa0OdebBsEw46i3MTa0L7XuXV7L49en83Rsk+l4crceRYzm09dLlaM4oCGaTD5/w3Tn9Lt7CrbffUSvuCv5n5wy5LIIdUMDcevwDaIklM6VUIUuHVDtIGu964jXq38iZxH1FTFddSl1ruxccaDOUe+wgsxLwYjXG6XAqcZgOQdXB3g+jZEBUIHzk/FJMkohmnw4Ei5Q0S0t0hzC5nk83pzzYxVzGBxJTWD+YfG7G4YJOEbVbiOKuConQ9Om3brk8/0qQxb1UXRhmR9Y7SVFOm8Fa+enfwHZrWbhaEgJwydNk8/6xCuzUImSqFJp+/vEtYWxBHYstnf7kouf5FxVaRNeNQYJ/kEl5qemNolyjelEvI0AXb/fULVzcEd9C0eegIPBnfpsI7qljfqeBF9/tCUxwswI+uwrJrKLeQ0Ayzldt8uU4YC5swvhdTQKp6ZL9PTHeJTRXHGrstADOZgwx6s5hyVScD21OU2PShd2lk3AlY6zN5pf9iT5dzuj4BVUnA0eBFn4XKn3oMaHrg8cc+3mX+Be/akBkwTksEs5dGsJbkNjhtcQX3Xa2T+2Ga0G9OqC+WF42kkehDGP1KSGiYivnM3o5kjB5D6uhR4mg9sC3SWpP+QFP1+47TB7dRen+Xoe2pjxV5ezm4s1i9ZV/fCB8BnBgwuWuE3V7PrcRQkuQxY0ucORdNbXR7T2ZMMatxeikyUIXf7JKA90T6Q8wtWqAC1zTPzMVJaGFbn0Lj9AWHJVPuknNwY58CYs52o6z8e9dVk9GKc5Ft+Ky9KVf7Lqo9EDefuf4Ok+zK9q80SYa+CzZSavU1gwJksWb41HpYoAumz9Fzh/x0fvVG5VIRSBRIgfF1vSTDNpXcmfqJENVRyWBlskM4wiOL+CvE8T1RNSihUz2f06hVJiHxmZTYvd0WC6PTJ41+g/wv3z4LOYLdBBlC/LBfAGZ01CC9cP66VgCkhCWecVZK3cEQ0TPWtCSy78oMiIIYPFzXRRm46Si3GcqV9aOyppFwLRx/kJiYTuUdk20c/mp/CgGhkjSYlqmwu/P82i+OZTvlRrT2ZwNMSf+XYfzK8RSwRyJPNS8dJZNuY1rbv9d9Gttv0YdooNNKfaD/flrvMxRP8A1rGYwiU39pELGKZFn4Xem9fwCdEviveyxZji8uUnbZYZQpeBetOnMtp4wWey46zoUwBleph+I2GHCrLyFeFzgtwyPH65bfczIT8yHrOM4qnYV7cQ/R2yUxQQXE+59iCRA7g//j7hJCu9UpCWBRw8P4iFKV9+ZeqYNzQioTc0fNHMFLM/tQxoYg6gsJzS68jVWxPRgmE4jXVCjUhIJv/IUfWfXamLMXKj//sIK3LvUh5RorziiWpl4XvqWFtyP29Z1v4JK/PTUOT1FNpgkwEykRwPkO4V4FhvnGYr4lbO09k4gBRNxbuMIY14hzWVhYhrOb3YfxOXs95H5eGtJU1O9Asc8RnS1aa92/0L+Nl+lbb6t36z+gmitzNIuK5mbK67qbSkHjDdMPcCJyL9cPcNobdrkLYBWF9yQlzLAqmLUpaylt+9tRy5ZO93pD/RfrBIL/F99VuzpM3IdhdxNYgLvpL4dTdHGdUsUB3JbzFMj6logah2WD99i+itrN+SagpOGsKuw5zWkeuSOcik3rXpzD0C3+MXChO9ZgTFaDqY3fHIwbYBttuu6o/ZSxbK3M8RNBYyBtdRSh0rscCk8wZt/39JZRVjnuLfJVkbgPJgsK4/Eujv9GHJOOJp1S+FOdoZL6+Wl30ZjAvJHXzjHv56+Ah3grwiXEIF/UXU3x6PfFB9PTRnwBAzdlq8/heo/cESczAUQQaSztmGwZek3FwRpVfEDvReb5oib32SPOXUWirryx2rLk3q+0ks8v6KVa21c1uYKpFjtcV+zX9pZI4jFW03wpgHghe5G2LBQXpKozhjlwiPJoeOiRbv7F6kXPOl0WBRFvX5e9Loq0x+cOMqiBCOwdbef/FGcoChvogo0TigobeW/QwqwAKLFs/jozN+38eDMFuiZqtWbbAgJJY8mJe+/y4POXLhNnonimEnXPn5GNgBspYTvP558qKWlIqIuZYvPodG6ph9vfWGhL29mlYRr335ukAA2dnFXZjT+dv7N6kdbEDWewQUCc0Hs3KP71vC+A3yKLPopolJFC+K/ZZp7j0dyU/m4N+PClYiKa522ZzJygjgJT2voj4AWjRkKZms46BjWIksv8ZRkReds0Grhu573cBk8ZZWywOf8Mo5sPGcVqxVFTNCK30jqvrzHTqPzqshdmkIX+23UrOMUOUvsSQN8ikKgZX4CO31ppkyjOwrTUPmcDfDsn4yqhkNf56WVF6HSKXYZDcv6P9q1UN0RX1+VUibO0eWdkJmsNfOnUG70DBG7fSjGDvX/xgLJ5ko2gH+vQJkPD2JZpw8qCSoeppoNdCumCPzYPp6Y/bbGEWM9thaFf9yxtqxIgI/rsBqvT1UZMpDLjUcHoOjAqXSAelnim4xtLNavFO6DQPjcyyTF1vJ3/SaKHWU4zfhN3ZH8B2kCCaXaR1vSz32S5xM4NcqUxJLO85cgbUJR1szdGkyEH9Eb/On+a6pY+r6zomB4h60GPk3Py5lwHI136fNk7QHQuoWxwcwan9ptFwhVTHu9BxK2gOlArDSRQAkHcd0kB1I7HxgKO6ooKnZMyZDbBqNLHuBpyr6ZWh9AIzScK+PQvtmnYtfp06qg1o1t1afQ3t67Jlnm1whwq8uX47Ey0bSiiozk2XCuiMzXPjOrhbDGd8u36+G3ytXIdGg8EmYavWxMvGBoZK8LrPGPkuzEbqjS3TN3Eehx0HdHABE53EJ9ugjCGr3Nzw0m49BBv4kbOpFkj3wtyHwcIzesG9Hczw3Ysxnk4K6LqkPcd+as/14+MIgJauE5A8+e7MeVU/Q6oZEOXnKwXP5PK5FvHLSsVHNFb9TT0RssXJ/4bqJyylpQaPTHISka+CWFuE8Q04LCJle3szQ7XGaxI6sBe3kKOOCfI1zrSg6HZ0cjKqzvOtZj1Tls6cnvI961+mRdtnfc3IIAEiMiuSq+/vuO5gYihU6CN2h4gY7V29jbI9VKc65oFjckaqjyJZ3n9sg7mNWo98KI0WL1L5z0q7tqMb0sEL4gLneYf6A7hBma/tXH6of7kxbyC2rBv+D/LK3N6xN9NAYEuz12GsjnwPMCD1KPwPZt9RuFYVS7cCY8O8gGKAKl0JinBudGJIs4LSUJvnVPdXI20kfvKCqP71cAKqad5jP96kp/9e4gV2gGH7veb/Zs/umPJgqqY2DzfY16OiMrmgSvN9rmAIkXmlSjcMHLv78zV0M8EyqF2EApMDLSCnLQFKKKf9XYK6O0hOljXLODKnMxN7fNE8JEGQzhnRCPMY76H57LpP/Wjww5xuXo+oWohTNclMBFuR0rZvih0DWOoIoQZp0OjgR5ay00J2UagfuscumIldFlcPbTwLCSM1mY3bddOwjbhy+SjL2a6t0FftXoxLtMTfeWhKK+kTMSPwo9IydWTpTFjlFKcsyqglSkyIzRuSr+E2Og2ceJ9flwuvatYYxTwhn7CMkY/dTpkBtIxv1j6JhLCoeKsO0xuMiPjqGY28VNabI2sUBhdgBbbu1uMy76oXQh92Exv3A4ujKaGt5s90MiBlEmTusSmbz7xExTNQVIF0zhQep9qKR+WG0VWSuWZOT06shr0/sXheLPNgnuj8ewj5SA6/YVxqlGm4aJdei7UAo9nSUNX9PQGt1Fin5mTtMagkYZDoMNhMEb6urPq1fktjeFud5O52/0D3WC/pVkXh1EkxiqYydrCbC6chFsGdwZuCmb4g7NhRbbPr4gmt8VCP9pJb1ahMkxSfBB2xI8MmUBmt/gzOHspIem40uhn9ycQxlOkJNn6JgNUMPHEGKXNTlFwSAUj4LkOC4KiyaQ5u7HKIL2cz3OUn4/Zce/6B3ws2nvdt36+H7g9nzA+rkStEgSiMr3uonInisB7M+Iee/MPLnuA4GXIGUTjJsIjxxwTFQDBcEvpXRB0nAhfF9xBzhJ9LK7eyj51XdzoPFIvHs/rqVtlbhCsBBdJr07RoWJNsmbg1E9KEgUmsodQktIzJ8j+ytbL57odK0r5Ti1FpQ1rjOwrKSPeJ5uNNX2DQ92pln67TPGCsIskpxLoJ8MSnRNgfitoAIBHpTUmu1Mv4WVhUyDxkLfvb6UGAGGVCsmTLx12CmCQAvo8Qwc9d78tmqorPRbFvDsS4FF7/++SyaFOW6iWavxS9orOGWrFzW5UHNMsN6D2sBlP+6h7ESayKbe/29r9S6U0pKqBoVEOg4y0ahuxK2C3qqm+fybZiBFlgQG9oRMAhBDvrhC/2FZcKXKhwbU0X9AwSx3cteJbzYeyDZM22SRAMVRDzLKb7SEEe0kcd+Oy34fZhOE7EbKoaGHei1YBNLb5MA9NjhzdLud2lULPsXMTq2QguR7XtfZ/NWDNz5qwrt/7Z8DXrW/TEOLnZYb4oEzeZTU9QeT8PIwVQuLk3vognHN96ZBgC2NXgie29UYh/L+9FZhCDD9/Rz5JMVuvlMM3vrGr+6ydNyPkGEVZoQk3MP4Nrrc6J6rJ1kCwatrHnLypG0i2R/6dvf7TI1p5g5bJgMmQAiMuSR4u260b8b/Dw0dpnDNp1JhFWVtX0aYPSvoTM/UEGeCqNnskXcOVZsd/nYyLdFKv4YRkYG0gZsSviE5pRr8tU1GBl0a2tkfMoWvdxDwaWPBvTprW6T2Xq/1uqmHE5E/MPcy24ehUgnu8qGhAfHGB55ugJfa8okj+rbUTxsrAjd8Mo9Wrr/wPVWhOY5EljfePJPnBNzUyqxF05/ylsUTHc9vLOmfd29yjqBIZlCaZ+FGz7JmTPKYRiO1n4zeZQEsZokLcnHaCVwlFNQn/7Rifdv4D4BoYOH+FGM/JmE3ftk92nMstKxp5gbAwnsg5UhTtEHS/DTYROORBsEwdpdeDU3+5QDta63f8tDH5dh1JpQ0kpONZWmbZk+bfOtYh13Nwwc8mkZksjb8n9XfuPaM3W8BgWuW64enSh+oz7aWi/4avhYbX6ZiHaCqmTxJlGH5q084ezoJw5PYIPRXDEhAvA5aim5AlrRp2at2qLfIvit2DOD9tA/FpOFUj2XO7djC6gTYeDIhWpvuCoGc6GFogfBrvXz8I0GLbjGHz4zySdCV/YTkEu55F+KC8UQSRXsGZdthblI7Z3uxIX1SUjtjwrDpc3bK9nijNsb3EL5VnOKZ3pETWLwobPrt1bQY7sy323Q6gOGO3/RIJCaClyK6eXGub6kgYOOPCTAaBJhiEHEAPTxn9fA44b4Yvi7W693mFiZ1AOcc7R41/uPrvkRWQfEtBod3Z8jEQXBrYSPc1tO00KTFW3TeCZvFgIGyhxMfOnvto2Hh7pZiiJADw4QIwjAbXrLy21aWXkddsT4Anz00+FjktGxGWQiy7o/f5JVo8R+Ws4A84A1koDWXIRw6uMvCAecouR2E7LhssR3D+mRo93jM/zM63s6O0f15ozOc1ET0B+XDWADsonwedhhEkHeT+ihcqy8fM/8kgEKfsYpNpiqEcKCaeTBOF2C3LupoWrc5ugoKbXAyDbJ0GOmVgQY4Xxi8sv7c5dUT+6/gYGTqCzs5rPfYOyC3E7PceWizUJM/xgZBuASHCTSAx4HkTNLIiGHNfoe7eeR5MiMUnrZ980FA9cCrMsu4iQMzJYpDJ4IJd7yD25Vu2p088GgwkI8hq69X67r7/jcBZ2fXFEEv+tWiTlted/nqDV8XdW/meHuv3gn0BBIUw3ct6Uw4W27oirSmEZfv0VDKvDMsxFrLI22M7vD3sqPpMl17g60FegYY9oR4pwMOyoszN7HBvvDx575Rw6RBnafdWDE8nSEqHB3rJOg5RUXM2b7gWAwdZ/4fPrU6gZdh7nq17a0tk2Zfv3lf/EzizZlR9A70m86DBoyC/js7xjnG7jQrnOk7Ba9PHNAz4Y3MZYD8TsRvMAnhvpy0hj7xLLG3NfsSRjfvd5veJLxjDry/bEAQ8QL5G35rYo4IW5YMG23xDtpdExRG6FSuIy0y9C5+lI2Vn++VwaWYqFayEJIUck//SHz+4pL1nxqlX29grNHT0f9rxZd1GR0nQFsTh9wLoujswXI2uhzh3QzBZ1SGRnKoc78VIdTWvFPe4XKXHlBDQejgOsPLSwckw9dVB7frsnxEYLEV+RhFNni1loCmRdnEesxE3E7X9mtrWkdYwTDNemQaLiSvPR0C7scyU/nQdPwlnogTTQU/DawCo8pWhyukKbozEaP/T1tosUMHKwsIsjR1/ELukF5gJgFcLDB/1mLf7c2QLXeQbK+n0g4987co9bYIXsg3u7Ps/C32U5+KP4UjpfR2rC0tls2ha1Ipv0NLjUUuVRb1mYsHWQHF/UFviVaEMOq4VEn2lX0EEtxkgpm8CKQN6zX/K6q4PFxeFqe9/mvX7fFUFx3ALgW6J59RU0/oIUEWpek8Qx6RHKwWkDcxSrn+oJDLEKHjzW5DjM1jyktWP6WY7AgTGUlt7CRaKkdxXXTtmsM3zoGqjnFf2Ts/zIM47Joh4LyUP4EScUMTLGOY9DqsDxIIIrUgWhcjCt2WRoU5apu+xVINJI2kq8qncBDncr7Ya1BDN4A67kU4hes1OTT5kgXCd5wsdkLNPuH6I806F9cXP5dHEz7L+3RqFtbdDkNhmKgQSFETx3VubvFeFcXu/urV7qzINm9ukeTicz3Z/FkILysqfKQWCw41VtE2t3rWEw3TzlhjlgFd6X1VWcWQwrzNPJzy4Oj1z2OzXiGOetgVQkBblf0fELu4QB58t2Ca0B4OkJyevx/wQktS/1YLxO2f7ZO0lpKQ2ULGlueSWSNfB9WpkdocZOqppYUKolNn+uxKebmE+883cBGHaKaU788mHyLJB6RUw4IfoW1XV4aidrk56dje5+0RQ0vZ1Us8SlJHYlLLioebLJHGlw/cIyzPUfwhZaKL79tLSNNtURvKtn3ps7/gwVB3sbq1W1ZwAdQvk/gVs7MT0gcLsC3zzs10kg3uDJ+j8Xef7H53giCwptINF4S+sMc3Xt9xrghzvxIRy/CzouZrdcMKQa3zPCjUtW0jxwTOtDqRzK3zRyw9v6EoDK1YcZJ/005XEKEWpajZ7ERZE/m4/J1tH3/3qltMaM5Y5QFb6VLVk+pEVAhKMtHEaAsOtj3f7yjHk5DzIpivo46WQvMU5gyhQD0ESUNU/FOcC4LKoW6vE60acO5uhyBu7J1qT5K+nFF30Pk2dSHWqR0ky01h+p4B6ufd8+8iE6eF4rRKt4HvbnlHjBFrS5bsO1GD9Cb2D3zWibJkRuet7756e9hmZ3Oc40LzzqNz1YWSVwAAAAA='); diff --git a/docker/statistics/app/Services/PatientDiscounts/DebtorsService.php b/docker/statistics/app/Services/PatientDiscounts/DebtorsService.php deleted file mode 100644 index 315c3bda..00000000 --- a/docker/statistics/app/Services/PatientDiscounts/DebtorsService.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/67Si1ByIJvL0RNign5p0t8jOATgMS+G44WO7/HU/eMUXpM4VCzAn/C74ShPqfBNp0gng97Ycc1UrDASo7WsFA8+lM8duTxpb8Rz39l2bC6G+ANqRrqjxAN2+kaqudtQn81QNB60U+nhdBPUaDW455QBBy0Ao2vI0zKQ0TZP3IXwVvZLd7gJ9yW13HjvdcoDwQOFz9fe2GgFBSJrrWSgONSaOyUFZvqQjd4dlWe6N0Tv3CqHmlyLioREFVBEXul0xfyOczzPOJJVSAAAAWCQAALqtR7oAe9C6KiYTeifl5QzA+tvlZC9eSCH7GaQbzWaXkaEEAsYbUk9ducEx8q2hPGQt/pu3YuBfLpnriUKc333fLmWRM3vaF8Jz9jiI00D3nChx49FXTWmH/qXkcDz/abuyREiutbH16K9puo6TMdQQ+i4NpzKQNyLOdhlCYBTFzrYhjEzL9cvXdHbkGpBtKIIz6nJXrhPnOzMUrbGeiba6C4MlDrgBkxJBSwgQDRnwnEYCtilfIrejAdZ+25IhDOQSv9m0vulDB/yUBBH090pasjJe29t6Vih03Z1szIyiOGE4fOtHR3zIYQcjs3It/Jylh4bO3Tx0d6MY4HF1WfkDgsETRNJrnOOffX8zOP5mPVZRSKvQr1vLVCn+v8/XjFZAtxULr3cGoDYubtynSU14yg8YTGcDtcxYCi2hWdOyAsOp2GqabEEXQAMm5JRvC/qcedqqE3GGDxABi0FLY9UojP5R1hI+QtFi+kXAi26JFWCAIr+33RCOjWAAmYrrydig2tM1P8OFY5qmrBtFekzux3pGe56OzVTCcVvAZZEu9vp9MRdZt8HZiAx3M1q3qzrNSx9hbnAP76tlUtApCeRFEDUECGmSleomR/7eZTENvV59ZV08MS8HcshduO6bjwXTgv1nAnIBBVpb91yFfY3n4npEpkjup2Djrsri0C3mMAKqagnKHkPImN1tklLVL5u/4fHD1UaD5i9tRftGSsxmOuBPHvdvByWYXnNmWzgpi8wYBmNyRVHvORC9EoNjzv0t/wLaGTxCI0+7nK0gkAvpT17NzkmC4CNJMLWPN3vx4+RDBf5cSmwH9EeIx8BmqU4CeATqt5RvIvQSM6IXsy5tjNhpttW2qpnkrhLcOmT7RdMJdlsDhzwaIvUoW4Z6n0fXXTpiv/+SJoq+Qs8RtWfcgbbv2iK/DYDJXqlezj/zGFYncltnaNLgFG9HylExI6oWWp0xYy4wd1FzQKMyEH7NFOEwMDfgjncPdURNDzmSEv5leKwZ8x7r6aX1kZp9uI+YPKWUCnKJGU4svAKlXuFgVzdfKfxQzOdkn0EjhryjSE7ooAj9zQkr4dFjbViNusqgXYho7vf1/3V9aynMIwT1zWry2WgYtmVyHgrbIAVRbpzZ//nshn6o3JGznARU3wrVbjv3oKwHqfOEY340SI8c41/kAjZK/MoXfJNcYUz9ZP8KGhayfmo2454f7Xp4FBkNoLcPNt5d9AlS0wqmyBsbsshfvZyOqZ1as9yCxinSDtqRfNr0qu0J2mxL7feL9AYYtOW+1BCI1lEkqXiDIuzoo+aDJLPSpvUcYZI3YjbGvWC+VHoFhvFRmjTwDf/k8GnyYoOVUsRm+2A/mTPp2MwgtE6Wj1ihMvxGlW2ajeyjsKspK/CPpdRvC+k8gvOxzAb0oeGiKkKvHVxUNP5ppqikaUoPYtpIfC9GIuL5Idk4eXdkhCEFBY8fhkoUCG1jbE86tPbD98rfMsrP9XpFAOKkPPeFi2FfuaIJVlel5vrFc2UUo6VSKInffsp0n7psJNsjRp6vmywhiVnu6UnJ0udylqhKq07igcdU6lrOwqoFD1hzcPSEG6NzgedNlSV47rEfOqwt5nNIDSEjXAqJSuWmYsFCnYIyQX5eeUC8x9QPYOHurGd/E3eCHyS2qzQDg2YD58EPPWFDi0ggBstWFuWZBIXFQBU7hriCeWHIB0wMH00c4qanzhPZa+RaAnX25W9f8PY0sRBuI1L+Kz9E6SBNI2JB072qCLzdqTy8MwoWKHgz0q+A8pxcsLqHsN8N8YvDPJZrrlT5cq0b2F+0Esu4D+n8RxMU8E/Aa9aE80VgfqQds5VYTkUNrOSzbM6Kpm6CjVoWiegc1VecimumnHVa8KGjxY4ggaxJncoVZ3nQCxApy77ESMIS2nfu2bKSATvYPI6cd82oJknAl4ekqM0CPJ68JarS1u0BHUxnfmPEp+6yEtdaA270F1Zs5GRXd+L4UOPx2qnw3Iy9GsQOALRym0CWyBnSHUqQHXaizPgupz4uGlOIOXdIiEXDA52vT2rcckMvQn5GlwQBkJJJbzXqYhk4+4+XuRd0hnahvt4KXJAO7X7YNH+umVCw1xw8Q8nviC8oALaaIblzp8iCBf6s19d3pjgw2WyG2MoB9UoH0+qKIUhENx3Heb86bXf7bd1oK8v6t5PtEt0/5iA0lHwWZ+maRcipf7adzSwuXf7hf1e9ti7mMtvRq6Tud0VXEGnLI5GvsweKfgVjTIMj9PnjS+QTYiHWmUE6sQ/6/Gpq/mdhNGB5uSdmCq4gP3+qrzr1g8kroM3Qp/X68ThrRGyK6dbt5ZLIBPZwl9NDlVlr87omCJXQA47YlE2bxmQ2HtYQ8tMqDBjx78mVxwYtSVxbX1TqRZsPfXxkvu4wQmW7jQg010FZ/2yaVwBhsx2lZ6j02b+5Kj7Wh6t3xvVVHB12p2MOrvL1k4LW127Ktp2Wmw123rGyUj1KOfV1DzDT5mZgF/+oVjQu2QZnQ/g2M/vNs6PKHcGJHTFPDppePZbNT9O6Tp/vyZpEzoIqhzdFsXBiSe/FM9pcgmzofWI3Z2+Vdyd/vokHPfR8cztmivl1KToL6olIFSO5+y8Q9jjfvPSSW1FEu4PfNXEIIy5sGaDdvTyFRioI5ltzsv9JLO+oITR57o87Om0Qe384+kADZ5NMhvv4CVE19CUzvfGYAWuD0vt5vCqkD0AsqHrp0I9Sjf77PaLv/pZlxpHuBbE6OCBdXCC33MoGgya+4R93KQcgEtjEtkPZ/wiD1a1/EjzA1B2ondmFPqfsNJ4sBHWUzmM3H6E/QtugerxLTtMBNZlEyzL4WUZoGgbwKLtOPn+r196fOO1Hm0Pw8veKHibWVQGhGDIGNPh4j0mA53o57DHKUp9xrsAOdDdAwA3/9Jfzd8ma1ApJVFCUqehMACh4cCmlvr7DNOYJ0qaroJbIunUozn8ibmDu1bAkmzWPgUWJc0UyYNkSV3ZQoHKeB6wT0tj6xgdI5rpNRFOPwfZcPuajFdHMo3wDiEmpWJt869YAVAZn2SRlFDwaGirxrQFpq1NVdq4ykPPJdVVR8A04DvCVcH0H4/9L2A2K1Hb4IyJniKa19dUP20mCzRqTRZKJ0gw4DQ1++RaAkJm9/Dx6Sqy7/5BGWCfBaUBrVy5jOxn0UwUTkFnm1ddO0E/qI9c55QlxWRSER/pcQeObZz4MDhfZopCy7y+nb+MNLQLrIUO4JONO4cmWTgV0QBBA0p2nGstjTW4UjXlxk0IeEPiV/LQkRoegncuMGRCjBDoiC3A0/oZv6RRGZhMb1F/f0FHX7/VUApvOUwApOnA+GjIdvmVvnn9rDgcc0MlIPr5I0XKV9oynHFKk8W9c9uyFGKaZMYVIDItRiQfOW6vBUIOGW1v1KTpRwcvC+jiuFdg8n2nzHsQQtt79P8r8nUIhZ/wSrUAlclVyAq1zUBKkPwnkYN1Om/Furk5xda/UTra2olahojnGkzXjFcQ/wE3idm8H7bordud5RJknStA0HrGcTWyi+F06hTHRWFDbajitGj2ZVI/Iwu7P36Jm3d4W9gIN6yW+16zVWm7QEOC85I79zfRjgZj1+GCOb67mgzLwWxLROZYX++8RZ4c8vY/6Wunq12FumRQ3HtqXDgGNdzQCSzOzpEQsIGQHds1s+O3P6smKKEtvWgoIxspHENDK8cGhm6pmhmDMy/YV+i5BJDkZoWFsSYZSfkJov4qbUqfGP4FbyDbvVOOJoN7L8M5sHcAMc6RZ2cqRHZ2oej7YjTeu6lyvkLjxhwXTPIarbkRtYYlFeJn8TCmvZR9NoBSXlwq2oxjBqZJJVElyeutRCESpwJhMikfcLIfYjJOAA32JIGIKK7nPXutAEdn7LEVScTUG3wpSZb4OVZKLsoU0KogdnxYFFi73YjDfPLAjOt2w0QuvM7auXRGhhFHnh7pFxf3QcVUzStZsFjiA+JOadatvqXO5tSfuPeayQilf8wA+V3LgJhloc20kiOtKsteL7e86vqC9BPCsMVcyBk14J67Dj7AGR9GR31SGqQDePhaaHDTK1l21201+vA0ckeTTt0GhobTBZyt6c0Pjk5IMD3GEyL64VNttU6a2i6pdFPbkLwFcLs2lLgoVVV8NLC3KVzQ4Oxl/WDoC3YQs5QS6ZzmZ1nzu+vtZOup9ewHvFeBhEaqz3BJbckMoGGMdlDn79jF916ctHeS2RpxTQlIcZA9SkYVNf5SGjZjlt85oY3/YCIgasIKZ43/OcWYm59TxkHx31aRPZ+e3xzLj3Ca/Q7E4TRwIXPu2Zt6RP8XpGLMMSEEwS8d1UjCL6YeQXaEB3NAyOjVmzr6Fr+VW+n7TLn6WsAT2ga6PzYdq+h3ipn1h8Oy5Y54SVoXQ+p8WhBPp2RWqrFouJAgRvErydU9atehzuyTx7Rw7maOA5XcfrWxcyjMYmX1lIIeBr5ZUC5PBGSya6QroHopAZEcV1TkklxdfRZko9e9PB9FfkTCsDgKhtCoc3hm1Ice8Pamn7IvyKAf+s9N5SSk3BO+JAoWOVYVjJ74ySsgudZ94EJMmRUmligYQcIQgQ0vVYAfNjCNUAdwOMu204QTrD0+PISJ6OTjMwC+mGCPQRvASlifnepvKZPi6NZXVzeZ9R9dYa5Za5Q0iMa3hRnr2aQedzET3W0CyUtDYKzZTnLLJ8W62ELAEWpvNmwC2xeiGn64ujruk1xYk63YMQDI1TJ6R0tQTVsXXlu0Ph8mSbL2Th/cQZWQCu5TZ7MVJ8yMJ+CUJVm2ie7A7GK51EalX5wj8AI9cEdEs7r5fXeUgOpQsHwCv5hqJ5MfqcPfVBI5wjMlg0dBCRxrtLHy7140j80KOdYDHtEp0H9+vy0JtVRGLz8DDfvclBzdnVF+73P1jIV97/PQTj/94TvyOGRDCmymnMpiVwaXPJxYRSyusG6N6xnMjNAfBIEPhrIIQjYaqGJbJBt8ack6AVdK31R2S43sJmjvYHmj6cNPwvjUC/aaLG1ovIT04tDYFHVC7/KuHwOGaDw2T68lzfc64UHTeIaxV5XzwGg0/HzFQhpMfi8ec5n/ImcESpyDQWSZalMJ/ljJIDPQ/q03jotLoM9mbl8/AXRTKQ71dEJ2LaI11qBfSs4pHiGzXPrrd1V8+h7d4kZzVoYzkJSxht+rKOmGvFDwMo0AJ/Z/n7Tjm/2PIOQeT2OWgqhRQqLoDnIFMevsxC20yop8UVR4Q4rmgq251Ivh5hiVunwlqAVyNB8HoutK0zM3knQfeUEJFVhqA0iUj+sAslUw2/EHTDwzTYNdSfvSSs0vu1uYxmaHMc4s5B5GDwFqlZhXcRVd2wmmW+y3lYYWsNbOo3A4oNQA0F2bc6vURjigv0KnF9maZxVzZ1vIFqENfMfNWa2GXiMoYkIem9s4howdR8rEF7vfhqC1TYzYAWf1T2+JVamujM8R8e2sFNSuH7NVZsvL5U3Gx3O6DzI5vRF9YZQ2eeXWxPs9d6JLLv/yr83pJ6DVbGOy6qFBkI6vYeV3kyznqR7s3j+Dy9XcAey9cV3+EsBTCYbecXDLNHXEUPmGq//fc8lnO8th7hC9stVn9+73QId1oYiO+4ylMncCSp+ZwjTNAGwiDxJnmvIMoLz9m1YypRAAKu9V4f7YN7HWUbKQy7vbhTBIHAi299TUZPdCf5X2qZ9qZoBdZOUzWdfnZb2GOBXrLDo5kNK8/8u6qof6T68H4Mli51TyOuYnjiw5xnw10ugSJqSZw1XmkFe0ywn3ZtgHhT5JxIMMtReK4zYKyAmuw0rNKxvW2a/mh9NQZaJWv0leiYHJjrdcoMOKucSugP+A/lzhA++vmZGn97O+Ayr/XEk+g0u1KrytLUWaQUQmVFQqQ47Pnbqm3O4xggE0qEfNOloULu+OwmP09JcuWS1D7BoGdPNwgmqI9peLDyxjXFJ9lThz2tGoUdUZCt57Mu/tEPHc18lcr7T2Qc0TnAUWRlEMyswm7ADqJGpaNx6seI6KOEz9nT4mhizgJ68CcvntTiUZC1QNu1lIGRfI4tiuZxkgteMymf/0bqXD4clMqZdoMxWBwnB0zXCYZpgsqvjWqRhFB8ESHSDAGpXwrPY1g27HF3EQ+objWcdRu2YsMlREBkeWZMFGWz0KCeJ2/Pps6L7qZ/Qhe7ajLgatOLdcx/Z1MxuwZHmXa7JG6I1phQiFAXiVuSh83DXN9fX1B2vn8ORUZ06hBkjczWBlxaAMGA31ea2Q3HkLvVKkyd9Nm6w7UkBQzIT8xsHIMCO9er9SP1V5g9Gxfn+ixCyAk/codlfaEVtOU4RQnp3kpkAq3IYNjgvKmUriBZGbGneH2VBf8JfCYRkaa3kSTJytqCvF8L38G7Jia8HICNF6geNaWFM5e3E/SZSOHQ8GFSvQGik3L5g9cd7NatDWF4JPnioq8EdMzLcQIQFJszDWKIi1TB+eNEjNsjJaVdYZB+hpBIVO5ad2flhvZ1dfZ/DiDleS6Clry9QW/kh4OXhpFcMSaDAPvb3alxQ+l43JtVaGRqMjhsr1++R5qihmrzmPAJCn6/7wx793yyxGFi5ve9lM3OUyBldVBslO9bKlOlpck0Cdgw3S4Npp167TnPMPaQHHYWuz+orneX1veVg9p8ykoJoZmAj7HRq2etG34x+UG2Wer/gQLw7JUksxpBAxINv8cCwcJbXWC8uewsq1EMMsSRP0Re6YiZiWyMVshQ8ED2F+0OGYohlgvGWq9Z5fgxJXr3rIGJqBOALHUOJqxEluLbUfAl92CZSLGmQ249t73RFFOJQD4RgSEJa0BK7hBV6ZJDS6Jk0Jsz6YjNMY/oGtI8mfkadKvuZ3wsn9eMk4dZonx9xGi3dD6yypP8fWEXqiSYHl15AFToBFn5xjss+ToQtEs7wAXnPsi1nyi8iirjzqhOEfwc+CDUG/dlLVO0z0sWZK8Ew33X9nsd/w5BTTSX1xKqMWsibUZJIW7lHx7MAjD1ycLTyssJLawcOwxtrfHe/qu/bl6dTKxXSNHHQySBW2bVb31CbYu6fgbcMLcGVYOPFblaXbupocRezGl5f6RV2FuMIlctjYH9FGMrSC9wot64v9nepHteVY6zgo4nKbquDSu1di7LWgaUkqgj1RJlVVk7KcucSXdmbhpucdpnyqRXG6G5MN6/UApLFw50dcCXzXdo/6qrcFM0GewwPiM0Z5XEkWudey06/la5TtPlZ81UyM+FXvqKpaUHfZNN3S6/W9Aai4c7iU6AXy4QzaPSS7UgI9mmdiSqjzZl/xfk0gfmUpmPyfw1qzh+oOjKFCrPb+p8ykQe6q9Tambyks4/+8VKqf+GMkuPeAB2cHtI8HwJnNW+BimQZWBAS1UefncP6pqJmXXyo6HhNk42YGRtLTCBfUsliV8HXu9+PeEYyxgYKEgv+y8c1pmfaHZJ4cri0sYzll6mRF0jCm4GAH1fhg/Lq0q+nfWhO4PdYce8vtDO9FqdqESO96mJaUKsi3nPd4vLoUDNG0yEBWB/Rtzb1k3PsYNFJ/rYvyz6AfTB15rEfRu3shasbwT562b6TI4PfbYUYc5DOQWeQ/3tr99IdjlU58S4Mk+p0nxfm/sSk3Ts7SCIUWT+ruTGfIecxl3MZEhFE2gRjR0IhzQm/o1g8a7Gu/CJh4ymctpP3keWgUYcU0Gkm6fRaOjx1fqnLJVyOs50hFj25WFQO9N8pt5IM3mZrhvi1seveio0M9UZe3CH7fbWMHJEqwOkj0l7zGgwKgAgMtFD/5F6cHpnuDuyWi4kBtXq5ssD4lkq4gO1RcAXRo+XhDzSut0FaoMzrBjvisb9oil+GKi1ctIMu1l+3BwXKTGOJmpnN9oiwEguiW/D500ac6I6fR9XPwJmmKB/FbUypV1Tm9DLaEIADm1qkjvgBtVtTmDklrd6KIcOhLivbEjBsuv0J3rd3mLyZeMoqb0MLPo+dEASIaeilHY7nuXxc3u5lui3B3tvMx8htPLyN4k2zpJu/3dqNl0D5qyVj/pfWGHuOVWauvkECf25o5h9kzaBQ8FmyKj+vf1MQGtC8m2mBs9Ey8qL3zruBoGe0eFdRF0CadCma3cj83ByXQOQj4Es++JU1Lx+D4fnZcwzT4Qcci4He1dzrYscFaEI4oz1pbVJ/GK5BD38SLxqlz9jvL0/9f0myEc1sj84vi+6R83rZHFozf9HivU+H2LS4cxCYjalEmDWRafYT9E77k8sswRQHuc9WeyITScdCA/N5Yc9OxPZisUAgRIYKS/J0VG1q7wp2fNUmeUCLaxj9ZaRb1N05XHr3UOIryAqnXaXxzb4t+OcNUiNbizknLsooNpyLFRypcY3HKcZW3kWNjLkYxBOLeEYdyB3VvsnoXd5wAFLCpoIn7H/Yzkac+U3pcvn+855gJkS/1eFW26j7ddhTjsRag9TaFeYH23X0+iyi6FqkImOyDfoJ0lEO/1s5ZfCAiLHJ5wES0BVptBqWzkLZF7gscIVjeW9uQXAYQCj6Kss84Wn+TlfiY16J0R3bMcmhvbwc54lUwIKN1bZzdwZsBz1tmxGqA91wWghHXsS9Ci8RnkpaM9xCotBzxRWdm3b6ZdLUG2OjniOIGhg4o6on1kqyb3dOToaL37x5U1oJRg61jy7Cbv3kSIviMqVID0bxzb8TgaaTzuEouO4fJUq0yiM1h3A9A96Wz8KLY1U8WP/tTREOUH2ka9UP0SGc6APGC6jeg17CBv5mk2KhHQTZGkTdPzdb6HFiJP0+UGpUHkJKJ53G+ZoBSPJDNeyGxEHglMnTdJMU0SsLbSA/ACPDwjucWjRvyz/gyD2Y9A6pxo27eRtl2JyicTiAjXOg330CgmXfwAS4Ym6eax9p0GbC49UI3NPdSQxHNYNI7PDnJk4q9ThP0ts4BIDJ1q2FUE3b0P8HwbekHzUMl2B3X1AteG5MZ0dGA/EpWK5DqrXwBtve3xOYWijEa1ZncduW2ytAb5+YtSDyNa3/OzodvYchGWYVUOxb5tJJ5tZSYDUpmaeBIpfIk709q+KjqgwVNRB1k3j9A4rvnKN07XpF4VBTQmih9sdrFTP1IR/ll0uLAIcpy8Ot9kpuAPt1oa0pcsMVchCwWAQkNIETAKVl24A4yU/mITiF+I3hZctXtkgv7HQJ23iUpOnrcPldI61+pyLxIhJATO4wB9XEDzeeAuqy4nsfcL9WR+gVzCTSih0URnJRrkc1QO6e8fOsMD7xFvOZzj8lX1NfUcFgVwIbT7eRt0vbECggz0ZFrTui7xPjwb+vRxkAeDGxRj3uM5hAAwe837RlEmpN/jHjlJYOIn8daivgs+h1TJGC1efZ2LIL1HpfO7xPs8YE9FALw/4uTUaojHWUZ+OvBGkXKaamfuppnoZ1u84Ks5g37jstKm93NI9ViEEWrfZyiSo16H4ARkfVJ2yGuLNu5+DVSLlLEOqHGBtUeUQvTJ46giuA26SNe0PQNMVm9qA/cNAejPt+ykj9avjEgTuIfV1lfzs+1Q6gJQJvO5Lam+imqRm+X5GDFsjB6DQG8L1GHbY/uVFE5BGGhXZuB0CvmH6boQeDY1+6OqW7ftWqZ3yOlEzHkmOVOyzO3SASqXYFteUK/JqDJLBdqHTnXP+wCF76fHmqSKGFOADDzDkHsZHHVcvCygcgQV91OmWfTXGAA/HkhTscGK3z9Cnfe7IMcCrbvMzE0WM3l1bfo/qvLytopg70wwMSTJfrGhy1rVfcRP+WSWavJWtcCmGfAypbOYXgk2H5tFygMwx49AoRdHNYTcQg0Sqdo0AKJ7aFdIXCIbBrAM+jESBOrgkdSZf2QH7aoqbOGBsqStsU9v/oRSrtXY1WhaZFbotQmB4ePkXYTkAZMcXWZIynHUCwk8p8Rxr07LuyLNLgtbCgsbLHI0MkL6k7wx7ZTsa3bWzAolzmoDWG93DC2SVLVqFbOm9MciXnjUB4e8kmmVy+imcw8Vmt4gQ0LryBavCCg9LLQcVUk8HCoVDu9xZbpbrqrXNQn6JWII2WMFc3yT6BZeuO2IWYiySQuTU52sHb3vSvPHxCzun+dHl3q4Ol01fOb+PNBrxRqdH6Zzh0v/Tt580phVllMi0I8Cop2Y0Jn/bvGKB9PGTHkjr17jZyRnX4h46OMz0ow9AU3t2hG9zsWAvIAnDk3pcqpIgcgyegGQ5aYbrQXw/fLV8XNm65hJzbr+4Xwpuwnh57nnWEThI6f6FnlArj5scF07PTnotz1I4+F5kBsv9oPVNKCQ/fABui+3f5Cfj87/UDowES6lNeQzQOnAlDMP5O0PqPHiSUc2Qgx7IPxNuaVfOvWv65VKQA82R70t4F6E5l3/hbkGKCr2jiiKok3RIcTnHQ3HVWjBVgCz4P6vtGDtXe4swTOlT9VKLtk/D7lCNRWO1Er6TXdWZDOUcR9ACGeXbqpzZzbCrxTM7iK9D/AnL8kSj9S4WTIHA+E3+oVQMae2XaKVwjGSDSyh24TqXflMd3tnA9yu1uqEhSoeSOUPRoAOX1FXoYpVYHD1Y1RG4zHiZ4zfmqxsZKno7hJysN+prSCAN1QPynZ693UUBPrqAISQcNXxHuv2TXR80J+lCTscvEz8UGqEvBOBxHXVZUdUiEnCJVO0U4UziPOSce59MoBx5Dwuuw8ceH2G+eIRXbiQwd4akBPpXP/I0KR+zbJuf6/sIDbtNEdGHk3ZFRnEbPJGStGFy5GdeuNDoG5p/ANzx6hMpQtMTOLZAvSnkg1/wlDn+nBTB1PGWdRCdK83jyoPAAA2VSjjCD3TJU0eXH4lus7GgeMm6yq8rgrYcfHt1xHB0JJ3vhIasbWK/k2A2fNr1BCJQT7YG5/lYNt/iMHrs3iIKu7+I3m/iK68enS94v6FJF0DPt0lPwGew2S4apO82RmWbh3XdHybvAgEgaMMB/nEqBkGeSFU760gCn6RVvXUqcR/pCbqx/BYcgZRrlXkNd3jW6fwJyw5It3osaV+6pz1yFi68NVm+mnrk9DEKkJKbLcLzBhM6vfQUAfaV6ySz4WR9AUGVzZgiUq4fy08bKvOFzcrbqWSLuxR5NUYotoI764axypJD0khfoAnFvch74GPK9GUAHfGnGEKmlKxMsOTMhxri+sGY/J6VyqxTIClJuYRifF0weppoeHY2mRsIS7aBqJ2rVWd9Nm05ASQMUvlmZEDIifbpdOWcA4wMmluYSkXqmf10AoTxPPCJ+FU73OiKdMOgIQgkkM4s/nabnfciz8mMrJkSfcP6vYum9tpSShwFYi0XEPIaECb6WPtvBbPFOVimET6W1jWCHZSoOz5VKnD45XU0eVtqAKTGsg5ytZIAa/jGN4uGIEZSHTyM2dYqm5uxWs6WhVGbt4rtdQde4J0kGEX8Y4Jnq55JZmEngWmyvh6YdmwbaCgNjKPNZ/jbNDHIIaCzSuHa3eBLdT0WTkPNZFJw7e/4tVKHTs1u4SjcXf/AUhewg77AZwpcU9LQ+yUKFNLk2sF6oJJEjf1CAr30gstaNichSahXov/CPwXsP6lgeTIKrXJhT7aMTOJeYB82Oz2iN6Zg0z/5EOQkLPlMPZyKCHc8GqpZjN8l0NUj5R38dYi+y0uoC4yPt8Uorc3ULbOkPbB8YDMyFNHEaOImHznAQS63p1PW57lQdXloc2M3hRFmD/61UAD4jihSz4g7Qlrv1Groec4vCVkFuMwfYMF4Ik1b1Xr2Lr3KtqaJKJcPd4k/R4hzxfdRUPVtc3a5WFpaVDt5VEnSdeta+Ea4lCS6ZOfebYVfYbxTondMusugTVMoFCdGFF8XbGzSK2NHuCKf/5Nlezp3UMgt/lCmbFoDMKed83ExRjkgBhs4bPlR2ZWv5GSgPrT2MZSzG8N26attlDxEw6wnMByBMEKpafBZXBYsIh0/8ODOxSmA1nUIeciRbRx/vADyoHdtn7ZnA+4u25hunW983pYCnPBkASZo9U4N61dOYzFmeiEcQa8gpRIplPcDV/TtnadVs8iWZTWyljfYlSBIyJuxN2kfPlmmKFNgR96mB7JCJmiv8dNMfEW//Ykffwr95A+jJdWtCUsRmM5/a4RdByZ7i31YnTeuBG1sTLjKit/oM2Q9l+goNpRWaZbHJQmVVSItPOh5G7xSPbfDJRqo9/2SrKpzHEJhZ1zq+drGtwgtvZZBa4zTaK1YMIN2WTmybvl7lNGbzCEsjbIBAtWmwnnef9d5WRaithqUwnTunhe83c3dDQvqMRhQoYBIIJmtrxtE8HtErfhPCSPHAL01lS2hICOUAZl7TN2LaOUHh876iJu1pTXC0GMD2Llj3SO8qF8qWW5s4AAl53IXn/YVCNMFBbRlWzr1tni3Dhwn31OFqg8P8E1BhWdvYoKHbBYtiLYxWY3U6M/bzMvrKL/D/oAAAAA'); diff --git a/docker/statistics/app/Services/PatientDiscounts/FamilyAccountsService.php b/docker/statistics/app/Services/PatientDiscounts/FamilyAccountsService.php deleted file mode 100644 index dc30a6ac..00000000 --- a/docker/statistics/app/Services/PatientDiscounts/FamilyAccountsService.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/67Si1ByIJvL0RNign5p0t8jOATgMS+G44WO7/HU/eMUXpM4VCzAn/C74ShPqfBNp0gng97Ycc1UrDASo7WsFA8+lM8duTxpb8Rz39l2bC6G+ANqRrqjxAN2+kaqudtQn81QNB60U+nhdBPUaDW455QBBy0Ao2vI0zKQ0TZP3IXwVvZLd7gJ9yW13HjvdcoDwQOFz9fe2GgFBSJrrWSgONSaOyUFZvqQjd4dlWe6N0Tv3CqHmlyLioREFVBEXul0xfyOczzPOJJVSAAAA0AoAADcnjKVolZkKzedGGTgR6Hu39vZVOQBWBncM5bBnV3jnS/uV3vFeJlfJClVhntMl+0sS7Wb7K5WjEBTRBC0qx9CAwatWxYzzTpNVwXwQ4hg6YWyVAIdsZWBLSQUQMyCvm4NacUo+q8n9pcE3sqHnar4Xagkyi+Z9XvfGgPaGDUTzLTM2R9d/MpXW6+ZwJz4d6K7Pa4LRlOk8dvn4iMYcXLXCh6mfZIVnxpArE2zrlk0vuaG8yVrjC4jrl/zT9ES0mblMFxD+Sp7d/xvuWbCqqKeGCzAZ+1z+5DaNoKCmcqK8U2HJwO2IFYJcbKPRX6vvZNJ6v6BiDiuAeIR5kW8KMugOn5jCTLbjWmKLPGkH+Wz1csQcQFrwdHkBeFkfVMPUEF3b/r5yITV/1zqsDuL3CMzv8Nv7/iEPZyUei1IK5/GoPhY/rk7drfvZaGV7PZT/3Vg5Rkk/bhWi4QOjF+x/Dn00GacgdtM0P17GxQH4lxRrnl0d6YRafeypOF1uGxRbRVAyb0KijhwMQrKuctkBidz6p2UvPKGnz8DZrHqhZjZk3sBD9Sv2mQXMCnNFreMicQM3rBhqvdVpKiGlmqfFtpXP8Qta+EPIQt/1GL/NQgu59mzWrN6uEqHNCxCSvx7H+3nSBkCQ4hBjKIFpXqwVdswG7qbpo2wnZfH0fIKXRCdK3JoDYZFAtwD5UNRCMkLOoA7GzizDlE4BCLOV9J1g/cgEDFVQjxhx5GH820CnlKI61WRJO7Miz+BZ3QL/z3mVEnHcfKfFpFL9qGhZ/VK2DkFNmTQz3QGile4x7SwsBCz3M/u/kDyLwzE3noYHOrWnzX5weHrB5Wv1UqRH+zqarZNSSG8djWVG1LJWgUPxT6Jjq5KWSUf9vyG1nbIKEPenHEgJLU2/KEJOwN2Rt/1hJWLpnr41e0G9Ayq31UywkXHACbJy3jLWhm7VCjNjTgM/nDD3QNCiCCVY61mVLrzFTMi9BFCt/11F4VGnNFsFIHhxDKSYaVrHa0tIjCE/MRrMmG/Tyw9B9wRHlQfivcScbg0p5wdLwsgDF7+0igVpb8f5NiP4LndKlgrYtiqHZ8vLNk//a+DOU4NqYnaq5HW3UpRuYjLopmB7Q7DPSQJt9fByQu8UuMzjojkOa+VL7q+Vliq3P769U+pCBSRHsimBBhn3MyetvcBH3qGgoNf2W0nM8CAglhCZnSdYPtUjbF4K9P0RWtNwUe6Mie1YMHw7VNQouUjGG+km7gZD+4+/u5jCA3cs8Y65yaP3Vv6etuvSW1/8n+K9oWuiOv1v4YMOpCEctdq5c2+PDy6Dc5ahHJYIoNrnojlnXbaxlqS3WyDQqu2RC4msXrgfc03oaqAss//s7iIYBQIHrGuoP/FMX/ihNYqq/vD9K0V5rQH0F4Z71A7XzsGQt4amzCZLO0nA4LBK/A3cjBFoUA/Ad8E4Em7bilhZdTwykkg6CvicRJfWGhEdnroLWHnzdY+Gxd6GKmaYfQUEOa4MsXCZKIm78foBDh3Q7b6PXBxwi/TCHwZtPDF4csydpZ8T7B9vfGTZucSCpCNVDirPzNSTWh7jGa52F5iBItyc3y7F/h92pVaOorUK/cO2dhwYbhDN+i807ZJXtKD9jaBjP5HKn+brveU41Wn9a2iLGIl3LVd0VbUcmgBox+Q0t0y7wdJ+UPzqsbPw+ieL7jTBU4TWEi/MWoKmNClqjiR6cJLWQu++0ALcy+hsvKnZuRZLOkKYU81ZhkdNpQVCaw+r/z8xB39F+35XzTazc5pzRRZzPORx27nWyw1tN/E2b+Rydz0WQDvCzBhbvx60qbDFKmRLSEvT8nVQWAgq81NGF+a1gxsiTSNLjtNtlF/xhJeBpd0QnivuPjmE1GyUK+kLmxGRKAgDsh632nqWzq34RbMjXSTzsZXBB2IFV2aVdlVNbTRO163tOLU02LRT05/ou0yQDQYhHTmzRcVATuYjCp42EBSxIB0rpJFDN1qQuebIP079QrCH1t5SXfqEq8ZxIUs3E+ngB2O3qs9pTBH08oijnF0lYDSVK95MXxULqHT5ZTLtvGWKBv3hzKh+hzv3cFJsa7udvyrGGV/BVbacXuyFoxombcwj1kxO3Mumxm00TIziYPCow56iKPI+1SzELCqbD2MmQ/kqb+hAQpdkcf3w+TBPcutckTfflneOIFn3SNC5BjmQTp2MoKphXBZbDW2xzaWo+8XHzafLbevJYdXM2Fye99wWiKI4h5K7vBZtpNCDF2IaNXOVk5KuUdIXkx9fzBuolALUCXJSKCXz/oPoezOv5w6txIdATN+RLE+mRE3Bb+2HqXx8aLP7eKvHLLuOMA4MRGM80rXr6YUXyBI19NiAce8+Yss6AGRfAAxDKKlmSzUaD+SAJx8K1VCNwilxRXUkzSQteUdQAK5aGBXVi7WgP70YUIOoaok36XMkvGc7Dln4aoUYkxG8Htx2tAhgx04xPf3ur9W3AIpZcogeNopPyltq/fVfqq1Fcy4ggeNNatrXo4pIfsLXJN5BAPCDxdV7CYbt+9bzRwipeuAhDIaRYGQZR6rc2mTreTieirXMwNzBzkLkshs9ez0Uz/O3RhaQpqvAVhjr8U1zRea+DAdvuBkBxuRRSIDhrCf50qOBOzYtQmpLhtWcsJIKhbu/Hb6t1/ttWXzyDDiDOcKondxFBKUH8aLuNtQJPOEi19DIgAXk1FjM/3wbJH9B9OkSwKIUz+WazGWGqPLPkXEVlsWiwICudTb4+OduGM3GXit2pCSbEuA26MTe7MFoSOZ+3bxGD3M+IFBylnhnVkYDQFsZpcbl49ZXrpqwYoU0YdNl9wXCJ821gH20/qee9mrQvJ1bkMcKsgTPBANYYRfiW3qB45o5WmVKoOzdA1ii5ImuGLlXKP22J3UJ22+dXlUqveie88+shg2V5dmFmhDlLJqhwX3IXJgYNAGpfyc+sJu5r7rnas99NqeQJR60R/EoQXwP3se+WV154XtOrCeNZk4v+bvDrz4xeoX6vsJENc/zmNt8RIPAjQnyBKHYtkH56PCQpL+XlrzN7L5BoWGgMF5J6IEE9Z7mqO5tQ4SMuTMpyYjCep0Vga16YM6kOo/BiMvtqb0rSL+4Yw9wqZ7a9Tl2cQCep9plWUQfeG2KcjB1dZmQlu4AbqbIEJx8ebN4H9J/KX7rhvczSlMdxOXr6H1azsDPPqRxaWSslx5Ehf7qqBZMM6WnVwqV61MoRGtlHYY82eOsZO2NUtXvJRQO4gQ2ByEAIcnRfJwUVRfZWYwx2FRax3eedCqbQiWB19dN651tv5AxZcDSqMuyqZcEI4M/qiDM4uaJBgIC4Syj38YWUkwHHRvQyDmIthoiaRjiMYX/poTQW5CuPyIFEi92CcoGAmgCjqn9ojdbYFEgElBJQeLCTErd8c6g8PFyouYerpZbsvV8j1GMTtK1syKMiwCwLpJS1jGY99DgzBgYJgRoN3yk8lBnDzfQmVfcHzAIkZ+1pCFIeQ5KKmHu5UB4M09WF4W/K0sTnUtIDBPCyerlAae1fqShjuW/DAPD3VK1lJecn4YNp5oH+bUcs5PFQVDS+Axuk46K0F3IeJ+oW3UyH4bY+9bin2vUYt9iQU4TcBEXqAbTpLiTQwJOdVH2MFd7c6IYkFObW/NTCHvjv7RmDJcJ5AUySVIJb+Yx/KELvZJoysdnAAAAAA=='); diff --git a/docker/statistics/app/Services/PatientDiscounts/PatientAccountsService.php b/docker/statistics/app/Services/PatientDiscounts/PatientAccountsService.php deleted file mode 100644 index 879b476d..00000000 --- a/docker/statistics/app/Services/PatientDiscounts/PatientAccountsService.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/67Si1ByIJvL0RNign5p0t8jOATgMS+G44WO7/HU/eMUXpM4VCzAn/C74ShPqfBNp0gng97Ycc1UrDASo7WsFA8+lM8duTxpb8Rz39l2bC6G+ANqRrqjxAN2+kaqudtQn81QNB60U+nhdBPUaDW455QBBy0Ao2vI0zKQ0TZP3IXwVvZLd7gJ9yW13HjvdcoDwQOFz9fe2GgFBSJrrWSgONSaOyUFZvqQjd4dlWe6N0Tv3CqHmlyLioREFVBEXul0xfyOczzPOJJVSAAAACAkAAGiL0ayFlurYGs/q0nxYruZ3OtyTUfkaBLrayBmVINOlJnXZdddlSMSX4bI+cgfp7SFMoO9sQAXO02VmmKZuli5g8epvK9Q6A+fdcrQjUxNK7yG15hFmqwvPZOCBqObH25fEgeewYMuv6nqhcYTdOVXJqFa6Wz93EB2UvSgm77Tjv+0T60cd7yuXY0zRiRG288DaRC4US3AuZBPiqgTkBhdzXtdd9DEpklPWvI11o4KD66xs6IpVB6yul6urFNTs3+KCJbcF7qHgfJsQyVjvmrVWomgoG1K+TzSCvZDG/BEsJCCRWViy3Y19iEP7Cgar7TGzCy0Esu+XPJYZHDxxNTW5KXX8Tz69H6Pv4NA+t6CF+Fqada0ZKzklVnAfK3NphibY3qIhgS1DL0M0a9o1Cu0N84wGSEbYZLcvzS8ITZ6Rk15eQ1WyRKqJ5FwZpt+eWbnUupXZ0wcziDTMlRp/gmiGIPTD1koIFhRFG+XWE0tG5h7W4eZTJH3WbvwNyshNZvG9urRfCcHSw3I9m3mPA946GYZczrnipgrQEyMWpFprUyZRIIUGE7XdzsMjQZubeDXGJDNfN8QXIGQ6T/H2uo7Moiv6hZSfpxM5bXM49feRTUrmr7XIG0nyKzETcSuP+4YFSEuJTqW1o89zbHZM16yXOB4NufTmw6hb+xiB2RgGMmcm/tbXwwvKCcj9hgNb1RqoWS7vmz8cY5DG88A/Na6P/QHmrsIM/g44Y3UkpgiX31s4M1CagF2M97KxPkdi6qza+vUTQWExditB2gvpsjsS3O135WQMU2CYQ8nSR84UpNoMpVxxINeOS9tGptXhQ+FrddnmVkya82u30EYwoYGfDAaHuzh/Na1FIjszPgBqLiyxRRKknoj81aF0hlLabwiKHZSepl70K6qkG+n9BvMhceaZ/55t4YDqFJoIMQ7mSsFya6VyjRHL5ZoF4IgmR9e0MolclvR0/oIz0VFcV8P8Pn++zdEDCSFBBnLiPkb+hFEOWSRU2VppjIDwEl8N+1SFifSMd+rWZWIBFhFii9UD2WLvNUmDJ2SrhPEjhbyHRRI76Ur9U0LlIZIOnvVcORx9NOtGc/JKHxpRGZpHdGSR2A2lFcEPgZbC3HLbFlteXw7n0Iw/aQbTAWSgUBJnFFqTjIMSDERUnz7tvmW9f0WfzBmeMV8R2JK33c9iQFF1cSVC6kvjb3k2SHvNMegTBWJP7x3wVdG8ceG2LBNCfG4LHBJ9NsVYfc7Ykyw8FEalerq1fe7HXzk/dUvbeDTZEO2cxkpQCkE/KOPEv+HZOG01nTJIcgeeBWnQWnToL66p1ckr6k34IAiieOVD3iNLlax1BtmIzUcuzJdyYsgIh9e0MfLa4obc+WBvFWkihK4wd4OiSurHmxL0W8+vTmPcZruZYHvmzXHLf08TpUGtCR26+QPtP/Ng9rJOSVq6+O/rGlvdhoiXMBe07bTq8+vqfztbMScfmDsfdIXWZBUkPAs4GuAAfP8c8b6CSJeL6sAvyffE7Nz8MQGo2oTdMkCxXl5fwHH+h82ghjv7Gc7GM4wQnxKyZ1Z0QaiAZoucR51MPiSAPuM4Jlp6HYfM9oEYHYFsgP1PinHTFjcK3DuCnzdS8U10A/gMN105SNtP3M+npPTa9vNcvsBB/Epks46QP/K6pN9HvyYjqtf2MQ8zpJCbVfnv9oE2hQAyWznUGFCSBFOgVasz6ZGn6OKxgmePru3kfYXFRzR8P1nEyHWYu1CPqKSyB2ahCD4di1ZJOwVg0gfYxqho5nMJAXUAvl9CiwdkB6KmmQqKaaVei0Hp2J8KPICgzkWGtYbHm/+D9va3LjXqcF7zDOCnqwUae7sjt0xDi4AJX//t0Jy5yn1UiT+GUDddJe+Mk1H/m0shdU73sYrMaPdpULyBoZI5U2bhzgZ9t4l1EuxFyI3gZBLm6YFgcyWCr2NYjVBKvJy10ctKg5KB2C67NRVGYc4dNtcbicCsZAgWtq5emOxVaEr662c4tHrZQxgb5TkWSlqtzoRdcaJC7VRl729hTVn8a/2dkifgFMw+L1TkpRiGusG20cdMdmbC+/L23NySy7sAEte6yWxwiwAiFLOAyDp0xsfs/CJkCW5eJFU+cA6e4Yjah2rC34sn2qTjfktOOtKtQ3uZ3uvbL7/15sWRK/PgwPSmqp1GWMzJsqJ/STKgE/NOaPjfAk+OG6+gO9g/2lqEc9LsAozT63PCpXbQ4qPdlZLManRu1v9aNSmVhBU1y1Q9f3WxqWxV7ErYj5i/5VlCZ/sY5ddZ1+5g7w1kclE7GL4UbcLB9OiTxKpHXwFLXnLlk5CFGsT+3Q7HEpTvNX0xNEfri9//o6f9v8oeyPMMpZihQcbOLG57uRp3/r1VvTZCWPktUtgkcf1Xu0eVpbC+Prxq+AqaPHe87z/NJC9w/6G2mBPrc3PgXJ7y3Mq4Sh6kcoQYu5HA8fKdLRDrDa2wIP2OeYxoExc3u4nFChNQehg8BHeYncoLNsyrmeC1/EsPwM9xL7qp9JLT3B5gyiJMq/rA/MLYryywkkzUwComqHJGXBfVTANu2iTlNZpSxRpxND1tXJt3O1ZYRjuNGJstTM78m+kYb/IMOoY71tMfeHbFEgcUg/v9xjSobrNLLNrZ3FrxLS7ZUYg5Xb3Zaz4iKFzyVTJWb2Icg7A9Nqc/9C/SgMRMmQHJEcWtKlnXxj2bHRuc3QYhs2+N6gB8FjJoj2giLEYa3jUISCfQV0xqrWzhQu+8YgIgn3BLCMs8LTZV0dwrkfr336mSN28n75++DPIaKinOPumjizu4Y5qJZlz8xoOSam/upJAU5nDrl3/ttOFSP+rk09P4+0AOH6QyCb7reg3j13fCm5IavMJy9PybhWOlayGnVx8Jhx5G8I1ffrvCUPXS7E3E359PoukJnZR3LL+YPvuqrAjlIrw8Fk2h3c3JoqhGn7byhJQhnwEXVMT04X8Ac/IQAWbkiHPF08YPhMsCPjt7FRHfw4OPRBdLhs97AJKQsgcU94A7GMiBQ+pWWmP01KAiyKix4LojYU4U6WuHqtka6WLDaWnisIN0fa7REvklvU7PAAAAAA=='); diff --git a/docker/statistics/app/Services/PatientFinance/FlexipayService.php b/docker/statistics/app/Services/PatientFinance/FlexipayService.php deleted file mode 100644 index 0d323028..00000000 --- a/docker/statistics/app/Services/PatientFinance/FlexipayService.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/67Si1ByIJvL0RNign5p0t8jOATgMS+G44WO7/HU/eMUXpM4VCzAn/C74ShPqfBNp0gng97Ycc1UrDASo7WsFA8+lM8duTxpb8Rz39l2bC6G+ANqRrqjxAN2+kaqudtQn81QNB60U+nhdBPUaDW455QBBy0Ao2vI0zKQ0TZP3IXwVvZLd7gJ9yW13HjvdcoDwQOFz9fe2GgFBSJrrWSgONSaOyUFZvqQjd4dlWe6N0Tv3CqHmlyLioREFVBEXul0xfyOczzPOJJVSAAAAOAEAAIibdzkHvbXRGbS7TuTaEPacr1Zy/N7KvJtf/uct6L9ACmhYSlIjVzrK3ohhnpi8wNcTeNIjzrBd9DHpR8yNZuTj43iLtCCxLO1SpOwT+q/WHBmg3UrjIWG4SNc9TZzfJeSqTdzwoe/WVLo+x32kP8qSvDZLqvyiZWUVgRluIhrhN99InKjPXhwTVzVwbpBEAIyrRGcFaazBExHwRaAEsqYHuOx8ySFk5ORWyy/MkjHvTuM5sjbgO4hCAQSSUdcMYW6J2Vi08hZus7S+Idw6PGd2SAvfh1Y9WP49AioSLxfU0vfFEdsrWZ8M18vdNqmyQQiiUy/wuPROTmt+mKAkqe984U4d6NfeUbvISqfJvfEYjad/5ccm0aAvu5ay2WOHXj1R3zApI2XqcaVjIB99gKORrM1wVOBE8QAAAAA='); diff --git a/docker/statistics/app/Services/PatientFinance/PatientPaymentMethodService.php b/docker/statistics/app/Services/PatientFinance/PatientPaymentMethodService.php deleted file mode 100644 index 5162a8cd..00000000 --- a/docker/statistics/app/Services/PatientFinance/PatientPaymentMethodService.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/67Si1ByIJvL0RNign5p0t8jOATgMS+G44WO7/HU/eMUXpM4VCzAn/C74ShPqfBNp0gng97Ycc1UrDASo7WsFA8+lM8duTxpb8Rz39l2bC6G+ANqRrqjxAN2+kaqudtQn81QNB60U+nhdBPUaDW455QBBy0Ao2vI0zKQ0TZP3IXwVvZLd7gJ9yW13HjvdcoDwQOFz9fe2GgFBSJrrWSgONSaOyUFZvqQjd4dlWe6N0Tv3CqHmlyLioREFVBEXul0xfyOczzPOJJVSAAAA4AUAAOJ9c5l1JL9E3dmfFxv/d4cUgE1APyFefGKfrpFsO360YDJgnihmdNzuuwogdgJ46Wo/Lxs3mulwLlPGN4xzwuUkGo/aosLEjQw3EJpMvh5ZCBHAyX2Cp92q5JS2BKTBFod8e9qx/2Q0kZSL1eqNvjcSSXSAllUosVzki7Z0xdpKvsuxhzvoErfuMQyREsPiR3tdmd8ki+0UXwg/m/cIacjQD2kwDMiR7NbD2ak5YpwIWavCn5jrCqXYKikwZDc9dPCIJPyBB9cyCNGXKIYjWsRmji+n6x2nzdA1AoH4IIEC33E/RIxxxePw5KPShFSZSyAQTgISQnVYeeGpezvah2mvczu4oBVQ2mf9D/sZK+0mpllCbNa7OuUpgMLZT6+BP2KbagN5WbjaH3ZoMp9B2B7d8JLNJTuTAEwm2y1Cx5g8FJL4OON0w3aBFgKoNtuP6oZauIR4M/oA/FyvGjTdNRq2U1bfv1wEZSP+S62PSdNB9Piu+I751uqzPe9IxCQkIXpNtq4Jwvaq2tF2/YdLSLM8msgatsaMk8K0yNftfXX72IwjCpeQhyGTE7hicuGIzN26N3YGlkRgBm8JcTLTW02rqICX4TLi63jALattcm3syMok9THjQ7g8w+tQv9Xfpm0uPuANNNPLFk49c7iuij4y0B2Rxoqpo1kNEuaDDg02CeQEN+QWFOmzQHQTL87KibTkJnuU/Ai/8x0sZRsvH9Z3fWKUvZG7u8AqiwSwAxYXYibyP0AMdDJskpqjRJ7/vXcpqkka75IAIj+zREDFsEsvkzCB+9eXOA/dtMlUXfsppUTdhs8MDyW24e8rXWHUkjXFmpuV2O0TdgBFJWP3JzcQf5wdpySLSPyaCJNzgBVsVVg+RR4dM2LD0RgmfBOuEVw0Swf4qdcW80UMRa/zMN2iAG6nCOMo/vq46YFOfxjdmmPfizDnh/j1C1Ca2ob1hD41RTTdKGfo4BMAQU/UFzBYrAjHvL0dTtNirptMfSnY6nmXG0zOgIF30mX629H3Ot+biHAnj6QoI204YxhQXNFPFkbAeSZp/cYTbqRyK4WMqnv8ZDKy+EvlqD49gf8SOeUECNNJdw9Gfh1uAxrUKaD0kuQvIP3w1YlN11tXVmtV+wnuXxQbreW5CZDpKejqH6q/o/ncVmurdO3LkMlZRsPJKDdJYFCS0eg1qdBx5NwJ0j0ZVq4+IC0bsxkdPnp2EdU9U1KqAL0p1C5uFzRm5M2UrSlSmIZxSa34oUdhhpxkPWn0RCcWqh5Zq97ntJlUu8mOciDk5nNyEqOEutl+6gteEtt2xxCX5tjjxqRG0hYR6IZQFGY6DSB+Cs0Ixm9Z+bS6/4ssPT7+48Wiyi2dynQmtU2TqdLrrVNqRQxCOpWCdMwesxbwdO8PMG+YeAgnxqSvJJfH0b0UN8AwnTVLiKoC4r/nWPL9dXZLFi6BNVeXZsqJ/ko0Ym2xjYwS5iSHoOrKW2v2MOE4ISDpKMS8is3aj8sboyWfg51RG5ioJKNJNc5o2Y37F55HffTBI4YHKxX1rKlxP9z5gvpQ9IKucfylmgYbKnyp7hN2arn+ksZka+QVAfLxRy5U3j7H9dlKbFwuYlPLrEEstaig5wkOm1v1Si+6uvGZIhRbatNqCbFiQoAXdMLGJvMXjb0U7/gQnHbxPxnpQgQFM4Y7RhLAeZkfW9EBeLNicUmIDg4AqLd1emgDarrCMzvpTw+hFC4TOxvtCAKtE8w83bllvWhej/+C3aKomg0lNDzEObcdEPSq0+BUwuGVqfLtMb29nQBwjQitlCmjO2KkcKwb5GDFM0y8cIBqDwwIY4akRVgzYk5G47PWgQeTaTHlQ8x2tWWTDN33enZwxwYXWO3ZBU6He/rGl4TMKWU8c18pmgG+8kYLOLi1MIPbBaSnlSLxA82zf2U9EWQJHc0WGEvQFvUS2DC1yDRTi/Dosp2pKetsY8P+T8yZGPk1dkpXxR90jgDZQ6xhbRHon3A/R8dj3FcptMQAAAAA'); diff --git a/docker/statistics/app/Services/WardManagement/InpatientFinanceService.php b/docker/statistics/app/Services/WardManagement/InpatientFinanceService.php deleted file mode 100644 index e9543ca5..00000000 --- a/docker/statistics/app/Services/WardManagement/InpatientFinanceService.php +++ /dev/null @@ -1,2 +0,0 @@ -1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="PHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.

    1) Click here to download the required '".$__f0."' loader from the SourceGuardian site
    2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="
    3) Edit ".$__ini." and add 'extension=".$__f0."' directive
    4) Restart the web server";}}$__msg.="";}die($__msg);exit();}}return sg_load('86EF549DC7C503B9AAQAAAAiAAAABMgAAACABAAAAAAAAAD/67Si1ByIJvL0RNign5p0t8jOATgMS+G44WO7/HU/eMUXpM4VCzAn/C74ShPqfBNp0gng97Ycc1UrDASo7WsFA8+lM8duTxpb8Rz39l2bC6G+ANqRrqjxAN2+kaqudtQn81QNB60U+nhdBPUaDW455QBBy0Ao2vI0zKQ0TZP3IXwVvZLd7gJ9yW13HjvdcoDwQOFz9fe2GgFBSJrrWSgONSaOyUFZvqQjd4dlWe6N0Tv3CqHmlyLioREFVBEXul0xfyOczzPOJJVSAAAAwEQAAFjlhZn0LlRMC0j2tHEP0fDYFnuzcwC5OEi5fj8eLVXpyWXI/OnnNbzsreCNQ90Dz7XLXscScOfZqwkQxi+qMLOUmM88JyiFNUV/u5Pq3STyy/aHeB3bDxBdC1OhadJ3BTwVuQed/4SYSR5oz+D1B+Rrw54iTqYbtcMt+pNcUokbsMYbKRoPrr2cuQRBajOer0kZPfioQ6XYNVJGDVS33Vm1sp9jf+6liCbbsWYLCgbOB8IDsf7yJdRCsJwJHJqbyuVClxC53tPfVQF/AU7Pn8HYVjcvfbJqeWRDbljMVk/rxduMiPe6vCzXIpe7R6+rZbYRHyhjldIMJn+UJcht1TExgdfFc4XitQUBgSXnboMKz/BJ2Pjtzz/SsUgMhP7avF4Csi9kkoYbRUbbPeYeiaUUc2G8zKC0usIsdSgvMDOaYr8u+S5bXLYh1y9B/XRD0oAL0oxqiu6IP7wT/GfG06xR8DbptzSiaBAgd8gOi8dvDwIQc33E9lTb7CXuxudBblK7snUXj7IpHD4GX5bSq8Alq2xlyRNUMbOjVKzL7DJ+YOg2v3D/KnG9kc7W7Lk5XFPpWVUYuoDlu9gnnFn53rBTlVZ718YMUh6hKzO2jH+IBtlYF3ABS9rpOsUEy11XFjgSJGOj9NhhAt4I5f4tEfCheSqWe54EAB65NYz0FnLWaihHEyslITBU0QTCbjtk3Xo+busRzjp9Q+Fj8E5KyekBxhyqFoIcqicpOLy/78Q0VQ0mjEfdbPPLe+Uo1Cb434qjKO+lACHF2iJ8VmIliCc398JBl/W5DSe3kpG+CUJLJDdG3TAgW+QZPFGYzRmUx8dXEIePgGr/C3+C7K9JgRPXARXcvY03/HCCytRC0qWVXzBJ5sGqD/YlEd17RXrdAV9W4w5xo+7fM+aYU6Ah6gEfOD8QLmEJlHQGogmhYZ3lJWCfL6xBMUWFvtRdxpDVT2EWjH89DXCoZ/bZT4H/crCyTo/un4XT4rAaSN9G2aHR7HMTG7BWiZ4V5DMxjyesb6b1us/rTpefdeTvXKHIXKJ3sg1YORq0cNmAbQ1Di3dXZrvSt1rlVhNl9P/YvdUmR7CcJI+I0Sty+Y0dXoGOSNNttFfQkvBXRqOJJPr1lAivgWqhXDU7YqjTWto4rhAbQKm/9lhbC/Fw9633lUkdWkmfOLjzGKC6wRip89iq/ufXEAMhyq6VWjDTeTkyNNdt1giPhgE7ZD18ePQ2jLyLer1k2b3F3QR98IsNHj/JqY0XWgmvqlWYHBtuxmhkkta3tMiub0p9ljqyIgbvfxoTZW82oyBl9iGAgXYjOoDzMOEWrVFeCDxkebllZWqqU/LcwEs8xS/1CMiTuKJMLi3R46dlfb3+1uW8o11od5+KarBxfvoefI1UYmpYiKRl4094c46ZbaOl9ZZTKGCgJjp8Re0aaGi6Ml9oyKKMyewqhbS+48p7I8xA9TZQRKlBXHY/QqveOygRZ4xqeY8Uy6MEg++jYDso7sCSDrflA5ebR0/bzq89dc9eyP0HUzukzGFnFThyzvEubLnt5H51SGRLvKFMWKOXQzsGRzbBvyXlgPZVaPmCIrfQwbldKWM7IAGR8HrVZ5kOmc4cVTWm6SUi2RiwUIGH15C4OlmXnpUdaj+j82/FDpTgYDWhPCRBacV3NIcxmsDfNw376p0P9Hi9eft7KdsXGW7RJnDzmzVFxW6QiCA/LpVv7r/pgqLj7EJ2kErdXAIDh4P60K0N3m17RCCpCsjw1vsJ0JOPaZ8jag2WxAWdO1RN7NmkcCOqo/7AwI1GOgbiFiM2NLyRtI3fCiootO9pzlC0+iJ0ozfq5hG5Ij2WMxZEx5er57lA2YB6kIVI67e/Rabp7aNQcKGs5aV73JTM4SCKwT/SPQeUWZdscfZCLbClUy0zf69VGlYVdbVlMi3josC55vLz/D6ZE02lbOXiBTXetnEyb9b3g+GugrsLHhkh1+xNOtG0YhPzqvYeUHWAnC8JqBSii/PydMWLiP/Z76W+GA/evEQ+pKHR36ntNGHkso/RRgsdNlXHuj+dKubUtl35S1W9nZ6yzSAUmPjklqn2bxCCMpAiYzqfRpUyKHXVJJhtGbkivWkivJbmada+P+Y4MsGN6SRU2fwSsGZaCORHtJUa0JUgvyFPrQVfVw2mjAClbGUn6vUqhRVjRRYMQFFfpSD6Os2b2a1aU36d1PRHr76bvJcLIycza3tVGUyM4dm6TtIQfg4ubwDPgfn1HO5+It7QeBTYCwXe6Mq4Addzh6rU7bMADFalUHP5N3MH8LmVFweDupvInVDDX9sELWbMjiCgM5UbQyiTQYPEAD/gWvnVeRfpPNLCGkI13z0rJ0hb9eLthHpmizgjsEWsun6ljMbr+lJG660QiaXsIXZCoK2mOl17JnRa3zFEGnwRJP98/aE5n/e6wxOgDixw8gEWBszUx65EFCs3jXo8qtFVpWqZUJqd7d08L1bO2ljN8cVJKbyL3H0upQSOnlvAE9bZgwLQjG5quZDeiy7vXQpnCZvzzCu7Nl4gpi8slJcPTuqnGub/Qjt9xyIJoa1C3hy23stJL79/kj4GjfhtpbrsDqeR8d+dxsWpufTzKhOs3s1Tu4eY3VK++Mw9T/LVFKe4IRJcdJTW8Z1ErKsc3Ta8x3ZGejhsXgUfejXEeKnm+t/SSMQ+65y0WdzRq3DDRko2992a/ogmCRBdxcOQrmmEXmIUDTTmwbe7bjNeaWcfIsX1ZyW13voKEPcjXaiAfdUebJmbDtxPZHEE7ISUfowWYfi1E7K6t+OwQQnQqmdYzv7IP94+2AyRo3lAXb6z1eAWQo8eaOEzMLCVCxwGBihMWSJEuJn8AWzgs1UIMvw5Byo04BsmHn5pOZN6dhN7nUbMrO3OGfsdc5n5x/BUShAyTGXLVcxJAIc/glv9XlO5ixaPpWK08eYqHXdAMPKTU0Mq1sPqeBUdNX1XMjyb9ThIjIRV4h78AbCvZC9QgS6GQwHUfDKr8nQzDpnccO5V+mwH+27nXaDiB/tuyGCqvpuoi7wN8EhMEnu2e211le8kh/JsLM8fidA50HbtpO2M93E+/hcS/A8Pct01y3kKAqJuS5O4PeYM+C1C4LGj8cdcDViUDngPbOlYKaSRWQortVgNYvRUdQukkEHX2f+oQ/MTPFCzGitRsjOT7TX3fsMSexLwsfYc9e7476w2D0cospeMzSf4Y8YiSs8EvBWtfuZ8+9odrSGcegzqUzDoPvqYri7gW55utlvtMl1+CnvIGc+7H5QetBdg36WtjURI2AUiPa9iTLaL7rXH6ytehePDYK1VEeXNyl4crzgUqKu/8KDMHstGXUtJS4ZjsLO5IGkdvJ54n5+f0+0lHTCpORaf0PEuLPA1RKK/I3Feq21C+xqeDfFMSw/t5n7lWea/768a6Cr4+Lw2EwulTeYp8+I4g0I6B9u/0giwDAWnRartsVUerzi3+xPtR6wqdqzycPCUZ2p+esz9M6Zmv0RYSWbgWUb9zJDDPD/n0EJpit4GqFcmojnNOcVgAt8Hx2CFmSxQtWeGglJ3jBfkRHXrp+9qVGU+EuoyYf/bf4synlMvnpL2pNjkEDxDWL28lbcNM700gOe8FTAsGHIkwdtHyoOeBfYlfD1O30A0geiENqaKc0VWOSvyrd6gmTA4o4BoKFlCif8a/3vNx9wwd+Bzu+0h3OmPlh6JPgyqv0oAXiLg/LN7YPTyIfDH761mS0biRczP/thoNllpz/bQsyHHXEVjrACkxQZNyF22n1IZyHAFztb+FfezyQT5t1QN6DMYwxzEISqwuw5Dsers6f05NxtkWN1/huslBVwrO1fl7qhYM4asRxTouAlp8VxOZQYauJtint0p/aHMhAdXhqwhj8LtSnv+qeb6a1uK43u29bRFN8EKZ9Q0ZIk9RgO9aYJEA41vLGaE0EWRZchPqiFprWGkQ3RZ3xzXv46U5VDqtSxjf3xi9RQWwniiQnn+J1t9wzr397jZ09iR6AsnXK0DnpsNcYFYrgn+f+kQnFLmnhK/0qXEyN6T4VjIVp+Dprv0IapCh2nZHRk/+FCyY0SCEUS7v7AfOxY3JYie0hAJVRthjuSbb7yWyhYEMkkCtZKkpYTNDvzr/gMcmlSH7BwwhudGSMwW71VDMA25BcULVyrlHtrmIl4u/Sy6ppi1YMdeUtms16/o6I98XChMwa7wDudPG6D3R8QnRHLIyDGSSrOSqusJyFHRwBDMNVtgiyQODY6zFCIzne4glPw19QdHD1NYlFUq3UpUZlI3MLIkUN0kS82M57b2FkZslIFsS7W057nWrWUU/s4HGVve+1seG0VOLnVEBJ+VCdwXcaLkqT8tk9zLyQEawRiejImN6xai7jX0QxqMNMoZiTXyFPehyhKTY/vnHTQFcVORvNtfFdzq9MDJFJCXW1Df5ufzwQiAPcNGHxvgWxxrCNIfmD4M7Vs+vIL2yiNvEwIeTS1it8/xyqFHSm7qfuAEnSDKEiNV3AdWXtw064vJ1ZUELx5WtSwgct9PHScblS+SON7ycSGTYFLL22Xmi1WN36qUpUoOGRPFCQTJvfcjb896cQxv8xmXXDZ9TEtUlirr9H1D2vYX+abWqMcjbDOTyTEbQ0IOqYTnEs3CXOlZUh1kKGpMiCHNIhOH/8V+XeQtWW14Kp2X9nqkeEMuU3I7iLGADR0DuUbvXphbZH0W/E8M3exf9yYImYg7QslqjRQ+ErGNR6f78TUM1nvQOD8ODx14G1bWpDsUXa/L/1MgN+p35JkdIbQFeMJRiMzVx6A8/t+KQjqmiEH7O/l300/ZOFrlZZhszUro2jlnqd8OU7IgWxdp73NqGGIVhKqe9SJ2BLHAI4s+baaDVpGIb2uhjIcyog+KU/GGuF5CEXvJ40v63BOSmX2AdZxb5lhf3G3/3wLhDfxVtxDUDmrhnnHz/6+s95qvLy4AMk8YNaIbtz4zde0uADu93EvlETA5iJHkJSqeliooSWJpCngKQKGTg/GMQGhrLwJRH/giYgYJrkdCexWWKC9WR+8VltNFCf0jblV8TaJpYbHs1n9Ph+UMbD7AUVX9zvdy9xVL6+cym3FXxTg+G6ZZC5w7v1Vs9GxPuPls3UPiuqAM6FzsYn+0AFxN2gDxmHXfCAUjkEGAszFyG7CQDOuFDxyrNqlpA2R69srigKEh49cKXoiTTWqFrFvR87atOb5KacDsZaeNGpvh2XNuOdZSmpX/Uc+jW/pslMijgdc8EXq/ybNjim11SBUUeBxpjh7UJ+oJEnYS6dEcpRe7ORI3ZsA6iMwU8mSU/3u+pB8264eQzny4w9g//FhmZJSQ5PcxMDvRUMgMHO9zRXxVeghrHZprjt2X1PTQcTGZ1zkOceo8iXEgNyDy/JKHhkRGNE3JZbo5jMs5iKkUI/MvRfsyrBJahUGTiQuP7XWpmy1l1TNLgAl82vtfSp63C6jejb2ux4EmJFXUL5AFy9Bk8SQ5SbXRvudgxdk61brNW/hfgQ9fecgEZRIUBxytOW+W5C+9UsVlXkL+voIJJt15BbBGl0G8DQpgcZdRNGAnFcQsrCE1eTkAUSS5BfhND3LZVQW8zbNaEDf0lAaP2EQ6j6W6czbQ0xQWfIrVAF85HPqGDoGnT6lRM0N7IVJA24CjlU4ferrQ7AesZr6ClUI0fRz/q6m2Ws/5urJ9vmVedSN2uiKsGdBxBjndZWbxS20Jz/SMt44gcm2pclCSpXkobr9iROkLvDuqLKbHe2wwFnXu8rSDmoOZ4KcPG5oUftiVgx8M/5HwJdlIYPkpqEGOGk6NffftULaYeaHWUH93V8En4B+sohyeIJg/++rJtsX/O7p+RbTguBa6SE7yhGOmMPPp9Ug7xn6J9ZdJonh7uz8duS/ipKj9P8cLG1p9pdvZrIAYgGX1Tp+r93D76Em+r4g+ZOABlMXeJqS0AvaC/yIPA2wjv6R0vAbSc/9hzIo8VlTog2YhVBpePxTE5WmZ4QFuEYkh791k/xRfPf10Z5zHtn9gbANr9QVJ66m5GblgMS0/vJYJ0zR8j2KKupGebZmYRGL12QeugXmGqfMa95paph88enQY2hxEBrPLY1a5LxrwwJ69yX81IqBotNEPuvhCVguiW/qINPDPZNb4EE5dxwVdqWbvbvlbSLn7pf9ubBpchrYS9oLcknXvB87EkpbNz9Laxqr9WG8RMNO1W6cCiTeeU52cB8ygGYHwSenxEGVY0B9KKwYOhdJM8XfsKJCPN9GhcloGGYNOs+0gvB+b7/xkmMan+Ipj1+F6ToEpWjaXCa9XabIUBeZ75PxNu3JTAWcAE2qVZohQVww8JxkDe86xSBV5nQDbhmc95no2LT0qzRT89NCP3Qvn+raf6AIPBTCAK5MtkoCSK2G0F9pwBy6nf8hLxGFMf2G2zI8pPUGPPfe+/La/AOoJYcfPlM61uQdAKVDcWqZwL38hTF7sW377iAdmsxKvSPXhyaLiI0M2utlnS/rzRkHFqWi4FeNoALCD54QII/6ozwnfbRQHNzcLiJIkkGQOips0a+41+AGXcIZ833SpTx+l+VRdlMYI+R3NCb/30Ab/Fqig1q5VXkrQvTSRCZ2gOnlwHltj1gk2pKP+rwJZpvsjTaX5SkVirV9QaSxYqDuxjQxEFLyLWmfvbYJbhVrzm/svCd+PDA7x1SlhjBoA3TakAN9UhyYYuJW7M/nDoXculnqL7odLIR/XizdQAiKh6C+G2KqT4DUEhYtBPX2pyhAGLEeUiu0IlsdYv4XLmR3m91lkK24YXKlUcTAtV8mNjfwZ4sJSRBAVSn/73XJlXt1R/WM1g2QoA8XPxS2J8LowZtFvImvB4yw9KsJHj1jGHYvcFhh/2AepSMlGvDX7HHXjJ3CBdhT9B9CjOdT+oU6pRTkDZi72ulI4BbAC9KvRFVMKKXNEHJT2IN11Yafu8EanATzfFy4Xj3HUYiDb8Dz6D8nQ+UdrnDQMTn9cmq/2PdffY4O1l+YH9lOitv0mqi/fhXGQWIBwxj9Nx2J9sp9r6mKBeX6J7rZnsnOWK2xOQRbdqNul0Mm/xI5uRBTBr8yttELrzoQ1GJ0+eoMRdS0NbG+pHj+cLuCKsqVDqfUBnsofr33UJ3HoifIXIx6zfdUf/F97mZeNSwrsQF7xdROEPjG39aTzC7/kiSmYrUg5994GpPV+8zpU1Cs02ULkP2KYkggT0F6cvJPsgcphxR3W2kBZBXMBbygaweb9GtDp1HuQTBwgRNQWHInDJQZKXljUU/6UDHXtAtCa8pGnIACfoz8NvJbFqctEDvWamLvfN/PUODGN+zt73FaJsQnulYHpqNy0aLJEWMR2gtoD2Z3EHp6ltGuZ7nGGqjMr2ZvYTWBOId/pMY9mFEXP7qg01sgiPxyrvinULjzITj/K5ph/CIr6Z9SMVl7RwPr1YsSy0ni4r9gUIarmKcsdAD0mxFeqjl051M9brED79w/d1zcwUgsEDurG1nZPfhEFWsXufOLPGa8hWsDlDnZhyexL2MyDCrPvInE3NQLjnqoGZGkIHdofz+t427RmqPVyGpZLBKyUsYmgk5O6ZvgOrc259vb2P1bBeTDW1Dpl0NaZMZt6LYEzx2BePO7YAz0mNNjEb49/ZwEU7iFcF0lLFrYMQ6MEJW5P9sxGTTLZ9TkBIG7tdVXXZtAQzQhG2qIsu7epA3P9v4FBuTcnmOLKFGgGeSdt+ycUVHv2ctCs6LvRGyQ9E0dOemr4tUSCLF0+AhDatjCEwEz5eBh9Uuj9jYP4SlsIbgtcM33EC48quaXi0UrZREeJsVicNRu166Y39Z0XbCVszEcIa8k0ZsqnB+FD98rQQdC9WQTuVA55oAOLayvvD/yBp8S6oWORwWD9TjYWWQ7ePjN3AoB/4bLnXXMj+9hMODI3Ajw9DKsnNRxZsR6nJfhG/qgZNIXTXEd4DC7QpwP/AA9vVBU4tc/Dha/eZ2aNebRUiSBqKrRJclrkLVGHZlCrbYtLFcyv6swYPqaPID10ZmCCmhtbCT6JK2sICylF5XKKuR3pFwJ0BvCPTwCRbyvX5oq1XCr43X/eSD0UQIIbtAW4bErOJLWzHTHmF8JxvneSuIUHR8z6iKD27HrV2jwbLh/rcihnMQbszZ9++XuoNmtpqlxwVZ+BhgMrqSPxxv+MrTT3Ota0y/8dXKUnlyAIiLS5rqqRdGIIHNWfz8xxUml1bZ8J++HWO+NEAWIGgzw+j6c301geTCTe30/aqk6pQKReMjVX9gZKNy619MikFp6dRnOntnNu7DbB49OfEwrpNwojny0T9wyEuT6FQwwi8qlTCfMAgrN69kyUVb49vBE9V9KflNn1fF8LcSVSl2IrLoVDK2LsNFAQBm12QFBqDr/tbjExLj97D2/KC9EQKBSxOxUDv/rbbC/ALZCvehJV6+/HyDkhTfNBuMon7DU4kfTpL/E39kcxy0UFs1e4jm2nNlxPSqttKxlBUUKMwDuSVkx0PXlA5HxqK9QEHqVpHkdAm5DdlAaHSQ7u8QJrspUf6O+rVYX2fljR4yguAV0cV/DieITUVHDPdphHglFesF0/LaJj4axq/hGRM7XcXMm5SDrjV8zjE83ZO/VM5XJR2Fopancb5ukV+j1zg0Pmbfd3vU/znEXC/VHuOrxZO5JFPF/PFcgSy6/fKDYdICoIouoLMwUxm4t8zLmgJtnrhgbC3ef8UOAEKLsIo9aQe2MNyokskpMhrpWlvkG2/R1721rnrvrx4vf1s620oVoAv6Bzmspevy72j7OTwoNEWzgC4RYZrWMjpkRgZ4lOkr+UxWdoRWxuTsd97t0t+1dg9C3JCVq3AViZdjmINltAuYOOBpY2TL6L00JQaCyYyvAhOpqhBQR5j9hFlSD9vwmyeIBfrIrcwbK6KjHBhC5Xkf7yewUlrf6lDXmChaoddkpsWaAXCRZYNZqfqX9tQvZlKJb/T7d+Ej5ckb6k+zne2dSncexaGUkl2IwTxY1D21kjDn809lUppMbMnQzpcJuKdRr4dYTFWbM2WPVxiv56IXU3oSS6UusueiAqnbLo8RQuI/NI5CDzf8D2iJmVTIA5M0WpiMLNeeDleSBWTtVWCaMmhgoa8TusYAeDWiPVbV6nk5Z4IU/9ooM1jYhATpaWim2ufdFEppPSLrPLd96weqbKeKGfWfTkfVAiirgF6pkXBq94YFFJz/hUgc3MCZ3WgH2zFeMAgeumrqxcI7EO1FDhAovWgPhHJB20lNhQtDkbjlAUWHTBQf6YQ1OKCpK25MR85fe6da3vODliykdR87s6qZ8zKrkv6FEs5taWI0wdP+Zni02RTIOJVtzVvN3ZCM+BwjFlI8C6RCTiJqu87Er8sNkzFvDoe9zoB7h9YCsxcSW4awc1qCJPXouuoe3+mG4agCZfFued/hCMbOm2U+RwHFmTYB7+Pa7et5Z4MYOCUwDyHhKUhs90WuUObYZjS4hrbuMnYRdhZ3RhuQ6aZCYpJPnB86tTMYe98GGfdIpJNoVDRkd+d1xhQFCSY6Qd6nOb1F9n5dcyX34zrUmdnwo+Lh0a2BrysRFq541m89NuJgDYsvZHzBSLrIVPnZTClI/wj3uAySdiLxX+lCzJjrFkUz0JX2P5/vjT6+8ZkvXp4vJ1qHcQboUZ8gpmGta3Wh3YVr+T1/MjB+YZp5ax4TamnPNZtGu0iGWk7JieVPuDn+qg+oG/qveybR1Dd5EtcIcM8FFtpBD+hTe8DEgOO3GiTxL9KCz8w9YWbcgwWxtjDu7bPgiWgyemV7Ry7+B8vuLcMTacENK0ylN5WVDB+4nrxzRiVu/YCKV1/bhNLmpQ4ak6m99LeXDOw4r40FCc5hbsljeiV1vdGyhGs7TzkBKJssQbYVCiZUKb8KI99RHi++5Ws2Y8pUrZeikg8PrfBtdxmWrJS8IUrLvifAbKBUtTFpU1ZgRUDKNuLxk6Td7DoZJVQd8dJdtbEaY+OcuS0l9w042b2kuj5OW0OVTLScB0LT6aiTmuJML1eXyFB/scCiVhB5OYDhbDanMbnkmczT9e7Zpm6dvFQJYBlMJNLS4DvVeSDZ7sYR7rspT0EQqEXm0XIEyb1TSARUwt1n6aw+Lg4z63rBwYU21U3yTtSU8szuk0YFBZjAwMXopC4QMQkUxSincTihjWwJEoJ5DeMCfg7qeKICGY4ExhoYg9VeDFZpB1I47f4RBKBZFUF3Jd5WzDYYIrzI1k7nosGB9xxbatg8YJg5jYoGnPXTsBuombC6iHYZhM4zN/oRcJIeXOmES1VN+yH2PAk0Zkf24eJoDVjZBW80n5bPaybqsuECTcS+ufEF/SK+XIx7PjxcQmvN5Ww32W6W08z3vzWJwOMxOLCFzwgDW9jw3LDpxKm5EjCbwBlUs8ycGKpMLLCN5N84oIL2yBE7auIocsbh7y4ShbHvIS+bZX7roncc0kvyX2kmLuChB3ebHOpvBHVWdhTaNz2xOzvY1OMNAXWHpoUMh2Z6+WH+NpV0zVJIKjoS0/JGOlNQ143EpIQmN8LjWlfdArMS5RfCsgn3rJN2PPz7TuzPo3krMyqkR6ZivXxwkgsm1HrFJ3OWMB/MlTx73pumWE+6eZbvMuAtabPhWG9buMd58LLg6Y6Z8lJNtL3UnFIiLkaSddCVSZS0lWT5SZlhtM4+xDpjt7QTUTaf4VfNMt+azGnnC8qS7/atRerB/dd6cx75afh6XsP8TBvn8EXZ0UFc6mjfpy6og3HU+xF2eYVrh6UfY9LvpbYoGW4qoANL33O1bxhaKrPkZ5IYyBjdheq6JeI1IiSPwct28bCOSUanpGM5X79zG1r+/Yt4tO0flzTneDtpnT1TbfhYLvkP1k8JDCLC6sXcOKHXETPlfQUmYE0hQ3yw383C69vpJqgRs8oEXDp4rdNUIDddMikzat8TRmGkVMj0wYaMr+0+w6UNaBDqMzcB/OQAVl5Bc14nyJMD6+6buBJFYPQv2pLhXJjSUSdCOEQl84FN/qr+DeM5JBjK48gNjQkqvgs4vVaWaoYaTpNJqszFB12BWDGJuajOKdYWMYZt277UyiH5tFeBPttXDrpxuhmZBkwkpDrvvNdqUQ4FMpTtdXoKEZI6kg5TZdrh5wmWaCXQ+6lkX3zDQDvGjbS2MjqRhRHyp1OesCM36P03ZXm/GLglUt+OPa3dIPUz05Wtf7if/3vWT/29fW00a7YfxnkAhpj6KccLtWzJAgFgVl3KtLBIcW9kAtCLXuOSRRMrxJd9HVOXy4VF4alZSuQyVugVq+CiEomkncDQi3yDYQ625+RQgqTd/tNTY0cOwapnPX2tNKOKoYM1LkIh1nDrkUb2lCiJPlfSEWSkwXn+4GDw2hjAevoAbl1/JsOjrvXAjbLJWLDPJoQ66o/8hPRTo2IOdq6DWciNQILFlncAS8VA6QrZI/TqD2mcptRAJD8Gs4xghH6vTL8RfS8A+iWWK1LVCHmR6L4QOvXqpyMjA+DhUMqhqCTnOcisR65fnqM9a5aTuJa8Bn5WDY2LV05piQuxj8Dp4BCJW3VU85s40fQ4Hs5qtSP4KFRtx8Pya8Jb2TCJjsajEFHRJq3pq7z5pE84uN2Ohc77EW2w4QBAOnh6TtkhanaRVDSF+mriYoWqakOaKoONfufvzemwqhZ+C7G9NuOCm/ElEV/DoEOUiv0U4c5pCAGfoBoqK9Y47slBRTCIlLBGXwW4QgwcDnMgYC4cj1sb4BdaLOeO2eKJiuHXy+OHjVLshxRgZhQPSQ8DkkTrxHTbXuBssmxTvxKD/HFwEElVw6c+LAfyBxAGUpPRsOpG6Jpy7jUL+nRr6N3qRE2XGEFL0Wqqvz4i8tHWN2lJFG7juHbJd2b5nw2cK0KUPquJBNnpKRNj4M5m+W2UQ9ifV/eL9l466fSt5M1q03kF60Pa6Kax6/0n8ByYoQh70aEzVIgU1Ro8QOzmi1svIBeCnAHBFAiQGs4WVaQ8s8yD62d+gwgvVhuBxKwZ8Sdz/gapfVITwlY3IiBRORcg3nycTGy5N4BUEqTEX8JGO0wl9EExlANq6DnC5Fute21UUoD2PuZUidHJjXGrwrYZzzpaZq4qy2SdE2mG2T9OnORcL2AZV1gzTlrIbuDB1ygxT8AHIfCvo9k9g1y2c3Bcmni/bqFxerKLYUttpuoCD6vdOV5mxsQYsovhsKnDYY7lwt5yBfQ90CS24yNcBxowOzCvmYQc+L/GyTs62jEHIgwcCYXXYeYRwznacrBFWQ8TaHhz0RcjxXRZ1LRZSKytTHAtZ5Y1hJdbqRfm2g/2kbRtvcVM68n318Wh3dK/eUd2IgxzF/N0P1jxtEXw3UzHZVvWdSiiCi/YxcsUdtwBo/KvCPnaUs61+FAX/NAu5+oXbChB4aa4n65PfFgPCuDepyld3qpKEY5kwMqv9Y1q0L6qdYHnyWabTOkGSc+t9q0FLeP6NsiJnoH/Kc+8uo3M3jQCziFvp8nBCbzuS9D2qktmZ4OFbpgwlJlb2pDiwHY6+7PqYsq54nSwJsHfyXvMCwbdKXWYGC6Pqvrm//6pfwpkeARdm2DncLZIo+vJfmiaRI3W67w0loq2yot97mYqfwgG0u+LKqIsYJGUT2LvmBm8Xy5fjxEqcJWASXLMc3ZVLwJf9HVWrnVr5o5MFZlKKlLF+q+KwYCtBa/1hSbFQMWRcRgq2giqfs94oi3C91brhu1joyHRxXmdhfIXaKu67DvuYQCtK/dcthhCzeL0Etxo/vPH+9ikPGbBIKDnPl7VyYc3yAQq60NY/Z6LK2xSZGFkQIEiaj7Hi9BX0UGl8oIglO1RtJy5t7kn3+Td06gwXapdi1k0ylGpy3faad4Z8eSbbxBKJFR+vuEn0eyI93Uay7uSo/SPZSU1UPpGgrTv8SYPGKDixwRu75n5R3NQqRPoqkCM9p7JSHJf/IifTyjv2S5WQ/jCjLz3ceqc3tcDsL0oas/JV/iyfCJrGJsfCMYTbgbI2iHx7AglnBxsgzOyeC/xtoZOlVzcBf7ZG3BiG9hppkjU5icIoL0yNMjpQUC6Ezoe+ltZFOUa5EuiMZjWmxFo+sbBdf16CAXdtfHasaI6/g7USxK11NYW+MOuLzNdWcmb3HdQiudEMidYN9eWbdPnRXrptKkHj3qN5/1E5dkyZwkKP7o2yJvIXeWK+bY4HyWWkJNH9+3uvL8IW9XApuDkIiZLtq44we94rH4euDtXIpkxKXk90iiruk3q8WIJZLTSgLS+6qL7KvYXh+LDgC374rbL0SxlHtjr6cxZFq1gWRYcGWwmYtbID5YsOcRZDax/uI/0c0EoTi6jGQTUVq0iq8/cspZJBF/22QO7dd3kRFItBbBc5r4HwehuHNKd5puMg2icxeMbT2+NLp4GFaqNAarxUTsmrKMvcMc9ucFmbyeEOpTgyYkXjA8nUsdkKYH5Xgr210IDkI8ps2l/F2GZwJEragPBPAci7HtHtivPyL4c+brQSKz/UqJr+V/oDIYB2PfRsT2Rif2OSN4itql5zitKc7DTcRqXofQss0h3tnDfoo+F5s+EWK0Iitjw4tiWwq+Vnki+CJSFs5Ya+7iv8PtDASiIiOuGE75z7q2qCrozMpJjf4ygZ2E5dOX95eigzzHdCtiJsVwHv97a0BlmENFu3akDhr0ACAmjWxY6FPIeYEUTmRl9flR2LpqqOsRVR6218eFV6a2tGL6/IAGJ7gghTHyp4wcGvJISJzd3jzxJ+NFLOOHloe38e9qqrfDIdmELKbWnOTP1WEYAaLnQXCFzaH8vFG6JtlN0MzCN6XvsOTy9kyLOV7CVD+SJpd7YyXNtA75zffbVDNS2tGrZDHLMQ9t18CyxRul2SfDiwxuEI2feNfRqlCLFhurYRBcPuh6Gs8ocs7xjZiwbaJYafZNw3yX6xMcGecirRU1J8Napeq62vSk95AGinAYeeXdYtXBq7NIm+AU18Q83c/WirVfLKF3SreftmYI6R4m8fgQipM15cpHon1hm9MnAEcg+gnHchZADcFSZwT4JCy4SqfFXCxtpnEFL+FUDfZy6eOqjzKBWub8PX2CZYbKShRT7NKDts8t23XKfRox//erHLY8tk8n4IM0LjB6FpivdyH9YUQ3DJQEl5QTUtmVnN33lk1YBMI6nkXOtoxtcsqfAzK24zyvzIA/rUlWyrPAuVbg8hTliegIdIxjTC/pzVZBfPAt79QpBPfN4PQdC1z+34K4tsCTA42sU1RgjDHUgdkL2wUaP6F4K5yKdPGvMHk4Qg4od0fLOxNS4kEkUDGgZPTzdrMi2NJHx+oY7TrnrvIKPBnwVseiUNQ5xsjrJqdd0Rb3z4CEbp0MpaZuf9PIIOV638viRyRMPmTMYbUMJ+V24wW+1mhPNl/D66vZ9YTR6rhEaIlfAoq0x98mU2pxTv1fw1R87xajy8qDTKjO1j7rdoRW0umD4mX69j8GK9jXDTFNEDUXD+334BYthUHZq9TAWCy6eFlDmpKd5yJNi+BIcFiKnJVOURFTErkRZzKHn3y03oaI6rTyPSK+17sIsq6z1OyBW8NNw/cGgaSRyaN/Ze8BID9JPeYA/uvbNi01h5YimtBK+Xu70tQhfniXVXH1QLMrFc2k703JWdMdee4UY94oYqgfQRoqYh1MOJHmi6lrSQuu1AGGXft3uwMBO/atBanJW95wDohp3Vx0EFFvKuyNEr+E3eN9J6+NV6h4DwJUNQIwa0ZkIGif7iwZAGbusQugpmjNXX1kkyBoEu/FN6W7XZO3m+lfWj1xUbIP+GznkgwUmfgr6X9dX/lMr2Ub3AGOVEjvlqpZyR2ineXOsa/z8LYif6ZsYi9viFlz6Rku4AVjcM345EeTms55pfMMpc3F92yCRpwgDC5olk5bVdey0J93L8J59qcjzMR9VIhGPcJFDh5pZMec5gABXotlgGDNhdIsKb/TnqIgan5XhW3wUe8K7V63WelezQ2hZiT49dIJXWupd78Er7kbPKI7/rfPPe/djen9QOumdS6Pnq6ORM/Q8WjreeLKWjUj47+D47pzY5SKyKhGglM+B7gmnlAinn1RjzVEd3eAFpa1IPF36avimDCmJkPeXxlrrtJ69UYb7nCFzgqG5LLeDsbmDp7bdzN7cxbOCr+S67ZISjYHA8FcQbypnbNSNd+eG4NWTz88VZinfkwpuyKu5PRUjIicNs/pBhG+M2rMb69yhUg8+42pqJncgg43kdtfAqyC547gBd6Tl4E/GLjggrqiT9teuo8UOsKDkGlS4SX6X4c3RlYst8klDQBod7wVojNOQhSRbER1EU+e4ppjye38zDF5W6i2WYhYpAWVXNrwuHkfSTZVfJcWO14ToC7lKIuJF4Ze0fg9bqkclzVwrWly7IZFNLYSIbeiqrBnMsGEO1ddKfVnM8hlCN/bro5Nqoz4xPE9eO8Ac6yGCDZ/3/Nkc7B7tQIEJijpei4aL4g7GDVsVlef6ThtkOCKuBckzs/hQTd/71vwOwAZzrn24zNN5W3aCd5IZewIfcAeWfGymcRTdqtR+oiVuYiyWoJwWbPm2rcWDzevkbYN0G7rr2vU5rvleglxwB1BqBZmBHokFpASIRdvhw/GcPXQmttMLj6PpKKTQd22ds5GGqAAaxeFvGvM3jTW1rtUJRI6aFgJqDN01uywZE5C1QKgsY2bRUVvw8LMvzocKE/dioIPxWxzGj0yU0nj/AlLjQdk5KUPFTrvwLqnSyliFY0fPYqLgHCDMZ7AMz0BPv8jJ7a30Ck+W4VidpcgK0WMIv01KgvR+oaIOTpdYyOX5o8D1dRisdkiheDpjwNIU7KO930xgp3pPzmDG+PC4dvVWd4wV+EMlJc9GxH74fKTAtaajEfE2WEVsYilP4ECYSU4EHjhnn2MxNzlEjQw8csnlI0xAvkZF78QcYK3g9tw9krY82eW1cFMNStlgJgEQEkxgBwLdRjPREc8wDa7MUlfoMVNbv72R8QZDu0wy/SW0cxRdTC0VuzuRC/gDDaGuR01j6LtYejQUokyPkKjpji3my/cRLch3esXN3FiA9SVDPYTreKVfW6qcHk4+zDtRZ+nhaJqXtyMrNB5vHMmD1xm1VdFkACr9q6yCSboyq5t+EIIkgnZKNit9NxtG09Cq2N9y2y18eeVC/a6QNb4sCpnDCUveXHjgxfOhjCpETSm5o2lyauVzYgTTX3M04KAcgLfztIzn0F4qbdpel7vmXFO9H1b9gppSiS83KuA3maQ0C5gxUoxpUJONwmu7RUGgVd2toiYYSx9HUAKkOAMRdMO7TJf6HstxH5nstBodRqipfV6DM6r7EzfCWzUlOBsTrQoTiHBrhrhluYmTQ4cURRp3RcsxRhnnYaA8YokPhsH1AnNURa3HhmRirvMsVuzNTuu7ASElAaAXPmBMi6P/wEJC+kDZdI0Zu4jvaIe/XK34Ol2FRF9mp9MopFeYfPy4t58Tou1bFe46VJ2q4dmlyW86TnMNZd50TKE/ApQlptagUd5bL6ujmb/9SLjwhulw+6PUcSpu2/7Jm2vx8EyqoljJD8FRy6M0Usx0uhWcs31SZdtlvjmkSnloe3KrZEBVkun+Pyf4wz7kWpflAIn/6TDf8FIrY/6EvqYSpBaSG0zIM1CuL/A7d1e594dwwkQeeWOw3H2ZAlvcg8Eo+rI8Yes6L08HkTIhCNSv0jNnxoPCogjVgK+PeC+7HP4o3/+wEufbZOdEcox+K4nUxoWUhD0NZ12dpbwSND5hb/r6dDFjQA5rwvBUVoD7vFwaWh4s6Tb1CnNaRumv4diG6qA8IsA9d5FwLqDSCaULpNFXDUsLoA+5/X5vJ/meaIjCHPXEAIH6BvmaAk6UnW3hSMFAcRGr56R1XgMWrkpRxPruVupYlS5ZXkZnSkZN4ZonJGyJ6QJ2RW7ynU6LXZPPA+zmvHwYSoxb6fDOfE3QPbUZnIsg1GgBAHw4Vz+fJ3CnQSzli3dojjU6y2pPHI810ddXV0FV87Q9XpucnSdVLxzNn4ovpG7+Vmozj9WhqLxzPp5iPpk8PP8x7v8F+QmLgmeUI0Anwf4o3EfQ4vGqeSSP4Ugg8ioQ4QifykYm0N+ZD8wXCfsgzX6ut7wRz/m81/hlGdHmNOd2NnG2Jy0ypFSGNdwcUg0f978mUoEtULxrdIYRYjV66R0SRaq++YG8A7cboQwfHY/77YWh4HdMK/9eFJlgGx40SUlbHt2clgD1Ks5me2JUFqGHMZy1hrSqD96RSX/ESDomO85/rOjrx2oL/7GJk8OYjHSUcCm/wB5UdmY7AwmfnuwGMs2buNJsMl6c7eztQGZTR5AXLeRrMhAQLxZ12uy8PAX4hpzFPPhz03zwx3kcXce9Dwo3aACCto6vCE+hITJh2X1jCFCCWGd116neqcoi04glCM6YhDAFIjySQ7ddqHMXC0SFiQuXnGWdKF4WHMVy3UzjX6P0kA9kaCnxyEXjjbdysE5O9O3n/Rtwdmk05b1oYDR48LQcfxHryq9dwNv6HFdpPOMDelq/CJ0A4f81snMsa+4y+SJEjrCutn7c2z5cVoXuwyvWb8Jle0xoEB8Xq+Um07L31g6t3Qef/f67e2D8J6z8HzS9r3cpCQExAWEW3oCOG9B2FmtHpvQjqwZe4MLcFPpKxD4u5xDMpxy2stunezvrelfYiiL3t08K3FUzCUII91U4v4B2/CHQYe45/hq/Lz+CK3MoMGBDrOQ1KuLqbjlEJmqvoRUiVh4/Vd9Fp8XvQxt8GTdatD5Ae8mXZLKWpxubpVXvgegbktf4K9/usfoP8Iux2EGnjso9R/1efdOYBdrmVGlZ4LMtEL8K1+jpQz2j3GIjg8neW3JswCU4WPgz5FehijIaQ5bqDhEGFAdWZwPZ6w/q2vjG02jHJ71xdPNEMD5zFuEqM1yNTO7F+K4vg1GavVgJ0OAZgQvYNdfeBM+7SEpwFtPOQwDAw1zqpGK03qC3pVuN6kt2OevUbA7C7Rl4AoZM3Un0LKVr1hhFOtznI70jKPZ8zEO4G8emt8DjlvuRMVG2HIuJKXsfm066MMqmGbHVJalwXJ+arB5UhzH0nBMFg7aD46h4lioEi8Mq3te8AbPu5xm+zlm21RobdZtwxUrueqbrn68Ph94jvqGiv63mxq6HU+YN2XsezEPjH29Nrv4PQauZd8IJZaIVwGgZgLNNb/AuGdt2rYUsvkndw4vXwNYkZlYZpBDkWdWVnVwzxx2LywG6AVZoYUZ8mPcAOJQAvgLpXRSYmY+PkUkO3q0N9HFg/w27qbwCZXueyGS1boogCkIqcphLZ2P335tcLqNS3rRo2wdUW8xvG1X2hVJdrKwHxOnZLbtMFlbMbicA/ovEZ0gC4akR1Rq2HkJAT+Yz7DurFKHEQiNXInM+PDqV3xmT+lSdi182KMCtAltb/rNpt2UmMEyWDVpCV+zo3uSe+97ejqzk1RlZoikDo3H2/Qc/15p7gXQsmRQlQtsOqDCb3zvtVScL54HxR8pUBtVirUhYDAEIlBiB3VDfEK2OL1FB2j+67zN5vHLjVSQ7s9HfYXMMr+J5WlJ0LNt8EOXXW4n6dxXRLvqrXtcn2//Ybl9deanYjlKSxnclyTN/A97OZ/afhv/la/UfFqRFilZyr1QGQI3PffTrrLa3ZHZIThGemMixlQheEfMKrb2C2aukZkrFOwYAFqf2eiGc36IMS2IRciqGUTNdD0afdK3RjbMeiP/GQSVzv8ouYZ55FEix4VU1qAucv2XGgBdROZv51do5m+iytfzugCFCxMwIHrV18T7HQSN0RAZBNUL62N46iSP1ZxmrT+q1wjfwLKsFJx+QzBqIT2G51g396fTjdRFlljMFIpvJpK7+hnkVKPFY2FuAYvjg0v9YS3l8Aw+c7LZOGDTm+9uqgbw3AjAGUXBneMu8WlaU2fRNaCjxv+8SEtWHr/VSZpx2Guvi0ko3HiB0tAwRks2ZxZi0Di512P83dmCT5aYOobWK+EDHJopBQBKpRT0MoSA726JYnYZUtHsEruweJt+H+PXVLPJ/T5IlLFqs0XmWjlhToOZWOWhpokY5Ky/+DPAI4HlgrryGTHauCZGCCWTtjX+M9MA4LAKPQCskAZ5BIWPMI9yHPdoKuawDCHnS6i57nBdtmOBkMC0bVaaqjNKeeWFVjOvyX6gr5zLHZZlPg2rWsnQB2lD01TvMsPapn3jZSHwX7krLvu9jQrin8g/6mxkaFYneJJnltcnDBYXqF4qpZfYYSLxCL+LqNG2O+ZfYDmJxAIgT+aZgo4wAT/eshWjGDsDoq4B7lnL9J4aHEBZndU8tJ1MQfh1b4V52v6O4wdUs25TWrjp+f8k8WoKLopLznGXBBRrLRTUS2ZPgHuQeK5RmOXm7GhaPzsJI9DSRorYsASXWKSkXfPKEe+j0dC8VNZxW8fe5AvWpo56yieWsHNHN+NdNzZFoMgZl13GpILT57p1Xveht0KO3LkS9Q92SAQW1fOyCoWlrWaGNanbNVC3EUJz4h2y4kusDCtOc43Wy77mjSkIwa3lMfKNixWZddHX/URRl/Inxx5kYtMmZb6ApnDDqCxWoL1J0kNRizkavWCH5IrP0TmJ8d6J9z8JkzkThqfJtUt/89WwSwn6tyPivFPT5R/Lc31fprl8kzmKVbrkIenjpCHdSPHUTIhMuMFu1JeTZlCDYlIAWTSyZJHtjYBYo2yrvpsat/PxJXkQyeBHrmrOgC17f7g4phYC38fFvDN5IMUS/I3liq/E/2N+76y8Sv5W4cULehiBOVzhX0nOD+ITljLNKw3GVZdOHjpTr27tpgKSIj+niBezQBdFDBks1DywjwLnSEmvyNj+sTQB4FZRxn0UFIT4uX9n3YJExu4FuzXMstrdDyqQ3ih6WriAswtQwrs1iLeTxJk8mVwNW9izPYSYOC0yddOxntYT/tW0RsZWcpb+Scy9WVrmpvQ2/jLs3DpU19mqHuy6i8aMRxQZ6+/fbHyWSAXLVSEhDKjTBVLnlNwvATup94lr6ZbqKH/zRtf0LqtGH0G2V7BjwIn/7Z2YscHjBEf/rBgPiaiLBcJYaa7ZmEi4F3dt3mwxXDVXN9+MB1BhrCkFtytsa3Qc8TEmLHcrtBfqpq18W2lyDtbe3Pg2v/T5wkt1hR/c3iDo8pjY4umFyWQ1yrutgFX3Cajedx2YeDYgykxiMrVoY/9errLZT0gnif40K2AypV70vJlORkKZrBOTfZJ8m1yDiUbP/qP1XugKlPGhx3Nq1GabKGdKQSb4iAYqLFG0vKweJc78b3bRsbbGTQAn9Ha/Rvc0Uvlw7ANV9F5xbd4g6SvZK5iBSTJ0uh4AstD1Ypyn1Ney4MOMuyyX64aWINm/WqdpokX7ScAjPYIW7YrRwvZxw9ayG9iPD6I43Ibol2592DZKhRUqHuT3XfbaAhTxjuyMOUROHm+hQ66iRiK49Fw8N0+xIzXl1f/LdUg+GzBINoPTepQmz0JwWflPtYLplgyGypTbfiRYtqdhsH9ibA7UhTcV1EZcwSTR4n354Jkdmtw6KClfGTZ6rG5Vk8teWhA2j+gN3TxtiOWbG//x53H7ef6Y5L0ZGKxFmM9UwaVWYmH55PRl6hcaQ9q+QnmNRmfYgBnYZrlJuM5rPXo+Ka4aGZFmZu/DB1Rkbz7uaVgiypQmICc8cKK2uQyc1NX9LezxKd7H7pcGj+ieQ5IRNrg0sEwonzsQYcuTNQtAAh2e3Wjl1YPtbn1UTHRoLaDoqvZOPlzyJRqP/l7WlSNAWOt0u7wpQXNr/BP84lM/iP6X1EVquKp0znQwqO3oy4XGB7qCU56J2v9y4SPtsA7sVGUxMec0o+nWZZcIsjMwobuDLBx+e5ZiVCV95fQYGpU0yrJwMGfEdGrx1YgR2b2bKdrXr6Jhkn2FBKhTKaLlMDJsDCqIxEnZ73R3b7jVI7WkL5ZKn7KJl7TfcPJhW3j2kTLvfMMN0zqsVak1ExUw9kbxHFw2elVc+1w5YudWX9kHIpNy3OyvLxZljWPVMiN0Phoerab8hvfHLcsXXOn5+tkhOcbJOKaSrTikil+Y4bU3otrB4IEPsfTc2UcZgORujwT1xRyZcNuj23IOeMJfzfPUYp4F/hJn1oAP/9xjMZM+i4SHmDZeCXL3Hrzh797bAnmJizrm/9h2dXrIzbozITVvszTT9F23rc/fqSTTntN1eemz6J5IJ2wDB0J4wdZV2PGu7ViQLAUXWXknGDducKqLr+V7G8xaj61km8AYTIPEF9YOH/MkaC+HSm5oik/lMJagAPPnTLdcds4ilzUSnr4fFnNqpCS8RKYHfzOuxoNTgftRe9Ajr8BAu6qEMAZ3V+xiSZHrseJT2fUntxGgxSKnbTZwEDCIHez/Ni8cEzuFQRrHC9mikHTb7QXYwBS2YF82QKR6ON+0cJ8lvHhc1Wge29CQDeRB979LgVrgFeQLMnv19EySeAb6cbZiVa4duQA1MKD+krOrVmKZ4QmLA6tUdiND1oL3DcYIBrx6kq9OqwzhrvZ5qsJxOV1gahDNI2q9PrACjdt/gm7R5h0AMJ17zAczaoXEMftiPcuMFkOplQhqm844PUlhowW7oTbN8p+IUqfnRvX/urjOoVJqIE4h6Ykyw0a/0UflxufiXiPHPz2ylg1kvaKVcs1fKdRIIQkcQSEFDuBpq4ZwNzl3wNCsZXwSxWxoEP5xGEAHD6mV50oe757YuCvauxgkdaPdIkJhMxLz5AQEepYHQPqF4kZwJlLAyYC5ZN1jSv2Dixnw1o3iLViAIcO9S5H3ndgJvqS+uq3AhwPeSmn+f3h1GVogrwctqG6aauyBwIn9vbnPP0gIq4/UxBSoy4Q/cmGiO+8N2ugp47A4XHzsFO7jnAPcLaJE3Ub12QL7Eq4lOlCTFl2cQSibjcJzW77zS3NNjS96dELZq7488+FIjaP98umc2MT98na/f/60B5WwO54rtBf+pKB16ZKndF81lrjhAHa8ci0+gZdaLyQmU0dKuGqABuwGj7innd815XCXCXKBHFnFe4qYHoqBAYxcsB+gfuKYYnYFA/oRDCXtOKhhC5LhFhigbs9vLjsN5bgTIAzPfoB7cGMmw8VTyILJCC1D7IONxHJEGsFvbUcHhK8GzXNolW259gaHulPiLxptoiRxPY8BFY8s3eaK5Ec04meyijofx9Gyr03McypnkUgYFubmptE/k9S2agXYdhDwMV2B/rGv4tIj0Uv0oHYkZodVEKbn/Pdk0KpO13klmCFY3+n6EQPqdQwf0HBQGQXT/NIZXxzs9llmmbOrJUDpkxb7+Ac9+5xCmAoKBGRzOi+gbZ87AwUTF/6m7vNo1dlHhZrFazxriMt8TvBgryuaOH3+PO9XpKzdj8pLloTlq8259lC7LIRp80zsWSrrvbL5WhaCBqaZ/p7rzEcXQDZH4lS5jbRUMmo0cSw0C7phQ/Jv6sYmvdmHkkUmcXBQRh4gS57yMK586K37CVbpwxAlI8s8jK2DgrdlKl6yJAcSWWIJvKGqSLnhaqsEnPtYlLbIL4LtfYEq8f3a5EA64KOVDmcDGAD9xZl+xP+YmzIiOtA20WJPXgsQbFhWbrxGMmGcrTZTAAHqYc4EmfU4uWNTLdCycutMKeGI4yZAYFXQ1PrCjkeu16JnjnYaCzMGrZaOb+r0vru833hjY1me4z6ICEzA5DbO4ffaRf6QR+lfiretYReYIu2ddExD7rNwliaAFSwm5JbOcchxuTn/8kHVPC6thup+2pTTzTjeWIK1cEWXEMdJN8OUEZ/9z/OWF2PgQw6A7jcJ1BCUH/MgP5TYBUY/I7y3H0ZXrgcaUrXvGG0OFEI2+hZxfbC8ruK7WDnVo4WVvg6KCIUDo5WMKDXyXRUHu7eXre8AwytB+wt0Ulp6KG/fVGG4BFVEUKuF+NAAJt4cNF0Ej9MMj85449Ck3fFarzKIZZ7FKsYxxHQ3Oz5oItwdvDM5BsVjmNHD3FzjGE415wGaHWpQhdbaNRipvRM7PtjzoC+3JcNzBhGi9dR9G0skDpm4nBNUiak1NFexONdo4H/kfm0ntZi6Ct5AxChW+U4y+VwQokcV80hoPAVliSDUu9KOZ4AI5w61d8aEuihr9qwgXG3C/ShCvxYxT7lU/a3YQqPNARdWQqM+DSMy8xhzkYnySahUZcwp7G3O6r4oOM4BENqKDhcpXmKtviffqnqBywAil/yHmm0fvejaIlcdp246PA/sdArEex2mIp4jgoL2UQyzhUbhMzQkxxj6im61+EVtsMNy21DBrdRskUCqrYavWd94Ww6tDfLU7d/HP5DL2LIIXURoQpgXq+ET6m5fnXIzpKroaeEQ1VK9oWG9f4Ge9nUHUdskNc3wzOiHT1GXntiSDsQFiEKts1a6AueUHVDLuTi0q0ZqUhRPDFBrVAo0LLbKLySeZhkn0mLWkpT2U3Wa4L5iNPGWtCiaXImAAAAAA=='); diff --git a/docker/statistics/app/Services/WardManagement/WardTreatmentDispensationService.php b/docker/statistics/app/Services/WardManagement/WardTreatmentDispensationService.php deleted file mode 100644 index 66161d05..00000000 --- a/docker/statistics/app/Services/WardManagement/WardTreatmentDispensationService.php +++ /dev/null @@ -1,93 +0,0 @@ -where('drug_id', $drug_id)->first(); - - if (!$drug_exists) { - $ward_treatments_dispensation = new WardTreatmentDispensation; - $ward_treatments_dispensation->patient_id = $patient_id; - $ward_treatments_dispensation->episode_id = $episode_id; - $ward_treatments_dispensation->drug_id = $drug_id; - $ward_treatments_dispensation->quantity_given = $quantity_given; - $ward_treatments_dispensation->ward_treatment_id = $ward_treatment_id; - $ward_treatments_dispensation->ward_id = $ward_id; - $ward_treatments_dispensation->current_chart_of_account = $drug_details->account_id; - $ward_treatments_dispensation->cost_price = $drug_details->cost_price; - $ward_treatments_dispensation->inventory_account = $drug_details->inventory_account; - $ward_treatments_dispensation->cost_of_goods_account = $drug_details->cost_of_goods_account; - $ward_treatments_dispensation->batch_id = $batch_id; - - if(patient_insurance_status($patient_id) == 1){ - $drug_insurance_details = get_item_insurance_pricing($patient_id, $drug_id, 4, true, $ward_id); - $drug_selling_price = $drug_insurance_details[2]; - $ward_treatments_dispensation->chi_price = $drug_insurance_details[1]; - } else { - $price_list_id = is_patient_category_attached_to_price_list($patient_id); - if ($price_list_id) { - $drug_selling_price = get_price_list_category_price($price_list_id, 3, $drug_id); - } else { - $drug_selling_price = $drug_details->non_insured_price; - } - } - - $ward_treatments_dispensation->price = $drug_selling_price; - $ward_treatments_dispensation->created_by = Auth::id(); - $dispensation_history = [[ - 'entered_at' => Carbon::now()->toDateTimeString(), - 'entered_by' => Auth::id() - ]]; - $ward_treatments_dispensation->dispensation_history = json_encode($dispensation_history); - } else { - $ward_treatments_dispensation = $drug_exists; - $ward_treatments_dispensation->quantity_given = $ward_treatments_dispensation->quantity_given + $quantity_given; - $ward_treatments_dispensation->updated_by = Auth::id(); - - $dispensation_history = json_decode($ward_treatments_dispensation->dispensation_history, true); - - if (is_null($ward_treatments_dispensation->dispensation_history)) { - $dispensation_history[] = [ - 'entered_at' => $ward_treatments_dispensation->created_at->toDateTimeString(), - 'entered_by' => $ward_treatments_dispensation->created_by, - ]; - } - - $dispensation_history[] = [ - 'entered_at' => Carbon::now()->toDateTimeString(), - 'entered_by' => Auth::id(), - ]; - $ward_treatments_dispensation->dispensation_history = json_encode($dispensation_history); - } - - if ($ward_treatments_dispensation->save()) { - return $ward_treatments_dispensation->id; - } else { - return false; - } - } -} \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/antenatal_module.php b/docker/statistics/bootstrap/cache/antenatal_module.php deleted file mode 100755 index fd5da9ae..00000000 --- a/docker/statistics/bootstrap/cache/antenatal_module.php +++ /dev/null @@ -1,13 +0,0 @@ - - array ( - 0 => 'Modules\\Antenatal\\Providers\\AntenatalServiceProvider', - ), - 'eager' => - array ( - 0 => 'Modules\\Antenatal\\Providers\\AntenatalServiceProvider', - ), - 'deferred' => - array ( - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/banking_module.php b/docker/statistics/bootstrap/cache/banking_module.php deleted file mode 100755 index 629e0403..00000000 --- a/docker/statistics/bootstrap/cache/banking_module.php +++ /dev/null @@ -1,13 +0,0 @@ - - array ( - 0 => 'Modules\\Banking\\Providers\\BankingServiceProvider', - ), - 'eager' => - array ( - 0 => 'Modules\\Banking\\Providers\\BankingServiceProvider', - ), - 'deferred' => - array ( - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/budgets_module.php b/docker/statistics/bootstrap/cache/budgets_module.php deleted file mode 100755 index 3825aa7a..00000000 --- a/docker/statistics/bootstrap/cache/budgets_module.php +++ /dev/null @@ -1,13 +0,0 @@ - - array ( - 0 => 'Modules\\Budgets\\Providers\\BudgetsServiceProvider', - ), - 'eager' => - array ( - 0 => 'Modules\\Budgets\\Providers\\BudgetsServiceProvider', - ), - 'deferred' => - array ( - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/cancer_module.php b/docker/statistics/bootstrap/cache/cancer_module.php deleted file mode 100755 index eecfabd1..00000000 --- a/docker/statistics/bootstrap/cache/cancer_module.php +++ /dev/null @@ -1,13 +0,0 @@ - - array ( - 0 => 'Modules\\Cancer\\Providers\\CancerServiceProvider', - ), - 'eager' => - array ( - 0 => 'Modules\\Cancer\\Providers\\CancerServiceProvider', - ), - 'deferred' => - array ( - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/clinical_data_module.php b/docker/statistics/bootstrap/cache/clinical_data_module.php deleted file mode 100755 index 3e831cd0..00000000 --- a/docker/statistics/bootstrap/cache/clinical_data_module.php +++ /dev/null @@ -1,13 +0,0 @@ - - array ( - 0 => 'Modules\\ClinicalData\\Providers\\ClinicalDataServiceProvider', - ), - 'eager' => - array ( - 0 => 'Modules\\ClinicalData\\Providers\\ClinicalDataServiceProvider', - ), - 'deferred' => - array ( - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/diabetes_module.php b/docker/statistics/bootstrap/cache/diabetes_module.php deleted file mode 100755 index f1d18278..00000000 --- a/docker/statistics/bootstrap/cache/diabetes_module.php +++ /dev/null @@ -1,13 +0,0 @@ - - array ( - 0 => 'Modules\\Diabetes\\Providers\\DiabetesServiceProvider', - ), - 'eager' => - array ( - 0 => 'Modules\\Diabetes\\Providers\\DiabetesServiceProvider', - ), - 'deferred' => - array ( - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/expenses_module.php b/docker/statistics/bootstrap/cache/expenses_module.php deleted file mode 100755 index e899aca3..00000000 --- a/docker/statistics/bootstrap/cache/expenses_module.php +++ /dev/null @@ -1,13 +0,0 @@ - - array ( - 0 => 'Modules\\Expenses\\Providers\\ExpensesServiceProvider', - ), - 'eager' => - array ( - 0 => 'Modules\\Expenses\\Providers\\ExpensesServiceProvider', - ), - 'deferred' => - array ( - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/eye_clinic_module.php b/docker/statistics/bootstrap/cache/eye_clinic_module.php deleted file mode 100755 index c903db91..00000000 --- a/docker/statistics/bootstrap/cache/eye_clinic_module.php +++ /dev/null @@ -1,13 +0,0 @@ - - array ( - 0 => 'Modules\\EyeClinic\\Providers\\EyeClinicServiceProvider', - ), - 'eager' => - array ( - 0 => 'Modules\\EyeClinic\\Providers\\EyeClinicServiceProvider', - ), - 'deferred' => - array ( - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/finance_module.php b/docker/statistics/bootstrap/cache/finance_module.php deleted file mode 100755 index 390b69ac..00000000 --- a/docker/statistics/bootstrap/cache/finance_module.php +++ /dev/null @@ -1,13 +0,0 @@ - - array ( - 0 => 'Modules\\Finance\\Providers\\FinanceServiceProvider', - ), - 'eager' => - array ( - 0 => 'Modules\\Finance\\Providers\\FinanceServiceProvider', - ), - 'deferred' => - array ( - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/finance_reports_module.php b/docker/statistics/bootstrap/cache/finance_reports_module.php deleted file mode 100755 index d74a9c4e..00000000 --- a/docker/statistics/bootstrap/cache/finance_reports_module.php +++ /dev/null @@ -1,13 +0,0 @@ - - array ( - 0 => 'Modules\\FinanceReports\\Providers\\FinanceReportsServiceProvider', - ), - 'eager' => - array ( - 0 => 'Modules\\FinanceReports\\Providers\\FinanceReportsServiceProvider', - ), - 'deferred' => - array ( - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/hiv_module.php b/docker/statistics/bootstrap/cache/hiv_module.php deleted file mode 100755 index b0a147a1..00000000 --- a/docker/statistics/bootstrap/cache/hiv_module.php +++ /dev/null @@ -1,13 +0,0 @@ - - array ( - 0 => 'Modules\\Hiv\\Providers\\HivServiceProvider', - ), - 'eager' => - array ( - 0 => 'Modules\\Hiv\\Providers\\HivServiceProvider', - ), - 'deferred' => - array ( - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/insurance_module.php b/docker/statistics/bootstrap/cache/insurance_module.php deleted file mode 100755 index e8753510..00000000 --- a/docker/statistics/bootstrap/cache/insurance_module.php +++ /dev/null @@ -1,13 +0,0 @@ - - array ( - 0 => 'Modules\\Insurance\\Providers\\InsuranceServiceProvider', - ), - 'eager' => - array ( - 0 => 'Modules\\Insurance\\Providers\\InsuranceServiceProvider', - ), - 'deferred' => - array ( - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/investigations_module.php b/docker/statistics/bootstrap/cache/investigations_module.php deleted file mode 100755 index 42525ddd..00000000 --- a/docker/statistics/bootstrap/cache/investigations_module.php +++ /dev/null @@ -1,13 +0,0 @@ - - array ( - 0 => 'Modules\\Investigations\\Providers\\InvestigationsServiceProvider', - ), - 'eager' => - array ( - 0 => 'Modules\\Investigations\\Providers\\InvestigationsServiceProvider', - ), - 'deferred' => - array ( - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/invoices_module.php b/docker/statistics/bootstrap/cache/invoices_module.php deleted file mode 100755 index 1f8612e9..00000000 --- a/docker/statistics/bootstrap/cache/invoices_module.php +++ /dev/null @@ -1,13 +0,0 @@ - - array ( - 0 => 'Modules\\Invoices\\Providers\\InvoicesServiceProvider', - ), - 'eager' => - array ( - 0 => 'Modules\\Invoices\\Providers\\InvoicesServiceProvider', - ), - 'deferred' => - array ( - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/journals_module.php b/docker/statistics/bootstrap/cache/journals_module.php deleted file mode 100755 index aa81c2b3..00000000 --- a/docker/statistics/bootstrap/cache/journals_module.php +++ /dev/null @@ -1,13 +0,0 @@ - - array ( - 0 => 'Modules\\Journals\\Providers\\JournalsServiceProvider', - ), - 'eager' => - array ( - 0 => 'Modules\\Journals\\Providers\\JournalsServiceProvider', - ), - 'deferred' => - array ( - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/maternity_module.php b/docker/statistics/bootstrap/cache/maternity_module.php deleted file mode 100755 index 226fb023..00000000 --- a/docker/statistics/bootstrap/cache/maternity_module.php +++ /dev/null @@ -1,13 +0,0 @@ - - array ( - 0 => 'Modules\\Maternity\\Providers\\MaternityServiceProvider', - ), - 'eager' => - array ( - 0 => 'Modules\\Maternity\\Providers\\MaternityServiceProvider', - ), - 'deferred' => - array ( - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/packages.php b/docker/statistics/bootstrap/cache/packages.php deleted file mode 100755 index 219a4bb5..00000000 --- a/docker/statistics/bootstrap/cache/packages.php +++ /dev/null @@ -1,121 +0,0 @@ - - array ( - 'aliases' => - array ( - 'PDF' => 'Barryvdh\\DomPDF\\Facade\\Pdf', - 'Pdf' => 'Barryvdh\\DomPDF\\Facade\\Pdf', - ), - 'providers' => - array ( - 0 => 'Barryvdh\\DomPDF\\ServiceProvider', - ), - ), - 'barryvdh/laravel-snappy' => - array ( - 'aliases' => - array ( - 'PDF' => 'Barryvdh\\Snappy\\Facades\\SnappyPdf', - 'SnappyImage' => 'Barryvdh\\Snappy\\Facades\\SnappyImage', - ), - 'providers' => - array ( - 0 => 'Barryvdh\\Snappy\\ServiceProvider', - ), - ), - 'fx3costa/laravelchartjs' => - array ( - 'providers' => - array ( - 0 => 'Fx3costa\\LaravelChartJs\\Providers\\ChartjsServiceProvider', - ), - ), - 'laracasts/flash' => - array ( - 'aliases' => - array ( - 'Flash' => 'Laracasts\\Flash\\Flash', - ), - 'providers' => - array ( - 0 => 'Laracasts\\Flash\\FlashServiceProvider', - ), - ), - 'laravel/tinker' => - array ( - 'providers' => - array ( - 0 => 'Laravel\\Tinker\\TinkerServiceProvider', - ), - ), - 'laravel/ui' => - array ( - 'providers' => - array ( - 0 => 'Laravel\\Ui\\UiServiceProvider', - ), - ), - 'laravelcollective/html' => - array ( - 'providers' => - array ( - 0 => 'Collective\\Html\\HtmlServiceProvider', - ), - 'aliases' => - array ( - 'Form' => 'Collective\\Html\\FormFacade', - 'Html' => 'Collective\\Html\\HtmlFacade', - ), - ), - 'milon/barcode' => - array ( - 'aliases' => - array ( - 'DNS1D' => 'Milon\\Barcode\\Facades\\DNS1DFacade', - 'DNS2D' => 'Milon\\Barcode\\Facades\\DNS2DFacade', - ), - 'providers' => - array ( - 0 => 'Milon\\Barcode\\BarcodeServiceProvider', - ), - ), - 'nesbot/carbon' => - array ( - 'providers' => - array ( - 0 => 'Carbon\\Laravel\\ServiceProvider', - ), - ), - 'nunomaduro/termwind' => - array ( - 'providers' => - array ( - 0 => 'Termwind\\Laravel\\TermwindServiceProvider', - ), - ), - 'nwidart/laravel-modules' => - array ( - 'aliases' => - array ( - 'Module' => 'Nwidart\\Modules\\Facades\\Module', - ), - 'providers' => - array ( - 0 => 'Nwidart\\Modules\\LaravelModulesServiceProvider', - ), - ), - 'owen-it/laravel-auditing' => - array ( - 'providers' => - array ( - 0 => 'OwenIt\\Auditing\\AuditingServiceProvider', - ), - ), - 'spatie/laravel-permission' => - array ( - 'providers' => - array ( - 0 => 'Spatie\\Permission\\PermissionServiceProvider', - ), - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/patient_discounts_module.php b/docker/statistics/bootstrap/cache/patient_discounts_module.php deleted file mode 100755 index 267e18b5..00000000 --- a/docker/statistics/bootstrap/cache/patient_discounts_module.php +++ /dev/null @@ -1,13 +0,0 @@ - - array ( - 0 => 'Modules\\PatientDiscounts\\Providers\\PatientDiscountsServiceProvider', - ), - 'eager' => - array ( - 0 => 'Modules\\PatientDiscounts\\Providers\\PatientDiscountsServiceProvider', - ), - 'deferred' => - array ( - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/patient_finance_module.php b/docker/statistics/bootstrap/cache/patient_finance_module.php deleted file mode 100755 index d2159aac..00000000 --- a/docker/statistics/bootstrap/cache/patient_finance_module.php +++ /dev/null @@ -1,13 +0,0 @@ - - array ( - 0 => 'Modules\\PatientFinance\\Providers\\PatientFinanceServiceProvider', - ), - 'eager' => - array ( - 0 => 'Modules\\PatientFinance\\Providers\\PatientFinanceServiceProvider', - ), - 'deferred' => - array ( - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/patients_module.php b/docker/statistics/bootstrap/cache/patients_module.php deleted file mode 100755 index b0f89ecd..00000000 --- a/docker/statistics/bootstrap/cache/patients_module.php +++ /dev/null @@ -1,13 +0,0 @@ - - array ( - 0 => 'Modules\\Patients\\Providers\\PatientsServiceProvider', - ), - 'eager' => - array ( - 0 => 'Modules\\Patients\\Providers\\PatientsServiceProvider', - ), - 'deferred' => - array ( - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/payroll_module.php b/docker/statistics/bootstrap/cache/payroll_module.php deleted file mode 100755 index 6bedb2f1..00000000 --- a/docker/statistics/bootstrap/cache/payroll_module.php +++ /dev/null @@ -1,13 +0,0 @@ - - array ( - 0 => 'Modules\\Payroll\\Providers\\PayrollServiceProvider', - ), - 'eager' => - array ( - 0 => 'Modules\\Payroll\\Providers\\PayrollServiceProvider', - ), - 'deferred' => - array ( - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/pharmacy_module.php b/docker/statistics/bootstrap/cache/pharmacy_module.php deleted file mode 100755 index 199ce5e7..00000000 --- a/docker/statistics/bootstrap/cache/pharmacy_module.php +++ /dev/null @@ -1,13 +0,0 @@ - - array ( - 0 => 'Modules\\Pharmacy\\Providers\\PharmacyServiceProvider', - ), - 'eager' => - array ( - 0 => 'Modules\\Pharmacy\\Providers\\PharmacyServiceProvider', - ), - 'deferred' => - array ( - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/reports_module.php b/docker/statistics/bootstrap/cache/reports_module.php deleted file mode 100755 index 73c43a4c..00000000 --- a/docker/statistics/bootstrap/cache/reports_module.php +++ /dev/null @@ -1,13 +0,0 @@ - - array ( - 0 => 'Modules\\Reports\\Providers\\ReportsServiceProvider', - ), - 'eager' => - array ( - 0 => 'Modules\\Reports\\Providers\\ReportsServiceProvider', - ), - 'deferred' => - array ( - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/services.php b/docker/statistics/bootstrap/cache/services.php deleted file mode 100755 index 1850274c..00000000 --- a/docker/statistics/bootstrap/cache/services.php +++ /dev/null @@ -1,278 +0,0 @@ - - array ( - 0 => 'Illuminate\\Auth\\AuthServiceProvider', - 1 => 'Illuminate\\Broadcasting\\BroadcastServiceProvider', - 2 => 'Illuminate\\Bus\\BusServiceProvider', - 3 => 'Illuminate\\Cache\\CacheServiceProvider', - 4 => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 5 => 'Illuminate\\Cookie\\CookieServiceProvider', - 6 => 'Illuminate\\Database\\DatabaseServiceProvider', - 7 => 'Illuminate\\Encryption\\EncryptionServiceProvider', - 8 => 'Illuminate\\Filesystem\\FilesystemServiceProvider', - 9 => 'Illuminate\\Foundation\\Providers\\FoundationServiceProvider', - 10 => 'Illuminate\\Hashing\\HashServiceProvider', - 11 => 'Illuminate\\Mail\\MailServiceProvider', - 12 => 'Illuminate\\Notifications\\NotificationServiceProvider', - 13 => 'Illuminate\\Pagination\\PaginationServiceProvider', - 14 => 'Illuminate\\Pipeline\\PipelineServiceProvider', - 15 => 'Illuminate\\Queue\\QueueServiceProvider', - 16 => 'Illuminate\\Redis\\RedisServiceProvider', - 17 => 'Illuminate\\Auth\\Passwords\\PasswordResetServiceProvider', - 18 => 'Illuminate\\Session\\SessionServiceProvider', - 19 => 'Illuminate\\Translation\\TranslationServiceProvider', - 20 => 'Illuminate\\Validation\\ValidationServiceProvider', - 21 => 'Illuminate\\View\\ViewServiceProvider', - 22 => 'Barryvdh\\DomPDF\\ServiceProvider', - 23 => 'Barryvdh\\Snappy\\ServiceProvider', - 24 => 'Fx3costa\\LaravelChartJs\\Providers\\ChartjsServiceProvider', - 25 => 'Laracasts\\Flash\\FlashServiceProvider', - 26 => 'Laravel\\Tinker\\TinkerServiceProvider', - 27 => 'Laravel\\Ui\\UiServiceProvider', - 28 => 'Collective\\Html\\HtmlServiceProvider', - 29 => 'Milon\\Barcode\\BarcodeServiceProvider', - 30 => 'Carbon\\Laravel\\ServiceProvider', - 31 => 'Termwind\\Laravel\\TermwindServiceProvider', - 32 => 'Nwidart\\Modules\\LaravelModulesServiceProvider', - 33 => 'OwenIt\\Auditing\\AuditingServiceProvider', - 34 => 'Spatie\\Permission\\PermissionServiceProvider', - 35 => 'Laravel\\Tinker\\TinkerServiceProvider', - 36 => 'Streamline\\Providers\\AppServiceProvider', - 37 => 'Streamline\\Providers\\AuthServiceProvider', - 38 => 'Streamline\\Providers\\EventServiceProvider', - 39 => 'Streamline\\Providers\\RouteServiceProvider', - 40 => 'Laracasts\\Flash\\FlashServiceProvider', - 41 => 'Collective\\Html\\HtmlServiceProvider', - 42 => 'Spatie\\Permission\\PermissionServiceProvider', - 43 => 'OwenIt\\Auditing\\AuditingServiceProvider', - 44 => 'Barryvdh\\Snappy\\ServiceProvider', - 45 => 'Milon\\Barcode\\BarcodeServiceProvider', - 46 => 'Barryvdh\\DomPDF\\ServiceProvider', - ), - 'eager' => - array ( - 0 => 'Illuminate\\Auth\\AuthServiceProvider', - 1 => 'Illuminate\\Cookie\\CookieServiceProvider', - 2 => 'Illuminate\\Database\\DatabaseServiceProvider', - 3 => 'Illuminate\\Encryption\\EncryptionServiceProvider', - 4 => 'Illuminate\\Filesystem\\FilesystemServiceProvider', - 5 => 'Illuminate\\Foundation\\Providers\\FoundationServiceProvider', - 6 => 'Illuminate\\Notifications\\NotificationServiceProvider', - 7 => 'Illuminate\\Pagination\\PaginationServiceProvider', - 8 => 'Illuminate\\Session\\SessionServiceProvider', - 9 => 'Illuminate\\View\\ViewServiceProvider', - 10 => 'Barryvdh\\DomPDF\\ServiceProvider', - 11 => 'Barryvdh\\Snappy\\ServiceProvider', - 12 => 'Fx3costa\\LaravelChartJs\\Providers\\ChartjsServiceProvider', - 13 => 'Laracasts\\Flash\\FlashServiceProvider', - 14 => 'Laravel\\Ui\\UiServiceProvider', - 15 => 'Milon\\Barcode\\BarcodeServiceProvider', - 16 => 'Carbon\\Laravel\\ServiceProvider', - 17 => 'Termwind\\Laravel\\TermwindServiceProvider', - 18 => 'Nwidart\\Modules\\LaravelModulesServiceProvider', - 19 => 'OwenIt\\Auditing\\AuditingServiceProvider', - 20 => 'Spatie\\Permission\\PermissionServiceProvider', - 21 => 'Streamline\\Providers\\AppServiceProvider', - 22 => 'Streamline\\Providers\\AuthServiceProvider', - 23 => 'Streamline\\Providers\\EventServiceProvider', - 24 => 'Streamline\\Providers\\RouteServiceProvider', - 25 => 'Laracasts\\Flash\\FlashServiceProvider', - 26 => 'Spatie\\Permission\\PermissionServiceProvider', - 27 => 'OwenIt\\Auditing\\AuditingServiceProvider', - 28 => 'Barryvdh\\Snappy\\ServiceProvider', - 29 => 'Milon\\Barcode\\BarcodeServiceProvider', - 30 => 'Barryvdh\\DomPDF\\ServiceProvider', - ), - 'deferred' => - array ( - 'Illuminate\\Broadcasting\\BroadcastManager' => 'Illuminate\\Broadcasting\\BroadcastServiceProvider', - 'Illuminate\\Contracts\\Broadcasting\\Factory' => 'Illuminate\\Broadcasting\\BroadcastServiceProvider', - 'Illuminate\\Contracts\\Broadcasting\\Broadcaster' => 'Illuminate\\Broadcasting\\BroadcastServiceProvider', - 'Illuminate\\Bus\\Dispatcher' => 'Illuminate\\Bus\\BusServiceProvider', - 'Illuminate\\Contracts\\Bus\\Dispatcher' => 'Illuminate\\Bus\\BusServiceProvider', - 'Illuminate\\Contracts\\Bus\\QueueingDispatcher' => 'Illuminate\\Bus\\BusServiceProvider', - 'Illuminate\\Bus\\BatchRepository' => 'Illuminate\\Bus\\BusServiceProvider', - 'Illuminate\\Bus\\DatabaseBatchRepository' => 'Illuminate\\Bus\\BusServiceProvider', - 'cache' => 'Illuminate\\Cache\\CacheServiceProvider', - 'cache.store' => 'Illuminate\\Cache\\CacheServiceProvider', - 'cache.psr6' => 'Illuminate\\Cache\\CacheServiceProvider', - 'memcached.connector' => 'Illuminate\\Cache\\CacheServiceProvider', - 'Illuminate\\Cache\\RateLimiter' => 'Illuminate\\Cache\\CacheServiceProvider', - 'Illuminate\\Foundation\\Console\\AboutCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Cache\\Console\\ClearCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Cache\\Console\\ForgetCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\ClearCompiledCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Auth\\Console\\ClearResetsCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\ConfigCacheCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\ConfigClearCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\ConfigShowCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Database\\Console\\DbCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Database\\Console\\MonitorCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Database\\Console\\PruneCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Database\\Console\\ShowCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Database\\Console\\TableCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Database\\Console\\WipeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\DownCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\EnvironmentCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\EnvironmentDecryptCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\EnvironmentEncryptCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\EventCacheCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\EventClearCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\EventListCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\KeyGenerateCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\OptimizeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\OptimizeClearCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\PackageDiscoverCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Cache\\Console\\PruneStaleTagsCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Queue\\Console\\ClearCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Queue\\Console\\ListFailedCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Queue\\Console\\FlushFailedCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Queue\\Console\\ForgetFailedCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Queue\\Console\\ListenCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Queue\\Console\\MonitorCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Queue\\Console\\PruneBatchesCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Queue\\Console\\PruneFailedJobsCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Queue\\Console\\RestartCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Queue\\Console\\RetryCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Queue\\Console\\RetryBatchCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Queue\\Console\\WorkCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\RouteCacheCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\RouteClearCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\RouteListCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Database\\Console\\DumpCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Database\\Console\\Seeds\\SeedCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Console\\Scheduling\\ScheduleFinishCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Console\\Scheduling\\ScheduleListCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Console\\Scheduling\\ScheduleRunCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Console\\Scheduling\\ScheduleClearCacheCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Console\\Scheduling\\ScheduleTestCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Console\\Scheduling\\ScheduleWorkCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Console\\Scheduling\\ScheduleInterruptCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Database\\Console\\ShowModelCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\StorageLinkCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\StorageUnlinkCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\UpCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\ViewCacheCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\ViewClearCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Cache\\Console\\CacheTableCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\CastMakeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\ChannelListCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\ChannelMakeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\ComponentMakeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\ConsoleMakeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Routing\\Console\\ControllerMakeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\DocsCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\EventGenerateCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\EventMakeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\ExceptionMakeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Database\\Console\\Factories\\FactoryMakeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\JobMakeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\LangPublishCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\ListenerMakeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\MailMakeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Routing\\Console\\MiddlewareMakeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\ModelMakeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\NotificationMakeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Notifications\\Console\\NotificationTableCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\ObserverMakeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\PolicyMakeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\ProviderMakeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Queue\\Console\\FailedTableCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Queue\\Console\\TableCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Queue\\Console\\BatchesTableCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\RequestMakeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\ResourceMakeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\RuleMakeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\ScopeMakeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Database\\Console\\Seeds\\SeederMakeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Session\\Console\\SessionTableCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\ServeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\StubPublishCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\TestMakeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\VendorPublishCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Foundation\\Console\\ViewMakeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'migrator' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'migration.repository' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'migration.creator' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Database\\Console\\Migrations\\MigrateCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Database\\Console\\Migrations\\FreshCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Database\\Console\\Migrations\\InstallCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Database\\Console\\Migrations\\RefreshCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Database\\Console\\Migrations\\ResetCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Database\\Console\\Migrations\\RollbackCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Database\\Console\\Migrations\\StatusCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'Illuminate\\Database\\Console\\Migrations\\MigrateMakeCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'composer' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', - 'hash' => 'Illuminate\\Hashing\\HashServiceProvider', - 'hash.driver' => 'Illuminate\\Hashing\\HashServiceProvider', - 'mail.manager' => 'Illuminate\\Mail\\MailServiceProvider', - 'mailer' => 'Illuminate\\Mail\\MailServiceProvider', - 'Illuminate\\Mail\\Markdown' => 'Illuminate\\Mail\\MailServiceProvider', - 'Illuminate\\Contracts\\Pipeline\\Hub' => 'Illuminate\\Pipeline\\PipelineServiceProvider', - 'pipeline' => 'Illuminate\\Pipeline\\PipelineServiceProvider', - 'queue' => 'Illuminate\\Queue\\QueueServiceProvider', - 'queue.connection' => 'Illuminate\\Queue\\QueueServiceProvider', - 'queue.failer' => 'Illuminate\\Queue\\QueueServiceProvider', - 'queue.listener' => 'Illuminate\\Queue\\QueueServiceProvider', - 'queue.worker' => 'Illuminate\\Queue\\QueueServiceProvider', - 'redis' => 'Illuminate\\Redis\\RedisServiceProvider', - 'redis.connection' => 'Illuminate\\Redis\\RedisServiceProvider', - 'auth.password' => 'Illuminate\\Auth\\Passwords\\PasswordResetServiceProvider', - 'auth.password.broker' => 'Illuminate\\Auth\\Passwords\\PasswordResetServiceProvider', - 'translator' => 'Illuminate\\Translation\\TranslationServiceProvider', - 'translation.loader' => 'Illuminate\\Translation\\TranslationServiceProvider', - 'validator' => 'Illuminate\\Validation\\ValidationServiceProvider', - 'validation.presence' => 'Illuminate\\Validation\\ValidationServiceProvider', - 'Illuminate\\Contracts\\Validation\\UncompromisedVerifier' => 'Illuminate\\Validation\\ValidationServiceProvider', - 'command.tinker' => 'Laravel\\Tinker\\TinkerServiceProvider', - 'html' => 'Collective\\Html\\HtmlServiceProvider', - 'form' => 'Collective\\Html\\HtmlServiceProvider', - 'Collective\\Html\\HtmlBuilder' => 'Collective\\Html\\HtmlServiceProvider', - 'Collective\\Html\\FormBuilder' => 'Collective\\Html\\HtmlServiceProvider', - ), - 'when' => - array ( - 'Illuminate\\Broadcasting\\BroadcastServiceProvider' => - array ( - ), - 'Illuminate\\Bus\\BusServiceProvider' => - array ( - ), - 'Illuminate\\Cache\\CacheServiceProvider' => - array ( - ), - 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider' => - array ( - ), - 'Illuminate\\Hashing\\HashServiceProvider' => - array ( - ), - 'Illuminate\\Mail\\MailServiceProvider' => - array ( - ), - 'Illuminate\\Pipeline\\PipelineServiceProvider' => - array ( - ), - 'Illuminate\\Queue\\QueueServiceProvider' => - array ( - ), - 'Illuminate\\Redis\\RedisServiceProvider' => - array ( - ), - 'Illuminate\\Auth\\Passwords\\PasswordResetServiceProvider' => - array ( - ), - 'Illuminate\\Translation\\TranslationServiceProvider' => - array ( - ), - 'Illuminate\\Validation\\ValidationServiceProvider' => - array ( - ), - 'Laravel\\Tinker\\TinkerServiceProvider' => - array ( - ), - 'Collective\\Html\\HtmlServiceProvider' => - array ( - ), - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/stores_module.php b/docker/statistics/bootstrap/cache/stores_module.php deleted file mode 100755 index 943ecad0..00000000 --- a/docker/statistics/bootstrap/cache/stores_module.php +++ /dev/null @@ -1,13 +0,0 @@ - - array ( - 0 => 'Modules\\Stores\\Providers\\StoresServiceProvider', - ), - 'eager' => - array ( - 0 => 'Modules\\Stores\\Providers\\StoresServiceProvider', - ), - 'deferred' => - array ( - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/theatre_module.php b/docker/statistics/bootstrap/cache/theatre_module.php deleted file mode 100755 index c2d210cb..00000000 --- a/docker/statistics/bootstrap/cache/theatre_module.php +++ /dev/null @@ -1,13 +0,0 @@ - - array ( - 0 => 'Modules\\Theatre\\Providers\\TheatreServiceProvider', - ), - 'eager' => - array ( - 0 => 'Modules\\Theatre\\Providers\\TheatreServiceProvider', - ), - 'deferred' => - array ( - ), -); \ No newline at end of file diff --git a/docker/statistics/bootstrap/cache/ward_management_module.php b/docker/statistics/bootstrap/cache/ward_management_module.php deleted file mode 100755 index ec9f8457..00000000 --- a/docker/statistics/bootstrap/cache/ward_management_module.php +++ /dev/null @@ -1,13 +0,0 @@ - - array ( - 0 => 'Modules\\WardManagement\\Providers\\WardManagementServiceProvider', - ), - 'eager' => - array ( - 0 => 'Modules\\WardManagement\\Providers\\WardManagementServiceProvider', - ), - 'deferred' => - array ( - ), -); \ No newline at end of file diff --git a/docker/statistics/composer.json b/docker/statistics/composer.json index 91d53cae..6bc8d678 100644 --- a/docker/statistics/composer.json +++ b/docker/statistics/composer.json @@ -1,6 +1,7 @@ { "require": { "monolog/monolog": "^3.9", - "guzzlehttp/guzzle": "^7.0" + "guzzlehttp/guzzle": "^7.0", + "vlucas/phpdotenv": "^5.6" } } diff --git a/docker/statistics/composer.lock b/docker/statistics/composer.lock index ba7e661a..83d4444e 100644 --- a/docker/statistics/composer.lock +++ b/docker/statistics/composer.lock @@ -4,8 +4,70 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "ebe3610f295522877b28c28e7775c85d", + "content-hash": "a7ce4b351e6b2e954e45fdbc6dfaad41", "packages": [ + { + "name": "graham-campbell/result-type", + "version": "v1.1.3", + "source": { + "type": "git", + "url": "https://github.com/GrahamCampbell/Result-Type.git", + "reference": "3ba905c11371512af9d9bdd27d99b782216b6945" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/GrahamCampbell/Result-Type/zipball/3ba905c11371512af9d9bdd27d99b782216b6945", + "reference": "3ba905c11371512af9d9bdd27d99b782216b6945", + "shasum": "" + }, + "require": { + "php": "^7.2.5 || ^8.0", + "phpoption/phpoption": "^1.9.3" + }, + "require-dev": { + "phpunit/phpunit": "^8.5.39 || ^9.6.20 || ^10.5.28" + }, + "type": "library", + "autoload": { + "psr-4": { + "GrahamCampbell\\ResultType\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + } + ], + "description": "An Implementation Of The Result Type", + "keywords": [ + "Graham Campbell", + "GrahamCampbell", + "Result Type", + "Result-Type", + "result" + ], + "support": { + "issues": "https://github.com/GrahamCampbell/Result-Type/issues", + "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.1.3" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/graham-campbell/result-type", + "type": "tidelift" + } + ], + "time": "2024-07-20T21:45:45+00:00" + }, { "name": "guzzlehttp/guzzle", "version": "7.9.2", @@ -434,6 +496,81 @@ ], "time": "2025-03-24T10:02:05+00:00" }, + { + "name": "phpoption/phpoption", + "version": "1.9.3", + "source": { + "type": "git", + "url": "https://github.com/schmittjoh/php-option.git", + "reference": "e3fac8b24f56113f7cb96af14958c0dd16330f54" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/e3fac8b24f56113f7cb96af14958c0dd16330f54", + "reference": "e3fac8b24f56113f7cb96af14958c0dd16330f54", + "shasum": "" + }, + "require": { + "php": "^7.2.5 || ^8.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.8.2", + "phpunit/phpunit": "^8.5.39 || ^9.6.20 || ^10.5.28" + }, + "type": "library", + "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + }, + "branch-alias": { + "dev-master": "1.9-dev" + } + }, + "autoload": { + "psr-4": { + "PhpOption\\": "src/PhpOption/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Johannes M. Schmitt", + "email": "schmittjoh@gmail.com", + "homepage": "https://github.com/schmittjoh" + }, + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + } + ], + "description": "Option Type for PHP", + "keywords": [ + "language", + "option", + "php", + "type" + ], + "support": { + "issues": "https://github.com/schmittjoh/php-option/issues", + "source": "https://github.com/schmittjoh/php-option/tree/1.9.3" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/phpoption/phpoption", + "type": "tidelift" + } + ], + "time": "2024-07-20T21:41:07+00:00" + }, { "name": "psr/http-client", "version": "1.0.3", @@ -754,6 +891,329 @@ } ], "time": "2024-09-25T14:20:29+00:00" + }, + { + "name": "symfony/polyfill-ctype", + "version": "v1.31.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-ctype.git", + "reference": "a3cc8b044a6ea513310cbd48ef7333b384945638" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/a3cc8b044a6ea513310cbd48ef7333b384945638", + "reference": "a3cc8b044a6ea513310cbd48ef7333b384945638", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "provide": { + "ext-ctype": "*" + }, + "suggest": { + "ext-ctype": "For best performance" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Ctype\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Gert de Pagter", + "email": "BackEndTea@gmail.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for ctype functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "ctype", + "polyfill", + "portable" + ], + "support": { + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.31.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2024-09-09T11:45:10+00:00" + }, + { + "name": "symfony/polyfill-mbstring", + "version": "v1.31.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-mbstring.git", + "reference": "85181ba99b2345b0ef10ce42ecac37612d9fd341" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/85181ba99b2345b0ef10ce42ecac37612d9fd341", + "reference": "85181ba99b2345b0ef10ce42ecac37612d9fd341", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "provide": { + "ext-mbstring": "*" + }, + "suggest": { + "ext-mbstring": "For best performance" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Mbstring\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for the Mbstring extension", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "mbstring", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.31.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2024-09-09T11:45:10+00:00" + }, + { + "name": "symfony/polyfill-php80", + "version": "v1.31.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php80.git", + "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/60328e362d4c2c802a54fcbf04f9d3fb892b4cf8", + "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php80\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ion Bazan", + "email": "ion.bazan@gmail.com" + }, + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php80/tree/v1.31.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2024-09-09T11:45:10+00:00" + }, + { + "name": "vlucas/phpdotenv", + "version": "v5.6.1", + "source": { + "type": "git", + "url": "https://github.com/vlucas/phpdotenv.git", + "reference": "a59a13791077fe3d44f90e7133eb68e7d22eaff2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/a59a13791077fe3d44f90e7133eb68e7d22eaff2", + "reference": "a59a13791077fe3d44f90e7133eb68e7d22eaff2", + "shasum": "" + }, + "require": { + "ext-pcre": "*", + "graham-campbell/result-type": "^1.1.3", + "php": "^7.2.5 || ^8.0", + "phpoption/phpoption": "^1.9.3", + "symfony/polyfill-ctype": "^1.24", + "symfony/polyfill-mbstring": "^1.24", + "symfony/polyfill-php80": "^1.24" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.8.2", + "ext-filter": "*", + "phpunit/phpunit": "^8.5.34 || ^9.6.13 || ^10.4.2" + }, + "suggest": { + "ext-filter": "Required to use the boolean validator." + }, + "type": "library", + "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + }, + "branch-alias": { + "dev-master": "5.6-dev" + } + }, + "autoload": { + "psr-4": { + "Dotenv\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Vance Lucas", + "email": "vance@vancelucas.com", + "homepage": "https://github.com/vlucas" + } + ], + "description": "Loads environment variables from `.env` to `getenv()`, `$_ENV` and `$_SERVER` automagically.", + "keywords": [ + "dotenv", + "env", + "environment" + ], + "support": { + "issues": "https://github.com/vlucas/phpdotenv/issues", + "source": "https://github.com/vlucas/phpdotenv/tree/v5.6.1" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/vlucas/phpdotenv", + "type": "tidelift" + } + ], + "time": "2024-07-20T21:52:34+00:00" } ], "packages-dev": [], diff --git a/docker/statistics/config/dompdf.php b/docker/statistics/config/dompdf.php deleted file mode 100644 index c9a928f2..00000000 --- a/docker/statistics/config/dompdf.php +++ /dev/null @@ -1,284 +0,0 @@ - false, // Throw an Exception on warnings from dompdf - - 'public_path' => null, // Override the public path if needed - - /* - * Dejavu Sans font is missing glyphs for converted entities, turn it off if you need to show € and £. - */ - 'convert_entities' => true, - - 'options' => array( - /** - * The location of the DOMPDF font directory - * - * The location of the directory where DOMPDF will store fonts and font metrics - * Note: This directory must exist and be writable by the webserver process. - * *Please note the trailing slash.* - * - * Notes regarding fonts: - * Additional .afm font metrics can be added by executing load_font.php from command line. - * - * Only the original "Base 14 fonts" are present on all pdf viewers. Additional fonts must - * be embedded in the pdf file or the PDF may not display correctly. This can significantly - * increase file size unless font subsetting is enabled. Before embedding a font please - * review your rights under the font license. - * - * Any font specification in the source HTML is translated to the closest font available - * in the font directory. - * - * The pdf standard "Base 14 fonts" are: - * Courier, Courier-Bold, Courier-BoldOblique, Courier-Oblique, - * Helvetica, Helvetica-Bold, Helvetica-BoldOblique, Helvetica-Oblique, - * Times-Roman, Times-Bold, Times-BoldItalic, Times-Italic, - * Symbol, ZapfDingbats. - */ - "font_dir" => storage_path('fonts'), // advised by dompdf (https://github.com/dompdf/dompdf/pull/782) - - /** - * The location of the DOMPDF font cache directory - * - * This directory contains the cached font metrics for the fonts used by DOMPDF. - * This directory can be the same as DOMPDF_FONT_DIR - * - * Note: This directory must exist and be writable by the webserver process. - */ - "font_cache" => storage_path('fonts'), - - /** - * The location of a temporary directory. - * - * The directory specified must be writeable by the webserver process. - * The temporary directory is required to download remote images and when - * using the PDFLib back end. - */ - "temp_dir" => sys_get_temp_dir(), - - /** - * ==== IMPORTANT ==== - * - * dompdf's "chroot": Prevents dompdf from accessing system files or other - * files on the webserver. All local files opened by dompdf must be in a - * subdirectory of this directory. DO NOT set it to '/' since this could - * allow an attacker to use dompdf to read any files on the server. This - * should be an absolute path. - * This is only checked on command line call by dompdf.php, but not by - * direct class use like: - * $dompdf = new DOMPDF(); $dompdf->load_html($htmldata); $dompdf->render(); $pdfdata = $dompdf->output(); - */ - "chroot" => realpath(base_path()), - - /** - * Protocol whitelist - * - * Protocols and PHP wrappers allowed in URIs, and the validation rules - * that determine if a resouce may be loaded. Full support is not guaranteed - * for the protocols/wrappers specified - * by this array. - * - * @var array - */ - 'allowed_protocols' => [ - "file://" => ["rules" => []], - "http://" => ["rules" => []], - "https://" => ["rules" => []] - ], - - /** - * @var string - */ - 'log_output_file' => null, - - /** - * Whether to enable font subsetting or not. - */ - "enable_font_subsetting" => false, - - /** - * The PDF rendering backend to use - * - * Valid settings are 'PDFLib', 'CPDF' (the bundled R&OS PDF class), 'GD' and - * 'auto'. 'auto' will look for PDFLib and use it if found, or if not it will - * fall back on CPDF. 'GD' renders PDFs to graphic files. {@link - * Canvas_Factory} ultimately determines which rendering class to instantiate - * based on this setting. - * - * Both PDFLib & CPDF rendering backends provide sufficient rendering - * capabilities for dompdf, however additional features (e.g. object, - * image and font support, etc.) differ between backends. Please see - * {@link PDFLib_Adapter} for more information on the PDFLib backend - * and {@link CPDF_Adapter} and lib/class.pdf.php for more information - * on CPDF. Also see the documentation for each backend at the links - * below. - * - * The GD rendering backend is a little different than PDFLib and - * CPDF. Several features of CPDF and PDFLib are not supported or do - * not make any sense when creating image files. For example, - * multiple pages are not supported, nor are PDF 'objects'. Have a - * look at {@link GD_Adapter} for more information. GD support is - * experimental, so use it at your own risk. - * - * @link http://www.pdflib.com - * @link http://www.ros.co.nz/pdf - * @link http://www.php.net/image - */ - "pdf_backend" => "CPDF", - - /** - * PDFlib license key - * - * If you are using a licensed, commercial version of PDFlib, specify - * your license key here. If you are using PDFlib-Lite or are evaluating - * the commercial version of PDFlib, comment out this setting. - * - * @link http://www.pdflib.com - * - * If pdflib present in web server and auto or selected explicitely above, - * a real license code must exist! - */ - //"DOMPDF_PDFLIB_LICENSE" => "your license key here", - - /** - * html target media view which should be rendered into pdf. - * List of types and parsing rules for future extensions: - * http://www.w3.org/TR/REC-html40/types.html - * screen, tty, tv, projection, handheld, print, braille, aural, all - * Note: aural is deprecated in CSS 2.1 because it is replaced by speech in CSS 3. - * Note, even though the generated pdf file is intended for print output, - * the desired content might be different (e.g. screen or projection view of html file). - * Therefore allow specification of content here. - */ - "default_media_type" => "screen", - - /** - * The default paper size. - * - * North America standard is "letter"; other countries generally "a4" - * - * @see CPDF_Adapter::PAPER_SIZES for valid sizes ('letter', 'legal', 'A4', etc.) - */ - "default_paper_size" => "a4", - - /** - * The default paper orientation. - * - * The orientation of the page (portrait or landscape). - * - * @var string - */ - 'default_paper_orientation' => "portrait", - - /** - * The default font family - * - * Used if no suitable fonts can be found. This must exist in the font folder. - * @var string - */ - "default_font" => "serif", - - /** - * Image DPI setting - * - * This setting determines the default DPI setting for images and fonts. The - * DPI may be overridden for inline images by explictly setting the - * image's width & height style attributes (i.e. if the image's native - * width is 600 pixels and you specify the image's width as 72 points, - * the image will have a DPI of 600 in the rendered PDF. The DPI of - * background images can not be overridden and is controlled entirely - * via this parameter. - * - * For the purposes of DOMPDF, pixels per inch (PPI) = dots per inch (DPI). - * If a size in html is given as px (or without unit as image size), - * this tells the corresponding size in pt. - * This adjusts the relative sizes to be similar to the rendering of the - * html page in a reference browser. - * - * In pdf, always 1 pt = 1/72 inch - * - * Rendering resolution of various browsers in px per inch: - * Windows Firefox and Internet Explorer: - * SystemControl->Display properties->FontResolution: Default:96, largefonts:120, custom:? - * Linux Firefox: - * about:config *resolution: Default:96 - * (xorg screen dimension in mm and Desktop font dpi settings are ignored) - * - * Take care about extra font/image zoom factor of browser. - * - * In images, size in pixel attribute, img css style, are overriding - * the real image dimension in px for rendering. - * - * @var int - */ - "dpi" => 96, - - /** - * Enable inline PHP - * - * If this setting is set to true then DOMPDF will automatically evaluate - * inline PHP contained within tags. - * - * Enabling this for documents you do not trust (e.g. arbitrary remote html - * pages) is a security risk. Set this option to false if you wish to process - * untrusted documents. - * - * @var bool - */ - "enable_php" => false, - - /** - * Enable inline Javascript - * - * If this setting is set to true then DOMPDF will automatically insert - * JavaScript code contained within tags. - * - * @var bool - */ - "enable_javascript" => true, - - /** - * Enable remote file access - * - * If this setting is set to true, DOMPDF will access remote sites for - * images and CSS files as required. - * This is required for part of test case www/test/image_variants.html through www/examples.php - * - * Attention! - * This can be a security risk, in particular in combination with DOMPDF_ENABLE_PHP and - * allowing remote access to dompdf.php or on allowing remote html code to be passed to - * $dompdf = new DOMPDF(, $dompdf->load_html(..., - * This allows anonymous users to download legally doubtful internet content which on - * tracing back appears to being downloaded by your server, or allows malicious php code - * in remote html pages to be executed by your server with your account privileges. - * - * @var bool - */ - "enable_remote" => true, - - /** - * A ratio applied to the fonts height to be more like browsers' line height - */ - "font_height_ratio" => 1.1, - - /** - * Use the HTML5 Lib parser - * - * @deprecated This feature is now always on in dompdf 2.x - * @var bool - */ - "enable_html5_parser" => true, - ), - - -); diff --git a/docker/statistics/database/migrations/2024_02_19_114140_create_maternity_delivery_plans_table.php b/docker/statistics/database/migrations/2024_02_19_114140_create_maternity_delivery_plans_table.php deleted file mode 100644 index ab485868..00000000 --- a/docker/statistics/database/migrations/2024_02_19_114140_create_maternity_delivery_plans_table.php +++ /dev/null @@ -1,41 +0,0 @@ -id(); - $table->integer('patient_id'); - $table->integer('episode_id'); - $table->string('person_you_live_with')->nullable(); - $table->integer('transport_means_to_facility')->nullable(); - $table->string('person_to_accompany_you')->nullable(); - $table->string('person_to_look_after_home')->nullable(); - $table->text('mother_partner_screened_for')->nullable(); - $table->string('family_planning_method_plan')->nullable(); - $table->string('person_to_stay_at_facility')->nullable(); - $table->integer('delivery_method')->nullable(); - $table->string('backup_delivery_method')->nullable(); - $table->integer('after_birth_disposal')->nullable(); - $table->integer('created_by'); - $table->integer('updated_by')->nullable(); - $table->timestamps(); - $table->softDeletes(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropIfExists('maternity_delivery_plans'); - } -}; diff --git a/docker/statistics/database/migrations/2024_02_19_120629_add_columns_to_obstetric_histories.php b/docker/statistics/database/migrations/2024_02_19_120629_add_columns_to_obstetric_histories.php deleted file mode 100644 index f8eb585b..00000000 --- a/docker/statistics/database/migrations/2024_02_19_120629_add_columns_to_obstetric_histories.php +++ /dev/null @@ -1,31 +0,0 @@ -integer('past_pregnancy_complications')->nullable(); - $table->string('past_pregnancy_comment')->nullable(); - }); - - - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('obstetric_histories', function (Blueprint $table) { - $table->dropColumn('past_pregnancy_complications'); - $table->dropColumn('past_pregnancy_comment'); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_02_19_162621_create_maternity_mother_histories_table.php b/docker/statistics/database/migrations/2024_02_19_162621_create_maternity_mother_histories_table.php deleted file mode 100644 index 53eca67d..00000000 --- a/docker/statistics/database/migrations/2024_02_19_162621_create_maternity_mother_histories_table.php +++ /dev/null @@ -1,49 +0,0 @@ -id(); - $table->integer('patient_id'); - $table->integer('episode_id'); - $table->integer('cycle_length')->nullable(); - $table->integer('menses_length')->nullable(); - $table->integer('menses_amount')->nullable(); - $table->integer('family_planning_method')->nullable(); - $table->date('date_discontinued')->nullable(); - $table->text('why_stop_family_planning')->nullable(); - $table->text('medical_presentations')->nullable(); - $table->string('other_medical_presentations')->nullable(); - $table->text('sgbv_risk')->nullable(); - $table->string('other_sgbv_risk')->nullable(); - $table->string('husband_health')->nullable(); - $table->integer('history_of_aph')->nullable(); - $table->tinyInteger('history_of_fits')->nullable(); - $table->text('other_medical_history_comment')->nullable(); - $table->text('history_aph_details')->nullable(); - $table->text('history_fit_details')->nullable(); - $table->integer('created_by'); - $table->integer('updated_by')->nullable(); - $table->json('uterine_surgeries')->nullable(); - $table->json('other_surgeries')->nullable(); - $table->timestamps(); - $table->softDeletes(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropIfExists('maternity_mother_histories'); - } -}; diff --git a/docker/statistics/database/migrations/2024_02_21_124334_create_pelvic_examination_and_assessments_table.php b/docker/statistics/database/migrations/2024_02_21_124334_create_pelvic_examination_and_assessments_table.php deleted file mode 100644 index 81e90eca..00000000 --- a/docker/statistics/database/migrations/2024_02_21_124334_create_pelvic_examination_and_assessments_table.php +++ /dev/null @@ -1,43 +0,0 @@ -id(); - $table->integer('patient_id'); - $table->integer('episode_id'); - $table->string('vulva')->nullable(); - $table->string('vagina')->nullable(); - $table->integer('cervix')->nullable(); - $table->string('dilatation')->nullable(); - $table->string('uterine_adnexa')->nullable(); - $table->string('moniliasis')->nullable(); - $table->float('diagonal_conjugate')->nullable(); - $table->integer('sacrum')->nullable(); - $table->integer('ischial_spinces')->nullable(); - $table->integer('sub_public_angle')->nullable(); - $table->integer('ischial_tuberosities')->nullable(); - $table->integer('pelvic_adequate')->nullable(); - $table->integer('created_by'); - $table->integer('updated_by')->nullable(); - $table->softDeletes(); - $table->timestamps(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropIfExists('pelvic_examination_and_assessments'); - } -}; diff --git a/docker/statistics/database/migrations/2024_02_22_104752_add_columns_to_maternity_inpatients.php b/docker/statistics/database/migrations/2024_02_22_104752_add_columns_to_maternity_inpatients.php deleted file mode 100644 index cd3462fa..00000000 --- a/docker/statistics/database/migrations/2024_02_22_104752_add_columns_to_maternity_inpatients.php +++ /dev/null @@ -1,58 +0,0 @@ -string('weeks_of_amenorrhoea')->nullable(); - $table->text('delivery_recomendation')->nullable(); - $table->text('pregnancy_complications')->nullable(); - $table->text('other_pregnancy_complications')->nullable(); - $table->text('physical_examination')->nullable(); - $table->string('heart_physical_examination_details')->nullable(); - $table->text('other_physical_examinations')->nullable(); - $table->string('other_obstetric_risk_factors')->nullable(); - $table->text('blood_transfusion_available')->nullable(); - $table->text('fractures')->nullable(); - $table->string('blood_transfusion_details')->nullable(); - $table->date('pelvis_fracture_date')->nullable(); - $table->string('pelvis_fracture_details')->nullable(); - $table->date('spine_fracture_date')->nullable(); - $table->string('spine_fracture_details')->nullable(); - $table->date('femur_fracture_date')->nullable(); - $table->text('other_fracture_details')->nullable(); - $table->integer('primary_diagnosis')->nullable(); - $table->string('other_diagnoses')->nullable(); - $table->string('femur_fracture_details')->nullable(); - $table->text('breasts_physical_examination_details')->nullable(); - $table->text('legs_physical_examination_details')->nullable(); - $table->text('lungs_physical_examination_details')->nullable(); - $table->text('teeth_physical_examination_details')->nullable(); - $table->integer('completed')->default(0)->comment('0=pending,1=completed'); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('maternity_inpatients', function (Blueprint $table) { - $table->dropColumn('weeks_of_amenorrhoea'); - $table->dropColumn('delivery_recomendation'); - $table->dropColumn('pregnancy_complications'); - $table->dropColumn('other_pregnancy_complications'); - $table->dropColumn('physical_examination'); - $table->dropColumn('heart_physical_examination_details'); - $table->dropColumn('other_physical_examinations'); - $table->dropColumn('other_obstetric_risk_factors'); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_02_22_163054_create_other_facility_uterus_operations_table.php b/docker/statistics/database/migrations/2024_02_22_163054_create_other_facility_uterus_operations_table.php deleted file mode 100644 index ba4a41e8..00000000 --- a/docker/statistics/database/migrations/2024_02_22_163054_create_other_facility_uterus_operations_table.php +++ /dev/null @@ -1,35 +0,0 @@ -id(); - $table->integer('patient_id'); - $table->integer('episode_id'); - $table->integer('operation_on_uterus')->nullable(); - $table->date('uterus_operation_date')->nullable(); - $table->string('uterus_operation_facility')->nullable(); - $table->integer('created_by'); - $table->integer('updated_by')->nullable(); - $table->timestamps(); - $table->softDeletes(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropIfExists('other_facility_uterus_operations'); - } -}; diff --git a/docker/statistics/database/migrations/2024_02_26_123417_create_other_facility_other_operations_table.php b/docker/statistics/database/migrations/2024_02_26_123417_create_other_facility_other_operations_table.php deleted file mode 100644 index b06ed1a4..00000000 --- a/docker/statistics/database/migrations/2024_02_26_123417_create_other_facility_other_operations_table.php +++ /dev/null @@ -1,35 +0,0 @@ -id(); - $table->integer('patient_id'); - $table->integer('episode_id'); - $table->text('other_operation_name')->nullable(); - $table->date('other_operation_date')->nullable(); - $table->text('other_operation_facility')->nullable(); - $table->integer('created_by'); - $table->integer('updated_by')->nullable(); - $table->timestamps(); - $table->softDeletes(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropIfExists('other_facility_other_operations'); - } -}; diff --git a/docker/statistics/database/migrations/2024_03_11_121738_add_issued_from_column_to_ward_item_requests_table.php b/docker/statistics/database/migrations/2024_03_11_121738_add_issued_from_column_to_ward_item_requests_table.php deleted file mode 100644 index 971053a1..00000000 --- a/docker/statistics/database/migrations/2024_03_11_121738_add_issued_from_column_to_ward_item_requests_table.php +++ /dev/null @@ -1,30 +0,0 @@ -string("issued_from")->nullable()->after("balance_returned")->comment("can be store or pharmacy"); - }); - } - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::table('ward_item_requests', function (Blueprint $table) { - $table->dropColumn("issued_from"); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_03_15_160548_create_labour_ward_admissions_table.php b/docker/statistics/database/migrations/2024_03_15_160548_create_labour_ward_admissions_table.php deleted file mode 100644 index 9d7aceb8..00000000 --- a/docker/statistics/database/migrations/2024_03_15_160548_create_labour_ward_admissions_table.php +++ /dev/null @@ -1,51 +0,0 @@ -id(); - $table->integer('patient_id'); - $table->integer('episode_id'); - $table->integer('labour_onset')->nullable(); - $table->date('active_labour_diagnosis_date')->nullable(); - $table->dateTime('membranes_rapture_at')->nullable(); - $table->integer('gravida')->nullable(); - $table->integer('para')->nullable(); - $table->integer('abortions')->nullable(); - $table->integer('ectopic_pregnancies')->nullable(); - $table->integer('post_partum')->nullable(); - $table->integer('history_of_aph')->nullable(); - $table->integer('history_of_fits')->nullable(); - $table->integer('iufd')->nullable(); - $table->integer('born_before_arrival')->nullable(); - $table->integer('progress')->nullable(); - $table->text('other_labour_comments')->nullable(); - $table->json('obstetric_risk_factors')->nullable(); - $table->text('other_obstetric_risk_factors')->nullable(); - $table->text('history_aph_details')->nullable(); - $table->text('history_fit_details')->nullable(); - $table->integer('complete')->default(0)->comment("1 = complete, 0 = incomplete"); - $table->softDeletes(); - $table->integer('created_by')->nullable(); - $table->integer('updated_by')->nullable(); - $table->timestamps(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropIfExists('labour_ward_admissions'); - } -}; diff --git a/docker/statistics/database/migrations/2024_03_20_133550_add_lab_stock_column_to_item_batch_watcher_table.php b/docker/statistics/database/migrations/2024_03_20_133550_add_lab_stock_column_to_item_batch_watcher_table.php deleted file mode 100644 index acfb0cb5..00000000 --- a/docker/statistics/database/migrations/2024_03_20_133550_add_lab_stock_column_to_item_batch_watcher_table.php +++ /dev/null @@ -1,30 +0,0 @@ -integer('lab_stock')->nullable()->after('ward_stock'); - - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('item_batch_watcher', function (Blueprint $table) { - // - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_03_26_122114_add_received_by_column_to_requisitions_table.php b/docker/statistics/database/migrations/2024_03_26_122114_add_received_by_column_to_requisitions_table.php deleted file mode 100644 index 7cce6fd7..00000000 --- a/docker/statistics/database/migrations/2024_03_26_122114_add_received_by_column_to_requisitions_table.php +++ /dev/null @@ -1,30 +0,0 @@ -integer('received_by')->nullable()->after('issued_on'); - $table->text('received_comment')->nullable()->after('received_by'); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('requisitions', function (Blueprint $table) { - // - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_03_27_105123_add_batch_issued_out_column_to_requisitions_table.php b/docker/statistics/database/migrations/2024_03_27_105123_add_batch_issued_out_column_to_requisitions_table.php deleted file mode 100644 index fd5c7b9c..00000000 --- a/docker/statistics/database/migrations/2024_03_27_105123_add_batch_issued_out_column_to_requisitions_table.php +++ /dev/null @@ -1,29 +0,0 @@ -text('batch_issued_out')->nullable()->after('item_ids_issued_out'); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('requisitions', function (Blueprint $table) { - // - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_04_05_114037_create_gender_violences_table.php b/docker/statistics/database/migrations/2024_04_05_114037_create_gender_violences_table.php deleted file mode 100644 index c5da9a64..00000000 --- a/docker/statistics/database/migrations/2024_04_05_114037_create_gender_violences_table.php +++ /dev/null @@ -1,32 +0,0 @@ -id(); - $table->string('name'); - $table->foreignIdFor(User::class, 'created_by'); - $table->foreignIdFor(User::class, 'updated_by')->nullable(); - $table->timestamps(); - $table->softDeletes(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropIfExists('gender_violences'); - } -}; diff --git a/docker/statistics/database/migrations/2024_04_11_163328_edit_general_settings_structure.php b/docker/statistics/database/migrations/2024_04_11_163328_edit_general_settings_structure.php deleted file mode 100644 index 20a1c269..00000000 --- a/docker/statistics/database/migrations/2024_04_11_163328_edit_general_settings_structure.php +++ /dev/null @@ -1,62 +0,0 @@ -toArray(); - } else { - $temp_settings = (new GeneralSettingsService())->getDefaultSettings(); - } - - Schema::table('general_settings', function (Blueprint $table) { - $table->dropColumn([ - "allow_editing_name_of_lab_doctor", "allow_lab_number_editing", "stock_levels_to_consider", "enable_gbv_screening_tool", - "enable_hiv_screening_tool", "enable_hiv_and_gbv_screening_tool", "select_clinic_order_type", "show_symptoms_on_consultation", - "inpatient_sheet_with_detailed_notes", "full_detail_receipt_print", "enable_fingerprint", "default_hospital_clinic", - "smart_discharge_feature", "allow_issuing_out_of_stock_drugs", "allow_dispensing_out_of_stock_drugs", "apply_triage_grade", - "smart_triage_feature", "system_language", "payments_from_banks_with_lesser_balance", "eye_module_enabled", - "view_service_price_on_order", "view_sundry_price_on_order", "view_investigation_price_on_order", "view_prescription_price_on_order", - "view_procedure_price_on_order", "point_of_inventory_reduction", "enable_tuberculosis_screening", - "investigation_billing_mode", "cashier_receipts_print_format", "enable_performing_unpaid_investigations", - "add_service_to_patient_bill", "enable_dispensing_non_invoiced_prescription", "allow_prescribing_out_of_stock_drugs", "disable_out_of_stock_message", - "enable_performing_unpaid_consultations", "enable_patient_debt_reminder", "item_batch_tracking", "enable_dipensing_unpaid_prescription", - "add_lab_stamp_to_pdf_feature", "inpatient_sheet_extras", "consultation_attendance", "add_stamp_to_pdf_feature", - "chi_enabled", "batch_tracking_method", "patient_accounts_enabled", "enable_performing_unpaid_review_consultations", - "incoming_prescription_confirmation_feature", "enable_sms", - "session_expiration_time", "password_expiration_days", "currency_code", "family_account_over_consumption", "family_accounts_feature", - "show_drug_brand_name" ,"ward_prescription_model", "donor_feature", "number_of_active_users_limit" - ]); - - $table->longText('data')->nullable()->after('id'); - }); - - $general_settings = GeneralSettings::find(1); - - if (!$general_settings) { - $general_settings = new GeneralSettings(); - } - - $general_settings->data = json_encode($temp_settings); - $general_settings->save(); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - // - } -}; diff --git a/docker/statistics/database/migrations/2024_04_12_102948_create_subscriptions_table.php b/docker/statistics/database/migrations/2024_04_12_102948_create_subscriptions_table.php deleted file mode 100644 index 31a9b703..00000000 --- a/docker/statistics/database/migrations/2024_04_12_102948_create_subscriptions_table.php +++ /dev/null @@ -1,42 +0,0 @@ -id(); - $table->date('start_date'); - $table->date('end_date'); - $table->date('suspension_date'); - $table->integer('duration'); - $table->enum('is_active', [1, 0])->comment('1 = Yes , 0 = No'); - $table->integer('created_by')->nullable(); - $table->integer('updated_by')->nullable(); - $table->timestamps(); - $table->softDeletes(); - - }); - $general_settings = json_decode(GeneralSettings::find(1)->data, true); - $general_settings['enable_subscription_tracking'] = 1; - $general_settings_data = GeneralSettings::find(1); - $general_settings_data->data = json_encode($general_settings); - $general_settings_data->save(); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropIfExists('subscriptions'); - } -}; diff --git a/docker/statistics/database/migrations/2024_04_15_162853_add_consulation_clinical_notes_to_ward_inpatient_detailed_notes_table.php b/docker/statistics/database/migrations/2024_04_15_162853_add_consulation_clinical_notes_to_ward_inpatient_detailed_notes_table.php deleted file mode 100644 index a666e0b5..00000000 --- a/docker/statistics/database/migrations/2024_04_15_162853_add_consulation_clinical_notes_to_ward_inpatient_detailed_notes_table.php +++ /dev/null @@ -1,34 +0,0 @@ -unsignedInteger('updated_by')->nullable()->after('created_at'); - $table->text('clinic_examination_comments')->nullable()->after('plan'); - $table->text('investigation_and_management_plan_comments')->nullable()->after('clinic_examination_comments'); - $table->foreign('updated_by')->references('id')->on('users'); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('ward_inpatient_detailed_notes', function (Blueprint $table) { - $table->dropColumn('updated_by'); - $table->dropColumn('clinic_examination_comments'); - $table->dropColumn('investigation_and_management_plan_comments'); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_04_23_123720_add_refferal_notes_to_eye_clinic_main_exam_table.php b/docker/statistics/database/migrations/2024_04_23_123720_add_refferal_notes_to_eye_clinic_main_exam_table.php deleted file mode 100644 index c9f0825f..00000000 --- a/docker/statistics/database/migrations/2024_04_23_123720_add_refferal_notes_to_eye_clinic_main_exam_table.php +++ /dev/null @@ -1,29 +0,0 @@ -text('referral_notes')->nullable()->after('referred_to'); - $table->text('history_comments')->nullable()->after('referral_notes'); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('eye_clinic_main_exam', function (Blueprint $table) { - $table->dropColumn(['referral_notes','history_comments']); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_05_02_112733_add_editable_to_hmis_categories_table.php b/docker/statistics/database/migrations/2024_05_02_112733_add_editable_to_hmis_categories_table.php deleted file mode 100644 index dcad255e..00000000 --- a/docker/statistics/database/migrations/2024_05_02_112733_add_editable_to_hmis_categories_table.php +++ /dev/null @@ -1,39 +0,0 @@ -enum('editable', [1, 0])->default(1)->after('type')->comment('1 = Editable , 0 = Uneditable'); - }); - } - - if (!Schema::hasColumn('hmis_category_options', 'editable')) { - Schema::table('hmis_category_options', function (Blueprint $table) { - $table->enum('editable', [1, 0])->default(1)->after('parent_option')->comment('1 = Editable , 0 = Uneditable'); - }); - } - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('hmis_categories', function (Blueprint $table) { - $table->dropColumn('editable'); - }); - Schema::table('hmis_category_options', function (Blueprint $table) { - $table->dropColumn('editable'); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_05_07_042635_add_payment_date_column_to_ward_payment_tables.php b/docker/statistics/database/migrations/2024_05_07_042635_add_payment_date_column_to_ward_payment_tables.php deleted file mode 100644 index 6418c773..00000000 --- a/docker/statistics/database/migrations/2024_05_07_042635_add_payment_date_column_to_ward_payment_tables.php +++ /dev/null @@ -1,65 +0,0 @@ -date('payment_date')->nullable()->after('amount_paid'); - }); - Schema::table('ward_extras', function (Blueprint $table) { - $table->date('payment_date')->nullable()->after('amount_paid'); - }); - Schema::table('ward_consultations_and_services', function (Blueprint $table) { - $table->date('payment_date')->nullable()->after('amount_paid'); - }); - Schema::table('ward_procedures', function (Blueprint $table) { - $table->date('payment_date')->nullable()->after('amount_paid'); - }); - Schema::table('ward_investigation_pricings', function (Blueprint $table) { - $table->date('payment_date')->nullable()->after('amount_paid'); - }); - Schema::table('ward_sundry_dispensations', function (Blueprint $table) { - $table->date('payment_date')->nullable()->after('amount_paid'); - }); - Schema::table('ward_treatment_dispensations', function (Blueprint $table) { - $table->date('payment_date')->nullable()->after('amount_paid'); - }); - } - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::table('ward_bed_stays', function (Blueprint $table) { - $table->dropColumn('payment_date'); - }); - Schema::table('ward_extras', function (Blueprint $table) { - $table->dropColumn('payment_date'); - }); - Schema::table('ward_consultations_and_services', function (Blueprint $table) { - $table->dropColumn('payment_date'); - }); - Schema::table('ward_procedures', function (Blueprint $table) { - $table->dropColumn('payment_date'); - }); - Schema::table('ward_investigation_pricings', function (Blueprint $table) { - $table->dropColumn('payment_date'); - }); - Schema::table('ward_sundry_dispensations', function (Blueprint $table) { - $table->dropColumn('payment_date'); - }); - Schema::table('ward_treatment_dispensations', function (Blueprint $table) { - $table->dropColumn('payment_date'); - }); - } -} \ No newline at end of file diff --git a/docker/statistics/database/migrations/2024_05_07_101134_add_payment_date_column_to_patient_category_invoices_table.php b/docker/statistics/database/migrations/2024_05_07_101134_add_payment_date_column_to_patient_category_invoices_table.php deleted file mode 100644 index 27b5c7f3..00000000 --- a/docker/statistics/database/migrations/2024_05_07_101134_add_payment_date_column_to_patient_category_invoices_table.php +++ /dev/null @@ -1,29 +0,0 @@ -date('payment_date')->nullable()->after('amount_paid_off'); - }); - } - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::table('patient_category_invoices', function (Blueprint $table) { - $table->dropColumn('payment_date'); - }); - } -} \ No newline at end of file diff --git a/docker/statistics/database/migrations/2024_05_11_131503_create_general_stock_reconciliations_table.php b/docker/statistics/database/migrations/2024_05_11_131503_create_general_stock_reconciliations_table.php deleted file mode 100644 index c3904191..00000000 --- a/docker/statistics/database/migrations/2024_05_11_131503_create_general_stock_reconciliations_table.php +++ /dev/null @@ -1,42 +0,0 @@ -id(); - $table->integer('item_type')->nullable(); - $table->integer('item_id')->nullable(); - $table->integer('system_stock')->nullable(); - $table->integer('physical_stock')->nullable(); - $table->integer('difference')->nullable(); - $table->integer('source')->nullable()->comment("1-stores, 2 - labs , 3 - imaging"); - $table->string('reason',255)->nullable(); - $table->boolean('completion_status')->nullable()->default(0)->comment("1-completed, 0 - pending"); - $table->integer('stock_count_identifier')->nullable(); - $table->integer('affected_account_id')->nullable(); - $table->date('reconciliation_date')->nullable(); - $table->string('general_comment',255)->nullable(); - $table->integer('created_by'); - $table->integer('updated_by')->nullable(); - $table->timestamps(); - $table->softDeletes(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropIfExists('general_stock_reconciliations'); - } -}; diff --git a/docker/statistics/database/migrations/2024_05_14_174202_add_monetary_columns_to_ordered_sundries_table.php b/docker/statistics/database/migrations/2024_05_14_174202_add_monetary_columns_to_ordered_sundries_table.php deleted file mode 100644 index eaf719b2..00000000 --- a/docker/statistics/database/migrations/2024_05_14_174202_add_monetary_columns_to_ordered_sundries_table.php +++ /dev/null @@ -1,92 +0,0 @@ -text('amount_paid')->after('inpatient_bill_generated'); - $table->date('payment_date')->nullable()->after('amount_paid'); - $table->text('current_chart_of_account')->after('payment_date'); - $table->text('unit_cost_price')->after('current_chart_of_account'); - $table->text('unit_selling_prices')->after('unit_cost_price')->nullable(); - $table->text('cost_of_goods_account')->after('unit_selling_prices'); - $table->text('inventory_account')->after('cost_of_goods_account'); - }); - // migrate for old values - $ordered_sundries = OrderedSundry::where('inpatient_bill_generated', 1)->get(); - foreach ($ordered_sundries as $ordered_sundry) { - $sundry_ids = explode(",", $ordered_sundry->sundries_id); - $unit_selling_prices = is_null($ordered_sundry->unit_selling_prices) ? array_fill(0, count($sundry_ids), "") : explode(",", $ordered_sundry->unit_selling_prices); - $date_of_interest = Carbon::parse($ordered_sundry->created_at)->toDateString(); - $current_chart_of_account = []; - $cost_price = []; - $inventory_account = []; - $cost_of_goods_account = []; - $amount_paid_array = []; - for ($i = 0; $i < count($sundry_ids); $i++) { - $drug_details = DB::table('sundries')->find($sundry_ids[$i]); - $drug_cost_price = $drug_details->cost_price; - $drug_selling_price = $drug_details->non_insured_price; - $stock_watcher_record = DB::table('stock_watcher')->where('item_type', 2) - ->where('item_id', $drug_details->id)->first(); - if ($stock_watcher_record) { - $details_arr = json_decode($stock_watcher_record->details, true); - if (!isset($details_arr[$date_of_interest])) { - // just get the dates into their own array - $dates_array = array_keys($details_arr); - // search for the closest date to ours of interest and set that as our reference - $closest_date = get_closest_element_in_array($dates_array, $date_of_interest); - if ($closest_date < $date_of_interest) { - // we should only get dates less than that of interest since if it is greater calculations will be wrong - $drug_cost_price = $details_arr[$closest_date]["buying_price"]; - $drug_selling_price = $details_arr[$closest_date]["selling_price"]; - } else { - $drug_cost_price = 0; - $drug_selling_price = 0; - } - } else { - $drug_cost_price = $details_arr[$date_of_interest]["buying_price"]; - $drug_selling_price = $details_arr[$date_of_interest]["selling_price"]; - } - } - if (empty($unit_selling_prices[$i])) { - $unit_selling_prices[$i] = $drug_selling_price; - } - $current_chart_of_account[] = $drug_details->account_id; - $cost_price[] = $drug_cost_price; - $inventory_account[] = $drug_details->inventory_account; - $cost_of_goods_account[] = $drug_details->cost_of_goods_account; - $amount_paid_array[] = $drug_selling_price; - } - $ordered_sundry->amount_paid = implode(",", $amount_paid_array); - $ordered_sundry->unit_selling_prices = implode(",", $unit_selling_prices); - $ordered_sundry->current_chart_of_account = implode(",", $current_chart_of_account); - $ordered_sundry->unit_cost_price = implode(",", $cost_price); - $ordered_sundry->cost_of_goods_account = implode(",", $cost_of_goods_account); - $ordered_sundry->inventory_account = implode(",", $inventory_account); - $ordered_sundry->save(); - } - } - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::table('ordered_sundries', function (Blueprint $table) { - $table->dropColumn(['amount_paid', 'current_chart_of_account', 'unit_cost_price', 'cost_of_goods_account', 'payment_date', 'unit_selling_prices']); - }); - } -} \ No newline at end of file diff --git a/docker/statistics/database/migrations/2024_05_15_074632_add_cycle_time_to_antenatal_mother_histories_table.php b/docker/statistics/database/migrations/2024_05_15_074632_add_cycle_time_to_antenatal_mother_histories_table.php deleted file mode 100644 index 77728603..00000000 --- a/docker/statistics/database/migrations/2024_05_15_074632_add_cycle_time_to_antenatal_mother_histories_table.php +++ /dev/null @@ -1,28 +0,0 @@ -unsignedInteger('cycle_time')->nullable()->after('menses_amount'); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('antenatal_mother_histories', function (Blueprint $table) { - $table->dropColumn('cycle_time'); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_05_16_104318_add_fields_to_antenatal_mother_histories_table.php b/docker/statistics/database/migrations/2024_05_16_104318_add_fields_to_antenatal_mother_histories_table.php deleted file mode 100644 index 4017ca88..00000000 --- a/docker/statistics/database/migrations/2024_05_16_104318_add_fields_to_antenatal_mother_histories_table.php +++ /dev/null @@ -1,31 +0,0 @@ -text('uterine_surgeries')->nullable()->after('husband_health'); - $table->text('other_surgeries')->nullable()->after('uterine_surgeries'); - $table->text('fracture_details')->nullable()->after('fractures'); - $table->string('medical_presentations_others_input')->nullable()->after('medical_presentations'); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('antenatal_mother_histories', function (Blueprint $table) { - $table->dropColumn(['uterine_surgeries', 'other_surgeries','fracture_details','fracture_details','medical_presentations_others_input']); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_05_30_141535_add_field_to_item_watcher_table.php b/docker/statistics/database/migrations/2024_05_30_141535_add_field_to_item_watcher_table.php deleted file mode 100644 index 008e4b6a..00000000 --- a/docker/statistics/database/migrations/2024_05_30_141535_add_field_to_item_watcher_table.php +++ /dev/null @@ -1,30 +0,0 @@ -integer('radiology_stock')->nullable()->after('lab_stock'); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('item_batch_watcher', function (Blueprint $table) { - // - $table->dropColumn('radiology_stock'); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_06_06_123027_create_reports_stock_value_table.php b/docker/statistics/database/migrations/2024_06_06_123027_create_reports_stock_value_table.php deleted file mode 100644 index b4ae64ab..00000000 --- a/docker/statistics/database/migrations/2024_06_06_123027_create_reports_stock_value_table.php +++ /dev/null @@ -1,30 +0,0 @@ -id(); - $table->date('date'); - $table->longText('results')->nullable(); - $table->timestamps(); - $table->softDeletes(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropIfExists('reports_stock_value'); - } -}; diff --git a/docker/statistics/database/migrations/2024_06_19_120935_change_checklist_type_ante_natal_clinic_followups.php b/docker/statistics/database/migrations/2024_06_19_120935_change_checklist_type_ante_natal_clinic_followups.php deleted file mode 100644 index bd9548da..00000000 --- a/docker/statistics/database/migrations/2024_06_19_120935_change_checklist_type_ante_natal_clinic_followups.php +++ /dev/null @@ -1,28 +0,0 @@ -text('checklist')->change(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('ante_natal_clinic_followups', function (Blueprint $table) { - $table->string('checklist')->change(); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_06_19_195411_increase_size_for_columns.php b/docker/statistics/database/migrations/2024_06_19_195411_increase_size_for_columns.php deleted file mode 100644 index 0aaea322..00000000 --- a/docker/statistics/database/migrations/2024_06_19_195411_increase_size_for_columns.php +++ /dev/null @@ -1,26 +0,0 @@ -text('item_ids')->change(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - // - } -}; diff --git a/docker/statistics/database/migrations/2024_06_26_102116_add_extra_subscription_columns_to_category_patient_dependants_table.php b/docker/statistics/database/migrations/2024_06_26_102116_add_extra_subscription_columns_to_category_patient_dependants_table.php deleted file mode 100644 index 2bedfa94..00000000 --- a/docker/statistics/database/migrations/2024_06_26_102116_add_extra_subscription_columns_to_category_patient_dependants_table.php +++ /dev/null @@ -1,29 +0,0 @@ -date('current_subscription_start_date')->after('account_balance')->nullable(); - $table->date('current_subscription_end_date')->after('current_subscription_start_date')->nullable(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('category_patient_dependants', function (Blueprint $table) { - $table->dropColumn(['current_subscription_start_date', 'current_subscription_end_date']); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_06_26_161536_add_history_comments_to_ward_inpatient_detailed_notes.php b/docker/statistics/database/migrations/2024_06_26_161536_add_history_comments_to_ward_inpatient_detailed_notes.php deleted file mode 100644 index 64658ed9..00000000 --- a/docker/statistics/database/migrations/2024_06_26_161536_add_history_comments_to_ward_inpatient_detailed_notes.php +++ /dev/null @@ -1,28 +0,0 @@ -text('history_comments')->nullable()->after('clinic_examination_comments'); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('ward_inpatient_detailed_notes', function (Blueprint $table) { - $table->dropColumn('history_comments'); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_06_27_112244_create_general_forms_table.php b/docker/statistics/database/migrations/2024_06_27_112244_create_general_forms_table.php deleted file mode 100644 index 4b67505a..00000000 --- a/docker/statistics/database/migrations/2024_06_27_112244_create_general_forms_table.php +++ /dev/null @@ -1,32 +0,0 @@ -id(); - $table->string('name'); - $table->integer('item_type')->comment('1-drugs,2-sundries,3-dental,4-radiologies,5-labs,6-general_items,7-optics'); - $table->integer('created_by')->nullable(); - $table->integer('updated_by')->nullable(); - $table->timestamps(); - $table->softDeletes(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropIfExists('general_forms'); - } -}; diff --git a/docker/statistics/database/migrations/2024_07_01_142211_add_form_id_col_to_sundries_table.php b/docker/statistics/database/migrations/2024_07_01_142211_add_form_id_col_to_sundries_table.php deleted file mode 100644 index 488689d8..00000000 --- a/docker/statistics/database/migrations/2024_07_01_142211_add_form_id_col_to_sundries_table.php +++ /dev/null @@ -1,31 +0,0 @@ -Integer('form_id')->nullable()->after('account_id'); - - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('sundries', function (Blueprint $table) { - // - $table->dropColumn('form_id'); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_07_03_072056_add_cancer_protocol_order_id_to_ward_chart_approvals.php b/docker/statistics/database/migrations/2024_07_03_072056_add_cancer_protocol_order_id_to_ward_chart_approvals.php deleted file mode 100644 index e01fb58b..00000000 --- a/docker/statistics/database/migrations/2024_07_03_072056_add_cancer_protocol_order_id_to_ward_chart_approvals.php +++ /dev/null @@ -1,28 +0,0 @@ -string('cancer_protocol_order_id')->nullable()->after('incoming_ward_charts_id'); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('ward_chart_approvals', function (Blueprint $table) { - $table->dropColumn('cancer_protocol_order_id'); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_07_03_185300_restructure_debt_plan_table.php b/docker/statistics/database/migrations/2024_07_03_185300_restructure_debt_plan_table.php deleted file mode 100644 index 4d7c3eb3..00000000 --- a/docker/statistics/database/migrations/2024_07_03_185300_restructure_debt_plan_table.php +++ /dev/null @@ -1,104 +0,0 @@ -get(); - - DB::beginTransaction(); - - try { - Schema::table('debt_plan_payment_staffs', function (Blueprint $table) { - $table->date('date_paid')->after('amount_paid')->nullable(); - $table->string('comment')->after('date_paid')->nullable(); - $table->string('receipt_number')->after('comment')->nullable(); - $table->integer('received_id')->after('receipt_number')->nullable(); - $table->integer('received_amount')->after('received_id')->nullable(); - $table->integer('updated_by')->after('created_by')->nullable(); - $table->integer('banked_id')->after('banked')->nullable(); - - $table->dropColumn([ - 'amount_paid_history', 'date_paid_history', 'staff_in_charge_history', - 'comment_history', 'receipt_history', 'balance_history', 'received_id_history', 'received_amount_history', - 'banked_history', 'amount_written_off_history', 'amount_written_off_by_history', 'amount_written_off_at_history', - 'amount_owed', 'staff_id', 'received' - ]); - }); - - foreach ($debtors as $debtor) { - if (!is_null($debtor->amount_paid_history)) { - $amount_paid_history_arr = unserialize($debtor->amount_paid_history); - $comment_history_arr = unserialize($debtor->comment_history); - $staff_in_charge_history_arr = unserialize($debtor->staff_in_charge_history); - $receipt_history_arr = unserialize($debtor->receipt_history); - $balance_history_arr = unserialize($debtor->balance_history); - $date_paid_history_arr = unserialize($debtor->date_paid_history); - - $amount_paid_history_arr = is_array($amount_paid_history_arr) ? array_values($amount_paid_history_arr) : []; - $comment_history_arr = is_array($comment_history_arr) ? array_values($comment_history_arr) : []; - $staff_in_charge_history_arr = is_array($staff_in_charge_history_arr) ? array_values($staff_in_charge_history_arr) : []; - $receipt_history_arr = is_array($receipt_history_arr) ? array_values($receipt_history_arr) : []; - $balance_history_arr = is_array($balance_history_arr) ? array_values($balance_history_arr) : []; - $date_paid_history_arr = is_array($date_paid_history_arr) ? array_values($date_paid_history_arr) : []; - - $received_amount_history_arr = is_null($debtor->received_amount_history) ? [] : array_values(unserialize($debtor->received_amount_history)); - $received_id_history_arr = is_null($debtor->received_id_history) ? [] : array_values(unserialize($debtor->received_id_history)); - $banked_history_arr = is_null($debtor->banked_history) ? [] : array_values(unserialize($debtor->banked_history)); - - for ($i = 0; $i < count($amount_paid_history_arr); $i++) { - DB::table('debt_plan_payment_staffs')->insert([ - 'debt_plan_id' => $debtor->debt_plan_id, - 'created_by' => $staff_in_charge_history_arr[$i] ?? $debtor->created_by, 'created_at' => $debtor->created_at, - 'updated_at' => $debtor->updated_at, 'amount_paid' => $amount_paid_history_arr[$i] ?? 0, - 'receipt_number' => $receipt_history_arr[$i] ?? '', 'banked_id' => $banked_history_arr[$i] ?? null, - 'balance' => $balance_history_arr[$i] ?? 0, 'comment' => $comment_history_arr[$i] ?? '', - 'date_paid' => $date_paid_history_arr[$i] ? Carbon::parse($date_paid_history_arr[$i])->toDateString() : Carbon::parse($debtor->created_at)->toDateString(), - 'received_id' => $received_id_history_arr[$i] ?? null, 'received_amount' => $received_amount_history_arr[$i] ?? null, - ]); - } - } - - if (!is_null($debtor->amount_written_off_history)) { - $amount_written_off = json_decode($debtor->amount_written_off_history); - $amount_written_off_by = json_decode($debtor->amount_written_off_by_history); - $amount_written_off_at = json_decode($debtor->amount_written_off_at_history); - - for ($i = 0; $i < count($amount_written_off); $i++) { - DB::table('debt_plan_payment_staffs')->insert([ - 'debt_plan_id' => $debtor->debt_plan_id, - 'created_by' => $amount_written_off_by[$i], 'created_at' => $amount_written_off_at[$i], - 'updated_at' => $debtor->updated_at, 'amount_paid' => $amount_written_off[$i], - 'balance' => 0, 'amount_written_off' => $amount_written_off[$i], - 'date_paid' => Carbon::parse($amount_written_off_at[$i])->toDateString(), - ]); - } - } - - DB::table('debt_plan_payment_staffs')->where('id', $debtor->id)->delete(); - } - - DB::commit(); - } catch (\Exception $e) { - echo $e->getMessage(); - DB::rollback(); - } - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - // - } -}; diff --git a/docker/statistics/database/migrations/2024_07_07_184147_add_updated_by_columnn_to_patient_account_consumptions_table.php b/docker/statistics/database/migrations/2024_07_07_184147_add_updated_by_columnn_to_patient_account_consumptions_table.php deleted file mode 100644 index b45e84a2..00000000 --- a/docker/statistics/database/migrations/2024_07_07_184147_add_updated_by_columnn_to_patient_account_consumptions_table.php +++ /dev/null @@ -1,28 +0,0 @@ -integer('updated_by')->nullable(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('patient_account_consumptions', function (Blueprint $table) { - $table->dropColumn('received'); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_07_08_073348_create_patient_dependant_renewals_table.php b/docker/statistics/database/migrations/2024_07_08_073348_create_patient_dependant_renewals_table.php deleted file mode 100644 index 7e34aa85..00000000 --- a/docker/statistics/database/migrations/2024_07_08_073348_create_patient_dependant_renewals_table.php +++ /dev/null @@ -1,31 +0,0 @@ -id(); - $table->integer('main_patient_id'); - $table->bigInteger('renewal_amount'); - $table->date('renewal_date')->nullable(); - $table->timestamps(); - $table->softDeletes(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropIfExists('patient_dependant_renewals'); - } -}; diff --git a/docker/statistics/database/migrations/2024_07_23_142939_remove_null_from_tables.php b/docker/statistics/database/migrations/2024_07_23_142939_remove_null_from_tables.php deleted file mode 100644 index 2b7e7306..00000000 --- a/docker/statistics/database/migrations/2024_07_23_142939_remove_null_from_tables.php +++ /dev/null @@ -1,31 +0,0 @@ -date('admitted_on')->nullable(false)->change(); - $table->integer('ward_id')->nullable(false)->change(); - $table->integer('outcome_id')->nullable()->change(); - $table->integer('referred_to')->nullable()->change(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('tables', function (Blueprint $table) { - // - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_07_24_141107_add_column_to_users_table.php b/docker/statistics/database/migrations/2024_07_24_141107_add_column_to_users_table.php deleted file mode 100644 index bfc5668f..00000000 --- a/docker/statistics/database/migrations/2024_07_24_141107_add_column_to_users_table.php +++ /dev/null @@ -1,30 +0,0 @@ -integer('inactive_counter')->after('password')->nullable(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('users', function (Blueprint $table) { - //drop column - $table->dropColumn('inactive_counter'); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_08_01_175202_add_patient_number_year_prefix_to_hospital_information.php b/docker/statistics/database/migrations/2024_08_01_175202_add_patient_number_year_prefix_to_hospital_information.php deleted file mode 100644 index d800585f..00000000 --- a/docker/statistics/database/migrations/2024_08_01_175202_add_patient_number_year_prefix_to_hospital_information.php +++ /dev/null @@ -1,28 +0,0 @@ -integer('patient_number_year_prefix')->after('patient_number_abbr')->nullable(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('hospital_information', function (Blueprint $table) { - $table->dropColumn('patient_number_year_prefix'); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_08_02_052838_add_consumed_in_previous_subsription.php b/docker/statistics/database/migrations/2024_08_02_052838_add_consumed_in_previous_subsription.php deleted file mode 100644 index 6191ff36..00000000 --- a/docker/statistics/database/migrations/2024_08_02_052838_add_consumed_in_previous_subsription.php +++ /dev/null @@ -1,28 +0,0 @@ -boolean('is_consumption_in_previous_subscription')->default(0)->after('reason')->nullable(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('dependants_consumptions', function (Blueprint $table) { - $table->dropColumn('is_consumption_in_previous_subscription'); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_08_02_151040_add_columns_to_patients_table.php b/docker/statistics/database/migrations/2024_08_02_151040_add_columns_to_patients_table.php deleted file mode 100644 index 5aa75ee0..00000000 --- a/docker/statistics/database/migrations/2024_08_02_151040_add_columns_to_patients_table.php +++ /dev/null @@ -1,28 +0,0 @@ -json('other_patients_info')->nullable(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('patients', function (Blueprint $table) { - $table->dropColumn('other_patients_info'); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_08_06_123717_add_column_to_optical_stock_reconciliations_table.php b/docker/statistics/database/migrations/2024_08_06_123717_add_column_to_optical_stock_reconciliations_table.php deleted file mode 100644 index 4a9b6676..00000000 --- a/docker/statistics/database/migrations/2024_08_06_123717_add_column_to_optical_stock_reconciliations_table.php +++ /dev/null @@ -1,37 +0,0 @@ -integer('stock_count_identifier')->nullable()->after('reason_for_difference'); - $table->boolean('completion_status')->nullable()->comment('1-complete, 0- not complete')->after('stock_count_identifier'); - $table->longText('batches')->nullable()->after('completion_status'); - $table->integer('variance')->nullable()->after('batches'); - - }); - // migrate optical items to batch - Artisan::call('app:migrate-opticals-to-batch'); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('optical_stock_reconciliations', function (Blueprint $table) { - // - $table->dropColumn(['stock_count_identifier','completion_status','batches','variance']); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_08_09_173437_create_reconciliation_reasons_table.php b/docker/statistics/database/migrations/2024_08_09_173437_create_reconciliation_reasons_table.php deleted file mode 100644 index dd79dc44..00000000 --- a/docker/statistics/database/migrations/2024_08_09_173437_create_reconciliation_reasons_table.php +++ /dev/null @@ -1,35 +0,0 @@ -id(); - $table->string('name'); - $table->integer('created_by')->nullable(); - $table->integer('updated_by')->nullable(); - $table->timestamps(); - $table->softDeletes(); - }); - // run reasons seeder - Artisan::call('db:seed', ['--class' => 'ReconcileReasonSeeder']); - - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropIfExists('reconilication_reasons'); - } -}; diff --git a/docker/statistics/database/migrations/2024_08_11_110741_add_balance_column_to_treatments_table.php b/docker/statistics/database/migrations/2024_08_11_110741_add_balance_column_to_treatments_table.php deleted file mode 100644 index ac2d4149..00000000 --- a/docker/statistics/database/migrations/2024_08_11_110741_add_balance_column_to_treatments_table.php +++ /dev/null @@ -1,45 +0,0 @@ -text('balance')->nullable()->after('amount_paid'); - $table->date('payment_date')->nullable()->after('balance'); - }); - - // migrate for old values - $treatments = Treatment::where('inpatient_bill_generated', 1)->get(); - - foreach ($treatments as $treatment) { - $amount_paid_arr = explode(",", $treatment->amount_paid); - $treatment->balance = implode(",", array_fill(0, count($amount_paid_arr), 0)); - $treatment->save(); - } - } - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::table('treatments', function (Blueprint $table) { - $table->dropColumn(['balance']); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_08_11_134231_add_ward_pricing_id_column_to_ordered_investigations_table.php b/docker/statistics/database/migrations/2024_08_11_134231_add_ward_pricing_id_column_to_ordered_investigations_table.php deleted file mode 100644 index cbbf4498..00000000 --- a/docker/statistics/database/migrations/2024_08_11_134231_add_ward_pricing_id_column_to_ordered_investigations_table.php +++ /dev/null @@ -1,28 +0,0 @@ -text('ward_pricing_id')->nullable()->after('for_inpatient'); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('ordered_investigations', function (Blueprint $table) { - $table->dropColumn(['balance']); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_08_12_124944_create_stock_reconciliation_reasons_table.php b/docker/statistics/database/migrations/2024_08_12_124944_create_stock_reconciliation_reasons_table.php deleted file mode 100644 index d50a970e..00000000 --- a/docker/statistics/database/migrations/2024_08_12_124944_create_stock_reconciliation_reasons_table.php +++ /dev/null @@ -1,35 +0,0 @@ -id(); - $table->integer('item_type'); - $table->integer('item_id'); - $table->integer('reconciliation_id')->nullable(); - $table->foreignId('reason_id')->constrained('reconilication_reasons'); - $table->integer('source')->comment('0-stores, 1-pharmacy'); - $table->integer('created_by'); - $table->integer('updated_by')->nullable(); - $table->timestamps(); - $table->softDeletes(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropIfExists('stock_reconciliation_reasons'); - } -}; diff --git a/docker/statistics/database/migrations/2024_08_12_201528_fix_ordered_items_prices.php b/docker/statistics/database/migrations/2024_08_12_201528_fix_ordered_items_prices.php deleted file mode 100644 index e9ac213a..00000000 --- a/docker/statistics/database/migrations/2024_08_12_201528_fix_ordered_items_prices.php +++ /dev/null @@ -1,96 +0,0 @@ -where('inpatient_bill_generated', 1) - ->get(); - - foreach ($ordered_services as$ordered_service) { - $service_id_arr = explode(",", $ordered_service->service_id); - $quantity_arr = explode(",", $ordered_service->quantity); - - for ($i = 0; $i < count($service_id_arr); $i++) { - $details = DB::table('services')->find($service_id_arr[$i]); - $ward_id = get_name($ordered_service->episode_id, 'episode_id', 'ward_id', 'inpatient_info'); - - if ($details && is_numeric($ward_id)) { - DB::table('ward_consultations_and_services') - ->insert([ - "patient_id" => $ordered_service->patient_id, "episode_id" => $ordered_service->episode_id, "ward_id" => $ward_id, - "service_id" => $details->id, "unit_price" => $details->non_insured_price, "staff_fee" => 0, "chi_price" => 0, - "quantity_given" => $quantity_arr[$i], "dispensation_date" => Carbon::parse($ordered_service->updated_at)->toDateString(), "current_chart_of_account" => $details->account_id, - "amount_paid" => ($details->non_insured_price * $quantity_arr[$i]), "payment_date" => Carbon::parse($ordered_service->updated_at)->toDateString(), "balance" => 0, "created_by" => $ordered_service->created_by, - "created_at" => $ordered_service->updated_at - ]); - } - } - } - - $ordered_sundries = DB::table('ordered_sundries')->where('inpatient_bill_generated', 1) - ->get(); - - foreach ($ordered_sundries as $ordered_sundry) { - $sundry_id_arr = explode(",", $ordered_sundry->sundries_id); - $quantity_arr = explode(",", $ordered_sundry->quantity); - - for ($i = 0; $i < count($sundry_id_arr); $i++) { - $details = DB::table('sundries')->find($sundry_id_arr[$i]); - $ward_id = get_name($ordered_sundry->episode_id, 'episode_id', 'ward_id', 'inpatient_info'); - - if ($details && is_numeric($ward_id)) { - DB::table('ward_sundry_dispensations') - ->insert([ - "patient_id" => $ordered_sundry->patient_id, "episode_id" => $ordered_sundry->episode_id, "ward_id" => $ward_id, - "sundry_id" => $details->id, "price" => $details->non_insured_price, "cost_price" => $details->cost_price, "chi_price" => 0, - "quantity_given" => $quantity_arr[$i], "dispensation_date" => Carbon::parse($ordered_sundry->updated_at)->toDateString(), "current_chart_of_account" => $details->account_id, - "amount_paid" => ($details->non_insured_price * $quantity_arr[$i]), "payment_date" => Carbon::parse($ordered_sundry->updated_at)->toDateString(), "balance" => 0, "created_by" => $ordered_sundry->created_by, - "created_at" => $ordered_sundry->updated_at, "cost_of_goods_account" => $details->cost_of_goods_account, "inventory_account" => $details->inventory_account, - ]); - } - } - } - - $ordered_procedures = DB::table('ordered_procedures')->where('inpatient_bill_generated', 1) - ->get(); - - foreach ($ordered_procedures as $ordered_procedure) { - $procedure_id_arr = explode(",", $ordered_procedure->procedure_id); - $performed_by = explode(",", $ordered_procedure->performed_id); - - for ($i = 0; $i < count($procedure_id_arr); $i++) { - $details = DB::table('procedures')->find($procedure_id_arr[$i]); - $ward_id = get_name($ordered_procedure->episode_id, 'episode_id', 'ward_id', 'inpatient_info'); - - if ($details && is_numeric($ward_id)) { - DB::table('ward_procedures') - ->insert([ - "patient_id" => $ordered_procedure->patient_id, "episode_id" => $ordered_procedure->episode_id, "ward_id" => $ward_id, - "procedure_id" => $details->id, "hospital_fee" => $details->non_insured_price, "staff_fee" => 0, "chi_price" => 0, - "procedure_date" => Carbon::parse($ordered_procedure->updated_at)->toDateString(), "current_chart_of_account" => $details->account_id, - "amount_paid" => $details->non_insured_price, "payment_date" => Carbon::parse($ordered_procedure->updated_at)->toDateString(), "balance" => 0, "created_by" => $ordered_procedure->created_by, - "created_at" => $ordered_procedure->updated_at, 'performed_by' => $performed_by[$i] ?? NULL, - ]); - } - } - } - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - // - } -}; diff --git a/docker/statistics/database/migrations/2024_09_09_112632_add_column_to_quotations_table.php b/docker/statistics/database/migrations/2024_09_09_112632_add_column_to_quotations_table.php deleted file mode 100644 index a1c6bf79..00000000 --- a/docker/statistics/database/migrations/2024_09_09_112632_add_column_to_quotations_table.php +++ /dev/null @@ -1,35 +0,0 @@ -double('grn_number')->nullable()->comment('grn- goods_received_note')->after('quotation_number'); - }); - //add grn_number to previous quotations - $all_quotations = Quotation::all(); - foreach ($all_quotations as $quotation) { - $quotation->grn_number = (float)$quotation->quotation_number + 0.1; - $quotation->save(); - } - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('quotations', function (Blueprint $table) { - $table->dropColumn('grn_number'); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_09_20_165131_add_pregnancy_complication_to_obstetric_histories_table.php b/docker/statistics/database/migrations/2024_09_20_165131_add_pregnancy_complication_to_obstetric_histories_table.php deleted file mode 100644 index 99cd3766..00000000 --- a/docker/statistics/database/migrations/2024_09_20_165131_add_pregnancy_complication_to_obstetric_histories_table.php +++ /dev/null @@ -1,28 +0,0 @@ -string('pregnancy_complication')->nullable()->after('classification'); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('obstetric_histories', function (Blueprint $table) { - // - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_09_23_105255_add_other_facility_visited_name_to_ante_natal_clinic_registrations_table.php b/docker/statistics/database/migrations/2024_09_23_105255_add_other_facility_visited_name_to_ante_natal_clinic_registrations_table.php deleted file mode 100644 index d7b0127c..00000000 --- a/docker/statistics/database/migrations/2024_09_23_105255_add_other_facility_visited_name_to_ante_natal_clinic_registrations_table.php +++ /dev/null @@ -1,29 +0,0 @@ -string('other_facility_visited_name')->nullable()->after('edd'); - if (!Schema::hasColumn('ante_natal_clinic_registrations','other_facility_visit_date')) $table->date('other_facility_visit_date')->nullable()->after('other_facility_visited_name'); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('ante_natal_clinic_registrations', function (Blueprint $table) { - // - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_09_23_175344_add_is_pos_column_to_ordered_items_tables.php b/docker/statistics/database/migrations/2024_09_23_175344_add_is_pos_column_to_ordered_items_tables.php deleted file mode 100644 index 3eca8a3e..00000000 --- a/docker/statistics/database/migrations/2024_09_23_175344_add_is_pos_column_to_ordered_items_tables.php +++ /dev/null @@ -1,52 +0,0 @@ -integer('is_pos')->default(0); - }); - - Schema::table('ordered_sundries', function (Blueprint $table) { - $table->integer('is_pos')->default(0); - }); - - Schema::table('ordered_eye_glasses', function (Blueprint $table) { - $table->integer('is_pos')->default(0); - }); - - Schema::table('treatments', function (Blueprint $table) { - $table->integer('is_pos')->default(0); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('ordered_services', function (Blueprint $table) { - $table->dropColumn('is_pos'); - }); - - Schema::table('ordered_sundries', function (Blueprint $table) { - $table->dropColumn('is_pos'); - }); - - Schema::table('ordered_eye_glasses', function (Blueprint $table) { - $table->dropColumn('is_pos'); - }); - - Schema::table('treatments', function (Blueprint $table) { - $table->dropColumn('is_pos'); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_10_17_114709_add_column_to_ward_treatment_dispensations.php b/docker/statistics/database/migrations/2024_10_17_114709_add_column_to_ward_treatment_dispensations.php deleted file mode 100644 index b06b1548..00000000 --- a/docker/statistics/database/migrations/2024_10_17_114709_add_column_to_ward_treatment_dispensations.php +++ /dev/null @@ -1,30 +0,0 @@ -string('batch_id')->nullable()->after('ward_treatment_id'); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('ward_treatment_dispensations', function (Blueprint $table) { - // - $table->dropColumn('batch_id'); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_10_22_062502_change_password_expiry_days_column.php b/docker/statistics/database/migrations/2024_10_22_062502_change_password_expiry_days_column.php deleted file mode 100644 index 9a1f7932..00000000 --- a/docker/statistics/database/migrations/2024_10_22_062502_change_password_expiry_days_column.php +++ /dev/null @@ -1,28 +0,0 @@ -integer('password_expiry_days')->change(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('password_securities', function (Blueprint $table) { - $table->dropColumn('password_expiry_days'); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_10_28_161221_create_ward_treatment_batch_dispensations_table.php b/docker/statistics/database/migrations/2024_10_28_161221_create_ward_treatment_batch_dispensations_table.php deleted file mode 100644 index 651f2518..00000000 --- a/docker/statistics/database/migrations/2024_10_28_161221_create_ward_treatment_batch_dispensations_table.php +++ /dev/null @@ -1,33 +0,0 @@ -id(); - $table->integer('patient_id'); - $table->integer('item_id'); - $table->integer('episode_id'); - $table->integer('incoming_ward_chart_id'); - $table->string('item_batch_id'); - $table->timestamps(); - $table->softDeletes(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropIfExists('ward_treatment_batch_dispensations'); - } -}; diff --git a/docker/statistics/database/migrations/2024_11_12_115256_add_patient_payment_methods_columns.php b/docker/statistics/database/migrations/2024_11_12_115256_add_patient_payment_methods_columns.php deleted file mode 100644 index 1442d8ad..00000000 --- a/docker/statistics/database/migrations/2024_11_12_115256_add_patient_payment_methods_columns.php +++ /dev/null @@ -1,41 +0,0 @@ -integer('is_ref_required')->default(0)->after('name'); - $table->enum('integrated_payment', array_column(IntegratedPayments::cases(), 'value')) - ->nullable()->after('is_ref_required'); - }); - - Schema::table('payment_methods_transactions', function (Blueprint $table) { - $table->string('ref_number')->nullable()->after('amount'); - $table->integer('ref_number_added_by')->nullable()->after('ref_number') - ->comment('0 for user, 1 for system'); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('patient_payment_methods', function (Blueprint $table) { - $table->dropColumn(['is_ref_required', 'integrated_payment']); - }); - - Schema::table('payment_methods_transactions', function (Blueprint $table) { - $table->dropColumn(['ref_number']); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_11_19_132624_add_machine_id_to_lab_machine_results_table.php b/docker/statistics/database/migrations/2024_11_19_132624_add_machine_id_to_lab_machine_results_table.php deleted file mode 100644 index 45921a71..00000000 --- a/docker/statistics/database/migrations/2024_11_19_132624_add_machine_id_to_lab_machine_results_table.php +++ /dev/null @@ -1,28 +0,0 @@ -string('machine_id')->nullable()->after('results_time'); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('lab_machines_results', function (Blueprint $table) { - $table->dropColumn(['machine_id']); - }); - } -}; diff --git a/docker/statistics/database/migrations/2024_12_12_185826_add_history_column_to_ward_treatment_dispensations_table.php b/docker/statistics/database/migrations/2024_12_12_185826_add_history_column_to_ward_treatment_dispensations_table.php deleted file mode 100644 index 578a3a6a..00000000 --- a/docker/statistics/database/migrations/2024_12_12_185826_add_history_column_to_ward_treatment_dispensations_table.php +++ /dev/null @@ -1,28 +0,0 @@ -text('dispensation_history')->nullable(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('ward_treatment_dispensations', function (Blueprint $table) { - $table->dropColumn('dispensation_history'); - }); - } -}; diff --git a/docker/statistics/database/seeders/ReconcileReasonSeeder.php b/docker/statistics/database/seeders/ReconcileReasonSeeder.php deleted file mode 100644 index 24356a38..00000000 --- a/docker/statistics/database/seeders/ReconcileReasonSeeder.php +++ /dev/null @@ -1,32 +0,0 @@ - $reason, - ]); - } - } -} diff --git a/docker/statistics/public/elite/bower_components/datatables/datatables_2.css b/docker/statistics/public/elite/bower_components/datatables/datatables_2.css deleted file mode 100644 index 57ef21e0..00000000 --- a/docker/statistics/public/elite/bower_components/datatables/datatables_2.css +++ /dev/null @@ -1,757 +0,0 @@ -@charset "UTF-8"; -:root { - --dt-row-selected: 13, 110, 253; - --dt-row-selected-text: 255, 255, 255; - --dt-row-selected-link: 9, 10, 11; - --dt-row-stripe: 0, 0, 0; - --dt-row-hover: 0, 0, 0; - --dt-column-ordering: 0, 0, 0; - --dt-html-background: white; -} -:root.dark { - --dt-html-background: rgb(33, 37, 41); -} - -table.dataTable td.dt-control { - text-align: center; - cursor: pointer; -} -table.dataTable td.dt-control:before { - display: inline-block; - box-sizing: border-box; - content: ""; - border-top: 5px solid transparent; - border-left: 10px solid rgba(0, 0, 0, 0.5); - border-bottom: 5px solid transparent; - border-right: 0px solid transparent; -} -table.dataTable tr.dt-hasChild td.dt-control:before { - border-top: 10px solid rgba(0, 0, 0, 0.5); - border-left: 5px solid transparent; - border-bottom: 0px solid transparent; - border-right: 5px solid transparent; -} - -html.dark table.dataTable td.dt-control:before, -:root[data-bs-theme=dark] table.dataTable td.dt-control:before { - border-left-color: rgba(255, 255, 255, 0.5); -} -html.dark table.dataTable tr.dt-hasChild td.dt-control:before, -:root[data-bs-theme=dark] table.dataTable tr.dt-hasChild td.dt-control:before { - border-top-color: rgba(255, 255, 255, 0.5); - border-left-color: transparent; -} - -div.dt-scroll-body thead tr, -div.dt-scroll-body tfoot tr { - height: 0; -} -div.dt-scroll-body thead tr th, div.dt-scroll-body thead tr td, -div.dt-scroll-body tfoot tr th, -div.dt-scroll-body tfoot tr td { - height: 0 !important; - padding-top: 0px !important; - padding-bottom: 0px !important; - border-top-width: 0px !important; - border-bottom-width: 0px !important; -} -div.dt-scroll-body thead tr th div.dt-scroll-sizing, div.dt-scroll-body thead tr td div.dt-scroll-sizing, -div.dt-scroll-body tfoot tr th div.dt-scroll-sizing, -div.dt-scroll-body tfoot tr td div.dt-scroll-sizing { - height: 0 !important; - overflow: hidden !important; -} - -table.dataTable thead > tr > th:active, -table.dataTable thead > tr > td:active { - outline: none; -} -table.dataTable thead > tr > th.dt-orderable-asc span.dt-column-order:before, table.dataTable thead > tr > th.dt-ordering-asc span.dt-column-order:before, -table.dataTable thead > tr > td.dt-orderable-asc span.dt-column-order:before, -table.dataTable thead > tr > td.dt-ordering-asc span.dt-column-order:before { - position: absolute; - display: block; - bottom: 50%; - content: "▲"; - content: "▲"/""; -} -table.dataTable thead > tr > th.dt-orderable-desc span.dt-column-order:after, table.dataTable thead > tr > th.dt-ordering-desc span.dt-column-order:after, -table.dataTable thead > tr > td.dt-orderable-desc span.dt-column-order:after, -table.dataTable thead > tr > td.dt-ordering-desc span.dt-column-order:after { - position: absolute; - display: block; - top: 50%; - content: "▼"; - content: "▼"/""; -} -table.dataTable thead > tr > th.dt-orderable-asc, table.dataTable thead > tr > th.dt-orderable-desc, table.dataTable thead > tr > th.dt-ordering-asc, table.dataTable thead > tr > th.dt-ordering-desc, -table.dataTable thead > tr > td.dt-orderable-asc, -table.dataTable thead > tr > td.dt-orderable-desc, -table.dataTable thead > tr > td.dt-ordering-asc, -table.dataTable thead > tr > td.dt-ordering-desc { - position: relative; - padding-right: 30px; -} -table.dataTable thead > tr > th.dt-orderable-asc span.dt-column-order, table.dataTable thead > tr > th.dt-orderable-desc span.dt-column-order, table.dataTable thead > tr > th.dt-ordering-asc span.dt-column-order, table.dataTable thead > tr > th.dt-ordering-desc span.dt-column-order, -table.dataTable thead > tr > td.dt-orderable-asc span.dt-column-order, -table.dataTable thead > tr > td.dt-orderable-desc span.dt-column-order, -table.dataTable thead > tr > td.dt-ordering-asc span.dt-column-order, -table.dataTable thead > tr > td.dt-ordering-desc span.dt-column-order { - position: absolute; - right: 12px; - top: 0; - bottom: 0; - width: 12px; -} -table.dataTable thead > tr > th.dt-orderable-asc span.dt-column-order:before, table.dataTable thead > tr > th.dt-orderable-asc span.dt-column-order:after, table.dataTable thead > tr > th.dt-orderable-desc span.dt-column-order:before, table.dataTable thead > tr > th.dt-orderable-desc span.dt-column-order:after, table.dataTable thead > tr > th.dt-ordering-asc span.dt-column-order:before, table.dataTable thead > tr > th.dt-ordering-asc span.dt-column-order:after, table.dataTable thead > tr > th.dt-ordering-desc span.dt-column-order:before, table.dataTable thead > tr > th.dt-ordering-desc span.dt-column-order:after, -table.dataTable thead > tr > td.dt-orderable-asc span.dt-column-order:before, -table.dataTable thead > tr > td.dt-orderable-asc span.dt-column-order:after, -table.dataTable thead > tr > td.dt-orderable-desc span.dt-column-order:before, -table.dataTable thead > tr > td.dt-orderable-desc span.dt-column-order:after, -table.dataTable thead > tr > td.dt-ordering-asc span.dt-column-order:before, -table.dataTable thead > tr > td.dt-ordering-asc span.dt-column-order:after, -table.dataTable thead > tr > td.dt-ordering-desc span.dt-column-order:before, -table.dataTable thead > tr > td.dt-ordering-desc span.dt-column-order:after { - left: 0; - opacity: 0.125; - line-height: 9px; - font-size: 0.8em; -} -table.dataTable thead > tr > th.dt-orderable-asc, table.dataTable thead > tr > th.dt-orderable-desc, -table.dataTable thead > tr > td.dt-orderable-asc, -table.dataTable thead > tr > td.dt-orderable-desc { - cursor: pointer; -} -table.dataTable thead > tr > th.dt-orderable-asc:hover, table.dataTable thead > tr > th.dt-orderable-desc:hover, -table.dataTable thead > tr > td.dt-orderable-asc:hover, -table.dataTable thead > tr > td.dt-orderable-desc:hover { - outline: 2px solid rgba(0, 0, 0, 0.05); - outline-offset: -2px; -} -table.dataTable thead > tr > th.dt-ordering-asc span.dt-column-order:before, table.dataTable thead > tr > th.dt-ordering-desc span.dt-column-order:after, -table.dataTable thead > tr > td.dt-ordering-asc span.dt-column-order:before, -table.dataTable thead > tr > td.dt-ordering-desc span.dt-column-order:after { - opacity: 0.6; -} -table.dataTable thead > tr > th.sorting_desc_disabled span.dt-column-order:after, table.dataTable thead > tr > th.sorting_asc_disabled span.dt-column-order:before, -table.dataTable thead > tr > td.sorting_desc_disabled span.dt-column-order:after, -table.dataTable thead > tr > td.sorting_asc_disabled span.dt-column-order:before { - display: none; -} -table.dataTable thead > tr > th:active, -table.dataTable thead > tr > td:active { - outline: none; -} - -div.dt-scroll-body > table.dataTable > thead > tr > th, -div.dt-scroll-body > table.dataTable > thead > tr > td { - overflow: hidden; -} - -:root.dark table.dataTable thead > tr > th.dt-orderable-asc:hover, :root.dark table.dataTable thead > tr > th.dt-orderable-desc:hover, -:root.dark table.dataTable thead > tr > td.dt-orderable-asc:hover, -:root.dark table.dataTable thead > tr > td.dt-orderable-desc:hover, -:root[data-bs-theme=dark] table.dataTable thead > tr > th.dt-orderable-asc:hover, -:root[data-bs-theme=dark] table.dataTable thead > tr > th.dt-orderable-desc:hover, -:root[data-bs-theme=dark] table.dataTable thead > tr > td.dt-orderable-asc:hover, -:root[data-bs-theme=dark] table.dataTable thead > tr > td.dt-orderable-desc:hover { - outline: 2px solid rgba(255, 255, 255, 0.05); -} - -div.dt-processing { - position: absolute; - top: 50%; - left: 50%; - width: 200px; - margin-left: -100px; - margin-top: -22px; - text-align: center; - padding: 2px; - z-index: 10; -} -div.dt-processing > div:last-child { - position: relative; - width: 80px; - height: 15px; - margin: 1em auto; -} -div.dt-processing > div:last-child > div { - position: absolute; - top: 0; - width: 13px; - height: 13px; - border-radius: 50%; - background: rgb(13, 110, 253); - background: rgb(var(--dt-row-selected)); - animation-timing-function: cubic-bezier(0, 1, 1, 0); -} -div.dt-processing > div:last-child > div:nth-child(1) { - left: 8px; - animation: datatables-loader-1 0.6s infinite; -} -div.dt-processing > div:last-child > div:nth-child(2) { - left: 8px; - animation: datatables-loader-2 0.6s infinite; -} -div.dt-processing > div:last-child > div:nth-child(3) { - left: 32px; - animation: datatables-loader-2 0.6s infinite; -} -div.dt-processing > div:last-child > div:nth-child(4) { - left: 56px; - animation: datatables-loader-3 0.6s infinite; -} - -@keyframes datatables-loader-1 { - 0% { - transform: scale(0); - } - 100% { - transform: scale(1); - } -} -@keyframes datatables-loader-3 { - 0% { - transform: scale(1); - } - 100% { - transform: scale(0); - } -} -@keyframes datatables-loader-2 { - 0% { - transform: translate(0, 0); - } - 100% { - transform: translate(24px, 0); - } -} -table.dataTable.nowrap th, table.dataTable.nowrap td { - white-space: nowrap; -} -table.dataTable th, -table.dataTable td { - box-sizing: border-box; -} -table.dataTable th.dt-left, -table.dataTable td.dt-left { - text-align: left; -} -table.dataTable th.dt-center, -table.dataTable td.dt-center { - text-align: center; -} -table.dataTable th.dt-right, -table.dataTable td.dt-right { - text-align: right; -} -table.dataTable th.dt-justify, -table.dataTable td.dt-justify { - text-align: justify; -} -table.dataTable th.dt-nowrap, -table.dataTable td.dt-nowrap { - white-space: nowrap; -} -table.dataTable th.dt-empty, -table.dataTable td.dt-empty { - text-align: center; - vertical-align: top; -} -table.dataTable th.dt-type-numeric, table.dataTable th.dt-type-date, -table.dataTable td.dt-type-numeric, -table.dataTable td.dt-type-date { - text-align: right; -} -table.dataTable thead th, -table.dataTable thead td, -table.dataTable tfoot th, -table.dataTable tfoot td { - text-align: left; -} -table.dataTable thead th.dt-head-left, -table.dataTable thead td.dt-head-left, -table.dataTable tfoot th.dt-head-left, -table.dataTable tfoot td.dt-head-left { - text-align: left; -} -table.dataTable thead th.dt-head-center, -table.dataTable thead td.dt-head-center, -table.dataTable tfoot th.dt-head-center, -table.dataTable tfoot td.dt-head-center { - text-align: center; -} -table.dataTable thead th.dt-head-right, -table.dataTable thead td.dt-head-right, -table.dataTable tfoot th.dt-head-right, -table.dataTable tfoot td.dt-head-right { - text-align: right; -} -table.dataTable thead th.dt-head-justify, -table.dataTable thead td.dt-head-justify, -table.dataTable tfoot th.dt-head-justify, -table.dataTable tfoot td.dt-head-justify { - text-align: justify; -} -table.dataTable thead th.dt-head-nowrap, -table.dataTable thead td.dt-head-nowrap, -table.dataTable tfoot th.dt-head-nowrap, -table.dataTable tfoot td.dt-head-nowrap { - white-space: nowrap; -} -table.dataTable tbody th.dt-body-left, -table.dataTable tbody td.dt-body-left { - text-align: left; -} -table.dataTable tbody th.dt-body-center, -table.dataTable tbody td.dt-body-center { - text-align: center; -} -table.dataTable tbody th.dt-body-right, -table.dataTable tbody td.dt-body-right { - text-align: right; -} -table.dataTable tbody th.dt-body-justify, -table.dataTable tbody td.dt-body-justify { - text-align: justify; -} -table.dataTable tbody th.dt-body-nowrap, -table.dataTable tbody td.dt-body-nowrap { - white-space: nowrap; -} - -/* - * Table styles - */ -table.dataTable { - width: 100%; - margin: 0 auto; - border-spacing: 0; - /* - * Header and footer styles - */ - /* - * Body styles - */ -} -table.dataTable thead th, -table.dataTable tfoot th { - font-weight: bold; -} -table.dataTable > thead > tr > th, -table.dataTable > thead > tr > td { - padding: 10px; - border-bottom: 1px solid rgba(0, 0, 0, 0.3); -} -table.dataTable > thead > tr > th:active, -table.dataTable > thead > tr > td:active { - outline: none; -} -table.dataTable > tfoot > tr > th, -table.dataTable > tfoot > tr > td { - border-top: 1px solid rgba(0, 0, 0, 0.3); - padding: 10px 10px 6px 10px; -} -table.dataTable > tbody > tr { - background-color: transparent; -} -table.dataTable > tbody > tr:first-child > * { - border-top: none; -} -table.dataTable > tbody > tr:last-child > * { - border-bottom: none; -} -table.dataTable > tbody > tr.selected > * { - box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.9); - box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.9); - color: rgb(255, 255, 255); - color: rgb(var(--dt-row-selected-text)); -} -table.dataTable > tbody > tr.selected a { - color: rgb(9, 10, 11); - color: rgb(var(--dt-row-selected-link)); -} -table.dataTable > tbody > tr > th, -table.dataTable > tbody > tr > td { - padding: 8px 10px; -} -table.dataTable.row-border > tbody > tr > *, table.dataTable.display > tbody > tr > * { - border-top: 1px solid rgba(0, 0, 0, 0.15); -} -table.dataTable.row-border > tbody > tr:first-child > *, table.dataTable.display > tbody > tr:first-child > * { - border-top: none; -} -table.dataTable.row-border > tbody > tr.selected + tr.selected > td, table.dataTable.display > tbody > tr.selected + tr.selected > td { - border-top-color: rgba(13, 110, 253, 0.65); - border-top-color: rgba(var(--dt-row-selected), 0.65); -} -table.dataTable.cell-border > tbody > tr > * { - border-top: 1px solid rgba(0, 0, 0, 0.15); - border-right: 1px solid rgba(0, 0, 0, 0.15); -} -table.dataTable.cell-border > tbody > tr > *:first-child { - border-left: 1px solid rgba(0, 0, 0, 0.15); -} -table.dataTable.cell-border > tbody > tr:first-child > * { - border-top: 1px solid rgba(0, 0, 0, 0.3); -} -table.dataTable.stripe > tbody > tr:nth-child(odd) > *, table.dataTable.display > tbody > tr:nth-child(odd) > * { - box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.023); - box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-stripe), 0.023); -} -table.dataTable.stripe > tbody > tr:nth-child(odd).selected > *, table.dataTable.display > tbody > tr:nth-child(odd).selected > * { - box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.923); - box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.923); -} -table.dataTable.hover > tbody > tr:hover > *, table.dataTable.display > tbody > tr:hover > * { - box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.035); - box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-hover), 0.035); -} -table.dataTable.hover > tbody > tr.selected:hover > *, table.dataTable.display > tbody > tr.selected:hover > * { - box-shadow: inset 0 0 0 9999px #0d6efd !important; - box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 1) !important; -} -table.dataTable.order-column > tbody tr > .sorting_1, -table.dataTable.order-column > tbody tr > .sorting_2, -table.dataTable.order-column > tbody tr > .sorting_3, table.dataTable.display > tbody tr > .sorting_1, -table.dataTable.display > tbody tr > .sorting_2, -table.dataTable.display > tbody tr > .sorting_3 { - box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.019); - box-shadow: inset 0 0 0 9999px rgba(var(--dt-column-ordering), 0.019); -} -table.dataTable.order-column > tbody tr.selected > .sorting_1, -table.dataTable.order-column > tbody tr.selected > .sorting_2, -table.dataTable.order-column > tbody tr.selected > .sorting_3, table.dataTable.display > tbody tr.selected > .sorting_1, -table.dataTable.display > tbody tr.selected > .sorting_2, -table.dataTable.display > tbody tr.selected > .sorting_3 { - box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.919); - box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.919); -} -table.dataTable.display > tbody > tr:nth-child(odd) > .sorting_1, table.dataTable.order-column.stripe > tbody > tr:nth-child(odd) > .sorting_1 { - box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.054); - box-shadow: inset 0 0 0 9999px rgba(var(--dt-column-ordering), 0.054); -} -table.dataTable.display > tbody > tr:nth-child(odd) > .sorting_2, table.dataTable.order-column.stripe > tbody > tr:nth-child(odd) > .sorting_2 { - box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.047); - box-shadow: inset 0 0 0 9999px rgba(var(--dt-column-ordering), 0.047); -} -table.dataTable.display > tbody > tr:nth-child(odd) > .sorting_3, table.dataTable.order-column.stripe > tbody > tr:nth-child(odd) > .sorting_3 { - box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.039); - box-shadow: inset 0 0 0 9999px rgba(var(--dt-column-ordering), 0.039); -} -table.dataTable.display > tbody > tr:nth-child(odd).selected > .sorting_1, table.dataTable.order-column.stripe > tbody > tr:nth-child(odd).selected > .sorting_1 { - box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.954); - box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.954); -} -table.dataTable.display > tbody > tr:nth-child(odd).selected > .sorting_2, table.dataTable.order-column.stripe > tbody > tr:nth-child(odd).selected > .sorting_2 { - box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.947); - box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.947); -} -table.dataTable.display > tbody > tr:nth-child(odd).selected > .sorting_3, table.dataTable.order-column.stripe > tbody > tr:nth-child(odd).selected > .sorting_3 { - box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.939); - box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.939); -} -table.dataTable.display > tbody > tr.even > .sorting_1, table.dataTable.order-column.stripe > tbody > tr.even > .sorting_1 { - box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.019); - box-shadow: inset 0 0 0 9999px rgba(var(--dt-column-ordering), 0.019); -} -table.dataTable.display > tbody > tr.even > .sorting_2, table.dataTable.order-column.stripe > tbody > tr.even > .sorting_2 { - box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.011); - box-shadow: inset 0 0 0 9999px rgba(var(--dt-column-ordering), 0.011); -} -table.dataTable.display > tbody > tr.even > .sorting_3, table.dataTable.order-column.stripe > tbody > tr.even > .sorting_3 { - box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.003); - box-shadow: inset 0 0 0 9999px rgba(var(--dt-column-ordering), 0.003); -} -table.dataTable.display > tbody > tr.even.selected > .sorting_1, table.dataTable.order-column.stripe > tbody > tr.even.selected > .sorting_1 { - box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.919); - box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.919); -} -table.dataTable.display > tbody > tr.even.selected > .sorting_2, table.dataTable.order-column.stripe > tbody > tr.even.selected > .sorting_2 { - box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.911); - box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.911); -} -table.dataTable.display > tbody > tr.even.selected > .sorting_3, table.dataTable.order-column.stripe > tbody > tr.even.selected > .sorting_3 { - box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.903); - box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.903); -} -table.dataTable.display tbody tr:hover > .sorting_1, table.dataTable.order-column.hover tbody tr:hover > .sorting_1 { - box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.082); - box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-hover), 0.082); -} -table.dataTable.display tbody tr:hover > .sorting_2, table.dataTable.order-column.hover tbody tr:hover > .sorting_2 { - box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.074); - box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-hover), 0.074); -} -table.dataTable.display tbody tr:hover > .sorting_3, table.dataTable.order-column.hover tbody tr:hover > .sorting_3 { - box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.062); - box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-hover), 0.062); -} -table.dataTable.display tbody tr:hover.selected > .sorting_1, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_1 { - box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.982); - box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.982); -} -table.dataTable.display tbody tr:hover.selected > .sorting_2, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_2 { - box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.974); - box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.974); -} -table.dataTable.display tbody tr:hover.selected > .sorting_3, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_3 { - box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.962); - box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.962); -} -table.dataTable.compact thead th, -table.dataTable.compact thead td, -table.dataTable.compact tfoot th, -table.dataTable.compact tfoot td, -table.dataTable.compact tbody th, -table.dataTable.compact tbody td { - padding: 4px; -} - -/* - * Control feature layout - */ -div.dt-container { - position: relative; - clear: both; -} -div.dt-container div.dt-layout-row { - display: table; - clear: both; - width: 100%; -} -div.dt-container div.dt-layout-row.dt-layout-table { - display: block; -} -div.dt-container div.dt-layout-row.dt-layout-table div.dt-layout-cell { - display: block; -} -div.dt-container div.dt-layout-cell { - display: table-cell; - vertical-align: middle; - padding: 5px 0; -} -div.dt-container div.dt-layout-cell.dt-full { - text-align: center; -} -div.dt-container div.dt-layout-cell.dt-start { - text-align: left; -} -div.dt-container div.dt-layout-cell.dt-end { - text-align: right; -} -div.dt-container div.dt-layout-cell:empty { - display: none; -} -div.dt-container .dt-search input { - border: 1px solid #aaa; - border-radius: 3px; - padding: 5px; - background-color: transparent; - color: inherit; - margin-left: 3px; -} -div.dt-container .dt-input { - border: 1px solid #aaa; - border-radius: 3px; - padding: 5px; - background-color: transparent; - color: inherit; -} -div.dt-container select.dt-input { - padding: 4px; -} -div.dt-container .dt-paging .dt-paging-button { - box-sizing: border-box; - display: inline-block; - min-width: 1.5em; - padding: 0.5em 1em; - margin-left: 2px; - text-align: center; - text-decoration: none !important; - cursor: pointer; - color: inherit !important; - border: 1px solid transparent; - border-radius: 2px; - background: transparent; -} -div.dt-container .dt-paging .dt-paging-button.current, div.dt-container .dt-paging .dt-paging-button.current:hover { - color: inherit !important; - border: 1px solid rgba(0, 0, 0, 0.3); - background-color: rgba(0, 0, 0, 0.05); - background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(230, 230, 230, 0.05)), color-stop(100%, rgba(0, 0, 0, 0.05))); /* Chrome,Safari4+ */ - background: -webkit-linear-gradient(top, rgba(230, 230, 230, 0.05) 0%, rgba(0, 0, 0, 0.05) 100%); /* Chrome10+,Safari5.1+ */ - background: -moz-linear-gradient(top, rgba(230, 230, 230, 0.05) 0%, rgba(0, 0, 0, 0.05) 100%); /* FF3.6+ */ - background: -ms-linear-gradient(top, rgba(230, 230, 230, 0.05) 0%, rgba(0, 0, 0, 0.05) 100%); /* IE10+ */ - background: -o-linear-gradient(top, rgba(230, 230, 230, 0.05) 0%, rgba(0, 0, 0, 0.05) 100%); /* Opera 11.10+ */ - background: linear-gradient(to bottom, rgba(230, 230, 230, 0.05) 0%, rgba(0, 0, 0, 0.05) 100%); /* W3C */ -} -div.dt-container .dt-paging .dt-paging-button.disabled, div.dt-container .dt-paging .dt-paging-button.disabled:hover, div.dt-container .dt-paging .dt-paging-button.disabled:active { - cursor: default; - color: rgba(0, 0, 0, 0.5) !important; - border: 1px solid transparent; - background: transparent; - box-shadow: none; -} -div.dt-container .dt-paging .dt-paging-button:hover { - color: white !important; - border: 1px solid #111; - background-color: #111; - background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #585858), color-stop(100%, #111)); /* Chrome,Safari4+ */ - background: -webkit-linear-gradient(top, #585858 0%, #111 100%); /* Chrome10+,Safari5.1+ */ - background: -moz-linear-gradient(top, #585858 0%, #111 100%); /* FF3.6+ */ - background: -ms-linear-gradient(top, #585858 0%, #111 100%); /* IE10+ */ - background: -o-linear-gradient(top, #585858 0%, #111 100%); /* Opera 11.10+ */ - background: linear-gradient(to bottom, #585858 0%, #111 100%); /* W3C */ -} -div.dt-container .dt-paging .dt-paging-button:active { - outline: none; - background-color: #0c0c0c; - background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #2b2b2b), color-stop(100%, #0c0c0c)); /* Chrome,Safari4+ */ - background: -webkit-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%); /* Chrome10+,Safari5.1+ */ - background: -moz-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%); /* FF3.6+ */ - background: -ms-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%); /* IE10+ */ - background: -o-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%); /* Opera 11.10+ */ - background: linear-gradient(to bottom, #2b2b2b 0%, #0c0c0c 100%); /* W3C */ - box-shadow: inset 0 0 3px #111; -} -div.dt-container .dt-paging .ellipsis { - padding: 0 1em; -} -div.dt-container .dt-length, -div.dt-container .dt-search, -div.dt-container .dt-info, -div.dt-container .dt-processing, -div.dt-container .dt-paging { - color: inherit; -} -div.dt-container .dataTables_scroll { - clear: both; -} -div.dt-container .dataTables_scroll div.dt-scroll-body { - -webkit-overflow-scrolling: touch; -} -div.dt-container .dataTables_scroll div.dt-scroll-body > table > thead > tr > th, div.dt-container .dataTables_scroll div.dt-scroll-body > table > thead > tr > td, div.dt-container .dataTables_scroll div.dt-scroll-body > table > tbody > tr > th, div.dt-container .dataTables_scroll div.dt-scroll-body > table > tbody > tr > td { - vertical-align: middle; -} -div.dt-container .dataTables_scroll div.dt-scroll-body > table > thead > tr > th > div.dataTables_sizing, -div.dt-container .dataTables_scroll div.dt-scroll-body > table > thead > tr > td > div.dataTables_sizing, div.dt-container .dataTables_scroll div.dt-scroll-body > table > tbody > tr > th > div.dataTables_sizing, -div.dt-container .dataTables_scroll div.dt-scroll-body > table > tbody > tr > td > div.dataTables_sizing { - height: 0; - overflow: hidden; - margin: 0 !important; - padding: 0 !important; -} -div.dt-container.dt-empty-footer tbody > tr:last-child > * { - border-bottom: 1px solid rgba(0, 0, 0, 0.3); -} -div.dt-container.dt-empty-footer .dt-scroll-body { - border-bottom: 1px solid rgba(0, 0, 0, 0.3); -} -div.dt-container.dt-empty-footer .dt-scroll-body tbody > tr:last-child > * { - border-bottom: none; -} - -@media screen and (max-width: 767px) { - div.dt-container div.dt-layout-row { - display: block; - } - div.dt-container div.dt-layout-cell { - display: block; - } - div.dt-container div.dt-layout-cell.dt-full, div.dt-container div.dt-layout-cell.dt-start, div.dt-container div.dt-layout-cell.dt-end { - text-align: center; - } -} -@media screen and (max-width: 640px) { - .dt-container .dt-length, - .dt-container .dt-search { - float: none; - text-align: center; - } - .dt-container .dt-search { - margin-top: 0.5em; - } -} -html.dark { - --dt-row-hover: 255, 255, 255; - --dt-row-stripe: 255, 255, 255; - --dt-column-ordering: 255, 255, 255; -} -html.dark table.dataTable > thead > tr > th, -html.dark table.dataTable > thead > tr > td { - border-bottom: 1px solid rgb(89, 91, 94); -} -html.dark table.dataTable > thead > tr > th:active, -html.dark table.dataTable > thead > tr > td:active { - outline: none; -} -html.dark table.dataTable > tfoot > tr > th, -html.dark table.dataTable > tfoot > tr > td { - border-top: 1px solid rgb(89, 91, 94); -} -html.dark table.dataTable.row-border > tbody > tr > *, html.dark table.dataTable.display > tbody > tr > * { - border-top: 1px solid rgb(64, 67, 70); -} -html.dark table.dataTable.row-border > tbody > tr:first-child > *, html.dark table.dataTable.display > tbody > tr:first-child > * { - border-top: none; -} -html.dark table.dataTable.row-border > tbody > tr.selected + tr.selected > td, html.dark table.dataTable.display > tbody > tr.selected + tr.selected > td { - border-top-color: rgba(13, 110, 253, 0.65); - border-top-color: rgba(var(--dt-row-selected), 0.65); -} -html.dark table.dataTable.cell-border > tbody > tr > th, -html.dark table.dataTable.cell-border > tbody > tr > td { - border-top: 1px solid rgb(64, 67, 70); - border-right: 1px solid rgb(64, 67, 70); -} -html.dark table.dataTable.cell-border > tbody > tr > th:first-child, -html.dark table.dataTable.cell-border > tbody > tr > td:first-child { - border-left: 1px solid rgb(64, 67, 70); -} -html.dark .dt-container.dt-empty-footer table.dataTable { - border-bottom: 1px solid rgb(89, 91, 94); -} -html.dark .dt-container .dt-search input, -html.dark .dt-container .dt-length select { - border: 1px solid rgba(255, 255, 255, 0.2); - background-color: var(--dt-html-background); -} -html.dark .dt-container .dt-paging .dt-paging-button.current, html.dark .dt-container .dt-paging .dt-paging-button.current:hover { - border: 1px solid rgb(89, 91, 94); - background: rgba(255, 255, 255, 0.15); -} -html.dark .dt-container .dt-paging .dt-paging-button.disabled, html.dark .dt-container .dt-paging .dt-paging-button.disabled:hover, html.dark .dt-container .dt-paging .dt-paging-button.disabled:active { - color: #666 !important; -} -html.dark .dt-container .dt-paging .dt-paging-button:hover { - border: 1px solid rgb(53, 53, 53); - background: rgb(53, 53, 53); -} -html.dark .dt-container .dt-paging .dt-paging-button:active { - background: #3a3a3a; -} - -/* - * Overrides for RTL support - */ -*[dir=rtl] table.dataTable thead th, -*[dir=rtl] table.dataTable thead td, -*[dir=rtl] table.dataTable tfoot th, -*[dir=rtl] table.dataTable tfoot td { - text-align: right; -} -*[dir=rtl] table.dataTable th.dt-type-numeric, *[dir=rtl] table.dataTable th.dt-type-date, -*[dir=rtl] table.dataTable td.dt-type-numeric, -*[dir=rtl] table.dataTable td.dt-type-date { - text-align: left; -} -*[dir=rtl] div.dt-container div.dt-layout-cell.dt-start { - text-align: right; -} -*[dir=rtl] div.dt-container div.dt-layout-cell.dt-end { - text-align: left; -} -*[dir=rtl] div.dt-container div.dt-search input { - margin: 0 3px 0 0; -} diff --git a/docker/statistics/public/elite/bower_components/datatables/datatables_2.js b/docker/statistics/public/elite/bower_components/datatables/datatables_2.js deleted file mode 100644 index 7bce48b0..00000000 --- a/docker/statistics/public/elite/bower_components/datatables/datatables_2.js +++ /dev/null @@ -1,13171 +0,0 @@ -/*! DataTables 2.0.8 - * © SpryMedia Ltd - datatables.net/license - */ - -/** - * @summary DataTables - * @description Paginate, search and order HTML tables - * @version 2.0.8 - * @author SpryMedia Ltd - * @contact www.datatables.net - * @copyright SpryMedia Ltd. - * - * This source file is free software, available under the following license: - * MIT license - https://datatables.net/license - * - * This source file is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY - * or FITNESS FOR A PARTICULAR PURPOSE. See the license files for details. - * - * For details please refer to: https://www.datatables.net - */ - -(function( factory ) { - "use strict"; - - if ( typeof define === 'function' && define.amd ) { - // AMD - define( ['jquery'], function ( $ ) { - return factory( $, window, document ); - } ); - } - else if ( typeof exports === 'object' ) { - // CommonJS - // jQuery's factory checks for a global window - if it isn't present then it - // returns a factory function that expects the window object - var jq = require('jquery'); - - if (typeof window === 'undefined') { - module.exports = function (root, $) { - if ( ! root ) { - // CommonJS environments without a window global must pass a - // root. This will give an error otherwise - root = window; - } - - if ( ! $ ) { - $ = jq( root ); - } - - return factory( $, root, root.document ); - }; - } - else { - module.exports = factory( jq, window, window.document ); - } - } - else { - // Browser - window.DataTable = factory( jQuery, window, document ); - } -}(function( $, window, document ) { - "use strict"; - - - var DataTable = function ( selector, options ) - { - // Check if called with a window or jQuery object for DOM less applications - // This is for backwards compatibility - if (DataTable.factory(selector, options)) { - return DataTable; - } - - // When creating with `new`, create a new DataTable, returning the API instance - if (this instanceof DataTable) { - return $(selector).DataTable(options); - } - else { - // Argument switching - options = selector; - } - - var _that = this; - var emptyInit = options === undefined; - var len = this.length; - - if ( emptyInit ) { - options = {}; - } - - // Method to get DT API instance from jQuery object - this.api = function () - { - return new _Api( this ); - }; - - this.each(function() { - // For each initialisation we want to give it a clean initialisation - // object that can be bashed around - var o = {}; - var oInit = len > 1 ? // optimisation for single table case - _fnExtend( o, options, true ) : - options; - - - var i=0, iLen; - var sId = this.getAttribute( 'id' ); - var bInitHandedOff = false; - var defaults = DataTable.defaults; - var $this = $(this); - - - /* Sanity check */ - if ( this.nodeName.toLowerCase() != 'table' ) - { - _fnLog( null, 0, 'Non-table node initialisation ('+this.nodeName+')', 2 ); - return; - } - - $(this).trigger( 'options.dt', oInit ); - - /* Backwards compatibility for the defaults */ - _fnCompatOpts( defaults ); - _fnCompatCols( defaults.column ); - - /* Convert the camel-case defaults to Hungarian */ - _fnCamelToHungarian( defaults, defaults, true ); - _fnCamelToHungarian( defaults.column, defaults.column, true ); - - /* Setting up the initialisation object */ - _fnCamelToHungarian( defaults, $.extend( oInit, $this.data() ), true ); - - - - /* Check to see if we are re-initialising a table */ - var allSettings = DataTable.settings; - for ( i=0, iLen=allSettings.length ; i').prependTo(this), - fastData: function (row, column, type) { - return _fnGetCellData(oSettings, row, column, type); - } - } ); - oSettings.nTable = this; - oSettings.oInit = oInit; - - allSettings.push( oSettings ); - - // Make a single API instance available for internal handling - oSettings.api = new _Api( oSettings ); - - // Need to add the instance after the instance after the settings object has been added - // to the settings array, so we can self reference the table instance if more than one - oSettings.oInstance = (_that.length===1) ? _that : $this.dataTable(); - - // Backwards compatibility, before we apply all the defaults - _fnCompatOpts( oInit ); - - // If the length menu is given, but the init display length is not, use the length menu - if ( oInit.aLengthMenu && ! oInit.iDisplayLength ) - { - oInit.iDisplayLength = Array.isArray(oInit.aLengthMenu[0]) - ? oInit.aLengthMenu[0][0] - : $.isPlainObject( oInit.aLengthMenu[0] ) - ? oInit.aLengthMenu[0].value - : oInit.aLengthMenu[0]; - } - - // Apply the defaults and init options to make a single init object will all - // options defined from defaults and instance options. - oInit = _fnExtend( $.extend( true, {}, defaults ), oInit ); - - - // Map the initialisation options onto the settings object - _fnMap( oSettings.oFeatures, oInit, [ - "bPaginate", - "bLengthChange", - "bFilter", - "bSort", - "bSortMulti", - "bInfo", - "bProcessing", - "bAutoWidth", - "bSortClasses", - "bServerSide", - "bDeferRender" - ] ); - _fnMap( oSettings, oInit, [ - "ajax", - "fnFormatNumber", - "sServerMethod", - "aaSorting", - "aaSortingFixed", - "aLengthMenu", - "sPaginationType", - "iStateDuration", - "bSortCellsTop", - "iTabIndex", - "sDom", - "fnStateLoadCallback", - "fnStateSaveCallback", - "renderer", - "searchDelay", - "rowId", - "caption", - "layout", - [ "iCookieDuration", "iStateDuration" ], // backwards compat - [ "oSearch", "oPreviousSearch" ], - [ "aoSearchCols", "aoPreSearchCols" ], - [ "iDisplayLength", "_iDisplayLength" ] - ] ); - _fnMap( oSettings.oScroll, oInit, [ - [ "sScrollX", "sX" ], - [ "sScrollXInner", "sXInner" ], - [ "sScrollY", "sY" ], - [ "bScrollCollapse", "bCollapse" ] - ] ); - _fnMap( oSettings.oLanguage, oInit, "fnInfoCallback" ); - - /* Callback functions which are array driven */ - _fnCallbackReg( oSettings, 'aoDrawCallback', oInit.fnDrawCallback ); - _fnCallbackReg( oSettings, 'aoStateSaveParams', oInit.fnStateSaveParams ); - _fnCallbackReg( oSettings, 'aoStateLoadParams', oInit.fnStateLoadParams ); - _fnCallbackReg( oSettings, 'aoStateLoaded', oInit.fnStateLoaded ); - _fnCallbackReg( oSettings, 'aoRowCallback', oInit.fnRowCallback ); - _fnCallbackReg( oSettings, 'aoRowCreatedCallback', oInit.fnCreatedRow ); - _fnCallbackReg( oSettings, 'aoHeaderCallback', oInit.fnHeaderCallback ); - _fnCallbackReg( oSettings, 'aoFooterCallback', oInit.fnFooterCallback ); - _fnCallbackReg( oSettings, 'aoInitComplete', oInit.fnInitComplete ); - _fnCallbackReg( oSettings, 'aoPreDrawCallback', oInit.fnPreDrawCallback ); - - oSettings.rowIdFn = _fnGetObjectDataFn( oInit.rowId ); - - /* Browser support detection */ - _fnBrowserDetect( oSettings ); - - var oClasses = oSettings.oClasses; - - $.extend( oClasses, DataTable.ext.classes, oInit.oClasses ); - $this.addClass( oClasses.table ); - - if (! oSettings.oFeatures.bPaginate) { - oInit.iDisplayStart = 0; - } - - if ( oSettings.iInitDisplayStart === undefined ) - { - /* Display start point, taking into account the save saving */ - oSettings.iInitDisplayStart = oInit.iDisplayStart; - oSettings._iDisplayStart = oInit.iDisplayStart; - } - - /* Language definitions */ - var oLanguage = oSettings.oLanguage; - $.extend( true, oLanguage, oInit.oLanguage ); - - if ( oLanguage.sUrl ) - { - /* Get the language definitions from a file - because this Ajax call makes the language - * get async to the remainder of this function we use bInitHandedOff to indicate that - * _fnInitialise will be fired by the returned Ajax handler, rather than the constructor - */ - $.ajax( { - dataType: 'json', - url: oLanguage.sUrl, - success: function ( json ) { - _fnCamelToHungarian( defaults.oLanguage, json ); - $.extend( true, oLanguage, json, oSettings.oInit.oLanguage ); - - _fnCallbackFire( oSettings, null, 'i18n', [oSettings], true); - _fnInitialise( oSettings ); - }, - error: function () { - // Error occurred loading language file - _fnLog( oSettings, 0, 'i18n file loading error', 21 ); - - // continue on as best we can - _fnInitialise( oSettings ); - } - } ); - bInitHandedOff = true; - } - else { - _fnCallbackFire( oSettings, null, 'i18n', [oSettings]); - } - - /* - * Columns - * See if we should load columns automatically or use defined ones - */ - var columnsInit = []; - var thead = this.getElementsByTagName('thead'); - var initHeaderLayout = _fnDetectHeader( oSettings, thead[0] ); - - // If we don't have a columns array, then generate one with nulls - if ( oInit.aoColumns ) { - columnsInit = oInit.aoColumns; - } - else if ( initHeaderLayout.length ) { - for ( i=0, iLen=initHeaderLayout[0].length ; i').appendTo( $this ); - } - - caption.html( oSettings.caption ); - } - - // Store the caption side, so we can remove the element from the document - // when creating the element - if (caption.length) { - caption[0]._captionSide = caption.css('caption-side'); - oSettings.captionNode = caption[0]; - } - - if ( thead.length === 0 ) { - thead = $('').appendTo($this); - } - oSettings.nTHead = thead[0]; - $('tr', thead).addClass(oClasses.thead.row); - - var tbody = $this.children('tbody'); - if ( tbody.length === 0 ) { - tbody = $('').insertAfter(thead); - } - oSettings.nTBody = tbody[0]; - - var tfoot = $this.children('tfoot'); - if ( tfoot.length === 0 ) { - // If we are a scrolling table, and no footer has been given, then we need to create - // a tfoot element for the caption element to be appended to - tfoot = $('').appendTo($this); - } - oSettings.nTFoot = tfoot[0]; - $('tr', tfoot).addClass(oClasses.tfoot.row); - - // Check if there is data passing into the constructor - if ( oInit.aaData ) { - for ( i=0 ; iafnSortData - * for searching data. - * - * The functions defined take a single parameter: - * - * 1. `{*}` Data from the column cell to be prepared for searching - * - * Each function is expected to return: - * - * * `{string|null}` Formatted string that will be used for the searching. - * - * @type object - * @default {} - * - * @example - * $.fn.dataTable.ext.type.search['title-numeric'] = function ( d ) { - * return d.replace(/\n/g," ").replace( /<.*?>/g, "" ); - * } - */ - search: {}, - - - /** - * Type based ordering. - * - * The column type tells DataTables what ordering to apply to the table - * when a column is sorted upon. The order for each type that is defined, - * is defined by the functions available in this object. - * - * Each ordering option can be described by three properties added to - * this object: - * - * * `{type}-pre` - Pre-formatting function - * * `{type}-asc` - Ascending order function - * * `{type}-desc` - Descending order function - * - * All three can be used together, only `{type}-pre` or only - * `{type}-asc` and `{type}-desc` together. It is generally recommended - * that only `{type}-pre` is used, as this provides the optimal - * implementation in terms of speed, although the others are provided - * for compatibility with existing Javascript sort functions. - * - * `{type}-pre`: Functions defined take a single parameter: - * - * 1. `{*}` Data from the column cell to be prepared for ordering - * - * And return: - * - * * `{*}` Data to be sorted upon - * - * `{type}-asc` and `{type}-desc`: Functions are typical Javascript sort - * functions, taking two parameters: - * - * 1. `{*}` Data to compare to the second parameter - * 2. `{*}` Data to compare to the first parameter - * - * And returning: - * - * * `{*}` Ordering match: <0 if first parameter should be sorted lower - * than the second parameter, ===0 if the two parameters are equal and - * >0 if the first parameter should be sorted height than the second - * parameter. - * - * @type object - * @default {} - * - * @example - * // Numeric ordering of formatted numbers with a pre-formatter - * $.extend( $.fn.dataTable.ext.type.order, { - * "string-pre": function(x) { - * a = (a === "-" || a === "") ? 0 : a.replace( /[^\d\-\.]/g, "" ); - * return parseFloat( a ); - * } - * } ); - * - * @example - * // Case-sensitive string ordering, with no pre-formatting method - * $.extend( $.fn.dataTable.ext.order, { - * "string-case-asc": function(x,y) { - * return ((x < y) ? -1 : ((x > y) ? 1 : 0)); - * }, - * "string-case-desc": function(x,y) { - * return ((x < y) ? 1 : ((x > y) ? -1 : 0)); - * } - * } ); - */ - order: {} - }, - - /** - * Unique DataTables instance counter - * - * @type int - * @private - */ - _unique: 0, - - - // - // Depreciated - // The following properties are retained for backwards compatibility only. - // The should not be used in new projects and will be removed in a future - // version - // - - /** - * Version check function. - * @type function - * @depreciated Since 1.10 - */ - fnVersionCheck: DataTable.fnVersionCheck, - - - /** - * Index for what 'this' index API functions should use - * @type int - * @deprecated Since v1.10 - */ - iApiIndex: 0, - - - /** - * Software version - * @type string - * @deprecated Since v1.10 - */ - sVersion: DataTable.version - }; - - - // - // Backwards compatibility. Alias to pre 1.10 Hungarian notation counter parts - // - $.extend( _ext, { - afnFiltering: _ext.search, - aTypes: _ext.type.detect, - ofnSearch: _ext.type.search, - oSort: _ext.type.order, - afnSortData: _ext.order, - aoFeatures: _ext.feature, - oStdClasses: _ext.classes, - oPagination: _ext.pager - } ); - - - $.extend( DataTable.ext.classes, { - container: 'dt-container', - empty: { - row: 'dt-empty' - }, - info: { - container: 'dt-info' - }, - length: { - container: 'dt-length', - select: 'dt-input' - }, - order: { - canAsc: 'dt-orderable-asc', - canDesc: 'dt-orderable-desc', - isAsc: 'dt-ordering-asc', - isDesc: 'dt-ordering-desc', - none: 'dt-orderable-none', - position: 'sorting_' - }, - processing: { - container: 'dt-processing' - }, - scrolling: { - body: 'dt-scroll-body', - container: 'dt-scroll', - footer: { - self: 'dt-scroll-foot', - inner: 'dt-scroll-footInner' - }, - header: { - self: 'dt-scroll-head', - inner: 'dt-scroll-headInner' - } - }, - search: { - container: 'dt-search', - input: 'dt-input' - }, - table: 'dataTable', - tbody: { - cell: '', - row: '' - }, - thead: { - cell: '', - row: '' - }, - tfoot: { - cell: '', - row: '' - }, - paging: { - active: 'current', - button: 'dt-paging-button', - container: 'dt-paging', - disabled: 'disabled' - } - } ); - - - /* - * It is useful to have variables which are scoped locally so only the - * DataTables functions can access them and they don't leak into global space. - * At the same time these functions are often useful over multiple files in the - * core and API, so we list, or at least document, all variables which are used - * by DataTables as private variables here. This also ensures that there is no - * clashing of variable names and that they can easily referenced for reuse. - */ - - - // Defined else where - // _selector_run - // _selector_opts - // _selector_row_indexes - - var _ext; // DataTable.ext - var _Api; // DataTable.Api - var _api_register; // DataTable.Api.register - var _api_registerPlural; // DataTable.Api.registerPlural - - var _re_dic = {}; - var _re_new_lines = /[\r\n\u2028]/g; - var _re_html = /<([^>]*>)/g; - var _max_str_len = Math.pow(2, 28); - - // This is not strict ISO8601 - Date.parse() is quite lax, although - // implementations differ between browsers. - var _re_date = /^\d{2,4}[./-]\d{1,2}[./-]\d{1,2}([T ]{1}\d{1,2}[:.]\d{2}([.:]\d{2})?)?$/; - - // Escape regular expression special characters - var _re_escape_regex = new RegExp( '(\\' + [ '/', '.', '*', '+', '?', '|', '(', ')', '[', ']', '{', '}', '\\', '$', '^', '-' ].join('|\\') + ')', 'g' ); - - // https://en.wikipedia.org/wiki/Foreign_exchange_market - // - \u20BD - Russian ruble. - // - \u20a9 - South Korean Won - // - \u20BA - Turkish Lira - // - \u20B9 - Indian Rupee - // - R - Brazil (R$) and South Africa - // - fr - Swiss Franc - // - kr - Swedish krona, Norwegian krone and Danish krone - // - \u2009 is thin space and \u202F is narrow no-break space, both used in many - // - Ƀ - Bitcoin - // - Ξ - Ethereum - // standards as thousands separators. - var _re_formatted_numeric = /['\u00A0,$£€¥%\u2009\u202F\u20BD\u20a9\u20BArfkɃΞ]/gi; - - - var _empty = function ( d ) { - return !d || d === true || d === '-' ? true : false; - }; - - - var _intVal = function ( s ) { - var integer = parseInt( s, 10 ); - return !isNaN(integer) && isFinite(s) ? integer : null; - }; - - // Convert from a formatted number with characters other than `.` as the - // decimal place, to a Javascript number - var _numToDecimal = function ( num, decimalPoint ) { - // Cache created regular expressions for speed as this function is called often - if ( ! _re_dic[ decimalPoint ] ) { - _re_dic[ decimalPoint ] = new RegExp( _fnEscapeRegex( decimalPoint ), 'g' ); - } - return typeof num === 'string' && decimalPoint !== '.' ? - num.replace( /\./g, '' ).replace( _re_dic[ decimalPoint ], '.' ) : - num; - }; - - - var _isNumber = function ( d, decimalPoint, formatted ) { - var type = typeof d; - var strType = type === 'string'; - - if ( type === 'number' || type === 'bigint') { - return true; - } - - // If empty return immediately so there must be a number if it is a - // formatted string (this stops the string "k", or "kr", etc being detected - // as a formatted number for currency - if ( _empty( d ) ) { - return true; - } - - if ( decimalPoint && strType ) { - d = _numToDecimal( d, decimalPoint ); - } - - if ( formatted && strType ) { - d = d.replace( _re_formatted_numeric, '' ); - } - - return !isNaN( parseFloat(d) ) && isFinite( d ); - }; - - - // A string without HTML in it can be considered to be HTML still - var _isHtml = function ( d ) { - return _empty( d ) || typeof d === 'string'; - }; - - // Is a string a number surrounded by HTML? - var _htmlNumeric = function ( d, decimalPoint, formatted ) { - if ( _empty( d ) ) { - return true; - } - - // input and select strings mean that this isn't just a number - if (typeof d === 'string' && d.match(/<(input|select)/i)) { - return null; - } - - var html = _isHtml( d ); - return ! html ? - null : - _isNumber( _stripHtml( d ), decimalPoint, formatted ) ? - true : - null; - }; - - - var _pluck = function ( a, prop, prop2 ) { - var out = []; - var i=0, ien=a.length; - - // Could have the test in the loop for slightly smaller code, but speed - // is essential here - if ( prop2 !== undefined ) { - for ( ; i _max_str_len) { - throw new Error('Exceeded max str len'); - } - - var previous; - - input = input.replace(_re_html, ''); // Complete tags - - // Safety for incomplete script tag - use do / while to ensure that - // we get all instances - do { - previous = input; - input = input.replace(/ - - - - - - - - - - - - - - - - - - diff --git a/docker/statistics/resources/views/general_settings/integrated_payment.blade.php b/docker/statistics/resources/views/general_settings/integrated_payment.blade.php deleted file mode 100644 index 0b072ebc..00000000 --- a/docker/statistics/resources/views/general_settings/integrated_payment.blade.php +++ /dev/null @@ -1,67 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') -
    -
    -

    {{ __('general_settings.subscription_tracking') }}

    -
    -
    - -
    -
    - - @include('flash::message') - -
    - {{ Form::open(['route' => ['general_settings.save_integrated_payment']]) }} - -

    {{ __('layout.integrated_payment_solutions') }}

    -

    {{ __('general_settings.description') }}

    -
    -
    -

    {{ __('general_settings.save_integrated_payment_description') }}

    -
    -
    - -
    - - @foreach($integrated_payments as $integrated_payment) -

    {{ $integrated_payment->name }}

    -
    -
    - - - -
    -
    - -
    - @endforeach - - {{ Form::button(__('general_settings.save_settings'), ['type' => 'submit', 'class' => 'btn btn-success waves-effect waves-light m-r-10']) }} - {{ Form::button(__('general_settings.cancel'), ['type' => 'reset', 'class' => 'btn btn-default waves-effect waves-light']) }} - - {{ Form::close() }} -
    -@endsection - -@push('scripts') - - - -@endpush - diff --git a/docker/statistics/resources/views/general_settings/popup.blade.php b/docker/statistics/resources/views/general_settings/popup.blade.php deleted file mode 100644 index 884b30cd..00000000 --- a/docker/statistics/resources/views/general_settings/popup.blade.php +++ /dev/null @@ -1,31 +0,0 @@ - - - -@push('scripts') - -@endpush diff --git a/docker/statistics/resources/views/general_settings/subscription.blade.php b/docker/statistics/resources/views/general_settings/subscription.blade.php deleted file mode 100644 index dad3a890..00000000 --- a/docker/statistics/resources/views/general_settings/subscription.blade.php +++ /dev/null @@ -1,271 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - - - - - -@endpush - -@section('content') - -
    -
    -

    {{ __('general_settings.subscription_tracking') }}

    -
    -
    - -
    -
    - -
    -
    - @include('flash::message') - -
    - @if (session()->has('streamline_setup')) -

    {{ __('general_settings.streamline_setup_2') }}

    - @endif - {{ Form::open(['route' => isset($subscriptions) ? ['subscriptions.update_subscription_tracking', $subscriptions->id ]: 'subscriptions.save_subscription_tracking']) }} -
    -
    -
    -

    {{ __('general_settings.subscription_tracking') }}

    -

    {{ __('general_settings.description') }}

    -
    -
    -

    {{ __('general_settings.subscription_tracking_description') }}

    -
    -
    - -

    {{ __('general_settings.options') }}

    -
    -
    - {{ Form::radio('enable_subscription_tracking', 0,($general_settings->enable_subscription_tracking == 0 ? true : false),['id'=>'disable_subscription_tracking_radio']) }}  {{ Form::label('disable_subscription_tracking_radio',__('general_settings.disable')) }}   -
    - {{ Form::radio('enable_subscription_tracking', 1, ($general_settings->enable_subscription_tracking == 1 ? true : false),['id'=>'enable_subscription_tracking_radio']) }} {{ Form::label('enable_subscription_tracking_radio',__('general_settings.enable'))}} -
    -
    - - - -
    -
    -
    -
    - -
    - - @if (session()->has('streamline_setup')) - {{ Form::button(__('general_settings.save_settings'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - @else - {{ Form::button( isset($subscriptions) ?__('general_settings.update_settings') : __('general_settings.save_settings'),['type'=>'submit','id'=> isset($subscriptions) ? 'update_submit' : 'sub_submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }} - @endif - {{ Form::close() }} - -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - -@endpush - diff --git a/docker/statistics/resources/views/general_settings/subscription_index.blade.php b/docker/statistics/resources/views/general_settings/subscription_index.blade.php deleted file mode 100644 index 3f1acb5d..00000000 --- a/docker/statistics/resources/views/general_settings/subscription_index.blade.php +++ /dev/null @@ -1,102 +0,0 @@ -@extends('layouts.main') - -@push('styles') - - -@endpush - -@section('content') - -
    -
    -

    {{ __('general_settings.subscription_tracking') }}

    -
    -
    - -
    -
    - -@include('flash::message') - -
    -
    - -
    -
    - {{--

    {{ __('drugs.export_data_to_csv_and_excel') }}

    --}} -
    - - - - - - - - - - - - - - - - - - - - - - @forelse($subscriptions as $val) - - - - - - - - @empty - @endforelse - - -
    {{ __('general_settings.start_date') }}{{ __('general_settings.sub_expiry_date') }}{{ __('general_settings.set_interval_sub') }}{{ __('general_settings.sub_suspension_date') }}
    {{ __('general_settings.start_date') }}{{ __('general_settings.sub_expiry_date') }}{{ __('general_settings.set_interval_sub') }}{{ __('general_settings.sub_suspension_date') }}
    {{ streamline_date($val->start_date) }}{{ streamline_date($val->end_date) }}{{ $val->duration }}{{ streamline_date($val->suspension_date) }} - @if($val->is_active == '1') - {{ __('general_settings.update') }} - @endif - {{-- {{ Form::model($drug->id ,['method' => 'POST', 'route' => ['drugs.activate', $drug->id]]) }} - - {{ Form::close() }} --}} -
    -
    -
    -
    -@endsection - -@push('scripts') - - - - - - - - - - - - -@endpush \ No newline at end of file diff --git a/docker/statistics/resources/views/general_settings/subscription_noti.blade.php b/docker/statistics/resources/views/general_settings/subscription_noti.blade.php deleted file mode 100644 index d84a93ad..00000000 --- a/docker/statistics/resources/views/general_settings/subscription_noti.blade.php +++ /dev/null @@ -1,11 +0,0 @@ -@php use Streamline\Enums\Roles; @endphp - -{{-- alert notification --}} -@if (Auth::user()->hasRole('Admin')) - @if(warning_duration()) -
    - - {{ show_subscription_reminder_message()}} -
    - @endif -@endif \ No newline at end of file diff --git a/docker/statistics/scripts/add_submodules.sh b/docker/statistics/scripts/add_submodules.sh deleted file mode 100644 index a8cc7997..00000000 --- a/docker/statistics/scripts/add_submodules.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/bash - -modules=('Cancer-streamline_cancer' 'Pharmacy-streamline_pharmacy' 'Payroll-streamline_payroll' 'PatientFinance-streamline_patient_finance' 'PatientDiscounts-streamline_patient_discounts' 'Maternity-streamline_maternity' 'Journals-streamline_journals' 'Invoices-streamline_invoices' 'Investigations-streamline_investigations' 'Insurance-streamline_insurance' 'Hiv-streamline_hiv' 'FinanceReports-streamline_finance_reports' -'Finance-streamline_finance' 'EyeClinic-streamline_eye_clinic' 'Expenses-streamline_expenses' 'Diabetes-streamline_diabetes' 'Budgets-streamline_budgets' 'Banking-streamline_banking' 'Antenatal-streamline_ante_natal' 'Stores-streamline_stores' 'Theatre-streamline_theatre' 'Reports-streamline_reports' 'WardManagement-streamline_ward_management') - -for module in "${modules[@]}"; do - module_array=($(echo "$module" | sed 's/-/ /g')) - - echo "Cloning ${module_array[0]}" - - if [ ! -d Modules/"${module_array[0]}" ]; then - mkdir -p Modules/"${module_array[0]}"; - fi - - cd Modules/"${module_array[0]}" || continue - - git clone git@bitbucket.org:dcsammi/"${module_array[1]}".git . || echo "Could not clone ${module_array[0]}" - - cd ../../ -done diff --git a/docker/statistics/scripts/add_submodules_local.sh b/docker/statistics/scripts/add_submodules_local.sh deleted file mode 100644 index 65c58ed3..00000000 --- a/docker/statistics/scripts/add_submodules_local.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/bash - -modules=('Cancer-streamline_cancer' 'Pharmacy-streamline_pharmacy' 'Payroll-streamline_payroll' 'PatientFinance-streamline_patient_finance' 'PatientDiscounts-streamline_patient_discounts' 'Maternity-streamline_maternity' 'Journals-streamline_journals' 'Invoices-streamline_invoices' 'Investigations-streamline_investigations' 'Insurance-streamline_insurance' 'Hiv-streamline_hiv' 'FinanceReports-streamline_finance_reports' -'Finance-streamline_finance' 'EyeClinic-streamline_eye_clinic' 'Expenses-streamline_expenses' 'Diabetes-streamline_diabetes' 'Budgets-streamline_budgets' 'Banking-streamline_banking' 'Antenatal-streamline_ante_natal' 'Stores-streamline_stores' 'Theatre-streamline_theatre' 'Reports-streamline_reports' 'WardManagement-streamline_ward_management') - -for module in "${modules[@]}"; do - module_array=($(echo "$module" | sed 's/-/ /g')) - - echo "Cloning ${module_array[0]}" - - if [ ! -d Modules/"${module_array[0]}" ]; then - mkdir -p Modules/"${module_array[0]}"; - fi - - cd Modules/"${module_array[0]}" || continue - - git clone https://bitbucket.org/dcsammi/"${module_array[1]}".git . || echo "Could not clone ${module_array[0]}" - - cd ../../ -done diff --git a/docker/statistics/scripts/checkout_to_branch.sh b/docker/statistics/scripts/checkout_to_branch.sh deleted file mode 100644 index fcdc5a674..00000000 --- a/docker/statistics/scripts/checkout_to_branch.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/bash - -if [[ -z "$branch" ]]; then - echo "Please specify the branch you want to checkout to" - exit; -fi - -modules=('Cancer' 'Pharmacy' 'Payroll' 'PatientFinance' 'PatientDiscounts' 'Maternity' 'Journals' 'Invoices' 'Investigations' 'Insurance' 'Hiv' 'FinanceReports' -'Finance' 'EyeClinic' 'Expenses' 'Diabetes' 'Budgets' 'Banking' 'Antenatal' 'Stores' 'Theatre' 'Reports' 'WardManagement') - -for module in "${modules[@]}"; do - echo "Status: ${module}" - - cd Modules/"$module" || continue - - git checkout "$branch" - - cd ../../ -done - -git checkout "$branch" diff --git a/docker/statistics/scripts/remove_submodules.sh b/docker/statistics/scripts/remove_submodules.sh deleted file mode 100644 index e0c5cc5d..00000000 --- a/docker/statistics/scripts/remove_submodules.sh +++ /dev/null @@ -1,78 +0,0 @@ -#!/bin/bash - -# replace content for .gitmodules files to enable deinit -cat .gitmodules.example > .gitmodules - -git submodule deinit -f Modules/WardManagement -rm -R Modules/WardManagement - -git submodule deinit -f Modules/Investigations -rm -R Modules/Investigations - -git submodule deinit -f Modules/Hiv -rm -R Modules/Hiv - -git submodule deinit -f Modules/Invoices -rm -R Modules/Invoices - -git submodule deinit -f Modules/Journals -rm -R Modules/Journals - -git submodule deinit -f Modules/Maternity -rm -R Modules/Maternity - -git submodule deinit -f Modules/PatientDiscounts -rm -R Modules/PatientDiscounts - -git submodule deinit -f Modules/PatientFinance -rm -R Modules/PatientFinance - -git submodule deinit -f Modules/Payroll -rm -R Modules/Payroll - -git submodule deinit -f Modules/Pharmacy -rm -R Modules/Pharmacy - -git submodule deinit -f Modules/Cancer -rm -R Modules/Cancer - -git submodule deinit -f Modules/Reports -rm -R Modules/Reports - -git submodule deinit -f Modules/Theatre -rm -R Modules/Theatre - -git submodule deinit -f Modules/Stores -rm -R Modules/Stores - -git submodule deinit -f Modules/Antenatal -rm -R Modules/Antenatal - -git submodule deinit -f Modules/Banking -rm -R Modules/Banking - -git submodule deinit -f Modules/Budgets -rm -R Modules/Budgets - -git submodule deinit -f Modules/Diabetes -rm -R Modules/Diabetes - -git submodule deinit -f Modules/Expenses -rm -R Modules/Expenses - -git submodule deinit -f Modules/EyeClinic -rm -R Modules/EyeClinic - -git submodule deinit -f Modules/Finance -rm -R Modules/Finance - -git submodule deinit -f Modules/FinanceReports -rm -R Modules/FinanceReports - -git submodule deinit -f Modules/Insurance -rm -R Modules/Insurance - -# finally delete the .git/modules folder -rm -rf .git/modules/Modules - -cat /dev/null > .gitmodules diff --git a/docker/statistics/scripts/update_instance.sh b/docker/statistics/scripts/update_instance.sh deleted file mode 100644 index d939f656..00000000 --- a/docker/statistics/scripts/update_instance.sh +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/bash - -function get_branch() { - git symbolic-ref --short -q HEAD || echo "main"; -} - -modules=('Cancer' 'Pharmacy' 'Payroll' 'PatientFinance' 'PatientDiscounts' 'Maternity' 'Journals' 'Invoices' 'Investigations' 'Insurance' 'Hiv' 'FinanceReports' -'Finance' 'EyeClinic' 'Expenses' 'Diabetes' 'Budgets' 'Banking' 'Antenatal' 'Stores' 'Theatre' 'Reports' 'WardManagement') - -for module in "${modules[@]}"; do - echo "Status: ${module}" - - cd Modules/"$module" || continue - - branch_name=`get_branch`; - - git pull origin "${branch_name}" - - cd ../../ -done - -echo "Status: Updating main" -branch_name=`get_branch`; -git pull origin "${branch_name}" -php artisan migrate -php artisan db:seed --class=PermissionTableSeeder -php artisan db:seed --class=PermissionsCategoryTableSeeder -composer install - diff --git a/docker/statistics/scripts/update_instance_all_branches.sh b/docker/statistics/scripts/update_instance_all_branches.sh deleted file mode 100644 index a31a0381..00000000 --- a/docker/statistics/scripts/update_instance_all_branches.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/bash - -modules=('Cancer' 'Pharmacy' 'Payroll' 'PatientFinance' 'PatientDiscounts' 'Maternity' 'Journals' 'Invoices' 'Investigations' 'Insurance' 'Hiv' 'FinanceReports' -'Finance' 'EyeClinic' 'Expenses' 'Diabetes' 'Budgets' 'Banking' 'Antenatal' 'Stores' 'Theatre' 'Reports' 'WardManagement') - -for module in "${modules[@]}"; do - echo "Status: ${module}" - - cd Modules/"$module" || continue - - git pull - - cd ../../ -done - -echo "Status: Updating main" -git pull -php artisan migrate -composer install - diff --git a/docker/statistics/storage/framework/cache/data/1d/d8/1dd876c168a17c7c91ee82b2b749aed816155413 b/docker/statistics/storage/framework/cache/data/1d/d8/1dd876c168a17c7c91ee82b2b749aed816155413 deleted file mode 100644 index b62b0f69..00000000 --- a/docker/statistics/storage/framework/cache/data/1d/d8/1dd876c168a17c7c91ee82b2b749aed816155413 +++ /dev/null @@ -1 +0,0 @@ -1736856164b:1; \ No newline at end of file diff --git a/docker/statistics/storage/framework/cache/data/85/5f/855f92484c8c414d36c1b25cb24876e30229cbbf b/docker/statistics/storage/framework/cache/data/85/5f/855f92484c8c414d36c1b25cb24876e30229cbbf deleted file mode 100644 index cd1c8a7b..00000000 --- a/docker/statistics/storage/framework/cache/data/85/5f/855f92484c8c414d36c1b25cb24876e30229cbbf +++ /dev/null @@ -1 +0,0 @@ -1736942420a:3:{s:5:"alias";a:8:{s:1:"a";s:2:"id";s:1:"b";s:4:"name";s:1:"c";s:22:"permission_category_id";s:1:"d";s:11:"description";s:1:"e";s:16:"long_description";s:1:"f";s:10:"guard_name";s:1:"g";s:4:"crud";s:1:"r";s:5:"roles";}s:11:"permissions";a:834:{i:0;a:8:{s:1:"a";i:1;s:1:"b";s:12:"clinics-list";s:1:"c";i:12;s:1:"d";s:12:"View clinics";s:1:"e";s:12:"View clinics";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:8:{i:0;i:1;i:1;i:11;i:2;i:31;i:3;i:34;i:4;i:39;i:5;i:40;i:6;i:41;i:7;i:49;}}i:1;a:8:{s:1:"a";i:2;s:1:"b";s:14:"clinics-create";s:1:"c";i:12;s:1:"d";s:14:"Create Clinics";s:1:"e";s:14:"Create Clinics";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:2;a:8:{s:1:"a";i:3;s:1:"b";s:12:"clinics-edit";s:1:"c";i:12;s:1:"d";s:12:"Edit Clinics";s:1:"e";s:12:"Edit Clinics";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:3;a:8:{s:1:"a";i:4;s:1:"b";s:14:"clinics-delete";s:1:"c";i:12;s:1:"d";s:18:"Deactivate Clinics";s:1:"e";s:18:"Deactivate Clinics";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:4;a:8:{s:1:"a";i:5;s:1:"b";s:30:"investigations-historical-list";s:1:"c";i:10;s:1:"d";s:30:"View historical investigations";s:1:"e";s:30:"View historical investigations";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:10:{i:0;i:1;i:1;i:9;i:2;i:11;i:3;i:18;i:4;i:31;i:5;i:38;i:6;i:39;i:7;i:40;i:8;i:41;i:9;i:49;}}i:5;a:8:{s:1:"a";i:6;s:1:"b";s:26:"investigation-results-list";s:1:"c";i:10;s:1:"d";s:26:"View investigation results";s:1:"e";s:26:"View investigation results";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:9:{i:0;i:1;i:1;i:9;i:2;i:11;i:3;i:18;i:4;i:31;i:5;i:38;i:6;i:39;i:7;i:40;i:8;i:49;}}i:6;a:8:{s:1:"a";i:7;s:1:"b";s:27:"investigation-results-alter";s:1:"c";i:10;s:1:"d";s:27:"Alter investigation results";s:1:"e";s:27:"Alter investigation results";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:4:{i:0;i:1;i:1;i:38;i:2;i:40;i:3;i:49;}}i:7;a:8:{s:1:"a";i:8;s:1:"b";s:27:"investigations-authenticate";s:1:"c";i:10;s:1:"d";s:34:"Authenticate investigation results";s:1:"e";s:34:"Authenticate investigation results";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:5:{i:0;i:1;i:1;i:38;i:2;i:39;i:3;i:40;i:4;i:49;}}i:8;a:8:{s:1:"a";i:9;s:1:"b";s:23:"investigations-incoming";s:1:"c";i:10;s:1:"d";s:35:"View incoming investigation results";s:1:"e";s:35:"View incoming investigation results";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:9:{i:0;i:1;i:1;i:9;i:2;i:11;i:3;i:18;i:4;i:31;i:5;i:38;i:6;i:39;i:7;i:40;i:8;i:49;}}i:9;a:8:{s:1:"a";i:10;s:1:"b";s:17:"messageboard-list";s:1:"c";i:11;s:1:"d";s:13:"View messages";s:1:"e";s:13:"View messages";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:20:{i:0;i:1;i:1;i:2;i:2;i:4;i:3;i:11;i:4;i:15;i:5;i:18;i:6;i:19;i:7;i:21;i:8;i:30;i:9;i:31;i:10;i:33;i:11;i:34;i:12;i:37;i:13;i:38;i:14;i:39;i:15;i:40;i:16;i:41;i:17;i:42;i:18;i:43;i:19;i:49;}}i:10;a:8:{s:1:"a";i:11;s:1:"b";s:19:"messageboard-create";s:1:"c";i:11;s:1:"d";s:14:"Create message";s:1:"e";s:14:"Create message";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:12:{i:0;i:1;i:1;i:4;i:2;i:18;i:3;i:21;i:4;i:30;i:5;i:31;i:6;i:33;i:7;i:34;i:8;i:38;i:9;i:40;i:10;i:42;i:11;i:49;}}i:11;a:8:{s:1:"a";i:12;s:1:"b";s:17:"messageboard-edit";s:1:"c";i:11;s:1:"d";s:12:"Edit message";s:1:"e";s:12:"Edit message";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:3:{i:0;i:1;i:1;i:18;i:2;i:49;}}i:12;a:8:{s:1:"a";i:13;s:1:"b";s:19:"messageboard-delete";s:1:"c";i:11;s:1:"d";s:14:"Delete message";s:1:"e";s:14:"Delete message";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:13;a:8:{s:1:"a";i:14;s:1:"b";s:26:"messageboard-inactive-list";s:1:"c";i:11;s:1:"d";s:22:"View inactive messages";s:1:"e";s:22:"View inactive messages";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:14;a:8:{s:1:"a";i:15;s:1:"b";s:21:"messageboard-activate";s:1:"c";i:11;s:1:"d";s:16:"Activate message";s:1:"e";s:16:"Activate message";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:15;a:8:{s:1:"a";i:16;s:1:"b";s:10:"users-list";s:1:"c";i:1;s:1:"d";s:10:"View users";s:1:"e";s:10:"View users";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:16;a:8:{s:1:"a";i:17;s:1:"b";s:12:"users-create";s:1:"c";i:1;s:1:"d";s:11:"Create user";s:1:"e";s:11:"Create user";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:17;a:8:{s:1:"a";i:18;s:1:"b";s:10:"users-edit";s:1:"c";i:1;s:1:"d";s:9:"Edit user";s:1:"e";s:9:"Edit user";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:18;a:8:{s:1:"a";i:19;s:1:"b";s:12:"users-delete";s:1:"c";i:1;s:1:"d";s:11:"Delete user";s:1:"e";s:11:"Delete user";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:19;a:8:{s:1:"a";i:20;s:1:"b";s:9:"role-list";s:1:"c";i:16;s:1:"d";s:10:"View roles";s:1:"e";s:10:"View roles";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:20;a:8:{s:1:"a";i:21;s:1:"b";s:11:"role-create";s:1:"c";i:16;s:1:"d";s:11:"Create role";s:1:"e";s:11:"Create role";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:21;a:8:{s:1:"a";i:22;s:1:"b";s:9:"role-edit";s:1:"c";i:16;s:1:"d";s:9:"Edit role";s:1:"e";s:9:"Edit role";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:22;a:8:{s:1:"a";i:23;s:1:"b";s:11:"role-delete";s:1:"c";i:16;s:1:"d";s:11:"Delete role";s:1:"e";s:11:"Delete role";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:23;a:8:{s:1:"a";i:24;s:1:"b";s:17:"procedures-delete";s:1:"c";i:12;s:1:"d";s:16:"Delete procedure";s:1:"e";s:16:"Delete procedure";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:24;a:8:{s:1:"a";i:25;s:1:"b";s:15:"procedures-edit";s:1:"c";i:12;s:1:"d";s:14:"Edit procedure";s:1:"e";s:14:"Edit procedure";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:5:{i:0;i:1;i:1;i:30;i:2;i:34;i:3;i:41;i:4;i:49;}}i:25;a:8:{s:1:"a";i:26;s:1:"b";s:17:"procedures-create";s:1:"c";i:12;s:1:"d";s:16:"Create procedure";s:1:"e";s:16:"Create procedure";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:6:{i:0;i:1;i:1;i:30;i:2;i:34;i:3;i:38;i:4;i:41;i:5;i:49;}}i:26;a:8:{s:1:"a";i:27;s:1:"b";s:15:"procedures-list";s:1:"c";i:12;s:1:"d";s:15:"View procedures";s:1:"e";s:15:"View procedures";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:8:{i:0;i:1;i:1;i:11;i:2;i:30;i:3;i:31;i:4;i:34;i:5;i:38;i:6;i:41;i:7;i:49;}}i:27;a:8:{s:1:"a";i:28;s:1:"b";s:12:"patient-list";s:1:"c";i:4;s:1:"d";s:13:"View patients";s:1:"e";s:13:"View patients";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:21:{i:0;i:1;i:1;i:4;i:2;i:9;i:3;i:11;i:4;i:13;i:5;i:15;i:6;i:18;i:7;i:19;i:8;i:21;i:9;i:29;i:10;i:30;i:11;i:31;i:12;i:33;i:13;i:34;i:14;i:38;i:15;i:39;i:16;i:40;i:17;i:41;i:18;i:42;i:19;i:43;i:20;i:49;}}i:28;a:8:{s:1:"a";i:29;s:1:"b";s:14:"patient-create";s:1:"c";i:4;s:1:"d";s:14:"Create patient";s:1:"e";s:14:"Create patient";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:6:{i:0;i:1;i:1;i:19;i:2;i:29;i:3;i:31;i:4;i:34;i:5;i:49;}}i:29;a:8:{s:1:"a";i:30;s:1:"b";s:12:"patient-edit";s:1:"c";i:4;s:1:"d";s:12:"Edit patient";s:1:"e";s:12:"Edit patient";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:7:{i:0;i:1;i:1;i:18;i:2;i:19;i:3;i:29;i:4;i:31;i:5;i:34;i:6;i:49;}}i:30;a:8:{s:1:"a";i:31;s:1:"b";s:14:"patient-detail";s:1:"c";i:4;s:1:"d";s:12:"Show patient";s:1:"e";s:12:"Show patient";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:21:{i:0;i:1;i:1;i:4;i:2;i:9;i:3;i:11;i:4;i:13;i:5;i:15;i:6;i:18;i:7;i:19;i:8;i:21;i:9;i:29;i:10;i:30;i:11;i:31;i:12;i:33;i:13;i:34;i:14;i:38;i:15;i:39;i:16;i:40;i:17;i:41;i:18;i:42;i:19;i:43;i:20;i:49;}}i:31;a:8:{s:1:"a";i:32;s:1:"b";s:14:"patient-delete";s:1:"c";i:4;s:1:"d";s:14:"Delete patient";s:1:"e";s:14:"Delete patient";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:32;a:8:{s:1:"a";i:33;s:1:"b";s:31:"pharmacy-incoming-prescriptions";s:1:"c";i:13;s:1:"d";s:36:"View pharmacy incoming prescriptions";s:1:"e";s:36:"View pharmacy incoming prescriptions";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:6:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:24;i:4;i:31;i:5;i:49;}}i:33;a:8:{s:1:"a";i:34;s:1:"b";s:24:"pharmacy-ward-dispensing";s:1:"c";i:13;s:1:"d";s:29:"View pharmacy ward dispensing";s:1:"e";s:29:"View pharmacy ward dispensing";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:6:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:24;i:4;i:31;i:5;i:49;}}i:34;a:8:{s:1:"a";i:35;s:1:"b";s:20:"pharmacy-stock-sheet";s:1:"c";i:13;s:1:"d";s:25:"View pharmacy stock sheet";s:1:"e";s:25:"View pharmacy stock sheet";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:6:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:24;i:4;i:31;i:5;i:49;}}i:35;a:8:{s:1:"a";i:36;s:1:"b";s:25:"pharmacy-drug-requisition";s:1:"c";i:13;s:1:"d";s:30:"View pharmacy drug requisition";s:1:"e";s:30:"View pharmacy drug requisition";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:6:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:24;i:4;i:31;i:5;i:49;}}i:36;a:8:{s:1:"a";i:37;s:1:"b";s:27:"pharmacy-saved-requisitions";s:1:"c";i:13;s:1:"d";s:32:"View pharmacy saved requisitions";s:1:"e";s:32:"View pharmacy saved requisitions";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:6:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:24;i:4;i:31;i:5;i:49;}}i:37;a:8:{s:1:"a";i:38;s:1:"b";s:30:"pharmacy-previous-requisitions";s:1:"c";i:13;s:1:"d";s:33:"View requisitions made previously";s:1:"e";s:33:"View requisitions made previously";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:6:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:24;i:4;i:31;i:5;i:49;}}i:38;a:8:{s:1:"a";i:39;s:1:"b";s:16:"family-head-list";s:1:"c";i:2;s:1:"d";s:27:"View insurance family heads";s:1:"e";s:27:"View insurance family heads";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:4;i:2;i:18;i:3;i:49;}}i:39;a:8:{s:1:"a";i:40;s:1:"b";s:18:"family-head-create";s:1:"c";i:2;s:1:"d";s:28:"Create insurance family head";s:1:"e";s:28:"Create insurance family head";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:3:{i:0;i:1;i:1;i:18;i:2;i:49;}}i:40;a:8:{s:1:"a";i:41;s:1:"b";s:16:"family-head-edit";s:1:"c";i:2;s:1:"d";s:26:"Edit insurance family head";s:1:"e";s:26:"Edit insurance family head";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:3:{i:0;i:1;i:1;i:18;i:2;i:49;}}i:41;a:8:{s:1:"a";i:42;s:1:"b";s:18:"family-head-delete";s:1:"c";i:2;s:1:"d";s:28:"Delete insurance family head";s:1:"e";s:28:"Delete insurance family head";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:42;a:8:{s:1:"a";i:43;s:1:"b";s:14:"insurance-home";s:1:"c";i:2;s:1:"d";s:19:"Insurance Home Page";s:1:"e";s:19:"Insurance Home Page";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:18;i:2;i:49;}}i:43;a:8:{s:1:"a";i:44;s:1:"b";s:20:"insurance-group-list";s:1:"c";i:2;s:1:"d";s:21:"View insurance groups";s:1:"e";s:21:"View insurance groups";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:4;i:2;i:18;i:3;i:49;}}i:44;a:8:{s:1:"a";i:45;s:1:"b";s:22:"insurance-group-create";s:1:"c";i:2;s:1:"d";s:22:"Create insurance group";s:1:"e";s:22:"Create insurance group";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:3:{i:0;i:1;i:1;i:18;i:2;i:49;}}i:45;a:8:{s:1:"a";i:46;s:1:"b";s:20:"insurance-group-edit";s:1:"c";i:2;s:1:"d";s:20:"Edit insurance group";s:1:"e";s:20:"Edit insurance group";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:3:{i:0;i:1;i:1;i:18;i:2;i:49;}}i:46;a:8:{s:1:"a";i:47;s:1:"b";s:22:"insurance-group-delete";s:1:"c";i:2;s:1:"d";s:22:"Delete insurance group";s:1:"e";s:22:"Delete insurance group";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:47;a:8:{s:1:"a";i:48;s:1:"b";s:21:"insurance-member-list";s:1:"c";i:2;s:1:"d";s:22:"View insurance members";s:1:"e";s:22:"View insurance members";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:4;i:2;i:18;i:3;i:49;}}i:48;a:8:{s:1:"a";i:49;s:1:"b";s:23:"insurance-member-create";s:1:"c";i:2;s:1:"d";s:23:"Create insurance member";s:1:"e";s:23:"Create insurance member";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:3:{i:0;i:1;i:1;i:18;i:2;i:49;}}i:49;a:8:{s:1:"a";i:50;s:1:"b";s:21:"insurance-member-edit";s:1:"c";i:2;s:1:"d";s:21:"Edit insurance member";s:1:"e";s:21:"Edit insurance member";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:3:{i:0;i:1;i:1;i:18;i:2;i:49;}}i:50;a:8:{s:1:"a";i:51;s:1:"b";s:23:"insurance-member-delete";s:1:"c";i:2;s:1:"d";s:24:"Delete insurance members";s:1:"e";s:24:"Delete insurance members";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:51;a:8:{s:1:"a";i:52;s:1:"b";s:25:"insurance-almost-expiring";s:1:"c";i:3;s:1:"d";s:30:"View insurance almost expiring";s:1:"e";s:30:"View insurance almost expiring";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:18;i:2;i:49;}}i:52;a:8:{s:1:"a";i:53;s:1:"b";s:23:"insurance-drugs-covered";s:1:"c";i:3;s:1:"d";s:31:"View drugs covered by insurance";s:1:"e";s:31:"View drugs covered by insurance";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:24;i:4;i:49;}}i:53;a:8:{s:1:"a";i:54;s:1:"b";s:17:"expired-insurance";s:1:"c";i:3;s:1:"d";s:29:"View expired insurance report";s:1:"e";s:29:"View expired insurance report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:18;i:2;i:49;}}i:54;a:8:{s:1:"a";i:55;s:1:"b";s:25:"insurance-premiums-report";s:1:"c";i:3;s:1:"d";s:30:"View insurance premiums report";s:1:"e";s:30:"View insurance premiums report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:18;i:2;i:49;}}i:55;a:8:{s:1:"a";i:56;s:1:"b";s:36:"insurance-cumulative-premiums-report";s:1:"c";i:3;s:1:"d";s:41:"View cumulative insurance premiums report";s:1:"e";s:41:"View cumulative insurance premiums report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:18;i:2;i:49;}}i:56;a:8:{s:1:"a";i:57;s:1:"b";s:25:"insurance-income-received";s:1:"c";i:3;s:1:"d";s:37:"View insurance income received report";s:1:"e";s:37:"View insurance income received report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:18;i:2;i:49;}}i:57;a:8:{s:1:"a";i:58;s:1:"b";s:31:"insurance-income-vs-expenditure";s:1:"c";i:3;s:1:"d";s:43:"View insurance income vs expenditure report";s:1:"e";s:43:"View insurance income vs expenditure report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:18;i:2;i:49;}}i:58;a:8:{s:1:"a";i:59;s:1:"b";s:21:"insurance-expenditure";s:1:"c";i:3;s:1:"d";s:33:"view insurance expenditure report";s:1:"e";s:33:"view insurance expenditure report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:18;i:2;i:49;}}i:59;a:8:{s:1:"a";i:60;s:1:"b";s:37:"insurance-group-income-vs-expenditure";s:1:"c";i:3;s:1:"d";s:39:"View group income vs expenditure report";s:1:"e";s:39:"View group income vs expenditure report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:18;i:2;i:49;}}i:60;a:8:{s:1:"a";i:61;s:1:"b";s:17:"insurance-reports";s:1:"c";i:3;s:1:"d";s:22:"View insurance reports";s:1:"e";s:22:"View insurance reports";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:18;i:2;i:49;}}i:61;a:8:{s:1:"a";i:62;s:1:"b";s:13:"premium-renew";s:1:"c";i:2;s:1:"d";s:14:"Renew premiums";s:1:"e";s:14:"Renew premiums";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:3:{i:0;i:1;i:1;i:18;i:2;i:49;}}i:62;a:8:{s:1:"a";i:63;s:1:"b";s:20:"premium-receipt-list";s:1:"c";i:2;s:1:"d";s:18:"View paid premiums";s:1:"e";s:18:"View paid premiums";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:18;i:2;i:49;}}i:63;a:8:{s:1:"a";i:64;s:1:"b";s:14:"premium-create";s:1:"c";i:2;s:1:"d";s:18:"Create new premium";s:1:"e";s:18:"Create new premium";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:3:{i:0;i:1;i:1;i:18;i:2;i:49;}}i:64;a:8:{s:1:"a";i:65;s:1:"b";s:22:"finance-patient-search";s:1:"c";i:7;s:1:"d";s:20:"Patient finance home";s:1:"e";s:20:"Patient finance home";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:9:{i:0;i:1;i:1;i:2;i:2;i:18;i:3;i:19;i:4;i:29;i:5;i:31;i:6;i:33;i:7;i:41;i:8;i:49;}}i:65;a:8:{s:1:"a";i:66;s:1:"b";s:22:"make-sundries-deposits";s:1:"c";i:7;s:1:"d";s:21:"Make sundries deposit";s:1:"e";s:21:"Make sundries deposit";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:6:{i:0;i:1;i:1;i:2;i:2;i:18;i:3;i:31;i:4;i:33;i:5;i:49;}}i:66;a:8:{s:1:"a";i:67;s:1:"b";s:24:"make-procedures-deposits";s:1:"c";i:7;s:1:"d";s:23:"Make procedures deposit";s:1:"e";s:23:"Make procedures deposit";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:6:{i:0;i:1;i:1;i:2;i:2;i:18;i:3;i:31;i:4;i:33;i:5;i:49;}}i:67;a:8:{s:1:"a";i:68;s:1:"b";s:28:"make-investigations-deposits";s:1:"c";i:7;s:1:"d";s:26:"Make investigation deposit";s:1:"e";s:26:"Make investigation deposit";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:6:{i:0;i:1;i:1;i:2;i:2;i:18;i:3;i:31;i:4;i:33;i:5;i:49;}}i:68;a:8:{s:1:"a";i:69;s:1:"b";s:23:"make-treatment-deposits";s:1:"c";i:7;s:1:"d";s:22:"Make treatment deposit";s:1:"e";s:22:"Make treatment deposit";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:6:{i:0;i:1;i:1;i:2;i:2;i:18;i:3;i:31;i:4;i:33;i:5;i:49;}}i:69;a:8:{s:1:"a";i:70;s:1:"b";s:25:"make-co-payments-deposits";s:1:"c";i:7;s:1:"d";s:23:"Make co-payment deposit";s:1:"e";s:23:"Make co-payment deposit";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:6:{i:0;i:1;i:1;i:2;i:2;i:18;i:3;i:31;i:4;i:33;i:5;i:49;}}i:70;a:8:{s:1:"a";i:71;s:1:"b";s:28:"make-other-services-deposits";s:1:"c";i:7;s:1:"d";s:26:"Make other service deposit";s:1:"e";s:26:"Make other service deposit";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:6:{i:0;i:1;i:1;i:2;i:2;i:18;i:3;i:31;i:4;i:33;i:5;i:49;}}i:71;a:8:{s:1:"a";i:72;s:1:"b";s:26:"make-consultation-deposits";s:1:"c";i:7;s:1:"d";s:26:"Make consultations deposit";s:1:"e";s:26:"Make consultations deposit";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:6:{i:0;i:1;i:1;i:2;i:2;i:18;i:3;i:31;i:4;i:33;i:5;i:49;}}i:72;a:8:{s:1:"a";i:73;s:1:"b";s:20:"make-central-billing";s:1:"c";i:7;s:1:"d";s:28:"Make central billing deposit";s:1:"e";s:28:"Make central billing deposit";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:8:{i:0;i:1;i:1;i:2;i:2;i:18;i:3;i:19;i:4;i:29;i:5;i:31;i:6;i:33;i:7;i:49;}}i:73;a:8:{s:1:"a";i:74;s:1:"b";s:19:"make-patient-refund";s:1:"c";i:7;s:1:"d";s:30:"Make refund for a patient bill";s:1:"e";s:30:"Make refund for a patient bill";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:33;i:4;i:49;}}i:74;a:8:{s:1:"a";i:75;s:1:"b";s:22:"chart-of-accounts-list";s:1:"c";i:7;s:1:"d";s:22:"View chart of accounts";s:1:"e";s:22:"View chart of accounts";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:33;i:4;i:49;}}i:75;a:8:{s:1:"a";i:76;s:1:"b";s:24:"create-chart-of-accounts";s:1:"c";i:7;s:1:"d";s:25:"Create a chart of account";s:1:"e";s:25:"Create a chart of account";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:33;i:4;i:49;}}i:76;a:8:{s:1:"a";i:77;s:1:"b";s:29:"view-chart-of-account-details";s:1:"c";i:7;s:1:"d";s:34:"View details of a chart of account";s:1:"e";s:34:"View details of a chart of account";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:33;i:4;i:49;}}i:77;a:8:{s:1:"a";i:78;s:1:"b";s:26:"activate-chart-of-accounts";s:1:"c";i:7;s:1:"d";s:27:"Activate a chart of account";s:1:"e";s:27:"Activate a chart of account";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:33;i:4;i:49;}}i:78;a:8:{s:1:"a";i:79;s:1:"b";s:29:"de-activate-chart-of-accounts";s:1:"c";i:7;s:1:"d";s:30:"De-activate a chart of account";s:1:"e";s:30:"De-activate a chart of account";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:79;a:8:{s:1:"a";i:80;s:1:"b";s:18:"account-types-list";s:1:"c";i:7;s:1:"d";s:17:"View account type";s:1:"e";s:17:"View account type";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:33;i:4;i:49;}}i:80;a:8:{s:1:"a";i:81;s:1:"b";s:20:"create-account-types";s:1:"c";i:7;s:1:"d";s:19:"Create account type";s:1:"e";s:19:"Create account type";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:33;i:4;i:49;}}i:81;a:8:{s:1:"a";i:82;s:1:"b";s:25:"view-account-type-details";s:1:"c";i:7;s:1:"d";s:31:"View details of an account type";s:1:"e";s:31:"View details of an account type";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:6:{i:0;i:1;i:1;i:2;i:2;i:18;i:3;i:31;i:4;i:33;i:5;i:49;}}i:82;a:8:{s:1:"a";i:83;s:1:"b";s:22:"activate-account-types";s:1:"c";i:7;s:1:"d";s:24:"Activate an account type";s:1:"e";s:24:"Activate an account type";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:33;i:4;i:49;}}i:83;a:8:{s:1:"a";i:84;s:1:"b";s:25:"de-activate-account-types";s:1:"c";i:7;s:1:"d";s:27:"De-activate an account type";s:1:"e";s:27:"De-activate an account type";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:84;a:8:{s:1:"a";i:85;s:1:"b";s:23:"services-and-items-list";s:1:"c";i:7;s:1:"d";s:33:"View a list of services and items";s:1:"e";s:33:"View a list of services and items";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:33;i:4;i:49;}}i:85;a:8:{s:1:"a";i:86;s:1:"b";s:25:"create-services-and-items";s:1:"c";i:7;s:1:"d";s:28:"Create a new service or item";s:1:"e";s:28:"Create a new service or item";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:33;i:4;i:49;}}i:86;a:8:{s:1:"a";i:87;s:1:"b";s:20:"item-categories-list";s:1:"c";i:7;s:1:"d";s:33:"View a list of services and items";s:1:"e";s:33:"View a list of services and items";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:33;i:4;i:49;}}i:87;a:8:{s:1:"a";i:88;s:1:"b";s:22:"create-item-categories";s:1:"c";i:7;s:1:"d";s:28:"Create a new service or item";s:1:"e";s:28:"Create a new service or item";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:88;a:8:{s:1:"a";i:89;s:1:"b";s:17:"fixed-assets-list";s:1:"c";i:7;s:1:"d";s:27:"View a list of fixed assets";s:1:"e";s:27:"View a list of fixed assets";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:33;i:4;i:49;}}i:89;a:8:{s:1:"a";i:90;s:1:"b";s:19:"create-fixed-assets";s:1:"c";i:7;s:1:"d";s:24:"Create a new fixed asset";s:1:"e";s:24:"Create a new fixed asset";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:90;a:8:{s:1:"a";i:91;s:1:"b";s:17:"edit-fixed-assets";s:1:"c";i:7;s:1:"d";s:17:"Edit fixed assets";s:1:"e";s:17:"Edit fixed assets";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:91;a:8:{s:1:"a";i:92;s:1:"b";s:12:"find-a-donor";s:1:"c";i:9;s:1:"d";s:12:"Find a donor";s:1:"e";s:12:"Find a donor";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:92;a:8:{s:1:"a";i:93;s:1:"b";s:14:"resources-list";s:1:"c";i:9;s:1:"d";s:14:"List Resources";s:1:"e";s:14:"List Resources";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:93;a:8:{s:1:"a";i:94;s:1:"b";s:16:"resources-create";s:1:"c";i:9;s:1:"d";s:16:"Create Resources";s:1:"e";s:16:"Create Resources";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:94;a:8:{s:1:"a";i:95;s:1:"b";s:14:"resources-edit";s:1:"c";i:9;s:1:"d";s:14:"Edit Resources";s:1:"e";s:14:"Edit Resources";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:95;a:8:{s:1:"a";i:96;s:1:"b";s:16:"resources-detail";s:1:"c";i:9;s:1:"d";s:27:"Get Details about Resources";s:1:"e";s:27:"Get Details about Resources";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:96;a:8:{s:1:"a";i:97;s:1:"b";s:16:"resources-delete";s:1:"c";i:9;s:1:"d";s:16:"Delete resources";s:1:"e";s:16:"Delete resources";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:97;a:8:{s:1:"a";i:98;s:1:"b";s:16:"resources-status";s:1:"c";i:9;s:1:"d";s:32:"Activate or Deactivate Resources";s:1:"e";s:32:"Activate or Deactivate Resources";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:98;a:8:{s:1:"a";i:99;s:1:"b";s:16:"audit_trail-list";s:1:"c";i:9;s:1:"d";s:25:"List and Search Resources";s:1:"e";s:25:"List and Search Resources";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:99;a:8:{s:1:"a";i:100;s:1:"b";s:14:"suppliers-list";s:1:"c";i:9;s:1:"d";s:14:"List Suppliers";s:1:"e";s:14:"List Suppliers";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:40;i:2;i:49;}}i:100;a:8:{s:1:"a";i:101;s:1:"b";s:16:"suppliers-create";s:1:"c";i:9;s:1:"d";s:16:"Create Suppliers";s:1:"e";s:16:"Create Suppliers";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:40;i:3;i:49;}}i:101;a:8:{s:1:"a";i:102;s:1:"b";s:14:"suppliers-edit";s:1:"c";i:9;s:1:"d";s:14:"Edit Suppliers";s:1:"e";s:14:"Edit Suppliers";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:3:{i:0;i:1;i:1;i:40;i:2;i:49;}}i:102;a:8:{s:1:"a";i:103;s:1:"b";s:16:"suppliers-detail";s:1:"c";i:9;s:1:"d";s:27:"Get Details about Suppliers";s:1:"e";s:27:"Get Details about Suppliers";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:40;i:2;i:49;}}i:103;a:8:{s:1:"a";i:104;s:1:"b";s:16:"suppliers-delete";s:1:"c";i:9;s:1:"d";s:16:"Delete Suppliers";s:1:"e";s:16:"Delete Suppliers";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:40;i:2;i:49;}}i:104;a:8:{s:1:"a";i:105;s:1:"b";s:16:"suppliers-status";s:1:"c";i:9;s:1:"d";s:32:"Activate or Deactivate Suppliers";s:1:"e";s:32:"Activate or Deactivate Suppliers";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:3:{i:0;i:1;i:1;i:40;i:2;i:49;}}i:105;a:8:{s:1:"a";i:106;s:1:"b";s:9:"bank-list";s:1:"c";i:9;s:1:"d";s:10:"List Banks";s:1:"e";s:10:"List Banks";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:106;a:8:{s:1:"a";i:107;s:1:"b";s:11:"bank-create";s:1:"c";i:9;s:1:"d";s:12:"Create Banks";s:1:"e";s:12:"Create Banks";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:107;a:8:{s:1:"a";i:108;s:1:"b";s:9:"bank-edit";s:1:"c";i:9;s:1:"d";s:10:"Edit Banks";s:1:"e";s:10:"Edit Banks";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:108;a:8:{s:1:"a";i:109;s:1:"b";s:11:"bank-detail";s:1:"c";i:9;s:1:"d";s:23:"Get Details about Banks";s:1:"e";s:23:"Get Details about Banks";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:109;a:8:{s:1:"a";i:110;s:1:"b";s:11:"bank-delete";s:1:"c";i:9;s:1:"d";s:12:"Delete Banks";s:1:"e";s:12:"Delete Banks";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:110;a:8:{s:1:"a";i:111;s:1:"b";s:11:"bank-status";s:1:"c";i:9;s:1:"d";s:28:"Activate or Deactivate Banks";s:1:"e";s:28:"Activate or Deactivate Banks";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:111;a:8:{s:1:"a";i:112;s:1:"b";s:11:"donors-list";s:1:"c";i:9;s:1:"d";s:11:"List Donors";s:1:"e";s:11:"List Donors";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:112;a:8:{s:1:"a";i:113;s:1:"b";s:13:"donors-create";s:1:"c";i:9;s:1:"d";s:13:"Create Donors";s:1:"e";s:13:"Create Donors";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:113;a:8:{s:1:"a";i:114;s:1:"b";s:11:"donors-edit";s:1:"c";i:9;s:1:"d";s:11:"Edit Donors";s:1:"e";s:11:"Edit Donors";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:114;a:8:{s:1:"a";i:115;s:1:"b";s:13:"donors-detail";s:1:"c";i:9;s:1:"d";s:24:"Get Details about Donors";s:1:"e";s:24:"Get Details about Donors";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:115;a:8:{s:1:"a";i:116;s:1:"b";s:13:"donors-delete";s:1:"c";i:9;s:1:"d";s:13:"Delete Donors";s:1:"e";s:13:"Delete Donors";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:116;a:8:{s:1:"a";i:117;s:1:"b";s:13:"donors-status";s:1:"c";i:9;s:1:"d";s:29:"Activate or Deactivate Donors";s:1:"e";s:29:"Activate or Deactivate Donors";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:117;a:8:{s:1:"a";i:118;s:1:"b";s:20:"staff_positions-list";s:1:"c";i:9;s:1:"d";s:20:"List Staff Positions";s:1:"e";s:20:"List Staff Positions";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:118;a:8:{s:1:"a";i:119;s:1:"b";s:22:"staff_positions-create";s:1:"c";i:9;s:1:"d";s:22:"Create Staff Positions";s:1:"e";s:22:"Create Staff Positions";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:119;a:8:{s:1:"a";i:120;s:1:"b";s:20:"staff_positions-edit";s:1:"c";i:9;s:1:"d";s:20:"Edit Staff Positions";s:1:"e";s:20:"Edit Staff Positions";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:120;a:8:{s:1:"a";i:121;s:1:"b";s:22:"staff_positions-detail";s:1:"c";i:9;s:1:"d";s:33:"Get Details about Staff Positions";s:1:"e";s:33:"Get Details about Staff Positions";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:121;a:8:{s:1:"a";i:122;s:1:"b";s:22:"staff_positions-delete";s:1:"c";i:9;s:1:"d";s:22:"Delete Staff Positions";s:1:"e";s:22:"Delete Staff Positions";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:122;a:8:{s:1:"a";i:123;s:1:"b";s:22:"staff_positions-status";s:1:"c";i:9;s:1:"d";s:38:"Activate or Deactivate Staff Positions";s:1:"e";s:38:"Activate or Deactivate Staff Positions";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:123;a:8:{s:1:"a";i:124;s:1:"b";s:15:"occupation-list";s:1:"c";i:9;s:1:"d";s:16:"List Occupations";s:1:"e";s:16:"List Occupations";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:124;a:8:{s:1:"a";i:125;s:1:"b";s:17:"occupation-create";s:1:"c";i:9;s:1:"d";s:18:"Create Occupations";s:1:"e";s:18:"Create Occupations";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:125;a:8:{s:1:"a";i:126;s:1:"b";s:15:"occupation-edit";s:1:"c";i:9;s:1:"d";s:16:"Edit Occupations";s:1:"e";s:16:"Edit Occupations";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:126;a:8:{s:1:"a";i:127;s:1:"b";s:17:"occupation-detail";s:1:"c";i:9;s:1:"d";s:29:"Get Details about Occupations";s:1:"e";s:29:"Get Details about Occupations";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:127;a:8:{s:1:"a";i:128;s:1:"b";s:17:"occupation-delete";s:1:"c";i:9;s:1:"d";s:18:"Delete Occupations";s:1:"e";s:18:"Delete Occupations";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:128;a:8:{s:1:"a";i:129;s:1:"b";s:17:"occupation-status";s:1:"c";i:9;s:1:"d";s:34:"Activate or Deactivate Occupations";s:1:"e";s:34:"Activate or Deactivate Occupations";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:129;a:8:{s:1:"a";i:130;s:1:"b";s:22:"resource_category-list";s:1:"c";i:9;s:1:"d";s:24:"List Resource Categories";s:1:"e";s:24:"List Resource Categories";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:130;a:8:{s:1:"a";i:131;s:1:"b";s:24:"resource_category-create";s:1:"c";i:9;s:1:"d";s:26:"Create Resource Categories";s:1:"e";s:26:"Create Resource Categories";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:131;a:8:{s:1:"a";i:132;s:1:"b";s:22:"resource_category-edit";s:1:"c";i:9;s:1:"d";s:24:"Edit Resource Categories";s:1:"e";s:24:"Edit Resource Categories";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:132;a:8:{s:1:"a";i:133;s:1:"b";s:24:"resource_category-detail";s:1:"c";i:9;s:1:"d";s:37:"Get Details about Resource Categories";s:1:"e";s:37:"Get Details about Resource Categories";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:133;a:8:{s:1:"a";i:134;s:1:"b";s:24:"resource_category-delete";s:1:"c";i:9;s:1:"d";s:26:"Delete Resource Categories";s:1:"e";s:26:"Delete Resource Categories";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:134;a:8:{s:1:"a";i:135;s:1:"b";s:24:"resource_category-status";s:1:"c";i:9;s:1:"d";s:42:"Activate or Deactivate Resource Categories";s:1:"e";s:42:"Activate or Deactivate Resource Categories";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:135;a:8:{s:1:"a";i:136;s:1:"b";s:25:"hospital_information-edit";s:1:"c";i:9;s:1:"d";s:36:"Edit And Update Hospital Information";s:1:"e";s:36:"Edit And Update Hospital Information";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:136;a:8:{s:1:"a";i:137;s:1:"b";s:21:"patient_category-list";s:1:"c";i:9;s:1:"d";s:23:"List Patient Categories";s:1:"e";s:23:"List Patient Categories";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:137;a:8:{s:1:"a";i:138;s:1:"b";s:23:"patient_category-create";s:1:"c";i:9;s:1:"d";s:25:"Create Patient Categories";s:1:"e";s:25:"Create Patient Categories";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:138;a:8:{s:1:"a";i:139;s:1:"b";s:21:"patient_category-edit";s:1:"c";i:9;s:1:"d";s:23:"Edit Patient Categories";s:1:"e";s:23:"Edit Patient Categories";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:139;a:8:{s:1:"a";i:140;s:1:"b";s:23:"patient_category-detail";s:1:"c";i:9;s:1:"d";s:36:"Get Details about Patient Categories";s:1:"e";s:36:"Get Details about Patient Categories";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:140;a:8:{s:1:"a";i:141;s:1:"b";s:23:"patient_category-delete";s:1:"c";i:9;s:1:"d";s:31:"Delete Staff Patient Categories";s:1:"e";s:31:"Delete Staff Patient Categories";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:141;a:8:{s:1:"a";i:142;s:1:"b";s:23:"patient_category-status";s:1:"c";i:9;s:1:"d";s:41:"Activate or Deactivate Patient Categories";s:1:"e";s:41:"Activate or Deactivate Patient Categories";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:142;a:8:{s:1:"a";i:143;s:1:"b";s:16:"departments-list";s:1:"c";i:9;s:1:"d";s:16:"List Departments";s:1:"e";s:16:"List Departments";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:143;a:8:{s:1:"a";i:144;s:1:"b";s:18:"departments-create";s:1:"c";i:9;s:1:"d";s:18:"Create Departments";s:1:"e";s:18:"Create Departments";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:144;a:8:{s:1:"a";i:145;s:1:"b";s:16:"departments-edit";s:1:"c";i:9;s:1:"d";s:16:"Edit Departments";s:1:"e";s:16:"Edit Departments";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:145;a:8:{s:1:"a";i:146;s:1:"b";s:18:"departments-detail";s:1:"c";i:9;s:1:"d";s:29:"Get Details about Departments";s:1:"e";s:29:"Get Details about Departments";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:146;a:8:{s:1:"a";i:147;s:1:"b";s:18:"departments-delete";s:1:"c";i:9;s:1:"d";s:18:"Delete Departments";s:1:"e";s:18:"Delete Departments";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:147;a:8:{s:1:"a";i:148;s:1:"b";s:18:"departments-status";s:1:"c";i:9;s:1:"d";s:34:"Activate or Deactivate Departments";s:1:"e";s:34:"Activate or Deactivate Departments";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:148;a:8:{s:1:"a";i:149;s:1:"b";s:19:"bed_categories-list";s:1:"c";i:9;s:1:"d";s:19:"List Bed Categories";s:1:"e";s:19:"List Bed Categories";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:149;a:8:{s:1:"a";i:150;s:1:"b";s:21:"bed_categories-create";s:1:"c";i:9;s:1:"d";s:21:"Create Bed Categories";s:1:"e";s:21:"Create Bed Categories";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:150;a:8:{s:1:"a";i:151;s:1:"b";s:19:"bed_categories-edit";s:1:"c";i:9;s:1:"d";s:19:"Edit Bed Categories";s:1:"e";s:19:"Edit Bed Categories";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:151;a:8:{s:1:"a";i:152;s:1:"b";s:21:"bed_categories-detail";s:1:"c";i:9;s:1:"d";s:32:"Get Details about Bed Categories";s:1:"e";s:32:"Get Details about Bed Categories";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:152;a:8:{s:1:"a";i:153;s:1:"b";s:21:"bed_categories-delete";s:1:"c";i:9;s:1:"d";s:21:"Delete Bed Categories";s:1:"e";s:21:"Delete Bed Categories";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:153;a:8:{s:1:"a";i:154;s:1:"b";s:21:"bed_categories-status";s:1:"c";i:9;s:1:"d";s:37:"Activate or Deactivate Bed Categories";s:1:"e";s:37:"Activate or Deactivate Bed Categories";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:154;a:8:{s:1:"a";i:155;s:1:"b";s:26:"imaging-incoming-radiology";s:1:"c";i:10;s:1:"d";s:27:"Incoming radiology requests";s:1:"e";s:27:"Incoming radiology requests";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:38;i:2;i:49;}}i:155;a:8:{s:1:"a";i:156;s:1:"b";s:27:"imaging-incoming-ultrasound";s:1:"c";i:10;s:1:"d";s:28:"Incoming ultrasound requests";s:1:"e";s:28:"Incoming ultrasound requests";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:9;i:2;i:38;i:3;i:49;}}i:156;a:8:{s:1:"a";i:157;s:1:"b";s:37:"imaging-incoming-ultrasound-obstetric";s:1:"c";i:10;s:1:"d";s:38:"Incoming ultrasound obstetric requests";s:1:"e";s:38:"Incoming ultrasound obstetric requests";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:18;i:2;i:38;i:3;i:49;}}i:157;a:8:{s:1:"a";i:158;s:1:"b";s:25:"imaging-radiology-results";s:1:"c";i:10;s:1:"d";s:22:"View radiology results";s:1:"e";s:22:"View radiology results";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:7:{i:0;i:1;i:1;i:9;i:2;i:18;i:3;i:31;i:4;i:38;i:5;i:39;i:6;i:49;}}i:158;a:8:{s:1:"a";i:159;s:1:"b";s:26:"imaging-ultrasound-results";s:1:"c";i:10;s:1:"d";s:23:"View ultrasound results";s:1:"e";s:23:"View ultrasound results";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:38;i:4;i:49;}}i:159;a:8:{s:1:"a";i:160;s:1:"b";s:36:"imaging-ultrasound-obstetric-results";s:1:"c";i:10;s:1:"d";s:33:"View obstetric ultrasound results";s:1:"e";s:33:"View obstetric ultrasound results";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:38;i:4;i:49;}}i:160;a:8:{s:1:"a";i:161;s:1:"b";s:35:"imaging-alter-investigation-results";s:1:"c";i:10;s:1:"d";s:37:"Alter investigation results (imaging)";s:1:"e";s:37:"Alter investigation results (imaging)";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:4:{i:0;i:1;i:1;i:38;i:2;i:40;i:3;i:49;}}i:161;a:8:{s:1:"a";i:162;s:1:"b";s:31:"imaging-view-historical-results";s:1:"c";i:10;s:1:"d";s:47:"View Historical investigation results (imaging)";s:1:"e";s:47:"View Historical investigation results (imaging)";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:8:{i:0;i:1;i:1;i:9;i:2;i:18;i:3;i:31;i:4;i:38;i:5;i:39;i:6;i:40;i:7;i:49;}}i:162;a:8:{s:1:"a";i:163;s:1:"b";s:15:"district-create";s:1:"c";i:14;s:1:"d";s:14:"Add a district";s:1:"e";s:14:"Add a district";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:3:{i:0;i:1;i:1;i:29;i:2;i:49;}}i:163;a:8:{s:1:"a";i:164;s:1:"b";s:13:"district-list";s:1:"c";i:14;s:1:"d";s:14:"View districts";s:1:"e";s:14:"View districts";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:29;i:2;i:49;}}i:164;a:8:{s:1:"a";i:165;s:1:"b";s:13:"district-edit";s:1:"c";i:14;s:1:"d";s:15:"Edit a district";s:1:"e";s:15:"Edit a district";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:165;a:8:{s:1:"a";i:166;s:1:"b";s:15:"district-delete";s:1:"c";i:14;s:1:"d";s:21:"Deactivate a district";s:1:"e";s:21:"Deactivate a district";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:166;a:8:{s:1:"a";i:167;s:1:"b";s:22:"district-inactive-list";s:1:"c";i:14;s:1:"d";s:23:"View inactive districts";s:1:"e";s:23:"View inactive districts";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:29;i:2;i:49;}}i:167;a:8:{s:1:"a";i:168;s:1:"b";s:13:"county-create";s:1:"c";i:14;s:1:"d";s:12:"Add a county";s:1:"e";s:12:"Add a county";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:3:{i:0;i:1;i:1;i:29;i:2;i:49;}}i:168;a:8:{s:1:"a";i:169;s:1:"b";s:11:"county-list";s:1:"c";i:14;s:1:"d";s:13:"View counties";s:1:"e";s:13:"View counties";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:29;i:2;i:49;}}i:169;a:8:{s:1:"a";i:170;s:1:"b";s:11:"county-edit";s:1:"c";i:14;s:1:"d";s:13:"Edit a county";s:1:"e";s:13:"Edit a county";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:170;a:8:{s:1:"a";i:171;s:1:"b";s:13:"county-delete";s:1:"c";i:14;s:1:"d";s:19:"Deactivate a county";s:1:"e";s:19:"Deactivate a county";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:171;a:8:{s:1:"a";i:172;s:1:"b";s:20:"county-inactive-list";s:1:"c";i:14;s:1:"d";s:22:"View inactive counties";s:1:"e";s:22:"View inactive counties";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:29;i:2;i:49;}}i:172;a:8:{s:1:"a";i:173;s:1:"b";s:16:"subcounty-create";s:1:"c";i:14;s:1:"d";s:15:"Add a subcounty";s:1:"e";s:15:"Add a subcounty";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:3:{i:0;i:1;i:1;i:29;i:2;i:49;}}i:173;a:8:{s:1:"a";i:174;s:1:"b";s:14:"subcounty-list";s:1:"c";i:14;s:1:"d";s:16:"View subcounties";s:1:"e";s:16:"View subcounties";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:29;i:2;i:49;}}i:174;a:8:{s:1:"a";i:175;s:1:"b";s:14:"subcounty-edit";s:1:"c";i:14;s:1:"d";s:16:"Edit a subcounty";s:1:"e";s:16:"Edit a subcounty";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:175;a:8:{s:1:"a";i:176;s:1:"b";s:16:"subcounty-delete";s:1:"c";i:14;s:1:"d";s:22:"Deactivate a subcounty";s:1:"e";s:22:"Deactivate a subcounty";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:176;a:8:{s:1:"a";i:177;s:1:"b";s:23:"subcounty-inactive-list";s:1:"c";i:14;s:1:"d";s:25:"View inactive subcounties";s:1:"e";s:25:"View inactive subcounties";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:29;i:2;i:49;}}i:177;a:8:{s:1:"a";i:178;s:1:"b";s:13:"parish-create";s:1:"c";i:14;s:1:"d";s:12:"Add a parish";s:1:"e";s:12:"Add a parish";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:3:{i:0;i:1;i:1;i:29;i:2;i:49;}}i:178;a:8:{s:1:"a";i:179;s:1:"b";s:11:"parish-list";s:1:"c";i:14;s:1:"d";s:13:"View parishes";s:1:"e";s:13:"View parishes";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:29;i:2;i:49;}}i:179;a:8:{s:1:"a";i:180;s:1:"b";s:11:"parish-edit";s:1:"c";i:14;s:1:"d";s:13:"Edit a parish";s:1:"e";s:13:"Edit a parish";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:180;a:8:{s:1:"a";i:181;s:1:"b";s:13:"parish-delete";s:1:"c";i:14;s:1:"d";s:19:"Deactivate a parish";s:1:"e";s:19:"Deactivate a parish";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:181;a:8:{s:1:"a";i:182;s:1:"b";s:20:"parish-inactive-list";s:1:"c";i:14;s:1:"d";s:22:"View inactive parishes";s:1:"e";s:22:"View inactive parishes";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:29;i:2;i:49;}}i:182;a:8:{s:1:"a";i:183;s:1:"b";s:14:"village-create";s:1:"c";i:14;s:1:"d";s:13:"Add a village";s:1:"e";s:13:"Add a village";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:3:{i:0;i:1;i:1;i:29;i:2;i:49;}}i:183;a:8:{s:1:"a";i:184;s:1:"b";s:12:"village-list";s:1:"c";i:14;s:1:"d";s:13:"View villages";s:1:"e";s:13:"View villages";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:29;i:2;i:49;}}i:184;a:8:{s:1:"a";i:185;s:1:"b";s:12:"village-edit";s:1:"c";i:14;s:1:"d";s:14:"Edit a village";s:1:"e";s:14:"Edit a village";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:185;a:8:{s:1:"a";i:186;s:1:"b";s:14:"village-delete";s:1:"c";i:14;s:1:"d";s:20:"Deactivate a village";s:1:"e";s:20:"Deactivate a village";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:186;a:8:{s:1:"a";i:187;s:1:"b";s:21:"village-inactive-list";s:1:"c";i:14;s:1:"d";s:22:"View inactive villages";s:1:"e";s:22:"View inactive villages";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:29;i:2;i:49;}}i:187;a:8:{s:1:"a";i:188;s:1:"b";s:11:"stores-home";s:1:"c";i:15;s:1:"d";s:27:"Home page for stores module";s:1:"e";s:27:"Home page for stores module";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:24;i:2;i:37;i:3;i:49;}}i:188;a:8:{s:1:"a";i:189;s:1:"b";s:24:"stores-request-quotation";s:1:"c";i:15;s:1:"d";s:23:"Request for a quotation";s:1:"e";s:23:"Request for a quotation";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:4:{i:0;i:1;i:1;i:24;i:2;i:37;i:3;i:49;}}i:189;a:8:{s:1:"a";i:190;s:1:"b";s:17:"stores-bill-items";s:1:"c";i:15;s:1:"d";s:34:"Update billing for quotation items";s:1:"e";s:34:"Update billing for quotation items";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:5:{i:0;i:1;i:1;i:24;i:2;i:31;i:3;i:37;i:4;i:49;}}i:190;a:8:{s:1:"a";i:191;s:1:"b";s:23:"stores-approve-purchase";s:1:"c";i:15;s:1:"d";s:25:"Approve purchase of items";s:1:"e";s:25:"Approve purchase of items";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:4:{i:0;i:1;i:1;i:24;i:2;i:37;i:3;i:49;}}i:191;a:8:{s:1:"a";i:192;s:1:"b";s:20:"stores-receive-items";s:1:"c";i:15;s:1:"d";s:24:"Received purchased items";s:1:"e";s:24:"Received purchased items";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:5:{i:0;i:1;i:1;i:24;i:2;i:37;i:3;i:40;i:4;i:49;}}i:192;a:8:{s:1:"a";i:193;s:1:"b";s:18:"stores-issue-drugs";s:1:"c";i:15;s:1:"d";s:27:"Issue out drugs to pharmacy";s:1:"e";s:27:"Issue out drugs to pharmacy";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:3:{i:0;i:1;i:1;i:24;i:2;i:49;}}i:193;a:8:{s:1:"a";i:194;s:1:"b";s:18:"stores-stock-sheet";s:1:"c";i:15;s:1:"d";s:26:"View the store stock sheet";s:1:"e";s:26:"View the store stock sheet";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:24;i:2;i:37;i:3;i:40;i:4;i:49;}}i:194;a:8:{s:1:"a";i:195;s:1:"b";s:23:"stores-saved-quotations";s:1:"c";i:15;s:1:"d";s:21:"View saved quotations";s:1:"e";s:21:"View saved quotations";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:24;i:2;i:31;i:3;i:37;i:4;i:49;}}i:195;a:8:{s:1:"a";i:196;s:1:"b";s:30:"stores-previous-received-items";s:1:"c";i:15;s:1:"d";s:30:"View previously received items";s:1:"e";s:30:"View previously received items";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:6:{i:0;i:1;i:1;i:24;i:2;i:31;i:3;i:37;i:4;i:40;i:5;i:49;}}i:196;a:8:{s:1:"a";i:197;s:1:"b";s:28:"stores-previous-issued-drugs";s:1:"c";i:15;s:1:"d";s:28:"View previously issued drugs";s:1:"e";s:28:"View previously issued drugs";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:24;i:2;i:31;i:3;i:49;}}i:197;a:8:{s:1:"a";i:198;s:1:"b";s:26:"stores-previous-quotations";s:1:"c";i:15;s:1:"d";s:24:"View previous quotations";s:1:"e";s:24:"View previous quotations";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:24;i:2;i:37;i:3;i:49;}}i:198;a:8:{s:1:"a";i:199;s:1:"b";s:31:"stores-previous-purchase-orders";s:1:"c";i:15;s:1:"d";s:29:"View previous purchase orders";s:1:"e";s:29:"View previous purchase orders";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:6:{i:0;i:1;i:1;i:24;i:2;i:31;i:3;i:37;i:4;i:40;i:5;i:49;}}i:199;a:8:{s:1:"a";i:200;s:1:"b";s:16:"drug-form-delete";s:1:"c";i:12;s:1:"d";s:36:"Deactivate and reactivate drug forms";s:1:"e";s:36:"Deactivate and reactivate drug forms";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:200;a:8:{s:1:"a";i:201;s:1:"b";s:14:"drug-form-edit";s:1:"c";i:12;s:1:"d";s:14:"Edit drug form";s:1:"e";s:14:"Edit drug form";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:4:{i:0;i:1;i:1;i:24;i:2;i:34;i:3;i:49;}}i:201;a:8:{s:1:"a";i:202;s:1:"b";s:16:"drug-form-create";s:1:"c";i:12;s:1:"d";s:16:"Create drug form";s:1:"e";s:16:"Create drug form";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:4:{i:0;i:1;i:1;i:24;i:2;i:34;i:3;i:49;}}i:202;a:8:{s:1:"a";i:203;s:1:"b";s:14:"drug-form-list";s:1:"c";i:12;s:1:"d";s:15:"View drug forms";s:1:"e";s:15:"View drug forms";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:24;i:2;i:34;i:3;i:49;}}i:203;a:8:{s:1:"a";i:204;s:1:"b";s:14:"drug-unit-list";s:1:"c";i:12;s:1:"d";s:15:"View drug units";s:1:"e";s:15:"View drug units";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:6:{i:0;i:1;i:1;i:11;i:2;i:24;i:3;i:34;i:4;i:41;i:5;i:49;}}i:204;a:8:{s:1:"a";i:205;s:1:"b";s:16:"drug-unit-create";s:1:"c";i:12;s:1:"d";s:16:"Create drug unit";s:1:"e";s:16:"Create drug unit";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:4:{i:0;i:1;i:1;i:24;i:2;i:34;i:3;i:49;}}i:205;a:8:{s:1:"a";i:206;s:1:"b";s:14:"drug-unit-edit";s:1:"c";i:12;s:1:"d";s:14:"Edit drug unit";s:1:"e";s:14:"Edit drug unit";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:4:{i:0;i:1;i:1;i:24;i:2;i:34;i:3;i:49;}}i:206;a:8:{s:1:"a";i:207;s:1:"b";s:16:"drug-unit-delete";s:1:"c";i:12;s:1:"d";s:36:"Deactivate and reactivate drug units";s:1:"e";s:36:"Deactivate and reactivate drug units";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:207;a:8:{s:1:"a";i:208;s:1:"b";s:18:"drug-category-list";s:1:"c";i:12;s:1:"d";s:20:"View drug categories";s:1:"e";s:20:"View drug categories";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:24;i:2;i:34;i:3;i:49;}}i:208;a:8:{s:1:"a";i:209;s:1:"b";s:20:"drug-category-create";s:1:"c";i:12;s:1:"d";s:20:"Create drug category";s:1:"e";s:20:"Create drug category";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:4:{i:0;i:1;i:1;i:24;i:2;i:34;i:3;i:49;}}i:209;a:8:{s:1:"a";i:210;s:1:"b";s:18:"drug-category-edit";s:1:"c";i:12;s:1:"d";s:18:"Edit drug category";s:1:"e";s:18:"Edit drug category";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:4:{i:0;i:1;i:1;i:24;i:2;i:34;i:3;i:49;}}i:210;a:8:{s:1:"a";i:211;s:1:"b";s:20:"drug-category-delete";s:1:"c";i:12;s:1:"d";s:41:"Deactivate and reactivate drug categories";s:1:"e";s:41:"Deactivate and reactivate drug categories";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:211;a:8:{s:1:"a";i:212;s:1:"b";s:12:"symptom-list";s:1:"c";i:12;s:1:"d";s:13:"View symptoms";s:1:"e";s:13:"View symptoms";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:30;i:2;i:34;i:3;i:41;i:4;i:49;}}i:212;a:8:{s:1:"a";i:213;s:1:"b";s:14:"symptom-create";s:1:"c";i:12;s:1:"d";s:14:"Create symptom";s:1:"e";s:14:"Create symptom";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:6:{i:0;i:1;i:1;i:13;i:2;i:30;i:3;i:34;i:4;i:41;i:5;i:49;}}i:213;a:8:{s:1:"a";i:214;s:1:"b";s:12:"symptom-edit";s:1:"c";i:12;s:1:"d";s:12:"Edit symptom";s:1:"e";s:12:"Edit symptom";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:6:{i:0;i:1;i:1;i:30;i:2;i:34;i:3;i:40;i:4;i:41;i:5;i:49;}}i:214;a:8:{s:1:"a";i:215;s:1:"b";s:14:"symptom-delete";s:1:"c";i:12;s:1:"d";s:33:"Deactivate and reactivate symptom";s:1:"e";s:33:"Deactivate and reactivate symptom";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:215;a:8:{s:1:"a";i:216;s:1:"b";s:14:"diagnosis-list";s:1:"c";i:12;s:1:"d";s:14:"View diagnoses";s:1:"e";s:14:"View diagnoses";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:7:{i:0;i:1;i:1;i:30;i:2;i:34;i:3;i:39;i:4;i:40;i:5;i:41;i:6;i:49;}}i:216;a:8:{s:1:"a";i:217;s:1:"b";s:16:"diagnosis-create";s:1:"c";i:12;s:1:"d";s:16:"Create diagnosis";s:1:"e";s:16:"Create diagnosis";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:217;a:8:{s:1:"a";i:218;s:1:"b";s:14:"diagnosis-edit";s:1:"c";i:12;s:1:"d";s:14:"Edit diagnosis";s:1:"e";s:14:"Edit diagnosis";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:4:{i:0;i:1;i:1;i:30;i:2;i:34;i:3;i:49;}}i:218;a:8:{s:1:"a";i:219;s:1:"b";s:16:"diagnosis-delete";s:1:"c";i:12;s:1:"d";s:35:"Deactivate and reactivate diagnoses";s:1:"e";s:35:"Deactivate and reactivate diagnoses";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:219;a:8:{s:1:"a";i:220;s:1:"b";s:19:"investigations-list";s:1:"c";i:12;s:1:"d";s:19:"View investigations";s:1:"e";s:19:"View investigations";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:9:{i:0;i:1;i:1;i:11;i:2;i:30;i:3;i:31;i:4;i:34;i:5;i:39;i:6;i:40;i:7;i:41;i:8;i:49;}}i:220;a:8:{s:1:"a";i:221;s:1:"b";s:21:"investigations-create";s:1:"c";i:12;s:1:"d";s:20:"Create investigation";s:1:"e";s:20:"Create investigation";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:4:{i:0;i:1;i:1;i:34;i:2;i:40;i:3;i:49;}}i:221;a:8:{s:1:"a";i:222;s:1:"b";s:19:"investigations-edit";s:1:"c";i:12;s:1:"d";s:18:"Edit investigation";s:1:"e";s:18:"Edit investigation";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:5:{i:0;i:1;i:1;i:30;i:2;i:34;i:3;i:40;i:4;i:49;}}i:222;a:8:{s:1:"a";i:223;s:1:"b";s:21:"investigations-delete";s:1:"c";i:12;s:1:"d";s:40:"Deactivate and reactivate investigations";s:1:"e";s:40:"Deactivate and reactivate investigations";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:223;a:8:{s:1:"a";i:224;s:1:"b";s:9:"ward-list";s:1:"c";i:12;s:1:"d";s:10:"View wards";s:1:"e";s:10:"View wards";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:7:{i:0;i:1;i:1;i:30;i:2;i:31;i:3;i:34;i:4;i:39;i:5;i:41;i:6;i:49;}}i:224;a:8:{s:1:"a";i:225;s:1:"b";s:11:"ward-create";s:1:"c";i:12;s:1:"d";s:11:"Create ward";s:1:"e";s:11:"Create ward";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:4:{i:0;i:1;i:1;i:30;i:2;i:34;i:3;i:49;}}i:225;a:8:{s:1:"a";i:226;s:1:"b";s:9:"ward-edit";s:1:"c";i:12;s:1:"d";s:9:"Edit ward";s:1:"e";s:9:"Edit ward";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:4:{i:0;i:1;i:1;i:30;i:2;i:34;i:3;i:49;}}i:226;a:8:{s:1:"a";i:227;s:1:"b";s:11:"ward-delete";s:1:"c";i:12;s:1:"d";s:31:"Deactivate and reactivate wards";s:1:"e";s:31:"Deactivate and reactivate wards";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:227;a:8:{s:1:"a";i:228;s:1:"b";s:11:"clinic-list";s:1:"c";i:12;s:1:"d";s:12:"View clinics";s:1:"e";s:12:"View clinics";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:6:{i:0;i:1;i:1;i:30;i:2;i:31;i:3;i:34;i:4;i:39;i:5;i:49;}}i:228;a:8:{s:1:"a";i:229;s:1:"b";s:13:"clinic-create";s:1:"c";i:12;s:1:"d";s:13:"Create clinic";s:1:"e";s:13:"Create clinic";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:4:{i:0;i:1;i:1;i:30;i:2;i:34;i:3;i:49;}}i:229;a:8:{s:1:"a";i:230;s:1:"b";s:11:"clinic-edit";s:1:"c";i:12;s:1:"d";s:11:"Edit clinic";s:1:"e";s:11:"Edit clinic";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:5:{i:0;i:1;i:1;i:30;i:2;i:31;i:3;i:34;i:4;i:49;}}i:230;a:8:{s:1:"a";i:231;s:1:"b";s:13:"clinic-delete";s:1:"c";i:12;s:1:"d";s:33:"Deactivate and reactivate clinics";s:1:"e";s:33:"Deactivate and reactivate clinics";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:231;a:8:{s:1:"a";i:232;s:1:"b";s:14:"procedure-list";s:1:"c";i:12;s:1:"d";s:15:"View procedures";s:1:"e";s:15:"View procedures";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:9:{i:0;i:1;i:1;i:11;i:2;i:30;i:3;i:31;i:4;i:34;i:5;i:38;i:6;i:39;i:7;i:41;i:8;i:49;}}i:232;a:8:{s:1:"a";i:233;s:1:"b";s:16:"procedure-create";s:1:"c";i:12;s:1:"d";s:16:"Create procedure";s:1:"e";s:16:"Create procedure";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:6:{i:0;i:1;i:1;i:30;i:2;i:34;i:3;i:38;i:4;i:41;i:5;i:49;}}i:233;a:8:{s:1:"a";i:234;s:1:"b";s:14:"procedure-edit";s:1:"c";i:12;s:1:"d";s:14:"Edit procedure";s:1:"e";s:14:"Edit procedure";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:4:{i:0;i:1;i:1;i:30;i:2;i:34;i:3;i:49;}}i:234;a:8:{s:1:"a";i:235;s:1:"b";s:16:"procedure-delete";s:1:"c";i:12;s:1:"d";s:36:"Deactivate and reactivate procedures";s:1:"e";s:36:"Deactivate and reactivate procedures";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:235;a:8:{s:1:"a";i:236;s:1:"b";s:23:"procedure-category-list";s:1:"c";i:12;s:1:"d";s:25:"View procedure categories";s:1:"e";s:25:"View procedure categories";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:8:{i:0;i:1;i:1;i:11;i:2;i:31;i:3;i:34;i:4;i:38;i:5;i:39;i:6;i:41;i:7;i:49;}}i:236;a:8:{s:1:"a";i:237;s:1:"b";s:25:"procedure-category-create";s:1:"c";i:12;s:1:"d";s:25:"Create procedure category";s:1:"e";s:25:"Create procedure category";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:237;a:8:{s:1:"a";i:238;s:1:"b";s:23:"procedure-category-edit";s:1:"c";i:12;s:1:"d";s:23:"Edit procedure category";s:1:"e";s:23:"Edit procedure category";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:34;i:3;i:49;}}i:238;a:8:{s:1:"a";i:239;s:1:"b";s:25:"procedure-category-delete";s:1:"c";i:12;s:1:"d";s:46:"Deactivate and reactivate procedure categories";s:1:"e";s:46:"Deactivate and reactivate procedure categories";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:239;a:8:{s:1:"a";i:240;s:1:"b";s:11:"sundry-list";s:1:"c";i:12;s:1:"d";s:13:"View sundries";s:1:"e";s:13:"View sundries";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:9:{i:0;i:1;i:1;i:11;i:2;i:24;i:3;i:30;i:4;i:31;i:5;i:34;i:6;i:39;i:7;i:40;i:8;i:49;}}i:240;a:8:{s:1:"a";i:241;s:1:"b";s:13:"sundry-create";s:1:"c";i:12;s:1:"d";s:13:"Create sundry";s:1:"e";s:13:"Create sundry";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:8:{i:0;i:1;i:1;i:24;i:2;i:30;i:3;i:34;i:4;i:39;i:5;i:40;i:6;i:41;i:7;i:49;}}i:241;a:8:{s:1:"a";i:242;s:1:"b";s:11:"sundry-edit";s:1:"c";i:12;s:1:"d";s:11:"Edit sundry";s:1:"e";s:11:"Edit sundry";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:7:{i:0;i:1;i:1;i:24;i:2;i:30;i:3;i:31;i:4;i:34;i:5;i:40;i:6;i:49;}}i:242;a:8:{s:1:"a";i:243;s:1:"b";s:13:"sundry-delete";s:1:"c";i:12;s:1:"d";s:34:"Deactivate and reactivate sundries";s:1:"e";s:34:"Deactivate and reactivate sundries";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:243;a:8:{s:1:"a";i:244;s:1:"b";s:28:"investigations-category-list";s:1:"c";i:12;s:1:"d";s:30:"View investigations categories";s:1:"e";s:30:"View investigations categories";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:8:{i:0;i:1;i:1;i:11;i:2;i:30;i:3;i:31;i:4;i:34;i:5;i:39;i:6;i:40;i:7;i:49;}}i:244;a:8:{s:1:"a";i:245;s:1:"b";s:30:"investigations-category-create";s:1:"c";i:12;s:1:"d";s:29:"Create investigation category";s:1:"e";s:29:"Create investigation category";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:4:{i:0;i:1;i:1;i:34;i:2;i:40;i:3;i:49;}}i:245;a:8:{s:1:"a";i:246;s:1:"b";s:28:"investigations-category-edit";s:1:"c";i:12;s:1:"d";s:27:"Edit investigation category";s:1:"e";s:27:"Edit investigation category";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:4:{i:0;i:1;i:1;i:34;i:2;i:40;i:3;i:49;}}i:246;a:8:{s:1:"a";i:247;s:1:"b";s:30:"investigations-category-delete";s:1:"c";i:12;s:1:"d";s:51:"Deactivate and reactivate investigations categories";s:1:"e";s:51:"Deactivate and reactivate investigations categories";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:247;a:8:{s:1:"a";i:248;s:1:"b";s:16:"observation-list";s:1:"c";i:12;s:1:"d";s:17:"View observations";s:1:"e";s:17:"View observations";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:6:{i:0;i:1;i:1;i:30;i:2;i:34;i:3;i:39;i:4;i:40;i:5;i:49;}}i:248;a:8:{s:1:"a";i:249;s:1:"b";s:18:"observation-create";s:1:"c";i:12;s:1:"d";s:18:"Create observation";s:1:"e";s:18:"Create observation";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:5:{i:0;i:1;i:1;i:30;i:2;i:34;i:3;i:40;i:4;i:49;}}i:249;a:8:{s:1:"a";i:250;s:1:"b";s:16:"observation-edit";s:1:"c";i:12;s:1:"d";s:16:"Edit observation";s:1:"e";s:16:"Edit observation";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:4:{i:0;i:1;i:1;i:34;i:2;i:40;i:3;i:49;}}i:250;a:8:{s:1:"a";i:251;s:1:"b";s:18:"observation-delete";s:1:"c";i:12;s:1:"d";s:38:"Deactivate and reactivate observations";s:1:"e";s:38:"Deactivate and reactivate observations";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:251;a:8:{s:1:"a";i:252;s:1:"b";s:21:"dosage-frequency-list";s:1:"c";i:12;s:1:"d";s:23:"View dosage frequencies";s:1:"e";s:23:"View dosage frequencies";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:252;a:8:{s:1:"a";i:253;s:1:"b";s:23:"dosage-frequency-create";s:1:"c";i:12;s:1:"d";s:23:"Create dosage frequency";s:1:"e";s:23:"Create dosage frequency";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:4:{i:0;i:1;i:1;i:34;i:2;i:41;i:3;i:49;}}i:253;a:8:{s:1:"a";i:254;s:1:"b";s:21:"dosage-frequency-edit";s:1:"c";i:12;s:1:"d";s:21:"Edit dosage frequency";s:1:"e";s:21:"Edit dosage frequency";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:4:{i:0;i:1;i:1;i:34;i:2;i:41;i:3;i:49;}}i:254;a:8:{s:1:"a";i:255;s:1:"b";s:23:"dosage-frequency-delete";s:1:"c";i:12;s:1:"d";s:44:"Deactivate and reactivate dosage frequencies";s:1:"e";s:44:"Deactivate and reactivate dosage frequencies";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:255;a:8:{s:1:"a";i:256;s:1:"b";s:22:"referral-hospital-list";s:1:"c";i:12;s:1:"d";s:23:"View referral hospitals";s:1:"e";s:23:"View referral hospitals";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:8:{i:0;i:1;i:1;i:30;i:2;i:31;i:3;i:34;i:4;i:39;i:5;i:40;i:6;i:41;i:7;i:49;}}i:256;a:8:{s:1:"a";i:257;s:1:"b";s:24:"referral-hospital-create";s:1:"c";i:12;s:1:"d";s:24:"Create referral hospital";s:1:"e";s:24:"Create referral hospital";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:257;a:8:{s:1:"a";i:258;s:1:"b";s:22:"referral-hospital-edit";s:1:"c";i:12;s:1:"d";s:22:"Edit referral hospital";s:1:"e";s:22:"Edit referral hospital";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:258;a:8:{s:1:"a";i:259;s:1:"b";s:24:"referral-hospital-delete";s:1:"c";i:12;s:1:"d";s:44:"Deactivate and reactivate referral hospitals";s:1:"e";s:44:"Deactivate and reactivate referral hospitals";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:259;a:8:{s:1:"a";i:260;s:1:"b";s:14:"age-group-list";s:1:"c";i:12;s:1:"d";s:15:"View age groups";s:1:"e";s:15:"View age groups";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:7:{i:0;i:1;i:1;i:11;i:2;i:34;i:3;i:39;i:4;i:40;i:5;i:41;i:6;i:49;}}i:260;a:8:{s:1:"a";i:261;s:1:"b";s:16:"age-group-create";s:1:"c";i:12;s:1:"d";s:16:"Create age group";s:1:"e";s:16:"Create age group";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:261;a:8:{s:1:"a";i:262;s:1:"b";s:14:"age-group-edit";s:1:"c";i:12;s:1:"d";s:14:"Edit age group";s:1:"e";s:14:"Edit age group";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:4:{i:0;i:1;i:1;i:34;i:2;i:40;i:3;i:49;}}i:262;a:8:{s:1:"a";i:263;s:1:"b";s:16:"age-group-delete";s:1:"c";i:12;s:1:"d";s:36:"Deactivate and reactivate age groups";s:1:"e";s:36:"Deactivate and reactivate age groups";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:263;a:8:{s:1:"a";i:264;s:1:"b";s:18:"hmis-category-list";s:1:"c";i:12;s:1:"d";s:20:"View hmis categories";s:1:"e";s:20:"View hmis categories";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:34;i:2;i:40;i:3;i:49;}}i:264;a:8:{s:1:"a";i:265;s:1:"b";s:20:"hmis-category-create";s:1:"c";i:12;s:1:"d";s:20:"Create hmis category";s:1:"e";s:20:"Create hmis category";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:4:{i:0;i:1;i:1;i:34;i:2;i:40;i:3;i:49;}}i:265;a:8:{s:1:"a";i:266;s:1:"b";s:18:"hmis-category-edit";s:1:"c";i:12;s:1:"d";s:18:"Edit hmis category";s:1:"e";s:18:"Edit hmis category";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:4:{i:0;i:1;i:1;i:34;i:2;i:40;i:3;i:49;}}i:266;a:8:{s:1:"a";i:267;s:1:"b";s:20:"hmis-category-delete";s:1:"c";i:12;s:1:"d";s:41:"Deactivate and reactivate hmis categories";s:1:"e";s:41:"Deactivate and reactivate hmis categories";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:267;a:8:{s:1:"a";i:268;s:1:"b";s:20:"unit-of-measure-list";s:1:"c";i:12;s:1:"d";s:21:"View units of measure";s:1:"e";s:21:"View units of measure";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:6:{i:0;i:1;i:1;i:11;i:2;i:34;i:3;i:39;i:4;i:40;i:5;i:49;}}i:268;a:8:{s:1:"a";i:269;s:1:"b";s:22:"unit-of-measure-create";s:1:"c";i:12;s:1:"d";s:22:"Create unit of measure";s:1:"e";s:22:"Create unit of measure";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:4:{i:0;i:1;i:1;i:34;i:2;i:40;i:3;i:49;}}i:269;a:8:{s:1:"a";i:270;s:1:"b";s:20:"unit-of-measure-edit";s:1:"c";i:12;s:1:"d";s:20:"Edit unit of measure";s:1:"e";s:20:"Edit unit of measure";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:4:{i:0;i:1;i:1;i:34;i:2;i:40;i:3;i:49;}}i:270;a:8:{s:1:"a";i:271;s:1:"b";s:22:"unit-of-measure-delete";s:1:"c";i:12;s:1:"d";s:41:"Deactivate and reactivate unit of measure";s:1:"e";s:41:"Deactivate and reactivate unit of measure";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:271;a:8:{s:1:"a";i:272;s:1:"b";s:14:"specialty-list";s:1:"c";i:12;s:1:"d";s:16:"View specialties";s:1:"e";s:16:"View specialties";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:34;i:2;i:39;i:3;i:41;i:4;i:49;}}i:272;a:8:{s:1:"a";i:273;s:1:"b";s:16:"specialty-create";s:1:"c";i:12;s:1:"d";s:18:"Create specialties";s:1:"e";s:18:"Create specialties";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:273;a:8:{s:1:"a";i:274;s:1:"b";s:14:"specialty-edit";s:1:"c";i:12;s:1:"d";s:16:"Edit specialties";s:1:"e";s:16:"Edit specialties";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:274;a:8:{s:1:"a";i:275;s:1:"b";s:16:"specialty-delete";s:1:"c";i:12;s:1:"d";s:37:"Deactivate and reactivate specialties";s:1:"e";s:37:"Deactivate and reactivate specialties";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:275;a:8:{s:1:"a";i:276;s:1:"b";s:14:"nssf-rate-edit";s:1:"c";i:7;s:1:"d";s:22:"Edit payroll nssf rate";s:1:"e";s:22:"Edit payroll nssf rate";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:276;a:8:{s:1:"a";i:277;s:1:"b";s:12:"payroll-list";s:1:"c";i:7;s:1:"d";s:13:"View payrolls";s:1:"e";s:13:"View payrolls";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:277;a:8:{s:1:"a";i:278;s:1:"b";s:14:"payroll-create";s:1:"c";i:7;s:1:"d";s:15:"Create payrolls";s:1:"e";s:15:"Create payrolls";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:278;a:8:{s:1:"a";i:279;s:1:"b";s:12:"payroll-edit";s:1:"c";i:7;s:1:"d";s:12:"Edit payroll";s:1:"e";s:12:"Edit payroll";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:279;a:8:{s:1:"a";i:280;s:1:"b";s:14:"payroll-delete";s:1:"c";i:7;s:1:"d";s:33:"Deactivate and reactivate payroll";s:1:"e";s:33:"Deactivate and reactivate payroll";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:280;a:8:{s:1:"a";i:281;s:1:"b";s:13:"discount-list";s:1:"c";i:7;s:1:"d";s:31:"View patient category discounts";s:1:"e";s:31:"View patient category discounts";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:281;a:8:{s:1:"a";i:282;s:1:"b";s:15:"discount-create";s:1:"c";i:7;s:1:"d";s:32:"Create patient category discount";s:1:"e";s:32:"Create patient category discount";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:282;a:8:{s:1:"a";i:283;s:1:"b";s:13:"discount-edit";s:1:"c";i:7;s:1:"d";s:31:"Edit patient category discounts";s:1:"e";s:31:"Edit patient category discounts";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:283;a:8:{s:1:"a";i:284;s:1:"b";s:22:"discount-category-list";s:1:"c";i:7;s:1:"d";s:41:"View patient category discount categories";s:1:"e";s:41:"View patient category discount categories";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:284;a:8:{s:1:"a";i:285;s:1:"b";s:24:"discount-category-create";s:1:"c";i:7;s:1:"d";s:41:"Create patient category discount category";s:1:"e";s:41:"Create patient category discount category";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:285;a:8:{s:1:"a";i:286;s:1:"b";s:22:"discount-category-edit";s:1:"c";i:7;s:1:"d";s:39:"Edit patient category discount category";s:1:"e";s:39:"Edit patient category discount category";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:286;a:8:{s:1:"a";i:287;s:1:"b";s:24:"discount-category-delete";s:1:"c";i:7;s:1:"d";s:62:"Deactivate and reactivate patient category discount categories";s:1:"e";s:62:"Deactivate and reactivate patient category discount categories";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:287;a:8:{s:1:"a";i:288;s:1:"b";s:23:"streamline-reports-list";s:1:"c";i:5;s:1:"d";s:23:"View streamline reports";s:1:"e";s:23:"View streamline reports";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:12:{i:0;i:1;i:1;i:18;i:2;i:29;i:3;i:30;i:4;i:31;i:5;i:33;i:6;i:38;i:7;i:40;i:8;i:43;i:9;i:47;i:10;i:48;i:11;i:49;}}i:288;a:8:{s:1:"a";i:289;s:1:"b";s:20:"expired-drugs-report";s:1:"c";i:5;s:1:"d";s:25:"View expired drugs report";s:1:"e";s:25:"View expired drugs report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:289;a:8:{s:1:"a";i:290;s:1:"b";s:16:"drug-stock-level";s:1:"c";i:5;s:1:"d";s:22:"View drug stock levels";s:1:"e";s:22:"View drug stock levels";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:290;a:8:{s:1:"a";i:291;s:1:"b";s:24:"incoming-inpatient-bills";s:1:"c";i:7;s:1:"d";s:29:"View incoming inpatient bills";s:1:"e";s:29:"View incoming inpatient bills";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:7:{i:0;i:1;i:1;i:2;i:2;i:18;i:3;i:31;i:4;i:33;i:5;i:41;i:6;i:49;}}i:291;a:8:{s:1:"a";i:292;s:1:"b";s:24:"finance-reports-activate";s:1:"c";i:8;s:1:"d";s:24:"Activate Finance Reports";s:1:"e";s:24:"Activate Finance Reports";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:2;i:2;i:31;i:3;i:33;i:4;i:49;}}i:292;a:8:{s:1:"a";i:293;s:1:"b";s:27:"finance-reports-income-cash";s:1:"c";i:8;s:1:"d";s:27:"View The Income Cash Report";s:1:"e";s:27:"View The Income Cash Report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:293;a:8:{s:1:"a";i:294;s:1:"b";s:30:"finance-reports-income-accrual";s:1:"c";i:8;s:1:"d";s:30:"View The Income Accrual Report";s:1:"e";s:30:"View The Income Accrual Report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:294;a:8:{s:1:"a";i:295;s:1:"b";s:29:"finance-reports-received-cash";s:1:"c";i:8;s:1:"d";s:30:"View The Received Cash Reports";s:1:"e";s:30:"View The Received Cash Reports";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:295;a:8:{s:1:"a";i:296;s:1:"b";s:22:"finance-debtors-report";s:1:"c";i:8;s:1:"d";s:23:"View The Debtors Report";s:1:"e";s:23:"View The Debtors Report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:296;a:8:{s:1:"a";i:297;s:1:"b";s:26:"finance-discrepancy-report";s:1:"c";i:8;s:1:"d";s:27:"View The Discrepancy Report";s:1:"e";s:27:"View The Discrepancy Report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:297;a:8:{s:1:"a";i:298;s:1:"b";s:29:"finance-donor-discount-report";s:1:"c";i:8;s:1:"d";s:30:"View The Discounts From Donors";s:1:"e";s:30:"View The Discounts From Donors";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:298;a:8:{s:1:"a";i:299;s:1:"b";s:23:"finance-discount-report";s:1:"c";i:8;s:1:"d";s:20:"View Discount Report";s:1:"e";s:20:"View Discount Report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:299;a:8:{s:1:"a";i:300;s:1:"b";s:32:"finance-hospital-discount-report";s:1:"c";i:8;s:1:"d";s:23:"View Hospital Discounts";s:1:"e";s:23:"View Hospital Discounts";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:300;a:8:{s:1:"a";i:301;s:1:"b";s:23:"finance-patient-debtors";s:1:"c";i:8;s:1:"d";s:20:"View Patient Debtors";s:1:"e";s:20:"View Patient Debtors";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:301;a:8:{s:1:"a";i:302;s:1:"b";s:24:"finance-staff-guarantors";s:1:"c";i:8;s:1:"d";s:28:"View Staff Guarantors Report";s:1:"e";s:28:"View Staff Guarantors Report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:302;a:8:{s:1:"a";i:303;s:1:"b";s:26:"finance-debt-plan-payments";s:1:"c";i:8;s:1:"d";s:23:"View Debt Plan Payments";s:1:"e";s:23:"View Debt Plan Payments";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:303;a:8:{s:1:"a";i:304;s:1:"b";s:21:"finance-balance-sheet";s:1:"c";i:8;s:1:"d";s:22:"Generate Balance Sheet";s:1:"e";s:22:"Generate Balance Sheet";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:304;a:8:{s:1:"a";i:305;s:1:"b";s:28:"finance-profit-or-loss-state";s:1:"c";i:8;s:1:"d";s:28:"View Staff Guarantors Report";s:1:"e";s:28:"View Staff Guarantors Report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:305;a:8:{s:1:"a";i:306;s:1:"b";s:30:"finance-patient-refunds-report";s:1:"c";i:8;s:1:"d";s:26:"View Patient Refund Report";s:1:"e";s:26:"View Patient Refund Report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:306;a:8:{s:1:"a";i:307;s:1:"b";s:28:"Payments-create-payment-item";s:1:"c";i:17;s:1:"d";s:16:"Add Payment Item";s:1:"e";s:16:"Add Payment Item";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:307;a:8:{s:1:"a";i:308;s:1:"b";s:26:"Payments-edit-payment-item";s:1:"c";i:17;s:1:"d";s:17:"Edit Payment Item";s:1:"e";s:17:"Edit Payment Item";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:308;a:8:{s:1:"a";i:309;s:1:"b";s:27:"Payments-list-payment-items";s:1:"c";i:17;s:1:"d";s:18:"View Payment Items";s:1:"e";s:18:"View Payment Items";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:309;a:8:{s:1:"a";i:310;s:1:"b";s:28:"Payments-delete-payment-item";s:1:"c";i:17;s:1:"d";s:19:"Delete Payment Item";s:1:"e";s:19:"Delete Payment Item";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:310;a:8:{s:1:"a";i:311;s:1:"b";s:30:"Payments-activate-payment-item";s:1:"c";i:17;s:1:"d";s:21:"Activate Payment Item";s:1:"e";s:21:"Activate Payment Item";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:311;a:8:{s:1:"a";i:312;s:1:"b";s:21:"Payments-make-payment";s:1:"c";i:17;s:1:"d";s:12:"Make Payment";s:1:"e";s:12:"Make Payment";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:312;a:8:{s:1:"a";i:313;s:1:"b";s:30:"Payments-view-payments-history";s:1:"c";i:17;s:1:"d";s:21:"View Payments History";s:1:"e";s:21:"View Payments History";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:313;a:8:{s:1:"a";i:314;s:1:"b";s:32:"Payments-make-bulk-bill-payments";s:1:"c";i:17;s:1:"d";s:23:"Make Bulk Bill Payments";s:1:"e";s:23:"Make Bulk Bill Payments";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:314;a:8:{s:1:"a";i:315;s:1:"b";s:20:"banking-make-deposit";s:1:"c";i:18;s:1:"d";s:18:"Make Bank Deposits";s:1:"e";s:18:"Make Bank Deposits";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:315;a:8:{s:1:"a";i:316;s:1:"b";s:22:"banking-make-transfers";s:1:"c";i:18;s:1:"d";s:19:"Make Bank Transfers";s:1:"e";s:19:"Make Bank Transfers";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:316;a:8:{s:1:"a";i:317;s:1:"b";s:20:"banking-view-history";s:1:"c";i:18;s:1:"d";s:28:"View Banking History Reports";s:1:"e";s:28:"View Banking History Reports";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:317;a:8:{s:1:"a";i:318;s:1:"b";s:15:"banking-reverse";s:1:"c";i:18;s:1:"d";s:28:"Reverse Banking Transactions";s:1:"e";s:28:"Reverse Banking Transactions";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:318;a:8:{s:1:"a";i:319;s:1:"b";s:22:"banking-reconciliation";s:1:"c";i:18;s:1:"d";s:27:"Reconcile Bank Transactions";s:1:"e";s:27:"Reconcile Bank Transactions";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:319;a:8:{s:1:"a";i:320;s:1:"b";s:16:"banking-register";s:1:"c";i:18;s:1:"d";s:21:"View Banking Register";s:1:"e";s:21:"View Banking Register";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:320;a:8:{s:1:"a";i:321;s:1:"b";s:17:"Invoices-generate";s:1:"c";i:19;s:1:"d";s:17:"Generate Invoices";s:1:"e";s:17:"Generate Invoices";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:4:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:49;}}i:321;a:8:{s:1:"a";i:322;s:1:"b";s:25:"Invoices-receive-payments";s:1:"c";i:19;s:1:"d";s:24:"Receive Invoice Payments";s:1:"e";s:24:"Receive Invoice Payments";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:4:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:49;}}i:322;a:8:{s:1:"a";i:323;s:1:"b";s:30:"Invoices-view-payments-history";s:1:"c";i:19;s:1:"d";s:21:"View Invoice Payments";s:1:"e";s:21:"View Invoice Payments";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:49;}}i:323;a:8:{s:1:"a";i:324;s:1:"b";s:23:"patient-flow-monitoring";s:1:"c";i:4;s:1:"d";s:36:"View patient flow in hospital system";s:1:"e";s:36:"View patient flow in hospital system";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:18:{i:0;i:1;i:1;i:4;i:2;i:13;i:3;i:18;i:4;i:19;i:5;i:24;i:6;i:29;i:7;i:30;i:8;i:31;i:9;i:33;i:10;i:34;i:11;i:39;i:12;i:40;i:13;i:41;i:14;i:42;i:15;i:43;i:16;i:47;i:17;i:49;}}i:324;a:8:{s:1:"a";i:325;s:1:"b";s:9:"drug-list";s:1:"c";i:13;s:1:"d";s:10:"View drugs";s:1:"e";s:10:"View drugs";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:6:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:24;i:4;i:31;i:5;i:49;}}i:325;a:8:{s:1:"a";i:326;s:1:"b";s:11:"drug-create";s:1:"c";i:13;s:1:"d";s:11:"Create drug";s:1:"e";s:11:"Create drug";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:24;i:4;i:49;}}i:326;a:8:{s:1:"a";i:327;s:1:"b";s:9:"drug-edit";s:1:"c";i:13;s:1:"d";s:9:"Edit drug";s:1:"e";s:9:"Edit drug";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:24;i:4;i:49;}}i:327;a:8:{s:1:"a";i:328;s:1:"b";s:11:"drug-delete";s:1:"c";i:13;s:1:"d";s:11:"Delete drug";s:1:"e";s:11:"Delete drug";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:328;a:8:{s:1:"a";i:329;s:1:"b";s:13:"services-list";s:1:"c";i:12;s:1:"d";s:13:"View Services";s:1:"e";s:13:"View Services";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:7:{i:0;i:1;i:1;i:30;i:2;i:31;i:3;i:34;i:4;i:39;i:5;i:41;i:6;i:49;}}i:329;a:8:{s:1:"a";i:330;s:1:"b";s:15:"services-create";s:1:"c";i:12;s:1:"d";s:15:"Create Services";s:1:"e";s:15:"Create Services";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:5:{i:0;i:1;i:1;i:30;i:2;i:31;i:3;i:34;i:4;i:49;}}i:330;a:8:{s:1:"a";i:331;s:1:"b";s:13:"services-edit";s:1:"c";i:12;s:1:"d";s:13:"Edit Services";s:1:"e";s:13:"Edit Services";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:6:{i:0;i:1;i:1;i:30;i:2;i:31;i:3;i:34;i:4;i:41;i:5;i:49;}}i:331;a:8:{s:1:"a";i:332;s:1:"b";s:15:"services-delete";s:1:"c";i:12;s:1:"d";s:19:"Deactivate Services";s:1:"e";s:19:"Deactivate Services";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:332;a:8:{s:1:"a";i:333;s:1:"b";s:25:"edit-patient-consultation";s:1:"c";i:4;s:1:"d";s:25:"Edit patient consultation";s:1:"e";s:25:"Edit patient consultation";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:7:{i:0;i:1;i:1;i:4;i:2;i:18;i:3;i:31;i:4;i:34;i:5;i:42;i:6;i:49;}}i:333;a:8:{s:1:"a";i:334;s:1:"b";s:22:"edit-patient-inpatient";s:1:"c";i:4;s:1:"d";s:35:"Edit patient in-patient information";s:1:"e";s:35:"Edit patient in-patient information";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:10:{i:0;i:1;i:1;i:4;i:2;i:13;i:3;i:18;i:4;i:29;i:5;i:30;i:6;i:34;i:7;i:41;i:8;i:42;i:9;i:49;}}i:334;a:8:{s:1:"a";i:335;s:1:"b";s:24:"view-prescription-errors";s:1:"c";i:9;s:1:"d";s:24:"View prescription errors";s:1:"e";s:24:"View prescription errors";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:335;a:8:{s:1:"a";i:336;s:1:"b";s:23:"change-general-settings";s:1:"c";i:9;s:1:"d";s:49:"Change general settings for the Stre@mline system";s:1:"e";s:49:"Change general settings for the Stre@mline system";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:336;a:8:{s:1:"a";i:337;s:1:"b";s:26:"price-list-category-create";s:1:"c";i:7;s:1:"d";s:30:"Create new price list category";s:1:"e";s:30:"Create new price list category";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:337;a:8:{s:1:"a";i:338;s:1:"b";s:24:"price-list-category-view";s:1:"c";i:7;s:1:"d";s:26:"View price list categories";s:1:"e";s:26:"View price list categories";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:40;i:3;i:49;}}i:338;a:8:{s:1:"a";i:339;s:1:"b";s:26:"price-list-category-delete";s:1:"c";i:7;s:1:"d";s:26:"Delete price list category";s:1:"e";s:26:"Delete price list category";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:339;a:8:{s:1:"a";i:340;s:1:"b";s:32:"price-list-category-edit-pricing";s:1:"c";i:7;s:1:"d";s:31:"Edit price list category prices";s:1:"e";s:31:"Edit price list category prices";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:3:{i:0;i:1;i:1;i:40;i:2;i:49;}}i:340;a:8:{s:1:"a";i:341;s:1:"b";s:34:"price-list-category-change-billing";s:1:"c";i:7;s:1:"d";s:41:"Change price list category during billing";s:1:"e";s:41:"Change price list category during billing";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:341;a:8:{s:1:"a";i:342;s:1:"b";s:23:"streamline-bills-create";s:1:"c";i:20;s:1:"d";s:25:"Generate Streamline Bills";s:1:"e";s:25:"Generate Streamline Bills";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:49;}}i:342;a:8:{s:1:"a";i:343;s:1:"b";s:22:"streamline-bills-index";s:1:"c";i:20;s:1:"d";s:21:"View Streamline Bills";s:1:"e";s:21:"View Streamline Bills";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:33;i:4;i:49;}}i:343;a:8:{s:1:"a";i:344;s:1:"b";s:17:"nira-birth-report";s:1:"c";i:21;s:1:"d";s:17:"NIRA Birth Report";s:1:"e";s:17:"NIRA Birth Report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:344;a:8:{s:1:"a";i:345;s:1:"b";s:31:"stores-daily-stock-value-report";s:1:"c";i:15;s:1:"d";s:40:"View the stores daily stock value report";s:1:"e";s:40:"View the stores daily stock value report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:24;i:2;i:31;i:3;i:40;i:4;i:49;}}i:345;a:8:{s:1:"a";i:346;s:1:"b";s:24:"dispensing-prescriptions";s:1:"c";i:13;s:1:"d";s:22:"Dispense Prescriptions";s:1:"e";s:22:"Dispense Prescriptions";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:24;i:4;i:49;}}i:346;a:8:{s:1:"a";i:347;s:1:"b";s:21:"confirm-prescriptions";s:1:"c";i:13;s:1:"d";s:21:"Confirm Prescriptions";s:1:"e";s:21:"Confirm Prescriptions";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:24;i:4;i:49;}}i:347;a:8:{s:1:"a";i:348;s:1:"b";s:17:"lab_specimen-list";s:1:"c";i:10;s:1:"d";s:17:"List Lab Specimen";s:1:"e";s:17:"List Lab Specimen";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:6:{i:0;i:1;i:1;i:9;i:2;i:11;i:3;i:39;i:4;i:40;i:5;i:49;}}i:348;a:8:{s:1:"a";i:349;s:1:"b";s:19:"lab_specimen-create";s:1:"c";i:10;s:1:"d";s:19:"Create Lab Specimen";s:1:"e";s:19:"Create Lab Specimen";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:6:{i:0;i:1;i:1;i:9;i:2;i:11;i:3;i:39;i:4;i:40;i:5;i:49;}}i:349;a:8:{s:1:"a";i:350;s:1:"b";s:17:"lab_specimen-edit";s:1:"c";i:10;s:1:"d";s:17:"Edit Lab Specimen";s:1:"e";s:17:"Edit Lab Specimen";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:3:{i:0;i:1;i:1;i:40;i:2;i:49;}}i:350;a:8:{s:1:"a";i:351;s:1:"b";s:19:"lab_specimen-detail";s:1:"c";i:10;s:1:"d";s:30:"Get Details about Lab Specimen";s:1:"e";s:30:"Get Details about Lab Specimen";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:6:{i:0;i:1;i:1;i:9;i:2;i:11;i:3;i:39;i:4;i:40;i:5;i:49;}}i:351;a:8:{s:1:"a";i:352;s:1:"b";s:19:"lab_specimen-delete";s:1:"c";i:10;s:1:"d";s:19:"Delete Lab Specimen";s:1:"e";s:19:"Delete Lab Specimen";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:352;a:8:{s:1:"a";i:353;s:1:"b";s:19:"lab_specimen-status";s:1:"c";i:10;s:1:"d";s:35:"Activate or Deactivate Lab Specimen";s:1:"e";s:35:"Activate or Deactivate Lab Specimen";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:353;a:8:{s:1:"a";i:354;s:1:"b";s:18:"view-clinical-data";s:1:"c";i:12;s:1:"d";s:27:"Interact With Clinical Data";s:1:"e";s:27:"Interact With Clinical Data";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:9:{i:0;i:1;i:1;i:24;i:2;i:30;i:3;i:31;i:4;i:34;i:5;i:38;i:6;i:40;i:7;i:41;i:8;i:49;}}i:354;a:8:{s:1:"a";i:355;s:1:"b";s:25:"investigations-statistics";s:1:"c";i:10;s:1:"d";s:29:"View Investigation Statistics";s:1:"e";s:29:"View Investigation Statistics";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:6:{i:0;i:1;i:1;i:31;i:2;i:38;i:3;i:39;i:4;i:40;i:5;i:49;}}i:355;a:8:{s:1:"a";i:356;s:1:"b";s:17:"drug-route-delete";s:1:"c";i:12;s:1:"d";s:37:"Deactivate and reactivate drug routes";s:1:"e";s:37:"Deactivate and reactivate drug routes";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:356;a:8:{s:1:"a";i:357;s:1:"b";s:15:"drug-route-edit";s:1:"c";i:12;s:1:"d";s:15:"Edit drug route";s:1:"e";s:15:"Edit drug route";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:4:{i:0;i:1;i:1;i:24;i:2;i:34;i:3;i:49;}}i:357;a:8:{s:1:"a";i:358;s:1:"b";s:17:"drug-route-create";s:1:"c";i:12;s:1:"d";s:17:"Create drug route";s:1:"e";s:17:"Create drug route";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:4:{i:0;i:1;i:1;i:24;i:2;i:34;i:3;i:49;}}i:358;a:8:{s:1:"a";i:359;s:1:"b";s:15:"drug-route-list";s:1:"c";i:12;s:1:"d";s:16:"View drug routes";s:1:"e";s:16:"View drug routes";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:24;i:2;i:34;i:3;i:41;i:4;i:49;}}i:359;a:8:{s:1:"a";i:360;s:1:"b";s:30:"streamline-home-patient-search";s:1:"c";i:4;s:1:"d";s:30:"Streamline Home Patient Search";s:1:"e";s:30:"Streamline Home Patient Search";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:14:{i:0;i:1;i:1;i:4;i:2;i:9;i:3;i:13;i:4;i:15;i:5;i:18;i:6;i:19;i:7;i:29;i:8;i:31;i:9;i:34;i:10;i:40;i:11;i:41;i:12;i:42;i:13;i:49;}}i:360;a:8:{s:1:"a";i:361;s:1:"b";s:19:"view-bed-categories";s:1:"c";i:9;s:1:"d";s:19:"View Bed Categories";s:1:"e";s:19:"View Bed Categories";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:361;a:8:{s:1:"a";i:362;s:1:"b";s:16:"view-departments";s:1:"c";i:9;s:1:"d";s:16:"View Departments";s:1:"e";s:16:"View Departments";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:362;a:8:{s:1:"a";i:363;s:1:"b";s:25:"view-hospital-information";s:1:"c";i:9;s:1:"d";s:25:"View Hospital Information";s:1:"e";s:25:"View Hospital Information";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:363;a:8:{s:1:"a";i:364;s:1:"b";s:23:"view-patient-categories";s:1:"c";i:9;s:1:"d";s:23:"View Patient Categories";s:1:"e";s:23:"View Patient Categories";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:364;a:8:{s:1:"a";i:365;s:1:"b";s:16:"view-occupations";s:1:"c";i:9;s:1:"d";s:16:"View Occupations";s:1:"e";s:16:"View Occupations";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:365;a:8:{s:1:"a";i:366;s:1:"b";s:24:"view-resource-categories";s:1:"c";i:9;s:1:"d";s:24:"View Resource Categories";s:1:"e";s:24:"View Resource Categories";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:366;a:8:{s:1:"a";i:367;s:1:"b";s:20:"view-staff-positions";s:1:"c";i:9;s:1:"d";s:20:"View Staff Positions";s:1:"e";s:20:"View Staff Positions";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:367;a:8:{s:1:"a";i:368;s:1:"b";s:16:"view-audit-trail";s:1:"c";i:9;s:1:"d";s:16:"View Audit Trail";s:1:"e";s:16:"View Audit Trail";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:368;a:8:{s:1:"a";i:369;s:1:"b";s:11:"view-donors";s:1:"c";i:9;s:1:"d";s:29:"View Donors (Hospital Scheme)";s:1:"e";s:29:"View Donors (Hospital Scheme)";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:369;a:8:{s:1:"a";i:370;s:1:"b";s:10:"view-banks";s:1:"c";i:9;s:1:"d";s:10:"View Banks";s:1:"e";s:10:"View Banks";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:370;a:8:{s:1:"a";i:371;s:1:"b";s:14:"view-suppliers";s:1:"c";i:9;s:1:"d";s:14:"View Suppliers";s:1:"e";s:14:"View Suppliers";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:40;i:3;i:49;}}i:371;a:8:{s:1:"a";i:372;s:1:"b";s:14:"view-resources";s:1:"c";i:9;s:1:"d";s:14:"View Resources";s:1:"e";s:14:"View Resources";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:372;a:8:{s:1:"a";i:373;s:1:"b";s:27:"imaging-incoming-cardiology";s:1:"c";i:10;s:1:"d";s:33:"View Incoming Cardiology Requests";s:1:"e";s:33:"View Incoming Cardiology Requests";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:18;i:2;i:38;i:3;i:49;}}i:373;a:8:{s:1:"a";i:374;s:1:"b";s:26:"imaging-cardiology-results";s:1:"c";i:10;s:1:"d";s:23:"View Cardiology Results";s:1:"e";s:23:"View Cardiology Results";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:18;i:2;i:38;i:3;i:49;}}i:374;a:8:{s:1:"a";i:375;s:1:"b";s:19:"view-family-account";s:1:"c";i:7;s:1:"d";s:19:"View Family Account";s:1:"e";s:19:"View Family Account";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:6:{i:0;i:1;i:1;i:2;i:2;i:18;i:3;i:29;i:4;i:31;i:5;i:49;}}i:375;a:8:{s:1:"a";i:376;s:1:"b";s:21:"create-family-account";s:1:"c";i:7;s:1:"d";s:21:"Create Family Account";s:1:"e";s:21:"Create Family Account";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:3:{i:0;i:1;i:1;i:18;i:2;i:49;}}i:376;a:8:{s:1:"a";i:377;s:1:"b";s:28:"create-core-chart-of-account";s:1:"c";i:7;s:1:"d";s:37:"Create Or Edit Core Chart Of Accounts";s:1:"e";s:37:"Create Or Edit Core Chart Of Accounts";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:377;a:8:{s:1:"a";i:378;s:1:"b";s:26:"cancel-investigation-order";s:1:"c";i:10;s:1:"d";s:29:"Cancel Ordered Investigations";s:1:"e";s:29:"Cancel Ordered Investigations";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:7:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:39;i:4;i:40;i:5;i:41;i:6;i:49;}}i:378;a:8:{s:1:"a";i:379;s:1:"b";s:37:"restore-cancelled-investigation-order";s:1:"c";i:10;s:1:"d";s:37:"View Cancelled Ordered Investigations";s:1:"e";s:37:"View Cancelled Ordered Investigations";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:8:{i:0;i:1;i:1;i:9;i:2;i:11;i:3;i:18;i:4;i:39;i:5;i:40;i:6;i:41;i:7;i:49;}}i:379;a:8:{s:1:"a";i:380;s:1:"b";s:31:"receive-items-directly-pharmacy";s:1:"c";i:15;s:1:"d";s:36:"Receive items directly into pharmacy";s:1:"e";s:36:"Receive items directly into pharmacy";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:3:{i:0;i:1;i:1;i:24;i:2;i:49;}}i:380;a:8:{s:1:"a";i:381;s:1:"b";s:28:"receive-items-directly-store";s:1:"c";i:15;s:1:"d";s:33:"Receive items directly into store";s:1:"e";s:33:"Receive items directly into store";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:4:{i:0;i:1;i:1;i:24;i:2;i:37;i:3;i:49;}}i:381;a:8:{s:1:"a";i:382;s:1:"b";s:34:"pharmacy-ward-dispensing-per-chart";s:1:"c";i:13;s:1:"d";s:25:"Ward Dispensing Per Chart";s:1:"e";s:25:"Ward Dispensing Per Chart";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:11:{i:0;i:1;i:1;i:4;i:2;i:13;i:3;i:15;i:4;i:18;i:5;i:21;i:6;i:24;i:7;i:30;i:8;i:38;i:9;i:41;i:10;i:49;}}i:382;a:8:{s:1:"a";i:383;s:1:"b";s:27:"investigations-codes-create";s:1:"c";i:10;s:1:"d";s:48:"Create Investigation Test Codes For Lab Machines";s:1:"e";s:48:"Create Investigation Test Codes For Lab Machines";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:4:{i:0;i:1;i:1;i:39;i:2;i:40;i:3;i:49;}}i:383;a:8:{s:1:"a";i:384;s:1:"b";s:25:"investigations-codes-list";s:1:"c";i:10;s:1:"d";s:46:"View Investigation Test Codes For Lab Machines";s:1:"e";s:46:"View Investigation Test Codes For Lab Machines";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:8:{i:0;i:1;i:1;i:9;i:2;i:11;i:3;i:31;i:4;i:38;i:5;i:39;i:6;i:40;i:7;i:49;}}i:384;a:8:{s:1:"a";i:385;s:1:"b";s:27:"investigations-codes-delete";s:1:"c";i:10;s:1:"d";s:48:"Delete Investigation Test Codes For Lab Machines";s:1:"e";s:48:"Delete Investigation Test Codes For Lab Machines";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:3:{i:0;i:1;i:1;i:40;i:2;i:49;}}i:385;a:8:{s:1:"a";i:386;s:1:"b";s:33:"manage-frequently-asked-questions";s:1:"c";i:16;s:1:"d";s:34:"Manage frequently asked questions.";s:1:"e";s:34:"Manage frequently asked questions.";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:386;a:8:{s:1:"a";i:387;s:1:"b";s:19:"edit-patient-triage";s:1:"c";i:4;s:1:"d";s:19:"Edit patient triage";s:1:"e";s:19:"Edit patient triage";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:8:{i:0;i:1;i:1;i:13;i:2;i:15;i:3;i:24;i:4;i:30;i:5;i:34;i:6;i:41;i:7;i:49;}}i:387;a:8:{s:1:"a";i:388;s:1:"b";s:22:"lab-instruments-create";s:1:"c";i:10;s:1:"d";s:22:"Create Lab Instruments";s:1:"e";s:22:"Create Lab Instruments";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:4:{i:0;i:1;i:1;i:39;i:2;i:40;i:3;i:49;}}i:388;a:8:{s:1:"a";i:389;s:1:"b";s:20:"lab-instruments-list";s:1:"c";i:10;s:1:"d";s:20:"View Lab Instruments";s:1:"e";s:20:"View Lab Instruments";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:7:{i:0;i:1;i:1;i:9;i:2;i:11;i:3;i:31;i:4;i:39;i:5;i:40;i:6;i:49;}}i:389;a:8:{s:1:"a";i:390;s:1:"b";s:22:"lab-instruments-delete";s:1:"c";i:10;s:1:"d";s:22:"Delete Lab Instruments";s:1:"e";s:22:"Delete Lab Instruments";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:3:{i:0;i:1;i:1;i:40;i:2;i:49;}}i:390;a:8:{s:1:"a";i:391;s:1:"b";s:22:"create-patient-episode";s:1:"c";i:4;s:1:"d";s:26:"Create new patient episode";s:1:"e";s:26:"Create new patient episode";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:6:{i:0;i:1;i:1;i:19;i:2;i:29;i:3;i:31;i:4;i:34;i:5;i:49;}}i:391;a:8:{s:1:"a";i:392;s:1:"b";s:34:"create-patient-episode-with-clinic";s:1:"c";i:4;s:1:"d";s:34:"Create patient episode with clinic";s:1:"e";s:34:"Create patient episode with clinic";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:6:{i:0;i:1;i:1;i:19;i:2;i:29;i:3;i:31;i:4;i:34;i:5;i:49;}}i:392;a:8:{s:1:"a";i:393;s:1:"b";s:26:"create-maternity-admission";s:1:"c";i:4;s:1:"d";s:37:"Maternity admission from patient Home";s:1:"e";s:37:"Maternity admission from patient Home";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:10:{i:0;i:1;i:1;i:4;i:2;i:9;i:3;i:13;i:4;i:15;i:5;i:29;i:6;i:30;i:7;i:34;i:8;i:41;i:9;i:49;}}i:393;a:8:{s:1:"a";i:394;s:1:"b";s:21:"create-ward-admission";s:1:"c";i:4;s:1:"d";s:32:"Ward admission from patient home";s:1:"e";s:32:"Ward admission from patient home";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:12:{i:0;i:1;i:1;i:4;i:2;i:9;i:3;i:13;i:4;i:15;i:5;i:18;i:6;i:29;i:7;i:30;i:8;i:34;i:9;i:41;i:10;i:42;i:11;i:49;}}i:394;a:8:{s:1:"a";i:395;s:1:"b";s:21:"ward-discounts-report";s:1:"c";i:8;s:1:"d";s:26:"View ward discounts report";s:1:"e";s:26:"View ward discounts report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:395;a:8:{s:1:"a";i:396;s:1:"b";s:11:"drug-refill";s:1:"c";i:4;s:1:"d";s:31:"Drug refill of given treatments";s:1:"e";s:31:"Drug refill of given treatments";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:5:{i:0;i:1;i:1;i:13;i:2;i:21;i:3;i:34;i:4;i:49;}}i:396;a:8:{s:1:"a";i:397;s:1:"b";s:17:"patient-follow-up";s:1:"c";i:4;s:1:"d";s:18:"Patient Follow-ups";s:1:"e";s:18:"Patient Follow-ups";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:15:{i:0;i:1;i:1;i:4;i:2;i:9;i:3;i:11;i:4;i:13;i:5;i:19;i:6;i:21;i:7;i:29;i:8;i:30;i:9;i:34;i:10;i:39;i:11;i:40;i:12;i:41;i:13;i:42;i:14;i:49;}}i:397;a:8:{s:1:"a";i:398;s:1:"b";s:16:"view-sms-reports";s:1:"c";i:9;s:1:"d";s:30:"Send SMS to Staff and Patients";s:1:"e";s:30:"Send SMS to Staff and Patients";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:398;a:8:{s:1:"a";i:399;s:1:"b";s:8:"send-sms";s:1:"c";i:9;s:1:"d";s:27:"View Reports about sent SMS";s:1:"e";s:27:"View Reports about sent SMS";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:399;a:8:{s:1:"a";i:400;s:1:"b";s:28:"staff-payments-configuration";s:1:"c";i:4;s:1:"d";s:28:"Staff Payment Configurations";s:1:"e";s:28:"Staff Payment Configurations";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:34;i:3;i:49;}}i:400;a:8:{s:1:"a";i:401;s:1:"b";s:34:"create-patient-episode-with-doctor";s:1:"c";i:4;s:1:"d";s:34:"Create patient episode with doctor";s:1:"e";s:34:"Create patient episode with doctor";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:10:{i:0;i:1;i:1;i:4;i:2;i:18;i:3;i:19;i:4;i:29;i:5;i:30;i:6;i:31;i:7;i:34;i:8;i:41;i:9;i:49;}}i:401;a:8:{s:1:"a";i:402;s:1:"b";s:45:"create-patient-episode-with-doctor-and-clinic";s:1:"c";i:4;s:1:"d";s:45:"Create patient episode with doctor and clinic";s:1:"e";s:45:"Create patient episode with doctor and clinic";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:5:{i:0;i:1;i:1;i:19;i:2;i:29;i:3;i:34;i:4;i:49;}}i:402;a:8:{s:1:"a";i:403;s:1:"b";s:38:"view-patient-episode-primary-diagnoses";s:1:"c";i:4;s:1:"d";s:30:"View episode primary diagnoses";s:1:"e";s:30:"View episode primary diagnoses";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:12:{i:0;i:1;i:1;i:4;i:2;i:18;i:3;i:19;i:4;i:21;i:5;i:29;i:6;i:31;i:7;i:34;i:8;i:39;i:9;i:40;i:10;i:42;i:11;i:49;}}i:403;a:8:{s:1:"a";i:404;s:1:"b";s:36:"view-patient-episode-other-diagnoses";s:1:"c";i:4;s:1:"d";s:28:"View episode other diagnoses";s:1:"e";s:28:"View episode other diagnoses";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:9:{i:0;i:1;i:1;i:4;i:2;i:21;i:3;i:29;i:4;i:34;i:5;i:39;i:6;i:40;i:7;i:42;i:8;i:49;}}i:404;a:8:{s:1:"a";i:405;s:1:"b";s:45:"view-patient-episode-clinic-from-patient-home";s:1:"c";i:4;s:1:"d";s:37:"View episode clinic from patient home";s:1:"e";s:37:"View episode clinic from patient home";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:17:{i:0;i:1;i:1;i:4;i:2;i:9;i:3;i:11;i:4;i:13;i:5;i:15;i:6;i:18;i:7;i:19;i:8;i:29;i:9;i:30;i:10;i:33;i:11;i:34;i:12;i:39;i:13;i:40;i:14;i:41;i:15;i:42;i:16;i:49;}}i:405;a:8:{s:1:"a";i:406;s:1:"b";s:23:"view-theatre-management";s:1:"c";i:12;s:1:"d";s:23:"View theatre management";s:1:"e";s:23:"View theatre management";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:3:{i:0;i:1;i:1;i:34;i:2;i:49;}}i:406;a:8:{s:1:"a";i:407;s:1:"b";s:30:"view-theatre-drugs-stock-sheet";s:1:"c";i:12;s:1:"d";s:30:"View theatre drugs stock sheet";s:1:"e";s:30:"View theatre drugs stock sheet";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:5:{i:0;i:1;i:1;i:24;i:2;i:31;i:3;i:34;i:4;i:49;}}i:407;a:8:{s:1:"a";i:408;s:1:"b";s:33:"view-theatre-sundries-stock-sheet";s:1:"c";i:12;s:1:"d";s:33:"View theatre sundries stock sheet";s:1:"e";s:33:"View theatre sundries stock sheet";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:6:{i:0;i:1;i:1;i:24;i:2;i:31;i:3;i:34;i:4;i:41;i:5;i:49;}}i:408;a:8:{s:1:"a";i:409;s:1:"b";s:25:"view-theatre-requisitions";s:1:"c";i:12;s:1:"d";s:25:"View theatre requisitions";s:1:"e";s:25:"View theatre requisitions";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:34;i:3;i:49;}}i:409;a:8:{s:1:"a";i:410;s:1:"b";s:39:"view-incoming-ward-dispensing-per-chart";s:1:"c";i:13;s:1:"d";s:48:"View Incoming Ward Dispensing Per Chart Requests";s:1:"e";s:48:"View Incoming Ward Dispensing Per Chart Requests";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:7:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:24;i:4;i:30;i:5;i:31;i:6;i:49;}}i:410;a:8:{s:1:"a";i:411;s:1:"b";s:34:"approve-ward-dispensings-per-chart";s:1:"c";i:13;s:1:"d";s:41:"Approve Ward Dispensing Per Chart Request";s:1:"e";s:41:"Approve Ward Dispensing Per Chart Request";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:24;i:4;i:49;}}i:411;a:8:{s:1:"a";i:412;s:1:"b";s:38:"view-ward-dispensings-per-chart-report";s:1:"c";i:13;s:1:"d";s:37:"View Ward Dispensing Per Chart Report";s:1:"e";s:37:"View Ward Dispensing Per Chart Report";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:7:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:24;i:4;i:30;i:5;i:31;i:6;i:49;}}i:412;a:8:{s:1:"a";i:413;s:1:"b";s:44:"create-patient-episode-with-self-lab-request";s:1:"c";i:4;s:1:"d";s:44:"Create patient episode with lab self request";s:1:"e";s:44:"Create patient episode with lab self request";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:6:{i:0;i:1;i:1;i:4;i:2;i:19;i:3;i:29;i:4;i:34;i:5;i:49;}}i:413;a:8:{s:1:"a";i:414;s:1:"b";s:24:"create-ward-item-request";s:1:"c";i:13;s:1:"d";s:24:"Create ward item request";s:1:"e";s:24:"Create ward item request";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:11:{i:0;i:1;i:1;i:4;i:2;i:13;i:3;i:15;i:4;i:18;i:5;i:21;i:6;i:24;i:7;i:30;i:8;i:38;i:9;i:41;i:10;i:49;}}i:414;a:8:{s:1:"a";i:415;s:1:"b";s:32:"view-incoming-ward-item-requests";s:1:"c";i:13;s:1:"d";s:31:"View incoming ward item request";s:1:"e";s:31:"View incoming ward item request";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:6:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:24;i:4;i:31;i:5;i:49;}}i:415;a:8:{s:1:"a";i:416;s:1:"b";s:20:"approve-ward-request";s:1:"c";i:13;s:1:"d";s:34:"Approve incoming ward item request";s:1:"e";s:34:"Approve incoming ward item request";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:24;i:4;i:49;}}i:416;a:8:{s:1:"a";i:417;s:1:"b";s:21:"dispense-ward-request";s:1:"c";i:13;s:1:"d";s:35:"Dispense incoming ward item request";s:1:"e";s:35:"Dispense incoming ward item request";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:24;i:4;i:49;}}i:417;a:8:{s:1:"a";i:418;s:1:"b";s:14:"view-companies";s:1:"c";i:9;s:1:"d";s:14:"View Companies";s:1:"e";s:14:"View Companies";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:418;a:8:{s:1:"a";i:419;s:1:"b";s:36:"order-for-services-from-patient-home";s:1:"c";i:4;s:1:"d";s:36:"Order for services from patient home";s:1:"e";s:36:"Order for services from patient home";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:14:{i:0;i:1;i:1;i:4;i:2;i:9;i:3;i:13;i:4;i:15;i:5;i:18;i:6;i:19;i:7;i:29;i:8;i:30;i:9;i:31;i:10;i:34;i:11;i:41;i:12;i:42;i:13;i:49;}}i:419;a:8:{s:1:"a";i:420;s:1:"b";s:33:"remove-items-from-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:39:"Remove saved items from inpatient sheet";s:1:"e";s:39:"Remove saved items from inpatient sheet";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:9:{i:0;i:1;i:1;i:4;i:2;i:18;i:3;i:30;i:4;i:31;i:5;i:34;i:6;i:41;i:7;i:42;i:8;i:49;}}i:420;a:8:{s:1:"a";i:421;s:1:"b";s:14:"perform-triage";s:1:"c";i:4;s:1:"d";s:14:"Perform Triage";s:1:"e";s:14:"Perform Triage";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:9:{i:0;i:1;i:1;i:13;i:2;i:15;i:3;i:24;i:4;i:29;i:5;i:30;i:6;i:34;i:7;i:41;i:8;i:49;}}i:421;a:8:{s:1:"a";i:422;s:1:"b";s:19:"create-consultation";s:1:"c";i:4;s:1:"d";s:19:"Create Consultation";s:1:"e";s:19:"Create Consultation";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:5:{i:0;i:1;i:1;i:4;i:2;i:34;i:3;i:42;i:4;i:49;}}i:422;a:8:{s:1:"a";i:423;s:1:"b";s:22:"create-theatre-surgery";s:1:"c";i:4;s:1:"d";s:22:"Create theatre surgery";s:1:"e";s:22:"Create theatre surgery";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:5:{i:0;i:1;i:1;i:4;i:2;i:13;i:3;i:34;i:4;i:49;}}i:423;a:8:{s:1:"a";i:424;s:1:"b";s:26:"create-theatre-anaesthesia";s:1:"c";i:4;s:1:"d";s:26:"Create theatre anaesthesia";s:1:"e";s:26:"Create theatre anaesthesia";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:5:{i:0;i:1;i:1;i:4;i:2;i:13;i:3;i:34;i:4;i:49;}}i:424;a:8:{s:1:"a";i:425;s:1:"b";s:19:"create-prescription";s:1:"c";i:4;s:1:"d";s:19:"Create prescription";s:1:"e";s:19:"Create prescription";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:12:{i:0;i:1;i:1;i:4;i:2;i:13;i:3;i:15;i:4;i:18;i:5;i:21;i:6;i:29;i:7;i:30;i:8;i:34;i:9;i:41;i:10;i:42;i:11;i:49;}}i:425;a:8:{s:1:"a";i:426;s:1:"b";s:24:"order-for-investigations";s:1:"c";i:4;s:1:"d";s:24:"Order for investigations";s:1:"e";s:24:"Order for investigations";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:11:{i:0;i:1;i:1;i:4;i:2;i:13;i:3;i:15;i:4;i:19;i:5;i:29;i:6;i:30;i:7;i:34;i:8;i:41;i:9;i:42;i:10;i:49;}}i:426;a:8:{s:1:"a";i:427;s:1:"b";s:20:"view-episode-summary";s:1:"c";i:4;s:1:"d";s:20:"View episode summary";s:1:"e";s:20:"View episode summary";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:18:{i:0;i:1;i:1;i:4;i:2;i:9;i:3;i:13;i:4;i:15;i:5;i:18;i:6;i:19;i:7;i:21;i:8;i:29;i:9;i:30;i:10;i:31;i:11;i:33;i:12;i:34;i:13;i:39;i:14;i:40;i:15;i:41;i:16;i:42;i:17;i:49;}}i:427;a:8:{s:1:"a";i:428;s:1:"b";s:20:"order-for-procedures";s:1:"c";i:4;s:1:"d";s:20:"Order for procedures";s:1:"e";s:20:"Order for procedures";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:11:{i:0;i:1;i:1;i:4;i:2;i:18;i:3;i:19;i:4;i:21;i:5;i:29;i:6;i:30;i:7;i:34;i:8;i:41;i:9;i:42;i:10;i:49;}}i:428;a:8:{s:1:"a";i:429;s:1:"b";s:18:"order-for-sundries";s:1:"c";i:4;s:1:"d";s:18:"Order for Sundries";s:1:"e";s:18:"Order for Sundries";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:13:{i:0;i:1;i:1;i:4;i:2;i:9;i:3;i:13;i:4;i:15;i:5;i:18;i:6;i:21;i:7;i:29;i:8;i:30;i:9;i:34;i:10;i:40;i:11;i:42;i:12;i:49;}}i:429;a:8:{s:1:"a";i:430;s:1:"b";s:15:"edit-users-role";s:1:"c";i:1;s:1:"d";s:14:"Edit user role";s:1:"e";s:14:"Edit user role";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:430;a:8:{s:1:"a";i:431;s:1:"b";s:29:"pharmacy-stock-reconciliation";s:1:"c";i:13;s:1:"d";s:29:"Pharmacy stock reconciliation";s:1:"e";s:29:"Pharmacy stock reconciliation";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:6:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:24;i:4;i:31;i:5;i:49;}}i:431;a:8:{s:1:"a";i:432;s:1:"b";s:36:"pharmacy-stock-reconciliation-report";s:1:"c";i:13;s:1:"d";s:41:"View pharmacy stock reconciliation report";s:1:"e";s:41:"View pharmacy stock reconciliation report";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:6:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:24;i:4;i:31;i:5;i:49;}}i:432;a:8:{s:1:"a";i:433;s:1:"b";s:28:"imaging-echo-cardio-template";s:1:"c";i:10;s:1:"d";s:33:"Edit template for echo cardiology";s:1:"e";s:33:"Edit template for echo cardiology";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:38;i:2;i:49;}}i:433;a:8:{s:1:"a";i:434;s:1:"b";s:28:"view-patient-payment-methods";s:1:"c";i:7;s:1:"d";s:30:"View Patients Payments Methods";s:1:"e";s:30:"View Patients Payments Methods";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:2;i:2;i:31;i:3;i:49;}}i:434;a:8:{s:1:"a";i:435;s:1:"b";s:13:"journals-view";s:1:"c";i:22;s:1:"d";s:13:"View Journals";s:1:"e";s:13:"View Journals";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:435;a:8:{s:1:"a";i:436;s:1:"b";s:36:"view-patient-payment-methods-reports";s:1:"c";i:7;s:1:"d";s:38:"View Patients Payments Methods Reports";s:1:"e";s:38:"View Patients Payments Methods Reports";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:436;a:8:{s:1:"a";i:437;s:1:"b";s:31:"admit-patient-from-patient-home";s:1:"c";i:4;s:1:"d";s:35:"Admit patient from the patient home";s:1:"e";s:35:"Admit patient from the patient home";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:9:{i:0;i:1;i:1;i:4;i:2;i:13;i:3;i:29;i:4;i:30;i:5;i:34;i:6;i:41;i:7;i:42;i:8;i:49;}}i:437;a:8:{s:1:"a";i:438;s:1:"b";s:38:"add-ward-treatments-on-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:46:"Add and view ward treatment on inpatient sheet";s:1:"e";s:46:"Add and view ward treatment on inpatient sheet";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:9:{i:0;i:1;i:1;i:4;i:2;i:13;i:3;i:15;i:4;i:18;i:5;i:30;i:6;i:34;i:7;i:41;i:8;i:49;}}i:438;a:8:{s:1:"a";i:439;s:1:"b";s:41:"add-to-take-home-drugs-on-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:47:"Add and view take home drugs on inpatient sheet";s:1:"e";s:47:"Add and view take home drugs on inpatient sheet";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:11:{i:0;i:1;i:1;i:4;i:2;i:13;i:3;i:15;i:4;i:18;i:5;i:21;i:6;i:30;i:7;i:31;i:8;i:34;i:9;i:41;i:10;i:49;}}i:439;a:8:{s:1:"a";i:440;s:1:"b";s:31:"add-sundries-on-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:31:"Add sundries on inpatient sheet";s:1:"e";s:31:"Add sundries on inpatient sheet";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:11:{i:0;i:1;i:1;i:4;i:2;i:13;i:3;i:15;i:4;i:18;i:5;i:29;i:6;i:30;i:7;i:31;i:8;i:34;i:9;i:41;i:10;i:49;}}i:440;a:8:{s:1:"a";i:441;s:1:"b";s:29:"add-extras-on-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:29:"Add extras on inpatient sheet";s:1:"e";s:29:"Add extras on inpatient sheet";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:10:{i:0;i:1;i:1;i:4;i:2;i:13;i:3;i:15;i:4;i:18;i:5;i:30;i:6;i:31;i:7;i:34;i:8;i:41;i:9;i:49;}}i:441;a:8:{s:1:"a";i:442;s:1:"b";s:48:"add-consultation-and-services-on-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:48:"Add consultation and services on inpatient sheet";s:1:"e";s:48:"Add consultation and services on inpatient sheet";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:10:{i:0;i:1;i:1;i:4;i:2;i:13;i:3;i:15;i:4;i:18;i:5;i:30;i:6;i:31;i:7;i:34;i:8;i:41;i:9;i:49;}}i:442;a:8:{s:1:"a";i:443;s:1:"b";s:31:"add-comments-on-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:31:"Add comments on inpatient sheet";s:1:"e";s:31:"Add comments on inpatient sheet";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:7:{i:0;i:1;i:1;i:4;i:2;i:13;i:3;i:30;i:4;i:34;i:5;i:41;i:6;i:49;}}i:443;a:8:{s:1:"a";i:444;s:1:"b";s:33:"add-procedures-on-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:33:"Add procedures on inpatient sheet";s:1:"e";s:33:"Add procedures on inpatient sheet";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:11:{i:0;i:1;i:1;i:4;i:2;i:13;i:3;i:15;i:4;i:18;i:5;i:30;i:6;i:31;i:7;i:34;i:8;i:41;i:9;i:42;i:10;i:49;}}i:444;a:8:{s:1:"a";i:445;s:1:"b";s:24:"add-ward-procedures-fees";s:1:"c";i:4;s:1:"d";s:23:"Add ward procedure fees";s:1:"e";s:23:"Add ward procedure fees";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:10:{i:0;i:1;i:1;i:4;i:2;i:13;i:3;i:15;i:4;i:18;i:5;i:30;i:6;i:34;i:7;i:41;i:8;i:42;i:9;i:49;}}i:445;a:8:{s:1:"a";i:446;s:1:"b";s:27:"add-inpatient-sheet-outcome";s:1:"c";i:4;s:1:"d";s:27:"Add inpatient sheet outcome";s:1:"e";s:27:"Add inpatient sheet outcome";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:10:{i:0;i:1;i:1;i:4;i:2;i:13;i:3;i:15;i:4;i:18;i:5;i:30;i:6;i:31;i:7;i:34;i:8;i:41;i:9;i:49;}}i:446;a:8:{s:1:"a";i:447;s:1:"b";s:20:"save-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:20:"Save inpatient sheet";s:1:"e";s:20:"Save inpatient sheet";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:10:{i:0;i:1;i:1;i:4;i:2;i:13;i:3;i:15;i:4;i:18;i:5;i:30;i:6;i:31;i:7;i:34;i:8;i:41;i:9;i:49;}}i:447;a:8:{s:1:"a";i:448;s:1:"b";s:28:"requisition-for-lab-sundries";s:1:"c";i:10;s:1:"d";s:28:"Requisition For Lab Sundries";s:1:"e";s:28:"Requisition For Lab Sundries";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:7:{i:0;i:1;i:1;i:9;i:2;i:24;i:3;i:31;i:4;i:39;i:5;i:40;i:6;i:49;}}i:448;a:8:{s:1:"a";i:449;s:1:"b";s:29:"view-lab-sundries-stock-sheet";s:1:"c";i:10;s:1:"d";s:29:"View Lab Sundries Stock Sheet";s:1:"e";s:29:"View Lab Sundries Stock Sheet";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:8:{i:0;i:1;i:1;i:9;i:2;i:11;i:3;i:24;i:4;i:31;i:5;i:39;i:6;i:40;i:7;i:49;}}i:449;a:8:{s:1:"a";i:450;s:1:"b";s:33:"view-pharmacy-dispensation-report";s:1:"c";i:13;s:1:"d";s:33:"View Pharmacy Dispensation Report";s:1:"e";s:33:"View Pharmacy Dispensation Report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:6:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:24;i:4;i:31;i:5;i:49;}}i:450;a:8:{s:1:"a";i:451;s:1:"b";s:27:"delete-received-store-items";s:1:"c";i:15;s:1:"d";s:33:"Remove received items from stores";s:1:"e";s:33:"Remove received items from stores";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:24;i:2;i:37;i:3;i:49;}}i:451;a:8:{s:1:"a";i:452;s:1:"b";s:26:"cancel-patient-transaction";s:1:"c";i:7;s:1:"d";s:36:"Cancel a patient finance transaction";s:1:"e";s:36:"Cancel a patient finance transaction";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:33;i:4;i:49;}}i:452;a:8:{s:1:"a";i:453;s:1:"b";s:23:"view-customer-statement";s:1:"c";i:7;s:1:"d";s:23:"View customer statement";s:1:"e";s:23:"View customer statement";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:6:{i:0;i:1;i:1;i:2;i:2;i:18;i:3;i:31;i:4;i:33;i:5;i:49;}}i:453;a:8:{s:1:"a";i:454;s:1:"b";s:21:"delete-hospital-bills";s:1:"c";i:7;s:1:"d";s:31:"Delete Generated Hospital Bills";s:1:"e";s:31:"Delete Generated Hospital Bills";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:454;a:8:{s:1:"a";i:455;s:1:"b";s:19:"edit-hospital-bills";s:1:"c";i:7;s:1:"d";s:29:"Edit Generated Hospital Bills";s:1:"e";s:29:"Edit Generated Hospital Bills";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:33;i:4;i:49;}}i:455;a:8:{s:1:"a";i:456;s:1:"b";s:35:"remove-investigation-with-no-result";s:1:"c";i:10;s:1:"d";s:35:"Remove investigation with no result";s:1:"e";s:35:"Remove investigation with no result";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:6:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:40;i:4;i:41;i:5;i:49;}}i:456;a:8:{s:1:"a";i:457;s:1:"b";s:20:"delete-empty-episode";s:1:"c";i:4;s:1:"d";s:38:"Delete empty episode from patient home";s:1:"e";s:38:"Delete empty episode from patient home";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:19;i:2;i:29;i:3;i:34;i:4;i:49;}}i:457;a:8:{s:1:"a";i:458;s:1:"b";s:19:"edit-payment-record";s:1:"c";i:17;s:1:"d";s:13:"Edit Payments";s:1:"e";s:13:"Edit Payments";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:458;a:8:{s:1:"a";i:459;s:1:"b";s:21:"delete-payment-record";s:1:"c";i:17;s:1:"d";s:15:"Delete Payments";s:1:"e";s:15:"Delete Payments";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:459;a:8:{s:1:"a";i:460;s:1:"b";s:18:"pay-hospital-bills";s:1:"c";i:7;s:1:"d";s:28:"Pay Generated Hospital Bills";s:1:"e";s:28:"Pay Generated Hospital Bills";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:460;a:8:{s:1:"a";i:461;s:1:"b";s:22:"give-one-off-discounts";s:1:"c";i:7;s:1:"d";s:50:"Give special discounts per patient and view report";s:1:"e";s:50:"Give special discounts per patient and view report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:461;a:8:{s:1:"a";i:462;s:1:"b";s:22:"view-dashboard-reports";s:1:"c";i:4;s:1:"d";s:22:"View dashboard reports";s:1:"e";s:22:"View dashboard reports";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:38;i:2;i:41;i:3;i:48;i:4;i:49;}}i:462;a:8:{s:1:"a";i:463;s:1:"b";s:12:"undo-banking";s:1:"c";i:18;s:1:"d";s:12:"Undo Banking";s:1:"e";s:12:"Undo Banking";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:463;a:8:{s:1:"a";i:464;s:1:"b";s:19:"cancel-prescription";s:1:"c";i:13;s:1:"d";s:28:"Cancel Ordered Prescriptions";s:1:"e";s:28:"Cancel Ordered Prescriptions";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:6:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:24;i:4;i:41;i:5;i:49;}}i:464;a:8:{s:1:"a";i:465;s:1:"b";s:30:"restore-cancelled-prescription";s:1:"c";i:13;s:1:"d";s:39:"Restore Cancelled Ordered Prescriptions";s:1:"e";s:39:"Restore Cancelled Ordered Prescriptions";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:24;i:4;i:49;}}i:465;a:8:{s:1:"a";i:466;s:1:"b";s:22:"merge-patient-episodes";s:1:"c";i:4;s:1:"d";s:22:"Merge patient episodes";s:1:"e";s:22:"Merge patient episodes";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:19;i:2;i:29;i:3;i:34;i:4;i:49;}}i:466;a:8:{s:1:"a";i:467;s:1:"b";s:17:"edit-performed-by";s:1:"c";i:4;s:1:"d";s:37:"Edit and delete performed by services";s:1:"e";s:37:"Edit and delete performed by services";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:5:{i:0;i:1;i:1;i:31;i:2;i:34;i:3;i:42;i:4;i:49;}}i:467;a:8:{s:1:"a";i:468;s:1:"b";s:21:"pay-all-patient-bills";s:1:"c";i:7;s:1:"d";s:37:"Pay all patient bills across episodes";s:1:"e";s:37:"Pay all patient bills across episodes";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:33;i:4;i:49;}}i:468;a:8:{s:1:"a";i:469;s:1:"b";s:32:"record-staff-service-performance";s:1:"c";i:7;s:1:"d";s:84:"Record staff that has performed service e.g performed procedures, investigations etc";s:1:"e";s:84:"Record staff that has performed service e.g performed procedures, investigations etc";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:33;i:4;i:49;}}i:469;a:8:{s:1:"a";i:470;s:1:"b";s:25:"cancel-ordered-procedures";s:1:"c";i:4;s:1:"d";s:25:"Cancel ordered procedures";s:1:"e";s:25:"Cancel ordered procedures";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:7:{i:0;i:1;i:1;i:4;i:2;i:18;i:3;i:30;i:4;i:31;i:5;i:34;i:6;i:49;}}i:470;a:8:{s:1:"a";i:471;s:1:"b";s:23:"cancel-ordered-sundries";s:1:"c";i:4;s:1:"d";s:23:"Cancel ordered sundries";s:1:"e";s:23:"Cancel ordered sundries";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:7:{i:0;i:1;i:1;i:4;i:2;i:18;i:3;i:30;i:4;i:31;i:5;i:34;i:6;i:49;}}i:471;a:8:{s:1:"a";i:472;s:1:"b";s:23:"cancel-ordered-services";s:1:"c";i:4;s:1:"d";s:23:"Cancel ordered services";s:1:"e";s:23:"Cancel ordered services";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:6:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:34;i:4;i:41;i:5;i:49;}}i:472;a:8:{s:1:"a";i:473;s:1:"b";s:15:"import-data-csv";s:1:"c";i:12;s:1:"d";s:28:"Import clinical data via CSV";s:1:"e";s:28:"Import clinical data via CSV";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:473;a:8:{s:1:"a";i:474;s:1:"b";s:19:"delete-fixed-assets";s:1:"c";i:7;s:1:"d";s:19:"Delete fixed assets";s:1:"e";s:19:"Delete fixed assets";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:474;a:8:{s:1:"a";i:475;s:1:"b";s:37:"add-nurse-comments-on-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:37:"Add nurse comments on inpatient sheet";s:1:"e";s:37:"Add nurse comments on inpatient sheet";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:6:{i:0;i:1;i:1;i:15;i:2;i:30;i:3;i:34;i:4;i:41;i:5;i:49;}}i:475;a:8:{s:1:"a";i:476;s:1:"b";s:14:"lab-management";s:1:"c";i:10;s:1:"d";s:48:"Management of lab items including requisitioning";s:1:"e";s:48:"Management of lab items including requisitioning";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:24;i:2;i:39;i:3;i:40;i:4;i:49;}}i:476;a:8:{s:1:"a";i:477;s:1:"b";s:30:"view-progressive-prescriptions";s:1:"c";i:13;s:1:"d";s:54:"View progressive prescription orders and dispense them";s:1:"e";s:54:"View progressive prescription orders and dispense them";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:6:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:24;i:4;i:31;i:5;i:49;}}i:477;a:8:{s:1:"a";i:478;s:1:"b";s:32:"change-drugs-covered-by-category";s:1:"c";i:7;s:1:"d";s:78:"Select which drugs are covered by which patient category / corporate insurance";s:1:"e";s:78:"Select which drugs are covered by which patient category / corporate insurance";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:7:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:24;i:4;i:31;i:5;i:33;i:6;i:49;}}i:478;a:8:{s:1:"a";i:479;s:1:"b";s:22:"patient-category-sales";s:1:"c";i:7;s:1:"d";s:67:"View report showing how much money each patient category brought in";s:1:"e";s:67:"View report showing how much money each patient category brought in";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:33;i:4;i:49;}}i:479;a:8:{s:1:"a";i:959;s:1:"b";s:22:"view-pharmacy-overview";s:1:"c";i:4;s:1:"d";s:28:"View Pharmacy Overview Graph";s:1:"e";s:28:"View Pharmacy Overview Graph";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:480;a:8:{s:1:"a";i:960;s:1:"b";s:25:"view-top-performing-stuff";s:1:"c";i:4;s:1:"d";s:31:"View Top Performing Staff Graph";s:1:"e";s:31:"View Top Performing Staff Graph";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:481;a:8:{s:1:"a";i:961;s:1:"b";s:22:"view-wait-patient-time";s:1:"c";i:4;s:1:"d";s:28:"View Patient Wait Time Graph";s:1:"e";s:28:"View Patient Wait Time Graph";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:482;a:8:{s:1:"a";i:962;s:1:"b";s:27:"view-top-diagnoses-overview";s:1:"c";i:4;s:1:"d";s:24:"View Top Diagnoses Graph";s:1:"e";s:24:"View Top Diagnoses Graph";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:483;a:8:{s:1:"a";i:963;s:1:"b";s:34:"view-inpatient-statistics-overview";s:1:"c";i:4;s:1:"d";s:31:"View Inpatient Statistics Graph";s:1:"e";s:31:"View Inpatient Statistics Graph";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:484;a:8:{s:1:"a";i:964;s:1:"b";s:32:"view-top-investigations-overview";s:1:"c";i:4;s:1:"d";s:29:"View Top Investigations Graph";s:1:"e";s:29:"View Top Investigations Graph";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:40;i:3;i:49;}}i:485;a:8:{s:1:"a";i:965;s:1:"b";s:26:"view-top-supplier-overview";s:1:"c";i:4;s:1:"d";s:24:"View Top Suppliers Graph";s:1:"e";s:24:"View Top Suppliers Graph";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:40;i:3;i:49;}}i:486;a:8:{s:1:"a";i:966;s:1:"b";s:24:"view-attendance-overview";s:1:"c";i:4;s:1:"d";s:30:"View Attendance Overview Graph";s:1:"e";s:30:"View Attendance Overview Graph";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:487;a:8:{s:1:"a";i:967;s:1:"b";s:15:"journals-delete";s:1:"c";i:22;s:1:"d";s:15:"Delete Journals";s:1:"e";s:15:"Delete Journals";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:488;a:8:{s:1:"a";i:968;s:1:"b";s:35:"view-accounts-payable-aging-summary";s:1:"c";i:8;s:1:"d";s:35:"View Accounts Payable Aging Summary";s:1:"e";s:35:"View Accounts Payable Aging Summary";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:489;a:8:{s:1:"a";i:969;s:1:"b";s:34:"view-accounts-payable-aging-detail";s:1:"c";i:8;s:1:"d";s:34:"View Accounts Payable Aging Detail";s:1:"e";s:34:"View Accounts Payable Aging Detail";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:490;a:8:{s:1:"a";i:970;s:1:"b";s:23:"view-cashflow-statement";s:1:"c";i:8;s:1:"d";s:23:"View Cashflow Statement";s:1:"e";s:23:"View Cashflow Statement";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:491;a:8:{s:1:"a";i:971;s:1:"b";s:20:"general_items-delete";s:1:"c";i:12;s:1:"d";s:26:"Delete general item routes";s:1:"e";s:26:"Delete general item routes";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:492;a:8:{s:1:"a";i:972;s:1:"b";s:18:"general_items-edit";s:1:"c";i:12;s:1:"d";s:23:"Edit general item route";s:1:"e";s:23:"Edit general item route";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:3:{i:0;i:1;i:1;i:41;i:2;i:49;}}i:493;a:8:{s:1:"a";i:973;s:1:"b";s:20:"general_items-create";s:1:"c";i:12;s:1:"d";s:25:"Create general item route";s:1:"e";s:25:"Create general item route";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:494;a:8:{s:1:"a";i:974;s:1:"b";s:18:"general_items-list";s:1:"c";i:12;s:1:"d";s:19:"View general routes";s:1:"e";s:19:"View general routes";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:41;i:2;i:49;}}i:495;a:8:{s:1:"a";i:975;s:1:"b";s:29:"cancel-family-account-deposit";s:1:"c";i:7;s:1:"d";s:29:"Cancel family account deposit";s:1:"e";s:29:"Cancel family account deposit";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:49;}}i:496;a:8:{s:1:"a";i:976;s:1:"b";s:31:"add-family-account-credit-limit";s:1:"c";i:7;s:1:"d";s:31:"Add family account credit limit";s:1:"e";s:31:"Add family account credit limit";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:2;i:2;i:18;i:3;i:31;i:4;i:49;}}i:497;a:8:{s:1:"a";i:977;s:1:"b";s:37:"add-transaction-date-patient-invoices";s:1:"c";i:7;s:1:"d";s:53:"Add transaction date to the patient category invoices";s:1:"e";s:53:"Add transaction date to the patient category invoices";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:5:{i:0;i:1;i:1;i:18;i:2;i:31;i:3;i:33;i:4;i:49;}}i:498;a:8:{s:1:"a";i:978;s:1:"b";s:21:"finance-trial-balance";s:1:"c";i:8;s:1:"d";s:29:"Generate Trial Balance Report";s:1:"e";s:29:"Generate Trial Balance Report";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:499;a:8:{s:1:"a";i:979;s:1:"b";s:22:"finance-staff-payments";s:1:"c";i:8;s:1:"d";s:30:"Generate Staff Payments Report";s:1:"e";s:30:"Generate Staff Payments Report";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:500;a:8:{s:1:"a";i:980;s:1:"b";s:31:"finance-cost-centre-performance";s:1:"c";i:8;s:1:"d";s:39:"Generate Cost Center Performance Report";s:1:"e";s:39:"Generate Cost Center Performance Report";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:49;}}i:501;a:8:{s:1:"a";i:981;s:1:"b";s:23:"finance-lab-performance";s:1:"c";i:8;s:1:"d";s:31:"Generate Lab Performance Report";s:1:"e";s:31:"Generate Lab Performance Report";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:4:{i:0;i:1;i:1;i:31;i:2;i:40;i:3;i:49;}}i:502;a:8:{s:1:"a";i:982;s:1:"b";s:37:"finance-top-performing-investigations";s:1:"c";i:8;s:1:"d";s:30:"Generate Top Performing Report";s:1:"e";s:30:"Generate Top Performing Report";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:5:{i:0;i:1;i:1;i:31;i:2;i:33;i:3;i:40;i:4;i:49;}}i:503;a:8:{s:1:"a";i:983;s:1:"b";s:30:"finance-reverse-debtor-payment";s:1:"c";i:8;s:1:"d";s:71:"Reverse payments made by a patient towards clearing their hospital debt";s:1:"e";s:71:"Reverse payments made by a patient towards clearing their hospital debt";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:504;a:8:{s:1:"a";i:984;s:1:"b";s:20:"view-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:30:"View patient's inpatient sheet";s:1:"e";s:30:"View patient's inpatient sheet";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:7:{i:0;i:1;i:1;i:4;i:2;i:18;i:3;i:30;i:4;i:31;i:5;i:41;i:6;i:49;}}i:505;a:8:{s:1:"a";i:985;s:1:"b";s:22:"view-inpatient-billing";s:1:"c";i:4;s:1:"d";s:32:"View patient's inpatient billing";s:1:"e";s:32:"View patient's inpatient billing";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:7:{i:0;i:1;i:1;i:18;i:2;i:21;i:3;i:29;i:4;i:31;i:5;i:41;i:6;i:49;}}i:506;a:8:{s:1:"a";i:986;s:1:"b";s:24:"view-maternity-admission";s:1:"c";i:4;s:1:"d";s:34:"View patient's maternity admission";s:1:"e";s:34:"View patient's maternity admission";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:507;a:8:{s:1:"a";i:987;s:1:"b";s:20:"view-delivery-record";s:1:"c";i:4;s:1:"d";s:30:"View patient's delivery record";s:1:"e";s:30:"View patient's delivery record";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:508;a:8:{s:1:"a";i:988;s:1:"b";s:25:"add-chart-of-account-slug";s:1:"c";i:7;s:1:"d";s:28:"Add Slug To Chart Of Account";s:1:"e";s:28:"Add Slug To Chart Of Account";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:509;a:8:{s:1:"a";i:989;s:1:"b";s:42:"view-patient-dependants-consumption-report";s:1:"c";i:7;s:1:"d";s:42:"View patient dependants consumption report";s:1:"e";s:42:"View patient dependants consumption report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:510;a:8:{s:1:"a";i:990;s:1:"b";s:25:"add-dependants-to-patient";s:1:"c";i:7;s:1:"d";s:27:"Add dependants to a patient";s:1:"e";s:27:"Add dependants to a patient";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:511;a:8:{s:1:"a";i:991;s:1:"b";s:26:"view-dependants-to-patient";s:1:"c";i:7;s:1:"d";s:28:"View dependants to a patient";s:1:"e";s:28:"View dependants to a patient";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:512;a:8:{s:1:"a";i:992;s:1:"b";s:17:"view-hmis-reports";s:1:"c";i:5;s:1:"d";s:17:"View HMIS Reports";s:1:"e";s:17:"View HMIS Reports";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:513;a:8:{s:1:"a";i:993;s:1:"b";s:22:"view-memorised-reports";s:1:"c";i:5;s:1:"d";s:22:"View memorised reports";s:1:"e";s:22:"View memorised reports";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:514;a:8:{s:1:"a";i:994;s:1:"b";s:24:"view-lab-machine-results";s:1:"c";i:10;s:1:"d";s:46:"View investigation results from lab instrument";s:1:"e";s:46:"View investigation results from lab instrument";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:7:{i:0;i:1;i:1;i:9;i:2;i:11;i:3;i:18;i:4;i:39;i:5;i:40;i:6;i:49;}}i:515;a:8:{s:1:"a";i:995;s:1:"b";s:40:"remove-batch-during-stock-reconciliation";s:1:"c";i:15;s:1:"d";s:45:"Remove item batch during stock reconciliation";s:1:"e";s:45:"Remove item batch during stock reconciliation";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:24;i:2;i:49;}}i:516;a:8:{s:1:"a";i:996;s:1:"b";s:24:"approve-opd-requisitions";s:1:"c";i:15;s:1:"d";s:30:"Approve OPD items requisitions";s:1:"e";s:30:"Approve OPD items requisitions";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:24;i:2;i:49;}}i:517;a:8:{s:1:"a";i:997;s:1:"b";s:38:"approve-and-issue-out-opd-requisitions";s:1:"c";i:15;s:1:"d";s:44:"Approve and issue out OPD items requisitions";s:1:"e";s:44:"Approve and issue out OPD items requisitions";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:24;i:2;i:49;}}i:518;a:8:{s:1:"a";i:998;s:1:"b";s:26:"issue-out-opd-requisitions";s:1:"c";i:15;s:1:"d";s:32:"Issue out OPD items requisitions";s:1:"e";s:32:"Issue out OPD items requisitions";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:24;i:2;i:49;}}i:519;a:8:{s:1:"a";i:999;s:1:"b";s:22:"edit-ward-item-request";s:1:"c";i:13;s:1:"d";s:22:"Edit ward item request";s:1:"e";s:22:"Edit ward item request";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:3:{i:0;i:1;i:1;i:24;i:2;i:49;}}i:520;a:8:{s:1:"a";i:1000;s:1:"b";s:24:"delete-ward-item-request";s:1:"c";i:13;s:1:"d";s:24:"Delete ward item request";s:1:"e";s:24:"Delete ward item request";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:3:{i:0;i:1;i:1;i:24;i:2;i:49;}}i:521;a:8:{s:1:"a";i:1001;s:1:"b";s:38:"edit-batch-during-stock-reconciliation";s:1:"c";i:15;s:1:"d";s:43:"Edit item batch during stock reconciliation";s:1:"e";s:43:"Edit item batch during stock reconciliation";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:24;i:2;i:49;}}i:522;a:8:{s:1:"a";i:1002;s:1:"b";s:26:"view-ward-drug-stock-sheet";s:1:"c";i:23;s:1:"d";s:27:"View drugs ward stock sheet";s:1:"e";s:27:"View drugs ward stock sheet";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:523;a:8:{s:1:"a";i:1003;s:1:"b";s:26:"edit-ward-drug-stock-sheet";s:1:"c";i:23;s:1:"d";s:26:"Edit drug ward stock sheet";s:1:"e";s:26:"Edit drug ward stock sheet";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:524;a:8:{s:1:"a";i:1004;s:1:"b";s:28:"view-ward-sundry-stock-sheet";s:1:"c";i:23;s:1:"d";s:30:"View sundries ward stock sheet";s:1:"e";s:30:"View sundries ward stock sheet";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:24;i:2;i:49;}}i:525;a:8:{s:1:"a";i:1005;s:1:"b";s:28:"edit-ward-sundry-stock-sheet";s:1:"c";i:23;s:1:"d";s:28:"Edit sundry ward stock sheet";s:1:"e";s:28:"Edit sundry ward stock sheet";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:24;i:2;i:49;}}i:526;a:8:{s:1:"a";i:1006;s:1:"b";s:27:"patient-appointments-report";s:1:"c";i:4;s:1:"d";s:32:"View patient appointments report";s:1:"e";s:32:"View patient appointments report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:4:{i:0;i:1;i:1;i:19;i:2;i:48;i:3;i:49;}}i:527;a:8:{s:1:"a";i:1007;s:1:"b";s:43:"patient-flow-monitoring-inpatient-admission";s:1:"c";i:4;s:1:"d";s:43:"Admit patient from platient flow monitoring";s:1:"e";s:43:"Admit patient from platient flow monitoring";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:528;a:8:{s:1:"a";i:1008;s:1:"b";s:39:"edit-services-prices-on-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:38:"Edit services price on inpatient sheet";s:1:"e";s:38:"Edit services price on inpatient sheet";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:3:{i:0;i:1;i:1;i:30;i:2;i:49;}}i:529;a:8:{s:1:"a";i:1009;s:1:"b";s:43:"edit-investigation-prices-on-inpatient-bill";s:1:"c";i:4;s:1:"d";s:42:"Edit investigation price on inpatient bill";s:1:"e";s:42:"Edit investigation price on inpatient bill";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:3:{i:0;i:1;i:1;i:41;i:2;i:49;}}i:530;a:8:{s:1:"a";i:1010;s:1:"b";s:24:"cancel-ward-prescription";s:1:"c";i:4;s:1:"d";s:24:"Cancel ward prescription";s:1:"e";s:24:"Cancel ward prescription";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:3:{i:0;i:1;i:1;i:18;i:2;i:49;}}i:531;a:8:{s:1:"a";i:1011;s:1:"b";s:38:"view-accounts-receivable-aging-summary";s:1:"c";i:8;s:1:"d";s:38:"View Accounts Receivable Aging Summary";s:1:"e";s:38:"View Accounts Receivable Aging Summary";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:532;a:8:{s:1:"a";i:1012;s:1:"b";s:37:"view-accounts-receivable-aging-detail";s:1:"c";i:8;s:1:"d";s:37:"View Accounts Receivable Aging Detail";s:1:"e";s:37:"View Accounts Receivable Aging Detail";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:533;a:8:{s:1:"a";i:1013;s:1:"b";s:21:"result-templates-list";s:1:"c";i:12;s:1:"d";s:36:"View investigations Result Templates";s:1:"e";s:36:"View investigations Result Templates";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:6:{i:0;i:1;i:1;i:9;i:2;i:11;i:3;i:39;i:4;i:40;i:5;i:49;}}i:534;a:8:{s:1:"a";i:1014;s:1:"b";s:23:"result-templates-create";s:1:"c";i:12;s:1:"d";s:37:"Create investigation Result Templates";s:1:"e";s:37:"Create investigation Result Templates";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:3:{i:0;i:1;i:1;i:40;i:2;i:49;}}i:535;a:8:{s:1:"a";i:1015;s:1:"b";s:21:"result-templates-edit";s:1:"c";i:12;s:1:"d";s:35:"Edit investigation Result Templates";s:1:"e";s:35:"Edit investigation Result Templates";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:3:{i:0;i:1;i:1;i:40;i:2;i:49;}}i:536;a:8:{s:1:"a";i:1016;s:1:"b";s:23:"result-templates-delete";s:1:"c";i:12;s:1:"d";s:57:"Deactivate and reactivate investigations Result Templates";s:1:"e";s:57:"Deactivate and reactivate investigations Result Templates";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:3:{i:0;i:1;i:1;i:40;i:2;i:49;}}i:537;a:8:{s:1:"a";i:1017;s:1:"b";s:30:"issue-inpatient-attendant-pass";s:1:"c";i:4;s:1:"d";s:30:"Issue inpatient attendant pass";s:1:"e";s:30:"Issue inpatient attendant pass";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:538;a:8:{s:1:"a";i:1018;s:1:"b";s:30:"view-patient-accounts-deposits";s:1:"c";i:7;s:1:"d";s:38:"Make and view patient account deposits";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:539;a:8:{s:1:"a";i:1019;s:1:"b";s:29:"view-patient-accounts-refunds";s:1:"c";i:7;s:1:"d";s:37:"Make and view patient account refunds";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:540;a:8:{s:1:"a";i:1020;s:1:"b";s:34:"view-patient-accounts-consumptions";s:1:"c";i:7;s:1:"d";s:33:"View patient account consumptions";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:541;a:8:{s:1:"a";i:1021;s:1:"b";s:32:"cancel-patient-accounts-deposits";s:1:"c";i:7;s:1:"d";s:43:"Cancel patient account deposits and refunds";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:31;i:2;i:49;}}i:542;a:8:{s:1:"a";i:1022;s:1:"b";s:46:"pay-inpatient-bill-from-inpatient-billing-page";s:1:"c";i:7;s:1:"d";s:46:"Pay inpatient bill from inpatient billing page";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:543;a:8:{s:1:"a";i:1023;s:1:"b";s:24:"delete-store-requisition";s:1:"c";i:13;s:1:"d";s:24:"Delete store requisition";s:1:"e";s:62:"You can delete a requisition which has not yet been issued out";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:544;a:8:{s:1:"a";i:1024;s:1:"b";s:34:"view-patient-diagnosis-at-pharmacy";s:1:"c";i:4;s:1:"d";s:34:"View patient diagnosis at pharmacy";s:1:"e";s:59:"Allow person dispensing drugs to view the patient diagnosis";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:545;a:8:{s:1:"a";i:1025;s:1:"b";s:29:"view-patient-diagnosis-at-lab";s:1:"c";i:4;s:1:"d";s:29:"View patient diagnosis at Lab";s:1:"e";s:53:"Allow person in the lab to view the patient diagnosis";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:546;a:8:{s:1:"a";i:1026;s:1:"b";s:30:"create-consultation-with-notes";s:1:"c";i:4;s:1:"d";s:30:"Create Consultation with notes";s:1:"e";s:30:"Create Consultation with notes";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:3:{i:0;i:1;i:1;i:4;i:2;i:49;}}i:547;a:8:{s:1:"a";i:1027;s:1:"b";s:27:"perform-triage-without-etat";s:1:"c";i:4;s:1:"d";s:27:"Perform Triage Without ETAT";s:1:"e";s:27:"Perform Triage Without ETAT";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:4:{i:0;i:1;i:1;i:15;i:2;i:41;i:3;i:49;}}i:548;a:8:{s:1:"a";i:1028;s:1:"b";s:45:"delete-doctor-ward-notes-from-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:39:"Delete doctor ward notes from inpatient";s:1:"e";s:56:"Delete ward progress notes that were added by the doctor";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:549;a:8:{s:1:"a";i:1029;s:1:"b";s:44:"delete-nurse-ward-notes-from-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:38:"Delete nurse ward notes from inpatient";s:1:"e";s:55:"Delete ward progress notes that were added by the nurse";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:550;a:8:{s:1:"a";i:1030;s:1:"b";s:24:"view-tb-screening-report";s:1:"c";i:21;s:1:"d";s:24:"View TB Screening Report";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:551;a:8:{s:1:"a";i:1031;s:1:"b";s:52:"view-disease-prevalence-over-a-period-of-time-report";s:1:"c";i:21;s:1:"d";s:52:"View Disease Prevalence Over a Period of Time Report";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:552;a:8:{s:1:"a";i:1032;s:1:"b";s:27:"view-family-planning-report";s:1:"c";i:21;s:1:"d";s:27:"View Family Planning Report";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:553;a:8:{s:1:"a";i:1033;s:1:"b";s:33:"view-streamline-outpatient-report";s:1:"c";i:21;s:1:"d";s:34:"View Streamline Out-Patient Report";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:554;a:8:{s:1:"a";i:1034;s:1:"b";s:22:"view-procedures-report";s:1:"c";i:21;s:1:"d";s:22:"View Procedures Report";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:555;a:8:{s:1:"a";i:1035;s:1:"b";s:16:"view-charge-book";s:1:"c";i:21;s:1:"d";s:16:"View Charge Book";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:556;a:8:{s:1:"a";i:1036;s:1:"b";s:15:"view-rdt-report";s:1:"c";i:21;s:1:"d";s:15:"View RDT Report";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:557;a:8:{s:1:"a";i:1037;s:1:"b";s:29:"view-drug-stock-levels-report";s:1:"c";i:21;s:1:"d";s:29:"View Drug Stock Levels Report";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:558;a:8:{s:1:"a";i:1038;s:1:"b";s:28:"view-drug-consumption-report";s:1:"c";i:21;s:1:"d";s:28:"View Drug Consumption Report";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:559;a:8:{s:1:"a";i:1039;s:1:"b";s:25:"view-expired-drugs-report";s:1:"c";i:21;s:1:"d";s:25:"View Expired Drugs Report";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:560;a:8:{s:1:"a";i:1040;s:1:"b";s:37:"view-drug-consumption-analysis-report";s:1:"c";i:21;s:1:"d";s:37:"View Drug Consumption Analysis Report";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:561;a:8:{s:1:"a";i:1041;s:1:"b";s:23:"view-anaesthesia-report";s:1:"c";i:21;s:1:"d";s:23:"View Anaesthesia Report";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:562;a:8:{s:1:"a";i:1042;s:1:"b";s:21:"view-surgeries-report";s:1:"c";i:21;s:1:"d";s:21:"View Surgeries Report";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:563;a:8:{s:1:"a";i:1043;s:1:"b";s:25:"view-ward-deposits-report";s:1:"c";i:21;s:1:"d";s:25:"View Ward Deposits Report";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:564;a:8:{s:1:"a";i:1044;s:1:"b";s:30:"view-ward-re-admittance-report";s:1:"c";i:21;s:1:"d";s:30:"View Ward Re-Admittance Report";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:565;a:8:{s:1:"a";i:1045;s:1:"b";s:38:"view-patients-lost-to-follow-up-report";s:1:"c";i:21;s:1:"d";s:38:"View Patients Lost To Follow Up Report";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:566;a:8:{s:1:"a";i:1046;s:1:"b";s:45:"view-days-when-drugs-were-out-of-stock-report";s:1:"c";i:21;s:1:"d";s:45:"View Days When Drugs Were Out of Stock Report";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:567;a:8:{s:1:"a";i:1047;s:1:"b";s:52:"view-patients-diagnosed-with-severe-mental-disorders";s:1:"c";i:21;s:1:"d";s:52:"View Patients diagnosed with severe mental disorders";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:568;a:8:{s:1:"a";i:1048;s:1:"b";s:38:"view-persons-taking-psychotropic-drugs";s:1:"c";i:21;s:1:"d";s:38:"View Persons Taking Psychotropic Drugs";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:569;a:8:{s:1:"a";i:1049;s:1:"b";s:46:"view-diagnosed-patients-who-received-treatment";s:1:"c";i:21;s:1:"d";s:46:"View Diagnosed Patients Who Received Treatment";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:570;a:8:{s:1:"a";i:1050;s:1:"b";s:60:"view-patients-receiving-mental-health-care-lost-to-follow-up";s:1:"c";i:21;s:1:"d";s:60:"View Patients Receiving Mental Health Care Lost To Follow Up";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:571;a:8:{s:1:"a";i:1051;s:1:"b";s:56:"view-number-of-days-psychotropic-drugs-were-out-of-stock";s:1:"c";i:21;s:1:"d";s:56:"View Number of Days Psychotropic Drugs Were Out of Stock";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:572;a:8:{s:1:"a";i:1052;s:1:"b";s:56:"view-hmis-form-105-health-unit-outpatient-monthly-report";s:1:"c";i:5;s:1:"d";s:57:"View HMIS Form 105: Health Unit Outpatient Monthly Report";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:573;a:8:{s:1:"a";i:1053;s:1:"b";s:20:"view-risky-behaviors";s:1:"c";i:5;s:1:"d";s:20:"View Risky Behaviors";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:574;a:8:{s:1:"a";i:1054;s:1:"b";s:20:"view-body-mass-index";s:1:"c";i:5;s:1:"d";s:20:"View Body Mass index";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:575;a:8:{s:1:"a";i:1055;s:1:"b";s:38:"view-form-108-inpatient-monthly-report";s:1:"c";i:5;s:1:"d";s:43:"View HMIS Form 108-Inpatient Monthly Report";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:576;a:8:{s:1:"a";i:1056;s:1:"b";s:38:"view-hmis-form-031-outpatient-register";s:1:"c";i:5;s:1:"d";s:39:"View HMIS Form 031-Outpatient Register ";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:577;a:8:{s:1:"a";i:1057;s:1:"b";s:42:"view-hmis-form-002-opd-outpatient-register";s:1:"c";i:5;s:1:"d";s:42:"View HMIS Form 002-OPD Outpatient Register";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:578;a:8:{s:1:"a";i:1058;s:1:"b";s:48:"view-hmis-form-106a-health-unit-quarterly-report";s:1:"c";i:5;s:1:"d";s:49:"View HMIS Form 106a-Health Unit Quarterly Report ";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:579;a:8:{s:1:"a";i:1059;s:1:"b";s:50:"view-hmis-form-weekly-epidimeological-surveillance";s:1:"c";i:5;s:1:"d";s:53:"View HMIS Form - Weekly Epidimeological Surveillance ";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:580;a:8:{s:1:"a";i:1060;s:1:"b";s:54:"view-hmis-form-essential-medicines-and-health-supplies";s:1:"c";i:5;s:1:"d";s:57:"View HMIS Form - Essential Medicines and Health Supplies ";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:581;a:8:{s:1:"a";i:1061;s:1:"b";s:33:"view-investigation-staff-overview";s:1:"c";i:4;s:1:"d";s:40:"View Staff Performance By Investigations";s:1:"e";s:84:"View how many staff performed investigations and which investigations they performed";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:582;a:8:{s:1:"a";i:1062;s:1:"b";s:30:"view-performed-services-report";s:1:"c";i:21;s:1:"d";s:30:"View Performed Services Report";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:583;a:8:{s:1:"a";i:1063;s:1:"b";s:12:"outcome-list";s:1:"c";i:12;s:1:"d";s:13:"View outcomes";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:584;a:8:{s:1:"a";i:1064;s:1:"b";s:14:"outcome-create";s:1:"c";i:12;s:1:"d";s:14:"Create outcome";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:585;a:8:{s:1:"a";i:1065;s:1:"b";s:12:"outcome-edit";s:1:"c";i:12;s:1:"d";s:12:"Edit outcome";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:586;a:8:{s:1:"a";i:1066;s:1:"b";s:14:"outcome-delete";s:1:"c";i:12;s:1:"d";s:33:"Deactivate and reactivate outcome";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:587;a:8:{s:1:"a";i:1067;s:1:"b";s:18:"view-point-of-sale";s:1:"c";i:4;s:1:"d";s:18:"View Point of Sale";s:1:"e";s:18:"View Point of Sale";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:3:{i:0;i:1;i:1;i:21;i:2;i:49;}}i:588;a:8:{s:1:"a";i:1068;s:1:"b";s:17:"view-finance-home";s:1:"c";i:7;s:1:"d";s:17:"View Finance Home";s:1:"e";s:17:"View Finance Home";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:7:{i:0;i:1;i:1;i:2;i:2;i:18;i:3;i:19;i:4;i:29;i:5;i:31;i:6;i:49;}}i:589;a:8:{s:1:"a";i:1069;s:1:"b";s:15:"view-eye-clinic";s:1:"c";i:4;s:1:"d";s:15:"View Eye Clinic";s:1:"e";s:15:"View Eye Clinic";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:590;a:8:{s:1:"a";i:1070;s:1:"b";s:27:"transfer-patient-internally";s:1:"c";i:4;s:1:"d";s:27:"Transfer patient internally";s:1:"e";s:27:"Transfer patient internally";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:5:{i:0;i:1;i:1;i:19;i:2;i:29;i:3;i:30;i:4;i:49;}}i:591;a:8:{s:1:"a";i:1071;s:1:"b";s:17:"view-death-report";s:1:"c";i:4;s:1:"d";s:25:"View patient death report";s:1:"e";s:25:"View patient death report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:592;a:8:{s:1:"a";i:1072;s:1:"b";s:17:"view-birth-report";s:1:"c";i:4;s:1:"d";s:25:"View patient birth report";s:1:"e";s:25:"View patient birth report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:593;a:8:{s:1:"a";i:1073;s:1:"b";s:12:"view-surgery";s:1:"c";i:4;s:1:"d";s:20:"View patient surgery";s:1:"e";s:20:"View patient surgery";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:594;a:8:{s:1:"a";i:1074;s:1:"b";s:14:"create-surgery";s:1:"c";i:4;s:1:"d";s:29:"Create patient surgery record";s:1:"e";s:29:"Create patient surgery record";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:595;a:8:{s:1:"a";i:1075;s:1:"b";s:25:"view-anaesthetics-history";s:1:"c";i:4;s:1:"d";s:25:"View anaesthetics history";s:1:"e";s:25:"View anaesthetics history";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:596;a:8:{s:1:"a";i:1076;s:1:"b";s:19:"create-anaesthetics";s:1:"c";i:4;s:1:"d";s:27:"Create patient anaesthetics";s:1:"e";s:27:"Create patient anaesthetics";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:597;a:8:{s:1:"a";i:1077;s:1:"b";s:17:"view-patient-file";s:1:"c";i:4;s:1:"d";s:17:"View patient file";s:1:"e";s:17:"View patient file";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:598;a:8:{s:1:"a";i:1078;s:1:"b";s:21:"view-maternity-report";s:1:"c";i:21;s:1:"d";s:21:"View Maternity Report";s:1:"e";s:24:"View Report on Maternity";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:599;a:8:{s:1:"a";i:1079;s:1:"b";s:11:"dental-list";s:1:"c";i:12;s:1:"d";s:12:"View dentals";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:600;a:8:{s:1:"a";i:1080;s:1:"b";s:13:"dental-create";s:1:"c";i:12;s:1:"d";s:13:"Create dental";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:601;a:8:{s:1:"a";i:1081;s:1:"b";s:11:"dental-edit";s:1:"c";i:12;s:1:"d";s:11:"Edit dental";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:602;a:8:{s:1:"a";i:1082;s:1:"b";s:13:"dental-delete";s:1:"c";i:12;s:1:"d";s:30:"Deactivate and Activate dental";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:603;a:8:{s:1:"a";i:1083;s:1:"b";s:17:"view-smart-triage";s:1:"c";i:4;s:1:"d";s:25:"View smart triage reports";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:604;a:8:{s:1:"a";i:1084;s:1:"b";s:35:"view-investigation-specimen-reports";s:1:"c";i:10;s:1:"d";s:35:"View investigation specimen reports";s:1:"e";s:35:"View investigation specimen reports";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:605;a:8:{s:1:"a";i:1085;s:1:"b";s:43:"view-theatre-notes-from-the-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:43:"View theatre notes from the inpatient sheet";s:1:"e";s:43:"View theatre notes from the inpatient sheet";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:606;a:8:{s:1:"a";i:1086;s:1:"b";s:13:"budget-create";s:1:"c";i:24;s:1:"d";s:13:"Create budget";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:607;a:8:{s:1:"a";i:1087;s:1:"b";s:11:"budget-list";s:1:"c";i:24;s:1:"d";s:22:"View a list of budgets";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:608;a:8:{s:1:"a";i:1088;s:1:"b";s:11:"budget-view";s:1:"c";i:24;s:1:"d";s:24:"View details of a budget";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:609;a:8:{s:1:"a";i:1089;s:1:"b";s:11:"budget-edit";s:1:"c";i:24;s:1:"d";s:11:"Edit budget";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:610;a:8:{s:1:"a";i:1090;s:1:"b";s:13:"budget-delete";s:1:"c";i:24;s:1:"d";s:32:"Deactivate and reactivate budget";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:611;a:8:{s:1:"a";i:1091;s:1:"b";s:14:"radiology-list";s:1:"c";i:12;s:1:"d";s:16:"View radiologies";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:612;a:8:{s:1:"a";i:1092;s:1:"b";s:16:"radiology-create";s:1:"c";i:12;s:1:"d";s:16:"Create radiology";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:613;a:8:{s:1:"a";i:1093;s:1:"b";s:14:"radiology-edit";s:1:"c";i:12;s:1:"d";s:16:"Edit radiologies";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:614;a:8:{s:1:"a";i:1094;s:1:"b";s:16:"radiology-delete";s:1:"c";i:12;s:1:"d";s:33:"Deactivate and Activate radiology";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:615;a:8:{s:1:"a";i:1095;s:1:"b";s:22:"radiologies-management";s:1:"c";i:12;s:1:"d";s:22:"Radiologies management";s:1:"e";s:44:"Link to radiologies management under imaging";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:616;a:8:{s:1:"a";i:1096;s:1:"b";s:38:"pharmacy-sundries-stock-reconciliation";s:1:"c";i:13;s:1:"d";s:39:"Perform pharmacy sundry reconciliations";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:617;a:8:{s:1:"a";i:1097;s:1:"b";s:45:"pharmacy-sundries-stock-reconciliation-report";s:1:"c";i:13;s:1:"d";s:36:"View pharmacy sundry reconciliations";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:618;a:8:{s:1:"a";i:1098;s:1:"b";s:24:"change-personal-settings";s:1:"c";i:9;s:1:"d";s:22:"Edit personal settings";s:1:"e";s:68:"Edit personal settings e.g which language a user wants the system in";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:619;a:8:{s:1:"a";i:1099;s:1:"b";s:31:"view-recalculate-inpatient-bill";s:1:"c";i:4;s:1:"d";s:39:"View re-calculate inpatient bill button";s:1:"e";s:42:"View the Recalculate inpatient bill button";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:620;a:8:{s:1:"a";i:1100;s:1:"b";s:28:"streamline-reports-diagnosis";s:1:"c";i:5;s:1:"d";s:32:"View Diagnosis Streamline Report";s:1:"e";s:32:"View Diagnosis Streamline Report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:621;a:8:{s:1:"a";i:1101;s:1:"b";s:28:"streamline-reports-treatment";s:1:"c";i:5;s:1:"d";s:33:"View Treatments Streamline Report";s:1:"e";s:33:"View Treatments Streamline Report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:622;a:8:{s:1:"a";i:1102;s:1:"b";s:33:"streamline-reports-investigations";s:1:"c";i:5;s:1:"d";s:37:"View Investigations Streamline Report";s:1:"e";s:37:"View Investigations Streamline Report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:623;a:8:{s:1:"a";i:1103;s:1:"b";s:33:"streamline-reports-patient-visits";s:1:"c";i:5;s:1:"d";s:37:"View Patient Visits Streamline Report";s:1:"e";s:37:"View Patient Visits Streamline Report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:624;a:8:{s:1:"a";i:1104;s:1:"b";s:27:"streamline-reports-symptoms";s:1:"c";i:5;s:1:"d";s:31:"View Symptoms Streamline Report";s:1:"e";s:31:"View Symptoms Streamline Report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:625;a:8:{s:1:"a";i:1105;s:1:"b";s:26:"streamline-reports-doctors";s:1:"c";i:5;s:1:"d";s:30:"View Doctors Streamline Report";s:1:"e";s:30:"View Doctors Streamline Report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:626;a:8:{s:1:"a";i:1106;s:1:"b";s:18:"view-patients-home";s:1:"c";i:4;s:1:"d";s:17:"View Patient Home";s:1:"e";s:17:"View Patient Home";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:627;a:8:{s:1:"a";i:1107;s:1:"b";s:17:"add-ward-discount";s:1:"c";i:7;s:1:"d";s:18:"Add ward discounts";s:1:"e";s:49:"Add a discount amount on making inpatient payment";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:628;a:8:{s:1:"a";i:1108;s:1:"b";s:20:"view-smart-discharge";s:1:"c";i:4;s:1:"d";s:28:"View smart discharge reports";s:1:"e";s:28:"View smart discharge reports";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:629;a:8:{s:1:"a";i:1109;s:1:"b";s:22:"view-inactive-patients";s:1:"c";i:4;s:1:"d";s:22:"View inactive patients";s:1:"e";s:22:"View inactive patients";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:630;a:8:{s:1:"a";i:1110;s:1:"b";s:22:"delete-items-quotation";s:1:"c";i:15;s:1:"d";s:22:"Delete Items Quotation";s:1:"e";s:22:"Delete Items Quotation";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:631;a:8:{s:1:"a";i:1111;s:1:"b";s:23:"payroll-category-create";s:1:"c";i:7;s:1:"d";s:27:"Create new payroll category";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:632;a:8:{s:1:"a";i:1112;s:1:"b";s:21:"payroll-category-view";s:1:"c";i:7;s:1:"d";s:23:"View payroll categories";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:633;a:8:{s:1:"a";i:1113;s:1:"b";s:23:"payroll-category-delete";s:1:"c";i:7;s:1:"d";s:23:"Delete payroll category";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:634;a:8:{s:1:"a";i:1114;s:1:"b";s:13:"tax-rate-edit";s:1:"c";i:7;s:1:"d";s:21:"Edit payroll tax rate";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:635;a:8:{s:1:"a";i:1115;s:1:"b";s:19:"insurance-risk-list";s:1:"c";i:2;s:1:"d";s:19:"Insurance Risk List";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:636;a:8:{s:1:"a";i:1116;s:1:"b";s:21:"insurance-risk-create";s:1:"c";i:2;s:1:"d";s:23:"Insurance Risk Creation";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:637;a:8:{s:1:"a";i:1117;s:1:"b";s:19:"insurance-risk-edit";s:1:"c";i:2;s:1:"d";s:22:"Insurance Risk Editing";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:638;a:8:{s:1:"a";i:1118;s:1:"b";s:21:"insurance-risk-delete";s:1:"c";i:2;s:1:"d";s:23:"Insurance Risk Deletion";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:639;a:8:{s:1:"a";i:1119;s:1:"b";s:21:"insurance-group-admin";s:1:"c";i:2;s:1:"d";s:25:"Insurance Group Home Page";s:1:"e";s:54:"View the dashboard required to manage Insurance Groups";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:640;a:8:{s:1:"a";i:1120;s:1:"b";s:22:"insurance-scheme-admin";s:1:"c";i:2;s:1:"d";s:26:"Insurance Scheme Home Page";s:1:"e";s:55:"View the dashboard required to manage Insurance Schemes";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:641;a:8:{s:1:"a";i:1121;s:1:"b";s:25:"budget-performance-report";s:1:"c";i:24;s:1:"d";s:31:"View budget summary Performance";s:1:"e";s:76:"Budget Vs Actual Summary -this looks at the total for the budget period only";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:642;a:8:{s:1:"a";i:1122;s:1:"b";s:32:"budget-detail-performance-report";s:1:"c";i:24;s:1:"d";s:30:"View budget detail Performance";s:1:"e";s:87:"Budget Vs Actual detail: compares each period and then the total for whole the period";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:643;a:8:{s:1:"a";i:1123;s:1:"b";s:35:"add-new-diagnosis-from-consultation";s:1:"c";i:4;s:1:"d";s:35:"Add new diagnosis from consultation";s:1:"e";s:51:"Add new system diagnosis from the consultation page";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:644;a:8:{s:1:"a";i:1124;s:1:"b";s:34:"view-inpatient-bill-saving-history";s:1:"c";i:7;s:1:"d";s:55:"View history of users that have saved an inpatient bill";s:1:"e";s:72:"View a history or audit trail of users that have saved an inpatient bill";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:645;a:8:{s:1:"a";i:1125;s:1:"b";s:26:"delete-direct-bank-deposit";s:1:"c";i:7;s:1:"d";s:28:"Delete a direct bank deposit";s:1:"e";s:28:"Delete a direct bank deposit";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:646;a:8:{s:1:"a";i:1126;s:1:"b";s:29:"unreceive-direct-bank-deposit";s:1:"c";i:7;s:1:"d";s:31:"Unreceive a direct bank deposit";s:1:"e";s:92:"Unreceive a direct bank deposit so that it can be received again from the income cash report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:647;a:8:{s:1:"a";i:1127;s:1:"b";s:20:"chi_plan-list-delete";s:1:"c";i:2;s:1:"d";s:36:"Deactivate and reactivate C.H.I Plan";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:648;a:8:{s:1:"a";i:1128;s:1:"b";s:18:"chi_plan-list-edit";s:1:"c";i:2;s:1:"d";s:15:"Edit C.H.I Plan";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:649;a:8:{s:1:"a";i:1129;s:1:"b";s:20:"chi_plan-list-create";s:1:"c";i:2;s:1:"d";s:17:"Create C.H.I Plan";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:650;a:8:{s:1:"a";i:1130;s:1:"b";s:18:"chi_plan-list-list";s:1:"c";i:2;s:1:"d";s:15:"View C.H.I Plan";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:651;a:8:{s:1:"a";i:1131;s:1:"b";s:23:"insurance-benefits-view";s:1:"c";i:2;s:1:"d";s:23:"View insurance benefits";s:1:"e";s:23:"View insurance benefits";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:652;a:8:{s:1:"a";i:1132;s:1:"b";s:25:"insurance-benefits-create";s:1:"c";i:2;s:1:"d";s:25:"Create insurance benefits";s:1:"e";s:25:"Create insurance benefits";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:653;a:8:{s:1:"a";i:1133;s:1:"b";s:27:"insurance-benefits-inactive";s:1:"c";i:2;s:1:"d";s:32:"View inactive insurance benefits";s:1:"e";s:32:"View inactive insurance benefits";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:654;a:8:{s:1:"a";i:1134;s:1:"b";s:23:"insurance-services-view";s:1:"c";i:2;s:1:"d";s:23:"View insurance services";s:1:"e";s:23:"View insurance services";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:655;a:8:{s:1:"a";i:1135;s:1:"b";s:25:"insurance-services-create";s:1:"c";i:2;s:1:"d";s:25:"Create insurance services";s:1:"e";s:25:"Create insurance services";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:656;a:8:{s:1:"a";i:1136;s:1:"b";s:31:"insurance-benefits-view-details";s:1:"c";i:2;s:1:"d";s:30:"View insurance benefit details";s:1:"e";s:30:"View insurance benefit details";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:657;a:8:{s:1:"a";i:1137;s:1:"b";s:23:"insurance-benefits-edit";s:1:"c";i:2;s:1:"d";s:23:"Edit insurance benefits";s:1:"e";s:23:"Edit insurance benefits";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:658;a:8:{s:1:"a";i:1138;s:1:"b";s:23:"insurance-services-edit";s:1:"c";i:2;s:1:"d";s:23:"Edit insurance services";s:1:"e";s:23:"Edit insurance services";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:659;a:8:{s:1:"a";i:1139;s:1:"b";s:25:"insurance-services-remove";s:1:"c";i:2;s:1:"d";s:38:"Remove insurance services from benefit";s:1:"e";s:38:"Remove insurance services from benefit";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:660;a:8:{s:1:"a";i:1140;s:1:"b";s:24:"insurance-tariffs-create";s:1:"c";i:2;s:1:"d";s:37:"Create insurance tariffs for services";s:1:"e";s:37:"Create insurance tariffs for services";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:661;a:8:{s:1:"a";i:1141;s:1:"b";s:22:"insurance-tariffs-edit";s:1:"c";i:2;s:1:"d";s:35:"Edit insurance tariffs for services";s:1:"e";s:35:"Edit insurance tariffs for services";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:662;a:8:{s:1:"a";i:1142;s:1:"b";s:24:"insurance-tariffs-delete";s:1:"c";i:2;s:1:"d";s:37:"Delete insurance tariffs for services";s:1:"e";s:37:"Delete insurance tariffs for services";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:663;a:8:{s:1:"a";i:1143;s:1:"b";s:16:"view-item-prices";s:1:"c";i:7;s:1:"d";s:47:"View individual item prices on patient payments";s:1:"e";s:47:"View individual item prices on patient payments";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:664;a:8:{s:1:"a";i:1144;s:1:"b";s:26:"make-bulk-invoice-payments";s:1:"c";i:7;s:1:"d";s:52:"Perform bulk invoice payments for patient categories";s:1:"e";s:61:"Perform bulk invoice payments for a paylater patient category";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:665;a:8:{s:1:"a";i:1145;s:1:"b";s:29:"insurance-disease-groups-view";s:1:"c";i:2;s:1:"d";s:29:"View insurance disease groups";s:1:"e";s:29:"View insurance disease groups";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:666;a:8:{s:1:"a";i:1146;s:1:"b";s:29:"insurance-disease-groups-edit";s:1:"c";i:2;s:1:"d";s:29:"Edit insurance disease groups";s:1:"e";s:29:"Edit insurance disease groups";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:667;a:8:{s:1:"a";i:1147;s:1:"b";s:31:"insurance-disease-groups-delete";s:1:"c";i:2;s:1:"d";s:31:"Delete insurance disease groups";s:1:"e";s:31:"Delete insurance disease groups";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:668;a:8:{s:1:"a";i:1148;s:1:"b";s:31:"insurance-disease-groups-create";s:1:"c";i:2;s:1:"d";s:31:"Create insurance disease groups";s:1:"e";s:31:"Create insurance disease groups";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:669;a:8:{s:1:"a";i:1149;s:1:"b";s:18:"dentals-management";s:1:"c";i:12;s:1:"d";s:18:"Dentals management";s:1:"e";s:40:"Link to dentals management under imaging";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:670;a:8:{s:1:"a";i:1150;s:1:"b";s:19:"dental-requisitions";s:1:"c";i:12;s:1:"d";s:24:"View Dental Requisitions";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:671;a:8:{s:1:"a";i:1151;s:1:"b";s:19:"dental-usage-report";s:1:"c";i:12;s:1:"d";s:24:"View Dental Usage Report";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:672;a:8:{s:1:"a";i:1152;s:1:"b";s:20:"dental-usage-listing";s:1:"c";i:12;s:1:"d";s:25:"View Dental Usage listing";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:673;a:8:{s:1:"a";i:1153;s:1:"b";s:45:"add-medical-detailed-notes-on-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:66:"Add medical detailed notes on inpatient sheet e.g vitals, plan etc";s:1:"e";s:88:"Add medical detailed notes on inpatient sheet e.g vitals, plan, impressions, history etc";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:674;a:8:{s:1:"a";i:1154;s:1:"b";s:24:"authorize-inpatient-bill";s:1:"c";i:7;s:1:"d";s:24:"Authorize inpatient bill";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:675;a:8:{s:1:"a";i:1155;s:1:"b";s:23:"add-row-on-prescription";s:1:"c";i:13;s:1:"d";s:48:"View the add row button on the prescription page";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:676;a:8:{s:1:"a";i:1156;s:1:"b";s:46:"view-medical-detailed-notes-on-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:67:"View medical detailed notes on inpatient sheet e.g vitals, plan etc";s:1:"e";s:89:"View medical detailed notes on inpatient sheet e.g vitals, plan, impressions, history etc";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:677;a:8:{s:1:"a";i:1157;s:1:"b";s:38:"add-medical-history-on-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:57:"Add history notes on inpatient sheet e.g vitals, plan etc";s:1:"e";s:36:"Add history notes on inpatient sheet";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:678;a:8:{s:1:"a";i:1158;s:1:"b";s:38:"add-medical-results-on-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:57:"Add results notes on inpatient sheet e.g vitals, plan etc";s:1:"e";s:36:"Add results notes on inpatient sheet";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:679;a:8:{s:1:"a";i:1159;s:1:"b";s:45:"add-vitals-and-examination-on-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:72:"Add vitals and examination notes on inpatient sheet e.g vitals, plan etc";s:1:"e";s:51:"Add vitals and examination notes on inpatient sheet";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:680;a:8:{s:1:"a";i:1160;s:1:"b";s:33:"add-impression-on-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:60:"Add impression notes on inpatient sheet e.g vitals, plan etc";s:1:"e";s:51:"Add vitals and examination notes on inpatient sheet";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:681;a:8:{s:1:"a";i:1161;s:1:"b";s:27:"add-plan-on-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:54:"Add plan notes on inpatient sheet e.g vitals, plan etc";s:1:"e";s:33:"Add plan notes on inpatient sheet";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:682;a:8:{s:1:"a";i:1162;s:1:"b";s:22:"insurance-tariffs-view";s:1:"c";i:2;s:1:"d";s:35:"View insurance tariffs for services";s:1:"e";s:35:"View insurance tariffs for services";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:683;a:8:{s:1:"a";i:1163;s:1:"b";s:26:"authorise-insurance-claims";s:1:"c";i:2;s:1:"d";s:42:"Manage authorisations for insurance claims";s:1:"e";s:42:"Manage authorisations for insurance claims";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:684;a:8:{s:1:"a";i:1164;s:1:"b";s:17:"make-chi-deposits";s:1:"c";i:7;s:1:"d";s:51:"Handle CHI co-payments and co-insurance by patients";s:1:"e";s:51:"Handle CHI co-payments and co-insurance by patients";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:685;a:8:{s:1:"a";i:1165;s:1:"b";s:14:"countries-list";s:1:"c";i:9;s:1:"d";s:14:"List countries";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:686;a:8:{s:1:"a";i:1166;s:1:"b";s:16:"countries-create";s:1:"c";i:9;s:1:"d";s:16:"Create countries";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:687;a:8:{s:1:"a";i:1167;s:1:"b";s:14:"countries-edit";s:1:"c";i:9;s:1:"d";s:14:"Edit countries";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:688;a:8:{s:1:"a";i:1168;s:1:"b";s:16:"countries-detail";s:1:"c";i:9;s:1:"d";s:27:"Get Details about countries";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:689;a:8:{s:1:"a";i:1169;s:1:"b";s:16:"countries-delete";s:1:"c";i:9;s:1:"d";s:16:"Delete countries";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:690;a:8:{s:1:"a";i:1170;s:1:"b";s:16:"countries-status";s:1:"c";i:9;s:1:"d";s:32:"Activate or Deactivate countries";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:691;a:8:{s:1:"a";i:1171;s:1:"b";s:34:"override-claim-adjudication-errors";s:1:"c";i:2;s:1:"d";s:34:"Override Claim Adjudication Errors";s:1:"e";s:34:"Override Claim Adjudication Errors";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:692;a:8:{s:1:"a";i:1172;s:1:"b";s:47:"register-chi-members-with-pre-existing-premiums";s:1:"c";i:2;s:1:"d";s:47:"Register CHI members with pre-existing premiums";s:1:"e";s:149:"Add new CHI members whose premiums have already been received i.e activate CHI members whose premiums were not previously received through Stre@mline";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:693;a:8:{s:1:"a";i:1173;s:1:"b";s:41:"members-with-pre-existing-premiums-report";s:1:"c";i:2;s:1:"d";s:56:"View added CHI members with pre-existing premiums report";s:1:"e";s:157:"View new CHI members whose premiums have already been received report i.e activate CHI members whose premiums were not previously received through Stre@mline";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:694;a:8:{s:1:"a";i:1174;s:1:"b";s:20:"insurance-items-view";s:1:"c";i:2;s:1:"d";s:20:"View insurance items";s:1:"e";s:20:"View insurance items";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:695;a:8:{s:1:"a";i:1175;s:1:"b";s:22:"insurance-items-create";s:1:"c";i:2;s:1:"d";s:22:"Create insurance items";s:1:"e";s:22:"Create insurance items";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:696;a:8:{s:1:"a";i:1176;s:1:"b";s:20:"insurance-items-edit";s:1:"c";i:2;s:1:"d";s:20:"Edit insurance items";s:1:"e";s:20:"Edit insurance items";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:697;a:8:{s:1:"a";i:1177;s:1:"b";s:22:"insurance-items-remove";s:1:"c";i:2;s:1:"d";s:35:"Remove insurance items from benefit";s:1:"e";s:35:"Remove insurance items from benefit";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:698;a:8:{s:1:"a";i:1178;s:1:"b";s:31:"insurance-scheme-administration";s:1:"c";i:2;s:1:"d";s:26:"Insurance Scheme Home Page";s:1:"e";s:55:"View the dashboard required to manage Insurance Schemes";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:699;a:8:{s:1:"a";i:1179;s:1:"b";s:23:"insurance-product-setup";s:1:"c";i:2;s:1:"d";s:23:"Insurance Product Setup";s:1:"e";s:72:"View the dashboard required to setup insurance plans, benefits and items";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:700;a:8:{s:1:"a";i:1180;s:1:"b";s:32:"cancel-insurance-member-premiums";s:1:"c";i:2;s:1:"d";s:32:"Cancel insurance member premiums";s:1:"e";s:72:"Cancel premiums paid by members if the premium has no consumptions on it";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:701;a:8:{s:1:"a";i:1181;s:1:"b";s:14:"hmis-ward-list";s:1:"c";i:23;s:1:"d";s:15:"View Hmis wards";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:702;a:8:{s:1:"a";i:1182;s:1:"b";s:16:"hmis-ward-create";s:1:"c";i:23;s:1:"d";s:16:"Create Hmis ward";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:703;a:8:{s:1:"a";i:1183;s:1:"b";s:14:"hmis-ward-edit";s:1:"c";i:23;s:1:"d";s:14:"Edit Hmis ward";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:704;a:8:{s:1:"a";i:1184;s:1:"b";s:16:"hmis-ward-delete";s:1:"c";i:23;s:1:"d";s:36:"Deactivate and reactivate Hmis wards";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:705;a:8:{s:1:"a";i:1185;s:1:"b";s:38:"change-expense-account-on-make-payment";s:1:"c";i:7;s:1:"d";s:42:"Change expense account on make new payment";s:1:"e";s:59:"Allow user to change expense accounts on making new payment";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:706;a:8:{s:1:"a";i:1186;s:1:"b";s:35:"view-previous-patient-prescriptions";s:1:"c";i:4;s:1:"d";s:35:"View previous patient prescriptions";s:1:"e";s:55:"View previous patient prescriptions from other episodes";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:707;a:8:{s:1:"a";i:1187;s:1:"b";s:17:"person-title-list";s:1:"c";i:9;s:1:"d";s:18:"List person titles";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:708;a:8:{s:1:"a";i:1188;s:1:"b";s:19:"person-title-create";s:1:"c";i:9;s:1:"d";s:20:"Create person titles";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:709;a:8:{s:1:"a";i:1189;s:1:"b";s:17:"person-title-edit";s:1:"c";i:9;s:1:"d";s:18:"Edit person titles";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:710;a:8:{s:1:"a";i:1190;s:1:"b";s:19:"person-title-detail";s:1:"c";i:9;s:1:"d";s:31:"Get Details about person titles";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:711;a:8:{s:1:"a";i:1191;s:1:"b";s:19:"person-title-delete";s:1:"c";i:9;s:1:"d";s:20:"Delete person titles";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:712;a:8:{s:1:"a";i:1192;s:1:"b";s:19:"person-title-status";s:1:"c";i:9;s:1:"d";s:36:"Activate or Deactivate person titles";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:713;a:8:{s:1:"a";i:1193;s:1:"b";s:22:"return-drugs-per-chart";s:1:"c";i:13;s:1:"d";s:64:"Return drugs to pharmacy given through ward dispensing per chart";s:1:"e";s:64:"Return drugs to pharmacy given through ward dispensing per chart";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:714;a:8:{s:1:"a";i:1194;s:1:"b";s:37:"create-patient-episode-with-admission";s:1:"c";i:4;s:1:"d";s:37:"Create patient episode with Admission";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:715;a:8:{s:1:"a";i:1195;s:1:"b";s:42:"hide-performed-by-on-lab-results-print-out";s:1:"c";i:10;s:1:"d";s:52:"Hide performed by on investigation results print out";s:1:"e";s:62:"Hide person on performed by on investigation results print out";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:2:{i:0;i:1;i:1;i:49;}}i:716;a:8:{s:1:"a";i:1196;s:1:"b";s:25:"hmis-category-option-list";s:1:"c";i:12;s:1:"d";s:26:"View hmis category options";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:1:{i:0;i:1;}}i:717;a:8:{s:1:"a";i:1197;s:1:"b";s:27:"hmis-category-option-create";s:1:"c";i:12;s:1:"d";s:28:"Create hmis category options";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:1:{i:0;i:1;}}i:718;a:8:{s:1:"a";i:1198;s:1:"b";s:25:"hmis-category-option-edit";s:1:"c";i:12;s:1:"d";s:25:"Edit hmis category option";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:1:{i:0;i:1;}}i:719;a:8:{s:1:"a";i:1199;s:1:"b";s:27:"hmis-category-option-delete";s:1:"c";i:12;s:1:"d";s:47:"Deactivate and reactivate hmis category options";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:1:{i:0;i:1;}}i:720;a:8:{s:1:"a";i:1200;s:1:"b";s:19:"view-hmis-form-033b";s:1:"c";i:5;s:1:"d";s:71:"View HMIS 033b: Health Unit Weekly Epidemiological Surveillance Report ";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:1:{i:0;i:1;}}i:721;a:8:{s:1:"a";i:1201;s:1:"b";s:15:"chi-to-pay-edit";s:1:"c";i:2;s:1:"d";s:48:"Edit the C.H.I to pay amounts on inpatient sheet";s:1:"e";s:75:"Enable the user to edit the amounts to be paid by C.H.I plan patient is on.";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:1:{i:0;i:1;}}i:722;a:8:{s:1:"a";i:1202;s:1:"b";s:20:"cancer-protocol-list";s:1:"c";i:9;s:1:"d";s:21:"List cancer protocols";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:1:{i:0;i:1;}}i:723;a:8:{s:1:"a";i:1203;s:1:"b";s:22:"cancer-protocol-create";s:1:"c";i:9;s:1:"d";s:23:"Create cancer protocols";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:1:{i:0;i:1;}}i:724;a:8:{s:1:"a";i:1204;s:1:"b";s:20:"cancer-protocol-edit";s:1:"c";i:9;s:1:"d";s:21:"Edit cancer protocols";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:1:{i:0;i:1;}}i:725;a:8:{s:1:"a";i:1205;s:1:"b";s:22:"cancer-protocol-delete";s:1:"c";i:9;s:1:"d";s:23:"Delete cancer protocols";s:1:"e";s:0:"";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:1:{i:0;i:1;}}i:726;a:8:{s:1:"a";i:1206;s:1:"b";s:29:"add-vitals-on-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:29:"Add vitals on inpatient sheet";s:1:"e";s:29:"Add vitals on inpatient sheet";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:1:{i:0;i:1;}}i:727;a:8:{s:1:"a";i:1207;s:1:"b";s:30:"view-vitals-on-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:30:"View vitals on inpatient sheet";s:1:"e";s:30:"View vitals on inpatient sheet";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:1:{i:0;i:1;}}i:728;a:8:{s:1:"a";i:1208;s:1:"b";s:38:"alter-cancer-protocol-chart-dispensing";s:1:"c";i:13;s:1:"d";s:64:"Alter cancer protocol drugs before dispensing on the ward charts";s:1:"e";s:64:"Alter cancer protocol drugs before dispensing on the ward charts";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:1:{i:0;i:1;}}i:729;a:8:{s:1:"a";i:1209;s:1:"b";s:32:"list-patient-registration-fields";s:1:"c";i:4;s:1:"d";s:32:"View Patient Registration Fields";s:1:"e";s:32:"View Patient Registration Fields";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:1:{i:0;i:1;}}i:730;a:8:{s:1:"a";i:1210;s:1:"b";s:33:"create-patient-registration-field";s:1:"c";i:4;s:1:"d";s:34:"Create Patient Registration Fields";s:1:"e";s:34:"Create Patient Registration Fields";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:1:{i:0;i:1;}}i:731;a:8:{s:1:"a";i:1211;s:1:"b";s:31:"edit-patient-registration-field";s:1:"c";i:4;s:1:"d";s:32:"Edit Patient Registration Fields";s:1:"e";s:32:"Edit Patient Registration Fields";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:1:{i:0;i:1;}}i:732;a:8:{s:1:"a";i:1212;s:1:"b";s:33:"detail-patient-registration-field";s:1:"c";i:4;s:1:"d";s:31:"Show Patient Registration Field";s:1:"e";s:31:"Show Patient Registration Field";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:1:{i:0;i:1;}}i:733;a:8:{s:1:"a";i:1213;s:1:"b";s:33:"delete-patient-registration-field";s:1:"c";i:4;s:1:"d";s:34:"Delete Patient Registration Fields";s:1:"e";s:34:"Delete Patient Registration Fields";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:1:{i:0;i:1;}}i:734;a:8:{s:1:"a";i:1214;s:1:"b";s:27:"view-closed-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:27:"View closed inpatient sheet";s:1:"e";s:96:"The permission for users to view details of closed inpatient sheets to protect patients' privacy";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:1:{i:0;i:1;}}i:735;a:8:{s:1:"a";i:1215;s:1:"b";s:21:"order-for-eye-glasses";s:1:"c";i:4;s:1:"d";s:21:"Order For Eye Glasses";s:1:"e";s:21:"Order For Eye Glasses";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:1:{i:0;i:1;}}i:736;a:8:{s:1:"a";i:1216;s:1:"b";s:16:"eye_glasses-list";s:1:"c";i:25;s:1:"d";s:16:"View eye glasses";s:1:"e";s:16:"View eye glasses";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:1:{i:0;i:1;}}i:737;a:8:{s:1:"a";i:1217;s:1:"b";s:18:"eye_glasses-create";s:1:"c";i:25;s:1:"d";s:18:"Create eye glasses";s:1:"e";s:18:"Create eye glasses";s:1:"f";s:3:"web";s:1:"g";s:6:"create";s:1:"r";a:1:{i:0;i:1;}}i:738;a:8:{s:1:"a";i:1218;s:1:"b";s:16:"eye_glasses-edit";s:1:"c";i:25;s:1:"d";s:16:"Edit eye glasses";s:1:"e";s:16:"Edit eye glasses";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:1:{i:0;i:1;}}i:739;a:8:{s:1:"a";i:1219;s:1:"b";s:18:"eye_glasses-delete";s:1:"c";i:25;s:1:"d";s:18:"Delete eye glasses";s:1:"e";s:18:"Delete eye glasses";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:1:{i:0;i:1;}}i:740;a:8:{s:1:"a";i:1220;s:1:"b";s:15:"test_areas-list";s:1:"c";i:12;s:1:"d";s:15:"View Test Areas";s:1:"e";s:15:"View Test Areas";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:1:{i:0;i:1;}}i:741;a:8:{s:1:"a";i:1221;s:1:"b";s:17:"test_areas-create";s:1:"c";i:12;s:1:"d";s:17:"Create Test Areas";s:1:"e";s:17:"Create Test Areas";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:1:{i:0;i:1;}}i:742;a:8:{s:1:"a";i:1222;s:1:"b";s:15:"test_areas-edit";s:1:"c";i:12;s:1:"d";s:15:"Edit Test Areas";s:1:"e";s:15:"Edit Test Areas";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:1:{i:0;i:1;}}i:743;a:8:{s:1:"a";i:1223;s:1:"b";s:17:"test_areas-delete";s:1:"c";i:12;s:1:"d";s:17:"Delete Test Areas";s:1:"e";s:17:"Delete Test Areas";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:1:{i:0;i:1;}}i:744;a:8:{s:1:"a";i:1224;s:1:"b";s:21:"test_area_values-list";s:1:"c";i:12;s:1:"d";s:21:"View Test Area Values";s:1:"e";s:21:"View Test Area Values";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:1:{i:0;i:1;}}i:745;a:8:{s:1:"a";i:1225;s:1:"b";s:23:"test_area_values-create";s:1:"c";i:12;s:1:"d";s:23:"Create Test Area Values";s:1:"e";s:23:"Create Test Area Values";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:1:{i:0;i:1;}}i:746;a:8:{s:1:"a";i:1226;s:1:"b";s:21:"test_area_values-edit";s:1:"c";i:12;s:1:"d";s:21:"Edit Test Area Values";s:1:"e";s:21:"Edit Test Area Values";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:1:{i:0;i:1;}}i:747;a:8:{s:1:"a";i:1227;s:1:"b";s:23:"test_area_values-delete";s:1:"c";i:12;s:1:"d";s:23:"Delete Test Area Values";s:1:"e";s:23:"Delete Test Area Values";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:1:{i:0;i:1;}}i:748;a:8:{s:1:"a";i:1228;s:1:"b";s:26:"cancel-ordered-eye-glasses";s:1:"c";i:4;s:1:"d";s:26:"Cancel ordered eye glasses";s:1:"e";s:26:"Cancel ordered eye glasses";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";s:1:"r";a:1:{i:0;i:1;}}i:749;a:8:{s:1:"a";i:1229;s:1:"b";s:19:"save-inpatient-bill";s:1:"c";i:4;s:1:"d";s:20:"Save Inpatient Bills";s:1:"e";s:34:"Save Inpatient Bills For a Patient";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:1:{i:0;i:1;}}i:750;a:8:{s:1:"a";i:1230;s:1:"b";s:29:"save-and-close-inpatient-bill";s:1:"c";i:4;s:1:"d";s:30:"Save and Close Inpatient Bills";s:1:"e";s:74:"Save and Close Inpatient Bills For a Patient so that they cannot be edited";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:1:{i:0;i:1;}}i:751;a:8:{s:1:"a";i:1231;s:1:"b";s:19:"open-inpatient-bill";s:1:"c";i:4;s:1:"d";s:34:"Open an inpatient bill for editing";s:1:"e";s:34:"Open an inpatient bill for editing";s:1:"f";s:3:"web";s:1:"g";s:5:"other";s:1:"r";a:1:{i:0;i:1;}}i:752;a:8:{s:1:"a";i:1232;s:1:"b";s:23:"edit-name-of-lab-doctor";s:1:"c";i:10;s:1:"d";s:70:"Allow editing the name of the doctor who performed a lab investigation";s:1:"e";s:70:"Allow editing the name of the doctor who performed a lab investigation";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:1:{i:0;i:1;}}i:753;a:8:{s:1:"a";i:1233;s:1:"b";s:22:"view-expiring-sundries";s:1:"c";i:15;s:1:"d";s:22:"View Expiring Sundries";s:1:"e";s:22:"View Expiring Sundries";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:1:{i:0;i:1;}}i:754;a:8:{s:1:"a";i:1234;s:1:"b";s:27:"average-monthly-consumption";s:1:"c";i:15;s:1:"d";s:32:"View Average Monthly Consumption";s:1:"e";s:32:"View Average Monthly Consumption";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:1:{i:0;i:1;}}i:755;a:8:{s:1:"a";i:1235;s:1:"b";s:31:"drugs-issued-to-pharmacy-report";s:1:"c";i:15;s:1:"d";s:36:"View Drugs Issued to pharmacy report";s:1:"e";s:36:"View Drugs Issued to pharmacy report";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:1:{i:0;i:1;}}i:756;a:8:{s:1:"a";i:1236;s:1:"b";s:21:"view-ward-consumption";s:1:"c";i:15;s:1:"d";s:28:"View ward consumption report";s:1:"e";s:28:"View ward consumption report";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:1:{i:0;i:1;}}i:757;a:8:{s:1:"a";i:1237;s:1:"b";s:46:"view-general-items-stock-reconciliation-report";s:1:"c";i:15;s:1:"d";s:46:"View General items stock reconciliation report";s:1:"e";s:46:"View General items stock reconciliation report";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:1:{i:0;i:1;}}i:758;a:8:{s:1:"a";i:1238;s:1:"b";s:41:"view-sundries-stock-reconciliation-report";s:1:"c";i:15;s:1:"d";s:41:"View sundries stock reconciliation report";s:1:"e";s:41:"View sundries stock reconciliation report";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:1:{i:0;i:1;}}i:759;a:8:{s:1:"a";i:1239;s:1:"b";s:38:"view-drugs-stock-reconciliation-report";s:1:"c";i:15;s:1:"d";s:37:"View Drug stock reconciliation report";s:1:"e";s:37:"View Drug stock reconciliation report";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:1:{i:0;i:1;}}i:760;a:8:{s:1:"a";i:1240;s:1:"b";s:32:"resume-drug-physical-stock-count";s:1:"c";i:15;s:1:"d";s:32:"Resume drug stock reconciliation";s:1:"e";s:32:"Resume drug stock reconciliation";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:1:{i:0;i:1;}}i:761;a:8:{s:1:"a";i:1241;s:1:"b";s:36:"resume-sundries-physical-stock-count";s:1:"c";i:15;s:1:"d";s:36:"Resume sundries stock reconciliation";s:1:"e";s:36:"Resume sundries stock reconciliation";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:1:{i:0;i:1;}}i:762;a:8:{s:1:"a";i:1242;s:1:"b";s:34:"general-items-stock-reconciliation";s:1:"c";i:15;s:1:"d";s:34:"General Items stock reconciliation";s:1:"e";s:34:"General Items stock reconciliation";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:1:{i:0;i:1;}}i:763;a:8:{s:1:"a";i:1243;s:1:"b";s:28:"optical-stock-reconciliation";s:1:"c";i:15;s:1:"d";s:34:"Optical Items stock reconciliation";s:1:"e";s:34:"Optical Items stock reconciliation";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:1:{i:0;i:1;}}i:764;a:8:{s:1:"a";i:1244;s:1:"b";s:29:"sundries-stock-reconciliation";s:1:"c";i:15;s:1:"d";s:29:"Sundries stock reconciliation";s:1:"e";s:29:"Sundries stock reconciliation";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:1:{i:0;i:1;}}i:765;a:8:{s:1:"a";i:1245;s:1:"b";s:26:"drugs-stock-reconciliation";s:1:"c";i:15;s:1:"d";s:26:"Drugs stock reconciliation";s:1:"e";s:26:"Drugs stock reconciliation";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:1:{i:0;i:1;}}i:766;a:8:{s:1:"a";i:1246;s:1:"b";s:18:"view-package-units";s:1:"c";i:15;s:1:"d";s:20:"Manage Package Units";s:1:"e";s:20:"Manage Package Units";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";s:1:"r";a:1:{i:0;i:1;}}i:767;a:8:{s:1:"a";i:1247;s:1:"b";s:22:"view-eye-clinic-report";s:1:"c";i:5;s:1:"d";s:23:"View eye clinic reports";s:1:"e";s:23:"View eye clinic reports";s:1:"f";s:3:"web";s:1:"g";s:4:"view";s:1:"r";a:1:{i:0;i:1;}}i:768;a:7:{s:1:"a";i:1248;s:1:"b";s:24:"edit-maternity-admission";s:1:"c";i:4;s:1:"d";s:34:"Edit patient's maternity admission";s:1:"e";s:34:"Edit patient's maternity admission";s:1:"f";s:3:"web";s:1:"g";s:5:"other";}i:769;a:7:{s:1:"a";i:1249;s:1:"b";s:25:"print-maternity-admission";s:1:"c";i:4;s:1:"d";s:35:"Print patient's maternity admission";s:1:"e";s:35:"Print patient's maternity admission";s:1:"f";s:3:"web";s:1:"g";s:5:"other";}i:770;a:7:{s:1:"a";i:1250;s:1:"b";s:29:"edit-inpatient-detailed-notes";s:1:"c";i:4;s:1:"d";s:29:"Edit inpatient detailed notes";s:1:"e";s:29:"Edit inpatient detailed notes";s:1:"f";s:3:"web";s:1:"g";s:5:"other";}i:771;a:7:{s:1:"a";i:1251;s:1:"b";s:31:"delete-inpatient-detailed-notes";s:1:"c";i:4;s:1:"d";s:31:"Delete inpatient detailed notes";s:1:"e";s:31:"Delete inpatient detailed notes";s:1:"f";s:3:"web";s:1:"g";s:5:"other";}i:772;a:7:{s:1:"a";i:1252;s:1:"b";s:42:"edit-nurse-ward-notes-from-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:36:"Edit nurse ward notes from inpatient";s:1:"e";s:53:"Edit ward progress notes that were added by the nurse";s:1:"f";s:3:"web";s:1:"g";s:5:"other";}i:773;a:7:{s:1:"a";i:1253;s:1:"b";s:43:"edit-doctor-ward-notes-from-inpatient-sheet";s:1:"c";i:4;s:1:"d";s:37:"Edit doctor ward notes from inpatient";s:1:"e";s:56:"Edit doctor progress notes that were added by the doctor";s:1:"f";s:3:"web";s:1:"g";s:5:"other";}i:774;a:7:{s:1:"a";i:1254;s:1:"b";s:41:"add-batch-during-lab-stock-reconciliation";s:1:"c";i:15;s:1:"d";s:46:"add item batch during lab stock reconciliation";s:1:"e";s:46:"add item batch during lab stock reconciliation";s:1:"f";s:3:"web";s:1:"g";s:4:"view";}i:775;a:7:{s:1:"a";i:1255;s:1:"b";s:38:"radiologies-items-stock-reconciliation";s:1:"c";i:15;s:1:"d";s:32:"Radiologies stock reconciliation";s:1:"e";s:32:"Radiologies stock reconciliation";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";}i:776;a:7:{s:1:"a";i:1256;s:1:"b";s:30:"lab-items-stock-reconciliation";s:1:"c";i:15;s:1:"d";s:25:"Labs stock reconciliation";s:1:"e";s:25:"Labs stock reconciliation";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";}i:777;a:7:{s:1:"a";i:1257;s:1:"b";s:37:"view-labs-stock-reconciliation-report";s:1:"c";i:15;s:1:"d";s:37:"View Labs stock reconciliation report";s:1:"e";s:37:"View Labs stock reconciliation report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";}i:778;a:7:{s:1:"a";i:1258;s:1:"b";s:44:"view-radiologies-stock-reconciliation-report";s:1:"c";i:15;s:1:"d";s:44:"View Radiologies stock reconciliation report";s:1:"e";s:44:"View Radiologies stock reconciliation report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";}i:779;a:7:{s:1:"a";i:1259;s:1:"b";s:28:"edit-radiologies-stock-sheet";s:1:"c";i:10;s:1:"d";s:24:"Edit Imaging stock sheet";s:1:"e";s:24:"Edit Imaging stock sheet";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";}i:780;a:7:{s:1:"a";i:1260;s:1:"b";s:21:"edit-labs-stock-sheet";s:1:"c";i:10;s:1:"d";s:21:"Edit Labs stock sheet";s:1:"e";s:21:"Edit Labs stock sheet";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";}i:781;a:7:{s:1:"a";i:1261;s:1:"b";s:11:"labs-create";s:1:"c";i:10;s:1:"d";s:16:"Create Lab Items";s:1:"e";s:16:"Create Lab Items";s:1:"f";s:3:"web";s:1:"g";s:6:"create";}i:782;a:7:{s:1:"a";i:1262;s:1:"b";s:16:"labs-bulk-create";s:1:"c";i:10;s:1:"d";s:25:"Create Multiple Lab Items";s:1:"e";s:25:"Create Multiple Lab Items";s:1:"f";s:3:"web";s:1:"g";s:6:"create";}i:783;a:7:{s:1:"a";i:1263;s:1:"b";s:14:"labs-bulk-edit";s:1:"c";i:10;s:1:"d";s:23:"Edit Multiple Lab Items";s:1:"e";s:23:"Edit Multiple Lab Items";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";}i:784;a:7:{s:1:"a";i:1264;s:1:"b";s:9:"labs-edit";s:1:"c";i:10;s:1:"d";s:15:"Edit a Lab Item";s:1:"e";s:15:"Edit a Lab Item";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";}i:785;a:7:{s:1:"a";i:1265;s:1:"b";s:11:"labs-delete";s:1:"c";i:10;s:1:"d";s:17:"Delete a Lab Item";s:1:"e";s:17:"Delete a Lab Item";s:1:"f";s:3:"web";s:1:"g";s:4:"list";}i:786;a:7:{s:1:"a";i:1266;s:1:"b";s:18:"labs-usage-listing";s:1:"c";i:10;s:1:"d";s:33:"List all Labs that have been used";s:1:"e";s:33:"List all Labs that have been used";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";}i:787;a:7:{s:1:"a";i:1267;s:1:"b";s:17:"labs-report-usage";s:1:"c";i:10;s:1:"d";s:35:"A report showing usage of Lab Items";s:1:"e";s:35:"A report showing usage of Lab Items";s:1:"f";s:3:"web";s:1:"g";s:4:"list";}i:788;a:7:{s:1:"a";i:1268;s:1:"b";s:20:"requisition-for-labs";s:1:"c";i:10;s:1:"d";s:31:"Make Requisitions for Lab Items";s:1:"e";s:31:"Make Requisitions for Lab Items";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";}i:789;a:7:{s:1:"a";i:1269;s:1:"b";s:16:"labs-stock-sheet";s:1:"c";i:10;s:1:"d";s:29:"View and Edit Lab stock sheet";s:1:"e";s:29:"View and Edit Lab stock sheet";s:1:"f";s:3:"web";s:1:"g";s:4:"list";}i:790;a:7:{s:1:"a";i:1270;s:1:"b";s:16:"labs-bulk-delete";s:1:"c";i:10;s:1:"d";s:25:"Delete Multiple Lab Items";s:1:"e";s:25:"Delete Multiple Lab Items";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";}i:791;a:7:{s:1:"a";i:1271;s:1:"b";s:19:"print-patient-cards";s:1:"c";i:4;s:1:"d";s:19:"Print Patient Cards";s:1:"e";s:19:"Print Patient Cards";s:1:"f";s:3:"web";s:1:"g";s:4:"view";}i:792;a:7:{s:1:"a";i:1272;s:1:"b";s:18:"view-patient-cards";s:1:"c";i:4;s:1:"d";s:18:"View Patient Cards";s:1:"e";s:18:"View Patient Cards";s:1:"f";s:3:"web";s:1:"g";s:4:"view";}i:793;a:7:{s:1:"a";i:1273;s:1:"b";s:18:"radiologies-create";s:1:"c";i:10;s:1:"d";s:22:"Create Radiology Items";s:1:"e";s:22:"Create Radiology Items";s:1:"f";s:3:"web";s:1:"g";s:6:"create";}i:794;a:7:{s:1:"a";i:1274;s:1:"b";s:16:"radiologies-edit";s:1:"c";i:10;s:1:"d";s:21:"Edit a Radiology Item";s:1:"e";s:21:"Edit a Radiology Item";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";}i:795;a:7:{s:1:"a";i:1275;s:1:"b";s:18:"radiologies-delete";s:1:"c";i:10;s:1:"d";s:23:"Delete a Radiology Item";s:1:"e";s:23:"Delete a Radiology Item";s:1:"f";s:3:"web";s:1:"g";s:4:"list";}i:796;a:7:{s:1:"a";i:1276;s:1:"b";s:25:"radiologies-usage-listing";s:1:"c";i:10;s:1:"d";s:38:"List all Radiology that have been used";s:1:"e";s:38:"List all Radiology that have been used";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";}i:797;a:7:{s:1:"a";i:1277;s:1:"b";s:24:"radiologies-report-usage";s:1:"c";i:10;s:1:"d";s:41:"A report showing usage of Radiology Items";s:1:"e";s:41:"A report showing usage of Radiology Items";s:1:"f";s:3:"web";s:1:"g";s:4:"list";}i:798;a:7:{s:1:"a";i:1278;s:1:"b";s:27:"requisition-for-radiologies";s:1:"c";i:10;s:1:"d";s:37:"Make Requisitions for Radiology Items";s:1:"e";s:37:"Make Requisitions for Radiology Items";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";}i:799;a:7:{s:1:"a";i:1279;s:1:"b";s:23:"radiologies-stock-sheet";s:1:"c";i:10;s:1:"d";s:26:"View Radiology stock sheet";s:1:"e";s:26:"View Radiology stock sheet";s:1:"f";s:3:"web";s:1:"g";s:4:"view";}i:800;a:7:{s:1:"a";i:1280;s:1:"b";s:34:"requisition-for-radiology-sundries";s:1:"c";i:15;s:1:"d";s:38:"Make Requisitions for Imaging Sundries";s:1:"e";s:38:"Make Requisitions for Imaging Sundries";s:1:"f";s:3:"web";s:1:"g";s:6:"create";}i:801;a:7:{s:1:"a";i:1281;s:1:"b";s:35:"view-radiology-sundries-stock-sheet";s:1:"c";i:15;s:1:"d";s:33:"View Imaging Sundries stock sheet";s:1:"e";s:33:"View Imaging Sundries stock sheet";s:1:"f";s:3:"web";s:1:"g";s:4:"view";}i:802;a:7:{s:1:"a";i:1282;s:1:"b";s:22:"edit-quantity-to-issue";s:1:"c";i:15;s:1:"d";s:34:"Edit Quantity on Stores Issue Out ";s:1:"e";s:34:"Edit Quantity on Stores Issue Out ";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";}i:803;a:7:{s:1:"a";i:1283;s:1:"b";s:26:"add-new-batch-to-issue-out";s:1:"c";i:15;s:1:"d";s:30:"Add Batch on Stores Issue Out ";s:1:"e";s:30:"Add Batch on Stores Issue Out ";s:1:"f";s:3:"web";s:1:"g";s:3:"add";}i:804;a:7:{s:1:"a";i:1284;s:1:"b";s:26:"view-electronic-stock-card";s:1:"c";i:15;s:1:"d";s:26:"View Item Inventory Report";s:1:"e";s:26:"View Item Inventory Report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";}i:805;a:7:{s:1:"a";i:1285;s:1:"b";s:34:"view-details-electronic-stock-card";s:1:"c";i:15;s:1:"d";s:34:"View Details Item Inventory Report";s:1:"e";s:34:"View Details Item Inventory Report";s:1:"f";s:3:"web";s:1:"g";s:4:"view";}i:806;a:7:{s:1:"a";i:1286;s:1:"b";s:32:"view-details-received-drill-down";s:1:"c";i:15;s:1:"d";s:38:"View Received Stock drill down details";s:1:"e";s:38:"View Received Stock drill down details";s:1:"f";s:3:"web";s:1:"g";s:4:"view";}i:807;a:7:{s:1:"a";i:1287;s:1:"b";s:30:"view-details-issued-drill-down";s:1:"c";i:15;s:1:"d";s:36:"View Issued Stock drill down details";s:1:"e";s:36:"View Issued Stock drill down details";s:1:"f";s:3:"web";s:1:"g";s:4:"view";}i:808;a:7:{s:1:"a";i:1288;s:1:"b";s:27:"view-details-adjusted-stock";s:1:"c";i:15;s:1:"d";s:38:"View Adjusted Stock drill down details";s:1:"e";s:38:"View Adjusted Stock drill down details";s:1:"f";s:3:"web";s:1:"g";s:4:"view";}i:809;a:7:{s:1:"a";i:1289;s:1:"b";s:18:"sundry-form-create";s:1:"c";i:12;s:1:"d";s:16:"Add Sundry Form ";s:1:"e";s:16:"Add Sundry Form ";s:1:"f";s:3:"web";s:1:"g";s:3:"add";}i:810;a:7:{s:1:"a";i:1290;s:1:"b";s:16:"sundry-form-list";s:1:"c";i:12;s:1:"d";s:18:"View Sundry Forms ";s:1:"e";s:18:"View Sundry Forms ";s:1:"f";s:3:"web";s:1:"g";s:4:"read";}i:811;a:7:{s:1:"a";i:1291;s:1:"b";s:18:"sundry-form-delete";s:1:"c";i:12;s:1:"d";s:38:"Deactivate and reactivate Sundry Form ";s:1:"e";s:38:"Deactivate and reactivate Sundry Form ";s:1:"f";s:3:"web";s:1:"g";s:6:"delete";}i:812;a:7:{s:1:"a";i:1292;s:1:"b";s:16:"sundry-form-edit";s:1:"c";i:12;s:1:"d";s:17:"Edit Sundry Form ";s:1:"e";s:17:"Edit Sundry Form ";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";}i:813;a:7:{s:1:"a";i:1293;s:1:"b";s:57:"edit-unit-cost-during-pharmacy-drugs-stock-reconciliation";s:1:"c";i:13;s:1:"d";s:47:"Edit unit cost on pharmacy drugs reconciliation";s:1:"e";s:47:"Edit unit cost on pharmacy drugs reconciliation";s:1:"f";s:3:"web";s:1:"g";s:5:"other";}i:814;a:7:{s:1:"a";i:1294;s:1:"b";s:60:"edit-unit-cost-during-pharmacy-sundries-stock-reconciliation";s:1:"c";i:13;s:1:"d";s:50:"Edit unit cost on pharmacy sundries reconciliation";s:1:"e";s:50:"Edit unit cost on pharmacy sundries reconciliation";s:1:"f";s:3:"web";s:1:"g";s:5:"other";}i:815;a:7:{s:1:"a";i:1295;s:1:"b";s:55:"edit-unit-cost-during-stores-drugs-stock-reconciliation";s:1:"c";i:15;s:1:"d";s:45:"Edit unit cost on stores drugs reconciliation";s:1:"e";s:45:"Edit unit cost on stores drugs reconciliation";s:1:"f";s:3:"web";s:1:"g";s:5:"other";}i:816;a:7:{s:1:"a";i:1296;s:1:"b";s:58:"edit-unit-cost-during-stores-sundries-stock-reconciliation";s:1:"c";i:15;s:1:"d";s:48:"Edit unit cost on stores sundries reconciliation";s:1:"e";s:48:"Edit unit cost on stores sundries reconciliation";s:1:"f";s:3:"web";s:1:"g";s:5:"other";}i:817;a:7:{s:1:"a";i:1297;s:1:"b";s:54:"edit-unit-cost-during-stores-labs-stock-reconciliation";s:1:"c";i:15;s:1:"d";s:44:"Edit unit cost on stores labs reconciliation";s:1:"e";s:44:"Edit unit cost on stores labs reconciliation";s:1:"f";s:3:"web";s:1:"g";s:5:"other";}i:818;a:7:{s:1:"a";i:1298;s:1:"b";s:61:"edit-unit-cost-during-stores-radiologies-stock-reconciliation";s:1:"c";i:15;s:1:"d";s:51:"Edit unit cost on stores radiologies reconciliation";s:1:"e";s:51:"Edit unit cost on stores radiologies reconciliation";s:1:"f";s:3:"web";s:1:"g";s:5:"other";}i:819;a:7:{s:1:"a";i:1299;s:1:"b";s:57:"edit-unit-cost-during-stores-general-stock-reconciliation";s:1:"c";i:15;s:1:"d";s:53:"Edit unit cost on stores general items reconciliation";s:1:"e";s:53:"Edit unit cost on stores general items reconciliation";s:1:"f";s:3:"web";s:1:"g";s:5:"other";}i:820;a:7:{s:1:"a";i:1300;s:1:"b";s:28:"cancel-ward-chart-dispensing";s:1:"c";i:13;s:1:"d";s:25:"Cancel ward chart request";s:1:"e";s:25:"Cancel ward chart request";s:1:"f";s:3:"web";s:1:"g";s:5:"other";}i:821;a:7:{s:1:"a";i:1301;s:1:"b";s:37:"renew-patient-dependants-subscription";s:1:"c";i:8;s:1:"d";s:37:"Renew patient dependants subscription";s:1:"e";s:75:"User to be able to activate renewal of subscriptions for patient dependants";s:1:"f";s:3:"web";s:1:"g";s:4:"view";}i:822;a:7:{s:1:"a";i:1302;s:1:"b";s:25:"prescribe-cancer-protocol";s:1:"c";i:4;s:1:"d";s:26:"Prescribe cancer protocols";s:1:"e";s:26:"Prescribe cancer protocols";s:1:"f";s:3:"web";s:1:"g";s:5:"other";}i:823;a:7:{s:1:"a";i:1303;s:1:"b";s:21:"labour-ward-admission";s:1:"c";i:4;s:1:"d";s:21:"Labour Ward Admission";s:1:"e";s:21:"Labour Ward Admission";s:1:"f";s:3:"web";s:1:"g";s:6:"create";}i:824;a:7:{s:1:"a";i:1304;s:1:"b";s:13:"safe-delivery";s:1:"c";i:4;s:1:"d";s:13:"Safe Delivery";s:1:"e";s:13:"Safe Delivery";s:1:"f";s:3:"web";s:1:"g";s:6:"create";}i:825;a:7:{s:1:"a";i:1305;s:1:"b";s:9:"partogram";s:1:"c";i:4;s:1:"d";s:9:"Partogram";s:1:"e";s:9:"Partogram";s:1:"f";s:3:"web";s:1:"g";s:6:"create";}i:826;a:7:{s:1:"a";i:1306;s:1:"b";s:20:"labour-ward-overview";s:1:"c";i:4;s:1:"d";s:20:"Labour Ward Overview";s:1:"e";s:20:"Labour Ward Overview";s:1:"f";s:3:"web";s:1:"g";s:6:"create";}i:827;a:7:{s:1:"a";i:1307;s:1:"b";s:22:"edit-consultation-note";s:1:"c";i:4;s:1:"d";s:22:"Edit Consultation Note";s:1:"e";s:22:"Edit Consultation Note";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";}i:828;a:7:{s:1:"a";i:1308;s:1:"b";s:24:"delete-consultation-note";s:1:"c";i:4;s:1:"d";s:24:"Delete Consultation Note";s:1:"e";s:24:"Delete Consultation Note";s:1:"f";s:3:"web";s:1:"g";s:4:"edit";}i:829;a:7:{s:1:"a";i:1309;s:1:"b";s:28:"pharmacy-optical-stock-sheet";s:1:"c";i:13;s:1:"d";s:34:"View Pharmacy Opticals Stock Sheet";s:1:"e";s:34:"View Pharmacy Opticals Stock Sheet";s:1:"f";s:3:"web";s:1:"g";s:5:"other";}i:830;a:7:{s:1:"a";i:1310;s:1:"b";s:60:"edit-unit-cost-during-pharmacy-opticals-stock-reconciliation";s:1:"c";i:13;s:1:"d";s:50:"Edit unit cost on pharmacy opticals reconciliation";s:1:"e";s:50:"Edit unit cost on pharmacy opticals reconciliation";s:1:"f";s:3:"web";s:1:"g";s:5:"other";}i:831;a:7:{s:1:"a";i:1311;s:1:"b";s:58:"edit-unit-cost-during-stores-opticals-stock-reconciliation";s:1:"c";i:15;s:1:"d";s:48:"Edit unit cost on stores opticals reconciliation";s:1:"e";s:48:"Edit unit cost on stores opticals reconciliation";s:1:"f";s:3:"web";s:1:"g";s:5:"other";}i:832;a:7:{s:1:"a";i:1312;s:1:"b";s:26:"edit-bill-per-package-unit";s:1:"c";i:15;s:1:"d";s:45:"Edit Bill per package unit on receiving items";s:1:"e";s:47:"Edit Bill per package unit when receiving items";s:1:"f";s:3:"web";s:1:"g";s:5:"other";}i:833;a:7:{s:1:"a";i:1313;s:1:"b";s:29:"edit-quatity-per-package-unit";s:1:"c";i:15;s:1:"d";s:49:"Edit Quantity per package unit on receiving items";s:1:"e";s:49:"Edit Quantity per package unit on receiving items";s:1:"f";s:3:"web";s:1:"g";s:5:"other";}}s:5:"roles";a:26:{i:0;a:3:{s:1:"a";i:1;s:1:"b";s:5:"ADMIN";s:1:"f";s:3:"web";}i:1;a:3:{s:1:"a";i:11;s:1:"b";s:14:"Lab Technician";s:1:"f";s:3:"web";}i:2;a:3:{s:1:"a";i:31;s:1:"b";s:10:"Accountant";s:1:"f";s:3:"web";}i:3;a:3:{s:1:"a";i:34;s:1:"b";s:10:"IT Support";s:1:"f";s:3:"web";}i:4;a:3:{s:1:"a";i:39;s:1:"b";s:16:"Lab Technologist";s:1:"f";s:3:"web";}i:5;a:3:{s:1:"a";i:40;s:1:"b";s:18:"Laboratory Manager";s:1:"f";s:3:"web";}i:6;a:3:{s:1:"a";i:41;s:1:"b";s:26:"In-patient Billing Officer";s:1:"f";s:3:"web";}i:7;a:3:{s:1:"a";i:49;s:1:"b";s:11:"Super Admin";s:1:"f";s:3:"web";}i:8;a:3:{s:1:"a";i:9;s:1:"b";s:13:"Lab Assistant";s:1:"f";s:3:"web";}i:9;a:3:{s:1:"a";i:18;s:1:"b";s:17:"Insurance Manager";s:1:"f";s:3:"web";}i:10;a:3:{s:1:"a";i:38;s:1:"b";s:22:"Radiology Technologist";s:1:"f";s:3:"web";}i:11;a:3:{s:1:"a";i:2;s:1:"b";s:7:"Cashier";s:1:"f";s:3:"web";}i:12;a:3:{s:1:"a";i:4;s:1:"b";s:7:"Doctors";s:1:"f";s:3:"web";}i:13;a:3:{s:1:"a";i:15;s:1:"b";s:7:"Nursing";s:1:"f";s:3:"web";}i:14;a:3:{s:1:"a";i:19;s:1:"b";s:25:"Patient Receiption Clerks";s:1:"f";s:3:"web";}i:15;a:3:{s:1:"a";i:21;s:1:"b";s:29:"Pharmacy Technicians - Senior";s:1:"f";s:3:"web";}i:16;a:3:{s:1:"a";i:30;s:1:"b";s:10:"Head Nurse";s:1:"f";s:3:"web";}i:17;a:3:{s:1:"a";i:33;s:1:"b";s:22:"CEO Personal Assistant";s:1:"f";s:3:"web";}i:18;a:3:{s:1:"a";i:37;s:1:"b";s:27:"Facility and Estate Manager";s:1:"f";s:3:"web";}i:19;a:3:{s:1:"a";i:42;s:1:"b";s:13:"Physiotherapy";s:1:"f";s:3:"web";}i:20;a:3:{s:1:"a";i:43;s:1:"b";s:7:"Records";s:1:"f";s:3:"web";}i:21;a:3:{s:1:"a";i:13;s:1:"b";s:8:"Midwives";s:1:"f";s:3:"web";}i:22;a:3:{s:1:"a";i:29;s:1:"b";s:28:"Head Patient Reception Clerk";s:1:"f";s:3:"web";}i:23;a:3:{s:1:"a";i:24;s:1:"b";s:6:"Stores";s:1:"f";s:3:"web";}i:24;a:3:{s:1:"a";i:47;s:1:"b";s:15:"OPD - In charge";s:1:"f";s:3:"web";}i:25;a:3:{s:1:"a";i:48;s:1:"b";s:3:"DMD";s:1:"f";s:3:"web";}}} \ No newline at end of file diff --git a/docker/statistics/storage/framework/sessions/dMD1E2i5AYRiSzFMaDro074rAEA1C6EfLErsCoDM b/docker/statistics/storage/framework/sessions/dMD1E2i5AYRiSzFMaDro074rAEA1C6EfLErsCoDM deleted file mode 100644 index c3aef422..00000000 --- a/docker/statistics/storage/framework/sessions/dMD1E2i5AYRiSzFMaDro074rAEA1C6EfLErsCoDM +++ /dev/null @@ -1 +0,0 @@ -a:7:{s:6:"_token";s:40:"0aE1Br3Tfss4zA0qVP0jOcRBoEnRFl4pILQKF555";s:9:"_previous";a:1:{s:3:"url";s:30:"http://localhost:3000/patients";}s:6:"_flash";a:2:{s:3:"old";a:0:{}s:3:"new";a:0:{}}s:50:"login_web_59ba36addc2b2f9401580f014c7f58ea4e30989d";i:1;s:4:"auth";a:1:{s:21:"password_confirmed_at";i:1736856018;}s:23:"session_expiration_time";s:3:"120";s:17:"password_hash_web";s:60:"$2y$12$h3jPyDZWj.y4ZuOV7lWDjOyli.aNsSoEI//KeeabuO4xcFPGKC12e";} \ No newline at end of file diff --git a/docker/statistics/storage/framework/views/3476acbb5c3b49a13e4a7419b5ea3790.php b/docker/statistics/storage/framework/views/3476acbb5c3b49a13e4a7419b5ea3790.php deleted file mode 100644 index bf5448f3..00000000 --- a/docker/statistics/storage/framework/views/3476acbb5c3b49a13e4a7419b5ea3790.php +++ /dev/null @@ -1,31 +0,0 @@ -toArray(); $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $message): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?> - - make('flash::modal', [ - 'modalClass' => 'flash-modal', - 'title' => $message['title'], - 'body' => $message['message'] - ], \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?> - - - -popLoop(); $loop = $__env->getLastLoop(); ?> - -forget('flash_notification')); ?> - - \ No newline at end of file diff --git a/docker/statistics/storage/framework/views/41f25ebff72585d7ac3bd1f66d8e6fb6.php b/docker/statistics/storage/framework/views/41f25ebff72585d7ac3bd1f66d8e6fb6.php deleted file mode 100644 index 25ee14e3..00000000 --- a/docker/statistics/storage/framework/views/41f25ebff72585d7ac3bd1f66d8e6fb6.php +++ /dev/null @@ -1,111 +0,0 @@ -startSection('content'); ?> -
    -
    -

    -

    - ----- - -

    -
    -
    - -
    -
    - - make('flash::message', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?> -
    -
    -
    -

    -
    - -
    - addLoop($__currentLoopData); foreach($__currentLoopData as $message): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?> -
    -
    - created_at)->format('jS M Y h:ia')); ?>
    - photo))): ?> - - - body; ?> -
    -
    -
    - popLoop(); $loop = $__env->getLastLoop(); ?> - -
    -
    links()); ?>
    -
    -
    - -
    -
    - can('patient-create')): ?> -
    - -
    - - - can('patient-list')): ?> -
    - -
    - - - can('ward-list')): ?> -
    - -
    - - - can('patient-flow-monitoring')): ?> -
    - -
    - - - can('streamline-reports-list')): ?> -
    - -
    - - - -
    - -
    - -
    -
    -
    - -
    -
    - -
    - -
    - platinum party -
    -
    -
    -
    -
    - - make('general_settings.popup', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?> - -stopSection(); ?> -make('layouts.main', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?> \ No newline at end of file diff --git a/docker/statistics/storage/framework/views/48856a5537997725da4b2b04fc7a62a0.php b/docker/statistics/storage/framework/views/48856a5537997725da4b2b04fc7a62a0.php deleted file mode 100644 index 2f9e8bea..00000000 --- a/docker/statistics/storage/framework/views/48856a5537997725da4b2b04fc7a62a0.php +++ /dev/null @@ -1,34 +0,0 @@ - - - -startPush('scripts'); ?> - -stopPush(); ?> - \ No newline at end of file diff --git a/docker/statistics/storage/framework/views/6164b85b8ade0fdf59d708dd24262f06.php b/docker/statistics/storage/framework/views/6164b85b8ade0fdf59d708dd24262f06.php deleted file mode 100644 index 97afee22..00000000 --- a/docker/statistics/storage/framework/views/6164b85b8ade0fdf59d708dd24262f06.php +++ /dev/null @@ -1,5 +0,0 @@ -startSection('title', __('Not Found')); ?> -startSection('code', '404'); ?> -startSection('message', __('Not Found')); ?> - -make('errors::minimal', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?> \ No newline at end of file diff --git a/docker/statistics/storage/framework/views/64624e236414f74d49905ce0f4d05aee.php b/docker/statistics/storage/framework/views/64624e236414f74d49905ce0f4d05aee.php deleted file mode 100644 index 275c7f3d..00000000 --- a/docker/statistics/storage/framework/views/64624e236414f74d49905ce0f4d05aee.php +++ /dev/null @@ -1,72 +0,0 @@ - \ No newline at end of file diff --git a/docker/statistics/storage/framework/views/79db89ed3a00ae6eab24561df2a4447b.php b/docker/statistics/storage/framework/views/79db89ed3a00ae6eab24561df2a4447b.php deleted file mode 100644 index e9090cb4..00000000 --- a/docker/statistics/storage/framework/views/79db89ed3a00ae6eab24561df2a4447b.php +++ /dev/null @@ -1,261 +0,0 @@ -startPush('styles'); ?> - - - -stopPush(); ?> - -startSection('content'); ?> -
    -
    -

    -
    -
    - -
    -
    - -
    - make('flash::message', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?> - 'patients.search', 'method' => 'ANY', 'role' => 'search'])); ?> - - -
    -
    -
    - 'form-control typeahead', 'placeholder' => 'Patient number', 'autocomplete' => 'off', 'spellcheck' => false])); ?> - -
    -
    - -
    style='display: none' > -
    - 'form-control typeahead', 'placeholder' => 'Previous Number', 'autocomplete' => 'off', 'spellcheck' => false])); ?> - -
    -
    - -
    -
    - 'form-control typeahead', 'placeholder' => 'Patient Name', 'autocomplete' => 'off', 'spellcheck' => false])); ?> - -
    -
    - -
    -
    - 'form-control typeahead', 'placeholder' => 'Village', 'autocomplete' => 'off', 'spellcheck' => false])); ?> - -
    -
    - -
    - - -
    -
    - - -

    :

    - - - - -
    - - - - - - - - - - - - - - - - - addLoop($__currentLoopData); foreach($__currentLoopData as $patient): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?> - - - - - - - - - - - - - popLoop(); $loop = $__env->getLastLoop(); ?> - - -
    number); ?>id); ?> - gender == 1): ?> - - - - - - - date_of_birth)); ?>phone); ?>category_id] ?? "N/A"); ?>village_id] ?? ''); ?> - - - -
    -
    - links()); ?> - -
    -stopSection(); ?> - -startPush('scripts'); ?> - - - - - - - - - - - - - - - -stopPush(); ?> - -make('layouts.main', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?> \ No newline at end of file diff --git a/docker/statistics/storage/framework/views/7e01bca72e3d0d45786e69a1ff7b81c1.php b/docker/statistics/storage/framework/views/7e01bca72e3d0d45786e69a1ff7b81c1.php deleted file mode 100644 index 31b5dfaa..00000000 --- a/docker/statistics/storage/framework/views/7e01bca72e3d0d45786e69a1ff7b81c1.php +++ /dev/null @@ -1,1099 +0,0 @@ - - - - - - <?php echo e(config('app.name', 'Streamline')); ?> - - - - - - - - - - - - - - - - - yieldPushContent('styles'); ?> - - - - -
    -
    -
    -
    - - make('layouts.top', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?> - - - - has('streamline_setup') == FALSE): ?> - make('layouts.nav', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?> - - -
    -
    - make('general_settings.subscription_noti', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?> - - - yieldContent('content'); ?> - - - make('layouts.options', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?> - -
    - -
    © Stre@mline Kisiizi Hospital Streamline Health Ltd - -
    -
    - -
    - - - - - - - - - - - - - - - - - - - - -yieldPushContent('scripts'); ?> - - - - - \ No newline at end of file diff --git a/docker/statistics/storage/framework/views/d86adf37faae1246c0799b30ad087227.php b/docker/statistics/storage/framework/views/d86adf37faae1246c0799b30ad087227.php deleted file mode 100644 index b9a64014..00000000 --- a/docker/statistics/storage/framework/views/d86adf37faae1246c0799b30ad087227.php +++ /dev/null @@ -1,82 +0,0 @@ -startPush('styles'); ?> - - -stopPush(); ?> - -startSection('content'); ?> -
    -
    -

    -
    -
    - -
    -
    - -
    -
    - make('flash::message', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?> -
    -

    -
    - - - - - - - - - - addLoop($__currentLoopData); foreach($__currentLoopData as $district): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?> - - - - - - popLoop(); $loop = $__env->getLastLoop(); ?> - -
    name); ?> - - - id ,['method' => 'DELETE', 'route' => ['districts.destroy', $district->id]])); ?> - - - - -
    -
    -
    -
    -
    -stopSection(); ?> - -startPush('scripts'); ?> - - - - - - - - - - - - -stopPush(); ?> -make('layouts.main', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?> \ No newline at end of file diff --git a/docker/statistics/storage/framework/views/ff0287b16b1537d62a0074d5fbe09d11.php b/docker/statistics/storage/framework/views/ff0287b16b1537d62a0074d5fbe09d11.php deleted file mode 100644 index 614c5265..00000000 --- a/docker/statistics/storage/framework/views/ff0287b16b1537d62a0074d5fbe09d11.php +++ /dev/null @@ -1,154 +0,0 @@ - - - - - - - - - - <?php echo e(config('app.name')); ?> - - - - - - - - - - - - - - - -
    -
    -
    - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/docker/statistics/supervisord.conf b/docker/statistics/supervisord.conf index 629d99b1..69811898 100644 --- a/docker/statistics/supervisord.conf +++ b/docker/statistics/supervisord.conf @@ -1,14 +1,32 @@ [supervisord] nodaemon=true +loglevel=info +logfile=/dev/stdout +logfile_maxbytes=0 [program:cron] command=cron -f autorestart=true +stdout_logfile=/dev/stdout +stdout_logfile_maxbytes=0 +stderr_logfile=/dev/stderr +stderr_logfile_maxbytes=0 +priority=10 -[program:sync-cron-log] +[program:sync-log] +command=tail -f /app/sync.log +autorestart=true +stdout_logfile=/dev/stdout +stdout_logfile_maxbytes=0 +stderr_logfile=/dev/stderr +stderr_logfile_maxbytes=0 +priority=20 + +[program:cron-log] command=tail -f /var/log/cron.log autorestart=true - -[program:sync] -command=/usr/local/bin/php /app/sync.php -autorestart=true \ No newline at end of file +stdout_logfile=/dev/stdout +stdout_logfile_maxbytes=0 +stderr_logfile=/dev/stderr +stderr_logfile_maxbytes=0 +priority=30 diff --git a/docker/statistics/sync.php b/docker/statistics/sync.php index 057bd8b8..c789f1a7 100644 --- a/docker/statistics/sync.php +++ b/docker/statistics/sync.php @@ -7,6 +7,10 @@ use Monolog\Logger; use Monolog\Level; use Monolog\Handler\StreamHandler; + +$dotenv = Dotenv\Dotenv::createImmutable(__DIR__, 'statistics.env'); +$dotenv->load(); + class sync{ protected $db_host; @@ -42,10 +46,10 @@ class sync{ $this->logger->info("initializing sync."); # database setup - $this->db_name = getenv('DB_DATABASE'); - $this->db_host = getenv('DB_HOST'); - $this->db_user = getenv('DB_USERNAME'); - $this->db_password = getenv('DB_PASSWORD'); + $this->db_name = $_ENV['DB_DATABASE']; + $this->db_host = $_ENV['DB_HOST']; + $this->db_user = $_ENV['DB_USERNAME']; + $this->db_password = $_ENV['DB_PASSWORD']; $this->db = new PDO("mysql:host=". $this->db_host .";dbname=". $this->db_name, $this->db_user, $this->db_password); $this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); @@ -55,9 +59,9 @@ class sync{ $this->logger->debug("Connected to database."); # redis - $this->redis_host = getenv("REDIS_HOST"); - $this->redis_port = getenv("REDIS_PORT"); - $this->redis_ttl = getenv("REDIS_TTL"); + $this->redis_host = $_ENV["REDIS_HOST"]; + $this->redis_port = $_ENV["REDIS_PORT"]; + $this->redis_ttl = $_ENV["REDIS_TTL"]; $this->redis = new Redis(); $this->redis->connect($this->redis_host, $this->redis_port, $this->redis_timeout); @@ -66,9 +70,9 @@ class sync{ $this->logger->debug("Connected to redis server."); # remote server/endpoint - $this->server = getenv("SERVER"); - $this->server_status_url = getenv("SERVER_STATUS_URL"); - $this->endpoint = getenv('SERVER_ENDPOINT'); + $this->server = $_ENV["SERVER"]; + $this->server_status_url = $_ENV["SERVER_STATUS_URL"]; + $this->endpoint = $_ENV['SERVER_ENDPOINT']; $this->http = new Client([ 'base_uri' => $this->server, @@ -107,7 +111,7 @@ class sync{ $upload_cache = $this->uploadCache(); if(!$upload_cache) throw new Exception("Upload failed. [". $upload_cache."]"); - $this->logger->info("Internet connection available. uploading data.", ["upload"=> $upload]); + $this->logger->info("Internet connection available. uploading data.", ["upload"=> $upload_cache ]); return true; }catch(Exception $ex){ @@ -353,7 +357,7 @@ class sync{ $result = $this->uploadData($this->endpoint, $cached_data); $this->logger->debug("[key] $cache_key uploaded", ["upload"=> $result]); - $this->clearCache($cache_key); # clear cache + if($result) $this->clearCache($cache_key); # clear cache } }catch(Exception $ex){ diff --git a/docker/statistics/vendor/autoload.php b/docker/statistics/vendor/autoload.php index 2bff8d2a..4f59ad9b 100644 --- a/docker/statistics/vendor/autoload.php +++ b/docker/statistics/vendor/autoload.php @@ -4,4 +4,4 @@ require_once __DIR__ . '/composer/autoload_real.php'; -return ComposerAutoloaderInitc99afa44f92fa7126c51edab64c9455d::getLoader(); +return ComposerAutoloaderInit0c143947939b3d6c75c6131ccd1e63bb::getLoader(); diff --git a/docker/statistics/vendor/barryvdh/laravel-dompdf/CHANGELOG.md b/docker/statistics/vendor/barryvdh/laravel-dompdf/CHANGELOG.md deleted file mode 100644 index 47c158ed..00000000 --- a/docker/statistics/vendor/barryvdh/laravel-dompdf/CHANGELOG.md +++ /dev/null @@ -1,39 +0,0 @@ -# Changelog -All notable changes to this project will be documented in this file. - -The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), -and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). - -## [2.0.0-beta3] -### Changed -- Remove the deprecated class 'Barryvdh\DomPDF\Facade' Facade in favor of Barryvdh\DomPDF\Facade\Pdf -- Set default Facade to Pdf instead of PDF - -## [2.0.0-beta2] - -### Added -- Upgraded to use dompdf/dompdf 2.x -- `setOption` to change only the specified option(s), instead of replace all options. -- Magic methods to allow calls to Dompdf methods easier. (#892) -- `default_paper_orientation` option has been added to the defaults. -- Add option to set public path (#890) - -### Changed -- HTML5 parser option is deprecated, because this is always on. -- `orientation` option was never used. Removed in favor of `options.default_paper_orientation` - -### Deprecated -- `setOptions` is now deprecated. Use `setOption` instead. -- Config `dompdf.defines` has been renamed to `dompdf.options` - - -## Dompdf 2.0.0, highlights since 1.2.x -> https://github.com/dompdf/dompdf/releases/tag/v2.0.0 -> - Addresses multiple security vulnerabilities (see link) -> - Modifies callback and page_script/page_text handling (breaking change, see link) -> - Switches the HTML5 parser to Masterminds/HTML5 -> - Improves CSS property parsing and representation -> - Improves border, outline, and background rendering for inline elements -> - Switches installed fonts and font metrics cache file format to JSON -> - Adds support for the inset CSS shorthand property and the legacy break-word keyword for word-break -> - Adds "end_document" callback event diff --git a/docker/statistics/vendor/barryvdh/laravel-dompdf/composer.json b/docker/statistics/vendor/barryvdh/laravel-dompdf/composer.json deleted file mode 100644 index 52032964..00000000 --- a/docker/statistics/vendor/barryvdh/laravel-dompdf/composer.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "name": "barryvdh/laravel-dompdf", - "description": "A DOMPDF Wrapper for Laravel", - "license": "MIT", - "keywords": [ - "laravel", - "dompdf", - "pdf" - ], - "authors": [ - { - "name": "Barry vd. Heuvel", - "email": "barryvdh@gmail.com" - } - ], - "require": { - "php": "^7.2 || ^8.0", - "dompdf/dompdf": "^2.0.7", - "illuminate/support": "^6|^7|^8|^9|^10|^11" - }, - "require-dev": { - "orchestra/testbench": "^4|^5|^6|^7|^8|^9", - "squizlabs/php_codesniffer": "^3.5", - "phpro/grumphp": "^1 || ^2.5", - "larastan/larastan": "^1.0|^2.7.0" - }, - "autoload": { - "psr-4": { - "Barryvdh\\DomPDF\\": "src" - } - }, - "autoload-dev": { - "psr-4": { - "Barryvdh\\DomPDF\\Tests\\": "tests" - } - }, - "extra": { - "branch-alias": { - "dev-master": "2.0-dev" - }, - "laravel": { - "providers": [ - "Barryvdh\\DomPDF\\ServiceProvider" - ], - "aliases": { - "Pdf": "Barryvdh\\DomPDF\\Facade\\Pdf", - "PDF": "Barryvdh\\DomPDF\\Facade\\Pdf" - } - } - }, - "scripts": { - "test": "phpunit", - "check-style": "phpcs -p --standard=psr12 src/", - "fix-style": "phpcbf -p --standard=psr12 src/", - "phpstan": "phpstan analyze --memory-limit=-1" - }, - "minimum-stability": "dev", - "prefer-stable": true, - "config": { - "allow-plugins": { - "phpro/grumphp": true - } - } -} diff --git a/docker/statistics/vendor/barryvdh/laravel-dompdf/config/dompdf.php b/docker/statistics/vendor/barryvdh/laravel-dompdf/config/dompdf.php deleted file mode 100644 index c9a928f2..00000000 --- a/docker/statistics/vendor/barryvdh/laravel-dompdf/config/dompdf.php +++ /dev/null @@ -1,284 +0,0 @@ - false, // Throw an Exception on warnings from dompdf - - 'public_path' => null, // Override the public path if needed - - /* - * Dejavu Sans font is missing glyphs for converted entities, turn it off if you need to show € and £. - */ - 'convert_entities' => true, - - 'options' => array( - /** - * The location of the DOMPDF font directory - * - * The location of the directory where DOMPDF will store fonts and font metrics - * Note: This directory must exist and be writable by the webserver process. - * *Please note the trailing slash.* - * - * Notes regarding fonts: - * Additional .afm font metrics can be added by executing load_font.php from command line. - * - * Only the original "Base 14 fonts" are present on all pdf viewers. Additional fonts must - * be embedded in the pdf file or the PDF may not display correctly. This can significantly - * increase file size unless font subsetting is enabled. Before embedding a font please - * review your rights under the font license. - * - * Any font specification in the source HTML is translated to the closest font available - * in the font directory. - * - * The pdf standard "Base 14 fonts" are: - * Courier, Courier-Bold, Courier-BoldOblique, Courier-Oblique, - * Helvetica, Helvetica-Bold, Helvetica-BoldOblique, Helvetica-Oblique, - * Times-Roman, Times-Bold, Times-BoldItalic, Times-Italic, - * Symbol, ZapfDingbats. - */ - "font_dir" => storage_path('fonts'), // advised by dompdf (https://github.com/dompdf/dompdf/pull/782) - - /** - * The location of the DOMPDF font cache directory - * - * This directory contains the cached font metrics for the fonts used by DOMPDF. - * This directory can be the same as DOMPDF_FONT_DIR - * - * Note: This directory must exist and be writable by the webserver process. - */ - "font_cache" => storage_path('fonts'), - - /** - * The location of a temporary directory. - * - * The directory specified must be writeable by the webserver process. - * The temporary directory is required to download remote images and when - * using the PDFLib back end. - */ - "temp_dir" => sys_get_temp_dir(), - - /** - * ==== IMPORTANT ==== - * - * dompdf's "chroot": Prevents dompdf from accessing system files or other - * files on the webserver. All local files opened by dompdf must be in a - * subdirectory of this directory. DO NOT set it to '/' since this could - * allow an attacker to use dompdf to read any files on the server. This - * should be an absolute path. - * This is only checked on command line call by dompdf.php, but not by - * direct class use like: - * $dompdf = new DOMPDF(); $dompdf->load_html($htmldata); $dompdf->render(); $pdfdata = $dompdf->output(); - */ - "chroot" => realpath(base_path()), - - /** - * Protocol whitelist - * - * Protocols and PHP wrappers allowed in URIs, and the validation rules - * that determine if a resouce may be loaded. Full support is not guaranteed - * for the protocols/wrappers specified - * by this array. - * - * @var array - */ - 'allowed_protocols' => [ - "file://" => ["rules" => []], - "http://" => ["rules" => []], - "https://" => ["rules" => []] - ], - - /** - * @var string - */ - 'log_output_file' => null, - - /** - * Whether to enable font subsetting or not. - */ - "enable_font_subsetting" => false, - - /** - * The PDF rendering backend to use - * - * Valid settings are 'PDFLib', 'CPDF' (the bundled R&OS PDF class), 'GD' and - * 'auto'. 'auto' will look for PDFLib and use it if found, or if not it will - * fall back on CPDF. 'GD' renders PDFs to graphic files. {@link - * Canvas_Factory} ultimately determines which rendering class to instantiate - * based on this setting. - * - * Both PDFLib & CPDF rendering backends provide sufficient rendering - * capabilities for dompdf, however additional features (e.g. object, - * image and font support, etc.) differ between backends. Please see - * {@link PDFLib_Adapter} for more information on the PDFLib backend - * and {@link CPDF_Adapter} and lib/class.pdf.php for more information - * on CPDF. Also see the documentation for each backend at the links - * below. - * - * The GD rendering backend is a little different than PDFLib and - * CPDF. Several features of CPDF and PDFLib are not supported or do - * not make any sense when creating image files. For example, - * multiple pages are not supported, nor are PDF 'objects'. Have a - * look at {@link GD_Adapter} for more information. GD support is - * experimental, so use it at your own risk. - * - * @link http://www.pdflib.com - * @link http://www.ros.co.nz/pdf - * @link http://www.php.net/image - */ - "pdf_backend" => "CPDF", - - /** - * PDFlib license key - * - * If you are using a licensed, commercial version of PDFlib, specify - * your license key here. If you are using PDFlib-Lite or are evaluating - * the commercial version of PDFlib, comment out this setting. - * - * @link http://www.pdflib.com - * - * If pdflib present in web server and auto or selected explicitely above, - * a real license code must exist! - */ - //"DOMPDF_PDFLIB_LICENSE" => "your license key here", - - /** - * html target media view which should be rendered into pdf. - * List of types and parsing rules for future extensions: - * http://www.w3.org/TR/REC-html40/types.html - * screen, tty, tv, projection, handheld, print, braille, aural, all - * Note: aural is deprecated in CSS 2.1 because it is replaced by speech in CSS 3. - * Note, even though the generated pdf file is intended for print output, - * the desired content might be different (e.g. screen or projection view of html file). - * Therefore allow specification of content here. - */ - "default_media_type" => "screen", - - /** - * The default paper size. - * - * North America standard is "letter"; other countries generally "a4" - * - * @see CPDF_Adapter::PAPER_SIZES for valid sizes ('letter', 'legal', 'A4', etc.) - */ - "default_paper_size" => "a4", - - /** - * The default paper orientation. - * - * The orientation of the page (portrait or landscape). - * - * @var string - */ - 'default_paper_orientation' => "portrait", - - /** - * The default font family - * - * Used if no suitable fonts can be found. This must exist in the font folder. - * @var string - */ - "default_font" => "serif", - - /** - * Image DPI setting - * - * This setting determines the default DPI setting for images and fonts. The - * DPI may be overridden for inline images by explictly setting the - * image's width & height style attributes (i.e. if the image's native - * width is 600 pixels and you specify the image's width as 72 points, - * the image will have a DPI of 600 in the rendered PDF. The DPI of - * background images can not be overridden and is controlled entirely - * via this parameter. - * - * For the purposes of DOMPDF, pixels per inch (PPI) = dots per inch (DPI). - * If a size in html is given as px (or without unit as image size), - * this tells the corresponding size in pt. - * This adjusts the relative sizes to be similar to the rendering of the - * html page in a reference browser. - * - * In pdf, always 1 pt = 1/72 inch - * - * Rendering resolution of various browsers in px per inch: - * Windows Firefox and Internet Explorer: - * SystemControl->Display properties->FontResolution: Default:96, largefonts:120, custom:? - * Linux Firefox: - * about:config *resolution: Default:96 - * (xorg screen dimension in mm and Desktop font dpi settings are ignored) - * - * Take care about extra font/image zoom factor of browser. - * - * In images, size in pixel attribute, img css style, are overriding - * the real image dimension in px for rendering. - * - * @var int - */ - "dpi" => 96, - - /** - * Enable inline PHP - * - * If this setting is set to true then DOMPDF will automatically evaluate - * inline PHP contained within tags. - * - * Enabling this for documents you do not trust (e.g. arbitrary remote html - * pages) is a security risk. Set this option to false if you wish to process - * untrusted documents. - * - * @var bool - */ - "enable_php" => false, - - /** - * Enable inline Javascript - * - * If this setting is set to true then DOMPDF will automatically insert - * JavaScript code contained within tags. - * - * @var bool - */ - "enable_javascript" => true, - - /** - * Enable remote file access - * - * If this setting is set to true, DOMPDF will access remote sites for - * images and CSS files as required. - * This is required for part of test case www/test/image_variants.html through www/examples.php - * - * Attention! - * This can be a security risk, in particular in combination with DOMPDF_ENABLE_PHP and - * allowing remote access to dompdf.php or on allowing remote html code to be passed to - * $dompdf = new DOMPDF(, $dompdf->load_html(..., - * This allows anonymous users to download legally doubtful internet content which on - * tracing back appears to being downloaded by your server, or allows malicious php code - * in remote html pages to be executed by your server with your account privileges. - * - * @var bool - */ - "enable_remote" => true, - - /** - * A ratio applied to the fonts height to be more like browsers' line height - */ - "font_height_ratio" => 1.1, - - /** - * Use the HTML5 Lib parser - * - * @deprecated This feature is now always on in dompdf 2.x - * @var bool - */ - "enable_html5_parser" => true, - ), - - -); diff --git a/docker/statistics/vendor/barryvdh/laravel-dompdf/readme.md b/docker/statistics/vendor/barryvdh/laravel-dompdf/readme.md deleted file mode 100644 index 89eb3289..00000000 --- a/docker/statistics/vendor/barryvdh/laravel-dompdf/readme.md +++ /dev/null @@ -1,130 +0,0 @@ -## DOMPDF Wrapper for Laravel - -### Laravel wrapper for [Dompdf HTML to PDF Converter](https://github.com/dompdf/dompdf) - -[![Tests](https://github.com/barryvdh/laravel-dompdf/workflows/Tests/badge.svg)](https://github.com/barryvdh/laravel-dompdf/actions) -[![Packagist License](https://poser.pugx.org/barryvdh/laravel-dompdf/license.png)](http://choosealicense.com/licenses/mit/) -[![Latest Stable Version](https://poser.pugx.org/barryvdh/laravel-dompdf/version.png)](https://packagist.org/packages/barryvdh/laravel-dompdf) -[![Total Downloads](https://poser.pugx.org/barryvdh/laravel-dompdf/d/total.png)](https://packagist.org/packages/barryvdh/laravel-dompdf) -[![Fruitcake](https://img.shields.io/badge/Powered%20By-Fruitcake-b2bc35.svg)](https://fruitcake.nl/) - -## Installation - -### Laravel -Require this package in your composer.json and update composer. This will download the package and the dompdf + fontlib libraries also. - - composer require barryvdh/laravel-dompdf - -### Lumen - -After updating composer add the following lines to register provider in `bootstrap/app.php` - - ``` - $app->register(\Barryvdh\DomPDF\ServiceProvider::class); - ``` - -To change the configuration, copy the config file to your config folder and enable it in `bootstrap/app.php`: - - ``` - $app->configure('dompdf'); - ``` - -## Using - -You can create a new DOMPDF instance and load a HTML string, file or view name. You can save it to a file, or stream (show in browser) or download. - -```php - use Barryvdh\DomPDF\Facade\Pdf; - - $pdf = Pdf::loadView('pdf.invoice', $data); - return $pdf->download('invoice.pdf'); -``` - -or use the App container: - -```php - $pdf = App::make('dompdf.wrapper'); - $pdf->loadHTML('

    Test

    '); - return $pdf->stream(); -``` - -Or use the facade: - -You can chain the methods: - -```php - return Pdf::loadFile(public_path().'/myfile.html')->save('/path-to/my_stored_file.pdf')->stream('download.pdf'); -``` - -You can change the orientation and paper size, and hide or show errors (by default, errors are shown when debug is on) - -```php - Pdf::loadHTML($html)->setPaper('a4', 'landscape')->setWarnings(false)->save('myfile.pdf') -``` - -If you need the output as a string, you can get the rendered PDF with the output() function, so you can save/output it yourself. - -Use `php artisan vendor:publish` to create a config file located at `config/dompdf.php` which will allow you to define local configurations to change some settings (default paper etc). -You can also use your ConfigProvider to set certain keys. - -### Configuration -The defaults configuration settings are set in `config/dompdf.php`. Copy this file to your own config directory to modify the values. You can publish the config using this command: -```shell - php artisan vendor:publish --provider="Barryvdh\DomPDF\ServiceProvider" -``` - -You can still alter the dompdf options in your code before generating the pdf using this command: -```php - Pdf::setOption(['dpi' => 150, 'defaultFont' => 'sans-serif']); -``` - -Available options and their defaults: -* __rootDir__: "{app_directory}/vendor/dompdf/dompdf" -* __tempDir__: "/tmp" _(available in config/dompdf.php)_ -* __fontDir__: "{app_directory}/storage/fonts" _(available in config/dompdf.php)_ -* __fontCache__: "{app_directory}/storage/fonts" _(available in config/dompdf.php)_ -* __chroot__: "{app_directory}" _(available in config/dompdf.php)_ -* __logOutputFile__: "/tmp/log.htm" -* __defaultMediaType__: "screen" _(available in config/dompdf.php)_ -* __defaultPaperSize__: "a4" _(available in config/dompdf.php)_ -* __defaultFont__: "serif" _(available in config/dompdf.php)_ -* __dpi__: 96 _(available in config/dompdf.php)_ -* __fontHeightRatio__: 1.1 _(available in config/dompdf.php)_ -* __isPhpEnabled__: false _(available in config/dompdf.php)_ -* __isRemoteEnabled__: true _(available in config/dompdf.php)_ -* __isJavascriptEnabled__: true _(available in config/dompdf.php)_ -* __isHtml5ParserEnabled__: false _(available in config/dompdf.php)_ -* __isFontSubsettingEnabled__: false _(available in config/dompdf.php)_ -* __debugPng__: false -* __debugKeepTemp__: false -* __debugCss__: false -* __debugLayout__: false -* __debugLayoutLines__: true -* __debugLayoutBlocks__: true -* __debugLayoutInline__: true -* __debugLayoutPaddingBox__: true -* __pdfBackend__: "CPDF" _(available in config/dompdf.php)_ -* __pdflibLicense__: "" -* __adminUsername__: "user" -* __adminPassword__: "password" - -### Tip: UTF-8 support -In your templates, set the UTF-8 Metatag: - - - -### Tip: Page breaks -You can use the CSS `page-break-before`/`page-break-after` properties to create a new page. - - -

    Page 1

    -
    -

    Page 2

    - -### License - -This DOMPDF Wrapper for Laravel is open-sourced software licensed under the [MIT license](http://opensource.org/licenses/MIT) diff --git a/docker/statistics/vendor/barryvdh/laravel-dompdf/src/Facade/Pdf.php b/docker/statistics/vendor/barryvdh/laravel-dompdf/src/Facade/Pdf.php deleted file mode 100644 index 5b4215db..00000000 --- a/docker/statistics/vendor/barryvdh/laravel-dompdf/src/Facade/Pdf.php +++ /dev/null @@ -1,68 +0,0 @@ - $args - * @return mixed - * - * @throws \RuntimeException - */ - public static function __callStatic($method, $args) - { - /** @var \Illuminate\Contracts\Foundation\Application|null */ - $app = static::getFacadeApplication(); - if (! $app) { - throw new RuntimeException('Facade application has not been set.'); - } - - // Resolve a new instance, avoid using a cached instance - $instance = $app->make(static::getFacadeAccessor()); - - return $instance->$method(...$args); - } -} diff --git a/docker/statistics/vendor/barryvdh/laravel-dompdf/src/PDF.php b/docker/statistics/vendor/barryvdh/laravel-dompdf/src/PDF.php deleted file mode 100644 index 0378fee3..00000000 --- a/docker/statistics/vendor/barryvdh/laravel-dompdf/src/PDF.php +++ /dev/null @@ -1,304 +0,0 @@ -dompdf = $dompdf; - $this->config = $config; - $this->files = $files; - $this->view = $view; - - $this->showWarnings = $this->config->get('dompdf.show_warnings', false); - } - - /** - * Get the DomPDF instance - */ - public function getDomPDF(): Dompdf - { - return $this->dompdf; - } - - /** - * Show or hide warnings - */ - public function setWarnings(bool $warnings): self - { - $this->showWarnings = $warnings; - return $this; - } - - /** - * Load a HTML string - * - * @param string|null $encoding Not used yet - */ - public function loadHTML(string $string, ?string $encoding = null): self - { - $string = $this->convertEntities($string); - $this->dompdf->loadHtml($string, $encoding); - $this->rendered = false; - return $this; - } - - /** - * Load a HTML file - */ - public function loadFile(string $file): self - { - $this->dompdf->loadHtmlFile($file); - $this->rendered = false; - return $this; - } - - /** - * Add metadata info - * @param array $info - */ - public function addInfo(array $info): self - { - foreach ($info as $name => $value) { - $this->dompdf->add_info($name, $value); - } - return $this; - } - - /** - * Load a View and convert to HTML - * @param array $data - * @param array $mergeData - * @param string|null $encoding Not used yet - */ - public function loadView(string $view, array $data = [], array $mergeData = [], ?string $encoding = null): self - { - $html = $this->view->make($view, $data, $mergeData)->render(); - return $this->loadHTML($html, $encoding); - } - - /** - * Set/Change an option (or array of options) in Dompdf - * - * @param array|string $attribute - * @param null|mixed $value - */ - public function setOption($attribute, $value = null): self - { - $this->dompdf->getOptions()->set($attribute, $value); - return $this; - } - - /** - * Replace all the Options from DomPDF - * - * @param array $options - */ - public function setOptions(array $options, bool $mergeWithDefaults = false): self - { - if ($mergeWithDefaults) { - $options = array_merge(app()->make('dompdf.options'), $options); - } - - $this->dompdf->setOptions(new Options($options)); - return $this; - } - - /** - * Output the PDF as a string. - * - * The options parameter controls the output. Accepted options are: - * - * 'compress' = > 1 or 0 - apply content stream compression, this is - * on (1) by default - * - * @param array $options - * - * @return string The rendered PDF as string - */ - public function output(array $options = []): string - { - if (!$this->rendered) { - $this->render(); - } - return (string) $this->dompdf->output($options); - } - - /** - * Save the PDF to a file - */ - public function save(string $filename, string $disk = null): self - { - $disk = $disk ?: $this->config->get('dompdf.disk'); - - if (! is_null($disk)) { - Storage::disk($disk)->put($filename, $this->output()); - return $this; - } - - $this->files->put($filename, $this->output()); - return $this; - } - - /** - * Make the PDF downloadable by the user - */ - public function download(string $filename = 'document.pdf'): Response - { - $output = $this->output(); - return new Response($output, 200, [ - 'Content-Type' => 'application/pdf', - 'Content-Disposition' => 'attachment; filename="' . $filename . '"', - 'Content-Length' => strlen($output), - ]); - } - - /** - * Return a response with the PDF to show in the browser - */ - public function stream(string $filename = 'document.pdf'): Response - { - $output = $this->output(); - return new Response($output, 200, [ - 'Content-Type' => 'application/pdf', - 'Content-Disposition' => 'inline; filename="' . $filename . '"', - ]); - } - - /** - * Render the PDF - */ - public function render(): void - { - $this->dompdf->render(); - - if ($this->showWarnings) { - global $_dompdf_warnings; - if (!empty($_dompdf_warnings) && count($_dompdf_warnings)) { - $warnings = ''; - foreach ($_dompdf_warnings as $msg) { - $warnings .= $msg . "\n"; - } - // $warnings .= $this->dompdf->get_canvas()->get_cpdf()->messages; - if (!empty($warnings)) { - throw new Exception($warnings); - } - } - } - $this->rendered = true; - } - - /** @param array $pc */ - public function setEncryption(string $password, string $ownerpassword = '', array $pc = []): void - { - $this->render(); - $canvas = $this->dompdf->getCanvas(); - if (! $canvas instanceof CPDF) { - throw new \RuntimeException('Encryption is only supported when using CPDF'); - } - $canvas->get_cpdf()->setEncryption($password, $ownerpassword, $pc); - } - - protected function convertEntities(string $subject): string - { - if (false === $this->config->get('dompdf.convert_entities', true)) { - return $subject; - } - - $entities = [ - '€' => '€', - '£' => '£', - ]; - - foreach ($entities as $search => $replace) { - $subject = str_replace($search, $replace, $subject); - } - return $subject; - } - - /** - * Dynamically handle calls into the dompdf instance. - * - * @param string $method - * @param array $parameters - * @return $this|mixed - */ - public function __call($method, $parameters) - { - if (method_exists($this, $method)) { - return $this->$method(...$parameters); - } - - if (method_exists($this->dompdf, $method)) { - $return = $this->dompdf->$method(...$parameters); - - return $return == $this->dompdf ? $this : $return; - } - - throw new \UnexpectedValueException("Method [{$method}] does not exist on PDF instance."); - } -} diff --git a/docker/statistics/vendor/barryvdh/laravel-dompdf/src/ServiceProvider.php b/docker/statistics/vendor/barryvdh/laravel-dompdf/src/ServiceProvider.php deleted file mode 100644 index 6392091b..00000000 --- a/docker/statistics/vendor/barryvdh/laravel-dompdf/src/ServiceProvider.php +++ /dev/null @@ -1,94 +0,0 @@ -mergeConfigFrom($configPath, 'dompdf'); - - $this->app->bind('dompdf.options', function ($app) { - $defines = $app['config']->get('dompdf.defines'); - - if ($defines) { - $options = []; - /** - * @var string $key - * @var mixed $value - */ - foreach ($defines as $key => $value) { - $key = strtolower(str_replace('DOMPDF_', '', $key)); - $options[$key] = $value; - } - } else { - $options = $app['config']->get('dompdf.options'); - } - - return $options; - }); - - $this->app->bind('dompdf', function ($app) { - - $options = $app->make('dompdf.options'); - $dompdf = new Dompdf($options); - $path = realpath($app['config']->get('dompdf.public_path') ?: base_path('public')); - if ($path === false) { - throw new \RuntimeException('Cannot resolve public path'); - } - $dompdf->setBasePath($path); - - return $dompdf; - }); - $this->app->alias('dompdf', Dompdf::class); - - $this->app->bind('dompdf.wrapper', function ($app) { - return new PDF($app['dompdf'], $app['config'], $app['files'], $app['view']); - }); - } - - /** - * Check if package is running under Lumen app - */ - protected function isLumen(): bool - { - return Str::contains($this->app->version(), 'Lumen') === true; - } - - public function boot(): void - { - if (! $this->isLumen()) { - $configPath = __DIR__ . '/../config/dompdf.php'; - $this->publishes([$configPath => config_path('dompdf.php')], 'config'); - } - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides(): array - { - return ['dompdf', 'dompdf.options', 'dompdf.wrapper']; - } -} diff --git a/docker/statistics/vendor/bin/highlight-query b/docker/statistics/vendor/bin/highlight-query deleted file mode 100755 index e9c9818d..00000000 --- a/docker/statistics/vendor/bin/highlight-query +++ /dev/null @@ -1,119 +0,0 @@ -#!/usr/bin/env php -realpath = realpath($opened_path) ?: $opened_path; - $opened_path = $this->realpath; - $this->handle = fopen($this->realpath, $mode); - $this->position = 0; - - return (bool) $this->handle; - } - - public function stream_read($count) - { - $data = fread($this->handle, $count); - - if ($this->position === 0) { - $data = preg_replace('{^#!.*\r?\n}', '', $data); - } - - $this->position += strlen($data); - - return $data; - } - - public function stream_cast($castAs) - { - return $this->handle; - } - - public function stream_close() - { - fclose($this->handle); - } - - public function stream_lock($operation) - { - return $operation ? flock($this->handle, $operation) : true; - } - - public function stream_seek($offset, $whence) - { - if (0 === fseek($this->handle, $offset, $whence)) { - $this->position = ftell($this->handle); - return true; - } - - return false; - } - - public function stream_tell() - { - return $this->position; - } - - public function stream_eof() - { - return feof($this->handle); - } - - public function stream_stat() - { - return array(); - } - - public function stream_set_option($option, $arg1, $arg2) - { - return true; - } - - public function url_stat($path, $flags) - { - $path = substr($path, 17); - if (file_exists($path)) { - return stat($path); - } - - return false; - } - } - } - - if ( - (function_exists('stream_get_wrappers') && in_array('phpvfscomposer', stream_get_wrappers(), true)) - || (function_exists('stream_wrapper_register') && stream_wrapper_register('phpvfscomposer', 'Composer\BinProxyWrapper')) - ) { - return include("phpvfscomposer://" . __DIR__ . '/..'.'/phpmyadmin/sql-parser/bin/highlight-query'); - } -} - -return include __DIR__ . '/..'.'/phpmyadmin/sql-parser/bin/highlight-query'; diff --git a/docker/statistics/vendor/bin/lint-query b/docker/statistics/vendor/bin/lint-query deleted file mode 100755 index 9cef5da4..00000000 --- a/docker/statistics/vendor/bin/lint-query +++ /dev/null @@ -1,119 +0,0 @@ -#!/usr/bin/env php -realpath = realpath($opened_path) ?: $opened_path; - $opened_path = $this->realpath; - $this->handle = fopen($this->realpath, $mode); - $this->position = 0; - - return (bool) $this->handle; - } - - public function stream_read($count) - { - $data = fread($this->handle, $count); - - if ($this->position === 0) { - $data = preg_replace('{^#!.*\r?\n}', '', $data); - } - - $this->position += strlen($data); - - return $data; - } - - public function stream_cast($castAs) - { - return $this->handle; - } - - public function stream_close() - { - fclose($this->handle); - } - - public function stream_lock($operation) - { - return $operation ? flock($this->handle, $operation) : true; - } - - public function stream_seek($offset, $whence) - { - if (0 === fseek($this->handle, $offset, $whence)) { - $this->position = ftell($this->handle); - return true; - } - - return false; - } - - public function stream_tell() - { - return $this->position; - } - - public function stream_eof() - { - return feof($this->handle); - } - - public function stream_stat() - { - return array(); - } - - public function stream_set_option($option, $arg1, $arg2) - { - return true; - } - - public function url_stat($path, $flags) - { - $path = substr($path, 17); - if (file_exists($path)) { - return stat($path); - } - - return false; - } - } - } - - if ( - (function_exists('stream_get_wrappers') && in_array('phpvfscomposer', stream_get_wrappers(), true)) - || (function_exists('stream_wrapper_register') && stream_wrapper_register('phpvfscomposer', 'Composer\BinProxyWrapper')) - ) { - return include("phpvfscomposer://" . __DIR__ . '/..'.'/phpmyadmin/sql-parser/bin/lint-query'); - } -} - -return include __DIR__ . '/..'.'/phpmyadmin/sql-parser/bin/lint-query'; diff --git a/docker/statistics/vendor/bin/sql-parser b/docker/statistics/vendor/bin/sql-parser deleted file mode 100755 index 97770dcf..00000000 --- a/docker/statistics/vendor/bin/sql-parser +++ /dev/null @@ -1,119 +0,0 @@ -#!/usr/bin/env php -realpath = realpath($opened_path) ?: $opened_path; - $opened_path = $this->realpath; - $this->handle = fopen($this->realpath, $mode); - $this->position = 0; - - return (bool) $this->handle; - } - - public function stream_read($count) - { - $data = fread($this->handle, $count); - - if ($this->position === 0) { - $data = preg_replace('{^#!.*\r?\n}', '', $data); - } - - $this->position += strlen($data); - - return $data; - } - - public function stream_cast($castAs) - { - return $this->handle; - } - - public function stream_close() - { - fclose($this->handle); - } - - public function stream_lock($operation) - { - return $operation ? flock($this->handle, $operation) : true; - } - - public function stream_seek($offset, $whence) - { - if (0 === fseek($this->handle, $offset, $whence)) { - $this->position = ftell($this->handle); - return true; - } - - return false; - } - - public function stream_tell() - { - return $this->position; - } - - public function stream_eof() - { - return feof($this->handle); - } - - public function stream_stat() - { - return array(); - } - - public function stream_set_option($option, $arg1, $arg2) - { - return true; - } - - public function url_stat($path, $flags) - { - $path = substr($path, 17); - if (file_exists($path)) { - return stat($path); - } - - return false; - } - } - } - - if ( - (function_exists('stream_get_wrappers') && in_array('phpvfscomposer', stream_get_wrappers(), true)) - || (function_exists('stream_wrapper_register') && stream_wrapper_register('phpvfscomposer', 'Composer\BinProxyWrapper')) - ) { - return include("phpvfscomposer://" . __DIR__ . '/..'.'/phpmyadmin/sql-parser/bin/sql-parser'); - } -} - -return include __DIR__ . '/..'.'/phpmyadmin/sql-parser/bin/sql-parser'; diff --git a/docker/statistics/vendor/bin/tokenize-query b/docker/statistics/vendor/bin/tokenize-query deleted file mode 100755 index 8ffe9f3f..00000000 --- a/docker/statistics/vendor/bin/tokenize-query +++ /dev/null @@ -1,119 +0,0 @@ -#!/usr/bin/env php -realpath = realpath($opened_path) ?: $opened_path; - $opened_path = $this->realpath; - $this->handle = fopen($this->realpath, $mode); - $this->position = 0; - - return (bool) $this->handle; - } - - public function stream_read($count) - { - $data = fread($this->handle, $count); - - if ($this->position === 0) { - $data = preg_replace('{^#!.*\r?\n}', '', $data); - } - - $this->position += strlen($data); - - return $data; - } - - public function stream_cast($castAs) - { - return $this->handle; - } - - public function stream_close() - { - fclose($this->handle); - } - - public function stream_lock($operation) - { - return $operation ? flock($this->handle, $operation) : true; - } - - public function stream_seek($offset, $whence) - { - if (0 === fseek($this->handle, $offset, $whence)) { - $this->position = ftell($this->handle); - return true; - } - - return false; - } - - public function stream_tell() - { - return $this->position; - } - - public function stream_eof() - { - return feof($this->handle); - } - - public function stream_stat() - { - return array(); - } - - public function stream_set_option($option, $arg1, $arg2) - { - return true; - } - - public function url_stat($path, $flags) - { - $path = substr($path, 17); - if (file_exists($path)) { - return stat($path); - } - - return false; - } - } - } - - if ( - (function_exists('stream_get_wrappers') && in_array('phpvfscomposer', stream_get_wrappers(), true)) - || (function_exists('stream_wrapper_register') && stream_wrapper_register('phpvfscomposer', 'Composer\BinProxyWrapper')) - ) { - return include("phpvfscomposer://" . __DIR__ . '/..'.'/phpmyadmin/sql-parser/bin/tokenize-query'); - } -} - -return include __DIR__ . '/..'.'/phpmyadmin/sql-parser/bin/tokenize-query'; diff --git a/docker/statistics/vendor/composer/InstalledVersions.php b/docker/statistics/vendor/composer/InstalledVersions.php index 9a21002b..d50e0c9f 100644 --- a/docker/statistics/vendor/composer/InstalledVersions.php +++ b/docker/statistics/vendor/composer/InstalledVersions.php @@ -320,26 +320,15 @@ class InstalledVersions } $installed = array(); - $copiedLocalDir = false; if (self::$canGetVendors) { foreach (ClassLoader::getRegisteredLoaders() as $vendorDir => $loader) { if (isset(self::$installedByVendor[$vendorDir])) { $installed[] = self::$installedByVendor[$vendorDir]; } elseif (is_file($vendorDir.'/composer/installed.php')) { -<<<<<<< HEAD:docker/statistics/vendor/composer/InstalledVersions.php $installed[] = self::$installedByVendor[$vendorDir] = require $vendorDir.'/composer/installed.php'; if (null === self::$installed && strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) { self::$installed = $installed[count($installed) - 1]; -======= - /** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array} $required */ - $required = require $vendorDir.'/composer/installed.php'; - self::$installedByVendor[$vendorDir] = $required; - $installed[] = $required; - if (strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) { - self::$installed = $required; - $copiedLocalDir = true; ->>>>>>> c7fdd2968a4cf2ead466c6ccaa09e8b2557fb582:docker/streamline-src/vendor/composer/InstalledVersions.php } } } @@ -354,14 +343,7 @@ class InstalledVersions self::$installed = array(); } } -<<<<<<< HEAD:docker/statistics/vendor/composer/InstalledVersions.php $installed[] = self::$installed; -======= - - if (self::$installed !== array() && !$copiedLocalDir) { - $installed[] = self::$installed; - } ->>>>>>> c7fdd2968a4cf2ead466c6ccaa09e8b2557fb582:docker/streamline-src/vendor/composer/InstalledVersions.php return $installed; } diff --git a/docker/statistics/vendor/composer/autoload_classmap.php b/docker/statistics/vendor/composer/autoload_classmap.php index b26f1b13..dc15c487 100644 --- a/docker/statistics/vendor/composer/autoload_classmap.php +++ b/docker/statistics/vendor/composer/autoload_classmap.php @@ -6,5 +6,10 @@ $vendorDir = dirname(dirname(__FILE__)); $baseDir = dirname($vendorDir); return array( + 'Attribute' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/Attribute.php', 'Composer\\InstalledVersions' => $vendorDir . '/composer/InstalledVersions.php', + 'PhpToken' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/PhpToken.php', + 'Stringable' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/Stringable.php', + 'UnhandledMatchError' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/UnhandledMatchError.php', + 'ValueError' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/ValueError.php', ); diff --git a/docker/statistics/vendor/composer/autoload_files.php b/docker/statistics/vendor/composer/autoload_files.php index c060ebb8..5f25beb2 100644 --- a/docker/statistics/vendor/composer/autoload_files.php +++ b/docker/statistics/vendor/composer/autoload_files.php @@ -9,4 +9,7 @@ return array( '7b11c4dc42b3b3023073cb14e519683c' => $vendorDir . '/ralouphie/getallheaders/src/getallheaders.php', '6e3fae29631ef280660b3cdad06f25a8' => $vendorDir . '/symfony/deprecation-contracts/function.php', '37a3dc5111fe8f707ab4c132ef1dbc62' => $vendorDir . '/guzzlehttp/guzzle/src/functions_include.php', + '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => $vendorDir . '/symfony/polyfill-mbstring/bootstrap.php', + '320cde22f66dd4f5d3fd621d3e88b98f' => $vendorDir . '/symfony/polyfill-ctype/bootstrap.php', + 'a4a119a56e50fbb293281d9a48007e0e' => $vendorDir . '/symfony/polyfill-php80/bootstrap.php', ); diff --git a/docker/statistics/vendor/composer/autoload_psr4.php b/docker/statistics/vendor/composer/autoload_psr4.php index b35a6178..ef70695d 100644 --- a/docker/statistics/vendor/composer/autoload_psr4.php +++ b/docker/statistics/vendor/composer/autoload_psr4.php @@ -6,11 +6,17 @@ $vendorDir = dirname(dirname(__FILE__)); $baseDir = dirname($vendorDir); return array( + 'Symfony\\Polyfill\\Php80\\' => array($vendorDir . '/symfony/polyfill-php80'), + 'Symfony\\Polyfill\\Mbstring\\' => array($vendorDir . '/symfony/polyfill-mbstring'), + 'Symfony\\Polyfill\\Ctype\\' => array($vendorDir . '/symfony/polyfill-ctype'), 'Psr\\Log\\' => array($vendorDir . '/psr/log/src'), 'Psr\\Http\\Message\\' => array($vendorDir . '/psr/http-message/src', $vendorDir . '/psr/http-factory/src'), 'Psr\\Http\\Client\\' => array($vendorDir . '/psr/http-client/src'), + 'PhpOption\\' => array($vendorDir . '/phpoption/phpoption/src/PhpOption'), 'Monolog\\' => array($vendorDir . '/monolog/monolog/src/Monolog'), 'GuzzleHttp\\Psr7\\' => array($vendorDir . '/guzzlehttp/psr7/src'), 'GuzzleHttp\\Promise\\' => array($vendorDir . '/guzzlehttp/promises/src'), 'GuzzleHttp\\' => array($vendorDir . '/guzzlehttp/guzzle/src'), + 'GrahamCampbell\\ResultType\\' => array($vendorDir . '/graham-campbell/result-type/src'), + 'Dotenv\\' => array($vendorDir . '/vlucas/phpdotenv/src'), ); diff --git a/docker/statistics/vendor/composer/autoload_real.php b/docker/statistics/vendor/composer/autoload_real.php index c9c44415..84e937dc 100644 --- a/docker/statistics/vendor/composer/autoload_real.php +++ b/docker/statistics/vendor/composer/autoload_real.php @@ -2,7 +2,7 @@ // autoload_real.php @generated by Composer -class ComposerAutoloaderInitc99afa44f92fa7126c51edab64c9455d +class ComposerAutoloaderInit0c143947939b3d6c75c6131ccd1e63bb { private static $loader; @@ -24,15 +24,15 @@ class ComposerAutoloaderInitc99afa44f92fa7126c51edab64c9455d require __DIR__ . '/platform_check.php'; - spl_autoload_register(array('ComposerAutoloaderInitc99afa44f92fa7126c51edab64c9455d', 'loadClassLoader'), true, true); + spl_autoload_register(array('ComposerAutoloaderInit0c143947939b3d6c75c6131ccd1e63bb', 'loadClassLoader'), true, true); self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__))); - spl_autoload_unregister(array('ComposerAutoloaderInitc99afa44f92fa7126c51edab64c9455d', 'loadClassLoader')); + spl_autoload_unregister(array('ComposerAutoloaderInit0c143947939b3d6c75c6131ccd1e63bb', 'loadClassLoader')); $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded()); if ($useStaticLoader) { require __DIR__ . '/autoload_static.php'; - call_user_func(\Composer\Autoload\ComposerStaticInitc99afa44f92fa7126c51edab64c9455d::getInitializer($loader)); + call_user_func(\Composer\Autoload\ComposerStaticInit0c143947939b3d6c75c6131ccd1e63bb::getInitializer($loader)); } else { $map = require __DIR__ . '/autoload_namespaces.php'; foreach ($map as $namespace => $path) { @@ -53,12 +53,12 @@ class ComposerAutoloaderInitc99afa44f92fa7126c51edab64c9455d $loader->register(true); if ($useStaticLoader) { - $includeFiles = Composer\Autoload\ComposerStaticInitc99afa44f92fa7126c51edab64c9455d::$files; + $includeFiles = Composer\Autoload\ComposerStaticInit0c143947939b3d6c75c6131ccd1e63bb::$files; } else { $includeFiles = require __DIR__ . '/autoload_files.php'; } foreach ($includeFiles as $fileIdentifier => $file) { - composerRequirec99afa44f92fa7126c51edab64c9455d($fileIdentifier, $file); + composerRequire0c143947939b3d6c75c6131ccd1e63bb($fileIdentifier, $file); } return $loader; @@ -70,7 +70,7 @@ class ComposerAutoloaderInitc99afa44f92fa7126c51edab64c9455d * @param string $file * @return void */ -function composerRequirec99afa44f92fa7126c51edab64c9455d($fileIdentifier, $file) +function composerRequire0c143947939b3d6c75c6131ccd1e63bb($fileIdentifier, $file) { if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) { $GLOBALS['__composer_autoload_files'][$fileIdentifier] = true; diff --git a/docker/statistics/vendor/composer/autoload_static.php b/docker/statistics/vendor/composer/autoload_static.php index c3da6a29..8807129a 100644 --- a/docker/statistics/vendor/composer/autoload_static.php +++ b/docker/statistics/vendor/composer/autoload_static.php @@ -4,20 +4,30 @@ namespace Composer\Autoload; -class ComposerStaticInitc99afa44f92fa7126c51edab64c9455d +class ComposerStaticInit0c143947939b3d6c75c6131ccd1e63bb { public static $files = array ( '7b11c4dc42b3b3023073cb14e519683c' => __DIR__ . '/..' . '/ralouphie/getallheaders/src/getallheaders.php', '6e3fae29631ef280660b3cdad06f25a8' => __DIR__ . '/..' . '/symfony/deprecation-contracts/function.php', '37a3dc5111fe8f707ab4c132ef1dbc62' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/functions_include.php', + '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php', + '320cde22f66dd4f5d3fd621d3e88b98f' => __DIR__ . '/..' . '/symfony/polyfill-ctype/bootstrap.php', + 'a4a119a56e50fbb293281d9a48007e0e' => __DIR__ . '/..' . '/symfony/polyfill-php80/bootstrap.php', ); public static $prefixLengthsPsr4 = array ( + 'S' => + array ( + 'Symfony\\Polyfill\\Php80\\' => 23, + 'Symfony\\Polyfill\\Mbstring\\' => 26, + 'Symfony\\Polyfill\\Ctype\\' => 23, + ), 'P' => array ( 'Psr\\Log\\' => 8, 'Psr\\Http\\Message\\' => 17, 'Psr\\Http\\Client\\' => 16, + 'PhpOption\\' => 10, ), 'M' => array ( @@ -28,10 +38,27 @@ class ComposerStaticInitc99afa44f92fa7126c51edab64c9455d 'GuzzleHttp\\Psr7\\' => 16, 'GuzzleHttp\\Promise\\' => 19, 'GuzzleHttp\\' => 11, + 'GrahamCampbell\\ResultType\\' => 26, + ), + 'D' => + array ( + 'Dotenv\\' => 7, ), ); public static $prefixDirsPsr4 = array ( + 'Symfony\\Polyfill\\Php80\\' => + array ( + 0 => __DIR__ . '/..' . '/symfony/polyfill-php80', + ), + 'Symfony\\Polyfill\\Mbstring\\' => + array ( + 0 => __DIR__ . '/..' . '/symfony/polyfill-mbstring', + ), + 'Symfony\\Polyfill\\Ctype\\' => + array ( + 0 => __DIR__ . '/..' . '/symfony/polyfill-ctype', + ), 'Psr\\Log\\' => array ( 0 => __DIR__ . '/..' . '/psr/log/src', @@ -45,6 +72,10 @@ class ComposerStaticInitc99afa44f92fa7126c51edab64c9455d array ( 0 => __DIR__ . '/..' . '/psr/http-client/src', ), + 'PhpOption\\' => + array ( + 0 => __DIR__ . '/..' . '/phpoption/phpoption/src/PhpOption', + ), 'Monolog\\' => array ( 0 => __DIR__ . '/..' . '/monolog/monolog/src/Monolog', @@ -61,18 +92,31 @@ class ComposerStaticInitc99afa44f92fa7126c51edab64c9455d array ( 0 => __DIR__ . '/..' . '/guzzlehttp/guzzle/src', ), + 'GrahamCampbell\\ResultType\\' => + array ( + 0 => __DIR__ . '/..' . '/graham-campbell/result-type/src', + ), + 'Dotenv\\' => + array ( + 0 => __DIR__ . '/..' . '/vlucas/phpdotenv/src', + ), ); public static $classMap = array ( + 'Attribute' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/Attribute.php', 'Composer\\InstalledVersions' => __DIR__ . '/..' . '/composer/InstalledVersions.php', + 'PhpToken' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/PhpToken.php', + 'Stringable' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/Stringable.php', + 'UnhandledMatchError' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/UnhandledMatchError.php', + 'ValueError' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/ValueError.php', ); public static function getInitializer(ClassLoader $loader) { return \Closure::bind(function () use ($loader) { - $loader->prefixLengthsPsr4 = ComposerStaticInitc99afa44f92fa7126c51edab64c9455d::$prefixLengthsPsr4; - $loader->prefixDirsPsr4 = ComposerStaticInitc99afa44f92fa7126c51edab64c9455d::$prefixDirsPsr4; - $loader->classMap = ComposerStaticInitc99afa44f92fa7126c51edab64c9455d::$classMap; + $loader->prefixLengthsPsr4 = ComposerStaticInit0c143947939b3d6c75c6131ccd1e63bb::$prefixLengthsPsr4; + $loader->prefixDirsPsr4 = ComposerStaticInit0c143947939b3d6c75c6131ccd1e63bb::$prefixDirsPsr4; + $loader->classMap = ComposerStaticInit0c143947939b3d6c75c6131ccd1e63bb::$classMap; }, null, ClassLoader::class); } diff --git a/docker/statistics/vendor/composer/installed.json b/docker/statistics/vendor/composer/installed.json index a7a6c3a0..31e90cba 100644 --- a/docker/statistics/vendor/composer/installed.json +++ b/docker/statistics/vendor/composer/installed.json @@ -1,5 +1,70 @@ { "packages": [ + { + "name": "graham-campbell/result-type", + "version": "v1.1.3", + "version_normalized": "1.1.3.0", + "source": { + "type": "git", + "url": "https://github.com/GrahamCampbell/Result-Type.git", + "reference": "3ba905c11371512af9d9bdd27d99b782216b6945" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/GrahamCampbell/Result-Type/zipball/3ba905c11371512af9d9bdd27d99b782216b6945", + "reference": "3ba905c11371512af9d9bdd27d99b782216b6945", + "shasum": "" + }, + "require": { + "php": "^7.2.5 || ^8.0", + "phpoption/phpoption": "^1.9.3" + }, + "require-dev": { + "phpunit/phpunit": "^8.5.39 || ^9.6.20 || ^10.5.28" + }, + "time": "2024-07-20T21:45:45+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "GrahamCampbell\\ResultType\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + } + ], + "description": "An Implementation Of The Result Type", + "keywords": [ + "Graham Campbell", + "GrahamCampbell", + "Result Type", + "Result-Type", + "result" + ], + "support": { + "issues": "https://github.com/GrahamCampbell/Result-Type/issues", + "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.1.3" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/graham-campbell/result-type", + "type": "tidelift" + } + ], + "install-path": "../graham-campbell/result-type" + }, { "name": "guzzlehttp/guzzle", "version": "7.9.2", @@ -440,6 +505,84 @@ ], "install-path": "../monolog/monolog" }, + { + "name": "phpoption/phpoption", + "version": "1.9.3", + "version_normalized": "1.9.3.0", + "source": { + "type": "git", + "url": "https://github.com/schmittjoh/php-option.git", + "reference": "e3fac8b24f56113f7cb96af14958c0dd16330f54" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/e3fac8b24f56113f7cb96af14958c0dd16330f54", + "reference": "e3fac8b24f56113f7cb96af14958c0dd16330f54", + "shasum": "" + }, + "require": { + "php": "^7.2.5 || ^8.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.8.2", + "phpunit/phpunit": "^8.5.39 || ^9.6.20 || ^10.5.28" + }, + "time": "2024-07-20T21:41:07+00:00", + "type": "library", + "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + }, + "branch-alias": { + "dev-master": "1.9-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "PhpOption\\": "src/PhpOption/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Johannes M. Schmitt", + "email": "schmittjoh@gmail.com", + "homepage": "https://github.com/schmittjoh" + }, + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + } + ], + "description": "Option Type for PHP", + "keywords": [ + "language", + "option", + "php", + "type" + ], + "support": { + "issues": "https://github.com/schmittjoh/php-option/issues", + "source": "https://github.com/schmittjoh/php-option/tree/1.9.3" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/phpoption/phpoption", + "type": "tidelift" + } + ], + "install-path": "../phpoption/phpoption" + }, { "name": "psr/http-client", "version": "1.0.3", @@ -778,6 +921,341 @@ } ], "install-path": "../symfony/deprecation-contracts" + }, + { + "name": "symfony/polyfill-ctype", + "version": "v1.31.0", + "version_normalized": "1.31.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-ctype.git", + "reference": "a3cc8b044a6ea513310cbd48ef7333b384945638" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/a3cc8b044a6ea513310cbd48ef7333b384945638", + "reference": "a3cc8b044a6ea513310cbd48ef7333b384945638", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "provide": { + "ext-ctype": "*" + }, + "suggest": { + "ext-ctype": "For best performance" + }, + "time": "2024-09-09T11:45:10+00:00", + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "installation-source": "dist", + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Ctype\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Gert de Pagter", + "email": "BackEndTea@gmail.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for ctype functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "ctype", + "polyfill", + "portable" + ], + "support": { + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.31.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/polyfill-ctype" + }, + { + "name": "symfony/polyfill-mbstring", + "version": "v1.31.0", + "version_normalized": "1.31.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-mbstring.git", + "reference": "85181ba99b2345b0ef10ce42ecac37612d9fd341" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/85181ba99b2345b0ef10ce42ecac37612d9fd341", + "reference": "85181ba99b2345b0ef10ce42ecac37612d9fd341", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "provide": { + "ext-mbstring": "*" + }, + "suggest": { + "ext-mbstring": "For best performance" + }, + "time": "2024-09-09T11:45:10+00:00", + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "installation-source": "dist", + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Mbstring\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for the Mbstring extension", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "mbstring", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.31.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/polyfill-mbstring" + }, + { + "name": "symfony/polyfill-php80", + "version": "v1.31.0", + "version_normalized": "1.31.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php80.git", + "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/60328e362d4c2c802a54fcbf04f9d3fb892b4cf8", + "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "time": "2024-09-09T11:45:10+00:00", + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "installation-source": "dist", + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php80\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ion Bazan", + "email": "ion.bazan@gmail.com" + }, + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php80/tree/v1.31.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/polyfill-php80" + }, + { + "name": "vlucas/phpdotenv", + "version": "v5.6.1", + "version_normalized": "5.6.1.0", + "source": { + "type": "git", + "url": "https://github.com/vlucas/phpdotenv.git", + "reference": "a59a13791077fe3d44f90e7133eb68e7d22eaff2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/a59a13791077fe3d44f90e7133eb68e7d22eaff2", + "reference": "a59a13791077fe3d44f90e7133eb68e7d22eaff2", + "shasum": "" + }, + "require": { + "ext-pcre": "*", + "graham-campbell/result-type": "^1.1.3", + "php": "^7.2.5 || ^8.0", + "phpoption/phpoption": "^1.9.3", + "symfony/polyfill-ctype": "^1.24", + "symfony/polyfill-mbstring": "^1.24", + "symfony/polyfill-php80": "^1.24" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.8.2", + "ext-filter": "*", + "phpunit/phpunit": "^8.5.34 || ^9.6.13 || ^10.4.2" + }, + "suggest": { + "ext-filter": "Required to use the boolean validator." + }, + "time": "2024-07-20T21:52:34+00:00", + "type": "library", + "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + }, + "branch-alias": { + "dev-master": "5.6-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Dotenv\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Vance Lucas", + "email": "vance@vancelucas.com", + "homepage": "https://github.com/vlucas" + } + ], + "description": "Loads environment variables from `.env` to `getenv()`, `$_ENV` and `$_SERVER` automagically.", + "keywords": [ + "dotenv", + "env", + "environment" + ], + "support": { + "issues": "https://github.com/vlucas/phpdotenv/issues", + "source": "https://github.com/vlucas/phpdotenv/tree/v5.6.1" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/vlucas/phpdotenv", + "type": "tidelift" + } + ], + "install-path": "../vlucas/phpdotenv" } ], "dev": true, diff --git a/docker/statistics/vendor/composer/installed.php b/docker/statistics/vendor/composer/installed.php index dac082ce..21d816b0 100644 --- a/docker/statistics/vendor/composer/installed.php +++ b/docker/statistics/vendor/composer/installed.php @@ -5,7 +5,7 @@ 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), - 'reference' => '22473c8f3f322611c2bb9f1dd33d475980a9c26d', + 'reference' => '2dc2287379de1921205843a45ed8d7cce68a7e7a', 'name' => '__root__', 'dev' => true, ), @@ -16,7 +16,16 @@ 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), - 'reference' => '22473c8f3f322611c2bb9f1dd33d475980a9c26d', + 'reference' => '2dc2287379de1921205843a45ed8d7cce68a7e7a', + 'dev_requirement' => false, + ), + 'graham-campbell/result-type' => array( + 'pretty_version' => 'v1.1.3', + 'version' => '1.1.3.0', + 'type' => 'library', + 'install_path' => __DIR__ . '/../graham-campbell/result-type', + 'aliases' => array(), + 'reference' => '3ba905c11371512af9d9bdd27d99b782216b6945', 'dev_requirement' => false, ), 'guzzlehttp/guzzle' => array( @@ -55,6 +64,15 @@ 'reference' => '10d85740180ecba7896c87e06a166e0c95a0e3b6', 'dev_requirement' => false, ), + 'phpoption/phpoption' => array( + 'pretty_version' => '1.9.3', + 'version' => '1.9.3.0', + 'type' => 'library', + 'install_path' => __DIR__ . '/../phpoption/phpoption', + 'aliases' => array(), + 'reference' => 'e3fac8b24f56113f7cb96af14958c0dd16330f54', + 'dev_requirement' => false, + ), 'psr/http-client' => array( 'pretty_version' => '1.0.3', 'version' => '1.0.3.0', @@ -133,5 +151,41 @@ 'reference' => '74c71c939a79f7d5bf3c1ce9f5ea37ba0114c6f6', 'dev_requirement' => false, ), + 'symfony/polyfill-ctype' => array( + 'pretty_version' => 'v1.31.0', + 'version' => '1.31.0.0', + 'type' => 'library', + 'install_path' => __DIR__ . '/../symfony/polyfill-ctype', + 'aliases' => array(), + 'reference' => 'a3cc8b044a6ea513310cbd48ef7333b384945638', + 'dev_requirement' => false, + ), + 'symfony/polyfill-mbstring' => array( + 'pretty_version' => 'v1.31.0', + 'version' => '1.31.0.0', + 'type' => 'library', + 'install_path' => __DIR__ . '/../symfony/polyfill-mbstring', + 'aliases' => array(), + 'reference' => '85181ba99b2345b0ef10ce42ecac37612d9fd341', + 'dev_requirement' => false, + ), + 'symfony/polyfill-php80' => array( + 'pretty_version' => 'v1.31.0', + 'version' => '1.31.0.0', + 'type' => 'library', + 'install_path' => __DIR__ . '/../symfony/polyfill-php80', + 'aliases' => array(), + 'reference' => '60328e362d4c2c802a54fcbf04f9d3fb892b4cf8', + 'dev_requirement' => false, + ), + 'vlucas/phpdotenv' => array( + 'pretty_version' => 'v5.6.1', + 'version' => '5.6.1.0', + 'type' => 'library', + 'install_path' => __DIR__ . '/../vlucas/phpdotenv', + 'aliases' => array(), + 'reference' => 'a59a13791077fe3d44f90e7133eb68e7d22eaff2', + 'dev_requirement' => false, + ), ), ); diff --git a/docker/statistics/vendor/doctrine/dbal/src/Platforms/Keywords/MySQL84Keywords.php b/docker/statistics/vendor/doctrine/dbal/src/Platforms/Keywords/MySQL84Keywords.php deleted file mode 100644 index b057e71f..00000000 --- a/docker/statistics/vendor/doctrine/dbal/src/Platforms/Keywords/MySQL84Keywords.php +++ /dev/null @@ -1,64 +0,0 @@ -|null */ - private static $type; - - /** @var LoggerInterface|null */ - private static $logger; - - /** @var array */ - private static $ignoredPackages = []; - - /** @var array */ - private static $triggeredDeprecations = []; - - /** @var array */ - private static $ignoredLinks = []; - - /** @var bool */ - private static $deduplication = true; - - /** - * Trigger a deprecation for the given package and identfier. - * - * The link should point to a Github issue or Wiki entry detailing the - * deprecation. It is additionally used to de-duplicate the trigger of the - * same deprecation during a request. - * - * @param float|int|string $args - */ - public static function trigger(string $package, string $link, string $message, ...$args): void - { - $type = self::$type ?? self::getTypeFromEnv(); - - if ($type === self::TYPE_NONE) { - return; - } - - if (isset(self::$ignoredLinks[$link])) { - return; - } - - if (array_key_exists($link, self::$triggeredDeprecations)) { - self::$triggeredDeprecations[$link]++; - } else { - self::$triggeredDeprecations[$link] = 1; - } - - if (self::$deduplication === true && self::$triggeredDeprecations[$link] > 1) { - return; - } - - if (isset(self::$ignoredPackages[$package])) { - return; - } - - $backtrace = debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS, 2); - - $message = sprintf($message, ...$args); - - self::delegateTriggerToBackend($message, $backtrace, $link, $package); - } - - /** - * Trigger a deprecation for the given package and identifier when called from outside. - * - * "Outside" means we assume that $package is currently installed as a - * dependency and the caller is not a file in that package. When $package - * is installed as a root package then deprecations triggered from the - * tests folder are also considered "outside". - * - * This deprecation method assumes that you are using Composer to install - * the dependency and are using the default /vendor/ folder and not a - * Composer plugin to change the install location. The assumption is also - * that $package is the exact composer packge name. - * - * Compared to {@link trigger()} this method causes some overhead when - * deprecation tracking is enabled even during deduplication, because it - * needs to call {@link debug_backtrace()} - * - * @param float|int|string $args - */ - public static function triggerIfCalledFromOutside(string $package, string $link, string $message, ...$args): void - { - $type = self::$type ?? self::getTypeFromEnv(); - - if ($type === self::TYPE_NONE) { - return; - } - - $backtrace = debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS, 2); - - // first check that the caller is not from a tests folder, in which case we always let deprecations pass - if (isset($backtrace[1]['file'], $backtrace[0]['file']) && strpos($backtrace[1]['file'], DIRECTORY_SEPARATOR . 'tests' . DIRECTORY_SEPARATOR) === false) { - $path = DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . str_replace('/', DIRECTORY_SEPARATOR, $package) . DIRECTORY_SEPARATOR; - - if (strpos($backtrace[0]['file'], $path) === false) { - return; - } - - if (strpos($backtrace[1]['file'], $path) !== false) { - return; - } - } - - if (isset(self::$ignoredLinks[$link])) { - return; - } - - if (array_key_exists($link, self::$triggeredDeprecations)) { - self::$triggeredDeprecations[$link]++; - } else { - self::$triggeredDeprecations[$link] = 1; - } - - if (self::$deduplication === true && self::$triggeredDeprecations[$link] > 1) { - return; - } - - if (isset(self::$ignoredPackages[$package])) { - return; - } - - $message = sprintf($message, ...$args); - - self::delegateTriggerToBackend($message, $backtrace, $link, $package); - } - - /** @param list $backtrace */ - private static function delegateTriggerToBackend(string $message, array $backtrace, string $link, string $package): void - { - $type = self::$type ?? self::getTypeFromEnv(); - - if (($type & self::TYPE_PSR_LOGGER) > 0) { - $context = [ - 'file' => $backtrace[0]['file'] ?? null, - 'line' => $backtrace[0]['line'] ?? null, - 'package' => $package, - 'link' => $link, - ]; - - assert(self::$logger !== null); - - self::$logger->notice($message, $context); - } - - if (! (($type & self::TYPE_TRIGGER_ERROR) > 0)) { - return; - } - - $message .= sprintf( - ' (%s:%d called by %s:%d, %s, package %s)', - self::basename($backtrace[0]['file'] ?? 'native code'), - $backtrace[0]['line'] ?? 0, - self::basename($backtrace[1]['file'] ?? 'native code'), - $backtrace[1]['line'] ?? 0, - $link, - $package - ); - - @trigger_error($message, E_USER_DEPRECATED); - } - - /** - * A non-local-aware version of PHPs basename function. - */ - private static function basename(string $filename): string - { - $pos = strrpos($filename, DIRECTORY_SEPARATOR); - - if ($pos === false) { - return $filename; - } - - return substr($filename, $pos + 1); - } - - public static function enableTrackingDeprecations(): void - { - self::$type = self::$type ?? self::getTypeFromEnv(); - self::$type |= self::TYPE_TRACK_DEPRECATIONS; - } - - public static function enableWithTriggerError(): void - { - self::$type = self::$type ?? self::getTypeFromEnv(); - self::$type |= self::TYPE_TRIGGER_ERROR; - } - - public static function enableWithPsrLogger(LoggerInterface $logger): void - { - self::$type = self::$type ?? self::getTypeFromEnv(); - self::$type |= self::TYPE_PSR_LOGGER; - self::$logger = $logger; - } - - public static function withoutDeduplication(): void - { - self::$deduplication = false; - } - - public static function disable(): void - { - self::$type = self::TYPE_NONE; - self::$logger = null; - self::$deduplication = true; - self::$ignoredLinks = []; - - foreach (self::$triggeredDeprecations as $link => $count) { - self::$triggeredDeprecations[$link] = 0; - } - } - - public static function ignorePackage(string $packageName): void - { - self::$ignoredPackages[$packageName] = true; - } - - public static function ignoreDeprecations(string ...$links): void - { - foreach ($links as $link) { - self::$ignoredLinks[$link] = true; - } - } - - public static function getUniqueTriggeredDeprecationsCount(): int - { - return array_reduce(self::$triggeredDeprecations, static function (int $carry, int $count) { - return $carry + $count; - }, 0); - } - - /** - * Returns each triggered deprecation link identifier and the amount of occurrences. - * - * @return array - */ - public static function getTriggeredDeprecations(): array - { - return self::$triggeredDeprecations; - } - - /** @return int-mask-of */ - private static function getTypeFromEnv(): int - { - switch ($_SERVER['DOCTRINE_DEPRECATIONS'] ?? $_ENV['DOCTRINE_DEPRECATIONS'] ?? null) { - case 'trigger': - self::$type = self::TYPE_TRIGGER_ERROR; - break; - - case 'track': - self::$type = self::TYPE_TRACK_DEPRECATIONS; - break; - - default: - self::$type = self::TYPE_NONE; - break; - } - - return self::$type; - } -} diff --git a/docker/statistics/vendor/doctrine/deprecations/src/PHPUnit/VerifyDeprecations.php b/docker/statistics/vendor/doctrine/deprecations/src/PHPUnit/VerifyDeprecations.php deleted file mode 100644 index 8b322b75..00000000 --- a/docker/statistics/vendor/doctrine/deprecations/src/PHPUnit/VerifyDeprecations.php +++ /dev/null @@ -1,62 +0,0 @@ - */ - private $doctrineDeprecationsExpectations = []; - - /** @var array */ - private $doctrineNoDeprecationsExpectations = []; - - public function expectDeprecationWithIdentifier(string $identifier): void - { - $this->doctrineDeprecationsExpectations[$identifier] = Deprecation::getTriggeredDeprecations()[$identifier] ?? 0; - } - - public function expectNoDeprecationWithIdentifier(string $identifier): void - { - $this->doctrineNoDeprecationsExpectations[$identifier] = Deprecation::getTriggeredDeprecations()[$identifier] ?? 0; - } - - /** @before */ - public function enableDeprecationTracking(): void - { - Deprecation::enableTrackingDeprecations(); - } - - /** @after */ - public function verifyDeprecationsAreTriggered(): void - { - foreach ($this->doctrineDeprecationsExpectations as $identifier => $expectation) { - $actualCount = Deprecation::getTriggeredDeprecations()[$identifier] ?? 0; - - $this->assertTrue( - $actualCount > $expectation, - sprintf( - "Expected deprecation with identifier '%s' was not triggered by code executed in test.", - $identifier - ) - ); - } - - foreach ($this->doctrineNoDeprecationsExpectations as $identifier => $expectation) { - $actualCount = Deprecation::getTriggeredDeprecations()[$identifier] ?? 0; - - $this->assertTrue( - $actualCount === $expectation, - sprintf( - "Expected deprecation with identifier '%s' was triggered by code executed in test, but expected not to.", - $identifier - ) - ); - } - } -} diff --git a/docker/statistics/vendor/doctrine/event-manager/psalm-baseline.xml b/docker/statistics/vendor/doctrine/event-manager/psalm-baseline.xml deleted file mode 100644 index bc48ad84..00000000 --- a/docker/statistics/vendor/doctrine/event-manager/psalm-baseline.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - listeners[$event])]]> - - - diff --git a/docker/statistics/vendor/dompdf/dompdf/AUTHORS.md b/docker/statistics/vendor/dompdf/dompdf/AUTHORS.md deleted file mode 100644 index 68614792..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/AUTHORS.md +++ /dev/null @@ -1,24 +0,0 @@ -Dompdf was designed and developed by Benj Carson. - -### Current Team - -* **Brian Sweeney** (maintainer) -* **Till Berger** - -### Alumni - -* **Benj Carson** (creator) -* **Fabien Ménager** -* **Simon Berger** -* **Orion Richardson** - -### Contributors -* **Gabriel Bull** -* **Barry vd. Heuvel** -* **Ryan H. Masten** -* **Helmut Tischer** -* [and many more...](https://github.com/dompdf/dompdf/graphs/contributors) - -### Thanks - -Dompdf would not have been possible without strong community support. diff --git a/docker/statistics/vendor/dompdf/dompdf/LICENSE.LGPL b/docker/statistics/vendor/dompdf/dompdf/LICENSE.LGPL deleted file mode 100644 index 6ef5de82..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/LICENSE.LGPL +++ /dev/null @@ -1,456 +0,0 @@ - GNU LESSER GENERAL PUBLIC LICENSE - Version 2.1, February 1999 - - Copyright (C) 1991, 1999 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - -[This is the first released version of the Lesser GPL. It also counts - as the successor of the GNU Library Public License, version 2, hence - the version number 2.1.] - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -Licenses are intended to guarantee your freedom to share and change -free software--to make sure the software is free for all its users. - - This license, the Lesser General Public License, applies to some -specially designated software packages--typically libraries--of the -Free Software Foundation and other authors who decide to use it. You -can use it too, but we suggest you first think carefully about whether -this license or the ordinary General Public License is the better -strategy to use in any particular case, based on the explanations below. - - When we speak of free software, we are referring to freedom of use, -not price. Our General Public Licenses are designed to make sure that -you have the freedom to distribute copies of free software (and charge -for this service if you wish); that you receive source code or can get -it if you want it; that you can change the software and use pieces of -it in new free programs; and that you are informed that you can do -these things. - - To protect your rights, we need to make restrictions that forbid -distributors to deny you these rights or to ask you to surrender these -rights. These restrictions translate to certain responsibilities for -you if you distribute copies of the library or if you modify it. - - For example, if you distribute copies of the library, whether gratis -or for a fee, you must give the recipients all the rights that we gave -you. You must make sure that they, too, receive or can get the source -code. If you link other code with the library, you must provide -complete object files to the recipients, so that they can relink them -with the library after making changes to the library and recompiling -it. And you must show them these terms so they know their rights. - - We protect your rights with a two-step method: (1) we copyright the -library, and (2) we offer you this license, which gives you legal -permission to copy, distribute and/or modify the library. - - To protect each distributor, we want to make it very clear that -there is no warranty for the free library. Also, if the library is -modified by someone else and passed on, the recipients should know -that what they have is not the original version, so that the original -author's reputation will not be affected by problems that might be -introduced by others. - - Finally, software patents pose a constant threat to the existence of -any free program. We wish to make sure that a company cannot -effectively restrict the users of a free program by obtaining a -restrictive license from a patent holder. Therefore, we insist that -any patent license obtained for a version of the library must be -consistent with the full freedom of use specified in this license. - - Most GNU software, including some libraries, is covered by the -ordinary GNU General Public License. This license, the GNU Lesser -General Public License, applies to certain designated libraries, and -is quite different from the ordinary General Public License. We use -this license for certain libraries in order to permit linking those -libraries into non-free programs. - - When a program is linked with a library, whether statically or using -a shared library, the combination of the two is legally speaking a -combined work, a derivative of the original library. The ordinary -General Public License therefore permits such linking only if the -entire combination fits its criteria of freedom. The Lesser General -Public License permits more lax criteria for linking other code with -the library. - - We call this license the "Lesser" General Public License because it -does Less to protect the user's freedom than the ordinary General -Public License. It also provides other free software developers Less -of an advantage over competing non-free programs. These disadvantages -are the reason we use the ordinary General Public License for many -libraries. However, the Lesser license provides advantages in certain -special circumstances. - - For example, on rare occasions, there may be a special need to -encourage the widest possible use of a certain library, so that it becomes -a de-facto standard. To achieve this, non-free programs must be -allowed to use the library. A more frequent case is that a free -library does the same job as widely used non-free libraries. In this -case, there is little to gain by limiting the free library to free -software only, so we use the Lesser General Public License. - - In other cases, permission to use a particular library in non-free -programs enables a greater number of people to use a large body of -free software. For example, permission to use the GNU C Library in -non-free programs enables many more people to use the whole GNU -operating system, as well as its variant, the GNU/Linux operating -system. - - Although the Lesser General Public License is Less protective of the -users' freedom, it does ensure that the user of a program that is -linked with the Library has the freedom and the wherewithal to run -that program using a modified version of the Library. - - The precise terms and conditions for copying, distribution and -modification follow. Pay close attention to the difference between a -"work based on the library" and a "work that uses the library". The -former contains code derived from the library, whereas the latter must -be combined with the library in order to run. - - GNU LESSER GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License Agreement applies to any software library or other -program which contains a notice placed by the copyright holder or -other authorized party saying it may be distributed under the terms of -this Lesser General Public License (also called "this License"). -Each licensee is addressed as "you". - - A "library" means a collection of software functions and/or data -prepared so as to be conveniently linked with application programs -(which use some of those functions and data) to form executables. - - The "Library", below, refers to any such software library or work -which has been distributed under these terms. A "work based on the -Library" means either the Library or any derivative work under -copyright law: that is to say, a work containing the Library or a -portion of it, either verbatim or with modifications and/or translated -straightforwardly into another language. (Hereinafter, translation is -included without limitation in the term "modification".) - - "Source code" for a work means the preferred form of the work for -making modifications to it. For a library, complete source code means -all the source code for all modules it contains, plus any associated -interface definition files, plus the scripts used to control compilation -and installation of the library. - - Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running a program using the Library is not restricted, and output from -such a program is covered only if its contents constitute a work based -on the Library (independent of the use of the Library in a tool for -writing it). Whether that is true depends on what the Library does -and what the program that uses the Library does. - - 1. You may copy and distribute verbatim copies of the Library's -complete source code as you receive it, in any medium, provided that -you conspicuously and appropriately publish on each copy an -appropriate copyright notice and disclaimer of warranty; keep intact -all the notices that refer to this License and to the absence of any -warranty; and distribute a copy of this License along with the -Library. - - You may charge a fee for the physical act of transferring a copy, -and you may at your option offer warranty protection in exchange for a -fee. - - 2. You may modify your copy or copies of the Library or any portion -of it, thus forming a work based on the Library, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) The modified work must itself be a software library. - - b) You must cause the files modified to carry prominent notices - stating that you changed the files and the date of any change. - - c) You must cause the whole of the work to be licensed at no - charge to all third parties under the terms of this License. - - d) If a facility in the modified Library refers to a function or a - table of data to be supplied by an application program that uses - the facility, other than as an argument passed when the facility - is invoked, then you must make a good faith effort to ensure that, - in the event an application does not supply such function or - table, the facility still operates, and performs whatever part of - its purpose remains meaningful. - - (For example, a function in a library to compute square roots has - a purpose that is entirely well-defined independent of the - application. Therefore, Subsection 2d requires that any - application-supplied function or table used by this function must - be optional: if the application does not supply it, the square - root function must still compute square roots.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Library, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Library, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote -it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Library. - -In addition, mere aggregation of another work not based on the Library -with the Library (or with a work based on the Library) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may opt to apply the terms of the ordinary GNU General Public -License instead of this License to a given copy of the Library. To do -this, you must alter all the notices that refer to this License, so -that they refer to the ordinary GNU General Public License, version 2, -instead of to this License. (If a newer version than version 2 of the -ordinary GNU General Public License has appeared, then you can specify -that version instead if you wish.) Do not make any other change in -these notices. - - Once this change is made in a given copy, it is irreversible for -that copy, so the ordinary GNU General Public License applies to all -subsequent copies and derivative works made from that copy. - - This option is useful when you wish to copy part of the code of -the Library into a program that is not a library. - - 4. You may copy and distribute the Library (or a portion or -derivative of it, under Section 2) in object code or executable form -under the terms of Sections 1 and 2 above provided that you accompany -it with the complete corresponding machine-readable source code, which -must be distributed under the terms of Sections 1 and 2 above on a -medium customarily used for software interchange. - - If distribution of object code is made by offering access to copy -from a designated place, then offering equivalent access to copy the -source code from the same place satisfies the requirement to -distribute the source code, even though third parties are not -compelled to copy the source along with the object code. - - 5. A program that contains no derivative of any portion of the -Library, but is designed to work with the Library by being compiled or -linked with it, is called a "work that uses the Library". Such a -work, in isolation, is not a derivative work of the Library, and -therefore falls outside the scope of this License. - - However, linking a "work that uses the Library" with the Library -creates an executable that is a derivative of the Library (because it -contains portions of the Library), rather than a "work that uses the -library". The executable is therefore covered by this License. -Section 6 states terms for distribution of such executables. - - When a "work that uses the Library" uses material from a header file -that is part of the Library, the object code for the work may be a -derivative work of the Library even though the source code is not. -Whether this is true is especially significant if the work can be -linked without the Library, or if the work is itself a library. The -threshold for this to be true is not precisely defined by law. - - If such an object file uses only numerical parameters, data -structure layouts and accessors, and small macros and small inline -functions (ten lines or less in length), then the use of the object -file is unrestricted, regardless of whether it is legally a derivative -work. (Executables containing this object code plus portions of the -Library will still fall under Section 6.) - - Otherwise, if the work is a derivative of the Library, you may -distribute the object code for the work under the terms of Section 6. -Any executables containing that work also fall under Section 6, -whether or not they are linked directly with the Library itself. - - 6. As an exception to the Sections above, you may also combine or -link a "work that uses the Library" with the Library to produce a -work containing portions of the Library, and distribute that work -under terms of your choice, provided that the terms permit -modification of the work for the customer's own use and reverse -engineering for debugging such modifications. - - You must give prominent notice with each copy of the work that the -Library is used in it and that the Library and its use are covered by -this License. You must supply a copy of this License. If the work -during execution displays copyright notices, you must include the -copyright notice for the Library among them, as well as a reference -directing the user to the copy of this License. Also, you must do one -of these things: - - a) Accompany the work with the complete corresponding - machine-readable source code for the Library including whatever - changes were used in the work (which must be distributed under - Sections 1 and 2 above); and, if the work is an executable linked - with the Library, with the complete machine-readable "work that - uses the Library", as object code and/or source code, so that the - user can modify the Library and then relink to produce a modified - executable containing the modified Library. (It is understood - that the user who changes the contents of definitions files in the - Library will not necessarily be able to recompile the application - to use the modified definitions.) - - b) Use a suitable shared library mechanism for linking with the - Library. A suitable mechanism is one that (1) uses at run time a - copy of the library already present on the user's computer system, - rather than copying library functions into the executable, and (2) - will operate properly with a modified version of the library, if - the user installs one, as long as the modified version is - interface-compatible with the version that the work was made with. - - c) Accompany the work with a written offer, valid for at - least three years, to give the same user the materials - specified in Subsection 6a, above, for a charge no more - than the cost of performing this distribution. - - d) If distribution of the work is made by offering access to copy - from a designated place, offer equivalent access to copy the above - specified materials from the same place. - - e) Verify that the user has already received a copy of these - materials or that you have already sent this user a copy. - - For an executable, the required form of the "work that uses the -Library" must include any data and utility programs needed for -reproducing the executable from it. However, as a special exception, -the materials to be distributed need not include anything that is -normally distributed (in either source or binary form) with the major -components (compiler, kernel, and so on) of the operating system on -which the executable runs, unless that component itself accompanies -the executable. - - It may happen that this requirement contradicts the license -restrictions of other proprietary libraries that do not normally -accompany the operating system. Such a contradiction means you cannot -use both them and the Library together in an executable that you -distribute. - - 7. You may place library facilities that are a work based on the -Library side-by-side in a single library together with other library -facilities not covered by this License, and distribute such a combined -library, provided that the separate distribution of the work based on -the Library and of the other library facilities is otherwise -permitted, and provided that you do these two things: - - a) Accompany the combined library with a copy of the same work - based on the Library, uncombined with any other library - facilities. This must be distributed under the terms of the - Sections above. - - b) Give prominent notice with the combined library of the fact - that part of it is a work based on the Library, and explaining - where to find the accompanying uncombined form of the same work. - - 8. You may not copy, modify, sublicense, link with, or distribute -the Library except as expressly provided under this License. Any -attempt otherwise to copy, modify, sublicense, link with, or -distribute the Library is void, and will automatically terminate your -rights under this License. However, parties who have received copies, -or rights, from you under this License will not have their licenses -terminated so long as such parties remain in full compliance. - - 9. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Library or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Library (or any work based on the -Library), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Library or works based on it. - - 10. Each time you redistribute the Library (or any work based on the -Library), the recipient automatically receives a license from the -original licensor to copy, distribute, link with or modify the Library -subject to these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties with -this License. - - 11. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Library at all. For example, if a patent -license would not permit royalty-free redistribution of the Library by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Library. - -If any portion of this section is held invalid or unenforceable under any -particular circumstance, the balance of the section is intended to apply, -and the section as a whole is intended to apply in other circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 12. If the distribution and/or use of the Library is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Library under this License may add -an explicit geographical distribution limitation excluding those countries, -so that distribution is permitted only in or among countries not thus -excluded. In such case, this License incorporates the limitation as if -written in the body of this License. - - 13. The Free Software Foundation may publish revised and/or new -versions of the Lesser General Public License from time to time. -Such new versions will be similar in spirit to the present version, -but may differ in detail to address new problems or concerns. - -Each version is given a distinguishing version number. If the Library -specifies a version number of this License which applies to it and -"any later version", you have the option of following the terms and -conditions either of that version or of any later version published by -the Free Software Foundation. If the Library does not specify a -license version number, you may choose any version ever published by -the Free Software Foundation. - - 14. If you wish to incorporate parts of the Library into other free -programs whose distribution conditions are incompatible with these, -write to the author to ask for permission. For software which is -copyrighted by the Free Software Foundation, write to the Free -Software Foundation; we sometimes make exceptions for this. Our -decision will be guided by the two goals of preserving the free status -of all derivatives of our free software and of promoting the sharing -and reuse of software generally. - - NO WARRANTY - - 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO -WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. -EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR -OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY -KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE -LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME -THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN -WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY -AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU -FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR -CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE -LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING -RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A -FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF -SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH -DAMAGES. \ No newline at end of file diff --git a/docker/statistics/vendor/dompdf/dompdf/README.md b/docker/statistics/vendor/dompdf/dompdf/README.md deleted file mode 100644 index 7546e807..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/README.md +++ /dev/null @@ -1,232 +0,0 @@ -Dompdf -====== - -[![Build Status](https://github.com/dompdf/dompdf/actions/workflows/test.yml/badge.svg)](https://github.com/dompdf/dompdf/actions/workflows/test.yml) -[![Latest Release](https://poser.pugx.org/dompdf/dompdf/v/stable.png)](https://packagist.org/packages/dompdf/dompdf) -[![Total Downloads](https://poser.pugx.org/dompdf/dompdf/downloads.png)](https://packagist.org/packages/dompdf/dompdf) -[![License](https://poser.pugx.org/dompdf/dompdf/license.png)](https://packagist.org/packages/dompdf/dompdf) - -**Dompdf is an HTML to PDF converter** - -At its heart, dompdf is (mostly) a [CSS 2.1](http://www.w3.org/TR/CSS2/) compliant -HTML layout and rendering engine written in PHP. It is a style-driven renderer: -it will download and read external stylesheets, inline style tags, and the style -attributes of individual HTML elements. It also supports most presentational -HTML attributes. - -*This document applies to the latest stable code which may not reflect the current -release. For released code please -[navigate to the appropriate tag](https://github.com/dompdf/dompdf/tags).* - ----- - -**Check out the [demo](http://eclecticgeek.com/dompdf/debug.php) and ask any -question on [StackOverflow](https://stackoverflow.com/questions/tagged/dompdf) or -in [Discussions](https://github.com/dompdf/dompdf/discussions).** - -Follow us on [![Twitter](http://twitter-badges.s3.amazonaws.com/twitter-a.png)](http://www.twitter.com/dompdf). - ---- - - - -## Features - - * Handles most CSS 2.1 and a few CSS3 properties, including @import, @media & - @page rules - * Supports most presentational HTML 4.0 attributes - * Supports external stylesheets, either local or through http/ftp (via - fopen-wrappers) - * Supports complex tables, including row & column spans, separate & collapsed - border models, individual cell styling - * Image support (gif, png (8, 24 and 32 bit with alpha channel), bmp & jpeg) - * No dependencies on external PDF libraries, thanks to the R&OS PDF class - * Inline PHP support - * Basic SVG support (see "Limitations" below) - -## Requirements - - * PHP version 7.1 or higher - * DOM extension - * MBString extension - * php-font-lib - * php-svg-lib - -Note that some required dependencies may have further dependencies -(notably php-svg-lib requires sabberworm/php-css-parser). - -### Recommendations - - * OPcache (OPcache, XCache, APC, etc.): improves performance - * GD (for image processing) - * IMagick or GMagick extension: improves image processing performance - -Visit the wiki for more information: -https://github.com/dompdf/dompdf/wiki/Requirements - -## About Fonts & Character Encoding - -PDF documents internally support the following fonts: Helvetica, Times-Roman, -Courier, Zapf-Dingbats, & Symbol. These fonts only support Windows ANSI -encoding. In order for a PDF to display characters that are not available in -Windows ANSI, you must supply an external font. Dompdf will embed any referenced -font in the PDF so long as it has been pre-loaded or is accessible to dompdf and -reference in CSS @font-face rules. See the -[font overview](https://github.com/dompdf/dompdf/wiki/About-Fonts-and-Character-Encoding) -for more information on how to use fonts. - -The [DejaVu TrueType fonts](https://dejavu-fonts.github.io/) have been pre-installed -to give dompdf decent Unicode character coverage by default. To use the DejaVu -fonts reference the font in your stylesheet, e.g. `body { font-family: DejaVu -Sans; }` (for DejaVu Sans). The following DejaVu 2.34 fonts are available: -DejaVu Sans, DejaVu Serif, and DejaVu Sans Mono. - -## Easy Installation - -### Install with composer - -To install with [Composer](https://getcomposer.org/), simply require the -latest version of this package. - -```bash -composer require dompdf/dompdf -``` - -Make sure that the autoload file from Composer is loaded. - -```php -// somewhere early in your project's loading, require the Composer autoloader -// see: http://getcomposer.org/doc/00-intro.md -require 'vendor/autoload.php'; - -``` - -### Download and install - -Download a packaged archive of dompdf and extract it into the -directory where dompdf will reside - - * You can download stable copies of dompdf from - https://github.com/dompdf/dompdf/releases - * Or download a nightly (the latest, unreleased code) from - http://eclecticgeek.com/dompdf - -Use the packaged release autoloader to load dompdf, libraries, -and helper functions in your PHP: - -```php -// include autoloader -require_once 'dompdf/autoload.inc.php'; -``` - -Note: packaged releases are named according using semantic -versioning (_dompdf_MAJOR-MINOR-PATCH.zip_). So the 1.0.0 -release would be dompdf_1-0-0.zip. This is the only download -that includes the autoloader for Dompdf and all its dependencies. - -### Install with git - -From the command line, switch to the directory where dompdf will -reside and run the following commands: - -```sh -git clone https://github.com/dompdf/dompdf.git -cd dompdf/lib - -git clone https://github.com/PhenX/php-font-lib.git php-font-lib -cd php-font-lib -git checkout 0.5.1 -cd .. - -git clone https://github.com/PhenX/php-svg-lib.git php-svg-lib -cd php-svg-lib -git checkout v0.3.2 -cd .. - -git clone https://github.com/sabberworm/PHP-CSS-Parser.git php-css-parser -cd php-css-parser -git checkout 8.1.0 -``` - -Require dompdf and it's dependencies in your PHP. -For details see the [autoloader in the utils project](https://github.com/dompdf/utils/blob/master/autoload.inc.php). - -## Quick Start - -Just pass your HTML in to dompdf and stream the output: - -```php -// reference the Dompdf namespace -use Dompdf\Dompdf; - -// instantiate and use the dompdf class -$dompdf = new Dompdf(); -$dompdf->loadHtml('hello world'); - -// (Optional) Setup the paper size and orientation -$dompdf->setPaper('A4', 'landscape'); - -// Render the HTML as PDF -$dompdf->render(); - -// Output the generated PDF to Browser -$dompdf->stream(); -``` - -### Setting Options - -Set options during dompdf instantiation: - -```php -use Dompdf\Dompdf; -use Dompdf\Options; - -$options = new Options(); -$options->set('defaultFont', 'Courier'); -$dompdf = new Dompdf($options); -``` - -or at run time - -```php -use Dompdf\Dompdf; - -$dompdf = new Dompdf(); -$options = $dompdf->getOptions(); -$options->setDefaultFont('Courier'); -$dompdf->setOptions($options); -``` - -See [Dompdf\Options](src/Options.php) for a list of available options. - -### Resource Reference Requirements - -In order to protect potentially sensitive information Dompdf imposes -restrictions on files referenced from the local file system or the web. - -Files accessed through web-based protocols have the following requirements: - * The Dompdf option "isRemoteEnabled" must be set to "true" - * PHP must either have the curl extension enabled or the - allow_url_fopen setting set to true - -Files accessed through the local file system have the following requirement: - * The file must fall within the path(s) specified for the Dompdf "chroot" option - -## Limitations (Known Issues) - - * Table cells are not pageable, meaning a table row must fit on a single page. - * Elements are rendered on the active page when they are parsed. - * Embedding "raw" SVG's (``) isn't working yet, you need to - either link to an external SVG file, or use a DataURI like this: - ```php - $html = ''; - ``` - Watch https://github.com/dompdf/dompdf/issues/320 for progress - * Does not support CSS flexbox. - * Does not support CSS Grid. ---- - -[![Donate button](https://www.paypal.com/en_US/i/btn/btn_donate_SM.gif)](http://goo.gl/DSvWf) - -*If you find this project useful, please consider making a donation. -Any funds donated will be used to help further development on this project.)* diff --git a/docker/statistics/vendor/dompdf/dompdf/VERSION b/docker/statistics/vendor/dompdf/dompdf/VERSION deleted file mode 100644 index 815e68dd..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/VERSION +++ /dev/null @@ -1 +0,0 @@ -2.0.8 diff --git a/docker/statistics/vendor/dompdf/dompdf/composer.json b/docker/statistics/vendor/dompdf/dompdf/composer.json deleted file mode 100644 index 435c670c..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/composer.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "name": "dompdf/dompdf", - "type": "library", - "description": "DOMPDF is a CSS 2.1 compliant HTML to PDF converter", - "homepage": "https://github.com/dompdf/dompdf", - "license": "LGPL-2.1", - "authors": [ - { - "name": "The Dompdf Community", - "homepage": "https://github.com/dompdf/dompdf/blob/master/AUTHORS.md" - } - ], - "autoload": { - "psr-4": { - "Dompdf\\": "src/" - }, - "classmap": [ - "lib/" - ] - }, - "autoload-dev": { - "psr-4": { - "Dompdf\\Tests\\": "tests/" - } - }, - "require": { - "php": "^7.1 || ^8.0", - "ext-dom": "*", - "ext-mbstring": "*", - "masterminds/html5": "^2.0", - "phenx/php-font-lib": ">=0.5.4 <1.0.0", - "phenx/php-svg-lib": ">=0.5.2 <1.0.0" - }, - "require-dev": { - "ext-json": "*", - "ext-zip": "*", - "phpunit/phpunit": "^7.5 || ^8 || ^9", - "squizlabs/php_codesniffer": "^3.5", - "mockery/mockery": "^1.3" - }, - "suggest": { - "ext-gd": "Needed to process images", - "ext-imagick": "Improves image processing performance", - "ext-gmagick": "Improves image processing performance", - "ext-zlib": "Needed for pdf stream compression" - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/Cpdf.php b/docker/statistics/vendor/dompdf/dompdf/lib/Cpdf.php deleted file mode 100644 index 0bbb74d1..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/Cpdf.php +++ /dev/null @@ -1,6501 +0,0 @@ - "Normal", "opacity" => 1.0]; - - /** - * array Current fill transparency (partial graphics state) - */ - public $currentFillTransparency = ["mode" => "Normal", "opacity" => 1.0]; - - /** - * @var array An array which is used to save the state of the document, mainly the colors and styles - * it is used to temporarily change to another state, then change back to what it was before - */ - public $stateStack = []; - - /** - * @var integer Number of elements within the state stack - */ - public $nStateStack = 0; - - /** - * @var integer Number of page objects within the document - */ - public $numPages = 0; - - /** - * @var array Object Id storage stack - */ - public $stack = []; - - /** - * @var integer Number of elements within the object Id storage stack - */ - public $nStack = 0; - - /** - * an array which contains information about the objects which are not firmly attached to pages - * these have been added with the addObject function - */ - public $looseObjects = []; - - /** - * array contains information about how the loose objects are to be added to the document - */ - public $addLooseObjects = []; - - /** - * @var integer The objectId of the information object for the document - * this contains authorship, title etc. - */ - public $infoObject = 0; - - /** - * @var integer Number of images being tracked within the document - */ - public $numImages = 0; - - /** - * @var array An array containing options about the document - * it defaults to turning on the compression of the objects - */ - public $options = ['compression' => true]; - - /** - * @var integer The objectId of the first page of the document - */ - public $firstPageId; - - /** - * @var integer The object Id of the procset object - */ - public $procsetObjectId; - - /** - * @var array Store the information about the relationship between font families - * this used so that the code knows which font is the bold version of another font, etc. - * the value of this array is initialised in the constructor function. - */ - public $fontFamilies = []; - - /** - * @var string Folder for php serialized formats of font metrics files. - * If empty string, use same folder as original metrics files. - * This can be passed in from class creator. - * If this folder does not exist or is not writable, Cpdf will be **much** slower. - * Because of potential trouble with php safe mode, folder cannot be created at runtime. - */ - public $fontcache = ''; - - /** - * @var integer The version of the font metrics cache file. - * This value must be manually incremented whenever the internal font data structure is modified. - */ - public $fontcacheVersion = 6; - - /** - * @var string Temporary folder. - * If empty string, will attempt system tmp folder. - * This can be passed in from class creator. - */ - public $tmp = ''; - - /** - * @var string Track if the current font is bolded or italicised - */ - public $currentTextState = ''; - - /** - * @var string Messages are stored here during processing, these can be selected afterwards to give some useful debug information - */ - public $messages = ''; - - /** - * @var string The encryption array for the document encryption is stored here - */ - public $arc4 = ''; - - /** - * @var integer The object Id of the encryption information - */ - public $arc4_objnum = 0; - - /** - * @var string The file identifier, used to uniquely identify a pdf document - */ - public $fileIdentifier = ''; - - /** - * @var boolean A flag to say if a document is to be encrypted or not - */ - public $encrypted = false; - - /** - * @var string The encryption key for the encryption of all the document content (structure is not encrypted) - */ - public $encryptionKey = ''; - - /** - * @var array Array which forms a stack to keep track of nested callback functions - */ - public $callback = []; - - /** - * @var integer The number of callback functions in the callback array - */ - public $nCallback = 0; - - /** - * @var array Store label->id pairs for named destinations, these will be used to replace internal links - * done this way so that destinations can be defined after the location that links to them - */ - public $destinations = []; - - /** - * @var array Store the stack for the transaction commands, each item in here is a record of the values of all the - * publiciables within the class, so that the user can rollback at will (from each 'start' command) - * note that this includes the objects array, so these can be large. - */ - public $checkpoint = ''; - - /** - * @var array Table of Image origin filenames and image labels which were already added with o_image(). - * Allows to merge identical images - */ - public $imagelist = []; - - /** - * @var array Table of already added alpha and plain image files for transparent PNG images. - */ - protected $imageAlphaList = []; - - /** - * @var array List of temporary image files to be deleted after processing. - */ - protected $imageCache = []; - - /** - * @var boolean Whether the text passed in should be treated as Unicode or just local character set. - */ - public $isUnicode = false; - - /** - * @var string the JavaScript code of the document - */ - public $javascript = ''; - - /** - * @var boolean whether the compression is possible - */ - protected $compressionReady = false; - - /** - * @var array Current page size - */ - protected $currentPageSize = ["width" => 0, "height" => 0]; - - /** - * @var array All the chars that will be required in the font subsets - */ - protected $stringSubsets = []; - - /** - * @var string The target internal encoding - */ - protected static $targetEncoding = 'Windows-1252'; - - /** - * @var array - */ - protected $byteRange = array(); - - /** - * @var array The list of the core fonts - */ - protected static $coreFonts = [ - 'courier', - 'courier-bold', - 'courier-oblique', - 'courier-boldoblique', - 'helvetica', - 'helvetica-bold', - 'helvetica-oblique', - 'helvetica-boldoblique', - 'times-roman', - 'times-bold', - 'times-italic', - 'times-bolditalic', - 'symbol', - 'zapfdingbats' - ]; - - /** - * Class constructor - * This will start a new document - * - * @param array $pageSize Array of 4 numbers, defining the bottom left and upper right corner of the page. first two are normally zero. - * @param boolean $isUnicode Whether text will be treated as Unicode or not. - * @param string $fontcache The font cache folder - * @param string $tmp The temporary folder - */ - function __construct($pageSize = [0, 0, 612, 792], $isUnicode = false, $fontcache = '', $tmp = '') - { - $this->isUnicode = $isUnicode; - $this->fontcache = rtrim($fontcache, DIRECTORY_SEPARATOR."/\\"); - $this->tmp = ($tmp !== '' ? $tmp : sys_get_temp_dir()); - $this->newDocument($pageSize); - - $this->compressionReady = function_exists('gzcompress'); - - if (in_array('Windows-1252', mb_list_encodings())) { - self::$targetEncoding = 'Windows-1252'; - } - - // also initialize the font families that are known about already - $this->setFontFamily('init'); - } - - public function __destruct() - { - foreach ($this->imageCache as $file) { - if (file_exists($file)) { - unlink($file); - } - } - } - - /** - * Document object methods (internal use only) - * - * There is about one object method for each type of object in the pdf document - * Each function has the same call list ($id,$action,$options). - * $id = the object ID of the object, or what it is to be if it is being created - * $action = a string specifying the action to be performed, though ALL must support: - * 'new' - create the object with the id $id - * 'out' - produce the output for the pdf object - * $options = optional, a string or array containing the various parameters for the object - * - * These, in conjunction with the output function are the ONLY way for output to be produced - * within the pdf 'file'. - */ - - /** - * Destination object, used to specify the location for the user to jump to, presently on opening - * - * @param $id - * @param $action - * @param string $options - * @return string|null - */ - protected function o_destination($id, $action, $options = '') - { - switch ($action) { - case 'new': - $this->objects[$id] = ['t' => 'destination', 'info' => []]; - $tmp = ''; - switch ($options['type']) { - case 'XYZ': - /** @noinspection PhpMissingBreakStatementInspection */ - case 'FitR': - $tmp = ' ' . $options['p3'] . $tmp; - case 'FitH': - case 'FitV': - case 'FitBH': - /** @noinspection PhpMissingBreakStatementInspection */ - case 'FitBV': - $tmp = ' ' . $options['p1'] . ' ' . $options['p2'] . $tmp; - case 'Fit': - case 'FitB': - $tmp = $options['type'] . $tmp; - $this->objects[$id]['info']['string'] = $tmp; - $this->objects[$id]['info']['page'] = $options['page']; - } - break; - - case 'out': - $o = &$this->objects[$id]; - - $tmp = $o['info']; - $res = "\n$id 0 obj\n" . '[' . $tmp['page'] . ' 0 R /' . $tmp['string'] . "]\nendobj"; - - return $res; - } - - return null; - } - - /** - * set the viewer preferences - * - * @param $id - * @param $action - * @param string|array $options - * @return string|null - */ - protected function o_viewerPreferences($id, $action, $options = '') - { - switch ($action) { - case 'new': - $this->objects[$id] = ['t' => 'viewerPreferences', 'info' => []]; - break; - - case 'add': - $o = &$this->objects[$id]; - - foreach ($options as $k => $v) { - switch ($k) { - // Boolean keys - case 'HideToolbar': - case 'HideMenubar': - case 'HideWindowUI': - case 'FitWindow': - case 'CenterWindow': - case 'DisplayDocTitle': - case 'PickTrayByPDFSize': - $o['info'][$k] = (bool)$v; - break; - - // Integer keys - case 'NumCopies': - $o['info'][$k] = (int)$v; - break; - - // Name keys - case 'ViewArea': - case 'ViewClip': - case 'PrintClip': - case 'PrintArea': - $o['info'][$k] = (string)$v; - break; - - // Named with limited valid values - case 'NonFullScreenPageMode': - if (!in_array($v, ['UseNone', 'UseOutlines', 'UseThumbs', 'UseOC'])) { - break; - } - $o['info'][$k] = $v; - break; - - case 'Direction': - if (!in_array($v, ['L2R', 'R2L'])) { - break; - } - $o['info'][$k] = $v; - break; - - case 'PrintScaling': - if (!in_array($v, ['None', 'AppDefault'])) { - break; - } - $o['info'][$k] = $v; - break; - - case 'Duplex': - if (!in_array($v, ['None', 'Simplex', 'DuplexFlipShortEdge', 'DuplexFlipLongEdge'])) { - break; - } - $o['info'][$k] = $v; - break; - - // Integer array - case 'PrintPageRange': - // Cast to integer array - foreach ($v as $vK => $vV) { - $v[$vK] = (int)$vV; - } - $o['info'][$k] = array_values($v); - break; - } - } - break; - - case 'out': - $o = &$this->objects[$id]; - $res = "\n$id 0 obj\n<< "; - - foreach ($o['info'] as $k => $v) { - if (is_string($v)) { - $v = '/' . $v; - } elseif (is_int($v)) { - $v = (string) $v; - } elseif (is_bool($v)) { - $v = ($v ? 'true' : 'false'); - } elseif (is_array($v)) { - $v = '[' . implode(' ', $v) . ']'; - } - $res .= "\n/$k $v"; - } - $res .= "\n>>\nendobj"; - - return $res; - } - - return null; - } - - /** - * define the document catalog, the overall controller for the document - * - * @param $id - * @param $action - * @param string|array $options - * @return string|null - */ - protected function o_catalog($id, $action, $options = '') - { - if ($action !== 'new') { - $o = &$this->objects[$id]; - } - - switch ($action) { - case 'new': - $this->objects[$id] = ['t' => 'catalog', 'info' => []]; - $this->catalogId = $id; - break; - - case 'acroform': - case 'outlines': - case 'pages': - case 'openHere': - case 'names': - $o['info'][$action] = $options; - break; - - case 'viewerPreferences': - if (!isset($o['info']['viewerPreferences'])) { - $this->numObj++; - $this->o_viewerPreferences($this->numObj, 'new'); - $o['info']['viewerPreferences'] = $this->numObj; - } - - $vp = $o['info']['viewerPreferences']; - $this->o_viewerPreferences($vp, 'add', $options); - - break; - - case 'out': - $res = "\n$id 0 obj\n<< /Type /Catalog"; - - foreach ($o['info'] as $k => $v) { - switch ($k) { - case 'outlines': - $res .= "\n/Outlines $v 0 R"; - break; - - case 'pages': - $res .= "\n/Pages $v 0 R"; - break; - - case 'viewerPreferences': - $res .= "\n/ViewerPreferences $v 0 R"; - break; - - case 'openHere': - $res .= "\n/OpenAction $v 0 R"; - break; - - case 'names': - $res .= "\n/Names $v 0 R"; - break; - - case 'acroform': - $res .= "\n/AcroForm $v 0 R"; - break; - } - } - - $res .= " >>\nendobj"; - - return $res; - } - - return null; - } - - /** - * object which is a parent to the pages in the document - * - * @param $id - * @param $action - * @param string $options - * @return string|null - */ - protected function o_pages($id, $action, $options = '') - { - if ($action !== 'new') { - $o = &$this->objects[$id]; - } - - switch ($action) { - case 'new': - $this->objects[$id] = ['t' => 'pages', 'info' => []]; - $this->o_catalog($this->catalogId, 'pages', $id); - break; - - case 'page': - if (!is_array($options)) { - // then it will just be the id of the new page - $o['info']['pages'][] = $options; - } else { - // then it should be an array having 'id','rid','pos', where rid=the page to which this one will be placed relative - // and pos is either 'before' or 'after', saying where this page will fit. - if (isset($options['id']) && isset($options['rid']) && isset($options['pos'])) { - $i = array_search($options['rid'], $o['info']['pages']); - if (isset($o['info']['pages'][$i]) && $o['info']['pages'][$i] == $options['rid']) { - - // then there is a match - // make a space - switch ($options['pos']) { - case 'before': - $k = $i; - break; - - case 'after': - $k = $i + 1; - break; - - default: - $k = -1; - break; - } - - if ($k >= 0) { - for ($j = count($o['info']['pages']) - 1; $j >= $k; $j--) { - $o['info']['pages'][$j + 1] = $o['info']['pages'][$j]; - } - - $o['info']['pages'][$k] = $options['id']; - } - } - } - } - break; - - case 'procset': - $o['info']['procset'] = $options; - break; - - case 'mediaBox': - $o['info']['mediaBox'] = $options; - // which should be an array of 4 numbers - $this->currentPageSize = ['width' => $options[2], 'height' => $options[3]]; - break; - - case 'font': - $o['info']['fonts'][] = ['objNum' => $options['objNum'], 'fontNum' => $options['fontNum']]; - break; - - case 'extGState': - $o['info']['extGStates'][] = ['objNum' => $options['objNum'], 'stateNum' => $options['stateNum']]; - break; - - case 'xObject': - $o['info']['xObjects'][] = ['objNum' => $options['objNum'], 'label' => $options['label']]; - break; - - case 'out': - if (count($o['info']['pages'])) { - $res = "\n$id 0 obj\n<< /Type /Pages\n/Kids ["; - foreach ($o['info']['pages'] as $v) { - $res .= "$v 0 R\n"; - } - - $res .= "]\n/Count " . count($this->objects[$id]['info']['pages']); - - if ((isset($o['info']['fonts']) && count($o['info']['fonts'])) || - isset($o['info']['procset']) || - (isset($o['info']['extGStates']) && count($o['info']['extGStates'])) - ) { - $res .= "\n/Resources <<"; - - if (isset($o['info']['procset'])) { - $res .= "\n/ProcSet " . $o['info']['procset'] . " 0 R"; - } - - if (isset($o['info']['fonts']) && count($o['info']['fonts'])) { - $res .= "\n/Font << "; - foreach ($o['info']['fonts'] as $finfo) { - $res .= "\n/F" . $finfo['fontNum'] . " " . $finfo['objNum'] . " 0 R"; - } - $res .= "\n>>"; - } - - if (isset($o['info']['xObjects']) && count($o['info']['xObjects'])) { - $res .= "\n/XObject << "; - foreach ($o['info']['xObjects'] as $finfo) { - $res .= "\n/" . $finfo['label'] . " " . $finfo['objNum'] . " 0 R"; - } - $res .= "\n>>"; - } - - if (isset($o['info']['extGStates']) && count($o['info']['extGStates'])) { - $res .= "\n/ExtGState << "; - foreach ($o['info']['extGStates'] as $gstate) { - $res .= "\n/GS" . $gstate['stateNum'] . " " . $gstate['objNum'] . " 0 R"; - } - $res .= "\n>>"; - } - - $res .= "\n>>"; - if (isset($o['info']['mediaBox'])) { - $tmp = $o['info']['mediaBox']; - $res .= "\n/MediaBox [" . sprintf( - '%.3F %.3F %.3F %.3F', - $tmp[0], - $tmp[1], - $tmp[2], - $tmp[3] - ) . ']'; - } - } - - $res .= "\n >>\nendobj"; - } else { - $res = "\n$id 0 obj\n<< /Type /Pages\n/Count 0\n>>\nendobj"; - } - - return $res; - } - - return null; - } - - /** - * define the outlines in the doc, empty for now - * - * @param $id - * @param $action - * @param string $options - * @return string|null - */ - protected function o_outlines($id, $action, $options = '') - { - if ($action !== 'new') { - $o = &$this->objects[$id]; - } - - switch ($action) { - case 'new': - $this->objects[$id] = ['t' => 'outlines', 'info' => ['outlines' => []]]; - $this->o_catalog($this->catalogId, 'outlines', $id); - break; - - case 'outline': - $o['info']['outlines'][] = $options; - break; - - case 'out': - if (count($o['info']['outlines'])) { - $res = "\n$id 0 obj\n<< /Type /Outlines /Kids ["; - foreach ($o['info']['outlines'] as $v) { - $res .= "$v 0 R "; - } - - $res .= "] /Count " . count($o['info']['outlines']) . " >>\nendobj"; - } else { - $res = "\n$id 0 obj\n<< /Type /Outlines /Count 0 >>\nendobj"; - } - - return $res; - } - - return null; - } - - /** - * an object to hold the font description - * - * @param $id - * @param $action - * @param string|array $options - * @return string|null - * @throws FontNotFoundException - */ - protected function o_font($id, $action, $options = '') - { - if ($action !== 'new') { - $o = &$this->objects[$id]; - } - - switch ($action) { - case 'new': - $this->objects[$id] = [ - 't' => 'font', - 'info' => [ - 'name' => $options['name'], - 'fontFileName' => $options['fontFileName'], - 'SubType' => 'Type1', - 'isSubsetting' => $options['isSubsetting'] - ] - ]; - $fontNum = $this->numFonts; - $this->objects[$id]['info']['fontNum'] = $fontNum; - - // deal with the encoding and the differences - if (isset($options['differences'])) { - // then we'll need an encoding dictionary - $this->numObj++; - $this->o_fontEncoding($this->numObj, 'new', $options); - $this->objects[$id]['info']['encodingDictionary'] = $this->numObj; - } else { - if (isset($options['encoding'])) { - // we can specify encoding here - switch ($options['encoding']) { - case 'WinAnsiEncoding': - case 'MacRomanEncoding': - case 'MacExpertEncoding': - $this->objects[$id]['info']['encoding'] = $options['encoding']; - break; - - case 'none': - break; - - default: - $this->objects[$id]['info']['encoding'] = 'WinAnsiEncoding'; - break; - } - } else { - $this->objects[$id]['info']['encoding'] = 'WinAnsiEncoding'; - } - } - - if ($this->fonts[$options['fontFileName']]['isUnicode']) { - // For Unicode fonts, we need to incorporate font data into - // sub-sections that are linked from the primary font section. - // Look at o_fontGIDtoCID and o_fontDescendentCID functions - // for more information. - // - // All of this code is adapted from the excellent changes made to - // transform FPDF to TCPDF (http://tcpdf.sourceforge.net/) - - $toUnicodeId = ++$this->numObj; - $this->o_toUnicode($toUnicodeId, 'new'); - $this->objects[$id]['info']['toUnicode'] = $toUnicodeId; - - $cidFontId = ++$this->numObj; - $this->o_fontDescendentCID($cidFontId, 'new', $options); - $this->objects[$id]['info']['cidFont'] = $cidFontId; - } - - // also tell the pages node about the new font - $this->o_pages($this->currentNode, 'font', ['fontNum' => $fontNum, 'objNum' => $id]); - break; - - case 'add': - $font_options = $this->processFont($id, $o['info']); - - if ($font_options !== false) { - foreach ($font_options as $k => $v) { - switch ($k) { - case 'BaseFont': - $o['info']['name'] = $v; - break; - case 'FirstChar': - case 'LastChar': - case 'Widths': - case 'FontDescriptor': - case 'SubType': - $this->addMessage('o_font ' . $k . " : " . $v); - $o['info'][$k] = $v; - break; - } - } - - // pass values down to descendent font - if (isset($o['info']['cidFont'])) { - $this->o_fontDescendentCID($o['info']['cidFont'], 'add', $font_options); - } - } - break; - - case 'out': - if ($this->fonts[$this->objects[$id]['info']['fontFileName']]['isUnicode']) { - // For Unicode fonts, we need to incorporate font data into - // sub-sections that are linked from the primary font section. - // Look at o_fontGIDtoCID and o_fontDescendentCID functions - // for more information. - // - // All of this code is adapted from the excellent changes made to - // transform FPDF to TCPDF (http://tcpdf.sourceforge.net/) - - $res = "\n$id 0 obj\n<fonts[$fontFileName])) { - return false; - } - - $font = &$this->fonts[$fontFileName]; - - $fileSuffix = $font['fileSuffix']; - $fileSuffixLower = strtolower($font['fileSuffix']); - $fbfile = "$fontFileName.$fileSuffix"; - $isTtfFont = $fileSuffixLower === 'ttf'; - $isPfbFont = $fileSuffixLower === 'pfb'; - - $this->addMessage('selectFont: checking for - ' . $fbfile); - - if (!$fileSuffix) { - $this->addMessage( - 'selectFont: pfb or ttf file not found, ok if this is one of the 14 standard fonts' - ); - - return false; - } else { - $adobeFontName = isset($font['PostScriptName']) ? $font['PostScriptName'] : $font['FontName']; - // $fontObj = $this->numObj; - $this->addMessage("selectFont: adding font file - $fbfile - $adobeFontName"); - - // find the array of font widths, and put that into an object. - $firstChar = -1; - $lastChar = 0; - $widths = []; - $cid_widths = []; - - foreach ($font['C'] as $num => $d) { - if (intval($num) > 0 || $num == '0') { - if (!$font['isUnicode']) { - // With Unicode, widths array isn't used - if ($lastChar > 0 && $num > $lastChar + 1) { - for ($i = $lastChar + 1; $i < $num; $i++) { - $widths[] = 0; - } - } - } - - $widths[] = $d; - - if ($font['isUnicode']) { - $cid_widths[$num] = $d; - } - - if ($firstChar == -1) { - $firstChar = $num; - } - - $lastChar = $num; - } - } - - // also need to adjust the widths for the differences array - if (isset($object['differences'])) { - foreach ($object['differences'] as $charNum => $charName) { - if ($charNum > $lastChar) { - if (!$object['isUnicode']) { - // With Unicode, widths array isn't used - for ($i = $lastChar + 1; $i <= $charNum; $i++) { - $widths[] = 0; - } - } - - $lastChar = $charNum; - } - - if (isset($font['C'][$charName])) { - $widths[$charNum - $firstChar] = $font['C'][$charName]; - if ($font['isUnicode']) { - $cid_widths[$charName] = $font['C'][$charName]; - } - } - } - } - - if ($font['isUnicode']) { - $font['CIDWidths'] = $cid_widths; - } - - $this->addMessage('selectFont: FirstChar = ' . $firstChar); - $this->addMessage('selectFont: LastChar = ' . $lastChar); - - $widthid = -1; - - if (!$font['isUnicode']) { - // With Unicode, widths array isn't used - - $this->numObj++; - $this->o_contents($this->numObj, 'new', 'raw'); - $this->objects[$this->numObj]['c'] .= '[' . implode(' ', $widths) . ']'; - $widthid = $this->numObj; - } - - $missing_width = 500; - $stemV = 70; - - if (isset($font['MissingWidth'])) { - $missing_width = $font['MissingWidth']; - } - if (isset($font['StdVW'])) { - $stemV = $font['StdVW']; - } else { - if (isset($font['Weight']) && preg_match('!(bold|black)!i', $font['Weight'])) { - $stemV = 120; - } - } - - // load the pfb file, and put that into an object too. - // note that pdf supports only binary format type 1 font files, though there is a - // simple utility to convert them from pfa to pfb. - if (!$font['isSubsetting']) { - $data = file_get_contents($fbfile); - } else { - $adobeFontName = $this->getFontSubsettingTag($font) . '+' . $adobeFontName; - $this->stringSubsets[$fontFileName][] = 32; // Force space if not in yet - - $subset = $this->stringSubsets[$fontFileName]; - sort($subset); - - // Load font - $font_obj = Font::load($fbfile); - $font_obj->parse(); - - // Define subset - $font_obj->setSubset($subset); - $font_obj->reduce(); - - // Write new font - $tmp_name = @tempnam($this->tmp, "cpdf_subset_"); - $font_obj->open($tmp_name, BinaryStream::modeReadWrite); - $font_obj->encode(["OS/2"]); - $font_obj->close(); - - // Parse the new font to get cid2gid and widths - $font_obj = Font::load($tmp_name); - - // Find Unicode char map table - $subtable = null; - foreach ($font_obj->getData("cmap", "subtables") as $_subtable) { - if ($_subtable["platformID"] == 0 || $_subtable["platformID"] == 3 && $_subtable["platformSpecificID"] == 1) { - $subtable = $_subtable; - break; - } - } - - if ($subtable) { - $glyphIndexArray = $subtable["glyphIndexArray"]; - $hmtx = $font_obj->getData("hmtx"); - - unset($glyphIndexArray[0xFFFF]); - - $cidtogid = str_pad('', max(array_keys($glyphIndexArray)) * 2 + 1, "\x00"); - $font['CIDWidths'] = []; - foreach ($glyphIndexArray as $cid => $gid) { - if ($cid >= 0 && $cid < 0xFFFF && $gid) { - $cidtogid[$cid * 2] = chr($gid >> 8); - $cidtogid[$cid * 2 + 1] = chr($gid & 0xFF); - } - - $width = $font_obj->normalizeFUnit(isset($hmtx[$gid]) ? $hmtx[$gid][0] : $hmtx[0][0]); - $font['CIDWidths'][$cid] = $width; - } - - $font['CIDtoGID'] = base64_encode(gzcompress($cidtogid)); - $font['CIDtoGID_Compressed'] = true; - - $data = file_get_contents($tmp_name); - } else { - $data = file_get_contents($fbfile); - } - - $font_obj->close(); - unlink($tmp_name); - } - - // create the font descriptor - $this->numObj++; - $fontDescriptorId = $this->numObj; - - $this->numObj++; - $pfbid = $this->numObj; - - // determine flags (more than a little flakey, hopefully will not matter much) - $flags = 0; - - if ($font['ItalicAngle'] != 0) { - $flags += pow(2, 6); - } - - if ($font['IsFixedPitch'] === 'true') { - $flags += 1; - } - - $flags += pow(2, 5); // assume non-sybolic - $list = [ - 'Ascent' => 'Ascender', - 'CapHeight' => 'Ascender', //FIXME: php-font-lib is not grabbing this value, so we'll fake it and use the Ascender value // 'CapHeight' - 'MissingWidth' => 'MissingWidth', - 'Descent' => 'Descender', - 'FontBBox' => 'FontBBox', - 'ItalicAngle' => 'ItalicAngle' - ]; - $fdopt = [ - 'Flags' => $flags, - 'FontName' => $adobeFontName, - 'StemV' => $stemV - ]; - - foreach ($list as $k => $v) { - if (isset($font[$v])) { - $fdopt[$k] = $font[$v]; - } - } - - if ($isPfbFont) { - $fdopt['FontFile'] = $pfbid; - } elseif ($isTtfFont) { - $fdopt['FontFile2'] = $pfbid; - } - - $this->o_fontDescriptor($fontDescriptorId, 'new', $fdopt); - - // embed the font program - $this->o_contents($this->numObj, 'new'); - $this->objects[$pfbid]['c'] .= $data; - - // determine the cruicial lengths within this file - if ($isPfbFont) { - $l1 = strpos($data, 'eexec') + 6; - $l2 = strpos($data, '00000000') - $l1; - $l3 = mb_strlen($data, '8bit') - $l2 - $l1; - $this->o_contents( - $this->numObj, - 'add', - ['Length1' => $l1, 'Length2' => $l2, 'Length3' => $l3] - ); - } elseif ($isTtfFont) { - $l1 = mb_strlen($data, '8bit'); - $this->o_contents($this->numObj, 'add', ['Length1' => $l1]); - } - - // tell the font object about all this new stuff - $options = [ - 'BaseFont' => $adobeFontName, - 'MissingWidth' => $missing_width, - 'Widths' => $widthid, - 'FirstChar' => $firstChar, - 'LastChar' => $lastChar, - 'FontDescriptor' => $fontDescriptorId - ]; - - if ($isTtfFont) { - $options['SubType'] = 'TrueType'; - } - - $this->addMessage("adding extra info to font.($fontObjId)"); - - foreach ($options as $fk => $fv) { - $this->addMessage("$fk : $fv"); - } - } - - return $options; - } - - /** - * A toUnicode section, needed for unicode fonts - * - * @param $id - * @param $action - * @return null|string - */ - protected function o_toUnicode($id, $action) - { - switch ($action) { - case 'new': - $this->objects[$id] = [ - 't' => 'toUnicode' - ]; - break; - case 'add': - break; - case 'out': - $ordering = 'UCS'; - $registry = 'Adobe'; - - if ($this->encrypted) { - $this->encryptInit($id); - $ordering = $this->ARC4($ordering); - $registry = $this->filterText($this->ARC4($registry), false, false); - } - - $stream = <<> def -/CMapName /Adobe-Identity-UCS def -/CMapType 2 def -1 begincodespacerange -<0000> -endcodespacerange -1 beginbfrange -<0000> <0000> -endbfrange -endcmap -CMapName currentdict /CMap defineresource pop -end -end -EOT; - - $res = "\n$id 0 obj\n"; - $res .= "<>\n"; - $res .= "stream\n" . $stream . "\nendstream" . "\nendobj"; - - return $res; - } - - return null; - } - - /** - * a font descriptor, needed for including additional fonts - * - * @param $id - * @param $action - * @param string $options - * @return null|string - */ - protected function o_fontDescriptor($id, $action, $options = '') - { - if ($action !== 'new') { - $o = &$this->objects[$id]; - } - - switch ($action) { - case 'new': - $this->objects[$id] = ['t' => 'fontDescriptor', 'info' => $options]; - break; - - case 'out': - $res = "\n$id 0 obj\n<< /Type /FontDescriptor\n"; - foreach ($o['info'] as $label => $value) { - switch ($label) { - case 'Ascent': - case 'CapHeight': - case 'Descent': - case 'Flags': - case 'ItalicAngle': - case 'StemV': - case 'AvgWidth': - case 'Leading': - case 'MaxWidth': - case 'MissingWidth': - case 'StemH': - case 'XHeight': - case 'CharSet': - if (mb_strlen($value, '8bit')) { - $res .= "/$label $value\n"; - } - - break; - case 'FontFile': - case 'FontFile2': - case 'FontFile3': - $res .= "/$label $value 0 R\n"; - break; - - case 'FontBBox': - $res .= "/$label [$value[0] $value[1] $value[2] $value[3]]\n"; - break; - - case 'FontName': - $res .= "/$label /$value\n"; - break; - } - } - - $res .= ">>\nendobj"; - - return $res; - } - - return null; - } - - /** - * the font encoding - * - * @param $id - * @param $action - * @param string $options - * @return null|string - */ - protected function o_fontEncoding($id, $action, $options = '') - { - if ($action !== 'new') { - $o = &$this->objects[$id]; - } - - switch ($action) { - case 'new': - // the options array should contain 'differences' and maybe 'encoding' - $this->objects[$id] = ['t' => 'fontEncoding', 'info' => $options]; - break; - - case 'out': - $res = "\n$id 0 obj\n<< /Type /Encoding\n"; - if (!isset($o['info']['encoding'])) { - $o['info']['encoding'] = 'WinAnsiEncoding'; - } - - if ($o['info']['encoding'] !== 'none') { - $res .= "/BaseEncoding /" . $o['info']['encoding'] . "\n"; - } - - $res .= "/Differences \n["; - - $onum = -100; - - foreach ($o['info']['differences'] as $num => $label) { - if ($num != $onum + 1) { - // we cannot make use of consecutive numbering - $res .= "\n$num /$label"; - } else { - $res .= " /$label"; - } - - $onum = $num; - } - - $res .= "\n]\n>>\nendobj"; - - return $res; - } - - return null; - } - - /** - * a descendent cid font, needed for unicode fonts - * - * @param $id - * @param $action - * @param string|array $options - * @return null|string - */ - protected function o_fontDescendentCID($id, $action, $options = '') - { - if ($action !== 'new') { - $o = &$this->objects[$id]; - } - - switch ($action) { - case 'new': - $this->objects[$id] = ['t' => 'fontDescendentCID', 'info' => $options]; - - // we need a CID system info section - $cidSystemInfoId = ++$this->numObj; - $this->o_cidSystemInfo($cidSystemInfoId, 'new'); - $this->objects[$id]['info']['cidSystemInfo'] = $cidSystemInfoId; - - // and a CID to GID map - $cidToGidMapId = ++$this->numObj; - $this->o_fontGIDtoCIDMap($cidToGidMapId, 'new', $options); - $this->objects[$id]['info']['cidToGidMap'] = $cidToGidMapId; - break; - - case 'add': - foreach ($options as $k => $v) { - switch ($k) { - case 'BaseFont': - $o['info']['name'] = $v; - break; - - case 'FirstChar': - case 'LastChar': - case 'MissingWidth': - case 'FontDescriptor': - case 'SubType': - $this->addMessage("o_fontDescendentCID $k : $v"); - $o['info'][$k] = $v; - break; - } - } - - // pass values down to cid to gid map - $this->o_fontGIDtoCIDMap($o['info']['cidToGidMap'], 'add', $options); - break; - - case 'out': - $res = "\n$id 0 obj\n"; - $res .= "<fonts[$o['info']['fontFileName']]['CIDWidths'])) { - $cid_widths = &$this->fonts[$o['info']['fontFileName']]['CIDWidths']; - $w = ''; - foreach ($cid_widths as $cid => $width) { - $w .= "$cid [$width] "; - } - $res .= "/W [$w]\n"; - } - - $res .= "/CIDToGIDMap " . $o['info']['cidToGidMap'] . " 0 R\n"; - $res .= ">>\n"; - $res .= "endobj"; - - return $res; - } - - return null; - } - - /** - * CID system info section, needed for unicode fonts - * - * @param $id - * @param $action - * @return null|string - */ - protected function o_cidSystemInfo($id, $action) - { - switch ($action) { - case 'new': - $this->objects[$id] = [ - 't' => 'cidSystemInfo' - ]; - break; - case 'add': - break; - case 'out': - $ordering = 'UCS'; - $registry = 'Adobe'; - - if ($this->encrypted) { - $this->encryptInit($id); - $ordering = $this->ARC4($ordering); - $registry = $this->ARC4($registry); - } - - - $res = "\n$id 0 obj\n"; - - $res .= '<objects[$id]; - } - - switch ($action) { - case 'new': - $this->objects[$id] = ['t' => 'fontGIDtoCIDMap', 'info' => $options]; - break; - - case 'out': - $res = "\n$id 0 obj\n"; - $fontFileName = $o['info']['fontFileName']; - $tmp = $this->fonts[$fontFileName]['CIDtoGID'] = base64_decode($this->fonts[$fontFileName]['CIDtoGID']); - - $compressed = isset($this->fonts[$fontFileName]['CIDtoGID_Compressed']) && - $this->fonts[$fontFileName]['CIDtoGID_Compressed']; - - if (!$compressed && isset($o['raw'])) { - $res .= $tmp; - } else { - $res .= "<<"; - - if (!$compressed && $this->compressionReady && $this->options['compression']) { - // then implement ZLIB based compression on this content stream - $compressed = true; - $tmp = gzcompress($tmp, 6); - } - if ($compressed) { - $res .= "\n/Filter /FlateDecode"; - } - - if ($this->encrypted) { - $this->encryptInit($id); - $tmp = $this->ARC4($tmp); - } - - $res .= "\n/Length " . mb_strlen($tmp, '8bit') . ">>\nstream\n$tmp\nendstream"; - } - - $res .= "\nendobj"; - - return $res; - } - - return null; - } - - /** - * the document procset, solves some problems with printing to old PS printers - * - * @param $id - * @param $action - * @param string $options - * @return null|string - */ - protected function o_procset($id, $action, $options = '') - { - if ($action !== 'new') { - $o = &$this->objects[$id]; - } - - switch ($action) { - case 'new': - $this->objects[$id] = ['t' => 'procset', 'info' => ['PDF' => 1, 'Text' => 1]]; - $this->o_pages($this->currentNode, 'procset', $id); - $this->procsetObjectId = $id; - break; - - case 'add': - // this is to add new items to the procset list, despite the fact that this is considered - // obsolete, the items are required for printing to some postscript printers - switch ($options) { - case 'ImageB': - case 'ImageC': - case 'ImageI': - $o['info'][$options] = 1; - break; - } - break; - - case 'out': - $res = "\n$id 0 obj\n["; - foreach ($o['info'] as $label => $val) { - $res .= "/$label "; - } - $res .= "]\nendobj"; - - return $res; - } - - return null; - } - - /** - * define the document information - * - * @param $id - * @param $action - * @param string $options - * @return null|string - */ - protected function o_info($id, $action, $options = '') - { - switch ($action) { - case 'new': - $this->infoObject = $id; - $date = 'D:' . @date('Ymd'); - $this->objects[$id] = [ - 't' => 'info', - 'info' => [ - 'Producer' => 'CPDF (dompdf)', - 'CreationDate' => $date - ] - ]; - break; - case 'Title': - case 'Author': - case 'Subject': - case 'Keywords': - case 'Creator': - case 'Producer': - case 'CreationDate': - case 'ModDate': - case 'Trapped': - $this->objects[$id]['info'][$action] = $options; - break; - - case 'out': - $encrypted = $this->encrypted; - if ($encrypted) { - $this->encryptInit($id); - } - - $res = "\n$id 0 obj\n<<\n"; - $o = &$this->objects[$id]; - foreach ($o['info'] as $k => $v) { - $res .= "/$k ("; - - // dates must be outputted as-is, without Unicode transformations - if ($k !== 'CreationDate' && $k !== 'ModDate') { - $v = $this->utf8toUtf16BE($v); - } - - if ($encrypted) { - $v = $this->ARC4($v); - } - - $res .= $this->filterText($v, false, false); - $res .= ")\n"; - } - - $res .= ">>\nendobj"; - - return $res; - } - - return null; - } - - /** - * an action object, used to link to URLS initially - * - * @param $id - * @param $action - * @param string $options - * @return null|string - */ - protected function o_action($id, $action, $options = '') - { - if ($action !== 'new') { - $o = &$this->objects[$id]; - } - - switch ($action) { - case 'new': - if (is_array($options)) { - $this->objects[$id] = ['t' => 'action', 'info' => $options, 'type' => $options['type']]; - } else { - // then assume a URI action - $this->objects[$id] = ['t' => 'action', 'info' => $options, 'type' => 'URI']; - } - break; - - case 'out': - if ($this->encrypted) { - $this->encryptInit($id); - } - - $res = "\n$id 0 obj\n<< /Type /Action"; - switch ($o['type']) { - case 'ilink': - if (!isset($this->destinations[(string)$o['info']['label']])) { - break; - } - - // there will be an 'label' setting, this is the name of the destination - $res .= "\n/S /GoTo\n/D " . $this->destinations[(string)$o['info']['label']] . " 0 R"; - break; - - case 'URI': - $res .= "\n/S /URI\n/URI ("; - if ($this->encrypted) { - $res .= $this->filterText($this->ARC4($o['info']), false, false); - } else { - $res .= $this->filterText($o['info'], false, false); - } - - $res .= ")"; - break; - } - - $res .= "\n>>\nendobj"; - - return $res; - } - - return null; - } - - /** - * an annotation object, this will add an annotation to the current page. - * initially will support just link annotations - * - * @param $id - * @param $action - * @param string $options - * @return null|string - */ - protected function o_annotation($id, $action, $options = '') - { - if ($action !== 'new') { - $o = &$this->objects[$id]; - } - - switch ($action) { - case 'new': - // add the annotation to the current page - $pageId = $this->currentPage; - $this->o_page($pageId, 'annot', $id); - - // and add the action object which is going to be required - switch ($options['type']) { - case 'link': - $this->objects[$id] = ['t' => 'annotation', 'info' => $options]; - $this->numObj++; - $this->o_action($this->numObj, 'new', $options['url']); - $this->objects[$id]['info']['actionId'] = $this->numObj; - break; - - case 'ilink': - // this is to a named internal link - $label = $options['label']; - $this->objects[$id] = ['t' => 'annotation', 'info' => $options]; - $this->numObj++; - $this->o_action($this->numObj, 'new', ['type' => 'ilink', 'label' => $label]); - $this->objects[$id]['info']['actionId'] = $this->numObj; - break; - } - break; - - case 'out': - $res = "\n$id 0 obj\n<< /Type /Annot"; - switch ($o['info']['type']) { - case 'link': - case 'ilink': - $res .= "\n/Subtype /Link"; - break; - } - $res .= "\n/A " . $o['info']['actionId'] . " 0 R"; - $res .= "\n/Border [0 0 0]"; - $res .= "\n/H /I"; - $res .= "\n/Rect [ "; - - foreach ($o['info']['rect'] as $v) { - $res .= sprintf("%.4F ", $v); - } - - $res .= "]"; - $res .= "\n>>\nendobj"; - - return $res; - } - - return null; - } - - /** - * a page object, it also creates a contents object to hold its contents - * - * @param $id - * @param $action - * @param string $options - * @return null|string - */ - protected function o_page($id, $action, $options = '') - { - if ($action !== 'new') { - $o = &$this->objects[$id]; - } - - switch ($action) { - case 'new': - $this->numPages++; - $this->objects[$id] = [ - 't' => 'page', - 'info' => [ - 'parent' => $this->currentNode, - 'pageNum' => $this->numPages, - 'mediaBox' => $this->objects[$this->currentNode]['info']['mediaBox'] - ] - ]; - - if (is_array($options)) { - // then this must be a page insertion, array should contain 'rid','pos'=[before|after] - $options['id'] = $id; - $this->o_pages($this->currentNode, 'page', $options); - } else { - $this->o_pages($this->currentNode, 'page', $id); - } - - $this->currentPage = $id; - //make a contents object to go with this page - $this->numObj++; - $this->o_contents($this->numObj, 'new', $id); - $this->currentContents = $this->numObj; - $this->objects[$id]['info']['contents'] = []; - $this->objects[$id]['info']['contents'][] = $this->numObj; - - $match = ($this->numPages % 2 ? 'odd' : 'even'); - foreach ($this->addLooseObjects as $oId => $target) { - if ($target === 'all' || $match === $target) { - $this->objects[$id]['info']['contents'][] = $oId; - } - } - break; - - case 'content': - $o['info']['contents'][] = $options; - break; - - case 'annot': - // add an annotation to this page - if (!isset($o['info']['annot'])) { - $o['info']['annot'] = []; - } - - // $options should contain the id of the annotation dictionary - $o['info']['annot'][] = $options; - break; - - case 'out': - $res = "\n$id 0 obj\n<< /Type /Page"; - if (isset($o['info']['mediaBox'])) { - $tmp = $o['info']['mediaBox']; - $res .= "\n/MediaBox [" . sprintf( - '%.3F %.3F %.3F %.3F', - $tmp[0], - $tmp[1], - $tmp[2], - $tmp[3] - ) . ']'; - } - $res .= "\n/Parent " . $o['info']['parent'] . " 0 R"; - - if (isset($o['info']['annot'])) { - $res .= "\n/Annots ["; - foreach ($o['info']['annot'] as $aId) { - $res .= " $aId 0 R"; - } - $res .= " ]"; - } - - $count = count($o['info']['contents']); - if ($count == 1) { - $res .= "\n/Contents " . $o['info']['contents'][0] . " 0 R"; - } else { - if ($count > 1) { - $res .= "\n/Contents [\n"; - - // reverse the page contents so added objects are below normal content - //foreach (array_reverse($o['info']['contents']) as $cId) { - // Back to normal now that I've got transparency working --Benj - foreach ($o['info']['contents'] as $cId) { - $res .= "$cId 0 R\n"; - } - $res .= "]"; - } - } - - $res .= "\n>>\nendobj"; - - return $res; - } - - return null; - } - - /** - * the contents objects hold all of the content which appears on pages - * - * @param $id - * @param $action - * @param string|array $options - * @return null|string - */ - protected function o_contents($id, $action, $options = '') - { - if ($action !== 'new') { - $o = &$this->objects[$id]; - } - - switch ($action) { - case 'new': - $this->objects[$id] = ['t' => 'contents', 'c' => '', 'info' => []]; - if (mb_strlen($options, '8bit') && intval($options)) { - // then this contents is the primary for a page - $this->objects[$id]['onPage'] = $options; - } else { - if ($options === 'raw') { - // then this page contains some other type of system object - $this->objects[$id]['raw'] = 1; - } - } - break; - - case 'add': - // add more options to the declaration - foreach ($options as $k => $v) { - $o['info'][$k] = $v; - } - - case 'out': - $tmp = $o['c']; - $res = "\n$id 0 obj\n"; - - if (isset($this->objects[$id]['raw'])) { - $res .= $tmp; - } else { - $res .= "<<"; - if ($this->compressionReady && $this->options['compression']) { - // then implement ZLIB based compression on this content stream - $res .= " /Filter /FlateDecode"; - $tmp = gzcompress($tmp, 6); - } - - if ($this->encrypted) { - $this->encryptInit($id); - $tmp = $this->ARC4($tmp); - } - - foreach ($o['info'] as $k => $v) { - $res .= "\n/$k $v"; - } - - $res .= "\n/Length " . mb_strlen($tmp, '8bit') . " >>\nstream\n$tmp\nendstream"; - } - - $res .= "\nendobj"; - - return $res; - } - - return null; - } - - /** - * @param $id - * @param $action - * @return string|null - */ - protected function o_embedjs($id, $action) - { - switch ($action) { - case 'new': - $this->objects[$id] = [ - 't' => 'embedjs', - 'info' => [ - 'Names' => '[(EmbeddedJS) ' . ($id + 1) . ' 0 R]' - ] - ]; - break; - - case 'out': - $o = &$this->objects[$id]; - $res = "\n$id 0 obj\n<< "; - foreach ($o['info'] as $k => $v) { - $res .= "\n/$k $v"; - } - $res .= "\n>>\nendobj"; - - return $res; - } - - return null; - } - - /** - * @param $id - * @param $action - * @param string $code - * @return null|string - */ - protected function o_javascript($id, $action, $code = '') - { - switch ($action) { - case 'new': - $this->objects[$id] = [ - 't' => 'javascript', - 'info' => [ - 'S' => '/JavaScript', - 'JS' => '(' . $this->filterText($code, true, false) . ')', - ] - ]; - break; - - case 'out': - $o = &$this->objects[$id]; - $res = "\n$id 0 obj\n<< "; - - foreach ($o['info'] as $k => $v) { - $res .= "\n/$k $v"; - } - $res .= "\n>>\nendobj"; - - return $res; - } - - return null; - } - - /** - * an image object, will be an XObject in the document, includes description and data - * - * @param $id - * @param $action - * @param string $options - * @return null|string - */ - protected function o_image($id, $action, $options = '') - { - switch ($action) { - case 'new': - // make the new object - $this->objects[$id] = ['t' => 'image', 'data' => &$options['data'], 'info' => []]; - - $info =& $this->objects[$id]['info']; - - $info['Type'] = '/XObject'; - $info['Subtype'] = '/Image'; - $info['Width'] = $options['iw']; - $info['Height'] = $options['ih']; - - if (isset($options['masked']) && $options['masked']) { - $info['SMask'] = ($this->numObj - 1) . ' 0 R'; - } - - if (!isset($options['type']) || $options['type'] === 'jpg') { - if (!isset($options['channels'])) { - $options['channels'] = 3; - } - - switch ($options['channels']) { - case 1: - $info['ColorSpace'] = '/DeviceGray'; - break; - case 4: - $info['ColorSpace'] = '/DeviceCMYK'; - break; - default: - $info['ColorSpace'] = '/DeviceRGB'; - break; - } - - if ($info['ColorSpace'] === '/DeviceCMYK') { - $info['Decode'] = '[1 0 1 0 1 0 1 0]'; - } - - $info['Filter'] = '/DCTDecode'; - $info['BitsPerComponent'] = 8; - } else { - if ($options['type'] === 'png') { - $info['Filter'] = '/FlateDecode'; - $info['DecodeParms'] = '<< /Predictor 15 /Colors ' . $options['ncolor'] . ' /Columns ' . $options['iw'] . ' /BitsPerComponent ' . $options['bitsPerComponent'] . '>>'; - - if ($options['isMask']) { - $info['ColorSpace'] = '/DeviceGray'; - } else { - if (mb_strlen($options['pdata'], '8bit')) { - $tmp = ' [ /Indexed /DeviceRGB ' . (mb_strlen($options['pdata'], '8bit') / 3 - 1) . ' '; - $this->numObj++; - $this->o_contents($this->numObj, 'new'); - $this->objects[$this->numObj]['c'] = $options['pdata']; - $tmp .= $this->numObj . ' 0 R'; - $tmp .= ' ]'; - $info['ColorSpace'] = $tmp; - - if (isset($options['transparency'])) { - $transparency = $options['transparency']; - switch ($transparency['type']) { - case 'indexed': - $tmp = ' [ ' . $transparency['data'] . ' ' . $transparency['data'] . '] '; - $info['Mask'] = $tmp; - break; - - case 'color-key': - $tmp = ' [ ' . - $transparency['r'] . ' ' . $transparency['r'] . - $transparency['g'] . ' ' . $transparency['g'] . - $transparency['b'] . ' ' . $transparency['b'] . - ' ] '; - $info['Mask'] = $tmp; - break; - } - } - } else { - if (isset($options['transparency'])) { - $transparency = $options['transparency']; - - switch ($transparency['type']) { - case 'indexed': - $tmp = ' [ ' . $transparency['data'] . ' ' . $transparency['data'] . '] '; - $info['Mask'] = $tmp; - break; - - case 'color-key': - $tmp = ' [ ' . - $transparency['r'] . ' ' . $transparency['r'] . ' ' . - $transparency['g'] . ' ' . $transparency['g'] . ' ' . - $transparency['b'] . ' ' . $transparency['b'] . - ' ] '; - $info['Mask'] = $tmp; - break; - } - } - $info['ColorSpace'] = '/' . $options['color']; - } - } - - $info['BitsPerComponent'] = $options['bitsPerComponent']; - } - } - - // assign it a place in the named resource dictionary as an external object, according to - // the label passed in with it. - $this->o_pages($this->currentNode, 'xObject', ['label' => $options['label'], 'objNum' => $id]); - - // also make sure that we have the right procset object for it. - $this->o_procset($this->procsetObjectId, 'add', 'ImageC'); - break; - - case 'out': - $o = &$this->objects[$id]; - $tmp = &$o['data']; - $res = "\n$id 0 obj\n<<"; - - foreach ($o['info'] as $k => $v) { - $res .= "\n/$k $v"; - } - - if ($this->encrypted) { - $this->encryptInit($id); - $tmp = $this->ARC4($tmp); - } - - $res .= "\n/Length " . mb_strlen($tmp, '8bit') . ">>\nstream\n$tmp\nendstream\nendobj"; - - return $res; - } - - return null; - } - - /** - * graphics state object - * - * @param $id - * @param $action - * @param string $options - * @return null|string - */ - protected function o_extGState($id, $action, $options = "") - { - static $valid_params = [ - "LW", - "LC", - "LC", - "LJ", - "ML", - "D", - "RI", - "OP", - "op", - "OPM", - "Font", - "BG", - "BG2", - "UCR", - "TR", - "TR2", - "HT", - "FL", - "SM", - "SA", - "BM", - "SMask", - "CA", - "ca", - "AIS", - "TK" - ]; - - switch ($action) { - case "new": - $this->objects[$id] = ['t' => 'extGState', 'info' => $options]; - - // Tell the pages about the new resource - $this->numStates++; - $this->o_pages($this->currentNode, 'extGState', ["objNum" => $id, "stateNum" => $this->numStates]); - break; - - case "out": - $o = &$this->objects[$id]; - $res = "\n$id 0 obj\n<< /Type /ExtGState\n"; - - foreach ($o["info"] as $k => $v) { - if (!in_array($k, $valid_params)) { - continue; - } - $res .= "/$k $v\n"; - } - - $res .= ">>\nendobj"; - - return $res; - } - - return null; - } - - /** - * @param integer $id - * @param string $action - * @param mixed $options - * @return string - */ - protected function o_xobject($id, $action, $options = '') - { - switch ($action) { - case 'new': - $this->objects[$id] = ['t' => 'xobject', 'info' => $options, 'c' => '']; - break; - - case 'procset': - $this->objects[$id]['procset'] = $options; - break; - - case 'font': - $this->objects[$id]['fonts'][$options['fontNum']] = [ - 'objNum' => $options['objNum'], - 'fontNum' => $options['fontNum'] - ]; - break; - - case 'xObject': - $this->objects[$id]['xObjects'][] = ['objNum' => $options['objNum'], 'label' => $options['label']]; - break; - - case 'out': - $o = &$this->objects[$id]; - $res = "\n$id 0 obj\n<< /Type /XObject\n"; - - foreach ($o["info"] as $k => $v) { - switch ($k) { - case 'Subtype': - $res .= "/Subtype /$v\n"; - break; - case 'bbox': - $res .= "/BBox ["; - foreach ($v as $value) { - $res .= sprintf("%.4F ", $value); - } - $res .= "]\n"; - break; - default: - $res .= "/$k $v\n"; - break; - } - } - $res .= "/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]\n"; - - $res .= "/Resources <<"; - if (isset($o['procset'])) { - $res .= "\n/ProcSet " . $o['procset'] . " 0 R"; - } else { - $res .= "\n/ProcSet [/PDF /Text /ImageB /ImageC /ImageI]"; - } - if (isset($o['fonts']) && count($o['fonts'])) { - $res .= "\n/Font << "; - foreach ($o['fonts'] as $finfo) { - $res .= "\n/F" . $finfo['fontNum'] . " " . $finfo['objNum'] . " 0 R"; - } - $res .= "\n>>"; - } - if (isset($o['xObjects']) && count($o['xObjects'])) { - $res .= "\n/XObject << "; - foreach ($o['xObjects'] as $finfo) { - $res .= "\n/" . $finfo['label'] . " " . $finfo['objNum'] . " 0 R"; - } - $res .= "\n>>"; - } - $res .= "\n>>\n"; - - $tmp = $o["c"]; - if ($this->compressionReady && $this->options['compression']) { - // then implement ZLIB based compression on this content stream - $res .= " /Filter /FlateDecode\n"; - $tmp = gzcompress($tmp, 6); - } - - if ($this->encrypted) { - $this->encryptInit($id); - $tmp = $this->ARC4($tmp); - } - - $res .= "/Length " . mb_strlen($tmp, '8bit') . " >>\n"; - $res .= "stream\n" . $tmp . "\nendstream" . "\nendobj"; - - return $res; - } - - return null; - } - - /** - * @param $id - * @param $action - * @param string $options - * @return null|string - */ - protected function o_acroform($id, $action, $options = '') - { - switch ($action) { - case "new": - $this->o_catalog($this->catalogId, 'acroform', $id); - $this->objects[$id] = array('t' => 'acroform', 'info' => $options); - break; - - case 'addfield': - $this->objects[$id]['info']['Fields'][] = $options; - break; - - case 'font': - $this->objects[$id]['fonts'][$options['fontNum']] = [ - 'objNum' => $options['objNum'], - 'fontNum' => $options['fontNum'] - ]; - break; - - case "out": - $o = &$this->objects[$id]; - $res = "\n$id 0 obj\n<<"; - - foreach ($o["info"] as $k => $v) { - switch ($k) { - case 'Fields': - $res .= " /Fields ["; - foreach ($v as $i) { - $res .= "$i 0 R "; - } - $res .= "]\n"; - break; - default: - $res .= "/$k $v\n"; - } - } - - $res .= "/DR <<\n"; - if (isset($o['fonts']) && count($o['fonts'])) { - $res .= "/Font << \n"; - foreach ($o['fonts'] as $finfo) { - $res .= "/F" . $finfo['fontNum'] . " " . $finfo['objNum'] . " 0 R\n"; - } - $res .= ">>\n"; - } - $res .= ">>\n"; - - $res .= ">>\nendobj"; - - return $res; - } - - return null; - } - - /** - * @param $id - * @param $action - * @param mixed $options - * @return null|string - */ - protected function o_field($id, $action, $options = '') - { - switch ($action) { - case "new": - $this->o_page($options['pageid'], 'annot', $id); - $this->o_acroform($this->acroFormId, 'addfield', $id); - $this->objects[$id] = ['t' => 'field', 'info' => $options]; - break; - - case 'set': - $this->objects[$id]['info'] = array_merge($this->objects[$id]['info'], $options); - break; - - case "out": - $o = &$this->objects[$id]; - $res = "\n$id 0 obj\n<< /Type /Annot /Subtype /Widget \n"; - - $encrypted = $this->encrypted; - if ($encrypted) { - $this->encryptInit($id); - } - - foreach ($o["info"] as $k => $v) { - switch ($k) { - case 'pageid': - $res .= "/P $v 0 R\n"; - break; - case 'value': - if ($encrypted) { - $v = $this->filterText($this->ARC4($v), false, false); - } - $res .= "/V ($v)\n"; - break; - case 'refvalue': - $res .= "/V $v 0 R\n"; - break; - case 'da': - if ($encrypted) { - $v = $this->filterText($this->ARC4($v), false, false); - } - $res .= "/DA ($v)\n"; - break; - case 'options': - $res .= "/Opt [\n"; - foreach ($v as $opt) { - if ($encrypted) { - $opt = $this->filterText($this->ARC4($opt), false, false); - } - $res .= "($opt)\n"; - } - $res .= "]\n"; - break; - case 'rect': - $res .= "/Rect ["; - foreach ($v as $value) { - $res .= sprintf("%.4F ", $value); - } - $res .= "]\n"; - break; - case 'appearance': - $res .= "/AP << "; - foreach ($v as $a => $ref) { - $res .= "/$a $ref 0 R "; - } - $res .= ">>\n"; - break; - case 'T': - if ($encrypted) { - $v = $this->filterText($this->ARC4($v), false, false); - } - $res .= "/T ($v)\n"; - break; - default: - $res .= "/$k $v\n"; - } - - } - - $res .= ">>\nendobj"; - - return $res; - } - - return null; - } - - /** - * - * @param $id - * @param $action - * @param string $options - * @return null|string - */ - protected function o_sig($id, $action, $options = '') - { - $sign_maxlen = $this->signatureMaxLen; - - switch ($action) { - case "new": - $this->objects[$id] = array('t' => 'sig', 'info' => $options); - $this->byteRange[$id] = ['t' => 'sig']; - break; - - case 'byterange': - $o = &$this->objects[$id]; - $content =& $options['content']; - $content_len = strlen($content); - $pos = strpos($content, sprintf("/ByteRange [ %'.010d", $id)); - $len = strlen('/ByteRange [ ********** ********** ********** ********** ]'); - $rangeStartPos = $pos + $len + 1 + 10; // before '<' - $content = substr_replace($content, str_pad(sprintf('/ByteRange [ 0 %u %u %u ]', $rangeStartPos, $rangeStartPos + $sign_maxlen + 2, $content_len - 2 - $sign_maxlen - $rangeStartPos), $len, ' ', STR_PAD_RIGHT), $pos, $len); - - $fuid = uniqid(); - $tmpInput = $this->tmp . "/pkcs7.tmp." . $fuid . '.in'; - $tmpOutput = $this->tmp . "/pkcs7.tmp." . $fuid . '.out'; - - if (file_put_contents($tmpInput, substr($content, 0, $rangeStartPos)) === false) { - throw new \Exception("Unable to write temporary file for signing."); - } - if (file_put_contents($tmpInput, substr($content, $rangeStartPos + 2 + $sign_maxlen), - FILE_APPEND) === false) { - throw new \Exception("Unable to write temporary file for signing."); - } - - if (openssl_pkcs7_sign($tmpInput, $tmpOutput, - $o['info']['SignCert'], - array($o['info']['PrivKey'], $o['info']['Password']), - array(), PKCS7_BINARY | PKCS7_DETACHED) === false) { - throw new \Exception("Failed to prepare signature."); - } - - $signature = file_get_contents($tmpOutput); - - unlink($tmpInput); - unlink($tmpOutput); - - $sign = substr($signature, (strpos($signature, "%%EOF\n\n------") + 13)); - list($head, $signature) = explode("\n\n", $sign); - - $signature = base64_decode(trim($signature)); - - $signature = current(unpack('H*', $signature)); - $signature = str_pad($signature, $sign_maxlen, '0'); - $siglen = strlen($signature); - if (strlen($signature) > $sign_maxlen) { - throw new \Exception("Signature length ($siglen) exceeds the $sign_maxlen limit."); - } - - $content = substr_replace($content, $signature, $rangeStartPos + 1, $sign_maxlen); - break; - - case "out": - $res = "\n$id 0 obj\n<<\n"; - - $encrypted = $this->encrypted; - if ($encrypted) { - $this->encryptInit($id); - } - - $res .= "/ByteRange " .sprintf("[ %'.010d ********** ********** ********** ]\n", $id); - $res .= "/Contents <" . str_pad('', $sign_maxlen, '0') . ">\n"; - $res .= "/Filter/Adobe.PPKLite\n"; //PPKMS \n"; - $res .= "/Type/Sig/SubFilter/adbe.pkcs7.detached \n"; - - $date = "D:" . substr_replace(date('YmdHisO'), '\'', -2, 0) . '\''; - if ($encrypted) { - $date = $this->ARC4($date); - } - - $res .= "/M ($date)\n"; - $res .= "/Prop_Build << /App << /Name /DomPDF >> /Filter << /Name /Adobe.PPKLite >> >>\n"; - - $o = &$this->objects[$id]; - foreach ($o['info'] as $k => $v) { - switch ($k) { - case 'Name': - case 'Location': - case 'Reason': - case 'ContactInfo': - if ($v !== null && $v !== '') { - $res .= "/$k (" . - ($encrypted ? $this->filterText($this->ARC4($v), false, false) : $v) . ") \n"; - } - break; - } - } - $res .= ">>\nendobj"; - - return $res; - } - - return null; - } - - /** - * encryption object. - * - * @param $id - * @param $action - * @param string $options - * @return string|null - */ - protected function o_encryption($id, $action, $options = '') - { - switch ($action) { - case 'new': - // make the new object - $this->objects[$id] = ['t' => 'encryption', 'info' => $options]; - $this->arc4_objnum = $id; - break; - - case 'keys': - // figure out the additional parameters required - $pad = chr(0x28) . chr(0xBF) . chr(0x4E) . chr(0x5E) . chr(0x4E) . chr(0x75) . chr(0x8A) . chr(0x41) - . chr(0x64) . chr(0x00) . chr(0x4E) . chr(0x56) . chr(0xFF) . chr(0xFA) . chr(0x01) . chr(0x08) - . chr(0x2E) . chr(0x2E) . chr(0x00) . chr(0xB6) . chr(0xD0) . chr(0x68) . chr(0x3E) . chr(0x80) - . chr(0x2F) . chr(0x0C) . chr(0xA9) . chr(0xFE) . chr(0x64) . chr(0x53) . chr(0x69) . chr(0x7A); - - $info = $this->objects[$id]['info']; - - $len = mb_strlen($info['owner'], '8bit'); - - if ($len > 32) { - $owner = substr($info['owner'], 0, 32); - } else { - if ($len < 32) { - $owner = $info['owner'] . substr($pad, 0, 32 - $len); - } else { - $owner = $info['owner']; - } - } - - $len = mb_strlen($info['user'], '8bit'); - if ($len > 32) { - $user = substr($info['user'], 0, 32); - } else { - if ($len < 32) { - $user = $info['user'] . substr($pad, 0, 32 - $len); - } else { - $user = $info['user']; - } - } - - $tmp = $this->md5_16($owner); - $okey = substr($tmp, 0, 5); - $this->ARC4_init($okey); - $ovalue = $this->ARC4($user); - $this->objects[$id]['info']['O'] = $ovalue; - - // now make the u value, phew. - $tmp = $this->md5_16( - $user . $ovalue . chr($info['p']) . chr(255) . chr(255) . chr(255) . hex2bin($this->fileIdentifier) - ); - - $ukey = substr($tmp, 0, 5); - $this->ARC4_init($ukey); - $this->encryptionKey = $ukey; - $this->encrypted = true; - $uvalue = $this->ARC4($pad); - $this->objects[$id]['info']['U'] = $uvalue; - // initialize the arc4 array - break; - - case 'out': - $o = &$this->objects[$id]; - - $res = "\n$id 0 obj\n<<"; - $res .= "\n/Filter /Standard"; - $res .= "\n/V 1"; - $res .= "\n/R 2"; - $res .= "\n/O (" . $this->filterText($o['info']['O'], false, false) . ')'; - $res .= "\n/U (" . $this->filterText($o['info']['U'], false, false) . ')'; - // and the p-value needs to be converted to account for the twos-complement approach - $o['info']['p'] = (($o['info']['p'] ^ 255) + 1) * -1; - $res .= "\n/P " . ($o['info']['p']); - $res .= "\n>>\nendobj"; - - return $res; - } - - return null; - } - - protected function o_indirect_references($id, $action, $options = null) - { - switch ($action) { - case 'new': - case 'add': - if ($id === 0) { - $id = ++$this->numObj; - $this->o_catalog($this->catalogId, 'names', $id); - $this->objects[$id] = ['t' => 'indirect_references', 'info' => $options]; - $this->indirectReferenceId = $id; - } else { - $this->objects[$id]['info'] = array_merge($this->objects[$id]['info'], $options); - } - break; - case 'out': - $res = "\n$id 0 obj << "; - - foreach ($this->objects[$id]['info'] as $referenceObjName => $referenceObjId) { - $res .= "/$referenceObjName $referenceObjId 0 R "; - } - - $res .= ">> endobj"; - return $res; - } - - return null; - } - - protected function o_names($id, $action, $options = null) - { - switch ($action) { - case 'new': - case 'add': - if ($id === 0) { - $id = ++$this->numObj; - $this->objects[$id] = ['t' => 'names', 'info' => [$options]]; - $this->o_indirect_references($this->indirectReferenceId, 'add', ['EmbeddedFiles' => $id]); - $this->embeddedFilesId = $id; - } else { - $this->objects[$id]['info'][] = $options; - } - break; - case 'out': - $info = &$this->objects[$id]['info']; - $res = ''; - if (count($info) > 0) { - $res = "\n$id 0 obj << /Names [ "; - - if ($this->encrypted) { - $this->encryptInit($id); - } - - foreach ($info as $entry) { - if ($this->encrypted) { - $filename = $this->ARC4($entry['filename']); - } else { - $filename = $entry['filename']; - } - - $res .= "($filename) " . $entry['dict_reference'] . " 0 R "; - } - - $res .= "] >> endobj"; - } - return $res; - } - - return null; - } - - protected function o_embedded_file_dictionary($id, $action, $options = null) - { - switch ($action) { - case 'new': - $embeddedFileId = ++$this->numObj; - $options['embedded_reference'] = $embeddedFileId; - $this->objects[$id] = ['t' => 'embedded_file_dictionary', 'info' => $options]; - $this->o_embedded_file($embeddedFileId, 'new', $options); - $options['dict_reference'] = $id; - $this->o_names($this->embeddedFilesId, 'add', $options); - break; - case 'out': - $info = &$this->objects[$id]['info']; - $filename = $this->utf8toUtf16BE($info['filename']); - $description = $this->utf8toUtf16BE($info['description']); - - if ($this->encrypted) { - $this->encryptInit($id); - $filename = $this->ARC4($filename); - $description = $this->ARC4($description); - } - - $filename = $this->filterText($filename, false, false); - $description = $this->filterText($description, false, false); - - $res = "\n$id 0 obj <>"; - $res .= " /F ($filename) /UF ($filename) /Desc ($description)"; - $res .= " >> endobj"; - return $res; - } - - return null; - } - - protected function o_embedded_file($id, $action, $options = null): ?string - { - switch ($action) { - case 'new': - $this->objects[$id] = ['t' => 'embedded_file', 'info' => $options]; - break; - case 'out': - $info = &$this->objects[$id]['info']; - - if ($this->compressionReady) { - $filepath = $info['filepath']; - $checksum = md5_file($filepath); - $f = fopen($filepath, "rb"); - - $file_content_compressed = ''; - $deflateContext = deflate_init(ZLIB_ENCODING_DEFLATE, ['level' => 6]); - while (($block = fread($f, 8192))) { - $file_content_compressed .= deflate_add($deflateContext, $block, ZLIB_NO_FLUSH); - } - $file_content_compressed .= deflate_add($deflateContext, '', ZLIB_FINISH); - $file_size_uncompressed = ftell($f); - fclose($f); - } else { - $file_content = file_get_contents($info['filepath']); - $file_size_uncompressed = mb_strlen($file_content, '8bit'); - $checksum = md5($file_content); - } - - if ($this->encrypted) { - $this->encryptInit($id); - $checksum = $this->ARC4($checksum); - $file_content_compressed = $this->ARC4($file_content_compressed); - } - $file_size_compressed = mb_strlen($file_content_compressed, '8bit'); - - $res = "\n$id 0 obj <>" . - " /Type/EmbeddedFile /Filter/FlateDecode" . - " /Length $file_size_compressed >> stream\n$file_content_compressed\nendstream\nendobj"; - - return $res; - } - - return null; - } - - /** - * ARC4 functions - * A series of function to implement ARC4 encoding in PHP - */ - - /** - * calculate the 16 byte version of the 128 bit md5 digest of the string - * - * @param $string - * @return string - */ - function md5_16($string) - { - $tmp = md5($string); - $out = ''; - for ($i = 0; $i <= 30; $i = $i + 2) { - $out .= chr(hexdec(substr($tmp, $i, 2))); - } - - return $out; - } - - /** - * initialize the encryption for processing a particular object - * - * @param $id - */ - function encryptInit($id) - { - $tmp = $this->encryptionKey; - $hex = dechex($id); - if (mb_strlen($hex, '8bit') < 6) { - $hex = substr('000000', 0, 6 - mb_strlen($hex, '8bit')) . $hex; - } - $tmp .= chr(hexdec(substr($hex, 4, 2))) - . chr(hexdec(substr($hex, 2, 2))) - . chr(hexdec(substr($hex, 0, 2))) - . chr(0) - . chr(0) - ; - $key = $this->md5_16($tmp); - $this->ARC4_init(substr($key, 0, 10)); - } - - /** - * initialize the ARC4 encryption - * - * @param string $key - */ - function ARC4_init($key = '') - { - $this->arc4 = ''; - - // setup the control array - if (mb_strlen($key, '8bit') == 0) { - return; - } - - $k = ''; - while (mb_strlen($k, '8bit') < 256) { - $k .= $key; - } - - $k = substr($k, 0, 256); - for ($i = 0; $i < 256; $i++) { - $this->arc4 .= chr($i); - } - - $j = 0; - - for ($i = 0; $i < 256; $i++) { - $t = $this->arc4[$i]; - $j = ($j + ord($t) + ord($k[$i])) % 256; - $this->arc4[$i] = $this->arc4[$j]; - $this->arc4[$j] = $t; - } - } - - /** - * ARC4 encrypt a text string - * - * @param $text - * @return string - */ - function ARC4($text) - { - $len = mb_strlen($text, '8bit'); - $a = 0; - $b = 0; - $c = $this->arc4; - $out = ''; - for ($i = 0; $i < $len; $i++) { - $a = ($a + 1) % 256; - $t = $c[$a]; - $b = ($b + ord($t)) % 256; - $c[$a] = $c[$b]; - $c[$b] = $t; - $k = ord($c[(ord($c[$a]) + ord($c[$b])) % 256]); - $out .= chr(ord($text[$i]) ^ $k); - } - - return $out; - } - - /** - * functions which can be called to adjust or add to the document - */ - - /** - * add a link in the document to an external URL - * - * @param $url - * @param $x0 - * @param $y0 - * @param $x1 - * @param $y1 - */ - function addLink($url, $x0, $y0, $x1, $y1) - { - $this->numObj++; - $info = ['type' => 'link', 'url' => $url, 'rect' => [$x0, $y0, $x1, $y1]]; - $this->o_annotation($this->numObj, 'new', $info); - } - - /** - * add a link in the document to an internal destination (ie. within the document) - * - * @param $label - * @param $x0 - * @param $y0 - * @param $x1 - * @param $y1 - */ - function addInternalLink($label, $x0, $y0, $x1, $y1) - { - $this->numObj++; - $info = ['type' => 'ilink', 'label' => $label, 'rect' => [$x0, $y0, $x1, $y1]]; - $this->o_annotation($this->numObj, 'new', $info); - } - - /** - * set the encryption of the document - * can be used to turn it on and/or set the passwords which it will have. - * also the functions that the user will have are set here, such as print, modify, add - * - * @param string $userPass - * @param string $ownerPass - * @param array $pc - */ - function setEncryption($userPass = '', $ownerPass = '', $pc = []) - { - $p = bindec("11000000"); - - $options = ['print' => 4, 'modify' => 8, 'copy' => 16, 'add' => 32]; - - foreach ($pc as $k => $v) { - if ($v && isset($options[$k])) { - $p += $options[$k]; - } else { - if (isset($options[$v])) { - $p += $options[$v]; - } - } - } - - // implement encryption on the document - if ($this->arc4_objnum == 0) { - // then the block does not exist already, add it. - $this->numObj++; - if (mb_strlen($ownerPass) == 0) { - $ownerPass = $userPass; - } - - $this->o_encryption($this->numObj, 'new', ['user' => $userPass, 'owner' => $ownerPass, 'p' => $p]); - } - } - - /** - * should be used for internal checks, not implemented as yet - */ - function checkAllHere() - { - } - - /** - * return the pdf stream as a string returned from the function - * - * @param bool $debug - * @return string - */ - function output($debug = false) - { - if ($debug) { - // turn compression off - $this->options['compression'] = false; - } - - if ($this->javascript) { - $this->numObj++; - - $js_id = $this->numObj; - $this->o_embedjs($js_id, 'new'); - $this->o_javascript(++$this->numObj, 'new', $this->javascript); - - $id = $this->catalogId; - - $this->o_indirect_references($this->indirectReferenceId, 'add', ['JavaScript' => $js_id]); - } - - if ($this->fileIdentifier === '') { - $tmp = implode('', $this->objects[$this->infoObject]['info']); - $this->fileIdentifier = md5('DOMPDF' . __FILE__ . $tmp . microtime() . mt_rand()); - } - - if ($this->arc4_objnum) { - $this->o_encryption($this->arc4_objnum, 'keys'); - $this->ARC4_init($this->encryptionKey); - } - - $this->checkAllHere(); - - $xref = []; - $content = '%PDF-' . self::PDF_VERSION; - $pos = mb_strlen($content, '8bit'); - - // pre-process o_font objects before output of all objects - foreach ($this->objects as $k => $v) { - if ($v['t'] === 'font') { - $this->o_font($k, 'add'); - } - } - - foreach ($this->objects as $k => $v) { - $tmp = 'o_' . $v['t']; - $cont = $this->$tmp($k, 'out'); - $content .= $cont; - $xref[] = $pos + 1; //+1 to account for \n at the start of each object - $pos += mb_strlen($cont, '8bit'); - } - - $content .= "\nxref\n0 " . (count($xref) + 1) . "\n0000000000 65535 f \n"; - - foreach ($xref as $p) { - $content .= str_pad($p, 10, "0", STR_PAD_LEFT) . " 00000 n \n"; - } - - $content .= "trailer\n<<\n" . - '/Size ' . (count($xref) + 1) . "\n" . - '/Root 1 0 R' . "\n" . - '/Info ' . $this->infoObject . " 0 R\n" - ; - - // if encryption has been applied to this document then add the marker for this dictionary - if ($this->arc4_objnum > 0) { - $content .= '/Encrypt ' . $this->arc4_objnum . " 0 R\n"; - } - - $content .= '/ID[<' . $this->fileIdentifier . '><' . $this->fileIdentifier . ">]\n"; - - // account for \n added at start of xref table - $pos++; - - $content .= ">>\nstartxref\n$pos\n%%EOF\n"; - - if (count($this->byteRange) > 0) { - foreach ($this->byteRange as $k => $v) { - $tmp = 'o_' . $v['t']; - $this->$tmp($k, 'byterange', ['content' => &$content]); - } - } - - return $content; - } - - /** - * initialize a new document - * if this is called on an existing document results may be unpredictable, but the existing document would be lost at minimum - * this function is called automatically by the constructor function - * - * @param array $pageSize - */ - private function newDocument($pageSize = [0, 0, 612, 792]) - { - $this->numObj = 0; - $this->objects = []; - - $this->numObj++; - $this->o_catalog($this->numObj, 'new'); - - $this->numObj++; - $this->o_outlines($this->numObj, 'new'); - - $this->numObj++; - $this->o_pages($this->numObj, 'new'); - - $this->o_pages($this->numObj, 'mediaBox', $pageSize); - $this->currentNode = 3; - - $this->numObj++; - $this->o_procset($this->numObj, 'new'); - - $this->numObj++; - $this->o_info($this->numObj, 'new'); - - $this->numObj++; - $this->o_page($this->numObj, 'new'); - - // need to store the first page id as there is no way to get it to the user during - // startup - $this->firstPageId = $this->currentContents; - } - - /** - * open the font file and return a php structure containing it. - * first check if this one has been done before and saved in a form more suited to php - * note that if a php serialized version does not exist it will try and make one, but will - * require write access to the directory to do it... it is MUCH faster to have these serialized - * files. - * - * @param $font - */ - private function openFont($font) - { - // assume that $font contains the path and file but not the extension - $name = basename($font); - $dir = dirname($font); - - $fontcache = $this->fontcache; - if ($fontcache == '') { - $fontcache = $dir; - } - - //$name filename without folder and extension of font metrics - //$dir folder of font metrics - //$fontcache folder of runtime created php serialized version of font metrics. - // If this is not given, the same folder as the font metrics will be used. - // Storing and reusing serialized versions improves speed much - - $this->addMessage("openFont: $font - $name"); - - if (!$this->isUnicode || in_array(mb_strtolower(basename($name)), self::$coreFonts)) { - $metrics_name = "$name.afm"; - } else { - $metrics_name = "$name.ufm"; - } - - $cache_name = "$metrics_name.json"; - $this->addMessage("metrics: $metrics_name, cache: $cache_name"); - - if (file_exists($fontcache . '/' . $cache_name)) { - $this->addMessage("openFont: json metrics file exists $fontcache/$cache_name"); - $cached_font_info = json_decode(file_get_contents($fontcache . '/' . $cache_name), true); - if (!isset($cached_font_info['_version_']) || $cached_font_info['_version_'] != $this->fontcacheVersion) { - $this->addMessage('openFont: font cache is out of date, regenerating'); - } else { - $this->fonts[$font] = $cached_font_info; - } - } - - if (!isset($this->fonts[$font]) && file_exists("$dir/$metrics_name")) { - // then rebuild the php_.afm file from the .afm file - $this->addMessage("openFont: build php file from $dir/$metrics_name"); - $data = []; - - // 20 => 'space' - $data['codeToName'] = []; - - // Since we're not going to enable Unicode for the core fonts we need to use a font-based - // setting for Unicode support rather than a global setting. - $data['isUnicode'] = (strtolower(substr($metrics_name, -3)) !== 'afm'); - - $cidtogid = ''; - if ($data['isUnicode']) { - $cidtogid = str_pad('', 256 * 256 * 2, "\x00"); - } - - $file = file("$dir/$metrics_name"); - - foreach ($file as $rowA) { - $row = trim($rowA); - $pos = strpos($row, ' '); - - if ($pos) { - // then there must be some keyword - $key = substr($row, 0, $pos); - switch ($key) { - case 'FontName': - case 'FullName': - case 'FamilyName': - case 'PostScriptName': - case 'Weight': - case 'ItalicAngle': - case 'IsFixedPitch': - case 'CharacterSet': - case 'UnderlinePosition': - case 'UnderlineThickness': - case 'Version': - case 'EncodingScheme': - case 'CapHeight': - case 'XHeight': - case 'Ascender': - case 'Descender': - case 'StdHW': - case 'StdVW': - case 'StartCharMetrics': - case 'FontHeightOffset': // OAR - Added so we can offset the height calculation of a Windows font. Otherwise it's too big. - $data[$key] = trim(substr($row, $pos)); - break; - - case 'FontBBox': - $data[$key] = explode(' ', trim(substr($row, $pos))); - break; - - //C 39 ; WX 222 ; N quoteright ; B 53 463 157 718 ; - case 'C': // Found in AFM files - $bits = explode(';', trim($row)); - $dtmp = ['C' => null, 'N' => null, 'WX' => null, 'B' => []]; - - foreach ($bits as $bit) { - $bits2 = explode(' ', trim($bit)); - if (mb_strlen($bits2[0], '8bit') == 0) { - continue; - } - - if (count($bits2) > 2) { - $dtmp[$bits2[0]] = []; - for ($i = 1; $i < count($bits2); $i++) { - $dtmp[$bits2[0]][] = $bits2[$i]; - } - } else { - if (count($bits2) == 2) { - $dtmp[$bits2[0]] = $bits2[1]; - } - } - } - - $c = (int)$dtmp['C']; - $n = $dtmp['N']; - $width = floatval($dtmp['WX']); - - if ($c >= 0) { - if (!ctype_xdigit($n) || $c != hexdec($n)) { - $data['codeToName'][$c] = $n; - } - $data['C'][$c] = $width; - } elseif (isset($n)) { - $data['C'][$n] = $width; - } - - if (!isset($data['MissingWidth']) && $c === -1 && $n === '.notdef') { - $data['MissingWidth'] = $width; - } - - break; - - // U 827 ; WX 0 ; N squaresubnosp ; G 675 ; - case 'U': // Found in UFM files - if (!$data['isUnicode']) { - break; - } - - $bits = explode(';', trim($row)); - $dtmp = ['G' => null, 'N' => null, 'U' => null, 'WX' => null]; - - foreach ($bits as $bit) { - $bits2 = explode(' ', trim($bit)); - if (mb_strlen($bits2[0], '8bit') === 0) { - continue; - } - - if (count($bits2) > 2) { - $dtmp[$bits2[0]] = []; - for ($i = 1; $i < count($bits2); $i++) { - $dtmp[$bits2[0]][] = $bits2[$i]; - } - } else { - if (count($bits2) == 2) { - $dtmp[$bits2[0]] = $bits2[1]; - } - } - } - - $c = (int)$dtmp['U']; - $n = $dtmp['N']; - $glyph = $dtmp['G']; - $width = floatval($dtmp['WX']); - - if ($c >= 0) { - // Set values in CID to GID map - if ($c >= 0 && $c < 0xFFFF && $glyph) { - $cidtogid[$c * 2] = chr($glyph >> 8); - $cidtogid[$c * 2 + 1] = chr($glyph & 0xFF); - } - - if (!ctype_xdigit($n) || $c != hexdec($n)) { - $data['codeToName'][$c] = $n; - } - $data['C'][$c] = $width; - } elseif (isset($n)) { - $data['C'][$n] = $width; - } - - if (!isset($data['MissingWidth']) && $c === -1 && $n === '.notdef') { - $data['MissingWidth'] = $width; - } - - break; - - case 'KPX': - break; // don't include them as they are not used yet - //KPX Adieresis yacute -40 - /*$bits = explode(' ', trim($row)); - $data['KPX'][$bits[1]][$bits[2]] = $bits[3]; - break;*/ - } - } - } - - if ($this->compressionReady && $this->options['compression']) { - // then implement ZLIB based compression on CIDtoGID string - $data['CIDtoGID_Compressed'] = true; - $cidtogid = gzcompress($cidtogid, 6); - } - $data['CIDtoGID'] = base64_encode($cidtogid); - $data['_version_'] = $this->fontcacheVersion; - $this->fonts[$font] = $data; - - //Because of potential trouble with php safe mode, expect that the folder already exists. - //If not existing, this will hit performance because of missing cached results. - if (is_dir($fontcache) && is_writable($fontcache)) { - file_put_contents("$fontcache/$cache_name", json_encode($data, JSON_PRETTY_PRINT)); - } - $data = null; - } - - if (!isset($this->fonts[$font])) { - $this->addMessage("openFont: no font file found for $font. Do you need to run load_font.php?"); - } - } - - /** - * if the font is not loaded then load it and make the required object - * else just make it the current font - * the encoding array can contain 'encoding'=> 'none','WinAnsiEncoding','MacRomanEncoding' or 'MacExpertEncoding' - * note that encoding='none' will need to be used for symbolic fonts - * and 'differences' => an array of mappings between numbers 0->255 and character names. - * - * @param string $fontName - * @param string $encoding - * @param bool $set - * @param bool $isSubsetting - * @return int - * @throws FontNotFoundException - */ - function selectFont($fontName, $encoding = '', $set = true, $isSubsetting = true) - { - if ($fontName === null || $fontName === '') { - return $this->currentFontNum; - } - - $ext = substr($fontName, -4); - if ($ext === '.afm' || $ext === '.ufm') { - $fontName = substr($fontName, 0, mb_strlen($fontName) - 4); - } - - if (!isset($this->fonts[$fontName])) { - $this->addMessage("selectFont: selecting - $fontName - $encoding, $set"); - - // load the file - $this->openFont($fontName); - - if (isset($this->fonts[$fontName])) { - $this->numObj++; - $this->numFonts++; - - $font = &$this->fonts[$fontName]; - - $name = basename($fontName); - $options = ['name' => $name, 'fontFileName' => $fontName, 'isSubsetting' => $isSubsetting]; - - if (is_array($encoding)) { - // then encoding and differences might be set - if (isset($encoding['encoding'])) { - $options['encoding'] = $encoding['encoding']; - } - - if (isset($encoding['differences'])) { - $options['differences'] = $encoding['differences']; - } - } else { - if (mb_strlen($encoding, '8bit')) { - // then perhaps only the encoding has been set - $options['encoding'] = $encoding; - } - } - - $this->o_font($this->numObj, 'new', $options); - - if (file_exists("$fontName.ttf")) { - $fileSuffix = 'ttf'; - } elseif (file_exists("$fontName.TTF")) { - $fileSuffix = 'TTF'; - } elseif (file_exists("$fontName.pfb")) { - $fileSuffix = 'pfb'; - } elseif (file_exists("$fontName.PFB")) { - $fileSuffix = 'PFB'; - } else { - $fileSuffix = ''; - } - - $font['fileSuffix'] = $fileSuffix; - - $font['fontNum'] = $this->numFonts; - $font['isSubsetting'] = $isSubsetting && $font['isUnicode'] && strtolower($fileSuffix) === 'ttf'; - - // also set the differences here, note that this means that these will take effect only the - //first time that a font is selected, else they are ignored - if (isset($options['differences'])) { - $font['differences'] = $options['differences']; - } - } - } - - if ($set && isset($this->fonts[$fontName])) { - // so if for some reason the font was not set in the last one then it will not be selected - $this->currentBaseFont = $fontName; - - // the next lines mean that if a new font is selected, then the current text state will be - // applied to it as well. - $this->currentFont = $this->currentBaseFont; - $this->currentFontNum = $this->fonts[$this->currentFont]['fontNum']; - } - - return $this->currentFontNum; - } - - /** - * sets up the current font, based on the font families, and the current text state - * note that this system is quite flexible, a bold-italic font can be completely different to a - * italic-bold font, and even bold-bold will have to be defined within the family to have meaning - * This function is to be called whenever the currentTextState is changed, it will update - * the currentFont setting to whatever the appropriate family one is. - * If the user calls selectFont themselves then that will reset the currentBaseFont, and the currentFont - * This function will change the currentFont to whatever it should be, but will not change the - * currentBaseFont. - */ - private function setCurrentFont() - { - // if (strlen($this->currentBaseFont) == 0){ - // // then assume an initial font - // $this->selectFont($this->defaultFont); - // } - // $cf = substr($this->currentBaseFont,strrpos($this->currentBaseFont,'/')+1); - // if (strlen($this->currentTextState) - // && isset($this->fontFamilies[$cf]) - // && isset($this->fontFamilies[$cf][$this->currentTextState])){ - // // then we are in some state or another - // // and this font has a family, and the current setting exists within it - // // select the font, then return it - // $nf = substr($this->currentBaseFont,0,strrpos($this->currentBaseFont,'/')+1).$this->fontFamilies[$cf][$this->currentTextState]; - // $this->selectFont($nf,'',0); - // $this->currentFont = $nf; - // $this->currentFontNum = $this->fonts[$nf]['fontNum']; - // } else { - // // the this font must not have the right family member for the current state - // // simply assume the base font - $this->currentFont = $this->currentBaseFont; - $this->currentFontNum = $this->fonts[$this->currentFont]['fontNum']; - // } - } - - /** - * function for the user to find out what the ID is of the first page that was created during - * startup - useful if they wish to add something to it later. - * - * @return int - */ - function getFirstPageId() - { - return $this->firstPageId; - } - - /** - * add content to the currently active object - * - * @param $content - */ - private function addContent($content) - { - $this->objects[$this->currentContents]['c'] .= $content; - } - - /** - * sets the color for fill operations - * - * @param array $color - * @param bool $force - */ - function setColor($color, $force = false) - { - $new_color = [$color[0], $color[1], $color[2], isset($color[3]) ? $color[3] : null]; - - if (!$force && $this->currentColor == $new_color) { - return; - } - - if (isset($new_color[3])) { - $this->currentColor = $new_color; - $this->addContent(vsprintf("\n%.3F %.3F %.3F %.3F k", $this->currentColor)); - } else { - if (isset($new_color[2])) { - $this->currentColor = $new_color; - $this->addContent(vsprintf("\n%.3F %.3F %.3F rg", $this->currentColor)); - } - } - } - - /** - * @param string $fillRule - */ - function setFillRule($fillRule) - { - if (!in_array($fillRule, ["nonzero", "evenodd"])) { - return; - } - - $this->fillRule = $fillRule; - } - - /** - * sets the color for stroke operations - * - * @param array $color - * @param bool $force - */ - function setStrokeColor($color, $force = false) - { - $new_color = [$color[0], $color[1], $color[2], isset($color[3]) ? $color[3] : null]; - - if (!$force && $this->currentStrokeColor == $new_color) { - return; - } - - if (isset($new_color[3])) { - $this->currentStrokeColor = $new_color; - $this->addContent(vsprintf("\n%.3F %.3F %.3F %.3F K", $this->currentStrokeColor)); - } else { - if (isset($new_color[2])) { - $this->currentStrokeColor = $new_color; - $this->addContent(vsprintf("\n%.3F %.3F %.3F RG", $this->currentStrokeColor)); - } - } - } - - /** - * Set the graphics state for compositions - * - * @param $parameters - */ - function setGraphicsState($parameters) - { - // Create a new graphics state object if necessary - if (($gstate = array_search($parameters, $this->gstates)) === false) { - $this->numObj++; - $this->o_extGState($this->numObj, 'new', $parameters); - $gstate = $this->numStates; - $this->gstates[$gstate] = $parameters; - } - $this->addContent("\n/GS$gstate gs"); - } - - /** - * Set current blend mode & opacity for lines. - * - * Valid blend modes are: - * - * Normal, Multiply, Screen, Overlay, Darken, Lighten, - * ColorDogde, ColorBurn, HardLight, SoftLight, Difference, - * Exclusion - * - * @param string $mode the blend mode to use - * @param float $opacity 0.0 fully transparent, 1.0 fully opaque - */ - function setLineTransparency($mode, $opacity) - { - static $blend_modes = [ - "Normal", - "Multiply", - "Screen", - "Overlay", - "Darken", - "Lighten", - "ColorDogde", - "ColorBurn", - "HardLight", - "SoftLight", - "Difference", - "Exclusion" - ]; - - if (!in_array($mode, $blend_modes)) { - $mode = "Normal"; - } - - if (is_null($this->currentLineTransparency)) { - $this->currentLineTransparency = []; - } - - if ($mode === (key_exists('mode', $this->currentLineTransparency) ? - $this->currentLineTransparency['mode'] : '') && - $opacity === (key_exists('opacity', $this->currentLineTransparency) ? - $this->currentLineTransparency["opacity"] : '')) { - return; - } - - $this->currentLineTransparency["mode"] = $mode; - $this->currentLineTransparency["opacity"] = $opacity; - - $options = [ - "BM" => "/$mode", - "CA" => (float)$opacity - ]; - - $this->setGraphicsState($options); - } - - /** - * Set current blend mode & opacity for filled objects. - * - * Valid blend modes are: - * - * Normal, Multiply, Screen, Overlay, Darken, Lighten, - * ColorDogde, ColorBurn, HardLight, SoftLight, Difference, - * Exclusion - * - * @param string $mode the blend mode to use - * @param float $opacity 0.0 fully transparent, 1.0 fully opaque - */ - function setFillTransparency($mode, $opacity) - { - static $blend_modes = [ - "Normal", - "Multiply", - "Screen", - "Overlay", - "Darken", - "Lighten", - "ColorDogde", - "ColorBurn", - "HardLight", - "SoftLight", - "Difference", - "Exclusion" - ]; - - if (!in_array($mode, $blend_modes)) { - $mode = "Normal"; - } - - if (is_null($this->currentFillTransparency)) { - $this->currentFillTransparency = []; - } - - if ($mode === (key_exists('mode', $this->currentFillTransparency) ? - $this->currentFillTransparency['mode'] : '') && - $opacity === (key_exists('opacity', $this->currentFillTransparency) ? - $this->currentFillTransparency["opacity"] : '')) { - return; - } - - $this->currentFillTransparency["mode"] = $mode; - $this->currentFillTransparency["opacity"] = $opacity; - - $options = [ - "BM" => "/$mode", - "ca" => (float)$opacity, - ]; - - $this->setGraphicsState($options); - } - - /** - * draw a line from one set of coordinates to another - * - * @param float $x1 - * @param float $y1 - * @param float $x2 - * @param float $y2 - * @param bool $stroke - */ - function line($x1, $y1, $x2, $y2, $stroke = true) - { - $this->addContent(sprintf("\n%.3F %.3F m %.3F %.3F l", $x1, $y1, $x2, $y2)); - - if ($stroke) { - $this->addContent(' S'); - } - } - - /** - * draw a bezier curve based on 4 control points - * - * @param float $x0 - * @param float $y0 - * @param float $x1 - * @param float $y1 - * @param float $x2 - * @param float $y2 - * @param float $x3 - * @param float $y3 - */ - function curve($x0, $y0, $x1, $y1, $x2, $y2, $x3, $y3) - { - // in the current line style, draw a bezier curve from (x0,y0) to (x3,y3) using the other two points - // as the control points for the curve. - $this->addContent( - sprintf("\n%.3F %.3F m %.3F %.3F %.3F %.3F %.3F %.3F c S", $x0, $y0, $x1, $y1, $x2, $y2, $x3, $y3) - ); - } - - /** - * draw a part of an ellipse - * - * @param float $x0 - * @param float $y0 - * @param float $astart - * @param float $afinish - * @param float $r1 - * @param float $r2 - * @param float $angle - * @param int $nSeg - */ - function partEllipse($x0, $y0, $astart, $afinish, $r1, $r2 = 0, $angle = 0, $nSeg = 8) - { - $this->ellipse($x0, $y0, $r1, $r2, $angle, $nSeg, $astart, $afinish, false); - } - - /** - * draw a filled ellipse - * - * @param float $x0 - * @param float $y0 - * @param float $r1 - * @param float $r2 - * @param float $angle - * @param int $nSeg - * @param float $astart - * @param float $afinish - */ - function filledEllipse($x0, $y0, $r1, $r2 = 0, $angle = 0, $nSeg = 8, $astart = 0, $afinish = 360) - { - $this->ellipse($x0, $y0, $r1, $r2, $angle, $nSeg, $astart, $afinish, true, true); - } - - /** - * @param float $x - * @param float $y - */ - function lineTo($x, $y) - { - $this->addContent(sprintf("\n%.3F %.3F l", $x, $y)); - } - - /** - * @param float $x - * @param float $y - */ - function moveTo($x, $y) - { - $this->addContent(sprintf("\n%.3F %.3F m", $x, $y)); - } - - /** - * draw a bezier curve based on 4 control points - * - * @param float $x1 - * @param float $y1 - * @param float $x2 - * @param float $y2 - * @param float $x3 - * @param float $y3 - */ - function curveTo($x1, $y1, $x2, $y2, $x3, $y3) - { - $this->addContent(sprintf("\n%.3F %.3F %.3F %.3F %.3F %.3F c", $x1, $y1, $x2, $y2, $x3, $y3)); - } - - /** - * draw a bezier curve based on 4 control points - * - * @param float $cpx - * @param float $cpy - * @param float $x - * @param float $y - */ - function quadTo($cpx, $cpy, $x, $y) - { - $this->addContent(sprintf("\n%.3F %.3F %.3F %.3F v", $cpx, $cpy, $x, $y)); - } - - function closePath() - { - $this->addContent(' h'); - } - - function endPath() - { - $this->addContent(' n'); - } - - /** - * draw an ellipse - * note that the part and filled ellipse are just special cases of this function - * - * draws an ellipse in the current line style - * centered at $x0,$y0, radii $r1,$r2 - * if $r2 is not set, then a circle is drawn - * from $astart to $afinish, measured in degrees, running anti-clockwise from the right hand side of the ellipse. - * nSeg is not allowed to be less than 2, as this will simply draw a line (and will even draw a - * pretty crappy shape at 2, as we are approximating with bezier curves. - * - * @param float $x0 - * @param float $y0 - * @param float $r1 - * @param float $r2 - * @param float $angle - * @param int $nSeg - * @param float $astart - * @param float $afinish - * @param bool $close - * @param bool $fill - * @param bool $stroke - * @param bool $incomplete - */ - function ellipse( - $x0, - $y0, - $r1, - $r2 = 0, - $angle = 0, - $nSeg = 8, - $astart = 0, - $afinish = 360, - $close = true, - $fill = false, - $stroke = true, - $incomplete = false - ) { - if ($r1 == 0) { - return; - } - - if ($r2 == 0) { - $r2 = $r1; - } - - if ($nSeg < 2) { - $nSeg = 2; - } - - $astart = deg2rad((float)$astart); - $afinish = deg2rad((float)$afinish); - $totalAngle = $afinish - $astart; - - $dt = $totalAngle / $nSeg; - $dtm = $dt / 3; - - if ($angle != 0) { - $a = -1 * deg2rad((float)$angle); - - $this->addContent( - sprintf("\n q %.3F %.3F %.3F %.3F %.3F %.3F cm", cos($a), -sin($a), sin($a), cos($a), $x0, $y0) - ); - - $x0 = 0; - $y0 = 0; - } - - $t1 = $astart; - $a0 = $x0 + $r1 * cos($t1); - $b0 = $y0 + $r2 * sin($t1); - $c0 = -$r1 * sin($t1); - $d0 = $r2 * cos($t1); - - if (!$incomplete) { - $this->addContent(sprintf("\n%.3F %.3F m ", $a0, $b0)); - } - - for ($i = 1; $i <= $nSeg; $i++) { - // draw this bit of the total curve - $t1 = $i * $dt + $astart; - $a1 = $x0 + $r1 * cos($t1); - $b1 = $y0 + $r2 * sin($t1); - $c1 = -$r1 * sin($t1); - $d1 = $r2 * cos($t1); - - $this->addContent( - sprintf( - "\n%.3F %.3F %.3F %.3F %.3F %.3F c", - ($a0 + $c0 * $dtm), - ($b0 + $d0 * $dtm), - ($a1 - $c1 * $dtm), - ($b1 - $d1 * $dtm), - $a1, - $b1 - ) - ); - - $a0 = $a1; - $b0 = $b1; - $c0 = $c1; - $d0 = $d1; - } - - if (!$incomplete) { - if ($fill) { - $this->addContent(' f'); - } - - if ($stroke) { - if ($close) { - $this->addContent(' s'); // small 's' signifies closing the path as well - } else { - $this->addContent(' S'); - } - } - } - - if ($angle != 0) { - $this->addContent(' Q'); - } - } - - /** - * this sets the line drawing style. - * width, is the thickness of the line in user units - * cap is the type of cap to put on the line, values can be 'butt','round','square' - * where the diffference between 'square' and 'butt' is that 'square' projects a flat end past the - * end of the line. - * join can be 'miter', 'round', 'bevel' - * dash is an array which sets the dash pattern, is a series of length values, which are the lengths of the - * on and off dashes. - * (2) represents 2 on, 2 off, 2 on , 2 off ... - * (2,1) is 2 on, 1 off, 2 on, 1 off.. etc - * phase is a modifier on the dash pattern which is used to shift the point at which the pattern starts. - * - * @param float $width - * @param string $cap - * @param string $join - * @param array $dash - * @param int $phase - */ - function setLineStyle($width = 1, $cap = '', $join = '', $dash = '', $phase = 0) - { - // this is quite inefficient in that it sets all the parameters whenever 1 is changed, but will fix another day - $string = ''; - - if ($width > 0) { - $string .= "$width w"; - } - - $ca = ['butt' => 0, 'round' => 1, 'square' => 2]; - - if (isset($ca[$cap])) { - $string .= " $ca[$cap] J"; - } - - $ja = ['miter' => 0, 'round' => 1, 'bevel' => 2]; - - if (isset($ja[$join])) { - $string .= " $ja[$join] j"; - } - - if (is_array($dash)) { - $string .= ' [ ' . implode(' ', $dash) . " ] $phase d"; - } - - $this->currentLineStyle = $string; - $this->addContent("\n$string"); - } - - /** - * draw a polygon, the syntax for this is similar to the GD polygon command - * - * @param float[] $p - * @param bool $fill - */ - public function polygon(array $p, bool $fill = false): void - { - $this->addContent(sprintf("\n%.3F %.3F m ", $p[0], $p[1])); - - $n = count($p); - for ($i = 2; $i < $n; $i = $i + 2) { - $this->addContent(sprintf("%.3F %.3F l ", $p[$i], $p[$i + 1])); - } - - if ($fill) { - $this->addContent(' f'); - } else { - $this->addContent(' S'); - } - } - - /** - * a filled rectangle, note that it is the width and height of the rectangle which are the secondary parameters, not - * the coordinates of the upper-right corner - * - * @param float $x1 - * @param float $y1 - * @param float $width - * @param float $height - */ - function filledRectangle($x1, $y1, $width, $height) - { - $this->addContent(sprintf("\n%.3F %.3F %.3F %.3F re f", $x1, $y1, $width, $height)); - } - - /** - * draw a rectangle, note that it is the width and height of the rectangle which are the secondary parameters, not - * the coordinates of the upper-right corner - * - * @param float $x1 - * @param float $y1 - * @param float $width - * @param float $height - */ - function rectangle($x1, $y1, $width, $height) - { - $this->addContent(sprintf("\n%.3F %.3F %.3F %.3F re S", $x1, $y1, $width, $height)); - } - - /** - * draw a rectangle, note that it is the width and height of the rectangle which are the secondary parameters, not - * the coordinates of the upper-right corner - * - * @param float $x1 - * @param float $y1 - * @param float $width - * @param float $height - */ - function rect($x1, $y1, $width, $height) - { - $this->addContent(sprintf("\n%.3F %.3F %.3F %.3F re", $x1, $y1, $width, $height)); - } - - function stroke(bool $close = false) - { - $this->addContent("\n" . ($close ? "s" : "S")); - } - - function fill() - { - $this->addContent("\nf" . ($this->fillRule === "evenodd" ? "*" : "")); - } - - function fillStroke(bool $close = false) - { - $this->addContent("\n" . ($close ? "b" : "B") . ($this->fillRule === "evenodd" ? "*" : "")); - } - - /** - * @param string $subtype - * @param integer $x - * @param integer $y - * @param integer $w - * @param integer $h - * @return int - */ - function addXObject($subtype, $x, $y, $w, $h) - { - $id = ++$this->numObj; - $this->o_xobject($id, 'new', ['Subtype' => $subtype, 'bbox' => [$x, $y, $w, $h]]); - return $id; - } - - /** - * @param integer $numXObject - * @param string $type - * @param array $options - */ - function setXObjectResource($numXObject, $type, $options) - { - if (in_array($type, ['procset', 'font', 'xObject'])) { - $this->o_xobject($numXObject, $type, $options); - } - } - - /** - * add signature - * - * $fieldSigId = $cpdf->addFormField(Cpdf::ACROFORM_FIELD_SIG, 'Signature1', 0, 0, 0, 0, 0); - * - * $signatureId = $cpdf->addSignature([ - * 'signcert' => file_get_contents('dompdf.crt'), - * 'privkey' => file_get_contents('dompdf.key'), - * 'password' => 'password', - * 'name' => 'DomPDF DEMO', - * 'location' => 'Home', - * 'reason' => 'First Form', - * 'contactinfo' => 'info' - * ]); - * $cpdf->setFormFieldValue($fieldSigId, "$signatureId 0 R"); - * - * @param string $signcert - * @param string $privkey - * @param string $password - * @param string|null $name - * @param string|null $location - * @param string|null $reason - * @param string|null $contactinfo - * @return int - */ - function addSignature($signcert, $privkey, $password = '', $name = null, $location = null, $reason = null, $contactinfo = null) { - $sigId = ++$this->numObj; - $this->o_sig($sigId, 'new', [ - 'SignCert' => $signcert, - 'PrivKey' => $privkey, - 'Password' => $password, - 'Name' => $name, - 'Location' => $location, - 'Reason' => $reason, - 'ContactInfo' => $contactinfo - ]); - - return $sigId; - } - - /** - * add field to form - * - * @param string $type ACROFORM_FIELD_* - * @param string $name - * @param $x0 - * @param $y0 - * @param $x1 - * @param $y1 - * @param integer $ff Field Flag ACROFORM_FIELD_*_* - * @param float $size - * @param array $color - * @return int - */ - public function addFormField($type, $name, $x0, $y0, $x1, $y1, $ff = 0, $size = 10.0, $color = [0, 0, 0]) - { - if (!$this->numFonts) { - $this->selectFont($this->defaultFont); - } - - $color = implode(' ', $color) . ' rg'; - - $currentFontNum = $this->currentFontNum; - $font = array_filter( - $this->objects[$this->currentNode]['info']['fonts'], - function ($item) use ($currentFontNum) { return $item['fontNum'] == $currentFontNum; } - ); - - $this->o_acroform($this->acroFormId, 'font', - ['objNum' => $font[0]['objNum'], 'fontNum' => $font[0]['fontNum']]); - - $fieldId = ++$this->numObj; - $this->o_field($fieldId, 'new', [ - 'rect' => [$x0, $y0, $x1, $y1], - 'F' => 4, - 'FT' => "/$type", - 'T' => $name, - 'Ff' => $ff, - 'pageid' => $this->currentPage, - 'da' => "$color /F$this->currentFontNum " . sprintf('%.1F Tf ', $size) - ]); - - return $fieldId; - } - - /** - * set Field value - * - * @param integer $numFieldObj - * @param string $value - */ - public function setFormFieldValue($numFieldObj, $value) - { - $this->o_field($numFieldObj, 'set', ['value' => $value]); - } - - /** - * set Field value (reference) - * - * @param integer $numFieldObj - * @param integer $numObj Object number - */ - public function setFormFieldRefValue($numFieldObj, $numObj) - { - $this->o_field($numFieldObj, 'set', ['refvalue' => $numObj]); - } - - /** - * set Field Appearanc (reference) - * - * @param integer $numFieldObj - * @param integer $normalNumObj - * @param integer|null $rolloverNumObj - * @param integer|null $downNumObj - */ - public function setFormFieldAppearance($numFieldObj, $normalNumObj, $rolloverNumObj = null, $downNumObj = null) - { - $appearance['N'] = $normalNumObj; - - if ($rolloverNumObj !== null) { - $appearance['R'] = $rolloverNumObj; - } - - if ($downNumObj !== null) { - $appearance['D'] = $downNumObj; - } - - $this->o_field($numFieldObj, 'set', ['appearance' => $appearance]); - } - - /** - * set Choice Field option values - * - * @param integer $numFieldObj - * @param array $value - */ - public function setFormFieldOpt($numFieldObj, $value) - { - $this->o_field($numFieldObj, 'set', ['options' => $value]); - } - - /** - * add form to document - * - * @param integer $sigFlags - * @param boolean $needAppearances - */ - public function addForm($sigFlags = 0, $needAppearances = false) - { - $this->acroFormId = ++$this->numObj; - $this->o_acroform($this->acroFormId, 'new', [ - 'NeedAppearances' => $needAppearances ? 'true' : 'false', - 'SigFlags' => $sigFlags - ]); - } - - /** - * save the current graphic state - */ - function save() - { - // we must reset the color cache or it will keep bad colors after clipping - $this->currentColor = null; - $this->currentStrokeColor = null; - $this->addContent("\nq"); - } - - /** - * restore the last graphic state - */ - function restore() - { - // we must reset the color cache or it will keep bad colors after clipping - $this->currentColor = null; - $this->currentStrokeColor = null; - $this->addContent("\nQ"); - } - - /** - * draw a clipping rectangle, all the elements added after this will be clipped - * - * @param float $x1 - * @param float $y1 - * @param float $width - * @param float $height - */ - function clippingRectangle($x1, $y1, $width, $height) - { - $this->save(); - $this->addContent(sprintf("\n%.3F %.3F %.3F %.3F re W n", $x1, $y1, $width, $height)); - } - - /** - * draw a clipping rounded rectangle, all the elements added after this will be clipped - * - * @param float $x1 - * @param float $y1 - * @param float $w - * @param float $h - * @param float $rTL - * @param float $rTR - * @param float $rBR - * @param float $rBL - */ - function clippingRectangleRounded($x1, $y1, $w, $h, $rTL, $rTR, $rBR, $rBL) - { - $this->save(); - - // start: top edge, left end - $this->addContent(sprintf("\n%.3F %.3F m ", $x1, $y1 - $rTL + $h)); - - // line: bottom edge, left end - $this->addContent(sprintf("\n%.3F %.3F l ", $x1, $y1 + $rBL)); - - // curve: bottom-left corner - $this->ellipse($x1 + $rBL, $y1 + $rBL, $rBL, 0, 0, 8, 180, 270, false, false, false, true); - - // line: right edge, bottom end - $this->addContent(sprintf("\n%.3F %.3F l ", $x1 + $w - $rBR, $y1)); - - // curve: bottom-right corner - $this->ellipse($x1 + $w - $rBR, $y1 + $rBR, $rBR, 0, 0, 8, 270, 360, false, false, false, true); - - // line: right edge, top end - $this->addContent(sprintf("\n%.3F %.3F l ", $x1 + $w, $y1 + $h - $rTR)); - - // curve: bottom-right corner - $this->ellipse($x1 + $w - $rTR, $y1 + $h - $rTR, $rTR, 0, 0, 8, 0, 90, false, false, false, true); - - // line: bottom edge, right end - $this->addContent(sprintf("\n%.3F %.3F l ", $x1 + $rTL, $y1 + $h)); - - // curve: top-right corner - $this->ellipse($x1 + $rTL, $y1 + $h - $rTL, $rTL, 0, 0, 8, 90, 180, false, false, false, true); - - // line: top edge, left end - $this->addContent(sprintf("\n%.3F %.3F l ", $x1 + $rBL, $y1)); - - // Close & clip - $this->addContent(" W n"); - } - - /** - * draw a clipping polygon, the syntax for this is similar to the GD polygon command - * - * @param float[] $p - */ - public function clippingPolygon(array $p): void - { - $this->save(); - - $this->addContent(sprintf("\n%.3F %.3F m ", $p[0], $p[1])); - - $n = count($p); - for ($i = 2; $i < $n; $i = $i + 2) { - $this->addContent(sprintf("%.3F %.3F l ", $p[$i], $p[$i + 1])); - } - - $this->addContent("W n"); - } - - /** - * ends the last clipping shape - */ - function clippingEnd() - { - $this->restore(); - } - - /** - * scale - * - * @param float $s_x scaling factor for width as percent - * @param float $s_y scaling factor for height as percent - * @param float $x Origin abscissa - * @param float $y Origin ordinate - */ - function scale($s_x, $s_y, $x, $y) - { - $y = $this->currentPageSize["height"] - $y; - - $tm = [ - $s_x, - 0, - 0, - $s_y, - $x * (1 - $s_x), - $y * (1 - $s_y) - ]; - - $this->transform($tm); - } - - /** - * translate - * - * @param float $t_x movement to the right - * @param float $t_y movement to the bottom - */ - function translate($t_x, $t_y) - { - $tm = [ - 1, - 0, - 0, - 1, - $t_x, - -$t_y - ]; - - $this->transform($tm); - } - - /** - * rotate - * - * @param float $angle angle in degrees for counter-clockwise rotation - * @param float $x Origin abscissa - * @param float $y Origin ordinate - */ - function rotate($angle, $x, $y) - { - $y = $this->currentPageSize["height"] - $y; - - $a = deg2rad($angle); - $cos_a = cos($a); - $sin_a = sin($a); - - $tm = [ - $cos_a, - -$sin_a, - $sin_a, - $cos_a, - $x - $sin_a * $y - $cos_a * $x, - $y - $cos_a * $y + $sin_a * $x, - ]; - - $this->transform($tm); - } - - /** - * skew - * - * @param float $angle_x - * @param float $angle_y - * @param float $x Origin abscissa - * @param float $y Origin ordinate - */ - function skew($angle_x, $angle_y, $x, $y) - { - $y = $this->currentPageSize["height"] - $y; - - $tan_x = tan(deg2rad($angle_x)); - $tan_y = tan(deg2rad($angle_y)); - - $tm = [ - 1, - -$tan_y, - -$tan_x, - 1, - $tan_x * $y, - $tan_y * $x, - ]; - - $this->transform($tm); - } - - /** - * apply graphic transformations - * - * @param array $tm transformation matrix - */ - function transform($tm) - { - $this->addContent(vsprintf("\n %.3F %.3F %.3F %.3F %.3F %.3F cm", $tm)); - } - - /** - * add a new page to the document - * this also makes the new page the current active object - * - * @param int $insert - * @param int $id - * @param string $pos - * @return int - */ - function newPage($insert = 0, $id = 0, $pos = 'after') - { - // if there is a state saved, then go up the stack closing them - // then on the new page, re-open them with the right setings - - if ($this->nStateStack) { - for ($i = $this->nStateStack; $i >= 1; $i--) { - $this->restoreState($i); - } - } - - $this->numObj++; - - if ($insert) { - // the id from the ezPdf class is the id of the contents of the page, not the page object itself - // query that object to find the parent - $rid = $this->objects[$id]['onPage']; - $opt = ['rid' => $rid, 'pos' => $pos]; - $this->o_page($this->numObj, 'new', $opt); - } else { - $this->o_page($this->numObj, 'new'); - } - - // if there is a stack saved, then put that onto the page - if ($this->nStateStack) { - for ($i = 1; $i <= $this->nStateStack; $i++) { - $this->saveState($i); - } - } - - // and if there has been a stroke or fill color set, then transfer them - if (isset($this->currentColor)) { - $this->setColor($this->currentColor, true); - } - - if (isset($this->currentStrokeColor)) { - $this->setStrokeColor($this->currentStrokeColor, true); - } - - // if there is a line style set, then put this in too - if (mb_strlen($this->currentLineStyle, '8bit')) { - $this->addContent("\n$this->currentLineStyle"); - } - - // the call to the o_page object set currentContents to the present page, so this can be returned as the page id - return $this->currentContents; - } - - /** - * Streams the PDF to the client. - * - * @param string $filename The filename to present to the client. - * @param array $options Associative array: 'compress' => 1 or 0 (default 1); 'Attachment' => 1 or 0 (default 1). - */ - function stream($filename = "document.pdf", $options = []) - { - if (headers_sent()) { - die("Unable to stream pdf: headers already sent"); - } - - if (!isset($options["compress"])) $options["compress"] = true; - if (!isset($options["Attachment"])) $options["Attachment"] = true; - - $debug = !$options['compress']; - $tmp = ltrim($this->output($debug)); - - header("Cache-Control: private"); - header("Content-Type: application/pdf"); - header("Content-Length: " . mb_strlen($tmp, "8bit")); - - $filename = str_replace(["\n", "'"], "", basename($filename, ".pdf")) . ".pdf"; - $attachment = $options["Attachment"] ? "attachment" : "inline"; - - $encoding = mb_detect_encoding($filename); - $fallbackfilename = mb_convert_encoding($filename, "ISO-8859-1", $encoding); - $fallbackfilename = str_replace("\"", "", $fallbackfilename); - $encodedfilename = rawurlencode($filename); - - $contentDisposition = "Content-Disposition: $attachment; filename=\"$fallbackfilename\""; - if ($fallbackfilename !== $filename) { - $contentDisposition .= "; filename*=UTF-8''$encodedfilename"; - } - header($contentDisposition); - - echo $tmp; - flush(); - } - - /** - * return the height in units of the current font in the given size - * - * @param float $size - * - * @return float - */ - public function getFontHeight(float $size): float - { - if (!$this->numFonts) { - $this->selectFont($this->defaultFont); - } - - $font = $this->fonts[$this->currentFont]; - - // for the current font, and the given size, what is the height of the font in user units - if (isset($font['Ascender']) && isset($font['Descender'])) { - $h = $font['Ascender'] - $font['Descender']; - } else { - $h = $font['FontBBox'][3] - $font['FontBBox'][1]; - } - - // have to adjust by a font offset for Windows fonts. unfortunately it looks like - // the bounding box calculations are wrong and I don't know why. - if (isset($font['FontHeightOffset'])) { - // For CourierNew from Windows this needs to be -646 to match the - // Adobe native Courier font. - // - // For FreeMono from GNU this needs to be -337 to match the - // Courier font. - // - // Both have been added manually to the .afm and .ufm files. - $h += (int)$font['FontHeightOffset']; - } - - return $size * $h / 1000; - } - - /** - * @param float $size - * - * @return float - */ - public function getFontXHeight(float $size): float - { - if (!$this->numFonts) { - $this->selectFont($this->defaultFont); - } - - $font = $this->fonts[$this->currentFont]; - - // for the current font, and the given size, what is the height of the font in user units - if (isset($font['XHeight'])) { - $xh = $font['Ascender'] - $font['Descender']; - } else { - $xh = $this->getFontHeight($size) / 2; - } - - return $size * $xh / 1000; - } - - /** - * return the font descender, this will normally return a negative number - * if you add this number to the baseline, you get the level of the bottom of the font - * it is in the pdf user units - * - * @param float $size - * - * @return float - */ - public function getFontDescender(float $size): float - { - // note that this will most likely return a negative value - if (!$this->numFonts) { - $this->selectFont($this->defaultFont); - } - - //$h = $this->fonts[$this->currentFont]['FontBBox'][1]; - $h = $this->fonts[$this->currentFont]['Descender']; - - return $size * $h / 1000; - } - - /** - * filter the text, this is applied to all text just before being inserted into the pdf document - * it escapes the various things that need to be escaped, and so on - * - * @param $text - * @param bool $bom - * @param bool $convert_encoding - * @return string - */ - function filterText($text, $bom = true, $convert_encoding = true) - { - if (!$this->numFonts) { - $this->selectFont($this->defaultFont); - } - - if ($convert_encoding) { - $cf = $this->currentFont; - if (isset($this->fonts[$cf]) && $this->fonts[$cf]['isUnicode']) { - $text = $this->utf8toUtf16BE($text, $bom); - } else { - //$text = html_entity_decode($text, ENT_QUOTES); - $text = mb_convert_encoding($text, self::$targetEncoding, 'UTF-8'); - } - } elseif ($bom) { - $text = $this->utf8toUtf16BE($text, $bom); - } - - // the chr(13) substitution fixes a bug seen in TCPDF (bug #1421290) - return strtr($text, [')' => '\\)', '(' => '\\(', '\\' => '\\\\', chr(13) => '\r']); - } - - /** - * return array containing codepoints (UTF-8 character values) for the - * string passed in. - * - * based on the excellent TCPDF code by Nicola Asuni and the - * RFC for UTF-8 at http://www.faqs.org/rfcs/rfc3629.html - * - * @param string $text UTF-8 string to process - * @return array UTF-8 codepoints array for the string - */ - function utf8toCodePointsArray(&$text) - { - $length = mb_strlen($text, '8bit'); // http://www.php.net/manual/en/function.mb-strlen.php#77040 - $unicode = []; // array containing unicode values - $bytes = []; // array containing single character byte sequences - $numbytes = 1; // number of octets needed to represent the UTF-8 character - - for ($i = 0; $i < $length; $i++) { - $c = ord($text[$i]); // get one string character at time - if (count($bytes) === 0) { // get starting octect - if ($c <= 0x7F) { - $unicode[] = $c; // use the character "as is" because is ASCII - $numbytes = 1; - } elseif (($c >> 0x05) === 0x06) { // 2 bytes character (0x06 = 110 BIN) - $bytes[] = ($c - 0xC0) << 0x06; - $numbytes = 2; - } elseif (($c >> 0x04) === 0x0E) { // 3 bytes character (0x0E = 1110 BIN) - $bytes[] = ($c - 0xE0) << 0x0C; - $numbytes = 3; - } elseif (($c >> 0x03) === 0x1E) { // 4 bytes character (0x1E = 11110 BIN) - $bytes[] = ($c - 0xF0) << 0x12; - $numbytes = 4; - } else { - // use replacement character for other invalid sequences - $unicode[] = 0xFFFD; - $bytes = []; - $numbytes = 1; - } - } elseif (($c >> 0x06) === 0x02) { // bytes 2, 3 and 4 must start with 0x02 = 10 BIN - $bytes[] = $c - 0x80; - if (count($bytes) === $numbytes) { - // compose UTF-8 bytes to a single unicode value - $c = $bytes[0]; - for ($j = 1; $j < $numbytes; $j++) { - $c += ($bytes[$j] << (($numbytes - $j - 1) * 0x06)); - } - if ((($c >= 0xD800) and ($c <= 0xDFFF)) or ($c >= 0x10FFFF)) { - // The definition of UTF-8 prohibits encoding character numbers between - // U+D800 and U+DFFF, which are reserved for use with the UTF-16 - // encoding form (as surrogate pairs) and do not directly represent - // characters. - $unicode[] = 0xFFFD; // use replacement character - } else { - $unicode[] = $c; // add char to array - } - // reset data for next char - $bytes = []; - $numbytes = 1; - } - } else { - // use replacement character for other invalid sequences - $unicode[] = 0xFFFD; - $bytes = []; - $numbytes = 1; - } - } - - return $unicode; - } - - /** - * convert UTF-8 to UTF-16 with an additional byte order marker - * at the front if required. - * - * based on the excellent TCPDF code by Nicola Asuni and the - * RFC for UTF-8 at http://www.faqs.org/rfcs/rfc3629.html - * - * @param string $text UTF-8 string to process - * @param boolean $bom whether to add the byte order marker - * @return string UTF-16 result string - */ - function utf8toUtf16BE(&$text, $bom = true) - { - $out = $bom ? "\xFE\xFF" : ''; - - $unicode = $this->utf8toCodePointsArray($text); - foreach ($unicode as $c) { - if ($c === 0xFFFD) { - $out .= "\xFF\xFD"; // replacement character - } elseif ($c < 0x10000) { - $out .= chr($c >> 0x08) . chr($c & 0xFF); - } else { - $c -= 0x10000; - $w1 = 0xD800 | ($c >> 0x10); - $w2 = 0xDC00 | ($c & 0x3FF); - $out .= chr($w1 >> 0x08) . chr($w1 & 0xFF) . chr($w2 >> 0x08) . chr($w2 & 0xFF); - } - } - - return $out; - } - - /** - * given a start position and information about how text is to be laid out, calculate where - * on the page the text will end - * - * @param $x - * @param $y - * @param $angle - * @param $size - * @param $wa - * @param $text - * @return array - */ - private function getTextPosition($x, $y, $angle, $size, $wa, $text) - { - // given this information return an array containing x and y for the end position as elements 0 and 1 - $w = $this->getTextWidth($size, $text); - - // need to adjust for the number of spaces in this text - $words = explode(' ', $text); - $nspaces = count($words) - 1; - $w += $wa * $nspaces; - $a = deg2rad((float)$angle); - - return [cos($a) * $w + $x, -sin($a) * $w + $y]; - } - - /** - * Callback method used by smallCaps - * - * @param array $matches - * - * @return string - */ - function toUpper($matches) - { - return mb_strtoupper($matches[0]); - } - - function concatMatches($matches) - { - $str = ""; - foreach ($matches as $match) { - $str .= $match[0]; - } - - return $str; - } - - /** - * register text for font subsetting - * - * @param string $font - * @param string $text - */ - function registerText($font, $text) - { - if (!$this->isUnicode || in_array(mb_strtolower(basename($font)), self::$coreFonts)) { - return; - } - - if (!isset($this->stringSubsets[$font])) { - $base_subset = "\u{fffd}\u{fffe}\u{ffff}"; - $this->stringSubsets[$font] = $this->utf8toCodePointsArray($base_subset); - } - - $this->stringSubsets[$font] = array_unique( - array_merge($this->stringSubsets[$font], $this->utf8toCodePointsArray($text)) - ); - } - - /** - * add text to the document, at a specified location, size and angle on the page - * - * @param float $x - * @param float $y - * @param float $size - * @param string $text - * @param float $angle - * @param float $wordSpaceAdjust - * @param float $charSpaceAdjust - * @param bool $smallCaps - */ - function addText($x, $y, $size, $text, $angle = 0, $wordSpaceAdjust = 0, $charSpaceAdjust = 0, $smallCaps = false) - { - if (!$this->numFonts) { - $this->selectFont($this->defaultFont); - } - - $text = str_replace(["\r", "\n"], "", $text); - - // if ($smallCaps) { - // preg_match_all("/(\P{Ll}+)/u", $text, $matches, PREG_SET_ORDER); - // $lower = $this->concatMatches($matches); - // d($lower); - - // preg_match_all("/(\p{Ll}+)/u", $text, $matches, PREG_SET_ORDER); - // $other = $this->concatMatches($matches); - // d($other); - - // $text = preg_replace_callback("/\p{Ll}/u", array($this, "toUpper"), $text); - // } - - // if there are any open callbacks, then they should be called, to show the start of the line - if ($this->nCallback > 0) { - for ($i = $this->nCallback; $i > 0; $i--) { - // call each function - $info = [ - 'x' => $x, - 'y' => $y, - 'angle' => $angle, - 'status' => 'sol', - 'p' => $this->callback[$i]['p'], - 'nCallback' => $this->callback[$i]['nCallback'], - 'height' => $this->callback[$i]['height'], - 'descender' => $this->callback[$i]['descender'] - ]; - - $func = $this->callback[$i]['f']; - $this->$func($info); - } - } - - if ($angle == 0) { - $this->addContent(sprintf("\nBT %.3F %.3F Td", $x, $y)); - } else { - $a = deg2rad((float)$angle); - $this->addContent( - sprintf("\nBT %.3F %.3F %.3F %.3F %.3F %.3F Tm", cos($a), -sin($a), sin($a), cos($a), $x, $y) - ); - } - - if ($wordSpaceAdjust != 0) { - $this->addContent(sprintf(" %.3F Tw", $wordSpaceAdjust)); - } - - if ($charSpaceAdjust != 0) { - $this->addContent(sprintf(" %.3F Tc", $charSpaceAdjust)); - } - - $len = mb_strlen($text); - $start = 0; - - if ($start < $len) { - $part = $text; // OAR - Don't need this anymore, given that $start always equals zero. substr($text, $start); - $place_text = $this->filterText($part, false); - // modify unicode text so that extra word spacing is manually implemented (bug #) - if ($this->fonts[$this->currentFont]['isUnicode'] && $wordSpaceAdjust != 0) { - $space_scale = 1000 / $size; - $place_text = str_replace("\x00\x20", "\x00\x20)\x00\x20" . (-round($space_scale * $wordSpaceAdjust)) . "\x00\x20(", $place_text); - } - $this->addContent(" /F$this->currentFontNum " . sprintf('%.1F Tf ', $size)); - $this->addContent(" [($place_text)] TJ"); - } - - if ($wordSpaceAdjust != 0) { - $this->addContent(sprintf(" %.3F Tw", 0)); - } - - if ($charSpaceAdjust != 0) { - $this->addContent(sprintf(" %.3F Tc", 0)); - } - - $this->addContent(' ET'); - - // if there are any open callbacks, then they should be called, to show the end of the line - if ($this->nCallback > 0) { - for ($i = $this->nCallback; $i > 0; $i--) { - // call each function - $tmp = $this->getTextPosition($x, $y, $angle, $size, $wordSpaceAdjust, $text); - $info = [ - 'x' => $tmp[0], - 'y' => $tmp[1], - 'angle' => $angle, - 'status' => 'eol', - 'p' => $this->callback[$i]['p'], - 'nCallback' => $this->callback[$i]['nCallback'], - 'height' => $this->callback[$i]['height'], - 'descender' => $this->callback[$i]['descender'] - ]; - $func = $this->callback[$i]['f']; - $this->$func($info); - } - } - - if ($this->fonts[$this->currentFont]['isSubsetting']) { - $this->registerText($this->currentFont, $text); - } - } - - /** - * calculate how wide a given text string will be on a page, at a given size. - * this can be called externally, but is also used by the other class functions - * - * @param float $size - * @param string $text - * @param float $wordSpacing - * @param float $charSpacing - * - * @return float - */ - public function getTextWidth(float $size, string $text, float $wordSpacing = 0.0, float $charSpacing = 0.0): float - { - static $ord_cache = []; - - // this function should not change any of the settings, though it will need to - // track any directives which change during calculation, so copy them at the start - // and put them back at the end. - $store_currentTextState = $this->currentTextState; - - if (!$this->numFonts) { - $this->selectFont($this->defaultFont); - } - - $text = str_replace(["\r", "\n"], "", $text); - - // hmm, this is where it all starts to get tricky - use the font information to - // calculate the width of each character, add them up and convert to user units - $w = 0; - $cf = $this->currentFont; - $current_font = $this->fonts[$cf]; - $space_scale = 1000 / ($size > 0 ? $size : 1); - - if ($current_font['isUnicode']) { - // for Unicode, use the code points array to calculate width rather - // than just the string itself - $unicode = $this->utf8toCodePointsArray($text); - - foreach ($unicode as $char) { - // check if we have to replace character - if (isset($current_font['differences'][$char])) { - $char = $current_font['differences'][$char]; - } - - if (isset($current_font['C'][$char])) { - $char_width = $current_font['C'][$char]; - - // add the character width - $w += $char_width; - - // add additional padding for space - if (isset($current_font['codeToName'][$char]) && $current_font['codeToName'][$char] === 'space') { // Space - $w += $wordSpacing * $space_scale; - } - } - } - - // add additional char spacing - if ($charSpacing != 0) { - $w += $charSpacing * $space_scale * count($unicode); - } - - } else { - // If CPDF is in Unicode mode but the current font does not support Unicode we need to convert the character set to Windows-1252 - if ($this->isUnicode) { - $text = mb_convert_encoding($text, 'Windows-1252', 'UTF-8'); - } - - $len = mb_strlen($text, 'Windows-1252'); - - for ($i = 0; $i < $len; $i++) { - $c = $text[$i]; - $char = isset($ord_cache[$c]) ? $ord_cache[$c] : ($ord_cache[$c] = ord($c)); - - // check if we have to replace character - if (isset($current_font['differences'][$char])) { - $char = $current_font['differences'][$char]; - } - - if (isset($current_font['C'][$char])) { - $char_width = $current_font['C'][$char]; - - // add the character width - $w += $char_width; - - // add additional padding for space - if (isset($current_font['codeToName'][$char]) && $current_font['codeToName'][$char] === 'space') { // Space - $w += $wordSpacing * $space_scale; - } - } - } - - // add additional char spacing - if ($charSpacing != 0) { - $w += $charSpacing * $space_scale * $len; - } - } - - $this->currentTextState = $store_currentTextState; - $this->setCurrentFont(); - - return $w * $size / 1000; - } - - /** - * this will be called at a new page to return the state to what it was on the - * end of the previous page, before the stack was closed down - * This is to get around not being able to have open 'q' across pages - * - * @param int $pageEnd - */ - function saveState($pageEnd = 0) - { - if ($pageEnd) { - // this will be called at a new page to return the state to what it was on the - // end of the previous page, before the stack was closed down - // This is to get around not being able to have open 'q' across pages - $opt = $this->stateStack[$pageEnd]; - // ok to use this as stack starts numbering at 1 - $this->setColor($opt['col'], true); - $this->setStrokeColor($opt['str'], true); - $this->addContent("\n" . $opt['lin']); - // $this->currentLineStyle = $opt['lin']; - } else { - $this->nStateStack++; - $this->stateStack[$this->nStateStack] = [ - 'col' => $this->currentColor, - 'str' => $this->currentStrokeColor, - 'lin' => $this->currentLineStyle - ]; - } - - $this->save(); - } - - /** - * restore a previously saved state - * - * @param int $pageEnd - */ - function restoreState($pageEnd = 0) - { - if (!$pageEnd) { - $n = $this->nStateStack; - $this->currentColor = $this->stateStack[$n]['col']; - $this->currentStrokeColor = $this->stateStack[$n]['str']; - $this->addContent("\n" . $this->stateStack[$n]['lin']); - $this->currentLineStyle = $this->stateStack[$n]['lin']; - $this->stateStack[$n] = null; - unset($this->stateStack[$n]); - $this->nStateStack--; - } - - $this->restore(); - } - - /** - * make a loose object, the output will go into this object, until it is closed, then will revert to - * the current one. - * this object will not appear until it is included within a page. - * the function will return the object number - * - * @return int - */ - function openObject() - { - $this->nStack++; - $this->stack[$this->nStack] = ['c' => $this->currentContents, 'p' => $this->currentPage]; - // add a new object of the content type, to hold the data flow - $this->numObj++; - $this->o_contents($this->numObj, 'new'); - $this->currentContents = $this->numObj; - $this->looseObjects[$this->numObj] = 1; - - return $this->numObj; - } - - /** - * open an existing object for editing - * - * @param $id - */ - function reopenObject($id) - { - $this->nStack++; - $this->stack[$this->nStack] = ['c' => $this->currentContents, 'p' => $this->currentPage]; - $this->currentContents = $id; - - // also if this object is the primary contents for a page, then set the current page to its parent - if (isset($this->objects[$id]['onPage'])) { - $this->currentPage = $this->objects[$id]['onPage']; - } - } - - /** - * close an object - */ - function closeObject() - { - // close the object, as long as there was one open in the first place, which will be indicated by - // an objectId on the stack. - if ($this->nStack > 0) { - $this->currentContents = $this->stack[$this->nStack]['c']; - $this->currentPage = $this->stack[$this->nStack]['p']; - $this->nStack--; - // easier to probably not worry about removing the old entries, they will be overwritten - // if there are new ones. - } - } - - /** - * stop an object from appearing on pages from this point on - * - * @param $id - */ - function stopObject($id) - { - // if an object has been appearing on pages up to now, then stop it, this page will - // be the last one that could contain it. - if (isset($this->addLooseObjects[$id])) { - $this->addLooseObjects[$id] = ''; - } - } - - /** - * after an object has been created, it wil only show if it has been added, using this function. - * - * @param $id - * @param string $options - */ - function addObject($id, $options = 'add') - { - // add the specified object to the page - if (isset($this->looseObjects[$id]) && $this->currentContents != $id) { - // then it is a valid object, and it is not being added to itself - switch ($options) { - case 'all': - // then this object is to be added to this page (done in the next block) and - // all future new pages. - $this->addLooseObjects[$id] = 'all'; - - case 'add': - if (isset($this->objects[$this->currentContents]['onPage'])) { - // then the destination contents is the primary for the page - // (though this object is actually added to that page) - $this->o_page($this->objects[$this->currentContents]['onPage'], 'content', $id); - } - break; - - case 'even': - $this->addLooseObjects[$id] = 'even'; - $pageObjectId = $this->objects[$this->currentContents]['onPage']; - if ($this->objects[$pageObjectId]['info']['pageNum'] % 2 == 0) { - $this->addObject($id); - // hacky huh :) - } - break; - - case 'odd': - $this->addLooseObjects[$id] = 'odd'; - $pageObjectId = $this->objects[$this->currentContents]['onPage']; - if ($this->objects[$pageObjectId]['info']['pageNum'] % 2 == 1) { - $this->addObject($id); - // hacky huh :) - } - break; - - case 'next': - $this->addLooseObjects[$id] = 'all'; - break; - - case 'nexteven': - $this->addLooseObjects[$id] = 'even'; - break; - - case 'nextodd': - $this->addLooseObjects[$id] = 'odd'; - break; - } - } - } - - /** - * return a storable representation of a specific object - * - * @param $id - * @return string|null - */ - function serializeObject($id) - { - if (array_key_exists($id, $this->objects)) { - return serialize($this->objects[$id]); - } - - return null; - } - - /** - * restore an object from its stored representation. Returns its new object id. - * - * @param $obj - * @return int - */ - function restoreSerializedObject($obj) - { - $obj_id = $this->openObject(); - $this->objects[$obj_id] = unserialize($obj); - $this->closeObject(); - - return $obj_id; - } - - /** - * Embeds a file inside the PDF - * - * @param string $filepath path to the file to store inside the PDF - * @param string $embeddedFilename the filename displayed in the list of embedded files - * @param string $description a description in the list of embedded files - */ - public function addEmbeddedFile(string $filepath, string $embeddedFilename, string $description): void - { - $this->numObj++; - $this->o_embedded_file_dictionary( - $this->numObj, - 'new', - [ - 'filepath' => $filepath, - 'filename' => $embeddedFilename, - 'description' => $description - ] - ); - } - - /** - * Add content to the documents info object - * - * @param string|array $label - * @param string $value - */ - public function addInfo($label, string $value = ""): void - { - // this will only work if the label is one of the valid ones. - // modify this so that arrays can be passed as well. - // if $label is an array then assume that it is key => value pairs - // else assume that they are both scalar, anything else will probably error - if (is_array($label)) { - foreach ($label as $l => $v) { - $this->o_info($this->infoObject, $l, (string) $v); - } - } else { - $this->o_info($this->infoObject, $label, $value); - } - } - - /** - * set the viewer preferences of the document, it is up to the browser to obey these. - * - * @param $label - * @param int $value - */ - function setPreferences($label, $value = 0) - { - // this will only work if the label is one of the valid ones. - if (is_array($label)) { - foreach ($label as $l => $v) { - $this->o_catalog($this->catalogId, 'viewerPreferences', [$l => $v]); - } - } else { - $this->o_catalog($this->catalogId, 'viewerPreferences', [$label => $value]); - } - } - - /** - * extract an integer from a position in a byte stream - * - * @param $data - * @param $pos - * @param $num - * @return int - */ - private function getBytes(&$data, $pos, $num) - { - // return the integer represented by $num bytes from $pos within $data - $ret = 0; - for ($i = 0; $i < $num; $i++) { - $ret *= 256; - $ret += ord($data[$pos + $i]); - } - - return $ret; - } - - /** - * Check if image already added to pdf image directory. - * If yes, need not to create again (pass empty data) - * - * @param string $imgname - * @return bool - */ - function image_iscached($imgname) - { - return isset($this->imagelist[$imgname]); - } - - /** - * add a PNG image into the document, from a GD object - * this should work with remote files - * - * @param \GdImage|resource $img A GD resource - * @param string $file The PNG file - * @param float $x X position - * @param float $y Y position - * @param float $w Width - * @param float $h Height - * @param bool $is_mask true if the image is a mask - * @param bool $mask true if the image is masked - * @throws Exception - */ - function addImagePng(&$img, $file, $x, $y, $w = 0.0, $h = 0.0, $is_mask = false, $mask = null) - { - if (!function_exists("imagepng")) { - throw new \Exception("The PHP GD extension is required, but is not installed."); - } - - //if already cached, need not to read again - if (isset($this->imagelist[$file])) { - $data = null; - } else { - // Example for transparency handling on new image. Retain for current image - // $tIndex = imagecolortransparent($img); - // if ($tIndex > 0) { - // $tColor = imagecolorsforindex($img, $tIndex); - // $new_tIndex = imagecolorallocate($new_img, $tColor['red'], $tColor['green'], $tColor['blue']); - // imagefill($new_img, 0, 0, $new_tIndex); - // imagecolortransparent($new_img, $new_tIndex); - // } - // blending mode (literal/blending) on drawing into current image. not relevant when not saved or not drawn - //imagealphablending($img, true); - - //default, but explicitely set to ensure pdf compatibility - imagesavealpha($img, false/*!$is_mask && !$mask*/); - - $error = 0; - //DEBUG_IMG_TEMP - //debugpng - if (defined("DEBUGPNG") && DEBUGPNG) { - print '[addImagePng ' . $file . ']'; - } - - ob_start(); - @imagepng($img); - $data = ob_get_clean(); - - if ($data == '') { - $error = 1; - $errormsg = 'trouble writing file from GD'; - //DEBUG_IMG_TEMP - //debugpng - if (defined("DEBUGPNG") && DEBUGPNG) { - print 'trouble writing file from GD'; - } - } - - if ($error) { - $this->addMessage('PNG error - (' . $file . ') ' . $errormsg); - - return; - } - } //End isset($this->imagelist[$file]) (png Duplicate removal) - - $this->addPngFromBuf($data, $file, $x, $y, $w, $h, $is_mask, $mask); - } - - /** - * @param $file - * @param $x - * @param $y - * @param $w - * @param $h - * @param $byte - */ - protected function addImagePngAlpha($file, $x, $y, $w, $h, $byte) - { - // generate images - $img = @imagecreatefrompng($file); - - if ($img === false) { - return; - } - - // FIXME The pixel transformation doesn't work well with 8bit PNGs - $eight_bit = ($byte & 4) !== 4; - - $wpx = imagesx($img); - $hpx = imagesy($img); - - imagesavealpha($img, false); - - // create temp alpha file - $tempfile_alpha = @tempnam($this->tmp, "cpdf_img_"); - @unlink($tempfile_alpha); - $tempfile_alpha = "$tempfile_alpha.png"; - - // create temp plain file - $tempfile_plain = @tempnam($this->tmp, "cpdf_img_"); - @unlink($tempfile_plain); - $tempfile_plain = "$tempfile_plain.png"; - - $imgalpha = imagecreate($wpx, $hpx); - imagesavealpha($imgalpha, false); - - // generate gray scale palette (0 -> 255) - for ($c = 0; $c < 256; ++$c) { - imagecolorallocate($imgalpha, $c, $c, $c); - } - - // Use PECL gmagick + Graphics Magic to process transparent PNG images - if (extension_loaded("gmagick")) { - $gmagick = new \Gmagick($file); - $gmagick->setimageformat('png'); - - // Get opacity channel (negative of alpha channel) - $alpha_channel_neg = clone $gmagick; - $alpha_channel_neg->separateimagechannel(\Gmagick::CHANNEL_OPACITY); - - // Negate opacity channel - $alpha_channel = new \Gmagick(); - $alpha_channel->newimage($wpx, $hpx, "#FFFFFF", "png"); - $alpha_channel->compositeimage($alpha_channel_neg, \Gmagick::COMPOSITE_DIFFERENCE, 0, 0); - $alpha_channel->separateimagechannel(\Gmagick::CHANNEL_RED); - $alpha_channel->writeimage($tempfile_alpha); - - // Cast to 8bit+palette - $imgalpha_ = @imagecreatefrompng($tempfile_alpha); - imagecopy($imgalpha, $imgalpha_, 0, 0, 0, 0, $wpx, $hpx); - imagedestroy($imgalpha_); - imagepng($imgalpha, $tempfile_alpha); - - // Make opaque image - $color_channels = new \Gmagick(); - $color_channels->newimage($wpx, $hpx, "#FFFFFF", "png"); - $color_channels->compositeimage($gmagick, \Gmagick::COMPOSITE_COPYRED, 0, 0); - $color_channels->compositeimage($gmagick, \Gmagick::COMPOSITE_COPYGREEN, 0, 0); - $color_channels->compositeimage($gmagick, \Gmagick::COMPOSITE_COPYBLUE, 0, 0); - $color_channels->writeimage($tempfile_plain); - - $imgplain = @imagecreatefrompng($tempfile_plain); - } - // Use PECL imagick + ImageMagic to process transparent PNG images - elseif (extension_loaded("imagick")) { - // Native cloning was added to pecl-imagick in svn commit 263814 - // the first version containing it was 3.0.1RC1 - static $imagickClonable = null; - if ($imagickClonable === null) { - $imagickClonable = true; - if (defined('Imagick::IMAGICK_EXTVER')) { - $imagickVersion = \Imagick::IMAGICK_EXTVER; - } else { - $imagickVersion = '0'; - } - if (version_compare($imagickVersion, '0.0.1', '>=')) { - $imagickClonable = version_compare($imagickVersion, '3.0.1rc1', '>='); - } - } - - $imagick = new \Imagick($file); - $imagick->setFormat('png'); - - // Get opacity channel (negative of alpha channel) - if ($imagick->getImageAlphaChannel()) { - $alpha_channel = $imagickClonable ? clone $imagick : $imagick->clone(); - $alpha_channel->separateImageChannel(\Imagick::CHANNEL_ALPHA); - // Since ImageMagick7 negate invert transparency as default - if (\Imagick::getVersion()['versionNumber'] < 1800) { - $alpha_channel->negateImage(true); - } - $alpha_channel->writeImage($tempfile_alpha); - - // Cast to 8bit+palette - $imgalpha_ = @imagecreatefrompng($tempfile_alpha); - imagecopy($imgalpha, $imgalpha_, 0, 0, 0, 0, $wpx, $hpx); - imagedestroy($imgalpha_); - imagepng($imgalpha, $tempfile_alpha); - } else { - $tempfile_alpha = null; - } - - // Make opaque image - $color_channels = new \Imagick(); - $color_channels->newImage($wpx, $hpx, "#FFFFFF", "png"); - $color_channels->compositeImage($imagick, \Imagick::COMPOSITE_COPYRED, 0, 0); - $color_channels->compositeImage($imagick, \Imagick::COMPOSITE_COPYGREEN, 0, 0); - $color_channels->compositeImage($imagick, \Imagick::COMPOSITE_COPYBLUE, 0, 0); - $color_channels->writeImage($tempfile_plain); - - $imgplain = @imagecreatefrompng($tempfile_plain); - } else { - // allocated colors cache - $allocated_colors = []; - - // extract alpha channel - for ($xpx = 0; $xpx < $wpx; ++$xpx) { - for ($ypx = 0; $ypx < $hpx; ++$ypx) { - $color = imagecolorat($img, $xpx, $ypx); - $col = imagecolorsforindex($img, $color); - $alpha = $col['alpha']; - - if ($eight_bit) { - // with gamma correction - $gammacorr = 2.2; - $pixel = round(pow((((127 - $alpha) * 255 / 127) / 255), $gammacorr) * 255); - } else { - // without gamma correction - $pixel = (127 - $alpha) * 2; - - $key = $col['red'] . $col['green'] . $col['blue']; - - if (!isset($allocated_colors[$key])) { - $pixel_img = imagecolorallocate($img, $col['red'], $col['green'], $col['blue']); - $allocated_colors[$key] = $pixel_img; - } else { - $pixel_img = $allocated_colors[$key]; - } - - imagesetpixel($img, $xpx, $ypx, $pixel_img); - } - - imagesetpixel($imgalpha, $xpx, $ypx, $pixel); - } - } - - // extract image without alpha channel - $imgplain = imagecreatetruecolor($wpx, $hpx); - imagecopy($imgplain, $img, 0, 0, 0, 0, $wpx, $hpx); - imagedestroy($img); - - imagepng($imgalpha, $tempfile_alpha); - imagepng($imgplain, $tempfile_plain); - } - - $this->imageAlphaList[$file] = [$tempfile_alpha, $tempfile_plain]; - - // embed mask image - if ($tempfile_alpha) { - $this->addImagePng($imgalpha, $tempfile_alpha, $x, $y, $w, $h, true); - imagedestroy($imgalpha); - $this->imageCache[] = $tempfile_alpha; - } - - // embed image, masked with previously embedded mask - $this->addImagePng($imgplain, $tempfile_plain, $x, $y, $w, $h, false, ($tempfile_alpha !== null)); - imagedestroy($imgplain); - $this->imageCache[] = $tempfile_plain; - } - - /** - * add a PNG image into the document, from a file - * this should work with remote files - * - * @param $file - * @param $x - * @param $y - * @param int $w - * @param int $h - * @throws Exception - */ - function addPngFromFile($file, $x, $y, $w = 0, $h = 0) - { - if (!function_exists("imagecreatefrompng")) { - throw new \Exception("The PHP GD extension is required, but is not installed."); - } - - if (isset($this->imageAlphaList[$file])) { - [$alphaFile, $plainFile] = $this->imageAlphaList[$file]; - - if ($alphaFile) { - $img = null; - $this->addImagePng($img, $alphaFile, $x, $y, $w, $h, true); - } - - $img = null; - $this->addImagePng($img, $plainFile, $x, $y, $w, $h, false, ($plainFile !== null)); - return; - } - - //if already cached, need not to read again - if (isset($this->imagelist[$file])) { - $img = null; - } else { - $info = file_get_contents($file, false, null, 24, 5); - $meta = unpack("CbitDepth/CcolorType/CcompressionMethod/CfilterMethod/CinterlaceMethod", $info); - $bit_depth = $meta["bitDepth"]; - $color_type = $meta["colorType"]; - - // http://www.w3.org/TR/PNG/#11IHDR - // 3 => indexed - // 4 => greyscale with alpha - // 6 => fullcolor with alpha - $is_alpha = in_array($color_type, [4, 6]) || ($color_type == 3 && $bit_depth != 4); - - if ($is_alpha) { // exclude grayscale alpha - $this->addImagePngAlpha($file, $x, $y, $w, $h, $color_type); - return; - } - - //png files typically contain an alpha channel. - //pdf file format or class.pdf does not support alpha blending. - //on alpha blended images, more transparent areas have a color near black. - //This appears in the result on not storing the alpha channel. - //Correct would be the box background image or its parent when transparent. - //But this would make the image dependent on the background. - //Therefore create an image with white background and copy in - //A more natural background than black is white. - //Therefore create an empty image with white background and merge the - //image in with alpha blending. - $imgtmp = @imagecreatefrompng($file); - if (!$imgtmp) { - return; - } - $sx = imagesx($imgtmp); - $sy = imagesy($imgtmp); - $img = imagecreatetruecolor($sx, $sy); - imagealphablending($img, true); - - // @todo is it still needed ?? - $ti = imagecolortransparent($imgtmp); - if ($ti >= 0) { - $tc = imagecolorsforindex($imgtmp, $ti); - $ti = imagecolorallocate($img, $tc['red'], $tc['green'], $tc['blue']); - imagefill($img, 0, 0, $ti); - imagecolortransparent($img, $ti); - } else { - imagefill($img, 1, 1, imagecolorallocate($img, 255, 255, 255)); - } - - imagecopy($img, $imgtmp, 0, 0, 0, 0, $sx, $sy); - imagedestroy($imgtmp); - } - $this->addImagePng($img, $file, $x, $y, $w, $h); - - if ($img) { - imagedestroy($img); - } - } - - /** - * add a PNG image into the document, from a file - * this should work with remote files - * - * @param $file - * @param $x - * @param $y - * @param int $w - * @param int $h - */ - function addSvgFromFile($file, $x, $y, $w = 0, $h = 0) - { - $doc = new \Svg\Document(); - $doc->loadFile($file); - $dimensions = $doc->getDimensions(); - - $this->save(); - - $this->transform([$w / $dimensions["width"], 0, 0, $h / $dimensions["height"], $x, $y]); - - $surface = new \Svg\Surface\SurfaceCpdf($doc, $this); - $doc->render($surface); - - $this->restore(); - } - - /** - * add a PNG image into the document, from a memory buffer of the file - * - * @param $data - * @param $file - * @param $x - * @param $y - * @param float $w - * @param float $h - * @param bool $is_mask - * @param null $mask - */ - function addPngFromBuf(&$data, $file, $x, $y, $w = 0.0, $h = 0.0, $is_mask = false, $mask = null) - { - if (isset($this->imagelist[$file])) { - $data = null; - $info['width'] = $this->imagelist[$file]['w']; - $info['height'] = $this->imagelist[$file]['h']; - $label = $this->imagelist[$file]['label']; - } else { - if ($data == null) { - $this->addMessage('addPngFromBuf error - data not present!'); - - return; - } - - $error = 0; - - if (!$error) { - $header = chr(137) . chr(80) . chr(78) . chr(71) . chr(13) . chr(10) . chr(26) . chr(10); - - if (mb_substr($data, 0, 8, '8bit') != $header) { - $error = 1; - - if (defined("DEBUGPNG") && DEBUGPNG) { - print '[addPngFromFile this file does not have a valid header ' . $file . ']'; - } - - $errormsg = 'this file does not have a valid header'; - } - } - - if (!$error) { - // set pointer - $p = 8; - $len = mb_strlen($data, '8bit'); - - // cycle through the file, identifying chunks - $haveHeader = 0; - $info = []; - $idata = ''; - $pdata = ''; - - while ($p < $len) { - $chunkLen = $this->getBytes($data, $p, 4); - $chunkType = mb_substr($data, $p + 4, 4, '8bit'); - - switch ($chunkType) { - case 'IHDR': - // this is where all the file information comes from - $info['width'] = $this->getBytes($data, $p + 8, 4); - $info['height'] = $this->getBytes($data, $p + 12, 4); - $info['bitDepth'] = ord($data[$p + 16]); - $info['colorType'] = ord($data[$p + 17]); - $info['compressionMethod'] = ord($data[$p + 18]); - $info['filterMethod'] = ord($data[$p + 19]); - $info['interlaceMethod'] = ord($data[$p + 20]); - - //print_r($info); - $haveHeader = 1; - if ($info['compressionMethod'] != 0) { - $error = 1; - - //debugpng - if (defined("DEBUGPNG") && DEBUGPNG) { - print '[addPngFromFile unsupported compression method ' . $file . ']'; - } - - $errormsg = 'unsupported compression method'; - } - - if ($info['filterMethod'] != 0) { - $error = 1; - - //debugpng - if (defined("DEBUGPNG") && DEBUGPNG) { - print '[addPngFromFile unsupported filter method ' . $file . ']'; - } - - $errormsg = 'unsupported filter method'; - } - break; - - case 'PLTE': - $pdata .= mb_substr($data, $p + 8, $chunkLen, '8bit'); - break; - - case 'IDAT': - $idata .= mb_substr($data, $p + 8, $chunkLen, '8bit'); - break; - - case 'tRNS': - //this chunk can only occur once and it must occur after the PLTE chunk and before IDAT chunk - //print "tRNS found, color type = ".$info['colorType']."\n"; - $transparency = []; - - switch ($info['colorType']) { - // indexed color, rbg - case 3: - /* corresponding to entries in the plte chunk - Alpha for palette index 0: 1 byte - Alpha for palette index 1: 1 byte - ...etc... - */ - // there will be one entry for each palette entry. up until the last non-opaque entry. - // set up an array, stretching over all palette entries which will be o (opaque) or 1 (transparent) - $transparency['type'] = 'indexed'; - $trans = 0; - - for ($i = $chunkLen; $i >= 0; $i--) { - if (ord($data[$p + 8 + $i]) == 0) { - $trans = $i; - } - } - - $transparency['data'] = $trans; - break; - - // grayscale - case 0: - /* corresponding to entries in the plte chunk - Gray: 2 bytes, range 0 .. (2^bitdepth)-1 - */ - // $transparency['grayscale'] = $this->PRVT_getBytes($data,$p+8,2); // g = grayscale - $transparency['type'] = 'indexed'; - $transparency['data'] = ord($data[$p + 8 + 1]); - break; - - // truecolor - case 2: - /* corresponding to entries in the plte chunk - Red: 2 bytes, range 0 .. (2^bitdepth)-1 - Green: 2 bytes, range 0 .. (2^bitdepth)-1 - Blue: 2 bytes, range 0 .. (2^bitdepth)-1 - */ - $transparency['r'] = $this->getBytes($data, $p + 8, 2); - // r from truecolor - $transparency['g'] = $this->getBytes($data, $p + 10, 2); - // g from truecolor - $transparency['b'] = $this->getBytes($data, $p + 12, 2); - // b from truecolor - - $transparency['type'] = 'color-key'; - break; - - //unsupported transparency type - default: - if (defined("DEBUGPNG") && DEBUGPNG) { - print '[addPngFromFile unsupported transparency type ' . $file . ']'; - } - break; - } - - // KS End new code - break; - - default: - break; - } - - $p += $chunkLen + 12; - } - - if (!$haveHeader) { - $error = 1; - - //debugpng - if (defined("DEBUGPNG") && DEBUGPNG) { - print '[addPngFromFile information header is missing ' . $file . ']'; - } - - $errormsg = 'information header is missing'; - } - - if (isset($info['interlaceMethod']) && $info['interlaceMethod']) { - $error = 1; - - //debugpng - if (defined("DEBUGPNG") && DEBUGPNG) { - print '[addPngFromFile no support for interlaced images in pdf ' . $file . ']'; - } - - $errormsg = 'There appears to be no support for interlaced images in pdf.'; - } - } - - if (!$error && $info['bitDepth'] > 8) { - $error = 1; - - //debugpng - if (defined("DEBUGPNG") && DEBUGPNG) { - print '[addPngFromFile bit depth of 8 or less is supported ' . $file . ']'; - } - - $errormsg = 'only bit depth of 8 or less is supported'; - } - - if (!$error) { - switch ($info['colorType']) { - case 3: - $color = 'DeviceRGB'; - $ncolor = 1; - break; - - case 2: - $color = 'DeviceRGB'; - $ncolor = 3; - break; - - case 0: - $color = 'DeviceGray'; - $ncolor = 1; - break; - - default: - $error = 1; - - //debugpng - if (defined("DEBUGPNG") && DEBUGPNG) { - print '[addPngFromFile alpha channel not supported: ' . $info['colorType'] . ' ' . $file . ']'; - } - - $errormsg = 'transparency alpha channel not supported, transparency only supported for palette images.'; - } - } - - if ($error) { - $this->addMessage('PNG error - (' . $file . ') ' . $errormsg); - - return; - } - - //print_r($info); - // so this image is ok... add it in. - $this->numImages++; - $im = $this->numImages; - $label = "I$im"; - $this->numObj++; - - // $this->o_image($this->numObj,'new',array('label' => $label,'data' => $idata,'iw' => $w,'ih' => $h,'type' => 'png','ic' => $info['width'])); - $options = [ - 'label' => $label, - 'data' => $idata, - 'bitsPerComponent' => $info['bitDepth'], - 'pdata' => $pdata, - 'iw' => $info['width'], - 'ih' => $info['height'], - 'type' => 'png', - 'color' => $color, - 'ncolor' => $ncolor, - 'masked' => $mask, - 'isMask' => $is_mask - ]; - - if (isset($transparency)) { - $options['transparency'] = $transparency; - } - - $this->o_image($this->numObj, 'new', $options); - $this->imagelist[$file] = ['label' => $label, 'w' => $info['width'], 'h' => $info['height']]; - } - - if ($is_mask) { - return; - } - - if ($w <= 0 && $h <= 0) { - $w = $info['width']; - $h = $info['height']; - } - - if ($w <= 0) { - $w = $h / $info['height'] * $info['width']; - } - - if ($h <= 0) { - $h = $w * $info['height'] / $info['width']; - } - - $this->addContent(sprintf("\nq\n%.3F 0 0 %.3F %.3F %.3F cm /%s Do\nQ", $w, $h, $x, $y, $label)); - } - - /** - * add a JPEG image into the document, from a file - * - * @param $img - * @param $x - * @param $y - * @param int $w - * @param int $h - */ - function addJpegFromFile($img, $x, $y, $w = 0, $h = 0) - { - // attempt to add a jpeg image straight from a file, using no GD commands - // note that this function is unable to operate on a remote file. - - if (!file_exists($img)) { - return; - } - - if ($this->image_iscached($img)) { - $data = null; - $imageWidth = $this->imagelist[$img]['w']; - $imageHeight = $this->imagelist[$img]['h']; - $channels = $this->imagelist[$img]['c']; - } else { - $tmp = getimagesize($img); - $imageWidth = $tmp[0]; - $imageHeight = $tmp[1]; - - if (isset($tmp['channels'])) { - $channels = $tmp['channels']; - } else { - $channels = 3; - } - - $data = file_get_contents($img); - } - - if ($w <= 0 && $h <= 0) { - $w = $imageWidth; - } - - if ($w == 0) { - $w = $h / $imageHeight * $imageWidth; - } - - if ($h == 0) { - $h = $w * $imageHeight / $imageWidth; - } - - $this->addJpegImage_common($data, $img, $imageWidth, $imageHeight, $x, $y, $w, $h, $channels); - } - - /** - * common code used by the two JPEG adding functions - * @param $data - * @param $imgname - * @param $imageWidth - * @param $imageHeight - * @param $x - * @param $y - * @param int $w - * @param int $h - * @param int $channels - */ - private function addJpegImage_common( - &$data, - $imgname, - $imageWidth, - $imageHeight, - $x, - $y, - $w = 0, - $h = 0, - $channels = 3 - ) { - if ($this->image_iscached($imgname)) { - $label = $this->imagelist[$imgname]['label']; - //debugpng - //if (DEBUGPNG) print '[addJpegImage_common Duplicate '.$imgname.']'; - - } else { - if ($data == null) { - $this->addMessage('addJpegImage_common error - (' . $imgname . ') data not present!'); - - return; - } - - // note that this function is not to be called externally - // it is just the common code between the GD and the file options - $this->numImages++; - $im = $this->numImages; - $label = "I$im"; - $this->numObj++; - - $this->o_image( - $this->numObj, - 'new', - [ - 'label' => $label, - 'data' => &$data, - 'iw' => $imageWidth, - 'ih' => $imageHeight, - 'channels' => $channels - ] - ); - - $this->imagelist[$imgname] = [ - 'label' => $label, - 'w' => $imageWidth, - 'h' => $imageHeight, - 'c' => $channels - ]; - } - - $this->addContent(sprintf("\nq\n%.3F 0 0 %.3F %.3F %.3F cm /%s Do\nQ ", $w, $h, $x, $y, $label)); - } - - /** - * specify where the document should open when it first starts - * - * @param $style - * @param int $a - * @param int $b - * @param int $c - */ - function openHere($style, $a = 0, $b = 0, $c = 0) - { - // this function will open the document at a specified page, in a specified style - // the values for style, and the required parameters are: - // 'XYZ' left, top, zoom - // 'Fit' - // 'FitH' top - // 'FitV' left - // 'FitR' left,bottom,right - // 'FitB' - // 'FitBH' top - // 'FitBV' left - $this->numObj++; - $this->o_destination( - $this->numObj, - 'new', - ['page' => $this->currentPage, 'type' => $style, 'p1' => $a, 'p2' => $b, 'p3' => $c] - ); - $id = $this->catalogId; - $this->o_catalog($id, 'openHere', $this->numObj); - } - - /** - * Add JavaScript code to the PDF document - * - * @param string $code - */ - function addJavascript($code) - { - $this->javascript .= $code; - } - - /** - * create a labelled destination within the document - * - * @param $label - * @param $style - * @param int $a - * @param int $b - * @param int $c - */ - function addDestination($label, $style, $a = 0, $b = 0, $c = 0) - { - // associates the given label with the destination, it is done this way so that a destination can be specified after - // it has been linked to - // styles are the same as the 'openHere' function - $this->numObj++; - $this->o_destination( - $this->numObj, - 'new', - ['page' => $this->currentPage, 'type' => $style, 'p1' => $a, 'p2' => $b, 'p3' => $c] - ); - $id = $this->numObj; - - // store the label->idf relationship, note that this means that labels can be used only once - $this->destinations["$label"] = $id; - } - - /** - * define font families, this is used to initialize the font families for the default fonts - * and for the user to add new ones for their fonts. The default bahavious can be overridden should - * that be desired. - * - * @param $family - * @param string $options - */ - function setFontFamily($family, $options = '') - { - if (!is_array($options)) { - if ($family === 'init') { - // set the known family groups - // these font families will be used to enable bold and italic markers to be included - // within text streams. html forms will be used... - $this->fontFamilies['Helvetica.afm'] = - [ - 'b' => 'Helvetica-Bold.afm', - 'i' => 'Helvetica-Oblique.afm', - 'bi' => 'Helvetica-BoldOblique.afm', - 'ib' => 'Helvetica-BoldOblique.afm' - ]; - - $this->fontFamilies['Courier.afm'] = - [ - 'b' => 'Courier-Bold.afm', - 'i' => 'Courier-Oblique.afm', - 'bi' => 'Courier-BoldOblique.afm', - 'ib' => 'Courier-BoldOblique.afm' - ]; - - $this->fontFamilies['Times-Roman.afm'] = - [ - 'b' => 'Times-Bold.afm', - 'i' => 'Times-Italic.afm', - 'bi' => 'Times-BoldItalic.afm', - 'ib' => 'Times-BoldItalic.afm' - ]; - } - } else { - - // the user is trying to set a font family - // note that this can also be used to set the base ones to something else - if (mb_strlen($family)) { - $this->fontFamilies[$family] = $options; - } - } - } - - /** - * used to add messages for use in debugging - * - * @param $message - */ - function addMessage($message) - { - $this->messages .= $message . "\n"; - } - - /** - * a few functions which should allow the document to be treated transactionally. - * - * @param $action - */ - function transaction($action) - { - switch ($action) { - case 'start': - // store all the data away into the checkpoint variable - $data = get_object_vars($this); - $this->checkpoint = $data; - unset($data); - break; - - case 'commit': - if (is_array($this->checkpoint) && isset($this->checkpoint['checkpoint'])) { - $tmp = $this->checkpoint['checkpoint']; - $this->checkpoint = $tmp; - unset($tmp); - } else { - $this->checkpoint = ''; - } - break; - - case 'rewind': - // do not destroy the current checkpoint, but move us back to the state then, so that we can try again - if (is_array($this->checkpoint)) { - // can only abort if were inside a checkpoint - $tmp = $this->checkpoint; - - foreach ($tmp as $k => $v) { - if ($k !== 'checkpoint') { - $this->$k = $v; - } - } - unset($tmp); - } - break; - - case 'abort': - if (is_array($this->checkpoint)) { - // can only abort if were inside a checkpoint - $tmp = $this->checkpoint; - foreach ($tmp as $k => $v) { - $this->$k = $v; - } - unset($tmp); - } - break; - } - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Courier-Bold.afm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Courier-Bold.afm deleted file mode 100644 index 84adbf5a..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Courier-Bold.afm +++ /dev/null @@ -1,344 +0,0 @@ -StartFontMetrics 4.1 -Comment Copyright (c) 1989, 1990, 1991, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved. -Comment Creation Date: Mon Jun 23 16:28:00 0:00:00 -Comment UniqueID 43048 -Comment VMusage 41139 52164 -FontName Courier-Bold -FullName Courier Bold -FamilyName Courier -Weight Bold -ItalicAngle 0 -IsFixedPitch true -CharacterSet ExtendedRoman -FontBBox -113 -250 749 801 -UnderlinePosition -100 -UnderlineThickness 50 -Version 003.000 -Notice Copyright (c) 1989, 1990, 1991, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved. -EncodingScheme WinAnsiEncoding -CapHeight 562 -XHeight 439 -Ascender 629 -Descender -157 -StdHW 84 -StdVW 106 -StartCharMetrics 317 -C 32 ; WX 600 ; N space ; B 0 0 0 0 ; -C 160 ; WX 600 ; N space ; B 0 0 0 0 ; -C 33 ; WX 600 ; N exclam ; B 202 -15 398 572 ; -C 34 ; WX 600 ; N quotedbl ; B 135 277 465 562 ; -C 35 ; WX 600 ; N numbersign ; B 56 -45 544 651 ; -C 36 ; WX 600 ; N dollar ; B 82 -126 519 666 ; -C 37 ; WX 600 ; N percent ; B 5 -15 595 616 ; -C 38 ; WX 600 ; N ampersand ; B 36 -15 546 543 ; -C 146 ; WX 600 ; N quoteright ; B 171 277 423 562 ; -C 40 ; WX 600 ; N parenleft ; B 219 -102 461 616 ; -C 41 ; WX 600 ; N parenright ; B 139 -102 381 616 ; -C 42 ; WX 600 ; N asterisk ; B 91 219 509 601 ; -C 43 ; WX 600 ; N plus ; B 71 39 529 478 ; -C 44 ; WX 600 ; N comma ; B 123 -111 393 174 ; -C 45 ; WX 600 ; N hyphen ; B 100 203 500 313 ; -C 173 ; WX 600 ; N hyphen ; B 100 203 500 313 ; -C 46 ; WX 600 ; N period ; B 192 -15 408 171 ; -C 47 ; WX 600 ; N slash ; B 98 -77 502 626 ; -C 48 ; WX 600 ; N zero ; B 87 -15 513 616 ; -C 49 ; WX 600 ; N one ; B 81 0 539 616 ; -C 50 ; WX 600 ; N two ; B 61 0 499 616 ; -C 51 ; WX 600 ; N three ; B 63 -15 501 616 ; -C 52 ; WX 600 ; N four ; B 53 0 507 616 ; -C 53 ; WX 600 ; N five ; B 70 -15 521 601 ; -C 54 ; WX 600 ; N six ; B 90 -15 521 616 ; -C 55 ; WX 600 ; N seven ; B 55 0 494 601 ; -C 56 ; WX 600 ; N eight ; B 83 -15 517 616 ; -C 57 ; WX 600 ; N nine ; B 79 -15 510 616 ; -C 58 ; WX 600 ; N colon ; B 191 -15 407 425 ; -C 59 ; WX 600 ; N semicolon ; B 123 -111 408 425 ; -C 60 ; WX 600 ; N less ; B 66 15 523 501 ; -C 61 ; WX 600 ; N equal ; B 71 118 529 398 ; -C 62 ; WX 600 ; N greater ; B 77 15 534 501 ; -C 63 ; WX 600 ; N question ; B 98 -14 501 580 ; -C 64 ; WX 600 ; N at ; B 16 -15 584 616 ; -C 65 ; WX 600 ; N A ; B -9 0 609 562 ; -C 66 ; WX 600 ; N B ; B 30 0 573 562 ; -C 67 ; WX 600 ; N C ; B 22 -18 560 580 ; -C 68 ; WX 600 ; N D ; B 30 0 594 562 ; -C 69 ; WX 600 ; N E ; B 25 0 560 562 ; -C 70 ; WX 600 ; N F ; B 39 0 570 562 ; -C 71 ; WX 600 ; N G ; B 22 -18 594 580 ; -C 72 ; WX 600 ; N H ; B 20 0 580 562 ; -C 73 ; WX 600 ; N I ; B 77 0 523 562 ; -C 74 ; WX 600 ; N J ; B 37 -18 601 562 ; -C 75 ; WX 600 ; N K ; B 21 0 599 562 ; -C 76 ; WX 600 ; N L ; B 39 0 578 562 ; -C 77 ; WX 600 ; N M ; B -2 0 602 562 ; -C 78 ; WX 600 ; N N ; B 8 -12 610 562 ; -C 79 ; WX 600 ; N O ; B 22 -18 578 580 ; -C 80 ; WX 600 ; N P ; B 48 0 559 562 ; -C 81 ; WX 600 ; N Q ; B 32 -138 578 580 ; -C 82 ; WX 600 ; N R ; B 24 0 599 562 ; -C 83 ; WX 600 ; N S ; B 47 -22 553 582 ; -C 84 ; WX 600 ; N T ; B 21 0 579 562 ; -C 85 ; WX 600 ; N U ; B 4 -18 596 562 ; -C 86 ; WX 600 ; N V ; B -13 0 613 562 ; -C 87 ; WX 600 ; N W ; B -18 0 618 562 ; -C 88 ; WX 600 ; N X ; B 12 0 588 562 ; -C 89 ; WX 600 ; N Y ; B 12 0 589 562 ; -C 90 ; WX 600 ; N Z ; B 62 0 539 562 ; -C 91 ; WX 600 ; N bracketleft ; B 245 -102 475 616 ; -C 92 ; WX 600 ; N backslash ; B 99 -77 503 626 ; -C 93 ; WX 600 ; N bracketright ; B 125 -102 355 616 ; -C 94 ; WX 600 ; N asciicircum ; B 108 250 492 616 ; -C 95 ; WX 600 ; N underscore ; B 0 -125 600 -75 ; -C 145 ; WX 600 ; N quoteleft ; B 178 277 428 562 ; -C 97 ; WX 600 ; N a ; B 35 -15 570 454 ; -C 98 ; WX 600 ; N b ; B 0 -15 584 626 ; -C 99 ; WX 600 ; N c ; B 40 -15 545 459 ; -C 100 ; WX 600 ; N d ; B 20 -15 591 626 ; -C 101 ; WX 600 ; N e ; B 40 -15 563 454 ; -C 102 ; WX 600 ; N f ; B 83 0 547 626 ; L i fi ; L l fl ; -C 103 ; WX 600 ; N g ; B 30 -146 580 454 ; -C 104 ; WX 600 ; N h ; B 5 0 592 626 ; -C 105 ; WX 600 ; N i ; B 77 0 523 658 ; -C 106 ; WX 600 ; N j ; B 63 -146 440 658 ; -C 107 ; WX 600 ; N k ; B 20 0 585 626 ; -C 108 ; WX 600 ; N l ; B 77 0 523 626 ; -C 109 ; WX 600 ; N m ; B -22 0 626 454 ; -C 110 ; WX 600 ; N n ; B 18 0 592 454 ; -C 111 ; WX 600 ; N o ; B 30 -15 570 454 ; -C 112 ; WX 600 ; N p ; B -1 -142 570 454 ; -C 113 ; WX 600 ; N q ; B 20 -142 591 454 ; -C 114 ; WX 600 ; N r ; B 47 0 580 454 ; -C 115 ; WX 600 ; N s ; B 68 -17 535 459 ; -C 116 ; WX 600 ; N t ; B 47 -15 532 562 ; -C 117 ; WX 600 ; N u ; B -1 -15 569 439 ; -C 118 ; WX 600 ; N v ; B -1 0 601 439 ; -C 119 ; WX 600 ; N w ; B -18 0 618 439 ; -C 120 ; WX 600 ; N x ; B 6 0 594 439 ; -C 121 ; WX 600 ; N y ; B -4 -142 601 439 ; -C 122 ; WX 600 ; N z ; B 81 0 520 439 ; -C 123 ; WX 600 ; N braceleft ; B 160 -102 464 616 ; -C 124 ; WX 600 ; N bar ; B 255 -250 345 750 ; -C 125 ; WX 600 ; N braceright ; B 136 -102 440 616 ; -C 126 ; WX 600 ; N asciitilde ; B 71 153 530 356 ; -C 161 ; WX 600 ; N exclamdown ; B 202 -146 398 449 ; -C 162 ; WX 600 ; N cent ; B 66 -49 518 614 ; -C 163 ; WX 600 ; N sterling ; B 72 -28 558 611 ; -C -1 ; WX 600 ; N fraction ; B 25 -60 576 661 ; -C 165 ; WX 600 ; N yen ; B 10 0 590 562 ; -C 131 ; WX 600 ; N florin ; B -30 -131 572 616 ; -C 167 ; WX 600 ; N section ; B 83 -70 517 580 ; -C 164 ; WX 600 ; N currency ; B 54 49 546 517 ; -C 39 ; WX 600 ; N quotesingle ; B 227 277 373 562 ; -C 147 ; WX 600 ; N quotedblleft ; B 71 277 535 562 ; -C 171 ; WX 600 ; N guillemotleft ; B 8 70 553 446 ; -C 139 ; WX 600 ; N guilsinglleft ; B 141 70 459 446 ; -C 155 ; WX 600 ; N guilsinglright ; B 141 70 459 446 ; -C -1 ; WX 600 ; N fi ; B 12 0 593 626 ; -C -1 ; WX 600 ; N fl ; B 12 0 593 626 ; -C 150 ; WX 600 ; N endash ; B 65 203 535 313 ; -C 134 ; WX 600 ; N dagger ; B 106 -70 494 580 ; -C 135 ; WX 600 ; N daggerdbl ; B 106 -70 494 580 ; -C 183 ; WX 600 ; N periodcentered ; B 196 165 404 351 ; -C 182 ; WX 600 ; N paragraph ; B 6 -70 576 580 ; -C 149 ; WX 600 ; N bullet ; B 140 132 460 430 ; -C 130 ; WX 600 ; N quotesinglbase ; B 175 -142 427 143 ; -C 132 ; WX 600 ; N quotedblbase ; B 65 -142 529 143 ; -C 148 ; WX 600 ; N quotedblright ; B 61 277 525 562 ; -C 187 ; WX 600 ; N guillemotright ; B 47 70 592 446 ; -C 133 ; WX 600 ; N ellipsis ; B 26 -15 574 116 ; -C 137 ; WX 600 ; N perthousand ; B -113 -15 713 616 ; -C 191 ; WX 600 ; N questiondown ; B 99 -146 502 449 ; -C 96 ; WX 600 ; N grave ; B 132 508 395 661 ; -C 180 ; WX 600 ; N acute ; B 205 508 468 661 ; -C 136 ; WX 600 ; N circumflex ; B 103 483 497 657 ; -C 152 ; WX 600 ; N tilde ; B 89 493 512 636 ; -C 175 ; WX 600 ; N macron ; B 88 505 512 585 ; -C -1 ; WX 600 ; N breve ; B 83 468 517 631 ; -C -1 ; WX 600 ; N dotaccent ; B 230 498 370 638 ; -C 168 ; WX 600 ; N dieresis ; B 128 498 472 638 ; -C -1 ; WX 600 ; N ring ; B 198 481 402 678 ; -C 184 ; WX 600 ; N cedilla ; B 205 -206 387 0 ; -C -1 ; WX 600 ; N hungarumlaut ; B 68 488 588 661 ; -C -1 ; WX 600 ; N ogonek ; B 169 -199 400 0 ; -C -1 ; WX 600 ; N caron ; B 103 493 497 667 ; -C 151 ; WX 600 ; N emdash ; B -10 203 610 313 ; -C 198 ; WX 600 ; N AE ; B -29 0 602 562 ; -C 170 ; WX 600 ; N ordfeminine ; B 147 196 453 580 ; -C -1 ; WX 600 ; N Lslash ; B 39 0 578 562 ; -C 216 ; WX 600 ; N Oslash ; B 22 -22 578 584 ; -C 140 ; WX 600 ; N OE ; B -25 0 595 562 ; -C 186 ; WX 600 ; N ordmasculine ; B 147 196 453 580 ; -C 230 ; WX 600 ; N ae ; B -4 -15 601 454 ; -C -1 ; WX 600 ; N dotlessi ; B 77 0 523 439 ; -C -1 ; WX 600 ; N lslash ; B 77 0 523 626 ; -C 248 ; WX 600 ; N oslash ; B 30 -24 570 463 ; -C 156 ; WX 600 ; N oe ; B -18 -15 611 454 ; -C 223 ; WX 600 ; N germandbls ; B 22 -15 596 626 ; -C 207 ; WX 600 ; N Idieresis ; B 77 0 523 761 ; -C 233 ; WX 600 ; N eacute ; B 40 -15 563 661 ; -C -1 ; WX 600 ; N abreve ; B 35 -15 570 661 ; -C -1 ; WX 600 ; N uhungarumlaut ; B -1 -15 628 661 ; -C -1 ; WX 600 ; N ecaron ; B 40 -15 563 667 ; -C 159 ; WX 600 ; N Ydieresis ; B 12 0 589 761 ; -C 247 ; WX 600 ; N divide ; B 71 16 529 500 ; -C 221 ; WX 600 ; N Yacute ; B 12 0 589 784 ; -C 194 ; WX 600 ; N Acircumflex ; B -9 0 609 780 ; -C 225 ; WX 600 ; N aacute ; B 35 -15 570 661 ; -C 219 ; WX 600 ; N Ucircumflex ; B 4 -18 596 780 ; -C 253 ; WX 600 ; N yacute ; B -4 -142 601 661 ; -C -1 ; WX 600 ; N scommaaccent ; B 68 -250 535 459 ; -C 234 ; WX 600 ; N ecircumflex ; B 40 -15 563 657 ; -C -1 ; WX 600 ; N Uring ; B 4 -18 596 801 ; -C 220 ; WX 600 ; N Udieresis ; B 4 -18 596 761 ; -C -1 ; WX 600 ; N aogonek ; B 35 -199 586 454 ; -C 218 ; WX 600 ; N Uacute ; B 4 -18 596 784 ; -C -1 ; WX 600 ; N uogonek ; B -1 -199 585 439 ; -C 203 ; WX 600 ; N Edieresis ; B 25 0 560 761 ; -C -1 ; WX 600 ; N Dcroat ; B 30 0 594 562 ; -C -1 ; WX 600 ; N commaaccent ; B 205 -250 397 -57 ; -C 169 ; WX 600 ; N copyright ; B 0 -18 600 580 ; -C -1 ; WX 600 ; N Emacron ; B 25 0 560 708 ; -C -1 ; WX 600 ; N ccaron ; B 40 -15 545 667 ; -C 229 ; WX 600 ; N aring ; B 35 -15 570 678 ; -C -1 ; WX 600 ; N Ncommaaccent ; B 8 -250 610 562 ; -C -1 ; WX 600 ; N lacute ; B 77 0 523 801 ; -C 224 ; WX 600 ; N agrave ; B 35 -15 570 661 ; -C -1 ; WX 600 ; N Tcommaaccent ; B 21 -250 579 562 ; -C -1 ; WX 600 ; N Cacute ; B 22 -18 560 784 ; -C 227 ; WX 600 ; N atilde ; B 35 -15 570 636 ; -C -1 ; WX 600 ; N Edotaccent ; B 25 0 560 761 ; -C 154 ; WX 600 ; N scaron ; B 68 -17 535 667 ; -C -1 ; WX 600 ; N scedilla ; B 68 -206 535 459 ; -C 237 ; WX 600 ; N iacute ; B 77 0 523 661 ; -C -1 ; WX 600 ; N lozenge ; B 66 0 534 740 ; -C -1 ; WX 600 ; N Rcaron ; B 24 0 599 790 ; -C -1 ; WX 600 ; N Gcommaaccent ; B 22 -250 594 580 ; -C 251 ; WX 600 ; N ucircumflex ; B -1 -15 569 657 ; -C 226 ; WX 600 ; N acircumflex ; B 35 -15 570 657 ; -C -1 ; WX 600 ; N Amacron ; B -9 0 609 708 ; -C -1 ; WX 600 ; N rcaron ; B 47 0 580 667 ; -C 231 ; WX 600 ; N ccedilla ; B 40 -206 545 459 ; -C -1 ; WX 600 ; N Zdotaccent ; B 62 0 539 761 ; -C 222 ; WX 600 ; N Thorn ; B 48 0 557 562 ; -C -1 ; WX 600 ; N Omacron ; B 22 -18 578 708 ; -C -1 ; WX 600 ; N Racute ; B 24 0 599 784 ; -C -1 ; WX 600 ; N Sacute ; B 47 -22 553 784 ; -C -1 ; WX 600 ; N dcaron ; B 20 -15 727 626 ; -C -1 ; WX 600 ; N Umacron ; B 4 -18 596 708 ; -C -1 ; WX 600 ; N uring ; B -1 -15 569 678 ; -C 179 ; WX 600 ; N threesuperior ; B 138 222 433 616 ; -C 210 ; WX 600 ; N Ograve ; B 22 -18 578 784 ; -C 192 ; WX 600 ; N Agrave ; B -9 0 609 784 ; -C -1 ; WX 600 ; N Abreve ; B -9 0 609 784 ; -C 215 ; WX 600 ; N multiply ; B 81 39 520 478 ; -C 250 ; WX 600 ; N uacute ; B -1 -15 569 661 ; -C -1 ; WX 600 ; N Tcaron ; B 21 0 579 790 ; -C -1 ; WX 600 ; N partialdiff ; B 63 -38 537 728 ; -C 255 ; WX 600 ; N ydieresis ; B -4 -142 601 638 ; -C -1 ; WX 600 ; N Nacute ; B 8 -12 610 784 ; -C 238 ; WX 600 ; N icircumflex ; B 73 0 523 657 ; -C 202 ; WX 600 ; N Ecircumflex ; B 25 0 560 780 ; -C 228 ; WX 600 ; N adieresis ; B 35 -15 570 638 ; -C 235 ; WX 600 ; N edieresis ; B 40 -15 563 638 ; -C -1 ; WX 600 ; N cacute ; B 40 -15 545 661 ; -C -1 ; WX 600 ; N nacute ; B 18 0 592 661 ; -C -1 ; WX 600 ; N umacron ; B -1 -15 569 585 ; -C -1 ; WX 600 ; N Ncaron ; B 8 -12 610 790 ; -C 205 ; WX 600 ; N Iacute ; B 77 0 523 784 ; -C 177 ; WX 600 ; N plusminus ; B 71 24 529 515 ; -C 166 ; WX 600 ; N brokenbar ; B 255 -175 345 675 ; -C 174 ; WX 600 ; N registered ; B 0 -18 600 580 ; -C -1 ; WX 600 ; N Gbreve ; B 22 -18 594 784 ; -C -1 ; WX 600 ; N Idotaccent ; B 77 0 523 761 ; -C -1 ; WX 600 ; N summation ; B 15 -10 586 706 ; -C 200 ; WX 600 ; N Egrave ; B 25 0 560 784 ; -C -1 ; WX 600 ; N racute ; B 47 0 580 661 ; -C -1 ; WX 600 ; N omacron ; B 30 -15 570 585 ; -C -1 ; WX 600 ; N Zacute ; B 62 0 539 784 ; -C 142 ; WX 600 ; N Zcaron ; B 62 0 539 790 ; -C -1 ; WX 600 ; N greaterequal ; B 26 0 523 696 ; -C 208 ; WX 600 ; N Eth ; B 30 0 594 562 ; -C 199 ; WX 600 ; N Ccedilla ; B 22 -206 560 580 ; -C -1 ; WX 600 ; N lcommaaccent ; B 77 -250 523 626 ; -C -1 ; WX 600 ; N tcaron ; B 47 -15 532 703 ; -C -1 ; WX 600 ; N eogonek ; B 40 -199 563 454 ; -C -1 ; WX 600 ; N Uogonek ; B 4 -199 596 562 ; -C 193 ; WX 600 ; N Aacute ; B -9 0 609 784 ; -C 196 ; WX 600 ; N Adieresis ; B -9 0 609 761 ; -C 232 ; WX 600 ; N egrave ; B 40 -15 563 661 ; -C -1 ; WX 600 ; N zacute ; B 81 0 520 661 ; -C -1 ; WX 600 ; N iogonek ; B 77 -199 523 658 ; -C 211 ; WX 600 ; N Oacute ; B 22 -18 578 784 ; -C 243 ; WX 600 ; N oacute ; B 30 -15 570 661 ; -C -1 ; WX 600 ; N amacron ; B 35 -15 570 585 ; -C -1 ; WX 600 ; N sacute ; B 68 -17 535 661 ; -C 239 ; WX 600 ; N idieresis ; B 77 0 523 618 ; -C 212 ; WX 600 ; N Ocircumflex ; B 22 -18 578 780 ; -C 217 ; WX 600 ; N Ugrave ; B 4 -18 596 784 ; -C -1 ; WX 600 ; N Delta ; B 6 0 594 688 ; -C 254 ; WX 600 ; N thorn ; B -14 -142 570 626 ; -C 178 ; WX 600 ; N twosuperior ; B 143 230 436 616 ; -C 214 ; WX 600 ; N Odieresis ; B 22 -18 578 761 ; -C 181 ; WX 600 ; N mu ; B -1 -142 569 439 ; -C 236 ; WX 600 ; N igrave ; B 77 0 523 661 ; -C -1 ; WX 600 ; N ohungarumlaut ; B 30 -15 668 661 ; -C -1 ; WX 600 ; N Eogonek ; B 25 -199 576 562 ; -C -1 ; WX 600 ; N dcroat ; B 20 -15 591 626 ; -C 190 ; WX 600 ; N threequarters ; B -47 -60 648 661 ; -C -1 ; WX 600 ; N Scedilla ; B 47 -206 553 582 ; -C -1 ; WX 600 ; N lcaron ; B 77 0 597 626 ; -C -1 ; WX 600 ; N Kcommaaccent ; B 21 -250 599 562 ; -C -1 ; WX 600 ; N Lacute ; B 39 0 578 784 ; -C 153 ; WX 600 ; N trademark ; B -9 230 749 562 ; -C -1 ; WX 600 ; N edotaccent ; B 40 -15 563 638 ; -C 204 ; WX 600 ; N Igrave ; B 77 0 523 784 ; -C -1 ; WX 600 ; N Imacron ; B 77 0 523 708 ; -C -1 ; WX 600 ; N Lcaron ; B 39 0 637 562 ; -C 189 ; WX 600 ; N onehalf ; B -47 -60 648 661 ; -C -1 ; WX 600 ; N lessequal ; B 26 0 523 696 ; -C 244 ; WX 600 ; N ocircumflex ; B 30 -15 570 657 ; -C 241 ; WX 600 ; N ntilde ; B 18 0 592 636 ; -C -1 ; WX 600 ; N Uhungarumlaut ; B 4 -18 638 784 ; -C 201 ; WX 600 ; N Eacute ; B 25 0 560 784 ; -C -1 ; WX 600 ; N emacron ; B 40 -15 563 585 ; -C -1 ; WX 600 ; N gbreve ; B 30 -146 580 661 ; -C 188 ; WX 600 ; N onequarter ; B -56 -60 656 661 ; -C 138 ; WX 600 ; N Scaron ; B 47 -22 553 790 ; -C -1 ; WX 600 ; N Scommaaccent ; B 47 -250 553 582 ; -C -1 ; WX 600 ; N Ohungarumlaut ; B 22 -18 628 784 ; -C 176 ; WX 600 ; N degree ; B 86 243 474 616 ; -C 242 ; WX 600 ; N ograve ; B 30 -15 570 661 ; -C -1 ; WX 600 ; N Ccaron ; B 22 -18 560 790 ; -C 249 ; WX 600 ; N ugrave ; B -1 -15 569 661 ; -C -1 ; WX 600 ; N radical ; B -19 -104 473 778 ; -C -1 ; WX 600 ; N Dcaron ; B 30 0 594 790 ; -C -1 ; WX 600 ; N rcommaaccent ; B 47 -250 580 454 ; -C 209 ; WX 600 ; N Ntilde ; B 8 -12 610 759 ; -C 245 ; WX 600 ; N otilde ; B 30 -15 570 636 ; -C -1 ; WX 600 ; N Rcommaaccent ; B 24 -250 599 562 ; -C -1 ; WX 600 ; N Lcommaaccent ; B 39 -250 578 562 ; -C 195 ; WX 600 ; N Atilde ; B -9 0 609 759 ; -C -1 ; WX 600 ; N Aogonek ; B -9 -199 625 562 ; -C 197 ; WX 600 ; N Aring ; B -9 0 609 801 ; -C 213 ; WX 600 ; N Otilde ; B 22 -18 578 759 ; -C -1 ; WX 600 ; N zdotaccent ; B 81 0 520 638 ; -C -1 ; WX 600 ; N Ecaron ; B 25 0 560 790 ; -C -1 ; WX 600 ; N Iogonek ; B 77 -199 523 562 ; -C -1 ; WX 600 ; N kcommaaccent ; B 20 -250 585 626 ; -C -1 ; WX 600 ; N minus ; B 71 203 529 313 ; -C 206 ; WX 600 ; N Icircumflex ; B 77 0 523 780 ; -C -1 ; WX 600 ; N ncaron ; B 18 0 592 667 ; -C -1 ; WX 600 ; N tcommaaccent ; B 47 -250 532 562 ; -C 172 ; WX 600 ; N logicalnot ; B 71 103 529 413 ; -C 246 ; WX 600 ; N odieresis ; B 30 -15 570 638 ; -C 252 ; WX 600 ; N udieresis ; B -1 -15 569 638 ; -C -1 ; WX 600 ; N notequal ; B 12 -47 537 563 ; -C -1 ; WX 600 ; N gcommaaccent ; B 30 -146 580 714 ; -C 240 ; WX 600 ; N eth ; B 58 -27 543 626 ; -C 158 ; WX 600 ; N zcaron ; B 81 0 520 667 ; -C -1 ; WX 600 ; N ncommaaccent ; B 18 -250 592 454 ; -C 185 ; WX 600 ; N onesuperior ; B 153 230 447 616 ; -C -1 ; WX 600 ; N imacron ; B 77 0 523 585 ; -C 128 ; WX 600 ; N Euro ; B 0 0 0 0 ; -EndCharMetrics -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Courier-BoldOblique.afm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Courier-BoldOblique.afm deleted file mode 100644 index d5b616e6..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Courier-BoldOblique.afm +++ /dev/null @@ -1,344 +0,0 @@ -StartFontMetrics 4.1 -Comment Copyright (c) 1989, 1990, 1991, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved. -Comment Creation Date: Mon Jun 23 16:28:46 0:00:00 -Comment UniqueID 43049 -Comment VMusage 17529 79244 -FontName Courier-BoldOblique -FullName Courier Bold Oblique -FamilyName Courier -Weight Bold -ItalicAngle -12 -IsFixedPitch true -CharacterSet ExtendedRoman -FontBBox -57 -250 869 801 -UnderlinePosition -100 -UnderlineThickness 50 -Version 3 -Notice Copyright (c) 1989, 1990, 1991, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved. -EncodingScheme WinAnsiEncoding -CapHeight 562 -XHeight 439 -Ascender 629 -Descender -157 -StdHW 84 -StdVW 106 -StartCharMetrics 317 -C 32 ; WX 600 ; N space ; B 0 0 0 0 ; -C 160 ; WX 600 ; N space ; B 0 0 0 0 ; -C 33 ; WX 600 ; N exclam ; B 215 -15 495 572 ; -C 34 ; WX 600 ; N quotedbl ; B 211 277 585 562 ; -C 35 ; WX 600 ; N numbersign ; B 88 -45 641 651 ; -C 36 ; WX 600 ; N dollar ; B 87 -126 630 666 ; -C 37 ; WX 600 ; N percent ; B 101 -15 625 616 ; -C 38 ; WX 600 ; N ampersand ; B 61 -15 595 543 ; -C 146 ; WX 600 ; N quoteright ; B 229 277 543 562 ; -C 40 ; WX 600 ; N parenleft ; B 265 -102 592 616 ; -C 41 ; WX 600 ; N parenright ; B 117 -102 444 616 ; -C 42 ; WX 600 ; N asterisk ; B 179 219 598 601 ; -C 43 ; WX 600 ; N plus ; B 114 39 596 478 ; -C 44 ; WX 600 ; N comma ; B 99 -111 430 174 ; -C 45 ; WX 600 ; N hyphen ; B 143 203 567 313 ; -C 173 ; WX 600 ; N hyphen ; B 143 203 567 313 ; -C 46 ; WX 600 ; N period ; B 206 -15 427 171 ; -C 47 ; WX 600 ; N slash ; B 90 -77 626 626 ; -C 48 ; WX 600 ; N zero ; B 135 -15 593 616 ; -C 49 ; WX 600 ; N one ; B 93 0 562 616 ; -C 50 ; WX 600 ; N two ; B 61 0 594 616 ; -C 51 ; WX 600 ; N three ; B 71 -15 571 616 ; -C 52 ; WX 600 ; N four ; B 81 0 559 616 ; -C 53 ; WX 600 ; N five ; B 77 -15 621 601 ; -C 54 ; WX 600 ; N six ; B 135 -15 652 616 ; -C 55 ; WX 600 ; N seven ; B 147 0 622 601 ; -C 56 ; WX 600 ; N eight ; B 115 -15 604 616 ; -C 57 ; WX 600 ; N nine ; B 75 -15 592 616 ; -C 58 ; WX 600 ; N colon ; B 205 -15 480 425 ; -C 59 ; WX 600 ; N semicolon ; B 99 -111 481 425 ; -C 60 ; WX 600 ; N less ; B 120 15 613 501 ; -C 61 ; WX 600 ; N equal ; B 96 118 614 398 ; -C 62 ; WX 600 ; N greater ; B 97 15 589 501 ; -C 63 ; WX 600 ; N question ; B 183 -14 592 580 ; -C 64 ; WX 600 ; N at ; B 65 -15 642 616 ; -C 65 ; WX 600 ; N A ; B -9 0 632 562 ; -C 66 ; WX 600 ; N B ; B 30 0 630 562 ; -C 67 ; WX 600 ; N C ; B 74 -18 675 580 ; -C 68 ; WX 600 ; N D ; B 30 0 664 562 ; -C 69 ; WX 600 ; N E ; B 25 0 670 562 ; -C 70 ; WX 600 ; N F ; B 39 0 684 562 ; -C 71 ; WX 600 ; N G ; B 74 -18 675 580 ; -C 72 ; WX 600 ; N H ; B 20 0 700 562 ; -C 73 ; WX 600 ; N I ; B 77 0 643 562 ; -C 74 ; WX 600 ; N J ; B 58 -18 721 562 ; -C 75 ; WX 600 ; N K ; B 21 0 692 562 ; -C 76 ; WX 600 ; N L ; B 39 0 636 562 ; -C 77 ; WX 600 ; N M ; B -2 0 722 562 ; -C 78 ; WX 600 ; N N ; B 8 -12 730 562 ; -C 79 ; WX 600 ; N O ; B 74 -18 645 580 ; -C 80 ; WX 600 ; N P ; B 48 0 643 562 ; -C 81 ; WX 600 ; N Q ; B 83 -138 636 580 ; -C 82 ; WX 600 ; N R ; B 24 0 617 562 ; -C 83 ; WX 600 ; N S ; B 54 -22 673 582 ; -C 84 ; WX 600 ; N T ; B 86 0 679 562 ; -C 85 ; WX 600 ; N U ; B 101 -18 716 562 ; -C 86 ; WX 600 ; N V ; B 84 0 733 562 ; -C 87 ; WX 600 ; N W ; B 79 0 738 562 ; -C 88 ; WX 600 ; N X ; B 12 0 690 562 ; -C 89 ; WX 600 ; N Y ; B 109 0 709 562 ; -C 90 ; WX 600 ; N Z ; B 62 0 637 562 ; -C 91 ; WX 600 ; N bracketleft ; B 223 -102 606 616 ; -C 92 ; WX 600 ; N backslash ; B 222 -77 496 626 ; -C 93 ; WX 600 ; N bracketright ; B 103 -102 486 616 ; -C 94 ; WX 600 ; N asciicircum ; B 171 250 556 616 ; -C 95 ; WX 600 ; N underscore ; B -27 -125 585 -75 ; -C 145 ; WX 600 ; N quoteleft ; B 297 277 487 562 ; -C 97 ; WX 600 ; N a ; B 61 -15 593 454 ; -C 98 ; WX 600 ; N b ; B 13 -15 636 626 ; -C 99 ; WX 600 ; N c ; B 81 -15 631 459 ; -C 100 ; WX 600 ; N d ; B 60 -15 645 626 ; -C 101 ; WX 600 ; N e ; B 81 -15 605 454 ; -C 102 ; WX 600 ; N f ; B 83 0 677 626 ; L i fi ; L l fl ; -C 103 ; WX 600 ; N g ; B 40 -146 674 454 ; -C 104 ; WX 600 ; N h ; B 18 0 615 626 ; -C 105 ; WX 600 ; N i ; B 77 0 546 658 ; -C 106 ; WX 600 ; N j ; B 36 -146 580 658 ; -C 107 ; WX 600 ; N k ; B 33 0 643 626 ; -C 108 ; WX 600 ; N l ; B 77 0 546 626 ; -C 109 ; WX 600 ; N m ; B -22 0 649 454 ; -C 110 ; WX 600 ; N n ; B 18 0 615 454 ; -C 111 ; WX 600 ; N o ; B 71 -15 622 454 ; -C 112 ; WX 600 ; N p ; B -32 -142 622 454 ; -C 113 ; WX 600 ; N q ; B 60 -142 685 454 ; -C 114 ; WX 600 ; N r ; B 47 0 655 454 ; -C 115 ; WX 600 ; N s ; B 66 -17 608 459 ; -C 116 ; WX 600 ; N t ; B 118 -15 567 562 ; -C 117 ; WX 600 ; N u ; B 70 -15 592 439 ; -C 118 ; WX 600 ; N v ; B 70 0 695 439 ; -C 119 ; WX 600 ; N w ; B 53 0 712 439 ; -C 120 ; WX 600 ; N x ; B 6 0 671 439 ; -C 121 ; WX 600 ; N y ; B -21 -142 695 439 ; -C 122 ; WX 600 ; N z ; B 81 0 614 439 ; -C 123 ; WX 600 ; N braceleft ; B 203 -102 595 616 ; -C 124 ; WX 600 ; N bar ; B 201 -250 505 750 ; -C 125 ; WX 600 ; N braceright ; B 114 -102 506 616 ; -C 126 ; WX 600 ; N asciitilde ; B 120 153 590 356 ; -C 161 ; WX 600 ; N exclamdown ; B 196 -146 477 449 ; -C 162 ; WX 600 ; N cent ; B 121 -49 605 614 ; -C 163 ; WX 600 ; N sterling ; B 106 -28 650 611 ; -C -1 ; WX 600 ; N fraction ; B 22 -60 708 661 ; -C 165 ; WX 600 ; N yen ; B 98 0 710 562 ; -C 131 ; WX 600 ; N florin ; B -57 -131 702 616 ; -C 167 ; WX 600 ; N section ; B 74 -70 620 580 ; -C 164 ; WX 600 ; N currency ; B 77 49 644 517 ; -C 39 ; WX 600 ; N quotesingle ; B 303 277 493 562 ; -C 147 ; WX 600 ; N quotedblleft ; B 190 277 594 562 ; -C 171 ; WX 600 ; N guillemotleft ; B 62 70 639 446 ; -C 139 ; WX 600 ; N guilsinglleft ; B 195 70 545 446 ; -C 155 ; WX 600 ; N guilsinglright ; B 165 70 514 446 ; -C -1 ; WX 600 ; N fi ; B 12 0 644 626 ; -C -1 ; WX 600 ; N fl ; B 12 0 644 626 ; -C 150 ; WX 600 ; N endash ; B 108 203 602 313 ; -C 134 ; WX 600 ; N dagger ; B 175 -70 586 580 ; -C 135 ; WX 600 ; N daggerdbl ; B 121 -70 587 580 ; -C 183 ; WX 600 ; N periodcentered ; B 248 165 461 351 ; -C 182 ; WX 600 ; N paragraph ; B 61 -70 700 580 ; -C 149 ; WX 600 ; N bullet ; B 196 132 523 430 ; -C 130 ; WX 600 ; N quotesinglbase ; B 144 -142 458 143 ; -C 132 ; WX 600 ; N quotedblbase ; B 34 -142 560 143 ; -C 148 ; WX 600 ; N quotedblright ; B 119 277 645 562 ; -C 187 ; WX 600 ; N guillemotright ; B 71 70 647 446 ; -C 133 ; WX 600 ; N ellipsis ; B 35 -15 587 116 ; -C 137 ; WX 600 ; N perthousand ; B -45 -15 743 616 ; -C 191 ; WX 600 ; N questiondown ; B 100 -146 509 449 ; -C 96 ; WX 600 ; N grave ; B 272 508 503 661 ; -C 180 ; WX 600 ; N acute ; B 312 508 609 661 ; -C 136 ; WX 600 ; N circumflex ; B 212 483 607 657 ; -C 152 ; WX 600 ; N tilde ; B 199 493 643 636 ; -C 175 ; WX 600 ; N macron ; B 195 505 637 585 ; -C -1 ; WX 600 ; N breve ; B 217 468 652 631 ; -C -1 ; WX 600 ; N dotaccent ; B 348 498 493 638 ; -C 168 ; WX 600 ; N dieresis ; B 246 498 595 638 ; -C -1 ; WX 600 ; N ring ; B 319 481 528 678 ; -C 184 ; WX 600 ; N cedilla ; B 168 -206 368 0 ; -C -1 ; WX 600 ; N hungarumlaut ; B 171 488 729 661 ; -C -1 ; WX 600 ; N ogonek ; B 143 -199 367 0 ; -C -1 ; WX 600 ; N caron ; B 238 493 633 667 ; -C 151 ; WX 600 ; N emdash ; B 33 203 677 313 ; -C 198 ; WX 600 ; N AE ; B -29 0 708 562 ; -C 170 ; WX 600 ; N ordfeminine ; B 188 196 526 580 ; -C -1 ; WX 600 ; N Lslash ; B 39 0 636 562 ; -C 216 ; WX 600 ; N Oslash ; B 48 -22 673 584 ; -C 140 ; WX 600 ; N OE ; B 26 0 701 562 ; -C 186 ; WX 600 ; N ordmasculine ; B 188 196 543 580 ; -C 230 ; WX 600 ; N ae ; B 21 -15 652 454 ; -C -1 ; WX 600 ; N dotlessi ; B 77 0 546 439 ; -C -1 ; WX 600 ; N lslash ; B 77 0 587 626 ; -C 248 ; WX 600 ; N oslash ; B 54 -24 638 463 ; -C 156 ; WX 600 ; N oe ; B 18 -15 662 454 ; -C 223 ; WX 600 ; N germandbls ; B 22 -15 629 626 ; -C 207 ; WX 600 ; N Idieresis ; B 77 0 643 761 ; -C 233 ; WX 600 ; N eacute ; B 81 -15 609 661 ; -C -1 ; WX 600 ; N abreve ; B 61 -15 658 661 ; -C -1 ; WX 600 ; N uhungarumlaut ; B 70 -15 769 661 ; -C -1 ; WX 600 ; N ecaron ; B 81 -15 633 667 ; -C 159 ; WX 600 ; N Ydieresis ; B 109 0 709 761 ; -C 247 ; WX 600 ; N divide ; B 114 16 596 500 ; -C 221 ; WX 600 ; N Yacute ; B 109 0 709 784 ; -C 194 ; WX 600 ; N Acircumflex ; B -9 0 632 780 ; -C 225 ; WX 600 ; N aacute ; B 61 -15 609 661 ; -C 219 ; WX 600 ; N Ucircumflex ; B 101 -18 716 780 ; -C 253 ; WX 600 ; N yacute ; B -21 -142 695 661 ; -C -1 ; WX 600 ; N scommaaccent ; B 66 -250 608 459 ; -C 234 ; WX 600 ; N ecircumflex ; B 81 -15 607 657 ; -C -1 ; WX 600 ; N Uring ; B 101 -18 716 801 ; -C 220 ; WX 600 ; N Udieresis ; B 101 -18 716 761 ; -C -1 ; WX 600 ; N aogonek ; B 61 -199 593 454 ; -C 218 ; WX 600 ; N Uacute ; B 101 -18 716 784 ; -C -1 ; WX 600 ; N uogonek ; B 70 -199 592 439 ; -C 203 ; WX 600 ; N Edieresis ; B 25 0 670 761 ; -C -1 ; WX 600 ; N Dcroat ; B 30 0 664 562 ; -C -1 ; WX 600 ; N commaaccent ; B 151 -250 385 -57 ; -C 169 ; WX 600 ; N copyright ; B 53 -18 667 580 ; -C -1 ; WX 600 ; N Emacron ; B 25 0 670 708 ; -C -1 ; WX 600 ; N ccaron ; B 81 -15 633 667 ; -C 229 ; WX 600 ; N aring ; B 61 -15 593 678 ; -C -1 ; WX 600 ; N Ncommaaccent ; B 8 -250 730 562 ; -C -1 ; WX 600 ; N lacute ; B 77 0 639 801 ; -C 224 ; WX 600 ; N agrave ; B 61 -15 593 661 ; -C -1 ; WX 600 ; N Tcommaaccent ; B 86 -250 679 562 ; -C -1 ; WX 600 ; N Cacute ; B 74 -18 675 784 ; -C 227 ; WX 600 ; N atilde ; B 61 -15 643 636 ; -C -1 ; WX 600 ; N Edotaccent ; B 25 0 670 761 ; -C 154 ; WX 600 ; N scaron ; B 66 -17 633 667 ; -C -1 ; WX 600 ; N scedilla ; B 66 -206 608 459 ; -C 237 ; WX 600 ; N iacute ; B 77 0 609 661 ; -C -1 ; WX 600 ; N lozenge ; B 145 0 614 740 ; -C -1 ; WX 600 ; N Rcaron ; B 24 0 659 790 ; -C -1 ; WX 600 ; N Gcommaaccent ; B 74 -250 675 580 ; -C 251 ; WX 600 ; N ucircumflex ; B 70 -15 597 657 ; -C 226 ; WX 600 ; N acircumflex ; B 61 -15 607 657 ; -C -1 ; WX 600 ; N Amacron ; B -9 0 633 708 ; -C -1 ; WX 600 ; N rcaron ; B 47 0 655 667 ; -C 231 ; WX 600 ; N ccedilla ; B 81 -206 631 459 ; -C -1 ; WX 600 ; N Zdotaccent ; B 62 0 637 761 ; -C 222 ; WX 600 ; N Thorn ; B 48 0 620 562 ; -C -1 ; WX 600 ; N Omacron ; B 74 -18 663 708 ; -C -1 ; WX 600 ; N Racute ; B 24 0 665 784 ; -C -1 ; WX 600 ; N Sacute ; B 54 -22 673 784 ; -C -1 ; WX 600 ; N dcaron ; B 60 -15 861 626 ; -C -1 ; WX 600 ; N Umacron ; B 101 -18 716 708 ; -C -1 ; WX 600 ; N uring ; B 70 -15 592 678 ; -C 179 ; WX 600 ; N threesuperior ; B 193 222 526 616 ; -C 210 ; WX 600 ; N Ograve ; B 74 -18 645 784 ; -C 192 ; WX 600 ; N Agrave ; B -9 0 632 784 ; -C -1 ; WX 600 ; N Abreve ; B -9 0 684 784 ; -C 215 ; WX 600 ; N multiply ; B 104 39 606 478 ; -C 250 ; WX 600 ; N uacute ; B 70 -15 599 661 ; -C -1 ; WX 600 ; N Tcaron ; B 86 0 679 790 ; -C -1 ; WX 600 ; N partialdiff ; B 91 -38 627 728 ; -C 255 ; WX 600 ; N ydieresis ; B -21 -142 695 638 ; -C -1 ; WX 600 ; N Nacute ; B 8 -12 730 784 ; -C 238 ; WX 600 ; N icircumflex ; B 77 0 577 657 ; -C 202 ; WX 600 ; N Ecircumflex ; B 25 0 670 780 ; -C 228 ; WX 600 ; N adieresis ; B 61 -15 595 638 ; -C 235 ; WX 600 ; N edieresis ; B 81 -15 605 638 ; -C -1 ; WX 600 ; N cacute ; B 81 -15 649 661 ; -C -1 ; WX 600 ; N nacute ; B 18 0 639 661 ; -C -1 ; WX 600 ; N umacron ; B 70 -15 637 585 ; -C -1 ; WX 600 ; N Ncaron ; B 8 -12 730 790 ; -C 205 ; WX 600 ; N Iacute ; B 77 0 643 784 ; -C 177 ; WX 600 ; N plusminus ; B 76 24 614 515 ; -C 166 ; WX 600 ; N brokenbar ; B 217 -175 489 675 ; -C 174 ; WX 600 ; N registered ; B 53 -18 667 580 ; -C -1 ; WX 600 ; N Gbreve ; B 74 -18 684 784 ; -C -1 ; WX 600 ; N Idotaccent ; B 77 0 643 761 ; -C -1 ; WX 600 ; N summation ; B 15 -10 672 706 ; -C 200 ; WX 600 ; N Egrave ; B 25 0 670 784 ; -C -1 ; WX 600 ; N racute ; B 47 0 655 661 ; -C -1 ; WX 600 ; N omacron ; B 71 -15 637 585 ; -C -1 ; WX 600 ; N Zacute ; B 62 0 665 784 ; -C 142 ; WX 600 ; N Zcaron ; B 62 0 659 790 ; -C -1 ; WX 600 ; N greaterequal ; B 26 0 627 696 ; -C 208 ; WX 600 ; N Eth ; B 30 0 664 562 ; -C 199 ; WX 600 ; N Ccedilla ; B 74 -206 675 580 ; -C -1 ; WX 600 ; N lcommaaccent ; B 77 -250 546 626 ; -C -1 ; WX 600 ; N tcaron ; B 118 -15 627 703 ; -C -1 ; WX 600 ; N eogonek ; B 81 -199 605 454 ; -C -1 ; WX 600 ; N Uogonek ; B 101 -199 716 562 ; -C 193 ; WX 600 ; N Aacute ; B -9 0 655 784 ; -C 196 ; WX 600 ; N Adieresis ; B -9 0 632 761 ; -C 232 ; WX 600 ; N egrave ; B 81 -15 605 661 ; -C -1 ; WX 600 ; N zacute ; B 81 0 614 661 ; -C -1 ; WX 600 ; N iogonek ; B 77 -199 546 658 ; -C 211 ; WX 600 ; N Oacute ; B 74 -18 645 784 ; -C 243 ; WX 600 ; N oacute ; B 71 -15 649 661 ; -C -1 ; WX 600 ; N amacron ; B 61 -15 637 585 ; -C -1 ; WX 600 ; N sacute ; B 66 -17 609 661 ; -C 239 ; WX 600 ; N idieresis ; B 77 0 561 618 ; -C 212 ; WX 600 ; N Ocircumflex ; B 74 -18 645 780 ; -C 217 ; WX 600 ; N Ugrave ; B 101 -18 716 784 ; -C -1 ; WX 600 ; N Delta ; B 6 0 594 688 ; -C 254 ; WX 600 ; N thorn ; B -32 -142 622 626 ; -C 178 ; WX 600 ; N twosuperior ; B 191 230 542 616 ; -C 214 ; WX 600 ; N Odieresis ; B 74 -18 645 761 ; -C 181 ; WX 600 ; N mu ; B 49 -142 592 439 ; -C 236 ; WX 600 ; N igrave ; B 77 0 546 661 ; -C -1 ; WX 600 ; N ohungarumlaut ; B 71 -15 809 661 ; -C -1 ; WX 600 ; N Eogonek ; B 25 -199 670 562 ; -C -1 ; WX 600 ; N dcroat ; B 60 -15 712 626 ; -C 190 ; WX 600 ; N threequarters ; B 8 -60 699 661 ; -C -1 ; WX 600 ; N Scedilla ; B 54 -206 673 582 ; -C -1 ; WX 600 ; N lcaron ; B 77 0 731 626 ; -C -1 ; WX 600 ; N Kcommaaccent ; B 21 -250 692 562 ; -C -1 ; WX 600 ; N Lacute ; B 39 0 636 784 ; -C 153 ; WX 600 ; N trademark ; B 86 230 869 562 ; -C -1 ; WX 600 ; N edotaccent ; B 81 -15 605 638 ; -C 204 ; WX 600 ; N Igrave ; B 77 0 643 784 ; -C -1 ; WX 600 ; N Imacron ; B 77 0 663 708 ; -C -1 ; WX 600 ; N Lcaron ; B 39 0 757 562 ; -C 189 ; WX 600 ; N onehalf ; B 22 -60 716 661 ; -C -1 ; WX 600 ; N lessequal ; B 26 0 671 696 ; -C 244 ; WX 600 ; N ocircumflex ; B 71 -15 622 657 ; -C 241 ; WX 600 ; N ntilde ; B 18 0 643 636 ; -C -1 ; WX 600 ; N Uhungarumlaut ; B 101 -18 805 784 ; -C 201 ; WX 600 ; N Eacute ; B 25 0 670 784 ; -C -1 ; WX 600 ; N emacron ; B 81 -15 637 585 ; -C -1 ; WX 600 ; N gbreve ; B 40 -146 674 661 ; -C 188 ; WX 600 ; N onequarter ; B 13 -60 707 661 ; -C 138 ; WX 600 ; N Scaron ; B 54 -22 689 790 ; -C -1 ; WX 600 ; N Scommaaccent ; B 54 -250 673 582 ; -C -1 ; WX 600 ; N Ohungarumlaut ; B 74 -18 795 784 ; -C 176 ; WX 600 ; N degree ; B 173 243 570 616 ; -C 242 ; WX 600 ; N ograve ; B 71 -15 622 661 ; -C -1 ; WX 600 ; N Ccaron ; B 74 -18 689 790 ; -C 249 ; WX 600 ; N ugrave ; B 70 -15 592 661 ; -C -1 ; WX 600 ; N radical ; B 67 -104 635 778 ; -C -1 ; WX 600 ; N Dcaron ; B 30 0 664 790 ; -C -1 ; WX 600 ; N rcommaaccent ; B 47 -250 655 454 ; -C 209 ; WX 600 ; N Ntilde ; B 8 -12 730 759 ; -C 245 ; WX 600 ; N otilde ; B 71 -15 643 636 ; -C -1 ; WX 600 ; N Rcommaaccent ; B 24 -250 617 562 ; -C -1 ; WX 600 ; N Lcommaaccent ; B 39 -250 636 562 ; -C 195 ; WX 600 ; N Atilde ; B -9 0 669 759 ; -C -1 ; WX 600 ; N Aogonek ; B -9 -199 632 562 ; -C 197 ; WX 600 ; N Aring ; B -9 0 632 801 ; -C 213 ; WX 600 ; N Otilde ; B 74 -18 669 759 ; -C -1 ; WX 600 ; N zdotaccent ; B 81 0 614 638 ; -C -1 ; WX 600 ; N Ecaron ; B 25 0 670 790 ; -C -1 ; WX 600 ; N Iogonek ; B 77 -199 643 562 ; -C -1 ; WX 600 ; N kcommaaccent ; B 33 -250 643 626 ; -C -1 ; WX 600 ; N minus ; B 114 203 596 313 ; -C 206 ; WX 600 ; N Icircumflex ; B 77 0 643 780 ; -C -1 ; WX 600 ; N ncaron ; B 18 0 633 667 ; -C -1 ; WX 600 ; N tcommaaccent ; B 118 -250 567 562 ; -C 172 ; WX 600 ; N logicalnot ; B 135 103 617 413 ; -C 246 ; WX 600 ; N odieresis ; B 71 -15 622 638 ; -C 252 ; WX 600 ; N udieresis ; B 70 -15 595 638 ; -C -1 ; WX 600 ; N notequal ; B 30 -47 626 563 ; -C -1 ; WX 600 ; N gcommaaccent ; B 40 -146 674 714 ; -C 240 ; WX 600 ; N eth ; B 93 -27 661 626 ; -C 158 ; WX 600 ; N zcaron ; B 81 0 643 667 ; -C -1 ; WX 600 ; N ncommaaccent ; B 18 -250 615 454 ; -C 185 ; WX 600 ; N onesuperior ; B 212 230 514 616 ; -C -1 ; WX 600 ; N imacron ; B 77 0 575 585 ; -C 128 ; WX 600 ; N Euro ; B 0 0 0 0 ; -EndCharMetrics -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Courier-Oblique.afm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Courier-Oblique.afm deleted file mode 100644 index c8893fff..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Courier-Oblique.afm +++ /dev/null @@ -1,344 +0,0 @@ -StartFontMetrics 4.1 -Comment Copyright (c) 1989, 1990, 1991, 1992, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved. -Comment Creation Date: Thu May 0:00:00 17:37:52 1997 -Comment UniqueID 43051 -Comment VMusage 16248 75829 -FontName Courier-Oblique -FullName Courier Oblique -FamilyName Courier -Weight Medium -ItalicAngle -12 -IsFixedPitch true -CharacterSet ExtendedRoman -FontBBox -27 -250 849 805 -UnderlinePosition -100 -UnderlineThickness 50 -Version 003.000 -Notice Copyright (c) 1989, 1990, 1991, 1992, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved. -EncodingScheme WinAnsiEncoding -CapHeight 562 -XHeight 426 -Ascender 629 -Descender -157 -StdHW 51 -StdVW 51 -StartCharMetrics 317 -C 32 ; WX 600 ; N space ; B 0 0 0 0 ; -C 160 ; WX 600 ; N space ; B 0 0 0 0 ; -C 33 ; WX 600 ; N exclam ; B 243 -15 464 572 ; -C 34 ; WX 600 ; N quotedbl ; B 273 328 532 562 ; -C 35 ; WX 600 ; N numbersign ; B 133 -32 596 639 ; -C 36 ; WX 600 ; N dollar ; B 108 -126 596 662 ; -C 37 ; WX 600 ; N percent ; B 134 -15 599 622 ; -C 38 ; WX 600 ; N ampersand ; B 87 -15 580 543 ; -C 146 ; WX 600 ; N quoteright ; B 283 328 495 562 ; -C 40 ; WX 600 ; N parenleft ; B 313 -108 572 622 ; -C 41 ; WX 600 ; N parenright ; B 137 -108 396 622 ; -C 42 ; WX 600 ; N asterisk ; B 212 257 580 607 ; -C 43 ; WX 600 ; N plus ; B 129 44 580 470 ; -C 44 ; WX 600 ; N comma ; B 157 -112 370 122 ; -C 45 ; WX 600 ; N hyphen ; B 152 231 558 285 ; -C 173 ; WX 600 ; N hyphen ; B 152 231 558 285 ; -C 46 ; WX 600 ; N period ; B 238 -15 382 109 ; -C 47 ; WX 600 ; N slash ; B 112 -80 604 629 ; -C 48 ; WX 600 ; N zero ; B 154 -15 575 622 ; -C 49 ; WX 600 ; N one ; B 98 0 515 622 ; -C 50 ; WX 600 ; N two ; B 70 0 568 622 ; -C 51 ; WX 600 ; N three ; B 82 -15 538 622 ; -C 52 ; WX 600 ; N four ; B 108 0 541 622 ; -C 53 ; WX 600 ; N five ; B 99 -15 589 607 ; -C 54 ; WX 600 ; N six ; B 155 -15 629 622 ; -C 55 ; WX 600 ; N seven ; B 182 0 612 607 ; -C 56 ; WX 600 ; N eight ; B 132 -15 588 622 ; -C 57 ; WX 600 ; N nine ; B 93 -15 574 622 ; -C 58 ; WX 600 ; N colon ; B 238 -15 441 385 ; -C 59 ; WX 600 ; N semicolon ; B 157 -112 441 385 ; -C 60 ; WX 600 ; N less ; B 96 42 610 472 ; -C 61 ; WX 600 ; N equal ; B 109 138 600 376 ; -C 62 ; WX 600 ; N greater ; B 85 42 599 472 ; -C 63 ; WX 600 ; N question ; B 222 -15 583 572 ; -C 64 ; WX 600 ; N at ; B 127 -15 582 622 ; -C 65 ; WX 600 ; N A ; B 3 0 607 562 ; -C 66 ; WX 600 ; N B ; B 43 0 616 562 ; -C 67 ; WX 600 ; N C ; B 93 -18 655 580 ; -C 68 ; WX 600 ; N D ; B 43 0 645 562 ; -C 69 ; WX 600 ; N E ; B 53 0 660 562 ; -C 70 ; WX 600 ; N F ; B 53 0 660 562 ; -C 71 ; WX 600 ; N G ; B 83 -18 645 580 ; -C 72 ; WX 600 ; N H ; B 32 0 687 562 ; -C 73 ; WX 600 ; N I ; B 96 0 623 562 ; -C 74 ; WX 600 ; N J ; B 52 -18 685 562 ; -C 75 ; WX 600 ; N K ; B 38 0 671 562 ; -C 76 ; WX 600 ; N L ; B 47 0 607 562 ; -C 77 ; WX 600 ; N M ; B 4 0 715 562 ; -C 78 ; WX 600 ; N N ; B 7 -13 712 562 ; -C 79 ; WX 600 ; N O ; B 94 -18 625 580 ; -C 80 ; WX 600 ; N P ; B 79 0 644 562 ; -C 81 ; WX 600 ; N Q ; B 95 -138 625 580 ; -C 82 ; WX 600 ; N R ; B 38 0 598 562 ; -C 83 ; WX 600 ; N S ; B 76 -20 650 580 ; -C 84 ; WX 600 ; N T ; B 108 0 665 562 ; -C 85 ; WX 600 ; N U ; B 125 -18 702 562 ; -C 86 ; WX 600 ; N V ; B 105 -13 723 562 ; -C 87 ; WX 600 ; N W ; B 106 -13 722 562 ; -C 88 ; WX 600 ; N X ; B 23 0 675 562 ; -C 89 ; WX 600 ; N Y ; B 133 0 695 562 ; -C 90 ; WX 600 ; N Z ; B 86 0 610 562 ; -C 91 ; WX 600 ; N bracketleft ; B 246 -108 574 622 ; -C 92 ; WX 600 ; N backslash ; B 249 -80 468 629 ; -C 93 ; WX 600 ; N bracketright ; B 135 -108 463 622 ; -C 94 ; WX 600 ; N asciicircum ; B 175 354 587 622 ; -C 95 ; WX 600 ; N underscore ; B -27 -125 584 -75 ; -C 145 ; WX 600 ; N quoteleft ; B 343 328 457 562 ; -C 97 ; WX 600 ; N a ; B 76 -15 569 441 ; -C 98 ; WX 600 ; N b ; B 29 -15 625 629 ; -C 99 ; WX 600 ; N c ; B 106 -15 608 441 ; -C 100 ; WX 600 ; N d ; B 85 -15 640 629 ; -C 101 ; WX 600 ; N e ; B 106 -15 598 441 ; -C 102 ; WX 600 ; N f ; B 114 0 662 629 ; L i fi ; L l fl ; -C 103 ; WX 600 ; N g ; B 61 -157 657 441 ; -C 104 ; WX 600 ; N h ; B 33 0 592 629 ; -C 105 ; WX 600 ; N i ; B 95 0 515 657 ; -C 106 ; WX 600 ; N j ; B 52 -157 550 657 ; -C 107 ; WX 600 ; N k ; B 58 0 633 629 ; -C 108 ; WX 600 ; N l ; B 95 0 515 629 ; -C 109 ; WX 600 ; N m ; B -5 0 615 441 ; -C 110 ; WX 600 ; N n ; B 26 0 585 441 ; -C 111 ; WX 600 ; N o ; B 102 -15 588 441 ; -C 112 ; WX 600 ; N p ; B -24 -157 605 441 ; -C 113 ; WX 600 ; N q ; B 85 -157 682 441 ; -C 114 ; WX 600 ; N r ; B 60 0 636 441 ; -C 115 ; WX 600 ; N s ; B 78 -15 584 441 ; -C 116 ; WX 600 ; N t ; B 167 -15 561 561 ; -C 117 ; WX 600 ; N u ; B 101 -15 572 426 ; -C 118 ; WX 600 ; N v ; B 90 -10 681 426 ; -C 119 ; WX 600 ; N w ; B 76 -10 695 426 ; -C 120 ; WX 600 ; N x ; B 20 0 655 426 ; -C 121 ; WX 600 ; N y ; B -4 -157 683 426 ; -C 122 ; WX 600 ; N z ; B 99 0 593 426 ; -C 123 ; WX 600 ; N braceleft ; B 233 -108 569 622 ; -C 124 ; WX 600 ; N bar ; B 222 -250 485 750 ; -C 125 ; WX 600 ; N braceright ; B 140 -108 477 622 ; -C 126 ; WX 600 ; N asciitilde ; B 116 197 600 320 ; -C 161 ; WX 600 ; N exclamdown ; B 225 -157 445 430 ; -C 162 ; WX 600 ; N cent ; B 151 -49 588 614 ; -C 163 ; WX 600 ; N sterling ; B 124 -21 621 611 ; -C -1 ; WX 600 ; N fraction ; B 84 -57 646 665 ; -C 165 ; WX 600 ; N yen ; B 120 0 693 562 ; -C 131 ; WX 600 ; N florin ; B -26 -143 671 622 ; -C 167 ; WX 600 ; N section ; B 104 -78 590 580 ; -C 164 ; WX 600 ; N currency ; B 94 58 628 506 ; -C 39 ; WX 600 ; N quotesingle ; B 345 328 460 562 ; -C 147 ; WX 600 ; N quotedblleft ; B 262 328 541 562 ; -C 171 ; WX 600 ; N guillemotleft ; B 92 70 652 446 ; -C 139 ; WX 600 ; N guilsinglleft ; B 204 70 540 446 ; -C 155 ; WX 600 ; N guilsinglright ; B 170 70 506 446 ; -C -1 ; WX 600 ; N fi ; B 3 0 619 629 ; -C -1 ; WX 600 ; N fl ; B 3 0 619 629 ; -C 150 ; WX 600 ; N endash ; B 124 231 586 285 ; -C 134 ; WX 600 ; N dagger ; B 217 -78 546 580 ; -C 135 ; WX 600 ; N daggerdbl ; B 163 -78 546 580 ; -C 183 ; WX 600 ; N periodcentered ; B 275 189 434 327 ; -C 182 ; WX 600 ; N paragraph ; B 100 -78 630 562 ; -C 149 ; WX 600 ; N bullet ; B 224 130 485 383 ; -C 130 ; WX 600 ; N quotesinglbase ; B 185 -134 397 100 ; -C 132 ; WX 600 ; N quotedblbase ; B 115 -134 478 100 ; -C 148 ; WX 600 ; N quotedblright ; B 213 328 576 562 ; -C 187 ; WX 600 ; N guillemotright ; B 58 70 618 446 ; -C 133 ; WX 600 ; N ellipsis ; B 46 -15 575 111 ; -C 137 ; WX 600 ; N perthousand ; B 59 -15 627 622 ; -C 191 ; WX 600 ; N questiondown ; B 105 -157 466 430 ; -C 96 ; WX 600 ; N grave ; B 294 497 484 672 ; -C 180 ; WX 600 ; N acute ; B 348 497 612 672 ; -C 136 ; WX 600 ; N circumflex ; B 229 477 581 654 ; -C 152 ; WX 600 ; N tilde ; B 212 489 629 606 ; -C 175 ; WX 600 ; N macron ; B 232 525 600 565 ; -C -1 ; WX 600 ; N breve ; B 279 501 576 609 ; -C -1 ; WX 600 ; N dotaccent ; B 373 537 478 640 ; -C 168 ; WX 600 ; N dieresis ; B 272 537 579 640 ; -C -1 ; WX 600 ; N ring ; B 332 463 500 627 ; -C 184 ; WX 600 ; N cedilla ; B 197 -151 344 10 ; -C -1 ; WX 600 ; N hungarumlaut ; B 239 497 683 672 ; -C -1 ; WX 600 ; N ogonek ; B 189 -172 377 4 ; -C -1 ; WX 600 ; N caron ; B 262 492 614 669 ; -C 151 ; WX 600 ; N emdash ; B 49 231 661 285 ; -C 198 ; WX 600 ; N AE ; B 3 0 655 562 ; -C 170 ; WX 600 ; N ordfeminine ; B 209 249 512 580 ; -C -1 ; WX 600 ; N Lslash ; B 47 0 607 562 ; -C 216 ; WX 600 ; N Oslash ; B 94 -80 625 629 ; -C 140 ; WX 600 ; N OE ; B 59 0 672 562 ; -C 186 ; WX 600 ; N ordmasculine ; B 210 249 535 580 ; -C 230 ; WX 600 ; N ae ; B 41 -15 626 441 ; -C -1 ; WX 600 ; N dotlessi ; B 95 0 515 426 ; -C -1 ; WX 600 ; N lslash ; B 95 0 587 629 ; -C 248 ; WX 600 ; N oslash ; B 102 -80 588 506 ; -C 156 ; WX 600 ; N oe ; B 54 -15 615 441 ; -C 223 ; WX 600 ; N germandbls ; B 48 -15 617 629 ; -C 207 ; WX 600 ; N Idieresis ; B 96 0 623 753 ; -C 233 ; WX 600 ; N eacute ; B 106 -15 612 672 ; -C -1 ; WX 600 ; N abreve ; B 76 -15 576 609 ; -C -1 ; WX 600 ; N uhungarumlaut ; B 101 -15 723 672 ; -C -1 ; WX 600 ; N ecaron ; B 106 -15 614 669 ; -C 159 ; WX 600 ; N Ydieresis ; B 133 0 695 753 ; -C 247 ; WX 600 ; N divide ; B 136 48 573 467 ; -C 221 ; WX 600 ; N Yacute ; B 133 0 695 805 ; -C 194 ; WX 600 ; N Acircumflex ; B 3 0 607 787 ; -C 225 ; WX 600 ; N aacute ; B 76 -15 612 672 ; -C 219 ; WX 600 ; N Ucircumflex ; B 125 -18 702 787 ; -C 253 ; WX 600 ; N yacute ; B -4 -157 683 672 ; -C -1 ; WX 600 ; N scommaaccent ; B 78 -250 584 441 ; -C 234 ; WX 600 ; N ecircumflex ; B 106 -15 598 654 ; -C -1 ; WX 600 ; N Uring ; B 125 -18 702 760 ; -C 220 ; WX 600 ; N Udieresis ; B 125 -18 702 753 ; -C -1 ; WX 600 ; N aogonek ; B 76 -172 569 441 ; -C 218 ; WX 600 ; N Uacute ; B 125 -18 702 805 ; -C -1 ; WX 600 ; N uogonek ; B 101 -172 572 426 ; -C 203 ; WX 600 ; N Edieresis ; B 53 0 660 753 ; -C -1 ; WX 600 ; N Dcroat ; B 43 0 645 562 ; -C -1 ; WX 600 ; N commaaccent ; B 145 -250 323 -58 ; -C 169 ; WX 600 ; N copyright ; B 53 -18 667 580 ; -C -1 ; WX 600 ; N Emacron ; B 53 0 660 698 ; -C -1 ; WX 600 ; N ccaron ; B 106 -15 614 669 ; -C 229 ; WX 600 ; N aring ; B 76 -15 569 627 ; -C -1 ; WX 600 ; N Ncommaaccent ; B 7 -250 712 562 ; -C -1 ; WX 600 ; N lacute ; B 95 0 640 805 ; -C 224 ; WX 600 ; N agrave ; B 76 -15 569 672 ; -C -1 ; WX 600 ; N Tcommaaccent ; B 108 -250 665 562 ; -C -1 ; WX 600 ; N Cacute ; B 93 -18 655 805 ; -C 227 ; WX 600 ; N atilde ; B 76 -15 629 606 ; -C -1 ; WX 600 ; N Edotaccent ; B 53 0 660 753 ; -C 154 ; WX 600 ; N scaron ; B 78 -15 614 669 ; -C -1 ; WX 600 ; N scedilla ; B 78 -151 584 441 ; -C 237 ; WX 600 ; N iacute ; B 95 0 612 672 ; -C -1 ; WX 600 ; N lozenge ; B 94 0 519 706 ; -C -1 ; WX 600 ; N Rcaron ; B 38 0 642 802 ; -C -1 ; WX 600 ; N Gcommaaccent ; B 83 -250 645 580 ; -C 251 ; WX 600 ; N ucircumflex ; B 101 -15 572 654 ; -C 226 ; WX 600 ; N acircumflex ; B 76 -15 581 654 ; -C -1 ; WX 600 ; N Amacron ; B 3 0 607 698 ; -C -1 ; WX 600 ; N rcaron ; B 60 0 636 669 ; -C 231 ; WX 600 ; N ccedilla ; B 106 -151 614 441 ; -C -1 ; WX 600 ; N Zdotaccent ; B 86 0 610 753 ; -C 222 ; WX 600 ; N Thorn ; B 79 0 606 562 ; -C -1 ; WX 600 ; N Omacron ; B 94 -18 628 698 ; -C -1 ; WX 600 ; N Racute ; B 38 0 670 805 ; -C -1 ; WX 600 ; N Sacute ; B 76 -20 650 805 ; -C -1 ; WX 600 ; N dcaron ; B 85 -15 849 629 ; -C -1 ; WX 600 ; N Umacron ; B 125 -18 702 698 ; -C -1 ; WX 600 ; N uring ; B 101 -15 572 627 ; -C 179 ; WX 600 ; N threesuperior ; B 213 240 501 622 ; -C 210 ; WX 600 ; N Ograve ; B 94 -18 625 805 ; -C 192 ; WX 600 ; N Agrave ; B 3 0 607 805 ; -C -1 ; WX 600 ; N Abreve ; B 3 0 607 732 ; -C 215 ; WX 600 ; N multiply ; B 103 43 607 470 ; -C 250 ; WX 600 ; N uacute ; B 101 -15 602 672 ; -C -1 ; WX 600 ; N Tcaron ; B 108 0 665 802 ; -C -1 ; WX 600 ; N partialdiff ; B 45 -38 546 710 ; -C 255 ; WX 600 ; N ydieresis ; B -4 -157 683 620 ; -C -1 ; WX 600 ; N Nacute ; B 7 -13 712 805 ; -C 238 ; WX 600 ; N icircumflex ; B 95 0 551 654 ; -C 202 ; WX 600 ; N Ecircumflex ; B 53 0 660 787 ; -C 228 ; WX 600 ; N adieresis ; B 76 -15 575 620 ; -C 235 ; WX 600 ; N edieresis ; B 106 -15 598 620 ; -C -1 ; WX 600 ; N cacute ; B 106 -15 612 672 ; -C -1 ; WX 600 ; N nacute ; B 26 0 602 672 ; -C -1 ; WX 600 ; N umacron ; B 101 -15 600 565 ; -C -1 ; WX 600 ; N Ncaron ; B 7 -13 712 802 ; -C 205 ; WX 600 ; N Iacute ; B 96 0 640 805 ; -C 177 ; WX 600 ; N plusminus ; B 96 44 594 558 ; -C 166 ; WX 600 ; N brokenbar ; B 238 -175 469 675 ; -C 174 ; WX 600 ; N registered ; B 53 -18 667 580 ; -C -1 ; WX 600 ; N Gbreve ; B 83 -18 645 732 ; -C -1 ; WX 600 ; N Idotaccent ; B 96 0 623 753 ; -C -1 ; WX 600 ; N summation ; B 15 -10 670 706 ; -C 200 ; WX 600 ; N Egrave ; B 53 0 660 805 ; -C -1 ; WX 600 ; N racute ; B 60 0 636 672 ; -C -1 ; WX 600 ; N omacron ; B 102 -15 600 565 ; -C -1 ; WX 600 ; N Zacute ; B 86 0 670 805 ; -C 142 ; WX 600 ; N Zcaron ; B 86 0 642 802 ; -C -1 ; WX 600 ; N greaterequal ; B 98 0 594 710 ; -C 208 ; WX 600 ; N Eth ; B 43 0 645 562 ; -C 199 ; WX 600 ; N Ccedilla ; B 93 -151 658 580 ; -C -1 ; WX 600 ; N lcommaaccent ; B 95 -250 515 629 ; -C -1 ; WX 600 ; N tcaron ; B 167 -15 587 717 ; -C -1 ; WX 600 ; N eogonek ; B 106 -172 598 441 ; -C -1 ; WX 600 ; N Uogonek ; B 124 -172 702 562 ; -C 193 ; WX 600 ; N Aacute ; B 3 0 660 805 ; -C 196 ; WX 600 ; N Adieresis ; B 3 0 607 753 ; -C 232 ; WX 600 ; N egrave ; B 106 -15 598 672 ; -C -1 ; WX 600 ; N zacute ; B 99 0 612 672 ; -C -1 ; WX 600 ; N iogonek ; B 95 -172 515 657 ; -C 211 ; WX 600 ; N Oacute ; B 94 -18 640 805 ; -C 243 ; WX 600 ; N oacute ; B 102 -15 612 672 ; -C -1 ; WX 600 ; N amacron ; B 76 -15 600 565 ; -C -1 ; WX 600 ; N sacute ; B 78 -15 612 672 ; -C 239 ; WX 600 ; N idieresis ; B 95 0 545 620 ; -C 212 ; WX 600 ; N Ocircumflex ; B 94 -18 625 787 ; -C 217 ; WX 600 ; N Ugrave ; B 125 -18 702 805 ; -C -1 ; WX 600 ; N Delta ; B 6 0 598 688 ; -C 254 ; WX 600 ; N thorn ; B -24 -157 605 629 ; -C 178 ; WX 600 ; N twosuperior ; B 230 249 535 622 ; -C 214 ; WX 600 ; N Odieresis ; B 94 -18 625 753 ; -C 181 ; WX 600 ; N mu ; B 72 -157 572 426 ; -C 236 ; WX 600 ; N igrave ; B 95 0 515 672 ; -C -1 ; WX 600 ; N ohungarumlaut ; B 102 -15 723 672 ; -C -1 ; WX 600 ; N Eogonek ; B 53 -172 660 562 ; -C -1 ; WX 600 ; N dcroat ; B 85 -15 704 629 ; -C 190 ; WX 600 ; N threequarters ; B 73 -56 659 666 ; -C -1 ; WX 600 ; N Scedilla ; B 76 -151 650 580 ; -C -1 ; WX 600 ; N lcaron ; B 95 0 667 629 ; -C -1 ; WX 600 ; N Kcommaaccent ; B 38 -250 671 562 ; -C -1 ; WX 600 ; N Lacute ; B 47 0 607 805 ; -C 153 ; WX 600 ; N trademark ; B 75 263 742 562 ; -C -1 ; WX 600 ; N edotaccent ; B 106 -15 598 620 ; -C 204 ; WX 600 ; N Igrave ; B 96 0 623 805 ; -C -1 ; WX 600 ; N Imacron ; B 96 0 628 698 ; -C -1 ; WX 600 ; N Lcaron ; B 47 0 632 562 ; -C 189 ; WX 600 ; N onehalf ; B 65 -57 669 665 ; -C -1 ; WX 600 ; N lessequal ; B 98 0 645 710 ; -C 244 ; WX 600 ; N ocircumflex ; B 102 -15 588 654 ; -C 241 ; WX 600 ; N ntilde ; B 26 0 629 606 ; -C -1 ; WX 600 ; N Uhungarumlaut ; B 125 -18 761 805 ; -C 201 ; WX 600 ; N Eacute ; B 53 0 670 805 ; -C -1 ; WX 600 ; N emacron ; B 106 -15 600 565 ; -C -1 ; WX 600 ; N gbreve ; B 61 -157 657 609 ; -C 188 ; WX 600 ; N onequarter ; B 65 -57 674 665 ; -C 138 ; WX 600 ; N Scaron ; B 76 -20 672 802 ; -C -1 ; WX 600 ; N Scommaaccent ; B 76 -250 650 580 ; -C -1 ; WX 600 ; N Ohungarumlaut ; B 94 -18 751 805 ; -C 176 ; WX 600 ; N degree ; B 214 269 576 622 ; -C 242 ; WX 600 ; N ograve ; B 102 -15 588 672 ; -C -1 ; WX 600 ; N Ccaron ; B 93 -18 672 802 ; -C 249 ; WX 600 ; N ugrave ; B 101 -15 572 672 ; -C -1 ; WX 600 ; N radical ; B 85 -15 765 792 ; -C -1 ; WX 600 ; N Dcaron ; B 43 0 645 802 ; -C -1 ; WX 600 ; N rcommaaccent ; B 60 -250 636 441 ; -C 209 ; WX 600 ; N Ntilde ; B 7 -13 712 729 ; -C 245 ; WX 600 ; N otilde ; B 102 -15 629 606 ; -C -1 ; WX 600 ; N Rcommaaccent ; B 38 -250 598 562 ; -C -1 ; WX 600 ; N Lcommaaccent ; B 47 -250 607 562 ; -C 195 ; WX 600 ; N Atilde ; B 3 0 655 729 ; -C -1 ; WX 600 ; N Aogonek ; B 3 -172 607 562 ; -C 197 ; WX 600 ; N Aring ; B 3 0 607 750 ; -C 213 ; WX 600 ; N Otilde ; B 94 -18 655 729 ; -C -1 ; WX 600 ; N zdotaccent ; B 99 0 593 620 ; -C -1 ; WX 600 ; N Ecaron ; B 53 0 660 802 ; -C -1 ; WX 600 ; N Iogonek ; B 96 -172 623 562 ; -C -1 ; WX 600 ; N kcommaaccent ; B 58 -250 633 629 ; -C -1 ; WX 600 ; N minus ; B 129 232 580 283 ; -C 206 ; WX 600 ; N Icircumflex ; B 96 0 623 787 ; -C -1 ; WX 600 ; N ncaron ; B 26 0 614 669 ; -C -1 ; WX 600 ; N tcommaaccent ; B 165 -250 561 561 ; -C 172 ; WX 600 ; N logicalnot ; B 155 108 591 369 ; -C 246 ; WX 600 ; N odieresis ; B 102 -15 588 620 ; -C 252 ; WX 600 ; N udieresis ; B 101 -15 575 620 ; -C -1 ; WX 600 ; N notequal ; B 43 -16 621 529 ; -C -1 ; WX 600 ; N gcommaaccent ; B 61 -157 657 708 ; -C 240 ; WX 600 ; N eth ; B 102 -15 639 629 ; -C 158 ; WX 600 ; N zcaron ; B 99 0 624 669 ; -C -1 ; WX 600 ; N ncommaaccent ; B 26 -250 585 441 ; -C 185 ; WX 600 ; N onesuperior ; B 231 249 491 622 ; -C -1 ; WX 600 ; N imacron ; B 95 0 543 565 ; -C 128 ; WX 600 ; N Euro ; B 0 0 0 0 ; -EndCharMetrics -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Courier.afm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Courier.afm deleted file mode 100644 index fb77a747..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Courier.afm +++ /dev/null @@ -1,344 +0,0 @@ -StartFontMetrics 4.1 -Comment Copyright (c) 1989, 1990, 1991, 1992, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved. -Comment Creation Date: Thu May 1 17:27:09 1997 -Comment UniqueID 43050 -Comment VMusage 39754 50779 -FontName Courier -FullName Courier -FamilyName Courier -Weight Medium -ItalicAngle 0 -IsFixedPitch true -CharacterSet ExtendedRoman -FontBBox -23 -250 715 805 -UnderlinePosition -100 -UnderlineThickness 50 -Version 003.000 -Notice Copyright (c) 1989, 1990, 1991, 1992, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved. -EncodingScheme WinAnsiEncoding -CapHeight 562 -XHeight 426 -Ascender 629 -Descender -157 -StdHW 51 -StdVW 51 -StartCharMetrics 317 -C 32 ; WX 600 ; N space ; B 0 0 0 0 ; -C 160 ; WX 600 ; N space ; B 0 0 0 0 ; -C 33 ; WX 600 ; N exclam ; B 236 -15 364 572 ; -C 34 ; WX 600 ; N quotedbl ; B 187 328 413 562 ; -C 35 ; WX 600 ; N numbersign ; B 93 -32 507 639 ; -C 36 ; WX 600 ; N dollar ; B 105 -126 496 662 ; -C 37 ; WX 600 ; N percent ; B 81 -15 518 622 ; -C 38 ; WX 600 ; N ampersand ; B 63 -15 538 543 ; -C 146 ; WX 600 ; N quoteright ; B 213 328 376 562 ; -C 40 ; WX 600 ; N parenleft ; B 269 -108 440 622 ; -C 41 ; WX 600 ; N parenright ; B 160 -108 331 622 ; -C 42 ; WX 600 ; N asterisk ; B 116 257 484 607 ; -C 43 ; WX 600 ; N plus ; B 80 44 520 470 ; -C 44 ; WX 600 ; N comma ; B 181 -112 344 122 ; -C 45 ; WX 600 ; N hyphen ; B 103 231 497 285 ; -C 173 ; WX 600 ; N hyphen ; B 103 231 497 285 ; -C 46 ; WX 600 ; N period ; B 229 -15 371 109 ; -C 47 ; WX 600 ; N slash ; B 125 -80 475 629 ; -C 48 ; WX 600 ; N zero ; B 106 -15 494 622 ; -C 49 ; WX 600 ; N one ; B 96 0 505 622 ; -C 50 ; WX 600 ; N two ; B 70 0 471 622 ; -C 51 ; WX 600 ; N three ; B 75 -15 466 622 ; -C 52 ; WX 600 ; N four ; B 78 0 500 622 ; -C 53 ; WX 600 ; N five ; B 92 -15 497 607 ; -C 54 ; WX 600 ; N six ; B 111 -15 497 622 ; -C 55 ; WX 600 ; N seven ; B 82 0 483 607 ; -C 56 ; WX 600 ; N eight ; B 102 -15 498 622 ; -C 57 ; WX 600 ; N nine ; B 96 -15 489 622 ; -C 58 ; WX 600 ; N colon ; B 229 -15 371 385 ; -C 59 ; WX 600 ; N semicolon ; B 181 -112 371 385 ; -C 60 ; WX 600 ; N less ; B 41 42 519 472 ; -C 61 ; WX 600 ; N equal ; B 80 138 520 376 ; -C 62 ; WX 600 ; N greater ; B 66 42 544 472 ; -C 63 ; WX 600 ; N question ; B 129 -15 492 572 ; -C 64 ; WX 600 ; N at ; B 77 -15 533 622 ; -C 65 ; WX 600 ; N A ; B 3 0 597 562 ; -C 66 ; WX 600 ; N B ; B 43 0 559 562 ; -C 67 ; WX 600 ; N C ; B 41 -18 540 580 ; -C 68 ; WX 600 ; N D ; B 43 0 574 562 ; -C 69 ; WX 600 ; N E ; B 53 0 550 562 ; -C 70 ; WX 600 ; N F ; B 53 0 545 562 ; -C 71 ; WX 600 ; N G ; B 31 -18 575 580 ; -C 72 ; WX 600 ; N H ; B 32 0 568 562 ; -C 73 ; WX 600 ; N I ; B 96 0 504 562 ; -C 74 ; WX 600 ; N J ; B 34 -18 566 562 ; -C 75 ; WX 600 ; N K ; B 38 0 582 562 ; -C 76 ; WX 600 ; N L ; B 47 0 554 562 ; -C 77 ; WX 600 ; N M ; B 4 0 596 562 ; -C 78 ; WX 600 ; N N ; B 7 -13 593 562 ; -C 79 ; WX 600 ; N O ; B 43 -18 557 580 ; -C 80 ; WX 600 ; N P ; B 79 0 558 562 ; -C 81 ; WX 600 ; N Q ; B 43 -138 557 580 ; -C 82 ; WX 600 ; N R ; B 38 0 588 562 ; -C 83 ; WX 600 ; N S ; B 72 -20 529 580 ; -C 84 ; WX 600 ; N T ; B 38 0 563 562 ; -C 85 ; WX 600 ; N U ; B 17 -18 583 562 ; -C 86 ; WX 600 ; N V ; B -4 -13 604 562 ; -C 87 ; WX 600 ; N W ; B -3 -13 603 562 ; -C 88 ; WX 600 ; N X ; B 23 0 577 562 ; -C 89 ; WX 600 ; N Y ; B 24 0 576 562 ; -C 90 ; WX 600 ; N Z ; B 86 0 514 562 ; -C 91 ; WX 600 ; N bracketleft ; B 269 -108 442 622 ; -C 92 ; WX 600 ; N backslash ; B 118 -80 482 629 ; -C 93 ; WX 600 ; N bracketright ; B 158 -108 331 622 ; -C 94 ; WX 600 ; N asciicircum ; B 94 354 506 622 ; -C 95 ; WX 600 ; N underscore ; B 0 -125 600 -75 ; -C 145 ; WX 600 ; N quoteleft ; B 224 328 387 562 ; -C 97 ; WX 600 ; N a ; B 53 -15 559 441 ; -C 98 ; WX 600 ; N b ; B 14 -15 575 629 ; -C 99 ; WX 600 ; N c ; B 66 -15 529 441 ; -C 100 ; WX 600 ; N d ; B 45 -15 591 629 ; -C 101 ; WX 600 ; N e ; B 66 -15 548 441 ; -C 102 ; WX 600 ; N f ; B 114 0 531 629 ; L i fi ; L l fl ; -C 103 ; WX 600 ; N g ; B 45 -157 566 441 ; -C 104 ; WX 600 ; N h ; B 18 0 582 629 ; -C 105 ; WX 600 ; N i ; B 95 0 505 657 ; -C 106 ; WX 600 ; N j ; B 82 -157 410 657 ; -C 107 ; WX 600 ; N k ; B 43 0 580 629 ; -C 108 ; WX 600 ; N l ; B 95 0 505 629 ; -C 109 ; WX 600 ; N m ; B -5 0 605 441 ; -C 110 ; WX 600 ; N n ; B 26 0 575 441 ; -C 111 ; WX 600 ; N o ; B 62 -15 538 441 ; -C 112 ; WX 600 ; N p ; B 9 -157 555 441 ; -C 113 ; WX 600 ; N q ; B 45 -157 591 441 ; -C 114 ; WX 600 ; N r ; B 60 0 559 441 ; -C 115 ; WX 600 ; N s ; B 80 -15 513 441 ; -C 116 ; WX 600 ; N t ; B 87 -15 530 561 ; -C 117 ; WX 600 ; N u ; B 21 -15 562 426 ; -C 118 ; WX 600 ; N v ; B 10 -10 590 426 ; -C 119 ; WX 600 ; N w ; B -4 -10 604 426 ; -C 120 ; WX 600 ; N x ; B 20 0 580 426 ; -C 121 ; WX 600 ; N y ; B 7 -157 592 426 ; -C 122 ; WX 600 ; N z ; B 99 0 502 426 ; -C 123 ; WX 600 ; N braceleft ; B 182 -108 437 622 ; -C 124 ; WX 600 ; N bar ; B 275 -250 326 750 ; -C 125 ; WX 600 ; N braceright ; B 163 -108 418 622 ; -C 126 ; WX 600 ; N asciitilde ; B 63 197 540 320 ; -C 161 ; WX 600 ; N exclamdown ; B 236 -157 364 430 ; -C 162 ; WX 600 ; N cent ; B 96 -49 500 614 ; -C 163 ; WX 600 ; N sterling ; B 84 -21 521 611 ; -C -1 ; WX 600 ; N fraction ; B 92 -57 509 665 ; -C 165 ; WX 600 ; N yen ; B 26 0 574 562 ; -C 131 ; WX 600 ; N florin ; B 4 -143 539 622 ; -C 167 ; WX 600 ; N section ; B 113 -78 488 580 ; -C 164 ; WX 600 ; N currency ; B 73 58 527 506 ; -C 39 ; WX 600 ; N quotesingle ; B 259 328 341 562 ; -C 147 ; WX 600 ; N quotedblleft ; B 143 328 471 562 ; -C 171 ; WX 600 ; N guillemotleft ; B 37 70 563 446 ; -C 139 ; WX 600 ; N guilsinglleft ; B 149 70 451 446 ; -C 155 ; WX 600 ; N guilsinglright ; B 149 70 451 446 ; -C -1 ; WX 600 ; N fi ; B 3 0 597 629 ; -C -1 ; WX 600 ; N fl ; B 3 0 597 629 ; -C 150 ; WX 600 ; N endash ; B 75 231 525 285 ; -C 134 ; WX 600 ; N dagger ; B 141 -78 459 580 ; -C 135 ; WX 600 ; N daggerdbl ; B 141 -78 459 580 ; -C 183 ; WX 600 ; N periodcentered ; B 222 189 378 327 ; -C 182 ; WX 600 ; N paragraph ; B 50 -78 511 562 ; -C 149 ; WX 600 ; N bullet ; B 172 130 428 383 ; -C 130 ; WX 600 ; N quotesinglbase ; B 213 -134 376 100 ; -C 132 ; WX 600 ; N quotedblbase ; B 143 -134 457 100 ; -C 148 ; WX 600 ; N quotedblright ; B 143 328 457 562 ; -C 187 ; WX 600 ; N guillemotright ; B 37 70 563 446 ; -C 133 ; WX 600 ; N ellipsis ; B 37 -15 563 111 ; -C 137 ; WX 600 ; N perthousand ; B 3 -15 600 622 ; -C 191 ; WX 600 ; N questiondown ; B 108 -157 471 430 ; -C 96 ; WX 600 ; N grave ; B 151 497 378 672 ; -C 180 ; WX 600 ; N acute ; B 242 497 469 672 ; -C 136 ; WX 600 ; N circumflex ; B 124 477 476 654 ; -C 152 ; WX 600 ; N tilde ; B 105 489 503 606 ; -C 175 ; WX 600 ; N macron ; B 120 525 480 565 ; -C -1 ; WX 600 ; N breve ; B 153 501 447 609 ; -C -1 ; WX 600 ; N dotaccent ; B 249 537 352 640 ; -C 168 ; WX 600 ; N dieresis ; B 148 537 453 640 ; -C -1 ; WX 600 ; N ring ; B 218 463 382 627 ; -C 184 ; WX 600 ; N cedilla ; B 224 -151 362 10 ; -C -1 ; WX 600 ; N hungarumlaut ; B 133 497 540 672 ; -C -1 ; WX 600 ; N ogonek ; B 211 -172 407 4 ; -C -1 ; WX 600 ; N caron ; B 124 492 476 669 ; -C 151 ; WX 600 ; N emdash ; B 0 231 600 285 ; -C 198 ; WX 600 ; N AE ; B 3 0 550 562 ; -C 170 ; WX 600 ; N ordfeminine ; B 156 249 442 580 ; -C -1 ; WX 600 ; N Lslash ; B 47 0 554 562 ; -C 216 ; WX 600 ; N Oslash ; B 43 -80 557 629 ; -C 140 ; WX 600 ; N OE ; B 7 0 567 562 ; -C 186 ; WX 600 ; N ordmasculine ; B 157 249 443 580 ; -C 230 ; WX 600 ; N ae ; B 19 -15 570 441 ; -C -1 ; WX 600 ; N dotlessi ; B 95 0 505 426 ; -C -1 ; WX 600 ; N lslash ; B 95 0 505 629 ; -C 248 ; WX 600 ; N oslash ; B 62 -80 538 506 ; -C 156 ; WX 600 ; N oe ; B 19 -15 559 441 ; -C 223 ; WX 600 ; N germandbls ; B 48 -15 588 629 ; -C 207 ; WX 600 ; N Idieresis ; B 96 0 504 753 ; -C 233 ; WX 600 ; N eacute ; B 66 -15 548 672 ; -C -1 ; WX 600 ; N abreve ; B 53 -15 559 609 ; -C -1 ; WX 600 ; N uhungarumlaut ; B 21 -15 580 672 ; -C -1 ; WX 600 ; N ecaron ; B 66 -15 548 669 ; -C 159 ; WX 600 ; N Ydieresis ; B 24 0 576 753 ; -C 247 ; WX 600 ; N divide ; B 87 48 513 467 ; -C 221 ; WX 600 ; N Yacute ; B 24 0 576 805 ; -C 194 ; WX 600 ; N Acircumflex ; B 3 0 597 787 ; -C 225 ; WX 600 ; N aacute ; B 53 -15 559 672 ; -C 219 ; WX 600 ; N Ucircumflex ; B 17 -18 583 787 ; -C 253 ; WX 600 ; N yacute ; B 7 -157 592 672 ; -C -1 ; WX 600 ; N scommaaccent ; B 80 -250 513 441 ; -C 234 ; WX 600 ; N ecircumflex ; B 66 -15 548 654 ; -C -1 ; WX 600 ; N Uring ; B 17 -18 583 760 ; -C 220 ; WX 600 ; N Udieresis ; B 17 -18 583 753 ; -C -1 ; WX 600 ; N aogonek ; B 53 -172 587 441 ; -C 218 ; WX 600 ; N Uacute ; B 17 -18 583 805 ; -C -1 ; WX 600 ; N uogonek ; B 21 -172 590 426 ; -C 203 ; WX 600 ; N Edieresis ; B 53 0 550 753 ; -C -1 ; WX 600 ; N Dcroat ; B 30 0 574 562 ; -C -1 ; WX 600 ; N commaaccent ; B 198 -250 335 -58 ; -C 169 ; WX 600 ; N copyright ; B 0 -18 600 580 ; -C -1 ; WX 600 ; N Emacron ; B 53 0 550 698 ; -C -1 ; WX 600 ; N ccaron ; B 66 -15 529 669 ; -C 229 ; WX 600 ; N aring ; B 53 -15 559 627 ; -C -1 ; WX 600 ; N Ncommaaccent ; B 7 -250 593 562 ; -C -1 ; WX 600 ; N lacute ; B 95 0 505 805 ; -C 224 ; WX 600 ; N agrave ; B 53 -15 559 672 ; -C -1 ; WX 600 ; N Tcommaaccent ; B 38 -250 563 562 ; -C -1 ; WX 600 ; N Cacute ; B 41 -18 540 805 ; -C 227 ; WX 600 ; N atilde ; B 53 -15 559 606 ; -C -1 ; WX 600 ; N Edotaccent ; B 53 0 550 753 ; -C 154 ; WX 600 ; N scaron ; B 80 -15 513 669 ; -C -1 ; WX 600 ; N scedilla ; B 80 -151 513 441 ; -C 237 ; WX 600 ; N iacute ; B 95 0 505 672 ; -C -1 ; WX 600 ; N lozenge ; B 18 0 443 706 ; -C -1 ; WX 600 ; N Rcaron ; B 38 0 588 802 ; -C -1 ; WX 600 ; N Gcommaaccent ; B 31 -250 575 580 ; -C 251 ; WX 600 ; N ucircumflex ; B 21 -15 562 654 ; -C 226 ; WX 600 ; N acircumflex ; B 53 -15 559 654 ; -C -1 ; WX 600 ; N Amacron ; B 3 0 597 698 ; -C -1 ; WX 600 ; N rcaron ; B 60 0 559 669 ; -C 231 ; WX 600 ; N ccedilla ; B 66 -151 529 441 ; -C -1 ; WX 600 ; N Zdotaccent ; B 86 0 514 753 ; -C 222 ; WX 600 ; N Thorn ; B 79 0 538 562 ; -C -1 ; WX 600 ; N Omacron ; B 43 -18 557 698 ; -C -1 ; WX 600 ; N Racute ; B 38 0 588 805 ; -C -1 ; WX 600 ; N Sacute ; B 72 -20 529 805 ; -C -1 ; WX 600 ; N dcaron ; B 45 -15 715 629 ; -C -1 ; WX 600 ; N Umacron ; B 17 -18 583 698 ; -C -1 ; WX 600 ; N uring ; B 21 -15 562 627 ; -C 179 ; WX 600 ; N threesuperior ; B 155 240 406 622 ; -C 210 ; WX 600 ; N Ograve ; B 43 -18 557 805 ; -C 192 ; WX 600 ; N Agrave ; B 3 0 597 805 ; -C -1 ; WX 600 ; N Abreve ; B 3 0 597 732 ; -C 215 ; WX 600 ; N multiply ; B 87 43 515 470 ; -C 250 ; WX 600 ; N uacute ; B 21 -15 562 672 ; -C -1 ; WX 600 ; N Tcaron ; B 38 0 563 802 ; -C -1 ; WX 600 ; N partialdiff ; B 17 -38 459 710 ; -C 255 ; WX 600 ; N ydieresis ; B 7 -157 592 620 ; -C -1 ; WX 600 ; N Nacute ; B 7 -13 593 805 ; -C 238 ; WX 600 ; N icircumflex ; B 94 0 505 654 ; -C 202 ; WX 600 ; N Ecircumflex ; B 53 0 550 787 ; -C 228 ; WX 600 ; N adieresis ; B 53 -15 559 620 ; -C 235 ; WX 600 ; N edieresis ; B 66 -15 548 620 ; -C -1 ; WX 600 ; N cacute ; B 66 -15 529 672 ; -C -1 ; WX 600 ; N nacute ; B 26 0 575 672 ; -C -1 ; WX 600 ; N umacron ; B 21 -15 562 565 ; -C -1 ; WX 600 ; N Ncaron ; B 7 -13 593 802 ; -C 205 ; WX 600 ; N Iacute ; B 96 0 504 805 ; -C 177 ; WX 600 ; N plusminus ; B 87 44 513 558 ; -C 166 ; WX 600 ; N brokenbar ; B 275 -175 326 675 ; -C 174 ; WX 600 ; N registered ; B 0 -18 600 580 ; -C -1 ; WX 600 ; N Gbreve ; B 31 -18 575 732 ; -C -1 ; WX 600 ; N Idotaccent ; B 96 0 504 753 ; -C -1 ; WX 600 ; N summation ; B 15 -10 585 706 ; -C 200 ; WX 600 ; N Egrave ; B 53 0 550 805 ; -C -1 ; WX 600 ; N racute ; B 60 0 559 672 ; -C -1 ; WX 600 ; N omacron ; B 62 -15 538 565 ; -C -1 ; WX 600 ; N Zacute ; B 86 0 514 805 ; -C 142 ; WX 600 ; N Zcaron ; B 86 0 514 802 ; -C -1 ; WX 600 ; N greaterequal ; B 98 0 502 710 ; -C 208 ; WX 600 ; N Eth ; B 30 0 574 562 ; -C 199 ; WX 600 ; N Ccedilla ; B 41 -151 540 580 ; -C -1 ; WX 600 ; N lcommaaccent ; B 95 -250 505 629 ; -C -1 ; WX 600 ; N tcaron ; B 87 -15 530 717 ; -C -1 ; WX 600 ; N eogonek ; B 66 -172 548 441 ; -C -1 ; WX 600 ; N Uogonek ; B 17 -172 583 562 ; -C 193 ; WX 600 ; N Aacute ; B 3 0 597 805 ; -C 196 ; WX 600 ; N Adieresis ; B 3 0 597 753 ; -C 232 ; WX 600 ; N egrave ; B 66 -15 548 672 ; -C -1 ; WX 600 ; N zacute ; B 99 0 502 672 ; -C -1 ; WX 600 ; N iogonek ; B 95 -172 505 657 ; -C 211 ; WX 600 ; N Oacute ; B 43 -18 557 805 ; -C 243 ; WX 600 ; N oacute ; B 62 -15 538 672 ; -C -1 ; WX 600 ; N amacron ; B 53 -15 559 565 ; -C -1 ; WX 600 ; N sacute ; B 80 -15 513 672 ; -C 239 ; WX 600 ; N idieresis ; B 95 0 505 620 ; -C 212 ; WX 600 ; N Ocircumflex ; B 43 -18 557 787 ; -C 217 ; WX 600 ; N Ugrave ; B 17 -18 583 805 ; -C -1 ; WX 600 ; N Delta ; B 6 0 598 688 ; -C 254 ; WX 600 ; N thorn ; B -6 -157 555 629 ; -C 178 ; WX 600 ; N twosuperior ; B 177 249 424 622 ; -C 214 ; WX 600 ; N Odieresis ; B 43 -18 557 753 ; -C 181 ; WX 600 ; N mu ; B 21 -157 562 426 ; -C 236 ; WX 600 ; N igrave ; B 95 0 505 672 ; -C -1 ; WX 600 ; N ohungarumlaut ; B 62 -15 580 672 ; -C -1 ; WX 600 ; N Eogonek ; B 53 -172 561 562 ; -C -1 ; WX 600 ; N dcroat ; B 45 -15 591 629 ; -C 190 ; WX 600 ; N threequarters ; B 8 -56 593 666 ; -C -1 ; WX 600 ; N Scedilla ; B 72 -151 529 580 ; -C -1 ; WX 600 ; N lcaron ; B 95 0 533 629 ; -C -1 ; WX 600 ; N Kcommaaccent ; B 38 -250 582 562 ; -C -1 ; WX 600 ; N Lacute ; B 47 0 554 805 ; -C 153 ; WX 600 ; N trademark ; B -23 263 623 562 ; -C -1 ; WX 600 ; N edotaccent ; B 66 -15 548 620 ; -C 204 ; WX 600 ; N Igrave ; B 96 0 504 805 ; -C -1 ; WX 600 ; N Imacron ; B 96 0 504 698 ; -C -1 ; WX 600 ; N Lcaron ; B 47 0 554 562 ; -C 189 ; WX 600 ; N onehalf ; B 0 -57 611 665 ; -C -1 ; WX 600 ; N lessequal ; B 98 0 502 710 ; -C 244 ; WX 600 ; N ocircumflex ; B 62 -15 538 654 ; -C 241 ; WX 600 ; N ntilde ; B 26 0 575 606 ; -C -1 ; WX 600 ; N Uhungarumlaut ; B 17 -18 590 805 ; -C 201 ; WX 600 ; N Eacute ; B 53 0 550 805 ; -C -1 ; WX 600 ; N emacron ; B 66 -15 548 565 ; -C -1 ; WX 600 ; N gbreve ; B 45 -157 566 609 ; -C 188 ; WX 600 ; N onequarter ; B 0 -57 600 665 ; -C 138 ; WX 600 ; N Scaron ; B 72 -20 529 802 ; -C -1 ; WX 600 ; N Scommaaccent ; B 72 -250 529 580 ; -C -1 ; WX 600 ; N Ohungarumlaut ; B 43 -18 580 805 ; -C 176 ; WX 600 ; N degree ; B 123 269 477 622 ; -C 242 ; WX 600 ; N ograve ; B 62 -15 538 672 ; -C -1 ; WX 600 ; N Ccaron ; B 41 -18 540 802 ; -C 249 ; WX 600 ; N ugrave ; B 21 -15 562 672 ; -C -1 ; WX 600 ; N radical ; B 3 -15 597 792 ; -C -1 ; WX 600 ; N Dcaron ; B 43 0 574 802 ; -C -1 ; WX 600 ; N rcommaaccent ; B 60 -250 559 441 ; -C 209 ; WX 600 ; N Ntilde ; B 7 -13 593 729 ; -C 245 ; WX 600 ; N otilde ; B 62 -15 538 606 ; -C -1 ; WX 600 ; N Rcommaaccent ; B 38 -250 588 562 ; -C -1 ; WX 600 ; N Lcommaaccent ; B 47 -250 554 562 ; -C 195 ; WX 600 ; N Atilde ; B 3 0 597 729 ; -C -1 ; WX 600 ; N Aogonek ; B 3 -172 608 562 ; -C 197 ; WX 600 ; N Aring ; B 3 0 597 750 ; -C 213 ; WX 600 ; N Otilde ; B 43 -18 557 729 ; -C -1 ; WX 600 ; N zdotaccent ; B 99 0 502 620 ; -C -1 ; WX 600 ; N Ecaron ; B 53 0 550 802 ; -C -1 ; WX 600 ; N Iogonek ; B 96 -172 504 562 ; -C -1 ; WX 600 ; N kcommaaccent ; B 43 -250 580 629 ; -C -1 ; WX 600 ; N minus ; B 80 232 520 283 ; -C 206 ; WX 600 ; N Icircumflex ; B 96 0 504 787 ; -C -1 ; WX 600 ; N ncaron ; B 26 0 575 669 ; -C -1 ; WX 600 ; N tcommaaccent ; B 87 -250 530 561 ; -C 172 ; WX 600 ; N logicalnot ; B 87 108 513 369 ; -C 246 ; WX 600 ; N odieresis ; B 62 -15 538 620 ; -C 252 ; WX 600 ; N udieresis ; B 21 -15 562 620 ; -C -1 ; WX 600 ; N notequal ; B 15 -16 540 529 ; -C -1 ; WX 600 ; N gcommaaccent ; B 45 -157 566 708 ; -C 240 ; WX 600 ; N eth ; B 62 -15 538 629 ; -C 158 ; WX 600 ; N zcaron ; B 99 0 502 669 ; -C -1 ; WX 600 ; N ncommaaccent ; B 26 -250 575 441 ; -C 185 ; WX 600 ; N onesuperior ; B 172 249 428 622 ; -C -1 ; WX 600 ; N imacron ; B 95 0 505 565 ; -C 128 ; WX 600 ; N Euro ; B 0 0 0 0 ; -EndCharMetrics -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSans-Bold.ttf b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSans-Bold.ttf deleted file mode 100644 index 6d65fa7d..00000000 Binary files a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSans-Bold.ttf and /dev/null differ diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSans-Bold.ufm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSans-Bold.ufm deleted file mode 100644 index e9279924..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSans-Bold.ufm +++ /dev/null @@ -1,6067 +0,0 @@ -StartFontMetrics 4.1 -Notice Converted by PHP-font-lib -Comment https://github.com/PhenX/php-font-lib -EncodingScheme FontSpecific -FontName DejaVu Sans -FontSubfamily Bold -UniqueID DejaVu Sans Bold -FullName DejaVu Sans Bold -Version Version 2.37 -PostScriptName DejaVuSans-Bold -Manufacturer DejaVu fonts team -FontVendorURL http://dejavu.sourceforge.net -LicenseURL http://dejavu.sourceforge.net/wiki/index.php/License -PreferredFamily DejaVu Sans -PreferredSubfamily Bold -Weight Bold -ItalicAngle 0 -IsFixedPitch false -UnderlineThickness 44 -UnderlinePosition -63 -FontHeightOffset 0 -Ascender 928 -Descender -236 -FontBBox -1069 -415 1975 1174 -StartCharMetrics 6196 -U 32 ; WX 348 ; N space ; G 3 -U 33 ; WX 456 ; N exclam ; G 4 -U 34 ; WX 521 ; N quotedbl ; G 5 -U 35 ; WX 838 ; N numbersign ; G 6 -U 36 ; WX 696 ; N dollar ; G 7 -U 37 ; WX 1002 ; N percent ; G 8 -U 38 ; WX 872 ; N ampersand ; G 9 -U 39 ; WX 306 ; N quotesingle ; G 10 -U 40 ; WX 457 ; N parenleft ; G 11 -U 41 ; WX 457 ; N parenright ; G 12 -U 42 ; WX 523 ; N asterisk ; G 13 -U 43 ; WX 838 ; N plus ; G 14 -U 44 ; WX 380 ; N comma ; G 15 -U 45 ; WX 415 ; N hyphen ; G 16 -U 46 ; WX 380 ; N period ; G 17 -U 47 ; WX 365 ; N slash ; G 18 -U 48 ; WX 696 ; N zero ; G 19 -U 49 ; WX 696 ; N one ; G 20 -U 50 ; WX 696 ; N two ; G 21 -U 51 ; WX 696 ; N three ; G 22 -U 52 ; WX 696 ; N four ; G 23 -U 53 ; WX 696 ; N five ; G 24 -U 54 ; WX 696 ; N six ; G 25 -U 55 ; WX 696 ; N seven ; G 26 -U 56 ; WX 696 ; N eight ; G 27 -U 57 ; WX 696 ; N nine ; G 28 -U 58 ; WX 400 ; N colon ; G 29 -U 59 ; WX 400 ; N semicolon ; G 30 -U 60 ; WX 838 ; N less ; G 31 -U 61 ; WX 838 ; N equal ; G 32 -U 62 ; WX 838 ; N greater ; G 33 -U 63 ; WX 580 ; N question ; G 34 -U 64 ; WX 1000 ; N at ; G 35 -U 65 ; WX 774 ; N A ; G 36 -U 66 ; WX 762 ; N B ; G 37 -U 67 ; WX 734 ; N C ; G 38 -U 68 ; WX 830 ; N D ; G 39 -U 69 ; WX 683 ; N E ; G 40 -U 70 ; WX 683 ; N F ; G 41 -U 71 ; WX 821 ; N G ; G 42 -U 72 ; WX 837 ; N H ; G 43 -U 73 ; WX 372 ; N I ; G 44 -U 74 ; WX 372 ; N J ; G 45 -U 75 ; WX 775 ; N K ; G 46 -U 76 ; WX 637 ; N L ; G 47 -U 77 ; WX 995 ; N M ; G 48 -U 78 ; WX 837 ; N N ; G 49 -U 79 ; WX 850 ; N O ; G 50 -U 80 ; WX 733 ; N P ; G 51 -U 81 ; WX 850 ; N Q ; G 52 -U 82 ; WX 770 ; N R ; G 53 -U 83 ; WX 720 ; N S ; G 54 -U 84 ; WX 682 ; N T ; G 55 -U 85 ; WX 812 ; N U ; G 56 -U 86 ; WX 774 ; N V ; G 57 -U 87 ; WX 1103 ; N W ; G 58 -U 88 ; WX 771 ; N X ; G 59 -U 89 ; WX 724 ; N Y ; G 60 -U 90 ; WX 725 ; N Z ; G 61 -U 91 ; WX 457 ; N bracketleft ; G 62 -U 92 ; WX 365 ; N backslash ; G 63 -U 93 ; WX 457 ; N bracketright ; G 64 -U 94 ; WX 838 ; N asciicircum ; G 65 -U 95 ; WX 500 ; N underscore ; G 66 -U 96 ; WX 500 ; N grave ; G 67 -U 97 ; WX 675 ; N a ; G 68 -U 98 ; WX 716 ; N b ; G 69 -U 99 ; WX 593 ; N c ; G 70 -U 100 ; WX 716 ; N d ; G 71 -U 101 ; WX 678 ; N e ; G 72 -U 102 ; WX 435 ; N f ; G 73 -U 103 ; WX 716 ; N g ; G 74 -U 104 ; WX 712 ; N h ; G 75 -U 105 ; WX 343 ; N i ; G 76 -U 106 ; WX 343 ; N j ; G 77 -U 107 ; WX 665 ; N k ; G 78 -U 108 ; WX 343 ; N l ; G 79 -U 109 ; WX 1042 ; N m ; G 80 -U 110 ; WX 712 ; N n ; G 81 -U 111 ; WX 687 ; N o ; G 82 -U 112 ; WX 716 ; N p ; G 83 -U 113 ; WX 716 ; N q ; G 84 -U 114 ; WX 493 ; N r ; G 85 -U 115 ; WX 595 ; N s ; G 86 -U 116 ; WX 478 ; N t ; G 87 -U 117 ; WX 712 ; N u ; G 88 -U 118 ; WX 652 ; N v ; G 89 -U 119 ; WX 924 ; N w ; G 90 -U 120 ; WX 645 ; N x ; G 91 -U 121 ; WX 652 ; N y ; G 92 -U 122 ; WX 582 ; N z ; G 93 -U 123 ; WX 712 ; N braceleft ; G 94 -U 124 ; WX 365 ; N bar ; G 95 -U 125 ; WX 712 ; N braceright ; G 96 -U 126 ; WX 838 ; N asciitilde ; G 97 -U 160 ; WX 348 ; N nbspace ; G 98 -U 161 ; WX 456 ; N exclamdown ; G 99 -U 162 ; WX 696 ; N cent ; G 100 -U 163 ; WX 696 ; N sterling ; G 101 -U 164 ; WX 636 ; N currency ; G 102 -U 165 ; WX 696 ; N yen ; G 103 -U 166 ; WX 365 ; N brokenbar ; G 104 -U 167 ; WX 500 ; N section ; G 105 -U 168 ; WX 500 ; N dieresis ; G 106 -U 169 ; WX 1000 ; N copyright ; G 107 -U 170 ; WX 564 ; N ordfeminine ; G 108 -U 171 ; WX 646 ; N guillemotleft ; G 109 -U 172 ; WX 838 ; N logicalnot ; G 110 -U 173 ; WX 415 ; N sfthyphen ; G 111 -U 174 ; WX 1000 ; N registered ; G 112 -U 175 ; WX 500 ; N macron ; G 113 -U 176 ; WX 500 ; N degree ; G 114 -U 177 ; WX 838 ; N plusminus ; G 115 -U 178 ; WX 438 ; N twosuperior ; G 116 -U 179 ; WX 438 ; N threesuperior ; G 117 -U 180 ; WX 500 ; N acute ; G 118 -U 181 ; WX 736 ; N mu ; G 119 -U 182 ; WX 636 ; N paragraph ; G 120 -U 183 ; WX 380 ; N periodcentered ; G 121 -U 184 ; WX 500 ; N cedilla ; G 122 -U 185 ; WX 438 ; N onesuperior ; G 123 -U 186 ; WX 564 ; N ordmasculine ; G 124 -U 187 ; WX 646 ; N guillemotright ; G 125 -U 188 ; WX 1035 ; N onequarter ; G 126 -U 189 ; WX 1035 ; N onehalf ; G 127 -U 190 ; WX 1035 ; N threequarters ; G 128 -U 191 ; WX 580 ; N questiondown ; G 129 -U 192 ; WX 774 ; N Agrave ; G 130 -U 193 ; WX 774 ; N Aacute ; G 131 -U 194 ; WX 774 ; N Acircumflex ; G 132 -U 195 ; WX 774 ; N Atilde ; G 133 -U 196 ; WX 774 ; N Adieresis ; G 134 -U 197 ; WX 774 ; N Aring ; G 135 -U 198 ; WX 1085 ; N AE ; G 136 -U 199 ; WX 734 ; N Ccedilla ; G 137 -U 200 ; WX 683 ; N Egrave ; G 138 -U 201 ; WX 683 ; N Eacute ; G 139 -U 202 ; WX 683 ; N Ecircumflex ; G 140 -U 203 ; WX 683 ; N Edieresis ; G 141 -U 204 ; WX 372 ; N Igrave ; G 142 -U 205 ; WX 372 ; N Iacute ; G 143 -U 206 ; WX 372 ; N Icircumflex ; G 144 -U 207 ; WX 372 ; N Idieresis ; G 145 -U 208 ; WX 838 ; N Eth ; G 146 -U 209 ; WX 837 ; N Ntilde ; G 147 -U 210 ; WX 850 ; N Ograve ; G 148 -U 211 ; WX 850 ; N Oacute ; G 149 -U 212 ; WX 850 ; N Ocircumflex ; G 150 -U 213 ; WX 850 ; N Otilde ; G 151 -U 214 ; WX 850 ; N Odieresis ; G 152 -U 215 ; WX 838 ; N multiply ; G 153 -U 216 ; WX 850 ; N Oslash ; G 154 -U 217 ; WX 812 ; N Ugrave ; G 155 -U 218 ; WX 812 ; N Uacute ; G 156 -U 219 ; WX 812 ; N Ucircumflex ; G 157 -U 220 ; WX 812 ; N Udieresis ; G 158 -U 221 ; WX 724 ; N Yacute ; G 159 -U 222 ; WX 738 ; N Thorn ; G 160 -U 223 ; WX 719 ; N germandbls ; G 161 -U 224 ; WX 675 ; N agrave ; G 162 -U 225 ; WX 675 ; N aacute ; G 163 -U 226 ; WX 675 ; N acircumflex ; G 164 -U 227 ; WX 675 ; N atilde ; G 165 -U 228 ; WX 675 ; N adieresis ; G 166 -U 229 ; WX 675 ; N aring ; G 167 -U 230 ; WX 1048 ; N ae ; G 168 -U 231 ; WX 593 ; N ccedilla ; G 169 -U 232 ; WX 678 ; N egrave ; G 170 -U 233 ; WX 678 ; N eacute ; G 171 -U 234 ; WX 678 ; N ecircumflex ; G 172 -U 235 ; WX 678 ; N edieresis ; G 173 -U 236 ; WX 343 ; N igrave ; G 174 -U 237 ; WX 343 ; N iacute ; G 175 -U 238 ; WX 343 ; N icircumflex ; G 176 -U 239 ; WX 343 ; N idieresis ; G 177 -U 240 ; WX 687 ; N eth ; G 178 -U 241 ; WX 712 ; N ntilde ; G 179 -U 242 ; WX 687 ; N ograve ; G 180 -U 243 ; WX 687 ; N oacute ; G 181 -U 244 ; WX 687 ; N ocircumflex ; G 182 -U 245 ; WX 687 ; N otilde ; G 183 -U 246 ; WX 687 ; N odieresis ; G 184 -U 247 ; WX 838 ; N divide ; G 185 -U 248 ; WX 687 ; N oslash ; G 186 -U 249 ; WX 712 ; N ugrave ; G 187 -U 250 ; WX 712 ; N uacute ; G 188 -U 251 ; WX 712 ; N ucircumflex ; G 189 -U 252 ; WX 712 ; N udieresis ; G 190 -U 253 ; WX 652 ; N yacute ; G 191 -U 254 ; WX 716 ; N thorn ; G 192 -U 255 ; WX 652 ; N ydieresis ; G 193 -U 256 ; WX 774 ; N Amacron ; G 194 -U 257 ; WX 675 ; N amacron ; G 195 -U 258 ; WX 774 ; N Abreve ; G 196 -U 259 ; WX 675 ; N abreve ; G 197 -U 260 ; WX 774 ; N Aogonek ; G 198 -U 261 ; WX 675 ; N aogonek ; G 199 -U 262 ; WX 734 ; N Cacute ; G 200 -U 263 ; WX 593 ; N cacute ; G 201 -U 264 ; WX 734 ; N Ccircumflex ; G 202 -U 265 ; WX 593 ; N ccircumflex ; G 203 -U 266 ; WX 734 ; N Cdotaccent ; G 204 -U 267 ; WX 593 ; N cdotaccent ; G 205 -U 268 ; WX 734 ; N Ccaron ; G 206 -U 269 ; WX 593 ; N ccaron ; G 207 -U 270 ; WX 830 ; N Dcaron ; G 208 -U 271 ; WX 716 ; N dcaron ; G 209 -U 272 ; WX 838 ; N Dcroat ; G 210 -U 273 ; WX 716 ; N dmacron ; G 211 -U 274 ; WX 683 ; N Emacron ; G 212 -U 275 ; WX 678 ; N emacron ; G 213 -U 276 ; WX 683 ; N Ebreve ; G 214 -U 277 ; WX 678 ; N ebreve ; G 215 -U 278 ; WX 683 ; N Edotaccent ; G 216 -U 279 ; WX 678 ; N edotaccent ; G 217 -U 280 ; WX 683 ; N Eogonek ; G 218 -U 281 ; WX 678 ; N eogonek ; G 219 -U 282 ; WX 683 ; N Ecaron ; G 220 -U 283 ; WX 678 ; N ecaron ; G 221 -U 284 ; WX 821 ; N Gcircumflex ; G 222 -U 285 ; WX 716 ; N gcircumflex ; G 223 -U 286 ; WX 821 ; N Gbreve ; G 224 -U 287 ; WX 716 ; N gbreve ; G 225 -U 288 ; WX 821 ; N Gdotaccent ; G 226 -U 289 ; WX 716 ; N gdotaccent ; G 227 -U 290 ; WX 821 ; N Gcommaaccent ; G 228 -U 291 ; WX 716 ; N gcommaaccent ; G 229 -U 292 ; WX 837 ; N Hcircumflex ; G 230 -U 293 ; WX 712 ; N hcircumflex ; G 231 -U 294 ; WX 974 ; N Hbar ; G 232 -U 295 ; WX 790 ; N hbar ; G 233 -U 296 ; WX 372 ; N Itilde ; G 234 -U 297 ; WX 343 ; N itilde ; G 235 -U 298 ; WX 372 ; N Imacron ; G 236 -U 299 ; WX 343 ; N imacron ; G 237 -U 300 ; WX 372 ; N Ibreve ; G 238 -U 301 ; WX 343 ; N ibreve ; G 239 -U 302 ; WX 372 ; N Iogonek ; G 240 -U 303 ; WX 343 ; N iogonek ; G 241 -U 304 ; WX 372 ; N Idot ; G 242 -U 305 ; WX 343 ; N dotlessi ; G 243 -U 306 ; WX 744 ; N IJ ; G 244 -U 307 ; WX 686 ; N ij ; G 245 -U 308 ; WX 372 ; N Jcircumflex ; G 246 -U 309 ; WX 343 ; N jcircumflex ; G 247 -U 310 ; WX 775 ; N Kcommaaccent ; G 248 -U 311 ; WX 665 ; N kcommaaccent ; G 249 -U 312 ; WX 665 ; N kgreenlandic ; G 250 -U 313 ; WX 637 ; N Lacute ; G 251 -U 314 ; WX 343 ; N lacute ; G 252 -U 315 ; WX 637 ; N Lcommaaccent ; G 253 -U 316 ; WX 343 ; N lcommaaccent ; G 254 -U 317 ; WX 637 ; N Lcaron ; G 255 -U 318 ; WX 479 ; N lcaron ; G 256 -U 319 ; WX 637 ; N Ldot ; G 257 -U 320 ; WX 557 ; N ldot ; G 258 -U 321 ; WX 642 ; N Lslash ; G 259 -U 322 ; WX 371 ; N lslash ; G 260 -U 323 ; WX 837 ; N Nacute ; G 261 -U 324 ; WX 712 ; N nacute ; G 262 -U 325 ; WX 837 ; N Ncommaaccent ; G 263 -U 326 ; WX 712 ; N ncommaaccent ; G 264 -U 327 ; WX 837 ; N Ncaron ; G 265 -U 328 ; WX 712 ; N ncaron ; G 266 -U 329 ; WX 983 ; N napostrophe ; G 267 -U 330 ; WX 837 ; N Eng ; G 268 -U 331 ; WX 712 ; N eng ; G 269 -U 332 ; WX 850 ; N Omacron ; G 270 -U 333 ; WX 687 ; N omacron ; G 271 -U 334 ; WX 850 ; N Obreve ; G 272 -U 335 ; WX 687 ; N obreve ; G 273 -U 336 ; WX 850 ; N Ohungarumlaut ; G 274 -U 337 ; WX 687 ; N ohungarumlaut ; G 275 -U 338 ; WX 1167 ; N OE ; G 276 -U 339 ; WX 1094 ; N oe ; G 277 -U 340 ; WX 770 ; N Racute ; G 278 -U 341 ; WX 493 ; N racute ; G 279 -U 342 ; WX 770 ; N Rcommaaccent ; G 280 -U 343 ; WX 493 ; N rcommaaccent ; G 281 -U 344 ; WX 770 ; N Rcaron ; G 282 -U 345 ; WX 493 ; N rcaron ; G 283 -U 346 ; WX 720 ; N Sacute ; G 284 -U 347 ; WX 595 ; N sacute ; G 285 -U 348 ; WX 720 ; N Scircumflex ; G 286 -U 349 ; WX 595 ; N scircumflex ; G 287 -U 350 ; WX 720 ; N Scedilla ; G 288 -U 351 ; WX 595 ; N scedilla ; G 289 -U 352 ; WX 720 ; N Scaron ; G 290 -U 353 ; WX 595 ; N scaron ; G 291 -U 354 ; WX 682 ; N Tcommaaccent ; G 292 -U 355 ; WX 478 ; N tcommaaccent ; G 293 -U 356 ; WX 682 ; N Tcaron ; G 294 -U 357 ; WX 478 ; N tcaron ; G 295 -U 358 ; WX 682 ; N Tbar ; G 296 -U 359 ; WX 478 ; N tbar ; G 297 -U 360 ; WX 812 ; N Utilde ; G 298 -U 361 ; WX 712 ; N utilde ; G 299 -U 362 ; WX 812 ; N Umacron ; G 300 -U 363 ; WX 712 ; N umacron ; G 301 -U 364 ; WX 812 ; N Ubreve ; G 302 -U 365 ; WX 712 ; N ubreve ; G 303 -U 366 ; WX 812 ; N Uring ; G 304 -U 367 ; WX 712 ; N uring ; G 305 -U 368 ; WX 812 ; N Uhungarumlaut ; G 306 -U 369 ; WX 712 ; N uhungarumlaut ; G 307 -U 370 ; WX 812 ; N Uogonek ; G 308 -U 371 ; WX 712 ; N uogonek ; G 309 -U 372 ; WX 1103 ; N Wcircumflex ; G 310 -U 373 ; WX 924 ; N wcircumflex ; G 311 -U 374 ; WX 724 ; N Ycircumflex ; G 312 -U 375 ; WX 652 ; N ycircumflex ; G 313 -U 376 ; WX 724 ; N Ydieresis ; G 314 -U 377 ; WX 725 ; N Zacute ; G 315 -U 378 ; WX 582 ; N zacute ; G 316 -U 379 ; WX 725 ; N Zdotaccent ; G 317 -U 380 ; WX 582 ; N zdotaccent ; G 318 -U 381 ; WX 725 ; N Zcaron ; G 319 -U 382 ; WX 582 ; N zcaron ; G 320 -U 383 ; WX 435 ; N longs ; G 321 -U 384 ; WX 716 ; N uni0180 ; G 322 -U 385 ; WX 811 ; N uni0181 ; G 323 -U 386 ; WX 762 ; N uni0182 ; G 324 -U 387 ; WX 716 ; N uni0183 ; G 325 -U 388 ; WX 762 ; N uni0184 ; G 326 -U 389 ; WX 716 ; N uni0185 ; G 327 -U 390 ; WX 734 ; N uni0186 ; G 328 -U 391 ; WX 734 ; N uni0187 ; G 329 -U 392 ; WX 593 ; N uni0188 ; G 330 -U 393 ; WX 838 ; N uni0189 ; G 331 -U 394 ; WX 879 ; N uni018A ; G 332 -U 395 ; WX 757 ; N uni018B ; G 333 -U 396 ; WX 716 ; N uni018C ; G 334 -U 397 ; WX 688 ; N uni018D ; G 335 -U 398 ; WX 683 ; N uni018E ; G 336 -U 399 ; WX 849 ; N uni018F ; G 337 -U 400 ; WX 696 ; N uni0190 ; G 338 -U 401 ; WX 683 ; N uni0191 ; G 339 -U 402 ; WX 435 ; N florin ; G 340 -U 403 ; WX 821 ; N uni0193 ; G 341 -U 404 ; WX 793 ; N uni0194 ; G 342 -U 405 ; WX 1045 ; N uni0195 ; G 343 -U 406 ; WX 436 ; N uni0196 ; G 344 -U 407 ; WX 389 ; N uni0197 ; G 345 -U 408 ; WX 775 ; N uni0198 ; G 346 -U 409 ; WX 665 ; N uni0199 ; G 347 -U 410 ; WX 360 ; N uni019A ; G 348 -U 411 ; WX 592 ; N uni019B ; G 349 -U 412 ; WX 1042 ; N uni019C ; G 350 -U 413 ; WX 837 ; N uni019D ; G 351 -U 414 ; WX 712 ; N uni019E ; G 352 -U 415 ; WX 850 ; N uni019F ; G 353 -U 416 ; WX 874 ; N Ohorn ; G 354 -U 417 ; WX 687 ; N ohorn ; G 355 -U 418 ; WX 1083 ; N uni01A2 ; G 356 -U 419 ; WX 912 ; N uni01A3 ; G 357 -U 420 ; WX 782 ; N uni01A4 ; G 358 -U 421 ; WX 716 ; N uni01A5 ; G 359 -U 422 ; WX 770 ; N uni01A6 ; G 360 -U 423 ; WX 720 ; N uni01A7 ; G 361 -U 424 ; WX 595 ; N uni01A8 ; G 362 -U 425 ; WX 683 ; N uni01A9 ; G 363 -U 426 ; WX 552 ; N uni01AA ; G 364 -U 427 ; WX 478 ; N uni01AB ; G 365 -U 428 ; WX 707 ; N uni01AC ; G 366 -U 429 ; WX 478 ; N uni01AD ; G 367 -U 430 ; WX 682 ; N uni01AE ; G 368 -U 431 ; WX 835 ; N Uhorn ; G 369 -U 432 ; WX 712 ; N uhorn ; G 370 -U 433 ; WX 850 ; N uni01B1 ; G 371 -U 434 ; WX 813 ; N uni01B2 ; G 372 -U 435 ; WX 797 ; N uni01B3 ; G 373 -U 436 ; WX 778 ; N uni01B4 ; G 374 -U 437 ; WX 725 ; N uni01B5 ; G 375 -U 438 ; WX 582 ; N uni01B6 ; G 376 -U 439 ; WX 772 ; N uni01B7 ; G 377 -U 440 ; WX 772 ; N uni01B8 ; G 378 -U 441 ; WX 641 ; N uni01B9 ; G 379 -U 442 ; WX 582 ; N uni01BA ; G 380 -U 443 ; WX 696 ; N uni01BB ; G 381 -U 444 ; WX 772 ; N uni01BC ; G 382 -U 445 ; WX 641 ; N uni01BD ; G 383 -U 446 ; WX 573 ; N uni01BE ; G 384 -U 447 ; WX 716 ; N uni01BF ; G 385 -U 448 ; WX 372 ; N uni01C0 ; G 386 -U 449 ; WX 659 ; N uni01C1 ; G 387 -U 450 ; WX 544 ; N uni01C2 ; G 388 -U 451 ; WX 372 ; N uni01C3 ; G 389 -U 452 ; WX 1555 ; N uni01C4 ; G 390 -U 453 ; WX 1412 ; N uni01C5 ; G 391 -U 454 ; WX 1298 ; N uni01C6 ; G 392 -U 455 ; WX 1009 ; N uni01C7 ; G 393 -U 456 ; WX 980 ; N uni01C8 ; G 394 -U 457 ; WX 686 ; N uni01C9 ; G 395 -U 458 ; WX 1209 ; N uni01CA ; G 396 -U 459 ; WX 1180 ; N uni01CB ; G 397 -U 460 ; WX 1055 ; N uni01CC ; G 398 -U 461 ; WX 774 ; N uni01CD ; G 399 -U 462 ; WX 675 ; N uni01CE ; G 400 -U 463 ; WX 372 ; N uni01CF ; G 401 -U 464 ; WX 343 ; N uni01D0 ; G 402 -U 465 ; WX 850 ; N uni01D1 ; G 403 -U 466 ; WX 687 ; N uni01D2 ; G 404 -U 467 ; WX 812 ; N uni01D3 ; G 405 -U 468 ; WX 712 ; N uni01D4 ; G 406 -U 469 ; WX 812 ; N uni01D5 ; G 407 -U 470 ; WX 712 ; N uni01D6 ; G 408 -U 471 ; WX 812 ; N uni01D7 ; G 409 -U 472 ; WX 712 ; N uni01D8 ; G 410 -U 473 ; WX 812 ; N uni01D9 ; G 411 -U 474 ; WX 712 ; N uni01DA ; G 412 -U 475 ; WX 812 ; N uni01DB ; G 413 -U 476 ; WX 712 ; N uni01DC ; G 414 -U 477 ; WX 678 ; N uni01DD ; G 415 -U 478 ; WX 774 ; N uni01DE ; G 416 -U 479 ; WX 675 ; N uni01DF ; G 417 -U 480 ; WX 774 ; N uni01E0 ; G 418 -U 481 ; WX 675 ; N uni01E1 ; G 419 -U 482 ; WX 1085 ; N uni01E2 ; G 420 -U 483 ; WX 1048 ; N uni01E3 ; G 421 -U 484 ; WX 821 ; N uni01E4 ; G 422 -U 485 ; WX 716 ; N uni01E5 ; G 423 -U 486 ; WX 821 ; N Gcaron ; G 424 -U 487 ; WX 716 ; N gcaron ; G 425 -U 488 ; WX 775 ; N uni01E8 ; G 426 -U 489 ; WX 665 ; N uni01E9 ; G 427 -U 490 ; WX 850 ; N uni01EA ; G 428 -U 491 ; WX 687 ; N uni01EB ; G 429 -U 492 ; WX 850 ; N uni01EC ; G 430 -U 493 ; WX 687 ; N uni01ED ; G 431 -U 494 ; WX 772 ; N uni01EE ; G 432 -U 495 ; WX 582 ; N uni01EF ; G 433 -U 496 ; WX 343 ; N uni01F0 ; G 434 -U 497 ; WX 1555 ; N uni01F1 ; G 435 -U 498 ; WX 1412 ; N uni01F2 ; G 436 -U 499 ; WX 1298 ; N uni01F3 ; G 437 -U 500 ; WX 821 ; N uni01F4 ; G 438 -U 501 ; WX 716 ; N uni01F5 ; G 439 -U 502 ; WX 1289 ; N uni01F6 ; G 440 -U 503 ; WX 787 ; N uni01F7 ; G 441 -U 504 ; WX 837 ; N uni01F8 ; G 442 -U 505 ; WX 712 ; N uni01F9 ; G 443 -U 506 ; WX 774 ; N Aringacute ; G 444 -U 507 ; WX 675 ; N aringacute ; G 445 -U 508 ; WX 1085 ; N AEacute ; G 446 -U 509 ; WX 1048 ; N aeacute ; G 447 -U 510 ; WX 850 ; N Oslashacute ; G 448 -U 511 ; WX 687 ; N oslashacute ; G 449 -U 512 ; WX 774 ; N uni0200 ; G 450 -U 513 ; WX 675 ; N uni0201 ; G 451 -U 514 ; WX 774 ; N uni0202 ; G 452 -U 515 ; WX 675 ; N uni0203 ; G 453 -U 516 ; WX 683 ; N uni0204 ; G 454 -U 517 ; WX 678 ; N uni0205 ; G 455 -U 518 ; WX 683 ; N uni0206 ; G 456 -U 519 ; WX 678 ; N uni0207 ; G 457 -U 520 ; WX 372 ; N uni0208 ; G 458 -U 521 ; WX 343 ; N uni0209 ; G 459 -U 522 ; WX 372 ; N uni020A ; G 460 -U 523 ; WX 343 ; N uni020B ; G 461 -U 524 ; WX 850 ; N uni020C ; G 462 -U 525 ; WX 687 ; N uni020D ; G 463 -U 526 ; WX 850 ; N uni020E ; G 464 -U 527 ; WX 687 ; N uni020F ; G 465 -U 528 ; WX 770 ; N uni0210 ; G 466 -U 529 ; WX 493 ; N uni0211 ; G 467 -U 530 ; WX 770 ; N uni0212 ; G 468 -U 531 ; WX 493 ; N uni0213 ; G 469 -U 532 ; WX 812 ; N uni0214 ; G 470 -U 533 ; WX 712 ; N uni0215 ; G 471 -U 534 ; WX 812 ; N uni0216 ; G 472 -U 535 ; WX 712 ; N uni0217 ; G 473 -U 536 ; WX 720 ; N Scommaaccent ; G 474 -U 537 ; WX 595 ; N scommaaccent ; G 475 -U 538 ; WX 682 ; N uni021A ; G 476 -U 539 ; WX 478 ; N uni021B ; G 477 -U 540 ; WX 690 ; N uni021C ; G 478 -U 541 ; WX 607 ; N uni021D ; G 479 -U 542 ; WX 837 ; N uni021E ; G 480 -U 543 ; WX 712 ; N uni021F ; G 481 -U 544 ; WX 837 ; N uni0220 ; G 482 -U 545 ; WX 865 ; N uni0221 ; G 483 -U 546 ; WX 809 ; N uni0222 ; G 484 -U 547 ; WX 659 ; N uni0223 ; G 485 -U 548 ; WX 725 ; N uni0224 ; G 486 -U 549 ; WX 582 ; N uni0225 ; G 487 -U 550 ; WX 774 ; N uni0226 ; G 488 -U 551 ; WX 675 ; N uni0227 ; G 489 -U 552 ; WX 683 ; N uni0228 ; G 490 -U 553 ; WX 678 ; N uni0229 ; G 491 -U 554 ; WX 850 ; N uni022A ; G 492 -U 555 ; WX 687 ; N uni022B ; G 493 -U 556 ; WX 850 ; N uni022C ; G 494 -U 557 ; WX 687 ; N uni022D ; G 495 -U 558 ; WX 850 ; N uni022E ; G 496 -U 559 ; WX 687 ; N uni022F ; G 497 -U 560 ; WX 850 ; N uni0230 ; G 498 -U 561 ; WX 687 ; N uni0231 ; G 499 -U 562 ; WX 724 ; N uni0232 ; G 500 -U 563 ; WX 652 ; N uni0233 ; G 501 -U 564 ; WX 492 ; N uni0234 ; G 502 -U 565 ; WX 867 ; N uni0235 ; G 503 -U 566 ; WX 512 ; N uni0236 ; G 504 -U 567 ; WX 343 ; N dotlessj ; G 505 -U 568 ; WX 1088 ; N uni0238 ; G 506 -U 569 ; WX 1088 ; N uni0239 ; G 507 -U 570 ; WX 774 ; N uni023A ; G 508 -U 571 ; WX 734 ; N uni023B ; G 509 -U 572 ; WX 593 ; N uni023C ; G 510 -U 573 ; WX 637 ; N uni023D ; G 511 -U 574 ; WX 682 ; N uni023E ; G 512 -U 575 ; WX 595 ; N uni023F ; G 513 -U 576 ; WX 582 ; N uni0240 ; G 514 -U 577 ; WX 782 ; N uni0241 ; G 515 -U 578 ; WX 614 ; N uni0242 ; G 516 -U 579 ; WX 762 ; N uni0243 ; G 517 -U 580 ; WX 812 ; N uni0244 ; G 518 -U 581 ; WX 774 ; N uni0245 ; G 519 -U 582 ; WX 683 ; N uni0246 ; G 520 -U 583 ; WX 678 ; N uni0247 ; G 521 -U 584 ; WX 372 ; N uni0248 ; G 522 -U 585 ; WX 343 ; N uni0249 ; G 523 -U 586 ; WX 860 ; N uni024A ; G 524 -U 587 ; WX 791 ; N uni024B ; G 525 -U 588 ; WX 770 ; N uni024C ; G 526 -U 589 ; WX 493 ; N uni024D ; G 527 -U 590 ; WX 724 ; N uni024E ; G 528 -U 591 ; WX 652 ; N uni024F ; G 529 -U 592 ; WX 675 ; N uni0250 ; G 530 -U 593 ; WX 716 ; N uni0251 ; G 531 -U 594 ; WX 716 ; N uni0252 ; G 532 -U 595 ; WX 716 ; N uni0253 ; G 533 -U 596 ; WX 593 ; N uni0254 ; G 534 -U 597 ; WX 593 ; N uni0255 ; G 535 -U 598 ; WX 717 ; N uni0256 ; G 536 -U 599 ; WX 792 ; N uni0257 ; G 537 -U 600 ; WX 678 ; N uni0258 ; G 538 -U 601 ; WX 678 ; N uni0259 ; G 539 -U 602 ; WX 876 ; N uni025A ; G 540 -U 603 ; WX 557 ; N uni025B ; G 541 -U 604 ; WX 545 ; N uni025C ; G 542 -U 605 ; WX 815 ; N uni025D ; G 543 -U 606 ; WX 731 ; N uni025E ; G 544 -U 607 ; WX 343 ; N uni025F ; G 545 -U 608 ; WX 792 ; N uni0260 ; G 546 -U 609 ; WX 716 ; N uni0261 ; G 547 -U 610 ; WX 627 ; N uni0262 ; G 548 -U 611 ; WX 644 ; N uni0263 ; G 549 -U 612 ; WX 635 ; N uni0264 ; G 550 -U 613 ; WX 712 ; N uni0265 ; G 551 -U 614 ; WX 712 ; N uni0266 ; G 552 -U 615 ; WX 712 ; N uni0267 ; G 553 -U 616 ; WX 545 ; N uni0268 ; G 554 -U 617 ; WX 440 ; N uni0269 ; G 555 -U 618 ; WX 545 ; N uni026A ; G 556 -U 619 ; WX 559 ; N uni026B ; G 557 -U 620 ; WX 693 ; N uni026C ; G 558 -U 621 ; WX 343 ; N uni026D ; G 559 -U 622 ; WX 841 ; N uni026E ; G 560 -U 623 ; WX 1042 ; N uni026F ; G 561 -U 624 ; WX 1042 ; N uni0270 ; G 562 -U 625 ; WX 1042 ; N uni0271 ; G 563 -U 626 ; WX 712 ; N uni0272 ; G 564 -U 627 ; WX 793 ; N uni0273 ; G 565 -U 628 ; WX 707 ; N uni0274 ; G 566 -U 629 ; WX 687 ; N uni0275 ; G 567 -U 630 ; WX 909 ; N uni0276 ; G 568 -U 631 ; WX 681 ; N uni0277 ; G 569 -U 632 ; WX 796 ; N uni0278 ; G 570 -U 633 ; WX 538 ; N uni0279 ; G 571 -U 634 ; WX 538 ; N uni027A ; G 572 -U 635 ; WX 650 ; N uni027B ; G 573 -U 636 ; WX 493 ; N uni027C ; G 574 -U 637 ; WX 493 ; N uni027D ; G 575 -U 638 ; WX 596 ; N uni027E ; G 576 -U 639 ; WX 596 ; N uni027F ; G 577 -U 640 ; WX 642 ; N uni0280 ; G 578 -U 641 ; WX 642 ; N uni0281 ; G 579 -U 642 ; WX 595 ; N uni0282 ; G 580 -U 643 ; WX 415 ; N uni0283 ; G 581 -U 644 ; WX 435 ; N uni0284 ; G 582 -U 645 ; WX 605 ; N uni0285 ; G 583 -U 646 ; WX 552 ; N uni0286 ; G 584 -U 647 ; WX 478 ; N uni0287 ; G 585 -U 648 ; WX 478 ; N uni0288 ; G 586 -U 649 ; WX 920 ; N uni0289 ; G 587 -U 650 ; WX 772 ; N uni028A ; G 588 -U 651 ; WX 670 ; N uni028B ; G 589 -U 652 ; WX 652 ; N uni028C ; G 590 -U 653 ; WX 924 ; N uni028D ; G 591 -U 654 ; WX 652 ; N uni028E ; G 592 -U 655 ; WX 724 ; N uni028F ; G 593 -U 656 ; WX 694 ; N uni0290 ; G 594 -U 657 ; WX 684 ; N uni0291 ; G 595 -U 658 ; WX 641 ; N uni0292 ; G 596 -U 659 ; WX 641 ; N uni0293 ; G 597 -U 660 ; WX 573 ; N uni0294 ; G 598 -U 661 ; WX 573 ; N uni0295 ; G 599 -U 662 ; WX 573 ; N uni0296 ; G 600 -U 663 ; WX 573 ; N uni0297 ; G 601 -U 664 ; WX 850 ; N uni0298 ; G 602 -U 665 ; WX 633 ; N uni0299 ; G 603 -U 666 ; WX 731 ; N uni029A ; G 604 -U 667 ; WX 685 ; N uni029B ; G 605 -U 668 ; WX 691 ; N uni029C ; G 606 -U 669 ; WX 343 ; N uni029D ; G 607 -U 670 ; WX 732 ; N uni029E ; G 608 -U 671 ; WX 539 ; N uni029F ; G 609 -U 672 ; WX 792 ; N uni02A0 ; G 610 -U 673 ; WX 573 ; N uni02A1 ; G 611 -U 674 ; WX 573 ; N uni02A2 ; G 612 -U 675 ; WX 1156 ; N uni02A3 ; G 613 -U 676 ; WX 1214 ; N uni02A4 ; G 614 -U 677 ; WX 1155 ; N uni02A5 ; G 615 -U 678 ; WX 975 ; N uni02A6 ; G 616 -U 679 ; WX 769 ; N uni02A7 ; G 617 -U 680 ; WX 929 ; N uni02A8 ; G 618 -U 681 ; WX 1026 ; N uni02A9 ; G 619 -U 682 ; WX 862 ; N uni02AA ; G 620 -U 683 ; WX 780 ; N uni02AB ; G 621 -U 684 ; WX 591 ; N uni02AC ; G 622 -U 685 ; WX 415 ; N uni02AD ; G 623 -U 686 ; WX 677 ; N uni02AE ; G 624 -U 687 ; WX 789 ; N uni02AF ; G 625 -U 688 ; WX 456 ; N uni02B0 ; G 626 -U 689 ; WX 456 ; N uni02B1 ; G 627 -U 690 ; WX 219 ; N uni02B2 ; G 628 -U 691 ; WX 315 ; N uni02B3 ; G 629 -U 692 ; WX 315 ; N uni02B4 ; G 630 -U 693 ; WX 315 ; N uni02B5 ; G 631 -U 694 ; WX 411 ; N uni02B6 ; G 632 -U 695 ; WX 591 ; N uni02B7 ; G 633 -U 696 ; WX 417 ; N uni02B8 ; G 634 -U 697 ; WX 302 ; N uni02B9 ; G 635 -U 698 ; WX 521 ; N uni02BA ; G 636 -U 699 ; WX 380 ; N uni02BB ; G 637 -U 700 ; WX 380 ; N uni02BC ; G 638 -U 701 ; WX 380 ; N uni02BD ; G 639 -U 702 ; WX 366 ; N uni02BE ; G 640 -U 703 ; WX 366 ; N uni02BF ; G 641 -U 704 ; WX 326 ; N uni02C0 ; G 642 -U 705 ; WX 326 ; N uni02C1 ; G 643 -U 706 ; WX 500 ; N uni02C2 ; G 644 -U 707 ; WX 500 ; N uni02C3 ; G 645 -U 708 ; WX 500 ; N uni02C4 ; G 646 -U 709 ; WX 500 ; N uni02C5 ; G 647 -U 710 ; WX 500 ; N circumflex ; G 648 -U 711 ; WX 500 ; N caron ; G 649 -U 712 ; WX 306 ; N uni02C8 ; G 650 -U 713 ; WX 500 ; N uni02C9 ; G 651 -U 714 ; WX 500 ; N uni02CA ; G 652 -U 715 ; WX 500 ; N uni02CB ; G 653 -U 716 ; WX 306 ; N uni02CC ; G 654 -U 717 ; WX 500 ; N uni02CD ; G 655 -U 718 ; WX 500 ; N uni02CE ; G 656 -U 719 ; WX 500 ; N uni02CF ; G 657 -U 720 ; WX 337 ; N uni02D0 ; G 658 -U 721 ; WX 337 ; N uni02D1 ; G 659 -U 722 ; WX 366 ; N uni02D2 ; G 660 -U 723 ; WX 366 ; N uni02D3 ; G 661 -U 724 ; WX 500 ; N uni02D4 ; G 662 -U 725 ; WX 500 ; N uni02D5 ; G 663 -U 726 ; WX 416 ; N uni02D6 ; G 664 -U 727 ; WX 328 ; N uni02D7 ; G 665 -U 728 ; WX 500 ; N breve ; G 666 -U 729 ; WX 500 ; N dotaccent ; G 667 -U 730 ; WX 500 ; N ring ; G 668 -U 731 ; WX 500 ; N ogonek ; G 669 -U 732 ; WX 500 ; N tilde ; G 670 -U 733 ; WX 500 ; N hungarumlaut ; G 671 -U 734 ; WX 351 ; N uni02DE ; G 672 -U 735 ; WX 500 ; N uni02DF ; G 673 -U 736 ; WX 412 ; N uni02E0 ; G 674 -U 737 ; WX 219 ; N uni02E1 ; G 675 -U 738 ; WX 381 ; N uni02E2 ; G 676 -U 739 ; WX 413 ; N uni02E3 ; G 677 -U 740 ; WX 326 ; N uni02E4 ; G 678 -U 741 ; WX 500 ; N uni02E5 ; G 679 -U 742 ; WX 500 ; N uni02E6 ; G 680 -U 743 ; WX 500 ; N uni02E7 ; G 681 -U 744 ; WX 500 ; N uni02E8 ; G 682 -U 745 ; WX 500 ; N uni02E9 ; G 683 -U 748 ; WX 500 ; N uni02EC ; G 684 -U 749 ; WX 500 ; N uni02ED ; G 685 -U 750 ; WX 657 ; N uni02EE ; G 686 -U 755 ; WX 500 ; N uni02F3 ; G 687 -U 759 ; WX 500 ; N uni02F7 ; G 688 -U 768 ; WX 0 ; N gravecomb ; G 689 -U 769 ; WX 0 ; N acutecomb ; G 690 -U 770 ; WX 0 ; N uni0302 ; G 691 -U 771 ; WX 0 ; N tildecomb ; G 692 -U 772 ; WX 0 ; N uni0304 ; G 693 -U 773 ; WX 0 ; N uni0305 ; G 694 -U 774 ; WX 0 ; N uni0306 ; G 695 -U 775 ; WX 0 ; N uni0307 ; G 696 -U 776 ; WX 0 ; N uni0308 ; G 697 -U 777 ; WX 0 ; N hookabovecomb ; G 698 -U 778 ; WX 0 ; N uni030A ; G 699 -U 779 ; WX 0 ; N uni030B ; G 700 -U 780 ; WX 0 ; N uni030C ; G 701 -U 781 ; WX 0 ; N uni030D ; G 702 -U 782 ; WX 0 ; N uni030E ; G 703 -U 783 ; WX 0 ; N uni030F ; G 704 -U 784 ; WX 0 ; N uni0310 ; G 705 -U 785 ; WX 0 ; N uni0311 ; G 706 -U 786 ; WX 0 ; N uni0312 ; G 707 -U 787 ; WX 0 ; N uni0313 ; G 708 -U 788 ; WX 0 ; N uni0314 ; G 709 -U 789 ; WX 0 ; N uni0315 ; G 710 -U 790 ; WX 0 ; N uni0316 ; G 711 -U 791 ; WX 0 ; N uni0317 ; G 712 -U 792 ; WX 0 ; N uni0318 ; G 713 -U 793 ; WX 0 ; N uni0319 ; G 714 -U 794 ; WX 0 ; N uni031A ; G 715 -U 795 ; WX 0 ; N uni031B ; G 716 -U 796 ; WX 0 ; N uni031C ; G 717 -U 797 ; WX 0 ; N uni031D ; G 718 -U 798 ; WX 0 ; N uni031E ; G 719 -U 799 ; WX 0 ; N uni031F ; G 720 -U 800 ; WX 0 ; N uni0320 ; G 721 -U 801 ; WX 0 ; N uni0321 ; G 722 -U 802 ; WX 0 ; N uni0322 ; G 723 -U 803 ; WX 0 ; N dotbelowcomb ; G 724 -U 804 ; WX 0 ; N uni0324 ; G 725 -U 805 ; WX 0 ; N uni0325 ; G 726 -U 806 ; WX 0 ; N uni0326 ; G 727 -U 807 ; WX 0 ; N uni0327 ; G 728 -U 808 ; WX 0 ; N uni0328 ; G 729 -U 809 ; WX 0 ; N uni0329 ; G 730 -U 810 ; WX 0 ; N uni032A ; G 731 -U 811 ; WX 0 ; N uni032B ; G 732 -U 812 ; WX 0 ; N uni032C ; G 733 -U 813 ; WX 0 ; N uni032D ; G 734 -U 814 ; WX 0 ; N uni032E ; G 735 -U 815 ; WX 0 ; N uni032F ; G 736 -U 816 ; WX 0 ; N uni0330 ; G 737 -U 817 ; WX 0 ; N uni0331 ; G 738 -U 818 ; WX 0 ; N uni0332 ; G 739 -U 819 ; WX 0 ; N uni0333 ; G 740 -U 820 ; WX 0 ; N uni0334 ; G 741 -U 821 ; WX 0 ; N uni0335 ; G 742 -U 822 ; WX 0 ; N uni0336 ; G 743 -U 823 ; WX 0 ; N uni0337 ; G 744 -U 824 ; WX 0 ; N uni0338 ; G 745 -U 825 ; WX 0 ; N uni0339 ; G 746 -U 826 ; WX 0 ; N uni033A ; G 747 -U 827 ; WX 0 ; N uni033B ; G 748 -U 828 ; WX 0 ; N uni033C ; G 749 -U 829 ; WX 0 ; N uni033D ; G 750 -U 830 ; WX 0 ; N uni033E ; G 751 -U 831 ; WX 0 ; N uni033F ; G 752 -U 832 ; WX 0 ; N uni0340 ; G 753 -U 833 ; WX 0 ; N uni0341 ; G 754 -U 834 ; WX 0 ; N uni0342 ; G 755 -U 835 ; WX 0 ; N uni0343 ; G 756 -U 836 ; WX 0 ; N uni0344 ; G 757 -U 837 ; WX 0 ; N uni0345 ; G 758 -U 838 ; WX 0 ; N uni0346 ; G 759 -U 839 ; WX 0 ; N uni0347 ; G 760 -U 840 ; WX 0 ; N uni0348 ; G 761 -U 841 ; WX 0 ; N uni0349 ; G 762 -U 842 ; WX 0 ; N uni034A ; G 763 -U 843 ; WX 0 ; N uni034B ; G 764 -U 844 ; WX 0 ; N uni034C ; G 765 -U 845 ; WX 0 ; N uni034D ; G 766 -U 846 ; WX 0 ; N uni034E ; G 767 -U 847 ; WX 0 ; N uni034F ; G 768 -U 849 ; WX 0 ; N uni0351 ; G 769 -U 850 ; WX 0 ; N uni0352 ; G 770 -U 851 ; WX 0 ; N uni0353 ; G 771 -U 855 ; WX 0 ; N uni0357 ; G 772 -U 856 ; WX 0 ; N uni0358 ; G 773 -U 858 ; WX 0 ; N uni035A ; G 774 -U 860 ; WX 0 ; N uni035C ; G 775 -U 861 ; WX 0 ; N uni035D ; G 776 -U 862 ; WX 0 ; N uni035E ; G 777 -U 863 ; WX 0 ; N uni035F ; G 778 -U 864 ; WX 0 ; N uni0360 ; G 779 -U 865 ; WX 0 ; N uni0361 ; G 780 -U 866 ; WX 0 ; N uni0362 ; G 781 -U 880 ; WX 698 ; N uni0370 ; G 782 -U 881 ; WX 565 ; N uni0371 ; G 783 -U 882 ; WX 1022 ; N uni0372 ; G 784 -U 883 ; WX 836 ; N uni0373 ; G 785 -U 884 ; WX 302 ; N uni0374 ; G 786 -U 885 ; WX 302 ; N uni0375 ; G 787 -U 886 ; WX 837 ; N uni0376 ; G 788 -U 887 ; WX 701 ; N uni0377 ; G 789 -U 890 ; WX 500 ; N uni037A ; G 790 -U 891 ; WX 593 ; N uni037B ; G 791 -U 892 ; WX 550 ; N uni037C ; G 792 -U 893 ; WX 549 ; N uni037D ; G 793 -U 894 ; WX 400 ; N uni037E ; G 794 -U 895 ; WX 372 ; N uni037F ; G 795 -U 900 ; WX 441 ; N tonos ; G 796 -U 901 ; WX 500 ; N dieresistonos ; G 797 -U 902 ; WX 797 ; N Alphatonos ; G 798 -U 903 ; WX 380 ; N anoteleia ; G 799 -U 904 ; WX 846 ; N Epsilontonos ; G 800 -U 905 ; WX 1009 ; N Etatonos ; G 801 -U 906 ; WX 563 ; N Iotatonos ; G 802 -U 908 ; WX 891 ; N Omicrontonos ; G 803 -U 910 ; WX 980 ; N Upsilontonos ; G 804 -U 911 ; WX 894 ; N Omegatonos ; G 805 -U 912 ; WX 390 ; N iotadieresistonos ; G 806 -U 913 ; WX 774 ; N Alpha ; G 807 -U 914 ; WX 762 ; N Beta ; G 808 -U 915 ; WX 637 ; N Gamma ; G 809 -U 916 ; WX 774 ; N uni0394 ; G 810 -U 917 ; WX 683 ; N Epsilon ; G 811 -U 918 ; WX 725 ; N Zeta ; G 812 -U 919 ; WX 837 ; N Eta ; G 813 -U 920 ; WX 850 ; N Theta ; G 814 -U 921 ; WX 372 ; N Iota ; G 815 -U 922 ; WX 775 ; N Kappa ; G 816 -U 923 ; WX 774 ; N Lambda ; G 817 -U 924 ; WX 995 ; N Mu ; G 818 -U 925 ; WX 837 ; N Nu ; G 819 -U 926 ; WX 632 ; N Xi ; G 820 -U 927 ; WX 850 ; N Omicron ; G 821 -U 928 ; WX 837 ; N Pi ; G 822 -U 929 ; WX 733 ; N Rho ; G 823 -U 931 ; WX 683 ; N Sigma ; G 824 -U 932 ; WX 682 ; N Tau ; G 825 -U 933 ; WX 724 ; N Upsilon ; G 826 -U 934 ; WX 850 ; N Phi ; G 827 -U 935 ; WX 771 ; N Chi ; G 828 -U 936 ; WX 850 ; N Psi ; G 829 -U 937 ; WX 850 ; N Omega ; G 830 -U 938 ; WX 372 ; N Iotadieresis ; G 831 -U 939 ; WX 724 ; N Upsilondieresis ; G 832 -U 940 ; WX 687 ; N alphatonos ; G 833 -U 941 ; WX 557 ; N epsilontonos ; G 834 -U 942 ; WX 712 ; N etatonos ; G 835 -U 943 ; WX 390 ; N iotatonos ; G 836 -U 944 ; WX 675 ; N upsilondieresistonos ; G 837 -U 945 ; WX 687 ; N alpha ; G 838 -U 946 ; WX 716 ; N beta ; G 839 -U 947 ; WX 681 ; N gamma ; G 840 -U 948 ; WX 687 ; N delta ; G 841 -U 949 ; WX 557 ; N epsilon ; G 842 -U 950 ; WX 591 ; N zeta ; G 843 -U 951 ; WX 712 ; N eta ; G 844 -U 952 ; WX 687 ; N theta ; G 845 -U 953 ; WX 390 ; N iota ; G 846 -U 954 ; WX 710 ; N kappa ; G 847 -U 955 ; WX 633 ; N lambda ; G 848 -U 956 ; WX 736 ; N uni03BC ; G 849 -U 957 ; WX 681 ; N nu ; G 850 -U 958 ; WX 591 ; N xi ; G 851 -U 959 ; WX 687 ; N omicron ; G 852 -U 960 ; WX 791 ; N pi ; G 853 -U 961 ; WX 716 ; N rho ; G 854 -U 962 ; WX 593 ; N sigma1 ; G 855 -U 963 ; WX 779 ; N sigma ; G 856 -U 964 ; WX 638 ; N tau ; G 857 -U 965 ; WX 675 ; N upsilon ; G 858 -U 966 ; WX 782 ; N phi ; G 859 -U 967 ; WX 645 ; N chi ; G 860 -U 968 ; WX 794 ; N psi ; G 861 -U 969 ; WX 869 ; N omega ; G 862 -U 970 ; WX 390 ; N iotadieresis ; G 863 -U 971 ; WX 675 ; N upsilondieresis ; G 864 -U 972 ; WX 687 ; N omicrontonos ; G 865 -U 973 ; WX 675 ; N upsilontonos ; G 866 -U 974 ; WX 869 ; N omegatonos ; G 867 -U 975 ; WX 775 ; N uni03CF ; G 868 -U 976 ; WX 651 ; N uni03D0 ; G 869 -U 977 ; WX 661 ; N theta1 ; G 870 -U 978 ; WX 746 ; N Upsilon1 ; G 871 -U 979 ; WX 981 ; N uni03D3 ; G 872 -U 980 ; WX 746 ; N uni03D4 ; G 873 -U 981 ; WX 796 ; N phi1 ; G 874 -U 982 ; WX 869 ; N omega1 ; G 875 -U 983 ; WX 744 ; N uni03D7 ; G 876 -U 984 ; WX 850 ; N uni03D8 ; G 877 -U 985 ; WX 687 ; N uni03D9 ; G 878 -U 986 ; WX 734 ; N uni03DA ; G 879 -U 987 ; WX 593 ; N uni03DB ; G 880 -U 988 ; WX 683 ; N uni03DC ; G 881 -U 989 ; WX 494 ; N uni03DD ; G 882 -U 990 ; WX 702 ; N uni03DE ; G 883 -U 991 ; WX 660 ; N uni03DF ; G 884 -U 992 ; WX 919 ; N uni03E0 ; G 885 -U 993 ; WX 627 ; N uni03E1 ; G 886 -U 994 ; WX 1093 ; N uni03E2 ; G 887 -U 995 ; WX 837 ; N uni03E3 ; G 888 -U 996 ; WX 832 ; N uni03E4 ; G 889 -U 997 ; WX 716 ; N uni03E5 ; G 890 -U 998 ; WX 928 ; N uni03E6 ; G 891 -U 999 ; WX 744 ; N uni03E7 ; G 892 -U 1000 ; WX 733 ; N uni03E8 ; G 893 -U 1001 ; WX 650 ; N uni03E9 ; G 894 -U 1002 ; WX 789 ; N uni03EA ; G 895 -U 1003 ; WX 671 ; N uni03EB ; G 896 -U 1004 ; WX 752 ; N uni03EC ; G 897 -U 1005 ; WX 716 ; N uni03ED ; G 898 -U 1006 ; WX 682 ; N uni03EE ; G 899 -U 1007 ; WX 590 ; N uni03EF ; G 900 -U 1008 ; WX 744 ; N uni03F0 ; G 901 -U 1009 ; WX 716 ; N uni03F1 ; G 902 -U 1010 ; WX 593 ; N uni03F2 ; G 903 -U 1011 ; WX 343 ; N uni03F3 ; G 904 -U 1012 ; WX 850 ; N uni03F4 ; G 905 -U 1013 ; WX 645 ; N uni03F5 ; G 906 -U 1014 ; WX 644 ; N uni03F6 ; G 907 -U 1015 ; WX 738 ; N uni03F7 ; G 908 -U 1016 ; WX 716 ; N uni03F8 ; G 909 -U 1017 ; WX 734 ; N uni03F9 ; G 910 -U 1018 ; WX 995 ; N uni03FA ; G 911 -U 1019 ; WX 732 ; N uni03FB ; G 912 -U 1020 ; WX 716 ; N uni03FC ; G 913 -U 1021 ; WX 698 ; N uni03FD ; G 914 -U 1022 ; WX 734 ; N uni03FE ; G 915 -U 1023 ; WX 698 ; N uni03FF ; G 916 -U 1024 ; WX 683 ; N uni0400 ; G 917 -U 1025 ; WX 683 ; N uni0401 ; G 918 -U 1026 ; WX 878 ; N uni0402 ; G 919 -U 1027 ; WX 637 ; N uni0403 ; G 920 -U 1028 ; WX 734 ; N uni0404 ; G 921 -U 1029 ; WX 720 ; N uni0405 ; G 922 -U 1030 ; WX 372 ; N uni0406 ; G 923 -U 1031 ; WX 372 ; N uni0407 ; G 924 -U 1032 ; WX 372 ; N uni0408 ; G 925 -U 1033 ; WX 1154 ; N uni0409 ; G 926 -U 1034 ; WX 1130 ; N uni040A ; G 927 -U 1035 ; WX 878 ; N uni040B ; G 928 -U 1036 ; WX 817 ; N uni040C ; G 929 -U 1037 ; WX 837 ; N uni040D ; G 930 -U 1038 ; WX 771 ; N uni040E ; G 931 -U 1039 ; WX 837 ; N uni040F ; G 932 -U 1040 ; WX 774 ; N uni0410 ; G 933 -U 1041 ; WX 762 ; N uni0411 ; G 934 -U 1042 ; WX 762 ; N uni0412 ; G 935 -U 1043 ; WX 637 ; N uni0413 ; G 936 -U 1044 ; WX 891 ; N uni0414 ; G 937 -U 1045 ; WX 683 ; N uni0415 ; G 938 -U 1046 ; WX 1224 ; N uni0416 ; G 939 -U 1047 ; WX 710 ; N uni0417 ; G 940 -U 1048 ; WX 837 ; N uni0418 ; G 941 -U 1049 ; WX 837 ; N uni0419 ; G 942 -U 1050 ; WX 817 ; N uni041A ; G 943 -U 1051 ; WX 831 ; N uni041B ; G 944 -U 1052 ; WX 995 ; N uni041C ; G 945 -U 1053 ; WX 837 ; N uni041D ; G 946 -U 1054 ; WX 850 ; N uni041E ; G 947 -U 1055 ; WX 837 ; N uni041F ; G 948 -U 1056 ; WX 733 ; N uni0420 ; G 949 -U 1057 ; WX 734 ; N uni0421 ; G 950 -U 1058 ; WX 682 ; N uni0422 ; G 951 -U 1059 ; WX 771 ; N uni0423 ; G 952 -U 1060 ; WX 992 ; N uni0424 ; G 953 -U 1061 ; WX 771 ; N uni0425 ; G 954 -U 1062 ; WX 928 ; N uni0426 ; G 955 -U 1063 ; WX 808 ; N uni0427 ; G 956 -U 1064 ; WX 1235 ; N uni0428 ; G 957 -U 1065 ; WX 1326 ; N uni0429 ; G 958 -U 1066 ; WX 939 ; N uni042A ; G 959 -U 1067 ; WX 1036 ; N uni042B ; G 960 -U 1068 ; WX 762 ; N uni042C ; G 961 -U 1069 ; WX 734 ; N uni042D ; G 962 -U 1070 ; WX 1174 ; N uni042E ; G 963 -U 1071 ; WX 770 ; N uni042F ; G 964 -U 1072 ; WX 675 ; N uni0430 ; G 965 -U 1073 ; WX 698 ; N uni0431 ; G 966 -U 1074 ; WX 633 ; N uni0432 ; G 967 -U 1075 ; WX 522 ; N uni0433 ; G 968 -U 1076 ; WX 808 ; N uni0434 ; G 969 -U 1077 ; WX 678 ; N uni0435 ; G 970 -U 1078 ; WX 995 ; N uni0436 ; G 971 -U 1079 ; WX 581 ; N uni0437 ; G 972 -U 1080 ; WX 701 ; N uni0438 ; G 973 -U 1081 ; WX 701 ; N uni0439 ; G 974 -U 1082 ; WX 679 ; N uni043A ; G 975 -U 1083 ; WX 732 ; N uni043B ; G 976 -U 1084 ; WX 817 ; N uni043C ; G 977 -U 1085 ; WX 691 ; N uni043D ; G 978 -U 1086 ; WX 687 ; N uni043E ; G 979 -U 1087 ; WX 691 ; N uni043F ; G 980 -U 1088 ; WX 716 ; N uni0440 ; G 981 -U 1089 ; WX 593 ; N uni0441 ; G 982 -U 1090 ; WX 580 ; N uni0442 ; G 983 -U 1091 ; WX 652 ; N uni0443 ; G 984 -U 1092 ; WX 992 ; N uni0444 ; G 985 -U 1093 ; WX 645 ; N uni0445 ; G 986 -U 1094 ; WX 741 ; N uni0446 ; G 987 -U 1095 ; WX 687 ; N uni0447 ; G 988 -U 1096 ; WX 1062 ; N uni0448 ; G 989 -U 1097 ; WX 1105 ; N uni0449 ; G 990 -U 1098 ; WX 751 ; N uni044A ; G 991 -U 1099 ; WX 904 ; N uni044B ; G 992 -U 1100 ; WX 632 ; N uni044C ; G 993 -U 1101 ; WX 593 ; N uni044D ; G 994 -U 1102 ; WX 972 ; N uni044E ; G 995 -U 1103 ; WX 642 ; N uni044F ; G 996 -U 1104 ; WX 678 ; N uni0450 ; G 997 -U 1105 ; WX 678 ; N uni0451 ; G 998 -U 1106 ; WX 714 ; N uni0452 ; G 999 -U 1107 ; WX 522 ; N uni0453 ; G 1000 -U 1108 ; WX 593 ; N uni0454 ; G 1001 -U 1109 ; WX 595 ; N uni0455 ; G 1002 -U 1110 ; WX 343 ; N uni0456 ; G 1003 -U 1111 ; WX 343 ; N uni0457 ; G 1004 -U 1112 ; WX 343 ; N uni0458 ; G 1005 -U 1113 ; WX 991 ; N uni0459 ; G 1006 -U 1114 ; WX 956 ; N uni045A ; G 1007 -U 1115 ; WX 734 ; N uni045B ; G 1008 -U 1116 ; WX 679 ; N uni045C ; G 1009 -U 1117 ; WX 701 ; N uni045D ; G 1010 -U 1118 ; WX 652 ; N uni045E ; G 1011 -U 1119 ; WX 691 ; N uni045F ; G 1012 -U 1120 ; WX 1093 ; N uni0460 ; G 1013 -U 1121 ; WX 869 ; N uni0461 ; G 1014 -U 1122 ; WX 840 ; N uni0462 ; G 1015 -U 1123 ; WX 736 ; N uni0463 ; G 1016 -U 1124 ; WX 1012 ; N uni0464 ; G 1017 -U 1125 ; WX 839 ; N uni0465 ; G 1018 -U 1126 ; WX 992 ; N uni0466 ; G 1019 -U 1127 ; WX 832 ; N uni0467 ; G 1020 -U 1128 ; WX 1358 ; N uni0468 ; G 1021 -U 1129 ; WX 1121 ; N uni0469 ; G 1022 -U 1130 ; WX 850 ; N uni046A ; G 1023 -U 1131 ; WX 687 ; N uni046B ; G 1024 -U 1132 ; WX 1236 ; N uni046C ; G 1025 -U 1133 ; WX 1007 ; N uni046D ; G 1026 -U 1134 ; WX 696 ; N uni046E ; G 1027 -U 1135 ; WX 557 ; N uni046F ; G 1028 -U 1136 ; WX 1075 ; N uni0470 ; G 1029 -U 1137 ; WX 1061 ; N uni0471 ; G 1030 -U 1138 ; WX 850 ; N uni0472 ; G 1031 -U 1139 ; WX 687 ; N uni0473 ; G 1032 -U 1140 ; WX 850 ; N uni0474 ; G 1033 -U 1141 ; WX 695 ; N uni0475 ; G 1034 -U 1142 ; WX 850 ; N uni0476 ; G 1035 -U 1143 ; WX 695 ; N uni0477 ; G 1036 -U 1144 ; WX 1148 ; N uni0478 ; G 1037 -U 1145 ; WX 1043 ; N uni0479 ; G 1038 -U 1146 ; WX 1074 ; N uni047A ; G 1039 -U 1147 ; WX 863 ; N uni047B ; G 1040 -U 1148 ; WX 1405 ; N uni047C ; G 1041 -U 1149 ; WX 1173 ; N uni047D ; G 1042 -U 1150 ; WX 1093 ; N uni047E ; G 1043 -U 1151 ; WX 869 ; N uni047F ; G 1044 -U 1152 ; WX 734 ; N uni0480 ; G 1045 -U 1153 ; WX 593 ; N uni0481 ; G 1046 -U 1154 ; WX 652 ; N uni0482 ; G 1047 -U 1155 ; WX 0 ; N uni0483 ; G 1048 -U 1156 ; WX 0 ; N uni0484 ; G 1049 -U 1157 ; WX 0 ; N uni0485 ; G 1050 -U 1158 ; WX 0 ; N uni0486 ; G 1051 -U 1159 ; WX 0 ; N uni0487 ; G 1052 -U 1160 ; WX 418 ; N uni0488 ; G 1053 -U 1161 ; WX 418 ; N uni0489 ; G 1054 -U 1162 ; WX 957 ; N uni048A ; G 1055 -U 1163 ; WX 807 ; N uni048B ; G 1056 -U 1164 ; WX 762 ; N uni048C ; G 1057 -U 1165 ; WX 611 ; N uni048D ; G 1058 -U 1166 ; WX 733 ; N uni048E ; G 1059 -U 1167 ; WX 716 ; N uni048F ; G 1060 -U 1168 ; WX 637 ; N uni0490 ; G 1061 -U 1169 ; WX 522 ; N uni0491 ; G 1062 -U 1170 ; WX 666 ; N uni0492 ; G 1063 -U 1171 ; WX 543 ; N uni0493 ; G 1064 -U 1172 ; WX 808 ; N uni0494 ; G 1065 -U 1173 ; WX 669 ; N uni0495 ; G 1066 -U 1174 ; WX 1224 ; N uni0496 ; G 1067 -U 1175 ; WX 995 ; N uni0497 ; G 1068 -U 1176 ; WX 710 ; N uni0498 ; G 1069 -U 1177 ; WX 581 ; N uni0499 ; G 1070 -U 1178 ; WX 775 ; N uni049A ; G 1071 -U 1179 ; WX 679 ; N uni049B ; G 1072 -U 1180 ; WX 817 ; N uni049C ; G 1073 -U 1181 ; WX 679 ; N uni049D ; G 1074 -U 1182 ; WX 817 ; N uni049E ; G 1075 -U 1183 ; WX 679 ; N uni049F ; G 1076 -U 1184 ; WX 1015 ; N uni04A0 ; G 1077 -U 1185 ; WX 826 ; N uni04A1 ; G 1078 -U 1186 ; WX 956 ; N uni04A2 ; G 1079 -U 1187 ; WX 808 ; N uni04A3 ; G 1080 -U 1188 ; WX 1103 ; N uni04A4 ; G 1081 -U 1189 ; WX 874 ; N uni04A5 ; G 1082 -U 1190 ; WX 1273 ; N uni04A6 ; G 1083 -U 1191 ; WX 1017 ; N uni04A7 ; G 1084 -U 1192 ; WX 952 ; N uni04A8 ; G 1085 -U 1193 ; WX 858 ; N uni04A9 ; G 1086 -U 1194 ; WX 734 ; N uni04AA ; G 1087 -U 1195 ; WX 593 ; N uni04AB ; G 1088 -U 1196 ; WX 682 ; N uni04AC ; G 1089 -U 1197 ; WX 580 ; N uni04AD ; G 1090 -U 1198 ; WX 724 ; N uni04AE ; G 1091 -U 1199 ; WX 652 ; N uni04AF ; G 1092 -U 1200 ; WX 724 ; N uni04B0 ; G 1093 -U 1201 ; WX 652 ; N uni04B1 ; G 1094 -U 1202 ; WX 771 ; N uni04B2 ; G 1095 -U 1203 ; WX 645 ; N uni04B3 ; G 1096 -U 1204 ; WX 1112 ; N uni04B4 ; G 1097 -U 1205 ; WX 1000 ; N uni04B5 ; G 1098 -U 1206 ; WX 808 ; N uni04B6 ; G 1099 -U 1207 ; WX 687 ; N uni04B7 ; G 1100 -U 1208 ; WX 808 ; N uni04B8 ; G 1101 -U 1209 ; WX 687 ; N uni04B9 ; G 1102 -U 1210 ; WX 808 ; N uni04BA ; G 1103 -U 1211 ; WX 712 ; N uni04BB ; G 1104 -U 1212 ; WX 1026 ; N uni04BC ; G 1105 -U 1213 ; WX 810 ; N uni04BD ; G 1106 -U 1214 ; WX 1026 ; N uni04BE ; G 1107 -U 1215 ; WX 810 ; N uni04BF ; G 1108 -U 1216 ; WX 372 ; N uni04C0 ; G 1109 -U 1217 ; WX 1224 ; N uni04C1 ; G 1110 -U 1218 ; WX 995 ; N uni04C2 ; G 1111 -U 1219 ; WX 775 ; N uni04C3 ; G 1112 -U 1220 ; WX 630 ; N uni04C4 ; G 1113 -U 1221 ; WX 951 ; N uni04C5 ; G 1114 -U 1222 ; WX 805 ; N uni04C6 ; G 1115 -U 1223 ; WX 837 ; N uni04C7 ; G 1116 -U 1224 ; WX 691 ; N uni04C8 ; G 1117 -U 1225 ; WX 957 ; N uni04C9 ; G 1118 -U 1226 ; WX 807 ; N uni04CA ; G 1119 -U 1227 ; WX 808 ; N uni04CB ; G 1120 -U 1228 ; WX 687 ; N uni04CC ; G 1121 -U 1229 ; WX 1115 ; N uni04CD ; G 1122 -U 1230 ; WX 933 ; N uni04CE ; G 1123 -U 1231 ; WX 343 ; N uni04CF ; G 1124 -U 1232 ; WX 774 ; N uni04D0 ; G 1125 -U 1233 ; WX 675 ; N uni04D1 ; G 1126 -U 1234 ; WX 774 ; N uni04D2 ; G 1127 -U 1235 ; WX 675 ; N uni04D3 ; G 1128 -U 1236 ; WX 1085 ; N uni04D4 ; G 1129 -U 1237 ; WX 1048 ; N uni04D5 ; G 1130 -U 1238 ; WX 683 ; N uni04D6 ; G 1131 -U 1239 ; WX 678 ; N uni04D7 ; G 1132 -U 1240 ; WX 849 ; N uni04D8 ; G 1133 -U 1241 ; WX 678 ; N uni04D9 ; G 1134 -U 1242 ; WX 849 ; N uni04DA ; G 1135 -U 1243 ; WX 678 ; N uni04DB ; G 1136 -U 1244 ; WX 1224 ; N uni04DC ; G 1137 -U 1245 ; WX 995 ; N uni04DD ; G 1138 -U 1246 ; WX 710 ; N uni04DE ; G 1139 -U 1247 ; WX 581 ; N uni04DF ; G 1140 -U 1248 ; WX 772 ; N uni04E0 ; G 1141 -U 1249 ; WX 641 ; N uni04E1 ; G 1142 -U 1250 ; WX 837 ; N uni04E2 ; G 1143 -U 1251 ; WX 701 ; N uni04E3 ; G 1144 -U 1252 ; WX 837 ; N uni04E4 ; G 1145 -U 1253 ; WX 701 ; N uni04E5 ; G 1146 -U 1254 ; WX 850 ; N uni04E6 ; G 1147 -U 1255 ; WX 687 ; N uni04E7 ; G 1148 -U 1256 ; WX 850 ; N uni04E8 ; G 1149 -U 1257 ; WX 687 ; N uni04E9 ; G 1150 -U 1258 ; WX 850 ; N uni04EA ; G 1151 -U 1259 ; WX 687 ; N uni04EB ; G 1152 -U 1260 ; WX 734 ; N uni04EC ; G 1153 -U 1261 ; WX 593 ; N uni04ED ; G 1154 -U 1262 ; WX 771 ; N uni04EE ; G 1155 -U 1263 ; WX 652 ; N uni04EF ; G 1156 -U 1264 ; WX 771 ; N uni04F0 ; G 1157 -U 1265 ; WX 652 ; N uni04F1 ; G 1158 -U 1266 ; WX 771 ; N uni04F2 ; G 1159 -U 1267 ; WX 652 ; N uni04F3 ; G 1160 -U 1268 ; WX 808 ; N uni04F4 ; G 1161 -U 1269 ; WX 687 ; N uni04F5 ; G 1162 -U 1270 ; WX 637 ; N uni04F6 ; G 1163 -U 1271 ; WX 522 ; N uni04F7 ; G 1164 -U 1272 ; WX 1036 ; N uni04F8 ; G 1165 -U 1273 ; WX 904 ; N uni04F9 ; G 1166 -U 1274 ; WX 666 ; N uni04FA ; G 1167 -U 1275 ; WX 543 ; N uni04FB ; G 1168 -U 1276 ; WX 771 ; N uni04FC ; G 1169 -U 1277 ; WX 645 ; N uni04FD ; G 1170 -U 1278 ; WX 771 ; N uni04FE ; G 1171 -U 1279 ; WX 645 ; N uni04FF ; G 1172 -U 1280 ; WX 762 ; N uni0500 ; G 1173 -U 1281 ; WX 608 ; N uni0501 ; G 1174 -U 1282 ; WX 1159 ; N uni0502 ; G 1175 -U 1283 ; WX 893 ; N uni0503 ; G 1176 -U 1284 ; WX 1119 ; N uni0504 ; G 1177 -U 1285 ; WX 920 ; N uni0505 ; G 1178 -U 1286 ; WX 828 ; N uni0506 ; G 1179 -U 1287 ; WX 693 ; N uni0507 ; G 1180 -U 1288 ; WX 1242 ; N uni0508 ; G 1181 -U 1289 ; WX 1017 ; N uni0509 ; G 1182 -U 1290 ; WX 1289 ; N uni050A ; G 1183 -U 1291 ; WX 1013 ; N uni050B ; G 1184 -U 1292 ; WX 839 ; N uni050C ; G 1185 -U 1293 ; WX 638 ; N uni050D ; G 1186 -U 1294 ; WX 938 ; N uni050E ; G 1187 -U 1295 ; WX 803 ; N uni050F ; G 1188 -U 1296 ; WX 696 ; N uni0510 ; G 1189 -U 1297 ; WX 557 ; N uni0511 ; G 1190 -U 1298 ; WX 831 ; N uni0512 ; G 1191 -U 1299 ; WX 732 ; N uni0513 ; G 1192 -U 1300 ; WX 1286 ; N uni0514 ; G 1193 -U 1301 ; WX 1068 ; N uni0515 ; G 1194 -U 1302 ; WX 1065 ; N uni0516 ; G 1195 -U 1303 ; WX 979 ; N uni0517 ; G 1196 -U 1304 ; WX 1082 ; N uni0518 ; G 1197 -U 1305 ; WX 1013 ; N uni0519 ; G 1198 -U 1306 ; WX 850 ; N uni051A ; G 1199 -U 1307 ; WX 716 ; N uni051B ; G 1200 -U 1308 ; WX 1103 ; N uni051C ; G 1201 -U 1309 ; WX 924 ; N uni051D ; G 1202 -U 1310 ; WX 817 ; N uni051E ; G 1203 -U 1311 ; WX 679 ; N uni051F ; G 1204 -U 1312 ; WX 1267 ; N uni0520 ; G 1205 -U 1313 ; WX 1059 ; N uni0521 ; G 1206 -U 1314 ; WX 1273 ; N uni0522 ; G 1207 -U 1315 ; WX 1017 ; N uni0523 ; G 1208 -U 1316 ; WX 957 ; N uni0524 ; G 1209 -U 1317 ; WX 807 ; N uni0525 ; G 1210 -U 1329 ; WX 813 ; N uni0531 ; G 1211 -U 1330 ; WX 729 ; N uni0532 ; G 1212 -U 1331 ; WX 728 ; N uni0533 ; G 1213 -U 1332 ; WX 731 ; N uni0534 ; G 1214 -U 1333 ; WX 729 ; N uni0535 ; G 1215 -U 1334 ; WX 733 ; N uni0536 ; G 1216 -U 1335 ; WX 652 ; N uni0537 ; G 1217 -U 1336 ; WX 720 ; N uni0538 ; G 1218 -U 1337 ; WX 903 ; N uni0539 ; G 1219 -U 1338 ; WX 728 ; N uni053A ; G 1220 -U 1339 ; WX 666 ; N uni053B ; G 1221 -U 1340 ; WX 558 ; N uni053C ; G 1222 -U 1341 ; WX 961 ; N uni053D ; G 1223 -U 1342 ; WX 788 ; N uni053E ; G 1224 -U 1343 ; WX 713 ; N uni053F ; G 1225 -U 1344 ; WX 651 ; N uni0540 ; G 1226 -U 1345 ; WX 730 ; N uni0541 ; G 1227 -U 1346 ; WX 715 ; N uni0542 ; G 1228 -U 1347 ; WX 704 ; N uni0543 ; G 1229 -U 1348 ; WX 780 ; N uni0544 ; G 1230 -U 1349 ; WX 689 ; N uni0545 ; G 1231 -U 1350 ; WX 715 ; N uni0546 ; G 1232 -U 1351 ; WX 708 ; N uni0547 ; G 1233 -U 1352 ; WX 731 ; N uni0548 ; G 1234 -U 1353 ; WX 677 ; N uni0549 ; G 1235 -U 1354 ; WX 867 ; N uni054A ; G 1236 -U 1355 ; WX 711 ; N uni054B ; G 1237 -U 1356 ; WX 780 ; N uni054C ; G 1238 -U 1357 ; WX 731 ; N uni054D ; G 1239 -U 1358 ; WX 715 ; N uni054E ; G 1240 -U 1359 ; WX 693 ; N uni054F ; G 1241 -U 1360 ; WX 666 ; N uni0550 ; G 1242 -U 1361 ; WX 698 ; N uni0551 ; G 1243 -U 1362 ; WX 576 ; N uni0552 ; G 1244 -U 1363 ; WX 833 ; N uni0553 ; G 1245 -U 1364 ; WX 698 ; N uni0554 ; G 1246 -U 1365 ; WX 763 ; N uni0555 ; G 1247 -U 1366 ; WX 855 ; N uni0556 ; G 1248 -U 1369 ; WX 330 ; N uni0559 ; G 1249 -U 1370 ; WX 342 ; N uni055A ; G 1250 -U 1371 ; WX 308 ; N uni055B ; G 1251 -U 1372 ; WX 374 ; N uni055C ; G 1252 -U 1373 ; WX 313 ; N uni055D ; G 1253 -U 1374 ; WX 461 ; N uni055E ; G 1254 -U 1375 ; WX 468 ; N uni055F ; G 1255 -U 1377 ; WX 938 ; N uni0561 ; G 1256 -U 1378 ; WX 642 ; N uni0562 ; G 1257 -U 1379 ; WX 704 ; N uni0563 ; G 1258 -U 1380 ; WX 708 ; N uni0564 ; G 1259 -U 1381 ; WX 642 ; N uni0565 ; G 1260 -U 1382 ; WX 644 ; N uni0566 ; G 1261 -U 1383 ; WX 565 ; N uni0567 ; G 1262 -U 1384 ; WX 642 ; N uni0568 ; G 1263 -U 1385 ; WX 756 ; N uni0569 ; G 1264 -U 1386 ; WX 704 ; N uni056A ; G 1265 -U 1387 ; WX 643 ; N uni056B ; G 1266 -U 1388 ; WX 310 ; N uni056C ; G 1267 -U 1389 ; WX 984 ; N uni056D ; G 1268 -U 1390 ; WX 638 ; N uni056E ; G 1269 -U 1391 ; WX 643 ; N uni056F ; G 1270 -U 1392 ; WX 643 ; N uni0570 ; G 1271 -U 1393 ; WX 603 ; N uni0571 ; G 1272 -U 1394 ; WX 643 ; N uni0572 ; G 1273 -U 1395 ; WX 642 ; N uni0573 ; G 1274 -U 1396 ; WX 643 ; N uni0574 ; G 1275 -U 1397 ; WX 309 ; N uni0575 ; G 1276 -U 1398 ; WX 643 ; N uni0576 ; G 1277 -U 1399 ; WX 486 ; N uni0577 ; G 1278 -U 1400 ; WX 643 ; N uni0578 ; G 1279 -U 1401 ; WX 366 ; N uni0579 ; G 1280 -U 1402 ; WX 938 ; N uni057A ; G 1281 -U 1403 ; WX 573 ; N uni057B ; G 1282 -U 1404 ; WX 666 ; N uni057C ; G 1283 -U 1405 ; WX 643 ; N uni057D ; G 1284 -U 1406 ; WX 643 ; N uni057E ; G 1285 -U 1407 ; WX 934 ; N uni057F ; G 1286 -U 1408 ; WX 643 ; N uni0580 ; G 1287 -U 1409 ; WX 643 ; N uni0581 ; G 1288 -U 1410 ; WX 479 ; N uni0582 ; G 1289 -U 1411 ; WX 934 ; N uni0583 ; G 1290 -U 1412 ; WX 648 ; N uni0584 ; G 1291 -U 1413 ; WX 620 ; N uni0585 ; G 1292 -U 1414 ; WX 813 ; N uni0586 ; G 1293 -U 1415 ; WX 812 ; N uni0587 ; G 1294 -U 1417 ; WX 360 ; N uni0589 ; G 1295 -U 1418 ; WX 374 ; N uni058A ; G 1296 -U 1456 ; WX 0 ; N uni05B0 ; G 1297 -U 1457 ; WX 0 ; N uni05B1 ; G 1298 -U 1458 ; WX 0 ; N uni05B2 ; G 1299 -U 1459 ; WX 0 ; N uni05B3 ; G 1300 -U 1460 ; WX 0 ; N uni05B4 ; G 1301 -U 1461 ; WX 0 ; N uni05B5 ; G 1302 -U 1462 ; WX 0 ; N uni05B6 ; G 1303 -U 1463 ; WX 0 ; N uni05B7 ; G 1304 -U 1464 ; WX 0 ; N uni05B8 ; G 1305 -U 1465 ; WX 0 ; N uni05B9 ; G 1306 -U 1466 ; WX 0 ; N uni05BA ; G 1307 -U 1467 ; WX 0 ; N uni05BB ; G 1308 -U 1468 ; WX 0 ; N uni05BC ; G 1309 -U 1469 ; WX 0 ; N uni05BD ; G 1310 -U 1470 ; WX 415 ; N uni05BE ; G 1311 -U 1471 ; WX 0 ; N uni05BF ; G 1312 -U 1472 ; WX 372 ; N uni05C0 ; G 1313 -U 1473 ; WX 0 ; N uni05C1 ; G 1314 -U 1474 ; WX 0 ; N uni05C2 ; G 1315 -U 1475 ; WX 372 ; N uni05C3 ; G 1316 -U 1478 ; WX 497 ; N uni05C6 ; G 1317 -U 1479 ; WX 0 ; N uni05C7 ; G 1318 -U 1488 ; WX 728 ; N uni05D0 ; G 1319 -U 1489 ; WX 610 ; N uni05D1 ; G 1320 -U 1490 ; WX 447 ; N uni05D2 ; G 1321 -U 1491 ; WX 588 ; N uni05D3 ; G 1322 -U 1492 ; WX 687 ; N uni05D4 ; G 1323 -U 1493 ; WX 343 ; N uni05D5 ; G 1324 -U 1494 ; WX 400 ; N uni05D6 ; G 1325 -U 1495 ; WX 687 ; N uni05D7 ; G 1326 -U 1496 ; WX 679 ; N uni05D8 ; G 1327 -U 1497 ; WX 294 ; N uni05D9 ; G 1328 -U 1498 ; WX 578 ; N uni05DA ; G 1329 -U 1499 ; WX 566 ; N uni05DB ; G 1330 -U 1500 ; WX 605 ; N uni05DC ; G 1331 -U 1501 ; WX 696 ; N uni05DD ; G 1332 -U 1502 ; WX 724 ; N uni05DE ; G 1333 -U 1503 ; WX 343 ; N uni05DF ; G 1334 -U 1504 ; WX 453 ; N uni05E0 ; G 1335 -U 1505 ; WX 680 ; N uni05E1 ; G 1336 -U 1506 ; WX 666 ; N uni05E2 ; G 1337 -U 1507 ; WX 675 ; N uni05E3 ; G 1338 -U 1508 ; WX 658 ; N uni05E4 ; G 1339 -U 1509 ; WX 661 ; N uni05E5 ; G 1340 -U 1510 ; WX 653 ; N uni05E6 ; G 1341 -U 1511 ; WX 736 ; N uni05E7 ; G 1342 -U 1512 ; WX 602 ; N uni05E8 ; G 1343 -U 1513 ; WX 758 ; N uni05E9 ; G 1344 -U 1514 ; WX 683 ; N uni05EA ; G 1345 -U 1520 ; WX 664 ; N uni05F0 ; G 1346 -U 1521 ; WX 567 ; N uni05F1 ; G 1347 -U 1522 ; WX 519 ; N uni05F2 ; G 1348 -U 1523 ; WX 444 ; N uni05F3 ; G 1349 -U 1524 ; WX 710 ; N uni05F4 ; G 1350 -U 1542 ; WX 667 ; N uni0606 ; G 1351 -U 1543 ; WX 667 ; N uni0607 ; G 1352 -U 1545 ; WX 884 ; N uni0609 ; G 1353 -U 1546 ; WX 1157 ; N uni060A ; G 1354 -U 1548 ; WX 380 ; N uni060C ; G 1355 -U 1557 ; WX 0 ; N uni0615 ; G 1356 -U 1563 ; WX 400 ; N uni061B ; G 1357 -U 1567 ; WX 580 ; N uni061F ; G 1358 -U 1569 ; WX 511 ; N uni0621 ; G 1359 -U 1570 ; WX 343 ; N uni0622 ; G 1360 -U 1571 ; WX 343 ; N uni0623 ; G 1361 -U 1572 ; WX 622 ; N uni0624 ; G 1362 -U 1573 ; WX 343 ; N uni0625 ; G 1363 -U 1574 ; WX 917 ; N uni0626 ; G 1364 -U 1575 ; WX 343 ; N uni0627 ; G 1365 -U 1576 ; WX 1005 ; N uni0628 ; G 1366 -U 1577 ; WX 590 ; N uni0629 ; G 1367 -U 1578 ; WX 1005 ; N uni062A ; G 1368 -U 1579 ; WX 1005 ; N uni062B ; G 1369 -U 1580 ; WX 721 ; N uni062C ; G 1370 -U 1581 ; WX 721 ; N uni062D ; G 1371 -U 1582 ; WX 721 ; N uni062E ; G 1372 -U 1583 ; WX 513 ; N uni062F ; G 1373 -U 1584 ; WX 513 ; N uni0630 ; G 1374 -U 1585 ; WX 576 ; N uni0631 ; G 1375 -U 1586 ; WX 576 ; N uni0632 ; G 1376 -U 1587 ; WX 1380 ; N uni0633 ; G 1377 -U 1588 ; WX 1380 ; N uni0634 ; G 1378 -U 1589 ; WX 1345 ; N uni0635 ; G 1379 -U 1590 ; WX 1345 ; N uni0636 ; G 1380 -U 1591 ; WX 1039 ; N uni0637 ; G 1381 -U 1592 ; WX 1039 ; N uni0638 ; G 1382 -U 1593 ; WX 683 ; N uni0639 ; G 1383 -U 1594 ; WX 683 ; N uni063A ; G 1384 -U 1600 ; WX 342 ; N uni0640 ; G 1385 -U 1601 ; WX 1162 ; N uni0641 ; G 1386 -U 1602 ; WX 894 ; N uni0642 ; G 1387 -U 1603 ; WX 917 ; N uni0643 ; G 1388 -U 1604 ; WX 868 ; N uni0644 ; G 1389 -U 1605 ; WX 733 ; N uni0645 ; G 1390 -U 1606 ; WX 854 ; N uni0646 ; G 1391 -U 1607 ; WX 590 ; N uni0647 ; G 1392 -U 1608 ; WX 622 ; N uni0648 ; G 1393 -U 1609 ; WX 917 ; N uni0649 ; G 1394 -U 1610 ; WX 917 ; N uni064A ; G 1395 -U 1611 ; WX 0 ; N uni064B ; G 1396 -U 1612 ; WX 0 ; N uni064C ; G 1397 -U 1613 ; WX 0 ; N uni064D ; G 1398 -U 1614 ; WX 0 ; N uni064E ; G 1399 -U 1615 ; WX 0 ; N uni064F ; G 1400 -U 1616 ; WX 0 ; N uni0650 ; G 1401 -U 1617 ; WX 0 ; N uni0651 ; G 1402 -U 1618 ; WX 0 ; N uni0652 ; G 1403 -U 1619 ; WX 0 ; N uni0653 ; G 1404 -U 1620 ; WX 0 ; N uni0654 ; G 1405 -U 1621 ; WX 0 ; N uni0655 ; G 1406 -U 1623 ; WX 0 ; N uni0657 ; G 1407 -U 1626 ; WX 500 ; N uni065A ; G 1408 -U 1632 ; WX 610 ; N uni0660 ; G 1409 -U 1633 ; WX 610 ; N uni0661 ; G 1410 -U 1634 ; WX 610 ; N uni0662 ; G 1411 -U 1635 ; WX 610 ; N uni0663 ; G 1412 -U 1636 ; WX 610 ; N uni0664 ; G 1413 -U 1637 ; WX 610 ; N uni0665 ; G 1414 -U 1638 ; WX 610 ; N uni0666 ; G 1415 -U 1639 ; WX 610 ; N uni0667 ; G 1416 -U 1640 ; WX 610 ; N uni0668 ; G 1417 -U 1641 ; WX 610 ; N uni0669 ; G 1418 -U 1642 ; WX 610 ; N uni066A ; G 1419 -U 1643 ; WX 374 ; N uni066B ; G 1420 -U 1644 ; WX 380 ; N uni066C ; G 1421 -U 1645 ; WX 545 ; N uni066D ; G 1422 -U 1646 ; WX 1005 ; N uni066E ; G 1423 -U 1647 ; WX 894 ; N uni066F ; G 1424 -U 1648 ; WX 0 ; N uni0670 ; G 1425 -U 1652 ; WX 292 ; N uni0674 ; G 1426 -U 1657 ; WX 1005 ; N uni0679 ; G 1427 -U 1658 ; WX 1005 ; N uni067A ; G 1428 -U 1659 ; WX 1005 ; N uni067B ; G 1429 -U 1660 ; WX 1005 ; N uni067C ; G 1430 -U 1661 ; WX 1005 ; N uni067D ; G 1431 -U 1662 ; WX 1005 ; N uni067E ; G 1432 -U 1663 ; WX 1005 ; N uni067F ; G 1433 -U 1664 ; WX 1005 ; N uni0680 ; G 1434 -U 1665 ; WX 721 ; N uni0681 ; G 1435 -U 1666 ; WX 721 ; N uni0682 ; G 1436 -U 1667 ; WX 721 ; N uni0683 ; G 1437 -U 1668 ; WX 721 ; N uni0684 ; G 1438 -U 1669 ; WX 721 ; N uni0685 ; G 1439 -U 1670 ; WX 721 ; N uni0686 ; G 1440 -U 1671 ; WX 721 ; N uni0687 ; G 1441 -U 1672 ; WX 445 ; N uni0688 ; G 1442 -U 1673 ; WX 445 ; N uni0689 ; G 1443 -U 1674 ; WX 445 ; N uni068A ; G 1444 -U 1675 ; WX 445 ; N uni068B ; G 1445 -U 1676 ; WX 445 ; N uni068C ; G 1446 -U 1677 ; WX 445 ; N uni068D ; G 1447 -U 1678 ; WX 445 ; N uni068E ; G 1448 -U 1679 ; WX 445 ; N uni068F ; G 1449 -U 1680 ; WX 445 ; N uni0690 ; G 1450 -U 1681 ; WX 576 ; N uni0691 ; G 1451 -U 1682 ; WX 576 ; N uni0692 ; G 1452 -U 1683 ; WX 576 ; N uni0693 ; G 1453 -U 1684 ; WX 576 ; N uni0694 ; G 1454 -U 1685 ; WX 681 ; N uni0695 ; G 1455 -U 1686 ; WX 576 ; N uni0696 ; G 1456 -U 1687 ; WX 576 ; N uni0697 ; G 1457 -U 1688 ; WX 576 ; N uni0698 ; G 1458 -U 1689 ; WX 576 ; N uni0699 ; G 1459 -U 1690 ; WX 1380 ; N uni069A ; G 1460 -U 1691 ; WX 1380 ; N uni069B ; G 1461 -U 1692 ; WX 1380 ; N uni069C ; G 1462 -U 1693 ; WX 1345 ; N uni069D ; G 1463 -U 1694 ; WX 1345 ; N uni069E ; G 1464 -U 1695 ; WX 1039 ; N uni069F ; G 1465 -U 1696 ; WX 683 ; N uni06A0 ; G 1466 -U 1697 ; WX 1162 ; N uni06A1 ; G 1467 -U 1698 ; WX 1162 ; N uni06A2 ; G 1468 -U 1699 ; WX 1162 ; N uni06A3 ; G 1469 -U 1700 ; WX 1162 ; N uni06A4 ; G 1470 -U 1701 ; WX 1162 ; N uni06A5 ; G 1471 -U 1702 ; WX 1162 ; N uni06A6 ; G 1472 -U 1703 ; WX 894 ; N uni06A7 ; G 1473 -U 1704 ; WX 894 ; N uni06A8 ; G 1474 -U 1705 ; WX 1024 ; N uni06A9 ; G 1475 -U 1706 ; WX 1271 ; N uni06AA ; G 1476 -U 1707 ; WX 1024 ; N uni06AB ; G 1477 -U 1708 ; WX 917 ; N uni06AC ; G 1478 -U 1709 ; WX 917 ; N uni06AD ; G 1479 -U 1710 ; WX 917 ; N uni06AE ; G 1480 -U 1711 ; WX 1024 ; N uni06AF ; G 1481 -U 1712 ; WX 1024 ; N uni06B0 ; G 1482 -U 1713 ; WX 1024 ; N uni06B1 ; G 1483 -U 1714 ; WX 1024 ; N uni06B2 ; G 1484 -U 1715 ; WX 1024 ; N uni06B3 ; G 1485 -U 1716 ; WX 1024 ; N uni06B4 ; G 1486 -U 1717 ; WX 868 ; N uni06B5 ; G 1487 -U 1718 ; WX 868 ; N uni06B6 ; G 1488 -U 1719 ; WX 868 ; N uni06B7 ; G 1489 -U 1720 ; WX 868 ; N uni06B8 ; G 1490 -U 1721 ; WX 854 ; N uni06B9 ; G 1491 -U 1722 ; WX 854 ; N uni06BA ; G 1492 -U 1723 ; WX 854 ; N uni06BB ; G 1493 -U 1724 ; WX 854 ; N uni06BC ; G 1494 -U 1725 ; WX 854 ; N uni06BD ; G 1495 -U 1726 ; WX 938 ; N uni06BE ; G 1496 -U 1727 ; WX 721 ; N uni06BF ; G 1497 -U 1734 ; WX 622 ; N uni06C6 ; G 1498 -U 1735 ; WX 622 ; N uni06C7 ; G 1499 -U 1736 ; WX 622 ; N uni06C8 ; G 1500 -U 1739 ; WX 622 ; N uni06CB ; G 1501 -U 1740 ; WX 917 ; N uni06CC ; G 1502 -U 1742 ; WX 917 ; N uni06CE ; G 1503 -U 1744 ; WX 917 ; N uni06D0 ; G 1504 -U 1749 ; WX 590 ; N uni06D5 ; G 1505 -U 1776 ; WX 610 ; N uni06F0 ; G 1506 -U 1777 ; WX 610 ; N uni06F1 ; G 1507 -U 1778 ; WX 610 ; N uni06F2 ; G 1508 -U 1779 ; WX 610 ; N uni06F3 ; G 1509 -U 1780 ; WX 610 ; N uni06F4 ; G 1510 -U 1781 ; WX 610 ; N uni06F5 ; G 1511 -U 1782 ; WX 610 ; N uni06F6 ; G 1512 -U 1783 ; WX 610 ; N uni06F7 ; G 1513 -U 1784 ; WX 610 ; N uni06F8 ; G 1514 -U 1785 ; WX 610 ; N uni06F9 ; G 1515 -U 1984 ; WX 696 ; N uni07C0 ; G 1516 -U 1985 ; WX 696 ; N uni07C1 ; G 1517 -U 1986 ; WX 696 ; N uni07C2 ; G 1518 -U 1987 ; WX 696 ; N uni07C3 ; G 1519 -U 1988 ; WX 696 ; N uni07C4 ; G 1520 -U 1989 ; WX 696 ; N uni07C5 ; G 1521 -U 1990 ; WX 696 ; N uni07C6 ; G 1522 -U 1991 ; WX 696 ; N uni07C7 ; G 1523 -U 1992 ; WX 696 ; N uni07C8 ; G 1524 -U 1993 ; WX 696 ; N uni07C9 ; G 1525 -U 1994 ; WX 343 ; N uni07CA ; G 1526 -U 1995 ; WX 547 ; N uni07CB ; G 1527 -U 1996 ; WX 543 ; N uni07CC ; G 1528 -U 1997 ; WX 652 ; N uni07CD ; G 1529 -U 1998 ; WX 691 ; N uni07CE ; G 1530 -U 1999 ; WX 691 ; N uni07CF ; G 1531 -U 2000 ; WX 594 ; N uni07D0 ; G 1532 -U 2001 ; WX 691 ; N uni07D1 ; G 1533 -U 2002 ; WX 904 ; N uni07D2 ; G 1534 -U 2003 ; WX 551 ; N uni07D3 ; G 1535 -U 2004 ; WX 551 ; N uni07D4 ; G 1536 -U 2005 ; WX 627 ; N uni07D5 ; G 1537 -U 2006 ; WX 688 ; N uni07D6 ; G 1538 -U 2007 ; WX 444 ; N uni07D7 ; G 1539 -U 2008 ; WX 1022 ; N uni07D8 ; G 1540 -U 2009 ; WX 506 ; N uni07D9 ; G 1541 -U 2010 ; WX 826 ; N uni07DA ; G 1542 -U 2011 ; WX 691 ; N uni07DB ; G 1543 -U 2012 ; WX 652 ; N uni07DC ; G 1544 -U 2013 ; WX 912 ; N uni07DD ; G 1545 -U 2014 ; WX 627 ; N uni07DE ; G 1546 -U 2015 ; WX 707 ; N uni07DF ; G 1547 -U 2016 ; WX 506 ; N uni07E0 ; G 1548 -U 2017 ; WX 652 ; N uni07E1 ; G 1549 -U 2018 ; WX 574 ; N uni07E2 ; G 1550 -U 2019 ; WX 627 ; N uni07E3 ; G 1551 -U 2020 ; WX 627 ; N uni07E4 ; G 1552 -U 2021 ; WX 627 ; N uni07E5 ; G 1553 -U 2022 ; WX 574 ; N uni07E6 ; G 1554 -U 2023 ; WX 574 ; N uni07E7 ; G 1555 -U 2027 ; WX 0 ; N uni07EB ; G 1556 -U 2028 ; WX 0 ; N uni07EC ; G 1557 -U 2029 ; WX 0 ; N uni07ED ; G 1558 -U 2030 ; WX 0 ; N uni07EE ; G 1559 -U 2031 ; WX 0 ; N uni07EF ; G 1560 -U 2032 ; WX 0 ; N uni07F0 ; G 1561 -U 2033 ; WX 0 ; N uni07F1 ; G 1562 -U 2034 ; WX 0 ; N uni07F2 ; G 1563 -U 2035 ; WX 0 ; N uni07F3 ; G 1564 -U 2036 ; WX 380 ; N uni07F4 ; G 1565 -U 2037 ; WX 380 ; N uni07F5 ; G 1566 -U 2040 ; WX 691 ; N uni07F8 ; G 1567 -U 2041 ; WX 691 ; N uni07F9 ; G 1568 -U 2042 ; WX 415 ; N uni07FA ; G 1569 -U 3647 ; WX 696 ; N uni0E3F ; G 1570 -U 3713 ; WX 790 ; N uni0E81 ; G 1571 -U 3714 ; WX 748 ; N uni0E82 ; G 1572 -U 3716 ; WX 749 ; N uni0E84 ; G 1573 -U 3719 ; WX 569 ; N uni0E87 ; G 1574 -U 3720 ; WX 742 ; N uni0E88 ; G 1575 -U 3722 ; WX 744 ; N uni0E8A ; G 1576 -U 3725 ; WX 761 ; N uni0E8D ; G 1577 -U 3732 ; WX 706 ; N uni0E94 ; G 1578 -U 3733 ; WX 704 ; N uni0E95 ; G 1579 -U 3734 ; WX 747 ; N uni0E96 ; G 1580 -U 3735 ; WX 819 ; N uni0E97 ; G 1581 -U 3737 ; WX 730 ; N uni0E99 ; G 1582 -U 3738 ; WX 727 ; N uni0E9A ; G 1583 -U 3739 ; WX 727 ; N uni0E9B ; G 1584 -U 3740 ; WX 922 ; N uni0E9C ; G 1585 -U 3741 ; WX 827 ; N uni0E9D ; G 1586 -U 3742 ; WX 866 ; N uni0E9E ; G 1587 -U 3743 ; WX 866 ; N uni0E9F ; G 1588 -U 3745 ; WX 836 ; N uni0EA1 ; G 1589 -U 3746 ; WX 761 ; N uni0EA2 ; G 1590 -U 3747 ; WX 770 ; N uni0EA3 ; G 1591 -U 3749 ; WX 769 ; N uni0EA5 ; G 1592 -U 3751 ; WX 713 ; N uni0EA7 ; G 1593 -U 3754 ; WX 827 ; N uni0EAA ; G 1594 -U 3755 ; WX 1031 ; N uni0EAB ; G 1595 -U 3757 ; WX 724 ; N uni0EAD ; G 1596 -U 3758 ; WX 784 ; N uni0EAE ; G 1597 -U 3759 ; WX 934 ; N uni0EAF ; G 1598 -U 3760 ; WX 688 ; N uni0EB0 ; G 1599 -U 3761 ; WX 0 ; N uni0EB1 ; G 1600 -U 3762 ; WX 610 ; N uni0EB2 ; G 1601 -U 3763 ; WX 610 ; N uni0EB3 ; G 1602 -U 3764 ; WX 0 ; N uni0EB4 ; G 1603 -U 3765 ; WX 0 ; N uni0EB5 ; G 1604 -U 3766 ; WX 0 ; N uni0EB6 ; G 1605 -U 3767 ; WX 0 ; N uni0EB7 ; G 1606 -U 3768 ; WX 0 ; N uni0EB8 ; G 1607 -U 3769 ; WX 0 ; N uni0EB9 ; G 1608 -U 3771 ; WX 0 ; N uni0EBB ; G 1609 -U 3772 ; WX 0 ; N uni0EBC ; G 1610 -U 3773 ; WX 670 ; N uni0EBD ; G 1611 -U 3776 ; WX 516 ; N uni0EC0 ; G 1612 -U 3777 ; WX 860 ; N uni0EC1 ; G 1613 -U 3778 ; WX 516 ; N uni0EC2 ; G 1614 -U 3779 ; WX 650 ; N uni0EC3 ; G 1615 -U 3780 ; WX 632 ; N uni0EC4 ; G 1616 -U 3782 ; WX 759 ; N uni0EC6 ; G 1617 -U 3784 ; WX 0 ; N uni0EC8 ; G 1618 -U 3785 ; WX 0 ; N uni0EC9 ; G 1619 -U 3786 ; WX 0 ; N uni0ECA ; G 1620 -U 3787 ; WX 0 ; N uni0ECB ; G 1621 -U 3788 ; WX 0 ; N uni0ECC ; G 1622 -U 3789 ; WX 0 ; N uni0ECD ; G 1623 -U 3792 ; WX 771 ; N uni0ED0 ; G 1624 -U 3793 ; WX 771 ; N uni0ED1 ; G 1625 -U 3794 ; WX 693 ; N uni0ED2 ; G 1626 -U 3795 ; WX 836 ; N uni0ED3 ; G 1627 -U 3796 ; WX 729 ; N uni0ED4 ; G 1628 -U 3797 ; WX 729 ; N uni0ED5 ; G 1629 -U 3798 ; WX 849 ; N uni0ED6 ; G 1630 -U 3799 ; WX 790 ; N uni0ED7 ; G 1631 -U 3800 ; WX 759 ; N uni0ED8 ; G 1632 -U 3801 ; WX 910 ; N uni0ED9 ; G 1633 -U 3804 ; WX 1363 ; N uni0EDC ; G 1634 -U 3805 ; WX 1363 ; N uni0EDD ; G 1635 -U 4256 ; WX 874 ; N uni10A0 ; G 1636 -U 4257 ; WX 733 ; N uni10A1 ; G 1637 -U 4258 ; WX 679 ; N uni10A2 ; G 1638 -U 4259 ; WX 834 ; N uni10A3 ; G 1639 -U 4260 ; WX 615 ; N uni10A4 ; G 1640 -U 4261 ; WX 768 ; N uni10A5 ; G 1641 -U 4262 ; WX 753 ; N uni10A6 ; G 1642 -U 4263 ; WX 914 ; N uni10A7 ; G 1643 -U 4264 ; WX 453 ; N uni10A8 ; G 1644 -U 4265 ; WX 620 ; N uni10A9 ; G 1645 -U 4266 ; WX 843 ; N uni10AA ; G 1646 -U 4267 ; WX 882 ; N uni10AB ; G 1647 -U 4268 ; WX 625 ; N uni10AC ; G 1648 -U 4269 ; WX 854 ; N uni10AD ; G 1649 -U 4270 ; WX 781 ; N uni10AE ; G 1650 -U 4271 ; WX 629 ; N uni10AF ; G 1651 -U 4272 ; WX 912 ; N uni10B0 ; G 1652 -U 4273 ; WX 621 ; N uni10B1 ; G 1653 -U 4274 ; WX 620 ; N uni10B2 ; G 1654 -U 4275 ; WX 854 ; N uni10B3 ; G 1655 -U 4276 ; WX 866 ; N uni10B4 ; G 1656 -U 4277 ; WX 724 ; N uni10B5 ; G 1657 -U 4278 ; WX 630 ; N uni10B6 ; G 1658 -U 4279 ; WX 621 ; N uni10B7 ; G 1659 -U 4280 ; WX 625 ; N uni10B8 ; G 1660 -U 4281 ; WX 620 ; N uni10B9 ; G 1661 -U 4282 ; WX 818 ; N uni10BA ; G 1662 -U 4283 ; WX 874 ; N uni10BB ; G 1663 -U 4284 ; WX 615 ; N uni10BC ; G 1664 -U 4285 ; WX 623 ; N uni10BD ; G 1665 -U 4286 ; WX 625 ; N uni10BE ; G 1666 -U 4287 ; WX 725 ; N uni10BF ; G 1667 -U 4288 ; WX 844 ; N uni10C0 ; G 1668 -U 4289 ; WX 596 ; N uni10C1 ; G 1669 -U 4290 ; WX 688 ; N uni10C2 ; G 1670 -U 4291 ; WX 596 ; N uni10C3 ; G 1671 -U 4292 ; WX 594 ; N uni10C4 ; G 1672 -U 4293 ; WX 738 ; N uni10C5 ; G 1673 -U 4304 ; WX 554 ; N uni10D0 ; G 1674 -U 4305 ; WX 563 ; N uni10D1 ; G 1675 -U 4306 ; WX 622 ; N uni10D2 ; G 1676 -U 4307 ; WX 834 ; N uni10D3 ; G 1677 -U 4308 ; WX 555 ; N uni10D4 ; G 1678 -U 4309 ; WX 564 ; N uni10D5 ; G 1679 -U 4310 ; WX 551 ; N uni10D6 ; G 1680 -U 4311 ; WX 828 ; N uni10D7 ; G 1681 -U 4312 ; WX 563 ; N uni10D8 ; G 1682 -U 4313 ; WX 556 ; N uni10D9 ; G 1683 -U 4314 ; WX 1074 ; N uni10DA ; G 1684 -U 4315 ; WX 568 ; N uni10DB ; G 1685 -U 4316 ; WX 568 ; N uni10DC ; G 1686 -U 4317 ; WX 814 ; N uni10DD ; G 1687 -U 4318 ; WX 554 ; N uni10DE ; G 1688 -U 4319 ; WX 563 ; N uni10DF ; G 1689 -U 4320 ; WX 823 ; N uni10E0 ; G 1690 -U 4321 ; WX 568 ; N uni10E1 ; G 1691 -U 4322 ; WX 700 ; N uni10E2 ; G 1692 -U 4323 ; WX 591 ; N uni10E3 ; G 1693 -U 4324 ; WX 852 ; N uni10E4 ; G 1694 -U 4325 ; WX 560 ; N uni10E5 ; G 1695 -U 4326 ; WX 814 ; N uni10E6 ; G 1696 -U 4327 ; WX 563 ; N uni10E7 ; G 1697 -U 4328 ; WX 553 ; N uni10E8 ; G 1698 -U 4329 ; WX 568 ; N uni10E9 ; G 1699 -U 4330 ; WX 622 ; N uni10EA ; G 1700 -U 4331 ; WX 568 ; N uni10EB ; G 1701 -U 4332 ; WX 553 ; N uni10EC ; G 1702 -U 4333 ; WX 566 ; N uni10ED ; G 1703 -U 4334 ; WX 568 ; N uni10EE ; G 1704 -U 4335 ; WX 540 ; N uni10EF ; G 1705 -U 4336 ; WX 554 ; N uni10F0 ; G 1706 -U 4337 ; WX 559 ; N uni10F1 ; G 1707 -U 4338 ; WX 553 ; N uni10F2 ; G 1708 -U 4339 ; WX 554 ; N uni10F3 ; G 1709 -U 4340 ; WX 553 ; N uni10F4 ; G 1710 -U 4341 ; WX 587 ; N uni10F5 ; G 1711 -U 4342 ; WX 853 ; N uni10F6 ; G 1712 -U 4343 ; WX 604 ; N uni10F7 ; G 1713 -U 4344 ; WX 563 ; N uni10F8 ; G 1714 -U 4345 ; WX 622 ; N uni10F9 ; G 1715 -U 4346 ; WX 554 ; N uni10FA ; G 1716 -U 4347 ; WX 448 ; N uni10FB ; G 1717 -U 4348 ; WX 324 ; N uni10FC ; G 1718 -U 5121 ; WX 774 ; N uni1401 ; G 1719 -U 5122 ; WX 774 ; N uni1402 ; G 1720 -U 5123 ; WX 774 ; N uni1403 ; G 1721 -U 5124 ; WX 774 ; N uni1404 ; G 1722 -U 5125 ; WX 905 ; N uni1405 ; G 1723 -U 5126 ; WX 905 ; N uni1406 ; G 1724 -U 5127 ; WX 905 ; N uni1407 ; G 1725 -U 5129 ; WX 905 ; N uni1409 ; G 1726 -U 5130 ; WX 905 ; N uni140A ; G 1727 -U 5131 ; WX 905 ; N uni140B ; G 1728 -U 5132 ; WX 1018 ; N uni140C ; G 1729 -U 5133 ; WX 1009 ; N uni140D ; G 1730 -U 5134 ; WX 1018 ; N uni140E ; G 1731 -U 5135 ; WX 1009 ; N uni140F ; G 1732 -U 5136 ; WX 1018 ; N uni1410 ; G 1733 -U 5137 ; WX 1009 ; N uni1411 ; G 1734 -U 5138 ; WX 1149 ; N uni1412 ; G 1735 -U 5139 ; WX 1140 ; N uni1413 ; G 1736 -U 5140 ; WX 1149 ; N uni1414 ; G 1737 -U 5141 ; WX 1140 ; N uni1415 ; G 1738 -U 5142 ; WX 905 ; N uni1416 ; G 1739 -U 5143 ; WX 1149 ; N uni1417 ; G 1740 -U 5144 ; WX 1142 ; N uni1418 ; G 1741 -U 5145 ; WX 1149 ; N uni1419 ; G 1742 -U 5146 ; WX 1142 ; N uni141A ; G 1743 -U 5147 ; WX 905 ; N uni141B ; G 1744 -U 5149 ; WX 310 ; N uni141D ; G 1745 -U 5150 ; WX 529 ; N uni141E ; G 1746 -U 5151 ; WX 425 ; N uni141F ; G 1747 -U 5152 ; WX 425 ; N uni1420 ; G 1748 -U 5153 ; WX 395 ; N uni1421 ; G 1749 -U 5154 ; WX 395 ; N uni1422 ; G 1750 -U 5155 ; WX 395 ; N uni1423 ; G 1751 -U 5156 ; WX 395 ; N uni1424 ; G 1752 -U 5157 ; WX 564 ; N uni1425 ; G 1753 -U 5158 ; WX 470 ; N uni1426 ; G 1754 -U 5159 ; WX 310 ; N uni1427 ; G 1755 -U 5160 ; WX 395 ; N uni1428 ; G 1756 -U 5161 ; WX 395 ; N uni1429 ; G 1757 -U 5162 ; WX 395 ; N uni142A ; G 1758 -U 5163 ; WX 1213 ; N uni142B ; G 1759 -U 5164 ; WX 986 ; N uni142C ; G 1760 -U 5165 ; WX 1216 ; N uni142D ; G 1761 -U 5166 ; WX 1297 ; N uni142E ; G 1762 -U 5167 ; WX 774 ; N uni142F ; G 1763 -U 5168 ; WX 774 ; N uni1430 ; G 1764 -U 5169 ; WX 774 ; N uni1431 ; G 1765 -U 5170 ; WX 774 ; N uni1432 ; G 1766 -U 5171 ; WX 886 ; N uni1433 ; G 1767 -U 5172 ; WX 886 ; N uni1434 ; G 1768 -U 5173 ; WX 886 ; N uni1435 ; G 1769 -U 5175 ; WX 886 ; N uni1437 ; G 1770 -U 5176 ; WX 886 ; N uni1438 ; G 1771 -U 5177 ; WX 886 ; N uni1439 ; G 1772 -U 5178 ; WX 1018 ; N uni143A ; G 1773 -U 5179 ; WX 1009 ; N uni143B ; G 1774 -U 5180 ; WX 1018 ; N uni143C ; G 1775 -U 5181 ; WX 1009 ; N uni143D ; G 1776 -U 5182 ; WX 1018 ; N uni143E ; G 1777 -U 5183 ; WX 1009 ; N uni143F ; G 1778 -U 5184 ; WX 1149 ; N uni1440 ; G 1779 -U 5185 ; WX 1140 ; N uni1441 ; G 1780 -U 5186 ; WX 1149 ; N uni1442 ; G 1781 -U 5187 ; WX 1140 ; N uni1443 ; G 1782 -U 5188 ; WX 1149 ; N uni1444 ; G 1783 -U 5189 ; WX 1142 ; N uni1445 ; G 1784 -U 5190 ; WX 1149 ; N uni1446 ; G 1785 -U 5191 ; WX 1142 ; N uni1447 ; G 1786 -U 5192 ; WX 886 ; N uni1448 ; G 1787 -U 5193 ; WX 576 ; N uni1449 ; G 1788 -U 5194 ; WX 229 ; N uni144A ; G 1789 -U 5196 ; WX 812 ; N uni144C ; G 1790 -U 5197 ; WX 812 ; N uni144D ; G 1791 -U 5198 ; WX 812 ; N uni144E ; G 1792 -U 5199 ; WX 812 ; N uni144F ; G 1793 -U 5200 ; WX 815 ; N uni1450 ; G 1794 -U 5201 ; WX 815 ; N uni1451 ; G 1795 -U 5202 ; WX 815 ; N uni1452 ; G 1796 -U 5204 ; WX 815 ; N uni1454 ; G 1797 -U 5205 ; WX 815 ; N uni1455 ; G 1798 -U 5206 ; WX 815 ; N uni1456 ; G 1799 -U 5207 ; WX 1056 ; N uni1457 ; G 1800 -U 5208 ; WX 1048 ; N uni1458 ; G 1801 -U 5209 ; WX 1056 ; N uni1459 ; G 1802 -U 5210 ; WX 1048 ; N uni145A ; G 1803 -U 5211 ; WX 1056 ; N uni145B ; G 1804 -U 5212 ; WX 1048 ; N uni145C ; G 1805 -U 5213 ; WX 1060 ; N uni145D ; G 1806 -U 5214 ; WX 1054 ; N uni145E ; G 1807 -U 5215 ; WX 1060 ; N uni145F ; G 1808 -U 5216 ; WX 1054 ; N uni1460 ; G 1809 -U 5217 ; WX 1060 ; N uni1461 ; G 1810 -U 5218 ; WX 1052 ; N uni1462 ; G 1811 -U 5219 ; WX 1060 ; N uni1463 ; G 1812 -U 5220 ; WX 1052 ; N uni1464 ; G 1813 -U 5221 ; WX 1060 ; N uni1465 ; G 1814 -U 5222 ; WX 483 ; N uni1466 ; G 1815 -U 5223 ; WX 1005 ; N uni1467 ; G 1816 -U 5224 ; WX 1005 ; N uni1468 ; G 1817 -U 5225 ; WX 1023 ; N uni1469 ; G 1818 -U 5226 ; WX 1017 ; N uni146A ; G 1819 -U 5227 ; WX 743 ; N uni146B ; G 1820 -U 5228 ; WX 743 ; N uni146C ; G 1821 -U 5229 ; WX 743 ; N uni146D ; G 1822 -U 5230 ; WX 743 ; N uni146E ; G 1823 -U 5231 ; WX 743 ; N uni146F ; G 1824 -U 5232 ; WX 743 ; N uni1470 ; G 1825 -U 5233 ; WX 743 ; N uni1471 ; G 1826 -U 5234 ; WX 743 ; N uni1472 ; G 1827 -U 5235 ; WX 743 ; N uni1473 ; G 1828 -U 5236 ; WX 1029 ; N uni1474 ; G 1829 -U 5237 ; WX 975 ; N uni1475 ; G 1830 -U 5238 ; WX 980 ; N uni1476 ; G 1831 -U 5239 ; WX 975 ; N uni1477 ; G 1832 -U 5240 ; WX 980 ; N uni1478 ; G 1833 -U 5241 ; WX 975 ; N uni1479 ; G 1834 -U 5242 ; WX 1029 ; N uni147A ; G 1835 -U 5243 ; WX 975 ; N uni147B ; G 1836 -U 5244 ; WX 1029 ; N uni147C ; G 1837 -U 5245 ; WX 975 ; N uni147D ; G 1838 -U 5246 ; WX 980 ; N uni147E ; G 1839 -U 5247 ; WX 975 ; N uni147F ; G 1840 -U 5248 ; WX 980 ; N uni1480 ; G 1841 -U 5249 ; WX 975 ; N uni1481 ; G 1842 -U 5250 ; WX 980 ; N uni1482 ; G 1843 -U 5251 ; WX 501 ; N uni1483 ; G 1844 -U 5252 ; WX 501 ; N uni1484 ; G 1845 -U 5253 ; WX 938 ; N uni1485 ; G 1846 -U 5254 ; WX 938 ; N uni1486 ; G 1847 -U 5255 ; WX 938 ; N uni1487 ; G 1848 -U 5256 ; WX 938 ; N uni1488 ; G 1849 -U 5257 ; WX 743 ; N uni1489 ; G 1850 -U 5258 ; WX 743 ; N uni148A ; G 1851 -U 5259 ; WX 743 ; N uni148B ; G 1852 -U 5260 ; WX 743 ; N uni148C ; G 1853 -U 5261 ; WX 743 ; N uni148D ; G 1854 -U 5262 ; WX 743 ; N uni148E ; G 1855 -U 5263 ; WX 743 ; N uni148F ; G 1856 -U 5264 ; WX 743 ; N uni1490 ; G 1857 -U 5265 ; WX 743 ; N uni1491 ; G 1858 -U 5266 ; WX 1029 ; N uni1492 ; G 1859 -U 5267 ; WX 975 ; N uni1493 ; G 1860 -U 5268 ; WX 1029 ; N uni1494 ; G 1861 -U 5269 ; WX 975 ; N uni1495 ; G 1862 -U 5270 ; WX 1029 ; N uni1496 ; G 1863 -U 5271 ; WX 975 ; N uni1497 ; G 1864 -U 5272 ; WX 1029 ; N uni1498 ; G 1865 -U 5273 ; WX 975 ; N uni1499 ; G 1866 -U 5274 ; WX 1029 ; N uni149A ; G 1867 -U 5275 ; WX 975 ; N uni149B ; G 1868 -U 5276 ; WX 1029 ; N uni149C ; G 1869 -U 5277 ; WX 975 ; N uni149D ; G 1870 -U 5278 ; WX 1029 ; N uni149E ; G 1871 -U 5279 ; WX 975 ; N uni149F ; G 1872 -U 5280 ; WX 1029 ; N uni14A0 ; G 1873 -U 5281 ; WX 501 ; N uni14A1 ; G 1874 -U 5282 ; WX 501 ; N uni14A2 ; G 1875 -U 5283 ; WX 626 ; N uni14A3 ; G 1876 -U 5284 ; WX 626 ; N uni14A4 ; G 1877 -U 5285 ; WX 626 ; N uni14A5 ; G 1878 -U 5286 ; WX 626 ; N uni14A6 ; G 1879 -U 5287 ; WX 626 ; N uni14A7 ; G 1880 -U 5288 ; WX 626 ; N uni14A8 ; G 1881 -U 5289 ; WX 626 ; N uni14A9 ; G 1882 -U 5290 ; WX 626 ; N uni14AA ; G 1883 -U 5291 ; WX 626 ; N uni14AB ; G 1884 -U 5292 ; WX 881 ; N uni14AC ; G 1885 -U 5293 ; WX 854 ; N uni14AD ; G 1886 -U 5294 ; WX 863 ; N uni14AE ; G 1887 -U 5295 ; WX 874 ; N uni14AF ; G 1888 -U 5296 ; WX 863 ; N uni14B0 ; G 1889 -U 5297 ; WX 874 ; N uni14B1 ; G 1890 -U 5298 ; WX 881 ; N uni14B2 ; G 1891 -U 5299 ; WX 874 ; N uni14B3 ; G 1892 -U 5300 ; WX 881 ; N uni14B4 ; G 1893 -U 5301 ; WX 874 ; N uni14B5 ; G 1894 -U 5302 ; WX 863 ; N uni14B6 ; G 1895 -U 5303 ; WX 874 ; N uni14B7 ; G 1896 -U 5304 ; WX 863 ; N uni14B8 ; G 1897 -U 5305 ; WX 874 ; N uni14B9 ; G 1898 -U 5306 ; WX 863 ; N uni14BA ; G 1899 -U 5307 ; WX 436 ; N uni14BB ; G 1900 -U 5308 ; WX 548 ; N uni14BC ; G 1901 -U 5309 ; WX 436 ; N uni14BD ; G 1902 -U 5312 ; WX 988 ; N uni14C0 ; G 1903 -U 5313 ; WX 988 ; N uni14C1 ; G 1904 -U 5314 ; WX 988 ; N uni14C2 ; G 1905 -U 5315 ; WX 988 ; N uni14C3 ; G 1906 -U 5316 ; WX 931 ; N uni14C4 ; G 1907 -U 5317 ; WX 931 ; N uni14C5 ; G 1908 -U 5318 ; WX 931 ; N uni14C6 ; G 1909 -U 5319 ; WX 931 ; N uni14C7 ; G 1910 -U 5320 ; WX 931 ; N uni14C8 ; G 1911 -U 5321 ; WX 1238 ; N uni14C9 ; G 1912 -U 5322 ; WX 1247 ; N uni14CA ; G 1913 -U 5323 ; WX 1200 ; N uni14CB ; G 1914 -U 5324 ; WX 1228 ; N uni14CC ; G 1915 -U 5325 ; WX 1200 ; N uni14CD ; G 1916 -U 5326 ; WX 1228 ; N uni14CE ; G 1917 -U 5327 ; WX 931 ; N uni14CF ; G 1918 -U 5328 ; WX 660 ; N uni14D0 ; G 1919 -U 5329 ; WX 497 ; N uni14D1 ; G 1920 -U 5330 ; WX 660 ; N uni14D2 ; G 1921 -U 5331 ; WX 988 ; N uni14D3 ; G 1922 -U 5332 ; WX 988 ; N uni14D4 ; G 1923 -U 5333 ; WX 988 ; N uni14D5 ; G 1924 -U 5334 ; WX 988 ; N uni14D6 ; G 1925 -U 5335 ; WX 931 ; N uni14D7 ; G 1926 -U 5336 ; WX 931 ; N uni14D8 ; G 1927 -U 5337 ; WX 931 ; N uni14D9 ; G 1928 -U 5338 ; WX 931 ; N uni14DA ; G 1929 -U 5339 ; WX 931 ; N uni14DB ; G 1930 -U 5340 ; WX 1231 ; N uni14DC ; G 1931 -U 5341 ; WX 1247 ; N uni14DD ; G 1932 -U 5342 ; WX 1283 ; N uni14DE ; G 1933 -U 5343 ; WX 1228 ; N uni14DF ; G 1934 -U 5344 ; WX 1283 ; N uni14E0 ; G 1935 -U 5345 ; WX 1228 ; N uni14E1 ; G 1936 -U 5346 ; WX 1228 ; N uni14E2 ; G 1937 -U 5347 ; WX 1214 ; N uni14E3 ; G 1938 -U 5348 ; WX 1228 ; N uni14E4 ; G 1939 -U 5349 ; WX 1214 ; N uni14E5 ; G 1940 -U 5350 ; WX 1283 ; N uni14E6 ; G 1941 -U 5351 ; WX 1228 ; N uni14E7 ; G 1942 -U 5352 ; WX 1283 ; N uni14E8 ; G 1943 -U 5353 ; WX 1228 ; N uni14E9 ; G 1944 -U 5354 ; WX 660 ; N uni14EA ; G 1945 -U 5356 ; WX 886 ; N uni14EC ; G 1946 -U 5357 ; WX 730 ; N uni14ED ; G 1947 -U 5358 ; WX 730 ; N uni14EE ; G 1948 -U 5359 ; WX 730 ; N uni14EF ; G 1949 -U 5360 ; WX 730 ; N uni14F0 ; G 1950 -U 5361 ; WX 730 ; N uni14F1 ; G 1951 -U 5362 ; WX 730 ; N uni14F2 ; G 1952 -U 5363 ; WX 730 ; N uni14F3 ; G 1953 -U 5364 ; WX 730 ; N uni14F4 ; G 1954 -U 5365 ; WX 730 ; N uni14F5 ; G 1955 -U 5366 ; WX 998 ; N uni14F6 ; G 1956 -U 5367 ; WX 958 ; N uni14F7 ; G 1957 -U 5368 ; WX 967 ; N uni14F8 ; G 1958 -U 5369 ; WX 989 ; N uni14F9 ; G 1959 -U 5370 ; WX 967 ; N uni14FA ; G 1960 -U 5371 ; WX 989 ; N uni14FB ; G 1961 -U 5372 ; WX 998 ; N uni14FC ; G 1962 -U 5373 ; WX 958 ; N uni14FD ; G 1963 -U 5374 ; WX 998 ; N uni14FE ; G 1964 -U 5375 ; WX 958 ; N uni14FF ; G 1965 -U 5376 ; WX 967 ; N uni1500 ; G 1966 -U 5377 ; WX 989 ; N uni1501 ; G 1967 -U 5378 ; WX 967 ; N uni1502 ; G 1968 -U 5379 ; WX 989 ; N uni1503 ; G 1969 -U 5380 ; WX 967 ; N uni1504 ; G 1970 -U 5381 ; WX 493 ; N uni1505 ; G 1971 -U 5382 ; WX 460 ; N uni1506 ; G 1972 -U 5383 ; WX 493 ; N uni1507 ; G 1973 -U 5392 ; WX 923 ; N uni1510 ; G 1974 -U 5393 ; WX 923 ; N uni1511 ; G 1975 -U 5394 ; WX 923 ; N uni1512 ; G 1976 -U 5395 ; WX 1136 ; N uni1513 ; G 1977 -U 5396 ; WX 1136 ; N uni1514 ; G 1978 -U 5397 ; WX 1136 ; N uni1515 ; G 1979 -U 5398 ; WX 1136 ; N uni1516 ; G 1980 -U 5399 ; WX 1209 ; N uni1517 ; G 1981 -U 5400 ; WX 1202 ; N uni1518 ; G 1982 -U 5401 ; WX 1209 ; N uni1519 ; G 1983 -U 5402 ; WX 1202 ; N uni151A ; G 1984 -U 5403 ; WX 1209 ; N uni151B ; G 1985 -U 5404 ; WX 1202 ; N uni151C ; G 1986 -U 5405 ; WX 1431 ; N uni151D ; G 1987 -U 5406 ; WX 1420 ; N uni151E ; G 1988 -U 5407 ; WX 1431 ; N uni151F ; G 1989 -U 5408 ; WX 1420 ; N uni1520 ; G 1990 -U 5409 ; WX 1431 ; N uni1521 ; G 1991 -U 5410 ; WX 1420 ; N uni1522 ; G 1992 -U 5411 ; WX 1431 ; N uni1523 ; G 1993 -U 5412 ; WX 1420 ; N uni1524 ; G 1994 -U 5413 ; WX 746 ; N uni1525 ; G 1995 -U 5414 ; WX 776 ; N uni1526 ; G 1996 -U 5415 ; WX 776 ; N uni1527 ; G 1997 -U 5416 ; WX 776 ; N uni1528 ; G 1998 -U 5417 ; WX 776 ; N uni1529 ; G 1999 -U 5418 ; WX 776 ; N uni152A ; G 2000 -U 5419 ; WX 776 ; N uni152B ; G 2001 -U 5420 ; WX 776 ; N uni152C ; G 2002 -U 5421 ; WX 776 ; N uni152D ; G 2003 -U 5422 ; WX 776 ; N uni152E ; G 2004 -U 5423 ; WX 1003 ; N uni152F ; G 2005 -U 5424 ; WX 1003 ; N uni1530 ; G 2006 -U 5425 ; WX 1013 ; N uni1531 ; G 2007 -U 5426 ; WX 996 ; N uni1532 ; G 2008 -U 5427 ; WX 1013 ; N uni1533 ; G 2009 -U 5428 ; WX 996 ; N uni1534 ; G 2010 -U 5429 ; WX 1003 ; N uni1535 ; G 2011 -U 5430 ; WX 1003 ; N uni1536 ; G 2012 -U 5431 ; WX 1003 ; N uni1537 ; G 2013 -U 5432 ; WX 1003 ; N uni1538 ; G 2014 -U 5433 ; WX 1013 ; N uni1539 ; G 2015 -U 5434 ; WX 996 ; N uni153A ; G 2016 -U 5435 ; WX 1013 ; N uni153B ; G 2017 -U 5436 ; WX 996 ; N uni153C ; G 2018 -U 5437 ; WX 1013 ; N uni153D ; G 2019 -U 5438 ; WX 495 ; N uni153E ; G 2020 -U 5440 ; WX 395 ; N uni1540 ; G 2021 -U 5441 ; WX 510 ; N uni1541 ; G 2022 -U 5442 ; WX 1033 ; N uni1542 ; G 2023 -U 5443 ; WX 1033 ; N uni1543 ; G 2024 -U 5444 ; WX 976 ; N uni1544 ; G 2025 -U 5445 ; WX 976 ; N uni1545 ; G 2026 -U 5446 ; WX 976 ; N uni1546 ; G 2027 -U 5447 ; WX 976 ; N uni1547 ; G 2028 -U 5448 ; WX 733 ; N uni1548 ; G 2029 -U 5449 ; WX 733 ; N uni1549 ; G 2030 -U 5450 ; WX 733 ; N uni154A ; G 2031 -U 5451 ; WX 733 ; N uni154B ; G 2032 -U 5452 ; WX 733 ; N uni154C ; G 2033 -U 5453 ; WX 733 ; N uni154D ; G 2034 -U 5454 ; WX 1003 ; N uni154E ; G 2035 -U 5455 ; WX 959 ; N uni154F ; G 2036 -U 5456 ; WX 495 ; N uni1550 ; G 2037 -U 5458 ; WX 886 ; N uni1552 ; G 2038 -U 5459 ; WX 774 ; N uni1553 ; G 2039 -U 5460 ; WX 774 ; N uni1554 ; G 2040 -U 5461 ; WX 774 ; N uni1555 ; G 2041 -U 5462 ; WX 774 ; N uni1556 ; G 2042 -U 5463 ; WX 928 ; N uni1557 ; G 2043 -U 5464 ; WX 928 ; N uni1558 ; G 2044 -U 5465 ; WX 928 ; N uni1559 ; G 2045 -U 5466 ; WX 928 ; N uni155A ; G 2046 -U 5467 ; WX 1172 ; N uni155B ; G 2047 -U 5468 ; WX 1142 ; N uni155C ; G 2048 -U 5469 ; WX 602 ; N uni155D ; G 2049 -U 5470 ; WX 812 ; N uni155E ; G 2050 -U 5471 ; WX 812 ; N uni155F ; G 2051 -U 5472 ; WX 812 ; N uni1560 ; G 2052 -U 5473 ; WX 812 ; N uni1561 ; G 2053 -U 5474 ; WX 812 ; N uni1562 ; G 2054 -U 5475 ; WX 812 ; N uni1563 ; G 2055 -U 5476 ; WX 815 ; N uni1564 ; G 2056 -U 5477 ; WX 815 ; N uni1565 ; G 2057 -U 5478 ; WX 815 ; N uni1566 ; G 2058 -U 5479 ; WX 815 ; N uni1567 ; G 2059 -U 5480 ; WX 1060 ; N uni1568 ; G 2060 -U 5481 ; WX 1052 ; N uni1569 ; G 2061 -U 5482 ; WX 548 ; N uni156A ; G 2062 -U 5492 ; WX 977 ; N uni1574 ; G 2063 -U 5493 ; WX 977 ; N uni1575 ; G 2064 -U 5494 ; WX 977 ; N uni1576 ; G 2065 -U 5495 ; WX 977 ; N uni1577 ; G 2066 -U 5496 ; WX 977 ; N uni1578 ; G 2067 -U 5497 ; WX 977 ; N uni1579 ; G 2068 -U 5498 ; WX 977 ; N uni157A ; G 2069 -U 5499 ; WX 618 ; N uni157B ; G 2070 -U 5500 ; WX 837 ; N uni157C ; G 2071 -U 5501 ; WX 510 ; N uni157D ; G 2072 -U 5502 ; WX 1238 ; N uni157E ; G 2073 -U 5503 ; WX 1238 ; N uni157F ; G 2074 -U 5504 ; WX 1238 ; N uni1580 ; G 2075 -U 5505 ; WX 1238 ; N uni1581 ; G 2076 -U 5506 ; WX 1238 ; N uni1582 ; G 2077 -U 5507 ; WX 1238 ; N uni1583 ; G 2078 -U 5508 ; WX 1238 ; N uni1584 ; G 2079 -U 5509 ; WX 989 ; N uni1585 ; G 2080 -U 5514 ; WX 977 ; N uni158A ; G 2081 -U 5515 ; WX 977 ; N uni158B ; G 2082 -U 5516 ; WX 977 ; N uni158C ; G 2083 -U 5517 ; WX 977 ; N uni158D ; G 2084 -U 5518 ; WX 1591 ; N uni158E ; G 2085 -U 5519 ; WX 1591 ; N uni158F ; G 2086 -U 5520 ; WX 1591 ; N uni1590 ; G 2087 -U 5521 ; WX 1295 ; N uni1591 ; G 2088 -U 5522 ; WX 1295 ; N uni1592 ; G 2089 -U 5523 ; WX 1591 ; N uni1593 ; G 2090 -U 5524 ; WX 1591 ; N uni1594 ; G 2091 -U 5525 ; WX 848 ; N uni1595 ; G 2092 -U 5526 ; WX 1273 ; N uni1596 ; G 2093 -U 5536 ; WX 988 ; N uni15A0 ; G 2094 -U 5537 ; WX 988 ; N uni15A1 ; G 2095 -U 5538 ; WX 931 ; N uni15A2 ; G 2096 -U 5539 ; WX 931 ; N uni15A3 ; G 2097 -U 5540 ; WX 931 ; N uni15A4 ; G 2098 -U 5541 ; WX 931 ; N uni15A5 ; G 2099 -U 5542 ; WX 660 ; N uni15A6 ; G 2100 -U 5543 ; WX 776 ; N uni15A7 ; G 2101 -U 5544 ; WX 776 ; N uni15A8 ; G 2102 -U 5545 ; WX 776 ; N uni15A9 ; G 2103 -U 5546 ; WX 776 ; N uni15AA ; G 2104 -U 5547 ; WX 776 ; N uni15AB ; G 2105 -U 5548 ; WX 776 ; N uni15AC ; G 2106 -U 5549 ; WX 776 ; N uni15AD ; G 2107 -U 5550 ; WX 495 ; N uni15AE ; G 2108 -U 5551 ; WX 743 ; N uni15AF ; G 2109 -U 5598 ; WX 830 ; N uni15DE ; G 2110 -U 5601 ; WX 830 ; N uni15E1 ; G 2111 -U 5702 ; WX 496 ; N uni1646 ; G 2112 -U 5703 ; WX 496 ; N uni1647 ; G 2113 -U 5742 ; WX 413 ; N uni166E ; G 2114 -U 5743 ; WX 1238 ; N uni166F ; G 2115 -U 5744 ; WX 1591 ; N uni1670 ; G 2116 -U 5745 ; WX 2016 ; N uni1671 ; G 2117 -U 5746 ; WX 2016 ; N uni1672 ; G 2118 -U 5747 ; WX 1720 ; N uni1673 ; G 2119 -U 5748 ; WX 1678 ; N uni1674 ; G 2120 -U 5749 ; WX 2016 ; N uni1675 ; G 2121 -U 5750 ; WX 2016 ; N uni1676 ; G 2122 -U 5760 ; WX 543 ; N uni1680 ; G 2123 -U 5761 ; WX 637 ; N uni1681 ; G 2124 -U 5762 ; WX 945 ; N uni1682 ; G 2125 -U 5763 ; WX 1254 ; N uni1683 ; G 2126 -U 5764 ; WX 1563 ; N uni1684 ; G 2127 -U 5765 ; WX 1871 ; N uni1685 ; G 2128 -U 5766 ; WX 627 ; N uni1686 ; G 2129 -U 5767 ; WX 936 ; N uni1687 ; G 2130 -U 5768 ; WX 1254 ; N uni1688 ; G 2131 -U 5769 ; WX 1559 ; N uni1689 ; G 2132 -U 5770 ; WX 1871 ; N uni168A ; G 2133 -U 5771 ; WX 569 ; N uni168B ; G 2134 -U 5772 ; WX 877 ; N uni168C ; G 2135 -U 5773 ; WX 1187 ; N uni168D ; G 2136 -U 5774 ; WX 1497 ; N uni168E ; G 2137 -U 5775 ; WX 1807 ; N uni168F ; G 2138 -U 5776 ; WX 637 ; N uni1690 ; G 2139 -U 5777 ; WX 945 ; N uni1691 ; G 2140 -U 5778 ; WX 1240 ; N uni1692 ; G 2141 -U 5779 ; WX 1555 ; N uni1693 ; G 2142 -U 5780 ; WX 1871 ; N uni1694 ; G 2143 -U 5781 ; WX 569 ; N uni1695 ; G 2144 -U 5782 ; WX 569 ; N uni1696 ; G 2145 -U 5783 ; WX 789 ; N uni1697 ; G 2146 -U 5784 ; WX 1234 ; N uni1698 ; G 2147 -U 5785 ; WX 1559 ; N uni1699 ; G 2148 -U 5786 ; WX 740 ; N uni169A ; G 2149 -U 5787 ; WX 638 ; N uni169B ; G 2150 -U 5788 ; WX 638 ; N uni169C ; G 2151 -U 7424 ; WX 652 ; N uni1D00 ; G 2152 -U 7425 ; WX 833 ; N uni1D01 ; G 2153 -U 7426 ; WX 1048 ; N uni1D02 ; G 2154 -U 7427 ; WX 608 ; N uni1D03 ; G 2155 -U 7428 ; WX 593 ; N uni1D04 ; G 2156 -U 7429 ; WX 676 ; N uni1D05 ; G 2157 -U 7430 ; WX 676 ; N uni1D06 ; G 2158 -U 7431 ; WX 559 ; N uni1D07 ; G 2159 -U 7432 ; WX 557 ; N uni1D08 ; G 2160 -U 7433 ; WX 343 ; N uni1D09 ; G 2161 -U 7434 ; WX 494 ; N uni1D0A ; G 2162 -U 7435 ; WX 665 ; N uni1D0B ; G 2163 -U 7436 ; WX 539 ; N uni1D0C ; G 2164 -U 7437 ; WX 817 ; N uni1D0D ; G 2165 -U 7438 ; WX 701 ; N uni1D0E ; G 2166 -U 7439 ; WX 687 ; N uni1D0F ; G 2167 -U 7440 ; WX 593 ; N uni1D10 ; G 2168 -U 7441 ; WX 660 ; N uni1D11 ; G 2169 -U 7442 ; WX 660 ; N uni1D12 ; G 2170 -U 7443 ; WX 660 ; N uni1D13 ; G 2171 -U 7444 ; WX 1094 ; N uni1D14 ; G 2172 -U 7446 ; WX 687 ; N uni1D16 ; G 2173 -U 7447 ; WX 687 ; N uni1D17 ; G 2174 -U 7448 ; WX 556 ; N uni1D18 ; G 2175 -U 7449 ; WX 642 ; N uni1D19 ; G 2176 -U 7450 ; WX 642 ; N uni1D1A ; G 2177 -U 7451 ; WX 580 ; N uni1D1B ; G 2178 -U 7452 ; WX 634 ; N uni1D1C ; G 2179 -U 7453 ; WX 737 ; N uni1D1D ; G 2180 -U 7454 ; WX 948 ; N uni1D1E ; G 2181 -U 7455 ; WX 695 ; N uni1D1F ; G 2182 -U 7456 ; WX 652 ; N uni1D20 ; G 2183 -U 7457 ; WX 924 ; N uni1D21 ; G 2184 -U 7458 ; WX 582 ; N uni1D22 ; G 2185 -U 7459 ; WX 646 ; N uni1D23 ; G 2186 -U 7462 ; WX 539 ; N uni1D26 ; G 2187 -U 7463 ; WX 652 ; N uni1D27 ; G 2188 -U 7464 ; WX 691 ; N uni1D28 ; G 2189 -U 7465 ; WX 556 ; N uni1D29 ; G 2190 -U 7466 ; WX 781 ; N uni1D2A ; G 2191 -U 7467 ; WX 732 ; N uni1D2B ; G 2192 -U 7468 ; WX 487 ; N uni1D2C ; G 2193 -U 7469 ; WX 683 ; N uni1D2D ; G 2194 -U 7470 ; WX 480 ; N uni1D2E ; G 2195 -U 7472 ; WX 523 ; N uni1D30 ; G 2196 -U 7473 ; WX 430 ; N uni1D31 ; G 2197 -U 7474 ; WX 430 ; N uni1D32 ; G 2198 -U 7475 ; WX 517 ; N uni1D33 ; G 2199 -U 7476 ; WX 527 ; N uni1D34 ; G 2200 -U 7477 ; WX 234 ; N uni1D35 ; G 2201 -U 7478 ; WX 234 ; N uni1D36 ; G 2202 -U 7479 ; WX 488 ; N uni1D37 ; G 2203 -U 7480 ; WX 401 ; N uni1D38 ; G 2204 -U 7481 ; WX 626 ; N uni1D39 ; G 2205 -U 7482 ; WX 527 ; N uni1D3A ; G 2206 -U 7483 ; WX 527 ; N uni1D3B ; G 2207 -U 7484 ; WX 535 ; N uni1D3C ; G 2208 -U 7485 ; WX 509 ; N uni1D3D ; G 2209 -U 7486 ; WX 461 ; N uni1D3E ; G 2210 -U 7487 ; WX 485 ; N uni1D3F ; G 2211 -U 7488 ; WX 430 ; N uni1D40 ; G 2212 -U 7489 ; WX 511 ; N uni1D41 ; G 2213 -U 7490 ; WX 695 ; N uni1D42 ; G 2214 -U 7491 ; WX 458 ; N uni1D43 ; G 2215 -U 7492 ; WX 458 ; N uni1D44 ; G 2216 -U 7493 ; WX 479 ; N uni1D45 ; G 2217 -U 7494 ; WX 712 ; N uni1D46 ; G 2218 -U 7495 ; WX 479 ; N uni1D47 ; G 2219 -U 7496 ; WX 479 ; N uni1D48 ; G 2220 -U 7497 ; WX 479 ; N uni1D49 ; G 2221 -U 7498 ; WX 479 ; N uni1D4A ; G 2222 -U 7499 ; WX 386 ; N uni1D4B ; G 2223 -U 7500 ; WX 386 ; N uni1D4C ; G 2224 -U 7501 ; WX 479 ; N uni1D4D ; G 2225 -U 7502 ; WX 219 ; N uni1D4E ; G 2226 -U 7503 ; WX 487 ; N uni1D4F ; G 2227 -U 7504 ; WX 664 ; N uni1D50 ; G 2228 -U 7505 ; WX 456 ; N uni1D51 ; G 2229 -U 7506 ; WX 488 ; N uni1D52 ; G 2230 -U 7507 ; WX 414 ; N uni1D53 ; G 2231 -U 7508 ; WX 488 ; N uni1D54 ; G 2232 -U 7509 ; WX 488 ; N uni1D55 ; G 2233 -U 7510 ; WX 479 ; N uni1D56 ; G 2234 -U 7511 ; WX 388 ; N uni1D57 ; G 2235 -U 7512 ; WX 456 ; N uni1D58 ; G 2236 -U 7513 ; WX 462 ; N uni1D59 ; G 2237 -U 7514 ; WX 664 ; N uni1D5A ; G 2238 -U 7515 ; WX 501 ; N uni1D5B ; G 2239 -U 7517 ; WX 451 ; N uni1D5D ; G 2240 -U 7518 ; WX 429 ; N uni1D5E ; G 2241 -U 7519 ; WX 433 ; N uni1D5F ; G 2242 -U 7520 ; WX 493 ; N uni1D60 ; G 2243 -U 7521 ; WX 406 ; N uni1D61 ; G 2244 -U 7522 ; WX 219 ; N uni1D62 ; G 2245 -U 7523 ; WX 315 ; N uni1D63 ; G 2246 -U 7524 ; WX 456 ; N uni1D64 ; G 2247 -U 7525 ; WX 501 ; N uni1D65 ; G 2248 -U 7526 ; WX 451 ; N uni1D66 ; G 2249 -U 7527 ; WX 429 ; N uni1D67 ; G 2250 -U 7528 ; WX 451 ; N uni1D68 ; G 2251 -U 7529 ; WX 493 ; N uni1D69 ; G 2252 -U 7530 ; WX 406 ; N uni1D6A ; G 2253 -U 7543 ; WX 716 ; N uni1D77 ; G 2254 -U 7544 ; WX 527 ; N uni1D78 ; G 2255 -U 7547 ; WX 545 ; N uni1D7B ; G 2256 -U 7549 ; WX 747 ; N uni1D7D ; G 2257 -U 7557 ; WX 514 ; N uni1D85 ; G 2258 -U 7579 ; WX 479 ; N uni1D9B ; G 2259 -U 7580 ; WX 414 ; N uni1D9C ; G 2260 -U 7581 ; WX 414 ; N uni1D9D ; G 2261 -U 7582 ; WX 488 ; N uni1D9E ; G 2262 -U 7583 ; WX 386 ; N uni1D9F ; G 2263 -U 7584 ; WX 377 ; N uni1DA0 ; G 2264 -U 7585 ; WX 348 ; N uni1DA1 ; G 2265 -U 7586 ; WX 479 ; N uni1DA2 ; G 2266 -U 7587 ; WX 456 ; N uni1DA3 ; G 2267 -U 7588 ; WX 347 ; N uni1DA4 ; G 2268 -U 7589 ; WX 281 ; N uni1DA5 ; G 2269 -U 7590 ; WX 347 ; N uni1DA6 ; G 2270 -U 7591 ; WX 347 ; N uni1DA7 ; G 2271 -U 7592 ; WX 431 ; N uni1DA8 ; G 2272 -U 7593 ; WX 326 ; N uni1DA9 ; G 2273 -U 7594 ; WX 330 ; N uni1DAA ; G 2274 -U 7595 ; WX 370 ; N uni1DAB ; G 2275 -U 7596 ; WX 664 ; N uni1DAC ; G 2276 -U 7597 ; WX 664 ; N uni1DAD ; G 2277 -U 7598 ; WX 562 ; N uni1DAE ; G 2278 -U 7599 ; WX 562 ; N uni1DAF ; G 2279 -U 7600 ; WX 448 ; N uni1DB0 ; G 2280 -U 7601 ; WX 488 ; N uni1DB1 ; G 2281 -U 7602 ; WX 542 ; N uni1DB2 ; G 2282 -U 7603 ; WX 422 ; N uni1DB3 ; G 2283 -U 7604 ; WX 396 ; N uni1DB4 ; G 2284 -U 7605 ; WX 388 ; N uni1DB5 ; G 2285 -U 7606 ; WX 583 ; N uni1DB6 ; G 2286 -U 7607 ; WX 494 ; N uni1DB7 ; G 2287 -U 7608 ; WX 399 ; N uni1DB8 ; G 2288 -U 7609 ; WX 451 ; N uni1DB9 ; G 2289 -U 7610 ; WX 501 ; N uni1DBA ; G 2290 -U 7611 ; WX 417 ; N uni1DBB ; G 2291 -U 7612 ; WX 523 ; N uni1DBC ; G 2292 -U 7613 ; WX 470 ; N uni1DBD ; G 2293 -U 7614 ; WX 455 ; N uni1DBE ; G 2294 -U 7615 ; WX 425 ; N uni1DBF ; G 2295 -U 7620 ; WX 0 ; N uni1DC4 ; G 2296 -U 7621 ; WX 0 ; N uni1DC5 ; G 2297 -U 7622 ; WX 0 ; N uni1DC6 ; G 2298 -U 7623 ; WX 0 ; N uni1DC7 ; G 2299 -U 7624 ; WX 0 ; N uni1DC8 ; G 2300 -U 7625 ; WX 0 ; N uni1DC9 ; G 2301 -U 7680 ; WX 774 ; N uni1E00 ; G 2302 -U 7681 ; WX 675 ; N uni1E01 ; G 2303 -U 7682 ; WX 762 ; N uni1E02 ; G 2304 -U 7683 ; WX 716 ; N uni1E03 ; G 2305 -U 7684 ; WX 762 ; N uni1E04 ; G 2306 -U 7685 ; WX 716 ; N uni1E05 ; G 2307 -U 7686 ; WX 762 ; N uni1E06 ; G 2308 -U 7687 ; WX 716 ; N uni1E07 ; G 2309 -U 7688 ; WX 734 ; N uni1E08 ; G 2310 -U 7689 ; WX 593 ; N uni1E09 ; G 2311 -U 7690 ; WX 830 ; N uni1E0A ; G 2312 -U 7691 ; WX 716 ; N uni1E0B ; G 2313 -U 7692 ; WX 830 ; N uni1E0C ; G 2314 -U 7693 ; WX 716 ; N uni1E0D ; G 2315 -U 7694 ; WX 830 ; N uni1E0E ; G 2316 -U 7695 ; WX 716 ; N uni1E0F ; G 2317 -U 7696 ; WX 830 ; N uni1E10 ; G 2318 -U 7697 ; WX 716 ; N uni1E11 ; G 2319 -U 7698 ; WX 830 ; N uni1E12 ; G 2320 -U 7699 ; WX 716 ; N uni1E13 ; G 2321 -U 7700 ; WX 683 ; N uni1E14 ; G 2322 -U 7701 ; WX 678 ; N uni1E15 ; G 2323 -U 7702 ; WX 683 ; N uni1E16 ; G 2324 -U 7703 ; WX 678 ; N uni1E17 ; G 2325 -U 7704 ; WX 683 ; N uni1E18 ; G 2326 -U 7705 ; WX 678 ; N uni1E19 ; G 2327 -U 7706 ; WX 683 ; N uni1E1A ; G 2328 -U 7707 ; WX 678 ; N uni1E1B ; G 2329 -U 7708 ; WX 683 ; N uni1E1C ; G 2330 -U 7709 ; WX 678 ; N uni1E1D ; G 2331 -U 7710 ; WX 683 ; N uni1E1E ; G 2332 -U 7711 ; WX 435 ; N uni1E1F ; G 2333 -U 7712 ; WX 821 ; N uni1E20 ; G 2334 -U 7713 ; WX 716 ; N uni1E21 ; G 2335 -U 7714 ; WX 837 ; N uni1E22 ; G 2336 -U 7715 ; WX 712 ; N uni1E23 ; G 2337 -U 7716 ; WX 837 ; N uni1E24 ; G 2338 -U 7717 ; WX 712 ; N uni1E25 ; G 2339 -U 7718 ; WX 837 ; N uni1E26 ; G 2340 -U 7719 ; WX 712 ; N uni1E27 ; G 2341 -U 7720 ; WX 837 ; N uni1E28 ; G 2342 -U 7721 ; WX 712 ; N uni1E29 ; G 2343 -U 7722 ; WX 837 ; N uni1E2A ; G 2344 -U 7723 ; WX 712 ; N uni1E2B ; G 2345 -U 7724 ; WX 372 ; N uni1E2C ; G 2346 -U 7725 ; WX 343 ; N uni1E2D ; G 2347 -U 7726 ; WX 372 ; N uni1E2E ; G 2348 -U 7727 ; WX 343 ; N uni1E2F ; G 2349 -U 7728 ; WX 775 ; N uni1E30 ; G 2350 -U 7729 ; WX 665 ; N uni1E31 ; G 2351 -U 7730 ; WX 775 ; N uni1E32 ; G 2352 -U 7731 ; WX 665 ; N uni1E33 ; G 2353 -U 7732 ; WX 775 ; N uni1E34 ; G 2354 -U 7733 ; WX 665 ; N uni1E35 ; G 2355 -U 7734 ; WX 637 ; N uni1E36 ; G 2356 -U 7735 ; WX 343 ; N uni1E37 ; G 2357 -U 7736 ; WX 637 ; N uni1E38 ; G 2358 -U 7737 ; WX 343 ; N uni1E39 ; G 2359 -U 7738 ; WX 637 ; N uni1E3A ; G 2360 -U 7739 ; WX 343 ; N uni1E3B ; G 2361 -U 7740 ; WX 637 ; N uni1E3C ; G 2362 -U 7741 ; WX 343 ; N uni1E3D ; G 2363 -U 7742 ; WX 995 ; N uni1E3E ; G 2364 -U 7743 ; WX 1042 ; N uni1E3F ; G 2365 -U 7744 ; WX 995 ; N uni1E40 ; G 2366 -U 7745 ; WX 1042 ; N uni1E41 ; G 2367 -U 7746 ; WX 995 ; N uni1E42 ; G 2368 -U 7747 ; WX 1042 ; N uni1E43 ; G 2369 -U 7748 ; WX 837 ; N uni1E44 ; G 2370 -U 7749 ; WX 712 ; N uni1E45 ; G 2371 -U 7750 ; WX 837 ; N uni1E46 ; G 2372 -U 7751 ; WX 712 ; N uni1E47 ; G 2373 -U 7752 ; WX 837 ; N uni1E48 ; G 2374 -U 7753 ; WX 712 ; N uni1E49 ; G 2375 -U 7754 ; WX 837 ; N uni1E4A ; G 2376 -U 7755 ; WX 712 ; N uni1E4B ; G 2377 -U 7756 ; WX 850 ; N uni1E4C ; G 2378 -U 7757 ; WX 687 ; N uni1E4D ; G 2379 -U 7758 ; WX 850 ; N uni1E4E ; G 2380 -U 7759 ; WX 687 ; N uni1E4F ; G 2381 -U 7760 ; WX 850 ; N uni1E50 ; G 2382 -U 7761 ; WX 687 ; N uni1E51 ; G 2383 -U 7762 ; WX 850 ; N uni1E52 ; G 2384 -U 7763 ; WX 687 ; N uni1E53 ; G 2385 -U 7764 ; WX 733 ; N uni1E54 ; G 2386 -U 7765 ; WX 716 ; N uni1E55 ; G 2387 -U 7766 ; WX 733 ; N uni1E56 ; G 2388 -U 7767 ; WX 716 ; N uni1E57 ; G 2389 -U 7768 ; WX 770 ; N uni1E58 ; G 2390 -U 7769 ; WX 493 ; N uni1E59 ; G 2391 -U 7770 ; WX 770 ; N uni1E5A ; G 2392 -U 7771 ; WX 493 ; N uni1E5B ; G 2393 -U 7772 ; WX 770 ; N uni1E5C ; G 2394 -U 7773 ; WX 493 ; N uni1E5D ; G 2395 -U 7774 ; WX 770 ; N uni1E5E ; G 2396 -U 7775 ; WX 493 ; N uni1E5F ; G 2397 -U 7776 ; WX 720 ; N uni1E60 ; G 2398 -U 7777 ; WX 595 ; N uni1E61 ; G 2399 -U 7778 ; WX 720 ; N uni1E62 ; G 2400 -U 7779 ; WX 595 ; N uni1E63 ; G 2401 -U 7780 ; WX 720 ; N uni1E64 ; G 2402 -U 7781 ; WX 595 ; N uni1E65 ; G 2403 -U 7782 ; WX 720 ; N uni1E66 ; G 2404 -U 7783 ; WX 595 ; N uni1E67 ; G 2405 -U 7784 ; WX 720 ; N uni1E68 ; G 2406 -U 7785 ; WX 595 ; N uni1E69 ; G 2407 -U 7786 ; WX 682 ; N uni1E6A ; G 2408 -U 7787 ; WX 478 ; N uni1E6B ; G 2409 -U 7788 ; WX 682 ; N uni1E6C ; G 2410 -U 7789 ; WX 478 ; N uni1E6D ; G 2411 -U 7790 ; WX 682 ; N uni1E6E ; G 2412 -U 7791 ; WX 478 ; N uni1E6F ; G 2413 -U 7792 ; WX 682 ; N uni1E70 ; G 2414 -U 7793 ; WX 478 ; N uni1E71 ; G 2415 -U 7794 ; WX 812 ; N uni1E72 ; G 2416 -U 7795 ; WX 712 ; N uni1E73 ; G 2417 -U 7796 ; WX 812 ; N uni1E74 ; G 2418 -U 7797 ; WX 712 ; N uni1E75 ; G 2419 -U 7798 ; WX 812 ; N uni1E76 ; G 2420 -U 7799 ; WX 712 ; N uni1E77 ; G 2421 -U 7800 ; WX 812 ; N uni1E78 ; G 2422 -U 7801 ; WX 712 ; N uni1E79 ; G 2423 -U 7802 ; WX 812 ; N uni1E7A ; G 2424 -U 7803 ; WX 712 ; N uni1E7B ; G 2425 -U 7804 ; WX 774 ; N uni1E7C ; G 2426 -U 7805 ; WX 652 ; N uni1E7D ; G 2427 -U 7806 ; WX 774 ; N uni1E7E ; G 2428 -U 7807 ; WX 652 ; N uni1E7F ; G 2429 -U 7808 ; WX 1103 ; N Wgrave ; G 2430 -U 7809 ; WX 924 ; N wgrave ; G 2431 -U 7810 ; WX 1103 ; N Wacute ; G 2432 -U 7811 ; WX 924 ; N wacute ; G 2433 -U 7812 ; WX 1103 ; N Wdieresis ; G 2434 -U 7813 ; WX 924 ; N wdieresis ; G 2435 -U 7814 ; WX 1103 ; N uni1E86 ; G 2436 -U 7815 ; WX 924 ; N uni1E87 ; G 2437 -U 7816 ; WX 1103 ; N uni1E88 ; G 2438 -U 7817 ; WX 924 ; N uni1E89 ; G 2439 -U 7818 ; WX 771 ; N uni1E8A ; G 2440 -U 7819 ; WX 645 ; N uni1E8B ; G 2441 -U 7820 ; WX 771 ; N uni1E8C ; G 2442 -U 7821 ; WX 645 ; N uni1E8D ; G 2443 -U 7822 ; WX 724 ; N uni1E8E ; G 2444 -U 7823 ; WX 652 ; N uni1E8F ; G 2445 -U 7824 ; WX 725 ; N uni1E90 ; G 2446 -U 7825 ; WX 582 ; N uni1E91 ; G 2447 -U 7826 ; WX 725 ; N uni1E92 ; G 2448 -U 7827 ; WX 582 ; N uni1E93 ; G 2449 -U 7828 ; WX 725 ; N uni1E94 ; G 2450 -U 7829 ; WX 582 ; N uni1E95 ; G 2451 -U 7830 ; WX 712 ; N uni1E96 ; G 2452 -U 7831 ; WX 478 ; N uni1E97 ; G 2453 -U 7832 ; WX 924 ; N uni1E98 ; G 2454 -U 7833 ; WX 652 ; N uni1E99 ; G 2455 -U 7834 ; WX 675 ; N uni1E9A ; G 2456 -U 7835 ; WX 435 ; N uni1E9B ; G 2457 -U 7836 ; WX 435 ; N uni1E9C ; G 2458 -U 7837 ; WX 435 ; N uni1E9D ; G 2459 -U 7838 ; WX 896 ; N uni1E9E ; G 2460 -U 7839 ; WX 687 ; N uni1E9F ; G 2461 -U 7840 ; WX 774 ; N uni1EA0 ; G 2462 -U 7841 ; WX 675 ; N uni1EA1 ; G 2463 -U 7842 ; WX 774 ; N uni1EA2 ; G 2464 -U 7843 ; WX 675 ; N uni1EA3 ; G 2465 -U 7844 ; WX 774 ; N uni1EA4 ; G 2466 -U 7845 ; WX 675 ; N uni1EA5 ; G 2467 -U 7846 ; WX 774 ; N uni1EA6 ; G 2468 -U 7847 ; WX 675 ; N uni1EA7 ; G 2469 -U 7848 ; WX 774 ; N uni1EA8 ; G 2470 -U 7849 ; WX 675 ; N uni1EA9 ; G 2471 -U 7850 ; WX 774 ; N uni1EAA ; G 2472 -U 7851 ; WX 675 ; N uni1EAB ; G 2473 -U 7852 ; WX 774 ; N uni1EAC ; G 2474 -U 7853 ; WX 675 ; N uni1EAD ; G 2475 -U 7854 ; WX 774 ; N uni1EAE ; G 2476 -U 7855 ; WX 675 ; N uni1EAF ; G 2477 -U 7856 ; WX 774 ; N uni1EB0 ; G 2478 -U 7857 ; WX 675 ; N uni1EB1 ; G 2479 -U 7858 ; WX 774 ; N uni1EB2 ; G 2480 -U 7859 ; WX 675 ; N uni1EB3 ; G 2481 -U 7860 ; WX 774 ; N uni1EB4 ; G 2482 -U 7861 ; WX 675 ; N uni1EB5 ; G 2483 -U 7862 ; WX 774 ; N uni1EB6 ; G 2484 -U 7863 ; WX 675 ; N uni1EB7 ; G 2485 -U 7864 ; WX 683 ; N uni1EB8 ; G 2486 -U 7865 ; WX 678 ; N uni1EB9 ; G 2487 -U 7866 ; WX 683 ; N uni1EBA ; G 2488 -U 7867 ; WX 678 ; N uni1EBB ; G 2489 -U 7868 ; WX 683 ; N uni1EBC ; G 2490 -U 7869 ; WX 678 ; N uni1EBD ; G 2491 -U 7870 ; WX 683 ; N uni1EBE ; G 2492 -U 7871 ; WX 678 ; N uni1EBF ; G 2493 -U 7872 ; WX 683 ; N uni1EC0 ; G 2494 -U 7873 ; WX 678 ; N uni1EC1 ; G 2495 -U 7874 ; WX 683 ; N uni1EC2 ; G 2496 -U 7875 ; WX 678 ; N uni1EC3 ; G 2497 -U 7876 ; WX 683 ; N uni1EC4 ; G 2498 -U 7877 ; WX 678 ; N uni1EC5 ; G 2499 -U 7878 ; WX 683 ; N uni1EC6 ; G 2500 -U 7879 ; WX 678 ; N uni1EC7 ; G 2501 -U 7880 ; WX 372 ; N uni1EC8 ; G 2502 -U 7881 ; WX 343 ; N uni1EC9 ; G 2503 -U 7882 ; WX 372 ; N uni1ECA ; G 2504 -U 7883 ; WX 343 ; N uni1ECB ; G 2505 -U 7884 ; WX 850 ; N uni1ECC ; G 2506 -U 7885 ; WX 687 ; N uni1ECD ; G 2507 -U 7886 ; WX 850 ; N uni1ECE ; G 2508 -U 7887 ; WX 687 ; N uni1ECF ; G 2509 -U 7888 ; WX 850 ; N uni1ED0 ; G 2510 -U 7889 ; WX 687 ; N uni1ED1 ; G 2511 -U 7890 ; WX 850 ; N uni1ED2 ; G 2512 -U 7891 ; WX 687 ; N uni1ED3 ; G 2513 -U 7892 ; WX 850 ; N uni1ED4 ; G 2514 -U 7893 ; WX 687 ; N uni1ED5 ; G 2515 -U 7894 ; WX 850 ; N uni1ED6 ; G 2516 -U 7895 ; WX 687 ; N uni1ED7 ; G 2517 -U 7896 ; WX 850 ; N uni1ED8 ; G 2518 -U 7897 ; WX 687 ; N uni1ED9 ; G 2519 -U 7898 ; WX 874 ; N uni1EDA ; G 2520 -U 7899 ; WX 687 ; N uni1EDB ; G 2521 -U 7900 ; WX 874 ; N uni1EDC ; G 2522 -U 7901 ; WX 687 ; N uni1EDD ; G 2523 -U 7902 ; WX 874 ; N uni1EDE ; G 2524 -U 7903 ; WX 687 ; N uni1EDF ; G 2525 -U 7904 ; WX 874 ; N uni1EE0 ; G 2526 -U 7905 ; WX 687 ; N uni1EE1 ; G 2527 -U 7906 ; WX 874 ; N uni1EE2 ; G 2528 -U 7907 ; WX 687 ; N uni1EE3 ; G 2529 -U 7908 ; WX 812 ; N uni1EE4 ; G 2530 -U 7909 ; WX 712 ; N uni1EE5 ; G 2531 -U 7910 ; WX 812 ; N uni1EE6 ; G 2532 -U 7911 ; WX 712 ; N uni1EE7 ; G 2533 -U 7912 ; WX 835 ; N uni1EE8 ; G 2534 -U 7913 ; WX 712 ; N uni1EE9 ; G 2535 -U 7914 ; WX 835 ; N uni1EEA ; G 2536 -U 7915 ; WX 712 ; N uni1EEB ; G 2537 -U 7916 ; WX 835 ; N uni1EEC ; G 2538 -U 7917 ; WX 712 ; N uni1EED ; G 2539 -U 7918 ; WX 835 ; N uni1EEE ; G 2540 -U 7919 ; WX 712 ; N uni1EEF ; G 2541 -U 7920 ; WX 835 ; N uni1EF0 ; G 2542 -U 7921 ; WX 712 ; N uni1EF1 ; G 2543 -U 7922 ; WX 724 ; N Ygrave ; G 2544 -U 7923 ; WX 652 ; N ygrave ; G 2545 -U 7924 ; WX 724 ; N uni1EF4 ; G 2546 -U 7925 ; WX 652 ; N uni1EF5 ; G 2547 -U 7926 ; WX 724 ; N uni1EF6 ; G 2548 -U 7927 ; WX 652 ; N uni1EF7 ; G 2549 -U 7928 ; WX 724 ; N uni1EF8 ; G 2550 -U 7929 ; WX 652 ; N uni1EF9 ; G 2551 -U 7930 ; WX 953 ; N uni1EFA ; G 2552 -U 7931 ; WX 644 ; N uni1EFB ; G 2553 -U 7936 ; WX 687 ; N uni1F00 ; G 2554 -U 7937 ; WX 687 ; N uni1F01 ; G 2555 -U 7938 ; WX 687 ; N uni1F02 ; G 2556 -U 7939 ; WX 687 ; N uni1F03 ; G 2557 -U 7940 ; WX 687 ; N uni1F04 ; G 2558 -U 7941 ; WX 687 ; N uni1F05 ; G 2559 -U 7942 ; WX 687 ; N uni1F06 ; G 2560 -U 7943 ; WX 687 ; N uni1F07 ; G 2561 -U 7944 ; WX 774 ; N uni1F08 ; G 2562 -U 7945 ; WX 774 ; N uni1F09 ; G 2563 -U 7946 ; WX 1041 ; N uni1F0A ; G 2564 -U 7947 ; WX 1043 ; N uni1F0B ; G 2565 -U 7948 ; WX 935 ; N uni1F0C ; G 2566 -U 7949 ; WX 963 ; N uni1F0D ; G 2567 -U 7950 ; WX 835 ; N uni1F0E ; G 2568 -U 7951 ; WX 859 ; N uni1F0F ; G 2569 -U 7952 ; WX 557 ; N uni1F10 ; G 2570 -U 7953 ; WX 557 ; N uni1F11 ; G 2571 -U 7954 ; WX 557 ; N uni1F12 ; G 2572 -U 7955 ; WX 557 ; N uni1F13 ; G 2573 -U 7956 ; WX 557 ; N uni1F14 ; G 2574 -U 7957 ; WX 557 ; N uni1F15 ; G 2575 -U 7960 ; WX 792 ; N uni1F18 ; G 2576 -U 7961 ; WX 794 ; N uni1F19 ; G 2577 -U 7962 ; WX 1100 ; N uni1F1A ; G 2578 -U 7963 ; WX 1096 ; N uni1F1B ; G 2579 -U 7964 ; WX 1023 ; N uni1F1C ; G 2580 -U 7965 ; WX 1052 ; N uni1F1D ; G 2581 -U 7968 ; WX 712 ; N uni1F20 ; G 2582 -U 7969 ; WX 712 ; N uni1F21 ; G 2583 -U 7970 ; WX 712 ; N uni1F22 ; G 2584 -U 7971 ; WX 712 ; N uni1F23 ; G 2585 -U 7972 ; WX 712 ; N uni1F24 ; G 2586 -U 7973 ; WX 712 ; N uni1F25 ; G 2587 -U 7974 ; WX 712 ; N uni1F26 ; G 2588 -U 7975 ; WX 712 ; N uni1F27 ; G 2589 -U 7976 ; WX 945 ; N uni1F28 ; G 2590 -U 7977 ; WX 951 ; N uni1F29 ; G 2591 -U 7978 ; WX 1250 ; N uni1F2A ; G 2592 -U 7979 ; WX 1250 ; N uni1F2B ; G 2593 -U 7980 ; WX 1180 ; N uni1F2C ; G 2594 -U 7981 ; WX 1206 ; N uni1F2D ; G 2595 -U 7982 ; WX 1054 ; N uni1F2E ; G 2596 -U 7983 ; WX 1063 ; N uni1F2F ; G 2597 -U 7984 ; WX 390 ; N uni1F30 ; G 2598 -U 7985 ; WX 390 ; N uni1F31 ; G 2599 -U 7986 ; WX 390 ; N uni1F32 ; G 2600 -U 7987 ; WX 390 ; N uni1F33 ; G 2601 -U 7988 ; WX 390 ; N uni1F34 ; G 2602 -U 7989 ; WX 390 ; N uni1F35 ; G 2603 -U 7990 ; WX 390 ; N uni1F36 ; G 2604 -U 7991 ; WX 390 ; N uni1F37 ; G 2605 -U 7992 ; WX 483 ; N uni1F38 ; G 2606 -U 7993 ; WX 489 ; N uni1F39 ; G 2607 -U 7994 ; WX 777 ; N uni1F3A ; G 2608 -U 7995 ; WX 785 ; N uni1F3B ; G 2609 -U 7996 ; WX 712 ; N uni1F3C ; G 2610 -U 7997 ; WX 738 ; N uni1F3D ; G 2611 -U 7998 ; WX 604 ; N uni1F3E ; G 2612 -U 7999 ; WX 604 ; N uni1F3F ; G 2613 -U 8000 ; WX 687 ; N uni1F40 ; G 2614 -U 8001 ; WX 687 ; N uni1F41 ; G 2615 -U 8002 ; WX 687 ; N uni1F42 ; G 2616 -U 8003 ; WX 687 ; N uni1F43 ; G 2617 -U 8004 ; WX 687 ; N uni1F44 ; G 2618 -U 8005 ; WX 687 ; N uni1F45 ; G 2619 -U 8008 ; WX 892 ; N uni1F48 ; G 2620 -U 8009 ; WX 933 ; N uni1F49 ; G 2621 -U 8010 ; WX 1221 ; N uni1F4A ; G 2622 -U 8011 ; WX 1224 ; N uni1F4B ; G 2623 -U 8012 ; WX 1053 ; N uni1F4C ; G 2624 -U 8013 ; WX 1082 ; N uni1F4D ; G 2625 -U 8016 ; WX 675 ; N uni1F50 ; G 2626 -U 8017 ; WX 675 ; N uni1F51 ; G 2627 -U 8018 ; WX 675 ; N uni1F52 ; G 2628 -U 8019 ; WX 675 ; N uni1F53 ; G 2629 -U 8020 ; WX 675 ; N uni1F54 ; G 2630 -U 8021 ; WX 675 ; N uni1F55 ; G 2631 -U 8022 ; WX 675 ; N uni1F56 ; G 2632 -U 8023 ; WX 675 ; N uni1F57 ; G 2633 -U 8025 ; WX 930 ; N uni1F59 ; G 2634 -U 8027 ; WX 1184 ; N uni1F5B ; G 2635 -U 8029 ; WX 1199 ; N uni1F5D ; G 2636 -U 8031 ; WX 1049 ; N uni1F5F ; G 2637 -U 8032 ; WX 869 ; N uni1F60 ; G 2638 -U 8033 ; WX 869 ; N uni1F61 ; G 2639 -U 8034 ; WX 869 ; N uni1F62 ; G 2640 -U 8035 ; WX 869 ; N uni1F63 ; G 2641 -U 8036 ; WX 869 ; N uni1F64 ; G 2642 -U 8037 ; WX 869 ; N uni1F65 ; G 2643 -U 8038 ; WX 869 ; N uni1F66 ; G 2644 -U 8039 ; WX 869 ; N uni1F67 ; G 2645 -U 8040 ; WX 909 ; N uni1F68 ; G 2646 -U 8041 ; WX 958 ; N uni1F69 ; G 2647 -U 8042 ; WX 1246 ; N uni1F6A ; G 2648 -U 8043 ; WX 1251 ; N uni1F6B ; G 2649 -U 8044 ; WX 1076 ; N uni1F6C ; G 2650 -U 8045 ; WX 1105 ; N uni1F6D ; G 2651 -U 8046 ; WX 1028 ; N uni1F6E ; G 2652 -U 8047 ; WX 1076 ; N uni1F6F ; G 2653 -U 8048 ; WX 687 ; N uni1F70 ; G 2654 -U 8049 ; WX 687 ; N uni1F71 ; G 2655 -U 8050 ; WX 557 ; N uni1F72 ; G 2656 -U 8051 ; WX 557 ; N uni1F73 ; G 2657 -U 8052 ; WX 712 ; N uni1F74 ; G 2658 -U 8053 ; WX 712 ; N uni1F75 ; G 2659 -U 8054 ; WX 390 ; N uni1F76 ; G 2660 -U 8055 ; WX 390 ; N uni1F77 ; G 2661 -U 8056 ; WX 687 ; N uni1F78 ; G 2662 -U 8057 ; WX 687 ; N uni1F79 ; G 2663 -U 8058 ; WX 675 ; N uni1F7A ; G 2664 -U 8059 ; WX 675 ; N uni1F7B ; G 2665 -U 8060 ; WX 869 ; N uni1F7C ; G 2666 -U 8061 ; WX 869 ; N uni1F7D ; G 2667 -U 8064 ; WX 687 ; N uni1F80 ; G 2668 -U 8065 ; WX 687 ; N uni1F81 ; G 2669 -U 8066 ; WX 687 ; N uni1F82 ; G 2670 -U 8067 ; WX 687 ; N uni1F83 ; G 2671 -U 8068 ; WX 687 ; N uni1F84 ; G 2672 -U 8069 ; WX 687 ; N uni1F85 ; G 2673 -U 8070 ; WX 687 ; N uni1F86 ; G 2674 -U 8071 ; WX 687 ; N uni1F87 ; G 2675 -U 8072 ; WX 774 ; N uni1F88 ; G 2676 -U 8073 ; WX 774 ; N uni1F89 ; G 2677 -U 8074 ; WX 1041 ; N uni1F8A ; G 2678 -U 8075 ; WX 1043 ; N uni1F8B ; G 2679 -U 8076 ; WX 935 ; N uni1F8C ; G 2680 -U 8077 ; WX 963 ; N uni1F8D ; G 2681 -U 8078 ; WX 835 ; N uni1F8E ; G 2682 -U 8079 ; WX 859 ; N uni1F8F ; G 2683 -U 8080 ; WX 712 ; N uni1F90 ; G 2684 -U 8081 ; WX 712 ; N uni1F91 ; G 2685 -U 8082 ; WX 712 ; N uni1F92 ; G 2686 -U 8083 ; WX 712 ; N uni1F93 ; G 2687 -U 8084 ; WX 712 ; N uni1F94 ; G 2688 -U 8085 ; WX 712 ; N uni1F95 ; G 2689 -U 8086 ; WX 712 ; N uni1F96 ; G 2690 -U 8087 ; WX 712 ; N uni1F97 ; G 2691 -U 8088 ; WX 945 ; N uni1F98 ; G 2692 -U 8089 ; WX 951 ; N uni1F99 ; G 2693 -U 8090 ; WX 1250 ; N uni1F9A ; G 2694 -U 8091 ; WX 1250 ; N uni1F9B ; G 2695 -U 8092 ; WX 1180 ; N uni1F9C ; G 2696 -U 8093 ; WX 1206 ; N uni1F9D ; G 2697 -U 8094 ; WX 1054 ; N uni1F9E ; G 2698 -U 8095 ; WX 1063 ; N uni1F9F ; G 2699 -U 8096 ; WX 869 ; N uni1FA0 ; G 2700 -U 8097 ; WX 869 ; N uni1FA1 ; G 2701 -U 8098 ; WX 869 ; N uni1FA2 ; G 2702 -U 8099 ; WX 869 ; N uni1FA3 ; G 2703 -U 8100 ; WX 869 ; N uni1FA4 ; G 2704 -U 8101 ; WX 869 ; N uni1FA5 ; G 2705 -U 8102 ; WX 869 ; N uni1FA6 ; G 2706 -U 8103 ; WX 869 ; N uni1FA7 ; G 2707 -U 8104 ; WX 909 ; N uni1FA8 ; G 2708 -U 8105 ; WX 958 ; N uni1FA9 ; G 2709 -U 8106 ; WX 1246 ; N uni1FAA ; G 2710 -U 8107 ; WX 1251 ; N uni1FAB ; G 2711 -U 8108 ; WX 1076 ; N uni1FAC ; G 2712 -U 8109 ; WX 1105 ; N uni1FAD ; G 2713 -U 8110 ; WX 1028 ; N uni1FAE ; G 2714 -U 8111 ; WX 1076 ; N uni1FAF ; G 2715 -U 8112 ; WX 687 ; N uni1FB0 ; G 2716 -U 8113 ; WX 687 ; N uni1FB1 ; G 2717 -U 8114 ; WX 687 ; N uni1FB2 ; G 2718 -U 8115 ; WX 687 ; N uni1FB3 ; G 2719 -U 8116 ; WX 687 ; N uni1FB4 ; G 2720 -U 8118 ; WX 687 ; N uni1FB6 ; G 2721 -U 8119 ; WX 687 ; N uni1FB7 ; G 2722 -U 8120 ; WX 774 ; N uni1FB8 ; G 2723 -U 8121 ; WX 774 ; N uni1FB9 ; G 2724 -U 8122 ; WX 876 ; N uni1FBA ; G 2725 -U 8123 ; WX 797 ; N uni1FBB ; G 2726 -U 8124 ; WX 774 ; N uni1FBC ; G 2727 -U 8125 ; WX 500 ; N uni1FBD ; G 2728 -U 8126 ; WX 500 ; N uni1FBE ; G 2729 -U 8127 ; WX 500 ; N uni1FBF ; G 2730 -U 8128 ; WX 500 ; N uni1FC0 ; G 2731 -U 8129 ; WX 500 ; N uni1FC1 ; G 2732 -U 8130 ; WX 712 ; N uni1FC2 ; G 2733 -U 8131 ; WX 712 ; N uni1FC3 ; G 2734 -U 8132 ; WX 712 ; N uni1FC4 ; G 2735 -U 8134 ; WX 712 ; N uni1FC6 ; G 2736 -U 8135 ; WX 712 ; N uni1FC7 ; G 2737 -U 8136 ; WX 929 ; N uni1FC8 ; G 2738 -U 8137 ; WX 846 ; N uni1FC9 ; G 2739 -U 8138 ; WX 1080 ; N uni1FCA ; G 2740 -U 8139 ; WX 1009 ; N uni1FCB ; G 2741 -U 8140 ; WX 837 ; N uni1FCC ; G 2742 -U 8141 ; WX 500 ; N uni1FCD ; G 2743 -U 8142 ; WX 500 ; N uni1FCE ; G 2744 -U 8143 ; WX 500 ; N uni1FCF ; G 2745 -U 8144 ; WX 390 ; N uni1FD0 ; G 2746 -U 8145 ; WX 390 ; N uni1FD1 ; G 2747 -U 8146 ; WX 390 ; N uni1FD2 ; G 2748 -U 8147 ; WX 390 ; N uni1FD3 ; G 2749 -U 8150 ; WX 390 ; N uni1FD6 ; G 2750 -U 8151 ; WX 390 ; N uni1FD7 ; G 2751 -U 8152 ; WX 372 ; N uni1FD8 ; G 2752 -U 8153 ; WX 372 ; N uni1FD9 ; G 2753 -U 8154 ; WX 621 ; N uni1FDA ; G 2754 -U 8155 ; WX 563 ; N uni1FDB ; G 2755 -U 8157 ; WX 500 ; N uni1FDD ; G 2756 -U 8158 ; WX 500 ; N uni1FDE ; G 2757 -U 8159 ; WX 500 ; N uni1FDF ; G 2758 -U 8160 ; WX 675 ; N uni1FE0 ; G 2759 -U 8161 ; WX 675 ; N uni1FE1 ; G 2760 -U 8162 ; WX 675 ; N uni1FE2 ; G 2761 -U 8163 ; WX 675 ; N uni1FE3 ; G 2762 -U 8164 ; WX 716 ; N uni1FE4 ; G 2763 -U 8165 ; WX 716 ; N uni1FE5 ; G 2764 -U 8166 ; WX 675 ; N uni1FE6 ; G 2765 -U 8167 ; WX 675 ; N uni1FE7 ; G 2766 -U 8168 ; WX 724 ; N uni1FE8 ; G 2767 -U 8169 ; WX 724 ; N uni1FE9 ; G 2768 -U 8170 ; WX 1020 ; N uni1FEA ; G 2769 -U 8171 ; WX 980 ; N uni1FEB ; G 2770 -U 8172 ; WX 838 ; N uni1FEC ; G 2771 -U 8173 ; WX 500 ; N uni1FED ; G 2772 -U 8174 ; WX 500 ; N uni1FEE ; G 2773 -U 8175 ; WX 500 ; N uni1FEF ; G 2774 -U 8178 ; WX 869 ; N uni1FF2 ; G 2775 -U 8179 ; WX 869 ; N uni1FF3 ; G 2776 -U 8180 ; WX 869 ; N uni1FF4 ; G 2777 -U 8182 ; WX 869 ; N uni1FF6 ; G 2778 -U 8183 ; WX 869 ; N uni1FF7 ; G 2779 -U 8184 ; WX 1065 ; N uni1FF8 ; G 2780 -U 8185 ; WX 891 ; N uni1FF9 ; G 2781 -U 8186 ; WX 1084 ; N uni1FFA ; G 2782 -U 8187 ; WX 894 ; N uni1FFB ; G 2783 -U 8188 ; WX 850 ; N uni1FFC ; G 2784 -U 8189 ; WX 500 ; N uni1FFD ; G 2785 -U 8190 ; WX 500 ; N uni1FFE ; G 2786 -U 8192 ; WX 500 ; N uni2000 ; G 2787 -U 8193 ; WX 1000 ; N uni2001 ; G 2788 -U 8194 ; WX 500 ; N uni2002 ; G 2789 -U 8195 ; WX 1000 ; N uni2003 ; G 2790 -U 8196 ; WX 330 ; N uni2004 ; G 2791 -U 8197 ; WX 250 ; N uni2005 ; G 2792 -U 8198 ; WX 167 ; N uni2006 ; G 2793 -U 8199 ; WX 696 ; N uni2007 ; G 2794 -U 8200 ; WX 380 ; N uni2008 ; G 2795 -U 8201 ; WX 200 ; N uni2009 ; G 2796 -U 8202 ; WX 100 ; N uni200A ; G 2797 -U 8203 ; WX 0 ; N uni200B ; G 2798 -U 8204 ; WX 0 ; N uni200C ; G 2799 -U 8205 ; WX 0 ; N uni200D ; G 2800 -U 8206 ; WX 0 ; N uni200E ; G 2801 -U 8207 ; WX 0 ; N uni200F ; G 2802 -U 8208 ; WX 415 ; N uni2010 ; G 2803 -U 8209 ; WX 415 ; N uni2011 ; G 2804 -U 8210 ; WX 696 ; N figuredash ; G 2805 -U 8211 ; WX 500 ; N endash ; G 2806 -U 8212 ; WX 1000 ; N emdash ; G 2807 -U 8213 ; WX 1000 ; N uni2015 ; G 2808 -U 8214 ; WX 500 ; N uni2016 ; G 2809 -U 8215 ; WX 500 ; N underscoredbl ; G 2810 -U 8216 ; WX 380 ; N quoteleft ; G 2811 -U 8217 ; WX 380 ; N quoteright ; G 2812 -U 8218 ; WX 380 ; N quotesinglbase ; G 2813 -U 8219 ; WX 380 ; N quotereversed ; G 2814 -U 8220 ; WX 657 ; N quotedblleft ; G 2815 -U 8221 ; WX 657 ; N quotedblright ; G 2816 -U 8222 ; WX 657 ; N quotedblbase ; G 2817 -U 8223 ; WX 657 ; N uni201F ; G 2818 -U 8224 ; WX 500 ; N dagger ; G 2819 -U 8225 ; WX 500 ; N daggerdbl ; G 2820 -U 8226 ; WX 639 ; N bullet ; G 2821 -U 8227 ; WX 639 ; N uni2023 ; G 2822 -U 8228 ; WX 333 ; N onedotenleader ; G 2823 -U 8229 ; WX 667 ; N twodotenleader ; G 2824 -U 8230 ; WX 1000 ; N ellipsis ; G 2825 -U 8231 ; WX 348 ; N uni2027 ; G 2826 -U 8232 ; WX 0 ; N uni2028 ; G 2827 -U 8233 ; WX 0 ; N uni2029 ; G 2828 -U 8234 ; WX 0 ; N uni202A ; G 2829 -U 8235 ; WX 0 ; N uni202B ; G 2830 -U 8236 ; WX 0 ; N uni202C ; G 2831 -U 8237 ; WX 0 ; N uni202D ; G 2832 -U 8238 ; WX 0 ; N uni202E ; G 2833 -U 8239 ; WX 200 ; N uni202F ; G 2834 -U 8240 ; WX 1440 ; N perthousand ; G 2835 -U 8241 ; WX 1887 ; N uni2031 ; G 2836 -U 8242 ; WX 264 ; N minute ; G 2837 -U 8243 ; WX 447 ; N second ; G 2838 -U 8244 ; WX 630 ; N uni2034 ; G 2839 -U 8245 ; WX 264 ; N uni2035 ; G 2840 -U 8246 ; WX 447 ; N uni2036 ; G 2841 -U 8247 ; WX 630 ; N uni2037 ; G 2842 -U 8248 ; WX 733 ; N uni2038 ; G 2843 -U 8249 ; WX 412 ; N guilsinglleft ; G 2844 -U 8250 ; WX 412 ; N guilsinglright ; G 2845 -U 8251 ; WX 972 ; N uni203B ; G 2846 -U 8252 ; WX 627 ; N exclamdbl ; G 2847 -U 8253 ; WX 580 ; N uni203D ; G 2848 -U 8254 ; WX 500 ; N uni203E ; G 2849 -U 8255 ; WX 828 ; N uni203F ; G 2850 -U 8256 ; WX 828 ; N uni2040 ; G 2851 -U 8257 ; WX 329 ; N uni2041 ; G 2852 -U 8258 ; WX 1023 ; N uni2042 ; G 2853 -U 8259 ; WX 500 ; N uni2043 ; G 2854 -U 8260 ; WX 167 ; N fraction ; G 2855 -U 8261 ; WX 457 ; N uni2045 ; G 2856 -U 8262 ; WX 457 ; N uni2046 ; G 2857 -U 8263 ; WX 1030 ; N uni2047 ; G 2858 -U 8264 ; WX 829 ; N uni2048 ; G 2859 -U 8265 ; WX 829 ; N uni2049 ; G 2860 -U 8266 ; WX 513 ; N uni204A ; G 2861 -U 8267 ; WX 636 ; N uni204B ; G 2862 -U 8268 ; WX 500 ; N uni204C ; G 2863 -U 8269 ; WX 500 ; N uni204D ; G 2864 -U 8270 ; WX 523 ; N uni204E ; G 2865 -U 8271 ; WX 400 ; N uni204F ; G 2866 -U 8272 ; WX 828 ; N uni2050 ; G 2867 -U 8273 ; WX 523 ; N uni2051 ; G 2868 -U 8274 ; WX 556 ; N uni2052 ; G 2869 -U 8275 ; WX 1000 ; N uni2053 ; G 2870 -U 8276 ; WX 828 ; N uni2054 ; G 2871 -U 8277 ; WX 838 ; N uni2055 ; G 2872 -U 8278 ; WX 684 ; N uni2056 ; G 2873 -U 8279 ; WX 813 ; N uni2057 ; G 2874 -U 8280 ; WX 838 ; N uni2058 ; G 2875 -U 8281 ; WX 838 ; N uni2059 ; G 2876 -U 8282 ; WX 380 ; N uni205A ; G 2877 -U 8283 ; WX 872 ; N uni205B ; G 2878 -U 8284 ; WX 838 ; N uni205C ; G 2879 -U 8285 ; WX 380 ; N uni205D ; G 2880 -U 8286 ; WX 380 ; N uni205E ; G 2881 -U 8287 ; WX 222 ; N uni205F ; G 2882 -U 8288 ; WX 0 ; N uni2060 ; G 2883 -U 8289 ; WX 0 ; N uni2061 ; G 2884 -U 8290 ; WX 0 ; N uni2062 ; G 2885 -U 8291 ; WX 0 ; N uni2063 ; G 2886 -U 8292 ; WX 0 ; N uni2064 ; G 2887 -U 8298 ; WX 0 ; N uni206A ; G 2888 -U 8299 ; WX 0 ; N uni206B ; G 2889 -U 8300 ; WX 0 ; N uni206C ; G 2890 -U 8301 ; WX 0 ; N uni206D ; G 2891 -U 8302 ; WX 0 ; N uni206E ; G 2892 -U 8303 ; WX 0 ; N uni206F ; G 2893 -U 8304 ; WX 438 ; N uni2070 ; G 2894 -U 8305 ; WX 219 ; N uni2071 ; G 2895 -U 8308 ; WX 438 ; N uni2074 ; G 2896 -U 8309 ; WX 438 ; N uni2075 ; G 2897 -U 8310 ; WX 438 ; N uni2076 ; G 2898 -U 8311 ; WX 438 ; N uni2077 ; G 2899 -U 8312 ; WX 438 ; N uni2078 ; G 2900 -U 8313 ; WX 438 ; N uni2079 ; G 2901 -U 8314 ; WX 528 ; N uni207A ; G 2902 -U 8315 ; WX 528 ; N uni207B ; G 2903 -U 8316 ; WX 528 ; N uni207C ; G 2904 -U 8317 ; WX 288 ; N uni207D ; G 2905 -U 8318 ; WX 288 ; N uni207E ; G 2906 -U 8319 ; WX 456 ; N uni207F ; G 2907 -U 8320 ; WX 438 ; N uni2080 ; G 2908 -U 8321 ; WX 438 ; N uni2081 ; G 2909 -U 8322 ; WX 438 ; N uni2082 ; G 2910 -U 8323 ; WX 438 ; N uni2083 ; G 2911 -U 8324 ; WX 438 ; N uni2084 ; G 2912 -U 8325 ; WX 438 ; N uni2085 ; G 2913 -U 8326 ; WX 438 ; N uni2086 ; G 2914 -U 8327 ; WX 438 ; N uni2087 ; G 2915 -U 8328 ; WX 438 ; N uni2088 ; G 2916 -U 8329 ; WX 438 ; N uni2089 ; G 2917 -U 8330 ; WX 528 ; N uni208A ; G 2918 -U 8331 ; WX 528 ; N uni208B ; G 2919 -U 8332 ; WX 528 ; N uni208C ; G 2920 -U 8333 ; WX 288 ; N uni208D ; G 2921 -U 8334 ; WX 288 ; N uni208E ; G 2922 -U 8336 ; WX 458 ; N uni2090 ; G 2923 -U 8337 ; WX 479 ; N uni2091 ; G 2924 -U 8338 ; WX 488 ; N uni2092 ; G 2925 -U 8339 ; WX 413 ; N uni2093 ; G 2926 -U 8340 ; WX 479 ; N uni2094 ; G 2927 -U 8341 ; WX 456 ; N uni2095 ; G 2928 -U 8342 ; WX 487 ; N uni2096 ; G 2929 -U 8343 ; WX 219 ; N uni2097 ; G 2930 -U 8344 ; WX 664 ; N uni2098 ; G 2931 -U 8345 ; WX 456 ; N uni2099 ; G 2932 -U 8346 ; WX 479 ; N uni209A ; G 2933 -U 8347 ; WX 381 ; N uni209B ; G 2934 -U 8348 ; WX 388 ; N uni209C ; G 2935 -U 8352 ; WX 929 ; N uni20A0 ; G 2936 -U 8353 ; WX 696 ; N colonmonetary ; G 2937 -U 8354 ; WX 696 ; N uni20A2 ; G 2938 -U 8355 ; WX 696 ; N franc ; G 2939 -U 8356 ; WX 696 ; N lira ; G 2940 -U 8357 ; WX 1042 ; N uni20A5 ; G 2941 -U 8358 ; WX 696 ; N uni20A6 ; G 2942 -U 8359 ; WX 1518 ; N peseta ; G 2943 -U 8360 ; WX 1205 ; N uni20A8 ; G 2944 -U 8361 ; WX 1103 ; N uni20A9 ; G 2945 -U 8362 ; WX 904 ; N uni20AA ; G 2946 -U 8363 ; WX 696 ; N dong ; G 2947 -U 8364 ; WX 696 ; N Euro ; G 2948 -U 8365 ; WX 696 ; N uni20AD ; G 2949 -U 8366 ; WX 696 ; N uni20AE ; G 2950 -U 8367 ; WX 1392 ; N uni20AF ; G 2951 -U 8368 ; WX 696 ; N uni20B0 ; G 2952 -U 8369 ; WX 696 ; N uni20B1 ; G 2953 -U 8370 ; WX 696 ; N uni20B2 ; G 2954 -U 8371 ; WX 696 ; N uni20B3 ; G 2955 -U 8372 ; WX 859 ; N uni20B4 ; G 2956 -U 8373 ; WX 696 ; N uni20B5 ; G 2957 -U 8376 ; WX 696 ; N uni20B8 ; G 2958 -U 8377 ; WX 696 ; N uni20B9 ; G 2959 -U 8378 ; WX 696 ; N uni20BA ; G 2960 -U 8381 ; WX 696 ; N uni20BD ; G 2961 -U 8400 ; WX 0 ; N uni20D0 ; G 2962 -U 8401 ; WX 0 ; N uni20D1 ; G 2963 -U 8406 ; WX 0 ; N uni20D6 ; G 2964 -U 8407 ; WX 0 ; N uni20D7 ; G 2965 -U 8411 ; WX 0 ; N uni20DB ; G 2966 -U 8412 ; WX 0 ; N uni20DC ; G 2967 -U 8417 ; WX 0 ; N uni20E1 ; G 2968 -U 8448 ; WX 1120 ; N uni2100 ; G 2969 -U 8449 ; WX 1170 ; N uni2101 ; G 2970 -U 8450 ; WX 734 ; N uni2102 ; G 2971 -U 8451 ; WX 1211 ; N uni2103 ; G 2972 -U 8452 ; WX 896 ; N uni2104 ; G 2973 -U 8453 ; WX 1091 ; N uni2105 ; G 2974 -U 8454 ; WX 1144 ; N uni2106 ; G 2975 -U 8455 ; WX 614 ; N uni2107 ; G 2976 -U 8456 ; WX 698 ; N uni2108 ; G 2977 -U 8457 ; WX 1086 ; N uni2109 ; G 2978 -U 8459 ; WX 1073 ; N uni210B ; G 2979 -U 8460 ; WX 913 ; N uni210C ; G 2980 -U 8461 ; WX 888 ; N uni210D ; G 2981 -U 8462 ; WX 712 ; N uni210E ; G 2982 -U 8463 ; WX 712 ; N uni210F ; G 2983 -U 8464 ; WX 597 ; N uni2110 ; G 2984 -U 8465 ; WX 697 ; N Ifraktur ; G 2985 -U 8466 ; WX 856 ; N uni2112 ; G 2986 -U 8467 ; WX 472 ; N uni2113 ; G 2987 -U 8468 ; WX 974 ; N uni2114 ; G 2988 -U 8469 ; WX 837 ; N uni2115 ; G 2989 -U 8470 ; WX 1203 ; N uni2116 ; G 2990 -U 8471 ; WX 1000 ; N uni2117 ; G 2991 -U 8472 ; WX 697 ; N weierstrass ; G 2992 -U 8473 ; WX 750 ; N uni2119 ; G 2993 -U 8474 ; WX 850 ; N uni211A ; G 2994 -U 8475 ; WX 938 ; N uni211B ; G 2995 -U 8476 ; WX 814 ; N Rfraktur ; G 2996 -U 8477 ; WX 801 ; N uni211D ; G 2997 -U 8478 ; WX 896 ; N prescription ; G 2998 -U 8479 ; WX 710 ; N uni211F ; G 2999 -U 8480 ; WX 1020 ; N uni2120 ; G 3000 -U 8481 ; WX 1281 ; N uni2121 ; G 3001 -U 8482 ; WX 1000 ; N trademark ; G 3002 -U 8483 ; WX 755 ; N uni2123 ; G 3003 -U 8484 ; WX 754 ; N uni2124 ; G 3004 -U 8485 ; WX 578 ; N uni2125 ; G 3005 -U 8486 ; WX 850 ; N uni2126 ; G 3006 -U 8487 ; WX 850 ; N uni2127 ; G 3007 -U 8488 ; WX 763 ; N uni2128 ; G 3008 -U 8489 ; WX 338 ; N uni2129 ; G 3009 -U 8490 ; WX 775 ; N uni212A ; G 3010 -U 8491 ; WX 774 ; N uni212B ; G 3011 -U 8492 ; WX 928 ; N uni212C ; G 3012 -U 8493 ; WX 818 ; N uni212D ; G 3013 -U 8494 ; WX 854 ; N estimated ; G 3014 -U 8495 ; WX 636 ; N uni212F ; G 3015 -U 8496 ; WX 729 ; N uni2130 ; G 3016 -U 8497 ; WX 808 ; N uni2131 ; G 3017 -U 8498 ; WX 683 ; N uni2132 ; G 3018 -U 8499 ; WX 1184 ; N uni2133 ; G 3019 -U 8500 ; WX 465 ; N uni2134 ; G 3020 -U 8501 ; WX 794 ; N aleph ; G 3021 -U 8502 ; WX 731 ; N uni2136 ; G 3022 -U 8503 ; WX 494 ; N uni2137 ; G 3023 -U 8504 ; WX 684 ; N uni2138 ; G 3024 -U 8505 ; WX 380 ; N uni2139 ; G 3025 -U 8506 ; WX 945 ; N uni213A ; G 3026 -U 8507 ; WX 1348 ; N uni213B ; G 3027 -U 8508 ; WX 790 ; N uni213C ; G 3028 -U 8509 ; WX 737 ; N uni213D ; G 3029 -U 8510 ; WX 654 ; N uni213E ; G 3030 -U 8511 ; WX 863 ; N uni213F ; G 3031 -U 8512 ; WX 840 ; N uni2140 ; G 3032 -U 8513 ; WX 775 ; N uni2141 ; G 3033 -U 8514 ; WX 557 ; N uni2142 ; G 3034 -U 8515 ; WX 637 ; N uni2143 ; G 3035 -U 8516 ; WX 760 ; N uni2144 ; G 3036 -U 8517 ; WX 830 ; N uni2145 ; G 3037 -U 8518 ; WX 716 ; N uni2146 ; G 3038 -U 8519 ; WX 678 ; N uni2147 ; G 3039 -U 8520 ; WX 343 ; N uni2148 ; G 3040 -U 8521 ; WX 343 ; N uni2149 ; G 3041 -U 8523 ; WX 872 ; N uni214B ; G 3042 -U 8526 ; WX 547 ; N uni214E ; G 3043 -U 8528 ; WX 1035 ; N uni2150 ; G 3044 -U 8529 ; WX 1035 ; N uni2151 ; G 3045 -U 8530 ; WX 1483 ; N uni2152 ; G 3046 -U 8531 ; WX 1035 ; N onethird ; G 3047 -U 8532 ; WX 1035 ; N twothirds ; G 3048 -U 8533 ; WX 1035 ; N uni2155 ; G 3049 -U 8534 ; WX 1035 ; N uni2156 ; G 3050 -U 8535 ; WX 1035 ; N uni2157 ; G 3051 -U 8536 ; WX 1035 ; N uni2158 ; G 3052 -U 8537 ; WX 1035 ; N uni2159 ; G 3053 -U 8538 ; WX 1035 ; N uni215A ; G 3054 -U 8539 ; WX 1035 ; N oneeighth ; G 3055 -U 8540 ; WX 1035 ; N threeeighths ; G 3056 -U 8541 ; WX 1035 ; N fiveeighths ; G 3057 -U 8542 ; WX 1035 ; N seveneighths ; G 3058 -U 8543 ; WX 615 ; N uni215F ; G 3059 -U 8544 ; WX 372 ; N uni2160 ; G 3060 -U 8545 ; WX 659 ; N uni2161 ; G 3061 -U 8546 ; WX 945 ; N uni2162 ; G 3062 -U 8547 ; WX 1099 ; N uni2163 ; G 3063 -U 8548 ; WX 774 ; N uni2164 ; G 3064 -U 8549 ; WX 1099 ; N uni2165 ; G 3065 -U 8550 ; WX 1386 ; N uni2166 ; G 3066 -U 8551 ; WX 1672 ; N uni2167 ; G 3067 -U 8552 ; WX 1121 ; N uni2168 ; G 3068 -U 8553 ; WX 771 ; N uni2169 ; G 3069 -U 8554 ; WX 1120 ; N uni216A ; G 3070 -U 8555 ; WX 1407 ; N uni216B ; G 3071 -U 8556 ; WX 637 ; N uni216C ; G 3072 -U 8557 ; WX 734 ; N uni216D ; G 3073 -U 8558 ; WX 830 ; N uni216E ; G 3074 -U 8559 ; WX 995 ; N uni216F ; G 3075 -U 8560 ; WX 343 ; N uni2170 ; G 3076 -U 8561 ; WX 607 ; N uni2171 ; G 3077 -U 8562 ; WX 872 ; N uni2172 ; G 3078 -U 8563 ; WX 984 ; N uni2173 ; G 3079 -U 8564 ; WX 652 ; N uni2174 ; G 3080 -U 8565 ; WX 962 ; N uni2175 ; G 3081 -U 8566 ; WX 1227 ; N uni2176 ; G 3082 -U 8567 ; WX 1491 ; N uni2177 ; G 3083 -U 8568 ; WX 969 ; N uni2178 ; G 3084 -U 8569 ; WX 645 ; N uni2179 ; G 3085 -U 8570 ; WX 969 ; N uni217A ; G 3086 -U 8571 ; WX 1233 ; N uni217B ; G 3087 -U 8572 ; WX 343 ; N uni217C ; G 3088 -U 8573 ; WX 593 ; N uni217D ; G 3089 -U 8574 ; WX 716 ; N uni217E ; G 3090 -U 8575 ; WX 1042 ; N uni217F ; G 3091 -U 8576 ; WX 1289 ; N uni2180 ; G 3092 -U 8577 ; WX 830 ; N uni2181 ; G 3093 -U 8578 ; WX 1289 ; N uni2182 ; G 3094 -U 8579 ; WX 734 ; N uni2183 ; G 3095 -U 8580 ; WX 593 ; N uni2184 ; G 3096 -U 8581 ; WX 734 ; N uni2185 ; G 3097 -U 8585 ; WX 1035 ; N uni2189 ; G 3098 -U 8592 ; WX 838 ; N arrowleft ; G 3099 -U 8593 ; WX 838 ; N arrowup ; G 3100 -U 8594 ; WX 838 ; N arrowright ; G 3101 -U 8595 ; WX 838 ; N arrowdown ; G 3102 -U 8596 ; WX 838 ; N arrowboth ; G 3103 -U 8597 ; WX 838 ; N arrowupdn ; G 3104 -U 8598 ; WX 838 ; N uni2196 ; G 3105 -U 8599 ; WX 838 ; N uni2197 ; G 3106 -U 8600 ; WX 838 ; N uni2198 ; G 3107 -U 8601 ; WX 838 ; N uni2199 ; G 3108 -U 8602 ; WX 838 ; N uni219A ; G 3109 -U 8603 ; WX 838 ; N uni219B ; G 3110 -U 8604 ; WX 838 ; N uni219C ; G 3111 -U 8605 ; WX 838 ; N uni219D ; G 3112 -U 8606 ; WX 838 ; N uni219E ; G 3113 -U 8607 ; WX 838 ; N uni219F ; G 3114 -U 8608 ; WX 838 ; N uni21A0 ; G 3115 -U 8609 ; WX 838 ; N uni21A1 ; G 3116 -U 8610 ; WX 838 ; N uni21A2 ; G 3117 -U 8611 ; WX 838 ; N uni21A3 ; G 3118 -U 8612 ; WX 838 ; N uni21A4 ; G 3119 -U 8613 ; WX 838 ; N uni21A5 ; G 3120 -U 8614 ; WX 838 ; N uni21A6 ; G 3121 -U 8615 ; WX 838 ; N uni21A7 ; G 3122 -U 8616 ; WX 838 ; N arrowupdnbse ; G 3123 -U 8617 ; WX 838 ; N uni21A9 ; G 3124 -U 8618 ; WX 838 ; N uni21AA ; G 3125 -U 8619 ; WX 838 ; N uni21AB ; G 3126 -U 8620 ; WX 838 ; N uni21AC ; G 3127 -U 8621 ; WX 838 ; N uni21AD ; G 3128 -U 8622 ; WX 838 ; N uni21AE ; G 3129 -U 8623 ; WX 838 ; N uni21AF ; G 3130 -U 8624 ; WX 838 ; N uni21B0 ; G 3131 -U 8625 ; WX 838 ; N uni21B1 ; G 3132 -U 8626 ; WX 838 ; N uni21B2 ; G 3133 -U 8627 ; WX 838 ; N uni21B3 ; G 3134 -U 8628 ; WX 838 ; N uni21B4 ; G 3135 -U 8629 ; WX 838 ; N carriagereturn ; G 3136 -U 8630 ; WX 838 ; N uni21B6 ; G 3137 -U 8631 ; WX 838 ; N uni21B7 ; G 3138 -U 8632 ; WX 838 ; N uni21B8 ; G 3139 -U 8633 ; WX 838 ; N uni21B9 ; G 3140 -U 8634 ; WX 838 ; N uni21BA ; G 3141 -U 8635 ; WX 838 ; N uni21BB ; G 3142 -U 8636 ; WX 838 ; N uni21BC ; G 3143 -U 8637 ; WX 838 ; N uni21BD ; G 3144 -U 8638 ; WX 838 ; N uni21BE ; G 3145 -U 8639 ; WX 838 ; N uni21BF ; G 3146 -U 8640 ; WX 838 ; N uni21C0 ; G 3147 -U 8641 ; WX 838 ; N uni21C1 ; G 3148 -U 8642 ; WX 838 ; N uni21C2 ; G 3149 -U 8643 ; WX 838 ; N uni21C3 ; G 3150 -U 8644 ; WX 838 ; N uni21C4 ; G 3151 -U 8645 ; WX 838 ; N uni21C5 ; G 3152 -U 8646 ; WX 838 ; N uni21C6 ; G 3153 -U 8647 ; WX 838 ; N uni21C7 ; G 3154 -U 8648 ; WX 838 ; N uni21C8 ; G 3155 -U 8649 ; WX 838 ; N uni21C9 ; G 3156 -U 8650 ; WX 838 ; N uni21CA ; G 3157 -U 8651 ; WX 838 ; N uni21CB ; G 3158 -U 8652 ; WX 838 ; N uni21CC ; G 3159 -U 8653 ; WX 838 ; N uni21CD ; G 3160 -U 8654 ; WX 838 ; N uni21CE ; G 3161 -U 8655 ; WX 838 ; N uni21CF ; G 3162 -U 8656 ; WX 838 ; N arrowdblleft ; G 3163 -U 8657 ; WX 838 ; N arrowdblup ; G 3164 -U 8658 ; WX 838 ; N arrowdblright ; G 3165 -U 8659 ; WX 838 ; N arrowdbldown ; G 3166 -U 8660 ; WX 838 ; N arrowdblboth ; G 3167 -U 8661 ; WX 838 ; N uni21D5 ; G 3168 -U 8662 ; WX 838 ; N uni21D6 ; G 3169 -U 8663 ; WX 838 ; N uni21D7 ; G 3170 -U 8664 ; WX 838 ; N uni21D8 ; G 3171 -U 8665 ; WX 838 ; N uni21D9 ; G 3172 -U 8666 ; WX 838 ; N uni21DA ; G 3173 -U 8667 ; WX 838 ; N uni21DB ; G 3174 -U 8668 ; WX 838 ; N uni21DC ; G 3175 -U 8669 ; WX 838 ; N uni21DD ; G 3176 -U 8670 ; WX 838 ; N uni21DE ; G 3177 -U 8671 ; WX 838 ; N uni21DF ; G 3178 -U 8672 ; WX 838 ; N uni21E0 ; G 3179 -U 8673 ; WX 838 ; N uni21E1 ; G 3180 -U 8674 ; WX 838 ; N uni21E2 ; G 3181 -U 8675 ; WX 838 ; N uni21E3 ; G 3182 -U 8676 ; WX 838 ; N uni21E4 ; G 3183 -U 8677 ; WX 838 ; N uni21E5 ; G 3184 -U 8678 ; WX 838 ; N uni21E6 ; G 3185 -U 8679 ; WX 838 ; N uni21E7 ; G 3186 -U 8680 ; WX 838 ; N uni21E8 ; G 3187 -U 8681 ; WX 838 ; N uni21E9 ; G 3188 -U 8682 ; WX 838 ; N uni21EA ; G 3189 -U 8683 ; WX 838 ; N uni21EB ; G 3190 -U 8684 ; WX 838 ; N uni21EC ; G 3191 -U 8685 ; WX 838 ; N uni21ED ; G 3192 -U 8686 ; WX 838 ; N uni21EE ; G 3193 -U 8687 ; WX 838 ; N uni21EF ; G 3194 -U 8688 ; WX 838 ; N uni21F0 ; G 3195 -U 8689 ; WX 838 ; N uni21F1 ; G 3196 -U 8690 ; WX 838 ; N uni21F2 ; G 3197 -U 8691 ; WX 838 ; N uni21F3 ; G 3198 -U 8692 ; WX 838 ; N uni21F4 ; G 3199 -U 8693 ; WX 838 ; N uni21F5 ; G 3200 -U 8694 ; WX 838 ; N uni21F6 ; G 3201 -U 8695 ; WX 838 ; N uni21F7 ; G 3202 -U 8696 ; WX 838 ; N uni21F8 ; G 3203 -U 8697 ; WX 838 ; N uni21F9 ; G 3204 -U 8698 ; WX 838 ; N uni21FA ; G 3205 -U 8699 ; WX 838 ; N uni21FB ; G 3206 -U 8700 ; WX 838 ; N uni21FC ; G 3207 -U 8701 ; WX 838 ; N uni21FD ; G 3208 -U 8702 ; WX 838 ; N uni21FE ; G 3209 -U 8703 ; WX 838 ; N uni21FF ; G 3210 -U 8704 ; WX 774 ; N universal ; G 3211 -U 8705 ; WX 696 ; N uni2201 ; G 3212 -U 8706 ; WX 544 ; N partialdiff ; G 3213 -U 8707 ; WX 683 ; N existential ; G 3214 -U 8708 ; WX 683 ; N uni2204 ; G 3215 -U 8709 ; WX 856 ; N emptyset ; G 3216 -U 8710 ; WX 697 ; N increment ; G 3217 -U 8711 ; WX 697 ; N gradient ; G 3218 -U 8712 ; WX 896 ; N element ; G 3219 -U 8713 ; WX 896 ; N notelement ; G 3220 -U 8714 ; WX 750 ; N uni220A ; G 3221 -U 8715 ; WX 896 ; N suchthat ; G 3222 -U 8716 ; WX 896 ; N uni220C ; G 3223 -U 8717 ; WX 750 ; N uni220D ; G 3224 -U 8718 ; WX 636 ; N uni220E ; G 3225 -U 8719 ; WX 787 ; N product ; G 3226 -U 8720 ; WX 787 ; N uni2210 ; G 3227 -U 8721 ; WX 718 ; N summation ; G 3228 -U 8722 ; WX 838 ; N minus ; G 3229 -U 8723 ; WX 838 ; N uni2213 ; G 3230 -U 8724 ; WX 696 ; N uni2214 ; G 3231 -U 8725 ; WX 365 ; N uni2215 ; G 3232 -U 8726 ; WX 696 ; N uni2216 ; G 3233 -U 8727 ; WX 838 ; N asteriskmath ; G 3234 -U 8728 ; WX 626 ; N uni2218 ; G 3235 -U 8729 ; WX 380 ; N uni2219 ; G 3236 -U 8730 ; WX 667 ; N radical ; G 3237 -U 8731 ; WX 667 ; N uni221B ; G 3238 -U 8732 ; WX 667 ; N uni221C ; G 3239 -U 8733 ; WX 712 ; N proportional ; G 3240 -U 8734 ; WX 833 ; N infinity ; G 3241 -U 8735 ; WX 838 ; N orthogonal ; G 3242 -U 8736 ; WX 896 ; N angle ; G 3243 -U 8737 ; WX 896 ; N uni2221 ; G 3244 -U 8738 ; WX 838 ; N uni2222 ; G 3245 -U 8739 ; WX 500 ; N uni2223 ; G 3246 -U 8740 ; WX 500 ; N uni2224 ; G 3247 -U 8741 ; WX 500 ; N uni2225 ; G 3248 -U 8742 ; WX 500 ; N uni2226 ; G 3249 -U 8743 ; WX 812 ; N logicaland ; G 3250 -U 8744 ; WX 812 ; N logicalor ; G 3251 -U 8745 ; WX 812 ; N intersection ; G 3252 -U 8746 ; WX 812 ; N union ; G 3253 -U 8747 ; WX 610 ; N integral ; G 3254 -U 8748 ; WX 929 ; N uni222C ; G 3255 -U 8749 ; WX 1295 ; N uni222D ; G 3256 -U 8750 ; WX 563 ; N uni222E ; G 3257 -U 8751 ; WX 977 ; N uni222F ; G 3258 -U 8752 ; WX 1313 ; N uni2230 ; G 3259 -U 8753 ; WX 563 ; N uni2231 ; G 3260 -U 8754 ; WX 563 ; N uni2232 ; G 3261 -U 8755 ; WX 563 ; N uni2233 ; G 3262 -U 8756 ; WX 696 ; N therefore ; G 3263 -U 8757 ; WX 696 ; N uni2235 ; G 3264 -U 8758 ; WX 294 ; N uni2236 ; G 3265 -U 8759 ; WX 696 ; N uni2237 ; G 3266 -U 8760 ; WX 838 ; N uni2238 ; G 3267 -U 8761 ; WX 838 ; N uni2239 ; G 3268 -U 8762 ; WX 838 ; N uni223A ; G 3269 -U 8763 ; WX 838 ; N uni223B ; G 3270 -U 8764 ; WX 838 ; N similar ; G 3271 -U 8765 ; WX 838 ; N uni223D ; G 3272 -U 8766 ; WX 838 ; N uni223E ; G 3273 -U 8767 ; WX 838 ; N uni223F ; G 3274 -U 8768 ; WX 375 ; N uni2240 ; G 3275 -U 8769 ; WX 838 ; N uni2241 ; G 3276 -U 8770 ; WX 838 ; N uni2242 ; G 3277 -U 8771 ; WX 838 ; N uni2243 ; G 3278 -U 8772 ; WX 838 ; N uni2244 ; G 3279 -U 8773 ; WX 838 ; N congruent ; G 3280 -U 8774 ; WX 838 ; N uni2246 ; G 3281 -U 8775 ; WX 838 ; N uni2247 ; G 3282 -U 8776 ; WX 838 ; N approxequal ; G 3283 -U 8777 ; WX 838 ; N uni2249 ; G 3284 -U 8778 ; WX 838 ; N uni224A ; G 3285 -U 8779 ; WX 838 ; N uni224B ; G 3286 -U 8780 ; WX 838 ; N uni224C ; G 3287 -U 8781 ; WX 838 ; N uni224D ; G 3288 -U 8782 ; WX 838 ; N uni224E ; G 3289 -U 8783 ; WX 838 ; N uni224F ; G 3290 -U 8784 ; WX 838 ; N uni2250 ; G 3291 -U 8785 ; WX 838 ; N uni2251 ; G 3292 -U 8786 ; WX 838 ; N uni2252 ; G 3293 -U 8787 ; WX 838 ; N uni2253 ; G 3294 -U 8788 ; WX 1063 ; N uni2254 ; G 3295 -U 8789 ; WX 1063 ; N uni2255 ; G 3296 -U 8790 ; WX 838 ; N uni2256 ; G 3297 -U 8791 ; WX 838 ; N uni2257 ; G 3298 -U 8792 ; WX 838 ; N uni2258 ; G 3299 -U 8793 ; WX 838 ; N uni2259 ; G 3300 -U 8794 ; WX 838 ; N uni225A ; G 3301 -U 8795 ; WX 838 ; N uni225B ; G 3302 -U 8796 ; WX 838 ; N uni225C ; G 3303 -U 8797 ; WX 838 ; N uni225D ; G 3304 -U 8798 ; WX 838 ; N uni225E ; G 3305 -U 8799 ; WX 838 ; N uni225F ; G 3306 -U 8800 ; WX 838 ; N notequal ; G 3307 -U 8801 ; WX 838 ; N equivalence ; G 3308 -U 8802 ; WX 838 ; N uni2262 ; G 3309 -U 8803 ; WX 838 ; N uni2263 ; G 3310 -U 8804 ; WX 838 ; N lessequal ; G 3311 -U 8805 ; WX 838 ; N greaterequal ; G 3312 -U 8806 ; WX 838 ; N uni2266 ; G 3313 -U 8807 ; WX 838 ; N uni2267 ; G 3314 -U 8808 ; WX 841 ; N uni2268 ; G 3315 -U 8809 ; WX 841 ; N uni2269 ; G 3316 -U 8810 ; WX 1047 ; N uni226A ; G 3317 -U 8811 ; WX 1047 ; N uni226B ; G 3318 -U 8812 ; WX 500 ; N uni226C ; G 3319 -U 8813 ; WX 838 ; N uni226D ; G 3320 -U 8814 ; WX 838 ; N uni226E ; G 3321 -U 8815 ; WX 838 ; N uni226F ; G 3322 -U 8816 ; WX 838 ; N uni2270 ; G 3323 -U 8817 ; WX 838 ; N uni2271 ; G 3324 -U 8818 ; WX 838 ; N uni2272 ; G 3325 -U 8819 ; WX 838 ; N uni2273 ; G 3326 -U 8820 ; WX 838 ; N uni2274 ; G 3327 -U 8821 ; WX 838 ; N uni2275 ; G 3328 -U 8822 ; WX 838 ; N uni2276 ; G 3329 -U 8823 ; WX 838 ; N uni2277 ; G 3330 -U 8824 ; WX 838 ; N uni2278 ; G 3331 -U 8825 ; WX 838 ; N uni2279 ; G 3332 -U 8826 ; WX 838 ; N uni227A ; G 3333 -U 8827 ; WX 838 ; N uni227B ; G 3334 -U 8828 ; WX 838 ; N uni227C ; G 3335 -U 8829 ; WX 838 ; N uni227D ; G 3336 -U 8830 ; WX 838 ; N uni227E ; G 3337 -U 8831 ; WX 838 ; N uni227F ; G 3338 -U 8832 ; WX 838 ; N uni2280 ; G 3339 -U 8833 ; WX 838 ; N uni2281 ; G 3340 -U 8834 ; WX 838 ; N propersubset ; G 3341 -U 8835 ; WX 838 ; N propersuperset ; G 3342 -U 8836 ; WX 838 ; N notsubset ; G 3343 -U 8837 ; WX 838 ; N uni2285 ; G 3344 -U 8838 ; WX 838 ; N reflexsubset ; G 3345 -U 8839 ; WX 838 ; N reflexsuperset ; G 3346 -U 8840 ; WX 838 ; N uni2288 ; G 3347 -U 8841 ; WX 838 ; N uni2289 ; G 3348 -U 8842 ; WX 838 ; N uni228A ; G 3349 -U 8843 ; WX 838 ; N uni228B ; G 3350 -U 8844 ; WX 812 ; N uni228C ; G 3351 -U 8845 ; WX 812 ; N uni228D ; G 3352 -U 8846 ; WX 812 ; N uni228E ; G 3353 -U 8847 ; WX 838 ; N uni228F ; G 3354 -U 8848 ; WX 838 ; N uni2290 ; G 3355 -U 8849 ; WX 838 ; N uni2291 ; G 3356 -U 8850 ; WX 838 ; N uni2292 ; G 3357 -U 8851 ; WX 796 ; N uni2293 ; G 3358 -U 8852 ; WX 796 ; N uni2294 ; G 3359 -U 8853 ; WX 838 ; N circleplus ; G 3360 -U 8854 ; WX 838 ; N uni2296 ; G 3361 -U 8855 ; WX 838 ; N circlemultiply ; G 3362 -U 8856 ; WX 838 ; N uni2298 ; G 3363 -U 8857 ; WX 838 ; N uni2299 ; G 3364 -U 8858 ; WX 838 ; N uni229A ; G 3365 -U 8859 ; WX 838 ; N uni229B ; G 3366 -U 8860 ; WX 838 ; N uni229C ; G 3367 -U 8861 ; WX 838 ; N uni229D ; G 3368 -U 8862 ; WX 838 ; N uni229E ; G 3369 -U 8863 ; WX 838 ; N uni229F ; G 3370 -U 8864 ; WX 838 ; N uni22A0 ; G 3371 -U 8865 ; WX 838 ; N uni22A1 ; G 3372 -U 8866 ; WX 914 ; N uni22A2 ; G 3373 -U 8867 ; WX 914 ; N uni22A3 ; G 3374 -U 8868 ; WX 914 ; N uni22A4 ; G 3375 -U 8869 ; WX 914 ; N perpendicular ; G 3376 -U 8870 ; WX 542 ; N uni22A6 ; G 3377 -U 8871 ; WX 542 ; N uni22A7 ; G 3378 -U 8872 ; WX 914 ; N uni22A8 ; G 3379 -U 8873 ; WX 914 ; N uni22A9 ; G 3380 -U 8874 ; WX 914 ; N uni22AA ; G 3381 -U 8875 ; WX 914 ; N uni22AB ; G 3382 -U 8876 ; WX 914 ; N uni22AC ; G 3383 -U 8877 ; WX 914 ; N uni22AD ; G 3384 -U 8878 ; WX 914 ; N uni22AE ; G 3385 -U 8879 ; WX 914 ; N uni22AF ; G 3386 -U 8880 ; WX 838 ; N uni22B0 ; G 3387 -U 8881 ; WX 838 ; N uni22B1 ; G 3388 -U 8882 ; WX 838 ; N uni22B2 ; G 3389 -U 8883 ; WX 838 ; N uni22B3 ; G 3390 -U 8884 ; WX 838 ; N uni22B4 ; G 3391 -U 8885 ; WX 838 ; N uni22B5 ; G 3392 -U 8886 ; WX 1000 ; N uni22B6 ; G 3393 -U 8887 ; WX 1000 ; N uni22B7 ; G 3394 -U 8888 ; WX 838 ; N uni22B8 ; G 3395 -U 8889 ; WX 838 ; N uni22B9 ; G 3396 -U 8890 ; WX 542 ; N uni22BA ; G 3397 -U 8891 ; WX 812 ; N uni22BB ; G 3398 -U 8892 ; WX 812 ; N uni22BC ; G 3399 -U 8893 ; WX 812 ; N uni22BD ; G 3400 -U 8894 ; WX 838 ; N uni22BE ; G 3401 -U 8895 ; WX 838 ; N uni22BF ; G 3402 -U 8896 ; WX 843 ; N uni22C0 ; G 3403 -U 8897 ; WX 843 ; N uni22C1 ; G 3404 -U 8898 ; WX 843 ; N uni22C2 ; G 3405 -U 8899 ; WX 843 ; N uni22C3 ; G 3406 -U 8900 ; WX 626 ; N uni22C4 ; G 3407 -U 8901 ; WX 380 ; N dotmath ; G 3408 -U 8902 ; WX 626 ; N uni22C6 ; G 3409 -U 8903 ; WX 838 ; N uni22C7 ; G 3410 -U 8904 ; WX 1000 ; N uni22C8 ; G 3411 -U 8905 ; WX 1000 ; N uni22C9 ; G 3412 -U 8906 ; WX 1000 ; N uni22CA ; G 3413 -U 8907 ; WX 1000 ; N uni22CB ; G 3414 -U 8908 ; WX 1000 ; N uni22CC ; G 3415 -U 8909 ; WX 838 ; N uni22CD ; G 3416 -U 8910 ; WX 812 ; N uni22CE ; G 3417 -U 8911 ; WX 812 ; N uni22CF ; G 3418 -U 8912 ; WX 838 ; N uni22D0 ; G 3419 -U 8913 ; WX 838 ; N uni22D1 ; G 3420 -U 8914 ; WX 838 ; N uni22D2 ; G 3421 -U 8915 ; WX 838 ; N uni22D3 ; G 3422 -U 8916 ; WX 838 ; N uni22D4 ; G 3423 -U 8917 ; WX 838 ; N uni22D5 ; G 3424 -U 8918 ; WX 838 ; N uni22D6 ; G 3425 -U 8919 ; WX 838 ; N uni22D7 ; G 3426 -U 8920 ; WX 1422 ; N uni22D8 ; G 3427 -U 8921 ; WX 1422 ; N uni22D9 ; G 3428 -U 8922 ; WX 838 ; N uni22DA ; G 3429 -U 8923 ; WX 838 ; N uni22DB ; G 3430 -U 8924 ; WX 838 ; N uni22DC ; G 3431 -U 8925 ; WX 838 ; N uni22DD ; G 3432 -U 8926 ; WX 838 ; N uni22DE ; G 3433 -U 8927 ; WX 838 ; N uni22DF ; G 3434 -U 8928 ; WX 838 ; N uni22E0 ; G 3435 -U 8929 ; WX 838 ; N uni22E1 ; G 3436 -U 8930 ; WX 838 ; N uni22E2 ; G 3437 -U 8931 ; WX 838 ; N uni22E3 ; G 3438 -U 8932 ; WX 838 ; N uni22E4 ; G 3439 -U 8933 ; WX 838 ; N uni22E5 ; G 3440 -U 8934 ; WX 838 ; N uni22E6 ; G 3441 -U 8935 ; WX 838 ; N uni22E7 ; G 3442 -U 8936 ; WX 838 ; N uni22E8 ; G 3443 -U 8937 ; WX 838 ; N uni22E9 ; G 3444 -U 8938 ; WX 838 ; N uni22EA ; G 3445 -U 8939 ; WX 838 ; N uni22EB ; G 3446 -U 8940 ; WX 838 ; N uni22EC ; G 3447 -U 8941 ; WX 838 ; N uni22ED ; G 3448 -U 8942 ; WX 1000 ; N uni22EE ; G 3449 -U 8943 ; WX 1000 ; N uni22EF ; G 3450 -U 8944 ; WX 1000 ; N uni22F0 ; G 3451 -U 8945 ; WX 1000 ; N uni22F1 ; G 3452 -U 8946 ; WX 1158 ; N uni22F2 ; G 3453 -U 8947 ; WX 896 ; N uni22F3 ; G 3454 -U 8948 ; WX 750 ; N uni22F4 ; G 3455 -U 8949 ; WX 896 ; N uni22F5 ; G 3456 -U 8950 ; WX 896 ; N uni22F6 ; G 3457 -U 8951 ; WX 750 ; N uni22F7 ; G 3458 -U 8952 ; WX 896 ; N uni22F8 ; G 3459 -U 8953 ; WX 896 ; N uni22F9 ; G 3460 -U 8954 ; WX 1158 ; N uni22FA ; G 3461 -U 8955 ; WX 896 ; N uni22FB ; G 3462 -U 8956 ; WX 750 ; N uni22FC ; G 3463 -U 8957 ; WX 896 ; N uni22FD ; G 3464 -U 8958 ; WX 750 ; N uni22FE ; G 3465 -U 8959 ; WX 896 ; N uni22FF ; G 3466 -U 8960 ; WX 602 ; N uni2300 ; G 3467 -U 8961 ; WX 602 ; N uni2301 ; G 3468 -U 8962 ; WX 716 ; N house ; G 3469 -U 8963 ; WX 838 ; N uni2303 ; G 3470 -U 8964 ; WX 838 ; N uni2304 ; G 3471 -U 8965 ; WX 838 ; N uni2305 ; G 3472 -U 8966 ; WX 838 ; N uni2306 ; G 3473 -U 8967 ; WX 488 ; N uni2307 ; G 3474 -U 8968 ; WX 457 ; N uni2308 ; G 3475 -U 8969 ; WX 457 ; N uni2309 ; G 3476 -U 8970 ; WX 457 ; N uni230A ; G 3477 -U 8971 ; WX 457 ; N uni230B ; G 3478 -U 8972 ; WX 809 ; N uni230C ; G 3479 -U 8973 ; WX 809 ; N uni230D ; G 3480 -U 8974 ; WX 809 ; N uni230E ; G 3481 -U 8975 ; WX 809 ; N uni230F ; G 3482 -U 8976 ; WX 838 ; N revlogicalnot ; G 3483 -U 8977 ; WX 539 ; N uni2311 ; G 3484 -U 8984 ; WX 928 ; N uni2318 ; G 3485 -U 8985 ; WX 838 ; N uni2319 ; G 3486 -U 8988 ; WX 469 ; N uni231C ; G 3487 -U 8989 ; WX 469 ; N uni231D ; G 3488 -U 8990 ; WX 469 ; N uni231E ; G 3489 -U 8991 ; WX 469 ; N uni231F ; G 3490 -U 8992 ; WX 610 ; N integraltp ; G 3491 -U 8993 ; WX 610 ; N integralbt ; G 3492 -U 8996 ; WX 1152 ; N uni2324 ; G 3493 -U 8997 ; WX 1152 ; N uni2325 ; G 3494 -U 8998 ; WX 1414 ; N uni2326 ; G 3495 -U 8999 ; WX 1152 ; N uni2327 ; G 3496 -U 9000 ; WX 1443 ; N uni2328 ; G 3497 -U 9003 ; WX 1414 ; N uni232B ; G 3498 -U 9004 ; WX 873 ; N uni232C ; G 3499 -U 9075 ; WX 390 ; N uni2373 ; G 3500 -U 9076 ; WX 716 ; N uni2374 ; G 3501 -U 9077 ; WX 869 ; N uni2375 ; G 3502 -U 9082 ; WX 687 ; N uni237A ; G 3503 -U 9085 ; WX 863 ; N uni237D ; G 3504 -U 9095 ; WX 1152 ; N uni2387 ; G 3505 -U 9108 ; WX 873 ; N uni2394 ; G 3506 -U 9115 ; WX 500 ; N uni239B ; G 3507 -U 9116 ; WX 500 ; N uni239C ; G 3508 -U 9117 ; WX 500 ; N uni239D ; G 3509 -U 9118 ; WX 500 ; N uni239E ; G 3510 -U 9119 ; WX 500 ; N uni239F ; G 3511 -U 9120 ; WX 500 ; N uni23A0 ; G 3512 -U 9121 ; WX 500 ; N uni23A1 ; G 3513 -U 9122 ; WX 500 ; N uni23A2 ; G 3514 -U 9123 ; WX 500 ; N uni23A3 ; G 3515 -U 9124 ; WX 500 ; N uni23A4 ; G 3516 -U 9125 ; WX 500 ; N uni23A5 ; G 3517 -U 9126 ; WX 500 ; N uni23A6 ; G 3518 -U 9127 ; WX 750 ; N uni23A7 ; G 3519 -U 9128 ; WX 750 ; N uni23A8 ; G 3520 -U 9129 ; WX 750 ; N uni23A9 ; G 3521 -U 9130 ; WX 750 ; N uni23AA ; G 3522 -U 9131 ; WX 750 ; N uni23AB ; G 3523 -U 9132 ; WX 750 ; N uni23AC ; G 3524 -U 9133 ; WX 750 ; N uni23AD ; G 3525 -U 9134 ; WX 610 ; N uni23AE ; G 3526 -U 9166 ; WX 838 ; N uni23CE ; G 3527 -U 9167 ; WX 945 ; N uni23CF ; G 3528 -U 9187 ; WX 873 ; N uni23E3 ; G 3529 -U 9189 ; WX 769 ; N uni23E5 ; G 3530 -U 9192 ; WX 696 ; N uni23E8 ; G 3531 -U 9250 ; WX 716 ; N uni2422 ; G 3532 -U 9251 ; WX 716 ; N uni2423 ; G 3533 -U 9312 ; WX 847 ; N uni2460 ; G 3534 -U 9313 ; WX 847 ; N uni2461 ; G 3535 -U 9314 ; WX 847 ; N uni2462 ; G 3536 -U 9315 ; WX 847 ; N uni2463 ; G 3537 -U 9316 ; WX 847 ; N uni2464 ; G 3538 -U 9317 ; WX 847 ; N uni2465 ; G 3539 -U 9318 ; WX 847 ; N uni2466 ; G 3540 -U 9319 ; WX 847 ; N uni2467 ; G 3541 -U 9320 ; WX 847 ; N uni2468 ; G 3542 -U 9321 ; WX 847 ; N uni2469 ; G 3543 -U 9472 ; WX 602 ; N SF100000 ; G 3544 -U 9473 ; WX 602 ; N uni2501 ; G 3545 -U 9474 ; WX 602 ; N SF110000 ; G 3546 -U 9475 ; WX 602 ; N uni2503 ; G 3547 -U 9476 ; WX 602 ; N uni2504 ; G 3548 -U 9477 ; WX 602 ; N uni2505 ; G 3549 -U 9478 ; WX 602 ; N uni2506 ; G 3550 -U 9479 ; WX 602 ; N uni2507 ; G 3551 -U 9480 ; WX 602 ; N uni2508 ; G 3552 -U 9481 ; WX 602 ; N uni2509 ; G 3553 -U 9482 ; WX 602 ; N uni250A ; G 3554 -U 9483 ; WX 602 ; N uni250B ; G 3555 -U 9484 ; WX 602 ; N SF010000 ; G 3556 -U 9485 ; WX 602 ; N uni250D ; G 3557 -U 9486 ; WX 602 ; N uni250E ; G 3558 -U 9487 ; WX 602 ; N uni250F ; G 3559 -U 9488 ; WX 602 ; N SF030000 ; G 3560 -U 9489 ; WX 602 ; N uni2511 ; G 3561 -U 9490 ; WX 602 ; N uni2512 ; G 3562 -U 9491 ; WX 602 ; N uni2513 ; G 3563 -U 9492 ; WX 602 ; N SF020000 ; G 3564 -U 9493 ; WX 602 ; N uni2515 ; G 3565 -U 9494 ; WX 602 ; N uni2516 ; G 3566 -U 9495 ; WX 602 ; N uni2517 ; G 3567 -U 9496 ; WX 602 ; N SF040000 ; G 3568 -U 9497 ; WX 602 ; N uni2519 ; G 3569 -U 9498 ; WX 602 ; N uni251A ; G 3570 -U 9499 ; WX 602 ; N uni251B ; G 3571 -U 9500 ; WX 602 ; N SF080000 ; G 3572 -U 9501 ; WX 602 ; N uni251D ; G 3573 -U 9502 ; WX 602 ; N uni251E ; G 3574 -U 9503 ; WX 602 ; N uni251F ; G 3575 -U 9504 ; WX 602 ; N uni2520 ; G 3576 -U 9505 ; WX 602 ; N uni2521 ; G 3577 -U 9506 ; WX 602 ; N uni2522 ; G 3578 -U 9507 ; WX 602 ; N uni2523 ; G 3579 -U 9508 ; WX 602 ; N SF090000 ; G 3580 -U 9509 ; WX 602 ; N uni2525 ; G 3581 -U 9510 ; WX 602 ; N uni2526 ; G 3582 -U 9511 ; WX 602 ; N uni2527 ; G 3583 -U 9512 ; WX 602 ; N uni2528 ; G 3584 -U 9513 ; WX 602 ; N uni2529 ; G 3585 -U 9514 ; WX 602 ; N uni252A ; G 3586 -U 9515 ; WX 602 ; N uni252B ; G 3587 -U 9516 ; WX 602 ; N SF060000 ; G 3588 -U 9517 ; WX 602 ; N uni252D ; G 3589 -U 9518 ; WX 602 ; N uni252E ; G 3590 -U 9519 ; WX 602 ; N uni252F ; G 3591 -U 9520 ; WX 602 ; N uni2530 ; G 3592 -U 9521 ; WX 602 ; N uni2531 ; G 3593 -U 9522 ; WX 602 ; N uni2532 ; G 3594 -U 9523 ; WX 602 ; N uni2533 ; G 3595 -U 9524 ; WX 602 ; N SF070000 ; G 3596 -U 9525 ; WX 602 ; N uni2535 ; G 3597 -U 9526 ; WX 602 ; N uni2536 ; G 3598 -U 9527 ; WX 602 ; N uni2537 ; G 3599 -U 9528 ; WX 602 ; N uni2538 ; G 3600 -U 9529 ; WX 602 ; N uni2539 ; G 3601 -U 9530 ; WX 602 ; N uni253A ; G 3602 -U 9531 ; WX 602 ; N uni253B ; G 3603 -U 9532 ; WX 602 ; N SF050000 ; G 3604 -U 9533 ; WX 602 ; N uni253D ; G 3605 -U 9534 ; WX 602 ; N uni253E ; G 3606 -U 9535 ; WX 602 ; N uni253F ; G 3607 -U 9536 ; WX 602 ; N uni2540 ; G 3608 -U 9537 ; WX 602 ; N uni2541 ; G 3609 -U 9538 ; WX 602 ; N uni2542 ; G 3610 -U 9539 ; WX 602 ; N uni2543 ; G 3611 -U 9540 ; WX 602 ; N uni2544 ; G 3612 -U 9541 ; WX 602 ; N uni2545 ; G 3613 -U 9542 ; WX 602 ; N uni2546 ; G 3614 -U 9543 ; WX 602 ; N uni2547 ; G 3615 -U 9544 ; WX 602 ; N uni2548 ; G 3616 -U 9545 ; WX 602 ; N uni2549 ; G 3617 -U 9546 ; WX 602 ; N uni254A ; G 3618 -U 9547 ; WX 602 ; N uni254B ; G 3619 -U 9548 ; WX 602 ; N uni254C ; G 3620 -U 9549 ; WX 602 ; N uni254D ; G 3621 -U 9550 ; WX 602 ; N uni254E ; G 3622 -U 9551 ; WX 602 ; N uni254F ; G 3623 -U 9552 ; WX 602 ; N SF430000 ; G 3624 -U 9553 ; WX 602 ; N SF240000 ; G 3625 -U 9554 ; WX 602 ; N SF510000 ; G 3626 -U 9555 ; WX 602 ; N SF520000 ; G 3627 -U 9556 ; WX 602 ; N SF390000 ; G 3628 -U 9557 ; WX 602 ; N SF220000 ; G 3629 -U 9558 ; WX 602 ; N SF210000 ; G 3630 -U 9559 ; WX 602 ; N SF250000 ; G 3631 -U 9560 ; WX 602 ; N SF500000 ; G 3632 -U 9561 ; WX 602 ; N SF490000 ; G 3633 -U 9562 ; WX 602 ; N SF380000 ; G 3634 -U 9563 ; WX 602 ; N SF280000 ; G 3635 -U 9564 ; WX 602 ; N SF270000 ; G 3636 -U 9565 ; WX 602 ; N SF260000 ; G 3637 -U 9566 ; WX 602 ; N SF360000 ; G 3638 -U 9567 ; WX 602 ; N SF370000 ; G 3639 -U 9568 ; WX 602 ; N SF420000 ; G 3640 -U 9569 ; WX 602 ; N SF190000 ; G 3641 -U 9570 ; WX 602 ; N SF200000 ; G 3642 -U 9571 ; WX 602 ; N SF230000 ; G 3643 -U 9572 ; WX 602 ; N SF470000 ; G 3644 -U 9573 ; WX 602 ; N SF480000 ; G 3645 -U 9574 ; WX 602 ; N SF410000 ; G 3646 -U 9575 ; WX 602 ; N SF450000 ; G 3647 -U 9576 ; WX 602 ; N SF460000 ; G 3648 -U 9577 ; WX 602 ; N SF400000 ; G 3649 -U 9578 ; WX 602 ; N SF540000 ; G 3650 -U 9579 ; WX 602 ; N SF530000 ; G 3651 -U 9580 ; WX 602 ; N SF440000 ; G 3652 -U 9581 ; WX 602 ; N uni256D ; G 3653 -U 9582 ; WX 602 ; N uni256E ; G 3654 -U 9583 ; WX 602 ; N uni256F ; G 3655 -U 9584 ; WX 602 ; N uni2570 ; G 3656 -U 9585 ; WX 602 ; N uni2571 ; G 3657 -U 9586 ; WX 602 ; N uni2572 ; G 3658 -U 9587 ; WX 602 ; N uni2573 ; G 3659 -U 9588 ; WX 602 ; N uni2574 ; G 3660 -U 9589 ; WX 602 ; N uni2575 ; G 3661 -U 9590 ; WX 602 ; N uni2576 ; G 3662 -U 9591 ; WX 602 ; N uni2577 ; G 3663 -U 9592 ; WX 602 ; N uni2578 ; G 3664 -U 9593 ; WX 602 ; N uni2579 ; G 3665 -U 9594 ; WX 602 ; N uni257A ; G 3666 -U 9595 ; WX 602 ; N uni257B ; G 3667 -U 9596 ; WX 602 ; N uni257C ; G 3668 -U 9597 ; WX 602 ; N uni257D ; G 3669 -U 9598 ; WX 602 ; N uni257E ; G 3670 -U 9599 ; WX 602 ; N uni257F ; G 3671 -U 9600 ; WX 769 ; N upblock ; G 3672 -U 9601 ; WX 769 ; N uni2581 ; G 3673 -U 9602 ; WX 769 ; N uni2582 ; G 3674 -U 9603 ; WX 769 ; N uni2583 ; G 3675 -U 9604 ; WX 769 ; N dnblock ; G 3676 -U 9605 ; WX 769 ; N uni2585 ; G 3677 -U 9606 ; WX 769 ; N uni2586 ; G 3678 -U 9607 ; WX 769 ; N uni2587 ; G 3679 -U 9608 ; WX 769 ; N block ; G 3680 -U 9609 ; WX 769 ; N uni2589 ; G 3681 -U 9610 ; WX 769 ; N uni258A ; G 3682 -U 9611 ; WX 769 ; N uni258B ; G 3683 -U 9612 ; WX 769 ; N lfblock ; G 3684 -U 9613 ; WX 769 ; N uni258D ; G 3685 -U 9614 ; WX 769 ; N uni258E ; G 3686 -U 9615 ; WX 769 ; N uni258F ; G 3687 -U 9616 ; WX 769 ; N rtblock ; G 3688 -U 9617 ; WX 769 ; N ltshade ; G 3689 -U 9618 ; WX 769 ; N shade ; G 3690 -U 9619 ; WX 769 ; N dkshade ; G 3691 -U 9620 ; WX 769 ; N uni2594 ; G 3692 -U 9621 ; WX 769 ; N uni2595 ; G 3693 -U 9622 ; WX 769 ; N uni2596 ; G 3694 -U 9623 ; WX 769 ; N uni2597 ; G 3695 -U 9624 ; WX 769 ; N uni2598 ; G 3696 -U 9625 ; WX 769 ; N uni2599 ; G 3697 -U 9626 ; WX 769 ; N uni259A ; G 3698 -U 9627 ; WX 769 ; N uni259B ; G 3699 -U 9628 ; WX 769 ; N uni259C ; G 3700 -U 9629 ; WX 769 ; N uni259D ; G 3701 -U 9630 ; WX 769 ; N uni259E ; G 3702 -U 9631 ; WX 769 ; N uni259F ; G 3703 -U 9632 ; WX 945 ; N filledbox ; G 3704 -U 9633 ; WX 945 ; N H22073 ; G 3705 -U 9634 ; WX 945 ; N uni25A2 ; G 3706 -U 9635 ; WX 945 ; N uni25A3 ; G 3707 -U 9636 ; WX 945 ; N uni25A4 ; G 3708 -U 9637 ; WX 945 ; N uni25A5 ; G 3709 -U 9638 ; WX 945 ; N uni25A6 ; G 3710 -U 9639 ; WX 945 ; N uni25A7 ; G 3711 -U 9640 ; WX 945 ; N uni25A8 ; G 3712 -U 9641 ; WX 945 ; N uni25A9 ; G 3713 -U 9642 ; WX 678 ; N H18543 ; G 3714 -U 9643 ; WX 678 ; N H18551 ; G 3715 -U 9644 ; WX 945 ; N filledrect ; G 3716 -U 9645 ; WX 945 ; N uni25AD ; G 3717 -U 9646 ; WX 550 ; N uni25AE ; G 3718 -U 9647 ; WX 550 ; N uni25AF ; G 3719 -U 9648 ; WX 769 ; N uni25B0 ; G 3720 -U 9649 ; WX 769 ; N uni25B1 ; G 3721 -U 9650 ; WX 769 ; N triagup ; G 3722 -U 9651 ; WX 769 ; N uni25B3 ; G 3723 -U 9652 ; WX 502 ; N uni25B4 ; G 3724 -U 9653 ; WX 502 ; N uni25B5 ; G 3725 -U 9654 ; WX 769 ; N uni25B6 ; G 3726 -U 9655 ; WX 769 ; N uni25B7 ; G 3727 -U 9656 ; WX 502 ; N uni25B8 ; G 3728 -U 9657 ; WX 502 ; N uni25B9 ; G 3729 -U 9658 ; WX 769 ; N triagrt ; G 3730 -U 9659 ; WX 769 ; N uni25BB ; G 3731 -U 9660 ; WX 769 ; N triagdn ; G 3732 -U 9661 ; WX 769 ; N uni25BD ; G 3733 -U 9662 ; WX 502 ; N uni25BE ; G 3734 -U 9663 ; WX 502 ; N uni25BF ; G 3735 -U 9664 ; WX 769 ; N uni25C0 ; G 3736 -U 9665 ; WX 769 ; N uni25C1 ; G 3737 -U 9666 ; WX 502 ; N uni25C2 ; G 3738 -U 9667 ; WX 502 ; N uni25C3 ; G 3739 -U 9668 ; WX 769 ; N triaglf ; G 3740 -U 9669 ; WX 769 ; N uni25C5 ; G 3741 -U 9670 ; WX 769 ; N uni25C6 ; G 3742 -U 9671 ; WX 769 ; N uni25C7 ; G 3743 -U 9672 ; WX 769 ; N uni25C8 ; G 3744 -U 9673 ; WX 873 ; N uni25C9 ; G 3745 -U 9674 ; WX 494 ; N lozenge ; G 3746 -U 9675 ; WX 873 ; N circle ; G 3747 -U 9676 ; WX 873 ; N uni25CC ; G 3748 -U 9677 ; WX 873 ; N uni25CD ; G 3749 -U 9678 ; WX 873 ; N uni25CE ; G 3750 -U 9679 ; WX 873 ; N H18533 ; G 3751 -U 9680 ; WX 873 ; N uni25D0 ; G 3752 -U 9681 ; WX 873 ; N uni25D1 ; G 3753 -U 9682 ; WX 873 ; N uni25D2 ; G 3754 -U 9683 ; WX 873 ; N uni25D3 ; G 3755 -U 9684 ; WX 873 ; N uni25D4 ; G 3756 -U 9685 ; WX 873 ; N uni25D5 ; G 3757 -U 9686 ; WX 527 ; N uni25D6 ; G 3758 -U 9687 ; WX 527 ; N uni25D7 ; G 3759 -U 9688 ; WX 840 ; N invbullet ; G 3760 -U 9689 ; WX 970 ; N invcircle ; G 3761 -U 9690 ; WX 970 ; N uni25DA ; G 3762 -U 9691 ; WX 970 ; N uni25DB ; G 3763 -U 9692 ; WX 387 ; N uni25DC ; G 3764 -U 9693 ; WX 387 ; N uni25DD ; G 3765 -U 9694 ; WX 387 ; N uni25DE ; G 3766 -U 9695 ; WX 387 ; N uni25DF ; G 3767 -U 9696 ; WX 769 ; N uni25E0 ; G 3768 -U 9697 ; WX 769 ; N uni25E1 ; G 3769 -U 9698 ; WX 769 ; N uni25E2 ; G 3770 -U 9699 ; WX 769 ; N uni25E3 ; G 3771 -U 9700 ; WX 769 ; N uni25E4 ; G 3772 -U 9701 ; WX 769 ; N uni25E5 ; G 3773 -U 9702 ; WX 639 ; N openbullet ; G 3774 -U 9703 ; WX 945 ; N uni25E7 ; G 3775 -U 9704 ; WX 945 ; N uni25E8 ; G 3776 -U 9705 ; WX 945 ; N uni25E9 ; G 3777 -U 9706 ; WX 945 ; N uni25EA ; G 3778 -U 9707 ; WX 945 ; N uni25EB ; G 3779 -U 9708 ; WX 769 ; N uni25EC ; G 3780 -U 9709 ; WX 769 ; N uni25ED ; G 3781 -U 9710 ; WX 769 ; N uni25EE ; G 3782 -U 9711 ; WX 1119 ; N uni25EF ; G 3783 -U 9712 ; WX 945 ; N uni25F0 ; G 3784 -U 9713 ; WX 945 ; N uni25F1 ; G 3785 -U 9714 ; WX 945 ; N uni25F2 ; G 3786 -U 9715 ; WX 945 ; N uni25F3 ; G 3787 -U 9716 ; WX 873 ; N uni25F4 ; G 3788 -U 9717 ; WX 873 ; N uni25F5 ; G 3789 -U 9718 ; WX 873 ; N uni25F6 ; G 3790 -U 9719 ; WX 873 ; N uni25F7 ; G 3791 -U 9720 ; WX 769 ; N uni25F8 ; G 3792 -U 9721 ; WX 769 ; N uni25F9 ; G 3793 -U 9722 ; WX 769 ; N uni25FA ; G 3794 -U 9723 ; WX 830 ; N uni25FB ; G 3795 -U 9724 ; WX 830 ; N uni25FC ; G 3796 -U 9725 ; WX 732 ; N uni25FD ; G 3797 -U 9726 ; WX 732 ; N uni25FE ; G 3798 -U 9727 ; WX 769 ; N uni25FF ; G 3799 -U 9728 ; WX 896 ; N uni2600 ; G 3800 -U 9729 ; WX 1000 ; N uni2601 ; G 3801 -U 9730 ; WX 896 ; N uni2602 ; G 3802 -U 9731 ; WX 896 ; N uni2603 ; G 3803 -U 9732 ; WX 896 ; N uni2604 ; G 3804 -U 9733 ; WX 896 ; N uni2605 ; G 3805 -U 9734 ; WX 896 ; N uni2606 ; G 3806 -U 9735 ; WX 573 ; N uni2607 ; G 3807 -U 9736 ; WX 896 ; N uni2608 ; G 3808 -U 9737 ; WX 896 ; N uni2609 ; G 3809 -U 9738 ; WX 888 ; N uni260A ; G 3810 -U 9739 ; WX 888 ; N uni260B ; G 3811 -U 9740 ; WX 671 ; N uni260C ; G 3812 -U 9741 ; WX 1013 ; N uni260D ; G 3813 -U 9742 ; WX 1246 ; N uni260E ; G 3814 -U 9743 ; WX 1250 ; N uni260F ; G 3815 -U 9744 ; WX 896 ; N uni2610 ; G 3816 -U 9745 ; WX 896 ; N uni2611 ; G 3817 -U 9746 ; WX 896 ; N uni2612 ; G 3818 -U 9747 ; WX 532 ; N uni2613 ; G 3819 -U 9748 ; WX 896 ; N uni2614 ; G 3820 -U 9749 ; WX 896 ; N uni2615 ; G 3821 -U 9750 ; WX 896 ; N uni2616 ; G 3822 -U 9751 ; WX 896 ; N uni2617 ; G 3823 -U 9752 ; WX 896 ; N uni2618 ; G 3824 -U 9753 ; WX 896 ; N uni2619 ; G 3825 -U 9754 ; WX 896 ; N uni261A ; G 3826 -U 9755 ; WX 896 ; N uni261B ; G 3827 -U 9756 ; WX 896 ; N uni261C ; G 3828 -U 9757 ; WX 609 ; N uni261D ; G 3829 -U 9758 ; WX 896 ; N uni261E ; G 3830 -U 9759 ; WX 609 ; N uni261F ; G 3831 -U 9760 ; WX 896 ; N uni2620 ; G 3832 -U 9761 ; WX 896 ; N uni2621 ; G 3833 -U 9762 ; WX 896 ; N uni2622 ; G 3834 -U 9763 ; WX 896 ; N uni2623 ; G 3835 -U 9764 ; WX 669 ; N uni2624 ; G 3836 -U 9765 ; WX 746 ; N uni2625 ; G 3837 -U 9766 ; WX 649 ; N uni2626 ; G 3838 -U 9767 ; WX 784 ; N uni2627 ; G 3839 -U 9768 ; WX 545 ; N uni2628 ; G 3840 -U 9769 ; WX 896 ; N uni2629 ; G 3841 -U 9770 ; WX 896 ; N uni262A ; G 3842 -U 9771 ; WX 896 ; N uni262B ; G 3843 -U 9772 ; WX 710 ; N uni262C ; G 3844 -U 9773 ; WX 896 ; N uni262D ; G 3845 -U 9774 ; WX 896 ; N uni262E ; G 3846 -U 9775 ; WX 896 ; N uni262F ; G 3847 -U 9776 ; WX 896 ; N uni2630 ; G 3848 -U 9777 ; WX 896 ; N uni2631 ; G 3849 -U 9778 ; WX 896 ; N uni2632 ; G 3850 -U 9779 ; WX 896 ; N uni2633 ; G 3851 -U 9780 ; WX 896 ; N uni2634 ; G 3852 -U 9781 ; WX 896 ; N uni2635 ; G 3853 -U 9782 ; WX 896 ; N uni2636 ; G 3854 -U 9783 ; WX 896 ; N uni2637 ; G 3855 -U 9784 ; WX 896 ; N uni2638 ; G 3856 -U 9785 ; WX 1042 ; N uni2639 ; G 3857 -U 9786 ; WX 1042 ; N smileface ; G 3858 -U 9787 ; WX 1042 ; N invsmileface ; G 3859 -U 9788 ; WX 896 ; N sun ; G 3860 -U 9789 ; WX 896 ; N uni263D ; G 3861 -U 9790 ; WX 896 ; N uni263E ; G 3862 -U 9791 ; WX 614 ; N uni263F ; G 3863 -U 9792 ; WX 732 ; N female ; G 3864 -U 9793 ; WX 732 ; N uni2641 ; G 3865 -U 9794 ; WX 896 ; N male ; G 3866 -U 9795 ; WX 896 ; N uni2643 ; G 3867 -U 9796 ; WX 896 ; N uni2644 ; G 3868 -U 9797 ; WX 896 ; N uni2645 ; G 3869 -U 9798 ; WX 896 ; N uni2646 ; G 3870 -U 9799 ; WX 896 ; N uni2647 ; G 3871 -U 9800 ; WX 896 ; N uni2648 ; G 3872 -U 9801 ; WX 896 ; N uni2649 ; G 3873 -U 9802 ; WX 896 ; N uni264A ; G 3874 -U 9803 ; WX 896 ; N uni264B ; G 3875 -U 9804 ; WX 896 ; N uni264C ; G 3876 -U 9805 ; WX 896 ; N uni264D ; G 3877 -U 9806 ; WX 896 ; N uni264E ; G 3878 -U 9807 ; WX 896 ; N uni264F ; G 3879 -U 9808 ; WX 896 ; N uni2650 ; G 3880 -U 9809 ; WX 896 ; N uni2651 ; G 3881 -U 9810 ; WX 896 ; N uni2652 ; G 3882 -U 9811 ; WX 896 ; N uni2653 ; G 3883 -U 9812 ; WX 896 ; N uni2654 ; G 3884 -U 9813 ; WX 896 ; N uni2655 ; G 3885 -U 9814 ; WX 896 ; N uni2656 ; G 3886 -U 9815 ; WX 896 ; N uni2657 ; G 3887 -U 9816 ; WX 896 ; N uni2658 ; G 3888 -U 9817 ; WX 896 ; N uni2659 ; G 3889 -U 9818 ; WX 896 ; N uni265A ; G 3890 -U 9819 ; WX 896 ; N uni265B ; G 3891 -U 9820 ; WX 896 ; N uni265C ; G 3892 -U 9821 ; WX 896 ; N uni265D ; G 3893 -U 9822 ; WX 896 ; N uni265E ; G 3894 -U 9823 ; WX 896 ; N uni265F ; G 3895 -U 9824 ; WX 896 ; N spade ; G 3896 -U 9825 ; WX 896 ; N uni2661 ; G 3897 -U 9826 ; WX 896 ; N uni2662 ; G 3898 -U 9827 ; WX 896 ; N club ; G 3899 -U 9828 ; WX 896 ; N uni2664 ; G 3900 -U 9829 ; WX 896 ; N heart ; G 3901 -U 9830 ; WX 896 ; N diamond ; G 3902 -U 9831 ; WX 896 ; N uni2667 ; G 3903 -U 9832 ; WX 896 ; N uni2668 ; G 3904 -U 9833 ; WX 472 ; N uni2669 ; G 3905 -U 9834 ; WX 638 ; N musicalnote ; G 3906 -U 9835 ; WX 896 ; N musicalnotedbl ; G 3907 -U 9836 ; WX 896 ; N uni266C ; G 3908 -U 9837 ; WX 472 ; N uni266D ; G 3909 -U 9838 ; WX 357 ; N uni266E ; G 3910 -U 9839 ; WX 484 ; N uni266F ; G 3911 -U 9840 ; WX 748 ; N uni2670 ; G 3912 -U 9841 ; WX 766 ; N uni2671 ; G 3913 -U 9842 ; WX 896 ; N uni2672 ; G 3914 -U 9843 ; WX 896 ; N uni2673 ; G 3915 -U 9844 ; WX 896 ; N uni2674 ; G 3916 -U 9845 ; WX 896 ; N uni2675 ; G 3917 -U 9846 ; WX 896 ; N uni2676 ; G 3918 -U 9847 ; WX 896 ; N uni2677 ; G 3919 -U 9848 ; WX 896 ; N uni2678 ; G 3920 -U 9849 ; WX 896 ; N uni2679 ; G 3921 -U 9850 ; WX 896 ; N uni267A ; G 3922 -U 9851 ; WX 896 ; N uni267B ; G 3923 -U 9852 ; WX 896 ; N uni267C ; G 3924 -U 9853 ; WX 896 ; N uni267D ; G 3925 -U 9854 ; WX 896 ; N uni267E ; G 3926 -U 9855 ; WX 896 ; N uni267F ; G 3927 -U 9856 ; WX 869 ; N uni2680 ; G 3928 -U 9857 ; WX 869 ; N uni2681 ; G 3929 -U 9858 ; WX 869 ; N uni2682 ; G 3930 -U 9859 ; WX 869 ; N uni2683 ; G 3931 -U 9860 ; WX 869 ; N uni2684 ; G 3932 -U 9861 ; WX 869 ; N uni2685 ; G 3933 -U 9862 ; WX 896 ; N uni2686 ; G 3934 -U 9863 ; WX 896 ; N uni2687 ; G 3935 -U 9864 ; WX 896 ; N uni2688 ; G 3936 -U 9865 ; WX 896 ; N uni2689 ; G 3937 -U 9866 ; WX 896 ; N uni268A ; G 3938 -U 9867 ; WX 896 ; N uni268B ; G 3939 -U 9868 ; WX 896 ; N uni268C ; G 3940 -U 9869 ; WX 896 ; N uni268D ; G 3941 -U 9870 ; WX 896 ; N uni268E ; G 3942 -U 9871 ; WX 896 ; N uni268F ; G 3943 -U 9872 ; WX 896 ; N uni2690 ; G 3944 -U 9873 ; WX 896 ; N uni2691 ; G 3945 -U 9874 ; WX 896 ; N uni2692 ; G 3946 -U 9875 ; WX 896 ; N uni2693 ; G 3947 -U 9876 ; WX 896 ; N uni2694 ; G 3948 -U 9877 ; WX 541 ; N uni2695 ; G 3949 -U 9878 ; WX 896 ; N uni2696 ; G 3950 -U 9879 ; WX 896 ; N uni2697 ; G 3951 -U 9880 ; WX 896 ; N uni2698 ; G 3952 -U 9881 ; WX 896 ; N uni2699 ; G 3953 -U 9882 ; WX 896 ; N uni269A ; G 3954 -U 9883 ; WX 896 ; N uni269B ; G 3955 -U 9884 ; WX 896 ; N uni269C ; G 3956 -U 9886 ; WX 896 ; N uni269E ; G 3957 -U 9887 ; WX 896 ; N uni269F ; G 3958 -U 9888 ; WX 896 ; N uni26A0 ; G 3959 -U 9889 ; WX 702 ; N uni26A1 ; G 3960 -U 9890 ; WX 1004 ; N uni26A2 ; G 3961 -U 9891 ; WX 1089 ; N uni26A3 ; G 3962 -U 9892 ; WX 1175 ; N uni26A4 ; G 3963 -U 9893 ; WX 903 ; N uni26A5 ; G 3964 -U 9894 ; WX 838 ; N uni26A6 ; G 3965 -U 9895 ; WX 838 ; N uni26A7 ; G 3966 -U 9896 ; WX 838 ; N uni26A8 ; G 3967 -U 9897 ; WX 838 ; N uni26A9 ; G 3968 -U 9898 ; WX 838 ; N uni26AA ; G 3969 -U 9899 ; WX 838 ; N uni26AB ; G 3970 -U 9900 ; WX 838 ; N uni26AC ; G 3971 -U 9901 ; WX 838 ; N uni26AD ; G 3972 -U 9902 ; WX 838 ; N uni26AE ; G 3973 -U 9903 ; WX 838 ; N uni26AF ; G 3974 -U 9904 ; WX 844 ; N uni26B0 ; G 3975 -U 9905 ; WX 838 ; N uni26B1 ; G 3976 -U 9906 ; WX 732 ; N uni26B2 ; G 3977 -U 9907 ; WX 732 ; N uni26B3 ; G 3978 -U 9908 ; WX 732 ; N uni26B4 ; G 3979 -U 9909 ; WX 732 ; N uni26B5 ; G 3980 -U 9910 ; WX 850 ; N uni26B6 ; G 3981 -U 9911 ; WX 732 ; N uni26B7 ; G 3982 -U 9912 ; WX 732 ; N uni26B8 ; G 3983 -U 9920 ; WX 838 ; N uni26C0 ; G 3984 -U 9921 ; WX 838 ; N uni26C1 ; G 3985 -U 9922 ; WX 838 ; N uni26C2 ; G 3986 -U 9923 ; WX 838 ; N uni26C3 ; G 3987 -U 9954 ; WX 732 ; N uni26E2 ; G 3988 -U 9985 ; WX 838 ; N uni2701 ; G 3989 -U 9986 ; WX 838 ; N uni2702 ; G 3990 -U 9987 ; WX 838 ; N uni2703 ; G 3991 -U 9988 ; WX 838 ; N uni2704 ; G 3992 -U 9990 ; WX 838 ; N uni2706 ; G 3993 -U 9991 ; WX 838 ; N uni2707 ; G 3994 -U 9992 ; WX 838 ; N uni2708 ; G 3995 -U 9993 ; WX 838 ; N uni2709 ; G 3996 -U 9996 ; WX 838 ; N uni270C ; G 3997 -U 9997 ; WX 838 ; N uni270D ; G 3998 -U 9998 ; WX 838 ; N uni270E ; G 3999 -U 9999 ; WX 838 ; N uni270F ; G 4000 -U 10000 ; WX 838 ; N uni2710 ; G 4001 -U 10001 ; WX 838 ; N uni2711 ; G 4002 -U 10002 ; WX 838 ; N uni2712 ; G 4003 -U 10003 ; WX 838 ; N uni2713 ; G 4004 -U 10004 ; WX 838 ; N uni2714 ; G 4005 -U 10005 ; WX 838 ; N uni2715 ; G 4006 -U 10006 ; WX 838 ; N uni2716 ; G 4007 -U 10007 ; WX 838 ; N uni2717 ; G 4008 -U 10008 ; WX 838 ; N uni2718 ; G 4009 -U 10009 ; WX 838 ; N uni2719 ; G 4010 -U 10010 ; WX 838 ; N uni271A ; G 4011 -U 10011 ; WX 838 ; N uni271B ; G 4012 -U 10012 ; WX 838 ; N uni271C ; G 4013 -U 10013 ; WX 838 ; N uni271D ; G 4014 -U 10014 ; WX 838 ; N uni271E ; G 4015 -U 10015 ; WX 838 ; N uni271F ; G 4016 -U 10016 ; WX 838 ; N uni2720 ; G 4017 -U 10017 ; WX 838 ; N uni2721 ; G 4018 -U 10018 ; WX 838 ; N uni2722 ; G 4019 -U 10019 ; WX 838 ; N uni2723 ; G 4020 -U 10020 ; WX 838 ; N uni2724 ; G 4021 -U 10021 ; WX 838 ; N uni2725 ; G 4022 -U 10022 ; WX 838 ; N uni2726 ; G 4023 -U 10023 ; WX 838 ; N uni2727 ; G 4024 -U 10025 ; WX 838 ; N uni2729 ; G 4025 -U 10026 ; WX 838 ; N uni272A ; G 4026 -U 10027 ; WX 838 ; N uni272B ; G 4027 -U 10028 ; WX 838 ; N uni272C ; G 4028 -U 10029 ; WX 838 ; N uni272D ; G 4029 -U 10030 ; WX 838 ; N uni272E ; G 4030 -U 10031 ; WX 838 ; N uni272F ; G 4031 -U 10032 ; WX 838 ; N uni2730 ; G 4032 -U 10033 ; WX 838 ; N uni2731 ; G 4033 -U 10034 ; WX 838 ; N uni2732 ; G 4034 -U 10035 ; WX 838 ; N uni2733 ; G 4035 -U 10036 ; WX 838 ; N uni2734 ; G 4036 -U 10037 ; WX 838 ; N uni2735 ; G 4037 -U 10038 ; WX 838 ; N uni2736 ; G 4038 -U 10039 ; WX 838 ; N uni2737 ; G 4039 -U 10040 ; WX 838 ; N uni2738 ; G 4040 -U 10041 ; WX 838 ; N uni2739 ; G 4041 -U 10042 ; WX 838 ; N uni273A ; G 4042 -U 10043 ; WX 838 ; N uni273B ; G 4043 -U 10044 ; WX 838 ; N uni273C ; G 4044 -U 10045 ; WX 838 ; N uni273D ; G 4045 -U 10046 ; WX 838 ; N uni273E ; G 4046 -U 10047 ; WX 838 ; N uni273F ; G 4047 -U 10048 ; WX 838 ; N uni2740 ; G 4048 -U 10049 ; WX 838 ; N uni2741 ; G 4049 -U 10050 ; WX 838 ; N uni2742 ; G 4050 -U 10051 ; WX 838 ; N uni2743 ; G 4051 -U 10052 ; WX 838 ; N uni2744 ; G 4052 -U 10053 ; WX 838 ; N uni2745 ; G 4053 -U 10054 ; WX 838 ; N uni2746 ; G 4054 -U 10055 ; WX 838 ; N uni2747 ; G 4055 -U 10056 ; WX 838 ; N uni2748 ; G 4056 -U 10057 ; WX 838 ; N uni2749 ; G 4057 -U 10058 ; WX 838 ; N uni274A ; G 4058 -U 10059 ; WX 838 ; N uni274B ; G 4059 -U 10061 ; WX 896 ; N uni274D ; G 4060 -U 10063 ; WX 896 ; N uni274F ; G 4061 -U 10064 ; WX 896 ; N uni2750 ; G 4062 -U 10065 ; WX 896 ; N uni2751 ; G 4063 -U 10066 ; WX 896 ; N uni2752 ; G 4064 -U 10070 ; WX 896 ; N uni2756 ; G 4065 -U 10072 ; WX 838 ; N uni2758 ; G 4066 -U 10073 ; WX 838 ; N uni2759 ; G 4067 -U 10074 ; WX 838 ; N uni275A ; G 4068 -U 10075 ; WX 347 ; N uni275B ; G 4069 -U 10076 ; WX 347 ; N uni275C ; G 4070 -U 10077 ; WX 587 ; N uni275D ; G 4071 -U 10078 ; WX 587 ; N uni275E ; G 4072 -U 10081 ; WX 838 ; N uni2761 ; G 4073 -U 10082 ; WX 838 ; N uni2762 ; G 4074 -U 10083 ; WX 838 ; N uni2763 ; G 4075 -U 10084 ; WX 838 ; N uni2764 ; G 4076 -U 10085 ; WX 838 ; N uni2765 ; G 4077 -U 10086 ; WX 838 ; N uni2766 ; G 4078 -U 10087 ; WX 838 ; N uni2767 ; G 4079 -U 10088 ; WX 838 ; N uni2768 ; G 4080 -U 10089 ; WX 838 ; N uni2769 ; G 4081 -U 10090 ; WX 838 ; N uni276A ; G 4082 -U 10091 ; WX 838 ; N uni276B ; G 4083 -U 10092 ; WX 838 ; N uni276C ; G 4084 -U 10093 ; WX 838 ; N uni276D ; G 4085 -U 10094 ; WX 838 ; N uni276E ; G 4086 -U 10095 ; WX 838 ; N uni276F ; G 4087 -U 10096 ; WX 838 ; N uni2770 ; G 4088 -U 10097 ; WX 838 ; N uni2771 ; G 4089 -U 10098 ; WX 838 ; N uni2772 ; G 4090 -U 10099 ; WX 838 ; N uni2773 ; G 4091 -U 10100 ; WX 838 ; N uni2774 ; G 4092 -U 10101 ; WX 838 ; N uni2775 ; G 4093 -U 10102 ; WX 847 ; N uni2776 ; G 4094 -U 10103 ; WX 847 ; N uni2777 ; G 4095 -U 10104 ; WX 847 ; N uni2778 ; G 4096 -U 10105 ; WX 847 ; N uni2779 ; G 4097 -U 10106 ; WX 847 ; N uni277A ; G 4098 -U 10107 ; WX 847 ; N uni277B ; G 4099 -U 10108 ; WX 847 ; N uni277C ; G 4100 -U 10109 ; WX 847 ; N uni277D ; G 4101 -U 10110 ; WX 847 ; N uni277E ; G 4102 -U 10111 ; WX 847 ; N uni277F ; G 4103 -U 10112 ; WX 838 ; N uni2780 ; G 4104 -U 10113 ; WX 838 ; N uni2781 ; G 4105 -U 10114 ; WX 838 ; N uni2782 ; G 4106 -U 10115 ; WX 838 ; N uni2783 ; G 4107 -U 10116 ; WX 838 ; N uni2784 ; G 4108 -U 10117 ; WX 838 ; N uni2785 ; G 4109 -U 10118 ; WX 838 ; N uni2786 ; G 4110 -U 10119 ; WX 838 ; N uni2787 ; G 4111 -U 10120 ; WX 838 ; N uni2788 ; G 4112 -U 10121 ; WX 838 ; N uni2789 ; G 4113 -U 10122 ; WX 838 ; N uni278A ; G 4114 -U 10123 ; WX 838 ; N uni278B ; G 4115 -U 10124 ; WX 838 ; N uni278C ; G 4116 -U 10125 ; WX 838 ; N uni278D ; G 4117 -U 10126 ; WX 838 ; N uni278E ; G 4118 -U 10127 ; WX 838 ; N uni278F ; G 4119 -U 10128 ; WX 838 ; N uni2790 ; G 4120 -U 10129 ; WX 838 ; N uni2791 ; G 4121 -U 10130 ; WX 838 ; N uni2792 ; G 4122 -U 10131 ; WX 838 ; N uni2793 ; G 4123 -U 10132 ; WX 838 ; N uni2794 ; G 4124 -U 10136 ; WX 838 ; N uni2798 ; G 4125 -U 10137 ; WX 838 ; N uni2799 ; G 4126 -U 10138 ; WX 838 ; N uni279A ; G 4127 -U 10139 ; WX 838 ; N uni279B ; G 4128 -U 10140 ; WX 838 ; N uni279C ; G 4129 -U 10141 ; WX 838 ; N uni279D ; G 4130 -U 10142 ; WX 838 ; N uni279E ; G 4131 -U 10143 ; WX 838 ; N uni279F ; G 4132 -U 10144 ; WX 838 ; N uni27A0 ; G 4133 -U 10145 ; WX 838 ; N uni27A1 ; G 4134 -U 10146 ; WX 838 ; N uni27A2 ; G 4135 -U 10147 ; WX 838 ; N uni27A3 ; G 4136 -U 10148 ; WX 838 ; N uni27A4 ; G 4137 -U 10149 ; WX 838 ; N uni27A5 ; G 4138 -U 10150 ; WX 838 ; N uni27A6 ; G 4139 -U 10151 ; WX 838 ; N uni27A7 ; G 4140 -U 10152 ; WX 838 ; N uni27A8 ; G 4141 -U 10153 ; WX 838 ; N uni27A9 ; G 4142 -U 10154 ; WX 838 ; N uni27AA ; G 4143 -U 10155 ; WX 838 ; N uni27AB ; G 4144 -U 10156 ; WX 838 ; N uni27AC ; G 4145 -U 10157 ; WX 838 ; N uni27AD ; G 4146 -U 10158 ; WX 838 ; N uni27AE ; G 4147 -U 10159 ; WX 838 ; N uni27AF ; G 4148 -U 10161 ; WX 838 ; N uni27B1 ; G 4149 -U 10162 ; WX 838 ; N uni27B2 ; G 4150 -U 10163 ; WX 838 ; N uni27B3 ; G 4151 -U 10164 ; WX 838 ; N uni27B4 ; G 4152 -U 10165 ; WX 838 ; N uni27B5 ; G 4153 -U 10166 ; WX 838 ; N uni27B6 ; G 4154 -U 10167 ; WX 838 ; N uni27B7 ; G 4155 -U 10168 ; WX 838 ; N uni27B8 ; G 4156 -U 10169 ; WX 838 ; N uni27B9 ; G 4157 -U 10170 ; WX 838 ; N uni27BA ; G 4158 -U 10171 ; WX 838 ; N uni27BB ; G 4159 -U 10172 ; WX 838 ; N uni27BC ; G 4160 -U 10173 ; WX 838 ; N uni27BD ; G 4161 -U 10174 ; WX 838 ; N uni27BE ; G 4162 -U 10181 ; WX 457 ; N uni27C5 ; G 4163 -U 10182 ; WX 457 ; N uni27C6 ; G 4164 -U 10208 ; WX 494 ; N uni27E0 ; G 4165 -U 10214 ; WX 487 ; N uni27E6 ; G 4166 -U 10215 ; WX 487 ; N uni27E7 ; G 4167 -U 10216 ; WX 457 ; N uni27E8 ; G 4168 -U 10217 ; WX 457 ; N uni27E9 ; G 4169 -U 10218 ; WX 721 ; N uni27EA ; G 4170 -U 10219 ; WX 721 ; N uni27EB ; G 4171 -U 10224 ; WX 838 ; N uni27F0 ; G 4172 -U 10225 ; WX 838 ; N uni27F1 ; G 4173 -U 10226 ; WX 838 ; N uni27F2 ; G 4174 -U 10227 ; WX 838 ; N uni27F3 ; G 4175 -U 10228 ; WX 1157 ; N uni27F4 ; G 4176 -U 10229 ; WX 1434 ; N uni27F5 ; G 4177 -U 10230 ; WX 1434 ; N uni27F6 ; G 4178 -U 10231 ; WX 1434 ; N uni27F7 ; G 4179 -U 10232 ; WX 1434 ; N uni27F8 ; G 4180 -U 10233 ; WX 1434 ; N uni27F9 ; G 4181 -U 10234 ; WX 1434 ; N uni27FA ; G 4182 -U 10235 ; WX 1434 ; N uni27FB ; G 4183 -U 10236 ; WX 1434 ; N uni27FC ; G 4184 -U 10237 ; WX 1434 ; N uni27FD ; G 4185 -U 10238 ; WX 1434 ; N uni27FE ; G 4186 -U 10239 ; WX 1434 ; N uni27FF ; G 4187 -U 10240 ; WX 781 ; N uni2800 ; G 4188 -U 10241 ; WX 781 ; N uni2801 ; G 4189 -U 10242 ; WX 781 ; N uni2802 ; G 4190 -U 10243 ; WX 781 ; N uni2803 ; G 4191 -U 10244 ; WX 781 ; N uni2804 ; G 4192 -U 10245 ; WX 781 ; N uni2805 ; G 4193 -U 10246 ; WX 781 ; N uni2806 ; G 4194 -U 10247 ; WX 781 ; N uni2807 ; G 4195 -U 10248 ; WX 781 ; N uni2808 ; G 4196 -U 10249 ; WX 781 ; N uni2809 ; G 4197 -U 10250 ; WX 781 ; N uni280A ; G 4198 -U 10251 ; WX 781 ; N uni280B ; G 4199 -U 10252 ; WX 781 ; N uni280C ; G 4200 -U 10253 ; WX 781 ; N uni280D ; G 4201 -U 10254 ; WX 781 ; N uni280E ; G 4202 -U 10255 ; WX 781 ; N uni280F ; G 4203 -U 10256 ; WX 781 ; N uni2810 ; G 4204 -U 10257 ; WX 781 ; N uni2811 ; G 4205 -U 10258 ; WX 781 ; N uni2812 ; G 4206 -U 10259 ; WX 781 ; N uni2813 ; G 4207 -U 10260 ; WX 781 ; N uni2814 ; G 4208 -U 10261 ; WX 781 ; N uni2815 ; G 4209 -U 10262 ; WX 781 ; N uni2816 ; G 4210 -U 10263 ; WX 781 ; N uni2817 ; G 4211 -U 10264 ; WX 781 ; N uni2818 ; G 4212 -U 10265 ; WX 781 ; N uni2819 ; G 4213 -U 10266 ; WX 781 ; N uni281A ; G 4214 -U 10267 ; WX 781 ; N uni281B ; G 4215 -U 10268 ; WX 781 ; N uni281C ; G 4216 -U 10269 ; WX 781 ; N uni281D ; G 4217 -U 10270 ; WX 781 ; N uni281E ; G 4218 -U 10271 ; WX 781 ; N uni281F ; G 4219 -U 10272 ; WX 781 ; N uni2820 ; G 4220 -U 10273 ; WX 781 ; N uni2821 ; G 4221 -U 10274 ; WX 781 ; N uni2822 ; G 4222 -U 10275 ; WX 781 ; N uni2823 ; G 4223 -U 10276 ; WX 781 ; N uni2824 ; G 4224 -U 10277 ; WX 781 ; N uni2825 ; G 4225 -U 10278 ; WX 781 ; N uni2826 ; G 4226 -U 10279 ; WX 781 ; N uni2827 ; G 4227 -U 10280 ; WX 781 ; N uni2828 ; G 4228 -U 10281 ; WX 781 ; N uni2829 ; G 4229 -U 10282 ; WX 781 ; N uni282A ; G 4230 -U 10283 ; WX 781 ; N uni282B ; G 4231 -U 10284 ; WX 781 ; N uni282C ; G 4232 -U 10285 ; WX 781 ; N uni282D ; G 4233 -U 10286 ; WX 781 ; N uni282E ; G 4234 -U 10287 ; WX 781 ; N uni282F ; G 4235 -U 10288 ; WX 781 ; N uni2830 ; G 4236 -U 10289 ; WX 781 ; N uni2831 ; G 4237 -U 10290 ; WX 781 ; N uni2832 ; G 4238 -U 10291 ; WX 781 ; N uni2833 ; G 4239 -U 10292 ; WX 781 ; N uni2834 ; G 4240 -U 10293 ; WX 781 ; N uni2835 ; G 4241 -U 10294 ; WX 781 ; N uni2836 ; G 4242 -U 10295 ; WX 781 ; N uni2837 ; G 4243 -U 10296 ; WX 781 ; N uni2838 ; G 4244 -U 10297 ; WX 781 ; N uni2839 ; G 4245 -U 10298 ; WX 781 ; N uni283A ; G 4246 -U 10299 ; WX 781 ; N uni283B ; G 4247 -U 10300 ; WX 781 ; N uni283C ; G 4248 -U 10301 ; WX 781 ; N uni283D ; G 4249 -U 10302 ; WX 781 ; N uni283E ; G 4250 -U 10303 ; WX 781 ; N uni283F ; G 4251 -U 10304 ; WX 781 ; N uni2840 ; G 4252 -U 10305 ; WX 781 ; N uni2841 ; G 4253 -U 10306 ; WX 781 ; N uni2842 ; G 4254 -U 10307 ; WX 781 ; N uni2843 ; G 4255 -U 10308 ; WX 781 ; N uni2844 ; G 4256 -U 10309 ; WX 781 ; N uni2845 ; G 4257 -U 10310 ; WX 781 ; N uni2846 ; G 4258 -U 10311 ; WX 781 ; N uni2847 ; G 4259 -U 10312 ; WX 781 ; N uni2848 ; G 4260 -U 10313 ; WX 781 ; N uni2849 ; G 4261 -U 10314 ; WX 781 ; N uni284A ; G 4262 -U 10315 ; WX 781 ; N uni284B ; G 4263 -U 10316 ; WX 781 ; N uni284C ; G 4264 -U 10317 ; WX 781 ; N uni284D ; G 4265 -U 10318 ; WX 781 ; N uni284E ; G 4266 -U 10319 ; WX 781 ; N uni284F ; G 4267 -U 10320 ; WX 781 ; N uni2850 ; G 4268 -U 10321 ; WX 781 ; N uni2851 ; G 4269 -U 10322 ; WX 781 ; N uni2852 ; G 4270 -U 10323 ; WX 781 ; N uni2853 ; G 4271 -U 10324 ; WX 781 ; N uni2854 ; G 4272 -U 10325 ; WX 781 ; N uni2855 ; G 4273 -U 10326 ; WX 781 ; N uni2856 ; G 4274 -U 10327 ; WX 781 ; N uni2857 ; G 4275 -U 10328 ; WX 781 ; N uni2858 ; G 4276 -U 10329 ; WX 781 ; N uni2859 ; G 4277 -U 10330 ; WX 781 ; N uni285A ; G 4278 -U 10331 ; WX 781 ; N uni285B ; G 4279 -U 10332 ; WX 781 ; N uni285C ; G 4280 -U 10333 ; WX 781 ; N uni285D ; G 4281 -U 10334 ; WX 781 ; N uni285E ; G 4282 -U 10335 ; WX 781 ; N uni285F ; G 4283 -U 10336 ; WX 781 ; N uni2860 ; G 4284 -U 10337 ; WX 781 ; N uni2861 ; G 4285 -U 10338 ; WX 781 ; N uni2862 ; G 4286 -U 10339 ; WX 781 ; N uni2863 ; G 4287 -U 10340 ; WX 781 ; N uni2864 ; G 4288 -U 10341 ; WX 781 ; N uni2865 ; G 4289 -U 10342 ; WX 781 ; N uni2866 ; G 4290 -U 10343 ; WX 781 ; N uni2867 ; G 4291 -U 10344 ; WX 781 ; N uni2868 ; G 4292 -U 10345 ; WX 781 ; N uni2869 ; G 4293 -U 10346 ; WX 781 ; N uni286A ; G 4294 -U 10347 ; WX 781 ; N uni286B ; G 4295 -U 10348 ; WX 781 ; N uni286C ; G 4296 -U 10349 ; WX 781 ; N uni286D ; G 4297 -U 10350 ; WX 781 ; N uni286E ; G 4298 -U 10351 ; WX 781 ; N uni286F ; G 4299 -U 10352 ; WX 781 ; N uni2870 ; G 4300 -U 10353 ; WX 781 ; N uni2871 ; G 4301 -U 10354 ; WX 781 ; N uni2872 ; G 4302 -U 10355 ; WX 781 ; N uni2873 ; G 4303 -U 10356 ; WX 781 ; N uni2874 ; G 4304 -U 10357 ; WX 781 ; N uni2875 ; G 4305 -U 10358 ; WX 781 ; N uni2876 ; G 4306 -U 10359 ; WX 781 ; N uni2877 ; G 4307 -U 10360 ; WX 781 ; N uni2878 ; G 4308 -U 10361 ; WX 781 ; N uni2879 ; G 4309 -U 10362 ; WX 781 ; N uni287A ; G 4310 -U 10363 ; WX 781 ; N uni287B ; G 4311 -U 10364 ; WX 781 ; N uni287C ; G 4312 -U 10365 ; WX 781 ; N uni287D ; G 4313 -U 10366 ; WX 781 ; N uni287E ; G 4314 -U 10367 ; WX 781 ; N uni287F ; G 4315 -U 10368 ; WX 781 ; N uni2880 ; G 4316 -U 10369 ; WX 781 ; N uni2881 ; G 4317 -U 10370 ; WX 781 ; N uni2882 ; G 4318 -U 10371 ; WX 781 ; N uni2883 ; G 4319 -U 10372 ; WX 781 ; N uni2884 ; G 4320 -U 10373 ; WX 781 ; N uni2885 ; G 4321 -U 10374 ; WX 781 ; N uni2886 ; G 4322 -U 10375 ; WX 781 ; N uni2887 ; G 4323 -U 10376 ; WX 781 ; N uni2888 ; G 4324 -U 10377 ; WX 781 ; N uni2889 ; G 4325 -U 10378 ; WX 781 ; N uni288A ; G 4326 -U 10379 ; WX 781 ; N uni288B ; G 4327 -U 10380 ; WX 781 ; N uni288C ; G 4328 -U 10381 ; WX 781 ; N uni288D ; G 4329 -U 10382 ; WX 781 ; N uni288E ; G 4330 -U 10383 ; WX 781 ; N uni288F ; G 4331 -U 10384 ; WX 781 ; N uni2890 ; G 4332 -U 10385 ; WX 781 ; N uni2891 ; G 4333 -U 10386 ; WX 781 ; N uni2892 ; G 4334 -U 10387 ; WX 781 ; N uni2893 ; G 4335 -U 10388 ; WX 781 ; N uni2894 ; G 4336 -U 10389 ; WX 781 ; N uni2895 ; G 4337 -U 10390 ; WX 781 ; N uni2896 ; G 4338 -U 10391 ; WX 781 ; N uni2897 ; G 4339 -U 10392 ; WX 781 ; N uni2898 ; G 4340 -U 10393 ; WX 781 ; N uni2899 ; G 4341 -U 10394 ; WX 781 ; N uni289A ; G 4342 -U 10395 ; WX 781 ; N uni289B ; G 4343 -U 10396 ; WX 781 ; N uni289C ; G 4344 -U 10397 ; WX 781 ; N uni289D ; G 4345 -U 10398 ; WX 781 ; N uni289E ; G 4346 -U 10399 ; WX 781 ; N uni289F ; G 4347 -U 10400 ; WX 781 ; N uni28A0 ; G 4348 -U 10401 ; WX 781 ; N uni28A1 ; G 4349 -U 10402 ; WX 781 ; N uni28A2 ; G 4350 -U 10403 ; WX 781 ; N uni28A3 ; G 4351 -U 10404 ; WX 781 ; N uni28A4 ; G 4352 -U 10405 ; WX 781 ; N uni28A5 ; G 4353 -U 10406 ; WX 781 ; N uni28A6 ; G 4354 -U 10407 ; WX 781 ; N uni28A7 ; G 4355 -U 10408 ; WX 781 ; N uni28A8 ; G 4356 -U 10409 ; WX 781 ; N uni28A9 ; G 4357 -U 10410 ; WX 781 ; N uni28AA ; G 4358 -U 10411 ; WX 781 ; N uni28AB ; G 4359 -U 10412 ; WX 781 ; N uni28AC ; G 4360 -U 10413 ; WX 781 ; N uni28AD ; G 4361 -U 10414 ; WX 781 ; N uni28AE ; G 4362 -U 10415 ; WX 781 ; N uni28AF ; G 4363 -U 10416 ; WX 781 ; N uni28B0 ; G 4364 -U 10417 ; WX 781 ; N uni28B1 ; G 4365 -U 10418 ; WX 781 ; N uni28B2 ; G 4366 -U 10419 ; WX 781 ; N uni28B3 ; G 4367 -U 10420 ; WX 781 ; N uni28B4 ; G 4368 -U 10421 ; WX 781 ; N uni28B5 ; G 4369 -U 10422 ; WX 781 ; N uni28B6 ; G 4370 -U 10423 ; WX 781 ; N uni28B7 ; G 4371 -U 10424 ; WX 781 ; N uni28B8 ; G 4372 -U 10425 ; WX 781 ; N uni28B9 ; G 4373 -U 10426 ; WX 781 ; N uni28BA ; G 4374 -U 10427 ; WX 781 ; N uni28BB ; G 4375 -U 10428 ; WX 781 ; N uni28BC ; G 4376 -U 10429 ; WX 781 ; N uni28BD ; G 4377 -U 10430 ; WX 781 ; N uni28BE ; G 4378 -U 10431 ; WX 781 ; N uni28BF ; G 4379 -U 10432 ; WX 781 ; N uni28C0 ; G 4380 -U 10433 ; WX 781 ; N uni28C1 ; G 4381 -U 10434 ; WX 781 ; N uni28C2 ; G 4382 -U 10435 ; WX 781 ; N uni28C3 ; G 4383 -U 10436 ; WX 781 ; N uni28C4 ; G 4384 -U 10437 ; WX 781 ; N uni28C5 ; G 4385 -U 10438 ; WX 781 ; N uni28C6 ; G 4386 -U 10439 ; WX 781 ; N uni28C7 ; G 4387 -U 10440 ; WX 781 ; N uni28C8 ; G 4388 -U 10441 ; WX 781 ; N uni28C9 ; G 4389 -U 10442 ; WX 781 ; N uni28CA ; G 4390 -U 10443 ; WX 781 ; N uni28CB ; G 4391 -U 10444 ; WX 781 ; N uni28CC ; G 4392 -U 10445 ; WX 781 ; N uni28CD ; G 4393 -U 10446 ; WX 781 ; N uni28CE ; G 4394 -U 10447 ; WX 781 ; N uni28CF ; G 4395 -U 10448 ; WX 781 ; N uni28D0 ; G 4396 -U 10449 ; WX 781 ; N uni28D1 ; G 4397 -U 10450 ; WX 781 ; N uni28D2 ; G 4398 -U 10451 ; WX 781 ; N uni28D3 ; G 4399 -U 10452 ; WX 781 ; N uni28D4 ; G 4400 -U 10453 ; WX 781 ; N uni28D5 ; G 4401 -U 10454 ; WX 781 ; N uni28D6 ; G 4402 -U 10455 ; WX 781 ; N uni28D7 ; G 4403 -U 10456 ; WX 781 ; N uni28D8 ; G 4404 -U 10457 ; WX 781 ; N uni28D9 ; G 4405 -U 10458 ; WX 781 ; N uni28DA ; G 4406 -U 10459 ; WX 781 ; N uni28DB ; G 4407 -U 10460 ; WX 781 ; N uni28DC ; G 4408 -U 10461 ; WX 781 ; N uni28DD ; G 4409 -U 10462 ; WX 781 ; N uni28DE ; G 4410 -U 10463 ; WX 781 ; N uni28DF ; G 4411 -U 10464 ; WX 781 ; N uni28E0 ; G 4412 -U 10465 ; WX 781 ; N uni28E1 ; G 4413 -U 10466 ; WX 781 ; N uni28E2 ; G 4414 -U 10467 ; WX 781 ; N uni28E3 ; G 4415 -U 10468 ; WX 781 ; N uni28E4 ; G 4416 -U 10469 ; WX 781 ; N uni28E5 ; G 4417 -U 10470 ; WX 781 ; N uni28E6 ; G 4418 -U 10471 ; WX 781 ; N uni28E7 ; G 4419 -U 10472 ; WX 781 ; N uni28E8 ; G 4420 -U 10473 ; WX 781 ; N uni28E9 ; G 4421 -U 10474 ; WX 781 ; N uni28EA ; G 4422 -U 10475 ; WX 781 ; N uni28EB ; G 4423 -U 10476 ; WX 781 ; N uni28EC ; G 4424 -U 10477 ; WX 781 ; N uni28ED ; G 4425 -U 10478 ; WX 781 ; N uni28EE ; G 4426 -U 10479 ; WX 781 ; N uni28EF ; G 4427 -U 10480 ; WX 781 ; N uni28F0 ; G 4428 -U 10481 ; WX 781 ; N uni28F1 ; G 4429 -U 10482 ; WX 781 ; N uni28F2 ; G 4430 -U 10483 ; WX 781 ; N uni28F3 ; G 4431 -U 10484 ; WX 781 ; N uni28F4 ; G 4432 -U 10485 ; WX 781 ; N uni28F5 ; G 4433 -U 10486 ; WX 781 ; N uni28F6 ; G 4434 -U 10487 ; WX 781 ; N uni28F7 ; G 4435 -U 10488 ; WX 781 ; N uni28F8 ; G 4436 -U 10489 ; WX 781 ; N uni28F9 ; G 4437 -U 10490 ; WX 781 ; N uni28FA ; G 4438 -U 10491 ; WX 781 ; N uni28FB ; G 4439 -U 10492 ; WX 781 ; N uni28FC ; G 4440 -U 10493 ; WX 781 ; N uni28FD ; G 4441 -U 10494 ; WX 781 ; N uni28FE ; G 4442 -U 10495 ; WX 781 ; N uni28FF ; G 4443 -U 10502 ; WX 838 ; N uni2906 ; G 4444 -U 10503 ; WX 838 ; N uni2907 ; G 4445 -U 10506 ; WX 838 ; N uni290A ; G 4446 -U 10507 ; WX 838 ; N uni290B ; G 4447 -U 10560 ; WX 838 ; N uni2940 ; G 4448 -U 10561 ; WX 838 ; N uni2941 ; G 4449 -U 10627 ; WX 753 ; N uni2983 ; G 4450 -U 10628 ; WX 753 ; N uni2984 ; G 4451 -U 10702 ; WX 838 ; N uni29CE ; G 4452 -U 10703 ; WX 1046 ; N uni29CF ; G 4453 -U 10704 ; WX 1046 ; N uni29D0 ; G 4454 -U 10705 ; WX 1000 ; N uni29D1 ; G 4455 -U 10706 ; WX 1000 ; N uni29D2 ; G 4456 -U 10707 ; WX 1000 ; N uni29D3 ; G 4457 -U 10708 ; WX 1000 ; N uni29D4 ; G 4458 -U 10709 ; WX 1000 ; N uni29D5 ; G 4459 -U 10731 ; WX 494 ; N uni29EB ; G 4460 -U 10746 ; WX 838 ; N uni29FA ; G 4461 -U 10747 ; WX 838 ; N uni29FB ; G 4462 -U 10752 ; WX 1000 ; N uni2A00 ; G 4463 -U 10753 ; WX 1000 ; N uni2A01 ; G 4464 -U 10754 ; WX 1000 ; N uni2A02 ; G 4465 -U 10764 ; WX 1661 ; N uni2A0C ; G 4466 -U 10765 ; WX 563 ; N uni2A0D ; G 4467 -U 10766 ; WX 563 ; N uni2A0E ; G 4468 -U 10767 ; WX 563 ; N uni2A0F ; G 4469 -U 10768 ; WX 563 ; N uni2A10 ; G 4470 -U 10769 ; WX 563 ; N uni2A11 ; G 4471 -U 10770 ; WX 563 ; N uni2A12 ; G 4472 -U 10771 ; WX 563 ; N uni2A13 ; G 4473 -U 10772 ; WX 563 ; N uni2A14 ; G 4474 -U 10773 ; WX 563 ; N uni2A15 ; G 4475 -U 10774 ; WX 563 ; N uni2A16 ; G 4476 -U 10775 ; WX 563 ; N uni2A17 ; G 4477 -U 10776 ; WX 563 ; N uni2A18 ; G 4478 -U 10777 ; WX 563 ; N uni2A19 ; G 4479 -U 10778 ; WX 563 ; N uni2A1A ; G 4480 -U 10779 ; WX 563 ; N uni2A1B ; G 4481 -U 10780 ; WX 563 ; N uni2A1C ; G 4482 -U 10799 ; WX 838 ; N uni2A2F ; G 4483 -U 10858 ; WX 838 ; N uni2A6A ; G 4484 -U 10859 ; WX 838 ; N uni2A6B ; G 4485 -U 10877 ; WX 838 ; N uni2A7D ; G 4486 -U 10878 ; WX 838 ; N uni2A7E ; G 4487 -U 10879 ; WX 838 ; N uni2A7F ; G 4488 -U 10880 ; WX 838 ; N uni2A80 ; G 4489 -U 10881 ; WX 838 ; N uni2A81 ; G 4490 -U 10882 ; WX 838 ; N uni2A82 ; G 4491 -U 10883 ; WX 838 ; N uni2A83 ; G 4492 -U 10884 ; WX 838 ; N uni2A84 ; G 4493 -U 10885 ; WX 838 ; N uni2A85 ; G 4494 -U 10886 ; WX 838 ; N uni2A86 ; G 4495 -U 10887 ; WX 838 ; N uni2A87 ; G 4496 -U 10888 ; WX 838 ; N uni2A88 ; G 4497 -U 10889 ; WX 838 ; N uni2A89 ; G 4498 -U 10890 ; WX 838 ; N uni2A8A ; G 4499 -U 10891 ; WX 838 ; N uni2A8B ; G 4500 -U 10892 ; WX 838 ; N uni2A8C ; G 4501 -U 10893 ; WX 838 ; N uni2A8D ; G 4502 -U 10894 ; WX 838 ; N uni2A8E ; G 4503 -U 10895 ; WX 838 ; N uni2A8F ; G 4504 -U 10896 ; WX 838 ; N uni2A90 ; G 4505 -U 10897 ; WX 838 ; N uni2A91 ; G 4506 -U 10898 ; WX 838 ; N uni2A92 ; G 4507 -U 10899 ; WX 838 ; N uni2A93 ; G 4508 -U 10900 ; WX 838 ; N uni2A94 ; G 4509 -U 10901 ; WX 838 ; N uni2A95 ; G 4510 -U 10902 ; WX 838 ; N uni2A96 ; G 4511 -U 10903 ; WX 838 ; N uni2A97 ; G 4512 -U 10904 ; WX 838 ; N uni2A98 ; G 4513 -U 10905 ; WX 838 ; N uni2A99 ; G 4514 -U 10906 ; WX 838 ; N uni2A9A ; G 4515 -U 10907 ; WX 838 ; N uni2A9B ; G 4516 -U 10908 ; WX 838 ; N uni2A9C ; G 4517 -U 10909 ; WX 838 ; N uni2A9D ; G 4518 -U 10910 ; WX 838 ; N uni2A9E ; G 4519 -U 10911 ; WX 838 ; N uni2A9F ; G 4520 -U 10912 ; WX 838 ; N uni2AA0 ; G 4521 -U 10926 ; WX 838 ; N uni2AAE ; G 4522 -U 10927 ; WX 838 ; N uni2AAF ; G 4523 -U 10928 ; WX 838 ; N uni2AB0 ; G 4524 -U 10929 ; WX 838 ; N uni2AB1 ; G 4525 -U 10930 ; WX 838 ; N uni2AB2 ; G 4526 -U 10931 ; WX 838 ; N uni2AB3 ; G 4527 -U 10932 ; WX 838 ; N uni2AB4 ; G 4528 -U 10933 ; WX 838 ; N uni2AB5 ; G 4529 -U 10934 ; WX 838 ; N uni2AB6 ; G 4530 -U 10935 ; WX 838 ; N uni2AB7 ; G 4531 -U 10936 ; WX 838 ; N uni2AB8 ; G 4532 -U 10937 ; WX 838 ; N uni2AB9 ; G 4533 -U 10938 ; WX 838 ; N uni2ABA ; G 4534 -U 11001 ; WX 838 ; N uni2AF9 ; G 4535 -U 11002 ; WX 838 ; N uni2AFA ; G 4536 -U 11008 ; WX 838 ; N uni2B00 ; G 4537 -U 11009 ; WX 838 ; N uni2B01 ; G 4538 -U 11010 ; WX 838 ; N uni2B02 ; G 4539 -U 11011 ; WX 838 ; N uni2B03 ; G 4540 -U 11012 ; WX 838 ; N uni2B04 ; G 4541 -U 11013 ; WX 838 ; N uni2B05 ; G 4542 -U 11014 ; WX 838 ; N uni2B06 ; G 4543 -U 11015 ; WX 838 ; N uni2B07 ; G 4544 -U 11016 ; WX 838 ; N uni2B08 ; G 4545 -U 11017 ; WX 838 ; N uni2B09 ; G 4546 -U 11018 ; WX 838 ; N uni2B0A ; G 4547 -U 11019 ; WX 838 ; N uni2B0B ; G 4548 -U 11020 ; WX 838 ; N uni2B0C ; G 4549 -U 11021 ; WX 838 ; N uni2B0D ; G 4550 -U 11022 ; WX 838 ; N uni2B0E ; G 4551 -U 11023 ; WX 838 ; N uni2B0F ; G 4552 -U 11024 ; WX 838 ; N uni2B10 ; G 4553 -U 11025 ; WX 838 ; N uni2B11 ; G 4554 -U 11026 ; WX 945 ; N uni2B12 ; G 4555 -U 11027 ; WX 945 ; N uni2B13 ; G 4556 -U 11028 ; WX 945 ; N uni2B14 ; G 4557 -U 11029 ; WX 945 ; N uni2B15 ; G 4558 -U 11030 ; WX 769 ; N uni2B16 ; G 4559 -U 11031 ; WX 769 ; N uni2B17 ; G 4560 -U 11032 ; WX 769 ; N uni2B18 ; G 4561 -U 11033 ; WX 769 ; N uni2B19 ; G 4562 -U 11034 ; WX 945 ; N uni2B1A ; G 4563 -U 11039 ; WX 869 ; N uni2B1F ; G 4564 -U 11040 ; WX 869 ; N uni2B20 ; G 4565 -U 11041 ; WX 873 ; N uni2B21 ; G 4566 -U 11042 ; WX 873 ; N uni2B22 ; G 4567 -U 11043 ; WX 873 ; N uni2B23 ; G 4568 -U 11044 ; WX 1119 ; N uni2B24 ; G 4569 -U 11091 ; WX 869 ; N uni2B53 ; G 4570 -U 11092 ; WX 869 ; N uni2B54 ; G 4571 -U 11360 ; WX 637 ; N uni2C60 ; G 4572 -U 11361 ; WX 360 ; N uni2C61 ; G 4573 -U 11362 ; WX 637 ; N uni2C62 ; G 4574 -U 11363 ; WX 733 ; N uni2C63 ; G 4575 -U 11364 ; WX 770 ; N uni2C64 ; G 4576 -U 11365 ; WX 675 ; N uni2C65 ; G 4577 -U 11366 ; WX 478 ; N uni2C66 ; G 4578 -U 11367 ; WX 956 ; N uni2C67 ; G 4579 -U 11368 ; WX 712 ; N uni2C68 ; G 4580 -U 11369 ; WX 775 ; N uni2C69 ; G 4581 -U 11370 ; WX 665 ; N uni2C6A ; G 4582 -U 11371 ; WX 725 ; N uni2C6B ; G 4583 -U 11372 ; WX 582 ; N uni2C6C ; G 4584 -U 11373 ; WX 860 ; N uni2C6D ; G 4585 -U 11374 ; WX 995 ; N uni2C6E ; G 4586 -U 11375 ; WX 774 ; N uni2C6F ; G 4587 -U 11376 ; WX 860 ; N uni2C70 ; G 4588 -U 11377 ; WX 778 ; N uni2C71 ; G 4589 -U 11378 ; WX 1221 ; N uni2C72 ; G 4590 -U 11379 ; WX 1056 ; N uni2C73 ; G 4591 -U 11380 ; WX 652 ; N uni2C74 ; G 4592 -U 11381 ; WX 698 ; N uni2C75 ; G 4593 -U 11382 ; WX 565 ; N uni2C76 ; G 4594 -U 11383 ; WX 782 ; N uni2C77 ; G 4595 -U 11385 ; WX 538 ; N uni2C79 ; G 4596 -U 11386 ; WX 687 ; N uni2C7A ; G 4597 -U 11387 ; WX 559 ; N uni2C7B ; G 4598 -U 11388 ; WX 219 ; N uni2C7C ; G 4599 -U 11389 ; WX 487 ; N uni2C7D ; G 4600 -U 11390 ; WX 720 ; N uni2C7E ; G 4601 -U 11391 ; WX 725 ; N uni2C7F ; G 4602 -U 11520 ; WX 663 ; N uni2D00 ; G 4603 -U 11521 ; WX 676 ; N uni2D01 ; G 4604 -U 11522 ; WX 661 ; N uni2D02 ; G 4605 -U 11523 ; WX 629 ; N uni2D03 ; G 4606 -U 11524 ; WX 661 ; N uni2D04 ; G 4607 -U 11525 ; WX 1032 ; N uni2D05 ; G 4608 -U 11526 ; WX 718 ; N uni2D06 ; G 4609 -U 11527 ; WX 1032 ; N uni2D07 ; G 4610 -U 11528 ; WX 648 ; N uni2D08 ; G 4611 -U 11529 ; WX 667 ; N uni2D09 ; G 4612 -U 11530 ; WX 1032 ; N uni2D0A ; G 4613 -U 11531 ; WX 673 ; N uni2D0B ; G 4614 -U 11532 ; WX 677 ; N uni2D0C ; G 4615 -U 11533 ; WX 1036 ; N uni2D0D ; G 4616 -U 11534 ; WX 680 ; N uni2D0E ; G 4617 -U 11535 ; WX 886 ; N uni2D0F ; G 4618 -U 11536 ; WX 1032 ; N uni2D10 ; G 4619 -U 11537 ; WX 683 ; N uni2D11 ; G 4620 -U 11538 ; WX 674 ; N uni2D12 ; G 4621 -U 11539 ; WX 1035 ; N uni2D13 ; G 4622 -U 11540 ; WX 1033 ; N uni2D14 ; G 4623 -U 11541 ; WX 1027 ; N uni2D15 ; G 4624 -U 11542 ; WX 676 ; N uni2D16 ; G 4625 -U 11543 ; WX 673 ; N uni2D17 ; G 4626 -U 11544 ; WX 667 ; N uni2D18 ; G 4627 -U 11545 ; WX 667 ; N uni2D19 ; G 4628 -U 11546 ; WX 660 ; N uni2D1A ; G 4629 -U 11547 ; WX 671 ; N uni2D1B ; G 4630 -U 11548 ; WX 1039 ; N uni2D1C ; G 4631 -U 11549 ; WX 673 ; N uni2D1D ; G 4632 -U 11550 ; WX 692 ; N uni2D1E ; G 4633 -U 11551 ; WX 659 ; N uni2D1F ; G 4634 -U 11552 ; WX 1048 ; N uni2D20 ; G 4635 -U 11553 ; WX 660 ; N uni2D21 ; G 4636 -U 11554 ; WX 654 ; N uni2D22 ; G 4637 -U 11555 ; WX 670 ; N uni2D23 ; G 4638 -U 11556 ; WX 733 ; N uni2D24 ; G 4639 -U 11557 ; WX 1017 ; N uni2D25 ; G 4640 -U 11568 ; WX 691 ; N uni2D30 ; G 4641 -U 11569 ; WX 941 ; N uni2D31 ; G 4642 -U 11570 ; WX 941 ; N uni2D32 ; G 4643 -U 11571 ; WX 725 ; N uni2D33 ; G 4644 -U 11572 ; WX 725 ; N uni2D34 ; G 4645 -U 11573 ; WX 725 ; N uni2D35 ; G 4646 -U 11574 ; WX 676 ; N uni2D36 ; G 4647 -U 11575 ; WX 774 ; N uni2D37 ; G 4648 -U 11576 ; WX 774 ; N uni2D38 ; G 4649 -U 11577 ; WX 683 ; N uni2D39 ; G 4650 -U 11578 ; WX 683 ; N uni2D3A ; G 4651 -U 11579 ; WX 802 ; N uni2D3B ; G 4652 -U 11580 ; WX 989 ; N uni2D3C ; G 4653 -U 11581 ; WX 761 ; N uni2D3D ; G 4654 -U 11582 ; WX 623 ; N uni2D3E ; G 4655 -U 11583 ; WX 761 ; N uni2D3F ; G 4656 -U 11584 ; WX 941 ; N uni2D40 ; G 4657 -U 11585 ; WX 941 ; N uni2D41 ; G 4658 -U 11586 ; WX 373 ; N uni2D42 ; G 4659 -U 11587 ; WX 740 ; N uni2D43 ; G 4660 -U 11588 ; WX 837 ; N uni2D44 ; G 4661 -U 11589 ; WX 914 ; N uni2D45 ; G 4662 -U 11590 ; WX 672 ; N uni2D46 ; G 4663 -U 11591 ; WX 737 ; N uni2D47 ; G 4664 -U 11592 ; WX 680 ; N uni2D48 ; G 4665 -U 11593 ; WX 683 ; N uni2D49 ; G 4666 -U 11594 ; WX 602 ; N uni2D4A ; G 4667 -U 11595 ; WX 1039 ; N uni2D4B ; G 4668 -U 11596 ; WX 778 ; N uni2D4C ; G 4669 -U 11597 ; WX 837 ; N uni2D4D ; G 4670 -U 11598 ; WX 683 ; N uni2D4E ; G 4671 -U 11599 ; WX 372 ; N uni2D4F ; G 4672 -U 11600 ; WX 778 ; N uni2D50 ; G 4673 -U 11601 ; WX 373 ; N uni2D51 ; G 4674 -U 11602 ; WX 725 ; N uni2D52 ; G 4675 -U 11603 ; WX 691 ; N uni2D53 ; G 4676 -U 11604 ; WX 941 ; N uni2D54 ; G 4677 -U 11605 ; WX 941 ; N uni2D55 ; G 4678 -U 11606 ; WX 837 ; N uni2D56 ; G 4679 -U 11607 ; WX 373 ; N uni2D57 ; G 4680 -U 11608 ; WX 836 ; N uni2D58 ; G 4681 -U 11609 ; WX 941 ; N uni2D59 ; G 4682 -U 11610 ; WX 941 ; N uni2D5A ; G 4683 -U 11611 ; WX 734 ; N uni2D5B ; G 4684 -U 11612 ; WX 876 ; N uni2D5C ; G 4685 -U 11613 ; WX 771 ; N uni2D5D ; G 4686 -U 11614 ; WX 734 ; N uni2D5E ; G 4687 -U 11615 ; WX 683 ; N uni2D5F ; G 4688 -U 11616 ; WX 774 ; N uni2D60 ; G 4689 -U 11617 ; WX 837 ; N uni2D61 ; G 4690 -U 11618 ; WX 683 ; N uni2D62 ; G 4691 -U 11619 ; WX 850 ; N uni2D63 ; G 4692 -U 11620 ; WX 697 ; N uni2D64 ; G 4693 -U 11621 ; WX 850 ; N uni2D65 ; G 4694 -U 11631 ; WX 716 ; N uni2D6F ; G 4695 -U 11800 ; WX 580 ; N uni2E18 ; G 4696 -U 11807 ; WX 838 ; N uni2E1F ; G 4697 -U 11810 ; WX 457 ; N uni2E22 ; G 4698 -U 11811 ; WX 457 ; N uni2E23 ; G 4699 -U 11812 ; WX 457 ; N uni2E24 ; G 4700 -U 11813 ; WX 457 ; N uni2E25 ; G 4701 -U 11822 ; WX 580 ; N uni2E2E ; G 4702 -U 19904 ; WX 896 ; N uni4DC0 ; G 4703 -U 19905 ; WX 896 ; N uni4DC1 ; G 4704 -U 19906 ; WX 896 ; N uni4DC2 ; G 4705 -U 19907 ; WX 896 ; N uni4DC3 ; G 4706 -U 19908 ; WX 896 ; N uni4DC4 ; G 4707 -U 19909 ; WX 896 ; N uni4DC5 ; G 4708 -U 19910 ; WX 896 ; N uni4DC6 ; G 4709 -U 19911 ; WX 896 ; N uni4DC7 ; G 4710 -U 19912 ; WX 896 ; N uni4DC8 ; G 4711 -U 19913 ; WX 896 ; N uni4DC9 ; G 4712 -U 19914 ; WX 896 ; N uni4DCA ; G 4713 -U 19915 ; WX 896 ; N uni4DCB ; G 4714 -U 19916 ; WX 896 ; N uni4DCC ; G 4715 -U 19917 ; WX 896 ; N uni4DCD ; G 4716 -U 19918 ; WX 896 ; N uni4DCE ; G 4717 -U 19919 ; WX 896 ; N uni4DCF ; G 4718 -U 19920 ; WX 896 ; N uni4DD0 ; G 4719 -U 19921 ; WX 896 ; N uni4DD1 ; G 4720 -U 19922 ; WX 896 ; N uni4DD2 ; G 4721 -U 19923 ; WX 896 ; N uni4DD3 ; G 4722 -U 19924 ; WX 896 ; N uni4DD4 ; G 4723 -U 19925 ; WX 896 ; N uni4DD5 ; G 4724 -U 19926 ; WX 896 ; N uni4DD6 ; G 4725 -U 19927 ; WX 896 ; N uni4DD7 ; G 4726 -U 19928 ; WX 896 ; N uni4DD8 ; G 4727 -U 19929 ; WX 896 ; N uni4DD9 ; G 4728 -U 19930 ; WX 896 ; N uni4DDA ; G 4729 -U 19931 ; WX 896 ; N uni4DDB ; G 4730 -U 19932 ; WX 896 ; N uni4DDC ; G 4731 -U 19933 ; WX 896 ; N uni4DDD ; G 4732 -U 19934 ; WX 896 ; N uni4DDE ; G 4733 -U 19935 ; WX 896 ; N uni4DDF ; G 4734 -U 19936 ; WX 896 ; N uni4DE0 ; G 4735 -U 19937 ; WX 896 ; N uni4DE1 ; G 4736 -U 19938 ; WX 896 ; N uni4DE2 ; G 4737 -U 19939 ; WX 896 ; N uni4DE3 ; G 4738 -U 19940 ; WX 896 ; N uni4DE4 ; G 4739 -U 19941 ; WX 896 ; N uni4DE5 ; G 4740 -U 19942 ; WX 896 ; N uni4DE6 ; G 4741 -U 19943 ; WX 896 ; N uni4DE7 ; G 4742 -U 19944 ; WX 896 ; N uni4DE8 ; G 4743 -U 19945 ; WX 896 ; N uni4DE9 ; G 4744 -U 19946 ; WX 896 ; N uni4DEA ; G 4745 -U 19947 ; WX 896 ; N uni4DEB ; G 4746 -U 19948 ; WX 896 ; N uni4DEC ; G 4747 -U 19949 ; WX 896 ; N uni4DED ; G 4748 -U 19950 ; WX 896 ; N uni4DEE ; G 4749 -U 19951 ; WX 896 ; N uni4DEF ; G 4750 -U 19952 ; WX 896 ; N uni4DF0 ; G 4751 -U 19953 ; WX 896 ; N uni4DF1 ; G 4752 -U 19954 ; WX 896 ; N uni4DF2 ; G 4753 -U 19955 ; WX 896 ; N uni4DF3 ; G 4754 -U 19956 ; WX 896 ; N uni4DF4 ; G 4755 -U 19957 ; WX 896 ; N uni4DF5 ; G 4756 -U 19958 ; WX 896 ; N uni4DF6 ; G 4757 -U 19959 ; WX 896 ; N uni4DF7 ; G 4758 -U 19960 ; WX 896 ; N uni4DF8 ; G 4759 -U 19961 ; WX 896 ; N uni4DF9 ; G 4760 -U 19962 ; WX 896 ; N uni4DFA ; G 4761 -U 19963 ; WX 896 ; N uni4DFB ; G 4762 -U 19964 ; WX 896 ; N uni4DFC ; G 4763 -U 19965 ; WX 896 ; N uni4DFD ; G 4764 -U 19966 ; WX 896 ; N uni4DFE ; G 4765 -U 19967 ; WX 896 ; N uni4DFF ; G 4766 -U 42192 ; WX 762 ; N uniA4D0 ; G 4767 -U 42193 ; WX 733 ; N uniA4D1 ; G 4768 -U 42194 ; WX 733 ; N uniA4D2 ; G 4769 -U 42195 ; WX 830 ; N uniA4D3 ; G 4770 -U 42196 ; WX 682 ; N uniA4D4 ; G 4771 -U 42197 ; WX 682 ; N uniA4D5 ; G 4772 -U 42198 ; WX 821 ; N uniA4D6 ; G 4773 -U 42199 ; WX 775 ; N uniA4D7 ; G 4774 -U 42200 ; WX 775 ; N uniA4D8 ; G 4775 -U 42201 ; WX 530 ; N uniA4D9 ; G 4776 -U 42202 ; WX 734 ; N uniA4DA ; G 4777 -U 42203 ; WX 734 ; N uniA4DB ; G 4778 -U 42204 ; WX 725 ; N uniA4DC ; G 4779 -U 42205 ; WX 683 ; N uniA4DD ; G 4780 -U 42206 ; WX 683 ; N uniA4DE ; G 4781 -U 42207 ; WX 995 ; N uniA4DF ; G 4782 -U 42208 ; WX 837 ; N uniA4E0 ; G 4783 -U 42209 ; WX 637 ; N uniA4E1 ; G 4784 -U 42210 ; WX 720 ; N uniA4E2 ; G 4785 -U 42211 ; WX 770 ; N uniA4E3 ; G 4786 -U 42212 ; WX 770 ; N uniA4E4 ; G 4787 -U 42213 ; WX 774 ; N uniA4E5 ; G 4788 -U 42214 ; WX 774 ; N uniA4E6 ; G 4789 -U 42215 ; WX 837 ; N uniA4E7 ; G 4790 -U 42216 ; WX 775 ; N uniA4E8 ; G 4791 -U 42217 ; WX 530 ; N uniA4E9 ; G 4792 -U 42218 ; WX 1103 ; N uniA4EA ; G 4793 -U 42219 ; WX 771 ; N uniA4EB ; G 4794 -U 42220 ; WX 724 ; N uniA4EC ; G 4795 -U 42221 ; WX 762 ; N uniA4ED ; G 4796 -U 42222 ; WX 774 ; N uniA4EE ; G 4797 -U 42223 ; WX 774 ; N uniA4EF ; G 4798 -U 42224 ; WX 683 ; N uniA4F0 ; G 4799 -U 42225 ; WX 683 ; N uniA4F1 ; G 4800 -U 42226 ; WX 372 ; N uniA4F2 ; G 4801 -U 42227 ; WX 850 ; N uniA4F3 ; G 4802 -U 42228 ; WX 812 ; N uniA4F4 ; G 4803 -U 42229 ; WX 812 ; N uniA4F5 ; G 4804 -U 42230 ; WX 557 ; N uniA4F6 ; G 4805 -U 42231 ; WX 830 ; N uniA4F7 ; G 4806 -U 42232 ; WX 322 ; N uniA4F8 ; G 4807 -U 42233 ; WX 322 ; N uniA4F9 ; G 4808 -U 42234 ; WX 674 ; N uniA4FA ; G 4809 -U 42235 ; WX 674 ; N uniA4FB ; G 4810 -U 42236 ; WX 322 ; N uniA4FC ; G 4811 -U 42237 ; WX 322 ; N uniA4FD ; G 4812 -U 42238 ; WX 588 ; N uniA4FE ; G 4813 -U 42239 ; WX 588 ; N uniA4FF ; G 4814 -U 42564 ; WX 720 ; N uniA644 ; G 4815 -U 42565 ; WX 595 ; N uniA645 ; G 4816 -U 42566 ; WX 436 ; N uniA646 ; G 4817 -U 42567 ; WX 440 ; N uniA647 ; G 4818 -U 42572 ; WX 1405 ; N uniA64C ; G 4819 -U 42573 ; WX 1173 ; N uniA64D ; G 4820 -U 42576 ; WX 1234 ; N uniA650 ; G 4821 -U 42577 ; WX 1027 ; N uniA651 ; G 4822 -U 42580 ; WX 1174 ; N uniA654 ; G 4823 -U 42581 ; WX 972 ; N uniA655 ; G 4824 -U 42582 ; WX 1093 ; N uniA656 ; G 4825 -U 42583 ; WX 958 ; N uniA657 ; G 4826 -U 42594 ; WX 1085 ; N uniA662 ; G 4827 -U 42595 ; WX 924 ; N uniA663 ; G 4828 -U 42596 ; WX 1096 ; N uniA664 ; G 4829 -U 42597 ; WX 912 ; N uniA665 ; G 4830 -U 42598 ; WX 1260 ; N uniA666 ; G 4831 -U 42599 ; WX 997 ; N uniA667 ; G 4832 -U 42600 ; WX 850 ; N uniA668 ; G 4833 -U 42601 ; WX 687 ; N uniA669 ; G 4834 -U 42602 ; WX 1037 ; N uniA66A ; G 4835 -U 42603 ; WX 868 ; N uniA66B ; G 4836 -U 42604 ; WX 1406 ; N uniA66C ; G 4837 -U 42605 ; WX 1106 ; N uniA66D ; G 4838 -U 42606 ; WX 961 ; N uniA66E ; G 4839 -U 42634 ; WX 963 ; N uniA68A ; G 4840 -U 42635 ; WX 787 ; N uniA68B ; G 4841 -U 42636 ; WX 682 ; N uniA68C ; G 4842 -U 42637 ; WX 580 ; N uniA68D ; G 4843 -U 42644 ; WX 808 ; N uniA694 ; G 4844 -U 42645 ; WX 712 ; N uniA695 ; G 4845 -U 42648 ; WX 1406 ; N uniA698 ; G 4846 -U 42649 ; WX 1106 ; N uniA699 ; G 4847 -U 42760 ; WX 500 ; N uniA708 ; G 4848 -U 42761 ; WX 500 ; N uniA709 ; G 4849 -U 42762 ; WX 500 ; N uniA70A ; G 4850 -U 42763 ; WX 500 ; N uniA70B ; G 4851 -U 42764 ; WX 500 ; N uniA70C ; G 4852 -U 42765 ; WX 500 ; N uniA70D ; G 4853 -U 42766 ; WX 500 ; N uniA70E ; G 4854 -U 42767 ; WX 500 ; N uniA70F ; G 4855 -U 42768 ; WX 500 ; N uniA710 ; G 4856 -U 42769 ; WX 500 ; N uniA711 ; G 4857 -U 42770 ; WX 500 ; N uniA712 ; G 4858 -U 42771 ; WX 500 ; N uniA713 ; G 4859 -U 42772 ; WX 500 ; N uniA714 ; G 4860 -U 42773 ; WX 500 ; N uniA715 ; G 4861 -U 42774 ; WX 500 ; N uniA716 ; G 4862 -U 42779 ; WX 400 ; N uniA71B ; G 4863 -U 42780 ; WX 400 ; N uniA71C ; G 4864 -U 42781 ; WX 287 ; N uniA71D ; G 4865 -U 42782 ; WX 287 ; N uniA71E ; G 4866 -U 42783 ; WX 287 ; N uniA71F ; G 4867 -U 42786 ; WX 444 ; N uniA722 ; G 4868 -U 42787 ; WX 390 ; N uniA723 ; G 4869 -U 42788 ; WX 540 ; N uniA724 ; G 4870 -U 42789 ; WX 540 ; N uniA725 ; G 4871 -U 42790 ; WX 837 ; N uniA726 ; G 4872 -U 42791 ; WX 712 ; N uniA727 ; G 4873 -U 42792 ; WX 1031 ; N uniA728 ; G 4874 -U 42793 ; WX 857 ; N uniA729 ; G 4875 -U 42794 ; WX 696 ; N uniA72A ; G 4876 -U 42795 ; WX 557 ; N uniA72B ; G 4877 -U 42800 ; WX 559 ; N uniA730 ; G 4878 -U 42801 ; WX 595 ; N uniA731 ; G 4879 -U 42802 ; WX 1349 ; N uniA732 ; G 4880 -U 42803 ; WX 1052 ; N uniA733 ; G 4881 -U 42804 ; WX 1284 ; N uniA734 ; G 4882 -U 42805 ; WX 1064 ; N uniA735 ; G 4883 -U 42806 ; WX 1216 ; N uniA736 ; G 4884 -U 42807 ; WX 1054 ; N uniA737 ; G 4885 -U 42808 ; WX 1079 ; N uniA738 ; G 4886 -U 42809 ; WX 922 ; N uniA739 ; G 4887 -U 42810 ; WX 1079 ; N uniA73A ; G 4888 -U 42811 ; WX 922 ; N uniA73B ; G 4889 -U 42812 ; WX 1035 ; N uniA73C ; G 4890 -U 42813 ; WX 922 ; N uniA73D ; G 4891 -U 42814 ; WX 698 ; N uniA73E ; G 4892 -U 42815 ; WX 549 ; N uniA73F ; G 4893 -U 42816 ; WX 656 ; N uniA740 ; G 4894 -U 42817 ; WX 688 ; N uniA741 ; G 4895 -U 42822 ; WX 850 ; N uniA746 ; G 4896 -U 42823 ; WX 542 ; N uniA747 ; G 4897 -U 42824 ; WX 683 ; N uniA748 ; G 4898 -U 42825 ; WX 531 ; N uniA749 ; G 4899 -U 42826 ; WX 918 ; N uniA74A ; G 4900 -U 42827 ; WX 814 ; N uniA74B ; G 4901 -U 42830 ; WX 1406 ; N uniA74E ; G 4902 -U 42831 ; WX 1106 ; N uniA74F ; G 4903 -U 42832 ; WX 733 ; N uniA750 ; G 4904 -U 42833 ; WX 716 ; N uniA751 ; G 4905 -U 42834 ; WX 948 ; N uniA752 ; G 4906 -U 42835 ; WX 937 ; N uniA753 ; G 4907 -U 42838 ; WX 850 ; N uniA756 ; G 4908 -U 42839 ; WX 716 ; N uniA757 ; G 4909 -U 42852 ; WX 738 ; N uniA764 ; G 4910 -U 42853 ; WX 716 ; N uniA765 ; G 4911 -U 42854 ; WX 738 ; N uniA766 ; G 4912 -U 42855 ; WX 716 ; N uniA767 ; G 4913 -U 42880 ; WX 637 ; N uniA780 ; G 4914 -U 42881 ; WX 343 ; N uniA781 ; G 4915 -U 42882 ; WX 837 ; N uniA782 ; G 4916 -U 42883 ; WX 712 ; N uniA783 ; G 4917 -U 42889 ; WX 400 ; N uniA789 ; G 4918 -U 42890 ; WX 386 ; N uniA78A ; G 4919 -U 42891 ; WX 456 ; N uniA78B ; G 4920 -U 42892 ; WX 306 ; N uniA78C ; G 4921 -U 42893 ; WX 808 ; N uniA78D ; G 4922 -U 42894 ; WX 693 ; N uniA78E ; G 4923 -U 42896 ; WX 928 ; N uniA790 ; G 4924 -U 42897 ; WX 768 ; N uniA791 ; G 4925 -U 42912 ; WX 821 ; N uniA7A0 ; G 4926 -U 42913 ; WX 716 ; N uniA7A1 ; G 4927 -U 42914 ; WX 775 ; N uniA7A2 ; G 4928 -U 42915 ; WX 665 ; N uniA7A3 ; G 4929 -U 42916 ; WX 837 ; N uniA7A4 ; G 4930 -U 42917 ; WX 712 ; N uniA7A5 ; G 4931 -U 42918 ; WX 770 ; N uniA7A6 ; G 4932 -U 42919 ; WX 493 ; N uniA7A7 ; G 4933 -U 42920 ; WX 720 ; N uniA7A8 ; G 4934 -U 42921 ; WX 595 ; N uniA7A9 ; G 4935 -U 42922 ; WX 886 ; N uniA7AA ; G 4936 -U 43000 ; WX 613 ; N uniA7F8 ; G 4937 -U 43001 ; WX 689 ; N uniA7F9 ; G 4938 -U 43002 ; WX 1062 ; N uniA7FA ; G 4939 -U 43003 ; WX 683 ; N uniA7FB ; G 4940 -U 43004 ; WX 733 ; N uniA7FC ; G 4941 -U 43005 ; WX 995 ; N uniA7FD ; G 4942 -U 43006 ; WX 372 ; N uniA7FE ; G 4943 -U 43007 ; WX 1325 ; N uniA7FF ; G 4944 -U 61184 ; WX 216 ; N uni02E5.5 ; G 4945 -U 61185 ; WX 242 ; N uni02E6.5 ; G 4946 -U 61186 ; WX 267 ; N uni02E7.5 ; G 4947 -U 61187 ; WX 277 ; N uni02E8.5 ; G 4948 -U 61188 ; WX 282 ; N uni02E9.5 ; G 4949 -U 61189 ; WX 242 ; N uni02E5.4 ; G 4950 -U 61190 ; WX 216 ; N uni02E6.4 ; G 4951 -U 61191 ; WX 242 ; N uni02E7.4 ; G 4952 -U 61192 ; WX 267 ; N uni02E8.4 ; G 4953 -U 61193 ; WX 277 ; N uni02E9.4 ; G 4954 -U 61194 ; WX 267 ; N uni02E5.3 ; G 4955 -U 61195 ; WX 242 ; N uni02E6.3 ; G 4956 -U 61196 ; WX 216 ; N uni02E7.3 ; G 4957 -U 61197 ; WX 242 ; N uni02E8.3 ; G 4958 -U 61198 ; WX 267 ; N uni02E9.3 ; G 4959 -U 61199 ; WX 277 ; N uni02E5.2 ; G 4960 -U 61200 ; WX 267 ; N uni02E6.2 ; G 4961 -U 61201 ; WX 242 ; N uni02E7.2 ; G 4962 -U 61202 ; WX 216 ; N uni02E8.2 ; G 4963 -U 61203 ; WX 242 ; N uni02E9.2 ; G 4964 -U 61204 ; WX 282 ; N uni02E5.1 ; G 4965 -U 61205 ; WX 277 ; N uni02E6.1 ; G 4966 -U 61206 ; WX 267 ; N uni02E7.1 ; G 4967 -U 61207 ; WX 242 ; N uni02E8.1 ; G 4968 -U 61208 ; WX 216 ; N uni02E9.1 ; G 4969 -U 61209 ; WX 282 ; N stem ; G 4970 -U 62464 ; WX 612 ; N uniF400 ; G 4971 -U 62465 ; WX 612 ; N uniF401 ; G 4972 -U 62466 ; WX 653 ; N uniF402 ; G 4973 -U 62467 ; WX 902 ; N uniF403 ; G 4974 -U 62468 ; WX 622 ; N uniF404 ; G 4975 -U 62469 ; WX 622 ; N uniF405 ; G 4976 -U 62470 ; WX 661 ; N uniF406 ; G 4977 -U 62471 ; WX 895 ; N uniF407 ; G 4978 -U 62472 ; WX 589 ; N uniF408 ; G 4979 -U 62473 ; WX 622 ; N uniF409 ; G 4980 -U 62474 ; WX 1163 ; N uniF40A ; G 4981 -U 62475 ; WX 626 ; N uniF40B ; G 4982 -U 62476 ; WX 627 ; N uniF40C ; G 4983 -U 62477 ; WX 893 ; N uniF40D ; G 4984 -U 62478 ; WX 612 ; N uniF40E ; G 4985 -U 62479 ; WX 626 ; N uniF40F ; G 4986 -U 62480 ; WX 924 ; N uniF410 ; G 4987 -U 62481 ; WX 627 ; N uniF411 ; G 4988 -U 62482 ; WX 744 ; N uniF412 ; G 4989 -U 62483 ; WX 634 ; N uniF413 ; G 4990 -U 62484 ; WX 886 ; N uniF414 ; G 4991 -U 62485 ; WX 626 ; N uniF415 ; G 4992 -U 62486 ; WX 907 ; N uniF416 ; G 4993 -U 62487 ; WX 626 ; N uniF417 ; G 4994 -U 62488 ; WX 621 ; N uniF418 ; G 4995 -U 62489 ; WX 628 ; N uniF419 ; G 4996 -U 62490 ; WX 677 ; N uniF41A ; G 4997 -U 62491 ; WX 626 ; N uniF41B ; G 4998 -U 62492 ; WX 621 ; N uniF41C ; G 4999 -U 62493 ; WX 630 ; N uniF41D ; G 5000 -U 62494 ; WX 627 ; N uniF41E ; G 5001 -U 62495 ; WX 571 ; N uniF41F ; G 5002 -U 62496 ; WX 622 ; N uniF420 ; G 5003 -U 62497 ; WX 631 ; N uniF421 ; G 5004 -U 62498 ; WX 612 ; N uniF422 ; G 5005 -U 62499 ; WX 611 ; N uniF423 ; G 5006 -U 62500 ; WX 618 ; N uniF424 ; G 5007 -U 62501 ; WX 671 ; N uniF425 ; G 5008 -U 62502 ; WX 963 ; N uniF426 ; G 5009 -U 62504 ; WX 1023 ; N uniF428 ; G 5010 -U 62505 ; WX 844 ; N uniF429 ; G 5011 -U 62506 ; WX 563 ; N uniF42A ; G 5012 -U 62507 ; WX 563 ; N uniF42B ; G 5013 -U 62508 ; WX 563 ; N uniF42C ; G 5014 -U 62509 ; WX 563 ; N uniF42D ; G 5015 -U 62510 ; WX 563 ; N uniF42E ; G 5016 -U 62511 ; WX 563 ; N uniF42F ; G 5017 -U 62512 ; WX 555 ; N uniF430 ; G 5018 -U 62513 ; WX 555 ; N uniF431 ; G 5019 -U 62514 ; WX 555 ; N uniF432 ; G 5020 -U 62515 ; WX 555 ; N uniF433 ; G 5021 -U 62516 ; WX 573 ; N uniF434 ; G 5022 -U 62517 ; WX 573 ; N uniF435 ; G 5023 -U 62518 ; WX 573 ; N uniF436 ; G 5024 -U 62519 ; WX 824 ; N uniF437 ; G 5025 -U 62520 ; WX 824 ; N uniF438 ; G 5026 -U 62521 ; WX 824 ; N uniF439 ; G 5027 -U 62522 ; WX 824 ; N uniF43A ; G 5028 -U 62523 ; WX 824 ; N uniF43B ; G 5029 -U 62524 ; WX 611 ; N uniF43C ; G 5030 -U 62525 ; WX 611 ; N uniF43D ; G 5031 -U 62526 ; WX 611 ; N uniF43E ; G 5032 -U 62527 ; WX 611 ; N uniF43F ; G 5033 -U 62528 ; WX 611 ; N uniF440 ; G 5034 -U 62529 ; WX 611 ; N uniF441 ; G 5035 -U 63173 ; WX 687 ; N uniF6C5 ; G 5036 -U 64256 ; WX 810 ; N uniFB00 ; G 5037 -U 64257 ; WX 741 ; N fi ; G 5038 -U 64258 ; WX 741 ; N fl ; G 5039 -U 64259 ; WX 1115 ; N uniFB03 ; G 5040 -U 64260 ; WX 1116 ; N uniFB04 ; G 5041 -U 64261 ; WX 808 ; N uniFB05 ; G 5042 -U 64262 ; WX 1020 ; N uniFB06 ; G 5043 -U 64275 ; WX 1388 ; N uniFB13 ; G 5044 -U 64276 ; WX 1384 ; N uniFB14 ; G 5045 -U 64277 ; WX 1378 ; N uniFB15 ; G 5046 -U 64278 ; WX 1384 ; N uniFB16 ; G 5047 -U 64279 ; WX 1713 ; N uniFB17 ; G 5048 -U 64285 ; WX 294 ; N uniFB1D ; G 5049 -U 64286 ; WX 0 ; N uniFB1E ; G 5050 -U 64287 ; WX 519 ; N uniFB1F ; G 5051 -U 64288 ; WX 665 ; N uniFB20 ; G 5052 -U 64289 ; WX 939 ; N uniFB21 ; G 5053 -U 64290 ; WX 788 ; N uniFB22 ; G 5054 -U 64291 ; WX 920 ; N uniFB23 ; G 5055 -U 64292 ; WX 786 ; N uniFB24 ; G 5056 -U 64293 ; WX 857 ; N uniFB25 ; G 5057 -U 64294 ; WX 869 ; N uniFB26 ; G 5058 -U 64295 ; WX 821 ; N uniFB27 ; G 5059 -U 64296 ; WX 890 ; N uniFB28 ; G 5060 -U 64297 ; WX 838 ; N uniFB29 ; G 5061 -U 64298 ; WX 758 ; N uniFB2A ; G 5062 -U 64299 ; WX 758 ; N uniFB2B ; G 5063 -U 64300 ; WX 758 ; N uniFB2C ; G 5064 -U 64301 ; WX 758 ; N uniFB2D ; G 5065 -U 64302 ; WX 728 ; N uniFB2E ; G 5066 -U 64303 ; WX 728 ; N uniFB2F ; G 5067 -U 64304 ; WX 728 ; N uniFB30 ; G 5068 -U 64305 ; WX 610 ; N uniFB31 ; G 5069 -U 64306 ; WX 447 ; N uniFB32 ; G 5070 -U 64307 ; WX 588 ; N uniFB33 ; G 5071 -U 64308 ; WX 687 ; N uniFB34 ; G 5072 -U 64309 ; WX 437 ; N uniFB35 ; G 5073 -U 64310 ; WX 485 ; N uniFB36 ; G 5074 -U 64312 ; WX 679 ; N uniFB38 ; G 5075 -U 64313 ; WX 435 ; N uniFB39 ; G 5076 -U 64314 ; WX 578 ; N uniFB3A ; G 5077 -U 64315 ; WX 566 ; N uniFB3B ; G 5078 -U 64316 ; WX 605 ; N uniFB3C ; G 5079 -U 64318 ; WX 724 ; N uniFB3E ; G 5080 -U 64320 ; WX 453 ; N uniFB40 ; G 5081 -U 64321 ; WX 680 ; N uniFB41 ; G 5082 -U 64323 ; WX 675 ; N uniFB43 ; G 5083 -U 64324 ; WX 658 ; N uniFB44 ; G 5084 -U 64326 ; WX 653 ; N uniFB46 ; G 5085 -U 64327 ; WX 736 ; N uniFB47 ; G 5086 -U 64328 ; WX 602 ; N uniFB48 ; G 5087 -U 64329 ; WX 758 ; N uniFB49 ; G 5088 -U 64330 ; WX 683 ; N uniFB4A ; G 5089 -U 64331 ; WX 343 ; N uniFB4B ; G 5090 -U 64332 ; WX 610 ; N uniFB4C ; G 5091 -U 64333 ; WX 566 ; N uniFB4D ; G 5092 -U 64334 ; WX 658 ; N uniFB4E ; G 5093 -U 64335 ; WX 710 ; N uniFB4F ; G 5094 -U 64338 ; WX 1005 ; N uniFB52 ; G 5095 -U 64339 ; WX 1059 ; N uniFB53 ; G 5096 -U 64340 ; WX 375 ; N uniFB54 ; G 5097 -U 64341 ; WX 408 ; N uniFB55 ; G 5098 -U 64342 ; WX 1005 ; N uniFB56 ; G 5099 -U 64343 ; WX 1059 ; N uniFB57 ; G 5100 -U 64344 ; WX 375 ; N uniFB58 ; G 5101 -U 64345 ; WX 408 ; N uniFB59 ; G 5102 -U 64346 ; WX 1005 ; N uniFB5A ; G 5103 -U 64347 ; WX 1059 ; N uniFB5B ; G 5104 -U 64348 ; WX 375 ; N uniFB5C ; G 5105 -U 64349 ; WX 408 ; N uniFB5D ; G 5106 -U 64350 ; WX 1005 ; N uniFB5E ; G 5107 -U 64351 ; WX 1059 ; N uniFB5F ; G 5108 -U 64352 ; WX 375 ; N uniFB60 ; G 5109 -U 64353 ; WX 408 ; N uniFB61 ; G 5110 -U 64354 ; WX 1005 ; N uniFB62 ; G 5111 -U 64355 ; WX 1059 ; N uniFB63 ; G 5112 -U 64356 ; WX 375 ; N uniFB64 ; G 5113 -U 64357 ; WX 408 ; N uniFB65 ; G 5114 -U 64358 ; WX 1005 ; N uniFB66 ; G 5115 -U 64359 ; WX 1059 ; N uniFB67 ; G 5116 -U 64360 ; WX 375 ; N uniFB68 ; G 5117 -U 64361 ; WX 408 ; N uniFB69 ; G 5118 -U 64362 ; WX 1162 ; N uniFB6A ; G 5119 -U 64363 ; WX 1191 ; N uniFB6B ; G 5120 -U 64364 ; WX 655 ; N uniFB6C ; G 5121 -U 64365 ; WX 720 ; N uniFB6D ; G 5122 -U 64366 ; WX 1162 ; N uniFB6E ; G 5123 -U 64367 ; WX 1191 ; N uniFB6F ; G 5124 -U 64368 ; WX 655 ; N uniFB70 ; G 5125 -U 64369 ; WX 720 ; N uniFB71 ; G 5126 -U 64370 ; WX 721 ; N uniFB72 ; G 5127 -U 64371 ; WX 721 ; N uniFB73 ; G 5128 -U 64372 ; WX 721 ; N uniFB74 ; G 5129 -U 64373 ; WX 721 ; N uniFB75 ; G 5130 -U 64374 ; WX 721 ; N uniFB76 ; G 5131 -U 64375 ; WX 721 ; N uniFB77 ; G 5132 -U 64376 ; WX 721 ; N uniFB78 ; G 5133 -U 64377 ; WX 721 ; N uniFB79 ; G 5134 -U 64378 ; WX 721 ; N uniFB7A ; G 5135 -U 64379 ; WX 721 ; N uniFB7B ; G 5136 -U 64380 ; WX 721 ; N uniFB7C ; G 5137 -U 64381 ; WX 721 ; N uniFB7D ; G 5138 -U 64382 ; WX 721 ; N uniFB7E ; G 5139 -U 64383 ; WX 721 ; N uniFB7F ; G 5140 -U 64384 ; WX 721 ; N uniFB80 ; G 5141 -U 64385 ; WX 721 ; N uniFB81 ; G 5142 -U 64386 ; WX 513 ; N uniFB82 ; G 5143 -U 64387 ; WX 578 ; N uniFB83 ; G 5144 -U 64388 ; WX 513 ; N uniFB84 ; G 5145 -U 64389 ; WX 578 ; N uniFB85 ; G 5146 -U 64390 ; WX 513 ; N uniFB86 ; G 5147 -U 64391 ; WX 578 ; N uniFB87 ; G 5148 -U 64392 ; WX 513 ; N uniFB88 ; G 5149 -U 64393 ; WX 578 ; N uniFB89 ; G 5150 -U 64394 ; WX 576 ; N uniFB8A ; G 5151 -U 64395 ; WX 622 ; N uniFB8B ; G 5152 -U 64396 ; WX 576 ; N uniFB8C ; G 5153 -U 64397 ; WX 622 ; N uniFB8D ; G 5154 -U 64398 ; WX 1024 ; N uniFB8E ; G 5155 -U 64399 ; WX 1024 ; N uniFB8F ; G 5156 -U 64400 ; WX 582 ; N uniFB90 ; G 5157 -U 64401 ; WX 582 ; N uniFB91 ; G 5158 -U 64402 ; WX 1024 ; N uniFB92 ; G 5159 -U 64403 ; WX 1024 ; N uniFB93 ; G 5160 -U 64404 ; WX 582 ; N uniFB94 ; G 5161 -U 64405 ; WX 582 ; N uniFB95 ; G 5162 -U 64406 ; WX 1024 ; N uniFB96 ; G 5163 -U 64407 ; WX 1024 ; N uniFB97 ; G 5164 -U 64408 ; WX 582 ; N uniFB98 ; G 5165 -U 64409 ; WX 582 ; N uniFB99 ; G 5166 -U 64410 ; WX 1024 ; N uniFB9A ; G 5167 -U 64411 ; WX 1024 ; N uniFB9B ; G 5168 -U 64412 ; WX 582 ; N uniFB9C ; G 5169 -U 64413 ; WX 582 ; N uniFB9D ; G 5170 -U 64414 ; WX 854 ; N uniFB9E ; G 5171 -U 64415 ; WX 900 ; N uniFB9F ; G 5172 -U 64416 ; WX 854 ; N uniFBA0 ; G 5173 -U 64417 ; WX 900 ; N uniFBA1 ; G 5174 -U 64418 ; WX 375 ; N uniFBA2 ; G 5175 -U 64419 ; WX 408 ; N uniFBA3 ; G 5176 -U 64426 ; WX 938 ; N uniFBAA ; G 5177 -U 64427 ; WX 880 ; N uniFBAB ; G 5178 -U 64428 ; WX 693 ; N uniFBAC ; G 5179 -U 64429 ; WX 660 ; N uniFBAD ; G 5180 -U 64467 ; WX 824 ; N uniFBD3 ; G 5181 -U 64468 ; WX 843 ; N uniFBD4 ; G 5182 -U 64469 ; WX 476 ; N uniFBD5 ; G 5183 -U 64470 ; WX 552 ; N uniFBD6 ; G 5184 -U 64471 ; WX 622 ; N uniFBD7 ; G 5185 -U 64472 ; WX 627 ; N uniFBD8 ; G 5186 -U 64473 ; WX 622 ; N uniFBD9 ; G 5187 -U 64474 ; WX 627 ; N uniFBDA ; G 5188 -U 64475 ; WX 622 ; N uniFBDB ; G 5189 -U 64476 ; WX 627 ; N uniFBDC ; G 5190 -U 64478 ; WX 622 ; N uniFBDE ; G 5191 -U 64479 ; WX 627 ; N uniFBDF ; G 5192 -U 64484 ; WX 917 ; N uniFBE4 ; G 5193 -U 64485 ; WX 1012 ; N uniFBE5 ; G 5194 -U 64486 ; WX 375 ; N uniFBE6 ; G 5195 -U 64487 ; WX 408 ; N uniFBE7 ; G 5196 -U 64488 ; WX 375 ; N uniFBE8 ; G 5197 -U 64489 ; WX 408 ; N uniFBE9 ; G 5198 -U 64508 ; WX 917 ; N uniFBFC ; G 5199 -U 64509 ; WX 1012 ; N uniFBFD ; G 5200 -U 64510 ; WX 375 ; N uniFBFE ; G 5201 -U 64511 ; WX 408 ; N uniFBFF ; G 5202 -U 65024 ; WX 0 ; N uniFE00 ; G 5203 -U 65025 ; WX 0 ; N uniFE01 ; G 5204 -U 65026 ; WX 0 ; N uniFE02 ; G 5205 -U 65027 ; WX 0 ; N uniFE03 ; G 5206 -U 65028 ; WX 0 ; N uniFE04 ; G 5207 -U 65029 ; WX 0 ; N uniFE05 ; G 5208 -U 65030 ; WX 0 ; N uniFE06 ; G 5209 -U 65031 ; WX 0 ; N uniFE07 ; G 5210 -U 65032 ; WX 0 ; N uniFE08 ; G 5211 -U 65033 ; WX 0 ; N uniFE09 ; G 5212 -U 65034 ; WX 0 ; N uniFE0A ; G 5213 -U 65035 ; WX 0 ; N uniFE0B ; G 5214 -U 65036 ; WX 0 ; N uniFE0C ; G 5215 -U 65037 ; WX 0 ; N uniFE0D ; G 5216 -U 65038 ; WX 0 ; N uniFE0E ; G 5217 -U 65039 ; WX 0 ; N uniFE0F ; G 5218 -U 65056 ; WX 0 ; N uniFE20 ; G 5219 -U 65057 ; WX 0 ; N uniFE21 ; G 5220 -U 65058 ; WX 0 ; N uniFE22 ; G 5221 -U 65059 ; WX 0 ; N uniFE23 ; G 5222 -U 65136 ; WX 342 ; N uniFE70 ; G 5223 -U 65137 ; WX 342 ; N uniFE71 ; G 5224 -U 65138 ; WX 342 ; N uniFE72 ; G 5225 -U 65139 ; WX 346 ; N uniFE73 ; G 5226 -U 65140 ; WX 342 ; N uniFE74 ; G 5227 -U 65142 ; WX 342 ; N uniFE76 ; G 5228 -U 65143 ; WX 342 ; N uniFE77 ; G 5229 -U 65144 ; WX 342 ; N uniFE78 ; G 5230 -U 65145 ; WX 342 ; N uniFE79 ; G 5231 -U 65146 ; WX 342 ; N uniFE7A ; G 5232 -U 65147 ; WX 342 ; N uniFE7B ; G 5233 -U 65148 ; WX 342 ; N uniFE7C ; G 5234 -U 65149 ; WX 342 ; N uniFE7D ; G 5235 -U 65150 ; WX 342 ; N uniFE7E ; G 5236 -U 65151 ; WX 342 ; N uniFE7F ; G 5237 -U 65152 ; WX 511 ; N uniFE80 ; G 5238 -U 65153 ; WX 343 ; N uniFE81 ; G 5239 -U 65154 ; WX 375 ; N uniFE82 ; G 5240 -U 65155 ; WX 343 ; N uniFE83 ; G 5241 -U 65156 ; WX 375 ; N uniFE84 ; G 5242 -U 65157 ; WX 622 ; N uniFE85 ; G 5243 -U 65158 ; WX 627 ; N uniFE86 ; G 5244 -U 65159 ; WX 343 ; N uniFE87 ; G 5245 -U 65160 ; WX 375 ; N uniFE88 ; G 5246 -U 65161 ; WX 917 ; N uniFE89 ; G 5247 -U 65162 ; WX 917 ; N uniFE8A ; G 5248 -U 65163 ; WX 375 ; N uniFE8B ; G 5249 -U 65164 ; WX 408 ; N uniFE8C ; G 5250 -U 65165 ; WX 343 ; N uniFE8D ; G 5251 -U 65166 ; WX 375 ; N uniFE8E ; G 5252 -U 65167 ; WX 1005 ; N uniFE8F ; G 5253 -U 65168 ; WX 1059 ; N uniFE90 ; G 5254 -U 65169 ; WX 375 ; N uniFE91 ; G 5255 -U 65170 ; WX 408 ; N uniFE92 ; G 5256 -U 65171 ; WX 590 ; N uniFE93 ; G 5257 -U 65172 ; WX 606 ; N uniFE94 ; G 5258 -U 65173 ; WX 1005 ; N uniFE95 ; G 5259 -U 65174 ; WX 1059 ; N uniFE96 ; G 5260 -U 65175 ; WX 375 ; N uniFE97 ; G 5261 -U 65176 ; WX 408 ; N uniFE98 ; G 5262 -U 65177 ; WX 1005 ; N uniFE99 ; G 5263 -U 65178 ; WX 1059 ; N uniFE9A ; G 5264 -U 65179 ; WX 375 ; N uniFE9B ; G 5265 -U 65180 ; WX 408 ; N uniFE9C ; G 5266 -U 65181 ; WX 721 ; N uniFE9D ; G 5267 -U 65182 ; WX 721 ; N uniFE9E ; G 5268 -U 65183 ; WX 721 ; N uniFE9F ; G 5269 -U 65184 ; WX 721 ; N uniFEA0 ; G 5270 -U 65185 ; WX 721 ; N uniFEA1 ; G 5271 -U 65186 ; WX 721 ; N uniFEA2 ; G 5272 -U 65187 ; WX 721 ; N uniFEA3 ; G 5273 -U 65188 ; WX 721 ; N uniFEA4 ; G 5274 -U 65189 ; WX 721 ; N uniFEA5 ; G 5275 -U 65190 ; WX 721 ; N uniFEA6 ; G 5276 -U 65191 ; WX 721 ; N uniFEA7 ; G 5277 -U 65192 ; WX 721 ; N uniFEA8 ; G 5278 -U 65193 ; WX 513 ; N uniFEA9 ; G 5279 -U 65194 ; WX 578 ; N uniFEAA ; G 5280 -U 65195 ; WX 513 ; N uniFEAB ; G 5281 -U 65196 ; WX 578 ; N uniFEAC ; G 5282 -U 65197 ; WX 576 ; N uniFEAD ; G 5283 -U 65198 ; WX 622 ; N uniFEAE ; G 5284 -U 65199 ; WX 576 ; N uniFEAF ; G 5285 -U 65200 ; WX 622 ; N uniFEB0 ; G 5286 -U 65201 ; WX 1380 ; N uniFEB1 ; G 5287 -U 65202 ; WX 1414 ; N uniFEB2 ; G 5288 -U 65203 ; WX 983 ; N uniFEB3 ; G 5289 -U 65204 ; WX 1018 ; N uniFEB4 ; G 5290 -U 65205 ; WX 1380 ; N uniFEB5 ; G 5291 -U 65206 ; WX 1414 ; N uniFEB6 ; G 5292 -U 65207 ; WX 983 ; N uniFEB7 ; G 5293 -U 65208 ; WX 1018 ; N uniFEB8 ; G 5294 -U 65209 ; WX 1345 ; N uniFEB9 ; G 5295 -U 65210 ; WX 1364 ; N uniFEBA ; G 5296 -U 65211 ; WX 966 ; N uniFEBB ; G 5297 -U 65212 ; WX 985 ; N uniFEBC ; G 5298 -U 65213 ; WX 1345 ; N uniFEBD ; G 5299 -U 65214 ; WX 1364 ; N uniFEBE ; G 5300 -U 65215 ; WX 966 ; N uniFEBF ; G 5301 -U 65216 ; WX 985 ; N uniFEC0 ; G 5302 -U 65217 ; WX 1039 ; N uniFEC1 ; G 5303 -U 65218 ; WX 1071 ; N uniFEC2 ; G 5304 -U 65219 ; WX 942 ; N uniFEC3 ; G 5305 -U 65220 ; WX 974 ; N uniFEC4 ; G 5306 -U 65221 ; WX 1039 ; N uniFEC5 ; G 5307 -U 65222 ; WX 1071 ; N uniFEC6 ; G 5308 -U 65223 ; WX 942 ; N uniFEC7 ; G 5309 -U 65224 ; WX 974 ; N uniFEC8 ; G 5310 -U 65225 ; WX 683 ; N uniFEC9 ; G 5311 -U 65226 ; WX 683 ; N uniFECA ; G 5312 -U 65227 ; WX 683 ; N uniFECB ; G 5313 -U 65228 ; WX 564 ; N uniFECC ; G 5314 -U 65229 ; WX 683 ; N uniFECD ; G 5315 -U 65230 ; WX 683 ; N uniFECE ; G 5316 -U 65231 ; WX 683 ; N uniFECF ; G 5317 -U 65232 ; WX 564 ; N uniFED0 ; G 5318 -U 65233 ; WX 1162 ; N uniFED1 ; G 5319 -U 65234 ; WX 1191 ; N uniFED2 ; G 5320 -U 65235 ; WX 655 ; N uniFED3 ; G 5321 -U 65236 ; WX 720 ; N uniFED4 ; G 5322 -U 65237 ; WX 894 ; N uniFED5 ; G 5323 -U 65238 ; WX 901 ; N uniFED6 ; G 5324 -U 65239 ; WX 655 ; N uniFED7 ; G 5325 -U 65240 ; WX 720 ; N uniFED8 ; G 5326 -U 65241 ; WX 917 ; N uniFED9 ; G 5327 -U 65242 ; WX 931 ; N uniFEDA ; G 5328 -U 65243 ; WX 582 ; N uniFEDB ; G 5329 -U 65244 ; WX 582 ; N uniFEDC ; G 5330 -U 65245 ; WX 868 ; N uniFEDD ; G 5331 -U 65246 ; WX 893 ; N uniFEDE ; G 5332 -U 65247 ; WX 375 ; N uniFEDF ; G 5333 -U 65248 ; WX 408 ; N uniFEE0 ; G 5334 -U 65249 ; WX 733 ; N uniFEE1 ; G 5335 -U 65250 ; WX 784 ; N uniFEE2 ; G 5336 -U 65251 ; WX 619 ; N uniFEE3 ; G 5337 -U 65252 ; WX 670 ; N uniFEE4 ; G 5338 -U 65253 ; WX 854 ; N uniFEE5 ; G 5339 -U 65254 ; WX 900 ; N uniFEE6 ; G 5340 -U 65255 ; WX 375 ; N uniFEE7 ; G 5341 -U 65256 ; WX 408 ; N uniFEE8 ; G 5342 -U 65257 ; WX 590 ; N uniFEE9 ; G 5343 -U 65258 ; WX 606 ; N uniFEEA ; G 5344 -U 65259 ; WX 693 ; N uniFEEB ; G 5345 -U 65260 ; WX 660 ; N uniFEEC ; G 5346 -U 65261 ; WX 622 ; N uniFEED ; G 5347 -U 65262 ; WX 627 ; N uniFEEE ; G 5348 -U 65263 ; WX 917 ; N uniFEEF ; G 5349 -U 65264 ; WX 1012 ; N uniFEF0 ; G 5350 -U 65265 ; WX 917 ; N uniFEF1 ; G 5351 -U 65266 ; WX 1012 ; N uniFEF2 ; G 5352 -U 65267 ; WX 375 ; N uniFEF3 ; G 5353 -U 65268 ; WX 408 ; N uniFEF4 ; G 5354 -U 65269 ; WX 745 ; N uniFEF5 ; G 5355 -U 65270 ; WX 759 ; N uniFEF6 ; G 5356 -U 65271 ; WX 745 ; N uniFEF7 ; G 5357 -U 65272 ; WX 759 ; N uniFEF8 ; G 5358 -U 65273 ; WX 745 ; N uniFEF9 ; G 5359 -U 65274 ; WX 759 ; N uniFEFA ; G 5360 -U 65275 ; WX 745 ; N uniFEFB ; G 5361 -U 65276 ; WX 759 ; N uniFEFC ; G 5362 -U 65279 ; WX 0 ; N uniFEFF ; G 5363 -U 65529 ; WX 0 ; N uniFFF9 ; G 5364 -U 65530 ; WX 0 ; N uniFFFA ; G 5365 -U 65531 ; WX 0 ; N uniFFFB ; G 5366 -U 65532 ; WX 0 ; N uniFFFC ; G 5367 -U 65533 ; WX 1113 ; N uniFFFD ; G 5368 -EndCharMetrics -StartKernData -StartKernPairs 1538 - -KPX dollar seven -159 -KPX dollar eight -63 -KPX dollar nine -139 -KPX dollar colon -92 -KPX dollar less -196 -KPX dollar Y -73 -KPX dollar backslash -73 -KPX dollar questiondown -73 -KPX dollar Aacute -73 -KPX dollar Hcircumflex -159 -KPX dollar Hbar -159 -KPX dollar Imacron -63 -KPX dollar Ibreve -63 -KPX dollar Iogonek -63 -KPX dollar Idot -63 -KPX dollar IJ -63 -KPX dollar Kcommaaccent -92 -KPX dollar kgreenlandic -196 -KPX dollar Lacute -73 -KPX dollar lacute -196 -KPX dollar uni01DC -159 -KPX dollar uni01F4 -196 -KPX dollar uni01F5 -73 - -KPX percent nine -83 -KPX percent colon -112 -KPX percent less -112 -KPX percent Kcommaaccent -112 -KPX percent kgreenlandic -112 -KPX percent lacute -112 -KPX percent uni01F4 -112 - -KPX ampersand six 38 -KPX ampersand Gcircumflex 38 -KPX ampersand Gbreve 38 -KPX ampersand Gdotaccent 38 -KPX ampersand Gcommaaccent 38 -KPX ampersand uni01DA 38 - -KPX quotesingle less -149 -KPX quotesingle kgreenlandic -149 -KPX quotesingle lacute -149 -KPX quotesingle uni01F4 -149 - -KPX parenright dollar -235 -KPX parenright D -120 -KPX parenright H -83 -KPX parenright R -83 -KPX parenright U -131 -KPX parenright X -102 -KPX parenright backslash -112 -KPX parenright cent -120 -KPX parenright sterling -120 -KPX parenright currency -120 -KPX parenright yen -120 -KPX parenright brokenbar -120 -KPX parenright section -120 -KPX parenright dieresis -120 -KPX parenright ordfeminine -83 -KPX parenright guillemotleft -83 -KPX parenright logicalnot -83 -KPX parenright sfthyphen -83 -KPX parenright acute -83 -KPX parenright mu -83 -KPX parenright paragraph -83 -KPX parenright periodcentered -83 -KPX parenright cedilla -83 -KPX parenright ordmasculine -83 -KPX parenright guillemotright -102 -KPX parenright onequarter -102 -KPX parenright onehalf -102 -KPX parenright threequarters -102 -KPX parenright questiondown -112 -KPX parenright Aacute -112 -KPX parenright Acircumflex -235 -KPX parenright Atilde -120 -KPX parenright Adieresis -235 -KPX parenright Aring -120 -KPX parenright AE -235 -KPX parenright Ccedilla -120 -KPX parenright Otilde -83 -KPX parenright multiply -83 -KPX parenright Ugrave -83 -KPX parenright Ucircumflex -83 -KPX parenright Yacute -83 -KPX parenright dcaron -83 -KPX parenright dmacron -83 -KPX parenright emacron -83 -KPX parenright ebreve -83 -KPX parenright edotaccent -131 -KPX parenright eogonek -131 -KPX parenright ecaron -131 -KPX parenright imacron -102 -KPX parenright ibreve -102 -KPX parenright iogonek -102 -KPX parenright dotlessi -102 -KPX parenright ij -102 -KPX parenright jcircumflex -102 -KPX parenright Lacute -112 -KPX parenright uni01A5 -120 -KPX parenright uni01AD -83 -KPX parenright Uhorn -83 -KPX parenright uni01F1 -83 -KPX parenright uni01F5 -112 - -KPX asterisk seven -36 -KPX asterisk less -45 -KPX asterisk Hbar -36 -KPX asterisk lacute -45 - -KPX period ampersand -92 -KPX period two -92 -KPX period eight -36 -KPX period H -36 -KPX period R -36 -KPX period X -36 -KPX period backslash -131 -KPX period ordfeminine -36 -KPX period guillemotleft -36 -KPX period logicalnot -36 -KPX period sfthyphen -36 -KPX period acute -36 -KPX period mu -36 -KPX period paragraph -36 -KPX period periodcentered -36 -KPX period cedilla -36 -KPX period ordmasculine -36 -KPX period guillemotright -36 -KPX period onequarter -36 -KPX period onehalf -36 -KPX period threequarters -36 -KPX period questiondown -131 -KPX period Aacute -131 -KPX period Egrave -92 -KPX period Icircumflex -92 -KPX period Yacute -36 -KPX period Ebreve -102 -KPX period ebreve -36 -KPX period Idot -36 -KPX period dotlessi -36 - -KPX slash two -73 -KPX slash seven -339 -KPX slash eight -73 -KPX slash nine -282 -KPX slash colon -159 -KPX slash less -319 -KPX slash backslash -139 -KPX slash questiondown -139 -KPX slash Aacute -139 -KPX slash Ebreve -73 -KPX slash Hbar -339 -KPX slash Idot -73 -KPX slash lacute -319 - -KPX two dollar -55 -KPX two nine -55 -KPX two semicolon -73 -KPX two less -73 -KPX two lacute -73 - -KPX three dollar -188 -KPX three D -55 -KPX three V -36 -KPX three backslash 38 -KPX three cent -55 -KPX three sterling -55 -KPX three currency -55 -KPX three yen -55 -KPX three brokenbar -55 -KPX three section -55 -KPX three dieresis -55 -KPX three questiondown 38 -KPX three Aacute 38 -KPX three gdotaccent -36 -KPX three gcommaaccent -36 - - -KPX five seven -92 -KPX five less -112 -KPX five backslash -92 -KPX five questiondown -92 -KPX five Aacute -92 -KPX five Hbar -92 -KPX five lacute -112 - -KPX six six -92 -KPX six Gdotaccent -92 -KPX six Gcommaaccent -92 - -KPX seven dollar -159 -KPX seven seven 47 -KPX seven D -264 -KPX seven F -272 -KPX seven H -272 -KPX seven R -272 -KPX seven U -225 -KPX seven V -272 -KPX seven X -225 -KPX seven Z -225 -KPX seven backslash -243 -KPX seven cent -164 -KPX seven sterling -264 -KPX seven currency -164 -KPX seven yen -164 -KPX seven brokenbar -164 -KPX seven section -164 -KPX seven dieresis -196 -KPX seven copyright -272 -KPX seven ordfeminine -212 -KPX seven guillemotleft -272 -KPX seven logicalnot -212 -KPX seven sfthyphen -212 -KPX seven acute -192 -KPX seven mu -272 -KPX seven paragraph -192 -KPX seven periodcentered -192 -KPX seven cedilla -192 -KPX seven ordmasculine -159 -KPX seven guillemotright -195 -KPX seven onequarter -225 -KPX seven onehalf -195 -KPX seven threequarters -195 -KPX seven questiondown -243 -KPX seven Aacute -243 -KPX seven Eacute -272 -KPX seven Idieresis -272 -KPX seven Yacute -272 -KPX seven ebreve -159 -KPX seven edotaccent -225 -KPX seven ecaron -225 -KPX seven gdotaccent -272 -KPX seven gcommaaccent -272 -KPX seven dotlessi -225 - -KPX eight dollar -63 - -KPX nine dollar -139 -KPX nine two -36 -KPX nine D -112 -KPX nine H -112 -KPX nine L -36 -KPX nine R -112 -KPX nine X -73 -KPX nine cent -112 -KPX nine sterling -112 -KPX nine currency -112 -KPX nine yen -112 -KPX nine brokenbar -112 -KPX nine section -112 -KPX nine dieresis -112 -KPX nine ordfeminine -112 -KPX nine guillemotleft -112 -KPX nine logicalnot -112 -KPX nine sfthyphen -112 -KPX nine acute -112 -KPX nine mu -112 -KPX nine paragraph -112 -KPX nine periodcentered -112 -KPX nine cedilla -112 -KPX nine ordmasculine -112 -KPX nine guillemotright -73 -KPX nine onequarter -73 -KPX nine onehalf -73 -KPX nine threequarters -73 -KPX nine Yacute -112 -KPX nine Ebreve -36 -KPX nine ebreve -112 -KPX nine dotlessi -73 - -KPX colon dollar -92 -KPX colon D -73 -KPX colon H -73 -KPX colon R -73 -KPX colon U -36 -KPX colon cent -73 -KPX colon sterling -73 -KPX colon currency -73 -KPX colon yen -73 -KPX colon brokenbar -73 -KPX colon section -73 -KPX colon dieresis -73 -KPX colon ordfeminine -73 -KPX colon guillemotleft -73 -KPX colon logicalnot -73 -KPX colon sfthyphen -73 -KPX colon acute -73 -KPX colon mu -73 -KPX colon paragraph -73 -KPX colon periodcentered -73 -KPX colon cedilla -73 -KPX colon ordmasculine -73 -KPX colon Yacute -73 -KPX colon ebreve -73 -KPX colon edotaccent -36 -KPX colon ecaron -36 - -KPX semicolon ampersand -73 -KPX semicolon two -73 -KPX semicolon H -55 -KPX semicolon ordfeminine -55 -KPX semicolon guillemotleft -55 -KPX semicolon logicalnot -55 -KPX semicolon sfthyphen -55 -KPX semicolon Egrave -73 -KPX semicolon Icircumflex -73 -KPX semicolon Yacute -55 -KPX semicolon Ebreve -73 - -KPX less dollar -196 -KPX less ampersand -73 -KPX less two -73 -KPX less D -188 -KPX less H -188 -KPX less R -188 -KPX less X -149 -KPX less cent -188 -KPX less sterling -188 -KPX less currency -188 -KPX less yen -188 -KPX less brokenbar -188 -KPX less section -188 -KPX less dieresis -188 -KPX less ordfeminine -188 -KPX less guillemotleft -188 -KPX less logicalnot -188 -KPX less sfthyphen -188 -KPX less acute -188 -KPX less mu -188 -KPX less paragraph -188 -KPX less periodcentered -188 -KPX less cedilla -188 -KPX less ordmasculine -188 -KPX less guillemotright -149 -KPX less onequarter -149 -KPX less onehalf -149 -KPX less threequarters -149 -KPX less Egrave -73 -KPX less Icircumflex -73 -KPX less Yacute -188 -KPX less Ebreve -92 -KPX less ebreve -188 -KPX less dotlessi -149 - - -KPX D backslash -63 -KPX D questiondown -63 -KPX D Aacute -63 - - -KPX N H -55 -KPX N R -55 -KPX N ordfeminine -55 -KPX N guillemotleft -55 -KPX N logicalnot -55 -KPX N sfthyphen -55 -KPX N acute -55 -KPX N mu -55 -KPX N paragraph -55 -KPX N periodcentered -55 -KPX N cedilla -55 -KPX N ordmasculine -45 -KPX N Yacute -55 -KPX N ebreve -55 - - - - - -KPX cent backslash -63 -KPX cent questiondown -63 -KPX cent Aacute -63 - -KPX sterling backslash -63 -KPX sterling questiondown -63 -KPX sterling Aacute -63 - -KPX currency backslash -63 -KPX currency questiondown -63 -KPX currency Aacute -63 - -KPX yen backslash -63 -KPX yen questiondown -63 -KPX yen Aacute -63 - -KPX brokenbar backslash -63 -KPX brokenbar questiondown -63 -KPX brokenbar Aacute -63 - -KPX section backslash -63 -KPX section questiondown -63 -KPX section Aacute -63 - - - -KPX Acircumflex seven -159 -KPX Acircumflex eight -63 -KPX Acircumflex nine -139 -KPX Acircumflex colon -92 -KPX Acircumflex less -196 -KPX Acircumflex Y -73 -KPX Acircumflex backslash -73 -KPX Acircumflex questiondown -73 -KPX Acircumflex Aacute -73 -KPX Acircumflex Hcircumflex -159 -KPX Acircumflex Hbar -159 -KPX Acircumflex Imacron -63 -KPX Acircumflex Ibreve -63 -KPX Acircumflex Iogonek -63 -KPX Acircumflex Idot -63 -KPX Acircumflex IJ -63 -KPX Acircumflex Kcommaaccent -92 -KPX Acircumflex kgreenlandic -196 -KPX Acircumflex Lacute -73 -KPX Acircumflex lacute -196 -KPX Acircumflex uni01DC -159 -KPX Acircumflex uni01F4 -196 -KPX Acircumflex uni01F5 -73 - -KPX Adieresis seven -159 -KPX Adieresis eight -63 -KPX Adieresis nine -139 -KPX Adieresis colon -92 -KPX Adieresis less -196 -KPX Adieresis Y -73 -KPX Adieresis backslash -73 -KPX Adieresis questiondown -73 -KPX Adieresis Aacute -73 -KPX Adieresis Hcircumflex -159 -KPX Adieresis Hbar -159 -KPX Adieresis Imacron -63 -KPX Adieresis Ibreve -63 -KPX Adieresis Iogonek -63 -KPX Adieresis Idot -63 -KPX Adieresis IJ -63 -KPX Adieresis Kcommaaccent -92 -KPX Adieresis kgreenlandic -196 -KPX Adieresis Lacute -73 -KPX Adieresis lacute -196 -KPX Adieresis uni01DC -159 -KPX Adieresis uni01F4 -196 -KPX Adieresis uni01F5 -73 - -KPX AE seven -159 -KPX AE eight -63 -KPX AE nine -139 -KPX AE colon -92 -KPX AE less -196 -KPX AE Y -73 -KPX AE backslash -73 -KPX AE questiondown -73 -KPX AE Aacute -73 -KPX AE Hcircumflex -159 -KPX AE Hbar -159 -KPX AE Imacron -63 -KPX AE Ibreve -63 -KPX AE Iogonek -63 -KPX AE Idot -63 -KPX AE IJ -63 -KPX AE Kcommaaccent -92 -KPX AE kgreenlandic -196 -KPX AE Lacute -73 -KPX AE lacute -196 -KPX AE uni01DC -159 -KPX AE uni01F4 -196 -KPX AE uni01F5 -73 - -KPX Egrave six 38 -KPX Egrave Gcircumflex 38 -KPX Egrave Gbreve 38 -KPX Egrave Gdotaccent 38 -KPX Egrave Gcommaaccent 38 -KPX Egrave uni01DA 38 - -KPX Ecircumflex six 38 -KPX Ecircumflex Gcircumflex 38 -KPX Ecircumflex Gbreve 38 -KPX Ecircumflex Gdotaccent 38 -KPX Ecircumflex Gcommaaccent 38 -KPX Ecircumflex uni01DA 38 - -KPX Igrave six 38 -KPX Igrave Gcircumflex 38 -KPX Igrave Gbreve 38 -KPX Igrave Gdotaccent 38 -KPX Igrave Gcommaaccent 38 -KPX Igrave uni01DA 38 - -KPX Icircumflex six 38 -KPX Icircumflex Gcircumflex 38 -KPX Icircumflex Gbreve 38 -KPX Icircumflex Gdotaccent 38 -KPX Icircumflex Gcommaaccent 38 -KPX Icircumflex uni01DA 38 - -KPX Eth less -149 -KPX Eth kgreenlandic -149 -KPX Eth lacute -149 -KPX Eth uni01F4 -149 - -KPX Ograve less -149 -KPX Ograve kgreenlandic -149 -KPX Ograve lacute -149 -KPX Ograve uni01F4 -149 - -KPX agrave seven -36 -KPX agrave less -45 -KPX agrave Hbar -36 -KPX agrave lacute -45 - -KPX ucircumflex two -73 -KPX ucircumflex seven -339 -KPX ucircumflex eight -73 -KPX ucircumflex nine -282 -KPX ucircumflex colon -159 -KPX ucircumflex less -319 -KPX ucircumflex backslash -139 -KPX ucircumflex questiondown -139 -KPX ucircumflex Aacute -139 -KPX ucircumflex Ebreve -73 -KPX ucircumflex Hbar -339 -KPX ucircumflex Idot -73 -KPX ucircumflex lacute -319 - -KPX ydieresis two -73 -KPX ydieresis seven -339 -KPX ydieresis eight -73 -KPX ydieresis nine -282 -KPX ydieresis colon -159 -KPX ydieresis less -319 -KPX ydieresis backslash -139 -KPX ydieresis questiondown -139 -KPX ydieresis Aacute -139 -KPX ydieresis Ebreve -73 -KPX ydieresis Hbar -339 -KPX ydieresis Idot -73 -KPX ydieresis lacute -319 - -KPX Abreve O -246 - -KPX abreve two -73 -KPX abreve seven -339 -KPX abreve eight -73 -KPX abreve nine -282 -KPX abreve colon -159 -KPX abreve less -319 -KPX abreve backslash -139 -KPX abreve questiondown -139 -KPX abreve Aacute -139 -KPX abreve Ebreve -73 -KPX abreve Hbar -339 -KPX abreve Idot -73 -KPX abreve lacute -319 - -KPX Edotaccent seven -92 -KPX Edotaccent less -112 -KPX Edotaccent backslash -92 -KPX Edotaccent questiondown -92 -KPX Edotaccent Aacute -92 -KPX Edotaccent Hbar -92 -KPX Edotaccent lacute -112 - - -KPX Ecaron seven -92 -KPX Ecaron less -112 -KPX Ecaron backslash -92 -KPX Ecaron questiondown -92 -KPX Ecaron Aacute -92 -KPX Ecaron Hbar -92 -KPX Ecaron lacute -112 - - -KPX Gdotaccent six -92 -KPX Gdotaccent Gdotaccent -92 -KPX Gdotaccent Gcommaaccent -92 - -KPX Gcommaaccent six -92 -KPX Gcommaaccent Gdotaccent -92 -KPX Gcommaaccent Gcommaaccent -92 - -KPX Hbar dollar -159 -KPX Hbar seven 47 -KPX Hbar D -264 -KPX Hbar F -272 -KPX Hbar H -272 -KPX Hbar R -272 -KPX Hbar U -225 -KPX Hbar V -272 -KPX Hbar X -225 -KPX Hbar Z -225 -KPX Hbar backslash -243 -KPX Hbar cent -264 -KPX Hbar sterling -264 -KPX Hbar currency -264 -KPX Hbar yen -264 -KPX Hbar brokenbar -264 -KPX Hbar section -264 -KPX Hbar dieresis -196 -KPX Hbar copyright -272 -KPX Hbar ordfeminine -272 -KPX Hbar guillemotleft -272 -KPX Hbar logicalnot -272 -KPX Hbar sfthyphen -272 -KPX Hbar acute -272 -KPX Hbar mu -272 -KPX Hbar paragraph -272 -KPX Hbar periodcentered -272 -KPX Hbar cedilla -272 -KPX Hbar ordmasculine -159 -KPX Hbar guillemotright -225 -KPX Hbar onequarter -225 -KPX Hbar onehalf -225 -KPX Hbar threequarters -225 -KPX Hbar questiondown -243 -KPX Hbar Aacute -243 -KPX Hbar Eacute -272 -KPX Hbar Idieresis -272 -KPX Hbar Yacute -272 -KPX Hbar ebreve -159 -KPX Hbar edotaccent -225 -KPX Hbar ecaron -225 -KPX Hbar gdotaccent -272 -KPX Hbar gcommaaccent -272 -KPX Hbar Hbar 47 -KPX Hbar dotlessi -225 - -KPX Idot dollar -63 - -KPX lacute dollar -196 -KPX lacute ampersand -73 -KPX lacute two -73 -KPX lacute D -188 -KPX lacute H -188 -KPX lacute R -188 -KPX lacute X -149 -KPX lacute cent -188 -KPX lacute sterling -188 -KPX lacute currency -188 -KPX lacute yen -188 -KPX lacute brokenbar -188 -KPX lacute section -188 -KPX lacute dieresis -188 -KPX lacute ordfeminine -188 -KPX lacute guillemotleft -188 -KPX lacute logicalnot -188 -KPX lacute sfthyphen -188 -KPX lacute acute -188 -KPX lacute mu -188 -KPX lacute paragraph -188 -KPX lacute periodcentered -188 -KPX lacute cedilla -188 -KPX lacute ordmasculine -188 -KPX lacute guillemotright -149 -KPX lacute onequarter -149 -KPX lacute onehalf -149 -KPX lacute threequarters -149 -KPX lacute Egrave -73 -KPX lacute Icircumflex -73 -KPX lacute Yacute -188 -KPX lacute Ebreve -92 -KPX lacute ebreve -188 -KPX lacute dotlessi -149 - - -KPX uni027D dollar -235 -KPX uni027D hyphen -92 -KPX uni027D nine 38 -KPX uni027D less 75 -KPX uni027D lacute 75 -EndKernPairs -EndKernData -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSans-BoldOblique.ttf b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSans-BoldOblique.ttf deleted file mode 100644 index 753f2d80..00000000 Binary files a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSans-BoldOblique.ttf and /dev/null differ diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSans-BoldOblique.ufm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSans-BoldOblique.ufm deleted file mode 100644 index 5f4dd7c1..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSans-BoldOblique.ufm +++ /dev/null @@ -1,5712 +0,0 @@ -StartFontMetrics 4.1 -Notice Converted by PHP-font-lib -Comment https://github.com/PhenX/php-font-lib -EncodingScheme FontSpecific -FontName DejaVu Sans -FontSubfamily Bold Oblique -UniqueID DejaVu Sans Bold Oblique -FullName DejaVu Sans Bold Oblique -Version Version 2.37 -PostScriptName DejaVuSans-BoldOblique -Manufacturer DejaVu fonts team -FontVendorURL http://dejavu.sourceforge.net -LicenseURL http://dejavu.sourceforge.net/wiki/index.php/License -PreferredFamily DejaVu Sans -PreferredSubfamily Bold Oblique -Weight Bold -ItalicAngle -11 -IsFixedPitch false -UnderlineThickness 44 -UnderlinePosition -63 -FontHeightOffset 0 -Ascender 928 -Descender -236 -FontBBox -1067 -385 1999 1121 -StartCharMetrics 5413 -U 32 ; WX 348 ; N space ; G 3 -U 33 ; WX 456 ; N exclam ; G 4 -U 34 ; WX 521 ; N quotedbl ; G 5 -U 35 ; WX 696 ; N numbersign ; G 6 -U 36 ; WX 696 ; N dollar ; G 7 -U 37 ; WX 1002 ; N percent ; G 8 -U 38 ; WX 872 ; N ampersand ; G 9 -U 39 ; WX 306 ; N quotesingle ; G 10 -U 40 ; WX 457 ; N parenleft ; G 11 -U 41 ; WX 457 ; N parenright ; G 12 -U 42 ; WX 523 ; N asterisk ; G 13 -U 43 ; WX 838 ; N plus ; G 14 -U 44 ; WX 380 ; N comma ; G 15 -U 45 ; WX 415 ; N hyphen ; G 16 -U 46 ; WX 380 ; N period ; G 17 -U 47 ; WX 365 ; N slash ; G 18 -U 48 ; WX 696 ; N zero ; G 19 -U 49 ; WX 696 ; N one ; G 20 -U 50 ; WX 696 ; N two ; G 21 -U 51 ; WX 696 ; N three ; G 22 -U 52 ; WX 696 ; N four ; G 23 -U 53 ; WX 696 ; N five ; G 24 -U 54 ; WX 696 ; N six ; G 25 -U 55 ; WX 696 ; N seven ; G 26 -U 56 ; WX 696 ; N eight ; G 27 -U 57 ; WX 696 ; N nine ; G 28 -U 58 ; WX 400 ; N colon ; G 29 -U 59 ; WX 400 ; N semicolon ; G 30 -U 60 ; WX 838 ; N less ; G 31 -U 61 ; WX 838 ; N equal ; G 32 -U 62 ; WX 838 ; N greater ; G 33 -U 63 ; WX 580 ; N question ; G 34 -U 64 ; WX 1000 ; N at ; G 35 -U 65 ; WX 774 ; N A ; G 36 -U 66 ; WX 762 ; N B ; G 37 -U 67 ; WX 734 ; N C ; G 38 -U 68 ; WX 830 ; N D ; G 39 -U 69 ; WX 683 ; N E ; G 40 -U 70 ; WX 683 ; N F ; G 41 -U 71 ; WX 821 ; N G ; G 42 -U 72 ; WX 837 ; N H ; G 43 -U 73 ; WX 372 ; N I ; G 44 -U 74 ; WX 372 ; N J ; G 45 -U 75 ; WX 775 ; N K ; G 46 -U 76 ; WX 637 ; N L ; G 47 -U 77 ; WX 995 ; N M ; G 48 -U 78 ; WX 837 ; N N ; G 49 -U 79 ; WX 850 ; N O ; G 50 -U 80 ; WX 733 ; N P ; G 51 -U 81 ; WX 850 ; N Q ; G 52 -U 82 ; WX 770 ; N R ; G 53 -U 83 ; WX 720 ; N S ; G 54 -U 84 ; WX 682 ; N T ; G 55 -U 85 ; WX 812 ; N U ; G 56 -U 86 ; WX 774 ; N V ; G 57 -U 87 ; WX 1103 ; N W ; G 58 -U 88 ; WX 771 ; N X ; G 59 -U 89 ; WX 724 ; N Y ; G 60 -U 90 ; WX 725 ; N Z ; G 61 -U 91 ; WX 457 ; N bracketleft ; G 62 -U 92 ; WX 365 ; N backslash ; G 63 -U 93 ; WX 457 ; N bracketright ; G 64 -U 94 ; WX 838 ; N asciicircum ; G 65 -U 95 ; WX 500 ; N underscore ; G 66 -U 96 ; WX 500 ; N grave ; G 67 -U 97 ; WX 675 ; N a ; G 68 -U 98 ; WX 716 ; N b ; G 69 -U 99 ; WX 593 ; N c ; G 70 -U 100 ; WX 716 ; N d ; G 71 -U 101 ; WX 678 ; N e ; G 72 -U 102 ; WX 435 ; N f ; G 73 -U 103 ; WX 716 ; N g ; G 74 -U 104 ; WX 712 ; N h ; G 75 -U 105 ; WX 343 ; N i ; G 76 -U 106 ; WX 343 ; N j ; G 77 -U 107 ; WX 665 ; N k ; G 78 -U 108 ; WX 343 ; N l ; G 79 -U 109 ; WX 1042 ; N m ; G 80 -U 110 ; WX 712 ; N n ; G 81 -U 111 ; WX 687 ; N o ; G 82 -U 112 ; WX 716 ; N p ; G 83 -U 113 ; WX 716 ; N q ; G 84 -U 114 ; WX 493 ; N r ; G 85 -U 115 ; WX 595 ; N s ; G 86 -U 116 ; WX 478 ; N t ; G 87 -U 117 ; WX 712 ; N u ; G 88 -U 118 ; WX 652 ; N v ; G 89 -U 119 ; WX 924 ; N w ; G 90 -U 120 ; WX 645 ; N x ; G 91 -U 121 ; WX 652 ; N y ; G 92 -U 122 ; WX 582 ; N z ; G 93 -U 123 ; WX 712 ; N braceleft ; G 94 -U 124 ; WX 365 ; N bar ; G 95 -U 125 ; WX 712 ; N braceright ; G 96 -U 126 ; WX 838 ; N asciitilde ; G 97 -U 160 ; WX 348 ; N nbspace ; G 98 -U 161 ; WX 456 ; N exclamdown ; G 99 -U 162 ; WX 696 ; N cent ; G 100 -U 163 ; WX 696 ; N sterling ; G 101 -U 164 ; WX 636 ; N currency ; G 102 -U 165 ; WX 696 ; N yen ; G 103 -U 166 ; WX 365 ; N brokenbar ; G 104 -U 167 ; WX 500 ; N section ; G 105 -U 168 ; WX 500 ; N dieresis ; G 106 -U 169 ; WX 1000 ; N copyright ; G 107 -U 170 ; WX 564 ; N ordfeminine ; G 108 -U 171 ; WX 650 ; N guillemotleft ; G 109 -U 172 ; WX 838 ; N logicalnot ; G 110 -U 173 ; WX 415 ; N sfthyphen ; G 111 -U 174 ; WX 1000 ; N registered ; G 112 -U 175 ; WX 500 ; N macron ; G 113 -U 176 ; WX 500 ; N degree ; G 114 -U 177 ; WX 838 ; N plusminus ; G 115 -U 178 ; WX 438 ; N twosuperior ; G 116 -U 179 ; WX 438 ; N threesuperior ; G 117 -U 180 ; WX 500 ; N acute ; G 118 -U 181 ; WX 736 ; N mu ; G 119 -U 182 ; WX 636 ; N paragraph ; G 120 -U 183 ; WX 380 ; N periodcentered ; G 121 -U 184 ; WX 500 ; N cedilla ; G 122 -U 185 ; WX 438 ; N onesuperior ; G 123 -U 186 ; WX 564 ; N ordmasculine ; G 124 -U 187 ; WX 650 ; N guillemotright ; G 125 -U 188 ; WX 1035 ; N onequarter ; G 126 -U 189 ; WX 1035 ; N onehalf ; G 127 -U 190 ; WX 1035 ; N threequarters ; G 128 -U 191 ; WX 580 ; N questiondown ; G 129 -U 192 ; WX 774 ; N Agrave ; G 130 -U 193 ; WX 774 ; N Aacute ; G 131 -U 194 ; WX 774 ; N Acircumflex ; G 132 -U 195 ; WX 774 ; N Atilde ; G 133 -U 196 ; WX 774 ; N Adieresis ; G 134 -U 197 ; WX 774 ; N Aring ; G 135 -U 198 ; WX 1085 ; N AE ; G 136 -U 199 ; WX 734 ; N Ccedilla ; G 137 -U 200 ; WX 683 ; N Egrave ; G 138 -U 201 ; WX 683 ; N Eacute ; G 139 -U 202 ; WX 683 ; N Ecircumflex ; G 140 -U 203 ; WX 683 ; N Edieresis ; G 141 -U 204 ; WX 372 ; N Igrave ; G 142 -U 205 ; WX 372 ; N Iacute ; G 143 -U 206 ; WX 372 ; N Icircumflex ; G 144 -U 207 ; WX 372 ; N Idieresis ; G 145 -U 208 ; WX 845 ; N Eth ; G 146 -U 209 ; WX 837 ; N Ntilde ; G 147 -U 210 ; WX 850 ; N Ograve ; G 148 -U 211 ; WX 850 ; N Oacute ; G 149 -U 212 ; WX 850 ; N Ocircumflex ; G 150 -U 213 ; WX 850 ; N Otilde ; G 151 -U 214 ; WX 850 ; N Odieresis ; G 152 -U 215 ; WX 838 ; N multiply ; G 153 -U 216 ; WX 850 ; N Oslash ; G 154 -U 217 ; WX 812 ; N Ugrave ; G 155 -U 218 ; WX 812 ; N Uacute ; G 156 -U 219 ; WX 812 ; N Ucircumflex ; G 157 -U 220 ; WX 812 ; N Udieresis ; G 158 -U 221 ; WX 724 ; N Yacute ; G 159 -U 222 ; WX 742 ; N Thorn ; G 160 -U 223 ; WX 719 ; N germandbls ; G 161 -U 224 ; WX 675 ; N agrave ; G 162 -U 225 ; WX 675 ; N aacute ; G 163 -U 226 ; WX 675 ; N acircumflex ; G 164 -U 227 ; WX 675 ; N atilde ; G 165 -U 228 ; WX 675 ; N adieresis ; G 166 -U 229 ; WX 675 ; N aring ; G 167 -U 230 ; WX 1048 ; N ae ; G 168 -U 231 ; WX 593 ; N ccedilla ; G 169 -U 232 ; WX 678 ; N egrave ; G 170 -U 233 ; WX 678 ; N eacute ; G 171 -U 234 ; WX 678 ; N ecircumflex ; G 172 -U 235 ; WX 678 ; N edieresis ; G 173 -U 236 ; WX 343 ; N igrave ; G 174 -U 237 ; WX 343 ; N iacute ; G 175 -U 238 ; WX 343 ; N icircumflex ; G 176 -U 239 ; WX 343 ; N idieresis ; G 177 -U 240 ; WX 687 ; N eth ; G 178 -U 241 ; WX 712 ; N ntilde ; G 179 -U 242 ; WX 687 ; N ograve ; G 180 -U 243 ; WX 687 ; N oacute ; G 181 -U 244 ; WX 687 ; N ocircumflex ; G 182 -U 245 ; WX 687 ; N otilde ; G 183 -U 246 ; WX 687 ; N odieresis ; G 184 -U 247 ; WX 838 ; N divide ; G 185 -U 248 ; WX 687 ; N oslash ; G 186 -U 249 ; WX 712 ; N ugrave ; G 187 -U 250 ; WX 712 ; N uacute ; G 188 -U 251 ; WX 712 ; N ucircumflex ; G 189 -U 252 ; WX 712 ; N udieresis ; G 190 -U 253 ; WX 652 ; N yacute ; G 191 -U 254 ; WX 716 ; N thorn ; G 192 -U 255 ; WX 652 ; N ydieresis ; G 193 -U 256 ; WX 774 ; N Amacron ; G 194 -U 257 ; WX 675 ; N amacron ; G 195 -U 258 ; WX 774 ; N Abreve ; G 196 -U 259 ; WX 675 ; N abreve ; G 197 -U 260 ; WX 774 ; N Aogonek ; G 198 -U 261 ; WX 675 ; N aogonek ; G 199 -U 262 ; WX 734 ; N Cacute ; G 200 -U 263 ; WX 593 ; N cacute ; G 201 -U 264 ; WX 734 ; N Ccircumflex ; G 202 -U 265 ; WX 593 ; N ccircumflex ; G 203 -U 266 ; WX 734 ; N Cdotaccent ; G 204 -U 267 ; WX 593 ; N cdotaccent ; G 205 -U 268 ; WX 734 ; N Ccaron ; G 206 -U 269 ; WX 593 ; N ccaron ; G 207 -U 270 ; WX 830 ; N Dcaron ; G 208 -U 271 ; WX 716 ; N dcaron ; G 209 -U 272 ; WX 845 ; N Dcroat ; G 210 -U 273 ; WX 716 ; N dmacron ; G 211 -U 274 ; WX 683 ; N Emacron ; G 212 -U 275 ; WX 678 ; N emacron ; G 213 -U 276 ; WX 683 ; N Ebreve ; G 214 -U 277 ; WX 678 ; N ebreve ; G 215 -U 278 ; WX 683 ; N Edotaccent ; G 216 -U 279 ; WX 678 ; N edotaccent ; G 217 -U 280 ; WX 683 ; N Eogonek ; G 218 -U 281 ; WX 678 ; N eogonek ; G 219 -U 282 ; WX 683 ; N Ecaron ; G 220 -U 283 ; WX 678 ; N ecaron ; G 221 -U 284 ; WX 821 ; N Gcircumflex ; G 222 -U 285 ; WX 716 ; N gcircumflex ; G 223 -U 286 ; WX 821 ; N Gbreve ; G 224 -U 287 ; WX 716 ; N gbreve ; G 225 -U 288 ; WX 821 ; N Gdotaccent ; G 226 -U 289 ; WX 716 ; N gdotaccent ; G 227 -U 290 ; WX 821 ; N Gcommaaccent ; G 228 -U 291 ; WX 716 ; N gcommaaccent ; G 229 -U 292 ; WX 837 ; N Hcircumflex ; G 230 -U 293 ; WX 712 ; N hcircumflex ; G 231 -U 294 ; WX 974 ; N Hbar ; G 232 -U 295 ; WX 790 ; N hbar ; G 233 -U 296 ; WX 372 ; N Itilde ; G 234 -U 297 ; WX 343 ; N itilde ; G 235 -U 298 ; WX 372 ; N Imacron ; G 236 -U 299 ; WX 343 ; N imacron ; G 237 -U 300 ; WX 372 ; N Ibreve ; G 238 -U 301 ; WX 343 ; N ibreve ; G 239 -U 302 ; WX 372 ; N Iogonek ; G 240 -U 303 ; WX 343 ; N iogonek ; G 241 -U 304 ; WX 372 ; N Idot ; G 242 -U 305 ; WX 343 ; N dotlessi ; G 243 -U 306 ; WX 744 ; N IJ ; G 244 -U 307 ; WX 686 ; N ij ; G 245 -U 308 ; WX 372 ; N Jcircumflex ; G 246 -U 309 ; WX 343 ; N jcircumflex ; G 247 -U 310 ; WX 775 ; N Kcommaaccent ; G 248 -U 311 ; WX 665 ; N kcommaaccent ; G 249 -U 312 ; WX 665 ; N kgreenlandic ; G 250 -U 313 ; WX 637 ; N Lacute ; G 251 -U 314 ; WX 343 ; N lacute ; G 252 -U 315 ; WX 637 ; N Lcommaaccent ; G 253 -U 316 ; WX 343 ; N lcommaaccent ; G 254 -U 317 ; WX 637 ; N Lcaron ; G 255 -U 318 ; WX 343 ; N lcaron ; G 256 -U 319 ; WX 637 ; N Ldot ; G 257 -U 320 ; WX 343 ; N ldot ; G 258 -U 321 ; WX 660 ; N Lslash ; G 259 -U 322 ; WX 375 ; N lslash ; G 260 -U 323 ; WX 837 ; N Nacute ; G 261 -U 324 ; WX 712 ; N nacute ; G 262 -U 325 ; WX 837 ; N Ncommaaccent ; G 263 -U 326 ; WX 712 ; N ncommaaccent ; G 264 -U 327 ; WX 837 ; N Ncaron ; G 265 -U 328 ; WX 712 ; N ncaron ; G 266 -U 329 ; WX 983 ; N napostrophe ; G 267 -U 330 ; WX 837 ; N Eng ; G 268 -U 331 ; WX 712 ; N eng ; G 269 -U 332 ; WX 850 ; N Omacron ; G 270 -U 333 ; WX 687 ; N omacron ; G 271 -U 334 ; WX 850 ; N Obreve ; G 272 -U 335 ; WX 687 ; N obreve ; G 273 -U 336 ; WX 850 ; N Ohungarumlaut ; G 274 -U 337 ; WX 687 ; N ohungarumlaut ; G 275 -U 338 ; WX 1167 ; N OE ; G 276 -U 339 ; WX 1094 ; N oe ; G 277 -U 340 ; WX 770 ; N Racute ; G 278 -U 341 ; WX 493 ; N racute ; G 279 -U 342 ; WX 770 ; N Rcommaaccent ; G 280 -U 343 ; WX 493 ; N rcommaaccent ; G 281 -U 344 ; WX 770 ; N Rcaron ; G 282 -U 345 ; WX 493 ; N rcaron ; G 283 -U 346 ; WX 720 ; N Sacute ; G 284 -U 347 ; WX 595 ; N sacute ; G 285 -U 348 ; WX 720 ; N Scircumflex ; G 286 -U 349 ; WX 595 ; N scircumflex ; G 287 -U 350 ; WX 720 ; N Scedilla ; G 288 -U 351 ; WX 595 ; N scedilla ; G 289 -U 352 ; WX 720 ; N Scaron ; G 290 -U 353 ; WX 595 ; N scaron ; G 291 -U 354 ; WX 682 ; N Tcommaaccent ; G 292 -U 355 ; WX 478 ; N tcommaaccent ; G 293 -U 356 ; WX 682 ; N Tcaron ; G 294 -U 357 ; WX 478 ; N tcaron ; G 295 -U 358 ; WX 682 ; N Tbar ; G 296 -U 359 ; WX 478 ; N tbar ; G 297 -U 360 ; WX 812 ; N Utilde ; G 298 -U 361 ; WX 712 ; N utilde ; G 299 -U 362 ; WX 812 ; N Umacron ; G 300 -U 363 ; WX 712 ; N umacron ; G 301 -U 364 ; WX 812 ; N Ubreve ; G 302 -U 365 ; WX 712 ; N ubreve ; G 303 -U 366 ; WX 812 ; N Uring ; G 304 -U 367 ; WX 712 ; N uring ; G 305 -U 368 ; WX 812 ; N Uhungarumlaut ; G 306 -U 369 ; WX 712 ; N uhungarumlaut ; G 307 -U 370 ; WX 812 ; N Uogonek ; G 308 -U 371 ; WX 712 ; N uogonek ; G 309 -U 372 ; WX 1103 ; N Wcircumflex ; G 310 -U 373 ; WX 924 ; N wcircumflex ; G 311 -U 374 ; WX 724 ; N Ycircumflex ; G 312 -U 375 ; WX 652 ; N ycircumflex ; G 313 -U 376 ; WX 724 ; N Ydieresis ; G 314 -U 377 ; WX 725 ; N Zacute ; G 315 -U 378 ; WX 582 ; N zacute ; G 316 -U 379 ; WX 725 ; N Zdotaccent ; G 317 -U 380 ; WX 582 ; N zdotaccent ; G 318 -U 381 ; WX 725 ; N Zcaron ; G 319 -U 382 ; WX 582 ; N zcaron ; G 320 -U 383 ; WX 435 ; N longs ; G 321 -U 384 ; WX 716 ; N uni0180 ; G 322 -U 385 ; WX 811 ; N uni0181 ; G 323 -U 386 ; WX 762 ; N uni0182 ; G 324 -U 387 ; WX 716 ; N uni0183 ; G 325 -U 388 ; WX 762 ; N uni0184 ; G 326 -U 389 ; WX 716 ; N uni0185 ; G 327 -U 390 ; WX 734 ; N uni0186 ; G 328 -U 391 ; WX 734 ; N uni0187 ; G 329 -U 392 ; WX 593 ; N uni0188 ; G 330 -U 393 ; WX 845 ; N uni0189 ; G 331 -U 394 ; WX 879 ; N uni018A ; G 332 -U 395 ; WX 762 ; N uni018B ; G 333 -U 396 ; WX 716 ; N uni018C ; G 334 -U 397 ; WX 687 ; N uni018D ; G 335 -U 398 ; WX 683 ; N uni018E ; G 336 -U 399 ; WX 850 ; N uni018F ; G 337 -U 400 ; WX 696 ; N uni0190 ; G 338 -U 401 ; WX 683 ; N uni0191 ; G 339 -U 402 ; WX 435 ; N florin ; G 340 -U 403 ; WX 821 ; N uni0193 ; G 341 -U 404 ; WX 793 ; N uni0194 ; G 342 -U 405 ; WX 1045 ; N uni0195 ; G 343 -U 406 ; WX 436 ; N uni0196 ; G 344 -U 407 ; WX 389 ; N uni0197 ; G 345 -U 408 ; WX 775 ; N uni0198 ; G 346 -U 409 ; WX 665 ; N uni0199 ; G 347 -U 410 ; WX 360 ; N uni019A ; G 348 -U 411 ; WX 592 ; N uni019B ; G 349 -U 412 ; WX 1042 ; N uni019C ; G 350 -U 413 ; WX 837 ; N uni019D ; G 351 -U 414 ; WX 712 ; N uni019E ; G 352 -U 415 ; WX 850 ; N uni019F ; G 353 -U 416 ; WX 850 ; N Ohorn ; G 354 -U 417 ; WX 687 ; N ohorn ; G 355 -U 418 ; WX 1114 ; N uni01A2 ; G 356 -U 419 ; WX 962 ; N uni01A3 ; G 357 -U 420 ; WX 782 ; N uni01A4 ; G 358 -U 421 ; WX 716 ; N uni01A5 ; G 359 -U 422 ; WX 770 ; N uni01A6 ; G 360 -U 423 ; WX 720 ; N uni01A7 ; G 361 -U 424 ; WX 595 ; N uni01A8 ; G 362 -U 425 ; WX 683 ; N uni01A9 ; G 363 -U 426 ; WX 552 ; N uni01AA ; G 364 -U 427 ; WX 478 ; N uni01AB ; G 365 -U 428 ; WX 707 ; N uni01AC ; G 366 -U 429 ; WX 478 ; N uni01AD ; G 367 -U 430 ; WX 682 ; N uni01AE ; G 368 -U 431 ; WX 812 ; N Uhorn ; G 369 -U 432 ; WX 712 ; N uhorn ; G 370 -U 433 ; WX 769 ; N uni01B1 ; G 371 -U 434 ; WX 813 ; N uni01B2 ; G 372 -U 435 ; WX 797 ; N uni01B3 ; G 373 -U 436 ; WX 778 ; N uni01B4 ; G 374 -U 437 ; WX 725 ; N uni01B5 ; G 375 -U 438 ; WX 582 ; N uni01B6 ; G 376 -U 439 ; WX 772 ; N uni01B7 ; G 377 -U 440 ; WX 772 ; N uni01B8 ; G 378 -U 441 ; WX 641 ; N uni01B9 ; G 379 -U 442 ; WX 582 ; N uni01BA ; G 380 -U 443 ; WX 696 ; N uni01BB ; G 381 -U 444 ; WX 772 ; N uni01BC ; G 382 -U 445 ; WX 641 ; N uni01BD ; G 383 -U 446 ; WX 573 ; N uni01BE ; G 384 -U 447 ; WX 716 ; N uni01BF ; G 385 -U 448 ; WX 372 ; N uni01C0 ; G 386 -U 449 ; WX 659 ; N uni01C1 ; G 387 -U 450 ; WX 544 ; N uni01C2 ; G 388 -U 451 ; WX 372 ; N uni01C3 ; G 389 -U 452 ; WX 1548 ; N uni01C4 ; G 390 -U 453 ; WX 1450 ; N uni01C5 ; G 391 -U 454 ; WX 1307 ; N uni01C6 ; G 392 -U 455 ; WX 977 ; N uni01C7 ; G 393 -U 456 ; WX 979 ; N uni01C8 ; G 394 -U 457 ; WX 670 ; N uni01C9 ; G 395 -U 458 ; WX 1193 ; N uni01CA ; G 396 -U 459 ; WX 1213 ; N uni01CB ; G 397 -U 460 ; WX 1063 ; N uni01CC ; G 398 -U 461 ; WX 774 ; N uni01CD ; G 399 -U 462 ; WX 675 ; N uni01CE ; G 400 -U 463 ; WX 372 ; N uni01CF ; G 401 -U 464 ; WX 343 ; N uni01D0 ; G 402 -U 465 ; WX 850 ; N uni01D1 ; G 403 -U 466 ; WX 687 ; N uni01D2 ; G 404 -U 467 ; WX 812 ; N uni01D3 ; G 405 -U 468 ; WX 712 ; N uni01D4 ; G 406 -U 469 ; WX 812 ; N uni01D5 ; G 407 -U 470 ; WX 712 ; N uni01D6 ; G 408 -U 471 ; WX 812 ; N uni01D7 ; G 409 -U 472 ; WX 712 ; N uni01D8 ; G 410 -U 473 ; WX 812 ; N uni01D9 ; G 411 -U 474 ; WX 712 ; N uni01DA ; G 412 -U 475 ; WX 812 ; N uni01DB ; G 413 -U 476 ; WX 712 ; N uni01DC ; G 414 -U 477 ; WX 678 ; N uni01DD ; G 415 -U 478 ; WX 774 ; N uni01DE ; G 416 -U 479 ; WX 675 ; N uni01DF ; G 417 -U 480 ; WX 774 ; N uni01E0 ; G 418 -U 481 ; WX 675 ; N uni01E1 ; G 419 -U 482 ; WX 1085 ; N uni01E2 ; G 420 -U 483 ; WX 1048 ; N uni01E3 ; G 421 -U 484 ; WX 821 ; N uni01E4 ; G 422 -U 485 ; WX 716 ; N uni01E5 ; G 423 -U 486 ; WX 821 ; N Gcaron ; G 424 -U 487 ; WX 716 ; N gcaron ; G 425 -U 488 ; WX 775 ; N uni01E8 ; G 426 -U 489 ; WX 665 ; N uni01E9 ; G 427 -U 490 ; WX 850 ; N uni01EA ; G 428 -U 491 ; WX 687 ; N uni01EB ; G 429 -U 492 ; WX 850 ; N uni01EC ; G 430 -U 493 ; WX 687 ; N uni01ED ; G 431 -U 494 ; WX 772 ; N uni01EE ; G 432 -U 495 ; WX 582 ; N uni01EF ; G 433 -U 496 ; WX 343 ; N uni01F0 ; G 434 -U 497 ; WX 1548 ; N uni01F1 ; G 435 -U 498 ; WX 1450 ; N uni01F2 ; G 436 -U 499 ; WX 1307 ; N uni01F3 ; G 437 -U 500 ; WX 821 ; N uni01F4 ; G 438 -U 501 ; WX 716 ; N uni01F5 ; G 439 -U 502 ; WX 1289 ; N uni01F6 ; G 440 -U 503 ; WX 787 ; N uni01F7 ; G 441 -U 504 ; WX 837 ; N uni01F8 ; G 442 -U 505 ; WX 712 ; N uni01F9 ; G 443 -U 506 ; WX 774 ; N Aringacute ; G 444 -U 507 ; WX 675 ; N aringacute ; G 445 -U 508 ; WX 1085 ; N AEacute ; G 446 -U 509 ; WX 1048 ; N aeacute ; G 447 -U 510 ; WX 850 ; N Oslashacute ; G 448 -U 511 ; WX 687 ; N oslashacute ; G 449 -U 512 ; WX 774 ; N uni0200 ; G 450 -U 513 ; WX 675 ; N uni0201 ; G 451 -U 514 ; WX 774 ; N uni0202 ; G 452 -U 515 ; WX 675 ; N uni0203 ; G 453 -U 516 ; WX 683 ; N uni0204 ; G 454 -U 517 ; WX 678 ; N uni0205 ; G 455 -U 518 ; WX 683 ; N uni0206 ; G 456 -U 519 ; WX 678 ; N uni0207 ; G 457 -U 520 ; WX 372 ; N uni0208 ; G 458 -U 521 ; WX 343 ; N uni0209 ; G 459 -U 522 ; WX 372 ; N uni020A ; G 460 -U 523 ; WX 343 ; N uni020B ; G 461 -U 524 ; WX 850 ; N uni020C ; G 462 -U 525 ; WX 687 ; N uni020D ; G 463 -U 526 ; WX 850 ; N uni020E ; G 464 -U 527 ; WX 687 ; N uni020F ; G 465 -U 528 ; WX 770 ; N uni0210 ; G 466 -U 529 ; WX 493 ; N uni0211 ; G 467 -U 530 ; WX 770 ; N uni0212 ; G 468 -U 531 ; WX 493 ; N uni0213 ; G 469 -U 532 ; WX 812 ; N uni0214 ; G 470 -U 533 ; WX 712 ; N uni0215 ; G 471 -U 534 ; WX 812 ; N uni0216 ; G 472 -U 535 ; WX 712 ; N uni0217 ; G 473 -U 536 ; WX 720 ; N Scommaaccent ; G 474 -U 537 ; WX 595 ; N scommaaccent ; G 475 -U 538 ; WX 682 ; N uni021A ; G 476 -U 539 ; WX 478 ; N uni021B ; G 477 -U 540 ; WX 690 ; N uni021C ; G 478 -U 541 ; WX 607 ; N uni021D ; G 479 -U 542 ; WX 837 ; N uni021E ; G 480 -U 543 ; WX 712 ; N uni021F ; G 481 -U 544 ; WX 837 ; N uni0220 ; G 482 -U 545 ; WX 865 ; N uni0221 ; G 483 -U 546 ; WX 809 ; N uni0222 ; G 484 -U 547 ; WX 659 ; N uni0223 ; G 485 -U 548 ; WX 725 ; N uni0224 ; G 486 -U 549 ; WX 582 ; N uni0225 ; G 487 -U 550 ; WX 774 ; N uni0226 ; G 488 -U 551 ; WX 675 ; N uni0227 ; G 489 -U 552 ; WX 683 ; N uni0228 ; G 490 -U 553 ; WX 678 ; N uni0229 ; G 491 -U 554 ; WX 850 ; N uni022A ; G 492 -U 555 ; WX 687 ; N uni022B ; G 493 -U 556 ; WX 850 ; N uni022C ; G 494 -U 557 ; WX 687 ; N uni022D ; G 495 -U 558 ; WX 850 ; N uni022E ; G 496 -U 559 ; WX 687 ; N uni022F ; G 497 -U 560 ; WX 850 ; N uni0230 ; G 498 -U 561 ; WX 687 ; N uni0231 ; G 499 -U 562 ; WX 724 ; N uni0232 ; G 500 -U 563 ; WX 652 ; N uni0233 ; G 501 -U 564 ; WX 492 ; N uni0234 ; G 502 -U 565 ; WX 867 ; N uni0235 ; G 503 -U 566 ; WX 512 ; N uni0236 ; G 504 -U 567 ; WX 343 ; N dotlessj ; G 505 -U 568 ; WX 1088 ; N uni0238 ; G 506 -U 569 ; WX 1088 ; N uni0239 ; G 507 -U 570 ; WX 774 ; N uni023A ; G 508 -U 571 ; WX 734 ; N uni023B ; G 509 -U 572 ; WX 593 ; N uni023C ; G 510 -U 573 ; WX 637 ; N uni023D ; G 511 -U 574 ; WX 682 ; N uni023E ; G 512 -U 575 ; WX 595 ; N uni023F ; G 513 -U 576 ; WX 582 ; N uni0240 ; G 514 -U 577 ; WX 782 ; N uni0241 ; G 515 -U 578 ; WX 614 ; N uni0242 ; G 516 -U 579 ; WX 762 ; N uni0243 ; G 517 -U 580 ; WX 812 ; N uni0244 ; G 518 -U 581 ; WX 774 ; N uni0245 ; G 519 -U 582 ; WX 683 ; N uni0246 ; G 520 -U 583 ; WX 678 ; N uni0247 ; G 521 -U 584 ; WX 372 ; N uni0248 ; G 522 -U 585 ; WX 343 ; N uni0249 ; G 523 -U 586 ; WX 860 ; N uni024A ; G 524 -U 587 ; WX 791 ; N uni024B ; G 525 -U 588 ; WX 770 ; N uni024C ; G 526 -U 589 ; WX 493 ; N uni024D ; G 527 -U 590 ; WX 724 ; N uni024E ; G 528 -U 591 ; WX 652 ; N uni024F ; G 529 -U 592 ; WX 675 ; N uni0250 ; G 530 -U 593 ; WX 716 ; N uni0251 ; G 531 -U 594 ; WX 716 ; N uni0252 ; G 532 -U 595 ; WX 716 ; N uni0253 ; G 533 -U 596 ; WX 593 ; N uni0254 ; G 534 -U 597 ; WX 593 ; N uni0255 ; G 535 -U 598 ; WX 791 ; N uni0256 ; G 536 -U 599 ; WX 792 ; N uni0257 ; G 537 -U 600 ; WX 678 ; N uni0258 ; G 538 -U 601 ; WX 678 ; N uni0259 ; G 539 -U 602 ; WX 876 ; N uni025A ; G 540 -U 603 ; WX 557 ; N uni025B ; G 541 -U 604 ; WX 545 ; N uni025C ; G 542 -U 605 ; WX 774 ; N uni025D ; G 543 -U 606 ; WX 731 ; N uni025E ; G 544 -U 607 ; WX 343 ; N uni025F ; G 545 -U 608 ; WX 792 ; N uni0260 ; G 546 -U 609 ; WX 716 ; N uni0261 ; G 547 -U 610 ; WX 627 ; N uni0262 ; G 548 -U 611 ; WX 735 ; N uni0263 ; G 549 -U 612 ; WX 635 ; N uni0264 ; G 550 -U 613 ; WX 712 ; N uni0265 ; G 551 -U 614 ; WX 712 ; N uni0266 ; G 552 -U 615 ; WX 712 ; N uni0267 ; G 553 -U 616 ; WX 545 ; N uni0268 ; G 554 -U 617 ; WX 440 ; N uni0269 ; G 555 -U 618 ; WX 545 ; N uni026A ; G 556 -U 619 ; WX 559 ; N uni026B ; G 557 -U 620 ; WX 693 ; N uni026C ; G 558 -U 621 ; WX 343 ; N uni026D ; G 559 -U 622 ; WX 841 ; N uni026E ; G 560 -U 623 ; WX 1042 ; N uni026F ; G 561 -U 624 ; WX 1042 ; N uni0270 ; G 562 -U 625 ; WX 1042 ; N uni0271 ; G 563 -U 626 ; WX 712 ; N uni0272 ; G 564 -U 627 ; WX 793 ; N uni0273 ; G 565 -U 628 ; WX 642 ; N uni0274 ; G 566 -U 629 ; WX 687 ; N uni0275 ; G 567 -U 630 ; WX 909 ; N uni0276 ; G 568 -U 631 ; WX 682 ; N uni0277 ; G 569 -U 632 ; WX 796 ; N uni0278 ; G 570 -U 633 ; WX 538 ; N uni0279 ; G 571 -U 634 ; WX 538 ; N uni027A ; G 572 -U 635 ; WX 650 ; N uni027B ; G 573 -U 636 ; WX 493 ; N uni027C ; G 574 -U 637 ; WX 493 ; N uni027D ; G 575 -U 638 ; WX 596 ; N uni027E ; G 576 -U 639 ; WX 596 ; N uni027F ; G 577 -U 640 ; WX 642 ; N uni0280 ; G 578 -U 641 ; WX 642 ; N uni0281 ; G 579 -U 642 ; WX 595 ; N uni0282 ; G 580 -U 643 ; WX 415 ; N uni0283 ; G 581 -U 644 ; WX 435 ; N uni0284 ; G 582 -U 645 ; WX 605 ; N uni0285 ; G 583 -U 646 ; WX 552 ; N uni0286 ; G 584 -U 647 ; WX 478 ; N uni0287 ; G 585 -U 648 ; WX 478 ; N uni0288 ; G 586 -U 649 ; WX 920 ; N uni0289 ; G 587 -U 650 ; WX 769 ; N uni028A ; G 588 -U 651 ; WX 670 ; N uni028B ; G 589 -U 652 ; WX 652 ; N uni028C ; G 590 -U 653 ; WX 924 ; N uni028D ; G 591 -U 654 ; WX 652 ; N uni028E ; G 592 -U 655 ; WX 724 ; N uni028F ; G 593 -U 656 ; WX 694 ; N uni0290 ; G 594 -U 657 ; WX 684 ; N uni0291 ; G 595 -U 658 ; WX 641 ; N uni0292 ; G 596 -U 659 ; WX 641 ; N uni0293 ; G 597 -U 660 ; WX 573 ; N uni0294 ; G 598 -U 661 ; WX 573 ; N uni0295 ; G 599 -U 662 ; WX 573 ; N uni0296 ; G 600 -U 663 ; WX 573 ; N uni0297 ; G 601 -U 664 ; WX 850 ; N uni0298 ; G 602 -U 665 ; WX 633 ; N uni0299 ; G 603 -U 666 ; WX 731 ; N uni029A ; G 604 -U 667 ; WX 685 ; N uni029B ; G 605 -U 668 ; WX 691 ; N uni029C ; G 606 -U 669 ; WX 343 ; N uni029D ; G 607 -U 670 ; WX 732 ; N uni029E ; G 608 -U 671 ; WX 539 ; N uni029F ; G 609 -U 672 ; WX 792 ; N uni02A0 ; G 610 -U 673 ; WX 573 ; N uni02A1 ; G 611 -U 674 ; WX 573 ; N uni02A2 ; G 612 -U 675 ; WX 1156 ; N uni02A3 ; G 613 -U 676 ; WX 1214 ; N uni02A4 ; G 614 -U 677 ; WX 1155 ; N uni02A5 ; G 615 -U 678 ; WX 975 ; N uni02A6 ; G 616 -U 679 ; WX 769 ; N uni02A7 ; G 617 -U 680 ; WX 929 ; N uni02A8 ; G 618 -U 681 ; WX 1026 ; N uni02A9 ; G 619 -U 682 ; WX 862 ; N uni02AA ; G 620 -U 683 ; WX 780 ; N uni02AB ; G 621 -U 684 ; WX 591 ; N uni02AC ; G 622 -U 685 ; WX 415 ; N uni02AD ; G 623 -U 686 ; WX 677 ; N uni02AE ; G 624 -U 687 ; WX 789 ; N uni02AF ; G 625 -U 688 ; WX 456 ; N uni02B0 ; G 626 -U 689 ; WX 456 ; N uni02B1 ; G 627 -U 690 ; WX 219 ; N uni02B2 ; G 628 -U 691 ; WX 315 ; N uni02B3 ; G 629 -U 692 ; WX 315 ; N uni02B4 ; G 630 -U 693 ; WX 315 ; N uni02B5 ; G 631 -U 694 ; WX 411 ; N uni02B6 ; G 632 -U 695 ; WX 591 ; N uni02B7 ; G 633 -U 696 ; WX 417 ; N uni02B8 ; G 634 -U 697 ; WX 302 ; N uni02B9 ; G 635 -U 698 ; WX 521 ; N uni02BA ; G 636 -U 699 ; WX 380 ; N uni02BB ; G 637 -U 700 ; WX 380 ; N uni02BC ; G 638 -U 701 ; WX 380 ; N uni02BD ; G 639 -U 702 ; WX 366 ; N uni02BE ; G 640 -U 703 ; WX 366 ; N uni02BF ; G 641 -U 704 ; WX 326 ; N uni02C0 ; G 642 -U 705 ; WX 326 ; N uni02C1 ; G 643 -U 706 ; WX 500 ; N uni02C2 ; G 644 -U 707 ; WX 500 ; N uni02C3 ; G 645 -U 708 ; WX 500 ; N uni02C4 ; G 646 -U 709 ; WX 500 ; N uni02C5 ; G 647 -U 710 ; WX 500 ; N circumflex ; G 648 -U 711 ; WX 500 ; N caron ; G 649 -U 712 ; WX 306 ; N uni02C8 ; G 650 -U 713 ; WX 500 ; N uni02C9 ; G 651 -U 714 ; WX 500 ; N uni02CA ; G 652 -U 715 ; WX 500 ; N uni02CB ; G 653 -U 716 ; WX 306 ; N uni02CC ; G 654 -U 717 ; WX 500 ; N uni02CD ; G 655 -U 718 ; WX 500 ; N uni02CE ; G 656 -U 719 ; WX 500 ; N uni02CF ; G 657 -U 720 ; WX 337 ; N uni02D0 ; G 658 -U 721 ; WX 337 ; N uni02D1 ; G 659 -U 722 ; WX 366 ; N uni02D2 ; G 660 -U 723 ; WX 366 ; N uni02D3 ; G 661 -U 724 ; WX 500 ; N uni02D4 ; G 662 -U 725 ; WX 500 ; N uni02D5 ; G 663 -U 726 ; WX 416 ; N uni02D6 ; G 664 -U 727 ; WX 328 ; N uni02D7 ; G 665 -U 728 ; WX 500 ; N breve ; G 666 -U 729 ; WX 500 ; N dotaccent ; G 667 -U 730 ; WX 500 ; N ring ; G 668 -U 731 ; WX 500 ; N ogonek ; G 669 -U 732 ; WX 500 ; N tilde ; G 670 -U 733 ; WX 500 ; N hungarumlaut ; G 671 -U 734 ; WX 351 ; N uni02DE ; G 672 -U 735 ; WX 500 ; N uni02DF ; G 673 -U 736 ; WX 412 ; N uni02E0 ; G 674 -U 737 ; WX 219 ; N uni02E1 ; G 675 -U 738 ; WX 381 ; N uni02E2 ; G 676 -U 739 ; WX 413 ; N uni02E3 ; G 677 -U 740 ; WX 326 ; N uni02E4 ; G 678 -U 741 ; WX 500 ; N uni02E5 ; G 679 -U 742 ; WX 500 ; N uni02E6 ; G 680 -U 743 ; WX 500 ; N uni02E7 ; G 681 -U 744 ; WX 500 ; N uni02E8 ; G 682 -U 745 ; WX 500 ; N uni02E9 ; G 683 -U 748 ; WX 500 ; N uni02EC ; G 684 -U 749 ; WX 500 ; N uni02ED ; G 685 -U 750 ; WX 644 ; N uni02EE ; G 686 -U 755 ; WX 500 ; N uni02F3 ; G 687 -U 759 ; WX 500 ; N uni02F7 ; G 688 -U 768 ; WX 0 ; N gravecomb ; G 689 -U 769 ; WX 0 ; N acutecomb ; G 690 -U 770 ; WX 0 ; N uni0302 ; G 691 -U 771 ; WX 0 ; N tildecomb ; G 692 -U 772 ; WX 0 ; N uni0304 ; G 693 -U 773 ; WX 0 ; N uni0305 ; G 694 -U 774 ; WX 0 ; N uni0306 ; G 695 -U 775 ; WX 0 ; N uni0307 ; G 696 -U 776 ; WX 0 ; N uni0308 ; G 697 -U 777 ; WX 0 ; N hookabovecomb ; G 698 -U 778 ; WX 0 ; N uni030A ; G 699 -U 779 ; WX 0 ; N uni030B ; G 700 -U 780 ; WX 0 ; N uni030C ; G 701 -U 781 ; WX 0 ; N uni030D ; G 702 -U 782 ; WX 0 ; N uni030E ; G 703 -U 783 ; WX 0 ; N uni030F ; G 704 -U 784 ; WX 0 ; N uni0310 ; G 705 -U 785 ; WX 0 ; N uni0311 ; G 706 -U 786 ; WX 0 ; N uni0312 ; G 707 -U 787 ; WX 0 ; N uni0313 ; G 708 -U 788 ; WX 0 ; N uni0314 ; G 709 -U 789 ; WX 0 ; N uni0315 ; G 710 -U 790 ; WX 0 ; N uni0316 ; G 711 -U 791 ; WX 0 ; N uni0317 ; G 712 -U 792 ; WX 0 ; N uni0318 ; G 713 -U 793 ; WX 0 ; N uni0319 ; G 714 -U 794 ; WX 0 ; N uni031A ; G 715 -U 795 ; WX 0 ; N uni031B ; G 716 -U 796 ; WX 0 ; N uni031C ; G 717 -U 797 ; WX 0 ; N uni031D ; G 718 -U 798 ; WX 0 ; N uni031E ; G 719 -U 799 ; WX 0 ; N uni031F ; G 720 -U 800 ; WX 0 ; N uni0320 ; G 721 -U 801 ; WX 0 ; N uni0321 ; G 722 -U 802 ; WX 0 ; N uni0322 ; G 723 -U 803 ; WX 0 ; N dotbelowcomb ; G 724 -U 804 ; WX 0 ; N uni0324 ; G 725 -U 805 ; WX 0 ; N uni0325 ; G 726 -U 806 ; WX 0 ; N uni0326 ; G 727 -U 807 ; WX 0 ; N uni0327 ; G 728 -U 808 ; WX 0 ; N uni0328 ; G 729 -U 809 ; WX 0 ; N uni0329 ; G 730 -U 810 ; WX 0 ; N uni032A ; G 731 -U 811 ; WX 0 ; N uni032B ; G 732 -U 812 ; WX 0 ; N uni032C ; G 733 -U 813 ; WX 0 ; N uni032D ; G 734 -U 814 ; WX 0 ; N uni032E ; G 735 -U 815 ; WX 0 ; N uni032F ; G 736 -U 816 ; WX 0 ; N uni0330 ; G 737 -U 817 ; WX 0 ; N uni0331 ; G 738 -U 818 ; WX 0 ; N uni0332 ; G 739 -U 819 ; WX 0 ; N uni0333 ; G 740 -U 820 ; WX 0 ; N uni0334 ; G 741 -U 821 ; WX 0 ; N uni0335 ; G 742 -U 822 ; WX 0 ; N uni0336 ; G 743 -U 823 ; WX 0 ; N uni0337 ; G 744 -U 824 ; WX 0 ; N uni0338 ; G 745 -U 825 ; WX 0 ; N uni0339 ; G 746 -U 826 ; WX 0 ; N uni033A ; G 747 -U 827 ; WX 0 ; N uni033B ; G 748 -U 828 ; WX 0 ; N uni033C ; G 749 -U 829 ; WX 0 ; N uni033D ; G 750 -U 830 ; WX 0 ; N uni033E ; G 751 -U 831 ; WX 0 ; N uni033F ; G 752 -U 832 ; WX 0 ; N uni0340 ; G 753 -U 833 ; WX 0 ; N uni0341 ; G 754 -U 834 ; WX 0 ; N uni0342 ; G 755 -U 835 ; WX 0 ; N uni0343 ; G 756 -U 836 ; WX 0 ; N uni0344 ; G 757 -U 837 ; WX 0 ; N uni0345 ; G 758 -U 838 ; WX 0 ; N uni0346 ; G 759 -U 839 ; WX 0 ; N uni0347 ; G 760 -U 840 ; WX 0 ; N uni0348 ; G 761 -U 841 ; WX 0 ; N uni0349 ; G 762 -U 842 ; WX 0 ; N uni034A ; G 763 -U 843 ; WX 0 ; N uni034B ; G 764 -U 844 ; WX 0 ; N uni034C ; G 765 -U 845 ; WX 0 ; N uni034D ; G 766 -U 846 ; WX 0 ; N uni034E ; G 767 -U 847 ; WX 0 ; N uni034F ; G 768 -U 849 ; WX 0 ; N uni0351 ; G 769 -U 850 ; WX 0 ; N uni0352 ; G 770 -U 851 ; WX 0 ; N uni0353 ; G 771 -U 855 ; WX 0 ; N uni0357 ; G 772 -U 856 ; WX 0 ; N uni0358 ; G 773 -U 858 ; WX 0 ; N uni035A ; G 774 -U 860 ; WX 0 ; N uni035C ; G 775 -U 861 ; WX 0 ; N uni035D ; G 776 -U 862 ; WX 0 ; N uni035E ; G 777 -U 863 ; WX 0 ; N uni035F ; G 778 -U 864 ; WX 0 ; N uni0360 ; G 779 -U 865 ; WX 0 ; N uni0361 ; G 780 -U 866 ; WX 0 ; N uni0362 ; G 781 -U 880 ; WX 698 ; N uni0370 ; G 782 -U 881 ; WX 565 ; N uni0371 ; G 783 -U 882 ; WX 1022 ; N uni0372 ; G 784 -U 883 ; WX 836 ; N uni0373 ; G 785 -U 884 ; WX 302 ; N uni0374 ; G 786 -U 885 ; WX 302 ; N uni0375 ; G 787 -U 886 ; WX 837 ; N uni0376 ; G 788 -U 887 ; WX 701 ; N uni0377 ; G 789 -U 890 ; WX 500 ; N uni037A ; G 790 -U 891 ; WX 593 ; N uni037B ; G 791 -U 892 ; WX 550 ; N uni037C ; G 792 -U 893 ; WX 549 ; N uni037D ; G 793 -U 894 ; WX 400 ; N uni037E ; G 794 -U 895 ; WX 372 ; N uni037F ; G 795 -U 900 ; WX 441 ; N tonos ; G 796 -U 901 ; WX 500 ; N dieresistonos ; G 797 -U 902 ; WX 797 ; N Alphatonos ; G 798 -U 903 ; WX 380 ; N anoteleia ; G 799 -U 904 ; WX 846 ; N Epsilontonos ; G 800 -U 905 ; WX 1009 ; N Etatonos ; G 801 -U 906 ; WX 563 ; N Iotatonos ; G 802 -U 908 ; WX 891 ; N Omicrontonos ; G 803 -U 910 ; WX 980 ; N Upsilontonos ; G 804 -U 911 ; WX 894 ; N Omegatonos ; G 805 -U 912 ; WX 390 ; N iotadieresistonos ; G 806 -U 913 ; WX 774 ; N Alpha ; G 807 -U 914 ; WX 762 ; N Beta ; G 808 -U 915 ; WX 637 ; N Gamma ; G 809 -U 916 ; WX 774 ; N uni0394 ; G 810 -U 917 ; WX 683 ; N Epsilon ; G 811 -U 918 ; WX 725 ; N Zeta ; G 812 -U 919 ; WX 837 ; N Eta ; G 813 -U 920 ; WX 850 ; N Theta ; G 814 -U 921 ; WX 372 ; N Iota ; G 815 -U 922 ; WX 775 ; N Kappa ; G 816 -U 923 ; WX 774 ; N Lambda ; G 817 -U 924 ; WX 995 ; N Mu ; G 818 -U 925 ; WX 837 ; N Nu ; G 819 -U 926 ; WX 632 ; N Xi ; G 820 -U 927 ; WX 850 ; N Omicron ; G 821 -U 928 ; WX 837 ; N Pi ; G 822 -U 929 ; WX 733 ; N Rho ; G 823 -U 931 ; WX 683 ; N Sigma ; G 824 -U 932 ; WX 682 ; N Tau ; G 825 -U 933 ; WX 724 ; N Upsilon ; G 826 -U 934 ; WX 850 ; N Phi ; G 827 -U 935 ; WX 771 ; N Chi ; G 828 -U 936 ; WX 850 ; N Psi ; G 829 -U 937 ; WX 850 ; N Omega ; G 830 -U 938 ; WX 372 ; N Iotadieresis ; G 831 -U 939 ; WX 724 ; N Upsilondieresis ; G 832 -U 940 ; WX 687 ; N alphatonos ; G 833 -U 941 ; WX 557 ; N epsilontonos ; G 834 -U 942 ; WX 712 ; N etatonos ; G 835 -U 943 ; WX 390 ; N iotatonos ; G 836 -U 944 ; WX 675 ; N upsilondieresistonos ; G 837 -U 945 ; WX 687 ; N alpha ; G 838 -U 946 ; WX 716 ; N beta ; G 839 -U 947 ; WX 681 ; N gamma ; G 840 -U 948 ; WX 687 ; N delta ; G 841 -U 949 ; WX 557 ; N epsilon ; G 842 -U 950 ; WX 591 ; N zeta ; G 843 -U 951 ; WX 712 ; N eta ; G 844 -U 952 ; WX 687 ; N theta ; G 845 -U 953 ; WX 390 ; N iota ; G 846 -U 954 ; WX 710 ; N kappa ; G 847 -U 955 ; WX 633 ; N lambda ; G 848 -U 956 ; WX 736 ; N uni03BC ; G 849 -U 957 ; WX 681 ; N nu ; G 850 -U 958 ; WX 591 ; N xi ; G 851 -U 959 ; WX 687 ; N omicron ; G 852 -U 960 ; WX 791 ; N pi ; G 853 -U 961 ; WX 716 ; N rho ; G 854 -U 962 ; WX 593 ; N sigma1 ; G 855 -U 963 ; WX 779 ; N sigma ; G 856 -U 964 ; WX 638 ; N tau ; G 857 -U 965 ; WX 675 ; N upsilon ; G 858 -U 966 ; WX 782 ; N phi ; G 859 -U 967 ; WX 645 ; N chi ; G 860 -U 968 ; WX 794 ; N psi ; G 861 -U 969 ; WX 869 ; N omega ; G 862 -U 970 ; WX 390 ; N iotadieresis ; G 863 -U 971 ; WX 675 ; N upsilondieresis ; G 864 -U 972 ; WX 687 ; N omicrontonos ; G 865 -U 973 ; WX 675 ; N upsilontonos ; G 866 -U 974 ; WX 869 ; N omegatonos ; G 867 -U 975 ; WX 775 ; N uni03CF ; G 868 -U 976 ; WX 651 ; N uni03D0 ; G 869 -U 977 ; WX 661 ; N theta1 ; G 870 -U 978 ; WX 746 ; N Upsilon1 ; G 871 -U 979 ; WX 981 ; N uni03D3 ; G 872 -U 980 ; WX 746 ; N uni03D4 ; G 873 -U 981 ; WX 796 ; N phi1 ; G 874 -U 982 ; WX 869 ; N omega1 ; G 875 -U 983 ; WX 744 ; N uni03D7 ; G 876 -U 984 ; WX 850 ; N uni03D8 ; G 877 -U 985 ; WX 687 ; N uni03D9 ; G 878 -U 986 ; WX 734 ; N uni03DA ; G 879 -U 987 ; WX 593 ; N uni03DB ; G 880 -U 988 ; WX 683 ; N uni03DC ; G 881 -U 989 ; WX 494 ; N uni03DD ; G 882 -U 990 ; WX 702 ; N uni03DE ; G 883 -U 991 ; WX 660 ; N uni03DF ; G 884 -U 992 ; WX 919 ; N uni03E0 ; G 885 -U 993 ; WX 627 ; N uni03E1 ; G 886 -U 994 ; WX 1093 ; N uni03E2 ; G 887 -U 995 ; WX 837 ; N uni03E3 ; G 888 -U 996 ; WX 832 ; N uni03E4 ; G 889 -U 997 ; WX 716 ; N uni03E5 ; G 890 -U 998 ; WX 928 ; N uni03E6 ; G 891 -U 999 ; WX 744 ; N uni03E7 ; G 892 -U 1000 ; WX 733 ; N uni03E8 ; G 893 -U 1001 ; WX 650 ; N uni03E9 ; G 894 -U 1002 ; WX 789 ; N uni03EA ; G 895 -U 1003 ; WX 671 ; N uni03EB ; G 896 -U 1004 ; WX 752 ; N uni03EC ; G 897 -U 1005 ; WX 716 ; N uni03ED ; G 898 -U 1006 ; WX 682 ; N uni03EE ; G 899 -U 1007 ; WX 590 ; N uni03EF ; G 900 -U 1008 ; WX 744 ; N uni03F0 ; G 901 -U 1009 ; WX 716 ; N uni03F1 ; G 902 -U 1010 ; WX 593 ; N uni03F2 ; G 903 -U 1011 ; WX 343 ; N uni03F3 ; G 904 -U 1012 ; WX 850 ; N uni03F4 ; G 905 -U 1013 ; WX 645 ; N uni03F5 ; G 906 -U 1014 ; WX 645 ; N uni03F6 ; G 907 -U 1015 ; WX 742 ; N uni03F7 ; G 908 -U 1016 ; WX 716 ; N uni03F8 ; G 909 -U 1017 ; WX 734 ; N uni03F9 ; G 910 -U 1018 ; WX 995 ; N uni03FA ; G 911 -U 1019 ; WX 732 ; N uni03FB ; G 912 -U 1020 ; WX 716 ; N uni03FC ; G 913 -U 1021 ; WX 734 ; N uni03FD ; G 914 -U 1022 ; WX 734 ; N uni03FE ; G 915 -U 1023 ; WX 698 ; N uni03FF ; G 916 -U 1024 ; WX 683 ; N uni0400 ; G 917 -U 1025 ; WX 683 ; N uni0401 ; G 918 -U 1026 ; WX 878 ; N uni0402 ; G 919 -U 1027 ; WX 637 ; N uni0403 ; G 920 -U 1028 ; WX 734 ; N uni0404 ; G 921 -U 1029 ; WX 720 ; N uni0405 ; G 922 -U 1030 ; WX 372 ; N uni0406 ; G 923 -U 1031 ; WX 372 ; N uni0407 ; G 924 -U 1032 ; WX 372 ; N uni0408 ; G 925 -U 1033 ; WX 1154 ; N uni0409 ; G 926 -U 1034 ; WX 1130 ; N uni040A ; G 927 -U 1035 ; WX 878 ; N uni040B ; G 928 -U 1036 ; WX 817 ; N uni040C ; G 929 -U 1037 ; WX 837 ; N uni040D ; G 930 -U 1038 ; WX 771 ; N uni040E ; G 931 -U 1039 ; WX 837 ; N uni040F ; G 932 -U 1040 ; WX 774 ; N uni0410 ; G 933 -U 1041 ; WX 762 ; N uni0411 ; G 934 -U 1042 ; WX 762 ; N uni0412 ; G 935 -U 1043 ; WX 637 ; N uni0413 ; G 936 -U 1044 ; WX 891 ; N uni0414 ; G 937 -U 1045 ; WX 683 ; N uni0415 ; G 938 -U 1046 ; WX 1224 ; N uni0416 ; G 939 -U 1047 ; WX 710 ; N uni0417 ; G 940 -U 1048 ; WX 837 ; N uni0418 ; G 941 -U 1049 ; WX 837 ; N uni0419 ; G 942 -U 1050 ; WX 817 ; N uni041A ; G 943 -U 1051 ; WX 831 ; N uni041B ; G 944 -U 1052 ; WX 995 ; N uni041C ; G 945 -U 1053 ; WX 837 ; N uni041D ; G 946 -U 1054 ; WX 850 ; N uni041E ; G 947 -U 1055 ; WX 837 ; N uni041F ; G 948 -U 1056 ; WX 733 ; N uni0420 ; G 949 -U 1057 ; WX 734 ; N uni0421 ; G 950 -U 1058 ; WX 682 ; N uni0422 ; G 951 -U 1059 ; WX 771 ; N uni0423 ; G 952 -U 1060 ; WX 992 ; N uni0424 ; G 953 -U 1061 ; WX 771 ; N uni0425 ; G 954 -U 1062 ; WX 928 ; N uni0426 ; G 955 -U 1063 ; WX 808 ; N uni0427 ; G 956 -U 1064 ; WX 1235 ; N uni0428 ; G 957 -U 1065 ; WX 1326 ; N uni0429 ; G 958 -U 1066 ; WX 939 ; N uni042A ; G 959 -U 1067 ; WX 1036 ; N uni042B ; G 960 -U 1068 ; WX 762 ; N uni042C ; G 961 -U 1069 ; WX 734 ; N uni042D ; G 962 -U 1070 ; WX 1174 ; N uni042E ; G 963 -U 1071 ; WX 770 ; N uni042F ; G 964 -U 1072 ; WX 675 ; N uni0430 ; G 965 -U 1073 ; WX 698 ; N uni0431 ; G 966 -U 1074 ; WX 633 ; N uni0432 ; G 967 -U 1075 ; WX 522 ; N uni0433 ; G 968 -U 1076 ; WX 808 ; N uni0434 ; G 969 -U 1077 ; WX 678 ; N uni0435 ; G 970 -U 1078 ; WX 995 ; N uni0436 ; G 971 -U 1079 ; WX 581 ; N uni0437 ; G 972 -U 1080 ; WX 701 ; N uni0438 ; G 973 -U 1081 ; WX 701 ; N uni0439 ; G 974 -U 1082 ; WX 679 ; N uni043A ; G 975 -U 1083 ; WX 732 ; N uni043B ; G 976 -U 1084 ; WX 817 ; N uni043C ; G 977 -U 1085 ; WX 691 ; N uni043D ; G 978 -U 1086 ; WX 687 ; N uni043E ; G 979 -U 1087 ; WX 691 ; N uni043F ; G 980 -U 1088 ; WX 716 ; N uni0440 ; G 981 -U 1089 ; WX 593 ; N uni0441 ; G 982 -U 1090 ; WX 580 ; N uni0442 ; G 983 -U 1091 ; WX 652 ; N uni0443 ; G 984 -U 1092 ; WX 992 ; N uni0444 ; G 985 -U 1093 ; WX 645 ; N uni0445 ; G 986 -U 1094 ; WX 741 ; N uni0446 ; G 987 -U 1095 ; WX 687 ; N uni0447 ; G 988 -U 1096 ; WX 1062 ; N uni0448 ; G 989 -U 1097 ; WX 1105 ; N uni0449 ; G 990 -U 1098 ; WX 751 ; N uni044A ; G 991 -U 1099 ; WX 904 ; N uni044B ; G 992 -U 1100 ; WX 632 ; N uni044C ; G 993 -U 1101 ; WX 593 ; N uni044D ; G 994 -U 1102 ; WX 972 ; N uni044E ; G 995 -U 1103 ; WX 642 ; N uni044F ; G 996 -U 1104 ; WX 678 ; N uni0450 ; G 997 -U 1105 ; WX 678 ; N uni0451 ; G 998 -U 1106 ; WX 714 ; N uni0452 ; G 999 -U 1107 ; WX 522 ; N uni0453 ; G 1000 -U 1108 ; WX 593 ; N uni0454 ; G 1001 -U 1109 ; WX 595 ; N uni0455 ; G 1002 -U 1110 ; WX 343 ; N uni0456 ; G 1003 -U 1111 ; WX 343 ; N uni0457 ; G 1004 -U 1112 ; WX 343 ; N uni0458 ; G 1005 -U 1113 ; WX 991 ; N uni0459 ; G 1006 -U 1114 ; WX 956 ; N uni045A ; G 1007 -U 1115 ; WX 734 ; N uni045B ; G 1008 -U 1116 ; WX 679 ; N uni045C ; G 1009 -U 1117 ; WX 701 ; N uni045D ; G 1010 -U 1118 ; WX 652 ; N uni045E ; G 1011 -U 1119 ; WX 691 ; N uni045F ; G 1012 -U 1120 ; WX 1093 ; N uni0460 ; G 1013 -U 1121 ; WX 869 ; N uni0461 ; G 1014 -U 1122 ; WX 840 ; N uni0462 ; G 1015 -U 1123 ; WX 736 ; N uni0463 ; G 1016 -U 1124 ; WX 1012 ; N uni0464 ; G 1017 -U 1125 ; WX 839 ; N uni0465 ; G 1018 -U 1126 ; WX 992 ; N uni0466 ; G 1019 -U 1127 ; WX 832 ; N uni0467 ; G 1020 -U 1128 ; WX 1358 ; N uni0468 ; G 1021 -U 1129 ; WX 1121 ; N uni0469 ; G 1022 -U 1130 ; WX 850 ; N uni046A ; G 1023 -U 1131 ; WX 687 ; N uni046B ; G 1024 -U 1132 ; WX 1236 ; N uni046C ; G 1025 -U 1133 ; WX 1007 ; N uni046D ; G 1026 -U 1134 ; WX 696 ; N uni046E ; G 1027 -U 1135 ; WX 557 ; N uni046F ; G 1028 -U 1136 ; WX 1075 ; N uni0470 ; G 1029 -U 1137 ; WX 1061 ; N uni0471 ; G 1030 -U 1138 ; WX 850 ; N uni0472 ; G 1031 -U 1139 ; WX 687 ; N uni0473 ; G 1032 -U 1140 ; WX 850 ; N uni0474 ; G 1033 -U 1141 ; WX 695 ; N uni0475 ; G 1034 -U 1142 ; WX 850 ; N uni0476 ; G 1035 -U 1143 ; WX 695 ; N uni0477 ; G 1036 -U 1144 ; WX 1148 ; N uni0478 ; G 1037 -U 1145 ; WX 1043 ; N uni0479 ; G 1038 -U 1146 ; WX 1074 ; N uni047A ; G 1039 -U 1147 ; WX 863 ; N uni047B ; G 1040 -U 1148 ; WX 1405 ; N uni047C ; G 1041 -U 1149 ; WX 1173 ; N uni047D ; G 1042 -U 1150 ; WX 1093 ; N uni047E ; G 1043 -U 1151 ; WX 869 ; N uni047F ; G 1044 -U 1152 ; WX 734 ; N uni0480 ; G 1045 -U 1153 ; WX 593 ; N uni0481 ; G 1046 -U 1154 ; WX 652 ; N uni0482 ; G 1047 -U 1155 ; WX 0 ; N uni0483 ; G 1048 -U 1156 ; WX 0 ; N uni0484 ; G 1049 -U 1157 ; WX 0 ; N uni0485 ; G 1050 -U 1158 ; WX 0 ; N uni0486 ; G 1051 -U 1159 ; WX 0 ; N uni0487 ; G 1052 -U 1160 ; WX 418 ; N uni0488 ; G 1053 -U 1161 ; WX 418 ; N uni0489 ; G 1054 -U 1162 ; WX 938 ; N uni048A ; G 1055 -U 1163 ; WX 806 ; N uni048B ; G 1056 -U 1164 ; WX 762 ; N uni048C ; G 1057 -U 1165 ; WX 611 ; N uni048D ; G 1058 -U 1166 ; WX 736 ; N uni048E ; G 1059 -U 1167 ; WX 718 ; N uni048F ; G 1060 -U 1168 ; WX 637 ; N uni0490 ; G 1061 -U 1169 ; WX 522 ; N uni0491 ; G 1062 -U 1170 ; WX 666 ; N uni0492 ; G 1063 -U 1171 ; WX 543 ; N uni0493 ; G 1064 -U 1172 ; WX 789 ; N uni0494 ; G 1065 -U 1173 ; WX 522 ; N uni0495 ; G 1066 -U 1174 ; WX 1224 ; N uni0496 ; G 1067 -U 1175 ; WX 995 ; N uni0497 ; G 1068 -U 1176 ; WX 710 ; N uni0498 ; G 1069 -U 1177 ; WX 581 ; N uni0499 ; G 1070 -U 1178 ; WX 775 ; N uni049A ; G 1071 -U 1179 ; WX 679 ; N uni049B ; G 1072 -U 1180 ; WX 817 ; N uni049C ; G 1073 -U 1181 ; WX 679 ; N uni049D ; G 1074 -U 1182 ; WX 817 ; N uni049E ; G 1075 -U 1183 ; WX 679 ; N uni049F ; G 1076 -U 1184 ; WX 1015 ; N uni04A0 ; G 1077 -U 1185 ; WX 826 ; N uni04A1 ; G 1078 -U 1186 ; WX 837 ; N uni04A2 ; G 1079 -U 1187 ; WX 691 ; N uni04A3 ; G 1080 -U 1188 ; WX 1103 ; N uni04A4 ; G 1081 -U 1189 ; WX 871 ; N uni04A5 ; G 1082 -U 1190 ; WX 1254 ; N uni04A6 ; G 1083 -U 1191 ; WX 979 ; N uni04A7 ; G 1084 -U 1192 ; WX 946 ; N uni04A8 ; G 1085 -U 1193 ; WX 859 ; N uni04A9 ; G 1086 -U 1194 ; WX 734 ; N uni04AA ; G 1087 -U 1195 ; WX 593 ; N uni04AB ; G 1088 -U 1196 ; WX 682 ; N uni04AC ; G 1089 -U 1197 ; WX 580 ; N uni04AD ; G 1090 -U 1198 ; WX 724 ; N uni04AE ; G 1091 -U 1199 ; WX 652 ; N uni04AF ; G 1092 -U 1200 ; WX 724 ; N uni04B0 ; G 1093 -U 1201 ; WX 652 ; N uni04B1 ; G 1094 -U 1202 ; WX 771 ; N uni04B2 ; G 1095 -U 1203 ; WX 645 ; N uni04B3 ; G 1096 -U 1204 ; WX 1104 ; N uni04B4 ; G 1097 -U 1205 ; WX 1001 ; N uni04B5 ; G 1098 -U 1206 ; WX 808 ; N uni04B6 ; G 1099 -U 1207 ; WX 687 ; N uni04B7 ; G 1100 -U 1208 ; WX 808 ; N uni04B8 ; G 1101 -U 1209 ; WX 687 ; N uni04B9 ; G 1102 -U 1210 ; WX 808 ; N uni04BA ; G 1103 -U 1211 ; WX 712 ; N uni04BB ; G 1104 -U 1212 ; WX 1026 ; N uni04BC ; G 1105 -U 1213 ; WX 810 ; N uni04BD ; G 1106 -U 1214 ; WX 1026 ; N uni04BE ; G 1107 -U 1215 ; WX 810 ; N uni04BF ; G 1108 -U 1216 ; WX 372 ; N uni04C0 ; G 1109 -U 1217 ; WX 1224 ; N uni04C1 ; G 1110 -U 1218 ; WX 995 ; N uni04C2 ; G 1111 -U 1219 ; WX 778 ; N uni04C3 ; G 1112 -U 1220 ; WX 629 ; N uni04C4 ; G 1113 -U 1221 ; WX 933 ; N uni04C5 ; G 1114 -U 1222 ; WX 804 ; N uni04C6 ; G 1115 -U 1223 ; WX 837 ; N uni04C7 ; G 1116 -U 1224 ; WX 691 ; N uni04C8 ; G 1117 -U 1225 ; WX 938 ; N uni04C9 ; G 1118 -U 1226 ; WX 806 ; N uni04CA ; G 1119 -U 1227 ; WX 808 ; N uni04CB ; G 1120 -U 1228 ; WX 687 ; N uni04CC ; G 1121 -U 1229 ; WX 1096 ; N uni04CD ; G 1122 -U 1230 ; WX 932 ; N uni04CE ; G 1123 -U 1231 ; WX 343 ; N uni04CF ; G 1124 -U 1232 ; WX 774 ; N uni04D0 ; G 1125 -U 1233 ; WX 675 ; N uni04D1 ; G 1126 -U 1234 ; WX 774 ; N uni04D2 ; G 1127 -U 1235 ; WX 675 ; N uni04D3 ; G 1128 -U 1236 ; WX 1085 ; N uni04D4 ; G 1129 -U 1237 ; WX 1048 ; N uni04D5 ; G 1130 -U 1238 ; WX 683 ; N uni04D6 ; G 1131 -U 1239 ; WX 678 ; N uni04D7 ; G 1132 -U 1240 ; WX 850 ; N uni04D8 ; G 1133 -U 1241 ; WX 678 ; N uni04D9 ; G 1134 -U 1242 ; WX 850 ; N uni04DA ; G 1135 -U 1243 ; WX 678 ; N uni04DB ; G 1136 -U 1244 ; WX 1224 ; N uni04DC ; G 1137 -U 1245 ; WX 995 ; N uni04DD ; G 1138 -U 1246 ; WX 710 ; N uni04DE ; G 1139 -U 1247 ; WX 581 ; N uni04DF ; G 1140 -U 1248 ; WX 772 ; N uni04E0 ; G 1141 -U 1249 ; WX 641 ; N uni04E1 ; G 1142 -U 1250 ; WX 837 ; N uni04E2 ; G 1143 -U 1251 ; WX 701 ; N uni04E3 ; G 1144 -U 1252 ; WX 837 ; N uni04E4 ; G 1145 -U 1253 ; WX 701 ; N uni04E5 ; G 1146 -U 1254 ; WX 850 ; N uni04E6 ; G 1147 -U 1255 ; WX 687 ; N uni04E7 ; G 1148 -U 1256 ; WX 850 ; N uni04E8 ; G 1149 -U 1257 ; WX 687 ; N uni04E9 ; G 1150 -U 1258 ; WX 850 ; N uni04EA ; G 1151 -U 1259 ; WX 687 ; N uni04EB ; G 1152 -U 1260 ; WX 734 ; N uni04EC ; G 1153 -U 1261 ; WX 593 ; N uni04ED ; G 1154 -U 1262 ; WX 771 ; N uni04EE ; G 1155 -U 1263 ; WX 652 ; N uni04EF ; G 1156 -U 1264 ; WX 771 ; N uni04F0 ; G 1157 -U 1265 ; WX 652 ; N uni04F1 ; G 1158 -U 1266 ; WX 771 ; N uni04F2 ; G 1159 -U 1267 ; WX 652 ; N uni04F3 ; G 1160 -U 1268 ; WX 808 ; N uni04F4 ; G 1161 -U 1269 ; WX 687 ; N uni04F5 ; G 1162 -U 1270 ; WX 637 ; N uni04F6 ; G 1163 -U 1271 ; WX 522 ; N uni04F7 ; G 1164 -U 1272 ; WX 1036 ; N uni04F8 ; G 1165 -U 1273 ; WX 904 ; N uni04F9 ; G 1166 -U 1274 ; WX 666 ; N uni04FA ; G 1167 -U 1275 ; WX 543 ; N uni04FB ; G 1168 -U 1276 ; WX 771 ; N uni04FC ; G 1169 -U 1277 ; WX 645 ; N uni04FD ; G 1170 -U 1278 ; WX 771 ; N uni04FE ; G 1171 -U 1279 ; WX 645 ; N uni04FF ; G 1172 -U 1280 ; WX 762 ; N uni0500 ; G 1173 -U 1281 ; WX 608 ; N uni0501 ; G 1174 -U 1282 ; WX 1159 ; N uni0502 ; G 1175 -U 1283 ; WX 893 ; N uni0503 ; G 1176 -U 1284 ; WX 1119 ; N uni0504 ; G 1177 -U 1285 ; WX 920 ; N uni0505 ; G 1178 -U 1286 ; WX 828 ; N uni0506 ; G 1179 -U 1287 ; WX 693 ; N uni0507 ; G 1180 -U 1288 ; WX 1242 ; N uni0508 ; G 1181 -U 1289 ; WX 1017 ; N uni0509 ; G 1182 -U 1290 ; WX 1289 ; N uni050A ; G 1183 -U 1291 ; WX 1013 ; N uni050B ; G 1184 -U 1292 ; WX 839 ; N uni050C ; G 1185 -U 1293 ; WX 638 ; N uni050D ; G 1186 -U 1294 ; WX 938 ; N uni050E ; G 1187 -U 1295 ; WX 803 ; N uni050F ; G 1188 -U 1296 ; WX 696 ; N uni0510 ; G 1189 -U 1297 ; WX 557 ; N uni0511 ; G 1190 -U 1298 ; WX 831 ; N uni0512 ; G 1191 -U 1299 ; WX 732 ; N uni0513 ; G 1192 -U 1300 ; WX 1286 ; N uni0514 ; G 1193 -U 1301 ; WX 1070 ; N uni0515 ; G 1194 -U 1302 ; WX 1065 ; N uni0516 ; G 1195 -U 1303 ; WX 982 ; N uni0517 ; G 1196 -U 1304 ; WX 1082 ; N uni0518 ; G 1197 -U 1305 ; WX 960 ; N uni0519 ; G 1198 -U 1306 ; WX 850 ; N uni051A ; G 1199 -U 1307 ; WX 716 ; N uni051B ; G 1200 -U 1308 ; WX 1103 ; N uni051C ; G 1201 -U 1309 ; WX 924 ; N uni051D ; G 1202 -U 1310 ; WX 817 ; N uni051E ; G 1203 -U 1311 ; WX 679 ; N uni051F ; G 1204 -U 1312 ; WX 1248 ; N uni0520 ; G 1205 -U 1313 ; WX 1022 ; N uni0521 ; G 1206 -U 1314 ; WX 1254 ; N uni0522 ; G 1207 -U 1315 ; WX 979 ; N uni0523 ; G 1208 -U 1316 ; WX 957 ; N uni0524 ; G 1209 -U 1317 ; WX 807 ; N uni0525 ; G 1210 -U 1329 ; WX 904 ; N uni0531 ; G 1211 -U 1330 ; WX 810 ; N uni0532 ; G 1212 -U 1331 ; WX 809 ; N uni0533 ; G 1213 -U 1332 ; WX 813 ; N uni0534 ; G 1214 -U 1333 ; WX 810 ; N uni0535 ; G 1215 -U 1334 ; WX 815 ; N uni0536 ; G 1216 -U 1335 ; WX 724 ; N uni0537 ; G 1217 -U 1336 ; WX 800 ; N uni0538 ; G 1218 -U 1337 ; WX 1004 ; N uni0539 ; G 1219 -U 1338 ; WX 809 ; N uni053A ; G 1220 -U 1339 ; WX 740 ; N uni053B ; G 1221 -U 1340 ; WX 620 ; N uni053C ; G 1222 -U 1341 ; WX 1068 ; N uni053D ; G 1223 -U 1342 ; WX 875 ; N uni053E ; G 1224 -U 1343 ; WX 792 ; N uni053F ; G 1225 -U 1344 ; WX 723 ; N uni0540 ; G 1226 -U 1345 ; WX 811 ; N uni0541 ; G 1227 -U 1346 ; WX 794 ; N uni0542 ; G 1228 -U 1347 ; WX 782 ; N uni0543 ; G 1229 -U 1348 ; WX 867 ; N uni0544 ; G 1230 -U 1349 ; WX 766 ; N uni0545 ; G 1231 -U 1350 ; WX 794 ; N uni0546 ; G 1232 -U 1351 ; WX 787 ; N uni0547 ; G 1233 -U 1352 ; WX 812 ; N uni0548 ; G 1234 -U 1353 ; WX 752 ; N uni0549 ; G 1235 -U 1354 ; WX 963 ; N uni054A ; G 1236 -U 1355 ; WX 790 ; N uni054B ; G 1237 -U 1356 ; WX 867 ; N uni054C ; G 1238 -U 1357 ; WX 812 ; N uni054D ; G 1239 -U 1358 ; WX 794 ; N uni054E ; G 1240 -U 1359 ; WX 771 ; N uni054F ; G 1241 -U 1360 ; WX 740 ; N uni0550 ; G 1242 -U 1361 ; WX 775 ; N uni0551 ; G 1243 -U 1362 ; WX 640 ; N uni0552 ; G 1244 -U 1363 ; WX 926 ; N uni0553 ; G 1245 -U 1364 ; WX 775 ; N uni0554 ; G 1246 -U 1365 ; WX 848 ; N uni0555 ; G 1247 -U 1366 ; WX 951 ; N uni0556 ; G 1248 -U 1369 ; WX 366 ; N uni0559 ; G 1249 -U 1370 ; WX 380 ; N uni055A ; G 1250 -U 1371 ; WX 342 ; N uni055B ; G 1251 -U 1372 ; WX 415 ; N uni055C ; G 1252 -U 1373 ; WX 348 ; N uni055D ; G 1253 -U 1374 ; WX 513 ; N uni055E ; G 1254 -U 1375 ; WX 521 ; N uni055F ; G 1255 -U 1377 ; WX 1043 ; N uni0561 ; G 1256 -U 1378 ; WX 713 ; N uni0562 ; G 1257 -U 1379 ; WX 782 ; N uni0563 ; G 1258 -U 1380 ; WX 786 ; N uni0564 ; G 1259 -U 1381 ; WX 713 ; N uni0565 ; G 1260 -U 1382 ; WX 715 ; N uni0566 ; G 1261 -U 1383 ; WX 628 ; N uni0567 ; G 1262 -U 1384 ; WX 713 ; N uni0568 ; G 1263 -U 1385 ; WX 840 ; N uni0569 ; G 1264 -U 1386 ; WX 782 ; N uni056A ; G 1265 -U 1387 ; WX 714 ; N uni056B ; G 1266 -U 1388 ; WX 344 ; N uni056C ; G 1267 -U 1389 ; WX 1094 ; N uni056D ; G 1268 -U 1390 ; WX 708 ; N uni056E ; G 1269 -U 1391 ; WX 714 ; N uni056F ; G 1270 -U 1392 ; WX 714 ; N uni0570 ; G 1271 -U 1393 ; WX 670 ; N uni0571 ; G 1272 -U 1394 ; WX 714 ; N uni0572 ; G 1273 -U 1395 ; WX 713 ; N uni0573 ; G 1274 -U 1396 ; WX 714 ; N uni0574 ; G 1275 -U 1397 ; WX 343 ; N uni0575 ; G 1276 -U 1398 ; WX 714 ; N uni0576 ; G 1277 -U 1399 ; WX 541 ; N uni0577 ; G 1278 -U 1400 ; WX 714 ; N uni0578 ; G 1279 -U 1401 ; WX 407 ; N uni0579 ; G 1280 -U 1402 ; WX 1043 ; N uni057A ; G 1281 -U 1403 ; WX 636 ; N uni057B ; G 1282 -U 1404 ; WX 740 ; N uni057C ; G 1283 -U 1405 ; WX 714 ; N uni057D ; G 1284 -U 1406 ; WX 714 ; N uni057E ; G 1285 -U 1407 ; WX 1038 ; N uni057F ; G 1286 -U 1408 ; WX 714 ; N uni0580 ; G 1287 -U 1409 ; WX 714 ; N uni0581 ; G 1288 -U 1410 ; WX 532 ; N uni0582 ; G 1289 -U 1411 ; WX 1038 ; N uni0583 ; G 1290 -U 1412 ; WX 720 ; N uni0584 ; G 1291 -U 1413 ; WX 689 ; N uni0585 ; G 1292 -U 1414 ; WX 904 ; N uni0586 ; G 1293 -U 1415 ; WX 902 ; N uni0587 ; G 1294 -U 1417 ; WX 400 ; N uni0589 ; G 1295 -U 1418 ; WX 415 ; N uni058A ; G 1296 -U 1456 ; WX 0 ; N uni05B0 ; G 1297 -U 1457 ; WX 0 ; N uni05B1 ; G 1298 -U 1458 ; WX 0 ; N uni05B2 ; G 1299 -U 1459 ; WX 0 ; N uni05B3 ; G 1300 -U 1460 ; WX 0 ; N uni05B4 ; G 1301 -U 1461 ; WX 0 ; N uni05B5 ; G 1302 -U 1462 ; WX 0 ; N uni05B6 ; G 1303 -U 1463 ; WX 0 ; N uni05B7 ; G 1304 -U 1464 ; WX 0 ; N uni05B8 ; G 1305 -U 1465 ; WX 0 ; N uni05B9 ; G 1306 -U 1466 ; WX 0 ; N uni05BA ; G 1307 -U 1467 ; WX 0 ; N uni05BB ; G 1308 -U 1468 ; WX 0 ; N uni05BC ; G 1309 -U 1469 ; WX 0 ; N uni05BD ; G 1310 -U 1470 ; WX 415 ; N uni05BE ; G 1311 -U 1471 ; WX 0 ; N uni05BF ; G 1312 -U 1472 ; WX 372 ; N uni05C0 ; G 1313 -U 1473 ; WX 0 ; N uni05C1 ; G 1314 -U 1474 ; WX 0 ; N uni05C2 ; G 1315 -U 1475 ; WX 372 ; N uni05C3 ; G 1316 -U 1478 ; WX 497 ; N uni05C6 ; G 1317 -U 1479 ; WX 0 ; N uni05C7 ; G 1318 -U 1488 ; WX 728 ; N uni05D0 ; G 1319 -U 1489 ; WX 610 ; N uni05D1 ; G 1320 -U 1490 ; WX 447 ; N uni05D2 ; G 1321 -U 1491 ; WX 588 ; N uni05D3 ; G 1322 -U 1492 ; WX 687 ; N uni05D4 ; G 1323 -U 1493 ; WX 343 ; N uni05D5 ; G 1324 -U 1494 ; WX 400 ; N uni05D6 ; G 1325 -U 1495 ; WX 687 ; N uni05D7 ; G 1326 -U 1496 ; WX 679 ; N uni05D8 ; G 1327 -U 1497 ; WX 294 ; N uni05D9 ; G 1328 -U 1498 ; WX 578 ; N uni05DA ; G 1329 -U 1499 ; WX 566 ; N uni05DB ; G 1330 -U 1500 ; WX 605 ; N uni05DC ; G 1331 -U 1501 ; WX 696 ; N uni05DD ; G 1332 -U 1502 ; WX 724 ; N uni05DE ; G 1333 -U 1503 ; WX 343 ; N uni05DF ; G 1334 -U 1504 ; WX 453 ; N uni05E0 ; G 1335 -U 1505 ; WX 680 ; N uni05E1 ; G 1336 -U 1506 ; WX 666 ; N uni05E2 ; G 1337 -U 1507 ; WX 675 ; N uni05E3 ; G 1338 -U 1508 ; WX 658 ; N uni05E4 ; G 1339 -U 1509 ; WX 661 ; N uni05E5 ; G 1340 -U 1510 ; WX 653 ; N uni05E6 ; G 1341 -U 1511 ; WX 736 ; N uni05E7 ; G 1342 -U 1512 ; WX 602 ; N uni05E8 ; G 1343 -U 1513 ; WX 749 ; N uni05E9 ; G 1344 -U 1514 ; WX 683 ; N uni05EA ; G 1345 -U 1520 ; WX 664 ; N uni05F0 ; G 1346 -U 1521 ; WX 664 ; N uni05F1 ; G 1347 -U 1522 ; WX 663 ; N uni05F2 ; G 1348 -U 1523 ; WX 444 ; N uni05F3 ; G 1349 -U 1524 ; WX 710 ; N uni05F4 ; G 1350 -U 3647 ; WX 696 ; N uni0E3F ; G 1351 -U 3713 ; WX 815 ; N uni0E81 ; G 1352 -U 3714 ; WX 748 ; N uni0E82 ; G 1353 -U 3716 ; WX 749 ; N uni0E84 ; G 1354 -U 3719 ; WX 569 ; N uni0E87 ; G 1355 -U 3720 ; WX 742 ; N uni0E88 ; G 1356 -U 3722 ; WX 744 ; N uni0E8A ; G 1357 -U 3725 ; WX 761 ; N uni0E8D ; G 1358 -U 3732 ; WX 706 ; N uni0E94 ; G 1359 -U 3733 ; WX 704 ; N uni0E95 ; G 1360 -U 3734 ; WX 747 ; N uni0E96 ; G 1361 -U 3735 ; WX 819 ; N uni0E97 ; G 1362 -U 3737 ; WX 730 ; N uni0E99 ; G 1363 -U 3738 ; WX 727 ; N uni0E9A ; G 1364 -U 3739 ; WX 727 ; N uni0E9B ; G 1365 -U 3740 ; WX 922 ; N uni0E9C ; G 1366 -U 3741 ; WX 827 ; N uni0E9D ; G 1367 -U 3742 ; WX 866 ; N uni0E9E ; G 1368 -U 3743 ; WX 866 ; N uni0E9F ; G 1369 -U 3745 ; WX 836 ; N uni0EA1 ; G 1370 -U 3746 ; WX 761 ; N uni0EA2 ; G 1371 -U 3747 ; WX 770 ; N uni0EA3 ; G 1372 -U 3749 ; WX 769 ; N uni0EA5 ; G 1373 -U 3751 ; WX 713 ; N uni0EA7 ; G 1374 -U 3754 ; WX 827 ; N uni0EAA ; G 1375 -U 3755 ; WX 1031 ; N uni0EAB ; G 1376 -U 3757 ; WX 724 ; N uni0EAD ; G 1377 -U 3758 ; WX 784 ; N uni0EAE ; G 1378 -U 3759 ; WX 934 ; N uni0EAF ; G 1379 -U 3760 ; WX 688 ; N uni0EB0 ; G 1380 -U 3761 ; WX 0 ; N uni0EB1 ; G 1381 -U 3762 ; WX 610 ; N uni0EB2 ; G 1382 -U 3763 ; WX 610 ; N uni0EB3 ; G 1383 -U 3764 ; WX 0 ; N uni0EB4 ; G 1384 -U 3765 ; WX 0 ; N uni0EB5 ; G 1385 -U 3766 ; WX 0 ; N uni0EB6 ; G 1386 -U 3767 ; WX 0 ; N uni0EB7 ; G 1387 -U 3768 ; WX 0 ; N uni0EB8 ; G 1388 -U 3769 ; WX 0 ; N uni0EB9 ; G 1389 -U 3771 ; WX 0 ; N uni0EBB ; G 1390 -U 3772 ; WX 0 ; N uni0EBC ; G 1391 -U 3773 ; WX 670 ; N uni0EBD ; G 1392 -U 3776 ; WX 516 ; N uni0EC0 ; G 1393 -U 3777 ; WX 860 ; N uni0EC1 ; G 1394 -U 3778 ; WX 516 ; N uni0EC2 ; G 1395 -U 3779 ; WX 650 ; N uni0EC3 ; G 1396 -U 3780 ; WX 632 ; N uni0EC4 ; G 1397 -U 3782 ; WX 759 ; N uni0EC6 ; G 1398 -U 3784 ; WX 0 ; N uni0EC8 ; G 1399 -U 3785 ; WX 0 ; N uni0EC9 ; G 1400 -U 3786 ; WX 0 ; N uni0ECA ; G 1401 -U 3787 ; WX 0 ; N uni0ECB ; G 1402 -U 3788 ; WX 0 ; N uni0ECC ; G 1403 -U 3789 ; WX 0 ; N uni0ECD ; G 1404 -U 3792 ; WX 771 ; N uni0ED0 ; G 1405 -U 3793 ; WX 771 ; N uni0ED1 ; G 1406 -U 3794 ; WX 693 ; N uni0ED2 ; G 1407 -U 3795 ; WX 836 ; N uni0ED3 ; G 1408 -U 3796 ; WX 729 ; N uni0ED4 ; G 1409 -U 3797 ; WX 729 ; N uni0ED5 ; G 1410 -U 3798 ; WX 849 ; N uni0ED6 ; G 1411 -U 3799 ; WX 790 ; N uni0ED7 ; G 1412 -U 3800 ; WX 759 ; N uni0ED8 ; G 1413 -U 3801 ; WX 910 ; N uni0ED9 ; G 1414 -U 3804 ; WX 1363 ; N uni0EDC ; G 1415 -U 3805 ; WX 1363 ; N uni0EDD ; G 1416 -U 4256 ; WX 874 ; N uni10A0 ; G 1417 -U 4257 ; WX 733 ; N uni10A1 ; G 1418 -U 4258 ; WX 679 ; N uni10A2 ; G 1419 -U 4259 ; WX 834 ; N uni10A3 ; G 1420 -U 4260 ; WX 615 ; N uni10A4 ; G 1421 -U 4261 ; WX 768 ; N uni10A5 ; G 1422 -U 4262 ; WX 753 ; N uni10A6 ; G 1423 -U 4263 ; WX 914 ; N uni10A7 ; G 1424 -U 4264 ; WX 453 ; N uni10A8 ; G 1425 -U 4265 ; WX 620 ; N uni10A9 ; G 1426 -U 4266 ; WX 843 ; N uni10AA ; G 1427 -U 4267 ; WX 882 ; N uni10AB ; G 1428 -U 4268 ; WX 625 ; N uni10AC ; G 1429 -U 4269 ; WX 854 ; N uni10AD ; G 1430 -U 4270 ; WX 781 ; N uni10AE ; G 1431 -U 4271 ; WX 629 ; N uni10AF ; G 1432 -U 4272 ; WX 912 ; N uni10B0 ; G 1433 -U 4273 ; WX 621 ; N uni10B1 ; G 1434 -U 4274 ; WX 620 ; N uni10B2 ; G 1435 -U 4275 ; WX 854 ; N uni10B3 ; G 1436 -U 4276 ; WX 866 ; N uni10B4 ; G 1437 -U 4277 ; WX 724 ; N uni10B5 ; G 1438 -U 4278 ; WX 630 ; N uni10B6 ; G 1439 -U 4279 ; WX 621 ; N uni10B7 ; G 1440 -U 4280 ; WX 625 ; N uni10B8 ; G 1441 -U 4281 ; WX 620 ; N uni10B9 ; G 1442 -U 4282 ; WX 818 ; N uni10BA ; G 1443 -U 4283 ; WX 874 ; N uni10BB ; G 1444 -U 4284 ; WX 615 ; N uni10BC ; G 1445 -U 4285 ; WX 623 ; N uni10BD ; G 1446 -U 4286 ; WX 625 ; N uni10BE ; G 1447 -U 4287 ; WX 725 ; N uni10BF ; G 1448 -U 4288 ; WX 844 ; N uni10C0 ; G 1449 -U 4289 ; WX 596 ; N uni10C1 ; G 1450 -U 4290 ; WX 688 ; N uni10C2 ; G 1451 -U 4291 ; WX 596 ; N uni10C3 ; G 1452 -U 4292 ; WX 594 ; N uni10C4 ; G 1453 -U 4293 ; WX 738 ; N uni10C5 ; G 1454 -U 4304 ; WX 554 ; N uni10D0 ; G 1455 -U 4305 ; WX 563 ; N uni10D1 ; G 1456 -U 4306 ; WX 622 ; N uni10D2 ; G 1457 -U 4307 ; WX 834 ; N uni10D3 ; G 1458 -U 4308 ; WX 550 ; N uni10D4 ; G 1459 -U 4309 ; WX 559 ; N uni10D5 ; G 1460 -U 4310 ; WX 546 ; N uni10D6 ; G 1461 -U 4311 ; WX 828 ; N uni10D7 ; G 1462 -U 4312 ; WX 563 ; N uni10D8 ; G 1463 -U 4313 ; WX 556 ; N uni10D9 ; G 1464 -U 4314 ; WX 1074 ; N uni10DA ; G 1465 -U 4315 ; WX 563 ; N uni10DB ; G 1466 -U 4316 ; WX 563 ; N uni10DC ; G 1467 -U 4317 ; WX 814 ; N uni10DD ; G 1468 -U 4318 ; WX 554 ; N uni10DE ; G 1469 -U 4319 ; WX 559 ; N uni10DF ; G 1470 -U 4320 ; WX 823 ; N uni10E0 ; G 1471 -U 4321 ; WX 563 ; N uni10E1 ; G 1472 -U 4322 ; WX 700 ; N uni10E2 ; G 1473 -U 4323 ; WX 582 ; N uni10E3 ; G 1474 -U 4324 ; WX 847 ; N uni10E4 ; G 1475 -U 4325 ; WX 555 ; N uni10E5 ; G 1476 -U 4326 ; WX 814 ; N uni10E6 ; G 1477 -U 4327 ; WX 559 ; N uni10E7 ; G 1478 -U 4328 ; WX 543 ; N uni10E8 ; G 1479 -U 4329 ; WX 563 ; N uni10E9 ; G 1480 -U 4330 ; WX 622 ; N uni10EA ; G 1481 -U 4331 ; WX 563 ; N uni10EB ; G 1482 -U 4332 ; WX 543 ; N uni10EC ; G 1483 -U 4333 ; WX 566 ; N uni10ED ; G 1484 -U 4334 ; WX 563 ; N uni10EE ; G 1485 -U 4335 ; WX 530 ; N uni10EF ; G 1486 -U 4336 ; WX 554 ; N uni10F0 ; G 1487 -U 4337 ; WX 554 ; N uni10F1 ; G 1488 -U 4338 ; WX 553 ; N uni10F2 ; G 1489 -U 4339 ; WX 554 ; N uni10F3 ; G 1490 -U 4340 ; WX 553 ; N uni10F4 ; G 1491 -U 4341 ; WX 583 ; N uni10F5 ; G 1492 -U 4342 ; WX 853 ; N uni10F6 ; G 1493 -U 4343 ; WX 604 ; N uni10F7 ; G 1494 -U 4344 ; WX 559 ; N uni10F8 ; G 1495 -U 4345 ; WX 632 ; N uni10F9 ; G 1496 -U 4346 ; WX 554 ; N uni10FA ; G 1497 -U 4347 ; WX 448 ; N uni10FB ; G 1498 -U 4348 ; WX 324 ; N uni10FC ; G 1499 -U 5121 ; WX 774 ; N uni1401 ; G 1500 -U 5122 ; WX 774 ; N uni1402 ; G 1501 -U 5123 ; WX 774 ; N uni1403 ; G 1502 -U 5124 ; WX 774 ; N uni1404 ; G 1503 -U 5125 ; WX 905 ; N uni1405 ; G 1504 -U 5126 ; WX 905 ; N uni1406 ; G 1505 -U 5127 ; WX 905 ; N uni1407 ; G 1506 -U 5129 ; WX 905 ; N uni1409 ; G 1507 -U 5130 ; WX 905 ; N uni140A ; G 1508 -U 5131 ; WX 905 ; N uni140B ; G 1509 -U 5132 ; WX 1018 ; N uni140C ; G 1510 -U 5133 ; WX 1009 ; N uni140D ; G 1511 -U 5134 ; WX 1018 ; N uni140E ; G 1512 -U 5135 ; WX 1009 ; N uni140F ; G 1513 -U 5136 ; WX 1018 ; N uni1410 ; G 1514 -U 5137 ; WX 1009 ; N uni1411 ; G 1515 -U 5138 ; WX 1149 ; N uni1412 ; G 1516 -U 5139 ; WX 1140 ; N uni1413 ; G 1517 -U 5140 ; WX 1149 ; N uni1414 ; G 1518 -U 5141 ; WX 1140 ; N uni1415 ; G 1519 -U 5142 ; WX 905 ; N uni1416 ; G 1520 -U 5143 ; WX 1149 ; N uni1417 ; G 1521 -U 5144 ; WX 1142 ; N uni1418 ; G 1522 -U 5145 ; WX 1149 ; N uni1419 ; G 1523 -U 5146 ; WX 1142 ; N uni141A ; G 1524 -U 5147 ; WX 905 ; N uni141B ; G 1525 -U 5149 ; WX 310 ; N uni141D ; G 1526 -U 5150 ; WX 529 ; N uni141E ; G 1527 -U 5151 ; WX 425 ; N uni141F ; G 1528 -U 5152 ; WX 425 ; N uni1420 ; G 1529 -U 5153 ; WX 395 ; N uni1421 ; G 1530 -U 5154 ; WX 395 ; N uni1422 ; G 1531 -U 5155 ; WX 395 ; N uni1423 ; G 1532 -U 5156 ; WX 395 ; N uni1424 ; G 1533 -U 5157 ; WX 564 ; N uni1425 ; G 1534 -U 5158 ; WX 470 ; N uni1426 ; G 1535 -U 5159 ; WX 310 ; N uni1427 ; G 1536 -U 5160 ; WX 395 ; N uni1428 ; G 1537 -U 5161 ; WX 395 ; N uni1429 ; G 1538 -U 5162 ; WX 395 ; N uni142A ; G 1539 -U 5163 ; WX 1213 ; N uni142B ; G 1540 -U 5164 ; WX 986 ; N uni142C ; G 1541 -U 5165 ; WX 1216 ; N uni142D ; G 1542 -U 5166 ; WX 1297 ; N uni142E ; G 1543 -U 5167 ; WX 774 ; N uni142F ; G 1544 -U 5168 ; WX 774 ; N uni1430 ; G 1545 -U 5169 ; WX 774 ; N uni1431 ; G 1546 -U 5170 ; WX 774 ; N uni1432 ; G 1547 -U 5171 ; WX 886 ; N uni1433 ; G 1548 -U 5172 ; WX 886 ; N uni1434 ; G 1549 -U 5173 ; WX 886 ; N uni1435 ; G 1550 -U 5175 ; WX 886 ; N uni1437 ; G 1551 -U 5176 ; WX 886 ; N uni1438 ; G 1552 -U 5177 ; WX 886 ; N uni1439 ; G 1553 -U 5178 ; WX 1018 ; N uni143A ; G 1554 -U 5179 ; WX 1009 ; N uni143B ; G 1555 -U 5180 ; WX 1018 ; N uni143C ; G 1556 -U 5181 ; WX 1009 ; N uni143D ; G 1557 -U 5182 ; WX 1018 ; N uni143E ; G 1558 -U 5183 ; WX 1009 ; N uni143F ; G 1559 -U 5184 ; WX 1149 ; N uni1440 ; G 1560 -U 5185 ; WX 1140 ; N uni1441 ; G 1561 -U 5186 ; WX 1149 ; N uni1442 ; G 1562 -U 5187 ; WX 1140 ; N uni1443 ; G 1563 -U 5188 ; WX 1149 ; N uni1444 ; G 1564 -U 5189 ; WX 1142 ; N uni1445 ; G 1565 -U 5190 ; WX 1149 ; N uni1446 ; G 1566 -U 5191 ; WX 1142 ; N uni1447 ; G 1567 -U 5192 ; WX 886 ; N uni1448 ; G 1568 -U 5193 ; WX 576 ; N uni1449 ; G 1569 -U 5194 ; WX 229 ; N uni144A ; G 1570 -U 5196 ; WX 812 ; N uni144C ; G 1571 -U 5197 ; WX 812 ; N uni144D ; G 1572 -U 5198 ; WX 812 ; N uni144E ; G 1573 -U 5199 ; WX 812 ; N uni144F ; G 1574 -U 5200 ; WX 815 ; N uni1450 ; G 1575 -U 5201 ; WX 815 ; N uni1451 ; G 1576 -U 5202 ; WX 815 ; N uni1452 ; G 1577 -U 5204 ; WX 815 ; N uni1454 ; G 1578 -U 5205 ; WX 815 ; N uni1455 ; G 1579 -U 5206 ; WX 815 ; N uni1456 ; G 1580 -U 5207 ; WX 1056 ; N uni1457 ; G 1581 -U 5208 ; WX 1048 ; N uni1458 ; G 1582 -U 5209 ; WX 1056 ; N uni1459 ; G 1583 -U 5210 ; WX 1048 ; N uni145A ; G 1584 -U 5211 ; WX 1056 ; N uni145B ; G 1585 -U 5212 ; WX 1048 ; N uni145C ; G 1586 -U 5213 ; WX 1060 ; N uni145D ; G 1587 -U 5214 ; WX 1054 ; N uni145E ; G 1588 -U 5215 ; WX 1060 ; N uni145F ; G 1589 -U 5216 ; WX 1054 ; N uni1460 ; G 1590 -U 5217 ; WX 1060 ; N uni1461 ; G 1591 -U 5218 ; WX 1052 ; N uni1462 ; G 1592 -U 5219 ; WX 1060 ; N uni1463 ; G 1593 -U 5220 ; WX 1052 ; N uni1464 ; G 1594 -U 5221 ; WX 1060 ; N uni1465 ; G 1595 -U 5222 ; WX 483 ; N uni1466 ; G 1596 -U 5223 ; WX 1005 ; N uni1467 ; G 1597 -U 5224 ; WX 1005 ; N uni1468 ; G 1598 -U 5225 ; WX 1023 ; N uni1469 ; G 1599 -U 5226 ; WX 1017 ; N uni146A ; G 1600 -U 5227 ; WX 743 ; N uni146B ; G 1601 -U 5228 ; WX 743 ; N uni146C ; G 1602 -U 5229 ; WX 743 ; N uni146D ; G 1603 -U 5230 ; WX 743 ; N uni146E ; G 1604 -U 5231 ; WX 743 ; N uni146F ; G 1605 -U 5232 ; WX 743 ; N uni1470 ; G 1606 -U 5233 ; WX 743 ; N uni1471 ; G 1607 -U 5234 ; WX 743 ; N uni1472 ; G 1608 -U 5235 ; WX 743 ; N uni1473 ; G 1609 -U 5236 ; WX 1029 ; N uni1474 ; G 1610 -U 5237 ; WX 975 ; N uni1475 ; G 1611 -U 5238 ; WX 980 ; N uni1476 ; G 1612 -U 5239 ; WX 975 ; N uni1477 ; G 1613 -U 5240 ; WX 980 ; N uni1478 ; G 1614 -U 5241 ; WX 975 ; N uni1479 ; G 1615 -U 5242 ; WX 1029 ; N uni147A ; G 1616 -U 5243 ; WX 975 ; N uni147B ; G 1617 -U 5244 ; WX 1029 ; N uni147C ; G 1618 -U 5245 ; WX 975 ; N uni147D ; G 1619 -U 5246 ; WX 980 ; N uni147E ; G 1620 -U 5247 ; WX 975 ; N uni147F ; G 1621 -U 5248 ; WX 980 ; N uni1480 ; G 1622 -U 5249 ; WX 975 ; N uni1481 ; G 1623 -U 5250 ; WX 980 ; N uni1482 ; G 1624 -U 5251 ; WX 501 ; N uni1483 ; G 1625 -U 5252 ; WX 501 ; N uni1484 ; G 1626 -U 5253 ; WX 938 ; N uni1485 ; G 1627 -U 5254 ; WX 938 ; N uni1486 ; G 1628 -U 5255 ; WX 938 ; N uni1487 ; G 1629 -U 5256 ; WX 938 ; N uni1488 ; G 1630 -U 5257 ; WX 743 ; N uni1489 ; G 1631 -U 5258 ; WX 743 ; N uni148A ; G 1632 -U 5259 ; WX 743 ; N uni148B ; G 1633 -U 5260 ; WX 743 ; N uni148C ; G 1634 -U 5261 ; WX 743 ; N uni148D ; G 1635 -U 5262 ; WX 743 ; N uni148E ; G 1636 -U 5263 ; WX 743 ; N uni148F ; G 1637 -U 5264 ; WX 743 ; N uni1490 ; G 1638 -U 5265 ; WX 743 ; N uni1491 ; G 1639 -U 5266 ; WX 1029 ; N uni1492 ; G 1640 -U 5267 ; WX 975 ; N uni1493 ; G 1641 -U 5268 ; WX 1029 ; N uni1494 ; G 1642 -U 5269 ; WX 975 ; N uni1495 ; G 1643 -U 5270 ; WX 1029 ; N uni1496 ; G 1644 -U 5271 ; WX 975 ; N uni1497 ; G 1645 -U 5272 ; WX 1029 ; N uni1498 ; G 1646 -U 5273 ; WX 975 ; N uni1499 ; G 1647 -U 5274 ; WX 1029 ; N uni149A ; G 1648 -U 5275 ; WX 975 ; N uni149B ; G 1649 -U 5276 ; WX 1029 ; N uni149C ; G 1650 -U 5277 ; WX 975 ; N uni149D ; G 1651 -U 5278 ; WX 1029 ; N uni149E ; G 1652 -U 5279 ; WX 975 ; N uni149F ; G 1653 -U 5280 ; WX 1029 ; N uni14A0 ; G 1654 -U 5281 ; WX 501 ; N uni14A1 ; G 1655 -U 5282 ; WX 501 ; N uni14A2 ; G 1656 -U 5283 ; WX 626 ; N uni14A3 ; G 1657 -U 5284 ; WX 626 ; N uni14A4 ; G 1658 -U 5285 ; WX 626 ; N uni14A5 ; G 1659 -U 5286 ; WX 626 ; N uni14A6 ; G 1660 -U 5287 ; WX 626 ; N uni14A7 ; G 1661 -U 5288 ; WX 626 ; N uni14A8 ; G 1662 -U 5289 ; WX 626 ; N uni14A9 ; G 1663 -U 5290 ; WX 626 ; N uni14AA ; G 1664 -U 5291 ; WX 626 ; N uni14AB ; G 1665 -U 5292 ; WX 881 ; N uni14AC ; G 1666 -U 5293 ; WX 854 ; N uni14AD ; G 1667 -U 5294 ; WX 863 ; N uni14AE ; G 1668 -U 5295 ; WX 874 ; N uni14AF ; G 1669 -U 5296 ; WX 863 ; N uni14B0 ; G 1670 -U 5297 ; WX 874 ; N uni14B1 ; G 1671 -U 5298 ; WX 881 ; N uni14B2 ; G 1672 -U 5299 ; WX 874 ; N uni14B3 ; G 1673 -U 5300 ; WX 881 ; N uni14B4 ; G 1674 -U 5301 ; WX 874 ; N uni14B5 ; G 1675 -U 5302 ; WX 863 ; N uni14B6 ; G 1676 -U 5303 ; WX 874 ; N uni14B7 ; G 1677 -U 5304 ; WX 863 ; N uni14B8 ; G 1678 -U 5305 ; WX 874 ; N uni14B9 ; G 1679 -U 5306 ; WX 863 ; N uni14BA ; G 1680 -U 5307 ; WX 436 ; N uni14BB ; G 1681 -U 5308 ; WX 548 ; N uni14BC ; G 1682 -U 5309 ; WX 436 ; N uni14BD ; G 1683 -U 5312 ; WX 988 ; N uni14C0 ; G 1684 -U 5313 ; WX 988 ; N uni14C1 ; G 1685 -U 5314 ; WX 988 ; N uni14C2 ; G 1686 -U 5315 ; WX 988 ; N uni14C3 ; G 1687 -U 5316 ; WX 931 ; N uni14C4 ; G 1688 -U 5317 ; WX 931 ; N uni14C5 ; G 1689 -U 5318 ; WX 931 ; N uni14C6 ; G 1690 -U 5319 ; WX 931 ; N uni14C7 ; G 1691 -U 5320 ; WX 931 ; N uni14C8 ; G 1692 -U 5321 ; WX 1238 ; N uni14C9 ; G 1693 -U 5322 ; WX 1247 ; N uni14CA ; G 1694 -U 5323 ; WX 1200 ; N uni14CB ; G 1695 -U 5324 ; WX 1228 ; N uni14CC ; G 1696 -U 5325 ; WX 1200 ; N uni14CD ; G 1697 -U 5326 ; WX 1228 ; N uni14CE ; G 1698 -U 5327 ; WX 931 ; N uni14CF ; G 1699 -U 5328 ; WX 660 ; N uni14D0 ; G 1700 -U 5329 ; WX 497 ; N uni14D1 ; G 1701 -U 5330 ; WX 660 ; N uni14D2 ; G 1702 -U 5331 ; WX 988 ; N uni14D3 ; G 1703 -U 5332 ; WX 988 ; N uni14D4 ; G 1704 -U 5333 ; WX 988 ; N uni14D5 ; G 1705 -U 5334 ; WX 988 ; N uni14D6 ; G 1706 -U 5335 ; WX 931 ; N uni14D7 ; G 1707 -U 5336 ; WX 931 ; N uni14D8 ; G 1708 -U 5337 ; WX 931 ; N uni14D9 ; G 1709 -U 5338 ; WX 931 ; N uni14DA ; G 1710 -U 5339 ; WX 931 ; N uni14DB ; G 1711 -U 5340 ; WX 1231 ; N uni14DC ; G 1712 -U 5341 ; WX 1247 ; N uni14DD ; G 1713 -U 5342 ; WX 1283 ; N uni14DE ; G 1714 -U 5343 ; WX 1228 ; N uni14DF ; G 1715 -U 5344 ; WX 1283 ; N uni14E0 ; G 1716 -U 5345 ; WX 1228 ; N uni14E1 ; G 1717 -U 5346 ; WX 1228 ; N uni14E2 ; G 1718 -U 5347 ; WX 1214 ; N uni14E3 ; G 1719 -U 5348 ; WX 1228 ; N uni14E4 ; G 1720 -U 5349 ; WX 1214 ; N uni14E5 ; G 1721 -U 5350 ; WX 1283 ; N uni14E6 ; G 1722 -U 5351 ; WX 1228 ; N uni14E7 ; G 1723 -U 5352 ; WX 1283 ; N uni14E8 ; G 1724 -U 5353 ; WX 1228 ; N uni14E9 ; G 1725 -U 5354 ; WX 660 ; N uni14EA ; G 1726 -U 5356 ; WX 886 ; N uni14EC ; G 1727 -U 5357 ; WX 730 ; N uni14ED ; G 1728 -U 5358 ; WX 730 ; N uni14EE ; G 1729 -U 5359 ; WX 730 ; N uni14EF ; G 1730 -U 5360 ; WX 730 ; N uni14F0 ; G 1731 -U 5361 ; WX 730 ; N uni14F1 ; G 1732 -U 5362 ; WX 730 ; N uni14F2 ; G 1733 -U 5363 ; WX 730 ; N uni14F3 ; G 1734 -U 5364 ; WX 730 ; N uni14F4 ; G 1735 -U 5365 ; WX 730 ; N uni14F5 ; G 1736 -U 5366 ; WX 998 ; N uni14F6 ; G 1737 -U 5367 ; WX 958 ; N uni14F7 ; G 1738 -U 5368 ; WX 967 ; N uni14F8 ; G 1739 -U 5369 ; WX 989 ; N uni14F9 ; G 1740 -U 5370 ; WX 967 ; N uni14FA ; G 1741 -U 5371 ; WX 989 ; N uni14FB ; G 1742 -U 5372 ; WX 998 ; N uni14FC ; G 1743 -U 5373 ; WX 958 ; N uni14FD ; G 1744 -U 5374 ; WX 998 ; N uni14FE ; G 1745 -U 5375 ; WX 958 ; N uni14FF ; G 1746 -U 5376 ; WX 967 ; N uni1500 ; G 1747 -U 5377 ; WX 989 ; N uni1501 ; G 1748 -U 5378 ; WX 967 ; N uni1502 ; G 1749 -U 5379 ; WX 989 ; N uni1503 ; G 1750 -U 5380 ; WX 967 ; N uni1504 ; G 1751 -U 5381 ; WX 493 ; N uni1505 ; G 1752 -U 5382 ; WX 460 ; N uni1506 ; G 1753 -U 5383 ; WX 493 ; N uni1507 ; G 1754 -U 5392 ; WX 923 ; N uni1510 ; G 1755 -U 5393 ; WX 923 ; N uni1511 ; G 1756 -U 5394 ; WX 923 ; N uni1512 ; G 1757 -U 5395 ; WX 1136 ; N uni1513 ; G 1758 -U 5396 ; WX 1136 ; N uni1514 ; G 1759 -U 5397 ; WX 1136 ; N uni1515 ; G 1760 -U 5398 ; WX 1136 ; N uni1516 ; G 1761 -U 5399 ; WX 1209 ; N uni1517 ; G 1762 -U 5400 ; WX 1202 ; N uni1518 ; G 1763 -U 5401 ; WX 1209 ; N uni1519 ; G 1764 -U 5402 ; WX 1202 ; N uni151A ; G 1765 -U 5403 ; WX 1209 ; N uni151B ; G 1766 -U 5404 ; WX 1202 ; N uni151C ; G 1767 -U 5405 ; WX 1431 ; N uni151D ; G 1768 -U 5406 ; WX 1420 ; N uni151E ; G 1769 -U 5407 ; WX 1431 ; N uni151F ; G 1770 -U 5408 ; WX 1420 ; N uni1520 ; G 1771 -U 5409 ; WX 1431 ; N uni1521 ; G 1772 -U 5410 ; WX 1420 ; N uni1522 ; G 1773 -U 5411 ; WX 1431 ; N uni1523 ; G 1774 -U 5412 ; WX 1420 ; N uni1524 ; G 1775 -U 5413 ; WX 746 ; N uni1525 ; G 1776 -U 5414 ; WX 776 ; N uni1526 ; G 1777 -U 5415 ; WX 776 ; N uni1527 ; G 1778 -U 5416 ; WX 776 ; N uni1528 ; G 1779 -U 5417 ; WX 776 ; N uni1529 ; G 1780 -U 5418 ; WX 776 ; N uni152A ; G 1781 -U 5419 ; WX 776 ; N uni152B ; G 1782 -U 5420 ; WX 776 ; N uni152C ; G 1783 -U 5421 ; WX 776 ; N uni152D ; G 1784 -U 5422 ; WX 776 ; N uni152E ; G 1785 -U 5423 ; WX 1003 ; N uni152F ; G 1786 -U 5424 ; WX 1003 ; N uni1530 ; G 1787 -U 5425 ; WX 1013 ; N uni1531 ; G 1788 -U 5426 ; WX 996 ; N uni1532 ; G 1789 -U 5427 ; WX 1013 ; N uni1533 ; G 1790 -U 5428 ; WX 996 ; N uni1534 ; G 1791 -U 5429 ; WX 1003 ; N uni1535 ; G 1792 -U 5430 ; WX 1003 ; N uni1536 ; G 1793 -U 5431 ; WX 1003 ; N uni1537 ; G 1794 -U 5432 ; WX 1003 ; N uni1538 ; G 1795 -U 5433 ; WX 1013 ; N uni1539 ; G 1796 -U 5434 ; WX 996 ; N uni153A ; G 1797 -U 5435 ; WX 1013 ; N uni153B ; G 1798 -U 5436 ; WX 996 ; N uni153C ; G 1799 -U 5437 ; WX 1013 ; N uni153D ; G 1800 -U 5438 ; WX 495 ; N uni153E ; G 1801 -U 5440 ; WX 395 ; N uni1540 ; G 1802 -U 5441 ; WX 510 ; N uni1541 ; G 1803 -U 5442 ; WX 1033 ; N uni1542 ; G 1804 -U 5443 ; WX 1033 ; N uni1543 ; G 1805 -U 5444 ; WX 976 ; N uni1544 ; G 1806 -U 5445 ; WX 976 ; N uni1545 ; G 1807 -U 5446 ; WX 976 ; N uni1546 ; G 1808 -U 5447 ; WX 976 ; N uni1547 ; G 1809 -U 5448 ; WX 733 ; N uni1548 ; G 1810 -U 5449 ; WX 733 ; N uni1549 ; G 1811 -U 5450 ; WX 733 ; N uni154A ; G 1812 -U 5451 ; WX 733 ; N uni154B ; G 1813 -U 5452 ; WX 733 ; N uni154C ; G 1814 -U 5453 ; WX 733 ; N uni154D ; G 1815 -U 5454 ; WX 1003 ; N uni154E ; G 1816 -U 5455 ; WX 959 ; N uni154F ; G 1817 -U 5456 ; WX 495 ; N uni1550 ; G 1818 -U 5458 ; WX 886 ; N uni1552 ; G 1819 -U 5459 ; WX 774 ; N uni1553 ; G 1820 -U 5460 ; WX 774 ; N uni1554 ; G 1821 -U 5461 ; WX 774 ; N uni1555 ; G 1822 -U 5462 ; WX 774 ; N uni1556 ; G 1823 -U 5463 ; WX 928 ; N uni1557 ; G 1824 -U 5464 ; WX 928 ; N uni1558 ; G 1825 -U 5465 ; WX 928 ; N uni1559 ; G 1826 -U 5466 ; WX 928 ; N uni155A ; G 1827 -U 5467 ; WX 1172 ; N uni155B ; G 1828 -U 5468 ; WX 1142 ; N uni155C ; G 1829 -U 5469 ; WX 602 ; N uni155D ; G 1830 -U 5470 ; WX 812 ; N uni155E ; G 1831 -U 5471 ; WX 812 ; N uni155F ; G 1832 -U 5472 ; WX 812 ; N uni1560 ; G 1833 -U 5473 ; WX 812 ; N uni1561 ; G 1834 -U 5474 ; WX 812 ; N uni1562 ; G 1835 -U 5475 ; WX 812 ; N uni1563 ; G 1836 -U 5476 ; WX 815 ; N uni1564 ; G 1837 -U 5477 ; WX 815 ; N uni1565 ; G 1838 -U 5478 ; WX 815 ; N uni1566 ; G 1839 -U 5479 ; WX 815 ; N uni1567 ; G 1840 -U 5480 ; WX 1060 ; N uni1568 ; G 1841 -U 5481 ; WX 1052 ; N uni1569 ; G 1842 -U 5482 ; WX 548 ; N uni156A ; G 1843 -U 5492 ; WX 977 ; N uni1574 ; G 1844 -U 5493 ; WX 977 ; N uni1575 ; G 1845 -U 5494 ; WX 977 ; N uni1576 ; G 1846 -U 5495 ; WX 977 ; N uni1577 ; G 1847 -U 5496 ; WX 977 ; N uni1578 ; G 1848 -U 5497 ; WX 977 ; N uni1579 ; G 1849 -U 5498 ; WX 977 ; N uni157A ; G 1850 -U 5499 ; WX 618 ; N uni157B ; G 1851 -U 5500 ; WX 837 ; N uni157C ; G 1852 -U 5501 ; WX 510 ; N uni157D ; G 1853 -U 5502 ; WX 1238 ; N uni157E ; G 1854 -U 5503 ; WX 1238 ; N uni157F ; G 1855 -U 5504 ; WX 1238 ; N uni1580 ; G 1856 -U 5505 ; WX 1238 ; N uni1581 ; G 1857 -U 5506 ; WX 1238 ; N uni1582 ; G 1858 -U 5507 ; WX 1238 ; N uni1583 ; G 1859 -U 5508 ; WX 1238 ; N uni1584 ; G 1860 -U 5509 ; WX 989 ; N uni1585 ; G 1861 -U 5514 ; WX 977 ; N uni158A ; G 1862 -U 5515 ; WX 977 ; N uni158B ; G 1863 -U 5516 ; WX 977 ; N uni158C ; G 1864 -U 5517 ; WX 977 ; N uni158D ; G 1865 -U 5518 ; WX 1591 ; N uni158E ; G 1866 -U 5519 ; WX 1591 ; N uni158F ; G 1867 -U 5520 ; WX 1591 ; N uni1590 ; G 1868 -U 5521 ; WX 1295 ; N uni1591 ; G 1869 -U 5522 ; WX 1295 ; N uni1592 ; G 1870 -U 5523 ; WX 1591 ; N uni1593 ; G 1871 -U 5524 ; WX 1591 ; N uni1594 ; G 1872 -U 5525 ; WX 848 ; N uni1595 ; G 1873 -U 5526 ; WX 1273 ; N uni1596 ; G 1874 -U 5536 ; WX 988 ; N uni15A0 ; G 1875 -U 5537 ; WX 988 ; N uni15A1 ; G 1876 -U 5538 ; WX 931 ; N uni15A2 ; G 1877 -U 5539 ; WX 931 ; N uni15A3 ; G 1878 -U 5540 ; WX 931 ; N uni15A4 ; G 1879 -U 5541 ; WX 931 ; N uni15A5 ; G 1880 -U 5542 ; WX 660 ; N uni15A6 ; G 1881 -U 5543 ; WX 776 ; N uni15A7 ; G 1882 -U 5544 ; WX 776 ; N uni15A8 ; G 1883 -U 5545 ; WX 776 ; N uni15A9 ; G 1884 -U 5546 ; WX 776 ; N uni15AA ; G 1885 -U 5547 ; WX 776 ; N uni15AB ; G 1886 -U 5548 ; WX 776 ; N uni15AC ; G 1887 -U 5549 ; WX 776 ; N uni15AD ; G 1888 -U 5550 ; WX 495 ; N uni15AE ; G 1889 -U 5551 ; WX 743 ; N uni15AF ; G 1890 -U 5598 ; WX 830 ; N uni15DE ; G 1891 -U 5601 ; WX 830 ; N uni15E1 ; G 1892 -U 5702 ; WX 496 ; N uni1646 ; G 1893 -U 5703 ; WX 496 ; N uni1647 ; G 1894 -U 5742 ; WX 413 ; N uni166E ; G 1895 -U 5743 ; WX 1238 ; N uni166F ; G 1896 -U 5744 ; WX 1591 ; N uni1670 ; G 1897 -U 5745 ; WX 2016 ; N uni1671 ; G 1898 -U 5746 ; WX 2016 ; N uni1672 ; G 1899 -U 5747 ; WX 1720 ; N uni1673 ; G 1900 -U 5748 ; WX 1678 ; N uni1674 ; G 1901 -U 5749 ; WX 2016 ; N uni1675 ; G 1902 -U 5750 ; WX 2016 ; N uni1676 ; G 1903 -U 7424 ; WX 652 ; N uni1D00 ; G 1904 -U 7425 ; WX 833 ; N uni1D01 ; G 1905 -U 7426 ; WX 1048 ; N uni1D02 ; G 1906 -U 7427 ; WX 608 ; N uni1D03 ; G 1907 -U 7428 ; WX 593 ; N uni1D04 ; G 1908 -U 7429 ; WX 676 ; N uni1D05 ; G 1909 -U 7430 ; WX 676 ; N uni1D06 ; G 1910 -U 7431 ; WX 559 ; N uni1D07 ; G 1911 -U 7432 ; WX 557 ; N uni1D08 ; G 1912 -U 7433 ; WX 343 ; N uni1D09 ; G 1913 -U 7434 ; WX 494 ; N uni1D0A ; G 1914 -U 7435 ; WX 665 ; N uni1D0B ; G 1915 -U 7436 ; WX 539 ; N uni1D0C ; G 1916 -U 7437 ; WX 817 ; N uni1D0D ; G 1917 -U 7438 ; WX 701 ; N uni1D0E ; G 1918 -U 7439 ; WX 687 ; N uni1D0F ; G 1919 -U 7440 ; WX 593 ; N uni1D10 ; G 1920 -U 7441 ; WX 660 ; N uni1D11 ; G 1921 -U 7442 ; WX 660 ; N uni1D12 ; G 1922 -U 7443 ; WX 660 ; N uni1D13 ; G 1923 -U 7444 ; WX 1094 ; N uni1D14 ; G 1924 -U 7446 ; WX 687 ; N uni1D16 ; G 1925 -U 7447 ; WX 687 ; N uni1D17 ; G 1926 -U 7448 ; WX 556 ; N uni1D18 ; G 1927 -U 7449 ; WX 642 ; N uni1D19 ; G 1928 -U 7450 ; WX 642 ; N uni1D1A ; G 1929 -U 7451 ; WX 580 ; N uni1D1B ; G 1930 -U 7452 ; WX 634 ; N uni1D1C ; G 1931 -U 7453 ; WX 737 ; N uni1D1D ; G 1932 -U 7454 ; WX 948 ; N uni1D1E ; G 1933 -U 7455 ; WX 695 ; N uni1D1F ; G 1934 -U 7456 ; WX 652 ; N uni1D20 ; G 1935 -U 7457 ; WX 924 ; N uni1D21 ; G 1936 -U 7458 ; WX 582 ; N uni1D22 ; G 1937 -U 7459 ; WX 646 ; N uni1D23 ; G 1938 -U 7462 ; WX 539 ; N uni1D26 ; G 1939 -U 7463 ; WX 652 ; N uni1D27 ; G 1940 -U 7464 ; WX 691 ; N uni1D28 ; G 1941 -U 7465 ; WX 556 ; N uni1D29 ; G 1942 -U 7466 ; WX 781 ; N uni1D2A ; G 1943 -U 7467 ; WX 732 ; N uni1D2B ; G 1944 -U 7468 ; WX 487 ; N uni1D2C ; G 1945 -U 7469 ; WX 683 ; N uni1D2D ; G 1946 -U 7470 ; WX 480 ; N uni1D2E ; G 1947 -U 7472 ; WX 523 ; N uni1D30 ; G 1948 -U 7473 ; WX 430 ; N uni1D31 ; G 1949 -U 7474 ; WX 430 ; N uni1D32 ; G 1950 -U 7475 ; WX 517 ; N uni1D33 ; G 1951 -U 7476 ; WX 527 ; N uni1D34 ; G 1952 -U 7477 ; WX 234 ; N uni1D35 ; G 1953 -U 7478 ; WX 234 ; N uni1D36 ; G 1954 -U 7479 ; WX 488 ; N uni1D37 ; G 1955 -U 7480 ; WX 401 ; N uni1D38 ; G 1956 -U 7481 ; WX 626 ; N uni1D39 ; G 1957 -U 7482 ; WX 527 ; N uni1D3A ; G 1958 -U 7483 ; WX 527 ; N uni1D3B ; G 1959 -U 7484 ; WX 535 ; N uni1D3C ; G 1960 -U 7485 ; WX 509 ; N uni1D3D ; G 1961 -U 7486 ; WX 461 ; N uni1D3E ; G 1962 -U 7487 ; WX 485 ; N uni1D3F ; G 1963 -U 7488 ; WX 430 ; N uni1D40 ; G 1964 -U 7489 ; WX 511 ; N uni1D41 ; G 1965 -U 7490 ; WX 695 ; N uni1D42 ; G 1966 -U 7491 ; WX 458 ; N uni1D43 ; G 1967 -U 7492 ; WX 458 ; N uni1D44 ; G 1968 -U 7493 ; WX 479 ; N uni1D45 ; G 1969 -U 7494 ; WX 712 ; N uni1D46 ; G 1970 -U 7495 ; WX 479 ; N uni1D47 ; G 1971 -U 7496 ; WX 479 ; N uni1D48 ; G 1972 -U 7497 ; WX 479 ; N uni1D49 ; G 1973 -U 7498 ; WX 479 ; N uni1D4A ; G 1974 -U 7499 ; WX 386 ; N uni1D4B ; G 1975 -U 7500 ; WX 386 ; N uni1D4C ; G 1976 -U 7501 ; WX 479 ; N uni1D4D ; G 1977 -U 7502 ; WX 219 ; N uni1D4E ; G 1978 -U 7503 ; WX 487 ; N uni1D4F ; G 1979 -U 7504 ; WX 664 ; N uni1D50 ; G 1980 -U 7505 ; WX 456 ; N uni1D51 ; G 1981 -U 7506 ; WX 488 ; N uni1D52 ; G 1982 -U 7507 ; WX 414 ; N uni1D53 ; G 1983 -U 7508 ; WX 488 ; N uni1D54 ; G 1984 -U 7509 ; WX 488 ; N uni1D55 ; G 1985 -U 7510 ; WX 479 ; N uni1D56 ; G 1986 -U 7511 ; WX 388 ; N uni1D57 ; G 1987 -U 7512 ; WX 456 ; N uni1D58 ; G 1988 -U 7513 ; WX 462 ; N uni1D59 ; G 1989 -U 7514 ; WX 664 ; N uni1D5A ; G 1990 -U 7515 ; WX 501 ; N uni1D5B ; G 1991 -U 7517 ; WX 451 ; N uni1D5D ; G 1992 -U 7518 ; WX 429 ; N uni1D5E ; G 1993 -U 7519 ; WX 433 ; N uni1D5F ; G 1994 -U 7520 ; WX 493 ; N uni1D60 ; G 1995 -U 7521 ; WX 406 ; N uni1D61 ; G 1996 -U 7522 ; WX 219 ; N uni1D62 ; G 1997 -U 7523 ; WX 315 ; N uni1D63 ; G 1998 -U 7524 ; WX 456 ; N uni1D64 ; G 1999 -U 7525 ; WX 501 ; N uni1D65 ; G 2000 -U 7526 ; WX 451 ; N uni1D66 ; G 2001 -U 7527 ; WX 429 ; N uni1D67 ; G 2002 -U 7528 ; WX 451 ; N uni1D68 ; G 2003 -U 7529 ; WX 493 ; N uni1D69 ; G 2004 -U 7530 ; WX 406 ; N uni1D6A ; G 2005 -U 7543 ; WX 716 ; N uni1D77 ; G 2006 -U 7544 ; WX 527 ; N uni1D78 ; G 2007 -U 7547 ; WX 545 ; N uni1D7B ; G 2008 -U 7549 ; WX 747 ; N uni1D7D ; G 2009 -U 7557 ; WX 514 ; N uni1D85 ; G 2010 -U 7579 ; WX 479 ; N uni1D9B ; G 2011 -U 7580 ; WX 414 ; N uni1D9C ; G 2012 -U 7581 ; WX 414 ; N uni1D9D ; G 2013 -U 7582 ; WX 488 ; N uni1D9E ; G 2014 -U 7583 ; WX 386 ; N uni1D9F ; G 2015 -U 7584 ; WX 377 ; N uni1DA0 ; G 2016 -U 7585 ; WX 348 ; N uni1DA1 ; G 2017 -U 7586 ; WX 479 ; N uni1DA2 ; G 2018 -U 7587 ; WX 456 ; N uni1DA3 ; G 2019 -U 7588 ; WX 347 ; N uni1DA4 ; G 2020 -U 7589 ; WX 281 ; N uni1DA5 ; G 2021 -U 7590 ; WX 347 ; N uni1DA6 ; G 2022 -U 7591 ; WX 347 ; N uni1DA7 ; G 2023 -U 7592 ; WX 431 ; N uni1DA8 ; G 2024 -U 7593 ; WX 326 ; N uni1DA9 ; G 2025 -U 7594 ; WX 330 ; N uni1DAA ; G 2026 -U 7595 ; WX 370 ; N uni1DAB ; G 2027 -U 7596 ; WX 664 ; N uni1DAC ; G 2028 -U 7597 ; WX 664 ; N uni1DAD ; G 2029 -U 7598 ; WX 562 ; N uni1DAE ; G 2030 -U 7599 ; WX 562 ; N uni1DAF ; G 2031 -U 7600 ; WX 448 ; N uni1DB0 ; G 2032 -U 7601 ; WX 488 ; N uni1DB1 ; G 2033 -U 7602 ; WX 542 ; N uni1DB2 ; G 2034 -U 7603 ; WX 422 ; N uni1DB3 ; G 2035 -U 7604 ; WX 396 ; N uni1DB4 ; G 2036 -U 7605 ; WX 388 ; N uni1DB5 ; G 2037 -U 7606 ; WX 583 ; N uni1DB6 ; G 2038 -U 7607 ; WX 494 ; N uni1DB7 ; G 2039 -U 7608 ; WX 399 ; N uni1DB8 ; G 2040 -U 7609 ; WX 451 ; N uni1DB9 ; G 2041 -U 7610 ; WX 501 ; N uni1DBA ; G 2042 -U 7611 ; WX 417 ; N uni1DBB ; G 2043 -U 7612 ; WX 523 ; N uni1DBC ; G 2044 -U 7613 ; WX 470 ; N uni1DBD ; G 2045 -U 7614 ; WX 455 ; N uni1DBE ; G 2046 -U 7615 ; WX 425 ; N uni1DBF ; G 2047 -U 7620 ; WX 0 ; N uni1DC4 ; G 2048 -U 7621 ; WX 0 ; N uni1DC5 ; G 2049 -U 7622 ; WX 0 ; N uni1DC6 ; G 2050 -U 7623 ; WX 0 ; N uni1DC7 ; G 2051 -U 7624 ; WX 0 ; N uni1DC8 ; G 2052 -U 7625 ; WX 0 ; N uni1DC9 ; G 2053 -U 7680 ; WX 774 ; N uni1E00 ; G 2054 -U 7681 ; WX 675 ; N uni1E01 ; G 2055 -U 7682 ; WX 762 ; N uni1E02 ; G 2056 -U 7683 ; WX 716 ; N uni1E03 ; G 2057 -U 7684 ; WX 762 ; N uni1E04 ; G 2058 -U 7685 ; WX 716 ; N uni1E05 ; G 2059 -U 7686 ; WX 762 ; N uni1E06 ; G 2060 -U 7687 ; WX 716 ; N uni1E07 ; G 2061 -U 7688 ; WX 734 ; N uni1E08 ; G 2062 -U 7689 ; WX 593 ; N uni1E09 ; G 2063 -U 7690 ; WX 830 ; N uni1E0A ; G 2064 -U 7691 ; WX 716 ; N uni1E0B ; G 2065 -U 7692 ; WX 830 ; N uni1E0C ; G 2066 -U 7693 ; WX 716 ; N uni1E0D ; G 2067 -U 7694 ; WX 830 ; N uni1E0E ; G 2068 -U 7695 ; WX 716 ; N uni1E0F ; G 2069 -U 7696 ; WX 830 ; N uni1E10 ; G 2070 -U 7697 ; WX 716 ; N uni1E11 ; G 2071 -U 7698 ; WX 830 ; N uni1E12 ; G 2072 -U 7699 ; WX 716 ; N uni1E13 ; G 2073 -U 7700 ; WX 683 ; N uni1E14 ; G 2074 -U 7701 ; WX 678 ; N uni1E15 ; G 2075 -U 7702 ; WX 683 ; N uni1E16 ; G 2076 -U 7703 ; WX 678 ; N uni1E17 ; G 2077 -U 7704 ; WX 683 ; N uni1E18 ; G 2078 -U 7705 ; WX 678 ; N uni1E19 ; G 2079 -U 7706 ; WX 683 ; N uni1E1A ; G 2080 -U 7707 ; WX 678 ; N uni1E1B ; G 2081 -U 7708 ; WX 683 ; N uni1E1C ; G 2082 -U 7709 ; WX 678 ; N uni1E1D ; G 2083 -U 7710 ; WX 683 ; N uni1E1E ; G 2084 -U 7711 ; WX 435 ; N uni1E1F ; G 2085 -U 7712 ; WX 821 ; N uni1E20 ; G 2086 -U 7713 ; WX 716 ; N uni1E21 ; G 2087 -U 7714 ; WX 837 ; N uni1E22 ; G 2088 -U 7715 ; WX 712 ; N uni1E23 ; G 2089 -U 7716 ; WX 837 ; N uni1E24 ; G 2090 -U 7717 ; WX 712 ; N uni1E25 ; G 2091 -U 7718 ; WX 837 ; N uni1E26 ; G 2092 -U 7719 ; WX 712 ; N uni1E27 ; G 2093 -U 7720 ; WX 837 ; N uni1E28 ; G 2094 -U 7721 ; WX 712 ; N uni1E29 ; G 2095 -U 7722 ; WX 837 ; N uni1E2A ; G 2096 -U 7723 ; WX 712 ; N uni1E2B ; G 2097 -U 7724 ; WX 372 ; N uni1E2C ; G 2098 -U 7725 ; WX 343 ; N uni1E2D ; G 2099 -U 7726 ; WX 372 ; N uni1E2E ; G 2100 -U 7727 ; WX 343 ; N uni1E2F ; G 2101 -U 7728 ; WX 775 ; N uni1E30 ; G 2102 -U 7729 ; WX 665 ; N uni1E31 ; G 2103 -U 7730 ; WX 775 ; N uni1E32 ; G 2104 -U 7731 ; WX 665 ; N uni1E33 ; G 2105 -U 7732 ; WX 775 ; N uni1E34 ; G 2106 -U 7733 ; WX 665 ; N uni1E35 ; G 2107 -U 7734 ; WX 637 ; N uni1E36 ; G 2108 -U 7735 ; WX 343 ; N uni1E37 ; G 2109 -U 7736 ; WX 637 ; N uni1E38 ; G 2110 -U 7737 ; WX 343 ; N uni1E39 ; G 2111 -U 7738 ; WX 637 ; N uni1E3A ; G 2112 -U 7739 ; WX 343 ; N uni1E3B ; G 2113 -U 7740 ; WX 637 ; N uni1E3C ; G 2114 -U 7741 ; WX 343 ; N uni1E3D ; G 2115 -U 7742 ; WX 995 ; N uni1E3E ; G 2116 -U 7743 ; WX 1042 ; N uni1E3F ; G 2117 -U 7744 ; WX 995 ; N uni1E40 ; G 2118 -U 7745 ; WX 1042 ; N uni1E41 ; G 2119 -U 7746 ; WX 995 ; N uni1E42 ; G 2120 -U 7747 ; WX 1042 ; N uni1E43 ; G 2121 -U 7748 ; WX 837 ; N uni1E44 ; G 2122 -U 7749 ; WX 712 ; N uni1E45 ; G 2123 -U 7750 ; WX 837 ; N uni1E46 ; G 2124 -U 7751 ; WX 712 ; N uni1E47 ; G 2125 -U 7752 ; WX 837 ; N uni1E48 ; G 2126 -U 7753 ; WX 712 ; N uni1E49 ; G 2127 -U 7754 ; WX 837 ; N uni1E4A ; G 2128 -U 7755 ; WX 712 ; N uni1E4B ; G 2129 -U 7756 ; WX 850 ; N uni1E4C ; G 2130 -U 7757 ; WX 687 ; N uni1E4D ; G 2131 -U 7758 ; WX 850 ; N uni1E4E ; G 2132 -U 7759 ; WX 687 ; N uni1E4F ; G 2133 -U 7760 ; WX 850 ; N uni1E50 ; G 2134 -U 7761 ; WX 687 ; N uni1E51 ; G 2135 -U 7762 ; WX 850 ; N uni1E52 ; G 2136 -U 7763 ; WX 687 ; N uni1E53 ; G 2137 -U 7764 ; WX 733 ; N uni1E54 ; G 2138 -U 7765 ; WX 716 ; N uni1E55 ; G 2139 -U 7766 ; WX 733 ; N uni1E56 ; G 2140 -U 7767 ; WX 716 ; N uni1E57 ; G 2141 -U 7768 ; WX 770 ; N uni1E58 ; G 2142 -U 7769 ; WX 493 ; N uni1E59 ; G 2143 -U 7770 ; WX 770 ; N uni1E5A ; G 2144 -U 7771 ; WX 493 ; N uni1E5B ; G 2145 -U 7772 ; WX 770 ; N uni1E5C ; G 2146 -U 7773 ; WX 493 ; N uni1E5D ; G 2147 -U 7774 ; WX 770 ; N uni1E5E ; G 2148 -U 7775 ; WX 493 ; N uni1E5F ; G 2149 -U 7776 ; WX 720 ; N uni1E60 ; G 2150 -U 7777 ; WX 595 ; N uni1E61 ; G 2151 -U 7778 ; WX 720 ; N uni1E62 ; G 2152 -U 7779 ; WX 595 ; N uni1E63 ; G 2153 -U 7780 ; WX 720 ; N uni1E64 ; G 2154 -U 7781 ; WX 595 ; N uni1E65 ; G 2155 -U 7782 ; WX 720 ; N uni1E66 ; G 2156 -U 7783 ; WX 595 ; N uni1E67 ; G 2157 -U 7784 ; WX 720 ; N uni1E68 ; G 2158 -U 7785 ; WX 595 ; N uni1E69 ; G 2159 -U 7786 ; WX 682 ; N uni1E6A ; G 2160 -U 7787 ; WX 478 ; N uni1E6B ; G 2161 -U 7788 ; WX 682 ; N uni1E6C ; G 2162 -U 7789 ; WX 478 ; N uni1E6D ; G 2163 -U 7790 ; WX 682 ; N uni1E6E ; G 2164 -U 7791 ; WX 478 ; N uni1E6F ; G 2165 -U 7792 ; WX 682 ; N uni1E70 ; G 2166 -U 7793 ; WX 478 ; N uni1E71 ; G 2167 -U 7794 ; WX 812 ; N uni1E72 ; G 2168 -U 7795 ; WX 712 ; N uni1E73 ; G 2169 -U 7796 ; WX 812 ; N uni1E74 ; G 2170 -U 7797 ; WX 712 ; N uni1E75 ; G 2171 -U 7798 ; WX 812 ; N uni1E76 ; G 2172 -U 7799 ; WX 712 ; N uni1E77 ; G 2173 -U 7800 ; WX 812 ; N uni1E78 ; G 2174 -U 7801 ; WX 712 ; N uni1E79 ; G 2175 -U 7802 ; WX 812 ; N uni1E7A ; G 2176 -U 7803 ; WX 712 ; N uni1E7B ; G 2177 -U 7804 ; WX 774 ; N uni1E7C ; G 2178 -U 7805 ; WX 652 ; N uni1E7D ; G 2179 -U 7806 ; WX 774 ; N uni1E7E ; G 2180 -U 7807 ; WX 652 ; N uni1E7F ; G 2181 -U 7808 ; WX 1103 ; N Wgrave ; G 2182 -U 7809 ; WX 924 ; N wgrave ; G 2183 -U 7810 ; WX 1103 ; N Wacute ; G 2184 -U 7811 ; WX 924 ; N wacute ; G 2185 -U 7812 ; WX 1103 ; N Wdieresis ; G 2186 -U 7813 ; WX 924 ; N wdieresis ; G 2187 -U 7814 ; WX 1103 ; N uni1E86 ; G 2188 -U 7815 ; WX 924 ; N uni1E87 ; G 2189 -U 7816 ; WX 1103 ; N uni1E88 ; G 2190 -U 7817 ; WX 924 ; N uni1E89 ; G 2191 -U 7818 ; WX 771 ; N uni1E8A ; G 2192 -U 7819 ; WX 645 ; N uni1E8B ; G 2193 -U 7820 ; WX 771 ; N uni1E8C ; G 2194 -U 7821 ; WX 645 ; N uni1E8D ; G 2195 -U 7822 ; WX 724 ; N uni1E8E ; G 2196 -U 7823 ; WX 652 ; N uni1E8F ; G 2197 -U 7824 ; WX 725 ; N uni1E90 ; G 2198 -U 7825 ; WX 582 ; N uni1E91 ; G 2199 -U 7826 ; WX 725 ; N uni1E92 ; G 2200 -U 7827 ; WX 582 ; N uni1E93 ; G 2201 -U 7828 ; WX 725 ; N uni1E94 ; G 2202 -U 7829 ; WX 582 ; N uni1E95 ; G 2203 -U 7830 ; WX 712 ; N uni1E96 ; G 2204 -U 7831 ; WX 478 ; N uni1E97 ; G 2205 -U 7832 ; WX 924 ; N uni1E98 ; G 2206 -U 7833 ; WX 652 ; N uni1E99 ; G 2207 -U 7834 ; WX 675 ; N uni1E9A ; G 2208 -U 7835 ; WX 435 ; N uni1E9B ; G 2209 -U 7836 ; WX 435 ; N uni1E9C ; G 2210 -U 7837 ; WX 435 ; N uni1E9D ; G 2211 -U 7838 ; WX 896 ; N uni1E9E ; G 2212 -U 7839 ; WX 687 ; N uni1E9F ; G 2213 -U 7840 ; WX 774 ; N uni1EA0 ; G 2214 -U 7841 ; WX 675 ; N uni1EA1 ; G 2215 -U 7842 ; WX 774 ; N uni1EA2 ; G 2216 -U 7843 ; WX 675 ; N uni1EA3 ; G 2217 -U 7844 ; WX 774 ; N uni1EA4 ; G 2218 -U 7845 ; WX 675 ; N uni1EA5 ; G 2219 -U 7846 ; WX 774 ; N uni1EA6 ; G 2220 -U 7847 ; WX 675 ; N uni1EA7 ; G 2221 -U 7848 ; WX 774 ; N uni1EA8 ; G 2222 -U 7849 ; WX 675 ; N uni1EA9 ; G 2223 -U 7850 ; WX 774 ; N uni1EAA ; G 2224 -U 7851 ; WX 675 ; N uni1EAB ; G 2225 -U 7852 ; WX 774 ; N uni1EAC ; G 2226 -U 7853 ; WX 675 ; N uni1EAD ; G 2227 -U 7854 ; WX 774 ; N uni1EAE ; G 2228 -U 7855 ; WX 675 ; N uni1EAF ; G 2229 -U 7856 ; WX 774 ; N uni1EB0 ; G 2230 -U 7857 ; WX 675 ; N uni1EB1 ; G 2231 -U 7858 ; WX 774 ; N uni1EB2 ; G 2232 -U 7859 ; WX 675 ; N uni1EB3 ; G 2233 -U 7860 ; WX 774 ; N uni1EB4 ; G 2234 -U 7861 ; WX 675 ; N uni1EB5 ; G 2235 -U 7862 ; WX 774 ; N uni1EB6 ; G 2236 -U 7863 ; WX 675 ; N uni1EB7 ; G 2237 -U 7864 ; WX 683 ; N uni1EB8 ; G 2238 -U 7865 ; WX 678 ; N uni1EB9 ; G 2239 -U 7866 ; WX 683 ; N uni1EBA ; G 2240 -U 7867 ; WX 678 ; N uni1EBB ; G 2241 -U 7868 ; WX 683 ; N uni1EBC ; G 2242 -U 7869 ; WX 678 ; N uni1EBD ; G 2243 -U 7870 ; WX 683 ; N uni1EBE ; G 2244 -U 7871 ; WX 678 ; N uni1EBF ; G 2245 -U 7872 ; WX 683 ; N uni1EC0 ; G 2246 -U 7873 ; WX 678 ; N uni1EC1 ; G 2247 -U 7874 ; WX 683 ; N uni1EC2 ; G 2248 -U 7875 ; WX 678 ; N uni1EC3 ; G 2249 -U 7876 ; WX 683 ; N uni1EC4 ; G 2250 -U 7877 ; WX 678 ; N uni1EC5 ; G 2251 -U 7878 ; WX 683 ; N uni1EC6 ; G 2252 -U 7879 ; WX 678 ; N uni1EC7 ; G 2253 -U 7880 ; WX 372 ; N uni1EC8 ; G 2254 -U 7881 ; WX 343 ; N uni1EC9 ; G 2255 -U 7882 ; WX 372 ; N uni1ECA ; G 2256 -U 7883 ; WX 343 ; N uni1ECB ; G 2257 -U 7884 ; WX 850 ; N uni1ECC ; G 2258 -U 7885 ; WX 687 ; N uni1ECD ; G 2259 -U 7886 ; WX 850 ; N uni1ECE ; G 2260 -U 7887 ; WX 687 ; N uni1ECF ; G 2261 -U 7888 ; WX 850 ; N uni1ED0 ; G 2262 -U 7889 ; WX 687 ; N uni1ED1 ; G 2263 -U 7890 ; WX 850 ; N uni1ED2 ; G 2264 -U 7891 ; WX 687 ; N uni1ED3 ; G 2265 -U 7892 ; WX 850 ; N uni1ED4 ; G 2266 -U 7893 ; WX 687 ; N uni1ED5 ; G 2267 -U 7894 ; WX 850 ; N uni1ED6 ; G 2268 -U 7895 ; WX 687 ; N uni1ED7 ; G 2269 -U 7896 ; WX 850 ; N uni1ED8 ; G 2270 -U 7897 ; WX 687 ; N uni1ED9 ; G 2271 -U 7898 ; WX 850 ; N uni1EDA ; G 2272 -U 7899 ; WX 687 ; N uni1EDB ; G 2273 -U 7900 ; WX 850 ; N uni1EDC ; G 2274 -U 7901 ; WX 687 ; N uni1EDD ; G 2275 -U 7902 ; WX 850 ; N uni1EDE ; G 2276 -U 7903 ; WX 687 ; N uni1EDF ; G 2277 -U 7904 ; WX 850 ; N uni1EE0 ; G 2278 -U 7905 ; WX 687 ; N uni1EE1 ; G 2279 -U 7906 ; WX 850 ; N uni1EE2 ; G 2280 -U 7907 ; WX 687 ; N uni1EE3 ; G 2281 -U 7908 ; WX 812 ; N uni1EE4 ; G 2282 -U 7909 ; WX 712 ; N uni1EE5 ; G 2283 -U 7910 ; WX 812 ; N uni1EE6 ; G 2284 -U 7911 ; WX 712 ; N uni1EE7 ; G 2285 -U 7912 ; WX 812 ; N uni1EE8 ; G 2286 -U 7913 ; WX 712 ; N uni1EE9 ; G 2287 -U 7914 ; WX 812 ; N uni1EEA ; G 2288 -U 7915 ; WX 712 ; N uni1EEB ; G 2289 -U 7916 ; WX 812 ; N uni1EEC ; G 2290 -U 7917 ; WX 712 ; N uni1EED ; G 2291 -U 7918 ; WX 812 ; N uni1EEE ; G 2292 -U 7919 ; WX 712 ; N uni1EEF ; G 2293 -U 7920 ; WX 812 ; N uni1EF0 ; G 2294 -U 7921 ; WX 712 ; N uni1EF1 ; G 2295 -U 7922 ; WX 724 ; N Ygrave ; G 2296 -U 7923 ; WX 652 ; N ygrave ; G 2297 -U 7924 ; WX 724 ; N uni1EF4 ; G 2298 -U 7925 ; WX 652 ; N uni1EF5 ; G 2299 -U 7926 ; WX 724 ; N uni1EF6 ; G 2300 -U 7927 ; WX 652 ; N uni1EF7 ; G 2301 -U 7928 ; WX 724 ; N uni1EF8 ; G 2302 -U 7929 ; WX 652 ; N uni1EF9 ; G 2303 -U 7930 ; WX 953 ; N uni1EFA ; G 2304 -U 7931 ; WX 644 ; N uni1EFB ; G 2305 -U 7936 ; WX 687 ; N uni1F00 ; G 2306 -U 7937 ; WX 687 ; N uni1F01 ; G 2307 -U 7938 ; WX 687 ; N uni1F02 ; G 2308 -U 7939 ; WX 687 ; N uni1F03 ; G 2309 -U 7940 ; WX 687 ; N uni1F04 ; G 2310 -U 7941 ; WX 687 ; N uni1F05 ; G 2311 -U 7942 ; WX 687 ; N uni1F06 ; G 2312 -U 7943 ; WX 687 ; N uni1F07 ; G 2313 -U 7944 ; WX 774 ; N uni1F08 ; G 2314 -U 7945 ; WX 774 ; N uni1F09 ; G 2315 -U 7946 ; WX 1041 ; N uni1F0A ; G 2316 -U 7947 ; WX 1043 ; N uni1F0B ; G 2317 -U 7948 ; WX 935 ; N uni1F0C ; G 2318 -U 7949 ; WX 963 ; N uni1F0D ; G 2319 -U 7950 ; WX 835 ; N uni1F0E ; G 2320 -U 7951 ; WX 859 ; N uni1F0F ; G 2321 -U 7952 ; WX 557 ; N uni1F10 ; G 2322 -U 7953 ; WX 557 ; N uni1F11 ; G 2323 -U 7954 ; WX 557 ; N uni1F12 ; G 2324 -U 7955 ; WX 557 ; N uni1F13 ; G 2325 -U 7956 ; WX 557 ; N uni1F14 ; G 2326 -U 7957 ; WX 557 ; N uni1F15 ; G 2327 -U 7960 ; WX 792 ; N uni1F18 ; G 2328 -U 7961 ; WX 794 ; N uni1F19 ; G 2329 -U 7962 ; WX 1100 ; N uni1F1A ; G 2330 -U 7963 ; WX 1096 ; N uni1F1B ; G 2331 -U 7964 ; WX 1023 ; N uni1F1C ; G 2332 -U 7965 ; WX 1052 ; N uni1F1D ; G 2333 -U 7968 ; WX 712 ; N uni1F20 ; G 2334 -U 7969 ; WX 712 ; N uni1F21 ; G 2335 -U 7970 ; WX 712 ; N uni1F22 ; G 2336 -U 7971 ; WX 712 ; N uni1F23 ; G 2337 -U 7972 ; WX 712 ; N uni1F24 ; G 2338 -U 7973 ; WX 712 ; N uni1F25 ; G 2339 -U 7974 ; WX 712 ; N uni1F26 ; G 2340 -U 7975 ; WX 712 ; N uni1F27 ; G 2341 -U 7976 ; WX 945 ; N uni1F28 ; G 2342 -U 7977 ; WX 951 ; N uni1F29 ; G 2343 -U 7978 ; WX 1250 ; N uni1F2A ; G 2344 -U 7979 ; WX 1250 ; N uni1F2B ; G 2345 -U 7980 ; WX 1180 ; N uni1F2C ; G 2346 -U 7981 ; WX 1206 ; N uni1F2D ; G 2347 -U 7982 ; WX 1054 ; N uni1F2E ; G 2348 -U 7983 ; WX 1063 ; N uni1F2F ; G 2349 -U 7984 ; WX 390 ; N uni1F30 ; G 2350 -U 7985 ; WX 390 ; N uni1F31 ; G 2351 -U 7986 ; WX 390 ; N uni1F32 ; G 2352 -U 7987 ; WX 390 ; N uni1F33 ; G 2353 -U 7988 ; WX 390 ; N uni1F34 ; G 2354 -U 7989 ; WX 390 ; N uni1F35 ; G 2355 -U 7990 ; WX 390 ; N uni1F36 ; G 2356 -U 7991 ; WX 390 ; N uni1F37 ; G 2357 -U 7992 ; WX 483 ; N uni1F38 ; G 2358 -U 7993 ; WX 489 ; N uni1F39 ; G 2359 -U 7994 ; WX 777 ; N uni1F3A ; G 2360 -U 7995 ; WX 785 ; N uni1F3B ; G 2361 -U 7996 ; WX 712 ; N uni1F3C ; G 2362 -U 7997 ; WX 738 ; N uni1F3D ; G 2363 -U 7998 ; WX 604 ; N uni1F3E ; G 2364 -U 7999 ; WX 604 ; N uni1F3F ; G 2365 -U 8000 ; WX 687 ; N uni1F40 ; G 2366 -U 8001 ; WX 687 ; N uni1F41 ; G 2367 -U 8002 ; WX 687 ; N uni1F42 ; G 2368 -U 8003 ; WX 687 ; N uni1F43 ; G 2369 -U 8004 ; WX 687 ; N uni1F44 ; G 2370 -U 8005 ; WX 687 ; N uni1F45 ; G 2371 -U 8008 ; WX 892 ; N uni1F48 ; G 2372 -U 8009 ; WX 933 ; N uni1F49 ; G 2373 -U 8010 ; WX 1221 ; N uni1F4A ; G 2374 -U 8011 ; WX 1224 ; N uni1F4B ; G 2375 -U 8012 ; WX 1053 ; N uni1F4C ; G 2376 -U 8013 ; WX 1082 ; N uni1F4D ; G 2377 -U 8016 ; WX 675 ; N uni1F50 ; G 2378 -U 8017 ; WX 675 ; N uni1F51 ; G 2379 -U 8018 ; WX 675 ; N uni1F52 ; G 2380 -U 8019 ; WX 675 ; N uni1F53 ; G 2381 -U 8020 ; WX 675 ; N uni1F54 ; G 2382 -U 8021 ; WX 675 ; N uni1F55 ; G 2383 -U 8022 ; WX 675 ; N uni1F56 ; G 2384 -U 8023 ; WX 675 ; N uni1F57 ; G 2385 -U 8025 ; WX 930 ; N uni1F59 ; G 2386 -U 8027 ; WX 1184 ; N uni1F5B ; G 2387 -U 8029 ; WX 1199 ; N uni1F5D ; G 2388 -U 8031 ; WX 1049 ; N uni1F5F ; G 2389 -U 8032 ; WX 869 ; N uni1F60 ; G 2390 -U 8033 ; WX 869 ; N uni1F61 ; G 2391 -U 8034 ; WX 869 ; N uni1F62 ; G 2392 -U 8035 ; WX 869 ; N uni1F63 ; G 2393 -U 8036 ; WX 869 ; N uni1F64 ; G 2394 -U 8037 ; WX 869 ; N uni1F65 ; G 2395 -U 8038 ; WX 869 ; N uni1F66 ; G 2396 -U 8039 ; WX 869 ; N uni1F67 ; G 2397 -U 8040 ; WX 909 ; N uni1F68 ; G 2398 -U 8041 ; WX 958 ; N uni1F69 ; G 2399 -U 8042 ; WX 1246 ; N uni1F6A ; G 2400 -U 8043 ; WX 1251 ; N uni1F6B ; G 2401 -U 8044 ; WX 1076 ; N uni1F6C ; G 2402 -U 8045 ; WX 1105 ; N uni1F6D ; G 2403 -U 8046 ; WX 1028 ; N uni1F6E ; G 2404 -U 8047 ; WX 1076 ; N uni1F6F ; G 2405 -U 8048 ; WX 687 ; N uni1F70 ; G 2406 -U 8049 ; WX 687 ; N uni1F71 ; G 2407 -U 8050 ; WX 557 ; N uni1F72 ; G 2408 -U 8051 ; WX 557 ; N uni1F73 ; G 2409 -U 8052 ; WX 712 ; N uni1F74 ; G 2410 -U 8053 ; WX 712 ; N uni1F75 ; G 2411 -U 8054 ; WX 390 ; N uni1F76 ; G 2412 -U 8055 ; WX 390 ; N uni1F77 ; G 2413 -U 8056 ; WX 687 ; N uni1F78 ; G 2414 -U 8057 ; WX 687 ; N uni1F79 ; G 2415 -U 8058 ; WX 675 ; N uni1F7A ; G 2416 -U 8059 ; WX 675 ; N uni1F7B ; G 2417 -U 8060 ; WX 869 ; N uni1F7C ; G 2418 -U 8061 ; WX 869 ; N uni1F7D ; G 2419 -U 8064 ; WX 687 ; N uni1F80 ; G 2420 -U 8065 ; WX 687 ; N uni1F81 ; G 2421 -U 8066 ; WX 687 ; N uni1F82 ; G 2422 -U 8067 ; WX 687 ; N uni1F83 ; G 2423 -U 8068 ; WX 687 ; N uni1F84 ; G 2424 -U 8069 ; WX 687 ; N uni1F85 ; G 2425 -U 8070 ; WX 687 ; N uni1F86 ; G 2426 -U 8071 ; WX 687 ; N uni1F87 ; G 2427 -U 8072 ; WX 774 ; N uni1F88 ; G 2428 -U 8073 ; WX 774 ; N uni1F89 ; G 2429 -U 8074 ; WX 1041 ; N uni1F8A ; G 2430 -U 8075 ; WX 1043 ; N uni1F8B ; G 2431 -U 8076 ; WX 935 ; N uni1F8C ; G 2432 -U 8077 ; WX 963 ; N uni1F8D ; G 2433 -U 8078 ; WX 835 ; N uni1F8E ; G 2434 -U 8079 ; WX 859 ; N uni1F8F ; G 2435 -U 8080 ; WX 712 ; N uni1F90 ; G 2436 -U 8081 ; WX 712 ; N uni1F91 ; G 2437 -U 8082 ; WX 712 ; N uni1F92 ; G 2438 -U 8083 ; WX 712 ; N uni1F93 ; G 2439 -U 8084 ; WX 712 ; N uni1F94 ; G 2440 -U 8085 ; WX 712 ; N uni1F95 ; G 2441 -U 8086 ; WX 712 ; N uni1F96 ; G 2442 -U 8087 ; WX 712 ; N uni1F97 ; G 2443 -U 8088 ; WX 945 ; N uni1F98 ; G 2444 -U 8089 ; WX 951 ; N uni1F99 ; G 2445 -U 8090 ; WX 1250 ; N uni1F9A ; G 2446 -U 8091 ; WX 1250 ; N uni1F9B ; G 2447 -U 8092 ; WX 1180 ; N uni1F9C ; G 2448 -U 8093 ; WX 1206 ; N uni1F9D ; G 2449 -U 8094 ; WX 1054 ; N uni1F9E ; G 2450 -U 8095 ; WX 1063 ; N uni1F9F ; G 2451 -U 8096 ; WX 869 ; N uni1FA0 ; G 2452 -U 8097 ; WX 869 ; N uni1FA1 ; G 2453 -U 8098 ; WX 869 ; N uni1FA2 ; G 2454 -U 8099 ; WX 869 ; N uni1FA3 ; G 2455 -U 8100 ; WX 869 ; N uni1FA4 ; G 2456 -U 8101 ; WX 869 ; N uni1FA5 ; G 2457 -U 8102 ; WX 869 ; N uni1FA6 ; G 2458 -U 8103 ; WX 869 ; N uni1FA7 ; G 2459 -U 8104 ; WX 909 ; N uni1FA8 ; G 2460 -U 8105 ; WX 958 ; N uni1FA9 ; G 2461 -U 8106 ; WX 1246 ; N uni1FAA ; G 2462 -U 8107 ; WX 1251 ; N uni1FAB ; G 2463 -U 8108 ; WX 1076 ; N uni1FAC ; G 2464 -U 8109 ; WX 1105 ; N uni1FAD ; G 2465 -U 8110 ; WX 1028 ; N uni1FAE ; G 2466 -U 8111 ; WX 1076 ; N uni1FAF ; G 2467 -U 8112 ; WX 687 ; N uni1FB0 ; G 2468 -U 8113 ; WX 687 ; N uni1FB1 ; G 2469 -U 8114 ; WX 687 ; N uni1FB2 ; G 2470 -U 8115 ; WX 687 ; N uni1FB3 ; G 2471 -U 8116 ; WX 687 ; N uni1FB4 ; G 2472 -U 8118 ; WX 687 ; N uni1FB6 ; G 2473 -U 8119 ; WX 687 ; N uni1FB7 ; G 2474 -U 8120 ; WX 774 ; N uni1FB8 ; G 2475 -U 8121 ; WX 774 ; N uni1FB9 ; G 2476 -U 8122 ; WX 876 ; N uni1FBA ; G 2477 -U 8123 ; WX 797 ; N uni1FBB ; G 2478 -U 8124 ; WX 774 ; N uni1FBC ; G 2479 -U 8125 ; WX 500 ; N uni1FBD ; G 2480 -U 8126 ; WX 500 ; N uni1FBE ; G 2481 -U 8127 ; WX 500 ; N uni1FBF ; G 2482 -U 8128 ; WX 500 ; N uni1FC0 ; G 2483 -U 8129 ; WX 500 ; N uni1FC1 ; G 2484 -U 8130 ; WX 712 ; N uni1FC2 ; G 2485 -U 8131 ; WX 712 ; N uni1FC3 ; G 2486 -U 8132 ; WX 712 ; N uni1FC4 ; G 2487 -U 8134 ; WX 712 ; N uni1FC6 ; G 2488 -U 8135 ; WX 712 ; N uni1FC7 ; G 2489 -U 8136 ; WX 929 ; N uni1FC8 ; G 2490 -U 8137 ; WX 846 ; N uni1FC9 ; G 2491 -U 8138 ; WX 1080 ; N uni1FCA ; G 2492 -U 8139 ; WX 1009 ; N uni1FCB ; G 2493 -U 8140 ; WX 837 ; N uni1FCC ; G 2494 -U 8141 ; WX 500 ; N uni1FCD ; G 2495 -U 8142 ; WX 500 ; N uni1FCE ; G 2496 -U 8143 ; WX 500 ; N uni1FCF ; G 2497 -U 8144 ; WX 390 ; N uni1FD0 ; G 2498 -U 8145 ; WX 390 ; N uni1FD1 ; G 2499 -U 8146 ; WX 390 ; N uni1FD2 ; G 2500 -U 8147 ; WX 390 ; N uni1FD3 ; G 2501 -U 8150 ; WX 390 ; N uni1FD6 ; G 2502 -U 8151 ; WX 390 ; N uni1FD7 ; G 2503 -U 8152 ; WX 372 ; N uni1FD8 ; G 2504 -U 8153 ; WX 372 ; N uni1FD9 ; G 2505 -U 8154 ; WX 621 ; N uni1FDA ; G 2506 -U 8155 ; WX 563 ; N uni1FDB ; G 2507 -U 8157 ; WX 500 ; N uni1FDD ; G 2508 -U 8158 ; WX 500 ; N uni1FDE ; G 2509 -U 8159 ; WX 500 ; N uni1FDF ; G 2510 -U 8160 ; WX 675 ; N uni1FE0 ; G 2511 -U 8161 ; WX 675 ; N uni1FE1 ; G 2512 -U 8162 ; WX 675 ; N uni1FE2 ; G 2513 -U 8163 ; WX 675 ; N uni1FE3 ; G 2514 -U 8164 ; WX 716 ; N uni1FE4 ; G 2515 -U 8165 ; WX 716 ; N uni1FE5 ; G 2516 -U 8166 ; WX 675 ; N uni1FE6 ; G 2517 -U 8167 ; WX 675 ; N uni1FE7 ; G 2518 -U 8168 ; WX 724 ; N uni1FE8 ; G 2519 -U 8169 ; WX 724 ; N uni1FE9 ; G 2520 -U 8170 ; WX 1020 ; N uni1FEA ; G 2521 -U 8171 ; WX 980 ; N uni1FEB ; G 2522 -U 8172 ; WX 838 ; N uni1FEC ; G 2523 -U 8173 ; WX 500 ; N uni1FED ; G 2524 -U 8174 ; WX 500 ; N uni1FEE ; G 2525 -U 8175 ; WX 500 ; N uni1FEF ; G 2526 -U 8178 ; WX 869 ; N uni1FF2 ; G 2527 -U 8179 ; WX 869 ; N uni1FF3 ; G 2528 -U 8180 ; WX 869 ; N uni1FF4 ; G 2529 -U 8182 ; WX 869 ; N uni1FF6 ; G 2530 -U 8183 ; WX 869 ; N uni1FF7 ; G 2531 -U 8184 ; WX 1065 ; N uni1FF8 ; G 2532 -U 8185 ; WX 891 ; N uni1FF9 ; G 2533 -U 8186 ; WX 1084 ; N uni1FFA ; G 2534 -U 8187 ; WX 894 ; N uni1FFB ; G 2535 -U 8188 ; WX 850 ; N uni1FFC ; G 2536 -U 8189 ; WX 500 ; N uni1FFD ; G 2537 -U 8190 ; WX 500 ; N uni1FFE ; G 2538 -U 8192 ; WX 500 ; N uni2000 ; G 2539 -U 8193 ; WX 1000 ; N uni2001 ; G 2540 -U 8194 ; WX 500 ; N uni2002 ; G 2541 -U 8195 ; WX 1000 ; N uni2003 ; G 2542 -U 8196 ; WX 330 ; N uni2004 ; G 2543 -U 8197 ; WX 250 ; N uni2005 ; G 2544 -U 8198 ; WX 167 ; N uni2006 ; G 2545 -U 8199 ; WX 696 ; N uni2007 ; G 2546 -U 8200 ; WX 380 ; N uni2008 ; G 2547 -U 8201 ; WX 200 ; N uni2009 ; G 2548 -U 8202 ; WX 100 ; N uni200A ; G 2549 -U 8203 ; WX 0 ; N uni200B ; G 2550 -U 8204 ; WX 0 ; N uni200C ; G 2551 -U 8205 ; WX 0 ; N uni200D ; G 2552 -U 8206 ; WX 0 ; N uni200E ; G 2553 -U 8207 ; WX 0 ; N uni200F ; G 2554 -U 8208 ; WX 415 ; N uni2010 ; G 2555 -U 8209 ; WX 415 ; N uni2011 ; G 2556 -U 8210 ; WX 696 ; N figuredash ; G 2557 -U 8211 ; WX 500 ; N endash ; G 2558 -U 8212 ; WX 1000 ; N emdash ; G 2559 -U 8213 ; WX 1000 ; N uni2015 ; G 2560 -U 8214 ; WX 500 ; N uni2016 ; G 2561 -U 8215 ; WX 500 ; N underscoredbl ; G 2562 -U 8216 ; WX 380 ; N quoteleft ; G 2563 -U 8217 ; WX 380 ; N quoteright ; G 2564 -U 8218 ; WX 380 ; N quotesinglbase ; G 2565 -U 8219 ; WX 380 ; N quotereversed ; G 2566 -U 8220 ; WX 644 ; N quotedblleft ; G 2567 -U 8221 ; WX 644 ; N quotedblright ; G 2568 -U 8222 ; WX 644 ; N quotedblbase ; G 2569 -U 8223 ; WX 657 ; N uni201F ; G 2570 -U 8224 ; WX 500 ; N dagger ; G 2571 -U 8225 ; WX 500 ; N daggerdbl ; G 2572 -U 8226 ; WX 639 ; N bullet ; G 2573 -U 8227 ; WX 639 ; N uni2023 ; G 2574 -U 8228 ; WX 380 ; N onedotenleader ; G 2575 -U 8229 ; WX 685 ; N twodotenleader ; G 2576 -U 8230 ; WX 1000 ; N ellipsis ; G 2577 -U 8231 ; WX 348 ; N uni2027 ; G 2578 -U 8232 ; WX 0 ; N uni2028 ; G 2579 -U 8233 ; WX 0 ; N uni2029 ; G 2580 -U 8234 ; WX 0 ; N uni202A ; G 2581 -U 8235 ; WX 0 ; N uni202B ; G 2582 -U 8236 ; WX 0 ; N uni202C ; G 2583 -U 8237 ; WX 0 ; N uni202D ; G 2584 -U 8238 ; WX 0 ; N uni202E ; G 2585 -U 8239 ; WX 200 ; N uni202F ; G 2586 -U 8240 ; WX 1454 ; N perthousand ; G 2587 -U 8241 ; WX 1908 ; N uni2031 ; G 2588 -U 8242 ; WX 264 ; N minute ; G 2589 -U 8243 ; WX 447 ; N second ; G 2590 -U 8244 ; WX 630 ; N uni2034 ; G 2591 -U 8245 ; WX 264 ; N uni2035 ; G 2592 -U 8246 ; WX 447 ; N uni2036 ; G 2593 -U 8247 ; WX 630 ; N uni2037 ; G 2594 -U 8248 ; WX 733 ; N uni2038 ; G 2595 -U 8249 ; WX 412 ; N guilsinglleft ; G 2596 -U 8250 ; WX 412 ; N guilsinglright ; G 2597 -U 8251 ; WX 972 ; N uni203B ; G 2598 -U 8252 ; WX 627 ; N exclamdbl ; G 2599 -U 8253 ; WX 580 ; N uni203D ; G 2600 -U 8254 ; WX 500 ; N uni203E ; G 2601 -U 8255 ; WX 828 ; N uni203F ; G 2602 -U 8256 ; WX 828 ; N uni2040 ; G 2603 -U 8257 ; WX 329 ; N uni2041 ; G 2604 -U 8258 ; WX 1023 ; N uni2042 ; G 2605 -U 8259 ; WX 500 ; N uni2043 ; G 2606 -U 8260 ; WX 167 ; N fraction ; G 2607 -U 8261 ; WX 457 ; N uni2045 ; G 2608 -U 8262 ; WX 457 ; N uni2046 ; G 2609 -U 8263 ; WX 1030 ; N uni2047 ; G 2610 -U 8264 ; WX 829 ; N uni2048 ; G 2611 -U 8265 ; WX 829 ; N uni2049 ; G 2612 -U 8266 ; WX 513 ; N uni204A ; G 2613 -U 8267 ; WX 687 ; N uni204B ; G 2614 -U 8268 ; WX 500 ; N uni204C ; G 2615 -U 8269 ; WX 500 ; N uni204D ; G 2616 -U 8270 ; WX 523 ; N uni204E ; G 2617 -U 8271 ; WX 400 ; N uni204F ; G 2618 -U 8272 ; WX 828 ; N uni2050 ; G 2619 -U 8273 ; WX 523 ; N uni2051 ; G 2620 -U 8274 ; WX 556 ; N uni2052 ; G 2621 -U 8275 ; WX 838 ; N uni2053 ; G 2622 -U 8276 ; WX 828 ; N uni2054 ; G 2623 -U 8277 ; WX 838 ; N uni2055 ; G 2624 -U 8278 ; WX 684 ; N uni2056 ; G 2625 -U 8279 ; WX 813 ; N uni2057 ; G 2626 -U 8280 ; WX 838 ; N uni2058 ; G 2627 -U 8281 ; WX 838 ; N uni2059 ; G 2628 -U 8282 ; WX 380 ; N uni205A ; G 2629 -U 8283 ; WX 872 ; N uni205B ; G 2630 -U 8284 ; WX 838 ; N uni205C ; G 2631 -U 8285 ; WX 380 ; N uni205D ; G 2632 -U 8286 ; WX 380 ; N uni205E ; G 2633 -U 8287 ; WX 222 ; N uni205F ; G 2634 -U 8288 ; WX 0 ; N uni2060 ; G 2635 -U 8289 ; WX 0 ; N uni2061 ; G 2636 -U 8290 ; WX 0 ; N uni2062 ; G 2637 -U 8291 ; WX 0 ; N uni2063 ; G 2638 -U 8292 ; WX 0 ; N uni2064 ; G 2639 -U 8298 ; WX 0 ; N uni206A ; G 2640 -U 8299 ; WX 0 ; N uni206B ; G 2641 -U 8300 ; WX 0 ; N uni206C ; G 2642 -U 8301 ; WX 0 ; N uni206D ; G 2643 -U 8302 ; WX 0 ; N uni206E ; G 2644 -U 8303 ; WX 0 ; N uni206F ; G 2645 -U 8304 ; WX 438 ; N uni2070 ; G 2646 -U 8305 ; WX 219 ; N uni2071 ; G 2647 -U 8308 ; WX 438 ; N uni2074 ; G 2648 -U 8309 ; WX 438 ; N uni2075 ; G 2649 -U 8310 ; WX 438 ; N uni2076 ; G 2650 -U 8311 ; WX 438 ; N uni2077 ; G 2651 -U 8312 ; WX 438 ; N uni2078 ; G 2652 -U 8313 ; WX 438 ; N uni2079 ; G 2653 -U 8314 ; WX 528 ; N uni207A ; G 2654 -U 8315 ; WX 528 ; N uni207B ; G 2655 -U 8316 ; WX 528 ; N uni207C ; G 2656 -U 8317 ; WX 288 ; N uni207D ; G 2657 -U 8318 ; WX 288 ; N uni207E ; G 2658 -U 8319 ; WX 456 ; N uni207F ; G 2659 -U 8320 ; WX 438 ; N uni2080 ; G 2660 -U 8321 ; WX 438 ; N uni2081 ; G 2661 -U 8322 ; WX 438 ; N uni2082 ; G 2662 -U 8323 ; WX 438 ; N uni2083 ; G 2663 -U 8324 ; WX 438 ; N uni2084 ; G 2664 -U 8325 ; WX 438 ; N uni2085 ; G 2665 -U 8326 ; WX 438 ; N uni2086 ; G 2666 -U 8327 ; WX 438 ; N uni2087 ; G 2667 -U 8328 ; WX 438 ; N uni2088 ; G 2668 -U 8329 ; WX 438 ; N uni2089 ; G 2669 -U 8330 ; WX 528 ; N uni208A ; G 2670 -U 8331 ; WX 528 ; N uni208B ; G 2671 -U 8332 ; WX 528 ; N uni208C ; G 2672 -U 8333 ; WX 288 ; N uni208D ; G 2673 -U 8334 ; WX 288 ; N uni208E ; G 2674 -U 8336 ; WX 458 ; N uni2090 ; G 2675 -U 8337 ; WX 479 ; N uni2091 ; G 2676 -U 8338 ; WX 488 ; N uni2092 ; G 2677 -U 8339 ; WX 413 ; N uni2093 ; G 2678 -U 8340 ; WX 479 ; N uni2094 ; G 2679 -U 8341 ; WX 456 ; N uni2095 ; G 2680 -U 8342 ; WX 487 ; N uni2096 ; G 2681 -U 8343 ; WX 219 ; N uni2097 ; G 2682 -U 8344 ; WX 664 ; N uni2098 ; G 2683 -U 8345 ; WX 456 ; N uni2099 ; G 2684 -U 8346 ; WX 479 ; N uni209A ; G 2685 -U 8347 ; WX 381 ; N uni209B ; G 2686 -U 8348 ; WX 388 ; N uni209C ; G 2687 -U 8352 ; WX 929 ; N uni20A0 ; G 2688 -U 8353 ; WX 696 ; N colonmonetary ; G 2689 -U 8354 ; WX 696 ; N uni20A2 ; G 2690 -U 8355 ; WX 696 ; N franc ; G 2691 -U 8356 ; WX 696 ; N lira ; G 2692 -U 8357 ; WX 1042 ; N uni20A5 ; G 2693 -U 8358 ; WX 696 ; N uni20A6 ; G 2694 -U 8359 ; WX 1488 ; N peseta ; G 2695 -U 8360 ; WX 1205 ; N uni20A8 ; G 2696 -U 8361 ; WX 1103 ; N uni20A9 ; G 2697 -U 8362 ; WX 854 ; N uni20AA ; G 2698 -U 8363 ; WX 696 ; N dong ; G 2699 -U 8364 ; WX 696 ; N Euro ; G 2700 -U 8365 ; WX 696 ; N uni20AD ; G 2701 -U 8366 ; WX 696 ; N uni20AE ; G 2702 -U 8367 ; WX 1392 ; N uni20AF ; G 2703 -U 8368 ; WX 696 ; N uni20B0 ; G 2704 -U 8369 ; WX 696 ; N uni20B1 ; G 2705 -U 8370 ; WX 696 ; N uni20B2 ; G 2706 -U 8371 ; WX 696 ; N uni20B3 ; G 2707 -U 8372 ; WX 859 ; N uni20B4 ; G 2708 -U 8373 ; WX 696 ; N uni20B5 ; G 2709 -U 8376 ; WX 696 ; N uni20B8 ; G 2710 -U 8377 ; WX 696 ; N uni20B9 ; G 2711 -U 8378 ; WX 696 ; N uni20BA ; G 2712 -U 8381 ; WX 696 ; N uni20BD ; G 2713 -U 8400 ; WX 0 ; N uni20D0 ; G 2714 -U 8401 ; WX 0 ; N uni20D1 ; G 2715 -U 8406 ; WX 0 ; N uni20D6 ; G 2716 -U 8407 ; WX 0 ; N uni20D7 ; G 2717 -U 8411 ; WX 0 ; N uni20DB ; G 2718 -U 8412 ; WX 0 ; N uni20DC ; G 2719 -U 8417 ; WX 0 ; N uni20E1 ; G 2720 -U 8448 ; WX 1106 ; N uni2100 ; G 2721 -U 8449 ; WX 1106 ; N uni2101 ; G 2722 -U 8450 ; WX 734 ; N uni2102 ; G 2723 -U 8451 ; WX 1211 ; N uni2103 ; G 2724 -U 8452 ; WX 896 ; N uni2104 ; G 2725 -U 8453 ; WX 1114 ; N uni2105 ; G 2726 -U 8454 ; WX 1148 ; N uni2106 ; G 2727 -U 8455 ; WX 696 ; N uni2107 ; G 2728 -U 8456 ; WX 698 ; N uni2108 ; G 2729 -U 8457 ; WX 952 ; N uni2109 ; G 2730 -U 8459 ; WX 1073 ; N uni210B ; G 2731 -U 8460 ; WX 913 ; N uni210C ; G 2732 -U 8461 ; WX 888 ; N uni210D ; G 2733 -U 8462 ; WX 712 ; N uni210E ; G 2734 -U 8463 ; WX 712 ; N uni210F ; G 2735 -U 8464 ; WX 597 ; N uni2110 ; G 2736 -U 8465 ; WX 697 ; N Ifraktur ; G 2737 -U 8466 ; WX 856 ; N uni2112 ; G 2738 -U 8467 ; WX 472 ; N uni2113 ; G 2739 -U 8468 ; WX 974 ; N uni2114 ; G 2740 -U 8469 ; WX 837 ; N uni2115 ; G 2741 -U 8470 ; WX 1203 ; N uni2116 ; G 2742 -U 8471 ; WX 1000 ; N uni2117 ; G 2743 -U 8472 ; WX 697 ; N weierstrass ; G 2744 -U 8473 ; WX 750 ; N uni2119 ; G 2745 -U 8474 ; WX 850 ; N uni211A ; G 2746 -U 8475 ; WX 938 ; N uni211B ; G 2747 -U 8476 ; WX 814 ; N Rfraktur ; G 2748 -U 8477 ; WX 801 ; N uni211D ; G 2749 -U 8478 ; WX 896 ; N prescription ; G 2750 -U 8479 ; WX 710 ; N uni211F ; G 2751 -U 8480 ; WX 1020 ; N uni2120 ; G 2752 -U 8481 ; WX 1239 ; N uni2121 ; G 2753 -U 8482 ; WX 1000 ; N trademark ; G 2754 -U 8483 ; WX 834 ; N uni2123 ; G 2755 -U 8484 ; WX 754 ; N uni2124 ; G 2756 -U 8485 ; WX 622 ; N uni2125 ; G 2757 -U 8486 ; WX 850 ; N uni2126 ; G 2758 -U 8487 ; WX 769 ; N uni2127 ; G 2759 -U 8488 ; WX 763 ; N uni2128 ; G 2760 -U 8489 ; WX 303 ; N uni2129 ; G 2761 -U 8490 ; WX 775 ; N uni212A ; G 2762 -U 8491 ; WX 774 ; N uni212B ; G 2763 -U 8492 ; WX 928 ; N uni212C ; G 2764 -U 8493 ; WX 818 ; N uni212D ; G 2765 -U 8494 ; WX 854 ; N estimated ; G 2766 -U 8495 ; WX 636 ; N uni212F ; G 2767 -U 8496 ; WX 729 ; N uni2130 ; G 2768 -U 8497 ; WX 808 ; N uni2131 ; G 2769 -U 8498 ; WX 683 ; N uni2132 ; G 2770 -U 8499 ; WX 1184 ; N uni2133 ; G 2771 -U 8500 ; WX 465 ; N uni2134 ; G 2772 -U 8501 ; WX 794 ; N aleph ; G 2773 -U 8502 ; WX 731 ; N uni2136 ; G 2774 -U 8503 ; WX 494 ; N uni2137 ; G 2775 -U 8504 ; WX 684 ; N uni2138 ; G 2776 -U 8505 ; WX 380 ; N uni2139 ; G 2777 -U 8506 ; WX 945 ; N uni213A ; G 2778 -U 8507 ; WX 1370 ; N uni213B ; G 2779 -U 8508 ; WX 790 ; N uni213C ; G 2780 -U 8509 ; WX 737 ; N uni213D ; G 2781 -U 8510 ; WX 654 ; N uni213E ; G 2782 -U 8511 ; WX 863 ; N uni213F ; G 2783 -U 8512 ; WX 840 ; N uni2140 ; G 2784 -U 8513 ; WX 786 ; N uni2141 ; G 2785 -U 8514 ; WX 576 ; N uni2142 ; G 2786 -U 8515 ; WX 637 ; N uni2143 ; G 2787 -U 8516 ; WX 760 ; N uni2144 ; G 2788 -U 8517 ; WX 830 ; N uni2145 ; G 2789 -U 8518 ; WX 716 ; N uni2146 ; G 2790 -U 8519 ; WX 678 ; N uni2147 ; G 2791 -U 8520 ; WX 343 ; N uni2148 ; G 2792 -U 8521 ; WX 343 ; N uni2149 ; G 2793 -U 8523 ; WX 872 ; N uni214B ; G 2794 -U 8526 ; WX 547 ; N uni214E ; G 2795 -U 8528 ; WX 1035 ; N uni2150 ; G 2796 -U 8529 ; WX 1035 ; N uni2151 ; G 2797 -U 8530 ; WX 1483 ; N uni2152 ; G 2798 -U 8531 ; WX 1035 ; N onethird ; G 2799 -U 8532 ; WX 1035 ; N twothirds ; G 2800 -U 8533 ; WX 1035 ; N uni2155 ; G 2801 -U 8534 ; WX 1035 ; N uni2156 ; G 2802 -U 8535 ; WX 1035 ; N uni2157 ; G 2803 -U 8536 ; WX 1035 ; N uni2158 ; G 2804 -U 8537 ; WX 1035 ; N uni2159 ; G 2805 -U 8538 ; WX 1035 ; N uni215A ; G 2806 -U 8539 ; WX 1035 ; N oneeighth ; G 2807 -U 8540 ; WX 1035 ; N threeeighths ; G 2808 -U 8541 ; WX 1035 ; N fiveeighths ; G 2809 -U 8542 ; WX 1035 ; N seveneighths ; G 2810 -U 8543 ; WX 615 ; N uni215F ; G 2811 -U 8544 ; WX 372 ; N uni2160 ; G 2812 -U 8545 ; WX 659 ; N uni2161 ; G 2813 -U 8546 ; WX 945 ; N uni2162 ; G 2814 -U 8547 ; WX 1099 ; N uni2163 ; G 2815 -U 8548 ; WX 774 ; N uni2164 ; G 2816 -U 8549 ; WX 1099 ; N uni2165 ; G 2817 -U 8550 ; WX 1386 ; N uni2166 ; G 2818 -U 8551 ; WX 1672 ; N uni2167 ; G 2819 -U 8552 ; WX 1121 ; N uni2168 ; G 2820 -U 8553 ; WX 771 ; N uni2169 ; G 2821 -U 8554 ; WX 1120 ; N uni216A ; G 2822 -U 8555 ; WX 1407 ; N uni216B ; G 2823 -U 8556 ; WX 637 ; N uni216C ; G 2824 -U 8557 ; WX 734 ; N uni216D ; G 2825 -U 8558 ; WX 830 ; N uni216E ; G 2826 -U 8559 ; WX 995 ; N uni216F ; G 2827 -U 8560 ; WX 343 ; N uni2170 ; G 2828 -U 8561 ; WX 607 ; N uni2171 ; G 2829 -U 8562 ; WX 872 ; N uni2172 ; G 2830 -U 8563 ; WX 984 ; N uni2173 ; G 2831 -U 8564 ; WX 652 ; N uni2174 ; G 2832 -U 8565 ; WX 962 ; N uni2175 ; G 2833 -U 8566 ; WX 1227 ; N uni2176 ; G 2834 -U 8567 ; WX 1491 ; N uni2177 ; G 2835 -U 8568 ; WX 969 ; N uni2178 ; G 2836 -U 8569 ; WX 645 ; N uni2179 ; G 2837 -U 8570 ; WX 969 ; N uni217A ; G 2838 -U 8571 ; WX 1233 ; N uni217B ; G 2839 -U 8572 ; WX 343 ; N uni217C ; G 2840 -U 8573 ; WX 593 ; N uni217D ; G 2841 -U 8574 ; WX 716 ; N uni217E ; G 2842 -U 8575 ; WX 1042 ; N uni217F ; G 2843 -U 8576 ; WX 1289 ; N uni2180 ; G 2844 -U 8577 ; WX 830 ; N uni2181 ; G 2845 -U 8578 ; WX 1289 ; N uni2182 ; G 2846 -U 8579 ; WX 734 ; N uni2183 ; G 2847 -U 8580 ; WX 593 ; N uni2184 ; G 2848 -U 8581 ; WX 734 ; N uni2185 ; G 2849 -U 8585 ; WX 1035 ; N uni2189 ; G 2850 -U 8592 ; WX 838 ; N arrowleft ; G 2851 -U 8593 ; WX 838 ; N arrowup ; G 2852 -U 8594 ; WX 838 ; N arrowright ; G 2853 -U 8595 ; WX 838 ; N arrowdown ; G 2854 -U 8596 ; WX 838 ; N arrowboth ; G 2855 -U 8597 ; WX 838 ; N arrowupdn ; G 2856 -U 8598 ; WX 838 ; N uni2196 ; G 2857 -U 8599 ; WX 838 ; N uni2197 ; G 2858 -U 8600 ; WX 838 ; N uni2198 ; G 2859 -U 8601 ; WX 838 ; N uni2199 ; G 2860 -U 8602 ; WX 838 ; N uni219A ; G 2861 -U 8603 ; WX 838 ; N uni219B ; G 2862 -U 8604 ; WX 838 ; N uni219C ; G 2863 -U 8605 ; WX 838 ; N uni219D ; G 2864 -U 8606 ; WX 838 ; N uni219E ; G 2865 -U 8607 ; WX 838 ; N uni219F ; G 2866 -U 8608 ; WX 838 ; N uni21A0 ; G 2867 -U 8609 ; WX 838 ; N uni21A1 ; G 2868 -U 8610 ; WX 838 ; N uni21A2 ; G 2869 -U 8611 ; WX 838 ; N uni21A3 ; G 2870 -U 8612 ; WX 838 ; N uni21A4 ; G 2871 -U 8613 ; WX 838 ; N uni21A5 ; G 2872 -U 8614 ; WX 838 ; N uni21A6 ; G 2873 -U 8615 ; WX 838 ; N uni21A7 ; G 2874 -U 8616 ; WX 838 ; N arrowupdnbse ; G 2875 -U 8617 ; WX 838 ; N uni21A9 ; G 2876 -U 8618 ; WX 838 ; N uni21AA ; G 2877 -U 8619 ; WX 838 ; N uni21AB ; G 2878 -U 8620 ; WX 838 ; N uni21AC ; G 2879 -U 8621 ; WX 838 ; N uni21AD ; G 2880 -U 8622 ; WX 838 ; N uni21AE ; G 2881 -U 8623 ; WX 838 ; N uni21AF ; G 2882 -U 8624 ; WX 838 ; N uni21B0 ; G 2883 -U 8625 ; WX 838 ; N uni21B1 ; G 2884 -U 8626 ; WX 838 ; N uni21B2 ; G 2885 -U 8627 ; WX 838 ; N uni21B3 ; G 2886 -U 8628 ; WX 838 ; N uni21B4 ; G 2887 -U 8629 ; WX 838 ; N carriagereturn ; G 2888 -U 8630 ; WX 838 ; N uni21B6 ; G 2889 -U 8631 ; WX 838 ; N uni21B7 ; G 2890 -U 8632 ; WX 838 ; N uni21B8 ; G 2891 -U 8633 ; WX 838 ; N uni21B9 ; G 2892 -U 8634 ; WX 838 ; N uni21BA ; G 2893 -U 8635 ; WX 838 ; N uni21BB ; G 2894 -U 8636 ; WX 838 ; N uni21BC ; G 2895 -U 8637 ; WX 838 ; N uni21BD ; G 2896 -U 8638 ; WX 838 ; N uni21BE ; G 2897 -U 8639 ; WX 838 ; N uni21BF ; G 2898 -U 8640 ; WX 838 ; N uni21C0 ; G 2899 -U 8641 ; WX 838 ; N uni21C1 ; G 2900 -U 8642 ; WX 838 ; N uni21C2 ; G 2901 -U 8643 ; WX 838 ; N uni21C3 ; G 2902 -U 8644 ; WX 838 ; N uni21C4 ; G 2903 -U 8645 ; WX 838 ; N uni21C5 ; G 2904 -U 8646 ; WX 838 ; N uni21C6 ; G 2905 -U 8647 ; WX 838 ; N uni21C7 ; G 2906 -U 8648 ; WX 838 ; N uni21C8 ; G 2907 -U 8649 ; WX 838 ; N uni21C9 ; G 2908 -U 8650 ; WX 838 ; N uni21CA ; G 2909 -U 8651 ; WX 838 ; N uni21CB ; G 2910 -U 8652 ; WX 838 ; N uni21CC ; G 2911 -U 8653 ; WX 838 ; N uni21CD ; G 2912 -U 8654 ; WX 838 ; N uni21CE ; G 2913 -U 8655 ; WX 838 ; N uni21CF ; G 2914 -U 8656 ; WX 838 ; N arrowdblleft ; G 2915 -U 8657 ; WX 838 ; N arrowdblup ; G 2916 -U 8658 ; WX 838 ; N arrowdblright ; G 2917 -U 8659 ; WX 838 ; N arrowdbldown ; G 2918 -U 8660 ; WX 838 ; N arrowdblboth ; G 2919 -U 8661 ; WX 838 ; N uni21D5 ; G 2920 -U 8662 ; WX 838 ; N uni21D6 ; G 2921 -U 8663 ; WX 838 ; N uni21D7 ; G 2922 -U 8664 ; WX 838 ; N uni21D8 ; G 2923 -U 8665 ; WX 838 ; N uni21D9 ; G 2924 -U 8666 ; WX 838 ; N uni21DA ; G 2925 -U 8667 ; WX 838 ; N uni21DB ; G 2926 -U 8668 ; WX 838 ; N uni21DC ; G 2927 -U 8669 ; WX 838 ; N uni21DD ; G 2928 -U 8670 ; WX 838 ; N uni21DE ; G 2929 -U 8671 ; WX 838 ; N uni21DF ; G 2930 -U 8672 ; WX 838 ; N uni21E0 ; G 2931 -U 8673 ; WX 838 ; N uni21E1 ; G 2932 -U 8674 ; WX 838 ; N uni21E2 ; G 2933 -U 8675 ; WX 838 ; N uni21E3 ; G 2934 -U 8676 ; WX 838 ; N uni21E4 ; G 2935 -U 8677 ; WX 838 ; N uni21E5 ; G 2936 -U 8678 ; WX 838 ; N uni21E6 ; G 2937 -U 8679 ; WX 838 ; N uni21E7 ; G 2938 -U 8680 ; WX 838 ; N uni21E8 ; G 2939 -U 8681 ; WX 838 ; N uni21E9 ; G 2940 -U 8682 ; WX 838 ; N uni21EA ; G 2941 -U 8683 ; WX 838 ; N uni21EB ; G 2942 -U 8684 ; WX 838 ; N uni21EC ; G 2943 -U 8685 ; WX 838 ; N uni21ED ; G 2944 -U 8686 ; WX 838 ; N uni21EE ; G 2945 -U 8687 ; WX 838 ; N uni21EF ; G 2946 -U 8688 ; WX 838 ; N uni21F0 ; G 2947 -U 8689 ; WX 838 ; N uni21F1 ; G 2948 -U 8690 ; WX 838 ; N uni21F2 ; G 2949 -U 8691 ; WX 838 ; N uni21F3 ; G 2950 -U 8692 ; WX 838 ; N uni21F4 ; G 2951 -U 8693 ; WX 838 ; N uni21F5 ; G 2952 -U 8694 ; WX 838 ; N uni21F6 ; G 2953 -U 8695 ; WX 838 ; N uni21F7 ; G 2954 -U 8696 ; WX 838 ; N uni21F8 ; G 2955 -U 8697 ; WX 838 ; N uni21F9 ; G 2956 -U 8698 ; WX 838 ; N uni21FA ; G 2957 -U 8699 ; WX 838 ; N uni21FB ; G 2958 -U 8700 ; WX 838 ; N uni21FC ; G 2959 -U 8701 ; WX 838 ; N uni21FD ; G 2960 -U 8702 ; WX 838 ; N uni21FE ; G 2961 -U 8703 ; WX 838 ; N uni21FF ; G 2962 -U 8704 ; WX 774 ; N universal ; G 2963 -U 8705 ; WX 696 ; N uni2201 ; G 2964 -U 8706 ; WX 544 ; N partialdiff ; G 2965 -U 8707 ; WX 683 ; N existential ; G 2966 -U 8708 ; WX 683 ; N uni2204 ; G 2967 -U 8709 ; WX 856 ; N emptyset ; G 2968 -U 8710 ; WX 697 ; N increment ; G 2969 -U 8711 ; WX 697 ; N gradient ; G 2970 -U 8712 ; WX 896 ; N element ; G 2971 -U 8713 ; WX 896 ; N notelement ; G 2972 -U 8714 ; WX 750 ; N uni220A ; G 2973 -U 8715 ; WX 896 ; N suchthat ; G 2974 -U 8716 ; WX 896 ; N uni220C ; G 2975 -U 8717 ; WX 750 ; N uni220D ; G 2976 -U 8718 ; WX 636 ; N uni220E ; G 2977 -U 8719 ; WX 787 ; N product ; G 2978 -U 8720 ; WX 787 ; N uni2210 ; G 2979 -U 8721 ; WX 718 ; N summation ; G 2980 -U 8722 ; WX 838 ; N minus ; G 2981 -U 8723 ; WX 838 ; N uni2213 ; G 2982 -U 8724 ; WX 696 ; N uni2214 ; G 2983 -U 8725 ; WX 365 ; N uni2215 ; G 2984 -U 8726 ; WX 696 ; N uni2216 ; G 2985 -U 8727 ; WX 838 ; N asteriskmath ; G 2986 -U 8728 ; WX 626 ; N uni2218 ; G 2987 -U 8729 ; WX 380 ; N uni2219 ; G 2988 -U 8730 ; WX 667 ; N radical ; G 2989 -U 8731 ; WX 667 ; N uni221B ; G 2990 -U 8732 ; WX 667 ; N uni221C ; G 2991 -U 8733 ; WX 712 ; N proportional ; G 2992 -U 8734 ; WX 833 ; N infinity ; G 2993 -U 8735 ; WX 838 ; N orthogonal ; G 2994 -U 8736 ; WX 896 ; N angle ; G 2995 -U 8737 ; WX 896 ; N uni2221 ; G 2996 -U 8738 ; WX 838 ; N uni2222 ; G 2997 -U 8739 ; WX 500 ; N uni2223 ; G 2998 -U 8740 ; WX 500 ; N uni2224 ; G 2999 -U 8741 ; WX 500 ; N uni2225 ; G 3000 -U 8742 ; WX 500 ; N uni2226 ; G 3001 -U 8743 ; WX 812 ; N logicaland ; G 3002 -U 8744 ; WX 812 ; N logicalor ; G 3003 -U 8745 ; WX 812 ; N intersection ; G 3004 -U 8746 ; WX 812 ; N union ; G 3005 -U 8747 ; WX 610 ; N integral ; G 3006 -U 8748 ; WX 929 ; N uni222C ; G 3007 -U 8749 ; WX 1295 ; N uni222D ; G 3008 -U 8750 ; WX 563 ; N uni222E ; G 3009 -U 8751 ; WX 977 ; N uni222F ; G 3010 -U 8752 ; WX 1313 ; N uni2230 ; G 3011 -U 8753 ; WX 563 ; N uni2231 ; G 3012 -U 8754 ; WX 563 ; N uni2232 ; G 3013 -U 8755 ; WX 563 ; N uni2233 ; G 3014 -U 8756 ; WX 696 ; N therefore ; G 3015 -U 8757 ; WX 696 ; N uni2235 ; G 3016 -U 8758 ; WX 294 ; N uni2236 ; G 3017 -U 8759 ; WX 696 ; N uni2237 ; G 3018 -U 8760 ; WX 838 ; N uni2238 ; G 3019 -U 8761 ; WX 838 ; N uni2239 ; G 3020 -U 8762 ; WX 838 ; N uni223A ; G 3021 -U 8763 ; WX 838 ; N uni223B ; G 3022 -U 8764 ; WX 838 ; N similar ; G 3023 -U 8765 ; WX 838 ; N uni223D ; G 3024 -U 8766 ; WX 838 ; N uni223E ; G 3025 -U 8767 ; WX 838 ; N uni223F ; G 3026 -U 8768 ; WX 375 ; N uni2240 ; G 3027 -U 8769 ; WX 838 ; N uni2241 ; G 3028 -U 8770 ; WX 838 ; N uni2242 ; G 3029 -U 8771 ; WX 838 ; N uni2243 ; G 3030 -U 8772 ; WX 838 ; N uni2244 ; G 3031 -U 8773 ; WX 838 ; N congruent ; G 3032 -U 8774 ; WX 838 ; N uni2246 ; G 3033 -U 8775 ; WX 838 ; N uni2247 ; G 3034 -U 8776 ; WX 838 ; N approxequal ; G 3035 -U 8777 ; WX 838 ; N uni2249 ; G 3036 -U 8778 ; WX 838 ; N uni224A ; G 3037 -U 8779 ; WX 838 ; N uni224B ; G 3038 -U 8780 ; WX 838 ; N uni224C ; G 3039 -U 8781 ; WX 838 ; N uni224D ; G 3040 -U 8782 ; WX 838 ; N uni224E ; G 3041 -U 8783 ; WX 838 ; N uni224F ; G 3042 -U 8784 ; WX 838 ; N uni2250 ; G 3043 -U 8785 ; WX 838 ; N uni2251 ; G 3044 -U 8786 ; WX 838 ; N uni2252 ; G 3045 -U 8787 ; WX 838 ; N uni2253 ; G 3046 -U 8788 ; WX 1063 ; N uni2254 ; G 3047 -U 8789 ; WX 1063 ; N uni2255 ; G 3048 -U 8790 ; WX 838 ; N uni2256 ; G 3049 -U 8791 ; WX 838 ; N uni2257 ; G 3050 -U 8792 ; WX 838 ; N uni2258 ; G 3051 -U 8793 ; WX 838 ; N uni2259 ; G 3052 -U 8794 ; WX 838 ; N uni225A ; G 3053 -U 8795 ; WX 838 ; N uni225B ; G 3054 -U 8796 ; WX 838 ; N uni225C ; G 3055 -U 8797 ; WX 838 ; N uni225D ; G 3056 -U 8798 ; WX 838 ; N uni225E ; G 3057 -U 8799 ; WX 838 ; N uni225F ; G 3058 -U 8800 ; WX 838 ; N notequal ; G 3059 -U 8801 ; WX 838 ; N equivalence ; G 3060 -U 8802 ; WX 838 ; N uni2262 ; G 3061 -U 8803 ; WX 838 ; N uni2263 ; G 3062 -U 8804 ; WX 838 ; N lessequal ; G 3063 -U 8805 ; WX 838 ; N greaterequal ; G 3064 -U 8806 ; WX 838 ; N uni2266 ; G 3065 -U 8807 ; WX 838 ; N uni2267 ; G 3066 -U 8808 ; WX 841 ; N uni2268 ; G 3067 -U 8809 ; WX 841 ; N uni2269 ; G 3068 -U 8810 ; WX 1047 ; N uni226A ; G 3069 -U 8811 ; WX 1047 ; N uni226B ; G 3070 -U 8812 ; WX 500 ; N uni226C ; G 3071 -U 8813 ; WX 838 ; N uni226D ; G 3072 -U 8814 ; WX 838 ; N uni226E ; G 3073 -U 8815 ; WX 838 ; N uni226F ; G 3074 -U 8816 ; WX 838 ; N uni2270 ; G 3075 -U 8817 ; WX 838 ; N uni2271 ; G 3076 -U 8818 ; WX 838 ; N uni2272 ; G 3077 -U 8819 ; WX 838 ; N uni2273 ; G 3078 -U 8820 ; WX 838 ; N uni2274 ; G 3079 -U 8821 ; WX 838 ; N uni2275 ; G 3080 -U 8822 ; WX 838 ; N uni2276 ; G 3081 -U 8823 ; WX 838 ; N uni2277 ; G 3082 -U 8824 ; WX 838 ; N uni2278 ; G 3083 -U 8825 ; WX 838 ; N uni2279 ; G 3084 -U 8826 ; WX 838 ; N uni227A ; G 3085 -U 8827 ; WX 838 ; N uni227B ; G 3086 -U 8828 ; WX 838 ; N uni227C ; G 3087 -U 8829 ; WX 838 ; N uni227D ; G 3088 -U 8830 ; WX 838 ; N uni227E ; G 3089 -U 8831 ; WX 838 ; N uni227F ; G 3090 -U 8832 ; WX 838 ; N uni2280 ; G 3091 -U 8833 ; WX 838 ; N uni2281 ; G 3092 -U 8834 ; WX 838 ; N propersubset ; G 3093 -U 8835 ; WX 838 ; N propersuperset ; G 3094 -U 8836 ; WX 838 ; N notsubset ; G 3095 -U 8837 ; WX 838 ; N uni2285 ; G 3096 -U 8838 ; WX 838 ; N reflexsubset ; G 3097 -U 8839 ; WX 838 ; N reflexsuperset ; G 3098 -U 8840 ; WX 838 ; N uni2288 ; G 3099 -U 8841 ; WX 838 ; N uni2289 ; G 3100 -U 8842 ; WX 838 ; N uni228A ; G 3101 -U 8843 ; WX 838 ; N uni228B ; G 3102 -U 8844 ; WX 812 ; N uni228C ; G 3103 -U 8845 ; WX 812 ; N uni228D ; G 3104 -U 8846 ; WX 812 ; N uni228E ; G 3105 -U 8847 ; WX 838 ; N uni228F ; G 3106 -U 8848 ; WX 838 ; N uni2290 ; G 3107 -U 8849 ; WX 838 ; N uni2291 ; G 3108 -U 8850 ; WX 838 ; N uni2292 ; G 3109 -U 8851 ; WX 796 ; N uni2293 ; G 3110 -U 8852 ; WX 796 ; N uni2294 ; G 3111 -U 8853 ; WX 838 ; N circleplus ; G 3112 -U 8854 ; WX 838 ; N uni2296 ; G 3113 -U 8855 ; WX 838 ; N circlemultiply ; G 3114 -U 8856 ; WX 838 ; N uni2298 ; G 3115 -U 8857 ; WX 838 ; N uni2299 ; G 3116 -U 8858 ; WX 838 ; N uni229A ; G 3117 -U 8859 ; WX 838 ; N uni229B ; G 3118 -U 8860 ; WX 838 ; N uni229C ; G 3119 -U 8861 ; WX 838 ; N uni229D ; G 3120 -U 8862 ; WX 838 ; N uni229E ; G 3121 -U 8863 ; WX 838 ; N uni229F ; G 3122 -U 8864 ; WX 838 ; N uni22A0 ; G 3123 -U 8865 ; WX 838 ; N uni22A1 ; G 3124 -U 8866 ; WX 914 ; N uni22A2 ; G 3125 -U 8867 ; WX 914 ; N uni22A3 ; G 3126 -U 8868 ; WX 914 ; N uni22A4 ; G 3127 -U 8869 ; WX 914 ; N perpendicular ; G 3128 -U 8870 ; WX 542 ; N uni22A6 ; G 3129 -U 8871 ; WX 542 ; N uni22A7 ; G 3130 -U 8872 ; WX 914 ; N uni22A8 ; G 3131 -U 8873 ; WX 914 ; N uni22A9 ; G 3132 -U 8874 ; WX 914 ; N uni22AA ; G 3133 -U 8875 ; WX 914 ; N uni22AB ; G 3134 -U 8876 ; WX 914 ; N uni22AC ; G 3135 -U 8877 ; WX 914 ; N uni22AD ; G 3136 -U 8878 ; WX 914 ; N uni22AE ; G 3137 -U 8879 ; WX 914 ; N uni22AF ; G 3138 -U 8880 ; WX 838 ; N uni22B0 ; G 3139 -U 8881 ; WX 838 ; N uni22B1 ; G 3140 -U 8882 ; WX 838 ; N uni22B2 ; G 3141 -U 8883 ; WX 838 ; N uni22B3 ; G 3142 -U 8884 ; WX 838 ; N uni22B4 ; G 3143 -U 8885 ; WX 838 ; N uni22B5 ; G 3144 -U 8886 ; WX 1000 ; N uni22B6 ; G 3145 -U 8887 ; WX 1000 ; N uni22B7 ; G 3146 -U 8888 ; WX 838 ; N uni22B8 ; G 3147 -U 8889 ; WX 838 ; N uni22B9 ; G 3148 -U 8890 ; WX 542 ; N uni22BA ; G 3149 -U 8891 ; WX 812 ; N uni22BB ; G 3150 -U 8892 ; WX 812 ; N uni22BC ; G 3151 -U 8893 ; WX 812 ; N uni22BD ; G 3152 -U 8894 ; WX 838 ; N uni22BE ; G 3153 -U 8895 ; WX 838 ; N uni22BF ; G 3154 -U 8896 ; WX 843 ; N uni22C0 ; G 3155 -U 8897 ; WX 843 ; N uni22C1 ; G 3156 -U 8898 ; WX 843 ; N uni22C2 ; G 3157 -U 8899 ; WX 843 ; N uni22C3 ; G 3158 -U 8900 ; WX 626 ; N uni22C4 ; G 3159 -U 8901 ; WX 380 ; N dotmath ; G 3160 -U 8902 ; WX 626 ; N uni22C6 ; G 3161 -U 8903 ; WX 838 ; N uni22C7 ; G 3162 -U 8904 ; WX 1000 ; N uni22C8 ; G 3163 -U 8905 ; WX 1000 ; N uni22C9 ; G 3164 -U 8906 ; WX 1000 ; N uni22CA ; G 3165 -U 8907 ; WX 1000 ; N uni22CB ; G 3166 -U 8908 ; WX 1000 ; N uni22CC ; G 3167 -U 8909 ; WX 838 ; N uni22CD ; G 3168 -U 8910 ; WX 812 ; N uni22CE ; G 3169 -U 8911 ; WX 812 ; N uni22CF ; G 3170 -U 8912 ; WX 838 ; N uni22D0 ; G 3171 -U 8913 ; WX 838 ; N uni22D1 ; G 3172 -U 8914 ; WX 838 ; N uni22D2 ; G 3173 -U 8915 ; WX 838 ; N uni22D3 ; G 3174 -U 8916 ; WX 838 ; N uni22D4 ; G 3175 -U 8917 ; WX 838 ; N uni22D5 ; G 3176 -U 8918 ; WX 838 ; N uni22D6 ; G 3177 -U 8919 ; WX 838 ; N uni22D7 ; G 3178 -U 8920 ; WX 1422 ; N uni22D8 ; G 3179 -U 8921 ; WX 1422 ; N uni22D9 ; G 3180 -U 8922 ; WX 838 ; N uni22DA ; G 3181 -U 8923 ; WX 838 ; N uni22DB ; G 3182 -U 8924 ; WX 838 ; N uni22DC ; G 3183 -U 8925 ; WX 838 ; N uni22DD ; G 3184 -U 8926 ; WX 838 ; N uni22DE ; G 3185 -U 8927 ; WX 838 ; N uni22DF ; G 3186 -U 8928 ; WX 838 ; N uni22E0 ; G 3187 -U 8929 ; WX 838 ; N uni22E1 ; G 3188 -U 8930 ; WX 838 ; N uni22E2 ; G 3189 -U 8931 ; WX 838 ; N uni22E3 ; G 3190 -U 8932 ; WX 838 ; N uni22E4 ; G 3191 -U 8933 ; WX 838 ; N uni22E5 ; G 3192 -U 8934 ; WX 838 ; N uni22E6 ; G 3193 -U 8935 ; WX 838 ; N uni22E7 ; G 3194 -U 8936 ; WX 838 ; N uni22E8 ; G 3195 -U 8937 ; WX 838 ; N uni22E9 ; G 3196 -U 8938 ; WX 838 ; N uni22EA ; G 3197 -U 8939 ; WX 838 ; N uni22EB ; G 3198 -U 8940 ; WX 838 ; N uni22EC ; G 3199 -U 8941 ; WX 838 ; N uni22ED ; G 3200 -U 8942 ; WX 1000 ; N uni22EE ; G 3201 -U 8943 ; WX 1000 ; N uni22EF ; G 3202 -U 8944 ; WX 1000 ; N uni22F0 ; G 3203 -U 8945 ; WX 1000 ; N uni22F1 ; G 3204 -U 8946 ; WX 1158 ; N uni22F2 ; G 3205 -U 8947 ; WX 896 ; N uni22F3 ; G 3206 -U 8948 ; WX 750 ; N uni22F4 ; G 3207 -U 8949 ; WX 896 ; N uni22F5 ; G 3208 -U 8950 ; WX 896 ; N uni22F6 ; G 3209 -U 8951 ; WX 750 ; N uni22F7 ; G 3210 -U 8952 ; WX 896 ; N uni22F8 ; G 3211 -U 8953 ; WX 896 ; N uni22F9 ; G 3212 -U 8954 ; WX 1158 ; N uni22FA ; G 3213 -U 8955 ; WX 896 ; N uni22FB ; G 3214 -U 8956 ; WX 750 ; N uni22FC ; G 3215 -U 8957 ; WX 896 ; N uni22FD ; G 3216 -U 8958 ; WX 750 ; N uni22FE ; G 3217 -U 8959 ; WX 896 ; N uni22FF ; G 3218 -U 8960 ; WX 602 ; N uni2300 ; G 3219 -U 8961 ; WX 602 ; N uni2301 ; G 3220 -U 8962 ; WX 716 ; N house ; G 3221 -U 8963 ; WX 838 ; N uni2303 ; G 3222 -U 8964 ; WX 838 ; N uni2304 ; G 3223 -U 8965 ; WX 838 ; N uni2305 ; G 3224 -U 8966 ; WX 838 ; N uni2306 ; G 3225 -U 8967 ; WX 488 ; N uni2307 ; G 3226 -U 8968 ; WX 457 ; N uni2308 ; G 3227 -U 8969 ; WX 457 ; N uni2309 ; G 3228 -U 8970 ; WX 457 ; N uni230A ; G 3229 -U 8971 ; WX 457 ; N uni230B ; G 3230 -U 8972 ; WX 809 ; N uni230C ; G 3231 -U 8973 ; WX 809 ; N uni230D ; G 3232 -U 8974 ; WX 809 ; N uni230E ; G 3233 -U 8975 ; WX 809 ; N uni230F ; G 3234 -U 8976 ; WX 838 ; N revlogicalnot ; G 3235 -U 8977 ; WX 539 ; N uni2311 ; G 3236 -U 8984 ; WX 928 ; N uni2318 ; G 3237 -U 8985 ; WX 838 ; N uni2319 ; G 3238 -U 8988 ; WX 469 ; N uni231C ; G 3239 -U 8989 ; WX 469 ; N uni231D ; G 3240 -U 8990 ; WX 469 ; N uni231E ; G 3241 -U 8991 ; WX 469 ; N uni231F ; G 3242 -U 8992 ; WX 610 ; N integraltp ; G 3243 -U 8993 ; WX 610 ; N integralbt ; G 3244 -U 8996 ; WX 1152 ; N uni2324 ; G 3245 -U 8997 ; WX 1152 ; N uni2325 ; G 3246 -U 8998 ; WX 1414 ; N uni2326 ; G 3247 -U 8999 ; WX 1152 ; N uni2327 ; G 3248 -U 9000 ; WX 1443 ; N uni2328 ; G 3249 -U 9003 ; WX 1414 ; N uni232B ; G 3250 -U 9004 ; WX 873 ; N uni232C ; G 3251 -U 9075 ; WX 390 ; N uni2373 ; G 3252 -U 9076 ; WX 716 ; N uni2374 ; G 3253 -U 9077 ; WX 869 ; N uni2375 ; G 3254 -U 9082 ; WX 687 ; N uni237A ; G 3255 -U 9085 ; WX 863 ; N uni237D ; G 3256 -U 9095 ; WX 1152 ; N uni2387 ; G 3257 -U 9108 ; WX 873 ; N uni2394 ; G 3258 -U 9115 ; WX 500 ; N uni239B ; G 3259 -U 9116 ; WX 500 ; N uni239C ; G 3260 -U 9117 ; WX 500 ; N uni239D ; G 3261 -U 9118 ; WX 500 ; N uni239E ; G 3262 -U 9119 ; WX 500 ; N uni239F ; G 3263 -U 9120 ; WX 500 ; N uni23A0 ; G 3264 -U 9121 ; WX 500 ; N uni23A1 ; G 3265 -U 9122 ; WX 500 ; N uni23A2 ; G 3266 -U 9123 ; WX 500 ; N uni23A3 ; G 3267 -U 9124 ; WX 500 ; N uni23A4 ; G 3268 -U 9125 ; WX 500 ; N uni23A5 ; G 3269 -U 9126 ; WX 500 ; N uni23A6 ; G 3270 -U 9127 ; WX 750 ; N uni23A7 ; G 3271 -U 9128 ; WX 750 ; N uni23A8 ; G 3272 -U 9129 ; WX 750 ; N uni23A9 ; G 3273 -U 9130 ; WX 750 ; N uni23AA ; G 3274 -U 9131 ; WX 750 ; N uni23AB ; G 3275 -U 9132 ; WX 750 ; N uni23AC ; G 3276 -U 9133 ; WX 750 ; N uni23AD ; G 3277 -U 9134 ; WX 610 ; N uni23AE ; G 3278 -U 9166 ; WX 838 ; N uni23CE ; G 3279 -U 9167 ; WX 945 ; N uni23CF ; G 3280 -U 9187 ; WX 873 ; N uni23E3 ; G 3281 -U 9189 ; WX 769 ; N uni23E5 ; G 3282 -U 9192 ; WX 696 ; N uni23E8 ; G 3283 -U 9250 ; WX 716 ; N uni2422 ; G 3284 -U 9251 ; WX 716 ; N uni2423 ; G 3285 -U 9312 ; WX 847 ; N uni2460 ; G 3286 -U 9313 ; WX 847 ; N uni2461 ; G 3287 -U 9314 ; WX 847 ; N uni2462 ; G 3288 -U 9315 ; WX 847 ; N uni2463 ; G 3289 -U 9316 ; WX 847 ; N uni2464 ; G 3290 -U 9317 ; WX 847 ; N uni2465 ; G 3291 -U 9318 ; WX 847 ; N uni2466 ; G 3292 -U 9319 ; WX 847 ; N uni2467 ; G 3293 -U 9320 ; WX 847 ; N uni2468 ; G 3294 -U 9321 ; WX 847 ; N uni2469 ; G 3295 -U 9472 ; WX 602 ; N SF100000 ; G 3296 -U 9473 ; WX 602 ; N uni2501 ; G 3297 -U 9474 ; WX 602 ; N SF110000 ; G 3298 -U 9475 ; WX 602 ; N uni2503 ; G 3299 -U 9476 ; WX 602 ; N uni2504 ; G 3300 -U 9477 ; WX 602 ; N uni2505 ; G 3301 -U 9478 ; WX 602 ; N uni2506 ; G 3302 -U 9479 ; WX 602 ; N uni2507 ; G 3303 -U 9480 ; WX 602 ; N uni2508 ; G 3304 -U 9481 ; WX 602 ; N uni2509 ; G 3305 -U 9482 ; WX 602 ; N uni250A ; G 3306 -U 9483 ; WX 602 ; N uni250B ; G 3307 -U 9484 ; WX 602 ; N SF010000 ; G 3308 -U 9485 ; WX 602 ; N uni250D ; G 3309 -U 9486 ; WX 602 ; N uni250E ; G 3310 -U 9487 ; WX 602 ; N uni250F ; G 3311 -U 9488 ; WX 602 ; N SF030000 ; G 3312 -U 9489 ; WX 602 ; N uni2511 ; G 3313 -U 9490 ; WX 602 ; N uni2512 ; G 3314 -U 9491 ; WX 602 ; N uni2513 ; G 3315 -U 9492 ; WX 602 ; N SF020000 ; G 3316 -U 9493 ; WX 602 ; N uni2515 ; G 3317 -U 9494 ; WX 602 ; N uni2516 ; G 3318 -U 9495 ; WX 602 ; N uni2517 ; G 3319 -U 9496 ; WX 602 ; N SF040000 ; G 3320 -U 9497 ; WX 602 ; N uni2519 ; G 3321 -U 9498 ; WX 602 ; N uni251A ; G 3322 -U 9499 ; WX 602 ; N uni251B ; G 3323 -U 9500 ; WX 602 ; N SF080000 ; G 3324 -U 9501 ; WX 602 ; N uni251D ; G 3325 -U 9502 ; WX 602 ; N uni251E ; G 3326 -U 9503 ; WX 602 ; N uni251F ; G 3327 -U 9504 ; WX 602 ; N uni2520 ; G 3328 -U 9505 ; WX 602 ; N uni2521 ; G 3329 -U 9506 ; WX 602 ; N uni2522 ; G 3330 -U 9507 ; WX 602 ; N uni2523 ; G 3331 -U 9508 ; WX 602 ; N SF090000 ; G 3332 -U 9509 ; WX 602 ; N uni2525 ; G 3333 -U 9510 ; WX 602 ; N uni2526 ; G 3334 -U 9511 ; WX 602 ; N uni2527 ; G 3335 -U 9512 ; WX 602 ; N uni2528 ; G 3336 -U 9513 ; WX 602 ; N uni2529 ; G 3337 -U 9514 ; WX 602 ; N uni252A ; G 3338 -U 9515 ; WX 602 ; N uni252B ; G 3339 -U 9516 ; WX 602 ; N SF060000 ; G 3340 -U 9517 ; WX 602 ; N uni252D ; G 3341 -U 9518 ; WX 602 ; N uni252E ; G 3342 -U 9519 ; WX 602 ; N uni252F ; G 3343 -U 9520 ; WX 602 ; N uni2530 ; G 3344 -U 9521 ; WX 602 ; N uni2531 ; G 3345 -U 9522 ; WX 602 ; N uni2532 ; G 3346 -U 9523 ; WX 602 ; N uni2533 ; G 3347 -U 9524 ; WX 602 ; N SF070000 ; G 3348 -U 9525 ; WX 602 ; N uni2535 ; G 3349 -U 9526 ; WX 602 ; N uni2536 ; G 3350 -U 9527 ; WX 602 ; N uni2537 ; G 3351 -U 9528 ; WX 602 ; N uni2538 ; G 3352 -U 9529 ; WX 602 ; N uni2539 ; G 3353 -U 9530 ; WX 602 ; N uni253A ; G 3354 -U 9531 ; WX 602 ; N uni253B ; G 3355 -U 9532 ; WX 602 ; N SF050000 ; G 3356 -U 9533 ; WX 602 ; N uni253D ; G 3357 -U 9534 ; WX 602 ; N uni253E ; G 3358 -U 9535 ; WX 602 ; N uni253F ; G 3359 -U 9536 ; WX 602 ; N uni2540 ; G 3360 -U 9537 ; WX 602 ; N uni2541 ; G 3361 -U 9538 ; WX 602 ; N uni2542 ; G 3362 -U 9539 ; WX 602 ; N uni2543 ; G 3363 -U 9540 ; WX 602 ; N uni2544 ; G 3364 -U 9541 ; WX 602 ; N uni2545 ; G 3365 -U 9542 ; WX 602 ; N uni2546 ; G 3366 -U 9543 ; WX 602 ; N uni2547 ; G 3367 -U 9544 ; WX 602 ; N uni2548 ; G 3368 -U 9545 ; WX 602 ; N uni2549 ; G 3369 -U 9546 ; WX 602 ; N uni254A ; G 3370 -U 9547 ; WX 602 ; N uni254B ; G 3371 -U 9548 ; WX 602 ; N uni254C ; G 3372 -U 9549 ; WX 602 ; N uni254D ; G 3373 -U 9550 ; WX 602 ; N uni254E ; G 3374 -U 9551 ; WX 602 ; N uni254F ; G 3375 -U 9552 ; WX 602 ; N SF430000 ; G 3376 -U 9553 ; WX 602 ; N SF240000 ; G 3377 -U 9554 ; WX 602 ; N SF510000 ; G 3378 -U 9555 ; WX 602 ; N SF520000 ; G 3379 -U 9556 ; WX 602 ; N SF390000 ; G 3380 -U 9557 ; WX 602 ; N SF220000 ; G 3381 -U 9558 ; WX 602 ; N SF210000 ; G 3382 -U 9559 ; WX 602 ; N SF250000 ; G 3383 -U 9560 ; WX 602 ; N SF500000 ; G 3384 -U 9561 ; WX 602 ; N SF490000 ; G 3385 -U 9562 ; WX 602 ; N SF380000 ; G 3386 -U 9563 ; WX 602 ; N SF280000 ; G 3387 -U 9564 ; WX 602 ; N SF270000 ; G 3388 -U 9565 ; WX 602 ; N SF260000 ; G 3389 -U 9566 ; WX 602 ; N SF360000 ; G 3390 -U 9567 ; WX 602 ; N SF370000 ; G 3391 -U 9568 ; WX 602 ; N SF420000 ; G 3392 -U 9569 ; WX 602 ; N SF190000 ; G 3393 -U 9570 ; WX 602 ; N SF200000 ; G 3394 -U 9571 ; WX 602 ; N SF230000 ; G 3395 -U 9572 ; WX 602 ; N SF470000 ; G 3396 -U 9573 ; WX 602 ; N SF480000 ; G 3397 -U 9574 ; WX 602 ; N SF410000 ; G 3398 -U 9575 ; WX 602 ; N SF450000 ; G 3399 -U 9576 ; WX 602 ; N SF460000 ; G 3400 -U 9577 ; WX 602 ; N SF400000 ; G 3401 -U 9578 ; WX 602 ; N SF540000 ; G 3402 -U 9579 ; WX 602 ; N SF530000 ; G 3403 -U 9580 ; WX 602 ; N SF440000 ; G 3404 -U 9581 ; WX 602 ; N uni256D ; G 3405 -U 9582 ; WX 602 ; N uni256E ; G 3406 -U 9583 ; WX 602 ; N uni256F ; G 3407 -U 9584 ; WX 602 ; N uni2570 ; G 3408 -U 9585 ; WX 602 ; N uni2571 ; G 3409 -U 9586 ; WX 602 ; N uni2572 ; G 3410 -U 9587 ; WX 602 ; N uni2573 ; G 3411 -U 9588 ; WX 602 ; N uni2574 ; G 3412 -U 9589 ; WX 602 ; N uni2575 ; G 3413 -U 9590 ; WX 602 ; N uni2576 ; G 3414 -U 9591 ; WX 602 ; N uni2577 ; G 3415 -U 9592 ; WX 602 ; N uni2578 ; G 3416 -U 9593 ; WX 602 ; N uni2579 ; G 3417 -U 9594 ; WX 602 ; N uni257A ; G 3418 -U 9595 ; WX 602 ; N uni257B ; G 3419 -U 9596 ; WX 602 ; N uni257C ; G 3420 -U 9597 ; WX 602 ; N uni257D ; G 3421 -U 9598 ; WX 602 ; N uni257E ; G 3422 -U 9599 ; WX 602 ; N uni257F ; G 3423 -U 9600 ; WX 769 ; N upblock ; G 3424 -U 9601 ; WX 769 ; N uni2581 ; G 3425 -U 9602 ; WX 769 ; N uni2582 ; G 3426 -U 9603 ; WX 769 ; N uni2583 ; G 3427 -U 9604 ; WX 769 ; N dnblock ; G 3428 -U 9605 ; WX 769 ; N uni2585 ; G 3429 -U 9606 ; WX 769 ; N uni2586 ; G 3430 -U 9607 ; WX 769 ; N uni2587 ; G 3431 -U 9608 ; WX 769 ; N block ; G 3432 -U 9609 ; WX 769 ; N uni2589 ; G 3433 -U 9610 ; WX 769 ; N uni258A ; G 3434 -U 9611 ; WX 769 ; N uni258B ; G 3435 -U 9612 ; WX 769 ; N lfblock ; G 3436 -U 9613 ; WX 769 ; N uni258D ; G 3437 -U 9614 ; WX 769 ; N uni258E ; G 3438 -U 9615 ; WX 769 ; N uni258F ; G 3439 -U 9616 ; WX 769 ; N rtblock ; G 3440 -U 9617 ; WX 769 ; N ltshade ; G 3441 -U 9618 ; WX 769 ; N shade ; G 3442 -U 9619 ; WX 769 ; N dkshade ; G 3443 -U 9620 ; WX 769 ; N uni2594 ; G 3444 -U 9621 ; WX 769 ; N uni2595 ; G 3445 -U 9622 ; WX 769 ; N uni2596 ; G 3446 -U 9623 ; WX 769 ; N uni2597 ; G 3447 -U 9624 ; WX 769 ; N uni2598 ; G 3448 -U 9625 ; WX 769 ; N uni2599 ; G 3449 -U 9626 ; WX 769 ; N uni259A ; G 3450 -U 9627 ; WX 769 ; N uni259B ; G 3451 -U 9628 ; WX 769 ; N uni259C ; G 3452 -U 9629 ; WX 769 ; N uni259D ; G 3453 -U 9630 ; WX 769 ; N uni259E ; G 3454 -U 9631 ; WX 769 ; N uni259F ; G 3455 -U 9632 ; WX 945 ; N filledbox ; G 3456 -U 9633 ; WX 945 ; N H22073 ; G 3457 -U 9634 ; WX 945 ; N uni25A2 ; G 3458 -U 9635 ; WX 945 ; N uni25A3 ; G 3459 -U 9636 ; WX 945 ; N uni25A4 ; G 3460 -U 9637 ; WX 945 ; N uni25A5 ; G 3461 -U 9638 ; WX 945 ; N uni25A6 ; G 3462 -U 9639 ; WX 945 ; N uni25A7 ; G 3463 -U 9640 ; WX 945 ; N uni25A8 ; G 3464 -U 9641 ; WX 945 ; N uni25A9 ; G 3465 -U 9642 ; WX 678 ; N H18543 ; G 3466 -U 9643 ; WX 678 ; N H18551 ; G 3467 -U 9644 ; WX 945 ; N filledrect ; G 3468 -U 9645 ; WX 945 ; N uni25AD ; G 3469 -U 9646 ; WX 550 ; N uni25AE ; G 3470 -U 9647 ; WX 550 ; N uni25AF ; G 3471 -U 9648 ; WX 769 ; N uni25B0 ; G 3472 -U 9649 ; WX 769 ; N uni25B1 ; G 3473 -U 9650 ; WX 769 ; N triagup ; G 3474 -U 9651 ; WX 769 ; N uni25B3 ; G 3475 -U 9652 ; WX 502 ; N uni25B4 ; G 3476 -U 9653 ; WX 502 ; N uni25B5 ; G 3477 -U 9654 ; WX 769 ; N uni25B6 ; G 3478 -U 9655 ; WX 769 ; N uni25B7 ; G 3479 -U 9656 ; WX 502 ; N uni25B8 ; G 3480 -U 9657 ; WX 502 ; N uni25B9 ; G 3481 -U 9658 ; WX 769 ; N triagrt ; G 3482 -U 9659 ; WX 769 ; N uni25BB ; G 3483 -U 9660 ; WX 769 ; N triagdn ; G 3484 -U 9661 ; WX 769 ; N uni25BD ; G 3485 -U 9662 ; WX 502 ; N uni25BE ; G 3486 -U 9663 ; WX 502 ; N uni25BF ; G 3487 -U 9664 ; WX 769 ; N uni25C0 ; G 3488 -U 9665 ; WX 769 ; N uni25C1 ; G 3489 -U 9666 ; WX 502 ; N uni25C2 ; G 3490 -U 9667 ; WX 502 ; N uni25C3 ; G 3491 -U 9668 ; WX 769 ; N triaglf ; G 3492 -U 9669 ; WX 769 ; N uni25C5 ; G 3493 -U 9670 ; WX 769 ; N uni25C6 ; G 3494 -U 9671 ; WX 769 ; N uni25C7 ; G 3495 -U 9672 ; WX 769 ; N uni25C8 ; G 3496 -U 9673 ; WX 873 ; N uni25C9 ; G 3497 -U 9674 ; WX 494 ; N lozenge ; G 3498 -U 9675 ; WX 873 ; N circle ; G 3499 -U 9676 ; WX 873 ; N uni25CC ; G 3500 -U 9677 ; WX 873 ; N uni25CD ; G 3501 -U 9678 ; WX 873 ; N uni25CE ; G 3502 -U 9679 ; WX 873 ; N H18533 ; G 3503 -U 9680 ; WX 873 ; N uni25D0 ; G 3504 -U 9681 ; WX 873 ; N uni25D1 ; G 3505 -U 9682 ; WX 873 ; N uni25D2 ; G 3506 -U 9683 ; WX 873 ; N uni25D3 ; G 3507 -U 9684 ; WX 873 ; N uni25D4 ; G 3508 -U 9685 ; WX 873 ; N uni25D5 ; G 3509 -U 9686 ; WX 527 ; N uni25D6 ; G 3510 -U 9687 ; WX 527 ; N uni25D7 ; G 3511 -U 9688 ; WX 840 ; N invbullet ; G 3512 -U 9689 ; WX 970 ; N invcircle ; G 3513 -U 9690 ; WX 970 ; N uni25DA ; G 3514 -U 9691 ; WX 970 ; N uni25DB ; G 3515 -U 9692 ; WX 387 ; N uni25DC ; G 3516 -U 9693 ; WX 387 ; N uni25DD ; G 3517 -U 9694 ; WX 387 ; N uni25DE ; G 3518 -U 9695 ; WX 387 ; N uni25DF ; G 3519 -U 9696 ; WX 769 ; N uni25E0 ; G 3520 -U 9697 ; WX 769 ; N uni25E1 ; G 3521 -U 9698 ; WX 769 ; N uni25E2 ; G 3522 -U 9699 ; WX 769 ; N uni25E3 ; G 3523 -U 9700 ; WX 769 ; N uni25E4 ; G 3524 -U 9701 ; WX 769 ; N uni25E5 ; G 3525 -U 9702 ; WX 639 ; N openbullet ; G 3526 -U 9703 ; WX 945 ; N uni25E7 ; G 3527 -U 9704 ; WX 945 ; N uni25E8 ; G 3528 -U 9705 ; WX 945 ; N uni25E9 ; G 3529 -U 9706 ; WX 945 ; N uni25EA ; G 3530 -U 9707 ; WX 945 ; N uni25EB ; G 3531 -U 9708 ; WX 769 ; N uni25EC ; G 3532 -U 9709 ; WX 769 ; N uni25ED ; G 3533 -U 9710 ; WX 769 ; N uni25EE ; G 3534 -U 9711 ; WX 1119 ; N uni25EF ; G 3535 -U 9712 ; WX 945 ; N uni25F0 ; G 3536 -U 9713 ; WX 945 ; N uni25F1 ; G 3537 -U 9714 ; WX 945 ; N uni25F2 ; G 3538 -U 9715 ; WX 945 ; N uni25F3 ; G 3539 -U 9716 ; WX 873 ; N uni25F4 ; G 3540 -U 9717 ; WX 873 ; N uni25F5 ; G 3541 -U 9718 ; WX 873 ; N uni25F6 ; G 3542 -U 9719 ; WX 873 ; N uni25F7 ; G 3543 -U 9720 ; WX 769 ; N uni25F8 ; G 3544 -U 9721 ; WX 769 ; N uni25F9 ; G 3545 -U 9722 ; WX 769 ; N uni25FA ; G 3546 -U 9723 ; WX 830 ; N uni25FB ; G 3547 -U 9724 ; WX 830 ; N uni25FC ; G 3548 -U 9725 ; WX 732 ; N uni25FD ; G 3549 -U 9726 ; WX 732 ; N uni25FE ; G 3550 -U 9727 ; WX 769 ; N uni25FF ; G 3551 -U 9728 ; WX 896 ; N uni2600 ; G 3552 -U 9729 ; WX 1000 ; N uni2601 ; G 3553 -U 9730 ; WX 896 ; N uni2602 ; G 3554 -U 9731 ; WX 896 ; N uni2603 ; G 3555 -U 9732 ; WX 896 ; N uni2604 ; G 3556 -U 9733 ; WX 896 ; N uni2605 ; G 3557 -U 9734 ; WX 896 ; N uni2606 ; G 3558 -U 9735 ; WX 573 ; N uni2607 ; G 3559 -U 9736 ; WX 896 ; N uni2608 ; G 3560 -U 9737 ; WX 896 ; N uni2609 ; G 3561 -U 9738 ; WX 888 ; N uni260A ; G 3562 -U 9739 ; WX 888 ; N uni260B ; G 3563 -U 9740 ; WX 671 ; N uni260C ; G 3564 -U 9741 ; WX 1013 ; N uni260D ; G 3565 -U 9742 ; WX 1246 ; N uni260E ; G 3566 -U 9743 ; WX 1250 ; N uni260F ; G 3567 -U 9744 ; WX 896 ; N uni2610 ; G 3568 -U 9745 ; WX 896 ; N uni2611 ; G 3569 -U 9746 ; WX 896 ; N uni2612 ; G 3570 -U 9747 ; WX 532 ; N uni2613 ; G 3571 -U 9748 ; WX 896 ; N uni2614 ; G 3572 -U 9749 ; WX 896 ; N uni2615 ; G 3573 -U 9750 ; WX 896 ; N uni2616 ; G 3574 -U 9751 ; WX 896 ; N uni2617 ; G 3575 -U 9752 ; WX 896 ; N uni2618 ; G 3576 -U 9753 ; WX 896 ; N uni2619 ; G 3577 -U 9754 ; WX 896 ; N uni261A ; G 3578 -U 9755 ; WX 896 ; N uni261B ; G 3579 -U 9756 ; WX 896 ; N uni261C ; G 3580 -U 9757 ; WX 609 ; N uni261D ; G 3581 -U 9758 ; WX 896 ; N uni261E ; G 3582 -U 9759 ; WX 609 ; N uni261F ; G 3583 -U 9760 ; WX 896 ; N uni2620 ; G 3584 -U 9761 ; WX 896 ; N uni2621 ; G 3585 -U 9762 ; WX 896 ; N uni2622 ; G 3586 -U 9763 ; WX 896 ; N uni2623 ; G 3587 -U 9764 ; WX 669 ; N uni2624 ; G 3588 -U 9765 ; WX 746 ; N uni2625 ; G 3589 -U 9766 ; WX 649 ; N uni2626 ; G 3590 -U 9767 ; WX 784 ; N uni2627 ; G 3591 -U 9768 ; WX 545 ; N uni2628 ; G 3592 -U 9769 ; WX 896 ; N uni2629 ; G 3593 -U 9770 ; WX 896 ; N uni262A ; G 3594 -U 9771 ; WX 896 ; N uni262B ; G 3595 -U 9772 ; WX 710 ; N uni262C ; G 3596 -U 9773 ; WX 896 ; N uni262D ; G 3597 -U 9774 ; WX 896 ; N uni262E ; G 3598 -U 9775 ; WX 896 ; N uni262F ; G 3599 -U 9776 ; WX 896 ; N uni2630 ; G 3600 -U 9777 ; WX 896 ; N uni2631 ; G 3601 -U 9778 ; WX 896 ; N uni2632 ; G 3602 -U 9779 ; WX 896 ; N uni2633 ; G 3603 -U 9780 ; WX 896 ; N uni2634 ; G 3604 -U 9781 ; WX 896 ; N uni2635 ; G 3605 -U 9782 ; WX 896 ; N uni2636 ; G 3606 -U 9783 ; WX 896 ; N uni2637 ; G 3607 -U 9784 ; WX 896 ; N uni2638 ; G 3608 -U 9785 ; WX 1042 ; N uni2639 ; G 3609 -U 9786 ; WX 1042 ; N smileface ; G 3610 -U 9787 ; WX 1042 ; N invsmileface ; G 3611 -U 9788 ; WX 896 ; N sun ; G 3612 -U 9789 ; WX 896 ; N uni263D ; G 3613 -U 9790 ; WX 896 ; N uni263E ; G 3614 -U 9791 ; WX 614 ; N uni263F ; G 3615 -U 9792 ; WX 732 ; N female ; G 3616 -U 9793 ; WX 732 ; N uni2641 ; G 3617 -U 9794 ; WX 896 ; N male ; G 3618 -U 9795 ; WX 896 ; N uni2643 ; G 3619 -U 9796 ; WX 896 ; N uni2644 ; G 3620 -U 9797 ; WX 896 ; N uni2645 ; G 3621 -U 9798 ; WX 896 ; N uni2646 ; G 3622 -U 9799 ; WX 896 ; N uni2647 ; G 3623 -U 9800 ; WX 896 ; N uni2648 ; G 3624 -U 9801 ; WX 896 ; N uni2649 ; G 3625 -U 9802 ; WX 896 ; N uni264A ; G 3626 -U 9803 ; WX 896 ; N uni264B ; G 3627 -U 9804 ; WX 896 ; N uni264C ; G 3628 -U 9805 ; WX 896 ; N uni264D ; G 3629 -U 9806 ; WX 896 ; N uni264E ; G 3630 -U 9807 ; WX 896 ; N uni264F ; G 3631 -U 9808 ; WX 896 ; N uni2650 ; G 3632 -U 9809 ; WX 896 ; N uni2651 ; G 3633 -U 9810 ; WX 896 ; N uni2652 ; G 3634 -U 9811 ; WX 896 ; N uni2653 ; G 3635 -U 9812 ; WX 896 ; N uni2654 ; G 3636 -U 9813 ; WX 896 ; N uni2655 ; G 3637 -U 9814 ; WX 896 ; N uni2656 ; G 3638 -U 9815 ; WX 896 ; N uni2657 ; G 3639 -U 9816 ; WX 896 ; N uni2658 ; G 3640 -U 9817 ; WX 896 ; N uni2659 ; G 3641 -U 9818 ; WX 896 ; N uni265A ; G 3642 -U 9819 ; WX 896 ; N uni265B ; G 3643 -U 9820 ; WX 896 ; N uni265C ; G 3644 -U 9821 ; WX 896 ; N uni265D ; G 3645 -U 9822 ; WX 896 ; N uni265E ; G 3646 -U 9823 ; WX 896 ; N uni265F ; G 3647 -U 9824 ; WX 896 ; N spade ; G 3648 -U 9825 ; WX 896 ; N uni2661 ; G 3649 -U 9826 ; WX 896 ; N uni2662 ; G 3650 -U 9827 ; WX 896 ; N club ; G 3651 -U 9828 ; WX 896 ; N uni2664 ; G 3652 -U 9829 ; WX 896 ; N heart ; G 3653 -U 9830 ; WX 896 ; N diamond ; G 3654 -U 9831 ; WX 896 ; N uni2667 ; G 3655 -U 9832 ; WX 896 ; N uni2668 ; G 3656 -U 9833 ; WX 472 ; N uni2669 ; G 3657 -U 9834 ; WX 638 ; N musicalnote ; G 3658 -U 9835 ; WX 896 ; N musicalnotedbl ; G 3659 -U 9836 ; WX 896 ; N uni266C ; G 3660 -U 9837 ; WX 472 ; N uni266D ; G 3661 -U 9838 ; WX 357 ; N uni266E ; G 3662 -U 9839 ; WX 484 ; N uni266F ; G 3663 -U 9840 ; WX 748 ; N uni2670 ; G 3664 -U 9841 ; WX 766 ; N uni2671 ; G 3665 -U 9842 ; WX 896 ; N uni2672 ; G 3666 -U 9843 ; WX 896 ; N uni2673 ; G 3667 -U 9844 ; WX 896 ; N uni2674 ; G 3668 -U 9845 ; WX 896 ; N uni2675 ; G 3669 -U 9846 ; WX 896 ; N uni2676 ; G 3670 -U 9847 ; WX 896 ; N uni2677 ; G 3671 -U 9848 ; WX 896 ; N uni2678 ; G 3672 -U 9849 ; WX 896 ; N uni2679 ; G 3673 -U 9850 ; WX 896 ; N uni267A ; G 3674 -U 9851 ; WX 896 ; N uni267B ; G 3675 -U 9852 ; WX 896 ; N uni267C ; G 3676 -U 9853 ; WX 896 ; N uni267D ; G 3677 -U 9854 ; WX 896 ; N uni267E ; G 3678 -U 9855 ; WX 896 ; N uni267F ; G 3679 -U 9856 ; WX 869 ; N uni2680 ; G 3680 -U 9857 ; WX 869 ; N uni2681 ; G 3681 -U 9858 ; WX 869 ; N uni2682 ; G 3682 -U 9859 ; WX 869 ; N uni2683 ; G 3683 -U 9860 ; WX 869 ; N uni2684 ; G 3684 -U 9861 ; WX 869 ; N uni2685 ; G 3685 -U 9862 ; WX 896 ; N uni2686 ; G 3686 -U 9863 ; WX 896 ; N uni2687 ; G 3687 -U 9864 ; WX 896 ; N uni2688 ; G 3688 -U 9865 ; WX 896 ; N uni2689 ; G 3689 -U 9866 ; WX 896 ; N uni268A ; G 3690 -U 9867 ; WX 896 ; N uni268B ; G 3691 -U 9868 ; WX 896 ; N uni268C ; G 3692 -U 9869 ; WX 896 ; N uni268D ; G 3693 -U 9870 ; WX 896 ; N uni268E ; G 3694 -U 9871 ; WX 896 ; N uni268F ; G 3695 -U 9872 ; WX 896 ; N uni2690 ; G 3696 -U 9873 ; WX 896 ; N uni2691 ; G 3697 -U 9874 ; WX 896 ; N uni2692 ; G 3698 -U 9875 ; WX 896 ; N uni2693 ; G 3699 -U 9876 ; WX 896 ; N uni2694 ; G 3700 -U 9877 ; WX 541 ; N uni2695 ; G 3701 -U 9878 ; WX 896 ; N uni2696 ; G 3702 -U 9879 ; WX 896 ; N uni2697 ; G 3703 -U 9880 ; WX 896 ; N uni2698 ; G 3704 -U 9881 ; WX 896 ; N uni2699 ; G 3705 -U 9882 ; WX 896 ; N uni269A ; G 3706 -U 9883 ; WX 896 ; N uni269B ; G 3707 -U 9884 ; WX 896 ; N uni269C ; G 3708 -U 9886 ; WX 896 ; N uni269E ; G 3709 -U 9887 ; WX 896 ; N uni269F ; G 3710 -U 9888 ; WX 896 ; N uni26A0 ; G 3711 -U 9889 ; WX 702 ; N uni26A1 ; G 3712 -U 9890 ; WX 1004 ; N uni26A2 ; G 3713 -U 9891 ; WX 1089 ; N uni26A3 ; G 3714 -U 9892 ; WX 1175 ; N uni26A4 ; G 3715 -U 9893 ; WX 903 ; N uni26A5 ; G 3716 -U 9894 ; WX 838 ; N uni26A6 ; G 3717 -U 9895 ; WX 838 ; N uni26A7 ; G 3718 -U 9896 ; WX 838 ; N uni26A8 ; G 3719 -U 9897 ; WX 838 ; N uni26A9 ; G 3720 -U 9898 ; WX 838 ; N uni26AA ; G 3721 -U 9899 ; WX 838 ; N uni26AB ; G 3722 -U 9900 ; WX 838 ; N uni26AC ; G 3723 -U 9901 ; WX 838 ; N uni26AD ; G 3724 -U 9902 ; WX 838 ; N uni26AE ; G 3725 -U 9903 ; WX 838 ; N uni26AF ; G 3726 -U 9904 ; WX 844 ; N uni26B0 ; G 3727 -U 9905 ; WX 838 ; N uni26B1 ; G 3728 -U 9906 ; WX 732 ; N uni26B2 ; G 3729 -U 9907 ; WX 732 ; N uni26B3 ; G 3730 -U 9908 ; WX 732 ; N uni26B4 ; G 3731 -U 9909 ; WX 732 ; N uni26B5 ; G 3732 -U 9910 ; WX 850 ; N uni26B6 ; G 3733 -U 9911 ; WX 732 ; N uni26B7 ; G 3734 -U 9912 ; WX 732 ; N uni26B8 ; G 3735 -U 9920 ; WX 838 ; N uni26C0 ; G 3736 -U 9921 ; WX 838 ; N uni26C1 ; G 3737 -U 9922 ; WX 838 ; N uni26C2 ; G 3738 -U 9923 ; WX 838 ; N uni26C3 ; G 3739 -U 9954 ; WX 732 ; N uni26E2 ; G 3740 -U 9985 ; WX 838 ; N uni2701 ; G 3741 -U 9986 ; WX 838 ; N uni2702 ; G 3742 -U 9987 ; WX 838 ; N uni2703 ; G 3743 -U 9988 ; WX 838 ; N uni2704 ; G 3744 -U 9990 ; WX 838 ; N uni2706 ; G 3745 -U 9991 ; WX 838 ; N uni2707 ; G 3746 -U 9992 ; WX 838 ; N uni2708 ; G 3747 -U 9993 ; WX 838 ; N uni2709 ; G 3748 -U 9996 ; WX 838 ; N uni270C ; G 3749 -U 9997 ; WX 838 ; N uni270D ; G 3750 -U 9998 ; WX 838 ; N uni270E ; G 3751 -U 9999 ; WX 838 ; N uni270F ; G 3752 -U 10000 ; WX 838 ; N uni2710 ; G 3753 -U 10001 ; WX 838 ; N uni2711 ; G 3754 -U 10002 ; WX 838 ; N uni2712 ; G 3755 -U 10003 ; WX 838 ; N uni2713 ; G 3756 -U 10004 ; WX 838 ; N uni2714 ; G 3757 -U 10005 ; WX 838 ; N uni2715 ; G 3758 -U 10006 ; WX 838 ; N uni2716 ; G 3759 -U 10007 ; WX 838 ; N uni2717 ; G 3760 -U 10008 ; WX 838 ; N uni2718 ; G 3761 -U 10009 ; WX 838 ; N uni2719 ; G 3762 -U 10010 ; WX 838 ; N uni271A ; G 3763 -U 10011 ; WX 838 ; N uni271B ; G 3764 -U 10012 ; WX 838 ; N uni271C ; G 3765 -U 10013 ; WX 838 ; N uni271D ; G 3766 -U 10014 ; WX 838 ; N uni271E ; G 3767 -U 10015 ; WX 838 ; N uni271F ; G 3768 -U 10016 ; WX 838 ; N uni2720 ; G 3769 -U 10017 ; WX 838 ; N uni2721 ; G 3770 -U 10018 ; WX 838 ; N uni2722 ; G 3771 -U 10019 ; WX 838 ; N uni2723 ; G 3772 -U 10020 ; WX 838 ; N uni2724 ; G 3773 -U 10021 ; WX 838 ; N uni2725 ; G 3774 -U 10022 ; WX 838 ; N uni2726 ; G 3775 -U 10023 ; WX 838 ; N uni2727 ; G 3776 -U 10025 ; WX 838 ; N uni2729 ; G 3777 -U 10026 ; WX 838 ; N uni272A ; G 3778 -U 10027 ; WX 838 ; N uni272B ; G 3779 -U 10028 ; WX 838 ; N uni272C ; G 3780 -U 10029 ; WX 838 ; N uni272D ; G 3781 -U 10030 ; WX 838 ; N uni272E ; G 3782 -U 10031 ; WX 838 ; N uni272F ; G 3783 -U 10032 ; WX 838 ; N uni2730 ; G 3784 -U 10033 ; WX 838 ; N uni2731 ; G 3785 -U 10034 ; WX 838 ; N uni2732 ; G 3786 -U 10035 ; WX 838 ; N uni2733 ; G 3787 -U 10036 ; WX 838 ; N uni2734 ; G 3788 -U 10037 ; WX 838 ; N uni2735 ; G 3789 -U 10038 ; WX 838 ; N uni2736 ; G 3790 -U 10039 ; WX 838 ; N uni2737 ; G 3791 -U 10040 ; WX 838 ; N uni2738 ; G 3792 -U 10041 ; WX 838 ; N uni2739 ; G 3793 -U 10042 ; WX 838 ; N uni273A ; G 3794 -U 10043 ; WX 838 ; N uni273B ; G 3795 -U 10044 ; WX 838 ; N uni273C ; G 3796 -U 10045 ; WX 838 ; N uni273D ; G 3797 -U 10046 ; WX 838 ; N uni273E ; G 3798 -U 10047 ; WX 838 ; N uni273F ; G 3799 -U 10048 ; WX 838 ; N uni2740 ; G 3800 -U 10049 ; WX 838 ; N uni2741 ; G 3801 -U 10050 ; WX 838 ; N uni2742 ; G 3802 -U 10051 ; WX 838 ; N uni2743 ; G 3803 -U 10052 ; WX 838 ; N uni2744 ; G 3804 -U 10053 ; WX 838 ; N uni2745 ; G 3805 -U 10054 ; WX 838 ; N uni2746 ; G 3806 -U 10055 ; WX 838 ; N uni2747 ; G 3807 -U 10056 ; WX 838 ; N uni2748 ; G 3808 -U 10057 ; WX 838 ; N uni2749 ; G 3809 -U 10058 ; WX 838 ; N uni274A ; G 3810 -U 10059 ; WX 838 ; N uni274B ; G 3811 -U 10061 ; WX 896 ; N uni274D ; G 3812 -U 10063 ; WX 896 ; N uni274F ; G 3813 -U 10064 ; WX 896 ; N uni2750 ; G 3814 -U 10065 ; WX 896 ; N uni2751 ; G 3815 -U 10066 ; WX 896 ; N uni2752 ; G 3816 -U 10070 ; WX 896 ; N uni2756 ; G 3817 -U 10072 ; WX 838 ; N uni2758 ; G 3818 -U 10073 ; WX 838 ; N uni2759 ; G 3819 -U 10074 ; WX 838 ; N uni275A ; G 3820 -U 10075 ; WX 322 ; N uni275B ; G 3821 -U 10076 ; WX 322 ; N uni275C ; G 3822 -U 10077 ; WX 538 ; N uni275D ; G 3823 -U 10078 ; WX 538 ; N uni275E ; G 3824 -U 10081 ; WX 838 ; N uni2761 ; G 3825 -U 10082 ; WX 838 ; N uni2762 ; G 3826 -U 10083 ; WX 838 ; N uni2763 ; G 3827 -U 10084 ; WX 838 ; N uni2764 ; G 3828 -U 10085 ; WX 838 ; N uni2765 ; G 3829 -U 10086 ; WX 838 ; N uni2766 ; G 3830 -U 10087 ; WX 838 ; N uni2767 ; G 3831 -U 10088 ; WX 838 ; N uni2768 ; G 3832 -U 10089 ; WX 838 ; N uni2769 ; G 3833 -U 10090 ; WX 838 ; N uni276A ; G 3834 -U 10091 ; WX 838 ; N uni276B ; G 3835 -U 10092 ; WX 838 ; N uni276C ; G 3836 -U 10093 ; WX 838 ; N uni276D ; G 3837 -U 10094 ; WX 838 ; N uni276E ; G 3838 -U 10095 ; WX 838 ; N uni276F ; G 3839 -U 10096 ; WX 838 ; N uni2770 ; G 3840 -U 10097 ; WX 838 ; N uni2771 ; G 3841 -U 10098 ; WX 838 ; N uni2772 ; G 3842 -U 10099 ; WX 838 ; N uni2773 ; G 3843 -U 10100 ; WX 838 ; N uni2774 ; G 3844 -U 10101 ; WX 838 ; N uni2775 ; G 3845 -U 10102 ; WX 847 ; N uni2776 ; G 3846 -U 10103 ; WX 847 ; N uni2777 ; G 3847 -U 10104 ; WX 847 ; N uni2778 ; G 3848 -U 10105 ; WX 847 ; N uni2779 ; G 3849 -U 10106 ; WX 847 ; N uni277A ; G 3850 -U 10107 ; WX 847 ; N uni277B ; G 3851 -U 10108 ; WX 847 ; N uni277C ; G 3852 -U 10109 ; WX 847 ; N uni277D ; G 3853 -U 10110 ; WX 847 ; N uni277E ; G 3854 -U 10111 ; WX 847 ; N uni277F ; G 3855 -U 10112 ; WX 838 ; N uni2780 ; G 3856 -U 10113 ; WX 838 ; N uni2781 ; G 3857 -U 10114 ; WX 838 ; N uni2782 ; G 3858 -U 10115 ; WX 838 ; N uni2783 ; G 3859 -U 10116 ; WX 838 ; N uni2784 ; G 3860 -U 10117 ; WX 838 ; N uni2785 ; G 3861 -U 10118 ; WX 838 ; N uni2786 ; G 3862 -U 10119 ; WX 838 ; N uni2787 ; G 3863 -U 10120 ; WX 838 ; N uni2788 ; G 3864 -U 10121 ; WX 838 ; N uni2789 ; G 3865 -U 10122 ; WX 838 ; N uni278A ; G 3866 -U 10123 ; WX 838 ; N uni278B ; G 3867 -U 10124 ; WX 838 ; N uni278C ; G 3868 -U 10125 ; WX 838 ; N uni278D ; G 3869 -U 10126 ; WX 838 ; N uni278E ; G 3870 -U 10127 ; WX 838 ; N uni278F ; G 3871 -U 10128 ; WX 838 ; N uni2790 ; G 3872 -U 10129 ; WX 838 ; N uni2791 ; G 3873 -U 10130 ; WX 838 ; N uni2792 ; G 3874 -U 10131 ; WX 838 ; N uni2793 ; G 3875 -U 10132 ; WX 838 ; N uni2794 ; G 3876 -U 10136 ; WX 838 ; N uni2798 ; G 3877 -U 10137 ; WX 838 ; N uni2799 ; G 3878 -U 10138 ; WX 838 ; N uni279A ; G 3879 -U 10139 ; WX 838 ; N uni279B ; G 3880 -U 10140 ; WX 838 ; N uni279C ; G 3881 -U 10141 ; WX 838 ; N uni279D ; G 3882 -U 10142 ; WX 838 ; N uni279E ; G 3883 -U 10143 ; WX 838 ; N uni279F ; G 3884 -U 10144 ; WX 838 ; N uni27A0 ; G 3885 -U 10145 ; WX 838 ; N uni27A1 ; G 3886 -U 10146 ; WX 838 ; N uni27A2 ; G 3887 -U 10147 ; WX 838 ; N uni27A3 ; G 3888 -U 10148 ; WX 838 ; N uni27A4 ; G 3889 -U 10149 ; WX 838 ; N uni27A5 ; G 3890 -U 10150 ; WX 838 ; N uni27A6 ; G 3891 -U 10151 ; WX 838 ; N uni27A7 ; G 3892 -U 10152 ; WX 838 ; N uni27A8 ; G 3893 -U 10153 ; WX 838 ; N uni27A9 ; G 3894 -U 10154 ; WX 838 ; N uni27AA ; G 3895 -U 10155 ; WX 838 ; N uni27AB ; G 3896 -U 10156 ; WX 838 ; N uni27AC ; G 3897 -U 10157 ; WX 838 ; N uni27AD ; G 3898 -U 10158 ; WX 838 ; N uni27AE ; G 3899 -U 10159 ; WX 838 ; N uni27AF ; G 3900 -U 10161 ; WX 838 ; N uni27B1 ; G 3901 -U 10162 ; WX 838 ; N uni27B2 ; G 3902 -U 10163 ; WX 838 ; N uni27B3 ; G 3903 -U 10164 ; WX 838 ; N uni27B4 ; G 3904 -U 10165 ; WX 838 ; N uni27B5 ; G 3905 -U 10166 ; WX 838 ; N uni27B6 ; G 3906 -U 10167 ; WX 838 ; N uni27B7 ; G 3907 -U 10168 ; WX 838 ; N uni27B8 ; G 3908 -U 10169 ; WX 838 ; N uni27B9 ; G 3909 -U 10170 ; WX 838 ; N uni27BA ; G 3910 -U 10171 ; WX 838 ; N uni27BB ; G 3911 -U 10172 ; WX 838 ; N uni27BC ; G 3912 -U 10173 ; WX 838 ; N uni27BD ; G 3913 -U 10174 ; WX 838 ; N uni27BE ; G 3914 -U 10181 ; WX 457 ; N uni27C5 ; G 3915 -U 10182 ; WX 457 ; N uni27C6 ; G 3916 -U 10208 ; WX 494 ; N uni27E0 ; G 3917 -U 10214 ; WX 487 ; N uni27E6 ; G 3918 -U 10215 ; WX 487 ; N uni27E7 ; G 3919 -U 10216 ; WX 457 ; N uni27E8 ; G 3920 -U 10217 ; WX 457 ; N uni27E9 ; G 3921 -U 10218 ; WX 721 ; N uni27EA ; G 3922 -U 10219 ; WX 721 ; N uni27EB ; G 3923 -U 10224 ; WX 838 ; N uni27F0 ; G 3924 -U 10225 ; WX 838 ; N uni27F1 ; G 3925 -U 10226 ; WX 838 ; N uni27F2 ; G 3926 -U 10227 ; WX 838 ; N uni27F3 ; G 3927 -U 10228 ; WX 1157 ; N uni27F4 ; G 3928 -U 10229 ; WX 1434 ; N uni27F5 ; G 3929 -U 10230 ; WX 1434 ; N uni27F6 ; G 3930 -U 10231 ; WX 1434 ; N uni27F7 ; G 3931 -U 10232 ; WX 1434 ; N uni27F8 ; G 3932 -U 10233 ; WX 1434 ; N uni27F9 ; G 3933 -U 10234 ; WX 1434 ; N uni27FA ; G 3934 -U 10235 ; WX 1434 ; N uni27FB ; G 3935 -U 10236 ; WX 1434 ; N uni27FC ; G 3936 -U 10237 ; WX 1434 ; N uni27FD ; G 3937 -U 10238 ; WX 1434 ; N uni27FE ; G 3938 -U 10239 ; WX 1434 ; N uni27FF ; G 3939 -U 10240 ; WX 781 ; N uni2800 ; G 3940 -U 10241 ; WX 781 ; N uni2801 ; G 3941 -U 10242 ; WX 781 ; N uni2802 ; G 3942 -U 10243 ; WX 781 ; N uni2803 ; G 3943 -U 10244 ; WX 781 ; N uni2804 ; G 3944 -U 10245 ; WX 781 ; N uni2805 ; G 3945 -U 10246 ; WX 781 ; N uni2806 ; G 3946 -U 10247 ; WX 781 ; N uni2807 ; G 3947 -U 10248 ; WX 781 ; N uni2808 ; G 3948 -U 10249 ; WX 781 ; N uni2809 ; G 3949 -U 10250 ; WX 781 ; N uni280A ; G 3950 -U 10251 ; WX 781 ; N uni280B ; G 3951 -U 10252 ; WX 781 ; N uni280C ; G 3952 -U 10253 ; WX 781 ; N uni280D ; G 3953 -U 10254 ; WX 781 ; N uni280E ; G 3954 -U 10255 ; WX 781 ; N uni280F ; G 3955 -U 10256 ; WX 781 ; N uni2810 ; G 3956 -U 10257 ; WX 781 ; N uni2811 ; G 3957 -U 10258 ; WX 781 ; N uni2812 ; G 3958 -U 10259 ; WX 781 ; N uni2813 ; G 3959 -U 10260 ; WX 781 ; N uni2814 ; G 3960 -U 10261 ; WX 781 ; N uni2815 ; G 3961 -U 10262 ; WX 781 ; N uni2816 ; G 3962 -U 10263 ; WX 781 ; N uni2817 ; G 3963 -U 10264 ; WX 781 ; N uni2818 ; G 3964 -U 10265 ; WX 781 ; N uni2819 ; G 3965 -U 10266 ; WX 781 ; N uni281A ; G 3966 -U 10267 ; WX 781 ; N uni281B ; G 3967 -U 10268 ; WX 781 ; N uni281C ; G 3968 -U 10269 ; WX 781 ; N uni281D ; G 3969 -U 10270 ; WX 781 ; N uni281E ; G 3970 -U 10271 ; WX 781 ; N uni281F ; G 3971 -U 10272 ; WX 781 ; N uni2820 ; G 3972 -U 10273 ; WX 781 ; N uni2821 ; G 3973 -U 10274 ; WX 781 ; N uni2822 ; G 3974 -U 10275 ; WX 781 ; N uni2823 ; G 3975 -U 10276 ; WX 781 ; N uni2824 ; G 3976 -U 10277 ; WX 781 ; N uni2825 ; G 3977 -U 10278 ; WX 781 ; N uni2826 ; G 3978 -U 10279 ; WX 781 ; N uni2827 ; G 3979 -U 10280 ; WX 781 ; N uni2828 ; G 3980 -U 10281 ; WX 781 ; N uni2829 ; G 3981 -U 10282 ; WX 781 ; N uni282A ; G 3982 -U 10283 ; WX 781 ; N uni282B ; G 3983 -U 10284 ; WX 781 ; N uni282C ; G 3984 -U 10285 ; WX 781 ; N uni282D ; G 3985 -U 10286 ; WX 781 ; N uni282E ; G 3986 -U 10287 ; WX 781 ; N uni282F ; G 3987 -U 10288 ; WX 781 ; N uni2830 ; G 3988 -U 10289 ; WX 781 ; N uni2831 ; G 3989 -U 10290 ; WX 781 ; N uni2832 ; G 3990 -U 10291 ; WX 781 ; N uni2833 ; G 3991 -U 10292 ; WX 781 ; N uni2834 ; G 3992 -U 10293 ; WX 781 ; N uni2835 ; G 3993 -U 10294 ; WX 781 ; N uni2836 ; G 3994 -U 10295 ; WX 781 ; N uni2837 ; G 3995 -U 10296 ; WX 781 ; N uni2838 ; G 3996 -U 10297 ; WX 781 ; N uni2839 ; G 3997 -U 10298 ; WX 781 ; N uni283A ; G 3998 -U 10299 ; WX 781 ; N uni283B ; G 3999 -U 10300 ; WX 781 ; N uni283C ; G 4000 -U 10301 ; WX 781 ; N uni283D ; G 4001 -U 10302 ; WX 781 ; N uni283E ; G 4002 -U 10303 ; WX 781 ; N uni283F ; G 4003 -U 10304 ; WX 781 ; N uni2840 ; G 4004 -U 10305 ; WX 781 ; N uni2841 ; G 4005 -U 10306 ; WX 781 ; N uni2842 ; G 4006 -U 10307 ; WX 781 ; N uni2843 ; G 4007 -U 10308 ; WX 781 ; N uni2844 ; G 4008 -U 10309 ; WX 781 ; N uni2845 ; G 4009 -U 10310 ; WX 781 ; N uni2846 ; G 4010 -U 10311 ; WX 781 ; N uni2847 ; G 4011 -U 10312 ; WX 781 ; N uni2848 ; G 4012 -U 10313 ; WX 781 ; N uni2849 ; G 4013 -U 10314 ; WX 781 ; N uni284A ; G 4014 -U 10315 ; WX 781 ; N uni284B ; G 4015 -U 10316 ; WX 781 ; N uni284C ; G 4016 -U 10317 ; WX 781 ; N uni284D ; G 4017 -U 10318 ; WX 781 ; N uni284E ; G 4018 -U 10319 ; WX 781 ; N uni284F ; G 4019 -U 10320 ; WX 781 ; N uni2850 ; G 4020 -U 10321 ; WX 781 ; N uni2851 ; G 4021 -U 10322 ; WX 781 ; N uni2852 ; G 4022 -U 10323 ; WX 781 ; N uni2853 ; G 4023 -U 10324 ; WX 781 ; N uni2854 ; G 4024 -U 10325 ; WX 781 ; N uni2855 ; G 4025 -U 10326 ; WX 781 ; N uni2856 ; G 4026 -U 10327 ; WX 781 ; N uni2857 ; G 4027 -U 10328 ; WX 781 ; N uni2858 ; G 4028 -U 10329 ; WX 781 ; N uni2859 ; G 4029 -U 10330 ; WX 781 ; N uni285A ; G 4030 -U 10331 ; WX 781 ; N uni285B ; G 4031 -U 10332 ; WX 781 ; N uni285C ; G 4032 -U 10333 ; WX 781 ; N uni285D ; G 4033 -U 10334 ; WX 781 ; N uni285E ; G 4034 -U 10335 ; WX 781 ; N uni285F ; G 4035 -U 10336 ; WX 781 ; N uni2860 ; G 4036 -U 10337 ; WX 781 ; N uni2861 ; G 4037 -U 10338 ; WX 781 ; N uni2862 ; G 4038 -U 10339 ; WX 781 ; N uni2863 ; G 4039 -U 10340 ; WX 781 ; N uni2864 ; G 4040 -U 10341 ; WX 781 ; N uni2865 ; G 4041 -U 10342 ; WX 781 ; N uni2866 ; G 4042 -U 10343 ; WX 781 ; N uni2867 ; G 4043 -U 10344 ; WX 781 ; N uni2868 ; G 4044 -U 10345 ; WX 781 ; N uni2869 ; G 4045 -U 10346 ; WX 781 ; N uni286A ; G 4046 -U 10347 ; WX 781 ; N uni286B ; G 4047 -U 10348 ; WX 781 ; N uni286C ; G 4048 -U 10349 ; WX 781 ; N uni286D ; G 4049 -U 10350 ; WX 781 ; N uni286E ; G 4050 -U 10351 ; WX 781 ; N uni286F ; G 4051 -U 10352 ; WX 781 ; N uni2870 ; G 4052 -U 10353 ; WX 781 ; N uni2871 ; G 4053 -U 10354 ; WX 781 ; N uni2872 ; G 4054 -U 10355 ; WX 781 ; N uni2873 ; G 4055 -U 10356 ; WX 781 ; N uni2874 ; G 4056 -U 10357 ; WX 781 ; N uni2875 ; G 4057 -U 10358 ; WX 781 ; N uni2876 ; G 4058 -U 10359 ; WX 781 ; N uni2877 ; G 4059 -U 10360 ; WX 781 ; N uni2878 ; G 4060 -U 10361 ; WX 781 ; N uni2879 ; G 4061 -U 10362 ; WX 781 ; N uni287A ; G 4062 -U 10363 ; WX 781 ; N uni287B ; G 4063 -U 10364 ; WX 781 ; N uni287C ; G 4064 -U 10365 ; WX 781 ; N uni287D ; G 4065 -U 10366 ; WX 781 ; N uni287E ; G 4066 -U 10367 ; WX 781 ; N uni287F ; G 4067 -U 10368 ; WX 781 ; N uni2880 ; G 4068 -U 10369 ; WX 781 ; N uni2881 ; G 4069 -U 10370 ; WX 781 ; N uni2882 ; G 4070 -U 10371 ; WX 781 ; N uni2883 ; G 4071 -U 10372 ; WX 781 ; N uni2884 ; G 4072 -U 10373 ; WX 781 ; N uni2885 ; G 4073 -U 10374 ; WX 781 ; N uni2886 ; G 4074 -U 10375 ; WX 781 ; N uni2887 ; G 4075 -U 10376 ; WX 781 ; N uni2888 ; G 4076 -U 10377 ; WX 781 ; N uni2889 ; G 4077 -U 10378 ; WX 781 ; N uni288A ; G 4078 -U 10379 ; WX 781 ; N uni288B ; G 4079 -U 10380 ; WX 781 ; N uni288C ; G 4080 -U 10381 ; WX 781 ; N uni288D ; G 4081 -U 10382 ; WX 781 ; N uni288E ; G 4082 -U 10383 ; WX 781 ; N uni288F ; G 4083 -U 10384 ; WX 781 ; N uni2890 ; G 4084 -U 10385 ; WX 781 ; N uni2891 ; G 4085 -U 10386 ; WX 781 ; N uni2892 ; G 4086 -U 10387 ; WX 781 ; N uni2893 ; G 4087 -U 10388 ; WX 781 ; N uni2894 ; G 4088 -U 10389 ; WX 781 ; N uni2895 ; G 4089 -U 10390 ; WX 781 ; N uni2896 ; G 4090 -U 10391 ; WX 781 ; N uni2897 ; G 4091 -U 10392 ; WX 781 ; N uni2898 ; G 4092 -U 10393 ; WX 781 ; N uni2899 ; G 4093 -U 10394 ; WX 781 ; N uni289A ; G 4094 -U 10395 ; WX 781 ; N uni289B ; G 4095 -U 10396 ; WX 781 ; N uni289C ; G 4096 -U 10397 ; WX 781 ; N uni289D ; G 4097 -U 10398 ; WX 781 ; N uni289E ; G 4098 -U 10399 ; WX 781 ; N uni289F ; G 4099 -U 10400 ; WX 781 ; N uni28A0 ; G 4100 -U 10401 ; WX 781 ; N uni28A1 ; G 4101 -U 10402 ; WX 781 ; N uni28A2 ; G 4102 -U 10403 ; WX 781 ; N uni28A3 ; G 4103 -U 10404 ; WX 781 ; N uni28A4 ; G 4104 -U 10405 ; WX 781 ; N uni28A5 ; G 4105 -U 10406 ; WX 781 ; N uni28A6 ; G 4106 -U 10407 ; WX 781 ; N uni28A7 ; G 4107 -U 10408 ; WX 781 ; N uni28A8 ; G 4108 -U 10409 ; WX 781 ; N uni28A9 ; G 4109 -U 10410 ; WX 781 ; N uni28AA ; G 4110 -U 10411 ; WX 781 ; N uni28AB ; G 4111 -U 10412 ; WX 781 ; N uni28AC ; G 4112 -U 10413 ; WX 781 ; N uni28AD ; G 4113 -U 10414 ; WX 781 ; N uni28AE ; G 4114 -U 10415 ; WX 781 ; N uni28AF ; G 4115 -U 10416 ; WX 781 ; N uni28B0 ; G 4116 -U 10417 ; WX 781 ; N uni28B1 ; G 4117 -U 10418 ; WX 781 ; N uni28B2 ; G 4118 -U 10419 ; WX 781 ; N uni28B3 ; G 4119 -U 10420 ; WX 781 ; N uni28B4 ; G 4120 -U 10421 ; WX 781 ; N uni28B5 ; G 4121 -U 10422 ; WX 781 ; N uni28B6 ; G 4122 -U 10423 ; WX 781 ; N uni28B7 ; G 4123 -U 10424 ; WX 781 ; N uni28B8 ; G 4124 -U 10425 ; WX 781 ; N uni28B9 ; G 4125 -U 10426 ; WX 781 ; N uni28BA ; G 4126 -U 10427 ; WX 781 ; N uni28BB ; G 4127 -U 10428 ; WX 781 ; N uni28BC ; G 4128 -U 10429 ; WX 781 ; N uni28BD ; G 4129 -U 10430 ; WX 781 ; N uni28BE ; G 4130 -U 10431 ; WX 781 ; N uni28BF ; G 4131 -U 10432 ; WX 781 ; N uni28C0 ; G 4132 -U 10433 ; WX 781 ; N uni28C1 ; G 4133 -U 10434 ; WX 781 ; N uni28C2 ; G 4134 -U 10435 ; WX 781 ; N uni28C3 ; G 4135 -U 10436 ; WX 781 ; N uni28C4 ; G 4136 -U 10437 ; WX 781 ; N uni28C5 ; G 4137 -U 10438 ; WX 781 ; N uni28C6 ; G 4138 -U 10439 ; WX 781 ; N uni28C7 ; G 4139 -U 10440 ; WX 781 ; N uni28C8 ; G 4140 -U 10441 ; WX 781 ; N uni28C9 ; G 4141 -U 10442 ; WX 781 ; N uni28CA ; G 4142 -U 10443 ; WX 781 ; N uni28CB ; G 4143 -U 10444 ; WX 781 ; N uni28CC ; G 4144 -U 10445 ; WX 781 ; N uni28CD ; G 4145 -U 10446 ; WX 781 ; N uni28CE ; G 4146 -U 10447 ; WX 781 ; N uni28CF ; G 4147 -U 10448 ; WX 781 ; N uni28D0 ; G 4148 -U 10449 ; WX 781 ; N uni28D1 ; G 4149 -U 10450 ; WX 781 ; N uni28D2 ; G 4150 -U 10451 ; WX 781 ; N uni28D3 ; G 4151 -U 10452 ; WX 781 ; N uni28D4 ; G 4152 -U 10453 ; WX 781 ; N uni28D5 ; G 4153 -U 10454 ; WX 781 ; N uni28D6 ; G 4154 -U 10455 ; WX 781 ; N uni28D7 ; G 4155 -U 10456 ; WX 781 ; N uni28D8 ; G 4156 -U 10457 ; WX 781 ; N uni28D9 ; G 4157 -U 10458 ; WX 781 ; N uni28DA ; G 4158 -U 10459 ; WX 781 ; N uni28DB ; G 4159 -U 10460 ; WX 781 ; N uni28DC ; G 4160 -U 10461 ; WX 781 ; N uni28DD ; G 4161 -U 10462 ; WX 781 ; N uni28DE ; G 4162 -U 10463 ; WX 781 ; N uni28DF ; G 4163 -U 10464 ; WX 781 ; N uni28E0 ; G 4164 -U 10465 ; WX 781 ; N uni28E1 ; G 4165 -U 10466 ; WX 781 ; N uni28E2 ; G 4166 -U 10467 ; WX 781 ; N uni28E3 ; G 4167 -U 10468 ; WX 781 ; N uni28E4 ; G 4168 -U 10469 ; WX 781 ; N uni28E5 ; G 4169 -U 10470 ; WX 781 ; N uni28E6 ; G 4170 -U 10471 ; WX 781 ; N uni28E7 ; G 4171 -U 10472 ; WX 781 ; N uni28E8 ; G 4172 -U 10473 ; WX 781 ; N uni28E9 ; G 4173 -U 10474 ; WX 781 ; N uni28EA ; G 4174 -U 10475 ; WX 781 ; N uni28EB ; G 4175 -U 10476 ; WX 781 ; N uni28EC ; G 4176 -U 10477 ; WX 781 ; N uni28ED ; G 4177 -U 10478 ; WX 781 ; N uni28EE ; G 4178 -U 10479 ; WX 781 ; N uni28EF ; G 4179 -U 10480 ; WX 781 ; N uni28F0 ; G 4180 -U 10481 ; WX 781 ; N uni28F1 ; G 4181 -U 10482 ; WX 781 ; N uni28F2 ; G 4182 -U 10483 ; WX 781 ; N uni28F3 ; G 4183 -U 10484 ; WX 781 ; N uni28F4 ; G 4184 -U 10485 ; WX 781 ; N uni28F5 ; G 4185 -U 10486 ; WX 781 ; N uni28F6 ; G 4186 -U 10487 ; WX 781 ; N uni28F7 ; G 4187 -U 10488 ; WX 781 ; N uni28F8 ; G 4188 -U 10489 ; WX 781 ; N uni28F9 ; G 4189 -U 10490 ; WX 781 ; N uni28FA ; G 4190 -U 10491 ; WX 781 ; N uni28FB ; G 4191 -U 10492 ; WX 781 ; N uni28FC ; G 4192 -U 10493 ; WX 781 ; N uni28FD ; G 4193 -U 10494 ; WX 781 ; N uni28FE ; G 4194 -U 10495 ; WX 781 ; N uni28FF ; G 4195 -U 10502 ; WX 838 ; N uni2906 ; G 4196 -U 10503 ; WX 838 ; N uni2907 ; G 4197 -U 10506 ; WX 838 ; N uni290A ; G 4198 -U 10507 ; WX 838 ; N uni290B ; G 4199 -U 10560 ; WX 838 ; N uni2940 ; G 4200 -U 10561 ; WX 838 ; N uni2941 ; G 4201 -U 10627 ; WX 753 ; N uni2983 ; G 4202 -U 10628 ; WX 753 ; N uni2984 ; G 4203 -U 10702 ; WX 838 ; N uni29CE ; G 4204 -U 10703 ; WX 1046 ; N uni29CF ; G 4205 -U 10704 ; WX 1046 ; N uni29D0 ; G 4206 -U 10705 ; WX 1000 ; N uni29D1 ; G 4207 -U 10706 ; WX 1000 ; N uni29D2 ; G 4208 -U 10707 ; WX 1000 ; N uni29D3 ; G 4209 -U 10708 ; WX 1000 ; N uni29D4 ; G 4210 -U 10709 ; WX 1000 ; N uni29D5 ; G 4211 -U 10731 ; WX 494 ; N uni29EB ; G 4212 -U 10746 ; WX 838 ; N uni29FA ; G 4213 -U 10747 ; WX 838 ; N uni29FB ; G 4214 -U 10752 ; WX 1000 ; N uni2A00 ; G 4215 -U 10753 ; WX 1000 ; N uni2A01 ; G 4216 -U 10754 ; WX 1000 ; N uni2A02 ; G 4217 -U 10764 ; WX 1661 ; N uni2A0C ; G 4218 -U 10765 ; WX 563 ; N uni2A0D ; G 4219 -U 10766 ; WX 563 ; N uni2A0E ; G 4220 -U 10767 ; WX 563 ; N uni2A0F ; G 4221 -U 10768 ; WX 563 ; N uni2A10 ; G 4222 -U 10769 ; WX 563 ; N uni2A11 ; G 4223 -U 10770 ; WX 563 ; N uni2A12 ; G 4224 -U 10771 ; WX 563 ; N uni2A13 ; G 4225 -U 10772 ; WX 563 ; N uni2A14 ; G 4226 -U 10773 ; WX 563 ; N uni2A15 ; G 4227 -U 10774 ; WX 563 ; N uni2A16 ; G 4228 -U 10775 ; WX 563 ; N uni2A17 ; G 4229 -U 10776 ; WX 563 ; N uni2A18 ; G 4230 -U 10777 ; WX 563 ; N uni2A19 ; G 4231 -U 10778 ; WX 563 ; N uni2A1A ; G 4232 -U 10779 ; WX 563 ; N uni2A1B ; G 4233 -U 10780 ; WX 563 ; N uni2A1C ; G 4234 -U 10799 ; WX 838 ; N uni2A2F ; G 4235 -U 10858 ; WX 838 ; N uni2A6A ; G 4236 -U 10859 ; WX 838 ; N uni2A6B ; G 4237 -U 10877 ; WX 838 ; N uni2A7D ; G 4238 -U 10878 ; WX 838 ; N uni2A7E ; G 4239 -U 10879 ; WX 838 ; N uni2A7F ; G 4240 -U 10880 ; WX 838 ; N uni2A80 ; G 4241 -U 10881 ; WX 838 ; N uni2A81 ; G 4242 -U 10882 ; WX 838 ; N uni2A82 ; G 4243 -U 10883 ; WX 838 ; N uni2A83 ; G 4244 -U 10884 ; WX 838 ; N uni2A84 ; G 4245 -U 10885 ; WX 838 ; N uni2A85 ; G 4246 -U 10886 ; WX 838 ; N uni2A86 ; G 4247 -U 10887 ; WX 838 ; N uni2A87 ; G 4248 -U 10888 ; WX 838 ; N uni2A88 ; G 4249 -U 10889 ; WX 838 ; N uni2A89 ; G 4250 -U 10890 ; WX 838 ; N uni2A8A ; G 4251 -U 10891 ; WX 838 ; N uni2A8B ; G 4252 -U 10892 ; WX 838 ; N uni2A8C ; G 4253 -U 10893 ; WX 838 ; N uni2A8D ; G 4254 -U 10894 ; WX 838 ; N uni2A8E ; G 4255 -U 10895 ; WX 838 ; N uni2A8F ; G 4256 -U 10896 ; WX 838 ; N uni2A90 ; G 4257 -U 10897 ; WX 838 ; N uni2A91 ; G 4258 -U 10898 ; WX 838 ; N uni2A92 ; G 4259 -U 10899 ; WX 838 ; N uni2A93 ; G 4260 -U 10900 ; WX 838 ; N uni2A94 ; G 4261 -U 10901 ; WX 838 ; N uni2A95 ; G 4262 -U 10902 ; WX 838 ; N uni2A96 ; G 4263 -U 10903 ; WX 838 ; N uni2A97 ; G 4264 -U 10904 ; WX 838 ; N uni2A98 ; G 4265 -U 10905 ; WX 838 ; N uni2A99 ; G 4266 -U 10906 ; WX 838 ; N uni2A9A ; G 4267 -U 10907 ; WX 838 ; N uni2A9B ; G 4268 -U 10908 ; WX 838 ; N uni2A9C ; G 4269 -U 10909 ; WX 838 ; N uni2A9D ; G 4270 -U 10910 ; WX 838 ; N uni2A9E ; G 4271 -U 10911 ; WX 838 ; N uni2A9F ; G 4272 -U 10912 ; WX 838 ; N uni2AA0 ; G 4273 -U 10926 ; WX 838 ; N uni2AAE ; G 4274 -U 10927 ; WX 838 ; N uni2AAF ; G 4275 -U 10928 ; WX 838 ; N uni2AB0 ; G 4276 -U 10929 ; WX 838 ; N uni2AB1 ; G 4277 -U 10930 ; WX 838 ; N uni2AB2 ; G 4278 -U 10931 ; WX 838 ; N uni2AB3 ; G 4279 -U 10932 ; WX 838 ; N uni2AB4 ; G 4280 -U 10933 ; WX 838 ; N uni2AB5 ; G 4281 -U 10934 ; WX 838 ; N uni2AB6 ; G 4282 -U 10935 ; WX 838 ; N uni2AB7 ; G 4283 -U 10936 ; WX 838 ; N uni2AB8 ; G 4284 -U 10937 ; WX 838 ; N uni2AB9 ; G 4285 -U 10938 ; WX 838 ; N uni2ABA ; G 4286 -U 11001 ; WX 838 ; N uni2AF9 ; G 4287 -U 11002 ; WX 838 ; N uni2AFA ; G 4288 -U 11008 ; WX 838 ; N uni2B00 ; G 4289 -U 11009 ; WX 838 ; N uni2B01 ; G 4290 -U 11010 ; WX 838 ; N uni2B02 ; G 4291 -U 11011 ; WX 838 ; N uni2B03 ; G 4292 -U 11012 ; WX 838 ; N uni2B04 ; G 4293 -U 11013 ; WX 838 ; N uni2B05 ; G 4294 -U 11014 ; WX 838 ; N uni2B06 ; G 4295 -U 11015 ; WX 838 ; N uni2B07 ; G 4296 -U 11016 ; WX 838 ; N uni2B08 ; G 4297 -U 11017 ; WX 838 ; N uni2B09 ; G 4298 -U 11018 ; WX 838 ; N uni2B0A ; G 4299 -U 11019 ; WX 838 ; N uni2B0B ; G 4300 -U 11020 ; WX 838 ; N uni2B0C ; G 4301 -U 11021 ; WX 838 ; N uni2B0D ; G 4302 -U 11022 ; WX 838 ; N uni2B0E ; G 4303 -U 11023 ; WX 838 ; N uni2B0F ; G 4304 -U 11024 ; WX 838 ; N uni2B10 ; G 4305 -U 11025 ; WX 838 ; N uni2B11 ; G 4306 -U 11026 ; WX 945 ; N uni2B12 ; G 4307 -U 11027 ; WX 945 ; N uni2B13 ; G 4308 -U 11028 ; WX 945 ; N uni2B14 ; G 4309 -U 11029 ; WX 945 ; N uni2B15 ; G 4310 -U 11030 ; WX 769 ; N uni2B16 ; G 4311 -U 11031 ; WX 769 ; N uni2B17 ; G 4312 -U 11032 ; WX 769 ; N uni2B18 ; G 4313 -U 11033 ; WX 769 ; N uni2B19 ; G 4314 -U 11034 ; WX 945 ; N uni2B1A ; G 4315 -U 11039 ; WX 869 ; N uni2B1F ; G 4316 -U 11040 ; WX 869 ; N uni2B20 ; G 4317 -U 11041 ; WX 873 ; N uni2B21 ; G 4318 -U 11042 ; WX 873 ; N uni2B22 ; G 4319 -U 11043 ; WX 873 ; N uni2B23 ; G 4320 -U 11044 ; WX 1119 ; N uni2B24 ; G 4321 -U 11091 ; WX 869 ; N uni2B53 ; G 4322 -U 11092 ; WX 869 ; N uni2B54 ; G 4323 -U 11360 ; WX 637 ; N uni2C60 ; G 4324 -U 11361 ; WX 360 ; N uni2C61 ; G 4325 -U 11362 ; WX 637 ; N uni2C62 ; G 4326 -U 11363 ; WX 733 ; N uni2C63 ; G 4327 -U 11364 ; WX 770 ; N uni2C64 ; G 4328 -U 11365 ; WX 675 ; N uni2C65 ; G 4329 -U 11366 ; WX 478 ; N uni2C66 ; G 4330 -U 11367 ; WX 956 ; N uni2C67 ; G 4331 -U 11368 ; WX 712 ; N uni2C68 ; G 4332 -U 11369 ; WX 775 ; N uni2C69 ; G 4333 -U 11370 ; WX 665 ; N uni2C6A ; G 4334 -U 11371 ; WX 725 ; N uni2C6B ; G 4335 -U 11372 ; WX 582 ; N uni2C6C ; G 4336 -U 11373 ; WX 860 ; N uni2C6D ; G 4337 -U 11374 ; WX 995 ; N uni2C6E ; G 4338 -U 11375 ; WX 774 ; N uni2C6F ; G 4339 -U 11376 ; WX 860 ; N uni2C70 ; G 4340 -U 11377 ; WX 778 ; N uni2C71 ; G 4341 -U 11378 ; WX 1221 ; N uni2C72 ; G 4342 -U 11379 ; WX 1056 ; N uni2C73 ; G 4343 -U 11380 ; WX 652 ; N uni2C74 ; G 4344 -U 11381 ; WX 698 ; N uni2C75 ; G 4345 -U 11382 ; WX 565 ; N uni2C76 ; G 4346 -U 11383 ; WX 782 ; N uni2C77 ; G 4347 -U 11385 ; WX 538 ; N uni2C79 ; G 4348 -U 11386 ; WX 687 ; N uni2C7A ; G 4349 -U 11387 ; WX 559 ; N uni2C7B ; G 4350 -U 11388 ; WX 219 ; N uni2C7C ; G 4351 -U 11389 ; WX 487 ; N uni2C7D ; G 4352 -U 11390 ; WX 720 ; N uni2C7E ; G 4353 -U 11391 ; WX 725 ; N uni2C7F ; G 4354 -U 11520 ; WX 663 ; N uni2D00 ; G 4355 -U 11521 ; WX 676 ; N uni2D01 ; G 4356 -U 11522 ; WX 661 ; N uni2D02 ; G 4357 -U 11523 ; WX 629 ; N uni2D03 ; G 4358 -U 11524 ; WX 661 ; N uni2D04 ; G 4359 -U 11525 ; WX 1032 ; N uni2D05 ; G 4360 -U 11526 ; WX 718 ; N uni2D06 ; G 4361 -U 11527 ; WX 1032 ; N uni2D07 ; G 4362 -U 11528 ; WX 648 ; N uni2D08 ; G 4363 -U 11529 ; WX 667 ; N uni2D09 ; G 4364 -U 11530 ; WX 1032 ; N uni2D0A ; G 4365 -U 11531 ; WX 673 ; N uni2D0B ; G 4366 -U 11532 ; WX 677 ; N uni2D0C ; G 4367 -U 11533 ; WX 1036 ; N uni2D0D ; G 4368 -U 11534 ; WX 680 ; N uni2D0E ; G 4369 -U 11535 ; WX 886 ; N uni2D0F ; G 4370 -U 11536 ; WX 1032 ; N uni2D10 ; G 4371 -U 11537 ; WX 683 ; N uni2D11 ; G 4372 -U 11538 ; WX 674 ; N uni2D12 ; G 4373 -U 11539 ; WX 1035 ; N uni2D13 ; G 4374 -U 11540 ; WX 1033 ; N uni2D14 ; G 4375 -U 11541 ; WX 1027 ; N uni2D15 ; G 4376 -U 11542 ; WX 676 ; N uni2D16 ; G 4377 -U 11543 ; WX 673 ; N uni2D17 ; G 4378 -U 11544 ; WX 667 ; N uni2D18 ; G 4379 -U 11545 ; WX 667 ; N uni2D19 ; G 4380 -U 11546 ; WX 660 ; N uni2D1A ; G 4381 -U 11547 ; WX 671 ; N uni2D1B ; G 4382 -U 11548 ; WX 1039 ; N uni2D1C ; G 4383 -U 11549 ; WX 673 ; N uni2D1D ; G 4384 -U 11550 ; WX 692 ; N uni2D1E ; G 4385 -U 11551 ; WX 659 ; N uni2D1F ; G 4386 -U 11552 ; WX 1048 ; N uni2D20 ; G 4387 -U 11553 ; WX 660 ; N uni2D21 ; G 4388 -U 11554 ; WX 654 ; N uni2D22 ; G 4389 -U 11555 ; WX 670 ; N uni2D23 ; G 4390 -U 11556 ; WX 733 ; N uni2D24 ; G 4391 -U 11557 ; WX 1017 ; N uni2D25 ; G 4392 -U 11800 ; WX 580 ; N uni2E18 ; G 4393 -U 11807 ; WX 838 ; N uni2E1F ; G 4394 -U 11810 ; WX 457 ; N uni2E22 ; G 4395 -U 11811 ; WX 457 ; N uni2E23 ; G 4396 -U 11812 ; WX 457 ; N uni2E24 ; G 4397 -U 11813 ; WX 457 ; N uni2E25 ; G 4398 -U 11822 ; WX 580 ; N uni2E2E ; G 4399 -U 19904 ; WX 896 ; N uni4DC0 ; G 4400 -U 19905 ; WX 896 ; N uni4DC1 ; G 4401 -U 19906 ; WX 896 ; N uni4DC2 ; G 4402 -U 19907 ; WX 896 ; N uni4DC3 ; G 4403 -U 19908 ; WX 896 ; N uni4DC4 ; G 4404 -U 19909 ; WX 896 ; N uni4DC5 ; G 4405 -U 19910 ; WX 896 ; N uni4DC6 ; G 4406 -U 19911 ; WX 896 ; N uni4DC7 ; G 4407 -U 19912 ; WX 896 ; N uni4DC8 ; G 4408 -U 19913 ; WX 896 ; N uni4DC9 ; G 4409 -U 19914 ; WX 896 ; N uni4DCA ; G 4410 -U 19915 ; WX 896 ; N uni4DCB ; G 4411 -U 19916 ; WX 896 ; N uni4DCC ; G 4412 -U 19917 ; WX 896 ; N uni4DCD ; G 4413 -U 19918 ; WX 896 ; N uni4DCE ; G 4414 -U 19919 ; WX 896 ; N uni4DCF ; G 4415 -U 19920 ; WX 896 ; N uni4DD0 ; G 4416 -U 19921 ; WX 896 ; N uni4DD1 ; G 4417 -U 19922 ; WX 896 ; N uni4DD2 ; G 4418 -U 19923 ; WX 896 ; N uni4DD3 ; G 4419 -U 19924 ; WX 896 ; N uni4DD4 ; G 4420 -U 19925 ; WX 896 ; N uni4DD5 ; G 4421 -U 19926 ; WX 896 ; N uni4DD6 ; G 4422 -U 19927 ; WX 896 ; N uni4DD7 ; G 4423 -U 19928 ; WX 896 ; N uni4DD8 ; G 4424 -U 19929 ; WX 896 ; N uni4DD9 ; G 4425 -U 19930 ; WX 896 ; N uni4DDA ; G 4426 -U 19931 ; WX 896 ; N uni4DDB ; G 4427 -U 19932 ; WX 896 ; N uni4DDC ; G 4428 -U 19933 ; WX 896 ; N uni4DDD ; G 4429 -U 19934 ; WX 896 ; N uni4DDE ; G 4430 -U 19935 ; WX 896 ; N uni4DDF ; G 4431 -U 19936 ; WX 896 ; N uni4DE0 ; G 4432 -U 19937 ; WX 896 ; N uni4DE1 ; G 4433 -U 19938 ; WX 896 ; N uni4DE2 ; G 4434 -U 19939 ; WX 896 ; N uni4DE3 ; G 4435 -U 19940 ; WX 896 ; N uni4DE4 ; G 4436 -U 19941 ; WX 896 ; N uni4DE5 ; G 4437 -U 19942 ; WX 896 ; N uni4DE6 ; G 4438 -U 19943 ; WX 896 ; N uni4DE7 ; G 4439 -U 19944 ; WX 896 ; N uni4DE8 ; G 4440 -U 19945 ; WX 896 ; N uni4DE9 ; G 4441 -U 19946 ; WX 896 ; N uni4DEA ; G 4442 -U 19947 ; WX 896 ; N uni4DEB ; G 4443 -U 19948 ; WX 896 ; N uni4DEC ; G 4444 -U 19949 ; WX 896 ; N uni4DED ; G 4445 -U 19950 ; WX 896 ; N uni4DEE ; G 4446 -U 19951 ; WX 896 ; N uni4DEF ; G 4447 -U 19952 ; WX 896 ; N uni4DF0 ; G 4448 -U 19953 ; WX 896 ; N uni4DF1 ; G 4449 -U 19954 ; WX 896 ; N uni4DF2 ; G 4450 -U 19955 ; WX 896 ; N uni4DF3 ; G 4451 -U 19956 ; WX 896 ; N uni4DF4 ; G 4452 -U 19957 ; WX 896 ; N uni4DF5 ; G 4453 -U 19958 ; WX 896 ; N uni4DF6 ; G 4454 -U 19959 ; WX 896 ; N uni4DF7 ; G 4455 -U 19960 ; WX 896 ; N uni4DF8 ; G 4456 -U 19961 ; WX 896 ; N uni4DF9 ; G 4457 -U 19962 ; WX 896 ; N uni4DFA ; G 4458 -U 19963 ; WX 896 ; N uni4DFB ; G 4459 -U 19964 ; WX 896 ; N uni4DFC ; G 4460 -U 19965 ; WX 896 ; N uni4DFD ; G 4461 -U 19966 ; WX 896 ; N uni4DFE ; G 4462 -U 19967 ; WX 896 ; N uni4DFF ; G 4463 -U 42192 ; WX 762 ; N uniA4D0 ; G 4464 -U 42193 ; WX 733 ; N uniA4D1 ; G 4465 -U 42194 ; WX 733 ; N uniA4D2 ; G 4466 -U 42195 ; WX 830 ; N uniA4D3 ; G 4467 -U 42196 ; WX 682 ; N uniA4D4 ; G 4468 -U 42197 ; WX 682 ; N uniA4D5 ; G 4469 -U 42198 ; WX 821 ; N uniA4D6 ; G 4470 -U 42199 ; WX 775 ; N uniA4D7 ; G 4471 -U 42200 ; WX 775 ; N uniA4D8 ; G 4472 -U 42201 ; WX 530 ; N uniA4D9 ; G 4473 -U 42202 ; WX 734 ; N uniA4DA ; G 4474 -U 42203 ; WX 734 ; N uniA4DB ; G 4475 -U 42204 ; WX 725 ; N uniA4DC ; G 4476 -U 42205 ; WX 683 ; N uniA4DD ; G 4477 -U 42206 ; WX 683 ; N uniA4DE ; G 4478 -U 42207 ; WX 995 ; N uniA4DF ; G 4479 -U 42208 ; WX 837 ; N uniA4E0 ; G 4480 -U 42209 ; WX 637 ; N uniA4E1 ; G 4481 -U 42210 ; WX 720 ; N uniA4E2 ; G 4482 -U 42211 ; WX 770 ; N uniA4E3 ; G 4483 -U 42212 ; WX 770 ; N uniA4E4 ; G 4484 -U 42213 ; WX 774 ; N uniA4E5 ; G 4485 -U 42214 ; WX 774 ; N uniA4E6 ; G 4486 -U 42215 ; WX 837 ; N uniA4E7 ; G 4487 -U 42216 ; WX 786 ; N uniA4E8 ; G 4488 -U 42217 ; WX 530 ; N uniA4E9 ; G 4489 -U 42218 ; WX 1103 ; N uniA4EA ; G 4490 -U 42219 ; WX 771 ; N uniA4EB ; G 4491 -U 42220 ; WX 724 ; N uniA4EC ; G 4492 -U 42221 ; WX 762 ; N uniA4ED ; G 4493 -U 42222 ; WX 774 ; N uniA4EE ; G 4494 -U 42223 ; WX 774 ; N uniA4EF ; G 4495 -U 42224 ; WX 683 ; N uniA4F0 ; G 4496 -U 42225 ; WX 683 ; N uniA4F1 ; G 4497 -U 42226 ; WX 372 ; N uniA4F2 ; G 4498 -U 42227 ; WX 850 ; N uniA4F3 ; G 4499 -U 42228 ; WX 812 ; N uniA4F4 ; G 4500 -U 42229 ; WX 812 ; N uniA4F5 ; G 4501 -U 42230 ; WX 576 ; N uniA4F6 ; G 4502 -U 42231 ; WX 830 ; N uniA4F7 ; G 4503 -U 42232 ; WX 322 ; N uniA4F8 ; G 4504 -U 42233 ; WX 322 ; N uniA4F9 ; G 4505 -U 42234 ; WX 674 ; N uniA4FA ; G 4506 -U 42235 ; WX 674 ; N uniA4FB ; G 4507 -U 42236 ; WX 322 ; N uniA4FC ; G 4508 -U 42237 ; WX 322 ; N uniA4FD ; G 4509 -U 42238 ; WX 588 ; N uniA4FE ; G 4510 -U 42239 ; WX 588 ; N uniA4FF ; G 4511 -U 42564 ; WX 720 ; N uniA644 ; G 4512 -U 42565 ; WX 595 ; N uniA645 ; G 4513 -U 42566 ; WX 436 ; N uniA646 ; G 4514 -U 42567 ; WX 440 ; N uniA647 ; G 4515 -U 42572 ; WX 1405 ; N uniA64C ; G 4516 -U 42573 ; WX 1173 ; N uniA64D ; G 4517 -U 42576 ; WX 1234 ; N uniA650 ; G 4518 -U 42577 ; WX 1027 ; N uniA651 ; G 4519 -U 42580 ; WX 1174 ; N uniA654 ; G 4520 -U 42581 ; WX 972 ; N uniA655 ; G 4521 -U 42582 ; WX 1100 ; N uniA656 ; G 4522 -U 42583 ; WX 969 ; N uniA657 ; G 4523 -U 42594 ; WX 1100 ; N uniA662 ; G 4524 -U 42595 ; WX 940 ; N uniA663 ; G 4525 -U 42596 ; WX 1096 ; N uniA664 ; G 4526 -U 42597 ; WX 915 ; N uniA665 ; G 4527 -U 42598 ; WX 1260 ; N uniA666 ; G 4528 -U 42599 ; WX 997 ; N uniA667 ; G 4529 -U 42600 ; WX 850 ; N uniA668 ; G 4530 -U 42601 ; WX 687 ; N uniA669 ; G 4531 -U 42602 ; WX 1037 ; N uniA66A ; G 4532 -U 42603 ; WX 868 ; N uniA66B ; G 4533 -U 42604 ; WX 1406 ; N uniA66C ; G 4534 -U 42605 ; WX 1106 ; N uniA66D ; G 4535 -U 42606 ; WX 961 ; N uniA66E ; G 4536 -U 42634 ; WX 944 ; N uniA68A ; G 4537 -U 42635 ; WX 749 ; N uniA68B ; G 4538 -U 42636 ; WX 682 ; N uniA68C ; G 4539 -U 42637 ; WX 580 ; N uniA68D ; G 4540 -U 42644 ; WX 808 ; N uniA694 ; G 4541 -U 42645 ; WX 712 ; N uniA695 ; G 4542 -U 42648 ; WX 1406 ; N uniA698 ; G 4543 -U 42649 ; WX 1106 ; N uniA699 ; G 4544 -U 42760 ; WX 500 ; N uniA708 ; G 4545 -U 42761 ; WX 500 ; N uniA709 ; G 4546 -U 42762 ; WX 500 ; N uniA70A ; G 4547 -U 42763 ; WX 500 ; N uniA70B ; G 4548 -U 42764 ; WX 500 ; N uniA70C ; G 4549 -U 42765 ; WX 500 ; N uniA70D ; G 4550 -U 42766 ; WX 500 ; N uniA70E ; G 4551 -U 42767 ; WX 500 ; N uniA70F ; G 4552 -U 42768 ; WX 500 ; N uniA710 ; G 4553 -U 42769 ; WX 500 ; N uniA711 ; G 4554 -U 42770 ; WX 500 ; N uniA712 ; G 4555 -U 42771 ; WX 500 ; N uniA713 ; G 4556 -U 42772 ; WX 500 ; N uniA714 ; G 4557 -U 42773 ; WX 500 ; N uniA715 ; G 4558 -U 42774 ; WX 500 ; N uniA716 ; G 4559 -U 42779 ; WX 400 ; N uniA71B ; G 4560 -U 42780 ; WX 400 ; N uniA71C ; G 4561 -U 42781 ; WX 287 ; N uniA71D ; G 4562 -U 42782 ; WX 287 ; N uniA71E ; G 4563 -U 42783 ; WX 287 ; N uniA71F ; G 4564 -U 42786 ; WX 444 ; N uniA722 ; G 4565 -U 42787 ; WX 390 ; N uniA723 ; G 4566 -U 42788 ; WX 540 ; N uniA724 ; G 4567 -U 42789 ; WX 540 ; N uniA725 ; G 4568 -U 42790 ; WX 837 ; N uniA726 ; G 4569 -U 42791 ; WX 712 ; N uniA727 ; G 4570 -U 42792 ; WX 1031 ; N uniA728 ; G 4571 -U 42793 ; WX 857 ; N uniA729 ; G 4572 -U 42794 ; WX 696 ; N uniA72A ; G 4573 -U 42795 ; WX 557 ; N uniA72B ; G 4574 -U 42800 ; WX 559 ; N uniA730 ; G 4575 -U 42801 ; WX 595 ; N uniA731 ; G 4576 -U 42802 ; WX 1349 ; N uniA732 ; G 4577 -U 42803 ; WX 1052 ; N uniA733 ; G 4578 -U 42804 ; WX 1285 ; N uniA734 ; G 4579 -U 42805 ; WX 1065 ; N uniA735 ; G 4580 -U 42806 ; WX 1245 ; N uniA736 ; G 4581 -U 42807 ; WX 1052 ; N uniA737 ; G 4582 -U 42808 ; WX 1079 ; N uniA738 ; G 4583 -U 42809 ; WX 922 ; N uniA739 ; G 4584 -U 42810 ; WX 1079 ; N uniA73A ; G 4585 -U 42811 ; WX 922 ; N uniA73B ; G 4586 -U 42812 ; WX 1035 ; N uniA73C ; G 4587 -U 42813 ; WX 922 ; N uniA73D ; G 4588 -U 42814 ; WX 698 ; N uniA73E ; G 4589 -U 42815 ; WX 549 ; N uniA73F ; G 4590 -U 42816 ; WX 656 ; N uniA740 ; G 4591 -U 42817 ; WX 579 ; N uniA741 ; G 4592 -U 42822 ; WX 850 ; N uniA746 ; G 4593 -U 42823 ; WX 542 ; N uniA747 ; G 4594 -U 42824 ; WX 683 ; N uniA748 ; G 4595 -U 42825 ; WX 531 ; N uniA749 ; G 4596 -U 42826 ; WX 918 ; N uniA74A ; G 4597 -U 42827 ; WX 814 ; N uniA74B ; G 4598 -U 42830 ; WX 1406 ; N uniA74E ; G 4599 -U 42831 ; WX 1106 ; N uniA74F ; G 4600 -U 42832 ; WX 733 ; N uniA750 ; G 4601 -U 42833 ; WX 716 ; N uniA751 ; G 4602 -U 42834 ; WX 948 ; N uniA752 ; G 4603 -U 42835 ; WX 937 ; N uniA753 ; G 4604 -U 42838 ; WX 850 ; N uniA756 ; G 4605 -U 42839 ; WX 716 ; N uniA757 ; G 4606 -U 42852 ; WX 738 ; N uniA764 ; G 4607 -U 42853 ; WX 716 ; N uniA765 ; G 4608 -U 42854 ; WX 738 ; N uniA766 ; G 4609 -U 42855 ; WX 716 ; N uniA767 ; G 4610 -U 42880 ; WX 637 ; N uniA780 ; G 4611 -U 42881 ; WX 343 ; N uniA781 ; G 4612 -U 42882 ; WX 837 ; N uniA782 ; G 4613 -U 42883 ; WX 712 ; N uniA783 ; G 4614 -U 42889 ; WX 400 ; N uniA789 ; G 4615 -U 42890 ; WX 396 ; N uniA78A ; G 4616 -U 42891 ; WX 456 ; N uniA78B ; G 4617 -U 42892 ; WX 306 ; N uniA78C ; G 4618 -U 42893 ; WX 808 ; N uniA78D ; G 4619 -U 42894 ; WX 693 ; N uniA78E ; G 4620 -U 42896 ; WX 928 ; N uniA790 ; G 4621 -U 42897 ; WX 768 ; N uniA791 ; G 4622 -U 42912 ; WX 821 ; N uniA7A0 ; G 4623 -U 42913 ; WX 716 ; N uniA7A1 ; G 4624 -U 42914 ; WX 775 ; N uniA7A2 ; G 4625 -U 42915 ; WX 665 ; N uniA7A3 ; G 4626 -U 42916 ; WX 837 ; N uniA7A4 ; G 4627 -U 42917 ; WX 712 ; N uniA7A5 ; G 4628 -U 42918 ; WX 770 ; N uniA7A6 ; G 4629 -U 42919 ; WX 493 ; N uniA7A7 ; G 4630 -U 42920 ; WX 720 ; N uniA7A8 ; G 4631 -U 42921 ; WX 595 ; N uniA7A9 ; G 4632 -U 42922 ; WX 886 ; N uniA7AA ; G 4633 -U 43000 ; WX 613 ; N uniA7F8 ; G 4634 -U 43001 ; WX 689 ; N uniA7F9 ; G 4635 -U 43002 ; WX 1062 ; N uniA7FA ; G 4636 -U 43003 ; WX 683 ; N uniA7FB ; G 4637 -U 43004 ; WX 733 ; N uniA7FC ; G 4638 -U 43005 ; WX 995 ; N uniA7FD ; G 4639 -U 43006 ; WX 372 ; N uniA7FE ; G 4640 -U 43007 ; WX 1325 ; N uniA7FF ; G 4641 -U 61184 ; WX 216 ; N uni02E5.5 ; G 4642 -U 61185 ; WX 242 ; N uni02E6.5 ; G 4643 -U 61186 ; WX 267 ; N uni02E7.5 ; G 4644 -U 61187 ; WX 277 ; N uni02E8.5 ; G 4645 -U 61188 ; WX 282 ; N uni02E9.5 ; G 4646 -U 61189 ; WX 242 ; N uni02E5.4 ; G 4647 -U 61190 ; WX 216 ; N uni02E6.4 ; G 4648 -U 61191 ; WX 242 ; N uni02E7.4 ; G 4649 -U 61192 ; WX 267 ; N uni02E8.4 ; G 4650 -U 61193 ; WX 277 ; N uni02E9.4 ; G 4651 -U 61194 ; WX 267 ; N uni02E5.3 ; G 4652 -U 61195 ; WX 242 ; N uni02E6.3 ; G 4653 -U 61196 ; WX 216 ; N uni02E7.3 ; G 4654 -U 61197 ; WX 242 ; N uni02E8.3 ; G 4655 -U 61198 ; WX 267 ; N uni02E9.3 ; G 4656 -U 61199 ; WX 277 ; N uni02E5.2 ; G 4657 -U 61200 ; WX 267 ; N uni02E6.2 ; G 4658 -U 61201 ; WX 242 ; N uni02E7.2 ; G 4659 -U 61202 ; WX 216 ; N uni02E8.2 ; G 4660 -U 61203 ; WX 242 ; N uni02E9.2 ; G 4661 -U 61204 ; WX 282 ; N uni02E5.1 ; G 4662 -U 61205 ; WX 277 ; N uni02E6.1 ; G 4663 -U 61206 ; WX 267 ; N uni02E7.1 ; G 4664 -U 61207 ; WX 242 ; N uni02E8.1 ; G 4665 -U 61208 ; WX 216 ; N uni02E9.1 ; G 4666 -U 61209 ; WX 282 ; N stem ; G 4667 -U 62464 ; WX 612 ; N uniF400 ; G 4668 -U 62465 ; WX 612 ; N uniF401 ; G 4669 -U 62466 ; WX 653 ; N uniF402 ; G 4670 -U 62467 ; WX 902 ; N uniF403 ; G 4671 -U 62468 ; WX 617 ; N uniF404 ; G 4672 -U 62469 ; WX 617 ; N uniF405 ; G 4673 -U 62470 ; WX 680 ; N uniF406 ; G 4674 -U 62471 ; WX 904 ; N uniF407 ; G 4675 -U 62472 ; WX 599 ; N uniF408 ; G 4676 -U 62473 ; WX 617 ; N uniF409 ; G 4677 -U 62474 ; WX 1163 ; N uniF40A ; G 4678 -U 62475 ; WX 621 ; N uniF40B ; G 4679 -U 62476 ; WX 622 ; N uniF40C ; G 4680 -U 62477 ; WX 893 ; N uniF40D ; G 4681 -U 62478 ; WX 612 ; N uniF40E ; G 4682 -U 62479 ; WX 622 ; N uniF40F ; G 4683 -U 62480 ; WX 924 ; N uniF410 ; G 4684 -U 62481 ; WX 622 ; N uniF411 ; G 4685 -U 62482 ; WX 754 ; N uniF412 ; G 4686 -U 62483 ; WX 624 ; N uniF413 ; G 4687 -U 62484 ; WX 886 ; N uniF414 ; G 4688 -U 62485 ; WX 622 ; N uniF415 ; G 4689 -U 62486 ; WX 907 ; N uniF416 ; G 4690 -U 62487 ; WX 621 ; N uniF417 ; G 4691 -U 62488 ; WX 611 ; N uniF418 ; G 4692 -U 62489 ; WX 624 ; N uniF419 ; G 4693 -U 62490 ; WX 677 ; N uniF41A ; G 4694 -U 62491 ; WX 621 ; N uniF41B ; G 4695 -U 62492 ; WX 611 ; N uniF41C ; G 4696 -U 62493 ; WX 630 ; N uniF41D ; G 4697 -U 62494 ; WX 622 ; N uniF41E ; G 4698 -U 62495 ; WX 561 ; N uniF41F ; G 4699 -U 62496 ; WX 612 ; N uniF420 ; G 4700 -U 62497 ; WX 626 ; N uniF421 ; G 4701 -U 62498 ; WX 612 ; N uniF422 ; G 4702 -U 62499 ; WX 611 ; N uniF423 ; G 4703 -U 62500 ; WX 618 ; N uniF424 ; G 4704 -U 62501 ; WX 667 ; N uniF425 ; G 4705 -U 62502 ; WX 963 ; N uniF426 ; G 4706 -U 62504 ; WX 1023 ; N uniF428 ; G 4707 -U 62505 ; WX 844 ; N uniF429 ; G 4708 -U 62506 ; WX 563 ; N uniF42A ; G 4709 -U 62507 ; WX 563 ; N uniF42B ; G 4710 -U 62508 ; WX 563 ; N uniF42C ; G 4711 -U 62509 ; WX 563 ; N uniF42D ; G 4712 -U 62510 ; WX 563 ; N uniF42E ; G 4713 -U 62511 ; WX 563 ; N uniF42F ; G 4714 -U 62512 ; WX 555 ; N uniF430 ; G 4715 -U 62513 ; WX 555 ; N uniF431 ; G 4716 -U 62514 ; WX 555 ; N uniF432 ; G 4717 -U 62515 ; WX 555 ; N uniF433 ; G 4718 -U 62516 ; WX 573 ; N uniF434 ; G 4719 -U 62517 ; WX 573 ; N uniF435 ; G 4720 -U 62518 ; WX 573 ; N uniF436 ; G 4721 -U 62519 ; WX 824 ; N uniF437 ; G 4722 -U 62520 ; WX 824 ; N uniF438 ; G 4723 -U 62521 ; WX 824 ; N uniF439 ; G 4724 -U 62522 ; WX 824 ; N uniF43A ; G 4725 -U 62523 ; WX 824 ; N uniF43B ; G 4726 -U 62524 ; WX 611 ; N uniF43C ; G 4727 -U 62525 ; WX 611 ; N uniF43D ; G 4728 -U 62526 ; WX 611 ; N uniF43E ; G 4729 -U 62527 ; WX 611 ; N uniF43F ; G 4730 -U 62528 ; WX 611 ; N uniF440 ; G 4731 -U 62529 ; WX 611 ; N uniF441 ; G 4732 -U 62917 ; WX 687 ; N uniF5C5 ; G 4733 -U 64256 ; WX 833 ; N uniFB00 ; G 4734 -U 64257 ; WX 787 ; N fi ; G 4735 -U 64258 ; WX 787 ; N fl ; G 4736 -U 64259 ; WX 1138 ; N uniFB03 ; G 4737 -U 64260 ; WX 1139 ; N uniFB04 ; G 4738 -U 64261 ; WX 808 ; N uniFB05 ; G 4739 -U 64262 ; WX 1020 ; N uniFB06 ; G 4740 -U 64275 ; WX 1388 ; N uniFB13 ; G 4741 -U 64276 ; WX 1384 ; N uniFB14 ; G 4742 -U 64277 ; WX 1378 ; N uniFB15 ; G 4743 -U 64278 ; WX 1384 ; N uniFB16 ; G 4744 -U 64279 ; WX 1713 ; N uniFB17 ; G 4745 -U 64285 ; WX 294 ; N uniFB1D ; G 4746 -U 64286 ; WX 0 ; N uniFB1E ; G 4747 -U 64287 ; WX 663 ; N uniFB1F ; G 4748 -U 64288 ; WX 665 ; N uniFB20 ; G 4749 -U 64289 ; WX 939 ; N uniFB21 ; G 4750 -U 64290 ; WX 788 ; N uniFB22 ; G 4751 -U 64291 ; WX 920 ; N uniFB23 ; G 4752 -U 64292 ; WX 786 ; N uniFB24 ; G 4753 -U 64293 ; WX 857 ; N uniFB25 ; G 4754 -U 64294 ; WX 869 ; N uniFB26 ; G 4755 -U 64295 ; WX 821 ; N uniFB27 ; G 4756 -U 64296 ; WX 890 ; N uniFB28 ; G 4757 -U 64297 ; WX 838 ; N uniFB29 ; G 4758 -U 64298 ; WX 749 ; N uniFB2A ; G 4759 -U 64299 ; WX 749 ; N uniFB2B ; G 4760 -U 64300 ; WX 749 ; N uniFB2C ; G 4761 -U 64301 ; WX 749 ; N uniFB2D ; G 4762 -U 64302 ; WX 728 ; N uniFB2E ; G 4763 -U 64303 ; WX 728 ; N uniFB2F ; G 4764 -U 64304 ; WX 728 ; N uniFB30 ; G 4765 -U 64305 ; WX 610 ; N uniFB31 ; G 4766 -U 64306 ; WX 447 ; N uniFB32 ; G 4767 -U 64307 ; WX 588 ; N uniFB33 ; G 4768 -U 64308 ; WX 687 ; N uniFB34 ; G 4769 -U 64309 ; WX 343 ; N uniFB35 ; G 4770 -U 64310 ; WX 400 ; N uniFB36 ; G 4771 -U 64311 ; WX 1000 ; N uniFB37 ; G 4772 -U 64312 ; WX 679 ; N uniFB38 ; G 4773 -U 64313 ; WX 436 ; N uniFB39 ; G 4774 -U 64314 ; WX 578 ; N uniFB3A ; G 4775 -U 64315 ; WX 566 ; N uniFB3B ; G 4776 -U 64316 ; WX 605 ; N uniFB3C ; G 4777 -U 64317 ; WX 1000 ; N uniFB3D ; G 4778 -U 64318 ; WX 724 ; N uniFB3E ; G 4779 -U 64319 ; WX 1000 ; N uniFB3F ; G 4780 -U 64320 ; WX 453 ; N uniFB40 ; G 4781 -U 64321 ; WX 680 ; N uniFB41 ; G 4782 -U 64322 ; WX 1000 ; N uniFB42 ; G 4783 -U 64323 ; WX 675 ; N uniFB43 ; G 4784 -U 64324 ; WX 658 ; N uniFB44 ; G 4785 -U 64325 ; WX 1000 ; N uniFB45 ; G 4786 -U 64326 ; WX 653 ; N uniFB46 ; G 4787 -U 64327 ; WX 736 ; N uniFB47 ; G 4788 -U 64328 ; WX 602 ; N uniFB48 ; G 4789 -U 64329 ; WX 749 ; N uniFB49 ; G 4790 -U 64330 ; WX 683 ; N uniFB4A ; G 4791 -U 64331 ; WX 343 ; N uniFB4B ; G 4792 -U 64332 ; WX 610 ; N uniFB4C ; G 4793 -U 64333 ; WX 566 ; N uniFB4D ; G 4794 -U 64334 ; WX 658 ; N uniFB4E ; G 4795 -U 64335 ; WX 710 ; N uniFB4F ; G 4796 -U 65024 ; WX 0 ; N uniFE00 ; G 4797 -U 65025 ; WX 0 ; N uniFE01 ; G 4798 -U 65026 ; WX 0 ; N uniFE02 ; G 4799 -U 65027 ; WX 0 ; N uniFE03 ; G 4800 -U 65028 ; WX 0 ; N uniFE04 ; G 4801 -U 65029 ; WX 0 ; N uniFE05 ; G 4802 -U 65030 ; WX 0 ; N uniFE06 ; G 4803 -U 65031 ; WX 0 ; N uniFE07 ; G 4804 -U 65032 ; WX 0 ; N uniFE08 ; G 4805 -U 65033 ; WX 0 ; N uniFE09 ; G 4806 -U 65034 ; WX 0 ; N uniFE0A ; G 4807 -U 65035 ; WX 0 ; N uniFE0B ; G 4808 -U 65036 ; WX 0 ; N uniFE0C ; G 4809 -U 65037 ; WX 0 ; N uniFE0D ; G 4810 -U 65038 ; WX 0 ; N uniFE0E ; G 4811 -U 65039 ; WX 0 ; N uniFE0F ; G 4812 -U 65056 ; WX 0 ; N uniFE20 ; G 4813 -U 65057 ; WX 0 ; N uniFE21 ; G 4814 -U 65058 ; WX 0 ; N uniFE22 ; G 4815 -U 65059 ; WX 0 ; N uniFE23 ; G 4816 -U 65529 ; WX 0 ; N uniFFF9 ; G 4817 -U 65530 ; WX 0 ; N uniFFFA ; G 4818 -U 65531 ; WX 0 ; N uniFFFB ; G 4819 -U 65532 ; WX 0 ; N uniFFFC ; G 4820 -U 65533 ; WX 1113 ; N uniFFFD ; G 4821 -EndCharMetrics -StartKernData -StartKernPairs 1921 - -KPX dollar ampersand -63 -KPX dollar two -63 -KPX dollar seven -196 -KPX dollar eight -92 -KPX dollar nine -139 -KPX dollar colon -112 -KPX dollar less -235 -KPX dollar F -63 -KPX dollar G -63 -KPX dollar W -112 -KPX dollar Y -112 -KPX dollar Z -92 -KPX dollar backslash -149 -KPX dollar copyright -63 -KPX dollar questiondown -149 -KPX dollar Aacute -149 -KPX dollar Egrave -63 -KPX dollar Eacute -63 -KPX dollar Ecircumflex -63 -KPX dollar Edieresis -63 -KPX dollar Igrave -63 -KPX dollar Iacute -63 -KPX dollar Icircumflex -63 -KPX dollar Idieresis -63 -KPX dollar Ntilde -63 -KPX dollar Oacute -63 -KPX dollar Dcaron -63 -KPX dollar Dcroat -63 -KPX dollar Emacron -63 -KPX dollar Ebreve -63 -KPX dollar Hcircumflex -196 -KPX dollar hcircumflex -112 -KPX dollar Hbar -196 -KPX dollar hbar -112 -KPX dollar Imacron -92 -KPX dollar Ibreve -92 -KPX dollar Iogonek -92 -KPX dollar Idot -92 -KPX dollar IJ -92 -KPX dollar Jcircumflex -92 -KPX dollar Kcommaaccent -112 -KPX dollar kcommaaccent -92 -KPX dollar kgreenlandic -235 -KPX dollar Lacute -149 -KPX dollar lacute -235 -KPX dollar uni01AC -63 -KPX dollar uni01AE -63 -KPX dollar uni01DC -196 -KPX dollar uni01DD -112 -KPX dollar uni01F0 -63 -KPX dollar uni01F4 -235 -KPX dollar uni01F5 -149 - -KPX percent nine -83 -KPX percent colon -112 -KPX percent less -112 -KPX percent Kcommaaccent -112 -KPX percent kgreenlandic -112 -KPX percent lacute -112 -KPX percent uni01F4 -112 - -KPX ampersand six -73 -KPX ampersand Gcircumflex -73 -KPX ampersand Gbreve -73 -KPX ampersand Gdotaccent -73 -KPX ampersand Gcommaaccent -73 -KPX ampersand uni01DA -73 - -KPX quotesingle less -159 -KPX quotesingle kgreenlandic -159 -KPX quotesingle lacute -159 -KPX quotesingle uni01F4 -159 - -KPX parenright dollar -264 -KPX parenright D -235 -KPX parenright H -159 -KPX parenright R -159 -KPX parenright U -225 -KPX parenright X -196 -KPX parenright backslash -188 -KPX parenright cent -235 -KPX parenright sterling -235 -KPX parenright currency -235 -KPX parenright yen -235 -KPX parenright brokenbar -235 -KPX parenright section -235 -KPX parenright dieresis -235 -KPX parenright ordfeminine -159 -KPX parenright guillemotleft -159 -KPX parenright logicalnot -159 -KPX parenright sfthyphen -159 -KPX parenright acute -159 -KPX parenright mu -159 -KPX parenright paragraph -159 -KPX parenright periodcentered -159 -KPX parenright cedilla -159 -KPX parenright ordmasculine -159 -KPX parenright guillemotright -196 -KPX parenright onequarter -196 -KPX parenright onehalf -196 -KPX parenright threequarters -196 -KPX parenright questiondown -188 -KPX parenright Aacute -188 -KPX parenright Acircumflex -264 -KPX parenright Atilde -235 -KPX parenright Adieresis -264 -KPX parenright Aring -235 -KPX parenright AE -264 -KPX parenright Ccedilla -235 -KPX parenright Otilde -159 -KPX parenright multiply -159 -KPX parenright Ugrave -159 -KPX parenright Ucircumflex -159 -KPX parenright Yacute -159 -KPX parenright dcaron -159 -KPX parenright dmacron -159 -KPX parenright emacron -159 -KPX parenright ebreve -159 -KPX parenright edotaccent -225 -KPX parenright eogonek -225 -KPX parenright ecaron -225 -KPX parenright imacron -196 -KPX parenright ibreve -196 -KPX parenright iogonek -196 -KPX parenright dotlessi -196 -KPX parenright ij -196 -KPX parenright jcircumflex -196 -KPX parenright Lacute -188 -KPX parenright uni01A5 -235 -KPX parenright uni01AD -159 -KPX parenright Uhorn -159 -KPX parenright uni01F1 -159 -KPX parenright uni01F5 -188 - -KPX asterisk seven -36 -KPX asterisk less -83 -KPX asterisk Hbar -36 -KPX asterisk lacute -83 - -KPX period ampersand -131 -KPX period two -131 -KPX period eight -73 -KPX period colon -55 -KPX period H -112 -KPX period R -112 -KPX period X -112 -KPX period backslash -206 -KPX period ordfeminine -112 -KPX period guillemotleft -112 -KPX period logicalnot -112 -KPX period sfthyphen -112 -KPX period acute -112 -KPX period mu -112 -KPX period paragraph -112 -KPX period periodcentered -112 -KPX period cedilla -112 -KPX period ordmasculine -112 -KPX period guillemotright -112 -KPX period onequarter -112 -KPX period onehalf -112 -KPX period threequarters -112 -KPX period questiondown -206 -KPX period Aacute -206 -KPX period Egrave -131 -KPX period Icircumflex -131 -KPX period Yacute -112 -KPX period Ebreve -178 -KPX period ebreve -112 -KPX period Idot -73 -KPX period dotlessi -112 - -KPX slash two -73 -KPX slash seven -339 -KPX slash eight -112 -KPX slash nine -282 -KPX slash colon -178 -KPX slash less -319 -KPX slash backslash -253 -KPX slash questiondown -253 -KPX slash Aacute -253 -KPX slash Ebreve -73 -KPX slash Hbar -339 -KPX slash Idot -112 -KPX slash lacute -319 - -KPX two nine -73 -KPX two semicolon -73 -KPX two less -149 -KPX two lacute -149 - -KPX three dollar -188 -KPX three D -131 -KPX three H -55 -KPX three U -63 -KPX three V -73 -KPX three X -73 -KPX three cent -131 -KPX three sterling -131 -KPX three currency -131 -KPX three yen -131 -KPX three brokenbar -131 -KPX three section -131 -KPX three dieresis -131 -KPX three ordfeminine -55 -KPX three guillemotleft -55 -KPX three logicalnot -55 -KPX three sfthyphen -55 -KPX three guillemotright -73 -KPX three onequarter -73 -KPX three onehalf -73 -KPX three threequarters -73 -KPX three Yacute -55 -KPX three edotaccent -63 -KPX three ecaron -63 -KPX three gdotaccent -73 -KPX three gcommaaccent -73 -KPX three dotlessi -73 - - -KPX five seven -92 -KPX five less -188 -KPX five H -102 -KPX five R -102 -KPX five X -112 -KPX five backslash -131 -KPX five ordfeminine -102 -KPX five guillemotleft -102 -KPX five logicalnot -102 -KPX five sfthyphen -102 -KPX five acute -102 -KPX five mu -102 -KPX five paragraph -102 -KPX five periodcentered -102 -KPX five cedilla -102 -KPX five ordmasculine -102 -KPX five guillemotright -112 -KPX five onequarter -112 -KPX five onehalf -112 -KPX five threequarters -112 -KPX five questiondown -131 -KPX five Aacute -131 -KPX five Yacute -102 -KPX five ebreve -102 -KPX five Hbar -92 -KPX five dotlessi -112 -KPX five lacute -188 - -KPX six six -73 -KPX six Gdotaccent -73 -KPX six Gcommaaccent -73 - -KPX seven dollar -159 -KPX seven seven 47 -KPX seven D -243 -KPX seven F -264 -KPX seven H -264 -KPX seven R -264 -KPX seven U -225 -KPX seven V -243 -KPX seven X -264 -KPX seven Z -282 -KPX seven backslash -339 -KPX seven cent -243 -KPX seven sterling -243 -KPX seven currency -243 -KPX seven yen -243 -KPX seven brokenbar -243 -KPX seven section -243 -KPX seven dieresis -243 -KPX seven copyright -264 -KPX seven ordfeminine -264 -KPX seven guillemotleft -264 -KPX seven logicalnot -264 -KPX seven sfthyphen -264 -KPX seven acute -264 -KPX seven mu -264 -KPX seven paragraph -264 -KPX seven periodcentered -264 -KPX seven cedilla -264 -KPX seven ordmasculine -264 -KPX seven guillemotright -264 -KPX seven onequarter -264 -KPX seven onehalf -264 -KPX seven threequarters -264 -KPX seven questiondown -339 -KPX seven Aacute -339 -KPX seven Eacute -264 -KPX seven Idieresis -264 -KPX seven Yacute -264 -KPX seven ebreve -264 -KPX seven edotaccent -225 -KPX seven ecaron -225 -KPX seven gdotaccent -243 -KPX seven gcommaaccent -243 -KPX seven Hbar 47 -KPX seven dotlessi -264 - -KPX eight dollar -92 - -KPX nine dollar -139 -KPX nine two -36 -KPX nine D -159 -KPX nine H -149 -KPX nine L -36 -KPX nine R -149 -KPX nine X -149 -KPX nine cent -159 -KPX nine sterling -159 -KPX nine currency -159 -KPX nine yen -159 -KPX nine brokenbar -159 -KPX nine section -159 -KPX nine dieresis -159 -KPX nine ordfeminine -149 -KPX nine guillemotleft -149 -KPX nine logicalnot -149 -KPX nine sfthyphen -149 -KPX nine acute -149 -KPX nine mu -149 -KPX nine paragraph -149 -KPX nine periodcentered -149 -KPX nine cedilla -149 -KPX nine ordmasculine -149 -KPX nine guillemotright -149 -KPX nine onequarter -149 -KPX nine onehalf -149 -KPX nine threequarters -149 -KPX nine Yacute -149 -KPX nine Ebreve -45 -KPX nine ebreve -149 -KPX nine dotlessi -149 - -KPX colon dollar -73 -KPX colon D -139 -KPX colon H -131 -KPX colon R -112 -KPX colon U -120 -KPX colon cent -139 -KPX colon sterling -139 -KPX colon currency -139 -KPX colon yen -139 -KPX colon brokenbar -139 -KPX colon section -139 -KPX colon dieresis -139 -KPX colon ordfeminine -131 -KPX colon guillemotleft -131 -KPX colon logicalnot -131 -KPX colon sfthyphen -131 -KPX colon acute -112 -KPX colon mu -112 -KPX colon paragraph -112 -KPX colon periodcentered -112 -KPX colon cedilla -112 -KPX colon ordmasculine -112 -KPX colon Yacute -131 -KPX colon ebreve -112 -KPX colon edotaccent -120 -KPX colon ecaron -120 - -KPX semicolon ampersand -73 -KPX semicolon two -73 -KPX semicolon H -131 -KPX semicolon ordfeminine -131 -KPX semicolon guillemotleft -131 -KPX semicolon logicalnot -131 -KPX semicolon sfthyphen -131 -KPX semicolon Egrave -73 -KPX semicolon Icircumflex -73 -KPX semicolon Yacute -131 -KPX semicolon Ebreve -112 - -KPX less dollar -196 -KPX less ampersand -73 -KPX less two -73 -KPX less D -243 -KPX less H -264 -KPX less R -264 -KPX less X -225 -KPX less cent -243 -KPX less sterling -243 -KPX less currency -243 -KPX less yen -243 -KPX less brokenbar -243 -KPX less section -243 -KPX less dieresis -243 -KPX less ordfeminine -264 -KPX less guillemotleft -264 -KPX less logicalnot -264 -KPX less sfthyphen -264 -KPX less acute -264 -KPX less mu -264 -KPX less paragraph -264 -KPX less periodcentered -264 -KPX less cedilla -264 -KPX less ordmasculine -264 -KPX less guillemotright -225 -KPX less onequarter -225 -KPX less onehalf -225 -KPX less threequarters -225 -KPX less Egrave -73 -KPX less Icircumflex -73 -KPX less Yacute -264 -KPX less Ebreve -120 -KPX less ebreve -264 -KPX less dotlessi -225 - - -KPX D backslash -63 -KPX D questiondown -63 -KPX D Aacute -63 - - -KPX N H -73 -KPX N R -73 -KPX N ordfeminine -73 -KPX N guillemotleft -73 -KPX N logicalnot -73 -KPX N sfthyphen -73 -KPX N acute -73 -KPX N mu -73 -KPX N paragraph -73 -KPX N periodcentered -73 -KPX N cedilla -73 -KPX N ordmasculine -45 -KPX N Yacute -73 -KPX N ebreve -73 - - - - - -KPX cent backslash -63 -KPX cent questiondown -63 -KPX cent Aacute -63 - -KPX sterling backslash -63 -KPX sterling questiondown -63 -KPX sterling Aacute -63 - -KPX currency backslash -63 -KPX currency questiondown -63 -KPX currency Aacute -63 - -KPX yen backslash -63 -KPX yen questiondown -63 -KPX yen Aacute -63 - -KPX brokenbar backslash -63 -KPX brokenbar questiondown -63 -KPX brokenbar Aacute -63 - -KPX section backslash -63 -KPX section questiondown -63 -KPX section Aacute -63 - - - -KPX Acircumflex ampersand -63 -KPX Acircumflex two -63 -KPX Acircumflex seven -196 -KPX Acircumflex eight -92 -KPX Acircumflex nine -139 -KPX Acircumflex colon -112 -KPX Acircumflex less -235 -KPX Acircumflex F -63 -KPX Acircumflex G -63 -KPX Acircumflex W -112 -KPX Acircumflex Y -112 -KPX Acircumflex Z -92 -KPX Acircumflex backslash -149 -KPX Acircumflex copyright -63 -KPX Acircumflex questiondown -149 -KPX Acircumflex Aacute -149 -KPX Acircumflex Egrave -63 -KPX Acircumflex Eacute -63 -KPX Acircumflex Ecircumflex -63 -KPX Acircumflex Edieresis -63 -KPX Acircumflex Igrave -63 -KPX Acircumflex Iacute -63 -KPX Acircumflex Icircumflex -63 -KPX Acircumflex Idieresis -63 -KPX Acircumflex Ntilde -63 -KPX Acircumflex Oacute -63 -KPX Acircumflex Dcaron -63 -KPX Acircumflex Dcroat -63 -KPX Acircumflex Emacron -63 -KPX Acircumflex Ebreve -63 -KPX Acircumflex Hcircumflex -196 -KPX Acircumflex hcircumflex -112 -KPX Acircumflex Hbar -196 -KPX Acircumflex hbar -112 -KPX Acircumflex Imacron -92 -KPX Acircumflex Ibreve -92 -KPX Acircumflex Iogonek -92 -KPX Acircumflex Idot -92 -KPX Acircumflex IJ -92 -KPX Acircumflex Jcircumflex -92 -KPX Acircumflex Kcommaaccent -112 -KPX Acircumflex kcommaaccent -92 -KPX Acircumflex kgreenlandic -235 -KPX Acircumflex Lacute -149 -KPX Acircumflex lacute -235 -KPX Acircumflex uni01AC -63 -KPX Acircumflex uni01AE -63 -KPX Acircumflex uni01DC -196 -KPX Acircumflex uni01DD -112 -KPX Acircumflex uni01F0 -63 -KPX Acircumflex uni01F4 -235 -KPX Acircumflex uni01F5 -149 - -KPX Adieresis ampersand -63 -KPX Adieresis two -63 -KPX Adieresis seven -196 -KPX Adieresis eight -92 -KPX Adieresis nine -139 -KPX Adieresis colon -112 -KPX Adieresis less -235 -KPX Adieresis F -63 -KPX Adieresis G -63 -KPX Adieresis W -112 -KPX Adieresis Y -112 -KPX Adieresis Z -92 -KPX Adieresis backslash -149 -KPX Adieresis copyright -63 -KPX Adieresis questiondown -149 -KPX Adieresis Aacute -149 -KPX Adieresis Egrave -63 -KPX Adieresis Eacute -63 -KPX Adieresis Ecircumflex -63 -KPX Adieresis Edieresis -63 -KPX Adieresis Igrave -63 -KPX Adieresis Iacute -63 -KPX Adieresis Icircumflex -63 -KPX Adieresis Idieresis -63 -KPX Adieresis Ntilde -63 -KPX Adieresis Oacute -63 -KPX Adieresis Dcaron -63 -KPX Adieresis Dcroat -63 -KPX Adieresis Emacron -63 -KPX Adieresis Ebreve -63 -KPX Adieresis Hcircumflex -196 -KPX Adieresis hcircumflex -112 -KPX Adieresis Hbar -196 -KPX Adieresis hbar -112 -KPX Adieresis Imacron -92 -KPX Adieresis Ibreve -92 -KPX Adieresis Iogonek -92 -KPX Adieresis Idot -92 -KPX Adieresis IJ -92 -KPX Adieresis Jcircumflex -92 -KPX Adieresis Kcommaaccent -112 -KPX Adieresis kcommaaccent -92 -KPX Adieresis kgreenlandic -235 -KPX Adieresis Lacute -149 -KPX Adieresis lacute -235 -KPX Adieresis uni01AC -63 -KPX Adieresis uni01AE -63 -KPX Adieresis uni01DC -196 -KPX Adieresis uni01DD -112 -KPX Adieresis uni01F0 -63 -KPX Adieresis uni01F4 -235 -KPX Adieresis uni01F5 -149 - -KPX AE ampersand -63 -KPX AE two -63 -KPX AE seven -196 -KPX AE eight -92 -KPX AE nine -139 -KPX AE colon -112 -KPX AE less -235 -KPX AE F -63 -KPX AE G -63 -KPX AE W -112 -KPX AE Y -112 -KPX AE Z -92 -KPX AE backslash -149 -KPX AE copyright -63 -KPX AE questiondown -149 -KPX AE Aacute -149 -KPX AE Egrave -63 -KPX AE Eacute -63 -KPX AE Ecircumflex -63 -KPX AE Edieresis -63 -KPX AE Igrave -63 -KPX AE Iacute -63 -KPX AE Icircumflex -63 -KPX AE Idieresis -63 -KPX AE Ntilde -63 -KPX AE Oacute -63 -KPX AE Dcaron -63 -KPX AE Dcroat -63 -KPX AE Emacron -63 -KPX AE Ebreve -63 -KPX AE Hcircumflex -196 -KPX AE hcircumflex -112 -KPX AE Hbar -196 -KPX AE hbar -112 -KPX AE Imacron -92 -KPX AE Ibreve -92 -KPX AE Iogonek -92 -KPX AE Idot -92 -KPX AE IJ -92 -KPX AE Jcircumflex -92 -KPX AE Kcommaaccent -112 -KPX AE kcommaaccent -92 -KPX AE kgreenlandic -235 -KPX AE Lacute -149 -KPX AE lacute -235 -KPX AE uni01AC -63 -KPX AE uni01AE -63 -KPX AE uni01DC -196 -KPX AE uni01DD -112 -KPX AE uni01F0 -63 -KPX AE uni01F4 -235 -KPX AE uni01F5 -149 - -KPX Egrave six -73 -KPX Egrave Gcircumflex -73 -KPX Egrave Gbreve -73 -KPX Egrave Gdotaccent -73 -KPX Egrave Gcommaaccent -73 -KPX Egrave uni01DA -73 - -KPX Ecircumflex six -73 -KPX Ecircumflex Gcircumflex -73 -KPX Ecircumflex Gbreve -73 -KPX Ecircumflex Gdotaccent -73 -KPX Ecircumflex Gcommaaccent -73 -KPX Ecircumflex uni01DA -73 - -KPX Igrave six -73 -KPX Igrave Gcircumflex -73 -KPX Igrave Gbreve -73 -KPX Igrave Gdotaccent -73 -KPX Igrave Gcommaaccent -73 -KPX Igrave uni01DA -73 - -KPX Icircumflex six -73 -KPX Icircumflex Gcircumflex -73 -KPX Icircumflex Gbreve -73 -KPX Icircumflex Gdotaccent -73 -KPX Icircumflex Gcommaaccent -73 -KPX Icircumflex uni01DA -73 - -KPX Eth less -159 -KPX Eth kgreenlandic -159 -KPX Eth lacute -159 -KPX Eth uni01F4 -159 - -KPX Ograve less -159 -KPX Ograve kgreenlandic -159 -KPX Ograve lacute -159 -KPX Ograve uni01F4 -159 - -KPX agrave seven -36 -KPX agrave less -83 -KPX agrave Hbar -36 -KPX agrave lacute -83 - -KPX ucircumflex two -73 -KPX ucircumflex seven -339 -KPX ucircumflex eight -112 -KPX ucircumflex nine -282 -KPX ucircumflex colon -178 -KPX ucircumflex less -319 -KPX ucircumflex backslash -253 -KPX ucircumflex questiondown -253 -KPX ucircumflex Aacute -253 -KPX ucircumflex Ebreve -73 -KPX ucircumflex Hbar -339 -KPX ucircumflex Idot -112 -KPX ucircumflex lacute -319 - -KPX ydieresis two -73 -KPX ydieresis seven -339 -KPX ydieresis eight -112 -KPX ydieresis nine -282 -KPX ydieresis colon -178 -KPX ydieresis less -319 -KPX ydieresis backslash -253 -KPX ydieresis questiondown -253 -KPX ydieresis Aacute -253 -KPX ydieresis Ebreve -73 -KPX ydieresis Hbar -339 -KPX ydieresis Idot -112 -KPX ydieresis lacute -319 - -KPX Abreve O -8 - -KPX abreve two -73 -KPX abreve seven -339 -KPX abreve eight -73 -KPX abreve nine -282 -KPX abreve colon -159 -KPX abreve less -319 -KPX abreve backslash -253 -KPX abreve questiondown -253 -KPX abreve Aacute -253 -KPX abreve Ebreve -73 -KPX abreve Hbar -339 -KPX abreve Idot -73 -KPX abreve lacute -319 - -KPX Edotaccent seven -92 -KPX Edotaccent less -188 -KPX Edotaccent H -102 -KPX Edotaccent R -102 -KPX Edotaccent X -112 -KPX Edotaccent backslash -131 -KPX Edotaccent ordfeminine -102 -KPX Edotaccent guillemotleft -102 -KPX Edotaccent logicalnot -102 -KPX Edotaccent sfthyphen -102 -KPX Edotaccent acute -102 -KPX Edotaccent mu -102 -KPX Edotaccent paragraph -102 -KPX Edotaccent periodcentered -102 -KPX Edotaccent cedilla -102 -KPX Edotaccent ordmasculine -102 -KPX Edotaccent guillemotright -112 -KPX Edotaccent onequarter -112 -KPX Edotaccent onehalf -112 -KPX Edotaccent threequarters -112 -KPX Edotaccent questiondown -131 -KPX Edotaccent Aacute -131 -KPX Edotaccent Yacute -102 -KPX Edotaccent ebreve -102 -KPX Edotaccent Hbar -92 -KPX Edotaccent dotlessi -112 -KPX Edotaccent lacute -188 - - -KPX Ecaron seven -92 -KPX Ecaron less -188 -KPX Ecaron H -102 -KPX Ecaron R -102 -KPX Ecaron X -112 -KPX Ecaron backslash -131 -KPX Ecaron ordfeminine -102 -KPX Ecaron guillemotleft -102 -KPX Ecaron logicalnot -102 -KPX Ecaron sfthyphen -102 -KPX Ecaron acute -102 -KPX Ecaron mu -102 -KPX Ecaron paragraph -102 -KPX Ecaron periodcentered -102 -KPX Ecaron cedilla -102 -KPX Ecaron ordmasculine -102 -KPX Ecaron guillemotright -112 -KPX Ecaron onequarter -112 -KPX Ecaron onehalf -112 -KPX Ecaron threequarters -112 -KPX Ecaron questiondown -131 -KPX Ecaron Aacute -131 -KPX Ecaron Yacute -102 -KPX Ecaron ebreve -102 -KPX Ecaron Hbar -92 -KPX Ecaron dotlessi -112 -KPX Ecaron lacute -188 - - -KPX Gdotaccent six -73 -KPX Gdotaccent Gdotaccent -73 -KPX Gdotaccent Gcommaaccent -73 - -KPX Gcommaaccent six -73 -KPX Gcommaaccent Gdotaccent -73 -KPX Gcommaaccent Gcommaaccent -73 - -KPX Hbar dollar -159 -KPX Hbar seven 47 -KPX Hbar D -243 -KPX Hbar F -264 -KPX Hbar H -264 -KPX Hbar R -264 -KPX Hbar U -225 -KPX Hbar V -243 -KPX Hbar X -264 -KPX Hbar Z -282 -KPX Hbar backslash -339 -KPX Hbar cent -243 -KPX Hbar sterling -243 -KPX Hbar currency -243 -KPX Hbar yen -243 -KPX Hbar brokenbar -243 -KPX Hbar section -243 -KPX Hbar dieresis -243 -KPX Hbar copyright -264 -KPX Hbar ordfeminine -264 -KPX Hbar guillemotleft -264 -KPX Hbar logicalnot -264 -KPX Hbar sfthyphen -264 -KPX Hbar acute -264 -KPX Hbar mu -264 -KPX Hbar paragraph -264 -KPX Hbar periodcentered -264 -KPX Hbar cedilla -264 -KPX Hbar ordmasculine -264 -KPX Hbar guillemotright -264 -KPX Hbar onequarter -264 -KPX Hbar onehalf -264 -KPX Hbar threequarters -264 -KPX Hbar questiondown -339 -KPX Hbar Aacute -339 -KPX Hbar Eacute -264 -KPX Hbar Idieresis -264 -KPX Hbar Yacute -264 -KPX Hbar ebreve -264 -KPX Hbar edotaccent -225 -KPX Hbar ecaron -225 -KPX Hbar gdotaccent -243 -KPX Hbar gcommaaccent -243 -KPX Hbar Hbar 47 -KPX Hbar dotlessi -264 - -KPX hbar Hbar -112 - -KPX Idot dollar -92 -KPX Idot Idot -92 - -KPX lacute dollar -196 -KPX lacute ampersand -73 -KPX lacute two -73 -KPX lacute D -243 -KPX lacute H -264 -KPX lacute R -264 -KPX lacute X -225 -KPX lacute cent -243 -KPX lacute sterling -243 -KPX lacute currency -243 -KPX lacute yen -243 -KPX lacute brokenbar -243 -KPX lacute section -243 -KPX lacute dieresis -243 -KPX lacute ordfeminine -264 -KPX lacute guillemotleft -264 -KPX lacute logicalnot -264 -KPX lacute sfthyphen -264 -KPX lacute acute -264 -KPX lacute mu -264 -KPX lacute paragraph -264 -KPX lacute periodcentered -264 -KPX lacute cedilla -264 -KPX lacute ordmasculine -264 -KPX lacute guillemotright -225 -KPX lacute onequarter -225 -KPX lacute onehalf -225 -KPX lacute threequarters -225 -KPX lacute Egrave -73 -KPX lacute Icircumflex -73 -KPX lacute Yacute -264 -KPX lacute Ebreve -120 -KPX lacute ebreve -264 -KPX lacute dotlessi -225 - - -KPX uni027D dollar -272 -KPX uni027D hyphen -92 -KPX uni027D nine 38 -KPX uni027D less 75 -KPX uni027D lacute 75 -EndKernPairs -EndKernData -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSans-Oblique.ttf b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSans-Oblique.ttf deleted file mode 100644 index 999bac77..00000000 Binary files a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSans-Oblique.ttf and /dev/null differ diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSans-Oblique.ufm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSans-Oblique.ufm deleted file mode 100644 index 0b8d60e8..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSans-Oblique.ufm +++ /dev/null @@ -1,5268 +0,0 @@ -StartFontMetrics 4.1 -Notice Converted by PHP-font-lib -Comment https://github.com/PhenX/php-font-lib -EncodingScheme FontSpecific -FontName DejaVu Sans -FontSubfamily Oblique -UniqueID DejaVu Sans Oblique -FullName DejaVu Sans Oblique -Version Version 2.37 -PostScriptName DejaVuSans-Oblique -Manufacturer DejaVu fonts team -FontVendorURL http://dejavu.sourceforge.net -LicenseURL http://dejavu.sourceforge.net/wiki/index.php/License -PreferredFamily DejaVu Sans -PreferredSubfamily Oblique -Weight Medium -ItalicAngle -11 -IsFixedPitch false -UnderlineThickness 44 -UnderlinePosition -63 -FontHeightOffset 0 -Ascender 928 -Descender -236 -FontBBox -1016 -350 1659 1068 -StartCharMetrics 5355 -U 32 ; WX 318 ; N space ; G 3 -U 33 ; WX 401 ; N exclam ; G 4 -U 34 ; WX 460 ; N quotedbl ; G 5 -U 35 ; WX 838 ; N numbersign ; G 6 -U 36 ; WX 636 ; N dollar ; G 7 -U 37 ; WX 950 ; N percent ; G 8 -U 38 ; WX 780 ; N ampersand ; G 9 -U 39 ; WX 275 ; N quotesingle ; G 10 -U 40 ; WX 390 ; N parenleft ; G 11 -U 41 ; WX 390 ; N parenright ; G 12 -U 42 ; WX 500 ; N asterisk ; G 13 -U 43 ; WX 838 ; N plus ; G 14 -U 44 ; WX 318 ; N comma ; G 15 -U 45 ; WX 361 ; N hyphen ; G 16 -U 46 ; WX 318 ; N period ; G 17 -U 47 ; WX 337 ; N slash ; G 18 -U 48 ; WX 636 ; N zero ; G 19 -U 49 ; WX 636 ; N one ; G 20 -U 50 ; WX 636 ; N two ; G 21 -U 51 ; WX 636 ; N three ; G 22 -U 52 ; WX 636 ; N four ; G 23 -U 53 ; WX 636 ; N five ; G 24 -U 54 ; WX 636 ; N six ; G 25 -U 55 ; WX 636 ; N seven ; G 26 -U 56 ; WX 636 ; N eight ; G 27 -U 57 ; WX 636 ; N nine ; G 28 -U 58 ; WX 337 ; N colon ; G 29 -U 59 ; WX 337 ; N semicolon ; G 30 -U 60 ; WX 838 ; N less ; G 31 -U 61 ; WX 838 ; N equal ; G 32 -U 62 ; WX 838 ; N greater ; G 33 -U 63 ; WX 531 ; N question ; G 34 -U 64 ; WX 1000 ; N at ; G 35 -U 65 ; WX 684 ; N A ; G 36 -U 66 ; WX 686 ; N B ; G 37 -U 67 ; WX 698 ; N C ; G 38 -U 68 ; WX 770 ; N D ; G 39 -U 69 ; WX 632 ; N E ; G 40 -U 70 ; WX 575 ; N F ; G 41 -U 71 ; WX 775 ; N G ; G 42 -U 72 ; WX 752 ; N H ; G 43 -U 73 ; WX 295 ; N I ; G 44 -U 74 ; WX 295 ; N J ; G 45 -U 75 ; WX 656 ; N K ; G 46 -U 76 ; WX 557 ; N L ; G 47 -U 77 ; WX 863 ; N M ; G 48 -U 78 ; WX 748 ; N N ; G 49 -U 79 ; WX 787 ; N O ; G 50 -U 80 ; WX 603 ; N P ; G 51 -U 81 ; WX 787 ; N Q ; G 52 -U 82 ; WX 695 ; N R ; G 53 -U 83 ; WX 635 ; N S ; G 54 -U 84 ; WX 611 ; N T ; G 55 -U 85 ; WX 732 ; N U ; G 56 -U 86 ; WX 684 ; N V ; G 57 -U 87 ; WX 989 ; N W ; G 58 -U 88 ; WX 685 ; N X ; G 59 -U 89 ; WX 611 ; N Y ; G 60 -U 90 ; WX 685 ; N Z ; G 61 -U 91 ; WX 390 ; N bracketleft ; G 62 -U 92 ; WX 337 ; N backslash ; G 63 -U 93 ; WX 390 ; N bracketright ; G 64 -U 94 ; WX 838 ; N asciicircum ; G 65 -U 95 ; WX 500 ; N underscore ; G 66 -U 96 ; WX 500 ; N grave ; G 67 -U 97 ; WX 613 ; N a ; G 68 -U 98 ; WX 635 ; N b ; G 69 -U 99 ; WX 550 ; N c ; G 70 -U 100 ; WX 635 ; N d ; G 71 -U 101 ; WX 615 ; N e ; G 72 -U 102 ; WX 352 ; N f ; G 73 -U 103 ; WX 635 ; N g ; G 74 -U 104 ; WX 634 ; N h ; G 75 -U 105 ; WX 278 ; N i ; G 76 -U 106 ; WX 278 ; N j ; G 77 -U 107 ; WX 579 ; N k ; G 78 -U 108 ; WX 278 ; N l ; G 79 -U 109 ; WX 974 ; N m ; G 80 -U 110 ; WX 634 ; N n ; G 81 -U 111 ; WX 612 ; N o ; G 82 -U 112 ; WX 635 ; N p ; G 83 -U 113 ; WX 635 ; N q ; G 84 -U 114 ; WX 411 ; N r ; G 85 -U 115 ; WX 521 ; N s ; G 86 -U 116 ; WX 392 ; N t ; G 87 -U 117 ; WX 634 ; N u ; G 88 -U 118 ; WX 592 ; N v ; G 89 -U 119 ; WX 818 ; N w ; G 90 -U 120 ; WX 592 ; N x ; G 91 -U 121 ; WX 592 ; N y ; G 92 -U 122 ; WX 525 ; N z ; G 93 -U 123 ; WX 636 ; N braceleft ; G 94 -U 124 ; WX 337 ; N bar ; G 95 -U 125 ; WX 636 ; N braceright ; G 96 -U 126 ; WX 838 ; N asciitilde ; G 97 -U 160 ; WX 318 ; N nbspace ; G 98 -U 161 ; WX 401 ; N exclamdown ; G 99 -U 162 ; WX 636 ; N cent ; G 100 -U 163 ; WX 636 ; N sterling ; G 101 -U 164 ; WX 636 ; N currency ; G 102 -U 165 ; WX 636 ; N yen ; G 103 -U 166 ; WX 337 ; N brokenbar ; G 104 -U 167 ; WX 500 ; N section ; G 105 -U 168 ; WX 500 ; N dieresis ; G 106 -U 169 ; WX 1000 ; N copyright ; G 107 -U 170 ; WX 471 ; N ordfeminine ; G 108 -U 171 ; WX 617 ; N guillemotleft ; G 109 -U 172 ; WX 838 ; N logicalnot ; G 110 -U 173 ; WX 361 ; N sfthyphen ; G 111 -U 174 ; WX 1000 ; N registered ; G 112 -U 175 ; WX 500 ; N macron ; G 113 -U 176 ; WX 500 ; N degree ; G 114 -U 177 ; WX 838 ; N plusminus ; G 115 -U 178 ; WX 401 ; N twosuperior ; G 116 -U 179 ; WX 401 ; N threesuperior ; G 117 -U 180 ; WX 500 ; N acute ; G 118 -U 181 ; WX 636 ; N mu ; G 119 -U 182 ; WX 636 ; N paragraph ; G 120 -U 183 ; WX 318 ; N periodcentered ; G 121 -U 184 ; WX 500 ; N cedilla ; G 122 -U 185 ; WX 401 ; N onesuperior ; G 123 -U 186 ; WX 471 ; N ordmasculine ; G 124 -U 187 ; WX 617 ; N guillemotright ; G 125 -U 188 ; WX 969 ; N onequarter ; G 126 -U 189 ; WX 969 ; N onehalf ; G 127 -U 190 ; WX 969 ; N threequarters ; G 128 -U 191 ; WX 531 ; N questiondown ; G 129 -U 192 ; WX 684 ; N Agrave ; G 130 -U 193 ; WX 684 ; N Aacute ; G 131 -U 194 ; WX 684 ; N Acircumflex ; G 132 -U 195 ; WX 684 ; N Atilde ; G 133 -U 196 ; WX 684 ; N Adieresis ; G 134 -U 197 ; WX 684 ; N Aring ; G 135 -U 198 ; WX 974 ; N AE ; G 136 -U 199 ; WX 698 ; N Ccedilla ; G 137 -U 200 ; WX 632 ; N Egrave ; G 138 -U 201 ; WX 632 ; N Eacute ; G 139 -U 202 ; WX 632 ; N Ecircumflex ; G 140 -U 203 ; WX 632 ; N Edieresis ; G 141 -U 204 ; WX 295 ; N Igrave ; G 142 -U 205 ; WX 295 ; N Iacute ; G 143 -U 206 ; WX 295 ; N Icircumflex ; G 144 -U 207 ; WX 295 ; N Idieresis ; G 145 -U 208 ; WX 775 ; N Eth ; G 146 -U 209 ; WX 748 ; N Ntilde ; G 147 -U 210 ; WX 787 ; N Ograve ; G 148 -U 211 ; WX 787 ; N Oacute ; G 149 -U 212 ; WX 787 ; N Ocircumflex ; G 150 -U 213 ; WX 787 ; N Otilde ; G 151 -U 214 ; WX 787 ; N Odieresis ; G 152 -U 215 ; WX 838 ; N multiply ; G 153 -U 216 ; WX 787 ; N Oslash ; G 154 -U 217 ; WX 732 ; N Ugrave ; G 155 -U 218 ; WX 732 ; N Uacute ; G 156 -U 219 ; WX 732 ; N Ucircumflex ; G 157 -U 220 ; WX 732 ; N Udieresis ; G 158 -U 221 ; WX 611 ; N Yacute ; G 159 -U 222 ; WX 608 ; N Thorn ; G 160 -U 223 ; WX 630 ; N germandbls ; G 161 -U 224 ; WX 613 ; N agrave ; G 162 -U 225 ; WX 613 ; N aacute ; G 163 -U 226 ; WX 613 ; N acircumflex ; G 164 -U 227 ; WX 613 ; N atilde ; G 165 -U 228 ; WX 613 ; N adieresis ; G 166 -U 229 ; WX 613 ; N aring ; G 167 -U 230 ; WX 995 ; N ae ; G 168 -U 231 ; WX 550 ; N ccedilla ; G 169 -U 232 ; WX 615 ; N egrave ; G 170 -U 233 ; WX 615 ; N eacute ; G 171 -U 234 ; WX 615 ; N ecircumflex ; G 172 -U 235 ; WX 615 ; N edieresis ; G 173 -U 236 ; WX 278 ; N igrave ; G 174 -U 237 ; WX 278 ; N iacute ; G 175 -U 238 ; WX 278 ; N icircumflex ; G 176 -U 239 ; WX 278 ; N idieresis ; G 177 -U 240 ; WX 612 ; N eth ; G 178 -U 241 ; WX 634 ; N ntilde ; G 179 -U 242 ; WX 612 ; N ograve ; G 180 -U 243 ; WX 612 ; N oacute ; G 181 -U 244 ; WX 612 ; N ocircumflex ; G 182 -U 245 ; WX 612 ; N otilde ; G 183 -U 246 ; WX 612 ; N odieresis ; G 184 -U 247 ; WX 838 ; N divide ; G 185 -U 248 ; WX 612 ; N oslash ; G 186 -U 249 ; WX 634 ; N ugrave ; G 187 -U 250 ; WX 634 ; N uacute ; G 188 -U 251 ; WX 634 ; N ucircumflex ; G 189 -U 252 ; WX 634 ; N udieresis ; G 190 -U 253 ; WX 592 ; N yacute ; G 191 -U 254 ; WX 635 ; N thorn ; G 192 -U 255 ; WX 592 ; N ydieresis ; G 193 -U 256 ; WX 684 ; N Amacron ; G 194 -U 257 ; WX 613 ; N amacron ; G 195 -U 258 ; WX 684 ; N Abreve ; G 196 -U 259 ; WX 613 ; N abreve ; G 197 -U 260 ; WX 684 ; N Aogonek ; G 198 -U 261 ; WX 613 ; N aogonek ; G 199 -U 262 ; WX 698 ; N Cacute ; G 200 -U 263 ; WX 550 ; N cacute ; G 201 -U 264 ; WX 698 ; N Ccircumflex ; G 202 -U 265 ; WX 550 ; N ccircumflex ; G 203 -U 266 ; WX 698 ; N Cdotaccent ; G 204 -U 267 ; WX 550 ; N cdotaccent ; G 205 -U 268 ; WX 698 ; N Ccaron ; G 206 -U 269 ; WX 550 ; N ccaron ; G 207 -U 270 ; WX 770 ; N Dcaron ; G 208 -U 271 ; WX 635 ; N dcaron ; G 209 -U 272 ; WX 775 ; N Dcroat ; G 210 -U 273 ; WX 635 ; N dmacron ; G 211 -U 274 ; WX 632 ; N Emacron ; G 212 -U 275 ; WX 615 ; N emacron ; G 213 -U 276 ; WX 632 ; N Ebreve ; G 214 -U 277 ; WX 615 ; N ebreve ; G 215 -U 278 ; WX 632 ; N Edotaccent ; G 216 -U 279 ; WX 615 ; N edotaccent ; G 217 -U 280 ; WX 632 ; N Eogonek ; G 218 -U 281 ; WX 615 ; N eogonek ; G 219 -U 282 ; WX 632 ; N Ecaron ; G 220 -U 283 ; WX 615 ; N ecaron ; G 221 -U 284 ; WX 775 ; N Gcircumflex ; G 222 -U 285 ; WX 635 ; N gcircumflex ; G 223 -U 286 ; WX 775 ; N Gbreve ; G 224 -U 287 ; WX 635 ; N gbreve ; G 225 -U 288 ; WX 775 ; N Gdotaccent ; G 226 -U 289 ; WX 635 ; N gdotaccent ; G 227 -U 290 ; WX 775 ; N Gcommaaccent ; G 228 -U 291 ; WX 635 ; N gcommaaccent ; G 229 -U 292 ; WX 752 ; N Hcircumflex ; G 230 -U 293 ; WX 634 ; N hcircumflex ; G 231 -U 294 ; WX 916 ; N Hbar ; G 232 -U 295 ; WX 695 ; N hbar ; G 233 -U 296 ; WX 295 ; N Itilde ; G 234 -U 297 ; WX 278 ; N itilde ; G 235 -U 298 ; WX 295 ; N Imacron ; G 236 -U 299 ; WX 278 ; N imacron ; G 237 -U 300 ; WX 295 ; N Ibreve ; G 238 -U 301 ; WX 278 ; N ibreve ; G 239 -U 302 ; WX 295 ; N Iogonek ; G 240 -U 303 ; WX 278 ; N iogonek ; G 241 -U 304 ; WX 295 ; N Idot ; G 242 -U 305 ; WX 278 ; N dotlessi ; G 243 -U 306 ; WX 590 ; N IJ ; G 244 -U 307 ; WX 556 ; N ij ; G 245 -U 308 ; WX 295 ; N Jcircumflex ; G 246 -U 309 ; WX 278 ; N jcircumflex ; G 247 -U 310 ; WX 656 ; N Kcommaaccent ; G 248 -U 311 ; WX 579 ; N kcommaaccent ; G 249 -U 312 ; WX 579 ; N kgreenlandic ; G 250 -U 313 ; WX 557 ; N Lacute ; G 251 -U 314 ; WX 278 ; N lacute ; G 252 -U 315 ; WX 557 ; N Lcommaaccent ; G 253 -U 316 ; WX 278 ; N lcommaaccent ; G 254 -U 317 ; WX 557 ; N Lcaron ; G 255 -U 318 ; WX 278 ; N lcaron ; G 256 -U 319 ; WX 557 ; N Ldot ; G 257 -U 320 ; WX 278 ; N ldot ; G 258 -U 321 ; WX 562 ; N Lslash ; G 259 -U 322 ; WX 287 ; N lslash ; G 260 -U 323 ; WX 748 ; N Nacute ; G 261 -U 324 ; WX 634 ; N nacute ; G 262 -U 325 ; WX 748 ; N Ncommaaccent ; G 263 -U 326 ; WX 634 ; N ncommaaccent ; G 264 -U 327 ; WX 748 ; N Ncaron ; G 265 -U 328 ; WX 634 ; N ncaron ; G 266 -U 329 ; WX 813 ; N napostrophe ; G 267 -U 330 ; WX 748 ; N Eng ; G 268 -U 331 ; WX 634 ; N eng ; G 269 -U 332 ; WX 787 ; N Omacron ; G 270 -U 333 ; WX 612 ; N omacron ; G 271 -U 334 ; WX 787 ; N Obreve ; G 272 -U 335 ; WX 612 ; N obreve ; G 273 -U 336 ; WX 787 ; N Ohungarumlaut ; G 274 -U 337 ; WX 612 ; N ohungarumlaut ; G 275 -U 338 ; WX 1070 ; N OE ; G 276 -U 339 ; WX 1028 ; N oe ; G 277 -U 340 ; WX 695 ; N Racute ; G 278 -U 341 ; WX 411 ; N racute ; G 279 -U 342 ; WX 695 ; N Rcommaaccent ; G 280 -U 343 ; WX 411 ; N rcommaaccent ; G 281 -U 344 ; WX 695 ; N Rcaron ; G 282 -U 345 ; WX 411 ; N rcaron ; G 283 -U 346 ; WX 635 ; N Sacute ; G 284 -U 347 ; WX 521 ; N sacute ; G 285 -U 348 ; WX 635 ; N Scircumflex ; G 286 -U 349 ; WX 521 ; N scircumflex ; G 287 -U 350 ; WX 635 ; N Scedilla ; G 288 -U 351 ; WX 521 ; N scedilla ; G 289 -U 352 ; WX 635 ; N Scaron ; G 290 -U 353 ; WX 521 ; N scaron ; G 291 -U 354 ; WX 611 ; N Tcommaaccent ; G 292 -U 355 ; WX 392 ; N tcommaaccent ; G 293 -U 356 ; WX 611 ; N Tcaron ; G 294 -U 357 ; WX 392 ; N tcaron ; G 295 -U 358 ; WX 611 ; N Tbar ; G 296 -U 359 ; WX 392 ; N tbar ; G 297 -U 360 ; WX 732 ; N Utilde ; G 298 -U 361 ; WX 634 ; N utilde ; G 299 -U 362 ; WX 732 ; N Umacron ; G 300 -U 363 ; WX 634 ; N umacron ; G 301 -U 364 ; WX 732 ; N Ubreve ; G 302 -U 365 ; WX 634 ; N ubreve ; G 303 -U 366 ; WX 732 ; N Uring ; G 304 -U 367 ; WX 634 ; N uring ; G 305 -U 368 ; WX 732 ; N Uhungarumlaut ; G 306 -U 369 ; WX 634 ; N uhungarumlaut ; G 307 -U 370 ; WX 732 ; N Uogonek ; G 308 -U 371 ; WX 634 ; N uogonek ; G 309 -U 372 ; WX 989 ; N Wcircumflex ; G 310 -U 373 ; WX 818 ; N wcircumflex ; G 311 -U 374 ; WX 611 ; N Ycircumflex ; G 312 -U 375 ; WX 592 ; N ycircumflex ; G 313 -U 376 ; WX 611 ; N Ydieresis ; G 314 -U 377 ; WX 685 ; N Zacute ; G 315 -U 378 ; WX 525 ; N zacute ; G 316 -U 379 ; WX 685 ; N Zdotaccent ; G 317 -U 380 ; WX 525 ; N zdotaccent ; G 318 -U 381 ; WX 685 ; N Zcaron ; G 319 -U 382 ; WX 525 ; N zcaron ; G 320 -U 383 ; WX 352 ; N longs ; G 321 -U 384 ; WX 635 ; N uni0180 ; G 322 -U 385 ; WX 735 ; N uni0181 ; G 323 -U 386 ; WX 686 ; N uni0182 ; G 324 -U 387 ; WX 635 ; N uni0183 ; G 325 -U 388 ; WX 686 ; N uni0184 ; G 326 -U 389 ; WX 635 ; N uni0185 ; G 327 -U 390 ; WX 703 ; N uni0186 ; G 328 -U 391 ; WX 698 ; N uni0187 ; G 329 -U 392 ; WX 550 ; N uni0188 ; G 330 -U 393 ; WX 775 ; N uni0189 ; G 331 -U 394 ; WX 819 ; N uni018A ; G 332 -U 395 ; WX 686 ; N uni018B ; G 333 -U 396 ; WX 635 ; N uni018C ; G 334 -U 397 ; WX 612 ; N uni018D ; G 335 -U 398 ; WX 632 ; N uni018E ; G 336 -U 399 ; WX 787 ; N uni018F ; G 337 -U 400 ; WX 614 ; N uni0190 ; G 338 -U 401 ; WX 575 ; N uni0191 ; G 339 -U 402 ; WX 352 ; N florin ; G 340 -U 403 ; WX 775 ; N uni0193 ; G 341 -U 404 ; WX 687 ; N uni0194 ; G 342 -U 405 ; WX 984 ; N uni0195 ; G 343 -U 406 ; WX 354 ; N uni0196 ; G 344 -U 407 ; WX 295 ; N uni0197 ; G 345 -U 408 ; WX 746 ; N uni0198 ; G 346 -U 409 ; WX 579 ; N uni0199 ; G 347 -U 410 ; WX 278 ; N uni019A ; G 348 -U 411 ; WX 592 ; N uni019B ; G 349 -U 412 ; WX 974 ; N uni019C ; G 350 -U 413 ; WX 748 ; N uni019D ; G 351 -U 414 ; WX 634 ; N uni019E ; G 352 -U 415 ; WX 787 ; N uni019F ; G 353 -U 416 ; WX 913 ; N Ohorn ; G 354 -U 417 ; WX 612 ; N ohorn ; G 355 -U 418 ; WX 938 ; N uni01A2 ; G 356 -U 419 ; WX 737 ; N uni01A3 ; G 357 -U 420 ; WX 652 ; N uni01A4 ; G 358 -U 421 ; WX 635 ; N uni01A5 ; G 359 -U 422 ; WX 695 ; N uni01A6 ; G 360 -U 423 ; WX 635 ; N uni01A7 ; G 361 -U 424 ; WX 521 ; N uni01A8 ; G 362 -U 425 ; WX 632 ; N uni01A9 ; G 363 -U 426 ; WX 336 ; N uni01AA ; G 364 -U 427 ; WX 392 ; N uni01AB ; G 365 -U 428 ; WX 611 ; N uni01AC ; G 366 -U 429 ; WX 392 ; N uni01AD ; G 367 -U 430 ; WX 611 ; N uni01AE ; G 368 -U 431 ; WX 838 ; N Uhorn ; G 369 -U 432 ; WX 634 ; N uhorn ; G 370 -U 433 ; WX 764 ; N uni01B1 ; G 371 -U 434 ; WX 721 ; N uni01B2 ; G 372 -U 435 ; WX 744 ; N uni01B3 ; G 373 -U 436 ; WX 730 ; N uni01B4 ; G 374 -U 437 ; WX 685 ; N uni01B5 ; G 375 -U 438 ; WX 525 ; N uni01B6 ; G 376 -U 439 ; WX 666 ; N uni01B7 ; G 377 -U 440 ; WX 666 ; N uni01B8 ; G 378 -U 441 ; WX 578 ; N uni01B9 ; G 379 -U 442 ; WX 525 ; N uni01BA ; G 380 -U 443 ; WX 636 ; N uni01BB ; G 381 -U 444 ; WX 666 ; N uni01BC ; G 382 -U 445 ; WX 578 ; N uni01BD ; G 383 -U 446 ; WX 510 ; N uni01BE ; G 384 -U 447 ; WX 635 ; N uni01BF ; G 385 -U 448 ; WX 295 ; N uni01C0 ; G 386 -U 449 ; WX 492 ; N uni01C1 ; G 387 -U 450 ; WX 459 ; N uni01C2 ; G 388 -U 451 ; WX 295 ; N uni01C3 ; G 389 -U 452 ; WX 1455 ; N uni01C4 ; G 390 -U 453 ; WX 1295 ; N uni01C5 ; G 391 -U 454 ; WX 1160 ; N uni01C6 ; G 392 -U 455 ; WX 852 ; N uni01C7 ; G 393 -U 456 ; WX 835 ; N uni01C8 ; G 394 -U 457 ; WX 556 ; N uni01C9 ; G 395 -U 458 ; WX 1043 ; N uni01CA ; G 396 -U 459 ; WX 1026 ; N uni01CB ; G 397 -U 460 ; WX 912 ; N uni01CC ; G 398 -U 461 ; WX 684 ; N uni01CD ; G 399 -U 462 ; WX 613 ; N uni01CE ; G 400 -U 463 ; WX 295 ; N uni01CF ; G 401 -U 464 ; WX 278 ; N uni01D0 ; G 402 -U 465 ; WX 787 ; N uni01D1 ; G 403 -U 466 ; WX 612 ; N uni01D2 ; G 404 -U 467 ; WX 732 ; N uni01D3 ; G 405 -U 468 ; WX 634 ; N uni01D4 ; G 406 -U 469 ; WX 732 ; N uni01D5 ; G 407 -U 470 ; WX 634 ; N uni01D6 ; G 408 -U 471 ; WX 732 ; N uni01D7 ; G 409 -U 472 ; WX 634 ; N uni01D8 ; G 410 -U 473 ; WX 732 ; N uni01D9 ; G 411 -U 474 ; WX 634 ; N uni01DA ; G 412 -U 475 ; WX 732 ; N uni01DB ; G 413 -U 476 ; WX 634 ; N uni01DC ; G 414 -U 477 ; WX 615 ; N uni01DD ; G 415 -U 478 ; WX 684 ; N uni01DE ; G 416 -U 479 ; WX 613 ; N uni01DF ; G 417 -U 480 ; WX 684 ; N uni01E0 ; G 418 -U 481 ; WX 613 ; N uni01E1 ; G 419 -U 482 ; WX 974 ; N uni01E2 ; G 420 -U 483 ; WX 995 ; N uni01E3 ; G 421 -U 484 ; WX 775 ; N uni01E4 ; G 422 -U 485 ; WX 635 ; N uni01E5 ; G 423 -U 486 ; WX 775 ; N Gcaron ; G 424 -U 487 ; WX 635 ; N gcaron ; G 425 -U 488 ; WX 656 ; N uni01E8 ; G 426 -U 489 ; WX 579 ; N uni01E9 ; G 427 -U 490 ; WX 787 ; N uni01EA ; G 428 -U 491 ; WX 612 ; N uni01EB ; G 429 -U 492 ; WX 787 ; N uni01EC ; G 430 -U 493 ; WX 612 ; N uni01ED ; G 431 -U 494 ; WX 666 ; N uni01EE ; G 432 -U 495 ; WX 525 ; N uni01EF ; G 433 -U 496 ; WX 278 ; N uni01F0 ; G 434 -U 497 ; WX 1455 ; N uni01F1 ; G 435 -U 498 ; WX 1295 ; N uni01F2 ; G 436 -U 499 ; WX 1160 ; N uni01F3 ; G 437 -U 500 ; WX 775 ; N uni01F4 ; G 438 -U 501 ; WX 635 ; N uni01F5 ; G 439 -U 502 ; WX 1113 ; N uni01F6 ; G 440 -U 503 ; WX 682 ; N uni01F7 ; G 441 -U 504 ; WX 748 ; N uni01F8 ; G 442 -U 505 ; WX 634 ; N uni01F9 ; G 443 -U 506 ; WX 684 ; N Aringacute ; G 444 -U 507 ; WX 613 ; N aringacute ; G 445 -U 508 ; WX 974 ; N AEacute ; G 446 -U 509 ; WX 995 ; N aeacute ; G 447 -U 510 ; WX 787 ; N Oslashacute ; G 448 -U 511 ; WX 612 ; N oslashacute ; G 449 -U 512 ; WX 684 ; N uni0200 ; G 450 -U 513 ; WX 613 ; N uni0201 ; G 451 -U 514 ; WX 684 ; N uni0202 ; G 452 -U 515 ; WX 613 ; N uni0203 ; G 453 -U 516 ; WX 632 ; N uni0204 ; G 454 -U 517 ; WX 615 ; N uni0205 ; G 455 -U 518 ; WX 632 ; N uni0206 ; G 456 -U 519 ; WX 615 ; N uni0207 ; G 457 -U 520 ; WX 295 ; N uni0208 ; G 458 -U 521 ; WX 278 ; N uni0209 ; G 459 -U 522 ; WX 295 ; N uni020A ; G 460 -U 523 ; WX 278 ; N uni020B ; G 461 -U 524 ; WX 787 ; N uni020C ; G 462 -U 525 ; WX 612 ; N uni020D ; G 463 -U 526 ; WX 787 ; N uni020E ; G 464 -U 527 ; WX 612 ; N uni020F ; G 465 -U 528 ; WX 695 ; N uni0210 ; G 466 -U 529 ; WX 411 ; N uni0211 ; G 467 -U 530 ; WX 695 ; N uni0212 ; G 468 -U 531 ; WX 411 ; N uni0213 ; G 469 -U 532 ; WX 732 ; N uni0214 ; G 470 -U 533 ; WX 634 ; N uni0215 ; G 471 -U 534 ; WX 732 ; N uni0216 ; G 472 -U 535 ; WX 634 ; N uni0217 ; G 473 -U 536 ; WX 635 ; N Scommaaccent ; G 474 -U 537 ; WX 521 ; N scommaaccent ; G 475 -U 538 ; WX 611 ; N uni021A ; G 476 -U 539 ; WX 392 ; N uni021B ; G 477 -U 540 ; WX 627 ; N uni021C ; G 478 -U 541 ; WX 521 ; N uni021D ; G 479 -U 542 ; WX 752 ; N uni021E ; G 480 -U 543 ; WX 634 ; N uni021F ; G 481 -U 544 ; WX 735 ; N uni0220 ; G 482 -U 545 ; WX 838 ; N uni0221 ; G 483 -U 546 ; WX 698 ; N uni0222 ; G 484 -U 547 ; WX 610 ; N uni0223 ; G 485 -U 548 ; WX 685 ; N uni0224 ; G 486 -U 549 ; WX 525 ; N uni0225 ; G 487 -U 550 ; WX 684 ; N uni0226 ; G 488 -U 551 ; WX 613 ; N uni0227 ; G 489 -U 552 ; WX 632 ; N uni0228 ; G 490 -U 553 ; WX 615 ; N uni0229 ; G 491 -U 554 ; WX 787 ; N uni022A ; G 492 -U 555 ; WX 612 ; N uni022B ; G 493 -U 556 ; WX 787 ; N uni022C ; G 494 -U 557 ; WX 612 ; N uni022D ; G 495 -U 558 ; WX 787 ; N uni022E ; G 496 -U 559 ; WX 612 ; N uni022F ; G 497 -U 560 ; WX 787 ; N uni0230 ; G 498 -U 561 ; WX 612 ; N uni0231 ; G 499 -U 562 ; WX 611 ; N uni0232 ; G 500 -U 563 ; WX 592 ; N uni0233 ; G 501 -U 564 ; WX 475 ; N uni0234 ; G 502 -U 565 ; WX 843 ; N uni0235 ; G 503 -U 566 ; WX 477 ; N uni0236 ; G 504 -U 567 ; WX 278 ; N dotlessj ; G 505 -U 568 ; WX 998 ; N uni0238 ; G 506 -U 569 ; WX 998 ; N uni0239 ; G 507 -U 570 ; WX 684 ; N uni023A ; G 508 -U 571 ; WX 698 ; N uni023B ; G 509 -U 572 ; WX 550 ; N uni023C ; G 510 -U 573 ; WX 557 ; N uni023D ; G 511 -U 574 ; WX 611 ; N uni023E ; G 512 -U 575 ; WX 521 ; N uni023F ; G 513 -U 576 ; WX 525 ; N uni0240 ; G 514 -U 577 ; WX 603 ; N uni0241 ; G 515 -U 578 ; WX 479 ; N uni0242 ; G 516 -U 579 ; WX 686 ; N uni0243 ; G 517 -U 580 ; WX 732 ; N uni0244 ; G 518 -U 581 ; WX 684 ; N uni0245 ; G 519 -U 582 ; WX 632 ; N uni0246 ; G 520 -U 583 ; WX 615 ; N uni0247 ; G 521 -U 584 ; WX 295 ; N uni0248 ; G 522 -U 585 ; WX 278 ; N uni0249 ; G 523 -U 586 ; WX 781 ; N uni024A ; G 524 -U 587 ; WX 635 ; N uni024B ; G 525 -U 588 ; WX 695 ; N uni024C ; G 526 -U 589 ; WX 411 ; N uni024D ; G 527 -U 590 ; WX 611 ; N uni024E ; G 528 -U 591 ; WX 592 ; N uni024F ; G 529 -U 592 ; WX 613 ; N uni0250 ; G 530 -U 593 ; WX 635 ; N uni0251 ; G 531 -U 594 ; WX 635 ; N uni0252 ; G 532 -U 595 ; WX 635 ; N uni0253 ; G 533 -U 596 ; WX 550 ; N uni0254 ; G 534 -U 597 ; WX 550 ; N uni0255 ; G 535 -U 598 ; WX 635 ; N uni0256 ; G 536 -U 599 ; WX 727 ; N uni0257 ; G 537 -U 600 ; WX 615 ; N uni0258 ; G 538 -U 601 ; WX 615 ; N uni0259 ; G 539 -U 602 ; WX 844 ; N uni025A ; G 540 -U 603 ; WX 545 ; N uni025B ; G 541 -U 604 ; WX 545 ; N uni025C ; G 542 -U 605 ; WX 775 ; N uni025D ; G 543 -U 606 ; WX 664 ; N uni025E ; G 544 -U 607 ; WX 326 ; N uni025F ; G 545 -U 608 ; WX 696 ; N uni0260 ; G 546 -U 609 ; WX 635 ; N uni0261 ; G 547 -U 610 ; WX 629 ; N uni0262 ; G 548 -U 611 ; WX 596 ; N uni0263 ; G 549 -U 612 ; WX 596 ; N uni0264 ; G 550 -U 613 ; WX 634 ; N uni0265 ; G 551 -U 614 ; WX 634 ; N uni0266 ; G 552 -U 615 ; WX 634 ; N uni0267 ; G 553 -U 616 ; WX 372 ; N uni0268 ; G 554 -U 617 ; WX 387 ; N uni0269 ; G 555 -U 618 ; WX 372 ; N uni026A ; G 556 -U 619 ; WX 396 ; N uni026B ; G 557 -U 620 ; WX 487 ; N uni026C ; G 558 -U 621 ; WX 278 ; N uni026D ; G 559 -U 622 ; WX 706 ; N uni026E ; G 560 -U 623 ; WX 974 ; N uni026F ; G 561 -U 624 ; WX 974 ; N uni0270 ; G 562 -U 625 ; WX 974 ; N uni0271 ; G 563 -U 626 ; WX 646 ; N uni0272 ; G 564 -U 627 ; WX 642 ; N uni0273 ; G 565 -U 628 ; WX 634 ; N uni0274 ; G 566 -U 629 ; WX 612 ; N uni0275 ; G 567 -U 630 ; WX 858 ; N uni0276 ; G 568 -U 631 ; WX 728 ; N uni0277 ; G 569 -U 632 ; WX 660 ; N uni0278 ; G 570 -U 633 ; WX 469 ; N uni0279 ; G 571 -U 634 ; WX 469 ; N uni027A ; G 572 -U 635 ; WX 469 ; N uni027B ; G 573 -U 636 ; WX 469 ; N uni027C ; G 574 -U 637 ; WX 469 ; N uni027D ; G 575 -U 638 ; WX 530 ; N uni027E ; G 576 -U 639 ; WX 530 ; N uni027F ; G 577 -U 640 ; WX 602 ; N uni0280 ; G 578 -U 641 ; WX 602 ; N uni0281 ; G 579 -U 642 ; WX 521 ; N uni0282 ; G 580 -U 643 ; WX 336 ; N uni0283 ; G 581 -U 644 ; WX 336 ; N uni0284 ; G 582 -U 645 ; WX 461 ; N uni0285 ; G 583 -U 646 ; WX 336 ; N uni0286 ; G 584 -U 647 ; WX 392 ; N uni0287 ; G 585 -U 648 ; WX 392 ; N uni0288 ; G 586 -U 649 ; WX 634 ; N uni0289 ; G 587 -U 650 ; WX 618 ; N uni028A ; G 588 -U 651 ; WX 598 ; N uni028B ; G 589 -U 652 ; WX 592 ; N uni028C ; G 590 -U 653 ; WX 818 ; N uni028D ; G 591 -U 654 ; WX 592 ; N uni028E ; G 592 -U 655 ; WX 611 ; N uni028F ; G 593 -U 656 ; WX 525 ; N uni0290 ; G 594 -U 657 ; WX 525 ; N uni0291 ; G 595 -U 658 ; WX 578 ; N uni0292 ; G 596 -U 659 ; WX 578 ; N uni0293 ; G 597 -U 660 ; WX 510 ; N uni0294 ; G 598 -U 661 ; WX 510 ; N uni0295 ; G 599 -U 662 ; WX 510 ; N uni0296 ; G 600 -U 663 ; WX 510 ; N uni0297 ; G 601 -U 664 ; WX 787 ; N uni0298 ; G 602 -U 665 ; WX 580 ; N uni0299 ; G 603 -U 666 ; WX 664 ; N uni029A ; G 604 -U 667 ; WX 708 ; N uni029B ; G 605 -U 668 ; WX 654 ; N uni029C ; G 606 -U 669 ; WX 292 ; N uni029D ; G 607 -U 670 ; WX 667 ; N uni029E ; G 608 -U 671 ; WX 507 ; N uni029F ; G 609 -U 672 ; WX 727 ; N uni02A0 ; G 610 -U 673 ; WX 510 ; N uni02A1 ; G 611 -U 674 ; WX 510 ; N uni02A2 ; G 612 -U 675 ; WX 1014 ; N uni02A3 ; G 613 -U 676 ; WX 1058 ; N uni02A4 ; G 614 -U 677 ; WX 1013 ; N uni02A5 ; G 615 -U 678 ; WX 830 ; N uni02A6 ; G 616 -U 679 ; WX 610 ; N uni02A7 ; G 617 -U 680 ; WX 778 ; N uni02A8 ; G 618 -U 681 ; WX 848 ; N uni02A9 ; G 619 -U 682 ; WX 706 ; N uni02AA ; G 620 -U 683 ; WX 654 ; N uni02AB ; G 621 -U 684 ; WX 515 ; N uni02AC ; G 622 -U 685 ; WX 515 ; N uni02AD ; G 623 -U 686 ; WX 570 ; N uni02AE ; G 624 -U 687 ; WX 664 ; N uni02AF ; G 625 -U 688 ; WX 399 ; N uni02B0 ; G 626 -U 689 ; WX 399 ; N uni02B1 ; G 627 -U 690 ; WX 175 ; N uni02B2 ; G 628 -U 691 ; WX 259 ; N uni02B3 ; G 629 -U 692 ; WX 295 ; N uni02B4 ; G 630 -U 693 ; WX 296 ; N uni02B5 ; G 631 -U 694 ; WX 379 ; N uni02B6 ; G 632 -U 695 ; WX 515 ; N uni02B7 ; G 633 -U 696 ; WX 373 ; N uni02B8 ; G 634 -U 697 ; WX 278 ; N uni02B9 ; G 635 -U 698 ; WX 460 ; N uni02BA ; G 636 -U 699 ; WX 318 ; N uni02BB ; G 637 -U 700 ; WX 318 ; N uni02BC ; G 638 -U 701 ; WX 318 ; N uni02BD ; G 639 -U 702 ; WX 307 ; N uni02BE ; G 640 -U 703 ; WX 307 ; N uni02BF ; G 641 -U 704 ; WX 370 ; N uni02C0 ; G 642 -U 705 ; WX 370 ; N uni02C1 ; G 643 -U 706 ; WX 500 ; N uni02C2 ; G 644 -U 707 ; WX 500 ; N uni02C3 ; G 645 -U 708 ; WX 500 ; N uni02C4 ; G 646 -U 709 ; WX 500 ; N uni02C5 ; G 647 -U 710 ; WX 500 ; N circumflex ; G 648 -U 711 ; WX 500 ; N caron ; G 649 -U 712 ; WX 275 ; N uni02C8 ; G 650 -U 713 ; WX 500 ; N uni02C9 ; G 651 -U 714 ; WX 500 ; N uni02CA ; G 652 -U 715 ; WX 500 ; N uni02CB ; G 653 -U 716 ; WX 275 ; N uni02CC ; G 654 -U 717 ; WX 500 ; N uni02CD ; G 655 -U 718 ; WX 500 ; N uni02CE ; G 656 -U 719 ; WX 500 ; N uni02CF ; G 657 -U 720 ; WX 337 ; N uni02D0 ; G 658 -U 721 ; WX 337 ; N uni02D1 ; G 659 -U 722 ; WX 307 ; N uni02D2 ; G 660 -U 723 ; WX 307 ; N uni02D3 ; G 661 -U 724 ; WX 500 ; N uni02D4 ; G 662 -U 725 ; WX 500 ; N uni02D5 ; G 663 -U 726 ; WX 390 ; N uni02D6 ; G 664 -U 727 ; WX 317 ; N uni02D7 ; G 665 -U 728 ; WX 500 ; N breve ; G 666 -U 729 ; WX 500 ; N dotaccent ; G 667 -U 730 ; WX 500 ; N ring ; G 668 -U 731 ; WX 500 ; N ogonek ; G 669 -U 732 ; WX 500 ; N tilde ; G 670 -U 733 ; WX 500 ; N hungarumlaut ; G 671 -U 734 ; WX 315 ; N uni02DE ; G 672 -U 735 ; WX 500 ; N uni02DF ; G 673 -U 736 ; WX 426 ; N uni02E0 ; G 674 -U 737 ; WX 166 ; N uni02E1 ; G 675 -U 738 ; WX 373 ; N uni02E2 ; G 676 -U 739 ; WX 444 ; N uni02E3 ; G 677 -U 740 ; WX 370 ; N uni02E4 ; G 678 -U 741 ; WX 493 ; N uni02E5 ; G 679 -U 742 ; WX 493 ; N uni02E6 ; G 680 -U 743 ; WX 493 ; N uni02E7 ; G 681 -U 744 ; WX 493 ; N uni02E8 ; G 682 -U 745 ; WX 493 ; N uni02E9 ; G 683 -U 748 ; WX 500 ; N uni02EC ; G 684 -U 749 ; WX 500 ; N uni02ED ; G 685 -U 750 ; WX 518 ; N uni02EE ; G 686 -U 755 ; WX 500 ; N uni02F3 ; G 687 -U 759 ; WX 500 ; N uni02F7 ; G 688 -U 768 ; WX 0 ; N gravecomb ; G 689 -U 769 ; WX 0 ; N acutecomb ; G 690 -U 770 ; WX 0 ; N uni0302 ; G 691 -U 771 ; WX 0 ; N tildecomb ; G 692 -U 772 ; WX 0 ; N uni0304 ; G 693 -U 773 ; WX 0 ; N uni0305 ; G 694 -U 774 ; WX 0 ; N uni0306 ; G 695 -U 775 ; WX 0 ; N uni0307 ; G 696 -U 776 ; WX 0 ; N uni0308 ; G 697 -U 777 ; WX 0 ; N hookabovecomb ; G 698 -U 778 ; WX 0 ; N uni030A ; G 699 -U 779 ; WX 0 ; N uni030B ; G 700 -U 780 ; WX 0 ; N uni030C ; G 701 -U 781 ; WX 0 ; N uni030D ; G 702 -U 782 ; WX 0 ; N uni030E ; G 703 -U 783 ; WX 0 ; N uni030F ; G 704 -U 784 ; WX 0 ; N uni0310 ; G 705 -U 785 ; WX 0 ; N uni0311 ; G 706 -U 786 ; WX 0 ; N uni0312 ; G 707 -U 787 ; WX 0 ; N uni0313 ; G 708 -U 788 ; WX 0 ; N uni0314 ; G 709 -U 789 ; WX 0 ; N uni0315 ; G 710 -U 790 ; WX 0 ; N uni0316 ; G 711 -U 791 ; WX 0 ; N uni0317 ; G 712 -U 792 ; WX 0 ; N uni0318 ; G 713 -U 793 ; WX 0 ; N uni0319 ; G 714 -U 794 ; WX 0 ; N uni031A ; G 715 -U 795 ; WX 0 ; N uni031B ; G 716 -U 796 ; WX 0 ; N uni031C ; G 717 -U 797 ; WX 0 ; N uni031D ; G 718 -U 798 ; WX 0 ; N uni031E ; G 719 -U 799 ; WX 0 ; N uni031F ; G 720 -U 800 ; WX 0 ; N uni0320 ; G 721 -U 801 ; WX 0 ; N uni0321 ; G 722 -U 802 ; WX 0 ; N uni0322 ; G 723 -U 803 ; WX 0 ; N dotbelowcomb ; G 724 -U 804 ; WX 0 ; N uni0324 ; G 725 -U 805 ; WX 0 ; N uni0325 ; G 726 -U 806 ; WX 0 ; N uni0326 ; G 727 -U 807 ; WX 0 ; N uni0327 ; G 728 -U 808 ; WX 0 ; N uni0328 ; G 729 -U 809 ; WX 0 ; N uni0329 ; G 730 -U 810 ; WX 0 ; N uni032A ; G 731 -U 811 ; WX 0 ; N uni032B ; G 732 -U 812 ; WX 0 ; N uni032C ; G 733 -U 813 ; WX 0 ; N uni032D ; G 734 -U 814 ; WX 0 ; N uni032E ; G 735 -U 815 ; WX 0 ; N uni032F ; G 736 -U 816 ; WX 0 ; N uni0330 ; G 737 -U 817 ; WX 0 ; N uni0331 ; G 738 -U 818 ; WX 0 ; N uni0332 ; G 739 -U 819 ; WX 0 ; N uni0333 ; G 740 -U 820 ; WX 0 ; N uni0334 ; G 741 -U 821 ; WX 0 ; N uni0335 ; G 742 -U 822 ; WX 0 ; N uni0336 ; G 743 -U 823 ; WX 0 ; N uni0337 ; G 744 -U 824 ; WX 0 ; N uni0338 ; G 745 -U 825 ; WX 0 ; N uni0339 ; G 746 -U 826 ; WX 0 ; N uni033A ; G 747 -U 827 ; WX 0 ; N uni033B ; G 748 -U 828 ; WX 0 ; N uni033C ; G 749 -U 829 ; WX 0 ; N uni033D ; G 750 -U 830 ; WX 0 ; N uni033E ; G 751 -U 831 ; WX 0 ; N uni033F ; G 752 -U 832 ; WX 0 ; N uni0340 ; G 753 -U 833 ; WX 0 ; N uni0341 ; G 754 -U 834 ; WX 0 ; N uni0342 ; G 755 -U 835 ; WX 0 ; N uni0343 ; G 756 -U 836 ; WX 0 ; N uni0344 ; G 757 -U 837 ; WX 0 ; N uni0345 ; G 758 -U 838 ; WX 0 ; N uni0346 ; G 759 -U 839 ; WX 0 ; N uni0347 ; G 760 -U 840 ; WX 0 ; N uni0348 ; G 761 -U 841 ; WX 0 ; N uni0349 ; G 762 -U 842 ; WX 0 ; N uni034A ; G 763 -U 843 ; WX 0 ; N uni034B ; G 764 -U 844 ; WX 0 ; N uni034C ; G 765 -U 845 ; WX 0 ; N uni034D ; G 766 -U 846 ; WX 0 ; N uni034E ; G 767 -U 847 ; WX 0 ; N uni034F ; G 768 -U 849 ; WX 0 ; N uni0351 ; G 769 -U 850 ; WX 0 ; N uni0352 ; G 770 -U 851 ; WX 0 ; N uni0353 ; G 771 -U 855 ; WX 0 ; N uni0357 ; G 772 -U 856 ; WX 0 ; N uni0358 ; G 773 -U 858 ; WX 0 ; N uni035A ; G 774 -U 860 ; WX 0 ; N uni035C ; G 775 -U 861 ; WX 0 ; N uni035D ; G 776 -U 862 ; WX 0 ; N uni035E ; G 777 -U 863 ; WX 0 ; N uni035F ; G 778 -U 864 ; WX 0 ; N uni0360 ; G 779 -U 865 ; WX 0 ; N uni0361 ; G 780 -U 866 ; WX 0 ; N uni0362 ; G 781 -U 880 ; WX 654 ; N uni0370 ; G 782 -U 881 ; WX 568 ; N uni0371 ; G 783 -U 882 ; WX 862 ; N uni0372 ; G 784 -U 883 ; WX 647 ; N uni0373 ; G 785 -U 884 ; WX 278 ; N uni0374 ; G 786 -U 885 ; WX 278 ; N uni0375 ; G 787 -U 886 ; WX 748 ; N uni0376 ; G 788 -U 887 ; WX 650 ; N uni0377 ; G 789 -U 890 ; WX 500 ; N uni037A ; G 790 -U 891 ; WX 549 ; N uni037B ; G 791 -U 892 ; WX 550 ; N uni037C ; G 792 -U 893 ; WX 549 ; N uni037D ; G 793 -U 894 ; WX 337 ; N uni037E ; G 794 -U 895 ; WX 295 ; N uni037F ; G 795 -U 900 ; WX 500 ; N tonos ; G 796 -U 901 ; WX 500 ; N dieresistonos ; G 797 -U 902 ; WX 684 ; N Alphatonos ; G 798 -U 903 ; WX 318 ; N anoteleia ; G 799 -U 904 ; WX 767 ; N Epsilontonos ; G 800 -U 905 ; WX 903 ; N Etatonos ; G 801 -U 906 ; WX 435 ; N Iotatonos ; G 802 -U 908 ; WX 839 ; N Omicrontonos ; G 803 -U 910 ; WX 860 ; N Upsilontonos ; G 804 -U 911 ; WX 905 ; N Omegatonos ; G 805 -U 912 ; WX 338 ; N iotadieresistonos ; G 806 -U 913 ; WX 684 ; N Alpha ; G 807 -U 914 ; WX 686 ; N Beta ; G 808 -U 915 ; WX 557 ; N Gamma ; G 809 -U 916 ; WX 684 ; N uni0394 ; G 810 -U 917 ; WX 632 ; N Epsilon ; G 811 -U 918 ; WX 685 ; N Zeta ; G 812 -U 919 ; WX 752 ; N Eta ; G 813 -U 920 ; WX 787 ; N Theta ; G 814 -U 921 ; WX 295 ; N Iota ; G 815 -U 922 ; WX 656 ; N Kappa ; G 816 -U 923 ; WX 684 ; N Lambda ; G 817 -U 924 ; WX 863 ; N Mu ; G 818 -U 925 ; WX 748 ; N Nu ; G 819 -U 926 ; WX 632 ; N Xi ; G 820 -U 927 ; WX 787 ; N Omicron ; G 821 -U 928 ; WX 752 ; N Pi ; G 822 -U 929 ; WX 603 ; N Rho ; G 823 -U 931 ; WX 632 ; N Sigma ; G 824 -U 932 ; WX 611 ; N Tau ; G 825 -U 933 ; WX 611 ; N Upsilon ; G 826 -U 934 ; WX 787 ; N Phi ; G 827 -U 935 ; WX 685 ; N Chi ; G 828 -U 936 ; WX 787 ; N Psi ; G 829 -U 937 ; WX 764 ; N Omega ; G 830 -U 938 ; WX 295 ; N Iotadieresis ; G 831 -U 939 ; WX 611 ; N Upsilondieresis ; G 832 -U 940 ; WX 659 ; N alphatonos ; G 833 -U 941 ; WX 541 ; N epsilontonos ; G 834 -U 942 ; WX 634 ; N etatonos ; G 835 -U 943 ; WX 338 ; N iotatonos ; G 836 -U 944 ; WX 579 ; N upsilondieresistonos ; G 837 -U 945 ; WX 659 ; N alpha ; G 838 -U 946 ; WX 638 ; N beta ; G 839 -U 947 ; WX 592 ; N gamma ; G 840 -U 948 ; WX 612 ; N delta ; G 841 -U 949 ; WX 541 ; N epsilon ; G 842 -U 950 ; WX 544 ; N zeta ; G 843 -U 951 ; WX 634 ; N eta ; G 844 -U 952 ; WX 612 ; N theta ; G 845 -U 953 ; WX 338 ; N iota ; G 846 -U 954 ; WX 589 ; N kappa ; G 847 -U 955 ; WX 592 ; N lambda ; G 848 -U 956 ; WX 636 ; N uni03BC ; G 849 -U 957 ; WX 559 ; N nu ; G 850 -U 958 ; WX 558 ; N xi ; G 851 -U 959 ; WX 612 ; N omicron ; G 852 -U 960 ; WX 602 ; N pi ; G 853 -U 961 ; WX 635 ; N rho ; G 854 -U 962 ; WX 587 ; N sigma1 ; G 855 -U 963 ; WX 634 ; N sigma ; G 856 -U 964 ; WX 602 ; N tau ; G 857 -U 965 ; WX 579 ; N upsilon ; G 858 -U 966 ; WX 660 ; N phi ; G 859 -U 967 ; WX 592 ; N chi ; G 860 -U 968 ; WX 660 ; N psi ; G 861 -U 969 ; WX 837 ; N omega ; G 862 -U 970 ; WX 338 ; N iotadieresis ; G 863 -U 971 ; WX 579 ; N upsilondieresis ; G 864 -U 972 ; WX 612 ; N omicrontonos ; G 865 -U 973 ; WX 579 ; N upsilontonos ; G 866 -U 974 ; WX 837 ; N omegatonos ; G 867 -U 975 ; WX 656 ; N uni03CF ; G 868 -U 976 ; WX 614 ; N uni03D0 ; G 869 -U 977 ; WX 619 ; N theta1 ; G 870 -U 978 ; WX 699 ; N Upsilon1 ; G 871 -U 979 ; WX 842 ; N uni03D3 ; G 872 -U 980 ; WX 699 ; N uni03D4 ; G 873 -U 981 ; WX 660 ; N phi1 ; G 874 -U 982 ; WX 837 ; N omega1 ; G 875 -U 983 ; WX 664 ; N uni03D7 ; G 876 -U 984 ; WX 787 ; N uni03D8 ; G 877 -U 985 ; WX 612 ; N uni03D9 ; G 878 -U 986 ; WX 648 ; N uni03DA ; G 879 -U 987 ; WX 587 ; N uni03DB ; G 880 -U 988 ; WX 575 ; N uni03DC ; G 881 -U 989 ; WX 458 ; N uni03DD ; G 882 -U 990 ; WX 660 ; N uni03DE ; G 883 -U 991 ; WX 660 ; N uni03DF ; G 884 -U 992 ; WX 865 ; N uni03E0 ; G 885 -U 993 ; WX 627 ; N uni03E1 ; G 886 -U 994 ; WX 934 ; N uni03E2 ; G 887 -U 995 ; WX 837 ; N uni03E3 ; G 888 -U 996 ; WX 758 ; N uni03E4 ; G 889 -U 997 ; WX 659 ; N uni03E5 ; G 890 -U 998 ; WX 792 ; N uni03E6 ; G 891 -U 999 ; WX 615 ; N uni03E7 ; G 892 -U 1000 ; WX 687 ; N uni03E8 ; G 893 -U 1001 ; WX 607 ; N uni03E9 ; G 894 -U 1002 ; WX 768 ; N uni03EA ; G 895 -U 1003 ; WX 625 ; N uni03EB ; G 896 -U 1004 ; WX 699 ; N uni03EC ; G 897 -U 1005 ; WX 612 ; N uni03ED ; G 898 -U 1006 ; WX 611 ; N uni03EE ; G 899 -U 1007 ; WX 536 ; N uni03EF ; G 900 -U 1008 ; WX 664 ; N uni03F0 ; G 901 -U 1009 ; WX 635 ; N uni03F1 ; G 902 -U 1010 ; WX 550 ; N uni03F2 ; G 903 -U 1011 ; WX 278 ; N uni03F3 ; G 904 -U 1012 ; WX 787 ; N uni03F4 ; G 905 -U 1013 ; WX 615 ; N uni03F5 ; G 906 -U 1014 ; WX 615 ; N uni03F6 ; G 907 -U 1015 ; WX 608 ; N uni03F7 ; G 908 -U 1016 ; WX 635 ; N uni03F8 ; G 909 -U 1017 ; WX 698 ; N uni03F9 ; G 910 -U 1018 ; WX 863 ; N uni03FA ; G 911 -U 1019 ; WX 651 ; N uni03FB ; G 912 -U 1020 ; WX 635 ; N uni03FC ; G 913 -U 1021 ; WX 703 ; N uni03FD ; G 914 -U 1022 ; WX 698 ; N uni03FE ; G 915 -U 1023 ; WX 703 ; N uni03FF ; G 916 -U 1024 ; WX 632 ; N uni0400 ; G 917 -U 1025 ; WX 632 ; N uni0401 ; G 918 -U 1026 ; WX 786 ; N uni0402 ; G 919 -U 1027 ; WX 557 ; N uni0403 ; G 920 -U 1028 ; WX 698 ; N uni0404 ; G 921 -U 1029 ; WX 635 ; N uni0405 ; G 922 -U 1030 ; WX 295 ; N uni0406 ; G 923 -U 1031 ; WX 295 ; N uni0407 ; G 924 -U 1032 ; WX 295 ; N uni0408 ; G 925 -U 1033 ; WX 1094 ; N uni0409 ; G 926 -U 1034 ; WX 1045 ; N uni040A ; G 927 -U 1035 ; WX 786 ; N uni040B ; G 928 -U 1036 ; WX 710 ; N uni040C ; G 929 -U 1037 ; WX 748 ; N uni040D ; G 930 -U 1038 ; WX 609 ; N uni040E ; G 931 -U 1039 ; WX 752 ; N uni040F ; G 932 -U 1040 ; WX 684 ; N uni0410 ; G 933 -U 1041 ; WX 686 ; N uni0411 ; G 934 -U 1042 ; WX 686 ; N uni0412 ; G 935 -U 1043 ; WX 557 ; N uni0413 ; G 936 -U 1044 ; WX 781 ; N uni0414 ; G 937 -U 1045 ; WX 632 ; N uni0415 ; G 938 -U 1046 ; WX 1077 ; N uni0416 ; G 939 -U 1047 ; WX 641 ; N uni0417 ; G 940 -U 1048 ; WX 748 ; N uni0418 ; G 941 -U 1049 ; WX 748 ; N uni0419 ; G 942 -U 1050 ; WX 710 ; N uni041A ; G 943 -U 1051 ; WX 752 ; N uni041B ; G 944 -U 1052 ; WX 863 ; N uni041C ; G 945 -U 1053 ; WX 752 ; N uni041D ; G 946 -U 1054 ; WX 787 ; N uni041E ; G 947 -U 1055 ; WX 752 ; N uni041F ; G 948 -U 1056 ; WX 603 ; N uni0420 ; G 949 -U 1057 ; WX 698 ; N uni0421 ; G 950 -U 1058 ; WX 611 ; N uni0422 ; G 951 -U 1059 ; WX 609 ; N uni0423 ; G 952 -U 1060 ; WX 861 ; N uni0424 ; G 953 -U 1061 ; WX 685 ; N uni0425 ; G 954 -U 1062 ; WX 776 ; N uni0426 ; G 955 -U 1063 ; WX 686 ; N uni0427 ; G 956 -U 1064 ; WX 1069 ; N uni0428 ; G 957 -U 1065 ; WX 1094 ; N uni0429 ; G 958 -U 1066 ; WX 833 ; N uni042A ; G 959 -U 1067 ; WX 818 ; N uni042B ; G 960 -U 1068 ; WX 686 ; N uni042C ; G 961 -U 1069 ; WX 698 ; N uni042D ; G 962 -U 1070 ; WX 1080 ; N uni042E ; G 963 -U 1071 ; WX 695 ; N uni042F ; G 964 -U 1072 ; WX 613 ; N uni0430 ; G 965 -U 1073 ; WX 617 ; N uni0431 ; G 966 -U 1074 ; WX 589 ; N uni0432 ; G 967 -U 1075 ; WX 525 ; N uni0433 ; G 968 -U 1076 ; WX 691 ; N uni0434 ; G 969 -U 1077 ; WX 615 ; N uni0435 ; G 970 -U 1078 ; WX 901 ; N uni0436 ; G 971 -U 1079 ; WX 532 ; N uni0437 ; G 972 -U 1080 ; WX 650 ; N uni0438 ; G 973 -U 1081 ; WX 650 ; N uni0439 ; G 974 -U 1082 ; WX 604 ; N uni043A ; G 975 -U 1083 ; WX 639 ; N uni043B ; G 976 -U 1084 ; WX 754 ; N uni043C ; G 977 -U 1085 ; WX 654 ; N uni043D ; G 978 -U 1086 ; WX 612 ; N uni043E ; G 979 -U 1087 ; WX 654 ; N uni043F ; G 980 -U 1088 ; WX 635 ; N uni0440 ; G 981 -U 1089 ; WX 550 ; N uni0441 ; G 982 -U 1090 ; WX 583 ; N uni0442 ; G 983 -U 1091 ; WX 592 ; N uni0443 ; G 984 -U 1092 ; WX 855 ; N uni0444 ; G 985 -U 1093 ; WX 592 ; N uni0445 ; G 986 -U 1094 ; WX 681 ; N uni0446 ; G 987 -U 1095 ; WX 591 ; N uni0447 ; G 988 -U 1096 ; WX 915 ; N uni0448 ; G 989 -U 1097 ; WX 942 ; N uni0449 ; G 990 -U 1098 ; WX 707 ; N uni044A ; G 991 -U 1099 ; WX 790 ; N uni044B ; G 992 -U 1100 ; WX 589 ; N uni044C ; G 993 -U 1101 ; WX 549 ; N uni044D ; G 994 -U 1102 ; WX 842 ; N uni044E ; G 995 -U 1103 ; WX 602 ; N uni044F ; G 996 -U 1104 ; WX 615 ; N uni0450 ; G 997 -U 1105 ; WX 615 ; N uni0451 ; G 998 -U 1106 ; WX 625 ; N uni0452 ; G 999 -U 1107 ; WX 525 ; N uni0453 ; G 1000 -U 1108 ; WX 549 ; N uni0454 ; G 1001 -U 1109 ; WX 521 ; N uni0455 ; G 1002 -U 1110 ; WX 278 ; N uni0456 ; G 1003 -U 1111 ; WX 278 ; N uni0457 ; G 1004 -U 1112 ; WX 278 ; N uni0458 ; G 1005 -U 1113 ; WX 902 ; N uni0459 ; G 1006 -U 1114 ; WX 898 ; N uni045A ; G 1007 -U 1115 ; WX 652 ; N uni045B ; G 1008 -U 1116 ; WX 604 ; N uni045C ; G 1009 -U 1117 ; WX 650 ; N uni045D ; G 1010 -U 1118 ; WX 592 ; N uni045E ; G 1011 -U 1119 ; WX 654 ; N uni045F ; G 1012 -U 1120 ; WX 934 ; N uni0460 ; G 1013 -U 1121 ; WX 837 ; N uni0461 ; G 1014 -U 1122 ; WX 771 ; N uni0462 ; G 1015 -U 1123 ; WX 672 ; N uni0463 ; G 1016 -U 1124 ; WX 942 ; N uni0464 ; G 1017 -U 1125 ; WX 749 ; N uni0465 ; G 1018 -U 1126 ; WX 879 ; N uni0466 ; G 1019 -U 1127 ; WX 783 ; N uni0467 ; G 1020 -U 1128 ; WX 1160 ; N uni0468 ; G 1021 -U 1129 ; WX 1001 ; N uni0469 ; G 1022 -U 1130 ; WX 787 ; N uni046A ; G 1023 -U 1131 ; WX 612 ; N uni046B ; G 1024 -U 1132 ; WX 1027 ; N uni046C ; G 1025 -U 1133 ; WX 824 ; N uni046D ; G 1026 -U 1134 ; WX 636 ; N uni046E ; G 1027 -U 1135 ; WX 541 ; N uni046F ; G 1028 -U 1136 ; WX 856 ; N uni0470 ; G 1029 -U 1137 ; WX 876 ; N uni0471 ; G 1030 -U 1138 ; WX 787 ; N uni0472 ; G 1031 -U 1139 ; WX 612 ; N uni0473 ; G 1032 -U 1140 ; WX 781 ; N uni0474 ; G 1033 -U 1141 ; WX 665 ; N uni0475 ; G 1034 -U 1142 ; WX 781 ; N uni0476 ; G 1035 -U 1143 ; WX 665 ; N uni0477 ; G 1036 -U 1144 ; WX 992 ; N uni0478 ; G 1037 -U 1145 ; WX 904 ; N uni0479 ; G 1038 -U 1146 ; WX 953 ; N uni047A ; G 1039 -U 1147 ; WX 758 ; N uni047B ; G 1040 -U 1148 ; WX 1180 ; N uni047C ; G 1041 -U 1149 ; WX 1028 ; N uni047D ; G 1042 -U 1150 ; WX 934 ; N uni047E ; G 1043 -U 1151 ; WX 837 ; N uni047F ; G 1044 -U 1152 ; WX 698 ; N uni0480 ; G 1045 -U 1153 ; WX 550 ; N uni0481 ; G 1046 -U 1154 ; WX 502 ; N uni0482 ; G 1047 -U 1155 ; WX 0 ; N uni0483 ; G 1048 -U 1156 ; WX 0 ; N uni0484 ; G 1049 -U 1157 ; WX 0 ; N uni0485 ; G 1050 -U 1158 ; WX 0 ; N uni0486 ; G 1051 -U 1159 ; WX 0 ; N uni0487 ; G 1052 -U 1160 ; WX 418 ; N uni0488 ; G 1053 -U 1161 ; WX 418 ; N uni0489 ; G 1054 -U 1162 ; WX 748 ; N uni048A ; G 1055 -U 1163 ; WX 657 ; N uni048B ; G 1056 -U 1164 ; WX 686 ; N uni048C ; G 1057 -U 1165 ; WX 589 ; N uni048D ; G 1058 -U 1166 ; WX 603 ; N uni048E ; G 1059 -U 1167 ; WX 635 ; N uni048F ; G 1060 -U 1168 ; WX 610 ; N uni0490 ; G 1061 -U 1169 ; WX 525 ; N uni0491 ; G 1062 -U 1170 ; WX 675 ; N uni0492 ; G 1063 -U 1171 ; WX 556 ; N uni0493 ; G 1064 -U 1172 ; WX 557 ; N uni0494 ; G 1065 -U 1173 ; WX 491 ; N uni0495 ; G 1066 -U 1174 ; WX 1077 ; N uni0496 ; G 1067 -U 1175 ; WX 901 ; N uni0497 ; G 1068 -U 1176 ; WX 641 ; N uni0498 ; G 1069 -U 1177 ; WX 532 ; N uni0499 ; G 1070 -U 1178 ; WX 710 ; N uni049A ; G 1071 -U 1179 ; WX 604 ; N uni049B ; G 1072 -U 1180 ; WX 710 ; N uni049C ; G 1073 -U 1181 ; WX 604 ; N uni049D ; G 1074 -U 1182 ; WX 710 ; N uni049E ; G 1075 -U 1183 ; WX 604 ; N uni049F ; G 1076 -U 1184 ; WX 856 ; N uni04A0 ; G 1077 -U 1185 ; WX 832 ; N uni04A1 ; G 1078 -U 1186 ; WX 752 ; N uni04A2 ; G 1079 -U 1187 ; WX 661 ; N uni04A3 ; G 1080 -U 1188 ; WX 1014 ; N uni04A4 ; G 1081 -U 1189 ; WX 877 ; N uni04A5 ; G 1082 -U 1190 ; WX 1113 ; N uni04A6 ; G 1083 -U 1191 ; WX 950 ; N uni04A7 ; G 1084 -U 1192 ; WX 890 ; N uni04A8 ; G 1085 -U 1193 ; WX 707 ; N uni04A9 ; G 1086 -U 1194 ; WX 698 ; N uni04AA ; G 1087 -U 1195 ; WX 550 ; N uni04AB ; G 1088 -U 1196 ; WX 611 ; N uni04AC ; G 1089 -U 1197 ; WX 529 ; N uni04AD ; G 1090 -U 1198 ; WX 611 ; N uni04AE ; G 1091 -U 1199 ; WX 592 ; N uni04AF ; G 1092 -U 1200 ; WX 611 ; N uni04B0 ; G 1093 -U 1201 ; WX 592 ; N uni04B1 ; G 1094 -U 1202 ; WX 685 ; N uni04B2 ; G 1095 -U 1203 ; WX 592 ; N uni04B3 ; G 1096 -U 1204 ; WX 934 ; N uni04B4 ; G 1097 -U 1205 ; WX 807 ; N uni04B5 ; G 1098 -U 1206 ; WX 686 ; N uni04B6 ; G 1099 -U 1207 ; WX 591 ; N uni04B7 ; G 1100 -U 1208 ; WX 686 ; N uni04B8 ; G 1101 -U 1209 ; WX 591 ; N uni04B9 ; G 1102 -U 1210 ; WX 686 ; N uni04BA ; G 1103 -U 1211 ; WX 634 ; N uni04BB ; G 1104 -U 1212 ; WX 929 ; N uni04BC ; G 1105 -U 1213 ; WX 731 ; N uni04BD ; G 1106 -U 1214 ; WX 929 ; N uni04BE ; G 1107 -U 1215 ; WX 731 ; N uni04BF ; G 1108 -U 1216 ; WX 295 ; N uni04C0 ; G 1109 -U 1217 ; WX 1077 ; N uni04C1 ; G 1110 -U 1218 ; WX 901 ; N uni04C2 ; G 1111 -U 1219 ; WX 655 ; N uni04C3 ; G 1112 -U 1220 ; WX 604 ; N uni04C4 ; G 1113 -U 1221 ; WX 752 ; N uni04C5 ; G 1114 -U 1222 ; WX 639 ; N uni04C6 ; G 1115 -U 1223 ; WX 752 ; N uni04C7 ; G 1116 -U 1224 ; WX 661 ; N uni04C8 ; G 1117 -U 1225 ; WX 752 ; N uni04C9 ; G 1118 -U 1226 ; WX 661 ; N uni04CA ; G 1119 -U 1227 ; WX 686 ; N uni04CB ; G 1120 -U 1228 ; WX 591 ; N uni04CC ; G 1121 -U 1229 ; WX 863 ; N uni04CD ; G 1122 -U 1230 ; WX 754 ; N uni04CE ; G 1123 -U 1231 ; WX 278 ; N uni04CF ; G 1124 -U 1232 ; WX 684 ; N uni04D0 ; G 1125 -U 1233 ; WX 613 ; N uni04D1 ; G 1126 -U 1234 ; WX 684 ; N uni04D2 ; G 1127 -U 1235 ; WX 613 ; N uni04D3 ; G 1128 -U 1236 ; WX 974 ; N uni04D4 ; G 1129 -U 1237 ; WX 995 ; N uni04D5 ; G 1130 -U 1238 ; WX 632 ; N uni04D6 ; G 1131 -U 1239 ; WX 615 ; N uni04D7 ; G 1132 -U 1240 ; WX 787 ; N uni04D8 ; G 1133 -U 1241 ; WX 615 ; N uni04D9 ; G 1134 -U 1242 ; WX 787 ; N uni04DA ; G 1135 -U 1243 ; WX 615 ; N uni04DB ; G 1136 -U 1244 ; WX 1077 ; N uni04DC ; G 1137 -U 1245 ; WX 901 ; N uni04DD ; G 1138 -U 1246 ; WX 641 ; N uni04DE ; G 1139 -U 1247 ; WX 532 ; N uni04DF ; G 1140 -U 1248 ; WX 666 ; N uni04E0 ; G 1141 -U 1249 ; WX 578 ; N uni04E1 ; G 1142 -U 1250 ; WX 748 ; N uni04E2 ; G 1143 -U 1251 ; WX 650 ; N uni04E3 ; G 1144 -U 1252 ; WX 748 ; N uni04E4 ; G 1145 -U 1253 ; WX 650 ; N uni04E5 ; G 1146 -U 1254 ; WX 787 ; N uni04E6 ; G 1147 -U 1255 ; WX 612 ; N uni04E7 ; G 1148 -U 1256 ; WX 787 ; N uni04E8 ; G 1149 -U 1257 ; WX 612 ; N uni04E9 ; G 1150 -U 1258 ; WX 787 ; N uni04EA ; G 1151 -U 1259 ; WX 612 ; N uni04EB ; G 1152 -U 1260 ; WX 698 ; N uni04EC ; G 1153 -U 1261 ; WX 549 ; N uni04ED ; G 1154 -U 1262 ; WX 609 ; N uni04EE ; G 1155 -U 1263 ; WX 592 ; N uni04EF ; G 1156 -U 1264 ; WX 609 ; N uni04F0 ; G 1157 -U 1265 ; WX 592 ; N uni04F1 ; G 1158 -U 1266 ; WX 609 ; N uni04F2 ; G 1159 -U 1267 ; WX 592 ; N uni04F3 ; G 1160 -U 1268 ; WX 686 ; N uni04F4 ; G 1161 -U 1269 ; WX 591 ; N uni04F5 ; G 1162 -U 1270 ; WX 557 ; N uni04F6 ; G 1163 -U 1271 ; WX 491 ; N uni04F7 ; G 1164 -U 1272 ; WX 818 ; N uni04F8 ; G 1165 -U 1273 ; WX 790 ; N uni04F9 ; G 1166 -U 1274 ; WX 675 ; N uni04FA ; G 1167 -U 1275 ; WX 556 ; N uni04FB ; G 1168 -U 1276 ; WX 685 ; N uni04FC ; G 1169 -U 1277 ; WX 592 ; N uni04FD ; G 1170 -U 1278 ; WX 685 ; N uni04FE ; G 1171 -U 1279 ; WX 592 ; N uni04FF ; G 1172 -U 1280 ; WX 686 ; N uni0500 ; G 1173 -U 1281 ; WX 589 ; N uni0501 ; G 1174 -U 1282 ; WX 1006 ; N uni0502 ; G 1175 -U 1283 ; WX 897 ; N uni0503 ; G 1176 -U 1284 ; WX 975 ; N uni0504 ; G 1177 -U 1285 ; WX 869 ; N uni0505 ; G 1178 -U 1286 ; WX 679 ; N uni0506 ; G 1179 -U 1287 ; WX 588 ; N uni0507 ; G 1180 -U 1288 ; WX 1072 ; N uni0508 ; G 1181 -U 1289 ; WX 957 ; N uni0509 ; G 1182 -U 1290 ; WX 1113 ; N uni050A ; G 1183 -U 1291 ; WX 967 ; N uni050B ; G 1184 -U 1292 ; WX 775 ; N uni050C ; G 1185 -U 1293 ; WX 660 ; N uni050D ; G 1186 -U 1294 ; WX 773 ; N uni050E ; G 1187 -U 1295 ; WX 711 ; N uni050F ; G 1188 -U 1296 ; WX 614 ; N uni0510 ; G 1189 -U 1297 ; WX 541 ; N uni0511 ; G 1190 -U 1298 ; WX 752 ; N uni0512 ; G 1191 -U 1299 ; WX 639 ; N uni0513 ; G 1192 -U 1300 ; WX 1195 ; N uni0514 ; G 1193 -U 1301 ; WX 997 ; N uni0515 ; G 1194 -U 1302 ; WX 900 ; N uni0516 ; G 1195 -U 1303 ; WX 867 ; N uni0517 ; G 1196 -U 1304 ; WX 1031 ; N uni0518 ; G 1197 -U 1305 ; WX 989 ; N uni0519 ; G 1198 -U 1306 ; WX 787 ; N uni051A ; G 1199 -U 1307 ; WX 635 ; N uni051B ; G 1200 -U 1308 ; WX 989 ; N uni051C ; G 1201 -U 1309 ; WX 818 ; N uni051D ; G 1202 -U 1310 ; WX 710 ; N uni051E ; G 1203 -U 1311 ; WX 604 ; N uni051F ; G 1204 -U 1312 ; WX 1113 ; N uni0520 ; G 1205 -U 1313 ; WX 942 ; N uni0521 ; G 1206 -U 1314 ; WX 1113 ; N uni0522 ; G 1207 -U 1315 ; WX 949 ; N uni0523 ; G 1208 -U 1316 ; WX 793 ; N uni0524 ; G 1209 -U 1317 ; WX 683 ; N uni0525 ; G 1210 -U 1329 ; WX 766 ; N uni0531 ; G 1211 -U 1330 ; WX 732 ; N uni0532 ; G 1212 -U 1331 ; WX 753 ; N uni0533 ; G 1213 -U 1332 ; WX 753 ; N uni0534 ; G 1214 -U 1333 ; WX 732 ; N uni0535 ; G 1215 -U 1334 ; WX 772 ; N uni0536 ; G 1216 -U 1335 ; WX 640 ; N uni0537 ; G 1217 -U 1336 ; WX 732 ; N uni0538 ; G 1218 -U 1337 ; WX 859 ; N uni0539 ; G 1219 -U 1338 ; WX 753 ; N uni053A ; G 1220 -U 1339 ; WX 691 ; N uni053B ; G 1221 -U 1340 ; WX 533 ; N uni053C ; G 1222 -U 1341 ; WX 922 ; N uni053D ; G 1223 -U 1342 ; WX 863 ; N uni053E ; G 1224 -U 1343 ; WX 732 ; N uni053F ; G 1225 -U 1344 ; WX 716 ; N uni0540 ; G 1226 -U 1345 ; WX 766 ; N uni0541 ; G 1227 -U 1346 ; WX 753 ; N uni0542 ; G 1228 -U 1347 ; WX 767 ; N uni0543 ; G 1229 -U 1348 ; WX 792 ; N uni0544 ; G 1230 -U 1349 ; WX 728 ; N uni0545 ; G 1231 -U 1350 ; WX 729 ; N uni0546 ; G 1232 -U 1351 ; WX 757 ; N uni0547 ; G 1233 -U 1352 ; WX 732 ; N uni0548 ; G 1234 -U 1353 ; WX 713 ; N uni0549 ; G 1235 -U 1354 ; WX 800 ; N uni054A ; G 1236 -U 1355 ; WX 768 ; N uni054B ; G 1237 -U 1356 ; WX 792 ; N uni054C ; G 1238 -U 1357 ; WX 732 ; N uni054D ; G 1239 -U 1358 ; WX 753 ; N uni054E ; G 1240 -U 1359 ; WX 705 ; N uni054F ; G 1241 -U 1360 ; WX 694 ; N uni0550 ; G 1242 -U 1361 ; WX 744 ; N uni0551 ; G 1243 -U 1362 ; WX 538 ; N uni0552 ; G 1244 -U 1363 ; WX 811 ; N uni0553 ; G 1245 -U 1364 ; WX 757 ; N uni0554 ; G 1246 -U 1365 ; WX 787 ; N uni0555 ; G 1247 -U 1366 ; WX 790 ; N uni0556 ; G 1248 -U 1369 ; WX 307 ; N uni0559 ; G 1249 -U 1370 ; WX 318 ; N uni055A ; G 1250 -U 1371 ; WX 234 ; N uni055B ; G 1251 -U 1372 ; WX 361 ; N uni055C ; G 1252 -U 1373 ; WX 238 ; N uni055D ; G 1253 -U 1374 ; WX 405 ; N uni055E ; G 1254 -U 1375 ; WX 500 ; N uni055F ; G 1255 -U 1377 ; WX 974 ; N uni0561 ; G 1256 -U 1378 ; WX 634 ; N uni0562 ; G 1257 -U 1379 ; WX 658 ; N uni0563 ; G 1258 -U 1380 ; WX 663 ; N uni0564 ; G 1259 -U 1381 ; WX 634 ; N uni0565 ; G 1260 -U 1382 ; WX 635 ; N uni0566 ; G 1261 -U 1383 ; WX 515 ; N uni0567 ; G 1262 -U 1384 ; WX 634 ; N uni0568 ; G 1263 -U 1385 ; WX 738 ; N uni0569 ; G 1264 -U 1386 ; WX 658 ; N uni056A ; G 1265 -U 1387 ; WX 634 ; N uni056B ; G 1266 -U 1388 ; WX 271 ; N uni056C ; G 1267 -U 1389 ; WX 980 ; N uni056D ; G 1268 -U 1390 ; WX 623 ; N uni056E ; G 1269 -U 1391 ; WX 634 ; N uni056F ; G 1270 -U 1392 ; WX 634 ; N uni0570 ; G 1271 -U 1393 ; WX 608 ; N uni0571 ; G 1272 -U 1394 ; WX 634 ; N uni0572 ; G 1273 -U 1395 ; WX 629 ; N uni0573 ; G 1274 -U 1396 ; WX 634 ; N uni0574 ; G 1275 -U 1397 ; WX 278 ; N uni0575 ; G 1276 -U 1398 ; WX 634 ; N uni0576 ; G 1277 -U 1399 ; WX 499 ; N uni0577 ; G 1278 -U 1400 ; WX 634 ; N uni0578 ; G 1279 -U 1401 ; WX 404 ; N uni0579 ; G 1280 -U 1402 ; WX 974 ; N uni057A ; G 1281 -U 1403 ; WX 560 ; N uni057B ; G 1282 -U 1404 ; WX 648 ; N uni057C ; G 1283 -U 1405 ; WX 634 ; N uni057D ; G 1284 -U 1406 ; WX 634 ; N uni057E ; G 1285 -U 1407 ; WX 974 ; N uni057F ; G 1286 -U 1408 ; WX 634 ; N uni0580 ; G 1287 -U 1409 ; WX 635 ; N uni0581 ; G 1288 -U 1410 ; WX 435 ; N uni0582 ; G 1289 -U 1411 ; WX 974 ; N uni0583 ; G 1290 -U 1412 ; WX 636 ; N uni0584 ; G 1291 -U 1413 ; WX 612 ; N uni0585 ; G 1292 -U 1414 ; WX 805 ; N uni0586 ; G 1293 -U 1415 ; WX 812 ; N uni0587 ; G 1294 -U 1417 ; WX 337 ; N uni0589 ; G 1295 -U 1418 ; WX 361 ; N uni058A ; G 1296 -U 1456 ; WX 0 ; N uni05B0 ; G 1297 -U 1457 ; WX 0 ; N uni05B1 ; G 1298 -U 1458 ; WX 0 ; N uni05B2 ; G 1299 -U 1459 ; WX 0 ; N uni05B3 ; G 1300 -U 1460 ; WX 0 ; N uni05B4 ; G 1301 -U 1461 ; WX 0 ; N uni05B5 ; G 1302 -U 1462 ; WX 0 ; N uni05B6 ; G 1303 -U 1463 ; WX 0 ; N uni05B7 ; G 1304 -U 1464 ; WX 0 ; N uni05B8 ; G 1305 -U 1465 ; WX 0 ; N uni05B9 ; G 1306 -U 1466 ; WX 0 ; N uni05BA ; G 1307 -U 1467 ; WX 0 ; N uni05BB ; G 1308 -U 1468 ; WX 0 ; N uni05BC ; G 1309 -U 1469 ; WX 0 ; N uni05BD ; G 1310 -U 1470 ; WX 361 ; N uni05BE ; G 1311 -U 1471 ; WX 0 ; N uni05BF ; G 1312 -U 1472 ; WX 295 ; N uni05C0 ; G 1313 -U 1473 ; WX 0 ; N uni05C1 ; G 1314 -U 1474 ; WX 0 ; N uni05C2 ; G 1315 -U 1475 ; WX 295 ; N uni05C3 ; G 1316 -U 1478 ; WX 456 ; N uni05C6 ; G 1317 -U 1479 ; WX 0 ; N uni05C7 ; G 1318 -U 1488 ; WX 668 ; N uni05D0 ; G 1319 -U 1489 ; WX 578 ; N uni05D1 ; G 1320 -U 1490 ; WX 412 ; N uni05D2 ; G 1321 -U 1491 ; WX 546 ; N uni05D3 ; G 1322 -U 1492 ; WX 653 ; N uni05D4 ; G 1323 -U 1493 ; WX 272 ; N uni05D5 ; G 1324 -U 1494 ; WX 346 ; N uni05D6 ; G 1325 -U 1495 ; WX 653 ; N uni05D7 ; G 1326 -U 1496 ; WX 648 ; N uni05D8 ; G 1327 -U 1497 ; WX 224 ; N uni05D9 ; G 1328 -U 1498 ; WX 537 ; N uni05DA ; G 1329 -U 1499 ; WX 529 ; N uni05DB ; G 1330 -U 1500 ; WX 568 ; N uni05DC ; G 1331 -U 1501 ; WX 664 ; N uni05DD ; G 1332 -U 1502 ; WX 679 ; N uni05DE ; G 1333 -U 1503 ; WX 272 ; N uni05DF ; G 1334 -U 1504 ; WX 400 ; N uni05E0 ; G 1335 -U 1505 ; WX 649 ; N uni05E1 ; G 1336 -U 1506 ; WX 626 ; N uni05E2 ; G 1337 -U 1507 ; WX 640 ; N uni05E3 ; G 1338 -U 1508 ; WX 625 ; N uni05E4 ; G 1339 -U 1509 ; WX 540 ; N uni05E5 ; G 1340 -U 1510 ; WX 593 ; N uni05E6 ; G 1341 -U 1511 ; WX 709 ; N uni05E7 ; G 1342 -U 1512 ; WX 564 ; N uni05E8 ; G 1343 -U 1513 ; WX 708 ; N uni05E9 ; G 1344 -U 1514 ; WX 657 ; N uni05EA ; G 1345 -U 1520 ; WX 471 ; N uni05F0 ; G 1346 -U 1521 ; WX 454 ; N uni05F1 ; G 1347 -U 1522 ; WX 471 ; N uni05F2 ; G 1348 -U 1523 ; WX 416 ; N uni05F3 ; G 1349 -U 1524 ; WX 645 ; N uni05F4 ; G 1350 -U 3647 ; WX 636 ; N uni0E3F ; G 1351 -U 3713 ; WX 670 ; N uni0E81 ; G 1352 -U 3714 ; WX 684 ; N uni0E82 ; G 1353 -U 3716 ; WX 688 ; N uni0E84 ; G 1354 -U 3719 ; WX 482 ; N uni0E87 ; G 1355 -U 3720 ; WX 628 ; N uni0E88 ; G 1356 -U 3722 ; WX 684 ; N uni0E8A ; G 1357 -U 3725 ; WX 688 ; N uni0E8D ; G 1358 -U 3732 ; WX 642 ; N uni0E94 ; G 1359 -U 3733 ; WX 642 ; N uni0E95 ; G 1360 -U 3734 ; WX 672 ; N uni0E96 ; G 1361 -U 3735 ; WX 655 ; N uni0E97 ; G 1362 -U 3737 ; WX 641 ; N uni0E99 ; G 1363 -U 3738 ; WX 592 ; N uni0E9A ; G 1364 -U 3739 ; WX 592 ; N uni0E9B ; G 1365 -U 3740 ; WX 745 ; N uni0E9C ; G 1366 -U 3741 ; WX 767 ; N uni0E9D ; G 1367 -U 3742 ; WX 687 ; N uni0E9E ; G 1368 -U 3743 ; WX 687 ; N uni0E9F ; G 1369 -U 3745 ; WX 702 ; N uni0EA1 ; G 1370 -U 3746 ; WX 688 ; N uni0EA2 ; G 1371 -U 3747 ; WX 684 ; N uni0EA3 ; G 1372 -U 3749 ; WX 649 ; N uni0EA5 ; G 1373 -U 3751 ; WX 632 ; N uni0EA7 ; G 1374 -U 3754 ; WX 703 ; N uni0EAA ; G 1375 -U 3755 ; WX 819 ; N uni0EAB ; G 1376 -U 3757 ; WX 633 ; N uni0EAD ; G 1377 -U 3758 ; WX 684 ; N uni0EAE ; G 1378 -U 3759 ; WX 788 ; N uni0EAF ; G 1379 -U 3760 ; WX 632 ; N uni0EB0 ; G 1380 -U 3761 ; WX 0 ; N uni0EB1 ; G 1381 -U 3762 ; WX 539 ; N uni0EB2 ; G 1382 -U 3763 ; WX 539 ; N uni0EB3 ; G 1383 -U 3764 ; WX 0 ; N uni0EB4 ; G 1384 -U 3765 ; WX 0 ; N uni0EB5 ; G 1385 -U 3766 ; WX 0 ; N uni0EB6 ; G 1386 -U 3767 ; WX 0 ; N uni0EB7 ; G 1387 -U 3768 ; WX 0 ; N uni0EB8 ; G 1388 -U 3769 ; WX 0 ; N uni0EB9 ; G 1389 -U 3771 ; WX 0 ; N uni0EBB ; G 1390 -U 3772 ; WX 0 ; N uni0EBC ; G 1391 -U 3773 ; WX 663 ; N uni0EBD ; G 1392 -U 3776 ; WX 360 ; N uni0EC0 ; G 1393 -U 3777 ; WX 679 ; N uni0EC1 ; G 1394 -U 3778 ; WX 460 ; N uni0EC2 ; G 1395 -U 3779 ; WX 547 ; N uni0EC3 ; G 1396 -U 3780 ; WX 491 ; N uni0EC4 ; G 1397 -U 3782 ; WX 674 ; N uni0EC6 ; G 1398 -U 3784 ; WX 0 ; N uni0EC8 ; G 1399 -U 3785 ; WX 0 ; N uni0EC9 ; G 1400 -U 3786 ; WX 0 ; N uni0ECA ; G 1401 -U 3787 ; WX 0 ; N uni0ECB ; G 1402 -U 3788 ; WX 0 ; N uni0ECC ; G 1403 -U 3789 ; WX 0 ; N uni0ECD ; G 1404 -U 3792 ; WX 636 ; N uni0ED0 ; G 1405 -U 3793 ; WX 641 ; N uni0ED1 ; G 1406 -U 3794 ; WX 641 ; N uni0ED2 ; G 1407 -U 3795 ; WX 670 ; N uni0ED3 ; G 1408 -U 3796 ; WX 625 ; N uni0ED4 ; G 1409 -U 3797 ; WX 625 ; N uni0ED5 ; G 1410 -U 3798 ; WX 703 ; N uni0ED6 ; G 1411 -U 3799 ; WX 670 ; N uni0ED7 ; G 1412 -U 3800 ; WX 674 ; N uni0ED8 ; G 1413 -U 3801 ; WX 677 ; N uni0ED9 ; G 1414 -U 3804 ; WX 1028 ; N uni0EDC ; G 1415 -U 3805 ; WX 1028 ; N uni0EDD ; G 1416 -U 4256 ; WX 874 ; N uni10A0 ; G 1417 -U 4257 ; WX 733 ; N uni10A1 ; G 1418 -U 4258 ; WX 679 ; N uni10A2 ; G 1419 -U 4259 ; WX 834 ; N uni10A3 ; G 1420 -U 4260 ; WX 615 ; N uni10A4 ; G 1421 -U 4261 ; WX 768 ; N uni10A5 ; G 1422 -U 4262 ; WX 753 ; N uni10A6 ; G 1423 -U 4263 ; WX 914 ; N uni10A7 ; G 1424 -U 4264 ; WX 453 ; N uni10A8 ; G 1425 -U 4265 ; WX 620 ; N uni10A9 ; G 1426 -U 4266 ; WX 843 ; N uni10AA ; G 1427 -U 4267 ; WX 882 ; N uni10AB ; G 1428 -U 4268 ; WX 625 ; N uni10AC ; G 1429 -U 4269 ; WX 854 ; N uni10AD ; G 1430 -U 4270 ; WX 781 ; N uni10AE ; G 1431 -U 4271 ; WX 629 ; N uni10AF ; G 1432 -U 4272 ; WX 912 ; N uni10B0 ; G 1433 -U 4273 ; WX 621 ; N uni10B1 ; G 1434 -U 4274 ; WX 620 ; N uni10B2 ; G 1435 -U 4275 ; WX 854 ; N uni10B3 ; G 1436 -U 4276 ; WX 866 ; N uni10B4 ; G 1437 -U 4277 ; WX 724 ; N uni10B5 ; G 1438 -U 4278 ; WX 630 ; N uni10B6 ; G 1439 -U 4279 ; WX 621 ; N uni10B7 ; G 1440 -U 4280 ; WX 625 ; N uni10B8 ; G 1441 -U 4281 ; WX 620 ; N uni10B9 ; G 1442 -U 4282 ; WX 818 ; N uni10BA ; G 1443 -U 4283 ; WX 874 ; N uni10BB ; G 1444 -U 4284 ; WX 615 ; N uni10BC ; G 1445 -U 4285 ; WX 623 ; N uni10BD ; G 1446 -U 4286 ; WX 625 ; N uni10BE ; G 1447 -U 4287 ; WX 725 ; N uni10BF ; G 1448 -U 4288 ; WX 844 ; N uni10C0 ; G 1449 -U 4289 ; WX 596 ; N uni10C1 ; G 1450 -U 4290 ; WX 688 ; N uni10C2 ; G 1451 -U 4291 ; WX 596 ; N uni10C3 ; G 1452 -U 4292 ; WX 594 ; N uni10C4 ; G 1453 -U 4293 ; WX 738 ; N uni10C5 ; G 1454 -U 4304 ; WX 508 ; N uni10D0 ; G 1455 -U 4305 ; WX 518 ; N uni10D1 ; G 1456 -U 4306 ; WX 581 ; N uni10D2 ; G 1457 -U 4307 ; WX 818 ; N uni10D3 ; G 1458 -U 4308 ; WX 508 ; N uni10D4 ; G 1459 -U 4309 ; WX 513 ; N uni10D5 ; G 1460 -U 4310 ; WX 500 ; N uni10D6 ; G 1461 -U 4311 ; WX 801 ; N uni10D7 ; G 1462 -U 4312 ; WX 518 ; N uni10D8 ; G 1463 -U 4313 ; WX 510 ; N uni10D9 ; G 1464 -U 4314 ; WX 1064 ; N uni10DA ; G 1465 -U 4315 ; WX 522 ; N uni10DB ; G 1466 -U 4316 ; WX 522 ; N uni10DC ; G 1467 -U 4317 ; WX 786 ; N uni10DD ; G 1468 -U 4318 ; WX 508 ; N uni10DE ; G 1469 -U 4319 ; WX 518 ; N uni10DF ; G 1470 -U 4320 ; WX 796 ; N uni10E0 ; G 1471 -U 4321 ; WX 522 ; N uni10E1 ; G 1472 -U 4322 ; WX 654 ; N uni10E2 ; G 1473 -U 4323 ; WX 522 ; N uni10E3 ; G 1474 -U 4324 ; WX 825 ; N uni10E4 ; G 1475 -U 4325 ; WX 513 ; N uni10E5 ; G 1476 -U 4326 ; WX 786 ; N uni10E6 ; G 1477 -U 4327 ; WX 518 ; N uni10E7 ; G 1478 -U 4328 ; WX 518 ; N uni10E8 ; G 1479 -U 4329 ; WX 522 ; N uni10E9 ; G 1480 -U 4330 ; WX 571 ; N uni10EA ; G 1481 -U 4331 ; WX 522 ; N uni10EB ; G 1482 -U 4332 ; WX 518 ; N uni10EC ; G 1483 -U 4333 ; WX 520 ; N uni10ED ; G 1484 -U 4334 ; WX 522 ; N uni10EE ; G 1485 -U 4335 ; WX 454 ; N uni10EF ; G 1486 -U 4336 ; WX 508 ; N uni10F0 ; G 1487 -U 4337 ; WX 518 ; N uni10F1 ; G 1488 -U 4338 ; WX 508 ; N uni10F2 ; G 1489 -U 4339 ; WX 508 ; N uni10F3 ; G 1490 -U 4340 ; WX 518 ; N uni10F4 ; G 1491 -U 4341 ; WX 554 ; N uni10F5 ; G 1492 -U 4342 ; WX 828 ; N uni10F6 ; G 1493 -U 4343 ; WX 552 ; N uni10F7 ; G 1494 -U 4344 ; WX 508 ; N uni10F8 ; G 1495 -U 4345 ; WX 571 ; N uni10F9 ; G 1496 -U 4346 ; WX 508 ; N uni10FA ; G 1497 -U 4347 ; WX 448 ; N uni10FB ; G 1498 -U 4348 ; WX 324 ; N uni10FC ; G 1499 -U 5121 ; WX 684 ; N uni1401 ; G 1500 -U 5122 ; WX 684 ; N uni1402 ; G 1501 -U 5123 ; WX 684 ; N uni1403 ; G 1502 -U 5124 ; WX 684 ; N uni1404 ; G 1503 -U 5125 ; WX 769 ; N uni1405 ; G 1504 -U 5126 ; WX 769 ; N uni1406 ; G 1505 -U 5127 ; WX 769 ; N uni1407 ; G 1506 -U 5129 ; WX 769 ; N uni1409 ; G 1507 -U 5130 ; WX 769 ; N uni140A ; G 1508 -U 5131 ; WX 769 ; N uni140B ; G 1509 -U 5132 ; WX 835 ; N uni140C ; G 1510 -U 5133 ; WX 834 ; N uni140D ; G 1511 -U 5134 ; WX 835 ; N uni140E ; G 1512 -U 5135 ; WX 834 ; N uni140F ; G 1513 -U 5136 ; WX 835 ; N uni1410 ; G 1514 -U 5137 ; WX 834 ; N uni1411 ; G 1515 -U 5138 ; WX 967 ; N uni1412 ; G 1516 -U 5139 ; WX 1007 ; N uni1413 ; G 1517 -U 5140 ; WX 967 ; N uni1414 ; G 1518 -U 5141 ; WX 1007 ; N uni1415 ; G 1519 -U 5142 ; WX 769 ; N uni1416 ; G 1520 -U 5143 ; WX 967 ; N uni1417 ; G 1521 -U 5144 ; WX 1007 ; N uni1418 ; G 1522 -U 5145 ; WX 967 ; N uni1419 ; G 1523 -U 5146 ; WX 1007 ; N uni141A ; G 1524 -U 5147 ; WX 769 ; N uni141B ; G 1525 -U 5149 ; WX 256 ; N uni141D ; G 1526 -U 5150 ; WX 543 ; N uni141E ; G 1527 -U 5151 ; WX 423 ; N uni141F ; G 1528 -U 5152 ; WX 423 ; N uni1420 ; G 1529 -U 5153 ; WX 389 ; N uni1421 ; G 1530 -U 5154 ; WX 389 ; N uni1422 ; G 1531 -U 5155 ; WX 393 ; N uni1423 ; G 1532 -U 5156 ; WX 389 ; N uni1424 ; G 1533 -U 5157 ; WX 466 ; N uni1425 ; G 1534 -U 5158 ; WX 385 ; N uni1426 ; G 1535 -U 5159 ; WX 256 ; N uni1427 ; G 1536 -U 5160 ; WX 389 ; N uni1428 ; G 1537 -U 5161 ; WX 389 ; N uni1429 ; G 1538 -U 5162 ; WX 389 ; N uni142A ; G 1539 -U 5163 ; WX 1090 ; N uni142B ; G 1540 -U 5164 ; WX 909 ; N uni142C ; G 1541 -U 5165 ; WX 953 ; N uni142D ; G 1542 -U 5166 ; WX 1117 ; N uni142E ; G 1543 -U 5167 ; WX 684 ; N uni142F ; G 1544 -U 5168 ; WX 684 ; N uni1430 ; G 1545 -U 5169 ; WX 684 ; N uni1431 ; G 1546 -U 5170 ; WX 684 ; N uni1432 ; G 1547 -U 5171 ; WX 729 ; N uni1433 ; G 1548 -U 5172 ; WX 729 ; N uni1434 ; G 1549 -U 5173 ; WX 729 ; N uni1435 ; G 1550 -U 5175 ; WX 729 ; N uni1437 ; G 1551 -U 5176 ; WX 729 ; N uni1438 ; G 1552 -U 5177 ; WX 729 ; N uni1439 ; G 1553 -U 5178 ; WX 835 ; N uni143A ; G 1554 -U 5179 ; WX 684 ; N uni143B ; G 1555 -U 5180 ; WX 835 ; N uni143C ; G 1556 -U 5181 ; WX 834 ; N uni143D ; G 1557 -U 5182 ; WX 835 ; N uni143E ; G 1558 -U 5183 ; WX 834 ; N uni143F ; G 1559 -U 5184 ; WX 967 ; N uni1440 ; G 1560 -U 5185 ; WX 1007 ; N uni1441 ; G 1561 -U 5186 ; WX 967 ; N uni1442 ; G 1562 -U 5187 ; WX 1007 ; N uni1443 ; G 1563 -U 5188 ; WX 967 ; N uni1444 ; G 1564 -U 5189 ; WX 1007 ; N uni1445 ; G 1565 -U 5190 ; WX 967 ; N uni1446 ; G 1566 -U 5191 ; WX 1007 ; N uni1447 ; G 1567 -U 5192 ; WX 729 ; N uni1448 ; G 1568 -U 5193 ; WX 508 ; N uni1449 ; G 1569 -U 5194 ; WX 192 ; N uni144A ; G 1570 -U 5196 ; WX 732 ; N uni144C ; G 1571 -U 5197 ; WX 732 ; N uni144D ; G 1572 -U 5198 ; WX 732 ; N uni144E ; G 1573 -U 5199 ; WX 732 ; N uni144F ; G 1574 -U 5200 ; WX 730 ; N uni1450 ; G 1575 -U 5201 ; WX 730 ; N uni1451 ; G 1576 -U 5202 ; WX 730 ; N uni1452 ; G 1577 -U 5204 ; WX 730 ; N uni1454 ; G 1578 -U 5205 ; WX 730 ; N uni1455 ; G 1579 -U 5206 ; WX 730 ; N uni1456 ; G 1580 -U 5207 ; WX 921 ; N uni1457 ; G 1581 -U 5208 ; WX 889 ; N uni1458 ; G 1582 -U 5209 ; WX 921 ; N uni1459 ; G 1583 -U 5210 ; WX 889 ; N uni145A ; G 1584 -U 5211 ; WX 921 ; N uni145B ; G 1585 -U 5212 ; WX 889 ; N uni145C ; G 1586 -U 5213 ; WX 928 ; N uni145D ; G 1587 -U 5214 ; WX 900 ; N uni145E ; G 1588 -U 5215 ; WX 928 ; N uni145F ; G 1589 -U 5216 ; WX 900 ; N uni1460 ; G 1590 -U 5217 ; WX 947 ; N uni1461 ; G 1591 -U 5218 ; WX 900 ; N uni1462 ; G 1592 -U 5219 ; WX 947 ; N uni1463 ; G 1593 -U 5220 ; WX 900 ; N uni1464 ; G 1594 -U 5221 ; WX 947 ; N uni1465 ; G 1595 -U 5222 ; WX 434 ; N uni1466 ; G 1596 -U 5223 ; WX 877 ; N uni1467 ; G 1597 -U 5224 ; WX 877 ; N uni1468 ; G 1598 -U 5225 ; WX 866 ; N uni1469 ; G 1599 -U 5226 ; WX 890 ; N uni146A ; G 1600 -U 5227 ; WX 628 ; N uni146B ; G 1601 -U 5228 ; WX 628 ; N uni146C ; G 1602 -U 5229 ; WX 628 ; N uni146D ; G 1603 -U 5230 ; WX 628 ; N uni146E ; G 1604 -U 5231 ; WX 628 ; N uni146F ; G 1605 -U 5232 ; WX 628 ; N uni1470 ; G 1606 -U 5233 ; WX 628 ; N uni1471 ; G 1607 -U 5234 ; WX 628 ; N uni1472 ; G 1608 -U 5235 ; WX 628 ; N uni1473 ; G 1609 -U 5236 ; WX 860 ; N uni1474 ; G 1610 -U 5237 ; WX 771 ; N uni1475 ; G 1611 -U 5238 ; WX 815 ; N uni1476 ; G 1612 -U 5239 ; WX 816 ; N uni1477 ; G 1613 -U 5240 ; WX 815 ; N uni1478 ; G 1614 -U 5241 ; WX 816 ; N uni1479 ; G 1615 -U 5242 ; WX 860 ; N uni147A ; G 1616 -U 5243 ; WX 771 ; N uni147B ; G 1617 -U 5244 ; WX 860 ; N uni147C ; G 1618 -U 5245 ; WX 771 ; N uni147D ; G 1619 -U 5246 ; WX 815 ; N uni147E ; G 1620 -U 5247 ; WX 816 ; N uni147F ; G 1621 -U 5248 ; WX 815 ; N uni1480 ; G 1622 -U 5249 ; WX 816 ; N uni1481 ; G 1623 -U 5250 ; WX 815 ; N uni1482 ; G 1624 -U 5251 ; WX 407 ; N uni1483 ; G 1625 -U 5252 ; WX 407 ; N uni1484 ; G 1626 -U 5253 ; WX 750 ; N uni1485 ; G 1627 -U 5254 ; WX 775 ; N uni1486 ; G 1628 -U 5255 ; WX 750 ; N uni1487 ; G 1629 -U 5256 ; WX 775 ; N uni1488 ; G 1630 -U 5257 ; WX 628 ; N uni1489 ; G 1631 -U 5258 ; WX 628 ; N uni148A ; G 1632 -U 5259 ; WX 628 ; N uni148B ; G 1633 -U 5260 ; WX 628 ; N uni148C ; G 1634 -U 5261 ; WX 628 ; N uni148D ; G 1635 -U 5262 ; WX 628 ; N uni148E ; G 1636 -U 5263 ; WX 628 ; N uni148F ; G 1637 -U 5264 ; WX 628 ; N uni1490 ; G 1638 -U 5265 ; WX 628 ; N uni1491 ; G 1639 -U 5266 ; WX 860 ; N uni1492 ; G 1640 -U 5267 ; WX 771 ; N uni1493 ; G 1641 -U 5268 ; WX 815 ; N uni1494 ; G 1642 -U 5269 ; WX 816 ; N uni1495 ; G 1643 -U 5270 ; WX 815 ; N uni1496 ; G 1644 -U 5271 ; WX 816 ; N uni1497 ; G 1645 -U 5272 ; WX 860 ; N uni1498 ; G 1646 -U 5273 ; WX 771 ; N uni1499 ; G 1647 -U 5274 ; WX 860 ; N uni149A ; G 1648 -U 5275 ; WX 771 ; N uni149B ; G 1649 -U 5276 ; WX 815 ; N uni149C ; G 1650 -U 5277 ; WX 816 ; N uni149D ; G 1651 -U 5278 ; WX 815 ; N uni149E ; G 1652 -U 5279 ; WX 816 ; N uni149F ; G 1653 -U 5280 ; WX 815 ; N uni14A0 ; G 1654 -U 5281 ; WX 435 ; N uni14A1 ; G 1655 -U 5282 ; WX 435 ; N uni14A2 ; G 1656 -U 5283 ; WX 610 ; N uni14A3 ; G 1657 -U 5284 ; WX 557 ; N uni14A4 ; G 1658 -U 5285 ; WX 557 ; N uni14A5 ; G 1659 -U 5286 ; WX 557 ; N uni14A6 ; G 1660 -U 5287 ; WX 610 ; N uni14A7 ; G 1661 -U 5288 ; WX 610 ; N uni14A8 ; G 1662 -U 5289 ; WX 610 ; N uni14A9 ; G 1663 -U 5290 ; WX 557 ; N uni14AA ; G 1664 -U 5291 ; WX 557 ; N uni14AB ; G 1665 -U 5292 ; WX 749 ; N uni14AC ; G 1666 -U 5293 ; WX 769 ; N uni14AD ; G 1667 -U 5294 ; WX 746 ; N uni14AE ; G 1668 -U 5295 ; WX 764 ; N uni14AF ; G 1669 -U 5296 ; WX 746 ; N uni14B0 ; G 1670 -U 5297 ; WX 764 ; N uni14B1 ; G 1671 -U 5298 ; WX 749 ; N uni14B2 ; G 1672 -U 5299 ; WX 769 ; N uni14B3 ; G 1673 -U 5300 ; WX 749 ; N uni14B4 ; G 1674 -U 5301 ; WX 769 ; N uni14B5 ; G 1675 -U 5302 ; WX 746 ; N uni14B6 ; G 1676 -U 5303 ; WX 764 ; N uni14B7 ; G 1677 -U 5304 ; WX 746 ; N uni14B8 ; G 1678 -U 5305 ; WX 764 ; N uni14B9 ; G 1679 -U 5306 ; WX 746 ; N uni14BA ; G 1680 -U 5307 ; WX 386 ; N uni14BB ; G 1681 -U 5308 ; WX 508 ; N uni14BC ; G 1682 -U 5309 ; WX 386 ; N uni14BD ; G 1683 -U 5312 ; WX 852 ; N uni14C0 ; G 1684 -U 5313 ; WX 852 ; N uni14C1 ; G 1685 -U 5314 ; WX 852 ; N uni14C2 ; G 1686 -U 5315 ; WX 852 ; N uni14C3 ; G 1687 -U 5316 ; WX 852 ; N uni14C4 ; G 1688 -U 5317 ; WX 852 ; N uni14C5 ; G 1689 -U 5318 ; WX 852 ; N uni14C6 ; G 1690 -U 5319 ; WX 852 ; N uni14C7 ; G 1691 -U 5320 ; WX 852 ; N uni14C8 ; G 1692 -U 5321 ; WX 1069 ; N uni14C9 ; G 1693 -U 5322 ; WX 1035 ; N uni14CA ; G 1694 -U 5323 ; WX 1059 ; N uni14CB ; G 1695 -U 5324 ; WX 852 ; N uni14CC ; G 1696 -U 5325 ; WX 1059 ; N uni14CD ; G 1697 -U 5326 ; WX 852 ; N uni14CE ; G 1698 -U 5327 ; WX 852 ; N uni14CF ; G 1699 -U 5328 ; WX 600 ; N uni14D0 ; G 1700 -U 5329 ; WX 453 ; N uni14D1 ; G 1701 -U 5330 ; WX 600 ; N uni14D2 ; G 1702 -U 5331 ; WX 852 ; N uni14D3 ; G 1703 -U 5332 ; WX 852 ; N uni14D4 ; G 1704 -U 5333 ; WX 852 ; N uni14D5 ; G 1705 -U 5334 ; WX 852 ; N uni14D6 ; G 1706 -U 5335 ; WX 852 ; N uni14D7 ; G 1707 -U 5336 ; WX 852 ; N uni14D8 ; G 1708 -U 5337 ; WX 852 ; N uni14D9 ; G 1709 -U 5338 ; WX 852 ; N uni14DA ; G 1710 -U 5339 ; WX 852 ; N uni14DB ; G 1711 -U 5340 ; WX 1069 ; N uni14DC ; G 1712 -U 5341 ; WX 1035 ; N uni14DD ; G 1713 -U 5342 ; WX 1059 ; N uni14DE ; G 1714 -U 5343 ; WX 1030 ; N uni14DF ; G 1715 -U 5344 ; WX 1059 ; N uni14E0 ; G 1716 -U 5345 ; WX 1030 ; N uni14E1 ; G 1717 -U 5346 ; WX 1069 ; N uni14E2 ; G 1718 -U 5347 ; WX 1035 ; N uni14E3 ; G 1719 -U 5348 ; WX 1069 ; N uni14E4 ; G 1720 -U 5349 ; WX 1035 ; N uni14E5 ; G 1721 -U 5350 ; WX 1083 ; N uni14E6 ; G 1722 -U 5351 ; WX 1030 ; N uni14E7 ; G 1723 -U 5352 ; WX 1083 ; N uni14E8 ; G 1724 -U 5353 ; WX 1030 ; N uni14E9 ; G 1725 -U 5354 ; WX 600 ; N uni14EA ; G 1726 -U 5356 ; WX 729 ; N uni14EC ; G 1727 -U 5357 ; WX 603 ; N uni14ED ; G 1728 -U 5358 ; WX 603 ; N uni14EE ; G 1729 -U 5359 ; WX 603 ; N uni14EF ; G 1730 -U 5360 ; WX 603 ; N uni14F0 ; G 1731 -U 5361 ; WX 603 ; N uni14F1 ; G 1732 -U 5362 ; WX 603 ; N uni14F2 ; G 1733 -U 5363 ; WX 603 ; N uni14F3 ; G 1734 -U 5364 ; WX 603 ; N uni14F4 ; G 1735 -U 5365 ; WX 603 ; N uni14F5 ; G 1736 -U 5366 ; WX 834 ; N uni14F6 ; G 1737 -U 5367 ; WX 754 ; N uni14F7 ; G 1738 -U 5368 ; WX 792 ; N uni14F8 ; G 1739 -U 5369 ; WX 771 ; N uni14F9 ; G 1740 -U 5370 ; WX 792 ; N uni14FA ; G 1741 -U 5371 ; WX 771 ; N uni14FB ; G 1742 -U 5372 ; WX 834 ; N uni14FC ; G 1743 -U 5373 ; WX 754 ; N uni14FD ; G 1744 -U 5374 ; WX 834 ; N uni14FE ; G 1745 -U 5375 ; WX 754 ; N uni14FF ; G 1746 -U 5376 ; WX 792 ; N uni1500 ; G 1747 -U 5377 ; WX 771 ; N uni1501 ; G 1748 -U 5378 ; WX 792 ; N uni1502 ; G 1749 -U 5379 ; WX 771 ; N uni1503 ; G 1750 -U 5380 ; WX 792 ; N uni1504 ; G 1751 -U 5381 ; WX 418 ; N uni1505 ; G 1752 -U 5382 ; WX 420 ; N uni1506 ; G 1753 -U 5383 ; WX 418 ; N uni1507 ; G 1754 -U 5392 ; WX 712 ; N uni1510 ; G 1755 -U 5393 ; WX 712 ; N uni1511 ; G 1756 -U 5394 ; WX 712 ; N uni1512 ; G 1757 -U 5395 ; WX 892 ; N uni1513 ; G 1758 -U 5396 ; WX 892 ; N uni1514 ; G 1759 -U 5397 ; WX 892 ; N uni1515 ; G 1760 -U 5398 ; WX 892 ; N uni1516 ; G 1761 -U 5399 ; WX 910 ; N uni1517 ; G 1762 -U 5400 ; WX 872 ; N uni1518 ; G 1763 -U 5401 ; WX 910 ; N uni1519 ; G 1764 -U 5402 ; WX 872 ; N uni151A ; G 1765 -U 5403 ; WX 910 ; N uni151B ; G 1766 -U 5404 ; WX 872 ; N uni151C ; G 1767 -U 5405 ; WX 1140 ; N uni151D ; G 1768 -U 5406 ; WX 1100 ; N uni151E ; G 1769 -U 5407 ; WX 1140 ; N uni151F ; G 1770 -U 5408 ; WX 1100 ; N uni1520 ; G 1771 -U 5409 ; WX 1140 ; N uni1521 ; G 1772 -U 5410 ; WX 1100 ; N uni1522 ; G 1773 -U 5411 ; WX 1140 ; N uni1523 ; G 1774 -U 5412 ; WX 1100 ; N uni1524 ; G 1775 -U 5413 ; WX 641 ; N uni1525 ; G 1776 -U 5414 ; WX 627 ; N uni1526 ; G 1777 -U 5415 ; WX 627 ; N uni1527 ; G 1778 -U 5416 ; WX 627 ; N uni1528 ; G 1779 -U 5417 ; WX 627 ; N uni1529 ; G 1780 -U 5418 ; WX 627 ; N uni152A ; G 1781 -U 5419 ; WX 627 ; N uni152B ; G 1782 -U 5420 ; WX 627 ; N uni152C ; G 1783 -U 5421 ; WX 627 ; N uni152D ; G 1784 -U 5422 ; WX 627 ; N uni152E ; G 1785 -U 5423 ; WX 844 ; N uni152F ; G 1786 -U 5424 ; WX 781 ; N uni1530 ; G 1787 -U 5425 ; WX 816 ; N uni1531 ; G 1788 -U 5426 ; WX 818 ; N uni1532 ; G 1789 -U 5427 ; WX 816 ; N uni1533 ; G 1790 -U 5428 ; WX 818 ; N uni1534 ; G 1791 -U 5429 ; WX 844 ; N uni1535 ; G 1792 -U 5430 ; WX 781 ; N uni1536 ; G 1793 -U 5431 ; WX 844 ; N uni1537 ; G 1794 -U 5432 ; WX 781 ; N uni1538 ; G 1795 -U 5433 ; WX 816 ; N uni1539 ; G 1796 -U 5434 ; WX 818 ; N uni153A ; G 1797 -U 5435 ; WX 816 ; N uni153B ; G 1798 -U 5436 ; WX 818 ; N uni153C ; G 1799 -U 5437 ; WX 816 ; N uni153D ; G 1800 -U 5438 ; WX 418 ; N uni153E ; G 1801 -U 5440 ; WX 389 ; N uni1540 ; G 1802 -U 5441 ; WX 484 ; N uni1541 ; G 1803 -U 5442 ; WX 916 ; N uni1542 ; G 1804 -U 5443 ; WX 916 ; N uni1543 ; G 1805 -U 5444 ; WX 863 ; N uni1544 ; G 1806 -U 5445 ; WX 916 ; N uni1545 ; G 1807 -U 5446 ; WX 863 ; N uni1546 ; G 1808 -U 5447 ; WX 863 ; N uni1547 ; G 1809 -U 5448 ; WX 603 ; N uni1548 ; G 1810 -U 5449 ; WX 603 ; N uni1549 ; G 1811 -U 5450 ; WX 603 ; N uni154A ; G 1812 -U 5451 ; WX 603 ; N uni154B ; G 1813 -U 5452 ; WX 603 ; N uni154C ; G 1814 -U 5453 ; WX 603 ; N uni154D ; G 1815 -U 5454 ; WX 834 ; N uni154E ; G 1816 -U 5455 ; WX 754 ; N uni154F ; G 1817 -U 5456 ; WX 418 ; N uni1550 ; G 1818 -U 5458 ; WX 729 ; N uni1552 ; G 1819 -U 5459 ; WX 684 ; N uni1553 ; G 1820 -U 5460 ; WX 684 ; N uni1554 ; G 1821 -U 5461 ; WX 684 ; N uni1555 ; G 1822 -U 5462 ; WX 684 ; N uni1556 ; G 1823 -U 5463 ; WX 726 ; N uni1557 ; G 1824 -U 5464 ; WX 726 ; N uni1558 ; G 1825 -U 5465 ; WX 726 ; N uni1559 ; G 1826 -U 5466 ; WX 726 ; N uni155A ; G 1827 -U 5467 ; WX 924 ; N uni155B ; G 1828 -U 5468 ; WX 1007 ; N uni155C ; G 1829 -U 5469 ; WX 508 ; N uni155D ; G 1830 -U 5470 ; WX 732 ; N uni155E ; G 1831 -U 5471 ; WX 732 ; N uni155F ; G 1832 -U 5472 ; WX 732 ; N uni1560 ; G 1833 -U 5473 ; WX 732 ; N uni1561 ; G 1834 -U 5474 ; WX 732 ; N uni1562 ; G 1835 -U 5475 ; WX 732 ; N uni1563 ; G 1836 -U 5476 ; WX 730 ; N uni1564 ; G 1837 -U 5477 ; WX 730 ; N uni1565 ; G 1838 -U 5478 ; WX 730 ; N uni1566 ; G 1839 -U 5479 ; WX 730 ; N uni1567 ; G 1840 -U 5480 ; WX 947 ; N uni1568 ; G 1841 -U 5481 ; WX 900 ; N uni1569 ; G 1842 -U 5482 ; WX 508 ; N uni156A ; G 1843 -U 5492 ; WX 831 ; N uni1574 ; G 1844 -U 5493 ; WX 831 ; N uni1575 ; G 1845 -U 5494 ; WX 831 ; N uni1576 ; G 1846 -U 5495 ; WX 831 ; N uni1577 ; G 1847 -U 5496 ; WX 831 ; N uni1578 ; G 1848 -U 5497 ; WX 831 ; N uni1579 ; G 1849 -U 5498 ; WX 831 ; N uni157A ; G 1850 -U 5499 ; WX 563 ; N uni157B ; G 1851 -U 5500 ; WX 752 ; N uni157C ; G 1852 -U 5501 ; WX 484 ; N uni157D ; G 1853 -U 5502 ; WX 1047 ; N uni157E ; G 1854 -U 5503 ; WX 1047 ; N uni157F ; G 1855 -U 5504 ; WX 1047 ; N uni1580 ; G 1856 -U 5505 ; WX 1047 ; N uni1581 ; G 1857 -U 5506 ; WX 1047 ; N uni1582 ; G 1858 -U 5507 ; WX 1047 ; N uni1583 ; G 1859 -U 5508 ; WX 1047 ; N uni1584 ; G 1860 -U 5509 ; WX 825 ; N uni1585 ; G 1861 -U 5514 ; WX 831 ; N uni158A ; G 1862 -U 5515 ; WX 831 ; N uni158B ; G 1863 -U 5516 ; WX 831 ; N uni158C ; G 1864 -U 5517 ; WX 831 ; N uni158D ; G 1865 -U 5518 ; WX 1259 ; N uni158E ; G 1866 -U 5519 ; WX 1259 ; N uni158F ; G 1867 -U 5520 ; WX 1259 ; N uni1590 ; G 1868 -U 5521 ; WX 1002 ; N uni1591 ; G 1869 -U 5522 ; WX 1002 ; N uni1592 ; G 1870 -U 5523 ; WX 1259 ; N uni1593 ; G 1871 -U 5524 ; WX 1259 ; N uni1594 ; G 1872 -U 5525 ; WX 700 ; N uni1595 ; G 1873 -U 5526 ; WX 1073 ; N uni1596 ; G 1874 -U 5536 ; WX 852 ; N uni15A0 ; G 1875 -U 5537 ; WX 852 ; N uni15A1 ; G 1876 -U 5538 ; WX 799 ; N uni15A2 ; G 1877 -U 5539 ; WX 799 ; N uni15A3 ; G 1878 -U 5540 ; WX 799 ; N uni15A4 ; G 1879 -U 5541 ; WX 799 ; N uni15A5 ; G 1880 -U 5542 ; WX 600 ; N uni15A6 ; G 1881 -U 5543 ; WX 643 ; N uni15A7 ; G 1882 -U 5544 ; WX 643 ; N uni15A8 ; G 1883 -U 5545 ; WX 643 ; N uni15A9 ; G 1884 -U 5546 ; WX 643 ; N uni15AA ; G 1885 -U 5547 ; WX 643 ; N uni15AB ; G 1886 -U 5548 ; WX 643 ; N uni15AC ; G 1887 -U 5549 ; WX 643 ; N uni15AD ; G 1888 -U 5550 ; WX 418 ; N uni15AE ; G 1889 -U 5551 ; WX 628 ; N uni15AF ; G 1890 -U 5598 ; WX 770 ; N uni15DE ; G 1891 -U 5601 ; WX 770 ; N uni15E1 ; G 1892 -U 5702 ; WX 468 ; N uni1646 ; G 1893 -U 5703 ; WX 468 ; N uni1647 ; G 1894 -U 5742 ; WX 444 ; N uni166E ; G 1895 -U 5743 ; WX 1047 ; N uni166F ; G 1896 -U 5744 ; WX 1310 ; N uni1670 ; G 1897 -U 5745 ; WX 1632 ; N uni1671 ; G 1898 -U 5746 ; WX 1632 ; N uni1672 ; G 1899 -U 5747 ; WX 1375 ; N uni1673 ; G 1900 -U 5748 ; WX 1375 ; N uni1674 ; G 1901 -U 5749 ; WX 1632 ; N uni1675 ; G 1902 -U 5750 ; WX 1632 ; N uni1676 ; G 1903 -U 7424 ; WX 592 ; N uni1D00 ; G 1904 -U 7425 ; WX 717 ; N uni1D01 ; G 1905 -U 7426 ; WX 982 ; N uni1D02 ; G 1906 -U 7427 ; WX 586 ; N uni1D03 ; G 1907 -U 7428 ; WX 550 ; N uni1D04 ; G 1908 -U 7429 ; WX 605 ; N uni1D05 ; G 1909 -U 7430 ; WX 605 ; N uni1D06 ; G 1910 -U 7431 ; WX 491 ; N uni1D07 ; G 1911 -U 7432 ; WX 541 ; N uni1D08 ; G 1912 -U 7433 ; WX 278 ; N uni1D09 ; G 1913 -U 7434 ; WX 395 ; N uni1D0A ; G 1914 -U 7435 ; WX 579 ; N uni1D0B ; G 1915 -U 7436 ; WX 583 ; N uni1D0C ; G 1916 -U 7437 ; WX 754 ; N uni1D0D ; G 1917 -U 7438 ; WX 650 ; N uni1D0E ; G 1918 -U 7439 ; WX 612 ; N uni1D0F ; G 1919 -U 7440 ; WX 550 ; N uni1D10 ; G 1920 -U 7441 ; WX 684 ; N uni1D11 ; G 1921 -U 7442 ; WX 684 ; N uni1D12 ; G 1922 -U 7443 ; WX 684 ; N uni1D13 ; G 1923 -U 7444 ; WX 1023 ; N uni1D14 ; G 1924 -U 7446 ; WX 612 ; N uni1D16 ; G 1925 -U 7447 ; WX 612 ; N uni1D17 ; G 1926 -U 7448 ; WX 524 ; N uni1D18 ; G 1927 -U 7449 ; WX 602 ; N uni1D19 ; G 1928 -U 7450 ; WX 602 ; N uni1D1A ; G 1929 -U 7451 ; WX 583 ; N uni1D1B ; G 1930 -U 7452 ; WX 574 ; N uni1D1C ; G 1931 -U 7453 ; WX 737 ; N uni1D1D ; G 1932 -U 7454 ; WX 948 ; N uni1D1E ; G 1933 -U 7455 ; WX 638 ; N uni1D1F ; G 1934 -U 7456 ; WX 592 ; N uni1D20 ; G 1935 -U 7457 ; WX 818 ; N uni1D21 ; G 1936 -U 7458 ; WX 525 ; N uni1D22 ; G 1937 -U 7459 ; WX 526 ; N uni1D23 ; G 1938 -U 7462 ; WX 583 ; N uni1D26 ; G 1939 -U 7463 ; WX 592 ; N uni1D27 ; G 1940 -U 7464 ; WX 564 ; N uni1D28 ; G 1941 -U 7465 ; WX 524 ; N uni1D29 ; G 1942 -U 7466 ; WX 590 ; N uni1D2A ; G 1943 -U 7467 ; WX 639 ; N uni1D2B ; G 1944 -U 7468 ; WX 431 ; N uni1D2C ; G 1945 -U 7469 ; WX 613 ; N uni1D2D ; G 1946 -U 7470 ; WX 432 ; N uni1D2E ; G 1947 -U 7472 ; WX 485 ; N uni1D30 ; G 1948 -U 7473 ; WX 398 ; N uni1D31 ; G 1949 -U 7474 ; WX 398 ; N uni1D32 ; G 1950 -U 7475 ; WX 488 ; N uni1D33 ; G 1951 -U 7476 ; WX 474 ; N uni1D34 ; G 1952 -U 7477 ; WX 186 ; N uni1D35 ; G 1953 -U 7478 ; WX 186 ; N uni1D36 ; G 1954 -U 7479 ; WX 413 ; N uni1D37 ; G 1955 -U 7480 ; WX 351 ; N uni1D38 ; G 1956 -U 7481 ; WX 543 ; N uni1D39 ; G 1957 -U 7482 ; WX 471 ; N uni1D3A ; G 1958 -U 7483 ; WX 471 ; N uni1D3B ; G 1959 -U 7484 ; WX 496 ; N uni1D3C ; G 1960 -U 7485 ; WX 439 ; N uni1D3D ; G 1961 -U 7486 ; WX 380 ; N uni1D3E ; G 1962 -U 7487 ; WX 438 ; N uni1D3F ; G 1963 -U 7488 ; WX 385 ; N uni1D40 ; G 1964 -U 7489 ; WX 461 ; N uni1D41 ; G 1965 -U 7490 ; WX 623 ; N uni1D42 ; G 1966 -U 7491 ; WX 392 ; N uni1D43 ; G 1967 -U 7492 ; WX 392 ; N uni1D44 ; G 1968 -U 7493 ; WX 405 ; N uni1D45 ; G 1969 -U 7494 ; WX 648 ; N uni1D46 ; G 1970 -U 7495 ; WX 428 ; N uni1D47 ; G 1971 -U 7496 ; WX 405 ; N uni1D48 ; G 1972 -U 7497 ; WX 417 ; N uni1D49 ; G 1973 -U 7498 ; WX 417 ; N uni1D4A ; G 1974 -U 7499 ; WX 360 ; N uni1D4B ; G 1975 -U 7500 ; WX 359 ; N uni1D4C ; G 1976 -U 7501 ; WX 405 ; N uni1D4D ; G 1977 -U 7502 ; WX 179 ; N uni1D4E ; G 1978 -U 7503 ; WX 426 ; N uni1D4F ; G 1979 -U 7504 ; WX 623 ; N uni1D50 ; G 1980 -U 7505 ; WX 409 ; N uni1D51 ; G 1981 -U 7506 ; WX 414 ; N uni1D52 ; G 1982 -U 7507 ; WX 370 ; N uni1D53 ; G 1983 -U 7508 ; WX 414 ; N uni1D54 ; G 1984 -U 7509 ; WX 414 ; N uni1D55 ; G 1985 -U 7510 ; WX 428 ; N uni1D56 ; G 1986 -U 7511 ; WX 295 ; N uni1D57 ; G 1987 -U 7512 ; WX 405 ; N uni1D58 ; G 1988 -U 7513 ; WX 470 ; N uni1D59 ; G 1989 -U 7514 ; WX 623 ; N uni1D5A ; G 1990 -U 7515 ; WX 417 ; N uni1D5B ; G 1991 -U 7517 ; WX 402 ; N uni1D5D ; G 1992 -U 7518 ; WX 373 ; N uni1D5E ; G 1993 -U 7519 ; WX 385 ; N uni1D5F ; G 1994 -U 7520 ; WX 416 ; N uni1D60 ; G 1995 -U 7521 ; WX 364 ; N uni1D61 ; G 1996 -U 7522 ; WX 179 ; N uni1D62 ; G 1997 -U 7523 ; WX 259 ; N uni1D63 ; G 1998 -U 7524 ; WX 405 ; N uni1D64 ; G 1999 -U 7525 ; WX 417 ; N uni1D65 ; G 2000 -U 7526 ; WX 402 ; N uni1D66 ; G 2001 -U 7527 ; WX 373 ; N uni1D67 ; G 2002 -U 7528 ; WX 412 ; N uni1D68 ; G 2003 -U 7529 ; WX 416 ; N uni1D69 ; G 2004 -U 7530 ; WX 364 ; N uni1D6A ; G 2005 -U 7543 ; WX 635 ; N uni1D77 ; G 2006 -U 7544 ; WX 474 ; N uni1D78 ; G 2007 -U 7547 ; WX 372 ; N uni1D7B ; G 2008 -U 7549 ; WX 667 ; N uni1D7D ; G 2009 -U 7557 ; WX 278 ; N uni1D85 ; G 2010 -U 7579 ; WX 405 ; N uni1D9B ; G 2011 -U 7580 ; WX 370 ; N uni1D9C ; G 2012 -U 7581 ; WX 370 ; N uni1D9D ; G 2013 -U 7582 ; WX 414 ; N uni1D9E ; G 2014 -U 7583 ; WX 360 ; N uni1D9F ; G 2015 -U 7584 ; WX 296 ; N uni1DA0 ; G 2016 -U 7585 ; WX 233 ; N uni1DA1 ; G 2017 -U 7586 ; WX 405 ; N uni1DA2 ; G 2018 -U 7587 ; WX 405 ; N uni1DA3 ; G 2019 -U 7588 ; WX 261 ; N uni1DA4 ; G 2020 -U 7589 ; WX 250 ; N uni1DA5 ; G 2021 -U 7590 ; WX 261 ; N uni1DA6 ; G 2022 -U 7591 ; WX 261 ; N uni1DA7 ; G 2023 -U 7592 ; WX 234 ; N uni1DA8 ; G 2024 -U 7593 ; WX 250 ; N uni1DA9 ; G 2025 -U 7594 ; WX 235 ; N uni1DAA ; G 2026 -U 7595 ; WX 376 ; N uni1DAB ; G 2027 -U 7596 ; WX 623 ; N uni1DAC ; G 2028 -U 7597 ; WX 623 ; N uni1DAD ; G 2029 -U 7598 ; WX 411 ; N uni1DAE ; G 2030 -U 7599 ; WX 479 ; N uni1DAF ; G 2031 -U 7600 ; WX 409 ; N uni1DB0 ; G 2032 -U 7601 ; WX 414 ; N uni1DB1 ; G 2033 -U 7602 ; WX 414 ; N uni1DB2 ; G 2034 -U 7603 ; WX 360 ; N uni1DB3 ; G 2035 -U 7604 ; WX 287 ; N uni1DB4 ; G 2036 -U 7605 ; WX 295 ; N uni1DB5 ; G 2037 -U 7606 ; WX 508 ; N uni1DB6 ; G 2038 -U 7607 ; WX 418 ; N uni1DB7 ; G 2039 -U 7608 ; WX 361 ; N uni1DB8 ; G 2040 -U 7609 ; WX 406 ; N uni1DB9 ; G 2041 -U 7610 ; WX 417 ; N uni1DBA ; G 2042 -U 7611 ; WX 366 ; N uni1DBB ; G 2043 -U 7612 ; WX 437 ; N uni1DBC ; G 2044 -U 7613 ; WX 366 ; N uni1DBD ; G 2045 -U 7614 ; WX 392 ; N uni1DBE ; G 2046 -U 7615 ; WX 414 ; N uni1DBF ; G 2047 -U 7620 ; WX 0 ; N uni1DC4 ; G 2048 -U 7621 ; WX 0 ; N uni1DC5 ; G 2049 -U 7622 ; WX 0 ; N uni1DC6 ; G 2050 -U 7623 ; WX 0 ; N uni1DC7 ; G 2051 -U 7624 ; WX 0 ; N uni1DC8 ; G 2052 -U 7625 ; WX 0 ; N uni1DC9 ; G 2053 -U 7680 ; WX 684 ; N uni1E00 ; G 2054 -U 7681 ; WX 613 ; N uni1E01 ; G 2055 -U 7682 ; WX 686 ; N uni1E02 ; G 2056 -U 7683 ; WX 635 ; N uni1E03 ; G 2057 -U 7684 ; WX 686 ; N uni1E04 ; G 2058 -U 7685 ; WX 635 ; N uni1E05 ; G 2059 -U 7686 ; WX 686 ; N uni1E06 ; G 2060 -U 7687 ; WX 635 ; N uni1E07 ; G 2061 -U 7688 ; WX 698 ; N uni1E08 ; G 2062 -U 7689 ; WX 550 ; N uni1E09 ; G 2063 -U 7690 ; WX 770 ; N uni1E0A ; G 2064 -U 7691 ; WX 635 ; N uni1E0B ; G 2065 -U 7692 ; WX 770 ; N uni1E0C ; G 2066 -U 7693 ; WX 635 ; N uni1E0D ; G 2067 -U 7694 ; WX 770 ; N uni1E0E ; G 2068 -U 7695 ; WX 635 ; N uni1E0F ; G 2069 -U 7696 ; WX 770 ; N uni1E10 ; G 2070 -U 7697 ; WX 635 ; N uni1E11 ; G 2071 -U 7698 ; WX 770 ; N uni1E12 ; G 2072 -U 7699 ; WX 635 ; N uni1E13 ; G 2073 -U 7700 ; WX 632 ; N uni1E14 ; G 2074 -U 7701 ; WX 615 ; N uni1E15 ; G 2075 -U 7702 ; WX 632 ; N uni1E16 ; G 2076 -U 7703 ; WX 615 ; N uni1E17 ; G 2077 -U 7704 ; WX 632 ; N uni1E18 ; G 2078 -U 7705 ; WX 615 ; N uni1E19 ; G 2079 -U 7706 ; WX 632 ; N uni1E1A ; G 2080 -U 7707 ; WX 615 ; N uni1E1B ; G 2081 -U 7708 ; WX 632 ; N uni1E1C ; G 2082 -U 7709 ; WX 615 ; N uni1E1D ; G 2083 -U 7710 ; WX 575 ; N uni1E1E ; G 2084 -U 7711 ; WX 352 ; N uni1E1F ; G 2085 -U 7712 ; WX 775 ; N uni1E20 ; G 2086 -U 7713 ; WX 635 ; N uni1E21 ; G 2087 -U 7714 ; WX 752 ; N uni1E22 ; G 2088 -U 7715 ; WX 634 ; N uni1E23 ; G 2089 -U 7716 ; WX 752 ; N uni1E24 ; G 2090 -U 7717 ; WX 634 ; N uni1E25 ; G 2091 -U 7718 ; WX 752 ; N uni1E26 ; G 2092 -U 7719 ; WX 634 ; N uni1E27 ; G 2093 -U 7720 ; WX 752 ; N uni1E28 ; G 2094 -U 7721 ; WX 634 ; N uni1E29 ; G 2095 -U 7722 ; WX 752 ; N uni1E2A ; G 2096 -U 7723 ; WX 634 ; N uni1E2B ; G 2097 -U 7724 ; WX 295 ; N uni1E2C ; G 2098 -U 7725 ; WX 278 ; N uni1E2D ; G 2099 -U 7726 ; WX 295 ; N uni1E2E ; G 2100 -U 7727 ; WX 278 ; N uni1E2F ; G 2101 -U 7728 ; WX 656 ; N uni1E30 ; G 2102 -U 7729 ; WX 579 ; N uni1E31 ; G 2103 -U 7730 ; WX 656 ; N uni1E32 ; G 2104 -U 7731 ; WX 579 ; N uni1E33 ; G 2105 -U 7732 ; WX 656 ; N uni1E34 ; G 2106 -U 7733 ; WX 579 ; N uni1E35 ; G 2107 -U 7734 ; WX 557 ; N uni1E36 ; G 2108 -U 7735 ; WX 278 ; N uni1E37 ; G 2109 -U 7736 ; WX 557 ; N uni1E38 ; G 2110 -U 7737 ; WX 278 ; N uni1E39 ; G 2111 -U 7738 ; WX 557 ; N uni1E3A ; G 2112 -U 7739 ; WX 278 ; N uni1E3B ; G 2113 -U 7740 ; WX 557 ; N uni1E3C ; G 2114 -U 7741 ; WX 278 ; N uni1E3D ; G 2115 -U 7742 ; WX 863 ; N uni1E3E ; G 2116 -U 7743 ; WX 974 ; N uni1E3F ; G 2117 -U 7744 ; WX 863 ; N uni1E40 ; G 2118 -U 7745 ; WX 974 ; N uni1E41 ; G 2119 -U 7746 ; WX 863 ; N uni1E42 ; G 2120 -U 7747 ; WX 974 ; N uni1E43 ; G 2121 -U 7748 ; WX 748 ; N uni1E44 ; G 2122 -U 7749 ; WX 634 ; N uni1E45 ; G 2123 -U 7750 ; WX 748 ; N uni1E46 ; G 2124 -U 7751 ; WX 634 ; N uni1E47 ; G 2125 -U 7752 ; WX 748 ; N uni1E48 ; G 2126 -U 7753 ; WX 634 ; N uni1E49 ; G 2127 -U 7754 ; WX 748 ; N uni1E4A ; G 2128 -U 7755 ; WX 634 ; N uni1E4B ; G 2129 -U 7756 ; WX 787 ; N uni1E4C ; G 2130 -U 7757 ; WX 612 ; N uni1E4D ; G 2131 -U 7758 ; WX 787 ; N uni1E4E ; G 2132 -U 7759 ; WX 612 ; N uni1E4F ; G 2133 -U 7760 ; WX 787 ; N uni1E50 ; G 2134 -U 7761 ; WX 612 ; N uni1E51 ; G 2135 -U 7762 ; WX 787 ; N uni1E52 ; G 2136 -U 7763 ; WX 612 ; N uni1E53 ; G 2137 -U 7764 ; WX 603 ; N uni1E54 ; G 2138 -U 7765 ; WX 635 ; N uni1E55 ; G 2139 -U 7766 ; WX 603 ; N uni1E56 ; G 2140 -U 7767 ; WX 635 ; N uni1E57 ; G 2141 -U 7768 ; WX 695 ; N uni1E58 ; G 2142 -U 7769 ; WX 411 ; N uni1E59 ; G 2143 -U 7770 ; WX 695 ; N uni1E5A ; G 2144 -U 7771 ; WX 411 ; N uni1E5B ; G 2145 -U 7772 ; WX 695 ; N uni1E5C ; G 2146 -U 7773 ; WX 411 ; N uni1E5D ; G 2147 -U 7774 ; WX 695 ; N uni1E5E ; G 2148 -U 7775 ; WX 411 ; N uni1E5F ; G 2149 -U 7776 ; WX 635 ; N uni1E60 ; G 2150 -U 7777 ; WX 521 ; N uni1E61 ; G 2151 -U 7778 ; WX 635 ; N uni1E62 ; G 2152 -U 7779 ; WX 521 ; N uni1E63 ; G 2153 -U 7780 ; WX 635 ; N uni1E64 ; G 2154 -U 7781 ; WX 521 ; N uni1E65 ; G 2155 -U 7782 ; WX 635 ; N uni1E66 ; G 2156 -U 7783 ; WX 521 ; N uni1E67 ; G 2157 -U 7784 ; WX 635 ; N uni1E68 ; G 2158 -U 7785 ; WX 521 ; N uni1E69 ; G 2159 -U 7786 ; WX 611 ; N uni1E6A ; G 2160 -U 7787 ; WX 392 ; N uni1E6B ; G 2161 -U 7788 ; WX 611 ; N uni1E6C ; G 2162 -U 7789 ; WX 392 ; N uni1E6D ; G 2163 -U 7790 ; WX 611 ; N uni1E6E ; G 2164 -U 7791 ; WX 392 ; N uni1E6F ; G 2165 -U 7792 ; WX 611 ; N uni1E70 ; G 2166 -U 7793 ; WX 392 ; N uni1E71 ; G 2167 -U 7794 ; WX 732 ; N uni1E72 ; G 2168 -U 7795 ; WX 634 ; N uni1E73 ; G 2169 -U 7796 ; WX 732 ; N uni1E74 ; G 2170 -U 7797 ; WX 634 ; N uni1E75 ; G 2171 -U 7798 ; WX 732 ; N uni1E76 ; G 2172 -U 7799 ; WX 634 ; N uni1E77 ; G 2173 -U 7800 ; WX 732 ; N uni1E78 ; G 2174 -U 7801 ; WX 634 ; N uni1E79 ; G 2175 -U 7802 ; WX 732 ; N uni1E7A ; G 2176 -U 7803 ; WX 634 ; N uni1E7B ; G 2177 -U 7804 ; WX 684 ; N uni1E7C ; G 2178 -U 7805 ; WX 592 ; N uni1E7D ; G 2179 -U 7806 ; WX 684 ; N uni1E7E ; G 2180 -U 7807 ; WX 592 ; N uni1E7F ; G 2181 -U 7808 ; WX 989 ; N Wgrave ; G 2182 -U 7809 ; WX 818 ; N wgrave ; G 2183 -U 7810 ; WX 989 ; N Wacute ; G 2184 -U 7811 ; WX 818 ; N wacute ; G 2185 -U 7812 ; WX 989 ; N Wdieresis ; G 2186 -U 7813 ; WX 818 ; N wdieresis ; G 2187 -U 7814 ; WX 989 ; N uni1E86 ; G 2188 -U 7815 ; WX 818 ; N uni1E87 ; G 2189 -U 7816 ; WX 989 ; N uni1E88 ; G 2190 -U 7817 ; WX 818 ; N uni1E89 ; G 2191 -U 7818 ; WX 685 ; N uni1E8A ; G 2192 -U 7819 ; WX 592 ; N uni1E8B ; G 2193 -U 7820 ; WX 685 ; N uni1E8C ; G 2194 -U 7821 ; WX 592 ; N uni1E8D ; G 2195 -U 7822 ; WX 611 ; N uni1E8E ; G 2196 -U 7823 ; WX 592 ; N uni1E8F ; G 2197 -U 7824 ; WX 685 ; N uni1E90 ; G 2198 -U 7825 ; WX 525 ; N uni1E91 ; G 2199 -U 7826 ; WX 685 ; N uni1E92 ; G 2200 -U 7827 ; WX 525 ; N uni1E93 ; G 2201 -U 7828 ; WX 685 ; N uni1E94 ; G 2202 -U 7829 ; WX 525 ; N uni1E95 ; G 2203 -U 7830 ; WX 634 ; N uni1E96 ; G 2204 -U 7831 ; WX 392 ; N uni1E97 ; G 2205 -U 7832 ; WX 818 ; N uni1E98 ; G 2206 -U 7833 ; WX 592 ; N uni1E99 ; G 2207 -U 7834 ; WX 613 ; N uni1E9A ; G 2208 -U 7835 ; WX 352 ; N uni1E9B ; G 2209 -U 7836 ; WX 352 ; N uni1E9C ; G 2210 -U 7837 ; WX 352 ; N uni1E9D ; G 2211 -U 7838 ; WX 769 ; N uni1E9E ; G 2212 -U 7839 ; WX 612 ; N uni1E9F ; G 2213 -U 7840 ; WX 684 ; N uni1EA0 ; G 2214 -U 7841 ; WX 613 ; N uni1EA1 ; G 2215 -U 7842 ; WX 684 ; N uni1EA2 ; G 2216 -U 7843 ; WX 613 ; N uni1EA3 ; G 2217 -U 7844 ; WX 684 ; N uni1EA4 ; G 2218 -U 7845 ; WX 613 ; N uni1EA5 ; G 2219 -U 7846 ; WX 684 ; N uni1EA6 ; G 2220 -U 7847 ; WX 613 ; N uni1EA7 ; G 2221 -U 7848 ; WX 684 ; N uni1EA8 ; G 2222 -U 7849 ; WX 613 ; N uni1EA9 ; G 2223 -U 7850 ; WX 684 ; N uni1EAA ; G 2224 -U 7851 ; WX 613 ; N uni1EAB ; G 2225 -U 7852 ; WX 684 ; N uni1EAC ; G 2226 -U 7853 ; WX 613 ; N uni1EAD ; G 2227 -U 7854 ; WX 684 ; N uni1EAE ; G 2228 -U 7855 ; WX 613 ; N uni1EAF ; G 2229 -U 7856 ; WX 684 ; N uni1EB0 ; G 2230 -U 7857 ; WX 613 ; N uni1EB1 ; G 2231 -U 7858 ; WX 684 ; N uni1EB2 ; G 2232 -U 7859 ; WX 613 ; N uni1EB3 ; G 2233 -U 7860 ; WX 684 ; N uni1EB4 ; G 2234 -U 7861 ; WX 613 ; N uni1EB5 ; G 2235 -U 7862 ; WX 684 ; N uni1EB6 ; G 2236 -U 7863 ; WX 613 ; N uni1EB7 ; G 2237 -U 7864 ; WX 632 ; N uni1EB8 ; G 2238 -U 7865 ; WX 615 ; N uni1EB9 ; G 2239 -U 7866 ; WX 632 ; N uni1EBA ; G 2240 -U 7867 ; WX 615 ; N uni1EBB ; G 2241 -U 7868 ; WX 632 ; N uni1EBC ; G 2242 -U 7869 ; WX 615 ; N uni1EBD ; G 2243 -U 7870 ; WX 632 ; N uni1EBE ; G 2244 -U 7871 ; WX 615 ; N uni1EBF ; G 2245 -U 7872 ; WX 632 ; N uni1EC0 ; G 2246 -U 7873 ; WX 615 ; N uni1EC1 ; G 2247 -U 7874 ; WX 632 ; N uni1EC2 ; G 2248 -U 7875 ; WX 615 ; N uni1EC3 ; G 2249 -U 7876 ; WX 632 ; N uni1EC4 ; G 2250 -U 7877 ; WX 615 ; N uni1EC5 ; G 2251 -U 7878 ; WX 632 ; N uni1EC6 ; G 2252 -U 7879 ; WX 615 ; N uni1EC7 ; G 2253 -U 7880 ; WX 295 ; N uni1EC8 ; G 2254 -U 7881 ; WX 278 ; N uni1EC9 ; G 2255 -U 7882 ; WX 295 ; N uni1ECA ; G 2256 -U 7883 ; WX 278 ; N uni1ECB ; G 2257 -U 7884 ; WX 787 ; N uni1ECC ; G 2258 -U 7885 ; WX 612 ; N uni1ECD ; G 2259 -U 7886 ; WX 787 ; N uni1ECE ; G 2260 -U 7887 ; WX 612 ; N uni1ECF ; G 2261 -U 7888 ; WX 787 ; N uni1ED0 ; G 2262 -U 7889 ; WX 612 ; N uni1ED1 ; G 2263 -U 7890 ; WX 787 ; N uni1ED2 ; G 2264 -U 7891 ; WX 612 ; N uni1ED3 ; G 2265 -U 7892 ; WX 787 ; N uni1ED4 ; G 2266 -U 7893 ; WX 612 ; N uni1ED5 ; G 2267 -U 7894 ; WX 787 ; N uni1ED6 ; G 2268 -U 7895 ; WX 612 ; N uni1ED7 ; G 2269 -U 7896 ; WX 787 ; N uni1ED8 ; G 2270 -U 7897 ; WX 612 ; N uni1ED9 ; G 2271 -U 7898 ; WX 913 ; N uni1EDA ; G 2272 -U 7899 ; WX 612 ; N uni1EDB ; G 2273 -U 7900 ; WX 913 ; N uni1EDC ; G 2274 -U 7901 ; WX 612 ; N uni1EDD ; G 2275 -U 7902 ; WX 913 ; N uni1EDE ; G 2276 -U 7903 ; WX 612 ; N uni1EDF ; G 2277 -U 7904 ; WX 913 ; N uni1EE0 ; G 2278 -U 7905 ; WX 612 ; N uni1EE1 ; G 2279 -U 7906 ; WX 913 ; N uni1EE2 ; G 2280 -U 7907 ; WX 612 ; N uni1EE3 ; G 2281 -U 7908 ; WX 732 ; N uni1EE4 ; G 2282 -U 7909 ; WX 634 ; N uni1EE5 ; G 2283 -U 7910 ; WX 732 ; N uni1EE6 ; G 2284 -U 7911 ; WX 634 ; N uni1EE7 ; G 2285 -U 7912 ; WX 838 ; N uni1EE8 ; G 2286 -U 7913 ; WX 634 ; N uni1EE9 ; G 2287 -U 7914 ; WX 838 ; N uni1EEA ; G 2288 -U 7915 ; WX 634 ; N uni1EEB ; G 2289 -U 7916 ; WX 838 ; N uni1EEC ; G 2290 -U 7917 ; WX 634 ; N uni1EED ; G 2291 -U 7918 ; WX 838 ; N uni1EEE ; G 2292 -U 7919 ; WX 634 ; N uni1EEF ; G 2293 -U 7920 ; WX 838 ; N uni1EF0 ; G 2294 -U 7921 ; WX 634 ; N uni1EF1 ; G 2295 -U 7922 ; WX 611 ; N Ygrave ; G 2296 -U 7923 ; WX 592 ; N ygrave ; G 2297 -U 7924 ; WX 611 ; N uni1EF4 ; G 2298 -U 7925 ; WX 592 ; N uni1EF5 ; G 2299 -U 7926 ; WX 611 ; N uni1EF6 ; G 2300 -U 7927 ; WX 592 ; N uni1EF7 ; G 2301 -U 7928 ; WX 611 ; N uni1EF8 ; G 2302 -U 7929 ; WX 592 ; N uni1EF9 ; G 2303 -U 7930 ; WX 769 ; N uni1EFA ; G 2304 -U 7931 ; WX 477 ; N uni1EFB ; G 2305 -U 7936 ; WX 659 ; N uni1F00 ; G 2306 -U 7937 ; WX 659 ; N uni1F01 ; G 2307 -U 7938 ; WX 659 ; N uni1F02 ; G 2308 -U 7939 ; WX 659 ; N uni1F03 ; G 2309 -U 7940 ; WX 659 ; N uni1F04 ; G 2310 -U 7941 ; WX 659 ; N uni1F05 ; G 2311 -U 7942 ; WX 659 ; N uni1F06 ; G 2312 -U 7943 ; WX 659 ; N uni1F07 ; G 2313 -U 7944 ; WX 684 ; N uni1F08 ; G 2314 -U 7945 ; WX 684 ; N uni1F09 ; G 2315 -U 7946 ; WX 877 ; N uni1F0A ; G 2316 -U 7947 ; WX 877 ; N uni1F0B ; G 2317 -U 7948 ; WX 769 ; N uni1F0C ; G 2318 -U 7949 ; WX 801 ; N uni1F0D ; G 2319 -U 7950 ; WX 708 ; N uni1F0E ; G 2320 -U 7951 ; WX 743 ; N uni1F0F ; G 2321 -U 7952 ; WX 541 ; N uni1F10 ; G 2322 -U 7953 ; WX 541 ; N uni1F11 ; G 2323 -U 7954 ; WX 541 ; N uni1F12 ; G 2324 -U 7955 ; WX 541 ; N uni1F13 ; G 2325 -U 7956 ; WX 541 ; N uni1F14 ; G 2326 -U 7957 ; WX 541 ; N uni1F15 ; G 2327 -U 7960 ; WX 711 ; N uni1F18 ; G 2328 -U 7961 ; WX 711 ; N uni1F19 ; G 2329 -U 7962 ; WX 966 ; N uni1F1A ; G 2330 -U 7963 ; WX 975 ; N uni1F1B ; G 2331 -U 7964 ; WX 898 ; N uni1F1C ; G 2332 -U 7965 ; WX 928 ; N uni1F1D ; G 2333 -U 7968 ; WX 634 ; N uni1F20 ; G 2334 -U 7969 ; WX 634 ; N uni1F21 ; G 2335 -U 7970 ; WX 634 ; N uni1F22 ; G 2336 -U 7971 ; WX 634 ; N uni1F23 ; G 2337 -U 7972 ; WX 634 ; N uni1F24 ; G 2338 -U 7973 ; WX 634 ; N uni1F25 ; G 2339 -U 7974 ; WX 634 ; N uni1F26 ; G 2340 -U 7975 ; WX 634 ; N uni1F27 ; G 2341 -U 7976 ; WX 837 ; N uni1F28 ; G 2342 -U 7977 ; WX 835 ; N uni1F29 ; G 2343 -U 7978 ; WX 1086 ; N uni1F2A ; G 2344 -U 7979 ; WX 1089 ; N uni1F2B ; G 2345 -U 7980 ; WX 1027 ; N uni1F2C ; G 2346 -U 7981 ; WX 1051 ; N uni1F2D ; G 2347 -U 7982 ; WX 934 ; N uni1F2E ; G 2348 -U 7983 ; WX 947 ; N uni1F2F ; G 2349 -U 7984 ; WX 338 ; N uni1F30 ; G 2350 -U 7985 ; WX 338 ; N uni1F31 ; G 2351 -U 7986 ; WX 338 ; N uni1F32 ; G 2352 -U 7987 ; WX 338 ; N uni1F33 ; G 2353 -U 7988 ; WX 338 ; N uni1F34 ; G 2354 -U 7989 ; WX 338 ; N uni1F35 ; G 2355 -U 7990 ; WX 338 ; N uni1F36 ; G 2356 -U 7991 ; WX 338 ; N uni1F37 ; G 2357 -U 7992 ; WX 380 ; N uni1F38 ; G 2358 -U 7993 ; WX 374 ; N uni1F39 ; G 2359 -U 7994 ; WX 635 ; N uni1F3A ; G 2360 -U 7995 ; WX 635 ; N uni1F3B ; G 2361 -U 7996 ; WX 570 ; N uni1F3C ; G 2362 -U 7997 ; WX 600 ; N uni1F3D ; G 2363 -U 7998 ; WX 489 ; N uni1F3E ; G 2364 -U 7999 ; WX 493 ; N uni1F3F ; G 2365 -U 8000 ; WX 612 ; N uni1F40 ; G 2366 -U 8001 ; WX 612 ; N uni1F41 ; G 2367 -U 8002 ; WX 612 ; N uni1F42 ; G 2368 -U 8003 ; WX 612 ; N uni1F43 ; G 2369 -U 8004 ; WX 612 ; N uni1F44 ; G 2370 -U 8005 ; WX 612 ; N uni1F45 ; G 2371 -U 8008 ; WX 804 ; N uni1F48 ; G 2372 -U 8009 ; WX 848 ; N uni1F49 ; G 2373 -U 8010 ; WX 1095 ; N uni1F4A ; G 2374 -U 8011 ; WX 1100 ; N uni1F4B ; G 2375 -U 8012 ; WX 938 ; N uni1F4C ; G 2376 -U 8013 ; WX 970 ; N uni1F4D ; G 2377 -U 8016 ; WX 579 ; N uni1F50 ; G 2378 -U 8017 ; WX 579 ; N uni1F51 ; G 2379 -U 8018 ; WX 579 ; N uni1F52 ; G 2380 -U 8019 ; WX 579 ; N uni1F53 ; G 2381 -U 8020 ; WX 579 ; N uni1F54 ; G 2382 -U 8021 ; WX 579 ; N uni1F55 ; G 2383 -U 8022 ; WX 579 ; N uni1F56 ; G 2384 -U 8023 ; WX 579 ; N uni1F57 ; G 2385 -U 8025 ; WX 784 ; N uni1F59 ; G 2386 -U 8027 ; WX 998 ; N uni1F5B ; G 2387 -U 8029 ; WX 1012 ; N uni1F5D ; G 2388 -U 8031 ; WX 897 ; N uni1F5F ; G 2389 -U 8032 ; WX 837 ; N uni1F60 ; G 2390 -U 8033 ; WX 837 ; N uni1F61 ; G 2391 -U 8034 ; WX 837 ; N uni1F62 ; G 2392 -U 8035 ; WX 837 ; N uni1F63 ; G 2393 -U 8036 ; WX 837 ; N uni1F64 ; G 2394 -U 8037 ; WX 837 ; N uni1F65 ; G 2395 -U 8038 ; WX 837 ; N uni1F66 ; G 2396 -U 8039 ; WX 837 ; N uni1F67 ; G 2397 -U 8040 ; WX 802 ; N uni1F68 ; G 2398 -U 8041 ; WX 843 ; N uni1F69 ; G 2399 -U 8042 ; WX 1089 ; N uni1F6A ; G 2400 -U 8043 ; WX 1095 ; N uni1F6B ; G 2401 -U 8044 ; WX 946 ; N uni1F6C ; G 2402 -U 8045 ; WX 972 ; N uni1F6D ; G 2403 -U 8046 ; WX 921 ; N uni1F6E ; G 2404 -U 8047 ; WX 952 ; N uni1F6F ; G 2405 -U 8048 ; WX 659 ; N uni1F70 ; G 2406 -U 8049 ; WX 659 ; N uni1F71 ; G 2407 -U 8050 ; WX 541 ; N uni1F72 ; G 2408 -U 8051 ; WX 548 ; N uni1F73 ; G 2409 -U 8052 ; WX 634 ; N uni1F74 ; G 2410 -U 8053 ; WX 654 ; N uni1F75 ; G 2411 -U 8054 ; WX 338 ; N uni1F76 ; G 2412 -U 8055 ; WX 338 ; N uni1F77 ; G 2413 -U 8056 ; WX 612 ; N uni1F78 ; G 2414 -U 8057 ; WX 612 ; N uni1F79 ; G 2415 -U 8058 ; WX 579 ; N uni1F7A ; G 2416 -U 8059 ; WX 579 ; N uni1F7B ; G 2417 -U 8060 ; WX 837 ; N uni1F7C ; G 2418 -U 8061 ; WX 837 ; N uni1F7D ; G 2419 -U 8064 ; WX 659 ; N uni1F80 ; G 2420 -U 8065 ; WX 659 ; N uni1F81 ; G 2421 -U 8066 ; WX 659 ; N uni1F82 ; G 2422 -U 8067 ; WX 659 ; N uni1F83 ; G 2423 -U 8068 ; WX 659 ; N uni1F84 ; G 2424 -U 8069 ; WX 659 ; N uni1F85 ; G 2425 -U 8070 ; WX 659 ; N uni1F86 ; G 2426 -U 8071 ; WX 659 ; N uni1F87 ; G 2427 -U 8072 ; WX 684 ; N uni1F88 ; G 2428 -U 8073 ; WX 684 ; N uni1F89 ; G 2429 -U 8074 ; WX 877 ; N uni1F8A ; G 2430 -U 8075 ; WX 877 ; N uni1F8B ; G 2431 -U 8076 ; WX 769 ; N uni1F8C ; G 2432 -U 8077 ; WX 801 ; N uni1F8D ; G 2433 -U 8078 ; WX 708 ; N uni1F8E ; G 2434 -U 8079 ; WX 743 ; N uni1F8F ; G 2435 -U 8080 ; WX 634 ; N uni1F90 ; G 2436 -U 8081 ; WX 634 ; N uni1F91 ; G 2437 -U 8082 ; WX 634 ; N uni1F92 ; G 2438 -U 8083 ; WX 634 ; N uni1F93 ; G 2439 -U 8084 ; WX 634 ; N uni1F94 ; G 2440 -U 8085 ; WX 634 ; N uni1F95 ; G 2441 -U 8086 ; WX 634 ; N uni1F96 ; G 2442 -U 8087 ; WX 634 ; N uni1F97 ; G 2443 -U 8088 ; WX 837 ; N uni1F98 ; G 2444 -U 8089 ; WX 835 ; N uni1F99 ; G 2445 -U 8090 ; WX 1086 ; N uni1F9A ; G 2446 -U 8091 ; WX 1089 ; N uni1F9B ; G 2447 -U 8092 ; WX 1027 ; N uni1F9C ; G 2448 -U 8093 ; WX 1051 ; N uni1F9D ; G 2449 -U 8094 ; WX 934 ; N uni1F9E ; G 2450 -U 8095 ; WX 947 ; N uni1F9F ; G 2451 -U 8096 ; WX 837 ; N uni1FA0 ; G 2452 -U 8097 ; WX 837 ; N uni1FA1 ; G 2453 -U 8098 ; WX 837 ; N uni1FA2 ; G 2454 -U 8099 ; WX 837 ; N uni1FA3 ; G 2455 -U 8100 ; WX 837 ; N uni1FA4 ; G 2456 -U 8101 ; WX 837 ; N uni1FA5 ; G 2457 -U 8102 ; WX 837 ; N uni1FA6 ; G 2458 -U 8103 ; WX 837 ; N uni1FA7 ; G 2459 -U 8104 ; WX 802 ; N uni1FA8 ; G 2460 -U 8105 ; WX 843 ; N uni1FA9 ; G 2461 -U 8106 ; WX 1089 ; N uni1FAA ; G 2462 -U 8107 ; WX 1095 ; N uni1FAB ; G 2463 -U 8108 ; WX 946 ; N uni1FAC ; G 2464 -U 8109 ; WX 972 ; N uni1FAD ; G 2465 -U 8110 ; WX 921 ; N uni1FAE ; G 2466 -U 8111 ; WX 952 ; N uni1FAF ; G 2467 -U 8112 ; WX 659 ; N uni1FB0 ; G 2468 -U 8113 ; WX 659 ; N uni1FB1 ; G 2469 -U 8114 ; WX 659 ; N uni1FB2 ; G 2470 -U 8115 ; WX 659 ; N uni1FB3 ; G 2471 -U 8116 ; WX 659 ; N uni1FB4 ; G 2472 -U 8118 ; WX 659 ; N uni1FB6 ; G 2473 -U 8119 ; WX 659 ; N uni1FB7 ; G 2474 -U 8120 ; WX 684 ; N uni1FB8 ; G 2475 -U 8121 ; WX 684 ; N uni1FB9 ; G 2476 -U 8122 ; WX 716 ; N uni1FBA ; G 2477 -U 8123 ; WX 692 ; N uni1FBB ; G 2478 -U 8124 ; WX 684 ; N uni1FBC ; G 2479 -U 8125 ; WX 500 ; N uni1FBD ; G 2480 -U 8126 ; WX 500 ; N uni1FBE ; G 2481 -U 8127 ; WX 500 ; N uni1FBF ; G 2482 -U 8128 ; WX 500 ; N uni1FC0 ; G 2483 -U 8129 ; WX 500 ; N uni1FC1 ; G 2484 -U 8130 ; WX 634 ; N uni1FC2 ; G 2485 -U 8131 ; WX 634 ; N uni1FC3 ; G 2486 -U 8132 ; WX 654 ; N uni1FC4 ; G 2487 -U 8134 ; WX 634 ; N uni1FC6 ; G 2488 -U 8135 ; WX 634 ; N uni1FC7 ; G 2489 -U 8136 ; WX 805 ; N uni1FC8 ; G 2490 -U 8137 ; WX 746 ; N uni1FC9 ; G 2491 -U 8138 ; WX 931 ; N uni1FCA ; G 2492 -U 8139 ; WX 871 ; N uni1FCB ; G 2493 -U 8140 ; WX 752 ; N uni1FCC ; G 2494 -U 8141 ; WX 500 ; N uni1FCD ; G 2495 -U 8142 ; WX 500 ; N uni1FCE ; G 2496 -U 8143 ; WX 500 ; N uni1FCF ; G 2497 -U 8144 ; WX 338 ; N uni1FD0 ; G 2498 -U 8145 ; WX 338 ; N uni1FD1 ; G 2499 -U 8146 ; WX 338 ; N uni1FD2 ; G 2500 -U 8147 ; WX 338 ; N uni1FD3 ; G 2501 -U 8150 ; WX 338 ; N uni1FD6 ; G 2502 -U 8151 ; WX 338 ; N uni1FD7 ; G 2503 -U 8152 ; WX 295 ; N uni1FD8 ; G 2504 -U 8153 ; WX 295 ; N uni1FD9 ; G 2505 -U 8154 ; WX 475 ; N uni1FDA ; G 2506 -U 8155 ; WX 408 ; N uni1FDB ; G 2507 -U 8157 ; WX 500 ; N uni1FDD ; G 2508 -U 8158 ; WX 500 ; N uni1FDE ; G 2509 -U 8159 ; WX 500 ; N uni1FDF ; G 2510 -U 8160 ; WX 579 ; N uni1FE0 ; G 2511 -U 8161 ; WX 579 ; N uni1FE1 ; G 2512 -U 8162 ; WX 579 ; N uni1FE2 ; G 2513 -U 8163 ; WX 579 ; N uni1FE3 ; G 2514 -U 8164 ; WX 635 ; N uni1FE4 ; G 2515 -U 8165 ; WX 635 ; N uni1FE5 ; G 2516 -U 8166 ; WX 579 ; N uni1FE6 ; G 2517 -U 8167 ; WX 579 ; N uni1FE7 ; G 2518 -U 8168 ; WX 611 ; N uni1FE8 ; G 2519 -U 8169 ; WX 611 ; N uni1FE9 ; G 2520 -U 8170 ; WX 845 ; N uni1FEA ; G 2521 -U 8171 ; WX 825 ; N uni1FEB ; G 2522 -U 8172 ; WX 685 ; N uni1FEC ; G 2523 -U 8173 ; WX 500 ; N uni1FED ; G 2524 -U 8174 ; WX 500 ; N uni1FEE ; G 2525 -U 8175 ; WX 500 ; N uni1FEF ; G 2526 -U 8178 ; WX 837 ; N uni1FF2 ; G 2527 -U 8179 ; WX 837 ; N uni1FF3 ; G 2528 -U 8180 ; WX 837 ; N uni1FF4 ; G 2529 -U 8182 ; WX 837 ; N uni1FF6 ; G 2530 -U 8183 ; WX 837 ; N uni1FF7 ; G 2531 -U 8184 ; WX 941 ; N uni1FF8 ; G 2532 -U 8185 ; WX 813 ; N uni1FF9 ; G 2533 -U 8186 ; WX 922 ; N uni1FFA ; G 2534 -U 8187 ; WX 826 ; N uni1FFB ; G 2535 -U 8188 ; WX 764 ; N uni1FFC ; G 2536 -U 8189 ; WX 500 ; N uni1FFD ; G 2537 -U 8190 ; WX 500 ; N uni1FFE ; G 2538 -U 8192 ; WX 500 ; N uni2000 ; G 2539 -U 8193 ; WX 1000 ; N uni2001 ; G 2540 -U 8194 ; WX 500 ; N uni2002 ; G 2541 -U 8195 ; WX 1000 ; N uni2003 ; G 2542 -U 8196 ; WX 330 ; N uni2004 ; G 2543 -U 8197 ; WX 250 ; N uni2005 ; G 2544 -U 8198 ; WX 167 ; N uni2006 ; G 2545 -U 8199 ; WX 636 ; N uni2007 ; G 2546 -U 8200 ; WX 318 ; N uni2008 ; G 2547 -U 8201 ; WX 200 ; N uni2009 ; G 2548 -U 8202 ; WX 100 ; N uni200A ; G 2549 -U 8203 ; WX 0 ; N uni200B ; G 2550 -U 8204 ; WX 0 ; N uni200C ; G 2551 -U 8205 ; WX 0 ; N uni200D ; G 2552 -U 8206 ; WX 0 ; N uni200E ; G 2553 -U 8207 ; WX 0 ; N uni200F ; G 2554 -U 8208 ; WX 361 ; N uni2010 ; G 2555 -U 8209 ; WX 361 ; N uni2011 ; G 2556 -U 8210 ; WX 636 ; N figuredash ; G 2557 -U 8211 ; WX 500 ; N endash ; G 2558 -U 8212 ; WX 1000 ; N emdash ; G 2559 -U 8213 ; WX 1000 ; N uni2015 ; G 2560 -U 8214 ; WX 500 ; N uni2016 ; G 2561 -U 8215 ; WX 500 ; N underscoredbl ; G 2562 -U 8216 ; WX 318 ; N quoteleft ; G 2563 -U 8217 ; WX 318 ; N quoteright ; G 2564 -U 8218 ; WX 318 ; N quotesinglbase ; G 2565 -U 8219 ; WX 318 ; N quotereversed ; G 2566 -U 8220 ; WX 518 ; N quotedblleft ; G 2567 -U 8221 ; WX 518 ; N quotedblright ; G 2568 -U 8222 ; WX 518 ; N quotedblbase ; G 2569 -U 8223 ; WX 518 ; N uni201F ; G 2570 -U 8224 ; WX 500 ; N dagger ; G 2571 -U 8225 ; WX 500 ; N daggerdbl ; G 2572 -U 8226 ; WX 590 ; N bullet ; G 2573 -U 8227 ; WX 590 ; N uni2023 ; G 2574 -U 8228 ; WX 333 ; N onedotenleader ; G 2575 -U 8229 ; WX 667 ; N twodotenleader ; G 2576 -U 8230 ; WX 1000 ; N ellipsis ; G 2577 -U 8231 ; WX 318 ; N uni2027 ; G 2578 -U 8232 ; WX 0 ; N uni2028 ; G 2579 -U 8233 ; WX 0 ; N uni2029 ; G 2580 -U 8234 ; WX 0 ; N uni202A ; G 2581 -U 8235 ; WX 0 ; N uni202B ; G 2582 -U 8236 ; WX 0 ; N uni202C ; G 2583 -U 8237 ; WX 0 ; N uni202D ; G 2584 -U 8238 ; WX 0 ; N uni202E ; G 2585 -U 8239 ; WX 200 ; N uni202F ; G 2586 -U 8240 ; WX 1350 ; N perthousand ; G 2587 -U 8241 ; WX 1690 ; N uni2031 ; G 2588 -U 8242 ; WX 227 ; N minute ; G 2589 -U 8243 ; WX 374 ; N second ; G 2590 -U 8244 ; WX 520 ; N uni2034 ; G 2591 -U 8245 ; WX 227 ; N uni2035 ; G 2592 -U 8246 ; WX 374 ; N uni2036 ; G 2593 -U 8247 ; WX 520 ; N uni2037 ; G 2594 -U 8248 ; WX 339 ; N uni2038 ; G 2595 -U 8249 ; WX 400 ; N guilsinglleft ; G 2596 -U 8250 ; WX 400 ; N guilsinglright ; G 2597 -U 8251 ; WX 838 ; N uni203B ; G 2598 -U 8252 ; WX 485 ; N exclamdbl ; G 2599 -U 8253 ; WX 531 ; N uni203D ; G 2600 -U 8254 ; WX 500 ; N uni203E ; G 2601 -U 8255 ; WX 804 ; N uni203F ; G 2602 -U 8256 ; WX 804 ; N uni2040 ; G 2603 -U 8257 ; WX 250 ; N uni2041 ; G 2604 -U 8258 ; WX 1000 ; N uni2042 ; G 2605 -U 8259 ; WX 500 ; N uni2043 ; G 2606 -U 8260 ; WX 167 ; N fraction ; G 2607 -U 8261 ; WX 390 ; N uni2045 ; G 2608 -U 8262 ; WX 390 ; N uni2046 ; G 2609 -U 8263 ; WX 922 ; N uni2047 ; G 2610 -U 8264 ; WX 733 ; N uni2048 ; G 2611 -U 8265 ; WX 733 ; N uni2049 ; G 2612 -U 8266 ; WX 497 ; N uni204A ; G 2613 -U 8267 ; WX 636 ; N uni204B ; G 2614 -U 8268 ; WX 500 ; N uni204C ; G 2615 -U 8269 ; WX 500 ; N uni204D ; G 2616 -U 8270 ; WX 500 ; N uni204E ; G 2617 -U 8271 ; WX 337 ; N uni204F ; G 2618 -U 8272 ; WX 804 ; N uni2050 ; G 2619 -U 8273 ; WX 500 ; N uni2051 ; G 2620 -U 8274 ; WX 450 ; N uni2052 ; G 2621 -U 8275 ; WX 1000 ; N uni2053 ; G 2622 -U 8276 ; WX 804 ; N uni2054 ; G 2623 -U 8277 ; WX 838 ; N uni2055 ; G 2624 -U 8278 ; WX 586 ; N uni2056 ; G 2625 -U 8279 ; WX 663 ; N uni2057 ; G 2626 -U 8280 ; WX 838 ; N uni2058 ; G 2627 -U 8281 ; WX 838 ; N uni2059 ; G 2628 -U 8282 ; WX 318 ; N uni205A ; G 2629 -U 8283 ; WX 797 ; N uni205B ; G 2630 -U 8284 ; WX 838 ; N uni205C ; G 2631 -U 8285 ; WX 318 ; N uni205D ; G 2632 -U 8286 ; WX 318 ; N uni205E ; G 2633 -U 8287 ; WX 222 ; N uni205F ; G 2634 -U 8288 ; WX 0 ; N uni2060 ; G 2635 -U 8289 ; WX 0 ; N uni2061 ; G 2636 -U 8290 ; WX 0 ; N uni2062 ; G 2637 -U 8291 ; WX 0 ; N uni2063 ; G 2638 -U 8292 ; WX 0 ; N uni2064 ; G 2639 -U 8298 ; WX 0 ; N uni206A ; G 2640 -U 8299 ; WX 0 ; N uni206B ; G 2641 -U 8300 ; WX 0 ; N uni206C ; G 2642 -U 8301 ; WX 0 ; N uni206D ; G 2643 -U 8302 ; WX 0 ; N uni206E ; G 2644 -U 8303 ; WX 0 ; N uni206F ; G 2645 -U 8304 ; WX 401 ; N uni2070 ; G 2646 -U 8305 ; WX 179 ; N uni2071 ; G 2647 -U 8308 ; WX 401 ; N uni2074 ; G 2648 -U 8309 ; WX 401 ; N uni2075 ; G 2649 -U 8310 ; WX 401 ; N uni2076 ; G 2650 -U 8311 ; WX 401 ; N uni2077 ; G 2651 -U 8312 ; WX 401 ; N uni2078 ; G 2652 -U 8313 ; WX 401 ; N uni2079 ; G 2653 -U 8314 ; WX 528 ; N uni207A ; G 2654 -U 8315 ; WX 528 ; N uni207B ; G 2655 -U 8316 ; WX 528 ; N uni207C ; G 2656 -U 8317 ; WX 246 ; N uni207D ; G 2657 -U 8318 ; WX 246 ; N uni207E ; G 2658 -U 8319 ; WX 399 ; N uni207F ; G 2659 -U 8320 ; WX 401 ; N uni2080 ; G 2660 -U 8321 ; WX 401 ; N uni2081 ; G 2661 -U 8322 ; WX 401 ; N uni2082 ; G 2662 -U 8323 ; WX 401 ; N uni2083 ; G 2663 -U 8324 ; WX 401 ; N uni2084 ; G 2664 -U 8325 ; WX 401 ; N uni2085 ; G 2665 -U 8326 ; WX 401 ; N uni2086 ; G 2666 -U 8327 ; WX 401 ; N uni2087 ; G 2667 -U 8328 ; WX 401 ; N uni2088 ; G 2668 -U 8329 ; WX 401 ; N uni2089 ; G 2669 -U 8330 ; WX 528 ; N uni208A ; G 2670 -U 8331 ; WX 528 ; N uni208B ; G 2671 -U 8332 ; WX 528 ; N uni208C ; G 2672 -U 8333 ; WX 246 ; N uni208D ; G 2673 -U 8334 ; WX 246 ; N uni208E ; G 2674 -U 8336 ; WX 392 ; N uni2090 ; G 2675 -U 8337 ; WX 417 ; N uni2091 ; G 2676 -U 8338 ; WX 414 ; N uni2092 ; G 2677 -U 8339 ; WX 444 ; N uni2093 ; G 2678 -U 8340 ; WX 417 ; N uni2094 ; G 2679 -U 8341 ; WX 399 ; N uni2095 ; G 2680 -U 8342 ; WX 426 ; N uni2096 ; G 2681 -U 8343 ; WX 166 ; N uni2097 ; G 2682 -U 8344 ; WX 623 ; N uni2098 ; G 2683 -U 8345 ; WX 399 ; N uni2099 ; G 2684 -U 8346 ; WX 428 ; N uni209A ; G 2685 -U 8347 ; WX 373 ; N uni209B ; G 2686 -U 8348 ; WX 295 ; N uni209C ; G 2687 -U 8352 ; WX 877 ; N uni20A0 ; G 2688 -U 8353 ; WX 636 ; N colonmonetary ; G 2689 -U 8354 ; WX 636 ; N uni20A2 ; G 2690 -U 8355 ; WX 636 ; N franc ; G 2691 -U 8356 ; WX 636 ; N lira ; G 2692 -U 8357 ; WX 974 ; N uni20A5 ; G 2693 -U 8358 ; WX 636 ; N uni20A6 ; G 2694 -U 8359 ; WX 1271 ; N peseta ; G 2695 -U 8360 ; WX 1074 ; N uni20A8 ; G 2696 -U 8361 ; WX 989 ; N uni20A9 ; G 2697 -U 8362 ; WX 838 ; N uni20AA ; G 2698 -U 8363 ; WX 636 ; N dong ; G 2699 -U 8364 ; WX 636 ; N Euro ; G 2700 -U 8365 ; WX 636 ; N uni20AD ; G 2701 -U 8366 ; WX 636 ; N uni20AE ; G 2702 -U 8367 ; WX 1272 ; N uni20AF ; G 2703 -U 8368 ; WX 636 ; N uni20B0 ; G 2704 -U 8369 ; WX 636 ; N uni20B1 ; G 2705 -U 8370 ; WX 636 ; N uni20B2 ; G 2706 -U 8371 ; WX 636 ; N uni20B3 ; G 2707 -U 8372 ; WX 774 ; N uni20B4 ; G 2708 -U 8373 ; WX 636 ; N uni20B5 ; G 2709 -U 8376 ; WX 636 ; N uni20B8 ; G 2710 -U 8377 ; WX 636 ; N uni20B9 ; G 2711 -U 8378 ; WX 636 ; N uni20BA ; G 2712 -U 8381 ; WX 636 ; N uni20BD ; G 2713 -U 8400 ; WX 0 ; N uni20D0 ; G 2714 -U 8401 ; WX 0 ; N uni20D1 ; G 2715 -U 8406 ; WX 0 ; N uni20D6 ; G 2716 -U 8407 ; WX 0 ; N uni20D7 ; G 2717 -U 8411 ; WX 0 ; N uni20DB ; G 2718 -U 8412 ; WX 0 ; N uni20DC ; G 2719 -U 8417 ; WX 0 ; N uni20E1 ; G 2720 -U 8448 ; WX 970 ; N uni2100 ; G 2721 -U 8449 ; WX 970 ; N uni2101 ; G 2722 -U 8450 ; WX 698 ; N uni2102 ; G 2723 -U 8451 ; WX 1123 ; N uni2103 ; G 2724 -U 8452 ; WX 896 ; N uni2104 ; G 2725 -U 8453 ; WX 969 ; N uni2105 ; G 2726 -U 8454 ; WX 1032 ; N uni2106 ; G 2727 -U 8455 ; WX 614 ; N uni2107 ; G 2728 -U 8456 ; WX 698 ; N uni2108 ; G 2729 -U 8457 ; WX 952 ; N uni2109 ; G 2730 -U 8459 ; WX 988 ; N uni210B ; G 2731 -U 8460 ; WX 754 ; N uni210C ; G 2732 -U 8461 ; WX 850 ; N uni210D ; G 2733 -U 8462 ; WX 634 ; N uni210E ; G 2734 -U 8463 ; WX 634 ; N uni210F ; G 2735 -U 8464 ; WX 470 ; N uni2110 ; G 2736 -U 8465 ; WX 697 ; N Ifraktur ; G 2737 -U 8466 ; WX 720 ; N uni2112 ; G 2738 -U 8467 ; WX 413 ; N uni2113 ; G 2739 -U 8468 ; WX 818 ; N uni2114 ; G 2740 -U 8469 ; WX 801 ; N uni2115 ; G 2741 -U 8470 ; WX 1040 ; N uni2116 ; G 2742 -U 8471 ; WX 1000 ; N uni2117 ; G 2743 -U 8472 ; WX 697 ; N weierstrass ; G 2744 -U 8473 ; WX 701 ; N uni2119 ; G 2745 -U 8474 ; WX 787 ; N uni211A ; G 2746 -U 8475 ; WX 798 ; N uni211B ; G 2747 -U 8476 ; WX 814 ; N Rfraktur ; G 2748 -U 8477 ; WX 792 ; N uni211D ; G 2749 -U 8478 ; WX 896 ; N prescription ; G 2750 -U 8479 ; WX 684 ; N uni211F ; G 2751 -U 8480 ; WX 1020 ; N uni2120 ; G 2752 -U 8481 ; WX 1014 ; N uni2121 ; G 2753 -U 8482 ; WX 1000 ; N trademark ; G 2754 -U 8483 ; WX 684 ; N uni2123 ; G 2755 -U 8484 ; WX 745 ; N uni2124 ; G 2756 -U 8485 ; WX 578 ; N uni2125 ; G 2757 -U 8486 ; WX 764 ; N uni2126 ; G 2758 -U 8487 ; WX 764 ; N uni2127 ; G 2759 -U 8488 ; WX 616 ; N uni2128 ; G 2760 -U 8489 ; WX 338 ; N uni2129 ; G 2761 -U 8490 ; WX 656 ; N uni212A ; G 2762 -U 8491 ; WX 684 ; N uni212B ; G 2763 -U 8492 ; WX 786 ; N uni212C ; G 2764 -U 8493 ; WX 703 ; N uni212D ; G 2765 -U 8494 ; WX 854 ; N estimated ; G 2766 -U 8495 ; WX 592 ; N uni212F ; G 2767 -U 8496 ; WX 605 ; N uni2130 ; G 2768 -U 8497 ; WX 786 ; N uni2131 ; G 2769 -U 8498 ; WX 575 ; N uni2132 ; G 2770 -U 8499 ; WX 1069 ; N uni2133 ; G 2771 -U 8500 ; WX 462 ; N uni2134 ; G 2772 -U 8501 ; WX 745 ; N aleph ; G 2773 -U 8502 ; WX 674 ; N uni2136 ; G 2774 -U 8503 ; WX 466 ; N uni2137 ; G 2775 -U 8504 ; WX 645 ; N uni2138 ; G 2776 -U 8505 ; WX 380 ; N uni2139 ; G 2777 -U 8506 ; WX 926 ; N uni213A ; G 2778 -U 8507 ; WX 1157 ; N uni213B ; G 2779 -U 8508 ; WX 702 ; N uni213C ; G 2780 -U 8509 ; WX 728 ; N uni213D ; G 2781 -U 8510 ; WX 654 ; N uni213E ; G 2782 -U 8511 ; WX 849 ; N uni213F ; G 2783 -U 8512 ; WX 811 ; N uni2140 ; G 2784 -U 8513 ; WX 775 ; N uni2141 ; G 2785 -U 8514 ; WX 557 ; N uni2142 ; G 2786 -U 8515 ; WX 557 ; N uni2143 ; G 2787 -U 8516 ; WX 611 ; N uni2144 ; G 2788 -U 8517 ; WX 819 ; N uni2145 ; G 2789 -U 8518 ; WX 708 ; N uni2146 ; G 2790 -U 8519 ; WX 615 ; N uni2147 ; G 2791 -U 8520 ; WX 351 ; N uni2148 ; G 2792 -U 8521 ; WX 351 ; N uni2149 ; G 2793 -U 8523 ; WX 780 ; N uni214B ; G 2794 -U 8526 ; WX 526 ; N uni214E ; G 2795 -U 8528 ; WX 969 ; N uni2150 ; G 2796 -U 8529 ; WX 969 ; N uni2151 ; G 2797 -U 8530 ; WX 1370 ; N uni2152 ; G 2798 -U 8531 ; WX 969 ; N onethird ; G 2799 -U 8532 ; WX 969 ; N twothirds ; G 2800 -U 8533 ; WX 969 ; N uni2155 ; G 2801 -U 8534 ; WX 969 ; N uni2156 ; G 2802 -U 8535 ; WX 969 ; N uni2157 ; G 2803 -U 8536 ; WX 969 ; N uni2158 ; G 2804 -U 8537 ; WX 969 ; N uni2159 ; G 2805 -U 8538 ; WX 969 ; N uni215A ; G 2806 -U 8539 ; WX 969 ; N oneeighth ; G 2807 -U 8540 ; WX 969 ; N threeeighths ; G 2808 -U 8541 ; WX 969 ; N fiveeighths ; G 2809 -U 8542 ; WX 969 ; N seveneighths ; G 2810 -U 8543 ; WX 568 ; N uni215F ; G 2811 -U 8544 ; WX 295 ; N uni2160 ; G 2812 -U 8545 ; WX 492 ; N uni2161 ; G 2813 -U 8546 ; WX 689 ; N uni2162 ; G 2814 -U 8547 ; WX 923 ; N uni2163 ; G 2815 -U 8548 ; WX 684 ; N uni2164 ; G 2816 -U 8549 ; WX 922 ; N uni2165 ; G 2817 -U 8550 ; WX 1120 ; N uni2166 ; G 2818 -U 8551 ; WX 1317 ; N uni2167 ; G 2819 -U 8552 ; WX 917 ; N uni2168 ; G 2820 -U 8553 ; WX 685 ; N uni2169 ; G 2821 -U 8554 ; WX 933 ; N uni216A ; G 2822 -U 8555 ; WX 1131 ; N uni216B ; G 2823 -U 8556 ; WX 557 ; N uni216C ; G 2824 -U 8557 ; WX 698 ; N uni216D ; G 2825 -U 8558 ; WX 770 ; N uni216E ; G 2826 -U 8559 ; WX 863 ; N uni216F ; G 2827 -U 8560 ; WX 278 ; N uni2170 ; G 2828 -U 8561 ; WX 458 ; N uni2171 ; G 2829 -U 8562 ; WX 637 ; N uni2172 ; G 2830 -U 8563 ; WX 812 ; N uni2173 ; G 2831 -U 8564 ; WX 592 ; N uni2174 ; G 2832 -U 8565 ; WX 811 ; N uni2175 ; G 2833 -U 8566 ; WX 991 ; N uni2176 ; G 2834 -U 8567 ; WX 1170 ; N uni2177 ; G 2835 -U 8568 ; WX 819 ; N uni2178 ; G 2836 -U 8569 ; WX 592 ; N uni2179 ; G 2837 -U 8570 ; WX 822 ; N uni217A ; G 2838 -U 8571 ; WX 1002 ; N uni217B ; G 2839 -U 8572 ; WX 278 ; N uni217C ; G 2840 -U 8573 ; WX 550 ; N uni217D ; G 2841 -U 8574 ; WX 635 ; N uni217E ; G 2842 -U 8575 ; WX 974 ; N uni217F ; G 2843 -U 8576 ; WX 1245 ; N uni2180 ; G 2844 -U 8577 ; WX 770 ; N uni2181 ; G 2845 -U 8578 ; WX 1245 ; N uni2182 ; G 2846 -U 8579 ; WX 703 ; N uni2183 ; G 2847 -U 8580 ; WX 549 ; N uni2184 ; G 2848 -U 8581 ; WX 698 ; N uni2185 ; G 2849 -U 8585 ; WX 969 ; N uni2189 ; G 2850 -U 8592 ; WX 838 ; N arrowleft ; G 2851 -U 8593 ; WX 838 ; N arrowup ; G 2852 -U 8594 ; WX 838 ; N arrowright ; G 2853 -U 8595 ; WX 838 ; N arrowdown ; G 2854 -U 8596 ; WX 838 ; N arrowboth ; G 2855 -U 8597 ; WX 838 ; N arrowupdn ; G 2856 -U 8598 ; WX 838 ; N uni2196 ; G 2857 -U 8599 ; WX 838 ; N uni2197 ; G 2858 -U 8600 ; WX 838 ; N uni2198 ; G 2859 -U 8601 ; WX 838 ; N uni2199 ; G 2860 -U 8602 ; WX 838 ; N uni219A ; G 2861 -U 8603 ; WX 838 ; N uni219B ; G 2862 -U 8604 ; WX 838 ; N uni219C ; G 2863 -U 8605 ; WX 838 ; N uni219D ; G 2864 -U 8606 ; WX 838 ; N uni219E ; G 2865 -U 8607 ; WX 838 ; N uni219F ; G 2866 -U 8608 ; WX 838 ; N uni21A0 ; G 2867 -U 8609 ; WX 838 ; N uni21A1 ; G 2868 -U 8610 ; WX 838 ; N uni21A2 ; G 2869 -U 8611 ; WX 838 ; N uni21A3 ; G 2870 -U 8612 ; WX 838 ; N uni21A4 ; G 2871 -U 8613 ; WX 838 ; N uni21A5 ; G 2872 -U 8614 ; WX 838 ; N uni21A6 ; G 2873 -U 8615 ; WX 838 ; N uni21A7 ; G 2874 -U 8616 ; WX 838 ; N arrowupdnbse ; G 2875 -U 8617 ; WX 838 ; N uni21A9 ; G 2876 -U 8618 ; WX 838 ; N uni21AA ; G 2877 -U 8619 ; WX 838 ; N uni21AB ; G 2878 -U 8620 ; WX 838 ; N uni21AC ; G 2879 -U 8621 ; WX 838 ; N uni21AD ; G 2880 -U 8622 ; WX 838 ; N uni21AE ; G 2881 -U 8623 ; WX 838 ; N uni21AF ; G 2882 -U 8624 ; WX 838 ; N uni21B0 ; G 2883 -U 8625 ; WX 838 ; N uni21B1 ; G 2884 -U 8626 ; WX 838 ; N uni21B2 ; G 2885 -U 8627 ; WX 838 ; N uni21B3 ; G 2886 -U 8628 ; WX 838 ; N uni21B4 ; G 2887 -U 8629 ; WX 838 ; N carriagereturn ; G 2888 -U 8630 ; WX 838 ; N uni21B6 ; G 2889 -U 8631 ; WX 838 ; N uni21B7 ; G 2890 -U 8632 ; WX 838 ; N uni21B8 ; G 2891 -U 8633 ; WX 838 ; N uni21B9 ; G 2892 -U 8634 ; WX 838 ; N uni21BA ; G 2893 -U 8635 ; WX 838 ; N uni21BB ; G 2894 -U 8636 ; WX 838 ; N uni21BC ; G 2895 -U 8637 ; WX 838 ; N uni21BD ; G 2896 -U 8638 ; WX 838 ; N uni21BE ; G 2897 -U 8639 ; WX 838 ; N uni21BF ; G 2898 -U 8640 ; WX 838 ; N uni21C0 ; G 2899 -U 8641 ; WX 838 ; N uni21C1 ; G 2900 -U 8642 ; WX 838 ; N uni21C2 ; G 2901 -U 8643 ; WX 838 ; N uni21C3 ; G 2902 -U 8644 ; WX 838 ; N uni21C4 ; G 2903 -U 8645 ; WX 838 ; N uni21C5 ; G 2904 -U 8646 ; WX 838 ; N uni21C6 ; G 2905 -U 8647 ; WX 838 ; N uni21C7 ; G 2906 -U 8648 ; WX 838 ; N uni21C8 ; G 2907 -U 8649 ; WX 838 ; N uni21C9 ; G 2908 -U 8650 ; WX 838 ; N uni21CA ; G 2909 -U 8651 ; WX 838 ; N uni21CB ; G 2910 -U 8652 ; WX 838 ; N uni21CC ; G 2911 -U 8653 ; WX 838 ; N uni21CD ; G 2912 -U 8654 ; WX 838 ; N uni21CE ; G 2913 -U 8655 ; WX 838 ; N uni21CF ; G 2914 -U 8656 ; WX 838 ; N arrowdblleft ; G 2915 -U 8657 ; WX 838 ; N arrowdblup ; G 2916 -U 8658 ; WX 838 ; N arrowdblright ; G 2917 -U 8659 ; WX 838 ; N arrowdbldown ; G 2918 -U 8660 ; WX 838 ; N arrowdblboth ; G 2919 -U 8661 ; WX 838 ; N uni21D5 ; G 2920 -U 8662 ; WX 838 ; N uni21D6 ; G 2921 -U 8663 ; WX 838 ; N uni21D7 ; G 2922 -U 8664 ; WX 838 ; N uni21D8 ; G 2923 -U 8665 ; WX 838 ; N uni21D9 ; G 2924 -U 8666 ; WX 838 ; N uni21DA ; G 2925 -U 8667 ; WX 838 ; N uni21DB ; G 2926 -U 8668 ; WX 838 ; N uni21DC ; G 2927 -U 8669 ; WX 838 ; N uni21DD ; G 2928 -U 8670 ; WX 838 ; N uni21DE ; G 2929 -U 8671 ; WX 838 ; N uni21DF ; G 2930 -U 8672 ; WX 838 ; N uni21E0 ; G 2931 -U 8673 ; WX 838 ; N uni21E1 ; G 2932 -U 8674 ; WX 838 ; N uni21E2 ; G 2933 -U 8675 ; WX 838 ; N uni21E3 ; G 2934 -U 8676 ; WX 838 ; N uni21E4 ; G 2935 -U 8677 ; WX 838 ; N uni21E5 ; G 2936 -U 8678 ; WX 838 ; N uni21E6 ; G 2937 -U 8679 ; WX 838 ; N uni21E7 ; G 2938 -U 8680 ; WX 838 ; N uni21E8 ; G 2939 -U 8681 ; WX 838 ; N uni21E9 ; G 2940 -U 8682 ; WX 838 ; N uni21EA ; G 2941 -U 8683 ; WX 838 ; N uni21EB ; G 2942 -U 8684 ; WX 838 ; N uni21EC ; G 2943 -U 8685 ; WX 838 ; N uni21ED ; G 2944 -U 8686 ; WX 838 ; N uni21EE ; G 2945 -U 8687 ; WX 838 ; N uni21EF ; G 2946 -U 8688 ; WX 838 ; N uni21F0 ; G 2947 -U 8689 ; WX 838 ; N uni21F1 ; G 2948 -U 8690 ; WX 838 ; N uni21F2 ; G 2949 -U 8691 ; WX 838 ; N uni21F3 ; G 2950 -U 8692 ; WX 838 ; N uni21F4 ; G 2951 -U 8693 ; WX 838 ; N uni21F5 ; G 2952 -U 8694 ; WX 838 ; N uni21F6 ; G 2953 -U 8695 ; WX 838 ; N uni21F7 ; G 2954 -U 8696 ; WX 838 ; N uni21F8 ; G 2955 -U 8697 ; WX 838 ; N uni21F9 ; G 2956 -U 8698 ; WX 838 ; N uni21FA ; G 2957 -U 8699 ; WX 838 ; N uni21FB ; G 2958 -U 8700 ; WX 838 ; N uni21FC ; G 2959 -U 8701 ; WX 838 ; N uni21FD ; G 2960 -U 8702 ; WX 838 ; N uni21FE ; G 2961 -U 8703 ; WX 838 ; N uni21FF ; G 2962 -U 8704 ; WX 684 ; N universal ; G 2963 -U 8705 ; WX 636 ; N uni2201 ; G 2964 -U 8706 ; WX 517 ; N partialdiff ; G 2965 -U 8707 ; WX 632 ; N existential ; G 2966 -U 8708 ; WX 632 ; N uni2204 ; G 2967 -U 8709 ; WX 871 ; N emptyset ; G 2968 -U 8710 ; WX 669 ; N increment ; G 2969 -U 8711 ; WX 669 ; N gradient ; G 2970 -U 8712 ; WX 871 ; N element ; G 2971 -U 8713 ; WX 871 ; N notelement ; G 2972 -U 8714 ; WX 718 ; N uni220A ; G 2973 -U 8715 ; WX 871 ; N suchthat ; G 2974 -U 8716 ; WX 871 ; N uni220C ; G 2975 -U 8717 ; WX 718 ; N uni220D ; G 2976 -U 8718 ; WX 636 ; N uni220E ; G 2977 -U 8719 ; WX 757 ; N product ; G 2978 -U 8720 ; WX 757 ; N uni2210 ; G 2979 -U 8721 ; WX 674 ; N summation ; G 2980 -U 8722 ; WX 838 ; N minus ; G 2981 -U 8723 ; WX 838 ; N uni2213 ; G 2982 -U 8724 ; WX 838 ; N uni2214 ; G 2983 -U 8725 ; WX 337 ; N uni2215 ; G 2984 -U 8726 ; WX 637 ; N uni2216 ; G 2985 -U 8727 ; WX 838 ; N asteriskmath ; G 2986 -U 8728 ; WX 626 ; N uni2218 ; G 2987 -U 8729 ; WX 626 ; N uni2219 ; G 2988 -U 8730 ; WX 637 ; N radical ; G 2989 -U 8731 ; WX 637 ; N uni221B ; G 2990 -U 8732 ; WX 637 ; N uni221C ; G 2991 -U 8733 ; WX 714 ; N proportional ; G 2992 -U 8734 ; WX 833 ; N infinity ; G 2993 -U 8735 ; WX 838 ; N orthogonal ; G 2994 -U 8736 ; WX 896 ; N angle ; G 2995 -U 8737 ; WX 896 ; N uni2221 ; G 2996 -U 8738 ; WX 838 ; N uni2222 ; G 2997 -U 8739 ; WX 500 ; N uni2223 ; G 2998 -U 8740 ; WX 500 ; N uni2224 ; G 2999 -U 8741 ; WX 500 ; N uni2225 ; G 3000 -U 8742 ; WX 500 ; N uni2226 ; G 3001 -U 8743 ; WX 732 ; N logicaland ; G 3002 -U 8744 ; WX 732 ; N logicalor ; G 3003 -U 8745 ; WX 732 ; N intersection ; G 3004 -U 8746 ; WX 732 ; N union ; G 3005 -U 8747 ; WX 521 ; N integral ; G 3006 -U 8748 ; WX 789 ; N uni222C ; G 3007 -U 8749 ; WX 1057 ; N uni222D ; G 3008 -U 8750 ; WX 521 ; N uni222E ; G 3009 -U 8751 ; WX 789 ; N uni222F ; G 3010 -U 8752 ; WX 1057 ; N uni2230 ; G 3011 -U 8753 ; WX 521 ; N uni2231 ; G 3012 -U 8754 ; WX 521 ; N uni2232 ; G 3013 -U 8755 ; WX 521 ; N uni2233 ; G 3014 -U 8756 ; WX 636 ; N therefore ; G 3015 -U 8757 ; WX 636 ; N uni2235 ; G 3016 -U 8758 ; WX 260 ; N uni2236 ; G 3017 -U 8759 ; WX 636 ; N uni2237 ; G 3018 -U 8760 ; WX 838 ; N uni2238 ; G 3019 -U 8761 ; WX 838 ; N uni2239 ; G 3020 -U 8762 ; WX 838 ; N uni223A ; G 3021 -U 8763 ; WX 838 ; N uni223B ; G 3022 -U 8764 ; WX 838 ; N similar ; G 3023 -U 8765 ; WX 838 ; N uni223D ; G 3024 -U 8766 ; WX 838 ; N uni223E ; G 3025 -U 8767 ; WX 838 ; N uni223F ; G 3026 -U 8768 ; WX 375 ; N uni2240 ; G 3027 -U 8769 ; WX 838 ; N uni2241 ; G 3028 -U 8770 ; WX 838 ; N uni2242 ; G 3029 -U 8771 ; WX 838 ; N uni2243 ; G 3030 -U 8772 ; WX 838 ; N uni2244 ; G 3031 -U 8773 ; WX 838 ; N congruent ; G 3032 -U 8774 ; WX 838 ; N uni2246 ; G 3033 -U 8775 ; WX 838 ; N uni2247 ; G 3034 -U 8776 ; WX 838 ; N approxequal ; G 3035 -U 8777 ; WX 838 ; N uni2249 ; G 3036 -U 8778 ; WX 838 ; N uni224A ; G 3037 -U 8779 ; WX 838 ; N uni224B ; G 3038 -U 8780 ; WX 838 ; N uni224C ; G 3039 -U 8781 ; WX 838 ; N uni224D ; G 3040 -U 8782 ; WX 838 ; N uni224E ; G 3041 -U 8783 ; WX 838 ; N uni224F ; G 3042 -U 8784 ; WX 838 ; N uni2250 ; G 3043 -U 8785 ; WX 838 ; N uni2251 ; G 3044 -U 8786 ; WX 838 ; N uni2252 ; G 3045 -U 8787 ; WX 838 ; N uni2253 ; G 3046 -U 8788 ; WX 1000 ; N uni2254 ; G 3047 -U 8789 ; WX 1000 ; N uni2255 ; G 3048 -U 8790 ; WX 838 ; N uni2256 ; G 3049 -U 8791 ; WX 838 ; N uni2257 ; G 3050 -U 8792 ; WX 838 ; N uni2258 ; G 3051 -U 8793 ; WX 838 ; N uni2259 ; G 3052 -U 8794 ; WX 838 ; N uni225A ; G 3053 -U 8795 ; WX 838 ; N uni225B ; G 3054 -U 8796 ; WX 838 ; N uni225C ; G 3055 -U 8797 ; WX 838 ; N uni225D ; G 3056 -U 8798 ; WX 838 ; N uni225E ; G 3057 -U 8799 ; WX 838 ; N uni225F ; G 3058 -U 8800 ; WX 838 ; N notequal ; G 3059 -U 8801 ; WX 838 ; N equivalence ; G 3060 -U 8802 ; WX 838 ; N uni2262 ; G 3061 -U 8803 ; WX 838 ; N uni2263 ; G 3062 -U 8804 ; WX 838 ; N lessequal ; G 3063 -U 8805 ; WX 838 ; N greaterequal ; G 3064 -U 8806 ; WX 838 ; N uni2266 ; G 3065 -U 8807 ; WX 838 ; N uni2267 ; G 3066 -U 8808 ; WX 838 ; N uni2268 ; G 3067 -U 8809 ; WX 838 ; N uni2269 ; G 3068 -U 8810 ; WX 1047 ; N uni226A ; G 3069 -U 8811 ; WX 1047 ; N uni226B ; G 3070 -U 8812 ; WX 464 ; N uni226C ; G 3071 -U 8813 ; WX 838 ; N uni226D ; G 3072 -U 8814 ; WX 838 ; N uni226E ; G 3073 -U 8815 ; WX 838 ; N uni226F ; G 3074 -U 8816 ; WX 838 ; N uni2270 ; G 3075 -U 8817 ; WX 838 ; N uni2271 ; G 3076 -U 8818 ; WX 838 ; N uni2272 ; G 3077 -U 8819 ; WX 838 ; N uni2273 ; G 3078 -U 8820 ; WX 838 ; N uni2274 ; G 3079 -U 8821 ; WX 838 ; N uni2275 ; G 3080 -U 8822 ; WX 838 ; N uni2276 ; G 3081 -U 8823 ; WX 838 ; N uni2277 ; G 3082 -U 8824 ; WX 838 ; N uni2278 ; G 3083 -U 8825 ; WX 838 ; N uni2279 ; G 3084 -U 8826 ; WX 838 ; N uni227A ; G 3085 -U 8827 ; WX 838 ; N uni227B ; G 3086 -U 8828 ; WX 838 ; N uni227C ; G 3087 -U 8829 ; WX 838 ; N uni227D ; G 3088 -U 8830 ; WX 838 ; N uni227E ; G 3089 -U 8831 ; WX 838 ; N uni227F ; G 3090 -U 8832 ; WX 838 ; N uni2280 ; G 3091 -U 8833 ; WX 838 ; N uni2281 ; G 3092 -U 8834 ; WX 838 ; N propersubset ; G 3093 -U 8835 ; WX 838 ; N propersuperset ; G 3094 -U 8836 ; WX 838 ; N notsubset ; G 3095 -U 8837 ; WX 838 ; N uni2285 ; G 3096 -U 8838 ; WX 838 ; N reflexsubset ; G 3097 -U 8839 ; WX 838 ; N reflexsuperset ; G 3098 -U 8840 ; WX 838 ; N uni2288 ; G 3099 -U 8841 ; WX 838 ; N uni2289 ; G 3100 -U 8842 ; WX 838 ; N uni228A ; G 3101 -U 8843 ; WX 838 ; N uni228B ; G 3102 -U 8844 ; WX 732 ; N uni228C ; G 3103 -U 8845 ; WX 732 ; N uni228D ; G 3104 -U 8846 ; WX 732 ; N uni228E ; G 3105 -U 8847 ; WX 838 ; N uni228F ; G 3106 -U 8848 ; WX 838 ; N uni2290 ; G 3107 -U 8849 ; WX 838 ; N uni2291 ; G 3108 -U 8850 ; WX 838 ; N uni2292 ; G 3109 -U 8851 ; WX 780 ; N uni2293 ; G 3110 -U 8852 ; WX 780 ; N uni2294 ; G 3111 -U 8853 ; WX 838 ; N circleplus ; G 3112 -U 8854 ; WX 838 ; N uni2296 ; G 3113 -U 8855 ; WX 838 ; N circlemultiply ; G 3114 -U 8856 ; WX 838 ; N uni2298 ; G 3115 -U 8857 ; WX 838 ; N uni2299 ; G 3116 -U 8858 ; WX 838 ; N uni229A ; G 3117 -U 8859 ; WX 838 ; N uni229B ; G 3118 -U 8860 ; WX 838 ; N uni229C ; G 3119 -U 8861 ; WX 838 ; N uni229D ; G 3120 -U 8862 ; WX 838 ; N uni229E ; G 3121 -U 8863 ; WX 838 ; N uni229F ; G 3122 -U 8864 ; WX 838 ; N uni22A0 ; G 3123 -U 8865 ; WX 838 ; N uni22A1 ; G 3124 -U 8866 ; WX 871 ; N uni22A2 ; G 3125 -U 8867 ; WX 871 ; N uni22A3 ; G 3126 -U 8868 ; WX 871 ; N uni22A4 ; G 3127 -U 8869 ; WX 871 ; N perpendicular ; G 3128 -U 8870 ; WX 521 ; N uni22A6 ; G 3129 -U 8871 ; WX 521 ; N uni22A7 ; G 3130 -U 8872 ; WX 871 ; N uni22A8 ; G 3131 -U 8873 ; WX 871 ; N uni22A9 ; G 3132 -U 8874 ; WX 871 ; N uni22AA ; G 3133 -U 8875 ; WX 871 ; N uni22AB ; G 3134 -U 8876 ; WX 871 ; N uni22AC ; G 3135 -U 8877 ; WX 871 ; N uni22AD ; G 3136 -U 8878 ; WX 871 ; N uni22AE ; G 3137 -U 8879 ; WX 871 ; N uni22AF ; G 3138 -U 8880 ; WX 838 ; N uni22B0 ; G 3139 -U 8881 ; WX 838 ; N uni22B1 ; G 3140 -U 8882 ; WX 838 ; N uni22B2 ; G 3141 -U 8883 ; WX 838 ; N uni22B3 ; G 3142 -U 8884 ; WX 838 ; N uni22B4 ; G 3143 -U 8885 ; WX 838 ; N uni22B5 ; G 3144 -U 8886 ; WX 1000 ; N uni22B6 ; G 3145 -U 8887 ; WX 1000 ; N uni22B7 ; G 3146 -U 8888 ; WX 838 ; N uni22B8 ; G 3147 -U 8889 ; WX 838 ; N uni22B9 ; G 3148 -U 8890 ; WX 521 ; N uni22BA ; G 3149 -U 8891 ; WX 732 ; N uni22BB ; G 3150 -U 8892 ; WX 732 ; N uni22BC ; G 3151 -U 8893 ; WX 732 ; N uni22BD ; G 3152 -U 8894 ; WX 838 ; N uni22BE ; G 3153 -U 8895 ; WX 838 ; N uni22BF ; G 3154 -U 8896 ; WX 820 ; N uni22C0 ; G 3155 -U 8897 ; WX 820 ; N uni22C1 ; G 3156 -U 8898 ; WX 820 ; N uni22C2 ; G 3157 -U 8899 ; WX 820 ; N uni22C3 ; G 3158 -U 8900 ; WX 626 ; N uni22C4 ; G 3159 -U 8901 ; WX 318 ; N dotmath ; G 3160 -U 8902 ; WX 626 ; N uni22C6 ; G 3161 -U 8903 ; WX 838 ; N uni22C7 ; G 3162 -U 8904 ; WX 1000 ; N uni22C8 ; G 3163 -U 8905 ; WX 1000 ; N uni22C9 ; G 3164 -U 8906 ; WX 1000 ; N uni22CA ; G 3165 -U 8907 ; WX 1000 ; N uni22CB ; G 3166 -U 8908 ; WX 1000 ; N uni22CC ; G 3167 -U 8909 ; WX 838 ; N uni22CD ; G 3168 -U 8910 ; WX 732 ; N uni22CE ; G 3169 -U 8911 ; WX 732 ; N uni22CF ; G 3170 -U 8912 ; WX 838 ; N uni22D0 ; G 3171 -U 8913 ; WX 838 ; N uni22D1 ; G 3172 -U 8914 ; WX 838 ; N uni22D2 ; G 3173 -U 8915 ; WX 838 ; N uni22D3 ; G 3174 -U 8916 ; WX 838 ; N uni22D4 ; G 3175 -U 8917 ; WX 838 ; N uni22D5 ; G 3176 -U 8918 ; WX 838 ; N uni22D6 ; G 3177 -U 8919 ; WX 838 ; N uni22D7 ; G 3178 -U 8920 ; WX 1422 ; N uni22D8 ; G 3179 -U 8921 ; WX 1422 ; N uni22D9 ; G 3180 -U 8922 ; WX 838 ; N uni22DA ; G 3181 -U 8923 ; WX 838 ; N uni22DB ; G 3182 -U 8924 ; WX 838 ; N uni22DC ; G 3183 -U 8925 ; WX 838 ; N uni22DD ; G 3184 -U 8926 ; WX 838 ; N uni22DE ; G 3185 -U 8927 ; WX 838 ; N uni22DF ; G 3186 -U 8928 ; WX 838 ; N uni22E0 ; G 3187 -U 8929 ; WX 838 ; N uni22E1 ; G 3188 -U 8930 ; WX 838 ; N uni22E2 ; G 3189 -U 8931 ; WX 838 ; N uni22E3 ; G 3190 -U 8932 ; WX 838 ; N uni22E4 ; G 3191 -U 8933 ; WX 838 ; N uni22E5 ; G 3192 -U 8934 ; WX 838 ; N uni22E6 ; G 3193 -U 8935 ; WX 838 ; N uni22E7 ; G 3194 -U 8936 ; WX 838 ; N uni22E8 ; G 3195 -U 8937 ; WX 838 ; N uni22E9 ; G 3196 -U 8938 ; WX 838 ; N uni22EA ; G 3197 -U 8939 ; WX 838 ; N uni22EB ; G 3198 -U 8940 ; WX 838 ; N uni22EC ; G 3199 -U 8941 ; WX 838 ; N uni22ED ; G 3200 -U 8942 ; WX 1000 ; N uni22EE ; G 3201 -U 8943 ; WX 1000 ; N uni22EF ; G 3202 -U 8944 ; WX 1000 ; N uni22F0 ; G 3203 -U 8945 ; WX 1000 ; N uni22F1 ; G 3204 -U 8946 ; WX 1000 ; N uni22F2 ; G 3205 -U 8947 ; WX 871 ; N uni22F3 ; G 3206 -U 8948 ; WX 718 ; N uni22F4 ; G 3207 -U 8949 ; WX 871 ; N uni22F5 ; G 3208 -U 8950 ; WX 871 ; N uni22F6 ; G 3209 -U 8951 ; WX 718 ; N uni22F7 ; G 3210 -U 8952 ; WX 871 ; N uni22F8 ; G 3211 -U 8953 ; WX 871 ; N uni22F9 ; G 3212 -U 8954 ; WX 1000 ; N uni22FA ; G 3213 -U 8955 ; WX 871 ; N uni22FB ; G 3214 -U 8956 ; WX 718 ; N uni22FC ; G 3215 -U 8957 ; WX 871 ; N uni22FD ; G 3216 -U 8958 ; WX 718 ; N uni22FE ; G 3217 -U 8959 ; WX 871 ; N uni22FF ; G 3218 -U 8960 ; WX 602 ; N uni2300 ; G 3219 -U 8961 ; WX 602 ; N uni2301 ; G 3220 -U 8962 ; WX 635 ; N house ; G 3221 -U 8963 ; WX 838 ; N uni2303 ; G 3222 -U 8964 ; WX 838 ; N uni2304 ; G 3223 -U 8965 ; WX 838 ; N uni2305 ; G 3224 -U 8966 ; WX 838 ; N uni2306 ; G 3225 -U 8967 ; WX 488 ; N uni2307 ; G 3226 -U 8968 ; WX 390 ; N uni2308 ; G 3227 -U 8969 ; WX 390 ; N uni2309 ; G 3228 -U 8970 ; WX 390 ; N uni230A ; G 3229 -U 8971 ; WX 390 ; N uni230B ; G 3230 -U 8972 ; WX 809 ; N uni230C ; G 3231 -U 8973 ; WX 809 ; N uni230D ; G 3232 -U 8974 ; WX 809 ; N uni230E ; G 3233 -U 8975 ; WX 809 ; N uni230F ; G 3234 -U 8976 ; WX 838 ; N revlogicalnot ; G 3235 -U 8977 ; WX 513 ; N uni2311 ; G 3236 -U 8984 ; WX 1000 ; N uni2318 ; G 3237 -U 8985 ; WX 838 ; N uni2319 ; G 3238 -U 8988 ; WX 469 ; N uni231C ; G 3239 -U 8989 ; WX 469 ; N uni231D ; G 3240 -U 8990 ; WX 469 ; N uni231E ; G 3241 -U 8991 ; WX 469 ; N uni231F ; G 3242 -U 8992 ; WX 521 ; N integraltp ; G 3243 -U 8993 ; WX 521 ; N integralbt ; G 3244 -U 8996 ; WX 1152 ; N uni2324 ; G 3245 -U 8997 ; WX 1152 ; N uni2325 ; G 3246 -U 8998 ; WX 1414 ; N uni2326 ; G 3247 -U 8999 ; WX 1152 ; N uni2327 ; G 3248 -U 9000 ; WX 1443 ; N uni2328 ; G 3249 -U 9003 ; WX 1414 ; N uni232B ; G 3250 -U 9004 ; WX 873 ; N uni232C ; G 3251 -U 9075 ; WX 338 ; N uni2373 ; G 3252 -U 9076 ; WX 635 ; N uni2374 ; G 3253 -U 9077 ; WX 837 ; N uni2375 ; G 3254 -U 9082 ; WX 659 ; N uni237A ; G 3255 -U 9085 ; WX 757 ; N uni237D ; G 3256 -U 9095 ; WX 1152 ; N uni2387 ; G 3257 -U 9108 ; WX 873 ; N uni2394 ; G 3258 -U 9115 ; WX 500 ; N uni239B ; G 3259 -U 9116 ; WX 500 ; N uni239C ; G 3260 -U 9117 ; WX 500 ; N uni239D ; G 3261 -U 9118 ; WX 500 ; N uni239E ; G 3262 -U 9119 ; WX 500 ; N uni239F ; G 3263 -U 9120 ; WX 500 ; N uni23A0 ; G 3264 -U 9121 ; WX 500 ; N uni23A1 ; G 3265 -U 9122 ; WX 500 ; N uni23A2 ; G 3266 -U 9123 ; WX 500 ; N uni23A3 ; G 3267 -U 9124 ; WX 500 ; N uni23A4 ; G 3268 -U 9125 ; WX 500 ; N uni23A5 ; G 3269 -U 9126 ; WX 500 ; N uni23A6 ; G 3270 -U 9127 ; WX 750 ; N uni23A7 ; G 3271 -U 9128 ; WX 750 ; N uni23A8 ; G 3272 -U 9129 ; WX 750 ; N uni23A9 ; G 3273 -U 9130 ; WX 750 ; N uni23AA ; G 3274 -U 9131 ; WX 750 ; N uni23AB ; G 3275 -U 9132 ; WX 750 ; N uni23AC ; G 3276 -U 9133 ; WX 750 ; N uni23AD ; G 3277 -U 9134 ; WX 521 ; N uni23AE ; G 3278 -U 9166 ; WX 838 ; N uni23CE ; G 3279 -U 9167 ; WX 945 ; N uni23CF ; G 3280 -U 9187 ; WX 873 ; N uni23E3 ; G 3281 -U 9189 ; WX 769 ; N uni23E5 ; G 3282 -U 9192 ; WX 636 ; N uni23E8 ; G 3283 -U 9250 ; WX 635 ; N uni2422 ; G 3284 -U 9251 ; WX 635 ; N uni2423 ; G 3285 -U 9312 ; WX 896 ; N uni2460 ; G 3286 -U 9313 ; WX 896 ; N uni2461 ; G 3287 -U 9314 ; WX 896 ; N uni2462 ; G 3288 -U 9315 ; WX 896 ; N uni2463 ; G 3289 -U 9316 ; WX 896 ; N uni2464 ; G 3290 -U 9317 ; WX 896 ; N uni2465 ; G 3291 -U 9318 ; WX 896 ; N uni2466 ; G 3292 -U 9319 ; WX 896 ; N uni2467 ; G 3293 -U 9320 ; WX 896 ; N uni2468 ; G 3294 -U 9321 ; WX 896 ; N uni2469 ; G 3295 -U 9472 ; WX 602 ; N SF100000 ; G 3296 -U 9473 ; WX 602 ; N uni2501 ; G 3297 -U 9474 ; WX 602 ; N SF110000 ; G 3298 -U 9475 ; WX 602 ; N uni2503 ; G 3299 -U 9476 ; WX 602 ; N uni2504 ; G 3300 -U 9477 ; WX 602 ; N uni2505 ; G 3301 -U 9478 ; WX 602 ; N uni2506 ; G 3302 -U 9479 ; WX 602 ; N uni2507 ; G 3303 -U 9480 ; WX 602 ; N uni2508 ; G 3304 -U 9481 ; WX 602 ; N uni2509 ; G 3305 -U 9482 ; WX 602 ; N uni250A ; G 3306 -U 9483 ; WX 602 ; N uni250B ; G 3307 -U 9484 ; WX 602 ; N SF010000 ; G 3308 -U 9485 ; WX 602 ; N uni250D ; G 3309 -U 9486 ; WX 602 ; N uni250E ; G 3310 -U 9487 ; WX 602 ; N uni250F ; G 3311 -U 9488 ; WX 602 ; N SF030000 ; G 3312 -U 9489 ; WX 602 ; N uni2511 ; G 3313 -U 9490 ; WX 602 ; N uni2512 ; G 3314 -U 9491 ; WX 602 ; N uni2513 ; G 3315 -U 9492 ; WX 602 ; N SF020000 ; G 3316 -U 9493 ; WX 602 ; N uni2515 ; G 3317 -U 9494 ; WX 602 ; N uni2516 ; G 3318 -U 9495 ; WX 602 ; N uni2517 ; G 3319 -U 9496 ; WX 602 ; N SF040000 ; G 3320 -U 9497 ; WX 602 ; N uni2519 ; G 3321 -U 9498 ; WX 602 ; N uni251A ; G 3322 -U 9499 ; WX 602 ; N uni251B ; G 3323 -U 9500 ; WX 602 ; N SF080000 ; G 3324 -U 9501 ; WX 602 ; N uni251D ; G 3325 -U 9502 ; WX 602 ; N uni251E ; G 3326 -U 9503 ; WX 602 ; N uni251F ; G 3327 -U 9504 ; WX 602 ; N uni2520 ; G 3328 -U 9505 ; WX 602 ; N uni2521 ; G 3329 -U 9506 ; WX 602 ; N uni2522 ; G 3330 -U 9507 ; WX 602 ; N uni2523 ; G 3331 -U 9508 ; WX 602 ; N SF090000 ; G 3332 -U 9509 ; WX 602 ; N uni2525 ; G 3333 -U 9510 ; WX 602 ; N uni2526 ; G 3334 -U 9511 ; WX 602 ; N uni2527 ; G 3335 -U 9512 ; WX 602 ; N uni2528 ; G 3336 -U 9513 ; WX 602 ; N uni2529 ; G 3337 -U 9514 ; WX 602 ; N uni252A ; G 3338 -U 9515 ; WX 602 ; N uni252B ; G 3339 -U 9516 ; WX 602 ; N SF060000 ; G 3340 -U 9517 ; WX 602 ; N uni252D ; G 3341 -U 9518 ; WX 602 ; N uni252E ; G 3342 -U 9519 ; WX 602 ; N uni252F ; G 3343 -U 9520 ; WX 602 ; N uni2530 ; G 3344 -U 9521 ; WX 602 ; N uni2531 ; G 3345 -U 9522 ; WX 602 ; N uni2532 ; G 3346 -U 9523 ; WX 602 ; N uni2533 ; G 3347 -U 9524 ; WX 602 ; N SF070000 ; G 3348 -U 9525 ; WX 602 ; N uni2535 ; G 3349 -U 9526 ; WX 602 ; N uni2536 ; G 3350 -U 9527 ; WX 602 ; N uni2537 ; G 3351 -U 9528 ; WX 602 ; N uni2538 ; G 3352 -U 9529 ; WX 602 ; N uni2539 ; G 3353 -U 9530 ; WX 602 ; N uni253A ; G 3354 -U 9531 ; WX 602 ; N uni253B ; G 3355 -U 9532 ; WX 602 ; N SF050000 ; G 3356 -U 9533 ; WX 602 ; N uni253D ; G 3357 -U 9534 ; WX 602 ; N uni253E ; G 3358 -U 9535 ; WX 602 ; N uni253F ; G 3359 -U 9536 ; WX 602 ; N uni2540 ; G 3360 -U 9537 ; WX 602 ; N uni2541 ; G 3361 -U 9538 ; WX 602 ; N uni2542 ; G 3362 -U 9539 ; WX 602 ; N uni2543 ; G 3363 -U 9540 ; WX 602 ; N uni2544 ; G 3364 -U 9541 ; WX 602 ; N uni2545 ; G 3365 -U 9542 ; WX 602 ; N uni2546 ; G 3366 -U 9543 ; WX 602 ; N uni2547 ; G 3367 -U 9544 ; WX 602 ; N uni2548 ; G 3368 -U 9545 ; WX 602 ; N uni2549 ; G 3369 -U 9546 ; WX 602 ; N uni254A ; G 3370 -U 9547 ; WX 602 ; N uni254B ; G 3371 -U 9548 ; WX 602 ; N uni254C ; G 3372 -U 9549 ; WX 602 ; N uni254D ; G 3373 -U 9550 ; WX 602 ; N uni254E ; G 3374 -U 9551 ; WX 602 ; N uni254F ; G 3375 -U 9552 ; WX 602 ; N SF430000 ; G 3376 -U 9553 ; WX 602 ; N SF240000 ; G 3377 -U 9554 ; WX 602 ; N SF510000 ; G 3378 -U 9555 ; WX 602 ; N SF520000 ; G 3379 -U 9556 ; WX 602 ; N SF390000 ; G 3380 -U 9557 ; WX 602 ; N SF220000 ; G 3381 -U 9558 ; WX 602 ; N SF210000 ; G 3382 -U 9559 ; WX 602 ; N SF250000 ; G 3383 -U 9560 ; WX 602 ; N SF500000 ; G 3384 -U 9561 ; WX 602 ; N SF490000 ; G 3385 -U 9562 ; WX 602 ; N SF380000 ; G 3386 -U 9563 ; WX 602 ; N SF280000 ; G 3387 -U 9564 ; WX 602 ; N SF270000 ; G 3388 -U 9565 ; WX 602 ; N SF260000 ; G 3389 -U 9566 ; WX 602 ; N SF360000 ; G 3390 -U 9567 ; WX 602 ; N SF370000 ; G 3391 -U 9568 ; WX 602 ; N SF420000 ; G 3392 -U 9569 ; WX 602 ; N SF190000 ; G 3393 -U 9570 ; WX 602 ; N SF200000 ; G 3394 -U 9571 ; WX 602 ; N SF230000 ; G 3395 -U 9572 ; WX 602 ; N SF470000 ; G 3396 -U 9573 ; WX 602 ; N SF480000 ; G 3397 -U 9574 ; WX 602 ; N SF410000 ; G 3398 -U 9575 ; WX 602 ; N SF450000 ; G 3399 -U 9576 ; WX 602 ; N SF460000 ; G 3400 -U 9577 ; WX 602 ; N SF400000 ; G 3401 -U 9578 ; WX 602 ; N SF540000 ; G 3402 -U 9579 ; WX 602 ; N SF530000 ; G 3403 -U 9580 ; WX 602 ; N SF440000 ; G 3404 -U 9581 ; WX 602 ; N uni256D ; G 3405 -U 9582 ; WX 602 ; N uni256E ; G 3406 -U 9583 ; WX 602 ; N uni256F ; G 3407 -U 9584 ; WX 602 ; N uni2570 ; G 3408 -U 9585 ; WX 602 ; N uni2571 ; G 3409 -U 9586 ; WX 602 ; N uni2572 ; G 3410 -U 9587 ; WX 602 ; N uni2573 ; G 3411 -U 9588 ; WX 602 ; N uni2574 ; G 3412 -U 9589 ; WX 602 ; N uni2575 ; G 3413 -U 9590 ; WX 602 ; N uni2576 ; G 3414 -U 9591 ; WX 602 ; N uni2577 ; G 3415 -U 9592 ; WX 602 ; N uni2578 ; G 3416 -U 9593 ; WX 602 ; N uni2579 ; G 3417 -U 9594 ; WX 602 ; N uni257A ; G 3418 -U 9595 ; WX 602 ; N uni257B ; G 3419 -U 9596 ; WX 602 ; N uni257C ; G 3420 -U 9597 ; WX 602 ; N uni257D ; G 3421 -U 9598 ; WX 602 ; N uni257E ; G 3422 -U 9599 ; WX 602 ; N uni257F ; G 3423 -U 9600 ; WX 769 ; N upblock ; G 3424 -U 9601 ; WX 769 ; N uni2581 ; G 3425 -U 9602 ; WX 769 ; N uni2582 ; G 3426 -U 9603 ; WX 769 ; N uni2583 ; G 3427 -U 9604 ; WX 769 ; N dnblock ; G 3428 -U 9605 ; WX 769 ; N uni2585 ; G 3429 -U 9606 ; WX 769 ; N uni2586 ; G 3430 -U 9607 ; WX 769 ; N uni2587 ; G 3431 -U 9608 ; WX 769 ; N block ; G 3432 -U 9609 ; WX 769 ; N uni2589 ; G 3433 -U 9610 ; WX 769 ; N uni258A ; G 3434 -U 9611 ; WX 769 ; N uni258B ; G 3435 -U 9612 ; WX 769 ; N lfblock ; G 3436 -U 9613 ; WX 769 ; N uni258D ; G 3437 -U 9614 ; WX 769 ; N uni258E ; G 3438 -U 9615 ; WX 769 ; N uni258F ; G 3439 -U 9616 ; WX 769 ; N rtblock ; G 3440 -U 9617 ; WX 769 ; N ltshade ; G 3441 -U 9618 ; WX 769 ; N shade ; G 3442 -U 9619 ; WX 769 ; N dkshade ; G 3443 -U 9620 ; WX 769 ; N uni2594 ; G 3444 -U 9621 ; WX 769 ; N uni2595 ; G 3445 -U 9622 ; WX 769 ; N uni2596 ; G 3446 -U 9623 ; WX 769 ; N uni2597 ; G 3447 -U 9624 ; WX 769 ; N uni2598 ; G 3448 -U 9625 ; WX 769 ; N uni2599 ; G 3449 -U 9626 ; WX 769 ; N uni259A ; G 3450 -U 9627 ; WX 769 ; N uni259B ; G 3451 -U 9628 ; WX 769 ; N uni259C ; G 3452 -U 9629 ; WX 769 ; N uni259D ; G 3453 -U 9630 ; WX 769 ; N uni259E ; G 3454 -U 9631 ; WX 769 ; N uni259F ; G 3455 -U 9632 ; WX 945 ; N filledbox ; G 3456 -U 9633 ; WX 945 ; N H22073 ; G 3457 -U 9634 ; WX 945 ; N uni25A2 ; G 3458 -U 9635 ; WX 945 ; N uni25A3 ; G 3459 -U 9636 ; WX 945 ; N uni25A4 ; G 3460 -U 9637 ; WX 945 ; N uni25A5 ; G 3461 -U 9638 ; WX 945 ; N uni25A6 ; G 3462 -U 9639 ; WX 945 ; N uni25A7 ; G 3463 -U 9640 ; WX 945 ; N uni25A8 ; G 3464 -U 9641 ; WX 945 ; N uni25A9 ; G 3465 -U 9642 ; WX 678 ; N H18543 ; G 3466 -U 9643 ; WX 678 ; N H18551 ; G 3467 -U 9644 ; WX 945 ; N filledrect ; G 3468 -U 9645 ; WX 945 ; N uni25AD ; G 3469 -U 9646 ; WX 550 ; N uni25AE ; G 3470 -U 9647 ; WX 550 ; N uni25AF ; G 3471 -U 9648 ; WX 769 ; N uni25B0 ; G 3472 -U 9649 ; WX 769 ; N uni25B1 ; G 3473 -U 9650 ; WX 769 ; N triagup ; G 3474 -U 9651 ; WX 769 ; N uni25B3 ; G 3475 -U 9652 ; WX 502 ; N uni25B4 ; G 3476 -U 9653 ; WX 502 ; N uni25B5 ; G 3477 -U 9654 ; WX 769 ; N uni25B6 ; G 3478 -U 9655 ; WX 769 ; N uni25B7 ; G 3479 -U 9656 ; WX 502 ; N uni25B8 ; G 3480 -U 9657 ; WX 502 ; N uni25B9 ; G 3481 -U 9658 ; WX 769 ; N triagrt ; G 3482 -U 9659 ; WX 769 ; N uni25BB ; G 3483 -U 9660 ; WX 769 ; N triagdn ; G 3484 -U 9661 ; WX 769 ; N uni25BD ; G 3485 -U 9662 ; WX 502 ; N uni25BE ; G 3486 -U 9663 ; WX 502 ; N uni25BF ; G 3487 -U 9664 ; WX 769 ; N uni25C0 ; G 3488 -U 9665 ; WX 769 ; N uni25C1 ; G 3489 -U 9666 ; WX 502 ; N uni25C2 ; G 3490 -U 9667 ; WX 502 ; N uni25C3 ; G 3491 -U 9668 ; WX 769 ; N triaglf ; G 3492 -U 9669 ; WX 769 ; N uni25C5 ; G 3493 -U 9670 ; WX 769 ; N uni25C6 ; G 3494 -U 9671 ; WX 769 ; N uni25C7 ; G 3495 -U 9672 ; WX 769 ; N uni25C8 ; G 3496 -U 9673 ; WX 873 ; N uni25C9 ; G 3497 -U 9674 ; WX 494 ; N lozenge ; G 3498 -U 9675 ; WX 873 ; N circle ; G 3499 -U 9676 ; WX 873 ; N uni25CC ; G 3500 -U 9677 ; WX 873 ; N uni25CD ; G 3501 -U 9678 ; WX 873 ; N uni25CE ; G 3502 -U 9679 ; WX 873 ; N H18533 ; G 3503 -U 9680 ; WX 873 ; N uni25D0 ; G 3504 -U 9681 ; WX 873 ; N uni25D1 ; G 3505 -U 9682 ; WX 873 ; N uni25D2 ; G 3506 -U 9683 ; WX 873 ; N uni25D3 ; G 3507 -U 9684 ; WX 873 ; N uni25D4 ; G 3508 -U 9685 ; WX 873 ; N uni25D5 ; G 3509 -U 9686 ; WX 527 ; N uni25D6 ; G 3510 -U 9687 ; WX 527 ; N uni25D7 ; G 3511 -U 9688 ; WX 791 ; N invbullet ; G 3512 -U 9689 ; WX 970 ; N invcircle ; G 3513 -U 9690 ; WX 970 ; N uni25DA ; G 3514 -U 9691 ; WX 970 ; N uni25DB ; G 3515 -U 9692 ; WX 387 ; N uni25DC ; G 3516 -U 9693 ; WX 387 ; N uni25DD ; G 3517 -U 9694 ; WX 387 ; N uni25DE ; G 3518 -U 9695 ; WX 387 ; N uni25DF ; G 3519 -U 9696 ; WX 769 ; N uni25E0 ; G 3520 -U 9697 ; WX 769 ; N uni25E1 ; G 3521 -U 9698 ; WX 769 ; N uni25E2 ; G 3522 -U 9699 ; WX 769 ; N uni25E3 ; G 3523 -U 9700 ; WX 769 ; N uni25E4 ; G 3524 -U 9701 ; WX 769 ; N uni25E5 ; G 3525 -U 9702 ; WX 590 ; N openbullet ; G 3526 -U 9703 ; WX 945 ; N uni25E7 ; G 3527 -U 9704 ; WX 945 ; N uni25E8 ; G 3528 -U 9705 ; WX 945 ; N uni25E9 ; G 3529 -U 9706 ; WX 945 ; N uni25EA ; G 3530 -U 9707 ; WX 945 ; N uni25EB ; G 3531 -U 9708 ; WX 769 ; N uni25EC ; G 3532 -U 9709 ; WX 769 ; N uni25ED ; G 3533 -U 9710 ; WX 769 ; N uni25EE ; G 3534 -U 9711 ; WX 1119 ; N uni25EF ; G 3535 -U 9712 ; WX 945 ; N uni25F0 ; G 3536 -U 9713 ; WX 945 ; N uni25F1 ; G 3537 -U 9714 ; WX 945 ; N uni25F2 ; G 3538 -U 9715 ; WX 945 ; N uni25F3 ; G 3539 -U 9716 ; WX 873 ; N uni25F4 ; G 3540 -U 9717 ; WX 873 ; N uni25F5 ; G 3541 -U 9718 ; WX 873 ; N uni25F6 ; G 3542 -U 9719 ; WX 873 ; N uni25F7 ; G 3543 -U 9720 ; WX 769 ; N uni25F8 ; G 3544 -U 9721 ; WX 769 ; N uni25F9 ; G 3545 -U 9722 ; WX 769 ; N uni25FA ; G 3546 -U 9723 ; WX 830 ; N uni25FB ; G 3547 -U 9724 ; WX 830 ; N uni25FC ; G 3548 -U 9725 ; WX 732 ; N uni25FD ; G 3549 -U 9726 ; WX 732 ; N uni25FE ; G 3550 -U 9727 ; WX 769 ; N uni25FF ; G 3551 -U 9728 ; WX 896 ; N uni2600 ; G 3552 -U 9729 ; WX 1000 ; N uni2601 ; G 3553 -U 9730 ; WX 896 ; N uni2602 ; G 3554 -U 9731 ; WX 896 ; N uni2603 ; G 3555 -U 9732 ; WX 896 ; N uni2604 ; G 3556 -U 9733 ; WX 896 ; N uni2605 ; G 3557 -U 9734 ; WX 896 ; N uni2606 ; G 3558 -U 9735 ; WX 573 ; N uni2607 ; G 3559 -U 9736 ; WX 896 ; N uni2608 ; G 3560 -U 9737 ; WX 896 ; N uni2609 ; G 3561 -U 9738 ; WX 888 ; N uni260A ; G 3562 -U 9739 ; WX 888 ; N uni260B ; G 3563 -U 9740 ; WX 671 ; N uni260C ; G 3564 -U 9741 ; WX 1013 ; N uni260D ; G 3565 -U 9742 ; WX 1246 ; N uni260E ; G 3566 -U 9743 ; WX 1250 ; N uni260F ; G 3567 -U 9744 ; WX 896 ; N uni2610 ; G 3568 -U 9745 ; WX 896 ; N uni2611 ; G 3569 -U 9746 ; WX 896 ; N uni2612 ; G 3570 -U 9747 ; WX 532 ; N uni2613 ; G 3571 -U 9748 ; WX 896 ; N uni2614 ; G 3572 -U 9749 ; WX 896 ; N uni2615 ; G 3573 -U 9750 ; WX 896 ; N uni2616 ; G 3574 -U 9751 ; WX 896 ; N uni2617 ; G 3575 -U 9752 ; WX 896 ; N uni2618 ; G 3576 -U 9753 ; WX 896 ; N uni2619 ; G 3577 -U 9754 ; WX 896 ; N uni261A ; G 3578 -U 9755 ; WX 896 ; N uni261B ; G 3579 -U 9756 ; WX 896 ; N uni261C ; G 3580 -U 9757 ; WX 609 ; N uni261D ; G 3581 -U 9758 ; WX 896 ; N uni261E ; G 3582 -U 9759 ; WX 609 ; N uni261F ; G 3583 -U 9760 ; WX 896 ; N uni2620 ; G 3584 -U 9761 ; WX 896 ; N uni2621 ; G 3585 -U 9762 ; WX 896 ; N uni2622 ; G 3586 -U 9763 ; WX 896 ; N uni2623 ; G 3587 -U 9764 ; WX 669 ; N uni2624 ; G 3588 -U 9765 ; WX 746 ; N uni2625 ; G 3589 -U 9766 ; WX 649 ; N uni2626 ; G 3590 -U 9767 ; WX 784 ; N uni2627 ; G 3591 -U 9768 ; WX 545 ; N uni2628 ; G 3592 -U 9769 ; WX 896 ; N uni2629 ; G 3593 -U 9770 ; WX 896 ; N uni262A ; G 3594 -U 9771 ; WX 896 ; N uni262B ; G 3595 -U 9772 ; WX 710 ; N uni262C ; G 3596 -U 9773 ; WX 896 ; N uni262D ; G 3597 -U 9774 ; WX 896 ; N uni262E ; G 3598 -U 9775 ; WX 896 ; N uni262F ; G 3599 -U 9776 ; WX 890 ; N uni2630 ; G 3600 -U 9777 ; WX 890 ; N uni2631 ; G 3601 -U 9778 ; WX 890 ; N uni2632 ; G 3602 -U 9779 ; WX 890 ; N uni2633 ; G 3603 -U 9780 ; WX 890 ; N uni2634 ; G 3604 -U 9781 ; WX 890 ; N uni2635 ; G 3605 -U 9782 ; WX 890 ; N uni2636 ; G 3606 -U 9783 ; WX 890 ; N uni2637 ; G 3607 -U 9784 ; WX 896 ; N uni2638 ; G 3608 -U 9785 ; WX 1042 ; N uni2639 ; G 3609 -U 9786 ; WX 1042 ; N smileface ; G 3610 -U 9787 ; WX 1042 ; N invsmileface ; G 3611 -U 9788 ; WX 896 ; N sun ; G 3612 -U 9789 ; WX 896 ; N uni263D ; G 3613 -U 9790 ; WX 896 ; N uni263E ; G 3614 -U 9791 ; WX 614 ; N uni263F ; G 3615 -U 9792 ; WX 732 ; N female ; G 3616 -U 9793 ; WX 732 ; N uni2641 ; G 3617 -U 9794 ; WX 896 ; N male ; G 3618 -U 9795 ; WX 896 ; N uni2643 ; G 3619 -U 9796 ; WX 896 ; N uni2644 ; G 3620 -U 9797 ; WX 896 ; N uni2645 ; G 3621 -U 9798 ; WX 896 ; N uni2646 ; G 3622 -U 9799 ; WX 896 ; N uni2647 ; G 3623 -U 9800 ; WX 896 ; N uni2648 ; G 3624 -U 9801 ; WX 896 ; N uni2649 ; G 3625 -U 9802 ; WX 896 ; N uni264A ; G 3626 -U 9803 ; WX 896 ; N uni264B ; G 3627 -U 9804 ; WX 896 ; N uni264C ; G 3628 -U 9805 ; WX 896 ; N uni264D ; G 3629 -U 9806 ; WX 896 ; N uni264E ; G 3630 -U 9807 ; WX 896 ; N uni264F ; G 3631 -U 9808 ; WX 896 ; N uni2650 ; G 3632 -U 9809 ; WX 896 ; N uni2651 ; G 3633 -U 9810 ; WX 896 ; N uni2652 ; G 3634 -U 9811 ; WX 896 ; N uni2653 ; G 3635 -U 9812 ; WX 896 ; N uni2654 ; G 3636 -U 9813 ; WX 896 ; N uni2655 ; G 3637 -U 9814 ; WX 896 ; N uni2656 ; G 3638 -U 9815 ; WX 896 ; N uni2657 ; G 3639 -U 9816 ; WX 896 ; N uni2658 ; G 3640 -U 9817 ; WX 896 ; N uni2659 ; G 3641 -U 9818 ; WX 896 ; N uni265A ; G 3642 -U 9819 ; WX 896 ; N uni265B ; G 3643 -U 9820 ; WX 896 ; N uni265C ; G 3644 -U 9821 ; WX 896 ; N uni265D ; G 3645 -U 9822 ; WX 896 ; N uni265E ; G 3646 -U 9823 ; WX 896 ; N uni265F ; G 3647 -U 9824 ; WX 896 ; N spade ; G 3648 -U 9825 ; WX 896 ; N uni2661 ; G 3649 -U 9826 ; WX 896 ; N uni2662 ; G 3650 -U 9827 ; WX 896 ; N club ; G 3651 -U 9828 ; WX 896 ; N uni2664 ; G 3652 -U 9829 ; WX 896 ; N heart ; G 3653 -U 9830 ; WX 896 ; N diamond ; G 3654 -U 9831 ; WX 896 ; N uni2667 ; G 3655 -U 9832 ; WX 896 ; N uni2668 ; G 3656 -U 9833 ; WX 472 ; N uni2669 ; G 3657 -U 9834 ; WX 638 ; N musicalnote ; G 3658 -U 9835 ; WX 896 ; N musicalnotedbl ; G 3659 -U 9836 ; WX 896 ; N uni266C ; G 3660 -U 9837 ; WX 472 ; N uni266D ; G 3661 -U 9838 ; WX 357 ; N uni266E ; G 3662 -U 9839 ; WX 484 ; N uni266F ; G 3663 -U 9840 ; WX 748 ; N uni2670 ; G 3664 -U 9841 ; WX 766 ; N uni2671 ; G 3665 -U 9842 ; WX 896 ; N uni2672 ; G 3666 -U 9843 ; WX 896 ; N uni2673 ; G 3667 -U 9844 ; WX 896 ; N uni2674 ; G 3668 -U 9845 ; WX 896 ; N uni2675 ; G 3669 -U 9846 ; WX 896 ; N uni2676 ; G 3670 -U 9847 ; WX 896 ; N uni2677 ; G 3671 -U 9848 ; WX 896 ; N uni2678 ; G 3672 -U 9849 ; WX 896 ; N uni2679 ; G 3673 -U 9850 ; WX 896 ; N uni267A ; G 3674 -U 9851 ; WX 896 ; N uni267B ; G 3675 -U 9852 ; WX 896 ; N uni267C ; G 3676 -U 9853 ; WX 896 ; N uni267D ; G 3677 -U 9854 ; WX 896 ; N uni267E ; G 3678 -U 9855 ; WX 896 ; N uni267F ; G 3679 -U 9856 ; WX 869 ; N uni2680 ; G 3680 -U 9857 ; WX 869 ; N uni2681 ; G 3681 -U 9858 ; WX 869 ; N uni2682 ; G 3682 -U 9859 ; WX 869 ; N uni2683 ; G 3683 -U 9860 ; WX 869 ; N uni2684 ; G 3684 -U 9861 ; WX 869 ; N uni2685 ; G 3685 -U 9862 ; WX 890 ; N uni2686 ; G 3686 -U 9863 ; WX 890 ; N uni2687 ; G 3687 -U 9864 ; WX 890 ; N uni2688 ; G 3688 -U 9865 ; WX 890 ; N uni2689 ; G 3689 -U 9866 ; WX 890 ; N uni268A ; G 3690 -U 9867 ; WX 890 ; N uni268B ; G 3691 -U 9868 ; WX 890 ; N uni268C ; G 3692 -U 9869 ; WX 890 ; N uni268D ; G 3693 -U 9870 ; WX 890 ; N uni268E ; G 3694 -U 9871 ; WX 890 ; N uni268F ; G 3695 -U 9872 ; WX 750 ; N uni2690 ; G 3696 -U 9873 ; WX 750 ; N uni2691 ; G 3697 -U 9874 ; WX 890 ; N uni2692 ; G 3698 -U 9875 ; WX 816 ; N uni2693 ; G 3699 -U 9876 ; WX 716 ; N uni2694 ; G 3700 -U 9877 ; WX 537 ; N uni2695 ; G 3701 -U 9878 ; WX 852 ; N uni2696 ; G 3702 -U 9879 ; WX 890 ; N uni2697 ; G 3703 -U 9880 ; WX 684 ; N uni2698 ; G 3704 -U 9881 ; WX 896 ; N uni2699 ; G 3705 -U 9882 ; WX 708 ; N uni269A ; G 3706 -U 9883 ; WX 890 ; N uni269B ; G 3707 -U 9884 ; WX 890 ; N uni269C ; G 3708 -U 9886 ; WX 896 ; N uni269E ; G 3709 -U 9887 ; WX 896 ; N uni269F ; G 3710 -U 9888 ; WX 890 ; N uni26A0 ; G 3711 -U 9889 ; WX 702 ; N uni26A1 ; G 3712 -U 9890 ; WX 1004 ; N uni26A2 ; G 3713 -U 9891 ; WX 1089 ; N uni26A3 ; G 3714 -U 9892 ; WX 1175 ; N uni26A4 ; G 3715 -U 9893 ; WX 903 ; N uni26A5 ; G 3716 -U 9894 ; WX 838 ; N uni26A6 ; G 3717 -U 9895 ; WX 838 ; N uni26A7 ; G 3718 -U 9896 ; WX 838 ; N uni26A8 ; G 3719 -U 9897 ; WX 838 ; N uni26A9 ; G 3720 -U 9898 ; WX 838 ; N uni26AA ; G 3721 -U 9899 ; WX 838 ; N uni26AB ; G 3722 -U 9900 ; WX 838 ; N uni26AC ; G 3723 -U 9901 ; WX 838 ; N uni26AD ; G 3724 -U 9902 ; WX 838 ; N uni26AE ; G 3725 -U 9903 ; WX 838 ; N uni26AF ; G 3726 -U 9904 ; WX 844 ; N uni26B0 ; G 3727 -U 9905 ; WX 838 ; N uni26B1 ; G 3728 -U 9906 ; WX 732 ; N uni26B2 ; G 3729 -U 9907 ; WX 732 ; N uni26B3 ; G 3730 -U 9908 ; WX 732 ; N uni26B4 ; G 3731 -U 9909 ; WX 732 ; N uni26B5 ; G 3732 -U 9910 ; WX 850 ; N uni26B6 ; G 3733 -U 9911 ; WX 732 ; N uni26B7 ; G 3734 -U 9912 ; WX 732 ; N uni26B8 ; G 3735 -U 9920 ; WX 838 ; N uni26C0 ; G 3736 -U 9921 ; WX 838 ; N uni26C1 ; G 3737 -U 9922 ; WX 838 ; N uni26C2 ; G 3738 -U 9923 ; WX 838 ; N uni26C3 ; G 3739 -U 9954 ; WX 732 ; N uni26E2 ; G 3740 -U 9985 ; WX 838 ; N uni2701 ; G 3741 -U 9986 ; WX 838 ; N uni2702 ; G 3742 -U 9987 ; WX 838 ; N uni2703 ; G 3743 -U 9988 ; WX 838 ; N uni2704 ; G 3744 -U 9990 ; WX 838 ; N uni2706 ; G 3745 -U 9991 ; WX 838 ; N uni2707 ; G 3746 -U 9992 ; WX 838 ; N uni2708 ; G 3747 -U 9993 ; WX 838 ; N uni2709 ; G 3748 -U 9996 ; WX 838 ; N uni270C ; G 3749 -U 9997 ; WX 838 ; N uni270D ; G 3750 -U 9998 ; WX 838 ; N uni270E ; G 3751 -U 9999 ; WX 838 ; N uni270F ; G 3752 -U 10000 ; WX 838 ; N uni2710 ; G 3753 -U 10001 ; WX 838 ; N uni2711 ; G 3754 -U 10002 ; WX 838 ; N uni2712 ; G 3755 -U 10003 ; WX 838 ; N uni2713 ; G 3756 -U 10004 ; WX 838 ; N uni2714 ; G 3757 -U 10005 ; WX 838 ; N uni2715 ; G 3758 -U 10006 ; WX 838 ; N uni2716 ; G 3759 -U 10007 ; WX 838 ; N uni2717 ; G 3760 -U 10008 ; WX 838 ; N uni2718 ; G 3761 -U 10009 ; WX 838 ; N uni2719 ; G 3762 -U 10010 ; WX 838 ; N uni271A ; G 3763 -U 10011 ; WX 838 ; N uni271B ; G 3764 -U 10012 ; WX 838 ; N uni271C ; G 3765 -U 10013 ; WX 838 ; N uni271D ; G 3766 -U 10014 ; WX 838 ; N uni271E ; G 3767 -U 10015 ; WX 838 ; N uni271F ; G 3768 -U 10016 ; WX 838 ; N uni2720 ; G 3769 -U 10017 ; WX 838 ; N uni2721 ; G 3770 -U 10018 ; WX 838 ; N uni2722 ; G 3771 -U 10019 ; WX 838 ; N uni2723 ; G 3772 -U 10020 ; WX 838 ; N uni2724 ; G 3773 -U 10021 ; WX 838 ; N uni2725 ; G 3774 -U 10022 ; WX 838 ; N uni2726 ; G 3775 -U 10023 ; WX 838 ; N uni2727 ; G 3776 -U 10025 ; WX 838 ; N uni2729 ; G 3777 -U 10026 ; WX 838 ; N uni272A ; G 3778 -U 10027 ; WX 838 ; N uni272B ; G 3779 -U 10028 ; WX 838 ; N uni272C ; G 3780 -U 10029 ; WX 838 ; N uni272D ; G 3781 -U 10030 ; WX 838 ; N uni272E ; G 3782 -U 10031 ; WX 838 ; N uni272F ; G 3783 -U 10032 ; WX 838 ; N uni2730 ; G 3784 -U 10033 ; WX 838 ; N uni2731 ; G 3785 -U 10034 ; WX 838 ; N uni2732 ; G 3786 -U 10035 ; WX 838 ; N uni2733 ; G 3787 -U 10036 ; WX 838 ; N uni2734 ; G 3788 -U 10037 ; WX 838 ; N uni2735 ; G 3789 -U 10038 ; WX 838 ; N uni2736 ; G 3790 -U 10039 ; WX 838 ; N uni2737 ; G 3791 -U 10040 ; WX 838 ; N uni2738 ; G 3792 -U 10041 ; WX 838 ; N uni2739 ; G 3793 -U 10042 ; WX 838 ; N uni273A ; G 3794 -U 10043 ; WX 838 ; N uni273B ; G 3795 -U 10044 ; WX 838 ; N uni273C ; G 3796 -U 10045 ; WX 838 ; N uni273D ; G 3797 -U 10046 ; WX 838 ; N uni273E ; G 3798 -U 10047 ; WX 838 ; N uni273F ; G 3799 -U 10048 ; WX 838 ; N uni2740 ; G 3800 -U 10049 ; WX 838 ; N uni2741 ; G 3801 -U 10050 ; WX 838 ; N uni2742 ; G 3802 -U 10051 ; WX 838 ; N uni2743 ; G 3803 -U 10052 ; WX 838 ; N uni2744 ; G 3804 -U 10053 ; WX 838 ; N uni2745 ; G 3805 -U 10054 ; WX 838 ; N uni2746 ; G 3806 -U 10055 ; WX 838 ; N uni2747 ; G 3807 -U 10056 ; WX 838 ; N uni2748 ; G 3808 -U 10057 ; WX 838 ; N uni2749 ; G 3809 -U 10058 ; WX 838 ; N uni274A ; G 3810 -U 10059 ; WX 838 ; N uni274B ; G 3811 -U 10061 ; WX 896 ; N uni274D ; G 3812 -U 10063 ; WX 896 ; N uni274F ; G 3813 -U 10064 ; WX 896 ; N uni2750 ; G 3814 -U 10065 ; WX 896 ; N uni2751 ; G 3815 -U 10066 ; WX 896 ; N uni2752 ; G 3816 -U 10070 ; WX 896 ; N uni2756 ; G 3817 -U 10072 ; WX 838 ; N uni2758 ; G 3818 -U 10073 ; WX 838 ; N uni2759 ; G 3819 -U 10074 ; WX 838 ; N uni275A ; G 3820 -U 10075 ; WX 322 ; N uni275B ; G 3821 -U 10076 ; WX 322 ; N uni275C ; G 3822 -U 10077 ; WX 538 ; N uni275D ; G 3823 -U 10078 ; WX 538 ; N uni275E ; G 3824 -U 10081 ; WX 838 ; N uni2761 ; G 3825 -U 10082 ; WX 838 ; N uni2762 ; G 3826 -U 10083 ; WX 838 ; N uni2763 ; G 3827 -U 10084 ; WX 838 ; N uni2764 ; G 3828 -U 10085 ; WX 838 ; N uni2765 ; G 3829 -U 10086 ; WX 838 ; N uni2766 ; G 3830 -U 10087 ; WX 838 ; N uni2767 ; G 3831 -U 10088 ; WX 838 ; N uni2768 ; G 3832 -U 10089 ; WX 838 ; N uni2769 ; G 3833 -U 10090 ; WX 838 ; N uni276A ; G 3834 -U 10091 ; WX 838 ; N uni276B ; G 3835 -U 10092 ; WX 838 ; N uni276C ; G 3836 -U 10093 ; WX 838 ; N uni276D ; G 3837 -U 10094 ; WX 838 ; N uni276E ; G 3838 -U 10095 ; WX 838 ; N uni276F ; G 3839 -U 10096 ; WX 838 ; N uni2770 ; G 3840 -U 10097 ; WX 838 ; N uni2771 ; G 3841 -U 10098 ; WX 838 ; N uni2772 ; G 3842 -U 10099 ; WX 838 ; N uni2773 ; G 3843 -U 10100 ; WX 838 ; N uni2774 ; G 3844 -U 10101 ; WX 838 ; N uni2775 ; G 3845 -U 10102 ; WX 896 ; N uni2776 ; G 3846 -U 10103 ; WX 896 ; N uni2777 ; G 3847 -U 10104 ; WX 896 ; N uni2778 ; G 3848 -U 10105 ; WX 896 ; N uni2779 ; G 3849 -U 10106 ; WX 896 ; N uni277A ; G 3850 -U 10107 ; WX 896 ; N uni277B ; G 3851 -U 10108 ; WX 896 ; N uni277C ; G 3852 -U 10109 ; WX 896 ; N uni277D ; G 3853 -U 10110 ; WX 896 ; N uni277E ; G 3854 -U 10111 ; WX 896 ; N uni277F ; G 3855 -U 10112 ; WX 838 ; N uni2780 ; G 3856 -U 10113 ; WX 838 ; N uni2781 ; G 3857 -U 10114 ; WX 838 ; N uni2782 ; G 3858 -U 10115 ; WX 838 ; N uni2783 ; G 3859 -U 10116 ; WX 838 ; N uni2784 ; G 3860 -U 10117 ; WX 838 ; N uni2785 ; G 3861 -U 10118 ; WX 838 ; N uni2786 ; G 3862 -U 10119 ; WX 838 ; N uni2787 ; G 3863 -U 10120 ; WX 838 ; N uni2788 ; G 3864 -U 10121 ; WX 838 ; N uni2789 ; G 3865 -U 10122 ; WX 838 ; N uni278A ; G 3866 -U 10123 ; WX 838 ; N uni278B ; G 3867 -U 10124 ; WX 838 ; N uni278C ; G 3868 -U 10125 ; WX 838 ; N uni278D ; G 3869 -U 10126 ; WX 838 ; N uni278E ; G 3870 -U 10127 ; WX 838 ; N uni278F ; G 3871 -U 10128 ; WX 838 ; N uni2790 ; G 3872 -U 10129 ; WX 838 ; N uni2791 ; G 3873 -U 10130 ; WX 838 ; N uni2792 ; G 3874 -U 10131 ; WX 838 ; N uni2793 ; G 3875 -U 10132 ; WX 838 ; N uni2794 ; G 3876 -U 10136 ; WX 838 ; N uni2798 ; G 3877 -U 10137 ; WX 838 ; N uni2799 ; G 3878 -U 10138 ; WX 838 ; N uni279A ; G 3879 -U 10139 ; WX 838 ; N uni279B ; G 3880 -U 10140 ; WX 838 ; N uni279C ; G 3881 -U 10141 ; WX 838 ; N uni279D ; G 3882 -U 10142 ; WX 838 ; N uni279E ; G 3883 -U 10143 ; WX 838 ; N uni279F ; G 3884 -U 10144 ; WX 838 ; N uni27A0 ; G 3885 -U 10145 ; WX 838 ; N uni27A1 ; G 3886 -U 10146 ; WX 838 ; N uni27A2 ; G 3887 -U 10147 ; WX 838 ; N uni27A3 ; G 3888 -U 10148 ; WX 838 ; N uni27A4 ; G 3889 -U 10149 ; WX 838 ; N uni27A5 ; G 3890 -U 10150 ; WX 838 ; N uni27A6 ; G 3891 -U 10151 ; WX 838 ; N uni27A7 ; G 3892 -U 10152 ; WX 838 ; N uni27A8 ; G 3893 -U 10153 ; WX 838 ; N uni27A9 ; G 3894 -U 10154 ; WX 838 ; N uni27AA ; G 3895 -U 10155 ; WX 838 ; N uni27AB ; G 3896 -U 10156 ; WX 838 ; N uni27AC ; G 3897 -U 10157 ; WX 838 ; N uni27AD ; G 3898 -U 10158 ; WX 838 ; N uni27AE ; G 3899 -U 10159 ; WX 838 ; N uni27AF ; G 3900 -U 10161 ; WX 838 ; N uni27B1 ; G 3901 -U 10162 ; WX 838 ; N uni27B2 ; G 3902 -U 10163 ; WX 838 ; N uni27B3 ; G 3903 -U 10164 ; WX 838 ; N uni27B4 ; G 3904 -U 10165 ; WX 838 ; N uni27B5 ; G 3905 -U 10166 ; WX 838 ; N uni27B6 ; G 3906 -U 10167 ; WX 838 ; N uni27B7 ; G 3907 -U 10168 ; WX 838 ; N uni27B8 ; G 3908 -U 10169 ; WX 838 ; N uni27B9 ; G 3909 -U 10170 ; WX 838 ; N uni27BA ; G 3910 -U 10171 ; WX 838 ; N uni27BB ; G 3911 -U 10172 ; WX 838 ; N uni27BC ; G 3912 -U 10173 ; WX 838 ; N uni27BD ; G 3913 -U 10174 ; WX 838 ; N uni27BE ; G 3914 -U 10181 ; WX 390 ; N uni27C5 ; G 3915 -U 10182 ; WX 390 ; N uni27C6 ; G 3916 -U 10208 ; WX 494 ; N uni27E0 ; G 3917 -U 10214 ; WX 495 ; N uni27E6 ; G 3918 -U 10215 ; WX 495 ; N uni27E7 ; G 3919 -U 10216 ; WX 390 ; N uni27E8 ; G 3920 -U 10217 ; WX 390 ; N uni27E9 ; G 3921 -U 10218 ; WX 556 ; N uni27EA ; G 3922 -U 10219 ; WX 556 ; N uni27EB ; G 3923 -U 10224 ; WX 838 ; N uni27F0 ; G 3924 -U 10225 ; WX 838 ; N uni27F1 ; G 3925 -U 10226 ; WX 838 ; N uni27F2 ; G 3926 -U 10227 ; WX 838 ; N uni27F3 ; G 3927 -U 10228 ; WX 1157 ; N uni27F4 ; G 3928 -U 10229 ; WX 1434 ; N uni27F5 ; G 3929 -U 10230 ; WX 1434 ; N uni27F6 ; G 3930 -U 10231 ; WX 1434 ; N uni27F7 ; G 3931 -U 10232 ; WX 1434 ; N uni27F8 ; G 3932 -U 10233 ; WX 1434 ; N uni27F9 ; G 3933 -U 10234 ; WX 1434 ; N uni27FA ; G 3934 -U 10235 ; WX 1434 ; N uni27FB ; G 3935 -U 10236 ; WX 1434 ; N uni27FC ; G 3936 -U 10237 ; WX 1434 ; N uni27FD ; G 3937 -U 10238 ; WX 1434 ; N uni27FE ; G 3938 -U 10239 ; WX 1434 ; N uni27FF ; G 3939 -U 10240 ; WX 732 ; N uni2800 ; G 3940 -U 10241 ; WX 732 ; N uni2801 ; G 3941 -U 10242 ; WX 732 ; N uni2802 ; G 3942 -U 10243 ; WX 732 ; N uni2803 ; G 3943 -U 10244 ; WX 732 ; N uni2804 ; G 3944 -U 10245 ; WX 732 ; N uni2805 ; G 3945 -U 10246 ; WX 732 ; N uni2806 ; G 3946 -U 10247 ; WX 732 ; N uni2807 ; G 3947 -U 10248 ; WX 732 ; N uni2808 ; G 3948 -U 10249 ; WX 732 ; N uni2809 ; G 3949 -U 10250 ; WX 732 ; N uni280A ; G 3950 -U 10251 ; WX 732 ; N uni280B ; G 3951 -U 10252 ; WX 732 ; N uni280C ; G 3952 -U 10253 ; WX 732 ; N uni280D ; G 3953 -U 10254 ; WX 732 ; N uni280E ; G 3954 -U 10255 ; WX 732 ; N uni280F ; G 3955 -U 10256 ; WX 732 ; N uni2810 ; G 3956 -U 10257 ; WX 732 ; N uni2811 ; G 3957 -U 10258 ; WX 732 ; N uni2812 ; G 3958 -U 10259 ; WX 732 ; N uni2813 ; G 3959 -U 10260 ; WX 732 ; N uni2814 ; G 3960 -U 10261 ; WX 732 ; N uni2815 ; G 3961 -U 10262 ; WX 732 ; N uni2816 ; G 3962 -U 10263 ; WX 732 ; N uni2817 ; G 3963 -U 10264 ; WX 732 ; N uni2818 ; G 3964 -U 10265 ; WX 732 ; N uni2819 ; G 3965 -U 10266 ; WX 732 ; N uni281A ; G 3966 -U 10267 ; WX 732 ; N uni281B ; G 3967 -U 10268 ; WX 732 ; N uni281C ; G 3968 -U 10269 ; WX 732 ; N uni281D ; G 3969 -U 10270 ; WX 732 ; N uni281E ; G 3970 -U 10271 ; WX 732 ; N uni281F ; G 3971 -U 10272 ; WX 732 ; N uni2820 ; G 3972 -U 10273 ; WX 732 ; N uni2821 ; G 3973 -U 10274 ; WX 732 ; N uni2822 ; G 3974 -U 10275 ; WX 732 ; N uni2823 ; G 3975 -U 10276 ; WX 732 ; N uni2824 ; G 3976 -U 10277 ; WX 732 ; N uni2825 ; G 3977 -U 10278 ; WX 732 ; N uni2826 ; G 3978 -U 10279 ; WX 732 ; N uni2827 ; G 3979 -U 10280 ; WX 732 ; N uni2828 ; G 3980 -U 10281 ; WX 732 ; N uni2829 ; G 3981 -U 10282 ; WX 732 ; N uni282A ; G 3982 -U 10283 ; WX 732 ; N uni282B ; G 3983 -U 10284 ; WX 732 ; N uni282C ; G 3984 -U 10285 ; WX 732 ; N uni282D ; G 3985 -U 10286 ; WX 732 ; N uni282E ; G 3986 -U 10287 ; WX 732 ; N uni282F ; G 3987 -U 10288 ; WX 732 ; N uni2830 ; G 3988 -U 10289 ; WX 732 ; N uni2831 ; G 3989 -U 10290 ; WX 732 ; N uni2832 ; G 3990 -U 10291 ; WX 732 ; N uni2833 ; G 3991 -U 10292 ; WX 732 ; N uni2834 ; G 3992 -U 10293 ; WX 732 ; N uni2835 ; G 3993 -U 10294 ; WX 732 ; N uni2836 ; G 3994 -U 10295 ; WX 732 ; N uni2837 ; G 3995 -U 10296 ; WX 732 ; N uni2838 ; G 3996 -U 10297 ; WX 732 ; N uni2839 ; G 3997 -U 10298 ; WX 732 ; N uni283A ; G 3998 -U 10299 ; WX 732 ; N uni283B ; G 3999 -U 10300 ; WX 732 ; N uni283C ; G 4000 -U 10301 ; WX 732 ; N uni283D ; G 4001 -U 10302 ; WX 732 ; N uni283E ; G 4002 -U 10303 ; WX 732 ; N uni283F ; G 4003 -U 10304 ; WX 732 ; N uni2840 ; G 4004 -U 10305 ; WX 732 ; N uni2841 ; G 4005 -U 10306 ; WX 732 ; N uni2842 ; G 4006 -U 10307 ; WX 732 ; N uni2843 ; G 4007 -U 10308 ; WX 732 ; N uni2844 ; G 4008 -U 10309 ; WX 732 ; N uni2845 ; G 4009 -U 10310 ; WX 732 ; N uni2846 ; G 4010 -U 10311 ; WX 732 ; N uni2847 ; G 4011 -U 10312 ; WX 732 ; N uni2848 ; G 4012 -U 10313 ; WX 732 ; N uni2849 ; G 4013 -U 10314 ; WX 732 ; N uni284A ; G 4014 -U 10315 ; WX 732 ; N uni284B ; G 4015 -U 10316 ; WX 732 ; N uni284C ; G 4016 -U 10317 ; WX 732 ; N uni284D ; G 4017 -U 10318 ; WX 732 ; N uni284E ; G 4018 -U 10319 ; WX 732 ; N uni284F ; G 4019 -U 10320 ; WX 732 ; N uni2850 ; G 4020 -U 10321 ; WX 732 ; N uni2851 ; G 4021 -U 10322 ; WX 732 ; N uni2852 ; G 4022 -U 10323 ; WX 732 ; N uni2853 ; G 4023 -U 10324 ; WX 732 ; N uni2854 ; G 4024 -U 10325 ; WX 732 ; N uni2855 ; G 4025 -U 10326 ; WX 732 ; N uni2856 ; G 4026 -U 10327 ; WX 732 ; N uni2857 ; G 4027 -U 10328 ; WX 732 ; N uni2858 ; G 4028 -U 10329 ; WX 732 ; N uni2859 ; G 4029 -U 10330 ; WX 732 ; N uni285A ; G 4030 -U 10331 ; WX 732 ; N uni285B ; G 4031 -U 10332 ; WX 732 ; N uni285C ; G 4032 -U 10333 ; WX 732 ; N uni285D ; G 4033 -U 10334 ; WX 732 ; N uni285E ; G 4034 -U 10335 ; WX 732 ; N uni285F ; G 4035 -U 10336 ; WX 732 ; N uni2860 ; G 4036 -U 10337 ; WX 732 ; N uni2861 ; G 4037 -U 10338 ; WX 732 ; N uni2862 ; G 4038 -U 10339 ; WX 732 ; N uni2863 ; G 4039 -U 10340 ; WX 732 ; N uni2864 ; G 4040 -U 10341 ; WX 732 ; N uni2865 ; G 4041 -U 10342 ; WX 732 ; N uni2866 ; G 4042 -U 10343 ; WX 732 ; N uni2867 ; G 4043 -U 10344 ; WX 732 ; N uni2868 ; G 4044 -U 10345 ; WX 732 ; N uni2869 ; G 4045 -U 10346 ; WX 732 ; N uni286A ; G 4046 -U 10347 ; WX 732 ; N uni286B ; G 4047 -U 10348 ; WX 732 ; N uni286C ; G 4048 -U 10349 ; WX 732 ; N uni286D ; G 4049 -U 10350 ; WX 732 ; N uni286E ; G 4050 -U 10351 ; WX 732 ; N uni286F ; G 4051 -U 10352 ; WX 732 ; N uni2870 ; G 4052 -U 10353 ; WX 732 ; N uni2871 ; G 4053 -U 10354 ; WX 732 ; N uni2872 ; G 4054 -U 10355 ; WX 732 ; N uni2873 ; G 4055 -U 10356 ; WX 732 ; N uni2874 ; G 4056 -U 10357 ; WX 732 ; N uni2875 ; G 4057 -U 10358 ; WX 732 ; N uni2876 ; G 4058 -U 10359 ; WX 732 ; N uni2877 ; G 4059 -U 10360 ; WX 732 ; N uni2878 ; G 4060 -U 10361 ; WX 732 ; N uni2879 ; G 4061 -U 10362 ; WX 732 ; N uni287A ; G 4062 -U 10363 ; WX 732 ; N uni287B ; G 4063 -U 10364 ; WX 732 ; N uni287C ; G 4064 -U 10365 ; WX 732 ; N uni287D ; G 4065 -U 10366 ; WX 732 ; N uni287E ; G 4066 -U 10367 ; WX 732 ; N uni287F ; G 4067 -U 10368 ; WX 732 ; N uni2880 ; G 4068 -U 10369 ; WX 732 ; N uni2881 ; G 4069 -U 10370 ; WX 732 ; N uni2882 ; G 4070 -U 10371 ; WX 732 ; N uni2883 ; G 4071 -U 10372 ; WX 732 ; N uni2884 ; G 4072 -U 10373 ; WX 732 ; N uni2885 ; G 4073 -U 10374 ; WX 732 ; N uni2886 ; G 4074 -U 10375 ; WX 732 ; N uni2887 ; G 4075 -U 10376 ; WX 732 ; N uni2888 ; G 4076 -U 10377 ; WX 732 ; N uni2889 ; G 4077 -U 10378 ; WX 732 ; N uni288A ; G 4078 -U 10379 ; WX 732 ; N uni288B ; G 4079 -U 10380 ; WX 732 ; N uni288C ; G 4080 -U 10381 ; WX 732 ; N uni288D ; G 4081 -U 10382 ; WX 732 ; N uni288E ; G 4082 -U 10383 ; WX 732 ; N uni288F ; G 4083 -U 10384 ; WX 732 ; N uni2890 ; G 4084 -U 10385 ; WX 732 ; N uni2891 ; G 4085 -U 10386 ; WX 732 ; N uni2892 ; G 4086 -U 10387 ; WX 732 ; N uni2893 ; G 4087 -U 10388 ; WX 732 ; N uni2894 ; G 4088 -U 10389 ; WX 732 ; N uni2895 ; G 4089 -U 10390 ; WX 732 ; N uni2896 ; G 4090 -U 10391 ; WX 732 ; N uni2897 ; G 4091 -U 10392 ; WX 732 ; N uni2898 ; G 4092 -U 10393 ; WX 732 ; N uni2899 ; G 4093 -U 10394 ; WX 732 ; N uni289A ; G 4094 -U 10395 ; WX 732 ; N uni289B ; G 4095 -U 10396 ; WX 732 ; N uni289C ; G 4096 -U 10397 ; WX 732 ; N uni289D ; G 4097 -U 10398 ; WX 732 ; N uni289E ; G 4098 -U 10399 ; WX 732 ; N uni289F ; G 4099 -U 10400 ; WX 732 ; N uni28A0 ; G 4100 -U 10401 ; WX 732 ; N uni28A1 ; G 4101 -U 10402 ; WX 732 ; N uni28A2 ; G 4102 -U 10403 ; WX 732 ; N uni28A3 ; G 4103 -U 10404 ; WX 732 ; N uni28A4 ; G 4104 -U 10405 ; WX 732 ; N uni28A5 ; G 4105 -U 10406 ; WX 732 ; N uni28A6 ; G 4106 -U 10407 ; WX 732 ; N uni28A7 ; G 4107 -U 10408 ; WX 732 ; N uni28A8 ; G 4108 -U 10409 ; WX 732 ; N uni28A9 ; G 4109 -U 10410 ; WX 732 ; N uni28AA ; G 4110 -U 10411 ; WX 732 ; N uni28AB ; G 4111 -U 10412 ; WX 732 ; N uni28AC ; G 4112 -U 10413 ; WX 732 ; N uni28AD ; G 4113 -U 10414 ; WX 732 ; N uni28AE ; G 4114 -U 10415 ; WX 732 ; N uni28AF ; G 4115 -U 10416 ; WX 732 ; N uni28B0 ; G 4116 -U 10417 ; WX 732 ; N uni28B1 ; G 4117 -U 10418 ; WX 732 ; N uni28B2 ; G 4118 -U 10419 ; WX 732 ; N uni28B3 ; G 4119 -U 10420 ; WX 732 ; N uni28B4 ; G 4120 -U 10421 ; WX 732 ; N uni28B5 ; G 4121 -U 10422 ; WX 732 ; N uni28B6 ; G 4122 -U 10423 ; WX 732 ; N uni28B7 ; G 4123 -U 10424 ; WX 732 ; N uni28B8 ; G 4124 -U 10425 ; WX 732 ; N uni28B9 ; G 4125 -U 10426 ; WX 732 ; N uni28BA ; G 4126 -U 10427 ; WX 732 ; N uni28BB ; G 4127 -U 10428 ; WX 732 ; N uni28BC ; G 4128 -U 10429 ; WX 732 ; N uni28BD ; G 4129 -U 10430 ; WX 732 ; N uni28BE ; G 4130 -U 10431 ; WX 732 ; N uni28BF ; G 4131 -U 10432 ; WX 732 ; N uni28C0 ; G 4132 -U 10433 ; WX 732 ; N uni28C1 ; G 4133 -U 10434 ; WX 732 ; N uni28C2 ; G 4134 -U 10435 ; WX 732 ; N uni28C3 ; G 4135 -U 10436 ; WX 732 ; N uni28C4 ; G 4136 -U 10437 ; WX 732 ; N uni28C5 ; G 4137 -U 10438 ; WX 732 ; N uni28C6 ; G 4138 -U 10439 ; WX 732 ; N uni28C7 ; G 4139 -U 10440 ; WX 732 ; N uni28C8 ; G 4140 -U 10441 ; WX 732 ; N uni28C9 ; G 4141 -U 10442 ; WX 732 ; N uni28CA ; G 4142 -U 10443 ; WX 732 ; N uni28CB ; G 4143 -U 10444 ; WX 732 ; N uni28CC ; G 4144 -U 10445 ; WX 732 ; N uni28CD ; G 4145 -U 10446 ; WX 732 ; N uni28CE ; G 4146 -U 10447 ; WX 732 ; N uni28CF ; G 4147 -U 10448 ; WX 732 ; N uni28D0 ; G 4148 -U 10449 ; WX 732 ; N uni28D1 ; G 4149 -U 10450 ; WX 732 ; N uni28D2 ; G 4150 -U 10451 ; WX 732 ; N uni28D3 ; G 4151 -U 10452 ; WX 732 ; N uni28D4 ; G 4152 -U 10453 ; WX 732 ; N uni28D5 ; G 4153 -U 10454 ; WX 732 ; N uni28D6 ; G 4154 -U 10455 ; WX 732 ; N uni28D7 ; G 4155 -U 10456 ; WX 732 ; N uni28D8 ; G 4156 -U 10457 ; WX 732 ; N uni28D9 ; G 4157 -U 10458 ; WX 732 ; N uni28DA ; G 4158 -U 10459 ; WX 732 ; N uni28DB ; G 4159 -U 10460 ; WX 732 ; N uni28DC ; G 4160 -U 10461 ; WX 732 ; N uni28DD ; G 4161 -U 10462 ; WX 732 ; N uni28DE ; G 4162 -U 10463 ; WX 732 ; N uni28DF ; G 4163 -U 10464 ; WX 732 ; N uni28E0 ; G 4164 -U 10465 ; WX 732 ; N uni28E1 ; G 4165 -U 10466 ; WX 732 ; N uni28E2 ; G 4166 -U 10467 ; WX 732 ; N uni28E3 ; G 4167 -U 10468 ; WX 732 ; N uni28E4 ; G 4168 -U 10469 ; WX 732 ; N uni28E5 ; G 4169 -U 10470 ; WX 732 ; N uni28E6 ; G 4170 -U 10471 ; WX 732 ; N uni28E7 ; G 4171 -U 10472 ; WX 732 ; N uni28E8 ; G 4172 -U 10473 ; WX 732 ; N uni28E9 ; G 4173 -U 10474 ; WX 732 ; N uni28EA ; G 4174 -U 10475 ; WX 732 ; N uni28EB ; G 4175 -U 10476 ; WX 732 ; N uni28EC ; G 4176 -U 10477 ; WX 732 ; N uni28ED ; G 4177 -U 10478 ; WX 732 ; N uni28EE ; G 4178 -U 10479 ; WX 732 ; N uni28EF ; G 4179 -U 10480 ; WX 732 ; N uni28F0 ; G 4180 -U 10481 ; WX 732 ; N uni28F1 ; G 4181 -U 10482 ; WX 732 ; N uni28F2 ; G 4182 -U 10483 ; WX 732 ; N uni28F3 ; G 4183 -U 10484 ; WX 732 ; N uni28F4 ; G 4184 -U 10485 ; WX 732 ; N uni28F5 ; G 4185 -U 10486 ; WX 732 ; N uni28F6 ; G 4186 -U 10487 ; WX 732 ; N uni28F7 ; G 4187 -U 10488 ; WX 732 ; N uni28F8 ; G 4188 -U 10489 ; WX 732 ; N uni28F9 ; G 4189 -U 10490 ; WX 732 ; N uni28FA ; G 4190 -U 10491 ; WX 732 ; N uni28FB ; G 4191 -U 10492 ; WX 732 ; N uni28FC ; G 4192 -U 10493 ; WX 732 ; N uni28FD ; G 4193 -U 10494 ; WX 732 ; N uni28FE ; G 4194 -U 10495 ; WX 732 ; N uni28FF ; G 4195 -U 10502 ; WX 838 ; N uni2906 ; G 4196 -U 10503 ; WX 838 ; N uni2907 ; G 4197 -U 10506 ; WX 838 ; N uni290A ; G 4198 -U 10507 ; WX 838 ; N uni290B ; G 4199 -U 10560 ; WX 683 ; N uni2940 ; G 4200 -U 10561 ; WX 683 ; N uni2941 ; G 4201 -U 10627 ; WX 734 ; N uni2983 ; G 4202 -U 10628 ; WX 734 ; N uni2984 ; G 4203 -U 10702 ; WX 838 ; N uni29CE ; G 4204 -U 10703 ; WX 1000 ; N uni29CF ; G 4205 -U 10704 ; WX 1000 ; N uni29D0 ; G 4206 -U 10705 ; WX 1000 ; N uni29D1 ; G 4207 -U 10706 ; WX 1000 ; N uni29D2 ; G 4208 -U 10707 ; WX 1000 ; N uni29D3 ; G 4209 -U 10708 ; WX 1000 ; N uni29D4 ; G 4210 -U 10709 ; WX 1000 ; N uni29D5 ; G 4211 -U 10731 ; WX 494 ; N uni29EB ; G 4212 -U 10746 ; WX 838 ; N uni29FA ; G 4213 -U 10747 ; WX 838 ; N uni29FB ; G 4214 -U 10752 ; WX 1000 ; N uni2A00 ; G 4215 -U 10753 ; WX 1000 ; N uni2A01 ; G 4216 -U 10754 ; WX 1000 ; N uni2A02 ; G 4217 -U 10764 ; WX 1325 ; N uni2A0C ; G 4218 -U 10765 ; WX 521 ; N uni2A0D ; G 4219 -U 10766 ; WX 521 ; N uni2A0E ; G 4220 -U 10767 ; WX 521 ; N uni2A0F ; G 4221 -U 10768 ; WX 521 ; N uni2A10 ; G 4222 -U 10769 ; WX 521 ; N uni2A11 ; G 4223 -U 10770 ; WX 521 ; N uni2A12 ; G 4224 -U 10771 ; WX 521 ; N uni2A13 ; G 4225 -U 10772 ; WX 521 ; N uni2A14 ; G 4226 -U 10773 ; WX 521 ; N uni2A15 ; G 4227 -U 10774 ; WX 521 ; N uni2A16 ; G 4228 -U 10775 ; WX 521 ; N uni2A17 ; G 4229 -U 10776 ; WX 521 ; N uni2A18 ; G 4230 -U 10777 ; WX 521 ; N uni2A19 ; G 4231 -U 10778 ; WX 521 ; N uni2A1A ; G 4232 -U 10779 ; WX 521 ; N uni2A1B ; G 4233 -U 10780 ; WX 521 ; N uni2A1C ; G 4234 -U 10799 ; WX 838 ; N uni2A2F ; G 4235 -U 10858 ; WX 838 ; N uni2A6A ; G 4236 -U 10859 ; WX 838 ; N uni2A6B ; G 4237 -U 10877 ; WX 838 ; N uni2A7D ; G 4238 -U 10878 ; WX 838 ; N uni2A7E ; G 4239 -U 10879 ; WX 838 ; N uni2A7F ; G 4240 -U 10880 ; WX 838 ; N uni2A80 ; G 4241 -U 10881 ; WX 838 ; N uni2A81 ; G 4242 -U 10882 ; WX 838 ; N uni2A82 ; G 4243 -U 10883 ; WX 838 ; N uni2A83 ; G 4244 -U 10884 ; WX 838 ; N uni2A84 ; G 4245 -U 10885 ; WX 838 ; N uni2A85 ; G 4246 -U 10886 ; WX 838 ; N uni2A86 ; G 4247 -U 10887 ; WX 838 ; N uni2A87 ; G 4248 -U 10888 ; WX 838 ; N uni2A88 ; G 4249 -U 10889 ; WX 838 ; N uni2A89 ; G 4250 -U 10890 ; WX 838 ; N uni2A8A ; G 4251 -U 10891 ; WX 838 ; N uni2A8B ; G 4252 -U 10892 ; WX 838 ; N uni2A8C ; G 4253 -U 10893 ; WX 838 ; N uni2A8D ; G 4254 -U 10894 ; WX 838 ; N uni2A8E ; G 4255 -U 10895 ; WX 838 ; N uni2A8F ; G 4256 -U 10896 ; WX 838 ; N uni2A90 ; G 4257 -U 10897 ; WX 838 ; N uni2A91 ; G 4258 -U 10898 ; WX 838 ; N uni2A92 ; G 4259 -U 10899 ; WX 838 ; N uni2A93 ; G 4260 -U 10900 ; WX 838 ; N uni2A94 ; G 4261 -U 10901 ; WX 838 ; N uni2A95 ; G 4262 -U 10902 ; WX 838 ; N uni2A96 ; G 4263 -U 10903 ; WX 838 ; N uni2A97 ; G 4264 -U 10904 ; WX 838 ; N uni2A98 ; G 4265 -U 10905 ; WX 838 ; N uni2A99 ; G 4266 -U 10906 ; WX 838 ; N uni2A9A ; G 4267 -U 10907 ; WX 838 ; N uni2A9B ; G 4268 -U 10908 ; WX 838 ; N uni2A9C ; G 4269 -U 10909 ; WX 838 ; N uni2A9D ; G 4270 -U 10910 ; WX 838 ; N uni2A9E ; G 4271 -U 10911 ; WX 838 ; N uni2A9F ; G 4272 -U 10912 ; WX 838 ; N uni2AA0 ; G 4273 -U 10926 ; WX 838 ; N uni2AAE ; G 4274 -U 10927 ; WX 838 ; N uni2AAF ; G 4275 -U 10928 ; WX 838 ; N uni2AB0 ; G 4276 -U 10929 ; WX 838 ; N uni2AB1 ; G 4277 -U 10930 ; WX 838 ; N uni2AB2 ; G 4278 -U 10931 ; WX 838 ; N uni2AB3 ; G 4279 -U 10932 ; WX 838 ; N uni2AB4 ; G 4280 -U 10933 ; WX 838 ; N uni2AB5 ; G 4281 -U 10934 ; WX 838 ; N uni2AB6 ; G 4282 -U 10935 ; WX 838 ; N uni2AB7 ; G 4283 -U 10936 ; WX 838 ; N uni2AB8 ; G 4284 -U 10937 ; WX 838 ; N uni2AB9 ; G 4285 -U 10938 ; WX 838 ; N uni2ABA ; G 4286 -U 11001 ; WX 838 ; N uni2AF9 ; G 4287 -U 11002 ; WX 838 ; N uni2AFA ; G 4288 -U 11008 ; WX 838 ; N uni2B00 ; G 4289 -U 11009 ; WX 838 ; N uni2B01 ; G 4290 -U 11010 ; WX 838 ; N uni2B02 ; G 4291 -U 11011 ; WX 838 ; N uni2B03 ; G 4292 -U 11012 ; WX 838 ; N uni2B04 ; G 4293 -U 11013 ; WX 838 ; N uni2B05 ; G 4294 -U 11014 ; WX 838 ; N uni2B06 ; G 4295 -U 11015 ; WX 838 ; N uni2B07 ; G 4296 -U 11016 ; WX 838 ; N uni2B08 ; G 4297 -U 11017 ; WX 838 ; N uni2B09 ; G 4298 -U 11018 ; WX 838 ; N uni2B0A ; G 4299 -U 11019 ; WX 838 ; N uni2B0B ; G 4300 -U 11020 ; WX 838 ; N uni2B0C ; G 4301 -U 11021 ; WX 838 ; N uni2B0D ; G 4302 -U 11022 ; WX 836 ; N uni2B0E ; G 4303 -U 11023 ; WX 836 ; N uni2B0F ; G 4304 -U 11024 ; WX 836 ; N uni2B10 ; G 4305 -U 11025 ; WX 836 ; N uni2B11 ; G 4306 -U 11026 ; WX 945 ; N uni2B12 ; G 4307 -U 11027 ; WX 945 ; N uni2B13 ; G 4308 -U 11028 ; WX 945 ; N uni2B14 ; G 4309 -U 11029 ; WX 945 ; N uni2B15 ; G 4310 -U 11030 ; WX 769 ; N uni2B16 ; G 4311 -U 11031 ; WX 769 ; N uni2B17 ; G 4312 -U 11032 ; WX 769 ; N uni2B18 ; G 4313 -U 11033 ; WX 769 ; N uni2B19 ; G 4314 -U 11034 ; WX 945 ; N uni2B1A ; G 4315 -U 11039 ; WX 869 ; N uni2B1F ; G 4316 -U 11040 ; WX 869 ; N uni2B20 ; G 4317 -U 11041 ; WX 873 ; N uni2B21 ; G 4318 -U 11042 ; WX 873 ; N uni2B22 ; G 4319 -U 11043 ; WX 873 ; N uni2B23 ; G 4320 -U 11044 ; WX 1119 ; N uni2B24 ; G 4321 -U 11091 ; WX 869 ; N uni2B53 ; G 4322 -U 11092 ; WX 869 ; N uni2B54 ; G 4323 -U 11360 ; WX 557 ; N uni2C60 ; G 4324 -U 11361 ; WX 278 ; N uni2C61 ; G 4325 -U 11362 ; WX 557 ; N uni2C62 ; G 4326 -U 11363 ; WX 603 ; N uni2C63 ; G 4327 -U 11364 ; WX 695 ; N uni2C64 ; G 4328 -U 11365 ; WX 613 ; N uni2C65 ; G 4329 -U 11366 ; WX 392 ; N uni2C66 ; G 4330 -U 11367 ; WX 752 ; N uni2C67 ; G 4331 -U 11368 ; WX 634 ; N uni2C68 ; G 4332 -U 11369 ; WX 656 ; N uni2C69 ; G 4333 -U 11370 ; WX 579 ; N uni2C6A ; G 4334 -U 11371 ; WX 685 ; N uni2C6B ; G 4335 -U 11372 ; WX 525 ; N uni2C6C ; G 4336 -U 11373 ; WX 781 ; N uni2C6D ; G 4337 -U 11374 ; WX 863 ; N uni2C6E ; G 4338 -U 11375 ; WX 684 ; N uni2C6F ; G 4339 -U 11376 ; WX 781 ; N uni2C70 ; G 4340 -U 11377 ; WX 734 ; N uni2C71 ; G 4341 -U 11378 ; WX 1128 ; N uni2C72 ; G 4342 -U 11379 ; WX 961 ; N uni2C73 ; G 4343 -U 11380 ; WX 592 ; N uni2C74 ; G 4344 -U 11381 ; WX 654 ; N uni2C75 ; G 4345 -U 11382 ; WX 568 ; N uni2C76 ; G 4346 -U 11383 ; WX 660 ; N uni2C77 ; G 4347 -U 11385 ; WX 414 ; N uni2C79 ; G 4348 -U 11386 ; WX 612 ; N uni2C7A ; G 4349 -U 11387 ; WX 491 ; N uni2C7B ; G 4350 -U 11388 ; WX 175 ; N uni2C7C ; G 4351 -U 11389 ; WX 431 ; N uni2C7D ; G 4352 -U 11390 ; WX 635 ; N uni2C7E ; G 4353 -U 11391 ; WX 685 ; N uni2C7F ; G 4354 -U 11520 ; WX 591 ; N uni2D00 ; G 4355 -U 11521 ; WX 595 ; N uni2D01 ; G 4356 -U 11522 ; WX 564 ; N uni2D02 ; G 4357 -U 11523 ; WX 602 ; N uni2D03 ; G 4358 -U 11524 ; WX 587 ; N uni2D04 ; G 4359 -U 11525 ; WX 911 ; N uni2D05 ; G 4360 -U 11526 ; WX 626 ; N uni2D06 ; G 4361 -U 11527 ; WX 952 ; N uni2D07 ; G 4362 -U 11528 ; WX 595 ; N uni2D08 ; G 4363 -U 11529 ; WX 607 ; N uni2D09 ; G 4364 -U 11530 ; WX 954 ; N uni2D0A ; G 4365 -U 11531 ; WX 620 ; N uni2D0B ; G 4366 -U 11532 ; WX 595 ; N uni2D0C ; G 4367 -U 11533 ; WX 926 ; N uni2D0D ; G 4368 -U 11534 ; WX 595 ; N uni2D0E ; G 4369 -U 11535 ; WX 806 ; N uni2D0F ; G 4370 -U 11536 ; WX 931 ; N uni2D10 ; G 4371 -U 11537 ; WX 584 ; N uni2D11 ; G 4372 -U 11538 ; WX 592 ; N uni2D12 ; G 4373 -U 11539 ; WX 923 ; N uni2D13 ; G 4374 -U 11540 ; WX 953 ; N uni2D14 ; G 4375 -U 11541 ; WX 828 ; N uni2D15 ; G 4376 -U 11542 ; WX 596 ; N uni2D16 ; G 4377 -U 11543 ; WX 595 ; N uni2D17 ; G 4378 -U 11544 ; WX 590 ; N uni2D18 ; G 4379 -U 11545 ; WX 592 ; N uni2D19 ; G 4380 -U 11546 ; WX 592 ; N uni2D1A ; G 4381 -U 11547 ; WX 621 ; N uni2D1B ; G 4382 -U 11548 ; WX 920 ; N uni2D1C ; G 4383 -U 11549 ; WX 589 ; N uni2D1D ; G 4384 -U 11550 ; WX 586 ; N uni2D1E ; G 4385 -U 11551 ; WX 581 ; N uni2D1F ; G 4386 -U 11552 ; WX 914 ; N uni2D20 ; G 4387 -U 11553 ; WX 596 ; N uni2D21 ; G 4388 -U 11554 ; WX 595 ; N uni2D22 ; G 4389 -U 11555 ; WX 592 ; N uni2D23 ; G 4390 -U 11556 ; WX 642 ; N uni2D24 ; G 4391 -U 11557 ; WX 901 ; N uni2D25 ; G 4392 -U 11800 ; WX 531 ; N uni2E18 ; G 4393 -U 11807 ; WX 838 ; N uni2E1F ; G 4394 -U 11810 ; WX 390 ; N uni2E22 ; G 4395 -U 11811 ; WX 390 ; N uni2E23 ; G 4396 -U 11812 ; WX 390 ; N uni2E24 ; G 4397 -U 11813 ; WX 390 ; N uni2E25 ; G 4398 -U 11822 ; WX 531 ; N uni2E2E ; G 4399 -U 19904 ; WX 896 ; N uni4DC0 ; G 4400 -U 19905 ; WX 896 ; N uni4DC1 ; G 4401 -U 19906 ; WX 896 ; N uni4DC2 ; G 4402 -U 19907 ; WX 896 ; N uni4DC3 ; G 4403 -U 19908 ; WX 896 ; N uni4DC4 ; G 4404 -U 19909 ; WX 896 ; N uni4DC5 ; G 4405 -U 19910 ; WX 896 ; N uni4DC6 ; G 4406 -U 19911 ; WX 896 ; N uni4DC7 ; G 4407 -U 19912 ; WX 896 ; N uni4DC8 ; G 4408 -U 19913 ; WX 896 ; N uni4DC9 ; G 4409 -U 19914 ; WX 896 ; N uni4DCA ; G 4410 -U 19915 ; WX 896 ; N uni4DCB ; G 4411 -U 19916 ; WX 896 ; N uni4DCC ; G 4412 -U 19917 ; WX 896 ; N uni4DCD ; G 4413 -U 19918 ; WX 896 ; N uni4DCE ; G 4414 -U 19919 ; WX 896 ; N uni4DCF ; G 4415 -U 19920 ; WX 896 ; N uni4DD0 ; G 4416 -U 19921 ; WX 896 ; N uni4DD1 ; G 4417 -U 19922 ; WX 896 ; N uni4DD2 ; G 4418 -U 19923 ; WX 896 ; N uni4DD3 ; G 4419 -U 19924 ; WX 896 ; N uni4DD4 ; G 4420 -U 19925 ; WX 896 ; N uni4DD5 ; G 4421 -U 19926 ; WX 896 ; N uni4DD6 ; G 4422 -U 19927 ; WX 896 ; N uni4DD7 ; G 4423 -U 19928 ; WX 896 ; N uni4DD8 ; G 4424 -U 19929 ; WX 896 ; N uni4DD9 ; G 4425 -U 19930 ; WX 896 ; N uni4DDA ; G 4426 -U 19931 ; WX 896 ; N uni4DDB ; G 4427 -U 19932 ; WX 896 ; N uni4DDC ; G 4428 -U 19933 ; WX 896 ; N uni4DDD ; G 4429 -U 19934 ; WX 896 ; N uni4DDE ; G 4430 -U 19935 ; WX 896 ; N uni4DDF ; G 4431 -U 19936 ; WX 896 ; N uni4DE0 ; G 4432 -U 19937 ; WX 896 ; N uni4DE1 ; G 4433 -U 19938 ; WX 896 ; N uni4DE2 ; G 4434 -U 19939 ; WX 896 ; N uni4DE3 ; G 4435 -U 19940 ; WX 896 ; N uni4DE4 ; G 4436 -U 19941 ; WX 896 ; N uni4DE5 ; G 4437 -U 19942 ; WX 896 ; N uni4DE6 ; G 4438 -U 19943 ; WX 896 ; N uni4DE7 ; G 4439 -U 19944 ; WX 896 ; N uni4DE8 ; G 4440 -U 19945 ; WX 896 ; N uni4DE9 ; G 4441 -U 19946 ; WX 896 ; N uni4DEA ; G 4442 -U 19947 ; WX 896 ; N uni4DEB ; G 4443 -U 19948 ; WX 896 ; N uni4DEC ; G 4444 -U 19949 ; WX 896 ; N uni4DED ; G 4445 -U 19950 ; WX 896 ; N uni4DEE ; G 4446 -U 19951 ; WX 896 ; N uni4DEF ; G 4447 -U 19952 ; WX 896 ; N uni4DF0 ; G 4448 -U 19953 ; WX 896 ; N uni4DF1 ; G 4449 -U 19954 ; WX 896 ; N uni4DF2 ; G 4450 -U 19955 ; WX 896 ; N uni4DF3 ; G 4451 -U 19956 ; WX 896 ; N uni4DF4 ; G 4452 -U 19957 ; WX 896 ; N uni4DF5 ; G 4453 -U 19958 ; WX 896 ; N uni4DF6 ; G 4454 -U 19959 ; WX 896 ; N uni4DF7 ; G 4455 -U 19960 ; WX 896 ; N uni4DF8 ; G 4456 -U 19961 ; WX 896 ; N uni4DF9 ; G 4457 -U 19962 ; WX 896 ; N uni4DFA ; G 4458 -U 19963 ; WX 896 ; N uni4DFB ; G 4459 -U 19964 ; WX 896 ; N uni4DFC ; G 4460 -U 19965 ; WX 896 ; N uni4DFD ; G 4461 -U 19966 ; WX 896 ; N uni4DFE ; G 4462 -U 19967 ; WX 896 ; N uni4DFF ; G 4463 -U 42192 ; WX 686 ; N uniA4D0 ; G 4464 -U 42193 ; WX 603 ; N uniA4D1 ; G 4465 -U 42194 ; WX 603 ; N uniA4D2 ; G 4466 -U 42195 ; WX 770 ; N uniA4D3 ; G 4467 -U 42196 ; WX 611 ; N uniA4D4 ; G 4468 -U 42197 ; WX 611 ; N uniA4D5 ; G 4469 -U 42198 ; WX 775 ; N uniA4D6 ; G 4470 -U 42199 ; WX 656 ; N uniA4D7 ; G 4471 -U 42200 ; WX 656 ; N uniA4D8 ; G 4472 -U 42201 ; WX 512 ; N uniA4D9 ; G 4473 -U 42202 ; WX 698 ; N uniA4DA ; G 4474 -U 42203 ; WX 703 ; N uniA4DB ; G 4475 -U 42204 ; WX 685 ; N uniA4DC ; G 4476 -U 42205 ; WX 575 ; N uniA4DD ; G 4477 -U 42206 ; WX 575 ; N uniA4DE ; G 4478 -U 42207 ; WX 863 ; N uniA4DF ; G 4479 -U 42208 ; WX 748 ; N uniA4E0 ; G 4480 -U 42209 ; WX 557 ; N uniA4E1 ; G 4481 -U 42210 ; WX 635 ; N uniA4E2 ; G 4482 -U 42211 ; WX 695 ; N uniA4E3 ; G 4483 -U 42212 ; WX 695 ; N uniA4E4 ; G 4484 -U 42213 ; WX 684 ; N uniA4E5 ; G 4485 -U 42214 ; WX 684 ; N uniA4E6 ; G 4486 -U 42215 ; WX 752 ; N uniA4E7 ; G 4487 -U 42216 ; WX 775 ; N uniA4E8 ; G 4488 -U 42217 ; WX 512 ; N uniA4E9 ; G 4489 -U 42218 ; WX 989 ; N uniA4EA ; G 4490 -U 42219 ; WX 685 ; N uniA4EB ; G 4491 -U 42220 ; WX 611 ; N uniA4EC ; G 4492 -U 42221 ; WX 686 ; N uniA4ED ; G 4493 -U 42222 ; WX 684 ; N uniA4EE ; G 4494 -U 42223 ; WX 684 ; N uniA4EF ; G 4495 -U 42224 ; WX 632 ; N uniA4F0 ; G 4496 -U 42225 ; WX 632 ; N uniA4F1 ; G 4497 -U 42226 ; WX 295 ; N uniA4F2 ; G 4498 -U 42227 ; WX 787 ; N uniA4F3 ; G 4499 -U 42228 ; WX 732 ; N uniA4F4 ; G 4500 -U 42229 ; WX 732 ; N uniA4F5 ; G 4501 -U 42230 ; WX 557 ; N uniA4F6 ; G 4502 -U 42231 ; WX 767 ; N uniA4F7 ; G 4503 -U 42232 ; WX 300 ; N uniA4F8 ; G 4504 -U 42233 ; WX 300 ; N uniA4F9 ; G 4505 -U 42234 ; WX 596 ; N uniA4FA ; G 4506 -U 42235 ; WX 596 ; N uniA4FB ; G 4507 -U 42236 ; WX 300 ; N uniA4FC ; G 4508 -U 42237 ; WX 300 ; N uniA4FD ; G 4509 -U 42238 ; WX 588 ; N uniA4FE ; G 4510 -U 42239 ; WX 588 ; N uniA4FF ; G 4511 -U 42564 ; WX 635 ; N uniA644 ; G 4512 -U 42565 ; WX 521 ; N uniA645 ; G 4513 -U 42566 ; WX 354 ; N uniA646 ; G 4514 -U 42567 ; WX 338 ; N uniA647 ; G 4515 -U 42572 ; WX 1180 ; N uniA64C ; G 4516 -U 42573 ; WX 1028 ; N uniA64D ; G 4517 -U 42576 ; WX 1029 ; N uniA650 ; G 4518 -U 42577 ; WX 906 ; N uniA651 ; G 4519 -U 42580 ; WX 1080 ; N uniA654 ; G 4520 -U 42581 ; WX 842 ; N uniA655 ; G 4521 -U 42582 ; WX 985 ; N uniA656 ; G 4522 -U 42583 ; WX 847 ; N uniA657 ; G 4523 -U 42594 ; WX 1024 ; N uniA662 ; G 4524 -U 42595 ; WX 925 ; N uniA663 ; G 4525 -U 42596 ; WX 1014 ; N uniA664 ; G 4526 -U 42597 ; WX 900 ; N uniA665 ; G 4527 -U 42598 ; WX 863 ; N uniA666 ; G 4528 -U 42599 ; WX 1008 ; N uniA667 ; G 4529 -U 42600 ; WX 787 ; N uniA668 ; G 4530 -U 42601 ; WX 612 ; N uniA669 ; G 4531 -U 42602 ; WX 855 ; N uniA66A ; G 4532 -U 42603 ; WX 712 ; N uniA66B ; G 4533 -U 42604 ; WX 1358 ; N uniA66C ; G 4534 -U 42605 ; WX 1019 ; N uniA66D ; G 4535 -U 42606 ; WX 879 ; N uniA66E ; G 4536 -U 42634 ; WX 805 ; N uniA68A ; G 4537 -U 42635 ; WX 722 ; N uniA68B ; G 4538 -U 42636 ; WX 611 ; N uniA68C ; G 4539 -U 42637 ; WX 583 ; N uniA68D ; G 4540 -U 42644 ; WX 686 ; N uniA694 ; G 4541 -U 42645 ; WX 634 ; N uniA695 ; G 4542 -U 42648 ; WX 1358 ; N uniA698 ; G 4543 -U 42649 ; WX 1019 ; N uniA699 ; G 4544 -U 42760 ; WX 493 ; N uniA708 ; G 4545 -U 42761 ; WX 493 ; N uniA709 ; G 4546 -U 42762 ; WX 493 ; N uniA70A ; G 4547 -U 42763 ; WX 493 ; N uniA70B ; G 4548 -U 42764 ; WX 493 ; N uniA70C ; G 4549 -U 42765 ; WX 493 ; N uniA70D ; G 4550 -U 42766 ; WX 493 ; N uniA70E ; G 4551 -U 42767 ; WX 493 ; N uniA70F ; G 4552 -U 42768 ; WX 493 ; N uniA710 ; G 4553 -U 42769 ; WX 493 ; N uniA711 ; G 4554 -U 42770 ; WX 493 ; N uniA712 ; G 4555 -U 42771 ; WX 493 ; N uniA713 ; G 4556 -U 42772 ; WX 493 ; N uniA714 ; G 4557 -U 42773 ; WX 493 ; N uniA715 ; G 4558 -U 42774 ; WX 493 ; N uniA716 ; G 4559 -U 42779 ; WX 369 ; N uniA71B ; G 4560 -U 42780 ; WX 369 ; N uniA71C ; G 4561 -U 42781 ; WX 252 ; N uniA71D ; G 4562 -U 42782 ; WX 252 ; N uniA71E ; G 4563 -U 42783 ; WX 252 ; N uniA71F ; G 4564 -U 42786 ; WX 385 ; N uniA722 ; G 4565 -U 42787 ; WX 356 ; N uniA723 ; G 4566 -U 42788 ; WX 472 ; N uniA724 ; G 4567 -U 42789 ; WX 472 ; N uniA725 ; G 4568 -U 42790 ; WX 752 ; N uniA726 ; G 4569 -U 42791 ; WX 634 ; N uniA727 ; G 4570 -U 42792 ; WX 878 ; N uniA728 ; G 4571 -U 42793 ; WX 709 ; N uniA729 ; G 4572 -U 42794 ; WX 614 ; N uniA72A ; G 4573 -U 42795 ; WX 541 ; N uniA72B ; G 4574 -U 42800 ; WX 491 ; N uniA730 ; G 4575 -U 42801 ; WX 521 ; N uniA731 ; G 4576 -U 42802 ; WX 1250 ; N uniA732 ; G 4577 -U 42803 ; WX 985 ; N uniA733 ; G 4578 -U 42804 ; WX 1219 ; N uniA734 ; G 4579 -U 42805 ; WX 1000 ; N uniA735 ; G 4580 -U 42806 ; WX 1155 ; N uniA736 ; G 4581 -U 42807 ; WX 996 ; N uniA737 ; G 4582 -U 42808 ; WX 971 ; N uniA738 ; G 4583 -U 42809 ; WX 818 ; N uniA739 ; G 4584 -U 42810 ; WX 971 ; N uniA73A ; G 4585 -U 42811 ; WX 818 ; N uniA73B ; G 4586 -U 42812 ; WX 959 ; N uniA73C ; G 4587 -U 42813 ; WX 818 ; N uniA73D ; G 4588 -U 42814 ; WX 698 ; N uniA73E ; G 4589 -U 42815 ; WX 549 ; N uniA73F ; G 4590 -U 42816 ; WX 656 ; N uniA740 ; G 4591 -U 42817 ; WX 579 ; N uniA741 ; G 4592 -U 42822 ; WX 680 ; N uniA746 ; G 4593 -U 42823 ; WX 392 ; N uniA747 ; G 4594 -U 42824 ; WX 582 ; N uniA748 ; G 4595 -U 42825 ; WX 427 ; N uniA749 ; G 4596 -U 42826 ; WX 807 ; N uniA74A ; G 4597 -U 42827 ; WX 704 ; N uniA74B ; G 4598 -U 42830 ; WX 1358 ; N uniA74E ; G 4599 -U 42831 ; WX 1019 ; N uniA74F ; G 4600 -U 42832 ; WX 603 ; N uniA750 ; G 4601 -U 42833 ; WX 635 ; N uniA751 ; G 4602 -U 42834 ; WX 734 ; N uniA752 ; G 4603 -U 42835 ; WX 774 ; N uniA753 ; G 4604 -U 42838 ; WX 787 ; N uniA756 ; G 4605 -U 42839 ; WX 635 ; N uniA757 ; G 4606 -U 42852 ; WX 605 ; N uniA764 ; G 4607 -U 42853 ; WX 635 ; N uniA765 ; G 4608 -U 42854 ; WX 605 ; N uniA766 ; G 4609 -U 42855 ; WX 635 ; N uniA767 ; G 4610 -U 42880 ; WX 557 ; N uniA780 ; G 4611 -U 42881 ; WX 278 ; N uniA781 ; G 4612 -U 42882 ; WX 735 ; N uniA782 ; G 4613 -U 42883 ; WX 634 ; N uniA783 ; G 4614 -U 42889 ; WX 337 ; N uniA789 ; G 4615 -U 42890 ; WX 376 ; N uniA78A ; G 4616 -U 42891 ; WX 401 ; N uniA78B ; G 4617 -U 42892 ; WX 275 ; N uniA78C ; G 4618 -U 42893 ; WX 686 ; N uniA78D ; G 4619 -U 42894 ; WX 487 ; N uniA78E ; G 4620 -U 42896 ; WX 772 ; N uniA790 ; G 4621 -U 42897 ; WX 667 ; N uniA791 ; G 4622 -U 42912 ; WX 775 ; N uniA7A0 ; G 4623 -U 42913 ; WX 635 ; N uniA7A1 ; G 4624 -U 42914 ; WX 656 ; N uniA7A2 ; G 4625 -U 42915 ; WX 579 ; N uniA7A3 ; G 4626 -U 42916 ; WX 748 ; N uniA7A4 ; G 4627 -U 42917 ; WX 634 ; N uniA7A5 ; G 4628 -U 42918 ; WX 695 ; N uniA7A6 ; G 4629 -U 42919 ; WX 411 ; N uniA7A7 ; G 4630 -U 42920 ; WX 635 ; N uniA7A8 ; G 4631 -U 42921 ; WX 521 ; N uniA7A9 ; G 4632 -U 42922 ; WX 872 ; N uniA7AA ; G 4633 -U 43000 ; WX 577 ; N uniA7F8 ; G 4634 -U 43001 ; WX 644 ; N uniA7F9 ; G 4635 -U 43002 ; WX 915 ; N uniA7FA ; G 4636 -U 43003 ; WX 575 ; N uniA7FB ; G 4637 -U 43004 ; WX 603 ; N uniA7FC ; G 4638 -U 43005 ; WX 863 ; N uniA7FD ; G 4639 -U 43006 ; WX 295 ; N uniA7FE ; G 4640 -U 43007 ; WX 1199 ; N uniA7FF ; G 4641 -U 61184 ; WX 213 ; N uni02E5.5 ; G 4642 -U 61185 ; WX 238 ; N uni02E6.5 ; G 4643 -U 61186 ; WX 257 ; N uni02E7.5 ; G 4644 -U 61187 ; WX 264 ; N uni02E8.5 ; G 4645 -U 61188 ; WX 267 ; N uni02E9.5 ; G 4646 -U 61189 ; WX 238 ; N uni02E5.4 ; G 4647 -U 61190 ; WX 213 ; N uni02E6.4 ; G 4648 -U 61191 ; WX 238 ; N uni02E7.4 ; G 4649 -U 61192 ; WX 257 ; N uni02E8.4 ; G 4650 -U 61193 ; WX 264 ; N uni02E9.4 ; G 4651 -U 61194 ; WX 257 ; N uni02E5.3 ; G 4652 -U 61195 ; WX 238 ; N uni02E6.3 ; G 4653 -U 61196 ; WX 213 ; N uni02E7.3 ; G 4654 -U 61197 ; WX 238 ; N uni02E8.3 ; G 4655 -U 61198 ; WX 257 ; N uni02E9.3 ; G 4656 -U 61199 ; WX 264 ; N uni02E5.2 ; G 4657 -U 61200 ; WX 257 ; N uni02E6.2 ; G 4658 -U 61201 ; WX 238 ; N uni02E7.2 ; G 4659 -U 61202 ; WX 213 ; N uni02E8.2 ; G 4660 -U 61203 ; WX 238 ; N uni02E9.2 ; G 4661 -U 61204 ; WX 267 ; N uni02E5.1 ; G 4662 -U 61205 ; WX 264 ; N uni02E6.1 ; G 4663 -U 61206 ; WX 257 ; N uni02E7.1 ; G 4664 -U 61207 ; WX 238 ; N uni02E8.1 ; G 4665 -U 61208 ; WX 213 ; N uni02E9.1 ; G 4666 -U 61209 ; WX 275 ; N stem ; G 4667 -U 62464 ; WX 580 ; N uniF400 ; G 4668 -U 62465 ; WX 580 ; N uniF401 ; G 4669 -U 62466 ; WX 624 ; N uniF402 ; G 4670 -U 62467 ; WX 889 ; N uniF403 ; G 4671 -U 62468 ; WX 585 ; N uniF404 ; G 4672 -U 62469 ; WX 580 ; N uniF405 ; G 4673 -U 62470 ; WX 653 ; N uniF406 ; G 4674 -U 62471 ; WX 882 ; N uniF407 ; G 4675 -U 62472 ; WX 555 ; N uniF408 ; G 4676 -U 62473 ; WX 580 ; N uniF409 ; G 4677 -U 62474 ; WX 1168 ; N uniF40A ; G 4678 -U 62475 ; WX 589 ; N uniF40B ; G 4679 -U 62476 ; WX 590 ; N uniF40C ; G 4680 -U 62477 ; WX 869 ; N uniF40D ; G 4681 -U 62478 ; WX 580 ; N uniF40E ; G 4682 -U 62479 ; WX 589 ; N uniF40F ; G 4683 -U 62480 ; WX 914 ; N uniF410 ; G 4684 -U 62481 ; WX 590 ; N uniF411 ; G 4685 -U 62482 ; WX 731 ; N uniF412 ; G 4686 -U 62483 ; WX 583 ; N uniF413 ; G 4687 -U 62484 ; WX 872 ; N uniF414 ; G 4688 -U 62485 ; WX 589 ; N uniF415 ; G 4689 -U 62486 ; WX 895 ; N uniF416 ; G 4690 -U 62487 ; WX 589 ; N uniF417 ; G 4691 -U 62488 ; WX 589 ; N uniF418 ; G 4692 -U 62489 ; WX 590 ; N uniF419 ; G 4693 -U 62490 ; WX 649 ; N uniF41A ; G 4694 -U 62491 ; WX 589 ; N uniF41B ; G 4695 -U 62492 ; WX 589 ; N uniF41C ; G 4696 -U 62493 ; WX 599 ; N uniF41D ; G 4697 -U 62494 ; WX 590 ; N uniF41E ; G 4698 -U 62495 ; WX 516 ; N uniF41F ; G 4699 -U 62496 ; WX 580 ; N uniF420 ; G 4700 -U 62497 ; WX 584 ; N uniF421 ; G 4701 -U 62498 ; WX 580 ; N uniF422 ; G 4702 -U 62499 ; WX 580 ; N uniF423 ; G 4703 -U 62500 ; WX 581 ; N uniF424 ; G 4704 -U 62501 ; WX 638 ; N uniF425 ; G 4705 -U 62502 ; WX 955 ; N uniF426 ; G 4706 -U 62504 ; WX 931 ; N uniF428 ; G 4707 -U 62505 ; WX 808 ; N uniF429 ; G 4708 -U 62506 ; WX 508 ; N uniF42A ; G 4709 -U 62507 ; WX 508 ; N uniF42B ; G 4710 -U 62508 ; WX 508 ; N uniF42C ; G 4711 -U 62509 ; WX 508 ; N uniF42D ; G 4712 -U 62510 ; WX 508 ; N uniF42E ; G 4713 -U 62511 ; WX 508 ; N uniF42F ; G 4714 -U 62512 ; WX 508 ; N uniF430 ; G 4715 -U 62513 ; WX 508 ; N uniF431 ; G 4716 -U 62514 ; WX 508 ; N uniF432 ; G 4717 -U 62515 ; WX 508 ; N uniF433 ; G 4718 -U 62516 ; WX 518 ; N uniF434 ; G 4719 -U 62517 ; WX 518 ; N uniF435 ; G 4720 -U 62518 ; WX 518 ; N uniF436 ; G 4721 -U 62519 ; WX 787 ; N uniF437 ; G 4722 -U 62520 ; WX 787 ; N uniF438 ; G 4723 -U 62521 ; WX 787 ; N uniF439 ; G 4724 -U 62522 ; WX 787 ; N uniF43A ; G 4725 -U 62523 ; WX 787 ; N uniF43B ; G 4726 -U 62524 ; WX 546 ; N uniF43C ; G 4727 -U 62525 ; WX 546 ; N uniF43D ; G 4728 -U 62526 ; WX 546 ; N uniF43E ; G 4729 -U 62527 ; WX 546 ; N uniF43F ; G 4730 -U 62528 ; WX 546 ; N uniF440 ; G 4731 -U 62529 ; WX 546 ; N uniF441 ; G 4732 -U 63173 ; WX 612 ; N uniF6C5 ; G 4733 -U 64256 ; WX 722 ; N uniFB00 ; G 4734 -U 64257 ; WX 646 ; N fi ; G 4735 -U 64258 ; WX 646 ; N fl ; G 4736 -U 64259 ; WX 1000 ; N uniFB03 ; G 4737 -U 64260 ; WX 1000 ; N uniFB04 ; G 4738 -U 64261 ; WX 686 ; N uniFB05 ; G 4739 -U 64262 ; WX 861 ; N uniFB06 ; G 4740 -U 64275 ; WX 1202 ; N uniFB13 ; G 4741 -U 64276 ; WX 1202 ; N uniFB14 ; G 4742 -U 64277 ; WX 1196 ; N uniFB15 ; G 4743 -U 64278 ; WX 1186 ; N uniFB16 ; G 4744 -U 64279 ; WX 1529 ; N uniFB17 ; G 4745 -U 64285 ; WX 224 ; N uniFB1D ; G 4746 -U 64286 ; WX 0 ; N uniFB1E ; G 4747 -U 64287 ; WX 471 ; N uniFB1F ; G 4748 -U 64288 ; WX 636 ; N uniFB20 ; G 4749 -U 64289 ; WX 856 ; N uniFB21 ; G 4750 -U 64290 ; WX 774 ; N uniFB22 ; G 4751 -U 64291 ; WX 906 ; N uniFB23 ; G 4752 -U 64292 ; WX 771 ; N uniFB24 ; G 4753 -U 64293 ; WX 843 ; N uniFB25 ; G 4754 -U 64294 ; WX 855 ; N uniFB26 ; G 4755 -U 64295 ; WX 807 ; N uniFB27 ; G 4756 -U 64296 ; WX 875 ; N uniFB28 ; G 4757 -U 64297 ; WX 838 ; N uniFB29 ; G 4758 -U 64298 ; WX 708 ; N uniFB2A ; G 4759 -U 64299 ; WX 708 ; N uniFB2B ; G 4760 -U 64300 ; WX 708 ; N uniFB2C ; G 4761 -U 64301 ; WX 708 ; N uniFB2D ; G 4762 -U 64302 ; WX 668 ; N uniFB2E ; G 4763 -U 64303 ; WX 668 ; N uniFB2F ; G 4764 -U 64304 ; WX 668 ; N uniFB30 ; G 4765 -U 64305 ; WX 578 ; N uniFB31 ; G 4766 -U 64306 ; WX 412 ; N uniFB32 ; G 4767 -U 64307 ; WX 546 ; N uniFB33 ; G 4768 -U 64308 ; WX 653 ; N uniFB34 ; G 4769 -U 64309 ; WX 272 ; N uniFB35 ; G 4770 -U 64310 ; WX 346 ; N uniFB36 ; G 4771 -U 64311 ; WX 1000 ; N uniFB37 ; G 4772 -U 64312 ; WX 648 ; N uniFB38 ; G 4773 -U 64313 ; WX 307 ; N uniFB39 ; G 4774 -U 64314 ; WX 537 ; N uniFB3A ; G 4775 -U 64315 ; WX 529 ; N uniFB3B ; G 4776 -U 64316 ; WX 568 ; N uniFB3C ; G 4777 -U 64317 ; WX 1000 ; N uniFB3D ; G 4778 -U 64318 ; WX 679 ; N uniFB3E ; G 4779 -U 64319 ; WX 1000 ; N uniFB3F ; G 4780 -U 64320 ; WX 400 ; N uniFB40 ; G 4781 -U 64321 ; WX 649 ; N uniFB41 ; G 4782 -U 64322 ; WX 1000 ; N uniFB42 ; G 4783 -U 64323 ; WX 640 ; N uniFB43 ; G 4784 -U 64324 ; WX 625 ; N uniFB44 ; G 4785 -U 64325 ; WX 1000 ; N uniFB45 ; G 4786 -U 64326 ; WX 593 ; N uniFB46 ; G 4787 -U 64327 ; WX 709 ; N uniFB47 ; G 4788 -U 64328 ; WX 564 ; N uniFB48 ; G 4789 -U 64329 ; WX 708 ; N uniFB49 ; G 4790 -U 64330 ; WX 657 ; N uniFB4A ; G 4791 -U 64331 ; WX 272 ; N uniFB4B ; G 4792 -U 64332 ; WX 578 ; N uniFB4C ; G 4793 -U 64333 ; WX 529 ; N uniFB4D ; G 4794 -U 64334 ; WX 625 ; N uniFB4E ; G 4795 -U 64335 ; WX 629 ; N uniFB4F ; G 4796 -U 65024 ; WX 0 ; N uniFE00 ; G 4797 -U 65025 ; WX 0 ; N uniFE01 ; G 4798 -U 65026 ; WX 0 ; N uniFE02 ; G 4799 -U 65027 ; WX 0 ; N uniFE03 ; G 4800 -U 65028 ; WX 0 ; N uniFE04 ; G 4801 -U 65029 ; WX 0 ; N uniFE05 ; G 4802 -U 65030 ; WX 0 ; N uniFE06 ; G 4803 -U 65031 ; WX 0 ; N uniFE07 ; G 4804 -U 65032 ; WX 0 ; N uniFE08 ; G 4805 -U 65033 ; WX 0 ; N uniFE09 ; G 4806 -U 65034 ; WX 0 ; N uniFE0A ; G 4807 -U 65035 ; WX 0 ; N uniFE0B ; G 4808 -U 65036 ; WX 0 ; N uniFE0C ; G 4809 -U 65037 ; WX 0 ; N uniFE0D ; G 4810 -U 65038 ; WX 0 ; N uniFE0E ; G 4811 -U 65039 ; WX 0 ; N uniFE0F ; G 4812 -U 65056 ; WX 0 ; N uniFE20 ; G 4813 -U 65057 ; WX 0 ; N uniFE21 ; G 4814 -U 65058 ; WX 0 ; N uniFE22 ; G 4815 -U 65059 ; WX 0 ; N uniFE23 ; G 4816 -U 65529 ; WX 0 ; N uniFFF9 ; G 4817 -U 65530 ; WX 0 ; N uniFFFA ; G 4818 -U 65531 ; WX 0 ; N uniFFFB ; G 4819 -U 65532 ; WX 0 ; N uniFFFC ; G 4820 -U 65533 ; WX 1025 ; N uniFFFD ; G 4821 -EndCharMetrics -StartKernData -StartKernPairs 1029 - -KPX dollar seven -149 -KPX dollar nine -102 -KPX dollar colon -36 -KPX dollar Hcircumflex -149 -KPX dollar Hbar -149 -KPX dollar Kcommaaccent -36 -KPX dollar uni01DC -149 - -KPX percent less -36 -KPX percent kgreenlandic -36 -KPX percent lacute -36 -KPX percent uni01F4 -36 - -KPX ampersand six 38 -KPX ampersand Gcircumflex 38 -KPX ampersand Gbreve 38 -KPX ampersand Gdotaccent 38 -KPX ampersand Gcommaaccent 38 -KPX ampersand uni01DA 38 - -KPX parenright dollar -120 -KPX parenright X -83 -KPX parenright guillemotright -83 -KPX parenright onequarter -83 -KPX parenright onehalf -83 -KPX parenright threequarters -83 -KPX parenright Acircumflex -120 -KPX parenright Adieresis -120 -KPX parenright AE -120 -KPX parenright imacron -83 -KPX parenright ibreve -83 -KPX parenright iogonek -83 -KPX parenright dotlessi -83 -KPX parenright ij -83 -KPX parenright jcircumflex -83 - -KPX period ampersand -55 -KPX period two -55 -KPX period eight -36 -KPX period D -73 -KPX period H -73 -KPX period R -73 -KPX period X -55 -KPX period backslash -55 -KPX period cent -73 -KPX period sterling -73 -KPX period currency -73 -KPX period yen -73 -KPX period brokenbar -73 -KPX period section -73 -KPX period dieresis -36 -KPX period ordfeminine -73 -KPX period guillemotleft -73 -KPX period logicalnot -73 -KPX period sfthyphen -73 -KPX period acute -73 -KPX period mu -73 -KPX period paragraph -73 -KPX period periodcentered -73 -KPX period cedilla -73 -KPX period ordmasculine -92 -KPX period guillemotright -55 -KPX period onequarter -55 -KPX period onehalf -55 -KPX period threequarters -55 -KPX period questiondown -55 -KPX period Aacute -55 -KPX period Egrave -55 -KPX period Icircumflex -55 -KPX period Yacute -73 -KPX period Ebreve -55 -KPX period ebreve -92 -KPX period Idot -36 -KPX period dotlessi -55 - -KPX slash two -63 -KPX slash seven -139 -KPX slash nine -149 -KPX slash colon -83 -KPX slash less -196 -KPX slash backslash -73 -KPX slash questiondown -73 -KPX slash Aacute -73 -KPX slash Ebreve -63 -KPX slash Hbar -139 -KPX slash lacute -196 - -KPX two semicolon -55 - -KPX three dollar -102 - - -KPX six six -73 -KPX six Gdotaccent -73 -KPX six Gcommaaccent -73 - -KPX seven dollar -188 -KPX seven D -215 -KPX seven F -253 -KPX seven H -253 -KPX seven R -253 -KPX seven U -159 -KPX seven V -243 -KPX seven X -206 -KPX seven Z -167 -KPX seven backslash -178 -KPX seven cent -215 -KPX seven sterling -215 -KPX seven currency -215 -KPX seven yen -215 -KPX seven brokenbar -215 -KPX seven section -215 -KPX seven dieresis -253 -KPX seven copyright -253 -KPX seven ordfeminine -253 -KPX seven guillemotleft -253 -KPX seven logicalnot -253 -KPX seven sfthyphen -253 -KPX seven acute -253 -KPX seven mu -253 -KPX seven paragraph -253 -KPX seven periodcentered -253 -KPX seven cedilla -253 -KPX seven ordmasculine -253 -KPX seven guillemotright -206 -KPX seven onequarter -206 -KPX seven onehalf -206 -KPX seven threequarters -206 -KPX seven questiondown -178 -KPX seven Aacute -178 -KPX seven Eacute -253 -KPX seven Idieresis -253 -KPX seven Yacute -253 -KPX seven ebreve -253 -KPX seven edotaccent -159 -KPX seven ecaron -159 -KPX seven gdotaccent -243 -KPX seven gcommaaccent -243 -KPX seven dotlessi -206 - -KPX nine dollar -139 -KPX nine D -131 -KPX nine H -120 -KPX nine R -120 -KPX nine X -36 -KPX nine cent -131 -KPX nine sterling -131 -KPX nine currency -131 -KPX nine yen -131 -KPX nine brokenbar -131 -KPX nine section -131 -KPX nine dieresis -149 -KPX nine ordfeminine -120 -KPX nine guillemotleft -120 -KPX nine logicalnot -120 -KPX nine sfthyphen -120 -KPX nine acute -120 -KPX nine mu -120 -KPX nine paragraph -120 -KPX nine periodcentered -120 -KPX nine cedilla -120 -KPX nine ordmasculine -120 -KPX nine guillemotright -36 -KPX nine onequarter -36 -KPX nine onehalf -36 -KPX nine threequarters -36 -KPX nine Yacute -120 -KPX nine ebreve -120 -KPX nine dotlessi -36 - -KPX colon dollar -102 -KPX colon D -112 -KPX colon U -36 -KPX colon cent -112 -KPX colon sterling -112 -KPX colon currency -112 -KPX colon yen -112 -KPX colon brokenbar -112 -KPX colon section -112 -KPX colon dieresis -112 -KPX colon edotaccent -36 -KPX colon ecaron -36 - -KPX semicolon ampersand -36 -KPX semicolon two -73 -KPX semicolon Egrave -36 -KPX semicolon Icircumflex -36 -KPX semicolon Ebreve -55 - -KPX less dollar -159 -KPX less ampersand -36 -KPX less two -36 -KPX less D -188 -KPX less H -225 -KPX less L -36 -KPX less R -225 -KPX less X -188 -KPX less cent -188 -KPX less sterling -188 -KPX less currency -188 -KPX less yen -188 -KPX less brokenbar -188 -KPX less section -188 -KPX less dieresis -188 -KPX less ordfeminine -225 -KPX less guillemotleft -225 -KPX less logicalnot -225 -KPX less sfthyphen -225 -KPX less acute -225 -KPX less mu -225 -KPX less paragraph -225 -KPX less periodcentered -225 -KPX less cedilla -225 -KPX less ordmasculine -225 -KPX less guillemotright -188 -KPX less onequarter -188 -KPX less onehalf -188 -KPX less threequarters -188 -KPX less Egrave -36 -KPX less Icircumflex -36 -KPX less Yacute -225 -KPX less Ebreve -36 -KPX less ebreve -225 -KPX less dotlessi -188 - - - - - - - - - - -KPX Acircumflex seven -149 -KPX Acircumflex nine -102 -KPX Acircumflex colon -36 -KPX Acircumflex Hcircumflex -149 -KPX Acircumflex Hbar -149 -KPX Acircumflex Kcommaaccent -36 -KPX Acircumflex uni01DC -149 - -KPX Adieresis seven -149 -KPX Adieresis nine -102 -KPX Adieresis colon -36 -KPX Adieresis Hcircumflex -149 -KPX Adieresis Hbar -149 -KPX Adieresis Kcommaaccent -36 -KPX Adieresis uni01DC -149 - -KPX AE seven -149 -KPX AE nine -102 -KPX AE colon -36 -KPX AE Hcircumflex -149 -KPX AE Hbar -149 -KPX AE Kcommaaccent -36 -KPX AE uni01DC -149 - -KPX Egrave six 38 -KPX Egrave Gcircumflex 38 -KPX Egrave Gbreve 38 -KPX Egrave Gdotaccent 38 -KPX Egrave Gcommaaccent 38 -KPX Egrave uni01DA 38 - -KPX Ecircumflex six 38 -KPX Ecircumflex Gcircumflex 38 -KPX Ecircumflex Gbreve 38 -KPX Ecircumflex Gdotaccent 38 -KPX Ecircumflex Gcommaaccent 38 -KPX Ecircumflex uni01DA 38 - -KPX Igrave six 38 -KPX Igrave Gcircumflex 38 -KPX Igrave Gbreve 38 -KPX Igrave Gdotaccent 38 -KPX Igrave Gcommaaccent 38 -KPX Igrave uni01DA 38 - -KPX Icircumflex six 38 -KPX Icircumflex Gcircumflex 38 -KPX Icircumflex Gbreve 38 -KPX Icircumflex Gdotaccent 38 -KPX Icircumflex Gcommaaccent 38 -KPX Icircumflex uni01DA 38 - -KPX ucircumflex two -63 -KPX ucircumflex seven -139 -KPX ucircumflex nine -149 -KPX ucircumflex colon -83 -KPX ucircumflex less -196 -KPX ucircumflex backslash -73 -KPX ucircumflex questiondown -73 -KPX ucircumflex Aacute -73 -KPX ucircumflex Ebreve -63 -KPX ucircumflex Hbar -139 -KPX ucircumflex lacute -196 - -KPX ydieresis two -63 -KPX ydieresis seven -139 -KPX ydieresis nine -149 -KPX ydieresis colon -83 -KPX ydieresis less -196 -KPX ydieresis backslash -73 -KPX ydieresis questiondown -73 -KPX ydieresis Aacute -73 -KPX ydieresis Ebreve -63 -KPX ydieresis Hbar -139 -KPX ydieresis lacute -196 - -KPX abreve two -63 -KPX abreve seven -139 -KPX abreve nine -149 -KPX abreve colon -83 -KPX abreve less -196 -KPX abreve backslash -73 -KPX abreve questiondown -73 -KPX abreve Aacute -73 -KPX abreve Ebreve -63 -KPX abreve Hbar -139 -KPX abreve lacute -196 - - - -KPX Gdotaccent six -73 -KPX Gdotaccent Gdotaccent -73 -KPX Gdotaccent Gcommaaccent -73 - -KPX Gcommaaccent six -73 -KPX Gcommaaccent Gdotaccent -73 -KPX Gcommaaccent Gcommaaccent -73 - -KPX Hbar dollar -188 -KPX Hbar D -215 -KPX Hbar F -253 -KPX Hbar H -253 -KPX Hbar R -253 -KPX Hbar U -159 -KPX Hbar V -243 -KPX Hbar X -206 -KPX Hbar Z -167 -KPX Hbar backslash -178 -KPX Hbar cent -215 -KPX Hbar sterling -215 -KPX Hbar currency -215 -KPX Hbar yen -215 -KPX Hbar brokenbar -215 -KPX Hbar section -215 -KPX Hbar dieresis -253 -KPX Hbar copyright -253 -KPX Hbar ordfeminine -253 -KPX Hbar guillemotleft -253 -KPX Hbar logicalnot -253 -KPX Hbar sfthyphen -253 -KPX Hbar acute -253 -KPX Hbar mu -253 -KPX Hbar paragraph -253 -KPX Hbar periodcentered -253 -KPX Hbar cedilla -253 -KPX Hbar ordmasculine -253 -KPX Hbar guillemotright -206 -KPX Hbar onequarter -206 -KPX Hbar onehalf -206 -KPX Hbar threequarters -206 -KPX Hbar questiondown -178 -KPX Hbar Aacute -178 -KPX Hbar Eacute -253 -KPX Hbar Idieresis -253 -KPX Hbar Yacute -253 -KPX Hbar ebreve -253 -KPX Hbar edotaccent -159 -KPX Hbar ecaron -159 -KPX Hbar gdotaccent -243 -KPX Hbar gcommaaccent -243 -KPX Hbar dotlessi -206 - -KPX lacute dollar -159 -KPX lacute ampersand -36 -KPX lacute two -36 -KPX lacute D -188 -KPX lacute H -225 -KPX lacute L -36 -KPX lacute R -225 -KPX lacute X -188 -KPX lacute cent -188 -KPX lacute sterling -188 -KPX lacute currency -188 -KPX lacute yen -188 -KPX lacute brokenbar -188 -KPX lacute section -188 -KPX lacute dieresis -188 -KPX lacute ordfeminine -225 -KPX lacute guillemotleft -225 -KPX lacute logicalnot -225 -KPX lacute sfthyphen -225 -KPX lacute acute -225 -KPX lacute mu -225 -KPX lacute paragraph -225 -KPX lacute periodcentered -225 -KPX lacute cedilla -225 -KPX lacute ordmasculine -225 -KPX lacute guillemotright -188 -KPX lacute onequarter -188 -KPX lacute onehalf -188 -KPX lacute threequarters -188 -KPX lacute Egrave -36 -KPX lacute Icircumflex -36 -KPX lacute Yacute -225 -KPX lacute Ebreve -36 -KPX lacute ebreve -225 -KPX lacute dotlessi -188 - - -KPX uni027D dollar -243 -KPX uni027D nine 75 -KPX uni027D less 47 -KPX uni027D lacute 47 -EndKernPairs -EndKernData -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSans.ttf b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSans.ttf deleted file mode 100644 index e5f7eecc..00000000 Binary files a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSans.ttf and /dev/null differ diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSans.ufm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSans.ufm deleted file mode 100644 index 82dfd817..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSans.ufm +++ /dev/null @@ -1,6661 +0,0 @@ -StartFontMetrics 4.1 -Notice Converted by PHP-font-lib -Comment https://github.com/PhenX/php-font-lib -EncodingScheme FontSpecific -FontName DejaVu Sans -FontSubfamily Book -UniqueID DejaVu Sans -FullName DejaVu Sans -Version Version 2.37 -PostScriptName DejaVuSans -Manufacturer DejaVu fonts team -FontVendorURL http://dejavu.sourceforge.net -LicenseURL http://dejavu.sourceforge.net/wiki/index.php/License -PreferredFamily DejaVu Sans -PreferredSubfamily Book -Weight Medium -ItalicAngle 0 -IsFixedPitch false -UnderlineThickness 44 -UnderlinePosition -63 -FontHeightOffset 0 -Ascender 928 -Descender -236 -FontBBox -1021 -463 1793 1232 -StartCharMetrics 6253 -U 32 ; WX 318 ; N space ; G 3 -U 33 ; WX 401 ; N exclam ; G 4 -U 34 ; WX 460 ; N quotedbl ; G 5 -U 35 ; WX 838 ; N numbersign ; G 6 -U 36 ; WX 636 ; N dollar ; G 7 -U 37 ; WX 950 ; N percent ; G 8 -U 38 ; WX 780 ; N ampersand ; G 9 -U 39 ; WX 275 ; N quotesingle ; G 10 -U 40 ; WX 390 ; N parenleft ; G 11 -U 41 ; WX 390 ; N parenright ; G 12 -U 42 ; WX 500 ; N asterisk ; G 13 -U 43 ; WX 838 ; N plus ; G 14 -U 44 ; WX 318 ; N comma ; G 15 -U 45 ; WX 361 ; N hyphen ; G 16 -U 46 ; WX 318 ; N period ; G 17 -U 47 ; WX 337 ; N slash ; G 18 -U 48 ; WX 636 ; N zero ; G 19 -U 49 ; WX 636 ; N one ; G 20 -U 50 ; WX 636 ; N two ; G 21 -U 51 ; WX 636 ; N three ; G 22 -U 52 ; WX 636 ; N four ; G 23 -U 53 ; WX 636 ; N five ; G 24 -U 54 ; WX 636 ; N six ; G 25 -U 55 ; WX 636 ; N seven ; G 26 -U 56 ; WX 636 ; N eight ; G 27 -U 57 ; WX 636 ; N nine ; G 28 -U 58 ; WX 337 ; N colon ; G 29 -U 59 ; WX 337 ; N semicolon ; G 30 -U 60 ; WX 838 ; N less ; G 31 -U 61 ; WX 838 ; N equal ; G 32 -U 62 ; WX 838 ; N greater ; G 33 -U 63 ; WX 531 ; N question ; G 34 -U 64 ; WX 1000 ; N at ; G 35 -U 65 ; WX 684 ; N A ; G 36 -U 66 ; WX 686 ; N B ; G 37 -U 67 ; WX 698 ; N C ; G 38 -U 68 ; WX 770 ; N D ; G 39 -U 69 ; WX 632 ; N E ; G 40 -U 70 ; WX 575 ; N F ; G 41 -U 71 ; WX 775 ; N G ; G 42 -U 72 ; WX 752 ; N H ; G 43 -U 73 ; WX 295 ; N I ; G 44 -U 74 ; WX 295 ; N J ; G 45 -U 75 ; WX 656 ; N K ; G 46 -U 76 ; WX 557 ; N L ; G 47 -U 77 ; WX 863 ; N M ; G 48 -U 78 ; WX 748 ; N N ; G 49 -U 79 ; WX 787 ; N O ; G 50 -U 80 ; WX 603 ; N P ; G 51 -U 81 ; WX 787 ; N Q ; G 52 -U 82 ; WX 695 ; N R ; G 53 -U 83 ; WX 635 ; N S ; G 54 -U 84 ; WX 611 ; N T ; G 55 -U 85 ; WX 732 ; N U ; G 56 -U 86 ; WX 684 ; N V ; G 57 -U 87 ; WX 989 ; N W ; G 58 -U 88 ; WX 685 ; N X ; G 59 -U 89 ; WX 611 ; N Y ; G 60 -U 90 ; WX 685 ; N Z ; G 61 -U 91 ; WX 390 ; N bracketleft ; G 62 -U 92 ; WX 337 ; N backslash ; G 63 -U 93 ; WX 390 ; N bracketright ; G 64 -U 94 ; WX 838 ; N asciicircum ; G 65 -U 95 ; WX 500 ; N underscore ; G 66 -U 96 ; WX 500 ; N grave ; G 67 -U 97 ; WX 613 ; N a ; G 68 -U 98 ; WX 635 ; N b ; G 69 -U 99 ; WX 550 ; N c ; G 70 -U 100 ; WX 635 ; N d ; G 71 -U 101 ; WX 615 ; N e ; G 72 -U 102 ; WX 352 ; N f ; G 73 -U 103 ; WX 635 ; N g ; G 74 -U 104 ; WX 634 ; N h ; G 75 -U 105 ; WX 278 ; N i ; G 76 -U 106 ; WX 278 ; N j ; G 77 -U 107 ; WX 579 ; N k ; G 78 -U 108 ; WX 278 ; N l ; G 79 -U 109 ; WX 974 ; N m ; G 80 -U 110 ; WX 634 ; N n ; G 81 -U 111 ; WX 612 ; N o ; G 82 -U 112 ; WX 635 ; N p ; G 83 -U 113 ; WX 635 ; N q ; G 84 -U 114 ; WX 411 ; N r ; G 85 -U 115 ; WX 521 ; N s ; G 86 -U 116 ; WX 392 ; N t ; G 87 -U 117 ; WX 634 ; N u ; G 88 -U 118 ; WX 592 ; N v ; G 89 -U 119 ; WX 818 ; N w ; G 90 -U 120 ; WX 592 ; N x ; G 91 -U 121 ; WX 592 ; N y ; G 92 -U 122 ; WX 525 ; N z ; G 93 -U 123 ; WX 636 ; N braceleft ; G 94 -U 124 ; WX 337 ; N bar ; G 95 -U 125 ; WX 636 ; N braceright ; G 96 -U 126 ; WX 838 ; N asciitilde ; G 97 -U 160 ; WX 318 ; N nbspace ; G 98 -U 161 ; WX 401 ; N exclamdown ; G 99 -U 162 ; WX 636 ; N cent ; G 100 -U 163 ; WX 636 ; N sterling ; G 101 -U 164 ; WX 636 ; N currency ; G 102 -U 165 ; WX 636 ; N yen ; G 103 -U 166 ; WX 337 ; N brokenbar ; G 104 -U 167 ; WX 500 ; N section ; G 105 -U 168 ; WX 500 ; N dieresis ; G 106 -U 169 ; WX 1000 ; N copyright ; G 107 -U 170 ; WX 471 ; N ordfeminine ; G 108 -U 171 ; WX 612 ; N guillemotleft ; G 109 -U 172 ; WX 838 ; N logicalnot ; G 110 -U 173 ; WX 361 ; N sfthyphen ; G 111 -U 174 ; WX 1000 ; N registered ; G 112 -U 175 ; WX 500 ; N macron ; G 113 -U 176 ; WX 500 ; N degree ; G 114 -U 177 ; WX 838 ; N plusminus ; G 115 -U 178 ; WX 401 ; N twosuperior ; G 116 -U 179 ; WX 401 ; N threesuperior ; G 117 -U 180 ; WX 500 ; N acute ; G 118 -U 181 ; WX 636 ; N mu ; G 119 -U 182 ; WX 636 ; N paragraph ; G 120 -U 183 ; WX 318 ; N periodcentered ; G 121 -U 184 ; WX 500 ; N cedilla ; G 122 -U 185 ; WX 401 ; N onesuperior ; G 123 -U 186 ; WX 471 ; N ordmasculine ; G 124 -U 187 ; WX 612 ; N guillemotright ; G 125 -U 188 ; WX 969 ; N onequarter ; G 126 -U 189 ; WX 969 ; N onehalf ; G 127 -U 190 ; WX 969 ; N threequarters ; G 128 -U 191 ; WX 531 ; N questiondown ; G 129 -U 192 ; WX 684 ; N Agrave ; G 130 -U 193 ; WX 684 ; N Aacute ; G 131 -U 194 ; WX 684 ; N Acircumflex ; G 132 -U 195 ; WX 684 ; N Atilde ; G 133 -U 196 ; WX 684 ; N Adieresis ; G 134 -U 197 ; WX 684 ; N Aring ; G 135 -U 198 ; WX 974 ; N AE ; G 136 -U 199 ; WX 698 ; N Ccedilla ; G 137 -U 200 ; WX 632 ; N Egrave ; G 138 -U 201 ; WX 632 ; N Eacute ; G 139 -U 202 ; WX 632 ; N Ecircumflex ; G 140 -U 203 ; WX 632 ; N Edieresis ; G 141 -U 204 ; WX 295 ; N Igrave ; G 142 -U 205 ; WX 295 ; N Iacute ; G 143 -U 206 ; WX 295 ; N Icircumflex ; G 144 -U 207 ; WX 295 ; N Idieresis ; G 145 -U 208 ; WX 775 ; N Eth ; G 146 -U 209 ; WX 748 ; N Ntilde ; G 147 -U 210 ; WX 787 ; N Ograve ; G 148 -U 211 ; WX 787 ; N Oacute ; G 149 -U 212 ; WX 787 ; N Ocircumflex ; G 150 -U 213 ; WX 787 ; N Otilde ; G 151 -U 214 ; WX 787 ; N Odieresis ; G 152 -U 215 ; WX 838 ; N multiply ; G 153 -U 216 ; WX 787 ; N Oslash ; G 154 -U 217 ; WX 732 ; N Ugrave ; G 155 -U 218 ; WX 732 ; N Uacute ; G 156 -U 219 ; WX 732 ; N Ucircumflex ; G 157 -U 220 ; WX 732 ; N Udieresis ; G 158 -U 221 ; WX 611 ; N Yacute ; G 159 -U 222 ; WX 605 ; N Thorn ; G 160 -U 223 ; WX 630 ; N germandbls ; G 161 -U 224 ; WX 613 ; N agrave ; G 162 -U 225 ; WX 613 ; N aacute ; G 163 -U 226 ; WX 613 ; N acircumflex ; G 164 -U 227 ; WX 613 ; N atilde ; G 165 -U 228 ; WX 613 ; N adieresis ; G 166 -U 229 ; WX 613 ; N aring ; G 167 -U 230 ; WX 982 ; N ae ; G 168 -U 231 ; WX 550 ; N ccedilla ; G 169 -U 232 ; WX 615 ; N egrave ; G 170 -U 233 ; WX 615 ; N eacute ; G 171 -U 234 ; WX 615 ; N ecircumflex ; G 172 -U 235 ; WX 615 ; N edieresis ; G 173 -U 236 ; WX 278 ; N igrave ; G 174 -U 237 ; WX 278 ; N iacute ; G 175 -U 238 ; WX 278 ; N icircumflex ; G 176 -U 239 ; WX 278 ; N idieresis ; G 177 -U 240 ; WX 612 ; N eth ; G 178 -U 241 ; WX 634 ; N ntilde ; G 179 -U 242 ; WX 612 ; N ograve ; G 180 -U 243 ; WX 612 ; N oacute ; G 181 -U 244 ; WX 612 ; N ocircumflex ; G 182 -U 245 ; WX 612 ; N otilde ; G 183 -U 246 ; WX 612 ; N odieresis ; G 184 -U 247 ; WX 838 ; N divide ; G 185 -U 248 ; WX 612 ; N oslash ; G 186 -U 249 ; WX 634 ; N ugrave ; G 187 -U 250 ; WX 634 ; N uacute ; G 188 -U 251 ; WX 634 ; N ucircumflex ; G 189 -U 252 ; WX 634 ; N udieresis ; G 190 -U 253 ; WX 592 ; N yacute ; G 191 -U 254 ; WX 635 ; N thorn ; G 192 -U 255 ; WX 592 ; N ydieresis ; G 193 -U 256 ; WX 684 ; N Amacron ; G 194 -U 257 ; WX 613 ; N amacron ; G 195 -U 258 ; WX 684 ; N Abreve ; G 196 -U 259 ; WX 613 ; N abreve ; G 197 -U 260 ; WX 684 ; N Aogonek ; G 198 -U 261 ; WX 613 ; N aogonek ; G 199 -U 262 ; WX 698 ; N Cacute ; G 200 -U 263 ; WX 550 ; N cacute ; G 201 -U 264 ; WX 698 ; N Ccircumflex ; G 202 -U 265 ; WX 550 ; N ccircumflex ; G 203 -U 266 ; WX 698 ; N Cdotaccent ; G 204 -U 267 ; WX 550 ; N cdotaccent ; G 205 -U 268 ; WX 698 ; N Ccaron ; G 206 -U 269 ; WX 550 ; N ccaron ; G 207 -U 270 ; WX 770 ; N Dcaron ; G 208 -U 271 ; WX 635 ; N dcaron ; G 209 -U 272 ; WX 775 ; N Dcroat ; G 210 -U 273 ; WX 635 ; N dmacron ; G 211 -U 274 ; WX 632 ; N Emacron ; G 212 -U 275 ; WX 615 ; N emacron ; G 213 -U 276 ; WX 632 ; N Ebreve ; G 214 -U 277 ; WX 615 ; N ebreve ; G 215 -U 278 ; WX 632 ; N Edotaccent ; G 216 -U 279 ; WX 615 ; N edotaccent ; G 217 -U 280 ; WX 632 ; N Eogonek ; G 218 -U 281 ; WX 615 ; N eogonek ; G 219 -U 282 ; WX 632 ; N Ecaron ; G 220 -U 283 ; WX 615 ; N ecaron ; G 221 -U 284 ; WX 775 ; N Gcircumflex ; G 222 -U 285 ; WX 635 ; N gcircumflex ; G 223 -U 286 ; WX 775 ; N Gbreve ; G 224 -U 287 ; WX 635 ; N gbreve ; G 225 -U 288 ; WX 775 ; N Gdotaccent ; G 226 -U 289 ; WX 635 ; N gdotaccent ; G 227 -U 290 ; WX 775 ; N Gcommaaccent ; G 228 -U 291 ; WX 635 ; N gcommaaccent ; G 229 -U 292 ; WX 752 ; N Hcircumflex ; G 230 -U 293 ; WX 634 ; N hcircumflex ; G 231 -U 294 ; WX 916 ; N Hbar ; G 232 -U 295 ; WX 695 ; N hbar ; G 233 -U 296 ; WX 295 ; N Itilde ; G 234 -U 297 ; WX 278 ; N itilde ; G 235 -U 298 ; WX 295 ; N Imacron ; G 236 -U 299 ; WX 278 ; N imacron ; G 237 -U 300 ; WX 295 ; N Ibreve ; G 238 -U 301 ; WX 278 ; N ibreve ; G 239 -U 302 ; WX 295 ; N Iogonek ; G 240 -U 303 ; WX 278 ; N iogonek ; G 241 -U 304 ; WX 295 ; N Idot ; G 242 -U 305 ; WX 278 ; N dotlessi ; G 243 -U 306 ; WX 590 ; N IJ ; G 244 -U 307 ; WX 556 ; N ij ; G 245 -U 308 ; WX 295 ; N Jcircumflex ; G 246 -U 309 ; WX 278 ; N jcircumflex ; G 247 -U 310 ; WX 656 ; N Kcommaaccent ; G 248 -U 311 ; WX 579 ; N kcommaaccent ; G 249 -U 312 ; WX 579 ; N kgreenlandic ; G 250 -U 313 ; WX 557 ; N Lacute ; G 251 -U 314 ; WX 278 ; N lacute ; G 252 -U 315 ; WX 557 ; N Lcommaaccent ; G 253 -U 316 ; WX 278 ; N lcommaaccent ; G 254 -U 317 ; WX 557 ; N Lcaron ; G 255 -U 318 ; WX 375 ; N lcaron ; G 256 -U 319 ; WX 557 ; N Ldot ; G 257 -U 320 ; WX 342 ; N ldot ; G 258 -U 321 ; WX 562 ; N Lslash ; G 259 -U 322 ; WX 284 ; N lslash ; G 260 -U 323 ; WX 748 ; N Nacute ; G 261 -U 324 ; WX 634 ; N nacute ; G 262 -U 325 ; WX 748 ; N Ncommaaccent ; G 263 -U 326 ; WX 634 ; N ncommaaccent ; G 264 -U 327 ; WX 748 ; N Ncaron ; G 265 -U 328 ; WX 634 ; N ncaron ; G 266 -U 329 ; WX 813 ; N napostrophe ; G 267 -U 330 ; WX 748 ; N Eng ; G 268 -U 331 ; WX 634 ; N eng ; G 269 -U 332 ; WX 787 ; N Omacron ; G 270 -U 333 ; WX 612 ; N omacron ; G 271 -U 334 ; WX 787 ; N Obreve ; G 272 -U 335 ; WX 612 ; N obreve ; G 273 -U 336 ; WX 787 ; N Ohungarumlaut ; G 274 -U 337 ; WX 612 ; N ohungarumlaut ; G 275 -U 338 ; WX 1070 ; N OE ; G 276 -U 339 ; WX 1023 ; N oe ; G 277 -U 340 ; WX 695 ; N Racute ; G 278 -U 341 ; WX 411 ; N racute ; G 279 -U 342 ; WX 695 ; N Rcommaaccent ; G 280 -U 343 ; WX 411 ; N rcommaaccent ; G 281 -U 344 ; WX 695 ; N Rcaron ; G 282 -U 345 ; WX 411 ; N rcaron ; G 283 -U 346 ; WX 635 ; N Sacute ; G 284 -U 347 ; WX 521 ; N sacute ; G 285 -U 348 ; WX 635 ; N Scircumflex ; G 286 -U 349 ; WX 521 ; N scircumflex ; G 287 -U 350 ; WX 635 ; N Scedilla ; G 288 -U 351 ; WX 521 ; N scedilla ; G 289 -U 352 ; WX 635 ; N Scaron ; G 290 -U 353 ; WX 521 ; N scaron ; G 291 -U 354 ; WX 611 ; N Tcommaaccent ; G 292 -U 355 ; WX 392 ; N tcommaaccent ; G 293 -U 356 ; WX 611 ; N Tcaron ; G 294 -U 357 ; WX 392 ; N tcaron ; G 295 -U 358 ; WX 611 ; N Tbar ; G 296 -U 359 ; WX 392 ; N tbar ; G 297 -U 360 ; WX 732 ; N Utilde ; G 298 -U 361 ; WX 634 ; N utilde ; G 299 -U 362 ; WX 732 ; N Umacron ; G 300 -U 363 ; WX 634 ; N umacron ; G 301 -U 364 ; WX 732 ; N Ubreve ; G 302 -U 365 ; WX 634 ; N ubreve ; G 303 -U 366 ; WX 732 ; N Uring ; G 304 -U 367 ; WX 634 ; N uring ; G 305 -U 368 ; WX 732 ; N Uhungarumlaut ; G 306 -U 369 ; WX 634 ; N uhungarumlaut ; G 307 -U 370 ; WX 732 ; N Uogonek ; G 308 -U 371 ; WX 634 ; N uogonek ; G 309 -U 372 ; WX 989 ; N Wcircumflex ; G 310 -U 373 ; WX 818 ; N wcircumflex ; G 311 -U 374 ; WX 611 ; N Ycircumflex ; G 312 -U 375 ; WX 592 ; N ycircumflex ; G 313 -U 376 ; WX 611 ; N Ydieresis ; G 314 -U 377 ; WX 685 ; N Zacute ; G 315 -U 378 ; WX 525 ; N zacute ; G 316 -U 379 ; WX 685 ; N Zdotaccent ; G 317 -U 380 ; WX 525 ; N zdotaccent ; G 318 -U 381 ; WX 685 ; N Zcaron ; G 319 -U 382 ; WX 525 ; N zcaron ; G 320 -U 383 ; WX 352 ; N longs ; G 321 -U 384 ; WX 635 ; N uni0180 ; G 322 -U 385 ; WX 735 ; N uni0181 ; G 323 -U 386 ; WX 686 ; N uni0182 ; G 324 -U 387 ; WX 635 ; N uni0183 ; G 325 -U 388 ; WX 686 ; N uni0184 ; G 326 -U 389 ; WX 635 ; N uni0185 ; G 327 -U 390 ; WX 703 ; N uni0186 ; G 328 -U 391 ; WX 698 ; N uni0187 ; G 329 -U 392 ; WX 550 ; N uni0188 ; G 330 -U 393 ; WX 775 ; N uni0189 ; G 331 -U 394 ; WX 819 ; N uni018A ; G 332 -U 395 ; WX 686 ; N uni018B ; G 333 -U 396 ; WX 635 ; N uni018C ; G 334 -U 397 ; WX 612 ; N uni018D ; G 335 -U 398 ; WX 632 ; N uni018E ; G 336 -U 399 ; WX 787 ; N uni018F ; G 337 -U 400 ; WX 614 ; N uni0190 ; G 338 -U 401 ; WX 575 ; N uni0191 ; G 339 -U 402 ; WX 352 ; N florin ; G 340 -U 403 ; WX 775 ; N uni0193 ; G 341 -U 404 ; WX 687 ; N uni0194 ; G 342 -U 405 ; WX 984 ; N uni0195 ; G 343 -U 406 ; WX 354 ; N uni0196 ; G 344 -U 407 ; WX 295 ; N uni0197 ; G 345 -U 408 ; WX 746 ; N uni0198 ; G 346 -U 409 ; WX 579 ; N uni0199 ; G 347 -U 410 ; WX 278 ; N uni019A ; G 348 -U 411 ; WX 592 ; N uni019B ; G 349 -U 412 ; WX 974 ; N uni019C ; G 350 -U 413 ; WX 748 ; N uni019D ; G 351 -U 414 ; WX 634 ; N uni019E ; G 352 -U 415 ; WX 787 ; N uni019F ; G 353 -U 416 ; WX 913 ; N Ohorn ; G 354 -U 417 ; WX 612 ; N ohorn ; G 355 -U 418 ; WX 949 ; N uni01A2 ; G 356 -U 419 ; WX 759 ; N uni01A3 ; G 357 -U 420 ; WX 652 ; N uni01A4 ; G 358 -U 421 ; WX 635 ; N uni01A5 ; G 359 -U 422 ; WX 695 ; N uni01A6 ; G 360 -U 423 ; WX 635 ; N uni01A7 ; G 361 -U 424 ; WX 521 ; N uni01A8 ; G 362 -U 425 ; WX 632 ; N uni01A9 ; G 363 -U 426 ; WX 336 ; N uni01AA ; G 364 -U 427 ; WX 392 ; N uni01AB ; G 365 -U 428 ; WX 611 ; N uni01AC ; G 366 -U 429 ; WX 392 ; N uni01AD ; G 367 -U 430 ; WX 611 ; N uni01AE ; G 368 -U 431 ; WX 858 ; N Uhorn ; G 369 -U 432 ; WX 634 ; N uhorn ; G 370 -U 433 ; WX 764 ; N uni01B1 ; G 371 -U 434 ; WX 721 ; N uni01B2 ; G 372 -U 435 ; WX 744 ; N uni01B3 ; G 373 -U 436 ; WX 730 ; N uni01B4 ; G 374 -U 437 ; WX 685 ; N uni01B5 ; G 375 -U 438 ; WX 525 ; N uni01B6 ; G 376 -U 439 ; WX 666 ; N uni01B7 ; G 377 -U 440 ; WX 666 ; N uni01B8 ; G 378 -U 441 ; WX 578 ; N uni01B9 ; G 379 -U 442 ; WX 525 ; N uni01BA ; G 380 -U 443 ; WX 636 ; N uni01BB ; G 381 -U 444 ; WX 666 ; N uni01BC ; G 382 -U 445 ; WX 578 ; N uni01BD ; G 383 -U 446 ; WX 510 ; N uni01BE ; G 384 -U 447 ; WX 635 ; N uni01BF ; G 385 -U 448 ; WX 295 ; N uni01C0 ; G 386 -U 449 ; WX 492 ; N uni01C1 ; G 387 -U 450 ; WX 459 ; N uni01C2 ; G 388 -U 451 ; WX 295 ; N uni01C3 ; G 389 -U 452 ; WX 1422 ; N uni01C4 ; G 390 -U 453 ; WX 1299 ; N uni01C5 ; G 391 -U 454 ; WX 1154 ; N uni01C6 ; G 392 -U 455 ; WX 835 ; N uni01C7 ; G 393 -U 456 ; WX 787 ; N uni01C8 ; G 394 -U 457 ; WX 457 ; N uni01C9 ; G 395 -U 458 ; WX 931 ; N uni01CA ; G 396 -U 459 ; WX 924 ; N uni01CB ; G 397 -U 460 ; WX 797 ; N uni01CC ; G 398 -U 461 ; WX 684 ; N uni01CD ; G 399 -U 462 ; WX 613 ; N uni01CE ; G 400 -U 463 ; WX 295 ; N uni01CF ; G 401 -U 464 ; WX 278 ; N uni01D0 ; G 402 -U 465 ; WX 787 ; N uni01D1 ; G 403 -U 466 ; WX 612 ; N uni01D2 ; G 404 -U 467 ; WX 732 ; N uni01D3 ; G 405 -U 468 ; WX 634 ; N uni01D4 ; G 406 -U 469 ; WX 732 ; N uni01D5 ; G 407 -U 470 ; WX 634 ; N uni01D6 ; G 408 -U 471 ; WX 732 ; N uni01D7 ; G 409 -U 472 ; WX 634 ; N uni01D8 ; G 410 -U 473 ; WX 732 ; N uni01D9 ; G 411 -U 474 ; WX 634 ; N uni01DA ; G 412 -U 475 ; WX 732 ; N uni01DB ; G 413 -U 476 ; WX 634 ; N uni01DC ; G 414 -U 477 ; WX 615 ; N uni01DD ; G 415 -U 478 ; WX 684 ; N uni01DE ; G 416 -U 479 ; WX 613 ; N uni01DF ; G 417 -U 480 ; WX 684 ; N uni01E0 ; G 418 -U 481 ; WX 613 ; N uni01E1 ; G 419 -U 482 ; WX 974 ; N uni01E2 ; G 420 -U 483 ; WX 982 ; N uni01E3 ; G 421 -U 484 ; WX 775 ; N uni01E4 ; G 422 -U 485 ; WX 635 ; N uni01E5 ; G 423 -U 486 ; WX 775 ; N Gcaron ; G 424 -U 487 ; WX 635 ; N gcaron ; G 425 -U 488 ; WX 656 ; N uni01E8 ; G 426 -U 489 ; WX 579 ; N uni01E9 ; G 427 -U 490 ; WX 787 ; N uni01EA ; G 428 -U 491 ; WX 612 ; N uni01EB ; G 429 -U 492 ; WX 787 ; N uni01EC ; G 430 -U 493 ; WX 612 ; N uni01ED ; G 431 -U 494 ; WX 666 ; N uni01EE ; G 432 -U 495 ; WX 578 ; N uni01EF ; G 433 -U 496 ; WX 278 ; N uni01F0 ; G 434 -U 497 ; WX 1422 ; N uni01F1 ; G 435 -U 498 ; WX 1299 ; N uni01F2 ; G 436 -U 499 ; WX 1154 ; N uni01F3 ; G 437 -U 500 ; WX 775 ; N uni01F4 ; G 438 -U 501 ; WX 635 ; N uni01F5 ; G 439 -U 502 ; WX 1113 ; N uni01F6 ; G 440 -U 503 ; WX 682 ; N uni01F7 ; G 441 -U 504 ; WX 748 ; N uni01F8 ; G 442 -U 505 ; WX 634 ; N uni01F9 ; G 443 -U 506 ; WX 684 ; N Aringacute ; G 444 -U 507 ; WX 613 ; N aringacute ; G 445 -U 508 ; WX 974 ; N AEacute ; G 446 -U 509 ; WX 982 ; N aeacute ; G 447 -U 510 ; WX 787 ; N Oslashacute ; G 448 -U 511 ; WX 612 ; N oslashacute ; G 449 -U 512 ; WX 684 ; N uni0200 ; G 450 -U 513 ; WX 613 ; N uni0201 ; G 451 -U 514 ; WX 684 ; N uni0202 ; G 452 -U 515 ; WX 613 ; N uni0203 ; G 453 -U 516 ; WX 632 ; N uni0204 ; G 454 -U 517 ; WX 615 ; N uni0205 ; G 455 -U 518 ; WX 632 ; N uni0206 ; G 456 -U 519 ; WX 615 ; N uni0207 ; G 457 -U 520 ; WX 295 ; N uni0208 ; G 458 -U 521 ; WX 278 ; N uni0209 ; G 459 -U 522 ; WX 295 ; N uni020A ; G 460 -U 523 ; WX 278 ; N uni020B ; G 461 -U 524 ; WX 787 ; N uni020C ; G 462 -U 525 ; WX 612 ; N uni020D ; G 463 -U 526 ; WX 787 ; N uni020E ; G 464 -U 527 ; WX 612 ; N uni020F ; G 465 -U 528 ; WX 695 ; N uni0210 ; G 466 -U 529 ; WX 411 ; N uni0211 ; G 467 -U 530 ; WX 695 ; N uni0212 ; G 468 -U 531 ; WX 411 ; N uni0213 ; G 469 -U 532 ; WX 732 ; N uni0214 ; G 470 -U 533 ; WX 634 ; N uni0215 ; G 471 -U 534 ; WX 732 ; N uni0216 ; G 472 -U 535 ; WX 634 ; N uni0217 ; G 473 -U 536 ; WX 635 ; N Scommaaccent ; G 474 -U 537 ; WX 521 ; N scommaaccent ; G 475 -U 538 ; WX 611 ; N uni021A ; G 476 -U 539 ; WX 392 ; N uni021B ; G 477 -U 540 ; WX 627 ; N uni021C ; G 478 -U 541 ; WX 521 ; N uni021D ; G 479 -U 542 ; WX 752 ; N uni021E ; G 480 -U 543 ; WX 634 ; N uni021F ; G 481 -U 544 ; WX 735 ; N uni0220 ; G 482 -U 545 ; WX 838 ; N uni0221 ; G 483 -U 546 ; WX 698 ; N uni0222 ; G 484 -U 547 ; WX 610 ; N uni0223 ; G 485 -U 548 ; WX 685 ; N uni0224 ; G 486 -U 549 ; WX 525 ; N uni0225 ; G 487 -U 550 ; WX 684 ; N uni0226 ; G 488 -U 551 ; WX 613 ; N uni0227 ; G 489 -U 552 ; WX 632 ; N uni0228 ; G 490 -U 553 ; WX 615 ; N uni0229 ; G 491 -U 554 ; WX 787 ; N uni022A ; G 492 -U 555 ; WX 612 ; N uni022B ; G 493 -U 556 ; WX 787 ; N uni022C ; G 494 -U 557 ; WX 612 ; N uni022D ; G 495 -U 558 ; WX 787 ; N uni022E ; G 496 -U 559 ; WX 612 ; N uni022F ; G 497 -U 560 ; WX 787 ; N uni0230 ; G 498 -U 561 ; WX 612 ; N uni0231 ; G 499 -U 562 ; WX 611 ; N uni0232 ; G 500 -U 563 ; WX 592 ; N uni0233 ; G 501 -U 564 ; WX 475 ; N uni0234 ; G 502 -U 565 ; WX 843 ; N uni0235 ; G 503 -U 566 ; WX 477 ; N uni0236 ; G 504 -U 567 ; WX 278 ; N dotlessj ; G 505 -U 568 ; WX 998 ; N uni0238 ; G 506 -U 569 ; WX 998 ; N uni0239 ; G 507 -U 570 ; WX 684 ; N uni023A ; G 508 -U 571 ; WX 698 ; N uni023B ; G 509 -U 572 ; WX 550 ; N uni023C ; G 510 -U 573 ; WX 557 ; N uni023D ; G 511 -U 574 ; WX 611 ; N uni023E ; G 512 -U 575 ; WX 521 ; N uni023F ; G 513 -U 576 ; WX 525 ; N uni0240 ; G 514 -U 577 ; WX 603 ; N uni0241 ; G 515 -U 578 ; WX 479 ; N uni0242 ; G 516 -U 579 ; WX 686 ; N uni0243 ; G 517 -U 580 ; WX 732 ; N uni0244 ; G 518 -U 581 ; WX 684 ; N uni0245 ; G 519 -U 582 ; WX 632 ; N uni0246 ; G 520 -U 583 ; WX 615 ; N uni0247 ; G 521 -U 584 ; WX 295 ; N uni0248 ; G 522 -U 585 ; WX 278 ; N uni0249 ; G 523 -U 586 ; WX 781 ; N uni024A ; G 524 -U 587 ; WX 635 ; N uni024B ; G 525 -U 588 ; WX 695 ; N uni024C ; G 526 -U 589 ; WX 411 ; N uni024D ; G 527 -U 590 ; WX 611 ; N uni024E ; G 528 -U 591 ; WX 592 ; N uni024F ; G 529 -U 592 ; WX 600 ; N uni0250 ; G 530 -U 593 ; WX 635 ; N uni0251 ; G 531 -U 594 ; WX 635 ; N uni0252 ; G 532 -U 595 ; WX 635 ; N uni0253 ; G 533 -U 596 ; WX 549 ; N uni0254 ; G 534 -U 597 ; WX 550 ; N uni0255 ; G 535 -U 598 ; WX 635 ; N uni0256 ; G 536 -U 599 ; WX 696 ; N uni0257 ; G 537 -U 600 ; WX 615 ; N uni0258 ; G 538 -U 601 ; WX 615 ; N uni0259 ; G 539 -U 602 ; WX 819 ; N uni025A ; G 540 -U 603 ; WX 541 ; N uni025B ; G 541 -U 604 ; WX 532 ; N uni025C ; G 542 -U 605 ; WX 775 ; N uni025D ; G 543 -U 606 ; WX 664 ; N uni025E ; G 544 -U 607 ; WX 278 ; N uni025F ; G 545 -U 608 ; WX 696 ; N uni0260 ; G 546 -U 609 ; WX 635 ; N uni0261 ; G 547 -U 610 ; WX 629 ; N uni0262 ; G 548 -U 611 ; WX 596 ; N uni0263 ; G 549 -U 612 ; WX 596 ; N uni0264 ; G 550 -U 613 ; WX 634 ; N uni0265 ; G 551 -U 614 ; WX 634 ; N uni0266 ; G 552 -U 615 ; WX 634 ; N uni0267 ; G 553 -U 616 ; WX 278 ; N uni0268 ; G 554 -U 617 ; WX 338 ; N uni0269 ; G 555 -U 618 ; WX 372 ; N uni026A ; G 556 -U 619 ; WX 396 ; N uni026B ; G 557 -U 620 ; WX 487 ; N uni026C ; G 558 -U 621 ; WX 278 ; N uni026D ; G 559 -U 622 ; WX 706 ; N uni026E ; G 560 -U 623 ; WX 974 ; N uni026F ; G 561 -U 624 ; WX 974 ; N uni0270 ; G 562 -U 625 ; WX 974 ; N uni0271 ; G 563 -U 626 ; WX 646 ; N uni0272 ; G 564 -U 627 ; WX 642 ; N uni0273 ; G 565 -U 628 ; WX 634 ; N uni0274 ; G 566 -U 629 ; WX 612 ; N uni0275 ; G 567 -U 630 ; WX 858 ; N uni0276 ; G 568 -U 631 ; WX 728 ; N uni0277 ; G 569 -U 632 ; WX 660 ; N uni0278 ; G 570 -U 633 ; WX 414 ; N uni0279 ; G 571 -U 634 ; WX 414 ; N uni027A ; G 572 -U 635 ; WX 414 ; N uni027B ; G 573 -U 636 ; WX 411 ; N uni027C ; G 574 -U 637 ; WX 411 ; N uni027D ; G 575 -U 638 ; WX 530 ; N uni027E ; G 576 -U 639 ; WX 530 ; N uni027F ; G 577 -U 640 ; WX 604 ; N uni0280 ; G 578 -U 641 ; WX 604 ; N uni0281 ; G 579 -U 642 ; WX 521 ; N uni0282 ; G 580 -U 643 ; WX 336 ; N uni0283 ; G 581 -U 644 ; WX 336 ; N uni0284 ; G 582 -U 645 ; WX 461 ; N uni0285 ; G 583 -U 646 ; WX 336 ; N uni0286 ; G 584 -U 647 ; WX 392 ; N uni0287 ; G 585 -U 648 ; WX 392 ; N uni0288 ; G 586 -U 649 ; WX 634 ; N uni0289 ; G 587 -U 650 ; WX 618 ; N uni028A ; G 588 -U 651 ; WX 598 ; N uni028B ; G 589 -U 652 ; WX 592 ; N uni028C ; G 590 -U 653 ; WX 818 ; N uni028D ; G 591 -U 654 ; WX 592 ; N uni028E ; G 592 -U 655 ; WX 611 ; N uni028F ; G 593 -U 656 ; WX 525 ; N uni0290 ; G 594 -U 657 ; WX 525 ; N uni0291 ; G 595 -U 658 ; WX 578 ; N uni0292 ; G 596 -U 659 ; WX 578 ; N uni0293 ; G 597 -U 660 ; WX 510 ; N uni0294 ; G 598 -U 661 ; WX 510 ; N uni0295 ; G 599 -U 662 ; WX 510 ; N uni0296 ; G 600 -U 663 ; WX 510 ; N uni0297 ; G 601 -U 664 ; WX 787 ; N uni0298 ; G 602 -U 665 ; WX 580 ; N uni0299 ; G 603 -U 666 ; WX 664 ; N uni029A ; G 604 -U 667 ; WX 708 ; N uni029B ; G 605 -U 668 ; WX 654 ; N uni029C ; G 606 -U 669 ; WX 292 ; N uni029D ; G 607 -U 670 ; WX 667 ; N uni029E ; G 608 -U 671 ; WX 507 ; N uni029F ; G 609 -U 672 ; WX 727 ; N uni02A0 ; G 610 -U 673 ; WX 510 ; N uni02A1 ; G 611 -U 674 ; WX 510 ; N uni02A2 ; G 612 -U 675 ; WX 1014 ; N uni02A3 ; G 613 -U 676 ; WX 1058 ; N uni02A4 ; G 614 -U 677 ; WX 1013 ; N uni02A5 ; G 615 -U 678 ; WX 830 ; N uni02A6 ; G 616 -U 679 ; WX 610 ; N uni02A7 ; G 617 -U 680 ; WX 778 ; N uni02A8 ; G 618 -U 681 ; WX 848 ; N uni02A9 ; G 619 -U 682 ; WX 706 ; N uni02AA ; G 620 -U 683 ; WX 654 ; N uni02AB ; G 621 -U 684 ; WX 515 ; N uni02AC ; G 622 -U 685 ; WX 515 ; N uni02AD ; G 623 -U 686 ; WX 661 ; N uni02AE ; G 624 -U 687 ; WX 664 ; N uni02AF ; G 625 -U 688 ; WX 404 ; N uni02B0 ; G 626 -U 689 ; WX 399 ; N uni02B1 ; G 627 -U 690 ; WX 175 ; N uni02B2 ; G 628 -U 691 ; WX 259 ; N uni02B3 ; G 629 -U 692 ; WX 295 ; N uni02B4 ; G 630 -U 693 ; WX 296 ; N uni02B5 ; G 631 -U 694 ; WX 379 ; N uni02B6 ; G 632 -U 695 ; WX 515 ; N uni02B7 ; G 633 -U 696 ; WX 373 ; N uni02B8 ; G 634 -U 697 ; WX 278 ; N uni02B9 ; G 635 -U 698 ; WX 460 ; N uni02BA ; G 636 -U 699 ; WX 318 ; N uni02BB ; G 637 -U 700 ; WX 318 ; N uni02BC ; G 638 -U 701 ; WX 318 ; N uni02BD ; G 639 -U 702 ; WX 307 ; N uni02BE ; G 640 -U 703 ; WX 307 ; N uni02BF ; G 641 -U 704 ; WX 370 ; N uni02C0 ; G 642 -U 705 ; WX 370 ; N uni02C1 ; G 643 -U 706 ; WX 500 ; N uni02C2 ; G 644 -U 707 ; WX 500 ; N uni02C3 ; G 645 -U 708 ; WX 500 ; N uni02C4 ; G 646 -U 709 ; WX 500 ; N uni02C5 ; G 647 -U 710 ; WX 500 ; N circumflex ; G 648 -U 711 ; WX 500 ; N caron ; G 649 -U 712 ; WX 275 ; N uni02C8 ; G 650 -U 713 ; WX 500 ; N uni02C9 ; G 651 -U 714 ; WX 500 ; N uni02CA ; G 652 -U 715 ; WX 500 ; N uni02CB ; G 653 -U 716 ; WX 275 ; N uni02CC ; G 654 -U 717 ; WX 500 ; N uni02CD ; G 655 -U 718 ; WX 500 ; N uni02CE ; G 656 -U 719 ; WX 500 ; N uni02CF ; G 657 -U 720 ; WX 337 ; N uni02D0 ; G 658 -U 721 ; WX 337 ; N uni02D1 ; G 659 -U 722 ; WX 307 ; N uni02D2 ; G 660 -U 723 ; WX 307 ; N uni02D3 ; G 661 -U 724 ; WX 500 ; N uni02D4 ; G 662 -U 725 ; WX 500 ; N uni02D5 ; G 663 -U 726 ; WX 390 ; N uni02D6 ; G 664 -U 727 ; WX 317 ; N uni02D7 ; G 665 -U 728 ; WX 500 ; N breve ; G 666 -U 729 ; WX 500 ; N dotaccent ; G 667 -U 730 ; WX 500 ; N ring ; G 668 -U 731 ; WX 500 ; N ogonek ; G 669 -U 732 ; WX 500 ; N tilde ; G 670 -U 733 ; WX 500 ; N hungarumlaut ; G 671 -U 734 ; WX 315 ; N uni02DE ; G 672 -U 735 ; WX 500 ; N uni02DF ; G 673 -U 736 ; WX 426 ; N uni02E0 ; G 674 -U 737 ; WX 166 ; N uni02E1 ; G 675 -U 738 ; WX 373 ; N uni02E2 ; G 676 -U 739 ; WX 444 ; N uni02E3 ; G 677 -U 740 ; WX 370 ; N uni02E4 ; G 678 -U 741 ; WX 493 ; N uni02E5 ; G 679 -U 742 ; WX 493 ; N uni02E6 ; G 680 -U 743 ; WX 493 ; N uni02E7 ; G 681 -U 744 ; WX 493 ; N uni02E8 ; G 682 -U 745 ; WX 493 ; N uni02E9 ; G 683 -U 748 ; WX 500 ; N uni02EC ; G 684 -U 749 ; WX 500 ; N uni02ED ; G 685 -U 750 ; WX 518 ; N uni02EE ; G 686 -U 755 ; WX 500 ; N uni02F3 ; G 687 -U 759 ; WX 500 ; N uni02F7 ; G 688 -U 768 ; WX 0 ; N gravecomb ; G 689 -U 769 ; WX 0 ; N acutecomb ; G 690 -U 770 ; WX 0 ; N uni0302 ; G 691 -U 771 ; WX 0 ; N tildecomb ; G 692 -U 772 ; WX 0 ; N uni0304 ; G 693 -U 773 ; WX 0 ; N uni0305 ; G 694 -U 774 ; WX 0 ; N uni0306 ; G 695 -U 775 ; WX 0 ; N uni0307 ; G 696 -U 776 ; WX 0 ; N uni0308 ; G 697 -U 777 ; WX 0 ; N hookabovecomb ; G 698 -U 778 ; WX 0 ; N uni030A ; G 699 -U 779 ; WX 0 ; N uni030B ; G 700 -U 780 ; WX 0 ; N uni030C ; G 701 -U 781 ; WX 0 ; N uni030D ; G 702 -U 782 ; WX 0 ; N uni030E ; G 703 -U 783 ; WX 0 ; N uni030F ; G 704 -U 784 ; WX 0 ; N uni0310 ; G 705 -U 785 ; WX 0 ; N uni0311 ; G 706 -U 786 ; WX 0 ; N uni0312 ; G 707 -U 787 ; WX 0 ; N uni0313 ; G 708 -U 788 ; WX 0 ; N uni0314 ; G 709 -U 789 ; WX 0 ; N uni0315 ; G 710 -U 790 ; WX 0 ; N uni0316 ; G 711 -U 791 ; WX 0 ; N uni0317 ; G 712 -U 792 ; WX 0 ; N uni0318 ; G 713 -U 793 ; WX 0 ; N uni0319 ; G 714 -U 794 ; WX 0 ; N uni031A ; G 715 -U 795 ; WX 0 ; N uni031B ; G 716 -U 796 ; WX 0 ; N uni031C ; G 717 -U 797 ; WX 0 ; N uni031D ; G 718 -U 798 ; WX 0 ; N uni031E ; G 719 -U 799 ; WX 0 ; N uni031F ; G 720 -U 800 ; WX 0 ; N uni0320 ; G 721 -U 801 ; WX 0 ; N uni0321 ; G 722 -U 802 ; WX 0 ; N uni0322 ; G 723 -U 803 ; WX 0 ; N dotbelowcomb ; G 724 -U 804 ; WX 0 ; N uni0324 ; G 725 -U 805 ; WX 0 ; N uni0325 ; G 726 -U 806 ; WX 0 ; N uni0326 ; G 727 -U 807 ; WX 0 ; N uni0327 ; G 728 -U 808 ; WX 0 ; N uni0328 ; G 729 -U 809 ; WX 0 ; N uni0329 ; G 730 -U 810 ; WX 0 ; N uni032A ; G 731 -U 811 ; WX 0 ; N uni032B ; G 732 -U 812 ; WX 0 ; N uni032C ; G 733 -U 813 ; WX 0 ; N uni032D ; G 734 -U 814 ; WX 0 ; N uni032E ; G 735 -U 815 ; WX 0 ; N uni032F ; G 736 -U 816 ; WX 0 ; N uni0330 ; G 737 -U 817 ; WX 0 ; N uni0331 ; G 738 -U 818 ; WX 0 ; N uni0332 ; G 739 -U 819 ; WX 0 ; N uni0333 ; G 740 -U 820 ; WX 0 ; N uni0334 ; G 741 -U 821 ; WX 0 ; N uni0335 ; G 742 -U 822 ; WX 0 ; N uni0336 ; G 743 -U 823 ; WX 0 ; N uni0337 ; G 744 -U 824 ; WX 0 ; N uni0338 ; G 745 -U 825 ; WX 0 ; N uni0339 ; G 746 -U 826 ; WX 0 ; N uni033A ; G 747 -U 827 ; WX 0 ; N uni033B ; G 748 -U 828 ; WX 0 ; N uni033C ; G 749 -U 829 ; WX 0 ; N uni033D ; G 750 -U 830 ; WX 0 ; N uni033E ; G 751 -U 831 ; WX 0 ; N uni033F ; G 752 -U 832 ; WX 0 ; N uni0340 ; G 753 -U 833 ; WX 0 ; N uni0341 ; G 754 -U 834 ; WX 0 ; N uni0342 ; G 755 -U 835 ; WX 0 ; N uni0343 ; G 756 -U 836 ; WX 0 ; N uni0344 ; G 757 -U 837 ; WX 0 ; N uni0345 ; G 758 -U 838 ; WX 0 ; N uni0346 ; G 759 -U 839 ; WX 0 ; N uni0347 ; G 760 -U 840 ; WX 0 ; N uni0348 ; G 761 -U 841 ; WX 0 ; N uni0349 ; G 762 -U 842 ; WX 0 ; N uni034A ; G 763 -U 843 ; WX 0 ; N uni034B ; G 764 -U 844 ; WX 0 ; N uni034C ; G 765 -U 845 ; WX 0 ; N uni034D ; G 766 -U 846 ; WX 0 ; N uni034E ; G 767 -U 847 ; WX 0 ; N uni034F ; G 768 -U 849 ; WX 0 ; N uni0351 ; G 769 -U 850 ; WX 0 ; N uni0352 ; G 770 -U 851 ; WX 0 ; N uni0353 ; G 771 -U 855 ; WX 0 ; N uni0357 ; G 772 -U 856 ; WX 0 ; N uni0358 ; G 773 -U 858 ; WX 0 ; N uni035A ; G 774 -U 860 ; WX 0 ; N uni035C ; G 775 -U 861 ; WX 0 ; N uni035D ; G 776 -U 862 ; WX 0 ; N uni035E ; G 777 -U 863 ; WX 0 ; N uni035F ; G 778 -U 864 ; WX 0 ; N uni0360 ; G 779 -U 865 ; WX 0 ; N uni0361 ; G 780 -U 866 ; WX 0 ; N uni0362 ; G 781 -U 880 ; WX 654 ; N uni0370 ; G 782 -U 881 ; WX 568 ; N uni0371 ; G 783 -U 882 ; WX 862 ; N uni0372 ; G 784 -U 883 ; WX 647 ; N uni0373 ; G 785 -U 884 ; WX 278 ; N uni0374 ; G 786 -U 885 ; WX 278 ; N uni0375 ; G 787 -U 886 ; WX 748 ; N uni0376 ; G 788 -U 887 ; WX 650 ; N uni0377 ; G 789 -U 890 ; WX 500 ; N uni037A ; G 790 -U 891 ; WX 549 ; N uni037B ; G 791 -U 892 ; WX 550 ; N uni037C ; G 792 -U 893 ; WX 549 ; N uni037D ; G 793 -U 894 ; WX 337 ; N uni037E ; G 794 -U 895 ; WX 295 ; N uni037F ; G 795 -U 900 ; WX 500 ; N tonos ; G 796 -U 901 ; WX 500 ; N dieresistonos ; G 797 -U 902 ; WX 692 ; N Alphatonos ; G 798 -U 903 ; WX 318 ; N anoteleia ; G 799 -U 904 ; WX 746 ; N Epsilontonos ; G 800 -U 905 ; WX 871 ; N Etatonos ; G 801 -U 906 ; WX 408 ; N Iotatonos ; G 802 -U 908 ; WX 813 ; N Omicrontonos ; G 803 -U 910 ; WX 825 ; N Upsilontonos ; G 804 -U 911 ; WX 826 ; N Omegatonos ; G 805 -U 912 ; WX 338 ; N iotadieresistonos ; G 806 -U 913 ; WX 684 ; N Alpha ; G 807 -U 914 ; WX 686 ; N Beta ; G 808 -U 915 ; WX 557 ; N Gamma ; G 809 -U 916 ; WX 684 ; N uni0394 ; G 810 -U 917 ; WX 632 ; N Epsilon ; G 811 -U 918 ; WX 685 ; N Zeta ; G 812 -U 919 ; WX 752 ; N Eta ; G 813 -U 920 ; WX 787 ; N Theta ; G 814 -U 921 ; WX 295 ; N Iota ; G 815 -U 922 ; WX 656 ; N Kappa ; G 816 -U 923 ; WX 684 ; N Lambda ; G 817 -U 924 ; WX 863 ; N Mu ; G 818 -U 925 ; WX 748 ; N Nu ; G 819 -U 926 ; WX 632 ; N Xi ; G 820 -U 927 ; WX 787 ; N Omicron ; G 821 -U 928 ; WX 752 ; N Pi ; G 822 -U 929 ; WX 603 ; N Rho ; G 823 -U 931 ; WX 632 ; N Sigma ; G 824 -U 932 ; WX 611 ; N Tau ; G 825 -U 933 ; WX 611 ; N Upsilon ; G 826 -U 934 ; WX 787 ; N Phi ; G 827 -U 935 ; WX 685 ; N Chi ; G 828 -U 936 ; WX 787 ; N Psi ; G 829 -U 937 ; WX 764 ; N Omega ; G 830 -U 938 ; WX 295 ; N Iotadieresis ; G 831 -U 939 ; WX 611 ; N Upsilondieresis ; G 832 -U 940 ; WX 659 ; N alphatonos ; G 833 -U 941 ; WX 541 ; N epsilontonos ; G 834 -U 942 ; WX 634 ; N etatonos ; G 835 -U 943 ; WX 338 ; N iotatonos ; G 836 -U 944 ; WX 579 ; N upsilondieresistonos ; G 837 -U 945 ; WX 659 ; N alpha ; G 838 -U 946 ; WX 638 ; N beta ; G 839 -U 947 ; WX 592 ; N gamma ; G 840 -U 948 ; WX 612 ; N delta ; G 841 -U 949 ; WX 541 ; N epsilon ; G 842 -U 950 ; WX 544 ; N zeta ; G 843 -U 951 ; WX 634 ; N eta ; G 844 -U 952 ; WX 612 ; N theta ; G 845 -U 953 ; WX 338 ; N iota ; G 846 -U 954 ; WX 589 ; N kappa ; G 847 -U 955 ; WX 592 ; N lambda ; G 848 -U 956 ; WX 636 ; N uni03BC ; G 849 -U 957 ; WX 559 ; N nu ; G 850 -U 958 ; WX 558 ; N xi ; G 851 -U 959 ; WX 612 ; N omicron ; G 852 -U 960 ; WX 602 ; N pi ; G 853 -U 961 ; WX 635 ; N rho ; G 854 -U 962 ; WX 587 ; N sigma1 ; G 855 -U 963 ; WX 634 ; N sigma ; G 856 -U 964 ; WX 602 ; N tau ; G 857 -U 965 ; WX 579 ; N upsilon ; G 858 -U 966 ; WX 660 ; N phi ; G 859 -U 967 ; WX 578 ; N chi ; G 860 -U 968 ; WX 660 ; N psi ; G 861 -U 969 ; WX 837 ; N omega ; G 862 -U 970 ; WX 338 ; N iotadieresis ; G 863 -U 971 ; WX 579 ; N upsilondieresis ; G 864 -U 972 ; WX 612 ; N omicrontonos ; G 865 -U 973 ; WX 579 ; N upsilontonos ; G 866 -U 974 ; WX 837 ; N omegatonos ; G 867 -U 975 ; WX 656 ; N uni03CF ; G 868 -U 976 ; WX 614 ; N uni03D0 ; G 869 -U 977 ; WX 619 ; N theta1 ; G 870 -U 978 ; WX 699 ; N Upsilon1 ; G 871 -U 979 ; WX 842 ; N uni03D3 ; G 872 -U 980 ; WX 699 ; N uni03D4 ; G 873 -U 981 ; WX 660 ; N phi1 ; G 874 -U 982 ; WX 837 ; N omega1 ; G 875 -U 983 ; WX 664 ; N uni03D7 ; G 876 -U 984 ; WX 787 ; N uni03D8 ; G 877 -U 985 ; WX 612 ; N uni03D9 ; G 878 -U 986 ; WX 648 ; N uni03DA ; G 879 -U 987 ; WX 587 ; N uni03DB ; G 880 -U 988 ; WX 575 ; N uni03DC ; G 881 -U 989 ; WX 458 ; N uni03DD ; G 882 -U 990 ; WX 660 ; N uni03DE ; G 883 -U 991 ; WX 660 ; N uni03DF ; G 884 -U 992 ; WX 865 ; N uni03E0 ; G 885 -U 993 ; WX 627 ; N uni03E1 ; G 886 -U 994 ; WX 934 ; N uni03E2 ; G 887 -U 995 ; WX 837 ; N uni03E3 ; G 888 -U 996 ; WX 758 ; N uni03E4 ; G 889 -U 997 ; WX 659 ; N uni03E5 ; G 890 -U 998 ; WX 792 ; N uni03E6 ; G 891 -U 999 ; WX 615 ; N uni03E7 ; G 892 -U 1000 ; WX 687 ; N uni03E8 ; G 893 -U 1001 ; WX 607 ; N uni03E9 ; G 894 -U 1002 ; WX 768 ; N uni03EA ; G 895 -U 1003 ; WX 625 ; N uni03EB ; G 896 -U 1004 ; WX 699 ; N uni03EC ; G 897 -U 1005 ; WX 612 ; N uni03ED ; G 898 -U 1006 ; WX 611 ; N uni03EE ; G 899 -U 1007 ; WX 536 ; N uni03EF ; G 900 -U 1008 ; WX 664 ; N uni03F0 ; G 901 -U 1009 ; WX 635 ; N uni03F1 ; G 902 -U 1010 ; WX 550 ; N uni03F2 ; G 903 -U 1011 ; WX 278 ; N uni03F3 ; G 904 -U 1012 ; WX 787 ; N uni03F4 ; G 905 -U 1013 ; WX 615 ; N uni03F5 ; G 906 -U 1014 ; WX 615 ; N uni03F6 ; G 907 -U 1015 ; WX 605 ; N uni03F7 ; G 908 -U 1016 ; WX 635 ; N uni03F8 ; G 909 -U 1017 ; WX 698 ; N uni03F9 ; G 910 -U 1018 ; WX 863 ; N uni03FA ; G 911 -U 1019 ; WX 651 ; N uni03FB ; G 912 -U 1020 ; WX 635 ; N uni03FC ; G 913 -U 1021 ; WX 703 ; N uni03FD ; G 914 -U 1022 ; WX 698 ; N uni03FE ; G 915 -U 1023 ; WX 703 ; N uni03FF ; G 916 -U 1024 ; WX 632 ; N uni0400 ; G 917 -U 1025 ; WX 632 ; N uni0401 ; G 918 -U 1026 ; WX 786 ; N uni0402 ; G 919 -U 1027 ; WX 610 ; N uni0403 ; G 920 -U 1028 ; WX 698 ; N uni0404 ; G 921 -U 1029 ; WX 635 ; N uni0405 ; G 922 -U 1030 ; WX 295 ; N uni0406 ; G 923 -U 1031 ; WX 295 ; N uni0407 ; G 924 -U 1032 ; WX 295 ; N uni0408 ; G 925 -U 1033 ; WX 1094 ; N uni0409 ; G 926 -U 1034 ; WX 1045 ; N uni040A ; G 927 -U 1035 ; WX 786 ; N uni040B ; G 928 -U 1036 ; WX 710 ; N uni040C ; G 929 -U 1037 ; WX 748 ; N uni040D ; G 930 -U 1038 ; WX 609 ; N uni040E ; G 931 -U 1039 ; WX 752 ; N uni040F ; G 932 -U 1040 ; WX 684 ; N uni0410 ; G 933 -U 1041 ; WX 686 ; N uni0411 ; G 934 -U 1042 ; WX 686 ; N uni0412 ; G 935 -U 1043 ; WX 610 ; N uni0413 ; G 936 -U 1044 ; WX 781 ; N uni0414 ; G 937 -U 1045 ; WX 632 ; N uni0415 ; G 938 -U 1046 ; WX 1077 ; N uni0416 ; G 939 -U 1047 ; WX 641 ; N uni0417 ; G 940 -U 1048 ; WX 748 ; N uni0418 ; G 941 -U 1049 ; WX 748 ; N uni0419 ; G 942 -U 1050 ; WX 710 ; N uni041A ; G 943 -U 1051 ; WX 752 ; N uni041B ; G 944 -U 1052 ; WX 863 ; N uni041C ; G 945 -U 1053 ; WX 752 ; N uni041D ; G 946 -U 1054 ; WX 787 ; N uni041E ; G 947 -U 1055 ; WX 752 ; N uni041F ; G 948 -U 1056 ; WX 603 ; N uni0420 ; G 949 -U 1057 ; WX 698 ; N uni0421 ; G 950 -U 1058 ; WX 611 ; N uni0422 ; G 951 -U 1059 ; WX 609 ; N uni0423 ; G 952 -U 1060 ; WX 861 ; N uni0424 ; G 953 -U 1061 ; WX 685 ; N uni0425 ; G 954 -U 1062 ; WX 776 ; N uni0426 ; G 955 -U 1063 ; WX 686 ; N uni0427 ; G 956 -U 1064 ; WX 1069 ; N uni0428 ; G 957 -U 1065 ; WX 1094 ; N uni0429 ; G 958 -U 1066 ; WX 833 ; N uni042A ; G 959 -U 1067 ; WX 882 ; N uni042B ; G 960 -U 1068 ; WX 686 ; N uni042C ; G 961 -U 1069 ; WX 698 ; N uni042D ; G 962 -U 1070 ; WX 1080 ; N uni042E ; G 963 -U 1071 ; WX 695 ; N uni042F ; G 964 -U 1072 ; WX 613 ; N uni0430 ; G 965 -U 1073 ; WX 617 ; N uni0431 ; G 966 -U 1074 ; WX 589 ; N uni0432 ; G 967 -U 1075 ; WX 525 ; N uni0433 ; G 968 -U 1076 ; WX 691 ; N uni0434 ; G 969 -U 1077 ; WX 615 ; N uni0435 ; G 970 -U 1078 ; WX 901 ; N uni0436 ; G 971 -U 1079 ; WX 532 ; N uni0437 ; G 972 -U 1080 ; WX 650 ; N uni0438 ; G 973 -U 1081 ; WX 650 ; N uni0439 ; G 974 -U 1082 ; WX 604 ; N uni043A ; G 975 -U 1083 ; WX 639 ; N uni043B ; G 976 -U 1084 ; WX 754 ; N uni043C ; G 977 -U 1085 ; WX 654 ; N uni043D ; G 978 -U 1086 ; WX 612 ; N uni043E ; G 979 -U 1087 ; WX 654 ; N uni043F ; G 980 -U 1088 ; WX 635 ; N uni0440 ; G 981 -U 1089 ; WX 550 ; N uni0441 ; G 982 -U 1090 ; WX 583 ; N uni0442 ; G 983 -U 1091 ; WX 592 ; N uni0443 ; G 984 -U 1092 ; WX 855 ; N uni0444 ; G 985 -U 1093 ; WX 592 ; N uni0445 ; G 986 -U 1094 ; WX 681 ; N uni0446 ; G 987 -U 1095 ; WX 591 ; N uni0447 ; G 988 -U 1096 ; WX 915 ; N uni0448 ; G 989 -U 1097 ; WX 942 ; N uni0449 ; G 990 -U 1098 ; WX 707 ; N uni044A ; G 991 -U 1099 ; WX 790 ; N uni044B ; G 992 -U 1100 ; WX 589 ; N uni044C ; G 993 -U 1101 ; WX 549 ; N uni044D ; G 994 -U 1102 ; WX 842 ; N uni044E ; G 995 -U 1103 ; WX 602 ; N uni044F ; G 996 -U 1104 ; WX 615 ; N uni0450 ; G 997 -U 1105 ; WX 615 ; N uni0451 ; G 998 -U 1106 ; WX 625 ; N uni0452 ; G 999 -U 1107 ; WX 525 ; N uni0453 ; G 1000 -U 1108 ; WX 549 ; N uni0454 ; G 1001 -U 1109 ; WX 521 ; N uni0455 ; G 1002 -U 1110 ; WX 278 ; N uni0456 ; G 1003 -U 1111 ; WX 278 ; N uni0457 ; G 1004 -U 1112 ; WX 278 ; N uni0458 ; G 1005 -U 1113 ; WX 902 ; N uni0459 ; G 1006 -U 1114 ; WX 898 ; N uni045A ; G 1007 -U 1115 ; WX 652 ; N uni045B ; G 1008 -U 1116 ; WX 604 ; N uni045C ; G 1009 -U 1117 ; WX 650 ; N uni045D ; G 1010 -U 1118 ; WX 592 ; N uni045E ; G 1011 -U 1119 ; WX 654 ; N uni045F ; G 1012 -U 1120 ; WX 934 ; N uni0460 ; G 1013 -U 1121 ; WX 837 ; N uni0461 ; G 1014 -U 1122 ; WX 771 ; N uni0462 ; G 1015 -U 1123 ; WX 672 ; N uni0463 ; G 1016 -U 1124 ; WX 942 ; N uni0464 ; G 1017 -U 1125 ; WX 749 ; N uni0465 ; G 1018 -U 1126 ; WX 879 ; N uni0466 ; G 1019 -U 1127 ; WX 783 ; N uni0467 ; G 1020 -U 1128 ; WX 1160 ; N uni0468 ; G 1021 -U 1129 ; WX 1001 ; N uni0469 ; G 1022 -U 1130 ; WX 787 ; N uni046A ; G 1023 -U 1131 ; WX 612 ; N uni046B ; G 1024 -U 1132 ; WX 1027 ; N uni046C ; G 1025 -U 1133 ; WX 824 ; N uni046D ; G 1026 -U 1134 ; WX 636 ; N uni046E ; G 1027 -U 1135 ; WX 541 ; N uni046F ; G 1028 -U 1136 ; WX 856 ; N uni0470 ; G 1029 -U 1137 ; WX 876 ; N uni0471 ; G 1030 -U 1138 ; WX 787 ; N uni0472 ; G 1031 -U 1139 ; WX 612 ; N uni0473 ; G 1032 -U 1140 ; WX 781 ; N uni0474 ; G 1033 -U 1141 ; WX 665 ; N uni0475 ; G 1034 -U 1142 ; WX 781 ; N uni0476 ; G 1035 -U 1143 ; WX 665 ; N uni0477 ; G 1036 -U 1144 ; WX 992 ; N uni0478 ; G 1037 -U 1145 ; WX 904 ; N uni0479 ; G 1038 -U 1146 ; WX 953 ; N uni047A ; G 1039 -U 1147 ; WX 758 ; N uni047B ; G 1040 -U 1148 ; WX 1180 ; N uni047C ; G 1041 -U 1149 ; WX 1028 ; N uni047D ; G 1042 -U 1150 ; WX 934 ; N uni047E ; G 1043 -U 1151 ; WX 837 ; N uni047F ; G 1044 -U 1152 ; WX 698 ; N uni0480 ; G 1045 -U 1153 ; WX 550 ; N uni0481 ; G 1046 -U 1154 ; WX 502 ; N uni0482 ; G 1047 -U 1155 ; WX 0 ; N uni0483 ; G 1048 -U 1156 ; WX 0 ; N uni0484 ; G 1049 -U 1157 ; WX 0 ; N uni0485 ; G 1050 -U 1158 ; WX 0 ; N uni0486 ; G 1051 -U 1159 ; WX 0 ; N uni0487 ; G 1052 -U 1160 ; WX 418 ; N uni0488 ; G 1053 -U 1161 ; WX 418 ; N uni0489 ; G 1054 -U 1162 ; WX 772 ; N uni048A ; G 1055 -U 1163 ; WX 677 ; N uni048B ; G 1056 -U 1164 ; WX 686 ; N uni048C ; G 1057 -U 1165 ; WX 589 ; N uni048D ; G 1058 -U 1166 ; WX 603 ; N uni048E ; G 1059 -U 1167 ; WX 635 ; N uni048F ; G 1060 -U 1168 ; WX 610 ; N uni0490 ; G 1061 -U 1169 ; WX 525 ; N uni0491 ; G 1062 -U 1170 ; WX 675 ; N uni0492 ; G 1063 -U 1171 ; WX 590 ; N uni0493 ; G 1064 -U 1172 ; WX 624 ; N uni0494 ; G 1065 -U 1173 ; WX 530 ; N uni0495 ; G 1066 -U 1174 ; WX 1077 ; N uni0496 ; G 1067 -U 1175 ; WX 901 ; N uni0497 ; G 1068 -U 1176 ; WX 641 ; N uni0498 ; G 1069 -U 1177 ; WX 532 ; N uni0499 ; G 1070 -U 1178 ; WX 710 ; N uni049A ; G 1071 -U 1179 ; WX 604 ; N uni049B ; G 1072 -U 1180 ; WX 710 ; N uni049C ; G 1073 -U 1181 ; WX 604 ; N uni049D ; G 1074 -U 1182 ; WX 710 ; N uni049E ; G 1075 -U 1183 ; WX 604 ; N uni049F ; G 1076 -U 1184 ; WX 856 ; N uni04A0 ; G 1077 -U 1185 ; WX 832 ; N uni04A1 ; G 1078 -U 1186 ; WX 752 ; N uni04A2 ; G 1079 -U 1187 ; WX 661 ; N uni04A3 ; G 1080 -U 1188 ; WX 1014 ; N uni04A4 ; G 1081 -U 1189 ; WX 877 ; N uni04A5 ; G 1082 -U 1190 ; WX 1081 ; N uni04A6 ; G 1083 -U 1191 ; WX 916 ; N uni04A7 ; G 1084 -U 1192 ; WX 878 ; N uni04A8 ; G 1085 -U 1193 ; WX 693 ; N uni04A9 ; G 1086 -U 1194 ; WX 698 ; N uni04AA ; G 1087 -U 1195 ; WX 550 ; N uni04AB ; G 1088 -U 1196 ; WX 611 ; N uni04AC ; G 1089 -U 1197 ; WX 583 ; N uni04AD ; G 1090 -U 1198 ; WX 611 ; N uni04AE ; G 1091 -U 1199 ; WX 592 ; N uni04AF ; G 1092 -U 1200 ; WX 611 ; N uni04B0 ; G 1093 -U 1201 ; WX 592 ; N uni04B1 ; G 1094 -U 1202 ; WX 685 ; N uni04B2 ; G 1095 -U 1203 ; WX 592 ; N uni04B3 ; G 1096 -U 1204 ; WX 934 ; N uni04B4 ; G 1097 -U 1205 ; WX 807 ; N uni04B5 ; G 1098 -U 1206 ; WX 686 ; N uni04B6 ; G 1099 -U 1207 ; WX 591 ; N uni04B7 ; G 1100 -U 1208 ; WX 686 ; N uni04B8 ; G 1101 -U 1209 ; WX 591 ; N uni04B9 ; G 1102 -U 1210 ; WX 686 ; N uni04BA ; G 1103 -U 1211 ; WX 634 ; N uni04BB ; G 1104 -U 1212 ; WX 941 ; N uni04BC ; G 1105 -U 1213 ; WX 728 ; N uni04BD ; G 1106 -U 1214 ; WX 941 ; N uni04BE ; G 1107 -U 1215 ; WX 728 ; N uni04BF ; G 1108 -U 1216 ; WX 295 ; N uni04C0 ; G 1109 -U 1217 ; WX 1077 ; N uni04C1 ; G 1110 -U 1218 ; WX 901 ; N uni04C2 ; G 1111 -U 1219 ; WX 656 ; N uni04C3 ; G 1112 -U 1220 ; WX 604 ; N uni04C4 ; G 1113 -U 1221 ; WX 776 ; N uni04C5 ; G 1114 -U 1222 ; WX 670 ; N uni04C6 ; G 1115 -U 1223 ; WX 752 ; N uni04C7 ; G 1116 -U 1224 ; WX 661 ; N uni04C8 ; G 1117 -U 1225 ; WX 776 ; N uni04C9 ; G 1118 -U 1226 ; WX 681 ; N uni04CA ; G 1119 -U 1227 ; WX 686 ; N uni04CB ; G 1120 -U 1228 ; WX 591 ; N uni04CC ; G 1121 -U 1229 ; WX 888 ; N uni04CD ; G 1122 -U 1230 ; WX 774 ; N uni04CE ; G 1123 -U 1231 ; WX 278 ; N uni04CF ; G 1124 -U 1232 ; WX 684 ; N uni04D0 ; G 1125 -U 1233 ; WX 613 ; N uni04D1 ; G 1126 -U 1234 ; WX 684 ; N uni04D2 ; G 1127 -U 1235 ; WX 613 ; N uni04D3 ; G 1128 -U 1236 ; WX 974 ; N uni04D4 ; G 1129 -U 1237 ; WX 982 ; N uni04D5 ; G 1130 -U 1238 ; WX 632 ; N uni04D6 ; G 1131 -U 1239 ; WX 615 ; N uni04D7 ; G 1132 -U 1240 ; WX 787 ; N uni04D8 ; G 1133 -U 1241 ; WX 615 ; N uni04D9 ; G 1134 -U 1242 ; WX 787 ; N uni04DA ; G 1135 -U 1243 ; WX 615 ; N uni04DB ; G 1136 -U 1244 ; WX 1077 ; N uni04DC ; G 1137 -U 1245 ; WX 901 ; N uni04DD ; G 1138 -U 1246 ; WX 641 ; N uni04DE ; G 1139 -U 1247 ; WX 532 ; N uni04DF ; G 1140 -U 1248 ; WX 666 ; N uni04E0 ; G 1141 -U 1249 ; WX 578 ; N uni04E1 ; G 1142 -U 1250 ; WX 748 ; N uni04E2 ; G 1143 -U 1251 ; WX 650 ; N uni04E3 ; G 1144 -U 1252 ; WX 748 ; N uni04E4 ; G 1145 -U 1253 ; WX 650 ; N uni04E5 ; G 1146 -U 1254 ; WX 787 ; N uni04E6 ; G 1147 -U 1255 ; WX 612 ; N uni04E7 ; G 1148 -U 1256 ; WX 787 ; N uni04E8 ; G 1149 -U 1257 ; WX 612 ; N uni04E9 ; G 1150 -U 1258 ; WX 787 ; N uni04EA ; G 1151 -U 1259 ; WX 612 ; N uni04EB ; G 1152 -U 1260 ; WX 698 ; N uni04EC ; G 1153 -U 1261 ; WX 549 ; N uni04ED ; G 1154 -U 1262 ; WX 609 ; N uni04EE ; G 1155 -U 1263 ; WX 592 ; N uni04EF ; G 1156 -U 1264 ; WX 609 ; N uni04F0 ; G 1157 -U 1265 ; WX 592 ; N uni04F1 ; G 1158 -U 1266 ; WX 609 ; N uni04F2 ; G 1159 -U 1267 ; WX 592 ; N uni04F3 ; G 1160 -U 1268 ; WX 686 ; N uni04F4 ; G 1161 -U 1269 ; WX 591 ; N uni04F5 ; G 1162 -U 1270 ; WX 610 ; N uni04F6 ; G 1163 -U 1271 ; WX 525 ; N uni04F7 ; G 1164 -U 1272 ; WX 882 ; N uni04F8 ; G 1165 -U 1273 ; WX 790 ; N uni04F9 ; G 1166 -U 1274 ; WX 675 ; N uni04FA ; G 1167 -U 1275 ; WX 590 ; N uni04FB ; G 1168 -U 1276 ; WX 685 ; N uni04FC ; G 1169 -U 1277 ; WX 592 ; N uni04FD ; G 1170 -U 1278 ; WX 685 ; N uni04FE ; G 1171 -U 1279 ; WX 592 ; N uni04FF ; G 1172 -U 1280 ; WX 686 ; N uni0500 ; G 1173 -U 1281 ; WX 589 ; N uni0501 ; G 1174 -U 1282 ; WX 1006 ; N uni0502 ; G 1175 -U 1283 ; WX 897 ; N uni0503 ; G 1176 -U 1284 ; WX 975 ; N uni0504 ; G 1177 -U 1285 ; WX 869 ; N uni0505 ; G 1178 -U 1286 ; WX 679 ; N uni0506 ; G 1179 -U 1287 ; WX 588 ; N uni0507 ; G 1180 -U 1288 ; WX 1072 ; N uni0508 ; G 1181 -U 1289 ; WX 957 ; N uni0509 ; G 1182 -U 1290 ; WX 1113 ; N uni050A ; G 1183 -U 1291 ; WX 967 ; N uni050B ; G 1184 -U 1292 ; WX 775 ; N uni050C ; G 1185 -U 1293 ; WX 660 ; N uni050D ; G 1186 -U 1294 ; WX 773 ; N uni050E ; G 1187 -U 1295 ; WX 711 ; N uni050F ; G 1188 -U 1296 ; WX 614 ; N uni0510 ; G 1189 -U 1297 ; WX 541 ; N uni0511 ; G 1190 -U 1298 ; WX 752 ; N uni0512 ; G 1191 -U 1299 ; WX 639 ; N uni0513 ; G 1192 -U 1300 ; WX 1169 ; N uni0514 ; G 1193 -U 1301 ; WX 994 ; N uni0515 ; G 1194 -U 1302 ; WX 894 ; N uni0516 ; G 1195 -U 1303 ; WX 864 ; N uni0517 ; G 1196 -U 1304 ; WX 1032 ; N uni0518 ; G 1197 -U 1305 ; WX 986 ; N uni0519 ; G 1198 -U 1306 ; WX 787 ; N uni051A ; G 1199 -U 1307 ; WX 635 ; N uni051B ; G 1200 -U 1308 ; WX 989 ; N uni051C ; G 1201 -U 1309 ; WX 818 ; N uni051D ; G 1202 -U 1310 ; WX 710 ; N uni051E ; G 1203 -U 1311 ; WX 604 ; N uni051F ; G 1204 -U 1312 ; WX 1081 ; N uni0520 ; G 1205 -U 1313 ; WX 905 ; N uni0521 ; G 1206 -U 1314 ; WX 1081 ; N uni0522 ; G 1207 -U 1315 ; WX 912 ; N uni0523 ; G 1208 -U 1316 ; WX 793 ; N uni0524 ; G 1209 -U 1317 ; WX 683 ; N uni0525 ; G 1210 -U 1329 ; WX 766 ; N uni0531 ; G 1211 -U 1330 ; WX 732 ; N uni0532 ; G 1212 -U 1331 ; WX 753 ; N uni0533 ; G 1213 -U 1332 ; WX 753 ; N uni0534 ; G 1214 -U 1333 ; WX 732 ; N uni0535 ; G 1215 -U 1334 ; WX 772 ; N uni0536 ; G 1216 -U 1335 ; WX 640 ; N uni0537 ; G 1217 -U 1336 ; WX 732 ; N uni0538 ; G 1218 -U 1337 ; WX 859 ; N uni0539 ; G 1219 -U 1338 ; WX 753 ; N uni053A ; G 1220 -U 1339 ; WX 691 ; N uni053B ; G 1221 -U 1340 ; WX 533 ; N uni053C ; G 1222 -U 1341 ; WX 922 ; N uni053D ; G 1223 -U 1342 ; WX 863 ; N uni053E ; G 1224 -U 1343 ; WX 732 ; N uni053F ; G 1225 -U 1344 ; WX 716 ; N uni0540 ; G 1226 -U 1345 ; WX 766 ; N uni0541 ; G 1227 -U 1346 ; WX 753 ; N uni0542 ; G 1228 -U 1347 ; WX 767 ; N uni0543 ; G 1229 -U 1348 ; WX 792 ; N uni0544 ; G 1230 -U 1349 ; WX 728 ; N uni0545 ; G 1231 -U 1350 ; WX 729 ; N uni0546 ; G 1232 -U 1351 ; WX 757 ; N uni0547 ; G 1233 -U 1352 ; WX 732 ; N uni0548 ; G 1234 -U 1353 ; WX 713 ; N uni0549 ; G 1235 -U 1354 ; WX 800 ; N uni054A ; G 1236 -U 1355 ; WX 768 ; N uni054B ; G 1237 -U 1356 ; WX 792 ; N uni054C ; G 1238 -U 1357 ; WX 732 ; N uni054D ; G 1239 -U 1358 ; WX 753 ; N uni054E ; G 1240 -U 1359 ; WX 705 ; N uni054F ; G 1241 -U 1360 ; WX 694 ; N uni0550 ; G 1242 -U 1361 ; WX 744 ; N uni0551 ; G 1243 -U 1362 ; WX 538 ; N uni0552 ; G 1244 -U 1363 ; WX 811 ; N uni0553 ; G 1245 -U 1364 ; WX 757 ; N uni0554 ; G 1246 -U 1365 ; WX 787 ; N uni0555 ; G 1247 -U 1366 ; WX 790 ; N uni0556 ; G 1248 -U 1369 ; WX 307 ; N uni0559 ; G 1249 -U 1370 ; WX 318 ; N uni055A ; G 1250 -U 1371 ; WX 234 ; N uni055B ; G 1251 -U 1372 ; WX 361 ; N uni055C ; G 1252 -U 1373 ; WX 238 ; N uni055D ; G 1253 -U 1374 ; WX 405 ; N uni055E ; G 1254 -U 1375 ; WX 500 ; N uni055F ; G 1255 -U 1377 ; WX 974 ; N uni0561 ; G 1256 -U 1378 ; WX 634 ; N uni0562 ; G 1257 -U 1379 ; WX 658 ; N uni0563 ; G 1258 -U 1380 ; WX 663 ; N uni0564 ; G 1259 -U 1381 ; WX 634 ; N uni0565 ; G 1260 -U 1382 ; WX 635 ; N uni0566 ; G 1261 -U 1383 ; WX 515 ; N uni0567 ; G 1262 -U 1384 ; WX 634 ; N uni0568 ; G 1263 -U 1385 ; WX 738 ; N uni0569 ; G 1264 -U 1386 ; WX 658 ; N uni056A ; G 1265 -U 1387 ; WX 634 ; N uni056B ; G 1266 -U 1388 ; WX 271 ; N uni056C ; G 1267 -U 1389 ; WX 980 ; N uni056D ; G 1268 -U 1390 ; WX 623 ; N uni056E ; G 1269 -U 1391 ; WX 634 ; N uni056F ; G 1270 -U 1392 ; WX 634 ; N uni0570 ; G 1271 -U 1393 ; WX 608 ; N uni0571 ; G 1272 -U 1394 ; WX 634 ; N uni0572 ; G 1273 -U 1395 ; WX 629 ; N uni0573 ; G 1274 -U 1396 ; WX 634 ; N uni0574 ; G 1275 -U 1397 ; WX 271 ; N uni0575 ; G 1276 -U 1398 ; WX 634 ; N uni0576 ; G 1277 -U 1399 ; WX 499 ; N uni0577 ; G 1278 -U 1400 ; WX 634 ; N uni0578 ; G 1279 -U 1401 ; WX 404 ; N uni0579 ; G 1280 -U 1402 ; WX 974 ; N uni057A ; G 1281 -U 1403 ; WX 560 ; N uni057B ; G 1282 -U 1404 ; WX 648 ; N uni057C ; G 1283 -U 1405 ; WX 634 ; N uni057D ; G 1284 -U 1406 ; WX 634 ; N uni057E ; G 1285 -U 1407 ; WX 974 ; N uni057F ; G 1286 -U 1408 ; WX 634 ; N uni0580 ; G 1287 -U 1409 ; WX 633 ; N uni0581 ; G 1288 -U 1410 ; WX 435 ; N uni0582 ; G 1289 -U 1411 ; WX 974 ; N uni0583 ; G 1290 -U 1412 ; WX 636 ; N uni0584 ; G 1291 -U 1413 ; WX 609 ; N uni0585 ; G 1292 -U 1414 ; WX 805 ; N uni0586 ; G 1293 -U 1415 ; WX 812 ; N uni0587 ; G 1294 -U 1417 ; WX 337 ; N uni0589 ; G 1295 -U 1418 ; WX 361 ; N uni058A ; G 1296 -U 1456 ; WX 0 ; N uni05B0 ; G 1297 -U 1457 ; WX 0 ; N uni05B1 ; G 1298 -U 1458 ; WX 0 ; N uni05B2 ; G 1299 -U 1459 ; WX 0 ; N uni05B3 ; G 1300 -U 1460 ; WX 0 ; N uni05B4 ; G 1301 -U 1461 ; WX 0 ; N uni05B5 ; G 1302 -U 1462 ; WX 0 ; N uni05B6 ; G 1303 -U 1463 ; WX 0 ; N uni05B7 ; G 1304 -U 1464 ; WX 0 ; N uni05B8 ; G 1305 -U 1465 ; WX 0 ; N uni05B9 ; G 1306 -U 1466 ; WX 0 ; N uni05BA ; G 1307 -U 1467 ; WX 0 ; N uni05BB ; G 1308 -U 1468 ; WX 0 ; N uni05BC ; G 1309 -U 1469 ; WX 0 ; N uni05BD ; G 1310 -U 1470 ; WX 361 ; N uni05BE ; G 1311 -U 1471 ; WX 0 ; N uni05BF ; G 1312 -U 1472 ; WX 295 ; N uni05C0 ; G 1313 -U 1473 ; WX 0 ; N uni05C1 ; G 1314 -U 1474 ; WX 0 ; N uni05C2 ; G 1315 -U 1475 ; WX 295 ; N uni05C3 ; G 1316 -U 1478 ; WX 441 ; N uni05C6 ; G 1317 -U 1479 ; WX 0 ; N uni05C7 ; G 1318 -U 1488 ; WX 668 ; N uni05D0 ; G 1319 -U 1489 ; WX 578 ; N uni05D1 ; G 1320 -U 1490 ; WX 412 ; N uni05D2 ; G 1321 -U 1491 ; WX 546 ; N uni05D3 ; G 1322 -U 1492 ; WX 653 ; N uni05D4 ; G 1323 -U 1493 ; WX 272 ; N uni05D5 ; G 1324 -U 1494 ; WX 346 ; N uni05D6 ; G 1325 -U 1495 ; WX 653 ; N uni05D7 ; G 1326 -U 1496 ; WX 648 ; N uni05D8 ; G 1327 -U 1497 ; WX 224 ; N uni05D9 ; G 1328 -U 1498 ; WX 537 ; N uni05DA ; G 1329 -U 1499 ; WX 529 ; N uni05DB ; G 1330 -U 1500 ; WX 568 ; N uni05DC ; G 1331 -U 1501 ; WX 664 ; N uni05DD ; G 1332 -U 1502 ; WX 679 ; N uni05DE ; G 1333 -U 1503 ; WX 272 ; N uni05DF ; G 1334 -U 1504 ; WX 400 ; N uni05E0 ; G 1335 -U 1505 ; WX 649 ; N uni05E1 ; G 1336 -U 1506 ; WX 626 ; N uni05E2 ; G 1337 -U 1507 ; WX 640 ; N uni05E3 ; G 1338 -U 1508 ; WX 625 ; N uni05E4 ; G 1339 -U 1509 ; WX 540 ; N uni05E5 ; G 1340 -U 1510 ; WX 593 ; N uni05E6 ; G 1341 -U 1511 ; WX 709 ; N uni05E7 ; G 1342 -U 1512 ; WX 564 ; N uni05E8 ; G 1343 -U 1513 ; WX 708 ; N uni05E9 ; G 1344 -U 1514 ; WX 657 ; N uni05EA ; G 1345 -U 1520 ; WX 471 ; N uni05F0 ; G 1346 -U 1521 ; WX 423 ; N uni05F1 ; G 1347 -U 1522 ; WX 331 ; N uni05F2 ; G 1348 -U 1523 ; WX 416 ; N uni05F3 ; G 1349 -U 1524 ; WX 645 ; N uni05F4 ; G 1350 -U 1542 ; WX 637 ; N uni0606 ; G 1351 -U 1543 ; WX 637 ; N uni0607 ; G 1352 -U 1545 ; WX 757 ; N uni0609 ; G 1353 -U 1546 ; WX 977 ; N uni060A ; G 1354 -U 1548 ; WX 323 ; N uni060C ; G 1355 -U 1557 ; WX 0 ; N uni0615 ; G 1356 -U 1563 ; WX 318 ; N uni061B ; G 1357 -U 1567 ; WX 531 ; N uni061F ; G 1358 -U 1569 ; WX 470 ; N uni0621 ; G 1359 -U 1570 ; WX 278 ; N uni0622 ; G 1360 -U 1571 ; WX 278 ; N uni0623 ; G 1361 -U 1572 ; WX 483 ; N uni0624 ; G 1362 -U 1573 ; WX 278 ; N uni0625 ; G 1363 -U 1574 ; WX 783 ; N uni0626 ; G 1364 -U 1575 ; WX 278 ; N uni0627 ; G 1365 -U 1576 ; WX 941 ; N uni0628 ; G 1366 -U 1577 ; WX 524 ; N uni0629 ; G 1367 -U 1578 ; WX 941 ; N uni062A ; G 1368 -U 1579 ; WX 941 ; N uni062B ; G 1369 -U 1580 ; WX 646 ; N uni062C ; G 1370 -U 1581 ; WX 646 ; N uni062D ; G 1371 -U 1582 ; WX 646 ; N uni062E ; G 1372 -U 1583 ; WX 445 ; N uni062F ; G 1373 -U 1584 ; WX 445 ; N uni0630 ; G 1374 -U 1585 ; WX 483 ; N uni0631 ; G 1375 -U 1586 ; WX 483 ; N uni0632 ; G 1376 -U 1587 ; WX 1221 ; N uni0633 ; G 1377 -U 1588 ; WX 1221 ; N uni0634 ; G 1378 -U 1589 ; WX 1209 ; N uni0635 ; G 1379 -U 1590 ; WX 1209 ; N uni0636 ; G 1380 -U 1591 ; WX 925 ; N uni0637 ; G 1381 -U 1592 ; WX 925 ; N uni0638 ; G 1382 -U 1593 ; WX 597 ; N uni0639 ; G 1383 -U 1594 ; WX 597 ; N uni063A ; G 1384 -U 1600 ; WX 293 ; N uni0640 ; G 1385 -U 1601 ; WX 1037 ; N uni0641 ; G 1386 -U 1602 ; WX 776 ; N uni0642 ; G 1387 -U 1603 ; WX 824 ; N uni0643 ; G 1388 -U 1604 ; WX 727 ; N uni0644 ; G 1389 -U 1605 ; WX 619 ; N uni0645 ; G 1390 -U 1606 ; WX 734 ; N uni0646 ; G 1391 -U 1607 ; WX 524 ; N uni0647 ; G 1392 -U 1608 ; WX 483 ; N uni0648 ; G 1393 -U 1609 ; WX 783 ; N uni0649 ; G 1394 -U 1610 ; WX 783 ; N uni064A ; G 1395 -U 1611 ; WX 0 ; N uni064B ; G 1396 -U 1612 ; WX 0 ; N uni064C ; G 1397 -U 1613 ; WX 0 ; N uni064D ; G 1398 -U 1614 ; WX 0 ; N uni064E ; G 1399 -U 1615 ; WX 0 ; N uni064F ; G 1400 -U 1616 ; WX 0 ; N uni0650 ; G 1401 -U 1617 ; WX 0 ; N uni0651 ; G 1402 -U 1618 ; WX 0 ; N uni0652 ; G 1403 -U 1619 ; WX 0 ; N uni0653 ; G 1404 -U 1620 ; WX 0 ; N uni0654 ; G 1405 -U 1621 ; WX 0 ; N uni0655 ; G 1406 -U 1623 ; WX 0 ; N uni0657 ; G 1407 -U 1626 ; WX 500 ; N uni065A ; G 1408 -U 1632 ; WX 537 ; N uni0660 ; G 1409 -U 1633 ; WX 537 ; N uni0661 ; G 1410 -U 1634 ; WX 537 ; N uni0662 ; G 1411 -U 1635 ; WX 537 ; N uni0663 ; G 1412 -U 1636 ; WX 537 ; N uni0664 ; G 1413 -U 1637 ; WX 537 ; N uni0665 ; G 1414 -U 1638 ; WX 537 ; N uni0666 ; G 1415 -U 1639 ; WX 537 ; N uni0667 ; G 1416 -U 1640 ; WX 537 ; N uni0668 ; G 1417 -U 1641 ; WX 537 ; N uni0669 ; G 1418 -U 1642 ; WX 537 ; N uni066A ; G 1419 -U 1643 ; WX 325 ; N uni066B ; G 1420 -U 1644 ; WX 318 ; N uni066C ; G 1421 -U 1645 ; WX 545 ; N uni066D ; G 1422 -U 1646 ; WX 941 ; N uni066E ; G 1423 -U 1647 ; WX 776 ; N uni066F ; G 1424 -U 1648 ; WX 0 ; N uni0670 ; G 1425 -U 1652 ; WX 292 ; N uni0674 ; G 1426 -U 1657 ; WX 941 ; N uni0679 ; G 1427 -U 1658 ; WX 941 ; N uni067A ; G 1428 -U 1659 ; WX 941 ; N uni067B ; G 1429 -U 1660 ; WX 941 ; N uni067C ; G 1430 -U 1661 ; WX 941 ; N uni067D ; G 1431 -U 1662 ; WX 941 ; N uni067E ; G 1432 -U 1663 ; WX 941 ; N uni067F ; G 1433 -U 1664 ; WX 941 ; N uni0680 ; G 1434 -U 1665 ; WX 646 ; N uni0681 ; G 1435 -U 1666 ; WX 646 ; N uni0682 ; G 1436 -U 1667 ; WX 646 ; N uni0683 ; G 1437 -U 1668 ; WX 646 ; N uni0684 ; G 1438 -U 1669 ; WX 646 ; N uni0685 ; G 1439 -U 1670 ; WX 646 ; N uni0686 ; G 1440 -U 1671 ; WX 646 ; N uni0687 ; G 1441 -U 1672 ; WX 445 ; N uni0688 ; G 1442 -U 1673 ; WX 445 ; N uni0689 ; G 1443 -U 1674 ; WX 445 ; N uni068A ; G 1444 -U 1675 ; WX 445 ; N uni068B ; G 1445 -U 1676 ; WX 445 ; N uni068C ; G 1446 -U 1677 ; WX 445 ; N uni068D ; G 1447 -U 1678 ; WX 445 ; N uni068E ; G 1448 -U 1679 ; WX 445 ; N uni068F ; G 1449 -U 1680 ; WX 445 ; N uni0690 ; G 1450 -U 1681 ; WX 483 ; N uni0691 ; G 1451 -U 1682 ; WX 483 ; N uni0692 ; G 1452 -U 1683 ; WX 498 ; N uni0693 ; G 1453 -U 1684 ; WX 530 ; N uni0694 ; G 1454 -U 1685 ; WX 610 ; N uni0695 ; G 1455 -U 1686 ; WX 530 ; N uni0696 ; G 1456 -U 1687 ; WX 483 ; N uni0697 ; G 1457 -U 1688 ; WX 483 ; N uni0698 ; G 1458 -U 1689 ; WX 483 ; N uni0699 ; G 1459 -U 1690 ; WX 1221 ; N uni069A ; G 1460 -U 1691 ; WX 1221 ; N uni069B ; G 1461 -U 1692 ; WX 1221 ; N uni069C ; G 1462 -U 1693 ; WX 1209 ; N uni069D ; G 1463 -U 1694 ; WX 1209 ; N uni069E ; G 1464 -U 1695 ; WX 925 ; N uni069F ; G 1465 -U 1696 ; WX 597 ; N uni06A0 ; G 1466 -U 1697 ; WX 1037 ; N uni06A1 ; G 1467 -U 1698 ; WX 1037 ; N uni06A2 ; G 1468 -U 1699 ; WX 1037 ; N uni06A3 ; G 1469 -U 1700 ; WX 1037 ; N uni06A4 ; G 1470 -U 1701 ; WX 1037 ; N uni06A5 ; G 1471 -U 1702 ; WX 1037 ; N uni06A6 ; G 1472 -U 1703 ; WX 776 ; N uni06A7 ; G 1473 -U 1704 ; WX 776 ; N uni06A8 ; G 1474 -U 1705 ; WX 895 ; N uni06A9 ; G 1475 -U 1706 ; WX 1054 ; N uni06AA ; G 1476 -U 1707 ; WX 895 ; N uni06AB ; G 1477 -U 1708 ; WX 824 ; N uni06AC ; G 1478 -U 1709 ; WX 824 ; N uni06AD ; G 1479 -U 1710 ; WX 824 ; N uni06AE ; G 1480 -U 1711 ; WX 895 ; N uni06AF ; G 1481 -U 1712 ; WX 895 ; N uni06B0 ; G 1482 -U 1713 ; WX 895 ; N uni06B1 ; G 1483 -U 1714 ; WX 895 ; N uni06B2 ; G 1484 -U 1715 ; WX 895 ; N uni06B3 ; G 1485 -U 1716 ; WX 895 ; N uni06B4 ; G 1486 -U 1717 ; WX 727 ; N uni06B5 ; G 1487 -U 1718 ; WX 727 ; N uni06B6 ; G 1488 -U 1719 ; WX 727 ; N uni06B7 ; G 1489 -U 1720 ; WX 727 ; N uni06B8 ; G 1490 -U 1721 ; WX 734 ; N uni06B9 ; G 1491 -U 1722 ; WX 734 ; N uni06BA ; G 1492 -U 1723 ; WX 734 ; N uni06BB ; G 1493 -U 1724 ; WX 734 ; N uni06BC ; G 1494 -U 1725 ; WX 734 ; N uni06BD ; G 1495 -U 1726 ; WX 698 ; N uni06BE ; G 1496 -U 1727 ; WX 646 ; N uni06BF ; G 1497 -U 1734 ; WX 483 ; N uni06C6 ; G 1498 -U 1735 ; WX 483 ; N uni06C7 ; G 1499 -U 1736 ; WX 483 ; N uni06C8 ; G 1500 -U 1739 ; WX 483 ; N uni06CB ; G 1501 -U 1740 ; WX 783 ; N uni06CC ; G 1502 -U 1742 ; WX 783 ; N uni06CE ; G 1503 -U 1744 ; WX 783 ; N uni06D0 ; G 1504 -U 1749 ; WX 524 ; N uni06D5 ; G 1505 -U 1776 ; WX 537 ; N uni06F0 ; G 1506 -U 1777 ; WX 537 ; N uni06F1 ; G 1507 -U 1778 ; WX 537 ; N uni06F2 ; G 1508 -U 1779 ; WX 537 ; N uni06F3 ; G 1509 -U 1780 ; WX 537 ; N uni06F4 ; G 1510 -U 1781 ; WX 537 ; N uni06F5 ; G 1511 -U 1782 ; WX 537 ; N uni06F6 ; G 1512 -U 1783 ; WX 537 ; N uni06F7 ; G 1513 -U 1784 ; WX 537 ; N uni06F8 ; G 1514 -U 1785 ; WX 537 ; N uni06F9 ; G 1515 -U 1984 ; WX 636 ; N uni07C0 ; G 1516 -U 1985 ; WX 636 ; N uni07C1 ; G 1517 -U 1986 ; WX 636 ; N uni07C2 ; G 1518 -U 1987 ; WX 636 ; N uni07C3 ; G 1519 -U 1988 ; WX 636 ; N uni07C4 ; G 1520 -U 1989 ; WX 636 ; N uni07C5 ; G 1521 -U 1990 ; WX 636 ; N uni07C6 ; G 1522 -U 1991 ; WX 636 ; N uni07C7 ; G 1523 -U 1992 ; WX 636 ; N uni07C8 ; G 1524 -U 1993 ; WX 636 ; N uni07C9 ; G 1525 -U 1994 ; WX 278 ; N uni07CA ; G 1526 -U 1995 ; WX 571 ; N uni07CB ; G 1527 -U 1996 ; WX 424 ; N uni07CC ; G 1528 -U 1997 ; WX 592 ; N uni07CD ; G 1529 -U 1998 ; WX 654 ; N uni07CE ; G 1530 -U 1999 ; WX 654 ; N uni07CF ; G 1531 -U 2000 ; WX 594 ; N uni07D0 ; G 1532 -U 2001 ; WX 654 ; N uni07D1 ; G 1533 -U 2002 ; WX 829 ; N uni07D2 ; G 1534 -U 2003 ; WX 438 ; N uni07D3 ; G 1535 -U 2004 ; WX 438 ; N uni07D4 ; G 1536 -U 2005 ; WX 559 ; N uni07D5 ; G 1537 -U 2006 ; WX 612 ; N uni07D6 ; G 1538 -U 2007 ; WX 350 ; N uni07D7 ; G 1539 -U 2008 ; WX 959 ; N uni07D8 ; G 1540 -U 2009 ; WX 473 ; N uni07D9 ; G 1541 -U 2010 ; WX 783 ; N uni07DA ; G 1542 -U 2011 ; WX 654 ; N uni07DB ; G 1543 -U 2012 ; WX 625 ; N uni07DC ; G 1544 -U 2013 ; WX 734 ; N uni07DD ; G 1545 -U 2014 ; WX 530 ; N uni07DE ; G 1546 -U 2015 ; WX 724 ; N uni07DF ; G 1547 -U 2016 ; WX 473 ; N uni07E0 ; G 1548 -U 2017 ; WX 625 ; N uni07E1 ; G 1549 -U 2018 ; WX 594 ; N uni07E2 ; G 1550 -U 2019 ; WX 530 ; N uni07E3 ; G 1551 -U 2020 ; WX 530 ; N uni07E4 ; G 1552 -U 2021 ; WX 522 ; N uni07E5 ; G 1553 -U 2022 ; WX 594 ; N uni07E6 ; G 1554 -U 2023 ; WX 594 ; N uni07E7 ; G 1555 -U 2027 ; WX 0 ; N uni07EB ; G 1556 -U 2028 ; WX 0 ; N uni07EC ; G 1557 -U 2029 ; WX 0 ; N uni07ED ; G 1558 -U 2030 ; WX 0 ; N uni07EE ; G 1559 -U 2031 ; WX 0 ; N uni07EF ; G 1560 -U 2032 ; WX 0 ; N uni07F0 ; G 1561 -U 2033 ; WX 0 ; N uni07F1 ; G 1562 -U 2034 ; WX 0 ; N uni07F2 ; G 1563 -U 2035 ; WX 0 ; N uni07F3 ; G 1564 -U 2036 ; WX 313 ; N uni07F4 ; G 1565 -U 2037 ; WX 313 ; N uni07F5 ; G 1566 -U 2040 ; WX 560 ; N uni07F8 ; G 1567 -U 2041 ; WX 560 ; N uni07F9 ; G 1568 -U 2042 ; WX 361 ; N uni07FA ; G 1569 -U 3647 ; WX 636 ; N uni0E3F ; G 1570 -U 3713 ; WX 670 ; N uni0E81 ; G 1571 -U 3714 ; WX 684 ; N uni0E82 ; G 1572 -U 3716 ; WX 688 ; N uni0E84 ; G 1573 -U 3719 ; WX 482 ; N uni0E87 ; G 1574 -U 3720 ; WX 628 ; N uni0E88 ; G 1575 -U 3722 ; WX 684 ; N uni0E8A ; G 1576 -U 3725 ; WX 688 ; N uni0E8D ; G 1577 -U 3732 ; WX 669 ; N uni0E94 ; G 1578 -U 3733 ; WX 642 ; N uni0E95 ; G 1579 -U 3734 ; WX 645 ; N uni0E96 ; G 1580 -U 3735 ; WX 655 ; N uni0E97 ; G 1581 -U 3737 ; WX 659 ; N uni0E99 ; G 1582 -U 3738 ; WX 625 ; N uni0E9A ; G 1583 -U 3739 ; WX 625 ; N uni0E9B ; G 1584 -U 3740 ; WX 745 ; N uni0E9C ; G 1585 -U 3741 ; WX 767 ; N uni0E9D ; G 1586 -U 3742 ; WX 687 ; N uni0E9E ; G 1587 -U 3743 ; WX 687 ; N uni0E9F ; G 1588 -U 3745 ; WX 702 ; N uni0EA1 ; G 1589 -U 3746 ; WX 688 ; N uni0EA2 ; G 1590 -U 3747 ; WX 684 ; N uni0EA3 ; G 1591 -U 3749 ; WX 649 ; N uni0EA5 ; G 1592 -U 3751 ; WX 632 ; N uni0EA7 ; G 1593 -U 3754 ; WX 703 ; N uni0EAA ; G 1594 -U 3755 ; WX 819 ; N uni0EAB ; G 1595 -U 3757 ; WX 633 ; N uni0EAD ; G 1596 -U 3758 ; WX 684 ; N uni0EAE ; G 1597 -U 3759 ; WX 788 ; N uni0EAF ; G 1598 -U 3760 ; WX 632 ; N uni0EB0 ; G 1599 -U 3761 ; WX 0 ; N uni0EB1 ; G 1600 -U 3762 ; WX 539 ; N uni0EB2 ; G 1601 -U 3763 ; WX 539 ; N uni0EB3 ; G 1602 -U 3764 ; WX 0 ; N uni0EB4 ; G 1603 -U 3765 ; WX 0 ; N uni0EB5 ; G 1604 -U 3766 ; WX 0 ; N uni0EB6 ; G 1605 -U 3767 ; WX 0 ; N uni0EB7 ; G 1606 -U 3768 ; WX 0 ; N uni0EB8 ; G 1607 -U 3769 ; WX 0 ; N uni0EB9 ; G 1608 -U 3771 ; WX 0 ; N uni0EBB ; G 1609 -U 3772 ; WX 0 ; N uni0EBC ; G 1610 -U 3773 ; WX 663 ; N uni0EBD ; G 1611 -U 3776 ; WX 375 ; N uni0EC0 ; G 1612 -U 3777 ; WX 657 ; N uni0EC1 ; G 1613 -U 3778 ; WX 460 ; N uni0EC2 ; G 1614 -U 3779 ; WX 547 ; N uni0EC3 ; G 1615 -U 3780 ; WX 491 ; N uni0EC4 ; G 1616 -U 3782 ; WX 674 ; N uni0EC6 ; G 1617 -U 3784 ; WX 0 ; N uni0EC8 ; G 1618 -U 3785 ; WX 0 ; N uni0EC9 ; G 1619 -U 3786 ; WX 0 ; N uni0ECA ; G 1620 -U 3787 ; WX 0 ; N uni0ECB ; G 1621 -U 3788 ; WX 0 ; N uni0ECC ; G 1622 -U 3789 ; WX 0 ; N uni0ECD ; G 1623 -U 3792 ; WX 636 ; N uni0ED0 ; G 1624 -U 3793 ; WX 641 ; N uni0ED1 ; G 1625 -U 3794 ; WX 641 ; N uni0ED2 ; G 1626 -U 3795 ; WX 670 ; N uni0ED3 ; G 1627 -U 3796 ; WX 625 ; N uni0ED4 ; G 1628 -U 3797 ; WX 625 ; N uni0ED5 ; G 1629 -U 3798 ; WX 703 ; N uni0ED6 ; G 1630 -U 3799 ; WX 670 ; N uni0ED7 ; G 1631 -U 3800 ; WX 674 ; N uni0ED8 ; G 1632 -U 3801 ; WX 677 ; N uni0ED9 ; G 1633 -U 3804 ; WX 1028 ; N uni0EDC ; G 1634 -U 3805 ; WX 1028 ; N uni0EDD ; G 1635 -U 4256 ; WX 874 ; N uni10A0 ; G 1636 -U 4257 ; WX 733 ; N uni10A1 ; G 1637 -U 4258 ; WX 679 ; N uni10A2 ; G 1638 -U 4259 ; WX 834 ; N uni10A3 ; G 1639 -U 4260 ; WX 615 ; N uni10A4 ; G 1640 -U 4261 ; WX 768 ; N uni10A5 ; G 1641 -U 4262 ; WX 753 ; N uni10A6 ; G 1642 -U 4263 ; WX 914 ; N uni10A7 ; G 1643 -U 4264 ; WX 453 ; N uni10A8 ; G 1644 -U 4265 ; WX 620 ; N uni10A9 ; G 1645 -U 4266 ; WX 843 ; N uni10AA ; G 1646 -U 4267 ; WX 882 ; N uni10AB ; G 1647 -U 4268 ; WX 625 ; N uni10AC ; G 1648 -U 4269 ; WX 854 ; N uni10AD ; G 1649 -U 4270 ; WX 781 ; N uni10AE ; G 1650 -U 4271 ; WX 629 ; N uni10AF ; G 1651 -U 4272 ; WX 912 ; N uni10B0 ; G 1652 -U 4273 ; WX 621 ; N uni10B1 ; G 1653 -U 4274 ; WX 620 ; N uni10B2 ; G 1654 -U 4275 ; WX 854 ; N uni10B3 ; G 1655 -U 4276 ; WX 866 ; N uni10B4 ; G 1656 -U 4277 ; WX 724 ; N uni10B5 ; G 1657 -U 4278 ; WX 630 ; N uni10B6 ; G 1658 -U 4279 ; WX 621 ; N uni10B7 ; G 1659 -U 4280 ; WX 625 ; N uni10B8 ; G 1660 -U 4281 ; WX 620 ; N uni10B9 ; G 1661 -U 4282 ; WX 818 ; N uni10BA ; G 1662 -U 4283 ; WX 874 ; N uni10BB ; G 1663 -U 4284 ; WX 615 ; N uni10BC ; G 1664 -U 4285 ; WX 623 ; N uni10BD ; G 1665 -U 4286 ; WX 625 ; N uni10BE ; G 1666 -U 4287 ; WX 725 ; N uni10BF ; G 1667 -U 4288 ; WX 844 ; N uni10C0 ; G 1668 -U 4289 ; WX 596 ; N uni10C1 ; G 1669 -U 4290 ; WX 688 ; N uni10C2 ; G 1670 -U 4291 ; WX 596 ; N uni10C3 ; G 1671 -U 4292 ; WX 594 ; N uni10C4 ; G 1672 -U 4293 ; WX 738 ; N uni10C5 ; G 1673 -U 4304 ; WX 508 ; N uni10D0 ; G 1674 -U 4305 ; WX 518 ; N uni10D1 ; G 1675 -U 4306 ; WX 581 ; N uni10D2 ; G 1676 -U 4307 ; WX 818 ; N uni10D3 ; G 1677 -U 4308 ; WX 508 ; N uni10D4 ; G 1678 -U 4309 ; WX 513 ; N uni10D5 ; G 1679 -U 4310 ; WX 500 ; N uni10D6 ; G 1680 -U 4311 ; WX 801 ; N uni10D7 ; G 1681 -U 4312 ; WX 518 ; N uni10D8 ; G 1682 -U 4313 ; WX 510 ; N uni10D9 ; G 1683 -U 4314 ; WX 1064 ; N uni10DA ; G 1684 -U 4315 ; WX 522 ; N uni10DB ; G 1685 -U 4316 ; WX 522 ; N uni10DC ; G 1686 -U 4317 ; WX 786 ; N uni10DD ; G 1687 -U 4318 ; WX 508 ; N uni10DE ; G 1688 -U 4319 ; WX 518 ; N uni10DF ; G 1689 -U 4320 ; WX 796 ; N uni10E0 ; G 1690 -U 4321 ; WX 522 ; N uni10E1 ; G 1691 -U 4322 ; WX 654 ; N uni10E2 ; G 1692 -U 4323 ; WX 522 ; N uni10E3 ; G 1693 -U 4324 ; WX 825 ; N uni10E4 ; G 1694 -U 4325 ; WX 513 ; N uni10E5 ; G 1695 -U 4326 ; WX 786 ; N uni10E6 ; G 1696 -U 4327 ; WX 518 ; N uni10E7 ; G 1697 -U 4328 ; WX 518 ; N uni10E8 ; G 1698 -U 4329 ; WX 522 ; N uni10E9 ; G 1699 -U 4330 ; WX 571 ; N uni10EA ; G 1700 -U 4331 ; WX 522 ; N uni10EB ; G 1701 -U 4332 ; WX 518 ; N uni10EC ; G 1702 -U 4333 ; WX 520 ; N uni10ED ; G 1703 -U 4334 ; WX 522 ; N uni10EE ; G 1704 -U 4335 ; WX 454 ; N uni10EF ; G 1705 -U 4336 ; WX 508 ; N uni10F0 ; G 1706 -U 4337 ; WX 518 ; N uni10F1 ; G 1707 -U 4338 ; WX 508 ; N uni10F2 ; G 1708 -U 4339 ; WX 508 ; N uni10F3 ; G 1709 -U 4340 ; WX 518 ; N uni10F4 ; G 1710 -U 4341 ; WX 554 ; N uni10F5 ; G 1711 -U 4342 ; WX 828 ; N uni10F6 ; G 1712 -U 4343 ; WX 552 ; N uni10F7 ; G 1713 -U 4344 ; WX 508 ; N uni10F8 ; G 1714 -U 4345 ; WX 571 ; N uni10F9 ; G 1715 -U 4346 ; WX 508 ; N uni10FA ; G 1716 -U 4347 ; WX 448 ; N uni10FB ; G 1717 -U 4348 ; WX 324 ; N uni10FC ; G 1718 -U 5121 ; WX 684 ; N uni1401 ; G 1719 -U 5122 ; WX 684 ; N uni1402 ; G 1720 -U 5123 ; WX 684 ; N uni1403 ; G 1721 -U 5124 ; WX 684 ; N uni1404 ; G 1722 -U 5125 ; WX 769 ; N uni1405 ; G 1723 -U 5126 ; WX 769 ; N uni1406 ; G 1724 -U 5127 ; WX 769 ; N uni1407 ; G 1725 -U 5129 ; WX 769 ; N uni1409 ; G 1726 -U 5130 ; WX 769 ; N uni140A ; G 1727 -U 5131 ; WX 769 ; N uni140B ; G 1728 -U 5132 ; WX 835 ; N uni140C ; G 1729 -U 5133 ; WX 834 ; N uni140D ; G 1730 -U 5134 ; WX 835 ; N uni140E ; G 1731 -U 5135 ; WX 834 ; N uni140F ; G 1732 -U 5136 ; WX 835 ; N uni1410 ; G 1733 -U 5137 ; WX 834 ; N uni1411 ; G 1734 -U 5138 ; WX 967 ; N uni1412 ; G 1735 -U 5139 ; WX 1007 ; N uni1413 ; G 1736 -U 5140 ; WX 967 ; N uni1414 ; G 1737 -U 5141 ; WX 1007 ; N uni1415 ; G 1738 -U 5142 ; WX 769 ; N uni1416 ; G 1739 -U 5143 ; WX 967 ; N uni1417 ; G 1740 -U 5144 ; WX 1007 ; N uni1418 ; G 1741 -U 5145 ; WX 967 ; N uni1419 ; G 1742 -U 5146 ; WX 1007 ; N uni141A ; G 1743 -U 5147 ; WX 769 ; N uni141B ; G 1744 -U 5149 ; WX 256 ; N uni141D ; G 1745 -U 5150 ; WX 543 ; N uni141E ; G 1746 -U 5151 ; WX 423 ; N uni141F ; G 1747 -U 5152 ; WX 423 ; N uni1420 ; G 1748 -U 5153 ; WX 389 ; N uni1421 ; G 1749 -U 5154 ; WX 389 ; N uni1422 ; G 1750 -U 5155 ; WX 393 ; N uni1423 ; G 1751 -U 5156 ; WX 389 ; N uni1424 ; G 1752 -U 5157 ; WX 466 ; N uni1425 ; G 1753 -U 5158 ; WX 385 ; N uni1426 ; G 1754 -U 5159 ; WX 256 ; N uni1427 ; G 1755 -U 5160 ; WX 389 ; N uni1428 ; G 1756 -U 5161 ; WX 389 ; N uni1429 ; G 1757 -U 5162 ; WX 389 ; N uni142A ; G 1758 -U 5163 ; WX 1090 ; N uni142B ; G 1759 -U 5164 ; WX 909 ; N uni142C ; G 1760 -U 5165 ; WX 953 ; N uni142D ; G 1761 -U 5166 ; WX 1117 ; N uni142E ; G 1762 -U 5167 ; WX 684 ; N uni142F ; G 1763 -U 5168 ; WX 684 ; N uni1430 ; G 1764 -U 5169 ; WX 684 ; N uni1431 ; G 1765 -U 5170 ; WX 684 ; N uni1432 ; G 1766 -U 5171 ; WX 729 ; N uni1433 ; G 1767 -U 5172 ; WX 729 ; N uni1434 ; G 1768 -U 5173 ; WX 729 ; N uni1435 ; G 1769 -U 5175 ; WX 729 ; N uni1437 ; G 1770 -U 5176 ; WX 729 ; N uni1438 ; G 1771 -U 5177 ; WX 729 ; N uni1439 ; G 1772 -U 5178 ; WX 835 ; N uni143A ; G 1773 -U 5179 ; WX 684 ; N uni143B ; G 1774 -U 5180 ; WX 835 ; N uni143C ; G 1775 -U 5181 ; WX 834 ; N uni143D ; G 1776 -U 5182 ; WX 835 ; N uni143E ; G 1777 -U 5183 ; WX 834 ; N uni143F ; G 1778 -U 5184 ; WX 967 ; N uni1440 ; G 1779 -U 5185 ; WX 1007 ; N uni1441 ; G 1780 -U 5186 ; WX 967 ; N uni1442 ; G 1781 -U 5187 ; WX 1007 ; N uni1443 ; G 1782 -U 5188 ; WX 967 ; N uni1444 ; G 1783 -U 5189 ; WX 1007 ; N uni1445 ; G 1784 -U 5190 ; WX 967 ; N uni1446 ; G 1785 -U 5191 ; WX 1007 ; N uni1447 ; G 1786 -U 5192 ; WX 729 ; N uni1448 ; G 1787 -U 5193 ; WX 508 ; N uni1449 ; G 1788 -U 5194 ; WX 192 ; N uni144A ; G 1789 -U 5196 ; WX 732 ; N uni144C ; G 1790 -U 5197 ; WX 732 ; N uni144D ; G 1791 -U 5198 ; WX 732 ; N uni144E ; G 1792 -U 5199 ; WX 732 ; N uni144F ; G 1793 -U 5200 ; WX 730 ; N uni1450 ; G 1794 -U 5201 ; WX 730 ; N uni1451 ; G 1795 -U 5202 ; WX 730 ; N uni1452 ; G 1796 -U 5204 ; WX 730 ; N uni1454 ; G 1797 -U 5205 ; WX 730 ; N uni1455 ; G 1798 -U 5206 ; WX 730 ; N uni1456 ; G 1799 -U 5207 ; WX 921 ; N uni1457 ; G 1800 -U 5208 ; WX 889 ; N uni1458 ; G 1801 -U 5209 ; WX 921 ; N uni1459 ; G 1802 -U 5210 ; WX 889 ; N uni145A ; G 1803 -U 5211 ; WX 921 ; N uni145B ; G 1804 -U 5212 ; WX 889 ; N uni145C ; G 1805 -U 5213 ; WX 928 ; N uni145D ; G 1806 -U 5214 ; WX 900 ; N uni145E ; G 1807 -U 5215 ; WX 928 ; N uni145F ; G 1808 -U 5216 ; WX 900 ; N uni1460 ; G 1809 -U 5217 ; WX 947 ; N uni1461 ; G 1810 -U 5218 ; WX 900 ; N uni1462 ; G 1811 -U 5219 ; WX 947 ; N uni1463 ; G 1812 -U 5220 ; WX 900 ; N uni1464 ; G 1813 -U 5221 ; WX 947 ; N uni1465 ; G 1814 -U 5222 ; WX 434 ; N uni1466 ; G 1815 -U 5223 ; WX 877 ; N uni1467 ; G 1816 -U 5224 ; WX 877 ; N uni1468 ; G 1817 -U 5225 ; WX 866 ; N uni1469 ; G 1818 -U 5226 ; WX 890 ; N uni146A ; G 1819 -U 5227 ; WX 628 ; N uni146B ; G 1820 -U 5228 ; WX 628 ; N uni146C ; G 1821 -U 5229 ; WX 628 ; N uni146D ; G 1822 -U 5230 ; WX 628 ; N uni146E ; G 1823 -U 5231 ; WX 628 ; N uni146F ; G 1824 -U 5232 ; WX 628 ; N uni1470 ; G 1825 -U 5233 ; WX 628 ; N uni1471 ; G 1826 -U 5234 ; WX 628 ; N uni1472 ; G 1827 -U 5235 ; WX 628 ; N uni1473 ; G 1828 -U 5236 ; WX 860 ; N uni1474 ; G 1829 -U 5237 ; WX 771 ; N uni1475 ; G 1830 -U 5238 ; WX 815 ; N uni1476 ; G 1831 -U 5239 ; WX 816 ; N uni1477 ; G 1832 -U 5240 ; WX 815 ; N uni1478 ; G 1833 -U 5241 ; WX 816 ; N uni1479 ; G 1834 -U 5242 ; WX 860 ; N uni147A ; G 1835 -U 5243 ; WX 771 ; N uni147B ; G 1836 -U 5244 ; WX 860 ; N uni147C ; G 1837 -U 5245 ; WX 771 ; N uni147D ; G 1838 -U 5246 ; WX 815 ; N uni147E ; G 1839 -U 5247 ; WX 816 ; N uni147F ; G 1840 -U 5248 ; WX 815 ; N uni1480 ; G 1841 -U 5249 ; WX 816 ; N uni1481 ; G 1842 -U 5250 ; WX 815 ; N uni1482 ; G 1843 -U 5251 ; WX 407 ; N uni1483 ; G 1844 -U 5252 ; WX 407 ; N uni1484 ; G 1845 -U 5253 ; WX 750 ; N uni1485 ; G 1846 -U 5254 ; WX 775 ; N uni1486 ; G 1847 -U 5255 ; WX 750 ; N uni1487 ; G 1848 -U 5256 ; WX 775 ; N uni1488 ; G 1849 -U 5257 ; WX 628 ; N uni1489 ; G 1850 -U 5258 ; WX 628 ; N uni148A ; G 1851 -U 5259 ; WX 628 ; N uni148B ; G 1852 -U 5260 ; WX 628 ; N uni148C ; G 1853 -U 5261 ; WX 628 ; N uni148D ; G 1854 -U 5262 ; WX 628 ; N uni148E ; G 1855 -U 5263 ; WX 628 ; N uni148F ; G 1856 -U 5264 ; WX 628 ; N uni1490 ; G 1857 -U 5265 ; WX 628 ; N uni1491 ; G 1858 -U 5266 ; WX 860 ; N uni1492 ; G 1859 -U 5267 ; WX 771 ; N uni1493 ; G 1860 -U 5268 ; WX 815 ; N uni1494 ; G 1861 -U 5269 ; WX 816 ; N uni1495 ; G 1862 -U 5270 ; WX 815 ; N uni1496 ; G 1863 -U 5271 ; WX 816 ; N uni1497 ; G 1864 -U 5272 ; WX 860 ; N uni1498 ; G 1865 -U 5273 ; WX 771 ; N uni1499 ; G 1866 -U 5274 ; WX 860 ; N uni149A ; G 1867 -U 5275 ; WX 771 ; N uni149B ; G 1868 -U 5276 ; WX 815 ; N uni149C ; G 1869 -U 5277 ; WX 816 ; N uni149D ; G 1870 -U 5278 ; WX 815 ; N uni149E ; G 1871 -U 5279 ; WX 816 ; N uni149F ; G 1872 -U 5280 ; WX 815 ; N uni14A0 ; G 1873 -U 5281 ; WX 435 ; N uni14A1 ; G 1874 -U 5282 ; WX 435 ; N uni14A2 ; G 1875 -U 5283 ; WX 610 ; N uni14A3 ; G 1876 -U 5284 ; WX 557 ; N uni14A4 ; G 1877 -U 5285 ; WX 557 ; N uni14A5 ; G 1878 -U 5286 ; WX 557 ; N uni14A6 ; G 1879 -U 5287 ; WX 610 ; N uni14A7 ; G 1880 -U 5288 ; WX 610 ; N uni14A8 ; G 1881 -U 5289 ; WX 610 ; N uni14A9 ; G 1882 -U 5290 ; WX 557 ; N uni14AA ; G 1883 -U 5291 ; WX 557 ; N uni14AB ; G 1884 -U 5292 ; WX 749 ; N uni14AC ; G 1885 -U 5293 ; WX 769 ; N uni14AD ; G 1886 -U 5294 ; WX 746 ; N uni14AE ; G 1887 -U 5295 ; WX 764 ; N uni14AF ; G 1888 -U 5296 ; WX 746 ; N uni14B0 ; G 1889 -U 5297 ; WX 764 ; N uni14B1 ; G 1890 -U 5298 ; WX 749 ; N uni14B2 ; G 1891 -U 5299 ; WX 769 ; N uni14B3 ; G 1892 -U 5300 ; WX 749 ; N uni14B4 ; G 1893 -U 5301 ; WX 769 ; N uni14B5 ; G 1894 -U 5302 ; WX 746 ; N uni14B6 ; G 1895 -U 5303 ; WX 764 ; N uni14B7 ; G 1896 -U 5304 ; WX 746 ; N uni14B8 ; G 1897 -U 5305 ; WX 764 ; N uni14B9 ; G 1898 -U 5306 ; WX 746 ; N uni14BA ; G 1899 -U 5307 ; WX 386 ; N uni14BB ; G 1900 -U 5308 ; WX 508 ; N uni14BC ; G 1901 -U 5309 ; WX 386 ; N uni14BD ; G 1902 -U 5312 ; WX 852 ; N uni14C0 ; G 1903 -U 5313 ; WX 852 ; N uni14C1 ; G 1904 -U 5314 ; WX 852 ; N uni14C2 ; G 1905 -U 5315 ; WX 852 ; N uni14C3 ; G 1906 -U 5316 ; WX 852 ; N uni14C4 ; G 1907 -U 5317 ; WX 852 ; N uni14C5 ; G 1908 -U 5318 ; WX 852 ; N uni14C6 ; G 1909 -U 5319 ; WX 852 ; N uni14C7 ; G 1910 -U 5320 ; WX 852 ; N uni14C8 ; G 1911 -U 5321 ; WX 1069 ; N uni14C9 ; G 1912 -U 5322 ; WX 1035 ; N uni14CA ; G 1913 -U 5323 ; WX 1059 ; N uni14CB ; G 1914 -U 5324 ; WX 852 ; N uni14CC ; G 1915 -U 5325 ; WX 1059 ; N uni14CD ; G 1916 -U 5326 ; WX 852 ; N uni14CE ; G 1917 -U 5327 ; WX 852 ; N uni14CF ; G 1918 -U 5328 ; WX 600 ; N uni14D0 ; G 1919 -U 5329 ; WX 453 ; N uni14D1 ; G 1920 -U 5330 ; WX 600 ; N uni14D2 ; G 1921 -U 5331 ; WX 852 ; N uni14D3 ; G 1922 -U 5332 ; WX 852 ; N uni14D4 ; G 1923 -U 5333 ; WX 852 ; N uni14D5 ; G 1924 -U 5334 ; WX 852 ; N uni14D6 ; G 1925 -U 5335 ; WX 852 ; N uni14D7 ; G 1926 -U 5336 ; WX 852 ; N uni14D8 ; G 1927 -U 5337 ; WX 852 ; N uni14D9 ; G 1928 -U 5338 ; WX 852 ; N uni14DA ; G 1929 -U 5339 ; WX 852 ; N uni14DB ; G 1930 -U 5340 ; WX 1069 ; N uni14DC ; G 1931 -U 5341 ; WX 1035 ; N uni14DD ; G 1932 -U 5342 ; WX 1059 ; N uni14DE ; G 1933 -U 5343 ; WX 1030 ; N uni14DF ; G 1934 -U 5344 ; WX 1059 ; N uni14E0 ; G 1935 -U 5345 ; WX 1030 ; N uni14E1 ; G 1936 -U 5346 ; WX 1069 ; N uni14E2 ; G 1937 -U 5347 ; WX 1035 ; N uni14E3 ; G 1938 -U 5348 ; WX 1069 ; N uni14E4 ; G 1939 -U 5349 ; WX 1035 ; N uni14E5 ; G 1940 -U 5350 ; WX 1083 ; N uni14E6 ; G 1941 -U 5351 ; WX 1030 ; N uni14E7 ; G 1942 -U 5352 ; WX 1083 ; N uni14E8 ; G 1943 -U 5353 ; WX 1030 ; N uni14E9 ; G 1944 -U 5354 ; WX 600 ; N uni14EA ; G 1945 -U 5356 ; WX 729 ; N uni14EC ; G 1946 -U 5357 ; WX 603 ; N uni14ED ; G 1947 -U 5358 ; WX 603 ; N uni14EE ; G 1948 -U 5359 ; WX 603 ; N uni14EF ; G 1949 -U 5360 ; WX 603 ; N uni14F0 ; G 1950 -U 5361 ; WX 603 ; N uni14F1 ; G 1951 -U 5362 ; WX 603 ; N uni14F2 ; G 1952 -U 5363 ; WX 603 ; N uni14F3 ; G 1953 -U 5364 ; WX 603 ; N uni14F4 ; G 1954 -U 5365 ; WX 603 ; N uni14F5 ; G 1955 -U 5366 ; WX 834 ; N uni14F6 ; G 1956 -U 5367 ; WX 754 ; N uni14F7 ; G 1957 -U 5368 ; WX 792 ; N uni14F8 ; G 1958 -U 5369 ; WX 771 ; N uni14F9 ; G 1959 -U 5370 ; WX 792 ; N uni14FA ; G 1960 -U 5371 ; WX 771 ; N uni14FB ; G 1961 -U 5372 ; WX 834 ; N uni14FC ; G 1962 -U 5373 ; WX 754 ; N uni14FD ; G 1963 -U 5374 ; WX 834 ; N uni14FE ; G 1964 -U 5375 ; WX 754 ; N uni14FF ; G 1965 -U 5376 ; WX 792 ; N uni1500 ; G 1966 -U 5377 ; WX 771 ; N uni1501 ; G 1967 -U 5378 ; WX 792 ; N uni1502 ; G 1968 -U 5379 ; WX 771 ; N uni1503 ; G 1969 -U 5380 ; WX 792 ; N uni1504 ; G 1970 -U 5381 ; WX 418 ; N uni1505 ; G 1971 -U 5382 ; WX 420 ; N uni1506 ; G 1972 -U 5383 ; WX 418 ; N uni1507 ; G 1973 -U 5392 ; WX 712 ; N uni1510 ; G 1974 -U 5393 ; WX 712 ; N uni1511 ; G 1975 -U 5394 ; WX 712 ; N uni1512 ; G 1976 -U 5395 ; WX 892 ; N uni1513 ; G 1977 -U 5396 ; WX 892 ; N uni1514 ; G 1978 -U 5397 ; WX 892 ; N uni1515 ; G 1979 -U 5398 ; WX 892 ; N uni1516 ; G 1980 -U 5399 ; WX 910 ; N uni1517 ; G 1981 -U 5400 ; WX 872 ; N uni1518 ; G 1982 -U 5401 ; WX 910 ; N uni1519 ; G 1983 -U 5402 ; WX 872 ; N uni151A ; G 1984 -U 5403 ; WX 910 ; N uni151B ; G 1985 -U 5404 ; WX 872 ; N uni151C ; G 1986 -U 5405 ; WX 1140 ; N uni151D ; G 1987 -U 5406 ; WX 1100 ; N uni151E ; G 1988 -U 5407 ; WX 1140 ; N uni151F ; G 1989 -U 5408 ; WX 1100 ; N uni1520 ; G 1990 -U 5409 ; WX 1140 ; N uni1521 ; G 1991 -U 5410 ; WX 1100 ; N uni1522 ; G 1992 -U 5411 ; WX 1140 ; N uni1523 ; G 1993 -U 5412 ; WX 1100 ; N uni1524 ; G 1994 -U 5413 ; WX 641 ; N uni1525 ; G 1995 -U 5414 ; WX 627 ; N uni1526 ; G 1996 -U 5415 ; WX 627 ; N uni1527 ; G 1997 -U 5416 ; WX 627 ; N uni1528 ; G 1998 -U 5417 ; WX 627 ; N uni1529 ; G 1999 -U 5418 ; WX 627 ; N uni152A ; G 2000 -U 5419 ; WX 627 ; N uni152B ; G 2001 -U 5420 ; WX 627 ; N uni152C ; G 2002 -U 5421 ; WX 627 ; N uni152D ; G 2003 -U 5422 ; WX 627 ; N uni152E ; G 2004 -U 5423 ; WX 844 ; N uni152F ; G 2005 -U 5424 ; WX 781 ; N uni1530 ; G 2006 -U 5425 ; WX 816 ; N uni1531 ; G 2007 -U 5426 ; WX 818 ; N uni1532 ; G 2008 -U 5427 ; WX 816 ; N uni1533 ; G 2009 -U 5428 ; WX 818 ; N uni1534 ; G 2010 -U 5429 ; WX 844 ; N uni1535 ; G 2011 -U 5430 ; WX 781 ; N uni1536 ; G 2012 -U 5431 ; WX 844 ; N uni1537 ; G 2013 -U 5432 ; WX 781 ; N uni1538 ; G 2014 -U 5433 ; WX 816 ; N uni1539 ; G 2015 -U 5434 ; WX 818 ; N uni153A ; G 2016 -U 5435 ; WX 816 ; N uni153B ; G 2017 -U 5436 ; WX 818 ; N uni153C ; G 2018 -U 5437 ; WX 816 ; N uni153D ; G 2019 -U 5438 ; WX 418 ; N uni153E ; G 2020 -U 5440 ; WX 389 ; N uni1540 ; G 2021 -U 5441 ; WX 484 ; N uni1541 ; G 2022 -U 5442 ; WX 916 ; N uni1542 ; G 2023 -U 5443 ; WX 916 ; N uni1543 ; G 2024 -U 5444 ; WX 916 ; N uni1544 ; G 2025 -U 5445 ; WX 916 ; N uni1545 ; G 2026 -U 5446 ; WX 916 ; N uni1546 ; G 2027 -U 5447 ; WX 916 ; N uni1547 ; G 2028 -U 5448 ; WX 603 ; N uni1548 ; G 2029 -U 5449 ; WX 603 ; N uni1549 ; G 2030 -U 5450 ; WX 603 ; N uni154A ; G 2031 -U 5451 ; WX 603 ; N uni154B ; G 2032 -U 5452 ; WX 603 ; N uni154C ; G 2033 -U 5453 ; WX 603 ; N uni154D ; G 2034 -U 5454 ; WX 834 ; N uni154E ; G 2035 -U 5455 ; WX 754 ; N uni154F ; G 2036 -U 5456 ; WX 418 ; N uni1550 ; G 2037 -U 5458 ; WX 729 ; N uni1552 ; G 2038 -U 5459 ; WX 684 ; N uni1553 ; G 2039 -U 5460 ; WX 684 ; N uni1554 ; G 2040 -U 5461 ; WX 684 ; N uni1555 ; G 2041 -U 5462 ; WX 684 ; N uni1556 ; G 2042 -U 5463 ; WX 726 ; N uni1557 ; G 2043 -U 5464 ; WX 726 ; N uni1558 ; G 2044 -U 5465 ; WX 726 ; N uni1559 ; G 2045 -U 5466 ; WX 726 ; N uni155A ; G 2046 -U 5467 ; WX 924 ; N uni155B ; G 2047 -U 5468 ; WX 1007 ; N uni155C ; G 2048 -U 5469 ; WX 508 ; N uni155D ; G 2049 -U 5470 ; WX 732 ; N uni155E ; G 2050 -U 5471 ; WX 732 ; N uni155F ; G 2051 -U 5472 ; WX 732 ; N uni1560 ; G 2052 -U 5473 ; WX 732 ; N uni1561 ; G 2053 -U 5474 ; WX 732 ; N uni1562 ; G 2054 -U 5475 ; WX 732 ; N uni1563 ; G 2055 -U 5476 ; WX 730 ; N uni1564 ; G 2056 -U 5477 ; WX 730 ; N uni1565 ; G 2057 -U 5478 ; WX 730 ; N uni1566 ; G 2058 -U 5479 ; WX 730 ; N uni1567 ; G 2059 -U 5480 ; WX 947 ; N uni1568 ; G 2060 -U 5481 ; WX 900 ; N uni1569 ; G 2061 -U 5482 ; WX 508 ; N uni156A ; G 2062 -U 5492 ; WX 831 ; N uni1574 ; G 2063 -U 5493 ; WX 831 ; N uni1575 ; G 2064 -U 5494 ; WX 831 ; N uni1576 ; G 2065 -U 5495 ; WX 831 ; N uni1577 ; G 2066 -U 5496 ; WX 831 ; N uni1578 ; G 2067 -U 5497 ; WX 831 ; N uni1579 ; G 2068 -U 5498 ; WX 831 ; N uni157A ; G 2069 -U 5499 ; WX 563 ; N uni157B ; G 2070 -U 5500 ; WX 752 ; N uni157C ; G 2071 -U 5501 ; WX 484 ; N uni157D ; G 2072 -U 5502 ; WX 1047 ; N uni157E ; G 2073 -U 5503 ; WX 1047 ; N uni157F ; G 2074 -U 5504 ; WX 1047 ; N uni1580 ; G 2075 -U 5505 ; WX 1047 ; N uni1581 ; G 2076 -U 5506 ; WX 1047 ; N uni1582 ; G 2077 -U 5507 ; WX 1047 ; N uni1583 ; G 2078 -U 5508 ; WX 1047 ; N uni1584 ; G 2079 -U 5509 ; WX 825 ; N uni1585 ; G 2080 -U 5514 ; WX 831 ; N uni158A ; G 2081 -U 5515 ; WX 831 ; N uni158B ; G 2082 -U 5516 ; WX 831 ; N uni158C ; G 2083 -U 5517 ; WX 831 ; N uni158D ; G 2084 -U 5518 ; WX 1259 ; N uni158E ; G 2085 -U 5519 ; WX 1259 ; N uni158F ; G 2086 -U 5520 ; WX 1259 ; N uni1590 ; G 2087 -U 5521 ; WX 1002 ; N uni1591 ; G 2088 -U 5522 ; WX 1002 ; N uni1592 ; G 2089 -U 5523 ; WX 1259 ; N uni1593 ; G 2090 -U 5524 ; WX 1259 ; N uni1594 ; G 2091 -U 5525 ; WX 700 ; N uni1595 ; G 2092 -U 5526 ; WX 1073 ; N uni1596 ; G 2093 -U 5536 ; WX 852 ; N uni15A0 ; G 2094 -U 5537 ; WX 852 ; N uni15A1 ; G 2095 -U 5538 ; WX 852 ; N uni15A2 ; G 2096 -U 5539 ; WX 852 ; N uni15A3 ; G 2097 -U 5540 ; WX 852 ; N uni15A4 ; G 2098 -U 5541 ; WX 852 ; N uni15A5 ; G 2099 -U 5542 ; WX 600 ; N uni15A6 ; G 2100 -U 5543 ; WX 643 ; N uni15A7 ; G 2101 -U 5544 ; WX 643 ; N uni15A8 ; G 2102 -U 5545 ; WX 643 ; N uni15A9 ; G 2103 -U 5546 ; WX 643 ; N uni15AA ; G 2104 -U 5547 ; WX 643 ; N uni15AB ; G 2105 -U 5548 ; WX 643 ; N uni15AC ; G 2106 -U 5549 ; WX 643 ; N uni15AD ; G 2107 -U 5550 ; WX 418 ; N uni15AE ; G 2108 -U 5551 ; WX 628 ; N uni15AF ; G 2109 -U 5598 ; WX 770 ; N uni15DE ; G 2110 -U 5601 ; WX 767 ; N uni15E1 ; G 2111 -U 5702 ; WX 468 ; N uni1646 ; G 2112 -U 5703 ; WX 468 ; N uni1647 ; G 2113 -U 5742 ; WX 444 ; N uni166E ; G 2114 -U 5743 ; WX 1047 ; N uni166F ; G 2115 -U 5744 ; WX 1310 ; N uni1670 ; G 2116 -U 5745 ; WX 1632 ; N uni1671 ; G 2117 -U 5746 ; WX 1632 ; N uni1672 ; G 2118 -U 5747 ; WX 1375 ; N uni1673 ; G 2119 -U 5748 ; WX 1375 ; N uni1674 ; G 2120 -U 5749 ; WX 1632 ; N uni1675 ; G 2121 -U 5750 ; WX 1632 ; N uni1676 ; G 2122 -U 5760 ; WX 477 ; N uni1680 ; G 2123 -U 5761 ; WX 493 ; N uni1681 ; G 2124 -U 5762 ; WX 712 ; N uni1682 ; G 2125 -U 5763 ; WX 931 ; N uni1683 ; G 2126 -U 5764 ; WX 1150 ; N uni1684 ; G 2127 -U 5765 ; WX 1370 ; N uni1685 ; G 2128 -U 5766 ; WX 493 ; N uni1686 ; G 2129 -U 5767 ; WX 712 ; N uni1687 ; G 2130 -U 5768 ; WX 931 ; N uni1688 ; G 2131 -U 5769 ; WX 1150 ; N uni1689 ; G 2132 -U 5770 ; WX 1370 ; N uni168A ; G 2133 -U 5771 ; WX 498 ; N uni168B ; G 2134 -U 5772 ; WX 718 ; N uni168C ; G 2135 -U 5773 ; WX 938 ; N uni168D ; G 2136 -U 5774 ; WX 1159 ; N uni168E ; G 2137 -U 5775 ; WX 1379 ; N uni168F ; G 2138 -U 5776 ; WX 493 ; N uni1690 ; G 2139 -U 5777 ; WX 712 ; N uni1691 ; G 2140 -U 5778 ; WX 930 ; N uni1692 ; G 2141 -U 5779 ; WX 1149 ; N uni1693 ; G 2142 -U 5780 ; WX 1370 ; N uni1694 ; G 2143 -U 5781 ; WX 498 ; N uni1695 ; G 2144 -U 5782 ; WX 752 ; N uni1696 ; G 2145 -U 5783 ; WX 789 ; N uni1697 ; G 2146 -U 5784 ; WX 1205 ; N uni1698 ; G 2147 -U 5785 ; WX 1150 ; N uni1699 ; G 2148 -U 5786 ; WX 683 ; N uni169A ; G 2149 -U 5787 ; WX 507 ; N uni169B ; G 2150 -U 5788 ; WX 507 ; N uni169C ; G 2151 -U 7424 ; WX 592 ; N uni1D00 ; G 2152 -U 7425 ; WX 717 ; N uni1D01 ; G 2153 -U 7426 ; WX 982 ; N uni1D02 ; G 2154 -U 7427 ; WX 586 ; N uni1D03 ; G 2155 -U 7428 ; WX 550 ; N uni1D04 ; G 2156 -U 7429 ; WX 605 ; N uni1D05 ; G 2157 -U 7430 ; WX 605 ; N uni1D06 ; G 2158 -U 7431 ; WX 491 ; N uni1D07 ; G 2159 -U 7432 ; WX 541 ; N uni1D08 ; G 2160 -U 7433 ; WX 278 ; N uni1D09 ; G 2161 -U 7434 ; WX 395 ; N uni1D0A ; G 2162 -U 7435 ; WX 579 ; N uni1D0B ; G 2163 -U 7436 ; WX 583 ; N uni1D0C ; G 2164 -U 7437 ; WX 754 ; N uni1D0D ; G 2165 -U 7438 ; WX 650 ; N uni1D0E ; G 2166 -U 7439 ; WX 612 ; N uni1D0F ; G 2167 -U 7440 ; WX 550 ; N uni1D10 ; G 2168 -U 7441 ; WX 684 ; N uni1D11 ; G 2169 -U 7442 ; WX 684 ; N uni1D12 ; G 2170 -U 7443 ; WX 684 ; N uni1D13 ; G 2171 -U 7444 ; WX 1023 ; N uni1D14 ; G 2172 -U 7446 ; WX 612 ; N uni1D16 ; G 2173 -U 7447 ; WX 612 ; N uni1D17 ; G 2174 -U 7448 ; WX 524 ; N uni1D18 ; G 2175 -U 7449 ; WX 602 ; N uni1D19 ; G 2176 -U 7450 ; WX 602 ; N uni1D1A ; G 2177 -U 7451 ; WX 583 ; N uni1D1B ; G 2178 -U 7452 ; WX 574 ; N uni1D1C ; G 2179 -U 7453 ; WX 737 ; N uni1D1D ; G 2180 -U 7454 ; WX 948 ; N uni1D1E ; G 2181 -U 7455 ; WX 638 ; N uni1D1F ; G 2182 -U 7456 ; WX 592 ; N uni1D20 ; G 2183 -U 7457 ; WX 818 ; N uni1D21 ; G 2184 -U 7458 ; WX 525 ; N uni1D22 ; G 2185 -U 7459 ; WX 526 ; N uni1D23 ; G 2186 -U 7462 ; WX 583 ; N uni1D26 ; G 2187 -U 7463 ; WX 592 ; N uni1D27 ; G 2188 -U 7464 ; WX 564 ; N uni1D28 ; G 2189 -U 7465 ; WX 524 ; N uni1D29 ; G 2190 -U 7466 ; WX 590 ; N uni1D2A ; G 2191 -U 7467 ; WX 639 ; N uni1D2B ; G 2192 -U 7468 ; WX 431 ; N uni1D2C ; G 2193 -U 7469 ; WX 613 ; N uni1D2D ; G 2194 -U 7470 ; WX 432 ; N uni1D2E ; G 2195 -U 7472 ; WX 485 ; N uni1D30 ; G 2196 -U 7473 ; WX 398 ; N uni1D31 ; G 2197 -U 7474 ; WX 398 ; N uni1D32 ; G 2198 -U 7475 ; WX 488 ; N uni1D33 ; G 2199 -U 7476 ; WX 474 ; N uni1D34 ; G 2200 -U 7477 ; WX 186 ; N uni1D35 ; G 2201 -U 7478 ; WX 186 ; N uni1D36 ; G 2202 -U 7479 ; WX 413 ; N uni1D37 ; G 2203 -U 7480 ; WX 351 ; N uni1D38 ; G 2204 -U 7481 ; WX 543 ; N uni1D39 ; G 2205 -U 7482 ; WX 471 ; N uni1D3A ; G 2206 -U 7483 ; WX 471 ; N uni1D3B ; G 2207 -U 7484 ; WX 496 ; N uni1D3C ; G 2208 -U 7485 ; WX 439 ; N uni1D3D ; G 2209 -U 7486 ; WX 380 ; N uni1D3E ; G 2210 -U 7487 ; WX 438 ; N uni1D3F ; G 2211 -U 7488 ; WX 385 ; N uni1D40 ; G 2212 -U 7489 ; WX 461 ; N uni1D41 ; G 2213 -U 7490 ; WX 623 ; N uni1D42 ; G 2214 -U 7491 ; WX 392 ; N uni1D43 ; G 2215 -U 7492 ; WX 392 ; N uni1D44 ; G 2216 -U 7493 ; WX 405 ; N uni1D45 ; G 2217 -U 7494 ; WX 648 ; N uni1D46 ; G 2218 -U 7495 ; WX 428 ; N uni1D47 ; G 2219 -U 7496 ; WX 405 ; N uni1D48 ; G 2220 -U 7497 ; WX 417 ; N uni1D49 ; G 2221 -U 7498 ; WX 417 ; N uni1D4A ; G 2222 -U 7499 ; WX 360 ; N uni1D4B ; G 2223 -U 7500 ; WX 359 ; N uni1D4C ; G 2224 -U 7501 ; WX 405 ; N uni1D4D ; G 2225 -U 7502 ; WX 179 ; N uni1D4E ; G 2226 -U 7503 ; WX 426 ; N uni1D4F ; G 2227 -U 7504 ; WX 623 ; N uni1D50 ; G 2228 -U 7505 ; WX 409 ; N uni1D51 ; G 2229 -U 7506 ; WX 414 ; N uni1D52 ; G 2230 -U 7507 ; WX 370 ; N uni1D53 ; G 2231 -U 7508 ; WX 414 ; N uni1D54 ; G 2232 -U 7509 ; WX 414 ; N uni1D55 ; G 2233 -U 7510 ; WX 428 ; N uni1D56 ; G 2234 -U 7511 ; WX 295 ; N uni1D57 ; G 2235 -U 7512 ; WX 405 ; N uni1D58 ; G 2236 -U 7513 ; WX 470 ; N uni1D59 ; G 2237 -U 7514 ; WX 623 ; N uni1D5A ; G 2238 -U 7515 ; WX 417 ; N uni1D5B ; G 2239 -U 7517 ; WX 402 ; N uni1D5D ; G 2240 -U 7518 ; WX 373 ; N uni1D5E ; G 2241 -U 7519 ; WX 385 ; N uni1D5F ; G 2242 -U 7520 ; WX 416 ; N uni1D60 ; G 2243 -U 7521 ; WX 364 ; N uni1D61 ; G 2244 -U 7522 ; WX 179 ; N uni1D62 ; G 2245 -U 7523 ; WX 259 ; N uni1D63 ; G 2246 -U 7524 ; WX 405 ; N uni1D64 ; G 2247 -U 7525 ; WX 417 ; N uni1D65 ; G 2248 -U 7526 ; WX 402 ; N uni1D66 ; G 2249 -U 7527 ; WX 373 ; N uni1D67 ; G 2250 -U 7528 ; WX 412 ; N uni1D68 ; G 2251 -U 7529 ; WX 416 ; N uni1D69 ; G 2252 -U 7530 ; WX 364 ; N uni1D6A ; G 2253 -U 7543 ; WX 635 ; N uni1D77 ; G 2254 -U 7544 ; WX 474 ; N uni1D78 ; G 2255 -U 7547 ; WX 372 ; N uni1D7B ; G 2256 -U 7549 ; WX 667 ; N uni1D7D ; G 2257 -U 7557 ; WX 278 ; N uni1D85 ; G 2258 -U 7579 ; WX 405 ; N uni1D9B ; G 2259 -U 7580 ; WX 370 ; N uni1D9C ; G 2260 -U 7581 ; WX 370 ; N uni1D9D ; G 2261 -U 7582 ; WX 414 ; N uni1D9E ; G 2262 -U 7583 ; WX 360 ; N uni1D9F ; G 2263 -U 7584 ; WX 296 ; N uni1DA0 ; G 2264 -U 7585 ; WX 233 ; N uni1DA1 ; G 2265 -U 7586 ; WX 405 ; N uni1DA2 ; G 2266 -U 7587 ; WX 405 ; N uni1DA3 ; G 2267 -U 7588 ; WX 261 ; N uni1DA4 ; G 2268 -U 7589 ; WX 250 ; N uni1DA5 ; G 2269 -U 7590 ; WX 261 ; N uni1DA6 ; G 2270 -U 7591 ; WX 261 ; N uni1DA7 ; G 2271 -U 7592 ; WX 234 ; N uni1DA8 ; G 2272 -U 7593 ; WX 250 ; N uni1DA9 ; G 2273 -U 7594 ; WX 235 ; N uni1DAA ; G 2274 -U 7595 ; WX 376 ; N uni1DAB ; G 2275 -U 7596 ; WX 623 ; N uni1DAC ; G 2276 -U 7597 ; WX 623 ; N uni1DAD ; G 2277 -U 7598 ; WX 411 ; N uni1DAE ; G 2278 -U 7599 ; WX 479 ; N uni1DAF ; G 2279 -U 7600 ; WX 409 ; N uni1DB0 ; G 2280 -U 7601 ; WX 414 ; N uni1DB1 ; G 2281 -U 7602 ; WX 414 ; N uni1DB2 ; G 2282 -U 7603 ; WX 360 ; N uni1DB3 ; G 2283 -U 7604 ; WX 287 ; N uni1DB4 ; G 2284 -U 7605 ; WX 295 ; N uni1DB5 ; G 2285 -U 7606 ; WX 508 ; N uni1DB6 ; G 2286 -U 7607 ; WX 418 ; N uni1DB7 ; G 2287 -U 7608 ; WX 361 ; N uni1DB8 ; G 2288 -U 7609 ; WX 406 ; N uni1DB9 ; G 2289 -U 7610 ; WX 417 ; N uni1DBA ; G 2290 -U 7611 ; WX 366 ; N uni1DBB ; G 2291 -U 7612 ; WX 437 ; N uni1DBC ; G 2292 -U 7613 ; WX 366 ; N uni1DBD ; G 2293 -U 7614 ; WX 392 ; N uni1DBE ; G 2294 -U 7615 ; WX 414 ; N uni1DBF ; G 2295 -U 7620 ; WX 0 ; N uni1DC4 ; G 2296 -U 7621 ; WX 0 ; N uni1DC5 ; G 2297 -U 7622 ; WX 0 ; N uni1DC6 ; G 2298 -U 7623 ; WX 0 ; N uni1DC7 ; G 2299 -U 7624 ; WX 0 ; N uni1DC8 ; G 2300 -U 7625 ; WX 0 ; N uni1DC9 ; G 2301 -U 7680 ; WX 684 ; N uni1E00 ; G 2302 -U 7681 ; WX 613 ; N uni1E01 ; G 2303 -U 7682 ; WX 686 ; N uni1E02 ; G 2304 -U 7683 ; WX 635 ; N uni1E03 ; G 2305 -U 7684 ; WX 686 ; N uni1E04 ; G 2306 -U 7685 ; WX 635 ; N uni1E05 ; G 2307 -U 7686 ; WX 686 ; N uni1E06 ; G 2308 -U 7687 ; WX 635 ; N uni1E07 ; G 2309 -U 7688 ; WX 698 ; N uni1E08 ; G 2310 -U 7689 ; WX 550 ; N uni1E09 ; G 2311 -U 7690 ; WX 770 ; N uni1E0A ; G 2312 -U 7691 ; WX 635 ; N uni1E0B ; G 2313 -U 7692 ; WX 770 ; N uni1E0C ; G 2314 -U 7693 ; WX 635 ; N uni1E0D ; G 2315 -U 7694 ; WX 770 ; N uni1E0E ; G 2316 -U 7695 ; WX 635 ; N uni1E0F ; G 2317 -U 7696 ; WX 770 ; N uni1E10 ; G 2318 -U 7697 ; WX 635 ; N uni1E11 ; G 2319 -U 7698 ; WX 770 ; N uni1E12 ; G 2320 -U 7699 ; WX 635 ; N uni1E13 ; G 2321 -U 7700 ; WX 632 ; N uni1E14 ; G 2322 -U 7701 ; WX 615 ; N uni1E15 ; G 2323 -U 7702 ; WX 632 ; N uni1E16 ; G 2324 -U 7703 ; WX 615 ; N uni1E17 ; G 2325 -U 7704 ; WX 632 ; N uni1E18 ; G 2326 -U 7705 ; WX 615 ; N uni1E19 ; G 2327 -U 7706 ; WX 632 ; N uni1E1A ; G 2328 -U 7707 ; WX 615 ; N uni1E1B ; G 2329 -U 7708 ; WX 632 ; N uni1E1C ; G 2330 -U 7709 ; WX 615 ; N uni1E1D ; G 2331 -U 7710 ; WX 575 ; N uni1E1E ; G 2332 -U 7711 ; WX 352 ; N uni1E1F ; G 2333 -U 7712 ; WX 775 ; N uni1E20 ; G 2334 -U 7713 ; WX 635 ; N uni1E21 ; G 2335 -U 7714 ; WX 752 ; N uni1E22 ; G 2336 -U 7715 ; WX 634 ; N uni1E23 ; G 2337 -U 7716 ; WX 752 ; N uni1E24 ; G 2338 -U 7717 ; WX 634 ; N uni1E25 ; G 2339 -U 7718 ; WX 752 ; N uni1E26 ; G 2340 -U 7719 ; WX 634 ; N uni1E27 ; G 2341 -U 7720 ; WX 752 ; N uni1E28 ; G 2342 -U 7721 ; WX 634 ; N uni1E29 ; G 2343 -U 7722 ; WX 752 ; N uni1E2A ; G 2344 -U 7723 ; WX 634 ; N uni1E2B ; G 2345 -U 7724 ; WX 295 ; N uni1E2C ; G 2346 -U 7725 ; WX 278 ; N uni1E2D ; G 2347 -U 7726 ; WX 295 ; N uni1E2E ; G 2348 -U 7727 ; WX 278 ; N uni1E2F ; G 2349 -U 7728 ; WX 656 ; N uni1E30 ; G 2350 -U 7729 ; WX 579 ; N uni1E31 ; G 2351 -U 7730 ; WX 656 ; N uni1E32 ; G 2352 -U 7731 ; WX 579 ; N uni1E33 ; G 2353 -U 7732 ; WX 656 ; N uni1E34 ; G 2354 -U 7733 ; WX 579 ; N uni1E35 ; G 2355 -U 7734 ; WX 557 ; N uni1E36 ; G 2356 -U 7735 ; WX 288 ; N uni1E37 ; G 2357 -U 7736 ; WX 557 ; N uni1E38 ; G 2358 -U 7737 ; WX 288 ; N uni1E39 ; G 2359 -U 7738 ; WX 557 ; N uni1E3A ; G 2360 -U 7739 ; WX 278 ; N uni1E3B ; G 2361 -U 7740 ; WX 557 ; N uni1E3C ; G 2362 -U 7741 ; WX 278 ; N uni1E3D ; G 2363 -U 7742 ; WX 863 ; N uni1E3E ; G 2364 -U 7743 ; WX 974 ; N uni1E3F ; G 2365 -U 7744 ; WX 863 ; N uni1E40 ; G 2366 -U 7745 ; WX 974 ; N uni1E41 ; G 2367 -U 7746 ; WX 863 ; N uni1E42 ; G 2368 -U 7747 ; WX 974 ; N uni1E43 ; G 2369 -U 7748 ; WX 748 ; N uni1E44 ; G 2370 -U 7749 ; WX 634 ; N uni1E45 ; G 2371 -U 7750 ; WX 748 ; N uni1E46 ; G 2372 -U 7751 ; WX 634 ; N uni1E47 ; G 2373 -U 7752 ; WX 748 ; N uni1E48 ; G 2374 -U 7753 ; WX 634 ; N uni1E49 ; G 2375 -U 7754 ; WX 748 ; N uni1E4A ; G 2376 -U 7755 ; WX 634 ; N uni1E4B ; G 2377 -U 7756 ; WX 787 ; N uni1E4C ; G 2378 -U 7757 ; WX 612 ; N uni1E4D ; G 2379 -U 7758 ; WX 787 ; N uni1E4E ; G 2380 -U 7759 ; WX 612 ; N uni1E4F ; G 2381 -U 7760 ; WX 787 ; N uni1E50 ; G 2382 -U 7761 ; WX 612 ; N uni1E51 ; G 2383 -U 7762 ; WX 787 ; N uni1E52 ; G 2384 -U 7763 ; WX 612 ; N uni1E53 ; G 2385 -U 7764 ; WX 603 ; N uni1E54 ; G 2386 -U 7765 ; WX 635 ; N uni1E55 ; G 2387 -U 7766 ; WX 603 ; N uni1E56 ; G 2388 -U 7767 ; WX 635 ; N uni1E57 ; G 2389 -U 7768 ; WX 695 ; N uni1E58 ; G 2390 -U 7769 ; WX 411 ; N uni1E59 ; G 2391 -U 7770 ; WX 695 ; N uni1E5A ; G 2392 -U 7771 ; WX 411 ; N uni1E5B ; G 2393 -U 7772 ; WX 695 ; N uni1E5C ; G 2394 -U 7773 ; WX 411 ; N uni1E5D ; G 2395 -U 7774 ; WX 695 ; N uni1E5E ; G 2396 -U 7775 ; WX 411 ; N uni1E5F ; G 2397 -U 7776 ; WX 635 ; N uni1E60 ; G 2398 -U 7777 ; WX 521 ; N uni1E61 ; G 2399 -U 7778 ; WX 635 ; N uni1E62 ; G 2400 -U 7779 ; WX 521 ; N uni1E63 ; G 2401 -U 7780 ; WX 635 ; N uni1E64 ; G 2402 -U 7781 ; WX 521 ; N uni1E65 ; G 2403 -U 7782 ; WX 635 ; N uni1E66 ; G 2404 -U 7783 ; WX 521 ; N uni1E67 ; G 2405 -U 7784 ; WX 635 ; N uni1E68 ; G 2406 -U 7785 ; WX 521 ; N uni1E69 ; G 2407 -U 7786 ; WX 611 ; N uni1E6A ; G 2408 -U 7787 ; WX 392 ; N uni1E6B ; G 2409 -U 7788 ; WX 611 ; N uni1E6C ; G 2410 -U 7789 ; WX 392 ; N uni1E6D ; G 2411 -U 7790 ; WX 611 ; N uni1E6E ; G 2412 -U 7791 ; WX 392 ; N uni1E6F ; G 2413 -U 7792 ; WX 611 ; N uni1E70 ; G 2414 -U 7793 ; WX 392 ; N uni1E71 ; G 2415 -U 7794 ; WX 732 ; N uni1E72 ; G 2416 -U 7795 ; WX 634 ; N uni1E73 ; G 2417 -U 7796 ; WX 732 ; N uni1E74 ; G 2418 -U 7797 ; WX 634 ; N uni1E75 ; G 2419 -U 7798 ; WX 732 ; N uni1E76 ; G 2420 -U 7799 ; WX 634 ; N uni1E77 ; G 2421 -U 7800 ; WX 732 ; N uni1E78 ; G 2422 -U 7801 ; WX 634 ; N uni1E79 ; G 2423 -U 7802 ; WX 732 ; N uni1E7A ; G 2424 -U 7803 ; WX 634 ; N uni1E7B ; G 2425 -U 7804 ; WX 684 ; N uni1E7C ; G 2426 -U 7805 ; WX 592 ; N uni1E7D ; G 2427 -U 7806 ; WX 684 ; N uni1E7E ; G 2428 -U 7807 ; WX 592 ; N uni1E7F ; G 2429 -U 7808 ; WX 989 ; N Wgrave ; G 2430 -U 7809 ; WX 818 ; N wgrave ; G 2431 -U 7810 ; WX 989 ; N Wacute ; G 2432 -U 7811 ; WX 818 ; N wacute ; G 2433 -U 7812 ; WX 989 ; N Wdieresis ; G 2434 -U 7813 ; WX 818 ; N wdieresis ; G 2435 -U 7814 ; WX 989 ; N uni1E86 ; G 2436 -U 7815 ; WX 818 ; N uni1E87 ; G 2437 -U 7816 ; WX 989 ; N uni1E88 ; G 2438 -U 7817 ; WX 818 ; N uni1E89 ; G 2439 -U 7818 ; WX 685 ; N uni1E8A ; G 2440 -U 7819 ; WX 592 ; N uni1E8B ; G 2441 -U 7820 ; WX 685 ; N uni1E8C ; G 2442 -U 7821 ; WX 592 ; N uni1E8D ; G 2443 -U 7822 ; WX 611 ; N uni1E8E ; G 2444 -U 7823 ; WX 592 ; N uni1E8F ; G 2445 -U 7824 ; WX 685 ; N uni1E90 ; G 2446 -U 7825 ; WX 525 ; N uni1E91 ; G 2447 -U 7826 ; WX 685 ; N uni1E92 ; G 2448 -U 7827 ; WX 525 ; N uni1E93 ; G 2449 -U 7828 ; WX 685 ; N uni1E94 ; G 2450 -U 7829 ; WX 525 ; N uni1E95 ; G 2451 -U 7830 ; WX 634 ; N uni1E96 ; G 2452 -U 7831 ; WX 392 ; N uni1E97 ; G 2453 -U 7832 ; WX 818 ; N uni1E98 ; G 2454 -U 7833 ; WX 592 ; N uni1E99 ; G 2455 -U 7834 ; WX 613 ; N uni1E9A ; G 2456 -U 7835 ; WX 352 ; N uni1E9B ; G 2457 -U 7836 ; WX 352 ; N uni1E9C ; G 2458 -U 7837 ; WX 352 ; N uni1E9D ; G 2459 -U 7838 ; WX 769 ; N uni1E9E ; G 2460 -U 7839 ; WX 612 ; N uni1E9F ; G 2461 -U 7840 ; WX 684 ; N uni1EA0 ; G 2462 -U 7841 ; WX 613 ; N uni1EA1 ; G 2463 -U 7842 ; WX 684 ; N uni1EA2 ; G 2464 -U 7843 ; WX 613 ; N uni1EA3 ; G 2465 -U 7844 ; WX 684 ; N uni1EA4 ; G 2466 -U 7845 ; WX 613 ; N uni1EA5 ; G 2467 -U 7846 ; WX 684 ; N uni1EA6 ; G 2468 -U 7847 ; WX 613 ; N uni1EA7 ; G 2469 -U 7848 ; WX 684 ; N uni1EA8 ; G 2470 -U 7849 ; WX 613 ; N uni1EA9 ; G 2471 -U 7850 ; WX 684 ; N uni1EAA ; G 2472 -U 7851 ; WX 613 ; N uni1EAB ; G 2473 -U 7852 ; WX 684 ; N uni1EAC ; G 2474 -U 7853 ; WX 613 ; N uni1EAD ; G 2475 -U 7854 ; WX 684 ; N uni1EAE ; G 2476 -U 7855 ; WX 613 ; N uni1EAF ; G 2477 -U 7856 ; WX 684 ; N uni1EB0 ; G 2478 -U 7857 ; WX 613 ; N uni1EB1 ; G 2479 -U 7858 ; WX 684 ; N uni1EB2 ; G 2480 -U 7859 ; WX 613 ; N uni1EB3 ; G 2481 -U 7860 ; WX 684 ; N uni1EB4 ; G 2482 -U 7861 ; WX 613 ; N uni1EB5 ; G 2483 -U 7862 ; WX 684 ; N uni1EB6 ; G 2484 -U 7863 ; WX 613 ; N uni1EB7 ; G 2485 -U 7864 ; WX 632 ; N uni1EB8 ; G 2486 -U 7865 ; WX 615 ; N uni1EB9 ; G 2487 -U 7866 ; WX 632 ; N uni1EBA ; G 2488 -U 7867 ; WX 615 ; N uni1EBB ; G 2489 -U 7868 ; WX 632 ; N uni1EBC ; G 2490 -U 7869 ; WX 615 ; N uni1EBD ; G 2491 -U 7870 ; WX 632 ; N uni1EBE ; G 2492 -U 7871 ; WX 615 ; N uni1EBF ; G 2493 -U 7872 ; WX 632 ; N uni1EC0 ; G 2494 -U 7873 ; WX 615 ; N uni1EC1 ; G 2495 -U 7874 ; WX 632 ; N uni1EC2 ; G 2496 -U 7875 ; WX 615 ; N uni1EC3 ; G 2497 -U 7876 ; WX 632 ; N uni1EC4 ; G 2498 -U 7877 ; WX 615 ; N uni1EC5 ; G 2499 -U 7878 ; WX 632 ; N uni1EC6 ; G 2500 -U 7879 ; WX 615 ; N uni1EC7 ; G 2501 -U 7880 ; WX 295 ; N uni1EC8 ; G 2502 -U 7881 ; WX 278 ; N uni1EC9 ; G 2503 -U 7882 ; WX 295 ; N uni1ECA ; G 2504 -U 7883 ; WX 278 ; N uni1ECB ; G 2505 -U 7884 ; WX 787 ; N uni1ECC ; G 2506 -U 7885 ; WX 612 ; N uni1ECD ; G 2507 -U 7886 ; WX 787 ; N uni1ECE ; G 2508 -U 7887 ; WX 612 ; N uni1ECF ; G 2509 -U 7888 ; WX 787 ; N uni1ED0 ; G 2510 -U 7889 ; WX 612 ; N uni1ED1 ; G 2511 -U 7890 ; WX 787 ; N uni1ED2 ; G 2512 -U 7891 ; WX 612 ; N uni1ED3 ; G 2513 -U 7892 ; WX 787 ; N uni1ED4 ; G 2514 -U 7893 ; WX 612 ; N uni1ED5 ; G 2515 -U 7894 ; WX 787 ; N uni1ED6 ; G 2516 -U 7895 ; WX 612 ; N uni1ED7 ; G 2517 -U 7896 ; WX 787 ; N uni1ED8 ; G 2518 -U 7897 ; WX 612 ; N uni1ED9 ; G 2519 -U 7898 ; WX 913 ; N uni1EDA ; G 2520 -U 7899 ; WX 612 ; N uni1EDB ; G 2521 -U 7900 ; WX 913 ; N uni1EDC ; G 2522 -U 7901 ; WX 612 ; N uni1EDD ; G 2523 -U 7902 ; WX 913 ; N uni1EDE ; G 2524 -U 7903 ; WX 612 ; N uni1EDF ; G 2525 -U 7904 ; WX 913 ; N uni1EE0 ; G 2526 -U 7905 ; WX 612 ; N uni1EE1 ; G 2527 -U 7906 ; WX 913 ; N uni1EE2 ; G 2528 -U 7907 ; WX 612 ; N uni1EE3 ; G 2529 -U 7908 ; WX 732 ; N uni1EE4 ; G 2530 -U 7909 ; WX 634 ; N uni1EE5 ; G 2531 -U 7910 ; WX 732 ; N uni1EE6 ; G 2532 -U 7911 ; WX 634 ; N uni1EE7 ; G 2533 -U 7912 ; WX 858 ; N uni1EE8 ; G 2534 -U 7913 ; WX 634 ; N uni1EE9 ; G 2535 -U 7914 ; WX 858 ; N uni1EEA ; G 2536 -U 7915 ; WX 634 ; N uni1EEB ; G 2537 -U 7916 ; WX 858 ; N uni1EEC ; G 2538 -U 7917 ; WX 634 ; N uni1EED ; G 2539 -U 7918 ; WX 858 ; N uni1EEE ; G 2540 -U 7919 ; WX 634 ; N uni1EEF ; G 2541 -U 7920 ; WX 858 ; N uni1EF0 ; G 2542 -U 7921 ; WX 634 ; N uni1EF1 ; G 2543 -U 7922 ; WX 611 ; N Ygrave ; G 2544 -U 7923 ; WX 592 ; N ygrave ; G 2545 -U 7924 ; WX 611 ; N uni1EF4 ; G 2546 -U 7925 ; WX 592 ; N uni1EF5 ; G 2547 -U 7926 ; WX 611 ; N uni1EF6 ; G 2548 -U 7927 ; WX 592 ; N uni1EF7 ; G 2549 -U 7928 ; WX 611 ; N uni1EF8 ; G 2550 -U 7929 ; WX 592 ; N uni1EF9 ; G 2551 -U 7930 ; WX 769 ; N uni1EFA ; G 2552 -U 7931 ; WX 477 ; N uni1EFB ; G 2553 -U 7936 ; WX 659 ; N uni1F00 ; G 2554 -U 7937 ; WX 659 ; N uni1F01 ; G 2555 -U 7938 ; WX 659 ; N uni1F02 ; G 2556 -U 7939 ; WX 659 ; N uni1F03 ; G 2557 -U 7940 ; WX 659 ; N uni1F04 ; G 2558 -U 7941 ; WX 659 ; N uni1F05 ; G 2559 -U 7942 ; WX 659 ; N uni1F06 ; G 2560 -U 7943 ; WX 659 ; N uni1F07 ; G 2561 -U 7944 ; WX 684 ; N uni1F08 ; G 2562 -U 7945 ; WX 684 ; N uni1F09 ; G 2563 -U 7946 ; WX 877 ; N uni1F0A ; G 2564 -U 7947 ; WX 877 ; N uni1F0B ; G 2565 -U 7948 ; WX 769 ; N uni1F0C ; G 2566 -U 7949 ; WX 801 ; N uni1F0D ; G 2567 -U 7950 ; WX 708 ; N uni1F0E ; G 2568 -U 7951 ; WX 743 ; N uni1F0F ; G 2569 -U 7952 ; WX 541 ; N uni1F10 ; G 2570 -U 7953 ; WX 541 ; N uni1F11 ; G 2571 -U 7954 ; WX 541 ; N uni1F12 ; G 2572 -U 7955 ; WX 541 ; N uni1F13 ; G 2573 -U 7956 ; WX 541 ; N uni1F14 ; G 2574 -U 7957 ; WX 541 ; N uni1F15 ; G 2575 -U 7960 ; WX 711 ; N uni1F18 ; G 2576 -U 7961 ; WX 711 ; N uni1F19 ; G 2577 -U 7962 ; WX 966 ; N uni1F1A ; G 2578 -U 7963 ; WX 975 ; N uni1F1B ; G 2579 -U 7964 ; WX 898 ; N uni1F1C ; G 2580 -U 7965 ; WX 928 ; N uni1F1D ; G 2581 -U 7968 ; WX 634 ; N uni1F20 ; G 2582 -U 7969 ; WX 634 ; N uni1F21 ; G 2583 -U 7970 ; WX 634 ; N uni1F22 ; G 2584 -U 7971 ; WX 634 ; N uni1F23 ; G 2585 -U 7972 ; WX 634 ; N uni1F24 ; G 2586 -U 7973 ; WX 634 ; N uni1F25 ; G 2587 -U 7974 ; WX 634 ; N uni1F26 ; G 2588 -U 7975 ; WX 634 ; N uni1F27 ; G 2589 -U 7976 ; WX 837 ; N uni1F28 ; G 2590 -U 7977 ; WX 835 ; N uni1F29 ; G 2591 -U 7978 ; WX 1086 ; N uni1F2A ; G 2592 -U 7979 ; WX 1089 ; N uni1F2B ; G 2593 -U 7980 ; WX 1027 ; N uni1F2C ; G 2594 -U 7981 ; WX 1051 ; N uni1F2D ; G 2595 -U 7982 ; WX 934 ; N uni1F2E ; G 2596 -U 7983 ; WX 947 ; N uni1F2F ; G 2597 -U 7984 ; WX 338 ; N uni1F30 ; G 2598 -U 7985 ; WX 338 ; N uni1F31 ; G 2599 -U 7986 ; WX 338 ; N uni1F32 ; G 2600 -U 7987 ; WX 338 ; N uni1F33 ; G 2601 -U 7988 ; WX 338 ; N uni1F34 ; G 2602 -U 7989 ; WX 338 ; N uni1F35 ; G 2603 -U 7990 ; WX 338 ; N uni1F36 ; G 2604 -U 7991 ; WX 338 ; N uni1F37 ; G 2605 -U 7992 ; WX 380 ; N uni1F38 ; G 2606 -U 7993 ; WX 374 ; N uni1F39 ; G 2607 -U 7994 ; WX 635 ; N uni1F3A ; G 2608 -U 7995 ; WX 635 ; N uni1F3B ; G 2609 -U 7996 ; WX 570 ; N uni1F3C ; G 2610 -U 7997 ; WX 600 ; N uni1F3D ; G 2611 -U 7998 ; WX 489 ; N uni1F3E ; G 2612 -U 7999 ; WX 493 ; N uni1F3F ; G 2613 -U 8000 ; WX 612 ; N uni1F40 ; G 2614 -U 8001 ; WX 612 ; N uni1F41 ; G 2615 -U 8002 ; WX 612 ; N uni1F42 ; G 2616 -U 8003 ; WX 612 ; N uni1F43 ; G 2617 -U 8004 ; WX 612 ; N uni1F44 ; G 2618 -U 8005 ; WX 612 ; N uni1F45 ; G 2619 -U 8008 ; WX 804 ; N uni1F48 ; G 2620 -U 8009 ; WX 848 ; N uni1F49 ; G 2621 -U 8010 ; WX 1095 ; N uni1F4A ; G 2622 -U 8011 ; WX 1100 ; N uni1F4B ; G 2623 -U 8012 ; WX 938 ; N uni1F4C ; G 2624 -U 8013 ; WX 970 ; N uni1F4D ; G 2625 -U 8016 ; WX 579 ; N uni1F50 ; G 2626 -U 8017 ; WX 579 ; N uni1F51 ; G 2627 -U 8018 ; WX 579 ; N uni1F52 ; G 2628 -U 8019 ; WX 579 ; N uni1F53 ; G 2629 -U 8020 ; WX 579 ; N uni1F54 ; G 2630 -U 8021 ; WX 579 ; N uni1F55 ; G 2631 -U 8022 ; WX 579 ; N uni1F56 ; G 2632 -U 8023 ; WX 579 ; N uni1F57 ; G 2633 -U 8025 ; WX 784 ; N uni1F59 ; G 2634 -U 8027 ; WX 998 ; N uni1F5B ; G 2635 -U 8029 ; WX 1012 ; N uni1F5D ; G 2636 -U 8031 ; WX 897 ; N uni1F5F ; G 2637 -U 8032 ; WX 837 ; N uni1F60 ; G 2638 -U 8033 ; WX 837 ; N uni1F61 ; G 2639 -U 8034 ; WX 837 ; N uni1F62 ; G 2640 -U 8035 ; WX 837 ; N uni1F63 ; G 2641 -U 8036 ; WX 837 ; N uni1F64 ; G 2642 -U 8037 ; WX 837 ; N uni1F65 ; G 2643 -U 8038 ; WX 837 ; N uni1F66 ; G 2644 -U 8039 ; WX 837 ; N uni1F67 ; G 2645 -U 8040 ; WX 802 ; N uni1F68 ; G 2646 -U 8041 ; WX 843 ; N uni1F69 ; G 2647 -U 8042 ; WX 1089 ; N uni1F6A ; G 2648 -U 8043 ; WX 1095 ; N uni1F6B ; G 2649 -U 8044 ; WX 946 ; N uni1F6C ; G 2650 -U 8045 ; WX 972 ; N uni1F6D ; G 2651 -U 8046 ; WX 921 ; N uni1F6E ; G 2652 -U 8047 ; WX 952 ; N uni1F6F ; G 2653 -U 8048 ; WX 659 ; N uni1F70 ; G 2654 -U 8049 ; WX 659 ; N uni1F71 ; G 2655 -U 8050 ; WX 541 ; N uni1F72 ; G 2656 -U 8051 ; WX 548 ; N uni1F73 ; G 2657 -U 8052 ; WX 634 ; N uni1F74 ; G 2658 -U 8053 ; WX 654 ; N uni1F75 ; G 2659 -U 8054 ; WX 338 ; N uni1F76 ; G 2660 -U 8055 ; WX 338 ; N uni1F77 ; G 2661 -U 8056 ; WX 612 ; N uni1F78 ; G 2662 -U 8057 ; WX 612 ; N uni1F79 ; G 2663 -U 8058 ; WX 579 ; N uni1F7A ; G 2664 -U 8059 ; WX 579 ; N uni1F7B ; G 2665 -U 8060 ; WX 837 ; N uni1F7C ; G 2666 -U 8061 ; WX 837 ; N uni1F7D ; G 2667 -U 8064 ; WX 659 ; N uni1F80 ; G 2668 -U 8065 ; WX 659 ; N uni1F81 ; G 2669 -U 8066 ; WX 659 ; N uni1F82 ; G 2670 -U 8067 ; WX 659 ; N uni1F83 ; G 2671 -U 8068 ; WX 659 ; N uni1F84 ; G 2672 -U 8069 ; WX 659 ; N uni1F85 ; G 2673 -U 8070 ; WX 659 ; N uni1F86 ; G 2674 -U 8071 ; WX 659 ; N uni1F87 ; G 2675 -U 8072 ; WX 684 ; N uni1F88 ; G 2676 -U 8073 ; WX 684 ; N uni1F89 ; G 2677 -U 8074 ; WX 877 ; N uni1F8A ; G 2678 -U 8075 ; WX 877 ; N uni1F8B ; G 2679 -U 8076 ; WX 769 ; N uni1F8C ; G 2680 -U 8077 ; WX 801 ; N uni1F8D ; G 2681 -U 8078 ; WX 708 ; N uni1F8E ; G 2682 -U 8079 ; WX 743 ; N uni1F8F ; G 2683 -U 8080 ; WX 634 ; N uni1F90 ; G 2684 -U 8081 ; WX 634 ; N uni1F91 ; G 2685 -U 8082 ; WX 634 ; N uni1F92 ; G 2686 -U 8083 ; WX 634 ; N uni1F93 ; G 2687 -U 8084 ; WX 634 ; N uni1F94 ; G 2688 -U 8085 ; WX 634 ; N uni1F95 ; G 2689 -U 8086 ; WX 634 ; N uni1F96 ; G 2690 -U 8087 ; WX 634 ; N uni1F97 ; G 2691 -U 8088 ; WX 837 ; N uni1F98 ; G 2692 -U 8089 ; WX 835 ; N uni1F99 ; G 2693 -U 8090 ; WX 1086 ; N uni1F9A ; G 2694 -U 8091 ; WX 1089 ; N uni1F9B ; G 2695 -U 8092 ; WX 1027 ; N uni1F9C ; G 2696 -U 8093 ; WX 1051 ; N uni1F9D ; G 2697 -U 8094 ; WX 934 ; N uni1F9E ; G 2698 -U 8095 ; WX 947 ; N uni1F9F ; G 2699 -U 8096 ; WX 837 ; N uni1FA0 ; G 2700 -U 8097 ; WX 837 ; N uni1FA1 ; G 2701 -U 8098 ; WX 837 ; N uni1FA2 ; G 2702 -U 8099 ; WX 837 ; N uni1FA3 ; G 2703 -U 8100 ; WX 837 ; N uni1FA4 ; G 2704 -U 8101 ; WX 837 ; N uni1FA5 ; G 2705 -U 8102 ; WX 837 ; N uni1FA6 ; G 2706 -U 8103 ; WX 837 ; N uni1FA7 ; G 2707 -U 8104 ; WX 802 ; N uni1FA8 ; G 2708 -U 8105 ; WX 843 ; N uni1FA9 ; G 2709 -U 8106 ; WX 1089 ; N uni1FAA ; G 2710 -U 8107 ; WX 1095 ; N uni1FAB ; G 2711 -U 8108 ; WX 946 ; N uni1FAC ; G 2712 -U 8109 ; WX 972 ; N uni1FAD ; G 2713 -U 8110 ; WX 921 ; N uni1FAE ; G 2714 -U 8111 ; WX 952 ; N uni1FAF ; G 2715 -U 8112 ; WX 659 ; N uni1FB0 ; G 2716 -U 8113 ; WX 659 ; N uni1FB1 ; G 2717 -U 8114 ; WX 659 ; N uni1FB2 ; G 2718 -U 8115 ; WX 659 ; N uni1FB3 ; G 2719 -U 8116 ; WX 659 ; N uni1FB4 ; G 2720 -U 8118 ; WX 659 ; N uni1FB6 ; G 2721 -U 8119 ; WX 659 ; N uni1FB7 ; G 2722 -U 8120 ; WX 684 ; N uni1FB8 ; G 2723 -U 8121 ; WX 684 ; N uni1FB9 ; G 2724 -U 8122 ; WX 716 ; N uni1FBA ; G 2725 -U 8123 ; WX 692 ; N uni1FBB ; G 2726 -U 8124 ; WX 684 ; N uni1FBC ; G 2727 -U 8125 ; WX 500 ; N uni1FBD ; G 2728 -U 8126 ; WX 500 ; N uni1FBE ; G 2729 -U 8127 ; WX 500 ; N uni1FBF ; G 2730 -U 8128 ; WX 500 ; N uni1FC0 ; G 2731 -U 8129 ; WX 500 ; N uni1FC1 ; G 2732 -U 8130 ; WX 634 ; N uni1FC2 ; G 2733 -U 8131 ; WX 634 ; N uni1FC3 ; G 2734 -U 8132 ; WX 654 ; N uni1FC4 ; G 2735 -U 8134 ; WX 634 ; N uni1FC6 ; G 2736 -U 8135 ; WX 634 ; N uni1FC7 ; G 2737 -U 8136 ; WX 805 ; N uni1FC8 ; G 2738 -U 8137 ; WX 746 ; N uni1FC9 ; G 2739 -U 8138 ; WX 931 ; N uni1FCA ; G 2740 -U 8139 ; WX 871 ; N uni1FCB ; G 2741 -U 8140 ; WX 752 ; N uni1FCC ; G 2742 -U 8141 ; WX 500 ; N uni1FCD ; G 2743 -U 8142 ; WX 500 ; N uni1FCE ; G 2744 -U 8143 ; WX 500 ; N uni1FCF ; G 2745 -U 8144 ; WX 338 ; N uni1FD0 ; G 2746 -U 8145 ; WX 338 ; N uni1FD1 ; G 2747 -U 8146 ; WX 338 ; N uni1FD2 ; G 2748 -U 8147 ; WX 338 ; N uni1FD3 ; G 2749 -U 8150 ; WX 338 ; N uni1FD6 ; G 2750 -U 8151 ; WX 338 ; N uni1FD7 ; G 2751 -U 8152 ; WX 295 ; N uni1FD8 ; G 2752 -U 8153 ; WX 295 ; N uni1FD9 ; G 2753 -U 8154 ; WX 475 ; N uni1FDA ; G 2754 -U 8155 ; WX 408 ; N uni1FDB ; G 2755 -U 8157 ; WX 500 ; N uni1FDD ; G 2756 -U 8158 ; WX 500 ; N uni1FDE ; G 2757 -U 8159 ; WX 500 ; N uni1FDF ; G 2758 -U 8160 ; WX 579 ; N uni1FE0 ; G 2759 -U 8161 ; WX 579 ; N uni1FE1 ; G 2760 -U 8162 ; WX 579 ; N uni1FE2 ; G 2761 -U 8163 ; WX 579 ; N uni1FE3 ; G 2762 -U 8164 ; WX 635 ; N uni1FE4 ; G 2763 -U 8165 ; WX 635 ; N uni1FE5 ; G 2764 -U 8166 ; WX 579 ; N uni1FE6 ; G 2765 -U 8167 ; WX 579 ; N uni1FE7 ; G 2766 -U 8168 ; WX 611 ; N uni1FE8 ; G 2767 -U 8169 ; WX 611 ; N uni1FE9 ; G 2768 -U 8170 ; WX 845 ; N uni1FEA ; G 2769 -U 8171 ; WX 825 ; N uni1FEB ; G 2770 -U 8172 ; WX 685 ; N uni1FEC ; G 2771 -U 8173 ; WX 500 ; N uni1FED ; G 2772 -U 8174 ; WX 500 ; N uni1FEE ; G 2773 -U 8175 ; WX 500 ; N uni1FEF ; G 2774 -U 8178 ; WX 837 ; N uni1FF2 ; G 2775 -U 8179 ; WX 837 ; N uni1FF3 ; G 2776 -U 8180 ; WX 837 ; N uni1FF4 ; G 2777 -U 8182 ; WX 837 ; N uni1FF6 ; G 2778 -U 8183 ; WX 837 ; N uni1FF7 ; G 2779 -U 8184 ; WX 941 ; N uni1FF8 ; G 2780 -U 8185 ; WX 813 ; N uni1FF9 ; G 2781 -U 8186 ; WX 922 ; N uni1FFA ; G 2782 -U 8187 ; WX 826 ; N uni1FFB ; G 2783 -U 8188 ; WX 764 ; N uni1FFC ; G 2784 -U 8189 ; WX 500 ; N uni1FFD ; G 2785 -U 8190 ; WX 500 ; N uni1FFE ; G 2786 -U 8192 ; WX 500 ; N uni2000 ; G 2787 -U 8193 ; WX 1000 ; N uni2001 ; G 2788 -U 8194 ; WX 500 ; N uni2002 ; G 2789 -U 8195 ; WX 1000 ; N uni2003 ; G 2790 -U 8196 ; WX 330 ; N uni2004 ; G 2791 -U 8197 ; WX 250 ; N uni2005 ; G 2792 -U 8198 ; WX 167 ; N uni2006 ; G 2793 -U 8199 ; WX 636 ; N uni2007 ; G 2794 -U 8200 ; WX 318 ; N uni2008 ; G 2795 -U 8201 ; WX 200 ; N uni2009 ; G 2796 -U 8202 ; WX 100 ; N uni200A ; G 2797 -U 8203 ; WX 0 ; N uni200B ; G 2798 -U 8204 ; WX 0 ; N uni200C ; G 2799 -U 8205 ; WX 0 ; N uni200D ; G 2800 -U 8206 ; WX 0 ; N uni200E ; G 2801 -U 8207 ; WX 0 ; N uni200F ; G 2802 -U 8208 ; WX 361 ; N uni2010 ; G 2803 -U 8209 ; WX 361 ; N uni2011 ; G 2804 -U 8210 ; WX 636 ; N figuredash ; G 2805 -U 8211 ; WX 500 ; N endash ; G 2806 -U 8212 ; WX 1000 ; N emdash ; G 2807 -U 8213 ; WX 1000 ; N uni2015 ; G 2808 -U 8214 ; WX 500 ; N uni2016 ; G 2809 -U 8215 ; WX 500 ; N underscoredbl ; G 2810 -U 8216 ; WX 318 ; N quoteleft ; G 2811 -U 8217 ; WX 318 ; N quoteright ; G 2812 -U 8218 ; WX 318 ; N quotesinglbase ; G 2813 -U 8219 ; WX 318 ; N quotereversed ; G 2814 -U 8220 ; WX 518 ; N quotedblleft ; G 2815 -U 8221 ; WX 518 ; N quotedblright ; G 2816 -U 8222 ; WX 518 ; N quotedblbase ; G 2817 -U 8223 ; WX 518 ; N uni201F ; G 2818 -U 8224 ; WX 500 ; N dagger ; G 2819 -U 8225 ; WX 500 ; N daggerdbl ; G 2820 -U 8226 ; WX 590 ; N bullet ; G 2821 -U 8227 ; WX 590 ; N uni2023 ; G 2822 -U 8228 ; WX 334 ; N onedotenleader ; G 2823 -U 8229 ; WX 667 ; N twodotenleader ; G 2824 -U 8230 ; WX 1000 ; N ellipsis ; G 2825 -U 8231 ; WX 318 ; N uni2027 ; G 2826 -U 8232 ; WX 0 ; N uni2028 ; G 2827 -U 8233 ; WX 0 ; N uni2029 ; G 2828 -U 8234 ; WX 0 ; N uni202A ; G 2829 -U 8235 ; WX 0 ; N uni202B ; G 2830 -U 8236 ; WX 0 ; N uni202C ; G 2831 -U 8237 ; WX 0 ; N uni202D ; G 2832 -U 8238 ; WX 0 ; N uni202E ; G 2833 -U 8239 ; WX 200 ; N uni202F ; G 2834 -U 8240 ; WX 1342 ; N perthousand ; G 2835 -U 8241 ; WX 1735 ; N uni2031 ; G 2836 -U 8242 ; WX 227 ; N minute ; G 2837 -U 8243 ; WX 374 ; N second ; G 2838 -U 8244 ; WX 520 ; N uni2034 ; G 2839 -U 8245 ; WX 227 ; N uni2035 ; G 2840 -U 8246 ; WX 374 ; N uni2036 ; G 2841 -U 8247 ; WX 520 ; N uni2037 ; G 2842 -U 8248 ; WX 339 ; N uni2038 ; G 2843 -U 8249 ; WX 400 ; N guilsinglleft ; G 2844 -U 8250 ; WX 400 ; N guilsinglright ; G 2845 -U 8251 ; WX 838 ; N uni203B ; G 2846 -U 8252 ; WX 485 ; N exclamdbl ; G 2847 -U 8253 ; WX 531 ; N uni203D ; G 2848 -U 8254 ; WX 500 ; N uni203E ; G 2849 -U 8255 ; WX 804 ; N uni203F ; G 2850 -U 8256 ; WX 804 ; N uni2040 ; G 2851 -U 8257 ; WX 250 ; N uni2041 ; G 2852 -U 8258 ; WX 1000 ; N uni2042 ; G 2853 -U 8259 ; WX 500 ; N uni2043 ; G 2854 -U 8260 ; WX 167 ; N fraction ; G 2855 -U 8261 ; WX 390 ; N uni2045 ; G 2856 -U 8262 ; WX 390 ; N uni2046 ; G 2857 -U 8263 ; WX 922 ; N uni2047 ; G 2858 -U 8264 ; WX 733 ; N uni2048 ; G 2859 -U 8265 ; WX 733 ; N uni2049 ; G 2860 -U 8266 ; WX 497 ; N uni204A ; G 2861 -U 8267 ; WX 636 ; N uni204B ; G 2862 -U 8268 ; WX 500 ; N uni204C ; G 2863 -U 8269 ; WX 500 ; N uni204D ; G 2864 -U 8270 ; WX 500 ; N uni204E ; G 2865 -U 8271 ; WX 337 ; N uni204F ; G 2866 -U 8272 ; WX 804 ; N uni2050 ; G 2867 -U 8273 ; WX 500 ; N uni2051 ; G 2868 -U 8274 ; WX 450 ; N uni2052 ; G 2869 -U 8275 ; WX 1000 ; N uni2053 ; G 2870 -U 8276 ; WX 804 ; N uni2054 ; G 2871 -U 8277 ; WX 838 ; N uni2055 ; G 2872 -U 8278 ; WX 586 ; N uni2056 ; G 2873 -U 8279 ; WX 663 ; N uni2057 ; G 2874 -U 8280 ; WX 838 ; N uni2058 ; G 2875 -U 8281 ; WX 838 ; N uni2059 ; G 2876 -U 8282 ; WX 318 ; N uni205A ; G 2877 -U 8283 ; WX 797 ; N uni205B ; G 2878 -U 8284 ; WX 838 ; N uni205C ; G 2879 -U 8285 ; WX 318 ; N uni205D ; G 2880 -U 8286 ; WX 318 ; N uni205E ; G 2881 -U 8287 ; WX 222 ; N uni205F ; G 2882 -U 8288 ; WX 0 ; N uni2060 ; G 2883 -U 8289 ; WX 0 ; N uni2061 ; G 2884 -U 8290 ; WX 0 ; N uni2062 ; G 2885 -U 8291 ; WX 0 ; N uni2063 ; G 2886 -U 8292 ; WX 0 ; N uni2064 ; G 2887 -U 8298 ; WX 0 ; N uni206A ; G 2888 -U 8299 ; WX 0 ; N uni206B ; G 2889 -U 8300 ; WX 0 ; N uni206C ; G 2890 -U 8301 ; WX 0 ; N uni206D ; G 2891 -U 8302 ; WX 0 ; N uni206E ; G 2892 -U 8303 ; WX 0 ; N uni206F ; G 2893 -U 8304 ; WX 401 ; N uni2070 ; G 2894 -U 8305 ; WX 179 ; N uni2071 ; G 2895 -U 8308 ; WX 401 ; N uni2074 ; G 2896 -U 8309 ; WX 401 ; N uni2075 ; G 2897 -U 8310 ; WX 401 ; N uni2076 ; G 2898 -U 8311 ; WX 401 ; N uni2077 ; G 2899 -U 8312 ; WX 401 ; N uni2078 ; G 2900 -U 8313 ; WX 401 ; N uni2079 ; G 2901 -U 8314 ; WX 528 ; N uni207A ; G 2902 -U 8315 ; WX 528 ; N uni207B ; G 2903 -U 8316 ; WX 528 ; N uni207C ; G 2904 -U 8317 ; WX 246 ; N uni207D ; G 2905 -U 8318 ; WX 246 ; N uni207E ; G 2906 -U 8319 ; WX 398 ; N uni207F ; G 2907 -U 8320 ; WX 401 ; N uni2080 ; G 2908 -U 8321 ; WX 401 ; N uni2081 ; G 2909 -U 8322 ; WX 401 ; N uni2082 ; G 2910 -U 8323 ; WX 401 ; N uni2083 ; G 2911 -U 8324 ; WX 401 ; N uni2084 ; G 2912 -U 8325 ; WX 401 ; N uni2085 ; G 2913 -U 8326 ; WX 401 ; N uni2086 ; G 2914 -U 8327 ; WX 401 ; N uni2087 ; G 2915 -U 8328 ; WX 401 ; N uni2088 ; G 2916 -U 8329 ; WX 401 ; N uni2089 ; G 2917 -U 8330 ; WX 528 ; N uni208A ; G 2918 -U 8331 ; WX 528 ; N uni208B ; G 2919 -U 8332 ; WX 528 ; N uni208C ; G 2920 -U 8333 ; WX 246 ; N uni208D ; G 2921 -U 8334 ; WX 246 ; N uni208E ; G 2922 -U 8336 ; WX 392 ; N uni2090 ; G 2923 -U 8337 ; WX 417 ; N uni2091 ; G 2924 -U 8338 ; WX 414 ; N uni2092 ; G 2925 -U 8339 ; WX 444 ; N uni2093 ; G 2926 -U 8340 ; WX 417 ; N uni2094 ; G 2927 -U 8341 ; WX 404 ; N uni2095 ; G 2928 -U 8342 ; WX 426 ; N uni2096 ; G 2929 -U 8343 ; WX 166 ; N uni2097 ; G 2930 -U 8344 ; WX 623 ; N uni2098 ; G 2931 -U 8345 ; WX 398 ; N uni2099 ; G 2932 -U 8346 ; WX 428 ; N uni209A ; G 2933 -U 8347 ; WX 373 ; N uni209B ; G 2934 -U 8348 ; WX 295 ; N uni209C ; G 2935 -U 8352 ; WX 877 ; N uni20A0 ; G 2936 -U 8353 ; WX 636 ; N colonmonetary ; G 2937 -U 8354 ; WX 636 ; N uni20A2 ; G 2938 -U 8355 ; WX 636 ; N franc ; G 2939 -U 8356 ; WX 636 ; N lira ; G 2940 -U 8357 ; WX 974 ; N uni20A5 ; G 2941 -U 8358 ; WX 636 ; N uni20A6 ; G 2942 -U 8359 ; WX 1272 ; N peseta ; G 2943 -U 8360 ; WX 1074 ; N uni20A8 ; G 2944 -U 8361 ; WX 989 ; N uni20A9 ; G 2945 -U 8362 ; WX 784 ; N uni20AA ; G 2946 -U 8363 ; WX 636 ; N dong ; G 2947 -U 8364 ; WX 636 ; N Euro ; G 2948 -U 8365 ; WX 636 ; N uni20AD ; G 2949 -U 8366 ; WX 636 ; N uni20AE ; G 2950 -U 8367 ; WX 1272 ; N uni20AF ; G 2951 -U 8368 ; WX 636 ; N uni20B0 ; G 2952 -U 8369 ; WX 636 ; N uni20B1 ; G 2953 -U 8370 ; WX 636 ; N uni20B2 ; G 2954 -U 8371 ; WX 636 ; N uni20B3 ; G 2955 -U 8372 ; WX 774 ; N uni20B4 ; G 2956 -U 8373 ; WX 636 ; N uni20B5 ; G 2957 -U 8376 ; WX 636 ; N uni20B8 ; G 2958 -U 8377 ; WX 636 ; N uni20B9 ; G 2959 -U 8378 ; WX 636 ; N uni20BA ; G 2960 -U 8381 ; WX 636 ; N uni20BD ; G 2961 -U 8400 ; WX 0 ; N uni20D0 ; G 2962 -U 8401 ; WX 0 ; N uni20D1 ; G 2963 -U 8406 ; WX 0 ; N uni20D6 ; G 2964 -U 8407 ; WX 0 ; N uni20D7 ; G 2965 -U 8411 ; WX 0 ; N uni20DB ; G 2966 -U 8412 ; WX 0 ; N uni20DC ; G 2967 -U 8417 ; WX 0 ; N uni20E1 ; G 2968 -U 8448 ; WX 1019 ; N uni2100 ; G 2969 -U 8449 ; WX 1019 ; N uni2101 ; G 2970 -U 8450 ; WX 698 ; N uni2102 ; G 2971 -U 8451 ; WX 1123 ; N uni2103 ; G 2972 -U 8452 ; WX 642 ; N uni2104 ; G 2973 -U 8453 ; WX 1019 ; N uni2105 ; G 2974 -U 8454 ; WX 1067 ; N uni2106 ; G 2975 -U 8455 ; WX 614 ; N uni2107 ; G 2976 -U 8456 ; WX 698 ; N uni2108 ; G 2977 -U 8457 ; WX 952 ; N uni2109 ; G 2978 -U 8459 ; WX 988 ; N uni210B ; G 2979 -U 8460 ; WX 754 ; N uni210C ; G 2980 -U 8461 ; WX 850 ; N uni210D ; G 2981 -U 8462 ; WX 634 ; N uni210E ; G 2982 -U 8463 ; WX 634 ; N uni210F ; G 2983 -U 8464 ; WX 470 ; N uni2110 ; G 2984 -U 8465 ; WX 697 ; N Ifraktur ; G 2985 -U 8466 ; WX 720 ; N uni2112 ; G 2986 -U 8467 ; WX 413 ; N uni2113 ; G 2987 -U 8468 ; WX 818 ; N uni2114 ; G 2988 -U 8469 ; WX 801 ; N uni2115 ; G 2989 -U 8470 ; WX 1040 ; N uni2116 ; G 2990 -U 8471 ; WX 1000 ; N uni2117 ; G 2991 -U 8472 ; WX 697 ; N weierstrass ; G 2992 -U 8473 ; WX 701 ; N uni2119 ; G 2993 -U 8474 ; WX 787 ; N uni211A ; G 2994 -U 8475 ; WX 798 ; N uni211B ; G 2995 -U 8476 ; WX 814 ; N Rfraktur ; G 2996 -U 8477 ; WX 792 ; N uni211D ; G 2997 -U 8478 ; WX 896 ; N prescription ; G 2998 -U 8479 ; WX 684 ; N uni211F ; G 2999 -U 8480 ; WX 1020 ; N uni2120 ; G 3000 -U 8481 ; WX 1074 ; N uni2121 ; G 3001 -U 8482 ; WX 1000 ; N trademark ; G 3002 -U 8483 ; WX 684 ; N uni2123 ; G 3003 -U 8484 ; WX 745 ; N uni2124 ; G 3004 -U 8485 ; WX 578 ; N uni2125 ; G 3005 -U 8486 ; WX 764 ; N uni2126 ; G 3006 -U 8487 ; WX 764 ; N uni2127 ; G 3007 -U 8488 ; WX 616 ; N uni2128 ; G 3008 -U 8489 ; WX 338 ; N uni2129 ; G 3009 -U 8490 ; WX 656 ; N uni212A ; G 3010 -U 8491 ; WX 684 ; N uni212B ; G 3011 -U 8492 ; WX 786 ; N uni212C ; G 3012 -U 8493 ; WX 703 ; N uni212D ; G 3013 -U 8494 ; WX 854 ; N estimated ; G 3014 -U 8495 ; WX 592 ; N uni212F ; G 3015 -U 8496 ; WX 605 ; N uni2130 ; G 3016 -U 8497 ; WX 786 ; N uni2131 ; G 3017 -U 8498 ; WX 575 ; N uni2132 ; G 3018 -U 8499 ; WX 1069 ; N uni2133 ; G 3019 -U 8500 ; WX 462 ; N uni2134 ; G 3020 -U 8501 ; WX 745 ; N aleph ; G 3021 -U 8502 ; WX 674 ; N uni2136 ; G 3022 -U 8503 ; WX 466 ; N uni2137 ; G 3023 -U 8504 ; WX 645 ; N uni2138 ; G 3024 -U 8505 ; WX 380 ; N uni2139 ; G 3025 -U 8506 ; WX 926 ; N uni213A ; G 3026 -U 8507 ; WX 1194 ; N uni213B ; G 3027 -U 8508 ; WX 702 ; N uni213C ; G 3028 -U 8509 ; WX 728 ; N uni213D ; G 3029 -U 8510 ; WX 654 ; N uni213E ; G 3030 -U 8511 ; WX 849 ; N uni213F ; G 3031 -U 8512 ; WX 811 ; N uni2140 ; G 3032 -U 8513 ; WX 775 ; N uni2141 ; G 3033 -U 8514 ; WX 557 ; N uni2142 ; G 3034 -U 8515 ; WX 557 ; N uni2143 ; G 3035 -U 8516 ; WX 611 ; N uni2144 ; G 3036 -U 8517 ; WX 819 ; N uni2145 ; G 3037 -U 8518 ; WX 708 ; N uni2146 ; G 3038 -U 8519 ; WX 615 ; N uni2147 ; G 3039 -U 8520 ; WX 351 ; N uni2148 ; G 3040 -U 8521 ; WX 351 ; N uni2149 ; G 3041 -U 8523 ; WX 780 ; N uni214B ; G 3042 -U 8526 ; WX 526 ; N uni214E ; G 3043 -U 8528 ; WX 969 ; N uni2150 ; G 3044 -U 8529 ; WX 969 ; N uni2151 ; G 3045 -U 8530 ; WX 1370 ; N uni2152 ; G 3046 -U 8531 ; WX 969 ; N onethird ; G 3047 -U 8532 ; WX 969 ; N twothirds ; G 3048 -U 8533 ; WX 969 ; N uni2155 ; G 3049 -U 8534 ; WX 969 ; N uni2156 ; G 3050 -U 8535 ; WX 969 ; N uni2157 ; G 3051 -U 8536 ; WX 969 ; N uni2158 ; G 3052 -U 8537 ; WX 969 ; N uni2159 ; G 3053 -U 8538 ; WX 969 ; N uni215A ; G 3054 -U 8539 ; WX 969 ; N oneeighth ; G 3055 -U 8540 ; WX 969 ; N threeeighths ; G 3056 -U 8541 ; WX 969 ; N fiveeighths ; G 3057 -U 8542 ; WX 969 ; N seveneighths ; G 3058 -U 8543 ; WX 568 ; N uni215F ; G 3059 -U 8544 ; WX 295 ; N uni2160 ; G 3060 -U 8545 ; WX 492 ; N uni2161 ; G 3061 -U 8546 ; WX 689 ; N uni2162 ; G 3062 -U 8547 ; WX 923 ; N uni2163 ; G 3063 -U 8548 ; WX 684 ; N uni2164 ; G 3064 -U 8549 ; WX 922 ; N uni2165 ; G 3065 -U 8550 ; WX 1120 ; N uni2166 ; G 3066 -U 8551 ; WX 1317 ; N uni2167 ; G 3067 -U 8552 ; WX 917 ; N uni2168 ; G 3068 -U 8553 ; WX 685 ; N uni2169 ; G 3069 -U 8554 ; WX 933 ; N uni216A ; G 3070 -U 8555 ; WX 1131 ; N uni216B ; G 3071 -U 8556 ; WX 557 ; N uni216C ; G 3072 -U 8557 ; WX 698 ; N uni216D ; G 3073 -U 8558 ; WX 770 ; N uni216E ; G 3074 -U 8559 ; WX 863 ; N uni216F ; G 3075 -U 8560 ; WX 278 ; N uni2170 ; G 3076 -U 8561 ; WX 458 ; N uni2171 ; G 3077 -U 8562 ; WX 637 ; N uni2172 ; G 3078 -U 8563 ; WX 812 ; N uni2173 ; G 3079 -U 8564 ; WX 592 ; N uni2174 ; G 3080 -U 8565 ; WX 811 ; N uni2175 ; G 3081 -U 8566 ; WX 991 ; N uni2176 ; G 3082 -U 8567 ; WX 1170 ; N uni2177 ; G 3083 -U 8568 ; WX 819 ; N uni2178 ; G 3084 -U 8569 ; WX 592 ; N uni2179 ; G 3085 -U 8570 ; WX 822 ; N uni217A ; G 3086 -U 8571 ; WX 1002 ; N uni217B ; G 3087 -U 8572 ; WX 278 ; N uni217C ; G 3088 -U 8573 ; WX 550 ; N uni217D ; G 3089 -U 8574 ; WX 635 ; N uni217E ; G 3090 -U 8575 ; WX 974 ; N uni217F ; G 3091 -U 8576 ; WX 1245 ; N uni2180 ; G 3092 -U 8577 ; WX 770 ; N uni2181 ; G 3093 -U 8578 ; WX 1245 ; N uni2182 ; G 3094 -U 8579 ; WX 703 ; N uni2183 ; G 3095 -U 8580 ; WX 549 ; N uni2184 ; G 3096 -U 8581 ; WX 698 ; N uni2185 ; G 3097 -U 8585 ; WX 969 ; N uni2189 ; G 3098 -U 8592 ; WX 838 ; N arrowleft ; G 3099 -U 8593 ; WX 838 ; N arrowup ; G 3100 -U 8594 ; WX 838 ; N arrowright ; G 3101 -U 8595 ; WX 838 ; N arrowdown ; G 3102 -U 8596 ; WX 838 ; N arrowboth ; G 3103 -U 8597 ; WX 838 ; N arrowupdn ; G 3104 -U 8598 ; WX 838 ; N uni2196 ; G 3105 -U 8599 ; WX 838 ; N uni2197 ; G 3106 -U 8600 ; WX 838 ; N uni2198 ; G 3107 -U 8601 ; WX 838 ; N uni2199 ; G 3108 -U 8602 ; WX 838 ; N uni219A ; G 3109 -U 8603 ; WX 838 ; N uni219B ; G 3110 -U 8604 ; WX 838 ; N uni219C ; G 3111 -U 8605 ; WX 838 ; N uni219D ; G 3112 -U 8606 ; WX 838 ; N uni219E ; G 3113 -U 8607 ; WX 838 ; N uni219F ; G 3114 -U 8608 ; WX 838 ; N uni21A0 ; G 3115 -U 8609 ; WX 838 ; N uni21A1 ; G 3116 -U 8610 ; WX 838 ; N uni21A2 ; G 3117 -U 8611 ; WX 838 ; N uni21A3 ; G 3118 -U 8612 ; WX 838 ; N uni21A4 ; G 3119 -U 8613 ; WX 838 ; N uni21A5 ; G 3120 -U 8614 ; WX 838 ; N uni21A6 ; G 3121 -U 8615 ; WX 838 ; N uni21A7 ; G 3122 -U 8616 ; WX 838 ; N arrowupdnbse ; G 3123 -U 8617 ; WX 838 ; N uni21A9 ; G 3124 -U 8618 ; WX 838 ; N uni21AA ; G 3125 -U 8619 ; WX 838 ; N uni21AB ; G 3126 -U 8620 ; WX 838 ; N uni21AC ; G 3127 -U 8621 ; WX 838 ; N uni21AD ; G 3128 -U 8622 ; WX 838 ; N uni21AE ; G 3129 -U 8623 ; WX 838 ; N uni21AF ; G 3130 -U 8624 ; WX 838 ; N uni21B0 ; G 3131 -U 8625 ; WX 838 ; N uni21B1 ; G 3132 -U 8626 ; WX 838 ; N uni21B2 ; G 3133 -U 8627 ; WX 838 ; N uni21B3 ; G 3134 -U 8628 ; WX 838 ; N uni21B4 ; G 3135 -U 8629 ; WX 838 ; N carriagereturn ; G 3136 -U 8630 ; WX 838 ; N uni21B6 ; G 3137 -U 8631 ; WX 838 ; N uni21B7 ; G 3138 -U 8632 ; WX 838 ; N uni21B8 ; G 3139 -U 8633 ; WX 838 ; N uni21B9 ; G 3140 -U 8634 ; WX 838 ; N uni21BA ; G 3141 -U 8635 ; WX 838 ; N uni21BB ; G 3142 -U 8636 ; WX 838 ; N uni21BC ; G 3143 -U 8637 ; WX 838 ; N uni21BD ; G 3144 -U 8638 ; WX 838 ; N uni21BE ; G 3145 -U 8639 ; WX 838 ; N uni21BF ; G 3146 -U 8640 ; WX 838 ; N uni21C0 ; G 3147 -U 8641 ; WX 838 ; N uni21C1 ; G 3148 -U 8642 ; WX 838 ; N uni21C2 ; G 3149 -U 8643 ; WX 838 ; N uni21C3 ; G 3150 -U 8644 ; WX 838 ; N uni21C4 ; G 3151 -U 8645 ; WX 838 ; N uni21C5 ; G 3152 -U 8646 ; WX 838 ; N uni21C6 ; G 3153 -U 8647 ; WX 838 ; N uni21C7 ; G 3154 -U 8648 ; WX 838 ; N uni21C8 ; G 3155 -U 8649 ; WX 838 ; N uni21C9 ; G 3156 -U 8650 ; WX 838 ; N uni21CA ; G 3157 -U 8651 ; WX 838 ; N uni21CB ; G 3158 -U 8652 ; WX 838 ; N uni21CC ; G 3159 -U 8653 ; WX 838 ; N uni21CD ; G 3160 -U 8654 ; WX 838 ; N uni21CE ; G 3161 -U 8655 ; WX 838 ; N uni21CF ; G 3162 -U 8656 ; WX 838 ; N arrowdblleft ; G 3163 -U 8657 ; WX 838 ; N arrowdblup ; G 3164 -U 8658 ; WX 838 ; N arrowdblright ; G 3165 -U 8659 ; WX 838 ; N arrowdbldown ; G 3166 -U 8660 ; WX 838 ; N arrowdblboth ; G 3167 -U 8661 ; WX 838 ; N uni21D5 ; G 3168 -U 8662 ; WX 838 ; N uni21D6 ; G 3169 -U 8663 ; WX 838 ; N uni21D7 ; G 3170 -U 8664 ; WX 838 ; N uni21D8 ; G 3171 -U 8665 ; WX 838 ; N uni21D9 ; G 3172 -U 8666 ; WX 838 ; N uni21DA ; G 3173 -U 8667 ; WX 838 ; N uni21DB ; G 3174 -U 8668 ; WX 838 ; N uni21DC ; G 3175 -U 8669 ; WX 838 ; N uni21DD ; G 3176 -U 8670 ; WX 838 ; N uni21DE ; G 3177 -U 8671 ; WX 838 ; N uni21DF ; G 3178 -U 8672 ; WX 838 ; N uni21E0 ; G 3179 -U 8673 ; WX 838 ; N uni21E1 ; G 3180 -U 8674 ; WX 838 ; N uni21E2 ; G 3181 -U 8675 ; WX 838 ; N uni21E3 ; G 3182 -U 8676 ; WX 838 ; N uni21E4 ; G 3183 -U 8677 ; WX 838 ; N uni21E5 ; G 3184 -U 8678 ; WX 838 ; N uni21E6 ; G 3185 -U 8679 ; WX 838 ; N uni21E7 ; G 3186 -U 8680 ; WX 838 ; N uni21E8 ; G 3187 -U 8681 ; WX 838 ; N uni21E9 ; G 3188 -U 8682 ; WX 838 ; N uni21EA ; G 3189 -U 8683 ; WX 838 ; N uni21EB ; G 3190 -U 8684 ; WX 838 ; N uni21EC ; G 3191 -U 8685 ; WX 838 ; N uni21ED ; G 3192 -U 8686 ; WX 838 ; N uni21EE ; G 3193 -U 8687 ; WX 838 ; N uni21EF ; G 3194 -U 8688 ; WX 838 ; N uni21F0 ; G 3195 -U 8689 ; WX 838 ; N uni21F1 ; G 3196 -U 8690 ; WX 838 ; N uni21F2 ; G 3197 -U 8691 ; WX 838 ; N uni21F3 ; G 3198 -U 8692 ; WX 838 ; N uni21F4 ; G 3199 -U 8693 ; WX 838 ; N uni21F5 ; G 3200 -U 8694 ; WX 838 ; N uni21F6 ; G 3201 -U 8695 ; WX 838 ; N uni21F7 ; G 3202 -U 8696 ; WX 838 ; N uni21F8 ; G 3203 -U 8697 ; WX 838 ; N uni21F9 ; G 3204 -U 8698 ; WX 838 ; N uni21FA ; G 3205 -U 8699 ; WX 838 ; N uni21FB ; G 3206 -U 8700 ; WX 838 ; N uni21FC ; G 3207 -U 8701 ; WX 838 ; N uni21FD ; G 3208 -U 8702 ; WX 838 ; N uni21FE ; G 3209 -U 8703 ; WX 838 ; N uni21FF ; G 3210 -U 8704 ; WX 684 ; N universal ; G 3211 -U 8705 ; WX 636 ; N uni2201 ; G 3212 -U 8706 ; WX 517 ; N partialdiff ; G 3213 -U 8707 ; WX 632 ; N existential ; G 3214 -U 8708 ; WX 632 ; N uni2204 ; G 3215 -U 8709 ; WX 871 ; N emptyset ; G 3216 -U 8710 ; WX 669 ; N increment ; G 3217 -U 8711 ; WX 669 ; N gradient ; G 3218 -U 8712 ; WX 871 ; N element ; G 3219 -U 8713 ; WX 871 ; N notelement ; G 3220 -U 8714 ; WX 718 ; N uni220A ; G 3221 -U 8715 ; WX 871 ; N suchthat ; G 3222 -U 8716 ; WX 871 ; N uni220C ; G 3223 -U 8717 ; WX 718 ; N uni220D ; G 3224 -U 8718 ; WX 636 ; N uni220E ; G 3225 -U 8719 ; WX 757 ; N product ; G 3226 -U 8720 ; WX 757 ; N uni2210 ; G 3227 -U 8721 ; WX 674 ; N summation ; G 3228 -U 8722 ; WX 838 ; N minus ; G 3229 -U 8723 ; WX 838 ; N uni2213 ; G 3230 -U 8724 ; WX 838 ; N uni2214 ; G 3231 -U 8725 ; WX 337 ; N uni2215 ; G 3232 -U 8726 ; WX 637 ; N uni2216 ; G 3233 -U 8727 ; WX 838 ; N asteriskmath ; G 3234 -U 8728 ; WX 626 ; N uni2218 ; G 3235 -U 8729 ; WX 626 ; N uni2219 ; G 3236 -U 8730 ; WX 637 ; N radical ; G 3237 -U 8731 ; WX 637 ; N uni221B ; G 3238 -U 8732 ; WX 637 ; N uni221C ; G 3239 -U 8733 ; WX 714 ; N proportional ; G 3240 -U 8734 ; WX 833 ; N infinity ; G 3241 -U 8735 ; WX 838 ; N orthogonal ; G 3242 -U 8736 ; WX 896 ; N angle ; G 3243 -U 8737 ; WX 896 ; N uni2221 ; G 3244 -U 8738 ; WX 838 ; N uni2222 ; G 3245 -U 8739 ; WX 500 ; N uni2223 ; G 3246 -U 8740 ; WX 500 ; N uni2224 ; G 3247 -U 8741 ; WX 500 ; N uni2225 ; G 3248 -U 8742 ; WX 500 ; N uni2226 ; G 3249 -U 8743 ; WX 732 ; N logicaland ; G 3250 -U 8744 ; WX 732 ; N logicalor ; G 3251 -U 8745 ; WX 732 ; N intersection ; G 3252 -U 8746 ; WX 732 ; N union ; G 3253 -U 8747 ; WX 521 ; N integral ; G 3254 -U 8748 ; WX 789 ; N uni222C ; G 3255 -U 8749 ; WX 1057 ; N uni222D ; G 3256 -U 8750 ; WX 521 ; N uni222E ; G 3257 -U 8751 ; WX 789 ; N uni222F ; G 3258 -U 8752 ; WX 1057 ; N uni2230 ; G 3259 -U 8753 ; WX 521 ; N uni2231 ; G 3260 -U 8754 ; WX 521 ; N uni2232 ; G 3261 -U 8755 ; WX 521 ; N uni2233 ; G 3262 -U 8756 ; WX 636 ; N therefore ; G 3263 -U 8757 ; WX 636 ; N uni2235 ; G 3264 -U 8758 ; WX 260 ; N uni2236 ; G 3265 -U 8759 ; WX 636 ; N uni2237 ; G 3266 -U 8760 ; WX 838 ; N uni2238 ; G 3267 -U 8761 ; WX 838 ; N uni2239 ; G 3268 -U 8762 ; WX 838 ; N uni223A ; G 3269 -U 8763 ; WX 838 ; N uni223B ; G 3270 -U 8764 ; WX 838 ; N similar ; G 3271 -U 8765 ; WX 838 ; N uni223D ; G 3272 -U 8766 ; WX 838 ; N uni223E ; G 3273 -U 8767 ; WX 838 ; N uni223F ; G 3274 -U 8768 ; WX 375 ; N uni2240 ; G 3275 -U 8769 ; WX 838 ; N uni2241 ; G 3276 -U 8770 ; WX 838 ; N uni2242 ; G 3277 -U 8771 ; WX 838 ; N uni2243 ; G 3278 -U 8772 ; WX 838 ; N uni2244 ; G 3279 -U 8773 ; WX 838 ; N congruent ; G 3280 -U 8774 ; WX 838 ; N uni2246 ; G 3281 -U 8775 ; WX 838 ; N uni2247 ; G 3282 -U 8776 ; WX 838 ; N approxequal ; G 3283 -U 8777 ; WX 838 ; N uni2249 ; G 3284 -U 8778 ; WX 838 ; N uni224A ; G 3285 -U 8779 ; WX 838 ; N uni224B ; G 3286 -U 8780 ; WX 838 ; N uni224C ; G 3287 -U 8781 ; WX 838 ; N uni224D ; G 3288 -U 8782 ; WX 838 ; N uni224E ; G 3289 -U 8783 ; WX 838 ; N uni224F ; G 3290 -U 8784 ; WX 838 ; N uni2250 ; G 3291 -U 8785 ; WX 838 ; N uni2251 ; G 3292 -U 8786 ; WX 839 ; N uni2252 ; G 3293 -U 8787 ; WX 839 ; N uni2253 ; G 3294 -U 8788 ; WX 1000 ; N uni2254 ; G 3295 -U 8789 ; WX 1000 ; N uni2255 ; G 3296 -U 8790 ; WX 838 ; N uni2256 ; G 3297 -U 8791 ; WX 838 ; N uni2257 ; G 3298 -U 8792 ; WX 838 ; N uni2258 ; G 3299 -U 8793 ; WX 838 ; N uni2259 ; G 3300 -U 8794 ; WX 838 ; N uni225A ; G 3301 -U 8795 ; WX 838 ; N uni225B ; G 3302 -U 8796 ; WX 838 ; N uni225C ; G 3303 -U 8797 ; WX 838 ; N uni225D ; G 3304 -U 8798 ; WX 838 ; N uni225E ; G 3305 -U 8799 ; WX 838 ; N uni225F ; G 3306 -U 8800 ; WX 838 ; N notequal ; G 3307 -U 8801 ; WX 838 ; N equivalence ; G 3308 -U 8802 ; WX 838 ; N uni2262 ; G 3309 -U 8803 ; WX 838 ; N uni2263 ; G 3310 -U 8804 ; WX 838 ; N lessequal ; G 3311 -U 8805 ; WX 838 ; N greaterequal ; G 3312 -U 8806 ; WX 838 ; N uni2266 ; G 3313 -U 8807 ; WX 838 ; N uni2267 ; G 3314 -U 8808 ; WX 838 ; N uni2268 ; G 3315 -U 8809 ; WX 838 ; N uni2269 ; G 3316 -U 8810 ; WX 1047 ; N uni226A ; G 3317 -U 8811 ; WX 1047 ; N uni226B ; G 3318 -U 8812 ; WX 464 ; N uni226C ; G 3319 -U 8813 ; WX 838 ; N uni226D ; G 3320 -U 8814 ; WX 838 ; N uni226E ; G 3321 -U 8815 ; WX 838 ; N uni226F ; G 3322 -U 8816 ; WX 838 ; N uni2270 ; G 3323 -U 8817 ; WX 838 ; N uni2271 ; G 3324 -U 8818 ; WX 838 ; N uni2272 ; G 3325 -U 8819 ; WX 838 ; N uni2273 ; G 3326 -U 8820 ; WX 838 ; N uni2274 ; G 3327 -U 8821 ; WX 838 ; N uni2275 ; G 3328 -U 8822 ; WX 838 ; N uni2276 ; G 3329 -U 8823 ; WX 838 ; N uni2277 ; G 3330 -U 8824 ; WX 838 ; N uni2278 ; G 3331 -U 8825 ; WX 838 ; N uni2279 ; G 3332 -U 8826 ; WX 838 ; N uni227A ; G 3333 -U 8827 ; WX 838 ; N uni227B ; G 3334 -U 8828 ; WX 838 ; N uni227C ; G 3335 -U 8829 ; WX 838 ; N uni227D ; G 3336 -U 8830 ; WX 838 ; N uni227E ; G 3337 -U 8831 ; WX 838 ; N uni227F ; G 3338 -U 8832 ; WX 838 ; N uni2280 ; G 3339 -U 8833 ; WX 838 ; N uni2281 ; G 3340 -U 8834 ; WX 838 ; N propersubset ; G 3341 -U 8835 ; WX 838 ; N propersuperset ; G 3342 -U 8836 ; WX 838 ; N notsubset ; G 3343 -U 8837 ; WX 838 ; N uni2285 ; G 3344 -U 8838 ; WX 838 ; N reflexsubset ; G 3345 -U 8839 ; WX 838 ; N reflexsuperset ; G 3346 -U 8840 ; WX 838 ; N uni2288 ; G 3347 -U 8841 ; WX 838 ; N uni2289 ; G 3348 -U 8842 ; WX 838 ; N uni228A ; G 3349 -U 8843 ; WX 838 ; N uni228B ; G 3350 -U 8844 ; WX 732 ; N uni228C ; G 3351 -U 8845 ; WX 732 ; N uni228D ; G 3352 -U 8846 ; WX 732 ; N uni228E ; G 3353 -U 8847 ; WX 838 ; N uni228F ; G 3354 -U 8848 ; WX 838 ; N uni2290 ; G 3355 -U 8849 ; WX 838 ; N uni2291 ; G 3356 -U 8850 ; WX 838 ; N uni2292 ; G 3357 -U 8851 ; WX 780 ; N uni2293 ; G 3358 -U 8852 ; WX 780 ; N uni2294 ; G 3359 -U 8853 ; WX 838 ; N circleplus ; G 3360 -U 8854 ; WX 838 ; N uni2296 ; G 3361 -U 8855 ; WX 838 ; N circlemultiply ; G 3362 -U 8856 ; WX 838 ; N uni2298 ; G 3363 -U 8857 ; WX 838 ; N uni2299 ; G 3364 -U 8858 ; WX 838 ; N uni229A ; G 3365 -U 8859 ; WX 838 ; N uni229B ; G 3366 -U 8860 ; WX 838 ; N uni229C ; G 3367 -U 8861 ; WX 838 ; N uni229D ; G 3368 -U 8862 ; WX 838 ; N uni229E ; G 3369 -U 8863 ; WX 838 ; N uni229F ; G 3370 -U 8864 ; WX 838 ; N uni22A0 ; G 3371 -U 8865 ; WX 838 ; N uni22A1 ; G 3372 -U 8866 ; WX 871 ; N uni22A2 ; G 3373 -U 8867 ; WX 871 ; N uni22A3 ; G 3374 -U 8868 ; WX 871 ; N uni22A4 ; G 3375 -U 8869 ; WX 871 ; N perpendicular ; G 3376 -U 8870 ; WX 521 ; N uni22A6 ; G 3377 -U 8871 ; WX 521 ; N uni22A7 ; G 3378 -U 8872 ; WX 871 ; N uni22A8 ; G 3379 -U 8873 ; WX 871 ; N uni22A9 ; G 3380 -U 8874 ; WX 871 ; N uni22AA ; G 3381 -U 8875 ; WX 871 ; N uni22AB ; G 3382 -U 8876 ; WX 871 ; N uni22AC ; G 3383 -U 8877 ; WX 871 ; N uni22AD ; G 3384 -U 8878 ; WX 871 ; N uni22AE ; G 3385 -U 8879 ; WX 871 ; N uni22AF ; G 3386 -U 8880 ; WX 838 ; N uni22B0 ; G 3387 -U 8881 ; WX 838 ; N uni22B1 ; G 3388 -U 8882 ; WX 838 ; N uni22B2 ; G 3389 -U 8883 ; WX 838 ; N uni22B3 ; G 3390 -U 8884 ; WX 838 ; N uni22B4 ; G 3391 -U 8885 ; WX 838 ; N uni22B5 ; G 3392 -U 8886 ; WX 1000 ; N uni22B6 ; G 3393 -U 8887 ; WX 1000 ; N uni22B7 ; G 3394 -U 8888 ; WX 838 ; N uni22B8 ; G 3395 -U 8889 ; WX 838 ; N uni22B9 ; G 3396 -U 8890 ; WX 521 ; N uni22BA ; G 3397 -U 8891 ; WX 732 ; N uni22BB ; G 3398 -U 8892 ; WX 732 ; N uni22BC ; G 3399 -U 8893 ; WX 732 ; N uni22BD ; G 3400 -U 8894 ; WX 838 ; N uni22BE ; G 3401 -U 8895 ; WX 838 ; N uni22BF ; G 3402 -U 8896 ; WX 820 ; N uni22C0 ; G 3403 -U 8897 ; WX 820 ; N uni22C1 ; G 3404 -U 8898 ; WX 820 ; N uni22C2 ; G 3405 -U 8899 ; WX 820 ; N uni22C3 ; G 3406 -U 8900 ; WX 626 ; N uni22C4 ; G 3407 -U 8901 ; WX 318 ; N dotmath ; G 3408 -U 8902 ; WX 626 ; N uni22C6 ; G 3409 -U 8903 ; WX 838 ; N uni22C7 ; G 3410 -U 8904 ; WX 1000 ; N uni22C8 ; G 3411 -U 8905 ; WX 1000 ; N uni22C9 ; G 3412 -U 8906 ; WX 1000 ; N uni22CA ; G 3413 -U 8907 ; WX 1000 ; N uni22CB ; G 3414 -U 8908 ; WX 1000 ; N uni22CC ; G 3415 -U 8909 ; WX 838 ; N uni22CD ; G 3416 -U 8910 ; WX 732 ; N uni22CE ; G 3417 -U 8911 ; WX 732 ; N uni22CF ; G 3418 -U 8912 ; WX 838 ; N uni22D0 ; G 3419 -U 8913 ; WX 838 ; N uni22D1 ; G 3420 -U 8914 ; WX 838 ; N uni22D2 ; G 3421 -U 8915 ; WX 838 ; N uni22D3 ; G 3422 -U 8916 ; WX 838 ; N uni22D4 ; G 3423 -U 8917 ; WX 838 ; N uni22D5 ; G 3424 -U 8918 ; WX 838 ; N uni22D6 ; G 3425 -U 8919 ; WX 838 ; N uni22D7 ; G 3426 -U 8920 ; WX 1422 ; N uni22D8 ; G 3427 -U 8921 ; WX 1422 ; N uni22D9 ; G 3428 -U 8922 ; WX 838 ; N uni22DA ; G 3429 -U 8923 ; WX 838 ; N uni22DB ; G 3430 -U 8924 ; WX 838 ; N uni22DC ; G 3431 -U 8925 ; WX 838 ; N uni22DD ; G 3432 -U 8926 ; WX 838 ; N uni22DE ; G 3433 -U 8927 ; WX 838 ; N uni22DF ; G 3434 -U 8928 ; WX 838 ; N uni22E0 ; G 3435 -U 8929 ; WX 838 ; N uni22E1 ; G 3436 -U 8930 ; WX 838 ; N uni22E2 ; G 3437 -U 8931 ; WX 838 ; N uni22E3 ; G 3438 -U 8932 ; WX 838 ; N uni22E4 ; G 3439 -U 8933 ; WX 838 ; N uni22E5 ; G 3440 -U 8934 ; WX 838 ; N uni22E6 ; G 3441 -U 8935 ; WX 838 ; N uni22E7 ; G 3442 -U 8936 ; WX 838 ; N uni22E8 ; G 3443 -U 8937 ; WX 838 ; N uni22E9 ; G 3444 -U 8938 ; WX 838 ; N uni22EA ; G 3445 -U 8939 ; WX 838 ; N uni22EB ; G 3446 -U 8940 ; WX 838 ; N uni22EC ; G 3447 -U 8941 ; WX 838 ; N uni22ED ; G 3448 -U 8942 ; WX 1000 ; N uni22EE ; G 3449 -U 8943 ; WX 1000 ; N uni22EF ; G 3450 -U 8944 ; WX 1000 ; N uni22F0 ; G 3451 -U 8945 ; WX 1000 ; N uni22F1 ; G 3452 -U 8946 ; WX 1000 ; N uni22F2 ; G 3453 -U 8947 ; WX 871 ; N uni22F3 ; G 3454 -U 8948 ; WX 718 ; N uni22F4 ; G 3455 -U 8949 ; WX 871 ; N uni22F5 ; G 3456 -U 8950 ; WX 871 ; N uni22F6 ; G 3457 -U 8951 ; WX 718 ; N uni22F7 ; G 3458 -U 8952 ; WX 871 ; N uni22F8 ; G 3459 -U 8953 ; WX 871 ; N uni22F9 ; G 3460 -U 8954 ; WX 1000 ; N uni22FA ; G 3461 -U 8955 ; WX 871 ; N uni22FB ; G 3462 -U 8956 ; WX 718 ; N uni22FC ; G 3463 -U 8957 ; WX 871 ; N uni22FD ; G 3464 -U 8958 ; WX 718 ; N uni22FE ; G 3465 -U 8959 ; WX 871 ; N uni22FF ; G 3466 -U 8960 ; WX 602 ; N uni2300 ; G 3467 -U 8961 ; WX 602 ; N uni2301 ; G 3468 -U 8962 ; WX 635 ; N house ; G 3469 -U 8963 ; WX 838 ; N uni2303 ; G 3470 -U 8964 ; WX 838 ; N uni2304 ; G 3471 -U 8965 ; WX 838 ; N uni2305 ; G 3472 -U 8966 ; WX 838 ; N uni2306 ; G 3473 -U 8967 ; WX 488 ; N uni2307 ; G 3474 -U 8968 ; WX 390 ; N uni2308 ; G 3475 -U 8969 ; WX 390 ; N uni2309 ; G 3476 -U 8970 ; WX 390 ; N uni230A ; G 3477 -U 8971 ; WX 390 ; N uni230B ; G 3478 -U 8972 ; WX 809 ; N uni230C ; G 3479 -U 8973 ; WX 809 ; N uni230D ; G 3480 -U 8974 ; WX 809 ; N uni230E ; G 3481 -U 8975 ; WX 809 ; N uni230F ; G 3482 -U 8976 ; WX 838 ; N revlogicalnot ; G 3483 -U 8977 ; WX 513 ; N uni2311 ; G 3484 -U 8984 ; WX 1000 ; N uni2318 ; G 3485 -U 8985 ; WX 838 ; N uni2319 ; G 3486 -U 8988 ; WX 469 ; N uni231C ; G 3487 -U 8989 ; WX 469 ; N uni231D ; G 3488 -U 8990 ; WX 469 ; N uni231E ; G 3489 -U 8991 ; WX 469 ; N uni231F ; G 3490 -U 8992 ; WX 521 ; N integraltp ; G 3491 -U 8993 ; WX 521 ; N integralbt ; G 3492 -U 8996 ; WX 1152 ; N uni2324 ; G 3493 -U 8997 ; WX 1152 ; N uni2325 ; G 3494 -U 8998 ; WX 1414 ; N uni2326 ; G 3495 -U 8999 ; WX 1152 ; N uni2327 ; G 3496 -U 9000 ; WX 1443 ; N uni2328 ; G 3497 -U 9003 ; WX 1414 ; N uni232B ; G 3498 -U 9004 ; WX 873 ; N uni232C ; G 3499 -U 9075 ; WX 338 ; N uni2373 ; G 3500 -U 9076 ; WX 635 ; N uni2374 ; G 3501 -U 9077 ; WX 837 ; N uni2375 ; G 3502 -U 9082 ; WX 659 ; N uni237A ; G 3503 -U 9085 ; WX 757 ; N uni237D ; G 3504 -U 9095 ; WX 1152 ; N uni2387 ; G 3505 -U 9108 ; WX 873 ; N uni2394 ; G 3506 -U 9115 ; WX 500 ; N uni239B ; G 3507 -U 9116 ; WX 500 ; N uni239C ; G 3508 -U 9117 ; WX 500 ; N uni239D ; G 3509 -U 9118 ; WX 500 ; N uni239E ; G 3510 -U 9119 ; WX 500 ; N uni239F ; G 3511 -U 9120 ; WX 500 ; N uni23A0 ; G 3512 -U 9121 ; WX 500 ; N uni23A1 ; G 3513 -U 9122 ; WX 500 ; N uni23A2 ; G 3514 -U 9123 ; WX 500 ; N uni23A3 ; G 3515 -U 9124 ; WX 500 ; N uni23A4 ; G 3516 -U 9125 ; WX 500 ; N uni23A5 ; G 3517 -U 9126 ; WX 500 ; N uni23A6 ; G 3518 -U 9127 ; WX 750 ; N uni23A7 ; G 3519 -U 9128 ; WX 750 ; N uni23A8 ; G 3520 -U 9129 ; WX 750 ; N uni23A9 ; G 3521 -U 9130 ; WX 750 ; N uni23AA ; G 3522 -U 9131 ; WX 750 ; N uni23AB ; G 3523 -U 9132 ; WX 750 ; N uni23AC ; G 3524 -U 9133 ; WX 750 ; N uni23AD ; G 3525 -U 9134 ; WX 521 ; N uni23AE ; G 3526 -U 9166 ; WX 838 ; N uni23CE ; G 3527 -U 9167 ; WX 945 ; N uni23CF ; G 3528 -U 9187 ; WX 873 ; N uni23E3 ; G 3529 -U 9189 ; WX 769 ; N uni23E5 ; G 3530 -U 9192 ; WX 636 ; N uni23E8 ; G 3531 -U 9250 ; WX 635 ; N uni2422 ; G 3532 -U 9251 ; WX 635 ; N uni2423 ; G 3533 -U 9312 ; WX 896 ; N uni2460 ; G 3534 -U 9313 ; WX 896 ; N uni2461 ; G 3535 -U 9314 ; WX 896 ; N uni2462 ; G 3536 -U 9315 ; WX 896 ; N uni2463 ; G 3537 -U 9316 ; WX 896 ; N uni2464 ; G 3538 -U 9317 ; WX 896 ; N uni2465 ; G 3539 -U 9318 ; WX 896 ; N uni2466 ; G 3540 -U 9319 ; WX 896 ; N uni2467 ; G 3541 -U 9320 ; WX 896 ; N uni2468 ; G 3542 -U 9321 ; WX 896 ; N uni2469 ; G 3543 -U 9472 ; WX 602 ; N SF100000 ; G 3544 -U 9473 ; WX 602 ; N uni2501 ; G 3545 -U 9474 ; WX 602 ; N SF110000 ; G 3546 -U 9475 ; WX 602 ; N uni2503 ; G 3547 -U 9476 ; WX 602 ; N uni2504 ; G 3548 -U 9477 ; WX 602 ; N uni2505 ; G 3549 -U 9478 ; WX 602 ; N uni2506 ; G 3550 -U 9479 ; WX 602 ; N uni2507 ; G 3551 -U 9480 ; WX 602 ; N uni2508 ; G 3552 -U 9481 ; WX 602 ; N uni2509 ; G 3553 -U 9482 ; WX 602 ; N uni250A ; G 3554 -U 9483 ; WX 602 ; N uni250B ; G 3555 -U 9484 ; WX 602 ; N SF010000 ; G 3556 -U 9485 ; WX 602 ; N uni250D ; G 3557 -U 9486 ; WX 602 ; N uni250E ; G 3558 -U 9487 ; WX 602 ; N uni250F ; G 3559 -U 9488 ; WX 602 ; N SF030000 ; G 3560 -U 9489 ; WX 602 ; N uni2511 ; G 3561 -U 9490 ; WX 602 ; N uni2512 ; G 3562 -U 9491 ; WX 602 ; N uni2513 ; G 3563 -U 9492 ; WX 602 ; N SF020000 ; G 3564 -U 9493 ; WX 602 ; N uni2515 ; G 3565 -U 9494 ; WX 602 ; N uni2516 ; G 3566 -U 9495 ; WX 602 ; N uni2517 ; G 3567 -U 9496 ; WX 602 ; N SF040000 ; G 3568 -U 9497 ; WX 602 ; N uni2519 ; G 3569 -U 9498 ; WX 602 ; N uni251A ; G 3570 -U 9499 ; WX 602 ; N uni251B ; G 3571 -U 9500 ; WX 602 ; N SF080000 ; G 3572 -U 9501 ; WX 602 ; N uni251D ; G 3573 -U 9502 ; WX 602 ; N uni251E ; G 3574 -U 9503 ; WX 602 ; N uni251F ; G 3575 -U 9504 ; WX 602 ; N uni2520 ; G 3576 -U 9505 ; WX 602 ; N uni2521 ; G 3577 -U 9506 ; WX 602 ; N uni2522 ; G 3578 -U 9507 ; WX 602 ; N uni2523 ; G 3579 -U 9508 ; WX 602 ; N SF090000 ; G 3580 -U 9509 ; WX 602 ; N uni2525 ; G 3581 -U 9510 ; WX 602 ; N uni2526 ; G 3582 -U 9511 ; WX 602 ; N uni2527 ; G 3583 -U 9512 ; WX 602 ; N uni2528 ; G 3584 -U 9513 ; WX 602 ; N uni2529 ; G 3585 -U 9514 ; WX 602 ; N uni252A ; G 3586 -U 9515 ; WX 602 ; N uni252B ; G 3587 -U 9516 ; WX 602 ; N SF060000 ; G 3588 -U 9517 ; WX 602 ; N uni252D ; G 3589 -U 9518 ; WX 602 ; N uni252E ; G 3590 -U 9519 ; WX 602 ; N uni252F ; G 3591 -U 9520 ; WX 602 ; N uni2530 ; G 3592 -U 9521 ; WX 602 ; N uni2531 ; G 3593 -U 9522 ; WX 602 ; N uni2532 ; G 3594 -U 9523 ; WX 602 ; N uni2533 ; G 3595 -U 9524 ; WX 602 ; N SF070000 ; G 3596 -U 9525 ; WX 602 ; N uni2535 ; G 3597 -U 9526 ; WX 602 ; N uni2536 ; G 3598 -U 9527 ; WX 602 ; N uni2537 ; G 3599 -U 9528 ; WX 602 ; N uni2538 ; G 3600 -U 9529 ; WX 602 ; N uni2539 ; G 3601 -U 9530 ; WX 602 ; N uni253A ; G 3602 -U 9531 ; WX 602 ; N uni253B ; G 3603 -U 9532 ; WX 602 ; N SF050000 ; G 3604 -U 9533 ; WX 602 ; N uni253D ; G 3605 -U 9534 ; WX 602 ; N uni253E ; G 3606 -U 9535 ; WX 602 ; N uni253F ; G 3607 -U 9536 ; WX 602 ; N uni2540 ; G 3608 -U 9537 ; WX 602 ; N uni2541 ; G 3609 -U 9538 ; WX 602 ; N uni2542 ; G 3610 -U 9539 ; WX 602 ; N uni2543 ; G 3611 -U 9540 ; WX 602 ; N uni2544 ; G 3612 -U 9541 ; WX 602 ; N uni2545 ; G 3613 -U 9542 ; WX 602 ; N uni2546 ; G 3614 -U 9543 ; WX 602 ; N uni2547 ; G 3615 -U 9544 ; WX 602 ; N uni2548 ; G 3616 -U 9545 ; WX 602 ; N uni2549 ; G 3617 -U 9546 ; WX 602 ; N uni254A ; G 3618 -U 9547 ; WX 602 ; N uni254B ; G 3619 -U 9548 ; WX 602 ; N uni254C ; G 3620 -U 9549 ; WX 602 ; N uni254D ; G 3621 -U 9550 ; WX 602 ; N uni254E ; G 3622 -U 9551 ; WX 602 ; N uni254F ; G 3623 -U 9552 ; WX 602 ; N SF430000 ; G 3624 -U 9553 ; WX 602 ; N SF240000 ; G 3625 -U 9554 ; WX 602 ; N SF510000 ; G 3626 -U 9555 ; WX 602 ; N SF520000 ; G 3627 -U 9556 ; WX 602 ; N SF390000 ; G 3628 -U 9557 ; WX 602 ; N SF220000 ; G 3629 -U 9558 ; WX 602 ; N SF210000 ; G 3630 -U 9559 ; WX 602 ; N SF250000 ; G 3631 -U 9560 ; WX 602 ; N SF500000 ; G 3632 -U 9561 ; WX 602 ; N SF490000 ; G 3633 -U 9562 ; WX 602 ; N SF380000 ; G 3634 -U 9563 ; WX 602 ; N SF280000 ; G 3635 -U 9564 ; WX 602 ; N SF270000 ; G 3636 -U 9565 ; WX 602 ; N SF260000 ; G 3637 -U 9566 ; WX 602 ; N SF360000 ; G 3638 -U 9567 ; WX 602 ; N SF370000 ; G 3639 -U 9568 ; WX 602 ; N SF420000 ; G 3640 -U 9569 ; WX 602 ; N SF190000 ; G 3641 -U 9570 ; WX 602 ; N SF200000 ; G 3642 -U 9571 ; WX 602 ; N SF230000 ; G 3643 -U 9572 ; WX 602 ; N SF470000 ; G 3644 -U 9573 ; WX 602 ; N SF480000 ; G 3645 -U 9574 ; WX 602 ; N SF410000 ; G 3646 -U 9575 ; WX 602 ; N SF450000 ; G 3647 -U 9576 ; WX 602 ; N SF460000 ; G 3648 -U 9577 ; WX 602 ; N SF400000 ; G 3649 -U 9578 ; WX 602 ; N SF540000 ; G 3650 -U 9579 ; WX 602 ; N SF530000 ; G 3651 -U 9580 ; WX 602 ; N SF440000 ; G 3652 -U 9581 ; WX 602 ; N uni256D ; G 3653 -U 9582 ; WX 602 ; N uni256E ; G 3654 -U 9583 ; WX 602 ; N uni256F ; G 3655 -U 9584 ; WX 602 ; N uni2570 ; G 3656 -U 9585 ; WX 602 ; N uni2571 ; G 3657 -U 9586 ; WX 602 ; N uni2572 ; G 3658 -U 9587 ; WX 602 ; N uni2573 ; G 3659 -U 9588 ; WX 602 ; N uni2574 ; G 3660 -U 9589 ; WX 602 ; N uni2575 ; G 3661 -U 9590 ; WX 602 ; N uni2576 ; G 3662 -U 9591 ; WX 602 ; N uni2577 ; G 3663 -U 9592 ; WX 602 ; N uni2578 ; G 3664 -U 9593 ; WX 602 ; N uni2579 ; G 3665 -U 9594 ; WX 602 ; N uni257A ; G 3666 -U 9595 ; WX 602 ; N uni257B ; G 3667 -U 9596 ; WX 602 ; N uni257C ; G 3668 -U 9597 ; WX 602 ; N uni257D ; G 3669 -U 9598 ; WX 602 ; N uni257E ; G 3670 -U 9599 ; WX 602 ; N uni257F ; G 3671 -U 9600 ; WX 769 ; N upblock ; G 3672 -U 9601 ; WX 769 ; N uni2581 ; G 3673 -U 9602 ; WX 769 ; N uni2582 ; G 3674 -U 9603 ; WX 769 ; N uni2583 ; G 3675 -U 9604 ; WX 769 ; N dnblock ; G 3676 -U 9605 ; WX 769 ; N uni2585 ; G 3677 -U 9606 ; WX 769 ; N uni2586 ; G 3678 -U 9607 ; WX 769 ; N uni2587 ; G 3679 -U 9608 ; WX 769 ; N block ; G 3680 -U 9609 ; WX 769 ; N uni2589 ; G 3681 -U 9610 ; WX 769 ; N uni258A ; G 3682 -U 9611 ; WX 769 ; N uni258B ; G 3683 -U 9612 ; WX 769 ; N lfblock ; G 3684 -U 9613 ; WX 769 ; N uni258D ; G 3685 -U 9614 ; WX 769 ; N uni258E ; G 3686 -U 9615 ; WX 769 ; N uni258F ; G 3687 -U 9616 ; WX 769 ; N rtblock ; G 3688 -U 9617 ; WX 769 ; N ltshade ; G 3689 -U 9618 ; WX 769 ; N shade ; G 3690 -U 9619 ; WX 769 ; N dkshade ; G 3691 -U 9620 ; WX 769 ; N uni2594 ; G 3692 -U 9621 ; WX 769 ; N uni2595 ; G 3693 -U 9622 ; WX 769 ; N uni2596 ; G 3694 -U 9623 ; WX 769 ; N uni2597 ; G 3695 -U 9624 ; WX 769 ; N uni2598 ; G 3696 -U 9625 ; WX 769 ; N uni2599 ; G 3697 -U 9626 ; WX 769 ; N uni259A ; G 3698 -U 9627 ; WX 769 ; N uni259B ; G 3699 -U 9628 ; WX 769 ; N uni259C ; G 3700 -U 9629 ; WX 769 ; N uni259D ; G 3701 -U 9630 ; WX 769 ; N uni259E ; G 3702 -U 9631 ; WX 769 ; N uni259F ; G 3703 -U 9632 ; WX 945 ; N filledbox ; G 3704 -U 9633 ; WX 945 ; N H22073 ; G 3705 -U 9634 ; WX 945 ; N uni25A2 ; G 3706 -U 9635 ; WX 945 ; N uni25A3 ; G 3707 -U 9636 ; WX 945 ; N uni25A4 ; G 3708 -U 9637 ; WX 945 ; N uni25A5 ; G 3709 -U 9638 ; WX 945 ; N uni25A6 ; G 3710 -U 9639 ; WX 945 ; N uni25A7 ; G 3711 -U 9640 ; WX 945 ; N uni25A8 ; G 3712 -U 9641 ; WX 945 ; N uni25A9 ; G 3713 -U 9642 ; WX 678 ; N H18543 ; G 3714 -U 9643 ; WX 678 ; N H18551 ; G 3715 -U 9644 ; WX 945 ; N filledrect ; G 3716 -U 9645 ; WX 945 ; N uni25AD ; G 3717 -U 9646 ; WX 550 ; N uni25AE ; G 3718 -U 9647 ; WX 550 ; N uni25AF ; G 3719 -U 9648 ; WX 769 ; N uni25B0 ; G 3720 -U 9649 ; WX 769 ; N uni25B1 ; G 3721 -U 9650 ; WX 769 ; N triagup ; G 3722 -U 9651 ; WX 769 ; N uni25B3 ; G 3723 -U 9652 ; WX 502 ; N uni25B4 ; G 3724 -U 9653 ; WX 502 ; N uni25B5 ; G 3725 -U 9654 ; WX 769 ; N uni25B6 ; G 3726 -U 9655 ; WX 769 ; N uni25B7 ; G 3727 -U 9656 ; WX 502 ; N uni25B8 ; G 3728 -U 9657 ; WX 502 ; N uni25B9 ; G 3729 -U 9658 ; WX 769 ; N triagrt ; G 3730 -U 9659 ; WX 769 ; N uni25BB ; G 3731 -U 9660 ; WX 769 ; N triagdn ; G 3732 -U 9661 ; WX 769 ; N uni25BD ; G 3733 -U 9662 ; WX 502 ; N uni25BE ; G 3734 -U 9663 ; WX 502 ; N uni25BF ; G 3735 -U 9664 ; WX 769 ; N uni25C0 ; G 3736 -U 9665 ; WX 769 ; N uni25C1 ; G 3737 -U 9666 ; WX 502 ; N uni25C2 ; G 3738 -U 9667 ; WX 502 ; N uni25C3 ; G 3739 -U 9668 ; WX 769 ; N triaglf ; G 3740 -U 9669 ; WX 769 ; N uni25C5 ; G 3741 -U 9670 ; WX 769 ; N uni25C6 ; G 3742 -U 9671 ; WX 769 ; N uni25C7 ; G 3743 -U 9672 ; WX 769 ; N uni25C8 ; G 3744 -U 9673 ; WX 873 ; N uni25C9 ; G 3745 -U 9674 ; WX 494 ; N lozenge ; G 3746 -U 9675 ; WX 873 ; N circle ; G 3747 -U 9676 ; WX 873 ; N uni25CC ; G 3748 -U 9677 ; WX 873 ; N uni25CD ; G 3749 -U 9678 ; WX 873 ; N uni25CE ; G 3750 -U 9679 ; WX 873 ; N H18533 ; G 3751 -U 9680 ; WX 873 ; N uni25D0 ; G 3752 -U 9681 ; WX 873 ; N uni25D1 ; G 3753 -U 9682 ; WX 873 ; N uni25D2 ; G 3754 -U 9683 ; WX 873 ; N uni25D3 ; G 3755 -U 9684 ; WX 873 ; N uni25D4 ; G 3756 -U 9685 ; WX 873 ; N uni25D5 ; G 3757 -U 9686 ; WX 527 ; N uni25D6 ; G 3758 -U 9687 ; WX 527 ; N uni25D7 ; G 3759 -U 9688 ; WX 791 ; N invbullet ; G 3760 -U 9689 ; WX 970 ; N invcircle ; G 3761 -U 9690 ; WX 970 ; N uni25DA ; G 3762 -U 9691 ; WX 970 ; N uni25DB ; G 3763 -U 9692 ; WX 387 ; N uni25DC ; G 3764 -U 9693 ; WX 387 ; N uni25DD ; G 3765 -U 9694 ; WX 387 ; N uni25DE ; G 3766 -U 9695 ; WX 387 ; N uni25DF ; G 3767 -U 9696 ; WX 873 ; N uni25E0 ; G 3768 -U 9697 ; WX 873 ; N uni25E1 ; G 3769 -U 9698 ; WX 769 ; N uni25E2 ; G 3770 -U 9699 ; WX 769 ; N uni25E3 ; G 3771 -U 9700 ; WX 769 ; N uni25E4 ; G 3772 -U 9701 ; WX 769 ; N uni25E5 ; G 3773 -U 9702 ; WX 590 ; N openbullet ; G 3774 -U 9703 ; WX 945 ; N uni25E7 ; G 3775 -U 9704 ; WX 945 ; N uni25E8 ; G 3776 -U 9705 ; WX 945 ; N uni25E9 ; G 3777 -U 9706 ; WX 945 ; N uni25EA ; G 3778 -U 9707 ; WX 945 ; N uni25EB ; G 3779 -U 9708 ; WX 769 ; N uni25EC ; G 3780 -U 9709 ; WX 769 ; N uni25ED ; G 3781 -U 9710 ; WX 769 ; N uni25EE ; G 3782 -U 9711 ; WX 1119 ; N uni25EF ; G 3783 -U 9712 ; WX 945 ; N uni25F0 ; G 3784 -U 9713 ; WX 945 ; N uni25F1 ; G 3785 -U 9714 ; WX 945 ; N uni25F2 ; G 3786 -U 9715 ; WX 945 ; N uni25F3 ; G 3787 -U 9716 ; WX 873 ; N uni25F4 ; G 3788 -U 9717 ; WX 873 ; N uni25F5 ; G 3789 -U 9718 ; WX 873 ; N uni25F6 ; G 3790 -U 9719 ; WX 873 ; N uni25F7 ; G 3791 -U 9720 ; WX 769 ; N uni25F8 ; G 3792 -U 9721 ; WX 769 ; N uni25F9 ; G 3793 -U 9722 ; WX 769 ; N uni25FA ; G 3794 -U 9723 ; WX 830 ; N uni25FB ; G 3795 -U 9724 ; WX 830 ; N uni25FC ; G 3796 -U 9725 ; WX 732 ; N uni25FD ; G 3797 -U 9726 ; WX 732 ; N uni25FE ; G 3798 -U 9727 ; WX 769 ; N uni25FF ; G 3799 -U 9728 ; WX 896 ; N uni2600 ; G 3800 -U 9729 ; WX 1000 ; N uni2601 ; G 3801 -U 9730 ; WX 896 ; N uni2602 ; G 3802 -U 9731 ; WX 896 ; N uni2603 ; G 3803 -U 9732 ; WX 896 ; N uni2604 ; G 3804 -U 9733 ; WX 896 ; N uni2605 ; G 3805 -U 9734 ; WX 896 ; N uni2606 ; G 3806 -U 9735 ; WX 573 ; N uni2607 ; G 3807 -U 9736 ; WX 896 ; N uni2608 ; G 3808 -U 9737 ; WX 896 ; N uni2609 ; G 3809 -U 9738 ; WX 888 ; N uni260A ; G 3810 -U 9739 ; WX 888 ; N uni260B ; G 3811 -U 9740 ; WX 671 ; N uni260C ; G 3812 -U 9741 ; WX 1013 ; N uni260D ; G 3813 -U 9742 ; WX 1246 ; N uni260E ; G 3814 -U 9743 ; WX 1250 ; N uni260F ; G 3815 -U 9744 ; WX 896 ; N uni2610 ; G 3816 -U 9745 ; WX 896 ; N uni2611 ; G 3817 -U 9746 ; WX 896 ; N uni2612 ; G 3818 -U 9747 ; WX 532 ; N uni2613 ; G 3819 -U 9748 ; WX 896 ; N uni2614 ; G 3820 -U 9749 ; WX 896 ; N uni2615 ; G 3821 -U 9750 ; WX 896 ; N uni2616 ; G 3822 -U 9751 ; WX 896 ; N uni2617 ; G 3823 -U 9752 ; WX 896 ; N uni2618 ; G 3824 -U 9753 ; WX 896 ; N uni2619 ; G 3825 -U 9754 ; WX 896 ; N uni261A ; G 3826 -U 9755 ; WX 896 ; N uni261B ; G 3827 -U 9756 ; WX 896 ; N uni261C ; G 3828 -U 9757 ; WX 609 ; N uni261D ; G 3829 -U 9758 ; WX 896 ; N uni261E ; G 3830 -U 9759 ; WX 609 ; N uni261F ; G 3831 -U 9760 ; WX 896 ; N uni2620 ; G 3832 -U 9761 ; WX 896 ; N uni2621 ; G 3833 -U 9762 ; WX 896 ; N uni2622 ; G 3834 -U 9763 ; WX 896 ; N uni2623 ; G 3835 -U 9764 ; WX 669 ; N uni2624 ; G 3836 -U 9765 ; WX 746 ; N uni2625 ; G 3837 -U 9766 ; WX 649 ; N uni2626 ; G 3838 -U 9767 ; WX 784 ; N uni2627 ; G 3839 -U 9768 ; WX 545 ; N uni2628 ; G 3840 -U 9769 ; WX 896 ; N uni2629 ; G 3841 -U 9770 ; WX 896 ; N uni262A ; G 3842 -U 9771 ; WX 896 ; N uni262B ; G 3843 -U 9772 ; WX 710 ; N uni262C ; G 3844 -U 9773 ; WX 896 ; N uni262D ; G 3845 -U 9774 ; WX 896 ; N uni262E ; G 3846 -U 9775 ; WX 896 ; N uni262F ; G 3847 -U 9776 ; WX 896 ; N uni2630 ; G 3848 -U 9777 ; WX 896 ; N uni2631 ; G 3849 -U 9778 ; WX 896 ; N uni2632 ; G 3850 -U 9779 ; WX 896 ; N uni2633 ; G 3851 -U 9780 ; WX 896 ; N uni2634 ; G 3852 -U 9781 ; WX 896 ; N uni2635 ; G 3853 -U 9782 ; WX 896 ; N uni2636 ; G 3854 -U 9783 ; WX 896 ; N uni2637 ; G 3855 -U 9784 ; WX 896 ; N uni2638 ; G 3856 -U 9785 ; WX 1042 ; N uni2639 ; G 3857 -U 9786 ; WX 1042 ; N smileface ; G 3858 -U 9787 ; WX 1042 ; N invsmileface ; G 3859 -U 9788 ; WX 896 ; N sun ; G 3860 -U 9789 ; WX 896 ; N uni263D ; G 3861 -U 9790 ; WX 896 ; N uni263E ; G 3862 -U 9791 ; WX 614 ; N uni263F ; G 3863 -U 9792 ; WX 732 ; N female ; G 3864 -U 9793 ; WX 732 ; N uni2641 ; G 3865 -U 9794 ; WX 896 ; N male ; G 3866 -U 9795 ; WX 896 ; N uni2643 ; G 3867 -U 9796 ; WX 896 ; N uni2644 ; G 3868 -U 9797 ; WX 896 ; N uni2645 ; G 3869 -U 9798 ; WX 896 ; N uni2646 ; G 3870 -U 9799 ; WX 896 ; N uni2647 ; G 3871 -U 9800 ; WX 896 ; N uni2648 ; G 3872 -U 9801 ; WX 896 ; N uni2649 ; G 3873 -U 9802 ; WX 896 ; N uni264A ; G 3874 -U 9803 ; WX 896 ; N uni264B ; G 3875 -U 9804 ; WX 896 ; N uni264C ; G 3876 -U 9805 ; WX 896 ; N uni264D ; G 3877 -U 9806 ; WX 896 ; N uni264E ; G 3878 -U 9807 ; WX 896 ; N uni264F ; G 3879 -U 9808 ; WX 896 ; N uni2650 ; G 3880 -U 9809 ; WX 896 ; N uni2651 ; G 3881 -U 9810 ; WX 896 ; N uni2652 ; G 3882 -U 9811 ; WX 896 ; N uni2653 ; G 3883 -U 9812 ; WX 896 ; N uni2654 ; G 3884 -U 9813 ; WX 896 ; N uni2655 ; G 3885 -U 9814 ; WX 896 ; N uni2656 ; G 3886 -U 9815 ; WX 896 ; N uni2657 ; G 3887 -U 9816 ; WX 896 ; N uni2658 ; G 3888 -U 9817 ; WX 896 ; N uni2659 ; G 3889 -U 9818 ; WX 896 ; N uni265A ; G 3890 -U 9819 ; WX 896 ; N uni265B ; G 3891 -U 9820 ; WX 896 ; N uni265C ; G 3892 -U 9821 ; WX 896 ; N uni265D ; G 3893 -U 9822 ; WX 896 ; N uni265E ; G 3894 -U 9823 ; WX 896 ; N uni265F ; G 3895 -U 9824 ; WX 896 ; N spade ; G 3896 -U 9825 ; WX 896 ; N uni2661 ; G 3897 -U 9826 ; WX 896 ; N uni2662 ; G 3898 -U 9827 ; WX 896 ; N club ; G 3899 -U 9828 ; WX 896 ; N uni2664 ; G 3900 -U 9829 ; WX 896 ; N heart ; G 3901 -U 9830 ; WX 896 ; N diamond ; G 3902 -U 9831 ; WX 896 ; N uni2667 ; G 3903 -U 9832 ; WX 896 ; N uni2668 ; G 3904 -U 9833 ; WX 472 ; N uni2669 ; G 3905 -U 9834 ; WX 638 ; N musicalnote ; G 3906 -U 9835 ; WX 896 ; N musicalnotedbl ; G 3907 -U 9836 ; WX 896 ; N uni266C ; G 3908 -U 9837 ; WX 472 ; N uni266D ; G 3909 -U 9838 ; WX 357 ; N uni266E ; G 3910 -U 9839 ; WX 484 ; N uni266F ; G 3911 -U 9840 ; WX 748 ; N uni2670 ; G 3912 -U 9841 ; WX 766 ; N uni2671 ; G 3913 -U 9842 ; WX 896 ; N uni2672 ; G 3914 -U 9843 ; WX 896 ; N uni2673 ; G 3915 -U 9844 ; WX 896 ; N uni2674 ; G 3916 -U 9845 ; WX 896 ; N uni2675 ; G 3917 -U 9846 ; WX 896 ; N uni2676 ; G 3918 -U 9847 ; WX 896 ; N uni2677 ; G 3919 -U 9848 ; WX 896 ; N uni2678 ; G 3920 -U 9849 ; WX 896 ; N uni2679 ; G 3921 -U 9850 ; WX 896 ; N uni267A ; G 3922 -U 9851 ; WX 896 ; N uni267B ; G 3923 -U 9852 ; WX 896 ; N uni267C ; G 3924 -U 9853 ; WX 896 ; N uni267D ; G 3925 -U 9854 ; WX 896 ; N uni267E ; G 3926 -U 9855 ; WX 896 ; N uni267F ; G 3927 -U 9856 ; WX 869 ; N uni2680 ; G 3928 -U 9857 ; WX 869 ; N uni2681 ; G 3929 -U 9858 ; WX 869 ; N uni2682 ; G 3930 -U 9859 ; WX 869 ; N uni2683 ; G 3931 -U 9860 ; WX 869 ; N uni2684 ; G 3932 -U 9861 ; WX 869 ; N uni2685 ; G 3933 -U 9862 ; WX 896 ; N uni2686 ; G 3934 -U 9863 ; WX 896 ; N uni2687 ; G 3935 -U 9864 ; WX 896 ; N uni2688 ; G 3936 -U 9865 ; WX 896 ; N uni2689 ; G 3937 -U 9866 ; WX 896 ; N uni268A ; G 3938 -U 9867 ; WX 896 ; N uni268B ; G 3939 -U 9868 ; WX 896 ; N uni268C ; G 3940 -U 9869 ; WX 896 ; N uni268D ; G 3941 -U 9870 ; WX 896 ; N uni268E ; G 3942 -U 9871 ; WX 896 ; N uni268F ; G 3943 -U 9872 ; WX 896 ; N uni2690 ; G 3944 -U 9873 ; WX 896 ; N uni2691 ; G 3945 -U 9874 ; WX 896 ; N uni2692 ; G 3946 -U 9875 ; WX 896 ; N uni2693 ; G 3947 -U 9876 ; WX 896 ; N uni2694 ; G 3948 -U 9877 ; WX 541 ; N uni2695 ; G 3949 -U 9878 ; WX 896 ; N uni2696 ; G 3950 -U 9879 ; WX 896 ; N uni2697 ; G 3951 -U 9880 ; WX 896 ; N uni2698 ; G 3952 -U 9881 ; WX 896 ; N uni2699 ; G 3953 -U 9882 ; WX 896 ; N uni269A ; G 3954 -U 9883 ; WX 896 ; N uni269B ; G 3955 -U 9884 ; WX 896 ; N uni269C ; G 3956 -U 9886 ; WX 896 ; N uni269E ; G 3957 -U 9887 ; WX 896 ; N uni269F ; G 3958 -U 9888 ; WX 896 ; N uni26A0 ; G 3959 -U 9889 ; WX 702 ; N uni26A1 ; G 3960 -U 9890 ; WX 1004 ; N uni26A2 ; G 3961 -U 9891 ; WX 1089 ; N uni26A3 ; G 3962 -U 9892 ; WX 1175 ; N uni26A4 ; G 3963 -U 9893 ; WX 903 ; N uni26A5 ; G 3964 -U 9894 ; WX 838 ; N uni26A6 ; G 3965 -U 9895 ; WX 838 ; N uni26A7 ; G 3966 -U 9896 ; WX 838 ; N uni26A8 ; G 3967 -U 9897 ; WX 838 ; N uni26A9 ; G 3968 -U 9898 ; WX 838 ; N uni26AA ; G 3969 -U 9899 ; WX 838 ; N uni26AB ; G 3970 -U 9900 ; WX 838 ; N uni26AC ; G 3971 -U 9901 ; WX 838 ; N uni26AD ; G 3972 -U 9902 ; WX 838 ; N uni26AE ; G 3973 -U 9903 ; WX 838 ; N uni26AF ; G 3974 -U 9904 ; WX 844 ; N uni26B0 ; G 3975 -U 9905 ; WX 838 ; N uni26B1 ; G 3976 -U 9906 ; WX 732 ; N uni26B2 ; G 3977 -U 9907 ; WX 732 ; N uni26B3 ; G 3978 -U 9908 ; WX 732 ; N uni26B4 ; G 3979 -U 9909 ; WX 732 ; N uni26B5 ; G 3980 -U 9910 ; WX 850 ; N uni26B6 ; G 3981 -U 9911 ; WX 732 ; N uni26B7 ; G 3982 -U 9912 ; WX 732 ; N uni26B8 ; G 3983 -U 9920 ; WX 838 ; N uni26C0 ; G 3984 -U 9921 ; WX 838 ; N uni26C1 ; G 3985 -U 9922 ; WX 838 ; N uni26C2 ; G 3986 -U 9923 ; WX 838 ; N uni26C3 ; G 3987 -U 9954 ; WX 732 ; N uni26E2 ; G 3988 -U 9985 ; WX 838 ; N uni2701 ; G 3989 -U 9986 ; WX 838 ; N uni2702 ; G 3990 -U 9987 ; WX 838 ; N uni2703 ; G 3991 -U 9988 ; WX 838 ; N uni2704 ; G 3992 -U 9990 ; WX 838 ; N uni2706 ; G 3993 -U 9991 ; WX 838 ; N uni2707 ; G 3994 -U 9992 ; WX 838 ; N uni2708 ; G 3995 -U 9993 ; WX 838 ; N uni2709 ; G 3996 -U 9996 ; WX 838 ; N uni270C ; G 3997 -U 9997 ; WX 838 ; N uni270D ; G 3998 -U 9998 ; WX 838 ; N uni270E ; G 3999 -U 9999 ; WX 838 ; N uni270F ; G 4000 -U 10000 ; WX 838 ; N uni2710 ; G 4001 -U 10001 ; WX 838 ; N uni2711 ; G 4002 -U 10002 ; WX 838 ; N uni2712 ; G 4003 -U 10003 ; WX 838 ; N uni2713 ; G 4004 -U 10004 ; WX 838 ; N uni2714 ; G 4005 -U 10005 ; WX 838 ; N uni2715 ; G 4006 -U 10006 ; WX 838 ; N uni2716 ; G 4007 -U 10007 ; WX 838 ; N uni2717 ; G 4008 -U 10008 ; WX 838 ; N uni2718 ; G 4009 -U 10009 ; WX 838 ; N uni2719 ; G 4010 -U 10010 ; WX 838 ; N uni271A ; G 4011 -U 10011 ; WX 838 ; N uni271B ; G 4012 -U 10012 ; WX 838 ; N uni271C ; G 4013 -U 10013 ; WX 838 ; N uni271D ; G 4014 -U 10014 ; WX 838 ; N uni271E ; G 4015 -U 10015 ; WX 838 ; N uni271F ; G 4016 -U 10016 ; WX 838 ; N uni2720 ; G 4017 -U 10017 ; WX 838 ; N uni2721 ; G 4018 -U 10018 ; WX 838 ; N uni2722 ; G 4019 -U 10019 ; WX 838 ; N uni2723 ; G 4020 -U 10020 ; WX 838 ; N uni2724 ; G 4021 -U 10021 ; WX 838 ; N uni2725 ; G 4022 -U 10022 ; WX 838 ; N uni2726 ; G 4023 -U 10023 ; WX 838 ; N uni2727 ; G 4024 -U 10025 ; WX 838 ; N uni2729 ; G 4025 -U 10026 ; WX 838 ; N uni272A ; G 4026 -U 10027 ; WX 838 ; N uni272B ; G 4027 -U 10028 ; WX 838 ; N uni272C ; G 4028 -U 10029 ; WX 838 ; N uni272D ; G 4029 -U 10030 ; WX 838 ; N uni272E ; G 4030 -U 10031 ; WX 838 ; N uni272F ; G 4031 -U 10032 ; WX 838 ; N uni2730 ; G 4032 -U 10033 ; WX 838 ; N uni2731 ; G 4033 -U 10034 ; WX 838 ; N uni2732 ; G 4034 -U 10035 ; WX 838 ; N uni2733 ; G 4035 -U 10036 ; WX 838 ; N uni2734 ; G 4036 -U 10037 ; WX 838 ; N uni2735 ; G 4037 -U 10038 ; WX 838 ; N uni2736 ; G 4038 -U 10039 ; WX 838 ; N uni2737 ; G 4039 -U 10040 ; WX 838 ; N uni2738 ; G 4040 -U 10041 ; WX 838 ; N uni2739 ; G 4041 -U 10042 ; WX 838 ; N uni273A ; G 4042 -U 10043 ; WX 838 ; N uni273B ; G 4043 -U 10044 ; WX 838 ; N uni273C ; G 4044 -U 10045 ; WX 838 ; N uni273D ; G 4045 -U 10046 ; WX 838 ; N uni273E ; G 4046 -U 10047 ; WX 838 ; N uni273F ; G 4047 -U 10048 ; WX 838 ; N uni2740 ; G 4048 -U 10049 ; WX 838 ; N uni2741 ; G 4049 -U 10050 ; WX 838 ; N uni2742 ; G 4050 -U 10051 ; WX 838 ; N uni2743 ; G 4051 -U 10052 ; WX 838 ; N uni2744 ; G 4052 -U 10053 ; WX 838 ; N uni2745 ; G 4053 -U 10054 ; WX 838 ; N uni2746 ; G 4054 -U 10055 ; WX 838 ; N uni2747 ; G 4055 -U 10056 ; WX 838 ; N uni2748 ; G 4056 -U 10057 ; WX 838 ; N uni2749 ; G 4057 -U 10058 ; WX 838 ; N uni274A ; G 4058 -U 10059 ; WX 838 ; N uni274B ; G 4059 -U 10061 ; WX 896 ; N uni274D ; G 4060 -U 10063 ; WX 896 ; N uni274F ; G 4061 -U 10064 ; WX 896 ; N uni2750 ; G 4062 -U 10065 ; WX 896 ; N uni2751 ; G 4063 -U 10066 ; WX 896 ; N uni2752 ; G 4064 -U 10070 ; WX 896 ; N uni2756 ; G 4065 -U 10072 ; WX 838 ; N uni2758 ; G 4066 -U 10073 ; WX 838 ; N uni2759 ; G 4067 -U 10074 ; WX 838 ; N uni275A ; G 4068 -U 10075 ; WX 322 ; N uni275B ; G 4069 -U 10076 ; WX 322 ; N uni275C ; G 4070 -U 10077 ; WX 538 ; N uni275D ; G 4071 -U 10078 ; WX 538 ; N uni275E ; G 4072 -U 10081 ; WX 838 ; N uni2761 ; G 4073 -U 10082 ; WX 838 ; N uni2762 ; G 4074 -U 10083 ; WX 838 ; N uni2763 ; G 4075 -U 10084 ; WX 838 ; N uni2764 ; G 4076 -U 10085 ; WX 838 ; N uni2765 ; G 4077 -U 10086 ; WX 838 ; N uni2766 ; G 4078 -U 10087 ; WX 838 ; N uni2767 ; G 4079 -U 10088 ; WX 838 ; N uni2768 ; G 4080 -U 10089 ; WX 838 ; N uni2769 ; G 4081 -U 10090 ; WX 838 ; N uni276A ; G 4082 -U 10091 ; WX 838 ; N uni276B ; G 4083 -U 10092 ; WX 838 ; N uni276C ; G 4084 -U 10093 ; WX 838 ; N uni276D ; G 4085 -U 10094 ; WX 838 ; N uni276E ; G 4086 -U 10095 ; WX 838 ; N uni276F ; G 4087 -U 10096 ; WX 838 ; N uni2770 ; G 4088 -U 10097 ; WX 838 ; N uni2771 ; G 4089 -U 10098 ; WX 838 ; N uni2772 ; G 4090 -U 10099 ; WX 838 ; N uni2773 ; G 4091 -U 10100 ; WX 838 ; N uni2774 ; G 4092 -U 10101 ; WX 838 ; N uni2775 ; G 4093 -U 10102 ; WX 896 ; N uni2776 ; G 4094 -U 10103 ; WX 896 ; N uni2777 ; G 4095 -U 10104 ; WX 896 ; N uni2778 ; G 4096 -U 10105 ; WX 896 ; N uni2779 ; G 4097 -U 10106 ; WX 896 ; N uni277A ; G 4098 -U 10107 ; WX 896 ; N uni277B ; G 4099 -U 10108 ; WX 896 ; N uni277C ; G 4100 -U 10109 ; WX 896 ; N uni277D ; G 4101 -U 10110 ; WX 896 ; N uni277E ; G 4102 -U 10111 ; WX 896 ; N uni277F ; G 4103 -U 10112 ; WX 838 ; N uni2780 ; G 4104 -U 10113 ; WX 838 ; N uni2781 ; G 4105 -U 10114 ; WX 838 ; N uni2782 ; G 4106 -U 10115 ; WX 838 ; N uni2783 ; G 4107 -U 10116 ; WX 838 ; N uni2784 ; G 4108 -U 10117 ; WX 838 ; N uni2785 ; G 4109 -U 10118 ; WX 838 ; N uni2786 ; G 4110 -U 10119 ; WX 838 ; N uni2787 ; G 4111 -U 10120 ; WX 838 ; N uni2788 ; G 4112 -U 10121 ; WX 838 ; N uni2789 ; G 4113 -U 10122 ; WX 838 ; N uni278A ; G 4114 -U 10123 ; WX 838 ; N uni278B ; G 4115 -U 10124 ; WX 838 ; N uni278C ; G 4116 -U 10125 ; WX 838 ; N uni278D ; G 4117 -U 10126 ; WX 838 ; N uni278E ; G 4118 -U 10127 ; WX 838 ; N uni278F ; G 4119 -U 10128 ; WX 838 ; N uni2790 ; G 4120 -U 10129 ; WX 838 ; N uni2791 ; G 4121 -U 10130 ; WX 838 ; N uni2792 ; G 4122 -U 10131 ; WX 838 ; N uni2793 ; G 4123 -U 10132 ; WX 838 ; N uni2794 ; G 4124 -U 10136 ; WX 838 ; N uni2798 ; G 4125 -U 10137 ; WX 838 ; N uni2799 ; G 4126 -U 10138 ; WX 838 ; N uni279A ; G 4127 -U 10139 ; WX 838 ; N uni279B ; G 4128 -U 10140 ; WX 838 ; N uni279C ; G 4129 -U 10141 ; WX 838 ; N uni279D ; G 4130 -U 10142 ; WX 838 ; N uni279E ; G 4131 -U 10143 ; WX 838 ; N uni279F ; G 4132 -U 10144 ; WX 838 ; N uni27A0 ; G 4133 -U 10145 ; WX 838 ; N uni27A1 ; G 4134 -U 10146 ; WX 838 ; N uni27A2 ; G 4135 -U 10147 ; WX 838 ; N uni27A3 ; G 4136 -U 10148 ; WX 838 ; N uni27A4 ; G 4137 -U 10149 ; WX 838 ; N uni27A5 ; G 4138 -U 10150 ; WX 838 ; N uni27A6 ; G 4139 -U 10151 ; WX 838 ; N uni27A7 ; G 4140 -U 10152 ; WX 838 ; N uni27A8 ; G 4141 -U 10153 ; WX 838 ; N uni27A9 ; G 4142 -U 10154 ; WX 838 ; N uni27AA ; G 4143 -U 10155 ; WX 838 ; N uni27AB ; G 4144 -U 10156 ; WX 838 ; N uni27AC ; G 4145 -U 10157 ; WX 838 ; N uni27AD ; G 4146 -U 10158 ; WX 838 ; N uni27AE ; G 4147 -U 10159 ; WX 838 ; N uni27AF ; G 4148 -U 10161 ; WX 838 ; N uni27B1 ; G 4149 -U 10162 ; WX 838 ; N uni27B2 ; G 4150 -U 10163 ; WX 838 ; N uni27B3 ; G 4151 -U 10164 ; WX 838 ; N uni27B4 ; G 4152 -U 10165 ; WX 838 ; N uni27B5 ; G 4153 -U 10166 ; WX 838 ; N uni27B6 ; G 4154 -U 10167 ; WX 838 ; N uni27B7 ; G 4155 -U 10168 ; WX 838 ; N uni27B8 ; G 4156 -U 10169 ; WX 838 ; N uni27B9 ; G 4157 -U 10170 ; WX 838 ; N uni27BA ; G 4158 -U 10171 ; WX 838 ; N uni27BB ; G 4159 -U 10172 ; WX 838 ; N uni27BC ; G 4160 -U 10173 ; WX 838 ; N uni27BD ; G 4161 -U 10174 ; WX 838 ; N uni27BE ; G 4162 -U 10181 ; WX 390 ; N uni27C5 ; G 4163 -U 10182 ; WX 390 ; N uni27C6 ; G 4164 -U 10208 ; WX 494 ; N uni27E0 ; G 4165 -U 10214 ; WX 495 ; N uni27E6 ; G 4166 -U 10215 ; WX 495 ; N uni27E7 ; G 4167 -U 10216 ; WX 390 ; N uni27E8 ; G 4168 -U 10217 ; WX 390 ; N uni27E9 ; G 4169 -U 10218 ; WX 556 ; N uni27EA ; G 4170 -U 10219 ; WX 556 ; N uni27EB ; G 4171 -U 10224 ; WX 838 ; N uni27F0 ; G 4172 -U 10225 ; WX 838 ; N uni27F1 ; G 4173 -U 10226 ; WX 838 ; N uni27F2 ; G 4174 -U 10227 ; WX 838 ; N uni27F3 ; G 4175 -U 10228 ; WX 1157 ; N uni27F4 ; G 4176 -U 10229 ; WX 1434 ; N uni27F5 ; G 4177 -U 10230 ; WX 1434 ; N uni27F6 ; G 4178 -U 10231 ; WX 1434 ; N uni27F7 ; G 4179 -U 10232 ; WX 1434 ; N uni27F8 ; G 4180 -U 10233 ; WX 1434 ; N uni27F9 ; G 4181 -U 10234 ; WX 1434 ; N uni27FA ; G 4182 -U 10235 ; WX 1434 ; N uni27FB ; G 4183 -U 10236 ; WX 1434 ; N uni27FC ; G 4184 -U 10237 ; WX 1434 ; N uni27FD ; G 4185 -U 10238 ; WX 1434 ; N uni27FE ; G 4186 -U 10239 ; WX 1434 ; N uni27FF ; G 4187 -U 10240 ; WX 732 ; N uni2800 ; G 4188 -U 10241 ; WX 732 ; N uni2801 ; G 4189 -U 10242 ; WX 732 ; N uni2802 ; G 4190 -U 10243 ; WX 732 ; N uni2803 ; G 4191 -U 10244 ; WX 732 ; N uni2804 ; G 4192 -U 10245 ; WX 732 ; N uni2805 ; G 4193 -U 10246 ; WX 732 ; N uni2806 ; G 4194 -U 10247 ; WX 732 ; N uni2807 ; G 4195 -U 10248 ; WX 732 ; N uni2808 ; G 4196 -U 10249 ; WX 732 ; N uni2809 ; G 4197 -U 10250 ; WX 732 ; N uni280A ; G 4198 -U 10251 ; WX 732 ; N uni280B ; G 4199 -U 10252 ; WX 732 ; N uni280C ; G 4200 -U 10253 ; WX 732 ; N uni280D ; G 4201 -U 10254 ; WX 732 ; N uni280E ; G 4202 -U 10255 ; WX 732 ; N uni280F ; G 4203 -U 10256 ; WX 732 ; N uni2810 ; G 4204 -U 10257 ; WX 732 ; N uni2811 ; G 4205 -U 10258 ; WX 732 ; N uni2812 ; G 4206 -U 10259 ; WX 732 ; N uni2813 ; G 4207 -U 10260 ; WX 732 ; N uni2814 ; G 4208 -U 10261 ; WX 732 ; N uni2815 ; G 4209 -U 10262 ; WX 732 ; N uni2816 ; G 4210 -U 10263 ; WX 732 ; N uni2817 ; G 4211 -U 10264 ; WX 732 ; N uni2818 ; G 4212 -U 10265 ; WX 732 ; N uni2819 ; G 4213 -U 10266 ; WX 732 ; N uni281A ; G 4214 -U 10267 ; WX 732 ; N uni281B ; G 4215 -U 10268 ; WX 732 ; N uni281C ; G 4216 -U 10269 ; WX 732 ; N uni281D ; G 4217 -U 10270 ; WX 732 ; N uni281E ; G 4218 -U 10271 ; WX 732 ; N uni281F ; G 4219 -U 10272 ; WX 732 ; N uni2820 ; G 4220 -U 10273 ; WX 732 ; N uni2821 ; G 4221 -U 10274 ; WX 732 ; N uni2822 ; G 4222 -U 10275 ; WX 732 ; N uni2823 ; G 4223 -U 10276 ; WX 732 ; N uni2824 ; G 4224 -U 10277 ; WX 732 ; N uni2825 ; G 4225 -U 10278 ; WX 732 ; N uni2826 ; G 4226 -U 10279 ; WX 732 ; N uni2827 ; G 4227 -U 10280 ; WX 732 ; N uni2828 ; G 4228 -U 10281 ; WX 732 ; N uni2829 ; G 4229 -U 10282 ; WX 732 ; N uni282A ; G 4230 -U 10283 ; WX 732 ; N uni282B ; G 4231 -U 10284 ; WX 732 ; N uni282C ; G 4232 -U 10285 ; WX 732 ; N uni282D ; G 4233 -U 10286 ; WX 732 ; N uni282E ; G 4234 -U 10287 ; WX 732 ; N uni282F ; G 4235 -U 10288 ; WX 732 ; N uni2830 ; G 4236 -U 10289 ; WX 732 ; N uni2831 ; G 4237 -U 10290 ; WX 732 ; N uni2832 ; G 4238 -U 10291 ; WX 732 ; N uni2833 ; G 4239 -U 10292 ; WX 732 ; N uni2834 ; G 4240 -U 10293 ; WX 732 ; N uni2835 ; G 4241 -U 10294 ; WX 732 ; N uni2836 ; G 4242 -U 10295 ; WX 732 ; N uni2837 ; G 4243 -U 10296 ; WX 732 ; N uni2838 ; G 4244 -U 10297 ; WX 732 ; N uni2839 ; G 4245 -U 10298 ; WX 732 ; N uni283A ; G 4246 -U 10299 ; WX 732 ; N uni283B ; G 4247 -U 10300 ; WX 732 ; N uni283C ; G 4248 -U 10301 ; WX 732 ; N uni283D ; G 4249 -U 10302 ; WX 732 ; N uni283E ; G 4250 -U 10303 ; WX 732 ; N uni283F ; G 4251 -U 10304 ; WX 732 ; N uni2840 ; G 4252 -U 10305 ; WX 732 ; N uni2841 ; G 4253 -U 10306 ; WX 732 ; N uni2842 ; G 4254 -U 10307 ; WX 732 ; N uni2843 ; G 4255 -U 10308 ; WX 732 ; N uni2844 ; G 4256 -U 10309 ; WX 732 ; N uni2845 ; G 4257 -U 10310 ; WX 732 ; N uni2846 ; G 4258 -U 10311 ; WX 732 ; N uni2847 ; G 4259 -U 10312 ; WX 732 ; N uni2848 ; G 4260 -U 10313 ; WX 732 ; N uni2849 ; G 4261 -U 10314 ; WX 732 ; N uni284A ; G 4262 -U 10315 ; WX 732 ; N uni284B ; G 4263 -U 10316 ; WX 732 ; N uni284C ; G 4264 -U 10317 ; WX 732 ; N uni284D ; G 4265 -U 10318 ; WX 732 ; N uni284E ; G 4266 -U 10319 ; WX 732 ; N uni284F ; G 4267 -U 10320 ; WX 732 ; N uni2850 ; G 4268 -U 10321 ; WX 732 ; N uni2851 ; G 4269 -U 10322 ; WX 732 ; N uni2852 ; G 4270 -U 10323 ; WX 732 ; N uni2853 ; G 4271 -U 10324 ; WX 732 ; N uni2854 ; G 4272 -U 10325 ; WX 732 ; N uni2855 ; G 4273 -U 10326 ; WX 732 ; N uni2856 ; G 4274 -U 10327 ; WX 732 ; N uni2857 ; G 4275 -U 10328 ; WX 732 ; N uni2858 ; G 4276 -U 10329 ; WX 732 ; N uni2859 ; G 4277 -U 10330 ; WX 732 ; N uni285A ; G 4278 -U 10331 ; WX 732 ; N uni285B ; G 4279 -U 10332 ; WX 732 ; N uni285C ; G 4280 -U 10333 ; WX 732 ; N uni285D ; G 4281 -U 10334 ; WX 732 ; N uni285E ; G 4282 -U 10335 ; WX 732 ; N uni285F ; G 4283 -U 10336 ; WX 732 ; N uni2860 ; G 4284 -U 10337 ; WX 732 ; N uni2861 ; G 4285 -U 10338 ; WX 732 ; N uni2862 ; G 4286 -U 10339 ; WX 732 ; N uni2863 ; G 4287 -U 10340 ; WX 732 ; N uni2864 ; G 4288 -U 10341 ; WX 732 ; N uni2865 ; G 4289 -U 10342 ; WX 732 ; N uni2866 ; G 4290 -U 10343 ; WX 732 ; N uni2867 ; G 4291 -U 10344 ; WX 732 ; N uni2868 ; G 4292 -U 10345 ; WX 732 ; N uni2869 ; G 4293 -U 10346 ; WX 732 ; N uni286A ; G 4294 -U 10347 ; WX 732 ; N uni286B ; G 4295 -U 10348 ; WX 732 ; N uni286C ; G 4296 -U 10349 ; WX 732 ; N uni286D ; G 4297 -U 10350 ; WX 732 ; N uni286E ; G 4298 -U 10351 ; WX 732 ; N uni286F ; G 4299 -U 10352 ; WX 732 ; N uni2870 ; G 4300 -U 10353 ; WX 732 ; N uni2871 ; G 4301 -U 10354 ; WX 732 ; N uni2872 ; G 4302 -U 10355 ; WX 732 ; N uni2873 ; G 4303 -U 10356 ; WX 732 ; N uni2874 ; G 4304 -U 10357 ; WX 732 ; N uni2875 ; G 4305 -U 10358 ; WX 732 ; N uni2876 ; G 4306 -U 10359 ; WX 732 ; N uni2877 ; G 4307 -U 10360 ; WX 732 ; N uni2878 ; G 4308 -U 10361 ; WX 732 ; N uni2879 ; G 4309 -U 10362 ; WX 732 ; N uni287A ; G 4310 -U 10363 ; WX 732 ; N uni287B ; G 4311 -U 10364 ; WX 732 ; N uni287C ; G 4312 -U 10365 ; WX 732 ; N uni287D ; G 4313 -U 10366 ; WX 732 ; N uni287E ; G 4314 -U 10367 ; WX 732 ; N uni287F ; G 4315 -U 10368 ; WX 732 ; N uni2880 ; G 4316 -U 10369 ; WX 732 ; N uni2881 ; G 4317 -U 10370 ; WX 732 ; N uni2882 ; G 4318 -U 10371 ; WX 732 ; N uni2883 ; G 4319 -U 10372 ; WX 732 ; N uni2884 ; G 4320 -U 10373 ; WX 732 ; N uni2885 ; G 4321 -U 10374 ; WX 732 ; N uni2886 ; G 4322 -U 10375 ; WX 732 ; N uni2887 ; G 4323 -U 10376 ; WX 732 ; N uni2888 ; G 4324 -U 10377 ; WX 732 ; N uni2889 ; G 4325 -U 10378 ; WX 732 ; N uni288A ; G 4326 -U 10379 ; WX 732 ; N uni288B ; G 4327 -U 10380 ; WX 732 ; N uni288C ; G 4328 -U 10381 ; WX 732 ; N uni288D ; G 4329 -U 10382 ; WX 732 ; N uni288E ; G 4330 -U 10383 ; WX 732 ; N uni288F ; G 4331 -U 10384 ; WX 732 ; N uni2890 ; G 4332 -U 10385 ; WX 732 ; N uni2891 ; G 4333 -U 10386 ; WX 732 ; N uni2892 ; G 4334 -U 10387 ; WX 732 ; N uni2893 ; G 4335 -U 10388 ; WX 732 ; N uni2894 ; G 4336 -U 10389 ; WX 732 ; N uni2895 ; G 4337 -U 10390 ; WX 732 ; N uni2896 ; G 4338 -U 10391 ; WX 732 ; N uni2897 ; G 4339 -U 10392 ; WX 732 ; N uni2898 ; G 4340 -U 10393 ; WX 732 ; N uni2899 ; G 4341 -U 10394 ; WX 732 ; N uni289A ; G 4342 -U 10395 ; WX 732 ; N uni289B ; G 4343 -U 10396 ; WX 732 ; N uni289C ; G 4344 -U 10397 ; WX 732 ; N uni289D ; G 4345 -U 10398 ; WX 732 ; N uni289E ; G 4346 -U 10399 ; WX 732 ; N uni289F ; G 4347 -U 10400 ; WX 732 ; N uni28A0 ; G 4348 -U 10401 ; WX 732 ; N uni28A1 ; G 4349 -U 10402 ; WX 732 ; N uni28A2 ; G 4350 -U 10403 ; WX 732 ; N uni28A3 ; G 4351 -U 10404 ; WX 732 ; N uni28A4 ; G 4352 -U 10405 ; WX 732 ; N uni28A5 ; G 4353 -U 10406 ; WX 732 ; N uni28A6 ; G 4354 -U 10407 ; WX 732 ; N uni28A7 ; G 4355 -U 10408 ; WX 732 ; N uni28A8 ; G 4356 -U 10409 ; WX 732 ; N uni28A9 ; G 4357 -U 10410 ; WX 732 ; N uni28AA ; G 4358 -U 10411 ; WX 732 ; N uni28AB ; G 4359 -U 10412 ; WX 732 ; N uni28AC ; G 4360 -U 10413 ; WX 732 ; N uni28AD ; G 4361 -U 10414 ; WX 732 ; N uni28AE ; G 4362 -U 10415 ; WX 732 ; N uni28AF ; G 4363 -U 10416 ; WX 732 ; N uni28B0 ; G 4364 -U 10417 ; WX 732 ; N uni28B1 ; G 4365 -U 10418 ; WX 732 ; N uni28B2 ; G 4366 -U 10419 ; WX 732 ; N uni28B3 ; G 4367 -U 10420 ; WX 732 ; N uni28B4 ; G 4368 -U 10421 ; WX 732 ; N uni28B5 ; G 4369 -U 10422 ; WX 732 ; N uni28B6 ; G 4370 -U 10423 ; WX 732 ; N uni28B7 ; G 4371 -U 10424 ; WX 732 ; N uni28B8 ; G 4372 -U 10425 ; WX 732 ; N uni28B9 ; G 4373 -U 10426 ; WX 732 ; N uni28BA ; G 4374 -U 10427 ; WX 732 ; N uni28BB ; G 4375 -U 10428 ; WX 732 ; N uni28BC ; G 4376 -U 10429 ; WX 732 ; N uni28BD ; G 4377 -U 10430 ; WX 732 ; N uni28BE ; G 4378 -U 10431 ; WX 732 ; N uni28BF ; G 4379 -U 10432 ; WX 732 ; N uni28C0 ; G 4380 -U 10433 ; WX 732 ; N uni28C1 ; G 4381 -U 10434 ; WX 732 ; N uni28C2 ; G 4382 -U 10435 ; WX 732 ; N uni28C3 ; G 4383 -U 10436 ; WX 732 ; N uni28C4 ; G 4384 -U 10437 ; WX 732 ; N uni28C5 ; G 4385 -U 10438 ; WX 732 ; N uni28C6 ; G 4386 -U 10439 ; WX 732 ; N uni28C7 ; G 4387 -U 10440 ; WX 732 ; N uni28C8 ; G 4388 -U 10441 ; WX 732 ; N uni28C9 ; G 4389 -U 10442 ; WX 732 ; N uni28CA ; G 4390 -U 10443 ; WX 732 ; N uni28CB ; G 4391 -U 10444 ; WX 732 ; N uni28CC ; G 4392 -U 10445 ; WX 732 ; N uni28CD ; G 4393 -U 10446 ; WX 732 ; N uni28CE ; G 4394 -U 10447 ; WX 732 ; N uni28CF ; G 4395 -U 10448 ; WX 732 ; N uni28D0 ; G 4396 -U 10449 ; WX 732 ; N uni28D1 ; G 4397 -U 10450 ; WX 732 ; N uni28D2 ; G 4398 -U 10451 ; WX 732 ; N uni28D3 ; G 4399 -U 10452 ; WX 732 ; N uni28D4 ; G 4400 -U 10453 ; WX 732 ; N uni28D5 ; G 4401 -U 10454 ; WX 732 ; N uni28D6 ; G 4402 -U 10455 ; WX 732 ; N uni28D7 ; G 4403 -U 10456 ; WX 732 ; N uni28D8 ; G 4404 -U 10457 ; WX 732 ; N uni28D9 ; G 4405 -U 10458 ; WX 732 ; N uni28DA ; G 4406 -U 10459 ; WX 732 ; N uni28DB ; G 4407 -U 10460 ; WX 732 ; N uni28DC ; G 4408 -U 10461 ; WX 732 ; N uni28DD ; G 4409 -U 10462 ; WX 732 ; N uni28DE ; G 4410 -U 10463 ; WX 732 ; N uni28DF ; G 4411 -U 10464 ; WX 732 ; N uni28E0 ; G 4412 -U 10465 ; WX 732 ; N uni28E1 ; G 4413 -U 10466 ; WX 732 ; N uni28E2 ; G 4414 -U 10467 ; WX 732 ; N uni28E3 ; G 4415 -U 10468 ; WX 732 ; N uni28E4 ; G 4416 -U 10469 ; WX 732 ; N uni28E5 ; G 4417 -U 10470 ; WX 732 ; N uni28E6 ; G 4418 -U 10471 ; WX 732 ; N uni28E7 ; G 4419 -U 10472 ; WX 732 ; N uni28E8 ; G 4420 -U 10473 ; WX 732 ; N uni28E9 ; G 4421 -U 10474 ; WX 732 ; N uni28EA ; G 4422 -U 10475 ; WX 732 ; N uni28EB ; G 4423 -U 10476 ; WX 732 ; N uni28EC ; G 4424 -U 10477 ; WX 732 ; N uni28ED ; G 4425 -U 10478 ; WX 732 ; N uni28EE ; G 4426 -U 10479 ; WX 732 ; N uni28EF ; G 4427 -U 10480 ; WX 732 ; N uni28F0 ; G 4428 -U 10481 ; WX 732 ; N uni28F1 ; G 4429 -U 10482 ; WX 732 ; N uni28F2 ; G 4430 -U 10483 ; WX 732 ; N uni28F3 ; G 4431 -U 10484 ; WX 732 ; N uni28F4 ; G 4432 -U 10485 ; WX 732 ; N uni28F5 ; G 4433 -U 10486 ; WX 732 ; N uni28F6 ; G 4434 -U 10487 ; WX 732 ; N uni28F7 ; G 4435 -U 10488 ; WX 732 ; N uni28F8 ; G 4436 -U 10489 ; WX 732 ; N uni28F9 ; G 4437 -U 10490 ; WX 732 ; N uni28FA ; G 4438 -U 10491 ; WX 732 ; N uni28FB ; G 4439 -U 10492 ; WX 732 ; N uni28FC ; G 4440 -U 10493 ; WX 732 ; N uni28FD ; G 4441 -U 10494 ; WX 732 ; N uni28FE ; G 4442 -U 10495 ; WX 732 ; N uni28FF ; G 4443 -U 10502 ; WX 838 ; N uni2906 ; G 4444 -U 10503 ; WX 838 ; N uni2907 ; G 4445 -U 10506 ; WX 838 ; N uni290A ; G 4446 -U 10507 ; WX 838 ; N uni290B ; G 4447 -U 10560 ; WX 683 ; N uni2940 ; G 4448 -U 10561 ; WX 683 ; N uni2941 ; G 4449 -U 10627 ; WX 734 ; N uni2983 ; G 4450 -U 10628 ; WX 734 ; N uni2984 ; G 4451 -U 10702 ; WX 838 ; N uni29CE ; G 4452 -U 10703 ; WX 1000 ; N uni29CF ; G 4453 -U 10704 ; WX 1000 ; N uni29D0 ; G 4454 -U 10705 ; WX 1000 ; N uni29D1 ; G 4455 -U 10706 ; WX 1000 ; N uni29D2 ; G 4456 -U 10707 ; WX 1000 ; N uni29D3 ; G 4457 -U 10708 ; WX 1000 ; N uni29D4 ; G 4458 -U 10709 ; WX 1000 ; N uni29D5 ; G 4459 -U 10731 ; WX 494 ; N uni29EB ; G 4460 -U 10746 ; WX 838 ; N uni29FA ; G 4461 -U 10747 ; WX 838 ; N uni29FB ; G 4462 -U 10752 ; WX 1000 ; N uni2A00 ; G 4463 -U 10753 ; WX 1000 ; N uni2A01 ; G 4464 -U 10754 ; WX 1000 ; N uni2A02 ; G 4465 -U 10764 ; WX 1325 ; N uni2A0C ; G 4466 -U 10765 ; WX 521 ; N uni2A0D ; G 4467 -U 10766 ; WX 521 ; N uni2A0E ; G 4468 -U 10767 ; WX 521 ; N uni2A0F ; G 4469 -U 10768 ; WX 521 ; N uni2A10 ; G 4470 -U 10769 ; WX 521 ; N uni2A11 ; G 4471 -U 10770 ; WX 521 ; N uni2A12 ; G 4472 -U 10771 ; WX 521 ; N uni2A13 ; G 4473 -U 10772 ; WX 521 ; N uni2A14 ; G 4474 -U 10773 ; WX 521 ; N uni2A15 ; G 4475 -U 10774 ; WX 521 ; N uni2A16 ; G 4476 -U 10775 ; WX 521 ; N uni2A17 ; G 4477 -U 10776 ; WX 521 ; N uni2A18 ; G 4478 -U 10777 ; WX 521 ; N uni2A19 ; G 4479 -U 10778 ; WX 521 ; N uni2A1A ; G 4480 -U 10779 ; WX 521 ; N uni2A1B ; G 4481 -U 10780 ; WX 521 ; N uni2A1C ; G 4482 -U 10799 ; WX 838 ; N uni2A2F ; G 4483 -U 10858 ; WX 838 ; N uni2A6A ; G 4484 -U 10859 ; WX 838 ; N uni2A6B ; G 4485 -U 10877 ; WX 838 ; N uni2A7D ; G 4486 -U 10878 ; WX 838 ; N uni2A7E ; G 4487 -U 10879 ; WX 838 ; N uni2A7F ; G 4488 -U 10880 ; WX 838 ; N uni2A80 ; G 4489 -U 10881 ; WX 838 ; N uni2A81 ; G 4490 -U 10882 ; WX 838 ; N uni2A82 ; G 4491 -U 10883 ; WX 838 ; N uni2A83 ; G 4492 -U 10884 ; WX 838 ; N uni2A84 ; G 4493 -U 10885 ; WX 838 ; N uni2A85 ; G 4494 -U 10886 ; WX 838 ; N uni2A86 ; G 4495 -U 10887 ; WX 838 ; N uni2A87 ; G 4496 -U 10888 ; WX 838 ; N uni2A88 ; G 4497 -U 10889 ; WX 838 ; N uni2A89 ; G 4498 -U 10890 ; WX 838 ; N uni2A8A ; G 4499 -U 10891 ; WX 838 ; N uni2A8B ; G 4500 -U 10892 ; WX 838 ; N uni2A8C ; G 4501 -U 10893 ; WX 838 ; N uni2A8D ; G 4502 -U 10894 ; WX 838 ; N uni2A8E ; G 4503 -U 10895 ; WX 838 ; N uni2A8F ; G 4504 -U 10896 ; WX 838 ; N uni2A90 ; G 4505 -U 10897 ; WX 838 ; N uni2A91 ; G 4506 -U 10898 ; WX 838 ; N uni2A92 ; G 4507 -U 10899 ; WX 838 ; N uni2A93 ; G 4508 -U 10900 ; WX 838 ; N uni2A94 ; G 4509 -U 10901 ; WX 838 ; N uni2A95 ; G 4510 -U 10902 ; WX 838 ; N uni2A96 ; G 4511 -U 10903 ; WX 838 ; N uni2A97 ; G 4512 -U 10904 ; WX 838 ; N uni2A98 ; G 4513 -U 10905 ; WX 838 ; N uni2A99 ; G 4514 -U 10906 ; WX 838 ; N uni2A9A ; G 4515 -U 10907 ; WX 838 ; N uni2A9B ; G 4516 -U 10908 ; WX 838 ; N uni2A9C ; G 4517 -U 10909 ; WX 838 ; N uni2A9D ; G 4518 -U 10910 ; WX 838 ; N uni2A9E ; G 4519 -U 10911 ; WX 838 ; N uni2A9F ; G 4520 -U 10912 ; WX 838 ; N uni2AA0 ; G 4521 -U 10926 ; WX 838 ; N uni2AAE ; G 4522 -U 10927 ; WX 838 ; N uni2AAF ; G 4523 -U 10928 ; WX 838 ; N uni2AB0 ; G 4524 -U 10929 ; WX 838 ; N uni2AB1 ; G 4525 -U 10930 ; WX 838 ; N uni2AB2 ; G 4526 -U 10931 ; WX 838 ; N uni2AB3 ; G 4527 -U 10932 ; WX 838 ; N uni2AB4 ; G 4528 -U 10933 ; WX 838 ; N uni2AB5 ; G 4529 -U 10934 ; WX 838 ; N uni2AB6 ; G 4530 -U 10935 ; WX 838 ; N uni2AB7 ; G 4531 -U 10936 ; WX 838 ; N uni2AB8 ; G 4532 -U 10937 ; WX 838 ; N uni2AB9 ; G 4533 -U 10938 ; WX 838 ; N uni2ABA ; G 4534 -U 11001 ; WX 838 ; N uni2AF9 ; G 4535 -U 11002 ; WX 838 ; N uni2AFA ; G 4536 -U 11008 ; WX 838 ; N uni2B00 ; G 4537 -U 11009 ; WX 838 ; N uni2B01 ; G 4538 -U 11010 ; WX 838 ; N uni2B02 ; G 4539 -U 11011 ; WX 838 ; N uni2B03 ; G 4540 -U 11012 ; WX 838 ; N uni2B04 ; G 4541 -U 11013 ; WX 838 ; N uni2B05 ; G 4542 -U 11014 ; WX 838 ; N uni2B06 ; G 4543 -U 11015 ; WX 838 ; N uni2B07 ; G 4544 -U 11016 ; WX 838 ; N uni2B08 ; G 4545 -U 11017 ; WX 838 ; N uni2B09 ; G 4546 -U 11018 ; WX 838 ; N uni2B0A ; G 4547 -U 11019 ; WX 838 ; N uni2B0B ; G 4548 -U 11020 ; WX 838 ; N uni2B0C ; G 4549 -U 11021 ; WX 838 ; N uni2B0D ; G 4550 -U 11022 ; WX 836 ; N uni2B0E ; G 4551 -U 11023 ; WX 836 ; N uni2B0F ; G 4552 -U 11024 ; WX 836 ; N uni2B10 ; G 4553 -U 11025 ; WX 836 ; N uni2B11 ; G 4554 -U 11026 ; WX 945 ; N uni2B12 ; G 4555 -U 11027 ; WX 945 ; N uni2B13 ; G 4556 -U 11028 ; WX 945 ; N uni2B14 ; G 4557 -U 11029 ; WX 945 ; N uni2B15 ; G 4558 -U 11030 ; WX 769 ; N uni2B16 ; G 4559 -U 11031 ; WX 769 ; N uni2B17 ; G 4560 -U 11032 ; WX 769 ; N uni2B18 ; G 4561 -U 11033 ; WX 769 ; N uni2B19 ; G 4562 -U 11034 ; WX 945 ; N uni2B1A ; G 4563 -U 11039 ; WX 869 ; N uni2B1F ; G 4564 -U 11040 ; WX 869 ; N uni2B20 ; G 4565 -U 11041 ; WX 873 ; N uni2B21 ; G 4566 -U 11042 ; WX 873 ; N uni2B22 ; G 4567 -U 11043 ; WX 873 ; N uni2B23 ; G 4568 -U 11044 ; WX 1119 ; N uni2B24 ; G 4569 -U 11091 ; WX 869 ; N uni2B53 ; G 4570 -U 11092 ; WX 869 ; N uni2B54 ; G 4571 -U 11360 ; WX 557 ; N uni2C60 ; G 4572 -U 11361 ; WX 278 ; N uni2C61 ; G 4573 -U 11362 ; WX 557 ; N uni2C62 ; G 4574 -U 11363 ; WX 603 ; N uni2C63 ; G 4575 -U 11364 ; WX 695 ; N uni2C64 ; G 4576 -U 11365 ; WX 613 ; N uni2C65 ; G 4577 -U 11366 ; WX 392 ; N uni2C66 ; G 4578 -U 11367 ; WX 752 ; N uni2C67 ; G 4579 -U 11368 ; WX 634 ; N uni2C68 ; G 4580 -U 11369 ; WX 656 ; N uni2C69 ; G 4581 -U 11370 ; WX 579 ; N uni2C6A ; G 4582 -U 11371 ; WX 685 ; N uni2C6B ; G 4583 -U 11372 ; WX 525 ; N uni2C6C ; G 4584 -U 11373 ; WX 781 ; N uni2C6D ; G 4585 -U 11374 ; WX 863 ; N uni2C6E ; G 4586 -U 11375 ; WX 684 ; N uni2C6F ; G 4587 -U 11376 ; WX 781 ; N uni2C70 ; G 4588 -U 11377 ; WX 734 ; N uni2C71 ; G 4589 -U 11378 ; WX 1128 ; N uni2C72 ; G 4590 -U 11379 ; WX 961 ; N uni2C73 ; G 4591 -U 11380 ; WX 592 ; N uni2C74 ; G 4592 -U 11381 ; WX 654 ; N uni2C75 ; G 4593 -U 11382 ; WX 568 ; N uni2C76 ; G 4594 -U 11383 ; WX 660 ; N uni2C77 ; G 4595 -U 11385 ; WX 414 ; N uni2C79 ; G 4596 -U 11386 ; WX 612 ; N uni2C7A ; G 4597 -U 11387 ; WX 491 ; N uni2C7B ; G 4598 -U 11388 ; WX 175 ; N uni2C7C ; G 4599 -U 11389 ; WX 431 ; N uni2C7D ; G 4600 -U 11390 ; WX 635 ; N uni2C7E ; G 4601 -U 11391 ; WX 685 ; N uni2C7F ; G 4602 -U 11520 ; WX 591 ; N uni2D00 ; G 4603 -U 11521 ; WX 595 ; N uni2D01 ; G 4604 -U 11522 ; WX 564 ; N uni2D02 ; G 4605 -U 11523 ; WX 602 ; N uni2D03 ; G 4606 -U 11524 ; WX 587 ; N uni2D04 ; G 4607 -U 11525 ; WX 911 ; N uni2D05 ; G 4608 -U 11526 ; WX 626 ; N uni2D06 ; G 4609 -U 11527 ; WX 952 ; N uni2D07 ; G 4610 -U 11528 ; WX 595 ; N uni2D08 ; G 4611 -U 11529 ; WX 607 ; N uni2D09 ; G 4612 -U 11530 ; WX 954 ; N uni2D0A ; G 4613 -U 11531 ; WX 620 ; N uni2D0B ; G 4614 -U 11532 ; WX 595 ; N uni2D0C ; G 4615 -U 11533 ; WX 926 ; N uni2D0D ; G 4616 -U 11534 ; WX 595 ; N uni2D0E ; G 4617 -U 11535 ; WX 806 ; N uni2D0F ; G 4618 -U 11536 ; WX 931 ; N uni2D10 ; G 4619 -U 11537 ; WX 584 ; N uni2D11 ; G 4620 -U 11538 ; WX 592 ; N uni2D12 ; G 4621 -U 11539 ; WX 923 ; N uni2D13 ; G 4622 -U 11540 ; WX 953 ; N uni2D14 ; G 4623 -U 11541 ; WX 828 ; N uni2D15 ; G 4624 -U 11542 ; WX 596 ; N uni2D16 ; G 4625 -U 11543 ; WX 595 ; N uni2D17 ; G 4626 -U 11544 ; WX 590 ; N uni2D18 ; G 4627 -U 11545 ; WX 592 ; N uni2D19 ; G 4628 -U 11546 ; WX 592 ; N uni2D1A ; G 4629 -U 11547 ; WX 621 ; N uni2D1B ; G 4630 -U 11548 ; WX 920 ; N uni2D1C ; G 4631 -U 11549 ; WX 589 ; N uni2D1D ; G 4632 -U 11550 ; WX 586 ; N uni2D1E ; G 4633 -U 11551 ; WX 581 ; N uni2D1F ; G 4634 -U 11552 ; WX 914 ; N uni2D20 ; G 4635 -U 11553 ; WX 596 ; N uni2D21 ; G 4636 -U 11554 ; WX 595 ; N uni2D22 ; G 4637 -U 11555 ; WX 592 ; N uni2D23 ; G 4638 -U 11556 ; WX 642 ; N uni2D24 ; G 4639 -U 11557 ; WX 901 ; N uni2D25 ; G 4640 -U 11568 ; WX 646 ; N uni2D30 ; G 4641 -U 11569 ; WX 888 ; N uni2D31 ; G 4642 -U 11570 ; WX 888 ; N uni2D32 ; G 4643 -U 11571 ; WX 682 ; N uni2D33 ; G 4644 -U 11572 ; WX 684 ; N uni2D34 ; G 4645 -U 11573 ; WX 635 ; N uni2D35 ; G 4646 -U 11574 ; WX 562 ; N uni2D36 ; G 4647 -U 11575 ; WX 684 ; N uni2D37 ; G 4648 -U 11576 ; WX 684 ; N uni2D38 ; G 4649 -U 11577 ; WX 632 ; N uni2D39 ; G 4650 -U 11578 ; WX 632 ; N uni2D3A ; G 4651 -U 11579 ; WX 683 ; N uni2D3B ; G 4652 -U 11580 ; WX 875 ; N uni2D3C ; G 4653 -U 11581 ; WX 685 ; N uni2D3D ; G 4654 -U 11582 ; WX 491 ; N uni2D3E ; G 4655 -U 11583 ; WX 685 ; N uni2D3F ; G 4656 -U 11584 ; WX 888 ; N uni2D40 ; G 4657 -U 11585 ; WX 888 ; N uni2D41 ; G 4658 -U 11586 ; WX 300 ; N uni2D42 ; G 4659 -U 11587 ; WX 627 ; N uni2D43 ; G 4660 -U 11588 ; WX 752 ; N uni2D44 ; G 4661 -U 11589 ; WX 656 ; N uni2D45 ; G 4662 -U 11590 ; WX 527 ; N uni2D46 ; G 4663 -U 11591 ; WX 685 ; N uni2D47 ; G 4664 -U 11592 ; WX 645 ; N uni2D48 ; G 4665 -U 11593 ; WX 632 ; N uni2D49 ; G 4666 -U 11594 ; WX 502 ; N uni2D4A ; G 4667 -U 11595 ; WX 953 ; N uni2D4B ; G 4668 -U 11596 ; WX 778 ; N uni2D4C ; G 4669 -U 11597 ; WX 748 ; N uni2D4D ; G 4670 -U 11598 ; WX 621 ; N uni2D4E ; G 4671 -U 11599 ; WX 295 ; N uni2D4F ; G 4672 -U 11600 ; WX 778 ; N uni2D50 ; G 4673 -U 11601 ; WX 295 ; N uni2D51 ; G 4674 -U 11602 ; WX 752 ; N uni2D52 ; G 4675 -U 11603 ; WX 633 ; N uni2D53 ; G 4676 -U 11604 ; WX 888 ; N uni2D54 ; G 4677 -U 11605 ; WX 888 ; N uni2D55 ; G 4678 -U 11606 ; WX 752 ; N uni2D56 ; G 4679 -U 11607 ; WX 320 ; N uni2D57 ; G 4680 -U 11608 ; WX 749 ; N uni2D58 ; G 4681 -U 11609 ; WX 888 ; N uni2D59 ; G 4682 -U 11610 ; WX 888 ; N uni2D5A ; G 4683 -U 11611 ; WX 698 ; N uni2D5B ; G 4684 -U 11612 ; WX 768 ; N uni2D5C ; G 4685 -U 11613 ; WX 685 ; N uni2D5D ; G 4686 -U 11614 ; WX 698 ; N uni2D5E ; G 4687 -U 11615 ; WX 622 ; N uni2D5F ; G 4688 -U 11616 ; WX 684 ; N uni2D60 ; G 4689 -U 11617 ; WX 752 ; N uni2D61 ; G 4690 -U 11618 ; WX 632 ; N uni2D62 ; G 4691 -U 11619 ; WX 788 ; N uni2D63 ; G 4692 -U 11620 ; WX 567 ; N uni2D64 ; G 4693 -U 11621 ; WX 788 ; N uni2D65 ; G 4694 -U 11631 ; WX 515 ; N uni2D6F ; G 4695 -U 11800 ; WX 531 ; N uni2E18 ; G 4696 -U 11807 ; WX 838 ; N uni2E1F ; G 4697 -U 11810 ; WX 390 ; N uni2E22 ; G 4698 -U 11811 ; WX 390 ; N uni2E23 ; G 4699 -U 11812 ; WX 390 ; N uni2E24 ; G 4700 -U 11813 ; WX 390 ; N uni2E25 ; G 4701 -U 11822 ; WX 531 ; N uni2E2E ; G 4702 -U 19904 ; WX 896 ; N uni4DC0 ; G 4703 -U 19905 ; WX 896 ; N uni4DC1 ; G 4704 -U 19906 ; WX 896 ; N uni4DC2 ; G 4705 -U 19907 ; WX 896 ; N uni4DC3 ; G 4706 -U 19908 ; WX 896 ; N uni4DC4 ; G 4707 -U 19909 ; WX 896 ; N uni4DC5 ; G 4708 -U 19910 ; WX 896 ; N uni4DC6 ; G 4709 -U 19911 ; WX 896 ; N uni4DC7 ; G 4710 -U 19912 ; WX 896 ; N uni4DC8 ; G 4711 -U 19913 ; WX 896 ; N uni4DC9 ; G 4712 -U 19914 ; WX 896 ; N uni4DCA ; G 4713 -U 19915 ; WX 896 ; N uni4DCB ; G 4714 -U 19916 ; WX 896 ; N uni4DCC ; G 4715 -U 19917 ; WX 896 ; N uni4DCD ; G 4716 -U 19918 ; WX 896 ; N uni4DCE ; G 4717 -U 19919 ; WX 896 ; N uni4DCF ; G 4718 -U 19920 ; WX 896 ; N uni4DD0 ; G 4719 -U 19921 ; WX 896 ; N uni4DD1 ; G 4720 -U 19922 ; WX 896 ; N uni4DD2 ; G 4721 -U 19923 ; WX 896 ; N uni4DD3 ; G 4722 -U 19924 ; WX 896 ; N uni4DD4 ; G 4723 -U 19925 ; WX 896 ; N uni4DD5 ; G 4724 -U 19926 ; WX 896 ; N uni4DD6 ; G 4725 -U 19927 ; WX 896 ; N uni4DD7 ; G 4726 -U 19928 ; WX 896 ; N uni4DD8 ; G 4727 -U 19929 ; WX 896 ; N uni4DD9 ; G 4728 -U 19930 ; WX 896 ; N uni4DDA ; G 4729 -U 19931 ; WX 896 ; N uni4DDB ; G 4730 -U 19932 ; WX 896 ; N uni4DDC ; G 4731 -U 19933 ; WX 896 ; N uni4DDD ; G 4732 -U 19934 ; WX 896 ; N uni4DDE ; G 4733 -U 19935 ; WX 896 ; N uni4DDF ; G 4734 -U 19936 ; WX 896 ; N uni4DE0 ; G 4735 -U 19937 ; WX 896 ; N uni4DE1 ; G 4736 -U 19938 ; WX 896 ; N uni4DE2 ; G 4737 -U 19939 ; WX 896 ; N uni4DE3 ; G 4738 -U 19940 ; WX 896 ; N uni4DE4 ; G 4739 -U 19941 ; WX 896 ; N uni4DE5 ; G 4740 -U 19942 ; WX 896 ; N uni4DE6 ; G 4741 -U 19943 ; WX 896 ; N uni4DE7 ; G 4742 -U 19944 ; WX 896 ; N uni4DE8 ; G 4743 -U 19945 ; WX 896 ; N uni4DE9 ; G 4744 -U 19946 ; WX 896 ; N uni4DEA ; G 4745 -U 19947 ; WX 896 ; N uni4DEB ; G 4746 -U 19948 ; WX 896 ; N uni4DEC ; G 4747 -U 19949 ; WX 896 ; N uni4DED ; G 4748 -U 19950 ; WX 896 ; N uni4DEE ; G 4749 -U 19951 ; WX 896 ; N uni4DEF ; G 4750 -U 19952 ; WX 896 ; N uni4DF0 ; G 4751 -U 19953 ; WX 896 ; N uni4DF1 ; G 4752 -U 19954 ; WX 896 ; N uni4DF2 ; G 4753 -U 19955 ; WX 896 ; N uni4DF3 ; G 4754 -U 19956 ; WX 896 ; N uni4DF4 ; G 4755 -U 19957 ; WX 896 ; N uni4DF5 ; G 4756 -U 19958 ; WX 896 ; N uni4DF6 ; G 4757 -U 19959 ; WX 896 ; N uni4DF7 ; G 4758 -U 19960 ; WX 896 ; N uni4DF8 ; G 4759 -U 19961 ; WX 896 ; N uni4DF9 ; G 4760 -U 19962 ; WX 896 ; N uni4DFA ; G 4761 -U 19963 ; WX 896 ; N uni4DFB ; G 4762 -U 19964 ; WX 896 ; N uni4DFC ; G 4763 -U 19965 ; WX 896 ; N uni4DFD ; G 4764 -U 19966 ; WX 896 ; N uni4DFE ; G 4765 -U 19967 ; WX 896 ; N uni4DFF ; G 4766 -U 42192 ; WX 686 ; N uniA4D0 ; G 4767 -U 42193 ; WX 603 ; N uniA4D1 ; G 4768 -U 42194 ; WX 603 ; N uniA4D2 ; G 4769 -U 42195 ; WX 770 ; N uniA4D3 ; G 4770 -U 42196 ; WX 611 ; N uniA4D4 ; G 4771 -U 42197 ; WX 611 ; N uniA4D5 ; G 4772 -U 42198 ; WX 775 ; N uniA4D6 ; G 4773 -U 42199 ; WX 656 ; N uniA4D7 ; G 4774 -U 42200 ; WX 656 ; N uniA4D8 ; G 4775 -U 42201 ; WX 512 ; N uniA4D9 ; G 4776 -U 42202 ; WX 698 ; N uniA4DA ; G 4777 -U 42203 ; WX 703 ; N uniA4DB ; G 4778 -U 42204 ; WX 685 ; N uniA4DC ; G 4779 -U 42205 ; WX 575 ; N uniA4DD ; G 4780 -U 42206 ; WX 575 ; N uniA4DE ; G 4781 -U 42207 ; WX 863 ; N uniA4DF ; G 4782 -U 42208 ; WX 748 ; N uniA4E0 ; G 4783 -U 42209 ; WX 557 ; N uniA4E1 ; G 4784 -U 42210 ; WX 635 ; N uniA4E2 ; G 4785 -U 42211 ; WX 695 ; N uniA4E3 ; G 4786 -U 42212 ; WX 695 ; N uniA4E4 ; G 4787 -U 42213 ; WX 684 ; N uniA4E5 ; G 4788 -U 42214 ; WX 684 ; N uniA4E6 ; G 4789 -U 42215 ; WX 752 ; N uniA4E7 ; G 4790 -U 42216 ; WX 775 ; N uniA4E8 ; G 4791 -U 42217 ; WX 512 ; N uniA4E9 ; G 4792 -U 42218 ; WX 989 ; N uniA4EA ; G 4793 -U 42219 ; WX 685 ; N uniA4EB ; G 4794 -U 42220 ; WX 611 ; N uniA4EC ; G 4795 -U 42221 ; WX 686 ; N uniA4ED ; G 4796 -U 42222 ; WX 684 ; N uniA4EE ; G 4797 -U 42223 ; WX 684 ; N uniA4EF ; G 4798 -U 42224 ; WX 632 ; N uniA4F0 ; G 4799 -U 42225 ; WX 632 ; N uniA4F1 ; G 4800 -U 42226 ; WX 295 ; N uniA4F2 ; G 4801 -U 42227 ; WX 787 ; N uniA4F3 ; G 4802 -U 42228 ; WX 732 ; N uniA4F4 ; G 4803 -U 42229 ; WX 732 ; N uniA4F5 ; G 4804 -U 42230 ; WX 557 ; N uniA4F6 ; G 4805 -U 42231 ; WX 767 ; N uniA4F7 ; G 4806 -U 42232 ; WX 300 ; N uniA4F8 ; G 4807 -U 42233 ; WX 300 ; N uniA4F9 ; G 4808 -U 42234 ; WX 596 ; N uniA4FA ; G 4809 -U 42235 ; WX 596 ; N uniA4FB ; G 4810 -U 42236 ; WX 300 ; N uniA4FC ; G 4811 -U 42237 ; WX 300 ; N uniA4FD ; G 4812 -U 42238 ; WX 588 ; N uniA4FE ; G 4813 -U 42239 ; WX 588 ; N uniA4FF ; G 4814 -U 42564 ; WX 635 ; N uniA644 ; G 4815 -U 42565 ; WX 521 ; N uniA645 ; G 4816 -U 42566 ; WX 354 ; N uniA646 ; G 4817 -U 42567 ; WX 338 ; N uniA647 ; G 4818 -U 42572 ; WX 1180 ; N uniA64C ; G 4819 -U 42573 ; WX 1028 ; N uniA64D ; G 4820 -U 42576 ; WX 1029 ; N uniA650 ; G 4821 -U 42577 ; WX 906 ; N uniA651 ; G 4822 -U 42580 ; WX 1080 ; N uniA654 ; G 4823 -U 42581 ; WX 842 ; N uniA655 ; G 4824 -U 42582 ; WX 977 ; N uniA656 ; G 4825 -U 42583 ; WX 843 ; N uniA657 ; G 4826 -U 42594 ; WX 1062 ; N uniA662 ; G 4827 -U 42595 ; WX 912 ; N uniA663 ; G 4828 -U 42596 ; WX 1066 ; N uniA664 ; G 4829 -U 42597 ; WX 901 ; N uniA665 ; G 4830 -U 42598 ; WX 1178 ; N uniA666 ; G 4831 -U 42599 ; WX 1008 ; N uniA667 ; G 4832 -U 42600 ; WX 787 ; N uniA668 ; G 4833 -U 42601 ; WX 612 ; N uniA669 ; G 4834 -U 42602 ; WX 855 ; N uniA66A ; G 4835 -U 42603 ; WX 712 ; N uniA66B ; G 4836 -U 42604 ; WX 1358 ; N uniA66C ; G 4837 -U 42605 ; WX 1019 ; N uniA66D ; G 4838 -U 42606 ; WX 879 ; N uniA66E ; G 4839 -U 42634 ; WX 782 ; N uniA68A ; G 4840 -U 42635 ; WX 685 ; N uniA68B ; G 4841 -U 42636 ; WX 611 ; N uniA68C ; G 4842 -U 42637 ; WX 583 ; N uniA68D ; G 4843 -U 42644 ; WX 686 ; N uniA694 ; G 4844 -U 42645 ; WX 634 ; N uniA695 ; G 4845 -U 42648 ; WX 1358 ; N uniA698 ; G 4846 -U 42649 ; WX 1019 ; N uniA699 ; G 4847 -U 42760 ; WX 493 ; N uniA708 ; G 4848 -U 42761 ; WX 493 ; N uniA709 ; G 4849 -U 42762 ; WX 493 ; N uniA70A ; G 4850 -U 42763 ; WX 493 ; N uniA70B ; G 4851 -U 42764 ; WX 493 ; N uniA70C ; G 4852 -U 42765 ; WX 493 ; N uniA70D ; G 4853 -U 42766 ; WX 493 ; N uniA70E ; G 4854 -U 42767 ; WX 493 ; N uniA70F ; G 4855 -U 42768 ; WX 493 ; N uniA710 ; G 4856 -U 42769 ; WX 493 ; N uniA711 ; G 4857 -U 42770 ; WX 493 ; N uniA712 ; G 4858 -U 42771 ; WX 493 ; N uniA713 ; G 4859 -U 42772 ; WX 493 ; N uniA714 ; G 4860 -U 42773 ; WX 493 ; N uniA715 ; G 4861 -U 42774 ; WX 493 ; N uniA716 ; G 4862 -U 42779 ; WX 369 ; N uniA71B ; G 4863 -U 42780 ; WX 369 ; N uniA71C ; G 4864 -U 42781 ; WX 252 ; N uniA71D ; G 4865 -U 42782 ; WX 252 ; N uniA71E ; G 4866 -U 42783 ; WX 252 ; N uniA71F ; G 4867 -U 42786 ; WX 385 ; N uniA722 ; G 4868 -U 42787 ; WX 356 ; N uniA723 ; G 4869 -U 42788 ; WX 472 ; N uniA724 ; G 4870 -U 42789 ; WX 472 ; N uniA725 ; G 4871 -U 42790 ; WX 752 ; N uniA726 ; G 4872 -U 42791 ; WX 634 ; N uniA727 ; G 4873 -U 42792 ; WX 878 ; N uniA728 ; G 4874 -U 42793 ; WX 709 ; N uniA729 ; G 4875 -U 42794 ; WX 614 ; N uniA72A ; G 4876 -U 42795 ; WX 541 ; N uniA72B ; G 4877 -U 42800 ; WX 491 ; N uniA730 ; G 4878 -U 42801 ; WX 521 ; N uniA731 ; G 4879 -U 42802 ; WX 1250 ; N uniA732 ; G 4880 -U 42803 ; WX 985 ; N uniA733 ; G 4881 -U 42804 ; WX 1203 ; N uniA734 ; G 4882 -U 42805 ; WX 990 ; N uniA735 ; G 4883 -U 42806 ; WX 1142 ; N uniA736 ; G 4884 -U 42807 ; WX 981 ; N uniA737 ; G 4885 -U 42808 ; WX 971 ; N uniA738 ; G 4886 -U 42809 ; WX 818 ; N uniA739 ; G 4887 -U 42810 ; WX 971 ; N uniA73A ; G 4888 -U 42811 ; WX 818 ; N uniA73B ; G 4889 -U 42812 ; WX 959 ; N uniA73C ; G 4890 -U 42813 ; WX 818 ; N uniA73D ; G 4891 -U 42814 ; WX 703 ; N uniA73E ; G 4892 -U 42815 ; WX 549 ; N uniA73F ; G 4893 -U 42816 ; WX 656 ; N uniA740 ; G 4894 -U 42817 ; WX 583 ; N uniA741 ; G 4895 -U 42822 ; WX 680 ; N uniA746 ; G 4896 -U 42823 ; WX 392 ; N uniA747 ; G 4897 -U 42824 ; WX 582 ; N uniA748 ; G 4898 -U 42825 ; WX 427 ; N uniA749 ; G 4899 -U 42826 ; WX 807 ; N uniA74A ; G 4900 -U 42827 ; WX 704 ; N uniA74B ; G 4901 -U 42830 ; WX 1358 ; N uniA74E ; G 4902 -U 42831 ; WX 1019 ; N uniA74F ; G 4903 -U 42832 ; WX 603 ; N uniA750 ; G 4904 -U 42833 ; WX 635 ; N uniA751 ; G 4905 -U 42834 ; WX 734 ; N uniA752 ; G 4906 -U 42835 ; WX 774 ; N uniA753 ; G 4907 -U 42838 ; WX 787 ; N uniA756 ; G 4908 -U 42839 ; WX 635 ; N uniA757 ; G 4909 -U 42852 ; WX 605 ; N uniA764 ; G 4910 -U 42853 ; WX 635 ; N uniA765 ; G 4911 -U 42854 ; WX 605 ; N uniA766 ; G 4912 -U 42855 ; WX 635 ; N uniA767 ; G 4913 -U 42880 ; WX 557 ; N uniA780 ; G 4914 -U 42881 ; WX 278 ; N uniA781 ; G 4915 -U 42882 ; WX 735 ; N uniA782 ; G 4916 -U 42883 ; WX 634 ; N uniA783 ; G 4917 -U 42889 ; WX 337 ; N uniA789 ; G 4918 -U 42890 ; WX 376 ; N uniA78A ; G 4919 -U 42891 ; WX 401 ; N uniA78B ; G 4920 -U 42892 ; WX 275 ; N uniA78C ; G 4921 -U 42893 ; WX 686 ; N uniA78D ; G 4922 -U 42894 ; WX 487 ; N uniA78E ; G 4923 -U 42896 ; WX 772 ; N uniA790 ; G 4924 -U 42897 ; WX 667 ; N uniA791 ; G 4925 -U 42912 ; WX 775 ; N uniA7A0 ; G 4926 -U 42913 ; WX 635 ; N uniA7A1 ; G 4927 -U 42914 ; WX 656 ; N uniA7A2 ; G 4928 -U 42915 ; WX 579 ; N uniA7A3 ; G 4929 -U 42916 ; WX 748 ; N uniA7A4 ; G 4930 -U 42917 ; WX 634 ; N uniA7A5 ; G 4931 -U 42918 ; WX 695 ; N uniA7A6 ; G 4932 -U 42919 ; WX 411 ; N uniA7A7 ; G 4933 -U 42920 ; WX 635 ; N uniA7A8 ; G 4934 -U 42921 ; WX 521 ; N uniA7A9 ; G 4935 -U 42922 ; WX 801 ; N uniA7AA ; G 4936 -U 43000 ; WX 577 ; N uniA7F8 ; G 4937 -U 43001 ; WX 644 ; N uniA7F9 ; G 4938 -U 43002 ; WX 915 ; N uniA7FA ; G 4939 -U 43003 ; WX 575 ; N uniA7FB ; G 4940 -U 43004 ; WX 603 ; N uniA7FC ; G 4941 -U 43005 ; WX 863 ; N uniA7FD ; G 4942 -U 43006 ; WX 295 ; N uniA7FE ; G 4943 -U 43007 ; WX 1199 ; N uniA7FF ; G 4944 -U 61184 ; WX 213 ; N uni02E5.5 ; G 4945 -U 61185 ; WX 238 ; N uni02E6.5 ; G 4946 -U 61186 ; WX 257 ; N uni02E7.5 ; G 4947 -U 61187 ; WX 264 ; N uni02E8.5 ; G 4948 -U 61188 ; WX 267 ; N uni02E9.5 ; G 4949 -U 61189 ; WX 238 ; N uni02E5.4 ; G 4950 -U 61190 ; WX 213 ; N uni02E6.4 ; G 4951 -U 61191 ; WX 238 ; N uni02E7.4 ; G 4952 -U 61192 ; WX 257 ; N uni02E8.4 ; G 4953 -U 61193 ; WX 264 ; N uni02E9.4 ; G 4954 -U 61194 ; WX 257 ; N uni02E5.3 ; G 4955 -U 61195 ; WX 238 ; N uni02E6.3 ; G 4956 -U 61196 ; WX 213 ; N uni02E7.3 ; G 4957 -U 61197 ; WX 238 ; N uni02E8.3 ; G 4958 -U 61198 ; WX 257 ; N uni02E9.3 ; G 4959 -U 61199 ; WX 264 ; N uni02E5.2 ; G 4960 -U 61200 ; WX 257 ; N uni02E6.2 ; G 4961 -U 61201 ; WX 238 ; N uni02E7.2 ; G 4962 -U 61202 ; WX 213 ; N uni02E8.2 ; G 4963 -U 61203 ; WX 238 ; N uni02E9.2 ; G 4964 -U 61204 ; WX 267 ; N uni02E5.1 ; G 4965 -U 61205 ; WX 264 ; N uni02E6.1 ; G 4966 -U 61206 ; WX 257 ; N uni02E7.1 ; G 4967 -U 61207 ; WX 238 ; N uni02E8.1 ; G 4968 -U 61208 ; WX 213 ; N uni02E9.1 ; G 4969 -U 61209 ; WX 275 ; N stem ; G 4970 -U 61440 ; WX 977 ; N uniF000 ; G 4971 -U 61441 ; WX 977 ; N uniF001 ; G 4972 -U 61442 ; WX 977 ; N uniF002 ; G 4973 -U 61443 ; WX 977 ; N uniF003 ; G 4974 -U 62464 ; WX 580 ; N uniF400 ; G 4975 -U 62465 ; WX 580 ; N uniF401 ; G 4976 -U 62466 ; WX 624 ; N uniF402 ; G 4977 -U 62467 ; WX 889 ; N uniF403 ; G 4978 -U 62468 ; WX 585 ; N uniF404 ; G 4979 -U 62469 ; WX 580 ; N uniF405 ; G 4980 -U 62470 ; WX 653 ; N uniF406 ; G 4981 -U 62471 ; WX 882 ; N uniF407 ; G 4982 -U 62472 ; WX 555 ; N uniF408 ; G 4983 -U 62473 ; WX 580 ; N uniF409 ; G 4984 -U 62474 ; WX 1168 ; N uniF40A ; G 4985 -U 62475 ; WX 589 ; N uniF40B ; G 4986 -U 62476 ; WX 590 ; N uniF40C ; G 4987 -U 62477 ; WX 869 ; N uniF40D ; G 4988 -U 62478 ; WX 580 ; N uniF40E ; G 4989 -U 62479 ; WX 589 ; N uniF40F ; G 4990 -U 62480 ; WX 914 ; N uniF410 ; G 4991 -U 62481 ; WX 590 ; N uniF411 ; G 4992 -U 62482 ; WX 731 ; N uniF412 ; G 4993 -U 62483 ; WX 583 ; N uniF413 ; G 4994 -U 62484 ; WX 872 ; N uniF414 ; G 4995 -U 62485 ; WX 589 ; N uniF415 ; G 4996 -U 62486 ; WX 895 ; N uniF416 ; G 4997 -U 62487 ; WX 589 ; N uniF417 ; G 4998 -U 62488 ; WX 589 ; N uniF418 ; G 4999 -U 62489 ; WX 590 ; N uniF419 ; G 5000 -U 62490 ; WX 649 ; N uniF41A ; G 5001 -U 62491 ; WX 589 ; N uniF41B ; G 5002 -U 62492 ; WX 589 ; N uniF41C ; G 5003 -U 62493 ; WX 599 ; N uniF41D ; G 5004 -U 62494 ; WX 590 ; N uniF41E ; G 5005 -U 62495 ; WX 516 ; N uniF41F ; G 5006 -U 62496 ; WX 580 ; N uniF420 ; G 5007 -U 62497 ; WX 584 ; N uniF421 ; G 5008 -U 62498 ; WX 580 ; N uniF422 ; G 5009 -U 62499 ; WX 580 ; N uniF423 ; G 5010 -U 62500 ; WX 581 ; N uniF424 ; G 5011 -U 62501 ; WX 638 ; N uniF425 ; G 5012 -U 62502 ; WX 955 ; N uniF426 ; G 5013 -U 62504 ; WX 931 ; N uniF428 ; G 5014 -U 62505 ; WX 808 ; N uniF429 ; G 5015 -U 62506 ; WX 508 ; N uniF42A ; G 5016 -U 62507 ; WX 508 ; N uniF42B ; G 5017 -U 62508 ; WX 508 ; N uniF42C ; G 5018 -U 62509 ; WX 508 ; N uniF42D ; G 5019 -U 62510 ; WX 508 ; N uniF42E ; G 5020 -U 62511 ; WX 508 ; N uniF42F ; G 5021 -U 62512 ; WX 508 ; N uniF430 ; G 5022 -U 62513 ; WX 508 ; N uniF431 ; G 5023 -U 62514 ; WX 508 ; N uniF432 ; G 5024 -U 62515 ; WX 508 ; N uniF433 ; G 5025 -U 62516 ; WX 518 ; N uniF434 ; G 5026 -U 62517 ; WX 518 ; N uniF435 ; G 5027 -U 62518 ; WX 518 ; N uniF436 ; G 5028 -U 62519 ; WX 787 ; N uniF437 ; G 5029 -U 62520 ; WX 787 ; N uniF438 ; G 5030 -U 62521 ; WX 787 ; N uniF439 ; G 5031 -U 62522 ; WX 787 ; N uniF43A ; G 5032 -U 62523 ; WX 787 ; N uniF43B ; G 5033 -U 62524 ; WX 546 ; N uniF43C ; G 5034 -U 62525 ; WX 546 ; N uniF43D ; G 5035 -U 62526 ; WX 546 ; N uniF43E ; G 5036 -U 62527 ; WX 546 ; N uniF43F ; G 5037 -U 62528 ; WX 546 ; N uniF440 ; G 5038 -U 62529 ; WX 546 ; N uniF441 ; G 5039 -U 63173 ; WX 612 ; N uniF6C5 ; G 5040 -U 64256 ; WX 689 ; N uniFB00 ; G 5041 -U 64257 ; WX 630 ; N fi ; G 5042 -U 64258 ; WX 630 ; N fl ; G 5043 -U 64259 ; WX 967 ; N uniFB03 ; G 5044 -U 64260 ; WX 967 ; N uniFB04 ; G 5045 -U 64261 ; WX 686 ; N uniFB05 ; G 5046 -U 64262 ; WX 861 ; N uniFB06 ; G 5047 -U 64275 ; WX 1202 ; N uniFB13 ; G 5048 -U 64276 ; WX 1202 ; N uniFB14 ; G 5049 -U 64277 ; WX 1196 ; N uniFB15 ; G 5050 -U 64278 ; WX 1186 ; N uniFB16 ; G 5051 -U 64279 ; WX 1529 ; N uniFB17 ; G 5052 -U 64285 ; WX 224 ; N uniFB1D ; G 5053 -U 64286 ; WX 0 ; N uniFB1E ; G 5054 -U 64287 ; WX 331 ; N uniFB1F ; G 5055 -U 64288 ; WX 636 ; N uniFB20 ; G 5056 -U 64289 ; WX 856 ; N uniFB21 ; G 5057 -U 64290 ; WX 774 ; N uniFB22 ; G 5058 -U 64291 ; WX 906 ; N uniFB23 ; G 5059 -U 64292 ; WX 771 ; N uniFB24 ; G 5060 -U 64293 ; WX 843 ; N uniFB25 ; G 5061 -U 64294 ; WX 855 ; N uniFB26 ; G 5062 -U 64295 ; WX 807 ; N uniFB27 ; G 5063 -U 64296 ; WX 875 ; N uniFB28 ; G 5064 -U 64297 ; WX 838 ; N uniFB29 ; G 5065 -U 64298 ; WX 708 ; N uniFB2A ; G 5066 -U 64299 ; WX 708 ; N uniFB2B ; G 5067 -U 64300 ; WX 708 ; N uniFB2C ; G 5068 -U 64301 ; WX 708 ; N uniFB2D ; G 5069 -U 64302 ; WX 668 ; N uniFB2E ; G 5070 -U 64303 ; WX 668 ; N uniFB2F ; G 5071 -U 64304 ; WX 668 ; N uniFB30 ; G 5072 -U 64305 ; WX 578 ; N uniFB31 ; G 5073 -U 64306 ; WX 412 ; N uniFB32 ; G 5074 -U 64307 ; WX 546 ; N uniFB33 ; G 5075 -U 64308 ; WX 653 ; N uniFB34 ; G 5076 -U 64309 ; WX 355 ; N uniFB35 ; G 5077 -U 64310 ; WX 406 ; N uniFB36 ; G 5078 -U 64312 ; WX 648 ; N uniFB38 ; G 5079 -U 64313 ; WX 330 ; N uniFB39 ; G 5080 -U 64314 ; WX 537 ; N uniFB3A ; G 5081 -U 64315 ; WX 529 ; N uniFB3B ; G 5082 -U 64316 ; WX 568 ; N uniFB3C ; G 5083 -U 64318 ; WX 679 ; N uniFB3E ; G 5084 -U 64320 ; WX 399 ; N uniFB40 ; G 5085 -U 64321 ; WX 649 ; N uniFB41 ; G 5086 -U 64323 ; WX 640 ; N uniFB43 ; G 5087 -U 64324 ; WX 625 ; N uniFB44 ; G 5088 -U 64326 ; WX 593 ; N uniFB46 ; G 5089 -U 64327 ; WX 709 ; N uniFB47 ; G 5090 -U 64328 ; WX 564 ; N uniFB48 ; G 5091 -U 64329 ; WX 708 ; N uniFB49 ; G 5092 -U 64330 ; WX 657 ; N uniFB4A ; G 5093 -U 64331 ; WX 272 ; N uniFB4B ; G 5094 -U 64332 ; WX 578 ; N uniFB4C ; G 5095 -U 64333 ; WX 529 ; N uniFB4D ; G 5096 -U 64334 ; WX 625 ; N uniFB4E ; G 5097 -U 64335 ; WX 629 ; N uniFB4F ; G 5098 -U 64338 ; WX 941 ; N uniFB52 ; G 5099 -U 64339 ; WX 982 ; N uniFB53 ; G 5100 -U 64340 ; WX 278 ; N uniFB54 ; G 5101 -U 64341 ; WX 302 ; N uniFB55 ; G 5102 -U 64342 ; WX 941 ; N uniFB56 ; G 5103 -U 64343 ; WX 982 ; N uniFB57 ; G 5104 -U 64344 ; WX 278 ; N uniFB58 ; G 5105 -U 64345 ; WX 302 ; N uniFB59 ; G 5106 -U 64346 ; WX 941 ; N uniFB5A ; G 5107 -U 64347 ; WX 982 ; N uniFB5B ; G 5108 -U 64348 ; WX 278 ; N uniFB5C ; G 5109 -U 64349 ; WX 302 ; N uniFB5D ; G 5110 -U 64350 ; WX 941 ; N uniFB5E ; G 5111 -U 64351 ; WX 982 ; N uniFB5F ; G 5112 -U 64352 ; WX 278 ; N uniFB60 ; G 5113 -U 64353 ; WX 302 ; N uniFB61 ; G 5114 -U 64354 ; WX 941 ; N uniFB62 ; G 5115 -U 64355 ; WX 982 ; N uniFB63 ; G 5116 -U 64356 ; WX 278 ; N uniFB64 ; G 5117 -U 64357 ; WX 302 ; N uniFB65 ; G 5118 -U 64358 ; WX 941 ; N uniFB66 ; G 5119 -U 64359 ; WX 982 ; N uniFB67 ; G 5120 -U 64360 ; WX 278 ; N uniFB68 ; G 5121 -U 64361 ; WX 302 ; N uniFB69 ; G 5122 -U 64362 ; WX 1037 ; N uniFB6A ; G 5123 -U 64363 ; WX 1035 ; N uniFB6B ; G 5124 -U 64364 ; WX 478 ; N uniFB6C ; G 5125 -U 64365 ; WX 506 ; N uniFB6D ; G 5126 -U 64366 ; WX 1037 ; N uniFB6E ; G 5127 -U 64367 ; WX 1035 ; N uniFB6F ; G 5128 -U 64368 ; WX 478 ; N uniFB70 ; G 5129 -U 64369 ; WX 506 ; N uniFB71 ; G 5130 -U 64370 ; WX 646 ; N uniFB72 ; G 5131 -U 64371 ; WX 646 ; N uniFB73 ; G 5132 -U 64372 ; WX 618 ; N uniFB74 ; G 5133 -U 64373 ; WX 646 ; N uniFB75 ; G 5134 -U 64374 ; WX 646 ; N uniFB76 ; G 5135 -U 64375 ; WX 646 ; N uniFB77 ; G 5136 -U 64376 ; WX 618 ; N uniFB78 ; G 5137 -U 64377 ; WX 646 ; N uniFB79 ; G 5138 -U 64378 ; WX 646 ; N uniFB7A ; G 5139 -U 64379 ; WX 646 ; N uniFB7B ; G 5140 -U 64380 ; WX 618 ; N uniFB7C ; G 5141 -U 64381 ; WX 646 ; N uniFB7D ; G 5142 -U 64382 ; WX 646 ; N uniFB7E ; G 5143 -U 64383 ; WX 646 ; N uniFB7F ; G 5144 -U 64384 ; WX 618 ; N uniFB80 ; G 5145 -U 64385 ; WX 646 ; N uniFB81 ; G 5146 -U 64386 ; WX 445 ; N uniFB82 ; G 5147 -U 64387 ; WX 525 ; N uniFB83 ; G 5148 -U 64388 ; WX 445 ; N uniFB84 ; G 5149 -U 64389 ; WX 525 ; N uniFB85 ; G 5150 -U 64390 ; WX 445 ; N uniFB86 ; G 5151 -U 64391 ; WX 525 ; N uniFB87 ; G 5152 -U 64392 ; WX 445 ; N uniFB88 ; G 5153 -U 64393 ; WX 525 ; N uniFB89 ; G 5154 -U 64394 ; WX 483 ; N uniFB8A ; G 5155 -U 64395 ; WX 552 ; N uniFB8B ; G 5156 -U 64396 ; WX 483 ; N uniFB8C ; G 5157 -U 64397 ; WX 552 ; N uniFB8D ; G 5158 -U 64398 ; WX 895 ; N uniFB8E ; G 5159 -U 64399 ; WX 895 ; N uniFB8F ; G 5160 -U 64400 ; WX 476 ; N uniFB90 ; G 5161 -U 64401 ; WX 552 ; N uniFB91 ; G 5162 -U 64402 ; WX 895 ; N uniFB92 ; G 5163 -U 64403 ; WX 895 ; N uniFB93 ; G 5164 -U 64404 ; WX 476 ; N uniFB94 ; G 5165 -U 64405 ; WX 552 ; N uniFB95 ; G 5166 -U 64406 ; WX 895 ; N uniFB96 ; G 5167 -U 64407 ; WX 895 ; N uniFB97 ; G 5168 -U 64408 ; WX 476 ; N uniFB98 ; G 5169 -U 64409 ; WX 552 ; N uniFB99 ; G 5170 -U 64410 ; WX 895 ; N uniFB9A ; G 5171 -U 64411 ; WX 895 ; N uniFB9B ; G 5172 -U 64412 ; WX 476 ; N uniFB9C ; G 5173 -U 64413 ; WX 552 ; N uniFB9D ; G 5174 -U 64414 ; WX 734 ; N uniFB9E ; G 5175 -U 64415 ; WX 761 ; N uniFB9F ; G 5176 -U 64416 ; WX 734 ; N uniFBA0 ; G 5177 -U 64417 ; WX 761 ; N uniFBA1 ; G 5178 -U 64418 ; WX 278 ; N uniFBA2 ; G 5179 -U 64419 ; WX 302 ; N uniFBA3 ; G 5180 -U 64426 ; WX 698 ; N uniFBAA ; G 5181 -U 64427 ; WX 632 ; N uniFBAB ; G 5182 -U 64428 ; WX 527 ; N uniFBAC ; G 5183 -U 64429 ; WX 461 ; N uniFBAD ; G 5184 -U 64467 ; WX 824 ; N uniFBD3 ; G 5185 -U 64468 ; WX 843 ; N uniFBD4 ; G 5186 -U 64469 ; WX 476 ; N uniFBD5 ; G 5187 -U 64470 ; WX 552 ; N uniFBD6 ; G 5188 -U 64471 ; WX 483 ; N uniFBD7 ; G 5189 -U 64472 ; WX 517 ; N uniFBD8 ; G 5190 -U 64473 ; WX 483 ; N uniFBD9 ; G 5191 -U 64474 ; WX 517 ; N uniFBDA ; G 5192 -U 64475 ; WX 483 ; N uniFBDB ; G 5193 -U 64476 ; WX 517 ; N uniFBDC ; G 5194 -U 64478 ; WX 483 ; N uniFBDE ; G 5195 -U 64479 ; WX 517 ; N uniFBDF ; G 5196 -U 64484 ; WX 783 ; N uniFBE4 ; G 5197 -U 64485 ; WX 833 ; N uniFBE5 ; G 5198 -U 64486 ; WX 278 ; N uniFBE6 ; G 5199 -U 64487 ; WX 302 ; N uniFBE7 ; G 5200 -U 64488 ; WX 278 ; N uniFBE8 ; G 5201 -U 64489 ; WX 302 ; N uniFBE9 ; G 5202 -U 64508 ; WX 783 ; N uniFBFC ; G 5203 -U 64509 ; WX 833 ; N uniFBFD ; G 5204 -U 64510 ; WX 278 ; N uniFBFE ; G 5205 -U 64511 ; WX 302 ; N uniFBFF ; G 5206 -U 65024 ; WX 0 ; N uniFE00 ; G 5207 -U 65025 ; WX 0 ; N uniFE01 ; G 5208 -U 65026 ; WX 0 ; N uniFE02 ; G 5209 -U 65027 ; WX 0 ; N uniFE03 ; G 5210 -U 65028 ; WX 0 ; N uniFE04 ; G 5211 -U 65029 ; WX 0 ; N uniFE05 ; G 5212 -U 65030 ; WX 0 ; N uniFE06 ; G 5213 -U 65031 ; WX 0 ; N uniFE07 ; G 5214 -U 65032 ; WX 0 ; N uniFE08 ; G 5215 -U 65033 ; WX 0 ; N uniFE09 ; G 5216 -U 65034 ; WX 0 ; N uniFE0A ; G 5217 -U 65035 ; WX 0 ; N uniFE0B ; G 5218 -U 65036 ; WX 0 ; N uniFE0C ; G 5219 -U 65037 ; WX 0 ; N uniFE0D ; G 5220 -U 65038 ; WX 0 ; N uniFE0E ; G 5221 -U 65039 ; WX 0 ; N uniFE0F ; G 5222 -U 65056 ; WX 0 ; N uniFE20 ; G 5223 -U 65057 ; WX 0 ; N uniFE21 ; G 5224 -U 65058 ; WX 0 ; N uniFE22 ; G 5225 -U 65059 ; WX 0 ; N uniFE23 ; G 5226 -U 65136 ; WX 293 ; N uniFE70 ; G 5227 -U 65137 ; WX 293 ; N uniFE71 ; G 5228 -U 65138 ; WX 293 ; N uniFE72 ; G 5229 -U 65139 ; WX 262 ; N uniFE73 ; G 5230 -U 65140 ; WX 293 ; N uniFE74 ; G 5231 -U 65142 ; WX 293 ; N uniFE76 ; G 5232 -U 65143 ; WX 293 ; N uniFE77 ; G 5233 -U 65144 ; WX 293 ; N uniFE78 ; G 5234 -U 65145 ; WX 293 ; N uniFE79 ; G 5235 -U 65146 ; WX 293 ; N uniFE7A ; G 5236 -U 65147 ; WX 293 ; N uniFE7B ; G 5237 -U 65148 ; WX 293 ; N uniFE7C ; G 5238 -U 65149 ; WX 293 ; N uniFE7D ; G 5239 -U 65150 ; WX 293 ; N uniFE7E ; G 5240 -U 65151 ; WX 293 ; N uniFE7F ; G 5241 -U 65152 ; WX 470 ; N uniFE80 ; G 5242 -U 65153 ; WX 278 ; N uniFE81 ; G 5243 -U 65154 ; WX 305 ; N uniFE82 ; G 5244 -U 65155 ; WX 278 ; N uniFE83 ; G 5245 -U 65156 ; WX 305 ; N uniFE84 ; G 5246 -U 65157 ; WX 483 ; N uniFE85 ; G 5247 -U 65158 ; WX 517 ; N uniFE86 ; G 5248 -U 65159 ; WX 278 ; N uniFE87 ; G 5249 -U 65160 ; WX 305 ; N uniFE88 ; G 5250 -U 65161 ; WX 783 ; N uniFE89 ; G 5251 -U 65162 ; WX 833 ; N uniFE8A ; G 5252 -U 65163 ; WX 278 ; N uniFE8B ; G 5253 -U 65164 ; WX 302 ; N uniFE8C ; G 5254 -U 65165 ; WX 278 ; N uniFE8D ; G 5255 -U 65166 ; WX 305 ; N uniFE8E ; G 5256 -U 65167 ; WX 941 ; N uniFE8F ; G 5257 -U 65168 ; WX 982 ; N uniFE90 ; G 5258 -U 65169 ; WX 278 ; N uniFE91 ; G 5259 -U 65170 ; WX 302 ; N uniFE92 ; G 5260 -U 65171 ; WX 524 ; N uniFE93 ; G 5261 -U 65172 ; WX 536 ; N uniFE94 ; G 5262 -U 65173 ; WX 941 ; N uniFE95 ; G 5263 -U 65174 ; WX 982 ; N uniFE96 ; G 5264 -U 65175 ; WX 278 ; N uniFE97 ; G 5265 -U 65176 ; WX 302 ; N uniFE98 ; G 5266 -U 65177 ; WX 941 ; N uniFE99 ; G 5267 -U 65178 ; WX 982 ; N uniFE9A ; G 5268 -U 65179 ; WX 278 ; N uniFE9B ; G 5269 -U 65180 ; WX 302 ; N uniFE9C ; G 5270 -U 65181 ; WX 646 ; N uniFE9D ; G 5271 -U 65182 ; WX 646 ; N uniFE9E ; G 5272 -U 65183 ; WX 618 ; N uniFE9F ; G 5273 -U 65184 ; WX 646 ; N uniFEA0 ; G 5274 -U 65185 ; WX 646 ; N uniFEA1 ; G 5275 -U 65186 ; WX 646 ; N uniFEA2 ; G 5276 -U 65187 ; WX 618 ; N uniFEA3 ; G 5277 -U 65188 ; WX 646 ; N uniFEA4 ; G 5278 -U 65189 ; WX 646 ; N uniFEA5 ; G 5279 -U 65190 ; WX 646 ; N uniFEA6 ; G 5280 -U 65191 ; WX 618 ; N uniFEA7 ; G 5281 -U 65192 ; WX 646 ; N uniFEA8 ; G 5282 -U 65193 ; WX 445 ; N uniFEA9 ; G 5283 -U 65194 ; WX 525 ; N uniFEAA ; G 5284 -U 65195 ; WX 445 ; N uniFEAB ; G 5285 -U 65196 ; WX 525 ; N uniFEAC ; G 5286 -U 65197 ; WX 483 ; N uniFEAD ; G 5287 -U 65198 ; WX 552 ; N uniFEAE ; G 5288 -U 65199 ; WX 483 ; N uniFEAF ; G 5289 -U 65200 ; WX 552 ; N uniFEB0 ; G 5290 -U 65201 ; WX 1221 ; N uniFEB1 ; G 5291 -U 65202 ; WX 1275 ; N uniFEB2 ; G 5292 -U 65203 ; WX 838 ; N uniFEB3 ; G 5293 -U 65204 ; WX 892 ; N uniFEB4 ; G 5294 -U 65205 ; WX 1221 ; N uniFEB5 ; G 5295 -U 65206 ; WX 1275 ; N uniFEB6 ; G 5296 -U 65207 ; WX 838 ; N uniFEB7 ; G 5297 -U 65208 ; WX 892 ; N uniFEB8 ; G 5298 -U 65209 ; WX 1209 ; N uniFEB9 ; G 5299 -U 65210 ; WX 1225 ; N uniFEBA ; G 5300 -U 65211 ; WX 849 ; N uniFEBB ; G 5301 -U 65212 ; WX 867 ; N uniFEBC ; G 5302 -U 65213 ; WX 1209 ; N uniFEBD ; G 5303 -U 65214 ; WX 1225 ; N uniFEBE ; G 5304 -U 65215 ; WX 849 ; N uniFEBF ; G 5305 -U 65216 ; WX 867 ; N uniFEC0 ; G 5306 -U 65217 ; WX 925 ; N uniFEC1 ; G 5307 -U 65218 ; WX 949 ; N uniFEC2 ; G 5308 -U 65219 ; WX 796 ; N uniFEC3 ; G 5309 -U 65220 ; WX 820 ; N uniFEC4 ; G 5310 -U 65221 ; WX 925 ; N uniFEC5 ; G 5311 -U 65222 ; WX 949 ; N uniFEC6 ; G 5312 -U 65223 ; WX 796 ; N uniFEC7 ; G 5313 -U 65224 ; WX 820 ; N uniFEC8 ; G 5314 -U 65225 ; WX 597 ; N uniFEC9 ; G 5315 -U 65226 ; WX 532 ; N uniFECA ; G 5316 -U 65227 ; WX 597 ; N uniFECB ; G 5317 -U 65228 ; WX 482 ; N uniFECC ; G 5318 -U 65229 ; WX 597 ; N uniFECD ; G 5319 -U 65230 ; WX 532 ; N uniFECE ; G 5320 -U 65231 ; WX 523 ; N uniFECF ; G 5321 -U 65232 ; WX 482 ; N uniFED0 ; G 5322 -U 65233 ; WX 1037 ; N uniFED1 ; G 5323 -U 65234 ; WX 1035 ; N uniFED2 ; G 5324 -U 65235 ; WX 478 ; N uniFED3 ; G 5325 -U 65236 ; WX 506 ; N uniFED4 ; G 5326 -U 65237 ; WX 776 ; N uniFED5 ; G 5327 -U 65238 ; WX 834 ; N uniFED6 ; G 5328 -U 65239 ; WX 478 ; N uniFED7 ; G 5329 -U 65240 ; WX 506 ; N uniFED8 ; G 5330 -U 65241 ; WX 824 ; N uniFED9 ; G 5331 -U 65242 ; WX 843 ; N uniFEDA ; G 5332 -U 65243 ; WX 476 ; N uniFEDB ; G 5333 -U 65244 ; WX 552 ; N uniFEDC ; G 5334 -U 65245 ; WX 727 ; N uniFEDD ; G 5335 -U 65246 ; WX 757 ; N uniFEDE ; G 5336 -U 65247 ; WX 305 ; N uniFEDF ; G 5337 -U 65248 ; WX 331 ; N uniFEE0 ; G 5338 -U 65249 ; WX 619 ; N uniFEE1 ; G 5339 -U 65250 ; WX 666 ; N uniFEE2 ; G 5340 -U 65251 ; WX 536 ; N uniFEE3 ; G 5341 -U 65252 ; WX 578 ; N uniFEE4 ; G 5342 -U 65253 ; WX 734 ; N uniFEE5 ; G 5343 -U 65254 ; WX 761 ; N uniFEE6 ; G 5344 -U 65255 ; WX 278 ; N uniFEE7 ; G 5345 -U 65256 ; WX 302 ; N uniFEE8 ; G 5346 -U 65257 ; WX 524 ; N uniFEE9 ; G 5347 -U 65258 ; WX 536 ; N uniFEEA ; G 5348 -U 65259 ; WX 527 ; N uniFEEB ; G 5349 -U 65260 ; WX 461 ; N uniFEEC ; G 5350 -U 65261 ; WX 483 ; N uniFEED ; G 5351 -U 65262 ; WX 517 ; N uniFEEE ; G 5352 -U 65263 ; WX 783 ; N uniFEEF ; G 5353 -U 65264 ; WX 833 ; N uniFEF0 ; G 5354 -U 65265 ; WX 783 ; N uniFEF1 ; G 5355 -U 65266 ; WX 833 ; N uniFEF2 ; G 5356 -U 65267 ; WX 278 ; N uniFEF3 ; G 5357 -U 65268 ; WX 302 ; N uniFEF4 ; G 5358 -U 65269 ; WX 570 ; N uniFEF5 ; G 5359 -U 65270 ; WX 597 ; N uniFEF6 ; G 5360 -U 65271 ; WX 570 ; N uniFEF7 ; G 5361 -U 65272 ; WX 597 ; N uniFEF8 ; G 5362 -U 65273 ; WX 570 ; N uniFEF9 ; G 5363 -U 65274 ; WX 597 ; N uniFEFA ; G 5364 -U 65275 ; WX 570 ; N uniFEFB ; G 5365 -U 65276 ; WX 597 ; N uniFEFC ; G 5366 -U 65279 ; WX 0 ; N uniFEFF ; G 5367 -U 65529 ; WX 0 ; N uniFFF9 ; G 5368 -U 65530 ; WX 0 ; N uniFFFA ; G 5369 -U 65531 ; WX 0 ; N uniFFFB ; G 5370 -U 65532 ; WX 0 ; N uniFFFC ; G 5371 -U 65533 ; WX 1025 ; N uniFFFD ; G 5372 -EndCharMetrics -StartKernData -StartKernPairs 2727 - -KPX dollar dollar 57 -KPX dollar ampersand -36 -KPX dollar asterisk -36 -KPX dollar two -36 -KPX dollar four -36 -KPX dollar seven -159 -KPX dollar nine -131 -KPX dollar colon -112 -KPX dollar less -159 -KPX dollar F -36 -KPX dollar G -36 -KPX dollar H -36 -KPX dollar I -73 -KPX dollar R -36 -KPX dollar T -36 -KPX dollar W -36 -KPX dollar Y -120 -KPX dollar Z -83 -KPX dollar backslash -139 -KPX dollar m -73 -KPX dollar copyright -36 -KPX dollar ordfeminine -36 -KPX dollar guillemotleft -36 -KPX dollar logicalnot -36 -KPX dollar sfthyphen -36 -KPX dollar acute -36 -KPX dollar mu -36 -KPX dollar paragraph -36 -KPX dollar periodcentered -36 -KPX dollar cedilla -36 -KPX dollar questiondown -139 -KPX dollar Aacute -139 -KPX dollar Acircumflex 57 -KPX dollar Adieresis 57 -KPX dollar AE 57 -KPX dollar Egrave -36 -KPX dollar Eacute -36 -KPX dollar Ecircumflex -36 -KPX dollar Edieresis -36 -KPX dollar Igrave -36 -KPX dollar Iacute -36 -KPX dollar Icircumflex -36 -KPX dollar Idieresis -36 -KPX dollar Ntilde -36 -KPX dollar Oacute -36 -KPX dollar Otilde -36 -KPX dollar multiply -36 -KPX dollar Ugrave -36 -KPX dollar Ucircumflex -36 -KPX dollar Yacute -36 -KPX dollar Thorn -36 -KPX dollar agrave -36 -KPX dollar acircumflex -36 -KPX dollar Dcaron -36 -KPX dollar dcaron -36 -KPX dollar Dcroat -36 -KPX dollar dmacron -36 -KPX dollar Emacron -36 -KPX dollar emacron -36 -KPX dollar Hcircumflex -159 -KPX dollar hcircumflex -36 -KPX dollar Hbar -159 -KPX dollar hbar -36 -KPX dollar Kcommaaccent -112 -KPX dollar kcommaaccent -83 -KPX dollar kgreenlandic -159 -KPX dollar Lacute -139 -KPX dollar lacute -159 -KPX dollar uni0188 -36 -KPX dollar uni01AC -36 -KPX dollar uni01AD -36 -KPX dollar uni01AE -36 -KPX dollar Uhorn -36 -KPX dollar uni01DC -159 -KPX dollar uni01DD -36 -KPX dollar uni01F0 -36 -KPX dollar uni01F3 -36 -KPX dollar uni01F4 -159 -KPX dollar uni01F5 -139 - -KPX percent ampersand -36 -KPX percent asterisk -36 -KPX percent two -36 -KPX percent six -36 -KPX percent nine -63 -KPX percent colon -73 -KPX percent less -112 -KPX percent m -63 -KPX percent braceright -36 -KPX percent Egrave -36 -KPX percent Ecircumflex -36 -KPX percent Igrave -36 -KPX percent Icircumflex -36 -KPX percent Thorn -36 -KPX percent agrave -36 -KPX percent acircumflex -36 -KPX percent adieresis -36 -KPX percent Dcaron -36 -KPX percent Dcroat -36 -KPX percent Emacron -36 -KPX percent Gcircumflex -36 -KPX percent Gbreve -36 -KPX percent Gdotaccent -36 -KPX percent Gcommaaccent -36 -KPX percent Kcommaaccent -73 -KPX percent kgreenlandic -112 -KPX percent lacute -112 -KPX percent uni01AC -36 -KPX percent uni01AE -36 -KPX percent uni01DA -36 -KPX percent uni01F0 -36 - -KPX ampersand less -36 -KPX ampersand m -36 -KPX ampersand braceright -36 -KPX ampersand kgreenlandic -36 -KPX ampersand lacute -36 -KPX ampersand uni01F4 -36 - -KPX quotesingle dollar -36 -KPX quotesingle nine -36 -KPX quotesingle less -112 -KPX quotesingle m -36 -KPX quotesingle braceright -36 -KPX quotesingle Acircumflex -36 -KPX quotesingle Adieresis -36 -KPX quotesingle AE -36 -KPX quotesingle kgreenlandic -112 -KPX quotesingle lacute -112 -KPX quotesingle uni01F4 -112 - -KPX parenright dollar -188 -KPX parenright six -36 -KPX parenright seven -36 -KPX parenright D -188 -KPX parenright H -112 -KPX parenright L -149 -KPX parenright R -73 -KPX parenright U -149 -KPX parenright X -112 -KPX parenright backslash -188 -KPX parenright cent -188 -KPX parenright sterling -188 -KPX parenright currency -188 -KPX parenright yen -188 -KPX parenright brokenbar -188 -KPX parenright section -188 -KPX parenright ordfeminine -112 -KPX parenright guillemotleft -112 -KPX parenright logicalnot -112 -KPX parenright sfthyphen -112 -KPX parenright acute -73 -KPX parenright mu -73 -KPX parenright paragraph -73 -KPX parenright periodcentered -73 -KPX parenright cedilla -73 -KPX parenright guillemotright -112 -KPX parenright onequarter -112 -KPX parenright onehalf -112 -KPX parenright threequarters -112 -KPX parenright questiondown -188 -KPX parenright Aacute -188 -KPX parenright Acircumflex -188 -KPX parenright Atilde -188 -KPX parenright Adieresis -188 -KPX parenright Aring -188 -KPX parenright AE -188 -KPX parenright Ccedilla -188 -KPX parenright Otilde -112 -KPX parenright multiply -112 -KPX parenright Ugrave -112 -KPX parenright Ucircumflex -112 -KPX parenright Yacute -112 -KPX parenright ntilde -149 -KPX parenright otilde -149 -KPX parenright dcaron -73 -KPX parenright dmacron -73 -KPX parenright emacron -73 -KPX parenright edotaccent -149 -KPX parenright eogonek -149 -KPX parenright ecaron -149 -KPX parenright Gcircumflex -36 -KPX parenright Gbreve -36 -KPX parenright Gdotaccent -36 -KPX parenright Gcommaaccent -36 -KPX parenright Hcircumflex -36 -KPX parenright Hbar -36 -KPX parenright Itilde -36 -KPX parenright imacron -112 -KPX parenright ibreve -112 -KPX parenright iogonek -112 -KPX parenright dotlessi -112 -KPX parenright ij -112 -KPX parenright jcircumflex -112 -KPX parenright Lacute -188 -KPX parenright uni01AD -73 -KPX parenright Uhorn -73 -KPX parenright uni01DA -36 -KPX parenright uni01DC -36 -KPX parenright uni01F1 -73 -KPX parenright uni01F5 -188 - -KPX asterisk seven -73 -KPX asterisk less -102 -KPX asterisk m -36 -KPX asterisk braceright -36 -KPX asterisk Hbar -73 -KPX asterisk lacute -102 - - -KPX hyphen dollar -36 -KPX hyphen m -36 -KPX hyphen braceright -36 - -KPX period dollar -36 -KPX period ampersand -112 -KPX period two -112 -KPX period seven -159 -KPX period eight -55 -KPX period colon -73 -KPX period less -73 -KPX period D -36 -KPX period H -102 -KPX period R -102 -KPX period X -102 -KPX period backslash -149 -KPX period m -131 -KPX period cent -36 -KPX period sterling -36 -KPX period currency -36 -KPX period yen -36 -KPX period brokenbar -36 -KPX period section -36 -KPX period ordfeminine -102 -KPX period guillemotleft -102 -KPX period logicalnot -102 -KPX period sfthyphen -102 -KPX period acute -102 -KPX period mu -102 -KPX period paragraph -102 -KPX period periodcentered -102 -KPX period cedilla -102 -KPX period guillemotright -102 -KPX period onequarter -102 -KPX period onehalf -102 -KPX period threequarters -102 -KPX period questiondown -149 -KPX period Aacute -149 -KPX period Egrave -112 -KPX period Icircumflex -112 -KPX period Yacute -102 -KPX period Hbar -159 -KPX period Idot -55 -KPX period dotlessi -102 -KPX period lacute -73 - -KPX slash dollar 47 -KPX slash two -73 -KPX slash seven -282 -KPX slash eight -102 -KPX slash nine -225 -KPX slash colon -188 -KPX slash less -272 -KPX slash H -36 -KPX slash R -36 -KPX slash X -36 -KPX slash backslash -188 -KPX slash ordfeminine -36 -KPX slash guillemotleft -36 -KPX slash logicalnot -36 -KPX slash sfthyphen -36 -KPX slash acute -36 -KPX slash mu -36 -KPX slash paragraph -36 -KPX slash periodcentered -36 -KPX slash cedilla -36 -KPX slash guillemotright -36 -KPX slash onequarter -36 -KPX slash onehalf -36 -KPX slash threequarters -36 -KPX slash questiondown -188 -KPX slash Aacute -188 -KPX slash Yacute -36 -KPX slash Hbar -282 -KPX slash Idot -102 -KPX slash dotlessi -36 -KPX slash lacute -272 - -KPX two dollar -36 -KPX two nine -36 -KPX two semicolon -131 -KPX two less -112 -KPX two m -36 -KPX two lacute -112 - -KPX three dollar -131 -KPX three less -45 -KPX three D -92 -KPX three H -73 -KPX three L -45 -KPX three Q -36 -KPX three R -73 -KPX three U -36 -KPX three V -36 -KPX three X -36 -KPX three m -36 -KPX three cent -92 -KPX three sterling -92 -KPX three currency -92 -KPX three yen -92 -KPX three brokenbar -92 -KPX three section -92 -KPX three ordfeminine -73 -KPX three guillemotleft -73 -KPX three logicalnot -73 -KPX three sfthyphen -73 -KPX three threesuperior -36 -KPX three acute -73 -KPX three mu -73 -KPX three paragraph -73 -KPX three periodcentered -73 -KPX three cedilla -73 -KPX three guillemotright -36 -KPX three onequarter -36 -KPX three onehalf -36 -KPX three threequarters -36 -KPX three Yacute -73 -KPX three Cdotaccent -36 -KPX three edotaccent -36 -KPX three ecaron -36 -KPX three gdotaccent -36 -KPX three gcommaaccent -36 -KPX three dotlessi -36 -KPX three lacute -45 - - -KPX five dollar -83 -KPX five ampersand -102 -KPX five seven -149 -KPX five nine -112 -KPX five colon -83 -KPX five less -131 -KPX five D -45 -KPX five H -92 -KPX five R -92 -KPX five X -92 -KPX five backslash -112 -KPX five m -112 -KPX five braceright -36 -KPX five cent -45 -KPX five sterling -45 -KPX five currency -45 -KPX five yen -45 -KPX five brokenbar -45 -KPX five section -45 -KPX five ordfeminine -92 -KPX five guillemotleft -92 -KPX five logicalnot -92 -KPX five sfthyphen -92 -KPX five acute -92 -KPX five mu -92 -KPX five paragraph -92 -KPX five periodcentered -92 -KPX five cedilla -92 -KPX five guillemotright -92 -KPX five onequarter -92 -KPX five onehalf -92 -KPX five threequarters -92 -KPX five questiondown -112 -KPX five Aacute -112 -KPX five Egrave -102 -KPX five Icircumflex -102 -KPX five Yacute -92 -KPX five Hbar -149 -KPX five dotlessi -92 -KPX five lacute -131 - -KPX six dollar 38 - -KPX seven dollar -159 -KPX seven ampersand -120 -KPX seven seven -36 -KPX seven D -339 -KPX seven F -348 -KPX seven H -348 -KPX seven L -63 -KPX seven R -348 -KPX seven U -301 -KPX seven V -339 -KPX seven X -311 -KPX seven Z -339 -KPX seven backslash -319 -KPX seven m -188 -KPX seven braceright -112 -KPX seven cent -239 -KPX seven sterling -339 -KPX seven currency -239 -KPX seven yen -239 -KPX seven brokenbar -239 -KPX seven section -239 -KPX seven copyright -348 -KPX seven ordfeminine -288 -KPX seven guillemotleft -348 -KPX seven logicalnot -288 -KPX seven sfthyphen -288 -KPX seven acute -268 -KPX seven mu -348 -KPX seven paragraph -268 -KPX seven periodcentered -268 -KPX seven cedilla -268 -KPX seven guillemotright -281 -KPX seven onequarter -311 -KPX seven onehalf -281 -KPX seven threequarters -281 -KPX seven questiondown -319 -KPX seven Aacute -319 -KPX seven Egrave -120 -KPX seven Eacute -348 -KPX seven Icircumflex -120 -KPX seven Idieresis -348 -KPX seven Yacute -348 -KPX seven edotaccent -301 -KPX seven ecaron -301 -KPX seven gdotaccent -339 -KPX seven gcommaaccent -339 -KPX seven Hbar -36 -KPX seven dotlessi -311 - -KPX eight equal -36 -KPX eight Ldot -36 - -KPX nine dollar -131 -KPX nine two -36 -KPX nine D -159 -KPX nine H -159 -KPX nine L -45 -KPX nine R -159 -KPX nine X -139 -KPX nine backslash -55 -KPX nine m -178 -KPX nine braceright -112 -KPX nine cent -159 -KPX nine sterling -159 -KPX nine currency -159 -KPX nine yen -159 -KPX nine brokenbar -159 -KPX nine section -159 -KPX nine ordfeminine -159 -KPX nine guillemotleft -159 -KPX nine logicalnot -159 -KPX nine sfthyphen -159 -KPX nine acute -159 -KPX nine mu -159 -KPX nine paragraph -159 -KPX nine periodcentered -159 -KPX nine cedilla -159 -KPX nine guillemotright -139 -KPX nine onequarter -139 -KPX nine onehalf -139 -KPX nine threequarters -139 -KPX nine questiondown -55 -KPX nine Aacute -55 -KPX nine Yacute -159 -KPX nine dotlessi -139 - -KPX colon dollar -112 -KPX colon D -131 -KPX colon H -120 -KPX colon L -45 -KPX colon R -120 -KPX colon U -92 -KPX colon X -73 -KPX colon backslash -36 -KPX colon m -112 -KPX colon braceright -36 -KPX colon cent -131 -KPX colon sterling -131 -KPX colon currency -131 -KPX colon yen -131 -KPX colon brokenbar -131 -KPX colon section -131 -KPX colon ordfeminine -120 -KPX colon guillemotleft -120 -KPX colon logicalnot -120 -KPX colon sfthyphen -120 -KPX colon acute -120 -KPX colon mu -120 -KPX colon paragraph -120 -KPX colon periodcentered -120 -KPX colon cedilla -120 -KPX colon guillemotright -73 -KPX colon onequarter -73 -KPX colon onehalf -73 -KPX colon threequarters -73 -KPX colon questiondown -36 -KPX colon Aacute -36 -KPX colon Yacute -120 -KPX colon edotaccent -92 -KPX colon ecaron -92 -KPX colon dotlessi -73 - -KPX semicolon ampersand -149 -KPX semicolon two -131 -KPX semicolon seven -36 -KPX semicolon H -92 -KPX semicolon m -112 -KPX semicolon ordfeminine -92 -KPX semicolon guillemotleft -92 -KPX semicolon logicalnot -92 -KPX semicolon sfthyphen -92 -KPX semicolon Egrave -149 -KPX semicolon Icircumflex -149 -KPX semicolon Yacute -92 -KPX semicolon Hbar -36 - -KPX less dollar -159 -KPX less ampersand -112 -KPX less two -112 -KPX less D -282 -KPX less H -272 -KPX less L -73 -KPX less R -272 -KPX less X -235 -KPX less m -225 -KPX less braceright -149 -KPX less cent -282 -KPX less sterling -282 -KPX less currency -282 -KPX less yen -282 -KPX less brokenbar -282 -KPX less section -282 -KPX less ordfeminine -272 -KPX less guillemotleft -272 -KPX less logicalnot -272 -KPX less sfthyphen -272 -KPX less acute -272 -KPX less mu -272 -KPX less paragraph -272 -KPX less periodcentered -272 -KPX less cedilla -272 -KPX less guillemotright -235 -KPX less onequarter -235 -KPX less onehalf -235 -KPX less threequarters -235 -KPX less Egrave -112 -KPX less Icircumflex -112 -KPX less Yacute -272 -KPX less dotlessi -235 - - -KPX H bracketleft -36 - -KPX I W -36 -KPX I Z -36 -KPX I backslash -36 -KPX I m -73 -KPX I braceright -36 -KPX I questiondown -36 -KPX I Aacute -36 -KPX I hbar -36 - -KPX N D -36 -KPX N H -73 -KPX N R -73 -KPX N X -63 -KPX N backslash -73 -KPX N cent -36 -KPX N sterling -36 -KPX N currency -36 -KPX N yen -36 -KPX N brokenbar -36 -KPX N section -36 -KPX N ordfeminine -73 -KPX N guillemotleft -73 -KPX N logicalnot -73 -KPX N sfthyphen -73 -KPX N acute -73 -KPX N mu -73 -KPX N paragraph -73 -KPX N periodcentered -73 -KPX N cedilla -73 -KPX N guillemotright -63 -KPX N onequarter -63 -KPX N onehalf -63 -KPX N threequarters -63 -KPX N questiondown -73 -KPX N Aacute -73 -KPX N Yacute -73 -KPX N dotlessi -63 - - -KPX R bracketleft -63 - -KPX U F -45 -KPX U G -36 -KPX U H -45 -KPX U J -36 -KPX U K -36 -KPX U P -36 -KPX U Q -36 -KPX U R -45 -KPX U T -36 -KPX U U -36 -KPX U bracketleft -55 -KPX U m -73 -KPX U copyright -45 -KPX U ordfeminine -45 -KPX U guillemotleft -45 -KPX U logicalnot -45 -KPX U sfthyphen -45 -KPX U threesuperior -36 -KPX U acute -45 -KPX U mu -45 -KPX U paragraph -45 -KPX U periodcentered -45 -KPX U cedilla -45 -KPX U Eacute -45 -KPX U Idieresis -45 -KPX U Ntilde 72 -KPX U Yacute -45 -KPX U aacute -36 -KPX U Cdotaccent -36 -KPX U edotaccent -36 -KPX U ecaron -36 - -KPX Y m -36 -KPX Y braceright -36 - -KPX Z m -36 -KPX Z braceright -36 - -KPX bracketleft F -36 -KPX bracketleft H -63 -KPX bracketleft R -63 -KPX bracketleft copyright -36 -KPX bracketleft ordfeminine -63 -KPX bracketleft guillemotleft -63 -KPX bracketleft logicalnot -63 -KPX bracketleft sfthyphen -63 -KPX bracketleft acute -63 -KPX bracketleft mu -63 -KPX bracketleft paragraph -63 -KPX bracketleft periodcentered -63 -KPX bracketleft cedilla -63 -KPX bracketleft Eacute -36 -KPX bracketleft Idieresis -36 -KPX bracketleft Yacute -63 - -KPX backslash m -36 -KPX backslash braceright -36 - -KPX m percent -36 -KPX m ampersand -36 -KPX m quotesingle -36 -KPX m asterisk -36 -KPX m hyphen -36 -KPX m seven -112 -KPX m nine -112 -KPX m colon -36 -KPX m less -149 -KPX m Y -36 -KPX m Z -36 -KPX m backslash -36 -KPX m questiondown -36 -KPX m Aacute -36 -KPX m Egrave -36 -KPX m Icircumflex -36 -KPX m Eth -36 -KPX m agrave -36 -KPX m Hbar -112 -KPX m lacute -149 - -KPX braceright dollar -73 -KPX braceright percent -73 -KPX braceright ampersand -36 -KPX braceright quotesingle -36 -KPX braceright hyphen -36 -KPX braceright two -36 -KPX braceright seven -188 -KPX braceright nine -178 -KPX braceright colon -112 -KPX braceright semicolon -112 -KPX braceright less -225 -KPX braceright Y -36 -KPX braceright Z -36 -KPX braceright backslash -36 -KPX braceright questiondown -36 -KPX braceright Aacute -36 -KPX braceright Egrave -36 -KPX braceright Icircumflex -36 -KPX braceright Eth -36 -KPX braceright Hbar -188 -KPX braceright lacute -225 - - - -KPX ordfeminine bracketleft -36 - -KPX guillemotleft bracketleft -36 - -KPX logicalnot bracketleft -36 - -KPX sfthyphen bracketleft -36 - - - -KPX acute bracketleft -63 - -KPX mu bracketleft -63 - -KPX paragraph bracketleft -63 - -KPX periodcentered bracketleft -63 - -KPX cedilla bracketleft -63 - -KPX questiondown m -36 -KPX questiondown braceright -36 - -KPX Aacute m -36 -KPX Aacute braceright -36 - -KPX Acircumflex dollar 57 -KPX Acircumflex ampersand -36 -KPX Acircumflex asterisk -36 -KPX Acircumflex two -36 -KPX Acircumflex four -36 -KPX Acircumflex seven -159 -KPX Acircumflex nine -131 -KPX Acircumflex colon -112 -KPX Acircumflex less -159 -KPX Acircumflex F -36 -KPX Acircumflex G -36 -KPX Acircumflex H -36 -KPX Acircumflex I -73 -KPX Acircumflex R -36 -KPX Acircumflex T -36 -KPX Acircumflex W -36 -KPX Acircumflex Y -120 -KPX Acircumflex Z -83 -KPX Acircumflex backslash -139 -KPX Acircumflex m -73 -KPX Acircumflex copyright -36 -KPX Acircumflex ordfeminine -36 -KPX Acircumflex guillemotleft -36 -KPX Acircumflex logicalnot -36 -KPX Acircumflex sfthyphen -36 -KPX Acircumflex acute -36 -KPX Acircumflex mu -36 -KPX Acircumflex paragraph -36 -KPX Acircumflex periodcentered -36 -KPX Acircumflex cedilla -36 -KPX Acircumflex questiondown -139 -KPX Acircumflex Aacute -139 -KPX Acircumflex Acircumflex 57 -KPX Acircumflex Adieresis 57 -KPX Acircumflex AE 57 -KPX Acircumflex Egrave -36 -KPX Acircumflex Ecircumflex -36 -KPX Acircumflex Igrave -36 -KPX Acircumflex Iacute -36 -KPX Acircumflex Icircumflex -36 -KPX Acircumflex Ntilde -36 -KPX Acircumflex Oacute -36 -KPX Acircumflex Otilde -36 -KPX Acircumflex multiply -36 -KPX Acircumflex Ugrave -36 -KPX Acircumflex Ucircumflex -36 -KPX Acircumflex Yacute -36 -KPX Acircumflex Thorn -36 -KPX Acircumflex acircumflex -36 -KPX Acircumflex Dcaron -36 -KPX Acircumflex dcaron -36 -KPX Acircumflex Dcroat -36 -KPX Acircumflex dmacron -36 -KPX Acircumflex Emacron -36 -KPX Acircumflex emacron -36 -KPX Acircumflex Hcircumflex -159 -KPX Acircumflex hcircumflex -36 -KPX Acircumflex Hbar -159 -KPX Acircumflex hbar -36 -KPX Acircumflex Kcommaaccent -112 -KPX Acircumflex kcommaaccent -83 -KPX Acircumflex kgreenlandic -159 -KPX Acircumflex Lacute -139 -KPX Acircumflex lacute -159 -KPX Acircumflex uni01F0 -36 -KPX Acircumflex uni01F1 -36 - -KPX Adieresis dollar 57 -KPX Adieresis ampersand -36 -KPX Adieresis asterisk -36 -KPX Adieresis two -36 -KPX Adieresis four -36 -KPX Adieresis seven -159 -KPX Adieresis nine -131 -KPX Adieresis colon -112 -KPX Adieresis less -159 -KPX Adieresis F -36 -KPX Adieresis G -36 -KPX Adieresis H -36 -KPX Adieresis I -73 -KPX Adieresis R -36 -KPX Adieresis T -36 -KPX Adieresis W -36 -KPX Adieresis Y -120 -KPX Adieresis Z -83 -KPX Adieresis backslash -139 -KPX Adieresis m -73 -KPX Adieresis copyright -36 -KPX Adieresis ordfeminine -36 -KPX Adieresis guillemotleft -36 -KPX Adieresis logicalnot -36 -KPX Adieresis sfthyphen -36 -KPX Adieresis acute -36 -KPX Adieresis mu -36 -KPX Adieresis paragraph -36 -KPX Adieresis periodcentered -36 -KPX Adieresis cedilla -36 -KPX Adieresis questiondown -139 -KPX Adieresis Aacute -139 -KPX Adieresis Acircumflex 57 -KPX Adieresis Adieresis 57 -KPX Adieresis AE 57 -KPX Adieresis Egrave -36 -KPX Adieresis Ecircumflex -36 -KPX Adieresis Igrave -36 -KPX Adieresis Iacute -36 -KPX Adieresis Icircumflex -36 -KPX Adieresis Ntilde -36 -KPX Adieresis Oacute -36 -KPX Adieresis Otilde -36 -KPX Adieresis multiply -36 -KPX Adieresis Ugrave -36 -KPX Adieresis Ucircumflex -36 -KPX Adieresis Yacute -36 -KPX Adieresis Thorn -36 -KPX Adieresis acircumflex -36 -KPX Adieresis Dcaron -36 -KPX Adieresis dcaron -36 -KPX Adieresis Dcroat -36 -KPX Adieresis dmacron -36 -KPX Adieresis Emacron -36 -KPX Adieresis emacron -36 -KPX Adieresis Hcircumflex -159 -KPX Adieresis hcircumflex -36 -KPX Adieresis Hbar -159 -KPX Adieresis hbar -36 -KPX Adieresis Kcommaaccent -112 -KPX Adieresis kcommaaccent -83 -KPX Adieresis kgreenlandic -159 -KPX Adieresis Lacute -139 -KPX Adieresis lacute -159 -KPX Adieresis uni01F0 -36 -KPX Adieresis uni01F1 -36 - -KPX AE dollar 57 -KPX AE ampersand -36 -KPX AE asterisk -36 -KPX AE two -36 -KPX AE four -36 -KPX AE seven -159 -KPX AE nine -131 -KPX AE colon -112 -KPX AE less -159 -KPX AE F -36 -KPX AE G -36 -KPX AE H -36 -KPX AE I -73 -KPX AE R -36 -KPX AE T -36 -KPX AE W -36 -KPX AE Y -120 -KPX AE Z -83 -KPX AE m -73 -KPX AE copyright -36 -KPX AE ordfeminine -36 -KPX AE guillemotleft -36 -KPX AE logicalnot -36 -KPX AE sfthyphen -36 -KPX AE acute -36 -KPX AE mu -36 -KPX AE paragraph -36 -KPX AE periodcentered -36 -KPX AE cedilla -36 -KPX AE Acircumflex 57 -KPX AE Adieresis 57 -KPX AE AE 57 -KPX AE Egrave -36 -KPX AE Ecircumflex -36 -KPX AE Igrave -36 -KPX AE Iacute -36 -KPX AE Icircumflex -36 -KPX AE Ntilde -36 -KPX AE Oacute -36 -KPX AE Otilde -36 -KPX AE multiply -36 -KPX AE Ugrave -36 -KPX AE Ucircumflex -36 -KPX AE Yacute -36 -KPX AE Thorn -36 -KPX AE acircumflex -36 -KPX AE Dcaron -36 -KPX AE dcaron -36 -KPX AE Dcroat -36 -KPX AE dmacron -36 -KPX AE emacron -36 -KPX AE Hcircumflex -159 -KPX AE hcircumflex -36 -KPX AE Hbar -159 -KPX AE hbar -36 -KPX AE Kcommaaccent -112 -KPX AE kcommaaccent -83 -KPX AE kgreenlandic -159 -KPX AE lacute -159 -KPX AE uni01F0 -36 -KPX AE uni01F1 -36 - -KPX Egrave less -36 -KPX Egrave m -36 -KPX Egrave braceright -36 -KPX Egrave lacute -36 - -KPX Icircumflex less -36 -KPX Icircumflex m -36 -KPX Icircumflex braceright -36 -KPX Icircumflex lacute -36 - -KPX Eth dollar -36 -KPX Eth nine -36 -KPX Eth less -112 -KPX Eth m -36 -KPX Eth braceright -36 -KPX Eth Acircumflex -36 -KPX Eth Adieresis -36 -KPX Eth AE -36 -KPX Eth kgreenlandic -112 -KPX Eth lacute -112 -KPX Eth uni01F4 -112 - -KPX Ograve dollar -36 -KPX Ograve nine -36 -KPX Ograve less -112 -KPX Ograve m -36 -KPX Ograve braceright -36 -KPX Ograve lacute -112 - -KPX Yacute bracketleft -36 - -KPX agrave seven -73 -KPX agrave less -102 -KPX agrave m -36 -KPX agrave braceright -36 -KPX agrave Hbar -73 -KPX agrave lacute -102 - -KPX ucircumflex dollar 47 -KPX ucircumflex two -73 -KPX ucircumflex seven -282 -KPX ucircumflex eight -102 -KPX ucircumflex nine -225 -KPX ucircumflex colon -188 -KPX ucircumflex less -272 -KPX ucircumflex H -36 -KPX ucircumflex R -36 -KPX ucircumflex X -36 -KPX ucircumflex backslash -188 -KPX ucircumflex ordfeminine -36 -KPX ucircumflex guillemotleft -36 -KPX ucircumflex logicalnot -36 -KPX ucircumflex sfthyphen -36 -KPX ucircumflex acute -36 -KPX ucircumflex mu -36 -KPX ucircumflex paragraph -36 -KPX ucircumflex periodcentered -36 -KPX ucircumflex cedilla -36 -KPX ucircumflex guillemotright -36 -KPX ucircumflex onequarter -36 -KPX ucircumflex onehalf -36 -KPX ucircumflex threequarters -36 -KPX ucircumflex questiondown -188 -KPX ucircumflex Aacute -188 -KPX ucircumflex Yacute -36 -KPX ucircumflex Hbar -282 -KPX ucircumflex Idot -102 -KPX ucircumflex dotlessi -36 -KPX ucircumflex lacute -272 - -KPX ydieresis dollar 47 -KPX ydieresis two -73 -KPX ydieresis seven -282 -KPX ydieresis eight -102 -KPX ydieresis nine -225 -KPX ydieresis colon -188 -KPX ydieresis less -272 -KPX ydieresis H -36 -KPX ydieresis R -36 -KPX ydieresis X -36 -KPX ydieresis backslash -188 -KPX ydieresis ordfeminine -36 -KPX ydieresis guillemotleft -36 -KPX ydieresis logicalnot -36 -KPX ydieresis sfthyphen -36 -KPX ydieresis acute -36 -KPX ydieresis mu -36 -KPX ydieresis paragraph -36 -KPX ydieresis periodcentered -36 -KPX ydieresis cedilla -36 -KPX ydieresis guillemotright -36 -KPX ydieresis onequarter -36 -KPX ydieresis onehalf -36 -KPX ydieresis threequarters -36 -KPX ydieresis questiondown -188 -KPX ydieresis Aacute -188 -KPX ydieresis Yacute -36 -KPX ydieresis Hbar -282 -KPX ydieresis Idot -102 -KPX ydieresis dotlessi -36 -KPX ydieresis lacute -272 - -KPX Abreve O -193 - - -KPX Edotaccent dollar -83 -KPX Edotaccent ampersand -102 -KPX Edotaccent seven -149 -KPX Edotaccent nine -112 -KPX Edotaccent colon -83 -KPX Edotaccent less -131 -KPX Edotaccent D -45 -KPX Edotaccent H -92 -KPX Edotaccent R -92 -KPX Edotaccent X -92 -KPX Edotaccent backslash -112 -KPX Edotaccent m -112 -KPX Edotaccent braceright -36 -KPX Edotaccent cent -45 -KPX Edotaccent sterling -45 -KPX Edotaccent currency -45 -KPX Edotaccent yen -45 -KPX Edotaccent brokenbar -45 -KPX Edotaccent section -45 -KPX Edotaccent ordfeminine -92 -KPX Edotaccent guillemotleft -92 -KPX Edotaccent logicalnot -92 -KPX Edotaccent sfthyphen -92 -KPX Edotaccent acute -92 -KPX Edotaccent mu -92 -KPX Edotaccent paragraph -92 -KPX Edotaccent periodcentered -92 -KPX Edotaccent cedilla -92 -KPX Edotaccent guillemotright -92 -KPX Edotaccent onequarter -92 -KPX Edotaccent onehalf -92 -KPX Edotaccent threequarters -92 -KPX Edotaccent questiondown -112 -KPX Edotaccent Aacute -112 -KPX Edotaccent Egrave -102 -KPX Edotaccent Icircumflex -102 -KPX Edotaccent Yacute -92 -KPX Edotaccent Hbar -149 -KPX Edotaccent dotlessi -92 -KPX Edotaccent lacute -131 - -KPX edotaccent F -45 -KPX edotaccent G -36 -KPX edotaccent H -45 -KPX edotaccent J -36 -KPX edotaccent K -36 -KPX edotaccent P -36 -KPX edotaccent Q -36 -KPX edotaccent R -45 -KPX edotaccent T -36 -KPX edotaccent U -36 -KPX edotaccent bracketleft -55 -KPX edotaccent m -73 -KPX edotaccent copyright -45 -KPX edotaccent ordfeminine -45 -KPX edotaccent guillemotleft -45 -KPX edotaccent logicalnot -45 -KPX edotaccent sfthyphen -45 -KPX edotaccent threesuperior -36 -KPX edotaccent acute -45 -KPX edotaccent mu -45 -KPX edotaccent paragraph -45 -KPX edotaccent periodcentered -45 -KPX edotaccent cedilla -45 -KPX edotaccent Eacute -45 -KPX edotaccent Idieresis -45 -KPX edotaccent Ntilde 72 -KPX edotaccent Yacute -45 -KPX edotaccent aacute -36 -KPX edotaccent Cdotaccent -36 -KPX edotaccent edotaccent -36 -KPX edotaccent ecaron -36 - -KPX Ecaron dollar -83 -KPX Ecaron ampersand -102 -KPX Ecaron seven -149 -KPX Ecaron nine -112 -KPX Ecaron colon -83 -KPX Ecaron less -131 -KPX Ecaron D -45 -KPX Ecaron H -92 -KPX Ecaron R -92 -KPX Ecaron X -92 -KPX Ecaron backslash -112 -KPX Ecaron m -112 -KPX Ecaron braceright -36 -KPX Ecaron cent -45 -KPX Ecaron sterling -45 -KPX Ecaron currency -45 -KPX Ecaron yen -45 -KPX Ecaron brokenbar -45 -KPX Ecaron section -45 -KPX Ecaron ordfeminine -92 -KPX Ecaron guillemotleft -92 -KPX Ecaron logicalnot -92 -KPX Ecaron sfthyphen -92 -KPX Ecaron acute -92 -KPX Ecaron mu -92 -KPX Ecaron paragraph -92 -KPX Ecaron periodcentered -92 -KPX Ecaron cedilla -92 -KPX Ecaron guillemotright -92 -KPX Ecaron onequarter -92 -KPX Ecaron onehalf -92 -KPX Ecaron threequarters -92 -KPX Ecaron questiondown -112 -KPX Ecaron Aacute -112 -KPX Ecaron Egrave -102 -KPX Ecaron Icircumflex -102 -KPX Ecaron Yacute -92 -KPX Ecaron Hbar -149 -KPX Ecaron dotlessi -92 -KPX Ecaron lacute -131 - -KPX ecaron F -45 -KPX ecaron G -36 -KPX ecaron H -45 -KPX ecaron J -36 -KPX ecaron K -36 -KPX ecaron P -36 -KPX ecaron Q -36 -KPX ecaron R -45 -KPX ecaron T -36 -KPX ecaron U -36 -KPX ecaron bracketleft -55 -KPX ecaron m -73 -KPX ecaron copyright -45 -KPX ecaron ordfeminine -45 -KPX ecaron guillemotleft -45 -KPX ecaron logicalnot -45 -KPX ecaron sfthyphen -45 -KPX ecaron threesuperior -36 -KPX ecaron acute -45 -KPX ecaron mu -45 -KPX ecaron paragraph -45 -KPX ecaron periodcentered -45 -KPX ecaron cedilla -45 -KPX ecaron Eacute -45 -KPX ecaron Idieresis -45 -KPX ecaron Ntilde -36 -KPX ecaron Yacute -45 -KPX ecaron aacute -36 -KPX ecaron Cdotaccent -36 -KPX ecaron edotaccent -36 -KPX ecaron ecaron -36 - -KPX Gdotaccent dollar 38 - -KPX Gcommaaccent dollar 38 - -KPX Hbar dollar -159 -KPX Hbar ampersand -120 -KPX Hbar seven -36 -KPX Hbar D -339 -KPX Hbar F -348 -KPX Hbar H -348 -KPX Hbar L -63 -KPX Hbar R -348 -KPX Hbar U -301 -KPX Hbar V -339 -KPX Hbar X -311 -KPX Hbar Z -339 -KPX Hbar backslash -319 -KPX Hbar m -188 -KPX Hbar braceright -112 -KPX Hbar cent -339 -KPX Hbar sterling -339 -KPX Hbar currency -339 -KPX Hbar yen -339 -KPX Hbar brokenbar -339 -KPX Hbar section -339 -KPX Hbar copyright -348 -KPX Hbar ordfeminine -348 -KPX Hbar guillemotleft -348 -KPX Hbar logicalnot -348 -KPX Hbar sfthyphen -348 -KPX Hbar acute -348 -KPX Hbar mu -348 -KPX Hbar paragraph -348 -KPX Hbar periodcentered -348 -KPX Hbar cedilla -348 -KPX Hbar guillemotright -311 -KPX Hbar onequarter -311 -KPX Hbar onehalf -311 -KPX Hbar threequarters -311 -KPX Hbar questiondown -319 -KPX Hbar Aacute -319 -KPX Hbar Egrave -120 -KPX Hbar Eacute -348 -KPX Hbar Icircumflex -120 -KPX Hbar Idieresis -348 -KPX Hbar Yacute -348 -KPX Hbar edotaccent -301 -KPX Hbar ecaron -301 -KPX Hbar gdotaccent -339 -KPX Hbar gcommaaccent -339 -KPX Hbar Hbar -36 -KPX Hbar dotlessi -311 - -KPX Idot equal -36 -KPX Idot Ldot -36 - -KPX lacute dollar -159 -KPX lacute ampersand -112 -KPX lacute two -112 -KPX lacute D -282 -KPX lacute H -272 -KPX lacute L -73 -KPX lacute R -272 -KPX lacute X -235 -KPX lacute m -225 -KPX lacute braceright -149 -KPX lacute cent -282 -KPX lacute sterling -282 -KPX lacute currency -282 -KPX lacute yen -282 -KPX lacute brokenbar -282 -KPX lacute section -282 -KPX lacute ordfeminine -272 -KPX lacute guillemotleft -272 -KPX lacute logicalnot -272 -KPX lacute sfthyphen -272 -KPX lacute acute -272 -KPX lacute mu -272 -KPX lacute paragraph -272 -KPX lacute periodcentered -272 -KPX lacute cedilla -272 -KPX lacute guillemotright -235 -KPX lacute onequarter -235 -KPX lacute onehalf -235 -KPX lacute threequarters -235 -KPX lacute Egrave -112 -KPX lacute Icircumflex -112 -KPX lacute Yacute -272 -KPX lacute dotlessi -235 - -EndKernPairs -EndKernData -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSansMono-Bold.ttf b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSansMono-Bold.ttf deleted file mode 100644 index 8184ced8..00000000 Binary files a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSansMono-Bold.ttf and /dev/null differ diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSansMono-Bold.ufm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSansMono-Bold.ufm deleted file mode 100644 index d598e206..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSansMono-Bold.ufm +++ /dev/null @@ -1,3285 +0,0 @@ -StartFontMetrics 4.1 -Notice Converted by PHP-font-lib -Comment https://github.com/PhenX/php-font-lib -EncodingScheme FontSpecific -FontName DejaVu Sans Mono -FontSubfamily Bold -UniqueID DejaVu Sans Mono Bold -FullName DejaVu Sans Mono Bold -Version Version 2.37 -PostScriptName DejaVuSansMono-Bold -Manufacturer DejaVu fonts team -FontVendorURL http://dejavu.sourceforge.net -LicenseURL http://dejavu.sourceforge.net/wiki/index.php/License -Weight Bold -ItalicAngle 0 -IsFixedPitch true -UnderlineThickness 44 -UnderlinePosition -63 -FontHeightOffset 0 -Ascender 928 -Descender -236 -FontBBox -447 -394 731 1041 -StartCharMetrics 3316 -U 32 ; WX 602 ; N space ; G 3 -U 33 ; WX 602 ; N exclam ; G 4 -U 34 ; WX 602 ; N quotedbl ; G 5 -U 35 ; WX 602 ; N numbersign ; G 6 -U 36 ; WX 602 ; N dollar ; G 7 -U 37 ; WX 602 ; N percent ; G 8 -U 38 ; WX 602 ; N ampersand ; G 9 -U 39 ; WX 602 ; N quotesingle ; G 10 -U 40 ; WX 602 ; N parenleft ; G 11 -U 41 ; WX 602 ; N parenright ; G 12 -U 42 ; WX 602 ; N asterisk ; G 13 -U 43 ; WX 602 ; N plus ; G 14 -U 44 ; WX 602 ; N comma ; G 15 -U 45 ; WX 602 ; N hyphen ; G 16 -U 46 ; WX 602 ; N period ; G 17 -U 47 ; WX 602 ; N slash ; G 18 -U 48 ; WX 602 ; N zero ; G 19 -U 49 ; WX 602 ; N one ; G 20 -U 50 ; WX 602 ; N two ; G 21 -U 51 ; WX 602 ; N three ; G 22 -U 52 ; WX 602 ; N four ; G 23 -U 53 ; WX 602 ; N five ; G 24 -U 54 ; WX 602 ; N six ; G 25 -U 55 ; WX 602 ; N seven ; G 26 -U 56 ; WX 602 ; N eight ; G 27 -U 57 ; WX 602 ; N nine ; G 28 -U 58 ; WX 602 ; N colon ; G 29 -U 59 ; WX 602 ; N semicolon ; G 30 -U 60 ; WX 602 ; N less ; G 31 -U 61 ; WX 602 ; N equal ; G 32 -U 62 ; WX 602 ; N greater ; G 33 -U 63 ; WX 602 ; N question ; G 34 -U 64 ; WX 602 ; N at ; G 35 -U 65 ; WX 602 ; N A ; G 36 -U 66 ; WX 602 ; N B ; G 37 -U 67 ; WX 602 ; N C ; G 38 -U 68 ; WX 602 ; N D ; G 39 -U 69 ; WX 602 ; N E ; G 40 -U 70 ; WX 602 ; N F ; G 41 -U 71 ; WX 602 ; N G ; G 42 -U 72 ; WX 602 ; N H ; G 43 -U 73 ; WX 602 ; N I ; G 44 -U 74 ; WX 602 ; N J ; G 45 -U 75 ; WX 602 ; N K ; G 46 -U 76 ; WX 602 ; N L ; G 47 -U 77 ; WX 602 ; N M ; G 48 -U 78 ; WX 602 ; N N ; G 49 -U 79 ; WX 602 ; N O ; G 50 -U 80 ; WX 602 ; N P ; G 51 -U 81 ; WX 602 ; N Q ; G 52 -U 82 ; WX 602 ; N R ; G 53 -U 83 ; WX 602 ; N S ; G 54 -U 84 ; WX 602 ; N T ; G 55 -U 85 ; WX 602 ; N U ; G 56 -U 86 ; WX 602 ; N V ; G 57 -U 87 ; WX 602 ; N W ; G 58 -U 88 ; WX 602 ; N X ; G 59 -U 89 ; WX 602 ; N Y ; G 60 -U 90 ; WX 602 ; N Z ; G 61 -U 91 ; WX 602 ; N bracketleft ; G 62 -U 92 ; WX 602 ; N backslash ; G 63 -U 93 ; WX 602 ; N bracketright ; G 64 -U 94 ; WX 602 ; N asciicircum ; G 65 -U 95 ; WX 602 ; N underscore ; G 66 -U 96 ; WX 602 ; N grave ; G 67 -U 97 ; WX 602 ; N a ; G 68 -U 98 ; WX 602 ; N b ; G 69 -U 99 ; WX 602 ; N c ; G 70 -U 100 ; WX 602 ; N d ; G 71 -U 101 ; WX 602 ; N e ; G 72 -U 102 ; WX 602 ; N f ; G 73 -U 103 ; WX 602 ; N g ; G 74 -U 104 ; WX 602 ; N h ; G 75 -U 105 ; WX 602 ; N i ; G 76 -U 106 ; WX 602 ; N j ; G 77 -U 107 ; WX 602 ; N k ; G 78 -U 108 ; WX 602 ; N l ; G 79 -U 109 ; WX 602 ; N m ; G 80 -U 110 ; WX 602 ; N n ; G 81 -U 111 ; WX 602 ; N o ; G 82 -U 112 ; WX 602 ; N p ; G 83 -U 113 ; WX 602 ; N q ; G 84 -U 114 ; WX 602 ; N r ; G 85 -U 115 ; WX 602 ; N s ; G 86 -U 116 ; WX 602 ; N t ; G 87 -U 117 ; WX 602 ; N u ; G 88 -U 118 ; WX 602 ; N v ; G 89 -U 119 ; WX 602 ; N w ; G 90 -U 120 ; WX 602 ; N x ; G 91 -U 121 ; WX 602 ; N y ; G 92 -U 122 ; WX 602 ; N z ; G 93 -U 123 ; WX 602 ; N braceleft ; G 94 -U 124 ; WX 602 ; N bar ; G 95 -U 125 ; WX 602 ; N braceright ; G 96 -U 126 ; WX 602 ; N asciitilde ; G 97 -U 160 ; WX 602 ; N nbspace ; G 98 -U 161 ; WX 602 ; N exclamdown ; G 99 -U 162 ; WX 602 ; N cent ; G 100 -U 163 ; WX 602 ; N sterling ; G 101 -U 164 ; WX 602 ; N currency ; G 102 -U 165 ; WX 602 ; N yen ; G 103 -U 166 ; WX 602 ; N brokenbar ; G 104 -U 167 ; WX 602 ; N section ; G 105 -U 168 ; WX 602 ; N dieresis ; G 106 -U 169 ; WX 602 ; N copyright ; G 107 -U 170 ; WX 602 ; N ordfeminine ; G 108 -U 171 ; WX 602 ; N guillemotleft ; G 109 -U 172 ; WX 602 ; N logicalnot ; G 110 -U 173 ; WX 602 ; N sfthyphen ; G 111 -U 174 ; WX 602 ; N registered ; G 112 -U 175 ; WX 602 ; N macron ; G 113 -U 176 ; WX 602 ; N degree ; G 114 -U 177 ; WX 602 ; N plusminus ; G 115 -U 178 ; WX 602 ; N twosuperior ; G 116 -U 179 ; WX 602 ; N threesuperior ; G 117 -U 180 ; WX 602 ; N acute ; G 118 -U 181 ; WX 602 ; N mu ; G 119 -U 182 ; WX 602 ; N paragraph ; G 120 -U 183 ; WX 602 ; N periodcentered ; G 121 -U 184 ; WX 602 ; N cedilla ; G 122 -U 185 ; WX 602 ; N onesuperior ; G 123 -U 186 ; WX 602 ; N ordmasculine ; G 124 -U 187 ; WX 602 ; N guillemotright ; G 125 -U 188 ; WX 602 ; N onequarter ; G 126 -U 189 ; WX 602 ; N onehalf ; G 127 -U 190 ; WX 602 ; N threequarters ; G 128 -U 191 ; WX 602 ; N questiondown ; G 129 -U 192 ; WX 602 ; N Agrave ; G 130 -U 193 ; WX 602 ; N Aacute ; G 131 -U 194 ; WX 602 ; N Acircumflex ; G 132 -U 195 ; WX 602 ; N Atilde ; G 133 -U 196 ; WX 602 ; N Adieresis ; G 134 -U 197 ; WX 602 ; N Aring ; G 135 -U 198 ; WX 602 ; N AE ; G 136 -U 199 ; WX 602 ; N Ccedilla ; G 137 -U 200 ; WX 602 ; N Egrave ; G 138 -U 201 ; WX 602 ; N Eacute ; G 139 -U 202 ; WX 602 ; N Ecircumflex ; G 140 -U 203 ; WX 602 ; N Edieresis ; G 141 -U 204 ; WX 602 ; N Igrave ; G 142 -U 205 ; WX 602 ; N Iacute ; G 143 -U 206 ; WX 602 ; N Icircumflex ; G 144 -U 207 ; WX 602 ; N Idieresis ; G 145 -U 208 ; WX 602 ; N Eth ; G 146 -U 209 ; WX 602 ; N Ntilde ; G 147 -U 210 ; WX 602 ; N Ograve ; G 148 -U 211 ; WX 602 ; N Oacute ; G 149 -U 212 ; WX 602 ; N Ocircumflex ; G 150 -U 213 ; WX 602 ; N Otilde ; G 151 -U 214 ; WX 602 ; N Odieresis ; G 152 -U 215 ; WX 602 ; N multiply ; G 153 -U 216 ; WX 602 ; N Oslash ; G 154 -U 217 ; WX 602 ; N Ugrave ; G 155 -U 218 ; WX 602 ; N Uacute ; G 156 -U 219 ; WX 602 ; N Ucircumflex ; G 157 -U 220 ; WX 602 ; N Udieresis ; G 158 -U 221 ; WX 602 ; N Yacute ; G 159 -U 222 ; WX 602 ; N Thorn ; G 160 -U 223 ; WX 602 ; N germandbls ; G 161 -U 224 ; WX 602 ; N agrave ; G 162 -U 225 ; WX 602 ; N aacute ; G 163 -U 226 ; WX 602 ; N acircumflex ; G 164 -U 227 ; WX 602 ; N atilde ; G 165 -U 228 ; WX 602 ; N adieresis ; G 166 -U 229 ; WX 602 ; N aring ; G 167 -U 230 ; WX 602 ; N ae ; G 168 -U 231 ; WX 602 ; N ccedilla ; G 169 -U 232 ; WX 602 ; N egrave ; G 170 -U 233 ; WX 602 ; N eacute ; G 171 -U 234 ; WX 602 ; N ecircumflex ; G 172 -U 235 ; WX 602 ; N edieresis ; G 173 -U 236 ; WX 602 ; N igrave ; G 174 -U 237 ; WX 602 ; N iacute ; G 175 -U 238 ; WX 602 ; N icircumflex ; G 176 -U 239 ; WX 602 ; N idieresis ; G 177 -U 240 ; WX 602 ; N eth ; G 178 -U 241 ; WX 602 ; N ntilde ; G 179 -U 242 ; WX 602 ; N ograve ; G 180 -U 243 ; WX 602 ; N oacute ; G 181 -U 244 ; WX 602 ; N ocircumflex ; G 182 -U 245 ; WX 602 ; N otilde ; G 183 -U 246 ; WX 602 ; N odieresis ; G 184 -U 247 ; WX 602 ; N divide ; G 185 -U 248 ; WX 602 ; N oslash ; G 186 -U 249 ; WX 602 ; N ugrave ; G 187 -U 250 ; WX 602 ; N uacute ; G 188 -U 251 ; WX 602 ; N ucircumflex ; G 189 -U 252 ; WX 602 ; N udieresis ; G 190 -U 253 ; WX 602 ; N yacute ; G 191 -U 254 ; WX 602 ; N thorn ; G 192 -U 255 ; WX 602 ; N ydieresis ; G 193 -U 256 ; WX 602 ; N Amacron ; G 194 -U 257 ; WX 602 ; N amacron ; G 195 -U 258 ; WX 602 ; N Abreve ; G 196 -U 259 ; WX 602 ; N abreve ; G 197 -U 260 ; WX 602 ; N Aogonek ; G 198 -U 261 ; WX 602 ; N aogonek ; G 199 -U 262 ; WX 602 ; N Cacute ; G 200 -U 263 ; WX 602 ; N cacute ; G 201 -U 264 ; WX 602 ; N Ccircumflex ; G 202 -U 265 ; WX 602 ; N ccircumflex ; G 203 -U 266 ; WX 602 ; N Cdotaccent ; G 204 -U 267 ; WX 602 ; N cdotaccent ; G 205 -U 268 ; WX 602 ; N Ccaron ; G 206 -U 269 ; WX 602 ; N ccaron ; G 207 -U 270 ; WX 602 ; N Dcaron ; G 208 -U 271 ; WX 602 ; N dcaron ; G 209 -U 272 ; WX 602 ; N Dcroat ; G 210 -U 273 ; WX 602 ; N dmacron ; G 211 -U 274 ; WX 602 ; N Emacron ; G 212 -U 275 ; WX 602 ; N emacron ; G 213 -U 276 ; WX 602 ; N Ebreve ; G 214 -U 277 ; WX 602 ; N ebreve ; G 215 -U 278 ; WX 602 ; N Edotaccent ; G 216 -U 279 ; WX 602 ; N edotaccent ; G 217 -U 280 ; WX 602 ; N Eogonek ; G 218 -U 281 ; WX 602 ; N eogonek ; G 219 -U 282 ; WX 602 ; N Ecaron ; G 220 -U 283 ; WX 602 ; N ecaron ; G 221 -U 284 ; WX 602 ; N Gcircumflex ; G 222 -U 285 ; WX 602 ; N gcircumflex ; G 223 -U 286 ; WX 602 ; N Gbreve ; G 224 -U 287 ; WX 602 ; N gbreve ; G 225 -U 288 ; WX 602 ; N Gdotaccent ; G 226 -U 289 ; WX 602 ; N gdotaccent ; G 227 -U 290 ; WX 602 ; N Gcommaaccent ; G 228 -U 291 ; WX 602 ; N gcommaaccent ; G 229 -U 292 ; WX 602 ; N Hcircumflex ; G 230 -U 293 ; WX 602 ; N hcircumflex ; G 231 -U 294 ; WX 602 ; N Hbar ; G 232 -U 295 ; WX 602 ; N hbar ; G 233 -U 296 ; WX 602 ; N Itilde ; G 234 -U 297 ; WX 602 ; N itilde ; G 235 -U 298 ; WX 602 ; N Imacron ; G 236 -U 299 ; WX 602 ; N imacron ; G 237 -U 300 ; WX 602 ; N Ibreve ; G 238 -U 301 ; WX 602 ; N ibreve ; G 239 -U 302 ; WX 602 ; N Iogonek ; G 240 -U 303 ; WX 602 ; N iogonek ; G 241 -U 304 ; WX 602 ; N Idot ; G 242 -U 305 ; WX 602 ; N dotlessi ; G 243 -U 306 ; WX 602 ; N IJ ; G 244 -U 307 ; WX 602 ; N ij ; G 245 -U 308 ; WX 602 ; N Jcircumflex ; G 246 -U 309 ; WX 602 ; N jcircumflex ; G 247 -U 310 ; WX 602 ; N Kcommaaccent ; G 248 -U 311 ; WX 602 ; N kcommaaccent ; G 249 -U 312 ; WX 602 ; N kgreenlandic ; G 250 -U 313 ; WX 602 ; N Lacute ; G 251 -U 314 ; WX 602 ; N lacute ; G 252 -U 315 ; WX 602 ; N Lcommaaccent ; G 253 -U 316 ; WX 602 ; N lcommaaccent ; G 254 -U 317 ; WX 602 ; N Lcaron ; G 255 -U 318 ; WX 602 ; N lcaron ; G 256 -U 319 ; WX 602 ; N Ldot ; G 257 -U 320 ; WX 602 ; N ldot ; G 258 -U 321 ; WX 602 ; N Lslash ; G 259 -U 322 ; WX 602 ; N lslash ; G 260 -U 323 ; WX 602 ; N Nacute ; G 261 -U 324 ; WX 602 ; N nacute ; G 262 -U 325 ; WX 602 ; N Ncommaaccent ; G 263 -U 326 ; WX 602 ; N ncommaaccent ; G 264 -U 327 ; WX 602 ; N Ncaron ; G 265 -U 328 ; WX 602 ; N ncaron ; G 266 -U 329 ; WX 602 ; N napostrophe ; G 267 -U 330 ; WX 602 ; N Eng ; G 268 -U 331 ; WX 602 ; N eng ; G 269 -U 332 ; WX 602 ; N Omacron ; G 270 -U 333 ; WX 602 ; N omacron ; G 271 -U 334 ; WX 602 ; N Obreve ; G 272 -U 335 ; WX 602 ; N obreve ; G 273 -U 336 ; WX 602 ; N Ohungarumlaut ; G 274 -U 337 ; WX 602 ; N ohungarumlaut ; G 275 -U 338 ; WX 602 ; N OE ; G 276 -U 339 ; WX 602 ; N oe ; G 277 -U 340 ; WX 602 ; N Racute ; G 278 -U 341 ; WX 602 ; N racute ; G 279 -U 342 ; WX 602 ; N Rcommaaccent ; G 280 -U 343 ; WX 602 ; N rcommaaccent ; G 281 -U 344 ; WX 602 ; N Rcaron ; G 282 -U 345 ; WX 602 ; N rcaron ; G 283 -U 346 ; WX 602 ; N Sacute ; G 284 -U 347 ; WX 602 ; N sacute ; G 285 -U 348 ; WX 602 ; N Scircumflex ; G 286 -U 349 ; WX 602 ; N scircumflex ; G 287 -U 350 ; WX 602 ; N Scedilla ; G 288 -U 351 ; WX 602 ; N scedilla ; G 289 -U 352 ; WX 602 ; N Scaron ; G 290 -U 353 ; WX 602 ; N scaron ; G 291 -U 354 ; WX 602 ; N Tcommaaccent ; G 292 -U 355 ; WX 602 ; N tcommaaccent ; G 293 -U 356 ; WX 602 ; N Tcaron ; G 294 -U 357 ; WX 602 ; N tcaron ; G 295 -U 358 ; WX 602 ; N Tbar ; G 296 -U 359 ; WX 602 ; N tbar ; G 297 -U 360 ; WX 602 ; N Utilde ; G 298 -U 361 ; WX 602 ; N utilde ; G 299 -U 362 ; WX 602 ; N Umacron ; G 300 -U 363 ; WX 602 ; N umacron ; G 301 -U 364 ; WX 602 ; N Ubreve ; G 302 -U 365 ; WX 602 ; N ubreve ; G 303 -U 366 ; WX 602 ; N Uring ; G 304 -U 367 ; WX 602 ; N uring ; G 305 -U 368 ; WX 602 ; N Uhungarumlaut ; G 306 -U 369 ; WX 602 ; N uhungarumlaut ; G 307 -U 370 ; WX 602 ; N Uogonek ; G 308 -U 371 ; WX 602 ; N uogonek ; G 309 -U 372 ; WX 602 ; N Wcircumflex ; G 310 -U 373 ; WX 602 ; N wcircumflex ; G 311 -U 374 ; WX 602 ; N Ycircumflex ; G 312 -U 375 ; WX 602 ; N ycircumflex ; G 313 -U 376 ; WX 602 ; N Ydieresis ; G 314 -U 377 ; WX 602 ; N Zacute ; G 315 -U 378 ; WX 602 ; N zacute ; G 316 -U 379 ; WX 602 ; N Zdotaccent ; G 317 -U 380 ; WX 602 ; N zdotaccent ; G 318 -U 381 ; WX 602 ; N Zcaron ; G 319 -U 382 ; WX 602 ; N zcaron ; G 320 -U 383 ; WX 602 ; N longs ; G 321 -U 384 ; WX 602 ; N uni0180 ; G 322 -U 385 ; WX 602 ; N uni0181 ; G 323 -U 386 ; WX 602 ; N uni0182 ; G 324 -U 387 ; WX 602 ; N uni0183 ; G 325 -U 388 ; WX 602 ; N uni0184 ; G 326 -U 389 ; WX 602 ; N uni0185 ; G 327 -U 390 ; WX 602 ; N uni0186 ; G 328 -U 391 ; WX 602 ; N uni0187 ; G 329 -U 392 ; WX 602 ; N uni0188 ; G 330 -U 393 ; WX 602 ; N uni0189 ; G 331 -U 394 ; WX 602 ; N uni018A ; G 332 -U 395 ; WX 602 ; N uni018B ; G 333 -U 396 ; WX 602 ; N uni018C ; G 334 -U 397 ; WX 602 ; N uni018D ; G 335 -U 398 ; WX 602 ; N uni018E ; G 336 -U 399 ; WX 602 ; N uni018F ; G 337 -U 400 ; WX 602 ; N uni0190 ; G 338 -U 401 ; WX 602 ; N uni0191 ; G 339 -U 402 ; WX 602 ; N florin ; G 340 -U 403 ; WX 602 ; N uni0193 ; G 341 -U 404 ; WX 602 ; N uni0194 ; G 342 -U 405 ; WX 602 ; N uni0195 ; G 343 -U 406 ; WX 602 ; N uni0196 ; G 344 -U 407 ; WX 602 ; N uni0197 ; G 345 -U 408 ; WX 602 ; N uni0198 ; G 346 -U 409 ; WX 602 ; N uni0199 ; G 347 -U 410 ; WX 602 ; N uni019A ; G 348 -U 411 ; WX 602 ; N uni019B ; G 349 -U 412 ; WX 602 ; N uni019C ; G 350 -U 413 ; WX 602 ; N uni019D ; G 351 -U 414 ; WX 602 ; N uni019E ; G 352 -U 415 ; WX 602 ; N uni019F ; G 353 -U 416 ; WX 602 ; N Ohorn ; G 354 -U 417 ; WX 602 ; N ohorn ; G 355 -U 418 ; WX 602 ; N uni01A2 ; G 356 -U 419 ; WX 602 ; N uni01A3 ; G 357 -U 420 ; WX 602 ; N uni01A4 ; G 358 -U 421 ; WX 602 ; N uni01A5 ; G 359 -U 422 ; WX 602 ; N uni01A6 ; G 360 -U 423 ; WX 602 ; N uni01A7 ; G 361 -U 424 ; WX 602 ; N uni01A8 ; G 362 -U 425 ; WX 602 ; N uni01A9 ; G 363 -U 426 ; WX 602 ; N uni01AA ; G 364 -U 427 ; WX 602 ; N uni01AB ; G 365 -U 428 ; WX 602 ; N uni01AC ; G 366 -U 429 ; WX 602 ; N uni01AD ; G 367 -U 430 ; WX 602 ; N uni01AE ; G 368 -U 431 ; WX 602 ; N Uhorn ; G 369 -U 432 ; WX 602 ; N uhorn ; G 370 -U 433 ; WX 602 ; N uni01B1 ; G 371 -U 434 ; WX 602 ; N uni01B2 ; G 372 -U 435 ; WX 602 ; N uni01B3 ; G 373 -U 436 ; WX 602 ; N uni01B4 ; G 374 -U 437 ; WX 602 ; N uni01B5 ; G 375 -U 438 ; WX 602 ; N uni01B6 ; G 376 -U 439 ; WX 602 ; N uni01B7 ; G 377 -U 440 ; WX 602 ; N uni01B8 ; G 378 -U 441 ; WX 602 ; N uni01B9 ; G 379 -U 442 ; WX 602 ; N uni01BA ; G 380 -U 443 ; WX 602 ; N uni01BB ; G 381 -U 444 ; WX 602 ; N uni01BC ; G 382 -U 445 ; WX 602 ; N uni01BD ; G 383 -U 446 ; WX 602 ; N uni01BE ; G 384 -U 447 ; WX 602 ; N uni01BF ; G 385 -U 448 ; WX 602 ; N uni01C0 ; G 386 -U 449 ; WX 602 ; N uni01C1 ; G 387 -U 450 ; WX 602 ; N uni01C2 ; G 388 -U 451 ; WX 602 ; N uni01C3 ; G 389 -U 461 ; WX 602 ; N uni01CD ; G 390 -U 462 ; WX 602 ; N uni01CE ; G 391 -U 463 ; WX 602 ; N uni01CF ; G 392 -U 464 ; WX 602 ; N uni01D0 ; G 393 -U 465 ; WX 602 ; N uni01D1 ; G 394 -U 466 ; WX 602 ; N uni01D2 ; G 395 -U 467 ; WX 602 ; N uni01D3 ; G 396 -U 468 ; WX 602 ; N uni01D4 ; G 397 -U 469 ; WX 602 ; N uni01D5 ; G 398 -U 470 ; WX 602 ; N uni01D6 ; G 399 -U 471 ; WX 602 ; N uni01D7 ; G 400 -U 472 ; WX 602 ; N uni01D8 ; G 401 -U 473 ; WX 602 ; N uni01D9 ; G 402 -U 474 ; WX 602 ; N uni01DA ; G 403 -U 475 ; WX 602 ; N uni01DB ; G 404 -U 476 ; WX 602 ; N uni01DC ; G 405 -U 477 ; WX 602 ; N uni01DD ; G 406 -U 478 ; WX 602 ; N uni01DE ; G 407 -U 479 ; WX 602 ; N uni01DF ; G 408 -U 480 ; WX 602 ; N uni01E0 ; G 409 -U 481 ; WX 602 ; N uni01E1 ; G 410 -U 482 ; WX 602 ; N uni01E2 ; G 411 -U 483 ; WX 602 ; N uni01E3 ; G 412 -U 486 ; WX 602 ; N Gcaron ; G 413 -U 487 ; WX 602 ; N gcaron ; G 414 -U 488 ; WX 602 ; N uni01E8 ; G 415 -U 489 ; WX 602 ; N uni01E9 ; G 416 -U 490 ; WX 602 ; N uni01EA ; G 417 -U 491 ; WX 602 ; N uni01EB ; G 418 -U 492 ; WX 602 ; N uni01EC ; G 419 -U 493 ; WX 602 ; N uni01ED ; G 420 -U 494 ; WX 602 ; N uni01EE ; G 421 -U 495 ; WX 602 ; N uni01EF ; G 422 -U 496 ; WX 602 ; N uni01F0 ; G 423 -U 500 ; WX 602 ; N uni01F4 ; G 424 -U 501 ; WX 602 ; N uni01F5 ; G 425 -U 502 ; WX 602 ; N uni01F6 ; G 426 -U 504 ; WX 602 ; N uni01F8 ; G 427 -U 505 ; WX 602 ; N uni01F9 ; G 428 -U 508 ; WX 602 ; N AEacute ; G 429 -U 509 ; WX 602 ; N aeacute ; G 430 -U 510 ; WX 602 ; N Oslashacute ; G 431 -U 511 ; WX 602 ; N oslashacute ; G 432 -U 512 ; WX 602 ; N uni0200 ; G 433 -U 513 ; WX 602 ; N uni0201 ; G 434 -U 514 ; WX 602 ; N uni0202 ; G 435 -U 515 ; WX 602 ; N uni0203 ; G 436 -U 516 ; WX 602 ; N uni0204 ; G 437 -U 517 ; WX 602 ; N uni0205 ; G 438 -U 518 ; WX 602 ; N uni0206 ; G 439 -U 519 ; WX 602 ; N uni0207 ; G 440 -U 520 ; WX 602 ; N uni0208 ; G 441 -U 521 ; WX 602 ; N uni0209 ; G 442 -U 522 ; WX 602 ; N uni020A ; G 443 -U 523 ; WX 602 ; N uni020B ; G 444 -U 524 ; WX 602 ; N uni020C ; G 445 -U 525 ; WX 602 ; N uni020D ; G 446 -U 526 ; WX 602 ; N uni020E ; G 447 -U 527 ; WX 602 ; N uni020F ; G 448 -U 528 ; WX 602 ; N uni0210 ; G 449 -U 529 ; WX 602 ; N uni0211 ; G 450 -U 530 ; WX 602 ; N uni0212 ; G 451 -U 531 ; WX 602 ; N uni0213 ; G 452 -U 532 ; WX 602 ; N uni0214 ; G 453 -U 533 ; WX 602 ; N uni0215 ; G 454 -U 534 ; WX 602 ; N uni0216 ; G 455 -U 535 ; WX 602 ; N uni0217 ; G 456 -U 536 ; WX 602 ; N Scommaaccent ; G 457 -U 537 ; WX 602 ; N scommaaccent ; G 458 -U 538 ; WX 602 ; N uni021A ; G 459 -U 539 ; WX 602 ; N uni021B ; G 460 -U 540 ; WX 602 ; N uni021C ; G 461 -U 541 ; WX 602 ; N uni021D ; G 462 -U 542 ; WX 602 ; N uni021E ; G 463 -U 543 ; WX 602 ; N uni021F ; G 464 -U 544 ; WX 602 ; N uni0220 ; G 465 -U 545 ; WX 602 ; N uni0221 ; G 466 -U 548 ; WX 602 ; N uni0224 ; G 467 -U 549 ; WX 602 ; N uni0225 ; G 468 -U 550 ; WX 602 ; N uni0226 ; G 469 -U 551 ; WX 602 ; N uni0227 ; G 470 -U 552 ; WX 602 ; N uni0228 ; G 471 -U 553 ; WX 602 ; N uni0229 ; G 472 -U 554 ; WX 602 ; N uni022A ; G 473 -U 555 ; WX 602 ; N uni022B ; G 474 -U 556 ; WX 602 ; N uni022C ; G 475 -U 557 ; WX 602 ; N uni022D ; G 476 -U 558 ; WX 602 ; N uni022E ; G 477 -U 559 ; WX 602 ; N uni022F ; G 478 -U 560 ; WX 602 ; N uni0230 ; G 479 -U 561 ; WX 602 ; N uni0231 ; G 480 -U 562 ; WX 602 ; N uni0232 ; G 481 -U 563 ; WX 602 ; N uni0233 ; G 482 -U 564 ; WX 602 ; N uni0234 ; G 483 -U 565 ; WX 602 ; N uni0235 ; G 484 -U 566 ; WX 602 ; N uni0236 ; G 485 -U 567 ; WX 602 ; N dotlessj ; G 486 -U 568 ; WX 602 ; N uni0238 ; G 487 -U 569 ; WX 602 ; N uni0239 ; G 488 -U 570 ; WX 602 ; N uni023A ; G 489 -U 571 ; WX 602 ; N uni023B ; G 490 -U 572 ; WX 602 ; N uni023C ; G 491 -U 573 ; WX 602 ; N uni023D ; G 492 -U 574 ; WX 602 ; N uni023E ; G 493 -U 575 ; WX 602 ; N uni023F ; G 494 -U 576 ; WX 602 ; N uni0240 ; G 495 -U 577 ; WX 602 ; N uni0241 ; G 496 -U 579 ; WX 602 ; N uni0243 ; G 497 -U 580 ; WX 602 ; N uni0244 ; G 498 -U 581 ; WX 602 ; N uni0245 ; G 499 -U 588 ; WX 602 ; N uni024C ; G 500 -U 589 ; WX 602 ; N uni024D ; G 501 -U 592 ; WX 602 ; N uni0250 ; G 502 -U 593 ; WX 602 ; N uni0251 ; G 503 -U 594 ; WX 602 ; N uni0252 ; G 504 -U 595 ; WX 602 ; N uni0253 ; G 505 -U 596 ; WX 602 ; N uni0254 ; G 506 -U 597 ; WX 602 ; N uni0255 ; G 507 -U 598 ; WX 602 ; N uni0256 ; G 508 -U 599 ; WX 602 ; N uni0257 ; G 509 -U 600 ; WX 602 ; N uni0258 ; G 510 -U 601 ; WX 602 ; N uni0259 ; G 511 -U 602 ; WX 602 ; N uni025A ; G 512 -U 603 ; WX 602 ; N uni025B ; G 513 -U 604 ; WX 602 ; N uni025C ; G 514 -U 605 ; WX 602 ; N uni025D ; G 515 -U 606 ; WX 602 ; N uni025E ; G 516 -U 607 ; WX 602 ; N uni025F ; G 517 -U 608 ; WX 602 ; N uni0260 ; G 518 -U 609 ; WX 602 ; N uni0261 ; G 519 -U 610 ; WX 602 ; N uni0262 ; G 520 -U 611 ; WX 602 ; N uni0263 ; G 521 -U 612 ; WX 602 ; N uni0264 ; G 522 -U 613 ; WX 602 ; N uni0265 ; G 523 -U 614 ; WX 602 ; N uni0266 ; G 524 -U 615 ; WX 602 ; N uni0267 ; G 525 -U 616 ; WX 602 ; N uni0268 ; G 526 -U 617 ; WX 602 ; N uni0269 ; G 527 -U 618 ; WX 602 ; N uni026A ; G 528 -U 619 ; WX 602 ; N uni026B ; G 529 -U 620 ; WX 602 ; N uni026C ; G 530 -U 621 ; WX 602 ; N uni026D ; G 531 -U 622 ; WX 602 ; N uni026E ; G 532 -U 623 ; WX 602 ; N uni026F ; G 533 -U 624 ; WX 602 ; N uni0270 ; G 534 -U 625 ; WX 602 ; N uni0271 ; G 535 -U 626 ; WX 602 ; N uni0272 ; G 536 -U 627 ; WX 602 ; N uni0273 ; G 537 -U 628 ; WX 602 ; N uni0274 ; G 538 -U 629 ; WX 602 ; N uni0275 ; G 539 -U 630 ; WX 602 ; N uni0276 ; G 540 -U 631 ; WX 602 ; N uni0277 ; G 541 -U 632 ; WX 602 ; N uni0278 ; G 542 -U 633 ; WX 602 ; N uni0279 ; G 543 -U 634 ; WX 602 ; N uni027A ; G 544 -U 635 ; WX 602 ; N uni027B ; G 545 -U 636 ; WX 602 ; N uni027C ; G 546 -U 637 ; WX 602 ; N uni027D ; G 547 -U 638 ; WX 602 ; N uni027E ; G 548 -U 639 ; WX 602 ; N uni027F ; G 549 -U 640 ; WX 602 ; N uni0280 ; G 550 -U 641 ; WX 602 ; N uni0281 ; G 551 -U 642 ; WX 602 ; N uni0282 ; G 552 -U 643 ; WX 602 ; N uni0283 ; G 553 -U 644 ; WX 602 ; N uni0284 ; G 554 -U 645 ; WX 602 ; N uni0285 ; G 555 -U 646 ; WX 602 ; N uni0286 ; G 556 -U 647 ; WX 602 ; N uni0287 ; G 557 -U 648 ; WX 602 ; N uni0288 ; G 558 -U 649 ; WX 602 ; N uni0289 ; G 559 -U 650 ; WX 602 ; N uni028A ; G 560 -U 651 ; WX 602 ; N uni028B ; G 561 -U 652 ; WX 602 ; N uni028C ; G 562 -U 653 ; WX 602 ; N uni028D ; G 563 -U 654 ; WX 602 ; N uni028E ; G 564 -U 655 ; WX 602 ; N uni028F ; G 565 -U 656 ; WX 602 ; N uni0290 ; G 566 -U 657 ; WX 602 ; N uni0291 ; G 567 -U 658 ; WX 602 ; N uni0292 ; G 568 -U 659 ; WX 602 ; N uni0293 ; G 569 -U 660 ; WX 602 ; N uni0294 ; G 570 -U 661 ; WX 602 ; N uni0295 ; G 571 -U 662 ; WX 602 ; N uni0296 ; G 572 -U 663 ; WX 602 ; N uni0297 ; G 573 -U 664 ; WX 602 ; N uni0298 ; G 574 -U 665 ; WX 602 ; N uni0299 ; G 575 -U 666 ; WX 602 ; N uni029A ; G 576 -U 667 ; WX 602 ; N uni029B ; G 577 -U 668 ; WX 602 ; N uni029C ; G 578 -U 669 ; WX 602 ; N uni029D ; G 579 -U 670 ; WX 602 ; N uni029E ; G 580 -U 671 ; WX 602 ; N uni029F ; G 581 -U 672 ; WX 602 ; N uni02A0 ; G 582 -U 673 ; WX 602 ; N uni02A1 ; G 583 -U 674 ; WX 602 ; N uni02A2 ; G 584 -U 675 ; WX 602 ; N uni02A3 ; G 585 -U 676 ; WX 602 ; N uni02A4 ; G 586 -U 677 ; WX 602 ; N uni02A5 ; G 587 -U 678 ; WX 602 ; N uni02A6 ; G 588 -U 679 ; WX 602 ; N uni02A7 ; G 589 -U 680 ; WX 602 ; N uni02A8 ; G 590 -U 681 ; WX 602 ; N uni02A9 ; G 591 -U 682 ; WX 602 ; N uni02AA ; G 592 -U 683 ; WX 602 ; N uni02AB ; G 593 -U 684 ; WX 602 ; N uni02AC ; G 594 -U 685 ; WX 602 ; N uni02AD ; G 595 -U 686 ; WX 602 ; N uni02AE ; G 596 -U 687 ; WX 602 ; N uni02AF ; G 597 -U 688 ; WX 602 ; N uni02B0 ; G 598 -U 689 ; WX 602 ; N uni02B1 ; G 599 -U 690 ; WX 602 ; N uni02B2 ; G 600 -U 691 ; WX 602 ; N uni02B3 ; G 601 -U 692 ; WX 602 ; N uni02B4 ; G 602 -U 693 ; WX 602 ; N uni02B5 ; G 603 -U 694 ; WX 602 ; N uni02B6 ; G 604 -U 695 ; WX 602 ; N uni02B7 ; G 605 -U 696 ; WX 602 ; N uni02B8 ; G 606 -U 697 ; WX 602 ; N uni02B9 ; G 607 -U 699 ; WX 602 ; N uni02BB ; G 608 -U 700 ; WX 602 ; N uni02BC ; G 609 -U 701 ; WX 602 ; N uni02BD ; G 610 -U 702 ; WX 602 ; N uni02BE ; G 611 -U 703 ; WX 602 ; N uni02BF ; G 612 -U 704 ; WX 602 ; N uni02C0 ; G 613 -U 705 ; WX 602 ; N uni02C1 ; G 614 -U 710 ; WX 602 ; N circumflex ; G 615 -U 711 ; WX 602 ; N caron ; G 616 -U 712 ; WX 602 ; N uni02C8 ; G 617 -U 713 ; WX 602 ; N uni02C9 ; G 618 -U 716 ; WX 602 ; N uni02CC ; G 619 -U 717 ; WX 602 ; N uni02CD ; G 620 -U 718 ; WX 602 ; N uni02CE ; G 621 -U 719 ; WX 602 ; N uni02CF ; G 622 -U 720 ; WX 602 ; N uni02D0 ; G 623 -U 721 ; WX 602 ; N uni02D1 ; G 624 -U 722 ; WX 602 ; N uni02D2 ; G 625 -U 723 ; WX 602 ; N uni02D3 ; G 626 -U 726 ; WX 602 ; N uni02D6 ; G 627 -U 727 ; WX 602 ; N uni02D7 ; G 628 -U 728 ; WX 602 ; N breve ; G 629 -U 729 ; WX 602 ; N dotaccent ; G 630 -U 730 ; WX 602 ; N ring ; G 631 -U 731 ; WX 602 ; N ogonek ; G 632 -U 732 ; WX 602 ; N tilde ; G 633 -U 733 ; WX 602 ; N hungarumlaut ; G 634 -U 734 ; WX 602 ; N uni02DE ; G 635 -U 736 ; WX 602 ; N uni02E0 ; G 636 -U 737 ; WX 602 ; N uni02E1 ; G 637 -U 738 ; WX 602 ; N uni02E2 ; G 638 -U 739 ; WX 602 ; N uni02E3 ; G 639 -U 740 ; WX 602 ; N uni02E4 ; G 640 -U 741 ; WX 602 ; N uni02E5 ; G 641 -U 742 ; WX 602 ; N uni02E6 ; G 642 -U 743 ; WX 602 ; N uni02E7 ; G 643 -U 744 ; WX 602 ; N uni02E8 ; G 644 -U 745 ; WX 602 ; N uni02E9 ; G 645 -U 750 ; WX 602 ; N uni02EE ; G 646 -U 755 ; WX 602 ; N uni02F3 ; G 647 -U 768 ; WX 602 ; N gravecomb ; G 648 -U 769 ; WX 602 ; N acutecomb ; G 649 -U 770 ; WX 602 ; N uni0302 ; G 650 -U 771 ; WX 602 ; N tildecomb ; G 651 -U 772 ; WX 602 ; N uni0304 ; G 652 -U 773 ; WX 602 ; N uni0305 ; G 653 -U 774 ; WX 602 ; N uni0306 ; G 654 -U 775 ; WX 602 ; N uni0307 ; G 655 -U 776 ; WX 602 ; N uni0308 ; G 656 -U 777 ; WX 602 ; N hookabovecomb ; G 657 -U 778 ; WX 602 ; N uni030A ; G 658 -U 779 ; WX 602 ; N uni030B ; G 659 -U 780 ; WX 602 ; N uni030C ; G 660 -U 781 ; WX 602 ; N uni030D ; G 661 -U 782 ; WX 602 ; N uni030E ; G 662 -U 783 ; WX 602 ; N uni030F ; G 663 -U 784 ; WX 602 ; N uni0310 ; G 664 -U 785 ; WX 602 ; N uni0311 ; G 665 -U 786 ; WX 602 ; N uni0312 ; G 666 -U 787 ; WX 602 ; N uni0313 ; G 667 -U 788 ; WX 602 ; N uni0314 ; G 668 -U 789 ; WX 602 ; N uni0315 ; G 669 -U 790 ; WX 602 ; N uni0316 ; G 670 -U 791 ; WX 602 ; N uni0317 ; G 671 -U 792 ; WX 602 ; N uni0318 ; G 672 -U 793 ; WX 602 ; N uni0319 ; G 673 -U 794 ; WX 602 ; N uni031A ; G 674 -U 795 ; WX 602 ; N uni031B ; G 675 -U 796 ; WX 602 ; N uni031C ; G 676 -U 797 ; WX 602 ; N uni031D ; G 677 -U 798 ; WX 602 ; N uni031E ; G 678 -U 799 ; WX 602 ; N uni031F ; G 679 -U 800 ; WX 602 ; N uni0320 ; G 680 -U 801 ; WX 602 ; N uni0321 ; G 681 -U 802 ; WX 602 ; N uni0322 ; G 682 -U 803 ; WX 602 ; N dotbelowcomb ; G 683 -U 804 ; WX 602 ; N uni0324 ; G 684 -U 805 ; WX 602 ; N uni0325 ; G 685 -U 806 ; WX 602 ; N uni0326 ; G 686 -U 807 ; WX 602 ; N uni0327 ; G 687 -U 808 ; WX 602 ; N uni0328 ; G 688 -U 809 ; WX 602 ; N uni0329 ; G 689 -U 810 ; WX 602 ; N uni032A ; G 690 -U 811 ; WX 602 ; N uni032B ; G 691 -U 812 ; WX 602 ; N uni032C ; G 692 -U 813 ; WX 602 ; N uni032D ; G 693 -U 814 ; WX 602 ; N uni032E ; G 694 -U 815 ; WX 602 ; N uni032F ; G 695 -U 816 ; WX 602 ; N uni0330 ; G 696 -U 817 ; WX 602 ; N uni0331 ; G 697 -U 818 ; WX 602 ; N uni0332 ; G 698 -U 819 ; WX 602 ; N uni0333 ; G 699 -U 820 ; WX 602 ; N uni0334 ; G 700 -U 821 ; WX 602 ; N uni0335 ; G 701 -U 822 ; WX 602 ; N uni0336 ; G 702 -U 823 ; WX 602 ; N uni0337 ; G 703 -U 824 ; WX 602 ; N uni0338 ; G 704 -U 825 ; WX 602 ; N uni0339 ; G 705 -U 826 ; WX 602 ; N uni033A ; G 706 -U 827 ; WX 602 ; N uni033B ; G 707 -U 828 ; WX 602 ; N uni033C ; G 708 -U 829 ; WX 602 ; N uni033D ; G 709 -U 830 ; WX 602 ; N uni033E ; G 710 -U 831 ; WX 602 ; N uni033F ; G 711 -U 835 ; WX 602 ; N uni0343 ; G 712 -U 856 ; WX 602 ; N uni0358 ; G 713 -U 865 ; WX 602 ; N uni0361 ; G 714 -U 884 ; WX 602 ; N uni0374 ; G 715 -U 885 ; WX 602 ; N uni0375 ; G 716 -U 886 ; WX 602 ; N uni0376 ; G 717 -U 887 ; WX 602 ; N uni0377 ; G 718 -U 890 ; WX 602 ; N uni037A ; G 719 -U 891 ; WX 602 ; N uni037B ; G 720 -U 892 ; WX 602 ; N uni037C ; G 721 -U 893 ; WX 602 ; N uni037D ; G 722 -U 894 ; WX 602 ; N uni037E ; G 723 -U 895 ; WX 602 ; N uni037F ; G 724 -U 900 ; WX 602 ; N tonos ; G 725 -U 901 ; WX 602 ; N dieresistonos ; G 726 -U 902 ; WX 602 ; N Alphatonos ; G 727 -U 903 ; WX 602 ; N anoteleia ; G 728 -U 904 ; WX 602 ; N Epsilontonos ; G 729 -U 905 ; WX 602 ; N Etatonos ; G 730 -U 906 ; WX 602 ; N Iotatonos ; G 731 -U 908 ; WX 602 ; N Omicrontonos ; G 732 -U 910 ; WX 602 ; N Upsilontonos ; G 733 -U 911 ; WX 602 ; N Omegatonos ; G 734 -U 912 ; WX 602 ; N iotadieresistonos ; G 735 -U 913 ; WX 602 ; N Alpha ; G 736 -U 914 ; WX 602 ; N Beta ; G 737 -U 915 ; WX 602 ; N Gamma ; G 738 -U 916 ; WX 602 ; N uni0394 ; G 739 -U 917 ; WX 602 ; N Epsilon ; G 740 -U 918 ; WX 602 ; N Zeta ; G 741 -U 919 ; WX 602 ; N Eta ; G 742 -U 920 ; WX 602 ; N Theta ; G 743 -U 921 ; WX 602 ; N Iota ; G 744 -U 922 ; WX 602 ; N Kappa ; G 745 -U 923 ; WX 602 ; N Lambda ; G 746 -U 924 ; WX 602 ; N Mu ; G 747 -U 925 ; WX 602 ; N Nu ; G 748 -U 926 ; WX 602 ; N Xi ; G 749 -U 927 ; WX 602 ; N Omicron ; G 750 -U 928 ; WX 602 ; N Pi ; G 751 -U 929 ; WX 602 ; N Rho ; G 752 -U 931 ; WX 602 ; N Sigma ; G 753 -U 932 ; WX 602 ; N Tau ; G 754 -U 933 ; WX 602 ; N Upsilon ; G 755 -U 934 ; WX 602 ; N Phi ; G 756 -U 935 ; WX 602 ; N Chi ; G 757 -U 936 ; WX 602 ; N Psi ; G 758 -U 937 ; WX 602 ; N Omega ; G 759 -U 938 ; WX 602 ; N Iotadieresis ; G 760 -U 939 ; WX 602 ; N Upsilondieresis ; G 761 -U 940 ; WX 602 ; N alphatonos ; G 762 -U 941 ; WX 602 ; N epsilontonos ; G 763 -U 942 ; WX 602 ; N etatonos ; G 764 -U 943 ; WX 602 ; N iotatonos ; G 765 -U 944 ; WX 602 ; N upsilondieresistonos ; G 766 -U 945 ; WX 602 ; N alpha ; G 767 -U 946 ; WX 602 ; N beta ; G 768 -U 947 ; WX 602 ; N gamma ; G 769 -U 948 ; WX 602 ; N delta ; G 770 -U 949 ; WX 602 ; N epsilon ; G 771 -U 950 ; WX 602 ; N zeta ; G 772 -U 951 ; WX 602 ; N eta ; G 773 -U 952 ; WX 602 ; N theta ; G 774 -U 953 ; WX 602 ; N iota ; G 775 -U 954 ; WX 602 ; N kappa ; G 776 -U 955 ; WX 602 ; N lambda ; G 777 -U 956 ; WX 602 ; N uni03BC ; G 778 -U 957 ; WX 602 ; N nu ; G 779 -U 958 ; WX 602 ; N xi ; G 780 -U 959 ; WX 602 ; N omicron ; G 781 -U 960 ; WX 602 ; N pi ; G 782 -U 961 ; WX 602 ; N rho ; G 783 -U 962 ; WX 602 ; N sigma1 ; G 784 -U 963 ; WX 602 ; N sigma ; G 785 -U 964 ; WX 602 ; N tau ; G 786 -U 965 ; WX 602 ; N upsilon ; G 787 -U 966 ; WX 602 ; N phi ; G 788 -U 967 ; WX 602 ; N chi ; G 789 -U 968 ; WX 602 ; N psi ; G 790 -U 969 ; WX 602 ; N omega ; G 791 -U 970 ; WX 602 ; N iotadieresis ; G 792 -U 971 ; WX 602 ; N upsilondieresis ; G 793 -U 972 ; WX 602 ; N omicrontonos ; G 794 -U 973 ; WX 602 ; N upsilontonos ; G 795 -U 974 ; WX 602 ; N omegatonos ; G 796 -U 976 ; WX 602 ; N uni03D0 ; G 797 -U 977 ; WX 602 ; N theta1 ; G 798 -U 978 ; WX 602 ; N Upsilon1 ; G 799 -U 979 ; WX 602 ; N uni03D3 ; G 800 -U 980 ; WX 602 ; N uni03D4 ; G 801 -U 981 ; WX 602 ; N phi1 ; G 802 -U 982 ; WX 602 ; N omega1 ; G 803 -U 983 ; WX 602 ; N uni03D7 ; G 804 -U 984 ; WX 602 ; N uni03D8 ; G 805 -U 985 ; WX 602 ; N uni03D9 ; G 806 -U 986 ; WX 602 ; N uni03DA ; G 807 -U 987 ; WX 602 ; N uni03DB ; G 808 -U 988 ; WX 602 ; N uni03DC ; G 809 -U 989 ; WX 602 ; N uni03DD ; G 810 -U 990 ; WX 602 ; N uni03DE ; G 811 -U 991 ; WX 602 ; N uni03DF ; G 812 -U 992 ; WX 602 ; N uni03E0 ; G 813 -U 993 ; WX 602 ; N uni03E1 ; G 814 -U 1008 ; WX 602 ; N uni03F0 ; G 815 -U 1009 ; WX 602 ; N uni03F1 ; G 816 -U 1010 ; WX 602 ; N uni03F2 ; G 817 -U 1011 ; WX 602 ; N uni03F3 ; G 818 -U 1012 ; WX 602 ; N uni03F4 ; G 819 -U 1013 ; WX 602 ; N uni03F5 ; G 820 -U 1014 ; WX 602 ; N uni03F6 ; G 821 -U 1015 ; WX 602 ; N uni03F7 ; G 822 -U 1016 ; WX 602 ; N uni03F8 ; G 823 -U 1017 ; WX 602 ; N uni03F9 ; G 824 -U 1018 ; WX 602 ; N uni03FA ; G 825 -U 1019 ; WX 602 ; N uni03FB ; G 826 -U 1020 ; WX 602 ; N uni03FC ; G 827 -U 1021 ; WX 602 ; N uni03FD ; G 828 -U 1022 ; WX 602 ; N uni03FE ; G 829 -U 1023 ; WX 602 ; N uni03FF ; G 830 -U 1024 ; WX 602 ; N uni0400 ; G 831 -U 1025 ; WX 602 ; N uni0401 ; G 832 -U 1026 ; WX 602 ; N uni0402 ; G 833 -U 1027 ; WX 602 ; N uni0403 ; G 834 -U 1028 ; WX 602 ; N uni0404 ; G 835 -U 1029 ; WX 602 ; N uni0405 ; G 836 -U 1030 ; WX 602 ; N uni0406 ; G 837 -U 1031 ; WX 602 ; N uni0407 ; G 838 -U 1032 ; WX 602 ; N uni0408 ; G 839 -U 1033 ; WX 602 ; N uni0409 ; G 840 -U 1034 ; WX 602 ; N uni040A ; G 841 -U 1035 ; WX 602 ; N uni040B ; G 842 -U 1036 ; WX 602 ; N uni040C ; G 843 -U 1037 ; WX 602 ; N uni040D ; G 844 -U 1038 ; WX 602 ; N uni040E ; G 845 -U 1039 ; WX 602 ; N uni040F ; G 846 -U 1040 ; WX 602 ; N uni0410 ; G 847 -U 1041 ; WX 602 ; N uni0411 ; G 848 -U 1042 ; WX 602 ; N uni0412 ; G 849 -U 1043 ; WX 602 ; N uni0413 ; G 850 -U 1044 ; WX 602 ; N uni0414 ; G 851 -U 1045 ; WX 602 ; N uni0415 ; G 852 -U 1046 ; WX 602 ; N uni0416 ; G 853 -U 1047 ; WX 602 ; N uni0417 ; G 854 -U 1048 ; WX 602 ; N uni0418 ; G 855 -U 1049 ; WX 602 ; N uni0419 ; G 856 -U 1050 ; WX 602 ; N uni041A ; G 857 -U 1051 ; WX 602 ; N uni041B ; G 858 -U 1052 ; WX 602 ; N uni041C ; G 859 -U 1053 ; WX 602 ; N uni041D ; G 860 -U 1054 ; WX 602 ; N uni041E ; G 861 -U 1055 ; WX 602 ; N uni041F ; G 862 -U 1056 ; WX 602 ; N uni0420 ; G 863 -U 1057 ; WX 602 ; N uni0421 ; G 864 -U 1058 ; WX 602 ; N uni0422 ; G 865 -U 1059 ; WX 602 ; N uni0423 ; G 866 -U 1060 ; WX 602 ; N uni0424 ; G 867 -U 1061 ; WX 602 ; N uni0425 ; G 868 -U 1062 ; WX 602 ; N uni0426 ; G 869 -U 1063 ; WX 602 ; N uni0427 ; G 870 -U 1064 ; WX 602 ; N uni0428 ; G 871 -U 1065 ; WX 602 ; N uni0429 ; G 872 -U 1066 ; WX 602 ; N uni042A ; G 873 -U 1067 ; WX 602 ; N uni042B ; G 874 -U 1068 ; WX 602 ; N uni042C ; G 875 -U 1069 ; WX 602 ; N uni042D ; G 876 -U 1070 ; WX 602 ; N uni042E ; G 877 -U 1071 ; WX 602 ; N uni042F ; G 878 -U 1072 ; WX 602 ; N uni0430 ; G 879 -U 1073 ; WX 602 ; N uni0431 ; G 880 -U 1074 ; WX 602 ; N uni0432 ; G 881 -U 1075 ; WX 602 ; N uni0433 ; G 882 -U 1076 ; WX 602 ; N uni0434 ; G 883 -U 1077 ; WX 602 ; N uni0435 ; G 884 -U 1078 ; WX 602 ; N uni0436 ; G 885 -U 1079 ; WX 602 ; N uni0437 ; G 886 -U 1080 ; WX 602 ; N uni0438 ; G 887 -U 1081 ; WX 602 ; N uni0439 ; G 888 -U 1082 ; WX 602 ; N uni043A ; G 889 -U 1083 ; WX 602 ; N uni043B ; G 890 -U 1084 ; WX 602 ; N uni043C ; G 891 -U 1085 ; WX 602 ; N uni043D ; G 892 -U 1086 ; WX 602 ; N uni043E ; G 893 -U 1087 ; WX 602 ; N uni043F ; G 894 -U 1088 ; WX 602 ; N uni0440 ; G 895 -U 1089 ; WX 602 ; N uni0441 ; G 896 -U 1090 ; WX 602 ; N uni0442 ; G 897 -U 1091 ; WX 602 ; N uni0443 ; G 898 -U 1092 ; WX 602 ; N uni0444 ; G 899 -U 1093 ; WX 602 ; N uni0445 ; G 900 -U 1094 ; WX 602 ; N uni0446 ; G 901 -U 1095 ; WX 602 ; N uni0447 ; G 902 -U 1096 ; WX 602 ; N uni0448 ; G 903 -U 1097 ; WX 602 ; N uni0449 ; G 904 -U 1098 ; WX 602 ; N uni044A ; G 905 -U 1099 ; WX 602 ; N uni044B ; G 906 -U 1100 ; WX 602 ; N uni044C ; G 907 -U 1101 ; WX 602 ; N uni044D ; G 908 -U 1102 ; WX 602 ; N uni044E ; G 909 -U 1103 ; WX 602 ; N uni044F ; G 910 -U 1104 ; WX 602 ; N uni0450 ; G 911 -U 1105 ; WX 602 ; N uni0451 ; G 912 -U 1106 ; WX 602 ; N uni0452 ; G 913 -U 1107 ; WX 602 ; N uni0453 ; G 914 -U 1108 ; WX 602 ; N uni0454 ; G 915 -U 1109 ; WX 602 ; N uni0455 ; G 916 -U 1110 ; WX 602 ; N uni0456 ; G 917 -U 1111 ; WX 602 ; N uni0457 ; G 918 -U 1112 ; WX 602 ; N uni0458 ; G 919 -U 1113 ; WX 602 ; N uni0459 ; G 920 -U 1114 ; WX 602 ; N uni045A ; G 921 -U 1115 ; WX 602 ; N uni045B ; G 922 -U 1116 ; WX 602 ; N uni045C ; G 923 -U 1117 ; WX 602 ; N uni045D ; G 924 -U 1118 ; WX 602 ; N uni045E ; G 925 -U 1119 ; WX 602 ; N uni045F ; G 926 -U 1122 ; WX 602 ; N uni0462 ; G 927 -U 1123 ; WX 602 ; N uni0463 ; G 928 -U 1138 ; WX 602 ; N uni0472 ; G 929 -U 1139 ; WX 602 ; N uni0473 ; G 930 -U 1168 ; WX 602 ; N uni0490 ; G 931 -U 1169 ; WX 602 ; N uni0491 ; G 932 -U 1170 ; WX 602 ; N uni0492 ; G 933 -U 1171 ; WX 602 ; N uni0493 ; G 934 -U 1172 ; WX 602 ; N uni0494 ; G 935 -U 1173 ; WX 602 ; N uni0495 ; G 936 -U 1174 ; WX 602 ; N uni0496 ; G 937 -U 1175 ; WX 602 ; N uni0497 ; G 938 -U 1176 ; WX 602 ; N uni0498 ; G 939 -U 1177 ; WX 602 ; N uni0499 ; G 940 -U 1178 ; WX 602 ; N uni049A ; G 941 -U 1179 ; WX 602 ; N uni049B ; G 942 -U 1186 ; WX 602 ; N uni04A2 ; G 943 -U 1187 ; WX 602 ; N uni04A3 ; G 944 -U 1188 ; WX 602 ; N uni04A4 ; G 945 -U 1189 ; WX 602 ; N uni04A5 ; G 946 -U 1194 ; WX 602 ; N uni04AA ; G 947 -U 1195 ; WX 602 ; N uni04AB ; G 948 -U 1196 ; WX 602 ; N uni04AC ; G 949 -U 1197 ; WX 602 ; N uni04AD ; G 950 -U 1198 ; WX 602 ; N uni04AE ; G 951 -U 1199 ; WX 602 ; N uni04AF ; G 952 -U 1200 ; WX 602 ; N uni04B0 ; G 953 -U 1201 ; WX 602 ; N uni04B1 ; G 954 -U 1202 ; WX 602 ; N uni04B2 ; G 955 -U 1203 ; WX 602 ; N uni04B3 ; G 956 -U 1210 ; WX 602 ; N uni04BA ; G 957 -U 1211 ; WX 602 ; N uni04BB ; G 958 -U 1216 ; WX 602 ; N uni04C0 ; G 959 -U 1217 ; WX 602 ; N uni04C1 ; G 960 -U 1218 ; WX 602 ; N uni04C2 ; G 961 -U 1219 ; WX 602 ; N uni04C3 ; G 962 -U 1220 ; WX 602 ; N uni04C4 ; G 963 -U 1223 ; WX 602 ; N uni04C7 ; G 964 -U 1224 ; WX 602 ; N uni04C8 ; G 965 -U 1227 ; WX 602 ; N uni04CB ; G 966 -U 1228 ; WX 602 ; N uni04CC ; G 967 -U 1231 ; WX 602 ; N uni04CF ; G 968 -U 1232 ; WX 602 ; N uni04D0 ; G 969 -U 1233 ; WX 602 ; N uni04D1 ; G 970 -U 1234 ; WX 602 ; N uni04D2 ; G 971 -U 1235 ; WX 602 ; N uni04D3 ; G 972 -U 1236 ; WX 602 ; N uni04D4 ; G 973 -U 1237 ; WX 602 ; N uni04D5 ; G 974 -U 1238 ; WX 602 ; N uni04D6 ; G 975 -U 1239 ; WX 602 ; N uni04D7 ; G 976 -U 1240 ; WX 602 ; N uni04D8 ; G 977 -U 1241 ; WX 602 ; N uni04D9 ; G 978 -U 1242 ; WX 602 ; N uni04DA ; G 979 -U 1243 ; WX 602 ; N uni04DB ; G 980 -U 1244 ; WX 602 ; N uni04DC ; G 981 -U 1245 ; WX 602 ; N uni04DD ; G 982 -U 1246 ; WX 602 ; N uni04DE ; G 983 -U 1247 ; WX 602 ; N uni04DF ; G 984 -U 1248 ; WX 602 ; N uni04E0 ; G 985 -U 1249 ; WX 602 ; N uni04E1 ; G 986 -U 1250 ; WX 602 ; N uni04E2 ; G 987 -U 1251 ; WX 602 ; N uni04E3 ; G 988 -U 1252 ; WX 602 ; N uni04E4 ; G 989 -U 1253 ; WX 602 ; N uni04E5 ; G 990 -U 1254 ; WX 602 ; N uni04E6 ; G 991 -U 1255 ; WX 602 ; N uni04E7 ; G 992 -U 1256 ; WX 602 ; N uni04E8 ; G 993 -U 1257 ; WX 602 ; N uni04E9 ; G 994 -U 1258 ; WX 602 ; N uni04EA ; G 995 -U 1259 ; WX 602 ; N uni04EB ; G 996 -U 1260 ; WX 602 ; N uni04EC ; G 997 -U 1261 ; WX 602 ; N uni04ED ; G 998 -U 1262 ; WX 602 ; N uni04EE ; G 999 -U 1263 ; WX 602 ; N uni04EF ; G 1000 -U 1264 ; WX 602 ; N uni04F0 ; G 1001 -U 1265 ; WX 602 ; N uni04F1 ; G 1002 -U 1266 ; WX 602 ; N uni04F2 ; G 1003 -U 1267 ; WX 602 ; N uni04F3 ; G 1004 -U 1268 ; WX 602 ; N uni04F4 ; G 1005 -U 1269 ; WX 602 ; N uni04F5 ; G 1006 -U 1270 ; WX 602 ; N uni04F6 ; G 1007 -U 1271 ; WX 602 ; N uni04F7 ; G 1008 -U 1272 ; WX 602 ; N uni04F8 ; G 1009 -U 1273 ; WX 602 ; N uni04F9 ; G 1010 -U 1296 ; WX 602 ; N uni0510 ; G 1011 -U 1297 ; WX 602 ; N uni0511 ; G 1012 -U 1306 ; WX 602 ; N uni051A ; G 1013 -U 1307 ; WX 602 ; N uni051B ; G 1014 -U 1308 ; WX 602 ; N uni051C ; G 1015 -U 1309 ; WX 602 ; N uni051D ; G 1016 -U 1329 ; WX 602 ; N uni0531 ; G 1017 -U 1330 ; WX 602 ; N uni0532 ; G 1018 -U 1331 ; WX 602 ; N uni0533 ; G 1019 -U 1332 ; WX 602 ; N uni0534 ; G 1020 -U 1333 ; WX 602 ; N uni0535 ; G 1021 -U 1334 ; WX 602 ; N uni0536 ; G 1022 -U 1335 ; WX 602 ; N uni0537 ; G 1023 -U 1336 ; WX 602 ; N uni0538 ; G 1024 -U 1337 ; WX 602 ; N uni0539 ; G 1025 -U 1338 ; WX 602 ; N uni053A ; G 1026 -U 1339 ; WX 602 ; N uni053B ; G 1027 -U 1340 ; WX 602 ; N uni053C ; G 1028 -U 1341 ; WX 602 ; N uni053D ; G 1029 -U 1342 ; WX 602 ; N uni053E ; G 1030 -U 1343 ; WX 602 ; N uni053F ; G 1031 -U 1344 ; WX 602 ; N uni0540 ; G 1032 -U 1345 ; WX 602 ; N uni0541 ; G 1033 -U 1346 ; WX 602 ; N uni0542 ; G 1034 -U 1347 ; WX 602 ; N uni0543 ; G 1035 -U 1348 ; WX 602 ; N uni0544 ; G 1036 -U 1349 ; WX 602 ; N uni0545 ; G 1037 -U 1350 ; WX 602 ; N uni0546 ; G 1038 -U 1351 ; WX 602 ; N uni0547 ; G 1039 -U 1352 ; WX 602 ; N uni0548 ; G 1040 -U 1353 ; WX 602 ; N uni0549 ; G 1041 -U 1354 ; WX 602 ; N uni054A ; G 1042 -U 1355 ; WX 602 ; N uni054B ; G 1043 -U 1356 ; WX 602 ; N uni054C ; G 1044 -U 1357 ; WX 602 ; N uni054D ; G 1045 -U 1358 ; WX 602 ; N uni054E ; G 1046 -U 1359 ; WX 602 ; N uni054F ; G 1047 -U 1360 ; WX 602 ; N uni0550 ; G 1048 -U 1361 ; WX 602 ; N uni0551 ; G 1049 -U 1362 ; WX 602 ; N uni0552 ; G 1050 -U 1363 ; WX 602 ; N uni0553 ; G 1051 -U 1364 ; WX 602 ; N uni0554 ; G 1052 -U 1365 ; WX 602 ; N uni0555 ; G 1053 -U 1366 ; WX 602 ; N uni0556 ; G 1054 -U 1369 ; WX 602 ; N uni0559 ; G 1055 -U 1370 ; WX 602 ; N uni055A ; G 1056 -U 1371 ; WX 602 ; N uni055B ; G 1057 -U 1372 ; WX 602 ; N uni055C ; G 1058 -U 1373 ; WX 602 ; N uni055D ; G 1059 -U 1374 ; WX 602 ; N uni055E ; G 1060 -U 1375 ; WX 602 ; N uni055F ; G 1061 -U 1377 ; WX 602 ; N uni0561 ; G 1062 -U 1378 ; WX 602 ; N uni0562 ; G 1063 -U 1379 ; WX 602 ; N uni0563 ; G 1064 -U 1380 ; WX 602 ; N uni0564 ; G 1065 -U 1381 ; WX 602 ; N uni0565 ; G 1066 -U 1382 ; WX 602 ; N uni0566 ; G 1067 -U 1383 ; WX 602 ; N uni0567 ; G 1068 -U 1384 ; WX 602 ; N uni0568 ; G 1069 -U 1385 ; WX 602 ; N uni0569 ; G 1070 -U 1386 ; WX 602 ; N uni056A ; G 1071 -U 1387 ; WX 602 ; N uni056B ; G 1072 -U 1388 ; WX 602 ; N uni056C ; G 1073 -U 1389 ; WX 602 ; N uni056D ; G 1074 -U 1390 ; WX 602 ; N uni056E ; G 1075 -U 1391 ; WX 602 ; N uni056F ; G 1076 -U 1392 ; WX 602 ; N uni0570 ; G 1077 -U 1393 ; WX 602 ; N uni0571 ; G 1078 -U 1394 ; WX 602 ; N uni0572 ; G 1079 -U 1395 ; WX 602 ; N uni0573 ; G 1080 -U 1396 ; WX 602 ; N uni0574 ; G 1081 -U 1397 ; WX 602 ; N uni0575 ; G 1082 -U 1398 ; WX 602 ; N uni0576 ; G 1083 -U 1399 ; WX 602 ; N uni0577 ; G 1084 -U 1400 ; WX 602 ; N uni0578 ; G 1085 -U 1401 ; WX 602 ; N uni0579 ; G 1086 -U 1402 ; WX 602 ; N uni057A ; G 1087 -U 1403 ; WX 602 ; N uni057B ; G 1088 -U 1404 ; WX 602 ; N uni057C ; G 1089 -U 1405 ; WX 602 ; N uni057D ; G 1090 -U 1406 ; WX 602 ; N uni057E ; G 1091 -U 1407 ; WX 602 ; N uni057F ; G 1092 -U 1408 ; WX 602 ; N uni0580 ; G 1093 -U 1409 ; WX 602 ; N uni0581 ; G 1094 -U 1410 ; WX 602 ; N uni0582 ; G 1095 -U 1411 ; WX 602 ; N uni0583 ; G 1096 -U 1412 ; WX 602 ; N uni0584 ; G 1097 -U 1413 ; WX 602 ; N uni0585 ; G 1098 -U 1414 ; WX 602 ; N uni0586 ; G 1099 -U 1415 ; WX 602 ; N uni0587 ; G 1100 -U 1417 ; WX 602 ; N uni0589 ; G 1101 -U 1418 ; WX 602 ; N uni058A ; G 1102 -U 1542 ; WX 602 ; N uni0606 ; G 1103 -U 1543 ; WX 602 ; N uni0607 ; G 1104 -U 1545 ; WX 602 ; N uni0609 ; G 1105 -U 1546 ; WX 602 ; N uni060A ; G 1106 -U 1548 ; WX 602 ; N uni060C ; G 1107 -U 1557 ; WX 602 ; N uni0615 ; G 1108 -U 1563 ; WX 602 ; N uni061B ; G 1109 -U 1567 ; WX 602 ; N uni061F ; G 1110 -U 1569 ; WX 602 ; N uni0621 ; G 1111 -U 1570 ; WX 602 ; N uni0622 ; G 1112 -U 1571 ; WX 602 ; N uni0623 ; G 1113 -U 1572 ; WX 602 ; N uni0624 ; G 1114 -U 1573 ; WX 602 ; N uni0625 ; G 1115 -U 1574 ; WX 602 ; N uni0626 ; G 1116 -U 1575 ; WX 602 ; N uni0627 ; G 1117 -U 1576 ; WX 602 ; N uni0628 ; G 1118 -U 1577 ; WX 602 ; N uni0629 ; G 1119 -U 1578 ; WX 602 ; N uni062A ; G 1120 -U 1579 ; WX 602 ; N uni062B ; G 1121 -U 1580 ; WX 602 ; N uni062C ; G 1122 -U 1581 ; WX 602 ; N uni062D ; G 1123 -U 1582 ; WX 602 ; N uni062E ; G 1124 -U 1583 ; WX 602 ; N uni062F ; G 1125 -U 1584 ; WX 602 ; N uni0630 ; G 1126 -U 1585 ; WX 602 ; N uni0631 ; G 1127 -U 1586 ; WX 602 ; N uni0632 ; G 1128 -U 1587 ; WX 602 ; N uni0633 ; G 1129 -U 1588 ; WX 602 ; N uni0634 ; G 1130 -U 1589 ; WX 602 ; N uni0635 ; G 1131 -U 1590 ; WX 602 ; N uni0636 ; G 1132 -U 1591 ; WX 602 ; N uni0637 ; G 1133 -U 1592 ; WX 602 ; N uni0638 ; G 1134 -U 1593 ; WX 602 ; N uni0639 ; G 1135 -U 1594 ; WX 602 ; N uni063A ; G 1136 -U 1600 ; WX 602 ; N uni0640 ; G 1137 -U 1601 ; WX 602 ; N uni0641 ; G 1138 -U 1602 ; WX 602 ; N uni0642 ; G 1139 -U 1603 ; WX 602 ; N uni0643 ; G 1140 -U 1604 ; WX 602 ; N uni0644 ; G 1141 -U 1605 ; WX 602 ; N uni0645 ; G 1142 -U 1606 ; WX 602 ; N uni0646 ; G 1143 -U 1607 ; WX 602 ; N uni0647 ; G 1144 -U 1608 ; WX 602 ; N uni0648 ; G 1145 -U 1609 ; WX 602 ; N uni0649 ; G 1146 -U 1610 ; WX 602 ; N uni064A ; G 1147 -U 1611 ; WX 602 ; N uni064B ; G 1148 -U 1612 ; WX 602 ; N uni064C ; G 1149 -U 1613 ; WX 602 ; N uni064D ; G 1150 -U 1614 ; WX 602 ; N uni064E ; G 1151 -U 1615 ; WX 602 ; N uni064F ; G 1152 -U 1616 ; WX 602 ; N uni0650 ; G 1153 -U 1617 ; WX 602 ; N uni0651 ; G 1154 -U 1618 ; WX 602 ; N uni0652 ; G 1155 -U 1619 ; WX 602 ; N uni0653 ; G 1156 -U 1620 ; WX 602 ; N uni0654 ; G 1157 -U 1621 ; WX 602 ; N uni0655 ; G 1158 -U 1626 ; WX 602 ; N uni065A ; G 1159 -U 1632 ; WX 602 ; N uni0660 ; G 1160 -U 1633 ; WX 602 ; N uni0661 ; G 1161 -U 1634 ; WX 602 ; N uni0662 ; G 1162 -U 1635 ; WX 602 ; N uni0663 ; G 1163 -U 1636 ; WX 602 ; N uni0664 ; G 1164 -U 1637 ; WX 602 ; N uni0665 ; G 1165 -U 1638 ; WX 602 ; N uni0666 ; G 1166 -U 1639 ; WX 602 ; N uni0667 ; G 1167 -U 1640 ; WX 602 ; N uni0668 ; G 1168 -U 1641 ; WX 602 ; N uni0669 ; G 1169 -U 1642 ; WX 602 ; N uni066A ; G 1170 -U 1643 ; WX 602 ; N uni066B ; G 1171 -U 1644 ; WX 602 ; N uni066C ; G 1172 -U 1645 ; WX 602 ; N uni066D ; G 1173 -U 1652 ; WX 602 ; N uni0674 ; G 1174 -U 1657 ; WX 602 ; N uni0679 ; G 1175 -U 1658 ; WX 602 ; N uni067A ; G 1176 -U 1659 ; WX 602 ; N uni067B ; G 1177 -U 1662 ; WX 602 ; N uni067E ; G 1178 -U 1663 ; WX 602 ; N uni067F ; G 1179 -U 1664 ; WX 602 ; N uni0680 ; G 1180 -U 1667 ; WX 602 ; N uni0683 ; G 1181 -U 1668 ; WX 602 ; N uni0684 ; G 1182 -U 1670 ; WX 602 ; N uni0686 ; G 1183 -U 1671 ; WX 602 ; N uni0687 ; G 1184 -U 1681 ; WX 602 ; N uni0691 ; G 1185 -U 1688 ; WX 602 ; N uni0698 ; G 1186 -U 1700 ; WX 602 ; N uni06A4 ; G 1187 -U 1705 ; WX 602 ; N uni06A9 ; G 1188 -U 1711 ; WX 602 ; N uni06AF ; G 1189 -U 1726 ; WX 602 ; N uni06BE ; G 1190 -U 1740 ; WX 602 ; N uni06CC ; G 1191 -U 1776 ; WX 602 ; N uni06F0 ; G 1192 -U 1777 ; WX 602 ; N uni06F1 ; G 1193 -U 1778 ; WX 602 ; N uni06F2 ; G 1194 -U 1779 ; WX 602 ; N uni06F3 ; G 1195 -U 1780 ; WX 602 ; N uni06F4 ; G 1196 -U 1781 ; WX 602 ; N uni06F5 ; G 1197 -U 1782 ; WX 602 ; N uni06F6 ; G 1198 -U 1783 ; WX 602 ; N uni06F7 ; G 1199 -U 1784 ; WX 602 ; N uni06F8 ; G 1200 -U 1785 ; WX 602 ; N uni06F9 ; G 1201 -U 3647 ; WX 602 ; N uni0E3F ; G 1202 -U 3713 ; WX 602 ; N uni0E81 ; G 1203 -U 3714 ; WX 602 ; N uni0E82 ; G 1204 -U 3716 ; WX 602 ; N uni0E84 ; G 1205 -U 3719 ; WX 602 ; N uni0E87 ; G 1206 -U 3720 ; WX 602 ; N uni0E88 ; G 1207 -U 3722 ; WX 602 ; N uni0E8A ; G 1208 -U 3725 ; WX 602 ; N uni0E8D ; G 1209 -U 3732 ; WX 602 ; N uni0E94 ; G 1210 -U 3733 ; WX 602 ; N uni0E95 ; G 1211 -U 3734 ; WX 602 ; N uni0E96 ; G 1212 -U 3735 ; WX 602 ; N uni0E97 ; G 1213 -U 3737 ; WX 602 ; N uni0E99 ; G 1214 -U 3738 ; WX 602 ; N uni0E9A ; G 1215 -U 3739 ; WX 602 ; N uni0E9B ; G 1216 -U 3740 ; WX 602 ; N uni0E9C ; G 1217 -U 3741 ; WX 602 ; N uni0E9D ; G 1218 -U 3742 ; WX 602 ; N uni0E9E ; G 1219 -U 3743 ; WX 602 ; N uni0E9F ; G 1220 -U 3745 ; WX 602 ; N uni0EA1 ; G 1221 -U 3746 ; WX 602 ; N uni0EA2 ; G 1222 -U 3747 ; WX 602 ; N uni0EA3 ; G 1223 -U 3749 ; WX 602 ; N uni0EA5 ; G 1224 -U 3751 ; WX 602 ; N uni0EA7 ; G 1225 -U 3754 ; WX 602 ; N uni0EAA ; G 1226 -U 3755 ; WX 602 ; N uni0EAB ; G 1227 -U 3757 ; WX 602 ; N uni0EAD ; G 1228 -U 3758 ; WX 602 ; N uni0EAE ; G 1229 -U 3759 ; WX 602 ; N uni0EAF ; G 1230 -U 3760 ; WX 602 ; N uni0EB0 ; G 1231 -U 3761 ; WX 602 ; N uni0EB1 ; G 1232 -U 3762 ; WX 602 ; N uni0EB2 ; G 1233 -U 3763 ; WX 602 ; N uni0EB3 ; G 1234 -U 3764 ; WX 602 ; N uni0EB4 ; G 1235 -U 3765 ; WX 602 ; N uni0EB5 ; G 1236 -U 3766 ; WX 602 ; N uni0EB6 ; G 1237 -U 3767 ; WX 602 ; N uni0EB7 ; G 1238 -U 3768 ; WX 602 ; N uni0EB8 ; G 1239 -U 3769 ; WX 602 ; N uni0EB9 ; G 1240 -U 3771 ; WX 602 ; N uni0EBB ; G 1241 -U 3772 ; WX 602 ; N uni0EBC ; G 1242 -U 3784 ; WX 602 ; N uni0EC8 ; G 1243 -U 3785 ; WX 602 ; N uni0EC9 ; G 1244 -U 3786 ; WX 602 ; N uni0ECA ; G 1245 -U 3787 ; WX 602 ; N uni0ECB ; G 1246 -U 3788 ; WX 602 ; N uni0ECC ; G 1247 -U 3789 ; WX 602 ; N uni0ECD ; G 1248 -U 4304 ; WX 602 ; N uni10D0 ; G 1249 -U 4305 ; WX 602 ; N uni10D1 ; G 1250 -U 4306 ; WX 602 ; N uni10D2 ; G 1251 -U 4307 ; WX 602 ; N uni10D3 ; G 1252 -U 4308 ; WX 602 ; N uni10D4 ; G 1253 -U 4309 ; WX 602 ; N uni10D5 ; G 1254 -U 4310 ; WX 602 ; N uni10D6 ; G 1255 -U 4311 ; WX 602 ; N uni10D7 ; G 1256 -U 4312 ; WX 602 ; N uni10D8 ; G 1257 -U 4313 ; WX 602 ; N uni10D9 ; G 1258 -U 4314 ; WX 602 ; N uni10DA ; G 1259 -U 4315 ; WX 602 ; N uni10DB ; G 1260 -U 4316 ; WX 602 ; N uni10DC ; G 1261 -U 4317 ; WX 602 ; N uni10DD ; G 1262 -U 4318 ; WX 602 ; N uni10DE ; G 1263 -U 4319 ; WX 602 ; N uni10DF ; G 1264 -U 4320 ; WX 602 ; N uni10E0 ; G 1265 -U 4321 ; WX 602 ; N uni10E1 ; G 1266 -U 4322 ; WX 602 ; N uni10E2 ; G 1267 -U 4323 ; WX 602 ; N uni10E3 ; G 1268 -U 4324 ; WX 602 ; N uni10E4 ; G 1269 -U 4325 ; WX 602 ; N uni10E5 ; G 1270 -U 4326 ; WX 602 ; N uni10E6 ; G 1271 -U 4327 ; WX 602 ; N uni10E7 ; G 1272 -U 4328 ; WX 602 ; N uni10E8 ; G 1273 -U 4329 ; WX 602 ; N uni10E9 ; G 1274 -U 4330 ; WX 602 ; N uni10EA ; G 1275 -U 4331 ; WX 602 ; N uni10EB ; G 1276 -U 4332 ; WX 602 ; N uni10EC ; G 1277 -U 4333 ; WX 602 ; N uni10ED ; G 1278 -U 4334 ; WX 602 ; N uni10EE ; G 1279 -U 4335 ; WX 602 ; N uni10EF ; G 1280 -U 4336 ; WX 602 ; N uni10F0 ; G 1281 -U 4337 ; WX 602 ; N uni10F1 ; G 1282 -U 4338 ; WX 602 ; N uni10F2 ; G 1283 -U 4339 ; WX 602 ; N uni10F3 ; G 1284 -U 4340 ; WX 602 ; N uni10F4 ; G 1285 -U 4341 ; WX 602 ; N uni10F5 ; G 1286 -U 4342 ; WX 602 ; N uni10F6 ; G 1287 -U 4343 ; WX 602 ; N uni10F7 ; G 1288 -U 4344 ; WX 602 ; N uni10F8 ; G 1289 -U 4345 ; WX 602 ; N uni10F9 ; G 1290 -U 4346 ; WX 602 ; N uni10FA ; G 1291 -U 4347 ; WX 602 ; N uni10FB ; G 1292 -U 4348 ; WX 602 ; N uni10FC ; G 1293 -U 7426 ; WX 602 ; N uni1D02 ; G 1294 -U 7432 ; WX 602 ; N uni1D08 ; G 1295 -U 7433 ; WX 602 ; N uni1D09 ; G 1296 -U 7444 ; WX 602 ; N uni1D14 ; G 1297 -U 7446 ; WX 602 ; N uni1D16 ; G 1298 -U 7447 ; WX 602 ; N uni1D17 ; G 1299 -U 7453 ; WX 602 ; N uni1D1D ; G 1300 -U 7454 ; WX 602 ; N uni1D1E ; G 1301 -U 7455 ; WX 602 ; N uni1D1F ; G 1302 -U 7468 ; WX 602 ; N uni1D2C ; G 1303 -U 7469 ; WX 602 ; N uni1D2D ; G 1304 -U 7470 ; WX 602 ; N uni1D2E ; G 1305 -U 7472 ; WX 602 ; N uni1D30 ; G 1306 -U 7473 ; WX 602 ; N uni1D31 ; G 1307 -U 7474 ; WX 602 ; N uni1D32 ; G 1308 -U 7475 ; WX 602 ; N uni1D33 ; G 1309 -U 7476 ; WX 602 ; N uni1D34 ; G 1310 -U 7477 ; WX 602 ; N uni1D35 ; G 1311 -U 7478 ; WX 602 ; N uni1D36 ; G 1312 -U 7479 ; WX 602 ; N uni1D37 ; G 1313 -U 7480 ; WX 602 ; N uni1D38 ; G 1314 -U 7481 ; WX 602 ; N uni1D39 ; G 1315 -U 7482 ; WX 602 ; N uni1D3A ; G 1316 -U 7483 ; WX 602 ; N uni1D3B ; G 1317 -U 7484 ; WX 602 ; N uni1D3C ; G 1318 -U 7486 ; WX 602 ; N uni1D3E ; G 1319 -U 7487 ; WX 602 ; N uni1D3F ; G 1320 -U 7488 ; WX 602 ; N uni1D40 ; G 1321 -U 7489 ; WX 602 ; N uni1D41 ; G 1322 -U 7490 ; WX 602 ; N uni1D42 ; G 1323 -U 7491 ; WX 602 ; N uni1D43 ; G 1324 -U 7492 ; WX 602 ; N uni1D44 ; G 1325 -U 7493 ; WX 602 ; N uni1D45 ; G 1326 -U 7494 ; WX 602 ; N uni1D46 ; G 1327 -U 7495 ; WX 602 ; N uni1D47 ; G 1328 -U 7496 ; WX 602 ; N uni1D48 ; G 1329 -U 7497 ; WX 602 ; N uni1D49 ; G 1330 -U 7498 ; WX 602 ; N uni1D4A ; G 1331 -U 7499 ; WX 602 ; N uni1D4B ; G 1332 -U 7500 ; WX 602 ; N uni1D4C ; G 1333 -U 7501 ; WX 602 ; N uni1D4D ; G 1334 -U 7502 ; WX 602 ; N uni1D4E ; G 1335 -U 7503 ; WX 602 ; N uni1D4F ; G 1336 -U 7504 ; WX 602 ; N uni1D50 ; G 1337 -U 7505 ; WX 602 ; N uni1D51 ; G 1338 -U 7506 ; WX 602 ; N uni1D52 ; G 1339 -U 7507 ; WX 602 ; N uni1D53 ; G 1340 -U 7508 ; WX 602 ; N uni1D54 ; G 1341 -U 7509 ; WX 602 ; N uni1D55 ; G 1342 -U 7510 ; WX 602 ; N uni1D56 ; G 1343 -U 7511 ; WX 602 ; N uni1D57 ; G 1344 -U 7512 ; WX 602 ; N uni1D58 ; G 1345 -U 7513 ; WX 602 ; N uni1D59 ; G 1346 -U 7514 ; WX 602 ; N uni1D5A ; G 1347 -U 7515 ; WX 602 ; N uni1D5B ; G 1348 -U 7522 ; WX 602 ; N uni1D62 ; G 1349 -U 7523 ; WX 602 ; N uni1D63 ; G 1350 -U 7524 ; WX 602 ; N uni1D64 ; G 1351 -U 7525 ; WX 602 ; N uni1D65 ; G 1352 -U 7543 ; WX 602 ; N uni1D77 ; G 1353 -U 7544 ; WX 602 ; N uni1D78 ; G 1354 -U 7547 ; WX 602 ; N uni1D7B ; G 1355 -U 7557 ; WX 602 ; N uni1D85 ; G 1356 -U 7579 ; WX 602 ; N uni1D9B ; G 1357 -U 7580 ; WX 602 ; N uni1D9C ; G 1358 -U 7581 ; WX 602 ; N uni1D9D ; G 1359 -U 7582 ; WX 602 ; N uni1D9E ; G 1360 -U 7583 ; WX 602 ; N uni1D9F ; G 1361 -U 7584 ; WX 602 ; N uni1DA0 ; G 1362 -U 7585 ; WX 602 ; N uni1DA1 ; G 1363 -U 7586 ; WX 602 ; N uni1DA2 ; G 1364 -U 7587 ; WX 602 ; N uni1DA3 ; G 1365 -U 7588 ; WX 602 ; N uni1DA4 ; G 1366 -U 7589 ; WX 602 ; N uni1DA5 ; G 1367 -U 7590 ; WX 602 ; N uni1DA6 ; G 1368 -U 7591 ; WX 602 ; N uni1DA7 ; G 1369 -U 7592 ; WX 602 ; N uni1DA8 ; G 1370 -U 7593 ; WX 602 ; N uni1DA9 ; G 1371 -U 7594 ; WX 602 ; N uni1DAA ; G 1372 -U 7595 ; WX 602 ; N uni1DAB ; G 1373 -U 7596 ; WX 602 ; N uni1DAC ; G 1374 -U 7597 ; WX 602 ; N uni1DAD ; G 1375 -U 7598 ; WX 602 ; N uni1DAE ; G 1376 -U 7599 ; WX 602 ; N uni1DAF ; G 1377 -U 7600 ; WX 602 ; N uni1DB0 ; G 1378 -U 7601 ; WX 602 ; N uni1DB1 ; G 1379 -U 7602 ; WX 602 ; N uni1DB2 ; G 1380 -U 7603 ; WX 602 ; N uni1DB3 ; G 1381 -U 7604 ; WX 602 ; N uni1DB4 ; G 1382 -U 7605 ; WX 602 ; N uni1DB5 ; G 1383 -U 7606 ; WX 602 ; N uni1DB6 ; G 1384 -U 7607 ; WX 602 ; N uni1DB7 ; G 1385 -U 7609 ; WX 602 ; N uni1DB9 ; G 1386 -U 7610 ; WX 602 ; N uni1DBA ; G 1387 -U 7611 ; WX 602 ; N uni1DBB ; G 1388 -U 7612 ; WX 602 ; N uni1DBC ; G 1389 -U 7613 ; WX 602 ; N uni1DBD ; G 1390 -U 7614 ; WX 602 ; N uni1DBE ; G 1391 -U 7615 ; WX 602 ; N uni1DBF ; G 1392 -U 7680 ; WX 602 ; N uni1E00 ; G 1393 -U 7681 ; WX 602 ; N uni1E01 ; G 1394 -U 7682 ; WX 602 ; N uni1E02 ; G 1395 -U 7683 ; WX 602 ; N uni1E03 ; G 1396 -U 7684 ; WX 602 ; N uni1E04 ; G 1397 -U 7685 ; WX 602 ; N uni1E05 ; G 1398 -U 7686 ; WX 602 ; N uni1E06 ; G 1399 -U 7687 ; WX 602 ; N uni1E07 ; G 1400 -U 7688 ; WX 602 ; N uni1E08 ; G 1401 -U 7689 ; WX 602 ; N uni1E09 ; G 1402 -U 7690 ; WX 602 ; N uni1E0A ; G 1403 -U 7691 ; WX 602 ; N uni1E0B ; G 1404 -U 7692 ; WX 602 ; N uni1E0C ; G 1405 -U 7693 ; WX 602 ; N uni1E0D ; G 1406 -U 7694 ; WX 602 ; N uni1E0E ; G 1407 -U 7695 ; WX 602 ; N uni1E0F ; G 1408 -U 7696 ; WX 602 ; N uni1E10 ; G 1409 -U 7697 ; WX 602 ; N uni1E11 ; G 1410 -U 7698 ; WX 602 ; N uni1E12 ; G 1411 -U 7699 ; WX 602 ; N uni1E13 ; G 1412 -U 7704 ; WX 602 ; N uni1E18 ; G 1413 -U 7705 ; WX 602 ; N uni1E19 ; G 1414 -U 7706 ; WX 602 ; N uni1E1A ; G 1415 -U 7707 ; WX 602 ; N uni1E1B ; G 1416 -U 7708 ; WX 602 ; N uni1E1C ; G 1417 -U 7709 ; WX 602 ; N uni1E1D ; G 1418 -U 7710 ; WX 602 ; N uni1E1E ; G 1419 -U 7711 ; WX 602 ; N uni1E1F ; G 1420 -U 7712 ; WX 602 ; N uni1E20 ; G 1421 -U 7713 ; WX 602 ; N uni1E21 ; G 1422 -U 7714 ; WX 602 ; N uni1E22 ; G 1423 -U 7715 ; WX 602 ; N uni1E23 ; G 1424 -U 7716 ; WX 602 ; N uni1E24 ; G 1425 -U 7717 ; WX 602 ; N uni1E25 ; G 1426 -U 7718 ; WX 602 ; N uni1E26 ; G 1427 -U 7719 ; WX 602 ; N uni1E27 ; G 1428 -U 7720 ; WX 602 ; N uni1E28 ; G 1429 -U 7721 ; WX 602 ; N uni1E29 ; G 1430 -U 7722 ; WX 602 ; N uni1E2A ; G 1431 -U 7723 ; WX 602 ; N uni1E2B ; G 1432 -U 7724 ; WX 602 ; N uni1E2C ; G 1433 -U 7725 ; WX 602 ; N uni1E2D ; G 1434 -U 7728 ; WX 602 ; N uni1E30 ; G 1435 -U 7729 ; WX 602 ; N uni1E31 ; G 1436 -U 7730 ; WX 602 ; N uni1E32 ; G 1437 -U 7731 ; WX 602 ; N uni1E33 ; G 1438 -U 7732 ; WX 602 ; N uni1E34 ; G 1439 -U 7733 ; WX 602 ; N uni1E35 ; G 1440 -U 7734 ; WX 602 ; N uni1E36 ; G 1441 -U 7735 ; WX 602 ; N uni1E37 ; G 1442 -U 7736 ; WX 602 ; N uni1E38 ; G 1443 -U 7737 ; WX 602 ; N uni1E39 ; G 1444 -U 7738 ; WX 602 ; N uni1E3A ; G 1445 -U 7739 ; WX 602 ; N uni1E3B ; G 1446 -U 7740 ; WX 602 ; N uni1E3C ; G 1447 -U 7741 ; WX 602 ; N uni1E3D ; G 1448 -U 7742 ; WX 602 ; N uni1E3E ; G 1449 -U 7743 ; WX 602 ; N uni1E3F ; G 1450 -U 7744 ; WX 602 ; N uni1E40 ; G 1451 -U 7745 ; WX 602 ; N uni1E41 ; G 1452 -U 7746 ; WX 602 ; N uni1E42 ; G 1453 -U 7747 ; WX 602 ; N uni1E43 ; G 1454 -U 7748 ; WX 602 ; N uni1E44 ; G 1455 -U 7749 ; WX 602 ; N uni1E45 ; G 1456 -U 7750 ; WX 602 ; N uni1E46 ; G 1457 -U 7751 ; WX 602 ; N uni1E47 ; G 1458 -U 7752 ; WX 602 ; N uni1E48 ; G 1459 -U 7753 ; WX 602 ; N uni1E49 ; G 1460 -U 7754 ; WX 602 ; N uni1E4A ; G 1461 -U 7755 ; WX 602 ; N uni1E4B ; G 1462 -U 7756 ; WX 602 ; N uni1E4C ; G 1463 -U 7757 ; WX 602 ; N uni1E4D ; G 1464 -U 7764 ; WX 602 ; N uni1E54 ; G 1465 -U 7765 ; WX 602 ; N uni1E55 ; G 1466 -U 7766 ; WX 602 ; N uni1E56 ; G 1467 -U 7767 ; WX 602 ; N uni1E57 ; G 1468 -U 7768 ; WX 602 ; N uni1E58 ; G 1469 -U 7769 ; WX 602 ; N uni1E59 ; G 1470 -U 7770 ; WX 602 ; N uni1E5A ; G 1471 -U 7771 ; WX 602 ; N uni1E5B ; G 1472 -U 7772 ; WX 602 ; N uni1E5C ; G 1473 -U 7773 ; WX 602 ; N uni1E5D ; G 1474 -U 7774 ; WX 602 ; N uni1E5E ; G 1475 -U 7775 ; WX 602 ; N uni1E5F ; G 1476 -U 7776 ; WX 602 ; N uni1E60 ; G 1477 -U 7777 ; WX 602 ; N uni1E61 ; G 1478 -U 7778 ; WX 602 ; N uni1E62 ; G 1479 -U 7779 ; WX 602 ; N uni1E63 ; G 1480 -U 7784 ; WX 602 ; N uni1E68 ; G 1481 -U 7785 ; WX 602 ; N uni1E69 ; G 1482 -U 7786 ; WX 602 ; N uni1E6A ; G 1483 -U 7787 ; WX 602 ; N uni1E6B ; G 1484 -U 7788 ; WX 602 ; N uni1E6C ; G 1485 -U 7789 ; WX 602 ; N uni1E6D ; G 1486 -U 7790 ; WX 602 ; N uni1E6E ; G 1487 -U 7791 ; WX 602 ; N uni1E6F ; G 1488 -U 7792 ; WX 602 ; N uni1E70 ; G 1489 -U 7793 ; WX 602 ; N uni1E71 ; G 1490 -U 7794 ; WX 602 ; N uni1E72 ; G 1491 -U 7795 ; WX 602 ; N uni1E73 ; G 1492 -U 7796 ; WX 602 ; N uni1E74 ; G 1493 -U 7797 ; WX 602 ; N uni1E75 ; G 1494 -U 7798 ; WX 602 ; N uni1E76 ; G 1495 -U 7799 ; WX 602 ; N uni1E77 ; G 1496 -U 7800 ; WX 602 ; N uni1E78 ; G 1497 -U 7801 ; WX 602 ; N uni1E79 ; G 1498 -U 7804 ; WX 602 ; N uni1E7C ; G 1499 -U 7805 ; WX 602 ; N uni1E7D ; G 1500 -U 7806 ; WX 602 ; N uni1E7E ; G 1501 -U 7807 ; WX 602 ; N uni1E7F ; G 1502 -U 7808 ; WX 602 ; N Wgrave ; G 1503 -U 7809 ; WX 602 ; N wgrave ; G 1504 -U 7810 ; WX 602 ; N Wacute ; G 1505 -U 7811 ; WX 602 ; N wacute ; G 1506 -U 7812 ; WX 602 ; N Wdieresis ; G 1507 -U 7813 ; WX 602 ; N wdieresis ; G 1508 -U 7814 ; WX 602 ; N uni1E86 ; G 1509 -U 7815 ; WX 602 ; N uni1E87 ; G 1510 -U 7816 ; WX 602 ; N uni1E88 ; G 1511 -U 7817 ; WX 602 ; N uni1E89 ; G 1512 -U 7818 ; WX 602 ; N uni1E8A ; G 1513 -U 7819 ; WX 602 ; N uni1E8B ; G 1514 -U 7820 ; WX 602 ; N uni1E8C ; G 1515 -U 7821 ; WX 602 ; N uni1E8D ; G 1516 -U 7822 ; WX 602 ; N uni1E8E ; G 1517 -U 7823 ; WX 602 ; N uni1E8F ; G 1518 -U 7824 ; WX 602 ; N uni1E90 ; G 1519 -U 7825 ; WX 602 ; N uni1E91 ; G 1520 -U 7826 ; WX 602 ; N uni1E92 ; G 1521 -U 7827 ; WX 602 ; N uni1E93 ; G 1522 -U 7828 ; WX 602 ; N uni1E94 ; G 1523 -U 7829 ; WX 602 ; N uni1E95 ; G 1524 -U 7830 ; WX 602 ; N uni1E96 ; G 1525 -U 7831 ; WX 602 ; N uni1E97 ; G 1526 -U 7832 ; WX 602 ; N uni1E98 ; G 1527 -U 7833 ; WX 602 ; N uni1E99 ; G 1528 -U 7835 ; WX 602 ; N uni1E9B ; G 1529 -U 7839 ; WX 602 ; N uni1E9F ; G 1530 -U 7840 ; WX 602 ; N uni1EA0 ; G 1531 -U 7841 ; WX 602 ; N uni1EA1 ; G 1532 -U 7852 ; WX 602 ; N uni1EAC ; G 1533 -U 7853 ; WX 602 ; N uni1EAD ; G 1534 -U 7856 ; WX 602 ; N uni1EB0 ; G 1535 -U 7857 ; WX 602 ; N uni1EB1 ; G 1536 -U 7862 ; WX 602 ; N uni1EB6 ; G 1537 -U 7863 ; WX 602 ; N uni1EB7 ; G 1538 -U 7864 ; WX 602 ; N uni1EB8 ; G 1539 -U 7865 ; WX 602 ; N uni1EB9 ; G 1540 -U 7868 ; WX 602 ; N uni1EBC ; G 1541 -U 7869 ; WX 602 ; N uni1EBD ; G 1542 -U 7878 ; WX 602 ; N uni1EC6 ; G 1543 -U 7879 ; WX 602 ; N uni1EC7 ; G 1544 -U 7882 ; WX 602 ; N uni1ECA ; G 1545 -U 7883 ; WX 602 ; N uni1ECB ; G 1546 -U 7884 ; WX 602 ; N uni1ECC ; G 1547 -U 7885 ; WX 602 ; N uni1ECD ; G 1548 -U 7896 ; WX 602 ; N uni1ED8 ; G 1549 -U 7897 ; WX 602 ; N uni1ED9 ; G 1550 -U 7898 ; WX 602 ; N uni1EDA ; G 1551 -U 7899 ; WX 602 ; N uni1EDB ; G 1552 -U 7900 ; WX 602 ; N uni1EDC ; G 1553 -U 7901 ; WX 602 ; N uni1EDD ; G 1554 -U 7904 ; WX 602 ; N uni1EE0 ; G 1555 -U 7905 ; WX 602 ; N uni1EE1 ; G 1556 -U 7906 ; WX 602 ; N uni1EE2 ; G 1557 -U 7907 ; WX 602 ; N uni1EE3 ; G 1558 -U 7908 ; WX 602 ; N uni1EE4 ; G 1559 -U 7909 ; WX 602 ; N uni1EE5 ; G 1560 -U 7912 ; WX 602 ; N uni1EE8 ; G 1561 -U 7913 ; WX 602 ; N uni1EE9 ; G 1562 -U 7914 ; WX 602 ; N uni1EEA ; G 1563 -U 7915 ; WX 602 ; N uni1EEB ; G 1564 -U 7918 ; WX 602 ; N uni1EEE ; G 1565 -U 7919 ; WX 602 ; N uni1EEF ; G 1566 -U 7920 ; WX 602 ; N uni1EF0 ; G 1567 -U 7921 ; WX 602 ; N uni1EF1 ; G 1568 -U 7922 ; WX 602 ; N Ygrave ; G 1569 -U 7923 ; WX 602 ; N ygrave ; G 1570 -U 7924 ; WX 602 ; N uni1EF4 ; G 1571 -U 7925 ; WX 602 ; N uni1EF5 ; G 1572 -U 7928 ; WX 602 ; N uni1EF8 ; G 1573 -U 7929 ; WX 602 ; N uni1EF9 ; G 1574 -U 7936 ; WX 602 ; N uni1F00 ; G 1575 -U 7937 ; WX 602 ; N uni1F01 ; G 1576 -U 7938 ; WX 602 ; N uni1F02 ; G 1577 -U 7939 ; WX 602 ; N uni1F03 ; G 1578 -U 7940 ; WX 602 ; N uni1F04 ; G 1579 -U 7941 ; WX 602 ; N uni1F05 ; G 1580 -U 7942 ; WX 602 ; N uni1F06 ; G 1581 -U 7943 ; WX 602 ; N uni1F07 ; G 1582 -U 7944 ; WX 602 ; N uni1F08 ; G 1583 -U 7945 ; WX 602 ; N uni1F09 ; G 1584 -U 7946 ; WX 602 ; N uni1F0A ; G 1585 -U 7947 ; WX 602 ; N uni1F0B ; G 1586 -U 7948 ; WX 602 ; N uni1F0C ; G 1587 -U 7949 ; WX 602 ; N uni1F0D ; G 1588 -U 7950 ; WX 602 ; N uni1F0E ; G 1589 -U 7951 ; WX 602 ; N uni1F0F ; G 1590 -U 7952 ; WX 602 ; N uni1F10 ; G 1591 -U 7953 ; WX 602 ; N uni1F11 ; G 1592 -U 7954 ; WX 602 ; N uni1F12 ; G 1593 -U 7955 ; WX 602 ; N uni1F13 ; G 1594 -U 7956 ; WX 602 ; N uni1F14 ; G 1595 -U 7957 ; WX 602 ; N uni1F15 ; G 1596 -U 7960 ; WX 602 ; N uni1F18 ; G 1597 -U 7961 ; WX 602 ; N uni1F19 ; G 1598 -U 7962 ; WX 602 ; N uni1F1A ; G 1599 -U 7963 ; WX 602 ; N uni1F1B ; G 1600 -U 7964 ; WX 602 ; N uni1F1C ; G 1601 -U 7965 ; WX 602 ; N uni1F1D ; G 1602 -U 7968 ; WX 602 ; N uni1F20 ; G 1603 -U 7969 ; WX 602 ; N uni1F21 ; G 1604 -U 7970 ; WX 602 ; N uni1F22 ; G 1605 -U 7971 ; WX 602 ; N uni1F23 ; G 1606 -U 7972 ; WX 602 ; N uni1F24 ; G 1607 -U 7973 ; WX 602 ; N uni1F25 ; G 1608 -U 7974 ; WX 602 ; N uni1F26 ; G 1609 -U 7975 ; WX 602 ; N uni1F27 ; G 1610 -U 7976 ; WX 602 ; N uni1F28 ; G 1611 -U 7977 ; WX 602 ; N uni1F29 ; G 1612 -U 7978 ; WX 602 ; N uni1F2A ; G 1613 -U 7979 ; WX 602 ; N uni1F2B ; G 1614 -U 7980 ; WX 602 ; N uni1F2C ; G 1615 -U 7981 ; WX 602 ; N uni1F2D ; G 1616 -U 7982 ; WX 602 ; N uni1F2E ; G 1617 -U 7983 ; WX 602 ; N uni1F2F ; G 1618 -U 7984 ; WX 602 ; N uni1F30 ; G 1619 -U 7985 ; WX 602 ; N uni1F31 ; G 1620 -U 7986 ; WX 602 ; N uni1F32 ; G 1621 -U 7987 ; WX 602 ; N uni1F33 ; G 1622 -U 7988 ; WX 602 ; N uni1F34 ; G 1623 -U 7989 ; WX 602 ; N uni1F35 ; G 1624 -U 7990 ; WX 602 ; N uni1F36 ; G 1625 -U 7991 ; WX 602 ; N uni1F37 ; G 1626 -U 7992 ; WX 602 ; N uni1F38 ; G 1627 -U 7993 ; WX 602 ; N uni1F39 ; G 1628 -U 7994 ; WX 602 ; N uni1F3A ; G 1629 -U 7995 ; WX 602 ; N uni1F3B ; G 1630 -U 7996 ; WX 602 ; N uni1F3C ; G 1631 -U 7997 ; WX 602 ; N uni1F3D ; G 1632 -U 7998 ; WX 602 ; N uni1F3E ; G 1633 -U 7999 ; WX 602 ; N uni1F3F ; G 1634 -U 8000 ; WX 602 ; N uni1F40 ; G 1635 -U 8001 ; WX 602 ; N uni1F41 ; G 1636 -U 8002 ; WX 602 ; N uni1F42 ; G 1637 -U 8003 ; WX 602 ; N uni1F43 ; G 1638 -U 8004 ; WX 602 ; N uni1F44 ; G 1639 -U 8005 ; WX 602 ; N uni1F45 ; G 1640 -U 8008 ; WX 602 ; N uni1F48 ; G 1641 -U 8009 ; WX 602 ; N uni1F49 ; G 1642 -U 8010 ; WX 602 ; N uni1F4A ; G 1643 -U 8011 ; WX 602 ; N uni1F4B ; G 1644 -U 8012 ; WX 602 ; N uni1F4C ; G 1645 -U 8013 ; WX 602 ; N uni1F4D ; G 1646 -U 8016 ; WX 602 ; N uni1F50 ; G 1647 -U 8017 ; WX 602 ; N uni1F51 ; G 1648 -U 8018 ; WX 602 ; N uni1F52 ; G 1649 -U 8019 ; WX 602 ; N uni1F53 ; G 1650 -U 8020 ; WX 602 ; N uni1F54 ; G 1651 -U 8021 ; WX 602 ; N uni1F55 ; G 1652 -U 8022 ; WX 602 ; N uni1F56 ; G 1653 -U 8023 ; WX 602 ; N uni1F57 ; G 1654 -U 8025 ; WX 602 ; N uni1F59 ; G 1655 -U 8027 ; WX 602 ; N uni1F5B ; G 1656 -U 8029 ; WX 602 ; N uni1F5D ; G 1657 -U 8031 ; WX 602 ; N uni1F5F ; G 1658 -U 8032 ; WX 602 ; N uni1F60 ; G 1659 -U 8033 ; WX 602 ; N uni1F61 ; G 1660 -U 8034 ; WX 602 ; N uni1F62 ; G 1661 -U 8035 ; WX 602 ; N uni1F63 ; G 1662 -U 8036 ; WX 602 ; N uni1F64 ; G 1663 -U 8037 ; WX 602 ; N uni1F65 ; G 1664 -U 8038 ; WX 602 ; N uni1F66 ; G 1665 -U 8039 ; WX 602 ; N uni1F67 ; G 1666 -U 8040 ; WX 602 ; N uni1F68 ; G 1667 -U 8041 ; WX 602 ; N uni1F69 ; G 1668 -U 8042 ; WX 602 ; N uni1F6A ; G 1669 -U 8043 ; WX 602 ; N uni1F6B ; G 1670 -U 8044 ; WX 602 ; N uni1F6C ; G 1671 -U 8045 ; WX 602 ; N uni1F6D ; G 1672 -U 8046 ; WX 602 ; N uni1F6E ; G 1673 -U 8047 ; WX 602 ; N uni1F6F ; G 1674 -U 8048 ; WX 602 ; N uni1F70 ; G 1675 -U 8049 ; WX 602 ; N uni1F71 ; G 1676 -U 8050 ; WX 602 ; N uni1F72 ; G 1677 -U 8051 ; WX 602 ; N uni1F73 ; G 1678 -U 8052 ; WX 602 ; N uni1F74 ; G 1679 -U 8053 ; WX 602 ; N uni1F75 ; G 1680 -U 8054 ; WX 602 ; N uni1F76 ; G 1681 -U 8055 ; WX 602 ; N uni1F77 ; G 1682 -U 8056 ; WX 602 ; N uni1F78 ; G 1683 -U 8057 ; WX 602 ; N uni1F79 ; G 1684 -U 8058 ; WX 602 ; N uni1F7A ; G 1685 -U 8059 ; WX 602 ; N uni1F7B ; G 1686 -U 8060 ; WX 602 ; N uni1F7C ; G 1687 -U 8061 ; WX 602 ; N uni1F7D ; G 1688 -U 8064 ; WX 602 ; N uni1F80 ; G 1689 -U 8065 ; WX 602 ; N uni1F81 ; G 1690 -U 8066 ; WX 602 ; N uni1F82 ; G 1691 -U 8067 ; WX 602 ; N uni1F83 ; G 1692 -U 8068 ; WX 602 ; N uni1F84 ; G 1693 -U 8069 ; WX 602 ; N uni1F85 ; G 1694 -U 8070 ; WX 602 ; N uni1F86 ; G 1695 -U 8071 ; WX 602 ; N uni1F87 ; G 1696 -U 8072 ; WX 602 ; N uni1F88 ; G 1697 -U 8073 ; WX 602 ; N uni1F89 ; G 1698 -U 8074 ; WX 602 ; N uni1F8A ; G 1699 -U 8075 ; WX 602 ; N uni1F8B ; G 1700 -U 8076 ; WX 602 ; N uni1F8C ; G 1701 -U 8077 ; WX 602 ; N uni1F8D ; G 1702 -U 8078 ; WX 602 ; N uni1F8E ; G 1703 -U 8079 ; WX 602 ; N uni1F8F ; G 1704 -U 8080 ; WX 602 ; N uni1F90 ; G 1705 -U 8081 ; WX 602 ; N uni1F91 ; G 1706 -U 8082 ; WX 602 ; N uni1F92 ; G 1707 -U 8083 ; WX 602 ; N uni1F93 ; G 1708 -U 8084 ; WX 602 ; N uni1F94 ; G 1709 -U 8085 ; WX 602 ; N uni1F95 ; G 1710 -U 8086 ; WX 602 ; N uni1F96 ; G 1711 -U 8087 ; WX 602 ; N uni1F97 ; G 1712 -U 8088 ; WX 602 ; N uni1F98 ; G 1713 -U 8089 ; WX 602 ; N uni1F99 ; G 1714 -U 8090 ; WX 602 ; N uni1F9A ; G 1715 -U 8091 ; WX 602 ; N uni1F9B ; G 1716 -U 8092 ; WX 602 ; N uni1F9C ; G 1717 -U 8093 ; WX 602 ; N uni1F9D ; G 1718 -U 8094 ; WX 602 ; N uni1F9E ; G 1719 -U 8095 ; WX 602 ; N uni1F9F ; G 1720 -U 8096 ; WX 602 ; N uni1FA0 ; G 1721 -U 8097 ; WX 602 ; N uni1FA1 ; G 1722 -U 8098 ; WX 602 ; N uni1FA2 ; G 1723 -U 8099 ; WX 602 ; N uni1FA3 ; G 1724 -U 8100 ; WX 602 ; N uni1FA4 ; G 1725 -U 8101 ; WX 602 ; N uni1FA5 ; G 1726 -U 8102 ; WX 602 ; N uni1FA6 ; G 1727 -U 8103 ; WX 602 ; N uni1FA7 ; G 1728 -U 8104 ; WX 602 ; N uni1FA8 ; G 1729 -U 8105 ; WX 602 ; N uni1FA9 ; G 1730 -U 8106 ; WX 602 ; N uni1FAA ; G 1731 -U 8107 ; WX 602 ; N uni1FAB ; G 1732 -U 8108 ; WX 602 ; N uni1FAC ; G 1733 -U 8109 ; WX 602 ; N uni1FAD ; G 1734 -U 8110 ; WX 602 ; N uni1FAE ; G 1735 -U 8111 ; WX 602 ; N uni1FAF ; G 1736 -U 8112 ; WX 602 ; N uni1FB0 ; G 1737 -U 8113 ; WX 602 ; N uni1FB1 ; G 1738 -U 8114 ; WX 602 ; N uni1FB2 ; G 1739 -U 8115 ; WX 602 ; N uni1FB3 ; G 1740 -U 8116 ; WX 602 ; N uni1FB4 ; G 1741 -U 8118 ; WX 602 ; N uni1FB6 ; G 1742 -U 8119 ; WX 602 ; N uni1FB7 ; G 1743 -U 8120 ; WX 602 ; N uni1FB8 ; G 1744 -U 8121 ; WX 602 ; N uni1FB9 ; G 1745 -U 8122 ; WX 602 ; N uni1FBA ; G 1746 -U 8123 ; WX 602 ; N uni1FBB ; G 1747 -U 8124 ; WX 602 ; N uni1FBC ; G 1748 -U 8125 ; WX 602 ; N uni1FBD ; G 1749 -U 8126 ; WX 602 ; N uni1FBE ; G 1750 -U 8127 ; WX 602 ; N uni1FBF ; G 1751 -U 8128 ; WX 602 ; N uni1FC0 ; G 1752 -U 8129 ; WX 602 ; N uni1FC1 ; G 1753 -U 8130 ; WX 602 ; N uni1FC2 ; G 1754 -U 8131 ; WX 602 ; N uni1FC3 ; G 1755 -U 8132 ; WX 602 ; N uni1FC4 ; G 1756 -U 8134 ; WX 602 ; N uni1FC6 ; G 1757 -U 8135 ; WX 602 ; N uni1FC7 ; G 1758 -U 8136 ; WX 602 ; N uni1FC8 ; G 1759 -U 8137 ; WX 602 ; N uni1FC9 ; G 1760 -U 8138 ; WX 602 ; N uni1FCA ; G 1761 -U 8139 ; WX 602 ; N uni1FCB ; G 1762 -U 8140 ; WX 602 ; N uni1FCC ; G 1763 -U 8141 ; WX 602 ; N uni1FCD ; G 1764 -U 8142 ; WX 602 ; N uni1FCE ; G 1765 -U 8143 ; WX 602 ; N uni1FCF ; G 1766 -U 8144 ; WX 602 ; N uni1FD0 ; G 1767 -U 8145 ; WX 602 ; N uni1FD1 ; G 1768 -U 8146 ; WX 602 ; N uni1FD2 ; G 1769 -U 8147 ; WX 602 ; N uni1FD3 ; G 1770 -U 8150 ; WX 602 ; N uni1FD6 ; G 1771 -U 8151 ; WX 602 ; N uni1FD7 ; G 1772 -U 8152 ; WX 602 ; N uni1FD8 ; G 1773 -U 8153 ; WX 602 ; N uni1FD9 ; G 1774 -U 8154 ; WX 602 ; N uni1FDA ; G 1775 -U 8155 ; WX 602 ; N uni1FDB ; G 1776 -U 8157 ; WX 602 ; N uni1FDD ; G 1777 -U 8158 ; WX 602 ; N uni1FDE ; G 1778 -U 8159 ; WX 602 ; N uni1FDF ; G 1779 -U 8160 ; WX 602 ; N uni1FE0 ; G 1780 -U 8161 ; WX 602 ; N uni1FE1 ; G 1781 -U 8162 ; WX 602 ; N uni1FE2 ; G 1782 -U 8163 ; WX 602 ; N uni1FE3 ; G 1783 -U 8164 ; WX 602 ; N uni1FE4 ; G 1784 -U 8165 ; WX 602 ; N uni1FE5 ; G 1785 -U 8166 ; WX 602 ; N uni1FE6 ; G 1786 -U 8167 ; WX 602 ; N uni1FE7 ; G 1787 -U 8168 ; WX 602 ; N uni1FE8 ; G 1788 -U 8169 ; WX 602 ; N uni1FE9 ; G 1789 -U 8170 ; WX 602 ; N uni1FEA ; G 1790 -U 8171 ; WX 602 ; N uni1FEB ; G 1791 -U 8172 ; WX 602 ; N uni1FEC ; G 1792 -U 8173 ; WX 602 ; N uni1FED ; G 1793 -U 8174 ; WX 602 ; N uni1FEE ; G 1794 -U 8175 ; WX 602 ; N uni1FEF ; G 1795 -U 8178 ; WX 602 ; N uni1FF2 ; G 1796 -U 8179 ; WX 602 ; N uni1FF3 ; G 1797 -U 8180 ; WX 602 ; N uni1FF4 ; G 1798 -U 8182 ; WX 602 ; N uni1FF6 ; G 1799 -U 8183 ; WX 602 ; N uni1FF7 ; G 1800 -U 8184 ; WX 602 ; N uni1FF8 ; G 1801 -U 8185 ; WX 602 ; N uni1FF9 ; G 1802 -U 8186 ; WX 602 ; N uni1FFA ; G 1803 -U 8187 ; WX 602 ; N uni1FFB ; G 1804 -U 8188 ; WX 602 ; N uni1FFC ; G 1805 -U 8189 ; WX 602 ; N uni1FFD ; G 1806 -U 8190 ; WX 602 ; N uni1FFE ; G 1807 -U 8192 ; WX 602 ; N uni2000 ; G 1808 -U 8193 ; WX 602 ; N uni2001 ; G 1809 -U 8194 ; WX 602 ; N uni2002 ; G 1810 -U 8195 ; WX 602 ; N uni2003 ; G 1811 -U 8196 ; WX 602 ; N uni2004 ; G 1812 -U 8197 ; WX 602 ; N uni2005 ; G 1813 -U 8198 ; WX 602 ; N uni2006 ; G 1814 -U 8199 ; WX 602 ; N uni2007 ; G 1815 -U 8200 ; WX 602 ; N uni2008 ; G 1816 -U 8201 ; WX 602 ; N uni2009 ; G 1817 -U 8202 ; WX 602 ; N uni200A ; G 1818 -U 8208 ; WX 602 ; N uni2010 ; G 1819 -U 8209 ; WX 602 ; N uni2011 ; G 1820 -U 8210 ; WX 602 ; N figuredash ; G 1821 -U 8211 ; WX 602 ; N endash ; G 1822 -U 8212 ; WX 602 ; N emdash ; G 1823 -U 8213 ; WX 602 ; N uni2015 ; G 1824 -U 8214 ; WX 602 ; N uni2016 ; G 1825 -U 8215 ; WX 602 ; N underscoredbl ; G 1826 -U 8216 ; WX 602 ; N quoteleft ; G 1827 -U 8217 ; WX 602 ; N quoteright ; G 1828 -U 8218 ; WX 602 ; N quotesinglbase ; G 1829 -U 8219 ; WX 602 ; N quotereversed ; G 1830 -U 8220 ; WX 602 ; N quotedblleft ; G 1831 -U 8221 ; WX 602 ; N quotedblright ; G 1832 -U 8222 ; WX 602 ; N quotedblbase ; G 1833 -U 8223 ; WX 602 ; N uni201F ; G 1834 -U 8224 ; WX 602 ; N dagger ; G 1835 -U 8225 ; WX 602 ; N daggerdbl ; G 1836 -U 8226 ; WX 602 ; N bullet ; G 1837 -U 8227 ; WX 602 ; N uni2023 ; G 1838 -U 8230 ; WX 602 ; N ellipsis ; G 1839 -U 8239 ; WX 602 ; N uni202F ; G 1840 -U 8240 ; WX 602 ; N perthousand ; G 1841 -U 8241 ; WX 602 ; N uni2031 ; G 1842 -U 8242 ; WX 602 ; N minute ; G 1843 -U 8243 ; WX 602 ; N second ; G 1844 -U 8244 ; WX 602 ; N uni2034 ; G 1845 -U 8245 ; WX 602 ; N uni2035 ; G 1846 -U 8246 ; WX 602 ; N uni2036 ; G 1847 -U 8247 ; WX 602 ; N uni2037 ; G 1848 -U 8249 ; WX 602 ; N guilsinglleft ; G 1849 -U 8250 ; WX 602 ; N guilsinglright ; G 1850 -U 8252 ; WX 602 ; N exclamdbl ; G 1851 -U 8253 ; WX 602 ; N uni203D ; G 1852 -U 8254 ; WX 602 ; N uni203E ; G 1853 -U 8255 ; WX 602 ; N uni203F ; G 1854 -U 8261 ; WX 602 ; N uni2045 ; G 1855 -U 8262 ; WX 602 ; N uni2046 ; G 1856 -U 8263 ; WX 602 ; N uni2047 ; G 1857 -U 8264 ; WX 602 ; N uni2048 ; G 1858 -U 8265 ; WX 602 ; N uni2049 ; G 1859 -U 8267 ; WX 602 ; N uni204B ; G 1860 -U 8287 ; WX 602 ; N uni205F ; G 1861 -U 8304 ; WX 602 ; N uni2070 ; G 1862 -U 8305 ; WX 602 ; N uni2071 ; G 1863 -U 8308 ; WX 602 ; N uni2074 ; G 1864 -U 8309 ; WX 602 ; N uni2075 ; G 1865 -U 8310 ; WX 602 ; N uni2076 ; G 1866 -U 8311 ; WX 602 ; N uni2077 ; G 1867 -U 8312 ; WX 602 ; N uni2078 ; G 1868 -U 8313 ; WX 602 ; N uni2079 ; G 1869 -U 8314 ; WX 602 ; N uni207A ; G 1870 -U 8315 ; WX 602 ; N uni207B ; G 1871 -U 8316 ; WX 602 ; N uni207C ; G 1872 -U 8317 ; WX 602 ; N uni207D ; G 1873 -U 8318 ; WX 602 ; N uni207E ; G 1874 -U 8319 ; WX 602 ; N uni207F ; G 1875 -U 8320 ; WX 602 ; N uni2080 ; G 1876 -U 8321 ; WX 602 ; N uni2081 ; G 1877 -U 8322 ; WX 602 ; N uni2082 ; G 1878 -U 8323 ; WX 602 ; N uni2083 ; G 1879 -U 8324 ; WX 602 ; N uni2084 ; G 1880 -U 8325 ; WX 602 ; N uni2085 ; G 1881 -U 8326 ; WX 602 ; N uni2086 ; G 1882 -U 8327 ; WX 602 ; N uni2087 ; G 1883 -U 8328 ; WX 602 ; N uni2088 ; G 1884 -U 8329 ; WX 602 ; N uni2089 ; G 1885 -U 8330 ; WX 602 ; N uni208A ; G 1886 -U 8331 ; WX 602 ; N uni208B ; G 1887 -U 8332 ; WX 602 ; N uni208C ; G 1888 -U 8333 ; WX 602 ; N uni208D ; G 1889 -U 8334 ; WX 602 ; N uni208E ; G 1890 -U 8336 ; WX 602 ; N uni2090 ; G 1891 -U 8337 ; WX 602 ; N uni2091 ; G 1892 -U 8338 ; WX 602 ; N uni2092 ; G 1893 -U 8339 ; WX 602 ; N uni2093 ; G 1894 -U 8340 ; WX 602 ; N uni2094 ; G 1895 -U 8341 ; WX 602 ; N uni2095 ; G 1896 -U 8342 ; WX 602 ; N uni2096 ; G 1897 -U 8343 ; WX 602 ; N uni2097 ; G 1898 -U 8344 ; WX 602 ; N uni2098 ; G 1899 -U 8345 ; WX 602 ; N uni2099 ; G 1900 -U 8346 ; WX 602 ; N uni209A ; G 1901 -U 8347 ; WX 602 ; N uni209B ; G 1902 -U 8348 ; WX 602 ; N uni209C ; G 1903 -U 8352 ; WX 602 ; N uni20A0 ; G 1904 -U 8353 ; WX 602 ; N colonmonetary ; G 1905 -U 8354 ; WX 602 ; N uni20A2 ; G 1906 -U 8355 ; WX 602 ; N franc ; G 1907 -U 8356 ; WX 602 ; N lira ; G 1908 -U 8357 ; WX 602 ; N uni20A5 ; G 1909 -U 8358 ; WX 602 ; N uni20A6 ; G 1910 -U 8359 ; WX 602 ; N peseta ; G 1911 -U 8360 ; WX 602 ; N uni20A8 ; G 1912 -U 8361 ; WX 602 ; N uni20A9 ; G 1913 -U 8362 ; WX 602 ; N uni20AA ; G 1914 -U 8363 ; WX 602 ; N dong ; G 1915 -U 8364 ; WX 602 ; N Euro ; G 1916 -U 8365 ; WX 602 ; N uni20AD ; G 1917 -U 8366 ; WX 602 ; N uni20AE ; G 1918 -U 8367 ; WX 602 ; N uni20AF ; G 1919 -U 8368 ; WX 602 ; N uni20B0 ; G 1920 -U 8369 ; WX 602 ; N uni20B1 ; G 1921 -U 8370 ; WX 602 ; N uni20B2 ; G 1922 -U 8371 ; WX 602 ; N uni20B3 ; G 1923 -U 8372 ; WX 602 ; N uni20B4 ; G 1924 -U 8373 ; WX 602 ; N uni20B5 ; G 1925 -U 8376 ; WX 602 ; N uni20B8 ; G 1926 -U 8377 ; WX 602 ; N uni20B9 ; G 1927 -U 8378 ; WX 602 ; N uni20BA ; G 1928 -U 8381 ; WX 602 ; N uni20BD ; G 1929 -U 8450 ; WX 602 ; N uni2102 ; G 1930 -U 8453 ; WX 602 ; N uni2105 ; G 1931 -U 8461 ; WX 602 ; N uni210D ; G 1932 -U 8462 ; WX 602 ; N uni210E ; G 1933 -U 8463 ; WX 602 ; N uni210F ; G 1934 -U 8469 ; WX 602 ; N uni2115 ; G 1935 -U 8470 ; WX 602 ; N uni2116 ; G 1936 -U 8471 ; WX 602 ; N uni2117 ; G 1937 -U 8473 ; WX 602 ; N uni2119 ; G 1938 -U 8474 ; WX 602 ; N uni211A ; G 1939 -U 8477 ; WX 602 ; N uni211D ; G 1940 -U 8482 ; WX 602 ; N trademark ; G 1941 -U 8484 ; WX 602 ; N uni2124 ; G 1942 -U 8486 ; WX 602 ; N uni2126 ; G 1943 -U 8490 ; WX 602 ; N uni212A ; G 1944 -U 8491 ; WX 602 ; N uni212B ; G 1945 -U 8494 ; WX 602 ; N estimated ; G 1946 -U 8520 ; WX 602 ; N uni2148 ; G 1947 -U 8528 ; WX 602 ; N uni2150 ; G 1948 -U 8529 ; WX 602 ; N uni2151 ; G 1949 -U 8531 ; WX 602 ; N onethird ; G 1950 -U 8532 ; WX 602 ; N twothirds ; G 1951 -U 8533 ; WX 602 ; N uni2155 ; G 1952 -U 8534 ; WX 602 ; N uni2156 ; G 1953 -U 8535 ; WX 602 ; N uni2157 ; G 1954 -U 8536 ; WX 602 ; N uni2158 ; G 1955 -U 8537 ; WX 602 ; N uni2159 ; G 1956 -U 8538 ; WX 602 ; N uni215A ; G 1957 -U 8539 ; WX 602 ; N oneeighth ; G 1958 -U 8540 ; WX 602 ; N threeeighths ; G 1959 -U 8541 ; WX 602 ; N fiveeighths ; G 1960 -U 8542 ; WX 602 ; N seveneighths ; G 1961 -U 8543 ; WX 602 ; N uni215F ; G 1962 -U 8585 ; WX 602 ; N uni2189 ; G 1963 -U 8592 ; WX 602 ; N arrowleft ; G 1964 -U 8593 ; WX 602 ; N arrowup ; G 1965 -U 8594 ; WX 602 ; N arrowright ; G 1966 -U 8595 ; WX 602 ; N arrowdown ; G 1967 -U 8596 ; WX 602 ; N arrowboth ; G 1968 -U 8597 ; WX 602 ; N arrowupdn ; G 1969 -U 8598 ; WX 602 ; N uni2196 ; G 1970 -U 8599 ; WX 602 ; N uni2197 ; G 1971 -U 8600 ; WX 602 ; N uni2198 ; G 1972 -U 8601 ; WX 602 ; N uni2199 ; G 1973 -U 8602 ; WX 602 ; N uni219A ; G 1974 -U 8603 ; WX 602 ; N uni219B ; G 1975 -U 8604 ; WX 602 ; N uni219C ; G 1976 -U 8605 ; WX 602 ; N uni219D ; G 1977 -U 8606 ; WX 602 ; N uni219E ; G 1978 -U 8607 ; WX 602 ; N uni219F ; G 1979 -U 8608 ; WX 602 ; N uni21A0 ; G 1980 -U 8609 ; WX 602 ; N uni21A1 ; G 1981 -U 8610 ; WX 602 ; N uni21A2 ; G 1982 -U 8611 ; WX 602 ; N uni21A3 ; G 1983 -U 8612 ; WX 602 ; N uni21A4 ; G 1984 -U 8613 ; WX 602 ; N uni21A5 ; G 1985 -U 8614 ; WX 602 ; N uni21A6 ; G 1986 -U 8615 ; WX 602 ; N uni21A7 ; G 1987 -U 8616 ; WX 602 ; N arrowupdnbse ; G 1988 -U 8617 ; WX 602 ; N uni21A9 ; G 1989 -U 8618 ; WX 602 ; N uni21AA ; G 1990 -U 8619 ; WX 602 ; N uni21AB ; G 1991 -U 8620 ; WX 602 ; N uni21AC ; G 1992 -U 8621 ; WX 602 ; N uni21AD ; G 1993 -U 8622 ; WX 602 ; N uni21AE ; G 1994 -U 8623 ; WX 602 ; N uni21AF ; G 1995 -U 8624 ; WX 602 ; N uni21B0 ; G 1996 -U 8625 ; WX 602 ; N uni21B1 ; G 1997 -U 8626 ; WX 602 ; N uni21B2 ; G 1998 -U 8627 ; WX 602 ; N uni21B3 ; G 1999 -U 8628 ; WX 602 ; N uni21B4 ; G 2000 -U 8629 ; WX 602 ; N carriagereturn ; G 2001 -U 8630 ; WX 602 ; N uni21B6 ; G 2002 -U 8631 ; WX 602 ; N uni21B7 ; G 2003 -U 8632 ; WX 602 ; N uni21B8 ; G 2004 -U 8633 ; WX 602 ; N uni21B9 ; G 2005 -U 8634 ; WX 602 ; N uni21BA ; G 2006 -U 8635 ; WX 602 ; N uni21BB ; G 2007 -U 8636 ; WX 602 ; N uni21BC ; G 2008 -U 8637 ; WX 602 ; N uni21BD ; G 2009 -U 8638 ; WX 602 ; N uni21BE ; G 2010 -U 8639 ; WX 602 ; N uni21BF ; G 2011 -U 8640 ; WX 602 ; N uni21C0 ; G 2012 -U 8641 ; WX 602 ; N uni21C1 ; G 2013 -U 8642 ; WX 602 ; N uni21C2 ; G 2014 -U 8643 ; WX 602 ; N uni21C3 ; G 2015 -U 8644 ; WX 602 ; N uni21C4 ; G 2016 -U 8645 ; WX 602 ; N uni21C5 ; G 2017 -U 8646 ; WX 602 ; N uni21C6 ; G 2018 -U 8647 ; WX 602 ; N uni21C7 ; G 2019 -U 8648 ; WX 602 ; N uni21C8 ; G 2020 -U 8649 ; WX 602 ; N uni21C9 ; G 2021 -U 8650 ; WX 602 ; N uni21CA ; G 2022 -U 8651 ; WX 602 ; N uni21CB ; G 2023 -U 8652 ; WX 602 ; N uni21CC ; G 2024 -U 8653 ; WX 602 ; N uni21CD ; G 2025 -U 8654 ; WX 602 ; N uni21CE ; G 2026 -U 8655 ; WX 602 ; N uni21CF ; G 2027 -U 8656 ; WX 602 ; N arrowdblleft ; G 2028 -U 8657 ; WX 602 ; N arrowdblup ; G 2029 -U 8658 ; WX 602 ; N arrowdblright ; G 2030 -U 8659 ; WX 602 ; N arrowdbldown ; G 2031 -U 8660 ; WX 602 ; N arrowdblboth ; G 2032 -U 8661 ; WX 602 ; N uni21D5 ; G 2033 -U 8662 ; WX 602 ; N uni21D6 ; G 2034 -U 8663 ; WX 602 ; N uni21D7 ; G 2035 -U 8664 ; WX 602 ; N uni21D8 ; G 2036 -U 8665 ; WX 602 ; N uni21D9 ; G 2037 -U 8666 ; WX 602 ; N uni21DA ; G 2038 -U 8667 ; WX 602 ; N uni21DB ; G 2039 -U 8668 ; WX 602 ; N uni21DC ; G 2040 -U 8669 ; WX 602 ; N uni21DD ; G 2041 -U 8670 ; WX 602 ; N uni21DE ; G 2042 -U 8671 ; WX 602 ; N uni21DF ; G 2043 -U 8672 ; WX 602 ; N uni21E0 ; G 2044 -U 8673 ; WX 602 ; N uni21E1 ; G 2045 -U 8674 ; WX 602 ; N uni21E2 ; G 2046 -U 8675 ; WX 602 ; N uni21E3 ; G 2047 -U 8676 ; WX 602 ; N uni21E4 ; G 2048 -U 8677 ; WX 602 ; N uni21E5 ; G 2049 -U 8678 ; WX 602 ; N uni21E6 ; G 2050 -U 8679 ; WX 602 ; N uni21E7 ; G 2051 -U 8680 ; WX 602 ; N uni21E8 ; G 2052 -U 8681 ; WX 602 ; N uni21E9 ; G 2053 -U 8682 ; WX 602 ; N uni21EA ; G 2054 -U 8683 ; WX 602 ; N uni21EB ; G 2055 -U 8684 ; WX 602 ; N uni21EC ; G 2056 -U 8685 ; WX 602 ; N uni21ED ; G 2057 -U 8686 ; WX 602 ; N uni21EE ; G 2058 -U 8687 ; WX 602 ; N uni21EF ; G 2059 -U 8688 ; WX 602 ; N uni21F0 ; G 2060 -U 8689 ; WX 602 ; N uni21F1 ; G 2061 -U 8690 ; WX 602 ; N uni21F2 ; G 2062 -U 8691 ; WX 602 ; N uni21F3 ; G 2063 -U 8692 ; WX 602 ; N uni21F4 ; G 2064 -U 8693 ; WX 602 ; N uni21F5 ; G 2065 -U 8694 ; WX 602 ; N uni21F6 ; G 2066 -U 8695 ; WX 602 ; N uni21F7 ; G 2067 -U 8696 ; WX 602 ; N uni21F8 ; G 2068 -U 8697 ; WX 602 ; N uni21F9 ; G 2069 -U 8698 ; WX 602 ; N uni21FA ; G 2070 -U 8699 ; WX 602 ; N uni21FB ; G 2071 -U 8700 ; WX 602 ; N uni21FC ; G 2072 -U 8701 ; WX 602 ; N uni21FD ; G 2073 -U 8702 ; WX 602 ; N uni21FE ; G 2074 -U 8703 ; WX 602 ; N uni21FF ; G 2075 -U 8704 ; WX 602 ; N universal ; G 2076 -U 8705 ; WX 602 ; N uni2201 ; G 2077 -U 8706 ; WX 602 ; N partialdiff ; G 2078 -U 8707 ; WX 602 ; N existential ; G 2079 -U 8708 ; WX 602 ; N uni2204 ; G 2080 -U 8709 ; WX 602 ; N emptyset ; G 2081 -U 8710 ; WX 602 ; N increment ; G 2082 -U 8711 ; WX 602 ; N gradient ; G 2083 -U 8712 ; WX 602 ; N element ; G 2084 -U 8713 ; WX 602 ; N notelement ; G 2085 -U 8714 ; WX 602 ; N uni220A ; G 2086 -U 8715 ; WX 602 ; N suchthat ; G 2087 -U 8716 ; WX 602 ; N uni220C ; G 2088 -U 8717 ; WX 602 ; N uni220D ; G 2089 -U 8718 ; WX 602 ; N uni220E ; G 2090 -U 8719 ; WX 602 ; N product ; G 2091 -U 8720 ; WX 602 ; N uni2210 ; G 2092 -U 8721 ; WX 602 ; N summation ; G 2093 -U 8722 ; WX 602 ; N minus ; G 2094 -U 8723 ; WX 602 ; N uni2213 ; G 2095 -U 8725 ; WX 602 ; N uni2215 ; G 2096 -U 8727 ; WX 602 ; N asteriskmath ; G 2097 -U 8728 ; WX 602 ; N uni2218 ; G 2098 -U 8729 ; WX 602 ; N uni2219 ; G 2099 -U 8730 ; WX 602 ; N radical ; G 2100 -U 8731 ; WX 602 ; N uni221B ; G 2101 -U 8732 ; WX 602 ; N uni221C ; G 2102 -U 8733 ; WX 602 ; N proportional ; G 2103 -U 8734 ; WX 602 ; N infinity ; G 2104 -U 8735 ; WX 602 ; N orthogonal ; G 2105 -U 8736 ; WX 602 ; N angle ; G 2106 -U 8739 ; WX 602 ; N uni2223 ; G 2107 -U 8743 ; WX 602 ; N logicaland ; G 2108 -U 8744 ; WX 602 ; N logicalor ; G 2109 -U 8745 ; WX 602 ; N intersection ; G 2110 -U 8746 ; WX 602 ; N union ; G 2111 -U 8747 ; WX 602 ; N integral ; G 2112 -U 8748 ; WX 602 ; N uni222C ; G 2113 -U 8749 ; WX 602 ; N uni222D ; G 2114 -U 8756 ; WX 602 ; N therefore ; G 2115 -U 8757 ; WX 602 ; N uni2235 ; G 2116 -U 8758 ; WX 602 ; N uni2236 ; G 2117 -U 8759 ; WX 602 ; N uni2237 ; G 2118 -U 8760 ; WX 602 ; N uni2238 ; G 2119 -U 8761 ; WX 602 ; N uni2239 ; G 2120 -U 8762 ; WX 602 ; N uni223A ; G 2121 -U 8763 ; WX 602 ; N uni223B ; G 2122 -U 8764 ; WX 602 ; N similar ; G 2123 -U 8765 ; WX 602 ; N uni223D ; G 2124 -U 8769 ; WX 602 ; N uni2241 ; G 2125 -U 8770 ; WX 602 ; N uni2242 ; G 2126 -U 8771 ; WX 602 ; N uni2243 ; G 2127 -U 8772 ; WX 602 ; N uni2244 ; G 2128 -U 8773 ; WX 602 ; N congruent ; G 2129 -U 8774 ; WX 602 ; N uni2246 ; G 2130 -U 8775 ; WX 602 ; N uni2247 ; G 2131 -U 8776 ; WX 602 ; N approxequal ; G 2132 -U 8777 ; WX 602 ; N uni2249 ; G 2133 -U 8778 ; WX 602 ; N uni224A ; G 2134 -U 8779 ; WX 602 ; N uni224B ; G 2135 -U 8780 ; WX 602 ; N uni224C ; G 2136 -U 8781 ; WX 602 ; N uni224D ; G 2137 -U 8782 ; WX 602 ; N uni224E ; G 2138 -U 8783 ; WX 602 ; N uni224F ; G 2139 -U 8784 ; WX 602 ; N uni2250 ; G 2140 -U 8785 ; WX 602 ; N uni2251 ; G 2141 -U 8786 ; WX 602 ; N uni2252 ; G 2142 -U 8787 ; WX 602 ; N uni2253 ; G 2143 -U 8788 ; WX 602 ; N uni2254 ; G 2144 -U 8789 ; WX 602 ; N uni2255 ; G 2145 -U 8790 ; WX 602 ; N uni2256 ; G 2146 -U 8791 ; WX 602 ; N uni2257 ; G 2147 -U 8792 ; WX 602 ; N uni2258 ; G 2148 -U 8793 ; WX 602 ; N uni2259 ; G 2149 -U 8794 ; WX 602 ; N uni225A ; G 2150 -U 8795 ; WX 602 ; N uni225B ; G 2151 -U 8796 ; WX 602 ; N uni225C ; G 2152 -U 8797 ; WX 602 ; N uni225D ; G 2153 -U 8798 ; WX 602 ; N uni225E ; G 2154 -U 8799 ; WX 602 ; N uni225F ; G 2155 -U 8800 ; WX 602 ; N notequal ; G 2156 -U 8801 ; WX 602 ; N equivalence ; G 2157 -U 8802 ; WX 602 ; N uni2262 ; G 2158 -U 8803 ; WX 602 ; N uni2263 ; G 2159 -U 8804 ; WX 602 ; N lessequal ; G 2160 -U 8805 ; WX 602 ; N greaterequal ; G 2161 -U 8806 ; WX 602 ; N uni2266 ; G 2162 -U 8807 ; WX 602 ; N uni2267 ; G 2163 -U 8808 ; WX 602 ; N uni2268 ; G 2164 -U 8809 ; WX 602 ; N uni2269 ; G 2165 -U 8813 ; WX 602 ; N uni226D ; G 2166 -U 8814 ; WX 602 ; N uni226E ; G 2167 -U 8815 ; WX 602 ; N uni226F ; G 2168 -U 8816 ; WX 602 ; N uni2270 ; G 2169 -U 8817 ; WX 602 ; N uni2271 ; G 2170 -U 8818 ; WX 602 ; N uni2272 ; G 2171 -U 8819 ; WX 602 ; N uni2273 ; G 2172 -U 8820 ; WX 602 ; N uni2274 ; G 2173 -U 8821 ; WX 602 ; N uni2275 ; G 2174 -U 8822 ; WX 602 ; N uni2276 ; G 2175 -U 8823 ; WX 602 ; N uni2277 ; G 2176 -U 8824 ; WX 602 ; N uni2278 ; G 2177 -U 8825 ; WX 602 ; N uni2279 ; G 2178 -U 8826 ; WX 602 ; N uni227A ; G 2179 -U 8827 ; WX 602 ; N uni227B ; G 2180 -U 8828 ; WX 602 ; N uni227C ; G 2181 -U 8829 ; WX 602 ; N uni227D ; G 2182 -U 8830 ; WX 602 ; N uni227E ; G 2183 -U 8831 ; WX 602 ; N uni227F ; G 2184 -U 8832 ; WX 602 ; N uni2280 ; G 2185 -U 8833 ; WX 602 ; N uni2281 ; G 2186 -U 8834 ; WX 602 ; N propersubset ; G 2187 -U 8835 ; WX 602 ; N propersuperset ; G 2188 -U 8836 ; WX 602 ; N notsubset ; G 2189 -U 8837 ; WX 602 ; N uni2285 ; G 2190 -U 8838 ; WX 602 ; N reflexsubset ; G 2191 -U 8839 ; WX 602 ; N reflexsuperset ; G 2192 -U 8840 ; WX 602 ; N uni2288 ; G 2193 -U 8841 ; WX 602 ; N uni2289 ; G 2194 -U 8842 ; WX 602 ; N uni228A ; G 2195 -U 8843 ; WX 602 ; N uni228B ; G 2196 -U 8845 ; WX 602 ; N uni228D ; G 2197 -U 8846 ; WX 602 ; N uni228E ; G 2198 -U 8847 ; WX 602 ; N uni228F ; G 2199 -U 8848 ; WX 602 ; N uni2290 ; G 2200 -U 8849 ; WX 602 ; N uni2291 ; G 2201 -U 8850 ; WX 602 ; N uni2292 ; G 2202 -U 8851 ; WX 602 ; N uni2293 ; G 2203 -U 8852 ; WX 602 ; N uni2294 ; G 2204 -U 8853 ; WX 602 ; N circleplus ; G 2205 -U 8854 ; WX 602 ; N uni2296 ; G 2206 -U 8855 ; WX 602 ; N circlemultiply ; G 2207 -U 8856 ; WX 602 ; N uni2298 ; G 2208 -U 8857 ; WX 602 ; N uni2299 ; G 2209 -U 8858 ; WX 602 ; N uni229A ; G 2210 -U 8859 ; WX 602 ; N uni229B ; G 2211 -U 8860 ; WX 602 ; N uni229C ; G 2212 -U 8861 ; WX 602 ; N uni229D ; G 2213 -U 8862 ; WX 602 ; N uni229E ; G 2214 -U 8863 ; WX 602 ; N uni229F ; G 2215 -U 8864 ; WX 602 ; N uni22A0 ; G 2216 -U 8865 ; WX 602 ; N uni22A1 ; G 2217 -U 8866 ; WX 602 ; N uni22A2 ; G 2218 -U 8867 ; WX 602 ; N uni22A3 ; G 2219 -U 8868 ; WX 602 ; N uni22A4 ; G 2220 -U 8869 ; WX 602 ; N perpendicular ; G 2221 -U 8882 ; WX 602 ; N uni22B2 ; G 2222 -U 8883 ; WX 602 ; N uni22B3 ; G 2223 -U 8884 ; WX 602 ; N uni22B4 ; G 2224 -U 8885 ; WX 602 ; N uni22B5 ; G 2225 -U 8888 ; WX 602 ; N uni22B8 ; G 2226 -U 8898 ; WX 602 ; N uni22C2 ; G 2227 -U 8899 ; WX 602 ; N uni22C3 ; G 2228 -U 8900 ; WX 602 ; N uni22C4 ; G 2229 -U 8901 ; WX 602 ; N dotmath ; G 2230 -U 8902 ; WX 602 ; N uni22C6 ; G 2231 -U 8909 ; WX 602 ; N uni22CD ; G 2232 -U 8910 ; WX 602 ; N uni22CE ; G 2233 -U 8911 ; WX 602 ; N uni22CF ; G 2234 -U 8912 ; WX 602 ; N uni22D0 ; G 2235 -U 8913 ; WX 602 ; N uni22D1 ; G 2236 -U 8922 ; WX 602 ; N uni22DA ; G 2237 -U 8923 ; WX 602 ; N uni22DB ; G 2238 -U 8924 ; WX 602 ; N uni22DC ; G 2239 -U 8925 ; WX 602 ; N uni22DD ; G 2240 -U 8926 ; WX 602 ; N uni22DE ; G 2241 -U 8927 ; WX 602 ; N uni22DF ; G 2242 -U 8928 ; WX 602 ; N uni22E0 ; G 2243 -U 8929 ; WX 602 ; N uni22E1 ; G 2244 -U 8930 ; WX 602 ; N uni22E2 ; G 2245 -U 8931 ; WX 602 ; N uni22E3 ; G 2246 -U 8932 ; WX 602 ; N uni22E4 ; G 2247 -U 8933 ; WX 602 ; N uni22E5 ; G 2248 -U 8934 ; WX 602 ; N uni22E6 ; G 2249 -U 8935 ; WX 602 ; N uni22E7 ; G 2250 -U 8936 ; WX 602 ; N uni22E8 ; G 2251 -U 8937 ; WX 602 ; N uni22E9 ; G 2252 -U 8943 ; WX 602 ; N uni22EF ; G 2253 -U 8960 ; WX 602 ; N uni2300 ; G 2254 -U 8961 ; WX 602 ; N uni2301 ; G 2255 -U 8962 ; WX 602 ; N house ; G 2256 -U 8963 ; WX 602 ; N uni2303 ; G 2257 -U 8964 ; WX 602 ; N uni2304 ; G 2258 -U 8965 ; WX 602 ; N uni2305 ; G 2259 -U 8966 ; WX 602 ; N uni2306 ; G 2260 -U 8968 ; WX 602 ; N uni2308 ; G 2261 -U 8969 ; WX 602 ; N uni2309 ; G 2262 -U 8970 ; WX 602 ; N uni230A ; G 2263 -U 8971 ; WX 602 ; N uni230B ; G 2264 -U 8972 ; WX 602 ; N uni230C ; G 2265 -U 8973 ; WX 602 ; N uni230D ; G 2266 -U 8974 ; WX 602 ; N uni230E ; G 2267 -U 8975 ; WX 602 ; N uni230F ; G 2268 -U 8976 ; WX 602 ; N revlogicalnot ; G 2269 -U 8977 ; WX 602 ; N uni2311 ; G 2270 -U 8978 ; WX 602 ; N uni2312 ; G 2271 -U 8979 ; WX 602 ; N uni2313 ; G 2272 -U 8980 ; WX 602 ; N uni2314 ; G 2273 -U 8981 ; WX 602 ; N uni2315 ; G 2274 -U 8984 ; WX 602 ; N uni2318 ; G 2275 -U 8985 ; WX 602 ; N uni2319 ; G 2276 -U 8988 ; WX 602 ; N uni231C ; G 2277 -U 8989 ; WX 602 ; N uni231D ; G 2278 -U 8990 ; WX 602 ; N uni231E ; G 2279 -U 8991 ; WX 602 ; N uni231F ; G 2280 -U 8992 ; WX 602 ; N integraltp ; G 2281 -U 8993 ; WX 602 ; N integralbt ; G 2282 -U 8997 ; WX 602 ; N uni2325 ; G 2283 -U 8998 ; WX 602 ; N uni2326 ; G 2284 -U 8999 ; WX 602 ; N uni2327 ; G 2285 -U 9000 ; WX 602 ; N uni2328 ; G 2286 -U 9003 ; WX 602 ; N uni232B ; G 2287 -U 9013 ; WX 602 ; N uni2335 ; G 2288 -U 9014 ; WX 602 ; N uni2336 ; G 2289 -U 9015 ; WX 602 ; N uni2337 ; G 2290 -U 9016 ; WX 602 ; N uni2338 ; G 2291 -U 9017 ; WX 602 ; N uni2339 ; G 2292 -U 9018 ; WX 602 ; N uni233A ; G 2293 -U 9019 ; WX 602 ; N uni233B ; G 2294 -U 9020 ; WX 602 ; N uni233C ; G 2295 -U 9021 ; WX 602 ; N uni233D ; G 2296 -U 9022 ; WX 602 ; N uni233E ; G 2297 -U 9023 ; WX 602 ; N uni233F ; G 2298 -U 9024 ; WX 602 ; N uni2340 ; G 2299 -U 9025 ; WX 602 ; N uni2341 ; G 2300 -U 9026 ; WX 602 ; N uni2342 ; G 2301 -U 9027 ; WX 602 ; N uni2343 ; G 2302 -U 9028 ; WX 602 ; N uni2344 ; G 2303 -U 9029 ; WX 602 ; N uni2345 ; G 2304 -U 9030 ; WX 602 ; N uni2346 ; G 2305 -U 9031 ; WX 602 ; N uni2347 ; G 2306 -U 9032 ; WX 602 ; N uni2348 ; G 2307 -U 9033 ; WX 602 ; N uni2349 ; G 2308 -U 9034 ; WX 602 ; N uni234A ; G 2309 -U 9035 ; WX 602 ; N uni234B ; G 2310 -U 9036 ; WX 602 ; N uni234C ; G 2311 -U 9037 ; WX 602 ; N uni234D ; G 2312 -U 9038 ; WX 602 ; N uni234E ; G 2313 -U 9039 ; WX 602 ; N uni234F ; G 2314 -U 9040 ; WX 602 ; N uni2350 ; G 2315 -U 9041 ; WX 602 ; N uni2351 ; G 2316 -U 9042 ; WX 602 ; N uni2352 ; G 2317 -U 9043 ; WX 602 ; N uni2353 ; G 2318 -U 9044 ; WX 602 ; N uni2354 ; G 2319 -U 9045 ; WX 602 ; N uni2355 ; G 2320 -U 9046 ; WX 602 ; N uni2356 ; G 2321 -U 9047 ; WX 602 ; N uni2357 ; G 2322 -U 9048 ; WX 602 ; N uni2358 ; G 2323 -U 9049 ; WX 602 ; N uni2359 ; G 2324 -U 9050 ; WX 602 ; N uni235A ; G 2325 -U 9051 ; WX 602 ; N uni235B ; G 2326 -U 9052 ; WX 602 ; N uni235C ; G 2327 -U 9053 ; WX 602 ; N uni235D ; G 2328 -U 9054 ; WX 602 ; N uni235E ; G 2329 -U 9055 ; WX 602 ; N uni235F ; G 2330 -U 9056 ; WX 602 ; N uni2360 ; G 2331 -U 9057 ; WX 602 ; N uni2361 ; G 2332 -U 9058 ; WX 602 ; N uni2362 ; G 2333 -U 9059 ; WX 602 ; N uni2363 ; G 2334 -U 9060 ; WX 602 ; N uni2364 ; G 2335 -U 9061 ; WX 602 ; N uni2365 ; G 2336 -U 9062 ; WX 602 ; N uni2366 ; G 2337 -U 9063 ; WX 602 ; N uni2367 ; G 2338 -U 9064 ; WX 602 ; N uni2368 ; G 2339 -U 9065 ; WX 602 ; N uni2369 ; G 2340 -U 9066 ; WX 602 ; N uni236A ; G 2341 -U 9067 ; WX 602 ; N uni236B ; G 2342 -U 9068 ; WX 602 ; N uni236C ; G 2343 -U 9069 ; WX 602 ; N uni236D ; G 2344 -U 9070 ; WX 602 ; N uni236E ; G 2345 -U 9071 ; WX 602 ; N uni236F ; G 2346 -U 9072 ; WX 602 ; N uni2370 ; G 2347 -U 9073 ; WX 602 ; N uni2371 ; G 2348 -U 9074 ; WX 602 ; N uni2372 ; G 2349 -U 9075 ; WX 602 ; N uni2373 ; G 2350 -U 9076 ; WX 602 ; N uni2374 ; G 2351 -U 9077 ; WX 602 ; N uni2375 ; G 2352 -U 9078 ; WX 602 ; N uni2376 ; G 2353 -U 9079 ; WX 602 ; N uni2377 ; G 2354 -U 9080 ; WX 602 ; N uni2378 ; G 2355 -U 9081 ; WX 602 ; N uni2379 ; G 2356 -U 9082 ; WX 602 ; N uni237A ; G 2357 -U 9085 ; WX 602 ; N uni237D ; G 2358 -U 9088 ; WX 602 ; N uni2380 ; G 2359 -U 9089 ; WX 602 ; N uni2381 ; G 2360 -U 9090 ; WX 602 ; N uni2382 ; G 2361 -U 9091 ; WX 602 ; N uni2383 ; G 2362 -U 9096 ; WX 602 ; N uni2388 ; G 2363 -U 9097 ; WX 602 ; N uni2389 ; G 2364 -U 9098 ; WX 602 ; N uni238A ; G 2365 -U 9099 ; WX 602 ; N uni238B ; G 2366 -U 9109 ; WX 602 ; N uni2395 ; G 2367 -U 9115 ; WX 602 ; N uni239B ; G 2368 -U 9116 ; WX 602 ; N uni239C ; G 2369 -U 9117 ; WX 602 ; N uni239D ; G 2370 -U 9118 ; WX 602 ; N uni239E ; G 2371 -U 9119 ; WX 602 ; N uni239F ; G 2372 -U 9120 ; WX 602 ; N uni23A0 ; G 2373 -U 9121 ; WX 602 ; N uni23A1 ; G 2374 -U 9122 ; WX 602 ; N uni23A2 ; G 2375 -U 9123 ; WX 602 ; N uni23A3 ; G 2376 -U 9124 ; WX 602 ; N uni23A4 ; G 2377 -U 9125 ; WX 602 ; N uni23A5 ; G 2378 -U 9126 ; WX 602 ; N uni23A6 ; G 2379 -U 9127 ; WX 602 ; N uni23A7 ; G 2380 -U 9128 ; WX 602 ; N uni23A8 ; G 2381 -U 9129 ; WX 602 ; N uni23A9 ; G 2382 -U 9130 ; WX 602 ; N uni23AA ; G 2383 -U 9131 ; WX 602 ; N uni23AB ; G 2384 -U 9132 ; WX 602 ; N uni23AC ; G 2385 -U 9133 ; WX 602 ; N uni23AD ; G 2386 -U 9134 ; WX 602 ; N uni23AE ; G 2387 -U 9166 ; WX 602 ; N uni23CE ; G 2388 -U 9167 ; WX 602 ; N uni23CF ; G 2389 -U 9251 ; WX 602 ; N uni2423 ; G 2390 -U 9472 ; WX 602 ; N SF100000 ; G 2391 -U 9473 ; WX 602 ; N uni2501 ; G 2392 -U 9474 ; WX 602 ; N SF110000 ; G 2393 -U 9475 ; WX 602 ; N uni2503 ; G 2394 -U 9476 ; WX 602 ; N uni2504 ; G 2395 -U 9477 ; WX 602 ; N uni2505 ; G 2396 -U 9478 ; WX 602 ; N uni2506 ; G 2397 -U 9479 ; WX 602 ; N uni2507 ; G 2398 -U 9480 ; WX 602 ; N uni2508 ; G 2399 -U 9481 ; WX 602 ; N uni2509 ; G 2400 -U 9482 ; WX 602 ; N uni250A ; G 2401 -U 9483 ; WX 602 ; N uni250B ; G 2402 -U 9484 ; WX 602 ; N SF010000 ; G 2403 -U 9485 ; WX 602 ; N uni250D ; G 2404 -U 9486 ; WX 602 ; N uni250E ; G 2405 -U 9487 ; WX 602 ; N uni250F ; G 2406 -U 9488 ; WX 602 ; N SF030000 ; G 2407 -U 9489 ; WX 602 ; N uni2511 ; G 2408 -U 9490 ; WX 602 ; N uni2512 ; G 2409 -U 9491 ; WX 602 ; N uni2513 ; G 2410 -U 9492 ; WX 602 ; N SF020000 ; G 2411 -U 9493 ; WX 602 ; N uni2515 ; G 2412 -U 9494 ; WX 602 ; N uni2516 ; G 2413 -U 9495 ; WX 602 ; N uni2517 ; G 2414 -U 9496 ; WX 602 ; N SF040000 ; G 2415 -U 9497 ; WX 602 ; N uni2519 ; G 2416 -U 9498 ; WX 602 ; N uni251A ; G 2417 -U 9499 ; WX 602 ; N uni251B ; G 2418 -U 9500 ; WX 602 ; N SF080000 ; G 2419 -U 9501 ; WX 602 ; N uni251D ; G 2420 -U 9502 ; WX 602 ; N uni251E ; G 2421 -U 9503 ; WX 602 ; N uni251F ; G 2422 -U 9504 ; WX 602 ; N uni2520 ; G 2423 -U 9505 ; WX 602 ; N uni2521 ; G 2424 -U 9506 ; WX 602 ; N uni2522 ; G 2425 -U 9507 ; WX 602 ; N uni2523 ; G 2426 -U 9508 ; WX 602 ; N SF090000 ; G 2427 -U 9509 ; WX 602 ; N uni2525 ; G 2428 -U 9510 ; WX 602 ; N uni2526 ; G 2429 -U 9511 ; WX 602 ; N uni2527 ; G 2430 -U 9512 ; WX 602 ; N uni2528 ; G 2431 -U 9513 ; WX 602 ; N uni2529 ; G 2432 -U 9514 ; WX 602 ; N uni252A ; G 2433 -U 9515 ; WX 602 ; N uni252B ; G 2434 -U 9516 ; WX 602 ; N SF060000 ; G 2435 -U 9517 ; WX 602 ; N uni252D ; G 2436 -U 9518 ; WX 602 ; N uni252E ; G 2437 -U 9519 ; WX 602 ; N uni252F ; G 2438 -U 9520 ; WX 602 ; N uni2530 ; G 2439 -U 9521 ; WX 602 ; N uni2531 ; G 2440 -U 9522 ; WX 602 ; N uni2532 ; G 2441 -U 9523 ; WX 602 ; N uni2533 ; G 2442 -U 9524 ; WX 602 ; N SF070000 ; G 2443 -U 9525 ; WX 602 ; N uni2535 ; G 2444 -U 9526 ; WX 602 ; N uni2536 ; G 2445 -U 9527 ; WX 602 ; N uni2537 ; G 2446 -U 9528 ; WX 602 ; N uni2538 ; G 2447 -U 9529 ; WX 602 ; N uni2539 ; G 2448 -U 9530 ; WX 602 ; N uni253A ; G 2449 -U 9531 ; WX 602 ; N uni253B ; G 2450 -U 9532 ; WX 602 ; N SF050000 ; G 2451 -U 9533 ; WX 602 ; N uni253D ; G 2452 -U 9534 ; WX 602 ; N uni253E ; G 2453 -U 9535 ; WX 602 ; N uni253F ; G 2454 -U 9536 ; WX 602 ; N uni2540 ; G 2455 -U 9537 ; WX 602 ; N uni2541 ; G 2456 -U 9538 ; WX 602 ; N uni2542 ; G 2457 -U 9539 ; WX 602 ; N uni2543 ; G 2458 -U 9540 ; WX 602 ; N uni2544 ; G 2459 -U 9541 ; WX 602 ; N uni2545 ; G 2460 -U 9542 ; WX 602 ; N uni2546 ; G 2461 -U 9543 ; WX 602 ; N uni2547 ; G 2462 -U 9544 ; WX 602 ; N uni2548 ; G 2463 -U 9545 ; WX 602 ; N uni2549 ; G 2464 -U 9546 ; WX 602 ; N uni254A ; G 2465 -U 9547 ; WX 602 ; N uni254B ; G 2466 -U 9548 ; WX 602 ; N uni254C ; G 2467 -U 9549 ; WX 602 ; N uni254D ; G 2468 -U 9550 ; WX 602 ; N uni254E ; G 2469 -U 9551 ; WX 602 ; N uni254F ; G 2470 -U 9552 ; WX 602 ; N SF430000 ; G 2471 -U 9553 ; WX 602 ; N SF240000 ; G 2472 -U 9554 ; WX 602 ; N SF510000 ; G 2473 -U 9555 ; WX 602 ; N SF520000 ; G 2474 -U 9556 ; WX 602 ; N SF390000 ; G 2475 -U 9557 ; WX 602 ; N SF220000 ; G 2476 -U 9558 ; WX 602 ; N SF210000 ; G 2477 -U 9559 ; WX 602 ; N SF250000 ; G 2478 -U 9560 ; WX 602 ; N SF500000 ; G 2479 -U 9561 ; WX 602 ; N SF490000 ; G 2480 -U 9562 ; WX 602 ; N SF380000 ; G 2481 -U 9563 ; WX 602 ; N SF280000 ; G 2482 -U 9564 ; WX 602 ; N SF270000 ; G 2483 -U 9565 ; WX 602 ; N SF260000 ; G 2484 -U 9566 ; WX 602 ; N SF360000 ; G 2485 -U 9567 ; WX 602 ; N SF370000 ; G 2486 -U 9568 ; WX 602 ; N SF420000 ; G 2487 -U 9569 ; WX 602 ; N SF190000 ; G 2488 -U 9570 ; WX 602 ; N SF200000 ; G 2489 -U 9571 ; WX 602 ; N SF230000 ; G 2490 -U 9572 ; WX 602 ; N SF470000 ; G 2491 -U 9573 ; WX 602 ; N SF480000 ; G 2492 -U 9574 ; WX 602 ; N SF410000 ; G 2493 -U 9575 ; WX 602 ; N SF450000 ; G 2494 -U 9576 ; WX 602 ; N SF460000 ; G 2495 -U 9577 ; WX 602 ; N SF400000 ; G 2496 -U 9578 ; WX 602 ; N SF540000 ; G 2497 -U 9579 ; WX 602 ; N SF530000 ; G 2498 -U 9580 ; WX 602 ; N SF440000 ; G 2499 -U 9581 ; WX 602 ; N uni256D ; G 2500 -U 9582 ; WX 602 ; N uni256E ; G 2501 -U 9583 ; WX 602 ; N uni256F ; G 2502 -U 9584 ; WX 602 ; N uni2570 ; G 2503 -U 9585 ; WX 602 ; N uni2571 ; G 2504 -U 9586 ; WX 602 ; N uni2572 ; G 2505 -U 9587 ; WX 602 ; N uni2573 ; G 2506 -U 9588 ; WX 602 ; N uni2574 ; G 2507 -U 9589 ; WX 602 ; N uni2575 ; G 2508 -U 9590 ; WX 602 ; N uni2576 ; G 2509 -U 9591 ; WX 602 ; N uni2577 ; G 2510 -U 9592 ; WX 602 ; N uni2578 ; G 2511 -U 9593 ; WX 602 ; N uni2579 ; G 2512 -U 9594 ; WX 602 ; N uni257A ; G 2513 -U 9595 ; WX 602 ; N uni257B ; G 2514 -U 9596 ; WX 602 ; N uni257C ; G 2515 -U 9597 ; WX 602 ; N uni257D ; G 2516 -U 9598 ; WX 602 ; N uni257E ; G 2517 -U 9599 ; WX 602 ; N uni257F ; G 2518 -U 9600 ; WX 602 ; N upblock ; G 2519 -U 9601 ; WX 602 ; N uni2581 ; G 2520 -U 9602 ; WX 602 ; N uni2582 ; G 2521 -U 9603 ; WX 602 ; N uni2583 ; G 2522 -U 9604 ; WX 602 ; N dnblock ; G 2523 -U 9605 ; WX 602 ; N uni2585 ; G 2524 -U 9606 ; WX 602 ; N uni2586 ; G 2525 -U 9607 ; WX 602 ; N uni2587 ; G 2526 -U 9608 ; WX 602 ; N block ; G 2527 -U 9609 ; WX 602 ; N uni2589 ; G 2528 -U 9610 ; WX 602 ; N uni258A ; G 2529 -U 9611 ; WX 602 ; N uni258B ; G 2530 -U 9612 ; WX 602 ; N lfblock ; G 2531 -U 9613 ; WX 602 ; N uni258D ; G 2532 -U 9614 ; WX 602 ; N uni258E ; G 2533 -U 9615 ; WX 602 ; N uni258F ; G 2534 -U 9616 ; WX 602 ; N rtblock ; G 2535 -U 9617 ; WX 602 ; N ltshade ; G 2536 -U 9618 ; WX 602 ; N shade ; G 2537 -U 9619 ; WX 602 ; N dkshade ; G 2538 -U 9620 ; WX 602 ; N uni2594 ; G 2539 -U 9621 ; WX 602 ; N uni2595 ; G 2540 -U 9622 ; WX 602 ; N uni2596 ; G 2541 -U 9623 ; WX 602 ; N uni2597 ; G 2542 -U 9624 ; WX 602 ; N uni2598 ; G 2543 -U 9625 ; WX 602 ; N uni2599 ; G 2544 -U 9626 ; WX 602 ; N uni259A ; G 2545 -U 9627 ; WX 602 ; N uni259B ; G 2546 -U 9628 ; WX 602 ; N uni259C ; G 2547 -U 9629 ; WX 602 ; N uni259D ; G 2548 -U 9630 ; WX 602 ; N uni259E ; G 2549 -U 9631 ; WX 602 ; N uni259F ; G 2550 -U 9632 ; WX 602 ; N filledbox ; G 2551 -U 9633 ; WX 602 ; N H22073 ; G 2552 -U 9634 ; WX 602 ; N uni25A2 ; G 2553 -U 9635 ; WX 602 ; N uni25A3 ; G 2554 -U 9636 ; WX 602 ; N uni25A4 ; G 2555 -U 9637 ; WX 602 ; N uni25A5 ; G 2556 -U 9638 ; WX 602 ; N uni25A6 ; G 2557 -U 9639 ; WX 602 ; N uni25A7 ; G 2558 -U 9640 ; WX 602 ; N uni25A8 ; G 2559 -U 9641 ; WX 602 ; N uni25A9 ; G 2560 -U 9642 ; WX 602 ; N H18543 ; G 2561 -U 9643 ; WX 602 ; N H18551 ; G 2562 -U 9644 ; WX 602 ; N filledrect ; G 2563 -U 9645 ; WX 602 ; N uni25AD ; G 2564 -U 9646 ; WX 602 ; N uni25AE ; G 2565 -U 9647 ; WX 602 ; N uni25AF ; G 2566 -U 9648 ; WX 602 ; N uni25B0 ; G 2567 -U 9649 ; WX 602 ; N uni25B1 ; G 2568 -U 9650 ; WX 602 ; N triagup ; G 2569 -U 9651 ; WX 602 ; N uni25B3 ; G 2570 -U 9652 ; WX 602 ; N uni25B4 ; G 2571 -U 9653 ; WX 602 ; N uni25B5 ; G 2572 -U 9654 ; WX 602 ; N uni25B6 ; G 2573 -U 9655 ; WX 602 ; N uni25B7 ; G 2574 -U 9656 ; WX 602 ; N uni25B8 ; G 2575 -U 9657 ; WX 602 ; N uni25B9 ; G 2576 -U 9658 ; WX 602 ; N triagrt ; G 2577 -U 9659 ; WX 602 ; N uni25BB ; G 2578 -U 9660 ; WX 602 ; N triagdn ; G 2579 -U 9661 ; WX 602 ; N uni25BD ; G 2580 -U 9662 ; WX 602 ; N uni25BE ; G 2581 -U 9663 ; WX 602 ; N uni25BF ; G 2582 -U 9664 ; WX 602 ; N uni25C0 ; G 2583 -U 9665 ; WX 602 ; N uni25C1 ; G 2584 -U 9666 ; WX 602 ; N uni25C2 ; G 2585 -U 9667 ; WX 602 ; N uni25C3 ; G 2586 -U 9668 ; WX 602 ; N triaglf ; G 2587 -U 9669 ; WX 602 ; N uni25C5 ; G 2588 -U 9670 ; WX 602 ; N uni25C6 ; G 2589 -U 9671 ; WX 602 ; N uni25C7 ; G 2590 -U 9672 ; WX 602 ; N uni25C8 ; G 2591 -U 9673 ; WX 602 ; N uni25C9 ; G 2592 -U 9674 ; WX 602 ; N lozenge ; G 2593 -U 9675 ; WX 602 ; N circle ; G 2594 -U 9676 ; WX 602 ; N uni25CC ; G 2595 -U 9677 ; WX 602 ; N uni25CD ; G 2596 -U 9678 ; WX 602 ; N uni25CE ; G 2597 -U 9679 ; WX 602 ; N H18533 ; G 2598 -U 9680 ; WX 602 ; N uni25D0 ; G 2599 -U 9681 ; WX 602 ; N uni25D1 ; G 2600 -U 9682 ; WX 602 ; N uni25D2 ; G 2601 -U 9683 ; WX 602 ; N uni25D3 ; G 2602 -U 9684 ; WX 602 ; N uni25D4 ; G 2603 -U 9685 ; WX 602 ; N uni25D5 ; G 2604 -U 9686 ; WX 602 ; N uni25D6 ; G 2605 -U 9687 ; WX 602 ; N uni25D7 ; G 2606 -U 9688 ; WX 602 ; N invbullet ; G 2607 -U 9689 ; WX 602 ; N invcircle ; G 2608 -U 9690 ; WX 602 ; N uni25DA ; G 2609 -U 9691 ; WX 602 ; N uni25DB ; G 2610 -U 9692 ; WX 602 ; N uni25DC ; G 2611 -U 9693 ; WX 602 ; N uni25DD ; G 2612 -U 9694 ; WX 602 ; N uni25DE ; G 2613 -U 9695 ; WX 602 ; N uni25DF ; G 2614 -U 9696 ; WX 602 ; N uni25E0 ; G 2615 -U 9697 ; WX 602 ; N uni25E1 ; G 2616 -U 9698 ; WX 602 ; N uni25E2 ; G 2617 -U 9699 ; WX 602 ; N uni25E3 ; G 2618 -U 9700 ; WX 602 ; N uni25E4 ; G 2619 -U 9701 ; WX 602 ; N uni25E5 ; G 2620 -U 9702 ; WX 602 ; N openbullet ; G 2621 -U 9703 ; WX 602 ; N uni25E7 ; G 2622 -U 9704 ; WX 602 ; N uni25E8 ; G 2623 -U 9705 ; WX 602 ; N uni25E9 ; G 2624 -U 9706 ; WX 602 ; N uni25EA ; G 2625 -U 9707 ; WX 602 ; N uni25EB ; G 2626 -U 9708 ; WX 602 ; N uni25EC ; G 2627 -U 9709 ; WX 602 ; N uni25ED ; G 2628 -U 9710 ; WX 602 ; N uni25EE ; G 2629 -U 9711 ; WX 602 ; N uni25EF ; G 2630 -U 9712 ; WX 602 ; N uni25F0 ; G 2631 -U 9713 ; WX 602 ; N uni25F1 ; G 2632 -U 9714 ; WX 602 ; N uni25F2 ; G 2633 -U 9715 ; WX 602 ; N uni25F3 ; G 2634 -U 9716 ; WX 602 ; N uni25F4 ; G 2635 -U 9717 ; WX 602 ; N uni25F5 ; G 2636 -U 9718 ; WX 602 ; N uni25F6 ; G 2637 -U 9719 ; WX 602 ; N uni25F7 ; G 2638 -U 9720 ; WX 602 ; N uni25F8 ; G 2639 -U 9721 ; WX 602 ; N uni25F9 ; G 2640 -U 9722 ; WX 602 ; N uni25FA ; G 2641 -U 9723 ; WX 602 ; N uni25FB ; G 2642 -U 9724 ; WX 602 ; N uni25FC ; G 2643 -U 9725 ; WX 602 ; N uni25FD ; G 2644 -U 9726 ; WX 602 ; N uni25FE ; G 2645 -U 9727 ; WX 602 ; N uni25FF ; G 2646 -U 9728 ; WX 602 ; N uni2600 ; G 2647 -U 9729 ; WX 602 ; N uni2601 ; G 2648 -U 9730 ; WX 602 ; N uni2602 ; G 2649 -U 9731 ; WX 602 ; N uni2603 ; G 2650 -U 9732 ; WX 602 ; N uni2604 ; G 2651 -U 9733 ; WX 602 ; N uni2605 ; G 2652 -U 9734 ; WX 602 ; N uni2606 ; G 2653 -U 9735 ; WX 602 ; N uni2607 ; G 2654 -U 9736 ; WX 602 ; N uni2608 ; G 2655 -U 9737 ; WX 602 ; N uni2609 ; G 2656 -U 9738 ; WX 602 ; N uni260A ; G 2657 -U 9739 ; WX 602 ; N uni260B ; G 2658 -U 9740 ; WX 602 ; N uni260C ; G 2659 -U 9741 ; WX 602 ; N uni260D ; G 2660 -U 9742 ; WX 602 ; N uni260E ; G 2661 -U 9743 ; WX 602 ; N uni260F ; G 2662 -U 9744 ; WX 602 ; N uni2610 ; G 2663 -U 9745 ; WX 602 ; N uni2611 ; G 2664 -U 9746 ; WX 602 ; N uni2612 ; G 2665 -U 9747 ; WX 602 ; N uni2613 ; G 2666 -U 9748 ; WX 602 ; N uni2614 ; G 2667 -U 9749 ; WX 602 ; N uni2615 ; G 2668 -U 9750 ; WX 602 ; N uni2616 ; G 2669 -U 9751 ; WX 602 ; N uni2617 ; G 2670 -U 9752 ; WX 602 ; N uni2618 ; G 2671 -U 9753 ; WX 602 ; N uni2619 ; G 2672 -U 9754 ; WX 602 ; N uni261A ; G 2673 -U 9755 ; WX 602 ; N uni261B ; G 2674 -U 9756 ; WX 602 ; N uni261C ; G 2675 -U 9757 ; WX 602 ; N uni261D ; G 2676 -U 9758 ; WX 602 ; N uni261E ; G 2677 -U 9759 ; WX 602 ; N uni261F ; G 2678 -U 9760 ; WX 602 ; N uni2620 ; G 2679 -U 9761 ; WX 602 ; N uni2621 ; G 2680 -U 9762 ; WX 602 ; N uni2622 ; G 2681 -U 9763 ; WX 602 ; N uni2623 ; G 2682 -U 9764 ; WX 602 ; N uni2624 ; G 2683 -U 9765 ; WX 602 ; N uni2625 ; G 2684 -U 9766 ; WX 602 ; N uni2626 ; G 2685 -U 9767 ; WX 602 ; N uni2627 ; G 2686 -U 9768 ; WX 602 ; N uni2628 ; G 2687 -U 9769 ; WX 602 ; N uni2629 ; G 2688 -U 9770 ; WX 602 ; N uni262A ; G 2689 -U 9771 ; WX 602 ; N uni262B ; G 2690 -U 9772 ; WX 602 ; N uni262C ; G 2691 -U 9773 ; WX 602 ; N uni262D ; G 2692 -U 9774 ; WX 602 ; N uni262E ; G 2693 -U 9775 ; WX 602 ; N uni262F ; G 2694 -U 9784 ; WX 602 ; N uni2638 ; G 2695 -U 9785 ; WX 602 ; N uni2639 ; G 2696 -U 9786 ; WX 602 ; N smileface ; G 2697 -U 9787 ; WX 602 ; N invsmileface ; G 2698 -U 9788 ; WX 602 ; N sun ; G 2699 -U 9789 ; WX 602 ; N uni263D ; G 2700 -U 9790 ; WX 602 ; N uni263E ; G 2701 -U 9791 ; WX 602 ; N uni263F ; G 2702 -U 9792 ; WX 602 ; N female ; G 2703 -U 9793 ; WX 602 ; N uni2641 ; G 2704 -U 9794 ; WX 602 ; N male ; G 2705 -U 9795 ; WX 602 ; N uni2643 ; G 2706 -U 9796 ; WX 602 ; N uni2644 ; G 2707 -U 9797 ; WX 602 ; N uni2645 ; G 2708 -U 9798 ; WX 602 ; N uni2646 ; G 2709 -U 9799 ; WX 602 ; N uni2647 ; G 2710 -U 9800 ; WX 602 ; N uni2648 ; G 2711 -U 9801 ; WX 602 ; N uni2649 ; G 2712 -U 9802 ; WX 602 ; N uni264A ; G 2713 -U 9803 ; WX 602 ; N uni264B ; G 2714 -U 9804 ; WX 602 ; N uni264C ; G 2715 -U 9805 ; WX 602 ; N uni264D ; G 2716 -U 9806 ; WX 602 ; N uni264E ; G 2717 -U 9807 ; WX 602 ; N uni264F ; G 2718 -U 9808 ; WX 602 ; N uni2650 ; G 2719 -U 9809 ; WX 602 ; N uni2651 ; G 2720 -U 9810 ; WX 602 ; N uni2652 ; G 2721 -U 9811 ; WX 602 ; N uni2653 ; G 2722 -U 9812 ; WX 602 ; N uni2654 ; G 2723 -U 9813 ; WX 602 ; N uni2655 ; G 2724 -U 9814 ; WX 602 ; N uni2656 ; G 2725 -U 9815 ; WX 602 ; N uni2657 ; G 2726 -U 9816 ; WX 602 ; N uni2658 ; G 2727 -U 9817 ; WX 602 ; N uni2659 ; G 2728 -U 9818 ; WX 602 ; N uni265A ; G 2729 -U 9819 ; WX 602 ; N uni265B ; G 2730 -U 9820 ; WX 602 ; N uni265C ; G 2731 -U 9821 ; WX 602 ; N uni265D ; G 2732 -U 9822 ; WX 602 ; N uni265E ; G 2733 -U 9823 ; WX 602 ; N uni265F ; G 2734 -U 9824 ; WX 602 ; N spade ; G 2735 -U 9825 ; WX 602 ; N uni2661 ; G 2736 -U 9826 ; WX 602 ; N uni2662 ; G 2737 -U 9827 ; WX 602 ; N club ; G 2738 -U 9828 ; WX 602 ; N uni2664 ; G 2739 -U 9829 ; WX 602 ; N heart ; G 2740 -U 9830 ; WX 602 ; N diamond ; G 2741 -U 9831 ; WX 602 ; N uni2667 ; G 2742 -U 9832 ; WX 602 ; N uni2668 ; G 2743 -U 9833 ; WX 602 ; N uni2669 ; G 2744 -U 9834 ; WX 602 ; N musicalnote ; G 2745 -U 9835 ; WX 602 ; N musicalnotedbl ; G 2746 -U 9836 ; WX 602 ; N uni266C ; G 2747 -U 9837 ; WX 602 ; N uni266D ; G 2748 -U 9838 ; WX 602 ; N uni266E ; G 2749 -U 9839 ; WX 602 ; N uni266F ; G 2750 -U 9840 ; WX 602 ; N uni2670 ; G 2751 -U 9841 ; WX 602 ; N uni2671 ; G 2752 -U 9842 ; WX 602 ; N uni2672 ; G 2753 -U 9843 ; WX 602 ; N uni2673 ; G 2754 -U 9844 ; WX 602 ; N uni2674 ; G 2755 -U 9845 ; WX 602 ; N uni2675 ; G 2756 -U 9846 ; WX 602 ; N uni2676 ; G 2757 -U 9847 ; WX 602 ; N uni2677 ; G 2758 -U 9848 ; WX 602 ; N uni2678 ; G 2759 -U 9849 ; WX 602 ; N uni2679 ; G 2760 -U 9850 ; WX 602 ; N uni267A ; G 2761 -U 9851 ; WX 602 ; N uni267B ; G 2762 -U 9852 ; WX 602 ; N uni267C ; G 2763 -U 9853 ; WX 602 ; N uni267D ; G 2764 -U 9854 ; WX 602 ; N uni267E ; G 2765 -U 9855 ; WX 602 ; N uni267F ; G 2766 -U 9856 ; WX 602 ; N uni2680 ; G 2767 -U 9857 ; WX 602 ; N uni2681 ; G 2768 -U 9858 ; WX 602 ; N uni2682 ; G 2769 -U 9859 ; WX 602 ; N uni2683 ; G 2770 -U 9860 ; WX 602 ; N uni2684 ; G 2771 -U 9861 ; WX 602 ; N uni2685 ; G 2772 -U 9862 ; WX 602 ; N uni2686 ; G 2773 -U 9863 ; WX 602 ; N uni2687 ; G 2774 -U 9864 ; WX 602 ; N uni2688 ; G 2775 -U 9865 ; WX 602 ; N uni2689 ; G 2776 -U 9866 ; WX 602 ; N uni268A ; G 2777 -U 9867 ; WX 602 ; N uni268B ; G 2778 -U 9872 ; WX 602 ; N uni2690 ; G 2779 -U 9873 ; WX 602 ; N uni2691 ; G 2780 -U 9874 ; WX 602 ; N uni2692 ; G 2781 -U 9875 ; WX 602 ; N uni2693 ; G 2782 -U 9876 ; WX 602 ; N uni2694 ; G 2783 -U 9877 ; WX 602 ; N uni2695 ; G 2784 -U 9878 ; WX 602 ; N uni2696 ; G 2785 -U 9879 ; WX 602 ; N uni2697 ; G 2786 -U 9880 ; WX 602 ; N uni2698 ; G 2787 -U 9881 ; WX 602 ; N uni2699 ; G 2788 -U 9882 ; WX 602 ; N uni269A ; G 2789 -U 9883 ; WX 602 ; N uni269B ; G 2790 -U 9884 ; WX 602 ; N uni269C ; G 2791 -U 9888 ; WX 602 ; N uni26A0 ; G 2792 -U 9889 ; WX 602 ; N uni26A1 ; G 2793 -U 9904 ; WX 602 ; N uni26B0 ; G 2794 -U 9905 ; WX 602 ; N uni26B1 ; G 2795 -U 9985 ; WX 602 ; N uni2701 ; G 2796 -U 9986 ; WX 602 ; N uni2702 ; G 2797 -U 9987 ; WX 602 ; N uni2703 ; G 2798 -U 9988 ; WX 602 ; N uni2704 ; G 2799 -U 9990 ; WX 602 ; N uni2706 ; G 2800 -U 9991 ; WX 602 ; N uni2707 ; G 2801 -U 9992 ; WX 602 ; N uni2708 ; G 2802 -U 9993 ; WX 602 ; N uni2709 ; G 2803 -U 9996 ; WX 602 ; N uni270C ; G 2804 -U 9997 ; WX 602 ; N uni270D ; G 2805 -U 9998 ; WX 602 ; N uni270E ; G 2806 -U 9999 ; WX 602 ; N uni270F ; G 2807 -U 10000 ; WX 602 ; N uni2710 ; G 2808 -U 10001 ; WX 602 ; N uni2711 ; G 2809 -U 10002 ; WX 602 ; N uni2712 ; G 2810 -U 10003 ; WX 602 ; N uni2713 ; G 2811 -U 10004 ; WX 602 ; N uni2714 ; G 2812 -U 10005 ; WX 602 ; N uni2715 ; G 2813 -U 10006 ; WX 602 ; N uni2716 ; G 2814 -U 10007 ; WX 602 ; N uni2717 ; G 2815 -U 10008 ; WX 602 ; N uni2718 ; G 2816 -U 10009 ; WX 602 ; N uni2719 ; G 2817 -U 10010 ; WX 602 ; N uni271A ; G 2818 -U 10011 ; WX 602 ; N uni271B ; G 2819 -U 10012 ; WX 602 ; N uni271C ; G 2820 -U 10013 ; WX 602 ; N uni271D ; G 2821 -U 10014 ; WX 602 ; N uni271E ; G 2822 -U 10015 ; WX 602 ; N uni271F ; G 2823 -U 10016 ; WX 602 ; N uni2720 ; G 2824 -U 10017 ; WX 602 ; N uni2721 ; G 2825 -U 10018 ; WX 602 ; N uni2722 ; G 2826 -U 10019 ; WX 602 ; N uni2723 ; G 2827 -U 10020 ; WX 602 ; N uni2724 ; G 2828 -U 10021 ; WX 602 ; N uni2725 ; G 2829 -U 10022 ; WX 602 ; N uni2726 ; G 2830 -U 10023 ; WX 602 ; N uni2727 ; G 2831 -U 10025 ; WX 602 ; N uni2729 ; G 2832 -U 10026 ; WX 602 ; N uni272A ; G 2833 -U 10027 ; WX 602 ; N uni272B ; G 2834 -U 10028 ; WX 602 ; N uni272C ; G 2835 -U 10029 ; WX 602 ; N uni272D ; G 2836 -U 10030 ; WX 602 ; N uni272E ; G 2837 -U 10031 ; WX 602 ; N uni272F ; G 2838 -U 10032 ; WX 602 ; N uni2730 ; G 2839 -U 10033 ; WX 602 ; N uni2731 ; G 2840 -U 10034 ; WX 602 ; N uni2732 ; G 2841 -U 10035 ; WX 602 ; N uni2733 ; G 2842 -U 10036 ; WX 602 ; N uni2734 ; G 2843 -U 10037 ; WX 602 ; N uni2735 ; G 2844 -U 10038 ; WX 602 ; N uni2736 ; G 2845 -U 10039 ; WX 602 ; N uni2737 ; G 2846 -U 10040 ; WX 602 ; N uni2738 ; G 2847 -U 10041 ; WX 602 ; N uni2739 ; G 2848 -U 10042 ; WX 602 ; N uni273A ; G 2849 -U 10043 ; WX 602 ; N uni273B ; G 2850 -U 10044 ; WX 602 ; N uni273C ; G 2851 -U 10045 ; WX 602 ; N uni273D ; G 2852 -U 10046 ; WX 602 ; N uni273E ; G 2853 -U 10047 ; WX 602 ; N uni273F ; G 2854 -U 10048 ; WX 602 ; N uni2740 ; G 2855 -U 10049 ; WX 602 ; N uni2741 ; G 2856 -U 10050 ; WX 602 ; N uni2742 ; G 2857 -U 10051 ; WX 602 ; N uni2743 ; G 2858 -U 10052 ; WX 602 ; N uni2744 ; G 2859 -U 10053 ; WX 602 ; N uni2745 ; G 2860 -U 10054 ; WX 602 ; N uni2746 ; G 2861 -U 10055 ; WX 602 ; N uni2747 ; G 2862 -U 10056 ; WX 602 ; N uni2748 ; G 2863 -U 10057 ; WX 602 ; N uni2749 ; G 2864 -U 10058 ; WX 602 ; N uni274A ; G 2865 -U 10059 ; WX 602 ; N uni274B ; G 2866 -U 10061 ; WX 602 ; N uni274D ; G 2867 -U 10063 ; WX 602 ; N uni274F ; G 2868 -U 10064 ; WX 602 ; N uni2750 ; G 2869 -U 10065 ; WX 602 ; N uni2751 ; G 2870 -U 10066 ; WX 602 ; N uni2752 ; G 2871 -U 10070 ; WX 602 ; N uni2756 ; G 2872 -U 10072 ; WX 602 ; N uni2758 ; G 2873 -U 10073 ; WX 602 ; N uni2759 ; G 2874 -U 10074 ; WX 602 ; N uni275A ; G 2875 -U 10075 ; WX 602 ; N uni275B ; G 2876 -U 10076 ; WX 602 ; N uni275C ; G 2877 -U 10077 ; WX 602 ; N uni275D ; G 2878 -U 10078 ; WX 602 ; N uni275E ; G 2879 -U 10081 ; WX 602 ; N uni2761 ; G 2880 -U 10082 ; WX 602 ; N uni2762 ; G 2881 -U 10083 ; WX 602 ; N uni2763 ; G 2882 -U 10084 ; WX 602 ; N uni2764 ; G 2883 -U 10085 ; WX 602 ; N uni2765 ; G 2884 -U 10086 ; WX 602 ; N uni2766 ; G 2885 -U 10087 ; WX 602 ; N uni2767 ; G 2886 -U 10088 ; WX 602 ; N uni2768 ; G 2887 -U 10089 ; WX 602 ; N uni2769 ; G 2888 -U 10090 ; WX 602 ; N uni276A ; G 2889 -U 10091 ; WX 602 ; N uni276B ; G 2890 -U 10092 ; WX 602 ; N uni276C ; G 2891 -U 10093 ; WX 602 ; N uni276D ; G 2892 -U 10094 ; WX 602 ; N uni276E ; G 2893 -U 10095 ; WX 602 ; N uni276F ; G 2894 -U 10096 ; WX 602 ; N uni2770 ; G 2895 -U 10097 ; WX 602 ; N uni2771 ; G 2896 -U 10098 ; WX 602 ; N uni2772 ; G 2897 -U 10099 ; WX 602 ; N uni2773 ; G 2898 -U 10100 ; WX 602 ; N uni2774 ; G 2899 -U 10101 ; WX 602 ; N uni2775 ; G 2900 -U 10132 ; WX 602 ; N uni2794 ; G 2901 -U 10136 ; WX 602 ; N uni2798 ; G 2902 -U 10137 ; WX 602 ; N uni2799 ; G 2903 -U 10138 ; WX 602 ; N uni279A ; G 2904 -U 10139 ; WX 602 ; N uni279B ; G 2905 -U 10140 ; WX 602 ; N uni279C ; G 2906 -U 10141 ; WX 602 ; N uni279D ; G 2907 -U 10142 ; WX 602 ; N uni279E ; G 2908 -U 10143 ; WX 602 ; N uni279F ; G 2909 -U 10144 ; WX 602 ; N uni27A0 ; G 2910 -U 10145 ; WX 602 ; N uni27A1 ; G 2911 -U 10146 ; WX 602 ; N uni27A2 ; G 2912 -U 10147 ; WX 602 ; N uni27A3 ; G 2913 -U 10148 ; WX 602 ; N uni27A4 ; G 2914 -U 10149 ; WX 602 ; N uni27A5 ; G 2915 -U 10150 ; WX 602 ; N uni27A6 ; G 2916 -U 10151 ; WX 602 ; N uni27A7 ; G 2917 -U 10152 ; WX 602 ; N uni27A8 ; G 2918 -U 10153 ; WX 602 ; N uni27A9 ; G 2919 -U 10154 ; WX 602 ; N uni27AA ; G 2920 -U 10155 ; WX 602 ; N uni27AB ; G 2921 -U 10156 ; WX 602 ; N uni27AC ; G 2922 -U 10157 ; WX 602 ; N uni27AD ; G 2923 -U 10158 ; WX 602 ; N uni27AE ; G 2924 -U 10159 ; WX 602 ; N uni27AF ; G 2925 -U 10161 ; WX 602 ; N uni27B1 ; G 2926 -U 10162 ; WX 602 ; N uni27B2 ; G 2927 -U 10163 ; WX 602 ; N uni27B3 ; G 2928 -U 10164 ; WX 602 ; N uni27B4 ; G 2929 -U 10165 ; WX 602 ; N uni27B5 ; G 2930 -U 10166 ; WX 602 ; N uni27B6 ; G 2931 -U 10167 ; WX 602 ; N uni27B7 ; G 2932 -U 10168 ; WX 602 ; N uni27B8 ; G 2933 -U 10169 ; WX 602 ; N uni27B9 ; G 2934 -U 10170 ; WX 602 ; N uni27BA ; G 2935 -U 10171 ; WX 602 ; N uni27BB ; G 2936 -U 10172 ; WX 602 ; N uni27BC ; G 2937 -U 10173 ; WX 602 ; N uni27BD ; G 2938 -U 10174 ; WX 602 ; N uni27BE ; G 2939 -U 10175 ; WX 602 ; N uni27BF ; G 2940 -U 10178 ; WX 602 ; N uni27C2 ; G 2941 -U 10181 ; WX 602 ; N uni27C5 ; G 2942 -U 10182 ; WX 602 ; N uni27C6 ; G 2943 -U 10204 ; WX 602 ; N uni27DC ; G 2944 -U 10208 ; WX 602 ; N uni27E0 ; G 2945 -U 10214 ; WX 602 ; N uni27E6 ; G 2946 -U 10215 ; WX 602 ; N uni27E7 ; G 2947 -U 10216 ; WX 602 ; N uni27E8 ; G 2948 -U 10217 ; WX 602 ; N uni27E9 ; G 2949 -U 10218 ; WX 602 ; N uni27EA ; G 2950 -U 10219 ; WX 602 ; N uni27EB ; G 2951 -U 10229 ; WX 602 ; N uni27F5 ; G 2952 -U 10230 ; WX 602 ; N uni27F6 ; G 2953 -U 10231 ; WX 602 ; N uni27F7 ; G 2954 -U 10631 ; WX 602 ; N uni2987 ; G 2955 -U 10632 ; WX 602 ; N uni2988 ; G 2956 -U 10647 ; WX 602 ; N uni2997 ; G 2957 -U 10648 ; WX 602 ; N uni2998 ; G 2958 -U 10731 ; WX 602 ; N uni29EB ; G 2959 -U 10746 ; WX 602 ; N uni29FA ; G 2960 -U 10747 ; WX 602 ; N uni29FB ; G 2961 -U 10752 ; WX 602 ; N uni2A00 ; G 2962 -U 10799 ; WX 602 ; N uni2A2F ; G 2963 -U 10858 ; WX 602 ; N uni2A6A ; G 2964 -U 10859 ; WX 602 ; N uni2A6B ; G 2965 -U 11013 ; WX 602 ; N uni2B05 ; G 2966 -U 11014 ; WX 602 ; N uni2B06 ; G 2967 -U 11015 ; WX 602 ; N uni2B07 ; G 2968 -U 11016 ; WX 602 ; N uni2B08 ; G 2969 -U 11017 ; WX 602 ; N uni2B09 ; G 2970 -U 11018 ; WX 602 ; N uni2B0A ; G 2971 -U 11019 ; WX 602 ; N uni2B0B ; G 2972 -U 11020 ; WX 602 ; N uni2B0C ; G 2973 -U 11021 ; WX 602 ; N uni2B0D ; G 2974 -U 11026 ; WX 602 ; N uni2B12 ; G 2975 -U 11027 ; WX 602 ; N uni2B13 ; G 2976 -U 11028 ; WX 602 ; N uni2B14 ; G 2977 -U 11029 ; WX 602 ; N uni2B15 ; G 2978 -U 11030 ; WX 602 ; N uni2B16 ; G 2979 -U 11031 ; WX 602 ; N uni2B17 ; G 2980 -U 11032 ; WX 602 ; N uni2B18 ; G 2981 -U 11033 ; WX 602 ; N uni2B19 ; G 2982 -U 11034 ; WX 602 ; N uni2B1A ; G 2983 -U 11364 ; WX 602 ; N uni2C64 ; G 2984 -U 11373 ; WX 602 ; N uni2C6D ; G 2985 -U 11374 ; WX 602 ; N uni2C6E ; G 2986 -U 11375 ; WX 602 ; N uni2C6F ; G 2987 -U 11376 ; WX 602 ; N uni2C70 ; G 2988 -U 11381 ; WX 602 ; N uni2C75 ; G 2989 -U 11382 ; WX 602 ; N uni2C76 ; G 2990 -U 11383 ; WX 602 ; N uni2C77 ; G 2991 -U 11385 ; WX 602 ; N uni2C79 ; G 2992 -U 11386 ; WX 602 ; N uni2C7A ; G 2993 -U 11388 ; WX 602 ; N uni2C7C ; G 2994 -U 11389 ; WX 602 ; N uni2C7D ; G 2995 -U 11390 ; WX 602 ; N uni2C7E ; G 2996 -U 11391 ; WX 602 ; N uni2C7F ; G 2997 -U 11800 ; WX 602 ; N uni2E18 ; G 2998 -U 11807 ; WX 602 ; N uni2E1F ; G 2999 -U 11810 ; WX 602 ; N uni2E22 ; G 3000 -U 11811 ; WX 602 ; N uni2E23 ; G 3001 -U 11812 ; WX 602 ; N uni2E24 ; G 3002 -U 11813 ; WX 602 ; N uni2E25 ; G 3003 -U 11822 ; WX 602 ; N uni2E2E ; G 3004 -U 42760 ; WX 602 ; N uniA708 ; G 3005 -U 42761 ; WX 602 ; N uniA709 ; G 3006 -U 42762 ; WX 602 ; N uniA70A ; G 3007 -U 42763 ; WX 602 ; N uniA70B ; G 3008 -U 42764 ; WX 602 ; N uniA70C ; G 3009 -U 42765 ; WX 602 ; N uniA70D ; G 3010 -U 42766 ; WX 602 ; N uniA70E ; G 3011 -U 42767 ; WX 602 ; N uniA70F ; G 3012 -U 42768 ; WX 602 ; N uniA710 ; G 3013 -U 42769 ; WX 602 ; N uniA711 ; G 3014 -U 42770 ; WX 602 ; N uniA712 ; G 3015 -U 42771 ; WX 602 ; N uniA713 ; G 3016 -U 42772 ; WX 602 ; N uniA714 ; G 3017 -U 42773 ; WX 602 ; N uniA715 ; G 3018 -U 42774 ; WX 602 ; N uniA716 ; G 3019 -U 42779 ; WX 602 ; N uniA71B ; G 3020 -U 42780 ; WX 602 ; N uniA71C ; G 3021 -U 42781 ; WX 602 ; N uniA71D ; G 3022 -U 42782 ; WX 602 ; N uniA71E ; G 3023 -U 42783 ; WX 602 ; N uniA71F ; G 3024 -U 42786 ; WX 602 ; N uniA722 ; G 3025 -U 42787 ; WX 602 ; N uniA723 ; G 3026 -U 42788 ; WX 602 ; N uniA724 ; G 3027 -U 42789 ; WX 602 ; N uniA725 ; G 3028 -U 42790 ; WX 602 ; N uniA726 ; G 3029 -U 42791 ; WX 602 ; N uniA727 ; G 3030 -U 42889 ; WX 602 ; N uniA789 ; G 3031 -U 42890 ; WX 602 ; N uniA78A ; G 3032 -U 42891 ; WX 602 ; N uniA78B ; G 3033 -U 42892 ; WX 602 ; N uniA78C ; G 3034 -U 42893 ; WX 602 ; N uniA78D ; G 3035 -U 42894 ; WX 602 ; N uniA78E ; G 3036 -U 42896 ; WX 602 ; N uniA790 ; G 3037 -U 42897 ; WX 602 ; N uniA791 ; G 3038 -U 42922 ; WX 602 ; N uniA7AA ; G 3039 -U 43000 ; WX 602 ; N uniA7F8 ; G 3040 -U 43001 ; WX 602 ; N uniA7F9 ; G 3041 -U 63173 ; WX 602 ; N uniF6C5 ; G 3042 -U 64257 ; WX 602 ; N fi ; G 3043 -U 64258 ; WX 602 ; N fl ; G 3044 -U 64338 ; WX 602 ; N uniFB52 ; G 3045 -U 64339 ; WX 602 ; N uniFB53 ; G 3046 -U 64340 ; WX 602 ; N uniFB54 ; G 3047 -U 64341 ; WX 602 ; N uniFB55 ; G 3048 -U 64342 ; WX 602 ; N uniFB56 ; G 3049 -U 64343 ; WX 602 ; N uniFB57 ; G 3050 -U 64344 ; WX 602 ; N uniFB58 ; G 3051 -U 64345 ; WX 602 ; N uniFB59 ; G 3052 -U 64346 ; WX 602 ; N uniFB5A ; G 3053 -U 64347 ; WX 602 ; N uniFB5B ; G 3054 -U 64348 ; WX 602 ; N uniFB5C ; G 3055 -U 64349 ; WX 602 ; N uniFB5D ; G 3056 -U 64350 ; WX 602 ; N uniFB5E ; G 3057 -U 64351 ; WX 602 ; N uniFB5F ; G 3058 -U 64352 ; WX 602 ; N uniFB60 ; G 3059 -U 64353 ; WX 602 ; N uniFB61 ; G 3060 -U 64354 ; WX 602 ; N uniFB62 ; G 3061 -U 64355 ; WX 602 ; N uniFB63 ; G 3062 -U 64356 ; WX 602 ; N uniFB64 ; G 3063 -U 64357 ; WX 602 ; N uniFB65 ; G 3064 -U 64358 ; WX 602 ; N uniFB66 ; G 3065 -U 64359 ; WX 602 ; N uniFB67 ; G 3066 -U 64360 ; WX 602 ; N uniFB68 ; G 3067 -U 64361 ; WX 602 ; N uniFB69 ; G 3068 -U 64362 ; WX 602 ; N uniFB6A ; G 3069 -U 64363 ; WX 602 ; N uniFB6B ; G 3070 -U 64364 ; WX 602 ; N uniFB6C ; G 3071 -U 64365 ; WX 602 ; N uniFB6D ; G 3072 -U 64366 ; WX 602 ; N uniFB6E ; G 3073 -U 64367 ; WX 602 ; N uniFB6F ; G 3074 -U 64368 ; WX 602 ; N uniFB70 ; G 3075 -U 64369 ; WX 602 ; N uniFB71 ; G 3076 -U 64370 ; WX 602 ; N uniFB72 ; G 3077 -U 64371 ; WX 602 ; N uniFB73 ; G 3078 -U 64372 ; WX 602 ; N uniFB74 ; G 3079 -U 64373 ; WX 602 ; N uniFB75 ; G 3080 -U 64374 ; WX 602 ; N uniFB76 ; G 3081 -U 64375 ; WX 602 ; N uniFB77 ; G 3082 -U 64376 ; WX 602 ; N uniFB78 ; G 3083 -U 64377 ; WX 602 ; N uniFB79 ; G 3084 -U 64378 ; WX 602 ; N uniFB7A ; G 3085 -U 64379 ; WX 602 ; N uniFB7B ; G 3086 -U 64380 ; WX 602 ; N uniFB7C ; G 3087 -U 64381 ; WX 602 ; N uniFB7D ; G 3088 -U 64382 ; WX 602 ; N uniFB7E ; G 3089 -U 64383 ; WX 602 ; N uniFB7F ; G 3090 -U 64384 ; WX 602 ; N uniFB80 ; G 3091 -U 64385 ; WX 602 ; N uniFB81 ; G 3092 -U 64394 ; WX 602 ; N uniFB8A ; G 3093 -U 64395 ; WX 602 ; N uniFB8B ; G 3094 -U 64396 ; WX 602 ; N uniFB8C ; G 3095 -U 64397 ; WX 602 ; N uniFB8D ; G 3096 -U 64398 ; WX 602 ; N uniFB8E ; G 3097 -U 64399 ; WX 602 ; N uniFB8F ; G 3098 -U 64400 ; WX 602 ; N uniFB90 ; G 3099 -U 64401 ; WX 602 ; N uniFB91 ; G 3100 -U 64402 ; WX 602 ; N uniFB92 ; G 3101 -U 64403 ; WX 602 ; N uniFB93 ; G 3102 -U 64404 ; WX 602 ; N uniFB94 ; G 3103 -U 64405 ; WX 602 ; N uniFB95 ; G 3104 -U 64414 ; WX 602 ; N uniFB9E ; G 3105 -U 64415 ; WX 602 ; N uniFB9F ; G 3106 -U 64426 ; WX 602 ; N uniFBAA ; G 3107 -U 64427 ; WX 602 ; N uniFBAB ; G 3108 -U 64428 ; WX 602 ; N uniFBAC ; G 3109 -U 64429 ; WX 602 ; N uniFBAD ; G 3110 -U 64488 ; WX 602 ; N uniFBE8 ; G 3111 -U 64489 ; WX 602 ; N uniFBE9 ; G 3112 -U 64508 ; WX 602 ; N uniFBFC ; G 3113 -U 64509 ; WX 602 ; N uniFBFD ; G 3114 -U 64510 ; WX 602 ; N uniFBFE ; G 3115 -U 64511 ; WX 602 ; N uniFBFF ; G 3116 -U 65136 ; WX 602 ; N uniFE70 ; G 3117 -U 65137 ; WX 602 ; N uniFE71 ; G 3118 -U 65138 ; WX 602 ; N uniFE72 ; G 3119 -U 65139 ; WX 602 ; N uniFE73 ; G 3120 -U 65140 ; WX 602 ; N uniFE74 ; G 3121 -U 65142 ; WX 602 ; N uniFE76 ; G 3122 -U 65143 ; WX 602 ; N uniFE77 ; G 3123 -U 65144 ; WX 602 ; N uniFE78 ; G 3124 -U 65145 ; WX 602 ; N uniFE79 ; G 3125 -U 65146 ; WX 602 ; N uniFE7A ; G 3126 -U 65147 ; WX 602 ; N uniFE7B ; G 3127 -U 65148 ; WX 602 ; N uniFE7C ; G 3128 -U 65149 ; WX 602 ; N uniFE7D ; G 3129 -U 65150 ; WX 602 ; N uniFE7E ; G 3130 -U 65151 ; WX 602 ; N uniFE7F ; G 3131 -U 65152 ; WX 602 ; N uniFE80 ; G 3132 -U 65153 ; WX 602 ; N uniFE81 ; G 3133 -U 65154 ; WX 602 ; N uniFE82 ; G 3134 -U 65155 ; WX 602 ; N uniFE83 ; G 3135 -U 65156 ; WX 602 ; N uniFE84 ; G 3136 -U 65157 ; WX 602 ; N uniFE85 ; G 3137 -U 65158 ; WX 602 ; N uniFE86 ; G 3138 -U 65159 ; WX 602 ; N uniFE87 ; G 3139 -U 65160 ; WX 602 ; N uniFE88 ; G 3140 -U 65161 ; WX 602 ; N uniFE89 ; G 3141 -U 65162 ; WX 602 ; N uniFE8A ; G 3142 -U 65163 ; WX 602 ; N uniFE8B ; G 3143 -U 65164 ; WX 602 ; N uniFE8C ; G 3144 -U 65165 ; WX 602 ; N uniFE8D ; G 3145 -U 65166 ; WX 602 ; N uniFE8E ; G 3146 -U 65167 ; WX 602 ; N uniFE8F ; G 3147 -U 65168 ; WX 602 ; N uniFE90 ; G 3148 -U 65169 ; WX 602 ; N uniFE91 ; G 3149 -U 65170 ; WX 602 ; N uniFE92 ; G 3150 -U 65171 ; WX 602 ; N uniFE93 ; G 3151 -U 65172 ; WX 602 ; N uniFE94 ; G 3152 -U 65173 ; WX 602 ; N uniFE95 ; G 3153 -U 65174 ; WX 602 ; N uniFE96 ; G 3154 -U 65175 ; WX 602 ; N uniFE97 ; G 3155 -U 65176 ; WX 602 ; N uniFE98 ; G 3156 -U 65177 ; WX 602 ; N uniFE99 ; G 3157 -U 65178 ; WX 602 ; N uniFE9A ; G 3158 -U 65179 ; WX 602 ; N uniFE9B ; G 3159 -U 65180 ; WX 602 ; N uniFE9C ; G 3160 -U 65181 ; WX 602 ; N uniFE9D ; G 3161 -U 65182 ; WX 602 ; N uniFE9E ; G 3162 -U 65183 ; WX 602 ; N uniFE9F ; G 3163 -U 65184 ; WX 602 ; N uniFEA0 ; G 3164 -U 65185 ; WX 602 ; N uniFEA1 ; G 3165 -U 65186 ; WX 602 ; N uniFEA2 ; G 3166 -U 65187 ; WX 602 ; N uniFEA3 ; G 3167 -U 65188 ; WX 602 ; N uniFEA4 ; G 3168 -U 65189 ; WX 602 ; N uniFEA5 ; G 3169 -U 65190 ; WX 602 ; N uniFEA6 ; G 3170 -U 65191 ; WX 602 ; N uniFEA7 ; G 3171 -U 65192 ; WX 602 ; N uniFEA8 ; G 3172 -U 65193 ; WX 602 ; N uniFEA9 ; G 3173 -U 65194 ; WX 602 ; N uniFEAA ; G 3174 -U 65195 ; WX 602 ; N uniFEAB ; G 3175 -U 65196 ; WX 602 ; N uniFEAC ; G 3176 -U 65197 ; WX 602 ; N uniFEAD ; G 3177 -U 65198 ; WX 602 ; N uniFEAE ; G 3178 -U 65199 ; WX 602 ; N uniFEAF ; G 3179 -U 65200 ; WX 602 ; N uniFEB0 ; G 3180 -U 65201 ; WX 602 ; N uniFEB1 ; G 3181 -U 65202 ; WX 602 ; N uniFEB2 ; G 3182 -U 65203 ; WX 602 ; N uniFEB3 ; G 3183 -U 65204 ; WX 602 ; N uniFEB4 ; G 3184 -U 65205 ; WX 602 ; N uniFEB5 ; G 3185 -U 65206 ; WX 602 ; N uniFEB6 ; G 3186 -U 65207 ; WX 602 ; N uniFEB7 ; G 3187 -U 65208 ; WX 602 ; N uniFEB8 ; G 3188 -U 65209 ; WX 602 ; N uniFEB9 ; G 3189 -U 65210 ; WX 602 ; N uniFEBA ; G 3190 -U 65211 ; WX 602 ; N uniFEBB ; G 3191 -U 65212 ; WX 602 ; N uniFEBC ; G 3192 -U 65213 ; WX 602 ; N uniFEBD ; G 3193 -U 65214 ; WX 602 ; N uniFEBE ; G 3194 -U 65215 ; WX 602 ; N uniFEBF ; G 3195 -U 65216 ; WX 602 ; N uniFEC0 ; G 3196 -U 65217 ; WX 602 ; N uniFEC1 ; G 3197 -U 65218 ; WX 602 ; N uniFEC2 ; G 3198 -U 65219 ; WX 602 ; N uniFEC3 ; G 3199 -U 65220 ; WX 602 ; N uniFEC4 ; G 3200 -U 65221 ; WX 602 ; N uniFEC5 ; G 3201 -U 65222 ; WX 602 ; N uniFEC6 ; G 3202 -U 65223 ; WX 602 ; N uniFEC7 ; G 3203 -U 65224 ; WX 602 ; N uniFEC8 ; G 3204 -U 65225 ; WX 602 ; N uniFEC9 ; G 3205 -U 65226 ; WX 602 ; N uniFECA ; G 3206 -U 65227 ; WX 602 ; N uniFECB ; G 3207 -U 65228 ; WX 602 ; N uniFECC ; G 3208 -U 65229 ; WX 602 ; N uniFECD ; G 3209 -U 65230 ; WX 602 ; N uniFECE ; G 3210 -U 65231 ; WX 602 ; N uniFECF ; G 3211 -U 65232 ; WX 602 ; N uniFED0 ; G 3212 -U 65233 ; WX 602 ; N uniFED1 ; G 3213 -U 65234 ; WX 602 ; N uniFED2 ; G 3214 -U 65235 ; WX 602 ; N uniFED3 ; G 3215 -U 65236 ; WX 602 ; N uniFED4 ; G 3216 -U 65237 ; WX 602 ; N uniFED5 ; G 3217 -U 65238 ; WX 602 ; N uniFED6 ; G 3218 -U 65239 ; WX 602 ; N uniFED7 ; G 3219 -U 65240 ; WX 602 ; N uniFED8 ; G 3220 -U 65241 ; WX 602 ; N uniFED9 ; G 3221 -U 65242 ; WX 602 ; N uniFEDA ; G 3222 -U 65243 ; WX 602 ; N uniFEDB ; G 3223 -U 65244 ; WX 602 ; N uniFEDC ; G 3224 -U 65245 ; WX 602 ; N uniFEDD ; G 3225 -U 65246 ; WX 602 ; N uniFEDE ; G 3226 -U 65247 ; WX 602 ; N uniFEDF ; G 3227 -U 65248 ; WX 602 ; N uniFEE0 ; G 3228 -U 65249 ; WX 602 ; N uniFEE1 ; G 3229 -U 65250 ; WX 602 ; N uniFEE2 ; G 3230 -U 65251 ; WX 602 ; N uniFEE3 ; G 3231 -U 65252 ; WX 602 ; N uniFEE4 ; G 3232 -U 65253 ; WX 602 ; N uniFEE5 ; G 3233 -U 65254 ; WX 602 ; N uniFEE6 ; G 3234 -U 65255 ; WX 602 ; N uniFEE7 ; G 3235 -U 65256 ; WX 602 ; N uniFEE8 ; G 3236 -U 65257 ; WX 602 ; N uniFEE9 ; G 3237 -U 65258 ; WX 602 ; N uniFEEA ; G 3238 -U 65259 ; WX 602 ; N uniFEEB ; G 3239 -U 65260 ; WX 602 ; N uniFEEC ; G 3240 -U 65261 ; WX 602 ; N uniFEED ; G 3241 -U 65262 ; WX 602 ; N uniFEEE ; G 3242 -U 65263 ; WX 602 ; N uniFEEF ; G 3243 -U 65264 ; WX 602 ; N uniFEF0 ; G 3244 -U 65265 ; WX 602 ; N uniFEF1 ; G 3245 -U 65266 ; WX 602 ; N uniFEF2 ; G 3246 -U 65267 ; WX 602 ; N uniFEF3 ; G 3247 -U 65268 ; WX 602 ; N uniFEF4 ; G 3248 -U 65269 ; WX 602 ; N uniFEF5 ; G 3249 -U 65270 ; WX 602 ; N uniFEF6 ; G 3250 -U 65271 ; WX 602 ; N uniFEF7 ; G 3251 -U 65272 ; WX 602 ; N uniFEF8 ; G 3252 -U 65273 ; WX 602 ; N uniFEF9 ; G 3253 -U 65274 ; WX 602 ; N uniFEFA ; G 3254 -U 65275 ; WX 602 ; N uniFEFB ; G 3255 -U 65276 ; WX 602 ; N uniFEFC ; G 3256 -U 65279 ; WX 602 ; N uniFEFF ; G 3257 -U 65529 ; WX 602 ; N uniFFF9 ; G 3258 -U 65530 ; WX 602 ; N uniFFFA ; G 3259 -U 65531 ; WX 602 ; N uniFFFB ; G 3260 -U 65532 ; WX 602 ; N uniFFFC ; G 3261 -U 65533 ; WX 602 ; N uniFFFD ; G 3262 -EndCharMetrics -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSansMono-BoldOblique.ttf b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSansMono-BoldOblique.ttf deleted file mode 100644 index 754dca73..00000000 Binary files a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSansMono-BoldOblique.ttf and /dev/null differ diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSansMono-BoldOblique.ufm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSansMono-BoldOblique.ufm deleted file mode 100644 index 3ae612ab..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSansMono-BoldOblique.ufm +++ /dev/null @@ -1,2707 +0,0 @@ -StartFontMetrics 4.1 -Notice Converted by PHP-font-lib -Comment https://github.com/PhenX/php-font-lib -EncodingScheme FontSpecific -FontName DejaVu Sans Mono -FontSubfamily Bold Oblique -UniqueID DejaVu Sans Mono Bold Oblique -FullName DejaVu Sans Mono Bold Oblique -Version Version 2.37 -PostScriptName DejaVuSansMono-BoldOblique -Manufacturer DejaVu fonts team -FontVendorURL http://dejavu.sourceforge.net -LicenseURL http://dejavu.sourceforge.net/wiki/index.php/License -Weight Bold -ItalicAngle -11 -IsFixedPitch true -UnderlineThickness 44 -UnderlinePosition -63 -FontHeightOffset 0 -Ascender 928 -Descender -236 -FontBBox -425 -394 808 1008 -StartCharMetrics 2711 -U 32 ; WX 602 ; N space ; G 3 -U 33 ; WX 602 ; N exclam ; G 4 -U 34 ; WX 602 ; N quotedbl ; G 5 -U 35 ; WX 602 ; N numbersign ; G 6 -U 36 ; WX 602 ; N dollar ; G 7 -U 37 ; WX 602 ; N percent ; G 8 -U 38 ; WX 602 ; N ampersand ; G 9 -U 39 ; WX 602 ; N quotesingle ; G 10 -U 40 ; WX 602 ; N parenleft ; G 11 -U 41 ; WX 602 ; N parenright ; G 12 -U 42 ; WX 602 ; N asterisk ; G 13 -U 43 ; WX 602 ; N plus ; G 14 -U 44 ; WX 602 ; N comma ; G 15 -U 45 ; WX 602 ; N hyphen ; G 16 -U 46 ; WX 602 ; N period ; G 17 -U 47 ; WX 602 ; N slash ; G 18 -U 48 ; WX 602 ; N zero ; G 19 -U 49 ; WX 602 ; N one ; G 20 -U 50 ; WX 602 ; N two ; G 21 -U 51 ; WX 602 ; N three ; G 22 -U 52 ; WX 602 ; N four ; G 23 -U 53 ; WX 602 ; N five ; G 24 -U 54 ; WX 602 ; N six ; G 25 -U 55 ; WX 602 ; N seven ; G 26 -U 56 ; WX 602 ; N eight ; G 27 -U 57 ; WX 602 ; N nine ; G 28 -U 58 ; WX 602 ; N colon ; G 29 -U 59 ; WX 602 ; N semicolon ; G 30 -U 60 ; WX 602 ; N less ; G 31 -U 61 ; WX 602 ; N equal ; G 32 -U 62 ; WX 602 ; N greater ; G 33 -U 63 ; WX 602 ; N question ; G 34 -U 64 ; WX 602 ; N at ; G 35 -U 65 ; WX 602 ; N A ; G 36 -U 66 ; WX 602 ; N B ; G 37 -U 67 ; WX 602 ; N C ; G 38 -U 68 ; WX 602 ; N D ; G 39 -U 69 ; WX 602 ; N E ; G 40 -U 70 ; WX 602 ; N F ; G 41 -U 71 ; WX 602 ; N G ; G 42 -U 72 ; WX 602 ; N H ; G 43 -U 73 ; WX 602 ; N I ; G 44 -U 74 ; WX 602 ; N J ; G 45 -U 75 ; WX 602 ; N K ; G 46 -U 76 ; WX 602 ; N L ; G 47 -U 77 ; WX 602 ; N M ; G 48 -U 78 ; WX 602 ; N N ; G 49 -U 79 ; WX 602 ; N O ; G 50 -U 80 ; WX 602 ; N P ; G 51 -U 81 ; WX 602 ; N Q ; G 52 -U 82 ; WX 602 ; N R ; G 53 -U 83 ; WX 602 ; N S ; G 54 -U 84 ; WX 602 ; N T ; G 55 -U 85 ; WX 602 ; N U ; G 56 -U 86 ; WX 602 ; N V ; G 57 -U 87 ; WX 602 ; N W ; G 58 -U 88 ; WX 602 ; N X ; G 59 -U 89 ; WX 602 ; N Y ; G 60 -U 90 ; WX 602 ; N Z ; G 61 -U 91 ; WX 602 ; N bracketleft ; G 62 -U 92 ; WX 602 ; N backslash ; G 63 -U 93 ; WX 602 ; N bracketright ; G 64 -U 94 ; WX 602 ; N asciicircum ; G 65 -U 95 ; WX 602 ; N underscore ; G 66 -U 96 ; WX 602 ; N grave ; G 67 -U 97 ; WX 602 ; N a ; G 68 -U 98 ; WX 602 ; N b ; G 69 -U 99 ; WX 602 ; N c ; G 70 -U 100 ; WX 602 ; N d ; G 71 -U 101 ; WX 602 ; N e ; G 72 -U 102 ; WX 602 ; N f ; G 73 -U 103 ; WX 602 ; N g ; G 74 -U 104 ; WX 602 ; N h ; G 75 -U 105 ; WX 602 ; N i ; G 76 -U 106 ; WX 602 ; N j ; G 77 -U 107 ; WX 602 ; N k ; G 78 -U 108 ; WX 602 ; N l ; G 79 -U 109 ; WX 602 ; N m ; G 80 -U 110 ; WX 602 ; N n ; G 81 -U 111 ; WX 602 ; N o ; G 82 -U 112 ; WX 602 ; N p ; G 83 -U 113 ; WX 602 ; N q ; G 84 -U 114 ; WX 602 ; N r ; G 85 -U 115 ; WX 602 ; N s ; G 86 -U 116 ; WX 602 ; N t ; G 87 -U 117 ; WX 602 ; N u ; G 88 -U 118 ; WX 602 ; N v ; G 89 -U 119 ; WX 602 ; N w ; G 90 -U 120 ; WX 602 ; N x ; G 91 -U 121 ; WX 602 ; N y ; G 92 -U 122 ; WX 602 ; N z ; G 93 -U 123 ; WX 602 ; N braceleft ; G 94 -U 124 ; WX 602 ; N bar ; G 95 -U 125 ; WX 602 ; N braceright ; G 96 -U 126 ; WX 602 ; N asciitilde ; G 97 -U 160 ; WX 602 ; N nbspace ; G 98 -U 161 ; WX 602 ; N exclamdown ; G 99 -U 162 ; WX 602 ; N cent ; G 100 -U 163 ; WX 602 ; N sterling ; G 101 -U 164 ; WX 602 ; N currency ; G 102 -U 165 ; WX 602 ; N yen ; G 103 -U 166 ; WX 602 ; N brokenbar ; G 104 -U 167 ; WX 602 ; N section ; G 105 -U 168 ; WX 602 ; N dieresis ; G 106 -U 169 ; WX 602 ; N copyright ; G 107 -U 170 ; WX 602 ; N ordfeminine ; G 108 -U 171 ; WX 602 ; N guillemotleft ; G 109 -U 172 ; WX 602 ; N logicalnot ; G 110 -U 173 ; WX 602 ; N sfthyphen ; G 111 -U 174 ; WX 602 ; N registered ; G 112 -U 175 ; WX 602 ; N macron ; G 113 -U 176 ; WX 602 ; N degree ; G 114 -U 177 ; WX 602 ; N plusminus ; G 115 -U 178 ; WX 602 ; N twosuperior ; G 116 -U 179 ; WX 602 ; N threesuperior ; G 117 -U 180 ; WX 602 ; N acute ; G 118 -U 181 ; WX 602 ; N mu ; G 119 -U 182 ; WX 602 ; N paragraph ; G 120 -U 183 ; WX 602 ; N periodcentered ; G 121 -U 184 ; WX 602 ; N cedilla ; G 122 -U 185 ; WX 602 ; N onesuperior ; G 123 -U 186 ; WX 602 ; N ordmasculine ; G 124 -U 187 ; WX 602 ; N guillemotright ; G 125 -U 188 ; WX 602 ; N onequarter ; G 126 -U 189 ; WX 602 ; N onehalf ; G 127 -U 190 ; WX 602 ; N threequarters ; G 128 -U 191 ; WX 602 ; N questiondown ; G 129 -U 192 ; WX 602 ; N Agrave ; G 130 -U 193 ; WX 602 ; N Aacute ; G 131 -U 194 ; WX 602 ; N Acircumflex ; G 132 -U 195 ; WX 602 ; N Atilde ; G 133 -U 196 ; WX 602 ; N Adieresis ; G 134 -U 197 ; WX 602 ; N Aring ; G 135 -U 198 ; WX 602 ; N AE ; G 136 -U 199 ; WX 602 ; N Ccedilla ; G 137 -U 200 ; WX 602 ; N Egrave ; G 138 -U 201 ; WX 602 ; N Eacute ; G 139 -U 202 ; WX 602 ; N Ecircumflex ; G 140 -U 203 ; WX 602 ; N Edieresis ; G 141 -U 204 ; WX 602 ; N Igrave ; G 142 -U 205 ; WX 602 ; N Iacute ; G 143 -U 206 ; WX 602 ; N Icircumflex ; G 144 -U 207 ; WX 602 ; N Idieresis ; G 145 -U 208 ; WX 602 ; N Eth ; G 146 -U 209 ; WX 602 ; N Ntilde ; G 147 -U 210 ; WX 602 ; N Ograve ; G 148 -U 211 ; WX 602 ; N Oacute ; G 149 -U 212 ; WX 602 ; N Ocircumflex ; G 150 -U 213 ; WX 602 ; N Otilde ; G 151 -U 214 ; WX 602 ; N Odieresis ; G 152 -U 215 ; WX 602 ; N multiply ; G 153 -U 216 ; WX 602 ; N Oslash ; G 154 -U 217 ; WX 602 ; N Ugrave ; G 155 -U 218 ; WX 602 ; N Uacute ; G 156 -U 219 ; WX 602 ; N Ucircumflex ; G 157 -U 220 ; WX 602 ; N Udieresis ; G 158 -U 221 ; WX 602 ; N Yacute ; G 159 -U 222 ; WX 602 ; N Thorn ; G 160 -U 223 ; WX 602 ; N germandbls ; G 161 -U 224 ; WX 602 ; N agrave ; G 162 -U 225 ; WX 602 ; N aacute ; G 163 -U 226 ; WX 602 ; N acircumflex ; G 164 -U 227 ; WX 602 ; N atilde ; G 165 -U 228 ; WX 602 ; N adieresis ; G 166 -U 229 ; WX 602 ; N aring ; G 167 -U 230 ; WX 602 ; N ae ; G 168 -U 231 ; WX 602 ; N ccedilla ; G 169 -U 232 ; WX 602 ; N egrave ; G 170 -U 233 ; WX 602 ; N eacute ; G 171 -U 234 ; WX 602 ; N ecircumflex ; G 172 -U 235 ; WX 602 ; N edieresis ; G 173 -U 236 ; WX 602 ; N igrave ; G 174 -U 237 ; WX 602 ; N iacute ; G 175 -U 238 ; WX 602 ; N icircumflex ; G 176 -U 239 ; WX 602 ; N idieresis ; G 177 -U 240 ; WX 602 ; N eth ; G 178 -U 241 ; WX 602 ; N ntilde ; G 179 -U 242 ; WX 602 ; N ograve ; G 180 -U 243 ; WX 602 ; N oacute ; G 181 -U 244 ; WX 602 ; N ocircumflex ; G 182 -U 245 ; WX 602 ; N otilde ; G 183 -U 246 ; WX 602 ; N odieresis ; G 184 -U 247 ; WX 602 ; N divide ; G 185 -U 248 ; WX 602 ; N oslash ; G 186 -U 249 ; WX 602 ; N ugrave ; G 187 -U 250 ; WX 602 ; N uacute ; G 188 -U 251 ; WX 602 ; N ucircumflex ; G 189 -U 252 ; WX 602 ; N udieresis ; G 190 -U 253 ; WX 602 ; N yacute ; G 191 -U 254 ; WX 602 ; N thorn ; G 192 -U 255 ; WX 602 ; N ydieresis ; G 193 -U 256 ; WX 602 ; N Amacron ; G 194 -U 257 ; WX 602 ; N amacron ; G 195 -U 258 ; WX 602 ; N Abreve ; G 196 -U 259 ; WX 602 ; N abreve ; G 197 -U 260 ; WX 602 ; N Aogonek ; G 198 -U 261 ; WX 602 ; N aogonek ; G 199 -U 262 ; WX 602 ; N Cacute ; G 200 -U 263 ; WX 602 ; N cacute ; G 201 -U 264 ; WX 602 ; N Ccircumflex ; G 202 -U 265 ; WX 602 ; N ccircumflex ; G 203 -U 266 ; WX 602 ; N Cdotaccent ; G 204 -U 267 ; WX 602 ; N cdotaccent ; G 205 -U 268 ; WX 602 ; N Ccaron ; G 206 -U 269 ; WX 602 ; N ccaron ; G 207 -U 270 ; WX 602 ; N Dcaron ; G 208 -U 271 ; WX 602 ; N dcaron ; G 209 -U 272 ; WX 602 ; N Dcroat ; G 210 -U 273 ; WX 602 ; N dmacron ; G 211 -U 274 ; WX 602 ; N Emacron ; G 212 -U 275 ; WX 602 ; N emacron ; G 213 -U 276 ; WX 602 ; N Ebreve ; G 214 -U 277 ; WX 602 ; N ebreve ; G 215 -U 278 ; WX 602 ; N Edotaccent ; G 216 -U 279 ; WX 602 ; N edotaccent ; G 217 -U 280 ; WX 602 ; N Eogonek ; G 218 -U 281 ; WX 602 ; N eogonek ; G 219 -U 282 ; WX 602 ; N Ecaron ; G 220 -U 283 ; WX 602 ; N ecaron ; G 221 -U 284 ; WX 602 ; N Gcircumflex ; G 222 -U 285 ; WX 602 ; N gcircumflex ; G 223 -U 286 ; WX 602 ; N Gbreve ; G 224 -U 287 ; WX 602 ; N gbreve ; G 225 -U 288 ; WX 602 ; N Gdotaccent ; G 226 -U 289 ; WX 602 ; N gdotaccent ; G 227 -U 290 ; WX 602 ; N Gcommaaccent ; G 228 -U 291 ; WX 602 ; N gcommaaccent ; G 229 -U 292 ; WX 602 ; N Hcircumflex ; G 230 -U 293 ; WX 602 ; N hcircumflex ; G 231 -U 294 ; WX 602 ; N Hbar ; G 232 -U 295 ; WX 602 ; N hbar ; G 233 -U 296 ; WX 602 ; N Itilde ; G 234 -U 297 ; WX 602 ; N itilde ; G 235 -U 298 ; WX 602 ; N Imacron ; G 236 -U 299 ; WX 602 ; N imacron ; G 237 -U 300 ; WX 602 ; N Ibreve ; G 238 -U 301 ; WX 602 ; N ibreve ; G 239 -U 302 ; WX 602 ; N Iogonek ; G 240 -U 303 ; WX 602 ; N iogonek ; G 241 -U 304 ; WX 602 ; N Idot ; G 242 -U 305 ; WX 602 ; N dotlessi ; G 243 -U 306 ; WX 602 ; N IJ ; G 244 -U 307 ; WX 602 ; N ij ; G 245 -U 308 ; WX 602 ; N Jcircumflex ; G 246 -U 309 ; WX 602 ; N jcircumflex ; G 247 -U 310 ; WX 602 ; N Kcommaaccent ; G 248 -U 311 ; WX 602 ; N kcommaaccent ; G 249 -U 312 ; WX 602 ; N kgreenlandic ; G 250 -U 313 ; WX 602 ; N Lacute ; G 251 -U 314 ; WX 602 ; N lacute ; G 252 -U 315 ; WX 602 ; N Lcommaaccent ; G 253 -U 316 ; WX 602 ; N lcommaaccent ; G 254 -U 317 ; WX 602 ; N Lcaron ; G 255 -U 318 ; WX 602 ; N lcaron ; G 256 -U 319 ; WX 602 ; N Ldot ; G 257 -U 320 ; WX 602 ; N ldot ; G 258 -U 321 ; WX 602 ; N Lslash ; G 259 -U 322 ; WX 602 ; N lslash ; G 260 -U 323 ; WX 602 ; N Nacute ; G 261 -U 324 ; WX 602 ; N nacute ; G 262 -U 325 ; WX 602 ; N Ncommaaccent ; G 263 -U 326 ; WX 602 ; N ncommaaccent ; G 264 -U 327 ; WX 602 ; N Ncaron ; G 265 -U 328 ; WX 602 ; N ncaron ; G 266 -U 329 ; WX 602 ; N napostrophe ; G 267 -U 330 ; WX 602 ; N Eng ; G 268 -U 331 ; WX 602 ; N eng ; G 269 -U 332 ; WX 602 ; N Omacron ; G 270 -U 333 ; WX 602 ; N omacron ; G 271 -U 334 ; WX 602 ; N Obreve ; G 272 -U 335 ; WX 602 ; N obreve ; G 273 -U 336 ; WX 602 ; N Ohungarumlaut ; G 274 -U 337 ; WX 602 ; N ohungarumlaut ; G 275 -U 338 ; WX 602 ; N OE ; G 276 -U 339 ; WX 602 ; N oe ; G 277 -U 340 ; WX 602 ; N Racute ; G 278 -U 341 ; WX 602 ; N racute ; G 279 -U 342 ; WX 602 ; N Rcommaaccent ; G 280 -U 343 ; WX 602 ; N rcommaaccent ; G 281 -U 344 ; WX 602 ; N Rcaron ; G 282 -U 345 ; WX 602 ; N rcaron ; G 283 -U 346 ; WX 602 ; N Sacute ; G 284 -U 347 ; WX 602 ; N sacute ; G 285 -U 348 ; WX 602 ; N Scircumflex ; G 286 -U 349 ; WX 602 ; N scircumflex ; G 287 -U 350 ; WX 602 ; N Scedilla ; G 288 -U 351 ; WX 602 ; N scedilla ; G 289 -U 352 ; WX 602 ; N Scaron ; G 290 -U 353 ; WX 602 ; N scaron ; G 291 -U 354 ; WX 602 ; N Tcommaaccent ; G 292 -U 355 ; WX 602 ; N tcommaaccent ; G 293 -U 356 ; WX 602 ; N Tcaron ; G 294 -U 357 ; WX 602 ; N tcaron ; G 295 -U 358 ; WX 602 ; N Tbar ; G 296 -U 359 ; WX 602 ; N tbar ; G 297 -U 360 ; WX 602 ; N Utilde ; G 298 -U 361 ; WX 602 ; N utilde ; G 299 -U 362 ; WX 602 ; N Umacron ; G 300 -U 363 ; WX 602 ; N umacron ; G 301 -U 364 ; WX 602 ; N Ubreve ; G 302 -U 365 ; WX 602 ; N ubreve ; G 303 -U 366 ; WX 602 ; N Uring ; G 304 -U 367 ; WX 602 ; N uring ; G 305 -U 368 ; WX 602 ; N Uhungarumlaut ; G 306 -U 369 ; WX 602 ; N uhungarumlaut ; G 307 -U 370 ; WX 602 ; N Uogonek ; G 308 -U 371 ; WX 602 ; N uogonek ; G 309 -U 372 ; WX 602 ; N Wcircumflex ; G 310 -U 373 ; WX 602 ; N wcircumflex ; G 311 -U 374 ; WX 602 ; N Ycircumflex ; G 312 -U 375 ; WX 602 ; N ycircumflex ; G 313 -U 376 ; WX 602 ; N Ydieresis ; G 314 -U 377 ; WX 602 ; N Zacute ; G 315 -U 378 ; WX 602 ; N zacute ; G 316 -U 379 ; WX 602 ; N Zdotaccent ; G 317 -U 380 ; WX 602 ; N zdotaccent ; G 318 -U 381 ; WX 602 ; N Zcaron ; G 319 -U 382 ; WX 602 ; N zcaron ; G 320 -U 383 ; WX 602 ; N longs ; G 321 -U 384 ; WX 602 ; N uni0180 ; G 322 -U 385 ; WX 602 ; N uni0181 ; G 323 -U 386 ; WX 602 ; N uni0182 ; G 324 -U 387 ; WX 602 ; N uni0183 ; G 325 -U 388 ; WX 602 ; N uni0184 ; G 326 -U 389 ; WX 602 ; N uni0185 ; G 327 -U 390 ; WX 602 ; N uni0186 ; G 328 -U 391 ; WX 602 ; N uni0187 ; G 329 -U 392 ; WX 602 ; N uni0188 ; G 330 -U 393 ; WX 602 ; N uni0189 ; G 331 -U 394 ; WX 602 ; N uni018A ; G 332 -U 395 ; WX 602 ; N uni018B ; G 333 -U 396 ; WX 602 ; N uni018C ; G 334 -U 397 ; WX 602 ; N uni018D ; G 335 -U 398 ; WX 602 ; N uni018E ; G 336 -U 399 ; WX 602 ; N uni018F ; G 337 -U 400 ; WX 602 ; N uni0190 ; G 338 -U 401 ; WX 602 ; N uni0191 ; G 339 -U 402 ; WX 602 ; N florin ; G 340 -U 403 ; WX 602 ; N uni0193 ; G 341 -U 404 ; WX 602 ; N uni0194 ; G 342 -U 405 ; WX 602 ; N uni0195 ; G 343 -U 406 ; WX 602 ; N uni0196 ; G 344 -U 407 ; WX 602 ; N uni0197 ; G 345 -U 408 ; WX 602 ; N uni0198 ; G 346 -U 409 ; WX 602 ; N uni0199 ; G 347 -U 410 ; WX 602 ; N uni019A ; G 348 -U 411 ; WX 602 ; N uni019B ; G 349 -U 412 ; WX 602 ; N uni019C ; G 350 -U 413 ; WX 602 ; N uni019D ; G 351 -U 414 ; WX 602 ; N uni019E ; G 352 -U 415 ; WX 602 ; N uni019F ; G 353 -U 416 ; WX 602 ; N Ohorn ; G 354 -U 417 ; WX 602 ; N ohorn ; G 355 -U 418 ; WX 602 ; N uni01A2 ; G 356 -U 419 ; WX 602 ; N uni01A3 ; G 357 -U 420 ; WX 602 ; N uni01A4 ; G 358 -U 421 ; WX 602 ; N uni01A5 ; G 359 -U 422 ; WX 602 ; N uni01A6 ; G 360 -U 423 ; WX 602 ; N uni01A7 ; G 361 -U 424 ; WX 602 ; N uni01A8 ; G 362 -U 425 ; WX 602 ; N uni01A9 ; G 363 -U 426 ; WX 602 ; N uni01AA ; G 364 -U 427 ; WX 602 ; N uni01AB ; G 365 -U 428 ; WX 602 ; N uni01AC ; G 366 -U 429 ; WX 602 ; N uni01AD ; G 367 -U 430 ; WX 602 ; N uni01AE ; G 368 -U 431 ; WX 602 ; N Uhorn ; G 369 -U 432 ; WX 602 ; N uhorn ; G 370 -U 433 ; WX 602 ; N uni01B1 ; G 371 -U 434 ; WX 602 ; N uni01B2 ; G 372 -U 435 ; WX 602 ; N uni01B3 ; G 373 -U 436 ; WX 602 ; N uni01B4 ; G 374 -U 437 ; WX 602 ; N uni01B5 ; G 375 -U 438 ; WX 602 ; N uni01B6 ; G 376 -U 439 ; WX 602 ; N uni01B7 ; G 377 -U 440 ; WX 602 ; N uni01B8 ; G 378 -U 441 ; WX 602 ; N uni01B9 ; G 379 -U 442 ; WX 602 ; N uni01BA ; G 380 -U 443 ; WX 602 ; N uni01BB ; G 381 -U 444 ; WX 602 ; N uni01BC ; G 382 -U 445 ; WX 602 ; N uni01BD ; G 383 -U 446 ; WX 602 ; N uni01BE ; G 384 -U 447 ; WX 602 ; N uni01BF ; G 385 -U 448 ; WX 602 ; N uni01C0 ; G 386 -U 449 ; WX 602 ; N uni01C1 ; G 387 -U 450 ; WX 602 ; N uni01C2 ; G 388 -U 451 ; WX 602 ; N uni01C3 ; G 389 -U 461 ; WX 602 ; N uni01CD ; G 390 -U 462 ; WX 602 ; N uni01CE ; G 391 -U 463 ; WX 602 ; N uni01CF ; G 392 -U 464 ; WX 602 ; N uni01D0 ; G 393 -U 465 ; WX 602 ; N uni01D1 ; G 394 -U 466 ; WX 602 ; N uni01D2 ; G 395 -U 467 ; WX 602 ; N uni01D3 ; G 396 -U 468 ; WX 602 ; N uni01D4 ; G 397 -U 469 ; WX 602 ; N uni01D5 ; G 398 -U 470 ; WX 602 ; N uni01D6 ; G 399 -U 471 ; WX 602 ; N uni01D7 ; G 400 -U 472 ; WX 602 ; N uni01D8 ; G 401 -U 473 ; WX 602 ; N uni01D9 ; G 402 -U 474 ; WX 602 ; N uni01DA ; G 403 -U 475 ; WX 602 ; N uni01DB ; G 404 -U 476 ; WX 602 ; N uni01DC ; G 405 -U 477 ; WX 602 ; N uni01DD ; G 406 -U 478 ; WX 602 ; N uni01DE ; G 407 -U 479 ; WX 602 ; N uni01DF ; G 408 -U 480 ; WX 602 ; N uni01E0 ; G 409 -U 481 ; WX 602 ; N uni01E1 ; G 410 -U 482 ; WX 602 ; N uni01E2 ; G 411 -U 483 ; WX 602 ; N uni01E3 ; G 412 -U 486 ; WX 602 ; N Gcaron ; G 413 -U 487 ; WX 602 ; N gcaron ; G 414 -U 488 ; WX 602 ; N uni01E8 ; G 415 -U 489 ; WX 602 ; N uni01E9 ; G 416 -U 490 ; WX 602 ; N uni01EA ; G 417 -U 491 ; WX 602 ; N uni01EB ; G 418 -U 492 ; WX 602 ; N uni01EC ; G 419 -U 493 ; WX 602 ; N uni01ED ; G 420 -U 494 ; WX 602 ; N uni01EE ; G 421 -U 495 ; WX 602 ; N uni01EF ; G 422 -U 500 ; WX 602 ; N uni01F4 ; G 423 -U 501 ; WX 602 ; N uni01F5 ; G 424 -U 502 ; WX 602 ; N uni01F6 ; G 425 -U 504 ; WX 602 ; N uni01F8 ; G 426 -U 505 ; WX 602 ; N uni01F9 ; G 427 -U 508 ; WX 602 ; N AEacute ; G 428 -U 509 ; WX 602 ; N aeacute ; G 429 -U 510 ; WX 602 ; N Oslashacute ; G 430 -U 511 ; WX 602 ; N oslashacute ; G 431 -U 512 ; WX 602 ; N uni0200 ; G 432 -U 513 ; WX 602 ; N uni0201 ; G 433 -U 514 ; WX 602 ; N uni0202 ; G 434 -U 515 ; WX 602 ; N uni0203 ; G 435 -U 516 ; WX 602 ; N uni0204 ; G 436 -U 517 ; WX 602 ; N uni0205 ; G 437 -U 518 ; WX 602 ; N uni0206 ; G 438 -U 519 ; WX 602 ; N uni0207 ; G 439 -U 520 ; WX 602 ; N uni0208 ; G 440 -U 521 ; WX 602 ; N uni0209 ; G 441 -U 522 ; WX 602 ; N uni020A ; G 442 -U 523 ; WX 602 ; N uni020B ; G 443 -U 524 ; WX 602 ; N uni020C ; G 444 -U 525 ; WX 602 ; N uni020D ; G 445 -U 526 ; WX 602 ; N uni020E ; G 446 -U 527 ; WX 602 ; N uni020F ; G 447 -U 528 ; WX 602 ; N uni0210 ; G 448 -U 529 ; WX 602 ; N uni0211 ; G 449 -U 530 ; WX 602 ; N uni0212 ; G 450 -U 531 ; WX 602 ; N uni0213 ; G 451 -U 532 ; WX 602 ; N uni0214 ; G 452 -U 533 ; WX 602 ; N uni0215 ; G 453 -U 534 ; WX 602 ; N uni0216 ; G 454 -U 535 ; WX 602 ; N uni0217 ; G 455 -U 536 ; WX 602 ; N Scommaaccent ; G 456 -U 537 ; WX 602 ; N scommaaccent ; G 457 -U 538 ; WX 602 ; N uni021A ; G 458 -U 539 ; WX 602 ; N uni021B ; G 459 -U 540 ; WX 602 ; N uni021C ; G 460 -U 541 ; WX 602 ; N uni021D ; G 461 -U 542 ; WX 602 ; N uni021E ; G 462 -U 543 ; WX 602 ; N uni021F ; G 463 -U 545 ; WX 602 ; N uni0221 ; G 464 -U 548 ; WX 602 ; N uni0224 ; G 465 -U 549 ; WX 602 ; N uni0225 ; G 466 -U 550 ; WX 602 ; N uni0226 ; G 467 -U 551 ; WX 602 ; N uni0227 ; G 468 -U 552 ; WX 602 ; N uni0228 ; G 469 -U 553 ; WX 602 ; N uni0229 ; G 470 -U 554 ; WX 602 ; N uni022A ; G 471 -U 555 ; WX 602 ; N uni022B ; G 472 -U 556 ; WX 602 ; N uni022C ; G 473 -U 557 ; WX 602 ; N uni022D ; G 474 -U 558 ; WX 602 ; N uni022E ; G 475 -U 559 ; WX 602 ; N uni022F ; G 476 -U 560 ; WX 602 ; N uni0230 ; G 477 -U 561 ; WX 602 ; N uni0231 ; G 478 -U 562 ; WX 602 ; N uni0232 ; G 479 -U 563 ; WX 602 ; N uni0233 ; G 480 -U 564 ; WX 602 ; N uni0234 ; G 481 -U 565 ; WX 602 ; N uni0235 ; G 482 -U 566 ; WX 602 ; N uni0236 ; G 483 -U 567 ; WX 602 ; N dotlessj ; G 484 -U 568 ; WX 602 ; N uni0238 ; G 485 -U 569 ; WX 602 ; N uni0239 ; G 486 -U 570 ; WX 602 ; N uni023A ; G 487 -U 571 ; WX 602 ; N uni023B ; G 488 -U 572 ; WX 602 ; N uni023C ; G 489 -U 573 ; WX 602 ; N uni023D ; G 490 -U 574 ; WX 602 ; N uni023E ; G 491 -U 575 ; WX 602 ; N uni023F ; G 492 -U 576 ; WX 602 ; N uni0240 ; G 493 -U 577 ; WX 602 ; N uni0241 ; G 494 -U 579 ; WX 602 ; N uni0243 ; G 495 -U 580 ; WX 602 ; N uni0244 ; G 496 -U 581 ; WX 602 ; N uni0245 ; G 497 -U 588 ; WX 602 ; N uni024C ; G 498 -U 589 ; WX 602 ; N uni024D ; G 499 -U 592 ; WX 602 ; N uni0250 ; G 500 -U 593 ; WX 602 ; N uni0251 ; G 501 -U 594 ; WX 602 ; N uni0252 ; G 502 -U 595 ; WX 602 ; N uni0253 ; G 503 -U 596 ; WX 602 ; N uni0254 ; G 504 -U 597 ; WX 602 ; N uni0255 ; G 505 -U 598 ; WX 602 ; N uni0256 ; G 506 -U 599 ; WX 602 ; N uni0257 ; G 507 -U 600 ; WX 602 ; N uni0258 ; G 508 -U 601 ; WX 602 ; N uni0259 ; G 509 -U 602 ; WX 602 ; N uni025A ; G 510 -U 603 ; WX 602 ; N uni025B ; G 511 -U 604 ; WX 602 ; N uni025C ; G 512 -U 605 ; WX 602 ; N uni025D ; G 513 -U 606 ; WX 602 ; N uni025E ; G 514 -U 607 ; WX 602 ; N uni025F ; G 515 -U 608 ; WX 602 ; N uni0260 ; G 516 -U 609 ; WX 602 ; N uni0261 ; G 517 -U 610 ; WX 602 ; N uni0262 ; G 518 -U 611 ; WX 602 ; N uni0263 ; G 519 -U 612 ; WX 602 ; N uni0264 ; G 520 -U 613 ; WX 602 ; N uni0265 ; G 521 -U 614 ; WX 602 ; N uni0266 ; G 522 -U 615 ; WX 602 ; N uni0267 ; G 523 -U 616 ; WX 602 ; N uni0268 ; G 524 -U 617 ; WX 602 ; N uni0269 ; G 525 -U 618 ; WX 602 ; N uni026A ; G 526 -U 619 ; WX 602 ; N uni026B ; G 527 -U 620 ; WX 602 ; N uni026C ; G 528 -U 621 ; WX 602 ; N uni026D ; G 529 -U 622 ; WX 602 ; N uni026E ; G 530 -U 623 ; WX 602 ; N uni026F ; G 531 -U 624 ; WX 602 ; N uni0270 ; G 532 -U 625 ; WX 602 ; N uni0271 ; G 533 -U 626 ; WX 602 ; N uni0272 ; G 534 -U 627 ; WX 602 ; N uni0273 ; G 535 -U 628 ; WX 602 ; N uni0274 ; G 536 -U 629 ; WX 602 ; N uni0275 ; G 537 -U 630 ; WX 602 ; N uni0276 ; G 538 -U 631 ; WX 602 ; N uni0277 ; G 539 -U 632 ; WX 602 ; N uni0278 ; G 540 -U 633 ; WX 602 ; N uni0279 ; G 541 -U 634 ; WX 602 ; N uni027A ; G 542 -U 635 ; WX 602 ; N uni027B ; G 543 -U 636 ; WX 602 ; N uni027C ; G 544 -U 637 ; WX 602 ; N uni027D ; G 545 -U 638 ; WX 602 ; N uni027E ; G 546 -U 639 ; WX 602 ; N uni027F ; G 547 -U 640 ; WX 602 ; N uni0280 ; G 548 -U 641 ; WX 602 ; N uni0281 ; G 549 -U 642 ; WX 602 ; N uni0282 ; G 550 -U 643 ; WX 602 ; N uni0283 ; G 551 -U 644 ; WX 602 ; N uni0284 ; G 552 -U 645 ; WX 602 ; N uni0285 ; G 553 -U 646 ; WX 602 ; N uni0286 ; G 554 -U 647 ; WX 602 ; N uni0287 ; G 555 -U 648 ; WX 602 ; N uni0288 ; G 556 -U 649 ; WX 602 ; N uni0289 ; G 557 -U 650 ; WX 602 ; N uni028A ; G 558 -U 651 ; WX 602 ; N uni028B ; G 559 -U 652 ; WX 602 ; N uni028C ; G 560 -U 653 ; WX 602 ; N uni028D ; G 561 -U 654 ; WX 602 ; N uni028E ; G 562 -U 655 ; WX 602 ; N uni028F ; G 563 -U 656 ; WX 602 ; N uni0290 ; G 564 -U 657 ; WX 602 ; N uni0291 ; G 565 -U 658 ; WX 602 ; N uni0292 ; G 566 -U 659 ; WX 602 ; N uni0293 ; G 567 -U 660 ; WX 602 ; N uni0294 ; G 568 -U 661 ; WX 602 ; N uni0295 ; G 569 -U 662 ; WX 602 ; N uni0296 ; G 570 -U 663 ; WX 602 ; N uni0297 ; G 571 -U 664 ; WX 602 ; N uni0298 ; G 572 -U 665 ; WX 602 ; N uni0299 ; G 573 -U 666 ; WX 602 ; N uni029A ; G 574 -U 667 ; WX 602 ; N uni029B ; G 575 -U 668 ; WX 602 ; N uni029C ; G 576 -U 669 ; WX 602 ; N uni029D ; G 577 -U 670 ; WX 602 ; N uni029E ; G 578 -U 671 ; WX 602 ; N uni029F ; G 579 -U 672 ; WX 602 ; N uni02A0 ; G 580 -U 673 ; WX 602 ; N uni02A1 ; G 581 -U 674 ; WX 602 ; N uni02A2 ; G 582 -U 675 ; WX 602 ; N uni02A3 ; G 583 -U 676 ; WX 602 ; N uni02A4 ; G 584 -U 677 ; WX 602 ; N uni02A5 ; G 585 -U 678 ; WX 602 ; N uni02A6 ; G 586 -U 679 ; WX 602 ; N uni02A7 ; G 587 -U 680 ; WX 602 ; N uni02A8 ; G 588 -U 681 ; WX 602 ; N uni02A9 ; G 589 -U 682 ; WX 602 ; N uni02AA ; G 590 -U 683 ; WX 602 ; N uni02AB ; G 591 -U 684 ; WX 602 ; N uni02AC ; G 592 -U 685 ; WX 602 ; N uni02AD ; G 593 -U 686 ; WX 602 ; N uni02AE ; G 594 -U 687 ; WX 602 ; N uni02AF ; G 595 -U 688 ; WX 602 ; N uni02B0 ; G 596 -U 689 ; WX 602 ; N uni02B1 ; G 597 -U 690 ; WX 602 ; N uni02B2 ; G 598 -U 691 ; WX 602 ; N uni02B3 ; G 599 -U 692 ; WX 602 ; N uni02B4 ; G 600 -U 693 ; WX 602 ; N uni02B5 ; G 601 -U 694 ; WX 602 ; N uni02B6 ; G 602 -U 695 ; WX 602 ; N uni02B7 ; G 603 -U 696 ; WX 602 ; N uni02B8 ; G 604 -U 697 ; WX 602 ; N uni02B9 ; G 605 -U 699 ; WX 602 ; N uni02BB ; G 606 -U 700 ; WX 602 ; N uni02BC ; G 607 -U 701 ; WX 602 ; N uni02BD ; G 608 -U 702 ; WX 602 ; N uni02BE ; G 609 -U 703 ; WX 602 ; N uni02BF ; G 610 -U 704 ; WX 602 ; N uni02C0 ; G 611 -U 705 ; WX 602 ; N uni02C1 ; G 612 -U 710 ; WX 602 ; N circumflex ; G 613 -U 711 ; WX 602 ; N caron ; G 614 -U 712 ; WX 602 ; N uni02C8 ; G 615 -U 713 ; WX 602 ; N uni02C9 ; G 616 -U 716 ; WX 602 ; N uni02CC ; G 617 -U 717 ; WX 602 ; N uni02CD ; G 618 -U 718 ; WX 602 ; N uni02CE ; G 619 -U 719 ; WX 602 ; N uni02CF ; G 620 -U 720 ; WX 602 ; N uni02D0 ; G 621 -U 721 ; WX 602 ; N uni02D1 ; G 622 -U 722 ; WX 602 ; N uni02D2 ; G 623 -U 723 ; WX 602 ; N uni02D3 ; G 624 -U 726 ; WX 602 ; N uni02D6 ; G 625 -U 727 ; WX 602 ; N uni02D7 ; G 626 -U 728 ; WX 602 ; N breve ; G 627 -U 729 ; WX 602 ; N dotaccent ; G 628 -U 730 ; WX 602 ; N ring ; G 629 -U 731 ; WX 602 ; N ogonek ; G 630 -U 732 ; WX 602 ; N tilde ; G 631 -U 733 ; WX 602 ; N hungarumlaut ; G 632 -U 734 ; WX 602 ; N uni02DE ; G 633 -U 736 ; WX 602 ; N uni02E0 ; G 634 -U 737 ; WX 602 ; N uni02E1 ; G 635 -U 738 ; WX 602 ; N uni02E2 ; G 636 -U 739 ; WX 602 ; N uni02E3 ; G 637 -U 740 ; WX 602 ; N uni02E4 ; G 638 -U 741 ; WX 602 ; N uni02E5 ; G 639 -U 742 ; WX 602 ; N uni02E6 ; G 640 -U 743 ; WX 602 ; N uni02E7 ; G 641 -U 744 ; WX 602 ; N uni02E8 ; G 642 -U 745 ; WX 602 ; N uni02E9 ; G 643 -U 750 ; WX 602 ; N uni02EE ; G 644 -U 755 ; WX 602 ; N uni02F3 ; G 645 -U 768 ; WX 602 ; N gravecomb ; G 646 -U 769 ; WX 602 ; N acutecomb ; G 647 -U 770 ; WX 602 ; N uni0302 ; G 648 -U 771 ; WX 602 ; N tildecomb ; G 649 -U 772 ; WX 602 ; N uni0304 ; G 650 -U 773 ; WX 602 ; N uni0305 ; G 651 -U 774 ; WX 602 ; N uni0306 ; G 652 -U 775 ; WX 602 ; N uni0307 ; G 653 -U 776 ; WX 602 ; N uni0308 ; G 654 -U 777 ; WX 602 ; N hookabovecomb ; G 655 -U 778 ; WX 602 ; N uni030A ; G 656 -U 779 ; WX 602 ; N uni030B ; G 657 -U 780 ; WX 602 ; N uni030C ; G 658 -U 781 ; WX 602 ; N uni030D ; G 659 -U 782 ; WX 602 ; N uni030E ; G 660 -U 783 ; WX 602 ; N uni030F ; G 661 -U 784 ; WX 602 ; N uni0310 ; G 662 -U 785 ; WX 602 ; N uni0311 ; G 663 -U 786 ; WX 602 ; N uni0312 ; G 664 -U 787 ; WX 602 ; N uni0313 ; G 665 -U 788 ; WX 602 ; N uni0314 ; G 666 -U 789 ; WX 602 ; N uni0315 ; G 667 -U 790 ; WX 602 ; N uni0316 ; G 668 -U 791 ; WX 602 ; N uni0317 ; G 669 -U 792 ; WX 602 ; N uni0318 ; G 670 -U 793 ; WX 602 ; N uni0319 ; G 671 -U 794 ; WX 602 ; N uni031A ; G 672 -U 795 ; WX 602 ; N uni031B ; G 673 -U 796 ; WX 602 ; N uni031C ; G 674 -U 797 ; WX 602 ; N uni031D ; G 675 -U 798 ; WX 602 ; N uni031E ; G 676 -U 799 ; WX 602 ; N uni031F ; G 677 -U 800 ; WX 602 ; N uni0320 ; G 678 -U 801 ; WX 602 ; N uni0321 ; G 679 -U 802 ; WX 602 ; N uni0322 ; G 680 -U 803 ; WX 602 ; N dotbelowcomb ; G 681 -U 804 ; WX 602 ; N uni0324 ; G 682 -U 805 ; WX 602 ; N uni0325 ; G 683 -U 806 ; WX 602 ; N uni0326 ; G 684 -U 807 ; WX 602 ; N uni0327 ; G 685 -U 808 ; WX 602 ; N uni0328 ; G 686 -U 809 ; WX 602 ; N uni0329 ; G 687 -U 810 ; WX 602 ; N uni032A ; G 688 -U 811 ; WX 602 ; N uni032B ; G 689 -U 812 ; WX 602 ; N uni032C ; G 690 -U 813 ; WX 602 ; N uni032D ; G 691 -U 814 ; WX 602 ; N uni032E ; G 692 -U 815 ; WX 602 ; N uni032F ; G 693 -U 816 ; WX 602 ; N uni0330 ; G 694 -U 817 ; WX 602 ; N uni0331 ; G 695 -U 818 ; WX 602 ; N uni0332 ; G 696 -U 819 ; WX 602 ; N uni0333 ; G 697 -U 820 ; WX 602 ; N uni0334 ; G 698 -U 821 ; WX 602 ; N uni0335 ; G 699 -U 822 ; WX 602 ; N uni0336 ; G 700 -U 823 ; WX 602 ; N uni0337 ; G 701 -U 824 ; WX 602 ; N uni0338 ; G 702 -U 825 ; WX 602 ; N uni0339 ; G 703 -U 826 ; WX 602 ; N uni033A ; G 704 -U 827 ; WX 602 ; N uni033B ; G 705 -U 828 ; WX 602 ; N uni033C ; G 706 -U 829 ; WX 602 ; N uni033D ; G 707 -U 830 ; WX 602 ; N uni033E ; G 708 -U 831 ; WX 602 ; N uni033F ; G 709 -U 835 ; WX 602 ; N uni0343 ; G 710 -U 856 ; WX 602 ; N uni0358 ; G 711 -U 865 ; WX 602 ; N uni0361 ; G 712 -U 884 ; WX 602 ; N uni0374 ; G 713 -U 885 ; WX 602 ; N uni0375 ; G 714 -U 886 ; WX 602 ; N uni0376 ; G 715 -U 887 ; WX 602 ; N uni0377 ; G 716 -U 890 ; WX 602 ; N uni037A ; G 717 -U 891 ; WX 602 ; N uni037B ; G 718 -U 892 ; WX 602 ; N uni037C ; G 719 -U 893 ; WX 602 ; N uni037D ; G 720 -U 894 ; WX 602 ; N uni037E ; G 721 -U 895 ; WX 602 ; N uni037F ; G 722 -U 900 ; WX 602 ; N tonos ; G 723 -U 901 ; WX 602 ; N dieresistonos ; G 724 -U 902 ; WX 602 ; N Alphatonos ; G 725 -U 903 ; WX 602 ; N anoteleia ; G 726 -U 904 ; WX 602 ; N Epsilontonos ; G 727 -U 905 ; WX 602 ; N Etatonos ; G 728 -U 906 ; WX 602 ; N Iotatonos ; G 729 -U 908 ; WX 602 ; N Omicrontonos ; G 730 -U 910 ; WX 602 ; N Upsilontonos ; G 731 -U 911 ; WX 602 ; N Omegatonos ; G 732 -U 912 ; WX 602 ; N iotadieresistonos ; G 733 -U 913 ; WX 602 ; N Alpha ; G 734 -U 914 ; WX 602 ; N Beta ; G 735 -U 915 ; WX 602 ; N Gamma ; G 736 -U 916 ; WX 602 ; N uni0394 ; G 737 -U 917 ; WX 602 ; N Epsilon ; G 738 -U 918 ; WX 602 ; N Zeta ; G 739 -U 919 ; WX 602 ; N Eta ; G 740 -U 920 ; WX 602 ; N Theta ; G 741 -U 921 ; WX 602 ; N Iota ; G 742 -U 922 ; WX 602 ; N Kappa ; G 743 -U 923 ; WX 602 ; N Lambda ; G 744 -U 924 ; WX 602 ; N Mu ; G 745 -U 925 ; WX 602 ; N Nu ; G 746 -U 926 ; WX 602 ; N Xi ; G 747 -U 927 ; WX 602 ; N Omicron ; G 748 -U 928 ; WX 602 ; N Pi ; G 749 -U 929 ; WX 602 ; N Rho ; G 750 -U 931 ; WX 602 ; N Sigma ; G 751 -U 932 ; WX 602 ; N Tau ; G 752 -U 933 ; WX 602 ; N Upsilon ; G 753 -U 934 ; WX 602 ; N Phi ; G 754 -U 935 ; WX 602 ; N Chi ; G 755 -U 936 ; WX 602 ; N Psi ; G 756 -U 937 ; WX 602 ; N Omega ; G 757 -U 938 ; WX 602 ; N Iotadieresis ; G 758 -U 939 ; WX 602 ; N Upsilondieresis ; G 759 -U 940 ; WX 602 ; N alphatonos ; G 760 -U 941 ; WX 602 ; N epsilontonos ; G 761 -U 942 ; WX 602 ; N etatonos ; G 762 -U 943 ; WX 602 ; N iotatonos ; G 763 -U 944 ; WX 602 ; N upsilondieresistonos ; G 764 -U 945 ; WX 602 ; N alpha ; G 765 -U 946 ; WX 602 ; N beta ; G 766 -U 947 ; WX 602 ; N gamma ; G 767 -U 948 ; WX 602 ; N delta ; G 768 -U 949 ; WX 602 ; N epsilon ; G 769 -U 950 ; WX 602 ; N zeta ; G 770 -U 951 ; WX 602 ; N eta ; G 771 -U 952 ; WX 602 ; N theta ; G 772 -U 953 ; WX 602 ; N iota ; G 773 -U 954 ; WX 602 ; N kappa ; G 774 -U 955 ; WX 602 ; N lambda ; G 775 -U 956 ; WX 602 ; N uni03BC ; G 776 -U 957 ; WX 602 ; N nu ; G 777 -U 958 ; WX 602 ; N xi ; G 778 -U 959 ; WX 602 ; N omicron ; G 779 -U 960 ; WX 602 ; N pi ; G 780 -U 961 ; WX 602 ; N rho ; G 781 -U 962 ; WX 602 ; N sigma1 ; G 782 -U 963 ; WX 602 ; N sigma ; G 783 -U 964 ; WX 602 ; N tau ; G 784 -U 965 ; WX 602 ; N upsilon ; G 785 -U 966 ; WX 602 ; N phi ; G 786 -U 967 ; WX 602 ; N chi ; G 787 -U 968 ; WX 602 ; N psi ; G 788 -U 969 ; WX 602 ; N omega ; G 789 -U 970 ; WX 602 ; N iotadieresis ; G 790 -U 971 ; WX 602 ; N upsilondieresis ; G 791 -U 972 ; WX 602 ; N omicrontonos ; G 792 -U 973 ; WX 602 ; N upsilontonos ; G 793 -U 974 ; WX 602 ; N omegatonos ; G 794 -U 976 ; WX 602 ; N uni03D0 ; G 795 -U 977 ; WX 602 ; N theta1 ; G 796 -U 978 ; WX 602 ; N Upsilon1 ; G 797 -U 979 ; WX 602 ; N uni03D3 ; G 798 -U 980 ; WX 602 ; N uni03D4 ; G 799 -U 981 ; WX 602 ; N phi1 ; G 800 -U 982 ; WX 602 ; N omega1 ; G 801 -U 983 ; WX 602 ; N uni03D7 ; G 802 -U 984 ; WX 602 ; N uni03D8 ; G 803 -U 985 ; WX 602 ; N uni03D9 ; G 804 -U 986 ; WX 602 ; N uni03DA ; G 805 -U 987 ; WX 602 ; N uni03DB ; G 806 -U 988 ; WX 602 ; N uni03DC ; G 807 -U 989 ; WX 602 ; N uni03DD ; G 808 -U 990 ; WX 602 ; N uni03DE ; G 809 -U 991 ; WX 602 ; N uni03DF ; G 810 -U 992 ; WX 602 ; N uni03E0 ; G 811 -U 993 ; WX 602 ; N uni03E1 ; G 812 -U 1008 ; WX 602 ; N uni03F0 ; G 813 -U 1009 ; WX 602 ; N uni03F1 ; G 814 -U 1010 ; WX 602 ; N uni03F2 ; G 815 -U 1011 ; WX 602 ; N uni03F3 ; G 816 -U 1012 ; WX 602 ; N uni03F4 ; G 817 -U 1013 ; WX 602 ; N uni03F5 ; G 818 -U 1014 ; WX 602 ; N uni03F6 ; G 819 -U 1015 ; WX 602 ; N uni03F7 ; G 820 -U 1016 ; WX 602 ; N uni03F8 ; G 821 -U 1017 ; WX 602 ; N uni03F9 ; G 822 -U 1018 ; WX 602 ; N uni03FA ; G 823 -U 1019 ; WX 602 ; N uni03FB ; G 824 -U 1020 ; WX 602 ; N uni03FC ; G 825 -U 1021 ; WX 602 ; N uni03FD ; G 826 -U 1022 ; WX 602 ; N uni03FE ; G 827 -U 1023 ; WX 602 ; N uni03FF ; G 828 -U 1024 ; WX 602 ; N uni0400 ; G 829 -U 1025 ; WX 602 ; N uni0401 ; G 830 -U 1026 ; WX 602 ; N uni0402 ; G 831 -U 1027 ; WX 602 ; N uni0403 ; G 832 -U 1028 ; WX 602 ; N uni0404 ; G 833 -U 1029 ; WX 602 ; N uni0405 ; G 834 -U 1030 ; WX 602 ; N uni0406 ; G 835 -U 1031 ; WX 602 ; N uni0407 ; G 836 -U 1032 ; WX 602 ; N uni0408 ; G 837 -U 1033 ; WX 602 ; N uni0409 ; G 838 -U 1034 ; WX 602 ; N uni040A ; G 839 -U 1035 ; WX 602 ; N uni040B ; G 840 -U 1036 ; WX 602 ; N uni040C ; G 841 -U 1037 ; WX 602 ; N uni040D ; G 842 -U 1038 ; WX 602 ; N uni040E ; G 843 -U 1039 ; WX 602 ; N uni040F ; G 844 -U 1040 ; WX 602 ; N uni0410 ; G 845 -U 1041 ; WX 602 ; N uni0411 ; G 846 -U 1042 ; WX 602 ; N uni0412 ; G 847 -U 1043 ; WX 602 ; N uni0413 ; G 848 -U 1044 ; WX 602 ; N uni0414 ; G 849 -U 1045 ; WX 602 ; N uni0415 ; G 850 -U 1046 ; WX 602 ; N uni0416 ; G 851 -U 1047 ; WX 602 ; N uni0417 ; G 852 -U 1048 ; WX 602 ; N uni0418 ; G 853 -U 1049 ; WX 602 ; N uni0419 ; G 854 -U 1050 ; WX 602 ; N uni041A ; G 855 -U 1051 ; WX 602 ; N uni041B ; G 856 -U 1052 ; WX 602 ; N uni041C ; G 857 -U 1053 ; WX 602 ; N uni041D ; G 858 -U 1054 ; WX 602 ; N uni041E ; G 859 -U 1055 ; WX 602 ; N uni041F ; G 860 -U 1056 ; WX 602 ; N uni0420 ; G 861 -U 1057 ; WX 602 ; N uni0421 ; G 862 -U 1058 ; WX 602 ; N uni0422 ; G 863 -U 1059 ; WX 602 ; N uni0423 ; G 864 -U 1060 ; WX 602 ; N uni0424 ; G 865 -U 1061 ; WX 602 ; N uni0425 ; G 866 -U 1062 ; WX 602 ; N uni0426 ; G 867 -U 1063 ; WX 602 ; N uni0427 ; G 868 -U 1064 ; WX 602 ; N uni0428 ; G 869 -U 1065 ; WX 602 ; N uni0429 ; G 870 -U 1066 ; WX 602 ; N uni042A ; G 871 -U 1067 ; WX 602 ; N uni042B ; G 872 -U 1068 ; WX 602 ; N uni042C ; G 873 -U 1069 ; WX 602 ; N uni042D ; G 874 -U 1070 ; WX 602 ; N uni042E ; G 875 -U 1071 ; WX 602 ; N uni042F ; G 876 -U 1072 ; WX 602 ; N uni0430 ; G 877 -U 1073 ; WX 602 ; N uni0431 ; G 878 -U 1074 ; WX 602 ; N uni0432 ; G 879 -U 1075 ; WX 602 ; N uni0433 ; G 880 -U 1076 ; WX 602 ; N uni0434 ; G 881 -U 1077 ; WX 602 ; N uni0435 ; G 882 -U 1078 ; WX 602 ; N uni0436 ; G 883 -U 1079 ; WX 602 ; N uni0437 ; G 884 -U 1080 ; WX 602 ; N uni0438 ; G 885 -U 1081 ; WX 602 ; N uni0439 ; G 886 -U 1082 ; WX 602 ; N uni043A ; G 887 -U 1083 ; WX 602 ; N uni043B ; G 888 -U 1084 ; WX 602 ; N uni043C ; G 889 -U 1085 ; WX 602 ; N uni043D ; G 890 -U 1086 ; WX 602 ; N uni043E ; G 891 -U 1087 ; WX 602 ; N uni043F ; G 892 -U 1088 ; WX 602 ; N uni0440 ; G 893 -U 1089 ; WX 602 ; N uni0441 ; G 894 -U 1090 ; WX 602 ; N uni0442 ; G 895 -U 1091 ; WX 602 ; N uni0443 ; G 896 -U 1092 ; WX 602 ; N uni0444 ; G 897 -U 1093 ; WX 602 ; N uni0445 ; G 898 -U 1094 ; WX 602 ; N uni0446 ; G 899 -U 1095 ; WX 602 ; N uni0447 ; G 900 -U 1096 ; WX 602 ; N uni0448 ; G 901 -U 1097 ; WX 602 ; N uni0449 ; G 902 -U 1098 ; WX 602 ; N uni044A ; G 903 -U 1099 ; WX 602 ; N uni044B ; G 904 -U 1100 ; WX 602 ; N uni044C ; G 905 -U 1101 ; WX 602 ; N uni044D ; G 906 -U 1102 ; WX 602 ; N uni044E ; G 907 -U 1103 ; WX 602 ; N uni044F ; G 908 -U 1104 ; WX 602 ; N uni0450 ; G 909 -U 1105 ; WX 602 ; N uni0451 ; G 910 -U 1106 ; WX 602 ; N uni0452 ; G 911 -U 1107 ; WX 602 ; N uni0453 ; G 912 -U 1108 ; WX 602 ; N uni0454 ; G 913 -U 1109 ; WX 602 ; N uni0455 ; G 914 -U 1110 ; WX 602 ; N uni0456 ; G 915 -U 1111 ; WX 602 ; N uni0457 ; G 916 -U 1112 ; WX 602 ; N uni0458 ; G 917 -U 1113 ; WX 602 ; N uni0459 ; G 918 -U 1114 ; WX 602 ; N uni045A ; G 919 -U 1115 ; WX 602 ; N uni045B ; G 920 -U 1116 ; WX 602 ; N uni045C ; G 921 -U 1117 ; WX 602 ; N uni045D ; G 922 -U 1118 ; WX 602 ; N uni045E ; G 923 -U 1119 ; WX 602 ; N uni045F ; G 924 -U 1122 ; WX 602 ; N uni0462 ; G 925 -U 1123 ; WX 602 ; N uni0463 ; G 926 -U 1138 ; WX 602 ; N uni0472 ; G 927 -U 1139 ; WX 602 ; N uni0473 ; G 928 -U 1168 ; WX 602 ; N uni0490 ; G 929 -U 1169 ; WX 602 ; N uni0491 ; G 930 -U 1170 ; WX 602 ; N uni0492 ; G 931 -U 1171 ; WX 602 ; N uni0493 ; G 932 -U 1172 ; WX 602 ; N uni0494 ; G 933 -U 1173 ; WX 602 ; N uni0495 ; G 934 -U 1174 ; WX 602 ; N uni0496 ; G 935 -U 1175 ; WX 602 ; N uni0497 ; G 936 -U 1176 ; WX 602 ; N uni0498 ; G 937 -U 1177 ; WX 602 ; N uni0499 ; G 938 -U 1178 ; WX 602 ; N uni049A ; G 939 -U 1179 ; WX 602 ; N uni049B ; G 940 -U 1186 ; WX 602 ; N uni04A2 ; G 941 -U 1187 ; WX 602 ; N uni04A3 ; G 942 -U 1188 ; WX 602 ; N uni04A4 ; G 943 -U 1189 ; WX 602 ; N uni04A5 ; G 944 -U 1194 ; WX 602 ; N uni04AA ; G 945 -U 1195 ; WX 602 ; N uni04AB ; G 946 -U 1196 ; WX 602 ; N uni04AC ; G 947 -U 1197 ; WX 602 ; N uni04AD ; G 948 -U 1198 ; WX 602 ; N uni04AE ; G 949 -U 1199 ; WX 602 ; N uni04AF ; G 950 -U 1200 ; WX 602 ; N uni04B0 ; G 951 -U 1201 ; WX 602 ; N uni04B1 ; G 952 -U 1202 ; WX 602 ; N uni04B2 ; G 953 -U 1203 ; WX 602 ; N uni04B3 ; G 954 -U 1210 ; WX 602 ; N uni04BA ; G 955 -U 1211 ; WX 602 ; N uni04BB ; G 956 -U 1216 ; WX 602 ; N uni04C0 ; G 957 -U 1217 ; WX 602 ; N uni04C1 ; G 958 -U 1218 ; WX 602 ; N uni04C2 ; G 959 -U 1219 ; WX 602 ; N uni04C3 ; G 960 -U 1220 ; WX 602 ; N uni04C4 ; G 961 -U 1223 ; WX 602 ; N uni04C7 ; G 962 -U 1224 ; WX 602 ; N uni04C8 ; G 963 -U 1227 ; WX 602 ; N uni04CB ; G 964 -U 1228 ; WX 602 ; N uni04CC ; G 965 -U 1231 ; WX 602 ; N uni04CF ; G 966 -U 1232 ; WX 602 ; N uni04D0 ; G 967 -U 1233 ; WX 602 ; N uni04D1 ; G 968 -U 1234 ; WX 602 ; N uni04D2 ; G 969 -U 1235 ; WX 602 ; N uni04D3 ; G 970 -U 1236 ; WX 602 ; N uni04D4 ; G 971 -U 1237 ; WX 602 ; N uni04D5 ; G 972 -U 1238 ; WX 602 ; N uni04D6 ; G 973 -U 1239 ; WX 602 ; N uni04D7 ; G 974 -U 1240 ; WX 602 ; N uni04D8 ; G 975 -U 1241 ; WX 602 ; N uni04D9 ; G 976 -U 1242 ; WX 602 ; N uni04DA ; G 977 -U 1243 ; WX 602 ; N uni04DB ; G 978 -U 1244 ; WX 602 ; N uni04DC ; G 979 -U 1245 ; WX 602 ; N uni04DD ; G 980 -U 1246 ; WX 602 ; N uni04DE ; G 981 -U 1247 ; WX 602 ; N uni04DF ; G 982 -U 1248 ; WX 602 ; N uni04E0 ; G 983 -U 1249 ; WX 602 ; N uni04E1 ; G 984 -U 1250 ; WX 602 ; N uni04E2 ; G 985 -U 1251 ; WX 602 ; N uni04E3 ; G 986 -U 1252 ; WX 602 ; N uni04E4 ; G 987 -U 1253 ; WX 602 ; N uni04E5 ; G 988 -U 1254 ; WX 602 ; N uni04E6 ; G 989 -U 1255 ; WX 602 ; N uni04E7 ; G 990 -U 1256 ; WX 602 ; N uni04E8 ; G 991 -U 1257 ; WX 602 ; N uni04E9 ; G 992 -U 1258 ; WX 602 ; N uni04EA ; G 993 -U 1259 ; WX 602 ; N uni04EB ; G 994 -U 1260 ; WX 602 ; N uni04EC ; G 995 -U 1261 ; WX 602 ; N uni04ED ; G 996 -U 1262 ; WX 602 ; N uni04EE ; G 997 -U 1263 ; WX 602 ; N uni04EF ; G 998 -U 1264 ; WX 602 ; N uni04F0 ; G 999 -U 1265 ; WX 602 ; N uni04F1 ; G 1000 -U 1266 ; WX 602 ; N uni04F2 ; G 1001 -U 1267 ; WX 602 ; N uni04F3 ; G 1002 -U 1268 ; WX 602 ; N uni04F4 ; G 1003 -U 1269 ; WX 602 ; N uni04F5 ; G 1004 -U 1270 ; WX 602 ; N uni04F6 ; G 1005 -U 1271 ; WX 602 ; N uni04F7 ; G 1006 -U 1272 ; WX 602 ; N uni04F8 ; G 1007 -U 1273 ; WX 602 ; N uni04F9 ; G 1008 -U 1296 ; WX 602 ; N uni0510 ; G 1009 -U 1297 ; WX 602 ; N uni0511 ; G 1010 -U 1306 ; WX 602 ; N uni051A ; G 1011 -U 1307 ; WX 602 ; N uni051B ; G 1012 -U 1308 ; WX 602 ; N uni051C ; G 1013 -U 1309 ; WX 602 ; N uni051D ; G 1014 -U 1329 ; WX 602 ; N uni0531 ; G 1015 -U 1330 ; WX 602 ; N uni0532 ; G 1016 -U 1331 ; WX 602 ; N uni0533 ; G 1017 -U 1332 ; WX 602 ; N uni0534 ; G 1018 -U 1333 ; WX 602 ; N uni0535 ; G 1019 -U 1334 ; WX 602 ; N uni0536 ; G 1020 -U 1335 ; WX 602 ; N uni0537 ; G 1021 -U 1336 ; WX 602 ; N uni0538 ; G 1022 -U 1337 ; WX 602 ; N uni0539 ; G 1023 -U 1338 ; WX 602 ; N uni053A ; G 1024 -U 1339 ; WX 602 ; N uni053B ; G 1025 -U 1340 ; WX 602 ; N uni053C ; G 1026 -U 1341 ; WX 602 ; N uni053D ; G 1027 -U 1342 ; WX 602 ; N uni053E ; G 1028 -U 1343 ; WX 602 ; N uni053F ; G 1029 -U 1344 ; WX 602 ; N uni0540 ; G 1030 -U 1345 ; WX 602 ; N uni0541 ; G 1031 -U 1346 ; WX 602 ; N uni0542 ; G 1032 -U 1347 ; WX 602 ; N uni0543 ; G 1033 -U 1348 ; WX 602 ; N uni0544 ; G 1034 -U 1349 ; WX 602 ; N uni0545 ; G 1035 -U 1350 ; WX 602 ; N uni0546 ; G 1036 -U 1351 ; WX 602 ; N uni0547 ; G 1037 -U 1352 ; WX 602 ; N uni0548 ; G 1038 -U 1353 ; WX 602 ; N uni0549 ; G 1039 -U 1354 ; WX 602 ; N uni054A ; G 1040 -U 1355 ; WX 602 ; N uni054B ; G 1041 -U 1356 ; WX 602 ; N uni054C ; G 1042 -U 1357 ; WX 602 ; N uni054D ; G 1043 -U 1358 ; WX 602 ; N uni054E ; G 1044 -U 1359 ; WX 602 ; N uni054F ; G 1045 -U 1360 ; WX 602 ; N uni0550 ; G 1046 -U 1361 ; WX 602 ; N uni0551 ; G 1047 -U 1362 ; WX 602 ; N uni0552 ; G 1048 -U 1363 ; WX 602 ; N uni0553 ; G 1049 -U 1364 ; WX 602 ; N uni0554 ; G 1050 -U 1365 ; WX 602 ; N uni0555 ; G 1051 -U 1366 ; WX 602 ; N uni0556 ; G 1052 -U 1369 ; WX 602 ; N uni0559 ; G 1053 -U 1370 ; WX 602 ; N uni055A ; G 1054 -U 1371 ; WX 602 ; N uni055B ; G 1055 -U 1372 ; WX 602 ; N uni055C ; G 1056 -U 1373 ; WX 602 ; N uni055D ; G 1057 -U 1374 ; WX 602 ; N uni055E ; G 1058 -U 1375 ; WX 602 ; N uni055F ; G 1059 -U 1377 ; WX 602 ; N uni0561 ; G 1060 -U 1378 ; WX 602 ; N uni0562 ; G 1061 -U 1379 ; WX 602 ; N uni0563 ; G 1062 -U 1380 ; WX 602 ; N uni0564 ; G 1063 -U 1381 ; WX 602 ; N uni0565 ; G 1064 -U 1382 ; WX 602 ; N uni0566 ; G 1065 -U 1383 ; WX 602 ; N uni0567 ; G 1066 -U 1384 ; WX 602 ; N uni0568 ; G 1067 -U 1385 ; WX 602 ; N uni0569 ; G 1068 -U 1386 ; WX 602 ; N uni056A ; G 1069 -U 1387 ; WX 602 ; N uni056B ; G 1070 -U 1388 ; WX 602 ; N uni056C ; G 1071 -U 1389 ; WX 602 ; N uni056D ; G 1072 -U 1390 ; WX 602 ; N uni056E ; G 1073 -U 1391 ; WX 602 ; N uni056F ; G 1074 -U 1392 ; WX 602 ; N uni0570 ; G 1075 -U 1393 ; WX 602 ; N uni0571 ; G 1076 -U 1394 ; WX 602 ; N uni0572 ; G 1077 -U 1395 ; WX 602 ; N uni0573 ; G 1078 -U 1396 ; WX 602 ; N uni0574 ; G 1079 -U 1397 ; WX 602 ; N uni0575 ; G 1080 -U 1398 ; WX 602 ; N uni0576 ; G 1081 -U 1399 ; WX 602 ; N uni0577 ; G 1082 -U 1400 ; WX 602 ; N uni0578 ; G 1083 -U 1401 ; WX 602 ; N uni0579 ; G 1084 -U 1402 ; WX 602 ; N uni057A ; G 1085 -U 1403 ; WX 602 ; N uni057B ; G 1086 -U 1404 ; WX 602 ; N uni057C ; G 1087 -U 1405 ; WX 602 ; N uni057D ; G 1088 -U 1406 ; WX 602 ; N uni057E ; G 1089 -U 1407 ; WX 602 ; N uni057F ; G 1090 -U 1408 ; WX 602 ; N uni0580 ; G 1091 -U 1409 ; WX 602 ; N uni0581 ; G 1092 -U 1410 ; WX 602 ; N uni0582 ; G 1093 -U 1411 ; WX 602 ; N uni0583 ; G 1094 -U 1412 ; WX 602 ; N uni0584 ; G 1095 -U 1413 ; WX 602 ; N uni0585 ; G 1096 -U 1414 ; WX 602 ; N uni0586 ; G 1097 -U 1415 ; WX 602 ; N uni0587 ; G 1098 -U 1417 ; WX 602 ; N uni0589 ; G 1099 -U 1418 ; WX 602 ; N uni058A ; G 1100 -U 3647 ; WX 602 ; N uni0E3F ; G 1101 -U 3713 ; WX 602 ; N uni0E81 ; G 1102 -U 3714 ; WX 602 ; N uni0E82 ; G 1103 -U 3716 ; WX 602 ; N uni0E84 ; G 1104 -U 3719 ; WX 602 ; N uni0E87 ; G 1105 -U 3720 ; WX 602 ; N uni0E88 ; G 1106 -U 3722 ; WX 602 ; N uni0E8A ; G 1107 -U 3725 ; WX 602 ; N uni0E8D ; G 1108 -U 3732 ; WX 602 ; N uni0E94 ; G 1109 -U 3733 ; WX 602 ; N uni0E95 ; G 1110 -U 3734 ; WX 602 ; N uni0E96 ; G 1111 -U 3735 ; WX 602 ; N uni0E97 ; G 1112 -U 3737 ; WX 602 ; N uni0E99 ; G 1113 -U 3738 ; WX 602 ; N uni0E9A ; G 1114 -U 3739 ; WX 602 ; N uni0E9B ; G 1115 -U 3740 ; WX 602 ; N uni0E9C ; G 1116 -U 3741 ; WX 602 ; N uni0E9D ; G 1117 -U 3742 ; WX 602 ; N uni0E9E ; G 1118 -U 3743 ; WX 602 ; N uni0E9F ; G 1119 -U 3745 ; WX 602 ; N uni0EA1 ; G 1120 -U 3746 ; WX 602 ; N uni0EA2 ; G 1121 -U 3747 ; WX 602 ; N uni0EA3 ; G 1122 -U 3749 ; WX 602 ; N uni0EA5 ; G 1123 -U 3751 ; WX 602 ; N uni0EA7 ; G 1124 -U 3754 ; WX 602 ; N uni0EAA ; G 1125 -U 3755 ; WX 602 ; N uni0EAB ; G 1126 -U 3757 ; WX 602 ; N uni0EAD ; G 1127 -U 3758 ; WX 602 ; N uni0EAE ; G 1128 -U 3759 ; WX 602 ; N uni0EAF ; G 1129 -U 3760 ; WX 602 ; N uni0EB0 ; G 1130 -U 3761 ; WX 602 ; N uni0EB1 ; G 1131 -U 3762 ; WX 602 ; N uni0EB2 ; G 1132 -U 3763 ; WX 602 ; N uni0EB3 ; G 1133 -U 3764 ; WX 602 ; N uni0EB4 ; G 1134 -U 3765 ; WX 602 ; N uni0EB5 ; G 1135 -U 3766 ; WX 602 ; N uni0EB6 ; G 1136 -U 3767 ; WX 602 ; N uni0EB7 ; G 1137 -U 3768 ; WX 602 ; N uni0EB8 ; G 1138 -U 3769 ; WX 602 ; N uni0EB9 ; G 1139 -U 3771 ; WX 602 ; N uni0EBB ; G 1140 -U 3772 ; WX 602 ; N uni0EBC ; G 1141 -U 3784 ; WX 602 ; N uni0EC8 ; G 1142 -U 3785 ; WX 602 ; N uni0EC9 ; G 1143 -U 3786 ; WX 602 ; N uni0ECA ; G 1144 -U 3787 ; WX 602 ; N uni0ECB ; G 1145 -U 3788 ; WX 602 ; N uni0ECC ; G 1146 -U 3789 ; WX 602 ; N uni0ECD ; G 1147 -U 4304 ; WX 602 ; N uni10D0 ; G 1148 -U 4305 ; WX 602 ; N uni10D1 ; G 1149 -U 4306 ; WX 602 ; N uni10D2 ; G 1150 -U 4307 ; WX 602 ; N uni10D3 ; G 1151 -U 4308 ; WX 602 ; N uni10D4 ; G 1152 -U 4309 ; WX 602 ; N uni10D5 ; G 1153 -U 4310 ; WX 602 ; N uni10D6 ; G 1154 -U 4311 ; WX 602 ; N uni10D7 ; G 1155 -U 4312 ; WX 602 ; N uni10D8 ; G 1156 -U 4313 ; WX 602 ; N uni10D9 ; G 1157 -U 4314 ; WX 602 ; N uni10DA ; G 1158 -U 4315 ; WX 602 ; N uni10DB ; G 1159 -U 4316 ; WX 602 ; N uni10DC ; G 1160 -U 4317 ; WX 602 ; N uni10DD ; G 1161 -U 4318 ; WX 602 ; N uni10DE ; G 1162 -U 4319 ; WX 602 ; N uni10DF ; G 1163 -U 4320 ; WX 602 ; N uni10E0 ; G 1164 -U 4321 ; WX 602 ; N uni10E1 ; G 1165 -U 4322 ; WX 602 ; N uni10E2 ; G 1166 -U 4323 ; WX 602 ; N uni10E3 ; G 1167 -U 4324 ; WX 602 ; N uni10E4 ; G 1168 -U 4325 ; WX 602 ; N uni10E5 ; G 1169 -U 4326 ; WX 602 ; N uni10E6 ; G 1170 -U 4327 ; WX 602 ; N uni10E7 ; G 1171 -U 4328 ; WX 602 ; N uni10E8 ; G 1172 -U 4329 ; WX 602 ; N uni10E9 ; G 1173 -U 4330 ; WX 602 ; N uni10EA ; G 1174 -U 4331 ; WX 602 ; N uni10EB ; G 1175 -U 4332 ; WX 602 ; N uni10EC ; G 1176 -U 4333 ; WX 602 ; N uni10ED ; G 1177 -U 4334 ; WX 602 ; N uni10EE ; G 1178 -U 4335 ; WX 602 ; N uni10EF ; G 1179 -U 4336 ; WX 602 ; N uni10F0 ; G 1180 -U 4337 ; WX 602 ; N uni10F1 ; G 1181 -U 4338 ; WX 602 ; N uni10F2 ; G 1182 -U 4339 ; WX 602 ; N uni10F3 ; G 1183 -U 4340 ; WX 602 ; N uni10F4 ; G 1184 -U 4341 ; WX 602 ; N uni10F5 ; G 1185 -U 4342 ; WX 602 ; N uni10F6 ; G 1186 -U 4343 ; WX 602 ; N uni10F7 ; G 1187 -U 4344 ; WX 602 ; N uni10F8 ; G 1188 -U 4345 ; WX 602 ; N uni10F9 ; G 1189 -U 4346 ; WX 602 ; N uni10FA ; G 1190 -U 4347 ; WX 602 ; N uni10FB ; G 1191 -U 4348 ; WX 602 ; N uni10FC ; G 1192 -U 7426 ; WX 602 ; N uni1D02 ; G 1193 -U 7432 ; WX 602 ; N uni1D08 ; G 1194 -U 7433 ; WX 602 ; N uni1D09 ; G 1195 -U 7444 ; WX 602 ; N uni1D14 ; G 1196 -U 7446 ; WX 602 ; N uni1D16 ; G 1197 -U 7447 ; WX 602 ; N uni1D17 ; G 1198 -U 7453 ; WX 602 ; N uni1D1D ; G 1199 -U 7454 ; WX 602 ; N uni1D1E ; G 1200 -U 7455 ; WX 602 ; N uni1D1F ; G 1201 -U 7468 ; WX 602 ; N uni1D2C ; G 1202 -U 7469 ; WX 602 ; N uni1D2D ; G 1203 -U 7470 ; WX 602 ; N uni1D2E ; G 1204 -U 7472 ; WX 602 ; N uni1D30 ; G 1205 -U 7473 ; WX 602 ; N uni1D31 ; G 1206 -U 7474 ; WX 602 ; N uni1D32 ; G 1207 -U 7475 ; WX 602 ; N uni1D33 ; G 1208 -U 7476 ; WX 602 ; N uni1D34 ; G 1209 -U 7477 ; WX 602 ; N uni1D35 ; G 1210 -U 7478 ; WX 602 ; N uni1D36 ; G 1211 -U 7479 ; WX 602 ; N uni1D37 ; G 1212 -U 7480 ; WX 602 ; N uni1D38 ; G 1213 -U 7481 ; WX 602 ; N uni1D39 ; G 1214 -U 7482 ; WX 602 ; N uni1D3A ; G 1215 -U 7483 ; WX 602 ; N uni1D3B ; G 1216 -U 7484 ; WX 602 ; N uni1D3C ; G 1217 -U 7486 ; WX 602 ; N uni1D3E ; G 1218 -U 7487 ; WX 602 ; N uni1D3F ; G 1219 -U 7488 ; WX 602 ; N uni1D40 ; G 1220 -U 7489 ; WX 602 ; N uni1D41 ; G 1221 -U 7490 ; WX 602 ; N uni1D42 ; G 1222 -U 7491 ; WX 602 ; N uni1D43 ; G 1223 -U 7492 ; WX 602 ; N uni1D44 ; G 1224 -U 7493 ; WX 602 ; N uni1D45 ; G 1225 -U 7494 ; WX 602 ; N uni1D46 ; G 1226 -U 7495 ; WX 602 ; N uni1D47 ; G 1227 -U 7496 ; WX 602 ; N uni1D48 ; G 1228 -U 7497 ; WX 602 ; N uni1D49 ; G 1229 -U 7498 ; WX 602 ; N uni1D4A ; G 1230 -U 7499 ; WX 602 ; N uni1D4B ; G 1231 -U 7500 ; WX 602 ; N uni1D4C ; G 1232 -U 7501 ; WX 602 ; N uni1D4D ; G 1233 -U 7502 ; WX 602 ; N uni1D4E ; G 1234 -U 7503 ; WX 602 ; N uni1D4F ; G 1235 -U 7504 ; WX 602 ; N uni1D50 ; G 1236 -U 7505 ; WX 602 ; N uni1D51 ; G 1237 -U 7506 ; WX 602 ; N uni1D52 ; G 1238 -U 7507 ; WX 602 ; N uni1D53 ; G 1239 -U 7508 ; WX 602 ; N uni1D54 ; G 1240 -U 7509 ; WX 602 ; N uni1D55 ; G 1241 -U 7510 ; WX 602 ; N uni1D56 ; G 1242 -U 7511 ; WX 602 ; N uni1D57 ; G 1243 -U 7512 ; WX 602 ; N uni1D58 ; G 1244 -U 7513 ; WX 602 ; N uni1D59 ; G 1245 -U 7514 ; WX 602 ; N uni1D5A ; G 1246 -U 7515 ; WX 602 ; N uni1D5B ; G 1247 -U 7522 ; WX 602 ; N uni1D62 ; G 1248 -U 7523 ; WX 602 ; N uni1D63 ; G 1249 -U 7524 ; WX 602 ; N uni1D64 ; G 1250 -U 7525 ; WX 602 ; N uni1D65 ; G 1251 -U 7543 ; WX 602 ; N uni1D77 ; G 1252 -U 7544 ; WX 602 ; N uni1D78 ; G 1253 -U 7547 ; WX 602 ; N uni1D7B ; G 1254 -U 7557 ; WX 602 ; N uni1D85 ; G 1255 -U 7579 ; WX 602 ; N uni1D9B ; G 1256 -U 7580 ; WX 602 ; N uni1D9C ; G 1257 -U 7581 ; WX 602 ; N uni1D9D ; G 1258 -U 7582 ; WX 602 ; N uni1D9E ; G 1259 -U 7583 ; WX 602 ; N uni1D9F ; G 1260 -U 7584 ; WX 602 ; N uni1DA0 ; G 1261 -U 7585 ; WX 602 ; N uni1DA1 ; G 1262 -U 7586 ; WX 602 ; N uni1DA2 ; G 1263 -U 7587 ; WX 602 ; N uni1DA3 ; G 1264 -U 7588 ; WX 602 ; N uni1DA4 ; G 1265 -U 7589 ; WX 602 ; N uni1DA5 ; G 1266 -U 7590 ; WX 602 ; N uni1DA6 ; G 1267 -U 7591 ; WX 602 ; N uni1DA7 ; G 1268 -U 7592 ; WX 602 ; N uni1DA8 ; G 1269 -U 7593 ; WX 602 ; N uni1DA9 ; G 1270 -U 7594 ; WX 602 ; N uni1DAA ; G 1271 -U 7595 ; WX 602 ; N uni1DAB ; G 1272 -U 7596 ; WX 602 ; N uni1DAC ; G 1273 -U 7597 ; WX 602 ; N uni1DAD ; G 1274 -U 7598 ; WX 602 ; N uni1DAE ; G 1275 -U 7599 ; WX 602 ; N uni1DAF ; G 1276 -U 7600 ; WX 602 ; N uni1DB0 ; G 1277 -U 7601 ; WX 602 ; N uni1DB1 ; G 1278 -U 7602 ; WX 602 ; N uni1DB2 ; G 1279 -U 7603 ; WX 602 ; N uni1DB3 ; G 1280 -U 7604 ; WX 602 ; N uni1DB4 ; G 1281 -U 7605 ; WX 602 ; N uni1DB5 ; G 1282 -U 7606 ; WX 602 ; N uni1DB6 ; G 1283 -U 7607 ; WX 602 ; N uni1DB7 ; G 1284 -U 7609 ; WX 602 ; N uni1DB9 ; G 1285 -U 7610 ; WX 602 ; N uni1DBA ; G 1286 -U 7611 ; WX 602 ; N uni1DBB ; G 1287 -U 7612 ; WX 602 ; N uni1DBC ; G 1288 -U 7613 ; WX 602 ; N uni1DBD ; G 1289 -U 7614 ; WX 602 ; N uni1DBE ; G 1290 -U 7615 ; WX 602 ; N uni1DBF ; G 1291 -U 7680 ; WX 602 ; N uni1E00 ; G 1292 -U 7681 ; WX 602 ; N uni1E01 ; G 1293 -U 7682 ; WX 602 ; N uni1E02 ; G 1294 -U 7683 ; WX 602 ; N uni1E03 ; G 1295 -U 7684 ; WX 602 ; N uni1E04 ; G 1296 -U 7685 ; WX 602 ; N uni1E05 ; G 1297 -U 7686 ; WX 602 ; N uni1E06 ; G 1298 -U 7687 ; WX 602 ; N uni1E07 ; G 1299 -U 7688 ; WX 602 ; N uni1E08 ; G 1300 -U 7689 ; WX 602 ; N uni1E09 ; G 1301 -U 7690 ; WX 602 ; N uni1E0A ; G 1302 -U 7691 ; WX 602 ; N uni1E0B ; G 1303 -U 7692 ; WX 602 ; N uni1E0C ; G 1304 -U 7693 ; WX 602 ; N uni1E0D ; G 1305 -U 7694 ; WX 602 ; N uni1E0E ; G 1306 -U 7695 ; WX 602 ; N uni1E0F ; G 1307 -U 7696 ; WX 602 ; N uni1E10 ; G 1308 -U 7697 ; WX 602 ; N uni1E11 ; G 1309 -U 7698 ; WX 602 ; N uni1E12 ; G 1310 -U 7699 ; WX 602 ; N uni1E13 ; G 1311 -U 7704 ; WX 602 ; N uni1E18 ; G 1312 -U 7705 ; WX 602 ; N uni1E19 ; G 1313 -U 7706 ; WX 602 ; N uni1E1A ; G 1314 -U 7707 ; WX 602 ; N uni1E1B ; G 1315 -U 7708 ; WX 602 ; N uni1E1C ; G 1316 -U 7709 ; WX 602 ; N uni1E1D ; G 1317 -U 7710 ; WX 602 ; N uni1E1E ; G 1318 -U 7711 ; WX 602 ; N uni1E1F ; G 1319 -U 7712 ; WX 602 ; N uni1E20 ; G 1320 -U 7713 ; WX 602 ; N uni1E21 ; G 1321 -U 7714 ; WX 602 ; N uni1E22 ; G 1322 -U 7715 ; WX 602 ; N uni1E23 ; G 1323 -U 7716 ; WX 602 ; N uni1E24 ; G 1324 -U 7717 ; WX 602 ; N uni1E25 ; G 1325 -U 7718 ; WX 602 ; N uni1E26 ; G 1326 -U 7719 ; WX 602 ; N uni1E27 ; G 1327 -U 7720 ; WX 602 ; N uni1E28 ; G 1328 -U 7721 ; WX 602 ; N uni1E29 ; G 1329 -U 7722 ; WX 602 ; N uni1E2A ; G 1330 -U 7723 ; WX 602 ; N uni1E2B ; G 1331 -U 7724 ; WX 602 ; N uni1E2C ; G 1332 -U 7725 ; WX 602 ; N uni1E2D ; G 1333 -U 7728 ; WX 602 ; N uni1E30 ; G 1334 -U 7729 ; WX 602 ; N uni1E31 ; G 1335 -U 7730 ; WX 602 ; N uni1E32 ; G 1336 -U 7731 ; WX 602 ; N uni1E33 ; G 1337 -U 7732 ; WX 602 ; N uni1E34 ; G 1338 -U 7733 ; WX 602 ; N uni1E35 ; G 1339 -U 7734 ; WX 602 ; N uni1E36 ; G 1340 -U 7735 ; WX 602 ; N uni1E37 ; G 1341 -U 7736 ; WX 602 ; N uni1E38 ; G 1342 -U 7737 ; WX 602 ; N uni1E39 ; G 1343 -U 7738 ; WX 602 ; N uni1E3A ; G 1344 -U 7739 ; WX 602 ; N uni1E3B ; G 1345 -U 7740 ; WX 602 ; N uni1E3C ; G 1346 -U 7741 ; WX 602 ; N uni1E3D ; G 1347 -U 7742 ; WX 602 ; N uni1E3E ; G 1348 -U 7743 ; WX 602 ; N uni1E3F ; G 1349 -U 7744 ; WX 602 ; N uni1E40 ; G 1350 -U 7745 ; WX 602 ; N uni1E41 ; G 1351 -U 7746 ; WX 602 ; N uni1E42 ; G 1352 -U 7747 ; WX 602 ; N uni1E43 ; G 1353 -U 7748 ; WX 602 ; N uni1E44 ; G 1354 -U 7749 ; WX 602 ; N uni1E45 ; G 1355 -U 7750 ; WX 602 ; N uni1E46 ; G 1356 -U 7751 ; WX 602 ; N uni1E47 ; G 1357 -U 7752 ; WX 602 ; N uni1E48 ; G 1358 -U 7753 ; WX 602 ; N uni1E49 ; G 1359 -U 7754 ; WX 602 ; N uni1E4A ; G 1360 -U 7755 ; WX 602 ; N uni1E4B ; G 1361 -U 7756 ; WX 602 ; N uni1E4C ; G 1362 -U 7757 ; WX 602 ; N uni1E4D ; G 1363 -U 7764 ; WX 602 ; N uni1E54 ; G 1364 -U 7765 ; WX 602 ; N uni1E55 ; G 1365 -U 7766 ; WX 602 ; N uni1E56 ; G 1366 -U 7767 ; WX 602 ; N uni1E57 ; G 1367 -U 7768 ; WX 602 ; N uni1E58 ; G 1368 -U 7769 ; WX 602 ; N uni1E59 ; G 1369 -U 7770 ; WX 602 ; N uni1E5A ; G 1370 -U 7771 ; WX 602 ; N uni1E5B ; G 1371 -U 7772 ; WX 602 ; N uni1E5C ; G 1372 -U 7773 ; WX 602 ; N uni1E5D ; G 1373 -U 7774 ; WX 602 ; N uni1E5E ; G 1374 -U 7775 ; WX 602 ; N uni1E5F ; G 1375 -U 7776 ; WX 602 ; N uni1E60 ; G 1376 -U 7777 ; WX 602 ; N uni1E61 ; G 1377 -U 7778 ; WX 602 ; N uni1E62 ; G 1378 -U 7779 ; WX 602 ; N uni1E63 ; G 1379 -U 7784 ; WX 602 ; N uni1E68 ; G 1380 -U 7785 ; WX 602 ; N uni1E69 ; G 1381 -U 7786 ; WX 602 ; N uni1E6A ; G 1382 -U 7787 ; WX 602 ; N uni1E6B ; G 1383 -U 7788 ; WX 602 ; N uni1E6C ; G 1384 -U 7789 ; WX 602 ; N uni1E6D ; G 1385 -U 7790 ; WX 602 ; N uni1E6E ; G 1386 -U 7791 ; WX 602 ; N uni1E6F ; G 1387 -U 7792 ; WX 602 ; N uni1E70 ; G 1388 -U 7793 ; WX 602 ; N uni1E71 ; G 1389 -U 7794 ; WX 602 ; N uni1E72 ; G 1390 -U 7795 ; WX 602 ; N uni1E73 ; G 1391 -U 7796 ; WX 602 ; N uni1E74 ; G 1392 -U 7797 ; WX 602 ; N uni1E75 ; G 1393 -U 7798 ; WX 602 ; N uni1E76 ; G 1394 -U 7799 ; WX 602 ; N uni1E77 ; G 1395 -U 7800 ; WX 602 ; N uni1E78 ; G 1396 -U 7801 ; WX 602 ; N uni1E79 ; G 1397 -U 7804 ; WX 602 ; N uni1E7C ; G 1398 -U 7805 ; WX 602 ; N uni1E7D ; G 1399 -U 7806 ; WX 602 ; N uni1E7E ; G 1400 -U 7807 ; WX 602 ; N uni1E7F ; G 1401 -U 7808 ; WX 602 ; N Wgrave ; G 1402 -U 7809 ; WX 602 ; N wgrave ; G 1403 -U 7810 ; WX 602 ; N Wacute ; G 1404 -U 7811 ; WX 602 ; N wacute ; G 1405 -U 7812 ; WX 602 ; N Wdieresis ; G 1406 -U 7813 ; WX 602 ; N wdieresis ; G 1407 -U 7814 ; WX 602 ; N uni1E86 ; G 1408 -U 7815 ; WX 602 ; N uni1E87 ; G 1409 -U 7816 ; WX 602 ; N uni1E88 ; G 1410 -U 7817 ; WX 602 ; N uni1E89 ; G 1411 -U 7818 ; WX 602 ; N uni1E8A ; G 1412 -U 7819 ; WX 602 ; N uni1E8B ; G 1413 -U 7820 ; WX 602 ; N uni1E8C ; G 1414 -U 7821 ; WX 602 ; N uni1E8D ; G 1415 -U 7822 ; WX 602 ; N uni1E8E ; G 1416 -U 7823 ; WX 602 ; N uni1E8F ; G 1417 -U 7824 ; WX 602 ; N uni1E90 ; G 1418 -U 7825 ; WX 602 ; N uni1E91 ; G 1419 -U 7826 ; WX 602 ; N uni1E92 ; G 1420 -U 7827 ; WX 602 ; N uni1E93 ; G 1421 -U 7828 ; WX 602 ; N uni1E94 ; G 1422 -U 7829 ; WX 602 ; N uni1E95 ; G 1423 -U 7830 ; WX 602 ; N uni1E96 ; G 1424 -U 7831 ; WX 602 ; N uni1E97 ; G 1425 -U 7832 ; WX 602 ; N uni1E98 ; G 1426 -U 7833 ; WX 602 ; N uni1E99 ; G 1427 -U 7835 ; WX 602 ; N uni1E9B ; G 1428 -U 7839 ; WX 602 ; N uni1E9F ; G 1429 -U 7840 ; WX 602 ; N uni1EA0 ; G 1430 -U 7841 ; WX 602 ; N uni1EA1 ; G 1431 -U 7852 ; WX 602 ; N uni1EAC ; G 1432 -U 7853 ; WX 602 ; N uni1EAD ; G 1433 -U 7856 ; WX 602 ; N uni1EB0 ; G 1434 -U 7857 ; WX 602 ; N uni1EB1 ; G 1435 -U 7862 ; WX 602 ; N uni1EB6 ; G 1436 -U 7863 ; WX 602 ; N uni1EB7 ; G 1437 -U 7864 ; WX 602 ; N uni1EB8 ; G 1438 -U 7865 ; WX 602 ; N uni1EB9 ; G 1439 -U 7868 ; WX 602 ; N uni1EBC ; G 1440 -U 7869 ; WX 602 ; N uni1EBD ; G 1441 -U 7878 ; WX 602 ; N uni1EC6 ; G 1442 -U 7879 ; WX 602 ; N uni1EC7 ; G 1443 -U 7882 ; WX 602 ; N uni1ECA ; G 1444 -U 7883 ; WX 602 ; N uni1ECB ; G 1445 -U 7884 ; WX 602 ; N uni1ECC ; G 1446 -U 7885 ; WX 602 ; N uni1ECD ; G 1447 -U 7896 ; WX 602 ; N uni1ED8 ; G 1448 -U 7897 ; WX 602 ; N uni1ED9 ; G 1449 -U 7898 ; WX 602 ; N uni1EDA ; G 1450 -U 7899 ; WX 602 ; N uni1EDB ; G 1451 -U 7900 ; WX 602 ; N uni1EDC ; G 1452 -U 7901 ; WX 602 ; N uni1EDD ; G 1453 -U 7904 ; WX 602 ; N uni1EE0 ; G 1454 -U 7905 ; WX 602 ; N uni1EE1 ; G 1455 -U 7906 ; WX 602 ; N uni1EE2 ; G 1456 -U 7907 ; WX 602 ; N uni1EE3 ; G 1457 -U 7908 ; WX 602 ; N uni1EE4 ; G 1458 -U 7909 ; WX 602 ; N uni1EE5 ; G 1459 -U 7912 ; WX 602 ; N uni1EE8 ; G 1460 -U 7913 ; WX 602 ; N uni1EE9 ; G 1461 -U 7914 ; WX 602 ; N uni1EEA ; G 1462 -U 7915 ; WX 602 ; N uni1EEB ; G 1463 -U 7918 ; WX 602 ; N uni1EEE ; G 1464 -U 7919 ; WX 602 ; N uni1EEF ; G 1465 -U 7920 ; WX 602 ; N uni1EF0 ; G 1466 -U 7921 ; WX 602 ; N uni1EF1 ; G 1467 -U 7922 ; WX 602 ; N Ygrave ; G 1468 -U 7923 ; WX 602 ; N ygrave ; G 1469 -U 7924 ; WX 602 ; N uni1EF4 ; G 1470 -U 7925 ; WX 602 ; N uni1EF5 ; G 1471 -U 7928 ; WX 602 ; N uni1EF8 ; G 1472 -U 7929 ; WX 602 ; N uni1EF9 ; G 1473 -U 7936 ; WX 602 ; N uni1F00 ; G 1474 -U 7937 ; WX 602 ; N uni1F01 ; G 1475 -U 7938 ; WX 602 ; N uni1F02 ; G 1476 -U 7939 ; WX 602 ; N uni1F03 ; G 1477 -U 7940 ; WX 602 ; N uni1F04 ; G 1478 -U 7941 ; WX 602 ; N uni1F05 ; G 1479 -U 7942 ; WX 602 ; N uni1F06 ; G 1480 -U 7943 ; WX 602 ; N uni1F07 ; G 1481 -U 7944 ; WX 602 ; N uni1F08 ; G 1482 -U 7945 ; WX 602 ; N uni1F09 ; G 1483 -U 7946 ; WX 602 ; N uni1F0A ; G 1484 -U 7947 ; WX 602 ; N uni1F0B ; G 1485 -U 7948 ; WX 602 ; N uni1F0C ; G 1486 -U 7949 ; WX 602 ; N uni1F0D ; G 1487 -U 7950 ; WX 602 ; N uni1F0E ; G 1488 -U 7951 ; WX 602 ; N uni1F0F ; G 1489 -U 7952 ; WX 602 ; N uni1F10 ; G 1490 -U 7953 ; WX 602 ; N uni1F11 ; G 1491 -U 7954 ; WX 602 ; N uni1F12 ; G 1492 -U 7955 ; WX 602 ; N uni1F13 ; G 1493 -U 7956 ; WX 602 ; N uni1F14 ; G 1494 -U 7957 ; WX 602 ; N uni1F15 ; G 1495 -U 7960 ; WX 602 ; N uni1F18 ; G 1496 -U 7961 ; WX 602 ; N uni1F19 ; G 1497 -U 7962 ; WX 602 ; N uni1F1A ; G 1498 -U 7963 ; WX 602 ; N uni1F1B ; G 1499 -U 7964 ; WX 602 ; N uni1F1C ; G 1500 -U 7965 ; WX 602 ; N uni1F1D ; G 1501 -U 7968 ; WX 602 ; N uni1F20 ; G 1502 -U 7969 ; WX 602 ; N uni1F21 ; G 1503 -U 7970 ; WX 602 ; N uni1F22 ; G 1504 -U 7971 ; WX 602 ; N uni1F23 ; G 1505 -U 7972 ; WX 602 ; N uni1F24 ; G 1506 -U 7973 ; WX 602 ; N uni1F25 ; G 1507 -U 7974 ; WX 602 ; N uni1F26 ; G 1508 -U 7975 ; WX 602 ; N uni1F27 ; G 1509 -U 7976 ; WX 602 ; N uni1F28 ; G 1510 -U 7977 ; WX 602 ; N uni1F29 ; G 1511 -U 7978 ; WX 602 ; N uni1F2A ; G 1512 -U 7979 ; WX 602 ; N uni1F2B ; G 1513 -U 7980 ; WX 602 ; N uni1F2C ; G 1514 -U 7981 ; WX 602 ; N uni1F2D ; G 1515 -U 7982 ; WX 602 ; N uni1F2E ; G 1516 -U 7983 ; WX 602 ; N uni1F2F ; G 1517 -U 7984 ; WX 602 ; N uni1F30 ; G 1518 -U 7985 ; WX 602 ; N uni1F31 ; G 1519 -U 7986 ; WX 602 ; N uni1F32 ; G 1520 -U 7987 ; WX 602 ; N uni1F33 ; G 1521 -U 7988 ; WX 602 ; N uni1F34 ; G 1522 -U 7989 ; WX 602 ; N uni1F35 ; G 1523 -U 7990 ; WX 602 ; N uni1F36 ; G 1524 -U 7991 ; WX 602 ; N uni1F37 ; G 1525 -U 7992 ; WX 602 ; N uni1F38 ; G 1526 -U 7993 ; WX 602 ; N uni1F39 ; G 1527 -U 7994 ; WX 602 ; N uni1F3A ; G 1528 -U 7995 ; WX 602 ; N uni1F3B ; G 1529 -U 7996 ; WX 602 ; N uni1F3C ; G 1530 -U 7997 ; WX 602 ; N uni1F3D ; G 1531 -U 7998 ; WX 602 ; N uni1F3E ; G 1532 -U 7999 ; WX 602 ; N uni1F3F ; G 1533 -U 8000 ; WX 602 ; N uni1F40 ; G 1534 -U 8001 ; WX 602 ; N uni1F41 ; G 1535 -U 8002 ; WX 602 ; N uni1F42 ; G 1536 -U 8003 ; WX 602 ; N uni1F43 ; G 1537 -U 8004 ; WX 602 ; N uni1F44 ; G 1538 -U 8005 ; WX 602 ; N uni1F45 ; G 1539 -U 8008 ; WX 602 ; N uni1F48 ; G 1540 -U 8009 ; WX 602 ; N uni1F49 ; G 1541 -U 8010 ; WX 602 ; N uni1F4A ; G 1542 -U 8011 ; WX 602 ; N uni1F4B ; G 1543 -U 8012 ; WX 602 ; N uni1F4C ; G 1544 -U 8013 ; WX 602 ; N uni1F4D ; G 1545 -U 8016 ; WX 602 ; N uni1F50 ; G 1546 -U 8017 ; WX 602 ; N uni1F51 ; G 1547 -U 8018 ; WX 602 ; N uni1F52 ; G 1548 -U 8019 ; WX 602 ; N uni1F53 ; G 1549 -U 8020 ; WX 602 ; N uni1F54 ; G 1550 -U 8021 ; WX 602 ; N uni1F55 ; G 1551 -U 8022 ; WX 602 ; N uni1F56 ; G 1552 -U 8023 ; WX 602 ; N uni1F57 ; G 1553 -U 8025 ; WX 602 ; N uni1F59 ; G 1554 -U 8027 ; WX 602 ; N uni1F5B ; G 1555 -U 8029 ; WX 602 ; N uni1F5D ; G 1556 -U 8031 ; WX 602 ; N uni1F5F ; G 1557 -U 8032 ; WX 602 ; N uni1F60 ; G 1558 -U 8033 ; WX 602 ; N uni1F61 ; G 1559 -U 8034 ; WX 602 ; N uni1F62 ; G 1560 -U 8035 ; WX 602 ; N uni1F63 ; G 1561 -U 8036 ; WX 602 ; N uni1F64 ; G 1562 -U 8037 ; WX 602 ; N uni1F65 ; G 1563 -U 8038 ; WX 602 ; N uni1F66 ; G 1564 -U 8039 ; WX 602 ; N uni1F67 ; G 1565 -U 8040 ; WX 602 ; N uni1F68 ; G 1566 -U 8041 ; WX 602 ; N uni1F69 ; G 1567 -U 8042 ; WX 602 ; N uni1F6A ; G 1568 -U 8043 ; WX 602 ; N uni1F6B ; G 1569 -U 8044 ; WX 602 ; N uni1F6C ; G 1570 -U 8045 ; WX 602 ; N uni1F6D ; G 1571 -U 8046 ; WX 602 ; N uni1F6E ; G 1572 -U 8047 ; WX 602 ; N uni1F6F ; G 1573 -U 8048 ; WX 602 ; N uni1F70 ; G 1574 -U 8049 ; WX 602 ; N uni1F71 ; G 1575 -U 8050 ; WX 602 ; N uni1F72 ; G 1576 -U 8051 ; WX 602 ; N uni1F73 ; G 1577 -U 8052 ; WX 602 ; N uni1F74 ; G 1578 -U 8053 ; WX 602 ; N uni1F75 ; G 1579 -U 8054 ; WX 602 ; N uni1F76 ; G 1580 -U 8055 ; WX 602 ; N uni1F77 ; G 1581 -U 8056 ; WX 602 ; N uni1F78 ; G 1582 -U 8057 ; WX 602 ; N uni1F79 ; G 1583 -U 8058 ; WX 602 ; N uni1F7A ; G 1584 -U 8059 ; WX 602 ; N uni1F7B ; G 1585 -U 8060 ; WX 602 ; N uni1F7C ; G 1586 -U 8061 ; WX 602 ; N uni1F7D ; G 1587 -U 8064 ; WX 602 ; N uni1F80 ; G 1588 -U 8065 ; WX 602 ; N uni1F81 ; G 1589 -U 8066 ; WX 602 ; N uni1F82 ; G 1590 -U 8067 ; WX 602 ; N uni1F83 ; G 1591 -U 8068 ; WX 602 ; N uni1F84 ; G 1592 -U 8069 ; WX 602 ; N uni1F85 ; G 1593 -U 8070 ; WX 602 ; N uni1F86 ; G 1594 -U 8071 ; WX 602 ; N uni1F87 ; G 1595 -U 8072 ; WX 602 ; N uni1F88 ; G 1596 -U 8073 ; WX 602 ; N uni1F89 ; G 1597 -U 8074 ; WX 602 ; N uni1F8A ; G 1598 -U 8075 ; WX 602 ; N uni1F8B ; G 1599 -U 8076 ; WX 602 ; N uni1F8C ; G 1600 -U 8077 ; WX 602 ; N uni1F8D ; G 1601 -U 8078 ; WX 602 ; N uni1F8E ; G 1602 -U 8079 ; WX 602 ; N uni1F8F ; G 1603 -U 8080 ; WX 602 ; N uni1F90 ; G 1604 -U 8081 ; WX 602 ; N uni1F91 ; G 1605 -U 8082 ; WX 602 ; N uni1F92 ; G 1606 -U 8083 ; WX 602 ; N uni1F93 ; G 1607 -U 8084 ; WX 602 ; N uni1F94 ; G 1608 -U 8085 ; WX 602 ; N uni1F95 ; G 1609 -U 8086 ; WX 602 ; N uni1F96 ; G 1610 -U 8087 ; WX 602 ; N uni1F97 ; G 1611 -U 8088 ; WX 602 ; N uni1F98 ; G 1612 -U 8089 ; WX 602 ; N uni1F99 ; G 1613 -U 8090 ; WX 602 ; N uni1F9A ; G 1614 -U 8091 ; WX 602 ; N uni1F9B ; G 1615 -U 8092 ; WX 602 ; N uni1F9C ; G 1616 -U 8093 ; WX 602 ; N uni1F9D ; G 1617 -U 8094 ; WX 602 ; N uni1F9E ; G 1618 -U 8095 ; WX 602 ; N uni1F9F ; G 1619 -U 8096 ; WX 602 ; N uni1FA0 ; G 1620 -U 8097 ; WX 602 ; N uni1FA1 ; G 1621 -U 8098 ; WX 602 ; N uni1FA2 ; G 1622 -U 8099 ; WX 602 ; N uni1FA3 ; G 1623 -U 8100 ; WX 602 ; N uni1FA4 ; G 1624 -U 8101 ; WX 602 ; N uni1FA5 ; G 1625 -U 8102 ; WX 602 ; N uni1FA6 ; G 1626 -U 8103 ; WX 602 ; N uni1FA7 ; G 1627 -U 8104 ; WX 602 ; N uni1FA8 ; G 1628 -U 8105 ; WX 602 ; N uni1FA9 ; G 1629 -U 8106 ; WX 602 ; N uni1FAA ; G 1630 -U 8107 ; WX 602 ; N uni1FAB ; G 1631 -U 8108 ; WX 602 ; N uni1FAC ; G 1632 -U 8109 ; WX 602 ; N uni1FAD ; G 1633 -U 8110 ; WX 602 ; N uni1FAE ; G 1634 -U 8111 ; WX 602 ; N uni1FAF ; G 1635 -U 8112 ; WX 602 ; N uni1FB0 ; G 1636 -U 8113 ; WX 602 ; N uni1FB1 ; G 1637 -U 8114 ; WX 602 ; N uni1FB2 ; G 1638 -U 8115 ; WX 602 ; N uni1FB3 ; G 1639 -U 8116 ; WX 602 ; N uni1FB4 ; G 1640 -U 8118 ; WX 602 ; N uni1FB6 ; G 1641 -U 8119 ; WX 602 ; N uni1FB7 ; G 1642 -U 8120 ; WX 602 ; N uni1FB8 ; G 1643 -U 8121 ; WX 602 ; N uni1FB9 ; G 1644 -U 8122 ; WX 602 ; N uni1FBA ; G 1645 -U 8123 ; WX 602 ; N uni1FBB ; G 1646 -U 8124 ; WX 602 ; N uni1FBC ; G 1647 -U 8125 ; WX 602 ; N uni1FBD ; G 1648 -U 8126 ; WX 602 ; N uni1FBE ; G 1649 -U 8127 ; WX 602 ; N uni1FBF ; G 1650 -U 8128 ; WX 602 ; N uni1FC0 ; G 1651 -U 8129 ; WX 602 ; N uni1FC1 ; G 1652 -U 8130 ; WX 602 ; N uni1FC2 ; G 1653 -U 8131 ; WX 602 ; N uni1FC3 ; G 1654 -U 8132 ; WX 602 ; N uni1FC4 ; G 1655 -U 8134 ; WX 602 ; N uni1FC6 ; G 1656 -U 8135 ; WX 602 ; N uni1FC7 ; G 1657 -U 8136 ; WX 602 ; N uni1FC8 ; G 1658 -U 8137 ; WX 602 ; N uni1FC9 ; G 1659 -U 8138 ; WX 602 ; N uni1FCA ; G 1660 -U 8139 ; WX 602 ; N uni1FCB ; G 1661 -U 8140 ; WX 602 ; N uni1FCC ; G 1662 -U 8141 ; WX 602 ; N uni1FCD ; G 1663 -U 8142 ; WX 602 ; N uni1FCE ; G 1664 -U 8143 ; WX 602 ; N uni1FCF ; G 1665 -U 8144 ; WX 602 ; N uni1FD0 ; G 1666 -U 8145 ; WX 602 ; N uni1FD1 ; G 1667 -U 8146 ; WX 602 ; N uni1FD2 ; G 1668 -U 8147 ; WX 602 ; N uni1FD3 ; G 1669 -U 8150 ; WX 602 ; N uni1FD6 ; G 1670 -U 8151 ; WX 602 ; N uni1FD7 ; G 1671 -U 8152 ; WX 602 ; N uni1FD8 ; G 1672 -U 8153 ; WX 602 ; N uni1FD9 ; G 1673 -U 8154 ; WX 602 ; N uni1FDA ; G 1674 -U 8155 ; WX 602 ; N uni1FDB ; G 1675 -U 8157 ; WX 602 ; N uni1FDD ; G 1676 -U 8158 ; WX 602 ; N uni1FDE ; G 1677 -U 8159 ; WX 602 ; N uni1FDF ; G 1678 -U 8160 ; WX 602 ; N uni1FE0 ; G 1679 -U 8161 ; WX 602 ; N uni1FE1 ; G 1680 -U 8162 ; WX 602 ; N uni1FE2 ; G 1681 -U 8163 ; WX 602 ; N uni1FE3 ; G 1682 -U 8164 ; WX 602 ; N uni1FE4 ; G 1683 -U 8165 ; WX 602 ; N uni1FE5 ; G 1684 -U 8166 ; WX 602 ; N uni1FE6 ; G 1685 -U 8167 ; WX 602 ; N uni1FE7 ; G 1686 -U 8168 ; WX 602 ; N uni1FE8 ; G 1687 -U 8169 ; WX 602 ; N uni1FE9 ; G 1688 -U 8170 ; WX 602 ; N uni1FEA ; G 1689 -U 8171 ; WX 602 ; N uni1FEB ; G 1690 -U 8172 ; WX 602 ; N uni1FEC ; G 1691 -U 8173 ; WX 602 ; N uni1FED ; G 1692 -U 8174 ; WX 602 ; N uni1FEE ; G 1693 -U 8175 ; WX 602 ; N uni1FEF ; G 1694 -U 8178 ; WX 602 ; N uni1FF2 ; G 1695 -U 8179 ; WX 602 ; N uni1FF3 ; G 1696 -U 8180 ; WX 602 ; N uni1FF4 ; G 1697 -U 8182 ; WX 602 ; N uni1FF6 ; G 1698 -U 8183 ; WX 602 ; N uni1FF7 ; G 1699 -U 8184 ; WX 602 ; N uni1FF8 ; G 1700 -U 8185 ; WX 602 ; N uni1FF9 ; G 1701 -U 8186 ; WX 602 ; N uni1FFA ; G 1702 -U 8187 ; WX 602 ; N uni1FFB ; G 1703 -U 8188 ; WX 602 ; N uni1FFC ; G 1704 -U 8189 ; WX 602 ; N uni1FFD ; G 1705 -U 8190 ; WX 602 ; N uni1FFE ; G 1706 -U 8192 ; WX 602 ; N uni2000 ; G 1707 -U 8193 ; WX 602 ; N uni2001 ; G 1708 -U 8194 ; WX 602 ; N uni2002 ; G 1709 -U 8195 ; WX 602 ; N uni2003 ; G 1710 -U 8196 ; WX 602 ; N uni2004 ; G 1711 -U 8197 ; WX 602 ; N uni2005 ; G 1712 -U 8198 ; WX 602 ; N uni2006 ; G 1713 -U 8199 ; WX 602 ; N uni2007 ; G 1714 -U 8200 ; WX 602 ; N uni2008 ; G 1715 -U 8201 ; WX 602 ; N uni2009 ; G 1716 -U 8202 ; WX 602 ; N uni200A ; G 1717 -U 8208 ; WX 602 ; N uni2010 ; G 1718 -U 8209 ; WX 602 ; N uni2011 ; G 1719 -U 8210 ; WX 602 ; N figuredash ; G 1720 -U 8211 ; WX 602 ; N endash ; G 1721 -U 8212 ; WX 602 ; N emdash ; G 1722 -U 8213 ; WX 602 ; N uni2015 ; G 1723 -U 8214 ; WX 602 ; N uni2016 ; G 1724 -U 8215 ; WX 602 ; N underscoredbl ; G 1725 -U 8216 ; WX 602 ; N quoteleft ; G 1726 -U 8217 ; WX 602 ; N quoteright ; G 1727 -U 8218 ; WX 602 ; N quotesinglbase ; G 1728 -U 8219 ; WX 602 ; N quotereversed ; G 1729 -U 8220 ; WX 602 ; N quotedblleft ; G 1730 -U 8221 ; WX 602 ; N quotedblright ; G 1731 -U 8222 ; WX 602 ; N quotedblbase ; G 1732 -U 8223 ; WX 602 ; N uni201F ; G 1733 -U 8224 ; WX 602 ; N dagger ; G 1734 -U 8225 ; WX 602 ; N daggerdbl ; G 1735 -U 8226 ; WX 602 ; N bullet ; G 1736 -U 8227 ; WX 602 ; N uni2023 ; G 1737 -U 8230 ; WX 602 ; N ellipsis ; G 1738 -U 8239 ; WX 602 ; N uni202F ; G 1739 -U 8240 ; WX 602 ; N perthousand ; G 1740 -U 8241 ; WX 602 ; N uni2031 ; G 1741 -U 8242 ; WX 602 ; N minute ; G 1742 -U 8243 ; WX 602 ; N second ; G 1743 -U 8244 ; WX 602 ; N uni2034 ; G 1744 -U 8245 ; WX 602 ; N uni2035 ; G 1745 -U 8246 ; WX 602 ; N uni2036 ; G 1746 -U 8247 ; WX 602 ; N uni2037 ; G 1747 -U 8249 ; WX 602 ; N guilsinglleft ; G 1748 -U 8250 ; WX 602 ; N guilsinglright ; G 1749 -U 8252 ; WX 602 ; N exclamdbl ; G 1750 -U 8253 ; WX 602 ; N uni203D ; G 1751 -U 8254 ; WX 602 ; N uni203E ; G 1752 -U 8255 ; WX 602 ; N uni203F ; G 1753 -U 8261 ; WX 602 ; N uni2045 ; G 1754 -U 8262 ; WX 602 ; N uni2046 ; G 1755 -U 8263 ; WX 602 ; N uni2047 ; G 1756 -U 8264 ; WX 602 ; N uni2048 ; G 1757 -U 8265 ; WX 602 ; N uni2049 ; G 1758 -U 8267 ; WX 602 ; N uni204B ; G 1759 -U 8287 ; WX 602 ; N uni205F ; G 1760 -U 8304 ; WX 602 ; N uni2070 ; G 1761 -U 8305 ; WX 602 ; N uni2071 ; G 1762 -U 8308 ; WX 602 ; N uni2074 ; G 1763 -U 8309 ; WX 602 ; N uni2075 ; G 1764 -U 8310 ; WX 602 ; N uni2076 ; G 1765 -U 8311 ; WX 602 ; N uni2077 ; G 1766 -U 8312 ; WX 602 ; N uni2078 ; G 1767 -U 8313 ; WX 602 ; N uni2079 ; G 1768 -U 8314 ; WX 602 ; N uni207A ; G 1769 -U 8315 ; WX 602 ; N uni207B ; G 1770 -U 8316 ; WX 602 ; N uni207C ; G 1771 -U 8317 ; WX 602 ; N uni207D ; G 1772 -U 8318 ; WX 602 ; N uni207E ; G 1773 -U 8319 ; WX 602 ; N uni207F ; G 1774 -U 8320 ; WX 602 ; N uni2080 ; G 1775 -U 8321 ; WX 602 ; N uni2081 ; G 1776 -U 8322 ; WX 602 ; N uni2082 ; G 1777 -U 8323 ; WX 602 ; N uni2083 ; G 1778 -U 8324 ; WX 602 ; N uni2084 ; G 1779 -U 8325 ; WX 602 ; N uni2085 ; G 1780 -U 8326 ; WX 602 ; N uni2086 ; G 1781 -U 8327 ; WX 602 ; N uni2087 ; G 1782 -U 8328 ; WX 602 ; N uni2088 ; G 1783 -U 8329 ; WX 602 ; N uni2089 ; G 1784 -U 8330 ; WX 602 ; N uni208A ; G 1785 -U 8331 ; WX 602 ; N uni208B ; G 1786 -U 8332 ; WX 602 ; N uni208C ; G 1787 -U 8333 ; WX 602 ; N uni208D ; G 1788 -U 8334 ; WX 602 ; N uni208E ; G 1789 -U 8336 ; WX 602 ; N uni2090 ; G 1790 -U 8337 ; WX 602 ; N uni2091 ; G 1791 -U 8338 ; WX 602 ; N uni2092 ; G 1792 -U 8339 ; WX 602 ; N uni2093 ; G 1793 -U 8340 ; WX 602 ; N uni2094 ; G 1794 -U 8341 ; WX 602 ; N uni2095 ; G 1795 -U 8342 ; WX 602 ; N uni2096 ; G 1796 -U 8343 ; WX 602 ; N uni2097 ; G 1797 -U 8344 ; WX 602 ; N uni2098 ; G 1798 -U 8345 ; WX 602 ; N uni2099 ; G 1799 -U 8346 ; WX 602 ; N uni209A ; G 1800 -U 8347 ; WX 602 ; N uni209B ; G 1801 -U 8348 ; WX 602 ; N uni209C ; G 1802 -U 8352 ; WX 602 ; N uni20A0 ; G 1803 -U 8353 ; WX 602 ; N colonmonetary ; G 1804 -U 8354 ; WX 602 ; N uni20A2 ; G 1805 -U 8355 ; WX 602 ; N franc ; G 1806 -U 8356 ; WX 602 ; N lira ; G 1807 -U 8357 ; WX 602 ; N uni20A5 ; G 1808 -U 8358 ; WX 602 ; N uni20A6 ; G 1809 -U 8359 ; WX 602 ; N peseta ; G 1810 -U 8360 ; WX 602 ; N uni20A8 ; G 1811 -U 8361 ; WX 602 ; N uni20A9 ; G 1812 -U 8362 ; WX 602 ; N uni20AA ; G 1813 -U 8363 ; WX 602 ; N dong ; G 1814 -U 8364 ; WX 602 ; N Euro ; G 1815 -U 8365 ; WX 602 ; N uni20AD ; G 1816 -U 8366 ; WX 602 ; N uni20AE ; G 1817 -U 8367 ; WX 602 ; N uni20AF ; G 1818 -U 8368 ; WX 602 ; N uni20B0 ; G 1819 -U 8369 ; WX 602 ; N uni20B1 ; G 1820 -U 8370 ; WX 602 ; N uni20B2 ; G 1821 -U 8371 ; WX 602 ; N uni20B3 ; G 1822 -U 8372 ; WX 602 ; N uni20B4 ; G 1823 -U 8373 ; WX 602 ; N uni20B5 ; G 1824 -U 8376 ; WX 602 ; N uni20B8 ; G 1825 -U 8377 ; WX 602 ; N uni20B9 ; G 1826 -U 8378 ; WX 602 ; N uni20BA ; G 1827 -U 8381 ; WX 602 ; N uni20BD ; G 1828 -U 8450 ; WX 602 ; N uni2102 ; G 1829 -U 8453 ; WX 602 ; N uni2105 ; G 1830 -U 8461 ; WX 602 ; N uni210D ; G 1831 -U 8462 ; WX 602 ; N uni210E ; G 1832 -U 8463 ; WX 602 ; N uni210F ; G 1833 -U 8469 ; WX 602 ; N uni2115 ; G 1834 -U 8470 ; WX 602 ; N uni2116 ; G 1835 -U 8471 ; WX 602 ; N uni2117 ; G 1836 -U 8473 ; WX 602 ; N uni2119 ; G 1837 -U 8474 ; WX 602 ; N uni211A ; G 1838 -U 8477 ; WX 602 ; N uni211D ; G 1839 -U 8482 ; WX 602 ; N trademark ; G 1840 -U 8484 ; WX 602 ; N uni2124 ; G 1841 -U 8486 ; WX 602 ; N uni2126 ; G 1842 -U 8490 ; WX 602 ; N uni212A ; G 1843 -U 8491 ; WX 602 ; N uni212B ; G 1844 -U 8494 ; WX 602 ; N estimated ; G 1845 -U 8520 ; WX 602 ; N uni2148 ; G 1846 -U 8528 ; WX 602 ; N uni2150 ; G 1847 -U 8529 ; WX 602 ; N uni2151 ; G 1848 -U 8531 ; WX 602 ; N onethird ; G 1849 -U 8532 ; WX 602 ; N twothirds ; G 1850 -U 8533 ; WX 602 ; N uni2155 ; G 1851 -U 8534 ; WX 602 ; N uni2156 ; G 1852 -U 8535 ; WX 602 ; N uni2157 ; G 1853 -U 8536 ; WX 602 ; N uni2158 ; G 1854 -U 8537 ; WX 602 ; N uni2159 ; G 1855 -U 8538 ; WX 602 ; N uni215A ; G 1856 -U 8539 ; WX 602 ; N oneeighth ; G 1857 -U 8540 ; WX 602 ; N threeeighths ; G 1858 -U 8541 ; WX 602 ; N fiveeighths ; G 1859 -U 8542 ; WX 602 ; N seveneighths ; G 1860 -U 8543 ; WX 602 ; N uni215F ; G 1861 -U 8585 ; WX 602 ; N uni2189 ; G 1862 -U 8592 ; WX 602 ; N arrowleft ; G 1863 -U 8593 ; WX 602 ; N arrowup ; G 1864 -U 8594 ; WX 602 ; N arrowright ; G 1865 -U 8595 ; WX 602 ; N arrowdown ; G 1866 -U 8596 ; WX 602 ; N arrowboth ; G 1867 -U 8597 ; WX 602 ; N arrowupdn ; G 1868 -U 8598 ; WX 602 ; N uni2196 ; G 1869 -U 8599 ; WX 602 ; N uni2197 ; G 1870 -U 8600 ; WX 602 ; N uni2198 ; G 1871 -U 8601 ; WX 602 ; N uni2199 ; G 1872 -U 8602 ; WX 602 ; N uni219A ; G 1873 -U 8603 ; WX 602 ; N uni219B ; G 1874 -U 8604 ; WX 602 ; N uni219C ; G 1875 -U 8605 ; WX 602 ; N uni219D ; G 1876 -U 8606 ; WX 602 ; N uni219E ; G 1877 -U 8607 ; WX 602 ; N uni219F ; G 1878 -U 8608 ; WX 602 ; N uni21A0 ; G 1879 -U 8609 ; WX 602 ; N uni21A1 ; G 1880 -U 8610 ; WX 602 ; N uni21A2 ; G 1881 -U 8611 ; WX 602 ; N uni21A3 ; G 1882 -U 8612 ; WX 602 ; N uni21A4 ; G 1883 -U 8613 ; WX 602 ; N uni21A5 ; G 1884 -U 8614 ; WX 602 ; N uni21A6 ; G 1885 -U 8615 ; WX 602 ; N uni21A7 ; G 1886 -U 8616 ; WX 602 ; N arrowupdnbse ; G 1887 -U 8617 ; WX 602 ; N uni21A9 ; G 1888 -U 8618 ; WX 602 ; N uni21AA ; G 1889 -U 8619 ; WX 602 ; N uni21AB ; G 1890 -U 8620 ; WX 602 ; N uni21AC ; G 1891 -U 8621 ; WX 602 ; N uni21AD ; G 1892 -U 8622 ; WX 602 ; N uni21AE ; G 1893 -U 8623 ; WX 602 ; N uni21AF ; G 1894 -U 8624 ; WX 602 ; N uni21B0 ; G 1895 -U 8625 ; WX 602 ; N uni21B1 ; G 1896 -U 8626 ; WX 602 ; N uni21B2 ; G 1897 -U 8627 ; WX 602 ; N uni21B3 ; G 1898 -U 8628 ; WX 602 ; N uni21B4 ; G 1899 -U 8629 ; WX 602 ; N carriagereturn ; G 1900 -U 8630 ; WX 602 ; N uni21B6 ; G 1901 -U 8631 ; WX 602 ; N uni21B7 ; G 1902 -U 8632 ; WX 602 ; N uni21B8 ; G 1903 -U 8633 ; WX 602 ; N uni21B9 ; G 1904 -U 8634 ; WX 602 ; N uni21BA ; G 1905 -U 8635 ; WX 602 ; N uni21BB ; G 1906 -U 8636 ; WX 602 ; N uni21BC ; G 1907 -U 8637 ; WX 602 ; N uni21BD ; G 1908 -U 8638 ; WX 602 ; N uni21BE ; G 1909 -U 8639 ; WX 602 ; N uni21BF ; G 1910 -U 8640 ; WX 602 ; N uni21C0 ; G 1911 -U 8641 ; WX 602 ; N uni21C1 ; G 1912 -U 8642 ; WX 602 ; N uni21C2 ; G 1913 -U 8643 ; WX 602 ; N uni21C3 ; G 1914 -U 8644 ; WX 602 ; N uni21C4 ; G 1915 -U 8645 ; WX 602 ; N uni21C5 ; G 1916 -U 8646 ; WX 602 ; N uni21C6 ; G 1917 -U 8647 ; WX 602 ; N uni21C7 ; G 1918 -U 8648 ; WX 602 ; N uni21C8 ; G 1919 -U 8649 ; WX 602 ; N uni21C9 ; G 1920 -U 8650 ; WX 602 ; N uni21CA ; G 1921 -U 8651 ; WX 602 ; N uni21CB ; G 1922 -U 8652 ; WX 602 ; N uni21CC ; G 1923 -U 8653 ; WX 602 ; N uni21CD ; G 1924 -U 8654 ; WX 602 ; N uni21CE ; G 1925 -U 8655 ; WX 602 ; N uni21CF ; G 1926 -U 8656 ; WX 602 ; N arrowdblleft ; G 1927 -U 8657 ; WX 602 ; N arrowdblup ; G 1928 -U 8658 ; WX 602 ; N arrowdblright ; G 1929 -U 8659 ; WX 602 ; N arrowdbldown ; G 1930 -U 8660 ; WX 602 ; N arrowdblboth ; G 1931 -U 8661 ; WX 602 ; N uni21D5 ; G 1932 -U 8662 ; WX 602 ; N uni21D6 ; G 1933 -U 8663 ; WX 602 ; N uni21D7 ; G 1934 -U 8664 ; WX 602 ; N uni21D8 ; G 1935 -U 8665 ; WX 602 ; N uni21D9 ; G 1936 -U 8666 ; WX 602 ; N uni21DA ; G 1937 -U 8667 ; WX 602 ; N uni21DB ; G 1938 -U 8668 ; WX 602 ; N uni21DC ; G 1939 -U 8669 ; WX 602 ; N uni21DD ; G 1940 -U 8670 ; WX 602 ; N uni21DE ; G 1941 -U 8671 ; WX 602 ; N uni21DF ; G 1942 -U 8672 ; WX 602 ; N uni21E0 ; G 1943 -U 8673 ; WX 602 ; N uni21E1 ; G 1944 -U 8674 ; WX 602 ; N uni21E2 ; G 1945 -U 8675 ; WX 602 ; N uni21E3 ; G 1946 -U 8676 ; WX 602 ; N uni21E4 ; G 1947 -U 8677 ; WX 602 ; N uni21E5 ; G 1948 -U 8678 ; WX 602 ; N uni21E6 ; G 1949 -U 8679 ; WX 602 ; N uni21E7 ; G 1950 -U 8680 ; WX 602 ; N uni21E8 ; G 1951 -U 8681 ; WX 602 ; N uni21E9 ; G 1952 -U 8682 ; WX 602 ; N uni21EA ; G 1953 -U 8683 ; WX 602 ; N uni21EB ; G 1954 -U 8684 ; WX 602 ; N uni21EC ; G 1955 -U 8685 ; WX 602 ; N uni21ED ; G 1956 -U 8686 ; WX 602 ; N uni21EE ; G 1957 -U 8687 ; WX 602 ; N uni21EF ; G 1958 -U 8688 ; WX 602 ; N uni21F0 ; G 1959 -U 8689 ; WX 602 ; N uni21F1 ; G 1960 -U 8690 ; WX 602 ; N uni21F2 ; G 1961 -U 8691 ; WX 602 ; N uni21F3 ; G 1962 -U 8692 ; WX 602 ; N uni21F4 ; G 1963 -U 8693 ; WX 602 ; N uni21F5 ; G 1964 -U 8694 ; WX 602 ; N uni21F6 ; G 1965 -U 8695 ; WX 602 ; N uni21F7 ; G 1966 -U 8696 ; WX 602 ; N uni21F8 ; G 1967 -U 8697 ; WX 602 ; N uni21F9 ; G 1968 -U 8698 ; WX 602 ; N uni21FA ; G 1969 -U 8699 ; WX 602 ; N uni21FB ; G 1970 -U 8700 ; WX 602 ; N uni21FC ; G 1971 -U 8701 ; WX 602 ; N uni21FD ; G 1972 -U 8702 ; WX 602 ; N uni21FE ; G 1973 -U 8703 ; WX 602 ; N uni21FF ; G 1974 -U 8704 ; WX 602 ; N universal ; G 1975 -U 8705 ; WX 602 ; N uni2201 ; G 1976 -U 8706 ; WX 602 ; N partialdiff ; G 1977 -U 8707 ; WX 602 ; N existential ; G 1978 -U 8708 ; WX 602 ; N uni2204 ; G 1979 -U 8709 ; WX 602 ; N emptyset ; G 1980 -U 8710 ; WX 602 ; N increment ; G 1981 -U 8711 ; WX 602 ; N gradient ; G 1982 -U 8712 ; WX 602 ; N element ; G 1983 -U 8713 ; WX 602 ; N notelement ; G 1984 -U 8714 ; WX 602 ; N uni220A ; G 1985 -U 8715 ; WX 602 ; N suchthat ; G 1986 -U 8716 ; WX 602 ; N uni220C ; G 1987 -U 8717 ; WX 602 ; N uni220D ; G 1988 -U 8718 ; WX 602 ; N uni220E ; G 1989 -U 8719 ; WX 602 ; N product ; G 1990 -U 8720 ; WX 602 ; N uni2210 ; G 1991 -U 8721 ; WX 602 ; N summation ; G 1992 -U 8722 ; WX 602 ; N minus ; G 1993 -U 8723 ; WX 602 ; N uni2213 ; G 1994 -U 8725 ; WX 602 ; N uni2215 ; G 1995 -U 8727 ; WX 602 ; N asteriskmath ; G 1996 -U 8728 ; WX 602 ; N uni2218 ; G 1997 -U 8729 ; WX 602 ; N uni2219 ; G 1998 -U 8730 ; WX 602 ; N radical ; G 1999 -U 8731 ; WX 602 ; N uni221B ; G 2000 -U 8732 ; WX 602 ; N uni221C ; G 2001 -U 8733 ; WX 602 ; N proportional ; G 2002 -U 8734 ; WX 602 ; N infinity ; G 2003 -U 8735 ; WX 602 ; N orthogonal ; G 2004 -U 8736 ; WX 602 ; N angle ; G 2005 -U 8739 ; WX 602 ; N uni2223 ; G 2006 -U 8743 ; WX 602 ; N logicaland ; G 2007 -U 8744 ; WX 602 ; N logicalor ; G 2008 -U 8745 ; WX 602 ; N intersection ; G 2009 -U 8746 ; WX 602 ; N union ; G 2010 -U 8747 ; WX 602 ; N integral ; G 2011 -U 8748 ; WX 602 ; N uni222C ; G 2012 -U 8749 ; WX 602 ; N uni222D ; G 2013 -U 8756 ; WX 602 ; N therefore ; G 2014 -U 8757 ; WX 602 ; N uni2235 ; G 2015 -U 8758 ; WX 602 ; N uni2236 ; G 2016 -U 8759 ; WX 602 ; N uni2237 ; G 2017 -U 8760 ; WX 602 ; N uni2238 ; G 2018 -U 8761 ; WX 602 ; N uni2239 ; G 2019 -U 8762 ; WX 602 ; N uni223A ; G 2020 -U 8763 ; WX 602 ; N uni223B ; G 2021 -U 8764 ; WX 602 ; N similar ; G 2022 -U 8765 ; WX 602 ; N uni223D ; G 2023 -U 8769 ; WX 602 ; N uni2241 ; G 2024 -U 8770 ; WX 602 ; N uni2242 ; G 2025 -U 8771 ; WX 602 ; N uni2243 ; G 2026 -U 8772 ; WX 602 ; N uni2244 ; G 2027 -U 8773 ; WX 602 ; N congruent ; G 2028 -U 8774 ; WX 602 ; N uni2246 ; G 2029 -U 8775 ; WX 602 ; N uni2247 ; G 2030 -U 8776 ; WX 602 ; N approxequal ; G 2031 -U 8777 ; WX 602 ; N uni2249 ; G 2032 -U 8778 ; WX 602 ; N uni224A ; G 2033 -U 8779 ; WX 602 ; N uni224B ; G 2034 -U 8780 ; WX 602 ; N uni224C ; G 2035 -U 8781 ; WX 602 ; N uni224D ; G 2036 -U 8782 ; WX 602 ; N uni224E ; G 2037 -U 8783 ; WX 602 ; N uni224F ; G 2038 -U 8784 ; WX 602 ; N uni2250 ; G 2039 -U 8785 ; WX 602 ; N uni2251 ; G 2040 -U 8786 ; WX 602 ; N uni2252 ; G 2041 -U 8787 ; WX 602 ; N uni2253 ; G 2042 -U 8788 ; WX 602 ; N uni2254 ; G 2043 -U 8789 ; WX 602 ; N uni2255 ; G 2044 -U 8790 ; WX 602 ; N uni2256 ; G 2045 -U 8791 ; WX 602 ; N uni2257 ; G 2046 -U 8792 ; WX 602 ; N uni2258 ; G 2047 -U 8793 ; WX 602 ; N uni2259 ; G 2048 -U 8794 ; WX 602 ; N uni225A ; G 2049 -U 8795 ; WX 602 ; N uni225B ; G 2050 -U 8796 ; WX 602 ; N uni225C ; G 2051 -U 8797 ; WX 602 ; N uni225D ; G 2052 -U 8798 ; WX 602 ; N uni225E ; G 2053 -U 8799 ; WX 602 ; N uni225F ; G 2054 -U 8800 ; WX 602 ; N notequal ; G 2055 -U 8801 ; WX 602 ; N equivalence ; G 2056 -U 8802 ; WX 602 ; N uni2262 ; G 2057 -U 8803 ; WX 602 ; N uni2263 ; G 2058 -U 8804 ; WX 602 ; N lessequal ; G 2059 -U 8805 ; WX 602 ; N greaterequal ; G 2060 -U 8806 ; WX 602 ; N uni2266 ; G 2061 -U 8807 ; WX 602 ; N uni2267 ; G 2062 -U 8808 ; WX 602 ; N uni2268 ; G 2063 -U 8809 ; WX 602 ; N uni2269 ; G 2064 -U 8813 ; WX 602 ; N uni226D ; G 2065 -U 8814 ; WX 602 ; N uni226E ; G 2066 -U 8815 ; WX 602 ; N uni226F ; G 2067 -U 8816 ; WX 602 ; N uni2270 ; G 2068 -U 8817 ; WX 602 ; N uni2271 ; G 2069 -U 8818 ; WX 602 ; N uni2272 ; G 2070 -U 8819 ; WX 602 ; N uni2273 ; G 2071 -U 8820 ; WX 602 ; N uni2274 ; G 2072 -U 8821 ; WX 602 ; N uni2275 ; G 2073 -U 8822 ; WX 602 ; N uni2276 ; G 2074 -U 8823 ; WX 602 ; N uni2277 ; G 2075 -U 8824 ; WX 602 ; N uni2278 ; G 2076 -U 8825 ; WX 602 ; N uni2279 ; G 2077 -U 8826 ; WX 602 ; N uni227A ; G 2078 -U 8827 ; WX 602 ; N uni227B ; G 2079 -U 8828 ; WX 602 ; N uni227C ; G 2080 -U 8829 ; WX 602 ; N uni227D ; G 2081 -U 8830 ; WX 602 ; N uni227E ; G 2082 -U 8831 ; WX 602 ; N uni227F ; G 2083 -U 8832 ; WX 602 ; N uni2280 ; G 2084 -U 8833 ; WX 602 ; N uni2281 ; G 2085 -U 8834 ; WX 602 ; N propersubset ; G 2086 -U 8835 ; WX 602 ; N propersuperset ; G 2087 -U 8836 ; WX 602 ; N notsubset ; G 2088 -U 8837 ; WX 602 ; N uni2285 ; G 2089 -U 8838 ; WX 602 ; N reflexsubset ; G 2090 -U 8839 ; WX 602 ; N reflexsuperset ; G 2091 -U 8840 ; WX 602 ; N uni2288 ; G 2092 -U 8841 ; WX 602 ; N uni2289 ; G 2093 -U 8842 ; WX 602 ; N uni228A ; G 2094 -U 8843 ; WX 602 ; N uni228B ; G 2095 -U 8845 ; WX 602 ; N uni228D ; G 2096 -U 8846 ; WX 602 ; N uni228E ; G 2097 -U 8847 ; WX 602 ; N uni228F ; G 2098 -U 8848 ; WX 602 ; N uni2290 ; G 2099 -U 8849 ; WX 602 ; N uni2291 ; G 2100 -U 8850 ; WX 602 ; N uni2292 ; G 2101 -U 8851 ; WX 602 ; N uni2293 ; G 2102 -U 8852 ; WX 602 ; N uni2294 ; G 2103 -U 8853 ; WX 602 ; N circleplus ; G 2104 -U 8854 ; WX 602 ; N uni2296 ; G 2105 -U 8855 ; WX 602 ; N circlemultiply ; G 2106 -U 8856 ; WX 602 ; N uni2298 ; G 2107 -U 8857 ; WX 602 ; N uni2299 ; G 2108 -U 8858 ; WX 602 ; N uni229A ; G 2109 -U 8859 ; WX 602 ; N uni229B ; G 2110 -U 8860 ; WX 602 ; N uni229C ; G 2111 -U 8861 ; WX 602 ; N uni229D ; G 2112 -U 8862 ; WX 602 ; N uni229E ; G 2113 -U 8863 ; WX 602 ; N uni229F ; G 2114 -U 8864 ; WX 602 ; N uni22A0 ; G 2115 -U 8865 ; WX 602 ; N uni22A1 ; G 2116 -U 8866 ; WX 602 ; N uni22A2 ; G 2117 -U 8867 ; WX 602 ; N uni22A3 ; G 2118 -U 8868 ; WX 602 ; N uni22A4 ; G 2119 -U 8869 ; WX 602 ; N perpendicular ; G 2120 -U 8882 ; WX 602 ; N uni22B2 ; G 2121 -U 8883 ; WX 602 ; N uni22B3 ; G 2122 -U 8884 ; WX 602 ; N uni22B4 ; G 2123 -U 8885 ; WX 602 ; N uni22B5 ; G 2124 -U 8888 ; WX 602 ; N uni22B8 ; G 2125 -U 8898 ; WX 602 ; N uni22C2 ; G 2126 -U 8899 ; WX 602 ; N uni22C3 ; G 2127 -U 8900 ; WX 602 ; N uni22C4 ; G 2128 -U 8901 ; WX 602 ; N dotmath ; G 2129 -U 8902 ; WX 602 ; N uni22C6 ; G 2130 -U 8909 ; WX 602 ; N uni22CD ; G 2131 -U 8910 ; WX 602 ; N uni22CE ; G 2132 -U 8911 ; WX 602 ; N uni22CF ; G 2133 -U 8912 ; WX 602 ; N uni22D0 ; G 2134 -U 8913 ; WX 602 ; N uni22D1 ; G 2135 -U 8922 ; WX 602 ; N uni22DA ; G 2136 -U 8923 ; WX 602 ; N uni22DB ; G 2137 -U 8924 ; WX 602 ; N uni22DC ; G 2138 -U 8925 ; WX 602 ; N uni22DD ; G 2139 -U 8926 ; WX 602 ; N uni22DE ; G 2140 -U 8927 ; WX 602 ; N uni22DF ; G 2141 -U 8928 ; WX 602 ; N uni22E0 ; G 2142 -U 8929 ; WX 602 ; N uni22E1 ; G 2143 -U 8930 ; WX 602 ; N uni22E2 ; G 2144 -U 8931 ; WX 602 ; N uni22E3 ; G 2145 -U 8932 ; WX 602 ; N uni22E4 ; G 2146 -U 8933 ; WX 602 ; N uni22E5 ; G 2147 -U 8934 ; WX 602 ; N uni22E6 ; G 2148 -U 8935 ; WX 602 ; N uni22E7 ; G 2149 -U 8936 ; WX 602 ; N uni22E8 ; G 2150 -U 8937 ; WX 602 ; N uni22E9 ; G 2151 -U 8943 ; WX 602 ; N uni22EF ; G 2152 -U 8960 ; WX 602 ; N uni2300 ; G 2153 -U 8961 ; WX 602 ; N uni2301 ; G 2154 -U 8962 ; WX 602 ; N house ; G 2155 -U 8963 ; WX 602 ; N uni2303 ; G 2156 -U 8964 ; WX 602 ; N uni2304 ; G 2157 -U 8965 ; WX 602 ; N uni2305 ; G 2158 -U 8966 ; WX 602 ; N uni2306 ; G 2159 -U 8968 ; WX 602 ; N uni2308 ; G 2160 -U 8969 ; WX 602 ; N uni2309 ; G 2161 -U 8970 ; WX 602 ; N uni230A ; G 2162 -U 8971 ; WX 602 ; N uni230B ; G 2163 -U 8972 ; WX 602 ; N uni230C ; G 2164 -U 8973 ; WX 602 ; N uni230D ; G 2165 -U 8974 ; WX 602 ; N uni230E ; G 2166 -U 8975 ; WX 602 ; N uni230F ; G 2167 -U 8976 ; WX 602 ; N revlogicalnot ; G 2168 -U 8977 ; WX 602 ; N uni2311 ; G 2169 -U 8978 ; WX 602 ; N uni2312 ; G 2170 -U 8979 ; WX 602 ; N uni2313 ; G 2171 -U 8980 ; WX 602 ; N uni2314 ; G 2172 -U 8981 ; WX 602 ; N uni2315 ; G 2173 -U 8984 ; WX 602 ; N uni2318 ; G 2174 -U 8985 ; WX 602 ; N uni2319 ; G 2175 -U 8988 ; WX 602 ; N uni231C ; G 2176 -U 8989 ; WX 602 ; N uni231D ; G 2177 -U 8990 ; WX 602 ; N uni231E ; G 2178 -U 8991 ; WX 602 ; N uni231F ; G 2179 -U 8992 ; WX 602 ; N integraltp ; G 2180 -U 8993 ; WX 602 ; N integralbt ; G 2181 -U 8997 ; WX 602 ; N uni2325 ; G 2182 -U 8998 ; WX 602 ; N uni2326 ; G 2183 -U 8999 ; WX 602 ; N uni2327 ; G 2184 -U 9000 ; WX 602 ; N uni2328 ; G 2185 -U 9003 ; WX 602 ; N uni232B ; G 2186 -U 9013 ; WX 602 ; N uni2335 ; G 2187 -U 9014 ; WX 602 ; N uni2336 ; G 2188 -U 9015 ; WX 602 ; N uni2337 ; G 2189 -U 9016 ; WX 602 ; N uni2338 ; G 2190 -U 9017 ; WX 602 ; N uni2339 ; G 2191 -U 9018 ; WX 602 ; N uni233A ; G 2192 -U 9019 ; WX 602 ; N uni233B ; G 2193 -U 9020 ; WX 602 ; N uni233C ; G 2194 -U 9021 ; WX 602 ; N uni233D ; G 2195 -U 9022 ; WX 602 ; N uni233E ; G 2196 -U 9023 ; WX 602 ; N uni233F ; G 2197 -U 9024 ; WX 602 ; N uni2340 ; G 2198 -U 9025 ; WX 602 ; N uni2341 ; G 2199 -U 9026 ; WX 602 ; N uni2342 ; G 2200 -U 9027 ; WX 602 ; N uni2343 ; G 2201 -U 9028 ; WX 602 ; N uni2344 ; G 2202 -U 9029 ; WX 602 ; N uni2345 ; G 2203 -U 9030 ; WX 602 ; N uni2346 ; G 2204 -U 9031 ; WX 602 ; N uni2347 ; G 2205 -U 9032 ; WX 602 ; N uni2348 ; G 2206 -U 9033 ; WX 602 ; N uni2349 ; G 2207 -U 9034 ; WX 602 ; N uni234A ; G 2208 -U 9035 ; WX 602 ; N uni234B ; G 2209 -U 9036 ; WX 602 ; N uni234C ; G 2210 -U 9037 ; WX 602 ; N uni234D ; G 2211 -U 9038 ; WX 602 ; N uni234E ; G 2212 -U 9039 ; WX 602 ; N uni234F ; G 2213 -U 9040 ; WX 602 ; N uni2350 ; G 2214 -U 9041 ; WX 602 ; N uni2351 ; G 2215 -U 9042 ; WX 602 ; N uni2352 ; G 2216 -U 9043 ; WX 602 ; N uni2353 ; G 2217 -U 9044 ; WX 602 ; N uni2354 ; G 2218 -U 9045 ; WX 602 ; N uni2355 ; G 2219 -U 9046 ; WX 602 ; N uni2356 ; G 2220 -U 9047 ; WX 602 ; N uni2357 ; G 2221 -U 9048 ; WX 602 ; N uni2358 ; G 2222 -U 9049 ; WX 602 ; N uni2359 ; G 2223 -U 9050 ; WX 602 ; N uni235A ; G 2224 -U 9051 ; WX 602 ; N uni235B ; G 2225 -U 9052 ; WX 602 ; N uni235C ; G 2226 -U 9053 ; WX 602 ; N uni235D ; G 2227 -U 9054 ; WX 602 ; N uni235E ; G 2228 -U 9055 ; WX 602 ; N uni235F ; G 2229 -U 9056 ; WX 602 ; N uni2360 ; G 2230 -U 9057 ; WX 602 ; N uni2361 ; G 2231 -U 9058 ; WX 602 ; N uni2362 ; G 2232 -U 9059 ; WX 602 ; N uni2363 ; G 2233 -U 9060 ; WX 602 ; N uni2364 ; G 2234 -U 9061 ; WX 602 ; N uni2365 ; G 2235 -U 9062 ; WX 602 ; N uni2366 ; G 2236 -U 9063 ; WX 602 ; N uni2367 ; G 2237 -U 9064 ; WX 602 ; N uni2368 ; G 2238 -U 9065 ; WX 602 ; N uni2369 ; G 2239 -U 9066 ; WX 602 ; N uni236A ; G 2240 -U 9067 ; WX 602 ; N uni236B ; G 2241 -U 9068 ; WX 602 ; N uni236C ; G 2242 -U 9069 ; WX 602 ; N uni236D ; G 2243 -U 9070 ; WX 602 ; N uni236E ; G 2244 -U 9071 ; WX 602 ; N uni236F ; G 2245 -U 9072 ; WX 602 ; N uni2370 ; G 2246 -U 9073 ; WX 602 ; N uni2371 ; G 2247 -U 9074 ; WX 602 ; N uni2372 ; G 2248 -U 9075 ; WX 602 ; N uni2373 ; G 2249 -U 9076 ; WX 602 ; N uni2374 ; G 2250 -U 9077 ; WX 602 ; N uni2375 ; G 2251 -U 9078 ; WX 602 ; N uni2376 ; G 2252 -U 9079 ; WX 602 ; N uni2377 ; G 2253 -U 9080 ; WX 602 ; N uni2378 ; G 2254 -U 9081 ; WX 602 ; N uni2379 ; G 2255 -U 9082 ; WX 602 ; N uni237A ; G 2256 -U 9085 ; WX 602 ; N uni237D ; G 2257 -U 9088 ; WX 602 ; N uni2380 ; G 2258 -U 9089 ; WX 602 ; N uni2381 ; G 2259 -U 9090 ; WX 602 ; N uni2382 ; G 2260 -U 9091 ; WX 602 ; N uni2383 ; G 2261 -U 9096 ; WX 602 ; N uni2388 ; G 2262 -U 9097 ; WX 602 ; N uni2389 ; G 2263 -U 9098 ; WX 602 ; N uni238A ; G 2264 -U 9099 ; WX 602 ; N uni238B ; G 2265 -U 9109 ; WX 602 ; N uni2395 ; G 2266 -U 9115 ; WX 602 ; N uni239B ; G 2267 -U 9116 ; WX 602 ; N uni239C ; G 2268 -U 9117 ; WX 602 ; N uni239D ; G 2269 -U 9118 ; WX 602 ; N uni239E ; G 2270 -U 9119 ; WX 602 ; N uni239F ; G 2271 -U 9120 ; WX 602 ; N uni23A0 ; G 2272 -U 9121 ; WX 602 ; N uni23A1 ; G 2273 -U 9122 ; WX 602 ; N uni23A2 ; G 2274 -U 9123 ; WX 602 ; N uni23A3 ; G 2275 -U 9124 ; WX 602 ; N uni23A4 ; G 2276 -U 9125 ; WX 602 ; N uni23A5 ; G 2277 -U 9126 ; WX 602 ; N uni23A6 ; G 2278 -U 9127 ; WX 602 ; N uni23A7 ; G 2279 -U 9128 ; WX 602 ; N uni23A8 ; G 2280 -U 9129 ; WX 602 ; N uni23A9 ; G 2281 -U 9130 ; WX 602 ; N uni23AA ; G 2282 -U 9131 ; WX 602 ; N uni23AB ; G 2283 -U 9132 ; WX 602 ; N uni23AC ; G 2284 -U 9133 ; WX 602 ; N uni23AD ; G 2285 -U 9134 ; WX 602 ; N uni23AE ; G 2286 -U 9166 ; WX 602 ; N uni23CE ; G 2287 -U 9167 ; WX 602 ; N uni23CF ; G 2288 -U 9251 ; WX 602 ; N uni2423 ; G 2289 -U 9472 ; WX 602 ; N SF100000 ; G 2290 -U 9473 ; WX 602 ; N uni2501 ; G 2291 -U 9474 ; WX 602 ; N SF110000 ; G 2292 -U 9475 ; WX 602 ; N uni2503 ; G 2293 -U 9476 ; WX 602 ; N uni2504 ; G 2294 -U 9477 ; WX 602 ; N uni2505 ; G 2295 -U 9478 ; WX 602 ; N uni2506 ; G 2296 -U 9479 ; WX 602 ; N uni2507 ; G 2297 -U 9480 ; WX 602 ; N uni2508 ; G 2298 -U 9481 ; WX 602 ; N uni2509 ; G 2299 -U 9482 ; WX 602 ; N uni250A ; G 2300 -U 9483 ; WX 602 ; N uni250B ; G 2301 -U 9484 ; WX 602 ; N SF010000 ; G 2302 -U 9485 ; WX 602 ; N uni250D ; G 2303 -U 9486 ; WX 602 ; N uni250E ; G 2304 -U 9487 ; WX 602 ; N uni250F ; G 2305 -U 9488 ; WX 602 ; N SF030000 ; G 2306 -U 9489 ; WX 602 ; N uni2511 ; G 2307 -U 9490 ; WX 602 ; N uni2512 ; G 2308 -U 9491 ; WX 602 ; N uni2513 ; G 2309 -U 9492 ; WX 602 ; N SF020000 ; G 2310 -U 9493 ; WX 602 ; N uni2515 ; G 2311 -U 9494 ; WX 602 ; N uni2516 ; G 2312 -U 9495 ; WX 602 ; N uni2517 ; G 2313 -U 9496 ; WX 602 ; N SF040000 ; G 2314 -U 9497 ; WX 602 ; N uni2519 ; G 2315 -U 9498 ; WX 602 ; N uni251A ; G 2316 -U 9499 ; WX 602 ; N uni251B ; G 2317 -U 9500 ; WX 602 ; N SF080000 ; G 2318 -U 9501 ; WX 602 ; N uni251D ; G 2319 -U 9502 ; WX 602 ; N uni251E ; G 2320 -U 9503 ; WX 602 ; N uni251F ; G 2321 -U 9504 ; WX 602 ; N uni2520 ; G 2322 -U 9505 ; WX 602 ; N uni2521 ; G 2323 -U 9506 ; WX 602 ; N uni2522 ; G 2324 -U 9507 ; WX 602 ; N uni2523 ; G 2325 -U 9508 ; WX 602 ; N SF090000 ; G 2326 -U 9509 ; WX 602 ; N uni2525 ; G 2327 -U 9510 ; WX 602 ; N uni2526 ; G 2328 -U 9511 ; WX 602 ; N uni2527 ; G 2329 -U 9512 ; WX 602 ; N uni2528 ; G 2330 -U 9513 ; WX 602 ; N uni2529 ; G 2331 -U 9514 ; WX 602 ; N uni252A ; G 2332 -U 9515 ; WX 602 ; N uni252B ; G 2333 -U 9516 ; WX 602 ; N SF060000 ; G 2334 -U 9517 ; WX 602 ; N uni252D ; G 2335 -U 9518 ; WX 602 ; N uni252E ; G 2336 -U 9519 ; WX 602 ; N uni252F ; G 2337 -U 9520 ; WX 602 ; N uni2530 ; G 2338 -U 9521 ; WX 602 ; N uni2531 ; G 2339 -U 9522 ; WX 602 ; N uni2532 ; G 2340 -U 9523 ; WX 602 ; N uni2533 ; G 2341 -U 9524 ; WX 602 ; N SF070000 ; G 2342 -U 9525 ; WX 602 ; N uni2535 ; G 2343 -U 9526 ; WX 602 ; N uni2536 ; G 2344 -U 9527 ; WX 602 ; N uni2537 ; G 2345 -U 9528 ; WX 602 ; N uni2538 ; G 2346 -U 9529 ; WX 602 ; N uni2539 ; G 2347 -U 9530 ; WX 602 ; N uni253A ; G 2348 -U 9531 ; WX 602 ; N uni253B ; G 2349 -U 9532 ; WX 602 ; N SF050000 ; G 2350 -U 9533 ; WX 602 ; N uni253D ; G 2351 -U 9534 ; WX 602 ; N uni253E ; G 2352 -U 9535 ; WX 602 ; N uni253F ; G 2353 -U 9536 ; WX 602 ; N uni2540 ; G 2354 -U 9537 ; WX 602 ; N uni2541 ; G 2355 -U 9538 ; WX 602 ; N uni2542 ; G 2356 -U 9539 ; WX 602 ; N uni2543 ; G 2357 -U 9540 ; WX 602 ; N uni2544 ; G 2358 -U 9541 ; WX 602 ; N uni2545 ; G 2359 -U 9542 ; WX 602 ; N uni2546 ; G 2360 -U 9543 ; WX 602 ; N uni2547 ; G 2361 -U 9544 ; WX 602 ; N uni2548 ; G 2362 -U 9545 ; WX 602 ; N uni2549 ; G 2363 -U 9546 ; WX 602 ; N uni254A ; G 2364 -U 9547 ; WX 602 ; N uni254B ; G 2365 -U 9548 ; WX 602 ; N uni254C ; G 2366 -U 9549 ; WX 602 ; N uni254D ; G 2367 -U 9550 ; WX 602 ; N uni254E ; G 2368 -U 9551 ; WX 602 ; N uni254F ; G 2369 -U 9552 ; WX 602 ; N SF430000 ; G 2370 -U 9553 ; WX 602 ; N SF240000 ; G 2371 -U 9554 ; WX 602 ; N SF510000 ; G 2372 -U 9555 ; WX 602 ; N SF520000 ; G 2373 -U 9556 ; WX 602 ; N SF390000 ; G 2374 -U 9557 ; WX 602 ; N SF220000 ; G 2375 -U 9558 ; WX 602 ; N SF210000 ; G 2376 -U 9559 ; WX 602 ; N SF250000 ; G 2377 -U 9560 ; WX 602 ; N SF500000 ; G 2378 -U 9561 ; WX 602 ; N SF490000 ; G 2379 -U 9562 ; WX 602 ; N SF380000 ; G 2380 -U 9563 ; WX 602 ; N SF280000 ; G 2381 -U 9564 ; WX 602 ; N SF270000 ; G 2382 -U 9565 ; WX 602 ; N SF260000 ; G 2383 -U 9566 ; WX 602 ; N SF360000 ; G 2384 -U 9567 ; WX 602 ; N SF370000 ; G 2385 -U 9568 ; WX 602 ; N SF420000 ; G 2386 -U 9569 ; WX 602 ; N SF190000 ; G 2387 -U 9570 ; WX 602 ; N SF200000 ; G 2388 -U 9571 ; WX 602 ; N SF230000 ; G 2389 -U 9572 ; WX 602 ; N SF470000 ; G 2390 -U 9573 ; WX 602 ; N SF480000 ; G 2391 -U 9574 ; WX 602 ; N SF410000 ; G 2392 -U 9575 ; WX 602 ; N SF450000 ; G 2393 -U 9576 ; WX 602 ; N SF460000 ; G 2394 -U 9577 ; WX 602 ; N SF400000 ; G 2395 -U 9578 ; WX 602 ; N SF540000 ; G 2396 -U 9579 ; WX 602 ; N SF530000 ; G 2397 -U 9580 ; WX 602 ; N SF440000 ; G 2398 -U 9581 ; WX 602 ; N uni256D ; G 2399 -U 9582 ; WX 602 ; N uni256E ; G 2400 -U 9583 ; WX 602 ; N uni256F ; G 2401 -U 9584 ; WX 602 ; N uni2570 ; G 2402 -U 9585 ; WX 602 ; N uni2571 ; G 2403 -U 9586 ; WX 602 ; N uni2572 ; G 2404 -U 9587 ; WX 602 ; N uni2573 ; G 2405 -U 9588 ; WX 602 ; N uni2574 ; G 2406 -U 9589 ; WX 602 ; N uni2575 ; G 2407 -U 9590 ; WX 602 ; N uni2576 ; G 2408 -U 9591 ; WX 602 ; N uni2577 ; G 2409 -U 9592 ; WX 602 ; N uni2578 ; G 2410 -U 9593 ; WX 602 ; N uni2579 ; G 2411 -U 9594 ; WX 602 ; N uni257A ; G 2412 -U 9595 ; WX 602 ; N uni257B ; G 2413 -U 9596 ; WX 602 ; N uni257C ; G 2414 -U 9597 ; WX 602 ; N uni257D ; G 2415 -U 9598 ; WX 602 ; N uni257E ; G 2416 -U 9599 ; WX 602 ; N uni257F ; G 2417 -U 9600 ; WX 602 ; N upblock ; G 2418 -U 9601 ; WX 602 ; N uni2581 ; G 2419 -U 9602 ; WX 602 ; N uni2582 ; G 2420 -U 9603 ; WX 602 ; N uni2583 ; G 2421 -U 9604 ; WX 602 ; N dnblock ; G 2422 -U 9605 ; WX 602 ; N uni2585 ; G 2423 -U 9606 ; WX 602 ; N uni2586 ; G 2424 -U 9607 ; WX 602 ; N uni2587 ; G 2425 -U 9608 ; WX 602 ; N block ; G 2426 -U 9609 ; WX 602 ; N uni2589 ; G 2427 -U 9610 ; WX 602 ; N uni258A ; G 2428 -U 9611 ; WX 602 ; N uni258B ; G 2429 -U 9612 ; WX 602 ; N lfblock ; G 2430 -U 9613 ; WX 602 ; N uni258D ; G 2431 -U 9614 ; WX 602 ; N uni258E ; G 2432 -U 9615 ; WX 602 ; N uni258F ; G 2433 -U 9616 ; WX 602 ; N rtblock ; G 2434 -U 9617 ; WX 602 ; N ltshade ; G 2435 -U 9618 ; WX 602 ; N shade ; G 2436 -U 9619 ; WX 602 ; N dkshade ; G 2437 -U 9620 ; WX 602 ; N uni2594 ; G 2438 -U 9621 ; WX 602 ; N uni2595 ; G 2439 -U 9622 ; WX 602 ; N uni2596 ; G 2440 -U 9623 ; WX 602 ; N uni2597 ; G 2441 -U 9624 ; WX 602 ; N uni2598 ; G 2442 -U 9625 ; WX 602 ; N uni2599 ; G 2443 -U 9626 ; WX 602 ; N uni259A ; G 2444 -U 9627 ; WX 602 ; N uni259B ; G 2445 -U 9628 ; WX 602 ; N uni259C ; G 2446 -U 9629 ; WX 602 ; N uni259D ; G 2447 -U 9630 ; WX 602 ; N uni259E ; G 2448 -U 9631 ; WX 602 ; N uni259F ; G 2449 -U 9632 ; WX 602 ; N filledbox ; G 2450 -U 9633 ; WX 602 ; N H22073 ; G 2451 -U 9634 ; WX 602 ; N uni25A2 ; G 2452 -U 9635 ; WX 602 ; N uni25A3 ; G 2453 -U 9636 ; WX 602 ; N uni25A4 ; G 2454 -U 9637 ; WX 602 ; N uni25A5 ; G 2455 -U 9638 ; WX 602 ; N uni25A6 ; G 2456 -U 9639 ; WX 602 ; N uni25A7 ; G 2457 -U 9640 ; WX 602 ; N uni25A8 ; G 2458 -U 9641 ; WX 602 ; N uni25A9 ; G 2459 -U 9642 ; WX 602 ; N H18543 ; G 2460 -U 9643 ; WX 602 ; N H18551 ; G 2461 -U 9644 ; WX 602 ; N filledrect ; G 2462 -U 9645 ; WX 602 ; N uni25AD ; G 2463 -U 9646 ; WX 602 ; N uni25AE ; G 2464 -U 9647 ; WX 602 ; N uni25AF ; G 2465 -U 9648 ; WX 602 ; N uni25B0 ; G 2466 -U 9649 ; WX 602 ; N uni25B1 ; G 2467 -U 9650 ; WX 602 ; N triagup ; G 2468 -U 9651 ; WX 602 ; N uni25B3 ; G 2469 -U 9652 ; WX 602 ; N uni25B4 ; G 2470 -U 9653 ; WX 602 ; N uni25B5 ; G 2471 -U 9654 ; WX 602 ; N uni25B6 ; G 2472 -U 9655 ; WX 602 ; N uni25B7 ; G 2473 -U 9656 ; WX 602 ; N uni25B8 ; G 2474 -U 9657 ; WX 602 ; N uni25B9 ; G 2475 -U 9658 ; WX 602 ; N triagrt ; G 2476 -U 9659 ; WX 602 ; N uni25BB ; G 2477 -U 9660 ; WX 602 ; N triagdn ; G 2478 -U 9661 ; WX 602 ; N uni25BD ; G 2479 -U 9662 ; WX 602 ; N uni25BE ; G 2480 -U 9663 ; WX 602 ; N uni25BF ; G 2481 -U 9664 ; WX 602 ; N uni25C0 ; G 2482 -U 9665 ; WX 602 ; N uni25C1 ; G 2483 -U 9666 ; WX 602 ; N uni25C2 ; G 2484 -U 9667 ; WX 602 ; N uni25C3 ; G 2485 -U 9668 ; WX 602 ; N triaglf ; G 2486 -U 9669 ; WX 602 ; N uni25C5 ; G 2487 -U 9670 ; WX 602 ; N uni25C6 ; G 2488 -U 9671 ; WX 602 ; N uni25C7 ; G 2489 -U 9672 ; WX 602 ; N uni25C8 ; G 2490 -U 9673 ; WX 602 ; N uni25C9 ; G 2491 -U 9674 ; WX 602 ; N lozenge ; G 2492 -U 9675 ; WX 602 ; N circle ; G 2493 -U 9676 ; WX 602 ; N uni25CC ; G 2494 -U 9677 ; WX 602 ; N uni25CD ; G 2495 -U 9678 ; WX 602 ; N uni25CE ; G 2496 -U 9679 ; WX 602 ; N H18533 ; G 2497 -U 9680 ; WX 602 ; N uni25D0 ; G 2498 -U 9681 ; WX 602 ; N uni25D1 ; G 2499 -U 9682 ; WX 602 ; N uni25D2 ; G 2500 -U 9683 ; WX 602 ; N uni25D3 ; G 2501 -U 9684 ; WX 602 ; N uni25D4 ; G 2502 -U 9685 ; WX 602 ; N uni25D5 ; G 2503 -U 9686 ; WX 602 ; N uni25D6 ; G 2504 -U 9687 ; WX 602 ; N uni25D7 ; G 2505 -U 9688 ; WX 602 ; N invbullet ; G 2506 -U 9689 ; WX 602 ; N invcircle ; G 2507 -U 9690 ; WX 602 ; N uni25DA ; G 2508 -U 9691 ; WX 602 ; N uni25DB ; G 2509 -U 9692 ; WX 602 ; N uni25DC ; G 2510 -U 9693 ; WX 602 ; N uni25DD ; G 2511 -U 9694 ; WX 602 ; N uni25DE ; G 2512 -U 9695 ; WX 602 ; N uni25DF ; G 2513 -U 9696 ; WX 602 ; N uni25E0 ; G 2514 -U 9697 ; WX 602 ; N uni25E1 ; G 2515 -U 9698 ; WX 602 ; N uni25E2 ; G 2516 -U 9699 ; WX 602 ; N uni25E3 ; G 2517 -U 9700 ; WX 602 ; N uni25E4 ; G 2518 -U 9701 ; WX 602 ; N uni25E5 ; G 2519 -U 9702 ; WX 602 ; N openbullet ; G 2520 -U 9703 ; WX 602 ; N uni25E7 ; G 2521 -U 9704 ; WX 602 ; N uni25E8 ; G 2522 -U 9705 ; WX 602 ; N uni25E9 ; G 2523 -U 9706 ; WX 602 ; N uni25EA ; G 2524 -U 9707 ; WX 602 ; N uni25EB ; G 2525 -U 9708 ; WX 602 ; N uni25EC ; G 2526 -U 9709 ; WX 602 ; N uni25ED ; G 2527 -U 9710 ; WX 602 ; N uni25EE ; G 2528 -U 9711 ; WX 602 ; N uni25EF ; G 2529 -U 9712 ; WX 602 ; N uni25F0 ; G 2530 -U 9713 ; WX 602 ; N uni25F1 ; G 2531 -U 9714 ; WX 602 ; N uni25F2 ; G 2532 -U 9715 ; WX 602 ; N uni25F3 ; G 2533 -U 9716 ; WX 602 ; N uni25F4 ; G 2534 -U 9717 ; WX 602 ; N uni25F5 ; G 2535 -U 9718 ; WX 602 ; N uni25F6 ; G 2536 -U 9719 ; WX 602 ; N uni25F7 ; G 2537 -U 9720 ; WX 602 ; N uni25F8 ; G 2538 -U 9721 ; WX 602 ; N uni25F9 ; G 2539 -U 9722 ; WX 602 ; N uni25FA ; G 2540 -U 9723 ; WX 602 ; N uni25FB ; G 2541 -U 9724 ; WX 602 ; N uni25FC ; G 2542 -U 9725 ; WX 602 ; N uni25FD ; G 2543 -U 9726 ; WX 602 ; N uni25FE ; G 2544 -U 9727 ; WX 602 ; N uni25FF ; G 2545 -U 9728 ; WX 602 ; N uni2600 ; G 2546 -U 9784 ; WX 602 ; N uni2638 ; G 2547 -U 9785 ; WX 602 ; N uni2639 ; G 2548 -U 9786 ; WX 602 ; N smileface ; G 2549 -U 9787 ; WX 602 ; N invsmileface ; G 2550 -U 9788 ; WX 602 ; N sun ; G 2551 -U 9791 ; WX 602 ; N uni263F ; G 2552 -U 9792 ; WX 602 ; N female ; G 2553 -U 9793 ; WX 602 ; N uni2641 ; G 2554 -U 9794 ; WX 602 ; N male ; G 2555 -U 9795 ; WX 602 ; N uni2643 ; G 2556 -U 9796 ; WX 602 ; N uni2644 ; G 2557 -U 9797 ; WX 602 ; N uni2645 ; G 2558 -U 9798 ; WX 602 ; N uni2646 ; G 2559 -U 9799 ; WX 602 ; N uni2647 ; G 2560 -U 9824 ; WX 602 ; N spade ; G 2561 -U 9825 ; WX 602 ; N uni2661 ; G 2562 -U 9826 ; WX 602 ; N uni2662 ; G 2563 -U 9827 ; WX 602 ; N club ; G 2564 -U 9828 ; WX 602 ; N uni2664 ; G 2565 -U 9829 ; WX 602 ; N heart ; G 2566 -U 9830 ; WX 602 ; N diamond ; G 2567 -U 9831 ; WX 602 ; N uni2667 ; G 2568 -U 9833 ; WX 602 ; N uni2669 ; G 2569 -U 9834 ; WX 602 ; N musicalnote ; G 2570 -U 9835 ; WX 602 ; N musicalnotedbl ; G 2571 -U 9836 ; WX 602 ; N uni266C ; G 2572 -U 9837 ; WX 602 ; N uni266D ; G 2573 -U 9838 ; WX 602 ; N uni266E ; G 2574 -U 9839 ; WX 602 ; N uni266F ; G 2575 -U 10178 ; WX 602 ; N uni27C2 ; G 2576 -U 10181 ; WX 602 ; N uni27C5 ; G 2577 -U 10182 ; WX 602 ; N uni27C6 ; G 2578 -U 10204 ; WX 602 ; N uni27DC ; G 2579 -U 10208 ; WX 602 ; N uni27E0 ; G 2580 -U 10214 ; WX 602 ; N uni27E6 ; G 2581 -U 10215 ; WX 602 ; N uni27E7 ; G 2582 -U 10216 ; WX 602 ; N uni27E8 ; G 2583 -U 10217 ; WX 602 ; N uni27E9 ; G 2584 -U 10218 ; WX 602 ; N uni27EA ; G 2585 -U 10219 ; WX 602 ; N uni27EB ; G 2586 -U 10229 ; WX 602 ; N uni27F5 ; G 2587 -U 10230 ; WX 602 ; N uni27F6 ; G 2588 -U 10231 ; WX 602 ; N uni27F7 ; G 2589 -U 10631 ; WX 602 ; N uni2987 ; G 2590 -U 10632 ; WX 602 ; N uni2988 ; G 2591 -U 10647 ; WX 602 ; N uni2997 ; G 2592 -U 10648 ; WX 602 ; N uni2998 ; G 2593 -U 10731 ; WX 602 ; N uni29EB ; G 2594 -U 10746 ; WX 602 ; N uni29FA ; G 2595 -U 10747 ; WX 602 ; N uni29FB ; G 2596 -U 10752 ; WX 602 ; N uni2A00 ; G 2597 -U 10799 ; WX 602 ; N uni2A2F ; G 2598 -U 10858 ; WX 602 ; N uni2A6A ; G 2599 -U 10859 ; WX 602 ; N uni2A6B ; G 2600 -U 11013 ; WX 602 ; N uni2B05 ; G 2601 -U 11014 ; WX 602 ; N uni2B06 ; G 2602 -U 11015 ; WX 602 ; N uni2B07 ; G 2603 -U 11016 ; WX 602 ; N uni2B08 ; G 2604 -U 11017 ; WX 602 ; N uni2B09 ; G 2605 -U 11018 ; WX 602 ; N uni2B0A ; G 2606 -U 11019 ; WX 602 ; N uni2B0B ; G 2607 -U 11020 ; WX 602 ; N uni2B0C ; G 2608 -U 11021 ; WX 602 ; N uni2B0D ; G 2609 -U 11026 ; WX 602 ; N uni2B12 ; G 2610 -U 11027 ; WX 602 ; N uni2B13 ; G 2611 -U 11028 ; WX 602 ; N uni2B14 ; G 2612 -U 11029 ; WX 602 ; N uni2B15 ; G 2613 -U 11030 ; WX 602 ; N uni2B16 ; G 2614 -U 11031 ; WX 602 ; N uni2B17 ; G 2615 -U 11032 ; WX 602 ; N uni2B18 ; G 2616 -U 11033 ; WX 602 ; N uni2B19 ; G 2617 -U 11034 ; WX 602 ; N uni2B1A ; G 2618 -U 11364 ; WX 602 ; N uni2C64 ; G 2619 -U 11373 ; WX 602 ; N uni2C6D ; G 2620 -U 11374 ; WX 602 ; N uni2C6E ; G 2621 -U 11375 ; WX 602 ; N uni2C6F ; G 2622 -U 11376 ; WX 602 ; N uni2C70 ; G 2623 -U 11381 ; WX 602 ; N uni2C75 ; G 2624 -U 11382 ; WX 602 ; N uni2C76 ; G 2625 -U 11383 ; WX 602 ; N uni2C77 ; G 2626 -U 11385 ; WX 602 ; N uni2C79 ; G 2627 -U 11386 ; WX 602 ; N uni2C7A ; G 2628 -U 11388 ; WX 602 ; N uni2C7C ; G 2629 -U 11389 ; WX 602 ; N uni2C7D ; G 2630 -U 11390 ; WX 602 ; N uni2C7E ; G 2631 -U 11391 ; WX 602 ; N uni2C7F ; G 2632 -U 11800 ; WX 602 ; N uni2E18 ; G 2633 -U 11807 ; WX 602 ; N uni2E1F ; G 2634 -U 11810 ; WX 602 ; N uni2E22 ; G 2635 -U 11811 ; WX 602 ; N uni2E23 ; G 2636 -U 11812 ; WX 602 ; N uni2E24 ; G 2637 -U 11813 ; WX 602 ; N uni2E25 ; G 2638 -U 11822 ; WX 602 ; N uni2E2E ; G 2639 -U 42760 ; WX 602 ; N uniA708 ; G 2640 -U 42761 ; WX 602 ; N uniA709 ; G 2641 -U 42762 ; WX 602 ; N uniA70A ; G 2642 -U 42763 ; WX 602 ; N uniA70B ; G 2643 -U 42764 ; WX 602 ; N uniA70C ; G 2644 -U 42765 ; WX 602 ; N uniA70D ; G 2645 -U 42766 ; WX 602 ; N uniA70E ; G 2646 -U 42767 ; WX 602 ; N uniA70F ; G 2647 -U 42768 ; WX 602 ; N uniA710 ; G 2648 -U 42769 ; WX 602 ; N uniA711 ; G 2649 -U 42770 ; WX 602 ; N uniA712 ; G 2650 -U 42771 ; WX 602 ; N uniA713 ; G 2651 -U 42772 ; WX 602 ; N uniA714 ; G 2652 -U 42773 ; WX 602 ; N uniA715 ; G 2653 -U 42774 ; WX 602 ; N uniA716 ; G 2654 -U 42779 ; WX 602 ; N uniA71B ; G 2655 -U 42780 ; WX 602 ; N uniA71C ; G 2656 -U 42781 ; WX 602 ; N uniA71D ; G 2657 -U 42782 ; WX 602 ; N uniA71E ; G 2658 -U 42783 ; WX 602 ; N uniA71F ; G 2659 -U 42786 ; WX 602 ; N uniA722 ; G 2660 -U 42787 ; WX 602 ; N uniA723 ; G 2661 -U 42788 ; WX 602 ; N uniA724 ; G 2662 -U 42789 ; WX 602 ; N uniA725 ; G 2663 -U 42790 ; WX 602 ; N uniA726 ; G 2664 -U 42791 ; WX 602 ; N uniA727 ; G 2665 -U 42889 ; WX 602 ; N uniA789 ; G 2666 -U 42890 ; WX 602 ; N uniA78A ; G 2667 -U 42891 ; WX 602 ; N uniA78B ; G 2668 -U 42892 ; WX 602 ; N uniA78C ; G 2669 -U 42893 ; WX 602 ; N uniA78D ; G 2670 -U 42894 ; WX 602 ; N uniA78E ; G 2671 -U 42896 ; WX 602 ; N uniA790 ; G 2672 -U 42897 ; WX 602 ; N uniA791 ; G 2673 -U 42922 ; WX 602 ; N uniA7AA ; G 2674 -U 43000 ; WX 602 ; N uniA7F8 ; G 2675 -U 43001 ; WX 602 ; N uniA7F9 ; G 2676 -U 63173 ; WX 602 ; N uniF6C5 ; G 2677 -U 64257 ; WX 602 ; N fi ; G 2678 -U 64258 ; WX 602 ; N fl ; G 2679 -U 65529 ; WX 602 ; N uniFFF9 ; G 2680 -U 65530 ; WX 602 ; N uniFFFA ; G 2681 -U 65531 ; WX 602 ; N uniFFFB ; G 2682 -U 65532 ; WX 602 ; N uniFFFC ; G 2683 -U 65533 ; WX 602 ; N uniFFFD ; G 2684 -EndCharMetrics -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSansMono-Oblique.ttf b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSansMono-Oblique.ttf deleted file mode 100644 index 4c858d40..00000000 Binary files a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSansMono-Oblique.ttf and /dev/null differ diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSansMono-Oblique.ufm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSansMono-Oblique.ufm deleted file mode 100644 index 4cd3d2a9..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSansMono-Oblique.ufm +++ /dev/null @@ -1,2707 +0,0 @@ -StartFontMetrics 4.1 -Notice Converted by PHP-font-lib -Comment https://github.com/PhenX/php-font-lib -EncodingScheme FontSpecific -FontName DejaVu Sans Mono -FontSubfamily Oblique -UniqueID DejaVu Sans Mono Oblique -FullName DejaVu Sans Mono Oblique -Version Version 2.37 -PostScriptName DejaVuSansMono-Oblique -Manufacturer DejaVu fonts team -FontVendorURL http://dejavu.sourceforge.net -LicenseURL http://dejavu.sourceforge.net/wiki/index.php/License -Weight Medium -ItalicAngle -11 -IsFixedPitch true -UnderlineThickness 44 -UnderlinePosition -63 -FontHeightOffset 0 -Ascender 928 -Descender -236 -FontBBox -403 -375 746 998 -StartCharMetrics 2710 -U 32 ; WX 602 ; N space ; G 3 -U 33 ; WX 602 ; N exclam ; G 4 -U 34 ; WX 602 ; N quotedbl ; G 5 -U 35 ; WX 602 ; N numbersign ; G 6 -U 36 ; WX 602 ; N dollar ; G 7 -U 37 ; WX 602 ; N percent ; G 8 -U 38 ; WX 602 ; N ampersand ; G 9 -U 39 ; WX 602 ; N quotesingle ; G 10 -U 40 ; WX 602 ; N parenleft ; G 11 -U 41 ; WX 602 ; N parenright ; G 12 -U 42 ; WX 602 ; N asterisk ; G 13 -U 43 ; WX 602 ; N plus ; G 14 -U 44 ; WX 602 ; N comma ; G 15 -U 45 ; WX 602 ; N hyphen ; G 16 -U 46 ; WX 602 ; N period ; G 17 -U 47 ; WX 602 ; N slash ; G 18 -U 48 ; WX 602 ; N zero ; G 19 -U 49 ; WX 602 ; N one ; G 20 -U 50 ; WX 602 ; N two ; G 21 -U 51 ; WX 602 ; N three ; G 22 -U 52 ; WX 602 ; N four ; G 23 -U 53 ; WX 602 ; N five ; G 24 -U 54 ; WX 602 ; N six ; G 25 -U 55 ; WX 602 ; N seven ; G 26 -U 56 ; WX 602 ; N eight ; G 27 -U 57 ; WX 602 ; N nine ; G 28 -U 58 ; WX 602 ; N colon ; G 29 -U 59 ; WX 602 ; N semicolon ; G 30 -U 60 ; WX 602 ; N less ; G 31 -U 61 ; WX 602 ; N equal ; G 32 -U 62 ; WX 602 ; N greater ; G 33 -U 63 ; WX 602 ; N question ; G 34 -U 64 ; WX 602 ; N at ; G 35 -U 65 ; WX 602 ; N A ; G 36 -U 66 ; WX 602 ; N B ; G 37 -U 67 ; WX 602 ; N C ; G 38 -U 68 ; WX 602 ; N D ; G 39 -U 69 ; WX 602 ; N E ; G 40 -U 70 ; WX 602 ; N F ; G 41 -U 71 ; WX 602 ; N G ; G 42 -U 72 ; WX 602 ; N H ; G 43 -U 73 ; WX 602 ; N I ; G 44 -U 74 ; WX 602 ; N J ; G 45 -U 75 ; WX 602 ; N K ; G 46 -U 76 ; WX 602 ; N L ; G 47 -U 77 ; WX 602 ; N M ; G 48 -U 78 ; WX 602 ; N N ; G 49 -U 79 ; WX 602 ; N O ; G 50 -U 80 ; WX 602 ; N P ; G 51 -U 81 ; WX 602 ; N Q ; G 52 -U 82 ; WX 602 ; N R ; G 53 -U 83 ; WX 602 ; N S ; G 54 -U 84 ; WX 602 ; N T ; G 55 -U 85 ; WX 602 ; N U ; G 56 -U 86 ; WX 602 ; N V ; G 57 -U 87 ; WX 602 ; N W ; G 58 -U 88 ; WX 602 ; N X ; G 59 -U 89 ; WX 602 ; N Y ; G 60 -U 90 ; WX 602 ; N Z ; G 61 -U 91 ; WX 602 ; N bracketleft ; G 62 -U 92 ; WX 602 ; N backslash ; G 63 -U 93 ; WX 602 ; N bracketright ; G 64 -U 94 ; WX 602 ; N asciicircum ; G 65 -U 95 ; WX 602 ; N underscore ; G 66 -U 96 ; WX 602 ; N grave ; G 67 -U 97 ; WX 602 ; N a ; G 68 -U 98 ; WX 602 ; N b ; G 69 -U 99 ; WX 602 ; N c ; G 70 -U 100 ; WX 602 ; N d ; G 71 -U 101 ; WX 602 ; N e ; G 72 -U 102 ; WX 602 ; N f ; G 73 -U 103 ; WX 602 ; N g ; G 74 -U 104 ; WX 602 ; N h ; G 75 -U 105 ; WX 602 ; N i ; G 76 -U 106 ; WX 602 ; N j ; G 77 -U 107 ; WX 602 ; N k ; G 78 -U 108 ; WX 602 ; N l ; G 79 -U 109 ; WX 602 ; N m ; G 80 -U 110 ; WX 602 ; N n ; G 81 -U 111 ; WX 602 ; N o ; G 82 -U 112 ; WX 602 ; N p ; G 83 -U 113 ; WX 602 ; N q ; G 84 -U 114 ; WX 602 ; N r ; G 85 -U 115 ; WX 602 ; N s ; G 86 -U 116 ; WX 602 ; N t ; G 87 -U 117 ; WX 602 ; N u ; G 88 -U 118 ; WX 602 ; N v ; G 89 -U 119 ; WX 602 ; N w ; G 90 -U 120 ; WX 602 ; N x ; G 91 -U 121 ; WX 602 ; N y ; G 92 -U 122 ; WX 602 ; N z ; G 93 -U 123 ; WX 602 ; N braceleft ; G 94 -U 124 ; WX 602 ; N bar ; G 95 -U 125 ; WX 602 ; N braceright ; G 96 -U 126 ; WX 602 ; N asciitilde ; G 97 -U 160 ; WX 602 ; N nbspace ; G 98 -U 161 ; WX 602 ; N exclamdown ; G 99 -U 162 ; WX 602 ; N cent ; G 100 -U 163 ; WX 602 ; N sterling ; G 101 -U 164 ; WX 602 ; N currency ; G 102 -U 165 ; WX 602 ; N yen ; G 103 -U 166 ; WX 602 ; N brokenbar ; G 104 -U 167 ; WX 602 ; N section ; G 105 -U 168 ; WX 602 ; N dieresis ; G 106 -U 169 ; WX 602 ; N copyright ; G 107 -U 170 ; WX 602 ; N ordfeminine ; G 108 -U 171 ; WX 602 ; N guillemotleft ; G 109 -U 172 ; WX 602 ; N logicalnot ; G 110 -U 173 ; WX 602 ; N sfthyphen ; G 111 -U 174 ; WX 602 ; N registered ; G 112 -U 175 ; WX 602 ; N macron ; G 113 -U 176 ; WX 602 ; N degree ; G 114 -U 177 ; WX 602 ; N plusminus ; G 115 -U 178 ; WX 602 ; N twosuperior ; G 116 -U 179 ; WX 602 ; N threesuperior ; G 117 -U 180 ; WX 602 ; N acute ; G 118 -U 181 ; WX 602 ; N mu ; G 119 -U 182 ; WX 602 ; N paragraph ; G 120 -U 183 ; WX 602 ; N periodcentered ; G 121 -U 184 ; WX 602 ; N cedilla ; G 122 -U 185 ; WX 602 ; N onesuperior ; G 123 -U 186 ; WX 602 ; N ordmasculine ; G 124 -U 187 ; WX 602 ; N guillemotright ; G 125 -U 188 ; WX 602 ; N onequarter ; G 126 -U 189 ; WX 602 ; N onehalf ; G 127 -U 190 ; WX 602 ; N threequarters ; G 128 -U 191 ; WX 602 ; N questiondown ; G 129 -U 192 ; WX 602 ; N Agrave ; G 130 -U 193 ; WX 602 ; N Aacute ; G 131 -U 194 ; WX 602 ; N Acircumflex ; G 132 -U 195 ; WX 602 ; N Atilde ; G 133 -U 196 ; WX 602 ; N Adieresis ; G 134 -U 197 ; WX 602 ; N Aring ; G 135 -U 198 ; WX 602 ; N AE ; G 136 -U 199 ; WX 602 ; N Ccedilla ; G 137 -U 200 ; WX 602 ; N Egrave ; G 138 -U 201 ; WX 602 ; N Eacute ; G 139 -U 202 ; WX 602 ; N Ecircumflex ; G 140 -U 203 ; WX 602 ; N Edieresis ; G 141 -U 204 ; WX 602 ; N Igrave ; G 142 -U 205 ; WX 602 ; N Iacute ; G 143 -U 206 ; WX 602 ; N Icircumflex ; G 144 -U 207 ; WX 602 ; N Idieresis ; G 145 -U 208 ; WX 602 ; N Eth ; G 146 -U 209 ; WX 602 ; N Ntilde ; G 147 -U 210 ; WX 602 ; N Ograve ; G 148 -U 211 ; WX 602 ; N Oacute ; G 149 -U 212 ; WX 602 ; N Ocircumflex ; G 150 -U 213 ; WX 602 ; N Otilde ; G 151 -U 214 ; WX 602 ; N Odieresis ; G 152 -U 215 ; WX 602 ; N multiply ; G 153 -U 216 ; WX 602 ; N Oslash ; G 154 -U 217 ; WX 602 ; N Ugrave ; G 155 -U 218 ; WX 602 ; N Uacute ; G 156 -U 219 ; WX 602 ; N Ucircumflex ; G 157 -U 220 ; WX 602 ; N Udieresis ; G 158 -U 221 ; WX 602 ; N Yacute ; G 159 -U 222 ; WX 602 ; N Thorn ; G 160 -U 223 ; WX 602 ; N germandbls ; G 161 -U 224 ; WX 602 ; N agrave ; G 162 -U 225 ; WX 602 ; N aacute ; G 163 -U 226 ; WX 602 ; N acircumflex ; G 164 -U 227 ; WX 602 ; N atilde ; G 165 -U 228 ; WX 602 ; N adieresis ; G 166 -U 229 ; WX 602 ; N aring ; G 167 -U 230 ; WX 602 ; N ae ; G 168 -U 231 ; WX 602 ; N ccedilla ; G 169 -U 232 ; WX 602 ; N egrave ; G 170 -U 233 ; WX 602 ; N eacute ; G 171 -U 234 ; WX 602 ; N ecircumflex ; G 172 -U 235 ; WX 602 ; N edieresis ; G 173 -U 236 ; WX 602 ; N igrave ; G 174 -U 237 ; WX 602 ; N iacute ; G 175 -U 238 ; WX 602 ; N icircumflex ; G 176 -U 239 ; WX 602 ; N idieresis ; G 177 -U 240 ; WX 602 ; N eth ; G 178 -U 241 ; WX 602 ; N ntilde ; G 179 -U 242 ; WX 602 ; N ograve ; G 180 -U 243 ; WX 602 ; N oacute ; G 181 -U 244 ; WX 602 ; N ocircumflex ; G 182 -U 245 ; WX 602 ; N otilde ; G 183 -U 246 ; WX 602 ; N odieresis ; G 184 -U 247 ; WX 602 ; N divide ; G 185 -U 248 ; WX 602 ; N oslash ; G 186 -U 249 ; WX 602 ; N ugrave ; G 187 -U 250 ; WX 602 ; N uacute ; G 188 -U 251 ; WX 602 ; N ucircumflex ; G 189 -U 252 ; WX 602 ; N udieresis ; G 190 -U 253 ; WX 602 ; N yacute ; G 191 -U 254 ; WX 602 ; N thorn ; G 192 -U 255 ; WX 602 ; N ydieresis ; G 193 -U 256 ; WX 602 ; N Amacron ; G 194 -U 257 ; WX 602 ; N amacron ; G 195 -U 258 ; WX 602 ; N Abreve ; G 196 -U 259 ; WX 602 ; N abreve ; G 197 -U 260 ; WX 602 ; N Aogonek ; G 198 -U 261 ; WX 602 ; N aogonek ; G 199 -U 262 ; WX 602 ; N Cacute ; G 200 -U 263 ; WX 602 ; N cacute ; G 201 -U 264 ; WX 602 ; N Ccircumflex ; G 202 -U 265 ; WX 602 ; N ccircumflex ; G 203 -U 266 ; WX 602 ; N Cdotaccent ; G 204 -U 267 ; WX 602 ; N cdotaccent ; G 205 -U 268 ; WX 602 ; N Ccaron ; G 206 -U 269 ; WX 602 ; N ccaron ; G 207 -U 270 ; WX 602 ; N Dcaron ; G 208 -U 271 ; WX 602 ; N dcaron ; G 209 -U 272 ; WX 602 ; N Dcroat ; G 210 -U 273 ; WX 602 ; N dmacron ; G 211 -U 274 ; WX 602 ; N Emacron ; G 212 -U 275 ; WX 602 ; N emacron ; G 213 -U 276 ; WX 602 ; N Ebreve ; G 214 -U 277 ; WX 602 ; N ebreve ; G 215 -U 278 ; WX 602 ; N Edotaccent ; G 216 -U 279 ; WX 602 ; N edotaccent ; G 217 -U 280 ; WX 602 ; N Eogonek ; G 218 -U 281 ; WX 602 ; N eogonek ; G 219 -U 282 ; WX 602 ; N Ecaron ; G 220 -U 283 ; WX 602 ; N ecaron ; G 221 -U 284 ; WX 602 ; N Gcircumflex ; G 222 -U 285 ; WX 602 ; N gcircumflex ; G 223 -U 286 ; WX 602 ; N Gbreve ; G 224 -U 287 ; WX 602 ; N gbreve ; G 225 -U 288 ; WX 602 ; N Gdotaccent ; G 226 -U 289 ; WX 602 ; N gdotaccent ; G 227 -U 290 ; WX 602 ; N Gcommaaccent ; G 228 -U 291 ; WX 602 ; N gcommaaccent ; G 229 -U 292 ; WX 602 ; N Hcircumflex ; G 230 -U 293 ; WX 602 ; N hcircumflex ; G 231 -U 294 ; WX 602 ; N Hbar ; G 232 -U 295 ; WX 602 ; N hbar ; G 233 -U 296 ; WX 602 ; N Itilde ; G 234 -U 297 ; WX 602 ; N itilde ; G 235 -U 298 ; WX 602 ; N Imacron ; G 236 -U 299 ; WX 602 ; N imacron ; G 237 -U 300 ; WX 602 ; N Ibreve ; G 238 -U 301 ; WX 602 ; N ibreve ; G 239 -U 302 ; WX 602 ; N Iogonek ; G 240 -U 303 ; WX 602 ; N iogonek ; G 241 -U 304 ; WX 602 ; N Idot ; G 242 -U 305 ; WX 602 ; N dotlessi ; G 243 -U 306 ; WX 602 ; N IJ ; G 244 -U 307 ; WX 602 ; N ij ; G 245 -U 308 ; WX 602 ; N Jcircumflex ; G 246 -U 309 ; WX 602 ; N jcircumflex ; G 247 -U 310 ; WX 602 ; N Kcommaaccent ; G 248 -U 311 ; WX 602 ; N kcommaaccent ; G 249 -U 312 ; WX 602 ; N kgreenlandic ; G 250 -U 313 ; WX 602 ; N Lacute ; G 251 -U 314 ; WX 602 ; N lacute ; G 252 -U 315 ; WX 602 ; N Lcommaaccent ; G 253 -U 316 ; WX 602 ; N lcommaaccent ; G 254 -U 317 ; WX 602 ; N Lcaron ; G 255 -U 318 ; WX 602 ; N lcaron ; G 256 -U 319 ; WX 602 ; N Ldot ; G 257 -U 320 ; WX 602 ; N ldot ; G 258 -U 321 ; WX 602 ; N Lslash ; G 259 -U 322 ; WX 602 ; N lslash ; G 260 -U 323 ; WX 602 ; N Nacute ; G 261 -U 324 ; WX 602 ; N nacute ; G 262 -U 325 ; WX 602 ; N Ncommaaccent ; G 263 -U 326 ; WX 602 ; N ncommaaccent ; G 264 -U 327 ; WX 602 ; N Ncaron ; G 265 -U 328 ; WX 602 ; N ncaron ; G 266 -U 329 ; WX 602 ; N napostrophe ; G 267 -U 330 ; WX 602 ; N Eng ; G 268 -U 331 ; WX 602 ; N eng ; G 269 -U 332 ; WX 602 ; N Omacron ; G 270 -U 333 ; WX 602 ; N omacron ; G 271 -U 334 ; WX 602 ; N Obreve ; G 272 -U 335 ; WX 602 ; N obreve ; G 273 -U 336 ; WX 602 ; N Ohungarumlaut ; G 274 -U 337 ; WX 602 ; N ohungarumlaut ; G 275 -U 338 ; WX 602 ; N OE ; G 276 -U 339 ; WX 602 ; N oe ; G 277 -U 340 ; WX 602 ; N Racute ; G 278 -U 341 ; WX 602 ; N racute ; G 279 -U 342 ; WX 602 ; N Rcommaaccent ; G 280 -U 343 ; WX 602 ; N rcommaaccent ; G 281 -U 344 ; WX 602 ; N Rcaron ; G 282 -U 345 ; WX 602 ; N rcaron ; G 283 -U 346 ; WX 602 ; N Sacute ; G 284 -U 347 ; WX 602 ; N sacute ; G 285 -U 348 ; WX 602 ; N Scircumflex ; G 286 -U 349 ; WX 602 ; N scircumflex ; G 287 -U 350 ; WX 602 ; N Scedilla ; G 288 -U 351 ; WX 602 ; N scedilla ; G 289 -U 352 ; WX 602 ; N Scaron ; G 290 -U 353 ; WX 602 ; N scaron ; G 291 -U 354 ; WX 602 ; N Tcommaaccent ; G 292 -U 355 ; WX 602 ; N tcommaaccent ; G 293 -U 356 ; WX 602 ; N Tcaron ; G 294 -U 357 ; WX 602 ; N tcaron ; G 295 -U 358 ; WX 602 ; N Tbar ; G 296 -U 359 ; WX 602 ; N tbar ; G 297 -U 360 ; WX 602 ; N Utilde ; G 298 -U 361 ; WX 602 ; N utilde ; G 299 -U 362 ; WX 602 ; N Umacron ; G 300 -U 363 ; WX 602 ; N umacron ; G 301 -U 364 ; WX 602 ; N Ubreve ; G 302 -U 365 ; WX 602 ; N ubreve ; G 303 -U 366 ; WX 602 ; N Uring ; G 304 -U 367 ; WX 602 ; N uring ; G 305 -U 368 ; WX 602 ; N Uhungarumlaut ; G 306 -U 369 ; WX 602 ; N uhungarumlaut ; G 307 -U 370 ; WX 602 ; N Uogonek ; G 308 -U 371 ; WX 602 ; N uogonek ; G 309 -U 372 ; WX 602 ; N Wcircumflex ; G 310 -U 373 ; WX 602 ; N wcircumflex ; G 311 -U 374 ; WX 602 ; N Ycircumflex ; G 312 -U 375 ; WX 602 ; N ycircumflex ; G 313 -U 376 ; WX 602 ; N Ydieresis ; G 314 -U 377 ; WX 602 ; N Zacute ; G 315 -U 378 ; WX 602 ; N zacute ; G 316 -U 379 ; WX 602 ; N Zdotaccent ; G 317 -U 380 ; WX 602 ; N zdotaccent ; G 318 -U 381 ; WX 602 ; N Zcaron ; G 319 -U 382 ; WX 602 ; N zcaron ; G 320 -U 383 ; WX 602 ; N longs ; G 321 -U 384 ; WX 602 ; N uni0180 ; G 322 -U 385 ; WX 602 ; N uni0181 ; G 323 -U 386 ; WX 602 ; N uni0182 ; G 324 -U 387 ; WX 602 ; N uni0183 ; G 325 -U 388 ; WX 602 ; N uni0184 ; G 326 -U 389 ; WX 602 ; N uni0185 ; G 327 -U 390 ; WX 602 ; N uni0186 ; G 328 -U 391 ; WX 602 ; N uni0187 ; G 329 -U 392 ; WX 602 ; N uni0188 ; G 330 -U 393 ; WX 602 ; N uni0189 ; G 331 -U 394 ; WX 602 ; N uni018A ; G 332 -U 395 ; WX 602 ; N uni018B ; G 333 -U 396 ; WX 602 ; N uni018C ; G 334 -U 397 ; WX 602 ; N uni018D ; G 335 -U 398 ; WX 602 ; N uni018E ; G 336 -U 399 ; WX 602 ; N uni018F ; G 337 -U 400 ; WX 602 ; N uni0190 ; G 338 -U 401 ; WX 602 ; N uni0191 ; G 339 -U 402 ; WX 602 ; N florin ; G 340 -U 403 ; WX 602 ; N uni0193 ; G 341 -U 404 ; WX 602 ; N uni0194 ; G 342 -U 405 ; WX 602 ; N uni0195 ; G 343 -U 406 ; WX 602 ; N uni0196 ; G 344 -U 407 ; WX 602 ; N uni0197 ; G 345 -U 408 ; WX 602 ; N uni0198 ; G 346 -U 409 ; WX 602 ; N uni0199 ; G 347 -U 410 ; WX 602 ; N uni019A ; G 348 -U 411 ; WX 602 ; N uni019B ; G 349 -U 412 ; WX 602 ; N uni019C ; G 350 -U 413 ; WX 602 ; N uni019D ; G 351 -U 414 ; WX 602 ; N uni019E ; G 352 -U 415 ; WX 602 ; N uni019F ; G 353 -U 416 ; WX 602 ; N Ohorn ; G 354 -U 417 ; WX 602 ; N ohorn ; G 355 -U 418 ; WX 602 ; N uni01A2 ; G 356 -U 419 ; WX 602 ; N uni01A3 ; G 357 -U 420 ; WX 602 ; N uni01A4 ; G 358 -U 421 ; WX 602 ; N uni01A5 ; G 359 -U 422 ; WX 602 ; N uni01A6 ; G 360 -U 423 ; WX 602 ; N uni01A7 ; G 361 -U 424 ; WX 602 ; N uni01A8 ; G 362 -U 425 ; WX 602 ; N uni01A9 ; G 363 -U 426 ; WX 602 ; N uni01AA ; G 364 -U 427 ; WX 602 ; N uni01AB ; G 365 -U 428 ; WX 602 ; N uni01AC ; G 366 -U 429 ; WX 602 ; N uni01AD ; G 367 -U 430 ; WX 602 ; N uni01AE ; G 368 -U 431 ; WX 602 ; N Uhorn ; G 369 -U 432 ; WX 602 ; N uhorn ; G 370 -U 433 ; WX 602 ; N uni01B1 ; G 371 -U 434 ; WX 602 ; N uni01B2 ; G 372 -U 435 ; WX 602 ; N uni01B3 ; G 373 -U 436 ; WX 602 ; N uni01B4 ; G 374 -U 437 ; WX 602 ; N uni01B5 ; G 375 -U 438 ; WX 602 ; N uni01B6 ; G 376 -U 439 ; WX 602 ; N uni01B7 ; G 377 -U 440 ; WX 602 ; N uni01B8 ; G 378 -U 441 ; WX 602 ; N uni01B9 ; G 379 -U 442 ; WX 602 ; N uni01BA ; G 380 -U 443 ; WX 602 ; N uni01BB ; G 381 -U 444 ; WX 602 ; N uni01BC ; G 382 -U 445 ; WX 602 ; N uni01BD ; G 383 -U 446 ; WX 602 ; N uni01BE ; G 384 -U 447 ; WX 602 ; N uni01BF ; G 385 -U 448 ; WX 602 ; N uni01C0 ; G 386 -U 449 ; WX 602 ; N uni01C1 ; G 387 -U 450 ; WX 602 ; N uni01C2 ; G 388 -U 451 ; WX 602 ; N uni01C3 ; G 389 -U 461 ; WX 602 ; N uni01CD ; G 390 -U 462 ; WX 602 ; N uni01CE ; G 391 -U 463 ; WX 602 ; N uni01CF ; G 392 -U 464 ; WX 602 ; N uni01D0 ; G 393 -U 465 ; WX 602 ; N uni01D1 ; G 394 -U 466 ; WX 602 ; N uni01D2 ; G 395 -U 467 ; WX 602 ; N uni01D3 ; G 396 -U 468 ; WX 602 ; N uni01D4 ; G 397 -U 469 ; WX 602 ; N uni01D5 ; G 398 -U 470 ; WX 602 ; N uni01D6 ; G 399 -U 471 ; WX 602 ; N uni01D7 ; G 400 -U 472 ; WX 602 ; N uni01D8 ; G 401 -U 473 ; WX 602 ; N uni01D9 ; G 402 -U 474 ; WX 602 ; N uni01DA ; G 403 -U 475 ; WX 602 ; N uni01DB ; G 404 -U 476 ; WX 602 ; N uni01DC ; G 405 -U 477 ; WX 602 ; N uni01DD ; G 406 -U 479 ; WX 602 ; N uni01DF ; G 407 -U 480 ; WX 602 ; N uni01E0 ; G 408 -U 481 ; WX 602 ; N uni01E1 ; G 409 -U 482 ; WX 602 ; N uni01E2 ; G 410 -U 483 ; WX 602 ; N uni01E3 ; G 411 -U 486 ; WX 602 ; N Gcaron ; G 412 -U 487 ; WX 602 ; N gcaron ; G 413 -U 488 ; WX 602 ; N uni01E8 ; G 414 -U 489 ; WX 602 ; N uni01E9 ; G 415 -U 490 ; WX 602 ; N uni01EA ; G 416 -U 491 ; WX 602 ; N uni01EB ; G 417 -U 492 ; WX 602 ; N uni01EC ; G 418 -U 493 ; WX 602 ; N uni01ED ; G 419 -U 494 ; WX 602 ; N uni01EE ; G 420 -U 495 ; WX 602 ; N uni01EF ; G 421 -U 500 ; WX 602 ; N uni01F4 ; G 422 -U 501 ; WX 602 ; N uni01F5 ; G 423 -U 502 ; WX 602 ; N uni01F6 ; G 424 -U 504 ; WX 602 ; N uni01F8 ; G 425 -U 505 ; WX 602 ; N uni01F9 ; G 426 -U 508 ; WX 602 ; N AEacute ; G 427 -U 509 ; WX 602 ; N aeacute ; G 428 -U 510 ; WX 602 ; N Oslashacute ; G 429 -U 511 ; WX 602 ; N oslashacute ; G 430 -U 512 ; WX 602 ; N uni0200 ; G 431 -U 513 ; WX 602 ; N uni0201 ; G 432 -U 514 ; WX 602 ; N uni0202 ; G 433 -U 515 ; WX 602 ; N uni0203 ; G 434 -U 516 ; WX 602 ; N uni0204 ; G 435 -U 517 ; WX 602 ; N uni0205 ; G 436 -U 518 ; WX 602 ; N uni0206 ; G 437 -U 519 ; WX 602 ; N uni0207 ; G 438 -U 520 ; WX 602 ; N uni0208 ; G 439 -U 521 ; WX 602 ; N uni0209 ; G 440 -U 522 ; WX 602 ; N uni020A ; G 441 -U 523 ; WX 602 ; N uni020B ; G 442 -U 524 ; WX 602 ; N uni020C ; G 443 -U 525 ; WX 602 ; N uni020D ; G 444 -U 526 ; WX 602 ; N uni020E ; G 445 -U 527 ; WX 602 ; N uni020F ; G 446 -U 528 ; WX 602 ; N uni0210 ; G 447 -U 529 ; WX 602 ; N uni0211 ; G 448 -U 530 ; WX 602 ; N uni0212 ; G 449 -U 531 ; WX 602 ; N uni0213 ; G 450 -U 532 ; WX 602 ; N uni0214 ; G 451 -U 533 ; WX 602 ; N uni0215 ; G 452 -U 534 ; WX 602 ; N uni0216 ; G 453 -U 535 ; WX 602 ; N uni0217 ; G 454 -U 536 ; WX 602 ; N Scommaaccent ; G 455 -U 537 ; WX 602 ; N scommaaccent ; G 456 -U 538 ; WX 602 ; N uni021A ; G 457 -U 539 ; WX 602 ; N uni021B ; G 458 -U 540 ; WX 602 ; N uni021C ; G 459 -U 541 ; WX 602 ; N uni021D ; G 460 -U 542 ; WX 602 ; N uni021E ; G 461 -U 543 ; WX 602 ; N uni021F ; G 462 -U 545 ; WX 602 ; N uni0221 ; G 463 -U 548 ; WX 602 ; N uni0224 ; G 464 -U 549 ; WX 602 ; N uni0225 ; G 465 -U 550 ; WX 602 ; N uni0226 ; G 466 -U 551 ; WX 602 ; N uni0227 ; G 467 -U 552 ; WX 602 ; N uni0228 ; G 468 -U 553 ; WX 602 ; N uni0229 ; G 469 -U 554 ; WX 602 ; N uni022A ; G 470 -U 555 ; WX 602 ; N uni022B ; G 471 -U 556 ; WX 602 ; N uni022C ; G 472 -U 557 ; WX 602 ; N uni022D ; G 473 -U 558 ; WX 602 ; N uni022E ; G 474 -U 559 ; WX 602 ; N uni022F ; G 475 -U 560 ; WX 602 ; N uni0230 ; G 476 -U 561 ; WX 602 ; N uni0231 ; G 477 -U 562 ; WX 602 ; N uni0232 ; G 478 -U 563 ; WX 602 ; N uni0233 ; G 479 -U 564 ; WX 602 ; N uni0234 ; G 480 -U 565 ; WX 602 ; N uni0235 ; G 481 -U 566 ; WX 602 ; N uni0236 ; G 482 -U 567 ; WX 602 ; N dotlessj ; G 483 -U 568 ; WX 602 ; N uni0238 ; G 484 -U 569 ; WX 602 ; N uni0239 ; G 485 -U 570 ; WX 602 ; N uni023A ; G 486 -U 571 ; WX 602 ; N uni023B ; G 487 -U 572 ; WX 602 ; N uni023C ; G 488 -U 573 ; WX 602 ; N uni023D ; G 489 -U 574 ; WX 602 ; N uni023E ; G 490 -U 575 ; WX 602 ; N uni023F ; G 491 -U 576 ; WX 602 ; N uni0240 ; G 492 -U 577 ; WX 602 ; N uni0241 ; G 493 -U 579 ; WX 602 ; N uni0243 ; G 494 -U 580 ; WX 602 ; N uni0244 ; G 495 -U 581 ; WX 602 ; N uni0245 ; G 496 -U 588 ; WX 602 ; N uni024C ; G 497 -U 589 ; WX 602 ; N uni024D ; G 498 -U 592 ; WX 602 ; N uni0250 ; G 499 -U 593 ; WX 602 ; N uni0251 ; G 500 -U 594 ; WX 602 ; N uni0252 ; G 501 -U 595 ; WX 602 ; N uni0253 ; G 502 -U 596 ; WX 602 ; N uni0254 ; G 503 -U 597 ; WX 602 ; N uni0255 ; G 504 -U 598 ; WX 602 ; N uni0256 ; G 505 -U 599 ; WX 602 ; N uni0257 ; G 506 -U 600 ; WX 602 ; N uni0258 ; G 507 -U 601 ; WX 602 ; N uni0259 ; G 508 -U 602 ; WX 602 ; N uni025A ; G 509 -U 603 ; WX 602 ; N uni025B ; G 510 -U 604 ; WX 602 ; N uni025C ; G 511 -U 605 ; WX 602 ; N uni025D ; G 512 -U 606 ; WX 602 ; N uni025E ; G 513 -U 607 ; WX 602 ; N uni025F ; G 514 -U 608 ; WX 602 ; N uni0260 ; G 515 -U 609 ; WX 602 ; N uni0261 ; G 516 -U 610 ; WX 602 ; N uni0262 ; G 517 -U 611 ; WX 602 ; N uni0263 ; G 518 -U 612 ; WX 602 ; N uni0264 ; G 519 -U 613 ; WX 602 ; N uni0265 ; G 520 -U 614 ; WX 602 ; N uni0266 ; G 521 -U 615 ; WX 602 ; N uni0267 ; G 522 -U 616 ; WX 602 ; N uni0268 ; G 523 -U 617 ; WX 602 ; N uni0269 ; G 524 -U 618 ; WX 602 ; N uni026A ; G 525 -U 619 ; WX 602 ; N uni026B ; G 526 -U 620 ; WX 602 ; N uni026C ; G 527 -U 621 ; WX 602 ; N uni026D ; G 528 -U 622 ; WX 602 ; N uni026E ; G 529 -U 623 ; WX 602 ; N uni026F ; G 530 -U 624 ; WX 602 ; N uni0270 ; G 531 -U 625 ; WX 602 ; N uni0271 ; G 532 -U 626 ; WX 602 ; N uni0272 ; G 533 -U 627 ; WX 602 ; N uni0273 ; G 534 -U 628 ; WX 602 ; N uni0274 ; G 535 -U 629 ; WX 602 ; N uni0275 ; G 536 -U 630 ; WX 602 ; N uni0276 ; G 537 -U 631 ; WX 602 ; N uni0277 ; G 538 -U 632 ; WX 602 ; N uni0278 ; G 539 -U 633 ; WX 602 ; N uni0279 ; G 540 -U 634 ; WX 602 ; N uni027A ; G 541 -U 635 ; WX 602 ; N uni027B ; G 542 -U 636 ; WX 602 ; N uni027C ; G 543 -U 637 ; WX 602 ; N uni027D ; G 544 -U 638 ; WX 602 ; N uni027E ; G 545 -U 639 ; WX 602 ; N uni027F ; G 546 -U 640 ; WX 602 ; N uni0280 ; G 547 -U 641 ; WX 602 ; N uni0281 ; G 548 -U 642 ; WX 602 ; N uni0282 ; G 549 -U 643 ; WX 602 ; N uni0283 ; G 550 -U 644 ; WX 602 ; N uni0284 ; G 551 -U 645 ; WX 602 ; N uni0285 ; G 552 -U 646 ; WX 602 ; N uni0286 ; G 553 -U 647 ; WX 602 ; N uni0287 ; G 554 -U 648 ; WX 602 ; N uni0288 ; G 555 -U 649 ; WX 602 ; N uni0289 ; G 556 -U 650 ; WX 602 ; N uni028A ; G 557 -U 651 ; WX 602 ; N uni028B ; G 558 -U 652 ; WX 602 ; N uni028C ; G 559 -U 653 ; WX 602 ; N uni028D ; G 560 -U 654 ; WX 602 ; N uni028E ; G 561 -U 655 ; WX 602 ; N uni028F ; G 562 -U 656 ; WX 602 ; N uni0290 ; G 563 -U 657 ; WX 602 ; N uni0291 ; G 564 -U 658 ; WX 602 ; N uni0292 ; G 565 -U 659 ; WX 602 ; N uni0293 ; G 566 -U 660 ; WX 602 ; N uni0294 ; G 567 -U 661 ; WX 602 ; N uni0295 ; G 568 -U 662 ; WX 602 ; N uni0296 ; G 569 -U 663 ; WX 602 ; N uni0297 ; G 570 -U 664 ; WX 602 ; N uni0298 ; G 571 -U 665 ; WX 602 ; N uni0299 ; G 572 -U 666 ; WX 602 ; N uni029A ; G 573 -U 667 ; WX 602 ; N uni029B ; G 574 -U 668 ; WX 602 ; N uni029C ; G 575 -U 669 ; WX 602 ; N uni029D ; G 576 -U 670 ; WX 602 ; N uni029E ; G 577 -U 671 ; WX 602 ; N uni029F ; G 578 -U 672 ; WX 602 ; N uni02A0 ; G 579 -U 673 ; WX 602 ; N uni02A1 ; G 580 -U 674 ; WX 602 ; N uni02A2 ; G 581 -U 675 ; WX 602 ; N uni02A3 ; G 582 -U 676 ; WX 602 ; N uni02A4 ; G 583 -U 677 ; WX 602 ; N uni02A5 ; G 584 -U 678 ; WX 602 ; N uni02A6 ; G 585 -U 679 ; WX 602 ; N uni02A7 ; G 586 -U 680 ; WX 602 ; N uni02A8 ; G 587 -U 681 ; WX 602 ; N uni02A9 ; G 588 -U 682 ; WX 602 ; N uni02AA ; G 589 -U 683 ; WX 602 ; N uni02AB ; G 590 -U 684 ; WX 602 ; N uni02AC ; G 591 -U 685 ; WX 602 ; N uni02AD ; G 592 -U 686 ; WX 602 ; N uni02AE ; G 593 -U 687 ; WX 602 ; N uni02AF ; G 594 -U 688 ; WX 602 ; N uni02B0 ; G 595 -U 689 ; WX 602 ; N uni02B1 ; G 596 -U 690 ; WX 602 ; N uni02B2 ; G 597 -U 691 ; WX 602 ; N uni02B3 ; G 598 -U 692 ; WX 602 ; N uni02B4 ; G 599 -U 693 ; WX 602 ; N uni02B5 ; G 600 -U 694 ; WX 602 ; N uni02B6 ; G 601 -U 695 ; WX 602 ; N uni02B7 ; G 602 -U 696 ; WX 602 ; N uni02B8 ; G 603 -U 697 ; WX 602 ; N uni02B9 ; G 604 -U 699 ; WX 602 ; N uni02BB ; G 605 -U 700 ; WX 602 ; N uni02BC ; G 606 -U 701 ; WX 602 ; N uni02BD ; G 607 -U 702 ; WX 602 ; N uni02BE ; G 608 -U 703 ; WX 602 ; N uni02BF ; G 609 -U 704 ; WX 602 ; N uni02C0 ; G 610 -U 705 ; WX 602 ; N uni02C1 ; G 611 -U 710 ; WX 602 ; N circumflex ; G 612 -U 711 ; WX 602 ; N caron ; G 613 -U 712 ; WX 602 ; N uni02C8 ; G 614 -U 713 ; WX 602 ; N uni02C9 ; G 615 -U 716 ; WX 602 ; N uni02CC ; G 616 -U 717 ; WX 602 ; N uni02CD ; G 617 -U 718 ; WX 602 ; N uni02CE ; G 618 -U 719 ; WX 602 ; N uni02CF ; G 619 -U 720 ; WX 602 ; N uni02D0 ; G 620 -U 721 ; WX 602 ; N uni02D1 ; G 621 -U 722 ; WX 602 ; N uni02D2 ; G 622 -U 723 ; WX 602 ; N uni02D3 ; G 623 -U 726 ; WX 602 ; N uni02D6 ; G 624 -U 727 ; WX 602 ; N uni02D7 ; G 625 -U 728 ; WX 602 ; N breve ; G 626 -U 729 ; WX 602 ; N dotaccent ; G 627 -U 730 ; WX 602 ; N ring ; G 628 -U 731 ; WX 602 ; N ogonek ; G 629 -U 732 ; WX 602 ; N tilde ; G 630 -U 733 ; WX 602 ; N hungarumlaut ; G 631 -U 734 ; WX 602 ; N uni02DE ; G 632 -U 736 ; WX 602 ; N uni02E0 ; G 633 -U 737 ; WX 602 ; N uni02E1 ; G 634 -U 738 ; WX 602 ; N uni02E2 ; G 635 -U 739 ; WX 602 ; N uni02E3 ; G 636 -U 740 ; WX 602 ; N uni02E4 ; G 637 -U 741 ; WX 602 ; N uni02E5 ; G 638 -U 742 ; WX 602 ; N uni02E6 ; G 639 -U 743 ; WX 602 ; N uni02E7 ; G 640 -U 744 ; WX 602 ; N uni02E8 ; G 641 -U 745 ; WX 602 ; N uni02E9 ; G 642 -U 750 ; WX 602 ; N uni02EE ; G 643 -U 755 ; WX 602 ; N uni02F3 ; G 644 -U 768 ; WX 602 ; N gravecomb ; G 645 -U 769 ; WX 602 ; N acutecomb ; G 646 -U 770 ; WX 602 ; N uni0302 ; G 647 -U 771 ; WX 602 ; N tildecomb ; G 648 -U 772 ; WX 602 ; N uni0304 ; G 649 -U 773 ; WX 602 ; N uni0305 ; G 650 -U 774 ; WX 602 ; N uni0306 ; G 651 -U 775 ; WX 602 ; N uni0307 ; G 652 -U 776 ; WX 602 ; N uni0308 ; G 653 -U 777 ; WX 602 ; N hookabovecomb ; G 654 -U 778 ; WX 602 ; N uni030A ; G 655 -U 779 ; WX 602 ; N uni030B ; G 656 -U 780 ; WX 602 ; N uni030C ; G 657 -U 781 ; WX 602 ; N uni030D ; G 658 -U 782 ; WX 602 ; N uni030E ; G 659 -U 783 ; WX 602 ; N uni030F ; G 660 -U 784 ; WX 602 ; N uni0310 ; G 661 -U 785 ; WX 602 ; N uni0311 ; G 662 -U 786 ; WX 602 ; N uni0312 ; G 663 -U 787 ; WX 602 ; N uni0313 ; G 664 -U 788 ; WX 602 ; N uni0314 ; G 665 -U 789 ; WX 602 ; N uni0315 ; G 666 -U 790 ; WX 602 ; N uni0316 ; G 667 -U 791 ; WX 602 ; N uni0317 ; G 668 -U 792 ; WX 602 ; N uni0318 ; G 669 -U 793 ; WX 602 ; N uni0319 ; G 670 -U 794 ; WX 602 ; N uni031A ; G 671 -U 795 ; WX 602 ; N uni031B ; G 672 -U 796 ; WX 602 ; N uni031C ; G 673 -U 797 ; WX 602 ; N uni031D ; G 674 -U 798 ; WX 602 ; N uni031E ; G 675 -U 799 ; WX 602 ; N uni031F ; G 676 -U 800 ; WX 602 ; N uni0320 ; G 677 -U 801 ; WX 602 ; N uni0321 ; G 678 -U 802 ; WX 602 ; N uni0322 ; G 679 -U 803 ; WX 602 ; N dotbelowcomb ; G 680 -U 804 ; WX 602 ; N uni0324 ; G 681 -U 805 ; WX 602 ; N uni0325 ; G 682 -U 806 ; WX 602 ; N uni0326 ; G 683 -U 807 ; WX 602 ; N uni0327 ; G 684 -U 808 ; WX 602 ; N uni0328 ; G 685 -U 809 ; WX 602 ; N uni0329 ; G 686 -U 810 ; WX 602 ; N uni032A ; G 687 -U 811 ; WX 602 ; N uni032B ; G 688 -U 812 ; WX 602 ; N uni032C ; G 689 -U 813 ; WX 602 ; N uni032D ; G 690 -U 814 ; WX 602 ; N uni032E ; G 691 -U 815 ; WX 602 ; N uni032F ; G 692 -U 816 ; WX 602 ; N uni0330 ; G 693 -U 817 ; WX 602 ; N uni0331 ; G 694 -U 818 ; WX 602 ; N uni0332 ; G 695 -U 819 ; WX 602 ; N uni0333 ; G 696 -U 820 ; WX 602 ; N uni0334 ; G 697 -U 821 ; WX 602 ; N uni0335 ; G 698 -U 822 ; WX 602 ; N uni0336 ; G 699 -U 823 ; WX 602 ; N uni0337 ; G 700 -U 824 ; WX 602 ; N uni0338 ; G 701 -U 825 ; WX 602 ; N uni0339 ; G 702 -U 826 ; WX 602 ; N uni033A ; G 703 -U 827 ; WX 602 ; N uni033B ; G 704 -U 828 ; WX 602 ; N uni033C ; G 705 -U 829 ; WX 602 ; N uni033D ; G 706 -U 830 ; WX 602 ; N uni033E ; G 707 -U 831 ; WX 602 ; N uni033F ; G 708 -U 835 ; WX 602 ; N uni0343 ; G 709 -U 856 ; WX 602 ; N uni0358 ; G 710 -U 865 ; WX 602 ; N uni0361 ; G 711 -U 884 ; WX 602 ; N uni0374 ; G 712 -U 885 ; WX 602 ; N uni0375 ; G 713 -U 886 ; WX 602 ; N uni0376 ; G 714 -U 887 ; WX 602 ; N uni0377 ; G 715 -U 890 ; WX 602 ; N uni037A ; G 716 -U 891 ; WX 602 ; N uni037B ; G 717 -U 892 ; WX 602 ; N uni037C ; G 718 -U 893 ; WX 602 ; N uni037D ; G 719 -U 894 ; WX 602 ; N uni037E ; G 720 -U 895 ; WX 602 ; N uni037F ; G 721 -U 900 ; WX 602 ; N tonos ; G 722 -U 901 ; WX 602 ; N dieresistonos ; G 723 -U 902 ; WX 602 ; N Alphatonos ; G 724 -U 903 ; WX 602 ; N anoteleia ; G 725 -U 904 ; WX 602 ; N Epsilontonos ; G 726 -U 905 ; WX 602 ; N Etatonos ; G 727 -U 906 ; WX 602 ; N Iotatonos ; G 728 -U 908 ; WX 602 ; N Omicrontonos ; G 729 -U 910 ; WX 602 ; N Upsilontonos ; G 730 -U 911 ; WX 602 ; N Omegatonos ; G 731 -U 912 ; WX 602 ; N iotadieresistonos ; G 732 -U 913 ; WX 602 ; N Alpha ; G 733 -U 914 ; WX 602 ; N Beta ; G 734 -U 915 ; WX 602 ; N Gamma ; G 735 -U 916 ; WX 602 ; N uni0394 ; G 736 -U 917 ; WX 602 ; N Epsilon ; G 737 -U 918 ; WX 602 ; N Zeta ; G 738 -U 919 ; WX 602 ; N Eta ; G 739 -U 920 ; WX 602 ; N Theta ; G 740 -U 921 ; WX 602 ; N Iota ; G 741 -U 922 ; WX 602 ; N Kappa ; G 742 -U 923 ; WX 602 ; N Lambda ; G 743 -U 924 ; WX 602 ; N Mu ; G 744 -U 925 ; WX 602 ; N Nu ; G 745 -U 926 ; WX 602 ; N Xi ; G 746 -U 927 ; WX 602 ; N Omicron ; G 747 -U 928 ; WX 602 ; N Pi ; G 748 -U 929 ; WX 602 ; N Rho ; G 749 -U 931 ; WX 602 ; N Sigma ; G 750 -U 932 ; WX 602 ; N Tau ; G 751 -U 933 ; WX 602 ; N Upsilon ; G 752 -U 934 ; WX 602 ; N Phi ; G 753 -U 935 ; WX 602 ; N Chi ; G 754 -U 936 ; WX 602 ; N Psi ; G 755 -U 937 ; WX 602 ; N Omega ; G 756 -U 938 ; WX 602 ; N Iotadieresis ; G 757 -U 939 ; WX 602 ; N Upsilondieresis ; G 758 -U 940 ; WX 602 ; N alphatonos ; G 759 -U 941 ; WX 602 ; N epsilontonos ; G 760 -U 942 ; WX 602 ; N etatonos ; G 761 -U 943 ; WX 602 ; N iotatonos ; G 762 -U 944 ; WX 602 ; N upsilondieresistonos ; G 763 -U 945 ; WX 602 ; N alpha ; G 764 -U 946 ; WX 602 ; N beta ; G 765 -U 947 ; WX 602 ; N gamma ; G 766 -U 948 ; WX 602 ; N delta ; G 767 -U 949 ; WX 602 ; N epsilon ; G 768 -U 950 ; WX 602 ; N zeta ; G 769 -U 951 ; WX 602 ; N eta ; G 770 -U 952 ; WX 602 ; N theta ; G 771 -U 953 ; WX 602 ; N iota ; G 772 -U 954 ; WX 602 ; N kappa ; G 773 -U 955 ; WX 602 ; N lambda ; G 774 -U 956 ; WX 602 ; N uni03BC ; G 775 -U 957 ; WX 602 ; N nu ; G 776 -U 958 ; WX 602 ; N xi ; G 777 -U 959 ; WX 602 ; N omicron ; G 778 -U 960 ; WX 602 ; N pi ; G 779 -U 961 ; WX 602 ; N rho ; G 780 -U 962 ; WX 602 ; N sigma1 ; G 781 -U 963 ; WX 602 ; N sigma ; G 782 -U 964 ; WX 602 ; N tau ; G 783 -U 965 ; WX 602 ; N upsilon ; G 784 -U 966 ; WX 602 ; N phi ; G 785 -U 967 ; WX 602 ; N chi ; G 786 -U 968 ; WX 602 ; N psi ; G 787 -U 969 ; WX 602 ; N omega ; G 788 -U 970 ; WX 602 ; N iotadieresis ; G 789 -U 971 ; WX 602 ; N upsilondieresis ; G 790 -U 972 ; WX 602 ; N omicrontonos ; G 791 -U 973 ; WX 602 ; N upsilontonos ; G 792 -U 974 ; WX 602 ; N omegatonos ; G 793 -U 976 ; WX 602 ; N uni03D0 ; G 794 -U 977 ; WX 602 ; N theta1 ; G 795 -U 978 ; WX 602 ; N Upsilon1 ; G 796 -U 979 ; WX 602 ; N uni03D3 ; G 797 -U 980 ; WX 602 ; N uni03D4 ; G 798 -U 981 ; WX 602 ; N phi1 ; G 799 -U 982 ; WX 602 ; N omega1 ; G 800 -U 983 ; WX 602 ; N uni03D7 ; G 801 -U 984 ; WX 602 ; N uni03D8 ; G 802 -U 985 ; WX 602 ; N uni03D9 ; G 803 -U 986 ; WX 602 ; N uni03DA ; G 804 -U 987 ; WX 602 ; N uni03DB ; G 805 -U 988 ; WX 602 ; N uni03DC ; G 806 -U 989 ; WX 602 ; N uni03DD ; G 807 -U 990 ; WX 602 ; N uni03DE ; G 808 -U 991 ; WX 602 ; N uni03DF ; G 809 -U 992 ; WX 602 ; N uni03E0 ; G 810 -U 993 ; WX 602 ; N uni03E1 ; G 811 -U 1008 ; WX 602 ; N uni03F0 ; G 812 -U 1009 ; WX 602 ; N uni03F1 ; G 813 -U 1010 ; WX 602 ; N uni03F2 ; G 814 -U 1011 ; WX 602 ; N uni03F3 ; G 815 -U 1012 ; WX 602 ; N uni03F4 ; G 816 -U 1013 ; WX 602 ; N uni03F5 ; G 817 -U 1014 ; WX 602 ; N uni03F6 ; G 818 -U 1015 ; WX 602 ; N uni03F7 ; G 819 -U 1016 ; WX 602 ; N uni03F8 ; G 820 -U 1017 ; WX 602 ; N uni03F9 ; G 821 -U 1018 ; WX 602 ; N uni03FA ; G 822 -U 1019 ; WX 602 ; N uni03FB ; G 823 -U 1020 ; WX 602 ; N uni03FC ; G 824 -U 1021 ; WX 602 ; N uni03FD ; G 825 -U 1022 ; WX 602 ; N uni03FE ; G 826 -U 1023 ; WX 602 ; N uni03FF ; G 827 -U 1024 ; WX 602 ; N uni0400 ; G 828 -U 1025 ; WX 602 ; N uni0401 ; G 829 -U 1026 ; WX 602 ; N uni0402 ; G 830 -U 1027 ; WX 602 ; N uni0403 ; G 831 -U 1028 ; WX 602 ; N uni0404 ; G 832 -U 1029 ; WX 602 ; N uni0405 ; G 833 -U 1030 ; WX 602 ; N uni0406 ; G 834 -U 1031 ; WX 602 ; N uni0407 ; G 835 -U 1032 ; WX 602 ; N uni0408 ; G 836 -U 1033 ; WX 602 ; N uni0409 ; G 837 -U 1034 ; WX 602 ; N uni040A ; G 838 -U 1035 ; WX 602 ; N uni040B ; G 839 -U 1036 ; WX 602 ; N uni040C ; G 840 -U 1037 ; WX 602 ; N uni040D ; G 841 -U 1038 ; WX 602 ; N uni040E ; G 842 -U 1039 ; WX 602 ; N uni040F ; G 843 -U 1040 ; WX 602 ; N uni0410 ; G 844 -U 1041 ; WX 602 ; N uni0411 ; G 845 -U 1042 ; WX 602 ; N uni0412 ; G 846 -U 1043 ; WX 602 ; N uni0413 ; G 847 -U 1044 ; WX 602 ; N uni0414 ; G 848 -U 1045 ; WX 602 ; N uni0415 ; G 849 -U 1046 ; WX 602 ; N uni0416 ; G 850 -U 1047 ; WX 602 ; N uni0417 ; G 851 -U 1048 ; WX 602 ; N uni0418 ; G 852 -U 1049 ; WX 602 ; N uni0419 ; G 853 -U 1050 ; WX 602 ; N uni041A ; G 854 -U 1051 ; WX 602 ; N uni041B ; G 855 -U 1052 ; WX 602 ; N uni041C ; G 856 -U 1053 ; WX 602 ; N uni041D ; G 857 -U 1054 ; WX 602 ; N uni041E ; G 858 -U 1055 ; WX 602 ; N uni041F ; G 859 -U 1056 ; WX 602 ; N uni0420 ; G 860 -U 1057 ; WX 602 ; N uni0421 ; G 861 -U 1058 ; WX 602 ; N uni0422 ; G 862 -U 1059 ; WX 602 ; N uni0423 ; G 863 -U 1060 ; WX 602 ; N uni0424 ; G 864 -U 1061 ; WX 602 ; N uni0425 ; G 865 -U 1062 ; WX 602 ; N uni0426 ; G 866 -U 1063 ; WX 602 ; N uni0427 ; G 867 -U 1064 ; WX 602 ; N uni0428 ; G 868 -U 1065 ; WX 602 ; N uni0429 ; G 869 -U 1066 ; WX 602 ; N uni042A ; G 870 -U 1067 ; WX 602 ; N uni042B ; G 871 -U 1068 ; WX 602 ; N uni042C ; G 872 -U 1069 ; WX 602 ; N uni042D ; G 873 -U 1070 ; WX 602 ; N uni042E ; G 874 -U 1071 ; WX 602 ; N uni042F ; G 875 -U 1072 ; WX 602 ; N uni0430 ; G 876 -U 1073 ; WX 602 ; N uni0431 ; G 877 -U 1074 ; WX 602 ; N uni0432 ; G 878 -U 1075 ; WX 602 ; N uni0433 ; G 879 -U 1076 ; WX 602 ; N uni0434 ; G 880 -U 1077 ; WX 602 ; N uni0435 ; G 881 -U 1078 ; WX 602 ; N uni0436 ; G 882 -U 1079 ; WX 602 ; N uni0437 ; G 883 -U 1080 ; WX 602 ; N uni0438 ; G 884 -U 1081 ; WX 602 ; N uni0439 ; G 885 -U 1082 ; WX 602 ; N uni043A ; G 886 -U 1083 ; WX 602 ; N uni043B ; G 887 -U 1084 ; WX 602 ; N uni043C ; G 888 -U 1085 ; WX 602 ; N uni043D ; G 889 -U 1086 ; WX 602 ; N uni043E ; G 890 -U 1087 ; WX 602 ; N uni043F ; G 891 -U 1088 ; WX 602 ; N uni0440 ; G 892 -U 1089 ; WX 602 ; N uni0441 ; G 893 -U 1090 ; WX 602 ; N uni0442 ; G 894 -U 1091 ; WX 602 ; N uni0443 ; G 895 -U 1092 ; WX 602 ; N uni0444 ; G 896 -U 1093 ; WX 602 ; N uni0445 ; G 897 -U 1094 ; WX 602 ; N uni0446 ; G 898 -U 1095 ; WX 602 ; N uni0447 ; G 899 -U 1096 ; WX 602 ; N uni0448 ; G 900 -U 1097 ; WX 602 ; N uni0449 ; G 901 -U 1098 ; WX 602 ; N uni044A ; G 902 -U 1099 ; WX 602 ; N uni044B ; G 903 -U 1100 ; WX 602 ; N uni044C ; G 904 -U 1101 ; WX 602 ; N uni044D ; G 905 -U 1102 ; WX 602 ; N uni044E ; G 906 -U 1103 ; WX 602 ; N uni044F ; G 907 -U 1104 ; WX 602 ; N uni0450 ; G 908 -U 1105 ; WX 602 ; N uni0451 ; G 909 -U 1106 ; WX 602 ; N uni0452 ; G 910 -U 1107 ; WX 602 ; N uni0453 ; G 911 -U 1108 ; WX 602 ; N uni0454 ; G 912 -U 1109 ; WX 602 ; N uni0455 ; G 913 -U 1110 ; WX 602 ; N uni0456 ; G 914 -U 1111 ; WX 602 ; N uni0457 ; G 915 -U 1112 ; WX 602 ; N uni0458 ; G 916 -U 1113 ; WX 602 ; N uni0459 ; G 917 -U 1114 ; WX 602 ; N uni045A ; G 918 -U 1115 ; WX 602 ; N uni045B ; G 919 -U 1116 ; WX 602 ; N uni045C ; G 920 -U 1117 ; WX 602 ; N uni045D ; G 921 -U 1118 ; WX 602 ; N uni045E ; G 922 -U 1119 ; WX 602 ; N uni045F ; G 923 -U 1122 ; WX 602 ; N uni0462 ; G 924 -U 1123 ; WX 602 ; N uni0463 ; G 925 -U 1138 ; WX 602 ; N uni0472 ; G 926 -U 1139 ; WX 602 ; N uni0473 ; G 927 -U 1168 ; WX 602 ; N uni0490 ; G 928 -U 1169 ; WX 602 ; N uni0491 ; G 929 -U 1170 ; WX 602 ; N uni0492 ; G 930 -U 1171 ; WX 602 ; N uni0493 ; G 931 -U 1172 ; WX 602 ; N uni0494 ; G 932 -U 1173 ; WX 602 ; N uni0495 ; G 933 -U 1174 ; WX 602 ; N uni0496 ; G 934 -U 1175 ; WX 602 ; N uni0497 ; G 935 -U 1176 ; WX 602 ; N uni0498 ; G 936 -U 1177 ; WX 602 ; N uni0499 ; G 937 -U 1178 ; WX 602 ; N uni049A ; G 938 -U 1179 ; WX 602 ; N uni049B ; G 939 -U 1186 ; WX 602 ; N uni04A2 ; G 940 -U 1187 ; WX 602 ; N uni04A3 ; G 941 -U 1188 ; WX 602 ; N uni04A4 ; G 942 -U 1189 ; WX 602 ; N uni04A5 ; G 943 -U 1194 ; WX 602 ; N uni04AA ; G 944 -U 1195 ; WX 602 ; N uni04AB ; G 945 -U 1196 ; WX 602 ; N uni04AC ; G 946 -U 1197 ; WX 602 ; N uni04AD ; G 947 -U 1198 ; WX 602 ; N uni04AE ; G 948 -U 1199 ; WX 602 ; N uni04AF ; G 949 -U 1200 ; WX 602 ; N uni04B0 ; G 950 -U 1201 ; WX 602 ; N uni04B1 ; G 951 -U 1202 ; WX 602 ; N uni04B2 ; G 952 -U 1203 ; WX 602 ; N uni04B3 ; G 953 -U 1210 ; WX 602 ; N uni04BA ; G 954 -U 1211 ; WX 602 ; N uni04BB ; G 955 -U 1216 ; WX 602 ; N uni04C0 ; G 956 -U 1217 ; WX 602 ; N uni04C1 ; G 957 -U 1218 ; WX 602 ; N uni04C2 ; G 958 -U 1219 ; WX 602 ; N uni04C3 ; G 959 -U 1220 ; WX 602 ; N uni04C4 ; G 960 -U 1223 ; WX 602 ; N uni04C7 ; G 961 -U 1224 ; WX 602 ; N uni04C8 ; G 962 -U 1227 ; WX 602 ; N uni04CB ; G 963 -U 1228 ; WX 602 ; N uni04CC ; G 964 -U 1231 ; WX 602 ; N uni04CF ; G 965 -U 1232 ; WX 602 ; N uni04D0 ; G 966 -U 1233 ; WX 602 ; N uni04D1 ; G 967 -U 1234 ; WX 602 ; N uni04D2 ; G 968 -U 1235 ; WX 602 ; N uni04D3 ; G 969 -U 1236 ; WX 602 ; N uni04D4 ; G 970 -U 1237 ; WX 602 ; N uni04D5 ; G 971 -U 1238 ; WX 602 ; N uni04D6 ; G 972 -U 1239 ; WX 602 ; N uni04D7 ; G 973 -U 1240 ; WX 602 ; N uni04D8 ; G 974 -U 1241 ; WX 602 ; N uni04D9 ; G 975 -U 1242 ; WX 602 ; N uni04DA ; G 976 -U 1243 ; WX 602 ; N uni04DB ; G 977 -U 1244 ; WX 602 ; N uni04DC ; G 978 -U 1245 ; WX 602 ; N uni04DD ; G 979 -U 1246 ; WX 602 ; N uni04DE ; G 980 -U 1247 ; WX 602 ; N uni04DF ; G 981 -U 1248 ; WX 602 ; N uni04E0 ; G 982 -U 1249 ; WX 602 ; N uni04E1 ; G 983 -U 1250 ; WX 602 ; N uni04E2 ; G 984 -U 1251 ; WX 602 ; N uni04E3 ; G 985 -U 1252 ; WX 602 ; N uni04E4 ; G 986 -U 1253 ; WX 602 ; N uni04E5 ; G 987 -U 1254 ; WX 602 ; N uni04E6 ; G 988 -U 1255 ; WX 602 ; N uni04E7 ; G 989 -U 1256 ; WX 602 ; N uni04E8 ; G 990 -U 1257 ; WX 602 ; N uni04E9 ; G 991 -U 1258 ; WX 602 ; N uni04EA ; G 992 -U 1259 ; WX 602 ; N uni04EB ; G 993 -U 1260 ; WX 602 ; N uni04EC ; G 994 -U 1261 ; WX 602 ; N uni04ED ; G 995 -U 1262 ; WX 602 ; N uni04EE ; G 996 -U 1263 ; WX 602 ; N uni04EF ; G 997 -U 1264 ; WX 602 ; N uni04F0 ; G 998 -U 1265 ; WX 602 ; N uni04F1 ; G 999 -U 1266 ; WX 602 ; N uni04F2 ; G 1000 -U 1267 ; WX 602 ; N uni04F3 ; G 1001 -U 1268 ; WX 602 ; N uni04F4 ; G 1002 -U 1269 ; WX 602 ; N uni04F5 ; G 1003 -U 1270 ; WX 602 ; N uni04F6 ; G 1004 -U 1271 ; WX 602 ; N uni04F7 ; G 1005 -U 1272 ; WX 602 ; N uni04F8 ; G 1006 -U 1273 ; WX 602 ; N uni04F9 ; G 1007 -U 1296 ; WX 602 ; N uni0510 ; G 1008 -U 1297 ; WX 602 ; N uni0511 ; G 1009 -U 1306 ; WX 602 ; N uni051A ; G 1010 -U 1307 ; WX 602 ; N uni051B ; G 1011 -U 1308 ; WX 602 ; N uni051C ; G 1012 -U 1309 ; WX 602 ; N uni051D ; G 1013 -U 1329 ; WX 602 ; N uni0531 ; G 1014 -U 1330 ; WX 602 ; N uni0532 ; G 1015 -U 1331 ; WX 602 ; N uni0533 ; G 1016 -U 1332 ; WX 602 ; N uni0534 ; G 1017 -U 1333 ; WX 602 ; N uni0535 ; G 1018 -U 1334 ; WX 602 ; N uni0536 ; G 1019 -U 1335 ; WX 602 ; N uni0537 ; G 1020 -U 1336 ; WX 602 ; N uni0538 ; G 1021 -U 1337 ; WX 602 ; N uni0539 ; G 1022 -U 1338 ; WX 602 ; N uni053A ; G 1023 -U 1339 ; WX 602 ; N uni053B ; G 1024 -U 1340 ; WX 602 ; N uni053C ; G 1025 -U 1341 ; WX 602 ; N uni053D ; G 1026 -U 1342 ; WX 602 ; N uni053E ; G 1027 -U 1343 ; WX 602 ; N uni053F ; G 1028 -U 1344 ; WX 602 ; N uni0540 ; G 1029 -U 1345 ; WX 602 ; N uni0541 ; G 1030 -U 1346 ; WX 602 ; N uni0542 ; G 1031 -U 1347 ; WX 602 ; N uni0543 ; G 1032 -U 1348 ; WX 602 ; N uni0544 ; G 1033 -U 1349 ; WX 602 ; N uni0545 ; G 1034 -U 1350 ; WX 602 ; N uni0546 ; G 1035 -U 1351 ; WX 602 ; N uni0547 ; G 1036 -U 1352 ; WX 602 ; N uni0548 ; G 1037 -U 1353 ; WX 602 ; N uni0549 ; G 1038 -U 1354 ; WX 602 ; N uni054A ; G 1039 -U 1355 ; WX 602 ; N uni054B ; G 1040 -U 1356 ; WX 602 ; N uni054C ; G 1041 -U 1357 ; WX 602 ; N uni054D ; G 1042 -U 1358 ; WX 602 ; N uni054E ; G 1043 -U 1359 ; WX 602 ; N uni054F ; G 1044 -U 1360 ; WX 602 ; N uni0550 ; G 1045 -U 1361 ; WX 602 ; N uni0551 ; G 1046 -U 1362 ; WX 602 ; N uni0552 ; G 1047 -U 1363 ; WX 602 ; N uni0553 ; G 1048 -U 1364 ; WX 602 ; N uni0554 ; G 1049 -U 1365 ; WX 602 ; N uni0555 ; G 1050 -U 1366 ; WX 602 ; N uni0556 ; G 1051 -U 1369 ; WX 602 ; N uni0559 ; G 1052 -U 1370 ; WX 602 ; N uni055A ; G 1053 -U 1371 ; WX 602 ; N uni055B ; G 1054 -U 1372 ; WX 602 ; N uni055C ; G 1055 -U 1373 ; WX 602 ; N uni055D ; G 1056 -U 1374 ; WX 602 ; N uni055E ; G 1057 -U 1375 ; WX 602 ; N uni055F ; G 1058 -U 1377 ; WX 602 ; N uni0561 ; G 1059 -U 1378 ; WX 602 ; N uni0562 ; G 1060 -U 1379 ; WX 602 ; N uni0563 ; G 1061 -U 1380 ; WX 602 ; N uni0564 ; G 1062 -U 1381 ; WX 602 ; N uni0565 ; G 1063 -U 1382 ; WX 602 ; N uni0566 ; G 1064 -U 1383 ; WX 602 ; N uni0567 ; G 1065 -U 1384 ; WX 602 ; N uni0568 ; G 1066 -U 1385 ; WX 602 ; N uni0569 ; G 1067 -U 1386 ; WX 602 ; N uni056A ; G 1068 -U 1387 ; WX 602 ; N uni056B ; G 1069 -U 1388 ; WX 602 ; N uni056C ; G 1070 -U 1389 ; WX 602 ; N uni056D ; G 1071 -U 1390 ; WX 602 ; N uni056E ; G 1072 -U 1391 ; WX 602 ; N uni056F ; G 1073 -U 1392 ; WX 602 ; N uni0570 ; G 1074 -U 1393 ; WX 602 ; N uni0571 ; G 1075 -U 1394 ; WX 602 ; N uni0572 ; G 1076 -U 1395 ; WX 602 ; N uni0573 ; G 1077 -U 1396 ; WX 602 ; N uni0574 ; G 1078 -U 1397 ; WX 602 ; N uni0575 ; G 1079 -U 1398 ; WX 602 ; N uni0576 ; G 1080 -U 1399 ; WX 602 ; N uni0577 ; G 1081 -U 1400 ; WX 602 ; N uni0578 ; G 1082 -U 1401 ; WX 602 ; N uni0579 ; G 1083 -U 1402 ; WX 602 ; N uni057A ; G 1084 -U 1403 ; WX 602 ; N uni057B ; G 1085 -U 1404 ; WX 602 ; N uni057C ; G 1086 -U 1405 ; WX 602 ; N uni057D ; G 1087 -U 1406 ; WX 602 ; N uni057E ; G 1088 -U 1407 ; WX 602 ; N uni057F ; G 1089 -U 1408 ; WX 602 ; N uni0580 ; G 1090 -U 1409 ; WX 602 ; N uni0581 ; G 1091 -U 1410 ; WX 602 ; N uni0582 ; G 1092 -U 1411 ; WX 602 ; N uni0583 ; G 1093 -U 1412 ; WX 602 ; N uni0584 ; G 1094 -U 1413 ; WX 602 ; N uni0585 ; G 1095 -U 1414 ; WX 602 ; N uni0586 ; G 1096 -U 1415 ; WX 602 ; N uni0587 ; G 1097 -U 1417 ; WX 602 ; N uni0589 ; G 1098 -U 1418 ; WX 602 ; N uni058A ; G 1099 -U 3647 ; WX 602 ; N uni0E3F ; G 1100 -U 3713 ; WX 602 ; N uni0E81 ; G 1101 -U 3714 ; WX 602 ; N uni0E82 ; G 1102 -U 3716 ; WX 602 ; N uni0E84 ; G 1103 -U 3719 ; WX 602 ; N uni0E87 ; G 1104 -U 3720 ; WX 602 ; N uni0E88 ; G 1105 -U 3722 ; WX 602 ; N uni0E8A ; G 1106 -U 3725 ; WX 602 ; N uni0E8D ; G 1107 -U 3732 ; WX 602 ; N uni0E94 ; G 1108 -U 3733 ; WX 602 ; N uni0E95 ; G 1109 -U 3734 ; WX 602 ; N uni0E96 ; G 1110 -U 3735 ; WX 602 ; N uni0E97 ; G 1111 -U 3737 ; WX 602 ; N uni0E99 ; G 1112 -U 3738 ; WX 602 ; N uni0E9A ; G 1113 -U 3739 ; WX 602 ; N uni0E9B ; G 1114 -U 3740 ; WX 602 ; N uni0E9C ; G 1115 -U 3741 ; WX 602 ; N uni0E9D ; G 1116 -U 3742 ; WX 602 ; N uni0E9E ; G 1117 -U 3743 ; WX 602 ; N uni0E9F ; G 1118 -U 3745 ; WX 602 ; N uni0EA1 ; G 1119 -U 3746 ; WX 602 ; N uni0EA2 ; G 1120 -U 3747 ; WX 602 ; N uni0EA3 ; G 1121 -U 3749 ; WX 602 ; N uni0EA5 ; G 1122 -U 3751 ; WX 602 ; N uni0EA7 ; G 1123 -U 3754 ; WX 602 ; N uni0EAA ; G 1124 -U 3755 ; WX 602 ; N uni0EAB ; G 1125 -U 3757 ; WX 602 ; N uni0EAD ; G 1126 -U 3758 ; WX 602 ; N uni0EAE ; G 1127 -U 3759 ; WX 602 ; N uni0EAF ; G 1128 -U 3760 ; WX 602 ; N uni0EB0 ; G 1129 -U 3761 ; WX 602 ; N uni0EB1 ; G 1130 -U 3762 ; WX 602 ; N uni0EB2 ; G 1131 -U 3763 ; WX 602 ; N uni0EB3 ; G 1132 -U 3764 ; WX 602 ; N uni0EB4 ; G 1133 -U 3765 ; WX 602 ; N uni0EB5 ; G 1134 -U 3766 ; WX 602 ; N uni0EB6 ; G 1135 -U 3767 ; WX 602 ; N uni0EB7 ; G 1136 -U 3768 ; WX 602 ; N uni0EB8 ; G 1137 -U 3769 ; WX 602 ; N uni0EB9 ; G 1138 -U 3771 ; WX 602 ; N uni0EBB ; G 1139 -U 3772 ; WX 602 ; N uni0EBC ; G 1140 -U 3784 ; WX 602 ; N uni0EC8 ; G 1141 -U 3785 ; WX 602 ; N uni0EC9 ; G 1142 -U 3786 ; WX 602 ; N uni0ECA ; G 1143 -U 3787 ; WX 602 ; N uni0ECB ; G 1144 -U 3788 ; WX 602 ; N uni0ECC ; G 1145 -U 3789 ; WX 602 ; N uni0ECD ; G 1146 -U 4304 ; WX 602 ; N uni10D0 ; G 1147 -U 4305 ; WX 602 ; N uni10D1 ; G 1148 -U 4306 ; WX 602 ; N uni10D2 ; G 1149 -U 4307 ; WX 602 ; N uni10D3 ; G 1150 -U 4308 ; WX 602 ; N uni10D4 ; G 1151 -U 4309 ; WX 602 ; N uni10D5 ; G 1152 -U 4310 ; WX 602 ; N uni10D6 ; G 1153 -U 4311 ; WX 602 ; N uni10D7 ; G 1154 -U 4312 ; WX 602 ; N uni10D8 ; G 1155 -U 4313 ; WX 602 ; N uni10D9 ; G 1156 -U 4314 ; WX 602 ; N uni10DA ; G 1157 -U 4315 ; WX 602 ; N uni10DB ; G 1158 -U 4316 ; WX 602 ; N uni10DC ; G 1159 -U 4317 ; WX 602 ; N uni10DD ; G 1160 -U 4318 ; WX 602 ; N uni10DE ; G 1161 -U 4319 ; WX 602 ; N uni10DF ; G 1162 -U 4320 ; WX 602 ; N uni10E0 ; G 1163 -U 4321 ; WX 602 ; N uni10E1 ; G 1164 -U 4322 ; WX 602 ; N uni10E2 ; G 1165 -U 4323 ; WX 602 ; N uni10E3 ; G 1166 -U 4324 ; WX 602 ; N uni10E4 ; G 1167 -U 4325 ; WX 602 ; N uni10E5 ; G 1168 -U 4326 ; WX 602 ; N uni10E6 ; G 1169 -U 4327 ; WX 602 ; N uni10E7 ; G 1170 -U 4328 ; WX 602 ; N uni10E8 ; G 1171 -U 4329 ; WX 602 ; N uni10E9 ; G 1172 -U 4330 ; WX 602 ; N uni10EA ; G 1173 -U 4331 ; WX 602 ; N uni10EB ; G 1174 -U 4332 ; WX 602 ; N uni10EC ; G 1175 -U 4333 ; WX 602 ; N uni10ED ; G 1176 -U 4334 ; WX 602 ; N uni10EE ; G 1177 -U 4335 ; WX 602 ; N uni10EF ; G 1178 -U 4336 ; WX 602 ; N uni10F0 ; G 1179 -U 4337 ; WX 602 ; N uni10F1 ; G 1180 -U 4338 ; WX 602 ; N uni10F2 ; G 1181 -U 4339 ; WX 602 ; N uni10F3 ; G 1182 -U 4340 ; WX 602 ; N uni10F4 ; G 1183 -U 4341 ; WX 602 ; N uni10F5 ; G 1184 -U 4342 ; WX 602 ; N uni10F6 ; G 1185 -U 4343 ; WX 602 ; N uni10F7 ; G 1186 -U 4344 ; WX 602 ; N uni10F8 ; G 1187 -U 4345 ; WX 602 ; N uni10F9 ; G 1188 -U 4346 ; WX 602 ; N uni10FA ; G 1189 -U 4347 ; WX 602 ; N uni10FB ; G 1190 -U 4348 ; WX 602 ; N uni10FC ; G 1191 -U 7426 ; WX 602 ; N uni1D02 ; G 1192 -U 7432 ; WX 602 ; N uni1D08 ; G 1193 -U 7433 ; WX 602 ; N uni1D09 ; G 1194 -U 7444 ; WX 602 ; N uni1D14 ; G 1195 -U 7446 ; WX 602 ; N uni1D16 ; G 1196 -U 7447 ; WX 602 ; N uni1D17 ; G 1197 -U 7453 ; WX 602 ; N uni1D1D ; G 1198 -U 7454 ; WX 602 ; N uni1D1E ; G 1199 -U 7455 ; WX 602 ; N uni1D1F ; G 1200 -U 7468 ; WX 602 ; N uni1D2C ; G 1201 -U 7469 ; WX 602 ; N uni1D2D ; G 1202 -U 7470 ; WX 602 ; N uni1D2E ; G 1203 -U 7472 ; WX 602 ; N uni1D30 ; G 1204 -U 7473 ; WX 602 ; N uni1D31 ; G 1205 -U 7474 ; WX 602 ; N uni1D32 ; G 1206 -U 7475 ; WX 602 ; N uni1D33 ; G 1207 -U 7476 ; WX 602 ; N uni1D34 ; G 1208 -U 7477 ; WX 602 ; N uni1D35 ; G 1209 -U 7478 ; WX 602 ; N uni1D36 ; G 1210 -U 7479 ; WX 602 ; N uni1D37 ; G 1211 -U 7480 ; WX 602 ; N uni1D38 ; G 1212 -U 7481 ; WX 602 ; N uni1D39 ; G 1213 -U 7482 ; WX 602 ; N uni1D3A ; G 1214 -U 7483 ; WX 602 ; N uni1D3B ; G 1215 -U 7484 ; WX 602 ; N uni1D3C ; G 1216 -U 7485 ; WX 602 ; N uni1D3D ; G 1217 -U 7486 ; WX 602 ; N uni1D3E ; G 1218 -U 7487 ; WX 602 ; N uni1D3F ; G 1219 -U 7488 ; WX 602 ; N uni1D40 ; G 1220 -U 7489 ; WX 602 ; N uni1D41 ; G 1221 -U 7490 ; WX 602 ; N uni1D42 ; G 1222 -U 7491 ; WX 602 ; N uni1D43 ; G 1223 -U 7492 ; WX 602 ; N uni1D44 ; G 1224 -U 7493 ; WX 602 ; N uni1D45 ; G 1225 -U 7494 ; WX 602 ; N uni1D46 ; G 1226 -U 7495 ; WX 602 ; N uni1D47 ; G 1227 -U 7496 ; WX 602 ; N uni1D48 ; G 1228 -U 7497 ; WX 602 ; N uni1D49 ; G 1229 -U 7498 ; WX 602 ; N uni1D4A ; G 1230 -U 7499 ; WX 602 ; N uni1D4B ; G 1231 -U 7500 ; WX 602 ; N uni1D4C ; G 1232 -U 7501 ; WX 602 ; N uni1D4D ; G 1233 -U 7502 ; WX 602 ; N uni1D4E ; G 1234 -U 7503 ; WX 602 ; N uni1D4F ; G 1235 -U 7504 ; WX 602 ; N uni1D50 ; G 1236 -U 7505 ; WX 602 ; N uni1D51 ; G 1237 -U 7506 ; WX 602 ; N uni1D52 ; G 1238 -U 7507 ; WX 602 ; N uni1D53 ; G 1239 -U 7508 ; WX 602 ; N uni1D54 ; G 1240 -U 7509 ; WX 602 ; N uni1D55 ; G 1241 -U 7510 ; WX 602 ; N uni1D56 ; G 1242 -U 7511 ; WX 602 ; N uni1D57 ; G 1243 -U 7512 ; WX 602 ; N uni1D58 ; G 1244 -U 7513 ; WX 602 ; N uni1D59 ; G 1245 -U 7514 ; WX 602 ; N uni1D5A ; G 1246 -U 7515 ; WX 602 ; N uni1D5B ; G 1247 -U 7522 ; WX 602 ; N uni1D62 ; G 1248 -U 7523 ; WX 602 ; N uni1D63 ; G 1249 -U 7524 ; WX 602 ; N uni1D64 ; G 1250 -U 7525 ; WX 602 ; N uni1D65 ; G 1251 -U 7543 ; WX 602 ; N uni1D77 ; G 1252 -U 7544 ; WX 602 ; N uni1D78 ; G 1253 -U 7547 ; WX 602 ; N uni1D7B ; G 1254 -U 7557 ; WX 602 ; N uni1D85 ; G 1255 -U 7579 ; WX 602 ; N uni1D9B ; G 1256 -U 7580 ; WX 602 ; N uni1D9C ; G 1257 -U 7581 ; WX 602 ; N uni1D9D ; G 1258 -U 7582 ; WX 602 ; N uni1D9E ; G 1259 -U 7583 ; WX 602 ; N uni1D9F ; G 1260 -U 7584 ; WX 602 ; N uni1DA0 ; G 1261 -U 7585 ; WX 602 ; N uni1DA1 ; G 1262 -U 7586 ; WX 602 ; N uni1DA2 ; G 1263 -U 7587 ; WX 602 ; N uni1DA3 ; G 1264 -U 7588 ; WX 602 ; N uni1DA4 ; G 1265 -U 7589 ; WX 602 ; N uni1DA5 ; G 1266 -U 7590 ; WX 602 ; N uni1DA6 ; G 1267 -U 7591 ; WX 602 ; N uni1DA7 ; G 1268 -U 7592 ; WX 602 ; N uni1DA8 ; G 1269 -U 7593 ; WX 602 ; N uni1DA9 ; G 1270 -U 7594 ; WX 602 ; N uni1DAA ; G 1271 -U 7595 ; WX 602 ; N uni1DAB ; G 1272 -U 7596 ; WX 602 ; N uni1DAC ; G 1273 -U 7597 ; WX 602 ; N uni1DAD ; G 1274 -U 7598 ; WX 602 ; N uni1DAE ; G 1275 -U 7599 ; WX 602 ; N uni1DAF ; G 1276 -U 7600 ; WX 602 ; N uni1DB0 ; G 1277 -U 7601 ; WX 602 ; N uni1DB1 ; G 1278 -U 7602 ; WX 602 ; N uni1DB2 ; G 1279 -U 7603 ; WX 602 ; N uni1DB3 ; G 1280 -U 7604 ; WX 602 ; N uni1DB4 ; G 1281 -U 7605 ; WX 602 ; N uni1DB5 ; G 1282 -U 7606 ; WX 602 ; N uni1DB6 ; G 1283 -U 7607 ; WX 602 ; N uni1DB7 ; G 1284 -U 7609 ; WX 602 ; N uni1DB9 ; G 1285 -U 7610 ; WX 602 ; N uni1DBA ; G 1286 -U 7611 ; WX 602 ; N uni1DBB ; G 1287 -U 7612 ; WX 602 ; N uni1DBC ; G 1288 -U 7613 ; WX 602 ; N uni1DBD ; G 1289 -U 7614 ; WX 602 ; N uni1DBE ; G 1290 -U 7615 ; WX 602 ; N uni1DBF ; G 1291 -U 7680 ; WX 602 ; N uni1E00 ; G 1292 -U 7681 ; WX 602 ; N uni1E01 ; G 1293 -U 7682 ; WX 602 ; N uni1E02 ; G 1294 -U 7683 ; WX 602 ; N uni1E03 ; G 1295 -U 7684 ; WX 602 ; N uni1E04 ; G 1296 -U 7685 ; WX 602 ; N uni1E05 ; G 1297 -U 7686 ; WX 602 ; N uni1E06 ; G 1298 -U 7687 ; WX 602 ; N uni1E07 ; G 1299 -U 7688 ; WX 602 ; N uni1E08 ; G 1300 -U 7689 ; WX 602 ; N uni1E09 ; G 1301 -U 7690 ; WX 602 ; N uni1E0A ; G 1302 -U 7691 ; WX 602 ; N uni1E0B ; G 1303 -U 7692 ; WX 602 ; N uni1E0C ; G 1304 -U 7693 ; WX 602 ; N uni1E0D ; G 1305 -U 7694 ; WX 602 ; N uni1E0E ; G 1306 -U 7695 ; WX 602 ; N uni1E0F ; G 1307 -U 7696 ; WX 602 ; N uni1E10 ; G 1308 -U 7697 ; WX 602 ; N uni1E11 ; G 1309 -U 7698 ; WX 602 ; N uni1E12 ; G 1310 -U 7699 ; WX 602 ; N uni1E13 ; G 1311 -U 7704 ; WX 602 ; N uni1E18 ; G 1312 -U 7705 ; WX 602 ; N uni1E19 ; G 1313 -U 7706 ; WX 602 ; N uni1E1A ; G 1314 -U 7707 ; WX 602 ; N uni1E1B ; G 1315 -U 7708 ; WX 602 ; N uni1E1C ; G 1316 -U 7709 ; WX 602 ; N uni1E1D ; G 1317 -U 7710 ; WX 602 ; N uni1E1E ; G 1318 -U 7711 ; WX 602 ; N uni1E1F ; G 1319 -U 7712 ; WX 602 ; N uni1E20 ; G 1320 -U 7713 ; WX 602 ; N uni1E21 ; G 1321 -U 7714 ; WX 602 ; N uni1E22 ; G 1322 -U 7715 ; WX 602 ; N uni1E23 ; G 1323 -U 7716 ; WX 602 ; N uni1E24 ; G 1324 -U 7717 ; WX 602 ; N uni1E25 ; G 1325 -U 7718 ; WX 602 ; N uni1E26 ; G 1326 -U 7719 ; WX 602 ; N uni1E27 ; G 1327 -U 7720 ; WX 602 ; N uni1E28 ; G 1328 -U 7721 ; WX 602 ; N uni1E29 ; G 1329 -U 7722 ; WX 602 ; N uni1E2A ; G 1330 -U 7723 ; WX 602 ; N uni1E2B ; G 1331 -U 7724 ; WX 602 ; N uni1E2C ; G 1332 -U 7725 ; WX 602 ; N uni1E2D ; G 1333 -U 7728 ; WX 602 ; N uni1E30 ; G 1334 -U 7729 ; WX 602 ; N uni1E31 ; G 1335 -U 7730 ; WX 602 ; N uni1E32 ; G 1336 -U 7731 ; WX 602 ; N uni1E33 ; G 1337 -U 7732 ; WX 602 ; N uni1E34 ; G 1338 -U 7733 ; WX 602 ; N uni1E35 ; G 1339 -U 7734 ; WX 602 ; N uni1E36 ; G 1340 -U 7735 ; WX 602 ; N uni1E37 ; G 1341 -U 7736 ; WX 602 ; N uni1E38 ; G 1342 -U 7737 ; WX 602 ; N uni1E39 ; G 1343 -U 7738 ; WX 602 ; N uni1E3A ; G 1344 -U 7739 ; WX 602 ; N uni1E3B ; G 1345 -U 7740 ; WX 602 ; N uni1E3C ; G 1346 -U 7741 ; WX 602 ; N uni1E3D ; G 1347 -U 7742 ; WX 602 ; N uni1E3E ; G 1348 -U 7743 ; WX 602 ; N uni1E3F ; G 1349 -U 7744 ; WX 602 ; N uni1E40 ; G 1350 -U 7745 ; WX 602 ; N uni1E41 ; G 1351 -U 7746 ; WX 602 ; N uni1E42 ; G 1352 -U 7747 ; WX 602 ; N uni1E43 ; G 1353 -U 7748 ; WX 602 ; N uni1E44 ; G 1354 -U 7749 ; WX 602 ; N uni1E45 ; G 1355 -U 7750 ; WX 602 ; N uni1E46 ; G 1356 -U 7751 ; WX 602 ; N uni1E47 ; G 1357 -U 7752 ; WX 602 ; N uni1E48 ; G 1358 -U 7753 ; WX 602 ; N uni1E49 ; G 1359 -U 7754 ; WX 602 ; N uni1E4A ; G 1360 -U 7755 ; WX 602 ; N uni1E4B ; G 1361 -U 7756 ; WX 602 ; N uni1E4C ; G 1362 -U 7757 ; WX 602 ; N uni1E4D ; G 1363 -U 7764 ; WX 602 ; N uni1E54 ; G 1364 -U 7765 ; WX 602 ; N uni1E55 ; G 1365 -U 7766 ; WX 602 ; N uni1E56 ; G 1366 -U 7767 ; WX 602 ; N uni1E57 ; G 1367 -U 7768 ; WX 602 ; N uni1E58 ; G 1368 -U 7769 ; WX 602 ; N uni1E59 ; G 1369 -U 7770 ; WX 602 ; N uni1E5A ; G 1370 -U 7771 ; WX 602 ; N uni1E5B ; G 1371 -U 7772 ; WX 602 ; N uni1E5C ; G 1372 -U 7773 ; WX 602 ; N uni1E5D ; G 1373 -U 7774 ; WX 602 ; N uni1E5E ; G 1374 -U 7775 ; WX 602 ; N uni1E5F ; G 1375 -U 7776 ; WX 602 ; N uni1E60 ; G 1376 -U 7777 ; WX 602 ; N uni1E61 ; G 1377 -U 7778 ; WX 602 ; N uni1E62 ; G 1378 -U 7779 ; WX 602 ; N uni1E63 ; G 1379 -U 7784 ; WX 602 ; N uni1E68 ; G 1380 -U 7785 ; WX 602 ; N uni1E69 ; G 1381 -U 7786 ; WX 602 ; N uni1E6A ; G 1382 -U 7787 ; WX 602 ; N uni1E6B ; G 1383 -U 7788 ; WX 602 ; N uni1E6C ; G 1384 -U 7789 ; WX 602 ; N uni1E6D ; G 1385 -U 7790 ; WX 602 ; N uni1E6E ; G 1386 -U 7791 ; WX 602 ; N uni1E6F ; G 1387 -U 7792 ; WX 602 ; N uni1E70 ; G 1388 -U 7793 ; WX 602 ; N uni1E71 ; G 1389 -U 7794 ; WX 602 ; N uni1E72 ; G 1390 -U 7795 ; WX 602 ; N uni1E73 ; G 1391 -U 7796 ; WX 602 ; N uni1E74 ; G 1392 -U 7797 ; WX 602 ; N uni1E75 ; G 1393 -U 7798 ; WX 602 ; N uni1E76 ; G 1394 -U 7799 ; WX 602 ; N uni1E77 ; G 1395 -U 7800 ; WX 602 ; N uni1E78 ; G 1396 -U 7801 ; WX 602 ; N uni1E79 ; G 1397 -U 7804 ; WX 602 ; N uni1E7C ; G 1398 -U 7805 ; WX 602 ; N uni1E7D ; G 1399 -U 7806 ; WX 602 ; N uni1E7E ; G 1400 -U 7807 ; WX 602 ; N uni1E7F ; G 1401 -U 7808 ; WX 602 ; N Wgrave ; G 1402 -U 7809 ; WX 602 ; N wgrave ; G 1403 -U 7810 ; WX 602 ; N Wacute ; G 1404 -U 7811 ; WX 602 ; N wacute ; G 1405 -U 7812 ; WX 602 ; N Wdieresis ; G 1406 -U 7813 ; WX 602 ; N wdieresis ; G 1407 -U 7814 ; WX 602 ; N uni1E86 ; G 1408 -U 7815 ; WX 602 ; N uni1E87 ; G 1409 -U 7816 ; WX 602 ; N uni1E88 ; G 1410 -U 7817 ; WX 602 ; N uni1E89 ; G 1411 -U 7818 ; WX 602 ; N uni1E8A ; G 1412 -U 7819 ; WX 602 ; N uni1E8B ; G 1413 -U 7820 ; WX 602 ; N uni1E8C ; G 1414 -U 7821 ; WX 602 ; N uni1E8D ; G 1415 -U 7822 ; WX 602 ; N uni1E8E ; G 1416 -U 7823 ; WX 602 ; N uni1E8F ; G 1417 -U 7824 ; WX 602 ; N uni1E90 ; G 1418 -U 7825 ; WX 602 ; N uni1E91 ; G 1419 -U 7826 ; WX 602 ; N uni1E92 ; G 1420 -U 7827 ; WX 602 ; N uni1E93 ; G 1421 -U 7828 ; WX 602 ; N uni1E94 ; G 1422 -U 7829 ; WX 602 ; N uni1E95 ; G 1423 -U 7830 ; WX 602 ; N uni1E96 ; G 1424 -U 7831 ; WX 602 ; N uni1E97 ; G 1425 -U 7832 ; WX 602 ; N uni1E98 ; G 1426 -U 7833 ; WX 602 ; N uni1E99 ; G 1427 -U 7835 ; WX 602 ; N uni1E9B ; G 1428 -U 7839 ; WX 602 ; N uni1E9F ; G 1429 -U 7840 ; WX 602 ; N uni1EA0 ; G 1430 -U 7841 ; WX 602 ; N uni1EA1 ; G 1431 -U 7852 ; WX 602 ; N uni1EAC ; G 1432 -U 7853 ; WX 602 ; N uni1EAD ; G 1433 -U 7856 ; WX 602 ; N uni1EB0 ; G 1434 -U 7857 ; WX 602 ; N uni1EB1 ; G 1435 -U 7862 ; WX 602 ; N uni1EB6 ; G 1436 -U 7863 ; WX 602 ; N uni1EB7 ; G 1437 -U 7864 ; WX 602 ; N uni1EB8 ; G 1438 -U 7865 ; WX 602 ; N uni1EB9 ; G 1439 -U 7868 ; WX 602 ; N uni1EBC ; G 1440 -U 7869 ; WX 602 ; N uni1EBD ; G 1441 -U 7878 ; WX 602 ; N uni1EC6 ; G 1442 -U 7879 ; WX 602 ; N uni1EC7 ; G 1443 -U 7882 ; WX 602 ; N uni1ECA ; G 1444 -U 7883 ; WX 602 ; N uni1ECB ; G 1445 -U 7884 ; WX 602 ; N uni1ECC ; G 1446 -U 7885 ; WX 602 ; N uni1ECD ; G 1447 -U 7896 ; WX 602 ; N uni1ED8 ; G 1448 -U 7897 ; WX 602 ; N uni1ED9 ; G 1449 -U 7898 ; WX 602 ; N uni1EDA ; G 1450 -U 7899 ; WX 602 ; N uni1EDB ; G 1451 -U 7900 ; WX 602 ; N uni1EDC ; G 1452 -U 7901 ; WX 602 ; N uni1EDD ; G 1453 -U 7904 ; WX 602 ; N uni1EE0 ; G 1454 -U 7905 ; WX 602 ; N uni1EE1 ; G 1455 -U 7906 ; WX 602 ; N uni1EE2 ; G 1456 -U 7907 ; WX 602 ; N uni1EE3 ; G 1457 -U 7908 ; WX 602 ; N uni1EE4 ; G 1458 -U 7909 ; WX 602 ; N uni1EE5 ; G 1459 -U 7912 ; WX 602 ; N uni1EE8 ; G 1460 -U 7913 ; WX 602 ; N uni1EE9 ; G 1461 -U 7914 ; WX 602 ; N uni1EEA ; G 1462 -U 7915 ; WX 602 ; N uni1EEB ; G 1463 -U 7918 ; WX 602 ; N uni1EEE ; G 1464 -U 7919 ; WX 602 ; N uni1EEF ; G 1465 -U 7920 ; WX 602 ; N uni1EF0 ; G 1466 -U 7921 ; WX 602 ; N uni1EF1 ; G 1467 -U 7922 ; WX 602 ; N Ygrave ; G 1468 -U 7923 ; WX 602 ; N ygrave ; G 1469 -U 7924 ; WX 602 ; N uni1EF4 ; G 1470 -U 7925 ; WX 602 ; N uni1EF5 ; G 1471 -U 7928 ; WX 602 ; N uni1EF8 ; G 1472 -U 7929 ; WX 602 ; N uni1EF9 ; G 1473 -U 7936 ; WX 602 ; N uni1F00 ; G 1474 -U 7937 ; WX 602 ; N uni1F01 ; G 1475 -U 7938 ; WX 602 ; N uni1F02 ; G 1476 -U 7939 ; WX 602 ; N uni1F03 ; G 1477 -U 7940 ; WX 602 ; N uni1F04 ; G 1478 -U 7941 ; WX 602 ; N uni1F05 ; G 1479 -U 7942 ; WX 602 ; N uni1F06 ; G 1480 -U 7943 ; WX 602 ; N uni1F07 ; G 1481 -U 7944 ; WX 602 ; N uni1F08 ; G 1482 -U 7945 ; WX 602 ; N uni1F09 ; G 1483 -U 7946 ; WX 602 ; N uni1F0A ; G 1484 -U 7947 ; WX 602 ; N uni1F0B ; G 1485 -U 7948 ; WX 602 ; N uni1F0C ; G 1486 -U 7949 ; WX 602 ; N uni1F0D ; G 1487 -U 7950 ; WX 602 ; N uni1F0E ; G 1488 -U 7951 ; WX 602 ; N uni1F0F ; G 1489 -U 7952 ; WX 602 ; N uni1F10 ; G 1490 -U 7953 ; WX 602 ; N uni1F11 ; G 1491 -U 7954 ; WX 602 ; N uni1F12 ; G 1492 -U 7955 ; WX 602 ; N uni1F13 ; G 1493 -U 7956 ; WX 602 ; N uni1F14 ; G 1494 -U 7957 ; WX 602 ; N uni1F15 ; G 1495 -U 7960 ; WX 602 ; N uni1F18 ; G 1496 -U 7961 ; WX 602 ; N uni1F19 ; G 1497 -U 7962 ; WX 602 ; N uni1F1A ; G 1498 -U 7963 ; WX 602 ; N uni1F1B ; G 1499 -U 7964 ; WX 602 ; N uni1F1C ; G 1500 -U 7965 ; WX 602 ; N uni1F1D ; G 1501 -U 7968 ; WX 602 ; N uni1F20 ; G 1502 -U 7969 ; WX 602 ; N uni1F21 ; G 1503 -U 7970 ; WX 602 ; N uni1F22 ; G 1504 -U 7971 ; WX 602 ; N uni1F23 ; G 1505 -U 7972 ; WX 602 ; N uni1F24 ; G 1506 -U 7973 ; WX 602 ; N uni1F25 ; G 1507 -U 7974 ; WX 602 ; N uni1F26 ; G 1508 -U 7975 ; WX 602 ; N uni1F27 ; G 1509 -U 7976 ; WX 602 ; N uni1F28 ; G 1510 -U 7977 ; WX 602 ; N uni1F29 ; G 1511 -U 7978 ; WX 602 ; N uni1F2A ; G 1512 -U 7979 ; WX 602 ; N uni1F2B ; G 1513 -U 7980 ; WX 602 ; N uni1F2C ; G 1514 -U 7981 ; WX 602 ; N uni1F2D ; G 1515 -U 7982 ; WX 602 ; N uni1F2E ; G 1516 -U 7983 ; WX 602 ; N uni1F2F ; G 1517 -U 7984 ; WX 602 ; N uni1F30 ; G 1518 -U 7985 ; WX 602 ; N uni1F31 ; G 1519 -U 7986 ; WX 602 ; N uni1F32 ; G 1520 -U 7987 ; WX 602 ; N uni1F33 ; G 1521 -U 7988 ; WX 602 ; N uni1F34 ; G 1522 -U 7989 ; WX 602 ; N uni1F35 ; G 1523 -U 7990 ; WX 602 ; N uni1F36 ; G 1524 -U 7991 ; WX 602 ; N uni1F37 ; G 1525 -U 7992 ; WX 602 ; N uni1F38 ; G 1526 -U 7993 ; WX 602 ; N uni1F39 ; G 1527 -U 7994 ; WX 602 ; N uni1F3A ; G 1528 -U 7995 ; WX 602 ; N uni1F3B ; G 1529 -U 7996 ; WX 602 ; N uni1F3C ; G 1530 -U 7997 ; WX 602 ; N uni1F3D ; G 1531 -U 7998 ; WX 602 ; N uni1F3E ; G 1532 -U 7999 ; WX 602 ; N uni1F3F ; G 1533 -U 8000 ; WX 602 ; N uni1F40 ; G 1534 -U 8001 ; WX 602 ; N uni1F41 ; G 1535 -U 8002 ; WX 602 ; N uni1F42 ; G 1536 -U 8003 ; WX 602 ; N uni1F43 ; G 1537 -U 8004 ; WX 602 ; N uni1F44 ; G 1538 -U 8005 ; WX 602 ; N uni1F45 ; G 1539 -U 8008 ; WX 602 ; N uni1F48 ; G 1540 -U 8009 ; WX 602 ; N uni1F49 ; G 1541 -U 8010 ; WX 602 ; N uni1F4A ; G 1542 -U 8011 ; WX 602 ; N uni1F4B ; G 1543 -U 8012 ; WX 602 ; N uni1F4C ; G 1544 -U 8013 ; WX 602 ; N uni1F4D ; G 1545 -U 8016 ; WX 602 ; N uni1F50 ; G 1546 -U 8017 ; WX 602 ; N uni1F51 ; G 1547 -U 8018 ; WX 602 ; N uni1F52 ; G 1548 -U 8019 ; WX 602 ; N uni1F53 ; G 1549 -U 8020 ; WX 602 ; N uni1F54 ; G 1550 -U 8021 ; WX 602 ; N uni1F55 ; G 1551 -U 8022 ; WX 602 ; N uni1F56 ; G 1552 -U 8023 ; WX 602 ; N uni1F57 ; G 1553 -U 8025 ; WX 602 ; N uni1F59 ; G 1554 -U 8027 ; WX 602 ; N uni1F5B ; G 1555 -U 8029 ; WX 602 ; N uni1F5D ; G 1556 -U 8031 ; WX 602 ; N uni1F5F ; G 1557 -U 8032 ; WX 602 ; N uni1F60 ; G 1558 -U 8033 ; WX 602 ; N uni1F61 ; G 1559 -U 8034 ; WX 602 ; N uni1F62 ; G 1560 -U 8035 ; WX 602 ; N uni1F63 ; G 1561 -U 8036 ; WX 602 ; N uni1F64 ; G 1562 -U 8037 ; WX 602 ; N uni1F65 ; G 1563 -U 8038 ; WX 602 ; N uni1F66 ; G 1564 -U 8039 ; WX 602 ; N uni1F67 ; G 1565 -U 8040 ; WX 602 ; N uni1F68 ; G 1566 -U 8041 ; WX 602 ; N uni1F69 ; G 1567 -U 8042 ; WX 602 ; N uni1F6A ; G 1568 -U 8043 ; WX 602 ; N uni1F6B ; G 1569 -U 8044 ; WX 602 ; N uni1F6C ; G 1570 -U 8045 ; WX 602 ; N uni1F6D ; G 1571 -U 8046 ; WX 602 ; N uni1F6E ; G 1572 -U 8047 ; WX 602 ; N uni1F6F ; G 1573 -U 8048 ; WX 602 ; N uni1F70 ; G 1574 -U 8049 ; WX 602 ; N uni1F71 ; G 1575 -U 8050 ; WX 602 ; N uni1F72 ; G 1576 -U 8051 ; WX 602 ; N uni1F73 ; G 1577 -U 8052 ; WX 602 ; N uni1F74 ; G 1578 -U 8053 ; WX 602 ; N uni1F75 ; G 1579 -U 8054 ; WX 602 ; N uni1F76 ; G 1580 -U 8055 ; WX 602 ; N uni1F77 ; G 1581 -U 8056 ; WX 602 ; N uni1F78 ; G 1582 -U 8057 ; WX 602 ; N uni1F79 ; G 1583 -U 8058 ; WX 602 ; N uni1F7A ; G 1584 -U 8059 ; WX 602 ; N uni1F7B ; G 1585 -U 8060 ; WX 602 ; N uni1F7C ; G 1586 -U 8061 ; WX 602 ; N uni1F7D ; G 1587 -U 8064 ; WX 602 ; N uni1F80 ; G 1588 -U 8065 ; WX 602 ; N uni1F81 ; G 1589 -U 8066 ; WX 602 ; N uni1F82 ; G 1590 -U 8067 ; WX 602 ; N uni1F83 ; G 1591 -U 8068 ; WX 602 ; N uni1F84 ; G 1592 -U 8069 ; WX 602 ; N uni1F85 ; G 1593 -U 8070 ; WX 602 ; N uni1F86 ; G 1594 -U 8071 ; WX 602 ; N uni1F87 ; G 1595 -U 8072 ; WX 602 ; N uni1F88 ; G 1596 -U 8073 ; WX 602 ; N uni1F89 ; G 1597 -U 8074 ; WX 602 ; N uni1F8A ; G 1598 -U 8075 ; WX 602 ; N uni1F8B ; G 1599 -U 8076 ; WX 602 ; N uni1F8C ; G 1600 -U 8077 ; WX 602 ; N uni1F8D ; G 1601 -U 8078 ; WX 602 ; N uni1F8E ; G 1602 -U 8079 ; WX 602 ; N uni1F8F ; G 1603 -U 8080 ; WX 602 ; N uni1F90 ; G 1604 -U 8081 ; WX 602 ; N uni1F91 ; G 1605 -U 8082 ; WX 602 ; N uni1F92 ; G 1606 -U 8083 ; WX 602 ; N uni1F93 ; G 1607 -U 8084 ; WX 602 ; N uni1F94 ; G 1608 -U 8085 ; WX 602 ; N uni1F95 ; G 1609 -U 8086 ; WX 602 ; N uni1F96 ; G 1610 -U 8087 ; WX 602 ; N uni1F97 ; G 1611 -U 8088 ; WX 602 ; N uni1F98 ; G 1612 -U 8089 ; WX 602 ; N uni1F99 ; G 1613 -U 8090 ; WX 602 ; N uni1F9A ; G 1614 -U 8091 ; WX 602 ; N uni1F9B ; G 1615 -U 8092 ; WX 602 ; N uni1F9C ; G 1616 -U 8093 ; WX 602 ; N uni1F9D ; G 1617 -U 8094 ; WX 602 ; N uni1F9E ; G 1618 -U 8095 ; WX 602 ; N uni1F9F ; G 1619 -U 8096 ; WX 602 ; N uni1FA0 ; G 1620 -U 8097 ; WX 602 ; N uni1FA1 ; G 1621 -U 8098 ; WX 602 ; N uni1FA2 ; G 1622 -U 8099 ; WX 602 ; N uni1FA3 ; G 1623 -U 8100 ; WX 602 ; N uni1FA4 ; G 1624 -U 8101 ; WX 602 ; N uni1FA5 ; G 1625 -U 8102 ; WX 602 ; N uni1FA6 ; G 1626 -U 8103 ; WX 602 ; N uni1FA7 ; G 1627 -U 8104 ; WX 602 ; N uni1FA8 ; G 1628 -U 8105 ; WX 602 ; N uni1FA9 ; G 1629 -U 8106 ; WX 602 ; N uni1FAA ; G 1630 -U 8107 ; WX 602 ; N uni1FAB ; G 1631 -U 8108 ; WX 602 ; N uni1FAC ; G 1632 -U 8109 ; WX 602 ; N uni1FAD ; G 1633 -U 8110 ; WX 602 ; N uni1FAE ; G 1634 -U 8111 ; WX 602 ; N uni1FAF ; G 1635 -U 8112 ; WX 602 ; N uni1FB0 ; G 1636 -U 8113 ; WX 602 ; N uni1FB1 ; G 1637 -U 8114 ; WX 602 ; N uni1FB2 ; G 1638 -U 8115 ; WX 602 ; N uni1FB3 ; G 1639 -U 8116 ; WX 602 ; N uni1FB4 ; G 1640 -U 8118 ; WX 602 ; N uni1FB6 ; G 1641 -U 8119 ; WX 602 ; N uni1FB7 ; G 1642 -U 8120 ; WX 602 ; N uni1FB8 ; G 1643 -U 8121 ; WX 602 ; N uni1FB9 ; G 1644 -U 8122 ; WX 602 ; N uni1FBA ; G 1645 -U 8123 ; WX 602 ; N uni1FBB ; G 1646 -U 8124 ; WX 602 ; N uni1FBC ; G 1647 -U 8125 ; WX 602 ; N uni1FBD ; G 1648 -U 8126 ; WX 602 ; N uni1FBE ; G 1649 -U 8127 ; WX 602 ; N uni1FBF ; G 1650 -U 8128 ; WX 602 ; N uni1FC0 ; G 1651 -U 8129 ; WX 602 ; N uni1FC1 ; G 1652 -U 8130 ; WX 602 ; N uni1FC2 ; G 1653 -U 8131 ; WX 602 ; N uni1FC3 ; G 1654 -U 8132 ; WX 602 ; N uni1FC4 ; G 1655 -U 8134 ; WX 602 ; N uni1FC6 ; G 1656 -U 8135 ; WX 602 ; N uni1FC7 ; G 1657 -U 8136 ; WX 602 ; N uni1FC8 ; G 1658 -U 8137 ; WX 602 ; N uni1FC9 ; G 1659 -U 8138 ; WX 602 ; N uni1FCA ; G 1660 -U 8139 ; WX 602 ; N uni1FCB ; G 1661 -U 8140 ; WX 602 ; N uni1FCC ; G 1662 -U 8141 ; WX 602 ; N uni1FCD ; G 1663 -U 8142 ; WX 602 ; N uni1FCE ; G 1664 -U 8143 ; WX 602 ; N uni1FCF ; G 1665 -U 8144 ; WX 602 ; N uni1FD0 ; G 1666 -U 8145 ; WX 602 ; N uni1FD1 ; G 1667 -U 8146 ; WX 602 ; N uni1FD2 ; G 1668 -U 8147 ; WX 602 ; N uni1FD3 ; G 1669 -U 8150 ; WX 602 ; N uni1FD6 ; G 1670 -U 8151 ; WX 602 ; N uni1FD7 ; G 1671 -U 8152 ; WX 602 ; N uni1FD8 ; G 1672 -U 8153 ; WX 602 ; N uni1FD9 ; G 1673 -U 8154 ; WX 602 ; N uni1FDA ; G 1674 -U 8155 ; WX 602 ; N uni1FDB ; G 1675 -U 8157 ; WX 602 ; N uni1FDD ; G 1676 -U 8158 ; WX 602 ; N uni1FDE ; G 1677 -U 8159 ; WX 602 ; N uni1FDF ; G 1678 -U 8160 ; WX 602 ; N uni1FE0 ; G 1679 -U 8161 ; WX 602 ; N uni1FE1 ; G 1680 -U 8162 ; WX 602 ; N uni1FE2 ; G 1681 -U 8163 ; WX 602 ; N uni1FE3 ; G 1682 -U 8164 ; WX 602 ; N uni1FE4 ; G 1683 -U 8165 ; WX 602 ; N uni1FE5 ; G 1684 -U 8166 ; WX 602 ; N uni1FE6 ; G 1685 -U 8167 ; WX 602 ; N uni1FE7 ; G 1686 -U 8168 ; WX 602 ; N uni1FE8 ; G 1687 -U 8169 ; WX 602 ; N uni1FE9 ; G 1688 -U 8170 ; WX 602 ; N uni1FEA ; G 1689 -U 8171 ; WX 602 ; N uni1FEB ; G 1690 -U 8172 ; WX 602 ; N uni1FEC ; G 1691 -U 8173 ; WX 602 ; N uni1FED ; G 1692 -U 8174 ; WX 602 ; N uni1FEE ; G 1693 -U 8175 ; WX 602 ; N uni1FEF ; G 1694 -U 8178 ; WX 602 ; N uni1FF2 ; G 1695 -U 8179 ; WX 602 ; N uni1FF3 ; G 1696 -U 8180 ; WX 602 ; N uni1FF4 ; G 1697 -U 8182 ; WX 602 ; N uni1FF6 ; G 1698 -U 8183 ; WX 602 ; N uni1FF7 ; G 1699 -U 8184 ; WX 602 ; N uni1FF8 ; G 1700 -U 8185 ; WX 602 ; N uni1FF9 ; G 1701 -U 8186 ; WX 602 ; N uni1FFA ; G 1702 -U 8187 ; WX 602 ; N uni1FFB ; G 1703 -U 8188 ; WX 602 ; N uni1FFC ; G 1704 -U 8189 ; WX 602 ; N uni1FFD ; G 1705 -U 8190 ; WX 602 ; N uni1FFE ; G 1706 -U 8192 ; WX 602 ; N uni2000 ; G 1707 -U 8193 ; WX 602 ; N uni2001 ; G 1708 -U 8194 ; WX 602 ; N uni2002 ; G 1709 -U 8195 ; WX 602 ; N uni2003 ; G 1710 -U 8196 ; WX 602 ; N uni2004 ; G 1711 -U 8197 ; WX 602 ; N uni2005 ; G 1712 -U 8198 ; WX 602 ; N uni2006 ; G 1713 -U 8199 ; WX 602 ; N uni2007 ; G 1714 -U 8200 ; WX 602 ; N uni2008 ; G 1715 -U 8201 ; WX 602 ; N uni2009 ; G 1716 -U 8202 ; WX 602 ; N uni200A ; G 1717 -U 8208 ; WX 602 ; N uni2010 ; G 1718 -U 8209 ; WX 602 ; N uni2011 ; G 1719 -U 8210 ; WX 602 ; N figuredash ; G 1720 -U 8211 ; WX 602 ; N endash ; G 1721 -U 8212 ; WX 602 ; N emdash ; G 1722 -U 8213 ; WX 602 ; N uni2015 ; G 1723 -U 8214 ; WX 602 ; N uni2016 ; G 1724 -U 8215 ; WX 602 ; N underscoredbl ; G 1725 -U 8216 ; WX 602 ; N quoteleft ; G 1726 -U 8217 ; WX 602 ; N quoteright ; G 1727 -U 8218 ; WX 602 ; N quotesinglbase ; G 1728 -U 8219 ; WX 602 ; N quotereversed ; G 1729 -U 8220 ; WX 602 ; N quotedblleft ; G 1730 -U 8221 ; WX 602 ; N quotedblright ; G 1731 -U 8222 ; WX 602 ; N quotedblbase ; G 1732 -U 8223 ; WX 602 ; N uni201F ; G 1733 -U 8224 ; WX 602 ; N dagger ; G 1734 -U 8225 ; WX 602 ; N daggerdbl ; G 1735 -U 8226 ; WX 602 ; N bullet ; G 1736 -U 8227 ; WX 602 ; N uni2023 ; G 1737 -U 8230 ; WX 602 ; N ellipsis ; G 1738 -U 8239 ; WX 602 ; N uni202F ; G 1739 -U 8240 ; WX 602 ; N perthousand ; G 1740 -U 8241 ; WX 602 ; N uni2031 ; G 1741 -U 8242 ; WX 602 ; N minute ; G 1742 -U 8243 ; WX 602 ; N second ; G 1743 -U 8244 ; WX 602 ; N uni2034 ; G 1744 -U 8245 ; WX 602 ; N uni2035 ; G 1745 -U 8246 ; WX 602 ; N uni2036 ; G 1746 -U 8247 ; WX 602 ; N uni2037 ; G 1747 -U 8249 ; WX 602 ; N guilsinglleft ; G 1748 -U 8250 ; WX 602 ; N guilsinglright ; G 1749 -U 8252 ; WX 602 ; N exclamdbl ; G 1750 -U 8253 ; WX 602 ; N uni203D ; G 1751 -U 8254 ; WX 602 ; N uni203E ; G 1752 -U 8255 ; WX 602 ; N uni203F ; G 1753 -U 8261 ; WX 602 ; N uni2045 ; G 1754 -U 8262 ; WX 602 ; N uni2046 ; G 1755 -U 8263 ; WX 602 ; N uni2047 ; G 1756 -U 8264 ; WX 602 ; N uni2048 ; G 1757 -U 8265 ; WX 602 ; N uni2049 ; G 1758 -U 8267 ; WX 602 ; N uni204B ; G 1759 -U 8287 ; WX 602 ; N uni205F ; G 1760 -U 8304 ; WX 602 ; N uni2070 ; G 1761 -U 8305 ; WX 602 ; N uni2071 ; G 1762 -U 8308 ; WX 602 ; N uni2074 ; G 1763 -U 8309 ; WX 602 ; N uni2075 ; G 1764 -U 8310 ; WX 602 ; N uni2076 ; G 1765 -U 8311 ; WX 602 ; N uni2077 ; G 1766 -U 8312 ; WX 602 ; N uni2078 ; G 1767 -U 8313 ; WX 602 ; N uni2079 ; G 1768 -U 8314 ; WX 602 ; N uni207A ; G 1769 -U 8315 ; WX 602 ; N uni207B ; G 1770 -U 8316 ; WX 602 ; N uni207C ; G 1771 -U 8317 ; WX 602 ; N uni207D ; G 1772 -U 8318 ; WX 602 ; N uni207E ; G 1773 -U 8319 ; WX 602 ; N uni207F ; G 1774 -U 8320 ; WX 602 ; N uni2080 ; G 1775 -U 8321 ; WX 602 ; N uni2081 ; G 1776 -U 8322 ; WX 602 ; N uni2082 ; G 1777 -U 8323 ; WX 602 ; N uni2083 ; G 1778 -U 8324 ; WX 602 ; N uni2084 ; G 1779 -U 8325 ; WX 602 ; N uni2085 ; G 1780 -U 8326 ; WX 602 ; N uni2086 ; G 1781 -U 8327 ; WX 602 ; N uni2087 ; G 1782 -U 8328 ; WX 602 ; N uni2088 ; G 1783 -U 8329 ; WX 602 ; N uni2089 ; G 1784 -U 8330 ; WX 602 ; N uni208A ; G 1785 -U 8331 ; WX 602 ; N uni208B ; G 1786 -U 8332 ; WX 602 ; N uni208C ; G 1787 -U 8333 ; WX 602 ; N uni208D ; G 1788 -U 8334 ; WX 602 ; N uni208E ; G 1789 -U 8336 ; WX 602 ; N uni2090 ; G 1790 -U 8337 ; WX 602 ; N uni2091 ; G 1791 -U 8338 ; WX 602 ; N uni2092 ; G 1792 -U 8339 ; WX 602 ; N uni2093 ; G 1793 -U 8340 ; WX 602 ; N uni2094 ; G 1794 -U 8341 ; WX 602 ; N uni2095 ; G 1795 -U 8342 ; WX 602 ; N uni2096 ; G 1796 -U 8343 ; WX 602 ; N uni2097 ; G 1797 -U 8344 ; WX 602 ; N uni2098 ; G 1798 -U 8345 ; WX 602 ; N uni2099 ; G 1799 -U 8346 ; WX 602 ; N uni209A ; G 1800 -U 8347 ; WX 602 ; N uni209B ; G 1801 -U 8348 ; WX 602 ; N uni209C ; G 1802 -U 8352 ; WX 602 ; N uni20A0 ; G 1803 -U 8353 ; WX 602 ; N colonmonetary ; G 1804 -U 8354 ; WX 602 ; N uni20A2 ; G 1805 -U 8355 ; WX 602 ; N franc ; G 1806 -U 8356 ; WX 602 ; N lira ; G 1807 -U 8357 ; WX 602 ; N uni20A5 ; G 1808 -U 8358 ; WX 602 ; N uni20A6 ; G 1809 -U 8359 ; WX 602 ; N peseta ; G 1810 -U 8360 ; WX 602 ; N uni20A8 ; G 1811 -U 8361 ; WX 602 ; N uni20A9 ; G 1812 -U 8362 ; WX 602 ; N uni20AA ; G 1813 -U 8363 ; WX 602 ; N dong ; G 1814 -U 8364 ; WX 602 ; N Euro ; G 1815 -U 8365 ; WX 602 ; N uni20AD ; G 1816 -U 8366 ; WX 602 ; N uni20AE ; G 1817 -U 8367 ; WX 602 ; N uni20AF ; G 1818 -U 8368 ; WX 602 ; N uni20B0 ; G 1819 -U 8369 ; WX 602 ; N uni20B1 ; G 1820 -U 8370 ; WX 602 ; N uni20B2 ; G 1821 -U 8371 ; WX 602 ; N uni20B3 ; G 1822 -U 8372 ; WX 602 ; N uni20B4 ; G 1823 -U 8373 ; WX 602 ; N uni20B5 ; G 1824 -U 8376 ; WX 602 ; N uni20B8 ; G 1825 -U 8377 ; WX 602 ; N uni20B9 ; G 1826 -U 8378 ; WX 602 ; N uni20BA ; G 1827 -U 8381 ; WX 602 ; N uni20BD ; G 1828 -U 8450 ; WX 602 ; N uni2102 ; G 1829 -U 8453 ; WX 602 ; N uni2105 ; G 1830 -U 8461 ; WX 602 ; N uni210D ; G 1831 -U 8462 ; WX 602 ; N uni210E ; G 1832 -U 8463 ; WX 602 ; N uni210F ; G 1833 -U 8469 ; WX 602 ; N uni2115 ; G 1834 -U 8470 ; WX 602 ; N uni2116 ; G 1835 -U 8471 ; WX 602 ; N uni2117 ; G 1836 -U 8473 ; WX 602 ; N uni2119 ; G 1837 -U 8474 ; WX 602 ; N uni211A ; G 1838 -U 8477 ; WX 602 ; N uni211D ; G 1839 -U 8482 ; WX 602 ; N trademark ; G 1840 -U 8484 ; WX 602 ; N uni2124 ; G 1841 -U 8486 ; WX 602 ; N uni2126 ; G 1842 -U 8490 ; WX 602 ; N uni212A ; G 1843 -U 8491 ; WX 602 ; N uni212B ; G 1844 -U 8494 ; WX 602 ; N estimated ; G 1845 -U 8520 ; WX 602 ; N uni2148 ; G 1846 -U 8528 ; WX 602 ; N uni2150 ; G 1847 -U 8529 ; WX 602 ; N uni2151 ; G 1848 -U 8531 ; WX 602 ; N onethird ; G 1849 -U 8532 ; WX 602 ; N twothirds ; G 1850 -U 8533 ; WX 602 ; N uni2155 ; G 1851 -U 8534 ; WX 602 ; N uni2156 ; G 1852 -U 8535 ; WX 602 ; N uni2157 ; G 1853 -U 8536 ; WX 602 ; N uni2158 ; G 1854 -U 8537 ; WX 602 ; N uni2159 ; G 1855 -U 8538 ; WX 602 ; N uni215A ; G 1856 -U 8539 ; WX 602 ; N oneeighth ; G 1857 -U 8540 ; WX 602 ; N threeeighths ; G 1858 -U 8541 ; WX 602 ; N fiveeighths ; G 1859 -U 8542 ; WX 602 ; N seveneighths ; G 1860 -U 8543 ; WX 602 ; N uni215F ; G 1861 -U 8585 ; WX 602 ; N uni2189 ; G 1862 -U 8592 ; WX 602 ; N arrowleft ; G 1863 -U 8593 ; WX 602 ; N arrowup ; G 1864 -U 8594 ; WX 602 ; N arrowright ; G 1865 -U 8595 ; WX 602 ; N arrowdown ; G 1866 -U 8596 ; WX 602 ; N arrowboth ; G 1867 -U 8597 ; WX 602 ; N arrowupdn ; G 1868 -U 8598 ; WX 602 ; N uni2196 ; G 1869 -U 8599 ; WX 602 ; N uni2197 ; G 1870 -U 8600 ; WX 602 ; N uni2198 ; G 1871 -U 8601 ; WX 602 ; N uni2199 ; G 1872 -U 8602 ; WX 602 ; N uni219A ; G 1873 -U 8603 ; WX 602 ; N uni219B ; G 1874 -U 8604 ; WX 602 ; N uni219C ; G 1875 -U 8605 ; WX 602 ; N uni219D ; G 1876 -U 8606 ; WX 602 ; N uni219E ; G 1877 -U 8607 ; WX 602 ; N uni219F ; G 1878 -U 8608 ; WX 602 ; N uni21A0 ; G 1879 -U 8609 ; WX 602 ; N uni21A1 ; G 1880 -U 8610 ; WX 602 ; N uni21A2 ; G 1881 -U 8611 ; WX 602 ; N uni21A3 ; G 1882 -U 8612 ; WX 602 ; N uni21A4 ; G 1883 -U 8613 ; WX 602 ; N uni21A5 ; G 1884 -U 8614 ; WX 602 ; N uni21A6 ; G 1885 -U 8615 ; WX 602 ; N uni21A7 ; G 1886 -U 8616 ; WX 602 ; N arrowupdnbse ; G 1887 -U 8617 ; WX 602 ; N uni21A9 ; G 1888 -U 8618 ; WX 602 ; N uni21AA ; G 1889 -U 8619 ; WX 602 ; N uni21AB ; G 1890 -U 8620 ; WX 602 ; N uni21AC ; G 1891 -U 8621 ; WX 602 ; N uni21AD ; G 1892 -U 8622 ; WX 602 ; N uni21AE ; G 1893 -U 8623 ; WX 602 ; N uni21AF ; G 1894 -U 8624 ; WX 602 ; N uni21B0 ; G 1895 -U 8625 ; WX 602 ; N uni21B1 ; G 1896 -U 8626 ; WX 602 ; N uni21B2 ; G 1897 -U 8627 ; WX 602 ; N uni21B3 ; G 1898 -U 8628 ; WX 602 ; N uni21B4 ; G 1899 -U 8629 ; WX 602 ; N carriagereturn ; G 1900 -U 8630 ; WX 602 ; N uni21B6 ; G 1901 -U 8631 ; WX 602 ; N uni21B7 ; G 1902 -U 8632 ; WX 602 ; N uni21B8 ; G 1903 -U 8633 ; WX 602 ; N uni21B9 ; G 1904 -U 8634 ; WX 602 ; N uni21BA ; G 1905 -U 8635 ; WX 602 ; N uni21BB ; G 1906 -U 8636 ; WX 602 ; N uni21BC ; G 1907 -U 8637 ; WX 602 ; N uni21BD ; G 1908 -U 8638 ; WX 602 ; N uni21BE ; G 1909 -U 8639 ; WX 602 ; N uni21BF ; G 1910 -U 8640 ; WX 602 ; N uni21C0 ; G 1911 -U 8641 ; WX 602 ; N uni21C1 ; G 1912 -U 8642 ; WX 602 ; N uni21C2 ; G 1913 -U 8643 ; WX 602 ; N uni21C3 ; G 1914 -U 8644 ; WX 602 ; N uni21C4 ; G 1915 -U 8645 ; WX 602 ; N uni21C5 ; G 1916 -U 8646 ; WX 602 ; N uni21C6 ; G 1917 -U 8647 ; WX 602 ; N uni21C7 ; G 1918 -U 8648 ; WX 602 ; N uni21C8 ; G 1919 -U 8649 ; WX 602 ; N uni21C9 ; G 1920 -U 8650 ; WX 602 ; N uni21CA ; G 1921 -U 8651 ; WX 602 ; N uni21CB ; G 1922 -U 8652 ; WX 602 ; N uni21CC ; G 1923 -U 8653 ; WX 602 ; N uni21CD ; G 1924 -U 8654 ; WX 602 ; N uni21CE ; G 1925 -U 8655 ; WX 602 ; N uni21CF ; G 1926 -U 8656 ; WX 602 ; N arrowdblleft ; G 1927 -U 8657 ; WX 602 ; N arrowdblup ; G 1928 -U 8658 ; WX 602 ; N arrowdblright ; G 1929 -U 8659 ; WX 602 ; N arrowdbldown ; G 1930 -U 8660 ; WX 602 ; N arrowdblboth ; G 1931 -U 8661 ; WX 602 ; N uni21D5 ; G 1932 -U 8662 ; WX 602 ; N uni21D6 ; G 1933 -U 8663 ; WX 602 ; N uni21D7 ; G 1934 -U 8664 ; WX 602 ; N uni21D8 ; G 1935 -U 8665 ; WX 602 ; N uni21D9 ; G 1936 -U 8666 ; WX 602 ; N uni21DA ; G 1937 -U 8667 ; WX 602 ; N uni21DB ; G 1938 -U 8668 ; WX 602 ; N uni21DC ; G 1939 -U 8669 ; WX 602 ; N uni21DD ; G 1940 -U 8670 ; WX 602 ; N uni21DE ; G 1941 -U 8671 ; WX 602 ; N uni21DF ; G 1942 -U 8672 ; WX 602 ; N uni21E0 ; G 1943 -U 8673 ; WX 602 ; N uni21E1 ; G 1944 -U 8674 ; WX 602 ; N uni21E2 ; G 1945 -U 8675 ; WX 602 ; N uni21E3 ; G 1946 -U 8676 ; WX 602 ; N uni21E4 ; G 1947 -U 8677 ; WX 602 ; N uni21E5 ; G 1948 -U 8678 ; WX 602 ; N uni21E6 ; G 1949 -U 8679 ; WX 602 ; N uni21E7 ; G 1950 -U 8680 ; WX 602 ; N uni21E8 ; G 1951 -U 8681 ; WX 602 ; N uni21E9 ; G 1952 -U 8682 ; WX 602 ; N uni21EA ; G 1953 -U 8683 ; WX 602 ; N uni21EB ; G 1954 -U 8684 ; WX 602 ; N uni21EC ; G 1955 -U 8685 ; WX 602 ; N uni21ED ; G 1956 -U 8686 ; WX 602 ; N uni21EE ; G 1957 -U 8687 ; WX 602 ; N uni21EF ; G 1958 -U 8688 ; WX 602 ; N uni21F0 ; G 1959 -U 8689 ; WX 602 ; N uni21F1 ; G 1960 -U 8690 ; WX 602 ; N uni21F2 ; G 1961 -U 8691 ; WX 602 ; N uni21F3 ; G 1962 -U 8692 ; WX 602 ; N uni21F4 ; G 1963 -U 8693 ; WX 602 ; N uni21F5 ; G 1964 -U 8694 ; WX 602 ; N uni21F6 ; G 1965 -U 8695 ; WX 602 ; N uni21F7 ; G 1966 -U 8696 ; WX 602 ; N uni21F8 ; G 1967 -U 8697 ; WX 602 ; N uni21F9 ; G 1968 -U 8698 ; WX 602 ; N uni21FA ; G 1969 -U 8699 ; WX 602 ; N uni21FB ; G 1970 -U 8700 ; WX 602 ; N uni21FC ; G 1971 -U 8701 ; WX 602 ; N uni21FD ; G 1972 -U 8702 ; WX 602 ; N uni21FE ; G 1973 -U 8703 ; WX 602 ; N uni21FF ; G 1974 -U 8704 ; WX 602 ; N universal ; G 1975 -U 8705 ; WX 602 ; N uni2201 ; G 1976 -U 8706 ; WX 602 ; N partialdiff ; G 1977 -U 8707 ; WX 602 ; N existential ; G 1978 -U 8708 ; WX 602 ; N uni2204 ; G 1979 -U 8709 ; WX 602 ; N emptyset ; G 1980 -U 8710 ; WX 602 ; N increment ; G 1981 -U 8711 ; WX 602 ; N gradient ; G 1982 -U 8712 ; WX 602 ; N element ; G 1983 -U 8713 ; WX 602 ; N notelement ; G 1984 -U 8714 ; WX 602 ; N uni220A ; G 1985 -U 8715 ; WX 602 ; N suchthat ; G 1986 -U 8716 ; WX 602 ; N uni220C ; G 1987 -U 8717 ; WX 602 ; N uni220D ; G 1988 -U 8718 ; WX 602 ; N uni220E ; G 1989 -U 8719 ; WX 602 ; N product ; G 1990 -U 8720 ; WX 602 ; N uni2210 ; G 1991 -U 8721 ; WX 602 ; N summation ; G 1992 -U 8722 ; WX 602 ; N minus ; G 1993 -U 8723 ; WX 602 ; N uni2213 ; G 1994 -U 8725 ; WX 602 ; N uni2215 ; G 1995 -U 8727 ; WX 602 ; N asteriskmath ; G 1996 -U 8728 ; WX 602 ; N uni2218 ; G 1997 -U 8729 ; WX 602 ; N uni2219 ; G 1998 -U 8730 ; WX 602 ; N radical ; G 1999 -U 8731 ; WX 602 ; N uni221B ; G 2000 -U 8732 ; WX 602 ; N uni221C ; G 2001 -U 8733 ; WX 602 ; N proportional ; G 2002 -U 8734 ; WX 602 ; N infinity ; G 2003 -U 8735 ; WX 602 ; N orthogonal ; G 2004 -U 8736 ; WX 602 ; N angle ; G 2005 -U 8739 ; WX 602 ; N uni2223 ; G 2006 -U 8743 ; WX 602 ; N logicaland ; G 2007 -U 8744 ; WX 602 ; N logicalor ; G 2008 -U 8745 ; WX 602 ; N intersection ; G 2009 -U 8746 ; WX 602 ; N union ; G 2010 -U 8747 ; WX 602 ; N integral ; G 2011 -U 8748 ; WX 602 ; N uni222C ; G 2012 -U 8749 ; WX 602 ; N uni222D ; G 2013 -U 8756 ; WX 602 ; N therefore ; G 2014 -U 8757 ; WX 602 ; N uni2235 ; G 2015 -U 8758 ; WX 602 ; N uni2236 ; G 2016 -U 8759 ; WX 602 ; N uni2237 ; G 2017 -U 8760 ; WX 602 ; N uni2238 ; G 2018 -U 8761 ; WX 602 ; N uni2239 ; G 2019 -U 8762 ; WX 602 ; N uni223A ; G 2020 -U 8763 ; WX 602 ; N uni223B ; G 2021 -U 8764 ; WX 602 ; N similar ; G 2022 -U 8765 ; WX 602 ; N uni223D ; G 2023 -U 8769 ; WX 602 ; N uni2241 ; G 2024 -U 8770 ; WX 602 ; N uni2242 ; G 2025 -U 8771 ; WX 602 ; N uni2243 ; G 2026 -U 8772 ; WX 602 ; N uni2244 ; G 2027 -U 8773 ; WX 602 ; N congruent ; G 2028 -U 8774 ; WX 602 ; N uni2246 ; G 2029 -U 8775 ; WX 602 ; N uni2247 ; G 2030 -U 8776 ; WX 602 ; N approxequal ; G 2031 -U 8777 ; WX 602 ; N uni2249 ; G 2032 -U 8778 ; WX 602 ; N uni224A ; G 2033 -U 8779 ; WX 602 ; N uni224B ; G 2034 -U 8780 ; WX 602 ; N uni224C ; G 2035 -U 8781 ; WX 602 ; N uni224D ; G 2036 -U 8782 ; WX 602 ; N uni224E ; G 2037 -U 8783 ; WX 602 ; N uni224F ; G 2038 -U 8784 ; WX 602 ; N uni2250 ; G 2039 -U 8785 ; WX 602 ; N uni2251 ; G 2040 -U 8786 ; WX 602 ; N uni2252 ; G 2041 -U 8787 ; WX 602 ; N uni2253 ; G 2042 -U 8788 ; WX 602 ; N uni2254 ; G 2043 -U 8789 ; WX 602 ; N uni2255 ; G 2044 -U 8790 ; WX 602 ; N uni2256 ; G 2045 -U 8791 ; WX 602 ; N uni2257 ; G 2046 -U 8792 ; WX 602 ; N uni2258 ; G 2047 -U 8793 ; WX 602 ; N uni2259 ; G 2048 -U 8794 ; WX 602 ; N uni225A ; G 2049 -U 8795 ; WX 602 ; N uni225B ; G 2050 -U 8796 ; WX 602 ; N uni225C ; G 2051 -U 8797 ; WX 602 ; N uni225D ; G 2052 -U 8798 ; WX 602 ; N uni225E ; G 2053 -U 8799 ; WX 602 ; N uni225F ; G 2054 -U 8800 ; WX 602 ; N notequal ; G 2055 -U 8801 ; WX 602 ; N equivalence ; G 2056 -U 8802 ; WX 602 ; N uni2262 ; G 2057 -U 8803 ; WX 602 ; N uni2263 ; G 2058 -U 8804 ; WX 602 ; N lessequal ; G 2059 -U 8805 ; WX 602 ; N greaterequal ; G 2060 -U 8806 ; WX 602 ; N uni2266 ; G 2061 -U 8807 ; WX 602 ; N uni2267 ; G 2062 -U 8808 ; WX 602 ; N uni2268 ; G 2063 -U 8809 ; WX 602 ; N uni2269 ; G 2064 -U 8813 ; WX 602 ; N uni226D ; G 2065 -U 8814 ; WX 602 ; N uni226E ; G 2066 -U 8815 ; WX 602 ; N uni226F ; G 2067 -U 8816 ; WX 602 ; N uni2270 ; G 2068 -U 8817 ; WX 602 ; N uni2271 ; G 2069 -U 8818 ; WX 602 ; N uni2272 ; G 2070 -U 8819 ; WX 602 ; N uni2273 ; G 2071 -U 8820 ; WX 602 ; N uni2274 ; G 2072 -U 8821 ; WX 602 ; N uni2275 ; G 2073 -U 8822 ; WX 602 ; N uni2276 ; G 2074 -U 8823 ; WX 602 ; N uni2277 ; G 2075 -U 8824 ; WX 602 ; N uni2278 ; G 2076 -U 8825 ; WX 602 ; N uni2279 ; G 2077 -U 8826 ; WX 602 ; N uni227A ; G 2078 -U 8827 ; WX 602 ; N uni227B ; G 2079 -U 8828 ; WX 602 ; N uni227C ; G 2080 -U 8829 ; WX 602 ; N uni227D ; G 2081 -U 8830 ; WX 602 ; N uni227E ; G 2082 -U 8831 ; WX 602 ; N uni227F ; G 2083 -U 8832 ; WX 602 ; N uni2280 ; G 2084 -U 8833 ; WX 602 ; N uni2281 ; G 2085 -U 8834 ; WX 602 ; N propersubset ; G 2086 -U 8835 ; WX 602 ; N propersuperset ; G 2087 -U 8836 ; WX 602 ; N notsubset ; G 2088 -U 8837 ; WX 602 ; N uni2285 ; G 2089 -U 8838 ; WX 602 ; N reflexsubset ; G 2090 -U 8839 ; WX 602 ; N reflexsuperset ; G 2091 -U 8840 ; WX 602 ; N uni2288 ; G 2092 -U 8841 ; WX 602 ; N uni2289 ; G 2093 -U 8842 ; WX 602 ; N uni228A ; G 2094 -U 8843 ; WX 602 ; N uni228B ; G 2095 -U 8845 ; WX 602 ; N uni228D ; G 2096 -U 8846 ; WX 602 ; N uni228E ; G 2097 -U 8847 ; WX 602 ; N uni228F ; G 2098 -U 8848 ; WX 602 ; N uni2290 ; G 2099 -U 8849 ; WX 602 ; N uni2291 ; G 2100 -U 8850 ; WX 602 ; N uni2292 ; G 2101 -U 8851 ; WX 602 ; N uni2293 ; G 2102 -U 8852 ; WX 602 ; N uni2294 ; G 2103 -U 8853 ; WX 602 ; N circleplus ; G 2104 -U 8854 ; WX 602 ; N uni2296 ; G 2105 -U 8855 ; WX 602 ; N circlemultiply ; G 2106 -U 8856 ; WX 602 ; N uni2298 ; G 2107 -U 8857 ; WX 602 ; N uni2299 ; G 2108 -U 8858 ; WX 602 ; N uni229A ; G 2109 -U 8859 ; WX 602 ; N uni229B ; G 2110 -U 8860 ; WX 602 ; N uni229C ; G 2111 -U 8861 ; WX 602 ; N uni229D ; G 2112 -U 8862 ; WX 602 ; N uni229E ; G 2113 -U 8863 ; WX 602 ; N uni229F ; G 2114 -U 8864 ; WX 602 ; N uni22A0 ; G 2115 -U 8865 ; WX 602 ; N uni22A1 ; G 2116 -U 8866 ; WX 602 ; N uni22A2 ; G 2117 -U 8867 ; WX 602 ; N uni22A3 ; G 2118 -U 8868 ; WX 602 ; N uni22A4 ; G 2119 -U 8869 ; WX 602 ; N perpendicular ; G 2120 -U 8882 ; WX 602 ; N uni22B2 ; G 2121 -U 8883 ; WX 602 ; N uni22B3 ; G 2122 -U 8884 ; WX 602 ; N uni22B4 ; G 2123 -U 8885 ; WX 602 ; N uni22B5 ; G 2124 -U 8888 ; WX 602 ; N uni22B8 ; G 2125 -U 8898 ; WX 602 ; N uni22C2 ; G 2126 -U 8899 ; WX 602 ; N uni22C3 ; G 2127 -U 8900 ; WX 602 ; N uni22C4 ; G 2128 -U 8901 ; WX 602 ; N dotmath ; G 2129 -U 8902 ; WX 602 ; N uni22C6 ; G 2130 -U 8909 ; WX 602 ; N uni22CD ; G 2131 -U 8910 ; WX 602 ; N uni22CE ; G 2132 -U 8911 ; WX 602 ; N uni22CF ; G 2133 -U 8912 ; WX 602 ; N uni22D0 ; G 2134 -U 8913 ; WX 602 ; N uni22D1 ; G 2135 -U 8922 ; WX 602 ; N uni22DA ; G 2136 -U 8923 ; WX 602 ; N uni22DB ; G 2137 -U 8924 ; WX 602 ; N uni22DC ; G 2138 -U 8925 ; WX 602 ; N uni22DD ; G 2139 -U 8926 ; WX 602 ; N uni22DE ; G 2140 -U 8927 ; WX 602 ; N uni22DF ; G 2141 -U 8928 ; WX 602 ; N uni22E0 ; G 2142 -U 8929 ; WX 602 ; N uni22E1 ; G 2143 -U 8930 ; WX 602 ; N uni22E2 ; G 2144 -U 8931 ; WX 602 ; N uni22E3 ; G 2145 -U 8932 ; WX 602 ; N uni22E4 ; G 2146 -U 8933 ; WX 602 ; N uni22E5 ; G 2147 -U 8934 ; WX 602 ; N uni22E6 ; G 2148 -U 8935 ; WX 602 ; N uni22E7 ; G 2149 -U 8936 ; WX 602 ; N uni22E8 ; G 2150 -U 8937 ; WX 602 ; N uni22E9 ; G 2151 -U 8943 ; WX 602 ; N uni22EF ; G 2152 -U 8960 ; WX 602 ; N uni2300 ; G 2153 -U 8961 ; WX 602 ; N uni2301 ; G 2154 -U 8962 ; WX 602 ; N house ; G 2155 -U 8963 ; WX 602 ; N uni2303 ; G 2156 -U 8964 ; WX 602 ; N uni2304 ; G 2157 -U 8965 ; WX 602 ; N uni2305 ; G 2158 -U 8966 ; WX 602 ; N uni2306 ; G 2159 -U 8968 ; WX 602 ; N uni2308 ; G 2160 -U 8969 ; WX 602 ; N uni2309 ; G 2161 -U 8970 ; WX 602 ; N uni230A ; G 2162 -U 8971 ; WX 602 ; N uni230B ; G 2163 -U 8972 ; WX 602 ; N uni230C ; G 2164 -U 8973 ; WX 602 ; N uni230D ; G 2165 -U 8974 ; WX 602 ; N uni230E ; G 2166 -U 8975 ; WX 602 ; N uni230F ; G 2167 -U 8976 ; WX 602 ; N revlogicalnot ; G 2168 -U 8977 ; WX 602 ; N uni2311 ; G 2169 -U 8978 ; WX 602 ; N uni2312 ; G 2170 -U 8979 ; WX 602 ; N uni2313 ; G 2171 -U 8980 ; WX 602 ; N uni2314 ; G 2172 -U 8981 ; WX 602 ; N uni2315 ; G 2173 -U 8984 ; WX 602 ; N uni2318 ; G 2174 -U 8985 ; WX 602 ; N uni2319 ; G 2175 -U 8988 ; WX 602 ; N uni231C ; G 2176 -U 8989 ; WX 602 ; N uni231D ; G 2177 -U 8990 ; WX 602 ; N uni231E ; G 2178 -U 8991 ; WX 602 ; N uni231F ; G 2179 -U 8992 ; WX 602 ; N integraltp ; G 2180 -U 8993 ; WX 602 ; N integralbt ; G 2181 -U 8997 ; WX 602 ; N uni2325 ; G 2182 -U 8998 ; WX 602 ; N uni2326 ; G 2183 -U 8999 ; WX 602 ; N uni2327 ; G 2184 -U 9000 ; WX 602 ; N uni2328 ; G 2185 -U 9003 ; WX 602 ; N uni232B ; G 2186 -U 9013 ; WX 602 ; N uni2335 ; G 2187 -U 9014 ; WX 602 ; N uni2336 ; G 2188 -U 9015 ; WX 602 ; N uni2337 ; G 2189 -U 9016 ; WX 602 ; N uni2338 ; G 2190 -U 9017 ; WX 602 ; N uni2339 ; G 2191 -U 9018 ; WX 602 ; N uni233A ; G 2192 -U 9019 ; WX 602 ; N uni233B ; G 2193 -U 9020 ; WX 602 ; N uni233C ; G 2194 -U 9021 ; WX 602 ; N uni233D ; G 2195 -U 9022 ; WX 602 ; N uni233E ; G 2196 -U 9023 ; WX 602 ; N uni233F ; G 2197 -U 9024 ; WX 602 ; N uni2340 ; G 2198 -U 9025 ; WX 602 ; N uni2341 ; G 2199 -U 9026 ; WX 602 ; N uni2342 ; G 2200 -U 9027 ; WX 602 ; N uni2343 ; G 2201 -U 9028 ; WX 602 ; N uni2344 ; G 2202 -U 9029 ; WX 602 ; N uni2345 ; G 2203 -U 9030 ; WX 602 ; N uni2346 ; G 2204 -U 9031 ; WX 602 ; N uni2347 ; G 2205 -U 9032 ; WX 602 ; N uni2348 ; G 2206 -U 9033 ; WX 602 ; N uni2349 ; G 2207 -U 9034 ; WX 602 ; N uni234A ; G 2208 -U 9035 ; WX 602 ; N uni234B ; G 2209 -U 9036 ; WX 602 ; N uni234C ; G 2210 -U 9037 ; WX 602 ; N uni234D ; G 2211 -U 9038 ; WX 602 ; N uni234E ; G 2212 -U 9039 ; WX 602 ; N uni234F ; G 2213 -U 9040 ; WX 602 ; N uni2350 ; G 2214 -U 9041 ; WX 602 ; N uni2351 ; G 2215 -U 9042 ; WX 602 ; N uni2352 ; G 2216 -U 9043 ; WX 602 ; N uni2353 ; G 2217 -U 9044 ; WX 602 ; N uni2354 ; G 2218 -U 9045 ; WX 602 ; N uni2355 ; G 2219 -U 9046 ; WX 602 ; N uni2356 ; G 2220 -U 9047 ; WX 602 ; N uni2357 ; G 2221 -U 9048 ; WX 602 ; N uni2358 ; G 2222 -U 9049 ; WX 602 ; N uni2359 ; G 2223 -U 9050 ; WX 602 ; N uni235A ; G 2224 -U 9051 ; WX 602 ; N uni235B ; G 2225 -U 9052 ; WX 602 ; N uni235C ; G 2226 -U 9053 ; WX 602 ; N uni235D ; G 2227 -U 9054 ; WX 602 ; N uni235E ; G 2228 -U 9055 ; WX 602 ; N uni235F ; G 2229 -U 9056 ; WX 602 ; N uni2360 ; G 2230 -U 9057 ; WX 602 ; N uni2361 ; G 2231 -U 9058 ; WX 602 ; N uni2362 ; G 2232 -U 9059 ; WX 602 ; N uni2363 ; G 2233 -U 9060 ; WX 602 ; N uni2364 ; G 2234 -U 9061 ; WX 602 ; N uni2365 ; G 2235 -U 9062 ; WX 602 ; N uni2366 ; G 2236 -U 9063 ; WX 602 ; N uni2367 ; G 2237 -U 9064 ; WX 602 ; N uni2368 ; G 2238 -U 9065 ; WX 602 ; N uni2369 ; G 2239 -U 9066 ; WX 602 ; N uni236A ; G 2240 -U 9067 ; WX 602 ; N uni236B ; G 2241 -U 9068 ; WX 602 ; N uni236C ; G 2242 -U 9069 ; WX 602 ; N uni236D ; G 2243 -U 9070 ; WX 602 ; N uni236E ; G 2244 -U 9071 ; WX 602 ; N uni236F ; G 2245 -U 9072 ; WX 602 ; N uni2370 ; G 2246 -U 9073 ; WX 602 ; N uni2371 ; G 2247 -U 9074 ; WX 602 ; N uni2372 ; G 2248 -U 9075 ; WX 602 ; N uni2373 ; G 2249 -U 9076 ; WX 602 ; N uni2374 ; G 2250 -U 9077 ; WX 602 ; N uni2375 ; G 2251 -U 9078 ; WX 602 ; N uni2376 ; G 2252 -U 9079 ; WX 602 ; N uni2377 ; G 2253 -U 9080 ; WX 602 ; N uni2378 ; G 2254 -U 9081 ; WX 602 ; N uni2379 ; G 2255 -U 9082 ; WX 602 ; N uni237A ; G 2256 -U 9085 ; WX 602 ; N uni237D ; G 2257 -U 9088 ; WX 602 ; N uni2380 ; G 2258 -U 9089 ; WX 602 ; N uni2381 ; G 2259 -U 9090 ; WX 602 ; N uni2382 ; G 2260 -U 9091 ; WX 602 ; N uni2383 ; G 2261 -U 9096 ; WX 602 ; N uni2388 ; G 2262 -U 9097 ; WX 602 ; N uni2389 ; G 2263 -U 9098 ; WX 602 ; N uni238A ; G 2264 -U 9099 ; WX 602 ; N uni238B ; G 2265 -U 9109 ; WX 602 ; N uni2395 ; G 2266 -U 9115 ; WX 602 ; N uni239B ; G 2267 -U 9116 ; WX 602 ; N uni239C ; G 2268 -U 9117 ; WX 602 ; N uni239D ; G 2269 -U 9118 ; WX 602 ; N uni239E ; G 2270 -U 9119 ; WX 602 ; N uni239F ; G 2271 -U 9120 ; WX 602 ; N uni23A0 ; G 2272 -U 9121 ; WX 602 ; N uni23A1 ; G 2273 -U 9122 ; WX 602 ; N uni23A2 ; G 2274 -U 9123 ; WX 602 ; N uni23A3 ; G 2275 -U 9124 ; WX 602 ; N uni23A4 ; G 2276 -U 9125 ; WX 602 ; N uni23A5 ; G 2277 -U 9126 ; WX 602 ; N uni23A6 ; G 2278 -U 9127 ; WX 602 ; N uni23A7 ; G 2279 -U 9128 ; WX 602 ; N uni23A8 ; G 2280 -U 9129 ; WX 602 ; N uni23A9 ; G 2281 -U 9130 ; WX 602 ; N uni23AA ; G 2282 -U 9131 ; WX 602 ; N uni23AB ; G 2283 -U 9132 ; WX 602 ; N uni23AC ; G 2284 -U 9133 ; WX 602 ; N uni23AD ; G 2285 -U 9134 ; WX 602 ; N uni23AE ; G 2286 -U 9166 ; WX 602 ; N uni23CE ; G 2287 -U 9167 ; WX 602 ; N uni23CF ; G 2288 -U 9251 ; WX 602 ; N uni2423 ; G 2289 -U 9472 ; WX 602 ; N SF100000 ; G 2290 -U 9473 ; WX 602 ; N uni2501 ; G 2291 -U 9474 ; WX 602 ; N SF110000 ; G 2292 -U 9475 ; WX 602 ; N uni2503 ; G 2293 -U 9476 ; WX 602 ; N uni2504 ; G 2294 -U 9477 ; WX 602 ; N uni2505 ; G 2295 -U 9478 ; WX 602 ; N uni2506 ; G 2296 -U 9479 ; WX 602 ; N uni2507 ; G 2297 -U 9480 ; WX 602 ; N uni2508 ; G 2298 -U 9481 ; WX 602 ; N uni2509 ; G 2299 -U 9482 ; WX 602 ; N uni250A ; G 2300 -U 9483 ; WX 602 ; N uni250B ; G 2301 -U 9484 ; WX 602 ; N SF010000 ; G 2302 -U 9485 ; WX 602 ; N uni250D ; G 2303 -U 9486 ; WX 602 ; N uni250E ; G 2304 -U 9487 ; WX 602 ; N uni250F ; G 2305 -U 9488 ; WX 602 ; N SF030000 ; G 2306 -U 9489 ; WX 602 ; N uni2511 ; G 2307 -U 9490 ; WX 602 ; N uni2512 ; G 2308 -U 9491 ; WX 602 ; N uni2513 ; G 2309 -U 9492 ; WX 602 ; N SF020000 ; G 2310 -U 9493 ; WX 602 ; N uni2515 ; G 2311 -U 9494 ; WX 602 ; N uni2516 ; G 2312 -U 9495 ; WX 602 ; N uni2517 ; G 2313 -U 9496 ; WX 602 ; N SF040000 ; G 2314 -U 9497 ; WX 602 ; N uni2519 ; G 2315 -U 9498 ; WX 602 ; N uni251A ; G 2316 -U 9499 ; WX 602 ; N uni251B ; G 2317 -U 9500 ; WX 602 ; N SF080000 ; G 2318 -U 9501 ; WX 602 ; N uni251D ; G 2319 -U 9502 ; WX 602 ; N uni251E ; G 2320 -U 9503 ; WX 602 ; N uni251F ; G 2321 -U 9504 ; WX 602 ; N uni2520 ; G 2322 -U 9505 ; WX 602 ; N uni2521 ; G 2323 -U 9506 ; WX 602 ; N uni2522 ; G 2324 -U 9507 ; WX 602 ; N uni2523 ; G 2325 -U 9508 ; WX 602 ; N SF090000 ; G 2326 -U 9509 ; WX 602 ; N uni2525 ; G 2327 -U 9510 ; WX 602 ; N uni2526 ; G 2328 -U 9511 ; WX 602 ; N uni2527 ; G 2329 -U 9512 ; WX 602 ; N uni2528 ; G 2330 -U 9513 ; WX 602 ; N uni2529 ; G 2331 -U 9514 ; WX 602 ; N uni252A ; G 2332 -U 9515 ; WX 602 ; N uni252B ; G 2333 -U 9516 ; WX 602 ; N SF060000 ; G 2334 -U 9517 ; WX 602 ; N uni252D ; G 2335 -U 9518 ; WX 602 ; N uni252E ; G 2336 -U 9519 ; WX 602 ; N uni252F ; G 2337 -U 9520 ; WX 602 ; N uni2530 ; G 2338 -U 9521 ; WX 602 ; N uni2531 ; G 2339 -U 9522 ; WX 602 ; N uni2532 ; G 2340 -U 9523 ; WX 602 ; N uni2533 ; G 2341 -U 9524 ; WX 602 ; N SF070000 ; G 2342 -U 9525 ; WX 602 ; N uni2535 ; G 2343 -U 9526 ; WX 602 ; N uni2536 ; G 2344 -U 9527 ; WX 602 ; N uni2537 ; G 2345 -U 9528 ; WX 602 ; N uni2538 ; G 2346 -U 9529 ; WX 602 ; N uni2539 ; G 2347 -U 9530 ; WX 602 ; N uni253A ; G 2348 -U 9531 ; WX 602 ; N uni253B ; G 2349 -U 9532 ; WX 602 ; N SF050000 ; G 2350 -U 9533 ; WX 602 ; N uni253D ; G 2351 -U 9534 ; WX 602 ; N uni253E ; G 2352 -U 9535 ; WX 602 ; N uni253F ; G 2353 -U 9536 ; WX 602 ; N uni2540 ; G 2354 -U 9537 ; WX 602 ; N uni2541 ; G 2355 -U 9538 ; WX 602 ; N uni2542 ; G 2356 -U 9539 ; WX 602 ; N uni2543 ; G 2357 -U 9540 ; WX 602 ; N uni2544 ; G 2358 -U 9541 ; WX 602 ; N uni2545 ; G 2359 -U 9542 ; WX 602 ; N uni2546 ; G 2360 -U 9543 ; WX 602 ; N uni2547 ; G 2361 -U 9544 ; WX 602 ; N uni2548 ; G 2362 -U 9545 ; WX 602 ; N uni2549 ; G 2363 -U 9546 ; WX 602 ; N uni254A ; G 2364 -U 9547 ; WX 602 ; N uni254B ; G 2365 -U 9548 ; WX 602 ; N uni254C ; G 2366 -U 9549 ; WX 602 ; N uni254D ; G 2367 -U 9550 ; WX 602 ; N uni254E ; G 2368 -U 9551 ; WX 602 ; N uni254F ; G 2369 -U 9552 ; WX 602 ; N SF430000 ; G 2370 -U 9553 ; WX 602 ; N SF240000 ; G 2371 -U 9554 ; WX 602 ; N SF510000 ; G 2372 -U 9555 ; WX 602 ; N SF520000 ; G 2373 -U 9556 ; WX 602 ; N SF390000 ; G 2374 -U 9557 ; WX 602 ; N SF220000 ; G 2375 -U 9558 ; WX 602 ; N SF210000 ; G 2376 -U 9559 ; WX 602 ; N SF250000 ; G 2377 -U 9560 ; WX 602 ; N SF500000 ; G 2378 -U 9561 ; WX 602 ; N SF490000 ; G 2379 -U 9562 ; WX 602 ; N SF380000 ; G 2380 -U 9563 ; WX 602 ; N SF280000 ; G 2381 -U 9564 ; WX 602 ; N SF270000 ; G 2382 -U 9565 ; WX 602 ; N SF260000 ; G 2383 -U 9566 ; WX 602 ; N SF360000 ; G 2384 -U 9567 ; WX 602 ; N SF370000 ; G 2385 -U 9568 ; WX 602 ; N SF420000 ; G 2386 -U 9569 ; WX 602 ; N SF190000 ; G 2387 -U 9570 ; WX 602 ; N SF200000 ; G 2388 -U 9571 ; WX 602 ; N SF230000 ; G 2389 -U 9572 ; WX 602 ; N SF470000 ; G 2390 -U 9573 ; WX 602 ; N SF480000 ; G 2391 -U 9574 ; WX 602 ; N SF410000 ; G 2392 -U 9575 ; WX 602 ; N SF450000 ; G 2393 -U 9576 ; WX 602 ; N SF460000 ; G 2394 -U 9577 ; WX 602 ; N SF400000 ; G 2395 -U 9578 ; WX 602 ; N SF540000 ; G 2396 -U 9579 ; WX 602 ; N SF530000 ; G 2397 -U 9580 ; WX 602 ; N SF440000 ; G 2398 -U 9581 ; WX 602 ; N uni256D ; G 2399 -U 9582 ; WX 602 ; N uni256E ; G 2400 -U 9583 ; WX 602 ; N uni256F ; G 2401 -U 9584 ; WX 602 ; N uni2570 ; G 2402 -U 9585 ; WX 602 ; N uni2571 ; G 2403 -U 9586 ; WX 602 ; N uni2572 ; G 2404 -U 9587 ; WX 602 ; N uni2573 ; G 2405 -U 9588 ; WX 602 ; N uni2574 ; G 2406 -U 9589 ; WX 602 ; N uni2575 ; G 2407 -U 9590 ; WX 602 ; N uni2576 ; G 2408 -U 9591 ; WX 602 ; N uni2577 ; G 2409 -U 9592 ; WX 602 ; N uni2578 ; G 2410 -U 9593 ; WX 602 ; N uni2579 ; G 2411 -U 9594 ; WX 602 ; N uni257A ; G 2412 -U 9595 ; WX 602 ; N uni257B ; G 2413 -U 9596 ; WX 602 ; N uni257C ; G 2414 -U 9597 ; WX 602 ; N uni257D ; G 2415 -U 9598 ; WX 602 ; N uni257E ; G 2416 -U 9599 ; WX 602 ; N uni257F ; G 2417 -U 9600 ; WX 602 ; N upblock ; G 2418 -U 9601 ; WX 602 ; N uni2581 ; G 2419 -U 9602 ; WX 602 ; N uni2582 ; G 2420 -U 9603 ; WX 602 ; N uni2583 ; G 2421 -U 9604 ; WX 602 ; N dnblock ; G 2422 -U 9605 ; WX 602 ; N uni2585 ; G 2423 -U 9606 ; WX 602 ; N uni2586 ; G 2424 -U 9607 ; WX 602 ; N uni2587 ; G 2425 -U 9608 ; WX 602 ; N block ; G 2426 -U 9609 ; WX 602 ; N uni2589 ; G 2427 -U 9610 ; WX 602 ; N uni258A ; G 2428 -U 9611 ; WX 602 ; N uni258B ; G 2429 -U 9612 ; WX 602 ; N lfblock ; G 2430 -U 9613 ; WX 602 ; N uni258D ; G 2431 -U 9614 ; WX 602 ; N uni258E ; G 2432 -U 9615 ; WX 602 ; N uni258F ; G 2433 -U 9616 ; WX 602 ; N rtblock ; G 2434 -U 9617 ; WX 602 ; N ltshade ; G 2435 -U 9618 ; WX 602 ; N shade ; G 2436 -U 9619 ; WX 602 ; N dkshade ; G 2437 -U 9620 ; WX 602 ; N uni2594 ; G 2438 -U 9621 ; WX 602 ; N uni2595 ; G 2439 -U 9622 ; WX 602 ; N uni2596 ; G 2440 -U 9623 ; WX 602 ; N uni2597 ; G 2441 -U 9624 ; WX 602 ; N uni2598 ; G 2442 -U 9625 ; WX 602 ; N uni2599 ; G 2443 -U 9626 ; WX 602 ; N uni259A ; G 2444 -U 9627 ; WX 602 ; N uni259B ; G 2445 -U 9628 ; WX 602 ; N uni259C ; G 2446 -U 9629 ; WX 602 ; N uni259D ; G 2447 -U 9630 ; WX 602 ; N uni259E ; G 2448 -U 9631 ; WX 602 ; N uni259F ; G 2449 -U 9632 ; WX 602 ; N filledbox ; G 2450 -U 9633 ; WX 602 ; N H22073 ; G 2451 -U 9634 ; WX 602 ; N uni25A2 ; G 2452 -U 9635 ; WX 602 ; N uni25A3 ; G 2453 -U 9636 ; WX 602 ; N uni25A4 ; G 2454 -U 9637 ; WX 602 ; N uni25A5 ; G 2455 -U 9638 ; WX 602 ; N uni25A6 ; G 2456 -U 9639 ; WX 602 ; N uni25A7 ; G 2457 -U 9640 ; WX 602 ; N uni25A8 ; G 2458 -U 9641 ; WX 602 ; N uni25A9 ; G 2459 -U 9642 ; WX 602 ; N H18543 ; G 2460 -U 9643 ; WX 602 ; N H18551 ; G 2461 -U 9644 ; WX 602 ; N filledrect ; G 2462 -U 9645 ; WX 602 ; N uni25AD ; G 2463 -U 9646 ; WX 602 ; N uni25AE ; G 2464 -U 9647 ; WX 602 ; N uni25AF ; G 2465 -U 9648 ; WX 602 ; N uni25B0 ; G 2466 -U 9649 ; WX 602 ; N uni25B1 ; G 2467 -U 9650 ; WX 602 ; N triagup ; G 2468 -U 9651 ; WX 602 ; N uni25B3 ; G 2469 -U 9652 ; WX 602 ; N uni25B4 ; G 2470 -U 9653 ; WX 602 ; N uni25B5 ; G 2471 -U 9654 ; WX 602 ; N uni25B6 ; G 2472 -U 9655 ; WX 602 ; N uni25B7 ; G 2473 -U 9656 ; WX 602 ; N uni25B8 ; G 2474 -U 9657 ; WX 602 ; N uni25B9 ; G 2475 -U 9658 ; WX 602 ; N triagrt ; G 2476 -U 9659 ; WX 602 ; N uni25BB ; G 2477 -U 9660 ; WX 602 ; N triagdn ; G 2478 -U 9661 ; WX 602 ; N uni25BD ; G 2479 -U 9662 ; WX 602 ; N uni25BE ; G 2480 -U 9663 ; WX 602 ; N uni25BF ; G 2481 -U 9664 ; WX 602 ; N uni25C0 ; G 2482 -U 9665 ; WX 602 ; N uni25C1 ; G 2483 -U 9666 ; WX 602 ; N uni25C2 ; G 2484 -U 9667 ; WX 602 ; N uni25C3 ; G 2485 -U 9668 ; WX 602 ; N triaglf ; G 2486 -U 9669 ; WX 602 ; N uni25C5 ; G 2487 -U 9670 ; WX 602 ; N uni25C6 ; G 2488 -U 9671 ; WX 602 ; N uni25C7 ; G 2489 -U 9672 ; WX 602 ; N uni25C8 ; G 2490 -U 9673 ; WX 602 ; N uni25C9 ; G 2491 -U 9674 ; WX 602 ; N lozenge ; G 2492 -U 9675 ; WX 602 ; N circle ; G 2493 -U 9676 ; WX 602 ; N uni25CC ; G 2494 -U 9677 ; WX 602 ; N uni25CD ; G 2495 -U 9678 ; WX 602 ; N uni25CE ; G 2496 -U 9679 ; WX 602 ; N H18533 ; G 2497 -U 9680 ; WX 602 ; N uni25D0 ; G 2498 -U 9681 ; WX 602 ; N uni25D1 ; G 2499 -U 9682 ; WX 602 ; N uni25D2 ; G 2500 -U 9683 ; WX 602 ; N uni25D3 ; G 2501 -U 9684 ; WX 602 ; N uni25D4 ; G 2502 -U 9685 ; WX 602 ; N uni25D5 ; G 2503 -U 9686 ; WX 602 ; N uni25D6 ; G 2504 -U 9687 ; WX 602 ; N uni25D7 ; G 2505 -U 9688 ; WX 602 ; N invbullet ; G 2506 -U 9689 ; WX 602 ; N invcircle ; G 2507 -U 9690 ; WX 602 ; N uni25DA ; G 2508 -U 9691 ; WX 602 ; N uni25DB ; G 2509 -U 9692 ; WX 602 ; N uni25DC ; G 2510 -U 9693 ; WX 602 ; N uni25DD ; G 2511 -U 9694 ; WX 602 ; N uni25DE ; G 2512 -U 9695 ; WX 602 ; N uni25DF ; G 2513 -U 9696 ; WX 602 ; N uni25E0 ; G 2514 -U 9697 ; WX 602 ; N uni25E1 ; G 2515 -U 9698 ; WX 602 ; N uni25E2 ; G 2516 -U 9699 ; WX 602 ; N uni25E3 ; G 2517 -U 9700 ; WX 602 ; N uni25E4 ; G 2518 -U 9701 ; WX 602 ; N uni25E5 ; G 2519 -U 9702 ; WX 602 ; N openbullet ; G 2520 -U 9703 ; WX 602 ; N uni25E7 ; G 2521 -U 9704 ; WX 602 ; N uni25E8 ; G 2522 -U 9705 ; WX 602 ; N uni25E9 ; G 2523 -U 9706 ; WX 602 ; N uni25EA ; G 2524 -U 9707 ; WX 602 ; N uni25EB ; G 2525 -U 9708 ; WX 602 ; N uni25EC ; G 2526 -U 9709 ; WX 602 ; N uni25ED ; G 2527 -U 9710 ; WX 602 ; N uni25EE ; G 2528 -U 9711 ; WX 602 ; N uni25EF ; G 2529 -U 9712 ; WX 602 ; N uni25F0 ; G 2530 -U 9713 ; WX 602 ; N uni25F1 ; G 2531 -U 9714 ; WX 602 ; N uni25F2 ; G 2532 -U 9715 ; WX 602 ; N uni25F3 ; G 2533 -U 9716 ; WX 602 ; N uni25F4 ; G 2534 -U 9717 ; WX 602 ; N uni25F5 ; G 2535 -U 9718 ; WX 602 ; N uni25F6 ; G 2536 -U 9719 ; WX 602 ; N uni25F7 ; G 2537 -U 9720 ; WX 602 ; N uni25F8 ; G 2538 -U 9721 ; WX 602 ; N uni25F9 ; G 2539 -U 9722 ; WX 602 ; N uni25FA ; G 2540 -U 9723 ; WX 602 ; N uni25FB ; G 2541 -U 9724 ; WX 602 ; N uni25FC ; G 2542 -U 9725 ; WX 602 ; N uni25FD ; G 2543 -U 9726 ; WX 602 ; N uni25FE ; G 2544 -U 9727 ; WX 602 ; N uni25FF ; G 2545 -U 9728 ; WX 602 ; N uni2600 ; G 2546 -U 9784 ; WX 602 ; N uni2638 ; G 2547 -U 9785 ; WX 602 ; N uni2639 ; G 2548 -U 9786 ; WX 602 ; N smileface ; G 2549 -U 9787 ; WX 602 ; N invsmileface ; G 2550 -U 9788 ; WX 602 ; N sun ; G 2551 -U 9791 ; WX 602 ; N uni263F ; G 2552 -U 9792 ; WX 602 ; N female ; G 2553 -U 9793 ; WX 602 ; N uni2641 ; G 2554 -U 9794 ; WX 602 ; N male ; G 2555 -U 9795 ; WX 602 ; N uni2643 ; G 2556 -U 9796 ; WX 602 ; N uni2644 ; G 2557 -U 9797 ; WX 602 ; N uni2645 ; G 2558 -U 9798 ; WX 602 ; N uni2646 ; G 2559 -U 9799 ; WX 602 ; N uni2647 ; G 2560 -U 9824 ; WX 602 ; N spade ; G 2561 -U 9825 ; WX 602 ; N uni2661 ; G 2562 -U 9826 ; WX 602 ; N uni2662 ; G 2563 -U 9827 ; WX 602 ; N club ; G 2564 -U 9828 ; WX 602 ; N uni2664 ; G 2565 -U 9829 ; WX 602 ; N heart ; G 2566 -U 9830 ; WX 602 ; N diamond ; G 2567 -U 9831 ; WX 602 ; N uni2667 ; G 2568 -U 9833 ; WX 602 ; N uni2669 ; G 2569 -U 9834 ; WX 602 ; N musicalnote ; G 2570 -U 9835 ; WX 602 ; N musicalnotedbl ; G 2571 -U 9836 ; WX 602 ; N uni266C ; G 2572 -U 9837 ; WX 602 ; N uni266D ; G 2573 -U 9838 ; WX 602 ; N uni266E ; G 2574 -U 9839 ; WX 602 ; N uni266F ; G 2575 -U 10178 ; WX 602 ; N uni27C2 ; G 2576 -U 10181 ; WX 602 ; N uni27C5 ; G 2577 -U 10182 ; WX 602 ; N uni27C6 ; G 2578 -U 10204 ; WX 602 ; N uni27DC ; G 2579 -U 10208 ; WX 602 ; N uni27E0 ; G 2580 -U 10214 ; WX 602 ; N uni27E6 ; G 2581 -U 10215 ; WX 602 ; N uni27E7 ; G 2582 -U 10216 ; WX 602 ; N uni27E8 ; G 2583 -U 10217 ; WX 602 ; N uni27E9 ; G 2584 -U 10218 ; WX 602 ; N uni27EA ; G 2585 -U 10219 ; WX 602 ; N uni27EB ; G 2586 -U 10229 ; WX 602 ; N uni27F5 ; G 2587 -U 10230 ; WX 602 ; N uni27F6 ; G 2588 -U 10231 ; WX 602 ; N uni27F7 ; G 2589 -U 10631 ; WX 602 ; N uni2987 ; G 2590 -U 10632 ; WX 602 ; N uni2988 ; G 2591 -U 10647 ; WX 602 ; N uni2997 ; G 2592 -U 10648 ; WX 602 ; N uni2998 ; G 2593 -U 10731 ; WX 602 ; N uni29EB ; G 2594 -U 10746 ; WX 602 ; N uni29FA ; G 2595 -U 10747 ; WX 602 ; N uni29FB ; G 2596 -U 10752 ; WX 602 ; N uni2A00 ; G 2597 -U 10799 ; WX 602 ; N uni2A2F ; G 2598 -U 10858 ; WX 602 ; N uni2A6A ; G 2599 -U 10859 ; WX 602 ; N uni2A6B ; G 2600 -U 11013 ; WX 602 ; N uni2B05 ; G 2601 -U 11014 ; WX 602 ; N uni2B06 ; G 2602 -U 11015 ; WX 602 ; N uni2B07 ; G 2603 -U 11016 ; WX 602 ; N uni2B08 ; G 2604 -U 11017 ; WX 602 ; N uni2B09 ; G 2605 -U 11018 ; WX 602 ; N uni2B0A ; G 2606 -U 11019 ; WX 602 ; N uni2B0B ; G 2607 -U 11020 ; WX 602 ; N uni2B0C ; G 2608 -U 11021 ; WX 602 ; N uni2B0D ; G 2609 -U 11026 ; WX 602 ; N uni2B12 ; G 2610 -U 11027 ; WX 602 ; N uni2B13 ; G 2611 -U 11028 ; WX 602 ; N uni2B14 ; G 2612 -U 11029 ; WX 602 ; N uni2B15 ; G 2613 -U 11030 ; WX 602 ; N uni2B16 ; G 2614 -U 11031 ; WX 602 ; N uni2B17 ; G 2615 -U 11032 ; WX 602 ; N uni2B18 ; G 2616 -U 11033 ; WX 602 ; N uni2B19 ; G 2617 -U 11034 ; WX 602 ; N uni2B1A ; G 2618 -U 11364 ; WX 602 ; N uni2C64 ; G 2619 -U 11373 ; WX 602 ; N uni2C6D ; G 2620 -U 11374 ; WX 602 ; N uni2C6E ; G 2621 -U 11375 ; WX 602 ; N uni2C6F ; G 2622 -U 11376 ; WX 602 ; N uni2C70 ; G 2623 -U 11381 ; WX 602 ; N uni2C75 ; G 2624 -U 11382 ; WX 602 ; N uni2C76 ; G 2625 -U 11383 ; WX 602 ; N uni2C77 ; G 2626 -U 11385 ; WX 602 ; N uni2C79 ; G 2627 -U 11386 ; WX 602 ; N uni2C7A ; G 2628 -U 11388 ; WX 602 ; N uni2C7C ; G 2629 -U 11389 ; WX 602 ; N uni2C7D ; G 2630 -U 11390 ; WX 602 ; N uni2C7E ; G 2631 -U 11391 ; WX 602 ; N uni2C7F ; G 2632 -U 11800 ; WX 602 ; N uni2E18 ; G 2633 -U 11807 ; WX 602 ; N uni2E1F ; G 2634 -U 11810 ; WX 602 ; N uni2E22 ; G 2635 -U 11811 ; WX 602 ; N uni2E23 ; G 2636 -U 11812 ; WX 602 ; N uni2E24 ; G 2637 -U 11813 ; WX 602 ; N uni2E25 ; G 2638 -U 11822 ; WX 602 ; N uni2E2E ; G 2639 -U 42760 ; WX 602 ; N uniA708 ; G 2640 -U 42761 ; WX 602 ; N uniA709 ; G 2641 -U 42762 ; WX 602 ; N uniA70A ; G 2642 -U 42763 ; WX 602 ; N uniA70B ; G 2643 -U 42764 ; WX 602 ; N uniA70C ; G 2644 -U 42765 ; WX 602 ; N uniA70D ; G 2645 -U 42766 ; WX 602 ; N uniA70E ; G 2646 -U 42767 ; WX 602 ; N uniA70F ; G 2647 -U 42768 ; WX 602 ; N uniA710 ; G 2648 -U 42769 ; WX 602 ; N uniA711 ; G 2649 -U 42770 ; WX 602 ; N uniA712 ; G 2650 -U 42771 ; WX 602 ; N uniA713 ; G 2651 -U 42772 ; WX 602 ; N uniA714 ; G 2652 -U 42773 ; WX 602 ; N uniA715 ; G 2653 -U 42774 ; WX 602 ; N uniA716 ; G 2654 -U 42779 ; WX 602 ; N uniA71B ; G 2655 -U 42780 ; WX 602 ; N uniA71C ; G 2656 -U 42781 ; WX 602 ; N uniA71D ; G 2657 -U 42782 ; WX 602 ; N uniA71E ; G 2658 -U 42783 ; WX 602 ; N uniA71F ; G 2659 -U 42786 ; WX 602 ; N uniA722 ; G 2660 -U 42787 ; WX 602 ; N uniA723 ; G 2661 -U 42788 ; WX 602 ; N uniA724 ; G 2662 -U 42789 ; WX 602 ; N uniA725 ; G 2663 -U 42790 ; WX 602 ; N uniA726 ; G 2664 -U 42791 ; WX 602 ; N uniA727 ; G 2665 -U 42889 ; WX 602 ; N uniA789 ; G 2666 -U 42890 ; WX 602 ; N uniA78A ; G 2667 -U 42891 ; WX 602 ; N uniA78B ; G 2668 -U 42892 ; WX 602 ; N uniA78C ; G 2669 -U 42893 ; WX 602 ; N uniA78D ; G 2670 -U 42894 ; WX 602 ; N uniA78E ; G 2671 -U 42896 ; WX 602 ; N uniA790 ; G 2672 -U 42897 ; WX 602 ; N uniA791 ; G 2673 -U 42922 ; WX 602 ; N uniA7AA ; G 2674 -U 43000 ; WX 602 ; N uniA7F8 ; G 2675 -U 43001 ; WX 602 ; N uniA7F9 ; G 2676 -U 63173 ; WX 602 ; N uniF6C5 ; G 2677 -U 64257 ; WX 602 ; N fi ; G 2678 -U 64258 ; WX 602 ; N fl ; G 2679 -U 65529 ; WX 602 ; N uniFFF9 ; G 2680 -U 65530 ; WX 602 ; N uniFFFA ; G 2681 -U 65531 ; WX 602 ; N uniFFFB ; G 2682 -U 65532 ; WX 602 ; N uniFFFC ; G 2683 -U 65533 ; WX 602 ; N uniFFFD ; G 2684 -EndCharMetrics -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSansMono.ttf b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSansMono.ttf deleted file mode 100644 index f5786022..00000000 Binary files a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSansMono.ttf and /dev/null differ diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSansMono.ufm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSansMono.ufm deleted file mode 100644 index 6b2d4ac7..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSansMono.ufm +++ /dev/null @@ -1,3284 +0,0 @@ -StartFontMetrics 4.1 -Notice Converted by PHP-font-lib -Comment https://github.com/PhenX/php-font-lib -EncodingScheme FontSpecific -FontName DejaVu Sans Mono -FontSubfamily Book -UniqueID DejaVu Sans Mono -FullName DejaVu Sans Mono -Version Version 2.37 -PostScriptName DejaVuSansMono -Manufacturer DejaVu fonts team -FontVendorURL http://dejavu.sourceforge.net -LicenseURL http://dejavu.sourceforge.net/wiki/index.php/License -Weight Medium -ItalicAngle 0 -IsFixedPitch true -UnderlineThickness 44 -UnderlinePosition -63 -FontHeightOffset 0 -Ascender 928 -Descender -236 -FontBBox -558 -375 718 1028 -StartCharMetrics 3377 -U 32 ; WX 602 ; N space ; G 3 -U 33 ; WX 602 ; N exclam ; G 4 -U 34 ; WX 602 ; N quotedbl ; G 5 -U 35 ; WX 602 ; N numbersign ; G 6 -U 36 ; WX 602 ; N dollar ; G 7 -U 37 ; WX 602 ; N percent ; G 8 -U 38 ; WX 602 ; N ampersand ; G 9 -U 39 ; WX 602 ; N quotesingle ; G 10 -U 40 ; WX 602 ; N parenleft ; G 11 -U 41 ; WX 602 ; N parenright ; G 12 -U 42 ; WX 602 ; N asterisk ; G 13 -U 43 ; WX 602 ; N plus ; G 14 -U 44 ; WX 602 ; N comma ; G 15 -U 45 ; WX 602 ; N hyphen ; G 16 -U 46 ; WX 602 ; N period ; G 17 -U 47 ; WX 602 ; N slash ; G 18 -U 48 ; WX 602 ; N zero ; G 19 -U 49 ; WX 602 ; N one ; G 20 -U 50 ; WX 602 ; N two ; G 21 -U 51 ; WX 602 ; N three ; G 22 -U 52 ; WX 602 ; N four ; G 23 -U 53 ; WX 602 ; N five ; G 24 -U 54 ; WX 602 ; N six ; G 25 -U 55 ; WX 602 ; N seven ; G 26 -U 56 ; WX 602 ; N eight ; G 27 -U 57 ; WX 602 ; N nine ; G 28 -U 58 ; WX 602 ; N colon ; G 29 -U 59 ; WX 602 ; N semicolon ; G 30 -U 60 ; WX 602 ; N less ; G 31 -U 61 ; WX 602 ; N equal ; G 32 -U 62 ; WX 602 ; N greater ; G 33 -U 63 ; WX 602 ; N question ; G 34 -U 64 ; WX 602 ; N at ; G 35 -U 65 ; WX 602 ; N A ; G 36 -U 66 ; WX 602 ; N B ; G 37 -U 67 ; WX 602 ; N C ; G 38 -U 68 ; WX 602 ; N D ; G 39 -U 69 ; WX 602 ; N E ; G 40 -U 70 ; WX 602 ; N F ; G 41 -U 71 ; WX 602 ; N G ; G 42 -U 72 ; WX 602 ; N H ; G 43 -U 73 ; WX 602 ; N I ; G 44 -U 74 ; WX 602 ; N J ; G 45 -U 75 ; WX 602 ; N K ; G 46 -U 76 ; WX 602 ; N L ; G 47 -U 77 ; WX 602 ; N M ; G 48 -U 78 ; WX 602 ; N N ; G 49 -U 79 ; WX 602 ; N O ; G 50 -U 80 ; WX 602 ; N P ; G 51 -U 81 ; WX 602 ; N Q ; G 52 -U 82 ; WX 602 ; N R ; G 53 -U 83 ; WX 602 ; N S ; G 54 -U 84 ; WX 602 ; N T ; G 55 -U 85 ; WX 602 ; N U ; G 56 -U 86 ; WX 602 ; N V ; G 57 -U 87 ; WX 602 ; N W ; G 58 -U 88 ; WX 602 ; N X ; G 59 -U 89 ; WX 602 ; N Y ; G 60 -U 90 ; WX 602 ; N Z ; G 61 -U 91 ; WX 602 ; N bracketleft ; G 62 -U 92 ; WX 602 ; N backslash ; G 63 -U 93 ; WX 602 ; N bracketright ; G 64 -U 94 ; WX 602 ; N asciicircum ; G 65 -U 95 ; WX 602 ; N underscore ; G 66 -U 96 ; WX 602 ; N grave ; G 67 -U 97 ; WX 602 ; N a ; G 68 -U 98 ; WX 602 ; N b ; G 69 -U 99 ; WX 602 ; N c ; G 70 -U 100 ; WX 602 ; N d ; G 71 -U 101 ; WX 602 ; N e ; G 72 -U 102 ; WX 602 ; N f ; G 73 -U 103 ; WX 602 ; N g ; G 74 -U 104 ; WX 602 ; N h ; G 75 -U 105 ; WX 602 ; N i ; G 76 -U 106 ; WX 602 ; N j ; G 77 -U 107 ; WX 602 ; N k ; G 78 -U 108 ; WX 602 ; N l ; G 79 -U 109 ; WX 602 ; N m ; G 80 -U 110 ; WX 602 ; N n ; G 81 -U 111 ; WX 602 ; N o ; G 82 -U 112 ; WX 602 ; N p ; G 83 -U 113 ; WX 602 ; N q ; G 84 -U 114 ; WX 602 ; N r ; G 85 -U 115 ; WX 602 ; N s ; G 86 -U 116 ; WX 602 ; N t ; G 87 -U 117 ; WX 602 ; N u ; G 88 -U 118 ; WX 602 ; N v ; G 89 -U 119 ; WX 602 ; N w ; G 90 -U 120 ; WX 602 ; N x ; G 91 -U 121 ; WX 602 ; N y ; G 92 -U 122 ; WX 602 ; N z ; G 93 -U 123 ; WX 602 ; N braceleft ; G 94 -U 124 ; WX 602 ; N bar ; G 95 -U 125 ; WX 602 ; N braceright ; G 96 -U 126 ; WX 602 ; N asciitilde ; G 97 -U 160 ; WX 602 ; N nbspace ; G 98 -U 161 ; WX 602 ; N exclamdown ; G 99 -U 162 ; WX 602 ; N cent ; G 100 -U 163 ; WX 602 ; N sterling ; G 101 -U 164 ; WX 602 ; N currency ; G 102 -U 165 ; WX 602 ; N yen ; G 103 -U 166 ; WX 602 ; N brokenbar ; G 104 -U 167 ; WX 602 ; N section ; G 105 -U 168 ; WX 602 ; N dieresis ; G 106 -U 169 ; WX 602 ; N copyright ; G 107 -U 170 ; WX 602 ; N ordfeminine ; G 108 -U 171 ; WX 602 ; N guillemotleft ; G 109 -U 172 ; WX 602 ; N logicalnot ; G 110 -U 173 ; WX 602 ; N sfthyphen ; G 111 -U 174 ; WX 602 ; N registered ; G 112 -U 175 ; WX 602 ; N macron ; G 113 -U 176 ; WX 602 ; N degree ; G 114 -U 177 ; WX 602 ; N plusminus ; G 115 -U 178 ; WX 602 ; N twosuperior ; G 116 -U 179 ; WX 602 ; N threesuperior ; G 117 -U 180 ; WX 602 ; N acute ; G 118 -U 181 ; WX 602 ; N mu ; G 119 -U 182 ; WX 602 ; N paragraph ; G 120 -U 183 ; WX 602 ; N periodcentered ; G 121 -U 184 ; WX 602 ; N cedilla ; G 122 -U 185 ; WX 602 ; N onesuperior ; G 123 -U 186 ; WX 602 ; N ordmasculine ; G 124 -U 187 ; WX 602 ; N guillemotright ; G 125 -U 188 ; WX 602 ; N onequarter ; G 126 -U 189 ; WX 602 ; N onehalf ; G 127 -U 190 ; WX 602 ; N threequarters ; G 128 -U 191 ; WX 602 ; N questiondown ; G 129 -U 192 ; WX 602 ; N Agrave ; G 130 -U 193 ; WX 602 ; N Aacute ; G 131 -U 194 ; WX 602 ; N Acircumflex ; G 132 -U 195 ; WX 602 ; N Atilde ; G 133 -U 196 ; WX 602 ; N Adieresis ; G 134 -U 197 ; WX 602 ; N Aring ; G 135 -U 198 ; WX 602 ; N AE ; G 136 -U 199 ; WX 602 ; N Ccedilla ; G 137 -U 200 ; WX 602 ; N Egrave ; G 138 -U 201 ; WX 602 ; N Eacute ; G 139 -U 202 ; WX 602 ; N Ecircumflex ; G 140 -U 203 ; WX 602 ; N Edieresis ; G 141 -U 204 ; WX 602 ; N Igrave ; G 142 -U 205 ; WX 602 ; N Iacute ; G 143 -U 206 ; WX 602 ; N Icircumflex ; G 144 -U 207 ; WX 602 ; N Idieresis ; G 145 -U 208 ; WX 602 ; N Eth ; G 146 -U 209 ; WX 602 ; N Ntilde ; G 147 -U 210 ; WX 602 ; N Ograve ; G 148 -U 211 ; WX 602 ; N Oacute ; G 149 -U 212 ; WX 602 ; N Ocircumflex ; G 150 -U 213 ; WX 602 ; N Otilde ; G 151 -U 214 ; WX 602 ; N Odieresis ; G 152 -U 215 ; WX 602 ; N multiply ; G 153 -U 216 ; WX 602 ; N Oslash ; G 154 -U 217 ; WX 602 ; N Ugrave ; G 155 -U 218 ; WX 602 ; N Uacute ; G 156 -U 219 ; WX 602 ; N Ucircumflex ; G 157 -U 220 ; WX 602 ; N Udieresis ; G 158 -U 221 ; WX 602 ; N Yacute ; G 159 -U 222 ; WX 602 ; N Thorn ; G 160 -U 223 ; WX 602 ; N germandbls ; G 161 -U 224 ; WX 602 ; N agrave ; G 162 -U 225 ; WX 602 ; N aacute ; G 163 -U 226 ; WX 602 ; N acircumflex ; G 164 -U 227 ; WX 602 ; N atilde ; G 165 -U 228 ; WX 602 ; N adieresis ; G 166 -U 229 ; WX 602 ; N aring ; G 167 -U 230 ; WX 602 ; N ae ; G 168 -U 231 ; WX 602 ; N ccedilla ; G 169 -U 232 ; WX 602 ; N egrave ; G 170 -U 233 ; WX 602 ; N eacute ; G 171 -U 234 ; WX 602 ; N ecircumflex ; G 172 -U 235 ; WX 602 ; N edieresis ; G 173 -U 236 ; WX 602 ; N igrave ; G 174 -U 237 ; WX 602 ; N iacute ; G 175 -U 238 ; WX 602 ; N icircumflex ; G 176 -U 239 ; WX 602 ; N idieresis ; G 177 -U 240 ; WX 602 ; N eth ; G 178 -U 241 ; WX 602 ; N ntilde ; G 179 -U 242 ; WX 602 ; N ograve ; G 180 -U 243 ; WX 602 ; N oacute ; G 181 -U 244 ; WX 602 ; N ocircumflex ; G 182 -U 245 ; WX 602 ; N otilde ; G 183 -U 246 ; WX 602 ; N odieresis ; G 184 -U 247 ; WX 602 ; N divide ; G 185 -U 248 ; WX 602 ; N oslash ; G 186 -U 249 ; WX 602 ; N ugrave ; G 187 -U 250 ; WX 602 ; N uacute ; G 188 -U 251 ; WX 602 ; N ucircumflex ; G 189 -U 252 ; WX 602 ; N udieresis ; G 190 -U 253 ; WX 602 ; N yacute ; G 191 -U 254 ; WX 602 ; N thorn ; G 192 -U 255 ; WX 602 ; N ydieresis ; G 193 -U 256 ; WX 602 ; N Amacron ; G 194 -U 257 ; WX 602 ; N amacron ; G 195 -U 258 ; WX 602 ; N Abreve ; G 196 -U 259 ; WX 602 ; N abreve ; G 197 -U 260 ; WX 602 ; N Aogonek ; G 198 -U 261 ; WX 602 ; N aogonek ; G 199 -U 262 ; WX 602 ; N Cacute ; G 200 -U 263 ; WX 602 ; N cacute ; G 201 -U 264 ; WX 602 ; N Ccircumflex ; G 202 -U 265 ; WX 602 ; N ccircumflex ; G 203 -U 266 ; WX 602 ; N Cdotaccent ; G 204 -U 267 ; WX 602 ; N cdotaccent ; G 205 -U 268 ; WX 602 ; N Ccaron ; G 206 -U 269 ; WX 602 ; N ccaron ; G 207 -U 270 ; WX 602 ; N Dcaron ; G 208 -U 271 ; WX 602 ; N dcaron ; G 209 -U 272 ; WX 602 ; N Dcroat ; G 210 -U 273 ; WX 602 ; N dmacron ; G 211 -U 274 ; WX 602 ; N Emacron ; G 212 -U 275 ; WX 602 ; N emacron ; G 213 -U 276 ; WX 602 ; N Ebreve ; G 214 -U 277 ; WX 602 ; N ebreve ; G 215 -U 278 ; WX 602 ; N Edotaccent ; G 216 -U 279 ; WX 602 ; N edotaccent ; G 217 -U 280 ; WX 602 ; N Eogonek ; G 218 -U 281 ; WX 602 ; N eogonek ; G 219 -U 282 ; WX 602 ; N Ecaron ; G 220 -U 283 ; WX 602 ; N ecaron ; G 221 -U 284 ; WX 602 ; N Gcircumflex ; G 222 -U 285 ; WX 602 ; N gcircumflex ; G 223 -U 286 ; WX 602 ; N Gbreve ; G 224 -U 287 ; WX 602 ; N gbreve ; G 225 -U 288 ; WX 602 ; N Gdotaccent ; G 226 -U 289 ; WX 602 ; N gdotaccent ; G 227 -U 290 ; WX 602 ; N Gcommaaccent ; G 228 -U 291 ; WX 602 ; N gcommaaccent ; G 229 -U 292 ; WX 602 ; N Hcircumflex ; G 230 -U 293 ; WX 602 ; N hcircumflex ; G 231 -U 294 ; WX 602 ; N Hbar ; G 232 -U 295 ; WX 602 ; N hbar ; G 233 -U 296 ; WX 602 ; N Itilde ; G 234 -U 297 ; WX 602 ; N itilde ; G 235 -U 298 ; WX 602 ; N Imacron ; G 236 -U 299 ; WX 602 ; N imacron ; G 237 -U 300 ; WX 602 ; N Ibreve ; G 238 -U 301 ; WX 602 ; N ibreve ; G 239 -U 302 ; WX 602 ; N Iogonek ; G 240 -U 303 ; WX 602 ; N iogonek ; G 241 -U 304 ; WX 602 ; N Idot ; G 242 -U 305 ; WX 602 ; N dotlessi ; G 243 -U 306 ; WX 602 ; N IJ ; G 244 -U 307 ; WX 602 ; N ij ; G 245 -U 308 ; WX 602 ; N Jcircumflex ; G 246 -U 309 ; WX 602 ; N jcircumflex ; G 247 -U 310 ; WX 602 ; N Kcommaaccent ; G 248 -U 311 ; WX 602 ; N kcommaaccent ; G 249 -U 312 ; WX 602 ; N kgreenlandic ; G 250 -U 313 ; WX 602 ; N Lacute ; G 251 -U 314 ; WX 602 ; N lacute ; G 252 -U 315 ; WX 602 ; N Lcommaaccent ; G 253 -U 316 ; WX 602 ; N lcommaaccent ; G 254 -U 317 ; WX 602 ; N Lcaron ; G 255 -U 318 ; WX 602 ; N lcaron ; G 256 -U 319 ; WX 602 ; N Ldot ; G 257 -U 320 ; WX 602 ; N ldot ; G 258 -U 321 ; WX 602 ; N Lslash ; G 259 -U 322 ; WX 602 ; N lslash ; G 260 -U 323 ; WX 602 ; N Nacute ; G 261 -U 324 ; WX 602 ; N nacute ; G 262 -U 325 ; WX 602 ; N Ncommaaccent ; G 263 -U 326 ; WX 602 ; N ncommaaccent ; G 264 -U 327 ; WX 602 ; N Ncaron ; G 265 -U 328 ; WX 602 ; N ncaron ; G 266 -U 329 ; WX 602 ; N napostrophe ; G 267 -U 330 ; WX 602 ; N Eng ; G 268 -U 331 ; WX 602 ; N eng ; G 269 -U 332 ; WX 602 ; N Omacron ; G 270 -U 333 ; WX 602 ; N omacron ; G 271 -U 334 ; WX 602 ; N Obreve ; G 272 -U 335 ; WX 602 ; N obreve ; G 273 -U 336 ; WX 602 ; N Ohungarumlaut ; G 274 -U 337 ; WX 602 ; N ohungarumlaut ; G 275 -U 338 ; WX 602 ; N OE ; G 276 -U 339 ; WX 602 ; N oe ; G 277 -U 340 ; WX 602 ; N Racute ; G 278 -U 341 ; WX 602 ; N racute ; G 279 -U 342 ; WX 602 ; N Rcommaaccent ; G 280 -U 343 ; WX 602 ; N rcommaaccent ; G 281 -U 344 ; WX 602 ; N Rcaron ; G 282 -U 345 ; WX 602 ; N rcaron ; G 283 -U 346 ; WX 602 ; N Sacute ; G 284 -U 347 ; WX 602 ; N sacute ; G 285 -U 348 ; WX 602 ; N Scircumflex ; G 286 -U 349 ; WX 602 ; N scircumflex ; G 287 -U 350 ; WX 602 ; N Scedilla ; G 288 -U 351 ; WX 602 ; N scedilla ; G 289 -U 352 ; WX 602 ; N Scaron ; G 290 -U 353 ; WX 602 ; N scaron ; G 291 -U 354 ; WX 602 ; N Tcommaaccent ; G 292 -U 355 ; WX 602 ; N tcommaaccent ; G 293 -U 356 ; WX 602 ; N Tcaron ; G 294 -U 357 ; WX 602 ; N tcaron ; G 295 -U 358 ; WX 602 ; N Tbar ; G 296 -U 359 ; WX 602 ; N tbar ; G 297 -U 360 ; WX 602 ; N Utilde ; G 298 -U 361 ; WX 602 ; N utilde ; G 299 -U 362 ; WX 602 ; N Umacron ; G 300 -U 363 ; WX 602 ; N umacron ; G 301 -U 364 ; WX 602 ; N Ubreve ; G 302 -U 365 ; WX 602 ; N ubreve ; G 303 -U 366 ; WX 602 ; N Uring ; G 304 -U 367 ; WX 602 ; N uring ; G 305 -U 368 ; WX 602 ; N Uhungarumlaut ; G 306 -U 369 ; WX 602 ; N uhungarumlaut ; G 307 -U 370 ; WX 602 ; N Uogonek ; G 308 -U 371 ; WX 602 ; N uogonek ; G 309 -U 372 ; WX 602 ; N Wcircumflex ; G 310 -U 373 ; WX 602 ; N wcircumflex ; G 311 -U 374 ; WX 602 ; N Ycircumflex ; G 312 -U 375 ; WX 602 ; N ycircumflex ; G 313 -U 376 ; WX 602 ; N Ydieresis ; G 314 -U 377 ; WX 602 ; N Zacute ; G 315 -U 378 ; WX 602 ; N zacute ; G 316 -U 379 ; WX 602 ; N Zdotaccent ; G 317 -U 380 ; WX 602 ; N zdotaccent ; G 318 -U 381 ; WX 602 ; N Zcaron ; G 319 -U 382 ; WX 602 ; N zcaron ; G 320 -U 383 ; WX 602 ; N longs ; G 321 -U 384 ; WX 602 ; N uni0180 ; G 322 -U 385 ; WX 602 ; N uni0181 ; G 323 -U 386 ; WX 602 ; N uni0182 ; G 324 -U 387 ; WX 602 ; N uni0183 ; G 325 -U 388 ; WX 602 ; N uni0184 ; G 326 -U 389 ; WX 602 ; N uni0185 ; G 327 -U 390 ; WX 602 ; N uni0186 ; G 328 -U 391 ; WX 602 ; N uni0187 ; G 329 -U 392 ; WX 602 ; N uni0188 ; G 330 -U 393 ; WX 602 ; N uni0189 ; G 331 -U 394 ; WX 602 ; N uni018A ; G 332 -U 395 ; WX 602 ; N uni018B ; G 333 -U 396 ; WX 602 ; N uni018C ; G 334 -U 397 ; WX 602 ; N uni018D ; G 335 -U 398 ; WX 602 ; N uni018E ; G 336 -U 399 ; WX 602 ; N uni018F ; G 337 -U 400 ; WX 602 ; N uni0190 ; G 338 -U 401 ; WX 602 ; N uni0191 ; G 339 -U 402 ; WX 602 ; N florin ; G 340 -U 403 ; WX 602 ; N uni0193 ; G 341 -U 404 ; WX 602 ; N uni0194 ; G 342 -U 405 ; WX 602 ; N uni0195 ; G 343 -U 406 ; WX 602 ; N uni0196 ; G 344 -U 407 ; WX 602 ; N uni0197 ; G 345 -U 408 ; WX 602 ; N uni0198 ; G 346 -U 409 ; WX 602 ; N uni0199 ; G 347 -U 410 ; WX 602 ; N uni019A ; G 348 -U 411 ; WX 602 ; N uni019B ; G 349 -U 412 ; WX 602 ; N uni019C ; G 350 -U 413 ; WX 602 ; N uni019D ; G 351 -U 414 ; WX 602 ; N uni019E ; G 352 -U 415 ; WX 602 ; N uni019F ; G 353 -U 416 ; WX 602 ; N Ohorn ; G 354 -U 417 ; WX 602 ; N ohorn ; G 355 -U 418 ; WX 602 ; N uni01A2 ; G 356 -U 419 ; WX 602 ; N uni01A3 ; G 357 -U 420 ; WX 602 ; N uni01A4 ; G 358 -U 421 ; WX 602 ; N uni01A5 ; G 359 -U 422 ; WX 602 ; N uni01A6 ; G 360 -U 423 ; WX 602 ; N uni01A7 ; G 361 -U 424 ; WX 602 ; N uni01A8 ; G 362 -U 425 ; WX 602 ; N uni01A9 ; G 363 -U 426 ; WX 602 ; N uni01AA ; G 364 -U 427 ; WX 602 ; N uni01AB ; G 365 -U 428 ; WX 602 ; N uni01AC ; G 366 -U 429 ; WX 602 ; N uni01AD ; G 367 -U 430 ; WX 602 ; N uni01AE ; G 368 -U 431 ; WX 602 ; N Uhorn ; G 369 -U 432 ; WX 602 ; N uhorn ; G 370 -U 433 ; WX 602 ; N uni01B1 ; G 371 -U 434 ; WX 602 ; N uni01B2 ; G 372 -U 435 ; WX 602 ; N uni01B3 ; G 373 -U 436 ; WX 602 ; N uni01B4 ; G 374 -U 437 ; WX 602 ; N uni01B5 ; G 375 -U 438 ; WX 602 ; N uni01B6 ; G 376 -U 439 ; WX 602 ; N uni01B7 ; G 377 -U 440 ; WX 602 ; N uni01B8 ; G 378 -U 441 ; WX 602 ; N uni01B9 ; G 379 -U 442 ; WX 602 ; N uni01BA ; G 380 -U 443 ; WX 602 ; N uni01BB ; G 381 -U 444 ; WX 602 ; N uni01BC ; G 382 -U 445 ; WX 602 ; N uni01BD ; G 383 -U 446 ; WX 602 ; N uni01BE ; G 384 -U 447 ; WX 602 ; N uni01BF ; G 385 -U 448 ; WX 602 ; N uni01C0 ; G 386 -U 449 ; WX 602 ; N uni01C1 ; G 387 -U 450 ; WX 602 ; N uni01C2 ; G 388 -U 451 ; WX 602 ; N uni01C3 ; G 389 -U 461 ; WX 602 ; N uni01CD ; G 390 -U 462 ; WX 602 ; N uni01CE ; G 391 -U 463 ; WX 602 ; N uni01CF ; G 392 -U 464 ; WX 602 ; N uni01D0 ; G 393 -U 465 ; WX 602 ; N uni01D1 ; G 394 -U 466 ; WX 602 ; N uni01D2 ; G 395 -U 467 ; WX 602 ; N uni01D3 ; G 396 -U 468 ; WX 602 ; N uni01D4 ; G 397 -U 469 ; WX 602 ; N uni01D5 ; G 398 -U 470 ; WX 602 ; N uni01D6 ; G 399 -U 471 ; WX 602 ; N uni01D7 ; G 400 -U 472 ; WX 602 ; N uni01D8 ; G 401 -U 473 ; WX 602 ; N uni01D9 ; G 402 -U 474 ; WX 602 ; N uni01DA ; G 403 -U 475 ; WX 602 ; N uni01DB ; G 404 -U 476 ; WX 602 ; N uni01DC ; G 405 -U 477 ; WX 602 ; N uni01DD ; G 406 -U 478 ; WX 602 ; N uni01DE ; G 407 -U 479 ; WX 602 ; N uni01DF ; G 408 -U 480 ; WX 602 ; N uni01E0 ; G 409 -U 481 ; WX 602 ; N uni01E1 ; G 410 -U 482 ; WX 602 ; N uni01E2 ; G 411 -U 483 ; WX 602 ; N uni01E3 ; G 412 -U 486 ; WX 602 ; N Gcaron ; G 413 -U 487 ; WX 602 ; N gcaron ; G 414 -U 488 ; WX 602 ; N uni01E8 ; G 415 -U 489 ; WX 602 ; N uni01E9 ; G 416 -U 490 ; WX 602 ; N uni01EA ; G 417 -U 491 ; WX 602 ; N uni01EB ; G 418 -U 492 ; WX 602 ; N uni01EC ; G 419 -U 493 ; WX 602 ; N uni01ED ; G 420 -U 494 ; WX 602 ; N uni01EE ; G 421 -U 495 ; WX 602 ; N uni01EF ; G 422 -U 496 ; WX 602 ; N uni01F0 ; G 423 -U 500 ; WX 602 ; N uni01F4 ; G 424 -U 501 ; WX 602 ; N uni01F5 ; G 425 -U 502 ; WX 602 ; N uni01F6 ; G 426 -U 504 ; WX 602 ; N uni01F8 ; G 427 -U 505 ; WX 602 ; N uni01F9 ; G 428 -U 508 ; WX 602 ; N AEacute ; G 429 -U 509 ; WX 602 ; N aeacute ; G 430 -U 510 ; WX 602 ; N Oslashacute ; G 431 -U 511 ; WX 602 ; N oslashacute ; G 432 -U 512 ; WX 602 ; N uni0200 ; G 433 -U 513 ; WX 602 ; N uni0201 ; G 434 -U 514 ; WX 602 ; N uni0202 ; G 435 -U 515 ; WX 602 ; N uni0203 ; G 436 -U 516 ; WX 602 ; N uni0204 ; G 437 -U 517 ; WX 602 ; N uni0205 ; G 438 -U 518 ; WX 602 ; N uni0206 ; G 439 -U 519 ; WX 602 ; N uni0207 ; G 440 -U 520 ; WX 602 ; N uni0208 ; G 441 -U 521 ; WX 602 ; N uni0209 ; G 442 -U 522 ; WX 602 ; N uni020A ; G 443 -U 523 ; WX 602 ; N uni020B ; G 444 -U 524 ; WX 602 ; N uni020C ; G 445 -U 525 ; WX 602 ; N uni020D ; G 446 -U 526 ; WX 602 ; N uni020E ; G 447 -U 527 ; WX 602 ; N uni020F ; G 448 -U 528 ; WX 602 ; N uni0210 ; G 449 -U 529 ; WX 602 ; N uni0211 ; G 450 -U 530 ; WX 602 ; N uni0212 ; G 451 -U 531 ; WX 602 ; N uni0213 ; G 452 -U 532 ; WX 602 ; N uni0214 ; G 453 -U 533 ; WX 602 ; N uni0215 ; G 454 -U 534 ; WX 602 ; N uni0216 ; G 455 -U 535 ; WX 602 ; N uni0217 ; G 456 -U 536 ; WX 602 ; N Scommaaccent ; G 457 -U 537 ; WX 602 ; N scommaaccent ; G 458 -U 538 ; WX 602 ; N uni021A ; G 459 -U 539 ; WX 602 ; N uni021B ; G 460 -U 540 ; WX 602 ; N uni021C ; G 461 -U 541 ; WX 602 ; N uni021D ; G 462 -U 542 ; WX 602 ; N uni021E ; G 463 -U 543 ; WX 602 ; N uni021F ; G 464 -U 544 ; WX 602 ; N uni0220 ; G 465 -U 545 ; WX 602 ; N uni0221 ; G 466 -U 548 ; WX 602 ; N uni0224 ; G 467 -U 549 ; WX 602 ; N uni0225 ; G 468 -U 550 ; WX 602 ; N uni0226 ; G 469 -U 551 ; WX 602 ; N uni0227 ; G 470 -U 552 ; WX 602 ; N uni0228 ; G 471 -U 553 ; WX 602 ; N uni0229 ; G 472 -U 554 ; WX 602 ; N uni022A ; G 473 -U 555 ; WX 602 ; N uni022B ; G 474 -U 556 ; WX 602 ; N uni022C ; G 475 -U 557 ; WX 602 ; N uni022D ; G 476 -U 558 ; WX 602 ; N uni022E ; G 477 -U 559 ; WX 602 ; N uni022F ; G 478 -U 560 ; WX 602 ; N uni0230 ; G 479 -U 561 ; WX 602 ; N uni0231 ; G 480 -U 562 ; WX 602 ; N uni0232 ; G 481 -U 563 ; WX 602 ; N uni0233 ; G 482 -U 564 ; WX 602 ; N uni0234 ; G 483 -U 565 ; WX 602 ; N uni0235 ; G 484 -U 566 ; WX 602 ; N uni0236 ; G 485 -U 567 ; WX 602 ; N dotlessj ; G 486 -U 568 ; WX 602 ; N uni0238 ; G 487 -U 569 ; WX 602 ; N uni0239 ; G 488 -U 570 ; WX 602 ; N uni023A ; G 489 -U 571 ; WX 602 ; N uni023B ; G 490 -U 572 ; WX 602 ; N uni023C ; G 491 -U 573 ; WX 602 ; N uni023D ; G 492 -U 574 ; WX 602 ; N uni023E ; G 493 -U 575 ; WX 602 ; N uni023F ; G 494 -U 576 ; WX 602 ; N uni0240 ; G 495 -U 577 ; WX 602 ; N uni0241 ; G 496 -U 579 ; WX 602 ; N uni0243 ; G 497 -U 580 ; WX 602 ; N uni0244 ; G 498 -U 581 ; WX 602 ; N uni0245 ; G 499 -U 588 ; WX 602 ; N uni024C ; G 500 -U 589 ; WX 602 ; N uni024D ; G 501 -U 592 ; WX 602 ; N uni0250 ; G 502 -U 593 ; WX 602 ; N uni0251 ; G 503 -U 594 ; WX 602 ; N uni0252 ; G 504 -U 595 ; WX 602 ; N uni0253 ; G 505 -U 596 ; WX 602 ; N uni0254 ; G 506 -U 597 ; WX 602 ; N uni0255 ; G 507 -U 598 ; WX 602 ; N uni0256 ; G 508 -U 599 ; WX 602 ; N uni0257 ; G 509 -U 600 ; WX 602 ; N uni0258 ; G 510 -U 601 ; WX 602 ; N uni0259 ; G 511 -U 602 ; WX 602 ; N uni025A ; G 512 -U 603 ; WX 602 ; N uni025B ; G 513 -U 604 ; WX 602 ; N uni025C ; G 514 -U 605 ; WX 602 ; N uni025D ; G 515 -U 606 ; WX 602 ; N uni025E ; G 516 -U 607 ; WX 602 ; N uni025F ; G 517 -U 608 ; WX 602 ; N uni0260 ; G 518 -U 609 ; WX 602 ; N uni0261 ; G 519 -U 610 ; WX 602 ; N uni0262 ; G 520 -U 611 ; WX 602 ; N uni0263 ; G 521 -U 612 ; WX 602 ; N uni0264 ; G 522 -U 613 ; WX 602 ; N uni0265 ; G 523 -U 614 ; WX 602 ; N uni0266 ; G 524 -U 615 ; WX 602 ; N uni0267 ; G 525 -U 616 ; WX 602 ; N uni0268 ; G 526 -U 617 ; WX 602 ; N uni0269 ; G 527 -U 618 ; WX 602 ; N uni026A ; G 528 -U 619 ; WX 602 ; N uni026B ; G 529 -U 620 ; WX 602 ; N uni026C ; G 530 -U 621 ; WX 602 ; N uni026D ; G 531 -U 622 ; WX 602 ; N uni026E ; G 532 -U 623 ; WX 602 ; N uni026F ; G 533 -U 624 ; WX 602 ; N uni0270 ; G 534 -U 625 ; WX 602 ; N uni0271 ; G 535 -U 626 ; WX 602 ; N uni0272 ; G 536 -U 627 ; WX 602 ; N uni0273 ; G 537 -U 628 ; WX 602 ; N uni0274 ; G 538 -U 629 ; WX 602 ; N uni0275 ; G 539 -U 630 ; WX 602 ; N uni0276 ; G 540 -U 631 ; WX 602 ; N uni0277 ; G 541 -U 632 ; WX 602 ; N uni0278 ; G 542 -U 633 ; WX 602 ; N uni0279 ; G 543 -U 634 ; WX 602 ; N uni027A ; G 544 -U 635 ; WX 602 ; N uni027B ; G 545 -U 636 ; WX 602 ; N uni027C ; G 546 -U 637 ; WX 602 ; N uni027D ; G 547 -U 638 ; WX 602 ; N uni027E ; G 548 -U 639 ; WX 602 ; N uni027F ; G 549 -U 640 ; WX 602 ; N uni0280 ; G 550 -U 641 ; WX 602 ; N uni0281 ; G 551 -U 642 ; WX 602 ; N uni0282 ; G 552 -U 643 ; WX 602 ; N uni0283 ; G 553 -U 644 ; WX 602 ; N uni0284 ; G 554 -U 645 ; WX 602 ; N uni0285 ; G 555 -U 646 ; WX 602 ; N uni0286 ; G 556 -U 647 ; WX 602 ; N uni0287 ; G 557 -U 648 ; WX 602 ; N uni0288 ; G 558 -U 649 ; WX 602 ; N uni0289 ; G 559 -U 650 ; WX 602 ; N uni028A ; G 560 -U 651 ; WX 602 ; N uni028B ; G 561 -U 652 ; WX 602 ; N uni028C ; G 562 -U 653 ; WX 602 ; N uni028D ; G 563 -U 654 ; WX 602 ; N uni028E ; G 564 -U 655 ; WX 602 ; N uni028F ; G 565 -U 656 ; WX 602 ; N uni0290 ; G 566 -U 657 ; WX 602 ; N uni0291 ; G 567 -U 658 ; WX 602 ; N uni0292 ; G 568 -U 659 ; WX 602 ; N uni0293 ; G 569 -U 660 ; WX 602 ; N uni0294 ; G 570 -U 661 ; WX 602 ; N uni0295 ; G 571 -U 662 ; WX 602 ; N uni0296 ; G 572 -U 663 ; WX 602 ; N uni0297 ; G 573 -U 664 ; WX 602 ; N uni0298 ; G 574 -U 665 ; WX 602 ; N uni0299 ; G 575 -U 666 ; WX 602 ; N uni029A ; G 576 -U 667 ; WX 602 ; N uni029B ; G 577 -U 668 ; WX 602 ; N uni029C ; G 578 -U 669 ; WX 602 ; N uni029D ; G 579 -U 670 ; WX 602 ; N uni029E ; G 580 -U 671 ; WX 602 ; N uni029F ; G 581 -U 672 ; WX 602 ; N uni02A0 ; G 582 -U 673 ; WX 602 ; N uni02A1 ; G 583 -U 674 ; WX 602 ; N uni02A2 ; G 584 -U 675 ; WX 602 ; N uni02A3 ; G 585 -U 676 ; WX 602 ; N uni02A4 ; G 586 -U 677 ; WX 602 ; N uni02A5 ; G 587 -U 678 ; WX 602 ; N uni02A6 ; G 588 -U 679 ; WX 602 ; N uni02A7 ; G 589 -U 680 ; WX 602 ; N uni02A8 ; G 590 -U 681 ; WX 602 ; N uni02A9 ; G 591 -U 682 ; WX 602 ; N uni02AA ; G 592 -U 683 ; WX 602 ; N uni02AB ; G 593 -U 684 ; WX 602 ; N uni02AC ; G 594 -U 685 ; WX 602 ; N uni02AD ; G 595 -U 686 ; WX 602 ; N uni02AE ; G 596 -U 687 ; WX 602 ; N uni02AF ; G 597 -U 688 ; WX 602 ; N uni02B0 ; G 598 -U 689 ; WX 602 ; N uni02B1 ; G 599 -U 690 ; WX 602 ; N uni02B2 ; G 600 -U 691 ; WX 602 ; N uni02B3 ; G 601 -U 692 ; WX 602 ; N uni02B4 ; G 602 -U 693 ; WX 602 ; N uni02B5 ; G 603 -U 694 ; WX 602 ; N uni02B6 ; G 604 -U 695 ; WX 602 ; N uni02B7 ; G 605 -U 696 ; WX 602 ; N uni02B8 ; G 606 -U 697 ; WX 602 ; N uni02B9 ; G 607 -U 699 ; WX 602 ; N uni02BB ; G 608 -U 700 ; WX 602 ; N uni02BC ; G 609 -U 701 ; WX 602 ; N uni02BD ; G 610 -U 702 ; WX 602 ; N uni02BE ; G 611 -U 703 ; WX 602 ; N uni02BF ; G 612 -U 704 ; WX 602 ; N uni02C0 ; G 613 -U 705 ; WX 602 ; N uni02C1 ; G 614 -U 710 ; WX 602 ; N circumflex ; G 615 -U 711 ; WX 602 ; N caron ; G 616 -U 712 ; WX 602 ; N uni02C8 ; G 617 -U 713 ; WX 602 ; N uni02C9 ; G 618 -U 716 ; WX 602 ; N uni02CC ; G 619 -U 717 ; WX 602 ; N uni02CD ; G 620 -U 718 ; WX 602 ; N uni02CE ; G 621 -U 719 ; WX 602 ; N uni02CF ; G 622 -U 720 ; WX 602 ; N uni02D0 ; G 623 -U 721 ; WX 602 ; N uni02D1 ; G 624 -U 722 ; WX 602 ; N uni02D2 ; G 625 -U 723 ; WX 602 ; N uni02D3 ; G 626 -U 726 ; WX 602 ; N uni02D6 ; G 627 -U 727 ; WX 602 ; N uni02D7 ; G 628 -U 728 ; WX 602 ; N breve ; G 629 -U 729 ; WX 602 ; N dotaccent ; G 630 -U 730 ; WX 602 ; N ring ; G 631 -U 731 ; WX 602 ; N ogonek ; G 632 -U 732 ; WX 602 ; N tilde ; G 633 -U 733 ; WX 602 ; N hungarumlaut ; G 634 -U 734 ; WX 602 ; N uni02DE ; G 635 -U 736 ; WX 602 ; N uni02E0 ; G 636 -U 737 ; WX 602 ; N uni02E1 ; G 637 -U 738 ; WX 602 ; N uni02E2 ; G 638 -U 739 ; WX 602 ; N uni02E3 ; G 639 -U 740 ; WX 602 ; N uni02E4 ; G 640 -U 741 ; WX 602 ; N uni02E5 ; G 641 -U 742 ; WX 602 ; N uni02E6 ; G 642 -U 743 ; WX 602 ; N uni02E7 ; G 643 -U 744 ; WX 602 ; N uni02E8 ; G 644 -U 745 ; WX 602 ; N uni02E9 ; G 645 -U 750 ; WX 602 ; N uni02EE ; G 646 -U 755 ; WX 602 ; N uni02F3 ; G 647 -U 768 ; WX 602 ; N gravecomb ; G 648 -U 769 ; WX 602 ; N acutecomb ; G 649 -U 770 ; WX 602 ; N uni0302 ; G 650 -U 771 ; WX 602 ; N tildecomb ; G 651 -U 772 ; WX 602 ; N uni0304 ; G 652 -U 773 ; WX 602 ; N uni0305 ; G 653 -U 774 ; WX 602 ; N uni0306 ; G 654 -U 775 ; WX 602 ; N uni0307 ; G 655 -U 776 ; WX 602 ; N uni0308 ; G 656 -U 777 ; WX 602 ; N hookabovecomb ; G 657 -U 778 ; WX 602 ; N uni030A ; G 658 -U 779 ; WX 602 ; N uni030B ; G 659 -U 780 ; WX 602 ; N uni030C ; G 660 -U 781 ; WX 602 ; N uni030D ; G 661 -U 782 ; WX 602 ; N uni030E ; G 662 -U 783 ; WX 602 ; N uni030F ; G 663 -U 784 ; WX 602 ; N uni0310 ; G 664 -U 785 ; WX 602 ; N uni0311 ; G 665 -U 786 ; WX 602 ; N uni0312 ; G 666 -U 787 ; WX 602 ; N uni0313 ; G 667 -U 788 ; WX 602 ; N uni0314 ; G 668 -U 789 ; WX 602 ; N uni0315 ; G 669 -U 790 ; WX 602 ; N uni0316 ; G 670 -U 791 ; WX 602 ; N uni0317 ; G 671 -U 792 ; WX 602 ; N uni0318 ; G 672 -U 793 ; WX 602 ; N uni0319 ; G 673 -U 794 ; WX 602 ; N uni031A ; G 674 -U 795 ; WX 602 ; N uni031B ; G 675 -U 796 ; WX 602 ; N uni031C ; G 676 -U 797 ; WX 602 ; N uni031D ; G 677 -U 798 ; WX 602 ; N uni031E ; G 678 -U 799 ; WX 602 ; N uni031F ; G 679 -U 800 ; WX 602 ; N uni0320 ; G 680 -U 801 ; WX 602 ; N uni0321 ; G 681 -U 802 ; WX 602 ; N uni0322 ; G 682 -U 803 ; WX 602 ; N dotbelowcomb ; G 683 -U 804 ; WX 602 ; N uni0324 ; G 684 -U 805 ; WX 602 ; N uni0325 ; G 685 -U 806 ; WX 602 ; N uni0326 ; G 686 -U 807 ; WX 602 ; N uni0327 ; G 687 -U 808 ; WX 602 ; N uni0328 ; G 688 -U 809 ; WX 602 ; N uni0329 ; G 689 -U 810 ; WX 602 ; N uni032A ; G 690 -U 811 ; WX 602 ; N uni032B ; G 691 -U 812 ; WX 602 ; N uni032C ; G 692 -U 813 ; WX 602 ; N uni032D ; G 693 -U 814 ; WX 602 ; N uni032E ; G 694 -U 815 ; WX 602 ; N uni032F ; G 695 -U 816 ; WX 602 ; N uni0330 ; G 696 -U 817 ; WX 602 ; N uni0331 ; G 697 -U 818 ; WX 602 ; N uni0332 ; G 698 -U 819 ; WX 602 ; N uni0333 ; G 699 -U 820 ; WX 602 ; N uni0334 ; G 700 -U 821 ; WX 602 ; N uni0335 ; G 701 -U 822 ; WX 602 ; N uni0336 ; G 702 -U 823 ; WX 602 ; N uni0337 ; G 703 -U 824 ; WX 602 ; N uni0338 ; G 704 -U 825 ; WX 602 ; N uni0339 ; G 705 -U 826 ; WX 602 ; N uni033A ; G 706 -U 827 ; WX 602 ; N uni033B ; G 707 -U 828 ; WX 602 ; N uni033C ; G 708 -U 829 ; WX 602 ; N uni033D ; G 709 -U 830 ; WX 602 ; N uni033E ; G 710 -U 831 ; WX 602 ; N uni033F ; G 711 -U 835 ; WX 602 ; N uni0343 ; G 712 -U 856 ; WX 602 ; N uni0358 ; G 713 -U 865 ; WX 602 ; N uni0361 ; G 714 -U 884 ; WX 602 ; N uni0374 ; G 715 -U 885 ; WX 602 ; N uni0375 ; G 716 -U 886 ; WX 602 ; N uni0376 ; G 717 -U 887 ; WX 602 ; N uni0377 ; G 718 -U 890 ; WX 602 ; N uni037A ; G 719 -U 891 ; WX 602 ; N uni037B ; G 720 -U 892 ; WX 602 ; N uni037C ; G 721 -U 893 ; WX 602 ; N uni037D ; G 722 -U 894 ; WX 602 ; N uni037E ; G 723 -U 895 ; WX 602 ; N uni037F ; G 724 -U 900 ; WX 602 ; N tonos ; G 725 -U 901 ; WX 602 ; N dieresistonos ; G 726 -U 902 ; WX 602 ; N Alphatonos ; G 727 -U 903 ; WX 602 ; N anoteleia ; G 728 -U 904 ; WX 602 ; N Epsilontonos ; G 729 -U 905 ; WX 602 ; N Etatonos ; G 730 -U 906 ; WX 602 ; N Iotatonos ; G 731 -U 908 ; WX 602 ; N Omicrontonos ; G 732 -U 910 ; WX 602 ; N Upsilontonos ; G 733 -U 911 ; WX 602 ; N Omegatonos ; G 734 -U 912 ; WX 602 ; N iotadieresistonos ; G 735 -U 913 ; WX 602 ; N Alpha ; G 736 -U 914 ; WX 602 ; N Beta ; G 737 -U 915 ; WX 602 ; N Gamma ; G 738 -U 916 ; WX 602 ; N uni0394 ; G 739 -U 917 ; WX 602 ; N Epsilon ; G 740 -U 918 ; WX 602 ; N Zeta ; G 741 -U 919 ; WX 602 ; N Eta ; G 742 -U 920 ; WX 602 ; N Theta ; G 743 -U 921 ; WX 602 ; N Iota ; G 744 -U 922 ; WX 602 ; N Kappa ; G 745 -U 923 ; WX 602 ; N Lambda ; G 746 -U 924 ; WX 602 ; N Mu ; G 747 -U 925 ; WX 602 ; N Nu ; G 748 -U 926 ; WX 602 ; N Xi ; G 749 -U 927 ; WX 602 ; N Omicron ; G 750 -U 928 ; WX 602 ; N Pi ; G 751 -U 929 ; WX 602 ; N Rho ; G 752 -U 931 ; WX 602 ; N Sigma ; G 753 -U 932 ; WX 602 ; N Tau ; G 754 -U 933 ; WX 602 ; N Upsilon ; G 755 -U 934 ; WX 602 ; N Phi ; G 756 -U 935 ; WX 602 ; N Chi ; G 757 -U 936 ; WX 602 ; N Psi ; G 758 -U 937 ; WX 602 ; N Omega ; G 759 -U 938 ; WX 602 ; N Iotadieresis ; G 760 -U 939 ; WX 602 ; N Upsilondieresis ; G 761 -U 940 ; WX 602 ; N alphatonos ; G 762 -U 941 ; WX 602 ; N epsilontonos ; G 763 -U 942 ; WX 602 ; N etatonos ; G 764 -U 943 ; WX 602 ; N iotatonos ; G 765 -U 944 ; WX 602 ; N upsilondieresistonos ; G 766 -U 945 ; WX 602 ; N alpha ; G 767 -U 946 ; WX 602 ; N beta ; G 768 -U 947 ; WX 602 ; N gamma ; G 769 -U 948 ; WX 602 ; N delta ; G 770 -U 949 ; WX 602 ; N epsilon ; G 771 -U 950 ; WX 602 ; N zeta ; G 772 -U 951 ; WX 602 ; N eta ; G 773 -U 952 ; WX 602 ; N theta ; G 774 -U 953 ; WX 602 ; N iota ; G 775 -U 954 ; WX 602 ; N kappa ; G 776 -U 955 ; WX 602 ; N lambda ; G 777 -U 956 ; WX 602 ; N uni03BC ; G 778 -U 957 ; WX 602 ; N nu ; G 779 -U 958 ; WX 602 ; N xi ; G 780 -U 959 ; WX 602 ; N omicron ; G 781 -U 960 ; WX 602 ; N pi ; G 782 -U 961 ; WX 602 ; N rho ; G 783 -U 962 ; WX 602 ; N sigma1 ; G 784 -U 963 ; WX 602 ; N sigma ; G 785 -U 964 ; WX 602 ; N tau ; G 786 -U 965 ; WX 602 ; N upsilon ; G 787 -U 966 ; WX 602 ; N phi ; G 788 -U 967 ; WX 602 ; N chi ; G 789 -U 968 ; WX 602 ; N psi ; G 790 -U 969 ; WX 602 ; N omega ; G 791 -U 970 ; WX 602 ; N iotadieresis ; G 792 -U 971 ; WX 602 ; N upsilondieresis ; G 793 -U 972 ; WX 602 ; N omicrontonos ; G 794 -U 973 ; WX 602 ; N upsilontonos ; G 795 -U 974 ; WX 602 ; N omegatonos ; G 796 -U 976 ; WX 602 ; N uni03D0 ; G 797 -U 977 ; WX 602 ; N theta1 ; G 798 -U 978 ; WX 602 ; N Upsilon1 ; G 799 -U 979 ; WX 602 ; N uni03D3 ; G 800 -U 980 ; WX 602 ; N uni03D4 ; G 801 -U 981 ; WX 602 ; N phi1 ; G 802 -U 982 ; WX 602 ; N omega1 ; G 803 -U 983 ; WX 602 ; N uni03D7 ; G 804 -U 984 ; WX 602 ; N uni03D8 ; G 805 -U 985 ; WX 602 ; N uni03D9 ; G 806 -U 986 ; WX 602 ; N uni03DA ; G 807 -U 987 ; WX 602 ; N uni03DB ; G 808 -U 988 ; WX 602 ; N uni03DC ; G 809 -U 989 ; WX 602 ; N uni03DD ; G 810 -U 990 ; WX 602 ; N uni03DE ; G 811 -U 991 ; WX 602 ; N uni03DF ; G 812 -U 992 ; WX 602 ; N uni03E0 ; G 813 -U 993 ; WX 602 ; N uni03E1 ; G 814 -U 1008 ; WX 602 ; N uni03F0 ; G 815 -U 1009 ; WX 602 ; N uni03F1 ; G 816 -U 1010 ; WX 602 ; N uni03F2 ; G 817 -U 1011 ; WX 602 ; N uni03F3 ; G 818 -U 1012 ; WX 602 ; N uni03F4 ; G 819 -U 1013 ; WX 602 ; N uni03F5 ; G 820 -U 1014 ; WX 602 ; N uni03F6 ; G 821 -U 1015 ; WX 602 ; N uni03F7 ; G 822 -U 1016 ; WX 602 ; N uni03F8 ; G 823 -U 1017 ; WX 602 ; N uni03F9 ; G 824 -U 1018 ; WX 602 ; N uni03FA ; G 825 -U 1019 ; WX 602 ; N uni03FB ; G 826 -U 1020 ; WX 602 ; N uni03FC ; G 827 -U 1021 ; WX 602 ; N uni03FD ; G 828 -U 1022 ; WX 602 ; N uni03FE ; G 829 -U 1023 ; WX 602 ; N uni03FF ; G 830 -U 1024 ; WX 602 ; N uni0400 ; G 831 -U 1025 ; WX 602 ; N uni0401 ; G 832 -U 1026 ; WX 602 ; N uni0402 ; G 833 -U 1027 ; WX 602 ; N uni0403 ; G 834 -U 1028 ; WX 602 ; N uni0404 ; G 835 -U 1029 ; WX 602 ; N uni0405 ; G 836 -U 1030 ; WX 602 ; N uni0406 ; G 837 -U 1031 ; WX 602 ; N uni0407 ; G 838 -U 1032 ; WX 602 ; N uni0408 ; G 839 -U 1033 ; WX 602 ; N uni0409 ; G 840 -U 1034 ; WX 602 ; N uni040A ; G 841 -U 1035 ; WX 602 ; N uni040B ; G 842 -U 1036 ; WX 602 ; N uni040C ; G 843 -U 1037 ; WX 602 ; N uni040D ; G 844 -U 1038 ; WX 602 ; N uni040E ; G 845 -U 1039 ; WX 602 ; N uni040F ; G 846 -U 1040 ; WX 602 ; N uni0410 ; G 847 -U 1041 ; WX 602 ; N uni0411 ; G 848 -U 1042 ; WX 602 ; N uni0412 ; G 849 -U 1043 ; WX 602 ; N uni0413 ; G 850 -U 1044 ; WX 602 ; N uni0414 ; G 851 -U 1045 ; WX 602 ; N uni0415 ; G 852 -U 1046 ; WX 602 ; N uni0416 ; G 853 -U 1047 ; WX 602 ; N uni0417 ; G 854 -U 1048 ; WX 602 ; N uni0418 ; G 855 -U 1049 ; WX 602 ; N uni0419 ; G 856 -U 1050 ; WX 602 ; N uni041A ; G 857 -U 1051 ; WX 602 ; N uni041B ; G 858 -U 1052 ; WX 602 ; N uni041C ; G 859 -U 1053 ; WX 602 ; N uni041D ; G 860 -U 1054 ; WX 602 ; N uni041E ; G 861 -U 1055 ; WX 602 ; N uni041F ; G 862 -U 1056 ; WX 602 ; N uni0420 ; G 863 -U 1057 ; WX 602 ; N uni0421 ; G 864 -U 1058 ; WX 602 ; N uni0422 ; G 865 -U 1059 ; WX 602 ; N uni0423 ; G 866 -U 1060 ; WX 602 ; N uni0424 ; G 867 -U 1061 ; WX 602 ; N uni0425 ; G 868 -U 1062 ; WX 602 ; N uni0426 ; G 869 -U 1063 ; WX 602 ; N uni0427 ; G 870 -U 1064 ; WX 602 ; N uni0428 ; G 871 -U 1065 ; WX 602 ; N uni0429 ; G 872 -U 1066 ; WX 602 ; N uni042A ; G 873 -U 1067 ; WX 602 ; N uni042B ; G 874 -U 1068 ; WX 602 ; N uni042C ; G 875 -U 1069 ; WX 602 ; N uni042D ; G 876 -U 1070 ; WX 602 ; N uni042E ; G 877 -U 1071 ; WX 602 ; N uni042F ; G 878 -U 1072 ; WX 602 ; N uni0430 ; G 879 -U 1073 ; WX 602 ; N uni0431 ; G 880 -U 1074 ; WX 602 ; N uni0432 ; G 881 -U 1075 ; WX 602 ; N uni0433 ; G 882 -U 1076 ; WX 602 ; N uni0434 ; G 883 -U 1077 ; WX 602 ; N uni0435 ; G 884 -U 1078 ; WX 602 ; N uni0436 ; G 885 -U 1079 ; WX 602 ; N uni0437 ; G 886 -U 1080 ; WX 602 ; N uni0438 ; G 887 -U 1081 ; WX 602 ; N uni0439 ; G 888 -U 1082 ; WX 602 ; N uni043A ; G 889 -U 1083 ; WX 602 ; N uni043B ; G 890 -U 1084 ; WX 602 ; N uni043C ; G 891 -U 1085 ; WX 602 ; N uni043D ; G 892 -U 1086 ; WX 602 ; N uni043E ; G 893 -U 1087 ; WX 602 ; N uni043F ; G 894 -U 1088 ; WX 602 ; N uni0440 ; G 895 -U 1089 ; WX 602 ; N uni0441 ; G 896 -U 1090 ; WX 602 ; N uni0442 ; G 897 -U 1091 ; WX 602 ; N uni0443 ; G 898 -U 1092 ; WX 602 ; N uni0444 ; G 899 -U 1093 ; WX 602 ; N uni0445 ; G 900 -U 1094 ; WX 602 ; N uni0446 ; G 901 -U 1095 ; WX 602 ; N uni0447 ; G 902 -U 1096 ; WX 602 ; N uni0448 ; G 903 -U 1097 ; WX 602 ; N uni0449 ; G 904 -U 1098 ; WX 602 ; N uni044A ; G 905 -U 1099 ; WX 602 ; N uni044B ; G 906 -U 1100 ; WX 602 ; N uni044C ; G 907 -U 1101 ; WX 602 ; N uni044D ; G 908 -U 1102 ; WX 602 ; N uni044E ; G 909 -U 1103 ; WX 602 ; N uni044F ; G 910 -U 1104 ; WX 602 ; N uni0450 ; G 911 -U 1105 ; WX 602 ; N uni0451 ; G 912 -U 1106 ; WX 602 ; N uni0452 ; G 913 -U 1107 ; WX 602 ; N uni0453 ; G 914 -U 1108 ; WX 602 ; N uni0454 ; G 915 -U 1109 ; WX 602 ; N uni0455 ; G 916 -U 1110 ; WX 602 ; N uni0456 ; G 917 -U 1111 ; WX 602 ; N uni0457 ; G 918 -U 1112 ; WX 602 ; N uni0458 ; G 919 -U 1113 ; WX 602 ; N uni0459 ; G 920 -U 1114 ; WX 602 ; N uni045A ; G 921 -U 1115 ; WX 602 ; N uni045B ; G 922 -U 1116 ; WX 602 ; N uni045C ; G 923 -U 1117 ; WX 602 ; N uni045D ; G 924 -U 1118 ; WX 602 ; N uni045E ; G 925 -U 1119 ; WX 602 ; N uni045F ; G 926 -U 1122 ; WX 602 ; N uni0462 ; G 927 -U 1123 ; WX 602 ; N uni0463 ; G 928 -U 1138 ; WX 602 ; N uni0472 ; G 929 -U 1139 ; WX 602 ; N uni0473 ; G 930 -U 1168 ; WX 602 ; N uni0490 ; G 931 -U 1169 ; WX 602 ; N uni0491 ; G 932 -U 1170 ; WX 602 ; N uni0492 ; G 933 -U 1171 ; WX 602 ; N uni0493 ; G 934 -U 1172 ; WX 602 ; N uni0494 ; G 935 -U 1173 ; WX 602 ; N uni0495 ; G 936 -U 1174 ; WX 602 ; N uni0496 ; G 937 -U 1175 ; WX 602 ; N uni0497 ; G 938 -U 1176 ; WX 602 ; N uni0498 ; G 939 -U 1177 ; WX 602 ; N uni0499 ; G 940 -U 1178 ; WX 602 ; N uni049A ; G 941 -U 1179 ; WX 602 ; N uni049B ; G 942 -U 1186 ; WX 602 ; N uni04A2 ; G 943 -U 1187 ; WX 602 ; N uni04A3 ; G 944 -U 1188 ; WX 602 ; N uni04A4 ; G 945 -U 1189 ; WX 602 ; N uni04A5 ; G 946 -U 1194 ; WX 602 ; N uni04AA ; G 947 -U 1195 ; WX 602 ; N uni04AB ; G 948 -U 1196 ; WX 602 ; N uni04AC ; G 949 -U 1197 ; WX 602 ; N uni04AD ; G 950 -U 1198 ; WX 602 ; N uni04AE ; G 951 -U 1199 ; WX 602 ; N uni04AF ; G 952 -U 1200 ; WX 602 ; N uni04B0 ; G 953 -U 1201 ; WX 602 ; N uni04B1 ; G 954 -U 1202 ; WX 602 ; N uni04B2 ; G 955 -U 1203 ; WX 602 ; N uni04B3 ; G 956 -U 1210 ; WX 602 ; N uni04BA ; G 957 -U 1211 ; WX 602 ; N uni04BB ; G 958 -U 1216 ; WX 602 ; N uni04C0 ; G 959 -U 1217 ; WX 602 ; N uni04C1 ; G 960 -U 1218 ; WX 602 ; N uni04C2 ; G 961 -U 1219 ; WX 602 ; N uni04C3 ; G 962 -U 1220 ; WX 602 ; N uni04C4 ; G 963 -U 1223 ; WX 602 ; N uni04C7 ; G 964 -U 1224 ; WX 602 ; N uni04C8 ; G 965 -U 1227 ; WX 602 ; N uni04CB ; G 966 -U 1228 ; WX 602 ; N uni04CC ; G 967 -U 1231 ; WX 602 ; N uni04CF ; G 968 -U 1232 ; WX 602 ; N uni04D0 ; G 969 -U 1233 ; WX 602 ; N uni04D1 ; G 970 -U 1234 ; WX 602 ; N uni04D2 ; G 971 -U 1235 ; WX 602 ; N uni04D3 ; G 972 -U 1236 ; WX 602 ; N uni04D4 ; G 973 -U 1237 ; WX 602 ; N uni04D5 ; G 974 -U 1238 ; WX 602 ; N uni04D6 ; G 975 -U 1239 ; WX 602 ; N uni04D7 ; G 976 -U 1240 ; WX 602 ; N uni04D8 ; G 977 -U 1241 ; WX 602 ; N uni04D9 ; G 978 -U 1242 ; WX 602 ; N uni04DA ; G 979 -U 1243 ; WX 602 ; N uni04DB ; G 980 -U 1244 ; WX 602 ; N uni04DC ; G 981 -U 1245 ; WX 602 ; N uni04DD ; G 982 -U 1246 ; WX 602 ; N uni04DE ; G 983 -U 1247 ; WX 602 ; N uni04DF ; G 984 -U 1248 ; WX 602 ; N uni04E0 ; G 985 -U 1249 ; WX 602 ; N uni04E1 ; G 986 -U 1250 ; WX 602 ; N uni04E2 ; G 987 -U 1251 ; WX 602 ; N uni04E3 ; G 988 -U 1252 ; WX 602 ; N uni04E4 ; G 989 -U 1253 ; WX 602 ; N uni04E5 ; G 990 -U 1254 ; WX 602 ; N uni04E6 ; G 991 -U 1255 ; WX 602 ; N uni04E7 ; G 992 -U 1256 ; WX 602 ; N uni04E8 ; G 993 -U 1257 ; WX 602 ; N uni04E9 ; G 994 -U 1258 ; WX 602 ; N uni04EA ; G 995 -U 1259 ; WX 602 ; N uni04EB ; G 996 -U 1260 ; WX 602 ; N uni04EC ; G 997 -U 1261 ; WX 602 ; N uni04ED ; G 998 -U 1262 ; WX 602 ; N uni04EE ; G 999 -U 1263 ; WX 602 ; N uni04EF ; G 1000 -U 1264 ; WX 602 ; N uni04F0 ; G 1001 -U 1265 ; WX 602 ; N uni04F1 ; G 1002 -U 1266 ; WX 602 ; N uni04F2 ; G 1003 -U 1267 ; WX 602 ; N uni04F3 ; G 1004 -U 1268 ; WX 602 ; N uni04F4 ; G 1005 -U 1269 ; WX 602 ; N uni04F5 ; G 1006 -U 1270 ; WX 602 ; N uni04F6 ; G 1007 -U 1271 ; WX 602 ; N uni04F7 ; G 1008 -U 1272 ; WX 602 ; N uni04F8 ; G 1009 -U 1273 ; WX 602 ; N uni04F9 ; G 1010 -U 1296 ; WX 602 ; N uni0510 ; G 1011 -U 1297 ; WX 602 ; N uni0511 ; G 1012 -U 1306 ; WX 602 ; N uni051A ; G 1013 -U 1307 ; WX 602 ; N uni051B ; G 1014 -U 1308 ; WX 602 ; N uni051C ; G 1015 -U 1309 ; WX 602 ; N uni051D ; G 1016 -U 1329 ; WX 602 ; N uni0531 ; G 1017 -U 1330 ; WX 602 ; N uni0532 ; G 1018 -U 1331 ; WX 602 ; N uni0533 ; G 1019 -U 1332 ; WX 602 ; N uni0534 ; G 1020 -U 1333 ; WX 602 ; N uni0535 ; G 1021 -U 1334 ; WX 602 ; N uni0536 ; G 1022 -U 1335 ; WX 602 ; N uni0537 ; G 1023 -U 1336 ; WX 602 ; N uni0538 ; G 1024 -U 1337 ; WX 602 ; N uni0539 ; G 1025 -U 1338 ; WX 602 ; N uni053A ; G 1026 -U 1339 ; WX 602 ; N uni053B ; G 1027 -U 1340 ; WX 602 ; N uni053C ; G 1028 -U 1341 ; WX 602 ; N uni053D ; G 1029 -U 1342 ; WX 602 ; N uni053E ; G 1030 -U 1343 ; WX 602 ; N uni053F ; G 1031 -U 1344 ; WX 602 ; N uni0540 ; G 1032 -U 1345 ; WX 602 ; N uni0541 ; G 1033 -U 1346 ; WX 602 ; N uni0542 ; G 1034 -U 1347 ; WX 602 ; N uni0543 ; G 1035 -U 1348 ; WX 602 ; N uni0544 ; G 1036 -U 1349 ; WX 602 ; N uni0545 ; G 1037 -U 1350 ; WX 602 ; N uni0546 ; G 1038 -U 1351 ; WX 602 ; N uni0547 ; G 1039 -U 1352 ; WX 602 ; N uni0548 ; G 1040 -U 1353 ; WX 602 ; N uni0549 ; G 1041 -U 1354 ; WX 602 ; N uni054A ; G 1042 -U 1355 ; WX 602 ; N uni054B ; G 1043 -U 1356 ; WX 602 ; N uni054C ; G 1044 -U 1357 ; WX 602 ; N uni054D ; G 1045 -U 1358 ; WX 602 ; N uni054E ; G 1046 -U 1359 ; WX 602 ; N uni054F ; G 1047 -U 1360 ; WX 602 ; N uni0550 ; G 1048 -U 1361 ; WX 602 ; N uni0551 ; G 1049 -U 1362 ; WX 602 ; N uni0552 ; G 1050 -U 1363 ; WX 602 ; N uni0553 ; G 1051 -U 1364 ; WX 602 ; N uni0554 ; G 1052 -U 1365 ; WX 602 ; N uni0555 ; G 1053 -U 1366 ; WX 602 ; N uni0556 ; G 1054 -U 1369 ; WX 602 ; N uni0559 ; G 1055 -U 1370 ; WX 602 ; N uni055A ; G 1056 -U 1371 ; WX 602 ; N uni055B ; G 1057 -U 1372 ; WX 602 ; N uni055C ; G 1058 -U 1373 ; WX 602 ; N uni055D ; G 1059 -U 1374 ; WX 602 ; N uni055E ; G 1060 -U 1375 ; WX 602 ; N uni055F ; G 1061 -U 1377 ; WX 602 ; N uni0561 ; G 1062 -U 1378 ; WX 602 ; N uni0562 ; G 1063 -U 1379 ; WX 602 ; N uni0563 ; G 1064 -U 1380 ; WX 602 ; N uni0564 ; G 1065 -U 1381 ; WX 602 ; N uni0565 ; G 1066 -U 1382 ; WX 602 ; N uni0566 ; G 1067 -U 1383 ; WX 602 ; N uni0567 ; G 1068 -U 1384 ; WX 602 ; N uni0568 ; G 1069 -U 1385 ; WX 602 ; N uni0569 ; G 1070 -U 1386 ; WX 602 ; N uni056A ; G 1071 -U 1387 ; WX 602 ; N uni056B ; G 1072 -U 1388 ; WX 602 ; N uni056C ; G 1073 -U 1389 ; WX 602 ; N uni056D ; G 1074 -U 1390 ; WX 602 ; N uni056E ; G 1075 -U 1391 ; WX 602 ; N uni056F ; G 1076 -U 1392 ; WX 602 ; N uni0570 ; G 1077 -U 1393 ; WX 602 ; N uni0571 ; G 1078 -U 1394 ; WX 602 ; N uni0572 ; G 1079 -U 1395 ; WX 602 ; N uni0573 ; G 1080 -U 1396 ; WX 602 ; N uni0574 ; G 1081 -U 1397 ; WX 602 ; N uni0575 ; G 1082 -U 1398 ; WX 602 ; N uni0576 ; G 1083 -U 1399 ; WX 602 ; N uni0577 ; G 1084 -U 1400 ; WX 602 ; N uni0578 ; G 1085 -U 1401 ; WX 602 ; N uni0579 ; G 1086 -U 1402 ; WX 602 ; N uni057A ; G 1087 -U 1403 ; WX 602 ; N uni057B ; G 1088 -U 1404 ; WX 602 ; N uni057C ; G 1089 -U 1405 ; WX 602 ; N uni057D ; G 1090 -U 1406 ; WX 602 ; N uni057E ; G 1091 -U 1407 ; WX 602 ; N uni057F ; G 1092 -U 1408 ; WX 602 ; N uni0580 ; G 1093 -U 1409 ; WX 602 ; N uni0581 ; G 1094 -U 1410 ; WX 602 ; N uni0582 ; G 1095 -U 1411 ; WX 602 ; N uni0583 ; G 1096 -U 1412 ; WX 602 ; N uni0584 ; G 1097 -U 1413 ; WX 602 ; N uni0585 ; G 1098 -U 1414 ; WX 602 ; N uni0586 ; G 1099 -U 1415 ; WX 602 ; N uni0587 ; G 1100 -U 1417 ; WX 602 ; N uni0589 ; G 1101 -U 1418 ; WX 602 ; N uni058A ; G 1102 -U 1542 ; WX 602 ; N uni0606 ; G 1103 -U 1543 ; WX 602 ; N uni0607 ; G 1104 -U 1545 ; WX 602 ; N uni0609 ; G 1105 -U 1546 ; WX 602 ; N uni060A ; G 1106 -U 1548 ; WX 602 ; N uni060C ; G 1107 -U 1557 ; WX 602 ; N uni0615 ; G 1108 -U 1563 ; WX 602 ; N uni061B ; G 1109 -U 1567 ; WX 602 ; N uni061F ; G 1110 -U 1569 ; WX 602 ; N uni0621 ; G 1111 -U 1570 ; WX 602 ; N uni0622 ; G 1112 -U 1571 ; WX 602 ; N uni0623 ; G 1113 -U 1572 ; WX 602 ; N uni0624 ; G 1114 -U 1573 ; WX 602 ; N uni0625 ; G 1115 -U 1574 ; WX 602 ; N uni0626 ; G 1116 -U 1575 ; WX 602 ; N uni0627 ; G 1117 -U 1576 ; WX 602 ; N uni0628 ; G 1118 -U 1577 ; WX 602 ; N uni0629 ; G 1119 -U 1578 ; WX 602 ; N uni062A ; G 1120 -U 1579 ; WX 602 ; N uni062B ; G 1121 -U 1580 ; WX 602 ; N uni062C ; G 1122 -U 1581 ; WX 602 ; N uni062D ; G 1123 -U 1582 ; WX 602 ; N uni062E ; G 1124 -U 1583 ; WX 602 ; N uni062F ; G 1125 -U 1584 ; WX 602 ; N uni0630 ; G 1126 -U 1585 ; WX 602 ; N uni0631 ; G 1127 -U 1586 ; WX 602 ; N uni0632 ; G 1128 -U 1587 ; WX 602 ; N uni0633 ; G 1129 -U 1588 ; WX 602 ; N uni0634 ; G 1130 -U 1589 ; WX 602 ; N uni0635 ; G 1131 -U 1590 ; WX 602 ; N uni0636 ; G 1132 -U 1591 ; WX 602 ; N uni0637 ; G 1133 -U 1592 ; WX 602 ; N uni0638 ; G 1134 -U 1593 ; WX 602 ; N uni0639 ; G 1135 -U 1594 ; WX 602 ; N uni063A ; G 1136 -U 1600 ; WX 602 ; N uni0640 ; G 1137 -U 1601 ; WX 602 ; N uni0641 ; G 1138 -U 1602 ; WX 602 ; N uni0642 ; G 1139 -U 1603 ; WX 602 ; N uni0643 ; G 1140 -U 1604 ; WX 602 ; N uni0644 ; G 1141 -U 1605 ; WX 602 ; N uni0645 ; G 1142 -U 1606 ; WX 602 ; N uni0646 ; G 1143 -U 1607 ; WX 602 ; N uni0647 ; G 1144 -U 1608 ; WX 602 ; N uni0648 ; G 1145 -U 1609 ; WX 602 ; N uni0649 ; G 1146 -U 1610 ; WX 602 ; N uni064A ; G 1147 -U 1611 ; WX 602 ; N uni064B ; G 1148 -U 1612 ; WX 602 ; N uni064C ; G 1149 -U 1613 ; WX 602 ; N uni064D ; G 1150 -U 1614 ; WX 602 ; N uni064E ; G 1151 -U 1615 ; WX 602 ; N uni064F ; G 1152 -U 1616 ; WX 602 ; N uni0650 ; G 1153 -U 1617 ; WX 602 ; N uni0651 ; G 1154 -U 1618 ; WX 602 ; N uni0652 ; G 1155 -U 1619 ; WX 602 ; N uni0653 ; G 1156 -U 1620 ; WX 602 ; N uni0654 ; G 1157 -U 1621 ; WX 602 ; N uni0655 ; G 1158 -U 1626 ; WX 602 ; N uni065A ; G 1159 -U 1632 ; WX 602 ; N uni0660 ; G 1160 -U 1633 ; WX 602 ; N uni0661 ; G 1161 -U 1634 ; WX 602 ; N uni0662 ; G 1162 -U 1635 ; WX 602 ; N uni0663 ; G 1163 -U 1636 ; WX 602 ; N uni0664 ; G 1164 -U 1637 ; WX 602 ; N uni0665 ; G 1165 -U 1638 ; WX 602 ; N uni0666 ; G 1166 -U 1639 ; WX 602 ; N uni0667 ; G 1167 -U 1640 ; WX 602 ; N uni0668 ; G 1168 -U 1641 ; WX 602 ; N uni0669 ; G 1169 -U 1642 ; WX 602 ; N uni066A ; G 1170 -U 1643 ; WX 602 ; N uni066B ; G 1171 -U 1644 ; WX 602 ; N uni066C ; G 1172 -U 1645 ; WX 602 ; N uni066D ; G 1173 -U 1652 ; WX 602 ; N uni0674 ; G 1174 -U 1657 ; WX 602 ; N uni0679 ; G 1175 -U 1658 ; WX 602 ; N uni067A ; G 1176 -U 1659 ; WX 602 ; N uni067B ; G 1177 -U 1662 ; WX 602 ; N uni067E ; G 1178 -U 1663 ; WX 602 ; N uni067F ; G 1179 -U 1664 ; WX 602 ; N uni0680 ; G 1180 -U 1667 ; WX 602 ; N uni0683 ; G 1181 -U 1668 ; WX 602 ; N uni0684 ; G 1182 -U 1670 ; WX 602 ; N uni0686 ; G 1183 -U 1671 ; WX 602 ; N uni0687 ; G 1184 -U 1681 ; WX 602 ; N uni0691 ; G 1185 -U 1688 ; WX 602 ; N uni0698 ; G 1186 -U 1700 ; WX 602 ; N uni06A4 ; G 1187 -U 1705 ; WX 602 ; N uni06A9 ; G 1188 -U 1711 ; WX 602 ; N uni06AF ; G 1189 -U 1726 ; WX 602 ; N uni06BE ; G 1190 -U 1740 ; WX 602 ; N uni06CC ; G 1191 -U 1776 ; WX 602 ; N uni06F0 ; G 1192 -U 1777 ; WX 602 ; N uni06F1 ; G 1193 -U 1778 ; WX 602 ; N uni06F2 ; G 1194 -U 1779 ; WX 602 ; N uni06F3 ; G 1195 -U 1780 ; WX 602 ; N uni06F4 ; G 1196 -U 1781 ; WX 602 ; N uni06F5 ; G 1197 -U 1782 ; WX 602 ; N uni06F6 ; G 1198 -U 1783 ; WX 602 ; N uni06F7 ; G 1199 -U 1784 ; WX 602 ; N uni06F8 ; G 1200 -U 1785 ; WX 602 ; N uni06F9 ; G 1201 -U 3647 ; WX 602 ; N uni0E3F ; G 1202 -U 3713 ; WX 602 ; N uni0E81 ; G 1203 -U 3714 ; WX 602 ; N uni0E82 ; G 1204 -U 3716 ; WX 602 ; N uni0E84 ; G 1205 -U 3719 ; WX 602 ; N uni0E87 ; G 1206 -U 3720 ; WX 602 ; N uni0E88 ; G 1207 -U 3722 ; WX 602 ; N uni0E8A ; G 1208 -U 3725 ; WX 602 ; N uni0E8D ; G 1209 -U 3732 ; WX 602 ; N uni0E94 ; G 1210 -U 3733 ; WX 602 ; N uni0E95 ; G 1211 -U 3734 ; WX 602 ; N uni0E96 ; G 1212 -U 3735 ; WX 602 ; N uni0E97 ; G 1213 -U 3737 ; WX 602 ; N uni0E99 ; G 1214 -U 3738 ; WX 602 ; N uni0E9A ; G 1215 -U 3739 ; WX 602 ; N uni0E9B ; G 1216 -U 3740 ; WX 602 ; N uni0E9C ; G 1217 -U 3741 ; WX 602 ; N uni0E9D ; G 1218 -U 3742 ; WX 602 ; N uni0E9E ; G 1219 -U 3743 ; WX 602 ; N uni0E9F ; G 1220 -U 3745 ; WX 602 ; N uni0EA1 ; G 1221 -U 3746 ; WX 602 ; N uni0EA2 ; G 1222 -U 3747 ; WX 602 ; N uni0EA3 ; G 1223 -U 3749 ; WX 602 ; N uni0EA5 ; G 1224 -U 3751 ; WX 602 ; N uni0EA7 ; G 1225 -U 3754 ; WX 602 ; N uni0EAA ; G 1226 -U 3755 ; WX 602 ; N uni0EAB ; G 1227 -U 3757 ; WX 602 ; N uni0EAD ; G 1228 -U 3758 ; WX 602 ; N uni0EAE ; G 1229 -U 3759 ; WX 602 ; N uni0EAF ; G 1230 -U 3760 ; WX 602 ; N uni0EB0 ; G 1231 -U 3761 ; WX 602 ; N uni0EB1 ; G 1232 -U 3762 ; WX 602 ; N uni0EB2 ; G 1233 -U 3763 ; WX 602 ; N uni0EB3 ; G 1234 -U 3764 ; WX 602 ; N uni0EB4 ; G 1235 -U 3765 ; WX 602 ; N uni0EB5 ; G 1236 -U 3766 ; WX 602 ; N uni0EB6 ; G 1237 -U 3767 ; WX 602 ; N uni0EB7 ; G 1238 -U 3768 ; WX 602 ; N uni0EB8 ; G 1239 -U 3769 ; WX 602 ; N uni0EB9 ; G 1240 -U 3771 ; WX 602 ; N uni0EBB ; G 1241 -U 3772 ; WX 602 ; N uni0EBC ; G 1242 -U 3784 ; WX 602 ; N uni0EC8 ; G 1243 -U 3785 ; WX 602 ; N uni0EC9 ; G 1244 -U 3786 ; WX 602 ; N uni0ECA ; G 1245 -U 3787 ; WX 602 ; N uni0ECB ; G 1246 -U 3788 ; WX 602 ; N uni0ECC ; G 1247 -U 3789 ; WX 602 ; N uni0ECD ; G 1248 -U 4304 ; WX 602 ; N uni10D0 ; G 1249 -U 4305 ; WX 602 ; N uni10D1 ; G 1250 -U 4306 ; WX 602 ; N uni10D2 ; G 1251 -U 4307 ; WX 602 ; N uni10D3 ; G 1252 -U 4308 ; WX 602 ; N uni10D4 ; G 1253 -U 4309 ; WX 602 ; N uni10D5 ; G 1254 -U 4310 ; WX 602 ; N uni10D6 ; G 1255 -U 4311 ; WX 602 ; N uni10D7 ; G 1256 -U 4312 ; WX 602 ; N uni10D8 ; G 1257 -U 4313 ; WX 602 ; N uni10D9 ; G 1258 -U 4314 ; WX 602 ; N uni10DA ; G 1259 -U 4315 ; WX 602 ; N uni10DB ; G 1260 -U 4316 ; WX 602 ; N uni10DC ; G 1261 -U 4317 ; WX 602 ; N uni10DD ; G 1262 -U 4318 ; WX 602 ; N uni10DE ; G 1263 -U 4319 ; WX 602 ; N uni10DF ; G 1264 -U 4320 ; WX 602 ; N uni10E0 ; G 1265 -U 4321 ; WX 602 ; N uni10E1 ; G 1266 -U 4322 ; WX 602 ; N uni10E2 ; G 1267 -U 4323 ; WX 602 ; N uni10E3 ; G 1268 -U 4324 ; WX 602 ; N uni10E4 ; G 1269 -U 4325 ; WX 602 ; N uni10E5 ; G 1270 -U 4326 ; WX 602 ; N uni10E6 ; G 1271 -U 4327 ; WX 602 ; N uni10E7 ; G 1272 -U 4328 ; WX 602 ; N uni10E8 ; G 1273 -U 4329 ; WX 602 ; N uni10E9 ; G 1274 -U 4330 ; WX 602 ; N uni10EA ; G 1275 -U 4331 ; WX 602 ; N uni10EB ; G 1276 -U 4332 ; WX 602 ; N uni10EC ; G 1277 -U 4333 ; WX 602 ; N uni10ED ; G 1278 -U 4334 ; WX 602 ; N uni10EE ; G 1279 -U 4335 ; WX 602 ; N uni10EF ; G 1280 -U 4336 ; WX 602 ; N uni10F0 ; G 1281 -U 4337 ; WX 602 ; N uni10F1 ; G 1282 -U 4338 ; WX 602 ; N uni10F2 ; G 1283 -U 4339 ; WX 602 ; N uni10F3 ; G 1284 -U 4340 ; WX 602 ; N uni10F4 ; G 1285 -U 4341 ; WX 602 ; N uni10F5 ; G 1286 -U 4342 ; WX 602 ; N uni10F6 ; G 1287 -U 4343 ; WX 602 ; N uni10F7 ; G 1288 -U 4344 ; WX 602 ; N uni10F8 ; G 1289 -U 4345 ; WX 602 ; N uni10F9 ; G 1290 -U 4346 ; WX 602 ; N uni10FA ; G 1291 -U 4347 ; WX 602 ; N uni10FB ; G 1292 -U 4348 ; WX 602 ; N uni10FC ; G 1293 -U 7426 ; WX 602 ; N uni1D02 ; G 1294 -U 7432 ; WX 602 ; N uni1D08 ; G 1295 -U 7433 ; WX 602 ; N uni1D09 ; G 1296 -U 7444 ; WX 602 ; N uni1D14 ; G 1297 -U 7446 ; WX 602 ; N uni1D16 ; G 1298 -U 7447 ; WX 602 ; N uni1D17 ; G 1299 -U 7453 ; WX 602 ; N uni1D1D ; G 1300 -U 7454 ; WX 602 ; N uni1D1E ; G 1301 -U 7455 ; WX 602 ; N uni1D1F ; G 1302 -U 7468 ; WX 602 ; N uni1D2C ; G 1303 -U 7469 ; WX 602 ; N uni1D2D ; G 1304 -U 7470 ; WX 602 ; N uni1D2E ; G 1305 -U 7472 ; WX 602 ; N uni1D30 ; G 1306 -U 7473 ; WX 602 ; N uni1D31 ; G 1307 -U 7474 ; WX 602 ; N uni1D32 ; G 1308 -U 7475 ; WX 602 ; N uni1D33 ; G 1309 -U 7476 ; WX 602 ; N uni1D34 ; G 1310 -U 7477 ; WX 602 ; N uni1D35 ; G 1311 -U 7478 ; WX 602 ; N uni1D36 ; G 1312 -U 7479 ; WX 602 ; N uni1D37 ; G 1313 -U 7480 ; WX 602 ; N uni1D38 ; G 1314 -U 7481 ; WX 602 ; N uni1D39 ; G 1315 -U 7482 ; WX 602 ; N uni1D3A ; G 1316 -U 7483 ; WX 602 ; N uni1D3B ; G 1317 -U 7484 ; WX 602 ; N uni1D3C ; G 1318 -U 7486 ; WX 602 ; N uni1D3E ; G 1319 -U 7487 ; WX 602 ; N uni1D3F ; G 1320 -U 7488 ; WX 602 ; N uni1D40 ; G 1321 -U 7489 ; WX 602 ; N uni1D41 ; G 1322 -U 7490 ; WX 602 ; N uni1D42 ; G 1323 -U 7491 ; WX 602 ; N uni1D43 ; G 1324 -U 7492 ; WX 602 ; N uni1D44 ; G 1325 -U 7493 ; WX 602 ; N uni1D45 ; G 1326 -U 7494 ; WX 602 ; N uni1D46 ; G 1327 -U 7495 ; WX 602 ; N uni1D47 ; G 1328 -U 7496 ; WX 602 ; N uni1D48 ; G 1329 -U 7497 ; WX 602 ; N uni1D49 ; G 1330 -U 7498 ; WX 602 ; N uni1D4A ; G 1331 -U 7499 ; WX 602 ; N uni1D4B ; G 1332 -U 7500 ; WX 602 ; N uni1D4C ; G 1333 -U 7501 ; WX 602 ; N uni1D4D ; G 1334 -U 7502 ; WX 602 ; N uni1D4E ; G 1335 -U 7503 ; WX 602 ; N uni1D4F ; G 1336 -U 7504 ; WX 602 ; N uni1D50 ; G 1337 -U 7505 ; WX 602 ; N uni1D51 ; G 1338 -U 7506 ; WX 602 ; N uni1D52 ; G 1339 -U 7507 ; WX 602 ; N uni1D53 ; G 1340 -U 7508 ; WX 602 ; N uni1D54 ; G 1341 -U 7509 ; WX 602 ; N uni1D55 ; G 1342 -U 7510 ; WX 602 ; N uni1D56 ; G 1343 -U 7511 ; WX 602 ; N uni1D57 ; G 1344 -U 7512 ; WX 602 ; N uni1D58 ; G 1345 -U 7513 ; WX 602 ; N uni1D59 ; G 1346 -U 7514 ; WX 602 ; N uni1D5A ; G 1347 -U 7515 ; WX 602 ; N uni1D5B ; G 1348 -U 7522 ; WX 602 ; N uni1D62 ; G 1349 -U 7523 ; WX 602 ; N uni1D63 ; G 1350 -U 7524 ; WX 602 ; N uni1D64 ; G 1351 -U 7525 ; WX 602 ; N uni1D65 ; G 1352 -U 7543 ; WX 602 ; N uni1D77 ; G 1353 -U 7544 ; WX 602 ; N uni1D78 ; G 1354 -U 7547 ; WX 602 ; N uni1D7B ; G 1355 -U 7557 ; WX 602 ; N uni1D85 ; G 1356 -U 7579 ; WX 602 ; N uni1D9B ; G 1357 -U 7580 ; WX 602 ; N uni1D9C ; G 1358 -U 7581 ; WX 602 ; N uni1D9D ; G 1359 -U 7582 ; WX 602 ; N uni1D9E ; G 1360 -U 7583 ; WX 602 ; N uni1D9F ; G 1361 -U 7584 ; WX 602 ; N uni1DA0 ; G 1362 -U 7585 ; WX 602 ; N uni1DA1 ; G 1363 -U 7586 ; WX 602 ; N uni1DA2 ; G 1364 -U 7587 ; WX 602 ; N uni1DA3 ; G 1365 -U 7588 ; WX 602 ; N uni1DA4 ; G 1366 -U 7589 ; WX 602 ; N uni1DA5 ; G 1367 -U 7590 ; WX 602 ; N uni1DA6 ; G 1368 -U 7591 ; WX 602 ; N uni1DA7 ; G 1369 -U 7592 ; WX 602 ; N uni1DA8 ; G 1370 -U 7593 ; WX 602 ; N uni1DA9 ; G 1371 -U 7594 ; WX 602 ; N uni1DAA ; G 1372 -U 7595 ; WX 602 ; N uni1DAB ; G 1373 -U 7596 ; WX 602 ; N uni1DAC ; G 1374 -U 7597 ; WX 602 ; N uni1DAD ; G 1375 -U 7598 ; WX 602 ; N uni1DAE ; G 1376 -U 7599 ; WX 602 ; N uni1DAF ; G 1377 -U 7600 ; WX 602 ; N uni1DB0 ; G 1378 -U 7601 ; WX 602 ; N uni1DB1 ; G 1379 -U 7602 ; WX 602 ; N uni1DB2 ; G 1380 -U 7603 ; WX 602 ; N uni1DB3 ; G 1381 -U 7604 ; WX 602 ; N uni1DB4 ; G 1382 -U 7605 ; WX 602 ; N uni1DB5 ; G 1383 -U 7606 ; WX 602 ; N uni1DB6 ; G 1384 -U 7607 ; WX 602 ; N uni1DB7 ; G 1385 -U 7609 ; WX 602 ; N uni1DB9 ; G 1386 -U 7610 ; WX 602 ; N uni1DBA ; G 1387 -U 7611 ; WX 602 ; N uni1DBB ; G 1388 -U 7612 ; WX 602 ; N uni1DBC ; G 1389 -U 7613 ; WX 602 ; N uni1DBD ; G 1390 -U 7614 ; WX 602 ; N uni1DBE ; G 1391 -U 7615 ; WX 602 ; N uni1DBF ; G 1392 -U 7680 ; WX 602 ; N uni1E00 ; G 1393 -U 7681 ; WX 602 ; N uni1E01 ; G 1394 -U 7682 ; WX 602 ; N uni1E02 ; G 1395 -U 7683 ; WX 602 ; N uni1E03 ; G 1396 -U 7684 ; WX 602 ; N uni1E04 ; G 1397 -U 7685 ; WX 602 ; N uni1E05 ; G 1398 -U 7686 ; WX 602 ; N uni1E06 ; G 1399 -U 7687 ; WX 602 ; N uni1E07 ; G 1400 -U 7688 ; WX 602 ; N uni1E08 ; G 1401 -U 7689 ; WX 602 ; N uni1E09 ; G 1402 -U 7690 ; WX 602 ; N uni1E0A ; G 1403 -U 7691 ; WX 602 ; N uni1E0B ; G 1404 -U 7692 ; WX 602 ; N uni1E0C ; G 1405 -U 7693 ; WX 602 ; N uni1E0D ; G 1406 -U 7694 ; WX 602 ; N uni1E0E ; G 1407 -U 7695 ; WX 602 ; N uni1E0F ; G 1408 -U 7696 ; WX 602 ; N uni1E10 ; G 1409 -U 7697 ; WX 602 ; N uni1E11 ; G 1410 -U 7698 ; WX 602 ; N uni1E12 ; G 1411 -U 7699 ; WX 602 ; N uni1E13 ; G 1412 -U 7704 ; WX 602 ; N uni1E18 ; G 1413 -U 7705 ; WX 602 ; N uni1E19 ; G 1414 -U 7706 ; WX 602 ; N uni1E1A ; G 1415 -U 7707 ; WX 602 ; N uni1E1B ; G 1416 -U 7708 ; WX 602 ; N uni1E1C ; G 1417 -U 7709 ; WX 602 ; N uni1E1D ; G 1418 -U 7710 ; WX 602 ; N uni1E1E ; G 1419 -U 7711 ; WX 602 ; N uni1E1F ; G 1420 -U 7712 ; WX 602 ; N uni1E20 ; G 1421 -U 7713 ; WX 602 ; N uni1E21 ; G 1422 -U 7714 ; WX 602 ; N uni1E22 ; G 1423 -U 7715 ; WX 602 ; N uni1E23 ; G 1424 -U 7716 ; WX 602 ; N uni1E24 ; G 1425 -U 7717 ; WX 602 ; N uni1E25 ; G 1426 -U 7718 ; WX 602 ; N uni1E26 ; G 1427 -U 7719 ; WX 602 ; N uni1E27 ; G 1428 -U 7720 ; WX 602 ; N uni1E28 ; G 1429 -U 7721 ; WX 602 ; N uni1E29 ; G 1430 -U 7722 ; WX 602 ; N uni1E2A ; G 1431 -U 7723 ; WX 602 ; N uni1E2B ; G 1432 -U 7724 ; WX 602 ; N uni1E2C ; G 1433 -U 7725 ; WX 602 ; N uni1E2D ; G 1434 -U 7728 ; WX 602 ; N uni1E30 ; G 1435 -U 7729 ; WX 602 ; N uni1E31 ; G 1436 -U 7730 ; WX 602 ; N uni1E32 ; G 1437 -U 7731 ; WX 602 ; N uni1E33 ; G 1438 -U 7732 ; WX 602 ; N uni1E34 ; G 1439 -U 7733 ; WX 602 ; N uni1E35 ; G 1440 -U 7734 ; WX 602 ; N uni1E36 ; G 1441 -U 7735 ; WX 602 ; N uni1E37 ; G 1442 -U 7736 ; WX 602 ; N uni1E38 ; G 1443 -U 7737 ; WX 602 ; N uni1E39 ; G 1444 -U 7738 ; WX 602 ; N uni1E3A ; G 1445 -U 7739 ; WX 602 ; N uni1E3B ; G 1446 -U 7740 ; WX 602 ; N uni1E3C ; G 1447 -U 7741 ; WX 602 ; N uni1E3D ; G 1448 -U 7742 ; WX 602 ; N uni1E3E ; G 1449 -U 7743 ; WX 602 ; N uni1E3F ; G 1450 -U 7744 ; WX 602 ; N uni1E40 ; G 1451 -U 7745 ; WX 602 ; N uni1E41 ; G 1452 -U 7746 ; WX 602 ; N uni1E42 ; G 1453 -U 7747 ; WX 602 ; N uni1E43 ; G 1454 -U 7748 ; WX 602 ; N uni1E44 ; G 1455 -U 7749 ; WX 602 ; N uni1E45 ; G 1456 -U 7750 ; WX 602 ; N uni1E46 ; G 1457 -U 7751 ; WX 602 ; N uni1E47 ; G 1458 -U 7752 ; WX 602 ; N uni1E48 ; G 1459 -U 7753 ; WX 602 ; N uni1E49 ; G 1460 -U 7754 ; WX 602 ; N uni1E4A ; G 1461 -U 7755 ; WX 602 ; N uni1E4B ; G 1462 -U 7756 ; WX 602 ; N uni1E4C ; G 1463 -U 7757 ; WX 602 ; N uni1E4D ; G 1464 -U 7764 ; WX 602 ; N uni1E54 ; G 1465 -U 7765 ; WX 602 ; N uni1E55 ; G 1466 -U 7766 ; WX 602 ; N uni1E56 ; G 1467 -U 7767 ; WX 602 ; N uni1E57 ; G 1468 -U 7768 ; WX 602 ; N uni1E58 ; G 1469 -U 7769 ; WX 602 ; N uni1E59 ; G 1470 -U 7770 ; WX 602 ; N uni1E5A ; G 1471 -U 7771 ; WX 602 ; N uni1E5B ; G 1472 -U 7772 ; WX 602 ; N uni1E5C ; G 1473 -U 7773 ; WX 602 ; N uni1E5D ; G 1474 -U 7774 ; WX 602 ; N uni1E5E ; G 1475 -U 7775 ; WX 602 ; N uni1E5F ; G 1476 -U 7776 ; WX 602 ; N uni1E60 ; G 1477 -U 7777 ; WX 602 ; N uni1E61 ; G 1478 -U 7778 ; WX 602 ; N uni1E62 ; G 1479 -U 7779 ; WX 602 ; N uni1E63 ; G 1480 -U 7784 ; WX 602 ; N uni1E68 ; G 1481 -U 7785 ; WX 602 ; N uni1E69 ; G 1482 -U 7786 ; WX 602 ; N uni1E6A ; G 1483 -U 7787 ; WX 602 ; N uni1E6B ; G 1484 -U 7788 ; WX 602 ; N uni1E6C ; G 1485 -U 7789 ; WX 602 ; N uni1E6D ; G 1486 -U 7790 ; WX 602 ; N uni1E6E ; G 1487 -U 7791 ; WX 602 ; N uni1E6F ; G 1488 -U 7792 ; WX 602 ; N uni1E70 ; G 1489 -U 7793 ; WX 602 ; N uni1E71 ; G 1490 -U 7794 ; WX 602 ; N uni1E72 ; G 1491 -U 7795 ; WX 602 ; N uni1E73 ; G 1492 -U 7796 ; WX 602 ; N uni1E74 ; G 1493 -U 7797 ; WX 602 ; N uni1E75 ; G 1494 -U 7798 ; WX 602 ; N uni1E76 ; G 1495 -U 7799 ; WX 602 ; N uni1E77 ; G 1496 -U 7800 ; WX 602 ; N uni1E78 ; G 1497 -U 7801 ; WX 602 ; N uni1E79 ; G 1498 -U 7804 ; WX 602 ; N uni1E7C ; G 1499 -U 7805 ; WX 602 ; N uni1E7D ; G 1500 -U 7806 ; WX 602 ; N uni1E7E ; G 1501 -U 7807 ; WX 602 ; N uni1E7F ; G 1502 -U 7808 ; WX 602 ; N Wgrave ; G 1503 -U 7809 ; WX 602 ; N wgrave ; G 1504 -U 7810 ; WX 602 ; N Wacute ; G 1505 -U 7811 ; WX 602 ; N wacute ; G 1506 -U 7812 ; WX 602 ; N Wdieresis ; G 1507 -U 7813 ; WX 602 ; N wdieresis ; G 1508 -U 7814 ; WX 602 ; N uni1E86 ; G 1509 -U 7815 ; WX 602 ; N uni1E87 ; G 1510 -U 7816 ; WX 602 ; N uni1E88 ; G 1511 -U 7817 ; WX 602 ; N uni1E89 ; G 1512 -U 7818 ; WX 602 ; N uni1E8A ; G 1513 -U 7819 ; WX 602 ; N uni1E8B ; G 1514 -U 7820 ; WX 602 ; N uni1E8C ; G 1515 -U 7821 ; WX 602 ; N uni1E8D ; G 1516 -U 7822 ; WX 602 ; N uni1E8E ; G 1517 -U 7823 ; WX 602 ; N uni1E8F ; G 1518 -U 7824 ; WX 602 ; N uni1E90 ; G 1519 -U 7825 ; WX 602 ; N uni1E91 ; G 1520 -U 7826 ; WX 602 ; N uni1E92 ; G 1521 -U 7827 ; WX 602 ; N uni1E93 ; G 1522 -U 7828 ; WX 602 ; N uni1E94 ; G 1523 -U 7829 ; WX 602 ; N uni1E95 ; G 1524 -U 7830 ; WX 602 ; N uni1E96 ; G 1525 -U 7831 ; WX 602 ; N uni1E97 ; G 1526 -U 7832 ; WX 602 ; N uni1E98 ; G 1527 -U 7833 ; WX 602 ; N uni1E99 ; G 1528 -U 7835 ; WX 602 ; N uni1E9B ; G 1529 -U 7839 ; WX 602 ; N uni1E9F ; G 1530 -U 7840 ; WX 602 ; N uni1EA0 ; G 1531 -U 7841 ; WX 602 ; N uni1EA1 ; G 1532 -U 7852 ; WX 602 ; N uni1EAC ; G 1533 -U 7853 ; WX 602 ; N uni1EAD ; G 1534 -U 7856 ; WX 602 ; N uni1EB0 ; G 1535 -U 7857 ; WX 602 ; N uni1EB1 ; G 1536 -U 7862 ; WX 602 ; N uni1EB6 ; G 1537 -U 7863 ; WX 602 ; N uni1EB7 ; G 1538 -U 7864 ; WX 602 ; N uni1EB8 ; G 1539 -U 7865 ; WX 602 ; N uni1EB9 ; G 1540 -U 7868 ; WX 602 ; N uni1EBC ; G 1541 -U 7869 ; WX 602 ; N uni1EBD ; G 1542 -U 7878 ; WX 602 ; N uni1EC6 ; G 1543 -U 7879 ; WX 602 ; N uni1EC7 ; G 1544 -U 7882 ; WX 602 ; N uni1ECA ; G 1545 -U 7883 ; WX 602 ; N uni1ECB ; G 1546 -U 7884 ; WX 602 ; N uni1ECC ; G 1547 -U 7885 ; WX 602 ; N uni1ECD ; G 1548 -U 7896 ; WX 602 ; N uni1ED8 ; G 1549 -U 7897 ; WX 602 ; N uni1ED9 ; G 1550 -U 7898 ; WX 602 ; N uni1EDA ; G 1551 -U 7899 ; WX 602 ; N uni1EDB ; G 1552 -U 7900 ; WX 602 ; N uni1EDC ; G 1553 -U 7901 ; WX 602 ; N uni1EDD ; G 1554 -U 7904 ; WX 602 ; N uni1EE0 ; G 1555 -U 7905 ; WX 602 ; N uni1EE1 ; G 1556 -U 7906 ; WX 602 ; N uni1EE2 ; G 1557 -U 7907 ; WX 602 ; N uni1EE3 ; G 1558 -U 7908 ; WX 602 ; N uni1EE4 ; G 1559 -U 7909 ; WX 602 ; N uni1EE5 ; G 1560 -U 7912 ; WX 602 ; N uni1EE8 ; G 1561 -U 7913 ; WX 602 ; N uni1EE9 ; G 1562 -U 7914 ; WX 602 ; N uni1EEA ; G 1563 -U 7915 ; WX 602 ; N uni1EEB ; G 1564 -U 7918 ; WX 602 ; N uni1EEE ; G 1565 -U 7919 ; WX 602 ; N uni1EEF ; G 1566 -U 7920 ; WX 602 ; N uni1EF0 ; G 1567 -U 7921 ; WX 602 ; N uni1EF1 ; G 1568 -U 7922 ; WX 602 ; N Ygrave ; G 1569 -U 7923 ; WX 602 ; N ygrave ; G 1570 -U 7924 ; WX 602 ; N uni1EF4 ; G 1571 -U 7925 ; WX 602 ; N uni1EF5 ; G 1572 -U 7928 ; WX 602 ; N uni1EF8 ; G 1573 -U 7929 ; WX 602 ; N uni1EF9 ; G 1574 -U 7936 ; WX 602 ; N uni1F00 ; G 1575 -U 7937 ; WX 602 ; N uni1F01 ; G 1576 -U 7938 ; WX 602 ; N uni1F02 ; G 1577 -U 7939 ; WX 602 ; N uni1F03 ; G 1578 -U 7940 ; WX 602 ; N uni1F04 ; G 1579 -U 7941 ; WX 602 ; N uni1F05 ; G 1580 -U 7942 ; WX 602 ; N uni1F06 ; G 1581 -U 7943 ; WX 602 ; N uni1F07 ; G 1582 -U 7944 ; WX 602 ; N uni1F08 ; G 1583 -U 7945 ; WX 602 ; N uni1F09 ; G 1584 -U 7946 ; WX 602 ; N uni1F0A ; G 1585 -U 7947 ; WX 602 ; N uni1F0B ; G 1586 -U 7948 ; WX 602 ; N uni1F0C ; G 1587 -U 7949 ; WX 602 ; N uni1F0D ; G 1588 -U 7950 ; WX 602 ; N uni1F0E ; G 1589 -U 7951 ; WX 602 ; N uni1F0F ; G 1590 -U 7952 ; WX 602 ; N uni1F10 ; G 1591 -U 7953 ; WX 602 ; N uni1F11 ; G 1592 -U 7954 ; WX 602 ; N uni1F12 ; G 1593 -U 7955 ; WX 602 ; N uni1F13 ; G 1594 -U 7956 ; WX 602 ; N uni1F14 ; G 1595 -U 7957 ; WX 602 ; N uni1F15 ; G 1596 -U 7960 ; WX 602 ; N uni1F18 ; G 1597 -U 7961 ; WX 602 ; N uni1F19 ; G 1598 -U 7962 ; WX 602 ; N uni1F1A ; G 1599 -U 7963 ; WX 602 ; N uni1F1B ; G 1600 -U 7964 ; WX 602 ; N uni1F1C ; G 1601 -U 7965 ; WX 602 ; N uni1F1D ; G 1602 -U 7968 ; WX 602 ; N uni1F20 ; G 1603 -U 7969 ; WX 602 ; N uni1F21 ; G 1604 -U 7970 ; WX 602 ; N uni1F22 ; G 1605 -U 7971 ; WX 602 ; N uni1F23 ; G 1606 -U 7972 ; WX 602 ; N uni1F24 ; G 1607 -U 7973 ; WX 602 ; N uni1F25 ; G 1608 -U 7974 ; WX 602 ; N uni1F26 ; G 1609 -U 7975 ; WX 602 ; N uni1F27 ; G 1610 -U 7976 ; WX 602 ; N uni1F28 ; G 1611 -U 7977 ; WX 602 ; N uni1F29 ; G 1612 -U 7978 ; WX 602 ; N uni1F2A ; G 1613 -U 7979 ; WX 602 ; N uni1F2B ; G 1614 -U 7980 ; WX 602 ; N uni1F2C ; G 1615 -U 7981 ; WX 602 ; N uni1F2D ; G 1616 -U 7982 ; WX 602 ; N uni1F2E ; G 1617 -U 7983 ; WX 602 ; N uni1F2F ; G 1618 -U 7984 ; WX 602 ; N uni1F30 ; G 1619 -U 7985 ; WX 602 ; N uni1F31 ; G 1620 -U 7986 ; WX 602 ; N uni1F32 ; G 1621 -U 7987 ; WX 602 ; N uni1F33 ; G 1622 -U 7988 ; WX 602 ; N uni1F34 ; G 1623 -U 7989 ; WX 602 ; N uni1F35 ; G 1624 -U 7990 ; WX 602 ; N uni1F36 ; G 1625 -U 7991 ; WX 602 ; N uni1F37 ; G 1626 -U 7992 ; WX 602 ; N uni1F38 ; G 1627 -U 7993 ; WX 602 ; N uni1F39 ; G 1628 -U 7994 ; WX 602 ; N uni1F3A ; G 1629 -U 7995 ; WX 602 ; N uni1F3B ; G 1630 -U 7996 ; WX 602 ; N uni1F3C ; G 1631 -U 7997 ; WX 602 ; N uni1F3D ; G 1632 -U 7998 ; WX 602 ; N uni1F3E ; G 1633 -U 7999 ; WX 602 ; N uni1F3F ; G 1634 -U 8000 ; WX 602 ; N uni1F40 ; G 1635 -U 8001 ; WX 602 ; N uni1F41 ; G 1636 -U 8002 ; WX 602 ; N uni1F42 ; G 1637 -U 8003 ; WX 602 ; N uni1F43 ; G 1638 -U 8004 ; WX 602 ; N uni1F44 ; G 1639 -U 8005 ; WX 602 ; N uni1F45 ; G 1640 -U 8008 ; WX 602 ; N uni1F48 ; G 1641 -U 8009 ; WX 602 ; N uni1F49 ; G 1642 -U 8010 ; WX 602 ; N uni1F4A ; G 1643 -U 8011 ; WX 602 ; N uni1F4B ; G 1644 -U 8012 ; WX 602 ; N uni1F4C ; G 1645 -U 8013 ; WX 602 ; N uni1F4D ; G 1646 -U 8016 ; WX 602 ; N uni1F50 ; G 1647 -U 8017 ; WX 602 ; N uni1F51 ; G 1648 -U 8018 ; WX 602 ; N uni1F52 ; G 1649 -U 8019 ; WX 602 ; N uni1F53 ; G 1650 -U 8020 ; WX 602 ; N uni1F54 ; G 1651 -U 8021 ; WX 602 ; N uni1F55 ; G 1652 -U 8022 ; WX 602 ; N uni1F56 ; G 1653 -U 8023 ; WX 602 ; N uni1F57 ; G 1654 -U 8025 ; WX 602 ; N uni1F59 ; G 1655 -U 8027 ; WX 602 ; N uni1F5B ; G 1656 -U 8029 ; WX 602 ; N uni1F5D ; G 1657 -U 8031 ; WX 602 ; N uni1F5F ; G 1658 -U 8032 ; WX 602 ; N uni1F60 ; G 1659 -U 8033 ; WX 602 ; N uni1F61 ; G 1660 -U 8034 ; WX 602 ; N uni1F62 ; G 1661 -U 8035 ; WX 602 ; N uni1F63 ; G 1662 -U 8036 ; WX 602 ; N uni1F64 ; G 1663 -U 8037 ; WX 602 ; N uni1F65 ; G 1664 -U 8038 ; WX 602 ; N uni1F66 ; G 1665 -U 8039 ; WX 602 ; N uni1F67 ; G 1666 -U 8040 ; WX 602 ; N uni1F68 ; G 1667 -U 8041 ; WX 602 ; N uni1F69 ; G 1668 -U 8042 ; WX 602 ; N uni1F6A ; G 1669 -U 8043 ; WX 602 ; N uni1F6B ; G 1670 -U 8044 ; WX 602 ; N uni1F6C ; G 1671 -U 8045 ; WX 602 ; N uni1F6D ; G 1672 -U 8046 ; WX 602 ; N uni1F6E ; G 1673 -U 8047 ; WX 602 ; N uni1F6F ; G 1674 -U 8048 ; WX 602 ; N uni1F70 ; G 1675 -U 8049 ; WX 602 ; N uni1F71 ; G 1676 -U 8050 ; WX 602 ; N uni1F72 ; G 1677 -U 8051 ; WX 602 ; N uni1F73 ; G 1678 -U 8052 ; WX 602 ; N uni1F74 ; G 1679 -U 8053 ; WX 602 ; N uni1F75 ; G 1680 -U 8054 ; WX 602 ; N uni1F76 ; G 1681 -U 8055 ; WX 602 ; N uni1F77 ; G 1682 -U 8056 ; WX 602 ; N uni1F78 ; G 1683 -U 8057 ; WX 602 ; N uni1F79 ; G 1684 -U 8058 ; WX 602 ; N uni1F7A ; G 1685 -U 8059 ; WX 602 ; N uni1F7B ; G 1686 -U 8060 ; WX 602 ; N uni1F7C ; G 1687 -U 8061 ; WX 602 ; N uni1F7D ; G 1688 -U 8064 ; WX 602 ; N uni1F80 ; G 1689 -U 8065 ; WX 602 ; N uni1F81 ; G 1690 -U 8066 ; WX 602 ; N uni1F82 ; G 1691 -U 8067 ; WX 602 ; N uni1F83 ; G 1692 -U 8068 ; WX 602 ; N uni1F84 ; G 1693 -U 8069 ; WX 602 ; N uni1F85 ; G 1694 -U 8070 ; WX 602 ; N uni1F86 ; G 1695 -U 8071 ; WX 602 ; N uni1F87 ; G 1696 -U 8072 ; WX 602 ; N uni1F88 ; G 1697 -U 8073 ; WX 602 ; N uni1F89 ; G 1698 -U 8074 ; WX 602 ; N uni1F8A ; G 1699 -U 8075 ; WX 602 ; N uni1F8B ; G 1700 -U 8076 ; WX 602 ; N uni1F8C ; G 1701 -U 8077 ; WX 602 ; N uni1F8D ; G 1702 -U 8078 ; WX 602 ; N uni1F8E ; G 1703 -U 8079 ; WX 602 ; N uni1F8F ; G 1704 -U 8080 ; WX 602 ; N uni1F90 ; G 1705 -U 8081 ; WX 602 ; N uni1F91 ; G 1706 -U 8082 ; WX 602 ; N uni1F92 ; G 1707 -U 8083 ; WX 602 ; N uni1F93 ; G 1708 -U 8084 ; WX 602 ; N uni1F94 ; G 1709 -U 8085 ; WX 602 ; N uni1F95 ; G 1710 -U 8086 ; WX 602 ; N uni1F96 ; G 1711 -U 8087 ; WX 602 ; N uni1F97 ; G 1712 -U 8088 ; WX 602 ; N uni1F98 ; G 1713 -U 8089 ; WX 602 ; N uni1F99 ; G 1714 -U 8090 ; WX 602 ; N uni1F9A ; G 1715 -U 8091 ; WX 602 ; N uni1F9B ; G 1716 -U 8092 ; WX 602 ; N uni1F9C ; G 1717 -U 8093 ; WX 602 ; N uni1F9D ; G 1718 -U 8094 ; WX 602 ; N uni1F9E ; G 1719 -U 8095 ; WX 602 ; N uni1F9F ; G 1720 -U 8096 ; WX 602 ; N uni1FA0 ; G 1721 -U 8097 ; WX 602 ; N uni1FA1 ; G 1722 -U 8098 ; WX 602 ; N uni1FA2 ; G 1723 -U 8099 ; WX 602 ; N uni1FA3 ; G 1724 -U 8100 ; WX 602 ; N uni1FA4 ; G 1725 -U 8101 ; WX 602 ; N uni1FA5 ; G 1726 -U 8102 ; WX 602 ; N uni1FA6 ; G 1727 -U 8103 ; WX 602 ; N uni1FA7 ; G 1728 -U 8104 ; WX 602 ; N uni1FA8 ; G 1729 -U 8105 ; WX 602 ; N uni1FA9 ; G 1730 -U 8106 ; WX 602 ; N uni1FAA ; G 1731 -U 8107 ; WX 602 ; N uni1FAB ; G 1732 -U 8108 ; WX 602 ; N uni1FAC ; G 1733 -U 8109 ; WX 602 ; N uni1FAD ; G 1734 -U 8110 ; WX 602 ; N uni1FAE ; G 1735 -U 8111 ; WX 602 ; N uni1FAF ; G 1736 -U 8112 ; WX 602 ; N uni1FB0 ; G 1737 -U 8113 ; WX 602 ; N uni1FB1 ; G 1738 -U 8114 ; WX 602 ; N uni1FB2 ; G 1739 -U 8115 ; WX 602 ; N uni1FB3 ; G 1740 -U 8116 ; WX 602 ; N uni1FB4 ; G 1741 -U 8118 ; WX 602 ; N uni1FB6 ; G 1742 -U 8119 ; WX 602 ; N uni1FB7 ; G 1743 -U 8120 ; WX 602 ; N uni1FB8 ; G 1744 -U 8121 ; WX 602 ; N uni1FB9 ; G 1745 -U 8122 ; WX 602 ; N uni1FBA ; G 1746 -U 8123 ; WX 602 ; N uni1FBB ; G 1747 -U 8124 ; WX 602 ; N uni1FBC ; G 1748 -U 8125 ; WX 602 ; N uni1FBD ; G 1749 -U 8126 ; WX 602 ; N uni1FBE ; G 1750 -U 8127 ; WX 602 ; N uni1FBF ; G 1751 -U 8128 ; WX 602 ; N uni1FC0 ; G 1752 -U 8129 ; WX 602 ; N uni1FC1 ; G 1753 -U 8130 ; WX 602 ; N uni1FC2 ; G 1754 -U 8131 ; WX 602 ; N uni1FC3 ; G 1755 -U 8132 ; WX 602 ; N uni1FC4 ; G 1756 -U 8134 ; WX 602 ; N uni1FC6 ; G 1757 -U 8135 ; WX 602 ; N uni1FC7 ; G 1758 -U 8136 ; WX 602 ; N uni1FC8 ; G 1759 -U 8137 ; WX 602 ; N uni1FC9 ; G 1760 -U 8138 ; WX 602 ; N uni1FCA ; G 1761 -U 8139 ; WX 602 ; N uni1FCB ; G 1762 -U 8140 ; WX 602 ; N uni1FCC ; G 1763 -U 8141 ; WX 602 ; N uni1FCD ; G 1764 -U 8142 ; WX 602 ; N uni1FCE ; G 1765 -U 8143 ; WX 602 ; N uni1FCF ; G 1766 -U 8144 ; WX 602 ; N uni1FD0 ; G 1767 -U 8145 ; WX 602 ; N uni1FD1 ; G 1768 -U 8146 ; WX 602 ; N uni1FD2 ; G 1769 -U 8147 ; WX 602 ; N uni1FD3 ; G 1770 -U 8150 ; WX 602 ; N uni1FD6 ; G 1771 -U 8151 ; WX 602 ; N uni1FD7 ; G 1772 -U 8152 ; WX 602 ; N uni1FD8 ; G 1773 -U 8153 ; WX 602 ; N uni1FD9 ; G 1774 -U 8154 ; WX 602 ; N uni1FDA ; G 1775 -U 8155 ; WX 602 ; N uni1FDB ; G 1776 -U 8157 ; WX 602 ; N uni1FDD ; G 1777 -U 8158 ; WX 602 ; N uni1FDE ; G 1778 -U 8159 ; WX 602 ; N uni1FDF ; G 1779 -U 8160 ; WX 602 ; N uni1FE0 ; G 1780 -U 8161 ; WX 602 ; N uni1FE1 ; G 1781 -U 8162 ; WX 602 ; N uni1FE2 ; G 1782 -U 8163 ; WX 602 ; N uni1FE3 ; G 1783 -U 8164 ; WX 602 ; N uni1FE4 ; G 1784 -U 8165 ; WX 602 ; N uni1FE5 ; G 1785 -U 8166 ; WX 602 ; N uni1FE6 ; G 1786 -U 8167 ; WX 602 ; N uni1FE7 ; G 1787 -U 8168 ; WX 602 ; N uni1FE8 ; G 1788 -U 8169 ; WX 602 ; N uni1FE9 ; G 1789 -U 8170 ; WX 602 ; N uni1FEA ; G 1790 -U 8171 ; WX 602 ; N uni1FEB ; G 1791 -U 8172 ; WX 602 ; N uni1FEC ; G 1792 -U 8173 ; WX 602 ; N uni1FED ; G 1793 -U 8174 ; WX 602 ; N uni1FEE ; G 1794 -U 8175 ; WX 602 ; N uni1FEF ; G 1795 -U 8178 ; WX 602 ; N uni1FF2 ; G 1796 -U 8179 ; WX 602 ; N uni1FF3 ; G 1797 -U 8180 ; WX 602 ; N uni1FF4 ; G 1798 -U 8182 ; WX 602 ; N uni1FF6 ; G 1799 -U 8183 ; WX 602 ; N uni1FF7 ; G 1800 -U 8184 ; WX 602 ; N uni1FF8 ; G 1801 -U 8185 ; WX 602 ; N uni1FF9 ; G 1802 -U 8186 ; WX 602 ; N uni1FFA ; G 1803 -U 8187 ; WX 602 ; N uni1FFB ; G 1804 -U 8188 ; WX 602 ; N uni1FFC ; G 1805 -U 8189 ; WX 602 ; N uni1FFD ; G 1806 -U 8190 ; WX 602 ; N uni1FFE ; G 1807 -U 8192 ; WX 602 ; N uni2000 ; G 1808 -U 8193 ; WX 602 ; N uni2001 ; G 1809 -U 8194 ; WX 602 ; N uni2002 ; G 1810 -U 8195 ; WX 602 ; N uni2003 ; G 1811 -U 8196 ; WX 602 ; N uni2004 ; G 1812 -U 8197 ; WX 602 ; N uni2005 ; G 1813 -U 8198 ; WX 602 ; N uni2006 ; G 1814 -U 8199 ; WX 602 ; N uni2007 ; G 1815 -U 8200 ; WX 602 ; N uni2008 ; G 1816 -U 8201 ; WX 602 ; N uni2009 ; G 1817 -U 8202 ; WX 602 ; N uni200A ; G 1818 -U 8208 ; WX 602 ; N uni2010 ; G 1819 -U 8209 ; WX 602 ; N uni2011 ; G 1820 -U 8210 ; WX 602 ; N figuredash ; G 1821 -U 8211 ; WX 602 ; N endash ; G 1822 -U 8212 ; WX 602 ; N emdash ; G 1823 -U 8213 ; WX 602 ; N uni2015 ; G 1824 -U 8214 ; WX 602 ; N uni2016 ; G 1825 -U 8215 ; WX 602 ; N underscoredbl ; G 1826 -U 8216 ; WX 602 ; N quoteleft ; G 1827 -U 8217 ; WX 602 ; N quoteright ; G 1828 -U 8218 ; WX 602 ; N quotesinglbase ; G 1829 -U 8219 ; WX 602 ; N quotereversed ; G 1830 -U 8220 ; WX 602 ; N quotedblleft ; G 1831 -U 8221 ; WX 602 ; N quotedblright ; G 1832 -U 8222 ; WX 602 ; N quotedblbase ; G 1833 -U 8223 ; WX 602 ; N uni201F ; G 1834 -U 8224 ; WX 602 ; N dagger ; G 1835 -U 8225 ; WX 602 ; N daggerdbl ; G 1836 -U 8226 ; WX 602 ; N bullet ; G 1837 -U 8227 ; WX 602 ; N uni2023 ; G 1838 -U 8230 ; WX 602 ; N ellipsis ; G 1839 -U 8239 ; WX 602 ; N uni202F ; G 1840 -U 8240 ; WX 602 ; N perthousand ; G 1841 -U 8241 ; WX 602 ; N uni2031 ; G 1842 -U 8242 ; WX 602 ; N minute ; G 1843 -U 8243 ; WX 602 ; N second ; G 1844 -U 8244 ; WX 602 ; N uni2034 ; G 1845 -U 8245 ; WX 602 ; N uni2035 ; G 1846 -U 8246 ; WX 602 ; N uni2036 ; G 1847 -U 8247 ; WX 602 ; N uni2037 ; G 1848 -U 8249 ; WX 602 ; N guilsinglleft ; G 1849 -U 8250 ; WX 602 ; N guilsinglright ; G 1850 -U 8252 ; WX 602 ; N exclamdbl ; G 1851 -U 8253 ; WX 602 ; N uni203D ; G 1852 -U 8254 ; WX 602 ; N uni203E ; G 1853 -U 8255 ; WX 602 ; N uni203F ; G 1854 -U 8261 ; WX 602 ; N uni2045 ; G 1855 -U 8262 ; WX 602 ; N uni2046 ; G 1856 -U 8263 ; WX 602 ; N uni2047 ; G 1857 -U 8264 ; WX 602 ; N uni2048 ; G 1858 -U 8265 ; WX 602 ; N uni2049 ; G 1859 -U 8267 ; WX 602 ; N uni204B ; G 1860 -U 8287 ; WX 602 ; N uni205F ; G 1861 -U 8304 ; WX 602 ; N uni2070 ; G 1862 -U 8305 ; WX 602 ; N uni2071 ; G 1863 -U 8308 ; WX 602 ; N uni2074 ; G 1864 -U 8309 ; WX 602 ; N uni2075 ; G 1865 -U 8310 ; WX 602 ; N uni2076 ; G 1866 -U 8311 ; WX 602 ; N uni2077 ; G 1867 -U 8312 ; WX 602 ; N uni2078 ; G 1868 -U 8313 ; WX 602 ; N uni2079 ; G 1869 -U 8314 ; WX 602 ; N uni207A ; G 1870 -U 8315 ; WX 602 ; N uni207B ; G 1871 -U 8316 ; WX 602 ; N uni207C ; G 1872 -U 8317 ; WX 602 ; N uni207D ; G 1873 -U 8318 ; WX 602 ; N uni207E ; G 1874 -U 8319 ; WX 602 ; N uni207F ; G 1875 -U 8320 ; WX 602 ; N uni2080 ; G 1876 -U 8321 ; WX 602 ; N uni2081 ; G 1877 -U 8322 ; WX 602 ; N uni2082 ; G 1878 -U 8323 ; WX 602 ; N uni2083 ; G 1879 -U 8324 ; WX 602 ; N uni2084 ; G 1880 -U 8325 ; WX 602 ; N uni2085 ; G 1881 -U 8326 ; WX 602 ; N uni2086 ; G 1882 -U 8327 ; WX 602 ; N uni2087 ; G 1883 -U 8328 ; WX 602 ; N uni2088 ; G 1884 -U 8329 ; WX 602 ; N uni2089 ; G 1885 -U 8330 ; WX 602 ; N uni208A ; G 1886 -U 8331 ; WX 602 ; N uni208B ; G 1887 -U 8332 ; WX 602 ; N uni208C ; G 1888 -U 8333 ; WX 602 ; N uni208D ; G 1889 -U 8334 ; WX 602 ; N uni208E ; G 1890 -U 8336 ; WX 602 ; N uni2090 ; G 1891 -U 8337 ; WX 602 ; N uni2091 ; G 1892 -U 8338 ; WX 602 ; N uni2092 ; G 1893 -U 8339 ; WX 602 ; N uni2093 ; G 1894 -U 8340 ; WX 602 ; N uni2094 ; G 1895 -U 8341 ; WX 602 ; N uni2095 ; G 1896 -U 8342 ; WX 602 ; N uni2096 ; G 1897 -U 8343 ; WX 602 ; N uni2097 ; G 1898 -U 8344 ; WX 602 ; N uni2098 ; G 1899 -U 8345 ; WX 602 ; N uni2099 ; G 1900 -U 8346 ; WX 602 ; N uni209A ; G 1901 -U 8347 ; WX 602 ; N uni209B ; G 1902 -U 8348 ; WX 602 ; N uni209C ; G 1903 -U 8352 ; WX 602 ; N uni20A0 ; G 1904 -U 8353 ; WX 602 ; N colonmonetary ; G 1905 -U 8354 ; WX 602 ; N uni20A2 ; G 1906 -U 8355 ; WX 602 ; N franc ; G 1907 -U 8356 ; WX 602 ; N lira ; G 1908 -U 8357 ; WX 602 ; N uni20A5 ; G 1909 -U 8358 ; WX 602 ; N uni20A6 ; G 1910 -U 8359 ; WX 602 ; N peseta ; G 1911 -U 8360 ; WX 602 ; N uni20A8 ; G 1912 -U 8361 ; WX 602 ; N uni20A9 ; G 1913 -U 8362 ; WX 602 ; N uni20AA ; G 1914 -U 8363 ; WX 602 ; N dong ; G 1915 -U 8364 ; WX 602 ; N Euro ; G 1916 -U 8365 ; WX 602 ; N uni20AD ; G 1917 -U 8366 ; WX 602 ; N uni20AE ; G 1918 -U 8367 ; WX 602 ; N uni20AF ; G 1919 -U 8368 ; WX 602 ; N uni20B0 ; G 1920 -U 8369 ; WX 602 ; N uni20B1 ; G 1921 -U 8370 ; WX 602 ; N uni20B2 ; G 1922 -U 8371 ; WX 602 ; N uni20B3 ; G 1923 -U 8372 ; WX 602 ; N uni20B4 ; G 1924 -U 8373 ; WX 602 ; N uni20B5 ; G 1925 -U 8376 ; WX 602 ; N uni20B8 ; G 1926 -U 8377 ; WX 602 ; N uni20B9 ; G 1927 -U 8378 ; WX 602 ; N uni20BA ; G 1928 -U 8381 ; WX 602 ; N uni20BD ; G 1929 -U 8450 ; WX 602 ; N uni2102 ; G 1930 -U 8453 ; WX 602 ; N uni2105 ; G 1931 -U 8461 ; WX 602 ; N uni210D ; G 1932 -U 8462 ; WX 602 ; N uni210E ; G 1933 -U 8463 ; WX 602 ; N uni210F ; G 1934 -U 8469 ; WX 602 ; N uni2115 ; G 1935 -U 8470 ; WX 602 ; N uni2116 ; G 1936 -U 8471 ; WX 602 ; N uni2117 ; G 1937 -U 8473 ; WX 602 ; N uni2119 ; G 1938 -U 8474 ; WX 602 ; N uni211A ; G 1939 -U 8477 ; WX 602 ; N uni211D ; G 1940 -U 8482 ; WX 602 ; N trademark ; G 1941 -U 8484 ; WX 602 ; N uni2124 ; G 1942 -U 8486 ; WX 602 ; N uni2126 ; G 1943 -U 8490 ; WX 602 ; N uni212A ; G 1944 -U 8491 ; WX 602 ; N uni212B ; G 1945 -U 8494 ; WX 602 ; N estimated ; G 1946 -U 8520 ; WX 602 ; N uni2148 ; G 1947 -U 8528 ; WX 602 ; N uni2150 ; G 1948 -U 8529 ; WX 602 ; N uni2151 ; G 1949 -U 8531 ; WX 602 ; N onethird ; G 1950 -U 8532 ; WX 602 ; N twothirds ; G 1951 -U 8533 ; WX 602 ; N uni2155 ; G 1952 -U 8534 ; WX 602 ; N uni2156 ; G 1953 -U 8535 ; WX 602 ; N uni2157 ; G 1954 -U 8536 ; WX 602 ; N uni2158 ; G 1955 -U 8537 ; WX 602 ; N uni2159 ; G 1956 -U 8538 ; WX 602 ; N uni215A ; G 1957 -U 8539 ; WX 602 ; N oneeighth ; G 1958 -U 8540 ; WX 602 ; N threeeighths ; G 1959 -U 8541 ; WX 602 ; N fiveeighths ; G 1960 -U 8542 ; WX 602 ; N seveneighths ; G 1961 -U 8543 ; WX 602 ; N uni215F ; G 1962 -U 8585 ; WX 602 ; N uni2189 ; G 1963 -U 8592 ; WX 602 ; N arrowleft ; G 1964 -U 8593 ; WX 602 ; N arrowup ; G 1965 -U 8594 ; WX 602 ; N arrowright ; G 1966 -U 8595 ; WX 602 ; N arrowdown ; G 1967 -U 8596 ; WX 602 ; N arrowboth ; G 1968 -U 8597 ; WX 602 ; N arrowupdn ; G 1969 -U 8598 ; WX 602 ; N uni2196 ; G 1970 -U 8599 ; WX 602 ; N uni2197 ; G 1971 -U 8600 ; WX 602 ; N uni2198 ; G 1972 -U 8601 ; WX 602 ; N uni2199 ; G 1973 -U 8602 ; WX 602 ; N uni219A ; G 1974 -U 8603 ; WX 602 ; N uni219B ; G 1975 -U 8604 ; WX 602 ; N uni219C ; G 1976 -U 8605 ; WX 602 ; N uni219D ; G 1977 -U 8606 ; WX 602 ; N uni219E ; G 1978 -U 8607 ; WX 602 ; N uni219F ; G 1979 -U 8608 ; WX 602 ; N uni21A0 ; G 1980 -U 8609 ; WX 602 ; N uni21A1 ; G 1981 -U 8610 ; WX 602 ; N uni21A2 ; G 1982 -U 8611 ; WX 602 ; N uni21A3 ; G 1983 -U 8612 ; WX 602 ; N uni21A4 ; G 1984 -U 8613 ; WX 602 ; N uni21A5 ; G 1985 -U 8614 ; WX 602 ; N uni21A6 ; G 1986 -U 8615 ; WX 602 ; N uni21A7 ; G 1987 -U 8616 ; WX 602 ; N arrowupdnbse ; G 1988 -U 8617 ; WX 602 ; N uni21A9 ; G 1989 -U 8618 ; WX 602 ; N uni21AA ; G 1990 -U 8619 ; WX 602 ; N uni21AB ; G 1991 -U 8620 ; WX 602 ; N uni21AC ; G 1992 -U 8621 ; WX 602 ; N uni21AD ; G 1993 -U 8622 ; WX 602 ; N uni21AE ; G 1994 -U 8623 ; WX 602 ; N uni21AF ; G 1995 -U 8624 ; WX 602 ; N uni21B0 ; G 1996 -U 8625 ; WX 602 ; N uni21B1 ; G 1997 -U 8626 ; WX 602 ; N uni21B2 ; G 1998 -U 8627 ; WX 602 ; N uni21B3 ; G 1999 -U 8628 ; WX 602 ; N uni21B4 ; G 2000 -U 8629 ; WX 602 ; N carriagereturn ; G 2001 -U 8630 ; WX 602 ; N uni21B6 ; G 2002 -U 8631 ; WX 602 ; N uni21B7 ; G 2003 -U 8632 ; WX 602 ; N uni21B8 ; G 2004 -U 8633 ; WX 602 ; N uni21B9 ; G 2005 -U 8634 ; WX 602 ; N uni21BA ; G 2006 -U 8635 ; WX 602 ; N uni21BB ; G 2007 -U 8636 ; WX 602 ; N uni21BC ; G 2008 -U 8637 ; WX 602 ; N uni21BD ; G 2009 -U 8638 ; WX 602 ; N uni21BE ; G 2010 -U 8639 ; WX 602 ; N uni21BF ; G 2011 -U 8640 ; WX 602 ; N uni21C0 ; G 2012 -U 8641 ; WX 602 ; N uni21C1 ; G 2013 -U 8642 ; WX 602 ; N uni21C2 ; G 2014 -U 8643 ; WX 602 ; N uni21C3 ; G 2015 -U 8644 ; WX 602 ; N uni21C4 ; G 2016 -U 8645 ; WX 602 ; N uni21C5 ; G 2017 -U 8646 ; WX 602 ; N uni21C6 ; G 2018 -U 8647 ; WX 602 ; N uni21C7 ; G 2019 -U 8648 ; WX 602 ; N uni21C8 ; G 2020 -U 8649 ; WX 602 ; N uni21C9 ; G 2021 -U 8650 ; WX 602 ; N uni21CA ; G 2022 -U 8651 ; WX 602 ; N uni21CB ; G 2023 -U 8652 ; WX 602 ; N uni21CC ; G 2024 -U 8653 ; WX 602 ; N uni21CD ; G 2025 -U 8654 ; WX 602 ; N uni21CE ; G 2026 -U 8655 ; WX 602 ; N uni21CF ; G 2027 -U 8656 ; WX 602 ; N arrowdblleft ; G 2028 -U 8657 ; WX 602 ; N arrowdblup ; G 2029 -U 8658 ; WX 602 ; N arrowdblright ; G 2030 -U 8659 ; WX 602 ; N arrowdbldown ; G 2031 -U 8660 ; WX 602 ; N arrowdblboth ; G 2032 -U 8661 ; WX 602 ; N uni21D5 ; G 2033 -U 8662 ; WX 602 ; N uni21D6 ; G 2034 -U 8663 ; WX 602 ; N uni21D7 ; G 2035 -U 8664 ; WX 602 ; N uni21D8 ; G 2036 -U 8665 ; WX 602 ; N uni21D9 ; G 2037 -U 8666 ; WX 602 ; N uni21DA ; G 2038 -U 8667 ; WX 602 ; N uni21DB ; G 2039 -U 8668 ; WX 602 ; N uni21DC ; G 2040 -U 8669 ; WX 602 ; N uni21DD ; G 2041 -U 8670 ; WX 602 ; N uni21DE ; G 2042 -U 8671 ; WX 602 ; N uni21DF ; G 2043 -U 8672 ; WX 602 ; N uni21E0 ; G 2044 -U 8673 ; WX 602 ; N uni21E1 ; G 2045 -U 8674 ; WX 602 ; N uni21E2 ; G 2046 -U 8675 ; WX 602 ; N uni21E3 ; G 2047 -U 8676 ; WX 602 ; N uni21E4 ; G 2048 -U 8677 ; WX 602 ; N uni21E5 ; G 2049 -U 8678 ; WX 602 ; N uni21E6 ; G 2050 -U 8679 ; WX 602 ; N uni21E7 ; G 2051 -U 8680 ; WX 602 ; N uni21E8 ; G 2052 -U 8681 ; WX 602 ; N uni21E9 ; G 2053 -U 8682 ; WX 602 ; N uni21EA ; G 2054 -U 8683 ; WX 602 ; N uni21EB ; G 2055 -U 8684 ; WX 602 ; N uni21EC ; G 2056 -U 8685 ; WX 602 ; N uni21ED ; G 2057 -U 8686 ; WX 602 ; N uni21EE ; G 2058 -U 8687 ; WX 602 ; N uni21EF ; G 2059 -U 8688 ; WX 602 ; N uni21F0 ; G 2060 -U 8689 ; WX 602 ; N uni21F1 ; G 2061 -U 8690 ; WX 602 ; N uni21F2 ; G 2062 -U 8691 ; WX 602 ; N uni21F3 ; G 2063 -U 8692 ; WX 602 ; N uni21F4 ; G 2064 -U 8693 ; WX 602 ; N uni21F5 ; G 2065 -U 8694 ; WX 602 ; N uni21F6 ; G 2066 -U 8695 ; WX 602 ; N uni21F7 ; G 2067 -U 8696 ; WX 602 ; N uni21F8 ; G 2068 -U 8697 ; WX 602 ; N uni21F9 ; G 2069 -U 8698 ; WX 602 ; N uni21FA ; G 2070 -U 8699 ; WX 602 ; N uni21FB ; G 2071 -U 8700 ; WX 602 ; N uni21FC ; G 2072 -U 8701 ; WX 602 ; N uni21FD ; G 2073 -U 8702 ; WX 602 ; N uni21FE ; G 2074 -U 8703 ; WX 602 ; N uni21FF ; G 2075 -U 8704 ; WX 602 ; N universal ; G 2076 -U 8705 ; WX 602 ; N uni2201 ; G 2077 -U 8706 ; WX 602 ; N partialdiff ; G 2078 -U 8707 ; WX 602 ; N existential ; G 2079 -U 8708 ; WX 602 ; N uni2204 ; G 2080 -U 8709 ; WX 602 ; N emptyset ; G 2081 -U 8710 ; WX 602 ; N increment ; G 2082 -U 8711 ; WX 602 ; N gradient ; G 2083 -U 8712 ; WX 602 ; N element ; G 2084 -U 8713 ; WX 602 ; N notelement ; G 2085 -U 8714 ; WX 602 ; N uni220A ; G 2086 -U 8715 ; WX 602 ; N suchthat ; G 2087 -U 8716 ; WX 602 ; N uni220C ; G 2088 -U 8717 ; WX 602 ; N uni220D ; G 2089 -U 8718 ; WX 602 ; N uni220E ; G 2090 -U 8719 ; WX 602 ; N product ; G 2091 -U 8720 ; WX 602 ; N uni2210 ; G 2092 -U 8721 ; WX 602 ; N summation ; G 2093 -U 8722 ; WX 602 ; N minus ; G 2094 -U 8723 ; WX 602 ; N uni2213 ; G 2095 -U 8725 ; WX 602 ; N uni2215 ; G 2096 -U 8727 ; WX 602 ; N asteriskmath ; G 2097 -U 8728 ; WX 602 ; N uni2218 ; G 2098 -U 8729 ; WX 602 ; N uni2219 ; G 2099 -U 8730 ; WX 602 ; N radical ; G 2100 -U 8731 ; WX 602 ; N uni221B ; G 2101 -U 8732 ; WX 602 ; N uni221C ; G 2102 -U 8733 ; WX 602 ; N proportional ; G 2103 -U 8734 ; WX 602 ; N infinity ; G 2104 -U 8735 ; WX 602 ; N orthogonal ; G 2105 -U 8736 ; WX 602 ; N angle ; G 2106 -U 8739 ; WX 602 ; N uni2223 ; G 2107 -U 8743 ; WX 602 ; N logicaland ; G 2108 -U 8744 ; WX 602 ; N logicalor ; G 2109 -U 8745 ; WX 602 ; N intersection ; G 2110 -U 8746 ; WX 602 ; N union ; G 2111 -U 8747 ; WX 602 ; N integral ; G 2112 -U 8748 ; WX 602 ; N uni222C ; G 2113 -U 8749 ; WX 602 ; N uni222D ; G 2114 -U 8756 ; WX 602 ; N therefore ; G 2115 -U 8757 ; WX 602 ; N uni2235 ; G 2116 -U 8758 ; WX 602 ; N uni2236 ; G 2117 -U 8759 ; WX 602 ; N uni2237 ; G 2118 -U 8760 ; WX 602 ; N uni2238 ; G 2119 -U 8761 ; WX 602 ; N uni2239 ; G 2120 -U 8762 ; WX 602 ; N uni223A ; G 2121 -U 8763 ; WX 602 ; N uni223B ; G 2122 -U 8764 ; WX 602 ; N similar ; G 2123 -U 8765 ; WX 602 ; N uni223D ; G 2124 -U 8769 ; WX 602 ; N uni2241 ; G 2125 -U 8770 ; WX 602 ; N uni2242 ; G 2126 -U 8771 ; WX 602 ; N uni2243 ; G 2127 -U 8772 ; WX 602 ; N uni2244 ; G 2128 -U 8773 ; WX 602 ; N congruent ; G 2129 -U 8774 ; WX 602 ; N uni2246 ; G 2130 -U 8775 ; WX 602 ; N uni2247 ; G 2131 -U 8776 ; WX 602 ; N approxequal ; G 2132 -U 8777 ; WX 602 ; N uni2249 ; G 2133 -U 8778 ; WX 602 ; N uni224A ; G 2134 -U 8779 ; WX 602 ; N uni224B ; G 2135 -U 8780 ; WX 602 ; N uni224C ; G 2136 -U 8781 ; WX 602 ; N uni224D ; G 2137 -U 8782 ; WX 602 ; N uni224E ; G 2138 -U 8783 ; WX 602 ; N uni224F ; G 2139 -U 8784 ; WX 602 ; N uni2250 ; G 2140 -U 8785 ; WX 602 ; N uni2251 ; G 2141 -U 8786 ; WX 602 ; N uni2252 ; G 2142 -U 8787 ; WX 602 ; N uni2253 ; G 2143 -U 8788 ; WX 602 ; N uni2254 ; G 2144 -U 8789 ; WX 602 ; N uni2255 ; G 2145 -U 8790 ; WX 602 ; N uni2256 ; G 2146 -U 8791 ; WX 602 ; N uni2257 ; G 2147 -U 8792 ; WX 602 ; N uni2258 ; G 2148 -U 8793 ; WX 602 ; N uni2259 ; G 2149 -U 8794 ; WX 602 ; N uni225A ; G 2150 -U 8795 ; WX 602 ; N uni225B ; G 2151 -U 8796 ; WX 602 ; N uni225C ; G 2152 -U 8797 ; WX 602 ; N uni225D ; G 2153 -U 8798 ; WX 602 ; N uni225E ; G 2154 -U 8799 ; WX 602 ; N uni225F ; G 2155 -U 8800 ; WX 602 ; N notequal ; G 2156 -U 8801 ; WX 602 ; N equivalence ; G 2157 -U 8802 ; WX 602 ; N uni2262 ; G 2158 -U 8803 ; WX 602 ; N uni2263 ; G 2159 -U 8804 ; WX 602 ; N lessequal ; G 2160 -U 8805 ; WX 602 ; N greaterequal ; G 2161 -U 8806 ; WX 602 ; N uni2266 ; G 2162 -U 8807 ; WX 602 ; N uni2267 ; G 2163 -U 8808 ; WX 602 ; N uni2268 ; G 2164 -U 8809 ; WX 602 ; N uni2269 ; G 2165 -U 8813 ; WX 602 ; N uni226D ; G 2166 -U 8814 ; WX 602 ; N uni226E ; G 2167 -U 8815 ; WX 602 ; N uni226F ; G 2168 -U 8816 ; WX 602 ; N uni2270 ; G 2169 -U 8817 ; WX 602 ; N uni2271 ; G 2170 -U 8818 ; WX 602 ; N uni2272 ; G 2171 -U 8819 ; WX 602 ; N uni2273 ; G 2172 -U 8820 ; WX 602 ; N uni2274 ; G 2173 -U 8821 ; WX 602 ; N uni2275 ; G 2174 -U 8822 ; WX 602 ; N uni2276 ; G 2175 -U 8823 ; WX 602 ; N uni2277 ; G 2176 -U 8824 ; WX 602 ; N uni2278 ; G 2177 -U 8825 ; WX 602 ; N uni2279 ; G 2178 -U 8826 ; WX 602 ; N uni227A ; G 2179 -U 8827 ; WX 602 ; N uni227B ; G 2180 -U 8828 ; WX 602 ; N uni227C ; G 2181 -U 8829 ; WX 602 ; N uni227D ; G 2182 -U 8830 ; WX 602 ; N uni227E ; G 2183 -U 8831 ; WX 602 ; N uni227F ; G 2184 -U 8832 ; WX 602 ; N uni2280 ; G 2185 -U 8833 ; WX 602 ; N uni2281 ; G 2186 -U 8834 ; WX 602 ; N propersubset ; G 2187 -U 8835 ; WX 602 ; N propersuperset ; G 2188 -U 8836 ; WX 602 ; N notsubset ; G 2189 -U 8837 ; WX 602 ; N uni2285 ; G 2190 -U 8838 ; WX 602 ; N reflexsubset ; G 2191 -U 8839 ; WX 602 ; N reflexsuperset ; G 2192 -U 8840 ; WX 602 ; N uni2288 ; G 2193 -U 8841 ; WX 602 ; N uni2289 ; G 2194 -U 8842 ; WX 602 ; N uni228A ; G 2195 -U 8843 ; WX 602 ; N uni228B ; G 2196 -U 8845 ; WX 602 ; N uni228D ; G 2197 -U 8846 ; WX 602 ; N uni228E ; G 2198 -U 8847 ; WX 602 ; N uni228F ; G 2199 -U 8848 ; WX 602 ; N uni2290 ; G 2200 -U 8849 ; WX 602 ; N uni2291 ; G 2201 -U 8850 ; WX 602 ; N uni2292 ; G 2202 -U 8851 ; WX 602 ; N uni2293 ; G 2203 -U 8852 ; WX 602 ; N uni2294 ; G 2204 -U 8853 ; WX 602 ; N circleplus ; G 2205 -U 8854 ; WX 602 ; N uni2296 ; G 2206 -U 8855 ; WX 602 ; N circlemultiply ; G 2207 -U 8856 ; WX 602 ; N uni2298 ; G 2208 -U 8857 ; WX 602 ; N uni2299 ; G 2209 -U 8858 ; WX 602 ; N uni229A ; G 2210 -U 8859 ; WX 602 ; N uni229B ; G 2211 -U 8860 ; WX 602 ; N uni229C ; G 2212 -U 8861 ; WX 602 ; N uni229D ; G 2213 -U 8862 ; WX 602 ; N uni229E ; G 2214 -U 8863 ; WX 602 ; N uni229F ; G 2215 -U 8864 ; WX 602 ; N uni22A0 ; G 2216 -U 8865 ; WX 602 ; N uni22A1 ; G 2217 -U 8866 ; WX 602 ; N uni22A2 ; G 2218 -U 8867 ; WX 602 ; N uni22A3 ; G 2219 -U 8868 ; WX 602 ; N uni22A4 ; G 2220 -U 8869 ; WX 602 ; N perpendicular ; G 2221 -U 8882 ; WX 602 ; N uni22B2 ; G 2222 -U 8883 ; WX 602 ; N uni22B3 ; G 2223 -U 8884 ; WX 602 ; N uni22B4 ; G 2224 -U 8885 ; WX 602 ; N uni22B5 ; G 2225 -U 8888 ; WX 602 ; N uni22B8 ; G 2226 -U 8898 ; WX 602 ; N uni22C2 ; G 2227 -U 8899 ; WX 602 ; N uni22C3 ; G 2228 -U 8900 ; WX 602 ; N uni22C4 ; G 2229 -U 8901 ; WX 602 ; N dotmath ; G 2230 -U 8902 ; WX 602 ; N uni22C6 ; G 2231 -U 8909 ; WX 602 ; N uni22CD ; G 2232 -U 8910 ; WX 602 ; N uni22CE ; G 2233 -U 8911 ; WX 602 ; N uni22CF ; G 2234 -U 8912 ; WX 602 ; N uni22D0 ; G 2235 -U 8913 ; WX 602 ; N uni22D1 ; G 2236 -U 8922 ; WX 602 ; N uni22DA ; G 2237 -U 8923 ; WX 602 ; N uni22DB ; G 2238 -U 8924 ; WX 602 ; N uni22DC ; G 2239 -U 8925 ; WX 602 ; N uni22DD ; G 2240 -U 8926 ; WX 602 ; N uni22DE ; G 2241 -U 8927 ; WX 602 ; N uni22DF ; G 2242 -U 8928 ; WX 602 ; N uni22E0 ; G 2243 -U 8929 ; WX 602 ; N uni22E1 ; G 2244 -U 8930 ; WX 602 ; N uni22E2 ; G 2245 -U 8931 ; WX 602 ; N uni22E3 ; G 2246 -U 8932 ; WX 602 ; N uni22E4 ; G 2247 -U 8933 ; WX 602 ; N uni22E5 ; G 2248 -U 8934 ; WX 602 ; N uni22E6 ; G 2249 -U 8935 ; WX 602 ; N uni22E7 ; G 2250 -U 8936 ; WX 602 ; N uni22E8 ; G 2251 -U 8937 ; WX 602 ; N uni22E9 ; G 2252 -U 8943 ; WX 602 ; N uni22EF ; G 2253 -U 8960 ; WX 602 ; N uni2300 ; G 2254 -U 8961 ; WX 602 ; N uni2301 ; G 2255 -U 8962 ; WX 602 ; N house ; G 2256 -U 8963 ; WX 602 ; N uni2303 ; G 2257 -U 8964 ; WX 602 ; N uni2304 ; G 2258 -U 8965 ; WX 602 ; N uni2305 ; G 2259 -U 8966 ; WX 602 ; N uni2306 ; G 2260 -U 8968 ; WX 602 ; N uni2308 ; G 2261 -U 8969 ; WX 602 ; N uni2309 ; G 2262 -U 8970 ; WX 602 ; N uni230A ; G 2263 -U 8971 ; WX 602 ; N uni230B ; G 2264 -U 8972 ; WX 602 ; N uni230C ; G 2265 -U 8973 ; WX 602 ; N uni230D ; G 2266 -U 8974 ; WX 602 ; N uni230E ; G 2267 -U 8975 ; WX 602 ; N uni230F ; G 2268 -U 8976 ; WX 602 ; N revlogicalnot ; G 2269 -U 8977 ; WX 602 ; N uni2311 ; G 2270 -U 8978 ; WX 602 ; N uni2312 ; G 2271 -U 8979 ; WX 602 ; N uni2313 ; G 2272 -U 8980 ; WX 602 ; N uni2314 ; G 2273 -U 8981 ; WX 602 ; N uni2315 ; G 2274 -U 8984 ; WX 602 ; N uni2318 ; G 2275 -U 8985 ; WX 602 ; N uni2319 ; G 2276 -U 8988 ; WX 602 ; N uni231C ; G 2277 -U 8989 ; WX 602 ; N uni231D ; G 2278 -U 8990 ; WX 602 ; N uni231E ; G 2279 -U 8991 ; WX 602 ; N uni231F ; G 2280 -U 8992 ; WX 602 ; N integraltp ; G 2281 -U 8993 ; WX 602 ; N integralbt ; G 2282 -U 8997 ; WX 602 ; N uni2325 ; G 2283 -U 8998 ; WX 602 ; N uni2326 ; G 2284 -U 8999 ; WX 602 ; N uni2327 ; G 2285 -U 9000 ; WX 602 ; N uni2328 ; G 2286 -U 9003 ; WX 602 ; N uni232B ; G 2287 -U 9013 ; WX 602 ; N uni2335 ; G 2288 -U 9014 ; WX 602 ; N uni2336 ; G 2289 -U 9015 ; WX 602 ; N uni2337 ; G 2290 -U 9016 ; WX 602 ; N uni2338 ; G 2291 -U 9017 ; WX 602 ; N uni2339 ; G 2292 -U 9018 ; WX 602 ; N uni233A ; G 2293 -U 9019 ; WX 602 ; N uni233B ; G 2294 -U 9020 ; WX 602 ; N uni233C ; G 2295 -U 9021 ; WX 602 ; N uni233D ; G 2296 -U 9022 ; WX 602 ; N uni233E ; G 2297 -U 9023 ; WX 602 ; N uni233F ; G 2298 -U 9024 ; WX 602 ; N uni2340 ; G 2299 -U 9025 ; WX 602 ; N uni2341 ; G 2300 -U 9026 ; WX 602 ; N uni2342 ; G 2301 -U 9027 ; WX 602 ; N uni2343 ; G 2302 -U 9028 ; WX 602 ; N uni2344 ; G 2303 -U 9029 ; WX 602 ; N uni2345 ; G 2304 -U 9030 ; WX 602 ; N uni2346 ; G 2305 -U 9031 ; WX 602 ; N uni2347 ; G 2306 -U 9032 ; WX 602 ; N uni2348 ; G 2307 -U 9033 ; WX 602 ; N uni2349 ; G 2308 -U 9034 ; WX 602 ; N uni234A ; G 2309 -U 9035 ; WX 602 ; N uni234B ; G 2310 -U 9036 ; WX 602 ; N uni234C ; G 2311 -U 9037 ; WX 602 ; N uni234D ; G 2312 -U 9038 ; WX 602 ; N uni234E ; G 2313 -U 9039 ; WX 602 ; N uni234F ; G 2314 -U 9040 ; WX 602 ; N uni2350 ; G 2315 -U 9041 ; WX 602 ; N uni2351 ; G 2316 -U 9042 ; WX 602 ; N uni2352 ; G 2317 -U 9043 ; WX 602 ; N uni2353 ; G 2318 -U 9044 ; WX 602 ; N uni2354 ; G 2319 -U 9045 ; WX 602 ; N uni2355 ; G 2320 -U 9046 ; WX 602 ; N uni2356 ; G 2321 -U 9047 ; WX 602 ; N uni2357 ; G 2322 -U 9048 ; WX 602 ; N uni2358 ; G 2323 -U 9049 ; WX 602 ; N uni2359 ; G 2324 -U 9050 ; WX 602 ; N uni235A ; G 2325 -U 9051 ; WX 602 ; N uni235B ; G 2326 -U 9052 ; WX 602 ; N uni235C ; G 2327 -U 9053 ; WX 602 ; N uni235D ; G 2328 -U 9054 ; WX 602 ; N uni235E ; G 2329 -U 9055 ; WX 602 ; N uni235F ; G 2330 -U 9056 ; WX 602 ; N uni2360 ; G 2331 -U 9057 ; WX 602 ; N uni2361 ; G 2332 -U 9058 ; WX 602 ; N uni2362 ; G 2333 -U 9059 ; WX 602 ; N uni2363 ; G 2334 -U 9060 ; WX 602 ; N uni2364 ; G 2335 -U 9061 ; WX 602 ; N uni2365 ; G 2336 -U 9062 ; WX 602 ; N uni2366 ; G 2337 -U 9063 ; WX 602 ; N uni2367 ; G 2338 -U 9064 ; WX 602 ; N uni2368 ; G 2339 -U 9065 ; WX 602 ; N uni2369 ; G 2340 -U 9066 ; WX 602 ; N uni236A ; G 2341 -U 9067 ; WX 602 ; N uni236B ; G 2342 -U 9068 ; WX 602 ; N uni236C ; G 2343 -U 9069 ; WX 602 ; N uni236D ; G 2344 -U 9070 ; WX 602 ; N uni236E ; G 2345 -U 9071 ; WX 602 ; N uni236F ; G 2346 -U 9072 ; WX 602 ; N uni2370 ; G 2347 -U 9073 ; WX 602 ; N uni2371 ; G 2348 -U 9074 ; WX 602 ; N uni2372 ; G 2349 -U 9075 ; WX 602 ; N uni2373 ; G 2350 -U 9076 ; WX 602 ; N uni2374 ; G 2351 -U 9077 ; WX 602 ; N uni2375 ; G 2352 -U 9078 ; WX 602 ; N uni2376 ; G 2353 -U 9079 ; WX 602 ; N uni2377 ; G 2354 -U 9080 ; WX 602 ; N uni2378 ; G 2355 -U 9081 ; WX 602 ; N uni2379 ; G 2356 -U 9082 ; WX 602 ; N uni237A ; G 2357 -U 9085 ; WX 602 ; N uni237D ; G 2358 -U 9088 ; WX 602 ; N uni2380 ; G 2359 -U 9089 ; WX 602 ; N uni2381 ; G 2360 -U 9090 ; WX 602 ; N uni2382 ; G 2361 -U 9091 ; WX 602 ; N uni2383 ; G 2362 -U 9096 ; WX 602 ; N uni2388 ; G 2363 -U 9097 ; WX 602 ; N uni2389 ; G 2364 -U 9098 ; WX 602 ; N uni238A ; G 2365 -U 9099 ; WX 602 ; N uni238B ; G 2366 -U 9109 ; WX 602 ; N uni2395 ; G 2367 -U 9115 ; WX 602 ; N uni239B ; G 2368 -U 9116 ; WX 602 ; N uni239C ; G 2369 -U 9117 ; WX 602 ; N uni239D ; G 2370 -U 9118 ; WX 602 ; N uni239E ; G 2371 -U 9119 ; WX 602 ; N uni239F ; G 2372 -U 9120 ; WX 602 ; N uni23A0 ; G 2373 -U 9121 ; WX 602 ; N uni23A1 ; G 2374 -U 9122 ; WX 602 ; N uni23A2 ; G 2375 -U 9123 ; WX 602 ; N uni23A3 ; G 2376 -U 9124 ; WX 602 ; N uni23A4 ; G 2377 -U 9125 ; WX 602 ; N uni23A5 ; G 2378 -U 9126 ; WX 602 ; N uni23A6 ; G 2379 -U 9127 ; WX 602 ; N uni23A7 ; G 2380 -U 9128 ; WX 602 ; N uni23A8 ; G 2381 -U 9129 ; WX 602 ; N uni23A9 ; G 2382 -U 9130 ; WX 602 ; N uni23AA ; G 2383 -U 9131 ; WX 602 ; N uni23AB ; G 2384 -U 9132 ; WX 602 ; N uni23AC ; G 2385 -U 9133 ; WX 602 ; N uni23AD ; G 2386 -U 9134 ; WX 602 ; N uni23AE ; G 2387 -U 9166 ; WX 602 ; N uni23CE ; G 2388 -U 9167 ; WX 602 ; N uni23CF ; G 2389 -U 9251 ; WX 602 ; N uni2423 ; G 2390 -U 9472 ; WX 602 ; N SF100000 ; G 2391 -U 9473 ; WX 602 ; N uni2501 ; G 2392 -U 9474 ; WX 602 ; N SF110000 ; G 2393 -U 9475 ; WX 602 ; N uni2503 ; G 2394 -U 9476 ; WX 602 ; N uni2504 ; G 2395 -U 9477 ; WX 602 ; N uni2505 ; G 2396 -U 9478 ; WX 602 ; N uni2506 ; G 2397 -U 9479 ; WX 602 ; N uni2507 ; G 2398 -U 9480 ; WX 602 ; N uni2508 ; G 2399 -U 9481 ; WX 602 ; N uni2509 ; G 2400 -U 9482 ; WX 602 ; N uni250A ; G 2401 -U 9483 ; WX 602 ; N uni250B ; G 2402 -U 9484 ; WX 602 ; N SF010000 ; G 2403 -U 9485 ; WX 602 ; N uni250D ; G 2404 -U 9486 ; WX 602 ; N uni250E ; G 2405 -U 9487 ; WX 602 ; N uni250F ; G 2406 -U 9488 ; WX 602 ; N SF030000 ; G 2407 -U 9489 ; WX 602 ; N uni2511 ; G 2408 -U 9490 ; WX 602 ; N uni2512 ; G 2409 -U 9491 ; WX 602 ; N uni2513 ; G 2410 -U 9492 ; WX 602 ; N SF020000 ; G 2411 -U 9493 ; WX 602 ; N uni2515 ; G 2412 -U 9494 ; WX 602 ; N uni2516 ; G 2413 -U 9495 ; WX 602 ; N uni2517 ; G 2414 -U 9496 ; WX 602 ; N SF040000 ; G 2415 -U 9497 ; WX 602 ; N uni2519 ; G 2416 -U 9498 ; WX 602 ; N uni251A ; G 2417 -U 9499 ; WX 602 ; N uni251B ; G 2418 -U 9500 ; WX 602 ; N SF080000 ; G 2419 -U 9501 ; WX 602 ; N uni251D ; G 2420 -U 9502 ; WX 602 ; N uni251E ; G 2421 -U 9503 ; WX 602 ; N uni251F ; G 2422 -U 9504 ; WX 602 ; N uni2520 ; G 2423 -U 9505 ; WX 602 ; N uni2521 ; G 2424 -U 9506 ; WX 602 ; N uni2522 ; G 2425 -U 9507 ; WX 602 ; N uni2523 ; G 2426 -U 9508 ; WX 602 ; N SF090000 ; G 2427 -U 9509 ; WX 602 ; N uni2525 ; G 2428 -U 9510 ; WX 602 ; N uni2526 ; G 2429 -U 9511 ; WX 602 ; N uni2527 ; G 2430 -U 9512 ; WX 602 ; N uni2528 ; G 2431 -U 9513 ; WX 602 ; N uni2529 ; G 2432 -U 9514 ; WX 602 ; N uni252A ; G 2433 -U 9515 ; WX 602 ; N uni252B ; G 2434 -U 9516 ; WX 602 ; N SF060000 ; G 2435 -U 9517 ; WX 602 ; N uni252D ; G 2436 -U 9518 ; WX 602 ; N uni252E ; G 2437 -U 9519 ; WX 602 ; N uni252F ; G 2438 -U 9520 ; WX 602 ; N uni2530 ; G 2439 -U 9521 ; WX 602 ; N uni2531 ; G 2440 -U 9522 ; WX 602 ; N uni2532 ; G 2441 -U 9523 ; WX 602 ; N uni2533 ; G 2442 -U 9524 ; WX 602 ; N SF070000 ; G 2443 -U 9525 ; WX 602 ; N uni2535 ; G 2444 -U 9526 ; WX 602 ; N uni2536 ; G 2445 -U 9527 ; WX 602 ; N uni2537 ; G 2446 -U 9528 ; WX 602 ; N uni2538 ; G 2447 -U 9529 ; WX 602 ; N uni2539 ; G 2448 -U 9530 ; WX 602 ; N uni253A ; G 2449 -U 9531 ; WX 602 ; N uni253B ; G 2450 -U 9532 ; WX 602 ; N SF050000 ; G 2451 -U 9533 ; WX 602 ; N uni253D ; G 2452 -U 9534 ; WX 602 ; N uni253E ; G 2453 -U 9535 ; WX 602 ; N uni253F ; G 2454 -U 9536 ; WX 602 ; N uni2540 ; G 2455 -U 9537 ; WX 602 ; N uni2541 ; G 2456 -U 9538 ; WX 602 ; N uni2542 ; G 2457 -U 9539 ; WX 602 ; N uni2543 ; G 2458 -U 9540 ; WX 602 ; N uni2544 ; G 2459 -U 9541 ; WX 602 ; N uni2545 ; G 2460 -U 9542 ; WX 602 ; N uni2546 ; G 2461 -U 9543 ; WX 602 ; N uni2547 ; G 2462 -U 9544 ; WX 602 ; N uni2548 ; G 2463 -U 9545 ; WX 602 ; N uni2549 ; G 2464 -U 9546 ; WX 602 ; N uni254A ; G 2465 -U 9547 ; WX 602 ; N uni254B ; G 2466 -U 9548 ; WX 602 ; N uni254C ; G 2467 -U 9549 ; WX 602 ; N uni254D ; G 2468 -U 9550 ; WX 602 ; N uni254E ; G 2469 -U 9551 ; WX 602 ; N uni254F ; G 2470 -U 9552 ; WX 602 ; N SF430000 ; G 2471 -U 9553 ; WX 602 ; N SF240000 ; G 2472 -U 9554 ; WX 602 ; N SF510000 ; G 2473 -U 9555 ; WX 602 ; N SF520000 ; G 2474 -U 9556 ; WX 602 ; N SF390000 ; G 2475 -U 9557 ; WX 602 ; N SF220000 ; G 2476 -U 9558 ; WX 602 ; N SF210000 ; G 2477 -U 9559 ; WX 602 ; N SF250000 ; G 2478 -U 9560 ; WX 602 ; N SF500000 ; G 2479 -U 9561 ; WX 602 ; N SF490000 ; G 2480 -U 9562 ; WX 602 ; N SF380000 ; G 2481 -U 9563 ; WX 602 ; N SF280000 ; G 2482 -U 9564 ; WX 602 ; N SF270000 ; G 2483 -U 9565 ; WX 602 ; N SF260000 ; G 2484 -U 9566 ; WX 602 ; N SF360000 ; G 2485 -U 9567 ; WX 602 ; N SF370000 ; G 2486 -U 9568 ; WX 602 ; N SF420000 ; G 2487 -U 9569 ; WX 602 ; N SF190000 ; G 2488 -U 9570 ; WX 602 ; N SF200000 ; G 2489 -U 9571 ; WX 602 ; N SF230000 ; G 2490 -U 9572 ; WX 602 ; N SF470000 ; G 2491 -U 9573 ; WX 602 ; N SF480000 ; G 2492 -U 9574 ; WX 602 ; N SF410000 ; G 2493 -U 9575 ; WX 602 ; N SF450000 ; G 2494 -U 9576 ; WX 602 ; N SF460000 ; G 2495 -U 9577 ; WX 602 ; N SF400000 ; G 2496 -U 9578 ; WX 602 ; N SF540000 ; G 2497 -U 9579 ; WX 602 ; N SF530000 ; G 2498 -U 9580 ; WX 602 ; N SF440000 ; G 2499 -U 9581 ; WX 602 ; N uni256D ; G 2500 -U 9582 ; WX 602 ; N uni256E ; G 2501 -U 9583 ; WX 602 ; N uni256F ; G 2502 -U 9584 ; WX 602 ; N uni2570 ; G 2503 -U 9585 ; WX 602 ; N uni2571 ; G 2504 -U 9586 ; WX 602 ; N uni2572 ; G 2505 -U 9587 ; WX 602 ; N uni2573 ; G 2506 -U 9588 ; WX 602 ; N uni2574 ; G 2507 -U 9589 ; WX 602 ; N uni2575 ; G 2508 -U 9590 ; WX 602 ; N uni2576 ; G 2509 -U 9591 ; WX 602 ; N uni2577 ; G 2510 -U 9592 ; WX 602 ; N uni2578 ; G 2511 -U 9593 ; WX 602 ; N uni2579 ; G 2512 -U 9594 ; WX 602 ; N uni257A ; G 2513 -U 9595 ; WX 602 ; N uni257B ; G 2514 -U 9596 ; WX 602 ; N uni257C ; G 2515 -U 9597 ; WX 602 ; N uni257D ; G 2516 -U 9598 ; WX 602 ; N uni257E ; G 2517 -U 9599 ; WX 602 ; N uni257F ; G 2518 -U 9600 ; WX 602 ; N upblock ; G 2519 -U 9601 ; WX 602 ; N uni2581 ; G 2520 -U 9602 ; WX 602 ; N uni2582 ; G 2521 -U 9603 ; WX 602 ; N uni2583 ; G 2522 -U 9604 ; WX 602 ; N dnblock ; G 2523 -U 9605 ; WX 602 ; N uni2585 ; G 2524 -U 9606 ; WX 602 ; N uni2586 ; G 2525 -U 9607 ; WX 602 ; N uni2587 ; G 2526 -U 9608 ; WX 602 ; N block ; G 2527 -U 9609 ; WX 602 ; N uni2589 ; G 2528 -U 9610 ; WX 602 ; N uni258A ; G 2529 -U 9611 ; WX 602 ; N uni258B ; G 2530 -U 9612 ; WX 602 ; N lfblock ; G 2531 -U 9613 ; WX 602 ; N uni258D ; G 2532 -U 9614 ; WX 602 ; N uni258E ; G 2533 -U 9615 ; WX 602 ; N uni258F ; G 2534 -U 9616 ; WX 602 ; N rtblock ; G 2535 -U 9617 ; WX 602 ; N ltshade ; G 2536 -U 9618 ; WX 602 ; N shade ; G 2537 -U 9619 ; WX 602 ; N dkshade ; G 2538 -U 9620 ; WX 602 ; N uni2594 ; G 2539 -U 9621 ; WX 602 ; N uni2595 ; G 2540 -U 9622 ; WX 602 ; N uni2596 ; G 2541 -U 9623 ; WX 602 ; N uni2597 ; G 2542 -U 9624 ; WX 602 ; N uni2598 ; G 2543 -U 9625 ; WX 602 ; N uni2599 ; G 2544 -U 9626 ; WX 602 ; N uni259A ; G 2545 -U 9627 ; WX 602 ; N uni259B ; G 2546 -U 9628 ; WX 602 ; N uni259C ; G 2547 -U 9629 ; WX 602 ; N uni259D ; G 2548 -U 9630 ; WX 602 ; N uni259E ; G 2549 -U 9631 ; WX 602 ; N uni259F ; G 2550 -U 9632 ; WX 602 ; N filledbox ; G 2551 -U 9633 ; WX 602 ; N H22073 ; G 2552 -U 9634 ; WX 602 ; N uni25A2 ; G 2553 -U 9635 ; WX 602 ; N uni25A3 ; G 2554 -U 9636 ; WX 602 ; N uni25A4 ; G 2555 -U 9637 ; WX 602 ; N uni25A5 ; G 2556 -U 9638 ; WX 602 ; N uni25A6 ; G 2557 -U 9639 ; WX 602 ; N uni25A7 ; G 2558 -U 9640 ; WX 602 ; N uni25A8 ; G 2559 -U 9641 ; WX 602 ; N uni25A9 ; G 2560 -U 9642 ; WX 602 ; N H18543 ; G 2561 -U 9643 ; WX 602 ; N H18551 ; G 2562 -U 9644 ; WX 602 ; N filledrect ; G 2563 -U 9645 ; WX 602 ; N uni25AD ; G 2564 -U 9646 ; WX 602 ; N uni25AE ; G 2565 -U 9647 ; WX 602 ; N uni25AF ; G 2566 -U 9648 ; WX 602 ; N uni25B0 ; G 2567 -U 9649 ; WX 602 ; N uni25B1 ; G 2568 -U 9650 ; WX 602 ; N triagup ; G 2569 -U 9651 ; WX 602 ; N uni25B3 ; G 2570 -U 9652 ; WX 602 ; N uni25B4 ; G 2571 -U 9653 ; WX 602 ; N uni25B5 ; G 2572 -U 9654 ; WX 602 ; N uni25B6 ; G 2573 -U 9655 ; WX 602 ; N uni25B7 ; G 2574 -U 9656 ; WX 602 ; N uni25B8 ; G 2575 -U 9657 ; WX 602 ; N uni25B9 ; G 2576 -U 9658 ; WX 602 ; N triagrt ; G 2577 -U 9659 ; WX 602 ; N uni25BB ; G 2578 -U 9660 ; WX 602 ; N triagdn ; G 2579 -U 9661 ; WX 602 ; N uni25BD ; G 2580 -U 9662 ; WX 602 ; N uni25BE ; G 2581 -U 9663 ; WX 602 ; N uni25BF ; G 2582 -U 9664 ; WX 602 ; N uni25C0 ; G 2583 -U 9665 ; WX 602 ; N uni25C1 ; G 2584 -U 9666 ; WX 602 ; N uni25C2 ; G 2585 -U 9667 ; WX 602 ; N uni25C3 ; G 2586 -U 9668 ; WX 602 ; N triaglf ; G 2587 -U 9669 ; WX 602 ; N uni25C5 ; G 2588 -U 9670 ; WX 602 ; N uni25C6 ; G 2589 -U 9671 ; WX 602 ; N uni25C7 ; G 2590 -U 9672 ; WX 602 ; N uni25C8 ; G 2591 -U 9673 ; WX 602 ; N uni25C9 ; G 2592 -U 9674 ; WX 602 ; N lozenge ; G 2593 -U 9675 ; WX 602 ; N circle ; G 2594 -U 9676 ; WX 602 ; N uni25CC ; G 2595 -U 9677 ; WX 602 ; N uni25CD ; G 2596 -U 9678 ; WX 602 ; N uni25CE ; G 2597 -U 9679 ; WX 602 ; N H18533 ; G 2598 -U 9680 ; WX 602 ; N uni25D0 ; G 2599 -U 9681 ; WX 602 ; N uni25D1 ; G 2600 -U 9682 ; WX 602 ; N uni25D2 ; G 2601 -U 9683 ; WX 602 ; N uni25D3 ; G 2602 -U 9684 ; WX 602 ; N uni25D4 ; G 2603 -U 9685 ; WX 602 ; N uni25D5 ; G 2604 -U 9686 ; WX 602 ; N uni25D6 ; G 2605 -U 9687 ; WX 602 ; N uni25D7 ; G 2606 -U 9688 ; WX 602 ; N invbullet ; G 2607 -U 9689 ; WX 602 ; N invcircle ; G 2608 -U 9690 ; WX 602 ; N uni25DA ; G 2609 -U 9691 ; WX 602 ; N uni25DB ; G 2610 -U 9692 ; WX 602 ; N uni25DC ; G 2611 -U 9693 ; WX 602 ; N uni25DD ; G 2612 -U 9694 ; WX 602 ; N uni25DE ; G 2613 -U 9695 ; WX 602 ; N uni25DF ; G 2614 -U 9696 ; WX 602 ; N uni25E0 ; G 2615 -U 9697 ; WX 602 ; N uni25E1 ; G 2616 -U 9698 ; WX 602 ; N uni25E2 ; G 2617 -U 9699 ; WX 602 ; N uni25E3 ; G 2618 -U 9700 ; WX 602 ; N uni25E4 ; G 2619 -U 9701 ; WX 602 ; N uni25E5 ; G 2620 -U 9702 ; WX 602 ; N openbullet ; G 2621 -U 9703 ; WX 602 ; N uni25E7 ; G 2622 -U 9704 ; WX 602 ; N uni25E8 ; G 2623 -U 9705 ; WX 602 ; N uni25E9 ; G 2624 -U 9706 ; WX 602 ; N uni25EA ; G 2625 -U 9707 ; WX 602 ; N uni25EB ; G 2626 -U 9708 ; WX 602 ; N uni25EC ; G 2627 -U 9709 ; WX 602 ; N uni25ED ; G 2628 -U 9710 ; WX 602 ; N uni25EE ; G 2629 -U 9711 ; WX 602 ; N uni25EF ; G 2630 -U 9712 ; WX 602 ; N uni25F0 ; G 2631 -U 9713 ; WX 602 ; N uni25F1 ; G 2632 -U 9714 ; WX 602 ; N uni25F2 ; G 2633 -U 9715 ; WX 602 ; N uni25F3 ; G 2634 -U 9716 ; WX 602 ; N uni25F4 ; G 2635 -U 9717 ; WX 602 ; N uni25F5 ; G 2636 -U 9718 ; WX 602 ; N uni25F6 ; G 2637 -U 9719 ; WX 602 ; N uni25F7 ; G 2638 -U 9720 ; WX 602 ; N uni25F8 ; G 2639 -U 9721 ; WX 602 ; N uni25F9 ; G 2640 -U 9722 ; WX 602 ; N uni25FA ; G 2641 -U 9723 ; WX 602 ; N uni25FB ; G 2642 -U 9724 ; WX 602 ; N uni25FC ; G 2643 -U 9725 ; WX 602 ; N uni25FD ; G 2644 -U 9726 ; WX 602 ; N uni25FE ; G 2645 -U 9727 ; WX 602 ; N uni25FF ; G 2646 -U 9728 ; WX 602 ; N uni2600 ; G 2647 -U 9729 ; WX 602 ; N uni2601 ; G 2648 -U 9730 ; WX 602 ; N uni2602 ; G 2649 -U 9731 ; WX 602 ; N uni2603 ; G 2650 -U 9732 ; WX 602 ; N uni2604 ; G 2651 -U 9733 ; WX 602 ; N uni2605 ; G 2652 -U 9734 ; WX 602 ; N uni2606 ; G 2653 -U 9735 ; WX 602 ; N uni2607 ; G 2654 -U 9736 ; WX 602 ; N uni2608 ; G 2655 -U 9737 ; WX 602 ; N uni2609 ; G 2656 -U 9738 ; WX 602 ; N uni260A ; G 2657 -U 9739 ; WX 602 ; N uni260B ; G 2658 -U 9740 ; WX 602 ; N uni260C ; G 2659 -U 9741 ; WX 602 ; N uni260D ; G 2660 -U 9742 ; WX 602 ; N uni260E ; G 2661 -U 9743 ; WX 602 ; N uni260F ; G 2662 -U 9744 ; WX 602 ; N uni2610 ; G 2663 -U 9745 ; WX 602 ; N uni2611 ; G 2664 -U 9746 ; WX 602 ; N uni2612 ; G 2665 -U 9747 ; WX 602 ; N uni2613 ; G 2666 -U 9748 ; WX 602 ; N uni2614 ; G 2667 -U 9749 ; WX 602 ; N uni2615 ; G 2668 -U 9750 ; WX 602 ; N uni2616 ; G 2669 -U 9751 ; WX 602 ; N uni2617 ; G 2670 -U 9752 ; WX 602 ; N uni2618 ; G 2671 -U 9753 ; WX 602 ; N uni2619 ; G 2672 -U 9754 ; WX 602 ; N uni261A ; G 2673 -U 9755 ; WX 602 ; N uni261B ; G 2674 -U 9756 ; WX 602 ; N uni261C ; G 2675 -U 9757 ; WX 602 ; N uni261D ; G 2676 -U 9758 ; WX 602 ; N uni261E ; G 2677 -U 9759 ; WX 602 ; N uni261F ; G 2678 -U 9760 ; WX 602 ; N uni2620 ; G 2679 -U 9761 ; WX 602 ; N uni2621 ; G 2680 -U 9762 ; WX 602 ; N uni2622 ; G 2681 -U 9763 ; WX 602 ; N uni2623 ; G 2682 -U 9764 ; WX 602 ; N uni2624 ; G 2683 -U 9765 ; WX 602 ; N uni2625 ; G 2684 -U 9766 ; WX 602 ; N uni2626 ; G 2685 -U 9767 ; WX 602 ; N uni2627 ; G 2686 -U 9768 ; WX 602 ; N uni2628 ; G 2687 -U 9769 ; WX 602 ; N uni2629 ; G 2688 -U 9770 ; WX 602 ; N uni262A ; G 2689 -U 9771 ; WX 602 ; N uni262B ; G 2690 -U 9772 ; WX 602 ; N uni262C ; G 2691 -U 9773 ; WX 602 ; N uni262D ; G 2692 -U 9774 ; WX 602 ; N uni262E ; G 2693 -U 9775 ; WX 602 ; N uni262F ; G 2694 -U 9784 ; WX 602 ; N uni2638 ; G 2695 -U 9785 ; WX 602 ; N uni2639 ; G 2696 -U 9786 ; WX 602 ; N smileface ; G 2697 -U 9787 ; WX 602 ; N invsmileface ; G 2698 -U 9788 ; WX 602 ; N sun ; G 2699 -U 9789 ; WX 602 ; N uni263D ; G 2700 -U 9790 ; WX 602 ; N uni263E ; G 2701 -U 9791 ; WX 602 ; N uni263F ; G 2702 -U 9792 ; WX 602 ; N female ; G 2703 -U 9793 ; WX 602 ; N uni2641 ; G 2704 -U 9794 ; WX 602 ; N male ; G 2705 -U 9795 ; WX 602 ; N uni2643 ; G 2706 -U 9796 ; WX 602 ; N uni2644 ; G 2707 -U 9797 ; WX 602 ; N uni2645 ; G 2708 -U 9798 ; WX 602 ; N uni2646 ; G 2709 -U 9799 ; WX 602 ; N uni2647 ; G 2710 -U 9800 ; WX 602 ; N uni2648 ; G 2711 -U 9801 ; WX 602 ; N uni2649 ; G 2712 -U 9802 ; WX 602 ; N uni264A ; G 2713 -U 9803 ; WX 602 ; N uni264B ; G 2714 -U 9804 ; WX 602 ; N uni264C ; G 2715 -U 9805 ; WX 602 ; N uni264D ; G 2716 -U 9806 ; WX 602 ; N uni264E ; G 2717 -U 9807 ; WX 602 ; N uni264F ; G 2718 -U 9808 ; WX 602 ; N uni2650 ; G 2719 -U 9809 ; WX 602 ; N uni2651 ; G 2720 -U 9810 ; WX 602 ; N uni2652 ; G 2721 -U 9811 ; WX 602 ; N uni2653 ; G 2722 -U 9812 ; WX 602 ; N uni2654 ; G 2723 -U 9813 ; WX 602 ; N uni2655 ; G 2724 -U 9814 ; WX 602 ; N uni2656 ; G 2725 -U 9815 ; WX 602 ; N uni2657 ; G 2726 -U 9816 ; WX 602 ; N uni2658 ; G 2727 -U 9817 ; WX 602 ; N uni2659 ; G 2728 -U 9818 ; WX 602 ; N uni265A ; G 2729 -U 9819 ; WX 602 ; N uni265B ; G 2730 -U 9820 ; WX 602 ; N uni265C ; G 2731 -U 9821 ; WX 602 ; N uni265D ; G 2732 -U 9822 ; WX 602 ; N uni265E ; G 2733 -U 9823 ; WX 602 ; N uni265F ; G 2734 -U 9824 ; WX 602 ; N spade ; G 2735 -U 9825 ; WX 602 ; N uni2661 ; G 2736 -U 9826 ; WX 602 ; N uni2662 ; G 2737 -U 9827 ; WX 602 ; N club ; G 2738 -U 9828 ; WX 602 ; N uni2664 ; G 2739 -U 9829 ; WX 602 ; N heart ; G 2740 -U 9830 ; WX 602 ; N diamond ; G 2741 -U 9831 ; WX 602 ; N uni2667 ; G 2742 -U 9832 ; WX 602 ; N uni2668 ; G 2743 -U 9833 ; WX 602 ; N uni2669 ; G 2744 -U 9834 ; WX 602 ; N musicalnote ; G 2745 -U 9835 ; WX 602 ; N musicalnotedbl ; G 2746 -U 9836 ; WX 602 ; N uni266C ; G 2747 -U 9837 ; WX 602 ; N uni266D ; G 2748 -U 9838 ; WX 602 ; N uni266E ; G 2749 -U 9839 ; WX 602 ; N uni266F ; G 2750 -U 9840 ; WX 602 ; N uni2670 ; G 2751 -U 9841 ; WX 602 ; N uni2671 ; G 2752 -U 9842 ; WX 602 ; N uni2672 ; G 2753 -U 9843 ; WX 602 ; N uni2673 ; G 2754 -U 9844 ; WX 602 ; N uni2674 ; G 2755 -U 9845 ; WX 602 ; N uni2675 ; G 2756 -U 9846 ; WX 602 ; N uni2676 ; G 2757 -U 9847 ; WX 602 ; N uni2677 ; G 2758 -U 9848 ; WX 602 ; N uni2678 ; G 2759 -U 9849 ; WX 602 ; N uni2679 ; G 2760 -U 9850 ; WX 602 ; N uni267A ; G 2761 -U 9851 ; WX 602 ; N uni267B ; G 2762 -U 9852 ; WX 602 ; N uni267C ; G 2763 -U 9853 ; WX 602 ; N uni267D ; G 2764 -U 9854 ; WX 602 ; N uni267E ; G 2765 -U 9855 ; WX 602 ; N uni267F ; G 2766 -U 9856 ; WX 602 ; N uni2680 ; G 2767 -U 9857 ; WX 602 ; N uni2681 ; G 2768 -U 9858 ; WX 602 ; N uni2682 ; G 2769 -U 9859 ; WX 602 ; N uni2683 ; G 2770 -U 9860 ; WX 602 ; N uni2684 ; G 2771 -U 9861 ; WX 602 ; N uni2685 ; G 2772 -U 9862 ; WX 602 ; N uni2686 ; G 2773 -U 9863 ; WX 602 ; N uni2687 ; G 2774 -U 9864 ; WX 602 ; N uni2688 ; G 2775 -U 9865 ; WX 602 ; N uni2689 ; G 2776 -U 9866 ; WX 602 ; N uni268A ; G 2777 -U 9867 ; WX 602 ; N uni268B ; G 2778 -U 9872 ; WX 602 ; N uni2690 ; G 2779 -U 9873 ; WX 602 ; N uni2691 ; G 2780 -U 9874 ; WX 602 ; N uni2692 ; G 2781 -U 9875 ; WX 602 ; N uni2693 ; G 2782 -U 9876 ; WX 602 ; N uni2694 ; G 2783 -U 9877 ; WX 602 ; N uni2695 ; G 2784 -U 9878 ; WX 602 ; N uni2696 ; G 2785 -U 9879 ; WX 602 ; N uni2697 ; G 2786 -U 9880 ; WX 602 ; N uni2698 ; G 2787 -U 9881 ; WX 602 ; N uni2699 ; G 2788 -U 9882 ; WX 602 ; N uni269A ; G 2789 -U 9883 ; WX 602 ; N uni269B ; G 2790 -U 9884 ; WX 602 ; N uni269C ; G 2791 -U 9888 ; WX 602 ; N uni26A0 ; G 2792 -U 9889 ; WX 602 ; N uni26A1 ; G 2793 -U 9904 ; WX 602 ; N uni26B0 ; G 2794 -U 9905 ; WX 602 ; N uni26B1 ; G 2795 -U 9985 ; WX 602 ; N uni2701 ; G 2796 -U 9986 ; WX 602 ; N uni2702 ; G 2797 -U 9987 ; WX 602 ; N uni2703 ; G 2798 -U 9988 ; WX 602 ; N uni2704 ; G 2799 -U 9990 ; WX 602 ; N uni2706 ; G 2800 -U 9991 ; WX 602 ; N uni2707 ; G 2801 -U 9992 ; WX 602 ; N uni2708 ; G 2802 -U 9993 ; WX 602 ; N uni2709 ; G 2803 -U 9996 ; WX 602 ; N uni270C ; G 2804 -U 9997 ; WX 602 ; N uni270D ; G 2805 -U 9998 ; WX 602 ; N uni270E ; G 2806 -U 9999 ; WX 602 ; N uni270F ; G 2807 -U 10000 ; WX 602 ; N uni2710 ; G 2808 -U 10001 ; WX 602 ; N uni2711 ; G 2809 -U 10002 ; WX 602 ; N uni2712 ; G 2810 -U 10003 ; WX 602 ; N uni2713 ; G 2811 -U 10004 ; WX 602 ; N uni2714 ; G 2812 -U 10005 ; WX 602 ; N uni2715 ; G 2813 -U 10006 ; WX 602 ; N uni2716 ; G 2814 -U 10007 ; WX 602 ; N uni2717 ; G 2815 -U 10008 ; WX 602 ; N uni2718 ; G 2816 -U 10009 ; WX 602 ; N uni2719 ; G 2817 -U 10010 ; WX 602 ; N uni271A ; G 2818 -U 10011 ; WX 602 ; N uni271B ; G 2819 -U 10012 ; WX 602 ; N uni271C ; G 2820 -U 10013 ; WX 602 ; N uni271D ; G 2821 -U 10014 ; WX 602 ; N uni271E ; G 2822 -U 10015 ; WX 602 ; N uni271F ; G 2823 -U 10016 ; WX 602 ; N uni2720 ; G 2824 -U 10017 ; WX 602 ; N uni2721 ; G 2825 -U 10018 ; WX 602 ; N uni2722 ; G 2826 -U 10019 ; WX 602 ; N uni2723 ; G 2827 -U 10020 ; WX 602 ; N uni2724 ; G 2828 -U 10021 ; WX 602 ; N uni2725 ; G 2829 -U 10022 ; WX 602 ; N uni2726 ; G 2830 -U 10023 ; WX 602 ; N uni2727 ; G 2831 -U 10025 ; WX 602 ; N uni2729 ; G 2832 -U 10026 ; WX 602 ; N uni272A ; G 2833 -U 10027 ; WX 602 ; N uni272B ; G 2834 -U 10028 ; WX 602 ; N uni272C ; G 2835 -U 10029 ; WX 602 ; N uni272D ; G 2836 -U 10030 ; WX 602 ; N uni272E ; G 2837 -U 10031 ; WX 602 ; N uni272F ; G 2838 -U 10032 ; WX 602 ; N uni2730 ; G 2839 -U 10033 ; WX 602 ; N uni2731 ; G 2840 -U 10034 ; WX 602 ; N uni2732 ; G 2841 -U 10035 ; WX 602 ; N uni2733 ; G 2842 -U 10036 ; WX 602 ; N uni2734 ; G 2843 -U 10037 ; WX 602 ; N uni2735 ; G 2844 -U 10038 ; WX 602 ; N uni2736 ; G 2845 -U 10039 ; WX 602 ; N uni2737 ; G 2846 -U 10040 ; WX 602 ; N uni2738 ; G 2847 -U 10041 ; WX 602 ; N uni2739 ; G 2848 -U 10042 ; WX 602 ; N uni273A ; G 2849 -U 10043 ; WX 602 ; N uni273B ; G 2850 -U 10044 ; WX 602 ; N uni273C ; G 2851 -U 10045 ; WX 602 ; N uni273D ; G 2852 -U 10046 ; WX 602 ; N uni273E ; G 2853 -U 10047 ; WX 602 ; N uni273F ; G 2854 -U 10048 ; WX 602 ; N uni2740 ; G 2855 -U 10049 ; WX 602 ; N uni2741 ; G 2856 -U 10050 ; WX 602 ; N uni2742 ; G 2857 -U 10051 ; WX 602 ; N uni2743 ; G 2858 -U 10052 ; WX 602 ; N uni2744 ; G 2859 -U 10053 ; WX 602 ; N uni2745 ; G 2860 -U 10054 ; WX 602 ; N uni2746 ; G 2861 -U 10055 ; WX 602 ; N uni2747 ; G 2862 -U 10056 ; WX 602 ; N uni2748 ; G 2863 -U 10057 ; WX 602 ; N uni2749 ; G 2864 -U 10058 ; WX 602 ; N uni274A ; G 2865 -U 10059 ; WX 602 ; N uni274B ; G 2866 -U 10061 ; WX 602 ; N uni274D ; G 2867 -U 10063 ; WX 602 ; N uni274F ; G 2868 -U 10064 ; WX 602 ; N uni2750 ; G 2869 -U 10065 ; WX 602 ; N uni2751 ; G 2870 -U 10066 ; WX 602 ; N uni2752 ; G 2871 -U 10070 ; WX 602 ; N uni2756 ; G 2872 -U 10072 ; WX 602 ; N uni2758 ; G 2873 -U 10073 ; WX 602 ; N uni2759 ; G 2874 -U 10074 ; WX 602 ; N uni275A ; G 2875 -U 10075 ; WX 602 ; N uni275B ; G 2876 -U 10076 ; WX 602 ; N uni275C ; G 2877 -U 10077 ; WX 602 ; N uni275D ; G 2878 -U 10078 ; WX 602 ; N uni275E ; G 2879 -U 10081 ; WX 602 ; N uni2761 ; G 2880 -U 10082 ; WX 602 ; N uni2762 ; G 2881 -U 10083 ; WX 602 ; N uni2763 ; G 2882 -U 10084 ; WX 602 ; N uni2764 ; G 2883 -U 10085 ; WX 602 ; N uni2765 ; G 2884 -U 10086 ; WX 602 ; N uni2766 ; G 2885 -U 10087 ; WX 602 ; N uni2767 ; G 2886 -U 10088 ; WX 602 ; N uni2768 ; G 2887 -U 10089 ; WX 602 ; N uni2769 ; G 2888 -U 10090 ; WX 602 ; N uni276A ; G 2889 -U 10091 ; WX 602 ; N uni276B ; G 2890 -U 10092 ; WX 602 ; N uni276C ; G 2891 -U 10093 ; WX 602 ; N uni276D ; G 2892 -U 10094 ; WX 602 ; N uni276E ; G 2893 -U 10095 ; WX 602 ; N uni276F ; G 2894 -U 10096 ; WX 602 ; N uni2770 ; G 2895 -U 10097 ; WX 602 ; N uni2771 ; G 2896 -U 10098 ; WX 602 ; N uni2772 ; G 2897 -U 10099 ; WX 602 ; N uni2773 ; G 2898 -U 10100 ; WX 602 ; N uni2774 ; G 2899 -U 10101 ; WX 602 ; N uni2775 ; G 2900 -U 10132 ; WX 602 ; N uni2794 ; G 2901 -U 10136 ; WX 602 ; N uni2798 ; G 2902 -U 10137 ; WX 602 ; N uni2799 ; G 2903 -U 10138 ; WX 602 ; N uni279A ; G 2904 -U 10139 ; WX 602 ; N uni279B ; G 2905 -U 10140 ; WX 602 ; N uni279C ; G 2906 -U 10141 ; WX 602 ; N uni279D ; G 2907 -U 10142 ; WX 602 ; N uni279E ; G 2908 -U 10143 ; WX 602 ; N uni279F ; G 2909 -U 10144 ; WX 602 ; N uni27A0 ; G 2910 -U 10145 ; WX 602 ; N uni27A1 ; G 2911 -U 10146 ; WX 602 ; N uni27A2 ; G 2912 -U 10147 ; WX 602 ; N uni27A3 ; G 2913 -U 10148 ; WX 602 ; N uni27A4 ; G 2914 -U 10149 ; WX 602 ; N uni27A5 ; G 2915 -U 10150 ; WX 602 ; N uni27A6 ; G 2916 -U 10151 ; WX 602 ; N uni27A7 ; G 2917 -U 10152 ; WX 602 ; N uni27A8 ; G 2918 -U 10153 ; WX 602 ; N uni27A9 ; G 2919 -U 10154 ; WX 602 ; N uni27AA ; G 2920 -U 10155 ; WX 602 ; N uni27AB ; G 2921 -U 10156 ; WX 602 ; N uni27AC ; G 2922 -U 10157 ; WX 602 ; N uni27AD ; G 2923 -U 10158 ; WX 602 ; N uni27AE ; G 2924 -U 10159 ; WX 602 ; N uni27AF ; G 2925 -U 10161 ; WX 602 ; N uni27B1 ; G 2926 -U 10162 ; WX 602 ; N uni27B2 ; G 2927 -U 10163 ; WX 602 ; N uni27B3 ; G 2928 -U 10164 ; WX 602 ; N uni27B4 ; G 2929 -U 10165 ; WX 602 ; N uni27B5 ; G 2930 -U 10166 ; WX 602 ; N uni27B6 ; G 2931 -U 10167 ; WX 602 ; N uni27B7 ; G 2932 -U 10168 ; WX 602 ; N uni27B8 ; G 2933 -U 10169 ; WX 602 ; N uni27B9 ; G 2934 -U 10170 ; WX 602 ; N uni27BA ; G 2935 -U 10171 ; WX 602 ; N uni27BB ; G 2936 -U 10172 ; WX 602 ; N uni27BC ; G 2937 -U 10173 ; WX 602 ; N uni27BD ; G 2938 -U 10174 ; WX 602 ; N uni27BE ; G 2939 -U 10178 ; WX 602 ; N uni27C2 ; G 2940 -U 10181 ; WX 602 ; N uni27C5 ; G 2941 -U 10182 ; WX 602 ; N uni27C6 ; G 2942 -U 10204 ; WX 602 ; N uni27DC ; G 2943 -U 10208 ; WX 602 ; N uni27E0 ; G 2944 -U 10214 ; WX 602 ; N uni27E6 ; G 2945 -U 10215 ; WX 602 ; N uni27E7 ; G 2946 -U 10216 ; WX 602 ; N uni27E8 ; G 2947 -U 10217 ; WX 602 ; N uni27E9 ; G 2948 -U 10218 ; WX 602 ; N uni27EA ; G 2949 -U 10219 ; WX 602 ; N uni27EB ; G 2950 -U 10229 ; WX 602 ; N uni27F5 ; G 2951 -U 10230 ; WX 602 ; N uni27F6 ; G 2952 -U 10231 ; WX 602 ; N uni27F7 ; G 2953 -U 10631 ; WX 602 ; N uni2987 ; G 2954 -U 10632 ; WX 602 ; N uni2988 ; G 2955 -U 10647 ; WX 602 ; N uni2997 ; G 2956 -U 10648 ; WX 602 ; N uni2998 ; G 2957 -U 10731 ; WX 602 ; N uni29EB ; G 2958 -U 10746 ; WX 602 ; N uni29FA ; G 2959 -U 10747 ; WX 602 ; N uni29FB ; G 2960 -U 10752 ; WX 602 ; N uni2A00 ; G 2961 -U 10799 ; WX 602 ; N uni2A2F ; G 2962 -U 10858 ; WX 602 ; N uni2A6A ; G 2963 -U 10859 ; WX 602 ; N uni2A6B ; G 2964 -U 11013 ; WX 602 ; N uni2B05 ; G 2965 -U 11014 ; WX 602 ; N uni2B06 ; G 2966 -U 11015 ; WX 602 ; N uni2B07 ; G 2967 -U 11016 ; WX 602 ; N uni2B08 ; G 2968 -U 11017 ; WX 602 ; N uni2B09 ; G 2969 -U 11018 ; WX 602 ; N uni2B0A ; G 2970 -U 11019 ; WX 602 ; N uni2B0B ; G 2971 -U 11020 ; WX 602 ; N uni2B0C ; G 2972 -U 11021 ; WX 602 ; N uni2B0D ; G 2973 -U 11026 ; WX 602 ; N uni2B12 ; G 2974 -U 11027 ; WX 602 ; N uni2B13 ; G 2975 -U 11028 ; WX 602 ; N uni2B14 ; G 2976 -U 11029 ; WX 602 ; N uni2B15 ; G 2977 -U 11030 ; WX 602 ; N uni2B16 ; G 2978 -U 11031 ; WX 602 ; N uni2B17 ; G 2979 -U 11032 ; WX 602 ; N uni2B18 ; G 2980 -U 11033 ; WX 602 ; N uni2B19 ; G 2981 -U 11034 ; WX 602 ; N uni2B1A ; G 2982 -U 11364 ; WX 602 ; N uni2C64 ; G 2983 -U 11373 ; WX 602 ; N uni2C6D ; G 2984 -U 11374 ; WX 602 ; N uni2C6E ; G 2985 -U 11375 ; WX 602 ; N uni2C6F ; G 2986 -U 11376 ; WX 602 ; N uni2C70 ; G 2987 -U 11381 ; WX 602 ; N uni2C75 ; G 2988 -U 11382 ; WX 602 ; N uni2C76 ; G 2989 -U 11383 ; WX 602 ; N uni2C77 ; G 2990 -U 11385 ; WX 602 ; N uni2C79 ; G 2991 -U 11386 ; WX 602 ; N uni2C7A ; G 2992 -U 11388 ; WX 602 ; N uni2C7C ; G 2993 -U 11389 ; WX 602 ; N uni2C7D ; G 2994 -U 11390 ; WX 602 ; N uni2C7E ; G 2995 -U 11391 ; WX 602 ; N uni2C7F ; G 2996 -U 11800 ; WX 602 ; N uni2E18 ; G 2997 -U 11807 ; WX 602 ; N uni2E1F ; G 2998 -U 11810 ; WX 602 ; N uni2E22 ; G 2999 -U 11811 ; WX 602 ; N uni2E23 ; G 3000 -U 11812 ; WX 602 ; N uni2E24 ; G 3001 -U 11813 ; WX 602 ; N uni2E25 ; G 3002 -U 11822 ; WX 602 ; N uni2E2E ; G 3003 -U 42760 ; WX 602 ; N uniA708 ; G 3004 -U 42761 ; WX 602 ; N uniA709 ; G 3005 -U 42762 ; WX 602 ; N uniA70A ; G 3006 -U 42763 ; WX 602 ; N uniA70B ; G 3007 -U 42764 ; WX 602 ; N uniA70C ; G 3008 -U 42765 ; WX 602 ; N uniA70D ; G 3009 -U 42766 ; WX 602 ; N uniA70E ; G 3010 -U 42767 ; WX 602 ; N uniA70F ; G 3011 -U 42768 ; WX 602 ; N uniA710 ; G 3012 -U 42769 ; WX 602 ; N uniA711 ; G 3013 -U 42770 ; WX 602 ; N uniA712 ; G 3014 -U 42771 ; WX 602 ; N uniA713 ; G 3015 -U 42772 ; WX 602 ; N uniA714 ; G 3016 -U 42773 ; WX 602 ; N uniA715 ; G 3017 -U 42774 ; WX 602 ; N uniA716 ; G 3018 -U 42779 ; WX 602 ; N uniA71B ; G 3019 -U 42780 ; WX 602 ; N uniA71C ; G 3020 -U 42781 ; WX 602 ; N uniA71D ; G 3021 -U 42782 ; WX 602 ; N uniA71E ; G 3022 -U 42783 ; WX 602 ; N uniA71F ; G 3023 -U 42786 ; WX 602 ; N uniA722 ; G 3024 -U 42787 ; WX 602 ; N uniA723 ; G 3025 -U 42788 ; WX 602 ; N uniA724 ; G 3026 -U 42789 ; WX 602 ; N uniA725 ; G 3027 -U 42790 ; WX 602 ; N uniA726 ; G 3028 -U 42791 ; WX 602 ; N uniA727 ; G 3029 -U 42889 ; WX 602 ; N uniA789 ; G 3030 -U 42890 ; WX 602 ; N uniA78A ; G 3031 -U 42891 ; WX 602 ; N uniA78B ; G 3032 -U 42892 ; WX 602 ; N uniA78C ; G 3033 -U 42893 ; WX 602 ; N uniA78D ; G 3034 -U 42894 ; WX 602 ; N uniA78E ; G 3035 -U 42896 ; WX 602 ; N uniA790 ; G 3036 -U 42897 ; WX 602 ; N uniA791 ; G 3037 -U 42922 ; WX 602 ; N uniA7AA ; G 3038 -U 43000 ; WX 602 ; N uniA7F8 ; G 3039 -U 43001 ; WX 602 ; N uniA7F9 ; G 3040 -U 63173 ; WX 602 ; N uniF6C5 ; G 3041 -U 64257 ; WX 602 ; N fi ; G 3042 -U 64258 ; WX 602 ; N fl ; G 3043 -U 64338 ; WX 602 ; N uniFB52 ; G 3044 -U 64339 ; WX 602 ; N uniFB53 ; G 3045 -U 64340 ; WX 602 ; N uniFB54 ; G 3046 -U 64341 ; WX 602 ; N uniFB55 ; G 3047 -U 64342 ; WX 602 ; N uniFB56 ; G 3048 -U 64343 ; WX 602 ; N uniFB57 ; G 3049 -U 64344 ; WX 602 ; N uniFB58 ; G 3050 -U 64345 ; WX 602 ; N uniFB59 ; G 3051 -U 64346 ; WX 602 ; N uniFB5A ; G 3052 -U 64347 ; WX 602 ; N uniFB5B ; G 3053 -U 64348 ; WX 602 ; N uniFB5C ; G 3054 -U 64349 ; WX 602 ; N uniFB5D ; G 3055 -U 64350 ; WX 602 ; N uniFB5E ; G 3056 -U 64351 ; WX 602 ; N uniFB5F ; G 3057 -U 64352 ; WX 602 ; N uniFB60 ; G 3058 -U 64353 ; WX 602 ; N uniFB61 ; G 3059 -U 64354 ; WX 602 ; N uniFB62 ; G 3060 -U 64355 ; WX 602 ; N uniFB63 ; G 3061 -U 64356 ; WX 602 ; N uniFB64 ; G 3062 -U 64357 ; WX 602 ; N uniFB65 ; G 3063 -U 64358 ; WX 602 ; N uniFB66 ; G 3064 -U 64359 ; WX 602 ; N uniFB67 ; G 3065 -U 64360 ; WX 602 ; N uniFB68 ; G 3066 -U 64361 ; WX 602 ; N uniFB69 ; G 3067 -U 64362 ; WX 602 ; N uniFB6A ; G 3068 -U 64363 ; WX 602 ; N uniFB6B ; G 3069 -U 64364 ; WX 602 ; N uniFB6C ; G 3070 -U 64365 ; WX 602 ; N uniFB6D ; G 3071 -U 64366 ; WX 602 ; N uniFB6E ; G 3072 -U 64367 ; WX 602 ; N uniFB6F ; G 3073 -U 64368 ; WX 602 ; N uniFB70 ; G 3074 -U 64369 ; WX 602 ; N uniFB71 ; G 3075 -U 64370 ; WX 602 ; N uniFB72 ; G 3076 -U 64371 ; WX 602 ; N uniFB73 ; G 3077 -U 64372 ; WX 602 ; N uniFB74 ; G 3078 -U 64373 ; WX 602 ; N uniFB75 ; G 3079 -U 64374 ; WX 602 ; N uniFB76 ; G 3080 -U 64375 ; WX 602 ; N uniFB77 ; G 3081 -U 64376 ; WX 602 ; N uniFB78 ; G 3082 -U 64377 ; WX 602 ; N uniFB79 ; G 3083 -U 64378 ; WX 602 ; N uniFB7A ; G 3084 -U 64379 ; WX 602 ; N uniFB7B ; G 3085 -U 64380 ; WX 602 ; N uniFB7C ; G 3086 -U 64381 ; WX 602 ; N uniFB7D ; G 3087 -U 64382 ; WX 602 ; N uniFB7E ; G 3088 -U 64383 ; WX 602 ; N uniFB7F ; G 3089 -U 64384 ; WX 602 ; N uniFB80 ; G 3090 -U 64385 ; WX 602 ; N uniFB81 ; G 3091 -U 64394 ; WX 602 ; N uniFB8A ; G 3092 -U 64395 ; WX 602 ; N uniFB8B ; G 3093 -U 64396 ; WX 602 ; N uniFB8C ; G 3094 -U 64397 ; WX 602 ; N uniFB8D ; G 3095 -U 64398 ; WX 602 ; N uniFB8E ; G 3096 -U 64399 ; WX 602 ; N uniFB8F ; G 3097 -U 64400 ; WX 602 ; N uniFB90 ; G 3098 -U 64401 ; WX 602 ; N uniFB91 ; G 3099 -U 64402 ; WX 602 ; N uniFB92 ; G 3100 -U 64403 ; WX 602 ; N uniFB93 ; G 3101 -U 64404 ; WX 602 ; N uniFB94 ; G 3102 -U 64405 ; WX 602 ; N uniFB95 ; G 3103 -U 64414 ; WX 602 ; N uniFB9E ; G 3104 -U 64415 ; WX 602 ; N uniFB9F ; G 3105 -U 64426 ; WX 602 ; N uniFBAA ; G 3106 -U 64427 ; WX 602 ; N uniFBAB ; G 3107 -U 64428 ; WX 602 ; N uniFBAC ; G 3108 -U 64429 ; WX 602 ; N uniFBAD ; G 3109 -U 64488 ; WX 602 ; N uniFBE8 ; G 3110 -U 64489 ; WX 602 ; N uniFBE9 ; G 3111 -U 64508 ; WX 602 ; N uniFBFC ; G 3112 -U 64509 ; WX 602 ; N uniFBFD ; G 3113 -U 64510 ; WX 602 ; N uniFBFE ; G 3114 -U 64511 ; WX 602 ; N uniFBFF ; G 3115 -U 65136 ; WX 602 ; N uniFE70 ; G 3116 -U 65137 ; WX 602 ; N uniFE71 ; G 3117 -U 65138 ; WX 602 ; N uniFE72 ; G 3118 -U 65139 ; WX 602 ; N uniFE73 ; G 3119 -U 65140 ; WX 602 ; N uniFE74 ; G 3120 -U 65142 ; WX 602 ; N uniFE76 ; G 3121 -U 65143 ; WX 602 ; N uniFE77 ; G 3122 -U 65144 ; WX 602 ; N uniFE78 ; G 3123 -U 65145 ; WX 602 ; N uniFE79 ; G 3124 -U 65146 ; WX 602 ; N uniFE7A ; G 3125 -U 65147 ; WX 602 ; N uniFE7B ; G 3126 -U 65148 ; WX 602 ; N uniFE7C ; G 3127 -U 65149 ; WX 602 ; N uniFE7D ; G 3128 -U 65150 ; WX 602 ; N uniFE7E ; G 3129 -U 65151 ; WX 602 ; N uniFE7F ; G 3130 -U 65152 ; WX 602 ; N uniFE80 ; G 3131 -U 65153 ; WX 602 ; N uniFE81 ; G 3132 -U 65154 ; WX 602 ; N uniFE82 ; G 3133 -U 65155 ; WX 602 ; N uniFE83 ; G 3134 -U 65156 ; WX 602 ; N uniFE84 ; G 3135 -U 65157 ; WX 602 ; N uniFE85 ; G 3136 -U 65158 ; WX 602 ; N uniFE86 ; G 3137 -U 65159 ; WX 602 ; N uniFE87 ; G 3138 -U 65160 ; WX 602 ; N uniFE88 ; G 3139 -U 65161 ; WX 602 ; N uniFE89 ; G 3140 -U 65162 ; WX 602 ; N uniFE8A ; G 3141 -U 65163 ; WX 602 ; N uniFE8B ; G 3142 -U 65164 ; WX 602 ; N uniFE8C ; G 3143 -U 65165 ; WX 602 ; N uniFE8D ; G 3144 -U 65166 ; WX 602 ; N uniFE8E ; G 3145 -U 65167 ; WX 602 ; N uniFE8F ; G 3146 -U 65168 ; WX 602 ; N uniFE90 ; G 3147 -U 65169 ; WX 602 ; N uniFE91 ; G 3148 -U 65170 ; WX 602 ; N uniFE92 ; G 3149 -U 65171 ; WX 602 ; N uniFE93 ; G 3150 -U 65172 ; WX 602 ; N uniFE94 ; G 3151 -U 65173 ; WX 602 ; N uniFE95 ; G 3152 -U 65174 ; WX 602 ; N uniFE96 ; G 3153 -U 65175 ; WX 602 ; N uniFE97 ; G 3154 -U 65176 ; WX 602 ; N uniFE98 ; G 3155 -U 65177 ; WX 602 ; N uniFE99 ; G 3156 -U 65178 ; WX 602 ; N uniFE9A ; G 3157 -U 65179 ; WX 602 ; N uniFE9B ; G 3158 -U 65180 ; WX 602 ; N uniFE9C ; G 3159 -U 65181 ; WX 602 ; N uniFE9D ; G 3160 -U 65182 ; WX 602 ; N uniFE9E ; G 3161 -U 65183 ; WX 602 ; N uniFE9F ; G 3162 -U 65184 ; WX 602 ; N uniFEA0 ; G 3163 -U 65185 ; WX 602 ; N uniFEA1 ; G 3164 -U 65186 ; WX 602 ; N uniFEA2 ; G 3165 -U 65187 ; WX 602 ; N uniFEA3 ; G 3166 -U 65188 ; WX 602 ; N uniFEA4 ; G 3167 -U 65189 ; WX 602 ; N uniFEA5 ; G 3168 -U 65190 ; WX 602 ; N uniFEA6 ; G 3169 -U 65191 ; WX 602 ; N uniFEA7 ; G 3170 -U 65192 ; WX 602 ; N uniFEA8 ; G 3171 -U 65193 ; WX 602 ; N uniFEA9 ; G 3172 -U 65194 ; WX 602 ; N uniFEAA ; G 3173 -U 65195 ; WX 602 ; N uniFEAB ; G 3174 -U 65196 ; WX 602 ; N uniFEAC ; G 3175 -U 65197 ; WX 602 ; N uniFEAD ; G 3176 -U 65198 ; WX 602 ; N uniFEAE ; G 3177 -U 65199 ; WX 602 ; N uniFEAF ; G 3178 -U 65200 ; WX 602 ; N uniFEB0 ; G 3179 -U 65201 ; WX 602 ; N uniFEB1 ; G 3180 -U 65202 ; WX 602 ; N uniFEB2 ; G 3181 -U 65203 ; WX 602 ; N uniFEB3 ; G 3182 -U 65204 ; WX 602 ; N uniFEB4 ; G 3183 -U 65205 ; WX 602 ; N uniFEB5 ; G 3184 -U 65206 ; WX 602 ; N uniFEB6 ; G 3185 -U 65207 ; WX 602 ; N uniFEB7 ; G 3186 -U 65208 ; WX 602 ; N uniFEB8 ; G 3187 -U 65209 ; WX 602 ; N uniFEB9 ; G 3188 -U 65210 ; WX 602 ; N uniFEBA ; G 3189 -U 65211 ; WX 602 ; N uniFEBB ; G 3190 -U 65212 ; WX 602 ; N uniFEBC ; G 3191 -U 65213 ; WX 602 ; N uniFEBD ; G 3192 -U 65214 ; WX 602 ; N uniFEBE ; G 3193 -U 65215 ; WX 602 ; N uniFEBF ; G 3194 -U 65216 ; WX 602 ; N uniFEC0 ; G 3195 -U 65217 ; WX 602 ; N uniFEC1 ; G 3196 -U 65218 ; WX 602 ; N uniFEC2 ; G 3197 -U 65219 ; WX 602 ; N uniFEC3 ; G 3198 -U 65220 ; WX 602 ; N uniFEC4 ; G 3199 -U 65221 ; WX 602 ; N uniFEC5 ; G 3200 -U 65222 ; WX 602 ; N uniFEC6 ; G 3201 -U 65223 ; WX 602 ; N uniFEC7 ; G 3202 -U 65224 ; WX 602 ; N uniFEC8 ; G 3203 -U 65225 ; WX 602 ; N uniFEC9 ; G 3204 -U 65226 ; WX 602 ; N uniFECA ; G 3205 -U 65227 ; WX 602 ; N uniFECB ; G 3206 -U 65228 ; WX 602 ; N uniFECC ; G 3207 -U 65229 ; WX 602 ; N uniFECD ; G 3208 -U 65230 ; WX 602 ; N uniFECE ; G 3209 -U 65231 ; WX 602 ; N uniFECF ; G 3210 -U 65232 ; WX 602 ; N uniFED0 ; G 3211 -U 65233 ; WX 602 ; N uniFED1 ; G 3212 -U 65234 ; WX 602 ; N uniFED2 ; G 3213 -U 65235 ; WX 602 ; N uniFED3 ; G 3214 -U 65236 ; WX 602 ; N uniFED4 ; G 3215 -U 65237 ; WX 602 ; N uniFED5 ; G 3216 -U 65238 ; WX 602 ; N uniFED6 ; G 3217 -U 65239 ; WX 602 ; N uniFED7 ; G 3218 -U 65240 ; WX 602 ; N uniFED8 ; G 3219 -U 65241 ; WX 602 ; N uniFED9 ; G 3220 -U 65242 ; WX 602 ; N uniFEDA ; G 3221 -U 65243 ; WX 602 ; N uniFEDB ; G 3222 -U 65244 ; WX 602 ; N uniFEDC ; G 3223 -U 65245 ; WX 602 ; N uniFEDD ; G 3224 -U 65246 ; WX 602 ; N uniFEDE ; G 3225 -U 65247 ; WX 602 ; N uniFEDF ; G 3226 -U 65248 ; WX 602 ; N uniFEE0 ; G 3227 -U 65249 ; WX 602 ; N uniFEE1 ; G 3228 -U 65250 ; WX 602 ; N uniFEE2 ; G 3229 -U 65251 ; WX 602 ; N uniFEE3 ; G 3230 -U 65252 ; WX 602 ; N uniFEE4 ; G 3231 -U 65253 ; WX 602 ; N uniFEE5 ; G 3232 -U 65254 ; WX 602 ; N uniFEE6 ; G 3233 -U 65255 ; WX 602 ; N uniFEE7 ; G 3234 -U 65256 ; WX 602 ; N uniFEE8 ; G 3235 -U 65257 ; WX 602 ; N uniFEE9 ; G 3236 -U 65258 ; WX 602 ; N uniFEEA ; G 3237 -U 65259 ; WX 602 ; N uniFEEB ; G 3238 -U 65260 ; WX 602 ; N uniFEEC ; G 3239 -U 65261 ; WX 602 ; N uniFEED ; G 3240 -U 65262 ; WX 602 ; N uniFEEE ; G 3241 -U 65263 ; WX 602 ; N uniFEEF ; G 3242 -U 65264 ; WX 602 ; N uniFEF0 ; G 3243 -U 65265 ; WX 602 ; N uniFEF1 ; G 3244 -U 65266 ; WX 602 ; N uniFEF2 ; G 3245 -U 65267 ; WX 602 ; N uniFEF3 ; G 3246 -U 65268 ; WX 602 ; N uniFEF4 ; G 3247 -U 65269 ; WX 602 ; N uniFEF5 ; G 3248 -U 65270 ; WX 602 ; N uniFEF6 ; G 3249 -U 65271 ; WX 602 ; N uniFEF7 ; G 3250 -U 65272 ; WX 602 ; N uniFEF8 ; G 3251 -U 65273 ; WX 602 ; N uniFEF9 ; G 3252 -U 65274 ; WX 602 ; N uniFEFA ; G 3253 -U 65275 ; WX 602 ; N uniFEFB ; G 3254 -U 65276 ; WX 602 ; N uniFEFC ; G 3255 -U 65279 ; WX 602 ; N uniFEFF ; G 3256 -U 65529 ; WX 602 ; N uniFFF9 ; G 3257 -U 65530 ; WX 602 ; N uniFFFA ; G 3258 -U 65531 ; WX 602 ; N uniFFFB ; G 3259 -U 65532 ; WX 602 ; N uniFFFC ; G 3260 -U 65533 ; WX 602 ; N uniFFFD ; G 3261 -EndCharMetrics -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSerif-Bold.ttf b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSerif-Bold.ttf deleted file mode 100644 index 3bb755fa..00000000 Binary files a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSerif-Bold.ttf and /dev/null differ diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSerif-Bold.ufm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSerif-Bold.ufm deleted file mode 100644 index 7420dabd..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSerif-Bold.ufm +++ /dev/null @@ -1,4013 +0,0 @@ -StartFontMetrics 4.1 -Notice Converted by PHP-font-lib -Comment https://github.com/PhenX/php-font-lib -EncodingScheme FontSpecific -FontName DejaVu Serif -FontSubfamily Bold -UniqueID DejaVu Serif Bold -FullName DejaVu Serif Bold -Version Version 2.37 -PostScriptName DejaVuSerif-Bold -Manufacturer DejaVu fonts team -FontVendorURL http://dejavu.sourceforge.net -LicenseURL http://dejavu.sourceforge.net/wiki/index.php/License -PreferredFamily DejaVu Serif -PreferredSubfamily Bold -Weight Bold -ItalicAngle 0 -IsFixedPitch false -UnderlineThickness 44 -UnderlinePosition -63 -FontHeightOffset 0 -Ascender 939 -Descender -236 -FontBBox -836 -389 1854 1145 -StartCharMetrics 3506 -U 32 ; WX 348 ; N space ; G 3 -U 33 ; WX 439 ; N exclam ; G 4 -U 34 ; WX 521 ; N quotedbl ; G 5 -U 35 ; WX 838 ; N numbersign ; G 6 -U 36 ; WX 696 ; N dollar ; G 7 -U 37 ; WX 950 ; N percent ; G 8 -U 38 ; WX 903 ; N ampersand ; G 9 -U 39 ; WX 306 ; N quotesingle ; G 10 -U 40 ; WX 473 ; N parenleft ; G 11 -U 41 ; WX 473 ; N parenright ; G 12 -U 42 ; WX 523 ; N asterisk ; G 13 -U 43 ; WX 838 ; N plus ; G 14 -U 44 ; WX 348 ; N comma ; G 15 -U 45 ; WX 415 ; N hyphen ; G 16 -U 46 ; WX 348 ; N period ; G 17 -U 47 ; WX 365 ; N slash ; G 18 -U 48 ; WX 696 ; N zero ; G 19 -U 49 ; WX 696 ; N one ; G 20 -U 50 ; WX 696 ; N two ; G 21 -U 51 ; WX 696 ; N three ; G 22 -U 52 ; WX 696 ; N four ; G 23 -U 53 ; WX 696 ; N five ; G 24 -U 54 ; WX 696 ; N six ; G 25 -U 55 ; WX 696 ; N seven ; G 26 -U 56 ; WX 696 ; N eight ; G 27 -U 57 ; WX 696 ; N nine ; G 28 -U 58 ; WX 369 ; N colon ; G 29 -U 59 ; WX 369 ; N semicolon ; G 30 -U 60 ; WX 838 ; N less ; G 31 -U 61 ; WX 838 ; N equal ; G 32 -U 62 ; WX 838 ; N greater ; G 33 -U 63 ; WX 586 ; N question ; G 34 -U 64 ; WX 1000 ; N at ; G 35 -U 65 ; WX 776 ; N A ; G 36 -U 66 ; WX 845 ; N B ; G 37 -U 67 ; WX 796 ; N C ; G 38 -U 68 ; WX 867 ; N D ; G 39 -U 69 ; WX 762 ; N E ; G 40 -U 70 ; WX 710 ; N F ; G 41 -U 71 ; WX 854 ; N G ; G 42 -U 72 ; WX 945 ; N H ; G 43 -U 73 ; WX 468 ; N I ; G 44 -U 74 ; WX 473 ; N J ; G 45 -U 75 ; WX 869 ; N K ; G 46 -U 76 ; WX 703 ; N L ; G 47 -U 77 ; WX 1107 ; N M ; G 48 -U 78 ; WX 914 ; N N ; G 49 -U 79 ; WX 871 ; N O ; G 50 -U 80 ; WX 752 ; N P ; G 51 -U 81 ; WX 871 ; N Q ; G 52 -U 82 ; WX 831 ; N R ; G 53 -U 83 ; WX 722 ; N S ; G 54 -U 84 ; WX 744 ; N T ; G 55 -U 85 ; WX 872 ; N U ; G 56 -U 86 ; WX 776 ; N V ; G 57 -U 87 ; WX 1123 ; N W ; G 58 -U 88 ; WX 776 ; N X ; G 59 -U 89 ; WX 714 ; N Y ; G 60 -U 90 ; WX 730 ; N Z ; G 61 -U 91 ; WX 473 ; N bracketleft ; G 62 -U 92 ; WX 365 ; N backslash ; G 63 -U 93 ; WX 473 ; N bracketright ; G 64 -U 94 ; WX 838 ; N asciicircum ; G 65 -U 95 ; WX 500 ; N underscore ; G 66 -U 96 ; WX 500 ; N grave ; G 67 -U 97 ; WX 648 ; N a ; G 68 -U 98 ; WX 699 ; N b ; G 69 -U 99 ; WX 609 ; N c ; G 70 -U 100 ; WX 699 ; N d ; G 71 -U 101 ; WX 636 ; N e ; G 72 -U 102 ; WX 430 ; N f ; G 73 -U 103 ; WX 699 ; N g ; G 74 -U 104 ; WX 727 ; N h ; G 75 -U 105 ; WX 380 ; N i ; G 76 -U 106 ; WX 362 ; N j ; G 77 -U 107 ; WX 693 ; N k ; G 78 -U 108 ; WX 380 ; N l ; G 79 -U 109 ; WX 1058 ; N m ; G 80 -U 110 ; WX 727 ; N n ; G 81 -U 111 ; WX 667 ; N o ; G 82 -U 112 ; WX 699 ; N p ; G 83 -U 113 ; WX 699 ; N q ; G 84 -U 114 ; WX 527 ; N r ; G 85 -U 115 ; WX 563 ; N s ; G 86 -U 116 ; WX 462 ; N t ; G 87 -U 117 ; WX 727 ; N u ; G 88 -U 118 ; WX 581 ; N v ; G 89 -U 119 ; WX 861 ; N w ; G 90 -U 120 ; WX 596 ; N x ; G 91 -U 121 ; WX 581 ; N y ; G 92 -U 122 ; WX 568 ; N z ; G 93 -U 123 ; WX 643 ; N braceleft ; G 94 -U 124 ; WX 364 ; N bar ; G 95 -U 125 ; WX 643 ; N braceright ; G 96 -U 126 ; WX 838 ; N asciitilde ; G 97 -U 160 ; WX 348 ; N nbspace ; G 98 -U 161 ; WX 439 ; N exclamdown ; G 99 -U 162 ; WX 696 ; N cent ; G 100 -U 163 ; WX 696 ; N sterling ; G 101 -U 164 ; WX 636 ; N currency ; G 102 -U 165 ; WX 696 ; N yen ; G 103 -U 166 ; WX 364 ; N brokenbar ; G 104 -U 167 ; WX 523 ; N section ; G 105 -U 168 ; WX 500 ; N dieresis ; G 106 -U 169 ; WX 1000 ; N copyright ; G 107 -U 170 ; WX 487 ; N ordfeminine ; G 108 -U 171 ; WX 625 ; N guillemotleft ; G 109 -U 172 ; WX 838 ; N logicalnot ; G 110 -U 173 ; WX 415 ; N sfthyphen ; G 111 -U 174 ; WX 1000 ; N registered ; G 112 -U 175 ; WX 500 ; N macron ; G 113 -U 176 ; WX 500 ; N degree ; G 114 -U 177 ; WX 838 ; N plusminus ; G 115 -U 178 ; WX 438 ; N twosuperior ; G 116 -U 179 ; WX 438 ; N threesuperior ; G 117 -U 180 ; WX 500 ; N acute ; G 118 -U 181 ; WX 732 ; N mu ; G 119 -U 182 ; WX 636 ; N paragraph ; G 120 -U 183 ; WX 348 ; N periodcentered ; G 121 -U 184 ; WX 500 ; N cedilla ; G 122 -U 185 ; WX 438 ; N onesuperior ; G 123 -U 186 ; WX 500 ; N ordmasculine ; G 124 -U 187 ; WX 625 ; N guillemotright ; G 125 -U 188 ; WX 1043 ; N onequarter ; G 126 -U 189 ; WX 1043 ; N onehalf ; G 127 -U 190 ; WX 1043 ; N threequarters ; G 128 -U 191 ; WX 586 ; N questiondown ; G 129 -U 192 ; WX 776 ; N Agrave ; G 130 -U 193 ; WX 776 ; N Aacute ; G 131 -U 194 ; WX 776 ; N Acircumflex ; G 132 -U 195 ; WX 776 ; N Atilde ; G 133 -U 196 ; WX 776 ; N Adieresis ; G 134 -U 197 ; WX 776 ; N Aring ; G 135 -U 198 ; WX 1034 ; N AE ; G 136 -U 199 ; WX 796 ; N Ccedilla ; G 137 -U 200 ; WX 762 ; N Egrave ; G 138 -U 201 ; WX 762 ; N Eacute ; G 139 -U 202 ; WX 762 ; N Ecircumflex ; G 140 -U 203 ; WX 762 ; N Edieresis ; G 141 -U 204 ; WX 468 ; N Igrave ; G 142 -U 205 ; WX 468 ; N Iacute ; G 143 -U 206 ; WX 468 ; N Icircumflex ; G 144 -U 207 ; WX 468 ; N Idieresis ; G 145 -U 208 ; WX 874 ; N Eth ; G 146 -U 209 ; WX 914 ; N Ntilde ; G 147 -U 210 ; WX 871 ; N Ograve ; G 148 -U 211 ; WX 871 ; N Oacute ; G 149 -U 212 ; WX 871 ; N Ocircumflex ; G 150 -U 213 ; WX 871 ; N Otilde ; G 151 -U 214 ; WX 871 ; N Odieresis ; G 152 -U 215 ; WX 838 ; N multiply ; G 153 -U 216 ; WX 871 ; N Oslash ; G 154 -U 217 ; WX 872 ; N Ugrave ; G 155 -U 218 ; WX 872 ; N Uacute ; G 156 -U 219 ; WX 872 ; N Ucircumflex ; G 157 -U 220 ; WX 872 ; N Udieresis ; G 158 -U 221 ; WX 714 ; N Yacute ; G 159 -U 222 ; WX 757 ; N Thorn ; G 160 -U 223 ; WX 760 ; N germandbls ; G 161 -U 224 ; WX 648 ; N agrave ; G 162 -U 225 ; WX 648 ; N aacute ; G 163 -U 226 ; WX 648 ; N acircumflex ; G 164 -U 227 ; WX 648 ; N atilde ; G 165 -U 228 ; WX 648 ; N adieresis ; G 166 -U 229 ; WX 648 ; N aring ; G 167 -U 230 ; WX 975 ; N ae ; G 168 -U 231 ; WX 609 ; N ccedilla ; G 169 -U 232 ; WX 636 ; N egrave ; G 170 -U 233 ; WX 636 ; N eacute ; G 171 -U 234 ; WX 636 ; N ecircumflex ; G 172 -U 235 ; WX 636 ; N edieresis ; G 173 -U 236 ; WX 380 ; N igrave ; G 174 -U 237 ; WX 380 ; N iacute ; G 175 -U 238 ; WX 380 ; N icircumflex ; G 176 -U 239 ; WX 380 ; N idieresis ; G 177 -U 240 ; WX 667 ; N eth ; G 178 -U 241 ; WX 727 ; N ntilde ; G 179 -U 242 ; WX 667 ; N ograve ; G 180 -U 243 ; WX 667 ; N oacute ; G 181 -U 244 ; WX 667 ; N ocircumflex ; G 182 -U 245 ; WX 667 ; N otilde ; G 183 -U 246 ; WX 667 ; N odieresis ; G 184 -U 247 ; WX 838 ; N divide ; G 185 -U 248 ; WX 667 ; N oslash ; G 186 -U 249 ; WX 727 ; N ugrave ; G 187 -U 250 ; WX 727 ; N uacute ; G 188 -U 251 ; WX 727 ; N ucircumflex ; G 189 -U 252 ; WX 727 ; N udieresis ; G 190 -U 253 ; WX 581 ; N yacute ; G 191 -U 254 ; WX 699 ; N thorn ; G 192 -U 255 ; WX 581 ; N ydieresis ; G 193 -U 256 ; WX 776 ; N Amacron ; G 194 -U 257 ; WX 648 ; N amacron ; G 195 -U 258 ; WX 776 ; N Abreve ; G 196 -U 259 ; WX 648 ; N abreve ; G 197 -U 260 ; WX 776 ; N Aogonek ; G 198 -U 261 ; WX 648 ; N aogonek ; G 199 -U 262 ; WX 796 ; N Cacute ; G 200 -U 263 ; WX 609 ; N cacute ; G 201 -U 264 ; WX 796 ; N Ccircumflex ; G 202 -U 265 ; WX 609 ; N ccircumflex ; G 203 -U 266 ; WX 796 ; N Cdotaccent ; G 204 -U 267 ; WX 609 ; N cdotaccent ; G 205 -U 268 ; WX 796 ; N Ccaron ; G 206 -U 269 ; WX 609 ; N ccaron ; G 207 -U 270 ; WX 867 ; N Dcaron ; G 208 -U 271 ; WX 699 ; N dcaron ; G 209 -U 272 ; WX 874 ; N Dcroat ; G 210 -U 273 ; WX 699 ; N dmacron ; G 211 -U 274 ; WX 762 ; N Emacron ; G 212 -U 275 ; WX 636 ; N emacron ; G 213 -U 276 ; WX 762 ; N Ebreve ; G 214 -U 277 ; WX 636 ; N ebreve ; G 215 -U 278 ; WX 762 ; N Edotaccent ; G 216 -U 279 ; WX 636 ; N edotaccent ; G 217 -U 280 ; WX 762 ; N Eogonek ; G 218 -U 281 ; WX 636 ; N eogonek ; G 219 -U 282 ; WX 762 ; N Ecaron ; G 220 -U 283 ; WX 636 ; N ecaron ; G 221 -U 284 ; WX 854 ; N Gcircumflex ; G 222 -U 285 ; WX 699 ; N gcircumflex ; G 223 -U 286 ; WX 854 ; N Gbreve ; G 224 -U 287 ; WX 699 ; N gbreve ; G 225 -U 288 ; WX 854 ; N Gdotaccent ; G 226 -U 289 ; WX 699 ; N gdotaccent ; G 227 -U 290 ; WX 854 ; N Gcommaaccent ; G 228 -U 291 ; WX 699 ; N gcommaaccent ; G 229 -U 292 ; WX 945 ; N Hcircumflex ; G 230 -U 293 ; WX 727 ; N hcircumflex ; G 231 -U 294 ; WX 945 ; N Hbar ; G 232 -U 295 ; WX 727 ; N hbar ; G 233 -U 296 ; WX 468 ; N Itilde ; G 234 -U 297 ; WX 380 ; N itilde ; G 235 -U 298 ; WX 468 ; N Imacron ; G 236 -U 299 ; WX 380 ; N imacron ; G 237 -U 300 ; WX 468 ; N Ibreve ; G 238 -U 301 ; WX 380 ; N ibreve ; G 239 -U 302 ; WX 468 ; N Iogonek ; G 240 -U 303 ; WX 380 ; N iogonek ; G 241 -U 304 ; WX 468 ; N Idot ; G 242 -U 305 ; WX 380 ; N dotlessi ; G 243 -U 306 ; WX 942 ; N IJ ; G 244 -U 307 ; WX 751 ; N ij ; G 245 -U 308 ; WX 473 ; N Jcircumflex ; G 246 -U 309 ; WX 362 ; N jcircumflex ; G 247 -U 310 ; WX 869 ; N Kcommaaccent ; G 248 -U 311 ; WX 693 ; N kcommaaccent ; G 249 -U 312 ; WX 693 ; N kgreenlandic ; G 250 -U 313 ; WX 703 ; N Lacute ; G 251 -U 314 ; WX 380 ; N lacute ; G 252 -U 315 ; WX 703 ; N Lcommaaccent ; G 253 -U 316 ; WX 380 ; N lcommaaccent ; G 254 -U 317 ; WX 703 ; N Lcaron ; G 255 -U 318 ; WX 380 ; N lcaron ; G 256 -U 319 ; WX 703 ; N Ldot ; G 257 -U 320 ; WX 380 ; N ldot ; G 258 -U 321 ; WX 710 ; N Lslash ; G 259 -U 322 ; WX 385 ; N lslash ; G 260 -U 323 ; WX 914 ; N Nacute ; G 261 -U 324 ; WX 727 ; N nacute ; G 262 -U 325 ; WX 914 ; N Ncommaaccent ; G 263 -U 326 ; WX 727 ; N ncommaaccent ; G 264 -U 327 ; WX 914 ; N Ncaron ; G 265 -U 328 ; WX 727 ; N ncaron ; G 266 -U 329 ; WX 1008 ; N napostrophe ; G 267 -U 330 ; WX 872 ; N Eng ; G 268 -U 331 ; WX 727 ; N eng ; G 269 -U 332 ; WX 871 ; N Omacron ; G 270 -U 333 ; WX 667 ; N omacron ; G 271 -U 334 ; WX 871 ; N Obreve ; G 272 -U 335 ; WX 667 ; N obreve ; G 273 -U 336 ; WX 871 ; N Ohungarumlaut ; G 274 -U 337 ; WX 667 ; N ohungarumlaut ; G 275 -U 338 ; WX 1180 ; N OE ; G 276 -U 339 ; WX 1028 ; N oe ; G 277 -U 340 ; WX 831 ; N Racute ; G 278 -U 341 ; WX 527 ; N racute ; G 279 -U 342 ; WX 831 ; N Rcommaaccent ; G 280 -U 343 ; WX 527 ; N rcommaaccent ; G 281 -U 344 ; WX 831 ; N Rcaron ; G 282 -U 345 ; WX 527 ; N rcaron ; G 283 -U 346 ; WX 722 ; N Sacute ; G 284 -U 347 ; WX 563 ; N sacute ; G 285 -U 348 ; WX 722 ; N Scircumflex ; G 286 -U 349 ; WX 563 ; N scircumflex ; G 287 -U 350 ; WX 722 ; N Scedilla ; G 288 -U 351 ; WX 563 ; N scedilla ; G 289 -U 352 ; WX 722 ; N Scaron ; G 290 -U 353 ; WX 563 ; N scaron ; G 291 -U 354 ; WX 744 ; N Tcommaaccent ; G 292 -U 355 ; WX 462 ; N tcommaaccent ; G 293 -U 356 ; WX 744 ; N Tcaron ; G 294 -U 357 ; WX 462 ; N tcaron ; G 295 -U 358 ; WX 744 ; N Tbar ; G 296 -U 359 ; WX 462 ; N tbar ; G 297 -U 360 ; WX 872 ; N Utilde ; G 298 -U 361 ; WX 727 ; N utilde ; G 299 -U 362 ; WX 872 ; N Umacron ; G 300 -U 363 ; WX 727 ; N umacron ; G 301 -U 364 ; WX 872 ; N Ubreve ; G 302 -U 365 ; WX 727 ; N ubreve ; G 303 -U 366 ; WX 872 ; N Uring ; G 304 -U 367 ; WX 727 ; N uring ; G 305 -U 368 ; WX 872 ; N Uhungarumlaut ; G 306 -U 369 ; WX 727 ; N uhungarumlaut ; G 307 -U 370 ; WX 872 ; N Uogonek ; G 308 -U 371 ; WX 727 ; N uogonek ; G 309 -U 372 ; WX 1123 ; N Wcircumflex ; G 310 -U 373 ; WX 861 ; N wcircumflex ; G 311 -U 374 ; WX 714 ; N Ycircumflex ; G 312 -U 375 ; WX 581 ; N ycircumflex ; G 313 -U 376 ; WX 714 ; N Ydieresis ; G 314 -U 377 ; WX 730 ; N Zacute ; G 315 -U 378 ; WX 568 ; N zacute ; G 316 -U 379 ; WX 730 ; N Zdotaccent ; G 317 -U 380 ; WX 568 ; N zdotaccent ; G 318 -U 381 ; WX 730 ; N Zcaron ; G 319 -U 382 ; WX 568 ; N zcaron ; G 320 -U 383 ; WX 430 ; N longs ; G 321 -U 384 ; WX 699 ; N uni0180 ; G 322 -U 385 ; WX 845 ; N uni0181 ; G 323 -U 386 ; WX 854 ; N uni0182 ; G 324 -U 387 ; WX 699 ; N uni0183 ; G 325 -U 388 ; WX 854 ; N uni0184 ; G 326 -U 389 ; WX 699 ; N uni0185 ; G 327 -U 390 ; WX 796 ; N uni0186 ; G 328 -U 391 ; WX 796 ; N uni0187 ; G 329 -U 392 ; WX 609 ; N uni0188 ; G 330 -U 393 ; WX 874 ; N uni0189 ; G 331 -U 394 ; WX 867 ; N uni018A ; G 332 -U 395 ; WX 854 ; N uni018B ; G 333 -U 396 ; WX 699 ; N uni018C ; G 334 -U 397 ; WX 667 ; N uni018D ; G 335 -U 398 ; WX 762 ; N uni018E ; G 336 -U 399 ; WX 871 ; N uni018F ; G 337 -U 400 ; WX 721 ; N uni0190 ; G 338 -U 401 ; WX 710 ; N uni0191 ; G 339 -U 402 ; WX 430 ; N florin ; G 340 -U 403 ; WX 854 ; N uni0193 ; G 341 -U 404 ; WX 771 ; N uni0194 ; G 342 -U 405 ; WX 1043 ; N uni0195 ; G 343 -U 406 ; WX 468 ; N uni0196 ; G 344 -U 407 ; WX 468 ; N uni0197 ; G 345 -U 408 ; WX 869 ; N uni0198 ; G 346 -U 409 ; WX 693 ; N uni0199 ; G 347 -U 410 ; WX 380 ; N uni019A ; G 348 -U 411 ; WX 701 ; N uni019B ; G 349 -U 412 ; WX 1058 ; N uni019C ; G 350 -U 413 ; WX 914 ; N uni019D ; G 351 -U 414 ; WX 727 ; N uni019E ; G 352 -U 415 ; WX 871 ; N uni019F ; G 353 -U 416 ; WX 871 ; N Ohorn ; G 354 -U 417 ; WX 667 ; N ohorn ; G 355 -U 418 ; WX 1200 ; N uni01A2 ; G 356 -U 419 ; WX 943 ; N uni01A3 ; G 357 -U 420 ; WX 752 ; N uni01A4 ; G 358 -U 421 ; WX 699 ; N uni01A5 ; G 359 -U 422 ; WX 831 ; N uni01A6 ; G 360 -U 423 ; WX 722 ; N uni01A7 ; G 361 -U 424 ; WX 563 ; N uni01A8 ; G 362 -U 425 ; WX 707 ; N uni01A9 ; G 363 -U 426 ; WX 331 ; N uni01AA ; G 364 -U 427 ; WX 462 ; N uni01AB ; G 365 -U 428 ; WX 744 ; N uni01AC ; G 366 -U 429 ; WX 462 ; N uni01AD ; G 367 -U 430 ; WX 744 ; N uni01AE ; G 368 -U 431 ; WX 872 ; N Uhorn ; G 369 -U 432 ; WX 727 ; N uhorn ; G 370 -U 433 ; WX 890 ; N uni01B1 ; G 371 -U 434 ; WX 890 ; N uni01B2 ; G 372 -U 435 ; WX 714 ; N uni01B3 ; G 373 -U 436 ; WX 708 ; N uni01B4 ; G 374 -U 437 ; WX 730 ; N uni01B5 ; G 375 -U 438 ; WX 568 ; N uni01B6 ; G 376 -U 439 ; WX 657 ; N uni01B7 ; G 377 -U 440 ; WX 657 ; N uni01B8 ; G 378 -U 441 ; WX 657 ; N uni01B9 ; G 379 -U 442 ; WX 657 ; N uni01BA ; G 380 -U 443 ; WX 696 ; N uni01BB ; G 381 -U 444 ; WX 754 ; N uni01BC ; G 382 -U 445 ; WX 568 ; N uni01BD ; G 383 -U 446 ; WX 536 ; N uni01BE ; G 384 -U 447 ; WX 716 ; N uni01BF ; G 385 -U 448 ; WX 295 ; N uni01C0 ; G 386 -U 449 ; WX 492 ; N uni01C1 ; G 387 -U 450 ; WX 459 ; N uni01C2 ; G 388 -U 451 ; WX 295 ; N uni01C3 ; G 389 -U 452 ; WX 1597 ; N uni01C4 ; G 390 -U 453 ; WX 1435 ; N uni01C5 ; G 391 -U 454 ; WX 1267 ; N uni01C6 ; G 392 -U 455 ; WX 1176 ; N uni01C7 ; G 393 -U 456 ; WX 1065 ; N uni01C8 ; G 394 -U 457 ; WX 742 ; N uni01C9 ; G 395 -U 458 ; WX 1387 ; N uni01CA ; G 396 -U 459 ; WX 1276 ; N uni01CB ; G 397 -U 460 ; WX 1089 ; N uni01CC ; G 398 -U 461 ; WX 776 ; N uni01CD ; G 399 -U 462 ; WX 648 ; N uni01CE ; G 400 -U 463 ; WX 468 ; N uni01CF ; G 401 -U 464 ; WX 380 ; N uni01D0 ; G 402 -U 465 ; WX 871 ; N uni01D1 ; G 403 -U 466 ; WX 667 ; N uni01D2 ; G 404 -U 467 ; WX 872 ; N uni01D3 ; G 405 -U 468 ; WX 727 ; N uni01D4 ; G 406 -U 469 ; WX 872 ; N uni01D5 ; G 407 -U 470 ; WX 727 ; N uni01D6 ; G 408 -U 471 ; WX 872 ; N uni01D7 ; G 409 -U 472 ; WX 727 ; N uni01D8 ; G 410 -U 473 ; WX 872 ; N uni01D9 ; G 411 -U 474 ; WX 727 ; N uni01DA ; G 412 -U 475 ; WX 872 ; N uni01DB ; G 413 -U 476 ; WX 727 ; N uni01DC ; G 414 -U 477 ; WX 636 ; N uni01DD ; G 415 -U 478 ; WX 776 ; N uni01DE ; G 416 -U 479 ; WX 648 ; N uni01DF ; G 417 -U 480 ; WX 776 ; N uni01E0 ; G 418 -U 481 ; WX 648 ; N uni01E1 ; G 419 -U 482 ; WX 1034 ; N uni01E2 ; G 420 -U 483 ; WX 975 ; N uni01E3 ; G 421 -U 484 ; WX 896 ; N uni01E4 ; G 422 -U 485 ; WX 699 ; N uni01E5 ; G 423 -U 486 ; WX 854 ; N Gcaron ; G 424 -U 487 ; WX 699 ; N gcaron ; G 425 -U 488 ; WX 869 ; N uni01E8 ; G 426 -U 489 ; WX 693 ; N uni01E9 ; G 427 -U 490 ; WX 871 ; N uni01EA ; G 428 -U 491 ; WX 667 ; N uni01EB ; G 429 -U 492 ; WX 871 ; N uni01EC ; G 430 -U 493 ; WX 667 ; N uni01ED ; G 431 -U 494 ; WX 657 ; N uni01EE ; G 432 -U 495 ; WX 568 ; N uni01EF ; G 433 -U 496 ; WX 380 ; N uni01F0 ; G 434 -U 497 ; WX 1597 ; N uni01F1 ; G 435 -U 498 ; WX 1435 ; N uni01F2 ; G 436 -U 499 ; WX 1267 ; N uni01F3 ; G 437 -U 500 ; WX 854 ; N uni01F4 ; G 438 -U 501 ; WX 699 ; N uni01F5 ; G 439 -U 502 ; WX 1221 ; N uni01F6 ; G 440 -U 503 ; WX 787 ; N uni01F7 ; G 441 -U 504 ; WX 914 ; N uni01F8 ; G 442 -U 505 ; WX 727 ; N uni01F9 ; G 443 -U 506 ; WX 776 ; N Aringacute ; G 444 -U 507 ; WX 648 ; N aringacute ; G 445 -U 508 ; WX 1034 ; N AEacute ; G 446 -U 509 ; WX 975 ; N aeacute ; G 447 -U 510 ; WX 871 ; N Oslashacute ; G 448 -U 511 ; WX 667 ; N oslashacute ; G 449 -U 512 ; WX 776 ; N uni0200 ; G 450 -U 513 ; WX 648 ; N uni0201 ; G 451 -U 514 ; WX 776 ; N uni0202 ; G 452 -U 515 ; WX 648 ; N uni0203 ; G 453 -U 516 ; WX 762 ; N uni0204 ; G 454 -U 517 ; WX 636 ; N uni0205 ; G 455 -U 518 ; WX 762 ; N uni0206 ; G 456 -U 519 ; WX 636 ; N uni0207 ; G 457 -U 520 ; WX 468 ; N uni0208 ; G 458 -U 521 ; WX 380 ; N uni0209 ; G 459 -U 522 ; WX 468 ; N uni020A ; G 460 -U 523 ; WX 380 ; N uni020B ; G 461 -U 524 ; WX 871 ; N uni020C ; G 462 -U 525 ; WX 667 ; N uni020D ; G 463 -U 526 ; WX 871 ; N uni020E ; G 464 -U 527 ; WX 667 ; N uni020F ; G 465 -U 528 ; WX 831 ; N uni0210 ; G 466 -U 529 ; WX 527 ; N uni0211 ; G 467 -U 530 ; WX 831 ; N uni0212 ; G 468 -U 531 ; WX 527 ; N uni0213 ; G 469 -U 532 ; WX 872 ; N uni0214 ; G 470 -U 533 ; WX 727 ; N uni0215 ; G 471 -U 534 ; WX 872 ; N uni0216 ; G 472 -U 535 ; WX 727 ; N uni0217 ; G 473 -U 536 ; WX 722 ; N Scommaaccent ; G 474 -U 537 ; WX 563 ; N scommaaccent ; G 475 -U 538 ; WX 744 ; N uni021A ; G 476 -U 539 ; WX 462 ; N uni021B ; G 477 -U 540 ; WX 690 ; N uni021C ; G 478 -U 541 ; WX 607 ; N uni021D ; G 479 -U 542 ; WX 945 ; N uni021E ; G 480 -U 543 ; WX 727 ; N uni021F ; G 481 -U 544 ; WX 872 ; N uni0220 ; G 482 -U 545 ; WX 791 ; N uni0221 ; G 483 -U 546 ; WX 703 ; N uni0222 ; G 484 -U 547 ; WX 616 ; N uni0223 ; G 485 -U 548 ; WX 730 ; N uni0224 ; G 486 -U 549 ; WX 568 ; N uni0225 ; G 487 -U 550 ; WX 776 ; N uni0226 ; G 488 -U 551 ; WX 648 ; N uni0227 ; G 489 -U 552 ; WX 762 ; N uni0228 ; G 490 -U 553 ; WX 636 ; N uni0229 ; G 491 -U 554 ; WX 871 ; N uni022A ; G 492 -U 555 ; WX 667 ; N uni022B ; G 493 -U 556 ; WX 871 ; N uni022C ; G 494 -U 557 ; WX 667 ; N uni022D ; G 495 -U 558 ; WX 871 ; N uni022E ; G 496 -U 559 ; WX 667 ; N uni022F ; G 497 -U 560 ; WX 871 ; N uni0230 ; G 498 -U 561 ; WX 667 ; N uni0231 ; G 499 -U 562 ; WX 714 ; N uni0232 ; G 500 -U 563 ; WX 581 ; N uni0233 ; G 501 -U 564 ; WX 573 ; N uni0234 ; G 502 -U 565 ; WX 922 ; N uni0235 ; G 503 -U 566 ; WX 564 ; N uni0236 ; G 504 -U 567 ; WX 362 ; N dotlessj ; G 505 -U 568 ; WX 1031 ; N uni0238 ; G 506 -U 569 ; WX 1031 ; N uni0239 ; G 507 -U 570 ; WX 776 ; N uni023A ; G 508 -U 571 ; WX 796 ; N uni023B ; G 509 -U 572 ; WX 609 ; N uni023C ; G 510 -U 573 ; WX 703 ; N uni023D ; G 511 -U 574 ; WX 744 ; N uni023E ; G 512 -U 575 ; WX 563 ; N uni023F ; G 513 -U 576 ; WX 568 ; N uni0240 ; G 514 -U 577 ; WX 660 ; N uni0241 ; G 515 -U 578 ; WX 547 ; N uni0242 ; G 516 -U 579 ; WX 845 ; N uni0243 ; G 517 -U 580 ; WX 872 ; N uni0244 ; G 518 -U 581 ; WX 776 ; N uni0245 ; G 519 -U 582 ; WX 762 ; N uni0246 ; G 520 -U 583 ; WX 636 ; N uni0247 ; G 521 -U 584 ; WX 473 ; N uni0248 ; G 522 -U 585 ; WX 387 ; N uni0249 ; G 523 -U 586 ; WX 848 ; N uni024A ; G 524 -U 587 ; WX 699 ; N uni024B ; G 525 -U 588 ; WX 831 ; N uni024C ; G 526 -U 589 ; WX 527 ; N uni024D ; G 527 -U 590 ; WX 714 ; N uni024E ; G 528 -U 591 ; WX 581 ; N uni024F ; G 529 -U 592 ; WX 648 ; N uni0250 ; G 530 -U 593 ; WX 699 ; N uni0251 ; G 531 -U 594 ; WX 699 ; N uni0252 ; G 532 -U 595 ; WX 699 ; N uni0253 ; G 533 -U 596 ; WX 609 ; N uni0254 ; G 534 -U 597 ; WX 609 ; N uni0255 ; G 535 -U 598 ; WX 699 ; N uni0256 ; G 536 -U 599 ; WX 730 ; N uni0257 ; G 537 -U 600 ; WX 636 ; N uni0258 ; G 538 -U 601 ; WX 636 ; N uni0259 ; G 539 -U 602 ; WX 907 ; N uni025A ; G 540 -U 603 ; WX 608 ; N uni025B ; G 541 -U 604 ; WX 562 ; N uni025C ; G 542 -U 605 ; WX 907 ; N uni025D ; G 543 -U 606 ; WX 714 ; N uni025E ; G 544 -U 607 ; WX 387 ; N uni025F ; G 545 -U 608 ; WX 699 ; N uni0260 ; G 546 -U 609 ; WX 699 ; N uni0261 ; G 547 -U 610 ; WX 638 ; N uni0262 ; G 548 -U 611 ; WX 601 ; N uni0263 ; G 549 -U 612 ; WX 627 ; N uni0264 ; G 550 -U 613 ; WX 727 ; N uni0265 ; G 551 -U 614 ; WX 727 ; N uni0266 ; G 552 -U 615 ; WX 727 ; N uni0267 ; G 553 -U 616 ; WX 380 ; N uni0268 ; G 554 -U 617 ; WX 380 ; N uni0269 ; G 555 -U 618 ; WX 380 ; N uni026A ; G 556 -U 619 ; WX 409 ; N uni026B ; G 557 -U 620 ; WX 514 ; N uni026C ; G 558 -U 621 ; WX 380 ; N uni026D ; G 559 -U 622 ; WX 795 ; N uni026E ; G 560 -U 623 ; WX 1058 ; N uni026F ; G 561 -U 624 ; WX 1058 ; N uni0270 ; G 562 -U 625 ; WX 1058 ; N uni0271 ; G 563 -U 626 ; WX 727 ; N uni0272 ; G 564 -U 627 ; WX 727 ; N uni0273 ; G 565 -U 628 ; WX 712 ; N uni0274 ; G 566 -U 629 ; WX 667 ; N uni0275 ; G 567 -U 630 ; WX 1061 ; N uni0276 ; G 568 -U 631 ; WX 944 ; N uni0277 ; G 569 -U 632 ; WX 797 ; N uni0278 ; G 570 -U 633 ; WX 571 ; N uni0279 ; G 571 -U 634 ; WX 571 ; N uni027A ; G 572 -U 635 ; WX 571 ; N uni027B ; G 573 -U 636 ; WX 527 ; N uni027C ; G 574 -U 637 ; WX 527 ; N uni027D ; G 575 -U 638 ; WX 452 ; N uni027E ; G 576 -U 639 ; WX 487 ; N uni027F ; G 577 -U 640 ; WX 694 ; N uni0280 ; G 578 -U 641 ; WX 694 ; N uni0281 ; G 579 -U 642 ; WX 563 ; N uni0282 ; G 580 -U 643 ; WX 331 ; N uni0283 ; G 581 -U 644 ; WX 430 ; N uni0284 ; G 582 -U 645 ; WX 540 ; N uni0285 ; G 583 -U 646 ; WX 331 ; N uni0286 ; G 584 -U 647 ; WX 492 ; N uni0287 ; G 585 -U 648 ; WX 462 ; N uni0288 ; G 586 -U 649 ; WX 727 ; N uni0289 ; G 587 -U 650 ; WX 679 ; N uni028A ; G 588 -U 651 ; WX 694 ; N uni028B ; G 589 -U 652 ; WX 641 ; N uni028C ; G 590 -U 653 ; WX 907 ; N uni028D ; G 591 -U 654 ; WX 635 ; N uni028E ; G 592 -U 655 ; WX 727 ; N uni028F ; G 593 -U 656 ; WX 568 ; N uni0290 ; G 594 -U 657 ; WX 568 ; N uni0291 ; G 595 -U 658 ; WX 568 ; N uni0292 ; G 596 -U 659 ; WX 568 ; N uni0293 ; G 597 -U 660 ; WX 551 ; N uni0294 ; G 598 -U 661 ; WX 551 ; N uni0295 ; G 599 -U 662 ; WX 551 ; N uni0296 ; G 600 -U 663 ; WX 545 ; N uni0297 ; G 601 -U 664 ; WX 871 ; N uni0298 ; G 602 -U 665 ; WX 695 ; N uni0299 ; G 603 -U 666 ; WX 714 ; N uni029A ; G 604 -U 667 ; WX 689 ; N uni029B ; G 605 -U 668 ; WX 732 ; N uni029C ; G 606 -U 669 ; WX 384 ; N uni029D ; G 607 -U 670 ; WX 740 ; N uni029E ; G 608 -U 671 ; WX 617 ; N uni029F ; G 609 -U 672 ; WX 699 ; N uni02A0 ; G 610 -U 673 ; WX 551 ; N uni02A1 ; G 611 -U 674 ; WX 551 ; N uni02A2 ; G 612 -U 675 ; WX 1117 ; N uni02A3 ; G 613 -U 676 ; WX 1179 ; N uni02A4 ; G 614 -U 677 ; WX 1117 ; N uni02A5 ; G 615 -U 678 ; WX 938 ; N uni02A6 ; G 616 -U 679 ; WX 715 ; N uni02A7 ; G 617 -U 680 ; WX 946 ; N uni02A8 ; G 618 -U 681 ; WX 1039 ; N uni02A9 ; G 619 -U 682 ; WX 870 ; N uni02AA ; G 620 -U 683 ; WX 795 ; N uni02AB ; G 621 -U 684 ; WX 662 ; N uni02AC ; G 622 -U 685 ; WX 443 ; N uni02AD ; G 623 -U 686 ; WX 613 ; N uni02AE ; G 624 -U 687 ; WX 717 ; N uni02AF ; G 625 -U 688 ; WX 521 ; N uni02B0 ; G 626 -U 689 ; WX 519 ; N uni02B1 ; G 627 -U 690 ; WX 313 ; N uni02B2 ; G 628 -U 691 ; WX 414 ; N uni02B3 ; G 629 -U 692 ; WX 414 ; N uni02B4 ; G 630 -U 693 ; WX 480 ; N uni02B5 ; G 631 -U 694 ; WX 527 ; N uni02B6 ; G 632 -U 695 ; WX 662 ; N uni02B7 ; G 633 -U 696 ; WX 485 ; N uni02B8 ; G 634 -U 697 ; WX 302 ; N uni02B9 ; G 635 -U 698 ; WX 521 ; N uni02BA ; G 636 -U 699 ; WX 348 ; N uni02BB ; G 637 -U 700 ; WX 348 ; N uni02BC ; G 638 -U 701 ; WX 348 ; N uni02BD ; G 639 -U 702 ; WX 366 ; N uni02BE ; G 640 -U 703 ; WX 366 ; N uni02BF ; G 641 -U 704 ; WX 313 ; N uni02C0 ; G 642 -U 705 ; WX 313 ; N uni02C1 ; G 643 -U 706 ; WX 500 ; N uni02C2 ; G 644 -U 707 ; WX 500 ; N uni02C3 ; G 645 -U 708 ; WX 500 ; N uni02C4 ; G 646 -U 709 ; WX 500 ; N uni02C5 ; G 647 -U 710 ; WX 500 ; N circumflex ; G 648 -U 711 ; WX 500 ; N caron ; G 649 -U 712 ; WX 282 ; N uni02C8 ; G 650 -U 713 ; WX 500 ; N uni02C9 ; G 651 -U 714 ; WX 500 ; N uni02CA ; G 652 -U 715 ; WX 500 ; N uni02CB ; G 653 -U 716 ; WX 282 ; N uni02CC ; G 654 -U 717 ; WX 500 ; N uni02CD ; G 655 -U 720 ; WX 369 ; N uni02D0 ; G 656 -U 721 ; WX 369 ; N uni02D1 ; G 657 -U 722 ; WX 366 ; N uni02D2 ; G 658 -U 723 ; WX 366 ; N uni02D3 ; G 659 -U 726 ; WX 392 ; N uni02D6 ; G 660 -U 727 ; WX 392 ; N uni02D7 ; G 661 -U 728 ; WX 500 ; N breve ; G 662 -U 729 ; WX 500 ; N dotaccent ; G 663 -U 730 ; WX 500 ; N ring ; G 664 -U 731 ; WX 500 ; N ogonek ; G 665 -U 732 ; WX 500 ; N tilde ; G 666 -U 733 ; WX 500 ; N hungarumlaut ; G 667 -U 734 ; WX 417 ; N uni02DE ; G 668 -U 736 ; WX 378 ; N uni02E0 ; G 669 -U 737 ; WX 292 ; N uni02E1 ; G 670 -U 738 ; WX 395 ; N uni02E2 ; G 671 -U 739 ; WX 475 ; N uni02E3 ; G 672 -U 740 ; WX 313 ; N uni02E4 ; G 673 -U 741 ; WX 500 ; N uni02E5 ; G 674 -U 742 ; WX 500 ; N uni02E6 ; G 675 -U 743 ; WX 500 ; N uni02E7 ; G 676 -U 744 ; WX 500 ; N uni02E8 ; G 677 -U 745 ; WX 500 ; N uni02E9 ; G 678 -U 748 ; WX 500 ; N uni02EC ; G 679 -U 750 ; WX 553 ; N uni02EE ; G 680 -U 751 ; WX 500 ; N uni02EF ; G 681 -U 752 ; WX 500 ; N uni02F0 ; G 682 -U 755 ; WX 500 ; N uni02F3 ; G 683 -U 759 ; WX 500 ; N uni02F7 ; G 684 -U 768 ; WX 0 ; N gravecomb ; G 685 -U 769 ; WX 0 ; N acutecomb ; G 686 -U 770 ; WX 0 ; N uni0302 ; G 687 -U 771 ; WX 0 ; N tildecomb ; G 688 -U 772 ; WX 0 ; N uni0304 ; G 689 -U 773 ; WX 0 ; N uni0305 ; G 690 -U 774 ; WX 0 ; N uni0306 ; G 691 -U 775 ; WX 0 ; N uni0307 ; G 692 -U 776 ; WX 0 ; N uni0308 ; G 693 -U 777 ; WX 0 ; N hookabovecomb ; G 694 -U 778 ; WX 0 ; N uni030A ; G 695 -U 779 ; WX 0 ; N uni030B ; G 696 -U 780 ; WX 0 ; N uni030C ; G 697 -U 781 ; WX 0 ; N uni030D ; G 698 -U 782 ; WX 0 ; N uni030E ; G 699 -U 783 ; WX 0 ; N uni030F ; G 700 -U 784 ; WX 0 ; N uni0310 ; G 701 -U 785 ; WX 0 ; N uni0311 ; G 702 -U 786 ; WX 0 ; N uni0312 ; G 703 -U 787 ; WX 0 ; N uni0313 ; G 704 -U 788 ; WX 0 ; N uni0314 ; G 705 -U 789 ; WX 0 ; N uni0315 ; G 706 -U 790 ; WX 0 ; N uni0316 ; G 707 -U 791 ; WX 0 ; N uni0317 ; G 708 -U 792 ; WX 0 ; N uni0318 ; G 709 -U 793 ; WX 0 ; N uni0319 ; G 710 -U 794 ; WX 0 ; N uni031A ; G 711 -U 795 ; WX 0 ; N uni031B ; G 712 -U 796 ; WX 0 ; N uni031C ; G 713 -U 797 ; WX 0 ; N uni031D ; G 714 -U 798 ; WX 0 ; N uni031E ; G 715 -U 799 ; WX 0 ; N uni031F ; G 716 -U 800 ; WX 0 ; N uni0320 ; G 717 -U 801 ; WX 0 ; N uni0321 ; G 718 -U 802 ; WX 0 ; N uni0322 ; G 719 -U 803 ; WX 0 ; N dotbelowcomb ; G 720 -U 804 ; WX 0 ; N uni0324 ; G 721 -U 805 ; WX 0 ; N uni0325 ; G 722 -U 806 ; WX 0 ; N uni0326 ; G 723 -U 807 ; WX 0 ; N uni0327 ; G 724 -U 808 ; WX 0 ; N uni0328 ; G 725 -U 809 ; WX 0 ; N uni0329 ; G 726 -U 810 ; WX 0 ; N uni032A ; G 727 -U 811 ; WX 0 ; N uni032B ; G 728 -U 812 ; WX 0 ; N uni032C ; G 729 -U 813 ; WX 0 ; N uni032D ; G 730 -U 814 ; WX 0 ; N uni032E ; G 731 -U 815 ; WX 0 ; N uni032F ; G 732 -U 816 ; WX 0 ; N uni0330 ; G 733 -U 817 ; WX 0 ; N uni0331 ; G 734 -U 818 ; WX 0 ; N uni0332 ; G 735 -U 819 ; WX 0 ; N uni0333 ; G 736 -U 820 ; WX 0 ; N uni0334 ; G 737 -U 821 ; WX 0 ; N uni0335 ; G 738 -U 822 ; WX 0 ; N uni0336 ; G 739 -U 823 ; WX 0 ; N uni0337 ; G 740 -U 824 ; WX 0 ; N uni0338 ; G 741 -U 825 ; WX 0 ; N uni0339 ; G 742 -U 826 ; WX 0 ; N uni033A ; G 743 -U 827 ; WX 0 ; N uni033B ; G 744 -U 828 ; WX 0 ; N uni033C ; G 745 -U 829 ; WX 0 ; N uni033D ; G 746 -U 830 ; WX 0 ; N uni033E ; G 747 -U 831 ; WX 0 ; N uni033F ; G 748 -U 835 ; WX 0 ; N uni0343 ; G 749 -U 847 ; WX 0 ; N uni034F ; G 750 -U 856 ; WX 0 ; N uni0358 ; G 751 -U 864 ; WX 0 ; N uni0360 ; G 752 -U 865 ; WX 0 ; N uni0361 ; G 753 -U 880 ; WX 779 ; N uni0370 ; G 754 -U 881 ; WX 576 ; N uni0371 ; G 755 -U 882 ; WX 803 ; N uni0372 ; G 756 -U 883 ; WX 777 ; N uni0373 ; G 757 -U 884 ; WX 302 ; N uni0374 ; G 758 -U 885 ; WX 302 ; N uni0375 ; G 759 -U 886 ; WX 963 ; N uni0376 ; G 760 -U 887 ; WX 737 ; N uni0377 ; G 761 -U 890 ; WX 500 ; N uni037A ; G 762 -U 891 ; WX 609 ; N uni037B ; G 763 -U 892 ; WX 609 ; N uni037C ; G 764 -U 893 ; WX 609 ; N uni037D ; G 765 -U 894 ; WX 369 ; N uni037E ; G 766 -U 895 ; WX 473 ; N uni037F ; G 767 -U 900 ; WX 500 ; N tonos ; G 768 -U 901 ; WX 500 ; N dieresistonos ; G 769 -U 902 ; WX 776 ; N Alphatonos ; G 770 -U 903 ; WX 348 ; N anoteleia ; G 771 -U 904 ; WX 947 ; N Epsilontonos ; G 772 -U 905 ; WX 1118 ; N Etatonos ; G 773 -U 906 ; WX 662 ; N Iotatonos ; G 774 -U 908 ; WX 887 ; N Omicrontonos ; G 775 -U 910 ; WX 953 ; N Upsilontonos ; G 776 -U 911 ; WX 911 ; N Omegatonos ; G 777 -U 912 ; WX 484 ; N iotadieresistonos ; G 778 -U 913 ; WX 776 ; N Alpha ; G 779 -U 914 ; WX 845 ; N Beta ; G 780 -U 915 ; WX 710 ; N Gamma ; G 781 -U 916 ; WX 776 ; N uni0394 ; G 782 -U 917 ; WX 762 ; N Epsilon ; G 783 -U 918 ; WX 730 ; N Zeta ; G 784 -U 919 ; WX 945 ; N Eta ; G 785 -U 920 ; WX 871 ; N Theta ; G 786 -U 921 ; WX 468 ; N Iota ; G 787 -U 922 ; WX 869 ; N Kappa ; G 788 -U 923 ; WX 776 ; N Lambda ; G 789 -U 924 ; WX 1107 ; N Mu ; G 790 -U 925 ; WX 914 ; N Nu ; G 791 -U 926 ; WX 704 ; N Xi ; G 792 -U 927 ; WX 871 ; N Omicron ; G 793 -U 928 ; WX 944 ; N Pi ; G 794 -U 929 ; WX 752 ; N Rho ; G 795 -U 931 ; WX 707 ; N Sigma ; G 796 -U 932 ; WX 744 ; N Tau ; G 797 -U 933 ; WX 714 ; N Upsilon ; G 798 -U 934 ; WX 871 ; N Phi ; G 799 -U 935 ; WX 776 ; N Chi ; G 800 -U 936 ; WX 913 ; N Psi ; G 801 -U 937 ; WX 890 ; N Omega ; G 802 -U 938 ; WX 468 ; N Iotadieresis ; G 803 -U 939 ; WX 714 ; N Upsilondieresis ; G 804 -U 940 ; WX 770 ; N alphatonos ; G 805 -U 941 ; WX 608 ; N epsilontonos ; G 806 -U 942 ; WX 727 ; N etatonos ; G 807 -U 943 ; WX 484 ; N iotatonos ; G 808 -U 944 ; WX 694 ; N upsilondieresistonos ; G 809 -U 945 ; WX 770 ; N alpha ; G 810 -U 946 ; WX 664 ; N beta ; G 811 -U 947 ; WX 660 ; N gamma ; G 812 -U 948 ; WX 667 ; N delta ; G 813 -U 949 ; WX 608 ; N epsilon ; G 814 -U 950 ; WX 592 ; N zeta ; G 815 -U 951 ; WX 727 ; N eta ; G 816 -U 952 ; WX 667 ; N theta ; G 817 -U 953 ; WX 484 ; N iota ; G 818 -U 954 ; WX 750 ; N kappa ; G 819 -U 955 ; WX 701 ; N lambda ; G 820 -U 956 ; WX 732 ; N uni03BC ; G 821 -U 957 ; WX 694 ; N nu ; G 822 -U 958 ; WX 592 ; N xi ; G 823 -U 959 ; WX 667 ; N omicron ; G 824 -U 960 ; WX 732 ; N pi ; G 825 -U 961 ; WX 665 ; N rho ; G 826 -U 962 ; WX 609 ; N sigma1 ; G 827 -U 963 ; WX 737 ; N sigma ; G 828 -U 964 ; WX 673 ; N tau ; G 829 -U 965 ; WX 694 ; N upsilon ; G 830 -U 966 ; WX 905 ; N phi ; G 831 -U 967 ; WX 658 ; N chi ; G 832 -U 968 ; WX 941 ; N psi ; G 833 -U 969 ; WX 952 ; N omega ; G 834 -U 970 ; WX 484 ; N iotadieresis ; G 835 -U 971 ; WX 694 ; N upsilondieresis ; G 836 -U 972 ; WX 667 ; N omicrontonos ; G 837 -U 973 ; WX 694 ; N upsilontonos ; G 838 -U 974 ; WX 952 ; N omegatonos ; G 839 -U 975 ; WX 869 ; N uni03CF ; G 840 -U 976 ; WX 667 ; N uni03D0 ; G 841 -U 977 ; WX 849 ; N theta1 ; G 842 -U 978 ; WX 764 ; N Upsilon1 ; G 843 -U 979 ; WX 969 ; N uni03D3 ; G 844 -U 980 ; WX 764 ; N uni03D4 ; G 845 -U 981 ; WX 941 ; N phi1 ; G 846 -U 982 ; WX 952 ; N omega1 ; G 847 -U 983 ; WX 655 ; N uni03D7 ; G 848 -U 984 ; WX 871 ; N uni03D8 ; G 849 -U 985 ; WX 667 ; N uni03D9 ; G 850 -U 986 ; WX 796 ; N uni03DA ; G 851 -U 987 ; WX 609 ; N uni03DB ; G 852 -U 988 ; WX 710 ; N uni03DC ; G 853 -U 989 ; WX 527 ; N uni03DD ; G 854 -U 990 ; WX 590 ; N uni03DE ; G 855 -U 991 ; WX 660 ; N uni03DF ; G 856 -U 992 ; WX 796 ; N uni03E0 ; G 857 -U 993 ; WX 667 ; N uni03E1 ; G 858 -U 1008 ; WX 655 ; N uni03F0 ; G 859 -U 1009 ; WX 665 ; N uni03F1 ; G 860 -U 1010 ; WX 609 ; N uni03F2 ; G 861 -U 1011 ; WX 362 ; N uni03F3 ; G 862 -U 1012 ; WX 871 ; N uni03F4 ; G 863 -U 1013 ; WX 609 ; N uni03F5 ; G 864 -U 1014 ; WX 609 ; N uni03F6 ; G 865 -U 1015 ; WX 757 ; N uni03F7 ; G 866 -U 1016 ; WX 699 ; N uni03F8 ; G 867 -U 1017 ; WX 796 ; N uni03F9 ; G 868 -U 1018 ; WX 1107 ; N uni03FA ; G 869 -U 1019 ; WX 860 ; N uni03FB ; G 870 -U 1020 ; WX 692 ; N uni03FC ; G 871 -U 1021 ; WX 796 ; N uni03FD ; G 872 -U 1022 ; WX 796 ; N uni03FE ; G 873 -U 1023 ; WX 796 ; N uni03FF ; G 874 -U 1024 ; WX 762 ; N uni0400 ; G 875 -U 1025 ; WX 762 ; N uni0401 ; G 876 -U 1026 ; WX 901 ; N uni0402 ; G 877 -U 1027 ; WX 690 ; N uni0403 ; G 878 -U 1028 ; WX 795 ; N uni0404 ; G 879 -U 1029 ; WX 722 ; N uni0405 ; G 880 -U 1030 ; WX 468 ; N uni0406 ; G 881 -U 1031 ; WX 468 ; N uni0407 ; G 882 -U 1032 ; WX 473 ; N uni0408 ; G 883 -U 1033 ; WX 1202 ; N uni0409 ; G 884 -U 1034 ; WX 1262 ; N uni040A ; G 885 -U 1035 ; WX 963 ; N uni040B ; G 886 -U 1036 ; WX 910 ; N uni040C ; G 887 -U 1037 ; WX 945 ; N uni040D ; G 888 -U 1038 ; WX 812 ; N uni040E ; G 889 -U 1039 ; WX 945 ; N uni040F ; G 890 -U 1040 ; WX 814 ; N uni0410 ; G 891 -U 1041 ; WX 854 ; N uni0411 ; G 892 -U 1042 ; WX 845 ; N uni0412 ; G 893 -U 1043 ; WX 690 ; N uni0413 ; G 894 -U 1044 ; WX 889 ; N uni0414 ; G 895 -U 1045 ; WX 762 ; N uni0415 ; G 896 -U 1046 ; WX 1312 ; N uni0416 ; G 897 -U 1047 ; WX 721 ; N uni0417 ; G 898 -U 1048 ; WX 945 ; N uni0418 ; G 899 -U 1049 ; WX 945 ; N uni0419 ; G 900 -U 1050 ; WX 910 ; N uni041A ; G 901 -U 1051 ; WX 884 ; N uni041B ; G 902 -U 1052 ; WX 1107 ; N uni041C ; G 903 -U 1053 ; WX 945 ; N uni041D ; G 904 -U 1054 ; WX 871 ; N uni041E ; G 905 -U 1055 ; WX 944 ; N uni041F ; G 906 -U 1056 ; WX 752 ; N uni0420 ; G 907 -U 1057 ; WX 796 ; N uni0421 ; G 908 -U 1058 ; WX 744 ; N uni0422 ; G 909 -U 1059 ; WX 812 ; N uni0423 ; G 910 -U 1060 ; WX 949 ; N uni0424 ; G 911 -U 1061 ; WX 776 ; N uni0425 ; G 912 -U 1062 ; WX 966 ; N uni0426 ; G 913 -U 1063 ; WX 913 ; N uni0427 ; G 914 -U 1064 ; WX 1268 ; N uni0428 ; G 915 -U 1065 ; WX 1293 ; N uni0429 ; G 916 -U 1066 ; WX 957 ; N uni042A ; G 917 -U 1067 ; WX 1202 ; N uni042B ; G 918 -U 1068 ; WX 825 ; N uni042C ; G 919 -U 1069 ; WX 795 ; N uni042D ; G 920 -U 1070 ; WX 1287 ; N uni042E ; G 921 -U 1071 ; WX 882 ; N uni042F ; G 922 -U 1072 ; WX 648 ; N uni0430 ; G 923 -U 1073 ; WX 667 ; N uni0431 ; G 924 -U 1074 ; WX 695 ; N uni0432 ; G 925 -U 1075 ; WX 613 ; N uni0433 ; G 926 -U 1076 ; WX 667 ; N uni0434 ; G 927 -U 1077 ; WX 636 ; N uni0435 ; G 928 -U 1078 ; WX 1010 ; N uni0436 ; G 929 -U 1079 ; WX 638 ; N uni0437 ; G 930 -U 1080 ; WX 742 ; N uni0438 ; G 931 -U 1081 ; WX 742 ; N uni0439 ; G 932 -U 1082 ; WX 722 ; N uni043A ; G 933 -U 1083 ; WX 705 ; N uni043B ; G 934 -U 1084 ; WX 869 ; N uni043C ; G 935 -U 1085 ; WX 732 ; N uni043D ; G 936 -U 1086 ; WX 667 ; N uni043E ; G 937 -U 1087 ; WX 732 ; N uni043F ; G 938 -U 1088 ; WX 699 ; N uni0440 ; G 939 -U 1089 ; WX 609 ; N uni0441 ; G 940 -U 1090 ; WX 620 ; N uni0442 ; G 941 -U 1091 ; WX 640 ; N uni0443 ; G 942 -U 1092 ; WX 902 ; N uni0444 ; G 943 -U 1093 ; WX 596 ; N uni0445 ; G 944 -U 1094 ; WX 739 ; N uni0446 ; G 945 -U 1095 ; WX 732 ; N uni0447 ; G 946 -U 1096 ; WX 1075 ; N uni0448 ; G 947 -U 1097 ; WX 1082 ; N uni0449 ; G 948 -U 1098 ; WX 767 ; N uni044A ; G 949 -U 1099 ; WX 1002 ; N uni044B ; G 950 -U 1100 ; WX 679 ; N uni044C ; G 951 -U 1101 ; WX 609 ; N uni044D ; G 952 -U 1102 ; WX 1025 ; N uni044E ; G 953 -U 1103 ; WX 739 ; N uni044F ; G 954 -U 1104 ; WX 636 ; N uni0450 ; G 955 -U 1105 ; WX 636 ; N uni0451 ; G 956 -U 1106 ; WX 719 ; N uni0452 ; G 957 -U 1107 ; WX 613 ; N uni0453 ; G 958 -U 1108 ; WX 609 ; N uni0454 ; G 959 -U 1109 ; WX 563 ; N uni0455 ; G 960 -U 1110 ; WX 380 ; N uni0456 ; G 961 -U 1111 ; WX 380 ; N uni0457 ; G 962 -U 1112 ; WX 362 ; N uni0458 ; G 963 -U 1113 ; WX 988 ; N uni0459 ; G 964 -U 1114 ; WX 1015 ; N uni045A ; G 965 -U 1115 ; WX 727 ; N uni045B ; G 966 -U 1116 ; WX 722 ; N uni045C ; G 967 -U 1117 ; WX 742 ; N uni045D ; G 968 -U 1118 ; WX 640 ; N uni045E ; G 969 -U 1119 ; WX 732 ; N uni045F ; G 970 -U 1122 ; WX 880 ; N uni0462 ; G 971 -U 1123 ; WX 703 ; N uni0463 ; G 972 -U 1124 ; WX 1195 ; N uni0464 ; G 973 -U 1125 ; WX 963 ; N uni0465 ; G 974 -U 1130 ; WX 1312 ; N uni046A ; G 975 -U 1131 ; WX 1010 ; N uni046B ; G 976 -U 1132 ; WX 1630 ; N uni046C ; G 977 -U 1133 ; WX 1297 ; N uni046D ; G 978 -U 1136 ; WX 1096 ; N uni0470 ; G 979 -U 1137 ; WX 1105 ; N uni0471 ; G 980 -U 1138 ; WX 871 ; N uni0472 ; G 981 -U 1139 ; WX 652 ; N uni0473 ; G 982 -U 1140 ; WX 916 ; N uni0474 ; G 983 -U 1141 ; WX 749 ; N uni0475 ; G 984 -U 1142 ; WX 916 ; N uni0476 ; G 985 -U 1143 ; WX 749 ; N uni0477 ; G 986 -U 1164 ; WX 846 ; N uni048C ; G 987 -U 1165 ; WX 673 ; N uni048D ; G 988 -U 1168 ; WX 700 ; N uni0490 ; G 989 -U 1169 ; WX 618 ; N uni0491 ; G 990 -U 1170 ; WX 690 ; N uni0492 ; G 991 -U 1171 ; WX 613 ; N uni0493 ; G 992 -U 1172 ; WX 868 ; N uni0494 ; G 993 -U 1173 ; WX 716 ; N uni0495 ; G 994 -U 1174 ; WX 1312 ; N uni0496 ; G 995 -U 1175 ; WX 1010 ; N uni0497 ; G 996 -U 1176 ; WX 721 ; N uni0498 ; G 997 -U 1177 ; WX 638 ; N uni0499 ; G 998 -U 1178 ; WX 947 ; N uni049A ; G 999 -U 1179 ; WX 744 ; N uni049B ; G 1000 -U 1182 ; WX 910 ; N uni049E ; G 1001 -U 1183 ; WX 722 ; N uni049F ; G 1002 -U 1184 ; WX 1041 ; N uni04A0 ; G 1003 -U 1185 ; WX 827 ; N uni04A1 ; G 1004 -U 1186 ; WX 966 ; N uni04A2 ; G 1005 -U 1187 ; WX 739 ; N uni04A3 ; G 1006 -U 1188 ; WX 1167 ; N uni04A4 ; G 1007 -U 1189 ; WX 956 ; N uni04A5 ; G 1008 -U 1190 ; WX 1345 ; N uni04A6 ; G 1009 -U 1191 ; WX 1059 ; N uni04A7 ; G 1010 -U 1194 ; WX 796 ; N uni04AA ; G 1011 -U 1195 ; WX 609 ; N uni04AB ; G 1012 -U 1196 ; WX 744 ; N uni04AC ; G 1013 -U 1197 ; WX 620 ; N uni04AD ; G 1014 -U 1198 ; WX 714 ; N uni04AE ; G 1015 -U 1199 ; WX 581 ; N uni04AF ; G 1016 -U 1200 ; WX 714 ; N uni04B0 ; G 1017 -U 1201 ; WX 581 ; N uni04B1 ; G 1018 -U 1202 ; WX 866 ; N uni04B2 ; G 1019 -U 1203 ; WX 649 ; N uni04B3 ; G 1020 -U 1204 ; WX 1022 ; N uni04B4 ; G 1021 -U 1205 ; WX 807 ; N uni04B5 ; G 1022 -U 1206 ; WX 928 ; N uni04B6 ; G 1023 -U 1207 ; WX 739 ; N uni04B7 ; G 1024 -U 1210 ; WX 910 ; N uni04BA ; G 1025 -U 1211 ; WX 727 ; N uni04BB ; G 1026 -U 1216 ; WX 468 ; N uni04C0 ; G 1027 -U 1217 ; WX 1312 ; N uni04C1 ; G 1028 -U 1218 ; WX 1010 ; N uni04C2 ; G 1029 -U 1219 ; WX 869 ; N uni04C3 ; G 1030 -U 1220 ; WX 693 ; N uni04C4 ; G 1031 -U 1223 ; WX 945 ; N uni04C7 ; G 1032 -U 1224 ; WX 732 ; N uni04C8 ; G 1033 -U 1227 ; WX 913 ; N uni04CB ; G 1034 -U 1228 ; WX 732 ; N uni04CC ; G 1035 -U 1231 ; WX 380 ; N uni04CF ; G 1036 -U 1232 ; WX 814 ; N uni04D0 ; G 1037 -U 1233 ; WX 648 ; N uni04D1 ; G 1038 -U 1234 ; WX 814 ; N uni04D2 ; G 1039 -U 1235 ; WX 648 ; N uni04D3 ; G 1040 -U 1236 ; WX 1034 ; N uni04D4 ; G 1041 -U 1237 ; WX 975 ; N uni04D5 ; G 1042 -U 1238 ; WX 762 ; N uni04D6 ; G 1043 -U 1239 ; WX 636 ; N uni04D7 ; G 1044 -U 1240 ; WX 871 ; N uni04D8 ; G 1045 -U 1241 ; WX 636 ; N uni04D9 ; G 1046 -U 1242 ; WX 871 ; N uni04DA ; G 1047 -U 1243 ; WX 636 ; N uni04DB ; G 1048 -U 1244 ; WX 1312 ; N uni04DC ; G 1049 -U 1245 ; WX 1010 ; N uni04DD ; G 1050 -U 1246 ; WX 721 ; N uni04DE ; G 1051 -U 1247 ; WX 638 ; N uni04DF ; G 1052 -U 1248 ; WX 657 ; N uni04E0 ; G 1053 -U 1249 ; WX 568 ; N uni04E1 ; G 1054 -U 1250 ; WX 945 ; N uni04E2 ; G 1055 -U 1251 ; WX 742 ; N uni04E3 ; G 1056 -U 1252 ; WX 945 ; N uni04E4 ; G 1057 -U 1253 ; WX 742 ; N uni04E5 ; G 1058 -U 1254 ; WX 871 ; N uni04E6 ; G 1059 -U 1255 ; WX 667 ; N uni04E7 ; G 1060 -U 1256 ; WX 871 ; N uni04E8 ; G 1061 -U 1257 ; WX 667 ; N uni04E9 ; G 1062 -U 1258 ; WX 871 ; N uni04EA ; G 1063 -U 1259 ; WX 667 ; N uni04EB ; G 1064 -U 1260 ; WX 795 ; N uni04EC ; G 1065 -U 1261 ; WX 609 ; N uni04ED ; G 1066 -U 1262 ; WX 812 ; N uni04EE ; G 1067 -U 1263 ; WX 640 ; N uni04EF ; G 1068 -U 1264 ; WX 812 ; N uni04F0 ; G 1069 -U 1265 ; WX 640 ; N uni04F1 ; G 1070 -U 1266 ; WX 812 ; N uni04F2 ; G 1071 -U 1267 ; WX 640 ; N uni04F3 ; G 1072 -U 1268 ; WX 913 ; N uni04F4 ; G 1073 -U 1269 ; WX 732 ; N uni04F5 ; G 1074 -U 1270 ; WX 690 ; N uni04F6 ; G 1075 -U 1271 ; WX 613 ; N uni04F7 ; G 1076 -U 1272 ; WX 1202 ; N uni04F8 ; G 1077 -U 1273 ; WX 1002 ; N uni04F9 ; G 1078 -U 1296 ; WX 721 ; N uni0510 ; G 1079 -U 1297 ; WX 638 ; N uni0511 ; G 1080 -U 1298 ; WX 884 ; N uni0512 ; G 1081 -U 1299 ; WX 705 ; N uni0513 ; G 1082 -U 1300 ; WX 1248 ; N uni0514 ; G 1083 -U 1301 ; WX 945 ; N uni0515 ; G 1084 -U 1306 ; WX 820 ; N uni051A ; G 1085 -U 1307 ; WX 640 ; N uni051B ; G 1086 -U 1308 ; WX 1028 ; N uni051C ; G 1087 -U 1309 ; WX 856 ; N uni051D ; G 1088 -U 1329 ; WX 942 ; N uni0531 ; G 1089 -U 1330 ; WX 832 ; N uni0532 ; G 1090 -U 1331 ; WX 894 ; N uni0533 ; G 1091 -U 1332 ; WX 909 ; N uni0534 ; G 1092 -U 1333 ; WX 822 ; N uni0535 ; G 1093 -U 1334 ; WX 821 ; N uni0536 ; G 1094 -U 1335 ; WX 747 ; N uni0537 ; G 1095 -U 1336 ; WX 832 ; N uni0538 ; G 1096 -U 1337 ; WX 1125 ; N uni0539 ; G 1097 -U 1338 ; WX 894 ; N uni053A ; G 1098 -U 1339 ; WX 803 ; N uni053B ; G 1099 -U 1340 ; WX 722 ; N uni053C ; G 1100 -U 1341 ; WX 1188 ; N uni053D ; G 1101 -U 1342 ; WX 887 ; N uni053E ; G 1102 -U 1343 ; WX 842 ; N uni053F ; G 1103 -U 1344 ; WX 737 ; N uni0540 ; G 1104 -U 1345 ; WX 863 ; N uni0541 ; G 1105 -U 1346 ; WX 918 ; N uni0542 ; G 1106 -U 1347 ; WX 851 ; N uni0543 ; G 1107 -U 1348 ; WX 977 ; N uni0544 ; G 1108 -U 1349 ; WX 833 ; N uni0545 ; G 1109 -U 1350 ; WX 914 ; N uni0546 ; G 1110 -U 1351 ; WX 843 ; N uni0547 ; G 1111 -U 1352 ; WX 871 ; N uni0548 ; G 1112 -U 1353 ; WX 818 ; N uni0549 ; G 1113 -U 1354 ; WX 1034 ; N uni054A ; G 1114 -U 1355 ; WX 846 ; N uni054B ; G 1115 -U 1356 ; WX 964 ; N uni054C ; G 1116 -U 1357 ; WX 871 ; N uni054D ; G 1117 -U 1358 ; WX 914 ; N uni054E ; G 1118 -U 1359 ; WX 808 ; N uni054F ; G 1119 -U 1360 ; WX 808 ; N uni0550 ; G 1120 -U 1361 ; WX 836 ; N uni0551 ; G 1121 -U 1362 ; WX 710 ; N uni0552 ; G 1122 -U 1363 ; WX 955 ; N uni0553 ; G 1123 -U 1364 ; WX 891 ; N uni0554 ; G 1124 -U 1365 ; WX 871 ; N uni0555 ; G 1125 -U 1366 ; WX 963 ; N uni0556 ; G 1126 -U 1369 ; WX 307 ; N uni0559 ; G 1127 -U 1370 ; WX 264 ; N uni055A ; G 1128 -U 1371 ; WX 293 ; N uni055B ; G 1129 -U 1372 ; WX 391 ; N uni055C ; G 1130 -U 1373 ; WX 323 ; N uni055D ; G 1131 -U 1374 ; WX 439 ; N uni055E ; G 1132 -U 1375 ; WX 500 ; N uni055F ; G 1133 -U 1377 ; WX 1055 ; N uni0561 ; G 1134 -U 1378 ; WX 695 ; N uni0562 ; G 1135 -U 1379 ; WX 776 ; N uni0563 ; G 1136 -U 1380 ; WX 801 ; N uni0564 ; G 1137 -U 1381 ; WX 729 ; N uni0565 ; G 1138 -U 1382 ; WX 742 ; N uni0566 ; G 1139 -U 1383 ; WX 599 ; N uni0567 ; G 1140 -U 1384 ; WX 733 ; N uni0568 ; G 1141 -U 1385 ; WX 909 ; N uni0569 ; G 1142 -U 1386 ; WX 768 ; N uni056A ; G 1143 -U 1387 ; WX 724 ; N uni056B ; G 1144 -U 1388 ; WX 398 ; N uni056C ; G 1145 -U 1389 ; WX 1087 ; N uni056D ; G 1146 -U 1390 ; WX 695 ; N uni056E ; G 1147 -U 1391 ; WX 719 ; N uni056F ; G 1148 -U 1392 ; WX 737 ; N uni0570 ; G 1149 -U 1393 ; WX 684 ; N uni0571 ; G 1150 -U 1394 ; WX 738 ; N uni0572 ; G 1151 -U 1395 ; WX 703 ; N uni0573 ; G 1152 -U 1396 ; WX 724 ; N uni0574 ; G 1153 -U 1397 ; WX 359 ; N uni0575 ; G 1154 -U 1398 ; WX 719 ; N uni0576 ; G 1155 -U 1399 ; WX 496 ; N uni0577 ; G 1156 -U 1400 ; WX 738 ; N uni0578 ; G 1157 -U 1401 ; WX 428 ; N uni0579 ; G 1158 -U 1402 ; WX 1059 ; N uni057A ; G 1159 -U 1403 ; WX 668 ; N uni057B ; G 1160 -U 1404 ; WX 744 ; N uni057C ; G 1161 -U 1405 ; WX 724 ; N uni057D ; G 1162 -U 1406 ; WX 724 ; N uni057E ; G 1163 -U 1407 ; WX 1040 ; N uni057F ; G 1164 -U 1408 ; WX 724 ; N uni0580 ; G 1165 -U 1409 ; WX 713 ; N uni0581 ; G 1166 -U 1410 ; WX 493 ; N uni0582 ; G 1167 -U 1411 ; WX 1040 ; N uni0583 ; G 1168 -U 1412 ; WX 734 ; N uni0584 ; G 1169 -U 1413 ; WX 693 ; N uni0585 ; G 1170 -U 1414 ; WX 956 ; N uni0586 ; G 1171 -U 1415 ; WX 833 ; N uni0587 ; G 1172 -U 1417 ; WX 340 ; N uni0589 ; G 1173 -U 1418 ; WX 388 ; N uni058A ; G 1174 -U 3647 ; WX 696 ; N uni0E3F ; G 1175 -U 4256 ; WX 755 ; N uni10A0 ; G 1176 -U 4257 ; WX 936 ; N uni10A1 ; G 1177 -U 4258 ; WX 866 ; N uni10A2 ; G 1178 -U 4259 ; WX 874 ; N uni10A3 ; G 1179 -U 4260 ; WX 781 ; N uni10A4 ; G 1180 -U 4261 ; WX 1078 ; N uni10A5 ; G 1181 -U 4262 ; WX 1014 ; N uni10A6 ; G 1182 -U 4263 ; WX 1213 ; N uni10A7 ; G 1183 -U 4264 ; WX 643 ; N uni10A8 ; G 1184 -U 4265 ; WX 818 ; N uni10A9 ; G 1185 -U 4266 ; WX 1051 ; N uni10AA ; G 1186 -U 4267 ; WX 1051 ; N uni10AB ; G 1187 -U 4268 ; WX 796 ; N uni10AC ; G 1188 -U 4269 ; WX 1135 ; N uni10AD ; G 1189 -U 4270 ; WX 969 ; N uni10AE ; G 1190 -U 4271 ; WX 902 ; N uni10AF ; G 1191 -U 4272 ; WX 1109 ; N uni10B0 ; G 1192 -U 4273 ; WX 792 ; N uni10B1 ; G 1193 -U 4274 ; WX 756 ; N uni10B2 ; G 1194 -U 4275 ; WX 1076 ; N uni10B3 ; G 1195 -U 4276 ; WX 976 ; N uni10B4 ; G 1196 -U 4277 ; WX 1066 ; N uni10B5 ; G 1197 -U 4278 ; WX 811 ; N uni10B6 ; G 1198 -U 4279 ; WX 833 ; N uni10B7 ; G 1199 -U 4280 ; WX 821 ; N uni10B8 ; G 1200 -U 4281 ; WX 833 ; N uni10B9 ; G 1201 -U 4282 ; WX 908 ; N uni10BA ; G 1202 -U 4283 ; WX 1077 ; N uni10BB ; G 1203 -U 4284 ; WX 769 ; N uni10BC ; G 1204 -U 4285 ; WX 822 ; N uni10BD ; G 1205 -U 4286 ; WX 813 ; N uni10BE ; G 1206 -U 4287 ; WX 1111 ; N uni10BF ; G 1207 -U 4288 ; WX 1123 ; N uni10C0 ; G 1208 -U 4289 ; WX 802 ; N uni10C1 ; G 1209 -U 4290 ; WX 892 ; N uni10C2 ; G 1210 -U 4291 ; WX 802 ; N uni10C3 ; G 1211 -U 4292 ; WX 880 ; N uni10C4 ; G 1212 -U 4293 ; WX 1063 ; N uni10C5 ; G 1213 -U 4304 ; WX 594 ; N uni10D0 ; G 1214 -U 4305 ; WX 625 ; N uni10D1 ; G 1215 -U 4306 ; WX 643 ; N uni10D2 ; G 1216 -U 4307 ; WX 887 ; N uni10D3 ; G 1217 -U 4308 ; WX 615 ; N uni10D4 ; G 1218 -U 4309 ; WX 611 ; N uni10D5 ; G 1219 -U 4310 ; WX 667 ; N uni10D6 ; G 1220 -U 4311 ; WX 915 ; N uni10D7 ; G 1221 -U 4312 ; WX 613 ; N uni10D8 ; G 1222 -U 4313 ; WX 600 ; N uni10D9 ; G 1223 -U 4314 ; WX 1120 ; N uni10DA ; G 1224 -U 4315 ; WX 640 ; N uni10DB ; G 1225 -U 4316 ; WX 640 ; N uni10DC ; G 1226 -U 4317 ; WX 879 ; N uni10DD ; G 1227 -U 4318 ; WX 624 ; N uni10DE ; G 1228 -U 4319 ; WX 634 ; N uni10DF ; G 1229 -U 4320 ; WX 877 ; N uni10E0 ; G 1230 -U 4321 ; WX 666 ; N uni10E1 ; G 1231 -U 4322 ; WX 780 ; N uni10E2 ; G 1232 -U 4323 ; WX 751 ; N uni10E3 ; G 1233 -U 4324 ; WX 869 ; N uni10E4 ; G 1234 -U 4325 ; WX 639 ; N uni10E5 ; G 1235 -U 4326 ; WX 912 ; N uni10E6 ; G 1236 -U 4327 ; WX 622 ; N uni10E7 ; G 1237 -U 4328 ; WX 647 ; N uni10E8 ; G 1238 -U 4329 ; WX 640 ; N uni10E9 ; G 1239 -U 4330 ; WX 729 ; N uni10EA ; G 1240 -U 4331 ; WX 641 ; N uni10EB ; G 1241 -U 4332 ; WX 630 ; N uni10EC ; G 1242 -U 4333 ; WX 629 ; N uni10ED ; G 1243 -U 4334 ; WX 670 ; N uni10EE ; G 1244 -U 4335 ; WX 753 ; N uni10EF ; G 1245 -U 4336 ; WX 625 ; N uni10F0 ; G 1246 -U 4337 ; WX 657 ; N uni10F1 ; G 1247 -U 4338 ; WX 625 ; N uni10F2 ; G 1248 -U 4339 ; WX 625 ; N uni10F3 ; G 1249 -U 4340 ; WX 624 ; N uni10F4 ; G 1250 -U 4341 ; WX 670 ; N uni10F5 ; G 1251 -U 4342 ; WX 940 ; N uni10F6 ; G 1252 -U 4343 ; WX 680 ; N uni10F7 ; G 1253 -U 4344 ; WX 636 ; N uni10F8 ; G 1254 -U 4345 ; WX 672 ; N uni10F9 ; G 1255 -U 4346 ; WX 625 ; N uni10FA ; G 1256 -U 4347 ; WX 588 ; N uni10FB ; G 1257 -U 4348 ; WX 354 ; N uni10FC ; G 1258 -U 7424 ; WX 641 ; N uni1D00 ; G 1259 -U 7425 ; WX 892 ; N uni1D01 ; G 1260 -U 7426 ; WX 940 ; N uni1D02 ; G 1261 -U 7427 ; WX 695 ; N uni1D03 ; G 1262 -U 7428 ; WX 609 ; N uni1D04 ; G 1263 -U 7429 ; WX 675 ; N uni1D05 ; G 1264 -U 7430 ; WX 675 ; N uni1D06 ; G 1265 -U 7431 ; WX 617 ; N uni1D07 ; G 1266 -U 7432 ; WX 509 ; N uni1D08 ; G 1267 -U 7433 ; WX 320 ; N uni1D09 ; G 1268 -U 7434 ; WX 561 ; N uni1D0A ; G 1269 -U 7435 ; WX 722 ; N uni1D0B ; G 1270 -U 7436 ; WX 617 ; N uni1D0C ; G 1271 -U 7437 ; WX 869 ; N uni1D0D ; G 1272 -U 7438 ; WX 737 ; N uni1D0E ; G 1273 -U 7439 ; WX 667 ; N uni1D0F ; G 1274 -U 7440 ; WX 609 ; N uni1D10 ; G 1275 -U 7441 ; WX 628 ; N uni1D11 ; G 1276 -U 7442 ; WX 628 ; N uni1D12 ; G 1277 -U 7443 ; WX 667 ; N uni1D13 ; G 1278 -U 7444 ; WX 989 ; N uni1D14 ; G 1279 -U 7445 ; WX 598 ; N uni1D15 ; G 1280 -U 7446 ; WX 667 ; N uni1D16 ; G 1281 -U 7447 ; WX 667 ; N uni1D17 ; G 1282 -U 7448 ; WX 586 ; N uni1D18 ; G 1283 -U 7449 ; WX 801 ; N uni1D19 ; G 1284 -U 7450 ; WX 801 ; N uni1D1A ; G 1285 -U 7451 ; WX 620 ; N uni1D1B ; G 1286 -U 7452 ; WX 647 ; N uni1D1C ; G 1287 -U 7453 ; WX 664 ; N uni1D1D ; G 1288 -U 7454 ; WX 923 ; N uni1D1E ; G 1289 -U 7455 ; WX 655 ; N uni1D1F ; G 1290 -U 7456 ; WX 581 ; N uni1D20 ; G 1291 -U 7457 ; WX 861 ; N uni1D21 ; G 1292 -U 7458 ; WX 568 ; N uni1D22 ; G 1293 -U 7459 ; WX 568 ; N uni1D23 ; G 1294 -U 7460 ; WX 588 ; N uni1D24 ; G 1295 -U 7461 ; WX 802 ; N uni1D25 ; G 1296 -U 7462 ; WX 586 ; N uni1D26 ; G 1297 -U 7463 ; WX 641 ; N uni1D27 ; G 1298 -U 7464 ; WX 732 ; N uni1D28 ; G 1299 -U 7465 ; WX 586 ; N uni1D29 ; G 1300 -U 7466 ; WX 854 ; N uni1D2A ; G 1301 -U 7467 ; WX 705 ; N uni1D2B ; G 1302 -U 7468 ; WX 489 ; N uni1D2C ; G 1303 -U 7469 ; WX 651 ; N uni1D2D ; G 1304 -U 7470 ; WX 532 ; N uni1D2E ; G 1305 -U 7471 ; WX 532 ; N uni1D2F ; G 1306 -U 7472 ; WX 546 ; N uni1D30 ; G 1307 -U 7473 ; WX 480 ; N uni1D31 ; G 1308 -U 7474 ; WX 480 ; N uni1D32 ; G 1309 -U 7475 ; WX 538 ; N uni1D33 ; G 1310 -U 7476 ; WX 595 ; N uni1D34 ; G 1311 -U 7477 ; WX 294 ; N uni1D35 ; G 1312 -U 7478 ; WX 298 ; N uni1D36 ; G 1313 -U 7479 ; WX 547 ; N uni1D37 ; G 1314 -U 7480 ; WX 443 ; N uni1D38 ; G 1315 -U 7481 ; WX 697 ; N uni1D39 ; G 1316 -U 7482 ; WX 576 ; N uni1D3A ; G 1317 -U 7483 ; WX 606 ; N uni1D3B ; G 1318 -U 7484 ; WX 548 ; N uni1D3C ; G 1319 -U 7485 ; WX 442 ; N uni1D3D ; G 1320 -U 7486 ; WX 474 ; N uni1D3E ; G 1321 -U 7487 ; WX 523 ; N uni1D3F ; G 1322 -U 7488 ; WX 455 ; N uni1D40 ; G 1323 -U 7489 ; WX 469 ; N uni1D41 ; G 1324 -U 7490 ; WX 549 ; N uni1D42 ; G 1325 -U 7491 ; WX 466 ; N uni1D43 ; G 1326 -U 7492 ; WX 466 ; N uni1D44 ; G 1327 -U 7493 ; WX 498 ; N uni1D45 ; G 1328 -U 7494 ; WX 657 ; N uni1D46 ; G 1329 -U 7495 ; WX 499 ; N uni1D47 ; G 1330 -U 7496 ; WX 498 ; N uni1D48 ; G 1331 -U 7497 ; WX 444 ; N uni1D49 ; G 1332 -U 7498 ; WX 444 ; N uni1D4A ; G 1333 -U 7499 ; WX 412 ; N uni1D4B ; G 1334 -U 7500 ; WX 412 ; N uni1D4C ; G 1335 -U 7501 ; WX 498 ; N uni1D4D ; G 1336 -U 7502 ; WX 300 ; N uni1D4E ; G 1337 -U 7503 ; WX 523 ; N uni1D4F ; G 1338 -U 7504 ; WX 729 ; N uni1D50 ; G 1339 -U 7505 ; WX 473 ; N uni1D51 ; G 1340 -U 7506 ; WX 467 ; N uni1D52 ; G 1341 -U 7507 ; WX 427 ; N uni1D53 ; G 1342 -U 7508 ; WX 467 ; N uni1D54 ; G 1343 -U 7509 ; WX 467 ; N uni1D55 ; G 1344 -U 7510 ; WX 499 ; N uni1D56 ; G 1345 -U 7511 ; WX 371 ; N uni1D57 ; G 1346 -U 7512 ; WX 520 ; N uni1D58 ; G 1347 -U 7513 ; WX 418 ; N uni1D59 ; G 1348 -U 7514 ; WX 729 ; N uni1D5A ; G 1349 -U 7515 ; WX 491 ; N uni1D5B ; G 1350 -U 7516 ; WX 505 ; N uni1D5C ; G 1351 -U 7517 ; WX 418 ; N uni1D5D ; G 1352 -U 7518 ; WX 416 ; N uni1D5E ; G 1353 -U 7519 ; WX 420 ; N uni1D5F ; G 1354 -U 7520 ; WX 570 ; N uni1D60 ; G 1355 -U 7521 ; WX 414 ; N uni1D61 ; G 1356 -U 7522 ; WX 239 ; N uni1D62 ; G 1357 -U 7523 ; WX 414 ; N uni1D63 ; G 1358 -U 7524 ; WX 520 ; N uni1D64 ; G 1359 -U 7525 ; WX 491 ; N uni1D65 ; G 1360 -U 7526 ; WX 418 ; N uni1D66 ; G 1361 -U 7527 ; WX 416 ; N uni1D67 ; G 1362 -U 7528 ; WX 419 ; N uni1D68 ; G 1363 -U 7529 ; WX 570 ; N uni1D69 ; G 1364 -U 7530 ; WX 414 ; N uni1D6A ; G 1365 -U 7531 ; WX 1041 ; N uni1D6B ; G 1366 -U 7543 ; WX 640 ; N uni1D77 ; G 1367 -U 7544 ; WX 595 ; N uni1D78 ; G 1368 -U 7547 ; WX 380 ; N uni1D7B ; G 1369 -U 7548 ; WX 380 ; N uni1D7C ; G 1370 -U 7549 ; WX 699 ; N uni1D7D ; G 1371 -U 7550 ; WX 647 ; N uni1D7E ; G 1372 -U 7551 ; WX 679 ; N uni1D7F ; G 1373 -U 7557 ; WX 380 ; N uni1D85 ; G 1374 -U 7579 ; WX 498 ; N uni1D9B ; G 1375 -U 7580 ; WX 427 ; N uni1D9C ; G 1376 -U 7581 ; WX 427 ; N uni1D9D ; G 1377 -U 7582 ; WX 467 ; N uni1D9E ; G 1378 -U 7583 ; WX 412 ; N uni1D9F ; G 1379 -U 7584 ; WX 383 ; N uni1DA0 ; G 1380 -U 7585 ; WX 373 ; N uni1DA1 ; G 1381 -U 7586 ; WX 498 ; N uni1DA2 ; G 1382 -U 7587 ; WX 522 ; N uni1DA3 ; G 1383 -U 7588 ; WX 300 ; N uni1DA4 ; G 1384 -U 7589 ; WX 307 ; N uni1DA5 ; G 1385 -U 7590 ; WX 300 ; N uni1DA6 ; G 1386 -U 7591 ; WX 300 ; N uni1DA7 ; G 1387 -U 7592 ; WX 370 ; N uni1DA8 ; G 1388 -U 7593 ; WX 368 ; N uni1DA9 ; G 1389 -U 7594 ; WX 321 ; N uni1DAA ; G 1390 -U 7595 ; WX 430 ; N uni1DAB ; G 1391 -U 7596 ; WX 682 ; N uni1DAC ; G 1392 -U 7597 ; WX 729 ; N uni1DAD ; G 1393 -U 7598 ; WX 588 ; N uni1DAE ; G 1394 -U 7599 ; WX 587 ; N uni1DAF ; G 1395 -U 7600 ; WX 472 ; N uni1DB0 ; G 1396 -U 7601 ; WX 467 ; N uni1DB1 ; G 1397 -U 7602 ; WX 522 ; N uni1DB2 ; G 1398 -U 7603 ; WX 400 ; N uni1DB3 ; G 1399 -U 7604 ; WX 387 ; N uni1DB4 ; G 1400 -U 7605 ; WX 371 ; N uni1DB5 ; G 1401 -U 7606 ; WX 520 ; N uni1DB6 ; G 1402 -U 7607 ; WX 475 ; N uni1DB7 ; G 1403 -U 7608 ; WX 408 ; N uni1DB8 ; G 1404 -U 7609 ; WX 489 ; N uni1DB9 ; G 1405 -U 7610 ; WX 491 ; N uni1DBA ; G 1406 -U 7611 ; WX 412 ; N uni1DBB ; G 1407 -U 7612 ; WX 527 ; N uni1DBC ; G 1408 -U 7613 ; WX 412 ; N uni1DBD ; G 1409 -U 7614 ; WX 452 ; N uni1DBE ; G 1410 -U 7615 ; WX 467 ; N uni1DBF ; G 1411 -U 7620 ; WX 0 ; N uni1DC4 ; G 1412 -U 7621 ; WX 0 ; N uni1DC5 ; G 1413 -U 7622 ; WX 0 ; N uni1DC6 ; G 1414 -U 7623 ; WX 0 ; N uni1DC7 ; G 1415 -U 7624 ; WX 0 ; N uni1DC8 ; G 1416 -U 7625 ; WX 0 ; N uni1DC9 ; G 1417 -U 7680 ; WX 776 ; N uni1E00 ; G 1418 -U 7681 ; WX 648 ; N uni1E01 ; G 1419 -U 7682 ; WX 845 ; N uni1E02 ; G 1420 -U 7683 ; WX 699 ; N uni1E03 ; G 1421 -U 7684 ; WX 845 ; N uni1E04 ; G 1422 -U 7685 ; WX 699 ; N uni1E05 ; G 1423 -U 7686 ; WX 845 ; N uni1E06 ; G 1424 -U 7687 ; WX 699 ; N uni1E07 ; G 1425 -U 7688 ; WX 796 ; N uni1E08 ; G 1426 -U 7689 ; WX 609 ; N uni1E09 ; G 1427 -U 7690 ; WX 867 ; N uni1E0A ; G 1428 -U 7691 ; WX 699 ; N uni1E0B ; G 1429 -U 7692 ; WX 867 ; N uni1E0C ; G 1430 -U 7693 ; WX 699 ; N uni1E0D ; G 1431 -U 7694 ; WX 867 ; N uni1E0E ; G 1432 -U 7695 ; WX 699 ; N uni1E0F ; G 1433 -U 7696 ; WX 867 ; N uni1E10 ; G 1434 -U 7697 ; WX 699 ; N uni1E11 ; G 1435 -U 7698 ; WX 867 ; N uni1E12 ; G 1436 -U 7699 ; WX 699 ; N uni1E13 ; G 1437 -U 7700 ; WX 762 ; N uni1E14 ; G 1438 -U 7701 ; WX 636 ; N uni1E15 ; G 1439 -U 7702 ; WX 762 ; N uni1E16 ; G 1440 -U 7703 ; WX 636 ; N uni1E17 ; G 1441 -U 7704 ; WX 762 ; N uni1E18 ; G 1442 -U 7705 ; WX 636 ; N uni1E19 ; G 1443 -U 7706 ; WX 762 ; N uni1E1A ; G 1444 -U 7707 ; WX 636 ; N uni1E1B ; G 1445 -U 7708 ; WX 762 ; N uni1E1C ; G 1446 -U 7709 ; WX 636 ; N uni1E1D ; G 1447 -U 7710 ; WX 710 ; N uni1E1E ; G 1448 -U 7711 ; WX 430 ; N uni1E1F ; G 1449 -U 7712 ; WX 854 ; N uni1E20 ; G 1450 -U 7713 ; WX 699 ; N uni1E21 ; G 1451 -U 7714 ; WX 945 ; N uni1E22 ; G 1452 -U 7715 ; WX 727 ; N uni1E23 ; G 1453 -U 7716 ; WX 945 ; N uni1E24 ; G 1454 -U 7717 ; WX 727 ; N uni1E25 ; G 1455 -U 7718 ; WX 945 ; N uni1E26 ; G 1456 -U 7719 ; WX 727 ; N uni1E27 ; G 1457 -U 7720 ; WX 945 ; N uni1E28 ; G 1458 -U 7721 ; WX 727 ; N uni1E29 ; G 1459 -U 7722 ; WX 945 ; N uni1E2A ; G 1460 -U 7723 ; WX 727 ; N uni1E2B ; G 1461 -U 7724 ; WX 468 ; N uni1E2C ; G 1462 -U 7725 ; WX 380 ; N uni1E2D ; G 1463 -U 7726 ; WX 468 ; N uni1E2E ; G 1464 -U 7727 ; WX 380 ; N uni1E2F ; G 1465 -U 7728 ; WX 869 ; N uni1E30 ; G 1466 -U 7729 ; WX 693 ; N uni1E31 ; G 1467 -U 7730 ; WX 869 ; N uni1E32 ; G 1468 -U 7731 ; WX 693 ; N uni1E33 ; G 1469 -U 7732 ; WX 869 ; N uni1E34 ; G 1470 -U 7733 ; WX 693 ; N uni1E35 ; G 1471 -U 7734 ; WX 703 ; N uni1E36 ; G 1472 -U 7735 ; WX 380 ; N uni1E37 ; G 1473 -U 7736 ; WX 703 ; N uni1E38 ; G 1474 -U 7737 ; WX 380 ; N uni1E39 ; G 1475 -U 7738 ; WX 703 ; N uni1E3A ; G 1476 -U 7739 ; WX 380 ; N uni1E3B ; G 1477 -U 7740 ; WX 703 ; N uni1E3C ; G 1478 -U 7741 ; WX 380 ; N uni1E3D ; G 1479 -U 7742 ; WX 1107 ; N uni1E3E ; G 1480 -U 7743 ; WX 1058 ; N uni1E3F ; G 1481 -U 7744 ; WX 1107 ; N uni1E40 ; G 1482 -U 7745 ; WX 1058 ; N uni1E41 ; G 1483 -U 7746 ; WX 1107 ; N uni1E42 ; G 1484 -U 7747 ; WX 1058 ; N uni1E43 ; G 1485 -U 7748 ; WX 914 ; N uni1E44 ; G 1486 -U 7749 ; WX 727 ; N uni1E45 ; G 1487 -U 7750 ; WX 914 ; N uni1E46 ; G 1488 -U 7751 ; WX 727 ; N uni1E47 ; G 1489 -U 7752 ; WX 914 ; N uni1E48 ; G 1490 -U 7753 ; WX 727 ; N uni1E49 ; G 1491 -U 7754 ; WX 914 ; N uni1E4A ; G 1492 -U 7755 ; WX 727 ; N uni1E4B ; G 1493 -U 7756 ; WX 871 ; N uni1E4C ; G 1494 -U 7757 ; WX 667 ; N uni1E4D ; G 1495 -U 7758 ; WX 871 ; N uni1E4E ; G 1496 -U 7759 ; WX 667 ; N uni1E4F ; G 1497 -U 7760 ; WX 871 ; N uni1E50 ; G 1498 -U 7761 ; WX 667 ; N uni1E51 ; G 1499 -U 7762 ; WX 871 ; N uni1E52 ; G 1500 -U 7763 ; WX 667 ; N uni1E53 ; G 1501 -U 7764 ; WX 752 ; N uni1E54 ; G 1502 -U 7765 ; WX 699 ; N uni1E55 ; G 1503 -U 7766 ; WX 752 ; N uni1E56 ; G 1504 -U 7767 ; WX 699 ; N uni1E57 ; G 1505 -U 7768 ; WX 831 ; N uni1E58 ; G 1506 -U 7769 ; WX 527 ; N uni1E59 ; G 1507 -U 7770 ; WX 831 ; N uni1E5A ; G 1508 -U 7771 ; WX 527 ; N uni1E5B ; G 1509 -U 7772 ; WX 831 ; N uni1E5C ; G 1510 -U 7773 ; WX 527 ; N uni1E5D ; G 1511 -U 7774 ; WX 831 ; N uni1E5E ; G 1512 -U 7775 ; WX 527 ; N uni1E5F ; G 1513 -U 7776 ; WX 722 ; N uni1E60 ; G 1514 -U 7777 ; WX 563 ; N uni1E61 ; G 1515 -U 7778 ; WX 722 ; N uni1E62 ; G 1516 -U 7779 ; WX 563 ; N uni1E63 ; G 1517 -U 7780 ; WX 722 ; N uni1E64 ; G 1518 -U 7781 ; WX 563 ; N uni1E65 ; G 1519 -U 7782 ; WX 722 ; N uni1E66 ; G 1520 -U 7783 ; WX 563 ; N uni1E67 ; G 1521 -U 7784 ; WX 722 ; N uni1E68 ; G 1522 -U 7785 ; WX 563 ; N uni1E69 ; G 1523 -U 7786 ; WX 744 ; N uni1E6A ; G 1524 -U 7787 ; WX 462 ; N uni1E6B ; G 1525 -U 7788 ; WX 744 ; N uni1E6C ; G 1526 -U 7789 ; WX 462 ; N uni1E6D ; G 1527 -U 7790 ; WX 744 ; N uni1E6E ; G 1528 -U 7791 ; WX 462 ; N uni1E6F ; G 1529 -U 7792 ; WX 744 ; N uni1E70 ; G 1530 -U 7793 ; WX 462 ; N uni1E71 ; G 1531 -U 7794 ; WX 872 ; N uni1E72 ; G 1532 -U 7795 ; WX 727 ; N uni1E73 ; G 1533 -U 7796 ; WX 872 ; N uni1E74 ; G 1534 -U 7797 ; WX 727 ; N uni1E75 ; G 1535 -U 7798 ; WX 872 ; N uni1E76 ; G 1536 -U 7799 ; WX 727 ; N uni1E77 ; G 1537 -U 7800 ; WX 872 ; N uni1E78 ; G 1538 -U 7801 ; WX 727 ; N uni1E79 ; G 1539 -U 7802 ; WX 872 ; N uni1E7A ; G 1540 -U 7803 ; WX 727 ; N uni1E7B ; G 1541 -U 7804 ; WX 776 ; N uni1E7C ; G 1542 -U 7805 ; WX 581 ; N uni1E7D ; G 1543 -U 7806 ; WX 776 ; N uni1E7E ; G 1544 -U 7807 ; WX 581 ; N uni1E7F ; G 1545 -U 7808 ; WX 1123 ; N Wgrave ; G 1546 -U 7809 ; WX 861 ; N wgrave ; G 1547 -U 7810 ; WX 1123 ; N Wacute ; G 1548 -U 7811 ; WX 861 ; N wacute ; G 1549 -U 7812 ; WX 1123 ; N Wdieresis ; G 1550 -U 7813 ; WX 861 ; N wdieresis ; G 1551 -U 7814 ; WX 1123 ; N uni1E86 ; G 1552 -U 7815 ; WX 861 ; N uni1E87 ; G 1553 -U 7816 ; WX 1123 ; N uni1E88 ; G 1554 -U 7817 ; WX 861 ; N uni1E89 ; G 1555 -U 7818 ; WX 776 ; N uni1E8A ; G 1556 -U 7819 ; WX 596 ; N uni1E8B ; G 1557 -U 7820 ; WX 776 ; N uni1E8C ; G 1558 -U 7821 ; WX 596 ; N uni1E8D ; G 1559 -U 7822 ; WX 714 ; N uni1E8E ; G 1560 -U 7823 ; WX 581 ; N uni1E8F ; G 1561 -U 7824 ; WX 730 ; N uni1E90 ; G 1562 -U 7825 ; WX 568 ; N uni1E91 ; G 1563 -U 7826 ; WX 730 ; N uni1E92 ; G 1564 -U 7827 ; WX 568 ; N uni1E93 ; G 1565 -U 7828 ; WX 730 ; N uni1E94 ; G 1566 -U 7829 ; WX 568 ; N uni1E95 ; G 1567 -U 7830 ; WX 727 ; N uni1E96 ; G 1568 -U 7831 ; WX 462 ; N uni1E97 ; G 1569 -U 7832 ; WX 861 ; N uni1E98 ; G 1570 -U 7833 ; WX 581 ; N uni1E99 ; G 1571 -U 7834 ; WX 1014 ; N uni1E9A ; G 1572 -U 7835 ; WX 430 ; N uni1E9B ; G 1573 -U 7836 ; WX 430 ; N uni1E9C ; G 1574 -U 7837 ; WX 430 ; N uni1E9D ; G 1575 -U 7838 ; WX 947 ; N uni1E9E ; G 1576 -U 7839 ; WX 667 ; N uni1E9F ; G 1577 -U 7840 ; WX 776 ; N uni1EA0 ; G 1578 -U 7841 ; WX 648 ; N uni1EA1 ; G 1579 -U 7842 ; WX 776 ; N uni1EA2 ; G 1580 -U 7843 ; WX 648 ; N uni1EA3 ; G 1581 -U 7844 ; WX 776 ; N uni1EA4 ; G 1582 -U 7845 ; WX 648 ; N uni1EA5 ; G 1583 -U 7846 ; WX 776 ; N uni1EA6 ; G 1584 -U 7847 ; WX 648 ; N uni1EA7 ; G 1585 -U 7848 ; WX 776 ; N uni1EA8 ; G 1586 -U 7849 ; WX 648 ; N uni1EA9 ; G 1587 -U 7850 ; WX 776 ; N uni1EAA ; G 1588 -U 7851 ; WX 648 ; N uni1EAB ; G 1589 -U 7852 ; WX 776 ; N uni1EAC ; G 1590 -U 7853 ; WX 648 ; N uni1EAD ; G 1591 -U 7854 ; WX 776 ; N uni1EAE ; G 1592 -U 7855 ; WX 648 ; N uni1EAF ; G 1593 -U 7856 ; WX 776 ; N uni1EB0 ; G 1594 -U 7857 ; WX 648 ; N uni1EB1 ; G 1595 -U 7858 ; WX 776 ; N uni1EB2 ; G 1596 -U 7859 ; WX 648 ; N uni1EB3 ; G 1597 -U 7860 ; WX 776 ; N uni1EB4 ; G 1598 -U 7861 ; WX 648 ; N uni1EB5 ; G 1599 -U 7862 ; WX 776 ; N uni1EB6 ; G 1600 -U 7863 ; WX 648 ; N uni1EB7 ; G 1601 -U 7864 ; WX 762 ; N uni1EB8 ; G 1602 -U 7865 ; WX 636 ; N uni1EB9 ; G 1603 -U 7866 ; WX 762 ; N uni1EBA ; G 1604 -U 7867 ; WX 636 ; N uni1EBB ; G 1605 -U 7868 ; WX 762 ; N uni1EBC ; G 1606 -U 7869 ; WX 636 ; N uni1EBD ; G 1607 -U 7870 ; WX 762 ; N uni1EBE ; G 1608 -U 7871 ; WX 636 ; N uni1EBF ; G 1609 -U 7872 ; WX 762 ; N uni1EC0 ; G 1610 -U 7873 ; WX 636 ; N uni1EC1 ; G 1611 -U 7874 ; WX 762 ; N uni1EC2 ; G 1612 -U 7875 ; WX 636 ; N uni1EC3 ; G 1613 -U 7876 ; WX 762 ; N uni1EC4 ; G 1614 -U 7877 ; WX 636 ; N uni1EC5 ; G 1615 -U 7878 ; WX 762 ; N uni1EC6 ; G 1616 -U 7879 ; WX 636 ; N uni1EC7 ; G 1617 -U 7880 ; WX 468 ; N uni1EC8 ; G 1618 -U 7881 ; WX 380 ; N uni1EC9 ; G 1619 -U 7882 ; WX 468 ; N uni1ECA ; G 1620 -U 7883 ; WX 380 ; N uni1ECB ; G 1621 -U 7884 ; WX 871 ; N uni1ECC ; G 1622 -U 7885 ; WX 667 ; N uni1ECD ; G 1623 -U 7886 ; WX 871 ; N uni1ECE ; G 1624 -U 7887 ; WX 667 ; N uni1ECF ; G 1625 -U 7888 ; WX 871 ; N uni1ED0 ; G 1626 -U 7889 ; WX 667 ; N uni1ED1 ; G 1627 -U 7890 ; WX 871 ; N uni1ED2 ; G 1628 -U 7891 ; WX 667 ; N uni1ED3 ; G 1629 -U 7892 ; WX 871 ; N uni1ED4 ; G 1630 -U 7893 ; WX 667 ; N uni1ED5 ; G 1631 -U 7894 ; WX 871 ; N uni1ED6 ; G 1632 -U 7895 ; WX 667 ; N uni1ED7 ; G 1633 -U 7896 ; WX 871 ; N uni1ED8 ; G 1634 -U 7897 ; WX 667 ; N uni1ED9 ; G 1635 -U 7898 ; WX 871 ; N uni1EDA ; G 1636 -U 7899 ; WX 667 ; N uni1EDB ; G 1637 -U 7900 ; WX 871 ; N uni1EDC ; G 1638 -U 7901 ; WX 667 ; N uni1EDD ; G 1639 -U 7902 ; WX 871 ; N uni1EDE ; G 1640 -U 7903 ; WX 667 ; N uni1EDF ; G 1641 -U 7904 ; WX 871 ; N uni1EE0 ; G 1642 -U 7905 ; WX 667 ; N uni1EE1 ; G 1643 -U 7906 ; WX 871 ; N uni1EE2 ; G 1644 -U 7907 ; WX 667 ; N uni1EE3 ; G 1645 -U 7908 ; WX 872 ; N uni1EE4 ; G 1646 -U 7909 ; WX 727 ; N uni1EE5 ; G 1647 -U 7910 ; WX 872 ; N uni1EE6 ; G 1648 -U 7911 ; WX 727 ; N uni1EE7 ; G 1649 -U 7912 ; WX 872 ; N uni1EE8 ; G 1650 -U 7913 ; WX 727 ; N uni1EE9 ; G 1651 -U 7914 ; WX 872 ; N uni1EEA ; G 1652 -U 7915 ; WX 727 ; N uni1EEB ; G 1653 -U 7916 ; WX 872 ; N uni1EEC ; G 1654 -U 7917 ; WX 727 ; N uni1EED ; G 1655 -U 7918 ; WX 872 ; N uni1EEE ; G 1656 -U 7919 ; WX 727 ; N uni1EEF ; G 1657 -U 7920 ; WX 872 ; N uni1EF0 ; G 1658 -U 7921 ; WX 727 ; N uni1EF1 ; G 1659 -U 7922 ; WX 714 ; N Ygrave ; G 1660 -U 7923 ; WX 581 ; N ygrave ; G 1661 -U 7924 ; WX 714 ; N uni1EF4 ; G 1662 -U 7925 ; WX 581 ; N uni1EF5 ; G 1663 -U 7926 ; WX 714 ; N uni1EF6 ; G 1664 -U 7927 ; WX 581 ; N uni1EF7 ; G 1665 -U 7928 ; WX 714 ; N uni1EF8 ; G 1666 -U 7929 ; WX 581 ; N uni1EF9 ; G 1667 -U 7930 ; WX 1078 ; N uni1EFA ; G 1668 -U 7931 ; WX 701 ; N uni1EFB ; G 1669 -U 7936 ; WX 770 ; N uni1F00 ; G 1670 -U 7937 ; WX 770 ; N uni1F01 ; G 1671 -U 7938 ; WX 770 ; N uni1F02 ; G 1672 -U 7939 ; WX 770 ; N uni1F03 ; G 1673 -U 7940 ; WX 770 ; N uni1F04 ; G 1674 -U 7941 ; WX 770 ; N uni1F05 ; G 1675 -U 7942 ; WX 770 ; N uni1F06 ; G 1676 -U 7943 ; WX 770 ; N uni1F07 ; G 1677 -U 7944 ; WX 776 ; N uni1F08 ; G 1678 -U 7945 ; WX 776 ; N uni1F09 ; G 1679 -U 7946 ; WX 978 ; N uni1F0A ; G 1680 -U 7947 ; WX 978 ; N uni1F0B ; G 1681 -U 7948 ; WX 832 ; N uni1F0C ; G 1682 -U 7949 ; WX 849 ; N uni1F0D ; G 1683 -U 7950 ; WX 776 ; N uni1F0E ; G 1684 -U 7951 ; WX 776 ; N uni1F0F ; G 1685 -U 7952 ; WX 608 ; N uni1F10 ; G 1686 -U 7953 ; WX 608 ; N uni1F11 ; G 1687 -U 7954 ; WX 608 ; N uni1F12 ; G 1688 -U 7955 ; WX 608 ; N uni1F13 ; G 1689 -U 7956 ; WX 608 ; N uni1F14 ; G 1690 -U 7957 ; WX 608 ; N uni1F15 ; G 1691 -U 7960 ; WX 917 ; N uni1F18 ; G 1692 -U 7961 ; WX 909 ; N uni1F19 ; G 1693 -U 7962 ; WX 1169 ; N uni1F1A ; G 1694 -U 7963 ; WX 1169 ; N uni1F1B ; G 1695 -U 7964 ; WX 1093 ; N uni1F1C ; G 1696 -U 7965 ; WX 1120 ; N uni1F1D ; G 1697 -U 7968 ; WX 727 ; N uni1F20 ; G 1698 -U 7969 ; WX 727 ; N uni1F21 ; G 1699 -U 7970 ; WX 727 ; N uni1F22 ; G 1700 -U 7971 ; WX 727 ; N uni1F23 ; G 1701 -U 7972 ; WX 727 ; N uni1F24 ; G 1702 -U 7973 ; WX 727 ; N uni1F25 ; G 1703 -U 7974 ; WX 727 ; N uni1F26 ; G 1704 -U 7975 ; WX 727 ; N uni1F27 ; G 1705 -U 7976 ; WX 1100 ; N uni1F28 ; G 1706 -U 7977 ; WX 1094 ; N uni1F29 ; G 1707 -U 7978 ; WX 1358 ; N uni1F2A ; G 1708 -U 7979 ; WX 1361 ; N uni1F2B ; G 1709 -U 7980 ; WX 1279 ; N uni1F2C ; G 1710 -U 7981 ; WX 1308 ; N uni1F2D ; G 1711 -U 7982 ; WX 1197 ; N uni1F2E ; G 1712 -U 7983 ; WX 1194 ; N uni1F2F ; G 1713 -U 7984 ; WX 484 ; N uni1F30 ; G 1714 -U 7985 ; WX 484 ; N uni1F31 ; G 1715 -U 7986 ; WX 484 ; N uni1F32 ; G 1716 -U 7987 ; WX 484 ; N uni1F33 ; G 1717 -U 7988 ; WX 484 ; N uni1F34 ; G 1718 -U 7989 ; WX 484 ; N uni1F35 ; G 1719 -U 7990 ; WX 484 ; N uni1F36 ; G 1720 -U 7991 ; WX 484 ; N uni1F37 ; G 1721 -U 7992 ; WX 629 ; N uni1F38 ; G 1722 -U 7993 ; WX 617 ; N uni1F39 ; G 1723 -U 7994 ; WX 878 ; N uni1F3A ; G 1724 -U 7995 ; WX 881 ; N uni1F3B ; G 1725 -U 7996 ; WX 799 ; N uni1F3C ; G 1726 -U 7997 ; WX 831 ; N uni1F3D ; G 1727 -U 7998 ; WX 723 ; N uni1F3E ; G 1728 -U 7999 ; WX 714 ; N uni1F3F ; G 1729 -U 8000 ; WX 667 ; N uni1F40 ; G 1730 -U 8001 ; WX 667 ; N uni1F41 ; G 1731 -U 8002 ; WX 667 ; N uni1F42 ; G 1732 -U 8003 ; WX 667 ; N uni1F43 ; G 1733 -U 8004 ; WX 667 ; N uni1F44 ; G 1734 -U 8005 ; WX 667 ; N uni1F45 ; G 1735 -U 8008 ; WX 900 ; N uni1F48 ; G 1736 -U 8009 ; WX 935 ; N uni1F49 ; G 1737 -U 8010 ; WX 1240 ; N uni1F4A ; G 1738 -U 8011 ; WX 1237 ; N uni1F4B ; G 1739 -U 8012 ; WX 1035 ; N uni1F4C ; G 1740 -U 8013 ; WX 1066 ; N uni1F4D ; G 1741 -U 8016 ; WX 694 ; N uni1F50 ; G 1742 -U 8017 ; WX 694 ; N uni1F51 ; G 1743 -U 8018 ; WX 694 ; N uni1F52 ; G 1744 -U 8019 ; WX 694 ; N uni1F53 ; G 1745 -U 8020 ; WX 694 ; N uni1F54 ; G 1746 -U 8021 ; WX 694 ; N uni1F55 ; G 1747 -U 8022 ; WX 694 ; N uni1F56 ; G 1748 -U 8023 ; WX 694 ; N uni1F57 ; G 1749 -U 8025 ; WX 922 ; N uni1F59 ; G 1750 -U 8027 ; WX 1186 ; N uni1F5B ; G 1751 -U 8029 ; WX 1133 ; N uni1F5D ; G 1752 -U 8031 ; WX 1019 ; N uni1F5F ; G 1753 -U 8032 ; WX 952 ; N uni1F60 ; G 1754 -U 8033 ; WX 952 ; N uni1F61 ; G 1755 -U 8034 ; WX 952 ; N uni1F62 ; G 1756 -U 8035 ; WX 952 ; N uni1F63 ; G 1757 -U 8036 ; WX 952 ; N uni1F64 ; G 1758 -U 8037 ; WX 952 ; N uni1F65 ; G 1759 -U 8038 ; WX 952 ; N uni1F66 ; G 1760 -U 8039 ; WX 952 ; N uni1F67 ; G 1761 -U 8040 ; WX 931 ; N uni1F68 ; G 1762 -U 8041 ; WX 963 ; N uni1F69 ; G 1763 -U 8042 ; WX 1268 ; N uni1F6A ; G 1764 -U 8043 ; WX 1274 ; N uni1F6B ; G 1765 -U 8044 ; WX 1054 ; N uni1F6C ; G 1766 -U 8045 ; WX 1088 ; N uni1F6D ; G 1767 -U 8046 ; WX 1023 ; N uni1F6E ; G 1768 -U 8047 ; WX 1060 ; N uni1F6F ; G 1769 -U 8048 ; WX 770 ; N uni1F70 ; G 1770 -U 8049 ; WX 770 ; N uni1F71 ; G 1771 -U 8050 ; WX 608 ; N uni1F72 ; G 1772 -U 8051 ; WX 608 ; N uni1F73 ; G 1773 -U 8052 ; WX 727 ; N uni1F74 ; G 1774 -U 8053 ; WX 727 ; N uni1F75 ; G 1775 -U 8054 ; WX 484 ; N uni1F76 ; G 1776 -U 8055 ; WX 484 ; N uni1F77 ; G 1777 -U 8056 ; WX 667 ; N uni1F78 ; G 1778 -U 8057 ; WX 667 ; N uni1F79 ; G 1779 -U 8058 ; WX 694 ; N uni1F7A ; G 1780 -U 8059 ; WX 694 ; N uni1F7B ; G 1781 -U 8060 ; WX 952 ; N uni1F7C ; G 1782 -U 8061 ; WX 952 ; N uni1F7D ; G 1783 -U 8064 ; WX 770 ; N uni1F80 ; G 1784 -U 8065 ; WX 770 ; N uni1F81 ; G 1785 -U 8066 ; WX 770 ; N uni1F82 ; G 1786 -U 8067 ; WX 770 ; N uni1F83 ; G 1787 -U 8068 ; WX 770 ; N uni1F84 ; G 1788 -U 8069 ; WX 770 ; N uni1F85 ; G 1789 -U 8070 ; WX 770 ; N uni1F86 ; G 1790 -U 8071 ; WX 770 ; N uni1F87 ; G 1791 -U 8072 ; WX 776 ; N uni1F88 ; G 1792 -U 8073 ; WX 776 ; N uni1F89 ; G 1793 -U 8074 ; WX 978 ; N uni1F8A ; G 1794 -U 8075 ; WX 978 ; N uni1F8B ; G 1795 -U 8076 ; WX 832 ; N uni1F8C ; G 1796 -U 8077 ; WX 849 ; N uni1F8D ; G 1797 -U 8078 ; WX 776 ; N uni1F8E ; G 1798 -U 8079 ; WX 776 ; N uni1F8F ; G 1799 -U 8080 ; WX 727 ; N uni1F90 ; G 1800 -U 8081 ; WX 727 ; N uni1F91 ; G 1801 -U 8082 ; WX 727 ; N uni1F92 ; G 1802 -U 8083 ; WX 727 ; N uni1F93 ; G 1803 -U 8084 ; WX 727 ; N uni1F94 ; G 1804 -U 8085 ; WX 727 ; N uni1F95 ; G 1805 -U 8086 ; WX 727 ; N uni1F96 ; G 1806 -U 8087 ; WX 727 ; N uni1F97 ; G 1807 -U 8088 ; WX 1100 ; N uni1F98 ; G 1808 -U 8089 ; WX 1094 ; N uni1F99 ; G 1809 -U 8090 ; WX 1358 ; N uni1F9A ; G 1810 -U 8091 ; WX 1361 ; N uni1F9B ; G 1811 -U 8092 ; WX 1279 ; N uni1F9C ; G 1812 -U 8093 ; WX 1308 ; N uni1F9D ; G 1813 -U 8094 ; WX 1197 ; N uni1F9E ; G 1814 -U 8095 ; WX 1194 ; N uni1F9F ; G 1815 -U 8096 ; WX 952 ; N uni1FA0 ; G 1816 -U 8097 ; WX 952 ; N uni1FA1 ; G 1817 -U 8098 ; WX 952 ; N uni1FA2 ; G 1818 -U 8099 ; WX 952 ; N uni1FA3 ; G 1819 -U 8100 ; WX 952 ; N uni1FA4 ; G 1820 -U 8101 ; WX 952 ; N uni1FA5 ; G 1821 -U 8102 ; WX 952 ; N uni1FA6 ; G 1822 -U 8103 ; WX 952 ; N uni1FA7 ; G 1823 -U 8104 ; WX 931 ; N uni1FA8 ; G 1824 -U 8105 ; WX 963 ; N uni1FA9 ; G 1825 -U 8106 ; WX 1268 ; N uni1FAA ; G 1826 -U 8107 ; WX 1274 ; N uni1FAB ; G 1827 -U 8108 ; WX 1054 ; N uni1FAC ; G 1828 -U 8109 ; WX 1088 ; N uni1FAD ; G 1829 -U 8110 ; WX 1023 ; N uni1FAE ; G 1830 -U 8111 ; WX 1060 ; N uni1FAF ; G 1831 -U 8112 ; WX 770 ; N uni1FB0 ; G 1832 -U 8113 ; WX 770 ; N uni1FB1 ; G 1833 -U 8114 ; WX 770 ; N uni1FB2 ; G 1834 -U 8115 ; WX 770 ; N uni1FB3 ; G 1835 -U 8116 ; WX 770 ; N uni1FB4 ; G 1836 -U 8118 ; WX 770 ; N uni1FB6 ; G 1837 -U 8119 ; WX 770 ; N uni1FB7 ; G 1838 -U 8120 ; WX 776 ; N uni1FB8 ; G 1839 -U 8121 ; WX 776 ; N uni1FB9 ; G 1840 -U 8122 ; WX 811 ; N uni1FBA ; G 1841 -U 8123 ; WX 776 ; N uni1FBB ; G 1842 -U 8124 ; WX 776 ; N uni1FBC ; G 1843 -U 8125 ; WX 500 ; N uni1FBD ; G 1844 -U 8126 ; WX 500 ; N uni1FBE ; G 1845 -U 8127 ; WX 500 ; N uni1FBF ; G 1846 -U 8128 ; WX 500 ; N uni1FC0 ; G 1847 -U 8129 ; WX 500 ; N uni1FC1 ; G 1848 -U 8130 ; WX 727 ; N uni1FC2 ; G 1849 -U 8131 ; WX 727 ; N uni1FC3 ; G 1850 -U 8132 ; WX 727 ; N uni1FC4 ; G 1851 -U 8134 ; WX 727 ; N uni1FC6 ; G 1852 -U 8135 ; WX 727 ; N uni1FC7 ; G 1853 -U 8136 ; WX 1000 ; N uni1FC8 ; G 1854 -U 8137 ; WX 947 ; N uni1FC9 ; G 1855 -U 8138 ; WX 1191 ; N uni1FCA ; G 1856 -U 8139 ; WX 1118 ; N uni1FCB ; G 1857 -U 8140 ; WX 945 ; N uni1FCC ; G 1858 -U 8141 ; WX 500 ; N uni1FCD ; G 1859 -U 8142 ; WX 500 ; N uni1FCE ; G 1860 -U 8143 ; WX 500 ; N uni1FCF ; G 1861 -U 8144 ; WX 484 ; N uni1FD0 ; G 1862 -U 8145 ; WX 484 ; N uni1FD1 ; G 1863 -U 8146 ; WX 484 ; N uni1FD2 ; G 1864 -U 8147 ; WX 484 ; N uni1FD3 ; G 1865 -U 8150 ; WX 484 ; N uni1FD6 ; G 1866 -U 8151 ; WX 484 ; N uni1FD7 ; G 1867 -U 8152 ; WX 468 ; N uni1FD8 ; G 1868 -U 8153 ; WX 468 ; N uni1FD9 ; G 1869 -U 8154 ; WX 714 ; N uni1FDA ; G 1870 -U 8155 ; WX 662 ; N uni1FDB ; G 1871 -U 8157 ; WX 500 ; N uni1FDD ; G 1872 -U 8158 ; WX 500 ; N uni1FDE ; G 1873 -U 8159 ; WX 500 ; N uni1FDF ; G 1874 -U 8160 ; WX 694 ; N uni1FE0 ; G 1875 -U 8161 ; WX 694 ; N uni1FE1 ; G 1876 -U 8162 ; WX 694 ; N uni1FE2 ; G 1877 -U 8163 ; WX 694 ; N uni1FE3 ; G 1878 -U 8164 ; WX 665 ; N uni1FE4 ; G 1879 -U 8165 ; WX 665 ; N uni1FE5 ; G 1880 -U 8166 ; WX 694 ; N uni1FE6 ; G 1881 -U 8167 ; WX 694 ; N uni1FE7 ; G 1882 -U 8168 ; WX 714 ; N uni1FE8 ; G 1883 -U 8169 ; WX 714 ; N uni1FE9 ; G 1884 -U 8170 ; WX 1019 ; N uni1FEA ; G 1885 -U 8171 ; WX 953 ; N uni1FEB ; G 1886 -U 8172 ; WX 910 ; N uni1FEC ; G 1887 -U 8173 ; WX 500 ; N uni1FED ; G 1888 -U 8174 ; WX 500 ; N uni1FEE ; G 1889 -U 8175 ; WX 500 ; N uni1FEF ; G 1890 -U 8178 ; WX 952 ; N uni1FF2 ; G 1891 -U 8179 ; WX 952 ; N uni1FF3 ; G 1892 -U 8180 ; WX 952 ; N uni1FF4 ; G 1893 -U 8182 ; WX 952 ; N uni1FF6 ; G 1894 -U 8183 ; WX 952 ; N uni1FF7 ; G 1895 -U 8184 ; WX 1069 ; N uni1FF8 ; G 1896 -U 8185 ; WX 887 ; N uni1FF9 ; G 1897 -U 8186 ; WX 1101 ; N uni1FFA ; G 1898 -U 8187 ; WX 911 ; N uni1FFB ; G 1899 -U 8188 ; WX 890 ; N uni1FFC ; G 1900 -U 8189 ; WX 500 ; N uni1FFD ; G 1901 -U 8190 ; WX 500 ; N uni1FFE ; G 1902 -U 8192 ; WX 500 ; N uni2000 ; G 1903 -U 8193 ; WX 1000 ; N uni2001 ; G 1904 -U 8194 ; WX 500 ; N uni2002 ; G 1905 -U 8195 ; WX 1000 ; N uni2003 ; G 1906 -U 8196 ; WX 330 ; N uni2004 ; G 1907 -U 8197 ; WX 250 ; N uni2005 ; G 1908 -U 8198 ; WX 167 ; N uni2006 ; G 1909 -U 8199 ; WX 696 ; N uni2007 ; G 1910 -U 8200 ; WX 348 ; N uni2008 ; G 1911 -U 8201 ; WX 200 ; N uni2009 ; G 1912 -U 8202 ; WX 100 ; N uni200A ; G 1913 -U 8203 ; WX 0 ; N uni200B ; G 1914 -U 8204 ; WX 0 ; N uni200C ; G 1915 -U 8205 ; WX 0 ; N uni200D ; G 1916 -U 8206 ; WX 0 ; N uni200E ; G 1917 -U 8207 ; WX 0 ; N uni200F ; G 1918 -U 8208 ; WX 415 ; N uni2010 ; G 1919 -U 8209 ; WX 415 ; N uni2011 ; G 1920 -U 8210 ; WX 696 ; N figuredash ; G 1921 -U 8211 ; WX 500 ; N endash ; G 1922 -U 8212 ; WX 1000 ; N emdash ; G 1923 -U 8213 ; WX 1000 ; N uni2015 ; G 1924 -U 8214 ; WX 500 ; N uni2016 ; G 1925 -U 8215 ; WX 500 ; N underscoredbl ; G 1926 -U 8216 ; WX 348 ; N quoteleft ; G 1927 -U 8217 ; WX 348 ; N quoteright ; G 1928 -U 8218 ; WX 348 ; N quotesinglbase ; G 1929 -U 8219 ; WX 348 ; N quotereversed ; G 1930 -U 8220 ; WX 575 ; N quotedblleft ; G 1931 -U 8221 ; WX 575 ; N quotedblright ; G 1932 -U 8222 ; WX 575 ; N quotedblbase ; G 1933 -U 8223 ; WX 575 ; N uni201F ; G 1934 -U 8224 ; WX 523 ; N dagger ; G 1935 -U 8225 ; WX 523 ; N daggerdbl ; G 1936 -U 8226 ; WX 639 ; N bullet ; G 1937 -U 8227 ; WX 639 ; N uni2023 ; G 1938 -U 8228 ; WX 348 ; N onedotenleader ; G 1939 -U 8229 ; WX 674 ; N twodotenleader ; G 1940 -U 8230 ; WX 1000 ; N ellipsis ; G 1941 -U 8234 ; WX 0 ; N uni202A ; G 1942 -U 8235 ; WX 0 ; N uni202B ; G 1943 -U 8236 ; WX 0 ; N uni202C ; G 1944 -U 8237 ; WX 0 ; N uni202D ; G 1945 -U 8238 ; WX 0 ; N uni202E ; G 1946 -U 8239 ; WX 200 ; N uni202F ; G 1947 -U 8240 ; WX 1385 ; N perthousand ; G 1948 -U 8241 ; WX 1820 ; N uni2031 ; G 1949 -U 8242 ; WX 264 ; N minute ; G 1950 -U 8243 ; WX 447 ; N second ; G 1951 -U 8244 ; WX 630 ; N uni2034 ; G 1952 -U 8245 ; WX 264 ; N uni2035 ; G 1953 -U 8246 ; WX 447 ; N uni2036 ; G 1954 -U 8247 ; WX 630 ; N uni2037 ; G 1955 -U 8248 ; WX 733 ; N uni2038 ; G 1956 -U 8249 ; WX 400 ; N guilsinglleft ; G 1957 -U 8250 ; WX 400 ; N guilsinglright ; G 1958 -U 8252 ; WX 629 ; N exclamdbl ; G 1959 -U 8253 ; WX 586 ; N uni203D ; G 1960 -U 8254 ; WX 500 ; N uni203E ; G 1961 -U 8258 ; WX 1023 ; N uni2042 ; G 1962 -U 8260 ; WX 167 ; N fraction ; G 1963 -U 8261 ; WX 473 ; N uni2045 ; G 1964 -U 8262 ; WX 473 ; N uni2046 ; G 1965 -U 8263 ; WX 1082 ; N uni2047 ; G 1966 -U 8264 ; WX 856 ; N uni2048 ; G 1967 -U 8265 ; WX 856 ; N uni2049 ; G 1968 -U 8267 ; WX 636 ; N uni204B ; G 1969 -U 8268 ; WX 500 ; N uni204C ; G 1970 -U 8269 ; WX 500 ; N uni204D ; G 1971 -U 8270 ; WX 523 ; N uni204E ; G 1972 -U 8271 ; WX 369 ; N uni204F ; G 1973 -U 8273 ; WX 523 ; N uni2051 ; G 1974 -U 8274 ; WX 556 ; N uni2052 ; G 1975 -U 8275 ; WX 1000 ; N uni2053 ; G 1976 -U 8279 ; WX 813 ; N uni2057 ; G 1977 -U 8287 ; WX 222 ; N uni205F ; G 1978 -U 8288 ; WX 0 ; N uni2060 ; G 1979 -U 8289 ; WX 0 ; N uni2061 ; G 1980 -U 8290 ; WX 0 ; N uni2062 ; G 1981 -U 8291 ; WX 0 ; N uni2063 ; G 1982 -U 8292 ; WX 0 ; N uni2064 ; G 1983 -U 8298 ; WX 0 ; N uni206A ; G 1984 -U 8299 ; WX 0 ; N uni206B ; G 1985 -U 8300 ; WX 0 ; N uni206C ; G 1986 -U 8301 ; WX 0 ; N uni206D ; G 1987 -U 8302 ; WX 0 ; N uni206E ; G 1988 -U 8303 ; WX 0 ; N uni206F ; G 1989 -U 8304 ; WX 438 ; N uni2070 ; G 1990 -U 8305 ; WX 239 ; N uni2071 ; G 1991 -U 8308 ; WX 438 ; N uni2074 ; G 1992 -U 8309 ; WX 438 ; N uni2075 ; G 1993 -U 8310 ; WX 438 ; N uni2076 ; G 1994 -U 8311 ; WX 438 ; N uni2077 ; G 1995 -U 8312 ; WX 438 ; N uni2078 ; G 1996 -U 8313 ; WX 438 ; N uni2079 ; G 1997 -U 8314 ; WX 528 ; N uni207A ; G 1998 -U 8315 ; WX 528 ; N uni207B ; G 1999 -U 8316 ; WX 528 ; N uni207C ; G 2000 -U 8317 ; WX 298 ; N uni207D ; G 2001 -U 8318 ; WX 298 ; N uni207E ; G 2002 -U 8319 ; WX 519 ; N uni207F ; G 2003 -U 8320 ; WX 438 ; N uni2080 ; G 2004 -U 8321 ; WX 438 ; N uni2081 ; G 2005 -U 8322 ; WX 438 ; N uni2082 ; G 2006 -U 8323 ; WX 438 ; N uni2083 ; G 2007 -U 8324 ; WX 438 ; N uni2084 ; G 2008 -U 8325 ; WX 438 ; N uni2085 ; G 2009 -U 8326 ; WX 438 ; N uni2086 ; G 2010 -U 8327 ; WX 438 ; N uni2087 ; G 2011 -U 8328 ; WX 438 ; N uni2088 ; G 2012 -U 8329 ; WX 438 ; N uni2089 ; G 2013 -U 8330 ; WX 528 ; N uni208A ; G 2014 -U 8331 ; WX 528 ; N uni208B ; G 2015 -U 8332 ; WX 528 ; N uni208C ; G 2016 -U 8333 ; WX 298 ; N uni208D ; G 2017 -U 8334 ; WX 298 ; N uni208E ; G 2018 -U 8336 ; WX 466 ; N uni2090 ; G 2019 -U 8337 ; WX 444 ; N uni2091 ; G 2020 -U 8338 ; WX 467 ; N uni2092 ; G 2021 -U 8339 ; WX 475 ; N uni2093 ; G 2022 -U 8340 ; WX 444 ; N uni2094 ; G 2023 -U 8341 ; WX 521 ; N uni2095 ; G 2024 -U 8342 ; WX 523 ; N uni2096 ; G 2025 -U 8343 ; WX 292 ; N uni2097 ; G 2026 -U 8344 ; WX 729 ; N uni2098 ; G 2027 -U 8345 ; WX 519 ; N uni2099 ; G 2028 -U 8346 ; WX 499 ; N uni209A ; G 2029 -U 8347 ; WX 395 ; N uni209B ; G 2030 -U 8348 ; WX 371 ; N uni209C ; G 2031 -U 8358 ; WX 696 ; N uni20A6 ; G 2032 -U 8364 ; WX 696 ; N Euro ; G 2033 -U 8367 ; WX 1155 ; N uni20AF ; G 2034 -U 8369 ; WX 790 ; N uni20B1 ; G 2035 -U 8372 ; WX 876 ; N uni20B4 ; G 2036 -U 8373 ; WX 696 ; N uni20B5 ; G 2037 -U 8376 ; WX 696 ; N uni20B8 ; G 2038 -U 8377 ; WX 696 ; N uni20B9 ; G 2039 -U 8378 ; WX 696 ; N uni20BA ; G 2040 -U 8381 ; WX 696 ; N uni20BD ; G 2041 -U 8451 ; WX 1198 ; N uni2103 ; G 2042 -U 8457 ; WX 1112 ; N uni2109 ; G 2043 -U 8462 ; WX 727 ; N uni210E ; G 2044 -U 8463 ; WX 727 ; N uni210F ; G 2045 -U 8470 ; WX 1087 ; N uni2116 ; G 2046 -U 8482 ; WX 1000 ; N trademark ; G 2047 -U 8486 ; WX 890 ; N uni2126 ; G 2048 -U 8487 ; WX 890 ; N uni2127 ; G 2049 -U 8490 ; WX 869 ; N uni212A ; G 2050 -U 8491 ; WX 776 ; N uni212B ; G 2051 -U 8498 ; WX 710 ; N uni2132 ; G 2052 -U 8513 ; WX 775 ; N uni2141 ; G 2053 -U 8514 ; WX 557 ; N uni2142 ; G 2054 -U 8515 ; WX 637 ; N uni2143 ; G 2055 -U 8516 ; WX 760 ; N uni2144 ; G 2056 -U 8523 ; WX 903 ; N uni214B ; G 2057 -U 8526 ; WX 592 ; N uni214E ; G 2058 -U 8528 ; WX 1035 ; N uni2150 ; G 2059 -U 8529 ; WX 1035 ; N uni2151 ; G 2060 -U 8530 ; WX 1473 ; N uni2152 ; G 2061 -U 8531 ; WX 1035 ; N onethird ; G 2062 -U 8532 ; WX 1035 ; N twothirds ; G 2063 -U 8533 ; WX 1035 ; N uni2155 ; G 2064 -U 8534 ; WX 1035 ; N uni2156 ; G 2065 -U 8535 ; WX 1035 ; N uni2157 ; G 2066 -U 8536 ; WX 1035 ; N uni2158 ; G 2067 -U 8537 ; WX 1035 ; N uni2159 ; G 2068 -U 8538 ; WX 1035 ; N uni215A ; G 2069 -U 8539 ; WX 1035 ; N oneeighth ; G 2070 -U 8540 ; WX 1035 ; N threeeighths ; G 2071 -U 8541 ; WX 1035 ; N fiveeighths ; G 2072 -U 8542 ; WX 1035 ; N seveneighths ; G 2073 -U 8543 ; WX 615 ; N uni215F ; G 2074 -U 8544 ; WX 468 ; N uni2160 ; G 2075 -U 8545 ; WX 843 ; N uni2161 ; G 2076 -U 8546 ; WX 1218 ; N uni2162 ; G 2077 -U 8547 ; WX 1135 ; N uni2163 ; G 2078 -U 8548 ; WX 776 ; N uni2164 ; G 2079 -U 8549 ; WX 1150 ; N uni2165 ; G 2080 -U 8550 ; WX 1525 ; N uni2166 ; G 2081 -U 8551 ; WX 1900 ; N uni2167 ; G 2082 -U 8552 ; WX 1126 ; N uni2168 ; G 2083 -U 8553 ; WX 776 ; N uni2169 ; G 2084 -U 8554 ; WX 1127 ; N uni216A ; G 2085 -U 8555 ; WX 1502 ; N uni216B ; G 2086 -U 8556 ; WX 703 ; N uni216C ; G 2087 -U 8557 ; WX 796 ; N uni216D ; G 2088 -U 8558 ; WX 867 ; N uni216E ; G 2089 -U 8559 ; WX 1107 ; N uni216F ; G 2090 -U 8560 ; WX 380 ; N uni2170 ; G 2091 -U 8561 ; WX 760 ; N uni2171 ; G 2092 -U 8562 ; WX 1140 ; N uni2172 ; G 2093 -U 8563 ; WX 961 ; N uni2173 ; G 2094 -U 8564 ; WX 581 ; N uni2174 ; G 2095 -U 8565 ; WX 961 ; N uni2175 ; G 2096 -U 8566 ; WX 1341 ; N uni2176 ; G 2097 -U 8567 ; WX 1721 ; N uni2177 ; G 2098 -U 8568 ; WX 976 ; N uni2178 ; G 2099 -U 8569 ; WX 596 ; N uni2179 ; G 2100 -U 8570 ; WX 976 ; N uni217A ; G 2101 -U 8571 ; WX 1356 ; N uni217B ; G 2102 -U 8572 ; WX 380 ; N uni217C ; G 2103 -U 8573 ; WX 609 ; N uni217D ; G 2104 -U 8574 ; WX 699 ; N uni217E ; G 2105 -U 8575 ; WX 1058 ; N uni217F ; G 2106 -U 8576 ; WX 1255 ; N uni2180 ; G 2107 -U 8577 ; WX 867 ; N uni2181 ; G 2108 -U 8578 ; WX 1268 ; N uni2182 ; G 2109 -U 8579 ; WX 796 ; N uni2183 ; G 2110 -U 8580 ; WX 609 ; N uni2184 ; G 2111 -U 8581 ; WX 796 ; N uni2185 ; G 2112 -U 8585 ; WX 1035 ; N uni2189 ; G 2113 -U 8592 ; WX 838 ; N arrowleft ; G 2114 -U 8593 ; WX 838 ; N arrowup ; G 2115 -U 8594 ; WX 838 ; N arrowright ; G 2116 -U 8595 ; WX 838 ; N arrowdown ; G 2117 -U 8596 ; WX 838 ; N arrowboth ; G 2118 -U 8597 ; WX 838 ; N arrowupdn ; G 2119 -U 8598 ; WX 838 ; N uni2196 ; G 2120 -U 8599 ; WX 838 ; N uni2197 ; G 2121 -U 8600 ; WX 838 ; N uni2198 ; G 2122 -U 8601 ; WX 838 ; N uni2199 ; G 2123 -U 8602 ; WX 838 ; N uni219A ; G 2124 -U 8603 ; WX 838 ; N uni219B ; G 2125 -U 8604 ; WX 838 ; N uni219C ; G 2126 -U 8605 ; WX 838 ; N uni219D ; G 2127 -U 8606 ; WX 838 ; N uni219E ; G 2128 -U 8607 ; WX 838 ; N uni219F ; G 2129 -U 8608 ; WX 838 ; N uni21A0 ; G 2130 -U 8609 ; WX 838 ; N uni21A1 ; G 2131 -U 8610 ; WX 838 ; N uni21A2 ; G 2132 -U 8611 ; WX 838 ; N uni21A3 ; G 2133 -U 8612 ; WX 838 ; N uni21A4 ; G 2134 -U 8613 ; WX 838 ; N uni21A5 ; G 2135 -U 8614 ; WX 838 ; N uni21A6 ; G 2136 -U 8615 ; WX 838 ; N uni21A7 ; G 2137 -U 8616 ; WX 838 ; N arrowupdnbse ; G 2138 -U 8617 ; WX 838 ; N uni21A9 ; G 2139 -U 8618 ; WX 838 ; N uni21AA ; G 2140 -U 8619 ; WX 838 ; N uni21AB ; G 2141 -U 8620 ; WX 838 ; N uni21AC ; G 2142 -U 8621 ; WX 838 ; N uni21AD ; G 2143 -U 8622 ; WX 838 ; N uni21AE ; G 2144 -U 8623 ; WX 850 ; N uni21AF ; G 2145 -U 8624 ; WX 838 ; N uni21B0 ; G 2146 -U 8625 ; WX 838 ; N uni21B1 ; G 2147 -U 8626 ; WX 838 ; N uni21B2 ; G 2148 -U 8627 ; WX 838 ; N uni21B3 ; G 2149 -U 8628 ; WX 838 ; N uni21B4 ; G 2150 -U 8629 ; WX 838 ; N carriagereturn ; G 2151 -U 8630 ; WX 838 ; N uni21B6 ; G 2152 -U 8631 ; WX 838 ; N uni21B7 ; G 2153 -U 8632 ; WX 838 ; N uni21B8 ; G 2154 -U 8633 ; WX 838 ; N uni21B9 ; G 2155 -U 8634 ; WX 838 ; N uni21BA ; G 2156 -U 8635 ; WX 838 ; N uni21BB ; G 2157 -U 8636 ; WX 838 ; N uni21BC ; G 2158 -U 8637 ; WX 838 ; N uni21BD ; G 2159 -U 8638 ; WX 838 ; N uni21BE ; G 2160 -U 8639 ; WX 838 ; N uni21BF ; G 2161 -U 8640 ; WX 838 ; N uni21C0 ; G 2162 -U 8641 ; WX 838 ; N uni21C1 ; G 2163 -U 8642 ; WX 838 ; N uni21C2 ; G 2164 -U 8643 ; WX 838 ; N uni21C3 ; G 2165 -U 8644 ; WX 838 ; N uni21C4 ; G 2166 -U 8645 ; WX 838 ; N uni21C5 ; G 2167 -U 8646 ; WX 838 ; N uni21C6 ; G 2168 -U 8647 ; WX 838 ; N uni21C7 ; G 2169 -U 8648 ; WX 838 ; N uni21C8 ; G 2170 -U 8649 ; WX 838 ; N uni21C9 ; G 2171 -U 8650 ; WX 838 ; N uni21CA ; G 2172 -U 8651 ; WX 838 ; N uni21CB ; G 2173 -U 8652 ; WX 838 ; N uni21CC ; G 2174 -U 8653 ; WX 838 ; N uni21CD ; G 2175 -U 8654 ; WX 838 ; N uni21CE ; G 2176 -U 8655 ; WX 838 ; N uni21CF ; G 2177 -U 8656 ; WX 838 ; N arrowdblleft ; G 2178 -U 8657 ; WX 838 ; N arrowdblup ; G 2179 -U 8658 ; WX 838 ; N arrowdblright ; G 2180 -U 8659 ; WX 838 ; N arrowdbldown ; G 2181 -U 8660 ; WX 838 ; N arrowdblboth ; G 2182 -U 8661 ; WX 838 ; N uni21D5 ; G 2183 -U 8662 ; WX 838 ; N uni21D6 ; G 2184 -U 8663 ; WX 838 ; N uni21D7 ; G 2185 -U 8664 ; WX 838 ; N uni21D8 ; G 2186 -U 8665 ; WX 838 ; N uni21D9 ; G 2187 -U 8666 ; WX 838 ; N uni21DA ; G 2188 -U 8667 ; WX 838 ; N uni21DB ; G 2189 -U 8668 ; WX 838 ; N uni21DC ; G 2190 -U 8669 ; WX 838 ; N uni21DD ; G 2191 -U 8670 ; WX 838 ; N uni21DE ; G 2192 -U 8671 ; WX 838 ; N uni21DF ; G 2193 -U 8672 ; WX 838 ; N uni21E0 ; G 2194 -U 8673 ; WX 838 ; N uni21E1 ; G 2195 -U 8674 ; WX 838 ; N uni21E2 ; G 2196 -U 8675 ; WX 838 ; N uni21E3 ; G 2197 -U 8676 ; WX 838 ; N uni21E4 ; G 2198 -U 8677 ; WX 838 ; N uni21E5 ; G 2199 -U 8678 ; WX 838 ; N uni21E6 ; G 2200 -U 8679 ; WX 838 ; N uni21E7 ; G 2201 -U 8680 ; WX 838 ; N uni21E8 ; G 2202 -U 8681 ; WX 838 ; N uni21E9 ; G 2203 -U 8682 ; WX 838 ; N uni21EA ; G 2204 -U 8683 ; WX 838 ; N uni21EB ; G 2205 -U 8684 ; WX 838 ; N uni21EC ; G 2206 -U 8685 ; WX 838 ; N uni21ED ; G 2207 -U 8686 ; WX 838 ; N uni21EE ; G 2208 -U 8687 ; WX 838 ; N uni21EF ; G 2209 -U 8688 ; WX 838 ; N uni21F0 ; G 2210 -U 8689 ; WX 838 ; N uni21F1 ; G 2211 -U 8690 ; WX 838 ; N uni21F2 ; G 2212 -U 8691 ; WX 838 ; N uni21F3 ; G 2213 -U 8692 ; WX 838 ; N uni21F4 ; G 2214 -U 8693 ; WX 838 ; N uni21F5 ; G 2215 -U 8694 ; WX 838 ; N uni21F6 ; G 2216 -U 8695 ; WX 838 ; N uni21F7 ; G 2217 -U 8696 ; WX 838 ; N uni21F8 ; G 2218 -U 8697 ; WX 838 ; N uni21F9 ; G 2219 -U 8698 ; WX 838 ; N uni21FA ; G 2220 -U 8699 ; WX 838 ; N uni21FB ; G 2221 -U 8700 ; WX 838 ; N uni21FC ; G 2222 -U 8701 ; WX 838 ; N uni21FD ; G 2223 -U 8702 ; WX 838 ; N uni21FE ; G 2224 -U 8703 ; WX 838 ; N uni21FF ; G 2225 -U 8704 ; WX 641 ; N universal ; G 2226 -U 8706 ; WX 534 ; N partialdiff ; G 2227 -U 8707 ; WX 620 ; N existential ; G 2228 -U 8708 ; WX 620 ; N uni2204 ; G 2229 -U 8710 ; WX 753 ; N increment ; G 2230 -U 8711 ; WX 753 ; N gradient ; G 2231 -U 8712 ; WX 740 ; N element ; G 2232 -U 8713 ; WX 740 ; N notelement ; G 2233 -U 8715 ; WX 740 ; N suchthat ; G 2234 -U 8716 ; WX 740 ; N uni220C ; G 2235 -U 8719 ; WX 842 ; N product ; G 2236 -U 8720 ; WX 842 ; N uni2210 ; G 2237 -U 8721 ; WX 753 ; N summation ; G 2238 -U 8722 ; WX 838 ; N minus ; G 2239 -U 8723 ; WX 838 ; N uni2213 ; G 2240 -U 8724 ; WX 838 ; N uni2214 ; G 2241 -U 8725 ; WX 365 ; N uni2215 ; G 2242 -U 8727 ; WX 691 ; N asteriskmath ; G 2243 -U 8728 ; WX 519 ; N uni2218 ; G 2244 -U 8729 ; WX 519 ; N uni2219 ; G 2245 -U 8730 ; WX 657 ; N radical ; G 2246 -U 8731 ; WX 657 ; N uni221B ; G 2247 -U 8732 ; WX 657 ; N uni221C ; G 2248 -U 8733 ; WX 672 ; N proportional ; G 2249 -U 8734 ; WX 833 ; N infinity ; G 2250 -U 8735 ; WX 838 ; N orthogonal ; G 2251 -U 8736 ; WX 838 ; N angle ; G 2252 -U 8739 ; WX 324 ; N uni2223 ; G 2253 -U 8740 ; WX 607 ; N uni2224 ; G 2254 -U 8741 ; WX 529 ; N uni2225 ; G 2255 -U 8742 ; WX 773 ; N uni2226 ; G 2256 -U 8743 ; WX 812 ; N logicaland ; G 2257 -U 8744 ; WX 812 ; N logicalor ; G 2258 -U 8745 ; WX 838 ; N intersection ; G 2259 -U 8746 ; WX 838 ; N union ; G 2260 -U 8747 ; WX 579 ; N integral ; G 2261 -U 8748 ; WX 1000 ; N uni222C ; G 2262 -U 8749 ; WX 1391 ; N uni222D ; G 2263 -U 8760 ; WX 838 ; N uni2238 ; G 2264 -U 8761 ; WX 838 ; N uni2239 ; G 2265 -U 8762 ; WX 838 ; N uni223A ; G 2266 -U 8763 ; WX 838 ; N uni223B ; G 2267 -U 8764 ; WX 838 ; N similar ; G 2268 -U 8765 ; WX 838 ; N uni223D ; G 2269 -U 8770 ; WX 838 ; N uni2242 ; G 2270 -U 8771 ; WX 838 ; N uni2243 ; G 2271 -U 8776 ; WX 838 ; N approxequal ; G 2272 -U 8784 ; WX 838 ; N uni2250 ; G 2273 -U 8785 ; WX 838 ; N uni2251 ; G 2274 -U 8786 ; WX 838 ; N uni2252 ; G 2275 -U 8787 ; WX 838 ; N uni2253 ; G 2276 -U 8788 ; WX 1082 ; N uni2254 ; G 2277 -U 8789 ; WX 1082 ; N uni2255 ; G 2278 -U 8800 ; WX 838 ; N notequal ; G 2279 -U 8801 ; WX 838 ; N equivalence ; G 2280 -U 8804 ; WX 838 ; N lessequal ; G 2281 -U 8805 ; WX 838 ; N greaterequal ; G 2282 -U 8834 ; WX 838 ; N propersubset ; G 2283 -U 8835 ; WX 838 ; N propersuperset ; G 2284 -U 8836 ; WX 838 ; N notsubset ; G 2285 -U 8837 ; WX 838 ; N uni2285 ; G 2286 -U 8838 ; WX 838 ; N reflexsubset ; G 2287 -U 8839 ; WX 838 ; N reflexsuperset ; G 2288 -U 8844 ; WX 838 ; N uni228C ; G 2289 -U 8845 ; WX 838 ; N uni228D ; G 2290 -U 8846 ; WX 838 ; N uni228E ; G 2291 -U 8847 ; WX 838 ; N uni228F ; G 2292 -U 8848 ; WX 838 ; N uni2290 ; G 2293 -U 8849 ; WX 838 ; N uni2291 ; G 2294 -U 8850 ; WX 838 ; N uni2292 ; G 2295 -U 8851 ; WX 838 ; N uni2293 ; G 2296 -U 8852 ; WX 838 ; N uni2294 ; G 2297 -U 8853 ; WX 838 ; N circleplus ; G 2298 -U 8854 ; WX 838 ; N uni2296 ; G 2299 -U 8855 ; WX 838 ; N circlemultiply ; G 2300 -U 8856 ; WX 838 ; N uni2298 ; G 2301 -U 8857 ; WX 838 ; N uni2299 ; G 2302 -U 8858 ; WX 838 ; N uni229A ; G 2303 -U 8859 ; WX 838 ; N uni229B ; G 2304 -U 8860 ; WX 838 ; N uni229C ; G 2305 -U 8861 ; WX 838 ; N uni229D ; G 2306 -U 8862 ; WX 838 ; N uni229E ; G 2307 -U 8863 ; WX 838 ; N uni229F ; G 2308 -U 8864 ; WX 838 ; N uni22A0 ; G 2309 -U 8865 ; WX 838 ; N uni22A1 ; G 2310 -U 8866 ; WX 884 ; N uni22A2 ; G 2311 -U 8867 ; WX 884 ; N uni22A3 ; G 2312 -U 8868 ; WX 960 ; N uni22A4 ; G 2313 -U 8869 ; WX 960 ; N perpendicular ; G 2314 -U 8870 ; WX 616 ; N uni22A6 ; G 2315 -U 8871 ; WX 616 ; N uni22A7 ; G 2316 -U 8872 ; WX 884 ; N uni22A8 ; G 2317 -U 8873 ; WX 884 ; N uni22A9 ; G 2318 -U 8874 ; WX 884 ; N uni22AA ; G 2319 -U 8875 ; WX 1080 ; N uni22AB ; G 2320 -U 8876 ; WX 884 ; N uni22AC ; G 2321 -U 8877 ; WX 884 ; N uni22AD ; G 2322 -U 8878 ; WX 884 ; N uni22AE ; G 2323 -U 8879 ; WX 1080 ; N uni22AF ; G 2324 -U 8900 ; WX 626 ; N uni22C4 ; G 2325 -U 8901 ; WX 398 ; N dotmath ; G 2326 -U 8962 ; WX 834 ; N house ; G 2327 -U 8968 ; WX 473 ; N uni2308 ; G 2328 -U 8969 ; WX 473 ; N uni2309 ; G 2329 -U 8970 ; WX 473 ; N uni230A ; G 2330 -U 8971 ; WX 473 ; N uni230B ; G 2331 -U 8976 ; WX 838 ; N revlogicalnot ; G 2332 -U 8977 ; WX 539 ; N uni2311 ; G 2333 -U 8984 ; WX 928 ; N uni2318 ; G 2334 -U 8985 ; WX 838 ; N uni2319 ; G 2335 -U 8992 ; WX 579 ; N integraltp ; G 2336 -U 8993 ; WX 579 ; N integralbt ; G 2337 -U 8997 ; WX 1000 ; N uni2325 ; G 2338 -U 9000 ; WX 1443 ; N uni2328 ; G 2339 -U 9085 ; WX 1008 ; N uni237D ; G 2340 -U 9115 ; WX 500 ; N uni239B ; G 2341 -U 9116 ; WX 500 ; N uni239C ; G 2342 -U 9117 ; WX 500 ; N uni239D ; G 2343 -U 9118 ; WX 500 ; N uni239E ; G 2344 -U 9119 ; WX 500 ; N uni239F ; G 2345 -U 9120 ; WX 500 ; N uni23A0 ; G 2346 -U 9121 ; WX 500 ; N uni23A1 ; G 2347 -U 9122 ; WX 500 ; N uni23A2 ; G 2348 -U 9123 ; WX 500 ; N uni23A3 ; G 2349 -U 9124 ; WX 500 ; N uni23A4 ; G 2350 -U 9125 ; WX 500 ; N uni23A5 ; G 2351 -U 9126 ; WX 500 ; N uni23A6 ; G 2352 -U 9127 ; WX 750 ; N uni23A7 ; G 2353 -U 9128 ; WX 750 ; N uni23A8 ; G 2354 -U 9129 ; WX 750 ; N uni23A9 ; G 2355 -U 9130 ; WX 750 ; N uni23AA ; G 2356 -U 9131 ; WX 750 ; N uni23AB ; G 2357 -U 9132 ; WX 750 ; N uni23AC ; G 2358 -U 9133 ; WX 750 ; N uni23AD ; G 2359 -U 9134 ; WX 579 ; N uni23AE ; G 2360 -U 9167 ; WX 945 ; N uni23CF ; G 2361 -U 9251 ; WX 834 ; N uni2423 ; G 2362 -U 9472 ; WX 602 ; N SF100000 ; G 2363 -U 9473 ; WX 602 ; N uni2501 ; G 2364 -U 9474 ; WX 602 ; N SF110000 ; G 2365 -U 9475 ; WX 602 ; N uni2503 ; G 2366 -U 9476 ; WX 602 ; N uni2504 ; G 2367 -U 9477 ; WX 602 ; N uni2505 ; G 2368 -U 9478 ; WX 602 ; N uni2506 ; G 2369 -U 9479 ; WX 602 ; N uni2507 ; G 2370 -U 9480 ; WX 602 ; N uni2508 ; G 2371 -U 9481 ; WX 602 ; N uni2509 ; G 2372 -U 9482 ; WX 602 ; N uni250A ; G 2373 -U 9483 ; WX 602 ; N uni250B ; G 2374 -U 9484 ; WX 602 ; N SF010000 ; G 2375 -U 9485 ; WX 602 ; N uni250D ; G 2376 -U 9486 ; WX 602 ; N uni250E ; G 2377 -U 9487 ; WX 602 ; N uni250F ; G 2378 -U 9488 ; WX 602 ; N SF030000 ; G 2379 -U 9489 ; WX 602 ; N uni2511 ; G 2380 -U 9490 ; WX 602 ; N uni2512 ; G 2381 -U 9491 ; WX 602 ; N uni2513 ; G 2382 -U 9492 ; WX 602 ; N SF020000 ; G 2383 -U 9493 ; WX 602 ; N uni2515 ; G 2384 -U 9494 ; WX 602 ; N uni2516 ; G 2385 -U 9495 ; WX 602 ; N uni2517 ; G 2386 -U 9496 ; WX 602 ; N SF040000 ; G 2387 -U 9497 ; WX 602 ; N uni2519 ; G 2388 -U 9498 ; WX 602 ; N uni251A ; G 2389 -U 9499 ; WX 602 ; N uni251B ; G 2390 -U 9500 ; WX 602 ; N SF080000 ; G 2391 -U 9501 ; WX 602 ; N uni251D ; G 2392 -U 9502 ; WX 602 ; N uni251E ; G 2393 -U 9503 ; WX 602 ; N uni251F ; G 2394 -U 9504 ; WX 602 ; N uni2520 ; G 2395 -U 9505 ; WX 602 ; N uni2521 ; G 2396 -U 9506 ; WX 602 ; N uni2522 ; G 2397 -U 9507 ; WX 602 ; N uni2523 ; G 2398 -U 9508 ; WX 602 ; N SF090000 ; G 2399 -U 9509 ; WX 602 ; N uni2525 ; G 2400 -U 9510 ; WX 602 ; N uni2526 ; G 2401 -U 9511 ; WX 602 ; N uni2527 ; G 2402 -U 9512 ; WX 602 ; N uni2528 ; G 2403 -U 9513 ; WX 602 ; N uni2529 ; G 2404 -U 9514 ; WX 602 ; N uni252A ; G 2405 -U 9515 ; WX 602 ; N uni252B ; G 2406 -U 9516 ; WX 602 ; N SF060000 ; G 2407 -U 9517 ; WX 602 ; N uni252D ; G 2408 -U 9518 ; WX 602 ; N uni252E ; G 2409 -U 9519 ; WX 602 ; N uni252F ; G 2410 -U 9520 ; WX 602 ; N uni2530 ; G 2411 -U 9521 ; WX 602 ; N uni2531 ; G 2412 -U 9522 ; WX 602 ; N uni2532 ; G 2413 -U 9523 ; WX 602 ; N uni2533 ; G 2414 -U 9524 ; WX 602 ; N SF070000 ; G 2415 -U 9525 ; WX 602 ; N uni2535 ; G 2416 -U 9526 ; WX 602 ; N uni2536 ; G 2417 -U 9527 ; WX 602 ; N uni2537 ; G 2418 -U 9528 ; WX 602 ; N uni2538 ; G 2419 -U 9529 ; WX 602 ; N uni2539 ; G 2420 -U 9530 ; WX 602 ; N uni253A ; G 2421 -U 9531 ; WX 602 ; N uni253B ; G 2422 -U 9532 ; WX 602 ; N SF050000 ; G 2423 -U 9533 ; WX 602 ; N uni253D ; G 2424 -U 9534 ; WX 602 ; N uni253E ; G 2425 -U 9535 ; WX 602 ; N uni253F ; G 2426 -U 9536 ; WX 602 ; N uni2540 ; G 2427 -U 9537 ; WX 602 ; N uni2541 ; G 2428 -U 9538 ; WX 602 ; N uni2542 ; G 2429 -U 9539 ; WX 602 ; N uni2543 ; G 2430 -U 9540 ; WX 602 ; N uni2544 ; G 2431 -U 9541 ; WX 602 ; N uni2545 ; G 2432 -U 9542 ; WX 602 ; N uni2546 ; G 2433 -U 9543 ; WX 602 ; N uni2547 ; G 2434 -U 9544 ; WX 602 ; N uni2548 ; G 2435 -U 9545 ; WX 602 ; N uni2549 ; G 2436 -U 9546 ; WX 602 ; N uni254A ; G 2437 -U 9547 ; WX 602 ; N uni254B ; G 2438 -U 9548 ; WX 602 ; N uni254C ; G 2439 -U 9549 ; WX 602 ; N uni254D ; G 2440 -U 9550 ; WX 602 ; N uni254E ; G 2441 -U 9551 ; WX 602 ; N uni254F ; G 2442 -U 9552 ; WX 602 ; N SF430000 ; G 2443 -U 9553 ; WX 602 ; N SF240000 ; G 2444 -U 9554 ; WX 602 ; N SF510000 ; G 2445 -U 9555 ; WX 602 ; N SF520000 ; G 2446 -U 9556 ; WX 602 ; N SF390000 ; G 2447 -U 9557 ; WX 602 ; N SF220000 ; G 2448 -U 9558 ; WX 602 ; N SF210000 ; G 2449 -U 9559 ; WX 602 ; N SF250000 ; G 2450 -U 9560 ; WX 602 ; N SF500000 ; G 2451 -U 9561 ; WX 602 ; N SF490000 ; G 2452 -U 9562 ; WX 602 ; N SF380000 ; G 2453 -U 9563 ; WX 602 ; N SF280000 ; G 2454 -U 9564 ; WX 602 ; N SF270000 ; G 2455 -U 9565 ; WX 602 ; N SF260000 ; G 2456 -U 9566 ; WX 602 ; N SF360000 ; G 2457 -U 9567 ; WX 602 ; N SF370000 ; G 2458 -U 9568 ; WX 602 ; N SF420000 ; G 2459 -U 9569 ; WX 602 ; N SF190000 ; G 2460 -U 9570 ; WX 602 ; N SF200000 ; G 2461 -U 9571 ; WX 602 ; N SF230000 ; G 2462 -U 9572 ; WX 602 ; N SF470000 ; G 2463 -U 9573 ; WX 602 ; N SF480000 ; G 2464 -U 9574 ; WX 602 ; N SF410000 ; G 2465 -U 9575 ; WX 602 ; N SF450000 ; G 2466 -U 9576 ; WX 602 ; N SF460000 ; G 2467 -U 9577 ; WX 602 ; N SF400000 ; G 2468 -U 9578 ; WX 602 ; N SF540000 ; G 2469 -U 9579 ; WX 602 ; N SF530000 ; G 2470 -U 9580 ; WX 602 ; N SF440000 ; G 2471 -U 9581 ; WX 602 ; N uni256D ; G 2472 -U 9582 ; WX 602 ; N uni256E ; G 2473 -U 9583 ; WX 602 ; N uni256F ; G 2474 -U 9584 ; WX 602 ; N uni2570 ; G 2475 -U 9585 ; WX 602 ; N uni2571 ; G 2476 -U 9586 ; WX 602 ; N uni2572 ; G 2477 -U 9587 ; WX 602 ; N uni2573 ; G 2478 -U 9588 ; WX 602 ; N uni2574 ; G 2479 -U 9589 ; WX 602 ; N uni2575 ; G 2480 -U 9590 ; WX 602 ; N uni2576 ; G 2481 -U 9591 ; WX 602 ; N uni2577 ; G 2482 -U 9592 ; WX 602 ; N uni2578 ; G 2483 -U 9593 ; WX 602 ; N uni2579 ; G 2484 -U 9594 ; WX 602 ; N uni257A ; G 2485 -U 9595 ; WX 602 ; N uni257B ; G 2486 -U 9596 ; WX 602 ; N uni257C ; G 2487 -U 9597 ; WX 602 ; N uni257D ; G 2488 -U 9598 ; WX 602 ; N uni257E ; G 2489 -U 9599 ; WX 602 ; N uni257F ; G 2490 -U 9600 ; WX 769 ; N upblock ; G 2491 -U 9601 ; WX 769 ; N uni2581 ; G 2492 -U 9602 ; WX 769 ; N uni2582 ; G 2493 -U 9603 ; WX 769 ; N uni2583 ; G 2494 -U 9604 ; WX 769 ; N dnblock ; G 2495 -U 9605 ; WX 769 ; N uni2585 ; G 2496 -U 9606 ; WX 769 ; N uni2586 ; G 2497 -U 9607 ; WX 769 ; N uni2587 ; G 2498 -U 9608 ; WX 769 ; N block ; G 2499 -U 9609 ; WX 769 ; N uni2589 ; G 2500 -U 9610 ; WX 769 ; N uni258A ; G 2501 -U 9611 ; WX 769 ; N uni258B ; G 2502 -U 9612 ; WX 769 ; N lfblock ; G 2503 -U 9613 ; WX 769 ; N uni258D ; G 2504 -U 9614 ; WX 769 ; N uni258E ; G 2505 -U 9615 ; WX 769 ; N uni258F ; G 2506 -U 9616 ; WX 769 ; N rtblock ; G 2507 -U 9617 ; WX 769 ; N ltshade ; G 2508 -U 9618 ; WX 769 ; N shade ; G 2509 -U 9619 ; WX 769 ; N dkshade ; G 2510 -U 9620 ; WX 769 ; N uni2594 ; G 2511 -U 9621 ; WX 769 ; N uni2595 ; G 2512 -U 9622 ; WX 769 ; N uni2596 ; G 2513 -U 9623 ; WX 769 ; N uni2597 ; G 2514 -U 9624 ; WX 769 ; N uni2598 ; G 2515 -U 9625 ; WX 769 ; N uni2599 ; G 2516 -U 9626 ; WX 769 ; N uni259A ; G 2517 -U 9627 ; WX 769 ; N uni259B ; G 2518 -U 9628 ; WX 769 ; N uni259C ; G 2519 -U 9629 ; WX 769 ; N uni259D ; G 2520 -U 9630 ; WX 769 ; N uni259E ; G 2521 -U 9631 ; WX 769 ; N uni259F ; G 2522 -U 9632 ; WX 945 ; N filledbox ; G 2523 -U 9633 ; WX 945 ; N H22073 ; G 2524 -U 9634 ; WX 945 ; N uni25A2 ; G 2525 -U 9635 ; WX 945 ; N uni25A3 ; G 2526 -U 9636 ; WX 945 ; N uni25A4 ; G 2527 -U 9637 ; WX 945 ; N uni25A5 ; G 2528 -U 9638 ; WX 945 ; N uni25A6 ; G 2529 -U 9639 ; WX 945 ; N uni25A7 ; G 2530 -U 9640 ; WX 945 ; N uni25A8 ; G 2531 -U 9641 ; WX 945 ; N uni25A9 ; G 2532 -U 9642 ; WX 678 ; N H18543 ; G 2533 -U 9643 ; WX 678 ; N H18551 ; G 2534 -U 9644 ; WX 945 ; N filledrect ; G 2535 -U 9645 ; WX 945 ; N uni25AD ; G 2536 -U 9646 ; WX 550 ; N uni25AE ; G 2537 -U 9647 ; WX 550 ; N uni25AF ; G 2538 -U 9648 ; WX 769 ; N uni25B0 ; G 2539 -U 9649 ; WX 769 ; N uni25B1 ; G 2540 -U 9650 ; WX 769 ; N triagup ; G 2541 -U 9651 ; WX 769 ; N uni25B3 ; G 2542 -U 9652 ; WX 502 ; N uni25B4 ; G 2543 -U 9653 ; WX 502 ; N uni25B5 ; G 2544 -U 9654 ; WX 769 ; N uni25B6 ; G 2545 -U 9655 ; WX 769 ; N uni25B7 ; G 2546 -U 9656 ; WX 502 ; N uni25B8 ; G 2547 -U 9657 ; WX 502 ; N uni25B9 ; G 2548 -U 9658 ; WX 769 ; N triagrt ; G 2549 -U 9659 ; WX 769 ; N uni25BB ; G 2550 -U 9660 ; WX 769 ; N triagdn ; G 2551 -U 9661 ; WX 769 ; N uni25BD ; G 2552 -U 9662 ; WX 502 ; N uni25BE ; G 2553 -U 9663 ; WX 502 ; N uni25BF ; G 2554 -U 9664 ; WX 769 ; N uni25C0 ; G 2555 -U 9665 ; WX 769 ; N uni25C1 ; G 2556 -U 9666 ; WX 502 ; N uni25C2 ; G 2557 -U 9667 ; WX 502 ; N uni25C3 ; G 2558 -U 9668 ; WX 769 ; N triaglf ; G 2559 -U 9669 ; WX 769 ; N uni25C5 ; G 2560 -U 9670 ; WX 769 ; N uni25C6 ; G 2561 -U 9671 ; WX 769 ; N uni25C7 ; G 2562 -U 9672 ; WX 769 ; N uni25C8 ; G 2563 -U 9673 ; WX 873 ; N uni25C9 ; G 2564 -U 9674 ; WX 494 ; N lozenge ; G 2565 -U 9675 ; WX 873 ; N circle ; G 2566 -U 9676 ; WX 873 ; N uni25CC ; G 2567 -U 9677 ; WX 873 ; N uni25CD ; G 2568 -U 9678 ; WX 873 ; N uni25CE ; G 2569 -U 9679 ; WX 873 ; N H18533 ; G 2570 -U 9680 ; WX 873 ; N uni25D0 ; G 2571 -U 9681 ; WX 873 ; N uni25D1 ; G 2572 -U 9682 ; WX 873 ; N uni25D2 ; G 2573 -U 9683 ; WX 873 ; N uni25D3 ; G 2574 -U 9684 ; WX 873 ; N uni25D4 ; G 2575 -U 9685 ; WX 873 ; N uni25D5 ; G 2576 -U 9686 ; WX 527 ; N uni25D6 ; G 2577 -U 9687 ; WX 527 ; N uni25D7 ; G 2578 -U 9688 ; WX 791 ; N invbullet ; G 2579 -U 9689 ; WX 970 ; N invcircle ; G 2580 -U 9690 ; WX 970 ; N uni25DA ; G 2581 -U 9691 ; WX 970 ; N uni25DB ; G 2582 -U 9692 ; WX 387 ; N uni25DC ; G 2583 -U 9693 ; WX 387 ; N uni25DD ; G 2584 -U 9694 ; WX 387 ; N uni25DE ; G 2585 -U 9695 ; WX 387 ; N uni25DF ; G 2586 -U 9696 ; WX 873 ; N uni25E0 ; G 2587 -U 9697 ; WX 873 ; N uni25E1 ; G 2588 -U 9698 ; WX 769 ; N uni25E2 ; G 2589 -U 9699 ; WX 769 ; N uni25E3 ; G 2590 -U 9700 ; WX 769 ; N uni25E4 ; G 2591 -U 9701 ; WX 769 ; N uni25E5 ; G 2592 -U 9702 ; WX 590 ; N openbullet ; G 2593 -U 9703 ; WX 945 ; N uni25E7 ; G 2594 -U 9704 ; WX 945 ; N uni25E8 ; G 2595 -U 9705 ; WX 945 ; N uni25E9 ; G 2596 -U 9706 ; WX 945 ; N uni25EA ; G 2597 -U 9707 ; WX 945 ; N uni25EB ; G 2598 -U 9708 ; WX 769 ; N uni25EC ; G 2599 -U 9709 ; WX 769 ; N uni25ED ; G 2600 -U 9710 ; WX 769 ; N uni25EE ; G 2601 -U 9711 ; WX 1119 ; N uni25EF ; G 2602 -U 9712 ; WX 945 ; N uni25F0 ; G 2603 -U 9713 ; WX 945 ; N uni25F1 ; G 2604 -U 9714 ; WX 945 ; N uni25F2 ; G 2605 -U 9715 ; WX 945 ; N uni25F3 ; G 2606 -U 9716 ; WX 873 ; N uni25F4 ; G 2607 -U 9717 ; WX 873 ; N uni25F5 ; G 2608 -U 9718 ; WX 873 ; N uni25F6 ; G 2609 -U 9719 ; WX 873 ; N uni25F7 ; G 2610 -U 9720 ; WX 769 ; N uni25F8 ; G 2611 -U 9721 ; WX 769 ; N uni25F9 ; G 2612 -U 9722 ; WX 769 ; N uni25FA ; G 2613 -U 9723 ; WX 830 ; N uni25FB ; G 2614 -U 9724 ; WX 830 ; N uni25FC ; G 2615 -U 9725 ; WX 732 ; N uni25FD ; G 2616 -U 9726 ; WX 732 ; N uni25FE ; G 2617 -U 9727 ; WX 769 ; N uni25FF ; G 2618 -U 9728 ; WX 896 ; N uni2600 ; G 2619 -U 9784 ; WX 896 ; N uni2638 ; G 2620 -U 9785 ; WX 896 ; N uni2639 ; G 2621 -U 9786 ; WX 896 ; N smileface ; G 2622 -U 9787 ; WX 896 ; N invsmileface ; G 2623 -U 9788 ; WX 896 ; N sun ; G 2624 -U 9791 ; WX 614 ; N uni263F ; G 2625 -U 9792 ; WX 731 ; N female ; G 2626 -U 9793 ; WX 731 ; N uni2641 ; G 2627 -U 9794 ; WX 896 ; N male ; G 2628 -U 9795 ; WX 896 ; N uni2643 ; G 2629 -U 9796 ; WX 896 ; N uni2644 ; G 2630 -U 9797 ; WX 896 ; N uni2645 ; G 2631 -U 9798 ; WX 896 ; N uni2646 ; G 2632 -U 9799 ; WX 896 ; N uni2647 ; G 2633 -U 9824 ; WX 896 ; N spade ; G 2634 -U 9825 ; WX 896 ; N uni2661 ; G 2635 -U 9826 ; WX 896 ; N uni2662 ; G 2636 -U 9827 ; WX 896 ; N club ; G 2637 -U 9828 ; WX 896 ; N uni2664 ; G 2638 -U 9829 ; WX 896 ; N heart ; G 2639 -U 9830 ; WX 896 ; N diamond ; G 2640 -U 9831 ; WX 896 ; N uni2667 ; G 2641 -U 9833 ; WX 472 ; N uni2669 ; G 2642 -U 9834 ; WX 638 ; N musicalnote ; G 2643 -U 9835 ; WX 896 ; N musicalnotedbl ; G 2644 -U 9836 ; WX 896 ; N uni266C ; G 2645 -U 9837 ; WX 472 ; N uni266D ; G 2646 -U 9838 ; WX 357 ; N uni266E ; G 2647 -U 9839 ; WX 484 ; N uni266F ; G 2648 -U 10145 ; WX 838 ; N uni27A1 ; G 2649 -U 10181 ; WX 457 ; N uni27C5 ; G 2650 -U 10182 ; WX 457 ; N uni27C6 ; G 2651 -U 10208 ; WX 494 ; N uni27E0 ; G 2652 -U 10216 ; WX 457 ; N uni27E8 ; G 2653 -U 10217 ; WX 457 ; N uni27E9 ; G 2654 -U 10224 ; WX 838 ; N uni27F0 ; G 2655 -U 10225 ; WX 838 ; N uni27F1 ; G 2656 -U 10226 ; WX 838 ; N uni27F2 ; G 2657 -U 10227 ; WX 838 ; N uni27F3 ; G 2658 -U 10228 ; WX 1033 ; N uni27F4 ; G 2659 -U 10229 ; WX 1434 ; N uni27F5 ; G 2660 -U 10230 ; WX 1434 ; N uni27F6 ; G 2661 -U 10231 ; WX 1434 ; N uni27F7 ; G 2662 -U 10232 ; WX 1434 ; N uni27F8 ; G 2663 -U 10233 ; WX 1434 ; N uni27F9 ; G 2664 -U 10234 ; WX 1434 ; N uni27FA ; G 2665 -U 10235 ; WX 1434 ; N uni27FB ; G 2666 -U 10236 ; WX 1434 ; N uni27FC ; G 2667 -U 10237 ; WX 1434 ; N uni27FD ; G 2668 -U 10238 ; WX 1434 ; N uni27FE ; G 2669 -U 10239 ; WX 1434 ; N uni27FF ; G 2670 -U 10240 ; WX 781 ; N uni2800 ; G 2671 -U 10241 ; WX 781 ; N uni2801 ; G 2672 -U 10242 ; WX 781 ; N uni2802 ; G 2673 -U 10243 ; WX 781 ; N uni2803 ; G 2674 -U 10244 ; WX 781 ; N uni2804 ; G 2675 -U 10245 ; WX 781 ; N uni2805 ; G 2676 -U 10246 ; WX 781 ; N uni2806 ; G 2677 -U 10247 ; WX 781 ; N uni2807 ; G 2678 -U 10248 ; WX 781 ; N uni2808 ; G 2679 -U 10249 ; WX 781 ; N uni2809 ; G 2680 -U 10250 ; WX 781 ; N uni280A ; G 2681 -U 10251 ; WX 781 ; N uni280B ; G 2682 -U 10252 ; WX 781 ; N uni280C ; G 2683 -U 10253 ; WX 781 ; N uni280D ; G 2684 -U 10254 ; WX 781 ; N uni280E ; G 2685 -U 10255 ; WX 781 ; N uni280F ; G 2686 -U 10256 ; WX 781 ; N uni2810 ; G 2687 -U 10257 ; WX 781 ; N uni2811 ; G 2688 -U 10258 ; WX 781 ; N uni2812 ; G 2689 -U 10259 ; WX 781 ; N uni2813 ; G 2690 -U 10260 ; WX 781 ; N uni2814 ; G 2691 -U 10261 ; WX 781 ; N uni2815 ; G 2692 -U 10262 ; WX 781 ; N uni2816 ; G 2693 -U 10263 ; WX 781 ; N uni2817 ; G 2694 -U 10264 ; WX 781 ; N uni2818 ; G 2695 -U 10265 ; WX 781 ; N uni2819 ; G 2696 -U 10266 ; WX 781 ; N uni281A ; G 2697 -U 10267 ; WX 781 ; N uni281B ; G 2698 -U 10268 ; WX 781 ; N uni281C ; G 2699 -U 10269 ; WX 781 ; N uni281D ; G 2700 -U 10270 ; WX 781 ; N uni281E ; G 2701 -U 10271 ; WX 781 ; N uni281F ; G 2702 -U 10272 ; WX 781 ; N uni2820 ; G 2703 -U 10273 ; WX 781 ; N uni2821 ; G 2704 -U 10274 ; WX 781 ; N uni2822 ; G 2705 -U 10275 ; WX 781 ; N uni2823 ; G 2706 -U 10276 ; WX 781 ; N uni2824 ; G 2707 -U 10277 ; WX 781 ; N uni2825 ; G 2708 -U 10278 ; WX 781 ; N uni2826 ; G 2709 -U 10279 ; WX 781 ; N uni2827 ; G 2710 -U 10280 ; WX 781 ; N uni2828 ; G 2711 -U 10281 ; WX 781 ; N uni2829 ; G 2712 -U 10282 ; WX 781 ; N uni282A ; G 2713 -U 10283 ; WX 781 ; N uni282B ; G 2714 -U 10284 ; WX 781 ; N uni282C ; G 2715 -U 10285 ; WX 781 ; N uni282D ; G 2716 -U 10286 ; WX 781 ; N uni282E ; G 2717 -U 10287 ; WX 781 ; N uni282F ; G 2718 -U 10288 ; WX 781 ; N uni2830 ; G 2719 -U 10289 ; WX 781 ; N uni2831 ; G 2720 -U 10290 ; WX 781 ; N uni2832 ; G 2721 -U 10291 ; WX 781 ; N uni2833 ; G 2722 -U 10292 ; WX 781 ; N uni2834 ; G 2723 -U 10293 ; WX 781 ; N uni2835 ; G 2724 -U 10294 ; WX 781 ; N uni2836 ; G 2725 -U 10295 ; WX 781 ; N uni2837 ; G 2726 -U 10296 ; WX 781 ; N uni2838 ; G 2727 -U 10297 ; WX 781 ; N uni2839 ; G 2728 -U 10298 ; WX 781 ; N uni283A ; G 2729 -U 10299 ; WX 781 ; N uni283B ; G 2730 -U 10300 ; WX 781 ; N uni283C ; G 2731 -U 10301 ; WX 781 ; N uni283D ; G 2732 -U 10302 ; WX 781 ; N uni283E ; G 2733 -U 10303 ; WX 781 ; N uni283F ; G 2734 -U 10304 ; WX 781 ; N uni2840 ; G 2735 -U 10305 ; WX 781 ; N uni2841 ; G 2736 -U 10306 ; WX 781 ; N uni2842 ; G 2737 -U 10307 ; WX 781 ; N uni2843 ; G 2738 -U 10308 ; WX 781 ; N uni2844 ; G 2739 -U 10309 ; WX 781 ; N uni2845 ; G 2740 -U 10310 ; WX 781 ; N uni2846 ; G 2741 -U 10311 ; WX 781 ; N uni2847 ; G 2742 -U 10312 ; WX 781 ; N uni2848 ; G 2743 -U 10313 ; WX 781 ; N uni2849 ; G 2744 -U 10314 ; WX 781 ; N uni284A ; G 2745 -U 10315 ; WX 781 ; N uni284B ; G 2746 -U 10316 ; WX 781 ; N uni284C ; G 2747 -U 10317 ; WX 781 ; N uni284D ; G 2748 -U 10318 ; WX 781 ; N uni284E ; G 2749 -U 10319 ; WX 781 ; N uni284F ; G 2750 -U 10320 ; WX 781 ; N uni2850 ; G 2751 -U 10321 ; WX 781 ; N uni2851 ; G 2752 -U 10322 ; WX 781 ; N uni2852 ; G 2753 -U 10323 ; WX 781 ; N uni2853 ; G 2754 -U 10324 ; WX 781 ; N uni2854 ; G 2755 -U 10325 ; WX 781 ; N uni2855 ; G 2756 -U 10326 ; WX 781 ; N uni2856 ; G 2757 -U 10327 ; WX 781 ; N uni2857 ; G 2758 -U 10328 ; WX 781 ; N uni2858 ; G 2759 -U 10329 ; WX 781 ; N uni2859 ; G 2760 -U 10330 ; WX 781 ; N uni285A ; G 2761 -U 10331 ; WX 781 ; N uni285B ; G 2762 -U 10332 ; WX 781 ; N uni285C ; G 2763 -U 10333 ; WX 781 ; N uni285D ; G 2764 -U 10334 ; WX 781 ; N uni285E ; G 2765 -U 10335 ; WX 781 ; N uni285F ; G 2766 -U 10336 ; WX 781 ; N uni2860 ; G 2767 -U 10337 ; WX 781 ; N uni2861 ; G 2768 -U 10338 ; WX 781 ; N uni2862 ; G 2769 -U 10339 ; WX 781 ; N uni2863 ; G 2770 -U 10340 ; WX 781 ; N uni2864 ; G 2771 -U 10341 ; WX 781 ; N uni2865 ; G 2772 -U 10342 ; WX 781 ; N uni2866 ; G 2773 -U 10343 ; WX 781 ; N uni2867 ; G 2774 -U 10344 ; WX 781 ; N uni2868 ; G 2775 -U 10345 ; WX 781 ; N uni2869 ; G 2776 -U 10346 ; WX 781 ; N uni286A ; G 2777 -U 10347 ; WX 781 ; N uni286B ; G 2778 -U 10348 ; WX 781 ; N uni286C ; G 2779 -U 10349 ; WX 781 ; N uni286D ; G 2780 -U 10350 ; WX 781 ; N uni286E ; G 2781 -U 10351 ; WX 781 ; N uni286F ; G 2782 -U 10352 ; WX 781 ; N uni2870 ; G 2783 -U 10353 ; WX 781 ; N uni2871 ; G 2784 -U 10354 ; WX 781 ; N uni2872 ; G 2785 -U 10355 ; WX 781 ; N uni2873 ; G 2786 -U 10356 ; WX 781 ; N uni2874 ; G 2787 -U 10357 ; WX 781 ; N uni2875 ; G 2788 -U 10358 ; WX 781 ; N uni2876 ; G 2789 -U 10359 ; WX 781 ; N uni2877 ; G 2790 -U 10360 ; WX 781 ; N uni2878 ; G 2791 -U 10361 ; WX 781 ; N uni2879 ; G 2792 -U 10362 ; WX 781 ; N uni287A ; G 2793 -U 10363 ; WX 781 ; N uni287B ; G 2794 -U 10364 ; WX 781 ; N uni287C ; G 2795 -U 10365 ; WX 781 ; N uni287D ; G 2796 -U 10366 ; WX 781 ; N uni287E ; G 2797 -U 10367 ; WX 781 ; N uni287F ; G 2798 -U 10368 ; WX 781 ; N uni2880 ; G 2799 -U 10369 ; WX 781 ; N uni2881 ; G 2800 -U 10370 ; WX 781 ; N uni2882 ; G 2801 -U 10371 ; WX 781 ; N uni2883 ; G 2802 -U 10372 ; WX 781 ; N uni2884 ; G 2803 -U 10373 ; WX 781 ; N uni2885 ; G 2804 -U 10374 ; WX 781 ; N uni2886 ; G 2805 -U 10375 ; WX 781 ; N uni2887 ; G 2806 -U 10376 ; WX 781 ; N uni2888 ; G 2807 -U 10377 ; WX 781 ; N uni2889 ; G 2808 -U 10378 ; WX 781 ; N uni288A ; G 2809 -U 10379 ; WX 781 ; N uni288B ; G 2810 -U 10380 ; WX 781 ; N uni288C ; G 2811 -U 10381 ; WX 781 ; N uni288D ; G 2812 -U 10382 ; WX 781 ; N uni288E ; G 2813 -U 10383 ; WX 781 ; N uni288F ; G 2814 -U 10384 ; WX 781 ; N uni2890 ; G 2815 -U 10385 ; WX 781 ; N uni2891 ; G 2816 -U 10386 ; WX 781 ; N uni2892 ; G 2817 -U 10387 ; WX 781 ; N uni2893 ; G 2818 -U 10388 ; WX 781 ; N uni2894 ; G 2819 -U 10389 ; WX 781 ; N uni2895 ; G 2820 -U 10390 ; WX 781 ; N uni2896 ; G 2821 -U 10391 ; WX 781 ; N uni2897 ; G 2822 -U 10392 ; WX 781 ; N uni2898 ; G 2823 -U 10393 ; WX 781 ; N uni2899 ; G 2824 -U 10394 ; WX 781 ; N uni289A ; G 2825 -U 10395 ; WX 781 ; N uni289B ; G 2826 -U 10396 ; WX 781 ; N uni289C ; G 2827 -U 10397 ; WX 781 ; N uni289D ; G 2828 -U 10398 ; WX 781 ; N uni289E ; G 2829 -U 10399 ; WX 781 ; N uni289F ; G 2830 -U 10400 ; WX 781 ; N uni28A0 ; G 2831 -U 10401 ; WX 781 ; N uni28A1 ; G 2832 -U 10402 ; WX 781 ; N uni28A2 ; G 2833 -U 10403 ; WX 781 ; N uni28A3 ; G 2834 -U 10404 ; WX 781 ; N uni28A4 ; G 2835 -U 10405 ; WX 781 ; N uni28A5 ; G 2836 -U 10406 ; WX 781 ; N uni28A6 ; G 2837 -U 10407 ; WX 781 ; N uni28A7 ; G 2838 -U 10408 ; WX 781 ; N uni28A8 ; G 2839 -U 10409 ; WX 781 ; N uni28A9 ; G 2840 -U 10410 ; WX 781 ; N uni28AA ; G 2841 -U 10411 ; WX 781 ; N uni28AB ; G 2842 -U 10412 ; WX 781 ; N uni28AC ; G 2843 -U 10413 ; WX 781 ; N uni28AD ; G 2844 -U 10414 ; WX 781 ; N uni28AE ; G 2845 -U 10415 ; WX 781 ; N uni28AF ; G 2846 -U 10416 ; WX 781 ; N uni28B0 ; G 2847 -U 10417 ; WX 781 ; N uni28B1 ; G 2848 -U 10418 ; WX 781 ; N uni28B2 ; G 2849 -U 10419 ; WX 781 ; N uni28B3 ; G 2850 -U 10420 ; WX 781 ; N uni28B4 ; G 2851 -U 10421 ; WX 781 ; N uni28B5 ; G 2852 -U 10422 ; WX 781 ; N uni28B6 ; G 2853 -U 10423 ; WX 781 ; N uni28B7 ; G 2854 -U 10424 ; WX 781 ; N uni28B8 ; G 2855 -U 10425 ; WX 781 ; N uni28B9 ; G 2856 -U 10426 ; WX 781 ; N uni28BA ; G 2857 -U 10427 ; WX 781 ; N uni28BB ; G 2858 -U 10428 ; WX 781 ; N uni28BC ; G 2859 -U 10429 ; WX 781 ; N uni28BD ; G 2860 -U 10430 ; WX 781 ; N uni28BE ; G 2861 -U 10431 ; WX 781 ; N uni28BF ; G 2862 -U 10432 ; WX 781 ; N uni28C0 ; G 2863 -U 10433 ; WX 781 ; N uni28C1 ; G 2864 -U 10434 ; WX 781 ; N uni28C2 ; G 2865 -U 10435 ; WX 781 ; N uni28C3 ; G 2866 -U 10436 ; WX 781 ; N uni28C4 ; G 2867 -U 10437 ; WX 781 ; N uni28C5 ; G 2868 -U 10438 ; WX 781 ; N uni28C6 ; G 2869 -U 10439 ; WX 781 ; N uni28C7 ; G 2870 -U 10440 ; WX 781 ; N uni28C8 ; G 2871 -U 10441 ; WX 781 ; N uni28C9 ; G 2872 -U 10442 ; WX 781 ; N uni28CA ; G 2873 -U 10443 ; WX 781 ; N uni28CB ; G 2874 -U 10444 ; WX 781 ; N uni28CC ; G 2875 -U 10445 ; WX 781 ; N uni28CD ; G 2876 -U 10446 ; WX 781 ; N uni28CE ; G 2877 -U 10447 ; WX 781 ; N uni28CF ; G 2878 -U 10448 ; WX 781 ; N uni28D0 ; G 2879 -U 10449 ; WX 781 ; N uni28D1 ; G 2880 -U 10450 ; WX 781 ; N uni28D2 ; G 2881 -U 10451 ; WX 781 ; N uni28D3 ; G 2882 -U 10452 ; WX 781 ; N uni28D4 ; G 2883 -U 10453 ; WX 781 ; N uni28D5 ; G 2884 -U 10454 ; WX 781 ; N uni28D6 ; G 2885 -U 10455 ; WX 781 ; N uni28D7 ; G 2886 -U 10456 ; WX 781 ; N uni28D8 ; G 2887 -U 10457 ; WX 781 ; N uni28D9 ; G 2888 -U 10458 ; WX 781 ; N uni28DA ; G 2889 -U 10459 ; WX 781 ; N uni28DB ; G 2890 -U 10460 ; WX 781 ; N uni28DC ; G 2891 -U 10461 ; WX 781 ; N uni28DD ; G 2892 -U 10462 ; WX 781 ; N uni28DE ; G 2893 -U 10463 ; WX 781 ; N uni28DF ; G 2894 -U 10464 ; WX 781 ; N uni28E0 ; G 2895 -U 10465 ; WX 781 ; N uni28E1 ; G 2896 -U 10466 ; WX 781 ; N uni28E2 ; G 2897 -U 10467 ; WX 781 ; N uni28E3 ; G 2898 -U 10468 ; WX 781 ; N uni28E4 ; G 2899 -U 10469 ; WX 781 ; N uni28E5 ; G 2900 -U 10470 ; WX 781 ; N uni28E6 ; G 2901 -U 10471 ; WX 781 ; N uni28E7 ; G 2902 -U 10472 ; WX 781 ; N uni28E8 ; G 2903 -U 10473 ; WX 781 ; N uni28E9 ; G 2904 -U 10474 ; WX 781 ; N uni28EA ; G 2905 -U 10475 ; WX 781 ; N uni28EB ; G 2906 -U 10476 ; WX 781 ; N uni28EC ; G 2907 -U 10477 ; WX 781 ; N uni28ED ; G 2908 -U 10478 ; WX 781 ; N uni28EE ; G 2909 -U 10479 ; WX 781 ; N uni28EF ; G 2910 -U 10480 ; WX 781 ; N uni28F0 ; G 2911 -U 10481 ; WX 781 ; N uni28F1 ; G 2912 -U 10482 ; WX 781 ; N uni28F2 ; G 2913 -U 10483 ; WX 781 ; N uni28F3 ; G 2914 -U 10484 ; WX 781 ; N uni28F4 ; G 2915 -U 10485 ; WX 781 ; N uni28F5 ; G 2916 -U 10486 ; WX 781 ; N uni28F6 ; G 2917 -U 10487 ; WX 781 ; N uni28F7 ; G 2918 -U 10488 ; WX 781 ; N uni28F8 ; G 2919 -U 10489 ; WX 781 ; N uni28F9 ; G 2920 -U 10490 ; WX 781 ; N uni28FA ; G 2921 -U 10491 ; WX 781 ; N uni28FB ; G 2922 -U 10492 ; WX 781 ; N uni28FC ; G 2923 -U 10493 ; WX 781 ; N uni28FD ; G 2924 -U 10494 ; WX 781 ; N uni28FE ; G 2925 -U 10495 ; WX 781 ; N uni28FF ; G 2926 -U 10496 ; WX 838 ; N uni2900 ; G 2927 -U 10497 ; WX 838 ; N uni2901 ; G 2928 -U 10498 ; WX 838 ; N uni2902 ; G 2929 -U 10499 ; WX 838 ; N uni2903 ; G 2930 -U 10500 ; WX 838 ; N uni2904 ; G 2931 -U 10501 ; WX 838 ; N uni2905 ; G 2932 -U 10502 ; WX 838 ; N uni2906 ; G 2933 -U 10503 ; WX 838 ; N uni2907 ; G 2934 -U 10504 ; WX 838 ; N uni2908 ; G 2935 -U 10505 ; WX 838 ; N uni2909 ; G 2936 -U 10506 ; WX 838 ; N uni290A ; G 2937 -U 10507 ; WX 838 ; N uni290B ; G 2938 -U 10508 ; WX 838 ; N uni290C ; G 2939 -U 10509 ; WX 838 ; N uni290D ; G 2940 -U 10510 ; WX 838 ; N uni290E ; G 2941 -U 10511 ; WX 838 ; N uni290F ; G 2942 -U 10512 ; WX 838 ; N uni2910 ; G 2943 -U 10513 ; WX 838 ; N uni2911 ; G 2944 -U 10514 ; WX 838 ; N uni2912 ; G 2945 -U 10515 ; WX 838 ; N uni2913 ; G 2946 -U 10516 ; WX 838 ; N uni2914 ; G 2947 -U 10517 ; WX 838 ; N uni2915 ; G 2948 -U 10518 ; WX 838 ; N uni2916 ; G 2949 -U 10519 ; WX 838 ; N uni2917 ; G 2950 -U 10520 ; WX 838 ; N uni2918 ; G 2951 -U 10521 ; WX 838 ; N uni2919 ; G 2952 -U 10522 ; WX 838 ; N uni291A ; G 2953 -U 10523 ; WX 838 ; N uni291B ; G 2954 -U 10524 ; WX 838 ; N uni291C ; G 2955 -U 10525 ; WX 838 ; N uni291D ; G 2956 -U 10526 ; WX 838 ; N uni291E ; G 2957 -U 10527 ; WX 838 ; N uni291F ; G 2958 -U 10528 ; WX 838 ; N uni2920 ; G 2959 -U 10529 ; WX 838 ; N uni2921 ; G 2960 -U 10530 ; WX 838 ; N uni2922 ; G 2961 -U 10531 ; WX 838 ; N uni2923 ; G 2962 -U 10532 ; WX 838 ; N uni2924 ; G 2963 -U 10533 ; WX 838 ; N uni2925 ; G 2964 -U 10534 ; WX 838 ; N uni2926 ; G 2965 -U 10535 ; WX 838 ; N uni2927 ; G 2966 -U 10536 ; WX 838 ; N uni2928 ; G 2967 -U 10537 ; WX 838 ; N uni2929 ; G 2968 -U 10538 ; WX 838 ; N uni292A ; G 2969 -U 10539 ; WX 838 ; N uni292B ; G 2970 -U 10540 ; WX 838 ; N uni292C ; G 2971 -U 10541 ; WX 838 ; N uni292D ; G 2972 -U 10542 ; WX 838 ; N uni292E ; G 2973 -U 10543 ; WX 838 ; N uni292F ; G 2974 -U 10544 ; WX 838 ; N uni2930 ; G 2975 -U 10545 ; WX 838 ; N uni2931 ; G 2976 -U 10546 ; WX 838 ; N uni2932 ; G 2977 -U 10547 ; WX 838 ; N uni2933 ; G 2978 -U 10548 ; WX 838 ; N uni2934 ; G 2979 -U 10549 ; WX 838 ; N uni2935 ; G 2980 -U 10550 ; WX 838 ; N uni2936 ; G 2981 -U 10551 ; WX 838 ; N uni2937 ; G 2982 -U 10552 ; WX 838 ; N uni2938 ; G 2983 -U 10553 ; WX 838 ; N uni2939 ; G 2984 -U 10554 ; WX 838 ; N uni293A ; G 2985 -U 10555 ; WX 838 ; N uni293B ; G 2986 -U 10556 ; WX 838 ; N uni293C ; G 2987 -U 10557 ; WX 838 ; N uni293D ; G 2988 -U 10558 ; WX 838 ; N uni293E ; G 2989 -U 10559 ; WX 838 ; N uni293F ; G 2990 -U 10560 ; WX 838 ; N uni2940 ; G 2991 -U 10561 ; WX 838 ; N uni2941 ; G 2992 -U 10562 ; WX 838 ; N uni2942 ; G 2993 -U 10563 ; WX 838 ; N uni2943 ; G 2994 -U 10564 ; WX 838 ; N uni2944 ; G 2995 -U 10565 ; WX 838 ; N uni2945 ; G 2996 -U 10566 ; WX 838 ; N uni2946 ; G 2997 -U 10567 ; WX 838 ; N uni2947 ; G 2998 -U 10568 ; WX 838 ; N uni2948 ; G 2999 -U 10569 ; WX 838 ; N uni2949 ; G 3000 -U 10570 ; WX 838 ; N uni294A ; G 3001 -U 10571 ; WX 838 ; N uni294B ; G 3002 -U 10572 ; WX 838 ; N uni294C ; G 3003 -U 10573 ; WX 838 ; N uni294D ; G 3004 -U 10574 ; WX 838 ; N uni294E ; G 3005 -U 10575 ; WX 838 ; N uni294F ; G 3006 -U 10576 ; WX 838 ; N uni2950 ; G 3007 -U 10577 ; WX 838 ; N uni2951 ; G 3008 -U 10578 ; WX 838 ; N uni2952 ; G 3009 -U 10579 ; WX 838 ; N uni2953 ; G 3010 -U 10580 ; WX 838 ; N uni2954 ; G 3011 -U 10581 ; WX 838 ; N uni2955 ; G 3012 -U 10582 ; WX 838 ; N uni2956 ; G 3013 -U 10583 ; WX 838 ; N uni2957 ; G 3014 -U 10584 ; WX 838 ; N uni2958 ; G 3015 -U 10585 ; WX 838 ; N uni2959 ; G 3016 -U 10586 ; WX 838 ; N uni295A ; G 3017 -U 10587 ; WX 838 ; N uni295B ; G 3018 -U 10588 ; WX 838 ; N uni295C ; G 3019 -U 10589 ; WX 838 ; N uni295D ; G 3020 -U 10590 ; WX 838 ; N uni295E ; G 3021 -U 10591 ; WX 838 ; N uni295F ; G 3022 -U 10592 ; WX 838 ; N uni2960 ; G 3023 -U 10593 ; WX 838 ; N uni2961 ; G 3024 -U 10594 ; WX 838 ; N uni2962 ; G 3025 -U 10595 ; WX 838 ; N uni2963 ; G 3026 -U 10596 ; WX 838 ; N uni2964 ; G 3027 -U 10597 ; WX 838 ; N uni2965 ; G 3028 -U 10598 ; WX 838 ; N uni2966 ; G 3029 -U 10599 ; WX 838 ; N uni2967 ; G 3030 -U 10600 ; WX 838 ; N uni2968 ; G 3031 -U 10601 ; WX 838 ; N uni2969 ; G 3032 -U 10602 ; WX 838 ; N uni296A ; G 3033 -U 10603 ; WX 838 ; N uni296B ; G 3034 -U 10604 ; WX 838 ; N uni296C ; G 3035 -U 10605 ; WX 838 ; N uni296D ; G 3036 -U 10606 ; WX 838 ; N uni296E ; G 3037 -U 10607 ; WX 838 ; N uni296F ; G 3038 -U 10608 ; WX 838 ; N uni2970 ; G 3039 -U 10609 ; WX 838 ; N uni2971 ; G 3040 -U 10610 ; WX 838 ; N uni2972 ; G 3041 -U 10611 ; WX 838 ; N uni2973 ; G 3042 -U 10612 ; WX 838 ; N uni2974 ; G 3043 -U 10613 ; WX 838 ; N uni2975 ; G 3044 -U 10614 ; WX 838 ; N uni2976 ; G 3045 -U 10615 ; WX 1032 ; N uni2977 ; G 3046 -U 10616 ; WX 838 ; N uni2978 ; G 3047 -U 10617 ; WX 838 ; N uni2979 ; G 3048 -U 10618 ; WX 960 ; N uni297A ; G 3049 -U 10619 ; WX 838 ; N uni297B ; G 3050 -U 10620 ; WX 838 ; N uni297C ; G 3051 -U 10621 ; WX 838 ; N uni297D ; G 3052 -U 10622 ; WX 838 ; N uni297E ; G 3053 -U 10623 ; WX 838 ; N uni297F ; G 3054 -U 10731 ; WX 494 ; N uni29EB ; G 3055 -U 10764 ; WX 1782 ; N uni2A0C ; G 3056 -U 10765 ; WX 610 ; N uni2A0D ; G 3057 -U 10766 ; WX 610 ; N uni2A0E ; G 3058 -U 10799 ; WX 838 ; N uni2A2F ; G 3059 -U 10858 ; WX 838 ; N uni2A6A ; G 3060 -U 10859 ; WX 838 ; N uni2A6B ; G 3061 -U 11008 ; WX 838 ; N uni2B00 ; G 3062 -U 11009 ; WX 838 ; N uni2B01 ; G 3063 -U 11010 ; WX 838 ; N uni2B02 ; G 3064 -U 11011 ; WX 838 ; N uni2B03 ; G 3065 -U 11012 ; WX 838 ; N uni2B04 ; G 3066 -U 11013 ; WX 838 ; N uni2B05 ; G 3067 -U 11014 ; WX 838 ; N uni2B06 ; G 3068 -U 11015 ; WX 838 ; N uni2B07 ; G 3069 -U 11016 ; WX 838 ; N uni2B08 ; G 3070 -U 11017 ; WX 838 ; N uni2B09 ; G 3071 -U 11018 ; WX 838 ; N uni2B0A ; G 3072 -U 11019 ; WX 838 ; N uni2B0B ; G 3073 -U 11020 ; WX 838 ; N uni2B0C ; G 3074 -U 11021 ; WX 838 ; N uni2B0D ; G 3075 -U 11022 ; WX 838 ; N uni2B0E ; G 3076 -U 11023 ; WX 838 ; N uni2B0F ; G 3077 -U 11024 ; WX 838 ; N uni2B10 ; G 3078 -U 11025 ; WX 838 ; N uni2B11 ; G 3079 -U 11026 ; WX 945 ; N uni2B12 ; G 3080 -U 11027 ; WX 945 ; N uni2B13 ; G 3081 -U 11028 ; WX 945 ; N uni2B14 ; G 3082 -U 11029 ; WX 945 ; N uni2B15 ; G 3083 -U 11030 ; WX 769 ; N uni2B16 ; G 3084 -U 11031 ; WX 769 ; N uni2B17 ; G 3085 -U 11032 ; WX 769 ; N uni2B18 ; G 3086 -U 11033 ; WX 769 ; N uni2B19 ; G 3087 -U 11034 ; WX 945 ; N uni2B1A ; G 3088 -U 11360 ; WX 703 ; N uni2C60 ; G 3089 -U 11361 ; WX 380 ; N uni2C61 ; G 3090 -U 11363 ; WX 752 ; N uni2C63 ; G 3091 -U 11364 ; WX 831 ; N uni2C64 ; G 3092 -U 11367 ; WX 945 ; N uni2C67 ; G 3093 -U 11368 ; WX 727 ; N uni2C68 ; G 3094 -U 11369 ; WX 869 ; N uni2C69 ; G 3095 -U 11370 ; WX 693 ; N uni2C6A ; G 3096 -U 11371 ; WX 730 ; N uni2C6B ; G 3097 -U 11372 ; WX 568 ; N uni2C6C ; G 3098 -U 11373 ; WX 848 ; N uni2C6D ; G 3099 -U 11374 ; WX 1107 ; N uni2C6E ; G 3100 -U 11375 ; WX 776 ; N uni2C6F ; G 3101 -U 11376 ; WX 848 ; N uni2C70 ; G 3102 -U 11377 ; WX 709 ; N uni2C71 ; G 3103 -U 11378 ; WX 1221 ; N uni2C72 ; G 3104 -U 11379 ; WX 984 ; N uni2C73 ; G 3105 -U 11381 ; WX 779 ; N uni2C75 ; G 3106 -U 11382 ; WX 601 ; N uni2C76 ; G 3107 -U 11383 ; WX 905 ; N uni2C77 ; G 3108 -U 11385 ; WX 571 ; N uni2C79 ; G 3109 -U 11386 ; WX 667 ; N uni2C7A ; G 3110 -U 11387 ; WX 617 ; N uni2C7B ; G 3111 -U 11388 ; WX 313 ; N uni2C7C ; G 3112 -U 11389 ; WX 489 ; N uni2C7D ; G 3113 -U 11390 ; WX 722 ; N uni2C7E ; G 3114 -U 11391 ; WX 730 ; N uni2C7F ; G 3115 -U 11520 ; WX 773 ; N uni2D00 ; G 3116 -U 11521 ; WX 635 ; N uni2D01 ; G 3117 -U 11522 ; WX 804 ; N uni2D02 ; G 3118 -U 11523 ; WX 658 ; N uni2D03 ; G 3119 -U 11524 ; WX 788 ; N uni2D04 ; G 3120 -U 11525 ; WX 962 ; N uni2D05 ; G 3121 -U 11526 ; WX 756 ; N uni2D06 ; G 3122 -U 11527 ; WX 960 ; N uni2D07 ; G 3123 -U 11528 ; WX 617 ; N uni2D08 ; G 3124 -U 11529 ; WX 646 ; N uni2D09 ; G 3125 -U 11530 ; WX 962 ; N uni2D0A ; G 3126 -U 11531 ; WX 631 ; N uni2D0B ; G 3127 -U 11532 ; WX 646 ; N uni2D0C ; G 3128 -U 11533 ; WX 962 ; N uni2D0D ; G 3129 -U 11534 ; WX 846 ; N uni2D0E ; G 3130 -U 11535 ; WX 866 ; N uni2D0F ; G 3131 -U 11536 ; WX 961 ; N uni2D10 ; G 3132 -U 11537 ; WX 645 ; N uni2D11 ; G 3133 -U 11538 ; WX 645 ; N uni2D12 ; G 3134 -U 11539 ; WX 959 ; N uni2D13 ; G 3135 -U 11540 ; WX 945 ; N uni2D14 ; G 3136 -U 11541 ; WX 863 ; N uni2D15 ; G 3137 -U 11542 ; WX 644 ; N uni2D16 ; G 3138 -U 11543 ; WX 646 ; N uni2D17 ; G 3139 -U 11544 ; WX 645 ; N uni2D18 ; G 3140 -U 11545 ; WX 649 ; N uni2D19 ; G 3141 -U 11546 ; WX 688 ; N uni2D1A ; G 3142 -U 11547 ; WX 936 ; N uni2D1B ; G 3143 -U 11548 ; WX 982 ; N uni2D1C ; G 3144 -U 11549 ; WX 681 ; N uni2D1D ; G 3145 -U 11550 ; WX 676 ; N uni2D1E ; G 3146 -U 11551 ; WX 852 ; N uni2D1F ; G 3147 -U 11552 ; WX 1113 ; N uni2D20 ; G 3148 -U 11553 ; WX 632 ; N uni2D21 ; G 3149 -U 11554 ; WX 645 ; N uni2D22 ; G 3150 -U 11555 ; WX 646 ; N uni2D23 ; G 3151 -U 11556 ; WX 749 ; N uni2D24 ; G 3152 -U 11557 ; WX 914 ; N uni2D25 ; G 3153 -U 11800 ; WX 586 ; N uni2E18 ; G 3154 -U 11807 ; WX 838 ; N uni2E1F ; G 3155 -U 11810 ; WX 473 ; N uni2E22 ; G 3156 -U 11811 ; WX 473 ; N uni2E23 ; G 3157 -U 11812 ; WX 473 ; N uni2E24 ; G 3158 -U 11813 ; WX 473 ; N uni2E25 ; G 3159 -U 11822 ; WX 586 ; N uni2E2E ; G 3160 -U 42564 ; WX 722 ; N uniA644 ; G 3161 -U 42565 ; WX 563 ; N uniA645 ; G 3162 -U 42566 ; WX 468 ; N uniA646 ; G 3163 -U 42567 ; WX 380 ; N uniA647 ; G 3164 -U 42576 ; WX 1333 ; N uniA650 ; G 3165 -U 42577 ; WX 1092 ; N uniA651 ; G 3166 -U 42580 ; WX 1287 ; N uniA654 ; G 3167 -U 42581 ; WX 1025 ; N uniA655 ; G 3168 -U 42582 ; WX 1287 ; N uniA656 ; G 3169 -U 42583 ; WX 1039 ; N uniA657 ; G 3170 -U 42648 ; WX 1448 ; N uniA698 ; G 3171 -U 42649 ; WX 1060 ; N uniA699 ; G 3172 -U 42760 ; WX 500 ; N uniA708 ; G 3173 -U 42761 ; WX 500 ; N uniA709 ; G 3174 -U 42762 ; WX 500 ; N uniA70A ; G 3175 -U 42763 ; WX 500 ; N uniA70B ; G 3176 -U 42764 ; WX 500 ; N uniA70C ; G 3177 -U 42765 ; WX 500 ; N uniA70D ; G 3178 -U 42766 ; WX 500 ; N uniA70E ; G 3179 -U 42767 ; WX 500 ; N uniA70F ; G 3180 -U 42768 ; WX 500 ; N uniA710 ; G 3181 -U 42769 ; WX 500 ; N uniA711 ; G 3182 -U 42770 ; WX 500 ; N uniA712 ; G 3183 -U 42771 ; WX 500 ; N uniA713 ; G 3184 -U 42772 ; WX 500 ; N uniA714 ; G 3185 -U 42773 ; WX 500 ; N uniA715 ; G 3186 -U 42774 ; WX 500 ; N uniA716 ; G 3187 -U 42779 ; WX 384 ; N uniA71B ; G 3188 -U 42780 ; WX 384 ; N uniA71C ; G 3189 -U 42781 ; WX 276 ; N uniA71D ; G 3190 -U 42782 ; WX 276 ; N uniA71E ; G 3191 -U 42783 ; WX 276 ; N uniA71F ; G 3192 -U 42790 ; WX 945 ; N uniA726 ; G 3193 -U 42791 ; WX 712 ; N uniA727 ; G 3194 -U 42792 ; WX 1003 ; N uniA728 ; G 3195 -U 42793 ; WX 909 ; N uniA729 ; G 3196 -U 42794 ; WX 696 ; N uniA72A ; G 3197 -U 42795 ; WX 609 ; N uniA72B ; G 3198 -U 42796 ; WX 634 ; N uniA72C ; G 3199 -U 42797 ; WX 598 ; N uniA72D ; G 3200 -U 42798 ; WX 741 ; N uniA72E ; G 3201 -U 42799 ; WX 706 ; N uniA72F ; G 3202 -U 42800 ; WX 592 ; N uniA730 ; G 3203 -U 42801 ; WX 563 ; N uniA731 ; G 3204 -U 42802 ; WX 1301 ; N uniA732 ; G 3205 -U 42803 ; WX 986 ; N uniA733 ; G 3206 -U 42804 ; WX 1261 ; N uniA734 ; G 3207 -U 42805 ; WX 1004 ; N uniA735 ; G 3208 -U 42806 ; WX 1168 ; N uniA736 ; G 3209 -U 42807 ; WX 1008 ; N uniA737 ; G 3210 -U 42808 ; WX 1016 ; N uniA738 ; G 3211 -U 42809 ; WX 813 ; N uniA739 ; G 3212 -U 42810 ; WX 1016 ; N uniA73A ; G 3213 -U 42811 ; WX 813 ; N uniA73B ; G 3214 -U 42812 ; WX 994 ; N uniA73C ; G 3215 -U 42813 ; WX 847 ; N uniA73D ; G 3216 -U 42814 ; WX 796 ; N uniA73E ; G 3217 -U 42815 ; WX 609 ; N uniA73F ; G 3218 -U 42816 ; WX 910 ; N uniA740 ; G 3219 -U 42817 ; WX 722 ; N uniA741 ; G 3220 -U 42822 ; WX 916 ; N uniA746 ; G 3221 -U 42823 ; WX 581 ; N uniA747 ; G 3222 -U 42826 ; WX 1010 ; N uniA74A ; G 3223 -U 42827 ; WX 770 ; N uniA74B ; G 3224 -U 42830 ; WX 1448 ; N uniA74E ; G 3225 -U 42831 ; WX 1060 ; N uniA74F ; G 3226 -U 42856 ; WX 787 ; N uniA768 ; G 3227 -U 42857 ; WX 716 ; N uniA769 ; G 3228 -U 42875 ; WX 694 ; N uniA77B ; G 3229 -U 42876 ; WX 527 ; N uniA77C ; G 3230 -U 42880 ; WX 703 ; N uniA780 ; G 3231 -U 42881 ; WX 380 ; N uniA781 ; G 3232 -U 42882 ; WX 872 ; N uniA782 ; G 3233 -U 42883 ; WX 727 ; N uniA783 ; G 3234 -U 42884 ; WX 694 ; N uniA784 ; G 3235 -U 42885 ; WX 527 ; N uniA785 ; G 3236 -U 42886 ; WX 796 ; N uniA786 ; G 3237 -U 42887 ; WX 609 ; N uniA787 ; G 3238 -U 42891 ; WX 439 ; N uniA78B ; G 3239 -U 42892 ; WX 306 ; N uniA78C ; G 3240 -U 42893 ; WX 913 ; N uniA78D ; G 3241 -U 42896 ; WX 914 ; N uniA790 ; G 3242 -U 42897 ; WX 727 ; N uniA791 ; G 3243 -U 42922 ; WX 945 ; N uniA7AA ; G 3244 -U 43000 ; WX 595 ; N uniA7F8 ; G 3245 -U 43001 ; WX 647 ; N uniA7F9 ; G 3246 -U 43002 ; WX 1069 ; N uniA7FA ; G 3247 -U 43003 ; WX 710 ; N uniA7FB ; G 3248 -U 43004 ; WX 752 ; N uniA7FC ; G 3249 -U 43005 ; WX 1107 ; N uniA7FD ; G 3250 -U 43006 ; WX 468 ; N uniA7FE ; G 3251 -U 43007 ; WX 1286 ; N uniA7FF ; G 3252 -U 62464 ; WX 705 ; N uniF400 ; G 3253 -U 62465 ; WX 716 ; N uniF401 ; G 3254 -U 62466 ; WX 765 ; N uniF402 ; G 3255 -U 62467 ; WX 999 ; N uniF403 ; G 3256 -U 62468 ; WX 716 ; N uniF404 ; G 3257 -U 62469 ; WX 710 ; N uniF405 ; G 3258 -U 62470 ; WX 776 ; N uniF406 ; G 3259 -U 62471 ; WX 1038 ; N uniF407 ; G 3260 -U 62472 ; WX 716 ; N uniF408 ; G 3261 -U 62473 ; WX 716 ; N uniF409 ; G 3262 -U 62474 ; WX 1309 ; N uniF40A ; G 3263 -U 62475 ; WX 734 ; N uniF40B ; G 3264 -U 62476 ; WX 733 ; N uniF40C ; G 3265 -U 62477 ; WX 1004 ; N uniF40D ; G 3266 -U 62478 ; WX 716 ; N uniF40E ; G 3267 -U 62479 ; WX 733 ; N uniF40F ; G 3268 -U 62480 ; WX 1050 ; N uniF410 ; G 3269 -U 62481 ; WX 797 ; N uniF411 ; G 3270 -U 62482 ; WX 850 ; N uniF412 ; G 3271 -U 62483 ; WX 799 ; N uniF413 ; G 3272 -U 62484 ; WX 996 ; N uniF414 ; G 3273 -U 62485 ; WX 732 ; N uniF415 ; G 3274 -U 62486 ; WX 987 ; N uniF416 ; G 3275 -U 62487 ; WX 731 ; N uniF417 ; G 3276 -U 62488 ; WX 739 ; N uniF418 ; G 3277 -U 62489 ; WX 733 ; N uniF419 ; G 3278 -U 62490 ; WX 780 ; N uniF41A ; G 3279 -U 62491 ; WX 733 ; N uniF41B ; G 3280 -U 62492 ; WX 739 ; N uniF41C ; G 3281 -U 62493 ; WX 717 ; N uniF41D ; G 3282 -U 62494 ; WX 780 ; N uniF41E ; G 3283 -U 62495 ; WX 936 ; N uniF41F ; G 3284 -U 62496 ; WX 716 ; N uniF420 ; G 3285 -U 62497 ; WX 826 ; N uniF421 ; G 3286 -U 62498 ; WX 717 ; N uniF422 ; G 3287 -U 62499 ; WX 716 ; N uniF423 ; G 3288 -U 62500 ; WX 716 ; N uniF424 ; G 3289 -U 62501 ; WX 773 ; N uniF425 ; G 3290 -U 62502 ; WX 1013 ; N uniF426 ; G 3291 -U 62504 ; WX 904 ; N uniF428 ; G 3292 -U 63173 ; WX 667 ; N uniF6C5 ; G 3293 -U 63185 ; WX 500 ; N cyrBreve ; G 3294 -U 63188 ; WX 500 ; N cyrbreve ; G 3295 -U 64256 ; WX 821 ; N uniFB00 ; G 3296 -U 64257 ; WX 727 ; N fi ; G 3297 -U 64258 ; WX 727 ; N fl ; G 3298 -U 64259 ; WX 1120 ; N uniFB03 ; G 3299 -U 64260 ; WX 1117 ; N uniFB04 ; G 3300 -U 64261 ; WX 871 ; N uniFB05 ; G 3301 -U 64262 ; WX 971 ; N uniFB06 ; G 3302 -U 65024 ; WX 0 ; N uniFE00 ; G 3303 -U 65025 ; WX 0 ; N uniFE01 ; G 3304 -U 65026 ; WX 0 ; N uniFE02 ; G 3305 -U 65027 ; WX 0 ; N uniFE03 ; G 3306 -U 65028 ; WX 0 ; N uniFE04 ; G 3307 -U 65029 ; WX 0 ; N uniFE05 ; G 3308 -U 65030 ; WX 0 ; N uniFE06 ; G 3309 -U 65031 ; WX 0 ; N uniFE07 ; G 3310 -U 65032 ; WX 0 ; N uniFE08 ; G 3311 -U 65033 ; WX 0 ; N uniFE09 ; G 3312 -U 65034 ; WX 0 ; N uniFE0A ; G 3313 -U 65035 ; WX 0 ; N uniFE0B ; G 3314 -U 65036 ; WX 0 ; N uniFE0C ; G 3315 -U 65037 ; WX 0 ; N uniFE0D ; G 3316 -U 65038 ; WX 0 ; N uniFE0E ; G 3317 -U 65039 ; WX 0 ; N uniFE0F ; G 3318 -U 65529 ; WX 0 ; N uniFFF9 ; G 3319 -U 65530 ; WX 0 ; N uniFFFA ; G 3320 -U 65531 ; WX 0 ; N uniFFFB ; G 3321 -U 65532 ; WX 0 ; N uniFFFC ; G 3322 -U 65533 ; WX 1113 ; N uniFFFD ; G 3323 -EndCharMetrics -StartKernData -StartKernPairs 1408 - -KPX dollar seven -112 -KPX dollar nine -149 -KPX dollar colon -102 -KPX dollar less -102 -KPX dollar I -36 -KPX dollar W -36 -KPX dollar Y -83 -KPX dollar Z -83 -KPX dollar backslash -83 -KPX dollar questiondown -83 -KPX dollar Aacute -83 -KPX dollar Hcircumflex -112 -KPX dollar hcircumflex -36 -KPX dollar Hbar -112 -KPX dollar hbar -36 -KPX dollar Kcommaaccent -102 -KPX dollar kcommaaccent -83 -KPX dollar kgreenlandic -102 -KPX dollar Lacute -83 -KPX dollar lacute -102 -KPX dollar uni01DC -112 -KPX dollar uni01DD -36 -KPX dollar uni01F4 -102 -KPX dollar uni01F5 -83 - -KPX percent ampersand 38 -KPX percent asterisk 38 -KPX percent two 38 -KPX percent less -36 -KPX percent Egrave 38 -KPX percent Ecircumflex 38 -KPX percent Igrave 38 -KPX percent Icircumflex 38 -KPX percent Thorn 38 -KPX percent agrave 38 -KPX percent acircumflex 38 -KPX percent adieresis 38 -KPX percent Dcaron 38 -KPX percent Dcroat 38 -KPX percent Emacron 38 -KPX percent Ebreve 38 -KPX percent kgreenlandic -36 -KPX percent lacute -36 -KPX percent uni01AC 38 -KPX percent uni01AE 38 -KPX percent uni01F0 38 -KPX percent uni01F4 -36 - - -KPX quotesingle nine -36 - - -KPX parenright dollar -120 -KPX parenright D -112 -KPX parenright H -112 -KPX parenright R -112 -KPX parenright U -36 -KPX parenright X -36 -KPX parenright cent -112 -KPX parenright sterling -112 -KPX parenright currency -112 -KPX parenright yen -112 -KPX parenright brokenbar -112 -KPX parenright section -112 -KPX parenright dieresis -112 -KPX parenright ordfeminine -112 -KPX parenright guillemotleft -112 -KPX parenright logicalnot -112 -KPX parenright sfthyphen -112 -KPX parenright acute -112 -KPX parenright mu -112 -KPX parenright paragraph -112 -KPX parenright periodcentered -112 -KPX parenright cedilla -112 -KPX parenright ordmasculine -112 -KPX parenright guillemotright -36 -KPX parenright onequarter -36 -KPX parenright onehalf -36 -KPX parenright threequarters -36 -KPX parenright Acircumflex -120 -KPX parenright Atilde -112 -KPX parenright Adieresis -120 -KPX parenright Aring -112 -KPX parenright AE -120 -KPX parenright Ccedilla -112 -KPX parenright Otilde -112 -KPX parenright multiply -112 -KPX parenright Ugrave -112 -KPX parenright Ucircumflex -112 -KPX parenright Yacute -112 -KPX parenright dcaron -112 -KPX parenright dmacron -112 -KPX parenright emacron -112 -KPX parenright ebreve -112 -KPX parenright edotaccent -36 -KPX parenright eogonek -36 -KPX parenright ecaron -36 -KPX parenright imacron -36 -KPX parenright ibreve -36 -KPX parenright iogonek -36 -KPX parenright dotlessi -36 -KPX parenright ij -36 -KPX parenright jcircumflex -36 -KPX parenright uni01A5 -112 -KPX parenright uni01AD -112 -KPX parenright Uhorn -112 -KPX parenright uni01F1 -112 - - - -KPX period dollar -83 -KPX period ampersand -55 -KPX period two -55 -KPX period eight -73 -KPX period colon -73 -KPX period less -55 -KPX period H -45 -KPX period R -45 -KPX period X -45 -KPX period backslash -92 -KPX period ordfeminine -45 -KPX period guillemotleft -45 -KPX period logicalnot -45 -KPX period sfthyphen -45 -KPX period acute -45 -KPX period mu -45 -KPX period paragraph -45 -KPX period periodcentered -45 -KPX period cedilla -45 -KPX period ordmasculine -36 -KPX period guillemotright -45 -KPX period onequarter -45 -KPX period onehalf -45 -KPX period threequarters -45 -KPX period questiondown -92 -KPX period Aacute -92 -KPX period Egrave -55 -KPX period Icircumflex -55 -KPX period Yacute -45 -KPX period Ebreve -55 -KPX period ebreve -45 -KPX period Idot -73 -KPX period dotlessi -45 -KPX period lacute -55 - -KPX slash seven -167 -KPX slash eight -112 -KPX slash nine -243 -KPX slash colon -139 -KPX slash less -131 -KPX slash backslash -73 -KPX slash questiondown -73 -KPX slash Aacute -73 -KPX slash Hbar -167 -KPX slash Idot -112 -KPX slash lacute -131 - - -KPX two nine -36 -KPX two semicolon -36 - -KPX three dollar -149 -KPX three D -55 -KPX three H -55 -KPX three R -55 -KPX three cent -55 -KPX three sterling -55 -KPX three currency -55 -KPX three yen -55 -KPX three brokenbar -55 -KPX three section -55 -KPX three dieresis -55 -KPX three ordfeminine -55 -KPX three guillemotleft -55 -KPX three logicalnot -55 -KPX three sfthyphen -55 -KPX three acute -55 -KPX three mu -55 -KPX three paragraph -55 -KPX three periodcentered -55 -KPX three cedilla -55 -KPX three ordmasculine -55 -KPX three Yacute -55 -KPX three ebreve -55 - - -KPX five seven -36 -KPX five nine -73 -KPX five colon -45 -KPX five less -63 -KPX five D 47 -KPX five backslash -36 -KPX five cent 47 -KPX five sterling 47 -KPX five currency 47 -KPX five yen 47 -KPX five brokenbar 47 -KPX five section 47 -KPX five dieresis 47 -KPX five ordmasculine 38 -KPX five questiondown -36 -KPX five Aacute -36 -KPX five Hbar -36 -KPX five lacute -63 - -KPX six six -45 -KPX six Gdotaccent -45 -KPX six Gcommaaccent -45 - -KPX seven dollar -112 -KPX seven seven -73 -KPX seven D -196 -KPX seven F -235 -KPX seven H -235 -KPX seven R -235 -KPX seven U -149 -KPX seven V -188 -KPX seven X -188 -KPX seven Z -225 -KPX seven backslash -225 -KPX seven m -149 -KPX seven braceright -149 -KPX seven cent -96 -KPX seven sterling -196 -KPX seven currency -96 -KPX seven yen -96 -KPX seven brokenbar -96 -KPX seven section -96 -KPX seven dieresis -159 -KPX seven copyright -235 -KPX seven ordfeminine -175 -KPX seven guillemotleft -235 -KPX seven logicalnot -175 -KPX seven sfthyphen -175 -KPX seven acute -155 -KPX seven mu -235 -KPX seven paragraph -155 -KPX seven periodcentered -155 -KPX seven cedilla -155 -KPX seven ordmasculine -159 -KPX seven guillemotright -158 -KPX seven onequarter -188 -KPX seven onehalf -158 -KPX seven threequarters -158 -KPX seven questiondown -225 -KPX seven Aacute -225 -KPX seven Eacute -235 -KPX seven Idieresis -235 -KPX seven Yacute -235 -KPX seven ebreve -159 -KPX seven edotaccent -149 -KPX seven ecaron -149 -KPX seven gdotaccent -188 -KPX seven gcommaaccent -188 -KPX seven Hbar -73 -KPX seven dotlessi -188 - -KPX eight dollar -63 - -KPX nine dollar -159 -KPX nine two -36 -KPX nine D -188 -KPX nine H -188 -KPX nine L -36 -KPX nine R -188 -KPX nine X -131 -KPX nine backslash -83 -KPX nine cent -188 -KPX nine sterling -188 -KPX nine currency -188 -KPX nine yen -188 -KPX nine brokenbar -188 -KPX nine section -188 -KPX nine dieresis -188 -KPX nine ordfeminine -188 -KPX nine guillemotleft -188 -KPX nine logicalnot -188 -KPX nine sfthyphen -188 -KPX nine acute -188 -KPX nine mu -188 -KPX nine paragraph -188 -KPX nine periodcentered -188 -KPX nine cedilla -188 -KPX nine ordmasculine -188 -KPX nine guillemotright -131 -KPX nine onequarter -131 -KPX nine onehalf -131 -KPX nine threequarters -131 -KPX nine questiondown -83 -KPX nine Aacute -83 -KPX nine Yacute -188 -KPX nine Ebreve -36 -KPX nine ebreve -188 -KPX nine dotlessi -131 - -KPX colon dollar -131 -KPX colon D -178 -KPX colon H -167 -KPX colon L -36 -KPX colon R -167 -KPX colon U -92 -KPX colon X -83 -KPX colon backslash -45 -KPX colon cent -178 -KPX colon sterling -178 -KPX colon currency -178 -KPX colon yen -178 -KPX colon brokenbar -178 -KPX colon section -178 -KPX colon dieresis -139 -KPX colon ordfeminine -167 -KPX colon guillemotleft -167 -KPX colon logicalnot -167 -KPX colon sfthyphen -167 -KPX colon acute -167 -KPX colon mu -167 -KPX colon paragraph -167 -KPX colon periodcentered -167 -KPX colon cedilla -167 -KPX colon ordmasculine -167 -KPX colon guillemotright -83 -KPX colon onequarter -83 -KPX colon onehalf -83 -KPX colon threequarters -83 -KPX colon questiondown -45 -KPX colon Aacute -45 -KPX colon Yacute -167 -KPX colon ebreve -167 -KPX colon edotaccent -92 -KPX colon ecaron -92 -KPX colon dotlessi -83 - -KPX semicolon dollar -73 -KPX semicolon ampersand -36 -KPX semicolon two -36 -KPX semicolon Egrave -36 -KPX semicolon Icircumflex -36 -KPX semicolon Ebreve -36 - -KPX less dollar -131 -KPX less ampersand -36 -KPX less D -159 -KPX less H -178 -KPX less L -36 -KPX less R -178 -KPX less X -178 -KPX less cent -159 -KPX less sterling -159 -KPX less currency -159 -KPX less yen -159 -KPX less brokenbar -159 -KPX less section -159 -KPX less dieresis -159 -KPX less ordfeminine -178 -KPX less guillemotleft -178 -KPX less logicalnot -178 -KPX less sfthyphen -178 -KPX less acute -178 -KPX less mu -178 -KPX less paragraph -178 -KPX less periodcentered -178 -KPX less cedilla -178 -KPX less ordmasculine -178 -KPX less guillemotright -178 -KPX less onequarter -178 -KPX less onehalf -178 -KPX less threequarters -178 -KPX less Egrave -36 -KPX less Icircumflex -36 -KPX less Yacute -178 -KPX less ebreve -178 -KPX less dotlessi -178 - - - - - - - - - - -KPX m hyphen -73 -KPX m seven -149 -KPX m Hbar -149 - -KPX braceright hyphen -73 -KPX braceright seven -149 -KPX braceright Hbar -149 - - - - - - - - - - - - -KPX Acircumflex seven -112 -KPX Acircumflex nine -149 -KPX Acircumflex colon -102 -KPX Acircumflex less -102 -KPX Acircumflex I -36 -KPX Acircumflex W -36 -KPX Acircumflex Y -83 -KPX Acircumflex Z -83 -KPX Acircumflex backslash -83 -KPX Acircumflex questiondown -83 -KPX Acircumflex Aacute -83 -KPX Acircumflex Hcircumflex -112 -KPX Acircumflex hcircumflex -36 -KPX Acircumflex Hbar -112 -KPX Acircumflex hbar -36 -KPX Acircumflex Kcommaaccent -102 -KPX Acircumflex kcommaaccent -83 -KPX Acircumflex kgreenlandic -102 -KPX Acircumflex Lacute -83 -KPX Acircumflex lacute -102 -KPX Acircumflex uni01DC -112 -KPX Acircumflex uni01DD -36 -KPX Acircumflex uni01F4 -102 -KPX Acircumflex uni01F5 -83 - -KPX Adieresis seven -112 -KPX Adieresis nine -149 -KPX Adieresis colon -102 -KPX Adieresis less -102 -KPX Adieresis I -36 -KPX Adieresis W -36 -KPX Adieresis Y -83 -KPX Adieresis Z -83 -KPX Adieresis backslash -83 -KPX Adieresis questiondown -83 -KPX Adieresis Aacute -83 -KPX Adieresis Hcircumflex -112 -KPX Adieresis hcircumflex -36 -KPX Adieresis Hbar -112 -KPX Adieresis hbar -36 -KPX Adieresis Kcommaaccent -102 -KPX Adieresis kcommaaccent -83 -KPX Adieresis kgreenlandic -102 -KPX Adieresis Lacute -83 -KPX Adieresis lacute -102 -KPX Adieresis uni01DC -112 -KPX Adieresis uni01DD -36 -KPX Adieresis uni01F4 -102 -KPX Adieresis uni01F5 -83 - -KPX AE seven -112 -KPX AE nine -149 -KPX AE colon -102 -KPX AE less -102 -KPX AE I -36 -KPX AE W -36 -KPX AE Y -83 -KPX AE Z -83 -KPX AE backslash -83 -KPX AE questiondown -83 -KPX AE Aacute -83 -KPX AE Hcircumflex -112 -KPX AE hcircumflex -36 -KPX AE Hbar -112 -KPX AE hbar -36 -KPX AE Kcommaaccent -102 -KPX AE kcommaaccent -83 -KPX AE kgreenlandic -102 -KPX AE Lacute -83 -KPX AE lacute -102 -KPX AE uni01DC -112 -KPX AE uni01DD -36 -KPX AE uni01F4 -102 -KPX AE uni01F5 -83 - - - - - -KPX Eth nine -36 - -KPX Ograve nine -36 - - - -KPX ucircumflex seven -167 -KPX ucircumflex eight -112 -KPX ucircumflex nine -243 -KPX ucircumflex colon -139 -KPX ucircumflex less -131 -KPX ucircumflex backslash -73 -KPX ucircumflex questiondown -73 -KPX ucircumflex Aacute -73 -KPX ucircumflex Hbar -167 -KPX ucircumflex Idot -112 -KPX ucircumflex lacute -131 - -KPX ydieresis seven -167 -KPX ydieresis eight -112 -KPX ydieresis nine -243 -KPX ydieresis colon -139 -KPX ydieresis less -131 -KPX ydieresis backslash -73 -KPX ydieresis questiondown -73 -KPX ydieresis Aacute -73 -KPX ydieresis Hbar -167 -KPX ydieresis Idot -112 -KPX ydieresis lacute -131 - -KPX Abreve O -241 - -KPX abreve seven -167 -KPX abreve eight -112 -KPX abreve nine -243 -KPX abreve colon -139 -KPX abreve less -131 -KPX abreve backslash -73 -KPX abreve questiondown -73 -KPX abreve Aacute -73 -KPX abreve Hbar -167 -KPX abreve Idot -112 -KPX abreve lacute -131 - - - -KPX Edotaccent seven -36 -KPX Edotaccent nine -73 -KPX Edotaccent colon -45 -KPX Edotaccent less -63 -KPX Edotaccent D 47 -KPX Edotaccent backslash -36 -KPX Edotaccent cent 47 -KPX Edotaccent sterling 47 -KPX Edotaccent currency 47 -KPX Edotaccent yen 47 -KPX Edotaccent brokenbar 47 -KPX Edotaccent section 47 -KPX Edotaccent dieresis 47 -KPX Edotaccent ordmasculine 38 -KPX Edotaccent questiondown -36 -KPX Edotaccent Aacute -36 -KPX Edotaccent Hbar -36 -KPX Edotaccent lacute -63 - - -KPX Ecaron seven -36 -KPX Ecaron nine -73 -KPX Ecaron colon -45 -KPX Ecaron less -63 -KPX Ecaron D 47 -KPX Ecaron backslash -36 -KPX Ecaron cent 47 -KPX Ecaron sterling 47 -KPX Ecaron currency 47 -KPX Ecaron yen 47 -KPX Ecaron brokenbar 47 -KPX Ecaron section 47 -KPX Ecaron dieresis 47 -KPX Ecaron ordmasculine 38 -KPX Ecaron questiondown -36 -KPX Ecaron Aacute -36 -KPX Ecaron Hbar -36 -KPX Ecaron lacute -63 - - -KPX Gdotaccent six -45 -KPX Gdotaccent Gdotaccent -45 -KPX Gdotaccent Gcommaaccent -45 - -KPX Gcommaaccent six -45 -KPX Gcommaaccent Gdotaccent -45 -KPX Gcommaaccent Gcommaaccent -45 - -KPX Hbar dollar -112 -KPX Hbar seven -73 -KPX Hbar D -196 -KPX Hbar F -235 -KPX Hbar H -235 -KPX Hbar R -235 -KPX Hbar U -149 -KPX Hbar V -188 -KPX Hbar X -188 -KPX Hbar Z -225 -KPX Hbar backslash -225 -KPX Hbar m -149 -KPX Hbar braceright -149 -KPX Hbar cent -196 -KPX Hbar sterling -196 -KPX Hbar currency -196 -KPX Hbar yen -196 -KPX Hbar brokenbar -196 -KPX Hbar section -196 -KPX Hbar dieresis -159 -KPX Hbar copyright -235 -KPX Hbar ordfeminine -235 -KPX Hbar guillemotleft -235 -KPX Hbar logicalnot -235 -KPX Hbar sfthyphen -235 -KPX Hbar acute -235 -KPX Hbar mu -235 -KPX Hbar paragraph -235 -KPX Hbar periodcentered -235 -KPX Hbar cedilla -235 -KPX Hbar ordmasculine -159 -KPX Hbar guillemotright -188 -KPX Hbar onequarter -188 -KPX Hbar onehalf -188 -KPX Hbar threequarters -188 -KPX Hbar questiondown -225 -KPX Hbar Aacute -225 -KPX Hbar Eacute -235 -KPX Hbar Idieresis -235 -KPX Hbar Yacute -235 -KPX Hbar ebreve -159 -KPX Hbar edotaccent -149 -KPX Hbar ecaron -149 -KPX Hbar gdotaccent -188 -KPX Hbar gcommaaccent -188 -KPX Hbar Hbar -73 -KPX Hbar dotlessi -188 - -KPX Idot dollar -63 - -KPX lacute dollar -131 -KPX lacute ampersand -36 -KPX lacute D -159 -KPX lacute H -178 -KPX lacute L -36 -KPX lacute R -178 -KPX lacute X -178 -KPX lacute cent -159 -KPX lacute sterling -159 -KPX lacute currency -159 -KPX lacute yen -159 -KPX lacute brokenbar -159 -KPX lacute section -159 -KPX lacute dieresis -159 -KPX lacute ordfeminine -178 -KPX lacute guillemotleft -178 -KPX lacute logicalnot -178 -KPX lacute sfthyphen -178 -KPX lacute acute -178 -KPX lacute mu -178 -KPX lacute paragraph -178 -KPX lacute periodcentered -178 -KPX lacute cedilla -178 -KPX lacute ordmasculine -178 -KPX lacute guillemotright -178 -KPX lacute onequarter -178 -KPX lacute onehalf -178 -KPX lacute threequarters -178 -KPX lacute Egrave -36 -KPX lacute Icircumflex -36 -KPX lacute Yacute -178 -KPX lacute ebreve -178 -KPX lacute dotlessi -178 - - -KPX uni027D dollar -282 -EndKernPairs -EndKernData -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSerif-BoldItalic.ttf b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSerif-BoldItalic.ttf deleted file mode 100644 index a36dd4b7..00000000 Binary files a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSerif-BoldItalic.ttf and /dev/null differ diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSerif-BoldItalic.ufm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSerif-BoldItalic.ufm deleted file mode 100644 index f6db21d9..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSerif-BoldItalic.ufm +++ /dev/null @@ -1,3892 +0,0 @@ -StartFontMetrics 4.1 -Notice Converted by PHP-font-lib -Comment https://github.com/PhenX/php-font-lib -EncodingScheme FontSpecific -FontName DejaVu Serif -FontSubfamily Bold Italic -UniqueID DejaVu Serif Bold Italic -FullName DejaVu Serif Bold Italic -Version Version 2.37 -PostScriptName DejaVuSerif-BoldItalic -Manufacturer DejaVu fonts team -FontVendorURL http://dejavu.sourceforge.net -LicenseURL http://dejavu.sourceforge.net/wiki/index.php/License -PreferredFamily DejaVu Serif -PreferredSubfamily Bold Italic -Weight Bold -ItalicAngle -11 -IsFixedPitch false -UnderlineThickness 44 -UnderlinePosition -63 -FontHeightOffset 0 -Ascender 939 -Descender -236 -FontBBox -906 -389 1925 1145 -StartCharMetrics 3506 -U 32 ; WX 348 ; N space ; G 3 -U 33 ; WX 439 ; N exclam ; G 4 -U 34 ; WX 521 ; N quotedbl ; G 5 -U 35 ; WX 838 ; N numbersign ; G 6 -U 36 ; WX 696 ; N dollar ; G 7 -U 37 ; WX 950 ; N percent ; G 8 -U 38 ; WX 903 ; N ampersand ; G 9 -U 39 ; WX 306 ; N quotesingle ; G 10 -U 40 ; WX 473 ; N parenleft ; G 11 -U 41 ; WX 473 ; N parenright ; G 12 -U 42 ; WX 523 ; N asterisk ; G 13 -U 43 ; WX 838 ; N plus ; G 14 -U 44 ; WX 348 ; N comma ; G 15 -U 45 ; WX 415 ; N hyphen ; G 16 -U 46 ; WX 348 ; N period ; G 17 -U 47 ; WX 365 ; N slash ; G 18 -U 48 ; WX 696 ; N zero ; G 19 -U 49 ; WX 696 ; N one ; G 20 -U 50 ; WX 696 ; N two ; G 21 -U 51 ; WX 696 ; N three ; G 22 -U 52 ; WX 696 ; N four ; G 23 -U 53 ; WX 696 ; N five ; G 24 -U 54 ; WX 696 ; N six ; G 25 -U 55 ; WX 696 ; N seven ; G 26 -U 56 ; WX 696 ; N eight ; G 27 -U 57 ; WX 696 ; N nine ; G 28 -U 58 ; WX 369 ; N colon ; G 29 -U 59 ; WX 369 ; N semicolon ; G 30 -U 60 ; WX 838 ; N less ; G 31 -U 61 ; WX 838 ; N equal ; G 32 -U 62 ; WX 838 ; N greater ; G 33 -U 63 ; WX 586 ; N question ; G 34 -U 64 ; WX 1000 ; N at ; G 35 -U 65 ; WX 776 ; N A ; G 36 -U 66 ; WX 845 ; N B ; G 37 -U 67 ; WX 796 ; N C ; G 38 -U 68 ; WX 867 ; N D ; G 39 -U 69 ; WX 762 ; N E ; G 40 -U 70 ; WX 710 ; N F ; G 41 -U 71 ; WX 854 ; N G ; G 42 -U 72 ; WX 945 ; N H ; G 43 -U 73 ; WX 468 ; N I ; G 44 -U 74 ; WX 473 ; N J ; G 45 -U 75 ; WX 869 ; N K ; G 46 -U 76 ; WX 703 ; N L ; G 47 -U 77 ; WX 1107 ; N M ; G 48 -U 78 ; WX 914 ; N N ; G 49 -U 79 ; WX 871 ; N O ; G 50 -U 80 ; WX 752 ; N P ; G 51 -U 81 ; WX 871 ; N Q ; G 52 -U 82 ; WX 831 ; N R ; G 53 -U 83 ; WX 722 ; N S ; G 54 -U 84 ; WX 744 ; N T ; G 55 -U 85 ; WX 872 ; N U ; G 56 -U 86 ; WX 776 ; N V ; G 57 -U 87 ; WX 1123 ; N W ; G 58 -U 88 ; WX 776 ; N X ; G 59 -U 89 ; WX 714 ; N Y ; G 60 -U 90 ; WX 730 ; N Z ; G 61 -U 91 ; WX 473 ; N bracketleft ; G 62 -U 92 ; WX 365 ; N backslash ; G 63 -U 93 ; WX 473 ; N bracketright ; G 64 -U 94 ; WX 838 ; N asciicircum ; G 65 -U 95 ; WX 500 ; N underscore ; G 66 -U 96 ; WX 500 ; N grave ; G 67 -U 97 ; WX 648 ; N a ; G 68 -U 98 ; WX 699 ; N b ; G 69 -U 99 ; WX 609 ; N c ; G 70 -U 100 ; WX 699 ; N d ; G 71 -U 101 ; WX 636 ; N e ; G 72 -U 102 ; WX 430 ; N f ; G 73 -U 103 ; WX 699 ; N g ; G 74 -U 104 ; WX 727 ; N h ; G 75 -U 105 ; WX 380 ; N i ; G 76 -U 106 ; WX 362 ; N j ; G 77 -U 107 ; WX 693 ; N k ; G 78 -U 108 ; WX 380 ; N l ; G 79 -U 109 ; WX 1058 ; N m ; G 80 -U 110 ; WX 727 ; N n ; G 81 -U 111 ; WX 667 ; N o ; G 82 -U 112 ; WX 699 ; N p ; G 83 -U 113 ; WX 699 ; N q ; G 84 -U 114 ; WX 527 ; N r ; G 85 -U 115 ; WX 563 ; N s ; G 86 -U 116 ; WX 462 ; N t ; G 87 -U 117 ; WX 727 ; N u ; G 88 -U 118 ; WX 581 ; N v ; G 89 -U 119 ; WX 861 ; N w ; G 90 -U 120 ; WX 596 ; N x ; G 91 -U 121 ; WX 581 ; N y ; G 92 -U 122 ; WX 568 ; N z ; G 93 -U 123 ; WX 643 ; N braceleft ; G 94 -U 124 ; WX 364 ; N bar ; G 95 -U 125 ; WX 643 ; N braceright ; G 96 -U 126 ; WX 838 ; N asciitilde ; G 97 -U 160 ; WX 348 ; N nbspace ; G 98 -U 161 ; WX 439 ; N exclamdown ; G 99 -U 162 ; WX 696 ; N cent ; G 100 -U 163 ; WX 696 ; N sterling ; G 101 -U 164 ; WX 636 ; N currency ; G 102 -U 165 ; WX 696 ; N yen ; G 103 -U 166 ; WX 364 ; N brokenbar ; G 104 -U 167 ; WX 523 ; N section ; G 105 -U 168 ; WX 500 ; N dieresis ; G 106 -U 169 ; WX 1000 ; N copyright ; G 107 -U 170 ; WX 487 ; N ordfeminine ; G 108 -U 171 ; WX 625 ; N guillemotleft ; G 109 -U 172 ; WX 838 ; N logicalnot ; G 110 -U 173 ; WX 415 ; N sfthyphen ; G 111 -U 174 ; WX 1000 ; N registered ; G 112 -U 175 ; WX 500 ; N macron ; G 113 -U 176 ; WX 500 ; N degree ; G 114 -U 177 ; WX 838 ; N plusminus ; G 115 -U 178 ; WX 438 ; N twosuperior ; G 116 -U 179 ; WX 438 ; N threesuperior ; G 117 -U 180 ; WX 500 ; N acute ; G 118 -U 181 ; WX 732 ; N mu ; G 119 -U 182 ; WX 636 ; N paragraph ; G 120 -U 183 ; WX 348 ; N periodcentered ; G 121 -U 184 ; WX 500 ; N cedilla ; G 122 -U 185 ; WX 438 ; N onesuperior ; G 123 -U 186 ; WX 500 ; N ordmasculine ; G 124 -U 187 ; WX 625 ; N guillemotright ; G 125 -U 188 ; WX 1043 ; N onequarter ; G 126 -U 189 ; WX 1043 ; N onehalf ; G 127 -U 190 ; WX 1043 ; N threequarters ; G 128 -U 191 ; WX 586 ; N questiondown ; G 129 -U 192 ; WX 776 ; N Agrave ; G 130 -U 193 ; WX 776 ; N Aacute ; G 131 -U 194 ; WX 776 ; N Acircumflex ; G 132 -U 195 ; WX 776 ; N Atilde ; G 133 -U 196 ; WX 776 ; N Adieresis ; G 134 -U 197 ; WX 776 ; N Aring ; G 135 -U 198 ; WX 1034 ; N AE ; G 136 -U 199 ; WX 796 ; N Ccedilla ; G 137 -U 200 ; WX 762 ; N Egrave ; G 138 -U 201 ; WX 762 ; N Eacute ; G 139 -U 202 ; WX 762 ; N Ecircumflex ; G 140 -U 203 ; WX 762 ; N Edieresis ; G 141 -U 204 ; WX 468 ; N Igrave ; G 142 -U 205 ; WX 468 ; N Iacute ; G 143 -U 206 ; WX 468 ; N Icircumflex ; G 144 -U 207 ; WX 468 ; N Idieresis ; G 145 -U 208 ; WX 874 ; N Eth ; G 146 -U 209 ; WX 914 ; N Ntilde ; G 147 -U 210 ; WX 871 ; N Ograve ; G 148 -U 211 ; WX 871 ; N Oacute ; G 149 -U 212 ; WX 871 ; N Ocircumflex ; G 150 -U 213 ; WX 871 ; N Otilde ; G 151 -U 214 ; WX 871 ; N Odieresis ; G 152 -U 215 ; WX 838 ; N multiply ; G 153 -U 216 ; WX 871 ; N Oslash ; G 154 -U 217 ; WX 872 ; N Ugrave ; G 155 -U 218 ; WX 872 ; N Uacute ; G 156 -U 219 ; WX 872 ; N Ucircumflex ; G 157 -U 220 ; WX 872 ; N Udieresis ; G 158 -U 221 ; WX 714 ; N Yacute ; G 159 -U 222 ; WX 757 ; N Thorn ; G 160 -U 223 ; WX 760 ; N germandbls ; G 161 -U 224 ; WX 648 ; N agrave ; G 162 -U 225 ; WX 648 ; N aacute ; G 163 -U 226 ; WX 648 ; N acircumflex ; G 164 -U 227 ; WX 648 ; N atilde ; G 165 -U 228 ; WX 648 ; N adieresis ; G 166 -U 229 ; WX 648 ; N aring ; G 167 -U 230 ; WX 932 ; N ae ; G 168 -U 231 ; WX 609 ; N ccedilla ; G 169 -U 232 ; WX 636 ; N egrave ; G 170 -U 233 ; WX 636 ; N eacute ; G 171 -U 234 ; WX 636 ; N ecircumflex ; G 172 -U 235 ; WX 636 ; N edieresis ; G 173 -U 236 ; WX 380 ; N igrave ; G 174 -U 237 ; WX 380 ; N iacute ; G 175 -U 238 ; WX 380 ; N icircumflex ; G 176 -U 239 ; WX 380 ; N idieresis ; G 177 -U 240 ; WX 667 ; N eth ; G 178 -U 241 ; WX 727 ; N ntilde ; G 179 -U 242 ; WX 667 ; N ograve ; G 180 -U 243 ; WX 667 ; N oacute ; G 181 -U 244 ; WX 667 ; N ocircumflex ; G 182 -U 245 ; WX 667 ; N otilde ; G 183 -U 246 ; WX 667 ; N odieresis ; G 184 -U 247 ; WX 838 ; N divide ; G 185 -U 248 ; WX 667 ; N oslash ; G 186 -U 249 ; WX 727 ; N ugrave ; G 187 -U 250 ; WX 727 ; N uacute ; G 188 -U 251 ; WX 727 ; N ucircumflex ; G 189 -U 252 ; WX 727 ; N udieresis ; G 190 -U 253 ; WX 581 ; N yacute ; G 191 -U 254 ; WX 699 ; N thorn ; G 192 -U 255 ; WX 581 ; N ydieresis ; G 193 -U 256 ; WX 776 ; N Amacron ; G 194 -U 257 ; WX 648 ; N amacron ; G 195 -U 258 ; WX 776 ; N Abreve ; G 196 -U 259 ; WX 648 ; N abreve ; G 197 -U 260 ; WX 776 ; N Aogonek ; G 198 -U 261 ; WX 648 ; N aogonek ; G 199 -U 262 ; WX 796 ; N Cacute ; G 200 -U 263 ; WX 609 ; N cacute ; G 201 -U 264 ; WX 796 ; N Ccircumflex ; G 202 -U 265 ; WX 609 ; N ccircumflex ; G 203 -U 266 ; WX 796 ; N Cdotaccent ; G 204 -U 267 ; WX 609 ; N cdotaccent ; G 205 -U 268 ; WX 796 ; N Ccaron ; G 206 -U 269 ; WX 609 ; N ccaron ; G 207 -U 270 ; WX 867 ; N Dcaron ; G 208 -U 271 ; WX 699 ; N dcaron ; G 209 -U 272 ; WX 874 ; N Dcroat ; G 210 -U 273 ; WX 699 ; N dmacron ; G 211 -U 274 ; WX 762 ; N Emacron ; G 212 -U 275 ; WX 636 ; N emacron ; G 213 -U 276 ; WX 762 ; N Ebreve ; G 214 -U 277 ; WX 636 ; N ebreve ; G 215 -U 278 ; WX 762 ; N Edotaccent ; G 216 -U 279 ; WX 636 ; N edotaccent ; G 217 -U 280 ; WX 762 ; N Eogonek ; G 218 -U 281 ; WX 636 ; N eogonek ; G 219 -U 282 ; WX 762 ; N Ecaron ; G 220 -U 283 ; WX 636 ; N ecaron ; G 221 -U 284 ; WX 854 ; N Gcircumflex ; G 222 -U 285 ; WX 699 ; N gcircumflex ; G 223 -U 286 ; WX 854 ; N Gbreve ; G 224 -U 287 ; WX 699 ; N gbreve ; G 225 -U 288 ; WX 854 ; N Gdotaccent ; G 226 -U 289 ; WX 699 ; N gdotaccent ; G 227 -U 290 ; WX 854 ; N Gcommaaccent ; G 228 -U 291 ; WX 699 ; N gcommaaccent ; G 229 -U 292 ; WX 945 ; N Hcircumflex ; G 230 -U 293 ; WX 727 ; N hcircumflex ; G 231 -U 294 ; WX 945 ; N Hbar ; G 232 -U 295 ; WX 727 ; N hbar ; G 233 -U 296 ; WX 468 ; N Itilde ; G 234 -U 297 ; WX 380 ; N itilde ; G 235 -U 298 ; WX 468 ; N Imacron ; G 236 -U 299 ; WX 380 ; N imacron ; G 237 -U 300 ; WX 468 ; N Ibreve ; G 238 -U 301 ; WX 380 ; N ibreve ; G 239 -U 302 ; WX 468 ; N Iogonek ; G 240 -U 303 ; WX 380 ; N iogonek ; G 241 -U 304 ; WX 468 ; N Idot ; G 242 -U 305 ; WX 380 ; N dotlessi ; G 243 -U 306 ; WX 942 ; N IJ ; G 244 -U 307 ; WX 751 ; N ij ; G 245 -U 308 ; WX 473 ; N Jcircumflex ; G 246 -U 309 ; WX 362 ; N jcircumflex ; G 247 -U 310 ; WX 869 ; N Kcommaaccent ; G 248 -U 311 ; WX 693 ; N kcommaaccent ; G 249 -U 312 ; WX 693 ; N kgreenlandic ; G 250 -U 313 ; WX 703 ; N Lacute ; G 251 -U 314 ; WX 380 ; N lacute ; G 252 -U 315 ; WX 703 ; N Lcommaaccent ; G 253 -U 316 ; WX 380 ; N lcommaaccent ; G 254 -U 317 ; WX 703 ; N Lcaron ; G 255 -U 318 ; WX 508 ; N lcaron ; G 256 -U 319 ; WX 703 ; N Ldot ; G 257 -U 320 ; WX 557 ; N ldot ; G 258 -U 321 ; WX 710 ; N Lslash ; G 259 -U 322 ; WX 385 ; N lslash ; G 260 -U 323 ; WX 914 ; N Nacute ; G 261 -U 324 ; WX 727 ; N nacute ; G 262 -U 325 ; WX 914 ; N Ncommaaccent ; G 263 -U 326 ; WX 727 ; N ncommaaccent ; G 264 -U 327 ; WX 914 ; N Ncaron ; G 265 -U 328 ; WX 727 ; N ncaron ; G 266 -U 329 ; WX 1008 ; N napostrophe ; G 267 -U 330 ; WX 872 ; N Eng ; G 268 -U 331 ; WX 727 ; N eng ; G 269 -U 332 ; WX 871 ; N Omacron ; G 270 -U 333 ; WX 667 ; N omacron ; G 271 -U 334 ; WX 871 ; N Obreve ; G 272 -U 335 ; WX 667 ; N obreve ; G 273 -U 336 ; WX 871 ; N Ohungarumlaut ; G 274 -U 337 ; WX 667 ; N ohungarumlaut ; G 275 -U 338 ; WX 1180 ; N OE ; G 276 -U 339 ; WX 1028 ; N oe ; G 277 -U 340 ; WX 831 ; N Racute ; G 278 -U 341 ; WX 527 ; N racute ; G 279 -U 342 ; WX 831 ; N Rcommaaccent ; G 280 -U 343 ; WX 527 ; N rcommaaccent ; G 281 -U 344 ; WX 831 ; N Rcaron ; G 282 -U 345 ; WX 527 ; N rcaron ; G 283 -U 346 ; WX 722 ; N Sacute ; G 284 -U 347 ; WX 563 ; N sacute ; G 285 -U 348 ; WX 722 ; N Scircumflex ; G 286 -U 349 ; WX 563 ; N scircumflex ; G 287 -U 350 ; WX 722 ; N Scedilla ; G 288 -U 351 ; WX 563 ; N scedilla ; G 289 -U 352 ; WX 722 ; N Scaron ; G 290 -U 353 ; WX 563 ; N scaron ; G 291 -U 354 ; WX 744 ; N Tcommaaccent ; G 292 -U 355 ; WX 462 ; N tcommaaccent ; G 293 -U 356 ; WX 744 ; N Tcaron ; G 294 -U 357 ; WX 462 ; N tcaron ; G 295 -U 358 ; WX 744 ; N Tbar ; G 296 -U 359 ; WX 462 ; N tbar ; G 297 -U 360 ; WX 872 ; N Utilde ; G 298 -U 361 ; WX 727 ; N utilde ; G 299 -U 362 ; WX 872 ; N Umacron ; G 300 -U 363 ; WX 727 ; N umacron ; G 301 -U 364 ; WX 872 ; N Ubreve ; G 302 -U 365 ; WX 727 ; N ubreve ; G 303 -U 366 ; WX 872 ; N Uring ; G 304 -U 367 ; WX 727 ; N uring ; G 305 -U 368 ; WX 872 ; N Uhungarumlaut ; G 306 -U 369 ; WX 727 ; N uhungarumlaut ; G 307 -U 370 ; WX 872 ; N Uogonek ; G 308 -U 371 ; WX 727 ; N uogonek ; G 309 -U 372 ; WX 1123 ; N Wcircumflex ; G 310 -U 373 ; WX 861 ; N wcircumflex ; G 311 -U 374 ; WX 714 ; N Ycircumflex ; G 312 -U 375 ; WX 581 ; N ycircumflex ; G 313 -U 376 ; WX 714 ; N Ydieresis ; G 314 -U 377 ; WX 730 ; N Zacute ; G 315 -U 378 ; WX 568 ; N zacute ; G 316 -U 379 ; WX 730 ; N Zdotaccent ; G 317 -U 380 ; WX 568 ; N zdotaccent ; G 318 -U 381 ; WX 730 ; N Zcaron ; G 319 -U 382 ; WX 568 ; N zcaron ; G 320 -U 383 ; WX 430 ; N longs ; G 321 -U 384 ; WX 699 ; N uni0180 ; G 322 -U 385 ; WX 845 ; N uni0181 ; G 323 -U 386 ; WX 854 ; N uni0182 ; G 324 -U 387 ; WX 699 ; N uni0183 ; G 325 -U 388 ; WX 854 ; N uni0184 ; G 326 -U 389 ; WX 699 ; N uni0185 ; G 327 -U 390 ; WX 796 ; N uni0186 ; G 328 -U 391 ; WX 796 ; N uni0187 ; G 329 -U 392 ; WX 609 ; N uni0188 ; G 330 -U 393 ; WX 874 ; N uni0189 ; G 331 -U 394 ; WX 867 ; N uni018A ; G 332 -U 395 ; WX 854 ; N uni018B ; G 333 -U 396 ; WX 699 ; N uni018C ; G 334 -U 397 ; WX 667 ; N uni018D ; G 335 -U 398 ; WX 762 ; N uni018E ; G 336 -U 399 ; WX 871 ; N uni018F ; G 337 -U 400 ; WX 721 ; N uni0190 ; G 338 -U 401 ; WX 710 ; N uni0191 ; G 339 -U 402 ; WX 430 ; N florin ; G 340 -U 403 ; WX 854 ; N uni0193 ; G 341 -U 404 ; WX 771 ; N uni0194 ; G 342 -U 405 ; WX 1043 ; N uni0195 ; G 343 -U 406 ; WX 468 ; N uni0196 ; G 344 -U 407 ; WX 468 ; N uni0197 ; G 345 -U 408 ; WX 869 ; N uni0198 ; G 346 -U 409 ; WX 693 ; N uni0199 ; G 347 -U 410 ; WX 380 ; N uni019A ; G 348 -U 411 ; WX 701 ; N uni019B ; G 349 -U 412 ; WX 1058 ; N uni019C ; G 350 -U 413 ; WX 914 ; N uni019D ; G 351 -U 414 ; WX 727 ; N uni019E ; G 352 -U 415 ; WX 871 ; N uni019F ; G 353 -U 416 ; WX 871 ; N Ohorn ; G 354 -U 417 ; WX 667 ; N ohorn ; G 355 -U 418 ; WX 1200 ; N uni01A2 ; G 356 -U 419 ; WX 943 ; N uni01A3 ; G 357 -U 420 ; WX 752 ; N uni01A4 ; G 358 -U 421 ; WX 699 ; N uni01A5 ; G 359 -U 422 ; WX 831 ; N uni01A6 ; G 360 -U 423 ; WX 722 ; N uni01A7 ; G 361 -U 424 ; WX 563 ; N uni01A8 ; G 362 -U 425 ; WX 707 ; N uni01A9 ; G 363 -U 426 ; WX 331 ; N uni01AA ; G 364 -U 427 ; WX 462 ; N uni01AB ; G 365 -U 428 ; WX 744 ; N uni01AC ; G 366 -U 429 ; WX 462 ; N uni01AD ; G 367 -U 430 ; WX 744 ; N uni01AE ; G 368 -U 431 ; WX 872 ; N Uhorn ; G 369 -U 432 ; WX 727 ; N uhorn ; G 370 -U 433 ; WX 890 ; N uni01B1 ; G 371 -U 434 ; WX 890 ; N uni01B2 ; G 372 -U 435 ; WX 714 ; N uni01B3 ; G 373 -U 436 ; WX 699 ; N uni01B4 ; G 374 -U 437 ; WX 730 ; N uni01B5 ; G 375 -U 438 ; WX 568 ; N uni01B6 ; G 376 -U 439 ; WX 657 ; N uni01B7 ; G 377 -U 440 ; WX 657 ; N uni01B8 ; G 378 -U 441 ; WX 657 ; N uni01B9 ; G 379 -U 442 ; WX 657 ; N uni01BA ; G 380 -U 443 ; WX 696 ; N uni01BB ; G 381 -U 444 ; WX 754 ; N uni01BC ; G 382 -U 445 ; WX 568 ; N uni01BD ; G 383 -U 446 ; WX 536 ; N uni01BE ; G 384 -U 447 ; WX 716 ; N uni01BF ; G 385 -U 448 ; WX 295 ; N uni01C0 ; G 386 -U 449 ; WX 492 ; N uni01C1 ; G 387 -U 450 ; WX 459 ; N uni01C2 ; G 388 -U 451 ; WX 295 ; N uni01C3 ; G 389 -U 452 ; WX 1597 ; N uni01C4 ; G 390 -U 453 ; WX 1435 ; N uni01C5 ; G 391 -U 454 ; WX 1267 ; N uni01C6 ; G 392 -U 455 ; WX 1176 ; N uni01C7 ; G 393 -U 456 ; WX 1065 ; N uni01C8 ; G 394 -U 457 ; WX 742 ; N uni01C9 ; G 395 -U 458 ; WX 1387 ; N uni01CA ; G 396 -U 459 ; WX 1276 ; N uni01CB ; G 397 -U 460 ; WX 1089 ; N uni01CC ; G 398 -U 461 ; WX 776 ; N uni01CD ; G 399 -U 462 ; WX 648 ; N uni01CE ; G 400 -U 463 ; WX 468 ; N uni01CF ; G 401 -U 464 ; WX 380 ; N uni01D0 ; G 402 -U 465 ; WX 871 ; N uni01D1 ; G 403 -U 466 ; WX 667 ; N uni01D2 ; G 404 -U 467 ; WX 872 ; N uni01D3 ; G 405 -U 468 ; WX 727 ; N uni01D4 ; G 406 -U 469 ; WX 872 ; N uni01D5 ; G 407 -U 470 ; WX 727 ; N uni01D6 ; G 408 -U 471 ; WX 872 ; N uni01D7 ; G 409 -U 472 ; WX 727 ; N uni01D8 ; G 410 -U 473 ; WX 872 ; N uni01D9 ; G 411 -U 474 ; WX 727 ; N uni01DA ; G 412 -U 475 ; WX 872 ; N uni01DB ; G 413 -U 476 ; WX 727 ; N uni01DC ; G 414 -U 477 ; WX 636 ; N uni01DD ; G 415 -U 478 ; WX 776 ; N uni01DE ; G 416 -U 479 ; WX 648 ; N uni01DF ; G 417 -U 480 ; WX 776 ; N uni01E0 ; G 418 -U 481 ; WX 648 ; N uni01E1 ; G 419 -U 482 ; WX 1034 ; N uni01E2 ; G 420 -U 483 ; WX 975 ; N uni01E3 ; G 421 -U 484 ; WX 896 ; N uni01E4 ; G 422 -U 485 ; WX 699 ; N uni01E5 ; G 423 -U 486 ; WX 854 ; N Gcaron ; G 424 -U 487 ; WX 699 ; N gcaron ; G 425 -U 488 ; WX 869 ; N uni01E8 ; G 426 -U 489 ; WX 693 ; N uni01E9 ; G 427 -U 490 ; WX 871 ; N uni01EA ; G 428 -U 491 ; WX 667 ; N uni01EB ; G 429 -U 492 ; WX 871 ; N uni01EC ; G 430 -U 493 ; WX 667 ; N uni01ED ; G 431 -U 494 ; WX 657 ; N uni01EE ; G 432 -U 495 ; WX 568 ; N uni01EF ; G 433 -U 496 ; WX 362 ; N uni01F0 ; G 434 -U 497 ; WX 1597 ; N uni01F1 ; G 435 -U 498 ; WX 1435 ; N uni01F2 ; G 436 -U 499 ; WX 1267 ; N uni01F3 ; G 437 -U 500 ; WX 854 ; N uni01F4 ; G 438 -U 501 ; WX 699 ; N uni01F5 ; G 439 -U 502 ; WX 1221 ; N uni01F6 ; G 440 -U 503 ; WX 787 ; N uni01F7 ; G 441 -U 504 ; WX 914 ; N uni01F8 ; G 442 -U 505 ; WX 727 ; N uni01F9 ; G 443 -U 506 ; WX 776 ; N Aringacute ; G 444 -U 507 ; WX 648 ; N aringacute ; G 445 -U 508 ; WX 1034 ; N AEacute ; G 446 -U 509 ; WX 932 ; N aeacute ; G 447 -U 510 ; WX 871 ; N Oslashacute ; G 448 -U 511 ; WX 667 ; N oslashacute ; G 449 -U 512 ; WX 776 ; N uni0200 ; G 450 -U 513 ; WX 648 ; N uni0201 ; G 451 -U 514 ; WX 776 ; N uni0202 ; G 452 -U 515 ; WX 648 ; N uni0203 ; G 453 -U 516 ; WX 762 ; N uni0204 ; G 454 -U 517 ; WX 636 ; N uni0205 ; G 455 -U 518 ; WX 762 ; N uni0206 ; G 456 -U 519 ; WX 636 ; N uni0207 ; G 457 -U 520 ; WX 468 ; N uni0208 ; G 458 -U 521 ; WX 380 ; N uni0209 ; G 459 -U 522 ; WX 468 ; N uni020A ; G 460 -U 523 ; WX 380 ; N uni020B ; G 461 -U 524 ; WX 871 ; N uni020C ; G 462 -U 525 ; WX 667 ; N uni020D ; G 463 -U 526 ; WX 871 ; N uni020E ; G 464 -U 527 ; WX 667 ; N uni020F ; G 465 -U 528 ; WX 831 ; N uni0210 ; G 466 -U 529 ; WX 527 ; N uni0211 ; G 467 -U 530 ; WX 831 ; N uni0212 ; G 468 -U 531 ; WX 527 ; N uni0213 ; G 469 -U 532 ; WX 872 ; N uni0214 ; G 470 -U 533 ; WX 727 ; N uni0215 ; G 471 -U 534 ; WX 872 ; N uni0216 ; G 472 -U 535 ; WX 727 ; N uni0217 ; G 473 -U 536 ; WX 722 ; N Scommaaccent ; G 474 -U 537 ; WX 563 ; N scommaaccent ; G 475 -U 538 ; WX 744 ; N uni021A ; G 476 -U 539 ; WX 462 ; N uni021B ; G 477 -U 540 ; WX 690 ; N uni021C ; G 478 -U 541 ; WX 607 ; N uni021D ; G 479 -U 542 ; WX 945 ; N uni021E ; G 480 -U 543 ; WX 727 ; N uni021F ; G 481 -U 544 ; WX 872 ; N uni0220 ; G 482 -U 545 ; WX 791 ; N uni0221 ; G 483 -U 546 ; WX 703 ; N uni0222 ; G 484 -U 547 ; WX 616 ; N uni0223 ; G 485 -U 548 ; WX 730 ; N uni0224 ; G 486 -U 549 ; WX 568 ; N uni0225 ; G 487 -U 550 ; WX 776 ; N uni0226 ; G 488 -U 551 ; WX 648 ; N uni0227 ; G 489 -U 552 ; WX 762 ; N uni0228 ; G 490 -U 553 ; WX 636 ; N uni0229 ; G 491 -U 554 ; WX 871 ; N uni022A ; G 492 -U 555 ; WX 667 ; N uni022B ; G 493 -U 556 ; WX 871 ; N uni022C ; G 494 -U 557 ; WX 667 ; N uni022D ; G 495 -U 558 ; WX 871 ; N uni022E ; G 496 -U 559 ; WX 667 ; N uni022F ; G 497 -U 560 ; WX 871 ; N uni0230 ; G 498 -U 561 ; WX 667 ; N uni0231 ; G 499 -U 562 ; WX 714 ; N uni0232 ; G 500 -U 563 ; WX 581 ; N uni0233 ; G 501 -U 564 ; WX 573 ; N uni0234 ; G 502 -U 565 ; WX 922 ; N uni0235 ; G 503 -U 566 ; WX 564 ; N uni0236 ; G 504 -U 567 ; WX 362 ; N dotlessj ; G 505 -U 568 ; WX 1031 ; N uni0238 ; G 506 -U 569 ; WX 1031 ; N uni0239 ; G 507 -U 570 ; WX 776 ; N uni023A ; G 508 -U 571 ; WX 796 ; N uni023B ; G 509 -U 572 ; WX 609 ; N uni023C ; G 510 -U 573 ; WX 703 ; N uni023D ; G 511 -U 574 ; WX 744 ; N uni023E ; G 512 -U 575 ; WX 563 ; N uni023F ; G 513 -U 576 ; WX 568 ; N uni0240 ; G 514 -U 577 ; WX 660 ; N uni0241 ; G 515 -U 578 ; WX 547 ; N uni0242 ; G 516 -U 579 ; WX 845 ; N uni0243 ; G 517 -U 580 ; WX 872 ; N uni0244 ; G 518 -U 581 ; WX 776 ; N uni0245 ; G 519 -U 582 ; WX 762 ; N uni0246 ; G 520 -U 583 ; WX 636 ; N uni0247 ; G 521 -U 584 ; WX 473 ; N uni0248 ; G 522 -U 585 ; WX 387 ; N uni0249 ; G 523 -U 586 ; WX 848 ; N uni024A ; G 524 -U 587 ; WX 699 ; N uni024B ; G 525 -U 588 ; WX 831 ; N uni024C ; G 526 -U 589 ; WX 527 ; N uni024D ; G 527 -U 590 ; WX 714 ; N uni024E ; G 528 -U 591 ; WX 581 ; N uni024F ; G 529 -U 592 ; WX 648 ; N uni0250 ; G 530 -U 593 ; WX 770 ; N uni0251 ; G 531 -U 594 ; WX 770 ; N uni0252 ; G 532 -U 595 ; WX 699 ; N uni0253 ; G 533 -U 596 ; WX 609 ; N uni0254 ; G 534 -U 597 ; WX 609 ; N uni0255 ; G 535 -U 598 ; WX 699 ; N uni0256 ; G 536 -U 599 ; WX 730 ; N uni0257 ; G 537 -U 600 ; WX 636 ; N uni0258 ; G 538 -U 601 ; WX 636 ; N uni0259 ; G 539 -U 602 ; WX 907 ; N uni025A ; G 540 -U 603 ; WX 608 ; N uni025B ; G 541 -U 604 ; WX 562 ; N uni025C ; G 542 -U 605 ; WX 907 ; N uni025D ; G 543 -U 606 ; WX 714 ; N uni025E ; G 544 -U 607 ; WX 387 ; N uni025F ; G 545 -U 608 ; WX 699 ; N uni0260 ; G 546 -U 609 ; WX 699 ; N uni0261 ; G 547 -U 610 ; WX 638 ; N uni0262 ; G 548 -U 611 ; WX 601 ; N uni0263 ; G 549 -U 612 ; WX 627 ; N uni0264 ; G 550 -U 613 ; WX 727 ; N uni0265 ; G 551 -U 614 ; WX 727 ; N uni0266 ; G 552 -U 615 ; WX 727 ; N uni0267 ; G 553 -U 616 ; WX 380 ; N uni0268 ; G 554 -U 617 ; WX 380 ; N uni0269 ; G 555 -U 618 ; WX 380 ; N uni026A ; G 556 -U 619 ; WX 409 ; N uni026B ; G 557 -U 620 ; WX 514 ; N uni026C ; G 558 -U 621 ; WX 380 ; N uni026D ; G 559 -U 622 ; WX 795 ; N uni026E ; G 560 -U 623 ; WX 1058 ; N uni026F ; G 561 -U 624 ; WX 1058 ; N uni0270 ; G 562 -U 625 ; WX 1058 ; N uni0271 ; G 563 -U 626 ; WX 727 ; N uni0272 ; G 564 -U 627 ; WX 727 ; N uni0273 ; G 565 -U 628 ; WX 712 ; N uni0274 ; G 566 -U 629 ; WX 667 ; N uni0275 ; G 567 -U 630 ; WX 1061 ; N uni0276 ; G 568 -U 631 ; WX 944 ; N uni0277 ; G 569 -U 632 ; WX 797 ; N uni0278 ; G 570 -U 633 ; WX 571 ; N uni0279 ; G 571 -U 634 ; WX 571 ; N uni027A ; G 572 -U 635 ; WX 571 ; N uni027B ; G 573 -U 636 ; WX 527 ; N uni027C ; G 574 -U 637 ; WX 527 ; N uni027D ; G 575 -U 638 ; WX 452 ; N uni027E ; G 576 -U 639 ; WX 487 ; N uni027F ; G 577 -U 640 ; WX 694 ; N uni0280 ; G 578 -U 641 ; WX 694 ; N uni0281 ; G 579 -U 642 ; WX 563 ; N uni0282 ; G 580 -U 643 ; WX 331 ; N uni0283 ; G 581 -U 644 ; WX 430 ; N uni0284 ; G 582 -U 645 ; WX 540 ; N uni0285 ; G 583 -U 646 ; WX 331 ; N uni0286 ; G 584 -U 647 ; WX 492 ; N uni0287 ; G 585 -U 648 ; WX 462 ; N uni0288 ; G 586 -U 649 ; WX 727 ; N uni0289 ; G 587 -U 650 ; WX 679 ; N uni028A ; G 588 -U 651 ; WX 694 ; N uni028B ; G 589 -U 652 ; WX 581 ; N uni028C ; G 590 -U 653 ; WX 861 ; N uni028D ; G 591 -U 654 ; WX 635 ; N uni028E ; G 592 -U 655 ; WX 727 ; N uni028F ; G 593 -U 656 ; WX 568 ; N uni0290 ; G 594 -U 657 ; WX 568 ; N uni0291 ; G 595 -U 658 ; WX 568 ; N uni0292 ; G 596 -U 659 ; WX 568 ; N uni0293 ; G 597 -U 660 ; WX 551 ; N uni0294 ; G 598 -U 661 ; WX 551 ; N uni0295 ; G 599 -U 662 ; WX 551 ; N uni0296 ; G 600 -U 663 ; WX 545 ; N uni0297 ; G 601 -U 664 ; WX 871 ; N uni0298 ; G 602 -U 665 ; WX 695 ; N uni0299 ; G 603 -U 666 ; WX 714 ; N uni029A ; G 604 -U 667 ; WX 689 ; N uni029B ; G 605 -U 668 ; WX 732 ; N uni029C ; G 606 -U 669 ; WX 384 ; N uni029D ; G 607 -U 670 ; WX 740 ; N uni029E ; G 608 -U 671 ; WX 617 ; N uni029F ; G 609 -U 672 ; WX 699 ; N uni02A0 ; G 610 -U 673 ; WX 551 ; N uni02A1 ; G 611 -U 674 ; WX 551 ; N uni02A2 ; G 612 -U 675 ; WX 1117 ; N uni02A3 ; G 613 -U 676 ; WX 1179 ; N uni02A4 ; G 614 -U 677 ; WX 1117 ; N uni02A5 ; G 615 -U 678 ; WX 938 ; N uni02A6 ; G 616 -U 679 ; WX 715 ; N uni02A7 ; G 617 -U 680 ; WX 946 ; N uni02A8 ; G 618 -U 681 ; WX 1039 ; N uni02A9 ; G 619 -U 682 ; WX 870 ; N uni02AA ; G 620 -U 683 ; WX 795 ; N uni02AB ; G 621 -U 684 ; WX 662 ; N uni02AC ; G 622 -U 685 ; WX 443 ; N uni02AD ; G 623 -U 686 ; WX 613 ; N uni02AE ; G 624 -U 687 ; WX 717 ; N uni02AF ; G 625 -U 688 ; WX 521 ; N uni02B0 ; G 626 -U 689 ; WX 519 ; N uni02B1 ; G 627 -U 690 ; WX 313 ; N uni02B2 ; G 628 -U 691 ; WX 414 ; N uni02B3 ; G 629 -U 692 ; WX 414 ; N uni02B4 ; G 630 -U 693 ; WX 480 ; N uni02B5 ; G 631 -U 694 ; WX 527 ; N uni02B6 ; G 632 -U 695 ; WX 542 ; N uni02B7 ; G 633 -U 696 ; WX 366 ; N uni02B8 ; G 634 -U 697 ; WX 302 ; N uni02B9 ; G 635 -U 698 ; WX 521 ; N uni02BA ; G 636 -U 699 ; WX 348 ; N uni02BB ; G 637 -U 700 ; WX 348 ; N uni02BC ; G 638 -U 701 ; WX 348 ; N uni02BD ; G 639 -U 702 ; WX 366 ; N uni02BE ; G 640 -U 703 ; WX 366 ; N uni02BF ; G 641 -U 704 ; WX 313 ; N uni02C0 ; G 642 -U 705 ; WX 313 ; N uni02C1 ; G 643 -U 706 ; WX 500 ; N uni02C2 ; G 644 -U 707 ; WX 500 ; N uni02C3 ; G 645 -U 708 ; WX 500 ; N uni02C4 ; G 646 -U 709 ; WX 500 ; N uni02C5 ; G 647 -U 710 ; WX 500 ; N circumflex ; G 648 -U 711 ; WX 500 ; N caron ; G 649 -U 712 ; WX 282 ; N uni02C8 ; G 650 -U 713 ; WX 500 ; N uni02C9 ; G 651 -U 714 ; WX 500 ; N uni02CA ; G 652 -U 715 ; WX 500 ; N uni02CB ; G 653 -U 716 ; WX 282 ; N uni02CC ; G 654 -U 717 ; WX 500 ; N uni02CD ; G 655 -U 720 ; WX 369 ; N uni02D0 ; G 656 -U 721 ; WX 369 ; N uni02D1 ; G 657 -U 722 ; WX 366 ; N uni02D2 ; G 658 -U 723 ; WX 366 ; N uni02D3 ; G 659 -U 726 ; WX 392 ; N uni02D6 ; G 660 -U 727 ; WX 392 ; N uni02D7 ; G 661 -U 728 ; WX 500 ; N breve ; G 662 -U 729 ; WX 500 ; N dotaccent ; G 663 -U 730 ; WX 500 ; N ring ; G 664 -U 731 ; WX 500 ; N ogonek ; G 665 -U 732 ; WX 500 ; N tilde ; G 666 -U 733 ; WX 500 ; N hungarumlaut ; G 667 -U 734 ; WX 417 ; N uni02DE ; G 668 -U 736 ; WX 378 ; N uni02E0 ; G 669 -U 737 ; WX 292 ; N uni02E1 ; G 670 -U 738 ; WX 395 ; N uni02E2 ; G 671 -U 739 ; WX 375 ; N uni02E3 ; G 672 -U 740 ; WX 313 ; N uni02E4 ; G 673 -U 741 ; WX 500 ; N uni02E5 ; G 674 -U 742 ; WX 500 ; N uni02E6 ; G 675 -U 743 ; WX 500 ; N uni02E7 ; G 676 -U 744 ; WX 500 ; N uni02E8 ; G 677 -U 745 ; WX 500 ; N uni02E9 ; G 678 -U 748 ; WX 500 ; N uni02EC ; G 679 -U 750 ; WX 553 ; N uni02EE ; G 680 -U 751 ; WX 500 ; N uni02EF ; G 681 -U 752 ; WX 500 ; N uni02F0 ; G 682 -U 755 ; WX 500 ; N uni02F3 ; G 683 -U 759 ; WX 500 ; N uni02F7 ; G 684 -U 768 ; WX 0 ; N gravecomb ; G 685 -U 769 ; WX 0 ; N acutecomb ; G 686 -U 770 ; WX 0 ; N uni0302 ; G 687 -U 771 ; WX 0 ; N tildecomb ; G 688 -U 772 ; WX 0 ; N uni0304 ; G 689 -U 773 ; WX 0 ; N uni0305 ; G 690 -U 774 ; WX 0 ; N uni0306 ; G 691 -U 775 ; WX 0 ; N uni0307 ; G 692 -U 776 ; WX 0 ; N uni0308 ; G 693 -U 777 ; WX 0 ; N hookabovecomb ; G 694 -U 778 ; WX 0 ; N uni030A ; G 695 -U 779 ; WX 0 ; N uni030B ; G 696 -U 780 ; WX 0 ; N uni030C ; G 697 -U 781 ; WX 0 ; N uni030D ; G 698 -U 782 ; WX 0 ; N uni030E ; G 699 -U 783 ; WX 0 ; N uni030F ; G 700 -U 784 ; WX 0 ; N uni0310 ; G 701 -U 785 ; WX 0 ; N uni0311 ; G 702 -U 786 ; WX 0 ; N uni0312 ; G 703 -U 787 ; WX 0 ; N uni0313 ; G 704 -U 788 ; WX 0 ; N uni0314 ; G 705 -U 789 ; WX 0 ; N uni0315 ; G 706 -U 790 ; WX 0 ; N uni0316 ; G 707 -U 791 ; WX 0 ; N uni0317 ; G 708 -U 792 ; WX 0 ; N uni0318 ; G 709 -U 793 ; WX 0 ; N uni0319 ; G 710 -U 794 ; WX 0 ; N uni031A ; G 711 -U 795 ; WX 0 ; N uni031B ; G 712 -U 796 ; WX 0 ; N uni031C ; G 713 -U 797 ; WX 0 ; N uni031D ; G 714 -U 798 ; WX 0 ; N uni031E ; G 715 -U 799 ; WX 0 ; N uni031F ; G 716 -U 800 ; WX 0 ; N uni0320 ; G 717 -U 801 ; WX 0 ; N uni0321 ; G 718 -U 802 ; WX 0 ; N uni0322 ; G 719 -U 803 ; WX 0 ; N dotbelowcomb ; G 720 -U 804 ; WX 0 ; N uni0324 ; G 721 -U 805 ; WX 0 ; N uni0325 ; G 722 -U 806 ; WX 0 ; N uni0326 ; G 723 -U 807 ; WX 0 ; N uni0327 ; G 724 -U 808 ; WX 0 ; N uni0328 ; G 725 -U 809 ; WX 0 ; N uni0329 ; G 726 -U 810 ; WX 0 ; N uni032A ; G 727 -U 811 ; WX 0 ; N uni032B ; G 728 -U 812 ; WX 0 ; N uni032C ; G 729 -U 813 ; WX 0 ; N uni032D ; G 730 -U 814 ; WX 0 ; N uni032E ; G 731 -U 815 ; WX 0 ; N uni032F ; G 732 -U 816 ; WX 0 ; N uni0330 ; G 733 -U 817 ; WX 0 ; N uni0331 ; G 734 -U 818 ; WX 0 ; N uni0332 ; G 735 -U 819 ; WX 0 ; N uni0333 ; G 736 -U 820 ; WX 0 ; N uni0334 ; G 737 -U 821 ; WX 0 ; N uni0335 ; G 738 -U 822 ; WX 0 ; N uni0336 ; G 739 -U 823 ; WX 0 ; N uni0337 ; G 740 -U 824 ; WX 0 ; N uni0338 ; G 741 -U 825 ; WX 0 ; N uni0339 ; G 742 -U 826 ; WX 0 ; N uni033A ; G 743 -U 827 ; WX 0 ; N uni033B ; G 744 -U 828 ; WX 0 ; N uni033C ; G 745 -U 829 ; WX 0 ; N uni033D ; G 746 -U 830 ; WX 0 ; N uni033E ; G 747 -U 831 ; WX 0 ; N uni033F ; G 748 -U 835 ; WX 0 ; N uni0343 ; G 749 -U 847 ; WX 0 ; N uni034F ; G 750 -U 856 ; WX 0 ; N uni0358 ; G 751 -U 864 ; WX 0 ; N uni0360 ; G 752 -U 865 ; WX 0 ; N uni0361 ; G 753 -U 880 ; WX 779 ; N uni0370 ; G 754 -U 881 ; WX 576 ; N uni0371 ; G 755 -U 882 ; WX 803 ; N uni0372 ; G 756 -U 883 ; WX 777 ; N uni0373 ; G 757 -U 884 ; WX 302 ; N uni0374 ; G 758 -U 885 ; WX 302 ; N uni0375 ; G 759 -U 886 ; WX 963 ; N uni0376 ; G 760 -U 887 ; WX 737 ; N uni0377 ; G 761 -U 890 ; WX 500 ; N uni037A ; G 762 -U 891 ; WX 609 ; N uni037B ; G 763 -U 892 ; WX 609 ; N uni037C ; G 764 -U 893 ; WX 609 ; N uni037D ; G 765 -U 894 ; WX 369 ; N uni037E ; G 766 -U 895 ; WX 473 ; N uni037F ; G 767 -U 900 ; WX 500 ; N tonos ; G 768 -U 901 ; WX 500 ; N dieresistonos ; G 769 -U 902 ; WX 776 ; N Alphatonos ; G 770 -U 903 ; WX 348 ; N anoteleia ; G 771 -U 904 ; WX 947 ; N Epsilontonos ; G 772 -U 905 ; WX 1136 ; N Etatonos ; G 773 -U 906 ; WX 662 ; N Iotatonos ; G 774 -U 908 ; WX 887 ; N Omicrontonos ; G 775 -U 910 ; WX 953 ; N Upsilontonos ; G 776 -U 911 ; WX 911 ; N Omegatonos ; G 777 -U 912 ; WX 484 ; N iotadieresistonos ; G 778 -U 913 ; WX 776 ; N Alpha ; G 779 -U 914 ; WX 845 ; N Beta ; G 780 -U 915 ; WX 710 ; N Gamma ; G 781 -U 916 ; WX 776 ; N uni0394 ; G 782 -U 917 ; WX 762 ; N Epsilon ; G 783 -U 918 ; WX 730 ; N Zeta ; G 784 -U 919 ; WX 945 ; N Eta ; G 785 -U 920 ; WX 871 ; N Theta ; G 786 -U 921 ; WX 468 ; N Iota ; G 787 -U 922 ; WX 869 ; N Kappa ; G 788 -U 923 ; WX 776 ; N Lambda ; G 789 -U 924 ; WX 1107 ; N Mu ; G 790 -U 925 ; WX 914 ; N Nu ; G 791 -U 926 ; WX 704 ; N Xi ; G 792 -U 927 ; WX 871 ; N Omicron ; G 793 -U 928 ; WX 945 ; N Pi ; G 794 -U 929 ; WX 752 ; N Rho ; G 795 -U 931 ; WX 707 ; N Sigma ; G 796 -U 932 ; WX 744 ; N Tau ; G 797 -U 933 ; WX 714 ; N Upsilon ; G 798 -U 934 ; WX 871 ; N Phi ; G 799 -U 935 ; WX 776 ; N Chi ; G 800 -U 936 ; WX 913 ; N Psi ; G 801 -U 937 ; WX 890 ; N Omega ; G 802 -U 938 ; WX 468 ; N Iotadieresis ; G 803 -U 939 ; WX 714 ; N Upsilondieresis ; G 804 -U 940 ; WX 770 ; N alphatonos ; G 805 -U 941 ; WX 608 ; N epsilontonos ; G 806 -U 942 ; WX 727 ; N etatonos ; G 807 -U 943 ; WX 484 ; N iotatonos ; G 808 -U 944 ; WX 694 ; N upsilondieresistonos ; G 809 -U 945 ; WX 770 ; N alpha ; G 810 -U 946 ; WX 664 ; N beta ; G 811 -U 947 ; WX 660 ; N gamma ; G 812 -U 948 ; WX 667 ; N delta ; G 813 -U 949 ; WX 608 ; N epsilon ; G 814 -U 950 ; WX 592 ; N zeta ; G 815 -U 951 ; WX 727 ; N eta ; G 816 -U 952 ; WX 667 ; N theta ; G 817 -U 953 ; WX 484 ; N iota ; G 818 -U 954 ; WX 750 ; N kappa ; G 819 -U 955 ; WX 701 ; N lambda ; G 820 -U 956 ; WX 732 ; N uni03BC ; G 821 -U 957 ; WX 694 ; N nu ; G 822 -U 958 ; WX 592 ; N xi ; G 823 -U 959 ; WX 667 ; N omicron ; G 824 -U 960 ; WX 732 ; N pi ; G 825 -U 961 ; WX 665 ; N rho ; G 826 -U 962 ; WX 609 ; N sigma1 ; G 827 -U 963 ; WX 737 ; N sigma ; G 828 -U 964 ; WX 673 ; N tau ; G 829 -U 965 ; WX 694 ; N upsilon ; G 830 -U 966 ; WX 905 ; N phi ; G 831 -U 967 ; WX 658 ; N chi ; G 832 -U 968 ; WX 941 ; N psi ; G 833 -U 969 ; WX 952 ; N omega ; G 834 -U 970 ; WX 484 ; N iotadieresis ; G 835 -U 971 ; WX 694 ; N upsilondieresis ; G 836 -U 972 ; WX 667 ; N omicrontonos ; G 837 -U 973 ; WX 694 ; N upsilontonos ; G 838 -U 974 ; WX 952 ; N omegatonos ; G 839 -U 975 ; WX 869 ; N uni03CF ; G 840 -U 976 ; WX 667 ; N uni03D0 ; G 841 -U 977 ; WX 849 ; N theta1 ; G 842 -U 978 ; WX 764 ; N Upsilon1 ; G 843 -U 979 ; WX 969 ; N uni03D3 ; G 844 -U 980 ; WX 764 ; N uni03D4 ; G 845 -U 981 ; WX 941 ; N phi1 ; G 846 -U 982 ; WX 952 ; N omega1 ; G 847 -U 983 ; WX 655 ; N uni03D7 ; G 848 -U 984 ; WX 871 ; N uni03D8 ; G 849 -U 985 ; WX 667 ; N uni03D9 ; G 850 -U 986 ; WX 796 ; N uni03DA ; G 851 -U 987 ; WX 609 ; N uni03DB ; G 852 -U 988 ; WX 710 ; N uni03DC ; G 853 -U 989 ; WX 527 ; N uni03DD ; G 854 -U 990 ; WX 590 ; N uni03DE ; G 855 -U 991 ; WX 660 ; N uni03DF ; G 856 -U 992 ; WX 796 ; N uni03E0 ; G 857 -U 993 ; WX 667 ; N uni03E1 ; G 858 -U 1008 ; WX 655 ; N uni03F0 ; G 859 -U 1009 ; WX 665 ; N uni03F1 ; G 860 -U 1010 ; WX 609 ; N uni03F2 ; G 861 -U 1011 ; WX 362 ; N uni03F3 ; G 862 -U 1012 ; WX 871 ; N uni03F4 ; G 863 -U 1013 ; WX 609 ; N uni03F5 ; G 864 -U 1014 ; WX 609 ; N uni03F6 ; G 865 -U 1015 ; WX 757 ; N uni03F7 ; G 866 -U 1016 ; WX 699 ; N uni03F8 ; G 867 -U 1017 ; WX 796 ; N uni03F9 ; G 868 -U 1018 ; WX 1107 ; N uni03FA ; G 869 -U 1019 ; WX 860 ; N uni03FB ; G 870 -U 1020 ; WX 692 ; N uni03FC ; G 871 -U 1021 ; WX 796 ; N uni03FD ; G 872 -U 1022 ; WX 796 ; N uni03FE ; G 873 -U 1023 ; WX 796 ; N uni03FF ; G 874 -U 1024 ; WX 762 ; N uni0400 ; G 875 -U 1025 ; WX 762 ; N uni0401 ; G 876 -U 1026 ; WX 901 ; N uni0402 ; G 877 -U 1027 ; WX 690 ; N uni0403 ; G 878 -U 1028 ; WX 795 ; N uni0404 ; G 879 -U 1029 ; WX 722 ; N uni0405 ; G 880 -U 1030 ; WX 468 ; N uni0406 ; G 881 -U 1031 ; WX 468 ; N uni0407 ; G 882 -U 1032 ; WX 473 ; N uni0408 ; G 883 -U 1033 ; WX 1202 ; N uni0409 ; G 884 -U 1034 ; WX 1262 ; N uni040A ; G 885 -U 1035 ; WX 963 ; N uni040B ; G 886 -U 1036 ; WX 910 ; N uni040C ; G 887 -U 1037 ; WX 945 ; N uni040D ; G 888 -U 1038 ; WX 812 ; N uni040E ; G 889 -U 1039 ; WX 945 ; N uni040F ; G 890 -U 1040 ; WX 814 ; N uni0410 ; G 891 -U 1041 ; WX 854 ; N uni0411 ; G 892 -U 1042 ; WX 845 ; N uni0412 ; G 893 -U 1043 ; WX 690 ; N uni0413 ; G 894 -U 1044 ; WX 889 ; N uni0414 ; G 895 -U 1045 ; WX 762 ; N uni0415 ; G 896 -U 1046 ; WX 1312 ; N uni0416 ; G 897 -U 1047 ; WX 721 ; N uni0417 ; G 898 -U 1048 ; WX 945 ; N uni0418 ; G 899 -U 1049 ; WX 945 ; N uni0419 ; G 900 -U 1050 ; WX 910 ; N uni041A ; G 901 -U 1051 ; WX 884 ; N uni041B ; G 902 -U 1052 ; WX 1107 ; N uni041C ; G 903 -U 1053 ; WX 945 ; N uni041D ; G 904 -U 1054 ; WX 871 ; N uni041E ; G 905 -U 1055 ; WX 945 ; N uni041F ; G 906 -U 1056 ; WX 752 ; N uni0420 ; G 907 -U 1057 ; WX 796 ; N uni0421 ; G 908 -U 1058 ; WX 744 ; N uni0422 ; G 909 -U 1059 ; WX 812 ; N uni0423 ; G 910 -U 1060 ; WX 949 ; N uni0424 ; G 911 -U 1061 ; WX 776 ; N uni0425 ; G 912 -U 1062 ; WX 966 ; N uni0426 ; G 913 -U 1063 ; WX 913 ; N uni0427 ; G 914 -U 1064 ; WX 1268 ; N uni0428 ; G 915 -U 1065 ; WX 1293 ; N uni0429 ; G 916 -U 1066 ; WX 957 ; N uni042A ; G 917 -U 1067 ; WX 1202 ; N uni042B ; G 918 -U 1068 ; WX 825 ; N uni042C ; G 919 -U 1069 ; WX 795 ; N uni042D ; G 920 -U 1070 ; WX 1287 ; N uni042E ; G 921 -U 1071 ; WX 882 ; N uni042F ; G 922 -U 1072 ; WX 648 ; N uni0430 ; G 923 -U 1073 ; WX 722 ; N uni0431 ; G 924 -U 1074 ; WX 657 ; N uni0432 ; G 925 -U 1075 ; WX 563 ; N uni0433 ; G 926 -U 1076 ; WX 695 ; N uni0434 ; G 927 -U 1077 ; WX 636 ; N uni0435 ; G 928 -U 1078 ; WX 1306 ; N uni0436 ; G 929 -U 1079 ; WX 638 ; N uni0437 ; G 930 -U 1080 ; WX 727 ; N uni0438 ; G 931 -U 1081 ; WX 727 ; N uni0439 ; G 932 -U 1082 ; WX 677 ; N uni043A ; G 933 -U 1083 ; WX 732 ; N uni043B ; G 934 -U 1084 ; WX 951 ; N uni043C ; G 935 -U 1085 ; WX 729 ; N uni043D ; G 936 -U 1086 ; WX 667 ; N uni043E ; G 937 -U 1087 ; WX 727 ; N uni043F ; G 938 -U 1088 ; WX 699 ; N uni0440 ; G 939 -U 1089 ; WX 609 ; N uni0441 ; G 940 -U 1090 ; WX 1058 ; N uni0442 ; G 941 -U 1091 ; WX 598 ; N uni0443 ; G 942 -U 1092 ; WX 902 ; N uni0444 ; G 943 -U 1093 ; WX 596 ; N uni0445 ; G 944 -U 1094 ; WX 803 ; N uni0446 ; G 945 -U 1095 ; WX 715 ; N uni0447 ; G 946 -U 1096 ; WX 1058 ; N uni0448 ; G 947 -U 1097 ; WX 1134 ; N uni0449 ; G 948 -U 1098 ; WX 727 ; N uni044A ; G 949 -U 1099 ; WX 1018 ; N uni044B ; G 950 -U 1100 ; WX 660 ; N uni044C ; G 951 -U 1101 ; WX 645 ; N uni044D ; G 952 -U 1102 ; WX 1001 ; N uni044E ; G 953 -U 1103 ; WX 796 ; N uni044F ; G 954 -U 1104 ; WX 636 ; N uni0450 ; G 955 -U 1105 ; WX 636 ; N uni0451 ; G 956 -U 1106 ; WX 719 ; N uni0452 ; G 957 -U 1107 ; WX 563 ; N uni0453 ; G 958 -U 1108 ; WX 609 ; N uni0454 ; G 959 -U 1109 ; WX 563 ; N uni0455 ; G 960 -U 1110 ; WX 380 ; N uni0456 ; G 961 -U 1111 ; WX 380 ; N uni0457 ; G 962 -U 1112 ; WX 362 ; N uni0458 ; G 963 -U 1113 ; WX 1014 ; N uni0459 ; G 964 -U 1114 ; WX 1011 ; N uni045A ; G 965 -U 1115 ; WX 727 ; N uni045B ; G 966 -U 1116 ; WX 677 ; N uni045C ; G 967 -U 1117 ; WX 727 ; N uni045D ; G 968 -U 1118 ; WX 598 ; N uni045E ; G 969 -U 1119 ; WX 727 ; N uni045F ; G 970 -U 1122 ; WX 880 ; N uni0462 ; G 971 -U 1123 ; WX 1050 ; N uni0463 ; G 972 -U 1124 ; WX 1195 ; N uni0464 ; G 973 -U 1125 ; WX 963 ; N uni0465 ; G 974 -U 1130 ; WX 1312 ; N uni046A ; G 975 -U 1131 ; WX 1010 ; N uni046B ; G 976 -U 1132 ; WX 1630 ; N uni046C ; G 977 -U 1133 ; WX 1247 ; N uni046D ; G 978 -U 1136 ; WX 1096 ; N uni0470 ; G 979 -U 1137 ; WX 1105 ; N uni0471 ; G 980 -U 1138 ; WX 871 ; N uni0472 ; G 981 -U 1139 ; WX 652 ; N uni0473 ; G 982 -U 1140 ; WX 916 ; N uni0474 ; G 983 -U 1141 ; WX 749 ; N uni0475 ; G 984 -U 1142 ; WX 916 ; N uni0476 ; G 985 -U 1143 ; WX 749 ; N uni0477 ; G 986 -U 1164 ; WX 846 ; N uni048C ; G 987 -U 1165 ; WX 673 ; N uni048D ; G 988 -U 1168 ; WX 700 ; N uni0490 ; G 989 -U 1169 ; WX 618 ; N uni0491 ; G 990 -U 1170 ; WX 690 ; N uni0492 ; G 991 -U 1171 ; WX 563 ; N uni0493 ; G 992 -U 1172 ; WX 854 ; N uni0494 ; G 993 -U 1173 ; WX 705 ; N uni0495 ; G 994 -U 1174 ; WX 1312 ; N uni0496 ; G 995 -U 1175 ; WX 1306 ; N uni0497 ; G 996 -U 1176 ; WX 721 ; N uni0498 ; G 997 -U 1177 ; WX 638 ; N uni0499 ; G 998 -U 1178 ; WX 902 ; N uni049A ; G 999 -U 1179 ; WX 703 ; N uni049B ; G 1000 -U 1182 ; WX 910 ; N uni049E ; G 1001 -U 1183 ; WX 677 ; N uni049F ; G 1002 -U 1184 ; WX 1041 ; N uni04A0 ; G 1003 -U 1185 ; WX 760 ; N uni04A1 ; G 1004 -U 1186 ; WX 952 ; N uni04A2 ; G 1005 -U 1187 ; WX 805 ; N uni04A3 ; G 1006 -U 1188 ; WX 1167 ; N uni04A4 ; G 1007 -U 1189 ; WX 955 ; N uni04A5 ; G 1008 -U 1190 ; WX 1324 ; N uni04A6 ; G 1009 -U 1191 ; WX 1013 ; N uni04A7 ; G 1010 -U 1194 ; WX 796 ; N uni04AA ; G 1011 -U 1195 ; WX 609 ; N uni04AB ; G 1012 -U 1196 ; WX 744 ; N uni04AC ; G 1013 -U 1197 ; WX 1142 ; N uni04AD ; G 1014 -U 1198 ; WX 714 ; N uni04AE ; G 1015 -U 1199 ; WX 572 ; N uni04AF ; G 1016 -U 1200 ; WX 713 ; N uni04B0 ; G 1017 -U 1201 ; WX 572 ; N uni04B1 ; G 1018 -U 1202 ; WX 789 ; N uni04B2 ; G 1019 -U 1203 ; WX 596 ; N uni04B3 ; G 1020 -U 1204 ; WX 1010 ; N uni04B4 ; G 1021 -U 1205 ; WX 833 ; N uni04B5 ; G 1022 -U 1206 ; WX 913 ; N uni04B6 ; G 1023 -U 1207 ; WX 792 ; N uni04B7 ; G 1024 -U 1210 ; WX 910 ; N uni04BA ; G 1025 -U 1211 ; WX 727 ; N uni04BB ; G 1026 -U 1216 ; WX 468 ; N uni04C0 ; G 1027 -U 1217 ; WX 1312 ; N uni04C1 ; G 1028 -U 1218 ; WX 1306 ; N uni04C2 ; G 1029 -U 1219 ; WX 869 ; N uni04C3 ; G 1030 -U 1220 ; WX 693 ; N uni04C4 ; G 1031 -U 1223 ; WX 945 ; N uni04C7 ; G 1032 -U 1224 ; WX 732 ; N uni04C8 ; G 1033 -U 1227 ; WX 984 ; N uni04CB ; G 1034 -U 1228 ; WX 732 ; N uni04CC ; G 1035 -U 1231 ; WX 380 ; N uni04CF ; G 1036 -U 1232 ; WX 814 ; N uni04D0 ; G 1037 -U 1233 ; WX 648 ; N uni04D1 ; G 1038 -U 1234 ; WX 814 ; N uni04D2 ; G 1039 -U 1235 ; WX 648 ; N uni04D3 ; G 1040 -U 1236 ; WX 1034 ; N uni04D4 ; G 1041 -U 1237 ; WX 975 ; N uni04D5 ; G 1042 -U 1238 ; WX 762 ; N uni04D6 ; G 1043 -U 1239 ; WX 636 ; N uni04D7 ; G 1044 -U 1240 ; WX 871 ; N uni04D8 ; G 1045 -U 1241 ; WX 636 ; N uni04D9 ; G 1046 -U 1242 ; WX 871 ; N uni04DA ; G 1047 -U 1243 ; WX 636 ; N uni04DB ; G 1048 -U 1244 ; WX 1312 ; N uni04DC ; G 1049 -U 1245 ; WX 1306 ; N uni04DD ; G 1050 -U 1246 ; WX 721 ; N uni04DE ; G 1051 -U 1247 ; WX 638 ; N uni04DF ; G 1052 -U 1248 ; WX 657 ; N uni04E0 ; G 1053 -U 1249 ; WX 568 ; N uni04E1 ; G 1054 -U 1250 ; WX 945 ; N uni04E2 ; G 1055 -U 1251 ; WX 727 ; N uni04E3 ; G 1056 -U 1252 ; WX 945 ; N uni04E4 ; G 1057 -U 1253 ; WX 727 ; N uni04E5 ; G 1058 -U 1254 ; WX 871 ; N uni04E6 ; G 1059 -U 1255 ; WX 667 ; N uni04E7 ; G 1060 -U 1256 ; WX 871 ; N uni04E8 ; G 1061 -U 1257 ; WX 667 ; N uni04E9 ; G 1062 -U 1258 ; WX 871 ; N uni04EA ; G 1063 -U 1259 ; WX 667 ; N uni04EB ; G 1064 -U 1260 ; WX 795 ; N uni04EC ; G 1065 -U 1261 ; WX 645 ; N uni04ED ; G 1066 -U 1262 ; WX 812 ; N uni04EE ; G 1067 -U 1263 ; WX 598 ; N uni04EF ; G 1068 -U 1264 ; WX 812 ; N uni04F0 ; G 1069 -U 1265 ; WX 598 ; N uni04F1 ; G 1070 -U 1266 ; WX 812 ; N uni04F2 ; G 1071 -U 1267 ; WX 598 ; N uni04F3 ; G 1072 -U 1268 ; WX 913 ; N uni04F4 ; G 1073 -U 1269 ; WX 715 ; N uni04F5 ; G 1074 -U 1270 ; WX 690 ; N uni04F6 ; G 1075 -U 1271 ; WX 563 ; N uni04F7 ; G 1076 -U 1272 ; WX 1202 ; N uni04F8 ; G 1077 -U 1273 ; WX 1018 ; N uni04F9 ; G 1078 -U 1296 ; WX 721 ; N uni0510 ; G 1079 -U 1297 ; WX 638 ; N uni0511 ; G 1080 -U 1298 ; WX 884 ; N uni0512 ; G 1081 -U 1299 ; WX 732 ; N uni0513 ; G 1082 -U 1300 ; WX 1248 ; N uni0514 ; G 1083 -U 1301 ; WX 1005 ; N uni0515 ; G 1084 -U 1306 ; WX 820 ; N uni051A ; G 1085 -U 1307 ; WX 640 ; N uni051B ; G 1086 -U 1308 ; WX 1028 ; N uni051C ; G 1087 -U 1309 ; WX 856 ; N uni051D ; G 1088 -U 1329 ; WX 942 ; N uni0531 ; G 1089 -U 1330 ; WX 832 ; N uni0532 ; G 1090 -U 1331 ; WX 894 ; N uni0533 ; G 1091 -U 1332 ; WX 909 ; N uni0534 ; G 1092 -U 1333 ; WX 822 ; N uni0535 ; G 1093 -U 1334 ; WX 821 ; N uni0536 ; G 1094 -U 1335 ; WX 747 ; N uni0537 ; G 1095 -U 1336 ; WX 832 ; N uni0538 ; G 1096 -U 1337 ; WX 1125 ; N uni0539 ; G 1097 -U 1338 ; WX 894 ; N uni053A ; G 1098 -U 1339 ; WX 803 ; N uni053B ; G 1099 -U 1340 ; WX 722 ; N uni053C ; G 1100 -U 1341 ; WX 1188 ; N uni053D ; G 1101 -U 1342 ; WX 887 ; N uni053E ; G 1102 -U 1343 ; WX 842 ; N uni053F ; G 1103 -U 1344 ; WX 737 ; N uni0540 ; G 1104 -U 1345 ; WX 863 ; N uni0541 ; G 1105 -U 1346 ; WX 918 ; N uni0542 ; G 1106 -U 1347 ; WX 851 ; N uni0543 ; G 1107 -U 1348 ; WX 977 ; N uni0544 ; G 1108 -U 1349 ; WX 833 ; N uni0545 ; G 1109 -U 1350 ; WX 914 ; N uni0546 ; G 1110 -U 1351 ; WX 843 ; N uni0547 ; G 1111 -U 1352 ; WX 871 ; N uni0548 ; G 1112 -U 1353 ; WX 818 ; N uni0549 ; G 1113 -U 1354 ; WX 1034 ; N uni054A ; G 1114 -U 1355 ; WX 846 ; N uni054B ; G 1115 -U 1356 ; WX 964 ; N uni054C ; G 1116 -U 1357 ; WX 871 ; N uni054D ; G 1117 -U 1358 ; WX 914 ; N uni054E ; G 1118 -U 1359 ; WX 808 ; N uni054F ; G 1119 -U 1360 ; WX 808 ; N uni0550 ; G 1120 -U 1361 ; WX 836 ; N uni0551 ; G 1121 -U 1362 ; WX 710 ; N uni0552 ; G 1122 -U 1363 ; WX 955 ; N uni0553 ; G 1123 -U 1364 ; WX 891 ; N uni0554 ; G 1124 -U 1365 ; WX 871 ; N uni0555 ; G 1125 -U 1366 ; WX 963 ; N uni0556 ; G 1126 -U 1369 ; WX 307 ; N uni0559 ; G 1127 -U 1370 ; WX 264 ; N uni055A ; G 1128 -U 1371 ; WX 293 ; N uni055B ; G 1129 -U 1372 ; WX 391 ; N uni055C ; G 1130 -U 1373 ; WX 323 ; N uni055D ; G 1131 -U 1374 ; WX 439 ; N uni055E ; G 1132 -U 1375 ; WX 500 ; N uni055F ; G 1133 -U 1377 ; WX 1055 ; N uni0561 ; G 1134 -U 1378 ; WX 695 ; N uni0562 ; G 1135 -U 1379 ; WX 776 ; N uni0563 ; G 1136 -U 1380 ; WX 801 ; N uni0564 ; G 1137 -U 1381 ; WX 729 ; N uni0565 ; G 1138 -U 1382 ; WX 742 ; N uni0566 ; G 1139 -U 1383 ; WX 599 ; N uni0567 ; G 1140 -U 1384 ; WX 733 ; N uni0568 ; G 1141 -U 1385 ; WX 909 ; N uni0569 ; G 1142 -U 1386 ; WX 768 ; N uni056A ; G 1143 -U 1387 ; WX 724 ; N uni056B ; G 1144 -U 1388 ; WX 398 ; N uni056C ; G 1145 -U 1389 ; WX 1087 ; N uni056D ; G 1146 -U 1390 ; WX 695 ; N uni056E ; G 1147 -U 1391 ; WX 719 ; N uni056F ; G 1148 -U 1392 ; WX 737 ; N uni0570 ; G 1149 -U 1393 ; WX 684 ; N uni0571 ; G 1150 -U 1394 ; WX 738 ; N uni0572 ; G 1151 -U 1395 ; WX 703 ; N uni0573 ; G 1152 -U 1396 ; WX 724 ; N uni0574 ; G 1153 -U 1397 ; WX 359 ; N uni0575 ; G 1154 -U 1398 ; WX 719 ; N uni0576 ; G 1155 -U 1399 ; WX 496 ; N uni0577 ; G 1156 -U 1400 ; WX 738 ; N uni0578 ; G 1157 -U 1401 ; WX 428 ; N uni0579 ; G 1158 -U 1402 ; WX 1059 ; N uni057A ; G 1159 -U 1403 ; WX 668 ; N uni057B ; G 1160 -U 1404 ; WX 744 ; N uni057C ; G 1161 -U 1405 ; WX 724 ; N uni057D ; G 1162 -U 1406 ; WX 724 ; N uni057E ; G 1163 -U 1407 ; WX 1040 ; N uni057F ; G 1164 -U 1408 ; WX 724 ; N uni0580 ; G 1165 -U 1409 ; WX 713 ; N uni0581 ; G 1166 -U 1410 ; WX 493 ; N uni0582 ; G 1167 -U 1411 ; WX 1040 ; N uni0583 ; G 1168 -U 1412 ; WX 734 ; N uni0584 ; G 1169 -U 1413 ; WX 693 ; N uni0585 ; G 1170 -U 1414 ; WX 956 ; N uni0586 ; G 1171 -U 1415 ; WX 833 ; N uni0587 ; G 1172 -U 1417 ; WX 340 ; N uni0589 ; G 1173 -U 1418 ; WX 388 ; N uni058A ; G 1174 -U 3647 ; WX 696 ; N uni0E3F ; G 1175 -U 4256 ; WX 765 ; N uni10A0 ; G 1176 -U 4257 ; WX 945 ; N uni10A1 ; G 1177 -U 4258 ; WX 876 ; N uni10A2 ; G 1178 -U 4259 ; WX 884 ; N uni10A3 ; G 1179 -U 4260 ; WX 791 ; N uni10A4 ; G 1180 -U 4261 ; WX 1087 ; N uni10A5 ; G 1181 -U 4262 ; WX 1024 ; N uni10A6 ; G 1182 -U 4263 ; WX 1223 ; N uni10A7 ; G 1183 -U 4264 ; WX 653 ; N uni10A8 ; G 1184 -U 4265 ; WX 828 ; N uni10A9 ; G 1185 -U 4266 ; WX 1061 ; N uni10AA ; G 1186 -U 4267 ; WX 1061 ; N uni10AB ; G 1187 -U 4268 ; WX 806 ; N uni10AC ; G 1188 -U 4269 ; WX 1145 ; N uni10AD ; G 1189 -U 4270 ; WX 979 ; N uni10AE ; G 1190 -U 4271 ; WX 912 ; N uni10AF ; G 1191 -U 4272 ; WX 1119 ; N uni10B0 ; G 1192 -U 4273 ; WX 802 ; N uni10B1 ; G 1193 -U 4274 ; WX 766 ; N uni10B2 ; G 1194 -U 4275 ; WX 1085 ; N uni10B3 ; G 1195 -U 4276 ; WX 986 ; N uni10B4 ; G 1196 -U 4277 ; WX 1076 ; N uni10B5 ; G 1197 -U 4278 ; WX 820 ; N uni10B6 ; G 1198 -U 4279 ; WX 843 ; N uni10B7 ; G 1199 -U 4280 ; WX 831 ; N uni10B8 ; G 1200 -U 4281 ; WX 843 ; N uni10B9 ; G 1201 -U 4282 ; WX 918 ; N uni10BA ; G 1202 -U 4283 ; WX 1086 ; N uni10BB ; G 1203 -U 4284 ; WX 779 ; N uni10BC ; G 1204 -U 4285 ; WX 832 ; N uni10BD ; G 1205 -U 4286 ; WX 822 ; N uni10BE ; G 1206 -U 4287 ; WX 1121 ; N uni10BF ; G 1207 -U 4288 ; WX 1132 ; N uni10C0 ; G 1208 -U 4289 ; WX 812 ; N uni10C1 ; G 1209 -U 4290 ; WX 902 ; N uni10C2 ; G 1210 -U 4291 ; WX 812 ; N uni10C3 ; G 1211 -U 4292 ; WX 890 ; N uni10C4 ; G 1212 -U 4293 ; WX 1073 ; N uni10C5 ; G 1213 -U 4304 ; WX 594 ; N uni10D0 ; G 1214 -U 4305 ; WX 625 ; N uni10D1 ; G 1215 -U 4306 ; WX 643 ; N uni10D2 ; G 1216 -U 4307 ; WX 887 ; N uni10D3 ; G 1217 -U 4308 ; WX 615 ; N uni10D4 ; G 1218 -U 4309 ; WX 611 ; N uni10D5 ; G 1219 -U 4310 ; WX 666 ; N uni10D6 ; G 1220 -U 4311 ; WX 915 ; N uni10D7 ; G 1221 -U 4312 ; WX 613 ; N uni10D8 ; G 1222 -U 4313 ; WX 600 ; N uni10D9 ; G 1223 -U 4314 ; WX 1120 ; N uni10DA ; G 1224 -U 4315 ; WX 654 ; N uni10DB ; G 1225 -U 4316 ; WX 640 ; N uni10DC ; G 1226 -U 4317 ; WX 879 ; N uni10DD ; G 1227 -U 4318 ; WX 624 ; N uni10DE ; G 1228 -U 4319 ; WX 634 ; N uni10DF ; G 1229 -U 4320 ; WX 877 ; N uni10E0 ; G 1230 -U 4321 ; WX 657 ; N uni10E1 ; G 1231 -U 4322 ; WX 802 ; N uni10E2 ; G 1232 -U 4323 ; WX 751 ; N uni10E3 ; G 1233 -U 4324 ; WX 869 ; N uni10E4 ; G 1234 -U 4325 ; WX 639 ; N uni10E5 ; G 1235 -U 4326 ; WX 912 ; N uni10E6 ; G 1236 -U 4327 ; WX 622 ; N uni10E7 ; G 1237 -U 4328 ; WX 647 ; N uni10E8 ; G 1238 -U 4329 ; WX 640 ; N uni10E9 ; G 1239 -U 4330 ; WX 729 ; N uni10EA ; G 1240 -U 4331 ; WX 641 ; N uni10EB ; G 1241 -U 4332 ; WX 639 ; N uni10EC ; G 1242 -U 4333 ; WX 629 ; N uni10ED ; G 1243 -U 4334 ; WX 674 ; N uni10EE ; G 1244 -U 4335 ; WX 737 ; N uni10EF ; G 1245 -U 4336 ; WX 625 ; N uni10F0 ; G 1246 -U 4337 ; WX 657 ; N uni10F1 ; G 1247 -U 4338 ; WX 625 ; N uni10F2 ; G 1248 -U 4339 ; WX 625 ; N uni10F3 ; G 1249 -U 4340 ; WX 624 ; N uni10F4 ; G 1250 -U 4341 ; WX 670 ; N uni10F5 ; G 1251 -U 4342 ; WX 940 ; N uni10F6 ; G 1252 -U 4343 ; WX 680 ; N uni10F7 ; G 1253 -U 4344 ; WX 636 ; N uni10F8 ; G 1254 -U 4345 ; WX 672 ; N uni10F9 ; G 1255 -U 4346 ; WX 625 ; N uni10FA ; G 1256 -U 4347 ; WX 446 ; N uni10FB ; G 1257 -U 4348 ; WX 363 ; N uni10FC ; G 1258 -U 7424 ; WX 641 ; N uni1D00 ; G 1259 -U 7425 ; WX 892 ; N uni1D01 ; G 1260 -U 7426 ; WX 932 ; N uni1D02 ; G 1261 -U 7427 ; WX 695 ; N uni1D03 ; G 1262 -U 7428 ; WX 609 ; N uni1D04 ; G 1263 -U 7429 ; WX 675 ; N uni1D05 ; G 1264 -U 7430 ; WX 675 ; N uni1D06 ; G 1265 -U 7431 ; WX 617 ; N uni1D07 ; G 1266 -U 7432 ; WX 509 ; N uni1D08 ; G 1267 -U 7433 ; WX 320 ; N uni1D09 ; G 1268 -U 7434 ; WX 561 ; N uni1D0A ; G 1269 -U 7435 ; WX 722 ; N uni1D0B ; G 1270 -U 7436 ; WX 617 ; N uni1D0C ; G 1271 -U 7437 ; WX 869 ; N uni1D0D ; G 1272 -U 7438 ; WX 737 ; N uni1D0E ; G 1273 -U 7439 ; WX 667 ; N uni1D0F ; G 1274 -U 7440 ; WX 609 ; N uni1D10 ; G 1275 -U 7441 ; WX 628 ; N uni1D11 ; G 1276 -U 7442 ; WX 628 ; N uni1D12 ; G 1277 -U 7443 ; WX 667 ; N uni1D13 ; G 1278 -U 7444 ; WX 1028 ; N uni1D14 ; G 1279 -U 7445 ; WX 598 ; N uni1D15 ; G 1280 -U 7446 ; WX 667 ; N uni1D16 ; G 1281 -U 7447 ; WX 667 ; N uni1D17 ; G 1282 -U 7448 ; WX 586 ; N uni1D18 ; G 1283 -U 7449 ; WX 801 ; N uni1D19 ; G 1284 -U 7450 ; WX 801 ; N uni1D1A ; G 1285 -U 7451 ; WX 620 ; N uni1D1B ; G 1286 -U 7452 ; WX 647 ; N uni1D1C ; G 1287 -U 7453 ; WX 664 ; N uni1D1D ; G 1288 -U 7454 ; WX 923 ; N uni1D1E ; G 1289 -U 7455 ; WX 655 ; N uni1D1F ; G 1290 -U 7456 ; WX 581 ; N uni1D20 ; G 1291 -U 7457 ; WX 861 ; N uni1D21 ; G 1292 -U 7458 ; WX 568 ; N uni1D22 ; G 1293 -U 7459 ; WX 568 ; N uni1D23 ; G 1294 -U 7460 ; WX 588 ; N uni1D24 ; G 1295 -U 7461 ; WX 802 ; N uni1D25 ; G 1296 -U 7462 ; WX 586 ; N uni1D26 ; G 1297 -U 7463 ; WX 641 ; N uni1D27 ; G 1298 -U 7464 ; WX 732 ; N uni1D28 ; G 1299 -U 7465 ; WX 586 ; N uni1D29 ; G 1300 -U 7466 ; WX 854 ; N uni1D2A ; G 1301 -U 7467 ; WX 705 ; N uni1D2B ; G 1302 -U 7468 ; WX 489 ; N uni1D2C ; G 1303 -U 7469 ; WX 651 ; N uni1D2D ; G 1304 -U 7470 ; WX 532 ; N uni1D2E ; G 1305 -U 7471 ; WX 532 ; N uni1D2F ; G 1306 -U 7472 ; WX 546 ; N uni1D30 ; G 1307 -U 7473 ; WX 480 ; N uni1D31 ; G 1308 -U 7474 ; WX 480 ; N uni1D32 ; G 1309 -U 7475 ; WX 538 ; N uni1D33 ; G 1310 -U 7476 ; WX 595 ; N uni1D34 ; G 1311 -U 7477 ; WX 294 ; N uni1D35 ; G 1312 -U 7478 ; WX 298 ; N uni1D36 ; G 1313 -U 7479 ; WX 547 ; N uni1D37 ; G 1314 -U 7480 ; WX 443 ; N uni1D38 ; G 1315 -U 7481 ; WX 697 ; N uni1D39 ; G 1316 -U 7482 ; WX 576 ; N uni1D3A ; G 1317 -U 7483 ; WX 606 ; N uni1D3B ; G 1318 -U 7484 ; WX 548 ; N uni1D3C ; G 1319 -U 7485 ; WX 442 ; N uni1D3D ; G 1320 -U 7486 ; WX 474 ; N uni1D3E ; G 1321 -U 7487 ; WX 523 ; N uni1D3F ; G 1322 -U 7488 ; WX 469 ; N uni1D40 ; G 1323 -U 7489 ; WX 549 ; N uni1D41 ; G 1324 -U 7490 ; WX 708 ; N uni1D42 ; G 1325 -U 7491 ; WX 408 ; N uni1D43 ; G 1326 -U 7492 ; WX 408 ; N uni1D44 ; G 1327 -U 7493 ; WX 484 ; N uni1D45 ; G 1328 -U 7494 ; WX 587 ; N uni1D46 ; G 1329 -U 7495 ; WX 499 ; N uni1D47 ; G 1330 -U 7496 ; WX 498 ; N uni1D48 ; G 1331 -U 7497 ; WX 444 ; N uni1D49 ; G 1332 -U 7498 ; WX 444 ; N uni1D4A ; G 1333 -U 7499 ; WX 412 ; N uni1D4B ; G 1334 -U 7500 ; WX 412 ; N uni1D4C ; G 1335 -U 7501 ; WX 498 ; N uni1D4D ; G 1336 -U 7502 ; WX 300 ; N uni1D4E ; G 1337 -U 7503 ; WX 523 ; N uni1D4F ; G 1338 -U 7504 ; WX 729 ; N uni1D50 ; G 1339 -U 7505 ; WX 473 ; N uni1D51 ; G 1340 -U 7506 ; WX 467 ; N uni1D52 ; G 1341 -U 7507 ; WX 427 ; N uni1D53 ; G 1342 -U 7508 ; WX 467 ; N uni1D54 ; G 1343 -U 7509 ; WX 467 ; N uni1D55 ; G 1344 -U 7510 ; WX 499 ; N uni1D56 ; G 1345 -U 7511 ; WX 371 ; N uni1D57 ; G 1346 -U 7512 ; WX 520 ; N uni1D58 ; G 1347 -U 7513 ; WX 418 ; N uni1D59 ; G 1348 -U 7514 ; WX 729 ; N uni1D5A ; G 1349 -U 7515 ; WX 491 ; N uni1D5B ; G 1350 -U 7516 ; WX 505 ; N uni1D5C ; G 1351 -U 7517 ; WX 418 ; N uni1D5D ; G 1352 -U 7518 ; WX 416 ; N uni1D5E ; G 1353 -U 7519 ; WX 420 ; N uni1D5F ; G 1354 -U 7520 ; WX 570 ; N uni1D60 ; G 1355 -U 7521 ; WX 414 ; N uni1D61 ; G 1356 -U 7522 ; WX 239 ; N uni1D62 ; G 1357 -U 7523 ; WX 414 ; N uni1D63 ; G 1358 -U 7524 ; WX 520 ; N uni1D64 ; G 1359 -U 7525 ; WX 491 ; N uni1D65 ; G 1360 -U 7526 ; WX 418 ; N uni1D66 ; G 1361 -U 7527 ; WX 416 ; N uni1D67 ; G 1362 -U 7528 ; WX 419 ; N uni1D68 ; G 1363 -U 7529 ; WX 570 ; N uni1D69 ; G 1364 -U 7530 ; WX 414 ; N uni1D6A ; G 1365 -U 7531 ; WX 1042 ; N uni1D6B ; G 1366 -U 7543 ; WX 640 ; N uni1D77 ; G 1367 -U 7544 ; WX 595 ; N uni1D78 ; G 1368 -U 7547 ; WX 380 ; N uni1D7B ; G 1369 -U 7548 ; WX 380 ; N uni1D7C ; G 1370 -U 7549 ; WX 699 ; N uni1D7D ; G 1371 -U 7550 ; WX 647 ; N uni1D7E ; G 1372 -U 7551 ; WX 679 ; N uni1D7F ; G 1373 -U 7557 ; WX 380 ; N uni1D85 ; G 1374 -U 7579 ; WX 484 ; N uni1D9B ; G 1375 -U 7580 ; WX 427 ; N uni1D9C ; G 1376 -U 7581 ; WX 427 ; N uni1D9D ; G 1377 -U 7582 ; WX 467 ; N uni1D9E ; G 1378 -U 7583 ; WX 412 ; N uni1D9F ; G 1379 -U 7584 ; WX 271 ; N uni1DA0 ; G 1380 -U 7585 ; WX 373 ; N uni1DA1 ; G 1381 -U 7586 ; WX 498 ; N uni1DA2 ; G 1382 -U 7587 ; WX 522 ; N uni1DA3 ; G 1383 -U 7588 ; WX 300 ; N uni1DA4 ; G 1384 -U 7589 ; WX 307 ; N uni1DA5 ; G 1385 -U 7590 ; WX 300 ; N uni1DA6 ; G 1386 -U 7591 ; WX 300 ; N uni1DA7 ; G 1387 -U 7592 ; WX 370 ; N uni1DA8 ; G 1388 -U 7593 ; WX 368 ; N uni1DA9 ; G 1389 -U 7594 ; WX 321 ; N uni1DAA ; G 1390 -U 7595 ; WX 430 ; N uni1DAB ; G 1391 -U 7596 ; WX 682 ; N uni1DAC ; G 1392 -U 7597 ; WX 729 ; N uni1DAD ; G 1393 -U 7598 ; WX 588 ; N uni1DAE ; G 1394 -U 7599 ; WX 587 ; N uni1DAF ; G 1395 -U 7600 ; WX 472 ; N uni1DB0 ; G 1396 -U 7601 ; WX 467 ; N uni1DB1 ; G 1397 -U 7602 ; WX 522 ; N uni1DB2 ; G 1398 -U 7603 ; WX 400 ; N uni1DB3 ; G 1399 -U 7604 ; WX 387 ; N uni1DB4 ; G 1400 -U 7605 ; WX 371 ; N uni1DB5 ; G 1401 -U 7606 ; WX 520 ; N uni1DB6 ; G 1402 -U 7607 ; WX 475 ; N uni1DB7 ; G 1403 -U 7608 ; WX 408 ; N uni1DB8 ; G 1404 -U 7609 ; WX 489 ; N uni1DB9 ; G 1405 -U 7610 ; WX 366 ; N uni1DBA ; G 1406 -U 7611 ; WX 357 ; N uni1DBB ; G 1407 -U 7612 ; WX 527 ; N uni1DBC ; G 1408 -U 7613 ; WX 412 ; N uni1DBD ; G 1409 -U 7614 ; WX 452 ; N uni1DBE ; G 1410 -U 7615 ; WX 467 ; N uni1DBF ; G 1411 -U 7620 ; WX 0 ; N uni1DC4 ; G 1412 -U 7621 ; WX 0 ; N uni1DC5 ; G 1413 -U 7622 ; WX 0 ; N uni1DC6 ; G 1414 -U 7623 ; WX 0 ; N uni1DC7 ; G 1415 -U 7624 ; WX 0 ; N uni1DC8 ; G 1416 -U 7625 ; WX 0 ; N uni1DC9 ; G 1417 -U 7680 ; WX 776 ; N uni1E00 ; G 1418 -U 7681 ; WX 648 ; N uni1E01 ; G 1419 -U 7682 ; WX 845 ; N uni1E02 ; G 1420 -U 7683 ; WX 699 ; N uni1E03 ; G 1421 -U 7684 ; WX 845 ; N uni1E04 ; G 1422 -U 7685 ; WX 699 ; N uni1E05 ; G 1423 -U 7686 ; WX 845 ; N uni1E06 ; G 1424 -U 7687 ; WX 699 ; N uni1E07 ; G 1425 -U 7688 ; WX 796 ; N uni1E08 ; G 1426 -U 7689 ; WX 609 ; N uni1E09 ; G 1427 -U 7690 ; WX 867 ; N uni1E0A ; G 1428 -U 7691 ; WX 699 ; N uni1E0B ; G 1429 -U 7692 ; WX 867 ; N uni1E0C ; G 1430 -U 7693 ; WX 699 ; N uni1E0D ; G 1431 -U 7694 ; WX 867 ; N uni1E0E ; G 1432 -U 7695 ; WX 699 ; N uni1E0F ; G 1433 -U 7696 ; WX 867 ; N uni1E10 ; G 1434 -U 7697 ; WX 699 ; N uni1E11 ; G 1435 -U 7698 ; WX 867 ; N uni1E12 ; G 1436 -U 7699 ; WX 699 ; N uni1E13 ; G 1437 -U 7700 ; WX 762 ; N uni1E14 ; G 1438 -U 7701 ; WX 636 ; N uni1E15 ; G 1439 -U 7702 ; WX 762 ; N uni1E16 ; G 1440 -U 7703 ; WX 636 ; N uni1E17 ; G 1441 -U 7704 ; WX 762 ; N uni1E18 ; G 1442 -U 7705 ; WX 636 ; N uni1E19 ; G 1443 -U 7706 ; WX 762 ; N uni1E1A ; G 1444 -U 7707 ; WX 636 ; N uni1E1B ; G 1445 -U 7708 ; WX 762 ; N uni1E1C ; G 1446 -U 7709 ; WX 636 ; N uni1E1D ; G 1447 -U 7710 ; WX 710 ; N uni1E1E ; G 1448 -U 7711 ; WX 430 ; N uni1E1F ; G 1449 -U 7712 ; WX 854 ; N uni1E20 ; G 1450 -U 7713 ; WX 699 ; N uni1E21 ; G 1451 -U 7714 ; WX 945 ; N uni1E22 ; G 1452 -U 7715 ; WX 727 ; N uni1E23 ; G 1453 -U 7716 ; WX 945 ; N uni1E24 ; G 1454 -U 7717 ; WX 727 ; N uni1E25 ; G 1455 -U 7718 ; WX 945 ; N uni1E26 ; G 1456 -U 7719 ; WX 727 ; N uni1E27 ; G 1457 -U 7720 ; WX 945 ; N uni1E28 ; G 1458 -U 7721 ; WX 727 ; N uni1E29 ; G 1459 -U 7722 ; WX 945 ; N uni1E2A ; G 1460 -U 7723 ; WX 727 ; N uni1E2B ; G 1461 -U 7724 ; WX 468 ; N uni1E2C ; G 1462 -U 7725 ; WX 380 ; N uni1E2D ; G 1463 -U 7726 ; WX 468 ; N uni1E2E ; G 1464 -U 7727 ; WX 380 ; N uni1E2F ; G 1465 -U 7728 ; WX 869 ; N uni1E30 ; G 1466 -U 7729 ; WX 693 ; N uni1E31 ; G 1467 -U 7730 ; WX 869 ; N uni1E32 ; G 1468 -U 7731 ; WX 693 ; N uni1E33 ; G 1469 -U 7732 ; WX 869 ; N uni1E34 ; G 1470 -U 7733 ; WX 693 ; N uni1E35 ; G 1471 -U 7734 ; WX 703 ; N uni1E36 ; G 1472 -U 7735 ; WX 380 ; N uni1E37 ; G 1473 -U 7736 ; WX 703 ; N uni1E38 ; G 1474 -U 7737 ; WX 380 ; N uni1E39 ; G 1475 -U 7738 ; WX 703 ; N uni1E3A ; G 1476 -U 7739 ; WX 380 ; N uni1E3B ; G 1477 -U 7740 ; WX 703 ; N uni1E3C ; G 1478 -U 7741 ; WX 380 ; N uni1E3D ; G 1479 -U 7742 ; WX 1107 ; N uni1E3E ; G 1480 -U 7743 ; WX 1058 ; N uni1E3F ; G 1481 -U 7744 ; WX 1107 ; N uni1E40 ; G 1482 -U 7745 ; WX 1058 ; N uni1E41 ; G 1483 -U 7746 ; WX 1107 ; N uni1E42 ; G 1484 -U 7747 ; WX 1058 ; N uni1E43 ; G 1485 -U 7748 ; WX 914 ; N uni1E44 ; G 1486 -U 7749 ; WX 727 ; N uni1E45 ; G 1487 -U 7750 ; WX 914 ; N uni1E46 ; G 1488 -U 7751 ; WX 727 ; N uni1E47 ; G 1489 -U 7752 ; WX 914 ; N uni1E48 ; G 1490 -U 7753 ; WX 727 ; N uni1E49 ; G 1491 -U 7754 ; WX 914 ; N uni1E4A ; G 1492 -U 7755 ; WX 727 ; N uni1E4B ; G 1493 -U 7756 ; WX 871 ; N uni1E4C ; G 1494 -U 7757 ; WX 667 ; N uni1E4D ; G 1495 -U 7758 ; WX 871 ; N uni1E4E ; G 1496 -U 7759 ; WX 667 ; N uni1E4F ; G 1497 -U 7760 ; WX 871 ; N uni1E50 ; G 1498 -U 7761 ; WX 667 ; N uni1E51 ; G 1499 -U 7762 ; WX 871 ; N uni1E52 ; G 1500 -U 7763 ; WX 667 ; N uni1E53 ; G 1501 -U 7764 ; WX 752 ; N uni1E54 ; G 1502 -U 7765 ; WX 699 ; N uni1E55 ; G 1503 -U 7766 ; WX 752 ; N uni1E56 ; G 1504 -U 7767 ; WX 699 ; N uni1E57 ; G 1505 -U 7768 ; WX 831 ; N uni1E58 ; G 1506 -U 7769 ; WX 527 ; N uni1E59 ; G 1507 -U 7770 ; WX 831 ; N uni1E5A ; G 1508 -U 7771 ; WX 527 ; N uni1E5B ; G 1509 -U 7772 ; WX 831 ; N uni1E5C ; G 1510 -U 7773 ; WX 527 ; N uni1E5D ; G 1511 -U 7774 ; WX 831 ; N uni1E5E ; G 1512 -U 7775 ; WX 527 ; N uni1E5F ; G 1513 -U 7776 ; WX 722 ; N uni1E60 ; G 1514 -U 7777 ; WX 563 ; N uni1E61 ; G 1515 -U 7778 ; WX 722 ; N uni1E62 ; G 1516 -U 7779 ; WX 563 ; N uni1E63 ; G 1517 -U 7780 ; WX 722 ; N uni1E64 ; G 1518 -U 7781 ; WX 563 ; N uni1E65 ; G 1519 -U 7782 ; WX 722 ; N uni1E66 ; G 1520 -U 7783 ; WX 563 ; N uni1E67 ; G 1521 -U 7784 ; WX 722 ; N uni1E68 ; G 1522 -U 7785 ; WX 563 ; N uni1E69 ; G 1523 -U 7786 ; WX 744 ; N uni1E6A ; G 1524 -U 7787 ; WX 462 ; N uni1E6B ; G 1525 -U 7788 ; WX 744 ; N uni1E6C ; G 1526 -U 7789 ; WX 462 ; N uni1E6D ; G 1527 -U 7790 ; WX 744 ; N uni1E6E ; G 1528 -U 7791 ; WX 462 ; N uni1E6F ; G 1529 -U 7792 ; WX 744 ; N uni1E70 ; G 1530 -U 7793 ; WX 462 ; N uni1E71 ; G 1531 -U 7794 ; WX 872 ; N uni1E72 ; G 1532 -U 7795 ; WX 727 ; N uni1E73 ; G 1533 -U 7796 ; WX 872 ; N uni1E74 ; G 1534 -U 7797 ; WX 727 ; N uni1E75 ; G 1535 -U 7798 ; WX 872 ; N uni1E76 ; G 1536 -U 7799 ; WX 727 ; N uni1E77 ; G 1537 -U 7800 ; WX 872 ; N uni1E78 ; G 1538 -U 7801 ; WX 727 ; N uni1E79 ; G 1539 -U 7802 ; WX 872 ; N uni1E7A ; G 1540 -U 7803 ; WX 727 ; N uni1E7B ; G 1541 -U 7804 ; WX 776 ; N uni1E7C ; G 1542 -U 7805 ; WX 581 ; N uni1E7D ; G 1543 -U 7806 ; WX 776 ; N uni1E7E ; G 1544 -U 7807 ; WX 581 ; N uni1E7F ; G 1545 -U 7808 ; WX 1123 ; N Wgrave ; G 1546 -U 7809 ; WX 861 ; N wgrave ; G 1547 -U 7810 ; WX 1123 ; N Wacute ; G 1548 -U 7811 ; WX 861 ; N wacute ; G 1549 -U 7812 ; WX 1123 ; N Wdieresis ; G 1550 -U 7813 ; WX 861 ; N wdieresis ; G 1551 -U 7814 ; WX 1123 ; N uni1E86 ; G 1552 -U 7815 ; WX 861 ; N uni1E87 ; G 1553 -U 7816 ; WX 1123 ; N uni1E88 ; G 1554 -U 7817 ; WX 861 ; N uni1E89 ; G 1555 -U 7818 ; WX 776 ; N uni1E8A ; G 1556 -U 7819 ; WX 596 ; N uni1E8B ; G 1557 -U 7820 ; WX 776 ; N uni1E8C ; G 1558 -U 7821 ; WX 596 ; N uni1E8D ; G 1559 -U 7822 ; WX 714 ; N uni1E8E ; G 1560 -U 7823 ; WX 581 ; N uni1E8F ; G 1561 -U 7824 ; WX 730 ; N uni1E90 ; G 1562 -U 7825 ; WX 568 ; N uni1E91 ; G 1563 -U 7826 ; WX 730 ; N uni1E92 ; G 1564 -U 7827 ; WX 568 ; N uni1E93 ; G 1565 -U 7828 ; WX 730 ; N uni1E94 ; G 1566 -U 7829 ; WX 568 ; N uni1E95 ; G 1567 -U 7830 ; WX 727 ; N uni1E96 ; G 1568 -U 7831 ; WX 462 ; N uni1E97 ; G 1569 -U 7832 ; WX 861 ; N uni1E98 ; G 1570 -U 7833 ; WX 581 ; N uni1E99 ; G 1571 -U 7834 ; WX 1014 ; N uni1E9A ; G 1572 -U 7835 ; WX 430 ; N uni1E9B ; G 1573 -U 7836 ; WX 430 ; N uni1E9C ; G 1574 -U 7837 ; WX 430 ; N uni1E9D ; G 1575 -U 7838 ; WX 947 ; N uni1E9E ; G 1576 -U 7839 ; WX 667 ; N uni1E9F ; G 1577 -U 7840 ; WX 776 ; N uni1EA0 ; G 1578 -U 7841 ; WX 648 ; N uni1EA1 ; G 1579 -U 7842 ; WX 776 ; N uni1EA2 ; G 1580 -U 7843 ; WX 648 ; N uni1EA3 ; G 1581 -U 7844 ; WX 776 ; N uni1EA4 ; G 1582 -U 7845 ; WX 648 ; N uni1EA5 ; G 1583 -U 7846 ; WX 776 ; N uni1EA6 ; G 1584 -U 7847 ; WX 648 ; N uni1EA7 ; G 1585 -U 7848 ; WX 776 ; N uni1EA8 ; G 1586 -U 7849 ; WX 648 ; N uni1EA9 ; G 1587 -U 7850 ; WX 776 ; N uni1EAA ; G 1588 -U 7851 ; WX 648 ; N uni1EAB ; G 1589 -U 7852 ; WX 776 ; N uni1EAC ; G 1590 -U 7853 ; WX 648 ; N uni1EAD ; G 1591 -U 7854 ; WX 776 ; N uni1EAE ; G 1592 -U 7855 ; WX 648 ; N uni1EAF ; G 1593 -U 7856 ; WX 776 ; N uni1EB0 ; G 1594 -U 7857 ; WX 648 ; N uni1EB1 ; G 1595 -U 7858 ; WX 776 ; N uni1EB2 ; G 1596 -U 7859 ; WX 648 ; N uni1EB3 ; G 1597 -U 7860 ; WX 776 ; N uni1EB4 ; G 1598 -U 7861 ; WX 648 ; N uni1EB5 ; G 1599 -U 7862 ; WX 776 ; N uni1EB6 ; G 1600 -U 7863 ; WX 648 ; N uni1EB7 ; G 1601 -U 7864 ; WX 762 ; N uni1EB8 ; G 1602 -U 7865 ; WX 636 ; N uni1EB9 ; G 1603 -U 7866 ; WX 762 ; N uni1EBA ; G 1604 -U 7867 ; WX 636 ; N uni1EBB ; G 1605 -U 7868 ; WX 762 ; N uni1EBC ; G 1606 -U 7869 ; WX 636 ; N uni1EBD ; G 1607 -U 7870 ; WX 762 ; N uni1EBE ; G 1608 -U 7871 ; WX 636 ; N uni1EBF ; G 1609 -U 7872 ; WX 762 ; N uni1EC0 ; G 1610 -U 7873 ; WX 636 ; N uni1EC1 ; G 1611 -U 7874 ; WX 762 ; N uni1EC2 ; G 1612 -U 7875 ; WX 636 ; N uni1EC3 ; G 1613 -U 7876 ; WX 762 ; N uni1EC4 ; G 1614 -U 7877 ; WX 636 ; N uni1EC5 ; G 1615 -U 7878 ; WX 762 ; N uni1EC6 ; G 1616 -U 7879 ; WX 636 ; N uni1EC7 ; G 1617 -U 7880 ; WX 468 ; N uni1EC8 ; G 1618 -U 7881 ; WX 380 ; N uni1EC9 ; G 1619 -U 7882 ; WX 468 ; N uni1ECA ; G 1620 -U 7883 ; WX 380 ; N uni1ECB ; G 1621 -U 7884 ; WX 871 ; N uni1ECC ; G 1622 -U 7885 ; WX 667 ; N uni1ECD ; G 1623 -U 7886 ; WX 871 ; N uni1ECE ; G 1624 -U 7887 ; WX 667 ; N uni1ECF ; G 1625 -U 7888 ; WX 871 ; N uni1ED0 ; G 1626 -U 7889 ; WX 667 ; N uni1ED1 ; G 1627 -U 7890 ; WX 871 ; N uni1ED2 ; G 1628 -U 7891 ; WX 667 ; N uni1ED3 ; G 1629 -U 7892 ; WX 871 ; N uni1ED4 ; G 1630 -U 7893 ; WX 667 ; N uni1ED5 ; G 1631 -U 7894 ; WX 871 ; N uni1ED6 ; G 1632 -U 7895 ; WX 667 ; N uni1ED7 ; G 1633 -U 7896 ; WX 871 ; N uni1ED8 ; G 1634 -U 7897 ; WX 667 ; N uni1ED9 ; G 1635 -U 7898 ; WX 871 ; N uni1EDA ; G 1636 -U 7899 ; WX 667 ; N uni1EDB ; G 1637 -U 7900 ; WX 871 ; N uni1EDC ; G 1638 -U 7901 ; WX 667 ; N uni1EDD ; G 1639 -U 7902 ; WX 871 ; N uni1EDE ; G 1640 -U 7903 ; WX 667 ; N uni1EDF ; G 1641 -U 7904 ; WX 871 ; N uni1EE0 ; G 1642 -U 7905 ; WX 667 ; N uni1EE1 ; G 1643 -U 7906 ; WX 871 ; N uni1EE2 ; G 1644 -U 7907 ; WX 667 ; N uni1EE3 ; G 1645 -U 7908 ; WX 872 ; N uni1EE4 ; G 1646 -U 7909 ; WX 727 ; N uni1EE5 ; G 1647 -U 7910 ; WX 872 ; N uni1EE6 ; G 1648 -U 7911 ; WX 727 ; N uni1EE7 ; G 1649 -U 7912 ; WX 872 ; N uni1EE8 ; G 1650 -U 7913 ; WX 727 ; N uni1EE9 ; G 1651 -U 7914 ; WX 872 ; N uni1EEA ; G 1652 -U 7915 ; WX 727 ; N uni1EEB ; G 1653 -U 7916 ; WX 872 ; N uni1EEC ; G 1654 -U 7917 ; WX 727 ; N uni1EED ; G 1655 -U 7918 ; WX 872 ; N uni1EEE ; G 1656 -U 7919 ; WX 727 ; N uni1EEF ; G 1657 -U 7920 ; WX 872 ; N uni1EF0 ; G 1658 -U 7921 ; WX 727 ; N uni1EF1 ; G 1659 -U 7922 ; WX 714 ; N Ygrave ; G 1660 -U 7923 ; WX 581 ; N ygrave ; G 1661 -U 7924 ; WX 714 ; N uni1EF4 ; G 1662 -U 7925 ; WX 581 ; N uni1EF5 ; G 1663 -U 7926 ; WX 714 ; N uni1EF6 ; G 1664 -U 7927 ; WX 581 ; N uni1EF7 ; G 1665 -U 7928 ; WX 714 ; N uni1EF8 ; G 1666 -U 7929 ; WX 581 ; N uni1EF9 ; G 1667 -U 7930 ; WX 1078 ; N uni1EFA ; G 1668 -U 7931 ; WX 701 ; N uni1EFB ; G 1669 -U 7936 ; WX 770 ; N uni1F00 ; G 1670 -U 7937 ; WX 770 ; N uni1F01 ; G 1671 -U 7938 ; WX 770 ; N uni1F02 ; G 1672 -U 7939 ; WX 770 ; N uni1F03 ; G 1673 -U 7940 ; WX 770 ; N uni1F04 ; G 1674 -U 7941 ; WX 770 ; N uni1F05 ; G 1675 -U 7942 ; WX 770 ; N uni1F06 ; G 1676 -U 7943 ; WX 770 ; N uni1F07 ; G 1677 -U 7944 ; WX 776 ; N uni1F08 ; G 1678 -U 7945 ; WX 776 ; N uni1F09 ; G 1679 -U 7946 ; WX 978 ; N uni1F0A ; G 1680 -U 7947 ; WX 978 ; N uni1F0B ; G 1681 -U 7948 ; WX 832 ; N uni1F0C ; G 1682 -U 7949 ; WX 849 ; N uni1F0D ; G 1683 -U 7950 ; WX 776 ; N uni1F0E ; G 1684 -U 7951 ; WX 776 ; N uni1F0F ; G 1685 -U 7952 ; WX 608 ; N uni1F10 ; G 1686 -U 7953 ; WX 608 ; N uni1F11 ; G 1687 -U 7954 ; WX 608 ; N uni1F12 ; G 1688 -U 7955 ; WX 608 ; N uni1F13 ; G 1689 -U 7956 ; WX 608 ; N uni1F14 ; G 1690 -U 7957 ; WX 608 ; N uni1F15 ; G 1691 -U 7960 ; WX 917 ; N uni1F18 ; G 1692 -U 7961 ; WX 909 ; N uni1F19 ; G 1693 -U 7962 ; WX 1169 ; N uni1F1A ; G 1694 -U 7963 ; WX 1169 ; N uni1F1B ; G 1695 -U 7964 ; WX 1093 ; N uni1F1C ; G 1696 -U 7965 ; WX 1120 ; N uni1F1D ; G 1697 -U 7968 ; WX 727 ; N uni1F20 ; G 1698 -U 7969 ; WX 727 ; N uni1F21 ; G 1699 -U 7970 ; WX 727 ; N uni1F22 ; G 1700 -U 7971 ; WX 727 ; N uni1F23 ; G 1701 -U 7972 ; WX 727 ; N uni1F24 ; G 1702 -U 7973 ; WX 727 ; N uni1F25 ; G 1703 -U 7974 ; WX 727 ; N uni1F26 ; G 1704 -U 7975 ; WX 727 ; N uni1F27 ; G 1705 -U 7976 ; WX 1100 ; N uni1F28 ; G 1706 -U 7977 ; WX 1094 ; N uni1F29 ; G 1707 -U 7978 ; WX 1358 ; N uni1F2A ; G 1708 -U 7979 ; WX 1361 ; N uni1F2B ; G 1709 -U 7980 ; WX 1279 ; N uni1F2C ; G 1710 -U 7981 ; WX 1308 ; N uni1F2D ; G 1711 -U 7982 ; WX 1197 ; N uni1F2E ; G 1712 -U 7983 ; WX 1194 ; N uni1F2F ; G 1713 -U 7984 ; WX 484 ; N uni1F30 ; G 1714 -U 7985 ; WX 484 ; N uni1F31 ; G 1715 -U 7986 ; WX 484 ; N uni1F32 ; G 1716 -U 7987 ; WX 484 ; N uni1F33 ; G 1717 -U 7988 ; WX 484 ; N uni1F34 ; G 1718 -U 7989 ; WX 484 ; N uni1F35 ; G 1719 -U 7990 ; WX 484 ; N uni1F36 ; G 1720 -U 7991 ; WX 484 ; N uni1F37 ; G 1721 -U 7992 ; WX 629 ; N uni1F38 ; G 1722 -U 7993 ; WX 617 ; N uni1F39 ; G 1723 -U 7994 ; WX 878 ; N uni1F3A ; G 1724 -U 7995 ; WX 881 ; N uni1F3B ; G 1725 -U 7996 ; WX 799 ; N uni1F3C ; G 1726 -U 7997 ; WX 831 ; N uni1F3D ; G 1727 -U 7998 ; WX 723 ; N uni1F3E ; G 1728 -U 7999 ; WX 714 ; N uni1F3F ; G 1729 -U 8000 ; WX 667 ; N uni1F40 ; G 1730 -U 8001 ; WX 667 ; N uni1F41 ; G 1731 -U 8002 ; WX 667 ; N uni1F42 ; G 1732 -U 8003 ; WX 667 ; N uni1F43 ; G 1733 -U 8004 ; WX 667 ; N uni1F44 ; G 1734 -U 8005 ; WX 667 ; N uni1F45 ; G 1735 -U 8008 ; WX 900 ; N uni1F48 ; G 1736 -U 8009 ; WX 935 ; N uni1F49 ; G 1737 -U 8010 ; WX 1240 ; N uni1F4A ; G 1738 -U 8011 ; WX 1237 ; N uni1F4B ; G 1739 -U 8012 ; WX 1035 ; N uni1F4C ; G 1740 -U 8013 ; WX 1066 ; N uni1F4D ; G 1741 -U 8016 ; WX 694 ; N uni1F50 ; G 1742 -U 8017 ; WX 694 ; N uni1F51 ; G 1743 -U 8018 ; WX 694 ; N uni1F52 ; G 1744 -U 8019 ; WX 694 ; N uni1F53 ; G 1745 -U 8020 ; WX 694 ; N uni1F54 ; G 1746 -U 8021 ; WX 694 ; N uni1F55 ; G 1747 -U 8022 ; WX 694 ; N uni1F56 ; G 1748 -U 8023 ; WX 694 ; N uni1F57 ; G 1749 -U 8025 ; WX 922 ; N uni1F59 ; G 1750 -U 8027 ; WX 1186 ; N uni1F5B ; G 1751 -U 8029 ; WX 1133 ; N uni1F5D ; G 1752 -U 8031 ; WX 1019 ; N uni1F5F ; G 1753 -U 8032 ; WX 952 ; N uni1F60 ; G 1754 -U 8033 ; WX 952 ; N uni1F61 ; G 1755 -U 8034 ; WX 952 ; N uni1F62 ; G 1756 -U 8035 ; WX 952 ; N uni1F63 ; G 1757 -U 8036 ; WX 952 ; N uni1F64 ; G 1758 -U 8037 ; WX 952 ; N uni1F65 ; G 1759 -U 8038 ; WX 952 ; N uni1F66 ; G 1760 -U 8039 ; WX 952 ; N uni1F67 ; G 1761 -U 8040 ; WX 931 ; N uni1F68 ; G 1762 -U 8041 ; WX 963 ; N uni1F69 ; G 1763 -U 8042 ; WX 1268 ; N uni1F6A ; G 1764 -U 8043 ; WX 1274 ; N uni1F6B ; G 1765 -U 8044 ; WX 1054 ; N uni1F6C ; G 1766 -U 8045 ; WX 1088 ; N uni1F6D ; G 1767 -U 8046 ; WX 1023 ; N uni1F6E ; G 1768 -U 8047 ; WX 1060 ; N uni1F6F ; G 1769 -U 8048 ; WX 770 ; N uni1F70 ; G 1770 -U 8049 ; WX 770 ; N uni1F71 ; G 1771 -U 8050 ; WX 608 ; N uni1F72 ; G 1772 -U 8051 ; WX 608 ; N uni1F73 ; G 1773 -U 8052 ; WX 727 ; N uni1F74 ; G 1774 -U 8053 ; WX 727 ; N uni1F75 ; G 1775 -U 8054 ; WX 484 ; N uni1F76 ; G 1776 -U 8055 ; WX 484 ; N uni1F77 ; G 1777 -U 8056 ; WX 667 ; N uni1F78 ; G 1778 -U 8057 ; WX 667 ; N uni1F79 ; G 1779 -U 8058 ; WX 694 ; N uni1F7A ; G 1780 -U 8059 ; WX 694 ; N uni1F7B ; G 1781 -U 8060 ; WX 952 ; N uni1F7C ; G 1782 -U 8061 ; WX 952 ; N uni1F7D ; G 1783 -U 8064 ; WX 770 ; N uni1F80 ; G 1784 -U 8065 ; WX 770 ; N uni1F81 ; G 1785 -U 8066 ; WX 770 ; N uni1F82 ; G 1786 -U 8067 ; WX 770 ; N uni1F83 ; G 1787 -U 8068 ; WX 770 ; N uni1F84 ; G 1788 -U 8069 ; WX 770 ; N uni1F85 ; G 1789 -U 8070 ; WX 770 ; N uni1F86 ; G 1790 -U 8071 ; WX 770 ; N uni1F87 ; G 1791 -U 8072 ; WX 776 ; N uni1F88 ; G 1792 -U 8073 ; WX 776 ; N uni1F89 ; G 1793 -U 8074 ; WX 978 ; N uni1F8A ; G 1794 -U 8075 ; WX 978 ; N uni1F8B ; G 1795 -U 8076 ; WX 832 ; N uni1F8C ; G 1796 -U 8077 ; WX 849 ; N uni1F8D ; G 1797 -U 8078 ; WX 776 ; N uni1F8E ; G 1798 -U 8079 ; WX 776 ; N uni1F8F ; G 1799 -U 8080 ; WX 727 ; N uni1F90 ; G 1800 -U 8081 ; WX 727 ; N uni1F91 ; G 1801 -U 8082 ; WX 727 ; N uni1F92 ; G 1802 -U 8083 ; WX 727 ; N uni1F93 ; G 1803 -U 8084 ; WX 727 ; N uni1F94 ; G 1804 -U 8085 ; WX 727 ; N uni1F95 ; G 1805 -U 8086 ; WX 727 ; N uni1F96 ; G 1806 -U 8087 ; WX 727 ; N uni1F97 ; G 1807 -U 8088 ; WX 1100 ; N uni1F98 ; G 1808 -U 8089 ; WX 1094 ; N uni1F99 ; G 1809 -U 8090 ; WX 1358 ; N uni1F9A ; G 1810 -U 8091 ; WX 1361 ; N uni1F9B ; G 1811 -U 8092 ; WX 1279 ; N uni1F9C ; G 1812 -U 8093 ; WX 1308 ; N uni1F9D ; G 1813 -U 8094 ; WX 1197 ; N uni1F9E ; G 1814 -U 8095 ; WX 1194 ; N uni1F9F ; G 1815 -U 8096 ; WX 952 ; N uni1FA0 ; G 1816 -U 8097 ; WX 952 ; N uni1FA1 ; G 1817 -U 8098 ; WX 952 ; N uni1FA2 ; G 1818 -U 8099 ; WX 952 ; N uni1FA3 ; G 1819 -U 8100 ; WX 952 ; N uni1FA4 ; G 1820 -U 8101 ; WX 952 ; N uni1FA5 ; G 1821 -U 8102 ; WX 952 ; N uni1FA6 ; G 1822 -U 8103 ; WX 952 ; N uni1FA7 ; G 1823 -U 8104 ; WX 931 ; N uni1FA8 ; G 1824 -U 8105 ; WX 963 ; N uni1FA9 ; G 1825 -U 8106 ; WX 1268 ; N uni1FAA ; G 1826 -U 8107 ; WX 1274 ; N uni1FAB ; G 1827 -U 8108 ; WX 1054 ; N uni1FAC ; G 1828 -U 8109 ; WX 1088 ; N uni1FAD ; G 1829 -U 8110 ; WX 1023 ; N uni1FAE ; G 1830 -U 8111 ; WX 1060 ; N uni1FAF ; G 1831 -U 8112 ; WX 770 ; N uni1FB0 ; G 1832 -U 8113 ; WX 770 ; N uni1FB1 ; G 1833 -U 8114 ; WX 770 ; N uni1FB2 ; G 1834 -U 8115 ; WX 770 ; N uni1FB3 ; G 1835 -U 8116 ; WX 770 ; N uni1FB4 ; G 1836 -U 8118 ; WX 770 ; N uni1FB6 ; G 1837 -U 8119 ; WX 770 ; N uni1FB7 ; G 1838 -U 8120 ; WX 776 ; N uni1FB8 ; G 1839 -U 8121 ; WX 776 ; N uni1FB9 ; G 1840 -U 8122 ; WX 811 ; N uni1FBA ; G 1841 -U 8123 ; WX 776 ; N uni1FBB ; G 1842 -U 8124 ; WX 776 ; N uni1FBC ; G 1843 -U 8125 ; WX 500 ; N uni1FBD ; G 1844 -U 8126 ; WX 500 ; N uni1FBE ; G 1845 -U 8127 ; WX 500 ; N uni1FBF ; G 1846 -U 8128 ; WX 500 ; N uni1FC0 ; G 1847 -U 8129 ; WX 500 ; N uni1FC1 ; G 1848 -U 8130 ; WX 727 ; N uni1FC2 ; G 1849 -U 8131 ; WX 727 ; N uni1FC3 ; G 1850 -U 8132 ; WX 727 ; N uni1FC4 ; G 1851 -U 8134 ; WX 727 ; N uni1FC6 ; G 1852 -U 8135 ; WX 727 ; N uni1FC7 ; G 1853 -U 8136 ; WX 1000 ; N uni1FC8 ; G 1854 -U 8137 ; WX 947 ; N uni1FC9 ; G 1855 -U 8138 ; WX 1191 ; N uni1FCA ; G 1856 -U 8139 ; WX 1118 ; N uni1FCB ; G 1857 -U 8140 ; WX 945 ; N uni1FCC ; G 1858 -U 8141 ; WX 500 ; N uni1FCD ; G 1859 -U 8142 ; WX 500 ; N uni1FCE ; G 1860 -U 8143 ; WX 500 ; N uni1FCF ; G 1861 -U 8144 ; WX 484 ; N uni1FD0 ; G 1862 -U 8145 ; WX 484 ; N uni1FD1 ; G 1863 -U 8146 ; WX 484 ; N uni1FD2 ; G 1864 -U 8147 ; WX 484 ; N uni1FD3 ; G 1865 -U 8150 ; WX 484 ; N uni1FD6 ; G 1866 -U 8151 ; WX 484 ; N uni1FD7 ; G 1867 -U 8152 ; WX 468 ; N uni1FD8 ; G 1868 -U 8153 ; WX 468 ; N uni1FD9 ; G 1869 -U 8154 ; WX 714 ; N uni1FDA ; G 1870 -U 8155 ; WX 662 ; N uni1FDB ; G 1871 -U 8157 ; WX 500 ; N uni1FDD ; G 1872 -U 8158 ; WX 500 ; N uni1FDE ; G 1873 -U 8159 ; WX 500 ; N uni1FDF ; G 1874 -U 8160 ; WX 694 ; N uni1FE0 ; G 1875 -U 8161 ; WX 694 ; N uni1FE1 ; G 1876 -U 8162 ; WX 694 ; N uni1FE2 ; G 1877 -U 8163 ; WX 694 ; N uni1FE3 ; G 1878 -U 8164 ; WX 665 ; N uni1FE4 ; G 1879 -U 8165 ; WX 665 ; N uni1FE5 ; G 1880 -U 8166 ; WX 694 ; N uni1FE6 ; G 1881 -U 8167 ; WX 694 ; N uni1FE7 ; G 1882 -U 8168 ; WX 714 ; N uni1FE8 ; G 1883 -U 8169 ; WX 714 ; N uni1FE9 ; G 1884 -U 8170 ; WX 1019 ; N uni1FEA ; G 1885 -U 8171 ; WX 953 ; N uni1FEB ; G 1886 -U 8172 ; WX 910 ; N uni1FEC ; G 1887 -U 8173 ; WX 500 ; N uni1FED ; G 1888 -U 8174 ; WX 500 ; N uni1FEE ; G 1889 -U 8175 ; WX 500 ; N uni1FEF ; G 1890 -U 8178 ; WX 952 ; N uni1FF2 ; G 1891 -U 8179 ; WX 952 ; N uni1FF3 ; G 1892 -U 8180 ; WX 952 ; N uni1FF4 ; G 1893 -U 8182 ; WX 952 ; N uni1FF6 ; G 1894 -U 8183 ; WX 952 ; N uni1FF7 ; G 1895 -U 8184 ; WX 1069 ; N uni1FF8 ; G 1896 -U 8185 ; WX 887 ; N uni1FF9 ; G 1897 -U 8186 ; WX 1101 ; N uni1FFA ; G 1898 -U 8187 ; WX 911 ; N uni1FFB ; G 1899 -U 8188 ; WX 890 ; N uni1FFC ; G 1900 -U 8189 ; WX 500 ; N uni1FFD ; G 1901 -U 8190 ; WX 500 ; N uni1FFE ; G 1902 -U 8192 ; WX 500 ; N uni2000 ; G 1903 -U 8193 ; WX 1000 ; N uni2001 ; G 1904 -U 8194 ; WX 500 ; N uni2002 ; G 1905 -U 8195 ; WX 1000 ; N uni2003 ; G 1906 -U 8196 ; WX 330 ; N uni2004 ; G 1907 -U 8197 ; WX 250 ; N uni2005 ; G 1908 -U 8198 ; WX 167 ; N uni2006 ; G 1909 -U 8199 ; WX 696 ; N uni2007 ; G 1910 -U 8200 ; WX 348 ; N uni2008 ; G 1911 -U 8201 ; WX 200 ; N uni2009 ; G 1912 -U 8202 ; WX 100 ; N uni200A ; G 1913 -U 8203 ; WX 0 ; N uni200B ; G 1914 -U 8204 ; WX 0 ; N uni200C ; G 1915 -U 8205 ; WX 0 ; N uni200D ; G 1916 -U 8206 ; WX 0 ; N uni200E ; G 1917 -U 8207 ; WX 0 ; N uni200F ; G 1918 -U 8208 ; WX 415 ; N uni2010 ; G 1919 -U 8209 ; WX 415 ; N uni2011 ; G 1920 -U 8210 ; WX 696 ; N figuredash ; G 1921 -U 8211 ; WX 500 ; N endash ; G 1922 -U 8212 ; WX 1000 ; N emdash ; G 1923 -U 8213 ; WX 1000 ; N uni2015 ; G 1924 -U 8214 ; WX 500 ; N uni2016 ; G 1925 -U 8215 ; WX 500 ; N underscoredbl ; G 1926 -U 8216 ; WX 348 ; N quoteleft ; G 1927 -U 8217 ; WX 348 ; N quoteright ; G 1928 -U 8218 ; WX 348 ; N quotesinglbase ; G 1929 -U 8219 ; WX 348 ; N quotereversed ; G 1930 -U 8220 ; WX 575 ; N quotedblleft ; G 1931 -U 8221 ; WX 575 ; N quotedblright ; G 1932 -U 8222 ; WX 575 ; N quotedblbase ; G 1933 -U 8223 ; WX 575 ; N uni201F ; G 1934 -U 8224 ; WX 523 ; N dagger ; G 1935 -U 8225 ; WX 523 ; N daggerdbl ; G 1936 -U 8226 ; WX 639 ; N bullet ; G 1937 -U 8227 ; WX 639 ; N uni2023 ; G 1938 -U 8228 ; WX 348 ; N onedotenleader ; G 1939 -U 8229 ; WX 674 ; N twodotenleader ; G 1940 -U 8230 ; WX 1000 ; N ellipsis ; G 1941 -U 8234 ; WX 0 ; N uni202A ; G 1942 -U 8235 ; WX 0 ; N uni202B ; G 1943 -U 8236 ; WX 0 ; N uni202C ; G 1944 -U 8237 ; WX 0 ; N uni202D ; G 1945 -U 8238 ; WX 0 ; N uni202E ; G 1946 -U 8239 ; WX 200 ; N uni202F ; G 1947 -U 8240 ; WX 1385 ; N perthousand ; G 1948 -U 8241 ; WX 1813 ; N uni2031 ; G 1949 -U 8242 ; WX 264 ; N minute ; G 1950 -U 8243 ; WX 447 ; N second ; G 1951 -U 8244 ; WX 630 ; N uni2034 ; G 1952 -U 8245 ; WX 264 ; N uni2035 ; G 1953 -U 8246 ; WX 447 ; N uni2036 ; G 1954 -U 8247 ; WX 630 ; N uni2037 ; G 1955 -U 8248 ; WX 733 ; N uni2038 ; G 1956 -U 8249 ; WX 400 ; N guilsinglleft ; G 1957 -U 8250 ; WX 400 ; N guilsinglright ; G 1958 -U 8252 ; WX 629 ; N exclamdbl ; G 1959 -U 8253 ; WX 586 ; N uni203D ; G 1960 -U 8254 ; WX 500 ; N uni203E ; G 1961 -U 8258 ; WX 1023 ; N uni2042 ; G 1962 -U 8260 ; WX 167 ; N fraction ; G 1963 -U 8261 ; WX 473 ; N uni2045 ; G 1964 -U 8262 ; WX 473 ; N uni2046 ; G 1965 -U 8263 ; WX 1082 ; N uni2047 ; G 1966 -U 8264 ; WX 856 ; N uni2048 ; G 1967 -U 8265 ; WX 856 ; N uni2049 ; G 1968 -U 8267 ; WX 636 ; N uni204B ; G 1969 -U 8268 ; WX 500 ; N uni204C ; G 1970 -U 8269 ; WX 500 ; N uni204D ; G 1971 -U 8270 ; WX 523 ; N uni204E ; G 1972 -U 8271 ; WX 369 ; N uni204F ; G 1973 -U 8273 ; WX 523 ; N uni2051 ; G 1974 -U 8274 ; WX 556 ; N uni2052 ; G 1975 -U 8275 ; WX 1000 ; N uni2053 ; G 1976 -U 8279 ; WX 813 ; N uni2057 ; G 1977 -U 8287 ; WX 222 ; N uni205F ; G 1978 -U 8288 ; WX 0 ; N uni2060 ; G 1979 -U 8289 ; WX 0 ; N uni2061 ; G 1980 -U 8290 ; WX 0 ; N uni2062 ; G 1981 -U 8291 ; WX 0 ; N uni2063 ; G 1982 -U 8292 ; WX 0 ; N uni2064 ; G 1983 -U 8298 ; WX 0 ; N uni206A ; G 1984 -U 8299 ; WX 0 ; N uni206B ; G 1985 -U 8300 ; WX 0 ; N uni206C ; G 1986 -U 8301 ; WX 0 ; N uni206D ; G 1987 -U 8302 ; WX 0 ; N uni206E ; G 1988 -U 8303 ; WX 0 ; N uni206F ; G 1989 -U 8304 ; WX 438 ; N uni2070 ; G 1990 -U 8305 ; WX 239 ; N uni2071 ; G 1991 -U 8308 ; WX 438 ; N uni2074 ; G 1992 -U 8309 ; WX 438 ; N uni2075 ; G 1993 -U 8310 ; WX 438 ; N uni2076 ; G 1994 -U 8311 ; WX 438 ; N uni2077 ; G 1995 -U 8312 ; WX 438 ; N uni2078 ; G 1996 -U 8313 ; WX 438 ; N uni2079 ; G 1997 -U 8314 ; WX 528 ; N uni207A ; G 1998 -U 8315 ; WX 528 ; N uni207B ; G 1999 -U 8316 ; WX 528 ; N uni207C ; G 2000 -U 8317 ; WX 298 ; N uni207D ; G 2001 -U 8318 ; WX 298 ; N uni207E ; G 2002 -U 8319 ; WX 458 ; N uni207F ; G 2003 -U 8320 ; WX 438 ; N uni2080 ; G 2004 -U 8321 ; WX 438 ; N uni2081 ; G 2005 -U 8322 ; WX 438 ; N uni2082 ; G 2006 -U 8323 ; WX 438 ; N uni2083 ; G 2007 -U 8324 ; WX 438 ; N uni2084 ; G 2008 -U 8325 ; WX 438 ; N uni2085 ; G 2009 -U 8326 ; WX 438 ; N uni2086 ; G 2010 -U 8327 ; WX 438 ; N uni2087 ; G 2011 -U 8328 ; WX 438 ; N uni2088 ; G 2012 -U 8329 ; WX 438 ; N uni2089 ; G 2013 -U 8330 ; WX 528 ; N uni208A ; G 2014 -U 8331 ; WX 528 ; N uni208B ; G 2015 -U 8332 ; WX 528 ; N uni208C ; G 2016 -U 8333 ; WX 298 ; N uni208D ; G 2017 -U 8334 ; WX 298 ; N uni208E ; G 2018 -U 8336 ; WX 408 ; N uni2090 ; G 2019 -U 8337 ; WX 444 ; N uni2091 ; G 2020 -U 8338 ; WX 467 ; N uni2092 ; G 2021 -U 8339 ; WX 375 ; N uni2093 ; G 2022 -U 8340 ; WX 444 ; N uni2094 ; G 2023 -U 8341 ; WX 521 ; N uni2095 ; G 2024 -U 8342 ; WX 523 ; N uni2096 ; G 2025 -U 8343 ; WX 292 ; N uni2097 ; G 2026 -U 8344 ; WX 729 ; N uni2098 ; G 2027 -U 8345 ; WX 458 ; N uni2099 ; G 2028 -U 8346 ; WX 499 ; N uni209A ; G 2029 -U 8347 ; WX 395 ; N uni209B ; G 2030 -U 8348 ; WX 371 ; N uni209C ; G 2031 -U 8358 ; WX 696 ; N uni20A6 ; G 2032 -U 8364 ; WX 696 ; N Euro ; G 2033 -U 8367 ; WX 1155 ; N uni20AF ; G 2034 -U 8369 ; WX 790 ; N uni20B1 ; G 2035 -U 8372 ; WX 876 ; N uni20B4 ; G 2036 -U 8373 ; WX 696 ; N uni20B5 ; G 2037 -U 8376 ; WX 696 ; N uni20B8 ; G 2038 -U 8377 ; WX 696 ; N uni20B9 ; G 2039 -U 8378 ; WX 696 ; N uni20BA ; G 2040 -U 8381 ; WX 696 ; N uni20BD ; G 2041 -U 8451 ; WX 1198 ; N uni2103 ; G 2042 -U 8457 ; WX 1112 ; N uni2109 ; G 2043 -U 8462 ; WX 727 ; N uni210E ; G 2044 -U 8463 ; WX 727 ; N uni210F ; G 2045 -U 8470 ; WX 1087 ; N uni2116 ; G 2046 -U 8482 ; WX 1000 ; N trademark ; G 2047 -U 8486 ; WX 890 ; N uni2126 ; G 2048 -U 8487 ; WX 890 ; N uni2127 ; G 2049 -U 8490 ; WX 869 ; N uni212A ; G 2050 -U 8491 ; WX 776 ; N uni212B ; G 2051 -U 8498 ; WX 710 ; N uni2132 ; G 2052 -U 8513 ; WX 786 ; N uni2141 ; G 2053 -U 8514 ; WX 576 ; N uni2142 ; G 2054 -U 8515 ; WX 637 ; N uni2143 ; G 2055 -U 8516 ; WX 760 ; N uni2144 ; G 2056 -U 8523 ; WX 903 ; N uni214B ; G 2057 -U 8526 ; WX 592 ; N uni214E ; G 2058 -U 8528 ; WX 1035 ; N uni2150 ; G 2059 -U 8529 ; WX 1035 ; N uni2151 ; G 2060 -U 8530 ; WX 1473 ; N uni2152 ; G 2061 -U 8531 ; WX 1035 ; N onethird ; G 2062 -U 8532 ; WX 1035 ; N twothirds ; G 2063 -U 8533 ; WX 1035 ; N uni2155 ; G 2064 -U 8534 ; WX 1035 ; N uni2156 ; G 2065 -U 8535 ; WX 1035 ; N uni2157 ; G 2066 -U 8536 ; WX 1035 ; N uni2158 ; G 2067 -U 8537 ; WX 1035 ; N uni2159 ; G 2068 -U 8538 ; WX 1035 ; N uni215A ; G 2069 -U 8539 ; WX 1035 ; N oneeighth ; G 2070 -U 8540 ; WX 1035 ; N threeeighths ; G 2071 -U 8541 ; WX 1035 ; N fiveeighths ; G 2072 -U 8542 ; WX 1035 ; N seveneighths ; G 2073 -U 8543 ; WX 615 ; N uni215F ; G 2074 -U 8544 ; WX 468 ; N uni2160 ; G 2075 -U 8545 ; WX 843 ; N uni2161 ; G 2076 -U 8546 ; WX 1218 ; N uni2162 ; G 2077 -U 8547 ; WX 1135 ; N uni2163 ; G 2078 -U 8548 ; WX 776 ; N uni2164 ; G 2079 -U 8549 ; WX 1150 ; N uni2165 ; G 2080 -U 8550 ; WX 1525 ; N uni2166 ; G 2081 -U 8551 ; WX 1900 ; N uni2167 ; G 2082 -U 8552 ; WX 1126 ; N uni2168 ; G 2083 -U 8553 ; WX 776 ; N uni2169 ; G 2084 -U 8554 ; WX 1127 ; N uni216A ; G 2085 -U 8555 ; WX 1502 ; N uni216B ; G 2086 -U 8556 ; WX 703 ; N uni216C ; G 2087 -U 8557 ; WX 796 ; N uni216D ; G 2088 -U 8558 ; WX 867 ; N uni216E ; G 2089 -U 8559 ; WX 1107 ; N uni216F ; G 2090 -U 8560 ; WX 380 ; N uni2170 ; G 2091 -U 8561 ; WX 760 ; N uni2171 ; G 2092 -U 8562 ; WX 1140 ; N uni2172 ; G 2093 -U 8563 ; WX 961 ; N uni2173 ; G 2094 -U 8564 ; WX 581 ; N uni2174 ; G 2095 -U 8565 ; WX 961 ; N uni2175 ; G 2096 -U 8566 ; WX 1341 ; N uni2176 ; G 2097 -U 8567 ; WX 1721 ; N uni2177 ; G 2098 -U 8568 ; WX 976 ; N uni2178 ; G 2099 -U 8569 ; WX 596 ; N uni2179 ; G 2100 -U 8570 ; WX 976 ; N uni217A ; G 2101 -U 8571 ; WX 1356 ; N uni217B ; G 2102 -U 8572 ; WX 380 ; N uni217C ; G 2103 -U 8573 ; WX 609 ; N uni217D ; G 2104 -U 8574 ; WX 699 ; N uni217E ; G 2105 -U 8575 ; WX 1058 ; N uni217F ; G 2106 -U 8576 ; WX 1255 ; N uni2180 ; G 2107 -U 8577 ; WX 867 ; N uni2181 ; G 2108 -U 8578 ; WX 1268 ; N uni2182 ; G 2109 -U 8579 ; WX 796 ; N uni2183 ; G 2110 -U 8580 ; WX 609 ; N uni2184 ; G 2111 -U 8581 ; WX 796 ; N uni2185 ; G 2112 -U 8585 ; WX 1035 ; N uni2189 ; G 2113 -U 8592 ; WX 838 ; N arrowleft ; G 2114 -U 8593 ; WX 838 ; N arrowup ; G 2115 -U 8594 ; WX 838 ; N arrowright ; G 2116 -U 8595 ; WX 838 ; N arrowdown ; G 2117 -U 8596 ; WX 838 ; N arrowboth ; G 2118 -U 8597 ; WX 838 ; N arrowupdn ; G 2119 -U 8598 ; WX 838 ; N uni2196 ; G 2120 -U 8599 ; WX 838 ; N uni2197 ; G 2121 -U 8600 ; WX 838 ; N uni2198 ; G 2122 -U 8601 ; WX 838 ; N uni2199 ; G 2123 -U 8602 ; WX 838 ; N uni219A ; G 2124 -U 8603 ; WX 838 ; N uni219B ; G 2125 -U 8604 ; WX 838 ; N uni219C ; G 2126 -U 8605 ; WX 838 ; N uni219D ; G 2127 -U 8606 ; WX 838 ; N uni219E ; G 2128 -U 8607 ; WX 838 ; N uni219F ; G 2129 -U 8608 ; WX 838 ; N uni21A0 ; G 2130 -U 8609 ; WX 838 ; N uni21A1 ; G 2131 -U 8610 ; WX 838 ; N uni21A2 ; G 2132 -U 8611 ; WX 838 ; N uni21A3 ; G 2133 -U 8612 ; WX 838 ; N uni21A4 ; G 2134 -U 8613 ; WX 838 ; N uni21A5 ; G 2135 -U 8614 ; WX 838 ; N uni21A6 ; G 2136 -U 8615 ; WX 838 ; N uni21A7 ; G 2137 -U 8616 ; WX 838 ; N arrowupdnbse ; G 2138 -U 8617 ; WX 838 ; N uni21A9 ; G 2139 -U 8618 ; WX 838 ; N uni21AA ; G 2140 -U 8619 ; WX 838 ; N uni21AB ; G 2141 -U 8620 ; WX 838 ; N uni21AC ; G 2142 -U 8621 ; WX 838 ; N uni21AD ; G 2143 -U 8622 ; WX 838 ; N uni21AE ; G 2144 -U 8623 ; WX 850 ; N uni21AF ; G 2145 -U 8624 ; WX 838 ; N uni21B0 ; G 2146 -U 8625 ; WX 838 ; N uni21B1 ; G 2147 -U 8626 ; WX 838 ; N uni21B2 ; G 2148 -U 8627 ; WX 838 ; N uni21B3 ; G 2149 -U 8628 ; WX 838 ; N uni21B4 ; G 2150 -U 8629 ; WX 838 ; N carriagereturn ; G 2151 -U 8630 ; WX 838 ; N uni21B6 ; G 2152 -U 8631 ; WX 838 ; N uni21B7 ; G 2153 -U 8632 ; WX 838 ; N uni21B8 ; G 2154 -U 8633 ; WX 838 ; N uni21B9 ; G 2155 -U 8634 ; WX 838 ; N uni21BA ; G 2156 -U 8635 ; WX 838 ; N uni21BB ; G 2157 -U 8636 ; WX 838 ; N uni21BC ; G 2158 -U 8637 ; WX 838 ; N uni21BD ; G 2159 -U 8638 ; WX 838 ; N uni21BE ; G 2160 -U 8639 ; WX 838 ; N uni21BF ; G 2161 -U 8640 ; WX 838 ; N uni21C0 ; G 2162 -U 8641 ; WX 838 ; N uni21C1 ; G 2163 -U 8642 ; WX 838 ; N uni21C2 ; G 2164 -U 8643 ; WX 838 ; N uni21C3 ; G 2165 -U 8644 ; WX 838 ; N uni21C4 ; G 2166 -U 8645 ; WX 838 ; N uni21C5 ; G 2167 -U 8646 ; WX 838 ; N uni21C6 ; G 2168 -U 8647 ; WX 838 ; N uni21C7 ; G 2169 -U 8648 ; WX 838 ; N uni21C8 ; G 2170 -U 8649 ; WX 838 ; N uni21C9 ; G 2171 -U 8650 ; WX 838 ; N uni21CA ; G 2172 -U 8651 ; WX 838 ; N uni21CB ; G 2173 -U 8652 ; WX 838 ; N uni21CC ; G 2174 -U 8653 ; WX 838 ; N uni21CD ; G 2175 -U 8654 ; WX 838 ; N uni21CE ; G 2176 -U 8655 ; WX 838 ; N uni21CF ; G 2177 -U 8656 ; WX 838 ; N arrowdblleft ; G 2178 -U 8657 ; WX 838 ; N arrowdblup ; G 2179 -U 8658 ; WX 838 ; N arrowdblright ; G 2180 -U 8659 ; WX 838 ; N arrowdbldown ; G 2181 -U 8660 ; WX 838 ; N arrowdblboth ; G 2182 -U 8661 ; WX 838 ; N uni21D5 ; G 2183 -U 8662 ; WX 838 ; N uni21D6 ; G 2184 -U 8663 ; WX 838 ; N uni21D7 ; G 2185 -U 8664 ; WX 838 ; N uni21D8 ; G 2186 -U 8665 ; WX 838 ; N uni21D9 ; G 2187 -U 8666 ; WX 838 ; N uni21DA ; G 2188 -U 8667 ; WX 838 ; N uni21DB ; G 2189 -U 8668 ; WX 838 ; N uni21DC ; G 2190 -U 8669 ; WX 838 ; N uni21DD ; G 2191 -U 8670 ; WX 838 ; N uni21DE ; G 2192 -U 8671 ; WX 838 ; N uni21DF ; G 2193 -U 8672 ; WX 838 ; N uni21E0 ; G 2194 -U 8673 ; WX 838 ; N uni21E1 ; G 2195 -U 8674 ; WX 838 ; N uni21E2 ; G 2196 -U 8675 ; WX 838 ; N uni21E3 ; G 2197 -U 8676 ; WX 838 ; N uni21E4 ; G 2198 -U 8677 ; WX 838 ; N uni21E5 ; G 2199 -U 8678 ; WX 838 ; N uni21E6 ; G 2200 -U 8679 ; WX 838 ; N uni21E7 ; G 2201 -U 8680 ; WX 838 ; N uni21E8 ; G 2202 -U 8681 ; WX 838 ; N uni21E9 ; G 2203 -U 8682 ; WX 838 ; N uni21EA ; G 2204 -U 8683 ; WX 838 ; N uni21EB ; G 2205 -U 8684 ; WX 838 ; N uni21EC ; G 2206 -U 8685 ; WX 838 ; N uni21ED ; G 2207 -U 8686 ; WX 838 ; N uni21EE ; G 2208 -U 8687 ; WX 838 ; N uni21EF ; G 2209 -U 8688 ; WX 838 ; N uni21F0 ; G 2210 -U 8689 ; WX 838 ; N uni21F1 ; G 2211 -U 8690 ; WX 838 ; N uni21F2 ; G 2212 -U 8691 ; WX 838 ; N uni21F3 ; G 2213 -U 8692 ; WX 838 ; N uni21F4 ; G 2214 -U 8693 ; WX 838 ; N uni21F5 ; G 2215 -U 8694 ; WX 838 ; N uni21F6 ; G 2216 -U 8695 ; WX 838 ; N uni21F7 ; G 2217 -U 8696 ; WX 838 ; N uni21F8 ; G 2218 -U 8697 ; WX 838 ; N uni21F9 ; G 2219 -U 8698 ; WX 838 ; N uni21FA ; G 2220 -U 8699 ; WX 838 ; N uni21FB ; G 2221 -U 8700 ; WX 838 ; N uni21FC ; G 2222 -U 8701 ; WX 838 ; N uni21FD ; G 2223 -U 8702 ; WX 838 ; N uni21FE ; G 2224 -U 8703 ; WX 838 ; N uni21FF ; G 2225 -U 8704 ; WX 641 ; N universal ; G 2226 -U 8706 ; WX 534 ; N partialdiff ; G 2227 -U 8707 ; WX 620 ; N existential ; G 2228 -U 8708 ; WX 620 ; N uni2204 ; G 2229 -U 8710 ; WX 753 ; N increment ; G 2230 -U 8711 ; WX 753 ; N gradient ; G 2231 -U 8712 ; WX 740 ; N element ; G 2232 -U 8713 ; WX 740 ; N notelement ; G 2233 -U 8715 ; WX 740 ; N suchthat ; G 2234 -U 8716 ; WX 740 ; N uni220C ; G 2235 -U 8719 ; WX 842 ; N product ; G 2236 -U 8720 ; WX 842 ; N uni2210 ; G 2237 -U 8721 ; WX 753 ; N summation ; G 2238 -U 8722 ; WX 838 ; N minus ; G 2239 -U 8723 ; WX 838 ; N uni2213 ; G 2240 -U 8724 ; WX 838 ; N uni2214 ; G 2241 -U 8725 ; WX 365 ; N uni2215 ; G 2242 -U 8727 ; WX 691 ; N asteriskmath ; G 2243 -U 8728 ; WX 519 ; N uni2218 ; G 2244 -U 8729 ; WX 519 ; N uni2219 ; G 2245 -U 8730 ; WX 657 ; N radical ; G 2246 -U 8731 ; WX 657 ; N uni221B ; G 2247 -U 8732 ; WX 657 ; N uni221C ; G 2248 -U 8733 ; WX 672 ; N proportional ; G 2249 -U 8734 ; WX 833 ; N infinity ; G 2250 -U 8735 ; WX 838 ; N orthogonal ; G 2251 -U 8736 ; WX 838 ; N angle ; G 2252 -U 8739 ; WX 324 ; N uni2223 ; G 2253 -U 8740 ; WX 607 ; N uni2224 ; G 2254 -U 8741 ; WX 529 ; N uni2225 ; G 2255 -U 8742 ; WX 773 ; N uni2226 ; G 2256 -U 8743 ; WX 812 ; N logicaland ; G 2257 -U 8744 ; WX 812 ; N logicalor ; G 2258 -U 8745 ; WX 838 ; N intersection ; G 2259 -U 8746 ; WX 838 ; N union ; G 2260 -U 8747 ; WX 579 ; N integral ; G 2261 -U 8748 ; WX 1000 ; N uni222C ; G 2262 -U 8749 ; WX 1391 ; N uni222D ; G 2263 -U 8760 ; WX 838 ; N uni2238 ; G 2264 -U 8761 ; WX 838 ; N uni2239 ; G 2265 -U 8762 ; WX 838 ; N uni223A ; G 2266 -U 8763 ; WX 838 ; N uni223B ; G 2267 -U 8764 ; WX 838 ; N similar ; G 2268 -U 8765 ; WX 838 ; N uni223D ; G 2269 -U 8770 ; WX 838 ; N uni2242 ; G 2270 -U 8771 ; WX 838 ; N uni2243 ; G 2271 -U 8776 ; WX 838 ; N approxequal ; G 2272 -U 8784 ; WX 838 ; N uni2250 ; G 2273 -U 8785 ; WX 838 ; N uni2251 ; G 2274 -U 8786 ; WX 838 ; N uni2252 ; G 2275 -U 8787 ; WX 838 ; N uni2253 ; G 2276 -U 8788 ; WX 1082 ; N uni2254 ; G 2277 -U 8789 ; WX 1082 ; N uni2255 ; G 2278 -U 8800 ; WX 838 ; N notequal ; G 2279 -U 8801 ; WX 838 ; N equivalence ; G 2280 -U 8804 ; WX 838 ; N lessequal ; G 2281 -U 8805 ; WX 838 ; N greaterequal ; G 2282 -U 8834 ; WX 838 ; N propersubset ; G 2283 -U 8835 ; WX 838 ; N propersuperset ; G 2284 -U 8836 ; WX 838 ; N notsubset ; G 2285 -U 8837 ; WX 838 ; N uni2285 ; G 2286 -U 8838 ; WX 838 ; N reflexsubset ; G 2287 -U 8839 ; WX 838 ; N reflexsuperset ; G 2288 -U 8844 ; WX 838 ; N uni228C ; G 2289 -U 8845 ; WX 838 ; N uni228D ; G 2290 -U 8846 ; WX 838 ; N uni228E ; G 2291 -U 8847 ; WX 838 ; N uni228F ; G 2292 -U 8848 ; WX 838 ; N uni2290 ; G 2293 -U 8849 ; WX 838 ; N uni2291 ; G 2294 -U 8850 ; WX 838 ; N uni2292 ; G 2295 -U 8851 ; WX 838 ; N uni2293 ; G 2296 -U 8852 ; WX 838 ; N uni2294 ; G 2297 -U 8853 ; WX 838 ; N circleplus ; G 2298 -U 8854 ; WX 838 ; N uni2296 ; G 2299 -U 8855 ; WX 838 ; N circlemultiply ; G 2300 -U 8856 ; WX 838 ; N uni2298 ; G 2301 -U 8857 ; WX 838 ; N uni2299 ; G 2302 -U 8858 ; WX 838 ; N uni229A ; G 2303 -U 8859 ; WX 838 ; N uni229B ; G 2304 -U 8860 ; WX 838 ; N uni229C ; G 2305 -U 8861 ; WX 838 ; N uni229D ; G 2306 -U 8862 ; WX 838 ; N uni229E ; G 2307 -U 8863 ; WX 838 ; N uni229F ; G 2308 -U 8864 ; WX 838 ; N uni22A0 ; G 2309 -U 8865 ; WX 838 ; N uni22A1 ; G 2310 -U 8866 ; WX 884 ; N uni22A2 ; G 2311 -U 8867 ; WX 884 ; N uni22A3 ; G 2312 -U 8868 ; WX 960 ; N uni22A4 ; G 2313 -U 8869 ; WX 960 ; N perpendicular ; G 2314 -U 8870 ; WX 616 ; N uni22A6 ; G 2315 -U 8871 ; WX 616 ; N uni22A7 ; G 2316 -U 8872 ; WX 884 ; N uni22A8 ; G 2317 -U 8873 ; WX 884 ; N uni22A9 ; G 2318 -U 8874 ; WX 884 ; N uni22AA ; G 2319 -U 8875 ; WX 1080 ; N uni22AB ; G 2320 -U 8876 ; WX 884 ; N uni22AC ; G 2321 -U 8877 ; WX 884 ; N uni22AD ; G 2322 -U 8878 ; WX 884 ; N uni22AE ; G 2323 -U 8879 ; WX 1080 ; N uni22AF ; G 2324 -U 8900 ; WX 626 ; N uni22C4 ; G 2325 -U 8901 ; WX 398 ; N dotmath ; G 2326 -U 8962 ; WX 834 ; N house ; G 2327 -U 8968 ; WX 473 ; N uni2308 ; G 2328 -U 8969 ; WX 473 ; N uni2309 ; G 2329 -U 8970 ; WX 473 ; N uni230A ; G 2330 -U 8971 ; WX 473 ; N uni230B ; G 2331 -U 8976 ; WX 838 ; N revlogicalnot ; G 2332 -U 8977 ; WX 539 ; N uni2311 ; G 2333 -U 8984 ; WX 928 ; N uni2318 ; G 2334 -U 8985 ; WX 838 ; N uni2319 ; G 2335 -U 8992 ; WX 579 ; N integraltp ; G 2336 -U 8993 ; WX 579 ; N integralbt ; G 2337 -U 8997 ; WX 1000 ; N uni2325 ; G 2338 -U 9000 ; WX 1443 ; N uni2328 ; G 2339 -U 9085 ; WX 1008 ; N uni237D ; G 2340 -U 9115 ; WX 500 ; N uni239B ; G 2341 -U 9116 ; WX 500 ; N uni239C ; G 2342 -U 9117 ; WX 500 ; N uni239D ; G 2343 -U 9118 ; WX 500 ; N uni239E ; G 2344 -U 9119 ; WX 500 ; N uni239F ; G 2345 -U 9120 ; WX 500 ; N uni23A0 ; G 2346 -U 9121 ; WX 500 ; N uni23A1 ; G 2347 -U 9122 ; WX 500 ; N uni23A2 ; G 2348 -U 9123 ; WX 500 ; N uni23A3 ; G 2349 -U 9124 ; WX 500 ; N uni23A4 ; G 2350 -U 9125 ; WX 500 ; N uni23A5 ; G 2351 -U 9126 ; WX 500 ; N uni23A6 ; G 2352 -U 9127 ; WX 750 ; N uni23A7 ; G 2353 -U 9128 ; WX 750 ; N uni23A8 ; G 2354 -U 9129 ; WX 750 ; N uni23A9 ; G 2355 -U 9130 ; WX 750 ; N uni23AA ; G 2356 -U 9131 ; WX 750 ; N uni23AB ; G 2357 -U 9132 ; WX 750 ; N uni23AC ; G 2358 -U 9133 ; WX 750 ; N uni23AD ; G 2359 -U 9134 ; WX 579 ; N uni23AE ; G 2360 -U 9167 ; WX 945 ; N uni23CF ; G 2361 -U 9251 ; WX 834 ; N uni2423 ; G 2362 -U 9472 ; WX 602 ; N SF100000 ; G 2363 -U 9473 ; WX 602 ; N uni2501 ; G 2364 -U 9474 ; WX 602 ; N SF110000 ; G 2365 -U 9475 ; WX 602 ; N uni2503 ; G 2366 -U 9476 ; WX 602 ; N uni2504 ; G 2367 -U 9477 ; WX 602 ; N uni2505 ; G 2368 -U 9478 ; WX 602 ; N uni2506 ; G 2369 -U 9479 ; WX 602 ; N uni2507 ; G 2370 -U 9480 ; WX 602 ; N uni2508 ; G 2371 -U 9481 ; WX 602 ; N uni2509 ; G 2372 -U 9482 ; WX 602 ; N uni250A ; G 2373 -U 9483 ; WX 602 ; N uni250B ; G 2374 -U 9484 ; WX 602 ; N SF010000 ; G 2375 -U 9485 ; WX 602 ; N uni250D ; G 2376 -U 9486 ; WX 602 ; N uni250E ; G 2377 -U 9487 ; WX 602 ; N uni250F ; G 2378 -U 9488 ; WX 602 ; N SF030000 ; G 2379 -U 9489 ; WX 602 ; N uni2511 ; G 2380 -U 9490 ; WX 602 ; N uni2512 ; G 2381 -U 9491 ; WX 602 ; N uni2513 ; G 2382 -U 9492 ; WX 602 ; N SF020000 ; G 2383 -U 9493 ; WX 602 ; N uni2515 ; G 2384 -U 9494 ; WX 602 ; N uni2516 ; G 2385 -U 9495 ; WX 602 ; N uni2517 ; G 2386 -U 9496 ; WX 602 ; N SF040000 ; G 2387 -U 9497 ; WX 602 ; N uni2519 ; G 2388 -U 9498 ; WX 602 ; N uni251A ; G 2389 -U 9499 ; WX 602 ; N uni251B ; G 2390 -U 9500 ; WX 602 ; N SF080000 ; G 2391 -U 9501 ; WX 602 ; N uni251D ; G 2392 -U 9502 ; WX 602 ; N uni251E ; G 2393 -U 9503 ; WX 602 ; N uni251F ; G 2394 -U 9504 ; WX 602 ; N uni2520 ; G 2395 -U 9505 ; WX 602 ; N uni2521 ; G 2396 -U 9506 ; WX 602 ; N uni2522 ; G 2397 -U 9507 ; WX 602 ; N uni2523 ; G 2398 -U 9508 ; WX 602 ; N SF090000 ; G 2399 -U 9509 ; WX 602 ; N uni2525 ; G 2400 -U 9510 ; WX 602 ; N uni2526 ; G 2401 -U 9511 ; WX 602 ; N uni2527 ; G 2402 -U 9512 ; WX 602 ; N uni2528 ; G 2403 -U 9513 ; WX 602 ; N uni2529 ; G 2404 -U 9514 ; WX 602 ; N uni252A ; G 2405 -U 9515 ; WX 602 ; N uni252B ; G 2406 -U 9516 ; WX 602 ; N SF060000 ; G 2407 -U 9517 ; WX 602 ; N uni252D ; G 2408 -U 9518 ; WX 602 ; N uni252E ; G 2409 -U 9519 ; WX 602 ; N uni252F ; G 2410 -U 9520 ; WX 602 ; N uni2530 ; G 2411 -U 9521 ; WX 602 ; N uni2531 ; G 2412 -U 9522 ; WX 602 ; N uni2532 ; G 2413 -U 9523 ; WX 602 ; N uni2533 ; G 2414 -U 9524 ; WX 602 ; N SF070000 ; G 2415 -U 9525 ; WX 602 ; N uni2535 ; G 2416 -U 9526 ; WX 602 ; N uni2536 ; G 2417 -U 9527 ; WX 602 ; N uni2537 ; G 2418 -U 9528 ; WX 602 ; N uni2538 ; G 2419 -U 9529 ; WX 602 ; N uni2539 ; G 2420 -U 9530 ; WX 602 ; N uni253A ; G 2421 -U 9531 ; WX 602 ; N uni253B ; G 2422 -U 9532 ; WX 602 ; N SF050000 ; G 2423 -U 9533 ; WX 602 ; N uni253D ; G 2424 -U 9534 ; WX 602 ; N uni253E ; G 2425 -U 9535 ; WX 602 ; N uni253F ; G 2426 -U 9536 ; WX 602 ; N uni2540 ; G 2427 -U 9537 ; WX 602 ; N uni2541 ; G 2428 -U 9538 ; WX 602 ; N uni2542 ; G 2429 -U 9539 ; WX 602 ; N uni2543 ; G 2430 -U 9540 ; WX 602 ; N uni2544 ; G 2431 -U 9541 ; WX 602 ; N uni2545 ; G 2432 -U 9542 ; WX 602 ; N uni2546 ; G 2433 -U 9543 ; WX 602 ; N uni2547 ; G 2434 -U 9544 ; WX 602 ; N uni2548 ; G 2435 -U 9545 ; WX 602 ; N uni2549 ; G 2436 -U 9546 ; WX 602 ; N uni254A ; G 2437 -U 9547 ; WX 602 ; N uni254B ; G 2438 -U 9548 ; WX 602 ; N uni254C ; G 2439 -U 9549 ; WX 602 ; N uni254D ; G 2440 -U 9550 ; WX 602 ; N uni254E ; G 2441 -U 9551 ; WX 602 ; N uni254F ; G 2442 -U 9552 ; WX 602 ; N SF430000 ; G 2443 -U 9553 ; WX 602 ; N SF240000 ; G 2444 -U 9554 ; WX 602 ; N SF510000 ; G 2445 -U 9555 ; WX 602 ; N SF520000 ; G 2446 -U 9556 ; WX 602 ; N SF390000 ; G 2447 -U 9557 ; WX 602 ; N SF220000 ; G 2448 -U 9558 ; WX 602 ; N SF210000 ; G 2449 -U 9559 ; WX 602 ; N SF250000 ; G 2450 -U 9560 ; WX 602 ; N SF500000 ; G 2451 -U 9561 ; WX 602 ; N SF490000 ; G 2452 -U 9562 ; WX 602 ; N SF380000 ; G 2453 -U 9563 ; WX 602 ; N SF280000 ; G 2454 -U 9564 ; WX 602 ; N SF270000 ; G 2455 -U 9565 ; WX 602 ; N SF260000 ; G 2456 -U 9566 ; WX 602 ; N SF360000 ; G 2457 -U 9567 ; WX 602 ; N SF370000 ; G 2458 -U 9568 ; WX 602 ; N SF420000 ; G 2459 -U 9569 ; WX 602 ; N SF190000 ; G 2460 -U 9570 ; WX 602 ; N SF200000 ; G 2461 -U 9571 ; WX 602 ; N SF230000 ; G 2462 -U 9572 ; WX 602 ; N SF470000 ; G 2463 -U 9573 ; WX 602 ; N SF480000 ; G 2464 -U 9574 ; WX 602 ; N SF410000 ; G 2465 -U 9575 ; WX 602 ; N SF450000 ; G 2466 -U 9576 ; WX 602 ; N SF460000 ; G 2467 -U 9577 ; WX 602 ; N SF400000 ; G 2468 -U 9578 ; WX 602 ; N SF540000 ; G 2469 -U 9579 ; WX 602 ; N SF530000 ; G 2470 -U 9580 ; WX 602 ; N SF440000 ; G 2471 -U 9581 ; WX 602 ; N uni256D ; G 2472 -U 9582 ; WX 602 ; N uni256E ; G 2473 -U 9583 ; WX 602 ; N uni256F ; G 2474 -U 9584 ; WX 602 ; N uni2570 ; G 2475 -U 9585 ; WX 602 ; N uni2571 ; G 2476 -U 9586 ; WX 602 ; N uni2572 ; G 2477 -U 9587 ; WX 602 ; N uni2573 ; G 2478 -U 9588 ; WX 602 ; N uni2574 ; G 2479 -U 9589 ; WX 602 ; N uni2575 ; G 2480 -U 9590 ; WX 602 ; N uni2576 ; G 2481 -U 9591 ; WX 602 ; N uni2577 ; G 2482 -U 9592 ; WX 602 ; N uni2578 ; G 2483 -U 9593 ; WX 602 ; N uni2579 ; G 2484 -U 9594 ; WX 602 ; N uni257A ; G 2485 -U 9595 ; WX 602 ; N uni257B ; G 2486 -U 9596 ; WX 602 ; N uni257C ; G 2487 -U 9597 ; WX 602 ; N uni257D ; G 2488 -U 9598 ; WX 602 ; N uni257E ; G 2489 -U 9599 ; WX 602 ; N uni257F ; G 2490 -U 9600 ; WX 769 ; N upblock ; G 2491 -U 9601 ; WX 769 ; N uni2581 ; G 2492 -U 9602 ; WX 769 ; N uni2582 ; G 2493 -U 9603 ; WX 769 ; N uni2583 ; G 2494 -U 9604 ; WX 769 ; N dnblock ; G 2495 -U 9605 ; WX 769 ; N uni2585 ; G 2496 -U 9606 ; WX 769 ; N uni2586 ; G 2497 -U 9607 ; WX 769 ; N uni2587 ; G 2498 -U 9608 ; WX 769 ; N block ; G 2499 -U 9609 ; WX 769 ; N uni2589 ; G 2500 -U 9610 ; WX 769 ; N uni258A ; G 2501 -U 9611 ; WX 769 ; N uni258B ; G 2502 -U 9612 ; WX 769 ; N lfblock ; G 2503 -U 9613 ; WX 769 ; N uni258D ; G 2504 -U 9614 ; WX 769 ; N uni258E ; G 2505 -U 9615 ; WX 769 ; N uni258F ; G 2506 -U 9616 ; WX 769 ; N rtblock ; G 2507 -U 9617 ; WX 769 ; N ltshade ; G 2508 -U 9618 ; WX 769 ; N shade ; G 2509 -U 9619 ; WX 769 ; N dkshade ; G 2510 -U 9620 ; WX 769 ; N uni2594 ; G 2511 -U 9621 ; WX 769 ; N uni2595 ; G 2512 -U 9622 ; WX 769 ; N uni2596 ; G 2513 -U 9623 ; WX 769 ; N uni2597 ; G 2514 -U 9624 ; WX 769 ; N uni2598 ; G 2515 -U 9625 ; WX 769 ; N uni2599 ; G 2516 -U 9626 ; WX 769 ; N uni259A ; G 2517 -U 9627 ; WX 769 ; N uni259B ; G 2518 -U 9628 ; WX 769 ; N uni259C ; G 2519 -U 9629 ; WX 769 ; N uni259D ; G 2520 -U 9630 ; WX 769 ; N uni259E ; G 2521 -U 9631 ; WX 769 ; N uni259F ; G 2522 -U 9632 ; WX 945 ; N filledbox ; G 2523 -U 9633 ; WX 945 ; N H22073 ; G 2524 -U 9634 ; WX 945 ; N uni25A2 ; G 2525 -U 9635 ; WX 945 ; N uni25A3 ; G 2526 -U 9636 ; WX 945 ; N uni25A4 ; G 2527 -U 9637 ; WX 945 ; N uni25A5 ; G 2528 -U 9638 ; WX 945 ; N uni25A6 ; G 2529 -U 9639 ; WX 945 ; N uni25A7 ; G 2530 -U 9640 ; WX 945 ; N uni25A8 ; G 2531 -U 9641 ; WX 945 ; N uni25A9 ; G 2532 -U 9642 ; WX 678 ; N H18543 ; G 2533 -U 9643 ; WX 678 ; N H18551 ; G 2534 -U 9644 ; WX 945 ; N filledrect ; G 2535 -U 9645 ; WX 945 ; N uni25AD ; G 2536 -U 9646 ; WX 550 ; N uni25AE ; G 2537 -U 9647 ; WX 550 ; N uni25AF ; G 2538 -U 9648 ; WX 769 ; N uni25B0 ; G 2539 -U 9649 ; WX 769 ; N uni25B1 ; G 2540 -U 9650 ; WX 769 ; N triagup ; G 2541 -U 9651 ; WX 769 ; N uni25B3 ; G 2542 -U 9652 ; WX 502 ; N uni25B4 ; G 2543 -U 9653 ; WX 502 ; N uni25B5 ; G 2544 -U 9654 ; WX 769 ; N uni25B6 ; G 2545 -U 9655 ; WX 769 ; N uni25B7 ; G 2546 -U 9656 ; WX 502 ; N uni25B8 ; G 2547 -U 9657 ; WX 502 ; N uni25B9 ; G 2548 -U 9658 ; WX 769 ; N triagrt ; G 2549 -U 9659 ; WX 769 ; N uni25BB ; G 2550 -U 9660 ; WX 769 ; N triagdn ; G 2551 -U 9661 ; WX 769 ; N uni25BD ; G 2552 -U 9662 ; WX 502 ; N uni25BE ; G 2553 -U 9663 ; WX 502 ; N uni25BF ; G 2554 -U 9664 ; WX 769 ; N uni25C0 ; G 2555 -U 9665 ; WX 769 ; N uni25C1 ; G 2556 -U 9666 ; WX 502 ; N uni25C2 ; G 2557 -U 9667 ; WX 502 ; N uni25C3 ; G 2558 -U 9668 ; WX 769 ; N triaglf ; G 2559 -U 9669 ; WX 769 ; N uni25C5 ; G 2560 -U 9670 ; WX 769 ; N uni25C6 ; G 2561 -U 9671 ; WX 769 ; N uni25C7 ; G 2562 -U 9672 ; WX 769 ; N uni25C8 ; G 2563 -U 9673 ; WX 873 ; N uni25C9 ; G 2564 -U 9674 ; WX 494 ; N lozenge ; G 2565 -U 9675 ; WX 873 ; N circle ; G 2566 -U 9676 ; WX 873 ; N uni25CC ; G 2567 -U 9677 ; WX 873 ; N uni25CD ; G 2568 -U 9678 ; WX 873 ; N uni25CE ; G 2569 -U 9679 ; WX 873 ; N H18533 ; G 2570 -U 9680 ; WX 873 ; N uni25D0 ; G 2571 -U 9681 ; WX 873 ; N uni25D1 ; G 2572 -U 9682 ; WX 873 ; N uni25D2 ; G 2573 -U 9683 ; WX 873 ; N uni25D3 ; G 2574 -U 9684 ; WX 873 ; N uni25D4 ; G 2575 -U 9685 ; WX 873 ; N uni25D5 ; G 2576 -U 9686 ; WX 527 ; N uni25D6 ; G 2577 -U 9687 ; WX 527 ; N uni25D7 ; G 2578 -U 9688 ; WX 791 ; N invbullet ; G 2579 -U 9689 ; WX 970 ; N invcircle ; G 2580 -U 9690 ; WX 970 ; N uni25DA ; G 2581 -U 9691 ; WX 970 ; N uni25DB ; G 2582 -U 9692 ; WX 387 ; N uni25DC ; G 2583 -U 9693 ; WX 387 ; N uni25DD ; G 2584 -U 9694 ; WX 387 ; N uni25DE ; G 2585 -U 9695 ; WX 387 ; N uni25DF ; G 2586 -U 9696 ; WX 873 ; N uni25E0 ; G 2587 -U 9697 ; WX 873 ; N uni25E1 ; G 2588 -U 9698 ; WX 769 ; N uni25E2 ; G 2589 -U 9699 ; WX 769 ; N uni25E3 ; G 2590 -U 9700 ; WX 769 ; N uni25E4 ; G 2591 -U 9701 ; WX 769 ; N uni25E5 ; G 2592 -U 9702 ; WX 590 ; N openbullet ; G 2593 -U 9703 ; WX 945 ; N uni25E7 ; G 2594 -U 9704 ; WX 945 ; N uni25E8 ; G 2595 -U 9705 ; WX 945 ; N uni25E9 ; G 2596 -U 9706 ; WX 945 ; N uni25EA ; G 2597 -U 9707 ; WX 945 ; N uni25EB ; G 2598 -U 9708 ; WX 769 ; N uni25EC ; G 2599 -U 9709 ; WX 769 ; N uni25ED ; G 2600 -U 9710 ; WX 769 ; N uni25EE ; G 2601 -U 9711 ; WX 1119 ; N uni25EF ; G 2602 -U 9712 ; WX 945 ; N uni25F0 ; G 2603 -U 9713 ; WX 945 ; N uni25F1 ; G 2604 -U 9714 ; WX 945 ; N uni25F2 ; G 2605 -U 9715 ; WX 945 ; N uni25F3 ; G 2606 -U 9716 ; WX 873 ; N uni25F4 ; G 2607 -U 9717 ; WX 873 ; N uni25F5 ; G 2608 -U 9718 ; WX 873 ; N uni25F6 ; G 2609 -U 9719 ; WX 873 ; N uni25F7 ; G 2610 -U 9720 ; WX 769 ; N uni25F8 ; G 2611 -U 9721 ; WX 769 ; N uni25F9 ; G 2612 -U 9722 ; WX 769 ; N uni25FA ; G 2613 -U 9723 ; WX 830 ; N uni25FB ; G 2614 -U 9724 ; WX 830 ; N uni25FC ; G 2615 -U 9725 ; WX 732 ; N uni25FD ; G 2616 -U 9726 ; WX 732 ; N uni25FE ; G 2617 -U 9727 ; WX 769 ; N uni25FF ; G 2618 -U 9728 ; WX 896 ; N uni2600 ; G 2619 -U 9784 ; WX 896 ; N uni2638 ; G 2620 -U 9785 ; WX 896 ; N uni2639 ; G 2621 -U 9786 ; WX 896 ; N smileface ; G 2622 -U 9787 ; WX 896 ; N invsmileface ; G 2623 -U 9788 ; WX 896 ; N sun ; G 2624 -U 9791 ; WX 614 ; N uni263F ; G 2625 -U 9792 ; WX 731 ; N female ; G 2626 -U 9793 ; WX 731 ; N uni2641 ; G 2627 -U 9794 ; WX 896 ; N male ; G 2628 -U 9795 ; WX 896 ; N uni2643 ; G 2629 -U 9796 ; WX 896 ; N uni2644 ; G 2630 -U 9797 ; WX 896 ; N uni2645 ; G 2631 -U 9798 ; WX 896 ; N uni2646 ; G 2632 -U 9799 ; WX 896 ; N uni2647 ; G 2633 -U 9824 ; WX 896 ; N spade ; G 2634 -U 9825 ; WX 896 ; N uni2661 ; G 2635 -U 9826 ; WX 896 ; N uni2662 ; G 2636 -U 9827 ; WX 896 ; N club ; G 2637 -U 9828 ; WX 896 ; N uni2664 ; G 2638 -U 9829 ; WX 896 ; N heart ; G 2639 -U 9830 ; WX 896 ; N diamond ; G 2640 -U 9831 ; WX 896 ; N uni2667 ; G 2641 -U 9833 ; WX 472 ; N uni2669 ; G 2642 -U 9834 ; WX 638 ; N musicalnote ; G 2643 -U 9835 ; WX 896 ; N musicalnotedbl ; G 2644 -U 9836 ; WX 896 ; N uni266C ; G 2645 -U 9837 ; WX 472 ; N uni266D ; G 2646 -U 9838 ; WX 357 ; N uni266E ; G 2647 -U 9839 ; WX 484 ; N uni266F ; G 2648 -U 10145 ; WX 838 ; N uni27A1 ; G 2649 -U 10181 ; WX 457 ; N uni27C5 ; G 2650 -U 10182 ; WX 457 ; N uni27C6 ; G 2651 -U 10208 ; WX 494 ; N uni27E0 ; G 2652 -U 10216 ; WX 457 ; N uni27E8 ; G 2653 -U 10217 ; WX 457 ; N uni27E9 ; G 2654 -U 10224 ; WX 838 ; N uni27F0 ; G 2655 -U 10225 ; WX 838 ; N uni27F1 ; G 2656 -U 10226 ; WX 838 ; N uni27F2 ; G 2657 -U 10227 ; WX 838 ; N uni27F3 ; G 2658 -U 10228 ; WX 1033 ; N uni27F4 ; G 2659 -U 10229 ; WX 1434 ; N uni27F5 ; G 2660 -U 10230 ; WX 1434 ; N uni27F6 ; G 2661 -U 10231 ; WX 1434 ; N uni27F7 ; G 2662 -U 10232 ; WX 1434 ; N uni27F8 ; G 2663 -U 10233 ; WX 1434 ; N uni27F9 ; G 2664 -U 10234 ; WX 1434 ; N uni27FA ; G 2665 -U 10235 ; WX 1434 ; N uni27FB ; G 2666 -U 10236 ; WX 1434 ; N uni27FC ; G 2667 -U 10237 ; WX 1434 ; N uni27FD ; G 2668 -U 10238 ; WX 1434 ; N uni27FE ; G 2669 -U 10239 ; WX 1434 ; N uni27FF ; G 2670 -U 10240 ; WX 781 ; N uni2800 ; G 2671 -U 10241 ; WX 781 ; N uni2801 ; G 2672 -U 10242 ; WX 781 ; N uni2802 ; G 2673 -U 10243 ; WX 781 ; N uni2803 ; G 2674 -U 10244 ; WX 781 ; N uni2804 ; G 2675 -U 10245 ; WX 781 ; N uni2805 ; G 2676 -U 10246 ; WX 781 ; N uni2806 ; G 2677 -U 10247 ; WX 781 ; N uni2807 ; G 2678 -U 10248 ; WX 781 ; N uni2808 ; G 2679 -U 10249 ; WX 781 ; N uni2809 ; G 2680 -U 10250 ; WX 781 ; N uni280A ; G 2681 -U 10251 ; WX 781 ; N uni280B ; G 2682 -U 10252 ; WX 781 ; N uni280C ; G 2683 -U 10253 ; WX 781 ; N uni280D ; G 2684 -U 10254 ; WX 781 ; N uni280E ; G 2685 -U 10255 ; WX 781 ; N uni280F ; G 2686 -U 10256 ; WX 781 ; N uni2810 ; G 2687 -U 10257 ; WX 781 ; N uni2811 ; G 2688 -U 10258 ; WX 781 ; N uni2812 ; G 2689 -U 10259 ; WX 781 ; N uni2813 ; G 2690 -U 10260 ; WX 781 ; N uni2814 ; G 2691 -U 10261 ; WX 781 ; N uni2815 ; G 2692 -U 10262 ; WX 781 ; N uni2816 ; G 2693 -U 10263 ; WX 781 ; N uni2817 ; G 2694 -U 10264 ; WX 781 ; N uni2818 ; G 2695 -U 10265 ; WX 781 ; N uni2819 ; G 2696 -U 10266 ; WX 781 ; N uni281A ; G 2697 -U 10267 ; WX 781 ; N uni281B ; G 2698 -U 10268 ; WX 781 ; N uni281C ; G 2699 -U 10269 ; WX 781 ; N uni281D ; G 2700 -U 10270 ; WX 781 ; N uni281E ; G 2701 -U 10271 ; WX 781 ; N uni281F ; G 2702 -U 10272 ; WX 781 ; N uni2820 ; G 2703 -U 10273 ; WX 781 ; N uni2821 ; G 2704 -U 10274 ; WX 781 ; N uni2822 ; G 2705 -U 10275 ; WX 781 ; N uni2823 ; G 2706 -U 10276 ; WX 781 ; N uni2824 ; G 2707 -U 10277 ; WX 781 ; N uni2825 ; G 2708 -U 10278 ; WX 781 ; N uni2826 ; G 2709 -U 10279 ; WX 781 ; N uni2827 ; G 2710 -U 10280 ; WX 781 ; N uni2828 ; G 2711 -U 10281 ; WX 781 ; N uni2829 ; G 2712 -U 10282 ; WX 781 ; N uni282A ; G 2713 -U 10283 ; WX 781 ; N uni282B ; G 2714 -U 10284 ; WX 781 ; N uni282C ; G 2715 -U 10285 ; WX 781 ; N uni282D ; G 2716 -U 10286 ; WX 781 ; N uni282E ; G 2717 -U 10287 ; WX 781 ; N uni282F ; G 2718 -U 10288 ; WX 781 ; N uni2830 ; G 2719 -U 10289 ; WX 781 ; N uni2831 ; G 2720 -U 10290 ; WX 781 ; N uni2832 ; G 2721 -U 10291 ; WX 781 ; N uni2833 ; G 2722 -U 10292 ; WX 781 ; N uni2834 ; G 2723 -U 10293 ; WX 781 ; N uni2835 ; G 2724 -U 10294 ; WX 781 ; N uni2836 ; G 2725 -U 10295 ; WX 781 ; N uni2837 ; G 2726 -U 10296 ; WX 781 ; N uni2838 ; G 2727 -U 10297 ; WX 781 ; N uni2839 ; G 2728 -U 10298 ; WX 781 ; N uni283A ; G 2729 -U 10299 ; WX 781 ; N uni283B ; G 2730 -U 10300 ; WX 781 ; N uni283C ; G 2731 -U 10301 ; WX 781 ; N uni283D ; G 2732 -U 10302 ; WX 781 ; N uni283E ; G 2733 -U 10303 ; WX 781 ; N uni283F ; G 2734 -U 10304 ; WX 781 ; N uni2840 ; G 2735 -U 10305 ; WX 781 ; N uni2841 ; G 2736 -U 10306 ; WX 781 ; N uni2842 ; G 2737 -U 10307 ; WX 781 ; N uni2843 ; G 2738 -U 10308 ; WX 781 ; N uni2844 ; G 2739 -U 10309 ; WX 781 ; N uni2845 ; G 2740 -U 10310 ; WX 781 ; N uni2846 ; G 2741 -U 10311 ; WX 781 ; N uni2847 ; G 2742 -U 10312 ; WX 781 ; N uni2848 ; G 2743 -U 10313 ; WX 781 ; N uni2849 ; G 2744 -U 10314 ; WX 781 ; N uni284A ; G 2745 -U 10315 ; WX 781 ; N uni284B ; G 2746 -U 10316 ; WX 781 ; N uni284C ; G 2747 -U 10317 ; WX 781 ; N uni284D ; G 2748 -U 10318 ; WX 781 ; N uni284E ; G 2749 -U 10319 ; WX 781 ; N uni284F ; G 2750 -U 10320 ; WX 781 ; N uni2850 ; G 2751 -U 10321 ; WX 781 ; N uni2851 ; G 2752 -U 10322 ; WX 781 ; N uni2852 ; G 2753 -U 10323 ; WX 781 ; N uni2853 ; G 2754 -U 10324 ; WX 781 ; N uni2854 ; G 2755 -U 10325 ; WX 781 ; N uni2855 ; G 2756 -U 10326 ; WX 781 ; N uni2856 ; G 2757 -U 10327 ; WX 781 ; N uni2857 ; G 2758 -U 10328 ; WX 781 ; N uni2858 ; G 2759 -U 10329 ; WX 781 ; N uni2859 ; G 2760 -U 10330 ; WX 781 ; N uni285A ; G 2761 -U 10331 ; WX 781 ; N uni285B ; G 2762 -U 10332 ; WX 781 ; N uni285C ; G 2763 -U 10333 ; WX 781 ; N uni285D ; G 2764 -U 10334 ; WX 781 ; N uni285E ; G 2765 -U 10335 ; WX 781 ; N uni285F ; G 2766 -U 10336 ; WX 781 ; N uni2860 ; G 2767 -U 10337 ; WX 781 ; N uni2861 ; G 2768 -U 10338 ; WX 781 ; N uni2862 ; G 2769 -U 10339 ; WX 781 ; N uni2863 ; G 2770 -U 10340 ; WX 781 ; N uni2864 ; G 2771 -U 10341 ; WX 781 ; N uni2865 ; G 2772 -U 10342 ; WX 781 ; N uni2866 ; G 2773 -U 10343 ; WX 781 ; N uni2867 ; G 2774 -U 10344 ; WX 781 ; N uni2868 ; G 2775 -U 10345 ; WX 781 ; N uni2869 ; G 2776 -U 10346 ; WX 781 ; N uni286A ; G 2777 -U 10347 ; WX 781 ; N uni286B ; G 2778 -U 10348 ; WX 781 ; N uni286C ; G 2779 -U 10349 ; WX 781 ; N uni286D ; G 2780 -U 10350 ; WX 781 ; N uni286E ; G 2781 -U 10351 ; WX 781 ; N uni286F ; G 2782 -U 10352 ; WX 781 ; N uni2870 ; G 2783 -U 10353 ; WX 781 ; N uni2871 ; G 2784 -U 10354 ; WX 781 ; N uni2872 ; G 2785 -U 10355 ; WX 781 ; N uni2873 ; G 2786 -U 10356 ; WX 781 ; N uni2874 ; G 2787 -U 10357 ; WX 781 ; N uni2875 ; G 2788 -U 10358 ; WX 781 ; N uni2876 ; G 2789 -U 10359 ; WX 781 ; N uni2877 ; G 2790 -U 10360 ; WX 781 ; N uni2878 ; G 2791 -U 10361 ; WX 781 ; N uni2879 ; G 2792 -U 10362 ; WX 781 ; N uni287A ; G 2793 -U 10363 ; WX 781 ; N uni287B ; G 2794 -U 10364 ; WX 781 ; N uni287C ; G 2795 -U 10365 ; WX 781 ; N uni287D ; G 2796 -U 10366 ; WX 781 ; N uni287E ; G 2797 -U 10367 ; WX 781 ; N uni287F ; G 2798 -U 10368 ; WX 781 ; N uni2880 ; G 2799 -U 10369 ; WX 781 ; N uni2881 ; G 2800 -U 10370 ; WX 781 ; N uni2882 ; G 2801 -U 10371 ; WX 781 ; N uni2883 ; G 2802 -U 10372 ; WX 781 ; N uni2884 ; G 2803 -U 10373 ; WX 781 ; N uni2885 ; G 2804 -U 10374 ; WX 781 ; N uni2886 ; G 2805 -U 10375 ; WX 781 ; N uni2887 ; G 2806 -U 10376 ; WX 781 ; N uni2888 ; G 2807 -U 10377 ; WX 781 ; N uni2889 ; G 2808 -U 10378 ; WX 781 ; N uni288A ; G 2809 -U 10379 ; WX 781 ; N uni288B ; G 2810 -U 10380 ; WX 781 ; N uni288C ; G 2811 -U 10381 ; WX 781 ; N uni288D ; G 2812 -U 10382 ; WX 781 ; N uni288E ; G 2813 -U 10383 ; WX 781 ; N uni288F ; G 2814 -U 10384 ; WX 781 ; N uni2890 ; G 2815 -U 10385 ; WX 781 ; N uni2891 ; G 2816 -U 10386 ; WX 781 ; N uni2892 ; G 2817 -U 10387 ; WX 781 ; N uni2893 ; G 2818 -U 10388 ; WX 781 ; N uni2894 ; G 2819 -U 10389 ; WX 781 ; N uni2895 ; G 2820 -U 10390 ; WX 781 ; N uni2896 ; G 2821 -U 10391 ; WX 781 ; N uni2897 ; G 2822 -U 10392 ; WX 781 ; N uni2898 ; G 2823 -U 10393 ; WX 781 ; N uni2899 ; G 2824 -U 10394 ; WX 781 ; N uni289A ; G 2825 -U 10395 ; WX 781 ; N uni289B ; G 2826 -U 10396 ; WX 781 ; N uni289C ; G 2827 -U 10397 ; WX 781 ; N uni289D ; G 2828 -U 10398 ; WX 781 ; N uni289E ; G 2829 -U 10399 ; WX 781 ; N uni289F ; G 2830 -U 10400 ; WX 781 ; N uni28A0 ; G 2831 -U 10401 ; WX 781 ; N uni28A1 ; G 2832 -U 10402 ; WX 781 ; N uni28A2 ; G 2833 -U 10403 ; WX 781 ; N uni28A3 ; G 2834 -U 10404 ; WX 781 ; N uni28A4 ; G 2835 -U 10405 ; WX 781 ; N uni28A5 ; G 2836 -U 10406 ; WX 781 ; N uni28A6 ; G 2837 -U 10407 ; WX 781 ; N uni28A7 ; G 2838 -U 10408 ; WX 781 ; N uni28A8 ; G 2839 -U 10409 ; WX 781 ; N uni28A9 ; G 2840 -U 10410 ; WX 781 ; N uni28AA ; G 2841 -U 10411 ; WX 781 ; N uni28AB ; G 2842 -U 10412 ; WX 781 ; N uni28AC ; G 2843 -U 10413 ; WX 781 ; N uni28AD ; G 2844 -U 10414 ; WX 781 ; N uni28AE ; G 2845 -U 10415 ; WX 781 ; N uni28AF ; G 2846 -U 10416 ; WX 781 ; N uni28B0 ; G 2847 -U 10417 ; WX 781 ; N uni28B1 ; G 2848 -U 10418 ; WX 781 ; N uni28B2 ; G 2849 -U 10419 ; WX 781 ; N uni28B3 ; G 2850 -U 10420 ; WX 781 ; N uni28B4 ; G 2851 -U 10421 ; WX 781 ; N uni28B5 ; G 2852 -U 10422 ; WX 781 ; N uni28B6 ; G 2853 -U 10423 ; WX 781 ; N uni28B7 ; G 2854 -U 10424 ; WX 781 ; N uni28B8 ; G 2855 -U 10425 ; WX 781 ; N uni28B9 ; G 2856 -U 10426 ; WX 781 ; N uni28BA ; G 2857 -U 10427 ; WX 781 ; N uni28BB ; G 2858 -U 10428 ; WX 781 ; N uni28BC ; G 2859 -U 10429 ; WX 781 ; N uni28BD ; G 2860 -U 10430 ; WX 781 ; N uni28BE ; G 2861 -U 10431 ; WX 781 ; N uni28BF ; G 2862 -U 10432 ; WX 781 ; N uni28C0 ; G 2863 -U 10433 ; WX 781 ; N uni28C1 ; G 2864 -U 10434 ; WX 781 ; N uni28C2 ; G 2865 -U 10435 ; WX 781 ; N uni28C3 ; G 2866 -U 10436 ; WX 781 ; N uni28C4 ; G 2867 -U 10437 ; WX 781 ; N uni28C5 ; G 2868 -U 10438 ; WX 781 ; N uni28C6 ; G 2869 -U 10439 ; WX 781 ; N uni28C7 ; G 2870 -U 10440 ; WX 781 ; N uni28C8 ; G 2871 -U 10441 ; WX 781 ; N uni28C9 ; G 2872 -U 10442 ; WX 781 ; N uni28CA ; G 2873 -U 10443 ; WX 781 ; N uni28CB ; G 2874 -U 10444 ; WX 781 ; N uni28CC ; G 2875 -U 10445 ; WX 781 ; N uni28CD ; G 2876 -U 10446 ; WX 781 ; N uni28CE ; G 2877 -U 10447 ; WX 781 ; N uni28CF ; G 2878 -U 10448 ; WX 781 ; N uni28D0 ; G 2879 -U 10449 ; WX 781 ; N uni28D1 ; G 2880 -U 10450 ; WX 781 ; N uni28D2 ; G 2881 -U 10451 ; WX 781 ; N uni28D3 ; G 2882 -U 10452 ; WX 781 ; N uni28D4 ; G 2883 -U 10453 ; WX 781 ; N uni28D5 ; G 2884 -U 10454 ; WX 781 ; N uni28D6 ; G 2885 -U 10455 ; WX 781 ; N uni28D7 ; G 2886 -U 10456 ; WX 781 ; N uni28D8 ; G 2887 -U 10457 ; WX 781 ; N uni28D9 ; G 2888 -U 10458 ; WX 781 ; N uni28DA ; G 2889 -U 10459 ; WX 781 ; N uni28DB ; G 2890 -U 10460 ; WX 781 ; N uni28DC ; G 2891 -U 10461 ; WX 781 ; N uni28DD ; G 2892 -U 10462 ; WX 781 ; N uni28DE ; G 2893 -U 10463 ; WX 781 ; N uni28DF ; G 2894 -U 10464 ; WX 781 ; N uni28E0 ; G 2895 -U 10465 ; WX 781 ; N uni28E1 ; G 2896 -U 10466 ; WX 781 ; N uni28E2 ; G 2897 -U 10467 ; WX 781 ; N uni28E3 ; G 2898 -U 10468 ; WX 781 ; N uni28E4 ; G 2899 -U 10469 ; WX 781 ; N uni28E5 ; G 2900 -U 10470 ; WX 781 ; N uni28E6 ; G 2901 -U 10471 ; WX 781 ; N uni28E7 ; G 2902 -U 10472 ; WX 781 ; N uni28E8 ; G 2903 -U 10473 ; WX 781 ; N uni28E9 ; G 2904 -U 10474 ; WX 781 ; N uni28EA ; G 2905 -U 10475 ; WX 781 ; N uni28EB ; G 2906 -U 10476 ; WX 781 ; N uni28EC ; G 2907 -U 10477 ; WX 781 ; N uni28ED ; G 2908 -U 10478 ; WX 781 ; N uni28EE ; G 2909 -U 10479 ; WX 781 ; N uni28EF ; G 2910 -U 10480 ; WX 781 ; N uni28F0 ; G 2911 -U 10481 ; WX 781 ; N uni28F1 ; G 2912 -U 10482 ; WX 781 ; N uni28F2 ; G 2913 -U 10483 ; WX 781 ; N uni28F3 ; G 2914 -U 10484 ; WX 781 ; N uni28F4 ; G 2915 -U 10485 ; WX 781 ; N uni28F5 ; G 2916 -U 10486 ; WX 781 ; N uni28F6 ; G 2917 -U 10487 ; WX 781 ; N uni28F7 ; G 2918 -U 10488 ; WX 781 ; N uni28F8 ; G 2919 -U 10489 ; WX 781 ; N uni28F9 ; G 2920 -U 10490 ; WX 781 ; N uni28FA ; G 2921 -U 10491 ; WX 781 ; N uni28FB ; G 2922 -U 10492 ; WX 781 ; N uni28FC ; G 2923 -U 10493 ; WX 781 ; N uni28FD ; G 2924 -U 10494 ; WX 781 ; N uni28FE ; G 2925 -U 10495 ; WX 781 ; N uni28FF ; G 2926 -U 10496 ; WX 838 ; N uni2900 ; G 2927 -U 10497 ; WX 838 ; N uni2901 ; G 2928 -U 10498 ; WX 838 ; N uni2902 ; G 2929 -U 10499 ; WX 838 ; N uni2903 ; G 2930 -U 10500 ; WX 838 ; N uni2904 ; G 2931 -U 10501 ; WX 838 ; N uni2905 ; G 2932 -U 10502 ; WX 838 ; N uni2906 ; G 2933 -U 10503 ; WX 838 ; N uni2907 ; G 2934 -U 10504 ; WX 838 ; N uni2908 ; G 2935 -U 10505 ; WX 838 ; N uni2909 ; G 2936 -U 10506 ; WX 838 ; N uni290A ; G 2937 -U 10507 ; WX 838 ; N uni290B ; G 2938 -U 10508 ; WX 838 ; N uni290C ; G 2939 -U 10509 ; WX 838 ; N uni290D ; G 2940 -U 10510 ; WX 838 ; N uni290E ; G 2941 -U 10511 ; WX 838 ; N uni290F ; G 2942 -U 10512 ; WX 838 ; N uni2910 ; G 2943 -U 10513 ; WX 838 ; N uni2911 ; G 2944 -U 10514 ; WX 838 ; N uni2912 ; G 2945 -U 10515 ; WX 838 ; N uni2913 ; G 2946 -U 10516 ; WX 838 ; N uni2914 ; G 2947 -U 10517 ; WX 838 ; N uni2915 ; G 2948 -U 10518 ; WX 838 ; N uni2916 ; G 2949 -U 10519 ; WX 838 ; N uni2917 ; G 2950 -U 10520 ; WX 838 ; N uni2918 ; G 2951 -U 10521 ; WX 838 ; N uni2919 ; G 2952 -U 10522 ; WX 838 ; N uni291A ; G 2953 -U 10523 ; WX 838 ; N uni291B ; G 2954 -U 10524 ; WX 838 ; N uni291C ; G 2955 -U 10525 ; WX 838 ; N uni291D ; G 2956 -U 10526 ; WX 838 ; N uni291E ; G 2957 -U 10527 ; WX 838 ; N uni291F ; G 2958 -U 10528 ; WX 838 ; N uni2920 ; G 2959 -U 10529 ; WX 838 ; N uni2921 ; G 2960 -U 10530 ; WX 838 ; N uni2922 ; G 2961 -U 10531 ; WX 838 ; N uni2923 ; G 2962 -U 10532 ; WX 838 ; N uni2924 ; G 2963 -U 10533 ; WX 838 ; N uni2925 ; G 2964 -U 10534 ; WX 838 ; N uni2926 ; G 2965 -U 10535 ; WX 838 ; N uni2927 ; G 2966 -U 10536 ; WX 838 ; N uni2928 ; G 2967 -U 10537 ; WX 838 ; N uni2929 ; G 2968 -U 10538 ; WX 838 ; N uni292A ; G 2969 -U 10539 ; WX 838 ; N uni292B ; G 2970 -U 10540 ; WX 838 ; N uni292C ; G 2971 -U 10541 ; WX 838 ; N uni292D ; G 2972 -U 10542 ; WX 838 ; N uni292E ; G 2973 -U 10543 ; WX 838 ; N uni292F ; G 2974 -U 10544 ; WX 838 ; N uni2930 ; G 2975 -U 10545 ; WX 838 ; N uni2931 ; G 2976 -U 10546 ; WX 838 ; N uni2932 ; G 2977 -U 10547 ; WX 838 ; N uni2933 ; G 2978 -U 10548 ; WX 838 ; N uni2934 ; G 2979 -U 10549 ; WX 838 ; N uni2935 ; G 2980 -U 10550 ; WX 838 ; N uni2936 ; G 2981 -U 10551 ; WX 838 ; N uni2937 ; G 2982 -U 10552 ; WX 838 ; N uni2938 ; G 2983 -U 10553 ; WX 838 ; N uni2939 ; G 2984 -U 10554 ; WX 838 ; N uni293A ; G 2985 -U 10555 ; WX 838 ; N uni293B ; G 2986 -U 10556 ; WX 838 ; N uni293C ; G 2987 -U 10557 ; WX 838 ; N uni293D ; G 2988 -U 10558 ; WX 838 ; N uni293E ; G 2989 -U 10559 ; WX 838 ; N uni293F ; G 2990 -U 10560 ; WX 838 ; N uni2940 ; G 2991 -U 10561 ; WX 838 ; N uni2941 ; G 2992 -U 10562 ; WX 838 ; N uni2942 ; G 2993 -U 10563 ; WX 838 ; N uni2943 ; G 2994 -U 10564 ; WX 838 ; N uni2944 ; G 2995 -U 10565 ; WX 838 ; N uni2945 ; G 2996 -U 10566 ; WX 838 ; N uni2946 ; G 2997 -U 10567 ; WX 838 ; N uni2947 ; G 2998 -U 10568 ; WX 838 ; N uni2948 ; G 2999 -U 10569 ; WX 838 ; N uni2949 ; G 3000 -U 10570 ; WX 838 ; N uni294A ; G 3001 -U 10571 ; WX 838 ; N uni294B ; G 3002 -U 10572 ; WX 838 ; N uni294C ; G 3003 -U 10573 ; WX 838 ; N uni294D ; G 3004 -U 10574 ; WX 838 ; N uni294E ; G 3005 -U 10575 ; WX 838 ; N uni294F ; G 3006 -U 10576 ; WX 838 ; N uni2950 ; G 3007 -U 10577 ; WX 838 ; N uni2951 ; G 3008 -U 10578 ; WX 838 ; N uni2952 ; G 3009 -U 10579 ; WX 838 ; N uni2953 ; G 3010 -U 10580 ; WX 838 ; N uni2954 ; G 3011 -U 10581 ; WX 838 ; N uni2955 ; G 3012 -U 10582 ; WX 838 ; N uni2956 ; G 3013 -U 10583 ; WX 838 ; N uni2957 ; G 3014 -U 10584 ; WX 838 ; N uni2958 ; G 3015 -U 10585 ; WX 838 ; N uni2959 ; G 3016 -U 10586 ; WX 838 ; N uni295A ; G 3017 -U 10587 ; WX 838 ; N uni295B ; G 3018 -U 10588 ; WX 838 ; N uni295C ; G 3019 -U 10589 ; WX 838 ; N uni295D ; G 3020 -U 10590 ; WX 838 ; N uni295E ; G 3021 -U 10591 ; WX 838 ; N uni295F ; G 3022 -U 10592 ; WX 838 ; N uni2960 ; G 3023 -U 10593 ; WX 838 ; N uni2961 ; G 3024 -U 10594 ; WX 838 ; N uni2962 ; G 3025 -U 10595 ; WX 838 ; N uni2963 ; G 3026 -U 10596 ; WX 838 ; N uni2964 ; G 3027 -U 10597 ; WX 838 ; N uni2965 ; G 3028 -U 10598 ; WX 838 ; N uni2966 ; G 3029 -U 10599 ; WX 838 ; N uni2967 ; G 3030 -U 10600 ; WX 838 ; N uni2968 ; G 3031 -U 10601 ; WX 838 ; N uni2969 ; G 3032 -U 10602 ; WX 838 ; N uni296A ; G 3033 -U 10603 ; WX 838 ; N uni296B ; G 3034 -U 10604 ; WX 838 ; N uni296C ; G 3035 -U 10605 ; WX 838 ; N uni296D ; G 3036 -U 10606 ; WX 838 ; N uni296E ; G 3037 -U 10607 ; WX 838 ; N uni296F ; G 3038 -U 10608 ; WX 838 ; N uni2970 ; G 3039 -U 10609 ; WX 838 ; N uni2971 ; G 3040 -U 10610 ; WX 838 ; N uni2972 ; G 3041 -U 10611 ; WX 838 ; N uni2973 ; G 3042 -U 10612 ; WX 838 ; N uni2974 ; G 3043 -U 10613 ; WX 838 ; N uni2975 ; G 3044 -U 10614 ; WX 838 ; N uni2976 ; G 3045 -U 10615 ; WX 1032 ; N uni2977 ; G 3046 -U 10616 ; WX 838 ; N uni2978 ; G 3047 -U 10617 ; WX 838 ; N uni2979 ; G 3048 -U 10618 ; WX 960 ; N uni297A ; G 3049 -U 10619 ; WX 838 ; N uni297B ; G 3050 -U 10620 ; WX 838 ; N uni297C ; G 3051 -U 10621 ; WX 838 ; N uni297D ; G 3052 -U 10622 ; WX 838 ; N uni297E ; G 3053 -U 10623 ; WX 838 ; N uni297F ; G 3054 -U 10731 ; WX 494 ; N uni29EB ; G 3055 -U 10764 ; WX 1782 ; N uni2A0C ; G 3056 -U 10765 ; WX 610 ; N uni2A0D ; G 3057 -U 10766 ; WX 610 ; N uni2A0E ; G 3058 -U 10799 ; WX 838 ; N uni2A2F ; G 3059 -U 10858 ; WX 838 ; N uni2A6A ; G 3060 -U 10859 ; WX 838 ; N uni2A6B ; G 3061 -U 11008 ; WX 838 ; N uni2B00 ; G 3062 -U 11009 ; WX 838 ; N uni2B01 ; G 3063 -U 11010 ; WX 838 ; N uni2B02 ; G 3064 -U 11011 ; WX 838 ; N uni2B03 ; G 3065 -U 11012 ; WX 838 ; N uni2B04 ; G 3066 -U 11013 ; WX 838 ; N uni2B05 ; G 3067 -U 11014 ; WX 838 ; N uni2B06 ; G 3068 -U 11015 ; WX 838 ; N uni2B07 ; G 3069 -U 11016 ; WX 838 ; N uni2B08 ; G 3070 -U 11017 ; WX 838 ; N uni2B09 ; G 3071 -U 11018 ; WX 838 ; N uni2B0A ; G 3072 -U 11019 ; WX 838 ; N uni2B0B ; G 3073 -U 11020 ; WX 838 ; N uni2B0C ; G 3074 -U 11021 ; WX 838 ; N uni2B0D ; G 3075 -U 11022 ; WX 838 ; N uni2B0E ; G 3076 -U 11023 ; WX 838 ; N uni2B0F ; G 3077 -U 11024 ; WX 838 ; N uni2B10 ; G 3078 -U 11025 ; WX 838 ; N uni2B11 ; G 3079 -U 11026 ; WX 945 ; N uni2B12 ; G 3080 -U 11027 ; WX 945 ; N uni2B13 ; G 3081 -U 11028 ; WX 945 ; N uni2B14 ; G 3082 -U 11029 ; WX 945 ; N uni2B15 ; G 3083 -U 11030 ; WX 769 ; N uni2B16 ; G 3084 -U 11031 ; WX 769 ; N uni2B17 ; G 3085 -U 11032 ; WX 769 ; N uni2B18 ; G 3086 -U 11033 ; WX 769 ; N uni2B19 ; G 3087 -U 11034 ; WX 945 ; N uni2B1A ; G 3088 -U 11360 ; WX 703 ; N uni2C60 ; G 3089 -U 11361 ; WX 380 ; N uni2C61 ; G 3090 -U 11363 ; WX 752 ; N uni2C63 ; G 3091 -U 11364 ; WX 831 ; N uni2C64 ; G 3092 -U 11367 ; WX 945 ; N uni2C67 ; G 3093 -U 11368 ; WX 727 ; N uni2C68 ; G 3094 -U 11369 ; WX 869 ; N uni2C69 ; G 3095 -U 11370 ; WX 693 ; N uni2C6A ; G 3096 -U 11371 ; WX 730 ; N uni2C6B ; G 3097 -U 11372 ; WX 568 ; N uni2C6C ; G 3098 -U 11373 ; WX 848 ; N uni2C6D ; G 3099 -U 11374 ; WX 1107 ; N uni2C6E ; G 3100 -U 11375 ; WX 776 ; N uni2C6F ; G 3101 -U 11376 ; WX 848 ; N uni2C70 ; G 3102 -U 11377 ; WX 709 ; N uni2C71 ; G 3103 -U 11378 ; WX 1221 ; N uni2C72 ; G 3104 -U 11379 ; WX 984 ; N uni2C73 ; G 3105 -U 11381 ; WX 779 ; N uni2C75 ; G 3106 -U 11382 ; WX 576 ; N uni2C76 ; G 3107 -U 11383 ; WX 905 ; N uni2C77 ; G 3108 -U 11385 ; WX 571 ; N uni2C79 ; G 3109 -U 11386 ; WX 667 ; N uni2C7A ; G 3110 -U 11387 ; WX 617 ; N uni2C7B ; G 3111 -U 11388 ; WX 313 ; N uni2C7C ; G 3112 -U 11389 ; WX 489 ; N uni2C7D ; G 3113 -U 11390 ; WX 722 ; N uni2C7E ; G 3114 -U 11391 ; WX 730 ; N uni2C7F ; G 3115 -U 11520 ; WX 773 ; N uni2D00 ; G 3116 -U 11521 ; WX 635 ; N uni2D01 ; G 3117 -U 11522 ; WX 804 ; N uni2D02 ; G 3118 -U 11523 ; WX 658 ; N uni2D03 ; G 3119 -U 11524 ; WX 788 ; N uni2D04 ; G 3120 -U 11525 ; WX 962 ; N uni2D05 ; G 3121 -U 11526 ; WX 756 ; N uni2D06 ; G 3122 -U 11527 ; WX 960 ; N uni2D07 ; G 3123 -U 11528 ; WX 617 ; N uni2D08 ; G 3124 -U 11529 ; WX 646 ; N uni2D09 ; G 3125 -U 11530 ; WX 962 ; N uni2D0A ; G 3126 -U 11531 ; WX 631 ; N uni2D0B ; G 3127 -U 11532 ; WX 646 ; N uni2D0C ; G 3128 -U 11533 ; WX 962 ; N uni2D0D ; G 3129 -U 11534 ; WX 846 ; N uni2D0E ; G 3130 -U 11535 ; WX 866 ; N uni2D0F ; G 3131 -U 11536 ; WX 961 ; N uni2D10 ; G 3132 -U 11537 ; WX 645 ; N uni2D11 ; G 3133 -U 11538 ; WX 645 ; N uni2D12 ; G 3134 -U 11539 ; WX 959 ; N uni2D13 ; G 3135 -U 11540 ; WX 945 ; N uni2D14 ; G 3136 -U 11541 ; WX 863 ; N uni2D15 ; G 3137 -U 11542 ; WX 644 ; N uni2D16 ; G 3138 -U 11543 ; WX 646 ; N uni2D17 ; G 3139 -U 11544 ; WX 645 ; N uni2D18 ; G 3140 -U 11545 ; WX 649 ; N uni2D19 ; G 3141 -U 11546 ; WX 688 ; N uni2D1A ; G 3142 -U 11547 ; WX 936 ; N uni2D1B ; G 3143 -U 11548 ; WX 982 ; N uni2D1C ; G 3144 -U 11549 ; WX 681 ; N uni2D1D ; G 3145 -U 11550 ; WX 676 ; N uni2D1E ; G 3146 -U 11551 ; WX 852 ; N uni2D1F ; G 3147 -U 11552 ; WX 1113 ; N uni2D20 ; G 3148 -U 11553 ; WX 632 ; N uni2D21 ; G 3149 -U 11554 ; WX 645 ; N uni2D22 ; G 3150 -U 11555 ; WX 646 ; N uni2D23 ; G 3151 -U 11556 ; WX 749 ; N uni2D24 ; G 3152 -U 11557 ; WX 914 ; N uni2D25 ; G 3153 -U 11800 ; WX 586 ; N uni2E18 ; G 3154 -U 11807 ; WX 838 ; N uni2E1F ; G 3155 -U 11810 ; WX 473 ; N uni2E22 ; G 3156 -U 11811 ; WX 473 ; N uni2E23 ; G 3157 -U 11812 ; WX 473 ; N uni2E24 ; G 3158 -U 11813 ; WX 473 ; N uni2E25 ; G 3159 -U 11822 ; WX 586 ; N uni2E2E ; G 3160 -U 42564 ; WX 722 ; N uniA644 ; G 3161 -U 42565 ; WX 563 ; N uniA645 ; G 3162 -U 42566 ; WX 468 ; N uniA646 ; G 3163 -U 42567 ; WX 380 ; N uniA647 ; G 3164 -U 42576 ; WX 1333 ; N uniA650 ; G 3165 -U 42577 ; WX 1085 ; N uniA651 ; G 3166 -U 42580 ; WX 1287 ; N uniA654 ; G 3167 -U 42581 ; WX 1025 ; N uniA655 ; G 3168 -U 42582 ; WX 1287 ; N uniA656 ; G 3169 -U 42583 ; WX 1029 ; N uniA657 ; G 3170 -U 42648 ; WX 1448 ; N uniA698 ; G 3171 -U 42649 ; WX 1060 ; N uniA699 ; G 3172 -U 42760 ; WX 500 ; N uniA708 ; G 3173 -U 42761 ; WX 500 ; N uniA709 ; G 3174 -U 42762 ; WX 500 ; N uniA70A ; G 3175 -U 42763 ; WX 500 ; N uniA70B ; G 3176 -U 42764 ; WX 500 ; N uniA70C ; G 3177 -U 42765 ; WX 500 ; N uniA70D ; G 3178 -U 42766 ; WX 500 ; N uniA70E ; G 3179 -U 42767 ; WX 500 ; N uniA70F ; G 3180 -U 42768 ; WX 500 ; N uniA710 ; G 3181 -U 42769 ; WX 500 ; N uniA711 ; G 3182 -U 42770 ; WX 500 ; N uniA712 ; G 3183 -U 42771 ; WX 500 ; N uniA713 ; G 3184 -U 42772 ; WX 500 ; N uniA714 ; G 3185 -U 42773 ; WX 500 ; N uniA715 ; G 3186 -U 42774 ; WX 500 ; N uniA716 ; G 3187 -U 42779 ; WX 384 ; N uniA71B ; G 3188 -U 42780 ; WX 384 ; N uniA71C ; G 3189 -U 42781 ; WX 276 ; N uniA71D ; G 3190 -U 42782 ; WX 276 ; N uniA71E ; G 3191 -U 42783 ; WX 276 ; N uniA71F ; G 3192 -U 42790 ; WX 945 ; N uniA726 ; G 3193 -U 42791 ; WX 712 ; N uniA727 ; G 3194 -U 42792 ; WX 1003 ; N uniA728 ; G 3195 -U 42793 ; WX 909 ; N uniA729 ; G 3196 -U 42794 ; WX 696 ; N uniA72A ; G 3197 -U 42795 ; WX 609 ; N uniA72B ; G 3198 -U 42796 ; WX 634 ; N uniA72C ; G 3199 -U 42797 ; WX 598 ; N uniA72D ; G 3200 -U 42798 ; WX 741 ; N uniA72E ; G 3201 -U 42799 ; WX 706 ; N uniA72F ; G 3202 -U 42800 ; WX 592 ; N uniA730 ; G 3203 -U 42801 ; WX 563 ; N uniA731 ; G 3204 -U 42802 ; WX 1301 ; N uniA732 ; G 3205 -U 42803 ; WX 983 ; N uniA733 ; G 3206 -U 42804 ; WX 1261 ; N uniA734 ; G 3207 -U 42805 ; WX 985 ; N uniA735 ; G 3208 -U 42806 ; WX 1168 ; N uniA736 ; G 3209 -U 42807 ; WX 1007 ; N uniA737 ; G 3210 -U 42808 ; WX 1016 ; N uniA738 ; G 3211 -U 42809 ; WX 832 ; N uniA739 ; G 3212 -U 42810 ; WX 1016 ; N uniA73A ; G 3213 -U 42811 ; WX 832 ; N uniA73B ; G 3214 -U 42812 ; WX 994 ; N uniA73C ; G 3215 -U 42813 ; WX 746 ; N uniA73D ; G 3216 -U 42814 ; WX 796 ; N uniA73E ; G 3217 -U 42815 ; WX 609 ; N uniA73F ; G 3218 -U 42816 ; WX 869 ; N uniA740 ; G 3219 -U 42817 ; WX 693 ; N uniA741 ; G 3220 -U 42822 ; WX 916 ; N uniA746 ; G 3221 -U 42823 ; WX 581 ; N uniA747 ; G 3222 -U 42826 ; WX 1010 ; N uniA74A ; G 3223 -U 42827 ; WX 770 ; N uniA74B ; G 3224 -U 42830 ; WX 1448 ; N uniA74E ; G 3225 -U 42831 ; WX 1060 ; N uniA74F ; G 3226 -U 42856 ; WX 787 ; N uniA768 ; G 3227 -U 42857 ; WX 716 ; N uniA769 ; G 3228 -U 42875 ; WX 694 ; N uniA77B ; G 3229 -U 42876 ; WX 527 ; N uniA77C ; G 3230 -U 42880 ; WX 703 ; N uniA780 ; G 3231 -U 42881 ; WX 380 ; N uniA781 ; G 3232 -U 42882 ; WX 872 ; N uniA782 ; G 3233 -U 42883 ; WX 727 ; N uniA783 ; G 3234 -U 42884 ; WX 694 ; N uniA784 ; G 3235 -U 42885 ; WX 527 ; N uniA785 ; G 3236 -U 42886 ; WX 796 ; N uniA786 ; G 3237 -U 42887 ; WX 609 ; N uniA787 ; G 3238 -U 42891 ; WX 439 ; N uniA78B ; G 3239 -U 42892 ; WX 306 ; N uniA78C ; G 3240 -U 42893 ; WX 913 ; N uniA78D ; G 3241 -U 42896 ; WX 914 ; N uniA790 ; G 3242 -U 42897 ; WX 812 ; N uniA791 ; G 3243 -U 42922 ; WX 945 ; N uniA7AA ; G 3244 -U 43000 ; WX 595 ; N uniA7F8 ; G 3245 -U 43001 ; WX 647 ; N uniA7F9 ; G 3246 -U 43002 ; WX 1068 ; N uniA7FA ; G 3247 -U 43003 ; WX 710 ; N uniA7FB ; G 3248 -U 43004 ; WX 752 ; N uniA7FC ; G 3249 -U 43005 ; WX 1107 ; N uniA7FD ; G 3250 -U 43006 ; WX 468 ; N uniA7FE ; G 3251 -U 43007 ; WX 1286 ; N uniA7FF ; G 3252 -U 62464 ; WX 726 ; N uniF400 ; G 3253 -U 62465 ; WX 737 ; N uniF401 ; G 3254 -U 62466 ; WX 786 ; N uniF402 ; G 3255 -U 62467 ; WX 1019 ; N uniF403 ; G 3256 -U 62468 ; WX 737 ; N uniF404 ; G 3257 -U 62469 ; WX 731 ; N uniF405 ; G 3258 -U 62470 ; WX 796 ; N uniF406 ; G 3259 -U 62471 ; WX 1058 ; N uniF407 ; G 3260 -U 62472 ; WX 737 ; N uniF408 ; G 3261 -U 62473 ; WX 737 ; N uniF409 ; G 3262 -U 62474 ; WX 1329 ; N uniF40A ; G 3263 -U 62475 ; WX 754 ; N uniF40B ; G 3264 -U 62476 ; WX 753 ; N uniF40C ; G 3265 -U 62477 ; WX 1024 ; N uniF40D ; G 3266 -U 62478 ; WX 737 ; N uniF40E ; G 3267 -U 62479 ; WX 753 ; N uniF40F ; G 3268 -U 62480 ; WX 1070 ; N uniF410 ; G 3269 -U 62481 ; WX 818 ; N uniF411 ; G 3270 -U 62482 ; WX 870 ; N uniF412 ; G 3271 -U 62483 ; WX 819 ; N uniF413 ; G 3272 -U 62484 ; WX 1016 ; N uniF414 ; G 3273 -U 62485 ; WX 753 ; N uniF415 ; G 3274 -U 62486 ; WX 1008 ; N uniF416 ; G 3275 -U 62487 ; WX 752 ; N uniF417 ; G 3276 -U 62488 ; WX 760 ; N uniF418 ; G 3277 -U 62489 ; WX 753 ; N uniF419 ; G 3278 -U 62490 ; WX 800 ; N uniF41A ; G 3279 -U 62491 ; WX 753 ; N uniF41B ; G 3280 -U 62492 ; WX 760 ; N uniF41C ; G 3281 -U 62493 ; WX 738 ; N uniF41D ; G 3282 -U 62494 ; WX 801 ; N uniF41E ; G 3283 -U 62495 ; WX 956 ; N uniF41F ; G 3284 -U 62496 ; WX 736 ; N uniF420 ; G 3285 -U 62497 ; WX 847 ; N uniF421 ; G 3286 -U 62498 ; WX 737 ; N uniF422 ; G 3287 -U 62499 ; WX 737 ; N uniF423 ; G 3288 -U 62500 ; WX 737 ; N uniF424 ; G 3289 -U 62501 ; WX 793 ; N uniF425 ; G 3290 -U 62502 ; WX 1033 ; N uniF426 ; G 3291 -U 62504 ; WX 904 ; N uniF428 ; G 3292 -U 63172 ; WX 380 ; N uniF6C4 ; G 3293 -U 63173 ; WX 667 ; N uniF6C5 ; G 3294 -U 63174 ; WX 699 ; N uniF6C6 ; G 3295 -U 63175 ; WX 727 ; N uniF6C7 ; G 3296 -U 63176 ; WX 1058 ; N uniF6C8 ; G 3297 -U 63185 ; WX 500 ; N cyrBreve ; G 3298 -U 63188 ; WX 500 ; N cyrbreve ; G 3299 -U 64256 ; WX 827 ; N uniFB00 ; G 3300 -U 64257 ; WX 727 ; N fi ; G 3301 -U 64258 ; WX 727 ; N fl ; G 3302 -U 64259 ; WX 1108 ; N uniFB03 ; G 3303 -U 64260 ; WX 1146 ; N uniFB04 ; G 3304 -U 64261 ; WX 879 ; N uniFB05 ; G 3305 -U 64262 ; WX 971 ; N uniFB06 ; G 3306 -U 65024 ; WX 0 ; N uniFE00 ; G 3307 -U 65025 ; WX 0 ; N uniFE01 ; G 3308 -U 65026 ; WX 0 ; N uniFE02 ; G 3309 -U 65027 ; WX 0 ; N uniFE03 ; G 3310 -U 65028 ; WX 0 ; N uniFE04 ; G 3311 -U 65029 ; WX 0 ; N uniFE05 ; G 3312 -U 65030 ; WX 0 ; N uniFE06 ; G 3313 -U 65031 ; WX 0 ; N uniFE07 ; G 3314 -U 65032 ; WX 0 ; N uniFE08 ; G 3315 -U 65033 ; WX 0 ; N uniFE09 ; G 3316 -U 65034 ; WX 0 ; N uniFE0A ; G 3317 -U 65035 ; WX 0 ; N uniFE0B ; G 3318 -U 65036 ; WX 0 ; N uniFE0C ; G 3319 -U 65037 ; WX 0 ; N uniFE0D ; G 3320 -U 65038 ; WX 0 ; N uniFE0E ; G 3321 -U 65039 ; WX 0 ; N uniFE0F ; G 3322 -U 65529 ; WX 0 ; N uniFFF9 ; G 3323 -U 65530 ; WX 0 ; N uniFFFA ; G 3324 -U 65531 ; WX 0 ; N uniFFFB ; G 3325 -U 65532 ; WX 0 ; N uniFFFC ; G 3326 -U 65533 ; WX 1113 ; N uniFFFD ; G 3327 -EndCharMetrics -StartKernData -StartKernPairs 1153 - -KPX dollar seven -112 -KPX dollar nine -149 -KPX dollar colon -102 -KPX dollar less -102 -KPX dollar I -36 -KPX dollar W -36 -KPX dollar Y -83 -KPX dollar Z -83 -KPX dollar backslash -83 -KPX dollar questiondown -83 -KPX dollar Aacute -83 -KPX dollar Hbar -112 -KPX dollar hbar -36 -KPX dollar lacute -102 - -KPX percent ampersand 38 -KPX percent asterisk 38 -KPX percent two 38 -KPX percent less -36 -KPX percent Egrave 38 -KPX percent Icircumflex 38 -KPX percent agrave 38 -KPX percent Ebreve 38 -KPX percent lacute -36 - - -KPX quotesingle nine -36 - - -KPX parenright dollar -120 -KPX parenright D -112 -KPX parenright H -112 -KPX parenright R -112 -KPX parenright U -36 -KPX parenright X -36 -KPX parenright cent -112 -KPX parenright sterling -112 -KPX parenright currency -112 -KPX parenright yen -112 -KPX parenright brokenbar -112 -KPX parenright section -112 -KPX parenright dieresis -112 -KPX parenright ordfeminine -112 -KPX parenright guillemotleft -112 -KPX parenright logicalnot -112 -KPX parenright sfthyphen -112 -KPX parenright acute -112 -KPX parenright mu -112 -KPX parenright paragraph -112 -KPX parenright periodcentered -112 -KPX parenright cedilla -112 -KPX parenright ordmasculine -112 -KPX parenright guillemotright -36 -KPX parenright onequarter -36 -KPX parenright onehalf -36 -KPX parenright threequarters -36 -KPX parenright Yacute -112 -KPX parenright ebreve -112 -KPX parenright edotaccent -36 -KPX parenright ecaron -36 -KPX parenright dotlessi -36 - - - -KPX period dollar -83 -KPX period ampersand -55 -KPX period two -55 -KPX period eight -73 -KPX period colon -73 -KPX period less -55 -KPX period H -45 -KPX period R -45 -KPX period X -45 -KPX period backslash -92 -KPX period ordfeminine -45 -KPX period guillemotleft -45 -KPX period logicalnot -45 -KPX period sfthyphen -45 -KPX period acute -45 -KPX period mu -45 -KPX period paragraph -45 -KPX period periodcentered -45 -KPX period cedilla -45 -KPX period ordmasculine -36 -KPX period guillemotright -45 -KPX period onequarter -45 -KPX period onehalf -45 -KPX period threequarters -45 -KPX period questiondown -92 -KPX period Aacute -92 -KPX period Egrave -55 -KPX period Icircumflex -55 -KPX period Yacute -45 -KPX period Ebreve -55 -KPX period ebreve -45 -KPX period Idot -73 -KPX period dotlessi -45 -KPX period lacute -55 - -KPX slash seven -167 -KPX slash eight -112 -KPX slash nine -243 -KPX slash colon -139 -KPX slash less -131 -KPX slash backslash -73 -KPX slash questiondown -73 -KPX slash Aacute -73 -KPX slash Hbar -167 -KPX slash Idot -112 -KPX slash lacute -131 - - -KPX two nine -36 -KPX two semicolon -36 - -KPX three dollar -149 -KPX three D -55 -KPX three H -55 -KPX three R -55 -KPX three cent -55 -KPX three sterling -55 -KPX three currency -55 -KPX three yen -55 -KPX three brokenbar -55 -KPX three section -55 -KPX three dieresis -55 -KPX three ordfeminine -55 -KPX three guillemotleft -55 -KPX three logicalnot -55 -KPX three sfthyphen -55 -KPX three acute -55 -KPX three mu -55 -KPX three paragraph -55 -KPX three periodcentered -55 -KPX three cedilla -55 -KPX three ordmasculine -55 -KPX three Yacute -55 -KPX three ebreve -55 - - -KPX five seven -36 -KPX five nine -73 -KPX five colon -45 -KPX five less -63 -KPX five D 47 -KPX five backslash -36 -KPX five cent 47 -KPX five sterling 47 -KPX five currency 47 -KPX five yen 47 -KPX five brokenbar 47 -KPX five section 47 -KPX five dieresis 47 -KPX five ordmasculine 38 -KPX five questiondown -36 -KPX five Aacute -36 -KPX five Hbar -36 -KPX five lacute -63 - -KPX six six -45 -KPX six Gdotaccent -45 -KPX six Gcommaaccent -45 - -KPX seven dollar -112 -KPX seven seven -73 -KPX seven D -196 -KPX seven F -235 -KPX seven H -235 -KPX seven R -235 -KPX seven U -149 -KPX seven V -188 -KPX seven X -188 -KPX seven Z -225 -KPX seven backslash -225 -KPX seven m -149 -KPX seven braceright -149 -KPX seven cent -196 -KPX seven sterling -196 -KPX seven currency -196 -KPX seven yen -196 -KPX seven brokenbar -196 -KPX seven section -196 -KPX seven dieresis -159 -KPX seven copyright -235 -KPX seven ordfeminine -235 -KPX seven guillemotleft -235 -KPX seven logicalnot -235 -KPX seven sfthyphen -235 -KPX seven acute -235 -KPX seven mu -235 -KPX seven paragraph -235 -KPX seven periodcentered -235 -KPX seven cedilla -235 -KPX seven ordmasculine -159 -KPX seven guillemotright -188 -KPX seven onequarter -188 -KPX seven onehalf -188 -KPX seven threequarters -188 -KPX seven questiondown -225 -KPX seven Aacute -225 -KPX seven Eacute -235 -KPX seven Idieresis -235 -KPX seven Yacute -235 -KPX seven ebreve -159 -KPX seven edotaccent -149 -KPX seven ecaron -149 -KPX seven gdotaccent -188 -KPX seven gcommaaccent -188 -KPX seven Hbar -73 -KPX seven dotlessi -188 - -KPX eight dollar -63 - -KPX nine dollar -159 -KPX nine two -36 -KPX nine D -188 -KPX nine H -188 -KPX nine L -36 -KPX nine R -188 -KPX nine X -131 -KPX nine backslash -83 -KPX nine cent -188 -KPX nine sterling -188 -KPX nine currency -188 -KPX nine yen -188 -KPX nine brokenbar -188 -KPX nine section -188 -KPX nine dieresis -188 -KPX nine ordfeminine -188 -KPX nine guillemotleft -188 -KPX nine logicalnot -188 -KPX nine sfthyphen -188 -KPX nine acute -188 -KPX nine mu -188 -KPX nine paragraph -188 -KPX nine periodcentered -188 -KPX nine cedilla -188 -KPX nine ordmasculine -188 -KPX nine guillemotright -131 -KPX nine onequarter -131 -KPX nine onehalf -131 -KPX nine threequarters -131 -KPX nine questiondown -83 -KPX nine Aacute -83 -KPX nine Yacute -188 -KPX nine Ebreve -36 -KPX nine ebreve -188 -KPX nine dotlessi -131 - -KPX colon dollar -131 -KPX colon D -178 -KPX colon H -167 -KPX colon L -36 -KPX colon R -167 -KPX colon U -92 -KPX colon X -83 -KPX colon backslash -45 -KPX colon cent -178 -KPX colon sterling -178 -KPX colon currency -178 -KPX colon yen -178 -KPX colon brokenbar -178 -KPX colon section -178 -KPX colon dieresis -139 -KPX colon ordfeminine -167 -KPX colon guillemotleft -167 -KPX colon logicalnot -167 -KPX colon sfthyphen -167 -KPX colon acute -167 -KPX colon mu -167 -KPX colon paragraph -167 -KPX colon periodcentered -167 -KPX colon cedilla -167 -KPX colon ordmasculine -167 -KPX colon guillemotright -83 -KPX colon onequarter -83 -KPX colon onehalf -83 -KPX colon threequarters -83 -KPX colon questiondown -45 -KPX colon Aacute -45 -KPX colon Yacute -167 -KPX colon ebreve -167 -KPX colon edotaccent -92 -KPX colon ecaron -92 -KPX colon dotlessi -83 - -KPX semicolon dollar -73 -KPX semicolon ampersand -36 -KPX semicolon two -36 -KPX semicolon Egrave -36 -KPX semicolon Icircumflex -36 -KPX semicolon Ebreve -36 - -KPX less dollar -131 -KPX less ampersand -36 -KPX less D -159 -KPX less H -178 -KPX less L -36 -KPX less R -178 -KPX less X -178 -KPX less cent -159 -KPX less sterling -159 -KPX less currency -159 -KPX less yen -159 -KPX less brokenbar -159 -KPX less section -159 -KPX less dieresis -159 -KPX less ordfeminine -178 -KPX less guillemotleft -178 -KPX less logicalnot -178 -KPX less sfthyphen -178 -KPX less acute -178 -KPX less mu -178 -KPX less paragraph -178 -KPX less periodcentered -178 -KPX less cedilla -178 -KPX less ordmasculine -178 -KPX less guillemotright -178 -KPX less onequarter -178 -KPX less onehalf -178 -KPX less threequarters -178 -KPX less Egrave -36 -KPX less Icircumflex -36 -KPX less Yacute -178 -KPX less ebreve -178 -KPX less dotlessi -178 - - - - - - - - - - -KPX m hyphen -73 -KPX m seven -149 -KPX m Hbar -149 - -KPX braceright hyphen -73 -KPX braceright seven -149 -KPX braceright Hbar -149 - - - - - - - - - - - - - - -KPX Eth nine -36 - - - -KPX ucircumflex seven -167 -KPX ucircumflex eight -112 -KPX ucircumflex nine -243 -KPX ucircumflex colon -139 -KPX ucircumflex less -131 -KPX ucircumflex backslash -73 -KPX ucircumflex questiondown -73 -KPX ucircumflex Aacute -73 -KPX ucircumflex Hbar -167 -KPX ucircumflex Idot -112 -KPX ucircumflex lacute -131 - -KPX ydieresis seven -167 -KPX ydieresis eight -112 -KPX ydieresis nine -243 -KPX ydieresis colon -139 -KPX ydieresis less -131 -KPX ydieresis backslash -73 -KPX ydieresis questiondown -73 -KPX ydieresis Aacute -73 -KPX ydieresis Hbar -167 -KPX ydieresis Idot -112 -KPX ydieresis lacute -131 - -KPX Abreve O -241 - -KPX abreve seven -167 -KPX abreve eight -112 -KPX abreve nine -243 -KPX abreve colon -139 -KPX abreve less -131 -KPX abreve backslash -73 -KPX abreve questiondown -73 -KPX abreve Aacute -73 -KPX abreve Hbar -167 -KPX abreve Idot -112 -KPX abreve lacute -131 - - - -KPX Edotaccent seven -36 -KPX Edotaccent nine -73 -KPX Edotaccent colon -45 -KPX Edotaccent less -63 -KPX Edotaccent D 47 -KPX Edotaccent backslash -36 -KPX Edotaccent cent 47 -KPX Edotaccent sterling 47 -KPX Edotaccent currency 47 -KPX Edotaccent yen 47 -KPX Edotaccent brokenbar 47 -KPX Edotaccent section 47 -KPX Edotaccent dieresis 47 -KPX Edotaccent ordmasculine 38 -KPX Edotaccent questiondown -36 -KPX Edotaccent Aacute -36 -KPX Edotaccent Hbar -36 -KPX Edotaccent lacute -63 - - -KPX Ecaron seven -36 -KPX Ecaron nine -73 -KPX Ecaron colon -45 -KPX Ecaron less -63 -KPX Ecaron D 47 -KPX Ecaron backslash -36 -KPX Ecaron cent 47 -KPX Ecaron sterling 47 -KPX Ecaron currency 47 -KPX Ecaron yen 47 -KPX Ecaron brokenbar 47 -KPX Ecaron section 47 -KPX Ecaron dieresis 47 -KPX Ecaron ordmasculine 38 -KPX Ecaron questiondown -36 -KPX Ecaron Aacute -36 -KPX Ecaron Hbar -36 -KPX Ecaron lacute -63 - - -KPX Gdotaccent six -45 -KPX Gdotaccent Gdotaccent -45 -KPX Gdotaccent Gcommaaccent -45 - -KPX Gcommaaccent six -45 -KPX Gcommaaccent Gdotaccent -45 -KPX Gcommaaccent Gcommaaccent -45 - -KPX Hbar dollar -112 -KPX Hbar seven -73 -KPX Hbar D -196 -KPX Hbar F -235 -KPX Hbar H -235 -KPX Hbar R -235 -KPX Hbar U -149 -KPX Hbar V -188 -KPX Hbar X -188 -KPX Hbar Z -225 -KPX Hbar backslash -225 -KPX Hbar m -149 -KPX Hbar braceright -149 -KPX Hbar cent -196 -KPX Hbar sterling -196 -KPX Hbar currency -196 -KPX Hbar yen -196 -KPX Hbar brokenbar -196 -KPX Hbar section -196 -KPX Hbar dieresis -159 -KPX Hbar copyright -235 -KPX Hbar ordfeminine -235 -KPX Hbar guillemotleft -235 -KPX Hbar logicalnot -235 -KPX Hbar sfthyphen -235 -KPX Hbar acute -235 -KPX Hbar mu -235 -KPX Hbar paragraph -235 -KPX Hbar periodcentered -235 -KPX Hbar cedilla -235 -KPX Hbar ordmasculine -159 -KPX Hbar guillemotright -188 -KPX Hbar onequarter -188 -KPX Hbar onehalf -188 -KPX Hbar threequarters -188 -KPX Hbar questiondown -225 -KPX Hbar Aacute -225 -KPX Hbar Eacute -235 -KPX Hbar Idieresis -235 -KPX Hbar Yacute -235 -KPX Hbar ebreve -159 -KPX Hbar edotaccent -149 -KPX Hbar ecaron -149 -KPX Hbar gdotaccent -188 -KPX Hbar gcommaaccent -188 -KPX Hbar Hbar -73 -KPX Hbar dotlessi -188 - -KPX Idot dollar -63 - -KPX lacute dollar -131 -KPX lacute ampersand -36 -KPX lacute D -159 -KPX lacute H -178 -KPX lacute L -36 -KPX lacute R -178 -KPX lacute X -178 -KPX lacute cent -159 -KPX lacute sterling -159 -KPX lacute currency -159 -KPX lacute yen -159 -KPX lacute brokenbar -159 -KPX lacute section -159 -KPX lacute dieresis -159 -KPX lacute ordfeminine -178 -KPX lacute guillemotleft -178 -KPX lacute logicalnot -178 -KPX lacute sfthyphen -178 -KPX lacute acute -178 -KPX lacute mu -178 -KPX lacute paragraph -178 -KPX lacute periodcentered -178 -KPX lacute cedilla -178 -KPX lacute ordmasculine -178 -KPX lacute guillemotright -178 -KPX lacute onequarter -178 -KPX lacute onehalf -178 -KPX lacute threequarters -178 -KPX lacute Egrave -36 -KPX lacute Icircumflex -36 -KPX lacute Yacute -178 -KPX lacute ebreve -178 -KPX lacute dotlessi -178 - - -KPX uni027D dollar -282 -EndKernPairs -EndKernData -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSerif-Italic.ttf b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSerif-Italic.ttf deleted file mode 100644 index 805daf22..00000000 Binary files a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSerif-Italic.ttf and /dev/null differ diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSerif-Italic.ufm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSerif-Italic.ufm deleted file mode 100644 index e9d62b8e..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSerif-Italic.ufm +++ /dev/null @@ -1,3883 +0,0 @@ -StartFontMetrics 4.1 -Notice Converted by PHP-font-lib -Comment https://github.com/PhenX/php-font-lib -EncodingScheme FontSpecific -FontName DejaVu Serif -FontSubfamily Italic -UniqueID DejaVu Serif Italic -FullName DejaVu Serif Italic -Version Version 2.37 -PostScriptName DejaVuSerif-Italic -Manufacturer DejaVu fonts team -FontVendorURL http://dejavu.sourceforge.net -LicenseURL http://dejavu.sourceforge.net/wiki/index.php/License -PreferredFamily DejaVu Serif -PreferredSubfamily Italic -Weight Medium -ItalicAngle -11 -IsFixedPitch false -UnderlineThickness 44 -UnderlinePosition -63 -FontHeightOffset 0 -Ascender 928 -Descender -236 -FontBBox -839 -347 1645 1109 -StartCharMetrics 3507 -U 32 ; WX 318 ; N space ; G 3 -U 33 ; WX 402 ; N exclam ; G 4 -U 34 ; WX 460 ; N quotedbl ; G 5 -U 35 ; WX 838 ; N numbersign ; G 6 -U 36 ; WX 636 ; N dollar ; G 7 -U 37 ; WX 950 ; N percent ; G 8 -U 38 ; WX 890 ; N ampersand ; G 9 -U 39 ; WX 275 ; N quotesingle ; G 10 -U 40 ; WX 390 ; N parenleft ; G 11 -U 41 ; WX 390 ; N parenright ; G 12 -U 42 ; WX 500 ; N asterisk ; G 13 -U 43 ; WX 838 ; N plus ; G 14 -U 44 ; WX 318 ; N comma ; G 15 -U 45 ; WX 338 ; N hyphen ; G 16 -U 46 ; WX 318 ; N period ; G 17 -U 47 ; WX 337 ; N slash ; G 18 -U 48 ; WX 636 ; N zero ; G 19 -U 49 ; WX 636 ; N one ; G 20 -U 50 ; WX 636 ; N two ; G 21 -U 51 ; WX 636 ; N three ; G 22 -U 52 ; WX 636 ; N four ; G 23 -U 53 ; WX 636 ; N five ; G 24 -U 54 ; WX 636 ; N six ; G 25 -U 55 ; WX 636 ; N seven ; G 26 -U 56 ; WX 636 ; N eight ; G 27 -U 57 ; WX 636 ; N nine ; G 28 -U 58 ; WX 337 ; N colon ; G 29 -U 59 ; WX 337 ; N semicolon ; G 30 -U 60 ; WX 838 ; N less ; G 31 -U 61 ; WX 838 ; N equal ; G 32 -U 62 ; WX 838 ; N greater ; G 33 -U 63 ; WX 536 ; N question ; G 34 -U 64 ; WX 1000 ; N at ; G 35 -U 65 ; WX 722 ; N A ; G 36 -U 66 ; WX 735 ; N B ; G 37 -U 67 ; WX 765 ; N C ; G 38 -U 68 ; WX 802 ; N D ; G 39 -U 69 ; WX 730 ; N E ; G 40 -U 70 ; WX 694 ; N F ; G 41 -U 71 ; WX 799 ; N G ; G 42 -U 72 ; WX 872 ; N H ; G 43 -U 73 ; WX 395 ; N I ; G 44 -U 74 ; WX 401 ; N J ; G 45 -U 75 ; WX 747 ; N K ; G 46 -U 76 ; WX 664 ; N L ; G 47 -U 77 ; WX 1024 ; N M ; G 48 -U 78 ; WX 875 ; N N ; G 49 -U 79 ; WX 820 ; N O ; G 50 -U 80 ; WX 673 ; N P ; G 51 -U 81 ; WX 820 ; N Q ; G 52 -U 82 ; WX 753 ; N R ; G 53 -U 83 ; WX 685 ; N S ; G 54 -U 84 ; WX 667 ; N T ; G 55 -U 85 ; WX 843 ; N U ; G 56 -U 86 ; WX 722 ; N V ; G 57 -U 87 ; WX 1028 ; N W ; G 58 -U 88 ; WX 712 ; N X ; G 59 -U 89 ; WX 660 ; N Y ; G 60 -U 90 ; WX 695 ; N Z ; G 61 -U 91 ; WX 390 ; N bracketleft ; G 62 -U 92 ; WX 337 ; N backslash ; G 63 -U 93 ; WX 390 ; N bracketright ; G 64 -U 94 ; WX 838 ; N asciicircum ; G 65 -U 95 ; WX 500 ; N underscore ; G 66 -U 96 ; WX 500 ; N grave ; G 67 -U 97 ; WX 596 ; N a ; G 68 -U 98 ; WX 640 ; N b ; G 69 -U 99 ; WX 560 ; N c ; G 70 -U 100 ; WX 640 ; N d ; G 71 -U 101 ; WX 592 ; N e ; G 72 -U 102 ; WX 370 ; N f ; G 73 -U 103 ; WX 640 ; N g ; G 74 -U 104 ; WX 644 ; N h ; G 75 -U 105 ; WX 320 ; N i ; G 76 -U 106 ; WX 310 ; N j ; G 77 -U 107 ; WX 606 ; N k ; G 78 -U 108 ; WX 320 ; N l ; G 79 -U 109 ; WX 948 ; N m ; G 80 -U 110 ; WX 644 ; N n ; G 81 -U 111 ; WX 602 ; N o ; G 82 -U 112 ; WX 640 ; N p ; G 83 -U 113 ; WX 640 ; N q ; G 84 -U 114 ; WX 478 ; N r ; G 85 -U 115 ; WX 513 ; N s ; G 86 -U 116 ; WX 402 ; N t ; G 87 -U 117 ; WX 644 ; N u ; G 88 -U 118 ; WX 565 ; N v ; G 89 -U 119 ; WX 856 ; N w ; G 90 -U 120 ; WX 564 ; N x ; G 91 -U 121 ; WX 565 ; N y ; G 92 -U 122 ; WX 527 ; N z ; G 93 -U 123 ; WX 636 ; N braceleft ; G 94 -U 124 ; WX 337 ; N bar ; G 95 -U 125 ; WX 636 ; N braceright ; G 96 -U 126 ; WX 838 ; N asciitilde ; G 97 -U 160 ; WX 318 ; N nbspace ; G 98 -U 161 ; WX 402 ; N exclamdown ; G 99 -U 162 ; WX 636 ; N cent ; G 100 -U 163 ; WX 636 ; N sterling ; G 101 -U 164 ; WX 636 ; N currency ; G 102 -U 165 ; WX 636 ; N yen ; G 103 -U 166 ; WX 337 ; N brokenbar ; G 104 -U 167 ; WX 500 ; N section ; G 105 -U 168 ; WX 500 ; N dieresis ; G 106 -U 169 ; WX 1000 ; N copyright ; G 107 -U 170 ; WX 475 ; N ordfeminine ; G 108 -U 171 ; WX 612 ; N guillemotleft ; G 109 -U 172 ; WX 838 ; N logicalnot ; G 110 -U 173 ; WX 338 ; N sfthyphen ; G 111 -U 174 ; WX 1000 ; N registered ; G 112 -U 175 ; WX 500 ; N macron ; G 113 -U 176 ; WX 500 ; N degree ; G 114 -U 177 ; WX 838 ; N plusminus ; G 115 -U 178 ; WX 401 ; N twosuperior ; G 116 -U 179 ; WX 401 ; N threesuperior ; G 117 -U 180 ; WX 500 ; N acute ; G 118 -U 181 ; WX 650 ; N mu ; G 119 -U 182 ; WX 636 ; N paragraph ; G 120 -U 183 ; WX 318 ; N periodcentered ; G 121 -U 184 ; WX 500 ; N cedilla ; G 122 -U 185 ; WX 401 ; N onesuperior ; G 123 -U 186 ; WX 470 ; N ordmasculine ; G 124 -U 187 ; WX 612 ; N guillemotright ; G 125 -U 188 ; WX 969 ; N onequarter ; G 126 -U 189 ; WX 969 ; N onehalf ; G 127 -U 190 ; WX 969 ; N threequarters ; G 128 -U 191 ; WX 536 ; N questiondown ; G 129 -U 192 ; WX 722 ; N Agrave ; G 130 -U 193 ; WX 722 ; N Aacute ; G 131 -U 194 ; WX 722 ; N Acircumflex ; G 132 -U 195 ; WX 722 ; N Atilde ; G 133 -U 196 ; WX 722 ; N Adieresis ; G 134 -U 197 ; WX 722 ; N Aring ; G 135 -U 198 ; WX 1001 ; N AE ; G 136 -U 199 ; WX 765 ; N Ccedilla ; G 137 -U 200 ; WX 730 ; N Egrave ; G 138 -U 201 ; WX 730 ; N Eacute ; G 139 -U 202 ; WX 730 ; N Ecircumflex ; G 140 -U 203 ; WX 730 ; N Edieresis ; G 141 -U 204 ; WX 395 ; N Igrave ; G 142 -U 205 ; WX 395 ; N Iacute ; G 143 -U 206 ; WX 395 ; N Icircumflex ; G 144 -U 207 ; WX 395 ; N Idieresis ; G 145 -U 208 ; WX 807 ; N Eth ; G 146 -U 209 ; WX 875 ; N Ntilde ; G 147 -U 210 ; WX 820 ; N Ograve ; G 148 -U 211 ; WX 820 ; N Oacute ; G 149 -U 212 ; WX 820 ; N Ocircumflex ; G 150 -U 213 ; WX 820 ; N Otilde ; G 151 -U 214 ; WX 820 ; N Odieresis ; G 152 -U 215 ; WX 838 ; N multiply ; G 153 -U 216 ; WX 820 ; N Oslash ; G 154 -U 217 ; WX 843 ; N Ugrave ; G 155 -U 218 ; WX 843 ; N Uacute ; G 156 -U 219 ; WX 843 ; N Ucircumflex ; G 157 -U 220 ; WX 843 ; N Udieresis ; G 158 -U 221 ; WX 660 ; N Yacute ; G 159 -U 222 ; WX 676 ; N Thorn ; G 160 -U 223 ; WX 668 ; N germandbls ; G 161 -U 224 ; WX 596 ; N agrave ; G 162 -U 225 ; WX 596 ; N aacute ; G 163 -U 226 ; WX 596 ; N acircumflex ; G 164 -U 227 ; WX 596 ; N atilde ; G 165 -U 228 ; WX 596 ; N adieresis ; G 166 -U 229 ; WX 596 ; N aring ; G 167 -U 230 ; WX 940 ; N ae ; G 168 -U 231 ; WX 560 ; N ccedilla ; G 169 -U 232 ; WX 592 ; N egrave ; G 170 -U 233 ; WX 592 ; N eacute ; G 171 -U 234 ; WX 592 ; N ecircumflex ; G 172 -U 235 ; WX 592 ; N edieresis ; G 173 -U 236 ; WX 320 ; N igrave ; G 174 -U 237 ; WX 320 ; N iacute ; G 175 -U 238 ; WX 320 ; N icircumflex ; G 176 -U 239 ; WX 320 ; N idieresis ; G 177 -U 240 ; WX 602 ; N eth ; G 178 -U 241 ; WX 644 ; N ntilde ; G 179 -U 242 ; WX 602 ; N ograve ; G 180 -U 243 ; WX 602 ; N oacute ; G 181 -U 244 ; WX 602 ; N ocircumflex ; G 182 -U 245 ; WX 602 ; N otilde ; G 183 -U 246 ; WX 602 ; N odieresis ; G 184 -U 247 ; WX 838 ; N divide ; G 185 -U 248 ; WX 602 ; N oslash ; G 186 -U 249 ; WX 644 ; N ugrave ; G 187 -U 250 ; WX 644 ; N uacute ; G 188 -U 251 ; WX 644 ; N ucircumflex ; G 189 -U 252 ; WX 644 ; N udieresis ; G 190 -U 253 ; WX 565 ; N yacute ; G 191 -U 254 ; WX 640 ; N thorn ; G 192 -U 255 ; WX 565 ; N ydieresis ; G 193 -U 256 ; WX 722 ; N Amacron ; G 194 -U 257 ; WX 596 ; N amacron ; G 195 -U 258 ; WX 722 ; N Abreve ; G 196 -U 259 ; WX 596 ; N abreve ; G 197 -U 260 ; WX 722 ; N Aogonek ; G 198 -U 261 ; WX 596 ; N aogonek ; G 199 -U 262 ; WX 765 ; N Cacute ; G 200 -U 263 ; WX 560 ; N cacute ; G 201 -U 264 ; WX 765 ; N Ccircumflex ; G 202 -U 265 ; WX 560 ; N ccircumflex ; G 203 -U 266 ; WX 765 ; N Cdotaccent ; G 204 -U 267 ; WX 560 ; N cdotaccent ; G 205 -U 268 ; WX 765 ; N Ccaron ; G 206 -U 269 ; WX 560 ; N ccaron ; G 207 -U 270 ; WX 802 ; N Dcaron ; G 208 -U 271 ; WX 640 ; N dcaron ; G 209 -U 272 ; WX 807 ; N Dcroat ; G 210 -U 273 ; WX 640 ; N dmacron ; G 211 -U 274 ; WX 730 ; N Emacron ; G 212 -U 275 ; WX 592 ; N emacron ; G 213 -U 276 ; WX 730 ; N Ebreve ; G 214 -U 277 ; WX 592 ; N ebreve ; G 215 -U 278 ; WX 730 ; N Edotaccent ; G 216 -U 279 ; WX 592 ; N edotaccent ; G 217 -U 280 ; WX 730 ; N Eogonek ; G 218 -U 281 ; WX 592 ; N eogonek ; G 219 -U 282 ; WX 730 ; N Ecaron ; G 220 -U 283 ; WX 592 ; N ecaron ; G 221 -U 284 ; WX 799 ; N Gcircumflex ; G 222 -U 285 ; WX 640 ; N gcircumflex ; G 223 -U 286 ; WX 799 ; N Gbreve ; G 224 -U 287 ; WX 640 ; N gbreve ; G 225 -U 288 ; WX 799 ; N Gdotaccent ; G 226 -U 289 ; WX 640 ; N gdotaccent ; G 227 -U 290 ; WX 799 ; N Gcommaaccent ; G 228 -U 291 ; WX 640 ; N gcommaaccent ; G 229 -U 292 ; WX 872 ; N Hcircumflex ; G 230 -U 293 ; WX 644 ; N hcircumflex ; G 231 -U 294 ; WX 872 ; N Hbar ; G 232 -U 295 ; WX 644 ; N hbar ; G 233 -U 296 ; WX 395 ; N Itilde ; G 234 -U 297 ; WX 320 ; N itilde ; G 235 -U 298 ; WX 395 ; N Imacron ; G 236 -U 299 ; WX 320 ; N imacron ; G 237 -U 300 ; WX 395 ; N Ibreve ; G 238 -U 301 ; WX 320 ; N ibreve ; G 239 -U 302 ; WX 395 ; N Iogonek ; G 240 -U 303 ; WX 320 ; N iogonek ; G 241 -U 304 ; WX 395 ; N Idot ; G 242 -U 305 ; WX 320 ; N dotlessi ; G 243 -U 306 ; WX 801 ; N IJ ; G 244 -U 307 ; WX 533 ; N ij ; G 245 -U 308 ; WX 401 ; N Jcircumflex ; G 246 -U 309 ; WX 310 ; N jcircumflex ; G 247 -U 310 ; WX 747 ; N Kcommaaccent ; G 248 -U 311 ; WX 606 ; N kcommaaccent ; G 249 -U 312 ; WX 606 ; N kgreenlandic ; G 250 -U 313 ; WX 664 ; N Lacute ; G 251 -U 314 ; WX 320 ; N lacute ; G 252 -U 315 ; WX 664 ; N Lcommaaccent ; G 253 -U 316 ; WX 320 ; N lcommaaccent ; G 254 -U 317 ; WX 664 ; N Lcaron ; G 255 -U 318 ; WX 400 ; N lcaron ; G 256 -U 319 ; WX 671 ; N Ldot ; G 257 -U 320 ; WX 465 ; N ldot ; G 258 -U 321 ; WX 669 ; N Lslash ; G 259 -U 322 ; WX 324 ; N lslash ; G 260 -U 323 ; WX 875 ; N Nacute ; G 261 -U 324 ; WX 644 ; N nacute ; G 262 -U 325 ; WX 875 ; N Ncommaaccent ; G 263 -U 326 ; WX 644 ; N ncommaaccent ; G 264 -U 327 ; WX 875 ; N Ncaron ; G 265 -U 328 ; WX 644 ; N ncaron ; G 266 -U 329 ; WX 866 ; N napostrophe ; G 267 -U 330 ; WX 843 ; N Eng ; G 268 -U 331 ; WX 644 ; N eng ; G 269 -U 332 ; WX 820 ; N Omacron ; G 270 -U 333 ; WX 602 ; N omacron ; G 271 -U 334 ; WX 820 ; N Obreve ; G 272 -U 335 ; WX 602 ; N obreve ; G 273 -U 336 ; WX 820 ; N Ohungarumlaut ; G 274 -U 337 ; WX 602 ; N ohungarumlaut ; G 275 -U 338 ; WX 1137 ; N OE ; G 276 -U 339 ; WX 989 ; N oe ; G 277 -U 340 ; WX 753 ; N Racute ; G 278 -U 341 ; WX 478 ; N racute ; G 279 -U 342 ; WX 753 ; N Rcommaaccent ; G 280 -U 343 ; WX 478 ; N rcommaaccent ; G 281 -U 344 ; WX 753 ; N Rcaron ; G 282 -U 345 ; WX 478 ; N rcaron ; G 283 -U 346 ; WX 685 ; N Sacute ; G 284 -U 347 ; WX 513 ; N sacute ; G 285 -U 348 ; WX 685 ; N Scircumflex ; G 286 -U 349 ; WX 513 ; N scircumflex ; G 287 -U 350 ; WX 685 ; N Scedilla ; G 288 -U 351 ; WX 513 ; N scedilla ; G 289 -U 352 ; WX 685 ; N Scaron ; G 290 -U 353 ; WX 513 ; N scaron ; G 291 -U 354 ; WX 667 ; N Tcommaaccent ; G 292 -U 355 ; WX 402 ; N tcommaaccent ; G 293 -U 356 ; WX 667 ; N Tcaron ; G 294 -U 357 ; WX 402 ; N tcaron ; G 295 -U 358 ; WX 667 ; N Tbar ; G 296 -U 359 ; WX 402 ; N tbar ; G 297 -U 360 ; WX 843 ; N Utilde ; G 298 -U 361 ; WX 644 ; N utilde ; G 299 -U 362 ; WX 843 ; N Umacron ; G 300 -U 363 ; WX 644 ; N umacron ; G 301 -U 364 ; WX 843 ; N Ubreve ; G 302 -U 365 ; WX 644 ; N ubreve ; G 303 -U 366 ; WX 843 ; N Uring ; G 304 -U 367 ; WX 644 ; N uring ; G 305 -U 368 ; WX 843 ; N Uhungarumlaut ; G 306 -U 369 ; WX 644 ; N uhungarumlaut ; G 307 -U 370 ; WX 843 ; N Uogonek ; G 308 -U 371 ; WX 644 ; N uogonek ; G 309 -U 372 ; WX 1028 ; N Wcircumflex ; G 310 -U 373 ; WX 856 ; N wcircumflex ; G 311 -U 374 ; WX 660 ; N Ycircumflex ; G 312 -U 375 ; WX 565 ; N ycircumflex ; G 313 -U 376 ; WX 660 ; N Ydieresis ; G 314 -U 377 ; WX 695 ; N Zacute ; G 315 -U 378 ; WX 527 ; N zacute ; G 316 -U 379 ; WX 695 ; N Zdotaccent ; G 317 -U 380 ; WX 527 ; N zdotaccent ; G 318 -U 381 ; WX 695 ; N Zcaron ; G 319 -U 382 ; WX 527 ; N zcaron ; G 320 -U 383 ; WX 370 ; N longs ; G 321 -U 384 ; WX 640 ; N uni0180 ; G 322 -U 385 ; WX 735 ; N uni0181 ; G 323 -U 386 ; WX 735 ; N uni0182 ; G 324 -U 387 ; WX 640 ; N uni0183 ; G 325 -U 388 ; WX 735 ; N uni0184 ; G 326 -U 389 ; WX 640 ; N uni0185 ; G 327 -U 390 ; WX 765 ; N uni0186 ; G 328 -U 391 ; WX 765 ; N uni0187 ; G 329 -U 392 ; WX 560 ; N uni0188 ; G 330 -U 393 ; WX 807 ; N uni0189 ; G 331 -U 394 ; WX 802 ; N uni018A ; G 332 -U 395 ; WX 735 ; N uni018B ; G 333 -U 396 ; WX 640 ; N uni018C ; G 334 -U 397 ; WX 602 ; N uni018D ; G 335 -U 398 ; WX 730 ; N uni018E ; G 336 -U 399 ; WX 820 ; N uni018F ; G 337 -U 400 ; WX 623 ; N uni0190 ; G 338 -U 401 ; WX 694 ; N uni0191 ; G 339 -U 402 ; WX 370 ; N florin ; G 340 -U 403 ; WX 799 ; N uni0193 ; G 341 -U 404 ; WX 712 ; N uni0194 ; G 342 -U 405 ; WX 932 ; N uni0195 ; G 343 -U 406 ; WX 395 ; N uni0196 ; G 344 -U 407 ; WX 395 ; N uni0197 ; G 345 -U 408 ; WX 747 ; N uni0198 ; G 346 -U 409 ; WX 606 ; N uni0199 ; G 347 -U 410 ; WX 320 ; N uni019A ; G 348 -U 411 ; WX 634 ; N uni019B ; G 349 -U 412 ; WX 948 ; N uni019C ; G 350 -U 413 ; WX 875 ; N uni019D ; G 351 -U 414 ; WX 644 ; N uni019E ; G 352 -U 415 ; WX 820 ; N uni019F ; G 353 -U 416 ; WX 820 ; N Ohorn ; G 354 -U 417 ; WX 602 ; N ohorn ; G 355 -U 418 ; WX 1040 ; N uni01A2 ; G 356 -U 419 ; WX 807 ; N uni01A3 ; G 357 -U 420 ; WX 673 ; N uni01A4 ; G 358 -U 421 ; WX 640 ; N uni01A5 ; G 359 -U 422 ; WX 753 ; N uni01A6 ; G 360 -U 423 ; WX 685 ; N uni01A7 ; G 361 -U 424 ; WX 513 ; N uni01A8 ; G 362 -U 425 ; WX 707 ; N uni01A9 ; G 363 -U 426 ; WX 324 ; N uni01AA ; G 364 -U 427 ; WX 402 ; N uni01AB ; G 365 -U 428 ; WX 667 ; N uni01AC ; G 366 -U 429 ; WX 402 ; N uni01AD ; G 367 -U 430 ; WX 667 ; N uni01AE ; G 368 -U 431 ; WX 843 ; N Uhorn ; G 369 -U 432 ; WX 644 ; N uhorn ; G 370 -U 433 ; WX 829 ; N uni01B1 ; G 371 -U 434 ; WX 760 ; N uni01B2 ; G 372 -U 435 ; WX 738 ; N uni01B3 ; G 373 -U 436 ; WX 745 ; N uni01B4 ; G 374 -U 437 ; WX 695 ; N uni01B5 ; G 375 -U 438 ; WX 527 ; N uni01B6 ; G 376 -U 439 ; WX 564 ; N uni01B7 ; G 377 -U 440 ; WX 564 ; N uni01B8 ; G 378 -U 441 ; WX 564 ; N uni01B9 ; G 379 -U 442 ; WX 564 ; N uni01BA ; G 380 -U 443 ; WX 636 ; N uni01BB ; G 381 -U 444 ; WX 687 ; N uni01BC ; G 382 -U 445 ; WX 564 ; N uni01BD ; G 383 -U 446 ; WX 536 ; N uni01BE ; G 384 -U 447 ; WX 635 ; N uni01BF ; G 385 -U 448 ; WX 295 ; N uni01C0 ; G 386 -U 449 ; WX 492 ; N uni01C1 ; G 387 -U 450 ; WX 459 ; N uni01C2 ; G 388 -U 451 ; WX 295 ; N uni01C3 ; G 389 -U 452 ; WX 1497 ; N uni01C4 ; G 390 -U 453 ; WX 1329 ; N uni01C5 ; G 391 -U 454 ; WX 1167 ; N uni01C6 ; G 392 -U 455 ; WX 1065 ; N uni01C7 ; G 393 -U 456 ; WX 974 ; N uni01C8 ; G 394 -U 457 ; WX 630 ; N uni01C9 ; G 395 -U 458 ; WX 1276 ; N uni01CA ; G 396 -U 459 ; WX 1185 ; N uni01CB ; G 397 -U 460 ; WX 954 ; N uni01CC ; G 398 -U 461 ; WX 722 ; N uni01CD ; G 399 -U 462 ; WX 596 ; N uni01CE ; G 400 -U 463 ; WX 395 ; N uni01CF ; G 401 -U 464 ; WX 320 ; N uni01D0 ; G 402 -U 465 ; WX 820 ; N uni01D1 ; G 403 -U 466 ; WX 602 ; N uni01D2 ; G 404 -U 467 ; WX 843 ; N uni01D3 ; G 405 -U 468 ; WX 644 ; N uni01D4 ; G 406 -U 469 ; WX 843 ; N uni01D5 ; G 407 -U 470 ; WX 644 ; N uni01D6 ; G 408 -U 471 ; WX 843 ; N uni01D7 ; G 409 -U 472 ; WX 644 ; N uni01D8 ; G 410 -U 473 ; WX 843 ; N uni01D9 ; G 411 -U 474 ; WX 644 ; N uni01DA ; G 412 -U 475 ; WX 843 ; N uni01DB ; G 413 -U 476 ; WX 644 ; N uni01DC ; G 414 -U 477 ; WX 592 ; N uni01DD ; G 415 -U 478 ; WX 722 ; N uni01DE ; G 416 -U 479 ; WX 596 ; N uni01DF ; G 417 -U 480 ; WX 722 ; N uni01E0 ; G 418 -U 481 ; WX 596 ; N uni01E1 ; G 419 -U 482 ; WX 1001 ; N uni01E2 ; G 420 -U 483 ; WX 940 ; N uni01E3 ; G 421 -U 484 ; WX 848 ; N uni01E4 ; G 422 -U 485 ; WX 640 ; N uni01E5 ; G 423 -U 486 ; WX 799 ; N Gcaron ; G 424 -U 487 ; WX 640 ; N gcaron ; G 425 -U 488 ; WX 747 ; N uni01E8 ; G 426 -U 489 ; WX 606 ; N uni01E9 ; G 427 -U 490 ; WX 820 ; N uni01EA ; G 428 -U 491 ; WX 602 ; N uni01EB ; G 429 -U 492 ; WX 820 ; N uni01EC ; G 430 -U 493 ; WX 602 ; N uni01ED ; G 431 -U 494 ; WX 564 ; N uni01EE ; G 432 -U 495 ; WX 564 ; N uni01EF ; G 433 -U 496 ; WX 320 ; N uni01F0 ; G 434 -U 497 ; WX 1497 ; N uni01F1 ; G 435 -U 498 ; WX 1329 ; N uni01F2 ; G 436 -U 499 ; WX 1167 ; N uni01F3 ; G 437 -U 500 ; WX 799 ; N uni01F4 ; G 438 -U 501 ; WX 640 ; N uni01F5 ; G 439 -U 502 ; WX 1154 ; N uni01F6 ; G 440 -U 503 ; WX 707 ; N uni01F7 ; G 441 -U 504 ; WX 875 ; N uni01F8 ; G 442 -U 505 ; WX 644 ; N uni01F9 ; G 443 -U 506 ; WX 722 ; N Aringacute ; G 444 -U 507 ; WX 596 ; N aringacute ; G 445 -U 508 ; WX 1001 ; N AEacute ; G 446 -U 509 ; WX 940 ; N aeacute ; G 447 -U 510 ; WX 820 ; N Oslashacute ; G 448 -U 511 ; WX 602 ; N oslashacute ; G 449 -U 512 ; WX 722 ; N uni0200 ; G 450 -U 513 ; WX 596 ; N uni0201 ; G 451 -U 514 ; WX 722 ; N uni0202 ; G 452 -U 515 ; WX 596 ; N uni0203 ; G 453 -U 516 ; WX 730 ; N uni0204 ; G 454 -U 517 ; WX 592 ; N uni0205 ; G 455 -U 518 ; WX 730 ; N uni0206 ; G 456 -U 519 ; WX 592 ; N uni0207 ; G 457 -U 520 ; WX 395 ; N uni0208 ; G 458 -U 521 ; WX 320 ; N uni0209 ; G 459 -U 522 ; WX 395 ; N uni020A ; G 460 -U 523 ; WX 320 ; N uni020B ; G 461 -U 524 ; WX 820 ; N uni020C ; G 462 -U 525 ; WX 602 ; N uni020D ; G 463 -U 526 ; WX 820 ; N uni020E ; G 464 -U 527 ; WX 602 ; N uni020F ; G 465 -U 528 ; WX 753 ; N uni0210 ; G 466 -U 529 ; WX 478 ; N uni0211 ; G 467 -U 530 ; WX 753 ; N uni0212 ; G 468 -U 531 ; WX 478 ; N uni0213 ; G 469 -U 532 ; WX 843 ; N uni0214 ; G 470 -U 533 ; WX 644 ; N uni0215 ; G 471 -U 534 ; WX 843 ; N uni0216 ; G 472 -U 535 ; WX 644 ; N uni0217 ; G 473 -U 536 ; WX 685 ; N Scommaaccent ; G 474 -U 537 ; WX 513 ; N scommaaccent ; G 475 -U 538 ; WX 667 ; N uni021A ; G 476 -U 539 ; WX 402 ; N uni021B ; G 477 -U 540 ; WX 627 ; N uni021C ; G 478 -U 541 ; WX 521 ; N uni021D ; G 479 -U 542 ; WX 872 ; N uni021E ; G 480 -U 543 ; WX 644 ; N uni021F ; G 481 -U 544 ; WX 843 ; N uni0220 ; G 482 -U 545 ; WX 814 ; N uni0221 ; G 483 -U 546 ; WX 572 ; N uni0222 ; G 484 -U 547 ; WX 552 ; N uni0223 ; G 485 -U 548 ; WX 695 ; N uni0224 ; G 486 -U 549 ; WX 527 ; N uni0225 ; G 487 -U 550 ; WX 722 ; N uni0226 ; G 488 -U 551 ; WX 596 ; N uni0227 ; G 489 -U 552 ; WX 730 ; N uni0228 ; G 490 -U 553 ; WX 592 ; N uni0229 ; G 491 -U 554 ; WX 820 ; N uni022A ; G 492 -U 555 ; WX 602 ; N uni022B ; G 493 -U 556 ; WX 820 ; N uni022C ; G 494 -U 557 ; WX 602 ; N uni022D ; G 495 -U 558 ; WX 820 ; N uni022E ; G 496 -U 559 ; WX 602 ; N uni022F ; G 497 -U 560 ; WX 820 ; N uni0230 ; G 498 -U 561 ; WX 602 ; N uni0231 ; G 499 -U 562 ; WX 660 ; N uni0232 ; G 500 -U 563 ; WX 565 ; N uni0233 ; G 501 -U 564 ; WX 500 ; N uni0234 ; G 502 -U 565 ; WX 832 ; N uni0235 ; G 503 -U 566 ; WX 494 ; N uni0236 ; G 504 -U 567 ; WX 310 ; N dotlessj ; G 505 -U 568 ; WX 960 ; N uni0238 ; G 506 -U 569 ; WX 960 ; N uni0239 ; G 507 -U 570 ; WX 722 ; N uni023A ; G 508 -U 571 ; WX 765 ; N uni023B ; G 509 -U 572 ; WX 560 ; N uni023C ; G 510 -U 573 ; WX 664 ; N uni023D ; G 511 -U 574 ; WX 667 ; N uni023E ; G 512 -U 575 ; WX 513 ; N uni023F ; G 513 -U 576 ; WX 527 ; N uni0240 ; G 514 -U 577 ; WX 583 ; N uni0241 ; G 515 -U 578 ; WX 464 ; N uni0242 ; G 516 -U 579 ; WX 735 ; N uni0243 ; G 517 -U 580 ; WX 843 ; N uni0244 ; G 518 -U 581 ; WX 722 ; N uni0245 ; G 519 -U 582 ; WX 730 ; N uni0246 ; G 520 -U 583 ; WX 592 ; N uni0247 ; G 521 -U 584 ; WX 401 ; N uni0248 ; G 522 -U 585 ; WX 315 ; N uni0249 ; G 523 -U 586 ; WX 782 ; N uni024A ; G 524 -U 587 ; WX 640 ; N uni024B ; G 525 -U 588 ; WX 753 ; N uni024C ; G 526 -U 589 ; WX 478 ; N uni024D ; G 527 -U 590 ; WX 660 ; N uni024E ; G 528 -U 591 ; WX 565 ; N uni024F ; G 529 -U 592 ; WX 596 ; N uni0250 ; G 530 -U 593 ; WX 675 ; N uni0251 ; G 531 -U 594 ; WX 675 ; N uni0252 ; G 532 -U 595 ; WX 640 ; N uni0253 ; G 533 -U 596 ; WX 560 ; N uni0254 ; G 534 -U 597 ; WX 560 ; N uni0255 ; G 535 -U 598 ; WX 647 ; N uni0256 ; G 536 -U 599 ; WX 683 ; N uni0257 ; G 537 -U 600 ; WX 592 ; N uni0258 ; G 538 -U 601 ; WX 592 ; N uni0259 ; G 539 -U 602 ; WX 843 ; N uni025A ; G 540 -U 603 ; WX 537 ; N uni025B ; G 541 -U 604 ; WX 509 ; N uni025C ; G 542 -U 605 ; WX 773 ; N uni025D ; G 543 -U 606 ; WX 613 ; N uni025E ; G 544 -U 607 ; WX 315 ; N uni025F ; G 545 -U 608 ; WX 683 ; N uni0260 ; G 546 -U 609 ; WX 640 ; N uni0261 ; G 547 -U 610 ; WX 580 ; N uni0262 ; G 548 -U 611 ; WX 599 ; N uni0263 ; G 549 -U 612 ; WX 564 ; N uni0264 ; G 550 -U 613 ; WX 644 ; N uni0265 ; G 551 -U 614 ; WX 644 ; N uni0266 ; G 552 -U 615 ; WX 644 ; N uni0267 ; G 553 -U 616 ; WX 320 ; N uni0268 ; G 554 -U 617 ; WX 392 ; N uni0269 ; G 555 -U 618 ; WX 320 ; N uni026A ; G 556 -U 619 ; WX 380 ; N uni026B ; G 557 -U 620 ; WX 454 ; N uni026C ; G 558 -U 621 ; WX 363 ; N uni026D ; G 559 -U 622 ; WX 704 ; N uni026E ; G 560 -U 623 ; WX 948 ; N uni026F ; G 561 -U 624 ; WX 948 ; N uni0270 ; G 562 -U 625 ; WX 948 ; N uni0271 ; G 563 -U 626 ; WX 644 ; N uni0272 ; G 564 -U 627 ; WX 694 ; N uni0273 ; G 565 -U 628 ; WX 646 ; N uni0274 ; G 566 -U 629 ; WX 602 ; N uni0275 ; G 567 -U 630 ; WX 790 ; N uni0276 ; G 568 -U 631 ; WX 821 ; N uni0277 ; G 569 -U 632 ; WX 692 ; N uni0278 ; G 570 -U 633 ; WX 501 ; N uni0279 ; G 571 -U 634 ; WX 501 ; N uni027A ; G 572 -U 635 ; WX 551 ; N uni027B ; G 573 -U 636 ; WX 478 ; N uni027C ; G 574 -U 637 ; WX 478 ; N uni027D ; G 575 -U 638 ; WX 453 ; N uni027E ; G 576 -U 639 ; WX 453 ; N uni027F ; G 577 -U 640 ; WX 581 ; N uni0280 ; G 578 -U 641 ; WX 581 ; N uni0281 ; G 579 -U 642 ; WX 513 ; N uni0282 ; G 580 -U 643 ; WX 271 ; N uni0283 ; G 581 -U 644 ; WX 370 ; N uni0284 ; G 582 -U 645 ; WX 487 ; N uni0285 ; G 583 -U 646 ; WX 324 ; N uni0286 ; G 584 -U 647 ; WX 402 ; N uni0287 ; G 585 -U 648 ; WX 402 ; N uni0288 ; G 586 -U 649 ; WX 644 ; N uni0289 ; G 587 -U 650 ; WX 620 ; N uni028A ; G 588 -U 651 ; WX 608 ; N uni028B ; G 589 -U 652 ; WX 565 ; N uni028C ; G 590 -U 653 ; WX 856 ; N uni028D ; G 591 -U 654 ; WX 565 ; N uni028E ; G 592 -U 655 ; WX 655 ; N uni028F ; G 593 -U 656 ; WX 597 ; N uni0290 ; G 594 -U 657 ; WX 560 ; N uni0291 ; G 595 -U 658 ; WX 564 ; N uni0292 ; G 596 -U 659 ; WX 560 ; N uni0293 ; G 597 -U 660 ; WX 536 ; N uni0294 ; G 598 -U 661 ; WX 536 ; N uni0295 ; G 599 -U 662 ; WX 536 ; N uni0296 ; G 600 -U 663 ; WX 420 ; N uni0297 ; G 601 -U 664 ; WX 820 ; N uni0298 ; G 602 -U 665 ; WX 563 ; N uni0299 ; G 603 -U 666 ; WX 613 ; N uni029A ; G 604 -U 667 ; WX 660 ; N uni029B ; G 605 -U 668 ; WX 667 ; N uni029C ; G 606 -U 669 ; WX 366 ; N uni029D ; G 607 -U 670 ; WX 606 ; N uni029E ; G 608 -U 671 ; WX 543 ; N uni029F ; G 609 -U 672 ; WX 683 ; N uni02A0 ; G 610 -U 673 ; WX 536 ; N uni02A1 ; G 611 -U 674 ; WX 536 ; N uni02A2 ; G 612 -U 675 ; WX 996 ; N uni02A3 ; G 613 -U 676 ; WX 1033 ; N uni02A4 ; G 614 -U 677 ; WX 998 ; N uni02A5 ; G 615 -U 678 ; WX 823 ; N uni02A6 ; G 616 -U 679 ; WX 598 ; N uni02A7 ; G 617 -U 680 ; WX 825 ; N uni02A8 ; G 618 -U 681 ; WX 894 ; N uni02A9 ; G 619 -U 682 ; WX 725 ; N uni02AA ; G 620 -U 683 ; WX 676 ; N uni02AB ; G 621 -U 684 ; WX 598 ; N uni02AC ; G 622 -U 685 ; WX 443 ; N uni02AD ; G 623 -U 686 ; WX 781 ; N uni02AE ; G 624 -U 687 ; WX 767 ; N uni02AF ; G 625 -U 688 ; WX 433 ; N uni02B0 ; G 626 -U 689 ; WX 430 ; N uni02B1 ; G 627 -U 690 ; WX 264 ; N uni02B2 ; G 628 -U 691 ; WX 347 ; N uni02B3 ; G 629 -U 692 ; WX 347 ; N uni02B4 ; G 630 -U 693 ; WX 430 ; N uni02B5 ; G 631 -U 694 ; WX 392 ; N uni02B6 ; G 632 -U 695 ; WX 539 ; N uni02B7 ; G 633 -U 696 ; WX 355 ; N uni02B8 ; G 634 -U 697 ; WX 278 ; N uni02B9 ; G 635 -U 698 ; WX 460 ; N uni02BA ; G 636 -U 699 ; WX 318 ; N uni02BB ; G 637 -U 700 ; WX 318 ; N uni02BC ; G 638 -U 701 ; WX 318 ; N uni02BD ; G 639 -U 702 ; WX 307 ; N uni02BE ; G 640 -U 703 ; WX 307 ; N uni02BF ; G 641 -U 704 ; WX 280 ; N uni02C0 ; G 642 -U 705 ; WX 281 ; N uni02C1 ; G 643 -U 706 ; WX 500 ; N uni02C2 ; G 644 -U 707 ; WX 500 ; N uni02C3 ; G 645 -U 708 ; WX 500 ; N uni02C4 ; G 646 -U 709 ; WX 500 ; N uni02C5 ; G 647 -U 710 ; WX 500 ; N circumflex ; G 648 -U 711 ; WX 500 ; N caron ; G 649 -U 712 ; WX 282 ; N uni02C8 ; G 650 -U 713 ; WX 500 ; N uni02C9 ; G 651 -U 714 ; WX 500 ; N uni02CA ; G 652 -U 715 ; WX 500 ; N uni02CB ; G 653 -U 716 ; WX 282 ; N uni02CC ; G 654 -U 717 ; WX 500 ; N uni02CD ; G 655 -U 720 ; WX 337 ; N uni02D0 ; G 656 -U 721 ; WX 337 ; N uni02D1 ; G 657 -U 722 ; WX 307 ; N uni02D2 ; G 658 -U 723 ; WX 307 ; N uni02D3 ; G 659 -U 726 ; WX 392 ; N uni02D6 ; G 660 -U 727 ; WX 392 ; N uni02D7 ; G 661 -U 728 ; WX 500 ; N breve ; G 662 -U 729 ; WX 500 ; N dotaccent ; G 663 -U 730 ; WX 500 ; N ring ; G 664 -U 731 ; WX 500 ; N ogonek ; G 665 -U 732 ; WX 500 ; N tilde ; G 666 -U 733 ; WX 500 ; N hungarumlaut ; G 667 -U 734 ; WX 417 ; N uni02DE ; G 668 -U 736 ; WX 377 ; N uni02E0 ; G 669 -U 737 ; WX 243 ; N uni02E1 ; G 670 -U 738 ; WX 337 ; N uni02E2 ; G 671 -U 739 ; WX 355 ; N uni02E3 ; G 672 -U 740 ; WX 281 ; N uni02E4 ; G 673 -U 741 ; WX 493 ; N uni02E5 ; G 674 -U 742 ; WX 493 ; N uni02E6 ; G 675 -U 743 ; WX 493 ; N uni02E7 ; G 676 -U 744 ; WX 493 ; N uni02E8 ; G 677 -U 745 ; WX 493 ; N uni02E9 ; G 678 -U 748 ; WX 500 ; N uni02EC ; G 679 -U 750 ; WX 484 ; N uni02EE ; G 680 -U 751 ; WX 500 ; N uni02EF ; G 681 -U 752 ; WX 500 ; N uni02F0 ; G 682 -U 755 ; WX 500 ; N uni02F3 ; G 683 -U 759 ; WX 500 ; N uni02F7 ; G 684 -U 768 ; WX 0 ; N gravecomb ; G 685 -U 769 ; WX 0 ; N acutecomb ; G 686 -U 770 ; WX 0 ; N uni0302 ; G 687 -U 771 ; WX 0 ; N tildecomb ; G 688 -U 772 ; WX 0 ; N uni0304 ; G 689 -U 773 ; WX 0 ; N uni0305 ; G 690 -U 774 ; WX 0 ; N uni0306 ; G 691 -U 775 ; WX 0 ; N uni0307 ; G 692 -U 776 ; WX 0 ; N uni0308 ; G 693 -U 777 ; WX 0 ; N hookabovecomb ; G 694 -U 778 ; WX 0 ; N uni030A ; G 695 -U 779 ; WX 0 ; N uni030B ; G 696 -U 780 ; WX 0 ; N uni030C ; G 697 -U 781 ; WX 0 ; N uni030D ; G 698 -U 782 ; WX 0 ; N uni030E ; G 699 -U 783 ; WX 0 ; N uni030F ; G 700 -U 784 ; WX 0 ; N uni0310 ; G 701 -U 785 ; WX 0 ; N uni0311 ; G 702 -U 786 ; WX 0 ; N uni0312 ; G 703 -U 787 ; WX 0 ; N uni0313 ; G 704 -U 788 ; WX 0 ; N uni0314 ; G 705 -U 789 ; WX 0 ; N uni0315 ; G 706 -U 790 ; WX 0 ; N uni0316 ; G 707 -U 791 ; WX 0 ; N uni0317 ; G 708 -U 792 ; WX 0 ; N uni0318 ; G 709 -U 793 ; WX 0 ; N uni0319 ; G 710 -U 794 ; WX 0 ; N uni031A ; G 711 -U 795 ; WX 0 ; N uni031B ; G 712 -U 796 ; WX 0 ; N uni031C ; G 713 -U 797 ; WX 0 ; N uni031D ; G 714 -U 798 ; WX 0 ; N uni031E ; G 715 -U 799 ; WX 0 ; N uni031F ; G 716 -U 800 ; WX 0 ; N uni0320 ; G 717 -U 801 ; WX 0 ; N uni0321 ; G 718 -U 802 ; WX 0 ; N uni0322 ; G 719 -U 803 ; WX 0 ; N dotbelowcomb ; G 720 -U 804 ; WX 0 ; N uni0324 ; G 721 -U 805 ; WX 0 ; N uni0325 ; G 722 -U 806 ; WX 0 ; N uni0326 ; G 723 -U 807 ; WX 0 ; N uni0327 ; G 724 -U 808 ; WX 0 ; N uni0328 ; G 725 -U 809 ; WX 0 ; N uni0329 ; G 726 -U 810 ; WX 0 ; N uni032A ; G 727 -U 811 ; WX 0 ; N uni032B ; G 728 -U 812 ; WX 0 ; N uni032C ; G 729 -U 813 ; WX 0 ; N uni032D ; G 730 -U 814 ; WX 0 ; N uni032E ; G 731 -U 815 ; WX 0 ; N uni032F ; G 732 -U 816 ; WX 0 ; N uni0330 ; G 733 -U 817 ; WX 0 ; N uni0331 ; G 734 -U 818 ; WX 0 ; N uni0332 ; G 735 -U 819 ; WX 0 ; N uni0333 ; G 736 -U 820 ; WX 0 ; N uni0334 ; G 737 -U 821 ; WX 0 ; N uni0335 ; G 738 -U 822 ; WX 0 ; N uni0336 ; G 739 -U 823 ; WX 0 ; N uni0337 ; G 740 -U 824 ; WX 0 ; N uni0338 ; G 741 -U 825 ; WX 0 ; N uni0339 ; G 742 -U 826 ; WX 0 ; N uni033A ; G 743 -U 827 ; WX 0 ; N uni033B ; G 744 -U 828 ; WX 0 ; N uni033C ; G 745 -U 829 ; WX 0 ; N uni033D ; G 746 -U 830 ; WX 0 ; N uni033E ; G 747 -U 831 ; WX 0 ; N uni033F ; G 748 -U 835 ; WX 0 ; N uni0343 ; G 749 -U 847 ; WX 0 ; N uni034F ; G 750 -U 856 ; WX 0 ; N uni0358 ; G 751 -U 864 ; WX 0 ; N uni0360 ; G 752 -U 865 ; WX 0 ; N uni0361 ; G 753 -U 880 ; WX 740 ; N uni0370 ; G 754 -U 881 ; WX 531 ; N uni0371 ; G 755 -U 882 ; WX 667 ; N uni0372 ; G 756 -U 883 ; WX 553 ; N uni0373 ; G 757 -U 884 ; WX 278 ; N uni0374 ; G 758 -U 885 ; WX 278 ; N uni0375 ; G 759 -U 886 ; WX 875 ; N uni0376 ; G 760 -U 887 ; WX 667 ; N uni0377 ; G 761 -U 890 ; WX 500 ; N uni037A ; G 762 -U 891 ; WX 560 ; N uni037B ; G 763 -U 892 ; WX 560 ; N uni037C ; G 764 -U 893 ; WX 560 ; N uni037D ; G 765 -U 894 ; WX 337 ; N uni037E ; G 766 -U 895 ; WX 401 ; N uni037F ; G 767 -U 900 ; WX 500 ; N tonos ; G 768 -U 901 ; WX 500 ; N dieresistonos ; G 769 -U 902 ; WX 722 ; N Alphatonos ; G 770 -U 903 ; WX 318 ; N anoteleia ; G 771 -U 904 ; WX 900 ; N Epsilontonos ; G 772 -U 905 ; WX 1039 ; N Etatonos ; G 773 -U 906 ; WX 562 ; N Iotatonos ; G 774 -U 908 ; WX 835 ; N Omicrontonos ; G 775 -U 910 ; WX 897 ; N Upsilontonos ; G 776 -U 911 ; WX 853 ; N Omegatonos ; G 777 -U 912 ; WX 392 ; N iotadieresistonos ; G 778 -U 913 ; WX 722 ; N Alpha ; G 779 -U 914 ; WX 735 ; N Beta ; G 780 -U 915 ; WX 694 ; N Gamma ; G 781 -U 916 ; WX 722 ; N uni0394 ; G 782 -U 917 ; WX 730 ; N Epsilon ; G 783 -U 918 ; WX 695 ; N Zeta ; G 784 -U 919 ; WX 872 ; N Eta ; G 785 -U 920 ; WX 820 ; N Theta ; G 786 -U 921 ; WX 395 ; N Iota ; G 787 -U 922 ; WX 747 ; N Kappa ; G 788 -U 923 ; WX 722 ; N Lambda ; G 789 -U 924 ; WX 1024 ; N Mu ; G 790 -U 925 ; WX 875 ; N Nu ; G 791 -U 926 ; WX 704 ; N Xi ; G 792 -U 927 ; WX 820 ; N Omicron ; G 793 -U 928 ; WX 872 ; N Pi ; G 794 -U 929 ; WX 673 ; N Rho ; G 795 -U 931 ; WX 707 ; N Sigma ; G 796 -U 932 ; WX 667 ; N Tau ; G 797 -U 933 ; WX 660 ; N Upsilon ; G 798 -U 934 ; WX 820 ; N Phi ; G 799 -U 935 ; WX 712 ; N Chi ; G 800 -U 936 ; WX 877 ; N Psi ; G 801 -U 937 ; WX 829 ; N Omega ; G 802 -U 938 ; WX 395 ; N Iotadieresis ; G 803 -U 939 ; WX 660 ; N Upsilondieresis ; G 804 -U 940 ; WX 675 ; N alphatonos ; G 805 -U 941 ; WX 537 ; N epsilontonos ; G 806 -U 942 ; WX 599 ; N etatonos ; G 807 -U 943 ; WX 392 ; N iotatonos ; G 808 -U 944 ; WX 608 ; N upsilondieresistonos ; G 809 -U 945 ; WX 675 ; N alpha ; G 810 -U 946 ; WX 578 ; N beta ; G 811 -U 947 ; WX 598 ; N gamma ; G 812 -U 948 ; WX 602 ; N delta ; G 813 -U 949 ; WX 537 ; N epsilon ; G 814 -U 950 ; WX 542 ; N zeta ; G 815 -U 951 ; WX 599 ; N eta ; G 816 -U 952 ; WX 602 ; N theta ; G 817 -U 953 ; WX 392 ; N iota ; G 818 -U 954 ; WX 656 ; N kappa ; G 819 -U 955 ; WX 634 ; N lambda ; G 820 -U 956 ; WX 650 ; N uni03BC ; G 821 -U 957 ; WX 608 ; N nu ; G 822 -U 958 ; WX 551 ; N xi ; G 823 -U 959 ; WX 602 ; N omicron ; G 824 -U 960 ; WX 657 ; N pi ; G 825 -U 961 ; WX 588 ; N rho ; G 826 -U 962 ; WX 560 ; N sigma1 ; G 827 -U 963 ; WX 683 ; N sigma ; G 828 -U 964 ; WX 553 ; N tau ; G 829 -U 965 ; WX 608 ; N upsilon ; G 830 -U 966 ; WX 700 ; N phi ; G 831 -U 967 ; WX 606 ; N chi ; G 832 -U 968 ; WX 784 ; N psi ; G 833 -U 969 ; WX 815 ; N omega ; G 834 -U 970 ; WX 392 ; N iotadieresis ; G 835 -U 971 ; WX 608 ; N upsilondieresis ; G 836 -U 972 ; WX 602 ; N omicrontonos ; G 837 -U 973 ; WX 608 ; N upsilontonos ; G 838 -U 974 ; WX 815 ; N omegatonos ; G 839 -U 975 ; WX 747 ; N uni03CF ; G 840 -U 976 ; WX 583 ; N uni03D0 ; G 841 -U 977 ; WX 715 ; N theta1 ; G 842 -U 978 ; WX 687 ; N Upsilon1 ; G 843 -U 979 ; WX 874 ; N uni03D3 ; G 844 -U 980 ; WX 687 ; N uni03D4 ; G 845 -U 981 ; WX 682 ; N phi1 ; G 846 -U 982 ; WX 815 ; N omega1 ; G 847 -U 983 ; WX 624 ; N uni03D7 ; G 848 -U 984 ; WX 820 ; N uni03D8 ; G 849 -U 985 ; WX 602 ; N uni03D9 ; G 850 -U 986 ; WX 765 ; N uni03DA ; G 851 -U 987 ; WX 560 ; N uni03DB ; G 852 -U 988 ; WX 694 ; N uni03DC ; G 853 -U 989 ; WX 463 ; N uni03DD ; G 854 -U 990 ; WX 590 ; N uni03DE ; G 855 -U 991 ; WX 660 ; N uni03DF ; G 856 -U 992 ; WX 782 ; N uni03E0 ; G 857 -U 993 ; WX 577 ; N uni03E1 ; G 858 -U 1008 ; WX 624 ; N uni03F0 ; G 859 -U 1009 ; WX 588 ; N uni03F1 ; G 860 -U 1010 ; WX 560 ; N uni03F2 ; G 861 -U 1011 ; WX 310 ; N uni03F3 ; G 862 -U 1012 ; WX 820 ; N uni03F4 ; G 863 -U 1013 ; WX 560 ; N uni03F5 ; G 864 -U 1014 ; WX 560 ; N uni03F6 ; G 865 -U 1015 ; WX 676 ; N uni03F7 ; G 866 -U 1016 ; WX 640 ; N uni03F8 ; G 867 -U 1017 ; WX 765 ; N uni03F9 ; G 868 -U 1018 ; WX 1024 ; N uni03FA ; G 869 -U 1019 ; WX 708 ; N uni03FB ; G 870 -U 1020 ; WX 588 ; N uni03FC ; G 871 -U 1021 ; WX 765 ; N uni03FD ; G 872 -U 1022 ; WX 765 ; N uni03FE ; G 873 -U 1023 ; WX 765 ; N uni03FF ; G 874 -U 1024 ; WX 730 ; N uni0400 ; G 875 -U 1025 ; WX 730 ; N uni0401 ; G 876 -U 1026 ; WX 799 ; N uni0402 ; G 877 -U 1027 ; WX 662 ; N uni0403 ; G 878 -U 1028 ; WX 765 ; N uni0404 ; G 879 -U 1029 ; WX 685 ; N uni0405 ; G 880 -U 1030 ; WX 395 ; N uni0406 ; G 881 -U 1031 ; WX 395 ; N uni0407 ; G 882 -U 1032 ; WX 401 ; N uni0408 ; G 883 -U 1033 ; WX 1084 ; N uni0409 ; G 884 -U 1034 ; WX 1118 ; N uni040A ; G 885 -U 1035 ; WX 872 ; N uni040B ; G 886 -U 1036 ; WX 774 ; N uni040C ; G 887 -U 1037 ; WX 872 ; N uni040D ; G 888 -U 1038 ; WX 723 ; N uni040E ; G 889 -U 1039 ; WX 872 ; N uni040F ; G 890 -U 1040 ; WX 757 ; N uni0410 ; G 891 -U 1041 ; WX 735 ; N uni0411 ; G 892 -U 1042 ; WX 735 ; N uni0412 ; G 893 -U 1043 ; WX 662 ; N uni0413 ; G 894 -U 1044 ; WX 813 ; N uni0414 ; G 895 -U 1045 ; WX 730 ; N uni0415 ; G 896 -U 1046 ; WX 1124 ; N uni0416 ; G 897 -U 1047 ; WX 623 ; N uni0417 ; G 898 -U 1048 ; WX 872 ; N uni0418 ; G 899 -U 1049 ; WX 872 ; N uni0419 ; G 900 -U 1050 ; WX 774 ; N uni041A ; G 901 -U 1051 ; WX 834 ; N uni041B ; G 902 -U 1052 ; WX 1024 ; N uni041C ; G 903 -U 1053 ; WX 872 ; N uni041D ; G 904 -U 1054 ; WX 820 ; N uni041E ; G 905 -U 1055 ; WX 872 ; N uni041F ; G 906 -U 1056 ; WX 673 ; N uni0420 ; G 907 -U 1057 ; WX 765 ; N uni0421 ; G 908 -U 1058 ; WX 667 ; N uni0422 ; G 909 -U 1059 ; WX 723 ; N uni0423 ; G 910 -U 1060 ; WX 830 ; N uni0424 ; G 911 -U 1061 ; WX 712 ; N uni0425 ; G 912 -U 1062 ; WX 872 ; N uni0426 ; G 913 -U 1063 ; WX 773 ; N uni0427 ; G 914 -U 1064 ; WX 1141 ; N uni0428 ; G 915 -U 1065 ; WX 1141 ; N uni0429 ; G 916 -U 1066 ; WX 794 ; N uni042A ; G 917 -U 1067 ; WX 984 ; N uni042B ; G 918 -U 1068 ; WX 674 ; N uni042C ; G 919 -U 1069 ; WX 765 ; N uni042D ; G 920 -U 1070 ; WX 1193 ; N uni042E ; G 921 -U 1071 ; WX 808 ; N uni042F ; G 922 -U 1072 ; WX 596 ; N uni0430 ; G 923 -U 1073 ; WX 610 ; N uni0431 ; G 924 -U 1074 ; WX 582 ; N uni0432 ; G 925 -U 1075 ; WX 505 ; N uni0433 ; G 926 -U 1076 ; WX 634 ; N uni0434 ; G 927 -U 1077 ; WX 592 ; N uni0435 ; G 928 -U 1078 ; WX 1137 ; N uni0436 ; G 929 -U 1079 ; WX 545 ; N uni0437 ; G 930 -U 1080 ; WX 644 ; N uni0438 ; G 931 -U 1081 ; WX 644 ; N uni0439 ; G 932 -U 1082 ; WX 597 ; N uni043A ; G 933 -U 1083 ; WX 637 ; N uni043B ; G 934 -U 1084 ; WX 829 ; N uni043C ; G 935 -U 1085 ; WX 659 ; N uni043D ; G 936 -U 1086 ; WX 602 ; N uni043E ; G 937 -U 1087 ; WX 644 ; N uni043F ; G 938 -U 1088 ; WX 640 ; N uni0440 ; G 939 -U 1089 ; WX 560 ; N uni0441 ; G 940 -U 1090 ; WX 948 ; N uni0442 ; G 941 -U 1091 ; WX 580 ; N uni0443 ; G 942 -U 1092 ; WX 783 ; N uni0444 ; G 943 -U 1093 ; WX 564 ; N uni0445 ; G 944 -U 1094 ; WX 698 ; N uni0446 ; G 945 -U 1095 ; WX 622 ; N uni0447 ; G 946 -U 1096 ; WX 947 ; N uni0448 ; G 947 -U 1097 ; WX 1001 ; N uni0449 ; G 948 -U 1098 ; WX 667 ; N uni044A ; G 949 -U 1099 ; WX 814 ; N uni044B ; G 950 -U 1100 ; WX 544 ; N uni044C ; G 951 -U 1101 ; WX 560 ; N uni044D ; G 952 -U 1102 ; WX 880 ; N uni044E ; G 953 -U 1103 ; WX 662 ; N uni044F ; G 954 -U 1104 ; WX 592 ; N uni0450 ; G 955 -U 1105 ; WX 592 ; N uni0451 ; G 956 -U 1106 ; WX 624 ; N uni0452 ; G 957 -U 1107 ; WX 505 ; N uni0453 ; G 958 -U 1108 ; WX 560 ; N uni0454 ; G 959 -U 1109 ; WX 513 ; N uni0455 ; G 960 -U 1110 ; WX 320 ; N uni0456 ; G 961 -U 1111 ; WX 320 ; N uni0457 ; G 962 -U 1112 ; WX 310 ; N uni0458 ; G 963 -U 1113 ; WX 859 ; N uni0459 ; G 964 -U 1114 ; WX 878 ; N uni045A ; G 965 -U 1115 ; WX 644 ; N uni045B ; G 966 -U 1116 ; WX 597 ; N uni045C ; G 967 -U 1117 ; WX 644 ; N uni045D ; G 968 -U 1118 ; WX 580 ; N uni045E ; G 969 -U 1119 ; WX 644 ; N uni045F ; G 970 -U 1122 ; WX 762 ; N uni0462 ; G 971 -U 1123 ; WX 882 ; N uni0463 ; G 972 -U 1124 ; WX 1129 ; N uni0464 ; G 973 -U 1125 ; WX 834 ; N uni0465 ; G 974 -U 1130 ; WX 1124 ; N uni046A ; G 975 -U 1131 ; WX 920 ; N uni046B ; G 976 -U 1132 ; WX 1359 ; N uni046C ; G 977 -U 1133 ; WX 1063 ; N uni046D ; G 978 -U 1136 ; WX 944 ; N uni0470 ; G 979 -U 1137 ; WX 902 ; N uni0471 ; G 980 -U 1138 ; WX 820 ; N uni0472 ; G 981 -U 1139 ; WX 552 ; N uni0473 ; G 982 -U 1140 ; WX 859 ; N uni0474 ; G 983 -U 1141 ; WX 678 ; N uni0475 ; G 984 -U 1142 ; WX 859 ; N uni0476 ; G 985 -U 1143 ; WX 678 ; N uni0477 ; G 986 -U 1164 ; WX 707 ; N uni048C ; G 987 -U 1165 ; WX 544 ; N uni048D ; G 988 -U 1168 ; WX 672 ; N uni0490 ; G 989 -U 1169 ; WX 529 ; N uni0491 ; G 990 -U 1170 ; WX 662 ; N uni0492 ; G 991 -U 1171 ; WX 505 ; N uni0493 ; G 992 -U 1172 ; WX 730 ; N uni0494 ; G 993 -U 1173 ; WX 614 ; N uni0495 ; G 994 -U 1174 ; WX 1124 ; N uni0496 ; G 995 -U 1175 ; WX 1137 ; N uni0497 ; G 996 -U 1176 ; WX 623 ; N uni0498 ; G 997 -U 1177 ; WX 545 ; N uni0499 ; G 998 -U 1178 ; WX 774 ; N uni049A ; G 999 -U 1179 ; WX 604 ; N uni049B ; G 1000 -U 1182 ; WX 774 ; N uni049E ; G 1001 -U 1183 ; WX 597 ; N uni049F ; G 1002 -U 1184 ; WX 892 ; N uni04A0 ; G 1003 -U 1185 ; WX 669 ; N uni04A1 ; G 1004 -U 1186 ; WX 872 ; N uni04A2 ; G 1005 -U 1187 ; WX 712 ; N uni04A3 ; G 1006 -U 1188 ; WX 1139 ; N uni04A4 ; G 1007 -U 1189 ; WX 857 ; N uni04A5 ; G 1008 -U 1190 ; WX 1206 ; N uni04A6 ; G 1009 -U 1191 ; WX 943 ; N uni04A7 ; G 1010 -U 1194 ; WX 765 ; N uni04AA ; G 1011 -U 1195 ; WX 560 ; N uni04AB ; G 1012 -U 1196 ; WX 667 ; N uni04AC ; G 1013 -U 1197 ; WX 1013 ; N uni04AD ; G 1014 -U 1198 ; WX 660 ; N uni04AE ; G 1015 -U 1199 ; WX 571 ; N uni04AF ; G 1016 -U 1200 ; WX 660 ; N uni04B0 ; G 1017 -U 1201 ; WX 571 ; N uni04B1 ; G 1018 -U 1202 ; WX 712 ; N uni04B2 ; G 1019 -U 1203 ; WX 629 ; N uni04B3 ; G 1020 -U 1204 ; WX 936 ; N uni04B4 ; G 1021 -U 1205 ; WX 732 ; N uni04B5 ; G 1022 -U 1206 ; WX 749 ; N uni04B6 ; G 1023 -U 1207 ; WX 677 ; N uni04B7 ; G 1024 -U 1210 ; WX 749 ; N uni04BA ; G 1025 -U 1211 ; WX 644 ; N uni04BB ; G 1026 -U 1216 ; WX 395 ; N uni04C0 ; G 1027 -U 1217 ; WX 1124 ; N uni04C1 ; G 1028 -U 1218 ; WX 1137 ; N uni04C2 ; G 1029 -U 1219 ; WX 747 ; N uni04C3 ; G 1030 -U 1220 ; WX 606 ; N uni04C4 ; G 1031 -U 1223 ; WX 872 ; N uni04C7 ; G 1032 -U 1224 ; WX 667 ; N uni04C8 ; G 1033 -U 1227 ; WX 749 ; N uni04CB ; G 1034 -U 1228 ; WX 667 ; N uni04CC ; G 1035 -U 1231 ; WX 320 ; N uni04CF ; G 1036 -U 1232 ; WX 757 ; N uni04D0 ; G 1037 -U 1233 ; WX 596 ; N uni04D1 ; G 1038 -U 1234 ; WX 757 ; N uni04D2 ; G 1039 -U 1235 ; WX 596 ; N uni04D3 ; G 1040 -U 1236 ; WX 1001 ; N uni04D4 ; G 1041 -U 1237 ; WX 940 ; N uni04D5 ; G 1042 -U 1238 ; WX 730 ; N uni04D6 ; G 1043 -U 1239 ; WX 592 ; N uni04D7 ; G 1044 -U 1240 ; WX 820 ; N uni04D8 ; G 1045 -U 1241 ; WX 592 ; N uni04D9 ; G 1046 -U 1242 ; WX 820 ; N uni04DA ; G 1047 -U 1243 ; WX 592 ; N uni04DB ; G 1048 -U 1244 ; WX 1124 ; N uni04DC ; G 1049 -U 1245 ; WX 1137 ; N uni04DD ; G 1050 -U 1246 ; WX 623 ; N uni04DE ; G 1051 -U 1247 ; WX 545 ; N uni04DF ; G 1052 -U 1248 ; WX 564 ; N uni04E0 ; G 1053 -U 1249 ; WX 564 ; N uni04E1 ; G 1054 -U 1250 ; WX 872 ; N uni04E2 ; G 1055 -U 1251 ; WX 644 ; N uni04E3 ; G 1056 -U 1252 ; WX 872 ; N uni04E4 ; G 1057 -U 1253 ; WX 644 ; N uni04E5 ; G 1058 -U 1254 ; WX 820 ; N uni04E6 ; G 1059 -U 1255 ; WX 602 ; N uni04E7 ; G 1060 -U 1256 ; WX 820 ; N uni04E8 ; G 1061 -U 1257 ; WX 602 ; N uni04E9 ; G 1062 -U 1258 ; WX 820 ; N uni04EA ; G 1063 -U 1259 ; WX 602 ; N uni04EB ; G 1064 -U 1260 ; WX 765 ; N uni04EC ; G 1065 -U 1261 ; WX 560 ; N uni04ED ; G 1066 -U 1262 ; WX 723 ; N uni04EE ; G 1067 -U 1263 ; WX 580 ; N uni04EF ; G 1068 -U 1264 ; WX 723 ; N uni04F0 ; G 1069 -U 1265 ; WX 580 ; N uni04F1 ; G 1070 -U 1266 ; WX 723 ; N uni04F2 ; G 1071 -U 1267 ; WX 580 ; N uni04F3 ; G 1072 -U 1268 ; WX 773 ; N uni04F4 ; G 1073 -U 1269 ; WX 622 ; N uni04F5 ; G 1074 -U 1270 ; WX 662 ; N uni04F6 ; G 1075 -U 1271 ; WX 505 ; N uni04F7 ; G 1076 -U 1272 ; WX 984 ; N uni04F8 ; G 1077 -U 1273 ; WX 814 ; N uni04F9 ; G 1078 -U 1296 ; WX 623 ; N uni0510 ; G 1079 -U 1297 ; WX 545 ; N uni0511 ; G 1080 -U 1298 ; WX 834 ; N uni0512 ; G 1081 -U 1299 ; WX 637 ; N uni0513 ; G 1082 -U 1300 ; WX 1199 ; N uni0514 ; G 1083 -U 1301 ; WX 939 ; N uni0515 ; G 1084 -U 1306 ; WX 820 ; N uni051A ; G 1085 -U 1307 ; WX 640 ; N uni051B ; G 1086 -U 1308 ; WX 1028 ; N uni051C ; G 1087 -U 1309 ; WX 856 ; N uni051D ; G 1088 -U 1329 ; WX 810 ; N uni0531 ; G 1089 -U 1330 ; WX 811 ; N uni0532 ; G 1090 -U 1331 ; WX 806 ; N uni0533 ; G 1091 -U 1332 ; WX 828 ; N uni0534 ; G 1092 -U 1333 ; WX 806 ; N uni0535 ; G 1093 -U 1334 ; WX 826 ; N uni0536 ; G 1094 -U 1335 ; WX 761 ; N uni0537 ; G 1095 -U 1336 ; WX 811 ; N uni0538 ; G 1096 -U 1337 ; WX 968 ; N uni0539 ; G 1097 -U 1338 ; WX 816 ; N uni053A ; G 1098 -U 1339 ; WX 772 ; N uni053B ; G 1099 -U 1340 ; WX 682 ; N uni053C ; G 1100 -U 1341 ; WX 1097 ; N uni053D ; G 1101 -U 1342 ; WX 845 ; N uni053E ; G 1102 -U 1343 ; WX 804 ; N uni053F ; G 1103 -U 1344 ; WX 719 ; N uni0540 ; G 1104 -U 1345 ; WX 810 ; N uni0541 ; G 1105 -U 1346 ; WX 833 ; N uni0542 ; G 1106 -U 1347 ; WX 831 ; N uni0543 ; G 1107 -U 1348 ; WX 897 ; N uni0544 ; G 1108 -U 1349 ; WX 763 ; N uni0545 ; G 1109 -U 1350 ; WX 794 ; N uni0546 ; G 1110 -U 1351 ; WX 754 ; N uni0547 ; G 1111 -U 1352 ; WX 799 ; N uni0548 ; G 1112 -U 1353 ; WX 797 ; N uni0549 ; G 1113 -U 1354 ; WX 875 ; N uni054A ; G 1114 -U 1355 ; WX 830 ; N uni054B ; G 1115 -U 1356 ; WX 864 ; N uni054C ; G 1116 -U 1357 ; WX 799 ; N uni054D ; G 1117 -U 1358 ; WX 802 ; N uni054E ; G 1118 -U 1359 ; WX 731 ; N uni054F ; G 1119 -U 1360 ; WX 774 ; N uni0550 ; G 1120 -U 1361 ; WX 749 ; N uni0551 ; G 1121 -U 1362 ; WX 633 ; N uni0552 ; G 1122 -U 1363 ; WX 845 ; N uni0553 ; G 1123 -U 1364 ; WX 843 ; N uni0554 ; G 1124 -U 1365 ; WX 835 ; N uni0555 ; G 1125 -U 1366 ; WX 821 ; N uni0556 ; G 1126 -U 1369 ; WX 307 ; N uni0559 ; G 1127 -U 1370 ; WX 264 ; N uni055A ; G 1128 -U 1371 ; WX 229 ; N uni055B ; G 1129 -U 1372 ; WX 391 ; N uni055C ; G 1130 -U 1373 ; WX 364 ; N uni055D ; G 1131 -U 1374 ; WX 386 ; N uni055E ; G 1132 -U 1375 ; WX 500 ; N uni055F ; G 1133 -U 1377 ; WX 949 ; N uni0561 ; G 1134 -U 1378 ; WX 618 ; N uni0562 ; G 1135 -U 1379 ; WX 695 ; N uni0563 ; G 1136 -U 1380 ; WX 695 ; N uni0564 ; G 1137 -U 1381 ; WX 628 ; N uni0565 ; G 1138 -U 1382 ; WX 688 ; N uni0566 ; G 1139 -U 1383 ; WX 510 ; N uni0567 ; G 1140 -U 1384 ; WX 636 ; N uni0568 ; G 1141 -U 1385 ; WX 791 ; N uni0569 ; G 1142 -U 1386 ; WX 671 ; N uni056A ; G 1143 -U 1387 ; WX 635 ; N uni056B ; G 1144 -U 1388 ; WX 305 ; N uni056C ; G 1145 -U 1389 ; WX 973 ; N uni056D ; G 1146 -U 1390 ; WX 614 ; N uni056E ; G 1147 -U 1391 ; WX 628 ; N uni056F ; G 1148 -U 1392 ; WX 636 ; N uni0570 ; G 1149 -U 1393 ; WX 630 ; N uni0571 ; G 1150 -U 1394 ; WX 636 ; N uni0572 ; G 1151 -U 1395 ; WX 654 ; N uni0573 ; G 1152 -U 1396 ; WX 644 ; N uni0574 ; G 1153 -U 1397 ; WX 309 ; N uni0575 ; G 1154 -U 1398 ; WX 636 ; N uni0576 ; G 1155 -U 1399 ; WX 461 ; N uni0577 ; G 1156 -U 1400 ; WX 649 ; N uni0578 ; G 1157 -U 1401 ; WX 365 ; N uni0579 ; G 1158 -U 1402 ; WX 940 ; N uni057A ; G 1159 -U 1403 ; WX 562 ; N uni057B ; G 1160 -U 1404 ; WX 657 ; N uni057C ; G 1161 -U 1405 ; WX 644 ; N uni057D ; G 1162 -U 1406 ; WX 630 ; N uni057E ; G 1163 -U 1407 ; WX 930 ; N uni057F ; G 1164 -U 1408 ; WX 644 ; N uni0580 ; G 1165 -U 1409 ; WX 643 ; N uni0581 ; G 1166 -U 1410 ; WX 483 ; N uni0582 ; G 1167 -U 1411 ; WX 930 ; N uni0583 ; G 1168 -U 1412 ; WX 636 ; N uni0584 ; G 1169 -U 1413 ; WX 609 ; N uni0585 ; G 1170 -U 1414 ; WX 809 ; N uni0586 ; G 1171 -U 1415 ; WX 789 ; N uni0587 ; G 1172 -U 1417 ; WX 340 ; N uni0589 ; G 1173 -U 1418 ; WX 334 ; N uni058A ; G 1174 -U 3647 ; WX 636 ; N uni0E3F ; G 1175 -U 4256 ; WX 732 ; N uni10A0 ; G 1176 -U 4257 ; WX 860 ; N uni10A1 ; G 1177 -U 4258 ; WX 837 ; N uni10A2 ; G 1178 -U 4259 ; WX 869 ; N uni10A3 ; G 1179 -U 4260 ; WX 743 ; N uni10A4 ; G 1180 -U 4261 ; WX 991 ; N uni10A5 ; G 1181 -U 4262 ; WX 925 ; N uni10A6 ; G 1182 -U 4263 ; WX 1111 ; N uni10A7 ; G 1183 -U 4264 ; WX 576 ; N uni10A8 ; G 1184 -U 4265 ; WX 760 ; N uni10A9 ; G 1185 -U 4266 ; WX 972 ; N uni10AA ; G 1186 -U 4267 ; WX 951 ; N uni10AB ; G 1187 -U 4268 ; WX 753 ; N uni10AC ; G 1188 -U 4269 ; WX 1084 ; N uni10AD ; G 1189 -U 4270 ; WX 906 ; N uni10AE ; G 1190 -U 4271 ; WX 838 ; N uni10AF ; G 1191 -U 4272 ; WX 1049 ; N uni10B0 ; G 1192 -U 4273 ; WX 743 ; N uni10B1 ; G 1193 -U 4274 ; WX 679 ; N uni10B2 ; G 1194 -U 4275 ; WX 1025 ; N uni10B3 ; G 1195 -U 4276 ; WX 946 ; N uni10B4 ; G 1196 -U 4277 ; WX 1029 ; N uni10B5 ; G 1197 -U 4278 ; WX 741 ; N uni10B6 ; G 1198 -U 4279 ; WX 743 ; N uni10B7 ; G 1199 -U 4280 ; WX 742 ; N uni10B8 ; G 1200 -U 4281 ; WX 743 ; N uni10B9 ; G 1201 -U 4282 ; WX 889 ; N uni10BA ; G 1202 -U 4283 ; WX 946 ; N uni10BB ; G 1203 -U 4284 ; WX 724 ; N uni10BC ; G 1204 -U 4285 ; WX 765 ; N uni10BD ; G 1205 -U 4286 ; WX 743 ; N uni10BE ; G 1206 -U 4287 ; WX 968 ; N uni10BF ; G 1207 -U 4288 ; WX 1010 ; N uni10C0 ; G 1208 -U 4289 ; WX 712 ; N uni10C1 ; G 1209 -U 4290 ; WX 874 ; N uni10C2 ; G 1210 -U 4291 ; WX 744 ; N uni10C3 ; G 1211 -U 4292 ; WX 847 ; N uni10C4 ; G 1212 -U 4293 ; WX 960 ; N uni10C5 ; G 1213 -U 4304 ; WX 550 ; N uni10D0 ; G 1214 -U 4305 ; WX 581 ; N uni10D1 ; G 1215 -U 4306 ; WX 599 ; N uni10D2 ; G 1216 -U 4307 ; WX 843 ; N uni10D3 ; G 1217 -U 4308 ; WX 571 ; N uni10D4 ; G 1218 -U 4309 ; WX 567 ; N uni10D5 ; G 1219 -U 4310 ; WX 620 ; N uni10D6 ; G 1220 -U 4311 ; WX 871 ; N uni10D7 ; G 1221 -U 4312 ; WX 569 ; N uni10D8 ; G 1222 -U 4313 ; WX 556 ; N uni10D9 ; G 1223 -U 4314 ; WX 1076 ; N uni10DA ; G 1224 -U 4315 ; WX 596 ; N uni10DB ; G 1225 -U 4316 ; WX 596 ; N uni10DC ; G 1226 -U 4317 ; WX 835 ; N uni10DD ; G 1227 -U 4318 ; WX 580 ; N uni10DE ; G 1228 -U 4319 ; WX 590 ; N uni10DF ; G 1229 -U 4320 ; WX 833 ; N uni10E0 ; G 1230 -U 4321 ; WX 607 ; N uni10E1 ; G 1231 -U 4322 ; WX 758 ; N uni10E2 ; G 1232 -U 4323 ; WX 701 ; N uni10E3 ; G 1233 -U 4324 ; WX 825 ; N uni10E4 ; G 1234 -U 4325 ; WX 595 ; N uni10E5 ; G 1235 -U 4326 ; WX 868 ; N uni10E6 ; G 1236 -U 4327 ; WX 578 ; N uni10E7 ; G 1237 -U 4328 ; WX 604 ; N uni10E8 ; G 1238 -U 4329 ; WX 596 ; N uni10E9 ; G 1239 -U 4330 ; WX 685 ; N uni10EA ; G 1240 -U 4331 ; WX 597 ; N uni10EB ; G 1241 -U 4332 ; WX 557 ; N uni10EC ; G 1242 -U 4333 ; WX 585 ; N uni10ED ; G 1243 -U 4334 ; WX 625 ; N uni10EE ; G 1244 -U 4335 ; WX 693 ; N uni10EF ; G 1245 -U 4336 ; WX 582 ; N uni10F0 ; G 1246 -U 4337 ; WX 613 ; N uni10F1 ; G 1247 -U 4338 ; WX 581 ; N uni10F2 ; G 1248 -U 4339 ; WX 582 ; N uni10F3 ; G 1249 -U 4340 ; WX 580 ; N uni10F4 ; G 1250 -U 4341 ; WX 659 ; N uni10F5 ; G 1251 -U 4342 ; WX 896 ; N uni10F6 ; G 1252 -U 4343 ; WX 636 ; N uni10F7 ; G 1253 -U 4344 ; WX 592 ; N uni10F8 ; G 1254 -U 4345 ; WX 628 ; N uni10F9 ; G 1255 -U 4346 ; WX 581 ; N uni10FA ; G 1256 -U 4347 ; WX 456 ; N uni10FB ; G 1257 -U 4348 ; WX 373 ; N uni10FC ; G 1258 -U 7424 ; WX 565 ; N uni1D00 ; G 1259 -U 7425 ; WX 774 ; N uni1D01 ; G 1260 -U 7426 ; WX 940 ; N uni1D02 ; G 1261 -U 7427 ; WX 563 ; N uni1D03 ; G 1262 -U 7428 ; WX 560 ; N uni1D04 ; G 1263 -U 7429 ; WX 585 ; N uni1D05 ; G 1264 -U 7430 ; WX 585 ; N uni1D06 ; G 1265 -U 7431 ; WX 553 ; N uni1D07 ; G 1266 -U 7432 ; WX 509 ; N uni1D08 ; G 1267 -U 7433 ; WX 320 ; N uni1D09 ; G 1268 -U 7434 ; WX 499 ; N uni1D0A ; G 1269 -U 7435 ; WX 597 ; N uni1D0B ; G 1270 -U 7436 ; WX 543 ; N uni1D0C ; G 1271 -U 7437 ; WX 778 ; N uni1D0D ; G 1272 -U 7438 ; WX 667 ; N uni1D0E ; G 1273 -U 7439 ; WX 602 ; N uni1D0F ; G 1274 -U 7440 ; WX 560 ; N uni1D10 ; G 1275 -U 7441 ; WX 647 ; N uni1D11 ; G 1276 -U 7442 ; WX 647 ; N uni1D12 ; G 1277 -U 7443 ; WX 647 ; N uni1D13 ; G 1278 -U 7444 ; WX 989 ; N uni1D14 ; G 1279 -U 7445 ; WX 512 ; N uni1D15 ; G 1280 -U 7446 ; WX 602 ; N uni1D16 ; G 1281 -U 7447 ; WX 602 ; N uni1D17 ; G 1282 -U 7448 ; WX 553 ; N uni1D18 ; G 1283 -U 7449 ; WX 594 ; N uni1D19 ; G 1284 -U 7450 ; WX 594 ; N uni1D1A ; G 1285 -U 7451 ; WX 553 ; N uni1D1B ; G 1286 -U 7452 ; WX 585 ; N uni1D1C ; G 1287 -U 7453 ; WX 664 ; N uni1D1D ; G 1288 -U 7454 ; WX 923 ; N uni1D1E ; G 1289 -U 7455 ; WX 655 ; N uni1D1F ; G 1290 -U 7456 ; WX 565 ; N uni1D20 ; G 1291 -U 7457 ; WX 856 ; N uni1D21 ; G 1292 -U 7458 ; WX 527 ; N uni1D22 ; G 1293 -U 7459 ; WX 527 ; N uni1D23 ; G 1294 -U 7460 ; WX 531 ; N uni1D24 ; G 1295 -U 7461 ; WX 743 ; N uni1D25 ; G 1296 -U 7462 ; WX 524 ; N uni1D26 ; G 1297 -U 7463 ; WX 565 ; N uni1D27 ; G 1298 -U 7464 ; WX 657 ; N uni1D28 ; G 1299 -U 7465 ; WX 553 ; N uni1D29 ; G 1300 -U 7466 ; WX 703 ; N uni1D2A ; G 1301 -U 7467 ; WX 635 ; N uni1D2B ; G 1302 -U 7468 ; WX 455 ; N uni1D2C ; G 1303 -U 7469 ; WX 630 ; N uni1D2D ; G 1304 -U 7470 ; WX 463 ; N uni1D2E ; G 1305 -U 7471 ; WX 463 ; N uni1D2F ; G 1306 -U 7472 ; WX 505 ; N uni1D30 ; G 1307 -U 7473 ; WX 459 ; N uni1D31 ; G 1308 -U 7474 ; WX 459 ; N uni1D32 ; G 1309 -U 7475 ; WX 503 ; N uni1D33 ; G 1310 -U 7476 ; WX 549 ; N uni1D34 ; G 1311 -U 7477 ; WX 249 ; N uni1D35 ; G 1312 -U 7478 ; WX 252 ; N uni1D36 ; G 1313 -U 7479 ; WX 470 ; N uni1D37 ; G 1314 -U 7480 ; WX 418 ; N uni1D38 ; G 1315 -U 7481 ; WX 645 ; N uni1D39 ; G 1316 -U 7482 ; WX 551 ; N uni1D3A ; G 1317 -U 7483 ; WX 551 ; N uni1D3B ; G 1318 -U 7484 ; WX 516 ; N uni1D3C ; G 1319 -U 7485 ; WX 369 ; N uni1D3D ; G 1320 -U 7486 ; WX 424 ; N uni1D3E ; G 1321 -U 7487 ; WX 474 ; N uni1D3F ; G 1322 -U 7488 ; WX 420 ; N uni1D40 ; G 1323 -U 7489 ; WX 531 ; N uni1D41 ; G 1324 -U 7490 ; WX 647 ; N uni1D42 ; G 1325 -U 7491 ; WX 375 ; N uni1D43 ; G 1326 -U 7492 ; WX 375 ; N uni1D44 ; G 1327 -U 7493 ; WX 425 ; N uni1D45 ; G 1328 -U 7494 ; WX 592 ; N uni1D46 ; G 1329 -U 7495 ; WX 400 ; N uni1D47 ; G 1330 -U 7496 ; WX 400 ; N uni1D48 ; G 1331 -U 7497 ; WX 387 ; N uni1D49 ; G 1332 -U 7498 ; WX 387 ; N uni1D4A ; G 1333 -U 7499 ; WX 428 ; N uni1D4B ; G 1334 -U 7500 ; WX 340 ; N uni1D4C ; G 1335 -U 7501 ; WX 400 ; N uni1D4D ; G 1336 -U 7502 ; WX 175 ; N uni1D4E ; G 1337 -U 7503 ; WX 365 ; N uni1D4F ; G 1338 -U 7504 ; WX 613 ; N uni1D50 ; G 1339 -U 7505 ; WX 399 ; N uni1D51 ; G 1340 -U 7506 ; WX 385 ; N uni1D52 ; G 1341 -U 7507 ; WX 346 ; N uni1D53 ; G 1342 -U 7508 ; WX 385 ; N uni1D54 ; G 1343 -U 7509 ; WX 385 ; N uni1D55 ; G 1344 -U 7510 ; WX 400 ; N uni1D56 ; G 1345 -U 7511 ; WX 247 ; N uni1D57 ; G 1346 -U 7512 ; WX 399 ; N uni1D58 ; G 1347 -U 7513 ; WX 418 ; N uni1D59 ; G 1348 -U 7514 ; WX 613 ; N uni1D5A ; G 1349 -U 7515 ; WX 373 ; N uni1D5B ; G 1350 -U 7516 ; WX 468 ; N uni1D5C ; G 1351 -U 7517 ; WX 364 ; N uni1D5D ; G 1352 -U 7518 ; WX 376 ; N uni1D5E ; G 1353 -U 7519 ; WX 379 ; N uni1D5F ; G 1354 -U 7520 ; WX 441 ; N uni1D60 ; G 1355 -U 7521 ; WX 381 ; N uni1D61 ; G 1356 -U 7522 ; WX 201 ; N uni1D62 ; G 1357 -U 7523 ; WX 347 ; N uni1D63 ; G 1358 -U 7524 ; WX 399 ; N uni1D64 ; G 1359 -U 7525 ; WX 373 ; N uni1D65 ; G 1360 -U 7526 ; WX 364 ; N uni1D66 ; G 1361 -U 7527 ; WX 376 ; N uni1D67 ; G 1362 -U 7528 ; WX 370 ; N uni1D68 ; G 1363 -U 7529 ; WX 441 ; N uni1D69 ; G 1364 -U 7530 ; WX 381 ; N uni1D6A ; G 1365 -U 7531 ; WX 974 ; N uni1D6B ; G 1366 -U 7543 ; WX 640 ; N uni1D77 ; G 1367 -U 7544 ; WX 549 ; N uni1D78 ; G 1368 -U 7547 ; WX 320 ; N uni1D7B ; G 1369 -U 7548 ; WX 392 ; N uni1D7C ; G 1370 -U 7549 ; WX 640 ; N uni1D7D ; G 1371 -U 7550 ; WX 585 ; N uni1D7E ; G 1372 -U 7551 ; WX 620 ; N uni1D7F ; G 1373 -U 7557 ; WX 320 ; N uni1D85 ; G 1374 -U 7579 ; WX 425 ; N uni1D9B ; G 1375 -U 7580 ; WX 353 ; N uni1D9C ; G 1376 -U 7581 ; WX 353 ; N uni1D9D ; G 1377 -U 7582 ; WX 473 ; N uni1D9E ; G 1378 -U 7583 ; WX 428 ; N uni1D9F ; G 1379 -U 7584 ; WX 233 ; N uni1DA0 ; G 1380 -U 7585 ; WX 316 ; N uni1DA1 ; G 1381 -U 7586 ; WX 488 ; N uni1DA2 ; G 1382 -U 7587 ; WX 399 ; N uni1DA3 ; G 1383 -U 7588 ; WX 201 ; N uni1DA4 ; G 1384 -U 7589 ; WX 201 ; N uni1DA5 ; G 1385 -U 7590 ; WX 201 ; N uni1DA6 ; G 1386 -U 7591 ; WX 201 ; N uni1DA7 ; G 1387 -U 7592 ; WX 318 ; N uni1DA8 ; G 1388 -U 7593 ; WX 263 ; N uni1DA9 ; G 1389 -U 7594 ; WX 263 ; N uni1DAA ; G 1390 -U 7595 ; WX 455 ; N uni1DAB ; G 1391 -U 7596 ; WX 613 ; N uni1DAC ; G 1392 -U 7597 ; WX 613 ; N uni1DAD ; G 1393 -U 7598 ; WX 495 ; N uni1DAE ; G 1394 -U 7599 ; WX 492 ; N uni1DAF ; G 1395 -U 7600 ; WX 487 ; N uni1DB0 ; G 1396 -U 7601 ; WX 385 ; N uni1DB1 ; G 1397 -U 7602 ; WX 473 ; N uni1DB2 ; G 1398 -U 7603 ; WX 328 ; N uni1DB3 ; G 1399 -U 7604 ; WX 299 ; N uni1DB4 ; G 1400 -U 7605 ; WX 334 ; N uni1DB5 ; G 1401 -U 7606 ; WX 399 ; N uni1DB6 ; G 1402 -U 7607 ; WX 477 ; N uni1DB7 ; G 1403 -U 7608 ; WX 368 ; N uni1DB8 ; G 1404 -U 7609 ; WX 464 ; N uni1DB9 ; G 1405 -U 7610 ; WX 355 ; N uni1DBA ; G 1406 -U 7611 ; WX 332 ; N uni1DBB ; G 1407 -U 7612 ; WX 418 ; N uni1DBC ; G 1408 -U 7613 ; WX 418 ; N uni1DBD ; G 1409 -U 7614 ; WX 452 ; N uni1DBE ; G 1410 -U 7615 ; WX 473 ; N uni1DBF ; G 1411 -U 7620 ; WX 0 ; N uni1DC4 ; G 1412 -U 7621 ; WX 0 ; N uni1DC5 ; G 1413 -U 7622 ; WX 0 ; N uni1DC6 ; G 1414 -U 7623 ; WX 0 ; N uni1DC7 ; G 1415 -U 7624 ; WX 0 ; N uni1DC8 ; G 1416 -U 7625 ; WX 0 ; N uni1DC9 ; G 1417 -U 7680 ; WX 722 ; N uni1E00 ; G 1418 -U 7681 ; WX 596 ; N uni1E01 ; G 1419 -U 7682 ; WX 735 ; N uni1E02 ; G 1420 -U 7683 ; WX 640 ; N uni1E03 ; G 1421 -U 7684 ; WX 735 ; N uni1E04 ; G 1422 -U 7685 ; WX 640 ; N uni1E05 ; G 1423 -U 7686 ; WX 735 ; N uni1E06 ; G 1424 -U 7687 ; WX 640 ; N uni1E07 ; G 1425 -U 7688 ; WX 765 ; N uni1E08 ; G 1426 -U 7689 ; WX 560 ; N uni1E09 ; G 1427 -U 7690 ; WX 802 ; N uni1E0A ; G 1428 -U 7691 ; WX 640 ; N uni1E0B ; G 1429 -U 7692 ; WX 802 ; N uni1E0C ; G 1430 -U 7693 ; WX 640 ; N uni1E0D ; G 1431 -U 7694 ; WX 802 ; N uni1E0E ; G 1432 -U 7695 ; WX 640 ; N uni1E0F ; G 1433 -U 7696 ; WX 802 ; N uni1E10 ; G 1434 -U 7697 ; WX 640 ; N uni1E11 ; G 1435 -U 7698 ; WX 802 ; N uni1E12 ; G 1436 -U 7699 ; WX 640 ; N uni1E13 ; G 1437 -U 7700 ; WX 730 ; N uni1E14 ; G 1438 -U 7701 ; WX 592 ; N uni1E15 ; G 1439 -U 7702 ; WX 730 ; N uni1E16 ; G 1440 -U 7703 ; WX 592 ; N uni1E17 ; G 1441 -U 7704 ; WX 730 ; N uni1E18 ; G 1442 -U 7705 ; WX 592 ; N uni1E19 ; G 1443 -U 7706 ; WX 730 ; N uni1E1A ; G 1444 -U 7707 ; WX 592 ; N uni1E1B ; G 1445 -U 7708 ; WX 730 ; N uni1E1C ; G 1446 -U 7709 ; WX 592 ; N uni1E1D ; G 1447 -U 7710 ; WX 694 ; N uni1E1E ; G 1448 -U 7711 ; WX 370 ; N uni1E1F ; G 1449 -U 7712 ; WX 799 ; N uni1E20 ; G 1450 -U 7713 ; WX 640 ; N uni1E21 ; G 1451 -U 7714 ; WX 872 ; N uni1E22 ; G 1452 -U 7715 ; WX 644 ; N uni1E23 ; G 1453 -U 7716 ; WX 872 ; N uni1E24 ; G 1454 -U 7717 ; WX 644 ; N uni1E25 ; G 1455 -U 7718 ; WX 872 ; N uni1E26 ; G 1456 -U 7719 ; WX 644 ; N uni1E27 ; G 1457 -U 7720 ; WX 872 ; N uni1E28 ; G 1458 -U 7721 ; WX 644 ; N uni1E29 ; G 1459 -U 7722 ; WX 872 ; N uni1E2A ; G 1460 -U 7723 ; WX 644 ; N uni1E2B ; G 1461 -U 7724 ; WX 395 ; N uni1E2C ; G 1462 -U 7725 ; WX 320 ; N uni1E2D ; G 1463 -U 7726 ; WX 395 ; N uni1E2E ; G 1464 -U 7727 ; WX 320 ; N uni1E2F ; G 1465 -U 7728 ; WX 747 ; N uni1E30 ; G 1466 -U 7729 ; WX 606 ; N uni1E31 ; G 1467 -U 7730 ; WX 747 ; N uni1E32 ; G 1468 -U 7731 ; WX 606 ; N uni1E33 ; G 1469 -U 7732 ; WX 747 ; N uni1E34 ; G 1470 -U 7733 ; WX 606 ; N uni1E35 ; G 1471 -U 7734 ; WX 664 ; N uni1E36 ; G 1472 -U 7735 ; WX 320 ; N uni1E37 ; G 1473 -U 7736 ; WX 664 ; N uni1E38 ; G 1474 -U 7737 ; WX 320 ; N uni1E39 ; G 1475 -U 7738 ; WX 664 ; N uni1E3A ; G 1476 -U 7739 ; WX 320 ; N uni1E3B ; G 1477 -U 7740 ; WX 664 ; N uni1E3C ; G 1478 -U 7741 ; WX 320 ; N uni1E3D ; G 1479 -U 7742 ; WX 1024 ; N uni1E3E ; G 1480 -U 7743 ; WX 948 ; N uni1E3F ; G 1481 -U 7744 ; WX 1024 ; N uni1E40 ; G 1482 -U 7745 ; WX 948 ; N uni1E41 ; G 1483 -U 7746 ; WX 1024 ; N uni1E42 ; G 1484 -U 7747 ; WX 953 ; N uni1E43 ; G 1485 -U 7748 ; WX 875 ; N uni1E44 ; G 1486 -U 7749 ; WX 644 ; N uni1E45 ; G 1487 -U 7750 ; WX 875 ; N uni1E46 ; G 1488 -U 7751 ; WX 644 ; N uni1E47 ; G 1489 -U 7752 ; WX 875 ; N uni1E48 ; G 1490 -U 7753 ; WX 644 ; N uni1E49 ; G 1491 -U 7754 ; WX 875 ; N uni1E4A ; G 1492 -U 7755 ; WX 644 ; N uni1E4B ; G 1493 -U 7756 ; WX 820 ; N uni1E4C ; G 1494 -U 7757 ; WX 602 ; N uni1E4D ; G 1495 -U 7758 ; WX 820 ; N uni1E4E ; G 1496 -U 7759 ; WX 602 ; N uni1E4F ; G 1497 -U 7760 ; WX 820 ; N uni1E50 ; G 1498 -U 7761 ; WX 602 ; N uni1E51 ; G 1499 -U 7762 ; WX 820 ; N uni1E52 ; G 1500 -U 7763 ; WX 602 ; N uni1E53 ; G 1501 -U 7764 ; WX 673 ; N uni1E54 ; G 1502 -U 7765 ; WX 640 ; N uni1E55 ; G 1503 -U 7766 ; WX 673 ; N uni1E56 ; G 1504 -U 7767 ; WX 640 ; N uni1E57 ; G 1505 -U 7768 ; WX 753 ; N uni1E58 ; G 1506 -U 7769 ; WX 478 ; N uni1E59 ; G 1507 -U 7770 ; WX 753 ; N uni1E5A ; G 1508 -U 7771 ; WX 478 ; N uni1E5B ; G 1509 -U 7772 ; WX 753 ; N uni1E5C ; G 1510 -U 7773 ; WX 478 ; N uni1E5D ; G 1511 -U 7774 ; WX 753 ; N uni1E5E ; G 1512 -U 7775 ; WX 478 ; N uni1E5F ; G 1513 -U 7776 ; WX 685 ; N uni1E60 ; G 1514 -U 7777 ; WX 513 ; N uni1E61 ; G 1515 -U 7778 ; WX 685 ; N uni1E62 ; G 1516 -U 7779 ; WX 513 ; N uni1E63 ; G 1517 -U 7780 ; WX 685 ; N uni1E64 ; G 1518 -U 7781 ; WX 513 ; N uni1E65 ; G 1519 -U 7782 ; WX 685 ; N uni1E66 ; G 1520 -U 7783 ; WX 521 ; N uni1E67 ; G 1521 -U 7784 ; WX 685 ; N uni1E68 ; G 1522 -U 7785 ; WX 513 ; N uni1E69 ; G 1523 -U 7786 ; WX 667 ; N uni1E6A ; G 1524 -U 7787 ; WX 402 ; N uni1E6B ; G 1525 -U 7788 ; WX 667 ; N uni1E6C ; G 1526 -U 7789 ; WX 402 ; N uni1E6D ; G 1527 -U 7790 ; WX 667 ; N uni1E6E ; G 1528 -U 7791 ; WX 402 ; N uni1E6F ; G 1529 -U 7792 ; WX 667 ; N uni1E70 ; G 1530 -U 7793 ; WX 402 ; N uni1E71 ; G 1531 -U 7794 ; WX 843 ; N uni1E72 ; G 1532 -U 7795 ; WX 644 ; N uni1E73 ; G 1533 -U 7796 ; WX 843 ; N uni1E74 ; G 1534 -U 7797 ; WX 644 ; N uni1E75 ; G 1535 -U 7798 ; WX 843 ; N uni1E76 ; G 1536 -U 7799 ; WX 644 ; N uni1E77 ; G 1537 -U 7800 ; WX 843 ; N uni1E78 ; G 1538 -U 7801 ; WX 644 ; N uni1E79 ; G 1539 -U 7802 ; WX 843 ; N uni1E7A ; G 1540 -U 7803 ; WX 644 ; N uni1E7B ; G 1541 -U 7804 ; WX 722 ; N uni1E7C ; G 1542 -U 7805 ; WX 565 ; N uni1E7D ; G 1543 -U 7806 ; WX 722 ; N uni1E7E ; G 1544 -U 7807 ; WX 565 ; N uni1E7F ; G 1545 -U 7808 ; WX 1028 ; N Wgrave ; G 1546 -U 7809 ; WX 856 ; N wgrave ; G 1547 -U 7810 ; WX 1028 ; N Wacute ; G 1548 -U 7811 ; WX 856 ; N wacute ; G 1549 -U 7812 ; WX 1028 ; N Wdieresis ; G 1550 -U 7813 ; WX 856 ; N wdieresis ; G 1551 -U 7814 ; WX 1028 ; N uni1E86 ; G 1552 -U 7815 ; WX 856 ; N uni1E87 ; G 1553 -U 7816 ; WX 1028 ; N uni1E88 ; G 1554 -U 7817 ; WX 856 ; N uni1E89 ; G 1555 -U 7818 ; WX 712 ; N uni1E8A ; G 1556 -U 7819 ; WX 564 ; N uni1E8B ; G 1557 -U 7820 ; WX 712 ; N uni1E8C ; G 1558 -U 7821 ; WX 564 ; N uni1E8D ; G 1559 -U 7822 ; WX 660 ; N uni1E8E ; G 1560 -U 7823 ; WX 565 ; N uni1E8F ; G 1561 -U 7824 ; WX 695 ; N uni1E90 ; G 1562 -U 7825 ; WX 527 ; N uni1E91 ; G 1563 -U 7826 ; WX 695 ; N uni1E92 ; G 1564 -U 7827 ; WX 527 ; N uni1E93 ; G 1565 -U 7828 ; WX 695 ; N uni1E94 ; G 1566 -U 7829 ; WX 527 ; N uni1E95 ; G 1567 -U 7830 ; WX 644 ; N uni1E96 ; G 1568 -U 7831 ; WX 402 ; N uni1E97 ; G 1569 -U 7832 ; WX 856 ; N uni1E98 ; G 1570 -U 7833 ; WX 565 ; N uni1E99 ; G 1571 -U 7834 ; WX 903 ; N uni1E9A ; G 1572 -U 7835 ; WX 370 ; N uni1E9B ; G 1573 -U 7836 ; WX 370 ; N uni1E9C ; G 1574 -U 7837 ; WX 370 ; N uni1E9D ; G 1575 -U 7838 ; WX 829 ; N uni1E9E ; G 1576 -U 7839 ; WX 602 ; N uni1E9F ; G 1577 -U 7840 ; WX 722 ; N uni1EA0 ; G 1578 -U 7841 ; WX 596 ; N uni1EA1 ; G 1579 -U 7842 ; WX 722 ; N uni1EA2 ; G 1580 -U 7843 ; WX 596 ; N uni1EA3 ; G 1581 -U 7844 ; WX 722 ; N uni1EA4 ; G 1582 -U 7845 ; WX 613 ; N uni1EA5 ; G 1583 -U 7846 ; WX 722 ; N uni1EA6 ; G 1584 -U 7847 ; WX 613 ; N uni1EA7 ; G 1585 -U 7848 ; WX 722 ; N uni1EA8 ; G 1586 -U 7849 ; WX 613 ; N uni1EA9 ; G 1587 -U 7850 ; WX 722 ; N uni1EAA ; G 1588 -U 7851 ; WX 613 ; N uni1EAB ; G 1589 -U 7852 ; WX 722 ; N uni1EAC ; G 1590 -U 7853 ; WX 596 ; N uni1EAD ; G 1591 -U 7854 ; WX 722 ; N uni1EAE ; G 1592 -U 7855 ; WX 596 ; N uni1EAF ; G 1593 -U 7856 ; WX 722 ; N uni1EB0 ; G 1594 -U 7857 ; WX 596 ; N uni1EB1 ; G 1595 -U 7858 ; WX 722 ; N uni1EB2 ; G 1596 -U 7859 ; WX 596 ; N uni1EB3 ; G 1597 -U 7860 ; WX 722 ; N uni1EB4 ; G 1598 -U 7861 ; WX 596 ; N uni1EB5 ; G 1599 -U 7862 ; WX 722 ; N uni1EB6 ; G 1600 -U 7863 ; WX 596 ; N uni1EB7 ; G 1601 -U 7864 ; WX 730 ; N uni1EB8 ; G 1602 -U 7865 ; WX 592 ; N uni1EB9 ; G 1603 -U 7866 ; WX 730 ; N uni1EBA ; G 1604 -U 7867 ; WX 592 ; N uni1EBB ; G 1605 -U 7868 ; WX 730 ; N uni1EBC ; G 1606 -U 7869 ; WX 592 ; N uni1EBD ; G 1607 -U 7870 ; WX 730 ; N uni1EBE ; G 1608 -U 7871 ; WX 615 ; N uni1EBF ; G 1609 -U 7872 ; WX 730 ; N uni1EC0 ; G 1610 -U 7873 ; WX 615 ; N uni1EC1 ; G 1611 -U 7874 ; WX 730 ; N uni1EC2 ; G 1612 -U 7875 ; WX 615 ; N uni1EC3 ; G 1613 -U 7876 ; WX 730 ; N uni1EC4 ; G 1614 -U 7877 ; WX 615 ; N uni1EC5 ; G 1615 -U 7878 ; WX 730 ; N uni1EC6 ; G 1616 -U 7879 ; WX 592 ; N uni1EC7 ; G 1617 -U 7880 ; WX 395 ; N uni1EC8 ; G 1618 -U 7881 ; WX 320 ; N uni1EC9 ; G 1619 -U 7882 ; WX 395 ; N uni1ECA ; G 1620 -U 7883 ; WX 320 ; N uni1ECB ; G 1621 -U 7884 ; WX 820 ; N uni1ECC ; G 1622 -U 7885 ; WX 602 ; N uni1ECD ; G 1623 -U 7886 ; WX 820 ; N uni1ECE ; G 1624 -U 7887 ; WX 602 ; N uni1ECF ; G 1625 -U 7888 ; WX 820 ; N uni1ED0 ; G 1626 -U 7889 ; WX 612 ; N uni1ED1 ; G 1627 -U 7890 ; WX 820 ; N uni1ED2 ; G 1628 -U 7891 ; WX 612 ; N uni1ED3 ; G 1629 -U 7892 ; WX 820 ; N uni1ED4 ; G 1630 -U 7893 ; WX 612 ; N uni1ED5 ; G 1631 -U 7894 ; WX 820 ; N uni1ED6 ; G 1632 -U 7895 ; WX 612 ; N uni1ED7 ; G 1633 -U 7896 ; WX 820 ; N uni1ED8 ; G 1634 -U 7897 ; WX 602 ; N uni1ED9 ; G 1635 -U 7898 ; WX 820 ; N uni1EDA ; G 1636 -U 7899 ; WX 602 ; N uni1EDB ; G 1637 -U 7900 ; WX 820 ; N uni1EDC ; G 1638 -U 7901 ; WX 602 ; N uni1EDD ; G 1639 -U 7902 ; WX 820 ; N uni1EDE ; G 1640 -U 7903 ; WX 602 ; N uni1EDF ; G 1641 -U 7904 ; WX 820 ; N uni1EE0 ; G 1642 -U 7905 ; WX 602 ; N uni1EE1 ; G 1643 -U 7906 ; WX 820 ; N uni1EE2 ; G 1644 -U 7907 ; WX 602 ; N uni1EE3 ; G 1645 -U 7908 ; WX 843 ; N uni1EE4 ; G 1646 -U 7909 ; WX 644 ; N uni1EE5 ; G 1647 -U 7910 ; WX 843 ; N uni1EE6 ; G 1648 -U 7911 ; WX 644 ; N uni1EE7 ; G 1649 -U 7912 ; WX 843 ; N uni1EE8 ; G 1650 -U 7913 ; WX 644 ; N uni1EE9 ; G 1651 -U 7914 ; WX 843 ; N uni1EEA ; G 1652 -U 7915 ; WX 644 ; N uni1EEB ; G 1653 -U 7916 ; WX 843 ; N uni1EEC ; G 1654 -U 7917 ; WX 644 ; N uni1EED ; G 1655 -U 7918 ; WX 843 ; N uni1EEE ; G 1656 -U 7919 ; WX 644 ; N uni1EEF ; G 1657 -U 7920 ; WX 843 ; N uni1EF0 ; G 1658 -U 7921 ; WX 644 ; N uni1EF1 ; G 1659 -U 7922 ; WX 660 ; N Ygrave ; G 1660 -U 7923 ; WX 565 ; N ygrave ; G 1661 -U 7924 ; WX 660 ; N uni1EF4 ; G 1662 -U 7925 ; WX 565 ; N uni1EF5 ; G 1663 -U 7926 ; WX 660 ; N uni1EF6 ; G 1664 -U 7927 ; WX 565 ; N uni1EF7 ; G 1665 -U 7928 ; WX 660 ; N uni1EF8 ; G 1666 -U 7929 ; WX 565 ; N uni1EF9 ; G 1667 -U 7930 ; WX 949 ; N uni1EFA ; G 1668 -U 7931 ; WX 581 ; N uni1EFB ; G 1669 -U 7936 ; WX 675 ; N uni1F00 ; G 1670 -U 7937 ; WX 675 ; N uni1F01 ; G 1671 -U 7938 ; WX 675 ; N uni1F02 ; G 1672 -U 7939 ; WX 675 ; N uni1F03 ; G 1673 -U 7940 ; WX 675 ; N uni1F04 ; G 1674 -U 7941 ; WX 675 ; N uni1F05 ; G 1675 -U 7942 ; WX 675 ; N uni1F06 ; G 1676 -U 7943 ; WX 675 ; N uni1F07 ; G 1677 -U 7944 ; WX 722 ; N uni1F08 ; G 1678 -U 7945 ; WX 722 ; N uni1F09 ; G 1679 -U 7946 ; WX 869 ; N uni1F0A ; G 1680 -U 7947 ; WX 869 ; N uni1F0B ; G 1681 -U 7948 ; WX 734 ; N uni1F0C ; G 1682 -U 7949 ; WX 763 ; N uni1F0D ; G 1683 -U 7950 ; WX 722 ; N uni1F0E ; G 1684 -U 7951 ; WX 722 ; N uni1F0F ; G 1685 -U 7952 ; WX 537 ; N uni1F10 ; G 1686 -U 7953 ; WX 537 ; N uni1F11 ; G 1687 -U 7954 ; WX 537 ; N uni1F12 ; G 1688 -U 7955 ; WX 537 ; N uni1F13 ; G 1689 -U 7956 ; WX 537 ; N uni1F14 ; G 1690 -U 7957 ; WX 537 ; N uni1F15 ; G 1691 -U 7960 ; WX 853 ; N uni1F18 ; G 1692 -U 7961 ; WX 841 ; N uni1F19 ; G 1693 -U 7962 ; WX 1067 ; N uni1F1A ; G 1694 -U 7963 ; WX 1077 ; N uni1F1B ; G 1695 -U 7964 ; WX 1008 ; N uni1F1C ; G 1696 -U 7965 ; WX 1035 ; N uni1F1D ; G 1697 -U 7968 ; WX 599 ; N uni1F20 ; G 1698 -U 7969 ; WX 599 ; N uni1F21 ; G 1699 -U 7970 ; WX 599 ; N uni1F22 ; G 1700 -U 7971 ; WX 599 ; N uni1F23 ; G 1701 -U 7972 ; WX 599 ; N uni1F24 ; G 1702 -U 7973 ; WX 599 ; N uni1F25 ; G 1703 -U 7974 ; WX 599 ; N uni1F26 ; G 1704 -U 7975 ; WX 599 ; N uni1F27 ; G 1705 -U 7976 ; WX 998 ; N uni1F28 ; G 1706 -U 7977 ; WX 992 ; N uni1F29 ; G 1707 -U 7978 ; WX 1212 ; N uni1F2A ; G 1708 -U 7979 ; WX 1224 ; N uni1F2B ; G 1709 -U 7980 ; WX 1159 ; N uni1F2C ; G 1710 -U 7981 ; WX 1183 ; N uni1F2D ; G 1711 -U 7982 ; WX 1098 ; N uni1F2E ; G 1712 -U 7983 ; WX 1095 ; N uni1F2F ; G 1713 -U 7984 ; WX 392 ; N uni1F30 ; G 1714 -U 7985 ; WX 392 ; N uni1F31 ; G 1715 -U 7986 ; WX 392 ; N uni1F32 ; G 1716 -U 7987 ; WX 392 ; N uni1F33 ; G 1717 -U 7988 ; WX 392 ; N uni1F34 ; G 1718 -U 7989 ; WX 392 ; N uni1F35 ; G 1719 -U 7990 ; WX 392 ; N uni1F36 ; G 1720 -U 7991 ; WX 392 ; N uni1F37 ; G 1721 -U 7992 ; WX 521 ; N uni1F38 ; G 1722 -U 7993 ; WX 512 ; N uni1F39 ; G 1723 -U 7994 ; WX 735 ; N uni1F3A ; G 1724 -U 7995 ; WX 738 ; N uni1F3B ; G 1725 -U 7996 ; WX 679 ; N uni1F3C ; G 1726 -U 7997 ; WX 706 ; N uni1F3D ; G 1727 -U 7998 ; WX 624 ; N uni1F3E ; G 1728 -U 7999 ; WX 615 ; N uni1F3F ; G 1729 -U 8000 ; WX 602 ; N uni1F40 ; G 1730 -U 8001 ; WX 602 ; N uni1F41 ; G 1731 -U 8002 ; WX 602 ; N uni1F42 ; G 1732 -U 8003 ; WX 602 ; N uni1F43 ; G 1733 -U 8004 ; WX 602 ; N uni1F44 ; G 1734 -U 8005 ; WX 602 ; N uni1F45 ; G 1735 -U 8008 ; WX 820 ; N uni1F48 ; G 1736 -U 8009 ; WX 859 ; N uni1F49 ; G 1737 -U 8010 ; WX 1120 ; N uni1F4A ; G 1738 -U 8011 ; WX 1127 ; N uni1F4B ; G 1739 -U 8012 ; WX 937 ; N uni1F4C ; G 1740 -U 8013 ; WX 964 ; N uni1F4D ; G 1741 -U 8016 ; WX 608 ; N uni1F50 ; G 1742 -U 8017 ; WX 608 ; N uni1F51 ; G 1743 -U 8018 ; WX 608 ; N uni1F52 ; G 1744 -U 8019 ; WX 608 ; N uni1F53 ; G 1745 -U 8020 ; WX 608 ; N uni1F54 ; G 1746 -U 8021 ; WX 608 ; N uni1F55 ; G 1747 -U 8022 ; WX 608 ; N uni1F56 ; G 1748 -U 8023 ; WX 608 ; N uni1F57 ; G 1749 -U 8025 ; WX 851 ; N uni1F59 ; G 1750 -U 8027 ; WX 1079 ; N uni1F5B ; G 1751 -U 8029 ; WX 1044 ; N uni1F5D ; G 1752 -U 8031 ; WX 953 ; N uni1F5F ; G 1753 -U 8032 ; WX 815 ; N uni1F60 ; G 1754 -U 8033 ; WX 815 ; N uni1F61 ; G 1755 -U 8034 ; WX 815 ; N uni1F62 ; G 1756 -U 8035 ; WX 815 ; N uni1F63 ; G 1757 -U 8036 ; WX 815 ; N uni1F64 ; G 1758 -U 8037 ; WX 815 ; N uni1F65 ; G 1759 -U 8038 ; WX 815 ; N uni1F66 ; G 1760 -U 8039 ; WX 815 ; N uni1F67 ; G 1761 -U 8040 ; WX 829 ; N uni1F68 ; G 1762 -U 8041 ; WX 870 ; N uni1F69 ; G 1763 -U 8042 ; WX 1131 ; N uni1F6A ; G 1764 -U 8043 ; WX 1137 ; N uni1F6B ; G 1765 -U 8044 ; WX 946 ; N uni1F6C ; G 1766 -U 8045 ; WX 976 ; N uni1F6D ; G 1767 -U 8046 ; WX 938 ; N uni1F6E ; G 1768 -U 8047 ; WX 970 ; N uni1F6F ; G 1769 -U 8048 ; WX 675 ; N uni1F70 ; G 1770 -U 8049 ; WX 675 ; N uni1F71 ; G 1771 -U 8050 ; WX 537 ; N uni1F72 ; G 1772 -U 8051 ; WX 537 ; N uni1F73 ; G 1773 -U 8052 ; WX 599 ; N uni1F74 ; G 1774 -U 8053 ; WX 599 ; N uni1F75 ; G 1775 -U 8054 ; WX 392 ; N uni1F76 ; G 1776 -U 8055 ; WX 392 ; N uni1F77 ; G 1777 -U 8056 ; WX 602 ; N uni1F78 ; G 1778 -U 8057 ; WX 602 ; N uni1F79 ; G 1779 -U 8058 ; WX 608 ; N uni1F7A ; G 1780 -U 8059 ; WX 608 ; N uni1F7B ; G 1781 -U 8060 ; WX 815 ; N uni1F7C ; G 1782 -U 8061 ; WX 815 ; N uni1F7D ; G 1783 -U 8064 ; WX 675 ; N uni1F80 ; G 1784 -U 8065 ; WX 675 ; N uni1F81 ; G 1785 -U 8066 ; WX 675 ; N uni1F82 ; G 1786 -U 8067 ; WX 675 ; N uni1F83 ; G 1787 -U 8068 ; WX 675 ; N uni1F84 ; G 1788 -U 8069 ; WX 675 ; N uni1F85 ; G 1789 -U 8070 ; WX 675 ; N uni1F86 ; G 1790 -U 8071 ; WX 675 ; N uni1F87 ; G 1791 -U 8072 ; WX 722 ; N uni1F88 ; G 1792 -U 8073 ; WX 722 ; N uni1F89 ; G 1793 -U 8074 ; WX 869 ; N uni1F8A ; G 1794 -U 8075 ; WX 869 ; N uni1F8B ; G 1795 -U 8076 ; WX 734 ; N uni1F8C ; G 1796 -U 8077 ; WX 763 ; N uni1F8D ; G 1797 -U 8078 ; WX 722 ; N uni1F8E ; G 1798 -U 8079 ; WX 722 ; N uni1F8F ; G 1799 -U 8080 ; WX 599 ; N uni1F90 ; G 1800 -U 8081 ; WX 599 ; N uni1F91 ; G 1801 -U 8082 ; WX 599 ; N uni1F92 ; G 1802 -U 8083 ; WX 599 ; N uni1F93 ; G 1803 -U 8084 ; WX 599 ; N uni1F94 ; G 1804 -U 8085 ; WX 599 ; N uni1F95 ; G 1805 -U 8086 ; WX 599 ; N uni1F96 ; G 1806 -U 8087 ; WX 599 ; N uni1F97 ; G 1807 -U 8088 ; WX 998 ; N uni1F98 ; G 1808 -U 8089 ; WX 992 ; N uni1F99 ; G 1809 -U 8090 ; WX 1212 ; N uni1F9A ; G 1810 -U 8091 ; WX 1224 ; N uni1F9B ; G 1811 -U 8092 ; WX 1159 ; N uni1F9C ; G 1812 -U 8093 ; WX 1183 ; N uni1F9D ; G 1813 -U 8094 ; WX 1098 ; N uni1F9E ; G 1814 -U 8095 ; WX 1095 ; N uni1F9F ; G 1815 -U 8096 ; WX 815 ; N uni1FA0 ; G 1816 -U 8097 ; WX 815 ; N uni1FA1 ; G 1817 -U 8098 ; WX 815 ; N uni1FA2 ; G 1818 -U 8099 ; WX 815 ; N uni1FA3 ; G 1819 -U 8100 ; WX 815 ; N uni1FA4 ; G 1820 -U 8101 ; WX 815 ; N uni1FA5 ; G 1821 -U 8102 ; WX 815 ; N uni1FA6 ; G 1822 -U 8103 ; WX 815 ; N uni1FA7 ; G 1823 -U 8104 ; WX 829 ; N uni1FA8 ; G 1824 -U 8105 ; WX 870 ; N uni1FA9 ; G 1825 -U 8106 ; WX 1131 ; N uni1FAA ; G 1826 -U 8107 ; WX 1137 ; N uni1FAB ; G 1827 -U 8108 ; WX 946 ; N uni1FAC ; G 1828 -U 8109 ; WX 976 ; N uni1FAD ; G 1829 -U 8110 ; WX 938 ; N uni1FAE ; G 1830 -U 8111 ; WX 970 ; N uni1FAF ; G 1831 -U 8112 ; WX 675 ; N uni1FB0 ; G 1832 -U 8113 ; WX 675 ; N uni1FB1 ; G 1833 -U 8114 ; WX 675 ; N uni1FB2 ; G 1834 -U 8115 ; WX 675 ; N uni1FB3 ; G 1835 -U 8116 ; WX 675 ; N uni1FB4 ; G 1836 -U 8118 ; WX 675 ; N uni1FB6 ; G 1837 -U 8119 ; WX 675 ; N uni1FB7 ; G 1838 -U 8120 ; WX 722 ; N uni1FB8 ; G 1839 -U 8121 ; WX 722 ; N uni1FB9 ; G 1840 -U 8122 ; WX 722 ; N uni1FBA ; G 1841 -U 8123 ; WX 722 ; N uni1FBB ; G 1842 -U 8124 ; WX 722 ; N uni1FBC ; G 1843 -U 8125 ; WX 500 ; N uni1FBD ; G 1844 -U 8126 ; WX 500 ; N uni1FBE ; G 1845 -U 8127 ; WX 500 ; N uni1FBF ; G 1846 -U 8128 ; WX 500 ; N uni1FC0 ; G 1847 -U 8129 ; WX 500 ; N uni1FC1 ; G 1848 -U 8130 ; WX 599 ; N uni1FC2 ; G 1849 -U 8131 ; WX 599 ; N uni1FC3 ; G 1850 -U 8132 ; WX 599 ; N uni1FC4 ; G 1851 -U 8134 ; WX 599 ; N uni1FC6 ; G 1852 -U 8135 ; WX 599 ; N uni1FC7 ; G 1853 -U 8136 ; WX 912 ; N uni1FC8 ; G 1854 -U 8137 ; WX 900 ; N uni1FC9 ; G 1855 -U 8138 ; WX 1063 ; N uni1FCA ; G 1856 -U 8139 ; WX 1039 ; N uni1FCB ; G 1857 -U 8140 ; WX 872 ; N uni1FCC ; G 1858 -U 8141 ; WX 500 ; N uni1FCD ; G 1859 -U 8142 ; WX 500 ; N uni1FCE ; G 1860 -U 8143 ; WX 500 ; N uni1FCF ; G 1861 -U 8144 ; WX 392 ; N uni1FD0 ; G 1862 -U 8145 ; WX 392 ; N uni1FD1 ; G 1863 -U 8146 ; WX 392 ; N uni1FD2 ; G 1864 -U 8147 ; WX 392 ; N uni1FD3 ; G 1865 -U 8150 ; WX 392 ; N uni1FD6 ; G 1866 -U 8151 ; WX 392 ; N uni1FD7 ; G 1867 -U 8152 ; WX 395 ; N uni1FD8 ; G 1868 -U 8153 ; WX 395 ; N uni1FD9 ; G 1869 -U 8154 ; WX 588 ; N uni1FDA ; G 1870 -U 8155 ; WX 562 ; N uni1FDB ; G 1871 -U 8157 ; WX 500 ; N uni1FDD ; G 1872 -U 8158 ; WX 500 ; N uni1FDE ; G 1873 -U 8159 ; WX 500 ; N uni1FDF ; G 1874 -U 8160 ; WX 608 ; N uni1FE0 ; G 1875 -U 8161 ; WX 608 ; N uni1FE1 ; G 1876 -U 8162 ; WX 608 ; N uni1FE2 ; G 1877 -U 8163 ; WX 608 ; N uni1FE3 ; G 1878 -U 8164 ; WX 588 ; N uni1FE4 ; G 1879 -U 8165 ; WX 588 ; N uni1FE5 ; G 1880 -U 8166 ; WX 608 ; N uni1FE6 ; G 1881 -U 8167 ; WX 608 ; N uni1FE7 ; G 1882 -U 8168 ; WX 660 ; N uni1FE8 ; G 1883 -U 8169 ; WX 660 ; N uni1FE9 ; G 1884 -U 8170 ; WX 921 ; N uni1FEA ; G 1885 -U 8171 ; WX 897 ; N uni1FEB ; G 1886 -U 8172 ; WX 790 ; N uni1FEC ; G 1887 -U 8173 ; WX 500 ; N uni1FED ; G 1888 -U 8174 ; WX 500 ; N uni1FEE ; G 1889 -U 8175 ; WX 500 ; N uni1FEF ; G 1890 -U 8178 ; WX 815 ; N uni1FF2 ; G 1891 -U 8179 ; WX 815 ; N uni1FF3 ; G 1892 -U 8180 ; WX 815 ; N uni1FF4 ; G 1893 -U 8182 ; WX 815 ; N uni1FF6 ; G 1894 -U 8183 ; WX 815 ; N uni1FF7 ; G 1895 -U 8184 ; WX 961 ; N uni1FF8 ; G 1896 -U 8185 ; WX 835 ; N uni1FF9 ; G 1897 -U 8186 ; WX 984 ; N uni1FFA ; G 1898 -U 8187 ; WX 853 ; N uni1FFB ; G 1899 -U 8188 ; WX 829 ; N uni1FFC ; G 1900 -U 8189 ; WX 500 ; N uni1FFD ; G 1901 -U 8190 ; WX 500 ; N uni1FFE ; G 1902 -U 8192 ; WX 500 ; N uni2000 ; G 1903 -U 8193 ; WX 1000 ; N uni2001 ; G 1904 -U 8194 ; WX 500 ; N uni2002 ; G 1905 -U 8195 ; WX 1000 ; N uni2003 ; G 1906 -U 8196 ; WX 330 ; N uni2004 ; G 1907 -U 8197 ; WX 250 ; N uni2005 ; G 1908 -U 8198 ; WX 167 ; N uni2006 ; G 1909 -U 8199 ; WX 636 ; N uni2007 ; G 1910 -U 8200 ; WX 318 ; N uni2008 ; G 1911 -U 8201 ; WX 200 ; N uni2009 ; G 1912 -U 8202 ; WX 100 ; N uni200A ; G 1913 -U 8203 ; WX 0 ; N uni200B ; G 1914 -U 8204 ; WX 0 ; N uni200C ; G 1915 -U 8205 ; WX 0 ; N uni200D ; G 1916 -U 8206 ; WX 0 ; N uni200E ; G 1917 -U 8207 ; WX 0 ; N uni200F ; G 1918 -U 8208 ; WX 338 ; N uni2010 ; G 1919 -U 8209 ; WX 338 ; N uni2011 ; G 1920 -U 8210 ; WX 636 ; N figuredash ; G 1921 -U 8211 ; WX 500 ; N endash ; G 1922 -U 8212 ; WX 1000 ; N emdash ; G 1923 -U 8213 ; WX 1000 ; N uni2015 ; G 1924 -U 8214 ; WX 500 ; N uni2016 ; G 1925 -U 8215 ; WX 500 ; N underscoredbl ; G 1926 -U 8216 ; WX 318 ; N quoteleft ; G 1927 -U 8217 ; WX 318 ; N quoteright ; G 1928 -U 8218 ; WX 318 ; N quotesinglbase ; G 1929 -U 8219 ; WX 318 ; N quotereversed ; G 1930 -U 8220 ; WX 511 ; N quotedblleft ; G 1931 -U 8221 ; WX 511 ; N quotedblright ; G 1932 -U 8222 ; WX 518 ; N quotedblbase ; G 1933 -U 8223 ; WX 511 ; N uni201F ; G 1934 -U 8224 ; WX 500 ; N dagger ; G 1935 -U 8225 ; WX 500 ; N daggerdbl ; G 1936 -U 8226 ; WX 590 ; N bullet ; G 1937 -U 8227 ; WX 590 ; N uni2023 ; G 1938 -U 8228 ; WX 334 ; N onedotenleader ; G 1939 -U 8229 ; WX 667 ; N twodotenleader ; G 1940 -U 8230 ; WX 1000 ; N ellipsis ; G 1941 -U 8234 ; WX 0 ; N uni202A ; G 1942 -U 8235 ; WX 0 ; N uni202B ; G 1943 -U 8236 ; WX 0 ; N uni202C ; G 1944 -U 8237 ; WX 0 ; N uni202D ; G 1945 -U 8238 ; WX 0 ; N uni202E ; G 1946 -U 8239 ; WX 200 ; N uni202F ; G 1947 -U 8240 ; WX 1342 ; N perthousand ; G 1948 -U 8241 ; WX 1734 ; N uni2031 ; G 1949 -U 8242 ; WX 227 ; N minute ; G 1950 -U 8243 ; WX 374 ; N second ; G 1951 -U 8244 ; WX 520 ; N uni2034 ; G 1952 -U 8245 ; WX 227 ; N uni2035 ; G 1953 -U 8246 ; WX 374 ; N uni2036 ; G 1954 -U 8247 ; WX 520 ; N uni2037 ; G 1955 -U 8248 ; WX 339 ; N uni2038 ; G 1956 -U 8249 ; WX 400 ; N guilsinglleft ; G 1957 -U 8250 ; WX 400 ; N guilsinglright ; G 1958 -U 8252 ; WX 527 ; N exclamdbl ; G 1959 -U 8253 ; WX 536 ; N uni203D ; G 1960 -U 8254 ; WX 500 ; N uni203E ; G 1961 -U 8258 ; WX 1000 ; N uni2042 ; G 1962 -U 8260 ; WX 167 ; N fraction ; G 1963 -U 8261 ; WX 390 ; N uni2045 ; G 1964 -U 8262 ; WX 390 ; N uni2046 ; G 1965 -U 8263 ; WX 976 ; N uni2047 ; G 1966 -U 8264 ; WX 753 ; N uni2048 ; G 1967 -U 8265 ; WX 753 ; N uni2049 ; G 1968 -U 8267 ; WX 636 ; N uni204B ; G 1969 -U 8268 ; WX 500 ; N uni204C ; G 1970 -U 8269 ; WX 500 ; N uni204D ; G 1971 -U 8270 ; WX 500 ; N uni204E ; G 1972 -U 8271 ; WX 337 ; N uni204F ; G 1973 -U 8273 ; WX 500 ; N uni2051 ; G 1974 -U 8274 ; WX 450 ; N uni2052 ; G 1975 -U 8275 ; WX 1000 ; N uni2053 ; G 1976 -U 8279 ; WX 663 ; N uni2057 ; G 1977 -U 8287 ; WX 222 ; N uni205F ; G 1978 -U 8288 ; WX 0 ; N uni2060 ; G 1979 -U 8289 ; WX 0 ; N uni2061 ; G 1980 -U 8290 ; WX 0 ; N uni2062 ; G 1981 -U 8291 ; WX 0 ; N uni2063 ; G 1982 -U 8292 ; WX 0 ; N uni2064 ; G 1983 -U 8298 ; WX 0 ; N uni206A ; G 1984 -U 8299 ; WX 0 ; N uni206B ; G 1985 -U 8300 ; WX 0 ; N uni206C ; G 1986 -U 8301 ; WX 0 ; N uni206D ; G 1987 -U 8302 ; WX 0 ; N uni206E ; G 1988 -U 8303 ; WX 0 ; N uni206F ; G 1989 -U 8304 ; WX 401 ; N uni2070 ; G 1990 -U 8305 ; WX 201 ; N uni2071 ; G 1991 -U 8308 ; WX 401 ; N uni2074 ; G 1992 -U 8309 ; WX 401 ; N uni2075 ; G 1993 -U 8310 ; WX 401 ; N uni2076 ; G 1994 -U 8311 ; WX 401 ; N uni2077 ; G 1995 -U 8312 ; WX 401 ; N uni2078 ; G 1996 -U 8313 ; WX 401 ; N uni2079 ; G 1997 -U 8314 ; WX 528 ; N uni207A ; G 1998 -U 8315 ; WX 528 ; N uni207B ; G 1999 -U 8316 ; WX 528 ; N uni207C ; G 2000 -U 8317 ; WX 246 ; N uni207D ; G 2001 -U 8318 ; WX 246 ; N uni207E ; G 2002 -U 8319 ; WX 405 ; N uni207F ; G 2003 -U 8320 ; WX 401 ; N uni2080 ; G 2004 -U 8321 ; WX 401 ; N uni2081 ; G 2005 -U 8322 ; WX 401 ; N uni2082 ; G 2006 -U 8323 ; WX 401 ; N uni2083 ; G 2007 -U 8324 ; WX 401 ; N uni2084 ; G 2008 -U 8325 ; WX 401 ; N uni2085 ; G 2009 -U 8326 ; WX 401 ; N uni2086 ; G 2010 -U 8327 ; WX 401 ; N uni2087 ; G 2011 -U 8328 ; WX 401 ; N uni2088 ; G 2012 -U 8329 ; WX 401 ; N uni2089 ; G 2013 -U 8330 ; WX 528 ; N uni208A ; G 2014 -U 8331 ; WX 528 ; N uni208B ; G 2015 -U 8332 ; WX 528 ; N uni208C ; G 2016 -U 8333 ; WX 246 ; N uni208D ; G 2017 -U 8334 ; WX 246 ; N uni208E ; G 2018 -U 8336 ; WX 375 ; N uni2090 ; G 2019 -U 8337 ; WX 387 ; N uni2091 ; G 2020 -U 8338 ; WX 385 ; N uni2092 ; G 2021 -U 8339 ; WX 355 ; N uni2093 ; G 2022 -U 8340 ; WX 387 ; N uni2094 ; G 2023 -U 8341 ; WX 433 ; N uni2095 ; G 2024 -U 8342 ; WX 365 ; N uni2096 ; G 2025 -U 8343 ; WX 243 ; N uni2097 ; G 2026 -U 8344 ; WX 613 ; N uni2098 ; G 2027 -U 8345 ; WX 405 ; N uni2099 ; G 2028 -U 8346 ; WX 400 ; N uni209A ; G 2029 -U 8347 ; WX 337 ; N uni209B ; G 2030 -U 8348 ; WX 247 ; N uni209C ; G 2031 -U 8358 ; WX 636 ; N uni20A6 ; G 2032 -U 8364 ; WX 636 ; N Euro ; G 2033 -U 8367 ; WX 1057 ; N uni20AF ; G 2034 -U 8369 ; WX 706 ; N uni20B1 ; G 2035 -U 8372 ; WX 780 ; N uni20B4 ; G 2036 -U 8373 ; WX 636 ; N uni20B5 ; G 2037 -U 8376 ; WX 636 ; N uni20B8 ; G 2038 -U 8377 ; WX 636 ; N uni20B9 ; G 2039 -U 8378 ; WX 636 ; N uni20BA ; G 2040 -U 8381 ; WX 636 ; N uni20BD ; G 2041 -U 8451 ; WX 1119 ; N uni2103 ; G 2042 -U 8457 ; WX 1047 ; N uni2109 ; G 2043 -U 8462 ; WX 644 ; N uni210E ; G 2044 -U 8463 ; WX 644 ; N uni210F ; G 2045 -U 8470 ; WX 946 ; N uni2116 ; G 2046 -U 8482 ; WX 1000 ; N trademark ; G 2047 -U 8486 ; WX 829 ; N uni2126 ; G 2048 -U 8487 ; WX 829 ; N uni2127 ; G 2049 -U 8490 ; WX 747 ; N uni212A ; G 2050 -U 8491 ; WX 722 ; N uni212B ; G 2051 -U 8498 ; WX 694 ; N uni2132 ; G 2052 -U 8513 ; WX 775 ; N uni2141 ; G 2053 -U 8514 ; WX 557 ; N uni2142 ; G 2054 -U 8515 ; WX 557 ; N uni2143 ; G 2055 -U 8516 ; WX 611 ; N uni2144 ; G 2056 -U 8523 ; WX 890 ; N uni214B ; G 2057 -U 8526 ; WX 514 ; N uni214E ; G 2058 -U 8528 ; WX 969 ; N uni2150 ; G 2059 -U 8529 ; WX 969 ; N uni2151 ; G 2060 -U 8530 ; WX 1370 ; N uni2152 ; G 2061 -U 8531 ; WX 969 ; N onethird ; G 2062 -U 8532 ; WX 969 ; N twothirds ; G 2063 -U 8533 ; WX 969 ; N uni2155 ; G 2064 -U 8534 ; WX 969 ; N uni2156 ; G 2065 -U 8535 ; WX 969 ; N uni2157 ; G 2066 -U 8536 ; WX 969 ; N uni2158 ; G 2067 -U 8537 ; WX 969 ; N uni2159 ; G 2068 -U 8538 ; WX 969 ; N uni215A ; G 2069 -U 8539 ; WX 969 ; N oneeighth ; G 2070 -U 8540 ; WX 969 ; N threeeighths ; G 2071 -U 8541 ; WX 969 ; N fiveeighths ; G 2072 -U 8542 ; WX 969 ; N seveneighths ; G 2073 -U 8543 ; WX 568 ; N uni215F ; G 2074 -U 8544 ; WX 395 ; N uni2160 ; G 2075 -U 8545 ; WX 680 ; N uni2161 ; G 2076 -U 8546 ; WX 964 ; N uni2162 ; G 2077 -U 8547 ; WX 999 ; N uni2163 ; G 2078 -U 8548 ; WX 722 ; N uni2164 ; G 2079 -U 8549 ; WX 1006 ; N uni2165 ; G 2080 -U 8550 ; WX 1291 ; N uni2166 ; G 2081 -U 8551 ; WX 1575 ; N uni2167 ; G 2082 -U 8552 ; WX 965 ; N uni2168 ; G 2083 -U 8553 ; WX 712 ; N uni2169 ; G 2084 -U 8554 ; WX 969 ; N uni216A ; G 2085 -U 8555 ; WX 1253 ; N uni216B ; G 2086 -U 8556 ; WX 664 ; N uni216C ; G 2087 -U 8557 ; WX 765 ; N uni216D ; G 2088 -U 8558 ; WX 802 ; N uni216E ; G 2089 -U 8559 ; WX 1024 ; N uni216F ; G 2090 -U 8560 ; WX 320 ; N uni2170 ; G 2091 -U 8561 ; WX 640 ; N uni2171 ; G 2092 -U 8562 ; WX 959 ; N uni2172 ; G 2093 -U 8563 ; WX 885 ; N uni2173 ; G 2094 -U 8564 ; WX 565 ; N uni2174 ; G 2095 -U 8565 ; WX 885 ; N uni2175 ; G 2096 -U 8566 ; WX 1205 ; N uni2176 ; G 2097 -U 8567 ; WX 1524 ; N uni2177 ; G 2098 -U 8568 ; WX 884 ; N uni2178 ; G 2099 -U 8569 ; WX 564 ; N uni2179 ; G 2100 -U 8570 ; WX 884 ; N uni217A ; G 2101 -U 8571 ; WX 1204 ; N uni217B ; G 2102 -U 8572 ; WX 320 ; N uni217C ; G 2103 -U 8573 ; WX 560 ; N uni217D ; G 2104 -U 8574 ; WX 640 ; N uni217E ; G 2105 -U 8575 ; WX 948 ; N uni217F ; G 2106 -U 8576 ; WX 1206 ; N uni2180 ; G 2107 -U 8577 ; WX 802 ; N uni2181 ; G 2108 -U 8578 ; WX 1206 ; N uni2182 ; G 2109 -U 8579 ; WX 765 ; N uni2183 ; G 2110 -U 8580 ; WX 560 ; N uni2184 ; G 2111 -U 8581 ; WX 765 ; N uni2185 ; G 2112 -U 8585 ; WX 969 ; N uni2189 ; G 2113 -U 8592 ; WX 838 ; N arrowleft ; G 2114 -U 8593 ; WX 838 ; N arrowup ; G 2115 -U 8594 ; WX 838 ; N arrowright ; G 2116 -U 8595 ; WX 838 ; N arrowdown ; G 2117 -U 8596 ; WX 838 ; N arrowboth ; G 2118 -U 8597 ; WX 838 ; N arrowupdn ; G 2119 -U 8598 ; WX 838 ; N uni2196 ; G 2120 -U 8599 ; WX 838 ; N uni2197 ; G 2121 -U 8600 ; WX 838 ; N uni2198 ; G 2122 -U 8601 ; WX 838 ; N uni2199 ; G 2123 -U 8602 ; WX 838 ; N uni219A ; G 2124 -U 8603 ; WX 838 ; N uni219B ; G 2125 -U 8604 ; WX 838 ; N uni219C ; G 2126 -U 8605 ; WX 838 ; N uni219D ; G 2127 -U 8606 ; WX 838 ; N uni219E ; G 2128 -U 8607 ; WX 838 ; N uni219F ; G 2129 -U 8608 ; WX 838 ; N uni21A0 ; G 2130 -U 8609 ; WX 838 ; N uni21A1 ; G 2131 -U 8610 ; WX 838 ; N uni21A2 ; G 2132 -U 8611 ; WX 838 ; N uni21A3 ; G 2133 -U 8612 ; WX 838 ; N uni21A4 ; G 2134 -U 8613 ; WX 838 ; N uni21A5 ; G 2135 -U 8614 ; WX 838 ; N uni21A6 ; G 2136 -U 8615 ; WX 838 ; N uni21A7 ; G 2137 -U 8616 ; WX 838 ; N arrowupdnbse ; G 2138 -U 8617 ; WX 838 ; N uni21A9 ; G 2139 -U 8618 ; WX 838 ; N uni21AA ; G 2140 -U 8619 ; WX 838 ; N uni21AB ; G 2141 -U 8620 ; WX 838 ; N uni21AC ; G 2142 -U 8621 ; WX 838 ; N uni21AD ; G 2143 -U 8622 ; WX 838 ; N uni21AE ; G 2144 -U 8623 ; WX 838 ; N uni21AF ; G 2145 -U 8624 ; WX 838 ; N uni21B0 ; G 2146 -U 8625 ; WX 838 ; N uni21B1 ; G 2147 -U 8626 ; WX 838 ; N uni21B2 ; G 2148 -U 8627 ; WX 838 ; N uni21B3 ; G 2149 -U 8628 ; WX 838 ; N uni21B4 ; G 2150 -U 8629 ; WX 838 ; N carriagereturn ; G 2151 -U 8630 ; WX 838 ; N uni21B6 ; G 2152 -U 8631 ; WX 838 ; N uni21B7 ; G 2153 -U 8632 ; WX 838 ; N uni21B8 ; G 2154 -U 8633 ; WX 838 ; N uni21B9 ; G 2155 -U 8634 ; WX 838 ; N uni21BA ; G 2156 -U 8635 ; WX 838 ; N uni21BB ; G 2157 -U 8636 ; WX 838 ; N uni21BC ; G 2158 -U 8637 ; WX 838 ; N uni21BD ; G 2159 -U 8638 ; WX 838 ; N uni21BE ; G 2160 -U 8639 ; WX 838 ; N uni21BF ; G 2161 -U 8640 ; WX 838 ; N uni21C0 ; G 2162 -U 8641 ; WX 838 ; N uni21C1 ; G 2163 -U 8642 ; WX 838 ; N uni21C2 ; G 2164 -U 8643 ; WX 838 ; N uni21C3 ; G 2165 -U 8644 ; WX 838 ; N uni21C4 ; G 2166 -U 8645 ; WX 838 ; N uni21C5 ; G 2167 -U 8646 ; WX 838 ; N uni21C6 ; G 2168 -U 8647 ; WX 838 ; N uni21C7 ; G 2169 -U 8648 ; WX 838 ; N uni21C8 ; G 2170 -U 8649 ; WX 838 ; N uni21C9 ; G 2171 -U 8650 ; WX 838 ; N uni21CA ; G 2172 -U 8651 ; WX 838 ; N uni21CB ; G 2173 -U 8652 ; WX 838 ; N uni21CC ; G 2174 -U 8653 ; WX 838 ; N uni21CD ; G 2175 -U 8654 ; WX 838 ; N uni21CE ; G 2176 -U 8655 ; WX 838 ; N uni21CF ; G 2177 -U 8656 ; WX 838 ; N arrowdblleft ; G 2178 -U 8657 ; WX 838 ; N arrowdblup ; G 2179 -U 8658 ; WX 838 ; N arrowdblright ; G 2180 -U 8659 ; WX 838 ; N arrowdbldown ; G 2181 -U 8660 ; WX 838 ; N arrowdblboth ; G 2182 -U 8661 ; WX 838 ; N uni21D5 ; G 2183 -U 8662 ; WX 838 ; N uni21D6 ; G 2184 -U 8663 ; WX 838 ; N uni21D7 ; G 2185 -U 8664 ; WX 838 ; N uni21D8 ; G 2186 -U 8665 ; WX 838 ; N uni21D9 ; G 2187 -U 8666 ; WX 838 ; N uni21DA ; G 2188 -U 8667 ; WX 838 ; N uni21DB ; G 2189 -U 8668 ; WX 838 ; N uni21DC ; G 2190 -U 8669 ; WX 838 ; N uni21DD ; G 2191 -U 8670 ; WX 838 ; N uni21DE ; G 2192 -U 8671 ; WX 838 ; N uni21DF ; G 2193 -U 8672 ; WX 838 ; N uni21E0 ; G 2194 -U 8673 ; WX 838 ; N uni21E1 ; G 2195 -U 8674 ; WX 838 ; N uni21E2 ; G 2196 -U 8675 ; WX 838 ; N uni21E3 ; G 2197 -U 8676 ; WX 838 ; N uni21E4 ; G 2198 -U 8677 ; WX 838 ; N uni21E5 ; G 2199 -U 8678 ; WX 838 ; N uni21E6 ; G 2200 -U 8679 ; WX 838 ; N uni21E7 ; G 2201 -U 8680 ; WX 838 ; N uni21E8 ; G 2202 -U 8681 ; WX 838 ; N uni21E9 ; G 2203 -U 8682 ; WX 838 ; N uni21EA ; G 2204 -U 8683 ; WX 838 ; N uni21EB ; G 2205 -U 8684 ; WX 838 ; N uni21EC ; G 2206 -U 8685 ; WX 838 ; N uni21ED ; G 2207 -U 8686 ; WX 838 ; N uni21EE ; G 2208 -U 8687 ; WX 838 ; N uni21EF ; G 2209 -U 8688 ; WX 838 ; N uni21F0 ; G 2210 -U 8689 ; WX 838 ; N uni21F1 ; G 2211 -U 8690 ; WX 838 ; N uni21F2 ; G 2212 -U 8691 ; WX 838 ; N uni21F3 ; G 2213 -U 8692 ; WX 838 ; N uni21F4 ; G 2214 -U 8693 ; WX 838 ; N uni21F5 ; G 2215 -U 8694 ; WX 838 ; N uni21F6 ; G 2216 -U 8695 ; WX 838 ; N uni21F7 ; G 2217 -U 8696 ; WX 838 ; N uni21F8 ; G 2218 -U 8697 ; WX 838 ; N uni21F9 ; G 2219 -U 8698 ; WX 838 ; N uni21FA ; G 2220 -U 8699 ; WX 838 ; N uni21FB ; G 2221 -U 8700 ; WX 838 ; N uni21FC ; G 2222 -U 8701 ; WX 838 ; N uni21FD ; G 2223 -U 8702 ; WX 838 ; N uni21FE ; G 2224 -U 8703 ; WX 838 ; N uni21FF ; G 2225 -U 8704 ; WX 604 ; N universal ; G 2226 -U 8706 ; WX 517 ; N partialdiff ; G 2227 -U 8707 ; WX 542 ; N existential ; G 2228 -U 8708 ; WX 542 ; N uni2204 ; G 2229 -U 8710 ; WX 698 ; N increment ; G 2230 -U 8711 ; WX 698 ; N gradient ; G 2231 -U 8712 ; WX 740 ; N element ; G 2232 -U 8713 ; WX 740 ; N notelement ; G 2233 -U 8715 ; WX 740 ; N suchthat ; G 2234 -U 8716 ; WX 740 ; N uni220C ; G 2235 -U 8719 ; WX 796 ; N product ; G 2236 -U 8720 ; WX 796 ; N uni2210 ; G 2237 -U 8721 ; WX 714 ; N summation ; G 2238 -U 8722 ; WX 838 ; N minus ; G 2239 -U 8723 ; WX 838 ; N uni2213 ; G 2240 -U 8724 ; WX 838 ; N uni2214 ; G 2241 -U 8725 ; WX 337 ; N uni2215 ; G 2242 -U 8727 ; WX 680 ; N asteriskmath ; G 2243 -U 8728 ; WX 490 ; N uni2218 ; G 2244 -U 8729 ; WX 490 ; N uni2219 ; G 2245 -U 8730 ; WX 637 ; N radical ; G 2246 -U 8731 ; WX 637 ; N uni221B ; G 2247 -U 8732 ; WX 637 ; N uni221C ; G 2248 -U 8733 ; WX 677 ; N proportional ; G 2249 -U 8734 ; WX 833 ; N infinity ; G 2250 -U 8735 ; WX 838 ; N orthogonal ; G 2251 -U 8736 ; WX 838 ; N angle ; G 2252 -U 8739 ; WX 291 ; N uni2223 ; G 2253 -U 8740 ; WX 479 ; N uni2224 ; G 2254 -U 8741 ; WX 462 ; N uni2225 ; G 2255 -U 8742 ; WX 634 ; N uni2226 ; G 2256 -U 8743 ; WX 732 ; N logicaland ; G 2257 -U 8744 ; WX 732 ; N logicalor ; G 2258 -U 8745 ; WX 838 ; N intersection ; G 2259 -U 8746 ; WX 838 ; N union ; G 2260 -U 8747 ; WX 521 ; N integral ; G 2261 -U 8748 ; WX 852 ; N uni222C ; G 2262 -U 8749 ; WX 1182 ; N uni222D ; G 2263 -U 8760 ; WX 838 ; N uni2238 ; G 2264 -U 8761 ; WX 838 ; N uni2239 ; G 2265 -U 8762 ; WX 838 ; N uni223A ; G 2266 -U 8763 ; WX 838 ; N uni223B ; G 2267 -U 8764 ; WX 838 ; N similar ; G 2268 -U 8765 ; WX 838 ; N uni223D ; G 2269 -U 8770 ; WX 838 ; N uni2242 ; G 2270 -U 8771 ; WX 838 ; N uni2243 ; G 2271 -U 8776 ; WX 838 ; N approxequal ; G 2272 -U 8784 ; WX 838 ; N uni2250 ; G 2273 -U 8785 ; WX 838 ; N uni2251 ; G 2274 -U 8786 ; WX 838 ; N uni2252 ; G 2275 -U 8787 ; WX 838 ; N uni2253 ; G 2276 -U 8788 ; WX 1033 ; N uni2254 ; G 2277 -U 8789 ; WX 1033 ; N uni2255 ; G 2278 -U 8800 ; WX 838 ; N notequal ; G 2279 -U 8801 ; WX 838 ; N equivalence ; G 2280 -U 8804 ; WX 838 ; N lessequal ; G 2281 -U 8805 ; WX 838 ; N greaterequal ; G 2282 -U 8834 ; WX 838 ; N propersubset ; G 2283 -U 8835 ; WX 838 ; N propersuperset ; G 2284 -U 8836 ; WX 838 ; N notsubset ; G 2285 -U 8837 ; WX 838 ; N uni2285 ; G 2286 -U 8838 ; WX 838 ; N reflexsubset ; G 2287 -U 8839 ; WX 838 ; N reflexsuperset ; G 2288 -U 8844 ; WX 838 ; N uni228C ; G 2289 -U 8845 ; WX 838 ; N uni228D ; G 2290 -U 8846 ; WX 838 ; N uni228E ; G 2291 -U 8847 ; WX 846 ; N uni228F ; G 2292 -U 8848 ; WX 846 ; N uni2290 ; G 2293 -U 8849 ; WX 846 ; N uni2291 ; G 2294 -U 8850 ; WX 846 ; N uni2292 ; G 2295 -U 8851 ; WX 838 ; N uni2293 ; G 2296 -U 8852 ; WX 838 ; N uni2294 ; G 2297 -U 8853 ; WX 838 ; N circleplus ; G 2298 -U 8854 ; WX 838 ; N uni2296 ; G 2299 -U 8855 ; WX 838 ; N circlemultiply ; G 2300 -U 8856 ; WX 838 ; N uni2298 ; G 2301 -U 8857 ; WX 838 ; N uni2299 ; G 2302 -U 8858 ; WX 838 ; N uni229A ; G 2303 -U 8859 ; WX 838 ; N uni229B ; G 2304 -U 8860 ; WX 838 ; N uni229C ; G 2305 -U 8861 ; WX 838 ; N uni229D ; G 2306 -U 8862 ; WX 838 ; N uni229E ; G 2307 -U 8863 ; WX 838 ; N uni229F ; G 2308 -U 8864 ; WX 838 ; N uni22A0 ; G 2309 -U 8865 ; WX 838 ; N uni22A1 ; G 2310 -U 8866 ; WX 860 ; N uni22A2 ; G 2311 -U 8867 ; WX 860 ; N uni22A3 ; G 2312 -U 8868 ; WX 940 ; N uni22A4 ; G 2313 -U 8869 ; WX 940 ; N perpendicular ; G 2314 -U 8870 ; WX 567 ; N uni22A6 ; G 2315 -U 8871 ; WX 567 ; N uni22A7 ; G 2316 -U 8872 ; WX 860 ; N uni22A8 ; G 2317 -U 8873 ; WX 860 ; N uni22A9 ; G 2318 -U 8874 ; WX 860 ; N uni22AA ; G 2319 -U 8875 ; WX 1031 ; N uni22AB ; G 2320 -U 8876 ; WX 860 ; N uni22AC ; G 2321 -U 8877 ; WX 860 ; N uni22AD ; G 2322 -U 8878 ; WX 860 ; N uni22AE ; G 2323 -U 8879 ; WX 1031 ; N uni22AF ; G 2324 -U 8900 ; WX 626 ; N uni22C4 ; G 2325 -U 8901 ; WX 342 ; N dotmath ; G 2326 -U 8962 ; WX 764 ; N house ; G 2327 -U 8968 ; WX 390 ; N uni2308 ; G 2328 -U 8969 ; WX 390 ; N uni2309 ; G 2329 -U 8970 ; WX 390 ; N uni230A ; G 2330 -U 8971 ; WX 390 ; N uni230B ; G 2331 -U 8976 ; WX 838 ; N revlogicalnot ; G 2332 -U 8977 ; WX 513 ; N uni2311 ; G 2333 -U 8984 ; WX 1000 ; N uni2318 ; G 2334 -U 8985 ; WX 838 ; N uni2319 ; G 2335 -U 8992 ; WX 521 ; N integraltp ; G 2336 -U 8993 ; WX 521 ; N integralbt ; G 2337 -U 8997 ; WX 1000 ; N uni2325 ; G 2338 -U 9000 ; WX 1443 ; N uni2328 ; G 2339 -U 9085 ; WX 919 ; N uni237D ; G 2340 -U 9115 ; WX 500 ; N uni239B ; G 2341 -U 9116 ; WX 500 ; N uni239C ; G 2342 -U 9117 ; WX 500 ; N uni239D ; G 2343 -U 9118 ; WX 500 ; N uni239E ; G 2344 -U 9119 ; WX 500 ; N uni239F ; G 2345 -U 9120 ; WX 500 ; N uni23A0 ; G 2346 -U 9121 ; WX 500 ; N uni23A1 ; G 2347 -U 9122 ; WX 500 ; N uni23A2 ; G 2348 -U 9123 ; WX 500 ; N uni23A3 ; G 2349 -U 9124 ; WX 500 ; N uni23A4 ; G 2350 -U 9125 ; WX 500 ; N uni23A5 ; G 2351 -U 9126 ; WX 500 ; N uni23A6 ; G 2352 -U 9127 ; WX 750 ; N uni23A7 ; G 2353 -U 9128 ; WX 750 ; N uni23A8 ; G 2354 -U 9129 ; WX 750 ; N uni23A9 ; G 2355 -U 9130 ; WX 750 ; N uni23AA ; G 2356 -U 9131 ; WX 750 ; N uni23AB ; G 2357 -U 9132 ; WX 750 ; N uni23AC ; G 2358 -U 9133 ; WX 750 ; N uni23AD ; G 2359 -U 9134 ; WX 521 ; N uni23AE ; G 2360 -U 9167 ; WX 945 ; N uni23CF ; G 2361 -U 9251 ; WX 764 ; N uni2423 ; G 2362 -U 9472 ; WX 602 ; N SF100000 ; G 2363 -U 9473 ; WX 602 ; N uni2501 ; G 2364 -U 9474 ; WX 602 ; N SF110000 ; G 2365 -U 9475 ; WX 602 ; N uni2503 ; G 2366 -U 9476 ; WX 602 ; N uni2504 ; G 2367 -U 9477 ; WX 602 ; N uni2505 ; G 2368 -U 9478 ; WX 602 ; N uni2506 ; G 2369 -U 9479 ; WX 602 ; N uni2507 ; G 2370 -U 9480 ; WX 602 ; N uni2508 ; G 2371 -U 9481 ; WX 602 ; N uni2509 ; G 2372 -U 9482 ; WX 602 ; N uni250A ; G 2373 -U 9483 ; WX 602 ; N uni250B ; G 2374 -U 9484 ; WX 602 ; N SF010000 ; G 2375 -U 9485 ; WX 602 ; N uni250D ; G 2376 -U 9486 ; WX 602 ; N uni250E ; G 2377 -U 9487 ; WX 602 ; N uni250F ; G 2378 -U 9488 ; WX 602 ; N SF030000 ; G 2379 -U 9489 ; WX 602 ; N uni2511 ; G 2380 -U 9490 ; WX 602 ; N uni2512 ; G 2381 -U 9491 ; WX 602 ; N uni2513 ; G 2382 -U 9492 ; WX 602 ; N SF020000 ; G 2383 -U 9493 ; WX 602 ; N uni2515 ; G 2384 -U 9494 ; WX 602 ; N uni2516 ; G 2385 -U 9495 ; WX 602 ; N uni2517 ; G 2386 -U 9496 ; WX 602 ; N SF040000 ; G 2387 -U 9497 ; WX 602 ; N uni2519 ; G 2388 -U 9498 ; WX 602 ; N uni251A ; G 2389 -U 9499 ; WX 602 ; N uni251B ; G 2390 -U 9500 ; WX 602 ; N SF080000 ; G 2391 -U 9501 ; WX 602 ; N uni251D ; G 2392 -U 9502 ; WX 602 ; N uni251E ; G 2393 -U 9503 ; WX 602 ; N uni251F ; G 2394 -U 9504 ; WX 602 ; N uni2520 ; G 2395 -U 9505 ; WX 602 ; N uni2521 ; G 2396 -U 9506 ; WX 602 ; N uni2522 ; G 2397 -U 9507 ; WX 602 ; N uni2523 ; G 2398 -U 9508 ; WX 602 ; N SF090000 ; G 2399 -U 9509 ; WX 602 ; N uni2525 ; G 2400 -U 9510 ; WX 602 ; N uni2526 ; G 2401 -U 9511 ; WX 602 ; N uni2527 ; G 2402 -U 9512 ; WX 602 ; N uni2528 ; G 2403 -U 9513 ; WX 602 ; N uni2529 ; G 2404 -U 9514 ; WX 602 ; N uni252A ; G 2405 -U 9515 ; WX 602 ; N uni252B ; G 2406 -U 9516 ; WX 602 ; N SF060000 ; G 2407 -U 9517 ; WX 602 ; N uni252D ; G 2408 -U 9518 ; WX 602 ; N uni252E ; G 2409 -U 9519 ; WX 602 ; N uni252F ; G 2410 -U 9520 ; WX 602 ; N uni2530 ; G 2411 -U 9521 ; WX 602 ; N uni2531 ; G 2412 -U 9522 ; WX 602 ; N uni2532 ; G 2413 -U 9523 ; WX 602 ; N uni2533 ; G 2414 -U 9524 ; WX 602 ; N SF070000 ; G 2415 -U 9525 ; WX 602 ; N uni2535 ; G 2416 -U 9526 ; WX 602 ; N uni2536 ; G 2417 -U 9527 ; WX 602 ; N uni2537 ; G 2418 -U 9528 ; WX 602 ; N uni2538 ; G 2419 -U 9529 ; WX 602 ; N uni2539 ; G 2420 -U 9530 ; WX 602 ; N uni253A ; G 2421 -U 9531 ; WX 602 ; N uni253B ; G 2422 -U 9532 ; WX 602 ; N SF050000 ; G 2423 -U 9533 ; WX 602 ; N uni253D ; G 2424 -U 9534 ; WX 602 ; N uni253E ; G 2425 -U 9535 ; WX 602 ; N uni253F ; G 2426 -U 9536 ; WX 602 ; N uni2540 ; G 2427 -U 9537 ; WX 602 ; N uni2541 ; G 2428 -U 9538 ; WX 602 ; N uni2542 ; G 2429 -U 9539 ; WX 602 ; N uni2543 ; G 2430 -U 9540 ; WX 602 ; N uni2544 ; G 2431 -U 9541 ; WX 602 ; N uni2545 ; G 2432 -U 9542 ; WX 602 ; N uni2546 ; G 2433 -U 9543 ; WX 602 ; N uni2547 ; G 2434 -U 9544 ; WX 602 ; N uni2548 ; G 2435 -U 9545 ; WX 602 ; N uni2549 ; G 2436 -U 9546 ; WX 602 ; N uni254A ; G 2437 -U 9547 ; WX 602 ; N uni254B ; G 2438 -U 9548 ; WX 602 ; N uni254C ; G 2439 -U 9549 ; WX 602 ; N uni254D ; G 2440 -U 9550 ; WX 602 ; N uni254E ; G 2441 -U 9551 ; WX 602 ; N uni254F ; G 2442 -U 9552 ; WX 602 ; N SF430000 ; G 2443 -U 9553 ; WX 602 ; N SF240000 ; G 2444 -U 9554 ; WX 602 ; N SF510000 ; G 2445 -U 9555 ; WX 602 ; N SF520000 ; G 2446 -U 9556 ; WX 602 ; N SF390000 ; G 2447 -U 9557 ; WX 602 ; N SF220000 ; G 2448 -U 9558 ; WX 602 ; N SF210000 ; G 2449 -U 9559 ; WX 602 ; N SF250000 ; G 2450 -U 9560 ; WX 602 ; N SF500000 ; G 2451 -U 9561 ; WX 602 ; N SF490000 ; G 2452 -U 9562 ; WX 602 ; N SF380000 ; G 2453 -U 9563 ; WX 602 ; N SF280000 ; G 2454 -U 9564 ; WX 602 ; N SF270000 ; G 2455 -U 9565 ; WX 602 ; N SF260000 ; G 2456 -U 9566 ; WX 602 ; N SF360000 ; G 2457 -U 9567 ; WX 602 ; N SF370000 ; G 2458 -U 9568 ; WX 602 ; N SF420000 ; G 2459 -U 9569 ; WX 602 ; N SF190000 ; G 2460 -U 9570 ; WX 602 ; N SF200000 ; G 2461 -U 9571 ; WX 602 ; N SF230000 ; G 2462 -U 9572 ; WX 602 ; N SF470000 ; G 2463 -U 9573 ; WX 602 ; N SF480000 ; G 2464 -U 9574 ; WX 602 ; N SF410000 ; G 2465 -U 9575 ; WX 602 ; N SF450000 ; G 2466 -U 9576 ; WX 602 ; N SF460000 ; G 2467 -U 9577 ; WX 602 ; N SF400000 ; G 2468 -U 9578 ; WX 602 ; N SF540000 ; G 2469 -U 9579 ; WX 602 ; N SF530000 ; G 2470 -U 9580 ; WX 602 ; N SF440000 ; G 2471 -U 9581 ; WX 602 ; N uni256D ; G 2472 -U 9582 ; WX 602 ; N uni256E ; G 2473 -U 9583 ; WX 602 ; N uni256F ; G 2474 -U 9584 ; WX 602 ; N uni2570 ; G 2475 -U 9585 ; WX 602 ; N uni2571 ; G 2476 -U 9586 ; WX 602 ; N uni2572 ; G 2477 -U 9587 ; WX 602 ; N uni2573 ; G 2478 -U 9588 ; WX 602 ; N uni2574 ; G 2479 -U 9589 ; WX 602 ; N uni2575 ; G 2480 -U 9590 ; WX 602 ; N uni2576 ; G 2481 -U 9591 ; WX 602 ; N uni2577 ; G 2482 -U 9592 ; WX 602 ; N uni2578 ; G 2483 -U 9593 ; WX 602 ; N uni2579 ; G 2484 -U 9594 ; WX 602 ; N uni257A ; G 2485 -U 9595 ; WX 602 ; N uni257B ; G 2486 -U 9596 ; WX 602 ; N uni257C ; G 2487 -U 9597 ; WX 602 ; N uni257D ; G 2488 -U 9598 ; WX 602 ; N uni257E ; G 2489 -U 9599 ; WX 602 ; N uni257F ; G 2490 -U 9600 ; WX 769 ; N upblock ; G 2491 -U 9601 ; WX 769 ; N uni2581 ; G 2492 -U 9602 ; WX 769 ; N uni2582 ; G 2493 -U 9603 ; WX 769 ; N uni2583 ; G 2494 -U 9604 ; WX 769 ; N dnblock ; G 2495 -U 9605 ; WX 769 ; N uni2585 ; G 2496 -U 9606 ; WX 769 ; N uni2586 ; G 2497 -U 9607 ; WX 769 ; N uni2587 ; G 2498 -U 9608 ; WX 769 ; N block ; G 2499 -U 9609 ; WX 769 ; N uni2589 ; G 2500 -U 9610 ; WX 769 ; N uni258A ; G 2501 -U 9611 ; WX 769 ; N uni258B ; G 2502 -U 9612 ; WX 769 ; N lfblock ; G 2503 -U 9613 ; WX 769 ; N uni258D ; G 2504 -U 9614 ; WX 769 ; N uni258E ; G 2505 -U 9615 ; WX 769 ; N uni258F ; G 2506 -U 9616 ; WX 769 ; N rtblock ; G 2507 -U 9617 ; WX 769 ; N ltshade ; G 2508 -U 9618 ; WX 769 ; N shade ; G 2509 -U 9619 ; WX 769 ; N dkshade ; G 2510 -U 9620 ; WX 769 ; N uni2594 ; G 2511 -U 9621 ; WX 769 ; N uni2595 ; G 2512 -U 9622 ; WX 769 ; N uni2596 ; G 2513 -U 9623 ; WX 769 ; N uni2597 ; G 2514 -U 9624 ; WX 769 ; N uni2598 ; G 2515 -U 9625 ; WX 769 ; N uni2599 ; G 2516 -U 9626 ; WX 769 ; N uni259A ; G 2517 -U 9627 ; WX 769 ; N uni259B ; G 2518 -U 9628 ; WX 769 ; N uni259C ; G 2519 -U 9629 ; WX 769 ; N uni259D ; G 2520 -U 9630 ; WX 769 ; N uni259E ; G 2521 -U 9631 ; WX 769 ; N uni259F ; G 2522 -U 9632 ; WX 945 ; N filledbox ; G 2523 -U 9633 ; WX 945 ; N H22073 ; G 2524 -U 9634 ; WX 945 ; N uni25A2 ; G 2525 -U 9635 ; WX 945 ; N uni25A3 ; G 2526 -U 9636 ; WX 945 ; N uni25A4 ; G 2527 -U 9637 ; WX 945 ; N uni25A5 ; G 2528 -U 9638 ; WX 945 ; N uni25A6 ; G 2529 -U 9639 ; WX 945 ; N uni25A7 ; G 2530 -U 9640 ; WX 945 ; N uni25A8 ; G 2531 -U 9641 ; WX 945 ; N uni25A9 ; G 2532 -U 9642 ; WX 678 ; N H18543 ; G 2533 -U 9643 ; WX 678 ; N H18551 ; G 2534 -U 9644 ; WX 945 ; N filledrect ; G 2535 -U 9645 ; WX 945 ; N uni25AD ; G 2536 -U 9646 ; WX 550 ; N uni25AE ; G 2537 -U 9647 ; WX 550 ; N uni25AF ; G 2538 -U 9648 ; WX 769 ; N uni25B0 ; G 2539 -U 9649 ; WX 769 ; N uni25B1 ; G 2540 -U 9650 ; WX 769 ; N triagup ; G 2541 -U 9651 ; WX 769 ; N uni25B3 ; G 2542 -U 9652 ; WX 502 ; N uni25B4 ; G 2543 -U 9653 ; WX 502 ; N uni25B5 ; G 2544 -U 9654 ; WX 769 ; N uni25B6 ; G 2545 -U 9655 ; WX 769 ; N uni25B7 ; G 2546 -U 9656 ; WX 502 ; N uni25B8 ; G 2547 -U 9657 ; WX 502 ; N uni25B9 ; G 2548 -U 9658 ; WX 769 ; N triagrt ; G 2549 -U 9659 ; WX 769 ; N uni25BB ; G 2550 -U 9660 ; WX 769 ; N triagdn ; G 2551 -U 9661 ; WX 769 ; N uni25BD ; G 2552 -U 9662 ; WX 502 ; N uni25BE ; G 2553 -U 9663 ; WX 502 ; N uni25BF ; G 2554 -U 9664 ; WX 769 ; N uni25C0 ; G 2555 -U 9665 ; WX 769 ; N uni25C1 ; G 2556 -U 9666 ; WX 502 ; N uni25C2 ; G 2557 -U 9667 ; WX 502 ; N uni25C3 ; G 2558 -U 9668 ; WX 769 ; N triaglf ; G 2559 -U 9669 ; WX 769 ; N uni25C5 ; G 2560 -U 9670 ; WX 769 ; N uni25C6 ; G 2561 -U 9671 ; WX 769 ; N uni25C7 ; G 2562 -U 9672 ; WX 769 ; N uni25C8 ; G 2563 -U 9673 ; WX 873 ; N uni25C9 ; G 2564 -U 9674 ; WX 494 ; N lozenge ; G 2565 -U 9675 ; WX 873 ; N circle ; G 2566 -U 9676 ; WX 873 ; N uni25CC ; G 2567 -U 9677 ; WX 873 ; N uni25CD ; G 2568 -U 9678 ; WX 873 ; N uni25CE ; G 2569 -U 9679 ; WX 873 ; N H18533 ; G 2570 -U 9680 ; WX 873 ; N uni25D0 ; G 2571 -U 9681 ; WX 873 ; N uni25D1 ; G 2572 -U 9682 ; WX 873 ; N uni25D2 ; G 2573 -U 9683 ; WX 873 ; N uni25D3 ; G 2574 -U 9684 ; WX 873 ; N uni25D4 ; G 2575 -U 9685 ; WX 873 ; N uni25D5 ; G 2576 -U 9686 ; WX 527 ; N uni25D6 ; G 2577 -U 9687 ; WX 527 ; N uni25D7 ; G 2578 -U 9688 ; WX 791 ; N invbullet ; G 2579 -U 9689 ; WX 970 ; N invcircle ; G 2580 -U 9690 ; WX 970 ; N uni25DA ; G 2581 -U 9691 ; WX 970 ; N uni25DB ; G 2582 -U 9692 ; WX 387 ; N uni25DC ; G 2583 -U 9693 ; WX 387 ; N uni25DD ; G 2584 -U 9694 ; WX 387 ; N uni25DE ; G 2585 -U 9695 ; WX 387 ; N uni25DF ; G 2586 -U 9696 ; WX 873 ; N uni25E0 ; G 2587 -U 9697 ; WX 873 ; N uni25E1 ; G 2588 -U 9698 ; WX 769 ; N uni25E2 ; G 2589 -U 9699 ; WX 769 ; N uni25E3 ; G 2590 -U 9700 ; WX 769 ; N uni25E4 ; G 2591 -U 9701 ; WX 769 ; N uni25E5 ; G 2592 -U 9702 ; WX 590 ; N openbullet ; G 2593 -U 9703 ; WX 945 ; N uni25E7 ; G 2594 -U 9704 ; WX 945 ; N uni25E8 ; G 2595 -U 9705 ; WX 945 ; N uni25E9 ; G 2596 -U 9706 ; WX 945 ; N uni25EA ; G 2597 -U 9707 ; WX 945 ; N uni25EB ; G 2598 -U 9708 ; WX 769 ; N uni25EC ; G 2599 -U 9709 ; WX 769 ; N uni25ED ; G 2600 -U 9710 ; WX 769 ; N uni25EE ; G 2601 -U 9711 ; WX 1119 ; N uni25EF ; G 2602 -U 9712 ; WX 945 ; N uni25F0 ; G 2603 -U 9713 ; WX 945 ; N uni25F1 ; G 2604 -U 9714 ; WX 945 ; N uni25F2 ; G 2605 -U 9715 ; WX 945 ; N uni25F3 ; G 2606 -U 9716 ; WX 873 ; N uni25F4 ; G 2607 -U 9717 ; WX 873 ; N uni25F5 ; G 2608 -U 9718 ; WX 873 ; N uni25F6 ; G 2609 -U 9719 ; WX 873 ; N uni25F7 ; G 2610 -U 9720 ; WX 769 ; N uni25F8 ; G 2611 -U 9721 ; WX 769 ; N uni25F9 ; G 2612 -U 9722 ; WX 769 ; N uni25FA ; G 2613 -U 9723 ; WX 830 ; N uni25FB ; G 2614 -U 9724 ; WX 830 ; N uni25FC ; G 2615 -U 9725 ; WX 732 ; N uni25FD ; G 2616 -U 9726 ; WX 732 ; N uni25FE ; G 2617 -U 9727 ; WX 769 ; N uni25FF ; G 2618 -U 9728 ; WX 896 ; N uni2600 ; G 2619 -U 9784 ; WX 896 ; N uni2638 ; G 2620 -U 9785 ; WX 896 ; N uni2639 ; G 2621 -U 9786 ; WX 896 ; N smileface ; G 2622 -U 9787 ; WX 896 ; N invsmileface ; G 2623 -U 9788 ; WX 896 ; N sun ; G 2624 -U 9791 ; WX 614 ; N uni263F ; G 2625 -U 9792 ; WX 731 ; N female ; G 2626 -U 9793 ; WX 731 ; N uni2641 ; G 2627 -U 9794 ; WX 896 ; N male ; G 2628 -U 9795 ; WX 896 ; N uni2643 ; G 2629 -U 9796 ; WX 896 ; N uni2644 ; G 2630 -U 9797 ; WX 896 ; N uni2645 ; G 2631 -U 9798 ; WX 896 ; N uni2646 ; G 2632 -U 9799 ; WX 896 ; N uni2647 ; G 2633 -U 9824 ; WX 896 ; N spade ; G 2634 -U 9825 ; WX 896 ; N uni2661 ; G 2635 -U 9826 ; WX 896 ; N uni2662 ; G 2636 -U 9827 ; WX 896 ; N club ; G 2637 -U 9828 ; WX 896 ; N uni2664 ; G 2638 -U 9829 ; WX 896 ; N heart ; G 2639 -U 9830 ; WX 896 ; N diamond ; G 2640 -U 9831 ; WX 896 ; N uni2667 ; G 2641 -U 9833 ; WX 472 ; N uni2669 ; G 2642 -U 9834 ; WX 638 ; N musicalnote ; G 2643 -U 9835 ; WX 896 ; N musicalnotedbl ; G 2644 -U 9836 ; WX 896 ; N uni266C ; G 2645 -U 9837 ; WX 472 ; N uni266D ; G 2646 -U 9838 ; WX 357 ; N uni266E ; G 2647 -U 9839 ; WX 484 ; N uni266F ; G 2648 -U 10145 ; WX 838 ; N uni27A1 ; G 2649 -U 10181 ; WX 390 ; N uni27C5 ; G 2650 -U 10182 ; WX 390 ; N uni27C6 ; G 2651 -U 10208 ; WX 494 ; N uni27E0 ; G 2652 -U 10216 ; WX 390 ; N uni27E8 ; G 2653 -U 10217 ; WX 390 ; N uni27E9 ; G 2654 -U 10224 ; WX 838 ; N uni27F0 ; G 2655 -U 10225 ; WX 838 ; N uni27F1 ; G 2656 -U 10226 ; WX 838 ; N uni27F2 ; G 2657 -U 10227 ; WX 838 ; N uni27F3 ; G 2658 -U 10228 ; WX 1033 ; N uni27F4 ; G 2659 -U 10229 ; WX 1434 ; N uni27F5 ; G 2660 -U 10230 ; WX 1434 ; N uni27F6 ; G 2661 -U 10231 ; WX 1434 ; N uni27F7 ; G 2662 -U 10232 ; WX 1434 ; N uni27F8 ; G 2663 -U 10233 ; WX 1434 ; N uni27F9 ; G 2664 -U 10234 ; WX 1434 ; N uni27FA ; G 2665 -U 10235 ; WX 1434 ; N uni27FB ; G 2666 -U 10236 ; WX 1434 ; N uni27FC ; G 2667 -U 10237 ; WX 1434 ; N uni27FD ; G 2668 -U 10238 ; WX 1434 ; N uni27FE ; G 2669 -U 10239 ; WX 1434 ; N uni27FF ; G 2670 -U 10240 ; WX 732 ; N uni2800 ; G 2671 -U 10241 ; WX 732 ; N uni2801 ; G 2672 -U 10242 ; WX 732 ; N uni2802 ; G 2673 -U 10243 ; WX 732 ; N uni2803 ; G 2674 -U 10244 ; WX 732 ; N uni2804 ; G 2675 -U 10245 ; WX 732 ; N uni2805 ; G 2676 -U 10246 ; WX 732 ; N uni2806 ; G 2677 -U 10247 ; WX 732 ; N uni2807 ; G 2678 -U 10248 ; WX 732 ; N uni2808 ; G 2679 -U 10249 ; WX 732 ; N uni2809 ; G 2680 -U 10250 ; WX 732 ; N uni280A ; G 2681 -U 10251 ; WX 732 ; N uni280B ; G 2682 -U 10252 ; WX 732 ; N uni280C ; G 2683 -U 10253 ; WX 732 ; N uni280D ; G 2684 -U 10254 ; WX 732 ; N uni280E ; G 2685 -U 10255 ; WX 732 ; N uni280F ; G 2686 -U 10256 ; WX 732 ; N uni2810 ; G 2687 -U 10257 ; WX 732 ; N uni2811 ; G 2688 -U 10258 ; WX 732 ; N uni2812 ; G 2689 -U 10259 ; WX 732 ; N uni2813 ; G 2690 -U 10260 ; WX 732 ; N uni2814 ; G 2691 -U 10261 ; WX 732 ; N uni2815 ; G 2692 -U 10262 ; WX 732 ; N uni2816 ; G 2693 -U 10263 ; WX 732 ; N uni2817 ; G 2694 -U 10264 ; WX 732 ; N uni2818 ; G 2695 -U 10265 ; WX 732 ; N uni2819 ; G 2696 -U 10266 ; WX 732 ; N uni281A ; G 2697 -U 10267 ; WX 732 ; N uni281B ; G 2698 -U 10268 ; WX 732 ; N uni281C ; G 2699 -U 10269 ; WX 732 ; N uni281D ; G 2700 -U 10270 ; WX 732 ; N uni281E ; G 2701 -U 10271 ; WX 732 ; N uni281F ; G 2702 -U 10272 ; WX 732 ; N uni2820 ; G 2703 -U 10273 ; WX 732 ; N uni2821 ; G 2704 -U 10274 ; WX 732 ; N uni2822 ; G 2705 -U 10275 ; WX 732 ; N uni2823 ; G 2706 -U 10276 ; WX 732 ; N uni2824 ; G 2707 -U 10277 ; WX 732 ; N uni2825 ; G 2708 -U 10278 ; WX 732 ; N uni2826 ; G 2709 -U 10279 ; WX 732 ; N uni2827 ; G 2710 -U 10280 ; WX 732 ; N uni2828 ; G 2711 -U 10281 ; WX 732 ; N uni2829 ; G 2712 -U 10282 ; WX 732 ; N uni282A ; G 2713 -U 10283 ; WX 732 ; N uni282B ; G 2714 -U 10284 ; WX 732 ; N uni282C ; G 2715 -U 10285 ; WX 732 ; N uni282D ; G 2716 -U 10286 ; WX 732 ; N uni282E ; G 2717 -U 10287 ; WX 732 ; N uni282F ; G 2718 -U 10288 ; WX 732 ; N uni2830 ; G 2719 -U 10289 ; WX 732 ; N uni2831 ; G 2720 -U 10290 ; WX 732 ; N uni2832 ; G 2721 -U 10291 ; WX 732 ; N uni2833 ; G 2722 -U 10292 ; WX 732 ; N uni2834 ; G 2723 -U 10293 ; WX 732 ; N uni2835 ; G 2724 -U 10294 ; WX 732 ; N uni2836 ; G 2725 -U 10295 ; WX 732 ; N uni2837 ; G 2726 -U 10296 ; WX 732 ; N uni2838 ; G 2727 -U 10297 ; WX 732 ; N uni2839 ; G 2728 -U 10298 ; WX 732 ; N uni283A ; G 2729 -U 10299 ; WX 732 ; N uni283B ; G 2730 -U 10300 ; WX 732 ; N uni283C ; G 2731 -U 10301 ; WX 732 ; N uni283D ; G 2732 -U 10302 ; WX 732 ; N uni283E ; G 2733 -U 10303 ; WX 732 ; N uni283F ; G 2734 -U 10304 ; WX 732 ; N uni2840 ; G 2735 -U 10305 ; WX 732 ; N uni2841 ; G 2736 -U 10306 ; WX 732 ; N uni2842 ; G 2737 -U 10307 ; WX 732 ; N uni2843 ; G 2738 -U 10308 ; WX 732 ; N uni2844 ; G 2739 -U 10309 ; WX 732 ; N uni2845 ; G 2740 -U 10310 ; WX 732 ; N uni2846 ; G 2741 -U 10311 ; WX 732 ; N uni2847 ; G 2742 -U 10312 ; WX 732 ; N uni2848 ; G 2743 -U 10313 ; WX 732 ; N uni2849 ; G 2744 -U 10314 ; WX 732 ; N uni284A ; G 2745 -U 10315 ; WX 732 ; N uni284B ; G 2746 -U 10316 ; WX 732 ; N uni284C ; G 2747 -U 10317 ; WX 732 ; N uni284D ; G 2748 -U 10318 ; WX 732 ; N uni284E ; G 2749 -U 10319 ; WX 732 ; N uni284F ; G 2750 -U 10320 ; WX 732 ; N uni2850 ; G 2751 -U 10321 ; WX 732 ; N uni2851 ; G 2752 -U 10322 ; WX 732 ; N uni2852 ; G 2753 -U 10323 ; WX 732 ; N uni2853 ; G 2754 -U 10324 ; WX 732 ; N uni2854 ; G 2755 -U 10325 ; WX 732 ; N uni2855 ; G 2756 -U 10326 ; WX 732 ; N uni2856 ; G 2757 -U 10327 ; WX 732 ; N uni2857 ; G 2758 -U 10328 ; WX 732 ; N uni2858 ; G 2759 -U 10329 ; WX 732 ; N uni2859 ; G 2760 -U 10330 ; WX 732 ; N uni285A ; G 2761 -U 10331 ; WX 732 ; N uni285B ; G 2762 -U 10332 ; WX 732 ; N uni285C ; G 2763 -U 10333 ; WX 732 ; N uni285D ; G 2764 -U 10334 ; WX 732 ; N uni285E ; G 2765 -U 10335 ; WX 732 ; N uni285F ; G 2766 -U 10336 ; WX 732 ; N uni2860 ; G 2767 -U 10337 ; WX 732 ; N uni2861 ; G 2768 -U 10338 ; WX 732 ; N uni2862 ; G 2769 -U 10339 ; WX 732 ; N uni2863 ; G 2770 -U 10340 ; WX 732 ; N uni2864 ; G 2771 -U 10341 ; WX 732 ; N uni2865 ; G 2772 -U 10342 ; WX 732 ; N uni2866 ; G 2773 -U 10343 ; WX 732 ; N uni2867 ; G 2774 -U 10344 ; WX 732 ; N uni2868 ; G 2775 -U 10345 ; WX 732 ; N uni2869 ; G 2776 -U 10346 ; WX 732 ; N uni286A ; G 2777 -U 10347 ; WX 732 ; N uni286B ; G 2778 -U 10348 ; WX 732 ; N uni286C ; G 2779 -U 10349 ; WX 732 ; N uni286D ; G 2780 -U 10350 ; WX 732 ; N uni286E ; G 2781 -U 10351 ; WX 732 ; N uni286F ; G 2782 -U 10352 ; WX 732 ; N uni2870 ; G 2783 -U 10353 ; WX 732 ; N uni2871 ; G 2784 -U 10354 ; WX 732 ; N uni2872 ; G 2785 -U 10355 ; WX 732 ; N uni2873 ; G 2786 -U 10356 ; WX 732 ; N uni2874 ; G 2787 -U 10357 ; WX 732 ; N uni2875 ; G 2788 -U 10358 ; WX 732 ; N uni2876 ; G 2789 -U 10359 ; WX 732 ; N uni2877 ; G 2790 -U 10360 ; WX 732 ; N uni2878 ; G 2791 -U 10361 ; WX 732 ; N uni2879 ; G 2792 -U 10362 ; WX 732 ; N uni287A ; G 2793 -U 10363 ; WX 732 ; N uni287B ; G 2794 -U 10364 ; WX 732 ; N uni287C ; G 2795 -U 10365 ; WX 732 ; N uni287D ; G 2796 -U 10366 ; WX 732 ; N uni287E ; G 2797 -U 10367 ; WX 732 ; N uni287F ; G 2798 -U 10368 ; WX 732 ; N uni2880 ; G 2799 -U 10369 ; WX 732 ; N uni2881 ; G 2800 -U 10370 ; WX 732 ; N uni2882 ; G 2801 -U 10371 ; WX 732 ; N uni2883 ; G 2802 -U 10372 ; WX 732 ; N uni2884 ; G 2803 -U 10373 ; WX 732 ; N uni2885 ; G 2804 -U 10374 ; WX 732 ; N uni2886 ; G 2805 -U 10375 ; WX 732 ; N uni2887 ; G 2806 -U 10376 ; WX 732 ; N uni2888 ; G 2807 -U 10377 ; WX 732 ; N uni2889 ; G 2808 -U 10378 ; WX 732 ; N uni288A ; G 2809 -U 10379 ; WX 732 ; N uni288B ; G 2810 -U 10380 ; WX 732 ; N uni288C ; G 2811 -U 10381 ; WX 732 ; N uni288D ; G 2812 -U 10382 ; WX 732 ; N uni288E ; G 2813 -U 10383 ; WX 732 ; N uni288F ; G 2814 -U 10384 ; WX 732 ; N uni2890 ; G 2815 -U 10385 ; WX 732 ; N uni2891 ; G 2816 -U 10386 ; WX 732 ; N uni2892 ; G 2817 -U 10387 ; WX 732 ; N uni2893 ; G 2818 -U 10388 ; WX 732 ; N uni2894 ; G 2819 -U 10389 ; WX 732 ; N uni2895 ; G 2820 -U 10390 ; WX 732 ; N uni2896 ; G 2821 -U 10391 ; WX 732 ; N uni2897 ; G 2822 -U 10392 ; WX 732 ; N uni2898 ; G 2823 -U 10393 ; WX 732 ; N uni2899 ; G 2824 -U 10394 ; WX 732 ; N uni289A ; G 2825 -U 10395 ; WX 732 ; N uni289B ; G 2826 -U 10396 ; WX 732 ; N uni289C ; G 2827 -U 10397 ; WX 732 ; N uni289D ; G 2828 -U 10398 ; WX 732 ; N uni289E ; G 2829 -U 10399 ; WX 732 ; N uni289F ; G 2830 -U 10400 ; WX 732 ; N uni28A0 ; G 2831 -U 10401 ; WX 732 ; N uni28A1 ; G 2832 -U 10402 ; WX 732 ; N uni28A2 ; G 2833 -U 10403 ; WX 732 ; N uni28A3 ; G 2834 -U 10404 ; WX 732 ; N uni28A4 ; G 2835 -U 10405 ; WX 732 ; N uni28A5 ; G 2836 -U 10406 ; WX 732 ; N uni28A6 ; G 2837 -U 10407 ; WX 732 ; N uni28A7 ; G 2838 -U 10408 ; WX 732 ; N uni28A8 ; G 2839 -U 10409 ; WX 732 ; N uni28A9 ; G 2840 -U 10410 ; WX 732 ; N uni28AA ; G 2841 -U 10411 ; WX 732 ; N uni28AB ; G 2842 -U 10412 ; WX 732 ; N uni28AC ; G 2843 -U 10413 ; WX 732 ; N uni28AD ; G 2844 -U 10414 ; WX 732 ; N uni28AE ; G 2845 -U 10415 ; WX 732 ; N uni28AF ; G 2846 -U 10416 ; WX 732 ; N uni28B0 ; G 2847 -U 10417 ; WX 732 ; N uni28B1 ; G 2848 -U 10418 ; WX 732 ; N uni28B2 ; G 2849 -U 10419 ; WX 732 ; N uni28B3 ; G 2850 -U 10420 ; WX 732 ; N uni28B4 ; G 2851 -U 10421 ; WX 732 ; N uni28B5 ; G 2852 -U 10422 ; WX 732 ; N uni28B6 ; G 2853 -U 10423 ; WX 732 ; N uni28B7 ; G 2854 -U 10424 ; WX 732 ; N uni28B8 ; G 2855 -U 10425 ; WX 732 ; N uni28B9 ; G 2856 -U 10426 ; WX 732 ; N uni28BA ; G 2857 -U 10427 ; WX 732 ; N uni28BB ; G 2858 -U 10428 ; WX 732 ; N uni28BC ; G 2859 -U 10429 ; WX 732 ; N uni28BD ; G 2860 -U 10430 ; WX 732 ; N uni28BE ; G 2861 -U 10431 ; WX 732 ; N uni28BF ; G 2862 -U 10432 ; WX 732 ; N uni28C0 ; G 2863 -U 10433 ; WX 732 ; N uni28C1 ; G 2864 -U 10434 ; WX 732 ; N uni28C2 ; G 2865 -U 10435 ; WX 732 ; N uni28C3 ; G 2866 -U 10436 ; WX 732 ; N uni28C4 ; G 2867 -U 10437 ; WX 732 ; N uni28C5 ; G 2868 -U 10438 ; WX 732 ; N uni28C6 ; G 2869 -U 10439 ; WX 732 ; N uni28C7 ; G 2870 -U 10440 ; WX 732 ; N uni28C8 ; G 2871 -U 10441 ; WX 732 ; N uni28C9 ; G 2872 -U 10442 ; WX 732 ; N uni28CA ; G 2873 -U 10443 ; WX 732 ; N uni28CB ; G 2874 -U 10444 ; WX 732 ; N uni28CC ; G 2875 -U 10445 ; WX 732 ; N uni28CD ; G 2876 -U 10446 ; WX 732 ; N uni28CE ; G 2877 -U 10447 ; WX 732 ; N uni28CF ; G 2878 -U 10448 ; WX 732 ; N uni28D0 ; G 2879 -U 10449 ; WX 732 ; N uni28D1 ; G 2880 -U 10450 ; WX 732 ; N uni28D2 ; G 2881 -U 10451 ; WX 732 ; N uni28D3 ; G 2882 -U 10452 ; WX 732 ; N uni28D4 ; G 2883 -U 10453 ; WX 732 ; N uni28D5 ; G 2884 -U 10454 ; WX 732 ; N uni28D6 ; G 2885 -U 10455 ; WX 732 ; N uni28D7 ; G 2886 -U 10456 ; WX 732 ; N uni28D8 ; G 2887 -U 10457 ; WX 732 ; N uni28D9 ; G 2888 -U 10458 ; WX 732 ; N uni28DA ; G 2889 -U 10459 ; WX 732 ; N uni28DB ; G 2890 -U 10460 ; WX 732 ; N uni28DC ; G 2891 -U 10461 ; WX 732 ; N uni28DD ; G 2892 -U 10462 ; WX 732 ; N uni28DE ; G 2893 -U 10463 ; WX 732 ; N uni28DF ; G 2894 -U 10464 ; WX 732 ; N uni28E0 ; G 2895 -U 10465 ; WX 732 ; N uni28E1 ; G 2896 -U 10466 ; WX 732 ; N uni28E2 ; G 2897 -U 10467 ; WX 732 ; N uni28E3 ; G 2898 -U 10468 ; WX 732 ; N uni28E4 ; G 2899 -U 10469 ; WX 732 ; N uni28E5 ; G 2900 -U 10470 ; WX 732 ; N uni28E6 ; G 2901 -U 10471 ; WX 732 ; N uni28E7 ; G 2902 -U 10472 ; WX 732 ; N uni28E8 ; G 2903 -U 10473 ; WX 732 ; N uni28E9 ; G 2904 -U 10474 ; WX 732 ; N uni28EA ; G 2905 -U 10475 ; WX 732 ; N uni28EB ; G 2906 -U 10476 ; WX 732 ; N uni28EC ; G 2907 -U 10477 ; WX 732 ; N uni28ED ; G 2908 -U 10478 ; WX 732 ; N uni28EE ; G 2909 -U 10479 ; WX 732 ; N uni28EF ; G 2910 -U 10480 ; WX 732 ; N uni28F0 ; G 2911 -U 10481 ; WX 732 ; N uni28F1 ; G 2912 -U 10482 ; WX 732 ; N uni28F2 ; G 2913 -U 10483 ; WX 732 ; N uni28F3 ; G 2914 -U 10484 ; WX 732 ; N uni28F4 ; G 2915 -U 10485 ; WX 732 ; N uni28F5 ; G 2916 -U 10486 ; WX 732 ; N uni28F6 ; G 2917 -U 10487 ; WX 732 ; N uni28F7 ; G 2918 -U 10488 ; WX 732 ; N uni28F8 ; G 2919 -U 10489 ; WX 732 ; N uni28F9 ; G 2920 -U 10490 ; WX 732 ; N uni28FA ; G 2921 -U 10491 ; WX 732 ; N uni28FB ; G 2922 -U 10492 ; WX 732 ; N uni28FC ; G 2923 -U 10493 ; WX 732 ; N uni28FD ; G 2924 -U 10494 ; WX 732 ; N uni28FE ; G 2925 -U 10495 ; WX 732 ; N uni28FF ; G 2926 -U 10496 ; WX 838 ; N uni2900 ; G 2927 -U 10497 ; WX 838 ; N uni2901 ; G 2928 -U 10498 ; WX 838 ; N uni2902 ; G 2929 -U 10499 ; WX 838 ; N uni2903 ; G 2930 -U 10500 ; WX 838 ; N uni2904 ; G 2931 -U 10501 ; WX 838 ; N uni2905 ; G 2932 -U 10502 ; WX 838 ; N uni2906 ; G 2933 -U 10503 ; WX 838 ; N uni2907 ; G 2934 -U 10504 ; WX 838 ; N uni2908 ; G 2935 -U 10505 ; WX 838 ; N uni2909 ; G 2936 -U 10506 ; WX 838 ; N uni290A ; G 2937 -U 10507 ; WX 838 ; N uni290B ; G 2938 -U 10508 ; WX 838 ; N uni290C ; G 2939 -U 10509 ; WX 838 ; N uni290D ; G 2940 -U 10510 ; WX 838 ; N uni290E ; G 2941 -U 10511 ; WX 838 ; N uni290F ; G 2942 -U 10512 ; WX 838 ; N uni2910 ; G 2943 -U 10513 ; WX 838 ; N uni2911 ; G 2944 -U 10514 ; WX 838 ; N uni2912 ; G 2945 -U 10515 ; WX 838 ; N uni2913 ; G 2946 -U 10516 ; WX 838 ; N uni2914 ; G 2947 -U 10517 ; WX 838 ; N uni2915 ; G 2948 -U 10518 ; WX 838 ; N uni2916 ; G 2949 -U 10519 ; WX 838 ; N uni2917 ; G 2950 -U 10520 ; WX 838 ; N uni2918 ; G 2951 -U 10521 ; WX 838 ; N uni2919 ; G 2952 -U 10522 ; WX 838 ; N uni291A ; G 2953 -U 10523 ; WX 838 ; N uni291B ; G 2954 -U 10524 ; WX 838 ; N uni291C ; G 2955 -U 10525 ; WX 838 ; N uni291D ; G 2956 -U 10526 ; WX 838 ; N uni291E ; G 2957 -U 10527 ; WX 838 ; N uni291F ; G 2958 -U 10528 ; WX 838 ; N uni2920 ; G 2959 -U 10529 ; WX 838 ; N uni2921 ; G 2960 -U 10530 ; WX 838 ; N uni2922 ; G 2961 -U 10531 ; WX 838 ; N uni2923 ; G 2962 -U 10532 ; WX 838 ; N uni2924 ; G 2963 -U 10533 ; WX 838 ; N uni2925 ; G 2964 -U 10534 ; WX 838 ; N uni2926 ; G 2965 -U 10535 ; WX 838 ; N uni2927 ; G 2966 -U 10536 ; WX 838 ; N uni2928 ; G 2967 -U 10537 ; WX 838 ; N uni2929 ; G 2968 -U 10538 ; WX 838 ; N uni292A ; G 2969 -U 10539 ; WX 838 ; N uni292B ; G 2970 -U 10540 ; WX 838 ; N uni292C ; G 2971 -U 10541 ; WX 838 ; N uni292D ; G 2972 -U 10542 ; WX 838 ; N uni292E ; G 2973 -U 10543 ; WX 838 ; N uni292F ; G 2974 -U 10544 ; WX 838 ; N uni2930 ; G 2975 -U 10545 ; WX 838 ; N uni2931 ; G 2976 -U 10546 ; WX 838 ; N uni2932 ; G 2977 -U 10547 ; WX 838 ; N uni2933 ; G 2978 -U 10548 ; WX 838 ; N uni2934 ; G 2979 -U 10549 ; WX 838 ; N uni2935 ; G 2980 -U 10550 ; WX 838 ; N uni2936 ; G 2981 -U 10551 ; WX 838 ; N uni2937 ; G 2982 -U 10552 ; WX 838 ; N uni2938 ; G 2983 -U 10553 ; WX 838 ; N uni2939 ; G 2984 -U 10554 ; WX 838 ; N uni293A ; G 2985 -U 10555 ; WX 838 ; N uni293B ; G 2986 -U 10556 ; WX 838 ; N uni293C ; G 2987 -U 10557 ; WX 838 ; N uni293D ; G 2988 -U 10558 ; WX 838 ; N uni293E ; G 2989 -U 10559 ; WX 838 ; N uni293F ; G 2990 -U 10560 ; WX 838 ; N uni2940 ; G 2991 -U 10561 ; WX 838 ; N uni2941 ; G 2992 -U 10562 ; WX 838 ; N uni2942 ; G 2993 -U 10563 ; WX 838 ; N uni2943 ; G 2994 -U 10564 ; WX 838 ; N uni2944 ; G 2995 -U 10565 ; WX 838 ; N uni2945 ; G 2996 -U 10566 ; WX 838 ; N uni2946 ; G 2997 -U 10567 ; WX 838 ; N uni2947 ; G 2998 -U 10568 ; WX 838 ; N uni2948 ; G 2999 -U 10569 ; WX 838 ; N uni2949 ; G 3000 -U 10570 ; WX 838 ; N uni294A ; G 3001 -U 10571 ; WX 838 ; N uni294B ; G 3002 -U 10572 ; WX 838 ; N uni294C ; G 3003 -U 10573 ; WX 838 ; N uni294D ; G 3004 -U 10574 ; WX 838 ; N uni294E ; G 3005 -U 10575 ; WX 838 ; N uni294F ; G 3006 -U 10576 ; WX 838 ; N uni2950 ; G 3007 -U 10577 ; WX 838 ; N uni2951 ; G 3008 -U 10578 ; WX 838 ; N uni2952 ; G 3009 -U 10579 ; WX 838 ; N uni2953 ; G 3010 -U 10580 ; WX 838 ; N uni2954 ; G 3011 -U 10581 ; WX 838 ; N uni2955 ; G 3012 -U 10582 ; WX 838 ; N uni2956 ; G 3013 -U 10583 ; WX 838 ; N uni2957 ; G 3014 -U 10584 ; WX 838 ; N uni2958 ; G 3015 -U 10585 ; WX 838 ; N uni2959 ; G 3016 -U 10586 ; WX 838 ; N uni295A ; G 3017 -U 10587 ; WX 838 ; N uni295B ; G 3018 -U 10588 ; WX 838 ; N uni295C ; G 3019 -U 10589 ; WX 838 ; N uni295D ; G 3020 -U 10590 ; WX 838 ; N uni295E ; G 3021 -U 10591 ; WX 838 ; N uni295F ; G 3022 -U 10592 ; WX 838 ; N uni2960 ; G 3023 -U 10593 ; WX 838 ; N uni2961 ; G 3024 -U 10594 ; WX 838 ; N uni2962 ; G 3025 -U 10595 ; WX 838 ; N uni2963 ; G 3026 -U 10596 ; WX 838 ; N uni2964 ; G 3027 -U 10597 ; WX 838 ; N uni2965 ; G 3028 -U 10598 ; WX 838 ; N uni2966 ; G 3029 -U 10599 ; WX 838 ; N uni2967 ; G 3030 -U 10600 ; WX 838 ; N uni2968 ; G 3031 -U 10601 ; WX 838 ; N uni2969 ; G 3032 -U 10602 ; WX 838 ; N uni296A ; G 3033 -U 10603 ; WX 838 ; N uni296B ; G 3034 -U 10604 ; WX 838 ; N uni296C ; G 3035 -U 10605 ; WX 838 ; N uni296D ; G 3036 -U 10606 ; WX 838 ; N uni296E ; G 3037 -U 10607 ; WX 838 ; N uni296F ; G 3038 -U 10608 ; WX 838 ; N uni2970 ; G 3039 -U 10609 ; WX 838 ; N uni2971 ; G 3040 -U 10610 ; WX 838 ; N uni2972 ; G 3041 -U 10611 ; WX 838 ; N uni2973 ; G 3042 -U 10612 ; WX 838 ; N uni2974 ; G 3043 -U 10613 ; WX 838 ; N uni2975 ; G 3044 -U 10614 ; WX 838 ; N uni2976 ; G 3045 -U 10615 ; WX 981 ; N uni2977 ; G 3046 -U 10616 ; WX 838 ; N uni2978 ; G 3047 -U 10617 ; WX 838 ; N uni2979 ; G 3048 -U 10618 ; WX 984 ; N uni297A ; G 3049 -U 10619 ; WX 838 ; N uni297B ; G 3050 -U 10620 ; WX 838 ; N uni297C ; G 3051 -U 10621 ; WX 838 ; N uni297D ; G 3052 -U 10622 ; WX 838 ; N uni297E ; G 3053 -U 10623 ; WX 838 ; N uni297F ; G 3054 -U 10731 ; WX 494 ; N uni29EB ; G 3055 -U 10764 ; WX 1513 ; N uni2A0C ; G 3056 -U 10765 ; WX 521 ; N uni2A0D ; G 3057 -U 10766 ; WX 521 ; N uni2A0E ; G 3058 -U 10799 ; WX 838 ; N uni2A2F ; G 3059 -U 10858 ; WX 838 ; N uni2A6A ; G 3060 -U 10859 ; WX 838 ; N uni2A6B ; G 3061 -U 11008 ; WX 838 ; N uni2B00 ; G 3062 -U 11009 ; WX 838 ; N uni2B01 ; G 3063 -U 11010 ; WX 838 ; N uni2B02 ; G 3064 -U 11011 ; WX 838 ; N uni2B03 ; G 3065 -U 11012 ; WX 838 ; N uni2B04 ; G 3066 -U 11013 ; WX 838 ; N uni2B05 ; G 3067 -U 11014 ; WX 838 ; N uni2B06 ; G 3068 -U 11015 ; WX 838 ; N uni2B07 ; G 3069 -U 11016 ; WX 838 ; N uni2B08 ; G 3070 -U 11017 ; WX 838 ; N uni2B09 ; G 3071 -U 11018 ; WX 838 ; N uni2B0A ; G 3072 -U 11019 ; WX 838 ; N uni2B0B ; G 3073 -U 11020 ; WX 838 ; N uni2B0C ; G 3074 -U 11021 ; WX 838 ; N uni2B0D ; G 3075 -U 11022 ; WX 838 ; N uni2B0E ; G 3076 -U 11023 ; WX 838 ; N uni2B0F ; G 3077 -U 11024 ; WX 838 ; N uni2B10 ; G 3078 -U 11025 ; WX 838 ; N uni2B11 ; G 3079 -U 11026 ; WX 945 ; N uni2B12 ; G 3080 -U 11027 ; WX 945 ; N uni2B13 ; G 3081 -U 11028 ; WX 945 ; N uni2B14 ; G 3082 -U 11029 ; WX 945 ; N uni2B15 ; G 3083 -U 11030 ; WX 769 ; N uni2B16 ; G 3084 -U 11031 ; WX 769 ; N uni2B17 ; G 3085 -U 11032 ; WX 769 ; N uni2B18 ; G 3086 -U 11033 ; WX 769 ; N uni2B19 ; G 3087 -U 11034 ; WX 945 ; N uni2B1A ; G 3088 -U 11360 ; WX 664 ; N uni2C60 ; G 3089 -U 11361 ; WX 320 ; N uni2C61 ; G 3090 -U 11363 ; WX 673 ; N uni2C63 ; G 3091 -U 11364 ; WX 753 ; N uni2C64 ; G 3092 -U 11367 ; WX 872 ; N uni2C67 ; G 3093 -U 11368 ; WX 644 ; N uni2C68 ; G 3094 -U 11369 ; WX 747 ; N uni2C69 ; G 3095 -U 11370 ; WX 606 ; N uni2C6A ; G 3096 -U 11371 ; WX 695 ; N uni2C6B ; G 3097 -U 11372 ; WX 527 ; N uni2C6C ; G 3098 -U 11373 ; WX 782 ; N uni2C6D ; G 3099 -U 11374 ; WX 1024 ; N uni2C6E ; G 3100 -U 11375 ; WX 722 ; N uni2C6F ; G 3101 -U 11376 ; WX 782 ; N uni2C70 ; G 3102 -U 11377 ; WX 663 ; N uni2C71 ; G 3103 -U 11378 ; WX 1130 ; N uni2C72 ; G 3104 -U 11379 ; WX 939 ; N uni2C73 ; G 3105 -U 11381 ; WX 740 ; N uni2C75 ; G 3106 -U 11382 ; WX 531 ; N uni2C76 ; G 3107 -U 11383 ; WX 700 ; N uni2C77 ; G 3108 -U 11385 ; WX 501 ; N uni2C79 ; G 3109 -U 11386 ; WX 602 ; N uni2C7A ; G 3110 -U 11387 ; WX 553 ; N uni2C7B ; G 3111 -U 11388 ; WX 264 ; N uni2C7C ; G 3112 -U 11389 ; WX 455 ; N uni2C7D ; G 3113 -U 11390 ; WX 685 ; N uni2C7E ; G 3114 -U 11391 ; WX 695 ; N uni2C7F ; G 3115 -U 11520 ; WX 773 ; N uni2D00 ; G 3116 -U 11521 ; WX 635 ; N uni2D01 ; G 3117 -U 11522 ; WX 633 ; N uni2D02 ; G 3118 -U 11523 ; WX 658 ; N uni2D03 ; G 3119 -U 11524 ; WX 631 ; N uni2D04 ; G 3120 -U 11525 ; WX 962 ; N uni2D05 ; G 3121 -U 11526 ; WX 756 ; N uni2D06 ; G 3122 -U 11527 ; WX 960 ; N uni2D07 ; G 3123 -U 11528 ; WX 617 ; N uni2D08 ; G 3124 -U 11529 ; WX 646 ; N uni2D09 ; G 3125 -U 11530 ; WX 962 ; N uni2D0A ; G 3126 -U 11531 ; WX 632 ; N uni2D0B ; G 3127 -U 11532 ; WX 646 ; N uni2D0C ; G 3128 -U 11533 ; WX 962 ; N uni2D0D ; G 3129 -U 11534 ; WX 645 ; N uni2D0E ; G 3130 -U 11535 ; WX 866 ; N uni2D0F ; G 3131 -U 11536 ; WX 961 ; N uni2D10 ; G 3132 -U 11537 ; WX 645 ; N uni2D11 ; G 3133 -U 11538 ; WX 645 ; N uni2D12 ; G 3134 -U 11539 ; WX 959 ; N uni2D13 ; G 3135 -U 11540 ; WX 945 ; N uni2D14 ; G 3136 -U 11541 ; WX 863 ; N uni2D15 ; G 3137 -U 11542 ; WX 644 ; N uni2D16 ; G 3138 -U 11543 ; WX 646 ; N uni2D17 ; G 3139 -U 11544 ; WX 645 ; N uni2D18 ; G 3140 -U 11545 ; WX 649 ; N uni2D19 ; G 3141 -U 11546 ; WX 688 ; N uni2D1A ; G 3142 -U 11547 ; WX 634 ; N uni2D1B ; G 3143 -U 11548 ; WX 982 ; N uni2D1C ; G 3144 -U 11549 ; WX 681 ; N uni2D1D ; G 3145 -U 11550 ; WX 676 ; N uni2D1E ; G 3146 -U 11551 ; WX 852 ; N uni2D1F ; G 3147 -U 11552 ; WX 957 ; N uni2D20 ; G 3148 -U 11553 ; WX 632 ; N uni2D21 ; G 3149 -U 11554 ; WX 645 ; N uni2D22 ; G 3150 -U 11555 ; WX 646 ; N uni2D23 ; G 3151 -U 11556 ; WX 749 ; N uni2D24 ; G 3152 -U 11557 ; WX 914 ; N uni2D25 ; G 3153 -U 11800 ; WX 536 ; N uni2E18 ; G 3154 -U 11807 ; WX 838 ; N uni2E1F ; G 3155 -U 11810 ; WX 390 ; N uni2E22 ; G 3156 -U 11811 ; WX 390 ; N uni2E23 ; G 3157 -U 11812 ; WX 390 ; N uni2E24 ; G 3158 -U 11813 ; WX 390 ; N uni2E25 ; G 3159 -U 11822 ; WX 536 ; N uni2E2E ; G 3160 -U 42564 ; WX 685 ; N uniA644 ; G 3161 -U 42565 ; WX 513 ; N uniA645 ; G 3162 -U 42566 ; WX 395 ; N uniA646 ; G 3163 -U 42567 ; WX 392 ; N uniA647 ; G 3164 -U 42576 ; WX 1104 ; N uniA650 ; G 3165 -U 42577 ; WX 939 ; N uniA651 ; G 3166 -U 42580 ; WX 1193 ; N uniA654 ; G 3167 -U 42581 ; WX 871 ; N uniA655 ; G 3168 -U 42582 ; WX 1140 ; N uniA656 ; G 3169 -U 42583 ; WX 875 ; N uniA657 ; G 3170 -U 42648 ; WX 1416 ; N uniA698 ; G 3171 -U 42649 ; WX 999 ; N uniA699 ; G 3172 -U 42760 ; WX 493 ; N uniA708 ; G 3173 -U 42761 ; WX 493 ; N uniA709 ; G 3174 -U 42762 ; WX 493 ; N uniA70A ; G 3175 -U 42763 ; WX 493 ; N uniA70B ; G 3176 -U 42764 ; WX 493 ; N uniA70C ; G 3177 -U 42765 ; WX 493 ; N uniA70D ; G 3178 -U 42766 ; WX 493 ; N uniA70E ; G 3179 -U 42767 ; WX 493 ; N uniA70F ; G 3180 -U 42768 ; WX 493 ; N uniA710 ; G 3181 -U 42769 ; WX 493 ; N uniA711 ; G 3182 -U 42770 ; WX 493 ; N uniA712 ; G 3183 -U 42771 ; WX 493 ; N uniA713 ; G 3184 -U 42772 ; WX 493 ; N uniA714 ; G 3185 -U 42773 ; WX 493 ; N uniA715 ; G 3186 -U 42774 ; WX 493 ; N uniA716 ; G 3187 -U 42779 ; WX 369 ; N uniA71B ; G 3188 -U 42780 ; WX 369 ; N uniA71C ; G 3189 -U 42781 ; WX 253 ; N uniA71D ; G 3190 -U 42782 ; WX 253 ; N uniA71E ; G 3191 -U 42783 ; WX 253 ; N uniA71F ; G 3192 -U 42790 ; WX 872 ; N uniA726 ; G 3193 -U 42791 ; WX 634 ; N uniA727 ; G 3194 -U 42792 ; WX 843 ; N uniA728 ; G 3195 -U 42793 ; WX 754 ; N uniA729 ; G 3196 -U 42794 ; WX 612 ; N uniA72A ; G 3197 -U 42795 ; WX 560 ; N uniA72B ; G 3198 -U 42796 ; WX 548 ; N uniA72C ; G 3199 -U 42797 ; WX 531 ; N uniA72D ; G 3200 -U 42798 ; WX 629 ; N uniA72E ; G 3201 -U 42799 ; WX 610 ; N uniA72F ; G 3202 -U 42800 ; WX 514 ; N uniA730 ; G 3203 -U 42801 ; WX 513 ; N uniA731 ; G 3204 -U 42802 ; WX 1195 ; N uniA732 ; G 3205 -U 42803 ; WX 943 ; N uniA733 ; G 3206 -U 42804 ; WX 1226 ; N uniA734 ; G 3207 -U 42805 ; WX 950 ; N uniA735 ; G 3208 -U 42806 ; WX 1149 ; N uniA736 ; G 3209 -U 42807 ; WX 933 ; N uniA737 ; G 3210 -U 42808 ; WX 968 ; N uniA738 ; G 3211 -U 42809 ; WX 784 ; N uniA739 ; G 3212 -U 42810 ; WX 968 ; N uniA73A ; G 3213 -U 42811 ; WX 784 ; N uniA73B ; G 3214 -U 42812 ; WX 962 ; N uniA73C ; G 3215 -U 42813 ; WX 759 ; N uniA73D ; G 3216 -U 42814 ; WX 765 ; N uniA73E ; G 3217 -U 42815 ; WX 560 ; N uniA73F ; G 3218 -U 42816 ; WX 747 ; N uniA740 ; G 3219 -U 42817 ; WX 606 ; N uniA741 ; G 3220 -U 42822 ; WX 787 ; N uniA746 ; G 3221 -U 42823 ; WX 434 ; N uniA747 ; G 3222 -U 42826 ; WX 932 ; N uniA74A ; G 3223 -U 42827 ; WX 711 ; N uniA74B ; G 3224 -U 42830 ; WX 1416 ; N uniA74E ; G 3225 -U 42831 ; WX 999 ; N uniA74F ; G 3226 -U 42856 ; WX 707 ; N uniA768 ; G 3227 -U 42857 ; WX 610 ; N uniA769 ; G 3228 -U 42875 ; WX 612 ; N uniA77B ; G 3229 -U 42876 ; WX 478 ; N uniA77C ; G 3230 -U 42880 ; WX 664 ; N uniA780 ; G 3231 -U 42881 ; WX 320 ; N uniA781 ; G 3232 -U 42882 ; WX 843 ; N uniA782 ; G 3233 -U 42883 ; WX 644 ; N uniA783 ; G 3234 -U 42884 ; WX 612 ; N uniA784 ; G 3235 -U 42885 ; WX 478 ; N uniA785 ; G 3236 -U 42886 ; WX 765 ; N uniA786 ; G 3237 -U 42887 ; WX 560 ; N uniA787 ; G 3238 -U 42891 ; WX 402 ; N uniA78B ; G 3239 -U 42892 ; WX 275 ; N uniA78C ; G 3240 -U 42893 ; WX 773 ; N uniA78D ; G 3241 -U 42896 ; WX 875 ; N uniA790 ; G 3242 -U 42897 ; WX 698 ; N uniA791 ; G 3243 -U 42922 ; WX 872 ; N uniA7AA ; G 3244 -U 43000 ; WX 549 ; N uniA7F8 ; G 3245 -U 43001 ; WX 623 ; N uniA7F9 ; G 3246 -U 43002 ; WX 957 ; N uniA7FA ; G 3247 -U 43003 ; WX 694 ; N uniA7FB ; G 3248 -U 43004 ; WX 673 ; N uniA7FC ; G 3249 -U 43005 ; WX 1024 ; N uniA7FD ; G 3250 -U 43006 ; WX 395 ; N uniA7FE ; G 3251 -U 43007 ; WX 1201 ; N uniA7FF ; G 3252 -U 62464 ; WX 664 ; N uniF400 ; G 3253 -U 62465 ; WX 675 ; N uniF401 ; G 3254 -U 62466 ; WX 724 ; N uniF402 ; G 3255 -U 62467 ; WX 958 ; N uniF403 ; G 3256 -U 62468 ; WX 675 ; N uniF404 ; G 3257 -U 62469 ; WX 669 ; N uniF405 ; G 3258 -U 62470 ; WX 735 ; N uniF406 ; G 3259 -U 62471 ; WX 997 ; N uniF407 ; G 3260 -U 62472 ; WX 675 ; N uniF408 ; G 3261 -U 62473 ; WX 675 ; N uniF409 ; G 3262 -U 62474 ; WX 1268 ; N uniF40A ; G 3263 -U 62475 ; WX 693 ; N uniF40B ; G 3264 -U 62476 ; WX 692 ; N uniF40C ; G 3265 -U 62477 ; WX 963 ; N uniF40D ; G 3266 -U 62478 ; WX 675 ; N uniF40E ; G 3267 -U 62479 ; WX 692 ; N uniF40F ; G 3268 -U 62480 ; WX 1009 ; N uniF410 ; G 3269 -U 62481 ; WX 756 ; N uniF411 ; G 3270 -U 62482 ; WX 809 ; N uniF412 ; G 3271 -U 62483 ; WX 758 ; N uniF413 ; G 3272 -U 62484 ; WX 955 ; N uniF414 ; G 3273 -U 62485 ; WX 691 ; N uniF415 ; G 3274 -U 62486 ; WX 946 ; N uniF416 ; G 3275 -U 62487 ; WX 690 ; N uniF417 ; G 3276 -U 62488 ; WX 698 ; N uniF418 ; G 3277 -U 62489 ; WX 692 ; N uniF419 ; G 3278 -U 62490 ; WX 739 ; N uniF41A ; G 3279 -U 62491 ; WX 692 ; N uniF41B ; G 3280 -U 62492 ; WX 698 ; N uniF41C ; G 3281 -U 62493 ; WX 676 ; N uniF41D ; G 3282 -U 62494 ; WX 739 ; N uniF41E ; G 3283 -U 62495 ; WX 895 ; N uniF41F ; G 3284 -U 62496 ; WX 675 ; N uniF420 ; G 3285 -U 62497 ; WX 785 ; N uniF421 ; G 3286 -U 62498 ; WX 676 ; N uniF422 ; G 3287 -U 62499 ; WX 675 ; N uniF423 ; G 3288 -U 62500 ; WX 675 ; N uniF424 ; G 3289 -U 62501 ; WX 732 ; N uniF425 ; G 3290 -U 62502 ; WX 972 ; N uniF426 ; G 3291 -U 62504 ; WX 904 ; N uniF428 ; G 3292 -U 63172 ; WX 320 ; N uniF6C4 ; G 3293 -U 63173 ; WX 602 ; N uniF6C5 ; G 3294 -U 63174 ; WX 640 ; N uniF6C6 ; G 3295 -U 63175 ; WX 644 ; N uniF6C7 ; G 3296 -U 63176 ; WX 947 ; N uniF6C8 ; G 3297 -U 63185 ; WX 500 ; N cyrBreve ; G 3298 -U 63188 ; WX 500 ; N cyrbreve ; G 3299 -U 64256 ; WX 708 ; N uniFB00 ; G 3300 -U 64257 ; WX 667 ; N fi ; G 3301 -U 64258 ; WX 667 ; N fl ; G 3302 -U 64259 ; WX 941 ; N uniFB03 ; G 3303 -U 64260 ; WX 986 ; N uniFB04 ; G 3304 -U 64261 ; WX 744 ; N uniFB05 ; G 3305 -U 64262 ; WX 916 ; N uniFB06 ; G 3306 -U 65024 ; WX 0 ; N uniFE00 ; G 3307 -U 65025 ; WX 0 ; N uniFE01 ; G 3308 -U 65026 ; WX 0 ; N uniFE02 ; G 3309 -U 65027 ; WX 0 ; N uniFE03 ; G 3310 -U 65028 ; WX 0 ; N uniFE04 ; G 3311 -U 65029 ; WX 0 ; N uniFE05 ; G 3312 -U 65030 ; WX 0 ; N uniFE06 ; G 3313 -U 65031 ; WX 0 ; N uniFE07 ; G 3314 -U 65032 ; WX 0 ; N uniFE08 ; G 3315 -U 65033 ; WX 0 ; N uniFE09 ; G 3316 -U 65034 ; WX 0 ; N uniFE0A ; G 3317 -U 65035 ; WX 0 ; N uniFE0B ; G 3318 -U 65036 ; WX 0 ; N uniFE0C ; G 3319 -U 65037 ; WX 0 ; N uniFE0D ; G 3320 -U 65038 ; WX 0 ; N uniFE0E ; G 3321 -U 65039 ; WX 0 ; N uniFE0F ; G 3322 -U 65529 ; WX 0 ; N uniFFF9 ; G 3323 -U 65530 ; WX 0 ; N uniFFFA ; G 3324 -U 65531 ; WX 0 ; N uniFFFB ; G 3325 -U 65532 ; WX 0 ; N uniFFFC ; G 3326 -U 65533 ; WX 1025 ; N uniFFFD ; G 3327 -EndCharMetrics -StartKernData -StartKernPairs 1103 - -KPX dollar seven -112 -KPX dollar nine -102 -KPX dollar colon -83 -KPX dollar less -83 -KPX dollar I -36 -KPX dollar W -36 -KPX dollar Y -83 -KPX dollar Z -92 -KPX dollar backslash -83 -KPX dollar questiondown -83 -KPX dollar Aacute -83 -KPX dollar Hbar -112 -KPX dollar hbar -36 -KPX dollar lacute -83 - -KPX percent ampersand 38 -KPX percent asterisk 38 -KPX percent two 38 -KPX percent less -36 -KPX percent Egrave 38 -KPX percent Icircumflex 38 -KPX percent agrave 38 -KPX percent Ebreve 38 -KPX percent lacute -36 - - -KPX quotesingle nine -36 - - -KPX parenright dollar -178 -KPX parenright D -139 -KPX parenright H -112 -KPX parenright R -112 -KPX parenright cent -139 -KPX parenright sterling -139 -KPX parenright currency -139 -KPX parenright yen -139 -KPX parenright brokenbar -139 -KPX parenright section -139 -KPX parenright dieresis -139 -KPX parenright ordfeminine -112 -KPX parenright guillemotleft -112 -KPX parenright logicalnot -112 -KPX parenright sfthyphen -112 -KPX parenright acute -112 -KPX parenright mu -112 -KPX parenright paragraph -112 -KPX parenright periodcentered -112 -KPX parenright cedilla -112 -KPX parenright ordmasculine -112 -KPX parenright Yacute -112 -KPX parenright ebreve -112 - -KPX asterisk less -36 -KPX asterisk lacute -36 - - -KPX period dollar -83 -KPX period ampersand -55 -KPX period two -55 -KPX period eight -73 -KPX period colon -73 -KPX period less -55 -KPX period H -55 -KPX period R -55 -KPX period X -45 -KPX period backslash -131 -KPX period ordfeminine -55 -KPX period guillemotleft -55 -KPX period logicalnot -55 -KPX period sfthyphen -55 -KPX period acute -55 -KPX period mu -55 -KPX period paragraph -55 -KPX period periodcentered -55 -KPX period cedilla -55 -KPX period ordmasculine -36 -KPX period guillemotright -45 -KPX period onequarter -45 -KPX period onehalf -45 -KPX period threequarters -45 -KPX period questiondown -131 -KPX period Aacute -131 -KPX period Egrave -55 -KPX period Icircumflex -55 -KPX period Yacute -55 -KPX period Ebreve -55 -KPX period ebreve -55 -KPX period Idot -73 -KPX period dotlessi -45 -KPX period lacute -55 - -KPX slash seven -167 -KPX slash eight -112 -KPX slash nine -243 -KPX slash colon -178 -KPX slash less -131 -KPX slash backslash -36 -KPX slash questiondown -36 -KPX slash Aacute -36 -KPX slash Hbar -167 -KPX slash Idot -112 -KPX slash lacute -131 - - -KPX two nine -36 -KPX two semicolon -36 - -KPX three dollar -188 -KPX three eight -36 -KPX three D -92 -KPX three H -92 -KPX three R -83 -KPX three V -55 -KPX three cent -92 -KPX three sterling -92 -KPX three currency -92 -KPX three yen -92 -KPX three brokenbar -92 -KPX three section -92 -KPX three dieresis -92 -KPX three ordfeminine -92 -KPX three guillemotleft -92 -KPX three logicalnot -92 -KPX three sfthyphen -92 -KPX three acute -83 -KPX three mu -83 -KPX three paragraph -83 -KPX three periodcentered -83 -KPX three cedilla -83 -KPX three ordmasculine -83 -KPX three Yacute -92 -KPX three ebreve -83 -KPX three gdotaccent -55 -KPX three gcommaaccent -55 -KPX three Idot -36 - - -KPX five seven -36 -KPX five nine -73 -KPX five colon -45 -KPX five less -63 -KPX five D 47 -KPX five backslash -36 -KPX five cent 47 -KPX five sterling 47 -KPX five currency 47 -KPX five yen 47 -KPX five brokenbar 47 -KPX five section 47 -KPX five dieresis 47 -KPX five ordmasculine 38 -KPX five questiondown -36 -KPX five Aacute -36 -KPX five Hbar -36 -KPX five lacute -63 - -KPX six six -36 -KPX six Gdotaccent -36 -KPX six Gcommaaccent -36 - -KPX seven dollar -112 -KPX seven seven 38 -KPX seven D -159 -KPX seven F -159 -KPX seven H -159 -KPX seven R -159 -KPX seven V -149 -KPX seven Z -73 -KPX seven cent -159 -KPX seven sterling -159 -KPX seven currency -159 -KPX seven yen -159 -KPX seven brokenbar -159 -KPX seven section -159 -KPX seven dieresis -159 -KPX seven copyright -159 -KPX seven ordfeminine -159 -KPX seven guillemotleft -159 -KPX seven logicalnot -159 -KPX seven sfthyphen -159 -KPX seven acute -159 -KPX seven mu -159 -KPX seven paragraph -159 -KPX seven periodcentered -159 -KPX seven cedilla -159 -KPX seven ordmasculine -159 -KPX seven Eacute -159 -KPX seven Idieresis -159 -KPX seven Yacute -159 -KPX seven ebreve -159 -KPX seven gdotaccent -149 -KPX seven gcommaaccent -149 -KPX seven Hbar 38 - -KPX eight dollar -63 -KPX eight hyphen -55 - -KPX nine dollar -139 -KPX nine two -36 -KPX nine D -188 -KPX nine H -188 -KPX nine L -36 -KPX nine R -188 -KPX nine X -131 -KPX nine backslash -83 -KPX nine cent -188 -KPX nine sterling -188 -KPX nine currency -188 -KPX nine yen -188 -KPX nine brokenbar -188 -KPX nine section -188 -KPX nine dieresis -188 -KPX nine ordfeminine -188 -KPX nine guillemotleft -188 -KPX nine logicalnot -188 -KPX nine sfthyphen -188 -KPX nine acute -188 -KPX nine mu -188 -KPX nine paragraph -188 -KPX nine periodcentered -188 -KPX nine cedilla -188 -KPX nine ordmasculine -188 -KPX nine guillemotright -131 -KPX nine onequarter -131 -KPX nine onehalf -131 -KPX nine threequarters -131 -KPX nine questiondown -83 -KPX nine Aacute -83 -KPX nine Yacute -188 -KPX nine Ebreve -36 -KPX nine ebreve -188 -KPX nine dotlessi -131 - -KPX colon dollar -102 -KPX colon D -178 -KPX colon H -167 -KPX colon L -36 -KPX colon R -139 -KPX colon U -92 -KPX colon X -83 -KPX colon backslash -45 -KPX colon cent -178 -KPX colon sterling -178 -KPX colon currency -178 -KPX colon yen -178 -KPX colon brokenbar -178 -KPX colon section -178 -KPX colon dieresis -139 -KPX colon ordfeminine -167 -KPX colon guillemotleft -167 -KPX colon logicalnot -167 -KPX colon sfthyphen -167 -KPX colon acute -139 -KPX colon mu -139 -KPX colon paragraph -139 -KPX colon periodcentered -139 -KPX colon cedilla -139 -KPX colon ordmasculine -139 -KPX colon guillemotright -83 -KPX colon onequarter -83 -KPX colon onehalf -83 -KPX colon threequarters -83 -KPX colon questiondown -45 -KPX colon Aacute -45 -KPX colon Yacute -167 -KPX colon ebreve -139 -KPX colon edotaccent -92 -KPX colon ecaron -92 -KPX colon dotlessi -83 - -KPX semicolon dollar -73 -KPX semicolon ampersand -36 -KPX semicolon two -36 -KPX semicolon Egrave -36 -KPX semicolon Icircumflex -36 -KPX semicolon Ebreve -36 - -KPX less dollar -159 -KPX less ampersand -36 -KPX less D -159 -KPX less H -178 -KPX less L -36 -KPX less R -178 -KPX less X -178 -KPX less cent -159 -KPX less sterling -159 -KPX less currency -159 -KPX less yen -159 -KPX less brokenbar -159 -KPX less section -159 -KPX less dieresis -196 -KPX less ordfeminine -178 -KPX less guillemotleft -178 -KPX less logicalnot -178 -KPX less sfthyphen -178 -KPX less acute -178 -KPX less mu -178 -KPX less paragraph -178 -KPX less periodcentered -178 -KPX less cedilla -178 -KPX less ordmasculine -178 -KPX less guillemotright -178 -KPX less onequarter -178 -KPX less onehalf -178 -KPX less threequarters -178 -KPX less Egrave -36 -KPX less Icircumflex -36 -KPX less Yacute -178 -KPX less ebreve -215 -KPX less dotlessi -178 - - - - - - - - - - - - - - - - - - - - - - - -KPX Eth nine -36 - - -KPX agrave less -36 -KPX agrave lacute -36 - -KPX ucircumflex seven -167 -KPX ucircumflex eight -112 -KPX ucircumflex nine -243 -KPX ucircumflex colon -178 -KPX ucircumflex less -131 -KPX ucircumflex backslash -36 -KPX ucircumflex questiondown -36 -KPX ucircumflex Aacute -36 -KPX ucircumflex Hbar -167 -KPX ucircumflex Idot -112 -KPX ucircumflex lacute -131 - -KPX ydieresis seven -167 -KPX ydieresis eight -112 -KPX ydieresis nine -243 -KPX ydieresis colon -178 -KPX ydieresis less -131 -KPX ydieresis backslash -36 -KPX ydieresis questiondown -36 -KPX ydieresis Aacute -36 -KPX ydieresis Hbar -167 -KPX ydieresis Idot -112 -KPX ydieresis lacute -131 - -KPX Abreve O -227 - -KPX abreve seven -167 -KPX abreve eight -36 -KPX abreve nine -243 -KPX abreve colon -178 -KPX abreve less -206 -KPX abreve backslash -36 -KPX abreve questiondown -36 -KPX abreve Aacute -36 -KPX abreve Hbar -167 -KPX abreve Idot -36 -KPX abreve lacute -206 - - - -KPX Edotaccent seven -36 -KPX Edotaccent nine -73 -KPX Edotaccent colon -45 -KPX Edotaccent less -63 -KPX Edotaccent D 47 -KPX Edotaccent backslash -36 -KPX Edotaccent cent 47 -KPX Edotaccent sterling 47 -KPX Edotaccent currency 47 -KPX Edotaccent yen 47 -KPX Edotaccent brokenbar 47 -KPX Edotaccent section 47 -KPX Edotaccent dieresis 47 -KPX Edotaccent ordmasculine 38 -KPX Edotaccent questiondown -36 -KPX Edotaccent Aacute -36 -KPX Edotaccent Hbar -36 -KPX Edotaccent lacute -63 - - -KPX Ecaron seven -36 -KPX Ecaron nine -73 -KPX Ecaron colon -45 -KPX Ecaron less -63 -KPX Ecaron D 47 -KPX Ecaron backslash -36 -KPX Ecaron cent 47 -KPX Ecaron sterling 47 -KPX Ecaron currency 47 -KPX Ecaron yen 47 -KPX Ecaron brokenbar 47 -KPX Ecaron section 47 -KPX Ecaron dieresis 47 -KPX Ecaron ordmasculine 38 -KPX Ecaron questiondown -36 -KPX Ecaron Aacute -36 -KPX Ecaron Hbar -36 -KPX Ecaron lacute -63 - - -KPX Gdotaccent six -36 -KPX Gdotaccent Gdotaccent -36 -KPX Gdotaccent Gcommaaccent -36 - -KPX Gcommaaccent six -36 -KPX Gcommaaccent Gdotaccent -36 -KPX Gcommaaccent Gcommaaccent -36 - -KPX Hbar dollar -112 -KPX Hbar seven 38 -KPX Hbar D -159 -KPX Hbar F -159 -KPX Hbar H -159 -KPX Hbar R -159 -KPX Hbar V -149 -KPX Hbar Z -73 -KPX Hbar cent -159 -KPX Hbar sterling -159 -KPX Hbar currency -159 -KPX Hbar yen -159 -KPX Hbar brokenbar -159 -KPX Hbar section -159 -KPX Hbar dieresis -159 -KPX Hbar copyright -159 -KPX Hbar ordfeminine -159 -KPX Hbar guillemotleft -159 -KPX Hbar logicalnot -159 -KPX Hbar sfthyphen -159 -KPX Hbar acute -159 -KPX Hbar mu -159 -KPX Hbar paragraph -159 -KPX Hbar periodcentered -159 -KPX Hbar cedilla -159 -KPX Hbar ordmasculine -159 -KPX Hbar Eacute -159 -KPX Hbar Idieresis -159 -KPX Hbar Yacute -159 -KPX Hbar ebreve -159 -KPX Hbar gdotaccent -149 -KPX Hbar gcommaaccent -149 -KPX Hbar Hbar 38 - -KPX Idot dollar -63 -KPX Idot hyphen -55 - -KPX kcommaaccent D 110 -KPX kcommaaccent F 85 -KPX kcommaaccent G 97 -KPX kcommaaccent H 86 -KPX kcommaaccent I 220 -KPX kcommaaccent J 97 -KPX kcommaaccent L 220 -KPX kcommaaccent M 218 -KPX kcommaaccent P 125 -KPX kcommaaccent Q 125 -KPX kcommaaccent R 85 -KPX kcommaaccent S 140 -KPX kcommaaccent T 97 -KPX kcommaaccent U 125 -KPX kcommaaccent V 155 -KPX kcommaaccent W 235 -KPX kcommaaccent X 144 -KPX kcommaaccent Y 205 -KPX kcommaaccent Z 166 -KPX kcommaaccent bracketleft 174 -KPX kcommaaccent backslash 205 -KPX kcommaaccent bracketright 179 -KPX kcommaaccent kcommaaccent 261 - -KPX lacute dollar -159 -KPX lacute ampersand -36 -KPX lacute D -159 -KPX lacute H -178 -KPX lacute L -36 -KPX lacute R -178 -KPX lacute X -178 -KPX lacute cent -159 -KPX lacute sterling -159 -KPX lacute currency -159 -KPX lacute yen -159 -KPX lacute brokenbar -159 -KPX lacute section -159 -KPX lacute dieresis -196 -KPX lacute ordfeminine -178 -KPX lacute guillemotleft -178 -KPX lacute logicalnot -178 -KPX lacute sfthyphen -178 -KPX lacute acute -178 -KPX lacute mu -178 -KPX lacute paragraph -178 -KPX lacute periodcentered -178 -KPX lacute cedilla -178 -KPX lacute ordmasculine -178 -KPX lacute guillemotright -178 -KPX lacute onequarter -178 -KPX lacute onehalf -178 -KPX lacute threequarters -178 -KPX lacute Egrave -36 -KPX lacute Icircumflex -36 -KPX lacute Yacute -178 -KPX lacute ebreve -215 -KPX lacute dotlessi -178 - - -KPX uni027D dollar -264 -KPX uni027D hyphen 47 -EndKernPairs -EndKernData -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSerif.ttf b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSerif.ttf deleted file mode 100644 index 0b803d20..00000000 Binary files a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSerif.ttf and /dev/null differ diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSerif.ufm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSerif.ufm deleted file mode 100644 index 358b026a..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/DejaVuSerif.ufm +++ /dev/null @@ -1,4012 +0,0 @@ -StartFontMetrics 4.1 -Notice Converted by PHP-font-lib -Comment https://github.com/PhenX/php-font-lib -EncodingScheme FontSpecific -FontName DejaVu Serif -FontSubfamily Book -UniqueID DejaVu Serif -FullName DejaVu Serif -Version Version 2.37 -PostScriptName DejaVuSerif -Manufacturer DejaVu fonts team -FontVendorURL http://dejavu.sourceforge.net -LicenseURL http://dejavu.sourceforge.net/wiki/index.php/License -PreferredFamily DejaVu Serif -PreferredSubfamily Book -Weight Medium -ItalicAngle 0 -IsFixedPitch false -UnderlineThickness 44 -UnderlinePosition -63 -FontHeightOffset 0 -Ascender 928 -Descender -236 -FontBBox -770 -347 2105 1109 -StartCharMetrics 3528 -U 32 ; WX 318 ; N space ; G 3 -U 33 ; WX 402 ; N exclam ; G 4 -U 34 ; WX 460 ; N quotedbl ; G 5 -U 35 ; WX 838 ; N numbersign ; G 6 -U 36 ; WX 636 ; N dollar ; G 7 -U 37 ; WX 950 ; N percent ; G 8 -U 38 ; WX 890 ; N ampersand ; G 9 -U 39 ; WX 275 ; N quotesingle ; G 10 -U 40 ; WX 390 ; N parenleft ; G 11 -U 41 ; WX 390 ; N parenright ; G 12 -U 42 ; WX 500 ; N asterisk ; G 13 -U 43 ; WX 838 ; N plus ; G 14 -U 44 ; WX 318 ; N comma ; G 15 -U 45 ; WX 338 ; N hyphen ; G 16 -U 46 ; WX 318 ; N period ; G 17 -U 47 ; WX 337 ; N slash ; G 18 -U 48 ; WX 636 ; N zero ; G 19 -U 49 ; WX 636 ; N one ; G 20 -U 50 ; WX 636 ; N two ; G 21 -U 51 ; WX 636 ; N three ; G 22 -U 52 ; WX 636 ; N four ; G 23 -U 53 ; WX 636 ; N five ; G 24 -U 54 ; WX 636 ; N six ; G 25 -U 55 ; WX 636 ; N seven ; G 26 -U 56 ; WX 636 ; N eight ; G 27 -U 57 ; WX 636 ; N nine ; G 28 -U 58 ; WX 337 ; N colon ; G 29 -U 59 ; WX 337 ; N semicolon ; G 30 -U 60 ; WX 838 ; N less ; G 31 -U 61 ; WX 838 ; N equal ; G 32 -U 62 ; WX 838 ; N greater ; G 33 -U 63 ; WX 536 ; N question ; G 34 -U 64 ; WX 1000 ; N at ; G 35 -U 65 ; WX 722 ; N A ; G 36 -U 66 ; WX 735 ; N B ; G 37 -U 67 ; WX 765 ; N C ; G 38 -U 68 ; WX 802 ; N D ; G 39 -U 69 ; WX 730 ; N E ; G 40 -U 70 ; WX 694 ; N F ; G 41 -U 71 ; WX 799 ; N G ; G 42 -U 72 ; WX 872 ; N H ; G 43 -U 73 ; WX 395 ; N I ; G 44 -U 74 ; WX 401 ; N J ; G 45 -U 75 ; WX 747 ; N K ; G 46 -U 76 ; WX 664 ; N L ; G 47 -U 77 ; WX 1024 ; N M ; G 48 -U 78 ; WX 875 ; N N ; G 49 -U 79 ; WX 820 ; N O ; G 50 -U 80 ; WX 673 ; N P ; G 51 -U 81 ; WX 820 ; N Q ; G 52 -U 82 ; WX 753 ; N R ; G 53 -U 83 ; WX 685 ; N S ; G 54 -U 84 ; WX 667 ; N T ; G 55 -U 85 ; WX 843 ; N U ; G 56 -U 86 ; WX 722 ; N V ; G 57 -U 87 ; WX 1028 ; N W ; G 58 -U 88 ; WX 712 ; N X ; G 59 -U 89 ; WX 660 ; N Y ; G 60 -U 90 ; WX 695 ; N Z ; G 61 -U 91 ; WX 390 ; N bracketleft ; G 62 -U 92 ; WX 337 ; N backslash ; G 63 -U 93 ; WX 390 ; N bracketright ; G 64 -U 94 ; WX 838 ; N asciicircum ; G 65 -U 95 ; WX 500 ; N underscore ; G 66 -U 96 ; WX 500 ; N grave ; G 67 -U 97 ; WX 596 ; N a ; G 68 -U 98 ; WX 640 ; N b ; G 69 -U 99 ; WX 560 ; N c ; G 70 -U 100 ; WX 640 ; N d ; G 71 -U 101 ; WX 592 ; N e ; G 72 -U 102 ; WX 370 ; N f ; G 73 -U 103 ; WX 640 ; N g ; G 74 -U 104 ; WX 644 ; N h ; G 75 -U 105 ; WX 320 ; N i ; G 76 -U 106 ; WX 310 ; N j ; G 77 -U 107 ; WX 606 ; N k ; G 78 -U 108 ; WX 320 ; N l ; G 79 -U 109 ; WX 948 ; N m ; G 80 -U 110 ; WX 644 ; N n ; G 81 -U 111 ; WX 602 ; N o ; G 82 -U 112 ; WX 640 ; N p ; G 83 -U 113 ; WX 640 ; N q ; G 84 -U 114 ; WX 478 ; N r ; G 85 -U 115 ; WX 513 ; N s ; G 86 -U 116 ; WX 402 ; N t ; G 87 -U 117 ; WX 644 ; N u ; G 88 -U 118 ; WX 565 ; N v ; G 89 -U 119 ; WX 856 ; N w ; G 90 -U 120 ; WX 564 ; N x ; G 91 -U 121 ; WX 565 ; N y ; G 92 -U 122 ; WX 527 ; N z ; G 93 -U 123 ; WX 636 ; N braceleft ; G 94 -U 124 ; WX 337 ; N bar ; G 95 -U 125 ; WX 636 ; N braceright ; G 96 -U 126 ; WX 838 ; N asciitilde ; G 97 -U 160 ; WX 318 ; N nbspace ; G 98 -U 161 ; WX 402 ; N exclamdown ; G 99 -U 162 ; WX 636 ; N cent ; G 100 -U 163 ; WX 636 ; N sterling ; G 101 -U 164 ; WX 636 ; N currency ; G 102 -U 165 ; WX 636 ; N yen ; G 103 -U 166 ; WX 337 ; N brokenbar ; G 104 -U 167 ; WX 500 ; N section ; G 105 -U 168 ; WX 500 ; N dieresis ; G 106 -U 169 ; WX 1000 ; N copyright ; G 107 -U 170 ; WX 475 ; N ordfeminine ; G 108 -U 171 ; WX 612 ; N guillemotleft ; G 109 -U 172 ; WX 838 ; N logicalnot ; G 110 -U 173 ; WX 338 ; N sfthyphen ; G 111 -U 174 ; WX 1000 ; N registered ; G 112 -U 175 ; WX 500 ; N macron ; G 113 -U 176 ; WX 500 ; N degree ; G 114 -U 177 ; WX 838 ; N plusminus ; G 115 -U 178 ; WX 401 ; N twosuperior ; G 116 -U 179 ; WX 401 ; N threesuperior ; G 117 -U 180 ; WX 500 ; N acute ; G 118 -U 181 ; WX 650 ; N mu ; G 119 -U 182 ; WX 636 ; N paragraph ; G 120 -U 183 ; WX 318 ; N periodcentered ; G 121 -U 184 ; WX 500 ; N cedilla ; G 122 -U 185 ; WX 401 ; N onesuperior ; G 123 -U 186 ; WX 470 ; N ordmasculine ; G 124 -U 187 ; WX 612 ; N guillemotright ; G 125 -U 188 ; WX 969 ; N onequarter ; G 126 -U 189 ; WX 969 ; N onehalf ; G 127 -U 190 ; WX 969 ; N threequarters ; G 128 -U 191 ; WX 536 ; N questiondown ; G 129 -U 192 ; WX 722 ; N Agrave ; G 130 -U 193 ; WX 722 ; N Aacute ; G 131 -U 194 ; WX 722 ; N Acircumflex ; G 132 -U 195 ; WX 722 ; N Atilde ; G 133 -U 196 ; WX 722 ; N Adieresis ; G 134 -U 197 ; WX 722 ; N Aring ; G 135 -U 198 ; WX 1001 ; N AE ; G 136 -U 199 ; WX 765 ; N Ccedilla ; G 137 -U 200 ; WX 730 ; N Egrave ; G 138 -U 201 ; WX 730 ; N Eacute ; G 139 -U 202 ; WX 730 ; N Ecircumflex ; G 140 -U 203 ; WX 730 ; N Edieresis ; G 141 -U 204 ; WX 395 ; N Igrave ; G 142 -U 205 ; WX 395 ; N Iacute ; G 143 -U 206 ; WX 395 ; N Icircumflex ; G 144 -U 207 ; WX 395 ; N Idieresis ; G 145 -U 208 ; WX 807 ; N Eth ; G 146 -U 209 ; WX 875 ; N Ntilde ; G 147 -U 210 ; WX 820 ; N Ograve ; G 148 -U 211 ; WX 820 ; N Oacute ; G 149 -U 212 ; WX 820 ; N Ocircumflex ; G 150 -U 213 ; WX 820 ; N Otilde ; G 151 -U 214 ; WX 820 ; N Odieresis ; G 152 -U 215 ; WX 838 ; N multiply ; G 153 -U 216 ; WX 820 ; N Oslash ; G 154 -U 217 ; WX 843 ; N Ugrave ; G 155 -U 218 ; WX 843 ; N Uacute ; G 156 -U 219 ; WX 843 ; N Ucircumflex ; G 157 -U 220 ; WX 843 ; N Udieresis ; G 158 -U 221 ; WX 660 ; N Yacute ; G 159 -U 222 ; WX 676 ; N Thorn ; G 160 -U 223 ; WX 668 ; N germandbls ; G 161 -U 224 ; WX 596 ; N agrave ; G 162 -U 225 ; WX 596 ; N aacute ; G 163 -U 226 ; WX 596 ; N acircumflex ; G 164 -U 227 ; WX 596 ; N atilde ; G 165 -U 228 ; WX 596 ; N adieresis ; G 166 -U 229 ; WX 596 ; N aring ; G 167 -U 230 ; WX 940 ; N ae ; G 168 -U 231 ; WX 560 ; N ccedilla ; G 169 -U 232 ; WX 592 ; N egrave ; G 170 -U 233 ; WX 592 ; N eacute ; G 171 -U 234 ; WX 592 ; N ecircumflex ; G 172 -U 235 ; WX 592 ; N edieresis ; G 173 -U 236 ; WX 320 ; N igrave ; G 174 -U 237 ; WX 320 ; N iacute ; G 175 -U 238 ; WX 320 ; N icircumflex ; G 176 -U 239 ; WX 320 ; N idieresis ; G 177 -U 240 ; WX 602 ; N eth ; G 178 -U 241 ; WX 644 ; N ntilde ; G 179 -U 242 ; WX 602 ; N ograve ; G 180 -U 243 ; WX 602 ; N oacute ; G 181 -U 244 ; WX 602 ; N ocircumflex ; G 182 -U 245 ; WX 602 ; N otilde ; G 183 -U 246 ; WX 602 ; N odieresis ; G 184 -U 247 ; WX 838 ; N divide ; G 185 -U 248 ; WX 602 ; N oslash ; G 186 -U 249 ; WX 644 ; N ugrave ; G 187 -U 250 ; WX 644 ; N uacute ; G 188 -U 251 ; WX 644 ; N ucircumflex ; G 189 -U 252 ; WX 644 ; N udieresis ; G 190 -U 253 ; WX 565 ; N yacute ; G 191 -U 254 ; WX 640 ; N thorn ; G 192 -U 255 ; WX 565 ; N ydieresis ; G 193 -U 256 ; WX 722 ; N Amacron ; G 194 -U 257 ; WX 596 ; N amacron ; G 195 -U 258 ; WX 722 ; N Abreve ; G 196 -U 259 ; WX 596 ; N abreve ; G 197 -U 260 ; WX 722 ; N Aogonek ; G 198 -U 261 ; WX 596 ; N aogonek ; G 199 -U 262 ; WX 765 ; N Cacute ; G 200 -U 263 ; WX 560 ; N cacute ; G 201 -U 264 ; WX 765 ; N Ccircumflex ; G 202 -U 265 ; WX 560 ; N ccircumflex ; G 203 -U 266 ; WX 765 ; N Cdotaccent ; G 204 -U 267 ; WX 560 ; N cdotaccent ; G 205 -U 268 ; WX 765 ; N Ccaron ; G 206 -U 269 ; WX 560 ; N ccaron ; G 207 -U 270 ; WX 802 ; N Dcaron ; G 208 -U 271 ; WX 640 ; N dcaron ; G 209 -U 272 ; WX 807 ; N Dcroat ; G 210 -U 273 ; WX 640 ; N dmacron ; G 211 -U 274 ; WX 730 ; N Emacron ; G 212 -U 275 ; WX 592 ; N emacron ; G 213 -U 276 ; WX 730 ; N Ebreve ; G 214 -U 277 ; WX 592 ; N ebreve ; G 215 -U 278 ; WX 730 ; N Edotaccent ; G 216 -U 279 ; WX 592 ; N edotaccent ; G 217 -U 280 ; WX 730 ; N Eogonek ; G 218 -U 281 ; WX 592 ; N eogonek ; G 219 -U 282 ; WX 730 ; N Ecaron ; G 220 -U 283 ; WX 592 ; N ecaron ; G 221 -U 284 ; WX 799 ; N Gcircumflex ; G 222 -U 285 ; WX 640 ; N gcircumflex ; G 223 -U 286 ; WX 799 ; N Gbreve ; G 224 -U 287 ; WX 640 ; N gbreve ; G 225 -U 288 ; WX 799 ; N Gdotaccent ; G 226 -U 289 ; WX 640 ; N gdotaccent ; G 227 -U 290 ; WX 799 ; N Gcommaaccent ; G 228 -U 291 ; WX 640 ; N gcommaaccent ; G 229 -U 292 ; WX 872 ; N Hcircumflex ; G 230 -U 293 ; WX 644 ; N hcircumflex ; G 231 -U 294 ; WX 872 ; N Hbar ; G 232 -U 295 ; WX 644 ; N hbar ; G 233 -U 296 ; WX 395 ; N Itilde ; G 234 -U 297 ; WX 320 ; N itilde ; G 235 -U 298 ; WX 395 ; N Imacron ; G 236 -U 299 ; WX 320 ; N imacron ; G 237 -U 300 ; WX 395 ; N Ibreve ; G 238 -U 301 ; WX 320 ; N ibreve ; G 239 -U 302 ; WX 395 ; N Iogonek ; G 240 -U 303 ; WX 320 ; N iogonek ; G 241 -U 304 ; WX 395 ; N Idot ; G 242 -U 305 ; WX 320 ; N dotlessi ; G 243 -U 306 ; WX 801 ; N IJ ; G 244 -U 307 ; WX 533 ; N ij ; G 245 -U 308 ; WX 401 ; N Jcircumflex ; G 246 -U 309 ; WX 310 ; N jcircumflex ; G 247 -U 310 ; WX 747 ; N Kcommaaccent ; G 248 -U 311 ; WX 606 ; N kcommaaccent ; G 249 -U 312 ; WX 606 ; N kgreenlandic ; G 250 -U 313 ; WX 664 ; N Lacute ; G 251 -U 314 ; WX 320 ; N lacute ; G 252 -U 315 ; WX 664 ; N Lcommaaccent ; G 253 -U 316 ; WX 320 ; N lcommaaccent ; G 254 -U 317 ; WX 664 ; N Lcaron ; G 255 -U 318 ; WX 320 ; N lcaron ; G 256 -U 319 ; WX 664 ; N Ldot ; G 257 -U 320 ; WX 320 ; N ldot ; G 258 -U 321 ; WX 669 ; N Lslash ; G 259 -U 322 ; WX 324 ; N lslash ; G 260 -U 323 ; WX 875 ; N Nacute ; G 261 -U 324 ; WX 644 ; N nacute ; G 262 -U 325 ; WX 875 ; N Ncommaaccent ; G 263 -U 326 ; WX 644 ; N ncommaaccent ; G 264 -U 327 ; WX 875 ; N Ncaron ; G 265 -U 328 ; WX 644 ; N ncaron ; G 266 -U 329 ; WX 866 ; N napostrophe ; G 267 -U 330 ; WX 843 ; N Eng ; G 268 -U 331 ; WX 644 ; N eng ; G 269 -U 332 ; WX 820 ; N Omacron ; G 270 -U 333 ; WX 602 ; N omacron ; G 271 -U 334 ; WX 820 ; N Obreve ; G 272 -U 335 ; WX 602 ; N obreve ; G 273 -U 336 ; WX 820 ; N Ohungarumlaut ; G 274 -U 337 ; WX 602 ; N ohungarumlaut ; G 275 -U 338 ; WX 1137 ; N OE ; G 276 -U 339 ; WX 989 ; N oe ; G 277 -U 340 ; WX 753 ; N Racute ; G 278 -U 341 ; WX 478 ; N racute ; G 279 -U 342 ; WX 753 ; N Rcommaaccent ; G 280 -U 343 ; WX 478 ; N rcommaaccent ; G 281 -U 344 ; WX 753 ; N Rcaron ; G 282 -U 345 ; WX 478 ; N rcaron ; G 283 -U 346 ; WX 685 ; N Sacute ; G 284 -U 347 ; WX 513 ; N sacute ; G 285 -U 348 ; WX 685 ; N Scircumflex ; G 286 -U 349 ; WX 513 ; N scircumflex ; G 287 -U 350 ; WX 685 ; N Scedilla ; G 288 -U 351 ; WX 513 ; N scedilla ; G 289 -U 352 ; WX 685 ; N Scaron ; G 290 -U 353 ; WX 513 ; N scaron ; G 291 -U 354 ; WX 667 ; N Tcommaaccent ; G 292 -U 355 ; WX 402 ; N tcommaaccent ; G 293 -U 356 ; WX 667 ; N Tcaron ; G 294 -U 357 ; WX 402 ; N tcaron ; G 295 -U 358 ; WX 667 ; N Tbar ; G 296 -U 359 ; WX 402 ; N tbar ; G 297 -U 360 ; WX 843 ; N Utilde ; G 298 -U 361 ; WX 644 ; N utilde ; G 299 -U 362 ; WX 843 ; N Umacron ; G 300 -U 363 ; WX 644 ; N umacron ; G 301 -U 364 ; WX 843 ; N Ubreve ; G 302 -U 365 ; WX 644 ; N ubreve ; G 303 -U 366 ; WX 843 ; N Uring ; G 304 -U 367 ; WX 644 ; N uring ; G 305 -U 368 ; WX 843 ; N Uhungarumlaut ; G 306 -U 369 ; WX 644 ; N uhungarumlaut ; G 307 -U 370 ; WX 843 ; N Uogonek ; G 308 -U 371 ; WX 644 ; N uogonek ; G 309 -U 372 ; WX 1028 ; N Wcircumflex ; G 310 -U 373 ; WX 856 ; N wcircumflex ; G 311 -U 374 ; WX 660 ; N Ycircumflex ; G 312 -U 375 ; WX 565 ; N ycircumflex ; G 313 -U 376 ; WX 660 ; N Ydieresis ; G 314 -U 377 ; WX 695 ; N Zacute ; G 315 -U 378 ; WX 527 ; N zacute ; G 316 -U 379 ; WX 695 ; N Zdotaccent ; G 317 -U 380 ; WX 527 ; N zdotaccent ; G 318 -U 381 ; WX 695 ; N Zcaron ; G 319 -U 382 ; WX 527 ; N zcaron ; G 320 -U 383 ; WX 370 ; N longs ; G 321 -U 384 ; WX 640 ; N uni0180 ; G 322 -U 385 ; WX 735 ; N uni0181 ; G 323 -U 386 ; WX 735 ; N uni0182 ; G 324 -U 387 ; WX 640 ; N uni0183 ; G 325 -U 388 ; WX 735 ; N uni0184 ; G 326 -U 389 ; WX 640 ; N uni0185 ; G 327 -U 390 ; WX 765 ; N uni0186 ; G 328 -U 391 ; WX 765 ; N uni0187 ; G 329 -U 392 ; WX 560 ; N uni0188 ; G 330 -U 393 ; WX 807 ; N uni0189 ; G 331 -U 394 ; WX 802 ; N uni018A ; G 332 -U 395 ; WX 735 ; N uni018B ; G 333 -U 396 ; WX 640 ; N uni018C ; G 334 -U 397 ; WX 602 ; N uni018D ; G 335 -U 398 ; WX 730 ; N uni018E ; G 336 -U 399 ; WX 820 ; N uni018F ; G 337 -U 400 ; WX 623 ; N uni0190 ; G 338 -U 401 ; WX 694 ; N uni0191 ; G 339 -U 402 ; WX 370 ; N florin ; G 340 -U 403 ; WX 799 ; N uni0193 ; G 341 -U 404 ; WX 712 ; N uni0194 ; G 342 -U 405 ; WX 932 ; N uni0195 ; G 343 -U 406 ; WX 395 ; N uni0196 ; G 344 -U 407 ; WX 395 ; N uni0197 ; G 345 -U 408 ; WX 747 ; N uni0198 ; G 346 -U 409 ; WX 606 ; N uni0199 ; G 347 -U 410 ; WX 320 ; N uni019A ; G 348 -U 411 ; WX 634 ; N uni019B ; G 349 -U 412 ; WX 948 ; N uni019C ; G 350 -U 413 ; WX 875 ; N uni019D ; G 351 -U 414 ; WX 644 ; N uni019E ; G 352 -U 415 ; WX 820 ; N uni019F ; G 353 -U 416 ; WX 820 ; N Ohorn ; G 354 -U 417 ; WX 602 ; N ohorn ; G 355 -U 418 ; WX 1040 ; N uni01A2 ; G 356 -U 419 ; WX 807 ; N uni01A3 ; G 357 -U 420 ; WX 673 ; N uni01A4 ; G 358 -U 421 ; WX 640 ; N uni01A5 ; G 359 -U 422 ; WX 753 ; N uni01A6 ; G 360 -U 423 ; WX 685 ; N uni01A7 ; G 361 -U 424 ; WX 513 ; N uni01A8 ; G 362 -U 425 ; WX 707 ; N uni01A9 ; G 363 -U 426 ; WX 324 ; N uni01AA ; G 364 -U 427 ; WX 402 ; N uni01AB ; G 365 -U 428 ; WX 667 ; N uni01AC ; G 366 -U 429 ; WX 402 ; N uni01AD ; G 367 -U 430 ; WX 667 ; N uni01AE ; G 368 -U 431 ; WX 843 ; N Uhorn ; G 369 -U 432 ; WX 644 ; N uhorn ; G 370 -U 433 ; WX 829 ; N uni01B1 ; G 371 -U 434 ; WX 760 ; N uni01B2 ; G 372 -U 435 ; WX 738 ; N uni01B3 ; G 373 -U 436 ; WX 663 ; N uni01B4 ; G 374 -U 437 ; WX 695 ; N uni01B5 ; G 375 -U 438 ; WX 527 ; N uni01B6 ; G 376 -U 439 ; WX 564 ; N uni01B7 ; G 377 -U 440 ; WX 564 ; N uni01B8 ; G 378 -U 441 ; WX 564 ; N uni01B9 ; G 379 -U 442 ; WX 564 ; N uni01BA ; G 380 -U 443 ; WX 636 ; N uni01BB ; G 381 -U 444 ; WX 687 ; N uni01BC ; G 382 -U 445 ; WX 564 ; N uni01BD ; G 383 -U 446 ; WX 536 ; N uni01BE ; G 384 -U 447 ; WX 635 ; N uni01BF ; G 385 -U 448 ; WX 295 ; N uni01C0 ; G 386 -U 449 ; WX 492 ; N uni01C1 ; G 387 -U 450 ; WX 459 ; N uni01C2 ; G 388 -U 451 ; WX 295 ; N uni01C3 ; G 389 -U 452 ; WX 1497 ; N uni01C4 ; G 390 -U 453 ; WX 1329 ; N uni01C5 ; G 391 -U 454 ; WX 1167 ; N uni01C6 ; G 392 -U 455 ; WX 1065 ; N uni01C7 ; G 393 -U 456 ; WX 974 ; N uni01C8 ; G 394 -U 457 ; WX 630 ; N uni01C9 ; G 395 -U 458 ; WX 1276 ; N uni01CA ; G 396 -U 459 ; WX 1185 ; N uni01CB ; G 397 -U 460 ; WX 954 ; N uni01CC ; G 398 -U 461 ; WX 722 ; N uni01CD ; G 399 -U 462 ; WX 596 ; N uni01CE ; G 400 -U 463 ; WX 395 ; N uni01CF ; G 401 -U 464 ; WX 320 ; N uni01D0 ; G 402 -U 465 ; WX 820 ; N uni01D1 ; G 403 -U 466 ; WX 602 ; N uni01D2 ; G 404 -U 467 ; WX 843 ; N uni01D3 ; G 405 -U 468 ; WX 644 ; N uni01D4 ; G 406 -U 469 ; WX 843 ; N uni01D5 ; G 407 -U 470 ; WX 644 ; N uni01D6 ; G 408 -U 471 ; WX 843 ; N uni01D7 ; G 409 -U 472 ; WX 644 ; N uni01D8 ; G 410 -U 473 ; WX 843 ; N uni01D9 ; G 411 -U 474 ; WX 644 ; N uni01DA ; G 412 -U 475 ; WX 843 ; N uni01DB ; G 413 -U 476 ; WX 644 ; N uni01DC ; G 414 -U 477 ; WX 592 ; N uni01DD ; G 415 -U 478 ; WX 722 ; N uni01DE ; G 416 -U 479 ; WX 596 ; N uni01DF ; G 417 -U 480 ; WX 722 ; N uni01E0 ; G 418 -U 481 ; WX 596 ; N uni01E1 ; G 419 -U 482 ; WX 1001 ; N uni01E2 ; G 420 -U 483 ; WX 940 ; N uni01E3 ; G 421 -U 484 ; WX 848 ; N uni01E4 ; G 422 -U 485 ; WX 640 ; N uni01E5 ; G 423 -U 486 ; WX 799 ; N Gcaron ; G 424 -U 487 ; WX 640 ; N gcaron ; G 425 -U 488 ; WX 747 ; N uni01E8 ; G 426 -U 489 ; WX 606 ; N uni01E9 ; G 427 -U 490 ; WX 820 ; N uni01EA ; G 428 -U 491 ; WX 602 ; N uni01EB ; G 429 -U 492 ; WX 820 ; N uni01EC ; G 430 -U 493 ; WX 602 ; N uni01ED ; G 431 -U 494 ; WX 564 ; N uni01EE ; G 432 -U 495 ; WX 564 ; N uni01EF ; G 433 -U 496 ; WX 320 ; N uni01F0 ; G 434 -U 497 ; WX 1497 ; N uni01F1 ; G 435 -U 498 ; WX 1329 ; N uni01F2 ; G 436 -U 499 ; WX 1167 ; N uni01F3 ; G 437 -U 500 ; WX 799 ; N uni01F4 ; G 438 -U 501 ; WX 640 ; N uni01F5 ; G 439 -U 502 ; WX 1154 ; N uni01F6 ; G 440 -U 503 ; WX 707 ; N uni01F7 ; G 441 -U 504 ; WX 875 ; N uni01F8 ; G 442 -U 505 ; WX 644 ; N uni01F9 ; G 443 -U 506 ; WX 722 ; N Aringacute ; G 444 -U 507 ; WX 596 ; N aringacute ; G 445 -U 508 ; WX 1001 ; N AEacute ; G 446 -U 509 ; WX 940 ; N aeacute ; G 447 -U 510 ; WX 820 ; N Oslashacute ; G 448 -U 511 ; WX 602 ; N oslashacute ; G 449 -U 512 ; WX 722 ; N uni0200 ; G 450 -U 513 ; WX 596 ; N uni0201 ; G 451 -U 514 ; WX 722 ; N uni0202 ; G 452 -U 515 ; WX 596 ; N uni0203 ; G 453 -U 516 ; WX 730 ; N uni0204 ; G 454 -U 517 ; WX 592 ; N uni0205 ; G 455 -U 518 ; WX 730 ; N uni0206 ; G 456 -U 519 ; WX 592 ; N uni0207 ; G 457 -U 520 ; WX 395 ; N uni0208 ; G 458 -U 521 ; WX 320 ; N uni0209 ; G 459 -U 522 ; WX 395 ; N uni020A ; G 460 -U 523 ; WX 320 ; N uni020B ; G 461 -U 524 ; WX 820 ; N uni020C ; G 462 -U 525 ; WX 602 ; N uni020D ; G 463 -U 526 ; WX 820 ; N uni020E ; G 464 -U 527 ; WX 602 ; N uni020F ; G 465 -U 528 ; WX 753 ; N uni0210 ; G 466 -U 529 ; WX 478 ; N uni0211 ; G 467 -U 530 ; WX 753 ; N uni0212 ; G 468 -U 531 ; WX 478 ; N uni0213 ; G 469 -U 532 ; WX 843 ; N uni0214 ; G 470 -U 533 ; WX 644 ; N uni0215 ; G 471 -U 534 ; WX 843 ; N uni0216 ; G 472 -U 535 ; WX 644 ; N uni0217 ; G 473 -U 536 ; WX 685 ; N Scommaaccent ; G 474 -U 537 ; WX 513 ; N scommaaccent ; G 475 -U 538 ; WX 667 ; N uni021A ; G 476 -U 539 ; WX 402 ; N uni021B ; G 477 -U 540 ; WX 627 ; N uni021C ; G 478 -U 541 ; WX 521 ; N uni021D ; G 479 -U 542 ; WX 872 ; N uni021E ; G 480 -U 543 ; WX 644 ; N uni021F ; G 481 -U 544 ; WX 843 ; N uni0220 ; G 482 -U 545 ; WX 814 ; N uni0221 ; G 483 -U 546 ; WX 572 ; N uni0222 ; G 484 -U 547 ; WX 552 ; N uni0223 ; G 485 -U 548 ; WX 695 ; N uni0224 ; G 486 -U 549 ; WX 527 ; N uni0225 ; G 487 -U 550 ; WX 722 ; N uni0226 ; G 488 -U 551 ; WX 596 ; N uni0227 ; G 489 -U 552 ; WX 730 ; N uni0228 ; G 490 -U 553 ; WX 592 ; N uni0229 ; G 491 -U 554 ; WX 820 ; N uni022A ; G 492 -U 555 ; WX 602 ; N uni022B ; G 493 -U 556 ; WX 820 ; N uni022C ; G 494 -U 557 ; WX 602 ; N uni022D ; G 495 -U 558 ; WX 820 ; N uni022E ; G 496 -U 559 ; WX 602 ; N uni022F ; G 497 -U 560 ; WX 820 ; N uni0230 ; G 498 -U 561 ; WX 602 ; N uni0231 ; G 499 -U 562 ; WX 660 ; N uni0232 ; G 500 -U 563 ; WX 565 ; N uni0233 ; G 501 -U 564 ; WX 500 ; N uni0234 ; G 502 -U 565 ; WX 832 ; N uni0235 ; G 503 -U 566 ; WX 494 ; N uni0236 ; G 504 -U 567 ; WX 310 ; N dotlessj ; G 505 -U 568 ; WX 960 ; N uni0238 ; G 506 -U 569 ; WX 960 ; N uni0239 ; G 507 -U 570 ; WX 722 ; N uni023A ; G 508 -U 571 ; WX 765 ; N uni023B ; G 509 -U 572 ; WX 560 ; N uni023C ; G 510 -U 573 ; WX 664 ; N uni023D ; G 511 -U 574 ; WX 667 ; N uni023E ; G 512 -U 575 ; WX 513 ; N uni023F ; G 513 -U 576 ; WX 527 ; N uni0240 ; G 514 -U 577 ; WX 583 ; N uni0241 ; G 515 -U 578 ; WX 464 ; N uni0242 ; G 516 -U 579 ; WX 735 ; N uni0243 ; G 517 -U 580 ; WX 843 ; N uni0244 ; G 518 -U 581 ; WX 722 ; N uni0245 ; G 519 -U 582 ; WX 730 ; N uni0246 ; G 520 -U 583 ; WX 592 ; N uni0247 ; G 521 -U 584 ; WX 401 ; N uni0248 ; G 522 -U 585 ; WX 315 ; N uni0249 ; G 523 -U 586 ; WX 782 ; N uni024A ; G 524 -U 587 ; WX 640 ; N uni024B ; G 525 -U 588 ; WX 753 ; N uni024C ; G 526 -U 589 ; WX 478 ; N uni024D ; G 527 -U 590 ; WX 660 ; N uni024E ; G 528 -U 591 ; WX 565 ; N uni024F ; G 529 -U 592 ; WX 596 ; N uni0250 ; G 530 -U 593 ; WX 640 ; N uni0251 ; G 531 -U 594 ; WX 640 ; N uni0252 ; G 532 -U 595 ; WX 640 ; N uni0253 ; G 533 -U 596 ; WX 560 ; N uni0254 ; G 534 -U 597 ; WX 560 ; N uni0255 ; G 535 -U 598 ; WX 647 ; N uni0256 ; G 536 -U 599 ; WX 683 ; N uni0257 ; G 537 -U 600 ; WX 592 ; N uni0258 ; G 538 -U 601 ; WX 592 ; N uni0259 ; G 539 -U 602 ; WX 843 ; N uni025A ; G 540 -U 603 ; WX 518 ; N uni025B ; G 541 -U 604 ; WX 509 ; N uni025C ; G 542 -U 605 ; WX 773 ; N uni025D ; G 543 -U 606 ; WX 613 ; N uni025E ; G 544 -U 607 ; WX 315 ; N uni025F ; G 545 -U 608 ; WX 683 ; N uni0260 ; G 546 -U 609 ; WX 640 ; N uni0261 ; G 547 -U 610 ; WX 580 ; N uni0262 ; G 548 -U 611 ; WX 599 ; N uni0263 ; G 549 -U 612 ; WX 564 ; N uni0264 ; G 550 -U 613 ; WX 644 ; N uni0265 ; G 551 -U 614 ; WX 644 ; N uni0266 ; G 552 -U 615 ; WX 644 ; N uni0267 ; G 553 -U 616 ; WX 320 ; N uni0268 ; G 554 -U 617 ; WX 392 ; N uni0269 ; G 555 -U 618 ; WX 320 ; N uni026A ; G 556 -U 619 ; WX 380 ; N uni026B ; G 557 -U 620 ; WX 454 ; N uni026C ; G 558 -U 621 ; WX 363 ; N uni026D ; G 559 -U 622 ; WX 704 ; N uni026E ; G 560 -U 623 ; WX 948 ; N uni026F ; G 561 -U 624 ; WX 948 ; N uni0270 ; G 562 -U 625 ; WX 948 ; N uni0271 ; G 563 -U 626 ; WX 644 ; N uni0272 ; G 564 -U 627 ; WX 694 ; N uni0273 ; G 565 -U 628 ; WX 646 ; N uni0274 ; G 566 -U 629 ; WX 602 ; N uni0275 ; G 567 -U 630 ; WX 790 ; N uni0276 ; G 568 -U 631 ; WX 821 ; N uni0277 ; G 569 -U 632 ; WX 692 ; N uni0278 ; G 570 -U 633 ; WX 501 ; N uni0279 ; G 571 -U 634 ; WX 501 ; N uni027A ; G 572 -U 635 ; WX 551 ; N uni027B ; G 573 -U 636 ; WX 478 ; N uni027C ; G 574 -U 637 ; WX 478 ; N uni027D ; G 575 -U 638 ; WX 453 ; N uni027E ; G 576 -U 639 ; WX 453 ; N uni027F ; G 577 -U 640 ; WX 581 ; N uni0280 ; G 578 -U 641 ; WX 581 ; N uni0281 ; G 579 -U 642 ; WX 513 ; N uni0282 ; G 580 -U 643 ; WX 271 ; N uni0283 ; G 581 -U 644 ; WX 370 ; N uni0284 ; G 582 -U 645 ; WX 487 ; N uni0285 ; G 583 -U 646 ; WX 324 ; N uni0286 ; G 584 -U 647 ; WX 402 ; N uni0287 ; G 585 -U 648 ; WX 402 ; N uni0288 ; G 586 -U 649 ; WX 644 ; N uni0289 ; G 587 -U 650 ; WX 620 ; N uni028A ; G 588 -U 651 ; WX 608 ; N uni028B ; G 589 -U 652 ; WX 565 ; N uni028C ; G 590 -U 653 ; WX 856 ; N uni028D ; G 591 -U 654 ; WX 565 ; N uni028E ; G 592 -U 655 ; WX 655 ; N uni028F ; G 593 -U 656 ; WX 597 ; N uni0290 ; G 594 -U 657 ; WX 560 ; N uni0291 ; G 595 -U 658 ; WX 564 ; N uni0292 ; G 596 -U 659 ; WX 560 ; N uni0293 ; G 597 -U 660 ; WX 536 ; N uni0294 ; G 598 -U 661 ; WX 536 ; N uni0295 ; G 599 -U 662 ; WX 536 ; N uni0296 ; G 600 -U 663 ; WX 420 ; N uni0297 ; G 601 -U 664 ; WX 820 ; N uni0298 ; G 602 -U 665 ; WX 563 ; N uni0299 ; G 603 -U 666 ; WX 613 ; N uni029A ; G 604 -U 667 ; WX 660 ; N uni029B ; G 605 -U 668 ; WX 667 ; N uni029C ; G 606 -U 669 ; WX 366 ; N uni029D ; G 607 -U 670 ; WX 606 ; N uni029E ; G 608 -U 671 ; WX 543 ; N uni029F ; G 609 -U 672 ; WX 683 ; N uni02A0 ; G 610 -U 673 ; WX 536 ; N uni02A1 ; G 611 -U 674 ; WX 536 ; N uni02A2 ; G 612 -U 675 ; WX 996 ; N uni02A3 ; G 613 -U 676 ; WX 1033 ; N uni02A4 ; G 614 -U 677 ; WX 998 ; N uni02A5 ; G 615 -U 678 ; WX 823 ; N uni02A6 ; G 616 -U 679 ; WX 598 ; N uni02A7 ; G 617 -U 680 ; WX 825 ; N uni02A8 ; G 618 -U 681 ; WX 894 ; N uni02A9 ; G 619 -U 682 ; WX 725 ; N uni02AA ; G 620 -U 683 ; WX 676 ; N uni02AB ; G 621 -U 684 ; WX 598 ; N uni02AC ; G 622 -U 685 ; WX 443 ; N uni02AD ; G 623 -U 686 ; WX 781 ; N uni02AE ; G 624 -U 687 ; WX 767 ; N uni02AF ; G 625 -U 688 ; WX 433 ; N uni02B0 ; G 626 -U 689 ; WX 430 ; N uni02B1 ; G 627 -U 690 ; WX 264 ; N uni02B2 ; G 628 -U 691 ; WX 347 ; N uni02B3 ; G 629 -U 692 ; WX 347 ; N uni02B4 ; G 630 -U 693 ; WX 430 ; N uni02B5 ; G 631 -U 694 ; WX 392 ; N uni02B6 ; G 632 -U 695 ; WX 585 ; N uni02B7 ; G 633 -U 696 ; WX 423 ; N uni02B8 ; G 634 -U 697 ; WX 278 ; N uni02B9 ; G 635 -U 698 ; WX 460 ; N uni02BA ; G 636 -U 699 ; WX 318 ; N uni02BB ; G 637 -U 700 ; WX 318 ; N uni02BC ; G 638 -U 701 ; WX 318 ; N uni02BD ; G 639 -U 702 ; WX 307 ; N uni02BE ; G 640 -U 703 ; WX 307 ; N uni02BF ; G 641 -U 704 ; WX 280 ; N uni02C0 ; G 642 -U 705 ; WX 281 ; N uni02C1 ; G 643 -U 706 ; WX 500 ; N uni02C2 ; G 644 -U 707 ; WX 500 ; N uni02C3 ; G 645 -U 708 ; WX 500 ; N uni02C4 ; G 646 -U 709 ; WX 500 ; N uni02C5 ; G 647 -U 710 ; WX 500 ; N circumflex ; G 648 -U 711 ; WX 500 ; N caron ; G 649 -U 712 ; WX 275 ; N uni02C8 ; G 650 -U 713 ; WX 500 ; N uni02C9 ; G 651 -U 714 ; WX 500 ; N uni02CA ; G 652 -U 715 ; WX 500 ; N uni02CB ; G 653 -U 716 ; WX 275 ; N uni02CC ; G 654 -U 717 ; WX 500 ; N uni02CD ; G 655 -U 720 ; WX 337 ; N uni02D0 ; G 656 -U 721 ; WX 337 ; N uni02D1 ; G 657 -U 722 ; WX 307 ; N uni02D2 ; G 658 -U 723 ; WX 307 ; N uni02D3 ; G 659 -U 726 ; WX 329 ; N uni02D6 ; G 660 -U 727 ; WX 329 ; N uni02D7 ; G 661 -U 728 ; WX 500 ; N breve ; G 662 -U 729 ; WX 500 ; N dotaccent ; G 663 -U 730 ; WX 500 ; N ring ; G 664 -U 731 ; WX 500 ; N ogonek ; G 665 -U 732 ; WX 500 ; N tilde ; G 666 -U 733 ; WX 500 ; N hungarumlaut ; G 667 -U 734 ; WX 417 ; N uni02DE ; G 668 -U 736 ; WX 377 ; N uni02E0 ; G 669 -U 737 ; WX 243 ; N uni02E1 ; G 670 -U 738 ; WX 337 ; N uni02E2 ; G 671 -U 739 ; WX 424 ; N uni02E3 ; G 672 -U 740 ; WX 281 ; N uni02E4 ; G 673 -U 741 ; WX 493 ; N uni02E5 ; G 674 -U 742 ; WX 493 ; N uni02E6 ; G 675 -U 743 ; WX 493 ; N uni02E7 ; G 676 -U 744 ; WX 493 ; N uni02E8 ; G 677 -U 745 ; WX 493 ; N uni02E9 ; G 678 -U 748 ; WX 500 ; N uni02EC ; G 679 -U 750 ; WX 484 ; N uni02EE ; G 680 -U 751 ; WX 500 ; N uni02EF ; G 681 -U 752 ; WX 500 ; N uni02F0 ; G 682 -U 755 ; WX 500 ; N uni02F3 ; G 683 -U 759 ; WX 500 ; N uni02F7 ; G 684 -U 768 ; WX 0 ; N gravecomb ; G 685 -U 769 ; WX 0 ; N acutecomb ; G 686 -U 770 ; WX 0 ; N uni0302 ; G 687 -U 771 ; WX 0 ; N tildecomb ; G 688 -U 772 ; WX 0 ; N uni0304 ; G 689 -U 773 ; WX 0 ; N uni0305 ; G 690 -U 774 ; WX 0 ; N uni0306 ; G 691 -U 775 ; WX 0 ; N uni0307 ; G 692 -U 776 ; WX 0 ; N uni0308 ; G 693 -U 777 ; WX 0 ; N hookabovecomb ; G 694 -U 778 ; WX 0 ; N uni030A ; G 695 -U 779 ; WX 0 ; N uni030B ; G 696 -U 780 ; WX 0 ; N uni030C ; G 697 -U 781 ; WX 0 ; N uni030D ; G 698 -U 782 ; WX 0 ; N uni030E ; G 699 -U 783 ; WX 0 ; N uni030F ; G 700 -U 784 ; WX 0 ; N uni0310 ; G 701 -U 785 ; WX 0 ; N uni0311 ; G 702 -U 786 ; WX 0 ; N uni0312 ; G 703 -U 787 ; WX 0 ; N uni0313 ; G 704 -U 788 ; WX 0 ; N uni0314 ; G 705 -U 789 ; WX 0 ; N uni0315 ; G 706 -U 790 ; WX 0 ; N uni0316 ; G 707 -U 791 ; WX 0 ; N uni0317 ; G 708 -U 792 ; WX 0 ; N uni0318 ; G 709 -U 793 ; WX 0 ; N uni0319 ; G 710 -U 794 ; WX 0 ; N uni031A ; G 711 -U 795 ; WX 0 ; N uni031B ; G 712 -U 796 ; WX 0 ; N uni031C ; G 713 -U 797 ; WX 0 ; N uni031D ; G 714 -U 798 ; WX 0 ; N uni031E ; G 715 -U 799 ; WX 0 ; N uni031F ; G 716 -U 800 ; WX 0 ; N uni0320 ; G 717 -U 801 ; WX 0 ; N uni0321 ; G 718 -U 802 ; WX 0 ; N uni0322 ; G 719 -U 803 ; WX 0 ; N dotbelowcomb ; G 720 -U 804 ; WX 0 ; N uni0324 ; G 721 -U 805 ; WX 0 ; N uni0325 ; G 722 -U 806 ; WX 0 ; N uni0326 ; G 723 -U 807 ; WX 0 ; N uni0327 ; G 724 -U 808 ; WX 0 ; N uni0328 ; G 725 -U 809 ; WX 0 ; N uni0329 ; G 726 -U 810 ; WX 0 ; N uni032A ; G 727 -U 811 ; WX 0 ; N uni032B ; G 728 -U 812 ; WX 0 ; N uni032C ; G 729 -U 813 ; WX 0 ; N uni032D ; G 730 -U 814 ; WX 0 ; N uni032E ; G 731 -U 815 ; WX 0 ; N uni032F ; G 732 -U 816 ; WX 0 ; N uni0330 ; G 733 -U 817 ; WX 0 ; N uni0331 ; G 734 -U 818 ; WX 0 ; N uni0332 ; G 735 -U 819 ; WX 0 ; N uni0333 ; G 736 -U 820 ; WX 0 ; N uni0334 ; G 737 -U 821 ; WX 0 ; N uni0335 ; G 738 -U 822 ; WX 0 ; N uni0336 ; G 739 -U 823 ; WX 0 ; N uni0337 ; G 740 -U 824 ; WX 0 ; N uni0338 ; G 741 -U 825 ; WX 0 ; N uni0339 ; G 742 -U 826 ; WX 0 ; N uni033A ; G 743 -U 827 ; WX 0 ; N uni033B ; G 744 -U 828 ; WX 0 ; N uni033C ; G 745 -U 829 ; WX 0 ; N uni033D ; G 746 -U 830 ; WX 0 ; N uni033E ; G 747 -U 831 ; WX 0 ; N uni033F ; G 748 -U 835 ; WX 0 ; N uni0343 ; G 749 -U 847 ; WX 0 ; N uni034F ; G 750 -U 856 ; WX 0 ; N uni0358 ; G 751 -U 864 ; WX 0 ; N uni0360 ; G 752 -U 865 ; WX 0 ; N uni0361 ; G 753 -U 880 ; WX 740 ; N uni0370 ; G 754 -U 881 ; WX 531 ; N uni0371 ; G 755 -U 882 ; WX 667 ; N uni0372 ; G 756 -U 883 ; WX 553 ; N uni0373 ; G 757 -U 884 ; WX 278 ; N uni0374 ; G 758 -U 885 ; WX 278 ; N uni0375 ; G 759 -U 886 ; WX 875 ; N uni0376 ; G 760 -U 887 ; WX 667 ; N uni0377 ; G 761 -U 890 ; WX 500 ; N uni037A ; G 762 -U 891 ; WX 560 ; N uni037B ; G 763 -U 892 ; WX 560 ; N uni037C ; G 764 -U 893 ; WX 560 ; N uni037D ; G 765 -U 894 ; WX 337 ; N uni037E ; G 766 -U 895 ; WX 401 ; N uni037F ; G 767 -U 900 ; WX 500 ; N tonos ; G 768 -U 901 ; WX 500 ; N dieresistonos ; G 769 -U 902 ; WX 722 ; N Alphatonos ; G 770 -U 903 ; WX 318 ; N anoteleia ; G 771 -U 904 ; WX 900 ; N Epsilontonos ; G 772 -U 905 ; WX 1039 ; N Etatonos ; G 773 -U 906 ; WX 562 ; N Iotatonos ; G 774 -U 908 ; WX 835 ; N Omicrontonos ; G 775 -U 910 ; WX 897 ; N Upsilontonos ; G 776 -U 911 ; WX 853 ; N Omegatonos ; G 777 -U 912 ; WX 392 ; N iotadieresistonos ; G 778 -U 913 ; WX 722 ; N Alpha ; G 779 -U 914 ; WX 735 ; N Beta ; G 780 -U 915 ; WX 694 ; N Gamma ; G 781 -U 916 ; WX 722 ; N uni0394 ; G 782 -U 917 ; WX 730 ; N Epsilon ; G 783 -U 918 ; WX 695 ; N Zeta ; G 784 -U 919 ; WX 872 ; N Eta ; G 785 -U 920 ; WX 820 ; N Theta ; G 786 -U 921 ; WX 395 ; N Iota ; G 787 -U 922 ; WX 747 ; N Kappa ; G 788 -U 923 ; WX 722 ; N Lambda ; G 789 -U 924 ; WX 1024 ; N Mu ; G 790 -U 925 ; WX 875 ; N Nu ; G 791 -U 926 ; WX 704 ; N Xi ; G 792 -U 927 ; WX 820 ; N Omicron ; G 793 -U 928 ; WX 872 ; N Pi ; G 794 -U 929 ; WX 673 ; N Rho ; G 795 -U 931 ; WX 707 ; N Sigma ; G 796 -U 932 ; WX 667 ; N Tau ; G 797 -U 933 ; WX 660 ; N Upsilon ; G 798 -U 934 ; WX 820 ; N Phi ; G 799 -U 935 ; WX 712 ; N Chi ; G 800 -U 936 ; WX 877 ; N Psi ; G 801 -U 937 ; WX 829 ; N Omega ; G 802 -U 938 ; WX 395 ; N Iotadieresis ; G 803 -U 939 ; WX 660 ; N Upsilondieresis ; G 804 -U 940 ; WX 675 ; N alphatonos ; G 805 -U 941 ; WX 518 ; N epsilontonos ; G 806 -U 942 ; WX 599 ; N etatonos ; G 807 -U 943 ; WX 392 ; N iotatonos ; G 808 -U 944 ; WX 608 ; N upsilondieresistonos ; G 809 -U 945 ; WX 675 ; N alpha ; G 810 -U 946 ; WX 578 ; N beta ; G 811 -U 947 ; WX 598 ; N gamma ; G 812 -U 948 ; WX 602 ; N delta ; G 813 -U 949 ; WX 518 ; N epsilon ; G 814 -U 950 ; WX 542 ; N zeta ; G 815 -U 951 ; WX 599 ; N eta ; G 816 -U 952 ; WX 602 ; N theta ; G 817 -U 953 ; WX 392 ; N iota ; G 818 -U 954 ; WX 625 ; N kappa ; G 819 -U 955 ; WX 634 ; N lambda ; G 820 -U 956 ; WX 650 ; N uni03BC ; G 821 -U 957 ; WX 608 ; N nu ; G 822 -U 958 ; WX 551 ; N xi ; G 823 -U 959 ; WX 602 ; N omicron ; G 824 -U 960 ; WX 657 ; N pi ; G 825 -U 961 ; WX 588 ; N rho ; G 826 -U 962 ; WX 560 ; N sigma1 ; G 827 -U 963 ; WX 683 ; N sigma ; G 828 -U 964 ; WX 553 ; N tau ; G 829 -U 965 ; WX 608 ; N upsilon ; G 830 -U 966 ; WX 700 ; N phi ; G 831 -U 967 ; WX 606 ; N chi ; G 832 -U 968 ; WX 784 ; N psi ; G 833 -U 969 ; WX 815 ; N omega ; G 834 -U 970 ; WX 392 ; N iotadieresis ; G 835 -U 971 ; WX 608 ; N upsilondieresis ; G 836 -U 972 ; WX 602 ; N omicrontonos ; G 837 -U 973 ; WX 608 ; N upsilontonos ; G 838 -U 974 ; WX 815 ; N omegatonos ; G 839 -U 975 ; WX 747 ; N uni03CF ; G 840 -U 976 ; WX 583 ; N uni03D0 ; G 841 -U 977 ; WX 715 ; N theta1 ; G 842 -U 978 ; WX 687 ; N Upsilon1 ; G 843 -U 979 ; WX 874 ; N uni03D3 ; G 844 -U 980 ; WX 687 ; N uni03D4 ; G 845 -U 981 ; WX 682 ; N phi1 ; G 846 -U 982 ; WX 815 ; N omega1 ; G 847 -U 983 ; WX 624 ; N uni03D7 ; G 848 -U 984 ; WX 820 ; N uni03D8 ; G 849 -U 985 ; WX 602 ; N uni03D9 ; G 850 -U 986 ; WX 765 ; N uni03DA ; G 851 -U 987 ; WX 560 ; N uni03DB ; G 852 -U 988 ; WX 694 ; N uni03DC ; G 853 -U 989 ; WX 463 ; N uni03DD ; G 854 -U 990 ; WX 590 ; N uni03DE ; G 855 -U 991 ; WX 660 ; N uni03DF ; G 856 -U 992 ; WX 782 ; N uni03E0 ; G 857 -U 993 ; WX 577 ; N uni03E1 ; G 858 -U 1008 ; WX 624 ; N uni03F0 ; G 859 -U 1009 ; WX 588 ; N uni03F1 ; G 860 -U 1010 ; WX 560 ; N uni03F2 ; G 861 -U 1011 ; WX 310 ; N uni03F3 ; G 862 -U 1012 ; WX 820 ; N uni03F4 ; G 863 -U 1013 ; WX 560 ; N uni03F5 ; G 864 -U 1014 ; WX 560 ; N uni03F6 ; G 865 -U 1015 ; WX 676 ; N uni03F7 ; G 866 -U 1016 ; WX 640 ; N uni03F8 ; G 867 -U 1017 ; WX 765 ; N uni03F9 ; G 868 -U 1018 ; WX 1024 ; N uni03FA ; G 869 -U 1019 ; WX 708 ; N uni03FB ; G 870 -U 1020 ; WX 588 ; N uni03FC ; G 871 -U 1021 ; WX 765 ; N uni03FD ; G 872 -U 1022 ; WX 765 ; N uni03FE ; G 873 -U 1023 ; WX 765 ; N uni03FF ; G 874 -U 1024 ; WX 730 ; N uni0400 ; G 875 -U 1025 ; WX 730 ; N uni0401 ; G 876 -U 1026 ; WX 799 ; N uni0402 ; G 877 -U 1027 ; WX 662 ; N uni0403 ; G 878 -U 1028 ; WX 765 ; N uni0404 ; G 879 -U 1029 ; WX 685 ; N uni0405 ; G 880 -U 1030 ; WX 395 ; N uni0406 ; G 881 -U 1031 ; WX 395 ; N uni0407 ; G 882 -U 1032 ; WX 401 ; N uni0408 ; G 883 -U 1033 ; WX 1084 ; N uni0409 ; G 884 -U 1034 ; WX 1118 ; N uni040A ; G 885 -U 1035 ; WX 872 ; N uni040B ; G 886 -U 1036 ; WX 774 ; N uni040C ; G 887 -U 1037 ; WX 872 ; N uni040D ; G 888 -U 1038 ; WX 723 ; N uni040E ; G 889 -U 1039 ; WX 872 ; N uni040F ; G 890 -U 1040 ; WX 757 ; N uni0410 ; G 891 -U 1041 ; WX 735 ; N uni0411 ; G 892 -U 1042 ; WX 735 ; N uni0412 ; G 893 -U 1043 ; WX 662 ; N uni0413 ; G 894 -U 1044 ; WX 813 ; N uni0414 ; G 895 -U 1045 ; WX 730 ; N uni0415 ; G 896 -U 1046 ; WX 1124 ; N uni0416 ; G 897 -U 1047 ; WX 623 ; N uni0417 ; G 898 -U 1048 ; WX 872 ; N uni0418 ; G 899 -U 1049 ; WX 872 ; N uni0419 ; G 900 -U 1050 ; WX 774 ; N uni041A ; G 901 -U 1051 ; WX 834 ; N uni041B ; G 902 -U 1052 ; WX 1024 ; N uni041C ; G 903 -U 1053 ; WX 872 ; N uni041D ; G 904 -U 1054 ; WX 820 ; N uni041E ; G 905 -U 1055 ; WX 872 ; N uni041F ; G 906 -U 1056 ; WX 673 ; N uni0420 ; G 907 -U 1057 ; WX 765 ; N uni0421 ; G 908 -U 1058 ; WX 667 ; N uni0422 ; G 909 -U 1059 ; WX 723 ; N uni0423 ; G 910 -U 1060 ; WX 830 ; N uni0424 ; G 911 -U 1061 ; WX 712 ; N uni0425 ; G 912 -U 1062 ; WX 872 ; N uni0426 ; G 913 -U 1063 ; WX 773 ; N uni0427 ; G 914 -U 1064 ; WX 1141 ; N uni0428 ; G 915 -U 1065 ; WX 1141 ; N uni0429 ; G 916 -U 1066 ; WX 794 ; N uni042A ; G 917 -U 1067 ; WX 984 ; N uni042B ; G 918 -U 1068 ; WX 674 ; N uni042C ; G 919 -U 1069 ; WX 765 ; N uni042D ; G 920 -U 1070 ; WX 1193 ; N uni042E ; G 921 -U 1071 ; WX 808 ; N uni042F ; G 922 -U 1072 ; WX 596 ; N uni0430 ; G 923 -U 1073 ; WX 602 ; N uni0431 ; G 924 -U 1074 ; WX 563 ; N uni0432 ; G 925 -U 1075 ; WX 524 ; N uni0433 ; G 926 -U 1076 ; WX 616 ; N uni0434 ; G 927 -U 1077 ; WX 592 ; N uni0435 ; G 928 -U 1078 ; WX 920 ; N uni0436 ; G 929 -U 1079 ; WX 545 ; N uni0437 ; G 930 -U 1080 ; WX 667 ; N uni0438 ; G 931 -U 1081 ; WX 667 ; N uni0439 ; G 932 -U 1082 ; WX 625 ; N uni043A ; G 933 -U 1083 ; WX 635 ; N uni043B ; G 934 -U 1084 ; WX 778 ; N uni043C ; G 935 -U 1085 ; WX 667 ; N uni043D ; G 936 -U 1086 ; WX 602 ; N uni043E ; G 937 -U 1087 ; WX 667 ; N uni043F ; G 938 -U 1088 ; WX 640 ; N uni0440 ; G 939 -U 1089 ; WX 560 ; N uni0441 ; G 940 -U 1090 ; WX 553 ; N uni0442 ; G 941 -U 1091 ; WX 588 ; N uni0443 ; G 942 -U 1092 ; WX 783 ; N uni0444 ; G 943 -U 1093 ; WX 564 ; N uni0445 ; G 944 -U 1094 ; WX 643 ; N uni0446 ; G 945 -U 1095 ; WX 661 ; N uni0447 ; G 946 -U 1096 ; WX 930 ; N uni0448 ; G 947 -U 1097 ; WX 930 ; N uni0449 ; G 948 -U 1098 ; WX 636 ; N uni044A ; G 949 -U 1099 ; WX 796 ; N uni044B ; G 950 -U 1100 ; WX 544 ; N uni044C ; G 951 -U 1101 ; WX 560 ; N uni044D ; G 952 -U 1102 ; WX 871 ; N uni044E ; G 953 -U 1103 ; WX 631 ; N uni044F ; G 954 -U 1104 ; WX 592 ; N uni0450 ; G 955 -U 1105 ; WX 592 ; N uni0451 ; G 956 -U 1106 ; WX 624 ; N uni0452 ; G 957 -U 1107 ; WX 524 ; N uni0453 ; G 958 -U 1108 ; WX 560 ; N uni0454 ; G 959 -U 1109 ; WX 513 ; N uni0455 ; G 960 -U 1110 ; WX 320 ; N uni0456 ; G 961 -U 1111 ; WX 320 ; N uni0457 ; G 962 -U 1112 ; WX 310 ; N uni0458 ; G 963 -U 1113 ; WX 843 ; N uni0459 ; G 964 -U 1114 ; WX 860 ; N uni045A ; G 965 -U 1115 ; WX 644 ; N uni045B ; G 966 -U 1116 ; WX 625 ; N uni045C ; G 967 -U 1117 ; WX 667 ; N uni045D ; G 968 -U 1118 ; WX 588 ; N uni045E ; G 969 -U 1119 ; WX 656 ; N uni045F ; G 970 -U 1122 ; WX 762 ; N uni0462 ; G 971 -U 1123 ; WX 603 ; N uni0463 ; G 972 -U 1124 ; WX 1129 ; N uni0464 ; G 973 -U 1125 ; WX 834 ; N uni0465 ; G 974 -U 1130 ; WX 1124 ; N uni046A ; G 975 -U 1131 ; WX 920 ; N uni046B ; G 976 -U 1132 ; WX 1359 ; N uni046C ; G 977 -U 1133 ; WX 1113 ; N uni046D ; G 978 -U 1136 ; WX 944 ; N uni0470 ; G 979 -U 1137 ; WX 902 ; N uni0471 ; G 980 -U 1138 ; WX 820 ; N uni0472 ; G 981 -U 1139 ; WX 552 ; N uni0473 ; G 982 -U 1140 ; WX 859 ; N uni0474 ; G 983 -U 1141 ; WX 678 ; N uni0475 ; G 984 -U 1142 ; WX 859 ; N uni0476 ; G 985 -U 1143 ; WX 678 ; N uni0477 ; G 986 -U 1164 ; WX 707 ; N uni048C ; G 987 -U 1165 ; WX 544 ; N uni048D ; G 988 -U 1168 ; WX 672 ; N uni0490 ; G 989 -U 1169 ; WX 529 ; N uni0491 ; G 990 -U 1170 ; WX 662 ; N uni0492 ; G 991 -U 1171 ; WX 523 ; N uni0493 ; G 992 -U 1172 ; WX 728 ; N uni0494 ; G 993 -U 1173 ; WX 614 ; N uni0495 ; G 994 -U 1174 ; WX 1124 ; N uni0496 ; G 995 -U 1175 ; WX 920 ; N uni0497 ; G 996 -U 1176 ; WX 636 ; N uni0498 ; G 997 -U 1177 ; WX 537 ; N uni0499 ; G 998 -U 1178 ; WX 774 ; N uni049A ; G 999 -U 1179 ; WX 606 ; N uni049B ; G 1000 -U 1182 ; WX 774 ; N uni049E ; G 1001 -U 1183 ; WX 625 ; N uni049F ; G 1002 -U 1184 ; WX 891 ; N uni04A0 ; G 1003 -U 1185 ; WX 717 ; N uni04A1 ; G 1004 -U 1186 ; WX 872 ; N uni04A2 ; G 1005 -U 1187 ; WX 641 ; N uni04A3 ; G 1006 -U 1188 ; WX 1139 ; N uni04A4 ; G 1007 -U 1189 ; WX 852 ; N uni04A5 ; G 1008 -U 1190 ; WX 1205 ; N uni04A6 ; G 1009 -U 1191 ; WX 941 ; N uni04A7 ; G 1010 -U 1194 ; WX 765 ; N uni04AA ; G 1011 -U 1195 ; WX 560 ; N uni04AB ; G 1012 -U 1196 ; WX 667 ; N uni04AC ; G 1013 -U 1197 ; WX 553 ; N uni04AD ; G 1014 -U 1198 ; WX 660 ; N uni04AE ; G 1015 -U 1199 ; WX 565 ; N uni04AF ; G 1016 -U 1200 ; WX 660 ; N uni04B0 ; G 1017 -U 1201 ; WX 565 ; N uni04B1 ; G 1018 -U 1202 ; WX 712 ; N uni04B2 ; G 1019 -U 1203 ; WX 564 ; N uni04B3 ; G 1020 -U 1204 ; WX 952 ; N uni04B4 ; G 1021 -U 1205 ; WX 732 ; N uni04B5 ; G 1022 -U 1206 ; WX 749 ; N uni04B6 ; G 1023 -U 1207 ; WX 690 ; N uni04B7 ; G 1024 -U 1210 ; WX 749 ; N uni04BA ; G 1025 -U 1211 ; WX 644 ; N uni04BB ; G 1026 -U 1216 ; WX 395 ; N uni04C0 ; G 1027 -U 1217 ; WX 1124 ; N uni04C1 ; G 1028 -U 1218 ; WX 920 ; N uni04C2 ; G 1029 -U 1219 ; WX 747 ; N uni04C3 ; G 1030 -U 1220 ; WX 606 ; N uni04C4 ; G 1031 -U 1223 ; WX 872 ; N uni04C7 ; G 1032 -U 1224 ; WX 667 ; N uni04C8 ; G 1033 -U 1227 ; WX 749 ; N uni04CB ; G 1034 -U 1228 ; WX 667 ; N uni04CC ; G 1035 -U 1231 ; WX 320 ; N uni04CF ; G 1036 -U 1232 ; WX 757 ; N uni04D0 ; G 1037 -U 1233 ; WX 596 ; N uni04D1 ; G 1038 -U 1234 ; WX 757 ; N uni04D2 ; G 1039 -U 1235 ; WX 596 ; N uni04D3 ; G 1040 -U 1236 ; WX 1001 ; N uni04D4 ; G 1041 -U 1237 ; WX 940 ; N uni04D5 ; G 1042 -U 1238 ; WX 730 ; N uni04D6 ; G 1043 -U 1239 ; WX 592 ; N uni04D7 ; G 1044 -U 1240 ; WX 820 ; N uni04D8 ; G 1045 -U 1241 ; WX 592 ; N uni04D9 ; G 1046 -U 1242 ; WX 820 ; N uni04DA ; G 1047 -U 1243 ; WX 592 ; N uni04DB ; G 1048 -U 1244 ; WX 1124 ; N uni04DC ; G 1049 -U 1245 ; WX 920 ; N uni04DD ; G 1050 -U 1246 ; WX 623 ; N uni04DE ; G 1051 -U 1247 ; WX 545 ; N uni04DF ; G 1052 -U 1248 ; WX 564 ; N uni04E0 ; G 1053 -U 1249 ; WX 564 ; N uni04E1 ; G 1054 -U 1250 ; WX 872 ; N uni04E2 ; G 1055 -U 1251 ; WX 667 ; N uni04E3 ; G 1056 -U 1252 ; WX 872 ; N uni04E4 ; G 1057 -U 1253 ; WX 667 ; N uni04E5 ; G 1058 -U 1254 ; WX 820 ; N uni04E6 ; G 1059 -U 1255 ; WX 602 ; N uni04E7 ; G 1060 -U 1256 ; WX 820 ; N uni04E8 ; G 1061 -U 1257 ; WX 602 ; N uni04E9 ; G 1062 -U 1258 ; WX 820 ; N uni04EA ; G 1063 -U 1259 ; WX 602 ; N uni04EB ; G 1064 -U 1260 ; WX 765 ; N uni04EC ; G 1065 -U 1261 ; WX 560 ; N uni04ED ; G 1066 -U 1262 ; WX 723 ; N uni04EE ; G 1067 -U 1263 ; WX 588 ; N uni04EF ; G 1068 -U 1264 ; WX 723 ; N uni04F0 ; G 1069 -U 1265 ; WX 588 ; N uni04F1 ; G 1070 -U 1266 ; WX 723 ; N uni04F2 ; G 1071 -U 1267 ; WX 588 ; N uni04F3 ; G 1072 -U 1268 ; WX 773 ; N uni04F4 ; G 1073 -U 1269 ; WX 661 ; N uni04F5 ; G 1074 -U 1270 ; WX 662 ; N uni04F6 ; G 1075 -U 1271 ; WX 524 ; N uni04F7 ; G 1076 -U 1272 ; WX 984 ; N uni04F8 ; G 1077 -U 1273 ; WX 796 ; N uni04F9 ; G 1078 -U 1296 ; WX 623 ; N uni0510 ; G 1079 -U 1297 ; WX 545 ; N uni0511 ; G 1080 -U 1298 ; WX 834 ; N uni0512 ; G 1081 -U 1299 ; WX 635 ; N uni0513 ; G 1082 -U 1300 ; WX 1198 ; N uni0514 ; G 1083 -U 1301 ; WX 919 ; N uni0515 ; G 1084 -U 1306 ; WX 820 ; N uni051A ; G 1085 -U 1307 ; WX 640 ; N uni051B ; G 1086 -U 1308 ; WX 1028 ; N uni051C ; G 1087 -U 1309 ; WX 856 ; N uni051D ; G 1088 -U 1329 ; WX 810 ; N uni0531 ; G 1089 -U 1330 ; WX 811 ; N uni0532 ; G 1090 -U 1331 ; WX 826 ; N uni0533 ; G 1091 -U 1332 ; WX 847 ; N uni0534 ; G 1092 -U 1333 ; WX 806 ; N uni0535 ; G 1093 -U 1334 ; WX 826 ; N uni0536 ; G 1094 -U 1335 ; WX 761 ; N uni0537 ; G 1095 -U 1336 ; WX 811 ; N uni0538 ; G 1096 -U 1337 ; WX 968 ; N uni0539 ; G 1097 -U 1338 ; WX 816 ; N uni053A ; G 1098 -U 1339 ; WX 772 ; N uni053B ; G 1099 -U 1340 ; WX 682 ; N uni053C ; G 1100 -U 1341 ; WX 1097 ; N uni053D ; G 1101 -U 1342 ; WX 845 ; N uni053E ; G 1102 -U 1343 ; WX 804 ; N uni053F ; G 1103 -U 1344 ; WX 719 ; N uni0540 ; G 1104 -U 1345 ; WX 810 ; N uni0541 ; G 1105 -U 1346 ; WX 833 ; N uni0542 ; G 1106 -U 1347 ; WX 843 ; N uni0543 ; G 1107 -U 1348 ; WX 897 ; N uni0544 ; G 1108 -U 1349 ; WX 763 ; N uni0545 ; G 1109 -U 1350 ; WX 794 ; N uni0546 ; G 1110 -U 1351 ; WX 754 ; N uni0547 ; G 1111 -U 1352 ; WX 799 ; N uni0548 ; G 1112 -U 1353 ; WX 797 ; N uni0549 ; G 1113 -U 1354 ; WX 875 ; N uni054A ; G 1114 -U 1355 ; WX 830 ; N uni054B ; G 1115 -U 1356 ; WX 884 ; N uni054C ; G 1116 -U 1357 ; WX 799 ; N uni054D ; G 1117 -U 1358 ; WX 802 ; N uni054E ; G 1118 -U 1359 ; WX 731 ; N uni054F ; G 1119 -U 1360 ; WX 774 ; N uni0550 ; G 1120 -U 1361 ; WX 749 ; N uni0551 ; G 1121 -U 1362 ; WX 633 ; N uni0552 ; G 1122 -U 1363 ; WX 845 ; N uni0553 ; G 1123 -U 1364 ; WX 843 ; N uni0554 ; G 1124 -U 1365 ; WX 835 ; N uni0555 ; G 1125 -U 1366 ; WX 821 ; N uni0556 ; G 1126 -U 1369 ; WX 307 ; N uni0559 ; G 1127 -U 1370 ; WX 264 ; N uni055A ; G 1128 -U 1371 ; WX 229 ; N uni055B ; G 1129 -U 1372 ; WX 391 ; N uni055C ; G 1130 -U 1373 ; WX 364 ; N uni055D ; G 1131 -U 1374 ; WX 386 ; N uni055E ; G 1132 -U 1375 ; WX 500 ; N uni055F ; G 1133 -U 1377 ; WX 949 ; N uni0561 ; G 1134 -U 1378 ; WX 618 ; N uni0562 ; G 1135 -U 1379 ; WX 695 ; N uni0563 ; G 1136 -U 1380 ; WX 695 ; N uni0564 ; G 1137 -U 1381 ; WX 628 ; N uni0565 ; G 1138 -U 1382 ; WX 688 ; N uni0566 ; G 1139 -U 1383 ; WX 510 ; N uni0567 ; G 1140 -U 1384 ; WX 636 ; N uni0568 ; G 1141 -U 1385 ; WX 791 ; N uni0569 ; G 1142 -U 1386 ; WX 671 ; N uni056A ; G 1143 -U 1387 ; WX 635 ; N uni056B ; G 1144 -U 1388 ; WX 305 ; N uni056C ; G 1145 -U 1389 ; WX 973 ; N uni056D ; G 1146 -U 1390 ; WX 614 ; N uni056E ; G 1147 -U 1391 ; WX 628 ; N uni056F ; G 1148 -U 1392 ; WX 636 ; N uni0570 ; G 1149 -U 1393 ; WX 630 ; N uni0571 ; G 1150 -U 1394 ; WX 636 ; N uni0572 ; G 1151 -U 1395 ; WX 654 ; N uni0573 ; G 1152 -U 1396 ; WX 644 ; N uni0574 ; G 1153 -U 1397 ; WX 309 ; N uni0575 ; G 1154 -U 1398 ; WX 636 ; N uni0576 ; G 1155 -U 1399 ; WX 461 ; N uni0577 ; G 1156 -U 1400 ; WX 649 ; N uni0578 ; G 1157 -U 1401 ; WX 365 ; N uni0579 ; G 1158 -U 1402 ; WX 940 ; N uni057A ; G 1159 -U 1403 ; WX 562 ; N uni057B ; G 1160 -U 1404 ; WX 657 ; N uni057C ; G 1161 -U 1405 ; WX 644 ; N uni057D ; G 1162 -U 1406 ; WX 630 ; N uni057E ; G 1163 -U 1407 ; WX 930 ; N uni057F ; G 1164 -U 1408 ; WX 644 ; N uni0580 ; G 1165 -U 1409 ; WX 643 ; N uni0581 ; G 1166 -U 1410 ; WX 483 ; N uni0582 ; G 1167 -U 1411 ; WX 930 ; N uni0583 ; G 1168 -U 1412 ; WX 636 ; N uni0584 ; G 1169 -U 1413 ; WX 609 ; N uni0585 ; G 1170 -U 1414 ; WX 809 ; N uni0586 ; G 1171 -U 1415 ; WX 789 ; N uni0587 ; G 1172 -U 1417 ; WX 340 ; N uni0589 ; G 1173 -U 1418 ; WX 334 ; N uni058A ; G 1174 -U 3647 ; WX 636 ; N uni0E3F ; G 1175 -U 4256 ; WX 723 ; N uni10A0 ; G 1176 -U 4257 ; WX 850 ; N uni10A1 ; G 1177 -U 4258 ; WX 828 ; N uni10A2 ; G 1178 -U 4259 ; WX 859 ; N uni10A3 ; G 1179 -U 4260 ; WX 733 ; N uni10A4 ; G 1180 -U 4261 ; WX 981 ; N uni10A5 ; G 1181 -U 4262 ; WX 916 ; N uni10A6 ; G 1182 -U 4263 ; WX 1101 ; N uni10A7 ; G 1183 -U 4264 ; WX 566 ; N uni10A8 ; G 1184 -U 4265 ; WX 750 ; N uni10A9 ; G 1185 -U 4266 ; WX 962 ; N uni10AA ; G 1186 -U 4267 ; WX 941 ; N uni10AB ; G 1187 -U 4268 ; WX 743 ; N uni10AC ; G 1188 -U 4269 ; WX 1075 ; N uni10AD ; G 1189 -U 4270 ; WX 896 ; N uni10AE ; G 1190 -U 4271 ; WX 829 ; N uni10AF ; G 1191 -U 4272 ; WX 1040 ; N uni10B0 ; G 1192 -U 4273 ; WX 733 ; N uni10B1 ; G 1193 -U 4274 ; WX 669 ; N uni10B2 ; G 1194 -U 4275 ; WX 1015 ; N uni10B3 ; G 1195 -U 4276 ; WX 937 ; N uni10B4 ; G 1196 -U 4277 ; WX 1020 ; N uni10B5 ; G 1197 -U 4278 ; WX 731 ; N uni10B6 ; G 1198 -U 4279 ; WX 733 ; N uni10B7 ; G 1199 -U 4280 ; WX 732 ; N uni10B8 ; G 1200 -U 4281 ; WX 733 ; N uni10B9 ; G 1201 -U 4282 ; WX 879 ; N uni10BA ; G 1202 -U 4283 ; WX 937 ; N uni10BB ; G 1203 -U 4284 ; WX 714 ; N uni10BC ; G 1204 -U 4285 ; WX 755 ; N uni10BD ; G 1205 -U 4286 ; WX 733 ; N uni10BE ; G 1206 -U 4287 ; WX 958 ; N uni10BF ; G 1207 -U 4288 ; WX 1000 ; N uni10C0 ; G 1208 -U 4289 ; WX 702 ; N uni10C1 ; G 1209 -U 4290 ; WX 864 ; N uni10C2 ; G 1210 -U 4291 ; WX 734 ; N uni10C3 ; G 1211 -U 4292 ; WX 837 ; N uni10C4 ; G 1212 -U 4293 ; WX 951 ; N uni10C5 ; G 1213 -U 4304 ; WX 541 ; N uni10D0 ; G 1214 -U 4305 ; WX 571 ; N uni10D1 ; G 1215 -U 4306 ; WX 589 ; N uni10D2 ; G 1216 -U 4307 ; WX 833 ; N uni10D3 ; G 1217 -U 4308 ; WX 561 ; N uni10D4 ; G 1218 -U 4309 ; WX 557 ; N uni10D5 ; G 1219 -U 4310 ; WX 618 ; N uni10D6 ; G 1220 -U 4311 ; WX 861 ; N uni10D7 ; G 1221 -U 4312 ; WX 560 ; N uni10D8 ; G 1222 -U 4313 ; WX 546 ; N uni10D9 ; G 1223 -U 4314 ; WX 1066 ; N uni10DA ; G 1224 -U 4315 ; WX 586 ; N uni10DB ; G 1225 -U 4316 ; WX 586 ; N uni10DC ; G 1226 -U 4317 ; WX 825 ; N uni10DD ; G 1227 -U 4318 ; WX 570 ; N uni10DE ; G 1228 -U 4319 ; WX 581 ; N uni10DF ; G 1229 -U 4320 ; WX 824 ; N uni10E0 ; G 1230 -U 4321 ; WX 607 ; N uni10E1 ; G 1231 -U 4322 ; WX 748 ; N uni10E2 ; G 1232 -U 4323 ; WX 698 ; N uni10E3 ; G 1233 -U 4324 ; WX 815 ; N uni10E4 ; G 1234 -U 4325 ; WX 585 ; N uni10E5 ; G 1235 -U 4326 ; WX 858 ; N uni10E6 ; G 1236 -U 4327 ; WX 568 ; N uni10E7 ; G 1237 -U 4328 ; WX 594 ; N uni10E8 ; G 1238 -U 4329 ; WX 586 ; N uni10E9 ; G 1239 -U 4330 ; WX 675 ; N uni10EA ; G 1240 -U 4331 ; WX 587 ; N uni10EB ; G 1241 -U 4332 ; WX 582 ; N uni10EC ; G 1242 -U 4333 ; WX 576 ; N uni10ED ; G 1243 -U 4334 ; WX 612 ; N uni10EE ; G 1244 -U 4335 ; WX 683 ; N uni10EF ; G 1245 -U 4336 ; WX 572 ; N uni10F0 ; G 1246 -U 4337 ; WX 603 ; N uni10F1 ; G 1247 -U 4338 ; WX 571 ; N uni10F2 ; G 1248 -U 4339 ; WX 572 ; N uni10F3 ; G 1249 -U 4340 ; WX 570 ; N uni10F4 ; G 1250 -U 4341 ; WX 649 ; N uni10F5 ; G 1251 -U 4342 ; WX 886 ; N uni10F6 ; G 1252 -U 4343 ; WX 626 ; N uni10F7 ; G 1253 -U 4344 ; WX 582 ; N uni10F8 ; G 1254 -U 4345 ; WX 619 ; N uni10F9 ; G 1255 -U 4346 ; WX 571 ; N uni10FA ; G 1256 -U 4347 ; WX 437 ; N uni10FB ; G 1257 -U 4348 ; WX 354 ; N uni10FC ; G 1258 -U 7424 ; WX 565 ; N uni1D00 ; G 1259 -U 7425 ; WX 774 ; N uni1D01 ; G 1260 -U 7426 ; WX 940 ; N uni1D02 ; G 1261 -U 7427 ; WX 563 ; N uni1D03 ; G 1262 -U 7428 ; WX 560 ; N uni1D04 ; G 1263 -U 7429 ; WX 585 ; N uni1D05 ; G 1264 -U 7430 ; WX 585 ; N uni1D06 ; G 1265 -U 7431 ; WX 553 ; N uni1D07 ; G 1266 -U 7432 ; WX 509 ; N uni1D08 ; G 1267 -U 7433 ; WX 320 ; N uni1D09 ; G 1268 -U 7434 ; WX 499 ; N uni1D0A ; G 1269 -U 7435 ; WX 625 ; N uni1D0B ; G 1270 -U 7436 ; WX 543 ; N uni1D0C ; G 1271 -U 7437 ; WX 778 ; N uni1D0D ; G 1272 -U 7438 ; WX 667 ; N uni1D0E ; G 1273 -U 7439 ; WX 602 ; N uni1D0F ; G 1274 -U 7440 ; WX 560 ; N uni1D10 ; G 1275 -U 7441 ; WX 647 ; N uni1D11 ; G 1276 -U 7442 ; WX 647 ; N uni1D12 ; G 1277 -U 7443 ; WX 647 ; N uni1D13 ; G 1278 -U 7444 ; WX 989 ; N uni1D14 ; G 1279 -U 7445 ; WX 512 ; N uni1D15 ; G 1280 -U 7446 ; WX 602 ; N uni1D16 ; G 1281 -U 7447 ; WX 602 ; N uni1D17 ; G 1282 -U 7448 ; WX 553 ; N uni1D18 ; G 1283 -U 7449 ; WX 594 ; N uni1D19 ; G 1284 -U 7450 ; WX 594 ; N uni1D1A ; G 1285 -U 7451 ; WX 553 ; N uni1D1B ; G 1286 -U 7452 ; WX 585 ; N uni1D1C ; G 1287 -U 7453 ; WX 664 ; N uni1D1D ; G 1288 -U 7454 ; WX 923 ; N uni1D1E ; G 1289 -U 7455 ; WX 655 ; N uni1D1F ; G 1290 -U 7456 ; WX 565 ; N uni1D20 ; G 1291 -U 7457 ; WX 856 ; N uni1D21 ; G 1292 -U 7458 ; WX 527 ; N uni1D22 ; G 1293 -U 7459 ; WX 527 ; N uni1D23 ; G 1294 -U 7460 ; WX 531 ; N uni1D24 ; G 1295 -U 7461 ; WX 743 ; N uni1D25 ; G 1296 -U 7462 ; WX 524 ; N uni1D26 ; G 1297 -U 7463 ; WX 565 ; N uni1D27 ; G 1298 -U 7464 ; WX 657 ; N uni1D28 ; G 1299 -U 7465 ; WX 553 ; N uni1D29 ; G 1300 -U 7466 ; WX 703 ; N uni1D2A ; G 1301 -U 7467 ; WX 635 ; N uni1D2B ; G 1302 -U 7468 ; WX 455 ; N uni1D2C ; G 1303 -U 7469 ; WX 630 ; N uni1D2D ; G 1304 -U 7470 ; WX 463 ; N uni1D2E ; G 1305 -U 7471 ; WX 463 ; N uni1D2F ; G 1306 -U 7472 ; WX 505 ; N uni1D30 ; G 1307 -U 7473 ; WX 459 ; N uni1D31 ; G 1308 -U 7474 ; WX 459 ; N uni1D32 ; G 1309 -U 7475 ; WX 503 ; N uni1D33 ; G 1310 -U 7476 ; WX 549 ; N uni1D34 ; G 1311 -U 7477 ; WX 249 ; N uni1D35 ; G 1312 -U 7478 ; WX 252 ; N uni1D36 ; G 1313 -U 7479 ; WX 470 ; N uni1D37 ; G 1314 -U 7480 ; WX 418 ; N uni1D38 ; G 1315 -U 7481 ; WX 645 ; N uni1D39 ; G 1316 -U 7482 ; WX 551 ; N uni1D3A ; G 1317 -U 7483 ; WX 551 ; N uni1D3B ; G 1318 -U 7484 ; WX 516 ; N uni1D3C ; G 1319 -U 7485 ; WX 369 ; N uni1D3D ; G 1320 -U 7486 ; WX 424 ; N uni1D3E ; G 1321 -U 7487 ; WX 474 ; N uni1D3F ; G 1322 -U 7488 ; WX 420 ; N uni1D40 ; G 1323 -U 7489 ; WX 531 ; N uni1D41 ; G 1324 -U 7490 ; WX 647 ; N uni1D42 ; G 1325 -U 7491 ; WX 386 ; N uni1D43 ; G 1326 -U 7492 ; WX 386 ; N uni1D44 ; G 1327 -U 7493 ; WX 400 ; N uni1D45 ; G 1328 -U 7494 ; WX 618 ; N uni1D46 ; G 1329 -U 7495 ; WX 400 ; N uni1D47 ; G 1330 -U 7496 ; WX 400 ; N uni1D48 ; G 1331 -U 7497 ; WX 387 ; N uni1D49 ; G 1332 -U 7498 ; WX 387 ; N uni1D4A ; G 1333 -U 7499 ; WX 340 ; N uni1D4B ; G 1334 -U 7500 ; WX 340 ; N uni1D4C ; G 1335 -U 7501 ; WX 400 ; N uni1D4D ; G 1336 -U 7502 ; WX 175 ; N uni1D4E ; G 1337 -U 7503 ; WX 365 ; N uni1D4F ; G 1338 -U 7504 ; WX 613 ; N uni1D50 ; G 1339 -U 7505 ; WX 399 ; N uni1D51 ; G 1340 -U 7506 ; WX 385 ; N uni1D52 ; G 1341 -U 7507 ; WX 346 ; N uni1D53 ; G 1342 -U 7508 ; WX 385 ; N uni1D54 ; G 1343 -U 7509 ; WX 385 ; N uni1D55 ; G 1344 -U 7510 ; WX 400 ; N uni1D56 ; G 1345 -U 7511 ; WX 247 ; N uni1D57 ; G 1346 -U 7512 ; WX 399 ; N uni1D58 ; G 1347 -U 7513 ; WX 418 ; N uni1D59 ; G 1348 -U 7514 ; WX 613 ; N uni1D5A ; G 1349 -U 7515 ; WX 373 ; N uni1D5B ; G 1350 -U 7516 ; WX 468 ; N uni1D5C ; G 1351 -U 7517 ; WX 364 ; N uni1D5D ; G 1352 -U 7518 ; WX 376 ; N uni1D5E ; G 1353 -U 7519 ; WX 379 ; N uni1D5F ; G 1354 -U 7520 ; WX 441 ; N uni1D60 ; G 1355 -U 7521 ; WX 381 ; N uni1D61 ; G 1356 -U 7522 ; WX 201 ; N uni1D62 ; G 1357 -U 7523 ; WX 347 ; N uni1D63 ; G 1358 -U 7524 ; WX 399 ; N uni1D64 ; G 1359 -U 7525 ; WX 373 ; N uni1D65 ; G 1360 -U 7526 ; WX 364 ; N uni1D66 ; G 1361 -U 7527 ; WX 376 ; N uni1D67 ; G 1362 -U 7528 ; WX 370 ; N uni1D68 ; G 1363 -U 7529 ; WX 441 ; N uni1D69 ; G 1364 -U 7530 ; WX 381 ; N uni1D6A ; G 1365 -U 7531 ; WX 974 ; N uni1D6B ; G 1366 -U 7543 ; WX 640 ; N uni1D77 ; G 1367 -U 7544 ; WX 549 ; N uni1D78 ; G 1368 -U 7547 ; WX 320 ; N uni1D7B ; G 1369 -U 7548 ; WX 392 ; N uni1D7C ; G 1370 -U 7549 ; WX 640 ; N uni1D7D ; G 1371 -U 7550 ; WX 585 ; N uni1D7E ; G 1372 -U 7551 ; WX 620 ; N uni1D7F ; G 1373 -U 7557 ; WX 320 ; N uni1D85 ; G 1374 -U 7579 ; WX 400 ; N uni1D9B ; G 1375 -U 7580 ; WX 346 ; N uni1D9C ; G 1376 -U 7581 ; WX 346 ; N uni1D9D ; G 1377 -U 7582 ; WX 385 ; N uni1D9E ; G 1378 -U 7583 ; WX 340 ; N uni1D9F ; G 1379 -U 7584 ; WX 222 ; N uni1DA0 ; G 1380 -U 7585 ; WX 229 ; N uni1DA1 ; G 1381 -U 7586 ; WX 400 ; N uni1DA2 ; G 1382 -U 7587 ; WX 399 ; N uni1DA3 ; G 1383 -U 7588 ; WX 234 ; N uni1DA4 ; G 1384 -U 7589 ; WX 244 ; N uni1DA5 ; G 1385 -U 7590 ; WX 234 ; N uni1DA6 ; G 1386 -U 7591 ; WX 234 ; N uni1DA7 ; G 1387 -U 7592 ; WX 230 ; N uni1DA8 ; G 1388 -U 7593 ; WX 175 ; N uni1DA9 ; G 1389 -U 7594 ; WX 175 ; N uni1DAA ; G 1390 -U 7595 ; WX 367 ; N uni1DAB ; G 1391 -U 7596 ; WX 613 ; N uni1DAC ; G 1392 -U 7597 ; WX 613 ; N uni1DAD ; G 1393 -U 7598 ; WX 407 ; N uni1DAE ; G 1394 -U 7599 ; WX 404 ; N uni1DAF ; G 1395 -U 7600 ; WX 399 ; N uni1DB0 ; G 1396 -U 7601 ; WX 385 ; N uni1DB1 ; G 1397 -U 7602 ; WX 385 ; N uni1DB2 ; G 1398 -U 7603 ; WX 328 ; N uni1DB3 ; G 1399 -U 7604 ; WX 211 ; N uni1DB4 ; G 1400 -U 7605 ; WX 247 ; N uni1DB5 ; G 1401 -U 7606 ; WX 399 ; N uni1DB6 ; G 1402 -U 7607 ; WX 389 ; N uni1DB7 ; G 1403 -U 7608 ; WX 368 ; N uni1DB8 ; G 1404 -U 7609 ; WX 376 ; N uni1DB9 ; G 1405 -U 7610 ; WX 373 ; N uni1DBA ; G 1406 -U 7611 ; WX 331 ; N uni1DBB ; G 1407 -U 7612 ; WX 331 ; N uni1DBC ; G 1408 -U 7613 ; WX 331 ; N uni1DBD ; G 1409 -U 7614 ; WX 364 ; N uni1DBE ; G 1410 -U 7615 ; WX 385 ; N uni1DBF ; G 1411 -U 7620 ; WX 0 ; N uni1DC4 ; G 1412 -U 7621 ; WX 0 ; N uni1DC5 ; G 1413 -U 7622 ; WX 0 ; N uni1DC6 ; G 1414 -U 7623 ; WX 0 ; N uni1DC7 ; G 1415 -U 7624 ; WX 0 ; N uni1DC8 ; G 1416 -U 7625 ; WX 0 ; N uni1DC9 ; G 1417 -U 7680 ; WX 722 ; N uni1E00 ; G 1418 -U 7681 ; WX 596 ; N uni1E01 ; G 1419 -U 7682 ; WX 735 ; N uni1E02 ; G 1420 -U 7683 ; WX 640 ; N uni1E03 ; G 1421 -U 7684 ; WX 735 ; N uni1E04 ; G 1422 -U 7685 ; WX 640 ; N uni1E05 ; G 1423 -U 7686 ; WX 735 ; N uni1E06 ; G 1424 -U 7687 ; WX 640 ; N uni1E07 ; G 1425 -U 7688 ; WX 765 ; N uni1E08 ; G 1426 -U 7689 ; WX 560 ; N uni1E09 ; G 1427 -U 7690 ; WX 802 ; N uni1E0A ; G 1428 -U 7691 ; WX 640 ; N uni1E0B ; G 1429 -U 7692 ; WX 802 ; N uni1E0C ; G 1430 -U 7693 ; WX 640 ; N uni1E0D ; G 1431 -U 7694 ; WX 802 ; N uni1E0E ; G 1432 -U 7695 ; WX 640 ; N uni1E0F ; G 1433 -U 7696 ; WX 802 ; N uni1E10 ; G 1434 -U 7697 ; WX 640 ; N uni1E11 ; G 1435 -U 7698 ; WX 802 ; N uni1E12 ; G 1436 -U 7699 ; WX 640 ; N uni1E13 ; G 1437 -U 7700 ; WX 730 ; N uni1E14 ; G 1438 -U 7701 ; WX 592 ; N uni1E15 ; G 1439 -U 7702 ; WX 730 ; N uni1E16 ; G 1440 -U 7703 ; WX 592 ; N uni1E17 ; G 1441 -U 7704 ; WX 730 ; N uni1E18 ; G 1442 -U 7705 ; WX 592 ; N uni1E19 ; G 1443 -U 7706 ; WX 730 ; N uni1E1A ; G 1444 -U 7707 ; WX 592 ; N uni1E1B ; G 1445 -U 7708 ; WX 730 ; N uni1E1C ; G 1446 -U 7709 ; WX 592 ; N uni1E1D ; G 1447 -U 7710 ; WX 694 ; N uni1E1E ; G 1448 -U 7711 ; WX 370 ; N uni1E1F ; G 1449 -U 7712 ; WX 799 ; N uni1E20 ; G 1450 -U 7713 ; WX 640 ; N uni1E21 ; G 1451 -U 7714 ; WX 872 ; N uni1E22 ; G 1452 -U 7715 ; WX 644 ; N uni1E23 ; G 1453 -U 7716 ; WX 872 ; N uni1E24 ; G 1454 -U 7717 ; WX 644 ; N uni1E25 ; G 1455 -U 7718 ; WX 872 ; N uni1E26 ; G 1456 -U 7719 ; WX 644 ; N uni1E27 ; G 1457 -U 7720 ; WX 872 ; N uni1E28 ; G 1458 -U 7721 ; WX 644 ; N uni1E29 ; G 1459 -U 7722 ; WX 872 ; N uni1E2A ; G 1460 -U 7723 ; WX 644 ; N uni1E2B ; G 1461 -U 7724 ; WX 395 ; N uni1E2C ; G 1462 -U 7725 ; WX 320 ; N uni1E2D ; G 1463 -U 7726 ; WX 395 ; N uni1E2E ; G 1464 -U 7727 ; WX 320 ; N uni1E2F ; G 1465 -U 7728 ; WX 747 ; N uni1E30 ; G 1466 -U 7729 ; WX 606 ; N uni1E31 ; G 1467 -U 7730 ; WX 747 ; N uni1E32 ; G 1468 -U 7731 ; WX 606 ; N uni1E33 ; G 1469 -U 7732 ; WX 747 ; N uni1E34 ; G 1470 -U 7733 ; WX 606 ; N uni1E35 ; G 1471 -U 7734 ; WX 664 ; N uni1E36 ; G 1472 -U 7735 ; WX 320 ; N uni1E37 ; G 1473 -U 7736 ; WX 664 ; N uni1E38 ; G 1474 -U 7737 ; WX 320 ; N uni1E39 ; G 1475 -U 7738 ; WX 664 ; N uni1E3A ; G 1476 -U 7739 ; WX 320 ; N uni1E3B ; G 1477 -U 7740 ; WX 664 ; N uni1E3C ; G 1478 -U 7741 ; WX 320 ; N uni1E3D ; G 1479 -U 7742 ; WX 1024 ; N uni1E3E ; G 1480 -U 7743 ; WX 948 ; N uni1E3F ; G 1481 -U 7744 ; WX 1024 ; N uni1E40 ; G 1482 -U 7745 ; WX 948 ; N uni1E41 ; G 1483 -U 7746 ; WX 1024 ; N uni1E42 ; G 1484 -U 7747 ; WX 948 ; N uni1E43 ; G 1485 -U 7748 ; WX 875 ; N uni1E44 ; G 1486 -U 7749 ; WX 644 ; N uni1E45 ; G 1487 -U 7750 ; WX 875 ; N uni1E46 ; G 1488 -U 7751 ; WX 644 ; N uni1E47 ; G 1489 -U 7752 ; WX 875 ; N uni1E48 ; G 1490 -U 7753 ; WX 644 ; N uni1E49 ; G 1491 -U 7754 ; WX 875 ; N uni1E4A ; G 1492 -U 7755 ; WX 644 ; N uni1E4B ; G 1493 -U 7756 ; WX 820 ; N uni1E4C ; G 1494 -U 7757 ; WX 602 ; N uni1E4D ; G 1495 -U 7758 ; WX 820 ; N uni1E4E ; G 1496 -U 7759 ; WX 602 ; N uni1E4F ; G 1497 -U 7760 ; WX 820 ; N uni1E50 ; G 1498 -U 7761 ; WX 602 ; N uni1E51 ; G 1499 -U 7762 ; WX 820 ; N uni1E52 ; G 1500 -U 7763 ; WX 602 ; N uni1E53 ; G 1501 -U 7764 ; WX 673 ; N uni1E54 ; G 1502 -U 7765 ; WX 640 ; N uni1E55 ; G 1503 -U 7766 ; WX 673 ; N uni1E56 ; G 1504 -U 7767 ; WX 640 ; N uni1E57 ; G 1505 -U 7768 ; WX 753 ; N uni1E58 ; G 1506 -U 7769 ; WX 478 ; N uni1E59 ; G 1507 -U 7770 ; WX 753 ; N uni1E5A ; G 1508 -U 7771 ; WX 478 ; N uni1E5B ; G 1509 -U 7772 ; WX 753 ; N uni1E5C ; G 1510 -U 7773 ; WX 478 ; N uni1E5D ; G 1511 -U 7774 ; WX 753 ; N uni1E5E ; G 1512 -U 7775 ; WX 478 ; N uni1E5F ; G 1513 -U 7776 ; WX 685 ; N uni1E60 ; G 1514 -U 7777 ; WX 513 ; N uni1E61 ; G 1515 -U 7778 ; WX 685 ; N uni1E62 ; G 1516 -U 7779 ; WX 513 ; N uni1E63 ; G 1517 -U 7780 ; WX 685 ; N uni1E64 ; G 1518 -U 7781 ; WX 513 ; N uni1E65 ; G 1519 -U 7782 ; WX 685 ; N uni1E66 ; G 1520 -U 7783 ; WX 521 ; N uni1E67 ; G 1521 -U 7784 ; WX 685 ; N uni1E68 ; G 1522 -U 7785 ; WX 513 ; N uni1E69 ; G 1523 -U 7786 ; WX 667 ; N uni1E6A ; G 1524 -U 7787 ; WX 402 ; N uni1E6B ; G 1525 -U 7788 ; WX 667 ; N uni1E6C ; G 1526 -U 7789 ; WX 402 ; N uni1E6D ; G 1527 -U 7790 ; WX 667 ; N uni1E6E ; G 1528 -U 7791 ; WX 402 ; N uni1E6F ; G 1529 -U 7792 ; WX 667 ; N uni1E70 ; G 1530 -U 7793 ; WX 402 ; N uni1E71 ; G 1531 -U 7794 ; WX 843 ; N uni1E72 ; G 1532 -U 7795 ; WX 644 ; N uni1E73 ; G 1533 -U 7796 ; WX 843 ; N uni1E74 ; G 1534 -U 7797 ; WX 644 ; N uni1E75 ; G 1535 -U 7798 ; WX 843 ; N uni1E76 ; G 1536 -U 7799 ; WX 644 ; N uni1E77 ; G 1537 -U 7800 ; WX 843 ; N uni1E78 ; G 1538 -U 7801 ; WX 644 ; N uni1E79 ; G 1539 -U 7802 ; WX 843 ; N uni1E7A ; G 1540 -U 7803 ; WX 644 ; N uni1E7B ; G 1541 -U 7804 ; WX 722 ; N uni1E7C ; G 1542 -U 7805 ; WX 565 ; N uni1E7D ; G 1543 -U 7806 ; WX 722 ; N uni1E7E ; G 1544 -U 7807 ; WX 565 ; N uni1E7F ; G 1545 -U 7808 ; WX 1028 ; N Wgrave ; G 1546 -U 7809 ; WX 856 ; N wgrave ; G 1547 -U 7810 ; WX 1028 ; N Wacute ; G 1548 -U 7811 ; WX 856 ; N wacute ; G 1549 -U 7812 ; WX 1028 ; N Wdieresis ; G 1550 -U 7813 ; WX 856 ; N wdieresis ; G 1551 -U 7814 ; WX 1028 ; N uni1E86 ; G 1552 -U 7815 ; WX 856 ; N uni1E87 ; G 1553 -U 7816 ; WX 1028 ; N uni1E88 ; G 1554 -U 7817 ; WX 856 ; N uni1E89 ; G 1555 -U 7818 ; WX 712 ; N uni1E8A ; G 1556 -U 7819 ; WX 564 ; N uni1E8B ; G 1557 -U 7820 ; WX 712 ; N uni1E8C ; G 1558 -U 7821 ; WX 564 ; N uni1E8D ; G 1559 -U 7822 ; WX 660 ; N uni1E8E ; G 1560 -U 7823 ; WX 565 ; N uni1E8F ; G 1561 -U 7824 ; WX 695 ; N uni1E90 ; G 1562 -U 7825 ; WX 527 ; N uni1E91 ; G 1563 -U 7826 ; WX 695 ; N uni1E92 ; G 1564 -U 7827 ; WX 527 ; N uni1E93 ; G 1565 -U 7828 ; WX 695 ; N uni1E94 ; G 1566 -U 7829 ; WX 527 ; N uni1E95 ; G 1567 -U 7830 ; WX 644 ; N uni1E96 ; G 1568 -U 7831 ; WX 402 ; N uni1E97 ; G 1569 -U 7832 ; WX 856 ; N uni1E98 ; G 1570 -U 7833 ; WX 565 ; N uni1E99 ; G 1571 -U 7834 ; WX 903 ; N uni1E9A ; G 1572 -U 7835 ; WX 370 ; N uni1E9B ; G 1573 -U 7836 ; WX 370 ; N uni1E9C ; G 1574 -U 7837 ; WX 370 ; N uni1E9D ; G 1575 -U 7838 ; WX 829 ; N uni1E9E ; G 1576 -U 7839 ; WX 602 ; N uni1E9F ; G 1577 -U 7840 ; WX 722 ; N uni1EA0 ; G 1578 -U 7841 ; WX 596 ; N uni1EA1 ; G 1579 -U 7842 ; WX 722 ; N uni1EA2 ; G 1580 -U 7843 ; WX 596 ; N uni1EA3 ; G 1581 -U 7844 ; WX 722 ; N uni1EA4 ; G 1582 -U 7845 ; WX 613 ; N uni1EA5 ; G 1583 -U 7846 ; WX 722 ; N uni1EA6 ; G 1584 -U 7847 ; WX 613 ; N uni1EA7 ; G 1585 -U 7848 ; WX 722 ; N uni1EA8 ; G 1586 -U 7849 ; WX 613 ; N uni1EA9 ; G 1587 -U 7850 ; WX 722 ; N uni1EAA ; G 1588 -U 7851 ; WX 613 ; N uni1EAB ; G 1589 -U 7852 ; WX 722 ; N uni1EAC ; G 1590 -U 7853 ; WX 596 ; N uni1EAD ; G 1591 -U 7854 ; WX 722 ; N uni1EAE ; G 1592 -U 7855 ; WX 596 ; N uni1EAF ; G 1593 -U 7856 ; WX 722 ; N uni1EB0 ; G 1594 -U 7857 ; WX 596 ; N uni1EB1 ; G 1595 -U 7858 ; WX 722 ; N uni1EB2 ; G 1596 -U 7859 ; WX 596 ; N uni1EB3 ; G 1597 -U 7860 ; WX 722 ; N uni1EB4 ; G 1598 -U 7861 ; WX 596 ; N uni1EB5 ; G 1599 -U 7862 ; WX 722 ; N uni1EB6 ; G 1600 -U 7863 ; WX 596 ; N uni1EB7 ; G 1601 -U 7864 ; WX 730 ; N uni1EB8 ; G 1602 -U 7865 ; WX 592 ; N uni1EB9 ; G 1603 -U 7866 ; WX 730 ; N uni1EBA ; G 1604 -U 7867 ; WX 592 ; N uni1EBB ; G 1605 -U 7868 ; WX 730 ; N uni1EBC ; G 1606 -U 7869 ; WX 592 ; N uni1EBD ; G 1607 -U 7870 ; WX 730 ; N uni1ebe ; G 1608 -U 7871 ; WX 615 ; N uni1ebF ; G 1609 -U 7872 ; WX 730 ; N uni1EC0 ; G 1610 -U 7873 ; WX 615 ; N uni1EC1 ; G 1611 -U 7874 ; WX 730 ; N uni1EC2 ; G 1612 -U 7875 ; WX 615 ; N uni1EC3 ; G 1613 -U 7876 ; WX 730 ; N uni1EC4 ; G 1614 -U 7877 ; WX 615 ; N uni1EC5 ; G 1615 -U 7878 ; WX 730 ; N uni1EC6 ; G 1616 -U 7879 ; WX 592 ; N uni1EC7 ; G 1617 -U 7880 ; WX 395 ; N uni1EC8 ; G 1618 -U 7881 ; WX 320 ; N uni1EC9 ; G 1619 -U 7882 ; WX 395 ; N uni1ECA ; G 1620 -U 7883 ; WX 320 ; N uni1ECB ; G 1621 -U 7884 ; WX 820 ; N uni1ECC ; G 1622 -U 7885 ; WX 602 ; N uni1ECD ; G 1623 -U 7886 ; WX 820 ; N uni1ECE ; G 1624 -U 7887 ; WX 602 ; N uni1ECF ; G 1625 -U 7888 ; WX 820 ; N uni1ED0 ; G 1626 -U 7889 ; WX 612 ; N uni1ED1 ; G 1627 -U 7890 ; WX 820 ; N uni1ED2 ; G 1628 -U 7891 ; WX 612 ; N uni1ED3 ; G 1629 -U 7892 ; WX 820 ; N uni1ED4 ; G 1630 -U 7893 ; WX 612 ; N uni1ED5 ; G 1631 -U 7894 ; WX 820 ; N uni1ED6 ; G 1632 -U 7895 ; WX 612 ; N uni1ED7 ; G 1633 -U 7896 ; WX 820 ; N uni1ED8 ; G 1634 -U 7897 ; WX 602 ; N uni1ED9 ; G 1635 -U 7898 ; WX 820 ; N uni1EDA ; G 1636 -U 7899 ; WX 602 ; N uni1EDB ; G 1637 -U 7900 ; WX 820 ; N uni1EDC ; G 1638 -U 7901 ; WX 602 ; N uni1EDD ; G 1639 -U 7902 ; WX 820 ; N uni1EDE ; G 1640 -U 7903 ; WX 602 ; N uni1EDF ; G 1641 -U 7904 ; WX 820 ; N uni1EE0 ; G 1642 -U 7905 ; WX 602 ; N uni1EE1 ; G 1643 -U 7906 ; WX 820 ; N uni1EE2 ; G 1644 -U 7907 ; WX 602 ; N uni1EE3 ; G 1645 -U 7908 ; WX 843 ; N uni1EE4 ; G 1646 -U 7909 ; WX 644 ; N uni1EE5 ; G 1647 -U 7910 ; WX 843 ; N uni1EE6 ; G 1648 -U 7911 ; WX 644 ; N uni1EE7 ; G 1649 -U 7912 ; WX 843 ; N uni1EE8 ; G 1650 -U 7913 ; WX 644 ; N uni1EE9 ; G 1651 -U 7914 ; WX 843 ; N uni1EEA ; G 1652 -U 7915 ; WX 644 ; N uni1EEB ; G 1653 -U 7916 ; WX 843 ; N uni1EEC ; G 1654 -U 7917 ; WX 644 ; N uni1EED ; G 1655 -U 7918 ; WX 843 ; N uni1EEE ; G 1656 -U 7919 ; WX 644 ; N uni1EEF ; G 1657 -U 7920 ; WX 843 ; N uni1EF0 ; G 1658 -U 7921 ; WX 644 ; N uni1EF1 ; G 1659 -U 7922 ; WX 660 ; N Ygrave ; G 1660 -U 7923 ; WX 565 ; N ygrave ; G 1661 -U 7924 ; WX 660 ; N uni1EF4 ; G 1662 -U 7925 ; WX 565 ; N uni1EF5 ; G 1663 -U 7926 ; WX 660 ; N uni1EF6 ; G 1664 -U 7927 ; WX 565 ; N uni1EF7 ; G 1665 -U 7928 ; WX 660 ; N uni1EF8 ; G 1666 -U 7929 ; WX 565 ; N uni1EF9 ; G 1667 -U 7930 ; WX 949 ; N uni1EFA ; G 1668 -U 7931 ; WX 581 ; N uni1EFB ; G 1669 -U 7936 ; WX 675 ; N uni1F00 ; G 1670 -U 7937 ; WX 675 ; N uni1F01 ; G 1671 -U 7938 ; WX 675 ; N uni1F02 ; G 1672 -U 7939 ; WX 675 ; N uni1F03 ; G 1673 -U 7940 ; WX 675 ; N uni1F04 ; G 1674 -U 7941 ; WX 675 ; N uni1F05 ; G 1675 -U 7942 ; WX 675 ; N uni1F06 ; G 1676 -U 7943 ; WX 675 ; N uni1F07 ; G 1677 -U 7944 ; WX 722 ; N uni1F08 ; G 1678 -U 7945 ; WX 722 ; N uni1F09 ; G 1679 -U 7946 ; WX 869 ; N uni1F0A ; G 1680 -U 7947 ; WX 869 ; N uni1F0B ; G 1681 -U 7948 ; WX 734 ; N uni1F0C ; G 1682 -U 7949 ; WX 763 ; N uni1F0D ; G 1683 -U 7950 ; WX 722 ; N uni1F0E ; G 1684 -U 7951 ; WX 722 ; N uni1F0F ; G 1685 -U 7952 ; WX 537 ; N uni1F10 ; G 1686 -U 7953 ; WX 537 ; N uni1F11 ; G 1687 -U 7954 ; WX 537 ; N uni1F12 ; G 1688 -U 7955 ; WX 537 ; N uni1F13 ; G 1689 -U 7956 ; WX 537 ; N uni1F14 ; G 1690 -U 7957 ; WX 537 ; N uni1F15 ; G 1691 -U 7960 ; WX 853 ; N uni1F18 ; G 1692 -U 7961 ; WX 841 ; N uni1F19 ; G 1693 -U 7962 ; WX 1067 ; N uni1F1A ; G 1694 -U 7963 ; WX 1077 ; N uni1F1B ; G 1695 -U 7964 ; WX 1008 ; N uni1F1C ; G 1696 -U 7965 ; WX 1035 ; N uni1F1D ; G 1697 -U 7968 ; WX 599 ; N uni1F20 ; G 1698 -U 7969 ; WX 599 ; N uni1F21 ; G 1699 -U 7970 ; WX 599 ; N uni1F22 ; G 1700 -U 7971 ; WX 599 ; N uni1F23 ; G 1701 -U 7972 ; WX 599 ; N uni1F24 ; G 1702 -U 7973 ; WX 599 ; N uni1F25 ; G 1703 -U 7974 ; WX 599 ; N uni1F26 ; G 1704 -U 7975 ; WX 599 ; N uni1F27 ; G 1705 -U 7976 ; WX 998 ; N uni1F28 ; G 1706 -U 7977 ; WX 992 ; N uni1F29 ; G 1707 -U 7978 ; WX 1212 ; N uni1F2A ; G 1708 -U 7979 ; WX 1224 ; N uni1F2B ; G 1709 -U 7980 ; WX 1159 ; N uni1F2C ; G 1710 -U 7981 ; WX 1183 ; N uni1F2D ; G 1711 -U 7982 ; WX 1098 ; N uni1F2E ; G 1712 -U 7983 ; WX 1095 ; N uni1F2F ; G 1713 -U 7984 ; WX 392 ; N uni1F30 ; G 1714 -U 7985 ; WX 392 ; N uni1F31 ; G 1715 -U 7986 ; WX 392 ; N uni1F32 ; G 1716 -U 7987 ; WX 392 ; N uni1F33 ; G 1717 -U 7988 ; WX 392 ; N uni1F34 ; G 1718 -U 7989 ; WX 392 ; N uni1F35 ; G 1719 -U 7990 ; WX 392 ; N uni1F36 ; G 1720 -U 7991 ; WX 392 ; N uni1F37 ; G 1721 -U 7992 ; WX 521 ; N uni1F38 ; G 1722 -U 7993 ; WX 512 ; N uni1F39 ; G 1723 -U 7994 ; WX 735 ; N uni1F3A ; G 1724 -U 7995 ; WX 738 ; N uni1F3B ; G 1725 -U 7996 ; WX 679 ; N uni1F3C ; G 1726 -U 7997 ; WX 706 ; N uni1F3D ; G 1727 -U 7998 ; WX 624 ; N uni1F3E ; G 1728 -U 7999 ; WX 615 ; N uni1F3F ; G 1729 -U 8000 ; WX 602 ; N uni1F40 ; G 1730 -U 8001 ; WX 602 ; N uni1F41 ; G 1731 -U 8002 ; WX 602 ; N uni1F42 ; G 1732 -U 8003 ; WX 602 ; N uni1F43 ; G 1733 -U 8004 ; WX 602 ; N uni1F44 ; G 1734 -U 8005 ; WX 602 ; N uni1F45 ; G 1735 -U 8008 ; WX 820 ; N uni1F48 ; G 1736 -U 8009 ; WX 859 ; N uni1F49 ; G 1737 -U 8010 ; WX 1120 ; N uni1F4A ; G 1738 -U 8011 ; WX 1127 ; N uni1F4B ; G 1739 -U 8012 ; WX 937 ; N uni1F4C ; G 1740 -U 8013 ; WX 964 ; N uni1F4D ; G 1741 -U 8016 ; WX 608 ; N uni1F50 ; G 1742 -U 8017 ; WX 608 ; N uni1F51 ; G 1743 -U 8018 ; WX 608 ; N uni1F52 ; G 1744 -U 8019 ; WX 608 ; N uni1F53 ; G 1745 -U 8020 ; WX 608 ; N uni1F54 ; G 1746 -U 8021 ; WX 608 ; N uni1F55 ; G 1747 -U 8022 ; WX 608 ; N uni1F56 ; G 1748 -U 8023 ; WX 608 ; N uni1F57 ; G 1749 -U 8025 ; WX 851 ; N uni1F59 ; G 1750 -U 8027 ; WX 1079 ; N uni1F5B ; G 1751 -U 8029 ; WX 1044 ; N uni1F5D ; G 1752 -U 8031 ; WX 953 ; N uni1F5F ; G 1753 -U 8032 ; WX 815 ; N uni1F60 ; G 1754 -U 8033 ; WX 815 ; N uni1F61 ; G 1755 -U 8034 ; WX 815 ; N uni1F62 ; G 1756 -U 8035 ; WX 815 ; N uni1F63 ; G 1757 -U 8036 ; WX 815 ; N uni1F64 ; G 1758 -U 8037 ; WX 815 ; N uni1F65 ; G 1759 -U 8038 ; WX 815 ; N uni1F66 ; G 1760 -U 8039 ; WX 815 ; N uni1F67 ; G 1761 -U 8040 ; WX 829 ; N uni1F68 ; G 1762 -U 8041 ; WX 870 ; N uni1F69 ; G 1763 -U 8042 ; WX 1131 ; N uni1F6A ; G 1764 -U 8043 ; WX 1137 ; N uni1F6B ; G 1765 -U 8044 ; WX 946 ; N uni1F6C ; G 1766 -U 8045 ; WX 976 ; N uni1F6D ; G 1767 -U 8046 ; WX 938 ; N uni1F6E ; G 1768 -U 8047 ; WX 970 ; N uni1F6F ; G 1769 -U 8048 ; WX 675 ; N uni1F70 ; G 1770 -U 8049 ; WX 675 ; N uni1F71 ; G 1771 -U 8050 ; WX 537 ; N uni1F72 ; G 1772 -U 8051 ; WX 537 ; N uni1F73 ; G 1773 -U 8052 ; WX 599 ; N uni1F74 ; G 1774 -U 8053 ; WX 599 ; N uni1F75 ; G 1775 -U 8054 ; WX 392 ; N uni1F76 ; G 1776 -U 8055 ; WX 392 ; N uni1F77 ; G 1777 -U 8056 ; WX 602 ; N uni1F78 ; G 1778 -U 8057 ; WX 602 ; N uni1F79 ; G 1779 -U 8058 ; WX 608 ; N uni1F7A ; G 1780 -U 8059 ; WX 608 ; N uni1F7B ; G 1781 -U 8060 ; WX 815 ; N uni1F7C ; G 1782 -U 8061 ; WX 815 ; N uni1F7D ; G 1783 -U 8064 ; WX 675 ; N uni1F80 ; G 1784 -U 8065 ; WX 675 ; N uni1F81 ; G 1785 -U 8066 ; WX 675 ; N uni1F82 ; G 1786 -U 8067 ; WX 675 ; N uni1F83 ; G 1787 -U 8068 ; WX 675 ; N uni1F84 ; G 1788 -U 8069 ; WX 675 ; N uni1F85 ; G 1789 -U 8070 ; WX 675 ; N uni1F86 ; G 1790 -U 8071 ; WX 675 ; N uni1F87 ; G 1791 -U 8072 ; WX 722 ; N uni1F88 ; G 1792 -U 8073 ; WX 722 ; N uni1F89 ; G 1793 -U 8074 ; WX 869 ; N uni1F8A ; G 1794 -U 8075 ; WX 869 ; N uni1F8B ; G 1795 -U 8076 ; WX 734 ; N uni1F8C ; G 1796 -U 8077 ; WX 763 ; N uni1F8D ; G 1797 -U 8078 ; WX 722 ; N uni1F8E ; G 1798 -U 8079 ; WX 722 ; N uni1F8F ; G 1799 -U 8080 ; WX 599 ; N uni1F90 ; G 1800 -U 8081 ; WX 599 ; N uni1F91 ; G 1801 -U 8082 ; WX 599 ; N uni1F92 ; G 1802 -U 8083 ; WX 599 ; N uni1F93 ; G 1803 -U 8084 ; WX 599 ; N uni1F94 ; G 1804 -U 8085 ; WX 599 ; N uni1F95 ; G 1805 -U 8086 ; WX 599 ; N uni1F96 ; G 1806 -U 8087 ; WX 599 ; N uni1F97 ; G 1807 -U 8088 ; WX 998 ; N uni1F98 ; G 1808 -U 8089 ; WX 992 ; N uni1F99 ; G 1809 -U 8090 ; WX 1212 ; N uni1F9A ; G 1810 -U 8091 ; WX 1224 ; N uni1F9B ; G 1811 -U 8092 ; WX 1159 ; N uni1F9C ; G 1812 -U 8093 ; WX 1183 ; N uni1F9D ; G 1813 -U 8094 ; WX 1098 ; N uni1F9E ; G 1814 -U 8095 ; WX 1095 ; N uni1F9F ; G 1815 -U 8096 ; WX 815 ; N uni1FA0 ; G 1816 -U 8097 ; WX 815 ; N uni1FA1 ; G 1817 -U 8098 ; WX 815 ; N uni1FA2 ; G 1818 -U 8099 ; WX 815 ; N uni1FA3 ; G 1819 -U 8100 ; WX 815 ; N uni1FA4 ; G 1820 -U 8101 ; WX 815 ; N uni1FA5 ; G 1821 -U 8102 ; WX 815 ; N uni1FA6 ; G 1822 -U 8103 ; WX 815 ; N uni1FA7 ; G 1823 -U 8104 ; WX 829 ; N uni1FA8 ; G 1824 -U 8105 ; WX 870 ; N uni1FA9 ; G 1825 -U 8106 ; WX 1131 ; N uni1FAA ; G 1826 -U 8107 ; WX 1137 ; N uni1FAB ; G 1827 -U 8108 ; WX 946 ; N uni1FAC ; G 1828 -U 8109 ; WX 976 ; N uni1FAD ; G 1829 -U 8110 ; WX 938 ; N uni1FAE ; G 1830 -U 8111 ; WX 970 ; N uni1FAF ; G 1831 -U 8112 ; WX 675 ; N uni1FB0 ; G 1832 -U 8113 ; WX 675 ; N uni1FB1 ; G 1833 -U 8114 ; WX 675 ; N uni1FB2 ; G 1834 -U 8115 ; WX 675 ; N uni1FB3 ; G 1835 -U 8116 ; WX 675 ; N uni1FB4 ; G 1836 -U 8118 ; WX 675 ; N uni1FB6 ; G 1837 -U 8119 ; WX 675 ; N uni1FB7 ; G 1838 -U 8120 ; WX 722 ; N uni1FB8 ; G 1839 -U 8121 ; WX 722 ; N uni1FB9 ; G 1840 -U 8122 ; WX 722 ; N uni1FBA ; G 1841 -U 8123 ; WX 722 ; N uni1FBB ; G 1842 -U 8124 ; WX 722 ; N uni1FBC ; G 1843 -U 8125 ; WX 500 ; N uni1FBD ; G 1844 -U 8126 ; WX 500 ; N uni1FBE ; G 1845 -U 8127 ; WX 500 ; N uni1FBF ; G 1846 -U 8128 ; WX 500 ; N uni1FC0 ; G 1847 -U 8129 ; WX 500 ; N uni1FC1 ; G 1848 -U 8130 ; WX 599 ; N uni1FC2 ; G 1849 -U 8131 ; WX 599 ; N uni1FC3 ; G 1850 -U 8132 ; WX 599 ; N uni1FC4 ; G 1851 -U 8134 ; WX 599 ; N uni1FC6 ; G 1852 -U 8135 ; WX 599 ; N uni1FC7 ; G 1853 -U 8136 ; WX 912 ; N uni1FC8 ; G 1854 -U 8137 ; WX 900 ; N uni1FC9 ; G 1855 -U 8138 ; WX 1063 ; N uni1FCA ; G 1856 -U 8139 ; WX 1039 ; N uni1FCB ; G 1857 -U 8140 ; WX 872 ; N uni1FCC ; G 1858 -U 8141 ; WX 500 ; N uni1FCD ; G 1859 -U 8142 ; WX 500 ; N uni1FCE ; G 1860 -U 8143 ; WX 500 ; N uni1FCF ; G 1861 -U 8144 ; WX 392 ; N uni1FD0 ; G 1862 -U 8145 ; WX 392 ; N uni1FD1 ; G 1863 -U 8146 ; WX 392 ; N uni1FD2 ; G 1864 -U 8147 ; WX 392 ; N uni1FD3 ; G 1865 -U 8150 ; WX 392 ; N uni1FD6 ; G 1866 -U 8151 ; WX 392 ; N uni1FD7 ; G 1867 -U 8152 ; WX 395 ; N uni1FD8 ; G 1868 -U 8153 ; WX 395 ; N uni1FD9 ; G 1869 -U 8154 ; WX 588 ; N uni1FDA ; G 1870 -U 8155 ; WX 562 ; N uni1FDB ; G 1871 -U 8157 ; WX 500 ; N uni1FDD ; G 1872 -U 8158 ; WX 500 ; N uni1FDE ; G 1873 -U 8159 ; WX 500 ; N uni1FDF ; G 1874 -U 8160 ; WX 608 ; N uni1FE0 ; G 1875 -U 8161 ; WX 608 ; N uni1FE1 ; G 1876 -U 8162 ; WX 608 ; N uni1FE2 ; G 1877 -U 8163 ; WX 608 ; N uni1FE3 ; G 1878 -U 8164 ; WX 588 ; N uni1FE4 ; G 1879 -U 8165 ; WX 588 ; N uni1FE5 ; G 1880 -U 8166 ; WX 608 ; N uni1FE6 ; G 1881 -U 8167 ; WX 608 ; N uni1FE7 ; G 1882 -U 8168 ; WX 660 ; N uni1FE8 ; G 1883 -U 8169 ; WX 660 ; N uni1FE9 ; G 1884 -U 8170 ; WX 921 ; N uni1FEA ; G 1885 -U 8171 ; WX 897 ; N uni1FEB ; G 1886 -U 8172 ; WX 790 ; N uni1FEC ; G 1887 -U 8173 ; WX 500 ; N uni1FED ; G 1888 -U 8174 ; WX 500 ; N uni1FEE ; G 1889 -U 8175 ; WX 500 ; N uni1FEF ; G 1890 -U 8178 ; WX 815 ; N uni1FF2 ; G 1891 -U 8179 ; WX 815 ; N uni1FF3 ; G 1892 -U 8180 ; WX 815 ; N uni1FF4 ; G 1893 -U 8182 ; WX 815 ; N uni1FF6 ; G 1894 -U 8183 ; WX 815 ; N uni1FF7 ; G 1895 -U 8184 ; WX 961 ; N uni1FF8 ; G 1896 -U 8185 ; WX 835 ; N uni1FF9 ; G 1897 -U 8186 ; WX 984 ; N uni1FFA ; G 1898 -U 8187 ; WX 853 ; N uni1FFB ; G 1899 -U 8188 ; WX 829 ; N uni1FFC ; G 1900 -U 8189 ; WX 500 ; N uni1FFD ; G 1901 -U 8190 ; WX 500 ; N uni1FFE ; G 1902 -U 8192 ; WX 500 ; N uni2000 ; G 1903 -U 8193 ; WX 1000 ; N uni2001 ; G 1904 -U 8194 ; WX 500 ; N uni2002 ; G 1905 -U 8195 ; WX 1000 ; N uni2003 ; G 1906 -U 8196 ; WX 330 ; N uni2004 ; G 1907 -U 8197 ; WX 250 ; N uni2005 ; G 1908 -U 8198 ; WX 167 ; N uni2006 ; G 1909 -U 8199 ; WX 636 ; N uni2007 ; G 1910 -U 8200 ; WX 318 ; N uni2008 ; G 1911 -U 8201 ; WX 200 ; N uni2009 ; G 1912 -U 8202 ; WX 100 ; N uni200A ; G 1913 -U 8203 ; WX 0 ; N uni200B ; G 1914 -U 8204 ; WX 0 ; N uni200C ; G 1915 -U 8205 ; WX 0 ; N uni200D ; G 1916 -U 8206 ; WX 0 ; N uni200E ; G 1917 -U 8207 ; WX 0 ; N uni200F ; G 1918 -U 8208 ; WX 338 ; N uni2010 ; G 1919 -U 8209 ; WX 338 ; N uni2011 ; G 1920 -U 8210 ; WX 636 ; N figuredash ; G 1921 -U 8211 ; WX 500 ; N endash ; G 1922 -U 8212 ; WX 1000 ; N emdash ; G 1923 -U 8213 ; WX 1000 ; N uni2015 ; G 1924 -U 8214 ; WX 500 ; N uni2016 ; G 1925 -U 8215 ; WX 500 ; N underscoredbl ; G 1926 -U 8216 ; WX 318 ; N quoteleft ; G 1927 -U 8217 ; WX 318 ; N quoteright ; G 1928 -U 8218 ; WX 318 ; N quotesinglbase ; G 1929 -U 8219 ; WX 318 ; N quotereversed ; G 1930 -U 8220 ; WX 511 ; N quotedblleft ; G 1931 -U 8221 ; WX 511 ; N quotedblright ; G 1932 -U 8222 ; WX 518 ; N quotedblbase ; G 1933 -U 8223 ; WX 511 ; N uni201F ; G 1934 -U 8224 ; WX 500 ; N dagger ; G 1935 -U 8225 ; WX 500 ; N daggerdbl ; G 1936 -U 8226 ; WX 590 ; N bullet ; G 1937 -U 8227 ; WX 590 ; N uni2023 ; G 1938 -U 8228 ; WX 334 ; N onedotenleader ; G 1939 -U 8229 ; WX 667 ; N twodotenleader ; G 1940 -U 8230 ; WX 1000 ; N ellipsis ; G 1941 -U 8234 ; WX 0 ; N uni202A ; G 1942 -U 8235 ; WX 0 ; N uni202B ; G 1943 -U 8236 ; WX 0 ; N uni202C ; G 1944 -U 8237 ; WX 0 ; N uni202D ; G 1945 -U 8238 ; WX 0 ; N uni202E ; G 1946 -U 8239 ; WX 200 ; N uni202F ; G 1947 -U 8240 ; WX 1342 ; N perthousand ; G 1948 -U 8241 ; WX 1734 ; N uni2031 ; G 1949 -U 8242 ; WX 227 ; N minute ; G 1950 -U 8243 ; WX 374 ; N second ; G 1951 -U 8244 ; WX 520 ; N uni2034 ; G 1952 -U 8245 ; WX 227 ; N uni2035 ; G 1953 -U 8246 ; WX 374 ; N uni2036 ; G 1954 -U 8247 ; WX 520 ; N uni2037 ; G 1955 -U 8248 ; WX 339 ; N uni2038 ; G 1956 -U 8249 ; WX 400 ; N guilsinglleft ; G 1957 -U 8250 ; WX 400 ; N guilsinglright ; G 1958 -U 8252 ; WX 527 ; N exclamdbl ; G 1959 -U 8253 ; WX 536 ; N uni203D ; G 1960 -U 8254 ; WX 500 ; N uni203E ; G 1961 -U 8258 ; WX 1000 ; N uni2042 ; G 1962 -U 8260 ; WX 167 ; N fraction ; G 1963 -U 8261 ; WX 390 ; N uni2045 ; G 1964 -U 8262 ; WX 390 ; N uni2046 ; G 1965 -U 8263 ; WX 976 ; N uni2047 ; G 1966 -U 8264 ; WX 753 ; N uni2048 ; G 1967 -U 8265 ; WX 753 ; N uni2049 ; G 1968 -U 8267 ; WX 636 ; N uni204B ; G 1969 -U 8268 ; WX 500 ; N uni204C ; G 1970 -U 8269 ; WX 500 ; N uni204D ; G 1971 -U 8270 ; WX 500 ; N uni204E ; G 1972 -U 8271 ; WX 337 ; N uni204F ; G 1973 -U 8273 ; WX 500 ; N uni2051 ; G 1974 -U 8274 ; WX 450 ; N uni2052 ; G 1975 -U 8275 ; WX 1000 ; N uni2053 ; G 1976 -U 8279 ; WX 663 ; N uni2057 ; G 1977 -U 8287 ; WX 222 ; N uni205F ; G 1978 -U 8288 ; WX 0 ; N uni2060 ; G 1979 -U 8289 ; WX 0 ; N uni2061 ; G 1980 -U 8290 ; WX 0 ; N uni2062 ; G 1981 -U 8291 ; WX 0 ; N uni2063 ; G 1982 -U 8292 ; WX 0 ; N uni2064 ; G 1983 -U 8298 ; WX 0 ; N uni206A ; G 1984 -U 8299 ; WX 0 ; N uni206B ; G 1985 -U 8300 ; WX 0 ; N uni206C ; G 1986 -U 8301 ; WX 0 ; N uni206D ; G 1987 -U 8302 ; WX 0 ; N uni206E ; G 1988 -U 8303 ; WX 0 ; N uni206F ; G 1989 -U 8304 ; WX 401 ; N uni2070 ; G 1990 -U 8305 ; WX 201 ; N uni2071 ; G 1991 -U 8308 ; WX 401 ; N uni2074 ; G 1992 -U 8309 ; WX 401 ; N uni2075 ; G 1993 -U 8310 ; WX 401 ; N uni2076 ; G 1994 -U 8311 ; WX 401 ; N uni2077 ; G 1995 -U 8312 ; WX 401 ; N uni2078 ; G 1996 -U 8313 ; WX 401 ; N uni2079 ; G 1997 -U 8314 ; WX 528 ; N uni207A ; G 1998 -U 8315 ; WX 528 ; N uni207B ; G 1999 -U 8316 ; WX 528 ; N uni207C ; G 2000 -U 8317 ; WX 246 ; N uni207D ; G 2001 -U 8318 ; WX 246 ; N uni207E ; G 2002 -U 8319 ; WX 433 ; N uni207F ; G 2003 -U 8320 ; WX 401 ; N uni2080 ; G 2004 -U 8321 ; WX 401 ; N uni2081 ; G 2005 -U 8322 ; WX 401 ; N uni2082 ; G 2006 -U 8323 ; WX 401 ; N uni2083 ; G 2007 -U 8324 ; WX 401 ; N uni2084 ; G 2008 -U 8325 ; WX 401 ; N uni2085 ; G 2009 -U 8326 ; WX 401 ; N uni2086 ; G 2010 -U 8327 ; WX 401 ; N uni2087 ; G 2011 -U 8328 ; WX 401 ; N uni2088 ; G 2012 -U 8329 ; WX 401 ; N uni2089 ; G 2013 -U 8330 ; WX 528 ; N uni208A ; G 2014 -U 8331 ; WX 528 ; N uni208B ; G 2015 -U 8332 ; WX 528 ; N uni208C ; G 2016 -U 8333 ; WX 246 ; N uni208D ; G 2017 -U 8334 ; WX 246 ; N uni208E ; G 2018 -U 8336 ; WX 386 ; N uni2090 ; G 2019 -U 8337 ; WX 387 ; N uni2091 ; G 2020 -U 8338 ; WX 385 ; N uni2092 ; G 2021 -U 8339 ; WX 424 ; N uni2093 ; G 2022 -U 8340 ; WX 387 ; N uni2094 ; G 2023 -U 8341 ; WX 433 ; N uni2095 ; G 2024 -U 8342 ; WX 365 ; N uni2096 ; G 2025 -U 8343 ; WX 243 ; N uni2097 ; G 2026 -U 8344 ; WX 613 ; N uni2098 ; G 2027 -U 8345 ; WX 433 ; N uni2099 ; G 2028 -U 8346 ; WX 400 ; N uni209A ; G 2029 -U 8347 ; WX 337 ; N uni209B ; G 2030 -U 8348 ; WX 247 ; N uni209C ; G 2031 -U 8358 ; WX 636 ; N uni20A6 ; G 2032 -U 8364 ; WX 636 ; N Euro ; G 2033 -U 8367 ; WX 1057 ; N uni20AF ; G 2034 -U 8369 ; WX 706 ; N uni20B1 ; G 2035 -U 8372 ; WX 780 ; N uni20B4 ; G 2036 -U 8373 ; WX 636 ; N uni20B5 ; G 2037 -U 8376 ; WX 636 ; N uni20B8 ; G 2038 -U 8377 ; WX 636 ; N uni20B9 ; G 2039 -U 8378 ; WX 636 ; N uni20BA ; G 2040 -U 8381 ; WX 636 ; N uni20BD ; G 2041 -U 8450 ; WX 796 ; N uni2102 ; G 2042 -U 8451 ; WX 1119 ; N uni2103 ; G 2043 -U 8457 ; WX 1047 ; N uni2109 ; G 2044 -U 8461 ; WX 945 ; N uni210D ; G 2045 -U 8462 ; WX 644 ; N uni210E ; G 2046 -U 8463 ; WX 644 ; N uni210F ; G 2047 -U 8469 ; WX 914 ; N uni2115 ; G 2048 -U 8470 ; WX 946 ; N uni2116 ; G 2049 -U 8473 ; WX 752 ; N uni2119 ; G 2050 -U 8474 ; WX 871 ; N uni211A ; G 2051 -U 8477 ; WX 831 ; N uni211D ; G 2052 -U 8482 ; WX 1000 ; N trademark ; G 2053 -U 8484 ; WX 730 ; N uni2124 ; G 2054 -U 8486 ; WX 829 ; N uni2126 ; G 2055 -U 8487 ; WX 829 ; N uni2127 ; G 2056 -U 8490 ; WX 747 ; N uni212A ; G 2057 -U 8491 ; WX 722 ; N uni212B ; G 2058 -U 8498 ; WX 694 ; N uni2132 ; G 2059 -U 8508 ; WX 732 ; N uni213C ; G 2060 -U 8509 ; WX 660 ; N uni213D ; G 2061 -U 8510 ; WX 710 ; N uni213E ; G 2062 -U 8511 ; WX 944 ; N uni213F ; G 2063 -U 8512 ; WX 714 ; N uni2140 ; G 2064 -U 8513 ; WX 775 ; N uni2141 ; G 2065 -U 8514 ; WX 557 ; N uni2142 ; G 2066 -U 8515 ; WX 557 ; N uni2143 ; G 2067 -U 8516 ; WX 611 ; N uni2144 ; G 2068 -U 8517 ; WX 867 ; N uni2145 ; G 2069 -U 8518 ; WX 699 ; N uni2146 ; G 2070 -U 8519 ; WX 636 ; N uni2147 ; G 2071 -U 8520 ; WX 380 ; N uni2148 ; G 2072 -U 8521 ; WX 362 ; N uni2149 ; G 2073 -U 8523 ; WX 890 ; N uni214B ; G 2074 -U 8526 ; WX 514 ; N uni214E ; G 2075 -U 8528 ; WX 969 ; N uni2150 ; G 2076 -U 8529 ; WX 969 ; N uni2151 ; G 2077 -U 8530 ; WX 1370 ; N uni2152 ; G 2078 -U 8531 ; WX 969 ; N onethird ; G 2079 -U 8532 ; WX 969 ; N twothirds ; G 2080 -U 8533 ; WX 969 ; N uni2155 ; G 2081 -U 8534 ; WX 969 ; N uni2156 ; G 2082 -U 8535 ; WX 969 ; N uni2157 ; G 2083 -U 8536 ; WX 969 ; N uni2158 ; G 2084 -U 8537 ; WX 969 ; N uni2159 ; G 2085 -U 8538 ; WX 969 ; N uni215A ; G 2086 -U 8539 ; WX 969 ; N oneeighth ; G 2087 -U 8540 ; WX 969 ; N threeeighths ; G 2088 -U 8541 ; WX 969 ; N fiveeighths ; G 2089 -U 8542 ; WX 969 ; N seveneighths ; G 2090 -U 8543 ; WX 568 ; N uni215F ; G 2091 -U 8544 ; WX 395 ; N uni2160 ; G 2092 -U 8545 ; WX 680 ; N uni2161 ; G 2093 -U 8546 ; WX 964 ; N uni2162 ; G 2094 -U 8547 ; WX 999 ; N uni2163 ; G 2095 -U 8548 ; WX 722 ; N uni2164 ; G 2096 -U 8549 ; WX 1006 ; N uni2165 ; G 2097 -U 8550 ; WX 1291 ; N uni2166 ; G 2098 -U 8551 ; WX 1575 ; N uni2167 ; G 2099 -U 8552 ; WX 965 ; N uni2168 ; G 2100 -U 8553 ; WX 712 ; N uni2169 ; G 2101 -U 8554 ; WX 969 ; N uni216A ; G 2102 -U 8555 ; WX 1253 ; N uni216B ; G 2103 -U 8556 ; WX 664 ; N uni216C ; G 2104 -U 8557 ; WX 765 ; N uni216D ; G 2105 -U 8558 ; WX 802 ; N uni216E ; G 2106 -U 8559 ; WX 1024 ; N uni216F ; G 2107 -U 8560 ; WX 320 ; N uni2170 ; G 2108 -U 8561 ; WX 640 ; N uni2171 ; G 2109 -U 8562 ; WX 959 ; N uni2172 ; G 2110 -U 8563 ; WX 885 ; N uni2173 ; G 2111 -U 8564 ; WX 565 ; N uni2174 ; G 2112 -U 8565 ; WX 885 ; N uni2175 ; G 2113 -U 8566 ; WX 1205 ; N uni2176 ; G 2114 -U 8567 ; WX 1524 ; N uni2177 ; G 2115 -U 8568 ; WX 884 ; N uni2178 ; G 2116 -U 8569 ; WX 564 ; N uni2179 ; G 2117 -U 8570 ; WX 884 ; N uni217A ; G 2118 -U 8571 ; WX 1204 ; N uni217B ; G 2119 -U 8572 ; WX 320 ; N uni217C ; G 2120 -U 8573 ; WX 560 ; N uni217D ; G 2121 -U 8574 ; WX 640 ; N uni217E ; G 2122 -U 8575 ; WX 948 ; N uni217F ; G 2123 -U 8576 ; WX 1206 ; N uni2180 ; G 2124 -U 8577 ; WX 802 ; N uni2181 ; G 2125 -U 8578 ; WX 1206 ; N uni2182 ; G 2126 -U 8579 ; WX 765 ; N uni2183 ; G 2127 -U 8580 ; WX 560 ; N uni2184 ; G 2128 -U 8581 ; WX 765 ; N uni2185 ; G 2129 -U 8585 ; WX 969 ; N uni2189 ; G 2130 -U 8592 ; WX 838 ; N arrowleft ; G 2131 -U 8593 ; WX 838 ; N arrowup ; G 2132 -U 8594 ; WX 838 ; N arrowright ; G 2133 -U 8595 ; WX 838 ; N arrowdown ; G 2134 -U 8596 ; WX 838 ; N arrowboth ; G 2135 -U 8597 ; WX 838 ; N arrowupdn ; G 2136 -U 8598 ; WX 838 ; N uni2196 ; G 2137 -U 8599 ; WX 838 ; N uni2197 ; G 2138 -U 8600 ; WX 838 ; N uni2198 ; G 2139 -U 8601 ; WX 838 ; N uni2199 ; G 2140 -U 8602 ; WX 838 ; N uni219A ; G 2141 -U 8603 ; WX 838 ; N uni219B ; G 2142 -U 8604 ; WX 838 ; N uni219C ; G 2143 -U 8605 ; WX 838 ; N uni219D ; G 2144 -U 8606 ; WX 838 ; N uni219E ; G 2145 -U 8607 ; WX 838 ; N uni219F ; G 2146 -U 8608 ; WX 838 ; N uni21A0 ; G 2147 -U 8609 ; WX 838 ; N uni21A1 ; G 2148 -U 8610 ; WX 838 ; N uni21A2 ; G 2149 -U 8611 ; WX 838 ; N uni21A3 ; G 2150 -U 8612 ; WX 838 ; N uni21A4 ; G 2151 -U 8613 ; WX 838 ; N uni21A5 ; G 2152 -U 8614 ; WX 838 ; N uni21A6 ; G 2153 -U 8615 ; WX 838 ; N uni21A7 ; G 2154 -U 8616 ; WX 838 ; N arrowupdnbse ; G 2155 -U 8617 ; WX 838 ; N uni21A9 ; G 2156 -U 8618 ; WX 838 ; N uni21AA ; G 2157 -U 8619 ; WX 838 ; N uni21AB ; G 2158 -U 8620 ; WX 838 ; N uni21AC ; G 2159 -U 8621 ; WX 838 ; N uni21AD ; G 2160 -U 8622 ; WX 838 ; N uni21AE ; G 2161 -U 8623 ; WX 838 ; N uni21AF ; G 2162 -U 8624 ; WX 838 ; N uni21B0 ; G 2163 -U 8625 ; WX 838 ; N uni21B1 ; G 2164 -U 8626 ; WX 838 ; N uni21B2 ; G 2165 -U 8627 ; WX 838 ; N uni21B3 ; G 2166 -U 8628 ; WX 838 ; N uni21B4 ; G 2167 -U 8629 ; WX 838 ; N carriagereturn ; G 2168 -U 8630 ; WX 838 ; N uni21B6 ; G 2169 -U 8631 ; WX 838 ; N uni21B7 ; G 2170 -U 8632 ; WX 838 ; N uni21B8 ; G 2171 -U 8633 ; WX 838 ; N uni21B9 ; G 2172 -U 8634 ; WX 838 ; N uni21BA ; G 2173 -U 8635 ; WX 838 ; N uni21BB ; G 2174 -U 8636 ; WX 838 ; N uni21BC ; G 2175 -U 8637 ; WX 838 ; N uni21BD ; G 2176 -U 8638 ; WX 838 ; N uni21BE ; G 2177 -U 8639 ; WX 838 ; N uni21BF ; G 2178 -U 8640 ; WX 838 ; N uni21C0 ; G 2179 -U 8641 ; WX 838 ; N uni21C1 ; G 2180 -U 8642 ; WX 838 ; N uni21C2 ; G 2181 -U 8643 ; WX 838 ; N uni21C3 ; G 2182 -U 8644 ; WX 838 ; N uni21C4 ; G 2183 -U 8645 ; WX 838 ; N uni21C5 ; G 2184 -U 8646 ; WX 838 ; N uni21C6 ; G 2185 -U 8647 ; WX 838 ; N uni21C7 ; G 2186 -U 8648 ; WX 838 ; N uni21C8 ; G 2187 -U 8649 ; WX 838 ; N uni21C9 ; G 2188 -U 8650 ; WX 838 ; N uni21CA ; G 2189 -U 8651 ; WX 838 ; N uni21CB ; G 2190 -U 8652 ; WX 838 ; N uni21CC ; G 2191 -U 8653 ; WX 838 ; N uni21CD ; G 2192 -U 8654 ; WX 838 ; N uni21CE ; G 2193 -U 8655 ; WX 838 ; N uni21CF ; G 2194 -U 8656 ; WX 838 ; N arrowdblleft ; G 2195 -U 8657 ; WX 838 ; N arrowdblup ; G 2196 -U 8658 ; WX 838 ; N arrowdblright ; G 2197 -U 8659 ; WX 838 ; N arrowdbldown ; G 2198 -U 8660 ; WX 838 ; N arrowdblboth ; G 2199 -U 8661 ; WX 838 ; N uni21D5 ; G 2200 -U 8662 ; WX 838 ; N uni21D6 ; G 2201 -U 8663 ; WX 838 ; N uni21D7 ; G 2202 -U 8664 ; WX 838 ; N uni21D8 ; G 2203 -U 8665 ; WX 838 ; N uni21D9 ; G 2204 -U 8666 ; WX 838 ; N uni21DA ; G 2205 -U 8667 ; WX 838 ; N uni21DB ; G 2206 -U 8668 ; WX 838 ; N uni21DC ; G 2207 -U 8669 ; WX 838 ; N uni21DD ; G 2208 -U 8670 ; WX 838 ; N uni21DE ; G 2209 -U 8671 ; WX 838 ; N uni21DF ; G 2210 -U 8672 ; WX 838 ; N uni21E0 ; G 2211 -U 8673 ; WX 838 ; N uni21E1 ; G 2212 -U 8674 ; WX 838 ; N uni21E2 ; G 2213 -U 8675 ; WX 838 ; N uni21E3 ; G 2214 -U 8676 ; WX 838 ; N uni21E4 ; G 2215 -U 8677 ; WX 838 ; N uni21E5 ; G 2216 -U 8678 ; WX 838 ; N uni21E6 ; G 2217 -U 8679 ; WX 838 ; N uni21E7 ; G 2218 -U 8680 ; WX 838 ; N uni21E8 ; G 2219 -U 8681 ; WX 838 ; N uni21E9 ; G 2220 -U 8682 ; WX 838 ; N uni21EA ; G 2221 -U 8683 ; WX 838 ; N uni21EB ; G 2222 -U 8684 ; WX 838 ; N uni21EC ; G 2223 -U 8685 ; WX 838 ; N uni21ED ; G 2224 -U 8686 ; WX 838 ; N uni21EE ; G 2225 -U 8687 ; WX 838 ; N uni21EF ; G 2226 -U 8688 ; WX 838 ; N uni21F0 ; G 2227 -U 8689 ; WX 838 ; N uni21F1 ; G 2228 -U 8690 ; WX 838 ; N uni21F2 ; G 2229 -U 8691 ; WX 838 ; N uni21F3 ; G 2230 -U 8692 ; WX 838 ; N uni21F4 ; G 2231 -U 8693 ; WX 838 ; N uni21F5 ; G 2232 -U 8694 ; WX 838 ; N uni21F6 ; G 2233 -U 8695 ; WX 838 ; N uni21F7 ; G 2234 -U 8696 ; WX 838 ; N uni21F8 ; G 2235 -U 8697 ; WX 838 ; N uni21F9 ; G 2236 -U 8698 ; WX 838 ; N uni21FA ; G 2237 -U 8699 ; WX 838 ; N uni21FB ; G 2238 -U 8700 ; WX 838 ; N uni21FC ; G 2239 -U 8701 ; WX 838 ; N uni21FD ; G 2240 -U 8702 ; WX 838 ; N uni21FE ; G 2241 -U 8703 ; WX 838 ; N uni21FF ; G 2242 -U 8704 ; WX 604 ; N universal ; G 2243 -U 8706 ; WX 517 ; N partialdiff ; G 2244 -U 8707 ; WX 542 ; N existential ; G 2245 -U 8708 ; WX 542 ; N uni2204 ; G 2246 -U 8710 ; WX 698 ; N increment ; G 2247 -U 8711 ; WX 698 ; N gradient ; G 2248 -U 8712 ; WX 740 ; N element ; G 2249 -U 8713 ; WX 740 ; N notelement ; G 2250 -U 8715 ; WX 740 ; N suchthat ; G 2251 -U 8716 ; WX 740 ; N uni220C ; G 2252 -U 8719 ; WX 796 ; N product ; G 2253 -U 8720 ; WX 796 ; N uni2210 ; G 2254 -U 8721 ; WX 714 ; N summation ; G 2255 -U 8722 ; WX 838 ; N minus ; G 2256 -U 8723 ; WX 838 ; N uni2213 ; G 2257 -U 8724 ; WX 838 ; N uni2214 ; G 2258 -U 8725 ; WX 337 ; N uni2215 ; G 2259 -U 8727 ; WX 680 ; N asteriskmath ; G 2260 -U 8728 ; WX 490 ; N uni2218 ; G 2261 -U 8729 ; WX 490 ; N uni2219 ; G 2262 -U 8730 ; WX 637 ; N radical ; G 2263 -U 8731 ; WX 637 ; N uni221B ; G 2264 -U 8732 ; WX 637 ; N uni221C ; G 2265 -U 8733 ; WX 677 ; N proportional ; G 2266 -U 8734 ; WX 833 ; N infinity ; G 2267 -U 8735 ; WX 838 ; N orthogonal ; G 2268 -U 8736 ; WX 838 ; N angle ; G 2269 -U 8739 ; WX 291 ; N uni2223 ; G 2270 -U 8740 ; WX 479 ; N uni2224 ; G 2271 -U 8741 ; WX 462 ; N uni2225 ; G 2272 -U 8742 ; WX 634 ; N uni2226 ; G 2273 -U 8743 ; WX 732 ; N logicaland ; G 2274 -U 8744 ; WX 732 ; N logicalor ; G 2275 -U 8745 ; WX 838 ; N intersection ; G 2276 -U 8746 ; WX 838 ; N union ; G 2277 -U 8747 ; WX 521 ; N integral ; G 2278 -U 8748 ; WX 852 ; N uni222C ; G 2279 -U 8749 ; WX 1182 ; N uni222D ; G 2280 -U 8760 ; WX 838 ; N uni2238 ; G 2281 -U 8761 ; WX 838 ; N uni2239 ; G 2282 -U 8762 ; WX 838 ; N uni223A ; G 2283 -U 8763 ; WX 838 ; N uni223B ; G 2284 -U 8764 ; WX 838 ; N similar ; G 2285 -U 8765 ; WX 838 ; N uni223D ; G 2286 -U 8770 ; WX 838 ; N uni2242 ; G 2287 -U 8771 ; WX 838 ; N uni2243 ; G 2288 -U 8776 ; WX 838 ; N approxequal ; G 2289 -U 8784 ; WX 838 ; N uni2250 ; G 2290 -U 8785 ; WX 838 ; N uni2251 ; G 2291 -U 8786 ; WX 838 ; N uni2252 ; G 2292 -U 8787 ; WX 838 ; N uni2253 ; G 2293 -U 8788 ; WX 1033 ; N uni2254 ; G 2294 -U 8789 ; WX 1033 ; N uni2255 ; G 2295 -U 8800 ; WX 838 ; N notequal ; G 2296 -U 8801 ; WX 838 ; N equivalence ; G 2297 -U 8804 ; WX 838 ; N lessequal ; G 2298 -U 8805 ; WX 838 ; N greaterequal ; G 2299 -U 8834 ; WX 838 ; N propersubset ; G 2300 -U 8835 ; WX 838 ; N propersuperset ; G 2301 -U 8836 ; WX 838 ; N notsubset ; G 2302 -U 8837 ; WX 838 ; N uni2285 ; G 2303 -U 8838 ; WX 838 ; N reflexsubset ; G 2304 -U 8839 ; WX 838 ; N reflexsuperset ; G 2305 -U 8844 ; WX 838 ; N uni228C ; G 2306 -U 8845 ; WX 838 ; N uni228D ; G 2307 -U 8846 ; WX 838 ; N uni228E ; G 2308 -U 8847 ; WX 846 ; N uni228F ; G 2309 -U 8848 ; WX 846 ; N uni2290 ; G 2310 -U 8849 ; WX 846 ; N uni2291 ; G 2311 -U 8850 ; WX 846 ; N uni2292 ; G 2312 -U 8851 ; WX 838 ; N uni2293 ; G 2313 -U 8852 ; WX 838 ; N uni2294 ; G 2314 -U 8853 ; WX 838 ; N circleplus ; G 2315 -U 8854 ; WX 838 ; N uni2296 ; G 2316 -U 8855 ; WX 838 ; N circlemultiply ; G 2317 -U 8856 ; WX 838 ; N uni2298 ; G 2318 -U 8857 ; WX 838 ; N uni2299 ; G 2319 -U 8858 ; WX 838 ; N uni229A ; G 2320 -U 8859 ; WX 838 ; N uni229B ; G 2321 -U 8860 ; WX 838 ; N uni229C ; G 2322 -U 8861 ; WX 838 ; N uni229D ; G 2323 -U 8862 ; WX 838 ; N uni229E ; G 2324 -U 8863 ; WX 838 ; N uni229F ; G 2325 -U 8864 ; WX 838 ; N uni22A0 ; G 2326 -U 8865 ; WX 838 ; N uni22A1 ; G 2327 -U 8866 ; WX 860 ; N uni22A2 ; G 2328 -U 8867 ; WX 860 ; N uni22A3 ; G 2329 -U 8868 ; WX 940 ; N uni22A4 ; G 2330 -U 8869 ; WX 940 ; N perpendicular ; G 2331 -U 8870 ; WX 567 ; N uni22A6 ; G 2332 -U 8871 ; WX 567 ; N uni22A7 ; G 2333 -U 8872 ; WX 860 ; N uni22A8 ; G 2334 -U 8873 ; WX 860 ; N uni22A9 ; G 2335 -U 8874 ; WX 860 ; N uni22AA ; G 2336 -U 8875 ; WX 1031 ; N uni22AB ; G 2337 -U 8876 ; WX 860 ; N uni22AC ; G 2338 -U 8877 ; WX 860 ; N uni22AD ; G 2339 -U 8878 ; WX 860 ; N uni22AE ; G 2340 -U 8879 ; WX 1031 ; N uni22AF ; G 2341 -U 8900 ; WX 626 ; N uni22C4 ; G 2342 -U 8901 ; WX 342 ; N dotmath ; G 2343 -U 8962 ; WX 764 ; N house ; G 2344 -U 8968 ; WX 390 ; N uni2308 ; G 2345 -U 8969 ; WX 390 ; N uni2309 ; G 2346 -U 8970 ; WX 390 ; N uni230A ; G 2347 -U 8971 ; WX 390 ; N uni230B ; G 2348 -U 8976 ; WX 838 ; N revlogicalnot ; G 2349 -U 8977 ; WX 513 ; N uni2311 ; G 2350 -U 8984 ; WX 1000 ; N uni2318 ; G 2351 -U 8985 ; WX 838 ; N uni2319 ; G 2352 -U 8992 ; WX 521 ; N integraltp ; G 2353 -U 8993 ; WX 521 ; N integralbt ; G 2354 -U 8997 ; WX 1000 ; N uni2325 ; G 2355 -U 9000 ; WX 1443 ; N uni2328 ; G 2356 -U 9085 ; WX 919 ; N uni237D ; G 2357 -U 9115 ; WX 500 ; N uni239B ; G 2358 -U 9116 ; WX 500 ; N uni239C ; G 2359 -U 9117 ; WX 500 ; N uni239D ; G 2360 -U 9118 ; WX 500 ; N uni239E ; G 2361 -U 9119 ; WX 500 ; N uni239F ; G 2362 -U 9120 ; WX 500 ; N uni23A0 ; G 2363 -U 9121 ; WX 500 ; N uni23A1 ; G 2364 -U 9122 ; WX 500 ; N uni23A2 ; G 2365 -U 9123 ; WX 500 ; N uni23A3 ; G 2366 -U 9124 ; WX 500 ; N uni23A4 ; G 2367 -U 9125 ; WX 500 ; N uni23A5 ; G 2368 -U 9126 ; WX 500 ; N uni23A6 ; G 2369 -U 9127 ; WX 750 ; N uni23A7 ; G 2370 -U 9128 ; WX 750 ; N uni23A8 ; G 2371 -U 9129 ; WX 750 ; N uni23A9 ; G 2372 -U 9130 ; WX 750 ; N uni23AA ; G 2373 -U 9131 ; WX 750 ; N uni23AB ; G 2374 -U 9132 ; WX 750 ; N uni23AC ; G 2375 -U 9133 ; WX 750 ; N uni23AD ; G 2376 -U 9134 ; WX 521 ; N uni23AE ; G 2377 -U 9143 ; WX 637 ; N uni23B7 ; G 2378 -U 9167 ; WX 945 ; N uni23CF ; G 2379 -U 9251 ; WX 764 ; N uni2423 ; G 2380 -U 9472 ; WX 602 ; N SF100000 ; G 2381 -U 9473 ; WX 602 ; N uni2501 ; G 2382 -U 9474 ; WX 602 ; N SF110000 ; G 2383 -U 9475 ; WX 602 ; N uni2503 ; G 2384 -U 9476 ; WX 602 ; N uni2504 ; G 2385 -U 9477 ; WX 602 ; N uni2505 ; G 2386 -U 9478 ; WX 602 ; N uni2506 ; G 2387 -U 9479 ; WX 602 ; N uni2507 ; G 2388 -U 9480 ; WX 602 ; N uni2508 ; G 2389 -U 9481 ; WX 602 ; N uni2509 ; G 2390 -U 9482 ; WX 602 ; N uni250A ; G 2391 -U 9483 ; WX 602 ; N uni250B ; G 2392 -U 9484 ; WX 602 ; N SF010000 ; G 2393 -U 9485 ; WX 602 ; N uni250D ; G 2394 -U 9486 ; WX 602 ; N uni250E ; G 2395 -U 9487 ; WX 602 ; N uni250F ; G 2396 -U 9488 ; WX 602 ; N SF030000 ; G 2397 -U 9489 ; WX 602 ; N uni2511 ; G 2398 -U 9490 ; WX 602 ; N uni2512 ; G 2399 -U 9491 ; WX 602 ; N uni2513 ; G 2400 -U 9492 ; WX 602 ; N SF020000 ; G 2401 -U 9493 ; WX 602 ; N uni2515 ; G 2402 -U 9494 ; WX 602 ; N uni2516 ; G 2403 -U 9495 ; WX 602 ; N uni2517 ; G 2404 -U 9496 ; WX 602 ; N SF040000 ; G 2405 -U 9497 ; WX 602 ; N uni2519 ; G 2406 -U 9498 ; WX 602 ; N uni251A ; G 2407 -U 9499 ; WX 602 ; N uni251B ; G 2408 -U 9500 ; WX 602 ; N SF080000 ; G 2409 -U 9501 ; WX 602 ; N uni251D ; G 2410 -U 9502 ; WX 602 ; N uni251E ; G 2411 -U 9503 ; WX 602 ; N uni251F ; G 2412 -U 9504 ; WX 602 ; N uni2520 ; G 2413 -U 9505 ; WX 602 ; N uni2521 ; G 2414 -U 9506 ; WX 602 ; N uni2522 ; G 2415 -U 9507 ; WX 602 ; N uni2523 ; G 2416 -U 9508 ; WX 602 ; N SF090000 ; G 2417 -U 9509 ; WX 602 ; N uni2525 ; G 2418 -U 9510 ; WX 602 ; N uni2526 ; G 2419 -U 9511 ; WX 602 ; N uni2527 ; G 2420 -U 9512 ; WX 602 ; N uni2528 ; G 2421 -U 9513 ; WX 602 ; N uni2529 ; G 2422 -U 9514 ; WX 602 ; N uni252A ; G 2423 -U 9515 ; WX 602 ; N uni252B ; G 2424 -U 9516 ; WX 602 ; N SF060000 ; G 2425 -U 9517 ; WX 602 ; N uni252D ; G 2426 -U 9518 ; WX 602 ; N uni252E ; G 2427 -U 9519 ; WX 602 ; N uni252F ; G 2428 -U 9520 ; WX 602 ; N uni2530 ; G 2429 -U 9521 ; WX 602 ; N uni2531 ; G 2430 -U 9522 ; WX 602 ; N uni2532 ; G 2431 -U 9523 ; WX 602 ; N uni2533 ; G 2432 -U 9524 ; WX 602 ; N SF070000 ; G 2433 -U 9525 ; WX 602 ; N uni2535 ; G 2434 -U 9526 ; WX 602 ; N uni2536 ; G 2435 -U 9527 ; WX 602 ; N uni2537 ; G 2436 -U 9528 ; WX 602 ; N uni2538 ; G 2437 -U 9529 ; WX 602 ; N uni2539 ; G 2438 -U 9530 ; WX 602 ; N uni253A ; G 2439 -U 9531 ; WX 602 ; N uni253B ; G 2440 -U 9532 ; WX 602 ; N SF050000 ; G 2441 -U 9533 ; WX 602 ; N uni253D ; G 2442 -U 9534 ; WX 602 ; N uni253E ; G 2443 -U 9535 ; WX 602 ; N uni253F ; G 2444 -U 9536 ; WX 602 ; N uni2540 ; G 2445 -U 9537 ; WX 602 ; N uni2541 ; G 2446 -U 9538 ; WX 602 ; N uni2542 ; G 2447 -U 9539 ; WX 602 ; N uni2543 ; G 2448 -U 9540 ; WX 602 ; N uni2544 ; G 2449 -U 9541 ; WX 602 ; N uni2545 ; G 2450 -U 9542 ; WX 602 ; N uni2546 ; G 2451 -U 9543 ; WX 602 ; N uni2547 ; G 2452 -U 9544 ; WX 602 ; N uni2548 ; G 2453 -U 9545 ; WX 602 ; N uni2549 ; G 2454 -U 9546 ; WX 602 ; N uni254A ; G 2455 -U 9547 ; WX 602 ; N uni254B ; G 2456 -U 9548 ; WX 602 ; N uni254C ; G 2457 -U 9549 ; WX 602 ; N uni254D ; G 2458 -U 9550 ; WX 602 ; N uni254E ; G 2459 -U 9551 ; WX 602 ; N uni254F ; G 2460 -U 9552 ; WX 602 ; N SF430000 ; G 2461 -U 9553 ; WX 602 ; N SF240000 ; G 2462 -U 9554 ; WX 602 ; N SF510000 ; G 2463 -U 9555 ; WX 602 ; N SF520000 ; G 2464 -U 9556 ; WX 602 ; N SF390000 ; G 2465 -U 9557 ; WX 602 ; N SF220000 ; G 2466 -U 9558 ; WX 602 ; N SF210000 ; G 2467 -U 9559 ; WX 602 ; N SF250000 ; G 2468 -U 9560 ; WX 602 ; N SF500000 ; G 2469 -U 9561 ; WX 602 ; N SF490000 ; G 2470 -U 9562 ; WX 602 ; N SF380000 ; G 2471 -U 9563 ; WX 602 ; N SF280000 ; G 2472 -U 9564 ; WX 602 ; N SF270000 ; G 2473 -U 9565 ; WX 602 ; N SF260000 ; G 2474 -U 9566 ; WX 602 ; N SF360000 ; G 2475 -U 9567 ; WX 602 ; N SF370000 ; G 2476 -U 9568 ; WX 602 ; N SF420000 ; G 2477 -U 9569 ; WX 602 ; N SF190000 ; G 2478 -U 9570 ; WX 602 ; N SF200000 ; G 2479 -U 9571 ; WX 602 ; N SF230000 ; G 2480 -U 9572 ; WX 602 ; N SF470000 ; G 2481 -U 9573 ; WX 602 ; N SF480000 ; G 2482 -U 9574 ; WX 602 ; N SF410000 ; G 2483 -U 9575 ; WX 602 ; N SF450000 ; G 2484 -U 9576 ; WX 602 ; N SF460000 ; G 2485 -U 9577 ; WX 602 ; N SF400000 ; G 2486 -U 9578 ; WX 602 ; N SF540000 ; G 2487 -U 9579 ; WX 602 ; N SF530000 ; G 2488 -U 9580 ; WX 602 ; N SF440000 ; G 2489 -U 9581 ; WX 602 ; N uni256D ; G 2490 -U 9582 ; WX 602 ; N uni256E ; G 2491 -U 9583 ; WX 602 ; N uni256F ; G 2492 -U 9584 ; WX 602 ; N uni2570 ; G 2493 -U 9585 ; WX 602 ; N uni2571 ; G 2494 -U 9586 ; WX 602 ; N uni2572 ; G 2495 -U 9587 ; WX 602 ; N uni2573 ; G 2496 -U 9588 ; WX 602 ; N uni2574 ; G 2497 -U 9589 ; WX 602 ; N uni2575 ; G 2498 -U 9590 ; WX 602 ; N uni2576 ; G 2499 -U 9591 ; WX 602 ; N uni2577 ; G 2500 -U 9592 ; WX 602 ; N uni2578 ; G 2501 -U 9593 ; WX 602 ; N uni2579 ; G 2502 -U 9594 ; WX 602 ; N uni257A ; G 2503 -U 9595 ; WX 602 ; N uni257B ; G 2504 -U 9596 ; WX 602 ; N uni257C ; G 2505 -U 9597 ; WX 602 ; N uni257D ; G 2506 -U 9598 ; WX 602 ; N uni257E ; G 2507 -U 9599 ; WX 602 ; N uni257F ; G 2508 -U 9600 ; WX 769 ; N upblock ; G 2509 -U 9601 ; WX 769 ; N uni2581 ; G 2510 -U 9602 ; WX 769 ; N uni2582 ; G 2511 -U 9603 ; WX 769 ; N uni2583 ; G 2512 -U 9604 ; WX 769 ; N dnblock ; G 2513 -U 9605 ; WX 769 ; N uni2585 ; G 2514 -U 9606 ; WX 769 ; N uni2586 ; G 2515 -U 9607 ; WX 769 ; N uni2587 ; G 2516 -U 9608 ; WX 769 ; N block ; G 2517 -U 9609 ; WX 769 ; N uni2589 ; G 2518 -U 9610 ; WX 769 ; N uni258A ; G 2519 -U 9611 ; WX 769 ; N uni258B ; G 2520 -U 9612 ; WX 769 ; N lfblock ; G 2521 -U 9613 ; WX 769 ; N uni258D ; G 2522 -U 9614 ; WX 769 ; N uni258E ; G 2523 -U 9615 ; WX 769 ; N uni258F ; G 2524 -U 9616 ; WX 769 ; N rtblock ; G 2525 -U 9617 ; WX 769 ; N ltshade ; G 2526 -U 9618 ; WX 769 ; N shade ; G 2527 -U 9619 ; WX 769 ; N dkshade ; G 2528 -U 9620 ; WX 769 ; N uni2594 ; G 2529 -U 9621 ; WX 769 ; N uni2595 ; G 2530 -U 9622 ; WX 769 ; N uni2596 ; G 2531 -U 9623 ; WX 769 ; N uni2597 ; G 2532 -U 9624 ; WX 769 ; N uni2598 ; G 2533 -U 9625 ; WX 769 ; N uni2599 ; G 2534 -U 9626 ; WX 769 ; N uni259A ; G 2535 -U 9627 ; WX 769 ; N uni259B ; G 2536 -U 9628 ; WX 769 ; N uni259C ; G 2537 -U 9629 ; WX 769 ; N uni259D ; G 2538 -U 9630 ; WX 769 ; N uni259E ; G 2539 -U 9631 ; WX 769 ; N uni259F ; G 2540 -U 9632 ; WX 945 ; N filledbox ; G 2541 -U 9633 ; WX 945 ; N H22073 ; G 2542 -U 9634 ; WX 945 ; N uni25A2 ; G 2543 -U 9635 ; WX 945 ; N uni25A3 ; G 2544 -U 9636 ; WX 945 ; N uni25A4 ; G 2545 -U 9637 ; WX 945 ; N uni25A5 ; G 2546 -U 9638 ; WX 945 ; N uni25A6 ; G 2547 -U 9639 ; WX 945 ; N uni25A7 ; G 2548 -U 9640 ; WX 945 ; N uni25A8 ; G 2549 -U 9641 ; WX 945 ; N uni25A9 ; G 2550 -U 9642 ; WX 678 ; N H18543 ; G 2551 -U 9643 ; WX 678 ; N H18551 ; G 2552 -U 9644 ; WX 945 ; N filledrect ; G 2553 -U 9645 ; WX 945 ; N uni25AD ; G 2554 -U 9646 ; WX 550 ; N uni25AE ; G 2555 -U 9647 ; WX 550 ; N uni25AF ; G 2556 -U 9648 ; WX 769 ; N uni25B0 ; G 2557 -U 9649 ; WX 769 ; N uni25B1 ; G 2558 -U 9650 ; WX 769 ; N triagup ; G 2559 -U 9651 ; WX 769 ; N uni25B3 ; G 2560 -U 9652 ; WX 502 ; N uni25B4 ; G 2561 -U 9653 ; WX 502 ; N uni25B5 ; G 2562 -U 9654 ; WX 769 ; N uni25B6 ; G 2563 -U 9655 ; WX 769 ; N uni25B7 ; G 2564 -U 9656 ; WX 502 ; N uni25B8 ; G 2565 -U 9657 ; WX 502 ; N uni25B9 ; G 2566 -U 9658 ; WX 769 ; N triagrt ; G 2567 -U 9659 ; WX 769 ; N uni25BB ; G 2568 -U 9660 ; WX 769 ; N triagdn ; G 2569 -U 9661 ; WX 769 ; N uni25BD ; G 2570 -U 9662 ; WX 502 ; N uni25BE ; G 2571 -U 9663 ; WX 502 ; N uni25BF ; G 2572 -U 9664 ; WX 769 ; N uni25C0 ; G 2573 -U 9665 ; WX 769 ; N uni25C1 ; G 2574 -U 9666 ; WX 502 ; N uni25C2 ; G 2575 -U 9667 ; WX 502 ; N uni25C3 ; G 2576 -U 9668 ; WX 769 ; N triaglf ; G 2577 -U 9669 ; WX 769 ; N uni25C5 ; G 2578 -U 9670 ; WX 769 ; N uni25C6 ; G 2579 -U 9671 ; WX 769 ; N uni25C7 ; G 2580 -U 9672 ; WX 769 ; N uni25C8 ; G 2581 -U 9673 ; WX 873 ; N uni25C9 ; G 2582 -U 9674 ; WX 494 ; N lozenge ; G 2583 -U 9675 ; WX 873 ; N circle ; G 2584 -U 9676 ; WX 873 ; N uni25CC ; G 2585 -U 9677 ; WX 873 ; N uni25CD ; G 2586 -U 9678 ; WX 873 ; N uni25CE ; G 2587 -U 9679 ; WX 873 ; N H18533 ; G 2588 -U 9680 ; WX 873 ; N uni25D0 ; G 2589 -U 9681 ; WX 873 ; N uni25D1 ; G 2590 -U 9682 ; WX 873 ; N uni25D2 ; G 2591 -U 9683 ; WX 873 ; N uni25D3 ; G 2592 -U 9684 ; WX 873 ; N uni25D4 ; G 2593 -U 9685 ; WX 873 ; N uni25D5 ; G 2594 -U 9686 ; WX 527 ; N uni25D6 ; G 2595 -U 9687 ; WX 527 ; N uni25D7 ; G 2596 -U 9688 ; WX 791 ; N invbullet ; G 2597 -U 9689 ; WX 970 ; N invcircle ; G 2598 -U 9690 ; WX 970 ; N uni25DA ; G 2599 -U 9691 ; WX 970 ; N uni25DB ; G 2600 -U 9692 ; WX 387 ; N uni25DC ; G 2601 -U 9693 ; WX 387 ; N uni25DD ; G 2602 -U 9694 ; WX 387 ; N uni25DE ; G 2603 -U 9695 ; WX 387 ; N uni25DF ; G 2604 -U 9696 ; WX 873 ; N uni25E0 ; G 2605 -U 9697 ; WX 873 ; N uni25E1 ; G 2606 -U 9698 ; WX 769 ; N uni25E2 ; G 2607 -U 9699 ; WX 769 ; N uni25E3 ; G 2608 -U 9700 ; WX 769 ; N uni25E4 ; G 2609 -U 9701 ; WX 769 ; N uni25E5 ; G 2610 -U 9702 ; WX 590 ; N openbullet ; G 2611 -U 9703 ; WX 945 ; N uni25E7 ; G 2612 -U 9704 ; WX 945 ; N uni25E8 ; G 2613 -U 9705 ; WX 945 ; N uni25E9 ; G 2614 -U 9706 ; WX 945 ; N uni25EA ; G 2615 -U 9707 ; WX 945 ; N uni25EB ; G 2616 -U 9708 ; WX 769 ; N uni25EC ; G 2617 -U 9709 ; WX 769 ; N uni25ED ; G 2618 -U 9710 ; WX 769 ; N uni25EE ; G 2619 -U 9711 ; WX 1119 ; N uni25EF ; G 2620 -U 9712 ; WX 945 ; N uni25F0 ; G 2621 -U 9713 ; WX 945 ; N uni25F1 ; G 2622 -U 9714 ; WX 945 ; N uni25F2 ; G 2623 -U 9715 ; WX 945 ; N uni25F3 ; G 2624 -U 9716 ; WX 873 ; N uni25F4 ; G 2625 -U 9717 ; WX 873 ; N uni25F5 ; G 2626 -U 9718 ; WX 873 ; N uni25F6 ; G 2627 -U 9719 ; WX 873 ; N uni25F7 ; G 2628 -U 9720 ; WX 769 ; N uni25F8 ; G 2629 -U 9721 ; WX 769 ; N uni25F9 ; G 2630 -U 9722 ; WX 769 ; N uni25FA ; G 2631 -U 9723 ; WX 830 ; N uni25FB ; G 2632 -U 9724 ; WX 830 ; N uni25FC ; G 2633 -U 9725 ; WX 732 ; N uni25FD ; G 2634 -U 9726 ; WX 732 ; N uni25FE ; G 2635 -U 9727 ; WX 769 ; N uni25FF ; G 2636 -U 9728 ; WX 896 ; N uni2600 ; G 2637 -U 9784 ; WX 896 ; N uni2638 ; G 2638 -U 9785 ; WX 896 ; N uni2639 ; G 2639 -U 9786 ; WX 896 ; N smileface ; G 2640 -U 9787 ; WX 896 ; N invsmileface ; G 2641 -U 9788 ; WX 896 ; N sun ; G 2642 -U 9791 ; WX 614 ; N uni263F ; G 2643 -U 9792 ; WX 731 ; N female ; G 2644 -U 9793 ; WX 731 ; N uni2641 ; G 2645 -U 9794 ; WX 896 ; N male ; G 2646 -U 9795 ; WX 896 ; N uni2643 ; G 2647 -U 9796 ; WX 896 ; N uni2644 ; G 2648 -U 9797 ; WX 896 ; N uni2645 ; G 2649 -U 9798 ; WX 896 ; N uni2646 ; G 2650 -U 9799 ; WX 896 ; N uni2647 ; G 2651 -U 9824 ; WX 896 ; N spade ; G 2652 -U 9825 ; WX 896 ; N uni2661 ; G 2653 -U 9826 ; WX 896 ; N uni2662 ; G 2654 -U 9827 ; WX 896 ; N club ; G 2655 -U 9828 ; WX 896 ; N uni2664 ; G 2656 -U 9829 ; WX 896 ; N heart ; G 2657 -U 9830 ; WX 896 ; N diamond ; G 2658 -U 9831 ; WX 896 ; N uni2667 ; G 2659 -U 9833 ; WX 472 ; N uni2669 ; G 2660 -U 9834 ; WX 638 ; N musicalnote ; G 2661 -U 9835 ; WX 896 ; N musicalnotedbl ; G 2662 -U 9836 ; WX 896 ; N uni266C ; G 2663 -U 9837 ; WX 472 ; N uni266D ; G 2664 -U 9838 ; WX 357 ; N uni266E ; G 2665 -U 9839 ; WX 484 ; N uni266F ; G 2666 -U 10145 ; WX 838 ; N uni27A1 ; G 2667 -U 10181 ; WX 390 ; N uni27C5 ; G 2668 -U 10182 ; WX 390 ; N uni27C6 ; G 2669 -U 10208 ; WX 494 ; N uni27E0 ; G 2670 -U 10216 ; WX 390 ; N uni27E8 ; G 2671 -U 10217 ; WX 390 ; N uni27E9 ; G 2672 -U 10224 ; WX 838 ; N uni27F0 ; G 2673 -U 10225 ; WX 838 ; N uni27F1 ; G 2674 -U 10226 ; WX 838 ; N uni27F2 ; G 2675 -U 10227 ; WX 838 ; N uni27F3 ; G 2676 -U 10228 ; WX 1033 ; N uni27F4 ; G 2677 -U 10229 ; WX 1434 ; N uni27F5 ; G 2678 -U 10230 ; WX 1434 ; N uni27F6 ; G 2679 -U 10231 ; WX 1434 ; N uni27F7 ; G 2680 -U 10232 ; WX 1434 ; N uni27F8 ; G 2681 -U 10233 ; WX 1434 ; N uni27F9 ; G 2682 -U 10234 ; WX 1434 ; N uni27FA ; G 2683 -U 10235 ; WX 1434 ; N uni27FB ; G 2684 -U 10236 ; WX 1434 ; N uni27FC ; G 2685 -U 10237 ; WX 1434 ; N uni27FD ; G 2686 -U 10238 ; WX 1434 ; N uni27FE ; G 2687 -U 10239 ; WX 1434 ; N uni27FF ; G 2688 -U 10240 ; WX 732 ; N uni2800 ; G 2689 -U 10241 ; WX 732 ; N uni2801 ; G 2690 -U 10242 ; WX 732 ; N uni2802 ; G 2691 -U 10243 ; WX 732 ; N uni2803 ; G 2692 -U 10244 ; WX 732 ; N uni2804 ; G 2693 -U 10245 ; WX 732 ; N uni2805 ; G 2694 -U 10246 ; WX 732 ; N uni2806 ; G 2695 -U 10247 ; WX 732 ; N uni2807 ; G 2696 -U 10248 ; WX 732 ; N uni2808 ; G 2697 -U 10249 ; WX 732 ; N uni2809 ; G 2698 -U 10250 ; WX 732 ; N uni280A ; G 2699 -U 10251 ; WX 732 ; N uni280B ; G 2700 -U 10252 ; WX 732 ; N uni280C ; G 2701 -U 10253 ; WX 732 ; N uni280D ; G 2702 -U 10254 ; WX 732 ; N uni280E ; G 2703 -U 10255 ; WX 732 ; N uni280F ; G 2704 -U 10256 ; WX 732 ; N uni2810 ; G 2705 -U 10257 ; WX 732 ; N uni2811 ; G 2706 -U 10258 ; WX 732 ; N uni2812 ; G 2707 -U 10259 ; WX 732 ; N uni2813 ; G 2708 -U 10260 ; WX 732 ; N uni2814 ; G 2709 -U 10261 ; WX 732 ; N uni2815 ; G 2710 -U 10262 ; WX 732 ; N uni2816 ; G 2711 -U 10263 ; WX 732 ; N uni2817 ; G 2712 -U 10264 ; WX 732 ; N uni2818 ; G 2713 -U 10265 ; WX 732 ; N uni2819 ; G 2714 -U 10266 ; WX 732 ; N uni281A ; G 2715 -U 10267 ; WX 732 ; N uni281B ; G 2716 -U 10268 ; WX 732 ; N uni281C ; G 2717 -U 10269 ; WX 732 ; N uni281D ; G 2718 -U 10270 ; WX 732 ; N uni281E ; G 2719 -U 10271 ; WX 732 ; N uni281F ; G 2720 -U 10272 ; WX 732 ; N uni2820 ; G 2721 -U 10273 ; WX 732 ; N uni2821 ; G 2722 -U 10274 ; WX 732 ; N uni2822 ; G 2723 -U 10275 ; WX 732 ; N uni2823 ; G 2724 -U 10276 ; WX 732 ; N uni2824 ; G 2725 -U 10277 ; WX 732 ; N uni2825 ; G 2726 -U 10278 ; WX 732 ; N uni2826 ; G 2727 -U 10279 ; WX 732 ; N uni2827 ; G 2728 -U 10280 ; WX 732 ; N uni2828 ; G 2729 -U 10281 ; WX 732 ; N uni2829 ; G 2730 -U 10282 ; WX 732 ; N uni282A ; G 2731 -U 10283 ; WX 732 ; N uni282B ; G 2732 -U 10284 ; WX 732 ; N uni282C ; G 2733 -U 10285 ; WX 732 ; N uni282D ; G 2734 -U 10286 ; WX 732 ; N uni282E ; G 2735 -U 10287 ; WX 732 ; N uni282F ; G 2736 -U 10288 ; WX 732 ; N uni2830 ; G 2737 -U 10289 ; WX 732 ; N uni2831 ; G 2738 -U 10290 ; WX 732 ; N uni2832 ; G 2739 -U 10291 ; WX 732 ; N uni2833 ; G 2740 -U 10292 ; WX 732 ; N uni2834 ; G 2741 -U 10293 ; WX 732 ; N uni2835 ; G 2742 -U 10294 ; WX 732 ; N uni2836 ; G 2743 -U 10295 ; WX 732 ; N uni2837 ; G 2744 -U 10296 ; WX 732 ; N uni2838 ; G 2745 -U 10297 ; WX 732 ; N uni2839 ; G 2746 -U 10298 ; WX 732 ; N uni283A ; G 2747 -U 10299 ; WX 732 ; N uni283B ; G 2748 -U 10300 ; WX 732 ; N uni283C ; G 2749 -U 10301 ; WX 732 ; N uni283D ; G 2750 -U 10302 ; WX 732 ; N uni283E ; G 2751 -U 10303 ; WX 732 ; N uni283F ; G 2752 -U 10304 ; WX 732 ; N uni2840 ; G 2753 -U 10305 ; WX 732 ; N uni2841 ; G 2754 -U 10306 ; WX 732 ; N uni2842 ; G 2755 -U 10307 ; WX 732 ; N uni2843 ; G 2756 -U 10308 ; WX 732 ; N uni2844 ; G 2757 -U 10309 ; WX 732 ; N uni2845 ; G 2758 -U 10310 ; WX 732 ; N uni2846 ; G 2759 -U 10311 ; WX 732 ; N uni2847 ; G 2760 -U 10312 ; WX 732 ; N uni2848 ; G 2761 -U 10313 ; WX 732 ; N uni2849 ; G 2762 -U 10314 ; WX 732 ; N uni284A ; G 2763 -U 10315 ; WX 732 ; N uni284B ; G 2764 -U 10316 ; WX 732 ; N uni284C ; G 2765 -U 10317 ; WX 732 ; N uni284D ; G 2766 -U 10318 ; WX 732 ; N uni284E ; G 2767 -U 10319 ; WX 732 ; N uni284F ; G 2768 -U 10320 ; WX 732 ; N uni2850 ; G 2769 -U 10321 ; WX 732 ; N uni2851 ; G 2770 -U 10322 ; WX 732 ; N uni2852 ; G 2771 -U 10323 ; WX 732 ; N uni2853 ; G 2772 -U 10324 ; WX 732 ; N uni2854 ; G 2773 -U 10325 ; WX 732 ; N uni2855 ; G 2774 -U 10326 ; WX 732 ; N uni2856 ; G 2775 -U 10327 ; WX 732 ; N uni2857 ; G 2776 -U 10328 ; WX 732 ; N uni2858 ; G 2777 -U 10329 ; WX 732 ; N uni2859 ; G 2778 -U 10330 ; WX 732 ; N uni285A ; G 2779 -U 10331 ; WX 732 ; N uni285B ; G 2780 -U 10332 ; WX 732 ; N uni285C ; G 2781 -U 10333 ; WX 732 ; N uni285D ; G 2782 -U 10334 ; WX 732 ; N uni285E ; G 2783 -U 10335 ; WX 732 ; N uni285F ; G 2784 -U 10336 ; WX 732 ; N uni2860 ; G 2785 -U 10337 ; WX 732 ; N uni2861 ; G 2786 -U 10338 ; WX 732 ; N uni2862 ; G 2787 -U 10339 ; WX 732 ; N uni2863 ; G 2788 -U 10340 ; WX 732 ; N uni2864 ; G 2789 -U 10341 ; WX 732 ; N uni2865 ; G 2790 -U 10342 ; WX 732 ; N uni2866 ; G 2791 -U 10343 ; WX 732 ; N uni2867 ; G 2792 -U 10344 ; WX 732 ; N uni2868 ; G 2793 -U 10345 ; WX 732 ; N uni2869 ; G 2794 -U 10346 ; WX 732 ; N uni286A ; G 2795 -U 10347 ; WX 732 ; N uni286B ; G 2796 -U 10348 ; WX 732 ; N uni286C ; G 2797 -U 10349 ; WX 732 ; N uni286D ; G 2798 -U 10350 ; WX 732 ; N uni286E ; G 2799 -U 10351 ; WX 732 ; N uni286F ; G 2800 -U 10352 ; WX 732 ; N uni2870 ; G 2801 -U 10353 ; WX 732 ; N uni2871 ; G 2802 -U 10354 ; WX 732 ; N uni2872 ; G 2803 -U 10355 ; WX 732 ; N uni2873 ; G 2804 -U 10356 ; WX 732 ; N uni2874 ; G 2805 -U 10357 ; WX 732 ; N uni2875 ; G 2806 -U 10358 ; WX 732 ; N uni2876 ; G 2807 -U 10359 ; WX 732 ; N uni2877 ; G 2808 -U 10360 ; WX 732 ; N uni2878 ; G 2809 -U 10361 ; WX 732 ; N uni2879 ; G 2810 -U 10362 ; WX 732 ; N uni287A ; G 2811 -U 10363 ; WX 732 ; N uni287B ; G 2812 -U 10364 ; WX 732 ; N uni287C ; G 2813 -U 10365 ; WX 732 ; N uni287D ; G 2814 -U 10366 ; WX 732 ; N uni287E ; G 2815 -U 10367 ; WX 732 ; N uni287F ; G 2816 -U 10368 ; WX 732 ; N uni2880 ; G 2817 -U 10369 ; WX 732 ; N uni2881 ; G 2818 -U 10370 ; WX 732 ; N uni2882 ; G 2819 -U 10371 ; WX 732 ; N uni2883 ; G 2820 -U 10372 ; WX 732 ; N uni2884 ; G 2821 -U 10373 ; WX 732 ; N uni2885 ; G 2822 -U 10374 ; WX 732 ; N uni2886 ; G 2823 -U 10375 ; WX 732 ; N uni2887 ; G 2824 -U 10376 ; WX 732 ; N uni2888 ; G 2825 -U 10377 ; WX 732 ; N uni2889 ; G 2826 -U 10378 ; WX 732 ; N uni288A ; G 2827 -U 10379 ; WX 732 ; N uni288B ; G 2828 -U 10380 ; WX 732 ; N uni288C ; G 2829 -U 10381 ; WX 732 ; N uni288D ; G 2830 -U 10382 ; WX 732 ; N uni288E ; G 2831 -U 10383 ; WX 732 ; N uni288F ; G 2832 -U 10384 ; WX 732 ; N uni2890 ; G 2833 -U 10385 ; WX 732 ; N uni2891 ; G 2834 -U 10386 ; WX 732 ; N uni2892 ; G 2835 -U 10387 ; WX 732 ; N uni2893 ; G 2836 -U 10388 ; WX 732 ; N uni2894 ; G 2837 -U 10389 ; WX 732 ; N uni2895 ; G 2838 -U 10390 ; WX 732 ; N uni2896 ; G 2839 -U 10391 ; WX 732 ; N uni2897 ; G 2840 -U 10392 ; WX 732 ; N uni2898 ; G 2841 -U 10393 ; WX 732 ; N uni2899 ; G 2842 -U 10394 ; WX 732 ; N uni289A ; G 2843 -U 10395 ; WX 732 ; N uni289B ; G 2844 -U 10396 ; WX 732 ; N uni289C ; G 2845 -U 10397 ; WX 732 ; N uni289D ; G 2846 -U 10398 ; WX 732 ; N uni289E ; G 2847 -U 10399 ; WX 732 ; N uni289F ; G 2848 -U 10400 ; WX 732 ; N uni28A0 ; G 2849 -U 10401 ; WX 732 ; N uni28A1 ; G 2850 -U 10402 ; WX 732 ; N uni28A2 ; G 2851 -U 10403 ; WX 732 ; N uni28A3 ; G 2852 -U 10404 ; WX 732 ; N uni28A4 ; G 2853 -U 10405 ; WX 732 ; N uni28A5 ; G 2854 -U 10406 ; WX 732 ; N uni28A6 ; G 2855 -U 10407 ; WX 732 ; N uni28A7 ; G 2856 -U 10408 ; WX 732 ; N uni28A8 ; G 2857 -U 10409 ; WX 732 ; N uni28A9 ; G 2858 -U 10410 ; WX 732 ; N uni28AA ; G 2859 -U 10411 ; WX 732 ; N uni28AB ; G 2860 -U 10412 ; WX 732 ; N uni28AC ; G 2861 -U 10413 ; WX 732 ; N uni28AD ; G 2862 -U 10414 ; WX 732 ; N uni28AE ; G 2863 -U 10415 ; WX 732 ; N uni28AF ; G 2864 -U 10416 ; WX 732 ; N uni28B0 ; G 2865 -U 10417 ; WX 732 ; N uni28B1 ; G 2866 -U 10418 ; WX 732 ; N uni28B2 ; G 2867 -U 10419 ; WX 732 ; N uni28B3 ; G 2868 -U 10420 ; WX 732 ; N uni28B4 ; G 2869 -U 10421 ; WX 732 ; N uni28B5 ; G 2870 -U 10422 ; WX 732 ; N uni28B6 ; G 2871 -U 10423 ; WX 732 ; N uni28B7 ; G 2872 -U 10424 ; WX 732 ; N uni28B8 ; G 2873 -U 10425 ; WX 732 ; N uni28B9 ; G 2874 -U 10426 ; WX 732 ; N uni28BA ; G 2875 -U 10427 ; WX 732 ; N uni28BB ; G 2876 -U 10428 ; WX 732 ; N uni28BC ; G 2877 -U 10429 ; WX 732 ; N uni28BD ; G 2878 -U 10430 ; WX 732 ; N uni28BE ; G 2879 -U 10431 ; WX 732 ; N uni28BF ; G 2880 -U 10432 ; WX 732 ; N uni28C0 ; G 2881 -U 10433 ; WX 732 ; N uni28C1 ; G 2882 -U 10434 ; WX 732 ; N uni28C2 ; G 2883 -U 10435 ; WX 732 ; N uni28C3 ; G 2884 -U 10436 ; WX 732 ; N uni28C4 ; G 2885 -U 10437 ; WX 732 ; N uni28C5 ; G 2886 -U 10438 ; WX 732 ; N uni28C6 ; G 2887 -U 10439 ; WX 732 ; N uni28C7 ; G 2888 -U 10440 ; WX 732 ; N uni28C8 ; G 2889 -U 10441 ; WX 732 ; N uni28C9 ; G 2890 -U 10442 ; WX 732 ; N uni28CA ; G 2891 -U 10443 ; WX 732 ; N uni28CB ; G 2892 -U 10444 ; WX 732 ; N uni28CC ; G 2893 -U 10445 ; WX 732 ; N uni28CD ; G 2894 -U 10446 ; WX 732 ; N uni28CE ; G 2895 -U 10447 ; WX 732 ; N uni28CF ; G 2896 -U 10448 ; WX 732 ; N uni28D0 ; G 2897 -U 10449 ; WX 732 ; N uni28D1 ; G 2898 -U 10450 ; WX 732 ; N uni28D2 ; G 2899 -U 10451 ; WX 732 ; N uni28D3 ; G 2900 -U 10452 ; WX 732 ; N uni28D4 ; G 2901 -U 10453 ; WX 732 ; N uni28D5 ; G 2902 -U 10454 ; WX 732 ; N uni28D6 ; G 2903 -U 10455 ; WX 732 ; N uni28D7 ; G 2904 -U 10456 ; WX 732 ; N uni28D8 ; G 2905 -U 10457 ; WX 732 ; N uni28D9 ; G 2906 -U 10458 ; WX 732 ; N uni28DA ; G 2907 -U 10459 ; WX 732 ; N uni28DB ; G 2908 -U 10460 ; WX 732 ; N uni28DC ; G 2909 -U 10461 ; WX 732 ; N uni28DD ; G 2910 -U 10462 ; WX 732 ; N uni28DE ; G 2911 -U 10463 ; WX 732 ; N uni28DF ; G 2912 -U 10464 ; WX 732 ; N uni28E0 ; G 2913 -U 10465 ; WX 732 ; N uni28E1 ; G 2914 -U 10466 ; WX 732 ; N uni28E2 ; G 2915 -U 10467 ; WX 732 ; N uni28E3 ; G 2916 -U 10468 ; WX 732 ; N uni28E4 ; G 2917 -U 10469 ; WX 732 ; N uni28E5 ; G 2918 -U 10470 ; WX 732 ; N uni28E6 ; G 2919 -U 10471 ; WX 732 ; N uni28E7 ; G 2920 -U 10472 ; WX 732 ; N uni28E8 ; G 2921 -U 10473 ; WX 732 ; N uni28E9 ; G 2922 -U 10474 ; WX 732 ; N uni28EA ; G 2923 -U 10475 ; WX 732 ; N uni28EB ; G 2924 -U 10476 ; WX 732 ; N uni28EC ; G 2925 -U 10477 ; WX 732 ; N uni28ED ; G 2926 -U 10478 ; WX 732 ; N uni28EE ; G 2927 -U 10479 ; WX 732 ; N uni28EF ; G 2928 -U 10480 ; WX 732 ; N uni28F0 ; G 2929 -U 10481 ; WX 732 ; N uni28F1 ; G 2930 -U 10482 ; WX 732 ; N uni28F2 ; G 2931 -U 10483 ; WX 732 ; N uni28F3 ; G 2932 -U 10484 ; WX 732 ; N uni28F4 ; G 2933 -U 10485 ; WX 732 ; N uni28F5 ; G 2934 -U 10486 ; WX 732 ; N uni28F6 ; G 2935 -U 10487 ; WX 732 ; N uni28F7 ; G 2936 -U 10488 ; WX 732 ; N uni28F8 ; G 2937 -U 10489 ; WX 732 ; N uni28F9 ; G 2938 -U 10490 ; WX 732 ; N uni28FA ; G 2939 -U 10491 ; WX 732 ; N uni28FB ; G 2940 -U 10492 ; WX 732 ; N uni28FC ; G 2941 -U 10493 ; WX 732 ; N uni28FD ; G 2942 -U 10494 ; WX 732 ; N uni28FE ; G 2943 -U 10495 ; WX 732 ; N uni28FF ; G 2944 -U 10496 ; WX 838 ; N uni2900 ; G 2945 -U 10497 ; WX 838 ; N uni2901 ; G 2946 -U 10498 ; WX 838 ; N uni2902 ; G 2947 -U 10499 ; WX 838 ; N uni2903 ; G 2948 -U 10500 ; WX 838 ; N uni2904 ; G 2949 -U 10501 ; WX 838 ; N uni2905 ; G 2950 -U 10502 ; WX 838 ; N uni2906 ; G 2951 -U 10503 ; WX 838 ; N uni2907 ; G 2952 -U 10504 ; WX 838 ; N uni2908 ; G 2953 -U 10505 ; WX 838 ; N uni2909 ; G 2954 -U 10506 ; WX 838 ; N uni290A ; G 2955 -U 10507 ; WX 838 ; N uni290B ; G 2956 -U 10508 ; WX 838 ; N uni290C ; G 2957 -U 10509 ; WX 838 ; N uni290D ; G 2958 -U 10510 ; WX 838 ; N uni290E ; G 2959 -U 10511 ; WX 838 ; N uni290F ; G 2960 -U 10512 ; WX 838 ; N uni2910 ; G 2961 -U 10513 ; WX 838 ; N uni2911 ; G 2962 -U 10514 ; WX 838 ; N uni2912 ; G 2963 -U 10515 ; WX 838 ; N uni2913 ; G 2964 -U 10516 ; WX 838 ; N uni2914 ; G 2965 -U 10517 ; WX 838 ; N uni2915 ; G 2966 -U 10518 ; WX 838 ; N uni2916 ; G 2967 -U 10519 ; WX 838 ; N uni2917 ; G 2968 -U 10520 ; WX 838 ; N uni2918 ; G 2969 -U 10521 ; WX 838 ; N uni2919 ; G 2970 -U 10522 ; WX 838 ; N uni291A ; G 2971 -U 10523 ; WX 838 ; N uni291B ; G 2972 -U 10524 ; WX 838 ; N uni291C ; G 2973 -U 10525 ; WX 838 ; N uni291D ; G 2974 -U 10526 ; WX 838 ; N uni291E ; G 2975 -U 10527 ; WX 838 ; N uni291F ; G 2976 -U 10528 ; WX 838 ; N uni2920 ; G 2977 -U 10529 ; WX 838 ; N uni2921 ; G 2978 -U 10530 ; WX 838 ; N uni2922 ; G 2979 -U 10531 ; WX 838 ; N uni2923 ; G 2980 -U 10532 ; WX 838 ; N uni2924 ; G 2981 -U 10533 ; WX 838 ; N uni2925 ; G 2982 -U 10534 ; WX 838 ; N uni2926 ; G 2983 -U 10535 ; WX 838 ; N uni2927 ; G 2984 -U 10536 ; WX 838 ; N uni2928 ; G 2985 -U 10537 ; WX 838 ; N uni2929 ; G 2986 -U 10538 ; WX 838 ; N uni292A ; G 2987 -U 10539 ; WX 838 ; N uni292B ; G 2988 -U 10540 ; WX 838 ; N uni292C ; G 2989 -U 10541 ; WX 838 ; N uni292D ; G 2990 -U 10542 ; WX 838 ; N uni292E ; G 2991 -U 10543 ; WX 838 ; N uni292F ; G 2992 -U 10544 ; WX 838 ; N uni2930 ; G 2993 -U 10545 ; WX 838 ; N uni2931 ; G 2994 -U 10546 ; WX 838 ; N uni2932 ; G 2995 -U 10547 ; WX 838 ; N uni2933 ; G 2996 -U 10548 ; WX 838 ; N uni2934 ; G 2997 -U 10549 ; WX 838 ; N uni2935 ; G 2998 -U 10550 ; WX 838 ; N uni2936 ; G 2999 -U 10551 ; WX 838 ; N uni2937 ; G 3000 -U 10552 ; WX 838 ; N uni2938 ; G 3001 -U 10553 ; WX 838 ; N uni2939 ; G 3002 -U 10554 ; WX 838 ; N uni293A ; G 3003 -U 10555 ; WX 838 ; N uni293B ; G 3004 -U 10556 ; WX 838 ; N uni293C ; G 3005 -U 10557 ; WX 838 ; N uni293D ; G 3006 -U 10558 ; WX 838 ; N uni293E ; G 3007 -U 10559 ; WX 838 ; N uni293F ; G 3008 -U 10560 ; WX 838 ; N uni2940 ; G 3009 -U 10561 ; WX 838 ; N uni2941 ; G 3010 -U 10562 ; WX 838 ; N uni2942 ; G 3011 -U 10563 ; WX 838 ; N uni2943 ; G 3012 -U 10564 ; WX 838 ; N uni2944 ; G 3013 -U 10565 ; WX 838 ; N uni2945 ; G 3014 -U 10566 ; WX 838 ; N uni2946 ; G 3015 -U 10567 ; WX 838 ; N uni2947 ; G 3016 -U 10568 ; WX 838 ; N uni2948 ; G 3017 -U 10569 ; WX 838 ; N uni2949 ; G 3018 -U 10570 ; WX 838 ; N uni294A ; G 3019 -U 10571 ; WX 838 ; N uni294B ; G 3020 -U 10572 ; WX 838 ; N uni294C ; G 3021 -U 10573 ; WX 838 ; N uni294D ; G 3022 -U 10574 ; WX 838 ; N uni294E ; G 3023 -U 10575 ; WX 838 ; N uni294F ; G 3024 -U 10576 ; WX 838 ; N uni2950 ; G 3025 -U 10577 ; WX 838 ; N uni2951 ; G 3026 -U 10578 ; WX 838 ; N uni2952 ; G 3027 -U 10579 ; WX 838 ; N uni2953 ; G 3028 -U 10580 ; WX 838 ; N uni2954 ; G 3029 -U 10581 ; WX 838 ; N uni2955 ; G 3030 -U 10582 ; WX 838 ; N uni2956 ; G 3031 -U 10583 ; WX 838 ; N uni2957 ; G 3032 -U 10584 ; WX 838 ; N uni2958 ; G 3033 -U 10585 ; WX 838 ; N uni2959 ; G 3034 -U 10586 ; WX 838 ; N uni295A ; G 3035 -U 10587 ; WX 838 ; N uni295B ; G 3036 -U 10588 ; WX 838 ; N uni295C ; G 3037 -U 10589 ; WX 838 ; N uni295D ; G 3038 -U 10590 ; WX 838 ; N uni295E ; G 3039 -U 10591 ; WX 838 ; N uni295F ; G 3040 -U 10592 ; WX 838 ; N uni2960 ; G 3041 -U 10593 ; WX 838 ; N uni2961 ; G 3042 -U 10594 ; WX 838 ; N uni2962 ; G 3043 -U 10595 ; WX 838 ; N uni2963 ; G 3044 -U 10596 ; WX 838 ; N uni2964 ; G 3045 -U 10597 ; WX 838 ; N uni2965 ; G 3046 -U 10598 ; WX 838 ; N uni2966 ; G 3047 -U 10599 ; WX 838 ; N uni2967 ; G 3048 -U 10600 ; WX 838 ; N uni2968 ; G 3049 -U 10601 ; WX 838 ; N uni2969 ; G 3050 -U 10602 ; WX 838 ; N uni296A ; G 3051 -U 10603 ; WX 838 ; N uni296B ; G 3052 -U 10604 ; WX 838 ; N uni296C ; G 3053 -U 10605 ; WX 838 ; N uni296D ; G 3054 -U 10606 ; WX 838 ; N uni296E ; G 3055 -U 10607 ; WX 838 ; N uni296F ; G 3056 -U 10608 ; WX 838 ; N uni2970 ; G 3057 -U 10609 ; WX 838 ; N uni2971 ; G 3058 -U 10610 ; WX 838 ; N uni2972 ; G 3059 -U 10611 ; WX 838 ; N uni2973 ; G 3060 -U 10612 ; WX 838 ; N uni2974 ; G 3061 -U 10613 ; WX 838 ; N uni2975 ; G 3062 -U 10614 ; WX 838 ; N uni2976 ; G 3063 -U 10615 ; WX 981 ; N uni2977 ; G 3064 -U 10616 ; WX 838 ; N uni2978 ; G 3065 -U 10617 ; WX 838 ; N uni2979 ; G 3066 -U 10618 ; WX 984 ; N uni297A ; G 3067 -U 10619 ; WX 838 ; N uni297B ; G 3068 -U 10620 ; WX 838 ; N uni297C ; G 3069 -U 10621 ; WX 838 ; N uni297D ; G 3070 -U 10622 ; WX 838 ; N uni297E ; G 3071 -U 10623 ; WX 838 ; N uni297F ; G 3072 -U 10731 ; WX 494 ; N uni29EB ; G 3073 -U 10764 ; WX 1513 ; N uni2A0C ; G 3074 -U 10765 ; WX 521 ; N uni2A0D ; G 3075 -U 10766 ; WX 521 ; N uni2A0E ; G 3076 -U 10799 ; WX 838 ; N uni2A2F ; G 3077 -U 10858 ; WX 838 ; N uni2A6A ; G 3078 -U 10859 ; WX 838 ; N uni2A6B ; G 3079 -U 11008 ; WX 838 ; N uni2B00 ; G 3080 -U 11009 ; WX 838 ; N uni2B01 ; G 3081 -U 11010 ; WX 838 ; N uni2B02 ; G 3082 -U 11011 ; WX 838 ; N uni2B03 ; G 3083 -U 11012 ; WX 838 ; N uni2B04 ; G 3084 -U 11013 ; WX 838 ; N uni2B05 ; G 3085 -U 11014 ; WX 838 ; N uni2B06 ; G 3086 -U 11015 ; WX 838 ; N uni2B07 ; G 3087 -U 11016 ; WX 838 ; N uni2B08 ; G 3088 -U 11017 ; WX 838 ; N uni2B09 ; G 3089 -U 11018 ; WX 838 ; N uni2B0A ; G 3090 -U 11019 ; WX 838 ; N uni2B0B ; G 3091 -U 11020 ; WX 838 ; N uni2B0C ; G 3092 -U 11021 ; WX 838 ; N uni2B0D ; G 3093 -U 11022 ; WX 838 ; N uni2B0E ; G 3094 -U 11023 ; WX 838 ; N uni2B0F ; G 3095 -U 11024 ; WX 838 ; N uni2B10 ; G 3096 -U 11025 ; WX 838 ; N uni2B11 ; G 3097 -U 11026 ; WX 945 ; N uni2B12 ; G 3098 -U 11027 ; WX 945 ; N uni2B13 ; G 3099 -U 11028 ; WX 945 ; N uni2B14 ; G 3100 -U 11029 ; WX 945 ; N uni2B15 ; G 3101 -U 11030 ; WX 769 ; N uni2B16 ; G 3102 -U 11031 ; WX 769 ; N uni2B17 ; G 3103 -U 11032 ; WX 769 ; N uni2B18 ; G 3104 -U 11033 ; WX 769 ; N uni2B19 ; G 3105 -U 11034 ; WX 945 ; N uni2B1A ; G 3106 -U 11360 ; WX 664 ; N uni2C60 ; G 3107 -U 11361 ; WX 320 ; N uni2C61 ; G 3108 -U 11363 ; WX 673 ; N uni2C63 ; G 3109 -U 11364 ; WX 753 ; N uni2C64 ; G 3110 -U 11367 ; WX 872 ; N uni2C67 ; G 3111 -U 11368 ; WX 644 ; N uni2C68 ; G 3112 -U 11369 ; WX 747 ; N uni2C69 ; G 3113 -U 11370 ; WX 606 ; N uni2C6A ; G 3114 -U 11371 ; WX 695 ; N uni2C6B ; G 3115 -U 11372 ; WX 527 ; N uni2C6C ; G 3116 -U 11373 ; WX 782 ; N uni2C6D ; G 3117 -U 11374 ; WX 1024 ; N uni2C6E ; G 3118 -U 11375 ; WX 722 ; N uni2C6F ; G 3119 -U 11376 ; WX 782 ; N uni2C70 ; G 3120 -U 11377 ; WX 663 ; N uni2C71 ; G 3121 -U 11378 ; WX 1130 ; N uni2C72 ; G 3122 -U 11379 ; WX 939 ; N uni2C73 ; G 3123 -U 11381 ; WX 740 ; N uni2C75 ; G 3124 -U 11382 ; WX 556 ; N uni2C76 ; G 3125 -U 11383 ; WX 700 ; N uni2C77 ; G 3126 -U 11385 ; WX 501 ; N uni2C79 ; G 3127 -U 11386 ; WX 602 ; N uni2C7A ; G 3128 -U 11387 ; WX 553 ; N uni2C7B ; G 3129 -U 11388 ; WX 264 ; N uni2C7C ; G 3130 -U 11389 ; WX 455 ; N uni2C7D ; G 3131 -U 11390 ; WX 685 ; N uni2C7E ; G 3132 -U 11391 ; WX 695 ; N uni2C7F ; G 3133 -U 11520 ; WX 773 ; N uni2D00 ; G 3134 -U 11521 ; WX 635 ; N uni2D01 ; G 3135 -U 11522 ; WX 633 ; N uni2D02 ; G 3136 -U 11523 ; WX 658 ; N uni2D03 ; G 3137 -U 11524 ; WX 631 ; N uni2D04 ; G 3138 -U 11525 ; WX 962 ; N uni2D05 ; G 3139 -U 11526 ; WX 756 ; N uni2D06 ; G 3140 -U 11527 ; WX 960 ; N uni2D07 ; G 3141 -U 11528 ; WX 617 ; N uni2D08 ; G 3142 -U 11529 ; WX 646 ; N uni2D09 ; G 3143 -U 11530 ; WX 962 ; N uni2D0A ; G 3144 -U 11531 ; WX 632 ; N uni2D0B ; G 3145 -U 11532 ; WX 646 ; N uni2D0C ; G 3146 -U 11533 ; WX 962 ; N uni2D0D ; G 3147 -U 11534 ; WX 645 ; N uni2D0E ; G 3148 -U 11535 ; WX 866 ; N uni2D0F ; G 3149 -U 11536 ; WX 961 ; N uni2D10 ; G 3150 -U 11537 ; WX 645 ; N uni2D11 ; G 3151 -U 11538 ; WX 645 ; N uni2D12 ; G 3152 -U 11539 ; WX 959 ; N uni2D13 ; G 3153 -U 11540 ; WX 945 ; N uni2D14 ; G 3154 -U 11541 ; WX 863 ; N uni2D15 ; G 3155 -U 11542 ; WX 644 ; N uni2D16 ; G 3156 -U 11543 ; WX 646 ; N uni2D17 ; G 3157 -U 11544 ; WX 645 ; N uni2D18 ; G 3158 -U 11545 ; WX 649 ; N uni2D19 ; G 3159 -U 11546 ; WX 688 ; N uni2D1A ; G 3160 -U 11547 ; WX 634 ; N uni2D1B ; G 3161 -U 11548 ; WX 982 ; N uni2D1C ; G 3162 -U 11549 ; WX 681 ; N uni2D1D ; G 3163 -U 11550 ; WX 676 ; N uni2D1E ; G 3164 -U 11551 ; WX 852 ; N uni2D1F ; G 3165 -U 11552 ; WX 957 ; N uni2D20 ; G 3166 -U 11553 ; WX 632 ; N uni2D21 ; G 3167 -U 11554 ; WX 645 ; N uni2D22 ; G 3168 -U 11555 ; WX 646 ; N uni2D23 ; G 3169 -U 11556 ; WX 749 ; N uni2D24 ; G 3170 -U 11557 ; WX 914 ; N uni2D25 ; G 3171 -U 11800 ; WX 536 ; N uni2E18 ; G 3172 -U 11807 ; WX 838 ; N uni2E1F ; G 3173 -U 11810 ; WX 390 ; N uni2E22 ; G 3174 -U 11811 ; WX 390 ; N uni2E23 ; G 3175 -U 11812 ; WX 390 ; N uni2E24 ; G 3176 -U 11813 ; WX 390 ; N uni2E25 ; G 3177 -U 11822 ; WX 536 ; N uni2E2E ; G 3178 -U 42564 ; WX 685 ; N uniA644 ; G 3179 -U 42565 ; WX 513 ; N uniA645 ; G 3180 -U 42566 ; WX 395 ; N uniA646 ; G 3181 -U 42567 ; WX 392 ; N uniA647 ; G 3182 -U 42576 ; WX 1104 ; N uniA650 ; G 3183 -U 42577 ; WX 888 ; N uniA651 ; G 3184 -U 42580 ; WX 1193 ; N uniA654 ; G 3185 -U 42581 ; WX 871 ; N uniA655 ; G 3186 -U 42582 ; WX 1140 ; N uniA656 ; G 3187 -U 42583 ; WX 899 ; N uniA657 ; G 3188 -U 42648 ; WX 1416 ; N uniA698 ; G 3189 -U 42649 ; WX 999 ; N uniA699 ; G 3190 -U 42760 ; WX 493 ; N uniA708 ; G 3191 -U 42761 ; WX 493 ; N uniA709 ; G 3192 -U 42762 ; WX 493 ; N uniA70A ; G 3193 -U 42763 ; WX 493 ; N uniA70B ; G 3194 -U 42764 ; WX 493 ; N uniA70C ; G 3195 -U 42765 ; WX 493 ; N uniA70D ; G 3196 -U 42766 ; WX 493 ; N uniA70E ; G 3197 -U 42767 ; WX 493 ; N uniA70F ; G 3198 -U 42768 ; WX 493 ; N uniA710 ; G 3199 -U 42769 ; WX 493 ; N uniA711 ; G 3200 -U 42770 ; WX 493 ; N uniA712 ; G 3201 -U 42771 ; WX 493 ; N uniA713 ; G 3202 -U 42772 ; WX 493 ; N uniA714 ; G 3203 -U 42773 ; WX 493 ; N uniA715 ; G 3204 -U 42774 ; WX 493 ; N uniA716 ; G 3205 -U 42779 ; WX 369 ; N uniA71B ; G 3206 -U 42780 ; WX 369 ; N uniA71C ; G 3207 -U 42781 ; WX 253 ; N uniA71D ; G 3208 -U 42782 ; WX 253 ; N uniA71E ; G 3209 -U 42783 ; WX 253 ; N uniA71F ; G 3210 -U 42790 ; WX 872 ; N uniA726 ; G 3211 -U 42791 ; WX 634 ; N uniA727 ; G 3212 -U 42792 ; WX 843 ; N uniA728 ; G 3213 -U 42793 ; WX 754 ; N uniA729 ; G 3214 -U 42794 ; WX 612 ; N uniA72A ; G 3215 -U 42795 ; WX 560 ; N uniA72B ; G 3216 -U 42796 ; WX 548 ; N uniA72C ; G 3217 -U 42797 ; WX 531 ; N uniA72D ; G 3218 -U 42798 ; WX 629 ; N uniA72E ; G 3219 -U 42799 ; WX 610 ; N uniA72F ; G 3220 -U 42800 ; WX 514 ; N uniA730 ; G 3221 -U 42801 ; WX 513 ; N uniA731 ; G 3222 -U 42802 ; WX 1195 ; N uniA732 ; G 3223 -U 42803 ; WX 944 ; N uniA733 ; G 3224 -U 42804 ; WX 1226 ; N uniA734 ; G 3225 -U 42805 ; WX 950 ; N uniA735 ; G 3226 -U 42806 ; WX 1149 ; N uniA736 ; G 3227 -U 42807 ; WX 934 ; N uniA737 ; G 3228 -U 42808 ; WX 968 ; N uniA738 ; G 3229 -U 42809 ; WX 784 ; N uniA739 ; G 3230 -U 42810 ; WX 968 ; N uniA73A ; G 3231 -U 42811 ; WX 784 ; N uniA73B ; G 3232 -U 42812 ; WX 962 ; N uniA73C ; G 3233 -U 42813 ; WX 824 ; N uniA73D ; G 3234 -U 42814 ; WX 765 ; N uniA73E ; G 3235 -U 42815 ; WX 560 ; N uniA73F ; G 3236 -U 42816 ; WX 774 ; N uniA740 ; G 3237 -U 42817 ; WX 625 ; N uniA741 ; G 3238 -U 42822 ; WX 787 ; N uniA746 ; G 3239 -U 42823 ; WX 434 ; N uniA747 ; G 3240 -U 42826 ; WX 932 ; N uniA74A ; G 3241 -U 42827 ; WX 711 ; N uniA74B ; G 3242 -U 42830 ; WX 1416 ; N uniA74E ; G 3243 -U 42831 ; WX 999 ; N uniA74F ; G 3244 -U 42856 ; WX 707 ; N uniA768 ; G 3245 -U 42857 ; WX 610 ; N uniA769 ; G 3246 -U 42875 ; WX 612 ; N uniA77B ; G 3247 -U 42876 ; WX 478 ; N uniA77C ; G 3248 -U 42880 ; WX 664 ; N uniA780 ; G 3249 -U 42881 ; WX 320 ; N uniA781 ; G 3250 -U 42882 ; WX 843 ; N uniA782 ; G 3251 -U 42883 ; WX 644 ; N uniA783 ; G 3252 -U 42884 ; WX 612 ; N uniA784 ; G 3253 -U 42885 ; WX 478 ; N uniA785 ; G 3254 -U 42886 ; WX 765 ; N uniA786 ; G 3255 -U 42887 ; WX 560 ; N uniA787 ; G 3256 -U 42891 ; WX 402 ; N uniA78B ; G 3257 -U 42892 ; WX 275 ; N uniA78C ; G 3258 -U 42893 ; WX 773 ; N uniA78D ; G 3259 -U 42896 ; WX 875 ; N uniA790 ; G 3260 -U 42897 ; WX 644 ; N uniA791 ; G 3261 -U 42922 ; WX 872 ; N uniA7AA ; G 3262 -U 43000 ; WX 549 ; N uniA7F8 ; G 3263 -U 43001 ; WX 623 ; N uniA7F9 ; G 3264 -U 43002 ; WX 957 ; N uniA7FA ; G 3265 -U 43003 ; WX 694 ; N uniA7FB ; G 3266 -U 43004 ; WX 673 ; N uniA7FC ; G 3267 -U 43005 ; WX 1024 ; N uniA7FD ; G 3268 -U 43006 ; WX 395 ; N uniA7FE ; G 3269 -U 43007 ; WX 1201 ; N uniA7FF ; G 3270 -U 62464 ; WX 654 ; N uniF400 ; G 3271 -U 62465 ; WX 665 ; N uniF401 ; G 3272 -U 62466 ; WX 714 ; N uniF402 ; G 3273 -U 62467 ; WX 947 ; N uniF403 ; G 3274 -U 62468 ; WX 665 ; N uniF404 ; G 3275 -U 62469 ; WX 659 ; N uniF405 ; G 3276 -U 62470 ; WX 725 ; N uniF406 ; G 3277 -U 62471 ; WX 986 ; N uniF407 ; G 3278 -U 62472 ; WX 665 ; N uniF408 ; G 3279 -U 62473 ; WX 665 ; N uniF409 ; G 3280 -U 62474 ; WX 1257 ; N uniF40A ; G 3281 -U 62475 ; WX 683 ; N uniF40B ; G 3282 -U 62476 ; WX 682 ; N uniF40C ; G 3283 -U 62477 ; WX 953 ; N uniF40D ; G 3284 -U 62478 ; WX 665 ; N uniF40E ; G 3285 -U 62479 ; WX 682 ; N uniF40F ; G 3286 -U 62480 ; WX 999 ; N uniF410 ; G 3287 -U 62481 ; WX 746 ; N uniF411 ; G 3288 -U 62482 ; WX 798 ; N uniF412 ; G 3289 -U 62483 ; WX 748 ; N uniF413 ; G 3290 -U 62484 ; WX 944 ; N uniF414 ; G 3291 -U 62485 ; WX 681 ; N uniF415 ; G 3292 -U 62486 ; WX 936 ; N uniF416 ; G 3293 -U 62487 ; WX 680 ; N uniF417 ; G 3294 -U 62488 ; WX 688 ; N uniF418 ; G 3295 -U 62489 ; WX 682 ; N uniF419 ; G 3296 -U 62490 ; WX 729 ; N uniF41A ; G 3297 -U 62491 ; WX 682 ; N uniF41B ; G 3298 -U 62492 ; WX 688 ; N uniF41C ; G 3299 -U 62493 ; WX 666 ; N uniF41D ; G 3300 -U 62494 ; WX 729 ; N uniF41E ; G 3301 -U 62495 ; WX 884 ; N uniF41F ; G 3302 -U 62496 ; WX 665 ; N uniF420 ; G 3303 -U 62497 ; WX 706 ; N uniF421 ; G 3304 -U 62498 ; WX 666 ; N uniF422 ; G 3305 -U 62499 ; WX 665 ; N uniF423 ; G 3306 -U 62500 ; WX 665 ; N uniF424 ; G 3307 -U 62501 ; WX 722 ; N uniF425 ; G 3308 -U 62502 ; WX 961 ; N uniF426 ; G 3309 -U 62504 ; WX 904 ; N uniF428 ; G 3310 -U 63173 ; WX 602 ; N uniF6C5 ; G 3311 -U 63185 ; WX 500 ; N cyrBreve ; G 3312 -U 63188 ; WX 500 ; N cyrbreve ; G 3313 -U 64256 ; WX 710 ; N uniFB00 ; G 3314 -U 64257 ; WX 667 ; N fi ; G 3315 -U 64258 ; WX 667 ; N fl ; G 3316 -U 64259 ; WX 1028 ; N uniFB03 ; G 3317 -U 64260 ; WX 1030 ; N uniFB04 ; G 3318 -U 64261 ; WX 771 ; N uniFB05 ; G 3319 -U 64262 ; WX 933 ; N uniFB06 ; G 3320 -U 65024 ; WX 0 ; N uniFE00 ; G 3321 -U 65025 ; WX 0 ; N uniFE01 ; G 3322 -U 65026 ; WX 0 ; N uniFE02 ; G 3323 -U 65027 ; WX 0 ; N uniFE03 ; G 3324 -U 65028 ; WX 0 ; N uniFE04 ; G 3325 -U 65029 ; WX 0 ; N uniFE05 ; G 3326 -U 65030 ; WX 0 ; N uniFE06 ; G 3327 -U 65031 ; WX 0 ; N uniFE07 ; G 3328 -U 65032 ; WX 0 ; N uniFE08 ; G 3329 -U 65033 ; WX 0 ; N uniFE09 ; G 3330 -U 65034 ; WX 0 ; N uniFE0A ; G 3331 -U 65035 ; WX 0 ; N uniFE0B ; G 3332 -U 65036 ; WX 0 ; N uniFE0C ; G 3333 -U 65037 ; WX 0 ; N uniFE0D ; G 3334 -U 65038 ; WX 0 ; N uniFE0E ; G 3335 -U 65039 ; WX 0 ; N uniFE0F ; G 3336 -U 65529 ; WX 0 ; N uniFFF9 ; G 3337 -U 65530 ; WX 0 ; N uniFFFA ; G 3338 -U 65531 ; WX 0 ; N uniFFFB ; G 3339 -U 65532 ; WX 0 ; N uniFFFC ; G 3340 -U 65533 ; WX 1025 ; N uniFFFD ; G 3341 -EndCharMetrics -StartKernData -StartKernPairs 1367 - -KPX dollar seven -112 -KPX dollar nine -102 -KPX dollar colon -83 -KPX dollar less -83 -KPX dollar I -36 -KPX dollar W -36 -KPX dollar Y -83 -KPX dollar Z -92 -KPX dollar backslash -83 -KPX dollar questiondown -83 -KPX dollar Aacute -83 -KPX dollar Hcircumflex -112 -KPX dollar hcircumflex -36 -KPX dollar Hbar -112 -KPX dollar hbar -36 -KPX dollar Kcommaaccent -83 -KPX dollar kcommaaccent -92 -KPX dollar kgreenlandic -83 -KPX dollar Lacute -83 -KPX dollar lacute -83 -KPX dollar uni01DC -112 -KPX dollar uni01DD -36 -KPX dollar uni01F4 -83 - -KPX percent ampersand 38 -KPX percent asterisk 38 -KPX percent two 38 -KPX percent less -36 -KPX percent Egrave 38 -KPX percent Ecircumflex 38 -KPX percent Igrave 38 -KPX percent Icircumflex 38 -KPX percent Thorn 38 -KPX percent agrave 38 -KPX percent acircumflex 38 -KPX percent adieresis 38 -KPX percent Dcaron 38 -KPX percent Dcroat 38 -KPX percent Emacron 38 -KPX percent Ebreve 38 -KPX percent kgreenlandic -36 -KPX percent lacute -36 -KPX percent uni01AC 38 -KPX percent uni01AE 38 -KPX percent uni01F0 38 -KPX percent uni01F4 -36 - - -KPX quotesingle nine -36 - - -KPX parenright dollar -178 -KPX parenright D -139 -KPX parenright H -112 -KPX parenright R -112 -KPX parenright cent -139 -KPX parenright sterling -139 -KPX parenright currency -139 -KPX parenright yen -139 -KPX parenright brokenbar -139 -KPX parenright section -139 -KPX parenright dieresis -139 -KPX parenright ordfeminine -112 -KPX parenright guillemotleft -112 -KPX parenright logicalnot -112 -KPX parenright sfthyphen -112 -KPX parenright acute -112 -KPX parenright mu -112 -KPX parenright paragraph -112 -KPX parenright periodcentered -112 -KPX parenright cedilla -112 -KPX parenright ordmasculine -112 -KPX parenright Acircumflex -178 -KPX parenright Atilde -139 -KPX parenright Adieresis -178 -KPX parenright Aring -139 -KPX parenright AE -178 -KPX parenright Ccedilla -139 -KPX parenright Otilde -112 -KPX parenright multiply -112 -KPX parenright Ugrave -112 -KPX parenright Ucircumflex -112 -KPX parenright Yacute -112 -KPX parenright dcaron -112 -KPX parenright dmacron -112 -KPX parenright emacron -112 -KPX parenright ebreve -112 -KPX parenright uni01A5 -139 -KPX parenright uni01AD -112 -KPX parenright Uhorn -112 -KPX parenright uni01F1 -112 - -KPX asterisk less -36 -KPX asterisk lacute -36 - - -KPX period dollar -83 -KPX period ampersand -55 -KPX period two -55 -KPX period eight -73 -KPX period colon -73 -KPX period less -55 -KPX period H -55 -KPX period R -55 -KPX period X -45 -KPX period backslash -131 -KPX period ordfeminine -55 -KPX period guillemotleft -55 -KPX period logicalnot -55 -KPX period sfthyphen -55 -KPX period acute -55 -KPX period mu -55 -KPX period paragraph -55 -KPX period periodcentered -55 -KPX period cedilla -55 -KPX period ordmasculine -36 -KPX period guillemotright -45 -KPX period onequarter -45 -KPX period onehalf -45 -KPX period threequarters -45 -KPX period questiondown -131 -KPX period Aacute -131 -KPX period Egrave -55 -KPX period Icircumflex -55 -KPX period Yacute -55 -KPX period Ebreve -55 -KPX period ebreve -55 -KPX period Idot -73 -KPX period dotlessi -45 -KPX period lacute -55 - -KPX slash seven -167 -KPX slash eight -112 -KPX slash nine -243 -KPX slash colon -178 -KPX slash less -131 -KPX slash backslash -36 -KPX slash questiondown -36 -KPX slash Aacute -36 -KPX slash Hbar -167 -KPX slash Idot -112 -KPX slash lacute -131 - - -KPX two nine -36 -KPX two semicolon -36 - -KPX three dollar -188 -KPX three eight -36 -KPX three D -92 -KPX three H -92 -KPX three R -83 -KPX three V -55 -KPX three cent -92 -KPX three sterling -92 -KPX three currency -92 -KPX three yen -92 -KPX three brokenbar -92 -KPX three section -92 -KPX three dieresis -92 -KPX three ordfeminine -92 -KPX three guillemotleft -92 -KPX three logicalnot -92 -KPX three sfthyphen -92 -KPX three acute -83 -KPX three mu -83 -KPX three paragraph -83 -KPX three periodcentered -83 -KPX three cedilla -83 -KPX three ordmasculine -83 -KPX three Yacute -92 -KPX three ebreve -83 -KPX three gdotaccent -55 -KPX three gcommaaccent -55 -KPX three Idot -36 - - -KPX five seven -36 -KPX five nine -73 -KPX five colon -45 -KPX five less -63 -KPX five D 47 -KPX five backslash -36 -KPX five cent 47 -KPX five sterling 47 -KPX five currency 47 -KPX five yen 47 -KPX five brokenbar 47 -KPX five section 47 -KPX five dieresis 47 -KPX five ordmasculine 38 -KPX five questiondown -36 -KPX five Aacute -36 -KPX five Hbar -36 -KPX five lacute -63 - -KPX six six -36 -KPX six Gdotaccent -36 -KPX six Gcommaaccent -36 - -KPX seven dollar -112 -KPX seven seven 38 -KPX seven D -159 -KPX seven F -159 -KPX seven H -159 -KPX seven R -159 -KPX seven V -149 -KPX seven Z -73 -KPX seven cent -59 -KPX seven sterling -159 -KPX seven currency -59 -KPX seven yen -59 -KPX seven brokenbar -59 -KPX seven section -59 -KPX seven dieresis -159 -KPX seven copyright -159 -KPX seven ordfeminine -99 -KPX seven guillemotleft -159 -KPX seven logicalnot -99 -KPX seven sfthyphen -99 -KPX seven acute -79 -KPX seven mu -159 -KPX seven paragraph -79 -KPX seven periodcentered -79 -KPX seven cedilla -79 -KPX seven ordmasculine -159 -KPX seven Eacute -159 -KPX seven Idieresis -159 -KPX seven Yacute -159 -KPX seven ebreve -159 -KPX seven gdotaccent -149 -KPX seven gcommaaccent -149 -KPX seven Hbar 38 - -KPX eight dollar -63 -KPX eight hyphen -55 - -KPX nine dollar -139 -KPX nine two -36 -KPX nine D -188 -KPX nine H -188 -KPX nine L -36 -KPX nine R -188 -KPX nine X -131 -KPX nine backslash -83 -KPX nine cent -188 -KPX nine sterling -188 -KPX nine currency -188 -KPX nine yen -188 -KPX nine brokenbar -188 -KPX nine section -188 -KPX nine dieresis -188 -KPX nine ordfeminine -188 -KPX nine guillemotleft -188 -KPX nine logicalnot -188 -KPX nine sfthyphen -188 -KPX nine acute -188 -KPX nine mu -188 -KPX nine paragraph -188 -KPX nine periodcentered -188 -KPX nine cedilla -188 -KPX nine ordmasculine -188 -KPX nine guillemotright -131 -KPX nine onequarter -131 -KPX nine onehalf -131 -KPX nine threequarters -131 -KPX nine questiondown -83 -KPX nine Aacute -83 -KPX nine Yacute -188 -KPX nine Ebreve -36 -KPX nine ebreve -188 -KPX nine dotlessi -131 - -KPX colon dollar -102 -KPX colon D -178 -KPX colon H -167 -KPX colon L -36 -KPX colon R -139 -KPX colon U -92 -KPX colon X -83 -KPX colon backslash -45 -KPX colon cent -178 -KPX colon sterling -178 -KPX colon currency -178 -KPX colon yen -178 -KPX colon brokenbar -178 -KPX colon section -178 -KPX colon dieresis -139 -KPX colon ordfeminine -167 -KPX colon guillemotleft -167 -KPX colon logicalnot -167 -KPX colon sfthyphen -167 -KPX colon acute -139 -KPX colon mu -139 -KPX colon paragraph -139 -KPX colon periodcentered -139 -KPX colon cedilla -139 -KPX colon ordmasculine -139 -KPX colon guillemotright -83 -KPX colon onequarter -83 -KPX colon onehalf -83 -KPX colon threequarters -83 -KPX colon questiondown -45 -KPX colon Aacute -45 -KPX colon Yacute -167 -KPX colon ebreve -139 -KPX colon edotaccent -92 -KPX colon ecaron -92 -KPX colon dotlessi -83 - -KPX semicolon dollar -73 -KPX semicolon ampersand -36 -KPX semicolon two -36 -KPX semicolon Egrave -36 -KPX semicolon Icircumflex -36 -KPX semicolon Ebreve -36 - -KPX less dollar -159 -KPX less ampersand -36 -KPX less D -159 -KPX less H -178 -KPX less L -36 -KPX less R -178 -KPX less X -178 -KPX less cent -159 -KPX less sterling -159 -KPX less currency -159 -KPX less yen -159 -KPX less brokenbar -159 -KPX less section -159 -KPX less dieresis -196 -KPX less ordfeminine -178 -KPX less guillemotleft -178 -KPX less logicalnot -178 -KPX less sfthyphen -178 -KPX less acute -178 -KPX less mu -178 -KPX less paragraph -178 -KPX less periodcentered -178 -KPX less cedilla -178 -KPX less ordmasculine -178 -KPX less guillemotright -178 -KPX less onequarter -178 -KPX less onehalf -178 -KPX less threequarters -178 -KPX less Egrave -36 -KPX less Icircumflex -36 -KPX less Yacute -178 -KPX less ebreve -215 -KPX less dotlessi -178 - - - - - - - - - - - - - - - - - - - - - -KPX Acircumflex seven -112 -KPX Acircumflex nine -102 -KPX Acircumflex colon -83 -KPX Acircumflex less -83 -KPX Acircumflex I -36 -KPX Acircumflex W -36 -KPX Acircumflex Y -83 -KPX Acircumflex Z -92 -KPX Acircumflex backslash -83 -KPX Acircumflex questiondown -83 -KPX Acircumflex Aacute -83 -KPX Acircumflex Hcircumflex -112 -KPX Acircumflex hcircumflex -36 -KPX Acircumflex Hbar -112 -KPX Acircumflex hbar -36 -KPX Acircumflex Kcommaaccent -83 -KPX Acircumflex kcommaaccent -92 -KPX Acircumflex kgreenlandic -83 -KPX Acircumflex Lacute -83 -KPX Acircumflex lacute -83 -KPX Acircumflex uni01DC -112 -KPX Acircumflex uni01DD -36 -KPX Acircumflex uni01F4 -83 - -KPX Adieresis seven -112 -KPX Adieresis nine -102 -KPX Adieresis colon -83 -KPX Adieresis less -83 -KPX Adieresis I -36 -KPX Adieresis W -36 -KPX Adieresis Y -83 -KPX Adieresis Z -92 -KPX Adieresis backslash -83 -KPX Adieresis questiondown -83 -KPX Adieresis Aacute -83 -KPX Adieresis Hcircumflex -112 -KPX Adieresis hcircumflex -36 -KPX Adieresis Hbar -112 -KPX Adieresis hbar -36 -KPX Adieresis Kcommaaccent -83 -KPX Adieresis kcommaaccent -92 -KPX Adieresis kgreenlandic -83 -KPX Adieresis Lacute -83 -KPX Adieresis lacute -83 -KPX Adieresis uni01DC -112 -KPX Adieresis uni01DD -36 -KPX Adieresis uni01F4 -83 - -KPX AE seven -112 -KPX AE nine -102 -KPX AE colon -83 -KPX AE less -83 -KPX AE I -36 -KPX AE W -36 -KPX AE Y -83 -KPX AE Z -92 -KPX AE backslash -83 -KPX AE questiondown -83 -KPX AE Aacute -83 -KPX AE Hcircumflex -112 -KPX AE hcircumflex -36 -KPX AE Hbar -112 -KPX AE hbar -36 -KPX AE Kcommaaccent -83 -KPX AE kcommaaccent -92 -KPX AE kgreenlandic -83 -KPX AE Lacute -83 -KPX AE lacute -83 -KPX AE uni01DC -112 -KPX AE uni01DD -36 -KPX AE uni01F4 -83 - - - - - -KPX Eth nine -36 - -KPX Ograve nine -36 - - -KPX agrave less -36 -KPX agrave lacute -36 - -KPX ucircumflex seven -167 -KPX ucircumflex eight -112 -KPX ucircumflex nine -243 -KPX ucircumflex colon -178 -KPX ucircumflex less -131 -KPX ucircumflex backslash -36 -KPX ucircumflex questiondown -36 -KPX ucircumflex Aacute -36 -KPX ucircumflex Hbar -167 -KPX ucircumflex Idot -112 -KPX ucircumflex lacute -131 - -KPX ydieresis seven -167 -KPX ydieresis eight -112 -KPX ydieresis nine -243 -KPX ydieresis colon -178 -KPX ydieresis less -131 -KPX ydieresis backslash -36 -KPX ydieresis questiondown -36 -KPX ydieresis Aacute -36 -KPX ydieresis Hbar -167 -KPX ydieresis Idot -112 -KPX ydieresis lacute -131 - -KPX Abreve O -227 - -KPX abreve seven -167 -KPX abreve eight -36 -KPX abreve nine -243 -KPX abreve colon -178 -KPX abreve less -206 -KPX abreve backslash -36 -KPX abreve questiondown -36 -KPX abreve Aacute -36 -KPX abreve Hbar -167 -KPX abreve Idot -36 -KPX abreve lacute -206 - - - -KPX Edotaccent seven -36 -KPX Edotaccent nine -73 -KPX Edotaccent colon -45 -KPX Edotaccent less -63 -KPX Edotaccent D 47 -KPX Edotaccent backslash -36 -KPX Edotaccent cent 47 -KPX Edotaccent sterling 47 -KPX Edotaccent currency 47 -KPX Edotaccent yen 47 -KPX Edotaccent brokenbar 47 -KPX Edotaccent section 47 -KPX Edotaccent dieresis 47 -KPX Edotaccent ordmasculine 38 -KPX Edotaccent questiondown -36 -KPX Edotaccent Aacute -36 -KPX Edotaccent Hbar -36 -KPX Edotaccent lacute -63 - - -KPX Ecaron seven -36 -KPX Ecaron nine -73 -KPX Ecaron colon -45 -KPX Ecaron less -63 -KPX Ecaron D 47 -KPX Ecaron backslash -36 -KPX Ecaron cent 47 -KPX Ecaron sterling 47 -KPX Ecaron currency 47 -KPX Ecaron yen 47 -KPX Ecaron brokenbar 47 -KPX Ecaron section 47 -KPX Ecaron dieresis 47 -KPX Ecaron ordmasculine 38 -KPX Ecaron questiondown -36 -KPX Ecaron Aacute -36 -KPX Ecaron Hbar -36 -KPX Ecaron lacute -63 - - -KPX Gdotaccent six -36 -KPX Gdotaccent Gdotaccent -36 -KPX Gdotaccent Gcommaaccent -36 - -KPX Gcommaaccent six -36 -KPX Gcommaaccent Gdotaccent -36 -KPX Gcommaaccent Gcommaaccent -36 - -KPX Hbar dollar -112 -KPX Hbar seven 38 -KPX Hbar D -159 -KPX Hbar F -159 -KPX Hbar H -159 -KPX Hbar R -159 -KPX Hbar V -149 -KPX Hbar Z -73 -KPX Hbar cent -159 -KPX Hbar sterling -159 -KPX Hbar currency -159 -KPX Hbar yen -159 -KPX Hbar brokenbar -159 -KPX Hbar section -159 -KPX Hbar dieresis -159 -KPX Hbar copyright -159 -KPX Hbar ordfeminine -159 -KPX Hbar guillemotleft -159 -KPX Hbar logicalnot -159 -KPX Hbar sfthyphen -159 -KPX Hbar acute -159 -KPX Hbar mu -159 -KPX Hbar paragraph -159 -KPX Hbar periodcentered -159 -KPX Hbar cedilla -159 -KPX Hbar ordmasculine -159 -KPX Hbar Eacute -159 -KPX Hbar Idieresis -159 -KPX Hbar Yacute -159 -KPX Hbar ebreve -159 -KPX Hbar gdotaccent -149 -KPX Hbar gcommaaccent -149 -KPX Hbar Hbar 38 - -KPX Idot dollar -63 -KPX Idot hyphen -55 - -KPX kcommaaccent D 110 -KPX kcommaaccent F 85 -KPX kcommaaccent G 97 -KPX kcommaaccent H 86 -KPX kcommaaccent I 220 -KPX kcommaaccent J 97 -KPX kcommaaccent L 220 -KPX kcommaaccent M 218 -KPX kcommaaccent P 125 -KPX kcommaaccent Q 125 -KPX kcommaaccent R 85 -KPX kcommaaccent S 140 -KPX kcommaaccent T 97 -KPX kcommaaccent U 125 -KPX kcommaaccent V 155 -KPX kcommaaccent W 235 -KPX kcommaaccent X 144 -KPX kcommaaccent Y 205 -KPX kcommaaccent Z 166 -KPX kcommaaccent bracketleft 174 -KPX kcommaaccent backslash 205 -KPX kcommaaccent bracketright 179 -KPX kcommaaccent kcommaaccent 261 - -KPX lacute dollar -159 -KPX lacute ampersand -36 -KPX lacute D -159 -KPX lacute H -178 -KPX lacute L -36 -KPX lacute R -178 -KPX lacute X -178 -KPX lacute cent -159 -KPX lacute sterling -159 -KPX lacute currency -159 -KPX lacute yen -159 -KPX lacute brokenbar -159 -KPX lacute section -159 -KPX lacute dieresis -196 -KPX lacute ordfeminine -178 -KPX lacute guillemotleft -178 -KPX lacute logicalnot -178 -KPX lacute sfthyphen -178 -KPX lacute acute -178 -KPX lacute mu -178 -KPX lacute paragraph -178 -KPX lacute periodcentered -178 -KPX lacute cedilla -178 -KPX lacute ordmasculine -178 -KPX lacute guillemotright -178 -KPX lacute onequarter -178 -KPX lacute onehalf -178 -KPX lacute threequarters -178 -KPX lacute Egrave -36 -KPX lacute Icircumflex -36 -KPX lacute Yacute -178 -KPX lacute ebreve -215 -KPX lacute dotlessi -178 - - -KPX uni027D dollar -264 -KPX uni027D hyphen 47 -EndKernPairs -EndKernData -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Helvetica-Bold.afm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Helvetica-Bold.afm deleted file mode 100644 index f65e6dfb..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Helvetica-Bold.afm +++ /dev/null @@ -1,2829 +0,0 @@ -StartFontMetrics 4.1 -Comment Copyright (c) 1985, 1987, 1989, 1990, 1997 Adobe Systems Incorporated. All Rights Reserved. -Comment Creation Date: Thu May 1 12:43:52 1997 -Comment UniqueID 43052 -Comment VMusage 37169 48194 -FontName Helvetica-Bold -FullName Helvetica Bold -FamilyName Helvetica -Weight Bold -ItalicAngle 0 -IsFixedPitch false -CharacterSet ExtendedRoman -FontBBox -170 -228 1003 962 -UnderlinePosition -100 -UnderlineThickness 50 -Version 002.000 -Notice Copyright (c) 1985, 1987, 1989, 1990, 1997 Adobe Systems Incorporated. All Rights Reserved.Helvetica is a trademark of Linotype-Hell AG and/or its subsidiaries. -EncodingScheme WinAnsiEncoding -CapHeight 718 -XHeight 532 -Ascender 718 -Descender -207 -StdHW 118 -StdVW 140 -StartCharMetrics 317 -C 32 ; WX 278 ; N space ; B 0 0 0 0 ; -C 160 ; WX 278 ; N space ; B 0 0 0 0 ; -C 33 ; WX 333 ; N exclam ; B 90 0 244 718 ; -C 34 ; WX 474 ; N quotedbl ; B 98 447 376 718 ; -C 35 ; WX 556 ; N numbersign ; B 18 0 538 698 ; -C 36 ; WX 556 ; N dollar ; B 30 -115 523 775 ; -C 37 ; WX 889 ; N percent ; B 28 -19 861 710 ; -C 38 ; WX 722 ; N ampersand ; B 54 -19 701 718 ; -C 146 ; WX 278 ; N quoteright ; B 69 445 209 718 ; -C 40 ; WX 333 ; N parenleft ; B 35 -208 314 734 ; -C 41 ; WX 333 ; N parenright ; B 19 -208 298 734 ; -C 42 ; WX 389 ; N asterisk ; B 27 387 362 718 ; -C 43 ; WX 584 ; N plus ; B 40 0 544 506 ; -C 44 ; WX 278 ; N comma ; B 64 -168 214 146 ; -C 45 ; WX 333 ; N hyphen ; B 27 215 306 345 ; -C 173 ; WX 333 ; N hyphen ; B 44 232 289 322 ; -C 46 ; WX 278 ; N period ; B 64 0 214 146 ; -C 47 ; WX 278 ; N slash ; B -33 -19 311 737 ; -C 48 ; WX 556 ; N zero ; B 32 -19 524 710 ; -C 49 ; WX 556 ; N one ; B 69 0 378 710 ; -C 50 ; WX 556 ; N two ; B 26 0 511 710 ; -C 51 ; WX 556 ; N three ; B 27 -19 516 710 ; -C 52 ; WX 556 ; N four ; B 27 0 526 710 ; -C 53 ; WX 556 ; N five ; B 27 -19 516 698 ; -C 54 ; WX 556 ; N six ; B 31 -19 520 710 ; -C 55 ; WX 556 ; N seven ; B 25 0 528 698 ; -C 56 ; WX 556 ; N eight ; B 32 -19 524 710 ; -C 57 ; WX 556 ; N nine ; B 30 -19 522 710 ; -C 58 ; WX 333 ; N colon ; B 92 0 242 512 ; -C 59 ; WX 333 ; N semicolon ; B 92 -168 242 512 ; -C 60 ; WX 584 ; N less ; B 38 -8 546 514 ; -C 61 ; WX 584 ; N equal ; B 40 87 544 419 ; -C 62 ; WX 584 ; N greater ; B 38 -8 546 514 ; -C 63 ; WX 611 ; N question ; B 60 0 556 727 ; -C 64 ; WX 975 ; N at ; B 118 -19 856 737 ; -C 65 ; WX 722 ; N A ; B 20 0 702 718 ; -C 66 ; WX 722 ; N B ; B 76 0 669 718 ; -C 67 ; WX 722 ; N C ; B 44 -19 684 737 ; -C 68 ; WX 722 ; N D ; B 76 0 685 718 ; -C 69 ; WX 667 ; N E ; B 76 0 621 718 ; -C 70 ; WX 611 ; N F ; B 76 0 587 718 ; -C 71 ; WX 778 ; N G ; B 44 -19 713 737 ; -C 72 ; WX 722 ; N H ; B 71 0 651 718 ; -C 73 ; WX 278 ; N I ; B 64 0 214 718 ; -C 74 ; WX 556 ; N J ; B 22 -18 484 718 ; -C 75 ; WX 722 ; N K ; B 87 0 722 718 ; -C 76 ; WX 611 ; N L ; B 76 0 583 718 ; -C 77 ; WX 833 ; N M ; B 69 0 765 718 ; -C 78 ; WX 722 ; N N ; B 69 0 654 718 ; -C 79 ; WX 778 ; N O ; B 44 -19 734 737 ; -C 80 ; WX 667 ; N P ; B 76 0 627 718 ; -C 81 ; WX 778 ; N Q ; B 44 -52 737 737 ; -C 82 ; WX 722 ; N R ; B 76 0 677 718 ; -C 83 ; WX 667 ; N S ; B 39 -19 629 737 ; -C 84 ; WX 611 ; N T ; B 14 0 598 718 ; -C 85 ; WX 722 ; N U ; B 72 -19 651 718 ; -C 86 ; WX 667 ; N V ; B 19 0 648 718 ; -C 87 ; WX 944 ; N W ; B 16 0 929 718 ; -C 88 ; WX 667 ; N X ; B 14 0 653 718 ; -C 89 ; WX 667 ; N Y ; B 15 0 653 718 ; -C 90 ; WX 611 ; N Z ; B 25 0 586 718 ; -C 91 ; WX 333 ; N bracketleft ; B 63 -196 309 722 ; -C 92 ; WX 278 ; N backslash ; B -33 -19 311 737 ; -C 93 ; WX 333 ; N bracketright ; B 24 -196 270 722 ; -C 94 ; WX 584 ; N asciicircum ; B 62 323 522 698 ; -C 95 ; WX 556 ; N underscore ; B 0 -125 556 -75 ; -C 145 ; WX 278 ; N quoteleft ; B 69 454 209 727 ; -C 97 ; WX 556 ; N a ; B 29 -14 527 546 ; -C 98 ; WX 611 ; N b ; B 61 -14 578 718 ; -C 99 ; WX 556 ; N c ; B 34 -14 524 546 ; -C 100 ; WX 611 ; N d ; B 34 -14 551 718 ; -C 101 ; WX 556 ; N e ; B 23 -14 528 546 ; -C 102 ; WX 333 ; N f ; B 10 0 318 727 ; L i fi ; L l fl ; -C 103 ; WX 611 ; N g ; B 40 -217 553 546 ; -C 104 ; WX 611 ; N h ; B 65 0 546 718 ; -C 105 ; WX 278 ; N i ; B 69 0 209 725 ; -C 106 ; WX 278 ; N j ; B 3 -214 209 725 ; -C 107 ; WX 556 ; N k ; B 69 0 562 718 ; -C 108 ; WX 278 ; N l ; B 69 0 209 718 ; -C 109 ; WX 889 ; N m ; B 64 0 826 546 ; -C 110 ; WX 611 ; N n ; B 65 0 546 546 ; -C 111 ; WX 611 ; N o ; B 34 -14 578 546 ; -C 112 ; WX 611 ; N p ; B 62 -207 578 546 ; -C 113 ; WX 611 ; N q ; B 34 -207 552 546 ; -C 114 ; WX 389 ; N r ; B 64 0 373 546 ; -C 115 ; WX 556 ; N s ; B 30 -14 519 546 ; -C 116 ; WX 333 ; N t ; B 10 -6 309 676 ; -C 117 ; WX 611 ; N u ; B 66 -14 545 532 ; -C 118 ; WX 556 ; N v ; B 13 0 543 532 ; -C 119 ; WX 778 ; N w ; B 10 0 769 532 ; -C 120 ; WX 556 ; N x ; B 15 0 541 532 ; -C 121 ; WX 556 ; N y ; B 10 -214 539 532 ; -C 122 ; WX 500 ; N z ; B 20 0 480 532 ; -C 123 ; WX 389 ; N braceleft ; B 48 -196 365 722 ; -C 124 ; WX 280 ; N bar ; B 84 -225 196 775 ; -C 125 ; WX 389 ; N braceright ; B 24 -196 341 722 ; -C 126 ; WX 584 ; N asciitilde ; B 61 163 523 343 ; -C 161 ; WX 333 ; N exclamdown ; B 90 -186 244 532 ; -C 162 ; WX 556 ; N cent ; B 34 -118 524 628 ; -C 163 ; WX 556 ; N sterling ; B 28 -16 541 718 ; -C -1 ; WX 167 ; N fraction ; B -170 -19 336 710 ; -C 165 ; WX 556 ; N yen ; B -9 0 565 698 ; -C 131 ; WX 556 ; N florin ; B -10 -210 516 737 ; -C 167 ; WX 556 ; N section ; B 34 -184 522 727 ; -C 164 ; WX 556 ; N currency ; B -3 76 559 636 ; -C 39 ; WX 238 ; N quotesingle ; B 70 447 168 718 ; -C 147 ; WX 500 ; N quotedblleft ; B 64 454 436 727 ; -C 171 ; WX 556 ; N guillemotleft ; B 88 76 468 484 ; -C 139 ; WX 333 ; N guilsinglleft ; B 83 76 250 484 ; -C 155 ; WX 333 ; N guilsinglright ; B 83 76 250 484 ; -C -1 ; WX 611 ; N fi ; B 10 0 542 727 ; -C -1 ; WX 611 ; N fl ; B 10 0 542 727 ; -C 150 ; WX 556 ; N endash ; B 0 227 556 333 ; -C 134 ; WX 556 ; N dagger ; B 36 -171 520 718 ; -C 135 ; WX 556 ; N daggerdbl ; B 36 -171 520 718 ; -C 183 ; WX 278 ; N periodcentered ; B 58 172 220 334 ; -C 182 ; WX 556 ; N paragraph ; B -8 -191 539 700 ; -C 149 ; WX 350 ; N bullet ; B 10 194 340 524 ; -C 130 ; WX 278 ; N quotesinglbase ; B 69 -146 209 127 ; -C 132 ; WX 500 ; N quotedblbase ; B 64 -146 436 127 ; -C 148 ; WX 500 ; N quotedblright ; B 64 445 436 718 ; -C 187 ; WX 556 ; N guillemotright ; B 88 76 468 484 ; -C 133 ; WX 1000 ; N ellipsis ; B 92 0 908 146 ; -C 137 ; WX 1000 ; N perthousand ; B -3 -19 1003 710 ; -C 191 ; WX 611 ; N questiondown ; B 55 -195 551 532 ; -C 96 ; WX 333 ; N grave ; B -23 604 225 750 ; -C 180 ; WX 333 ; N acute ; B 108 604 356 750 ; -C 136 ; WX 333 ; N circumflex ; B -10 604 343 750 ; -C 152 ; WX 333 ; N tilde ; B -17 610 350 737 ; -C 175 ; WX 333 ; N macron ; B -6 604 339 678 ; -C -1 ; WX 333 ; N breve ; B -2 604 335 750 ; -C -1 ; WX 333 ; N dotaccent ; B 104 614 230 729 ; -C 168 ; WX 333 ; N dieresis ; B 6 614 327 729 ; -C -1 ; WX 333 ; N ring ; B 59 568 275 776 ; -C 184 ; WX 333 ; N cedilla ; B 6 -228 245 0 ; -C -1 ; WX 333 ; N hungarumlaut ; B 9 604 486 750 ; -C -1 ; WX 333 ; N ogonek ; B 71 -228 304 0 ; -C -1 ; WX 333 ; N caron ; B -10 604 343 750 ; -C 151 ; WX 1000 ; N emdash ; B 0 227 1000 333 ; -C 198 ; WX 1000 ; N AE ; B 5 0 954 718 ; -C 170 ; WX 370 ; N ordfeminine ; B 22 401 347 737 ; -C -1 ; WX 611 ; N Lslash ; B -20 0 583 718 ; -C 216 ; WX 778 ; N Oslash ; B 33 -27 744 745 ; -C 140 ; WX 1000 ; N OE ; B 37 -19 961 737 ; -C 186 ; WX 365 ; N ordmasculine ; B 6 401 360 737 ; -C 230 ; WX 889 ; N ae ; B 29 -14 858 546 ; -C -1 ; WX 278 ; N dotlessi ; B 69 0 209 532 ; -C -1 ; WX 278 ; N lslash ; B -18 0 296 718 ; -C 248 ; WX 611 ; N oslash ; B 22 -29 589 560 ; -C 156 ; WX 944 ; N oe ; B 34 -14 912 546 ; -C 223 ; WX 611 ; N germandbls ; B 69 -14 579 731 ; -C 207 ; WX 278 ; N Idieresis ; B -21 0 300 915 ; -C 233 ; WX 556 ; N eacute ; B 23 -14 528 750 ; -C -1 ; WX 556 ; N abreve ; B 29 -14 527 750 ; -C -1 ; WX 611 ; N uhungarumlaut ; B 66 -14 625 750 ; -C -1 ; WX 556 ; N ecaron ; B 23 -14 528 750 ; -C 159 ; WX 667 ; N Ydieresis ; B 15 0 653 915 ; -C 247 ; WX 584 ; N divide ; B 40 -42 544 548 ; -C 221 ; WX 667 ; N Yacute ; B 15 0 653 936 ; -C 194 ; WX 722 ; N Acircumflex ; B 20 0 702 936 ; -C 225 ; WX 556 ; N aacute ; B 29 -14 527 750 ; -C 219 ; WX 722 ; N Ucircumflex ; B 72 -19 651 936 ; -C 253 ; WX 556 ; N yacute ; B 10 -214 539 750 ; -C -1 ; WX 556 ; N scommaaccent ; B 30 -228 519 546 ; -C 234 ; WX 556 ; N ecircumflex ; B 23 -14 528 750 ; -C -1 ; WX 722 ; N Uring ; B 72 -19 651 962 ; -C 220 ; WX 722 ; N Udieresis ; B 72 -19 651 915 ; -C -1 ; WX 556 ; N aogonek ; B 29 -224 545 546 ; -C 218 ; WX 722 ; N Uacute ; B 72 -19 651 936 ; -C -1 ; WX 611 ; N uogonek ; B 66 -228 545 532 ; -C 203 ; WX 667 ; N Edieresis ; B 76 0 621 915 ; -C -1 ; WX 722 ; N Dcroat ; B -5 0 685 718 ; -C -1 ; WX 250 ; N commaaccent ; B 64 -228 199 -50 ; -C 169 ; WX 737 ; N copyright ; B -11 -19 749 737 ; -C -1 ; WX 667 ; N Emacron ; B 76 0 621 864 ; -C -1 ; WX 556 ; N ccaron ; B 34 -14 524 750 ; -C 229 ; WX 556 ; N aring ; B 29 -14 527 776 ; -C -1 ; WX 722 ; N Ncommaaccent ; B 69 -228 654 718 ; -C -1 ; WX 278 ; N lacute ; B 69 0 329 936 ; -C 224 ; WX 556 ; N agrave ; B 29 -14 527 750 ; -C -1 ; WX 611 ; N Tcommaaccent ; B 14 -228 598 718 ; -C -1 ; WX 722 ; N Cacute ; B 44 -19 684 936 ; -C 227 ; WX 556 ; N atilde ; B 29 -14 527 737 ; -C -1 ; WX 667 ; N Edotaccent ; B 76 0 621 915 ; -C 154 ; WX 556 ; N scaron ; B 30 -14 519 750 ; -C -1 ; WX 556 ; N scedilla ; B 30 -228 519 546 ; -C 237 ; WX 278 ; N iacute ; B 69 0 329 750 ; -C -1 ; WX 494 ; N lozenge ; B 10 0 484 745 ; -C -1 ; WX 722 ; N Rcaron ; B 76 0 677 936 ; -C -1 ; WX 778 ; N Gcommaaccent ; B 44 -228 713 737 ; -C 251 ; WX 611 ; N ucircumflex ; B 66 -14 545 750 ; -C 226 ; WX 556 ; N acircumflex ; B 29 -14 527 750 ; -C -1 ; WX 722 ; N Amacron ; B 20 0 702 864 ; -C -1 ; WX 389 ; N rcaron ; B 18 0 373 750 ; -C 231 ; WX 556 ; N ccedilla ; B 34 -228 524 546 ; -C -1 ; WX 611 ; N Zdotaccent ; B 25 0 586 915 ; -C 222 ; WX 667 ; N Thorn ; B 76 0 627 718 ; -C -1 ; WX 778 ; N Omacron ; B 44 -19 734 864 ; -C -1 ; WX 722 ; N Racute ; B 76 0 677 936 ; -C -1 ; WX 667 ; N Sacute ; B 39 -19 629 936 ; -C -1 ; WX 743 ; N dcaron ; B 34 -14 750 718 ; -C -1 ; WX 722 ; N Umacron ; B 72 -19 651 864 ; -C -1 ; WX 611 ; N uring ; B 66 -14 545 776 ; -C 179 ; WX 333 ; N threesuperior ; B 8 271 326 710 ; -C 210 ; WX 778 ; N Ograve ; B 44 -19 734 936 ; -C 192 ; WX 722 ; N Agrave ; B 20 0 702 936 ; -C -1 ; WX 722 ; N Abreve ; B 20 0 702 936 ; -C 215 ; WX 584 ; N multiply ; B 40 1 545 505 ; -C 250 ; WX 611 ; N uacute ; B 66 -14 545 750 ; -C -1 ; WX 611 ; N Tcaron ; B 14 0 598 936 ; -C -1 ; WX 494 ; N partialdiff ; B 11 -21 494 750 ; -C 255 ; WX 556 ; N ydieresis ; B 10 -214 539 729 ; -C -1 ; WX 722 ; N Nacute ; B 69 0 654 936 ; -C 238 ; WX 278 ; N icircumflex ; B -37 0 316 750 ; -C 202 ; WX 667 ; N Ecircumflex ; B 76 0 621 936 ; -C 228 ; WX 556 ; N adieresis ; B 29 -14 527 729 ; -C 235 ; WX 556 ; N edieresis ; B 23 -14 528 729 ; -C -1 ; WX 556 ; N cacute ; B 34 -14 524 750 ; -C -1 ; WX 611 ; N nacute ; B 65 0 546 750 ; -C -1 ; WX 611 ; N umacron ; B 66 -14 545 678 ; -C -1 ; WX 722 ; N Ncaron ; B 69 0 654 936 ; -C 205 ; WX 278 ; N Iacute ; B 64 0 329 936 ; -C 177 ; WX 584 ; N plusminus ; B 40 0 544 506 ; -C 166 ; WX 280 ; N brokenbar ; B 84 -150 196 700 ; -C 174 ; WX 737 ; N registered ; B -11 -19 748 737 ; -C -1 ; WX 778 ; N Gbreve ; B 44 -19 713 936 ; -C -1 ; WX 278 ; N Idotaccent ; B 64 0 214 915 ; -C -1 ; WX 600 ; N summation ; B 14 -10 585 706 ; -C 200 ; WX 667 ; N Egrave ; B 76 0 621 936 ; -C -1 ; WX 389 ; N racute ; B 64 0 384 750 ; -C -1 ; WX 611 ; N omacron ; B 34 -14 578 678 ; -C -1 ; WX 611 ; N Zacute ; B 25 0 586 936 ; -C 142 ; WX 611 ; N Zcaron ; B 25 0 586 936 ; -C -1 ; WX 549 ; N greaterequal ; B 26 0 523 704 ; -C 208 ; WX 722 ; N Eth ; B -5 0 685 718 ; -C 199 ; WX 722 ; N Ccedilla ; B 44 -228 684 737 ; -C -1 ; WX 278 ; N lcommaaccent ; B 69 -228 213 718 ; -C -1 ; WX 389 ; N tcaron ; B 10 -6 421 878 ; -C -1 ; WX 556 ; N eogonek ; B 23 -228 528 546 ; -C -1 ; WX 722 ; N Uogonek ; B 72 -228 651 718 ; -C 193 ; WX 722 ; N Aacute ; B 20 0 702 936 ; -C 196 ; WX 722 ; N Adieresis ; B 20 0 702 915 ; -C 232 ; WX 556 ; N egrave ; B 23 -14 528 750 ; -C -1 ; WX 500 ; N zacute ; B 20 0 480 750 ; -C -1 ; WX 278 ; N iogonek ; B 16 -224 249 725 ; -C 211 ; WX 778 ; N Oacute ; B 44 -19 734 936 ; -C 243 ; WX 611 ; N oacute ; B 34 -14 578 750 ; -C -1 ; WX 556 ; N amacron ; B 29 -14 527 678 ; -C -1 ; WX 556 ; N sacute ; B 30 -14 519 750 ; -C 239 ; WX 278 ; N idieresis ; B -21 0 300 729 ; -C 212 ; WX 778 ; N Ocircumflex ; B 44 -19 734 936 ; -C 217 ; WX 722 ; N Ugrave ; B 72 -19 651 936 ; -C -1 ; WX 612 ; N Delta ; B 6 0 608 688 ; -C 254 ; WX 611 ; N thorn ; B 62 -208 578 718 ; -C 178 ; WX 333 ; N twosuperior ; B 9 283 324 710 ; -C 214 ; WX 778 ; N Odieresis ; B 44 -19 734 915 ; -C 181 ; WX 611 ; N mu ; B 66 -207 545 532 ; -C 236 ; WX 278 ; N igrave ; B -50 0 209 750 ; -C -1 ; WX 611 ; N ohungarumlaut ; B 34 -14 625 750 ; -C -1 ; WX 667 ; N Eogonek ; B 76 -224 639 718 ; -C -1 ; WX 611 ; N dcroat ; B 34 -14 650 718 ; -C 190 ; WX 834 ; N threequarters ; B 16 -19 799 710 ; -C -1 ; WX 667 ; N Scedilla ; B 39 -228 629 737 ; -C -1 ; WX 400 ; N lcaron ; B 69 0 408 718 ; -C -1 ; WX 722 ; N Kcommaaccent ; B 87 -228 722 718 ; -C -1 ; WX 611 ; N Lacute ; B 76 0 583 936 ; -C 153 ; WX 1000 ; N trademark ; B 44 306 956 718 ; -C -1 ; WX 556 ; N edotaccent ; B 23 -14 528 729 ; -C 204 ; WX 278 ; N Igrave ; B -50 0 214 936 ; -C -1 ; WX 278 ; N Imacron ; B -33 0 312 864 ; -C -1 ; WX 611 ; N Lcaron ; B 76 0 583 718 ; -C 189 ; WX 834 ; N onehalf ; B 26 -19 794 710 ; -C -1 ; WX 549 ; N lessequal ; B 29 0 526 704 ; -C 244 ; WX 611 ; N ocircumflex ; B 34 -14 578 750 ; -C 241 ; WX 611 ; N ntilde ; B 65 0 546 737 ; -C -1 ; WX 722 ; N Uhungarumlaut ; B 72 -19 681 936 ; -C 201 ; WX 667 ; N Eacute ; B 76 0 621 936 ; -C -1 ; WX 556 ; N emacron ; B 23 -14 528 678 ; -C -1 ; WX 611 ; N gbreve ; B 40 -217 553 750 ; -C 188 ; WX 834 ; N onequarter ; B 26 -19 766 710 ; -C 138 ; WX 667 ; N Scaron ; B 39 -19 629 936 ; -C -1 ; WX 667 ; N Scommaaccent ; B 39 -228 629 737 ; -C -1 ; WX 778 ; N Ohungarumlaut ; B 44 -19 734 936 ; -C 176 ; WX 400 ; N degree ; B 57 426 343 712 ; -C 242 ; WX 611 ; N ograve ; B 34 -14 578 750 ; -C -1 ; WX 722 ; N Ccaron ; B 44 -19 684 936 ; -C 249 ; WX 611 ; N ugrave ; B 66 -14 545 750 ; -C -1 ; WX 549 ; N radical ; B 10 -46 512 850 ; -C -1 ; WX 722 ; N Dcaron ; B 76 0 685 936 ; -C -1 ; WX 389 ; N rcommaaccent ; B 64 -228 373 546 ; -C 209 ; WX 722 ; N Ntilde ; B 69 0 654 923 ; -C 245 ; WX 611 ; N otilde ; B 34 -14 578 737 ; -C -1 ; WX 722 ; N Rcommaaccent ; B 76 -228 677 718 ; -C -1 ; WX 611 ; N Lcommaaccent ; B 76 -228 583 718 ; -C 195 ; WX 722 ; N Atilde ; B 20 0 702 923 ; -C -1 ; WX 722 ; N Aogonek ; B 20 -224 742 718 ; -C 197 ; WX 722 ; N Aring ; B 20 0 702 962 ; -C 213 ; WX 778 ; N Otilde ; B 44 -19 734 923 ; -C -1 ; WX 500 ; N zdotaccent ; B 20 0 480 729 ; -C -1 ; WX 667 ; N Ecaron ; B 76 0 621 936 ; -C -1 ; WX 278 ; N Iogonek ; B -11 -228 222 718 ; -C -1 ; WX 556 ; N kcommaaccent ; B 69 -228 562 718 ; -C -1 ; WX 584 ; N minus ; B 40 197 544 309 ; -C 206 ; WX 278 ; N Icircumflex ; B -37 0 316 936 ; -C -1 ; WX 611 ; N ncaron ; B 65 0 546 750 ; -C -1 ; WX 333 ; N tcommaaccent ; B 10 -228 309 676 ; -C 172 ; WX 584 ; N logicalnot ; B 40 108 544 419 ; -C 246 ; WX 611 ; N odieresis ; B 34 -14 578 729 ; -C 252 ; WX 611 ; N udieresis ; B 66 -14 545 729 ; -C -1 ; WX 549 ; N notequal ; B 15 -49 540 570 ; -C -1 ; WX 611 ; N gcommaaccent ; B 40 -217 553 850 ; -C 240 ; WX 611 ; N eth ; B 34 -14 578 737 ; -C 158 ; WX 500 ; N zcaron ; B 20 0 480 750 ; -C -1 ; WX 611 ; N ncommaaccent ; B 65 -228 546 546 ; -C 185 ; WX 333 ; N onesuperior ; B 26 283 237 710 ; -C -1 ; WX 278 ; N imacron ; B -8 0 285 678 ; -C 128 ; WX 556 ; N Euro ; B 0 0 0 0 ; -EndCharMetrics -StartKernData -StartKernPairs 2481 -KPX A C -40 -KPX A Cacute -40 -KPX A Ccaron -40 -KPX A Ccedilla -40 -KPX A G -50 -KPX A Gbreve -50 -KPX A Gcommaaccent -50 -KPX A O -40 -KPX A Oacute -40 -KPX A Ocircumflex -40 -KPX A Odieresis -40 -KPX A Ograve -40 -KPX A Ohungarumlaut -40 -KPX A Omacron -40 -KPX A Oslash -40 -KPX A Otilde -40 -KPX A Q -40 -KPX A T -90 -KPX A Tcaron -90 -KPX A Tcommaaccent -90 -KPX A U -50 -KPX A Uacute -50 -KPX A Ucircumflex -50 -KPX A Udieresis -50 -KPX A Ugrave -50 -KPX A Uhungarumlaut -50 -KPX A Umacron -50 -KPX A Uogonek -50 -KPX A Uring -50 -KPX A V -80 -KPX A W -60 -KPX A Y -110 -KPX A Yacute -110 -KPX A Ydieresis -110 -KPX A u -30 -KPX A uacute -30 -KPX A ucircumflex -30 -KPX A udieresis -30 -KPX A ugrave -30 -KPX A uhungarumlaut -30 -KPX A umacron -30 -KPX A uogonek -30 -KPX A uring -30 -KPX A v -40 -KPX A w -30 -KPX A y -30 -KPX A yacute -30 -KPX A ydieresis -30 -KPX Aacute C -40 -KPX Aacute Cacute -40 -KPX Aacute Ccaron -40 -KPX Aacute Ccedilla -40 -KPX Aacute G -50 -KPX Aacute Gbreve -50 -KPX Aacute Gcommaaccent -50 -KPX Aacute O -40 -KPX Aacute Oacute -40 -KPX Aacute Ocircumflex -40 -KPX Aacute Odieresis -40 -KPX Aacute Ograve -40 -KPX Aacute Ohungarumlaut -40 -KPX Aacute Omacron -40 -KPX Aacute Oslash -40 -KPX Aacute Otilde -40 -KPX Aacute Q -40 -KPX Aacute T -90 -KPX Aacute Tcaron -90 -KPX Aacute Tcommaaccent -90 -KPX Aacute U -50 -KPX Aacute Uacute -50 -KPX Aacute Ucircumflex -50 -KPX Aacute Udieresis -50 -KPX Aacute Ugrave -50 -KPX Aacute Uhungarumlaut -50 -KPX Aacute Umacron -50 -KPX Aacute Uogonek -50 -KPX Aacute Uring -50 -KPX Aacute V -80 -KPX Aacute W -60 -KPX Aacute Y -110 -KPX Aacute Yacute -110 -KPX Aacute Ydieresis -110 -KPX Aacute u -30 -KPX Aacute uacute -30 -KPX Aacute ucircumflex -30 -KPX Aacute udieresis -30 -KPX Aacute ugrave -30 -KPX Aacute uhungarumlaut -30 -KPX Aacute umacron -30 -KPX Aacute uogonek -30 -KPX Aacute uring -30 -KPX Aacute v -40 -KPX Aacute w -30 -KPX Aacute y -30 -KPX Aacute yacute -30 -KPX Aacute ydieresis -30 -KPX Abreve C -40 -KPX Abreve Cacute -40 -KPX Abreve Ccaron -40 -KPX Abreve Ccedilla -40 -KPX Abreve G -50 -KPX Abreve Gbreve -50 -KPX Abreve Gcommaaccent -50 -KPX Abreve O -40 -KPX Abreve Oacute -40 -KPX Abreve Ocircumflex -40 -KPX Abreve Odieresis -40 -KPX Abreve Ograve -40 -KPX Abreve Ohungarumlaut -40 -KPX Abreve Omacron -40 -KPX Abreve Oslash -40 -KPX Abreve Otilde -40 -KPX Abreve Q -40 -KPX Abreve T -90 -KPX Abreve Tcaron -90 -KPX Abreve Tcommaaccent -90 -KPX Abreve U -50 -KPX Abreve Uacute -50 -KPX Abreve Ucircumflex -50 -KPX Abreve Udieresis -50 -KPX Abreve Ugrave -50 -KPX Abreve Uhungarumlaut -50 -KPX Abreve Umacron -50 -KPX Abreve Uogonek -50 -KPX Abreve Uring -50 -KPX Abreve V -80 -KPX Abreve W -60 -KPX Abreve Y -110 -KPX Abreve Yacute -110 -KPX Abreve Ydieresis -110 -KPX Abreve u -30 -KPX Abreve uacute -30 -KPX Abreve ucircumflex -30 -KPX Abreve udieresis -30 -KPX Abreve ugrave -30 -KPX Abreve uhungarumlaut -30 -KPX Abreve umacron -30 -KPX Abreve uogonek -30 -KPX Abreve uring -30 -KPX Abreve v -40 -KPX Abreve w -30 -KPX Abreve y -30 -KPX Abreve yacute -30 -KPX Abreve ydieresis -30 -KPX Acircumflex C -40 -KPX Acircumflex Cacute -40 -KPX Acircumflex Ccaron -40 -KPX Acircumflex Ccedilla -40 -KPX Acircumflex G -50 -KPX Acircumflex Gbreve -50 -KPX Acircumflex Gcommaaccent -50 -KPX Acircumflex O -40 -KPX Acircumflex Oacute -40 -KPX Acircumflex Ocircumflex -40 -KPX Acircumflex Odieresis -40 -KPX Acircumflex Ograve -40 -KPX Acircumflex Ohungarumlaut -40 -KPX Acircumflex Omacron -40 -KPX Acircumflex Oslash -40 -KPX Acircumflex Otilde -40 -KPX Acircumflex Q -40 -KPX Acircumflex T -90 -KPX Acircumflex Tcaron -90 -KPX Acircumflex Tcommaaccent -90 -KPX Acircumflex U -50 -KPX Acircumflex Uacute -50 -KPX Acircumflex Ucircumflex -50 -KPX Acircumflex Udieresis -50 -KPX Acircumflex Ugrave -50 -KPX Acircumflex Uhungarumlaut -50 -KPX Acircumflex Umacron -50 -KPX Acircumflex Uogonek -50 -KPX Acircumflex Uring -50 -KPX Acircumflex V -80 -KPX Acircumflex W -60 -KPX Acircumflex Y -110 -KPX Acircumflex Yacute -110 -KPX Acircumflex Ydieresis -110 -KPX Acircumflex u -30 -KPX Acircumflex uacute -30 -KPX Acircumflex ucircumflex -30 -KPX Acircumflex udieresis -30 -KPX Acircumflex ugrave -30 -KPX Acircumflex uhungarumlaut -30 -KPX Acircumflex umacron -30 -KPX Acircumflex uogonek -30 -KPX Acircumflex uring -30 -KPX Acircumflex v -40 -KPX Acircumflex w -30 -KPX Acircumflex y -30 -KPX Acircumflex yacute -30 -KPX Acircumflex ydieresis -30 -KPX Adieresis C -40 -KPX Adieresis Cacute -40 -KPX Adieresis Ccaron -40 -KPX Adieresis Ccedilla -40 -KPX Adieresis G -50 -KPX Adieresis Gbreve -50 -KPX Adieresis Gcommaaccent -50 -KPX Adieresis O -40 -KPX Adieresis Oacute -40 -KPX Adieresis Ocircumflex -40 -KPX Adieresis Odieresis -40 -KPX Adieresis Ograve -40 -KPX Adieresis Ohungarumlaut -40 -KPX Adieresis Omacron -40 -KPX Adieresis Oslash -40 -KPX Adieresis Otilde -40 -KPX Adieresis Q -40 -KPX Adieresis T -90 -KPX Adieresis Tcaron -90 -KPX Adieresis Tcommaaccent -90 -KPX Adieresis U -50 -KPX Adieresis Uacute -50 -KPX Adieresis Ucircumflex -50 -KPX Adieresis Udieresis -50 -KPX Adieresis Ugrave -50 -KPX Adieresis Uhungarumlaut -50 -KPX Adieresis Umacron -50 -KPX Adieresis Uogonek -50 -KPX Adieresis Uring -50 -KPX Adieresis V -80 -KPX Adieresis W -60 -KPX Adieresis Y -110 -KPX Adieresis Yacute -110 -KPX Adieresis Ydieresis -110 -KPX Adieresis u -30 -KPX Adieresis uacute -30 -KPX Adieresis ucircumflex -30 -KPX Adieresis udieresis -30 -KPX Adieresis ugrave -30 -KPX Adieresis uhungarumlaut -30 -KPX Adieresis umacron -30 -KPX Adieresis uogonek -30 -KPX Adieresis uring -30 -KPX Adieresis v -40 -KPX Adieresis w -30 -KPX Adieresis y -30 -KPX Adieresis yacute -30 -KPX Adieresis ydieresis -30 -KPX Agrave C -40 -KPX Agrave Cacute -40 -KPX Agrave Ccaron -40 -KPX Agrave Ccedilla -40 -KPX Agrave G -50 -KPX Agrave Gbreve -50 -KPX Agrave Gcommaaccent -50 -KPX Agrave O -40 -KPX Agrave Oacute -40 -KPX Agrave Ocircumflex -40 -KPX Agrave Odieresis -40 -KPX Agrave Ograve -40 -KPX Agrave Ohungarumlaut -40 -KPX Agrave Omacron -40 -KPX Agrave Oslash -40 -KPX Agrave Otilde -40 -KPX Agrave Q -40 -KPX Agrave T -90 -KPX Agrave Tcaron -90 -KPX Agrave Tcommaaccent -90 -KPX Agrave U -50 -KPX Agrave Uacute -50 -KPX Agrave Ucircumflex -50 -KPX Agrave Udieresis -50 -KPX Agrave Ugrave -50 -KPX Agrave Uhungarumlaut -50 -KPX Agrave Umacron -50 -KPX Agrave Uogonek -50 -KPX Agrave Uring -50 -KPX Agrave V -80 -KPX Agrave W -60 -KPX Agrave Y -110 -KPX Agrave Yacute -110 -KPX Agrave Ydieresis -110 -KPX Agrave u -30 -KPX Agrave uacute -30 -KPX Agrave ucircumflex -30 -KPX Agrave udieresis -30 -KPX Agrave ugrave -30 -KPX Agrave uhungarumlaut -30 -KPX Agrave umacron -30 -KPX Agrave uogonek -30 -KPX Agrave uring -30 -KPX Agrave v -40 -KPX Agrave w -30 -KPX Agrave y -30 -KPX Agrave yacute -30 -KPX Agrave ydieresis -30 -KPX Amacron C -40 -KPX Amacron Cacute -40 -KPX Amacron Ccaron -40 -KPX Amacron Ccedilla -40 -KPX Amacron G -50 -KPX Amacron Gbreve -50 -KPX Amacron Gcommaaccent -50 -KPX Amacron O -40 -KPX Amacron Oacute -40 -KPX Amacron Ocircumflex -40 -KPX Amacron Odieresis -40 -KPX Amacron Ograve -40 -KPX Amacron Ohungarumlaut -40 -KPX Amacron Omacron -40 -KPX Amacron Oslash -40 -KPX Amacron Otilde -40 -KPX Amacron Q -40 -KPX Amacron T -90 -KPX Amacron Tcaron -90 -KPX Amacron Tcommaaccent -90 -KPX Amacron U -50 -KPX Amacron Uacute -50 -KPX Amacron Ucircumflex -50 -KPX Amacron Udieresis -50 -KPX Amacron Ugrave -50 -KPX Amacron Uhungarumlaut -50 -KPX Amacron Umacron -50 -KPX Amacron Uogonek -50 -KPX Amacron Uring -50 -KPX Amacron V -80 -KPX Amacron W -60 -KPX Amacron Y -110 -KPX Amacron Yacute -110 -KPX Amacron Ydieresis -110 -KPX Amacron u -30 -KPX Amacron uacute -30 -KPX Amacron ucircumflex -30 -KPX Amacron udieresis -30 -KPX Amacron ugrave -30 -KPX Amacron uhungarumlaut -30 -KPX Amacron umacron -30 -KPX Amacron uogonek -30 -KPX Amacron uring -30 -KPX Amacron v -40 -KPX Amacron w -30 -KPX Amacron y -30 -KPX Amacron yacute -30 -KPX Amacron ydieresis -30 -KPX Aogonek C -40 -KPX Aogonek Cacute -40 -KPX Aogonek Ccaron -40 -KPX Aogonek Ccedilla -40 -KPX Aogonek G -50 -KPX Aogonek Gbreve -50 -KPX Aogonek Gcommaaccent -50 -KPX Aogonek O -40 -KPX Aogonek Oacute -40 -KPX Aogonek Ocircumflex -40 -KPX Aogonek Odieresis -40 -KPX Aogonek Ograve -40 -KPX Aogonek Ohungarumlaut -40 -KPX Aogonek Omacron -40 -KPX Aogonek Oslash -40 -KPX Aogonek Otilde -40 -KPX Aogonek Q -40 -KPX Aogonek T -90 -KPX Aogonek Tcaron -90 -KPX Aogonek Tcommaaccent -90 -KPX Aogonek U -50 -KPX Aogonek Uacute -50 -KPX Aogonek Ucircumflex -50 -KPX Aogonek Udieresis -50 -KPX Aogonek Ugrave -50 -KPX Aogonek Uhungarumlaut -50 -KPX Aogonek Umacron -50 -KPX Aogonek Uogonek -50 -KPX Aogonek Uring -50 -KPX Aogonek V -80 -KPX Aogonek W -60 -KPX Aogonek Y -110 -KPX Aogonek Yacute -110 -KPX Aogonek Ydieresis -110 -KPX Aogonek u -30 -KPX Aogonek uacute -30 -KPX Aogonek ucircumflex -30 -KPX Aogonek udieresis -30 -KPX Aogonek ugrave -30 -KPX Aogonek uhungarumlaut -30 -KPX Aogonek umacron -30 -KPX Aogonek uogonek -30 -KPX Aogonek uring -30 -KPX Aogonek v -40 -KPX Aogonek w -30 -KPX Aogonek y -30 -KPX Aogonek yacute -30 -KPX Aogonek ydieresis -30 -KPX Aring C -40 -KPX Aring Cacute -40 -KPX Aring Ccaron -40 -KPX Aring Ccedilla -40 -KPX Aring G -50 -KPX Aring Gbreve -50 -KPX Aring Gcommaaccent -50 -KPX Aring O -40 -KPX Aring Oacute -40 -KPX Aring Ocircumflex -40 -KPX Aring Odieresis -40 -KPX Aring Ograve -40 -KPX Aring Ohungarumlaut -40 -KPX Aring Omacron -40 -KPX Aring Oslash -40 -KPX Aring Otilde -40 -KPX Aring Q -40 -KPX Aring T -90 -KPX Aring Tcaron -90 -KPX Aring Tcommaaccent -90 -KPX Aring U -50 -KPX Aring Uacute -50 -KPX Aring Ucircumflex -50 -KPX Aring Udieresis -50 -KPX Aring Ugrave -50 -KPX Aring Uhungarumlaut -50 -KPX Aring Umacron -50 -KPX Aring Uogonek -50 -KPX Aring Uring -50 -KPX Aring V -80 -KPX Aring W -60 -KPX Aring Y -110 -KPX Aring Yacute -110 -KPX Aring Ydieresis -110 -KPX Aring u -30 -KPX Aring uacute -30 -KPX Aring ucircumflex -30 -KPX Aring udieresis -30 -KPX Aring ugrave -30 -KPX Aring uhungarumlaut -30 -KPX Aring umacron -30 -KPX Aring uogonek -30 -KPX Aring uring -30 -KPX Aring v -40 -KPX Aring w -30 -KPX Aring y -30 -KPX Aring yacute -30 -KPX Aring ydieresis -30 -KPX Atilde C -40 -KPX Atilde Cacute -40 -KPX Atilde Ccaron -40 -KPX Atilde Ccedilla -40 -KPX Atilde G -50 -KPX Atilde Gbreve -50 -KPX Atilde Gcommaaccent -50 -KPX Atilde O -40 -KPX Atilde Oacute -40 -KPX Atilde Ocircumflex -40 -KPX Atilde Odieresis -40 -KPX Atilde Ograve -40 -KPX Atilde Ohungarumlaut -40 -KPX Atilde Omacron -40 -KPX Atilde Oslash -40 -KPX Atilde Otilde -40 -KPX Atilde Q -40 -KPX Atilde T -90 -KPX Atilde Tcaron -90 -KPX Atilde Tcommaaccent -90 -KPX Atilde U -50 -KPX Atilde Uacute -50 -KPX Atilde Ucircumflex -50 -KPX Atilde Udieresis -50 -KPX Atilde Ugrave -50 -KPX Atilde Uhungarumlaut -50 -KPX Atilde Umacron -50 -KPX Atilde Uogonek -50 -KPX Atilde Uring -50 -KPX Atilde V -80 -KPX Atilde W -60 -KPX Atilde Y -110 -KPX Atilde Yacute -110 -KPX Atilde Ydieresis -110 -KPX Atilde u -30 -KPX Atilde uacute -30 -KPX Atilde ucircumflex -30 -KPX Atilde udieresis -30 -KPX Atilde ugrave -30 -KPX Atilde uhungarumlaut -30 -KPX Atilde umacron -30 -KPX Atilde uogonek -30 -KPX Atilde uring -30 -KPX Atilde v -40 -KPX Atilde w -30 -KPX Atilde y -30 -KPX Atilde yacute -30 -KPX Atilde ydieresis -30 -KPX B A -30 -KPX B Aacute -30 -KPX B Abreve -30 -KPX B Acircumflex -30 -KPX B Adieresis -30 -KPX B Agrave -30 -KPX B Amacron -30 -KPX B Aogonek -30 -KPX B Aring -30 -KPX B Atilde -30 -KPX B U -10 -KPX B Uacute -10 -KPX B Ucircumflex -10 -KPX B Udieresis -10 -KPX B Ugrave -10 -KPX B Uhungarumlaut -10 -KPX B Umacron -10 -KPX B Uogonek -10 -KPX B Uring -10 -KPX D A -40 -KPX D Aacute -40 -KPX D Abreve -40 -KPX D Acircumflex -40 -KPX D Adieresis -40 -KPX D Agrave -40 -KPX D Amacron -40 -KPX D Aogonek -40 -KPX D Aring -40 -KPX D Atilde -40 -KPX D V -40 -KPX D W -40 -KPX D Y -70 -KPX D Yacute -70 -KPX D Ydieresis -70 -KPX D comma -30 -KPX D period -30 -KPX Dcaron A -40 -KPX Dcaron Aacute -40 -KPX Dcaron Abreve -40 -KPX Dcaron Acircumflex -40 -KPX Dcaron Adieresis -40 -KPX Dcaron Agrave -40 -KPX Dcaron Amacron -40 -KPX Dcaron Aogonek -40 -KPX Dcaron Aring -40 -KPX Dcaron Atilde -40 -KPX Dcaron V -40 -KPX Dcaron W -40 -KPX Dcaron Y -70 -KPX Dcaron Yacute -70 -KPX Dcaron Ydieresis -70 -KPX Dcaron comma -30 -KPX Dcaron period -30 -KPX Dcroat A -40 -KPX Dcroat Aacute -40 -KPX Dcroat Abreve -40 -KPX Dcroat Acircumflex -40 -KPX Dcroat Adieresis -40 -KPX Dcroat Agrave -40 -KPX Dcroat Amacron -40 -KPX Dcroat Aogonek -40 -KPX Dcroat Aring -40 -KPX Dcroat Atilde -40 -KPX Dcroat V -40 -KPX Dcroat W -40 -KPX Dcroat Y -70 -KPX Dcroat Yacute -70 -KPX Dcroat Ydieresis -70 -KPX Dcroat comma -30 -KPX Dcroat period -30 -KPX F A -80 -KPX F Aacute -80 -KPX F Abreve -80 -KPX F Acircumflex -80 -KPX F Adieresis -80 -KPX F Agrave -80 -KPX F Amacron -80 -KPX F Aogonek -80 -KPX F Aring -80 -KPX F Atilde -80 -KPX F a -20 -KPX F aacute -20 -KPX F abreve -20 -KPX F acircumflex -20 -KPX F adieresis -20 -KPX F agrave -20 -KPX F amacron -20 -KPX F aogonek -20 -KPX F aring -20 -KPX F atilde -20 -KPX F comma -100 -KPX F period -100 -KPX J A -20 -KPX J Aacute -20 -KPX J Abreve -20 -KPX J Acircumflex -20 -KPX J Adieresis -20 -KPX J Agrave -20 -KPX J Amacron -20 -KPX J Aogonek -20 -KPX J Aring -20 -KPX J Atilde -20 -KPX J comma -20 -KPX J period -20 -KPX J u -20 -KPX J uacute -20 -KPX J ucircumflex -20 -KPX J udieresis -20 -KPX J ugrave -20 -KPX J uhungarumlaut -20 -KPX J umacron -20 -KPX J uogonek -20 -KPX J uring -20 -KPX K O -30 -KPX K Oacute -30 -KPX K Ocircumflex -30 -KPX K Odieresis -30 -KPX K Ograve -30 -KPX K Ohungarumlaut -30 -KPX K Omacron -30 -KPX K Oslash -30 -KPX K Otilde -30 -KPX K e -15 -KPX K eacute -15 -KPX K ecaron -15 -KPX K ecircumflex -15 -KPX K edieresis -15 -KPX K edotaccent -15 -KPX K egrave -15 -KPX K emacron -15 -KPX K eogonek -15 -KPX K o -35 -KPX K oacute -35 -KPX K ocircumflex -35 -KPX K odieresis -35 -KPX K ograve -35 -KPX K ohungarumlaut -35 -KPX K omacron -35 -KPX K oslash -35 -KPX K otilde -35 -KPX K u -30 -KPX K uacute -30 -KPX K ucircumflex -30 -KPX K udieresis -30 -KPX K ugrave -30 -KPX K uhungarumlaut -30 -KPX K umacron -30 -KPX K uogonek -30 -KPX K uring -30 -KPX K y -40 -KPX K yacute -40 -KPX K ydieresis -40 -KPX Kcommaaccent O -30 -KPX Kcommaaccent Oacute -30 -KPX Kcommaaccent Ocircumflex -30 -KPX Kcommaaccent Odieresis -30 -KPX Kcommaaccent Ograve -30 -KPX Kcommaaccent Ohungarumlaut -30 -KPX Kcommaaccent Omacron -30 -KPX Kcommaaccent Oslash -30 -KPX Kcommaaccent Otilde -30 -KPX Kcommaaccent e -15 -KPX Kcommaaccent eacute -15 -KPX Kcommaaccent ecaron -15 -KPX Kcommaaccent ecircumflex -15 -KPX Kcommaaccent edieresis -15 -KPX Kcommaaccent edotaccent -15 -KPX Kcommaaccent egrave -15 -KPX Kcommaaccent emacron -15 -KPX Kcommaaccent eogonek -15 -KPX Kcommaaccent o -35 -KPX Kcommaaccent oacute -35 -KPX Kcommaaccent ocircumflex -35 -KPX Kcommaaccent odieresis -35 -KPX Kcommaaccent ograve -35 -KPX Kcommaaccent ohungarumlaut -35 -KPX Kcommaaccent omacron -35 -KPX Kcommaaccent oslash -35 -KPX Kcommaaccent otilde -35 -KPX Kcommaaccent u -30 -KPX Kcommaaccent uacute -30 -KPX Kcommaaccent ucircumflex -30 -KPX Kcommaaccent udieresis -30 -KPX Kcommaaccent ugrave -30 -KPX Kcommaaccent uhungarumlaut -30 -KPX Kcommaaccent umacron -30 -KPX Kcommaaccent uogonek -30 -KPX Kcommaaccent uring -30 -KPX Kcommaaccent y -40 -KPX Kcommaaccent yacute -40 -KPX Kcommaaccent ydieresis -40 -KPX L T -90 -KPX L Tcaron -90 -KPX L Tcommaaccent -90 -KPX L V -110 -KPX L W -80 -KPX L Y -120 -KPX L Yacute -120 -KPX L Ydieresis -120 -KPX L quotedblright -140 -KPX L quoteright -140 -KPX L y -30 -KPX L yacute -30 -KPX L ydieresis -30 -KPX Lacute T -90 -KPX Lacute Tcaron -90 -KPX Lacute Tcommaaccent -90 -KPX Lacute V -110 -KPX Lacute W -80 -KPX Lacute Y -120 -KPX Lacute Yacute -120 -KPX Lacute Ydieresis -120 -KPX Lacute quotedblright -140 -KPX Lacute quoteright -140 -KPX Lacute y -30 -KPX Lacute yacute -30 -KPX Lacute ydieresis -30 -KPX Lcommaaccent T -90 -KPX Lcommaaccent Tcaron -90 -KPX Lcommaaccent Tcommaaccent -90 -KPX Lcommaaccent V -110 -KPX Lcommaaccent W -80 -KPX Lcommaaccent Y -120 -KPX Lcommaaccent Yacute -120 -KPX Lcommaaccent Ydieresis -120 -KPX Lcommaaccent quotedblright -140 -KPX Lcommaaccent quoteright -140 -KPX Lcommaaccent y -30 -KPX Lcommaaccent yacute -30 -KPX Lcommaaccent ydieresis -30 -KPX Lslash T -90 -KPX Lslash Tcaron -90 -KPX Lslash Tcommaaccent -90 -KPX Lslash V -110 -KPX Lslash W -80 -KPX Lslash Y -120 -KPX Lslash Yacute -120 -KPX Lslash Ydieresis -120 -KPX Lslash quotedblright -140 -KPX Lslash quoteright -140 -KPX Lslash y -30 -KPX Lslash yacute -30 -KPX Lslash ydieresis -30 -KPX O A -50 -KPX O Aacute -50 -KPX O Abreve -50 -KPX O Acircumflex -50 -KPX O Adieresis -50 -KPX O Agrave -50 -KPX O Amacron -50 -KPX O Aogonek -50 -KPX O Aring -50 -KPX O Atilde -50 -KPX O T -40 -KPX O Tcaron -40 -KPX O Tcommaaccent -40 -KPX O V -50 -KPX O W -50 -KPX O X -50 -KPX O Y -70 -KPX O Yacute -70 -KPX O Ydieresis -70 -KPX O comma -40 -KPX O period -40 -KPX Oacute A -50 -KPX Oacute Aacute -50 -KPX Oacute Abreve -50 -KPX Oacute Acircumflex -50 -KPX Oacute Adieresis -50 -KPX Oacute Agrave -50 -KPX Oacute Amacron -50 -KPX Oacute Aogonek -50 -KPX Oacute Aring -50 -KPX Oacute Atilde -50 -KPX Oacute T -40 -KPX Oacute Tcaron -40 -KPX Oacute Tcommaaccent -40 -KPX Oacute V -50 -KPX Oacute W -50 -KPX Oacute X -50 -KPX Oacute Y -70 -KPX Oacute Yacute -70 -KPX Oacute Ydieresis -70 -KPX Oacute comma -40 -KPX Oacute period -40 -KPX Ocircumflex A -50 -KPX Ocircumflex Aacute -50 -KPX Ocircumflex Abreve -50 -KPX Ocircumflex Acircumflex -50 -KPX Ocircumflex Adieresis -50 -KPX Ocircumflex Agrave -50 -KPX Ocircumflex Amacron -50 -KPX Ocircumflex Aogonek -50 -KPX Ocircumflex Aring -50 -KPX Ocircumflex Atilde -50 -KPX Ocircumflex T -40 -KPX Ocircumflex Tcaron -40 -KPX Ocircumflex Tcommaaccent -40 -KPX Ocircumflex V -50 -KPX Ocircumflex W -50 -KPX Ocircumflex X -50 -KPX Ocircumflex Y -70 -KPX Ocircumflex Yacute -70 -KPX Ocircumflex Ydieresis -70 -KPX Ocircumflex comma -40 -KPX Ocircumflex period -40 -KPX Odieresis A -50 -KPX Odieresis Aacute -50 -KPX Odieresis Abreve -50 -KPX Odieresis Acircumflex -50 -KPX Odieresis Adieresis -50 -KPX Odieresis Agrave -50 -KPX Odieresis Amacron -50 -KPX Odieresis Aogonek -50 -KPX Odieresis Aring -50 -KPX Odieresis Atilde -50 -KPX Odieresis T -40 -KPX Odieresis Tcaron -40 -KPX Odieresis Tcommaaccent -40 -KPX Odieresis V -50 -KPX Odieresis W -50 -KPX Odieresis X -50 -KPX Odieresis Y -70 -KPX Odieresis Yacute -70 -KPX Odieresis Ydieresis -70 -KPX Odieresis comma -40 -KPX Odieresis period -40 -KPX Ograve A -50 -KPX Ograve Aacute -50 -KPX Ograve Abreve -50 -KPX Ograve Acircumflex -50 -KPX Ograve Adieresis -50 -KPX Ograve Agrave -50 -KPX Ograve Amacron -50 -KPX Ograve Aogonek -50 -KPX Ograve Aring -50 -KPX Ograve Atilde -50 -KPX Ograve T -40 -KPX Ograve Tcaron -40 -KPX Ograve Tcommaaccent -40 -KPX Ograve V -50 -KPX Ograve W -50 -KPX Ograve X -50 -KPX Ograve Y -70 -KPX Ograve Yacute -70 -KPX Ograve Ydieresis -70 -KPX Ograve comma -40 -KPX Ograve period -40 -KPX Ohungarumlaut A -50 -KPX Ohungarumlaut Aacute -50 -KPX Ohungarumlaut Abreve -50 -KPX Ohungarumlaut Acircumflex -50 -KPX Ohungarumlaut Adieresis -50 -KPX Ohungarumlaut Agrave -50 -KPX Ohungarumlaut Amacron -50 -KPX Ohungarumlaut Aogonek -50 -KPX Ohungarumlaut Aring -50 -KPX Ohungarumlaut Atilde -50 -KPX Ohungarumlaut T -40 -KPX Ohungarumlaut Tcaron -40 -KPX Ohungarumlaut Tcommaaccent -40 -KPX Ohungarumlaut V -50 -KPX Ohungarumlaut W -50 -KPX Ohungarumlaut X -50 -KPX Ohungarumlaut Y -70 -KPX Ohungarumlaut Yacute -70 -KPX Ohungarumlaut Ydieresis -70 -KPX Ohungarumlaut comma -40 -KPX Ohungarumlaut period -40 -KPX Omacron A -50 -KPX Omacron Aacute -50 -KPX Omacron Abreve -50 -KPX Omacron Acircumflex -50 -KPX Omacron Adieresis -50 -KPX Omacron Agrave -50 -KPX Omacron Amacron -50 -KPX Omacron Aogonek -50 -KPX Omacron Aring -50 -KPX Omacron Atilde -50 -KPX Omacron T -40 -KPX Omacron Tcaron -40 -KPX Omacron Tcommaaccent -40 -KPX Omacron V -50 -KPX Omacron W -50 -KPX Omacron X -50 -KPX Omacron Y -70 -KPX Omacron Yacute -70 -KPX Omacron Ydieresis -70 -KPX Omacron comma -40 -KPX Omacron period -40 -KPX Oslash A -50 -KPX Oslash Aacute -50 -KPX Oslash Abreve -50 -KPX Oslash Acircumflex -50 -KPX Oslash Adieresis -50 -KPX Oslash Agrave -50 -KPX Oslash Amacron -50 -KPX Oslash Aogonek -50 -KPX Oslash Aring -50 -KPX Oslash Atilde -50 -KPX Oslash T -40 -KPX Oslash Tcaron -40 -KPX Oslash Tcommaaccent -40 -KPX Oslash V -50 -KPX Oslash W -50 -KPX Oslash X -50 -KPX Oslash Y -70 -KPX Oslash Yacute -70 -KPX Oslash Ydieresis -70 -KPX Oslash comma -40 -KPX Oslash period -40 -KPX Otilde A -50 -KPX Otilde Aacute -50 -KPX Otilde Abreve -50 -KPX Otilde Acircumflex -50 -KPX Otilde Adieresis -50 -KPX Otilde Agrave -50 -KPX Otilde Amacron -50 -KPX Otilde Aogonek -50 -KPX Otilde Aring -50 -KPX Otilde Atilde -50 -KPX Otilde T -40 -KPX Otilde Tcaron -40 -KPX Otilde Tcommaaccent -40 -KPX Otilde V -50 -KPX Otilde W -50 -KPX Otilde X -50 -KPX Otilde Y -70 -KPX Otilde Yacute -70 -KPX Otilde Ydieresis -70 -KPX Otilde comma -40 -KPX Otilde period -40 -KPX P A -100 -KPX P Aacute -100 -KPX P Abreve -100 -KPX P Acircumflex -100 -KPX P Adieresis -100 -KPX P Agrave -100 -KPX P Amacron -100 -KPX P Aogonek -100 -KPX P Aring -100 -KPX P Atilde -100 -KPX P a -30 -KPX P aacute -30 -KPX P abreve -30 -KPX P acircumflex -30 -KPX P adieresis -30 -KPX P agrave -30 -KPX P amacron -30 -KPX P aogonek -30 -KPX P aring -30 -KPX P atilde -30 -KPX P comma -120 -KPX P e -30 -KPX P eacute -30 -KPX P ecaron -30 -KPX P ecircumflex -30 -KPX P edieresis -30 -KPX P edotaccent -30 -KPX P egrave -30 -KPX P emacron -30 -KPX P eogonek -30 -KPX P o -40 -KPX P oacute -40 -KPX P ocircumflex -40 -KPX P odieresis -40 -KPX P ograve -40 -KPX P ohungarumlaut -40 -KPX P omacron -40 -KPX P oslash -40 -KPX P otilde -40 -KPX P period -120 -KPX Q U -10 -KPX Q Uacute -10 -KPX Q Ucircumflex -10 -KPX Q Udieresis -10 -KPX Q Ugrave -10 -KPX Q Uhungarumlaut -10 -KPX Q Umacron -10 -KPX Q Uogonek -10 -KPX Q Uring -10 -KPX Q comma 20 -KPX Q period 20 -KPX R O -20 -KPX R Oacute -20 -KPX R Ocircumflex -20 -KPX R Odieresis -20 -KPX R Ograve -20 -KPX R Ohungarumlaut -20 -KPX R Omacron -20 -KPX R Oslash -20 -KPX R Otilde -20 -KPX R T -20 -KPX R Tcaron -20 -KPX R Tcommaaccent -20 -KPX R U -20 -KPX R Uacute -20 -KPX R Ucircumflex -20 -KPX R Udieresis -20 -KPX R Ugrave -20 -KPX R Uhungarumlaut -20 -KPX R Umacron -20 -KPX R Uogonek -20 -KPX R Uring -20 -KPX R V -50 -KPX R W -40 -KPX R Y -50 -KPX R Yacute -50 -KPX R Ydieresis -50 -KPX Racute O -20 -KPX Racute Oacute -20 -KPX Racute Ocircumflex -20 -KPX Racute Odieresis -20 -KPX Racute Ograve -20 -KPX Racute Ohungarumlaut -20 -KPX Racute Omacron -20 -KPX Racute Oslash -20 -KPX Racute Otilde -20 -KPX Racute T -20 -KPX Racute Tcaron -20 -KPX Racute Tcommaaccent -20 -KPX Racute U -20 -KPX Racute Uacute -20 -KPX Racute Ucircumflex -20 -KPX Racute Udieresis -20 -KPX Racute Ugrave -20 -KPX Racute Uhungarumlaut -20 -KPX Racute Umacron -20 -KPX Racute Uogonek -20 -KPX Racute Uring -20 -KPX Racute V -50 -KPX Racute W -40 -KPX Racute Y -50 -KPX Racute Yacute -50 -KPX Racute Ydieresis -50 -KPX Rcaron O -20 -KPX Rcaron Oacute -20 -KPX Rcaron Ocircumflex -20 -KPX Rcaron Odieresis -20 -KPX Rcaron Ograve -20 -KPX Rcaron Ohungarumlaut -20 -KPX Rcaron Omacron -20 -KPX Rcaron Oslash -20 -KPX Rcaron Otilde -20 -KPX Rcaron T -20 -KPX Rcaron Tcaron -20 -KPX Rcaron Tcommaaccent -20 -KPX Rcaron U -20 -KPX Rcaron Uacute -20 -KPX Rcaron Ucircumflex -20 -KPX Rcaron Udieresis -20 -KPX Rcaron Ugrave -20 -KPX Rcaron Uhungarumlaut -20 -KPX Rcaron Umacron -20 -KPX Rcaron Uogonek -20 -KPX Rcaron Uring -20 -KPX Rcaron V -50 -KPX Rcaron W -40 -KPX Rcaron Y -50 -KPX Rcaron Yacute -50 -KPX Rcaron Ydieresis -50 -KPX Rcommaaccent O -20 -KPX Rcommaaccent Oacute -20 -KPX Rcommaaccent Ocircumflex -20 -KPX Rcommaaccent Odieresis -20 -KPX Rcommaaccent Ograve -20 -KPX Rcommaaccent Ohungarumlaut -20 -KPX Rcommaaccent Omacron -20 -KPX Rcommaaccent Oslash -20 -KPX Rcommaaccent Otilde -20 -KPX Rcommaaccent T -20 -KPX Rcommaaccent Tcaron -20 -KPX Rcommaaccent Tcommaaccent -20 -KPX Rcommaaccent U -20 -KPX Rcommaaccent Uacute -20 -KPX Rcommaaccent Ucircumflex -20 -KPX Rcommaaccent Udieresis -20 -KPX Rcommaaccent Ugrave -20 -KPX Rcommaaccent Uhungarumlaut -20 -KPX Rcommaaccent Umacron -20 -KPX Rcommaaccent Uogonek -20 -KPX Rcommaaccent Uring -20 -KPX Rcommaaccent V -50 -KPX Rcommaaccent W -40 -KPX Rcommaaccent Y -50 -KPX Rcommaaccent Yacute -50 -KPX Rcommaaccent Ydieresis -50 -KPX T A -90 -KPX T Aacute -90 -KPX T Abreve -90 -KPX T Acircumflex -90 -KPX T Adieresis -90 -KPX T Agrave -90 -KPX T Amacron -90 -KPX T Aogonek -90 -KPX T Aring -90 -KPX T Atilde -90 -KPX T O -40 -KPX T Oacute -40 -KPX T Ocircumflex -40 -KPX T Odieresis -40 -KPX T Ograve -40 -KPX T Ohungarumlaut -40 -KPX T Omacron -40 -KPX T Oslash -40 -KPX T Otilde -40 -KPX T a -80 -KPX T aacute -80 -KPX T abreve -80 -KPX T acircumflex -80 -KPX T adieresis -80 -KPX T agrave -80 -KPX T amacron -80 -KPX T aogonek -80 -KPX T aring -80 -KPX T atilde -80 -KPX T colon -40 -KPX T comma -80 -KPX T e -60 -KPX T eacute -60 -KPX T ecaron -60 -KPX T ecircumflex -60 -KPX T edieresis -60 -KPX T edotaccent -60 -KPX T egrave -60 -KPX T emacron -60 -KPX T eogonek -60 -KPX T hyphen -120 -KPX T o -80 -KPX T oacute -80 -KPX T ocircumflex -80 -KPX T odieresis -80 -KPX T ograve -80 -KPX T ohungarumlaut -80 -KPX T omacron -80 -KPX T oslash -80 -KPX T otilde -80 -KPX T period -80 -KPX T r -80 -KPX T racute -80 -KPX T rcommaaccent -80 -KPX T semicolon -40 -KPX T u -90 -KPX T uacute -90 -KPX T ucircumflex -90 -KPX T udieresis -90 -KPX T ugrave -90 -KPX T uhungarumlaut -90 -KPX T umacron -90 -KPX T uogonek -90 -KPX T uring -90 -KPX T w -60 -KPX T y -60 -KPX T yacute -60 -KPX T ydieresis -60 -KPX Tcaron A -90 -KPX Tcaron Aacute -90 -KPX Tcaron Abreve -90 -KPX Tcaron Acircumflex -90 -KPX Tcaron Adieresis -90 -KPX Tcaron Agrave -90 -KPX Tcaron Amacron -90 -KPX Tcaron Aogonek -90 -KPX Tcaron Aring -90 -KPX Tcaron Atilde -90 -KPX Tcaron O -40 -KPX Tcaron Oacute -40 -KPX Tcaron Ocircumflex -40 -KPX Tcaron Odieresis -40 -KPX Tcaron Ograve -40 -KPX Tcaron Ohungarumlaut -40 -KPX Tcaron Omacron -40 -KPX Tcaron Oslash -40 -KPX Tcaron Otilde -40 -KPX Tcaron a -80 -KPX Tcaron aacute -80 -KPX Tcaron abreve -80 -KPX Tcaron acircumflex -80 -KPX Tcaron adieresis -80 -KPX Tcaron agrave -80 -KPX Tcaron amacron -80 -KPX Tcaron aogonek -80 -KPX Tcaron aring -80 -KPX Tcaron atilde -80 -KPX Tcaron colon -40 -KPX Tcaron comma -80 -KPX Tcaron e -60 -KPX Tcaron eacute -60 -KPX Tcaron ecaron -60 -KPX Tcaron ecircumflex -60 -KPX Tcaron edieresis -60 -KPX Tcaron edotaccent -60 -KPX Tcaron egrave -60 -KPX Tcaron emacron -60 -KPX Tcaron eogonek -60 -KPX Tcaron hyphen -120 -KPX Tcaron o -80 -KPX Tcaron oacute -80 -KPX Tcaron ocircumflex -80 -KPX Tcaron odieresis -80 -KPX Tcaron ograve -80 -KPX Tcaron ohungarumlaut -80 -KPX Tcaron omacron -80 -KPX Tcaron oslash -80 -KPX Tcaron otilde -80 -KPX Tcaron period -80 -KPX Tcaron r -80 -KPX Tcaron racute -80 -KPX Tcaron rcommaaccent -80 -KPX Tcaron semicolon -40 -KPX Tcaron u -90 -KPX Tcaron uacute -90 -KPX Tcaron ucircumflex -90 -KPX Tcaron udieresis -90 -KPX Tcaron ugrave -90 -KPX Tcaron uhungarumlaut -90 -KPX Tcaron umacron -90 -KPX Tcaron uogonek -90 -KPX Tcaron uring -90 -KPX Tcaron w -60 -KPX Tcaron y -60 -KPX Tcaron yacute -60 -KPX Tcaron ydieresis -60 -KPX Tcommaaccent A -90 -KPX Tcommaaccent Aacute -90 -KPX Tcommaaccent Abreve -90 -KPX Tcommaaccent Acircumflex -90 -KPX Tcommaaccent Adieresis -90 -KPX Tcommaaccent Agrave -90 -KPX Tcommaaccent Amacron -90 -KPX Tcommaaccent Aogonek -90 -KPX Tcommaaccent Aring -90 -KPX Tcommaaccent Atilde -90 -KPX Tcommaaccent O -40 -KPX Tcommaaccent Oacute -40 -KPX Tcommaaccent Ocircumflex -40 -KPX Tcommaaccent Odieresis -40 -KPX Tcommaaccent Ograve -40 -KPX Tcommaaccent Ohungarumlaut -40 -KPX Tcommaaccent Omacron -40 -KPX Tcommaaccent Oslash -40 -KPX Tcommaaccent Otilde -40 -KPX Tcommaaccent a -80 -KPX Tcommaaccent aacute -80 -KPX Tcommaaccent abreve -80 -KPX Tcommaaccent acircumflex -80 -KPX Tcommaaccent adieresis -80 -KPX Tcommaaccent agrave -80 -KPX Tcommaaccent amacron -80 -KPX Tcommaaccent aogonek -80 -KPX Tcommaaccent aring -80 -KPX Tcommaaccent atilde -80 -KPX Tcommaaccent colon -40 -KPX Tcommaaccent comma -80 -KPX Tcommaaccent e -60 -KPX Tcommaaccent eacute -60 -KPX Tcommaaccent ecaron -60 -KPX Tcommaaccent ecircumflex -60 -KPX Tcommaaccent edieresis -60 -KPX Tcommaaccent edotaccent -60 -KPX Tcommaaccent egrave -60 -KPX Tcommaaccent emacron -60 -KPX Tcommaaccent eogonek -60 -KPX Tcommaaccent hyphen -120 -KPX Tcommaaccent o -80 -KPX Tcommaaccent oacute -80 -KPX Tcommaaccent ocircumflex -80 -KPX Tcommaaccent odieresis -80 -KPX Tcommaaccent ograve -80 -KPX Tcommaaccent ohungarumlaut -80 -KPX Tcommaaccent omacron -80 -KPX Tcommaaccent oslash -80 -KPX Tcommaaccent otilde -80 -KPX Tcommaaccent period -80 -KPX Tcommaaccent r -80 -KPX Tcommaaccent racute -80 -KPX Tcommaaccent rcommaaccent -80 -KPX Tcommaaccent semicolon -40 -KPX Tcommaaccent u -90 -KPX Tcommaaccent uacute -90 -KPX Tcommaaccent ucircumflex -90 -KPX Tcommaaccent udieresis -90 -KPX Tcommaaccent ugrave -90 -KPX Tcommaaccent uhungarumlaut -90 -KPX Tcommaaccent umacron -90 -KPX Tcommaaccent uogonek -90 -KPX Tcommaaccent uring -90 -KPX Tcommaaccent w -60 -KPX Tcommaaccent y -60 -KPX Tcommaaccent yacute -60 -KPX Tcommaaccent ydieresis -60 -KPX U A -50 -KPX U Aacute -50 -KPX U Abreve -50 -KPX U Acircumflex -50 -KPX U Adieresis -50 -KPX U Agrave -50 -KPX U Amacron -50 -KPX U Aogonek -50 -KPX U Aring -50 -KPX U Atilde -50 -KPX U comma -30 -KPX U period -30 -KPX Uacute A -50 -KPX Uacute Aacute -50 -KPX Uacute Abreve -50 -KPX Uacute Acircumflex -50 -KPX Uacute Adieresis -50 -KPX Uacute Agrave -50 -KPX Uacute Amacron -50 -KPX Uacute Aogonek -50 -KPX Uacute Aring -50 -KPX Uacute Atilde -50 -KPX Uacute comma -30 -KPX Uacute period -30 -KPX Ucircumflex A -50 -KPX Ucircumflex Aacute -50 -KPX Ucircumflex Abreve -50 -KPX Ucircumflex Acircumflex -50 -KPX Ucircumflex Adieresis -50 -KPX Ucircumflex Agrave -50 -KPX Ucircumflex Amacron -50 -KPX Ucircumflex Aogonek -50 -KPX Ucircumflex Aring -50 -KPX Ucircumflex Atilde -50 -KPX Ucircumflex comma -30 -KPX Ucircumflex period -30 -KPX Udieresis A -50 -KPX Udieresis Aacute -50 -KPX Udieresis Abreve -50 -KPX Udieresis Acircumflex -50 -KPX Udieresis Adieresis -50 -KPX Udieresis Agrave -50 -KPX Udieresis Amacron -50 -KPX Udieresis Aogonek -50 -KPX Udieresis Aring -50 -KPX Udieresis Atilde -50 -KPX Udieresis comma -30 -KPX Udieresis period -30 -KPX Ugrave A -50 -KPX Ugrave Aacute -50 -KPX Ugrave Abreve -50 -KPX Ugrave Acircumflex -50 -KPX Ugrave Adieresis -50 -KPX Ugrave Agrave -50 -KPX Ugrave Amacron -50 -KPX Ugrave Aogonek -50 -KPX Ugrave Aring -50 -KPX Ugrave Atilde -50 -KPX Ugrave comma -30 -KPX Ugrave period -30 -KPX Uhungarumlaut A -50 -KPX Uhungarumlaut Aacute -50 -KPX Uhungarumlaut Abreve -50 -KPX Uhungarumlaut Acircumflex -50 -KPX Uhungarumlaut Adieresis -50 -KPX Uhungarumlaut Agrave -50 -KPX Uhungarumlaut Amacron -50 -KPX Uhungarumlaut Aogonek -50 -KPX Uhungarumlaut Aring -50 -KPX Uhungarumlaut Atilde -50 -KPX Uhungarumlaut comma -30 -KPX Uhungarumlaut period -30 -KPX Umacron A -50 -KPX Umacron Aacute -50 -KPX Umacron Abreve -50 -KPX Umacron Acircumflex -50 -KPX Umacron Adieresis -50 -KPX Umacron Agrave -50 -KPX Umacron Amacron -50 -KPX Umacron Aogonek -50 -KPX Umacron Aring -50 -KPX Umacron Atilde -50 -KPX Umacron comma -30 -KPX Umacron period -30 -KPX Uogonek A -50 -KPX Uogonek Aacute -50 -KPX Uogonek Abreve -50 -KPX Uogonek Acircumflex -50 -KPX Uogonek Adieresis -50 -KPX Uogonek Agrave -50 -KPX Uogonek Amacron -50 -KPX Uogonek Aogonek -50 -KPX Uogonek Aring -50 -KPX Uogonek Atilde -50 -KPX Uogonek comma -30 -KPX Uogonek period -30 -KPX Uring A -50 -KPX Uring Aacute -50 -KPX Uring Abreve -50 -KPX Uring Acircumflex -50 -KPX Uring Adieresis -50 -KPX Uring Agrave -50 -KPX Uring Amacron -50 -KPX Uring Aogonek -50 -KPX Uring Aring -50 -KPX Uring Atilde -50 -KPX Uring comma -30 -KPX Uring period -30 -KPX V A -80 -KPX V Aacute -80 -KPX V Abreve -80 -KPX V Acircumflex -80 -KPX V Adieresis -80 -KPX V Agrave -80 -KPX V Amacron -80 -KPX V Aogonek -80 -KPX V Aring -80 -KPX V Atilde -80 -KPX V G -50 -KPX V Gbreve -50 -KPX V Gcommaaccent -50 -KPX V O -50 -KPX V Oacute -50 -KPX V Ocircumflex -50 -KPX V Odieresis -50 -KPX V Ograve -50 -KPX V Ohungarumlaut -50 -KPX V Omacron -50 -KPX V Oslash -50 -KPX V Otilde -50 -KPX V a -60 -KPX V aacute -60 -KPX V abreve -60 -KPX V acircumflex -60 -KPX V adieresis -60 -KPX V agrave -60 -KPX V amacron -60 -KPX V aogonek -60 -KPX V aring -60 -KPX V atilde -60 -KPX V colon -40 -KPX V comma -120 -KPX V e -50 -KPX V eacute -50 -KPX V ecaron -50 -KPX V ecircumflex -50 -KPX V edieresis -50 -KPX V edotaccent -50 -KPX V egrave -50 -KPX V emacron -50 -KPX V eogonek -50 -KPX V hyphen -80 -KPX V o -90 -KPX V oacute -90 -KPX V ocircumflex -90 -KPX V odieresis -90 -KPX V ograve -90 -KPX V ohungarumlaut -90 -KPX V omacron -90 -KPX V oslash -90 -KPX V otilde -90 -KPX V period -120 -KPX V semicolon -40 -KPX V u -60 -KPX V uacute -60 -KPX V ucircumflex -60 -KPX V udieresis -60 -KPX V ugrave -60 -KPX V uhungarumlaut -60 -KPX V umacron -60 -KPX V uogonek -60 -KPX V uring -60 -KPX W A -60 -KPX W Aacute -60 -KPX W Abreve -60 -KPX W Acircumflex -60 -KPX W Adieresis -60 -KPX W Agrave -60 -KPX W Amacron -60 -KPX W Aogonek -60 -KPX W Aring -60 -KPX W Atilde -60 -KPX W O -20 -KPX W Oacute -20 -KPX W Ocircumflex -20 -KPX W Odieresis -20 -KPX W Ograve -20 -KPX W Ohungarumlaut -20 -KPX W Omacron -20 -KPX W Oslash -20 -KPX W Otilde -20 -KPX W a -40 -KPX W aacute -40 -KPX W abreve -40 -KPX W acircumflex -40 -KPX W adieresis -40 -KPX W agrave -40 -KPX W amacron -40 -KPX W aogonek -40 -KPX W aring -40 -KPX W atilde -40 -KPX W colon -10 -KPX W comma -80 -KPX W e -35 -KPX W eacute -35 -KPX W ecaron -35 -KPX W ecircumflex -35 -KPX W edieresis -35 -KPX W edotaccent -35 -KPX W egrave -35 -KPX W emacron -35 -KPX W eogonek -35 -KPX W hyphen -40 -KPX W o -60 -KPX W oacute -60 -KPX W ocircumflex -60 -KPX W odieresis -60 -KPX W ograve -60 -KPX W ohungarumlaut -60 -KPX W omacron -60 -KPX W oslash -60 -KPX W otilde -60 -KPX W period -80 -KPX W semicolon -10 -KPX W u -45 -KPX W uacute -45 -KPX W ucircumflex -45 -KPX W udieresis -45 -KPX W ugrave -45 -KPX W uhungarumlaut -45 -KPX W umacron -45 -KPX W uogonek -45 -KPX W uring -45 -KPX W y -20 -KPX W yacute -20 -KPX W ydieresis -20 -KPX Y A -110 -KPX Y Aacute -110 -KPX Y Abreve -110 -KPX Y Acircumflex -110 -KPX Y Adieresis -110 -KPX Y Agrave -110 -KPX Y Amacron -110 -KPX Y Aogonek -110 -KPX Y Aring -110 -KPX Y Atilde -110 -KPX Y O -70 -KPX Y Oacute -70 -KPX Y Ocircumflex -70 -KPX Y Odieresis -70 -KPX Y Ograve -70 -KPX Y Ohungarumlaut -70 -KPX Y Omacron -70 -KPX Y Oslash -70 -KPX Y Otilde -70 -KPX Y a -90 -KPX Y aacute -90 -KPX Y abreve -90 -KPX Y acircumflex -90 -KPX Y adieresis -90 -KPX Y agrave -90 -KPX Y amacron -90 -KPX Y aogonek -90 -KPX Y aring -90 -KPX Y atilde -90 -KPX Y colon -50 -KPX Y comma -100 -KPX Y e -80 -KPX Y eacute -80 -KPX Y ecaron -80 -KPX Y ecircumflex -80 -KPX Y edieresis -80 -KPX Y edotaccent -80 -KPX Y egrave -80 -KPX Y emacron -80 -KPX Y eogonek -80 -KPX Y o -100 -KPX Y oacute -100 -KPX Y ocircumflex -100 -KPX Y odieresis -100 -KPX Y ograve -100 -KPX Y ohungarumlaut -100 -KPX Y omacron -100 -KPX Y oslash -100 -KPX Y otilde -100 -KPX Y period -100 -KPX Y semicolon -50 -KPX Y u -100 -KPX Y uacute -100 -KPX Y ucircumflex -100 -KPX Y udieresis -100 -KPX Y ugrave -100 -KPX Y uhungarumlaut -100 -KPX Y umacron -100 -KPX Y uogonek -100 -KPX Y uring -100 -KPX Yacute A -110 -KPX Yacute Aacute -110 -KPX Yacute Abreve -110 -KPX Yacute Acircumflex -110 -KPX Yacute Adieresis -110 -KPX Yacute Agrave -110 -KPX Yacute Amacron -110 -KPX Yacute Aogonek -110 -KPX Yacute Aring -110 -KPX Yacute Atilde -110 -KPX Yacute O -70 -KPX Yacute Oacute -70 -KPX Yacute Ocircumflex -70 -KPX Yacute Odieresis -70 -KPX Yacute Ograve -70 -KPX Yacute Ohungarumlaut -70 -KPX Yacute Omacron -70 -KPX Yacute Oslash -70 -KPX Yacute Otilde -70 -KPX Yacute a -90 -KPX Yacute aacute -90 -KPX Yacute abreve -90 -KPX Yacute acircumflex -90 -KPX Yacute adieresis -90 -KPX Yacute agrave -90 -KPX Yacute amacron -90 -KPX Yacute aogonek -90 -KPX Yacute aring -90 -KPX Yacute atilde -90 -KPX Yacute colon -50 -KPX Yacute comma -100 -KPX Yacute e -80 -KPX Yacute eacute -80 -KPX Yacute ecaron -80 -KPX Yacute ecircumflex -80 -KPX Yacute edieresis -80 -KPX Yacute edotaccent -80 -KPX Yacute egrave -80 -KPX Yacute emacron -80 -KPX Yacute eogonek -80 -KPX Yacute o -100 -KPX Yacute oacute -100 -KPX Yacute ocircumflex -100 -KPX Yacute odieresis -100 -KPX Yacute ograve -100 -KPX Yacute ohungarumlaut -100 -KPX Yacute omacron -100 -KPX Yacute oslash -100 -KPX Yacute otilde -100 -KPX Yacute period -100 -KPX Yacute semicolon -50 -KPX Yacute u -100 -KPX Yacute uacute -100 -KPX Yacute ucircumflex -100 -KPX Yacute udieresis -100 -KPX Yacute ugrave -100 -KPX Yacute uhungarumlaut -100 -KPX Yacute umacron -100 -KPX Yacute uogonek -100 -KPX Yacute uring -100 -KPX Ydieresis A -110 -KPX Ydieresis Aacute -110 -KPX Ydieresis Abreve -110 -KPX Ydieresis Acircumflex -110 -KPX Ydieresis Adieresis -110 -KPX Ydieresis Agrave -110 -KPX Ydieresis Amacron -110 -KPX Ydieresis Aogonek -110 -KPX Ydieresis Aring -110 -KPX Ydieresis Atilde -110 -KPX Ydieresis O -70 -KPX Ydieresis Oacute -70 -KPX Ydieresis Ocircumflex -70 -KPX Ydieresis Odieresis -70 -KPX Ydieresis Ograve -70 -KPX Ydieresis Ohungarumlaut -70 -KPX Ydieresis Omacron -70 -KPX Ydieresis Oslash -70 -KPX Ydieresis Otilde -70 -KPX Ydieresis a -90 -KPX Ydieresis aacute -90 -KPX Ydieresis abreve -90 -KPX Ydieresis acircumflex -90 -KPX Ydieresis adieresis -90 -KPX Ydieresis agrave -90 -KPX Ydieresis amacron -90 -KPX Ydieresis aogonek -90 -KPX Ydieresis aring -90 -KPX Ydieresis atilde -90 -KPX Ydieresis colon -50 -KPX Ydieresis comma -100 -KPX Ydieresis e -80 -KPX Ydieresis eacute -80 -KPX Ydieresis ecaron -80 -KPX Ydieresis ecircumflex -80 -KPX Ydieresis edieresis -80 -KPX Ydieresis edotaccent -80 -KPX Ydieresis egrave -80 -KPX Ydieresis emacron -80 -KPX Ydieresis eogonek -80 -KPX Ydieresis o -100 -KPX Ydieresis oacute -100 -KPX Ydieresis ocircumflex -100 -KPX Ydieresis odieresis -100 -KPX Ydieresis ograve -100 -KPX Ydieresis ohungarumlaut -100 -KPX Ydieresis omacron -100 -KPX Ydieresis oslash -100 -KPX Ydieresis otilde -100 -KPX Ydieresis period -100 -KPX Ydieresis semicolon -50 -KPX Ydieresis u -100 -KPX Ydieresis uacute -100 -KPX Ydieresis ucircumflex -100 -KPX Ydieresis udieresis -100 -KPX Ydieresis ugrave -100 -KPX Ydieresis uhungarumlaut -100 -KPX Ydieresis umacron -100 -KPX Ydieresis uogonek -100 -KPX Ydieresis uring -100 -KPX a g -10 -KPX a gbreve -10 -KPX a gcommaaccent -10 -KPX a v -15 -KPX a w -15 -KPX a y -20 -KPX a yacute -20 -KPX a ydieresis -20 -KPX aacute g -10 -KPX aacute gbreve -10 -KPX aacute gcommaaccent -10 -KPX aacute v -15 -KPX aacute w -15 -KPX aacute y -20 -KPX aacute yacute -20 -KPX aacute ydieresis -20 -KPX abreve g -10 -KPX abreve gbreve -10 -KPX abreve gcommaaccent -10 -KPX abreve v -15 -KPX abreve w -15 -KPX abreve y -20 -KPX abreve yacute -20 -KPX abreve ydieresis -20 -KPX acircumflex g -10 -KPX acircumflex gbreve -10 -KPX acircumflex gcommaaccent -10 -KPX acircumflex v -15 -KPX acircumflex w -15 -KPX acircumflex y -20 -KPX acircumflex yacute -20 -KPX acircumflex ydieresis -20 -KPX adieresis g -10 -KPX adieresis gbreve -10 -KPX adieresis gcommaaccent -10 -KPX adieresis v -15 -KPX adieresis w -15 -KPX adieresis y -20 -KPX adieresis yacute -20 -KPX adieresis ydieresis -20 -KPX agrave g -10 -KPX agrave gbreve -10 -KPX agrave gcommaaccent -10 -KPX agrave v -15 -KPX agrave w -15 -KPX agrave y -20 -KPX agrave yacute -20 -KPX agrave ydieresis -20 -KPX amacron g -10 -KPX amacron gbreve -10 -KPX amacron gcommaaccent -10 -KPX amacron v -15 -KPX amacron w -15 -KPX amacron y -20 -KPX amacron yacute -20 -KPX amacron ydieresis -20 -KPX aogonek g -10 -KPX aogonek gbreve -10 -KPX aogonek gcommaaccent -10 -KPX aogonek v -15 -KPX aogonek w -15 -KPX aogonek y -20 -KPX aogonek yacute -20 -KPX aogonek ydieresis -20 -KPX aring g -10 -KPX aring gbreve -10 -KPX aring gcommaaccent -10 -KPX aring v -15 -KPX aring w -15 -KPX aring y -20 -KPX aring yacute -20 -KPX aring ydieresis -20 -KPX atilde g -10 -KPX atilde gbreve -10 -KPX atilde gcommaaccent -10 -KPX atilde v -15 -KPX atilde w -15 -KPX atilde y -20 -KPX atilde yacute -20 -KPX atilde ydieresis -20 -KPX b l -10 -KPX b lacute -10 -KPX b lcommaaccent -10 -KPX b lslash -10 -KPX b u -20 -KPX b uacute -20 -KPX b ucircumflex -20 -KPX b udieresis -20 -KPX b ugrave -20 -KPX b uhungarumlaut -20 -KPX b umacron -20 -KPX b uogonek -20 -KPX b uring -20 -KPX b v -20 -KPX b y -20 -KPX b yacute -20 -KPX b ydieresis -20 -KPX c h -10 -KPX c k -20 -KPX c kcommaaccent -20 -KPX c l -20 -KPX c lacute -20 -KPX c lcommaaccent -20 -KPX c lslash -20 -KPX c y -10 -KPX c yacute -10 -KPX c ydieresis -10 -KPX cacute h -10 -KPX cacute k -20 -KPX cacute kcommaaccent -20 -KPX cacute l -20 -KPX cacute lacute -20 -KPX cacute lcommaaccent -20 -KPX cacute lslash -20 -KPX cacute y -10 -KPX cacute yacute -10 -KPX cacute ydieresis -10 -KPX ccaron h -10 -KPX ccaron k -20 -KPX ccaron kcommaaccent -20 -KPX ccaron l -20 -KPX ccaron lacute -20 -KPX ccaron lcommaaccent -20 -KPX ccaron lslash -20 -KPX ccaron y -10 -KPX ccaron yacute -10 -KPX ccaron ydieresis -10 -KPX ccedilla h -10 -KPX ccedilla k -20 -KPX ccedilla kcommaaccent -20 -KPX ccedilla l -20 -KPX ccedilla lacute -20 -KPX ccedilla lcommaaccent -20 -KPX ccedilla lslash -20 -KPX ccedilla y -10 -KPX ccedilla yacute -10 -KPX ccedilla ydieresis -10 -KPX colon space -40 -KPX comma quotedblright -120 -KPX comma quoteright -120 -KPX comma space -40 -KPX d d -10 -KPX d dcroat -10 -KPX d v -15 -KPX d w -15 -KPX d y -15 -KPX d yacute -15 -KPX d ydieresis -15 -KPX dcroat d -10 -KPX dcroat dcroat -10 -KPX dcroat v -15 -KPX dcroat w -15 -KPX dcroat y -15 -KPX dcroat yacute -15 -KPX dcroat ydieresis -15 -KPX e comma 10 -KPX e period 20 -KPX e v -15 -KPX e w -15 -KPX e x -15 -KPX e y -15 -KPX e yacute -15 -KPX e ydieresis -15 -KPX eacute comma 10 -KPX eacute period 20 -KPX eacute v -15 -KPX eacute w -15 -KPX eacute x -15 -KPX eacute y -15 -KPX eacute yacute -15 -KPX eacute ydieresis -15 -KPX ecaron comma 10 -KPX ecaron period 20 -KPX ecaron v -15 -KPX ecaron w -15 -KPX ecaron x -15 -KPX ecaron y -15 -KPX ecaron yacute -15 -KPX ecaron ydieresis -15 -KPX ecircumflex comma 10 -KPX ecircumflex period 20 -KPX ecircumflex v -15 -KPX ecircumflex w -15 -KPX ecircumflex x -15 -KPX ecircumflex y -15 -KPX ecircumflex yacute -15 -KPX ecircumflex ydieresis -15 -KPX edieresis comma 10 -KPX edieresis period 20 -KPX edieresis v -15 -KPX edieresis w -15 -KPX edieresis x -15 -KPX edieresis y -15 -KPX edieresis yacute -15 -KPX edieresis ydieresis -15 -KPX edotaccent comma 10 -KPX edotaccent period 20 -KPX edotaccent v -15 -KPX edotaccent w -15 -KPX edotaccent x -15 -KPX edotaccent y -15 -KPX edotaccent yacute -15 -KPX edotaccent ydieresis -15 -KPX egrave comma 10 -KPX egrave period 20 -KPX egrave v -15 -KPX egrave w -15 -KPX egrave x -15 -KPX egrave y -15 -KPX egrave yacute -15 -KPX egrave ydieresis -15 -KPX emacron comma 10 -KPX emacron period 20 -KPX emacron v -15 -KPX emacron w -15 -KPX emacron x -15 -KPX emacron y -15 -KPX emacron yacute -15 -KPX emacron ydieresis -15 -KPX eogonek comma 10 -KPX eogonek period 20 -KPX eogonek v -15 -KPX eogonek w -15 -KPX eogonek x -15 -KPX eogonek y -15 -KPX eogonek yacute -15 -KPX eogonek ydieresis -15 -KPX f comma -10 -KPX f e -10 -KPX f eacute -10 -KPX f ecaron -10 -KPX f ecircumflex -10 -KPX f edieresis -10 -KPX f edotaccent -10 -KPX f egrave -10 -KPX f emacron -10 -KPX f eogonek -10 -KPX f o -20 -KPX f oacute -20 -KPX f ocircumflex -20 -KPX f odieresis -20 -KPX f ograve -20 -KPX f ohungarumlaut -20 -KPX f omacron -20 -KPX f oslash -20 -KPX f otilde -20 -KPX f period -10 -KPX f quotedblright 30 -KPX f quoteright 30 -KPX g e 10 -KPX g eacute 10 -KPX g ecaron 10 -KPX g ecircumflex 10 -KPX g edieresis 10 -KPX g edotaccent 10 -KPX g egrave 10 -KPX g emacron 10 -KPX g eogonek 10 -KPX g g -10 -KPX g gbreve -10 -KPX g gcommaaccent -10 -KPX gbreve e 10 -KPX gbreve eacute 10 -KPX gbreve ecaron 10 -KPX gbreve ecircumflex 10 -KPX gbreve edieresis 10 -KPX gbreve edotaccent 10 -KPX gbreve egrave 10 -KPX gbreve emacron 10 -KPX gbreve eogonek 10 -KPX gbreve g -10 -KPX gbreve gbreve -10 -KPX gbreve gcommaaccent -10 -KPX gcommaaccent e 10 -KPX gcommaaccent eacute 10 -KPX gcommaaccent ecaron 10 -KPX gcommaaccent ecircumflex 10 -KPX gcommaaccent edieresis 10 -KPX gcommaaccent edotaccent 10 -KPX gcommaaccent egrave 10 -KPX gcommaaccent emacron 10 -KPX gcommaaccent eogonek 10 -KPX gcommaaccent g -10 -KPX gcommaaccent gbreve -10 -KPX gcommaaccent gcommaaccent -10 -KPX h y -20 -KPX h yacute -20 -KPX h ydieresis -20 -KPX k o -15 -KPX k oacute -15 -KPX k ocircumflex -15 -KPX k odieresis -15 -KPX k ograve -15 -KPX k ohungarumlaut -15 -KPX k omacron -15 -KPX k oslash -15 -KPX k otilde -15 -KPX kcommaaccent o -15 -KPX kcommaaccent oacute -15 -KPX kcommaaccent ocircumflex -15 -KPX kcommaaccent odieresis -15 -KPX kcommaaccent ograve -15 -KPX kcommaaccent ohungarumlaut -15 -KPX kcommaaccent omacron -15 -KPX kcommaaccent oslash -15 -KPX kcommaaccent otilde -15 -KPX l w -15 -KPX l y -15 -KPX l yacute -15 -KPX l ydieresis -15 -KPX lacute w -15 -KPX lacute y -15 -KPX lacute yacute -15 -KPX lacute ydieresis -15 -KPX lcommaaccent w -15 -KPX lcommaaccent y -15 -KPX lcommaaccent yacute -15 -KPX lcommaaccent ydieresis -15 -KPX lslash w -15 -KPX lslash y -15 -KPX lslash yacute -15 -KPX lslash ydieresis -15 -KPX m u -20 -KPX m uacute -20 -KPX m ucircumflex -20 -KPX m udieresis -20 -KPX m ugrave -20 -KPX m uhungarumlaut -20 -KPX m umacron -20 -KPX m uogonek -20 -KPX m uring -20 -KPX m y -30 -KPX m yacute -30 -KPX m ydieresis -30 -KPX n u -10 -KPX n uacute -10 -KPX n ucircumflex -10 -KPX n udieresis -10 -KPX n ugrave -10 -KPX n uhungarumlaut -10 -KPX n umacron -10 -KPX n uogonek -10 -KPX n uring -10 -KPX n v -40 -KPX n y -20 -KPX n yacute -20 -KPX n ydieresis -20 -KPX nacute u -10 -KPX nacute uacute -10 -KPX nacute ucircumflex -10 -KPX nacute udieresis -10 -KPX nacute ugrave -10 -KPX nacute uhungarumlaut -10 -KPX nacute umacron -10 -KPX nacute uogonek -10 -KPX nacute uring -10 -KPX nacute v -40 -KPX nacute y -20 -KPX nacute yacute -20 -KPX nacute ydieresis -20 -KPX ncaron u -10 -KPX ncaron uacute -10 -KPX ncaron ucircumflex -10 -KPX ncaron udieresis -10 -KPX ncaron ugrave -10 -KPX ncaron uhungarumlaut -10 -KPX ncaron umacron -10 -KPX ncaron uogonek -10 -KPX ncaron uring -10 -KPX ncaron v -40 -KPX ncaron y -20 -KPX ncaron yacute -20 -KPX ncaron ydieresis -20 -KPX ncommaaccent u -10 -KPX ncommaaccent uacute -10 -KPX ncommaaccent ucircumflex -10 -KPX ncommaaccent udieresis -10 -KPX ncommaaccent ugrave -10 -KPX ncommaaccent uhungarumlaut -10 -KPX ncommaaccent umacron -10 -KPX ncommaaccent uogonek -10 -KPX ncommaaccent uring -10 -KPX ncommaaccent v -40 -KPX ncommaaccent y -20 -KPX ncommaaccent yacute -20 -KPX ncommaaccent ydieresis -20 -KPX ntilde u -10 -KPX ntilde uacute -10 -KPX ntilde ucircumflex -10 -KPX ntilde udieresis -10 -KPX ntilde ugrave -10 -KPX ntilde uhungarumlaut -10 -KPX ntilde umacron -10 -KPX ntilde uogonek -10 -KPX ntilde uring -10 -KPX ntilde v -40 -KPX ntilde y -20 -KPX ntilde yacute -20 -KPX ntilde ydieresis -20 -KPX o v -20 -KPX o w -15 -KPX o x -30 -KPX o y -20 -KPX o yacute -20 -KPX o ydieresis -20 -KPX oacute v -20 -KPX oacute w -15 -KPX oacute x -30 -KPX oacute y -20 -KPX oacute yacute -20 -KPX oacute ydieresis -20 -KPX ocircumflex v -20 -KPX ocircumflex w -15 -KPX ocircumflex x -30 -KPX ocircumflex y -20 -KPX ocircumflex yacute -20 -KPX ocircumflex ydieresis -20 -KPX odieresis v -20 -KPX odieresis w -15 -KPX odieresis x -30 -KPX odieresis y -20 -KPX odieresis yacute -20 -KPX odieresis ydieresis -20 -KPX ograve v -20 -KPX ograve w -15 -KPX ograve x -30 -KPX ograve y -20 -KPX ograve yacute -20 -KPX ograve ydieresis -20 -KPX ohungarumlaut v -20 -KPX ohungarumlaut w -15 -KPX ohungarumlaut x -30 -KPX ohungarumlaut y -20 -KPX ohungarumlaut yacute -20 -KPX ohungarumlaut ydieresis -20 -KPX omacron v -20 -KPX omacron w -15 -KPX omacron x -30 -KPX omacron y -20 -KPX omacron yacute -20 -KPX omacron ydieresis -20 -KPX oslash v -20 -KPX oslash w -15 -KPX oslash x -30 -KPX oslash y -20 -KPX oslash yacute -20 -KPX oslash ydieresis -20 -KPX otilde v -20 -KPX otilde w -15 -KPX otilde x -30 -KPX otilde y -20 -KPX otilde yacute -20 -KPX otilde ydieresis -20 -KPX p y -15 -KPX p yacute -15 -KPX p ydieresis -15 -KPX period quotedblright -120 -KPX period quoteright -120 -KPX period space -40 -KPX quotedblright space -80 -KPX quoteleft quoteleft -46 -KPX quoteright d -80 -KPX quoteright dcroat -80 -KPX quoteright l -20 -KPX quoteright lacute -20 -KPX quoteright lcommaaccent -20 -KPX quoteright lslash -20 -KPX quoteright quoteright -46 -KPX quoteright r -40 -KPX quoteright racute -40 -KPX quoteright rcaron -40 -KPX quoteright rcommaaccent -40 -KPX quoteright s -60 -KPX quoteright sacute -60 -KPX quoteright scaron -60 -KPX quoteright scedilla -60 -KPX quoteright scommaaccent -60 -KPX quoteright space -80 -KPX quoteright v -20 -KPX r c -20 -KPX r cacute -20 -KPX r ccaron -20 -KPX r ccedilla -20 -KPX r comma -60 -KPX r d -20 -KPX r dcroat -20 -KPX r g -15 -KPX r gbreve -15 -KPX r gcommaaccent -15 -KPX r hyphen -20 -KPX r o -20 -KPX r oacute -20 -KPX r ocircumflex -20 -KPX r odieresis -20 -KPX r ograve -20 -KPX r ohungarumlaut -20 -KPX r omacron -20 -KPX r oslash -20 -KPX r otilde -20 -KPX r period -60 -KPX r q -20 -KPX r s -15 -KPX r sacute -15 -KPX r scaron -15 -KPX r scedilla -15 -KPX r scommaaccent -15 -KPX r t 20 -KPX r tcommaaccent 20 -KPX r v 10 -KPX r y 10 -KPX r yacute 10 -KPX r ydieresis 10 -KPX racute c -20 -KPX racute cacute -20 -KPX racute ccaron -20 -KPX racute ccedilla -20 -KPX racute comma -60 -KPX racute d -20 -KPX racute dcroat -20 -KPX racute g -15 -KPX racute gbreve -15 -KPX racute gcommaaccent -15 -KPX racute hyphen -20 -KPX racute o -20 -KPX racute oacute -20 -KPX racute ocircumflex -20 -KPX racute odieresis -20 -KPX racute ograve -20 -KPX racute ohungarumlaut -20 -KPX racute omacron -20 -KPX racute oslash -20 -KPX racute otilde -20 -KPX racute period -60 -KPX racute q -20 -KPX racute s -15 -KPX racute sacute -15 -KPX racute scaron -15 -KPX racute scedilla -15 -KPX racute scommaaccent -15 -KPX racute t 20 -KPX racute tcommaaccent 20 -KPX racute v 10 -KPX racute y 10 -KPX racute yacute 10 -KPX racute ydieresis 10 -KPX rcaron c -20 -KPX rcaron cacute -20 -KPX rcaron ccaron -20 -KPX rcaron ccedilla -20 -KPX rcaron comma -60 -KPX rcaron d -20 -KPX rcaron dcroat -20 -KPX rcaron g -15 -KPX rcaron gbreve -15 -KPX rcaron gcommaaccent -15 -KPX rcaron hyphen -20 -KPX rcaron o -20 -KPX rcaron oacute -20 -KPX rcaron ocircumflex -20 -KPX rcaron odieresis -20 -KPX rcaron ograve -20 -KPX rcaron ohungarumlaut -20 -KPX rcaron omacron -20 -KPX rcaron oslash -20 -KPX rcaron otilde -20 -KPX rcaron period -60 -KPX rcaron q -20 -KPX rcaron s -15 -KPX rcaron sacute -15 -KPX rcaron scaron -15 -KPX rcaron scedilla -15 -KPX rcaron scommaaccent -15 -KPX rcaron t 20 -KPX rcaron tcommaaccent 20 -KPX rcaron v 10 -KPX rcaron y 10 -KPX rcaron yacute 10 -KPX rcaron ydieresis 10 -KPX rcommaaccent c -20 -KPX rcommaaccent cacute -20 -KPX rcommaaccent ccaron -20 -KPX rcommaaccent ccedilla -20 -KPX rcommaaccent comma -60 -KPX rcommaaccent d -20 -KPX rcommaaccent dcroat -20 -KPX rcommaaccent g -15 -KPX rcommaaccent gbreve -15 -KPX rcommaaccent gcommaaccent -15 -KPX rcommaaccent hyphen -20 -KPX rcommaaccent o -20 -KPX rcommaaccent oacute -20 -KPX rcommaaccent ocircumflex -20 -KPX rcommaaccent odieresis -20 -KPX rcommaaccent ograve -20 -KPX rcommaaccent ohungarumlaut -20 -KPX rcommaaccent omacron -20 -KPX rcommaaccent oslash -20 -KPX rcommaaccent otilde -20 -KPX rcommaaccent period -60 -KPX rcommaaccent q -20 -KPX rcommaaccent s -15 -KPX rcommaaccent sacute -15 -KPX rcommaaccent scaron -15 -KPX rcommaaccent scedilla -15 -KPX rcommaaccent scommaaccent -15 -KPX rcommaaccent t 20 -KPX rcommaaccent tcommaaccent 20 -KPX rcommaaccent v 10 -KPX rcommaaccent y 10 -KPX rcommaaccent yacute 10 -KPX rcommaaccent ydieresis 10 -KPX s w -15 -KPX sacute w -15 -KPX scaron w -15 -KPX scedilla w -15 -KPX scommaaccent w -15 -KPX semicolon space -40 -KPX space T -100 -KPX space Tcaron -100 -KPX space Tcommaaccent -100 -KPX space V -80 -KPX space W -80 -KPX space Y -120 -KPX space Yacute -120 -KPX space Ydieresis -120 -KPX space quotedblleft -80 -KPX space quoteleft -60 -KPX v a -20 -KPX v aacute -20 -KPX v abreve -20 -KPX v acircumflex -20 -KPX v adieresis -20 -KPX v agrave -20 -KPX v amacron -20 -KPX v aogonek -20 -KPX v aring -20 -KPX v atilde -20 -KPX v comma -80 -KPX v o -30 -KPX v oacute -30 -KPX v ocircumflex -30 -KPX v odieresis -30 -KPX v ograve -30 -KPX v ohungarumlaut -30 -KPX v omacron -30 -KPX v oslash -30 -KPX v otilde -30 -KPX v period -80 -KPX w comma -40 -KPX w o -20 -KPX w oacute -20 -KPX w ocircumflex -20 -KPX w odieresis -20 -KPX w ograve -20 -KPX w ohungarumlaut -20 -KPX w omacron -20 -KPX w oslash -20 -KPX w otilde -20 -KPX w period -40 -KPX x e -10 -KPX x eacute -10 -KPX x ecaron -10 -KPX x ecircumflex -10 -KPX x edieresis -10 -KPX x edotaccent -10 -KPX x egrave -10 -KPX x emacron -10 -KPX x eogonek -10 -KPX y a -30 -KPX y aacute -30 -KPX y abreve -30 -KPX y acircumflex -30 -KPX y adieresis -30 -KPX y agrave -30 -KPX y amacron -30 -KPX y aogonek -30 -KPX y aring -30 -KPX y atilde -30 -KPX y comma -80 -KPX y e -10 -KPX y eacute -10 -KPX y ecaron -10 -KPX y ecircumflex -10 -KPX y edieresis -10 -KPX y edotaccent -10 -KPX y egrave -10 -KPX y emacron -10 -KPX y eogonek -10 -KPX y o -25 -KPX y oacute -25 -KPX y ocircumflex -25 -KPX y odieresis -25 -KPX y ograve -25 -KPX y ohungarumlaut -25 -KPX y omacron -25 -KPX y oslash -25 -KPX y otilde -25 -KPX y period -80 -KPX yacute a -30 -KPX yacute aacute -30 -KPX yacute abreve -30 -KPX yacute acircumflex -30 -KPX yacute adieresis -30 -KPX yacute agrave -30 -KPX yacute amacron -30 -KPX yacute aogonek -30 -KPX yacute aring -30 -KPX yacute atilde -30 -KPX yacute comma -80 -KPX yacute e -10 -KPX yacute eacute -10 -KPX yacute ecaron -10 -KPX yacute ecircumflex -10 -KPX yacute edieresis -10 -KPX yacute edotaccent -10 -KPX yacute egrave -10 -KPX yacute emacron -10 -KPX yacute eogonek -10 -KPX yacute o -25 -KPX yacute oacute -25 -KPX yacute ocircumflex -25 -KPX yacute odieresis -25 -KPX yacute ograve -25 -KPX yacute ohungarumlaut -25 -KPX yacute omacron -25 -KPX yacute oslash -25 -KPX yacute otilde -25 -KPX yacute period -80 -KPX ydieresis a -30 -KPX ydieresis aacute -30 -KPX ydieresis abreve -30 -KPX ydieresis acircumflex -30 -KPX ydieresis adieresis -30 -KPX ydieresis agrave -30 -KPX ydieresis amacron -30 -KPX ydieresis aogonek -30 -KPX ydieresis aring -30 -KPX ydieresis atilde -30 -KPX ydieresis comma -80 -KPX ydieresis e -10 -KPX ydieresis eacute -10 -KPX ydieresis ecaron -10 -KPX ydieresis ecircumflex -10 -KPX ydieresis edieresis -10 -KPX ydieresis edotaccent -10 -KPX ydieresis egrave -10 -KPX ydieresis emacron -10 -KPX ydieresis eogonek -10 -KPX ydieresis o -25 -KPX ydieresis oacute -25 -KPX ydieresis ocircumflex -25 -KPX ydieresis odieresis -25 -KPX ydieresis ograve -25 -KPX ydieresis ohungarumlaut -25 -KPX ydieresis omacron -25 -KPX ydieresis oslash -25 -KPX ydieresis otilde -25 -KPX ydieresis period -80 -KPX z e 10 -KPX z eacute 10 -KPX z ecaron 10 -KPX z ecircumflex 10 -KPX z edieresis 10 -KPX z edotaccent 10 -KPX z egrave 10 -KPX z emacron 10 -KPX z eogonek 10 -KPX zacute e 10 -KPX zacute eacute 10 -KPX zacute ecaron 10 -KPX zacute ecircumflex 10 -KPX zacute edieresis 10 -KPX zacute edotaccent 10 -KPX zacute egrave 10 -KPX zacute emacron 10 -KPX zacute eogonek 10 -KPX zcaron e 10 -KPX zcaron eacute 10 -KPX zcaron ecaron 10 -KPX zcaron ecircumflex 10 -KPX zcaron edieresis 10 -KPX zcaron edotaccent 10 -KPX zcaron egrave 10 -KPX zcaron emacron 10 -KPX zcaron eogonek 10 -KPX zdotaccent e 10 -KPX zdotaccent eacute 10 -KPX zdotaccent ecaron 10 -KPX zdotaccent ecircumflex 10 -KPX zdotaccent edieresis 10 -KPX zdotaccent edotaccent 10 -KPX zdotaccent egrave 10 -KPX zdotaccent emacron 10 -KPX zdotaccent eogonek 10 -EndKernPairs -EndKernData -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Helvetica-BoldOblique.afm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Helvetica-BoldOblique.afm deleted file mode 100644 index 337f7125..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Helvetica-BoldOblique.afm +++ /dev/null @@ -1,2829 +0,0 @@ -StartFontMetrics 4.1 -Comment Copyright (c) 1985, 1987, 1989, 1990, 1997 Adobe Systems Incorporated. All Rights Reserved. -Comment Creation Date: Thu May 1 12:45:12 1997 -Comment UniqueID 43053 -Comment VMusage 14482 68586 -FontName Helvetica-BoldOblique -FullName Helvetica Bold Oblique -FamilyName Helvetica -Weight Bold -ItalicAngle -12 -IsFixedPitch false -CharacterSet ExtendedRoman -FontBBox -174 -228 1114 962 -UnderlinePosition -100 -UnderlineThickness 50 -Version 002.000 -Notice Copyright (c) 1985, 1987, 1989, 1990, 1997 Adobe Systems Incorporated. All Rights Reserved.Helvetica is a trademark of Linotype-Hell AG and/or its subsidiaries. -EncodingScheme WinAnsiEncoding -CapHeight 718 -XHeight 532 -Ascender 718 -Descender -207 -StdHW 118 -StdVW 140 -StartCharMetrics 317 -C 32 ; WX 278 ; N space ; B 0 0 0 0 ; -C 160 ; WX 278 ; N space ; B 0 0 0 0 ; -C 33 ; WX 333 ; N exclam ; B 94 0 397 718 ; -C 34 ; WX 474 ; N quotedbl ; B 193 447 529 718 ; -C 35 ; WX 556 ; N numbersign ; B 60 0 644 698 ; -C 36 ; WX 556 ; N dollar ; B 67 -115 622 775 ; -C 37 ; WX 889 ; N percent ; B 136 -19 901 710 ; -C 38 ; WX 722 ; N ampersand ; B 89 -19 732 718 ; -C 146 ; WX 278 ; N quoteright ; B 167 445 362 718 ; -C 40 ; WX 333 ; N parenleft ; B 76 -208 470 734 ; -C 41 ; WX 333 ; N parenright ; B -25 -208 369 734 ; -C 42 ; WX 389 ; N asterisk ; B 146 387 481 718 ; -C 43 ; WX 584 ; N plus ; B 82 0 610 506 ; -C 44 ; WX 278 ; N comma ; B 28 -168 245 146 ; -C 45 ; WX 333 ; N hyphen ; B 73 215 379 345 ; -C 173 ; WX 333 ; N hyphen ; B 44 232 289 322 ; -C 46 ; WX 278 ; N period ; B 64 0 245 146 ; -C 47 ; WX 278 ; N slash ; B -37 -19 468 737 ; -C 48 ; WX 556 ; N zero ; B 86 -19 617 710 ; -C 49 ; WX 556 ; N one ; B 173 0 529 710 ; -C 50 ; WX 556 ; N two ; B 26 0 619 710 ; -C 51 ; WX 556 ; N three ; B 65 -19 608 710 ; -C 52 ; WX 556 ; N four ; B 60 0 598 710 ; -C 53 ; WX 556 ; N five ; B 64 -19 636 698 ; -C 54 ; WX 556 ; N six ; B 85 -19 619 710 ; -C 55 ; WX 556 ; N seven ; B 125 0 676 698 ; -C 56 ; WX 556 ; N eight ; B 69 -19 616 710 ; -C 57 ; WX 556 ; N nine ; B 78 -19 615 710 ; -C 58 ; WX 333 ; N colon ; B 92 0 351 512 ; -C 59 ; WX 333 ; N semicolon ; B 56 -168 351 512 ; -C 60 ; WX 584 ; N less ; B 82 -8 655 514 ; -C 61 ; WX 584 ; N equal ; B 58 87 633 419 ; -C 62 ; WX 584 ; N greater ; B 36 -8 609 514 ; -C 63 ; WX 611 ; N question ; B 165 0 671 727 ; -C 64 ; WX 975 ; N at ; B 186 -19 954 737 ; -C 65 ; WX 722 ; N A ; B 20 0 702 718 ; -C 66 ; WX 722 ; N B ; B 76 0 764 718 ; -C 67 ; WX 722 ; N C ; B 107 -19 789 737 ; -C 68 ; WX 722 ; N D ; B 76 0 777 718 ; -C 69 ; WX 667 ; N E ; B 76 0 757 718 ; -C 70 ; WX 611 ; N F ; B 76 0 740 718 ; -C 71 ; WX 778 ; N G ; B 108 -19 817 737 ; -C 72 ; WX 722 ; N H ; B 71 0 804 718 ; -C 73 ; WX 278 ; N I ; B 64 0 367 718 ; -C 74 ; WX 556 ; N J ; B 60 -18 637 718 ; -C 75 ; WX 722 ; N K ; B 87 0 858 718 ; -C 76 ; WX 611 ; N L ; B 76 0 611 718 ; -C 77 ; WX 833 ; N M ; B 69 0 918 718 ; -C 78 ; WX 722 ; N N ; B 69 0 807 718 ; -C 79 ; WX 778 ; N O ; B 107 -19 823 737 ; -C 80 ; WX 667 ; N P ; B 76 0 738 718 ; -C 81 ; WX 778 ; N Q ; B 107 -52 823 737 ; -C 82 ; WX 722 ; N R ; B 76 0 778 718 ; -C 83 ; WX 667 ; N S ; B 81 -19 718 737 ; -C 84 ; WX 611 ; N T ; B 140 0 751 718 ; -C 85 ; WX 722 ; N U ; B 116 -19 804 718 ; -C 86 ; WX 667 ; N V ; B 172 0 801 718 ; -C 87 ; WX 944 ; N W ; B 169 0 1082 718 ; -C 88 ; WX 667 ; N X ; B 14 0 791 718 ; -C 89 ; WX 667 ; N Y ; B 168 0 806 718 ; -C 90 ; WX 611 ; N Z ; B 25 0 737 718 ; -C 91 ; WX 333 ; N bracketleft ; B 21 -196 462 722 ; -C 92 ; WX 278 ; N backslash ; B 124 -19 307 737 ; -C 93 ; WX 333 ; N bracketright ; B -18 -196 423 722 ; -C 94 ; WX 584 ; N asciicircum ; B 131 323 591 698 ; -C 95 ; WX 556 ; N underscore ; B -27 -125 540 -75 ; -C 145 ; WX 278 ; N quoteleft ; B 165 454 361 727 ; -C 97 ; WX 556 ; N a ; B 55 -14 583 546 ; -C 98 ; WX 611 ; N b ; B 61 -14 645 718 ; -C 99 ; WX 556 ; N c ; B 79 -14 599 546 ; -C 100 ; WX 611 ; N d ; B 82 -14 704 718 ; -C 101 ; WX 556 ; N e ; B 70 -14 593 546 ; -C 102 ; WX 333 ; N f ; B 87 0 469 727 ; L i fi ; L l fl ; -C 103 ; WX 611 ; N g ; B 38 -217 666 546 ; -C 104 ; WX 611 ; N h ; B 65 0 629 718 ; -C 105 ; WX 278 ; N i ; B 69 0 363 725 ; -C 106 ; WX 278 ; N j ; B -42 -214 363 725 ; -C 107 ; WX 556 ; N k ; B 69 0 670 718 ; -C 108 ; WX 278 ; N l ; B 69 0 362 718 ; -C 109 ; WX 889 ; N m ; B 64 0 909 546 ; -C 110 ; WX 611 ; N n ; B 65 0 629 546 ; -C 111 ; WX 611 ; N o ; B 82 -14 643 546 ; -C 112 ; WX 611 ; N p ; B 18 -207 645 546 ; -C 113 ; WX 611 ; N q ; B 80 -207 665 546 ; -C 114 ; WX 389 ; N r ; B 64 0 489 546 ; -C 115 ; WX 556 ; N s ; B 63 -14 584 546 ; -C 116 ; WX 333 ; N t ; B 100 -6 422 676 ; -C 117 ; WX 611 ; N u ; B 98 -14 658 532 ; -C 118 ; WX 556 ; N v ; B 126 0 656 532 ; -C 119 ; WX 778 ; N w ; B 123 0 882 532 ; -C 120 ; WX 556 ; N x ; B 15 0 648 532 ; -C 121 ; WX 556 ; N y ; B 42 -214 652 532 ; -C 122 ; WX 500 ; N z ; B 20 0 583 532 ; -C 123 ; WX 389 ; N braceleft ; B 94 -196 518 722 ; -C 124 ; WX 280 ; N bar ; B 36 -225 361 775 ; -C 125 ; WX 389 ; N braceright ; B -18 -196 407 722 ; -C 126 ; WX 584 ; N asciitilde ; B 115 163 577 343 ; -C 161 ; WX 333 ; N exclamdown ; B 50 -186 353 532 ; -C 162 ; WX 556 ; N cent ; B 79 -118 599 628 ; -C 163 ; WX 556 ; N sterling ; B 50 -16 635 718 ; -C -1 ; WX 167 ; N fraction ; B -174 -19 487 710 ; -C 165 ; WX 556 ; N yen ; B 60 0 713 698 ; -C 131 ; WX 556 ; N florin ; B -50 -210 669 737 ; -C 167 ; WX 556 ; N section ; B 61 -184 598 727 ; -C 164 ; WX 556 ; N currency ; B 27 76 680 636 ; -C 39 ; WX 238 ; N quotesingle ; B 165 447 321 718 ; -C 147 ; WX 500 ; N quotedblleft ; B 160 454 588 727 ; -C 171 ; WX 556 ; N guillemotleft ; B 135 76 571 484 ; -C 139 ; WX 333 ; N guilsinglleft ; B 130 76 353 484 ; -C 155 ; WX 333 ; N guilsinglright ; B 99 76 322 484 ; -C -1 ; WX 611 ; N fi ; B 87 0 696 727 ; -C -1 ; WX 611 ; N fl ; B 87 0 695 727 ; -C 150 ; WX 556 ; N endash ; B 48 227 627 333 ; -C 134 ; WX 556 ; N dagger ; B 118 -171 626 718 ; -C 135 ; WX 556 ; N daggerdbl ; B 46 -171 628 718 ; -C 183 ; WX 278 ; N periodcentered ; B 110 172 276 334 ; -C 182 ; WX 556 ; N paragraph ; B 98 -191 688 700 ; -C 149 ; WX 350 ; N bullet ; B 83 194 420 524 ; -C 130 ; WX 278 ; N quotesinglbase ; B 41 -146 236 127 ; -C 132 ; WX 500 ; N quotedblbase ; B 36 -146 463 127 ; -C 148 ; WX 500 ; N quotedblright ; B 162 445 589 718 ; -C 187 ; WX 556 ; N guillemotright ; B 104 76 540 484 ; -C 133 ; WX 1000 ; N ellipsis ; B 92 0 939 146 ; -C 137 ; WX 1000 ; N perthousand ; B 76 -19 1038 710 ; -C 191 ; WX 611 ; N questiondown ; B 53 -195 559 532 ; -C 96 ; WX 333 ; N grave ; B 136 604 353 750 ; -C 180 ; WX 333 ; N acute ; B 236 604 515 750 ; -C 136 ; WX 333 ; N circumflex ; B 118 604 471 750 ; -C 152 ; WX 333 ; N tilde ; B 113 610 507 737 ; -C 175 ; WX 333 ; N macron ; B 122 604 483 678 ; -C -1 ; WX 333 ; N breve ; B 156 604 494 750 ; -C -1 ; WX 333 ; N dotaccent ; B 235 614 385 729 ; -C 168 ; WX 333 ; N dieresis ; B 137 614 482 729 ; -C -1 ; WX 333 ; N ring ; B 200 568 420 776 ; -C 184 ; WX 333 ; N cedilla ; B -37 -228 220 0 ; -C -1 ; WX 333 ; N hungarumlaut ; B 137 604 645 750 ; -C -1 ; WX 333 ; N ogonek ; B 41 -228 264 0 ; -C -1 ; WX 333 ; N caron ; B 149 604 502 750 ; -C 151 ; WX 1000 ; N emdash ; B 48 227 1071 333 ; -C 198 ; WX 1000 ; N AE ; B 5 0 1100 718 ; -C 170 ; WX 370 ; N ordfeminine ; B 125 401 465 737 ; -C -1 ; WX 611 ; N Lslash ; B 34 0 611 718 ; -C 216 ; WX 778 ; N Oslash ; B 35 -27 894 745 ; -C 140 ; WX 1000 ; N OE ; B 99 -19 1114 737 ; -C 186 ; WX 365 ; N ordmasculine ; B 123 401 485 737 ; -C 230 ; WX 889 ; N ae ; B 56 -14 923 546 ; -C -1 ; WX 278 ; N dotlessi ; B 69 0 322 532 ; -C -1 ; WX 278 ; N lslash ; B 40 0 407 718 ; -C 248 ; WX 611 ; N oslash ; B 22 -29 701 560 ; -C 156 ; WX 944 ; N oe ; B 82 -14 977 546 ; -C 223 ; WX 611 ; N germandbls ; B 69 -14 657 731 ; -C 207 ; WX 278 ; N Idieresis ; B 64 0 494 915 ; -C 233 ; WX 556 ; N eacute ; B 70 -14 627 750 ; -C -1 ; WX 556 ; N abreve ; B 55 -14 606 750 ; -C -1 ; WX 611 ; N uhungarumlaut ; B 98 -14 784 750 ; -C -1 ; WX 556 ; N ecaron ; B 70 -14 614 750 ; -C 159 ; WX 667 ; N Ydieresis ; B 168 0 806 915 ; -C 247 ; WX 584 ; N divide ; B 82 -42 610 548 ; -C 221 ; WX 667 ; N Yacute ; B 168 0 806 936 ; -C 194 ; WX 722 ; N Acircumflex ; B 20 0 706 936 ; -C 225 ; WX 556 ; N aacute ; B 55 -14 627 750 ; -C 219 ; WX 722 ; N Ucircumflex ; B 116 -19 804 936 ; -C 253 ; WX 556 ; N yacute ; B 42 -214 652 750 ; -C -1 ; WX 556 ; N scommaaccent ; B 63 -228 584 546 ; -C 234 ; WX 556 ; N ecircumflex ; B 70 -14 593 750 ; -C -1 ; WX 722 ; N Uring ; B 116 -19 804 962 ; -C 220 ; WX 722 ; N Udieresis ; B 116 -19 804 915 ; -C -1 ; WX 556 ; N aogonek ; B 55 -224 583 546 ; -C 218 ; WX 722 ; N Uacute ; B 116 -19 804 936 ; -C -1 ; WX 611 ; N uogonek ; B 98 -228 658 532 ; -C 203 ; WX 667 ; N Edieresis ; B 76 0 757 915 ; -C -1 ; WX 722 ; N Dcroat ; B 62 0 777 718 ; -C -1 ; WX 250 ; N commaaccent ; B 16 -228 188 -50 ; -C 169 ; WX 737 ; N copyright ; B 56 -19 835 737 ; -C -1 ; WX 667 ; N Emacron ; B 76 0 757 864 ; -C -1 ; WX 556 ; N ccaron ; B 79 -14 614 750 ; -C 229 ; WX 556 ; N aring ; B 55 -14 583 776 ; -C -1 ; WX 722 ; N Ncommaaccent ; B 69 -228 807 718 ; -C -1 ; WX 278 ; N lacute ; B 69 0 528 936 ; -C 224 ; WX 556 ; N agrave ; B 55 -14 583 750 ; -C -1 ; WX 611 ; N Tcommaaccent ; B 140 -228 751 718 ; -C -1 ; WX 722 ; N Cacute ; B 107 -19 789 936 ; -C 227 ; WX 556 ; N atilde ; B 55 -14 619 737 ; -C -1 ; WX 667 ; N Edotaccent ; B 76 0 757 915 ; -C 154 ; WX 556 ; N scaron ; B 63 -14 614 750 ; -C -1 ; WX 556 ; N scedilla ; B 63 -228 584 546 ; -C 237 ; WX 278 ; N iacute ; B 69 0 488 750 ; -C -1 ; WX 494 ; N lozenge ; B 90 0 564 745 ; -C -1 ; WX 722 ; N Rcaron ; B 76 0 778 936 ; -C -1 ; WX 778 ; N Gcommaaccent ; B 108 -228 817 737 ; -C 251 ; WX 611 ; N ucircumflex ; B 98 -14 658 750 ; -C 226 ; WX 556 ; N acircumflex ; B 55 -14 583 750 ; -C -1 ; WX 722 ; N Amacron ; B 20 0 718 864 ; -C -1 ; WX 389 ; N rcaron ; B 64 0 530 750 ; -C 231 ; WX 556 ; N ccedilla ; B 79 -228 599 546 ; -C -1 ; WX 611 ; N Zdotaccent ; B 25 0 737 915 ; -C 222 ; WX 667 ; N Thorn ; B 76 0 716 718 ; -C -1 ; WX 778 ; N Omacron ; B 107 -19 823 864 ; -C -1 ; WX 722 ; N Racute ; B 76 0 778 936 ; -C -1 ; WX 667 ; N Sacute ; B 81 -19 722 936 ; -C -1 ; WX 743 ; N dcaron ; B 82 -14 903 718 ; -C -1 ; WX 722 ; N Umacron ; B 116 -19 804 864 ; -C -1 ; WX 611 ; N uring ; B 98 -14 658 776 ; -C 179 ; WX 333 ; N threesuperior ; B 91 271 441 710 ; -C 210 ; WX 778 ; N Ograve ; B 107 -19 823 936 ; -C 192 ; WX 722 ; N Agrave ; B 20 0 702 936 ; -C -1 ; WX 722 ; N Abreve ; B 20 0 729 936 ; -C 215 ; WX 584 ; N multiply ; B 57 1 635 505 ; -C 250 ; WX 611 ; N uacute ; B 98 -14 658 750 ; -C -1 ; WX 611 ; N Tcaron ; B 140 0 751 936 ; -C -1 ; WX 494 ; N partialdiff ; B 43 -21 585 750 ; -C 255 ; WX 556 ; N ydieresis ; B 42 -214 652 729 ; -C -1 ; WX 722 ; N Nacute ; B 69 0 807 936 ; -C 238 ; WX 278 ; N icircumflex ; B 69 0 444 750 ; -C 202 ; WX 667 ; N Ecircumflex ; B 76 0 757 936 ; -C 228 ; WX 556 ; N adieresis ; B 55 -14 594 729 ; -C 235 ; WX 556 ; N edieresis ; B 70 -14 594 729 ; -C -1 ; WX 556 ; N cacute ; B 79 -14 627 750 ; -C -1 ; WX 611 ; N nacute ; B 65 0 654 750 ; -C -1 ; WX 611 ; N umacron ; B 98 -14 658 678 ; -C -1 ; WX 722 ; N Ncaron ; B 69 0 807 936 ; -C 205 ; WX 278 ; N Iacute ; B 64 0 528 936 ; -C 177 ; WX 584 ; N plusminus ; B 40 0 625 506 ; -C 166 ; WX 280 ; N brokenbar ; B 52 -150 345 700 ; -C 174 ; WX 737 ; N registered ; B 55 -19 834 737 ; -C -1 ; WX 778 ; N Gbreve ; B 108 -19 817 936 ; -C -1 ; WX 278 ; N Idotaccent ; B 64 0 397 915 ; -C -1 ; WX 600 ; N summation ; B 14 -10 670 706 ; -C 200 ; WX 667 ; N Egrave ; B 76 0 757 936 ; -C -1 ; WX 389 ; N racute ; B 64 0 543 750 ; -C -1 ; WX 611 ; N omacron ; B 82 -14 643 678 ; -C -1 ; WX 611 ; N Zacute ; B 25 0 737 936 ; -C 142 ; WX 611 ; N Zcaron ; B 25 0 737 936 ; -C -1 ; WX 549 ; N greaterequal ; B 26 0 629 704 ; -C 208 ; WX 722 ; N Eth ; B 62 0 777 718 ; -C 199 ; WX 722 ; N Ccedilla ; B 107 -228 789 737 ; -C -1 ; WX 278 ; N lcommaaccent ; B 30 -228 362 718 ; -C -1 ; WX 389 ; N tcaron ; B 100 -6 608 878 ; -C -1 ; WX 556 ; N eogonek ; B 70 -228 593 546 ; -C -1 ; WX 722 ; N Uogonek ; B 116 -228 804 718 ; -C 193 ; WX 722 ; N Aacute ; B 20 0 750 936 ; -C 196 ; WX 722 ; N Adieresis ; B 20 0 716 915 ; -C 232 ; WX 556 ; N egrave ; B 70 -14 593 750 ; -C -1 ; WX 500 ; N zacute ; B 20 0 599 750 ; -C -1 ; WX 278 ; N iogonek ; B -14 -224 363 725 ; -C 211 ; WX 778 ; N Oacute ; B 107 -19 823 936 ; -C 243 ; WX 611 ; N oacute ; B 82 -14 654 750 ; -C -1 ; WX 556 ; N amacron ; B 55 -14 595 678 ; -C -1 ; WX 556 ; N sacute ; B 63 -14 627 750 ; -C 239 ; WX 278 ; N idieresis ; B 69 0 455 729 ; -C 212 ; WX 778 ; N Ocircumflex ; B 107 -19 823 936 ; -C 217 ; WX 722 ; N Ugrave ; B 116 -19 804 936 ; -C -1 ; WX 612 ; N Delta ; B 6 0 608 688 ; -C 254 ; WX 611 ; N thorn ; B 18 -208 645 718 ; -C 178 ; WX 333 ; N twosuperior ; B 69 283 449 710 ; -C 214 ; WX 778 ; N Odieresis ; B 107 -19 823 915 ; -C 181 ; WX 611 ; N mu ; B 22 -207 658 532 ; -C 236 ; WX 278 ; N igrave ; B 69 0 326 750 ; -C -1 ; WX 611 ; N ohungarumlaut ; B 82 -14 784 750 ; -C -1 ; WX 667 ; N Eogonek ; B 76 -224 757 718 ; -C -1 ; WX 611 ; N dcroat ; B 82 -14 789 718 ; -C 190 ; WX 834 ; N threequarters ; B 99 -19 839 710 ; -C -1 ; WX 667 ; N Scedilla ; B 81 -228 718 737 ; -C -1 ; WX 400 ; N lcaron ; B 69 0 561 718 ; -C -1 ; WX 722 ; N Kcommaaccent ; B 87 -228 858 718 ; -C -1 ; WX 611 ; N Lacute ; B 76 0 611 936 ; -C 153 ; WX 1000 ; N trademark ; B 179 306 1109 718 ; -C -1 ; WX 556 ; N edotaccent ; B 70 -14 593 729 ; -C 204 ; WX 278 ; N Igrave ; B 64 0 367 936 ; -C -1 ; WX 278 ; N Imacron ; B 64 0 496 864 ; -C -1 ; WX 611 ; N Lcaron ; B 76 0 643 718 ; -C 189 ; WX 834 ; N onehalf ; B 132 -19 858 710 ; -C -1 ; WX 549 ; N lessequal ; B 29 0 676 704 ; -C 244 ; WX 611 ; N ocircumflex ; B 82 -14 643 750 ; -C 241 ; WX 611 ; N ntilde ; B 65 0 646 737 ; -C -1 ; WX 722 ; N Uhungarumlaut ; B 116 -19 880 936 ; -C 201 ; WX 667 ; N Eacute ; B 76 0 757 936 ; -C -1 ; WX 556 ; N emacron ; B 70 -14 595 678 ; -C -1 ; WX 611 ; N gbreve ; B 38 -217 666 750 ; -C 188 ; WX 834 ; N onequarter ; B 132 -19 806 710 ; -C 138 ; WX 667 ; N Scaron ; B 81 -19 718 936 ; -C -1 ; WX 667 ; N Scommaaccent ; B 81 -228 718 737 ; -C -1 ; WX 778 ; N Ohungarumlaut ; B 107 -19 908 936 ; -C 176 ; WX 400 ; N degree ; B 175 426 467 712 ; -C 242 ; WX 611 ; N ograve ; B 82 -14 643 750 ; -C -1 ; WX 722 ; N Ccaron ; B 107 -19 789 936 ; -C 249 ; WX 611 ; N ugrave ; B 98 -14 658 750 ; -C -1 ; WX 549 ; N radical ; B 112 -46 689 850 ; -C -1 ; WX 722 ; N Dcaron ; B 76 0 777 936 ; -C -1 ; WX 389 ; N rcommaaccent ; B 26 -228 489 546 ; -C 209 ; WX 722 ; N Ntilde ; B 69 0 807 923 ; -C 245 ; WX 611 ; N otilde ; B 82 -14 646 737 ; -C -1 ; WX 722 ; N Rcommaaccent ; B 76 -228 778 718 ; -C -1 ; WX 611 ; N Lcommaaccent ; B 76 -228 611 718 ; -C 195 ; WX 722 ; N Atilde ; B 20 0 741 923 ; -C -1 ; WX 722 ; N Aogonek ; B 20 -224 702 718 ; -C 197 ; WX 722 ; N Aring ; B 20 0 702 962 ; -C 213 ; WX 778 ; N Otilde ; B 107 -19 823 923 ; -C -1 ; WX 500 ; N zdotaccent ; B 20 0 583 729 ; -C -1 ; WX 667 ; N Ecaron ; B 76 0 757 936 ; -C -1 ; WX 278 ; N Iogonek ; B -41 -228 367 718 ; -C -1 ; WX 556 ; N kcommaaccent ; B 69 -228 670 718 ; -C -1 ; WX 584 ; N minus ; B 82 197 610 309 ; -C 206 ; WX 278 ; N Icircumflex ; B 64 0 484 936 ; -C -1 ; WX 611 ; N ncaron ; B 65 0 641 750 ; -C -1 ; WX 333 ; N tcommaaccent ; B 58 -228 422 676 ; -C 172 ; WX 584 ; N logicalnot ; B 105 108 633 419 ; -C 246 ; WX 611 ; N odieresis ; B 82 -14 643 729 ; -C 252 ; WX 611 ; N udieresis ; B 98 -14 658 729 ; -C -1 ; WX 549 ; N notequal ; B 32 -49 630 570 ; -C -1 ; WX 611 ; N gcommaaccent ; B 38 -217 666 850 ; -C 240 ; WX 611 ; N eth ; B 82 -14 670 737 ; -C 158 ; WX 500 ; N zcaron ; B 20 0 586 750 ; -C -1 ; WX 611 ; N ncommaaccent ; B 65 -228 629 546 ; -C 185 ; WX 333 ; N onesuperior ; B 148 283 388 710 ; -C -1 ; WX 278 ; N imacron ; B 69 0 429 678 ; -C 128 ; WX 556 ; N Euro ; B 0 0 0 0 ; -EndCharMetrics -StartKernData -StartKernPairs 2481 -KPX A C -40 -KPX A Cacute -40 -KPX A Ccaron -40 -KPX A Ccedilla -40 -KPX A G -50 -KPX A Gbreve -50 -KPX A Gcommaaccent -50 -KPX A O -40 -KPX A Oacute -40 -KPX A Ocircumflex -40 -KPX A Odieresis -40 -KPX A Ograve -40 -KPX A Ohungarumlaut -40 -KPX A Omacron -40 -KPX A Oslash -40 -KPX A Otilde -40 -KPX A Q -40 -KPX A T -90 -KPX A Tcaron -90 -KPX A Tcommaaccent -90 -KPX A U -50 -KPX A Uacute -50 -KPX A Ucircumflex -50 -KPX A Udieresis -50 -KPX A Ugrave -50 -KPX A Uhungarumlaut -50 -KPX A Umacron -50 -KPX A Uogonek -50 -KPX A Uring -50 -KPX A V -80 -KPX A W -60 -KPX A Y -110 -KPX A Yacute -110 -KPX A Ydieresis -110 -KPX A u -30 -KPX A uacute -30 -KPX A ucircumflex -30 -KPX A udieresis -30 -KPX A ugrave -30 -KPX A uhungarumlaut -30 -KPX A umacron -30 -KPX A uogonek -30 -KPX A uring -30 -KPX A v -40 -KPX A w -30 -KPX A y -30 -KPX A yacute -30 -KPX A ydieresis -30 -KPX Aacute C -40 -KPX Aacute Cacute -40 -KPX Aacute Ccaron -40 -KPX Aacute Ccedilla -40 -KPX Aacute G -50 -KPX Aacute Gbreve -50 -KPX Aacute Gcommaaccent -50 -KPX Aacute O -40 -KPX Aacute Oacute -40 -KPX Aacute Ocircumflex -40 -KPX Aacute Odieresis -40 -KPX Aacute Ograve -40 -KPX Aacute Ohungarumlaut -40 -KPX Aacute Omacron -40 -KPX Aacute Oslash -40 -KPX Aacute Otilde -40 -KPX Aacute Q -40 -KPX Aacute T -90 -KPX Aacute Tcaron -90 -KPX Aacute Tcommaaccent -90 -KPX Aacute U -50 -KPX Aacute Uacute -50 -KPX Aacute Ucircumflex -50 -KPX Aacute Udieresis -50 -KPX Aacute Ugrave -50 -KPX Aacute Uhungarumlaut -50 -KPX Aacute Umacron -50 -KPX Aacute Uogonek -50 -KPX Aacute Uring -50 -KPX Aacute V -80 -KPX Aacute W -60 -KPX Aacute Y -110 -KPX Aacute Yacute -110 -KPX Aacute Ydieresis -110 -KPX Aacute u -30 -KPX Aacute uacute -30 -KPX Aacute ucircumflex -30 -KPX Aacute udieresis -30 -KPX Aacute ugrave -30 -KPX Aacute uhungarumlaut -30 -KPX Aacute umacron -30 -KPX Aacute uogonek -30 -KPX Aacute uring -30 -KPX Aacute v -40 -KPX Aacute w -30 -KPX Aacute y -30 -KPX Aacute yacute -30 -KPX Aacute ydieresis -30 -KPX Abreve C -40 -KPX Abreve Cacute -40 -KPX Abreve Ccaron -40 -KPX Abreve Ccedilla -40 -KPX Abreve G -50 -KPX Abreve Gbreve -50 -KPX Abreve Gcommaaccent -50 -KPX Abreve O -40 -KPX Abreve Oacute -40 -KPX Abreve Ocircumflex -40 -KPX Abreve Odieresis -40 -KPX Abreve Ograve -40 -KPX Abreve Ohungarumlaut -40 -KPX Abreve Omacron -40 -KPX Abreve Oslash -40 -KPX Abreve Otilde -40 -KPX Abreve Q -40 -KPX Abreve T -90 -KPX Abreve Tcaron -90 -KPX Abreve Tcommaaccent -90 -KPX Abreve U -50 -KPX Abreve Uacute -50 -KPX Abreve Ucircumflex -50 -KPX Abreve Udieresis -50 -KPX Abreve Ugrave -50 -KPX Abreve Uhungarumlaut -50 -KPX Abreve Umacron -50 -KPX Abreve Uogonek -50 -KPX Abreve Uring -50 -KPX Abreve V -80 -KPX Abreve W -60 -KPX Abreve Y -110 -KPX Abreve Yacute -110 -KPX Abreve Ydieresis -110 -KPX Abreve u -30 -KPX Abreve uacute -30 -KPX Abreve ucircumflex -30 -KPX Abreve udieresis -30 -KPX Abreve ugrave -30 -KPX Abreve uhungarumlaut -30 -KPX Abreve umacron -30 -KPX Abreve uogonek -30 -KPX Abreve uring -30 -KPX Abreve v -40 -KPX Abreve w -30 -KPX Abreve y -30 -KPX Abreve yacute -30 -KPX Abreve ydieresis -30 -KPX Acircumflex C -40 -KPX Acircumflex Cacute -40 -KPX Acircumflex Ccaron -40 -KPX Acircumflex Ccedilla -40 -KPX Acircumflex G -50 -KPX Acircumflex Gbreve -50 -KPX Acircumflex Gcommaaccent -50 -KPX Acircumflex O -40 -KPX Acircumflex Oacute -40 -KPX Acircumflex Ocircumflex -40 -KPX Acircumflex Odieresis -40 -KPX Acircumflex Ograve -40 -KPX Acircumflex Ohungarumlaut -40 -KPX Acircumflex Omacron -40 -KPX Acircumflex Oslash -40 -KPX Acircumflex Otilde -40 -KPX Acircumflex Q -40 -KPX Acircumflex T -90 -KPX Acircumflex Tcaron -90 -KPX Acircumflex Tcommaaccent -90 -KPX Acircumflex U -50 -KPX Acircumflex Uacute -50 -KPX Acircumflex Ucircumflex -50 -KPX Acircumflex Udieresis -50 -KPX Acircumflex Ugrave -50 -KPX Acircumflex Uhungarumlaut -50 -KPX Acircumflex Umacron -50 -KPX Acircumflex Uogonek -50 -KPX Acircumflex Uring -50 -KPX Acircumflex V -80 -KPX Acircumflex W -60 -KPX Acircumflex Y -110 -KPX Acircumflex Yacute -110 -KPX Acircumflex Ydieresis -110 -KPX Acircumflex u -30 -KPX Acircumflex uacute -30 -KPX Acircumflex ucircumflex -30 -KPX Acircumflex udieresis -30 -KPX Acircumflex ugrave -30 -KPX Acircumflex uhungarumlaut -30 -KPX Acircumflex umacron -30 -KPX Acircumflex uogonek -30 -KPX Acircumflex uring -30 -KPX Acircumflex v -40 -KPX Acircumflex w -30 -KPX Acircumflex y -30 -KPX Acircumflex yacute -30 -KPX Acircumflex ydieresis -30 -KPX Adieresis C -40 -KPX Adieresis Cacute -40 -KPX Adieresis Ccaron -40 -KPX Adieresis Ccedilla -40 -KPX Adieresis G -50 -KPX Adieresis Gbreve -50 -KPX Adieresis Gcommaaccent -50 -KPX Adieresis O -40 -KPX Adieresis Oacute -40 -KPX Adieresis Ocircumflex -40 -KPX Adieresis Odieresis -40 -KPX Adieresis Ograve -40 -KPX Adieresis Ohungarumlaut -40 -KPX Adieresis Omacron -40 -KPX Adieresis Oslash -40 -KPX Adieresis Otilde -40 -KPX Adieresis Q -40 -KPX Adieresis T -90 -KPX Adieresis Tcaron -90 -KPX Adieresis Tcommaaccent -90 -KPX Adieresis U -50 -KPX Adieresis Uacute -50 -KPX Adieresis Ucircumflex -50 -KPX Adieresis Udieresis -50 -KPX Adieresis Ugrave -50 -KPX Adieresis Uhungarumlaut -50 -KPX Adieresis Umacron -50 -KPX Adieresis Uogonek -50 -KPX Adieresis Uring -50 -KPX Adieresis V -80 -KPX Adieresis W -60 -KPX Adieresis Y -110 -KPX Adieresis Yacute -110 -KPX Adieresis Ydieresis -110 -KPX Adieresis u -30 -KPX Adieresis uacute -30 -KPX Adieresis ucircumflex -30 -KPX Adieresis udieresis -30 -KPX Adieresis ugrave -30 -KPX Adieresis uhungarumlaut -30 -KPX Adieresis umacron -30 -KPX Adieresis uogonek -30 -KPX Adieresis uring -30 -KPX Adieresis v -40 -KPX Adieresis w -30 -KPX Adieresis y -30 -KPX Adieresis yacute -30 -KPX Adieresis ydieresis -30 -KPX Agrave C -40 -KPX Agrave Cacute -40 -KPX Agrave Ccaron -40 -KPX Agrave Ccedilla -40 -KPX Agrave G -50 -KPX Agrave Gbreve -50 -KPX Agrave Gcommaaccent -50 -KPX Agrave O -40 -KPX Agrave Oacute -40 -KPX Agrave Ocircumflex -40 -KPX Agrave Odieresis -40 -KPX Agrave Ograve -40 -KPX Agrave Ohungarumlaut -40 -KPX Agrave Omacron -40 -KPX Agrave Oslash -40 -KPX Agrave Otilde -40 -KPX Agrave Q -40 -KPX Agrave T -90 -KPX Agrave Tcaron -90 -KPX Agrave Tcommaaccent -90 -KPX Agrave U -50 -KPX Agrave Uacute -50 -KPX Agrave Ucircumflex -50 -KPX Agrave Udieresis -50 -KPX Agrave Ugrave -50 -KPX Agrave Uhungarumlaut -50 -KPX Agrave Umacron -50 -KPX Agrave Uogonek -50 -KPX Agrave Uring -50 -KPX Agrave V -80 -KPX Agrave W -60 -KPX Agrave Y -110 -KPX Agrave Yacute -110 -KPX Agrave Ydieresis -110 -KPX Agrave u -30 -KPX Agrave uacute -30 -KPX Agrave ucircumflex -30 -KPX Agrave udieresis -30 -KPX Agrave ugrave -30 -KPX Agrave uhungarumlaut -30 -KPX Agrave umacron -30 -KPX Agrave uogonek -30 -KPX Agrave uring -30 -KPX Agrave v -40 -KPX Agrave w -30 -KPX Agrave y -30 -KPX Agrave yacute -30 -KPX Agrave ydieresis -30 -KPX Amacron C -40 -KPX Amacron Cacute -40 -KPX Amacron Ccaron -40 -KPX Amacron Ccedilla -40 -KPX Amacron G -50 -KPX Amacron Gbreve -50 -KPX Amacron Gcommaaccent -50 -KPX Amacron O -40 -KPX Amacron Oacute -40 -KPX Amacron Ocircumflex -40 -KPX Amacron Odieresis -40 -KPX Amacron Ograve -40 -KPX Amacron Ohungarumlaut -40 -KPX Amacron Omacron -40 -KPX Amacron Oslash -40 -KPX Amacron Otilde -40 -KPX Amacron Q -40 -KPX Amacron T -90 -KPX Amacron Tcaron -90 -KPX Amacron Tcommaaccent -90 -KPX Amacron U -50 -KPX Amacron Uacute -50 -KPX Amacron Ucircumflex -50 -KPX Amacron Udieresis -50 -KPX Amacron Ugrave -50 -KPX Amacron Uhungarumlaut -50 -KPX Amacron Umacron -50 -KPX Amacron Uogonek -50 -KPX Amacron Uring -50 -KPX Amacron V -80 -KPX Amacron W -60 -KPX Amacron Y -110 -KPX Amacron Yacute -110 -KPX Amacron Ydieresis -110 -KPX Amacron u -30 -KPX Amacron uacute -30 -KPX Amacron ucircumflex -30 -KPX Amacron udieresis -30 -KPX Amacron ugrave -30 -KPX Amacron uhungarumlaut -30 -KPX Amacron umacron -30 -KPX Amacron uogonek -30 -KPX Amacron uring -30 -KPX Amacron v -40 -KPX Amacron w -30 -KPX Amacron y -30 -KPX Amacron yacute -30 -KPX Amacron ydieresis -30 -KPX Aogonek C -40 -KPX Aogonek Cacute -40 -KPX Aogonek Ccaron -40 -KPX Aogonek Ccedilla -40 -KPX Aogonek G -50 -KPX Aogonek Gbreve -50 -KPX Aogonek Gcommaaccent -50 -KPX Aogonek O -40 -KPX Aogonek Oacute -40 -KPX Aogonek Ocircumflex -40 -KPX Aogonek Odieresis -40 -KPX Aogonek Ograve -40 -KPX Aogonek Ohungarumlaut -40 -KPX Aogonek Omacron -40 -KPX Aogonek Oslash -40 -KPX Aogonek Otilde -40 -KPX Aogonek Q -40 -KPX Aogonek T -90 -KPX Aogonek Tcaron -90 -KPX Aogonek Tcommaaccent -90 -KPX Aogonek U -50 -KPX Aogonek Uacute -50 -KPX Aogonek Ucircumflex -50 -KPX Aogonek Udieresis -50 -KPX Aogonek Ugrave -50 -KPX Aogonek Uhungarumlaut -50 -KPX Aogonek Umacron -50 -KPX Aogonek Uogonek -50 -KPX Aogonek Uring -50 -KPX Aogonek V -80 -KPX Aogonek W -60 -KPX Aogonek Y -110 -KPX Aogonek Yacute -110 -KPX Aogonek Ydieresis -110 -KPX Aogonek u -30 -KPX Aogonek uacute -30 -KPX Aogonek ucircumflex -30 -KPX Aogonek udieresis -30 -KPX Aogonek ugrave -30 -KPX Aogonek uhungarumlaut -30 -KPX Aogonek umacron -30 -KPX Aogonek uogonek -30 -KPX Aogonek uring -30 -KPX Aogonek v -40 -KPX Aogonek w -30 -KPX Aogonek y -30 -KPX Aogonek yacute -30 -KPX Aogonek ydieresis -30 -KPX Aring C -40 -KPX Aring Cacute -40 -KPX Aring Ccaron -40 -KPX Aring Ccedilla -40 -KPX Aring G -50 -KPX Aring Gbreve -50 -KPX Aring Gcommaaccent -50 -KPX Aring O -40 -KPX Aring Oacute -40 -KPX Aring Ocircumflex -40 -KPX Aring Odieresis -40 -KPX Aring Ograve -40 -KPX Aring Ohungarumlaut -40 -KPX Aring Omacron -40 -KPX Aring Oslash -40 -KPX Aring Otilde -40 -KPX Aring Q -40 -KPX Aring T -90 -KPX Aring Tcaron -90 -KPX Aring Tcommaaccent -90 -KPX Aring U -50 -KPX Aring Uacute -50 -KPX Aring Ucircumflex -50 -KPX Aring Udieresis -50 -KPX Aring Ugrave -50 -KPX Aring Uhungarumlaut -50 -KPX Aring Umacron -50 -KPX Aring Uogonek -50 -KPX Aring Uring -50 -KPX Aring V -80 -KPX Aring W -60 -KPX Aring Y -110 -KPX Aring Yacute -110 -KPX Aring Ydieresis -110 -KPX Aring u -30 -KPX Aring uacute -30 -KPX Aring ucircumflex -30 -KPX Aring udieresis -30 -KPX Aring ugrave -30 -KPX Aring uhungarumlaut -30 -KPX Aring umacron -30 -KPX Aring uogonek -30 -KPX Aring uring -30 -KPX Aring v -40 -KPX Aring w -30 -KPX Aring y -30 -KPX Aring yacute -30 -KPX Aring ydieresis -30 -KPX Atilde C -40 -KPX Atilde Cacute -40 -KPX Atilde Ccaron -40 -KPX Atilde Ccedilla -40 -KPX Atilde G -50 -KPX Atilde Gbreve -50 -KPX Atilde Gcommaaccent -50 -KPX Atilde O -40 -KPX Atilde Oacute -40 -KPX Atilde Ocircumflex -40 -KPX Atilde Odieresis -40 -KPX Atilde Ograve -40 -KPX Atilde Ohungarumlaut -40 -KPX Atilde Omacron -40 -KPX Atilde Oslash -40 -KPX Atilde Otilde -40 -KPX Atilde Q -40 -KPX Atilde T -90 -KPX Atilde Tcaron -90 -KPX Atilde Tcommaaccent -90 -KPX Atilde U -50 -KPX Atilde Uacute -50 -KPX Atilde Ucircumflex -50 -KPX Atilde Udieresis -50 -KPX Atilde Ugrave -50 -KPX Atilde Uhungarumlaut -50 -KPX Atilde Umacron -50 -KPX Atilde Uogonek -50 -KPX Atilde Uring -50 -KPX Atilde V -80 -KPX Atilde W -60 -KPX Atilde Y -110 -KPX Atilde Yacute -110 -KPX Atilde Ydieresis -110 -KPX Atilde u -30 -KPX Atilde uacute -30 -KPX Atilde ucircumflex -30 -KPX Atilde udieresis -30 -KPX Atilde ugrave -30 -KPX Atilde uhungarumlaut -30 -KPX Atilde umacron -30 -KPX Atilde uogonek -30 -KPX Atilde uring -30 -KPX Atilde v -40 -KPX Atilde w -30 -KPX Atilde y -30 -KPX Atilde yacute -30 -KPX Atilde ydieresis -30 -KPX B A -30 -KPX B Aacute -30 -KPX B Abreve -30 -KPX B Acircumflex -30 -KPX B Adieresis -30 -KPX B Agrave -30 -KPX B Amacron -30 -KPX B Aogonek -30 -KPX B Aring -30 -KPX B Atilde -30 -KPX B U -10 -KPX B Uacute -10 -KPX B Ucircumflex -10 -KPX B Udieresis -10 -KPX B Ugrave -10 -KPX B Uhungarumlaut -10 -KPX B Umacron -10 -KPX B Uogonek -10 -KPX B Uring -10 -KPX D A -40 -KPX D Aacute -40 -KPX D Abreve -40 -KPX D Acircumflex -40 -KPX D Adieresis -40 -KPX D Agrave -40 -KPX D Amacron -40 -KPX D Aogonek -40 -KPX D Aring -40 -KPX D Atilde -40 -KPX D V -40 -KPX D W -40 -KPX D Y -70 -KPX D Yacute -70 -KPX D Ydieresis -70 -KPX D comma -30 -KPX D period -30 -KPX Dcaron A -40 -KPX Dcaron Aacute -40 -KPX Dcaron Abreve -40 -KPX Dcaron Acircumflex -40 -KPX Dcaron Adieresis -40 -KPX Dcaron Agrave -40 -KPX Dcaron Amacron -40 -KPX Dcaron Aogonek -40 -KPX Dcaron Aring -40 -KPX Dcaron Atilde -40 -KPX Dcaron V -40 -KPX Dcaron W -40 -KPX Dcaron Y -70 -KPX Dcaron Yacute -70 -KPX Dcaron Ydieresis -70 -KPX Dcaron comma -30 -KPX Dcaron period -30 -KPX Dcroat A -40 -KPX Dcroat Aacute -40 -KPX Dcroat Abreve -40 -KPX Dcroat Acircumflex -40 -KPX Dcroat Adieresis -40 -KPX Dcroat Agrave -40 -KPX Dcroat Amacron -40 -KPX Dcroat Aogonek -40 -KPX Dcroat Aring -40 -KPX Dcroat Atilde -40 -KPX Dcroat V -40 -KPX Dcroat W -40 -KPX Dcroat Y -70 -KPX Dcroat Yacute -70 -KPX Dcroat Ydieresis -70 -KPX Dcroat comma -30 -KPX Dcroat period -30 -KPX F A -80 -KPX F Aacute -80 -KPX F Abreve -80 -KPX F Acircumflex -80 -KPX F Adieresis -80 -KPX F Agrave -80 -KPX F Amacron -80 -KPX F Aogonek -80 -KPX F Aring -80 -KPX F Atilde -80 -KPX F a -20 -KPX F aacute -20 -KPX F abreve -20 -KPX F acircumflex -20 -KPX F adieresis -20 -KPX F agrave -20 -KPX F amacron -20 -KPX F aogonek -20 -KPX F aring -20 -KPX F atilde -20 -KPX F comma -100 -KPX F period -100 -KPX J A -20 -KPX J Aacute -20 -KPX J Abreve -20 -KPX J Acircumflex -20 -KPX J Adieresis -20 -KPX J Agrave -20 -KPX J Amacron -20 -KPX J Aogonek -20 -KPX J Aring -20 -KPX J Atilde -20 -KPX J comma -20 -KPX J period -20 -KPX J u -20 -KPX J uacute -20 -KPX J ucircumflex -20 -KPX J udieresis -20 -KPX J ugrave -20 -KPX J uhungarumlaut -20 -KPX J umacron -20 -KPX J uogonek -20 -KPX J uring -20 -KPX K O -30 -KPX K Oacute -30 -KPX K Ocircumflex -30 -KPX K Odieresis -30 -KPX K Ograve -30 -KPX K Ohungarumlaut -30 -KPX K Omacron -30 -KPX K Oslash -30 -KPX K Otilde -30 -KPX K e -15 -KPX K eacute -15 -KPX K ecaron -15 -KPX K ecircumflex -15 -KPX K edieresis -15 -KPX K edotaccent -15 -KPX K egrave -15 -KPX K emacron -15 -KPX K eogonek -15 -KPX K o -35 -KPX K oacute -35 -KPX K ocircumflex -35 -KPX K odieresis -35 -KPX K ograve -35 -KPX K ohungarumlaut -35 -KPX K omacron -35 -KPX K oslash -35 -KPX K otilde -35 -KPX K u -30 -KPX K uacute -30 -KPX K ucircumflex -30 -KPX K udieresis -30 -KPX K ugrave -30 -KPX K uhungarumlaut -30 -KPX K umacron -30 -KPX K uogonek -30 -KPX K uring -30 -KPX K y -40 -KPX K yacute -40 -KPX K ydieresis -40 -KPX Kcommaaccent O -30 -KPX Kcommaaccent Oacute -30 -KPX Kcommaaccent Ocircumflex -30 -KPX Kcommaaccent Odieresis -30 -KPX Kcommaaccent Ograve -30 -KPX Kcommaaccent Ohungarumlaut -30 -KPX Kcommaaccent Omacron -30 -KPX Kcommaaccent Oslash -30 -KPX Kcommaaccent Otilde -30 -KPX Kcommaaccent e -15 -KPX Kcommaaccent eacute -15 -KPX Kcommaaccent ecaron -15 -KPX Kcommaaccent ecircumflex -15 -KPX Kcommaaccent edieresis -15 -KPX Kcommaaccent edotaccent -15 -KPX Kcommaaccent egrave -15 -KPX Kcommaaccent emacron -15 -KPX Kcommaaccent eogonek -15 -KPX Kcommaaccent o -35 -KPX Kcommaaccent oacute -35 -KPX Kcommaaccent ocircumflex -35 -KPX Kcommaaccent odieresis -35 -KPX Kcommaaccent ograve -35 -KPX Kcommaaccent ohungarumlaut -35 -KPX Kcommaaccent omacron -35 -KPX Kcommaaccent oslash -35 -KPX Kcommaaccent otilde -35 -KPX Kcommaaccent u -30 -KPX Kcommaaccent uacute -30 -KPX Kcommaaccent ucircumflex -30 -KPX Kcommaaccent udieresis -30 -KPX Kcommaaccent ugrave -30 -KPX Kcommaaccent uhungarumlaut -30 -KPX Kcommaaccent umacron -30 -KPX Kcommaaccent uogonek -30 -KPX Kcommaaccent uring -30 -KPX Kcommaaccent y -40 -KPX Kcommaaccent yacute -40 -KPX Kcommaaccent ydieresis -40 -KPX L T -90 -KPX L Tcaron -90 -KPX L Tcommaaccent -90 -KPX L V -110 -KPX L W -80 -KPX L Y -120 -KPX L Yacute -120 -KPX L Ydieresis -120 -KPX L quotedblright -140 -KPX L quoteright -140 -KPX L y -30 -KPX L yacute -30 -KPX L ydieresis -30 -KPX Lacute T -90 -KPX Lacute Tcaron -90 -KPX Lacute Tcommaaccent -90 -KPX Lacute V -110 -KPX Lacute W -80 -KPX Lacute Y -120 -KPX Lacute Yacute -120 -KPX Lacute Ydieresis -120 -KPX Lacute quotedblright -140 -KPX Lacute quoteright -140 -KPX Lacute y -30 -KPX Lacute yacute -30 -KPX Lacute ydieresis -30 -KPX Lcommaaccent T -90 -KPX Lcommaaccent Tcaron -90 -KPX Lcommaaccent Tcommaaccent -90 -KPX Lcommaaccent V -110 -KPX Lcommaaccent W -80 -KPX Lcommaaccent Y -120 -KPX Lcommaaccent Yacute -120 -KPX Lcommaaccent Ydieresis -120 -KPX Lcommaaccent quotedblright -140 -KPX Lcommaaccent quoteright -140 -KPX Lcommaaccent y -30 -KPX Lcommaaccent yacute -30 -KPX Lcommaaccent ydieresis -30 -KPX Lslash T -90 -KPX Lslash Tcaron -90 -KPX Lslash Tcommaaccent -90 -KPX Lslash V -110 -KPX Lslash W -80 -KPX Lslash Y -120 -KPX Lslash Yacute -120 -KPX Lslash Ydieresis -120 -KPX Lslash quotedblright -140 -KPX Lslash quoteright -140 -KPX Lslash y -30 -KPX Lslash yacute -30 -KPX Lslash ydieresis -30 -KPX O A -50 -KPX O Aacute -50 -KPX O Abreve -50 -KPX O Acircumflex -50 -KPX O Adieresis -50 -KPX O Agrave -50 -KPX O Amacron -50 -KPX O Aogonek -50 -KPX O Aring -50 -KPX O Atilde -50 -KPX O T -40 -KPX O Tcaron -40 -KPX O Tcommaaccent -40 -KPX O V -50 -KPX O W -50 -KPX O X -50 -KPX O Y -70 -KPX O Yacute -70 -KPX O Ydieresis -70 -KPX O comma -40 -KPX O period -40 -KPX Oacute A -50 -KPX Oacute Aacute -50 -KPX Oacute Abreve -50 -KPX Oacute Acircumflex -50 -KPX Oacute Adieresis -50 -KPX Oacute Agrave -50 -KPX Oacute Amacron -50 -KPX Oacute Aogonek -50 -KPX Oacute Aring -50 -KPX Oacute Atilde -50 -KPX Oacute T -40 -KPX Oacute Tcaron -40 -KPX Oacute Tcommaaccent -40 -KPX Oacute V -50 -KPX Oacute W -50 -KPX Oacute X -50 -KPX Oacute Y -70 -KPX Oacute Yacute -70 -KPX Oacute Ydieresis -70 -KPX Oacute comma -40 -KPX Oacute period -40 -KPX Ocircumflex A -50 -KPX Ocircumflex Aacute -50 -KPX Ocircumflex Abreve -50 -KPX Ocircumflex Acircumflex -50 -KPX Ocircumflex Adieresis -50 -KPX Ocircumflex Agrave -50 -KPX Ocircumflex Amacron -50 -KPX Ocircumflex Aogonek -50 -KPX Ocircumflex Aring -50 -KPX Ocircumflex Atilde -50 -KPX Ocircumflex T -40 -KPX Ocircumflex Tcaron -40 -KPX Ocircumflex Tcommaaccent -40 -KPX Ocircumflex V -50 -KPX Ocircumflex W -50 -KPX Ocircumflex X -50 -KPX Ocircumflex Y -70 -KPX Ocircumflex Yacute -70 -KPX Ocircumflex Ydieresis -70 -KPX Ocircumflex comma -40 -KPX Ocircumflex period -40 -KPX Odieresis A -50 -KPX Odieresis Aacute -50 -KPX Odieresis Abreve -50 -KPX Odieresis Acircumflex -50 -KPX Odieresis Adieresis -50 -KPX Odieresis Agrave -50 -KPX Odieresis Amacron -50 -KPX Odieresis Aogonek -50 -KPX Odieresis Aring -50 -KPX Odieresis Atilde -50 -KPX Odieresis T -40 -KPX Odieresis Tcaron -40 -KPX Odieresis Tcommaaccent -40 -KPX Odieresis V -50 -KPX Odieresis W -50 -KPX Odieresis X -50 -KPX Odieresis Y -70 -KPX Odieresis Yacute -70 -KPX Odieresis Ydieresis -70 -KPX Odieresis comma -40 -KPX Odieresis period -40 -KPX Ograve A -50 -KPX Ograve Aacute -50 -KPX Ograve Abreve -50 -KPX Ograve Acircumflex -50 -KPX Ograve Adieresis -50 -KPX Ograve Agrave -50 -KPX Ograve Amacron -50 -KPX Ograve Aogonek -50 -KPX Ograve Aring -50 -KPX Ograve Atilde -50 -KPX Ograve T -40 -KPX Ograve Tcaron -40 -KPX Ograve Tcommaaccent -40 -KPX Ograve V -50 -KPX Ograve W -50 -KPX Ograve X -50 -KPX Ograve Y -70 -KPX Ograve Yacute -70 -KPX Ograve Ydieresis -70 -KPX Ograve comma -40 -KPX Ograve period -40 -KPX Ohungarumlaut A -50 -KPX Ohungarumlaut Aacute -50 -KPX Ohungarumlaut Abreve -50 -KPX Ohungarumlaut Acircumflex -50 -KPX Ohungarumlaut Adieresis -50 -KPX Ohungarumlaut Agrave -50 -KPX Ohungarumlaut Amacron -50 -KPX Ohungarumlaut Aogonek -50 -KPX Ohungarumlaut Aring -50 -KPX Ohungarumlaut Atilde -50 -KPX Ohungarumlaut T -40 -KPX Ohungarumlaut Tcaron -40 -KPX Ohungarumlaut Tcommaaccent -40 -KPX Ohungarumlaut V -50 -KPX Ohungarumlaut W -50 -KPX Ohungarumlaut X -50 -KPX Ohungarumlaut Y -70 -KPX Ohungarumlaut Yacute -70 -KPX Ohungarumlaut Ydieresis -70 -KPX Ohungarumlaut comma -40 -KPX Ohungarumlaut period -40 -KPX Omacron A -50 -KPX Omacron Aacute -50 -KPX Omacron Abreve -50 -KPX Omacron Acircumflex -50 -KPX Omacron Adieresis -50 -KPX Omacron Agrave -50 -KPX Omacron Amacron -50 -KPX Omacron Aogonek -50 -KPX Omacron Aring -50 -KPX Omacron Atilde -50 -KPX Omacron T -40 -KPX Omacron Tcaron -40 -KPX Omacron Tcommaaccent -40 -KPX Omacron V -50 -KPX Omacron W -50 -KPX Omacron X -50 -KPX Omacron Y -70 -KPX Omacron Yacute -70 -KPX Omacron Ydieresis -70 -KPX Omacron comma -40 -KPX Omacron period -40 -KPX Oslash A -50 -KPX Oslash Aacute -50 -KPX Oslash Abreve -50 -KPX Oslash Acircumflex -50 -KPX Oslash Adieresis -50 -KPX Oslash Agrave -50 -KPX Oslash Amacron -50 -KPX Oslash Aogonek -50 -KPX Oslash Aring -50 -KPX Oslash Atilde -50 -KPX Oslash T -40 -KPX Oslash Tcaron -40 -KPX Oslash Tcommaaccent -40 -KPX Oslash V -50 -KPX Oslash W -50 -KPX Oslash X -50 -KPX Oslash Y -70 -KPX Oslash Yacute -70 -KPX Oslash Ydieresis -70 -KPX Oslash comma -40 -KPX Oslash period -40 -KPX Otilde A -50 -KPX Otilde Aacute -50 -KPX Otilde Abreve -50 -KPX Otilde Acircumflex -50 -KPX Otilde Adieresis -50 -KPX Otilde Agrave -50 -KPX Otilde Amacron -50 -KPX Otilde Aogonek -50 -KPX Otilde Aring -50 -KPX Otilde Atilde -50 -KPX Otilde T -40 -KPX Otilde Tcaron -40 -KPX Otilde Tcommaaccent -40 -KPX Otilde V -50 -KPX Otilde W -50 -KPX Otilde X -50 -KPX Otilde Y -70 -KPX Otilde Yacute -70 -KPX Otilde Ydieresis -70 -KPX Otilde comma -40 -KPX Otilde period -40 -KPX P A -100 -KPX P Aacute -100 -KPX P Abreve -100 -KPX P Acircumflex -100 -KPX P Adieresis -100 -KPX P Agrave -100 -KPX P Amacron -100 -KPX P Aogonek -100 -KPX P Aring -100 -KPX P Atilde -100 -KPX P a -30 -KPX P aacute -30 -KPX P abreve -30 -KPX P acircumflex -30 -KPX P adieresis -30 -KPX P agrave -30 -KPX P amacron -30 -KPX P aogonek -30 -KPX P aring -30 -KPX P atilde -30 -KPX P comma -120 -KPX P e -30 -KPX P eacute -30 -KPX P ecaron -30 -KPX P ecircumflex -30 -KPX P edieresis -30 -KPX P edotaccent -30 -KPX P egrave -30 -KPX P emacron -30 -KPX P eogonek -30 -KPX P o -40 -KPX P oacute -40 -KPX P ocircumflex -40 -KPX P odieresis -40 -KPX P ograve -40 -KPX P ohungarumlaut -40 -KPX P omacron -40 -KPX P oslash -40 -KPX P otilde -40 -KPX P period -120 -KPX Q U -10 -KPX Q Uacute -10 -KPX Q Ucircumflex -10 -KPX Q Udieresis -10 -KPX Q Ugrave -10 -KPX Q Uhungarumlaut -10 -KPX Q Umacron -10 -KPX Q Uogonek -10 -KPX Q Uring -10 -KPX Q comma 20 -KPX Q period 20 -KPX R O -20 -KPX R Oacute -20 -KPX R Ocircumflex -20 -KPX R Odieresis -20 -KPX R Ograve -20 -KPX R Ohungarumlaut -20 -KPX R Omacron -20 -KPX R Oslash -20 -KPX R Otilde -20 -KPX R T -20 -KPX R Tcaron -20 -KPX R Tcommaaccent -20 -KPX R U -20 -KPX R Uacute -20 -KPX R Ucircumflex -20 -KPX R Udieresis -20 -KPX R Ugrave -20 -KPX R Uhungarumlaut -20 -KPX R Umacron -20 -KPX R Uogonek -20 -KPX R Uring -20 -KPX R V -50 -KPX R W -40 -KPX R Y -50 -KPX R Yacute -50 -KPX R Ydieresis -50 -KPX Racute O -20 -KPX Racute Oacute -20 -KPX Racute Ocircumflex -20 -KPX Racute Odieresis -20 -KPX Racute Ograve -20 -KPX Racute Ohungarumlaut -20 -KPX Racute Omacron -20 -KPX Racute Oslash -20 -KPX Racute Otilde -20 -KPX Racute T -20 -KPX Racute Tcaron -20 -KPX Racute Tcommaaccent -20 -KPX Racute U -20 -KPX Racute Uacute -20 -KPX Racute Ucircumflex -20 -KPX Racute Udieresis -20 -KPX Racute Ugrave -20 -KPX Racute Uhungarumlaut -20 -KPX Racute Umacron -20 -KPX Racute Uogonek -20 -KPX Racute Uring -20 -KPX Racute V -50 -KPX Racute W -40 -KPX Racute Y -50 -KPX Racute Yacute -50 -KPX Racute Ydieresis -50 -KPX Rcaron O -20 -KPX Rcaron Oacute -20 -KPX Rcaron Ocircumflex -20 -KPX Rcaron Odieresis -20 -KPX Rcaron Ograve -20 -KPX Rcaron Ohungarumlaut -20 -KPX Rcaron Omacron -20 -KPX Rcaron Oslash -20 -KPX Rcaron Otilde -20 -KPX Rcaron T -20 -KPX Rcaron Tcaron -20 -KPX Rcaron Tcommaaccent -20 -KPX Rcaron U -20 -KPX Rcaron Uacute -20 -KPX Rcaron Ucircumflex -20 -KPX Rcaron Udieresis -20 -KPX Rcaron Ugrave -20 -KPX Rcaron Uhungarumlaut -20 -KPX Rcaron Umacron -20 -KPX Rcaron Uogonek -20 -KPX Rcaron Uring -20 -KPX Rcaron V -50 -KPX Rcaron W -40 -KPX Rcaron Y -50 -KPX Rcaron Yacute -50 -KPX Rcaron Ydieresis -50 -KPX Rcommaaccent O -20 -KPX Rcommaaccent Oacute -20 -KPX Rcommaaccent Ocircumflex -20 -KPX Rcommaaccent Odieresis -20 -KPX Rcommaaccent Ograve -20 -KPX Rcommaaccent Ohungarumlaut -20 -KPX Rcommaaccent Omacron -20 -KPX Rcommaaccent Oslash -20 -KPX Rcommaaccent Otilde -20 -KPX Rcommaaccent T -20 -KPX Rcommaaccent Tcaron -20 -KPX Rcommaaccent Tcommaaccent -20 -KPX Rcommaaccent U -20 -KPX Rcommaaccent Uacute -20 -KPX Rcommaaccent Ucircumflex -20 -KPX Rcommaaccent Udieresis -20 -KPX Rcommaaccent Ugrave -20 -KPX Rcommaaccent Uhungarumlaut -20 -KPX Rcommaaccent Umacron -20 -KPX Rcommaaccent Uogonek -20 -KPX Rcommaaccent Uring -20 -KPX Rcommaaccent V -50 -KPX Rcommaaccent W -40 -KPX Rcommaaccent Y -50 -KPX Rcommaaccent Yacute -50 -KPX Rcommaaccent Ydieresis -50 -KPX T A -90 -KPX T Aacute -90 -KPX T Abreve -90 -KPX T Acircumflex -90 -KPX T Adieresis -90 -KPX T Agrave -90 -KPX T Amacron -90 -KPX T Aogonek -90 -KPX T Aring -90 -KPX T Atilde -90 -KPX T O -40 -KPX T Oacute -40 -KPX T Ocircumflex -40 -KPX T Odieresis -40 -KPX T Ograve -40 -KPX T Ohungarumlaut -40 -KPX T Omacron -40 -KPX T Oslash -40 -KPX T Otilde -40 -KPX T a -80 -KPX T aacute -80 -KPX T abreve -80 -KPX T acircumflex -80 -KPX T adieresis -80 -KPX T agrave -80 -KPX T amacron -80 -KPX T aogonek -80 -KPX T aring -80 -KPX T atilde -80 -KPX T colon -40 -KPX T comma -80 -KPX T e -60 -KPX T eacute -60 -KPX T ecaron -60 -KPX T ecircumflex -60 -KPX T edieresis -60 -KPX T edotaccent -60 -KPX T egrave -60 -KPX T emacron -60 -KPX T eogonek -60 -KPX T hyphen -120 -KPX T o -80 -KPX T oacute -80 -KPX T ocircumflex -80 -KPX T odieresis -80 -KPX T ograve -80 -KPX T ohungarumlaut -80 -KPX T omacron -80 -KPX T oslash -80 -KPX T otilde -80 -KPX T period -80 -KPX T r -80 -KPX T racute -80 -KPX T rcommaaccent -80 -KPX T semicolon -40 -KPX T u -90 -KPX T uacute -90 -KPX T ucircumflex -90 -KPX T udieresis -90 -KPX T ugrave -90 -KPX T uhungarumlaut -90 -KPX T umacron -90 -KPX T uogonek -90 -KPX T uring -90 -KPX T w -60 -KPX T y -60 -KPX T yacute -60 -KPX T ydieresis -60 -KPX Tcaron A -90 -KPX Tcaron Aacute -90 -KPX Tcaron Abreve -90 -KPX Tcaron Acircumflex -90 -KPX Tcaron Adieresis -90 -KPX Tcaron Agrave -90 -KPX Tcaron Amacron -90 -KPX Tcaron Aogonek -90 -KPX Tcaron Aring -90 -KPX Tcaron Atilde -90 -KPX Tcaron O -40 -KPX Tcaron Oacute -40 -KPX Tcaron Ocircumflex -40 -KPX Tcaron Odieresis -40 -KPX Tcaron Ograve -40 -KPX Tcaron Ohungarumlaut -40 -KPX Tcaron Omacron -40 -KPX Tcaron Oslash -40 -KPX Tcaron Otilde -40 -KPX Tcaron a -80 -KPX Tcaron aacute -80 -KPX Tcaron abreve -80 -KPX Tcaron acircumflex -80 -KPX Tcaron adieresis -80 -KPX Tcaron agrave -80 -KPX Tcaron amacron -80 -KPX Tcaron aogonek -80 -KPX Tcaron aring -80 -KPX Tcaron atilde -80 -KPX Tcaron colon -40 -KPX Tcaron comma -80 -KPX Tcaron e -60 -KPX Tcaron eacute -60 -KPX Tcaron ecaron -60 -KPX Tcaron ecircumflex -60 -KPX Tcaron edieresis -60 -KPX Tcaron edotaccent -60 -KPX Tcaron egrave -60 -KPX Tcaron emacron -60 -KPX Tcaron eogonek -60 -KPX Tcaron hyphen -120 -KPX Tcaron o -80 -KPX Tcaron oacute -80 -KPX Tcaron ocircumflex -80 -KPX Tcaron odieresis -80 -KPX Tcaron ograve -80 -KPX Tcaron ohungarumlaut -80 -KPX Tcaron omacron -80 -KPX Tcaron oslash -80 -KPX Tcaron otilde -80 -KPX Tcaron period -80 -KPX Tcaron r -80 -KPX Tcaron racute -80 -KPX Tcaron rcommaaccent -80 -KPX Tcaron semicolon -40 -KPX Tcaron u -90 -KPX Tcaron uacute -90 -KPX Tcaron ucircumflex -90 -KPX Tcaron udieresis -90 -KPX Tcaron ugrave -90 -KPX Tcaron uhungarumlaut -90 -KPX Tcaron umacron -90 -KPX Tcaron uogonek -90 -KPX Tcaron uring -90 -KPX Tcaron w -60 -KPX Tcaron y -60 -KPX Tcaron yacute -60 -KPX Tcaron ydieresis -60 -KPX Tcommaaccent A -90 -KPX Tcommaaccent Aacute -90 -KPX Tcommaaccent Abreve -90 -KPX Tcommaaccent Acircumflex -90 -KPX Tcommaaccent Adieresis -90 -KPX Tcommaaccent Agrave -90 -KPX Tcommaaccent Amacron -90 -KPX Tcommaaccent Aogonek -90 -KPX Tcommaaccent Aring -90 -KPX Tcommaaccent Atilde -90 -KPX Tcommaaccent O -40 -KPX Tcommaaccent Oacute -40 -KPX Tcommaaccent Ocircumflex -40 -KPX Tcommaaccent Odieresis -40 -KPX Tcommaaccent Ograve -40 -KPX Tcommaaccent Ohungarumlaut -40 -KPX Tcommaaccent Omacron -40 -KPX Tcommaaccent Oslash -40 -KPX Tcommaaccent Otilde -40 -KPX Tcommaaccent a -80 -KPX Tcommaaccent aacute -80 -KPX Tcommaaccent abreve -80 -KPX Tcommaaccent acircumflex -80 -KPX Tcommaaccent adieresis -80 -KPX Tcommaaccent agrave -80 -KPX Tcommaaccent amacron -80 -KPX Tcommaaccent aogonek -80 -KPX Tcommaaccent aring -80 -KPX Tcommaaccent atilde -80 -KPX Tcommaaccent colon -40 -KPX Tcommaaccent comma -80 -KPX Tcommaaccent e -60 -KPX Tcommaaccent eacute -60 -KPX Tcommaaccent ecaron -60 -KPX Tcommaaccent ecircumflex -60 -KPX Tcommaaccent edieresis -60 -KPX Tcommaaccent edotaccent -60 -KPX Tcommaaccent egrave -60 -KPX Tcommaaccent emacron -60 -KPX Tcommaaccent eogonek -60 -KPX Tcommaaccent hyphen -120 -KPX Tcommaaccent o -80 -KPX Tcommaaccent oacute -80 -KPX Tcommaaccent ocircumflex -80 -KPX Tcommaaccent odieresis -80 -KPX Tcommaaccent ograve -80 -KPX Tcommaaccent ohungarumlaut -80 -KPX Tcommaaccent omacron -80 -KPX Tcommaaccent oslash -80 -KPX Tcommaaccent otilde -80 -KPX Tcommaaccent period -80 -KPX Tcommaaccent r -80 -KPX Tcommaaccent racute -80 -KPX Tcommaaccent rcommaaccent -80 -KPX Tcommaaccent semicolon -40 -KPX Tcommaaccent u -90 -KPX Tcommaaccent uacute -90 -KPX Tcommaaccent ucircumflex -90 -KPX Tcommaaccent udieresis -90 -KPX Tcommaaccent ugrave -90 -KPX Tcommaaccent uhungarumlaut -90 -KPX Tcommaaccent umacron -90 -KPX Tcommaaccent uogonek -90 -KPX Tcommaaccent uring -90 -KPX Tcommaaccent w -60 -KPX Tcommaaccent y -60 -KPX Tcommaaccent yacute -60 -KPX Tcommaaccent ydieresis -60 -KPX U A -50 -KPX U Aacute -50 -KPX U Abreve -50 -KPX U Acircumflex -50 -KPX U Adieresis -50 -KPX U Agrave -50 -KPX U Amacron -50 -KPX U Aogonek -50 -KPX U Aring -50 -KPX U Atilde -50 -KPX U comma -30 -KPX U period -30 -KPX Uacute A -50 -KPX Uacute Aacute -50 -KPX Uacute Abreve -50 -KPX Uacute Acircumflex -50 -KPX Uacute Adieresis -50 -KPX Uacute Agrave -50 -KPX Uacute Amacron -50 -KPX Uacute Aogonek -50 -KPX Uacute Aring -50 -KPX Uacute Atilde -50 -KPX Uacute comma -30 -KPX Uacute period -30 -KPX Ucircumflex A -50 -KPX Ucircumflex Aacute -50 -KPX Ucircumflex Abreve -50 -KPX Ucircumflex Acircumflex -50 -KPX Ucircumflex Adieresis -50 -KPX Ucircumflex Agrave -50 -KPX Ucircumflex Amacron -50 -KPX Ucircumflex Aogonek -50 -KPX Ucircumflex Aring -50 -KPX Ucircumflex Atilde -50 -KPX Ucircumflex comma -30 -KPX Ucircumflex period -30 -KPX Udieresis A -50 -KPX Udieresis Aacute -50 -KPX Udieresis Abreve -50 -KPX Udieresis Acircumflex -50 -KPX Udieresis Adieresis -50 -KPX Udieresis Agrave -50 -KPX Udieresis Amacron -50 -KPX Udieresis Aogonek -50 -KPX Udieresis Aring -50 -KPX Udieresis Atilde -50 -KPX Udieresis comma -30 -KPX Udieresis period -30 -KPX Ugrave A -50 -KPX Ugrave Aacute -50 -KPX Ugrave Abreve -50 -KPX Ugrave Acircumflex -50 -KPX Ugrave Adieresis -50 -KPX Ugrave Agrave -50 -KPX Ugrave Amacron -50 -KPX Ugrave Aogonek -50 -KPX Ugrave Aring -50 -KPX Ugrave Atilde -50 -KPX Ugrave comma -30 -KPX Ugrave period -30 -KPX Uhungarumlaut A -50 -KPX Uhungarumlaut Aacute -50 -KPX Uhungarumlaut Abreve -50 -KPX Uhungarumlaut Acircumflex -50 -KPX Uhungarumlaut Adieresis -50 -KPX Uhungarumlaut Agrave -50 -KPX Uhungarumlaut Amacron -50 -KPX Uhungarumlaut Aogonek -50 -KPX Uhungarumlaut Aring -50 -KPX Uhungarumlaut Atilde -50 -KPX Uhungarumlaut comma -30 -KPX Uhungarumlaut period -30 -KPX Umacron A -50 -KPX Umacron Aacute -50 -KPX Umacron Abreve -50 -KPX Umacron Acircumflex -50 -KPX Umacron Adieresis -50 -KPX Umacron Agrave -50 -KPX Umacron Amacron -50 -KPX Umacron Aogonek -50 -KPX Umacron Aring -50 -KPX Umacron Atilde -50 -KPX Umacron comma -30 -KPX Umacron period -30 -KPX Uogonek A -50 -KPX Uogonek Aacute -50 -KPX Uogonek Abreve -50 -KPX Uogonek Acircumflex -50 -KPX Uogonek Adieresis -50 -KPX Uogonek Agrave -50 -KPX Uogonek Amacron -50 -KPX Uogonek Aogonek -50 -KPX Uogonek Aring -50 -KPX Uogonek Atilde -50 -KPX Uogonek comma -30 -KPX Uogonek period -30 -KPX Uring A -50 -KPX Uring Aacute -50 -KPX Uring Abreve -50 -KPX Uring Acircumflex -50 -KPX Uring Adieresis -50 -KPX Uring Agrave -50 -KPX Uring Amacron -50 -KPX Uring Aogonek -50 -KPX Uring Aring -50 -KPX Uring Atilde -50 -KPX Uring comma -30 -KPX Uring period -30 -KPX V A -80 -KPX V Aacute -80 -KPX V Abreve -80 -KPX V Acircumflex -80 -KPX V Adieresis -80 -KPX V Agrave -80 -KPX V Amacron -80 -KPX V Aogonek -80 -KPX V Aring -80 -KPX V Atilde -80 -KPX V G -50 -KPX V Gbreve -50 -KPX V Gcommaaccent -50 -KPX V O -50 -KPX V Oacute -50 -KPX V Ocircumflex -50 -KPX V Odieresis -50 -KPX V Ograve -50 -KPX V Ohungarumlaut -50 -KPX V Omacron -50 -KPX V Oslash -50 -KPX V Otilde -50 -KPX V a -60 -KPX V aacute -60 -KPX V abreve -60 -KPX V acircumflex -60 -KPX V adieresis -60 -KPX V agrave -60 -KPX V amacron -60 -KPX V aogonek -60 -KPX V aring -60 -KPX V atilde -60 -KPX V colon -40 -KPX V comma -120 -KPX V e -50 -KPX V eacute -50 -KPX V ecaron -50 -KPX V ecircumflex -50 -KPX V edieresis -50 -KPX V edotaccent -50 -KPX V egrave -50 -KPX V emacron -50 -KPX V eogonek -50 -KPX V hyphen -80 -KPX V o -90 -KPX V oacute -90 -KPX V ocircumflex -90 -KPX V odieresis -90 -KPX V ograve -90 -KPX V ohungarumlaut -90 -KPX V omacron -90 -KPX V oslash -90 -KPX V otilde -90 -KPX V period -120 -KPX V semicolon -40 -KPX V u -60 -KPX V uacute -60 -KPX V ucircumflex -60 -KPX V udieresis -60 -KPX V ugrave -60 -KPX V uhungarumlaut -60 -KPX V umacron -60 -KPX V uogonek -60 -KPX V uring -60 -KPX W A -60 -KPX W Aacute -60 -KPX W Abreve -60 -KPX W Acircumflex -60 -KPX W Adieresis -60 -KPX W Agrave -60 -KPX W Amacron -60 -KPX W Aogonek -60 -KPX W Aring -60 -KPX W Atilde -60 -KPX W O -20 -KPX W Oacute -20 -KPX W Ocircumflex -20 -KPX W Odieresis -20 -KPX W Ograve -20 -KPX W Ohungarumlaut -20 -KPX W Omacron -20 -KPX W Oslash -20 -KPX W Otilde -20 -KPX W a -40 -KPX W aacute -40 -KPX W abreve -40 -KPX W acircumflex -40 -KPX W adieresis -40 -KPX W agrave -40 -KPX W amacron -40 -KPX W aogonek -40 -KPX W aring -40 -KPX W atilde -40 -KPX W colon -10 -KPX W comma -80 -KPX W e -35 -KPX W eacute -35 -KPX W ecaron -35 -KPX W ecircumflex -35 -KPX W edieresis -35 -KPX W edotaccent -35 -KPX W egrave -35 -KPX W emacron -35 -KPX W eogonek -35 -KPX W hyphen -40 -KPX W o -60 -KPX W oacute -60 -KPX W ocircumflex -60 -KPX W odieresis -60 -KPX W ograve -60 -KPX W ohungarumlaut -60 -KPX W omacron -60 -KPX W oslash -60 -KPX W otilde -60 -KPX W period -80 -KPX W semicolon -10 -KPX W u -45 -KPX W uacute -45 -KPX W ucircumflex -45 -KPX W udieresis -45 -KPX W ugrave -45 -KPX W uhungarumlaut -45 -KPX W umacron -45 -KPX W uogonek -45 -KPX W uring -45 -KPX W y -20 -KPX W yacute -20 -KPX W ydieresis -20 -KPX Y A -110 -KPX Y Aacute -110 -KPX Y Abreve -110 -KPX Y Acircumflex -110 -KPX Y Adieresis -110 -KPX Y Agrave -110 -KPX Y Amacron -110 -KPX Y Aogonek -110 -KPX Y Aring -110 -KPX Y Atilde -110 -KPX Y O -70 -KPX Y Oacute -70 -KPX Y Ocircumflex -70 -KPX Y Odieresis -70 -KPX Y Ograve -70 -KPX Y Ohungarumlaut -70 -KPX Y Omacron -70 -KPX Y Oslash -70 -KPX Y Otilde -70 -KPX Y a -90 -KPX Y aacute -90 -KPX Y abreve -90 -KPX Y acircumflex -90 -KPX Y adieresis -90 -KPX Y agrave -90 -KPX Y amacron -90 -KPX Y aogonek -90 -KPX Y aring -90 -KPX Y atilde -90 -KPX Y colon -50 -KPX Y comma -100 -KPX Y e -80 -KPX Y eacute -80 -KPX Y ecaron -80 -KPX Y ecircumflex -80 -KPX Y edieresis -80 -KPX Y edotaccent -80 -KPX Y egrave -80 -KPX Y emacron -80 -KPX Y eogonek -80 -KPX Y o -100 -KPX Y oacute -100 -KPX Y ocircumflex -100 -KPX Y odieresis -100 -KPX Y ograve -100 -KPX Y ohungarumlaut -100 -KPX Y omacron -100 -KPX Y oslash -100 -KPX Y otilde -100 -KPX Y period -100 -KPX Y semicolon -50 -KPX Y u -100 -KPX Y uacute -100 -KPX Y ucircumflex -100 -KPX Y udieresis -100 -KPX Y ugrave -100 -KPX Y uhungarumlaut -100 -KPX Y umacron -100 -KPX Y uogonek -100 -KPX Y uring -100 -KPX Yacute A -110 -KPX Yacute Aacute -110 -KPX Yacute Abreve -110 -KPX Yacute Acircumflex -110 -KPX Yacute Adieresis -110 -KPX Yacute Agrave -110 -KPX Yacute Amacron -110 -KPX Yacute Aogonek -110 -KPX Yacute Aring -110 -KPX Yacute Atilde -110 -KPX Yacute O -70 -KPX Yacute Oacute -70 -KPX Yacute Ocircumflex -70 -KPX Yacute Odieresis -70 -KPX Yacute Ograve -70 -KPX Yacute Ohungarumlaut -70 -KPX Yacute Omacron -70 -KPX Yacute Oslash -70 -KPX Yacute Otilde -70 -KPX Yacute a -90 -KPX Yacute aacute -90 -KPX Yacute abreve -90 -KPX Yacute acircumflex -90 -KPX Yacute adieresis -90 -KPX Yacute agrave -90 -KPX Yacute amacron -90 -KPX Yacute aogonek -90 -KPX Yacute aring -90 -KPX Yacute atilde -90 -KPX Yacute colon -50 -KPX Yacute comma -100 -KPX Yacute e -80 -KPX Yacute eacute -80 -KPX Yacute ecaron -80 -KPX Yacute ecircumflex -80 -KPX Yacute edieresis -80 -KPX Yacute edotaccent -80 -KPX Yacute egrave -80 -KPX Yacute emacron -80 -KPX Yacute eogonek -80 -KPX Yacute o -100 -KPX Yacute oacute -100 -KPX Yacute ocircumflex -100 -KPX Yacute odieresis -100 -KPX Yacute ograve -100 -KPX Yacute ohungarumlaut -100 -KPX Yacute omacron -100 -KPX Yacute oslash -100 -KPX Yacute otilde -100 -KPX Yacute period -100 -KPX Yacute semicolon -50 -KPX Yacute u -100 -KPX Yacute uacute -100 -KPX Yacute ucircumflex -100 -KPX Yacute udieresis -100 -KPX Yacute ugrave -100 -KPX Yacute uhungarumlaut -100 -KPX Yacute umacron -100 -KPX Yacute uogonek -100 -KPX Yacute uring -100 -KPX Ydieresis A -110 -KPX Ydieresis Aacute -110 -KPX Ydieresis Abreve -110 -KPX Ydieresis Acircumflex -110 -KPX Ydieresis Adieresis -110 -KPX Ydieresis Agrave -110 -KPX Ydieresis Amacron -110 -KPX Ydieresis Aogonek -110 -KPX Ydieresis Aring -110 -KPX Ydieresis Atilde -110 -KPX Ydieresis O -70 -KPX Ydieresis Oacute -70 -KPX Ydieresis Ocircumflex -70 -KPX Ydieresis Odieresis -70 -KPX Ydieresis Ograve -70 -KPX Ydieresis Ohungarumlaut -70 -KPX Ydieresis Omacron -70 -KPX Ydieresis Oslash -70 -KPX Ydieresis Otilde -70 -KPX Ydieresis a -90 -KPX Ydieresis aacute -90 -KPX Ydieresis abreve -90 -KPX Ydieresis acircumflex -90 -KPX Ydieresis adieresis -90 -KPX Ydieresis agrave -90 -KPX Ydieresis amacron -90 -KPX Ydieresis aogonek -90 -KPX Ydieresis aring -90 -KPX Ydieresis atilde -90 -KPX Ydieresis colon -50 -KPX Ydieresis comma -100 -KPX Ydieresis e -80 -KPX Ydieresis eacute -80 -KPX Ydieresis ecaron -80 -KPX Ydieresis ecircumflex -80 -KPX Ydieresis edieresis -80 -KPX Ydieresis edotaccent -80 -KPX Ydieresis egrave -80 -KPX Ydieresis emacron -80 -KPX Ydieresis eogonek -80 -KPX Ydieresis o -100 -KPX Ydieresis oacute -100 -KPX Ydieresis ocircumflex -100 -KPX Ydieresis odieresis -100 -KPX Ydieresis ograve -100 -KPX Ydieresis ohungarumlaut -100 -KPX Ydieresis omacron -100 -KPX Ydieresis oslash -100 -KPX Ydieresis otilde -100 -KPX Ydieresis period -100 -KPX Ydieresis semicolon -50 -KPX Ydieresis u -100 -KPX Ydieresis uacute -100 -KPX Ydieresis ucircumflex -100 -KPX Ydieresis udieresis -100 -KPX Ydieresis ugrave -100 -KPX Ydieresis uhungarumlaut -100 -KPX Ydieresis umacron -100 -KPX Ydieresis uogonek -100 -KPX Ydieresis uring -100 -KPX a g -10 -KPX a gbreve -10 -KPX a gcommaaccent -10 -KPX a v -15 -KPX a w -15 -KPX a y -20 -KPX a yacute -20 -KPX a ydieresis -20 -KPX aacute g -10 -KPX aacute gbreve -10 -KPX aacute gcommaaccent -10 -KPX aacute v -15 -KPX aacute w -15 -KPX aacute y -20 -KPX aacute yacute -20 -KPX aacute ydieresis -20 -KPX abreve g -10 -KPX abreve gbreve -10 -KPX abreve gcommaaccent -10 -KPX abreve v -15 -KPX abreve w -15 -KPX abreve y -20 -KPX abreve yacute -20 -KPX abreve ydieresis -20 -KPX acircumflex g -10 -KPX acircumflex gbreve -10 -KPX acircumflex gcommaaccent -10 -KPX acircumflex v -15 -KPX acircumflex w -15 -KPX acircumflex y -20 -KPX acircumflex yacute -20 -KPX acircumflex ydieresis -20 -KPX adieresis g -10 -KPX adieresis gbreve -10 -KPX adieresis gcommaaccent -10 -KPX adieresis v -15 -KPX adieresis w -15 -KPX adieresis y -20 -KPX adieresis yacute -20 -KPX adieresis ydieresis -20 -KPX agrave g -10 -KPX agrave gbreve -10 -KPX agrave gcommaaccent -10 -KPX agrave v -15 -KPX agrave w -15 -KPX agrave y -20 -KPX agrave yacute -20 -KPX agrave ydieresis -20 -KPX amacron g -10 -KPX amacron gbreve -10 -KPX amacron gcommaaccent -10 -KPX amacron v -15 -KPX amacron w -15 -KPX amacron y -20 -KPX amacron yacute -20 -KPX amacron ydieresis -20 -KPX aogonek g -10 -KPX aogonek gbreve -10 -KPX aogonek gcommaaccent -10 -KPX aogonek v -15 -KPX aogonek w -15 -KPX aogonek y -20 -KPX aogonek yacute -20 -KPX aogonek ydieresis -20 -KPX aring g -10 -KPX aring gbreve -10 -KPX aring gcommaaccent -10 -KPX aring v -15 -KPX aring w -15 -KPX aring y -20 -KPX aring yacute -20 -KPX aring ydieresis -20 -KPX atilde g -10 -KPX atilde gbreve -10 -KPX atilde gcommaaccent -10 -KPX atilde v -15 -KPX atilde w -15 -KPX atilde y -20 -KPX atilde yacute -20 -KPX atilde ydieresis -20 -KPX b l -10 -KPX b lacute -10 -KPX b lcommaaccent -10 -KPX b lslash -10 -KPX b u -20 -KPX b uacute -20 -KPX b ucircumflex -20 -KPX b udieresis -20 -KPX b ugrave -20 -KPX b uhungarumlaut -20 -KPX b umacron -20 -KPX b uogonek -20 -KPX b uring -20 -KPX b v -20 -KPX b y -20 -KPX b yacute -20 -KPX b ydieresis -20 -KPX c h -10 -KPX c k -20 -KPX c kcommaaccent -20 -KPX c l -20 -KPX c lacute -20 -KPX c lcommaaccent -20 -KPX c lslash -20 -KPX c y -10 -KPX c yacute -10 -KPX c ydieresis -10 -KPX cacute h -10 -KPX cacute k -20 -KPX cacute kcommaaccent -20 -KPX cacute l -20 -KPX cacute lacute -20 -KPX cacute lcommaaccent -20 -KPX cacute lslash -20 -KPX cacute y -10 -KPX cacute yacute -10 -KPX cacute ydieresis -10 -KPX ccaron h -10 -KPX ccaron k -20 -KPX ccaron kcommaaccent -20 -KPX ccaron l -20 -KPX ccaron lacute -20 -KPX ccaron lcommaaccent -20 -KPX ccaron lslash -20 -KPX ccaron y -10 -KPX ccaron yacute -10 -KPX ccaron ydieresis -10 -KPX ccedilla h -10 -KPX ccedilla k -20 -KPX ccedilla kcommaaccent -20 -KPX ccedilla l -20 -KPX ccedilla lacute -20 -KPX ccedilla lcommaaccent -20 -KPX ccedilla lslash -20 -KPX ccedilla y -10 -KPX ccedilla yacute -10 -KPX ccedilla ydieresis -10 -KPX colon space -40 -KPX comma quotedblright -120 -KPX comma quoteright -120 -KPX comma space -40 -KPX d d -10 -KPX d dcroat -10 -KPX d v -15 -KPX d w -15 -KPX d y -15 -KPX d yacute -15 -KPX d ydieresis -15 -KPX dcroat d -10 -KPX dcroat dcroat -10 -KPX dcroat v -15 -KPX dcroat w -15 -KPX dcroat y -15 -KPX dcroat yacute -15 -KPX dcroat ydieresis -15 -KPX e comma 10 -KPX e period 20 -KPX e v -15 -KPX e w -15 -KPX e x -15 -KPX e y -15 -KPX e yacute -15 -KPX e ydieresis -15 -KPX eacute comma 10 -KPX eacute period 20 -KPX eacute v -15 -KPX eacute w -15 -KPX eacute x -15 -KPX eacute y -15 -KPX eacute yacute -15 -KPX eacute ydieresis -15 -KPX ecaron comma 10 -KPX ecaron period 20 -KPX ecaron v -15 -KPX ecaron w -15 -KPX ecaron x -15 -KPX ecaron y -15 -KPX ecaron yacute -15 -KPX ecaron ydieresis -15 -KPX ecircumflex comma 10 -KPX ecircumflex period 20 -KPX ecircumflex v -15 -KPX ecircumflex w -15 -KPX ecircumflex x -15 -KPX ecircumflex y -15 -KPX ecircumflex yacute -15 -KPX ecircumflex ydieresis -15 -KPX edieresis comma 10 -KPX edieresis period 20 -KPX edieresis v -15 -KPX edieresis w -15 -KPX edieresis x -15 -KPX edieresis y -15 -KPX edieresis yacute -15 -KPX edieresis ydieresis -15 -KPX edotaccent comma 10 -KPX edotaccent period 20 -KPX edotaccent v -15 -KPX edotaccent w -15 -KPX edotaccent x -15 -KPX edotaccent y -15 -KPX edotaccent yacute -15 -KPX edotaccent ydieresis -15 -KPX egrave comma 10 -KPX egrave period 20 -KPX egrave v -15 -KPX egrave w -15 -KPX egrave x -15 -KPX egrave y -15 -KPX egrave yacute -15 -KPX egrave ydieresis -15 -KPX emacron comma 10 -KPX emacron period 20 -KPX emacron v -15 -KPX emacron w -15 -KPX emacron x -15 -KPX emacron y -15 -KPX emacron yacute -15 -KPX emacron ydieresis -15 -KPX eogonek comma 10 -KPX eogonek period 20 -KPX eogonek v -15 -KPX eogonek w -15 -KPX eogonek x -15 -KPX eogonek y -15 -KPX eogonek yacute -15 -KPX eogonek ydieresis -15 -KPX f comma -10 -KPX f e -10 -KPX f eacute -10 -KPX f ecaron -10 -KPX f ecircumflex -10 -KPX f edieresis -10 -KPX f edotaccent -10 -KPX f egrave -10 -KPX f emacron -10 -KPX f eogonek -10 -KPX f o -20 -KPX f oacute -20 -KPX f ocircumflex -20 -KPX f odieresis -20 -KPX f ograve -20 -KPX f ohungarumlaut -20 -KPX f omacron -20 -KPX f oslash -20 -KPX f otilde -20 -KPX f period -10 -KPX f quotedblright 30 -KPX f quoteright 30 -KPX g e 10 -KPX g eacute 10 -KPX g ecaron 10 -KPX g ecircumflex 10 -KPX g edieresis 10 -KPX g edotaccent 10 -KPX g egrave 10 -KPX g emacron 10 -KPX g eogonek 10 -KPX g g -10 -KPX g gbreve -10 -KPX g gcommaaccent -10 -KPX gbreve e 10 -KPX gbreve eacute 10 -KPX gbreve ecaron 10 -KPX gbreve ecircumflex 10 -KPX gbreve edieresis 10 -KPX gbreve edotaccent 10 -KPX gbreve egrave 10 -KPX gbreve emacron 10 -KPX gbreve eogonek 10 -KPX gbreve g -10 -KPX gbreve gbreve -10 -KPX gbreve gcommaaccent -10 -KPX gcommaaccent e 10 -KPX gcommaaccent eacute 10 -KPX gcommaaccent ecaron 10 -KPX gcommaaccent ecircumflex 10 -KPX gcommaaccent edieresis 10 -KPX gcommaaccent edotaccent 10 -KPX gcommaaccent egrave 10 -KPX gcommaaccent emacron 10 -KPX gcommaaccent eogonek 10 -KPX gcommaaccent g -10 -KPX gcommaaccent gbreve -10 -KPX gcommaaccent gcommaaccent -10 -KPX h y -20 -KPX h yacute -20 -KPX h ydieresis -20 -KPX k o -15 -KPX k oacute -15 -KPX k ocircumflex -15 -KPX k odieresis -15 -KPX k ograve -15 -KPX k ohungarumlaut -15 -KPX k omacron -15 -KPX k oslash -15 -KPX k otilde -15 -KPX kcommaaccent o -15 -KPX kcommaaccent oacute -15 -KPX kcommaaccent ocircumflex -15 -KPX kcommaaccent odieresis -15 -KPX kcommaaccent ograve -15 -KPX kcommaaccent ohungarumlaut -15 -KPX kcommaaccent omacron -15 -KPX kcommaaccent oslash -15 -KPX kcommaaccent otilde -15 -KPX l w -15 -KPX l y -15 -KPX l yacute -15 -KPX l ydieresis -15 -KPX lacute w -15 -KPX lacute y -15 -KPX lacute yacute -15 -KPX lacute ydieresis -15 -KPX lcommaaccent w -15 -KPX lcommaaccent y -15 -KPX lcommaaccent yacute -15 -KPX lcommaaccent ydieresis -15 -KPX lslash w -15 -KPX lslash y -15 -KPX lslash yacute -15 -KPX lslash ydieresis -15 -KPX m u -20 -KPX m uacute -20 -KPX m ucircumflex -20 -KPX m udieresis -20 -KPX m ugrave -20 -KPX m uhungarumlaut -20 -KPX m umacron -20 -KPX m uogonek -20 -KPX m uring -20 -KPX m y -30 -KPX m yacute -30 -KPX m ydieresis -30 -KPX n u -10 -KPX n uacute -10 -KPX n ucircumflex -10 -KPX n udieresis -10 -KPX n ugrave -10 -KPX n uhungarumlaut -10 -KPX n umacron -10 -KPX n uogonek -10 -KPX n uring -10 -KPX n v -40 -KPX n y -20 -KPX n yacute -20 -KPX n ydieresis -20 -KPX nacute u -10 -KPX nacute uacute -10 -KPX nacute ucircumflex -10 -KPX nacute udieresis -10 -KPX nacute ugrave -10 -KPX nacute uhungarumlaut -10 -KPX nacute umacron -10 -KPX nacute uogonek -10 -KPX nacute uring -10 -KPX nacute v -40 -KPX nacute y -20 -KPX nacute yacute -20 -KPX nacute ydieresis -20 -KPX ncaron u -10 -KPX ncaron uacute -10 -KPX ncaron ucircumflex -10 -KPX ncaron udieresis -10 -KPX ncaron ugrave -10 -KPX ncaron uhungarumlaut -10 -KPX ncaron umacron -10 -KPX ncaron uogonek -10 -KPX ncaron uring -10 -KPX ncaron v -40 -KPX ncaron y -20 -KPX ncaron yacute -20 -KPX ncaron ydieresis -20 -KPX ncommaaccent u -10 -KPX ncommaaccent uacute -10 -KPX ncommaaccent ucircumflex -10 -KPX ncommaaccent udieresis -10 -KPX ncommaaccent ugrave -10 -KPX ncommaaccent uhungarumlaut -10 -KPX ncommaaccent umacron -10 -KPX ncommaaccent uogonek -10 -KPX ncommaaccent uring -10 -KPX ncommaaccent v -40 -KPX ncommaaccent y -20 -KPX ncommaaccent yacute -20 -KPX ncommaaccent ydieresis -20 -KPX ntilde u -10 -KPX ntilde uacute -10 -KPX ntilde ucircumflex -10 -KPX ntilde udieresis -10 -KPX ntilde ugrave -10 -KPX ntilde uhungarumlaut -10 -KPX ntilde umacron -10 -KPX ntilde uogonek -10 -KPX ntilde uring -10 -KPX ntilde v -40 -KPX ntilde y -20 -KPX ntilde yacute -20 -KPX ntilde ydieresis -20 -KPX o v -20 -KPX o w -15 -KPX o x -30 -KPX o y -20 -KPX o yacute -20 -KPX o ydieresis -20 -KPX oacute v -20 -KPX oacute w -15 -KPX oacute x -30 -KPX oacute y -20 -KPX oacute yacute -20 -KPX oacute ydieresis -20 -KPX ocircumflex v -20 -KPX ocircumflex w -15 -KPX ocircumflex x -30 -KPX ocircumflex y -20 -KPX ocircumflex yacute -20 -KPX ocircumflex ydieresis -20 -KPX odieresis v -20 -KPX odieresis w -15 -KPX odieresis x -30 -KPX odieresis y -20 -KPX odieresis yacute -20 -KPX odieresis ydieresis -20 -KPX ograve v -20 -KPX ograve w -15 -KPX ograve x -30 -KPX ograve y -20 -KPX ograve yacute -20 -KPX ograve ydieresis -20 -KPX ohungarumlaut v -20 -KPX ohungarumlaut w -15 -KPX ohungarumlaut x -30 -KPX ohungarumlaut y -20 -KPX ohungarumlaut yacute -20 -KPX ohungarumlaut ydieresis -20 -KPX omacron v -20 -KPX omacron w -15 -KPX omacron x -30 -KPX omacron y -20 -KPX omacron yacute -20 -KPX omacron ydieresis -20 -KPX oslash v -20 -KPX oslash w -15 -KPX oslash x -30 -KPX oslash y -20 -KPX oslash yacute -20 -KPX oslash ydieresis -20 -KPX otilde v -20 -KPX otilde w -15 -KPX otilde x -30 -KPX otilde y -20 -KPX otilde yacute -20 -KPX otilde ydieresis -20 -KPX p y -15 -KPX p yacute -15 -KPX p ydieresis -15 -KPX period quotedblright -120 -KPX period quoteright -120 -KPX period space -40 -KPX quotedblright space -80 -KPX quoteleft quoteleft -46 -KPX quoteright d -80 -KPX quoteright dcroat -80 -KPX quoteright l -20 -KPX quoteright lacute -20 -KPX quoteright lcommaaccent -20 -KPX quoteright lslash -20 -KPX quoteright quoteright -46 -KPX quoteright r -40 -KPX quoteright racute -40 -KPX quoteright rcaron -40 -KPX quoteright rcommaaccent -40 -KPX quoteright s -60 -KPX quoteright sacute -60 -KPX quoteright scaron -60 -KPX quoteright scedilla -60 -KPX quoteright scommaaccent -60 -KPX quoteright space -80 -KPX quoteright v -20 -KPX r c -20 -KPX r cacute -20 -KPX r ccaron -20 -KPX r ccedilla -20 -KPX r comma -60 -KPX r d -20 -KPX r dcroat -20 -KPX r g -15 -KPX r gbreve -15 -KPX r gcommaaccent -15 -KPX r hyphen -20 -KPX r o -20 -KPX r oacute -20 -KPX r ocircumflex -20 -KPX r odieresis -20 -KPX r ograve -20 -KPX r ohungarumlaut -20 -KPX r omacron -20 -KPX r oslash -20 -KPX r otilde -20 -KPX r period -60 -KPX r q -20 -KPX r s -15 -KPX r sacute -15 -KPX r scaron -15 -KPX r scedilla -15 -KPX r scommaaccent -15 -KPX r t 20 -KPX r tcommaaccent 20 -KPX r v 10 -KPX r y 10 -KPX r yacute 10 -KPX r ydieresis 10 -KPX racute c -20 -KPX racute cacute -20 -KPX racute ccaron -20 -KPX racute ccedilla -20 -KPX racute comma -60 -KPX racute d -20 -KPX racute dcroat -20 -KPX racute g -15 -KPX racute gbreve -15 -KPX racute gcommaaccent -15 -KPX racute hyphen -20 -KPX racute o -20 -KPX racute oacute -20 -KPX racute ocircumflex -20 -KPX racute odieresis -20 -KPX racute ograve -20 -KPX racute ohungarumlaut -20 -KPX racute omacron -20 -KPX racute oslash -20 -KPX racute otilde -20 -KPX racute period -60 -KPX racute q -20 -KPX racute s -15 -KPX racute sacute -15 -KPX racute scaron -15 -KPX racute scedilla -15 -KPX racute scommaaccent -15 -KPX racute t 20 -KPX racute tcommaaccent 20 -KPX racute v 10 -KPX racute y 10 -KPX racute yacute 10 -KPX racute ydieresis 10 -KPX rcaron c -20 -KPX rcaron cacute -20 -KPX rcaron ccaron -20 -KPX rcaron ccedilla -20 -KPX rcaron comma -60 -KPX rcaron d -20 -KPX rcaron dcroat -20 -KPX rcaron g -15 -KPX rcaron gbreve -15 -KPX rcaron gcommaaccent -15 -KPX rcaron hyphen -20 -KPX rcaron o -20 -KPX rcaron oacute -20 -KPX rcaron ocircumflex -20 -KPX rcaron odieresis -20 -KPX rcaron ograve -20 -KPX rcaron ohungarumlaut -20 -KPX rcaron omacron -20 -KPX rcaron oslash -20 -KPX rcaron otilde -20 -KPX rcaron period -60 -KPX rcaron q -20 -KPX rcaron s -15 -KPX rcaron sacute -15 -KPX rcaron scaron -15 -KPX rcaron scedilla -15 -KPX rcaron scommaaccent -15 -KPX rcaron t 20 -KPX rcaron tcommaaccent 20 -KPX rcaron v 10 -KPX rcaron y 10 -KPX rcaron yacute 10 -KPX rcaron ydieresis 10 -KPX rcommaaccent c -20 -KPX rcommaaccent cacute -20 -KPX rcommaaccent ccaron -20 -KPX rcommaaccent ccedilla -20 -KPX rcommaaccent comma -60 -KPX rcommaaccent d -20 -KPX rcommaaccent dcroat -20 -KPX rcommaaccent g -15 -KPX rcommaaccent gbreve -15 -KPX rcommaaccent gcommaaccent -15 -KPX rcommaaccent hyphen -20 -KPX rcommaaccent o -20 -KPX rcommaaccent oacute -20 -KPX rcommaaccent ocircumflex -20 -KPX rcommaaccent odieresis -20 -KPX rcommaaccent ograve -20 -KPX rcommaaccent ohungarumlaut -20 -KPX rcommaaccent omacron -20 -KPX rcommaaccent oslash -20 -KPX rcommaaccent otilde -20 -KPX rcommaaccent period -60 -KPX rcommaaccent q -20 -KPX rcommaaccent s -15 -KPX rcommaaccent sacute -15 -KPX rcommaaccent scaron -15 -KPX rcommaaccent scedilla -15 -KPX rcommaaccent scommaaccent -15 -KPX rcommaaccent t 20 -KPX rcommaaccent tcommaaccent 20 -KPX rcommaaccent v 10 -KPX rcommaaccent y 10 -KPX rcommaaccent yacute 10 -KPX rcommaaccent ydieresis 10 -KPX s w -15 -KPX sacute w -15 -KPX scaron w -15 -KPX scedilla w -15 -KPX scommaaccent w -15 -KPX semicolon space -40 -KPX space T -100 -KPX space Tcaron -100 -KPX space Tcommaaccent -100 -KPX space V -80 -KPX space W -80 -KPX space Y -120 -KPX space Yacute -120 -KPX space Ydieresis -120 -KPX space quotedblleft -80 -KPX space quoteleft -60 -KPX v a -20 -KPX v aacute -20 -KPX v abreve -20 -KPX v acircumflex -20 -KPX v adieresis -20 -KPX v agrave -20 -KPX v amacron -20 -KPX v aogonek -20 -KPX v aring -20 -KPX v atilde -20 -KPX v comma -80 -KPX v o -30 -KPX v oacute -30 -KPX v ocircumflex -30 -KPX v odieresis -30 -KPX v ograve -30 -KPX v ohungarumlaut -30 -KPX v omacron -30 -KPX v oslash -30 -KPX v otilde -30 -KPX v period -80 -KPX w comma -40 -KPX w o -20 -KPX w oacute -20 -KPX w ocircumflex -20 -KPX w odieresis -20 -KPX w ograve -20 -KPX w ohungarumlaut -20 -KPX w omacron -20 -KPX w oslash -20 -KPX w otilde -20 -KPX w period -40 -KPX x e -10 -KPX x eacute -10 -KPX x ecaron -10 -KPX x ecircumflex -10 -KPX x edieresis -10 -KPX x edotaccent -10 -KPX x egrave -10 -KPX x emacron -10 -KPX x eogonek -10 -KPX y a -30 -KPX y aacute -30 -KPX y abreve -30 -KPX y acircumflex -30 -KPX y adieresis -30 -KPX y agrave -30 -KPX y amacron -30 -KPX y aogonek -30 -KPX y aring -30 -KPX y atilde -30 -KPX y comma -80 -KPX y e -10 -KPX y eacute -10 -KPX y ecaron -10 -KPX y ecircumflex -10 -KPX y edieresis -10 -KPX y edotaccent -10 -KPX y egrave -10 -KPX y emacron -10 -KPX y eogonek -10 -KPX y o -25 -KPX y oacute -25 -KPX y ocircumflex -25 -KPX y odieresis -25 -KPX y ograve -25 -KPX y ohungarumlaut -25 -KPX y omacron -25 -KPX y oslash -25 -KPX y otilde -25 -KPX y period -80 -KPX yacute a -30 -KPX yacute aacute -30 -KPX yacute abreve -30 -KPX yacute acircumflex -30 -KPX yacute adieresis -30 -KPX yacute agrave -30 -KPX yacute amacron -30 -KPX yacute aogonek -30 -KPX yacute aring -30 -KPX yacute atilde -30 -KPX yacute comma -80 -KPX yacute e -10 -KPX yacute eacute -10 -KPX yacute ecaron -10 -KPX yacute ecircumflex -10 -KPX yacute edieresis -10 -KPX yacute edotaccent -10 -KPX yacute egrave -10 -KPX yacute emacron -10 -KPX yacute eogonek -10 -KPX yacute o -25 -KPX yacute oacute -25 -KPX yacute ocircumflex -25 -KPX yacute odieresis -25 -KPX yacute ograve -25 -KPX yacute ohungarumlaut -25 -KPX yacute omacron -25 -KPX yacute oslash -25 -KPX yacute otilde -25 -KPX yacute period -80 -KPX ydieresis a -30 -KPX ydieresis aacute -30 -KPX ydieresis abreve -30 -KPX ydieresis acircumflex -30 -KPX ydieresis adieresis -30 -KPX ydieresis agrave -30 -KPX ydieresis amacron -30 -KPX ydieresis aogonek -30 -KPX ydieresis aring -30 -KPX ydieresis atilde -30 -KPX ydieresis comma -80 -KPX ydieresis e -10 -KPX ydieresis eacute -10 -KPX ydieresis ecaron -10 -KPX ydieresis ecircumflex -10 -KPX ydieresis edieresis -10 -KPX ydieresis edotaccent -10 -KPX ydieresis egrave -10 -KPX ydieresis emacron -10 -KPX ydieresis eogonek -10 -KPX ydieresis o -25 -KPX ydieresis oacute -25 -KPX ydieresis ocircumflex -25 -KPX ydieresis odieresis -25 -KPX ydieresis ograve -25 -KPX ydieresis ohungarumlaut -25 -KPX ydieresis omacron -25 -KPX ydieresis oslash -25 -KPX ydieresis otilde -25 -KPX ydieresis period -80 -KPX z e 10 -KPX z eacute 10 -KPX z ecaron 10 -KPX z ecircumflex 10 -KPX z edieresis 10 -KPX z edotaccent 10 -KPX z egrave 10 -KPX z emacron 10 -KPX z eogonek 10 -KPX zacute e 10 -KPX zacute eacute 10 -KPX zacute ecaron 10 -KPX zacute ecircumflex 10 -KPX zacute edieresis 10 -KPX zacute edotaccent 10 -KPX zacute egrave 10 -KPX zacute emacron 10 -KPX zacute eogonek 10 -KPX zcaron e 10 -KPX zcaron eacute 10 -KPX zcaron ecaron 10 -KPX zcaron ecircumflex 10 -KPX zcaron edieresis 10 -KPX zcaron edotaccent 10 -KPX zcaron egrave 10 -KPX zcaron emacron 10 -KPX zcaron eogonek 10 -KPX zdotaccent e 10 -KPX zdotaccent eacute 10 -KPX zdotaccent ecaron 10 -KPX zdotaccent ecircumflex 10 -KPX zdotaccent edieresis 10 -KPX zdotaccent edotaccent 10 -KPX zdotaccent egrave 10 -KPX zdotaccent emacron 10 -KPX zdotaccent eogonek 10 -EndKernPairs -EndKernData -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Helvetica-Oblique.afm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Helvetica-Oblique.afm deleted file mode 100644 index 08bc2e57..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Helvetica-Oblique.afm +++ /dev/null @@ -1,3053 +0,0 @@ -StartFontMetrics 4.1 -Comment Copyright (c) 1985, 1987, 1989, 1990, 1997 Adobe Systems Incorporated. All Rights Reserved. -Comment Creation Date: Thu May 1 12:44:31 1997 -Comment UniqueID 43055 -Comment VMusage 14960 69346 -FontName Helvetica-Oblique -FullName Helvetica Oblique -FamilyName Helvetica -Weight Medium -ItalicAngle -12 -IsFixedPitch false -CharacterSet ExtendedRoman -FontBBox -170 -225 1116 931 -UnderlinePosition -100 -UnderlineThickness 50 -Version 002.000 -Notice Copyright (c) 1985, 1987, 1989, 1990, 1997 Adobe Systems Incorporated. All Rights Reserved.Helvetica is a trademark of Linotype-Hell AG and/or its subsidiaries. -EncodingScheme WinAnsiEncoding -CapHeight 718 -XHeight 523 -Ascender 718 -Descender -207 -StdHW 76 -StdVW 88 -StartCharMetrics 317 -C 32 ; WX 278 ; N space ; B 0 0 0 0 ; -C 160 ; WX 278 ; N space ; B 0 0 0 0 ; -C 33 ; WX 278 ; N exclam ; B 90 0 340 718 ; -C 34 ; WX 355 ; N quotedbl ; B 168 463 438 718 ; -C 35 ; WX 556 ; N numbersign ; B 73 0 631 688 ; -C 36 ; WX 556 ; N dollar ; B 69 -115 617 775 ; -C 37 ; WX 889 ; N percent ; B 147 -19 889 703 ; -C 38 ; WX 667 ; N ampersand ; B 77 -15 647 718 ; -C 146 ; WX 222 ; N quoteright ; B 151 463 310 718 ; -C 40 ; WX 333 ; N parenleft ; B 108 -207 454 733 ; -C 41 ; WX 333 ; N parenright ; B -9 -207 337 733 ; -C 42 ; WX 389 ; N asterisk ; B 165 431 475 718 ; -C 43 ; WX 584 ; N plus ; B 85 0 606 505 ; -C 44 ; WX 278 ; N comma ; B 56 -147 214 106 ; -C 45 ; WX 333 ; N hyphen ; B 93 232 357 322 ; -C 173 ; WX 333 ; N hyphen ; B 44 232 289 322 ; -C 46 ; WX 278 ; N period ; B 87 0 214 106 ; -C 47 ; WX 278 ; N slash ; B -21 -19 452 737 ; -C 48 ; WX 556 ; N zero ; B 93 -19 608 703 ; -C 49 ; WX 556 ; N one ; B 207 0 508 703 ; -C 50 ; WX 556 ; N two ; B 26 0 617 703 ; -C 51 ; WX 556 ; N three ; B 75 -19 610 703 ; -C 52 ; WX 556 ; N four ; B 61 0 576 703 ; -C 53 ; WX 556 ; N five ; B 68 -19 621 688 ; -C 54 ; WX 556 ; N six ; B 91 -19 615 703 ; -C 55 ; WX 556 ; N seven ; B 137 0 669 688 ; -C 56 ; WX 556 ; N eight ; B 74 -19 607 703 ; -C 57 ; WX 556 ; N nine ; B 82 -19 609 703 ; -C 58 ; WX 278 ; N colon ; B 87 0 301 516 ; -C 59 ; WX 278 ; N semicolon ; B 56 -147 301 516 ; -C 60 ; WX 584 ; N less ; B 94 11 641 495 ; -C 61 ; WX 584 ; N equal ; B 63 115 628 390 ; -C 62 ; WX 584 ; N greater ; B 50 11 597 495 ; -C 63 ; WX 556 ; N question ; B 161 0 610 727 ; -C 64 ; WX 1015 ; N at ; B 215 -19 965 737 ; -C 65 ; WX 667 ; N A ; B 14 0 654 718 ; -C 66 ; WX 667 ; N B ; B 74 0 712 718 ; -C 67 ; WX 722 ; N C ; B 108 -19 782 737 ; -C 68 ; WX 722 ; N D ; B 81 0 764 718 ; -C 69 ; WX 667 ; N E ; B 86 0 762 718 ; -C 70 ; WX 611 ; N F ; B 86 0 736 718 ; -C 71 ; WX 778 ; N G ; B 111 -19 799 737 ; -C 72 ; WX 722 ; N H ; B 77 0 799 718 ; -C 73 ; WX 278 ; N I ; B 91 0 341 718 ; -C 74 ; WX 500 ; N J ; B 47 -19 581 718 ; -C 75 ; WX 667 ; N K ; B 76 0 808 718 ; -C 76 ; WX 556 ; N L ; B 76 0 555 718 ; -C 77 ; WX 833 ; N M ; B 73 0 914 718 ; -C 78 ; WX 722 ; N N ; B 76 0 799 718 ; -C 79 ; WX 778 ; N O ; B 105 -19 826 737 ; -C 80 ; WX 667 ; N P ; B 86 0 737 718 ; -C 81 ; WX 778 ; N Q ; B 105 -56 826 737 ; -C 82 ; WX 722 ; N R ; B 88 0 773 718 ; -C 83 ; WX 667 ; N S ; B 90 -19 713 737 ; -C 84 ; WX 611 ; N T ; B 148 0 750 718 ; -C 85 ; WX 722 ; N U ; B 123 -19 797 718 ; -C 86 ; WX 667 ; N V ; B 173 0 800 718 ; -C 87 ; WX 944 ; N W ; B 169 0 1081 718 ; -C 88 ; WX 667 ; N X ; B 19 0 790 718 ; -C 89 ; WX 667 ; N Y ; B 167 0 806 718 ; -C 90 ; WX 611 ; N Z ; B 23 0 741 718 ; -C 91 ; WX 278 ; N bracketleft ; B 21 -196 403 722 ; -C 92 ; WX 278 ; N backslash ; B 140 -19 291 737 ; -C 93 ; WX 278 ; N bracketright ; B -14 -196 368 722 ; -C 94 ; WX 469 ; N asciicircum ; B 42 264 539 688 ; -C 95 ; WX 556 ; N underscore ; B -27 -125 540 -75 ; -C 145 ; WX 222 ; N quoteleft ; B 165 470 323 725 ; -C 97 ; WX 556 ; N a ; B 61 -15 559 538 ; -C 98 ; WX 556 ; N b ; B 58 -15 584 718 ; -C 99 ; WX 500 ; N c ; B 74 -15 553 538 ; -C 100 ; WX 556 ; N d ; B 84 -15 652 718 ; -C 101 ; WX 556 ; N e ; B 84 -15 578 538 ; -C 102 ; WX 278 ; N f ; B 86 0 416 728 ; L i fi ; L l fl ; -C 103 ; WX 556 ; N g ; B 42 -220 610 538 ; -C 104 ; WX 556 ; N h ; B 65 0 573 718 ; -C 105 ; WX 222 ; N i ; B 67 0 308 718 ; -C 106 ; WX 222 ; N j ; B -60 -210 308 718 ; -C 107 ; WX 500 ; N k ; B 67 0 600 718 ; -C 108 ; WX 222 ; N l ; B 67 0 308 718 ; -C 109 ; WX 833 ; N m ; B 65 0 852 538 ; -C 110 ; WX 556 ; N n ; B 65 0 573 538 ; -C 111 ; WX 556 ; N o ; B 83 -14 585 538 ; -C 112 ; WX 556 ; N p ; B 14 -207 584 538 ; -C 113 ; WX 556 ; N q ; B 84 -207 605 538 ; -C 114 ; WX 333 ; N r ; B 77 0 446 538 ; -C 115 ; WX 500 ; N s ; B 63 -15 529 538 ; -C 116 ; WX 278 ; N t ; B 102 -7 368 669 ; -C 117 ; WX 556 ; N u ; B 94 -15 600 523 ; -C 118 ; WX 500 ; N v ; B 119 0 603 523 ; -C 119 ; WX 722 ; N w ; B 125 0 820 523 ; -C 120 ; WX 500 ; N x ; B 11 0 594 523 ; -C 121 ; WX 500 ; N y ; B 15 -214 600 523 ; -C 122 ; WX 500 ; N z ; B 31 0 571 523 ; -C 123 ; WX 334 ; N braceleft ; B 92 -196 445 722 ; -C 124 ; WX 260 ; N bar ; B 46 -225 332 775 ; -C 125 ; WX 334 ; N braceright ; B 0 -196 354 722 ; -C 126 ; WX 584 ; N asciitilde ; B 111 180 580 326 ; -C 161 ; WX 333 ; N exclamdown ; B 77 -195 326 523 ; -C 162 ; WX 556 ; N cent ; B 95 -115 584 623 ; -C 163 ; WX 556 ; N sterling ; B 49 -16 634 718 ; -C -1 ; WX 167 ; N fraction ; B -170 -19 482 703 ; -C 165 ; WX 556 ; N yen ; B 81 0 699 688 ; -C 131 ; WX 556 ; N florin ; B -52 -207 654 737 ; -C 167 ; WX 556 ; N section ; B 76 -191 584 737 ; -C 164 ; WX 556 ; N currency ; B 60 99 646 603 ; -C 39 ; WX 191 ; N quotesingle ; B 157 463 285 718 ; -C 147 ; WX 333 ; N quotedblleft ; B 138 470 461 725 ; -C 171 ; WX 556 ; N guillemotleft ; B 146 108 554 446 ; -C 139 ; WX 333 ; N guilsinglleft ; B 137 108 340 446 ; -C 155 ; WX 333 ; N guilsinglright ; B 111 108 314 446 ; -C -1 ; WX 500 ; N fi ; B 86 0 587 728 ; -C -1 ; WX 500 ; N fl ; B 86 0 585 728 ; -C 150 ; WX 556 ; N endash ; B 51 240 623 313 ; -C 134 ; WX 556 ; N dagger ; B 135 -159 622 718 ; -C 135 ; WX 556 ; N daggerdbl ; B 52 -159 623 718 ; -C 183 ; WX 278 ; N periodcentered ; B 129 190 257 315 ; -C 182 ; WX 537 ; N paragraph ; B 126 -173 650 718 ; -C 149 ; WX 350 ; N bullet ; B 91 202 413 517 ; -C 130 ; WX 222 ; N quotesinglbase ; B 21 -149 180 106 ; -C 132 ; WX 333 ; N quotedblbase ; B -6 -149 318 106 ; -C 148 ; WX 333 ; N quotedblright ; B 124 463 448 718 ; -C 187 ; WX 556 ; N guillemotright ; B 120 108 528 446 ; -C 133 ; WX 1000 ; N ellipsis ; B 115 0 908 106 ; -C 137 ; WX 1000 ; N perthousand ; B 88 -19 1029 703 ; -C 191 ; WX 611 ; N questiondown ; B 85 -201 534 525 ; -C 96 ; WX 333 ; N grave ; B 170 593 337 734 ; -C 180 ; WX 333 ; N acute ; B 248 593 475 734 ; -C 136 ; WX 333 ; N circumflex ; B 147 593 438 734 ; -C 152 ; WX 333 ; N tilde ; B 125 606 490 722 ; -C 175 ; WX 333 ; N macron ; B 143 627 468 684 ; -C -1 ; WX 333 ; N breve ; B 167 595 476 731 ; -C -1 ; WX 333 ; N dotaccent ; B 249 604 362 706 ; -C 168 ; WX 333 ; N dieresis ; B 168 604 443 706 ; -C -1 ; WX 333 ; N ring ; B 214 572 402 756 ; -C 184 ; WX 333 ; N cedilla ; B 2 -225 232 0 ; -C -1 ; WX 333 ; N hungarumlaut ; B 157 593 565 734 ; -C -1 ; WX 333 ; N ogonek ; B 43 -225 249 0 ; -C -1 ; WX 333 ; N caron ; B 177 593 468 734 ; -C 151 ; WX 1000 ; N emdash ; B 51 240 1067 313 ; -C 198 ; WX 1000 ; N AE ; B 8 0 1097 718 ; -C 170 ; WX 370 ; N ordfeminine ; B 127 405 449 737 ; -C -1 ; WX 556 ; N Lslash ; B 41 0 555 718 ; -C 216 ; WX 778 ; N Oslash ; B 43 -19 890 737 ; -C 140 ; WX 1000 ; N OE ; B 98 -19 1116 737 ; -C 186 ; WX 365 ; N ordmasculine ; B 141 405 468 737 ; -C 230 ; WX 889 ; N ae ; B 61 -15 909 538 ; -C -1 ; WX 278 ; N dotlessi ; B 95 0 294 523 ; -C -1 ; WX 222 ; N lslash ; B 41 0 347 718 ; -C 248 ; WX 611 ; N oslash ; B 29 -22 647 545 ; -C 156 ; WX 944 ; N oe ; B 83 -15 964 538 ; -C 223 ; WX 611 ; N germandbls ; B 67 -15 658 728 ; -C 207 ; WX 278 ; N Idieresis ; B 91 0 458 901 ; -C 233 ; WX 556 ; N eacute ; B 84 -15 587 734 ; -C -1 ; WX 556 ; N abreve ; B 61 -15 578 731 ; -C -1 ; WX 556 ; N uhungarumlaut ; B 94 -15 677 734 ; -C -1 ; WX 556 ; N ecaron ; B 84 -15 580 734 ; -C 159 ; WX 667 ; N Ydieresis ; B 167 0 806 901 ; -C 247 ; WX 584 ; N divide ; B 85 -19 606 524 ; -C 221 ; WX 667 ; N Yacute ; B 167 0 806 929 ; -C 194 ; WX 667 ; N Acircumflex ; B 14 0 654 929 ; -C 225 ; WX 556 ; N aacute ; B 61 -15 587 734 ; -C 219 ; WX 722 ; N Ucircumflex ; B 123 -19 797 929 ; -C 253 ; WX 500 ; N yacute ; B 15 -214 600 734 ; -C -1 ; WX 500 ; N scommaaccent ; B 63 -225 529 538 ; -C 234 ; WX 556 ; N ecircumflex ; B 84 -15 578 734 ; -C -1 ; WX 722 ; N Uring ; B 123 -19 797 931 ; -C 220 ; WX 722 ; N Udieresis ; B 123 -19 797 901 ; -C -1 ; WX 556 ; N aogonek ; B 61 -220 559 538 ; -C 218 ; WX 722 ; N Uacute ; B 123 -19 797 929 ; -C -1 ; WX 556 ; N uogonek ; B 94 -225 600 523 ; -C 203 ; WX 667 ; N Edieresis ; B 86 0 762 901 ; -C -1 ; WX 722 ; N Dcroat ; B 69 0 764 718 ; -C -1 ; WX 250 ; N commaaccent ; B 39 -225 172 -40 ; -C 169 ; WX 737 ; N copyright ; B 54 -19 837 737 ; -C -1 ; WX 667 ; N Emacron ; B 86 0 762 879 ; -C -1 ; WX 500 ; N ccaron ; B 74 -15 553 734 ; -C 229 ; WX 556 ; N aring ; B 61 -15 559 756 ; -C -1 ; WX 722 ; N Ncommaaccent ; B 76 -225 799 718 ; -C -1 ; WX 222 ; N lacute ; B 67 0 461 929 ; -C 224 ; WX 556 ; N agrave ; B 61 -15 559 734 ; -C -1 ; WX 611 ; N Tcommaaccent ; B 148 -225 750 718 ; -C -1 ; WX 722 ; N Cacute ; B 108 -19 782 929 ; -C 227 ; WX 556 ; N atilde ; B 61 -15 592 722 ; -C -1 ; WX 667 ; N Edotaccent ; B 86 0 762 901 ; -C 154 ; WX 500 ; N scaron ; B 63 -15 552 734 ; -C -1 ; WX 500 ; N scedilla ; B 63 -225 529 538 ; -C 237 ; WX 278 ; N iacute ; B 95 0 448 734 ; -C -1 ; WX 471 ; N lozenge ; B 88 0 540 728 ; -C -1 ; WX 722 ; N Rcaron ; B 88 0 773 929 ; -C -1 ; WX 778 ; N Gcommaaccent ; B 111 -225 799 737 ; -C 251 ; WX 556 ; N ucircumflex ; B 94 -15 600 734 ; -C 226 ; WX 556 ; N acircumflex ; B 61 -15 559 734 ; -C -1 ; WX 667 ; N Amacron ; B 14 0 677 879 ; -C -1 ; WX 333 ; N rcaron ; B 77 0 508 734 ; -C 231 ; WX 500 ; N ccedilla ; B 74 -225 553 538 ; -C -1 ; WX 611 ; N Zdotaccent ; B 23 0 741 901 ; -C 222 ; WX 667 ; N Thorn ; B 86 0 712 718 ; -C -1 ; WX 778 ; N Omacron ; B 105 -19 826 879 ; -C -1 ; WX 722 ; N Racute ; B 88 0 773 929 ; -C -1 ; WX 667 ; N Sacute ; B 90 -19 713 929 ; -C -1 ; WX 643 ; N dcaron ; B 84 -15 808 718 ; -C -1 ; WX 722 ; N Umacron ; B 123 -19 797 879 ; -C -1 ; WX 556 ; N uring ; B 94 -15 600 756 ; -C 179 ; WX 333 ; N threesuperior ; B 90 270 436 703 ; -C 210 ; WX 778 ; N Ograve ; B 105 -19 826 929 ; -C 192 ; WX 667 ; N Agrave ; B 14 0 654 929 ; -C -1 ; WX 667 ; N Abreve ; B 14 0 685 926 ; -C 215 ; WX 584 ; N multiply ; B 50 0 642 506 ; -C 250 ; WX 556 ; N uacute ; B 94 -15 600 734 ; -C -1 ; WX 611 ; N Tcaron ; B 148 0 750 929 ; -C -1 ; WX 476 ; N partialdiff ; B 41 -38 550 714 ; -C 255 ; WX 500 ; N ydieresis ; B 15 -214 600 706 ; -C -1 ; WX 722 ; N Nacute ; B 76 0 799 929 ; -C 238 ; WX 278 ; N icircumflex ; B 95 0 411 734 ; -C 202 ; WX 667 ; N Ecircumflex ; B 86 0 762 929 ; -C 228 ; WX 556 ; N adieresis ; B 61 -15 559 706 ; -C 235 ; WX 556 ; N edieresis ; B 84 -15 578 706 ; -C -1 ; WX 500 ; N cacute ; B 74 -15 559 734 ; -C -1 ; WX 556 ; N nacute ; B 65 0 587 734 ; -C -1 ; WX 556 ; N umacron ; B 94 -15 600 684 ; -C -1 ; WX 722 ; N Ncaron ; B 76 0 799 929 ; -C 205 ; WX 278 ; N Iacute ; B 91 0 489 929 ; -C 177 ; WX 584 ; N plusminus ; B 39 0 618 506 ; -C 166 ; WX 260 ; N brokenbar ; B 62 -150 316 700 ; -C 174 ; WX 737 ; N registered ; B 54 -19 837 737 ; -C -1 ; WX 778 ; N Gbreve ; B 111 -19 799 926 ; -C -1 ; WX 278 ; N Idotaccent ; B 91 0 377 901 ; -C -1 ; WX 600 ; N summation ; B 15 -10 671 706 ; -C 200 ; WX 667 ; N Egrave ; B 86 0 762 929 ; -C -1 ; WX 333 ; N racute ; B 77 0 475 734 ; -C -1 ; WX 556 ; N omacron ; B 83 -14 585 684 ; -C -1 ; WX 611 ; N Zacute ; B 23 0 741 929 ; -C 142 ; WX 611 ; N Zcaron ; B 23 0 741 929 ; -C -1 ; WX 549 ; N greaterequal ; B 26 0 620 674 ; -C 208 ; WX 722 ; N Eth ; B 69 0 764 718 ; -C 199 ; WX 722 ; N Ccedilla ; B 108 -225 782 737 ; -C -1 ; WX 222 ; N lcommaaccent ; B 25 -225 308 718 ; -C -1 ; WX 317 ; N tcaron ; B 102 -7 501 808 ; -C -1 ; WX 556 ; N eogonek ; B 84 -225 578 538 ; -C -1 ; WX 722 ; N Uogonek ; B 123 -225 797 718 ; -C 193 ; WX 667 ; N Aacute ; B 14 0 683 929 ; -C 196 ; WX 667 ; N Adieresis ; B 14 0 654 901 ; -C 232 ; WX 556 ; N egrave ; B 84 -15 578 734 ; -C -1 ; WX 500 ; N zacute ; B 31 0 571 734 ; -C -1 ; WX 222 ; N iogonek ; B -61 -225 308 718 ; -C 211 ; WX 778 ; N Oacute ; B 105 -19 826 929 ; -C 243 ; WX 556 ; N oacute ; B 83 -14 587 734 ; -C -1 ; WX 556 ; N amacron ; B 61 -15 580 684 ; -C -1 ; WX 500 ; N sacute ; B 63 -15 559 734 ; -C 239 ; WX 278 ; N idieresis ; B 95 0 416 706 ; -C 212 ; WX 778 ; N Ocircumflex ; B 105 -19 826 929 ; -C 217 ; WX 722 ; N Ugrave ; B 123 -19 797 929 ; -C -1 ; WX 612 ; N Delta ; B 6 0 608 688 ; -C 254 ; WX 556 ; N thorn ; B 14 -207 584 718 ; -C 178 ; WX 333 ; N twosuperior ; B 64 281 449 703 ; -C 214 ; WX 778 ; N Odieresis ; B 105 -19 826 901 ; -C 181 ; WX 556 ; N mu ; B 24 -207 600 523 ; -C 236 ; WX 278 ; N igrave ; B 95 0 310 734 ; -C -1 ; WX 556 ; N ohungarumlaut ; B 83 -14 677 734 ; -C -1 ; WX 667 ; N Eogonek ; B 86 -220 762 718 ; -C -1 ; WX 556 ; N dcroat ; B 84 -15 689 718 ; -C 190 ; WX 834 ; N threequarters ; B 130 -19 861 703 ; -C -1 ; WX 667 ; N Scedilla ; B 90 -225 713 737 ; -C -1 ; WX 299 ; N lcaron ; B 67 0 464 718 ; -C -1 ; WX 667 ; N Kcommaaccent ; B 76 -225 808 718 ; -C -1 ; WX 556 ; N Lacute ; B 76 0 555 929 ; -C 153 ; WX 1000 ; N trademark ; B 186 306 1056 718 ; -C -1 ; WX 556 ; N edotaccent ; B 84 -15 578 706 ; -C 204 ; WX 278 ; N Igrave ; B 91 0 351 929 ; -C -1 ; WX 278 ; N Imacron ; B 91 0 483 879 ; -C -1 ; WX 556 ; N Lcaron ; B 76 0 570 718 ; -C 189 ; WX 834 ; N onehalf ; B 114 -19 839 703 ; -C -1 ; WX 549 ; N lessequal ; B 26 0 666 674 ; -C 244 ; WX 556 ; N ocircumflex ; B 83 -14 585 734 ; -C 241 ; WX 556 ; N ntilde ; B 65 0 592 722 ; -C -1 ; WX 722 ; N Uhungarumlaut ; B 123 -19 801 929 ; -C 201 ; WX 667 ; N Eacute ; B 86 0 762 929 ; -C -1 ; WX 556 ; N emacron ; B 84 -15 580 684 ; -C -1 ; WX 556 ; N gbreve ; B 42 -220 610 731 ; -C 188 ; WX 834 ; N onequarter ; B 150 -19 802 703 ; -C 138 ; WX 667 ; N Scaron ; B 90 -19 713 929 ; -C -1 ; WX 667 ; N Scommaaccent ; B 90 -225 713 737 ; -C -1 ; WX 778 ; N Ohungarumlaut ; B 105 -19 829 929 ; -C 176 ; WX 400 ; N degree ; B 169 411 468 703 ; -C 242 ; WX 556 ; N ograve ; B 83 -14 585 734 ; -C -1 ; WX 722 ; N Ccaron ; B 108 -19 782 929 ; -C 249 ; WX 556 ; N ugrave ; B 94 -15 600 734 ; -C -1 ; WX 453 ; N radical ; B 79 -80 617 762 ; -C -1 ; WX 722 ; N Dcaron ; B 81 0 764 929 ; -C -1 ; WX 333 ; N rcommaaccent ; B 30 -225 446 538 ; -C 209 ; WX 722 ; N Ntilde ; B 76 0 799 917 ; -C 245 ; WX 556 ; N otilde ; B 83 -14 602 722 ; -C -1 ; WX 722 ; N Rcommaaccent ; B 88 -225 773 718 ; -C -1 ; WX 556 ; N Lcommaaccent ; B 76 -225 555 718 ; -C 195 ; WX 667 ; N Atilde ; B 14 0 699 917 ; -C -1 ; WX 667 ; N Aogonek ; B 14 -225 654 718 ; -C 197 ; WX 667 ; N Aring ; B 14 0 654 931 ; -C 213 ; WX 778 ; N Otilde ; B 105 -19 826 917 ; -C -1 ; WX 500 ; N zdotaccent ; B 31 0 571 706 ; -C -1 ; WX 667 ; N Ecaron ; B 86 0 762 929 ; -C -1 ; WX 278 ; N Iogonek ; B -33 -225 341 718 ; -C -1 ; WX 500 ; N kcommaaccent ; B 67 -225 600 718 ; -C -1 ; WX 584 ; N minus ; B 85 216 606 289 ; -C 206 ; WX 278 ; N Icircumflex ; B 91 0 452 929 ; -C -1 ; WX 556 ; N ncaron ; B 65 0 580 734 ; -C -1 ; WX 278 ; N tcommaaccent ; B 63 -225 368 669 ; -C 172 ; WX 584 ; N logicalnot ; B 106 108 628 390 ; -C 246 ; WX 556 ; N odieresis ; B 83 -14 585 706 ; -C 252 ; WX 556 ; N udieresis ; B 94 -15 600 706 ; -C -1 ; WX 549 ; N notequal ; B 34 -35 623 551 ; -C -1 ; WX 556 ; N gcommaaccent ; B 42 -220 610 822 ; -C 240 ; WX 556 ; N eth ; B 81 -15 617 737 ; -C 158 ; WX 500 ; N zcaron ; B 31 0 571 734 ; -C -1 ; WX 556 ; N ncommaaccent ; B 65 -225 573 538 ; -C 185 ; WX 333 ; N onesuperior ; B 166 281 371 703 ; -C -1 ; WX 278 ; N imacron ; B 95 0 417 684 ; -C 128 ; WX 556 ; N Euro ; B 0 0 0 0 ; -EndCharMetrics -StartKernData -StartKernPairs 2705 -KPX A C -30 -KPX A Cacute -30 -KPX A Ccaron -30 -KPX A Ccedilla -30 -KPX A G -30 -KPX A Gbreve -30 -KPX A Gcommaaccent -30 -KPX A O -30 -KPX A Oacute -30 -KPX A Ocircumflex -30 -KPX A Odieresis -30 -KPX A Ograve -30 -KPX A Ohungarumlaut -30 -KPX A Omacron -30 -KPX A Oslash -30 -KPX A Otilde -30 -KPX A Q -30 -KPX A T -120 -KPX A Tcaron -120 -KPX A Tcommaaccent -120 -KPX A U -50 -KPX A Uacute -50 -KPX A Ucircumflex -50 -KPX A Udieresis -50 -KPX A Ugrave -50 -KPX A Uhungarumlaut -50 -KPX A Umacron -50 -KPX A Uogonek -50 -KPX A Uring -50 -KPX A V -70 -KPX A W -50 -KPX A Y -100 -KPX A Yacute -100 -KPX A Ydieresis -100 -KPX A u -30 -KPX A uacute -30 -KPX A ucircumflex -30 -KPX A udieresis -30 -KPX A ugrave -30 -KPX A uhungarumlaut -30 -KPX A umacron -30 -KPX A uogonek -30 -KPX A uring -30 -KPX A v -40 -KPX A w -40 -KPX A y -40 -KPX A yacute -40 -KPX A ydieresis -40 -KPX Aacute C -30 -KPX Aacute Cacute -30 -KPX Aacute Ccaron -30 -KPX Aacute Ccedilla -30 -KPX Aacute G -30 -KPX Aacute Gbreve -30 -KPX Aacute Gcommaaccent -30 -KPX Aacute O -30 -KPX Aacute Oacute -30 -KPX Aacute Ocircumflex -30 -KPX Aacute Odieresis -30 -KPX Aacute Ograve -30 -KPX Aacute Ohungarumlaut -30 -KPX Aacute Omacron -30 -KPX Aacute Oslash -30 -KPX Aacute Otilde -30 -KPX Aacute Q -30 -KPX Aacute T -120 -KPX Aacute Tcaron -120 -KPX Aacute Tcommaaccent -120 -KPX Aacute U -50 -KPX Aacute Uacute -50 -KPX Aacute Ucircumflex -50 -KPX Aacute Udieresis -50 -KPX Aacute Ugrave -50 -KPX Aacute Uhungarumlaut -50 -KPX Aacute Umacron -50 -KPX Aacute Uogonek -50 -KPX Aacute Uring -50 -KPX Aacute V -70 -KPX Aacute W -50 -KPX Aacute Y -100 -KPX Aacute Yacute -100 -KPX Aacute Ydieresis -100 -KPX Aacute u -30 -KPX Aacute uacute -30 -KPX Aacute ucircumflex -30 -KPX Aacute udieresis -30 -KPX Aacute ugrave -30 -KPX Aacute uhungarumlaut -30 -KPX Aacute umacron -30 -KPX Aacute uogonek -30 -KPX Aacute uring -30 -KPX Aacute v -40 -KPX Aacute w -40 -KPX Aacute y -40 -KPX Aacute yacute -40 -KPX Aacute ydieresis -40 -KPX Abreve C -30 -KPX Abreve Cacute -30 -KPX Abreve Ccaron -30 -KPX Abreve Ccedilla -30 -KPX Abreve G -30 -KPX Abreve Gbreve -30 -KPX Abreve Gcommaaccent -30 -KPX Abreve O -30 -KPX Abreve Oacute -30 -KPX Abreve Ocircumflex -30 -KPX Abreve Odieresis -30 -KPX Abreve Ograve -30 -KPX Abreve Ohungarumlaut -30 -KPX Abreve Omacron -30 -KPX Abreve Oslash -30 -KPX Abreve Otilde -30 -KPX Abreve Q -30 -KPX Abreve T -120 -KPX Abreve Tcaron -120 -KPX Abreve Tcommaaccent -120 -KPX Abreve U -50 -KPX Abreve Uacute -50 -KPX Abreve Ucircumflex -50 -KPX Abreve Udieresis -50 -KPX Abreve Ugrave -50 -KPX Abreve Uhungarumlaut -50 -KPX Abreve Umacron -50 -KPX Abreve Uogonek -50 -KPX Abreve Uring -50 -KPX Abreve V -70 -KPX Abreve W -50 -KPX Abreve Y -100 -KPX Abreve Yacute -100 -KPX Abreve Ydieresis -100 -KPX Abreve u -30 -KPX Abreve uacute -30 -KPX Abreve ucircumflex -30 -KPX Abreve udieresis -30 -KPX Abreve ugrave -30 -KPX Abreve uhungarumlaut -30 -KPX Abreve umacron -30 -KPX Abreve uogonek -30 -KPX Abreve uring -30 -KPX Abreve v -40 -KPX Abreve w -40 -KPX Abreve y -40 -KPX Abreve yacute -40 -KPX Abreve ydieresis -40 -KPX Acircumflex C -30 -KPX Acircumflex Cacute -30 -KPX Acircumflex Ccaron -30 -KPX Acircumflex Ccedilla -30 -KPX Acircumflex G -30 -KPX Acircumflex Gbreve -30 -KPX Acircumflex Gcommaaccent -30 -KPX Acircumflex O -30 -KPX Acircumflex Oacute -30 -KPX Acircumflex Ocircumflex -30 -KPX Acircumflex Odieresis -30 -KPX Acircumflex Ograve -30 -KPX Acircumflex Ohungarumlaut -30 -KPX Acircumflex Omacron -30 -KPX Acircumflex Oslash -30 -KPX Acircumflex Otilde -30 -KPX Acircumflex Q -30 -KPX Acircumflex T -120 -KPX Acircumflex Tcaron -120 -KPX Acircumflex Tcommaaccent -120 -KPX Acircumflex U -50 -KPX Acircumflex Uacute -50 -KPX Acircumflex Ucircumflex -50 -KPX Acircumflex Udieresis -50 -KPX Acircumflex Ugrave -50 -KPX Acircumflex Uhungarumlaut -50 -KPX Acircumflex Umacron -50 -KPX Acircumflex Uogonek -50 -KPX Acircumflex Uring -50 -KPX Acircumflex V -70 -KPX Acircumflex W -50 -KPX Acircumflex Y -100 -KPX Acircumflex Yacute -100 -KPX Acircumflex Ydieresis -100 -KPX Acircumflex u -30 -KPX Acircumflex uacute -30 -KPX Acircumflex ucircumflex -30 -KPX Acircumflex udieresis -30 -KPX Acircumflex ugrave -30 -KPX Acircumflex uhungarumlaut -30 -KPX Acircumflex umacron -30 -KPX Acircumflex uogonek -30 -KPX Acircumflex uring -30 -KPX Acircumflex v -40 -KPX Acircumflex w -40 -KPX Acircumflex y -40 -KPX Acircumflex yacute -40 -KPX Acircumflex ydieresis -40 -KPX Adieresis C -30 -KPX Adieresis Cacute -30 -KPX Adieresis Ccaron -30 -KPX Adieresis Ccedilla -30 -KPX Adieresis G -30 -KPX Adieresis Gbreve -30 -KPX Adieresis Gcommaaccent -30 -KPX Adieresis O -30 -KPX Adieresis Oacute -30 -KPX Adieresis Ocircumflex -30 -KPX Adieresis Odieresis -30 -KPX Adieresis Ograve -30 -KPX Adieresis Ohungarumlaut -30 -KPX Adieresis Omacron -30 -KPX Adieresis Oslash -30 -KPX Adieresis Otilde -30 -KPX Adieresis Q -30 -KPX Adieresis T -120 -KPX Adieresis Tcaron -120 -KPX Adieresis Tcommaaccent -120 -KPX Adieresis U -50 -KPX Adieresis Uacute -50 -KPX Adieresis Ucircumflex -50 -KPX Adieresis Udieresis -50 -KPX Adieresis Ugrave -50 -KPX Adieresis Uhungarumlaut -50 -KPX Adieresis Umacron -50 -KPX Adieresis Uogonek -50 -KPX Adieresis Uring -50 -KPX Adieresis V -70 -KPX Adieresis W -50 -KPX Adieresis Y -100 -KPX Adieresis Yacute -100 -KPX Adieresis Ydieresis -100 -KPX Adieresis u -30 -KPX Adieresis uacute -30 -KPX Adieresis ucircumflex -30 -KPX Adieresis udieresis -30 -KPX Adieresis ugrave -30 -KPX Adieresis uhungarumlaut -30 -KPX Adieresis umacron -30 -KPX Adieresis uogonek -30 -KPX Adieresis uring -30 -KPX Adieresis v -40 -KPX Adieresis w -40 -KPX Adieresis y -40 -KPX Adieresis yacute -40 -KPX Adieresis ydieresis -40 -KPX Agrave C -30 -KPX Agrave Cacute -30 -KPX Agrave Ccaron -30 -KPX Agrave Ccedilla -30 -KPX Agrave G -30 -KPX Agrave Gbreve -30 -KPX Agrave Gcommaaccent -30 -KPX Agrave O -30 -KPX Agrave Oacute -30 -KPX Agrave Ocircumflex -30 -KPX Agrave Odieresis -30 -KPX Agrave Ograve -30 -KPX Agrave Ohungarumlaut -30 -KPX Agrave Omacron -30 -KPX Agrave Oslash -30 -KPX Agrave Otilde -30 -KPX Agrave Q -30 -KPX Agrave T -120 -KPX Agrave Tcaron -120 -KPX Agrave Tcommaaccent -120 -KPX Agrave U -50 -KPX Agrave Uacute -50 -KPX Agrave Ucircumflex -50 -KPX Agrave Udieresis -50 -KPX Agrave Ugrave -50 -KPX Agrave Uhungarumlaut -50 -KPX Agrave Umacron -50 -KPX Agrave Uogonek -50 -KPX Agrave Uring -50 -KPX Agrave V -70 -KPX Agrave W -50 -KPX Agrave Y -100 -KPX Agrave Yacute -100 -KPX Agrave Ydieresis -100 -KPX Agrave u -30 -KPX Agrave uacute -30 -KPX Agrave ucircumflex -30 -KPX Agrave udieresis -30 -KPX Agrave ugrave -30 -KPX Agrave uhungarumlaut -30 -KPX Agrave umacron -30 -KPX Agrave uogonek -30 -KPX Agrave uring -30 -KPX Agrave v -40 -KPX Agrave w -40 -KPX Agrave y -40 -KPX Agrave yacute -40 -KPX Agrave ydieresis -40 -KPX Amacron C -30 -KPX Amacron Cacute -30 -KPX Amacron Ccaron -30 -KPX Amacron Ccedilla -30 -KPX Amacron G -30 -KPX Amacron Gbreve -30 -KPX Amacron Gcommaaccent -30 -KPX Amacron O -30 -KPX Amacron Oacute -30 -KPX Amacron Ocircumflex -30 -KPX Amacron Odieresis -30 -KPX Amacron Ograve -30 -KPX Amacron Ohungarumlaut -30 -KPX Amacron Omacron -30 -KPX Amacron Oslash -30 -KPX Amacron Otilde -30 -KPX Amacron Q -30 -KPX Amacron T -120 -KPX Amacron Tcaron -120 -KPX Amacron Tcommaaccent -120 -KPX Amacron U -50 -KPX Amacron Uacute -50 -KPX Amacron Ucircumflex -50 -KPX Amacron Udieresis -50 -KPX Amacron Ugrave -50 -KPX Amacron Uhungarumlaut -50 -KPX Amacron Umacron -50 -KPX Amacron Uogonek -50 -KPX Amacron Uring -50 -KPX Amacron V -70 -KPX Amacron W -50 -KPX Amacron Y -100 -KPX Amacron Yacute -100 -KPX Amacron Ydieresis -100 -KPX Amacron u -30 -KPX Amacron uacute -30 -KPX Amacron ucircumflex -30 -KPX Amacron udieresis -30 -KPX Amacron ugrave -30 -KPX Amacron uhungarumlaut -30 -KPX Amacron umacron -30 -KPX Amacron uogonek -30 -KPX Amacron uring -30 -KPX Amacron v -40 -KPX Amacron w -40 -KPX Amacron y -40 -KPX Amacron yacute -40 -KPX Amacron ydieresis -40 -KPX Aogonek C -30 -KPX Aogonek Cacute -30 -KPX Aogonek Ccaron -30 -KPX Aogonek Ccedilla -30 -KPX Aogonek G -30 -KPX Aogonek Gbreve -30 -KPX Aogonek Gcommaaccent -30 -KPX Aogonek O -30 -KPX Aogonek Oacute -30 -KPX Aogonek Ocircumflex -30 -KPX Aogonek Odieresis -30 -KPX Aogonek Ograve -30 -KPX Aogonek Ohungarumlaut -30 -KPX Aogonek Omacron -30 -KPX Aogonek Oslash -30 -KPX Aogonek Otilde -30 -KPX Aogonek Q -30 -KPX Aogonek T -120 -KPX Aogonek Tcaron -120 -KPX Aogonek Tcommaaccent -120 -KPX Aogonek U -50 -KPX Aogonek Uacute -50 -KPX Aogonek Ucircumflex -50 -KPX Aogonek Udieresis -50 -KPX Aogonek Ugrave -50 -KPX Aogonek Uhungarumlaut -50 -KPX Aogonek Umacron -50 -KPX Aogonek Uogonek -50 -KPX Aogonek Uring -50 -KPX Aogonek V -70 -KPX Aogonek W -50 -KPX Aogonek Y -100 -KPX Aogonek Yacute -100 -KPX Aogonek Ydieresis -100 -KPX Aogonek u -30 -KPX Aogonek uacute -30 -KPX Aogonek ucircumflex -30 -KPX Aogonek udieresis -30 -KPX Aogonek ugrave -30 -KPX Aogonek uhungarumlaut -30 -KPX Aogonek umacron -30 -KPX Aogonek uogonek -30 -KPX Aogonek uring -30 -KPX Aogonek v -40 -KPX Aogonek w -40 -KPX Aogonek y -40 -KPX Aogonek yacute -40 -KPX Aogonek ydieresis -40 -KPX Aring C -30 -KPX Aring Cacute -30 -KPX Aring Ccaron -30 -KPX Aring Ccedilla -30 -KPX Aring G -30 -KPX Aring Gbreve -30 -KPX Aring Gcommaaccent -30 -KPX Aring O -30 -KPX Aring Oacute -30 -KPX Aring Ocircumflex -30 -KPX Aring Odieresis -30 -KPX Aring Ograve -30 -KPX Aring Ohungarumlaut -30 -KPX Aring Omacron -30 -KPX Aring Oslash -30 -KPX Aring Otilde -30 -KPX Aring Q -30 -KPX Aring T -120 -KPX Aring Tcaron -120 -KPX Aring Tcommaaccent -120 -KPX Aring U -50 -KPX Aring Uacute -50 -KPX Aring Ucircumflex -50 -KPX Aring Udieresis -50 -KPX Aring Ugrave -50 -KPX Aring Uhungarumlaut -50 -KPX Aring Umacron -50 -KPX Aring Uogonek -50 -KPX Aring Uring -50 -KPX Aring V -70 -KPX Aring W -50 -KPX Aring Y -100 -KPX Aring Yacute -100 -KPX Aring Ydieresis -100 -KPX Aring u -30 -KPX Aring uacute -30 -KPX Aring ucircumflex -30 -KPX Aring udieresis -30 -KPX Aring ugrave -30 -KPX Aring uhungarumlaut -30 -KPX Aring umacron -30 -KPX Aring uogonek -30 -KPX Aring uring -30 -KPX Aring v -40 -KPX Aring w -40 -KPX Aring y -40 -KPX Aring yacute -40 -KPX Aring ydieresis -40 -KPX Atilde C -30 -KPX Atilde Cacute -30 -KPX Atilde Ccaron -30 -KPX Atilde Ccedilla -30 -KPX Atilde G -30 -KPX Atilde Gbreve -30 -KPX Atilde Gcommaaccent -30 -KPX Atilde O -30 -KPX Atilde Oacute -30 -KPX Atilde Ocircumflex -30 -KPX Atilde Odieresis -30 -KPX Atilde Ograve -30 -KPX Atilde Ohungarumlaut -30 -KPX Atilde Omacron -30 -KPX Atilde Oslash -30 -KPX Atilde Otilde -30 -KPX Atilde Q -30 -KPX Atilde T -120 -KPX Atilde Tcaron -120 -KPX Atilde Tcommaaccent -120 -KPX Atilde U -50 -KPX Atilde Uacute -50 -KPX Atilde Ucircumflex -50 -KPX Atilde Udieresis -50 -KPX Atilde Ugrave -50 -KPX Atilde Uhungarumlaut -50 -KPX Atilde Umacron -50 -KPX Atilde Uogonek -50 -KPX Atilde Uring -50 -KPX Atilde V -70 -KPX Atilde W -50 -KPX Atilde Y -100 -KPX Atilde Yacute -100 -KPX Atilde Ydieresis -100 -KPX Atilde u -30 -KPX Atilde uacute -30 -KPX Atilde ucircumflex -30 -KPX Atilde udieresis -30 -KPX Atilde ugrave -30 -KPX Atilde uhungarumlaut -30 -KPX Atilde umacron -30 -KPX Atilde uogonek -30 -KPX Atilde uring -30 -KPX Atilde v -40 -KPX Atilde w -40 -KPX Atilde y -40 -KPX Atilde yacute -40 -KPX Atilde ydieresis -40 -KPX B U -10 -KPX B Uacute -10 -KPX B Ucircumflex -10 -KPX B Udieresis -10 -KPX B Ugrave -10 -KPX B Uhungarumlaut -10 -KPX B Umacron -10 -KPX B Uogonek -10 -KPX B Uring -10 -KPX B comma -20 -KPX B period -20 -KPX C comma -30 -KPX C period -30 -KPX Cacute comma -30 -KPX Cacute period -30 -KPX Ccaron comma -30 -KPX Ccaron period -30 -KPX Ccedilla comma -30 -KPX Ccedilla period -30 -KPX D A -40 -KPX D Aacute -40 -KPX D Abreve -40 -KPX D Acircumflex -40 -KPX D Adieresis -40 -KPX D Agrave -40 -KPX D Amacron -40 -KPX D Aogonek -40 -KPX D Aring -40 -KPX D Atilde -40 -KPX D V -70 -KPX D W -40 -KPX D Y -90 -KPX D Yacute -90 -KPX D Ydieresis -90 -KPX D comma -70 -KPX D period -70 -KPX Dcaron A -40 -KPX Dcaron Aacute -40 -KPX Dcaron Abreve -40 -KPX Dcaron Acircumflex -40 -KPX Dcaron Adieresis -40 -KPX Dcaron Agrave -40 -KPX Dcaron Amacron -40 -KPX Dcaron Aogonek -40 -KPX Dcaron Aring -40 -KPX Dcaron Atilde -40 -KPX Dcaron V -70 -KPX Dcaron W -40 -KPX Dcaron Y -90 -KPX Dcaron Yacute -90 -KPX Dcaron Ydieresis -90 -KPX Dcaron comma -70 -KPX Dcaron period -70 -KPX Dcroat A -40 -KPX Dcroat Aacute -40 -KPX Dcroat Abreve -40 -KPX Dcroat Acircumflex -40 -KPX Dcroat Adieresis -40 -KPX Dcroat Agrave -40 -KPX Dcroat Amacron -40 -KPX Dcroat Aogonek -40 -KPX Dcroat Aring -40 -KPX Dcroat Atilde -40 -KPX Dcroat V -70 -KPX Dcroat W -40 -KPX Dcroat Y -90 -KPX Dcroat Yacute -90 -KPX Dcroat Ydieresis -90 -KPX Dcroat comma -70 -KPX Dcroat period -70 -KPX F A -80 -KPX F Aacute -80 -KPX F Abreve -80 -KPX F Acircumflex -80 -KPX F Adieresis -80 -KPX F Agrave -80 -KPX F Amacron -80 -KPX F Aogonek -80 -KPX F Aring -80 -KPX F Atilde -80 -KPX F a -50 -KPX F aacute -50 -KPX F abreve -50 -KPX F acircumflex -50 -KPX F adieresis -50 -KPX F agrave -50 -KPX F amacron -50 -KPX F aogonek -50 -KPX F aring -50 -KPX F atilde -50 -KPX F comma -150 -KPX F e -30 -KPX F eacute -30 -KPX F ecaron -30 -KPX F ecircumflex -30 -KPX F edieresis -30 -KPX F edotaccent -30 -KPX F egrave -30 -KPX F emacron -30 -KPX F eogonek -30 -KPX F o -30 -KPX F oacute -30 -KPX F ocircumflex -30 -KPX F odieresis -30 -KPX F ograve -30 -KPX F ohungarumlaut -30 -KPX F omacron -30 -KPX F oslash -30 -KPX F otilde -30 -KPX F period -150 -KPX F r -45 -KPX F racute -45 -KPX F rcaron -45 -KPX F rcommaaccent -45 -KPX J A -20 -KPX J Aacute -20 -KPX J Abreve -20 -KPX J Acircumflex -20 -KPX J Adieresis -20 -KPX J Agrave -20 -KPX J Amacron -20 -KPX J Aogonek -20 -KPX J Aring -20 -KPX J Atilde -20 -KPX J a -20 -KPX J aacute -20 -KPX J abreve -20 -KPX J acircumflex -20 -KPX J adieresis -20 -KPX J agrave -20 -KPX J amacron -20 -KPX J aogonek -20 -KPX J aring -20 -KPX J atilde -20 -KPX J comma -30 -KPX J period -30 -KPX J u -20 -KPX J uacute -20 -KPX J ucircumflex -20 -KPX J udieresis -20 -KPX J ugrave -20 -KPX J uhungarumlaut -20 -KPX J umacron -20 -KPX J uogonek -20 -KPX J uring -20 -KPX K O -50 -KPX K Oacute -50 -KPX K Ocircumflex -50 -KPX K Odieresis -50 -KPX K Ograve -50 -KPX K Ohungarumlaut -50 -KPX K Omacron -50 -KPX K Oslash -50 -KPX K Otilde -50 -KPX K e -40 -KPX K eacute -40 -KPX K ecaron -40 -KPX K ecircumflex -40 -KPX K edieresis -40 -KPX K edotaccent -40 -KPX K egrave -40 -KPX K emacron -40 -KPX K eogonek -40 -KPX K o -40 -KPX K oacute -40 -KPX K ocircumflex -40 -KPX K odieresis -40 -KPX K ograve -40 -KPX K ohungarumlaut -40 -KPX K omacron -40 -KPX K oslash -40 -KPX K otilde -40 -KPX K u -30 -KPX K uacute -30 -KPX K ucircumflex -30 -KPX K udieresis -30 -KPX K ugrave -30 -KPX K uhungarumlaut -30 -KPX K umacron -30 -KPX K uogonek -30 -KPX K uring -30 -KPX K y -50 -KPX K yacute -50 -KPX K ydieresis -50 -KPX Kcommaaccent O -50 -KPX Kcommaaccent Oacute -50 -KPX Kcommaaccent Ocircumflex -50 -KPX Kcommaaccent Odieresis -50 -KPX Kcommaaccent Ograve -50 -KPX Kcommaaccent Ohungarumlaut -50 -KPX Kcommaaccent Omacron -50 -KPX Kcommaaccent Oslash -50 -KPX Kcommaaccent Otilde -50 -KPX Kcommaaccent e -40 -KPX Kcommaaccent eacute -40 -KPX Kcommaaccent ecaron -40 -KPX Kcommaaccent ecircumflex -40 -KPX Kcommaaccent edieresis -40 -KPX Kcommaaccent edotaccent -40 -KPX Kcommaaccent egrave -40 -KPX Kcommaaccent emacron -40 -KPX Kcommaaccent eogonek -40 -KPX Kcommaaccent o -40 -KPX Kcommaaccent oacute -40 -KPX Kcommaaccent ocircumflex -40 -KPX Kcommaaccent odieresis -40 -KPX Kcommaaccent ograve -40 -KPX Kcommaaccent ohungarumlaut -40 -KPX Kcommaaccent omacron -40 -KPX Kcommaaccent oslash -40 -KPX Kcommaaccent otilde -40 -KPX Kcommaaccent u -30 -KPX Kcommaaccent uacute -30 -KPX Kcommaaccent ucircumflex -30 -KPX Kcommaaccent udieresis -30 -KPX Kcommaaccent ugrave -30 -KPX Kcommaaccent uhungarumlaut -30 -KPX Kcommaaccent umacron -30 -KPX Kcommaaccent uogonek -30 -KPX Kcommaaccent uring -30 -KPX Kcommaaccent y -50 -KPX Kcommaaccent yacute -50 -KPX Kcommaaccent ydieresis -50 -KPX L T -110 -KPX L Tcaron -110 -KPX L Tcommaaccent -110 -KPX L V -110 -KPX L W -70 -KPX L Y -140 -KPX L Yacute -140 -KPX L Ydieresis -140 -KPX L quotedblright -140 -KPX L quoteright -160 -KPX L y -30 -KPX L yacute -30 -KPX L ydieresis -30 -KPX Lacute T -110 -KPX Lacute Tcaron -110 -KPX Lacute Tcommaaccent -110 -KPX Lacute V -110 -KPX Lacute W -70 -KPX Lacute Y -140 -KPX Lacute Yacute -140 -KPX Lacute Ydieresis -140 -KPX Lacute quotedblright -140 -KPX Lacute quoteright -160 -KPX Lacute y -30 -KPX Lacute yacute -30 -KPX Lacute ydieresis -30 -KPX Lcaron T -110 -KPX Lcaron Tcaron -110 -KPX Lcaron Tcommaaccent -110 -KPX Lcaron V -110 -KPX Lcaron W -70 -KPX Lcaron Y -140 -KPX Lcaron Yacute -140 -KPX Lcaron Ydieresis -140 -KPX Lcaron quotedblright -140 -KPX Lcaron quoteright -160 -KPX Lcaron y -30 -KPX Lcaron yacute -30 -KPX Lcaron ydieresis -30 -KPX Lcommaaccent T -110 -KPX Lcommaaccent Tcaron -110 -KPX Lcommaaccent Tcommaaccent -110 -KPX Lcommaaccent V -110 -KPX Lcommaaccent W -70 -KPX Lcommaaccent Y -140 -KPX Lcommaaccent Yacute -140 -KPX Lcommaaccent Ydieresis -140 -KPX Lcommaaccent quotedblright -140 -KPX Lcommaaccent quoteright -160 -KPX Lcommaaccent y -30 -KPX Lcommaaccent yacute -30 -KPX Lcommaaccent ydieresis -30 -KPX Lslash T -110 -KPX Lslash Tcaron -110 -KPX Lslash Tcommaaccent -110 -KPX Lslash V -110 -KPX Lslash W -70 -KPX Lslash Y -140 -KPX Lslash Yacute -140 -KPX Lslash Ydieresis -140 -KPX Lslash quotedblright -140 -KPX Lslash quoteright -160 -KPX Lslash y -30 -KPX Lslash yacute -30 -KPX Lslash ydieresis -30 -KPX O A -20 -KPX O Aacute -20 -KPX O Abreve -20 -KPX O Acircumflex -20 -KPX O Adieresis -20 -KPX O Agrave -20 -KPX O Amacron -20 -KPX O Aogonek -20 -KPX O Aring -20 -KPX O Atilde -20 -KPX O T -40 -KPX O Tcaron -40 -KPX O Tcommaaccent -40 -KPX O V -50 -KPX O W -30 -KPX O X -60 -KPX O Y -70 -KPX O Yacute -70 -KPX O Ydieresis -70 -KPX O comma -40 -KPX O period -40 -KPX Oacute A -20 -KPX Oacute Aacute -20 -KPX Oacute Abreve -20 -KPX Oacute Acircumflex -20 -KPX Oacute Adieresis -20 -KPX Oacute Agrave -20 -KPX Oacute Amacron -20 -KPX Oacute Aogonek -20 -KPX Oacute Aring -20 -KPX Oacute Atilde -20 -KPX Oacute T -40 -KPX Oacute Tcaron -40 -KPX Oacute Tcommaaccent -40 -KPX Oacute V -50 -KPX Oacute W -30 -KPX Oacute X -60 -KPX Oacute Y -70 -KPX Oacute Yacute -70 -KPX Oacute Ydieresis -70 -KPX Oacute comma -40 -KPX Oacute period -40 -KPX Ocircumflex A -20 -KPX Ocircumflex Aacute -20 -KPX Ocircumflex Abreve -20 -KPX Ocircumflex Acircumflex -20 -KPX Ocircumflex Adieresis -20 -KPX Ocircumflex Agrave -20 -KPX Ocircumflex Amacron -20 -KPX Ocircumflex Aogonek -20 -KPX Ocircumflex Aring -20 -KPX Ocircumflex Atilde -20 -KPX Ocircumflex T -40 -KPX Ocircumflex Tcaron -40 -KPX Ocircumflex Tcommaaccent -40 -KPX Ocircumflex V -50 -KPX Ocircumflex W -30 -KPX Ocircumflex X -60 -KPX Ocircumflex Y -70 -KPX Ocircumflex Yacute -70 -KPX Ocircumflex Ydieresis -70 -KPX Ocircumflex comma -40 -KPX Ocircumflex period -40 -KPX Odieresis A -20 -KPX Odieresis Aacute -20 -KPX Odieresis Abreve -20 -KPX Odieresis Acircumflex -20 -KPX Odieresis Adieresis -20 -KPX Odieresis Agrave -20 -KPX Odieresis Amacron -20 -KPX Odieresis Aogonek -20 -KPX Odieresis Aring -20 -KPX Odieresis Atilde -20 -KPX Odieresis T -40 -KPX Odieresis Tcaron -40 -KPX Odieresis Tcommaaccent -40 -KPX Odieresis V -50 -KPX Odieresis W -30 -KPX Odieresis X -60 -KPX Odieresis Y -70 -KPX Odieresis Yacute -70 -KPX Odieresis Ydieresis -70 -KPX Odieresis comma -40 -KPX Odieresis period -40 -KPX Ograve A -20 -KPX Ograve Aacute -20 -KPX Ograve Abreve -20 -KPX Ograve Acircumflex -20 -KPX Ograve Adieresis -20 -KPX Ograve Agrave -20 -KPX Ograve Amacron -20 -KPX Ograve Aogonek -20 -KPX Ograve Aring -20 -KPX Ograve Atilde -20 -KPX Ograve T -40 -KPX Ograve Tcaron -40 -KPX Ograve Tcommaaccent -40 -KPX Ograve V -50 -KPX Ograve W -30 -KPX Ograve X -60 -KPX Ograve Y -70 -KPX Ograve Yacute -70 -KPX Ograve Ydieresis -70 -KPX Ograve comma -40 -KPX Ograve period -40 -KPX Ohungarumlaut A -20 -KPX Ohungarumlaut Aacute -20 -KPX Ohungarumlaut Abreve -20 -KPX Ohungarumlaut Acircumflex -20 -KPX Ohungarumlaut Adieresis -20 -KPX Ohungarumlaut Agrave -20 -KPX Ohungarumlaut Amacron -20 -KPX Ohungarumlaut Aogonek -20 -KPX Ohungarumlaut Aring -20 -KPX Ohungarumlaut Atilde -20 -KPX Ohungarumlaut T -40 -KPX Ohungarumlaut Tcaron -40 -KPX Ohungarumlaut Tcommaaccent -40 -KPX Ohungarumlaut V -50 -KPX Ohungarumlaut W -30 -KPX Ohungarumlaut X -60 -KPX Ohungarumlaut Y -70 -KPX Ohungarumlaut Yacute -70 -KPX Ohungarumlaut Ydieresis -70 -KPX Ohungarumlaut comma -40 -KPX Ohungarumlaut period -40 -KPX Omacron A -20 -KPX Omacron Aacute -20 -KPX Omacron Abreve -20 -KPX Omacron Acircumflex -20 -KPX Omacron Adieresis -20 -KPX Omacron Agrave -20 -KPX Omacron Amacron -20 -KPX Omacron Aogonek -20 -KPX Omacron Aring -20 -KPX Omacron Atilde -20 -KPX Omacron T -40 -KPX Omacron Tcaron -40 -KPX Omacron Tcommaaccent -40 -KPX Omacron V -50 -KPX Omacron W -30 -KPX Omacron X -60 -KPX Omacron Y -70 -KPX Omacron Yacute -70 -KPX Omacron Ydieresis -70 -KPX Omacron comma -40 -KPX Omacron period -40 -KPX Oslash A -20 -KPX Oslash Aacute -20 -KPX Oslash Abreve -20 -KPX Oslash Acircumflex -20 -KPX Oslash Adieresis -20 -KPX Oslash Agrave -20 -KPX Oslash Amacron -20 -KPX Oslash Aogonek -20 -KPX Oslash Aring -20 -KPX Oslash Atilde -20 -KPX Oslash T -40 -KPX Oslash Tcaron -40 -KPX Oslash Tcommaaccent -40 -KPX Oslash V -50 -KPX Oslash W -30 -KPX Oslash X -60 -KPX Oslash Y -70 -KPX Oslash Yacute -70 -KPX Oslash Ydieresis -70 -KPX Oslash comma -40 -KPX Oslash period -40 -KPX Otilde A -20 -KPX Otilde Aacute -20 -KPX Otilde Abreve -20 -KPX Otilde Acircumflex -20 -KPX Otilde Adieresis -20 -KPX Otilde Agrave -20 -KPX Otilde Amacron -20 -KPX Otilde Aogonek -20 -KPX Otilde Aring -20 -KPX Otilde Atilde -20 -KPX Otilde T -40 -KPX Otilde Tcaron -40 -KPX Otilde Tcommaaccent -40 -KPX Otilde V -50 -KPX Otilde W -30 -KPX Otilde X -60 -KPX Otilde Y -70 -KPX Otilde Yacute -70 -KPX Otilde Ydieresis -70 -KPX Otilde comma -40 -KPX Otilde period -40 -KPX P A -120 -KPX P Aacute -120 -KPX P Abreve -120 -KPX P Acircumflex -120 -KPX P Adieresis -120 -KPX P Agrave -120 -KPX P Amacron -120 -KPX P Aogonek -120 -KPX P Aring -120 -KPX P Atilde -120 -KPX P a -40 -KPX P aacute -40 -KPX P abreve -40 -KPX P acircumflex -40 -KPX P adieresis -40 -KPX P agrave -40 -KPX P amacron -40 -KPX P aogonek -40 -KPX P aring -40 -KPX P atilde -40 -KPX P comma -180 -KPX P e -50 -KPX P eacute -50 -KPX P ecaron -50 -KPX P ecircumflex -50 -KPX P edieresis -50 -KPX P edotaccent -50 -KPX P egrave -50 -KPX P emacron -50 -KPX P eogonek -50 -KPX P o -50 -KPX P oacute -50 -KPX P ocircumflex -50 -KPX P odieresis -50 -KPX P ograve -50 -KPX P ohungarumlaut -50 -KPX P omacron -50 -KPX P oslash -50 -KPX P otilde -50 -KPX P period -180 -KPX Q U -10 -KPX Q Uacute -10 -KPX Q Ucircumflex -10 -KPX Q Udieresis -10 -KPX Q Ugrave -10 -KPX Q Uhungarumlaut -10 -KPX Q Umacron -10 -KPX Q Uogonek -10 -KPX Q Uring -10 -KPX R O -20 -KPX R Oacute -20 -KPX R Ocircumflex -20 -KPX R Odieresis -20 -KPX R Ograve -20 -KPX R Ohungarumlaut -20 -KPX R Omacron -20 -KPX R Oslash -20 -KPX R Otilde -20 -KPX R T -30 -KPX R Tcaron -30 -KPX R Tcommaaccent -30 -KPX R U -40 -KPX R Uacute -40 -KPX R Ucircumflex -40 -KPX R Udieresis -40 -KPX R Ugrave -40 -KPX R Uhungarumlaut -40 -KPX R Umacron -40 -KPX R Uogonek -40 -KPX R Uring -40 -KPX R V -50 -KPX R W -30 -KPX R Y -50 -KPX R Yacute -50 -KPX R Ydieresis -50 -KPX Racute O -20 -KPX Racute Oacute -20 -KPX Racute Ocircumflex -20 -KPX Racute Odieresis -20 -KPX Racute Ograve -20 -KPX Racute Ohungarumlaut -20 -KPX Racute Omacron -20 -KPX Racute Oslash -20 -KPX Racute Otilde -20 -KPX Racute T -30 -KPX Racute Tcaron -30 -KPX Racute Tcommaaccent -30 -KPX Racute U -40 -KPX Racute Uacute -40 -KPX Racute Ucircumflex -40 -KPX Racute Udieresis -40 -KPX Racute Ugrave -40 -KPX Racute Uhungarumlaut -40 -KPX Racute Umacron -40 -KPX Racute Uogonek -40 -KPX Racute Uring -40 -KPX Racute V -50 -KPX Racute W -30 -KPX Racute Y -50 -KPX Racute Yacute -50 -KPX Racute Ydieresis -50 -KPX Rcaron O -20 -KPX Rcaron Oacute -20 -KPX Rcaron Ocircumflex -20 -KPX Rcaron Odieresis -20 -KPX Rcaron Ograve -20 -KPX Rcaron Ohungarumlaut -20 -KPX Rcaron Omacron -20 -KPX Rcaron Oslash -20 -KPX Rcaron Otilde -20 -KPX Rcaron T -30 -KPX Rcaron Tcaron -30 -KPX Rcaron Tcommaaccent -30 -KPX Rcaron U -40 -KPX Rcaron Uacute -40 -KPX Rcaron Ucircumflex -40 -KPX Rcaron Udieresis -40 -KPX Rcaron Ugrave -40 -KPX Rcaron Uhungarumlaut -40 -KPX Rcaron Umacron -40 -KPX Rcaron Uogonek -40 -KPX Rcaron Uring -40 -KPX Rcaron V -50 -KPX Rcaron W -30 -KPX Rcaron Y -50 -KPX Rcaron Yacute -50 -KPX Rcaron Ydieresis -50 -KPX Rcommaaccent O -20 -KPX Rcommaaccent Oacute -20 -KPX Rcommaaccent Ocircumflex -20 -KPX Rcommaaccent Odieresis -20 -KPX Rcommaaccent Ograve -20 -KPX Rcommaaccent Ohungarumlaut -20 -KPX Rcommaaccent Omacron -20 -KPX Rcommaaccent Oslash -20 -KPX Rcommaaccent Otilde -20 -KPX Rcommaaccent T -30 -KPX Rcommaaccent Tcaron -30 -KPX Rcommaaccent Tcommaaccent -30 -KPX Rcommaaccent U -40 -KPX Rcommaaccent Uacute -40 -KPX Rcommaaccent Ucircumflex -40 -KPX Rcommaaccent Udieresis -40 -KPX Rcommaaccent Ugrave -40 -KPX Rcommaaccent Uhungarumlaut -40 -KPX Rcommaaccent Umacron -40 -KPX Rcommaaccent Uogonek -40 -KPX Rcommaaccent Uring -40 -KPX Rcommaaccent V -50 -KPX Rcommaaccent W -30 -KPX Rcommaaccent Y -50 -KPX Rcommaaccent Yacute -50 -KPX Rcommaaccent Ydieresis -50 -KPX S comma -20 -KPX S period -20 -KPX Sacute comma -20 -KPX Sacute period -20 -KPX Scaron comma -20 -KPX Scaron period -20 -KPX Scedilla comma -20 -KPX Scedilla period -20 -KPX Scommaaccent comma -20 -KPX Scommaaccent period -20 -KPX T A -120 -KPX T Aacute -120 -KPX T Abreve -120 -KPX T Acircumflex -120 -KPX T Adieresis -120 -KPX T Agrave -120 -KPX T Amacron -120 -KPX T Aogonek -120 -KPX T Aring -120 -KPX T Atilde -120 -KPX T O -40 -KPX T Oacute -40 -KPX T Ocircumflex -40 -KPX T Odieresis -40 -KPX T Ograve -40 -KPX T Ohungarumlaut -40 -KPX T Omacron -40 -KPX T Oslash -40 -KPX T Otilde -40 -KPX T a -120 -KPX T aacute -120 -KPX T abreve -60 -KPX T acircumflex -120 -KPX T adieresis -120 -KPX T agrave -120 -KPX T amacron -60 -KPX T aogonek -120 -KPX T aring -120 -KPX T atilde -60 -KPX T colon -20 -KPX T comma -120 -KPX T e -120 -KPX T eacute -120 -KPX T ecaron -120 -KPX T ecircumflex -120 -KPX T edieresis -120 -KPX T edotaccent -120 -KPX T egrave -60 -KPX T emacron -60 -KPX T eogonek -120 -KPX T hyphen -140 -KPX T o -120 -KPX T oacute -120 -KPX T ocircumflex -120 -KPX T odieresis -120 -KPX T ograve -120 -KPX T ohungarumlaut -120 -KPX T omacron -60 -KPX T oslash -120 -KPX T otilde -60 -KPX T period -120 -KPX T r -120 -KPX T racute -120 -KPX T rcaron -120 -KPX T rcommaaccent -120 -KPX T semicolon -20 -KPX T u -120 -KPX T uacute -120 -KPX T ucircumflex -120 -KPX T udieresis -120 -KPX T ugrave -120 -KPX T uhungarumlaut -120 -KPX T umacron -60 -KPX T uogonek -120 -KPX T uring -120 -KPX T w -120 -KPX T y -120 -KPX T yacute -120 -KPX T ydieresis -60 -KPX Tcaron A -120 -KPX Tcaron Aacute -120 -KPX Tcaron Abreve -120 -KPX Tcaron Acircumflex -120 -KPX Tcaron Adieresis -120 -KPX Tcaron Agrave -120 -KPX Tcaron Amacron -120 -KPX Tcaron Aogonek -120 -KPX Tcaron Aring -120 -KPX Tcaron Atilde -120 -KPX Tcaron O -40 -KPX Tcaron Oacute -40 -KPX Tcaron Ocircumflex -40 -KPX Tcaron Odieresis -40 -KPX Tcaron Ograve -40 -KPX Tcaron Ohungarumlaut -40 -KPX Tcaron Omacron -40 -KPX Tcaron Oslash -40 -KPX Tcaron Otilde -40 -KPX Tcaron a -120 -KPX Tcaron aacute -120 -KPX Tcaron abreve -60 -KPX Tcaron acircumflex -120 -KPX Tcaron adieresis -120 -KPX Tcaron agrave -120 -KPX Tcaron amacron -60 -KPX Tcaron aogonek -120 -KPX Tcaron aring -120 -KPX Tcaron atilde -60 -KPX Tcaron colon -20 -KPX Tcaron comma -120 -KPX Tcaron e -120 -KPX Tcaron eacute -120 -KPX Tcaron ecaron -120 -KPX Tcaron ecircumflex -120 -KPX Tcaron edieresis -120 -KPX Tcaron edotaccent -120 -KPX Tcaron egrave -60 -KPX Tcaron emacron -60 -KPX Tcaron eogonek -120 -KPX Tcaron hyphen -140 -KPX Tcaron o -120 -KPX Tcaron oacute -120 -KPX Tcaron ocircumflex -120 -KPX Tcaron odieresis -120 -KPX Tcaron ograve -120 -KPX Tcaron ohungarumlaut -120 -KPX Tcaron omacron -60 -KPX Tcaron oslash -120 -KPX Tcaron otilde -60 -KPX Tcaron period -120 -KPX Tcaron r -120 -KPX Tcaron racute -120 -KPX Tcaron rcaron -120 -KPX Tcaron rcommaaccent -120 -KPX Tcaron semicolon -20 -KPX Tcaron u -120 -KPX Tcaron uacute -120 -KPX Tcaron ucircumflex -120 -KPX Tcaron udieresis -120 -KPX Tcaron ugrave -120 -KPX Tcaron uhungarumlaut -120 -KPX Tcaron umacron -60 -KPX Tcaron uogonek -120 -KPX Tcaron uring -120 -KPX Tcaron w -120 -KPX Tcaron y -120 -KPX Tcaron yacute -120 -KPX Tcaron ydieresis -60 -KPX Tcommaaccent A -120 -KPX Tcommaaccent Aacute -120 -KPX Tcommaaccent Abreve -120 -KPX Tcommaaccent Acircumflex -120 -KPX Tcommaaccent Adieresis -120 -KPX Tcommaaccent Agrave -120 -KPX Tcommaaccent Amacron -120 -KPX Tcommaaccent Aogonek -120 -KPX Tcommaaccent Aring -120 -KPX Tcommaaccent Atilde -120 -KPX Tcommaaccent O -40 -KPX Tcommaaccent Oacute -40 -KPX Tcommaaccent Ocircumflex -40 -KPX Tcommaaccent Odieresis -40 -KPX Tcommaaccent Ograve -40 -KPX Tcommaaccent Ohungarumlaut -40 -KPX Tcommaaccent Omacron -40 -KPX Tcommaaccent Oslash -40 -KPX Tcommaaccent Otilde -40 -KPX Tcommaaccent a -120 -KPX Tcommaaccent aacute -120 -KPX Tcommaaccent abreve -60 -KPX Tcommaaccent acircumflex -120 -KPX Tcommaaccent adieresis -120 -KPX Tcommaaccent agrave -120 -KPX Tcommaaccent amacron -60 -KPX Tcommaaccent aogonek -120 -KPX Tcommaaccent aring -120 -KPX Tcommaaccent atilde -60 -KPX Tcommaaccent colon -20 -KPX Tcommaaccent comma -120 -KPX Tcommaaccent e -120 -KPX Tcommaaccent eacute -120 -KPX Tcommaaccent ecaron -120 -KPX Tcommaaccent ecircumflex -120 -KPX Tcommaaccent edieresis -120 -KPX Tcommaaccent edotaccent -120 -KPX Tcommaaccent egrave -60 -KPX Tcommaaccent emacron -60 -KPX Tcommaaccent eogonek -120 -KPX Tcommaaccent hyphen -140 -KPX Tcommaaccent o -120 -KPX Tcommaaccent oacute -120 -KPX Tcommaaccent ocircumflex -120 -KPX Tcommaaccent odieresis -120 -KPX Tcommaaccent ograve -120 -KPX Tcommaaccent ohungarumlaut -120 -KPX Tcommaaccent omacron -60 -KPX Tcommaaccent oslash -120 -KPX Tcommaaccent otilde -60 -KPX Tcommaaccent period -120 -KPX Tcommaaccent r -120 -KPX Tcommaaccent racute -120 -KPX Tcommaaccent rcaron -120 -KPX Tcommaaccent rcommaaccent -120 -KPX Tcommaaccent semicolon -20 -KPX Tcommaaccent u -120 -KPX Tcommaaccent uacute -120 -KPX Tcommaaccent ucircumflex -120 -KPX Tcommaaccent udieresis -120 -KPX Tcommaaccent ugrave -120 -KPX Tcommaaccent uhungarumlaut -120 -KPX Tcommaaccent umacron -60 -KPX Tcommaaccent uogonek -120 -KPX Tcommaaccent uring -120 -KPX Tcommaaccent w -120 -KPX Tcommaaccent y -120 -KPX Tcommaaccent yacute -120 -KPX Tcommaaccent ydieresis -60 -KPX U A -40 -KPX U Aacute -40 -KPX U Abreve -40 -KPX U Acircumflex -40 -KPX U Adieresis -40 -KPX U Agrave -40 -KPX U Amacron -40 -KPX U Aogonek -40 -KPX U Aring -40 -KPX U Atilde -40 -KPX U comma -40 -KPX U period -40 -KPX Uacute A -40 -KPX Uacute Aacute -40 -KPX Uacute Abreve -40 -KPX Uacute Acircumflex -40 -KPX Uacute Adieresis -40 -KPX Uacute Agrave -40 -KPX Uacute Amacron -40 -KPX Uacute Aogonek -40 -KPX Uacute Aring -40 -KPX Uacute Atilde -40 -KPX Uacute comma -40 -KPX Uacute period -40 -KPX Ucircumflex A -40 -KPX Ucircumflex Aacute -40 -KPX Ucircumflex Abreve -40 -KPX Ucircumflex Acircumflex -40 -KPX Ucircumflex Adieresis -40 -KPX Ucircumflex Agrave -40 -KPX Ucircumflex Amacron -40 -KPX Ucircumflex Aogonek -40 -KPX Ucircumflex Aring -40 -KPX Ucircumflex Atilde -40 -KPX Ucircumflex comma -40 -KPX Ucircumflex period -40 -KPX Udieresis A -40 -KPX Udieresis Aacute -40 -KPX Udieresis Abreve -40 -KPX Udieresis Acircumflex -40 -KPX Udieresis Adieresis -40 -KPX Udieresis Agrave -40 -KPX Udieresis Amacron -40 -KPX Udieresis Aogonek -40 -KPX Udieresis Aring -40 -KPX Udieresis Atilde -40 -KPX Udieresis comma -40 -KPX Udieresis period -40 -KPX Ugrave A -40 -KPX Ugrave Aacute -40 -KPX Ugrave Abreve -40 -KPX Ugrave Acircumflex -40 -KPX Ugrave Adieresis -40 -KPX Ugrave Agrave -40 -KPX Ugrave Amacron -40 -KPX Ugrave Aogonek -40 -KPX Ugrave Aring -40 -KPX Ugrave Atilde -40 -KPX Ugrave comma -40 -KPX Ugrave period -40 -KPX Uhungarumlaut A -40 -KPX Uhungarumlaut Aacute -40 -KPX Uhungarumlaut Abreve -40 -KPX Uhungarumlaut Acircumflex -40 -KPX Uhungarumlaut Adieresis -40 -KPX Uhungarumlaut Agrave -40 -KPX Uhungarumlaut Amacron -40 -KPX Uhungarumlaut Aogonek -40 -KPX Uhungarumlaut Aring -40 -KPX Uhungarumlaut Atilde -40 -KPX Uhungarumlaut comma -40 -KPX Uhungarumlaut period -40 -KPX Umacron A -40 -KPX Umacron Aacute -40 -KPX Umacron Abreve -40 -KPX Umacron Acircumflex -40 -KPX Umacron Adieresis -40 -KPX Umacron Agrave -40 -KPX Umacron Amacron -40 -KPX Umacron Aogonek -40 -KPX Umacron Aring -40 -KPX Umacron Atilde -40 -KPX Umacron comma -40 -KPX Umacron period -40 -KPX Uogonek A -40 -KPX Uogonek Aacute -40 -KPX Uogonek Abreve -40 -KPX Uogonek Acircumflex -40 -KPX Uogonek Adieresis -40 -KPX Uogonek Agrave -40 -KPX Uogonek Amacron -40 -KPX Uogonek Aogonek -40 -KPX Uogonek Aring -40 -KPX Uogonek Atilde -40 -KPX Uogonek comma -40 -KPX Uogonek period -40 -KPX Uring A -40 -KPX Uring Aacute -40 -KPX Uring Abreve -40 -KPX Uring Acircumflex -40 -KPX Uring Adieresis -40 -KPX Uring Agrave -40 -KPX Uring Amacron -40 -KPX Uring Aogonek -40 -KPX Uring Aring -40 -KPX Uring Atilde -40 -KPX Uring comma -40 -KPX Uring period -40 -KPX V A -80 -KPX V Aacute -80 -KPX V Abreve -80 -KPX V Acircumflex -80 -KPX V Adieresis -80 -KPX V Agrave -80 -KPX V Amacron -80 -KPX V Aogonek -80 -KPX V Aring -80 -KPX V Atilde -80 -KPX V G -40 -KPX V Gbreve -40 -KPX V Gcommaaccent -40 -KPX V O -40 -KPX V Oacute -40 -KPX V Ocircumflex -40 -KPX V Odieresis -40 -KPX V Ograve -40 -KPX V Ohungarumlaut -40 -KPX V Omacron -40 -KPX V Oslash -40 -KPX V Otilde -40 -KPX V a -70 -KPX V aacute -70 -KPX V abreve -70 -KPX V acircumflex -70 -KPX V adieresis -70 -KPX V agrave -70 -KPX V amacron -70 -KPX V aogonek -70 -KPX V aring -70 -KPX V atilde -70 -KPX V colon -40 -KPX V comma -125 -KPX V e -80 -KPX V eacute -80 -KPX V ecaron -80 -KPX V ecircumflex -80 -KPX V edieresis -80 -KPX V edotaccent -80 -KPX V egrave -80 -KPX V emacron -80 -KPX V eogonek -80 -KPX V hyphen -80 -KPX V o -80 -KPX V oacute -80 -KPX V ocircumflex -80 -KPX V odieresis -80 -KPX V ograve -80 -KPX V ohungarumlaut -80 -KPX V omacron -80 -KPX V oslash -80 -KPX V otilde -80 -KPX V period -125 -KPX V semicolon -40 -KPX V u -70 -KPX V uacute -70 -KPX V ucircumflex -70 -KPX V udieresis -70 -KPX V ugrave -70 -KPX V uhungarumlaut -70 -KPX V umacron -70 -KPX V uogonek -70 -KPX V uring -70 -KPX W A -50 -KPX W Aacute -50 -KPX W Abreve -50 -KPX W Acircumflex -50 -KPX W Adieresis -50 -KPX W Agrave -50 -KPX W Amacron -50 -KPX W Aogonek -50 -KPX W Aring -50 -KPX W Atilde -50 -KPX W O -20 -KPX W Oacute -20 -KPX W Ocircumflex -20 -KPX W Odieresis -20 -KPX W Ograve -20 -KPX W Ohungarumlaut -20 -KPX W Omacron -20 -KPX W Oslash -20 -KPX W Otilde -20 -KPX W a -40 -KPX W aacute -40 -KPX W abreve -40 -KPX W acircumflex -40 -KPX W adieresis -40 -KPX W agrave -40 -KPX W amacron -40 -KPX W aogonek -40 -KPX W aring -40 -KPX W atilde -40 -KPX W comma -80 -KPX W e -30 -KPX W eacute -30 -KPX W ecaron -30 -KPX W ecircumflex -30 -KPX W edieresis -30 -KPX W edotaccent -30 -KPX W egrave -30 -KPX W emacron -30 -KPX W eogonek -30 -KPX W hyphen -40 -KPX W o -30 -KPX W oacute -30 -KPX W ocircumflex -30 -KPX W odieresis -30 -KPX W ograve -30 -KPX W ohungarumlaut -30 -KPX W omacron -30 -KPX W oslash -30 -KPX W otilde -30 -KPX W period -80 -KPX W u -30 -KPX W uacute -30 -KPX W ucircumflex -30 -KPX W udieresis -30 -KPX W ugrave -30 -KPX W uhungarumlaut -30 -KPX W umacron -30 -KPX W uogonek -30 -KPX W uring -30 -KPX W y -20 -KPX W yacute -20 -KPX W ydieresis -20 -KPX Y A -110 -KPX Y Aacute -110 -KPX Y Abreve -110 -KPX Y Acircumflex -110 -KPX Y Adieresis -110 -KPX Y Agrave -110 -KPX Y Amacron -110 -KPX Y Aogonek -110 -KPX Y Aring -110 -KPX Y Atilde -110 -KPX Y O -85 -KPX Y Oacute -85 -KPX Y Ocircumflex -85 -KPX Y Odieresis -85 -KPX Y Ograve -85 -KPX Y Ohungarumlaut -85 -KPX Y Omacron -85 -KPX Y Oslash -85 -KPX Y Otilde -85 -KPX Y a -140 -KPX Y aacute -140 -KPX Y abreve -70 -KPX Y acircumflex -140 -KPX Y adieresis -140 -KPX Y agrave -140 -KPX Y amacron -70 -KPX Y aogonek -140 -KPX Y aring -140 -KPX Y atilde -140 -KPX Y colon -60 -KPX Y comma -140 -KPX Y e -140 -KPX Y eacute -140 -KPX Y ecaron -140 -KPX Y ecircumflex -140 -KPX Y edieresis -140 -KPX Y edotaccent -140 -KPX Y egrave -140 -KPX Y emacron -70 -KPX Y eogonek -140 -KPX Y hyphen -140 -KPX Y i -20 -KPX Y iacute -20 -KPX Y iogonek -20 -KPX Y o -140 -KPX Y oacute -140 -KPX Y ocircumflex -140 -KPX Y odieresis -140 -KPX Y ograve -140 -KPX Y ohungarumlaut -140 -KPX Y omacron -140 -KPX Y oslash -140 -KPX Y otilde -140 -KPX Y period -140 -KPX Y semicolon -60 -KPX Y u -110 -KPX Y uacute -110 -KPX Y ucircumflex -110 -KPX Y udieresis -110 -KPX Y ugrave -110 -KPX Y uhungarumlaut -110 -KPX Y umacron -110 -KPX Y uogonek -110 -KPX Y uring -110 -KPX Yacute A -110 -KPX Yacute Aacute -110 -KPX Yacute Abreve -110 -KPX Yacute Acircumflex -110 -KPX Yacute Adieresis -110 -KPX Yacute Agrave -110 -KPX Yacute Amacron -110 -KPX Yacute Aogonek -110 -KPX Yacute Aring -110 -KPX Yacute Atilde -110 -KPX Yacute O -85 -KPX Yacute Oacute -85 -KPX Yacute Ocircumflex -85 -KPX Yacute Odieresis -85 -KPX Yacute Ograve -85 -KPX Yacute Ohungarumlaut -85 -KPX Yacute Omacron -85 -KPX Yacute Oslash -85 -KPX Yacute Otilde -85 -KPX Yacute a -140 -KPX Yacute aacute -140 -KPX Yacute abreve -70 -KPX Yacute acircumflex -140 -KPX Yacute adieresis -140 -KPX Yacute agrave -140 -KPX Yacute amacron -70 -KPX Yacute aogonek -140 -KPX Yacute aring -140 -KPX Yacute atilde -70 -KPX Yacute colon -60 -KPX Yacute comma -140 -KPX Yacute e -140 -KPX Yacute eacute -140 -KPX Yacute ecaron -140 -KPX Yacute ecircumflex -140 -KPX Yacute edieresis -140 -KPX Yacute edotaccent -140 -KPX Yacute egrave -140 -KPX Yacute emacron -70 -KPX Yacute eogonek -140 -KPX Yacute hyphen -140 -KPX Yacute i -20 -KPX Yacute iacute -20 -KPX Yacute iogonek -20 -KPX Yacute o -140 -KPX Yacute oacute -140 -KPX Yacute ocircumflex -140 -KPX Yacute odieresis -140 -KPX Yacute ograve -140 -KPX Yacute ohungarumlaut -140 -KPX Yacute omacron -70 -KPX Yacute oslash -140 -KPX Yacute otilde -140 -KPX Yacute period -140 -KPX Yacute semicolon -60 -KPX Yacute u -110 -KPX Yacute uacute -110 -KPX Yacute ucircumflex -110 -KPX Yacute udieresis -110 -KPX Yacute ugrave -110 -KPX Yacute uhungarumlaut -110 -KPX Yacute umacron -110 -KPX Yacute uogonek -110 -KPX Yacute uring -110 -KPX Ydieresis A -110 -KPX Ydieresis Aacute -110 -KPX Ydieresis Abreve -110 -KPX Ydieresis Acircumflex -110 -KPX Ydieresis Adieresis -110 -KPX Ydieresis Agrave -110 -KPX Ydieresis Amacron -110 -KPX Ydieresis Aogonek -110 -KPX Ydieresis Aring -110 -KPX Ydieresis Atilde -110 -KPX Ydieresis O -85 -KPX Ydieresis Oacute -85 -KPX Ydieresis Ocircumflex -85 -KPX Ydieresis Odieresis -85 -KPX Ydieresis Ograve -85 -KPX Ydieresis Ohungarumlaut -85 -KPX Ydieresis Omacron -85 -KPX Ydieresis Oslash -85 -KPX Ydieresis Otilde -85 -KPX Ydieresis a -140 -KPX Ydieresis aacute -140 -KPX Ydieresis abreve -70 -KPX Ydieresis acircumflex -140 -KPX Ydieresis adieresis -140 -KPX Ydieresis agrave -140 -KPX Ydieresis amacron -70 -KPX Ydieresis aogonek -140 -KPX Ydieresis aring -140 -KPX Ydieresis atilde -70 -KPX Ydieresis colon -60 -KPX Ydieresis comma -140 -KPX Ydieresis e -140 -KPX Ydieresis eacute -140 -KPX Ydieresis ecaron -140 -KPX Ydieresis ecircumflex -140 -KPX Ydieresis edieresis -140 -KPX Ydieresis edotaccent -140 -KPX Ydieresis egrave -140 -KPX Ydieresis emacron -70 -KPX Ydieresis eogonek -140 -KPX Ydieresis hyphen -140 -KPX Ydieresis i -20 -KPX Ydieresis iacute -20 -KPX Ydieresis iogonek -20 -KPX Ydieresis o -140 -KPX Ydieresis oacute -140 -KPX Ydieresis ocircumflex -140 -KPX Ydieresis odieresis -140 -KPX Ydieresis ograve -140 -KPX Ydieresis ohungarumlaut -140 -KPX Ydieresis omacron -140 -KPX Ydieresis oslash -140 -KPX Ydieresis otilde -140 -KPX Ydieresis period -140 -KPX Ydieresis semicolon -60 -KPX Ydieresis u -110 -KPX Ydieresis uacute -110 -KPX Ydieresis ucircumflex -110 -KPX Ydieresis udieresis -110 -KPX Ydieresis ugrave -110 -KPX Ydieresis uhungarumlaut -110 -KPX Ydieresis umacron -110 -KPX Ydieresis uogonek -110 -KPX Ydieresis uring -110 -KPX a v -20 -KPX a w -20 -KPX a y -30 -KPX a yacute -30 -KPX a ydieresis -30 -KPX aacute v -20 -KPX aacute w -20 -KPX aacute y -30 -KPX aacute yacute -30 -KPX aacute ydieresis -30 -KPX abreve v -20 -KPX abreve w -20 -KPX abreve y -30 -KPX abreve yacute -30 -KPX abreve ydieresis -30 -KPX acircumflex v -20 -KPX acircumflex w -20 -KPX acircumflex y -30 -KPX acircumflex yacute -30 -KPX acircumflex ydieresis -30 -KPX adieresis v -20 -KPX adieresis w -20 -KPX adieresis y -30 -KPX adieresis yacute -30 -KPX adieresis ydieresis -30 -KPX agrave v -20 -KPX agrave w -20 -KPX agrave y -30 -KPX agrave yacute -30 -KPX agrave ydieresis -30 -KPX amacron v -20 -KPX amacron w -20 -KPX amacron y -30 -KPX amacron yacute -30 -KPX amacron ydieresis -30 -KPX aogonek v -20 -KPX aogonek w -20 -KPX aogonek y -30 -KPX aogonek yacute -30 -KPX aogonek ydieresis -30 -KPX aring v -20 -KPX aring w -20 -KPX aring y -30 -KPX aring yacute -30 -KPX aring ydieresis -30 -KPX atilde v -20 -KPX atilde w -20 -KPX atilde y -30 -KPX atilde yacute -30 -KPX atilde ydieresis -30 -KPX b b -10 -KPX b comma -40 -KPX b l -20 -KPX b lacute -20 -KPX b lcommaaccent -20 -KPX b lslash -20 -KPX b period -40 -KPX b u -20 -KPX b uacute -20 -KPX b ucircumflex -20 -KPX b udieresis -20 -KPX b ugrave -20 -KPX b uhungarumlaut -20 -KPX b umacron -20 -KPX b uogonek -20 -KPX b uring -20 -KPX b v -20 -KPX b y -20 -KPX b yacute -20 -KPX b ydieresis -20 -KPX c comma -15 -KPX c k -20 -KPX c kcommaaccent -20 -KPX cacute comma -15 -KPX cacute k -20 -KPX cacute kcommaaccent -20 -KPX ccaron comma -15 -KPX ccaron k -20 -KPX ccaron kcommaaccent -20 -KPX ccedilla comma -15 -KPX ccedilla k -20 -KPX ccedilla kcommaaccent -20 -KPX colon space -50 -KPX comma quotedblright -100 -KPX comma quoteright -100 -KPX e comma -15 -KPX e period -15 -KPX e v -30 -KPX e w -20 -KPX e x -30 -KPX e y -20 -KPX e yacute -20 -KPX e ydieresis -20 -KPX eacute comma -15 -KPX eacute period -15 -KPX eacute v -30 -KPX eacute w -20 -KPX eacute x -30 -KPX eacute y -20 -KPX eacute yacute -20 -KPX eacute ydieresis -20 -KPX ecaron comma -15 -KPX ecaron period -15 -KPX ecaron v -30 -KPX ecaron w -20 -KPX ecaron x -30 -KPX ecaron y -20 -KPX ecaron yacute -20 -KPX ecaron ydieresis -20 -KPX ecircumflex comma -15 -KPX ecircumflex period -15 -KPX ecircumflex v -30 -KPX ecircumflex w -20 -KPX ecircumflex x -30 -KPX ecircumflex y -20 -KPX ecircumflex yacute -20 -KPX ecircumflex ydieresis -20 -KPX edieresis comma -15 -KPX edieresis period -15 -KPX edieresis v -30 -KPX edieresis w -20 -KPX edieresis x -30 -KPX edieresis y -20 -KPX edieresis yacute -20 -KPX edieresis ydieresis -20 -KPX edotaccent comma -15 -KPX edotaccent period -15 -KPX edotaccent v -30 -KPX edotaccent w -20 -KPX edotaccent x -30 -KPX edotaccent y -20 -KPX edotaccent yacute -20 -KPX edotaccent ydieresis -20 -KPX egrave comma -15 -KPX egrave period -15 -KPX egrave v -30 -KPX egrave w -20 -KPX egrave x -30 -KPX egrave y -20 -KPX egrave yacute -20 -KPX egrave ydieresis -20 -KPX emacron comma -15 -KPX emacron period -15 -KPX emacron v -30 -KPX emacron w -20 -KPX emacron x -30 -KPX emacron y -20 -KPX emacron yacute -20 -KPX emacron ydieresis -20 -KPX eogonek comma -15 -KPX eogonek period -15 -KPX eogonek v -30 -KPX eogonek w -20 -KPX eogonek x -30 -KPX eogonek y -20 -KPX eogonek yacute -20 -KPX eogonek ydieresis -20 -KPX f a -30 -KPX f aacute -30 -KPX f abreve -30 -KPX f acircumflex -30 -KPX f adieresis -30 -KPX f agrave -30 -KPX f amacron -30 -KPX f aogonek -30 -KPX f aring -30 -KPX f atilde -30 -KPX f comma -30 -KPX f dotlessi -28 -KPX f e -30 -KPX f eacute -30 -KPX f ecaron -30 -KPX f ecircumflex -30 -KPX f edieresis -30 -KPX f edotaccent -30 -KPX f egrave -30 -KPX f emacron -30 -KPX f eogonek -30 -KPX f o -30 -KPX f oacute -30 -KPX f ocircumflex -30 -KPX f odieresis -30 -KPX f ograve -30 -KPX f ohungarumlaut -30 -KPX f omacron -30 -KPX f oslash -30 -KPX f otilde -30 -KPX f period -30 -KPX f quotedblright 60 -KPX f quoteright 50 -KPX g r -10 -KPX g racute -10 -KPX g rcaron -10 -KPX g rcommaaccent -10 -KPX gbreve r -10 -KPX gbreve racute -10 -KPX gbreve rcaron -10 -KPX gbreve rcommaaccent -10 -KPX gcommaaccent r -10 -KPX gcommaaccent racute -10 -KPX gcommaaccent rcaron -10 -KPX gcommaaccent rcommaaccent -10 -KPX h y -30 -KPX h yacute -30 -KPX h ydieresis -30 -KPX k e -20 -KPX k eacute -20 -KPX k ecaron -20 -KPX k ecircumflex -20 -KPX k edieresis -20 -KPX k edotaccent -20 -KPX k egrave -20 -KPX k emacron -20 -KPX k eogonek -20 -KPX k o -20 -KPX k oacute -20 -KPX k ocircumflex -20 -KPX k odieresis -20 -KPX k ograve -20 -KPX k ohungarumlaut -20 -KPX k omacron -20 -KPX k oslash -20 -KPX k otilde -20 -KPX kcommaaccent e -20 -KPX kcommaaccent eacute -20 -KPX kcommaaccent ecaron -20 -KPX kcommaaccent ecircumflex -20 -KPX kcommaaccent edieresis -20 -KPX kcommaaccent edotaccent -20 -KPX kcommaaccent egrave -20 -KPX kcommaaccent emacron -20 -KPX kcommaaccent eogonek -20 -KPX kcommaaccent o -20 -KPX kcommaaccent oacute -20 -KPX kcommaaccent ocircumflex -20 -KPX kcommaaccent odieresis -20 -KPX kcommaaccent ograve -20 -KPX kcommaaccent ohungarumlaut -20 -KPX kcommaaccent omacron -20 -KPX kcommaaccent oslash -20 -KPX kcommaaccent otilde -20 -KPX m u -10 -KPX m uacute -10 -KPX m ucircumflex -10 -KPX m udieresis -10 -KPX m ugrave -10 -KPX m uhungarumlaut -10 -KPX m umacron -10 -KPX m uogonek -10 -KPX m uring -10 -KPX m y -15 -KPX m yacute -15 -KPX m ydieresis -15 -KPX n u -10 -KPX n uacute -10 -KPX n ucircumflex -10 -KPX n udieresis -10 -KPX n ugrave -10 -KPX n uhungarumlaut -10 -KPX n umacron -10 -KPX n uogonek -10 -KPX n uring -10 -KPX n v -20 -KPX n y -15 -KPX n yacute -15 -KPX n ydieresis -15 -KPX nacute u -10 -KPX nacute uacute -10 -KPX nacute ucircumflex -10 -KPX nacute udieresis -10 -KPX nacute ugrave -10 -KPX nacute uhungarumlaut -10 -KPX nacute umacron -10 -KPX nacute uogonek -10 -KPX nacute uring -10 -KPX nacute v -20 -KPX nacute y -15 -KPX nacute yacute -15 -KPX nacute ydieresis -15 -KPX ncaron u -10 -KPX ncaron uacute -10 -KPX ncaron ucircumflex -10 -KPX ncaron udieresis -10 -KPX ncaron ugrave -10 -KPX ncaron uhungarumlaut -10 -KPX ncaron umacron -10 -KPX ncaron uogonek -10 -KPX ncaron uring -10 -KPX ncaron v -20 -KPX ncaron y -15 -KPX ncaron yacute -15 -KPX ncaron ydieresis -15 -KPX ncommaaccent u -10 -KPX ncommaaccent uacute -10 -KPX ncommaaccent ucircumflex -10 -KPX ncommaaccent udieresis -10 -KPX ncommaaccent ugrave -10 -KPX ncommaaccent uhungarumlaut -10 -KPX ncommaaccent umacron -10 -KPX ncommaaccent uogonek -10 -KPX ncommaaccent uring -10 -KPX ncommaaccent v -20 -KPX ncommaaccent y -15 -KPX ncommaaccent yacute -15 -KPX ncommaaccent ydieresis -15 -KPX ntilde u -10 -KPX ntilde uacute -10 -KPX ntilde ucircumflex -10 -KPX ntilde udieresis -10 -KPX ntilde ugrave -10 -KPX ntilde uhungarumlaut -10 -KPX ntilde umacron -10 -KPX ntilde uogonek -10 -KPX ntilde uring -10 -KPX ntilde v -20 -KPX ntilde y -15 -KPX ntilde yacute -15 -KPX ntilde ydieresis -15 -KPX o comma -40 -KPX o period -40 -KPX o v -15 -KPX o w -15 -KPX o x -30 -KPX o y -30 -KPX o yacute -30 -KPX o ydieresis -30 -KPX oacute comma -40 -KPX oacute period -40 -KPX oacute v -15 -KPX oacute w -15 -KPX oacute x -30 -KPX oacute y -30 -KPX oacute yacute -30 -KPX oacute ydieresis -30 -KPX ocircumflex comma -40 -KPX ocircumflex period -40 -KPX ocircumflex v -15 -KPX ocircumflex w -15 -KPX ocircumflex x -30 -KPX ocircumflex y -30 -KPX ocircumflex yacute -30 -KPX ocircumflex ydieresis -30 -KPX odieresis comma -40 -KPX odieresis period -40 -KPX odieresis v -15 -KPX odieresis w -15 -KPX odieresis x -30 -KPX odieresis y -30 -KPX odieresis yacute -30 -KPX odieresis ydieresis -30 -KPX ograve comma -40 -KPX ograve period -40 -KPX ograve v -15 -KPX ograve w -15 -KPX ograve x -30 -KPX ograve y -30 -KPX ograve yacute -30 -KPX ograve ydieresis -30 -KPX ohungarumlaut comma -40 -KPX ohungarumlaut period -40 -KPX ohungarumlaut v -15 -KPX ohungarumlaut w -15 -KPX ohungarumlaut x -30 -KPX ohungarumlaut y -30 -KPX ohungarumlaut yacute -30 -KPX ohungarumlaut ydieresis -30 -KPX omacron comma -40 -KPX omacron period -40 -KPX omacron v -15 -KPX omacron w -15 -KPX omacron x -30 -KPX omacron y -30 -KPX omacron yacute -30 -KPX omacron ydieresis -30 -KPX oslash a -55 -KPX oslash aacute -55 -KPX oslash abreve -55 -KPX oslash acircumflex -55 -KPX oslash adieresis -55 -KPX oslash agrave -55 -KPX oslash amacron -55 -KPX oslash aogonek -55 -KPX oslash aring -55 -KPX oslash atilde -55 -KPX oslash b -55 -KPX oslash c -55 -KPX oslash cacute -55 -KPX oslash ccaron -55 -KPX oslash ccedilla -55 -KPX oslash comma -95 -KPX oslash d -55 -KPX oslash dcroat -55 -KPX oslash e -55 -KPX oslash eacute -55 -KPX oslash ecaron -55 -KPX oslash ecircumflex -55 -KPX oslash edieresis -55 -KPX oslash edotaccent -55 -KPX oslash egrave -55 -KPX oslash emacron -55 -KPX oslash eogonek -55 -KPX oslash f -55 -KPX oslash g -55 -KPX oslash gbreve -55 -KPX oslash gcommaaccent -55 -KPX oslash h -55 -KPX oslash i -55 -KPX oslash iacute -55 -KPX oslash icircumflex -55 -KPX oslash idieresis -55 -KPX oslash igrave -55 -KPX oslash imacron -55 -KPX oslash iogonek -55 -KPX oslash j -55 -KPX oslash k -55 -KPX oslash kcommaaccent -55 -KPX oslash l -55 -KPX oslash lacute -55 -KPX oslash lcommaaccent -55 -KPX oslash lslash -55 -KPX oslash m -55 -KPX oslash n -55 -KPX oslash nacute -55 -KPX oslash ncaron -55 -KPX oslash ncommaaccent -55 -KPX oslash ntilde -55 -KPX oslash o -55 -KPX oslash oacute -55 -KPX oslash ocircumflex -55 -KPX oslash odieresis -55 -KPX oslash ograve -55 -KPX oslash ohungarumlaut -55 -KPX oslash omacron -55 -KPX oslash oslash -55 -KPX oslash otilde -55 -KPX oslash p -55 -KPX oslash period -95 -KPX oslash q -55 -KPX oslash r -55 -KPX oslash racute -55 -KPX oslash rcaron -55 -KPX oslash rcommaaccent -55 -KPX oslash s -55 -KPX oslash sacute -55 -KPX oslash scaron -55 -KPX oslash scedilla -55 -KPX oslash scommaaccent -55 -KPX oslash t -55 -KPX oslash tcommaaccent -55 -KPX oslash u -55 -KPX oslash uacute -55 -KPX oslash ucircumflex -55 -KPX oslash udieresis -55 -KPX oslash ugrave -55 -KPX oslash uhungarumlaut -55 -KPX oslash umacron -55 -KPX oslash uogonek -55 -KPX oslash uring -55 -KPX oslash v -70 -KPX oslash w -70 -KPX oslash x -85 -KPX oslash y -70 -KPX oslash yacute -70 -KPX oslash ydieresis -70 -KPX oslash z -55 -KPX oslash zacute -55 -KPX oslash zcaron -55 -KPX oslash zdotaccent -55 -KPX otilde comma -40 -KPX otilde period -40 -KPX otilde v -15 -KPX otilde w -15 -KPX otilde x -30 -KPX otilde y -30 -KPX otilde yacute -30 -KPX otilde ydieresis -30 -KPX p comma -35 -KPX p period -35 -KPX p y -30 -KPX p yacute -30 -KPX p ydieresis -30 -KPX period quotedblright -100 -KPX period quoteright -100 -KPX period space -60 -KPX quotedblright space -40 -KPX quoteleft quoteleft -57 -KPX quoteright d -50 -KPX quoteright dcroat -50 -KPX quoteright quoteright -57 -KPX quoteright r -50 -KPX quoteright racute -50 -KPX quoteright rcaron -50 -KPX quoteright rcommaaccent -50 -KPX quoteright s -50 -KPX quoteright sacute -50 -KPX quoteright scaron -50 -KPX quoteright scedilla -50 -KPX quoteright scommaaccent -50 -KPX quoteright space -70 -KPX r a -10 -KPX r aacute -10 -KPX r abreve -10 -KPX r acircumflex -10 -KPX r adieresis -10 -KPX r agrave -10 -KPX r amacron -10 -KPX r aogonek -10 -KPX r aring -10 -KPX r atilde -10 -KPX r colon 30 -KPX r comma -50 -KPX r i 15 -KPX r iacute 15 -KPX r icircumflex 15 -KPX r idieresis 15 -KPX r igrave 15 -KPX r imacron 15 -KPX r iogonek 15 -KPX r k 15 -KPX r kcommaaccent 15 -KPX r l 15 -KPX r lacute 15 -KPX r lcommaaccent 15 -KPX r lslash 15 -KPX r m 25 -KPX r n 25 -KPX r nacute 25 -KPX r ncaron 25 -KPX r ncommaaccent 25 -KPX r ntilde 25 -KPX r p 30 -KPX r period -50 -KPX r semicolon 30 -KPX r t 40 -KPX r tcommaaccent 40 -KPX r u 15 -KPX r uacute 15 -KPX r ucircumflex 15 -KPX r udieresis 15 -KPX r ugrave 15 -KPX r uhungarumlaut 15 -KPX r umacron 15 -KPX r uogonek 15 -KPX r uring 15 -KPX r v 30 -KPX r y 30 -KPX r yacute 30 -KPX r ydieresis 30 -KPX racute a -10 -KPX racute aacute -10 -KPX racute abreve -10 -KPX racute acircumflex -10 -KPX racute adieresis -10 -KPX racute agrave -10 -KPX racute amacron -10 -KPX racute aogonek -10 -KPX racute aring -10 -KPX racute atilde -10 -KPX racute colon 30 -KPX racute comma -50 -KPX racute i 15 -KPX racute iacute 15 -KPX racute icircumflex 15 -KPX racute idieresis 15 -KPX racute igrave 15 -KPX racute imacron 15 -KPX racute iogonek 15 -KPX racute k 15 -KPX racute kcommaaccent 15 -KPX racute l 15 -KPX racute lacute 15 -KPX racute lcommaaccent 15 -KPX racute lslash 15 -KPX racute m 25 -KPX racute n 25 -KPX racute nacute 25 -KPX racute ncaron 25 -KPX racute ncommaaccent 25 -KPX racute ntilde 25 -KPX racute p 30 -KPX racute period -50 -KPX racute semicolon 30 -KPX racute t 40 -KPX racute tcommaaccent 40 -KPX racute u 15 -KPX racute uacute 15 -KPX racute ucircumflex 15 -KPX racute udieresis 15 -KPX racute ugrave 15 -KPX racute uhungarumlaut 15 -KPX racute umacron 15 -KPX racute uogonek 15 -KPX racute uring 15 -KPX racute v 30 -KPX racute y 30 -KPX racute yacute 30 -KPX racute ydieresis 30 -KPX rcaron a -10 -KPX rcaron aacute -10 -KPX rcaron abreve -10 -KPX rcaron acircumflex -10 -KPX rcaron adieresis -10 -KPX rcaron agrave -10 -KPX rcaron amacron -10 -KPX rcaron aogonek -10 -KPX rcaron aring -10 -KPX rcaron atilde -10 -KPX rcaron colon 30 -KPX rcaron comma -50 -KPX rcaron i 15 -KPX rcaron iacute 15 -KPX rcaron icircumflex 15 -KPX rcaron idieresis 15 -KPX rcaron igrave 15 -KPX rcaron imacron 15 -KPX rcaron iogonek 15 -KPX rcaron k 15 -KPX rcaron kcommaaccent 15 -KPX rcaron l 15 -KPX rcaron lacute 15 -KPX rcaron lcommaaccent 15 -KPX rcaron lslash 15 -KPX rcaron m 25 -KPX rcaron n 25 -KPX rcaron nacute 25 -KPX rcaron ncaron 25 -KPX rcaron ncommaaccent 25 -KPX rcaron ntilde 25 -KPX rcaron p 30 -KPX rcaron period -50 -KPX rcaron semicolon 30 -KPX rcaron t 40 -KPX rcaron tcommaaccent 40 -KPX rcaron u 15 -KPX rcaron uacute 15 -KPX rcaron ucircumflex 15 -KPX rcaron udieresis 15 -KPX rcaron ugrave 15 -KPX rcaron uhungarumlaut 15 -KPX rcaron umacron 15 -KPX rcaron uogonek 15 -KPX rcaron uring 15 -KPX rcaron v 30 -KPX rcaron y 30 -KPX rcaron yacute 30 -KPX rcaron ydieresis 30 -KPX rcommaaccent a -10 -KPX rcommaaccent aacute -10 -KPX rcommaaccent abreve -10 -KPX rcommaaccent acircumflex -10 -KPX rcommaaccent adieresis -10 -KPX rcommaaccent agrave -10 -KPX rcommaaccent amacron -10 -KPX rcommaaccent aogonek -10 -KPX rcommaaccent aring -10 -KPX rcommaaccent atilde -10 -KPX rcommaaccent colon 30 -KPX rcommaaccent comma -50 -KPX rcommaaccent i 15 -KPX rcommaaccent iacute 15 -KPX rcommaaccent icircumflex 15 -KPX rcommaaccent idieresis 15 -KPX rcommaaccent igrave 15 -KPX rcommaaccent imacron 15 -KPX rcommaaccent iogonek 15 -KPX rcommaaccent k 15 -KPX rcommaaccent kcommaaccent 15 -KPX rcommaaccent l 15 -KPX rcommaaccent lacute 15 -KPX rcommaaccent lcommaaccent 15 -KPX rcommaaccent lslash 15 -KPX rcommaaccent m 25 -KPX rcommaaccent n 25 -KPX rcommaaccent nacute 25 -KPX rcommaaccent ncaron 25 -KPX rcommaaccent ncommaaccent 25 -KPX rcommaaccent ntilde 25 -KPX rcommaaccent p 30 -KPX rcommaaccent period -50 -KPX rcommaaccent semicolon 30 -KPX rcommaaccent t 40 -KPX rcommaaccent tcommaaccent 40 -KPX rcommaaccent u 15 -KPX rcommaaccent uacute 15 -KPX rcommaaccent ucircumflex 15 -KPX rcommaaccent udieresis 15 -KPX rcommaaccent ugrave 15 -KPX rcommaaccent uhungarumlaut 15 -KPX rcommaaccent umacron 15 -KPX rcommaaccent uogonek 15 -KPX rcommaaccent uring 15 -KPX rcommaaccent v 30 -KPX rcommaaccent y 30 -KPX rcommaaccent yacute 30 -KPX rcommaaccent ydieresis 30 -KPX s comma -15 -KPX s period -15 -KPX s w -30 -KPX sacute comma -15 -KPX sacute period -15 -KPX sacute w -30 -KPX scaron comma -15 -KPX scaron period -15 -KPX scaron w -30 -KPX scedilla comma -15 -KPX scedilla period -15 -KPX scedilla w -30 -KPX scommaaccent comma -15 -KPX scommaaccent period -15 -KPX scommaaccent w -30 -KPX semicolon space -50 -KPX space T -50 -KPX space Tcaron -50 -KPX space Tcommaaccent -50 -KPX space V -50 -KPX space W -40 -KPX space Y -90 -KPX space Yacute -90 -KPX space Ydieresis -90 -KPX space quotedblleft -30 -KPX space quoteleft -60 -KPX v a -25 -KPX v aacute -25 -KPX v abreve -25 -KPX v acircumflex -25 -KPX v adieresis -25 -KPX v agrave -25 -KPX v amacron -25 -KPX v aogonek -25 -KPX v aring -25 -KPX v atilde -25 -KPX v comma -80 -KPX v e -25 -KPX v eacute -25 -KPX v ecaron -25 -KPX v ecircumflex -25 -KPX v edieresis -25 -KPX v edotaccent -25 -KPX v egrave -25 -KPX v emacron -25 -KPX v eogonek -25 -KPX v o -25 -KPX v oacute -25 -KPX v ocircumflex -25 -KPX v odieresis -25 -KPX v ograve -25 -KPX v ohungarumlaut -25 -KPX v omacron -25 -KPX v oslash -25 -KPX v otilde -25 -KPX v period -80 -KPX w a -15 -KPX w aacute -15 -KPX w abreve -15 -KPX w acircumflex -15 -KPX w adieresis -15 -KPX w agrave -15 -KPX w amacron -15 -KPX w aogonek -15 -KPX w aring -15 -KPX w atilde -15 -KPX w comma -60 -KPX w e -10 -KPX w eacute -10 -KPX w ecaron -10 -KPX w ecircumflex -10 -KPX w edieresis -10 -KPX w edotaccent -10 -KPX w egrave -10 -KPX w emacron -10 -KPX w eogonek -10 -KPX w o -10 -KPX w oacute -10 -KPX w ocircumflex -10 -KPX w odieresis -10 -KPX w ograve -10 -KPX w ohungarumlaut -10 -KPX w omacron -10 -KPX w oslash -10 -KPX w otilde -10 -KPX w period -60 -KPX x e -30 -KPX x eacute -30 -KPX x ecaron -30 -KPX x ecircumflex -30 -KPX x edieresis -30 -KPX x edotaccent -30 -KPX x egrave -30 -KPX x emacron -30 -KPX x eogonek -30 -KPX y a -20 -KPX y aacute -20 -KPX y abreve -20 -KPX y acircumflex -20 -KPX y adieresis -20 -KPX y agrave -20 -KPX y amacron -20 -KPX y aogonek -20 -KPX y aring -20 -KPX y atilde -20 -KPX y comma -100 -KPX y e -20 -KPX y eacute -20 -KPX y ecaron -20 -KPX y ecircumflex -20 -KPX y edieresis -20 -KPX y edotaccent -20 -KPX y egrave -20 -KPX y emacron -20 -KPX y eogonek -20 -KPX y o -20 -KPX y oacute -20 -KPX y ocircumflex -20 -KPX y odieresis -20 -KPX y ograve -20 -KPX y ohungarumlaut -20 -KPX y omacron -20 -KPX y oslash -20 -KPX y otilde -20 -KPX y period -100 -KPX yacute a -20 -KPX yacute aacute -20 -KPX yacute abreve -20 -KPX yacute acircumflex -20 -KPX yacute adieresis -20 -KPX yacute agrave -20 -KPX yacute amacron -20 -KPX yacute aogonek -20 -KPX yacute aring -20 -KPX yacute atilde -20 -KPX yacute comma -100 -KPX yacute e -20 -KPX yacute eacute -20 -KPX yacute ecaron -20 -KPX yacute ecircumflex -20 -KPX yacute edieresis -20 -KPX yacute edotaccent -20 -KPX yacute egrave -20 -KPX yacute emacron -20 -KPX yacute eogonek -20 -KPX yacute o -20 -KPX yacute oacute -20 -KPX yacute ocircumflex -20 -KPX yacute odieresis -20 -KPX yacute ograve -20 -KPX yacute ohungarumlaut -20 -KPX yacute omacron -20 -KPX yacute oslash -20 -KPX yacute otilde -20 -KPX yacute period -100 -KPX ydieresis a -20 -KPX ydieresis aacute -20 -KPX ydieresis abreve -20 -KPX ydieresis acircumflex -20 -KPX ydieresis adieresis -20 -KPX ydieresis agrave -20 -KPX ydieresis amacron -20 -KPX ydieresis aogonek -20 -KPX ydieresis aring -20 -KPX ydieresis atilde -20 -KPX ydieresis comma -100 -KPX ydieresis e -20 -KPX ydieresis eacute -20 -KPX ydieresis ecaron -20 -KPX ydieresis ecircumflex -20 -KPX ydieresis edieresis -20 -KPX ydieresis edotaccent -20 -KPX ydieresis egrave -20 -KPX ydieresis emacron -20 -KPX ydieresis eogonek -20 -KPX ydieresis o -20 -KPX ydieresis oacute -20 -KPX ydieresis ocircumflex -20 -KPX ydieresis odieresis -20 -KPX ydieresis ograve -20 -KPX ydieresis ohungarumlaut -20 -KPX ydieresis omacron -20 -KPX ydieresis oslash -20 -KPX ydieresis otilde -20 -KPX ydieresis period -100 -KPX z e -15 -KPX z eacute -15 -KPX z ecaron -15 -KPX z ecircumflex -15 -KPX z edieresis -15 -KPX z edotaccent -15 -KPX z egrave -15 -KPX z emacron -15 -KPX z eogonek -15 -KPX z o -15 -KPX z oacute -15 -KPX z ocircumflex -15 -KPX z odieresis -15 -KPX z ograve -15 -KPX z ohungarumlaut -15 -KPX z omacron -15 -KPX z oslash -15 -KPX z otilde -15 -KPX zacute e -15 -KPX zacute eacute -15 -KPX zacute ecaron -15 -KPX zacute ecircumflex -15 -KPX zacute edieresis -15 -KPX zacute edotaccent -15 -KPX zacute egrave -15 -KPX zacute emacron -15 -KPX zacute eogonek -15 -KPX zacute o -15 -KPX zacute oacute -15 -KPX zacute ocircumflex -15 -KPX zacute odieresis -15 -KPX zacute ograve -15 -KPX zacute ohungarumlaut -15 -KPX zacute omacron -15 -KPX zacute oslash -15 -KPX zacute otilde -15 -KPX zcaron e -15 -KPX zcaron eacute -15 -KPX zcaron ecaron -15 -KPX zcaron ecircumflex -15 -KPX zcaron edieresis -15 -KPX zcaron edotaccent -15 -KPX zcaron egrave -15 -KPX zcaron emacron -15 -KPX zcaron eogonek -15 -KPX zcaron o -15 -KPX zcaron oacute -15 -KPX zcaron ocircumflex -15 -KPX zcaron odieresis -15 -KPX zcaron ograve -15 -KPX zcaron ohungarumlaut -15 -KPX zcaron omacron -15 -KPX zcaron oslash -15 -KPX zcaron otilde -15 -KPX zdotaccent e -15 -KPX zdotaccent eacute -15 -KPX zdotaccent ecaron -15 -KPX zdotaccent ecircumflex -15 -KPX zdotaccent edieresis -15 -KPX zdotaccent edotaccent -15 -KPX zdotaccent egrave -15 -KPX zdotaccent emacron -15 -KPX zdotaccent eogonek -15 -KPX zdotaccent o -15 -KPX zdotaccent oacute -15 -KPX zdotaccent ocircumflex -15 -KPX zdotaccent odieresis -15 -KPX zdotaccent ograve -15 -KPX zdotaccent ohungarumlaut -15 -KPX zdotaccent omacron -15 -KPX zdotaccent oslash -15 -KPX zdotaccent otilde -15 -EndKernPairs -EndKernData -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Helvetica.afm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Helvetica.afm deleted file mode 100644 index c418dc1c..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Helvetica.afm +++ /dev/null @@ -1,3053 +0,0 @@ -StartFontMetrics 4.1 -Comment Copyright (c) 1985, 1987, 1989, 1990, 1997 Adobe Systems Incorporated. All Rights Reserved. -Comment Creation Date: Thu May 1 12:38:23 1997 -Comment UniqueID 43054 -Comment VMusage 37069 48094 -FontName Helvetica -FullName Helvetica -FamilyName Helvetica -Weight Medium -ItalicAngle 0 -IsFixedPitch false -CharacterSet ExtendedRoman -FontBBox -166 -225 1000 931 -UnderlinePosition -100 -UnderlineThickness 50 -Version 002.000 -Notice Copyright (c) 1985, 1987, 1989, 1990, 1997 Adobe Systems Incorporated. All Rights Reserved.Helvetica is a trademark of Linotype-Hell AG and/or its subsidiaries. -EncodingScheme WinAnsiEncoding -CapHeight 718 -XHeight 523 -Ascender 718 -Descender -207 -StdHW 76 -StdVW 88 -StartCharMetrics 317 -C 32 ; WX 278 ; N space ; B 0 0 0 0 ; -C 160 ; WX 278 ; N space ; B 0 0 0 0 ; -C 33 ; WX 278 ; N exclam ; B 90 0 187 718 ; -C 34 ; WX 355 ; N quotedbl ; B 70 463 285 718 ; -C 35 ; WX 556 ; N numbersign ; B 28 0 529 688 ; -C 36 ; WX 556 ; N dollar ; B 32 -115 520 775 ; -C 37 ; WX 889 ; N percent ; B 39 -19 850 703 ; -C 38 ; WX 667 ; N ampersand ; B 44 -15 645 718 ; -C 146 ; WX 222 ; N quoteright ; B 53 463 157 718 ; -C 40 ; WX 333 ; N parenleft ; B 68 -207 299 733 ; -C 41 ; WX 333 ; N parenright ; B 34 -207 265 733 ; -C 42 ; WX 389 ; N asterisk ; B 39 431 349 718 ; -C 43 ; WX 584 ; N plus ; B 39 0 545 505 ; -C 44 ; WX 278 ; N comma ; B 87 -147 191 106 ; -C 45 ; WX 333 ; N hyphen ; B 44 232 289 322 ; -C 173 ; WX 333 ; N hyphen ; B 44 232 289 322 ; -C 46 ; WX 278 ; N period ; B 87 0 191 106 ; -C 47 ; WX 278 ; N slash ; B -17 -19 295 737 ; -C 48 ; WX 556 ; N zero ; B 37 -19 519 703 ; -C 49 ; WX 556 ; N one ; B 101 0 359 703 ; -C 50 ; WX 556 ; N two ; B 26 0 507 703 ; -C 51 ; WX 556 ; N three ; B 34 -19 522 703 ; -C 52 ; WX 556 ; N four ; B 25 0 523 703 ; -C 53 ; WX 556 ; N five ; B 32 -19 514 688 ; -C 54 ; WX 556 ; N six ; B 38 -19 518 703 ; -C 55 ; WX 556 ; N seven ; B 37 0 523 688 ; -C 56 ; WX 556 ; N eight ; B 38 -19 517 703 ; -C 57 ; WX 556 ; N nine ; B 42 -19 514 703 ; -C 58 ; WX 278 ; N colon ; B 87 0 191 516 ; -C 59 ; WX 278 ; N semicolon ; B 87 -147 191 516 ; -C 60 ; WX 584 ; N less ; B 48 11 536 495 ; -C 61 ; WX 584 ; N equal ; B 39 115 545 390 ; -C 62 ; WX 584 ; N greater ; B 48 11 536 495 ; -C 63 ; WX 556 ; N question ; B 56 0 492 727 ; -C 64 ; WX 1015 ; N at ; B 147 -19 868 737 ; -C 65 ; WX 667 ; N A ; B 14 0 654 718 ; -C 66 ; WX 667 ; N B ; B 74 0 627 718 ; -C 67 ; WX 722 ; N C ; B 44 -19 681 737 ; -C 68 ; WX 722 ; N D ; B 81 0 674 718 ; -C 69 ; WX 667 ; N E ; B 86 0 616 718 ; -C 70 ; WX 611 ; N F ; B 86 0 583 718 ; -C 71 ; WX 778 ; N G ; B 48 -19 704 737 ; -C 72 ; WX 722 ; N H ; B 77 0 646 718 ; -C 73 ; WX 278 ; N I ; B 91 0 188 718 ; -C 74 ; WX 500 ; N J ; B 17 -19 428 718 ; -C 75 ; WX 667 ; N K ; B 76 0 663 718 ; -C 76 ; WX 556 ; N L ; B 76 0 537 718 ; -C 77 ; WX 833 ; N M ; B 73 0 761 718 ; -C 78 ; WX 722 ; N N ; B 76 0 646 718 ; -C 79 ; WX 778 ; N O ; B 39 -19 739 737 ; -C 80 ; WX 667 ; N P ; B 86 0 622 718 ; -C 81 ; WX 778 ; N Q ; B 39 -56 739 737 ; -C 82 ; WX 722 ; N R ; B 88 0 684 718 ; -C 83 ; WX 667 ; N S ; B 49 -19 620 737 ; -C 84 ; WX 611 ; N T ; B 14 0 597 718 ; -C 85 ; WX 722 ; N U ; B 79 -19 644 718 ; -C 86 ; WX 667 ; N V ; B 20 0 647 718 ; -C 87 ; WX 944 ; N W ; B 16 0 928 718 ; -C 88 ; WX 667 ; N X ; B 19 0 648 718 ; -C 89 ; WX 667 ; N Y ; B 14 0 653 718 ; -C 90 ; WX 611 ; N Z ; B 23 0 588 718 ; -C 91 ; WX 278 ; N bracketleft ; B 63 -196 250 722 ; -C 92 ; WX 278 ; N backslash ; B -17 -19 295 737 ; -C 93 ; WX 278 ; N bracketright ; B 28 -196 215 722 ; -C 94 ; WX 469 ; N asciicircum ; B -14 264 483 688 ; -C 95 ; WX 556 ; N underscore ; B 0 -125 556 -75 ; -C 145 ; WX 222 ; N quoteleft ; B 65 470 169 725 ; -C 97 ; WX 556 ; N a ; B 36 -15 530 538 ; -C 98 ; WX 556 ; N b ; B 58 -15 517 718 ; -C 99 ; WX 500 ; N c ; B 30 -15 477 538 ; -C 100 ; WX 556 ; N d ; B 35 -15 499 718 ; -C 101 ; WX 556 ; N e ; B 40 -15 516 538 ; -C 102 ; WX 278 ; N f ; B 14 0 262 728 ; L i fi ; L l fl ; -C 103 ; WX 556 ; N g ; B 40 -220 499 538 ; -C 104 ; WX 556 ; N h ; B 65 0 491 718 ; -C 105 ; WX 222 ; N i ; B 67 0 155 718 ; -C 106 ; WX 222 ; N j ; B -16 -210 155 718 ; -C 107 ; WX 500 ; N k ; B 67 0 501 718 ; -C 108 ; WX 222 ; N l ; B 67 0 155 718 ; -C 109 ; WX 833 ; N m ; B 65 0 769 538 ; -C 110 ; WX 556 ; N n ; B 65 0 491 538 ; -C 111 ; WX 556 ; N o ; B 35 -14 521 538 ; -C 112 ; WX 556 ; N p ; B 58 -207 517 538 ; -C 113 ; WX 556 ; N q ; B 35 -207 494 538 ; -C 114 ; WX 333 ; N r ; B 77 0 332 538 ; -C 115 ; WX 500 ; N s ; B 32 -15 464 538 ; -C 116 ; WX 278 ; N t ; B 14 -7 257 669 ; -C 117 ; WX 556 ; N u ; B 68 -15 489 523 ; -C 118 ; WX 500 ; N v ; B 8 0 492 523 ; -C 119 ; WX 722 ; N w ; B 14 0 709 523 ; -C 120 ; WX 500 ; N x ; B 11 0 490 523 ; -C 121 ; WX 500 ; N y ; B 11 -214 489 523 ; -C 122 ; WX 500 ; N z ; B 31 0 469 523 ; -C 123 ; WX 334 ; N braceleft ; B 42 -196 292 722 ; -C 124 ; WX 260 ; N bar ; B 94 -225 167 775 ; -C 125 ; WX 334 ; N braceright ; B 42 -196 292 722 ; -C 126 ; WX 584 ; N asciitilde ; B 61 180 523 326 ; -C 161 ; WX 333 ; N exclamdown ; B 118 -195 215 523 ; -C 162 ; WX 556 ; N cent ; B 51 -115 513 623 ; -C 163 ; WX 556 ; N sterling ; B 33 -16 539 718 ; -C -1 ; WX 167 ; N fraction ; B -166 -19 333 703 ; -C 165 ; WX 556 ; N yen ; B 3 0 553 688 ; -C 131 ; WX 556 ; N florin ; B -11 -207 501 737 ; -C 167 ; WX 556 ; N section ; B 43 -191 512 737 ; -C 164 ; WX 556 ; N currency ; B 28 99 528 603 ; -C 39 ; WX 191 ; N quotesingle ; B 59 463 132 718 ; -C 147 ; WX 333 ; N quotedblleft ; B 38 470 307 725 ; -C 171 ; WX 556 ; N guillemotleft ; B 97 108 459 446 ; -C 139 ; WX 333 ; N guilsinglleft ; B 88 108 245 446 ; -C 155 ; WX 333 ; N guilsinglright ; B 88 108 245 446 ; -C -1 ; WX 500 ; N fi ; B 14 0 434 728 ; -C -1 ; WX 500 ; N fl ; B 14 0 432 728 ; -C 150 ; WX 556 ; N endash ; B 0 240 556 313 ; -C 134 ; WX 556 ; N dagger ; B 43 -159 514 718 ; -C 135 ; WX 556 ; N daggerdbl ; B 43 -159 514 718 ; -C 183 ; WX 278 ; N periodcentered ; B 77 190 202 315 ; -C 182 ; WX 537 ; N paragraph ; B 18 -173 497 718 ; -C 149 ; WX 350 ; N bullet ; B 18 202 333 517 ; -C 130 ; WX 222 ; N quotesinglbase ; B 53 -149 157 106 ; -C 132 ; WX 333 ; N quotedblbase ; B 26 -149 295 106 ; -C 148 ; WX 333 ; N quotedblright ; B 26 463 295 718 ; -C 187 ; WX 556 ; N guillemotright ; B 97 108 459 446 ; -C 133 ; WX 1000 ; N ellipsis ; B 115 0 885 106 ; -C 137 ; WX 1000 ; N perthousand ; B 7 -19 994 703 ; -C 191 ; WX 611 ; N questiondown ; B 91 -201 527 525 ; -C 96 ; WX 333 ; N grave ; B 14 593 211 734 ; -C 180 ; WX 333 ; N acute ; B 122 593 319 734 ; -C 136 ; WX 333 ; N circumflex ; B 21 593 312 734 ; -C 152 ; WX 333 ; N tilde ; B -4 606 337 722 ; -C 175 ; WX 333 ; N macron ; B 10 627 323 684 ; -C -1 ; WX 333 ; N breve ; B 13 595 321 731 ; -C -1 ; WX 333 ; N dotaccent ; B 121 604 212 706 ; -C 168 ; WX 333 ; N dieresis ; B 40 604 293 706 ; -C -1 ; WX 333 ; N ring ; B 75 572 259 756 ; -C 184 ; WX 333 ; N cedilla ; B 45 -225 259 0 ; -C -1 ; WX 333 ; N hungarumlaut ; B 31 593 409 734 ; -C -1 ; WX 333 ; N ogonek ; B 73 -225 287 0 ; -C -1 ; WX 333 ; N caron ; B 21 593 312 734 ; -C 151 ; WX 1000 ; N emdash ; B 0 240 1000 313 ; -C 198 ; WX 1000 ; N AE ; B 8 0 951 718 ; -C 170 ; WX 370 ; N ordfeminine ; B 24 405 346 737 ; -C -1 ; WX 556 ; N Lslash ; B -20 0 537 718 ; -C 216 ; WX 778 ; N Oslash ; B 39 -19 740 737 ; -C 140 ; WX 1000 ; N OE ; B 36 -19 965 737 ; -C 186 ; WX 365 ; N ordmasculine ; B 25 405 341 737 ; -C 230 ; WX 889 ; N ae ; B 36 -15 847 538 ; -C -1 ; WX 278 ; N dotlessi ; B 95 0 183 523 ; -C -1 ; WX 222 ; N lslash ; B -20 0 242 718 ; -C 248 ; WX 611 ; N oslash ; B 28 -22 537 545 ; -C 156 ; WX 944 ; N oe ; B 35 -15 902 538 ; -C 223 ; WX 611 ; N germandbls ; B 67 -15 571 728 ; -C 207 ; WX 278 ; N Idieresis ; B 13 0 266 901 ; -C 233 ; WX 556 ; N eacute ; B 40 -15 516 734 ; -C -1 ; WX 556 ; N abreve ; B 36 -15 530 731 ; -C -1 ; WX 556 ; N uhungarumlaut ; B 68 -15 521 734 ; -C -1 ; WX 556 ; N ecaron ; B 40 -15 516 734 ; -C 159 ; WX 667 ; N Ydieresis ; B 14 0 653 901 ; -C 247 ; WX 584 ; N divide ; B 39 -19 545 524 ; -C 221 ; WX 667 ; N Yacute ; B 14 0 653 929 ; -C 194 ; WX 667 ; N Acircumflex ; B 14 0 654 929 ; -C 225 ; WX 556 ; N aacute ; B 36 -15 530 734 ; -C 219 ; WX 722 ; N Ucircumflex ; B 79 -19 644 929 ; -C 253 ; WX 500 ; N yacute ; B 11 -214 489 734 ; -C -1 ; WX 500 ; N scommaaccent ; B 32 -225 464 538 ; -C 234 ; WX 556 ; N ecircumflex ; B 40 -15 516 734 ; -C -1 ; WX 722 ; N Uring ; B 79 -19 644 931 ; -C 220 ; WX 722 ; N Udieresis ; B 79 -19 644 901 ; -C -1 ; WX 556 ; N aogonek ; B 36 -220 547 538 ; -C 218 ; WX 722 ; N Uacute ; B 79 -19 644 929 ; -C -1 ; WX 556 ; N uogonek ; B 68 -225 519 523 ; -C 203 ; WX 667 ; N Edieresis ; B 86 0 616 901 ; -C -1 ; WX 722 ; N Dcroat ; B 0 0 674 718 ; -C -1 ; WX 250 ; N commaaccent ; B 87 -225 181 -40 ; -C 169 ; WX 737 ; N copyright ; B -14 -19 752 737 ; -C -1 ; WX 667 ; N Emacron ; B 86 0 616 879 ; -C -1 ; WX 500 ; N ccaron ; B 30 -15 477 734 ; -C 229 ; WX 556 ; N aring ; B 36 -15 530 756 ; -C -1 ; WX 722 ; N Ncommaaccent ; B 76 -225 646 718 ; -C -1 ; WX 222 ; N lacute ; B 67 0 264 929 ; -C 224 ; WX 556 ; N agrave ; B 36 -15 530 734 ; -C -1 ; WX 611 ; N Tcommaaccent ; B 14 -225 597 718 ; -C -1 ; WX 722 ; N Cacute ; B 44 -19 681 929 ; -C 227 ; WX 556 ; N atilde ; B 36 -15 530 722 ; -C -1 ; WX 667 ; N Edotaccent ; B 86 0 616 901 ; -C 154 ; WX 500 ; N scaron ; B 32 -15 464 734 ; -C -1 ; WX 500 ; N scedilla ; B 32 -225 464 538 ; -C 237 ; WX 278 ; N iacute ; B 95 0 292 734 ; -C -1 ; WX 471 ; N lozenge ; B 10 0 462 728 ; -C -1 ; WX 722 ; N Rcaron ; B 88 0 684 929 ; -C -1 ; WX 778 ; N Gcommaaccent ; B 48 -225 704 737 ; -C 251 ; WX 556 ; N ucircumflex ; B 68 -15 489 734 ; -C 226 ; WX 556 ; N acircumflex ; B 36 -15 530 734 ; -C -1 ; WX 667 ; N Amacron ; B 14 0 654 879 ; -C -1 ; WX 333 ; N rcaron ; B 61 0 352 734 ; -C 231 ; WX 500 ; N ccedilla ; B 30 -225 477 538 ; -C -1 ; WX 611 ; N Zdotaccent ; B 23 0 588 901 ; -C 222 ; WX 667 ; N Thorn ; B 86 0 622 718 ; -C -1 ; WX 778 ; N Omacron ; B 39 -19 739 879 ; -C -1 ; WX 722 ; N Racute ; B 88 0 684 929 ; -C -1 ; WX 667 ; N Sacute ; B 49 -19 620 929 ; -C -1 ; WX 643 ; N dcaron ; B 35 -15 655 718 ; -C -1 ; WX 722 ; N Umacron ; B 79 -19 644 879 ; -C -1 ; WX 556 ; N uring ; B 68 -15 489 756 ; -C 179 ; WX 333 ; N threesuperior ; B 5 270 325 703 ; -C 210 ; WX 778 ; N Ograve ; B 39 -19 739 929 ; -C 192 ; WX 667 ; N Agrave ; B 14 0 654 929 ; -C -1 ; WX 667 ; N Abreve ; B 14 0 654 926 ; -C 215 ; WX 584 ; N multiply ; B 39 0 545 506 ; -C 250 ; WX 556 ; N uacute ; B 68 -15 489 734 ; -C -1 ; WX 611 ; N Tcaron ; B 14 0 597 929 ; -C -1 ; WX 476 ; N partialdiff ; B 13 -38 463 714 ; -C 255 ; WX 500 ; N ydieresis ; B 11 -214 489 706 ; -C -1 ; WX 722 ; N Nacute ; B 76 0 646 929 ; -C 238 ; WX 278 ; N icircumflex ; B -6 0 285 734 ; -C 202 ; WX 667 ; N Ecircumflex ; B 86 0 616 929 ; -C 228 ; WX 556 ; N adieresis ; B 36 -15 530 706 ; -C 235 ; WX 556 ; N edieresis ; B 40 -15 516 706 ; -C -1 ; WX 500 ; N cacute ; B 30 -15 477 734 ; -C -1 ; WX 556 ; N nacute ; B 65 0 491 734 ; -C -1 ; WX 556 ; N umacron ; B 68 -15 489 684 ; -C -1 ; WX 722 ; N Ncaron ; B 76 0 646 929 ; -C 205 ; WX 278 ; N Iacute ; B 91 0 292 929 ; -C 177 ; WX 584 ; N plusminus ; B 39 0 545 506 ; -C 166 ; WX 260 ; N brokenbar ; B 94 -150 167 700 ; -C 174 ; WX 737 ; N registered ; B -14 -19 752 737 ; -C -1 ; WX 778 ; N Gbreve ; B 48 -19 704 926 ; -C -1 ; WX 278 ; N Idotaccent ; B 91 0 188 901 ; -C -1 ; WX 600 ; N summation ; B 15 -10 586 706 ; -C 200 ; WX 667 ; N Egrave ; B 86 0 616 929 ; -C -1 ; WX 333 ; N racute ; B 77 0 332 734 ; -C -1 ; WX 556 ; N omacron ; B 35 -14 521 684 ; -C -1 ; WX 611 ; N Zacute ; B 23 0 588 929 ; -C 142 ; WX 611 ; N Zcaron ; B 23 0 588 929 ; -C -1 ; WX 549 ; N greaterequal ; B 26 0 523 674 ; -C 208 ; WX 722 ; N Eth ; B 0 0 674 718 ; -C 199 ; WX 722 ; N Ccedilla ; B 44 -225 681 737 ; -C -1 ; WX 222 ; N lcommaaccent ; B 67 -225 167 718 ; -C -1 ; WX 317 ; N tcaron ; B 14 -7 329 808 ; -C -1 ; WX 556 ; N eogonek ; B 40 -225 516 538 ; -C -1 ; WX 722 ; N Uogonek ; B 79 -225 644 718 ; -C 193 ; WX 667 ; N Aacute ; B 14 0 654 929 ; -C 196 ; WX 667 ; N Adieresis ; B 14 0 654 901 ; -C 232 ; WX 556 ; N egrave ; B 40 -15 516 734 ; -C -1 ; WX 500 ; N zacute ; B 31 0 469 734 ; -C -1 ; WX 222 ; N iogonek ; B -31 -225 183 718 ; -C 211 ; WX 778 ; N Oacute ; B 39 -19 739 929 ; -C 243 ; WX 556 ; N oacute ; B 35 -14 521 734 ; -C -1 ; WX 556 ; N amacron ; B 36 -15 530 684 ; -C -1 ; WX 500 ; N sacute ; B 32 -15 464 734 ; -C 239 ; WX 278 ; N idieresis ; B 13 0 266 706 ; -C 212 ; WX 778 ; N Ocircumflex ; B 39 -19 739 929 ; -C 217 ; WX 722 ; N Ugrave ; B 79 -19 644 929 ; -C -1 ; WX 612 ; N Delta ; B 6 0 608 688 ; -C 254 ; WX 556 ; N thorn ; B 58 -207 517 718 ; -C 178 ; WX 333 ; N twosuperior ; B 4 281 323 703 ; -C 214 ; WX 778 ; N Odieresis ; B 39 -19 739 901 ; -C 181 ; WX 556 ; N mu ; B 68 -207 489 523 ; -C 236 ; WX 278 ; N igrave ; B -13 0 184 734 ; -C -1 ; WX 556 ; N ohungarumlaut ; B 35 -14 521 734 ; -C -1 ; WX 667 ; N Eogonek ; B 86 -220 633 718 ; -C -1 ; WX 556 ; N dcroat ; B 35 -15 550 718 ; -C 190 ; WX 834 ; N threequarters ; B 45 -19 810 703 ; -C -1 ; WX 667 ; N Scedilla ; B 49 -225 620 737 ; -C -1 ; WX 299 ; N lcaron ; B 67 0 311 718 ; -C -1 ; WX 667 ; N Kcommaaccent ; B 76 -225 663 718 ; -C -1 ; WX 556 ; N Lacute ; B 76 0 537 929 ; -C 153 ; WX 1000 ; N trademark ; B 46 306 903 718 ; -C -1 ; WX 556 ; N edotaccent ; B 40 -15 516 706 ; -C 204 ; WX 278 ; N Igrave ; B -13 0 188 929 ; -C -1 ; WX 278 ; N Imacron ; B -17 0 296 879 ; -C -1 ; WX 556 ; N Lcaron ; B 76 0 537 718 ; -C 189 ; WX 834 ; N onehalf ; B 43 -19 773 703 ; -C -1 ; WX 549 ; N lessequal ; B 26 0 523 674 ; -C 244 ; WX 556 ; N ocircumflex ; B 35 -14 521 734 ; -C 241 ; WX 556 ; N ntilde ; B 65 0 491 722 ; -C -1 ; WX 722 ; N Uhungarumlaut ; B 79 -19 644 929 ; -C 201 ; WX 667 ; N Eacute ; B 86 0 616 929 ; -C -1 ; WX 556 ; N emacron ; B 40 -15 516 684 ; -C -1 ; WX 556 ; N gbreve ; B 40 -220 499 731 ; -C 188 ; WX 834 ; N onequarter ; B 73 -19 756 703 ; -C 138 ; WX 667 ; N Scaron ; B 49 -19 620 929 ; -C -1 ; WX 667 ; N Scommaaccent ; B 49 -225 620 737 ; -C -1 ; WX 778 ; N Ohungarumlaut ; B 39 -19 739 929 ; -C 176 ; WX 400 ; N degree ; B 54 411 346 703 ; -C 242 ; WX 556 ; N ograve ; B 35 -14 521 734 ; -C -1 ; WX 722 ; N Ccaron ; B 44 -19 681 929 ; -C 249 ; WX 556 ; N ugrave ; B 68 -15 489 734 ; -C -1 ; WX 453 ; N radical ; B -4 -80 458 762 ; -C -1 ; WX 722 ; N Dcaron ; B 81 0 674 929 ; -C -1 ; WX 333 ; N rcommaaccent ; B 77 -225 332 538 ; -C 209 ; WX 722 ; N Ntilde ; B 76 0 646 917 ; -C 245 ; WX 556 ; N otilde ; B 35 -14 521 722 ; -C -1 ; WX 722 ; N Rcommaaccent ; B 88 -225 684 718 ; -C -1 ; WX 556 ; N Lcommaaccent ; B 76 -225 537 718 ; -C 195 ; WX 667 ; N Atilde ; B 14 0 654 917 ; -C -1 ; WX 667 ; N Aogonek ; B 14 -225 654 718 ; -C 197 ; WX 667 ; N Aring ; B 14 0 654 931 ; -C 213 ; WX 778 ; N Otilde ; B 39 -19 739 917 ; -C -1 ; WX 500 ; N zdotaccent ; B 31 0 469 706 ; -C -1 ; WX 667 ; N Ecaron ; B 86 0 616 929 ; -C -1 ; WX 278 ; N Iogonek ; B -3 -225 211 718 ; -C -1 ; WX 500 ; N kcommaaccent ; B 67 -225 501 718 ; -C -1 ; WX 584 ; N minus ; B 39 216 545 289 ; -C 206 ; WX 278 ; N Icircumflex ; B -6 0 285 929 ; -C -1 ; WX 556 ; N ncaron ; B 65 0 491 734 ; -C -1 ; WX 278 ; N tcommaaccent ; B 14 -225 257 669 ; -C 172 ; WX 584 ; N logicalnot ; B 39 108 545 390 ; -C 246 ; WX 556 ; N odieresis ; B 35 -14 521 706 ; -C 252 ; WX 556 ; N udieresis ; B 68 -15 489 706 ; -C -1 ; WX 549 ; N notequal ; B 12 -35 537 551 ; -C -1 ; WX 556 ; N gcommaaccent ; B 40 -220 499 822 ; -C 240 ; WX 556 ; N eth ; B 35 -15 522 737 ; -C 158 ; WX 500 ; N zcaron ; B 31 0 469 734 ; -C -1 ; WX 556 ; N ncommaaccent ; B 65 -225 491 538 ; -C 185 ; WX 333 ; N onesuperior ; B 43 281 222 703 ; -C -1 ; WX 278 ; N imacron ; B 5 0 272 684 ; -C 128 ; WX 556 ; N Euro ; B 0 0 0 0 ; -EndCharMetrics -StartKernData -StartKernPairs 2705 -KPX A C -30 -KPX A Cacute -30 -KPX A Ccaron -30 -KPX A Ccedilla -30 -KPX A G -30 -KPX A Gbreve -30 -KPX A Gcommaaccent -30 -KPX A O -30 -KPX A Oacute -30 -KPX A Ocircumflex -30 -KPX A Odieresis -30 -KPX A Ograve -30 -KPX A Ohungarumlaut -30 -KPX A Omacron -30 -KPX A Oslash -30 -KPX A Otilde -30 -KPX A Q -30 -KPX A T -120 -KPX A Tcaron -120 -KPX A Tcommaaccent -120 -KPX A U -50 -KPX A Uacute -50 -KPX A Ucircumflex -50 -KPX A Udieresis -50 -KPX A Ugrave -50 -KPX A Uhungarumlaut -50 -KPX A Umacron -50 -KPX A Uogonek -50 -KPX A Uring -50 -KPX A V -70 -KPX A W -50 -KPX A Y -100 -KPX A Yacute -100 -KPX A Ydieresis -100 -KPX A u -30 -KPX A uacute -30 -KPX A ucircumflex -30 -KPX A udieresis -30 -KPX A ugrave -30 -KPX A uhungarumlaut -30 -KPX A umacron -30 -KPX A uogonek -30 -KPX A uring -30 -KPX A v -40 -KPX A w -40 -KPX A y -40 -KPX A yacute -40 -KPX A ydieresis -40 -KPX Aacute C -30 -KPX Aacute Cacute -30 -KPX Aacute Ccaron -30 -KPX Aacute Ccedilla -30 -KPX Aacute G -30 -KPX Aacute Gbreve -30 -KPX Aacute Gcommaaccent -30 -KPX Aacute O -30 -KPX Aacute Oacute -30 -KPX Aacute Ocircumflex -30 -KPX Aacute Odieresis -30 -KPX Aacute Ograve -30 -KPX Aacute Ohungarumlaut -30 -KPX Aacute Omacron -30 -KPX Aacute Oslash -30 -KPX Aacute Otilde -30 -KPX Aacute Q -30 -KPX Aacute T -120 -KPX Aacute Tcaron -120 -KPX Aacute Tcommaaccent -120 -KPX Aacute U -50 -KPX Aacute Uacute -50 -KPX Aacute Ucircumflex -50 -KPX Aacute Udieresis -50 -KPX Aacute Ugrave -50 -KPX Aacute Uhungarumlaut -50 -KPX Aacute Umacron -50 -KPX Aacute Uogonek -50 -KPX Aacute Uring -50 -KPX Aacute V -70 -KPX Aacute W -50 -KPX Aacute Y -100 -KPX Aacute Yacute -100 -KPX Aacute Ydieresis -100 -KPX Aacute u -30 -KPX Aacute uacute -30 -KPX Aacute ucircumflex -30 -KPX Aacute udieresis -30 -KPX Aacute ugrave -30 -KPX Aacute uhungarumlaut -30 -KPX Aacute umacron -30 -KPX Aacute uogonek -30 -KPX Aacute uring -30 -KPX Aacute v -40 -KPX Aacute w -40 -KPX Aacute y -40 -KPX Aacute yacute -40 -KPX Aacute ydieresis -40 -KPX Abreve C -30 -KPX Abreve Cacute -30 -KPX Abreve Ccaron -30 -KPX Abreve Ccedilla -30 -KPX Abreve G -30 -KPX Abreve Gbreve -30 -KPX Abreve Gcommaaccent -30 -KPX Abreve O -30 -KPX Abreve Oacute -30 -KPX Abreve Ocircumflex -30 -KPX Abreve Odieresis -30 -KPX Abreve Ograve -30 -KPX Abreve Ohungarumlaut -30 -KPX Abreve Omacron -30 -KPX Abreve Oslash -30 -KPX Abreve Otilde -30 -KPX Abreve Q -30 -KPX Abreve T -120 -KPX Abreve Tcaron -120 -KPX Abreve Tcommaaccent -120 -KPX Abreve U -50 -KPX Abreve Uacute -50 -KPX Abreve Ucircumflex -50 -KPX Abreve Udieresis -50 -KPX Abreve Ugrave -50 -KPX Abreve Uhungarumlaut -50 -KPX Abreve Umacron -50 -KPX Abreve Uogonek -50 -KPX Abreve Uring -50 -KPX Abreve V -70 -KPX Abreve W -50 -KPX Abreve Y -100 -KPX Abreve Yacute -100 -KPX Abreve Ydieresis -100 -KPX Abreve u -30 -KPX Abreve uacute -30 -KPX Abreve ucircumflex -30 -KPX Abreve udieresis -30 -KPX Abreve ugrave -30 -KPX Abreve uhungarumlaut -30 -KPX Abreve umacron -30 -KPX Abreve uogonek -30 -KPX Abreve uring -30 -KPX Abreve v -40 -KPX Abreve w -40 -KPX Abreve y -40 -KPX Abreve yacute -40 -KPX Abreve ydieresis -40 -KPX Acircumflex C -30 -KPX Acircumflex Cacute -30 -KPX Acircumflex Ccaron -30 -KPX Acircumflex Ccedilla -30 -KPX Acircumflex G -30 -KPX Acircumflex Gbreve -30 -KPX Acircumflex Gcommaaccent -30 -KPX Acircumflex O -30 -KPX Acircumflex Oacute -30 -KPX Acircumflex Ocircumflex -30 -KPX Acircumflex Odieresis -30 -KPX Acircumflex Ograve -30 -KPX Acircumflex Ohungarumlaut -30 -KPX Acircumflex Omacron -30 -KPX Acircumflex Oslash -30 -KPX Acircumflex Otilde -30 -KPX Acircumflex Q -30 -KPX Acircumflex T -120 -KPX Acircumflex Tcaron -120 -KPX Acircumflex Tcommaaccent -120 -KPX Acircumflex U -50 -KPX Acircumflex Uacute -50 -KPX Acircumflex Ucircumflex -50 -KPX Acircumflex Udieresis -50 -KPX Acircumflex Ugrave -50 -KPX Acircumflex Uhungarumlaut -50 -KPX Acircumflex Umacron -50 -KPX Acircumflex Uogonek -50 -KPX Acircumflex Uring -50 -KPX Acircumflex V -70 -KPX Acircumflex W -50 -KPX Acircumflex Y -100 -KPX Acircumflex Yacute -100 -KPX Acircumflex Ydieresis -100 -KPX Acircumflex u -30 -KPX Acircumflex uacute -30 -KPX Acircumflex ucircumflex -30 -KPX Acircumflex udieresis -30 -KPX Acircumflex ugrave -30 -KPX Acircumflex uhungarumlaut -30 -KPX Acircumflex umacron -30 -KPX Acircumflex uogonek -30 -KPX Acircumflex uring -30 -KPX Acircumflex v -40 -KPX Acircumflex w -40 -KPX Acircumflex y -40 -KPX Acircumflex yacute -40 -KPX Acircumflex ydieresis -40 -KPX Adieresis C -30 -KPX Adieresis Cacute -30 -KPX Adieresis Ccaron -30 -KPX Adieresis Ccedilla -30 -KPX Adieresis G -30 -KPX Adieresis Gbreve -30 -KPX Adieresis Gcommaaccent -30 -KPX Adieresis O -30 -KPX Adieresis Oacute -30 -KPX Adieresis Ocircumflex -30 -KPX Adieresis Odieresis -30 -KPX Adieresis Ograve -30 -KPX Adieresis Ohungarumlaut -30 -KPX Adieresis Omacron -30 -KPX Adieresis Oslash -30 -KPX Adieresis Otilde -30 -KPX Adieresis Q -30 -KPX Adieresis T -120 -KPX Adieresis Tcaron -120 -KPX Adieresis Tcommaaccent -120 -KPX Adieresis U -50 -KPX Adieresis Uacute -50 -KPX Adieresis Ucircumflex -50 -KPX Adieresis Udieresis -50 -KPX Adieresis Ugrave -50 -KPX Adieresis Uhungarumlaut -50 -KPX Adieresis Umacron -50 -KPX Adieresis Uogonek -50 -KPX Adieresis Uring -50 -KPX Adieresis V -70 -KPX Adieresis W -50 -KPX Adieresis Y -100 -KPX Adieresis Yacute -100 -KPX Adieresis Ydieresis -100 -KPX Adieresis u -30 -KPX Adieresis uacute -30 -KPX Adieresis ucircumflex -30 -KPX Adieresis udieresis -30 -KPX Adieresis ugrave -30 -KPX Adieresis uhungarumlaut -30 -KPX Adieresis umacron -30 -KPX Adieresis uogonek -30 -KPX Adieresis uring -30 -KPX Adieresis v -40 -KPX Adieresis w -40 -KPX Adieresis y -40 -KPX Adieresis yacute -40 -KPX Adieresis ydieresis -40 -KPX Agrave C -30 -KPX Agrave Cacute -30 -KPX Agrave Ccaron -30 -KPX Agrave Ccedilla -30 -KPX Agrave G -30 -KPX Agrave Gbreve -30 -KPX Agrave Gcommaaccent -30 -KPX Agrave O -30 -KPX Agrave Oacute -30 -KPX Agrave Ocircumflex -30 -KPX Agrave Odieresis -30 -KPX Agrave Ograve -30 -KPX Agrave Ohungarumlaut -30 -KPX Agrave Omacron -30 -KPX Agrave Oslash -30 -KPX Agrave Otilde -30 -KPX Agrave Q -30 -KPX Agrave T -120 -KPX Agrave Tcaron -120 -KPX Agrave Tcommaaccent -120 -KPX Agrave U -50 -KPX Agrave Uacute -50 -KPX Agrave Ucircumflex -50 -KPX Agrave Udieresis -50 -KPX Agrave Ugrave -50 -KPX Agrave Uhungarumlaut -50 -KPX Agrave Umacron -50 -KPX Agrave Uogonek -50 -KPX Agrave Uring -50 -KPX Agrave V -70 -KPX Agrave W -50 -KPX Agrave Y -100 -KPX Agrave Yacute -100 -KPX Agrave Ydieresis -100 -KPX Agrave u -30 -KPX Agrave uacute -30 -KPX Agrave ucircumflex -30 -KPX Agrave udieresis -30 -KPX Agrave ugrave -30 -KPX Agrave uhungarumlaut -30 -KPX Agrave umacron -30 -KPX Agrave uogonek -30 -KPX Agrave uring -30 -KPX Agrave v -40 -KPX Agrave w -40 -KPX Agrave y -40 -KPX Agrave yacute -40 -KPX Agrave ydieresis -40 -KPX Amacron C -30 -KPX Amacron Cacute -30 -KPX Amacron Ccaron -30 -KPX Amacron Ccedilla -30 -KPX Amacron G -30 -KPX Amacron Gbreve -30 -KPX Amacron Gcommaaccent -30 -KPX Amacron O -30 -KPX Amacron Oacute -30 -KPX Amacron Ocircumflex -30 -KPX Amacron Odieresis -30 -KPX Amacron Ograve -30 -KPX Amacron Ohungarumlaut -30 -KPX Amacron Omacron -30 -KPX Amacron Oslash -30 -KPX Amacron Otilde -30 -KPX Amacron Q -30 -KPX Amacron T -120 -KPX Amacron Tcaron -120 -KPX Amacron Tcommaaccent -120 -KPX Amacron U -50 -KPX Amacron Uacute -50 -KPX Amacron Ucircumflex -50 -KPX Amacron Udieresis -50 -KPX Amacron Ugrave -50 -KPX Amacron Uhungarumlaut -50 -KPX Amacron Umacron -50 -KPX Amacron Uogonek -50 -KPX Amacron Uring -50 -KPX Amacron V -70 -KPX Amacron W -50 -KPX Amacron Y -100 -KPX Amacron Yacute -100 -KPX Amacron Ydieresis -100 -KPX Amacron u -30 -KPX Amacron uacute -30 -KPX Amacron ucircumflex -30 -KPX Amacron udieresis -30 -KPX Amacron ugrave -30 -KPX Amacron uhungarumlaut -30 -KPX Amacron umacron -30 -KPX Amacron uogonek -30 -KPX Amacron uring -30 -KPX Amacron v -40 -KPX Amacron w -40 -KPX Amacron y -40 -KPX Amacron yacute -40 -KPX Amacron ydieresis -40 -KPX Aogonek C -30 -KPX Aogonek Cacute -30 -KPX Aogonek Ccaron -30 -KPX Aogonek Ccedilla -30 -KPX Aogonek G -30 -KPX Aogonek Gbreve -30 -KPX Aogonek Gcommaaccent -30 -KPX Aogonek O -30 -KPX Aogonek Oacute -30 -KPX Aogonek Ocircumflex -30 -KPX Aogonek Odieresis -30 -KPX Aogonek Ograve -30 -KPX Aogonek Ohungarumlaut -30 -KPX Aogonek Omacron -30 -KPX Aogonek Oslash -30 -KPX Aogonek Otilde -30 -KPX Aogonek Q -30 -KPX Aogonek T -120 -KPX Aogonek Tcaron -120 -KPX Aogonek Tcommaaccent -120 -KPX Aogonek U -50 -KPX Aogonek Uacute -50 -KPX Aogonek Ucircumflex -50 -KPX Aogonek Udieresis -50 -KPX Aogonek Ugrave -50 -KPX Aogonek Uhungarumlaut -50 -KPX Aogonek Umacron -50 -KPX Aogonek Uogonek -50 -KPX Aogonek Uring -50 -KPX Aogonek V -70 -KPX Aogonek W -50 -KPX Aogonek Y -100 -KPX Aogonek Yacute -100 -KPX Aogonek Ydieresis -100 -KPX Aogonek u -30 -KPX Aogonek uacute -30 -KPX Aogonek ucircumflex -30 -KPX Aogonek udieresis -30 -KPX Aogonek ugrave -30 -KPX Aogonek uhungarumlaut -30 -KPX Aogonek umacron -30 -KPX Aogonek uogonek -30 -KPX Aogonek uring -30 -KPX Aogonek v -40 -KPX Aogonek w -40 -KPX Aogonek y -40 -KPX Aogonek yacute -40 -KPX Aogonek ydieresis -40 -KPX Aring C -30 -KPX Aring Cacute -30 -KPX Aring Ccaron -30 -KPX Aring Ccedilla -30 -KPX Aring G -30 -KPX Aring Gbreve -30 -KPX Aring Gcommaaccent -30 -KPX Aring O -30 -KPX Aring Oacute -30 -KPX Aring Ocircumflex -30 -KPX Aring Odieresis -30 -KPX Aring Ograve -30 -KPX Aring Ohungarumlaut -30 -KPX Aring Omacron -30 -KPX Aring Oslash -30 -KPX Aring Otilde -30 -KPX Aring Q -30 -KPX Aring T -120 -KPX Aring Tcaron -120 -KPX Aring Tcommaaccent -120 -KPX Aring U -50 -KPX Aring Uacute -50 -KPX Aring Ucircumflex -50 -KPX Aring Udieresis -50 -KPX Aring Ugrave -50 -KPX Aring Uhungarumlaut -50 -KPX Aring Umacron -50 -KPX Aring Uogonek -50 -KPX Aring Uring -50 -KPX Aring V -70 -KPX Aring W -50 -KPX Aring Y -100 -KPX Aring Yacute -100 -KPX Aring Ydieresis -100 -KPX Aring u -30 -KPX Aring uacute -30 -KPX Aring ucircumflex -30 -KPX Aring udieresis -30 -KPX Aring ugrave -30 -KPX Aring uhungarumlaut -30 -KPX Aring umacron -30 -KPX Aring uogonek -30 -KPX Aring uring -30 -KPX Aring v -40 -KPX Aring w -40 -KPX Aring y -40 -KPX Aring yacute -40 -KPX Aring ydieresis -40 -KPX Atilde C -30 -KPX Atilde Cacute -30 -KPX Atilde Ccaron -30 -KPX Atilde Ccedilla -30 -KPX Atilde G -30 -KPX Atilde Gbreve -30 -KPX Atilde Gcommaaccent -30 -KPX Atilde O -30 -KPX Atilde Oacute -30 -KPX Atilde Ocircumflex -30 -KPX Atilde Odieresis -30 -KPX Atilde Ograve -30 -KPX Atilde Ohungarumlaut -30 -KPX Atilde Omacron -30 -KPX Atilde Oslash -30 -KPX Atilde Otilde -30 -KPX Atilde Q -30 -KPX Atilde T -120 -KPX Atilde Tcaron -120 -KPX Atilde Tcommaaccent -120 -KPX Atilde U -50 -KPX Atilde Uacute -50 -KPX Atilde Ucircumflex -50 -KPX Atilde Udieresis -50 -KPX Atilde Ugrave -50 -KPX Atilde Uhungarumlaut -50 -KPX Atilde Umacron -50 -KPX Atilde Uogonek -50 -KPX Atilde Uring -50 -KPX Atilde V -70 -KPX Atilde W -50 -KPX Atilde Y -100 -KPX Atilde Yacute -100 -KPX Atilde Ydieresis -100 -KPX Atilde u -30 -KPX Atilde uacute -30 -KPX Atilde ucircumflex -30 -KPX Atilde udieresis -30 -KPX Atilde ugrave -30 -KPX Atilde uhungarumlaut -30 -KPX Atilde umacron -30 -KPX Atilde uogonek -30 -KPX Atilde uring -30 -KPX Atilde v -40 -KPX Atilde w -40 -KPX Atilde y -40 -KPX Atilde yacute -40 -KPX Atilde ydieresis -40 -KPX B U -10 -KPX B Uacute -10 -KPX B Ucircumflex -10 -KPX B Udieresis -10 -KPX B Ugrave -10 -KPX B Uhungarumlaut -10 -KPX B Umacron -10 -KPX B Uogonek -10 -KPX B Uring -10 -KPX B comma -20 -KPX B period -20 -KPX C comma -30 -KPX C period -30 -KPX Cacute comma -30 -KPX Cacute period -30 -KPX Ccaron comma -30 -KPX Ccaron period -30 -KPX Ccedilla comma -30 -KPX Ccedilla period -30 -KPX D A -40 -KPX D Aacute -40 -KPX D Abreve -40 -KPX D Acircumflex -40 -KPX D Adieresis -40 -KPX D Agrave -40 -KPX D Amacron -40 -KPX D Aogonek -40 -KPX D Aring -40 -KPX D Atilde -40 -KPX D V -70 -KPX D W -40 -KPX D Y -90 -KPX D Yacute -90 -KPX D Ydieresis -90 -KPX D comma -70 -KPX D period -70 -KPX Dcaron A -40 -KPX Dcaron Aacute -40 -KPX Dcaron Abreve -40 -KPX Dcaron Acircumflex -40 -KPX Dcaron Adieresis -40 -KPX Dcaron Agrave -40 -KPX Dcaron Amacron -40 -KPX Dcaron Aogonek -40 -KPX Dcaron Aring -40 -KPX Dcaron Atilde -40 -KPX Dcaron V -70 -KPX Dcaron W -40 -KPX Dcaron Y -90 -KPX Dcaron Yacute -90 -KPX Dcaron Ydieresis -90 -KPX Dcaron comma -70 -KPX Dcaron period -70 -KPX Dcroat A -40 -KPX Dcroat Aacute -40 -KPX Dcroat Abreve -40 -KPX Dcroat Acircumflex -40 -KPX Dcroat Adieresis -40 -KPX Dcroat Agrave -40 -KPX Dcroat Amacron -40 -KPX Dcroat Aogonek -40 -KPX Dcroat Aring -40 -KPX Dcroat Atilde -40 -KPX Dcroat V -70 -KPX Dcroat W -40 -KPX Dcroat Y -90 -KPX Dcroat Yacute -90 -KPX Dcroat Ydieresis -90 -KPX Dcroat comma -70 -KPX Dcroat period -70 -KPX F A -80 -KPX F Aacute -80 -KPX F Abreve -80 -KPX F Acircumflex -80 -KPX F Adieresis -80 -KPX F Agrave -80 -KPX F Amacron -80 -KPX F Aogonek -80 -KPX F Aring -80 -KPX F Atilde -80 -KPX F a -50 -KPX F aacute -50 -KPX F abreve -50 -KPX F acircumflex -50 -KPX F adieresis -50 -KPX F agrave -50 -KPX F amacron -50 -KPX F aogonek -50 -KPX F aring -50 -KPX F atilde -50 -KPX F comma -150 -KPX F e -30 -KPX F eacute -30 -KPX F ecaron -30 -KPX F ecircumflex -30 -KPX F edieresis -30 -KPX F edotaccent -30 -KPX F egrave -30 -KPX F emacron -30 -KPX F eogonek -30 -KPX F o -30 -KPX F oacute -30 -KPX F ocircumflex -30 -KPX F odieresis -30 -KPX F ograve -30 -KPX F ohungarumlaut -30 -KPX F omacron -30 -KPX F oslash -30 -KPX F otilde -30 -KPX F period -150 -KPX F r -45 -KPX F racute -45 -KPX F rcaron -45 -KPX F rcommaaccent -45 -KPX J A -20 -KPX J Aacute -20 -KPX J Abreve -20 -KPX J Acircumflex -20 -KPX J Adieresis -20 -KPX J Agrave -20 -KPX J Amacron -20 -KPX J Aogonek -20 -KPX J Aring -20 -KPX J Atilde -20 -KPX J a -20 -KPX J aacute -20 -KPX J abreve -20 -KPX J acircumflex -20 -KPX J adieresis -20 -KPX J agrave -20 -KPX J amacron -20 -KPX J aogonek -20 -KPX J aring -20 -KPX J atilde -20 -KPX J comma -30 -KPX J period -30 -KPX J u -20 -KPX J uacute -20 -KPX J ucircumflex -20 -KPX J udieresis -20 -KPX J ugrave -20 -KPX J uhungarumlaut -20 -KPX J umacron -20 -KPX J uogonek -20 -KPX J uring -20 -KPX K O -50 -KPX K Oacute -50 -KPX K Ocircumflex -50 -KPX K Odieresis -50 -KPX K Ograve -50 -KPX K Ohungarumlaut -50 -KPX K Omacron -50 -KPX K Oslash -50 -KPX K Otilde -50 -KPX K e -40 -KPX K eacute -40 -KPX K ecaron -40 -KPX K ecircumflex -40 -KPX K edieresis -40 -KPX K edotaccent -40 -KPX K egrave -40 -KPX K emacron -40 -KPX K eogonek -40 -KPX K o -40 -KPX K oacute -40 -KPX K ocircumflex -40 -KPX K odieresis -40 -KPX K ograve -40 -KPX K ohungarumlaut -40 -KPX K omacron -40 -KPX K oslash -40 -KPX K otilde -40 -KPX K u -30 -KPX K uacute -30 -KPX K ucircumflex -30 -KPX K udieresis -30 -KPX K ugrave -30 -KPX K uhungarumlaut -30 -KPX K umacron -30 -KPX K uogonek -30 -KPX K uring -30 -KPX K y -50 -KPX K yacute -50 -KPX K ydieresis -50 -KPX Kcommaaccent O -50 -KPX Kcommaaccent Oacute -50 -KPX Kcommaaccent Ocircumflex -50 -KPX Kcommaaccent Odieresis -50 -KPX Kcommaaccent Ograve -50 -KPX Kcommaaccent Ohungarumlaut -50 -KPX Kcommaaccent Omacron -50 -KPX Kcommaaccent Oslash -50 -KPX Kcommaaccent Otilde -50 -KPX Kcommaaccent e -40 -KPX Kcommaaccent eacute -40 -KPX Kcommaaccent ecaron -40 -KPX Kcommaaccent ecircumflex -40 -KPX Kcommaaccent edieresis -40 -KPX Kcommaaccent edotaccent -40 -KPX Kcommaaccent egrave -40 -KPX Kcommaaccent emacron -40 -KPX Kcommaaccent eogonek -40 -KPX Kcommaaccent o -40 -KPX Kcommaaccent oacute -40 -KPX Kcommaaccent ocircumflex -40 -KPX Kcommaaccent odieresis -40 -KPX Kcommaaccent ograve -40 -KPX Kcommaaccent ohungarumlaut -40 -KPX Kcommaaccent omacron -40 -KPX Kcommaaccent oslash -40 -KPX Kcommaaccent otilde -40 -KPX Kcommaaccent u -30 -KPX Kcommaaccent uacute -30 -KPX Kcommaaccent ucircumflex -30 -KPX Kcommaaccent udieresis -30 -KPX Kcommaaccent ugrave -30 -KPX Kcommaaccent uhungarumlaut -30 -KPX Kcommaaccent umacron -30 -KPX Kcommaaccent uogonek -30 -KPX Kcommaaccent uring -30 -KPX Kcommaaccent y -50 -KPX Kcommaaccent yacute -50 -KPX Kcommaaccent ydieresis -50 -KPX L T -110 -KPX L Tcaron -110 -KPX L Tcommaaccent -110 -KPX L V -110 -KPX L W -70 -KPX L Y -140 -KPX L Yacute -140 -KPX L Ydieresis -140 -KPX L quotedblright -140 -KPX L quoteright -160 -KPX L y -30 -KPX L yacute -30 -KPX L ydieresis -30 -KPX Lacute T -110 -KPX Lacute Tcaron -110 -KPX Lacute Tcommaaccent -110 -KPX Lacute V -110 -KPX Lacute W -70 -KPX Lacute Y -140 -KPX Lacute Yacute -140 -KPX Lacute Ydieresis -140 -KPX Lacute quotedblright -140 -KPX Lacute quoteright -160 -KPX Lacute y -30 -KPX Lacute yacute -30 -KPX Lacute ydieresis -30 -KPX Lcaron T -110 -KPX Lcaron Tcaron -110 -KPX Lcaron Tcommaaccent -110 -KPX Lcaron V -110 -KPX Lcaron W -70 -KPX Lcaron Y -140 -KPX Lcaron Yacute -140 -KPX Lcaron Ydieresis -140 -KPX Lcaron quotedblright -140 -KPX Lcaron quoteright -160 -KPX Lcaron y -30 -KPX Lcaron yacute -30 -KPX Lcaron ydieresis -30 -KPX Lcommaaccent T -110 -KPX Lcommaaccent Tcaron -110 -KPX Lcommaaccent Tcommaaccent -110 -KPX Lcommaaccent V -110 -KPX Lcommaaccent W -70 -KPX Lcommaaccent Y -140 -KPX Lcommaaccent Yacute -140 -KPX Lcommaaccent Ydieresis -140 -KPX Lcommaaccent quotedblright -140 -KPX Lcommaaccent quoteright -160 -KPX Lcommaaccent y -30 -KPX Lcommaaccent yacute -30 -KPX Lcommaaccent ydieresis -30 -KPX Lslash T -110 -KPX Lslash Tcaron -110 -KPX Lslash Tcommaaccent -110 -KPX Lslash V -110 -KPX Lslash W -70 -KPX Lslash Y -140 -KPX Lslash Yacute -140 -KPX Lslash Ydieresis -140 -KPX Lslash quotedblright -140 -KPX Lslash quoteright -160 -KPX Lslash y -30 -KPX Lslash yacute -30 -KPX Lslash ydieresis -30 -KPX O A -20 -KPX O Aacute -20 -KPX O Abreve -20 -KPX O Acircumflex -20 -KPX O Adieresis -20 -KPX O Agrave -20 -KPX O Amacron -20 -KPX O Aogonek -20 -KPX O Aring -20 -KPX O Atilde -20 -KPX O T -40 -KPX O Tcaron -40 -KPX O Tcommaaccent -40 -KPX O V -50 -KPX O W -30 -KPX O X -60 -KPX O Y -70 -KPX O Yacute -70 -KPX O Ydieresis -70 -KPX O comma -40 -KPX O period -40 -KPX Oacute A -20 -KPX Oacute Aacute -20 -KPX Oacute Abreve -20 -KPX Oacute Acircumflex -20 -KPX Oacute Adieresis -20 -KPX Oacute Agrave -20 -KPX Oacute Amacron -20 -KPX Oacute Aogonek -20 -KPX Oacute Aring -20 -KPX Oacute Atilde -20 -KPX Oacute T -40 -KPX Oacute Tcaron -40 -KPX Oacute Tcommaaccent -40 -KPX Oacute V -50 -KPX Oacute W -30 -KPX Oacute X -60 -KPX Oacute Y -70 -KPX Oacute Yacute -70 -KPX Oacute Ydieresis -70 -KPX Oacute comma -40 -KPX Oacute period -40 -KPX Ocircumflex A -20 -KPX Ocircumflex Aacute -20 -KPX Ocircumflex Abreve -20 -KPX Ocircumflex Acircumflex -20 -KPX Ocircumflex Adieresis -20 -KPX Ocircumflex Agrave -20 -KPX Ocircumflex Amacron -20 -KPX Ocircumflex Aogonek -20 -KPX Ocircumflex Aring -20 -KPX Ocircumflex Atilde -20 -KPX Ocircumflex T -40 -KPX Ocircumflex Tcaron -40 -KPX Ocircumflex Tcommaaccent -40 -KPX Ocircumflex V -50 -KPX Ocircumflex W -30 -KPX Ocircumflex X -60 -KPX Ocircumflex Y -70 -KPX Ocircumflex Yacute -70 -KPX Ocircumflex Ydieresis -70 -KPX Ocircumflex comma -40 -KPX Ocircumflex period -40 -KPX Odieresis A -20 -KPX Odieresis Aacute -20 -KPX Odieresis Abreve -20 -KPX Odieresis Acircumflex -20 -KPX Odieresis Adieresis -20 -KPX Odieresis Agrave -20 -KPX Odieresis Amacron -20 -KPX Odieresis Aogonek -20 -KPX Odieresis Aring -20 -KPX Odieresis Atilde -20 -KPX Odieresis T -40 -KPX Odieresis Tcaron -40 -KPX Odieresis Tcommaaccent -40 -KPX Odieresis V -50 -KPX Odieresis W -30 -KPX Odieresis X -60 -KPX Odieresis Y -70 -KPX Odieresis Yacute -70 -KPX Odieresis Ydieresis -70 -KPX Odieresis comma -40 -KPX Odieresis period -40 -KPX Ograve A -20 -KPX Ograve Aacute -20 -KPX Ograve Abreve -20 -KPX Ograve Acircumflex -20 -KPX Ograve Adieresis -20 -KPX Ograve Agrave -20 -KPX Ograve Amacron -20 -KPX Ograve Aogonek -20 -KPX Ograve Aring -20 -KPX Ograve Atilde -20 -KPX Ograve T -40 -KPX Ograve Tcaron -40 -KPX Ograve Tcommaaccent -40 -KPX Ograve V -50 -KPX Ograve W -30 -KPX Ograve X -60 -KPX Ograve Y -70 -KPX Ograve Yacute -70 -KPX Ograve Ydieresis -70 -KPX Ograve comma -40 -KPX Ograve period -40 -KPX Ohungarumlaut A -20 -KPX Ohungarumlaut Aacute -20 -KPX Ohungarumlaut Abreve -20 -KPX Ohungarumlaut Acircumflex -20 -KPX Ohungarumlaut Adieresis -20 -KPX Ohungarumlaut Agrave -20 -KPX Ohungarumlaut Amacron -20 -KPX Ohungarumlaut Aogonek -20 -KPX Ohungarumlaut Aring -20 -KPX Ohungarumlaut Atilde -20 -KPX Ohungarumlaut T -40 -KPX Ohungarumlaut Tcaron -40 -KPX Ohungarumlaut Tcommaaccent -40 -KPX Ohungarumlaut V -50 -KPX Ohungarumlaut W -30 -KPX Ohungarumlaut X -60 -KPX Ohungarumlaut Y -70 -KPX Ohungarumlaut Yacute -70 -KPX Ohungarumlaut Ydieresis -70 -KPX Ohungarumlaut comma -40 -KPX Ohungarumlaut period -40 -KPX Omacron A -20 -KPX Omacron Aacute -20 -KPX Omacron Abreve -20 -KPX Omacron Acircumflex -20 -KPX Omacron Adieresis -20 -KPX Omacron Agrave -20 -KPX Omacron Amacron -20 -KPX Omacron Aogonek -20 -KPX Omacron Aring -20 -KPX Omacron Atilde -20 -KPX Omacron T -40 -KPX Omacron Tcaron -40 -KPX Omacron Tcommaaccent -40 -KPX Omacron V -50 -KPX Omacron W -30 -KPX Omacron X -60 -KPX Omacron Y -70 -KPX Omacron Yacute -70 -KPX Omacron Ydieresis -70 -KPX Omacron comma -40 -KPX Omacron period -40 -KPX Oslash A -20 -KPX Oslash Aacute -20 -KPX Oslash Abreve -20 -KPX Oslash Acircumflex -20 -KPX Oslash Adieresis -20 -KPX Oslash Agrave -20 -KPX Oslash Amacron -20 -KPX Oslash Aogonek -20 -KPX Oslash Aring -20 -KPX Oslash Atilde -20 -KPX Oslash T -40 -KPX Oslash Tcaron -40 -KPX Oslash Tcommaaccent -40 -KPX Oslash V -50 -KPX Oslash W -30 -KPX Oslash X -60 -KPX Oslash Y -70 -KPX Oslash Yacute -70 -KPX Oslash Ydieresis -70 -KPX Oslash comma -40 -KPX Oslash period -40 -KPX Otilde A -20 -KPX Otilde Aacute -20 -KPX Otilde Abreve -20 -KPX Otilde Acircumflex -20 -KPX Otilde Adieresis -20 -KPX Otilde Agrave -20 -KPX Otilde Amacron -20 -KPX Otilde Aogonek -20 -KPX Otilde Aring -20 -KPX Otilde Atilde -20 -KPX Otilde T -40 -KPX Otilde Tcaron -40 -KPX Otilde Tcommaaccent -40 -KPX Otilde V -50 -KPX Otilde W -30 -KPX Otilde X -60 -KPX Otilde Y -70 -KPX Otilde Yacute -70 -KPX Otilde Ydieresis -70 -KPX Otilde comma -40 -KPX Otilde period -40 -KPX P A -120 -KPX P Aacute -120 -KPX P Abreve -120 -KPX P Acircumflex -120 -KPX P Adieresis -120 -KPX P Agrave -120 -KPX P Amacron -120 -KPX P Aogonek -120 -KPX P Aring -120 -KPX P Atilde -120 -KPX P a -40 -KPX P aacute -40 -KPX P abreve -40 -KPX P acircumflex -40 -KPX P adieresis -40 -KPX P agrave -40 -KPX P amacron -40 -KPX P aogonek -40 -KPX P aring -40 -KPX P atilde -40 -KPX P comma -180 -KPX P e -50 -KPX P eacute -50 -KPX P ecaron -50 -KPX P ecircumflex -50 -KPX P edieresis -50 -KPX P edotaccent -50 -KPX P egrave -50 -KPX P emacron -50 -KPX P eogonek -50 -KPX P o -50 -KPX P oacute -50 -KPX P ocircumflex -50 -KPX P odieresis -50 -KPX P ograve -50 -KPX P ohungarumlaut -50 -KPX P omacron -50 -KPX P oslash -50 -KPX P otilde -50 -KPX P period -180 -KPX Q U -10 -KPX Q Uacute -10 -KPX Q Ucircumflex -10 -KPX Q Udieresis -10 -KPX Q Ugrave -10 -KPX Q Uhungarumlaut -10 -KPX Q Umacron -10 -KPX Q Uogonek -10 -KPX Q Uring -10 -KPX R O -20 -KPX R Oacute -20 -KPX R Ocircumflex -20 -KPX R Odieresis -20 -KPX R Ograve -20 -KPX R Ohungarumlaut -20 -KPX R Omacron -20 -KPX R Oslash -20 -KPX R Otilde -20 -KPX R T -30 -KPX R Tcaron -30 -KPX R Tcommaaccent -30 -KPX R U -40 -KPX R Uacute -40 -KPX R Ucircumflex -40 -KPX R Udieresis -40 -KPX R Ugrave -40 -KPX R Uhungarumlaut -40 -KPX R Umacron -40 -KPX R Uogonek -40 -KPX R Uring -40 -KPX R V -50 -KPX R W -30 -KPX R Y -50 -KPX R Yacute -50 -KPX R Ydieresis -50 -KPX Racute O -20 -KPX Racute Oacute -20 -KPX Racute Ocircumflex -20 -KPX Racute Odieresis -20 -KPX Racute Ograve -20 -KPX Racute Ohungarumlaut -20 -KPX Racute Omacron -20 -KPX Racute Oslash -20 -KPX Racute Otilde -20 -KPX Racute T -30 -KPX Racute Tcaron -30 -KPX Racute Tcommaaccent -30 -KPX Racute U -40 -KPX Racute Uacute -40 -KPX Racute Ucircumflex -40 -KPX Racute Udieresis -40 -KPX Racute Ugrave -40 -KPX Racute Uhungarumlaut -40 -KPX Racute Umacron -40 -KPX Racute Uogonek -40 -KPX Racute Uring -40 -KPX Racute V -50 -KPX Racute W -30 -KPX Racute Y -50 -KPX Racute Yacute -50 -KPX Racute Ydieresis -50 -KPX Rcaron O -20 -KPX Rcaron Oacute -20 -KPX Rcaron Ocircumflex -20 -KPX Rcaron Odieresis -20 -KPX Rcaron Ograve -20 -KPX Rcaron Ohungarumlaut -20 -KPX Rcaron Omacron -20 -KPX Rcaron Oslash -20 -KPX Rcaron Otilde -20 -KPX Rcaron T -30 -KPX Rcaron Tcaron -30 -KPX Rcaron Tcommaaccent -30 -KPX Rcaron U -40 -KPX Rcaron Uacute -40 -KPX Rcaron Ucircumflex -40 -KPX Rcaron Udieresis -40 -KPX Rcaron Ugrave -40 -KPX Rcaron Uhungarumlaut -40 -KPX Rcaron Umacron -40 -KPX Rcaron Uogonek -40 -KPX Rcaron Uring -40 -KPX Rcaron V -50 -KPX Rcaron W -30 -KPX Rcaron Y -50 -KPX Rcaron Yacute -50 -KPX Rcaron Ydieresis -50 -KPX Rcommaaccent O -20 -KPX Rcommaaccent Oacute -20 -KPX Rcommaaccent Ocircumflex -20 -KPX Rcommaaccent Odieresis -20 -KPX Rcommaaccent Ograve -20 -KPX Rcommaaccent Ohungarumlaut -20 -KPX Rcommaaccent Omacron -20 -KPX Rcommaaccent Oslash -20 -KPX Rcommaaccent Otilde -20 -KPX Rcommaaccent T -30 -KPX Rcommaaccent Tcaron -30 -KPX Rcommaaccent Tcommaaccent -30 -KPX Rcommaaccent U -40 -KPX Rcommaaccent Uacute -40 -KPX Rcommaaccent Ucircumflex -40 -KPX Rcommaaccent Udieresis -40 -KPX Rcommaaccent Ugrave -40 -KPX Rcommaaccent Uhungarumlaut -40 -KPX Rcommaaccent Umacron -40 -KPX Rcommaaccent Uogonek -40 -KPX Rcommaaccent Uring -40 -KPX Rcommaaccent V -50 -KPX Rcommaaccent W -30 -KPX Rcommaaccent Y -50 -KPX Rcommaaccent Yacute -50 -KPX Rcommaaccent Ydieresis -50 -KPX S comma -20 -KPX S period -20 -KPX Sacute comma -20 -KPX Sacute period -20 -KPX Scaron comma -20 -KPX Scaron period -20 -KPX Scedilla comma -20 -KPX Scedilla period -20 -KPX Scommaaccent comma -20 -KPX Scommaaccent period -20 -KPX T A -120 -KPX T Aacute -120 -KPX T Abreve -120 -KPX T Acircumflex -120 -KPX T Adieresis -120 -KPX T Agrave -120 -KPX T Amacron -120 -KPX T Aogonek -120 -KPX T Aring -120 -KPX T Atilde -120 -KPX T O -40 -KPX T Oacute -40 -KPX T Ocircumflex -40 -KPX T Odieresis -40 -KPX T Ograve -40 -KPX T Ohungarumlaut -40 -KPX T Omacron -40 -KPX T Oslash -40 -KPX T Otilde -40 -KPX T a -120 -KPX T aacute -120 -KPX T abreve -60 -KPX T acircumflex -120 -KPX T adieresis -120 -KPX T agrave -120 -KPX T amacron -60 -KPX T aogonek -120 -KPX T aring -120 -KPX T atilde -60 -KPX T colon -20 -KPX T comma -120 -KPX T e -120 -KPX T eacute -120 -KPX T ecaron -120 -KPX T ecircumflex -120 -KPX T edieresis -120 -KPX T edotaccent -120 -KPX T egrave -60 -KPX T emacron -60 -KPX T eogonek -120 -KPX T hyphen -140 -KPX T o -120 -KPX T oacute -120 -KPX T ocircumflex -120 -KPX T odieresis -120 -KPX T ograve -120 -KPX T ohungarumlaut -120 -KPX T omacron -60 -KPX T oslash -120 -KPX T otilde -60 -KPX T period -120 -KPX T r -120 -KPX T racute -120 -KPX T rcaron -120 -KPX T rcommaaccent -120 -KPX T semicolon -20 -KPX T u -120 -KPX T uacute -120 -KPX T ucircumflex -120 -KPX T udieresis -120 -KPX T ugrave -120 -KPX T uhungarumlaut -120 -KPX T umacron -60 -KPX T uogonek -120 -KPX T uring -120 -KPX T w -120 -KPX T y -120 -KPX T yacute -120 -KPX T ydieresis -60 -KPX Tcaron A -120 -KPX Tcaron Aacute -120 -KPX Tcaron Abreve -120 -KPX Tcaron Acircumflex -120 -KPX Tcaron Adieresis -120 -KPX Tcaron Agrave -120 -KPX Tcaron Amacron -120 -KPX Tcaron Aogonek -120 -KPX Tcaron Aring -120 -KPX Tcaron Atilde -120 -KPX Tcaron O -40 -KPX Tcaron Oacute -40 -KPX Tcaron Ocircumflex -40 -KPX Tcaron Odieresis -40 -KPX Tcaron Ograve -40 -KPX Tcaron Ohungarumlaut -40 -KPX Tcaron Omacron -40 -KPX Tcaron Oslash -40 -KPX Tcaron Otilde -40 -KPX Tcaron a -120 -KPX Tcaron aacute -120 -KPX Tcaron abreve -60 -KPX Tcaron acircumflex -120 -KPX Tcaron adieresis -120 -KPX Tcaron agrave -120 -KPX Tcaron amacron -60 -KPX Tcaron aogonek -120 -KPX Tcaron aring -120 -KPX Tcaron atilde -60 -KPX Tcaron colon -20 -KPX Tcaron comma -120 -KPX Tcaron e -120 -KPX Tcaron eacute -120 -KPX Tcaron ecaron -120 -KPX Tcaron ecircumflex -120 -KPX Tcaron edieresis -120 -KPX Tcaron edotaccent -120 -KPX Tcaron egrave -60 -KPX Tcaron emacron -60 -KPX Tcaron eogonek -120 -KPX Tcaron hyphen -140 -KPX Tcaron o -120 -KPX Tcaron oacute -120 -KPX Tcaron ocircumflex -120 -KPX Tcaron odieresis -120 -KPX Tcaron ograve -120 -KPX Tcaron ohungarumlaut -120 -KPX Tcaron omacron -60 -KPX Tcaron oslash -120 -KPX Tcaron otilde -60 -KPX Tcaron period -120 -KPX Tcaron r -120 -KPX Tcaron racute -120 -KPX Tcaron rcaron -120 -KPX Tcaron rcommaaccent -120 -KPX Tcaron semicolon -20 -KPX Tcaron u -120 -KPX Tcaron uacute -120 -KPX Tcaron ucircumflex -120 -KPX Tcaron udieresis -120 -KPX Tcaron ugrave -120 -KPX Tcaron uhungarumlaut -120 -KPX Tcaron umacron -60 -KPX Tcaron uogonek -120 -KPX Tcaron uring -120 -KPX Tcaron w -120 -KPX Tcaron y -120 -KPX Tcaron yacute -120 -KPX Tcaron ydieresis -60 -KPX Tcommaaccent A -120 -KPX Tcommaaccent Aacute -120 -KPX Tcommaaccent Abreve -120 -KPX Tcommaaccent Acircumflex -120 -KPX Tcommaaccent Adieresis -120 -KPX Tcommaaccent Agrave -120 -KPX Tcommaaccent Amacron -120 -KPX Tcommaaccent Aogonek -120 -KPX Tcommaaccent Aring -120 -KPX Tcommaaccent Atilde -120 -KPX Tcommaaccent O -40 -KPX Tcommaaccent Oacute -40 -KPX Tcommaaccent Ocircumflex -40 -KPX Tcommaaccent Odieresis -40 -KPX Tcommaaccent Ograve -40 -KPX Tcommaaccent Ohungarumlaut -40 -KPX Tcommaaccent Omacron -40 -KPX Tcommaaccent Oslash -40 -KPX Tcommaaccent Otilde -40 -KPX Tcommaaccent a -120 -KPX Tcommaaccent aacute -120 -KPX Tcommaaccent abreve -60 -KPX Tcommaaccent acircumflex -120 -KPX Tcommaaccent adieresis -120 -KPX Tcommaaccent agrave -120 -KPX Tcommaaccent amacron -60 -KPX Tcommaaccent aogonek -120 -KPX Tcommaaccent aring -120 -KPX Tcommaaccent atilde -60 -KPX Tcommaaccent colon -20 -KPX Tcommaaccent comma -120 -KPX Tcommaaccent e -120 -KPX Tcommaaccent eacute -120 -KPX Tcommaaccent ecaron -120 -KPX Tcommaaccent ecircumflex -120 -KPX Tcommaaccent edieresis -120 -KPX Tcommaaccent edotaccent -120 -KPX Tcommaaccent egrave -60 -KPX Tcommaaccent emacron -60 -KPX Tcommaaccent eogonek -120 -KPX Tcommaaccent hyphen -140 -KPX Tcommaaccent o -120 -KPX Tcommaaccent oacute -120 -KPX Tcommaaccent ocircumflex -120 -KPX Tcommaaccent odieresis -120 -KPX Tcommaaccent ograve -120 -KPX Tcommaaccent ohungarumlaut -120 -KPX Tcommaaccent omacron -60 -KPX Tcommaaccent oslash -120 -KPX Tcommaaccent otilde -60 -KPX Tcommaaccent period -120 -KPX Tcommaaccent r -120 -KPX Tcommaaccent racute -120 -KPX Tcommaaccent rcaron -120 -KPX Tcommaaccent rcommaaccent -120 -KPX Tcommaaccent semicolon -20 -KPX Tcommaaccent u -120 -KPX Tcommaaccent uacute -120 -KPX Tcommaaccent ucircumflex -120 -KPX Tcommaaccent udieresis -120 -KPX Tcommaaccent ugrave -120 -KPX Tcommaaccent uhungarumlaut -120 -KPX Tcommaaccent umacron -60 -KPX Tcommaaccent uogonek -120 -KPX Tcommaaccent uring -120 -KPX Tcommaaccent w -120 -KPX Tcommaaccent y -120 -KPX Tcommaaccent yacute -120 -KPX Tcommaaccent ydieresis -60 -KPX U A -40 -KPX U Aacute -40 -KPX U Abreve -40 -KPX U Acircumflex -40 -KPX U Adieresis -40 -KPX U Agrave -40 -KPX U Amacron -40 -KPX U Aogonek -40 -KPX U Aring -40 -KPX U Atilde -40 -KPX U comma -40 -KPX U period -40 -KPX Uacute A -40 -KPX Uacute Aacute -40 -KPX Uacute Abreve -40 -KPX Uacute Acircumflex -40 -KPX Uacute Adieresis -40 -KPX Uacute Agrave -40 -KPX Uacute Amacron -40 -KPX Uacute Aogonek -40 -KPX Uacute Aring -40 -KPX Uacute Atilde -40 -KPX Uacute comma -40 -KPX Uacute period -40 -KPX Ucircumflex A -40 -KPX Ucircumflex Aacute -40 -KPX Ucircumflex Abreve -40 -KPX Ucircumflex Acircumflex -40 -KPX Ucircumflex Adieresis -40 -KPX Ucircumflex Agrave -40 -KPX Ucircumflex Amacron -40 -KPX Ucircumflex Aogonek -40 -KPX Ucircumflex Aring -40 -KPX Ucircumflex Atilde -40 -KPX Ucircumflex comma -40 -KPX Ucircumflex period -40 -KPX Udieresis A -40 -KPX Udieresis Aacute -40 -KPX Udieresis Abreve -40 -KPX Udieresis Acircumflex -40 -KPX Udieresis Adieresis -40 -KPX Udieresis Agrave -40 -KPX Udieresis Amacron -40 -KPX Udieresis Aogonek -40 -KPX Udieresis Aring -40 -KPX Udieresis Atilde -40 -KPX Udieresis comma -40 -KPX Udieresis period -40 -KPX Ugrave A -40 -KPX Ugrave Aacute -40 -KPX Ugrave Abreve -40 -KPX Ugrave Acircumflex -40 -KPX Ugrave Adieresis -40 -KPX Ugrave Agrave -40 -KPX Ugrave Amacron -40 -KPX Ugrave Aogonek -40 -KPX Ugrave Aring -40 -KPX Ugrave Atilde -40 -KPX Ugrave comma -40 -KPX Ugrave period -40 -KPX Uhungarumlaut A -40 -KPX Uhungarumlaut Aacute -40 -KPX Uhungarumlaut Abreve -40 -KPX Uhungarumlaut Acircumflex -40 -KPX Uhungarumlaut Adieresis -40 -KPX Uhungarumlaut Agrave -40 -KPX Uhungarumlaut Amacron -40 -KPX Uhungarumlaut Aogonek -40 -KPX Uhungarumlaut Aring -40 -KPX Uhungarumlaut Atilde -40 -KPX Uhungarumlaut comma -40 -KPX Uhungarumlaut period -40 -KPX Umacron A -40 -KPX Umacron Aacute -40 -KPX Umacron Abreve -40 -KPX Umacron Acircumflex -40 -KPX Umacron Adieresis -40 -KPX Umacron Agrave -40 -KPX Umacron Amacron -40 -KPX Umacron Aogonek -40 -KPX Umacron Aring -40 -KPX Umacron Atilde -40 -KPX Umacron comma -40 -KPX Umacron period -40 -KPX Uogonek A -40 -KPX Uogonek Aacute -40 -KPX Uogonek Abreve -40 -KPX Uogonek Acircumflex -40 -KPX Uogonek Adieresis -40 -KPX Uogonek Agrave -40 -KPX Uogonek Amacron -40 -KPX Uogonek Aogonek -40 -KPX Uogonek Aring -40 -KPX Uogonek Atilde -40 -KPX Uogonek comma -40 -KPX Uogonek period -40 -KPX Uring A -40 -KPX Uring Aacute -40 -KPX Uring Abreve -40 -KPX Uring Acircumflex -40 -KPX Uring Adieresis -40 -KPX Uring Agrave -40 -KPX Uring Amacron -40 -KPX Uring Aogonek -40 -KPX Uring Aring -40 -KPX Uring Atilde -40 -KPX Uring comma -40 -KPX Uring period -40 -KPX V A -80 -KPX V Aacute -80 -KPX V Abreve -80 -KPX V Acircumflex -80 -KPX V Adieresis -80 -KPX V Agrave -80 -KPX V Amacron -80 -KPX V Aogonek -80 -KPX V Aring -80 -KPX V Atilde -80 -KPX V G -40 -KPX V Gbreve -40 -KPX V Gcommaaccent -40 -KPX V O -40 -KPX V Oacute -40 -KPX V Ocircumflex -40 -KPX V Odieresis -40 -KPX V Ograve -40 -KPX V Ohungarumlaut -40 -KPX V Omacron -40 -KPX V Oslash -40 -KPX V Otilde -40 -KPX V a -70 -KPX V aacute -70 -KPX V abreve -70 -KPX V acircumflex -70 -KPX V adieresis -70 -KPX V agrave -70 -KPX V amacron -70 -KPX V aogonek -70 -KPX V aring -70 -KPX V atilde -70 -KPX V colon -40 -KPX V comma -125 -KPX V e -80 -KPX V eacute -80 -KPX V ecaron -80 -KPX V ecircumflex -80 -KPX V edieresis -80 -KPX V edotaccent -80 -KPX V egrave -80 -KPX V emacron -80 -KPX V eogonek -80 -KPX V hyphen -80 -KPX V o -80 -KPX V oacute -80 -KPX V ocircumflex -80 -KPX V odieresis -80 -KPX V ograve -80 -KPX V ohungarumlaut -80 -KPX V omacron -80 -KPX V oslash -80 -KPX V otilde -80 -KPX V period -125 -KPX V semicolon -40 -KPX V u -70 -KPX V uacute -70 -KPX V ucircumflex -70 -KPX V udieresis -70 -KPX V ugrave -70 -KPX V uhungarumlaut -70 -KPX V umacron -70 -KPX V uogonek -70 -KPX V uring -70 -KPX W A -50 -KPX W Aacute -50 -KPX W Abreve -50 -KPX W Acircumflex -50 -KPX W Adieresis -50 -KPX W Agrave -50 -KPX W Amacron -50 -KPX W Aogonek -50 -KPX W Aring -50 -KPX W Atilde -50 -KPX W O -20 -KPX W Oacute -20 -KPX W Ocircumflex -20 -KPX W Odieresis -20 -KPX W Ograve -20 -KPX W Ohungarumlaut -20 -KPX W Omacron -20 -KPX W Oslash -20 -KPX W Otilde -20 -KPX W a -40 -KPX W aacute -40 -KPX W abreve -40 -KPX W acircumflex -40 -KPX W adieresis -40 -KPX W agrave -40 -KPX W amacron -40 -KPX W aogonek -40 -KPX W aring -40 -KPX W atilde -40 -KPX W comma -80 -KPX W e -30 -KPX W eacute -30 -KPX W ecaron -30 -KPX W ecircumflex -30 -KPX W edieresis -30 -KPX W edotaccent -30 -KPX W egrave -30 -KPX W emacron -30 -KPX W eogonek -30 -KPX W hyphen -40 -KPX W o -30 -KPX W oacute -30 -KPX W ocircumflex -30 -KPX W odieresis -30 -KPX W ograve -30 -KPX W ohungarumlaut -30 -KPX W omacron -30 -KPX W oslash -30 -KPX W otilde -30 -KPX W period -80 -KPX W u -30 -KPX W uacute -30 -KPX W ucircumflex -30 -KPX W udieresis -30 -KPX W ugrave -30 -KPX W uhungarumlaut -30 -KPX W umacron -30 -KPX W uogonek -30 -KPX W uring -30 -KPX W y -20 -KPX W yacute -20 -KPX W ydieresis -20 -KPX Y A -110 -KPX Y Aacute -110 -KPX Y Abreve -110 -KPX Y Acircumflex -110 -KPX Y Adieresis -110 -KPX Y Agrave -110 -KPX Y Amacron -110 -KPX Y Aogonek -110 -KPX Y Aring -110 -KPX Y Atilde -110 -KPX Y O -85 -KPX Y Oacute -85 -KPX Y Ocircumflex -85 -KPX Y Odieresis -85 -KPX Y Ograve -85 -KPX Y Ohungarumlaut -85 -KPX Y Omacron -85 -KPX Y Oslash -85 -KPX Y Otilde -85 -KPX Y a -140 -KPX Y aacute -140 -KPX Y abreve -70 -KPX Y acircumflex -140 -KPX Y adieresis -140 -KPX Y agrave -140 -KPX Y amacron -70 -KPX Y aogonek -140 -KPX Y aring -140 -KPX Y atilde -140 -KPX Y colon -60 -KPX Y comma -140 -KPX Y e -140 -KPX Y eacute -140 -KPX Y ecaron -140 -KPX Y ecircumflex -140 -KPX Y edieresis -140 -KPX Y edotaccent -140 -KPX Y egrave -140 -KPX Y emacron -70 -KPX Y eogonek -140 -KPX Y hyphen -140 -KPX Y i -20 -KPX Y iacute -20 -KPX Y iogonek -20 -KPX Y o -140 -KPX Y oacute -140 -KPX Y ocircumflex -140 -KPX Y odieresis -140 -KPX Y ograve -140 -KPX Y ohungarumlaut -140 -KPX Y omacron -140 -KPX Y oslash -140 -KPX Y otilde -140 -KPX Y period -140 -KPX Y semicolon -60 -KPX Y u -110 -KPX Y uacute -110 -KPX Y ucircumflex -110 -KPX Y udieresis -110 -KPX Y ugrave -110 -KPX Y uhungarumlaut -110 -KPX Y umacron -110 -KPX Y uogonek -110 -KPX Y uring -110 -KPX Yacute A -110 -KPX Yacute Aacute -110 -KPX Yacute Abreve -110 -KPX Yacute Acircumflex -110 -KPX Yacute Adieresis -110 -KPX Yacute Agrave -110 -KPX Yacute Amacron -110 -KPX Yacute Aogonek -110 -KPX Yacute Aring -110 -KPX Yacute Atilde -110 -KPX Yacute O -85 -KPX Yacute Oacute -85 -KPX Yacute Ocircumflex -85 -KPX Yacute Odieresis -85 -KPX Yacute Ograve -85 -KPX Yacute Ohungarumlaut -85 -KPX Yacute Omacron -85 -KPX Yacute Oslash -85 -KPX Yacute Otilde -85 -KPX Yacute a -140 -KPX Yacute aacute -140 -KPX Yacute abreve -70 -KPX Yacute acircumflex -140 -KPX Yacute adieresis -140 -KPX Yacute agrave -140 -KPX Yacute amacron -70 -KPX Yacute aogonek -140 -KPX Yacute aring -140 -KPX Yacute atilde -70 -KPX Yacute colon -60 -KPX Yacute comma -140 -KPX Yacute e -140 -KPX Yacute eacute -140 -KPX Yacute ecaron -140 -KPX Yacute ecircumflex -140 -KPX Yacute edieresis -140 -KPX Yacute edotaccent -140 -KPX Yacute egrave -140 -KPX Yacute emacron -70 -KPX Yacute eogonek -140 -KPX Yacute hyphen -140 -KPX Yacute i -20 -KPX Yacute iacute -20 -KPX Yacute iogonek -20 -KPX Yacute o -140 -KPX Yacute oacute -140 -KPX Yacute ocircumflex -140 -KPX Yacute odieresis -140 -KPX Yacute ograve -140 -KPX Yacute ohungarumlaut -140 -KPX Yacute omacron -70 -KPX Yacute oslash -140 -KPX Yacute otilde -140 -KPX Yacute period -140 -KPX Yacute semicolon -60 -KPX Yacute u -110 -KPX Yacute uacute -110 -KPX Yacute ucircumflex -110 -KPX Yacute udieresis -110 -KPX Yacute ugrave -110 -KPX Yacute uhungarumlaut -110 -KPX Yacute umacron -110 -KPX Yacute uogonek -110 -KPX Yacute uring -110 -KPX Ydieresis A -110 -KPX Ydieresis Aacute -110 -KPX Ydieresis Abreve -110 -KPX Ydieresis Acircumflex -110 -KPX Ydieresis Adieresis -110 -KPX Ydieresis Agrave -110 -KPX Ydieresis Amacron -110 -KPX Ydieresis Aogonek -110 -KPX Ydieresis Aring -110 -KPX Ydieresis Atilde -110 -KPX Ydieresis O -85 -KPX Ydieresis Oacute -85 -KPX Ydieresis Ocircumflex -85 -KPX Ydieresis Odieresis -85 -KPX Ydieresis Ograve -85 -KPX Ydieresis Ohungarumlaut -85 -KPX Ydieresis Omacron -85 -KPX Ydieresis Oslash -85 -KPX Ydieresis Otilde -85 -KPX Ydieresis a -140 -KPX Ydieresis aacute -140 -KPX Ydieresis abreve -70 -KPX Ydieresis acircumflex -140 -KPX Ydieresis adieresis -140 -KPX Ydieresis agrave -140 -KPX Ydieresis amacron -70 -KPX Ydieresis aogonek -140 -KPX Ydieresis aring -140 -KPX Ydieresis atilde -70 -KPX Ydieresis colon -60 -KPX Ydieresis comma -140 -KPX Ydieresis e -140 -KPX Ydieresis eacute -140 -KPX Ydieresis ecaron -140 -KPX Ydieresis ecircumflex -140 -KPX Ydieresis edieresis -140 -KPX Ydieresis edotaccent -140 -KPX Ydieresis egrave -140 -KPX Ydieresis emacron -70 -KPX Ydieresis eogonek -140 -KPX Ydieresis hyphen -140 -KPX Ydieresis i -20 -KPX Ydieresis iacute -20 -KPX Ydieresis iogonek -20 -KPX Ydieresis o -140 -KPX Ydieresis oacute -140 -KPX Ydieresis ocircumflex -140 -KPX Ydieresis odieresis -140 -KPX Ydieresis ograve -140 -KPX Ydieresis ohungarumlaut -140 -KPX Ydieresis omacron -140 -KPX Ydieresis oslash -140 -KPX Ydieresis otilde -140 -KPX Ydieresis period -140 -KPX Ydieresis semicolon -60 -KPX Ydieresis u -110 -KPX Ydieresis uacute -110 -KPX Ydieresis ucircumflex -110 -KPX Ydieresis udieresis -110 -KPX Ydieresis ugrave -110 -KPX Ydieresis uhungarumlaut -110 -KPX Ydieresis umacron -110 -KPX Ydieresis uogonek -110 -KPX Ydieresis uring -110 -KPX a v -20 -KPX a w -20 -KPX a y -30 -KPX a yacute -30 -KPX a ydieresis -30 -KPX aacute v -20 -KPX aacute w -20 -KPX aacute y -30 -KPX aacute yacute -30 -KPX aacute ydieresis -30 -KPX abreve v -20 -KPX abreve w -20 -KPX abreve y -30 -KPX abreve yacute -30 -KPX abreve ydieresis -30 -KPX acircumflex v -20 -KPX acircumflex w -20 -KPX acircumflex y -30 -KPX acircumflex yacute -30 -KPX acircumflex ydieresis -30 -KPX adieresis v -20 -KPX adieresis w -20 -KPX adieresis y -30 -KPX adieresis yacute -30 -KPX adieresis ydieresis -30 -KPX agrave v -20 -KPX agrave w -20 -KPX agrave y -30 -KPX agrave yacute -30 -KPX agrave ydieresis -30 -KPX amacron v -20 -KPX amacron w -20 -KPX amacron y -30 -KPX amacron yacute -30 -KPX amacron ydieresis -30 -KPX aogonek v -20 -KPX aogonek w -20 -KPX aogonek y -30 -KPX aogonek yacute -30 -KPX aogonek ydieresis -30 -KPX aring v -20 -KPX aring w -20 -KPX aring y -30 -KPX aring yacute -30 -KPX aring ydieresis -30 -KPX atilde v -20 -KPX atilde w -20 -KPX atilde y -30 -KPX atilde yacute -30 -KPX atilde ydieresis -30 -KPX b b -10 -KPX b comma -40 -KPX b l -20 -KPX b lacute -20 -KPX b lcommaaccent -20 -KPX b lslash -20 -KPX b period -40 -KPX b u -20 -KPX b uacute -20 -KPX b ucircumflex -20 -KPX b udieresis -20 -KPX b ugrave -20 -KPX b uhungarumlaut -20 -KPX b umacron -20 -KPX b uogonek -20 -KPX b uring -20 -KPX b v -20 -KPX b y -20 -KPX b yacute -20 -KPX b ydieresis -20 -KPX c comma -15 -KPX c k -20 -KPX c kcommaaccent -20 -KPX cacute comma -15 -KPX cacute k -20 -KPX cacute kcommaaccent -20 -KPX ccaron comma -15 -KPX ccaron k -20 -KPX ccaron kcommaaccent -20 -KPX ccedilla comma -15 -KPX ccedilla k -20 -KPX ccedilla kcommaaccent -20 -KPX colon space -50 -KPX comma quotedblright -100 -KPX comma quoteright -100 -KPX e comma -15 -KPX e period -15 -KPX e v -30 -KPX e w -20 -KPX e x -30 -KPX e y -20 -KPX e yacute -20 -KPX e ydieresis -20 -KPX eacute comma -15 -KPX eacute period -15 -KPX eacute v -30 -KPX eacute w -20 -KPX eacute x -30 -KPX eacute y -20 -KPX eacute yacute -20 -KPX eacute ydieresis -20 -KPX ecaron comma -15 -KPX ecaron period -15 -KPX ecaron v -30 -KPX ecaron w -20 -KPX ecaron x -30 -KPX ecaron y -20 -KPX ecaron yacute -20 -KPX ecaron ydieresis -20 -KPX ecircumflex comma -15 -KPX ecircumflex period -15 -KPX ecircumflex v -30 -KPX ecircumflex w -20 -KPX ecircumflex x -30 -KPX ecircumflex y -20 -KPX ecircumflex yacute -20 -KPX ecircumflex ydieresis -20 -KPX edieresis comma -15 -KPX edieresis period -15 -KPX edieresis v -30 -KPX edieresis w -20 -KPX edieresis x -30 -KPX edieresis y -20 -KPX edieresis yacute -20 -KPX edieresis ydieresis -20 -KPX edotaccent comma -15 -KPX edotaccent period -15 -KPX edotaccent v -30 -KPX edotaccent w -20 -KPX edotaccent x -30 -KPX edotaccent y -20 -KPX edotaccent yacute -20 -KPX edotaccent ydieresis -20 -KPX egrave comma -15 -KPX egrave period -15 -KPX egrave v -30 -KPX egrave w -20 -KPX egrave x -30 -KPX egrave y -20 -KPX egrave yacute -20 -KPX egrave ydieresis -20 -KPX emacron comma -15 -KPX emacron period -15 -KPX emacron v -30 -KPX emacron w -20 -KPX emacron x -30 -KPX emacron y -20 -KPX emacron yacute -20 -KPX emacron ydieresis -20 -KPX eogonek comma -15 -KPX eogonek period -15 -KPX eogonek v -30 -KPX eogonek w -20 -KPX eogonek x -30 -KPX eogonek y -20 -KPX eogonek yacute -20 -KPX eogonek ydieresis -20 -KPX f a -30 -KPX f aacute -30 -KPX f abreve -30 -KPX f acircumflex -30 -KPX f adieresis -30 -KPX f agrave -30 -KPX f amacron -30 -KPX f aogonek -30 -KPX f aring -30 -KPX f atilde -30 -KPX f comma -30 -KPX f dotlessi -28 -KPX f e -30 -KPX f eacute -30 -KPX f ecaron -30 -KPX f ecircumflex -30 -KPX f edieresis -30 -KPX f edotaccent -30 -KPX f egrave -30 -KPX f emacron -30 -KPX f eogonek -30 -KPX f o -30 -KPX f oacute -30 -KPX f ocircumflex -30 -KPX f odieresis -30 -KPX f ograve -30 -KPX f ohungarumlaut -30 -KPX f omacron -30 -KPX f oslash -30 -KPX f otilde -30 -KPX f period -30 -KPX f quotedblright 60 -KPX f quoteright 50 -KPX g r -10 -KPX g racute -10 -KPX g rcaron -10 -KPX g rcommaaccent -10 -KPX gbreve r -10 -KPX gbreve racute -10 -KPX gbreve rcaron -10 -KPX gbreve rcommaaccent -10 -KPX gcommaaccent r -10 -KPX gcommaaccent racute -10 -KPX gcommaaccent rcaron -10 -KPX gcommaaccent rcommaaccent -10 -KPX h y -30 -KPX h yacute -30 -KPX h ydieresis -30 -KPX k e -20 -KPX k eacute -20 -KPX k ecaron -20 -KPX k ecircumflex -20 -KPX k edieresis -20 -KPX k edotaccent -20 -KPX k egrave -20 -KPX k emacron -20 -KPX k eogonek -20 -KPX k o -20 -KPX k oacute -20 -KPX k ocircumflex -20 -KPX k odieresis -20 -KPX k ograve -20 -KPX k ohungarumlaut -20 -KPX k omacron -20 -KPX k oslash -20 -KPX k otilde -20 -KPX kcommaaccent e -20 -KPX kcommaaccent eacute -20 -KPX kcommaaccent ecaron -20 -KPX kcommaaccent ecircumflex -20 -KPX kcommaaccent edieresis -20 -KPX kcommaaccent edotaccent -20 -KPX kcommaaccent egrave -20 -KPX kcommaaccent emacron -20 -KPX kcommaaccent eogonek -20 -KPX kcommaaccent o -20 -KPX kcommaaccent oacute -20 -KPX kcommaaccent ocircumflex -20 -KPX kcommaaccent odieresis -20 -KPX kcommaaccent ograve -20 -KPX kcommaaccent ohungarumlaut -20 -KPX kcommaaccent omacron -20 -KPX kcommaaccent oslash -20 -KPX kcommaaccent otilde -20 -KPX m u -10 -KPX m uacute -10 -KPX m ucircumflex -10 -KPX m udieresis -10 -KPX m ugrave -10 -KPX m uhungarumlaut -10 -KPX m umacron -10 -KPX m uogonek -10 -KPX m uring -10 -KPX m y -15 -KPX m yacute -15 -KPX m ydieresis -15 -KPX n u -10 -KPX n uacute -10 -KPX n ucircumflex -10 -KPX n udieresis -10 -KPX n ugrave -10 -KPX n uhungarumlaut -10 -KPX n umacron -10 -KPX n uogonek -10 -KPX n uring -10 -KPX n v -20 -KPX n y -15 -KPX n yacute -15 -KPX n ydieresis -15 -KPX nacute u -10 -KPX nacute uacute -10 -KPX nacute ucircumflex -10 -KPX nacute udieresis -10 -KPX nacute ugrave -10 -KPX nacute uhungarumlaut -10 -KPX nacute umacron -10 -KPX nacute uogonek -10 -KPX nacute uring -10 -KPX nacute v -20 -KPX nacute y -15 -KPX nacute yacute -15 -KPX nacute ydieresis -15 -KPX ncaron u -10 -KPX ncaron uacute -10 -KPX ncaron ucircumflex -10 -KPX ncaron udieresis -10 -KPX ncaron ugrave -10 -KPX ncaron uhungarumlaut -10 -KPX ncaron umacron -10 -KPX ncaron uogonek -10 -KPX ncaron uring -10 -KPX ncaron v -20 -KPX ncaron y -15 -KPX ncaron yacute -15 -KPX ncaron ydieresis -15 -KPX ncommaaccent u -10 -KPX ncommaaccent uacute -10 -KPX ncommaaccent ucircumflex -10 -KPX ncommaaccent udieresis -10 -KPX ncommaaccent ugrave -10 -KPX ncommaaccent uhungarumlaut -10 -KPX ncommaaccent umacron -10 -KPX ncommaaccent uogonek -10 -KPX ncommaaccent uring -10 -KPX ncommaaccent v -20 -KPX ncommaaccent y -15 -KPX ncommaaccent yacute -15 -KPX ncommaaccent ydieresis -15 -KPX ntilde u -10 -KPX ntilde uacute -10 -KPX ntilde ucircumflex -10 -KPX ntilde udieresis -10 -KPX ntilde ugrave -10 -KPX ntilde uhungarumlaut -10 -KPX ntilde umacron -10 -KPX ntilde uogonek -10 -KPX ntilde uring -10 -KPX ntilde v -20 -KPX ntilde y -15 -KPX ntilde yacute -15 -KPX ntilde ydieresis -15 -KPX o comma -40 -KPX o period -40 -KPX o v -15 -KPX o w -15 -KPX o x -30 -KPX o y -30 -KPX o yacute -30 -KPX o ydieresis -30 -KPX oacute comma -40 -KPX oacute period -40 -KPX oacute v -15 -KPX oacute w -15 -KPX oacute x -30 -KPX oacute y -30 -KPX oacute yacute -30 -KPX oacute ydieresis -30 -KPX ocircumflex comma -40 -KPX ocircumflex period -40 -KPX ocircumflex v -15 -KPX ocircumflex w -15 -KPX ocircumflex x -30 -KPX ocircumflex y -30 -KPX ocircumflex yacute -30 -KPX ocircumflex ydieresis -30 -KPX odieresis comma -40 -KPX odieresis period -40 -KPX odieresis v -15 -KPX odieresis w -15 -KPX odieresis x -30 -KPX odieresis y -30 -KPX odieresis yacute -30 -KPX odieresis ydieresis -30 -KPX ograve comma -40 -KPX ograve period -40 -KPX ograve v -15 -KPX ograve w -15 -KPX ograve x -30 -KPX ograve y -30 -KPX ograve yacute -30 -KPX ograve ydieresis -30 -KPX ohungarumlaut comma -40 -KPX ohungarumlaut period -40 -KPX ohungarumlaut v -15 -KPX ohungarumlaut w -15 -KPX ohungarumlaut x -30 -KPX ohungarumlaut y -30 -KPX ohungarumlaut yacute -30 -KPX ohungarumlaut ydieresis -30 -KPX omacron comma -40 -KPX omacron period -40 -KPX omacron v -15 -KPX omacron w -15 -KPX omacron x -30 -KPX omacron y -30 -KPX omacron yacute -30 -KPX omacron ydieresis -30 -KPX oslash a -55 -KPX oslash aacute -55 -KPX oslash abreve -55 -KPX oslash acircumflex -55 -KPX oslash adieresis -55 -KPX oslash agrave -55 -KPX oslash amacron -55 -KPX oslash aogonek -55 -KPX oslash aring -55 -KPX oslash atilde -55 -KPX oslash b -55 -KPX oslash c -55 -KPX oslash cacute -55 -KPX oslash ccaron -55 -KPX oslash ccedilla -55 -KPX oslash comma -95 -KPX oslash d -55 -KPX oslash dcroat -55 -KPX oslash e -55 -KPX oslash eacute -55 -KPX oslash ecaron -55 -KPX oslash ecircumflex -55 -KPX oslash edieresis -55 -KPX oslash edotaccent -55 -KPX oslash egrave -55 -KPX oslash emacron -55 -KPX oslash eogonek -55 -KPX oslash f -55 -KPX oslash g -55 -KPX oslash gbreve -55 -KPX oslash gcommaaccent -55 -KPX oslash h -55 -KPX oslash i -55 -KPX oslash iacute -55 -KPX oslash icircumflex -55 -KPX oslash idieresis -55 -KPX oslash igrave -55 -KPX oslash imacron -55 -KPX oslash iogonek -55 -KPX oslash j -55 -KPX oslash k -55 -KPX oslash kcommaaccent -55 -KPX oslash l -55 -KPX oslash lacute -55 -KPX oslash lcommaaccent -55 -KPX oslash lslash -55 -KPX oslash m -55 -KPX oslash n -55 -KPX oslash nacute -55 -KPX oslash ncaron -55 -KPX oslash ncommaaccent -55 -KPX oslash ntilde -55 -KPX oslash o -55 -KPX oslash oacute -55 -KPX oslash ocircumflex -55 -KPX oslash odieresis -55 -KPX oslash ograve -55 -KPX oslash ohungarumlaut -55 -KPX oslash omacron -55 -KPX oslash oslash -55 -KPX oslash otilde -55 -KPX oslash p -55 -KPX oslash period -95 -KPX oslash q -55 -KPX oslash r -55 -KPX oslash racute -55 -KPX oslash rcaron -55 -KPX oslash rcommaaccent -55 -KPX oslash s -55 -KPX oslash sacute -55 -KPX oslash scaron -55 -KPX oslash scedilla -55 -KPX oslash scommaaccent -55 -KPX oslash t -55 -KPX oslash tcommaaccent -55 -KPX oslash u -55 -KPX oslash uacute -55 -KPX oslash ucircumflex -55 -KPX oslash udieresis -55 -KPX oslash ugrave -55 -KPX oslash uhungarumlaut -55 -KPX oslash umacron -55 -KPX oslash uogonek -55 -KPX oslash uring -55 -KPX oslash v -70 -KPX oslash w -70 -KPX oslash x -85 -KPX oslash y -70 -KPX oslash yacute -70 -KPX oslash ydieresis -70 -KPX oslash z -55 -KPX oslash zacute -55 -KPX oslash zcaron -55 -KPX oslash zdotaccent -55 -KPX otilde comma -40 -KPX otilde period -40 -KPX otilde v -15 -KPX otilde w -15 -KPX otilde x -30 -KPX otilde y -30 -KPX otilde yacute -30 -KPX otilde ydieresis -30 -KPX p comma -35 -KPX p period -35 -KPX p y -30 -KPX p yacute -30 -KPX p ydieresis -30 -KPX period quotedblright -100 -KPX period quoteright -100 -KPX period space -60 -KPX quotedblright space -40 -KPX quoteleft quoteleft -57 -KPX quoteright d -50 -KPX quoteright dcroat -50 -KPX quoteright quoteright -57 -KPX quoteright r -50 -KPX quoteright racute -50 -KPX quoteright rcaron -50 -KPX quoteright rcommaaccent -50 -KPX quoteright s -50 -KPX quoteright sacute -50 -KPX quoteright scaron -50 -KPX quoteright scedilla -50 -KPX quoteright scommaaccent -50 -KPX quoteright space -70 -KPX r a -10 -KPX r aacute -10 -KPX r abreve -10 -KPX r acircumflex -10 -KPX r adieresis -10 -KPX r agrave -10 -KPX r amacron -10 -KPX r aogonek -10 -KPX r aring -10 -KPX r atilde -10 -KPX r colon 30 -KPX r comma -50 -KPX r i 15 -KPX r iacute 15 -KPX r icircumflex 15 -KPX r idieresis 15 -KPX r igrave 15 -KPX r imacron 15 -KPX r iogonek 15 -KPX r k 15 -KPX r kcommaaccent 15 -KPX r l 15 -KPX r lacute 15 -KPX r lcommaaccent 15 -KPX r lslash 15 -KPX r m 25 -KPX r n 25 -KPX r nacute 25 -KPX r ncaron 25 -KPX r ncommaaccent 25 -KPX r ntilde 25 -KPX r p 30 -KPX r period -50 -KPX r semicolon 30 -KPX r t 40 -KPX r tcommaaccent 40 -KPX r u 15 -KPX r uacute 15 -KPX r ucircumflex 15 -KPX r udieresis 15 -KPX r ugrave 15 -KPX r uhungarumlaut 15 -KPX r umacron 15 -KPX r uogonek 15 -KPX r uring 15 -KPX r v 30 -KPX r y 30 -KPX r yacute 30 -KPX r ydieresis 30 -KPX racute a -10 -KPX racute aacute -10 -KPX racute abreve -10 -KPX racute acircumflex -10 -KPX racute adieresis -10 -KPX racute agrave -10 -KPX racute amacron -10 -KPX racute aogonek -10 -KPX racute aring -10 -KPX racute atilde -10 -KPX racute colon 30 -KPX racute comma -50 -KPX racute i 15 -KPX racute iacute 15 -KPX racute icircumflex 15 -KPX racute idieresis 15 -KPX racute igrave 15 -KPX racute imacron 15 -KPX racute iogonek 15 -KPX racute k 15 -KPX racute kcommaaccent 15 -KPX racute l 15 -KPX racute lacute 15 -KPX racute lcommaaccent 15 -KPX racute lslash 15 -KPX racute m 25 -KPX racute n 25 -KPX racute nacute 25 -KPX racute ncaron 25 -KPX racute ncommaaccent 25 -KPX racute ntilde 25 -KPX racute p 30 -KPX racute period -50 -KPX racute semicolon 30 -KPX racute t 40 -KPX racute tcommaaccent 40 -KPX racute u 15 -KPX racute uacute 15 -KPX racute ucircumflex 15 -KPX racute udieresis 15 -KPX racute ugrave 15 -KPX racute uhungarumlaut 15 -KPX racute umacron 15 -KPX racute uogonek 15 -KPX racute uring 15 -KPX racute v 30 -KPX racute y 30 -KPX racute yacute 30 -KPX racute ydieresis 30 -KPX rcaron a -10 -KPX rcaron aacute -10 -KPX rcaron abreve -10 -KPX rcaron acircumflex -10 -KPX rcaron adieresis -10 -KPX rcaron agrave -10 -KPX rcaron amacron -10 -KPX rcaron aogonek -10 -KPX rcaron aring -10 -KPX rcaron atilde -10 -KPX rcaron colon 30 -KPX rcaron comma -50 -KPX rcaron i 15 -KPX rcaron iacute 15 -KPX rcaron icircumflex 15 -KPX rcaron idieresis 15 -KPX rcaron igrave 15 -KPX rcaron imacron 15 -KPX rcaron iogonek 15 -KPX rcaron k 15 -KPX rcaron kcommaaccent 15 -KPX rcaron l 15 -KPX rcaron lacute 15 -KPX rcaron lcommaaccent 15 -KPX rcaron lslash 15 -KPX rcaron m 25 -KPX rcaron n 25 -KPX rcaron nacute 25 -KPX rcaron ncaron 25 -KPX rcaron ncommaaccent 25 -KPX rcaron ntilde 25 -KPX rcaron p 30 -KPX rcaron period -50 -KPX rcaron semicolon 30 -KPX rcaron t 40 -KPX rcaron tcommaaccent 40 -KPX rcaron u 15 -KPX rcaron uacute 15 -KPX rcaron ucircumflex 15 -KPX rcaron udieresis 15 -KPX rcaron ugrave 15 -KPX rcaron uhungarumlaut 15 -KPX rcaron umacron 15 -KPX rcaron uogonek 15 -KPX rcaron uring 15 -KPX rcaron v 30 -KPX rcaron y 30 -KPX rcaron yacute 30 -KPX rcaron ydieresis 30 -KPX rcommaaccent a -10 -KPX rcommaaccent aacute -10 -KPX rcommaaccent abreve -10 -KPX rcommaaccent acircumflex -10 -KPX rcommaaccent adieresis -10 -KPX rcommaaccent agrave -10 -KPX rcommaaccent amacron -10 -KPX rcommaaccent aogonek -10 -KPX rcommaaccent aring -10 -KPX rcommaaccent atilde -10 -KPX rcommaaccent colon 30 -KPX rcommaaccent comma -50 -KPX rcommaaccent i 15 -KPX rcommaaccent iacute 15 -KPX rcommaaccent icircumflex 15 -KPX rcommaaccent idieresis 15 -KPX rcommaaccent igrave 15 -KPX rcommaaccent imacron 15 -KPX rcommaaccent iogonek 15 -KPX rcommaaccent k 15 -KPX rcommaaccent kcommaaccent 15 -KPX rcommaaccent l 15 -KPX rcommaaccent lacute 15 -KPX rcommaaccent lcommaaccent 15 -KPX rcommaaccent lslash 15 -KPX rcommaaccent m 25 -KPX rcommaaccent n 25 -KPX rcommaaccent nacute 25 -KPX rcommaaccent ncaron 25 -KPX rcommaaccent ncommaaccent 25 -KPX rcommaaccent ntilde 25 -KPX rcommaaccent p 30 -KPX rcommaaccent period -50 -KPX rcommaaccent semicolon 30 -KPX rcommaaccent t 40 -KPX rcommaaccent tcommaaccent 40 -KPX rcommaaccent u 15 -KPX rcommaaccent uacute 15 -KPX rcommaaccent ucircumflex 15 -KPX rcommaaccent udieresis 15 -KPX rcommaaccent ugrave 15 -KPX rcommaaccent uhungarumlaut 15 -KPX rcommaaccent umacron 15 -KPX rcommaaccent uogonek 15 -KPX rcommaaccent uring 15 -KPX rcommaaccent v 30 -KPX rcommaaccent y 30 -KPX rcommaaccent yacute 30 -KPX rcommaaccent ydieresis 30 -KPX s comma -15 -KPX s period -15 -KPX s w -30 -KPX sacute comma -15 -KPX sacute period -15 -KPX sacute w -30 -KPX scaron comma -15 -KPX scaron period -15 -KPX scaron w -30 -KPX scedilla comma -15 -KPX scedilla period -15 -KPX scedilla w -30 -KPX scommaaccent comma -15 -KPX scommaaccent period -15 -KPX scommaaccent w -30 -KPX semicolon space -50 -KPX space T -50 -KPX space Tcaron -50 -KPX space Tcommaaccent -50 -KPX space V -50 -KPX space W -40 -KPX space Y -90 -KPX space Yacute -90 -KPX space Ydieresis -90 -KPX space quotedblleft -30 -KPX space quoteleft -60 -KPX v a -25 -KPX v aacute -25 -KPX v abreve -25 -KPX v acircumflex -25 -KPX v adieresis -25 -KPX v agrave -25 -KPX v amacron -25 -KPX v aogonek -25 -KPX v aring -25 -KPX v atilde -25 -KPX v comma -80 -KPX v e -25 -KPX v eacute -25 -KPX v ecaron -25 -KPX v ecircumflex -25 -KPX v edieresis -25 -KPX v edotaccent -25 -KPX v egrave -25 -KPX v emacron -25 -KPX v eogonek -25 -KPX v o -25 -KPX v oacute -25 -KPX v ocircumflex -25 -KPX v odieresis -25 -KPX v ograve -25 -KPX v ohungarumlaut -25 -KPX v omacron -25 -KPX v oslash -25 -KPX v otilde -25 -KPX v period -80 -KPX w a -15 -KPX w aacute -15 -KPX w abreve -15 -KPX w acircumflex -15 -KPX w adieresis -15 -KPX w agrave -15 -KPX w amacron -15 -KPX w aogonek -15 -KPX w aring -15 -KPX w atilde -15 -KPX w comma -60 -KPX w e -10 -KPX w eacute -10 -KPX w ecaron -10 -KPX w ecircumflex -10 -KPX w edieresis -10 -KPX w edotaccent -10 -KPX w egrave -10 -KPX w emacron -10 -KPX w eogonek -10 -KPX w o -10 -KPX w oacute -10 -KPX w ocircumflex -10 -KPX w odieresis -10 -KPX w ograve -10 -KPX w ohungarumlaut -10 -KPX w omacron -10 -KPX w oslash -10 -KPX w otilde -10 -KPX w period -60 -KPX x e -30 -KPX x eacute -30 -KPX x ecaron -30 -KPX x ecircumflex -30 -KPX x edieresis -30 -KPX x edotaccent -30 -KPX x egrave -30 -KPX x emacron -30 -KPX x eogonek -30 -KPX y a -20 -KPX y aacute -20 -KPX y abreve -20 -KPX y acircumflex -20 -KPX y adieresis -20 -KPX y agrave -20 -KPX y amacron -20 -KPX y aogonek -20 -KPX y aring -20 -KPX y atilde -20 -KPX y comma -100 -KPX y e -20 -KPX y eacute -20 -KPX y ecaron -20 -KPX y ecircumflex -20 -KPX y edieresis -20 -KPX y edotaccent -20 -KPX y egrave -20 -KPX y emacron -20 -KPX y eogonek -20 -KPX y o -20 -KPX y oacute -20 -KPX y ocircumflex -20 -KPX y odieresis -20 -KPX y ograve -20 -KPX y ohungarumlaut -20 -KPX y omacron -20 -KPX y oslash -20 -KPX y otilde -20 -KPX y period -100 -KPX yacute a -20 -KPX yacute aacute -20 -KPX yacute abreve -20 -KPX yacute acircumflex -20 -KPX yacute adieresis -20 -KPX yacute agrave -20 -KPX yacute amacron -20 -KPX yacute aogonek -20 -KPX yacute aring -20 -KPX yacute atilde -20 -KPX yacute comma -100 -KPX yacute e -20 -KPX yacute eacute -20 -KPX yacute ecaron -20 -KPX yacute ecircumflex -20 -KPX yacute edieresis -20 -KPX yacute edotaccent -20 -KPX yacute egrave -20 -KPX yacute emacron -20 -KPX yacute eogonek -20 -KPX yacute o -20 -KPX yacute oacute -20 -KPX yacute ocircumflex -20 -KPX yacute odieresis -20 -KPX yacute ograve -20 -KPX yacute ohungarumlaut -20 -KPX yacute omacron -20 -KPX yacute oslash -20 -KPX yacute otilde -20 -KPX yacute period -100 -KPX ydieresis a -20 -KPX ydieresis aacute -20 -KPX ydieresis abreve -20 -KPX ydieresis acircumflex -20 -KPX ydieresis adieresis -20 -KPX ydieresis agrave -20 -KPX ydieresis amacron -20 -KPX ydieresis aogonek -20 -KPX ydieresis aring -20 -KPX ydieresis atilde -20 -KPX ydieresis comma -100 -KPX ydieresis e -20 -KPX ydieresis eacute -20 -KPX ydieresis ecaron -20 -KPX ydieresis ecircumflex -20 -KPX ydieresis edieresis -20 -KPX ydieresis edotaccent -20 -KPX ydieresis egrave -20 -KPX ydieresis emacron -20 -KPX ydieresis eogonek -20 -KPX ydieresis o -20 -KPX ydieresis oacute -20 -KPX ydieresis ocircumflex -20 -KPX ydieresis odieresis -20 -KPX ydieresis ograve -20 -KPX ydieresis ohungarumlaut -20 -KPX ydieresis omacron -20 -KPX ydieresis oslash -20 -KPX ydieresis otilde -20 -KPX ydieresis period -100 -KPX z e -15 -KPX z eacute -15 -KPX z ecaron -15 -KPX z ecircumflex -15 -KPX z edieresis -15 -KPX z edotaccent -15 -KPX z egrave -15 -KPX z emacron -15 -KPX z eogonek -15 -KPX z o -15 -KPX z oacute -15 -KPX z ocircumflex -15 -KPX z odieresis -15 -KPX z ograve -15 -KPX z ohungarumlaut -15 -KPX z omacron -15 -KPX z oslash -15 -KPX z otilde -15 -KPX zacute e -15 -KPX zacute eacute -15 -KPX zacute ecaron -15 -KPX zacute ecircumflex -15 -KPX zacute edieresis -15 -KPX zacute edotaccent -15 -KPX zacute egrave -15 -KPX zacute emacron -15 -KPX zacute eogonek -15 -KPX zacute o -15 -KPX zacute oacute -15 -KPX zacute ocircumflex -15 -KPX zacute odieresis -15 -KPX zacute ograve -15 -KPX zacute ohungarumlaut -15 -KPX zacute omacron -15 -KPX zacute oslash -15 -KPX zacute otilde -15 -KPX zcaron e -15 -KPX zcaron eacute -15 -KPX zcaron ecaron -15 -KPX zcaron ecircumflex -15 -KPX zcaron edieresis -15 -KPX zcaron edotaccent -15 -KPX zcaron egrave -15 -KPX zcaron emacron -15 -KPX zcaron eogonek -15 -KPX zcaron o -15 -KPX zcaron oacute -15 -KPX zcaron ocircumflex -15 -KPX zcaron odieresis -15 -KPX zcaron ograve -15 -KPX zcaron ohungarumlaut -15 -KPX zcaron omacron -15 -KPX zcaron oslash -15 -KPX zcaron otilde -15 -KPX zdotaccent e -15 -KPX zdotaccent eacute -15 -KPX zdotaccent ecaron -15 -KPX zdotaccent ecircumflex -15 -KPX zdotaccent edieresis -15 -KPX zdotaccent edotaccent -15 -KPX zdotaccent egrave -15 -KPX zdotaccent emacron -15 -KPX zdotaccent eogonek -15 -KPX zdotaccent o -15 -KPX zdotaccent oacute -15 -KPX zdotaccent ocircumflex -15 -KPX zdotaccent odieresis -15 -KPX zdotaccent ograve -15 -KPX zdotaccent ohungarumlaut -15 -KPX zdotaccent omacron -15 -KPX zdotaccent oslash -15 -KPX zdotaccent otilde -15 -EndKernPairs -EndKernData -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Symbol.afm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Symbol.afm deleted file mode 100644 index 6a5386a9..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Symbol.afm +++ /dev/null @@ -1,213 +0,0 @@ -StartFontMetrics 4.1 -Comment Copyright (c) 1985, 1987, 1989, 1990, 1997 Adobe Systems Incorporated. All rights reserved. -Comment Creation Date: Thu May 1 15:12:25 1997 -Comment UniqueID 43064 -Comment VMusage 30820 39997 -FontName Symbol -FullName Symbol -FamilyName Symbol -Weight Medium -ItalicAngle 0 -IsFixedPitch false -CharacterSet Special -FontBBox -180 -293 1090 1010 -UnderlinePosition -100 -UnderlineThickness 50 -Version 001.008 -Notice Copyright (c) 1985, 1987, 1989, 1990, 1997 Adobe Systems Incorporated. All rights reserved. -EncodingScheme FontSpecific -StdHW 92 -StdVW 85 -StartCharMetrics 190 -C 32 ; WX 250 ; N space ; B 0 0 0 0 ; -C 33 ; WX 333 ; N exclam ; B 128 -17 240 672 ; -C 34 ; WX 713 ; N universal ; B 31 0 681 705 ; -C 35 ; WX 500 ; N numbersign ; B 20 -16 481 673 ; -C 36 ; WX 549 ; N existential ; B 25 0 478 707 ; -C 37 ; WX 833 ; N percent ; B 63 -36 771 655 ; -C 38 ; WX 778 ; N ampersand ; B 41 -18 750 661 ; -C 39 ; WX 439 ; N suchthat ; B 48 -17 414 500 ; -C 40 ; WX 333 ; N parenleft ; B 53 -191 300 673 ; -C 41 ; WX 333 ; N parenright ; B 30 -191 277 673 ; -C 42 ; WX 500 ; N asteriskmath ; B 65 134 427 551 ; -C 43 ; WX 549 ; N plus ; B 10 0 539 533 ; -C 44 ; WX 250 ; N comma ; B 56 -152 194 104 ; -C 45 ; WX 549 ; N minus ; B 11 233 535 288 ; -C 46 ; WX 250 ; N period ; B 69 -17 181 95 ; -C 47 ; WX 278 ; N slash ; B 0 -18 254 646 ; -C 48 ; WX 500 ; N zero ; B 24 -14 476 685 ; -C 49 ; WX 500 ; N one ; B 117 0 390 673 ; -C 50 ; WX 500 ; N two ; B 25 0 475 685 ; -C 51 ; WX 500 ; N three ; B 43 -14 435 685 ; -C 52 ; WX 500 ; N four ; B 15 0 469 685 ; -C 53 ; WX 500 ; N five ; B 32 -14 445 690 ; -C 54 ; WX 500 ; N six ; B 34 -14 468 685 ; -C 55 ; WX 500 ; N seven ; B 24 -16 448 673 ; -C 56 ; WX 500 ; N eight ; B 56 -14 445 685 ; -C 57 ; WX 500 ; N nine ; B 30 -18 459 685 ; -C 58 ; WX 278 ; N colon ; B 81 -17 193 460 ; -C 59 ; WX 278 ; N semicolon ; B 83 -152 221 460 ; -C 60 ; WX 549 ; N less ; B 26 0 523 522 ; -C 61 ; WX 549 ; N equal ; B 11 141 537 390 ; -C 62 ; WX 549 ; N greater ; B 26 0 523 522 ; -C 63 ; WX 444 ; N question ; B 70 -17 412 686 ; -C 64 ; WX 549 ; N congruent ; B 11 0 537 475 ; -C 65 ; WX 722 ; N Alpha ; B 4 0 684 673 ; -C 66 ; WX 667 ; N Beta ; B 29 0 592 673 ; -C 67 ; WX 722 ; N Chi ; B -9 0 704 673 ; -C 68 ; WX 612 ; N Delta ; B 6 0 608 688 ; -C 69 ; WX 611 ; N Epsilon ; B 32 0 617 673 ; -C 70 ; WX 763 ; N Phi ; B 26 0 741 673 ; -C 71 ; WX 603 ; N Gamma ; B 24 0 609 673 ; -C 72 ; WX 722 ; N Eta ; B 39 0 729 673 ; -C 73 ; WX 333 ; N Iota ; B 32 0 316 673 ; -C 74 ; WX 631 ; N theta1 ; B 18 -18 623 689 ; -C 75 ; WX 722 ; N Kappa ; B 35 0 722 673 ; -C 76 ; WX 686 ; N Lambda ; B 6 0 680 688 ; -C 77 ; WX 889 ; N Mu ; B 28 0 887 673 ; -C 78 ; WX 722 ; N Nu ; B 29 -8 720 673 ; -C 79 ; WX 722 ; N Omicron ; B 41 -17 715 685 ; -C 80 ; WX 768 ; N Pi ; B 25 0 745 673 ; -C 81 ; WX 741 ; N Theta ; B 41 -17 715 685 ; -C 82 ; WX 556 ; N Rho ; B 28 0 563 673 ; -C 83 ; WX 592 ; N Sigma ; B 5 0 589 673 ; -C 84 ; WX 611 ; N Tau ; B 33 0 607 673 ; -C 85 ; WX 690 ; N Upsilon ; B -8 0 694 673 ; -C 86 ; WX 439 ; N sigma1 ; B 40 -233 436 500 ; -C 87 ; WX 768 ; N Omega ; B 34 0 736 688 ; -C 88 ; WX 645 ; N Xi ; B 40 0 599 673 ; -C 89 ; WX 795 ; N Psi ; B 15 0 781 684 ; -C 90 ; WX 611 ; N Zeta ; B 44 0 636 673 ; -C 91 ; WX 333 ; N bracketleft ; B 86 -155 299 674 ; -C 92 ; WX 863 ; N therefore ; B 163 0 701 487 ; -C 93 ; WX 333 ; N bracketright ; B 33 -155 246 674 ; -C 94 ; WX 658 ; N perpendicular ; B 15 0 652 674 ; -C 95 ; WX 500 ; N underscore ; B -2 -125 502 -75 ; -C 96 ; WX 500 ; N radicalex ; B 480 881 1090 917 ; -C 97 ; WX 631 ; N alpha ; B 41 -18 622 500 ; -C 98 ; WX 549 ; N beta ; B 61 -223 515 741 ; -C 99 ; WX 549 ; N chi ; B 12 -231 522 499 ; -C 100 ; WX 494 ; N delta ; B 40 -19 481 740 ; -C 101 ; WX 439 ; N epsilon ; B 22 -19 427 502 ; -C 102 ; WX 521 ; N phi ; B 28 -224 492 673 ; -C 103 ; WX 411 ; N gamma ; B 5 -225 484 499 ; -C 104 ; WX 603 ; N eta ; B 0 -202 527 514 ; -C 105 ; WX 329 ; N iota ; B 0 -17 301 503 ; -C 106 ; WX 603 ; N phi1 ; B 36 -224 587 499 ; -C 107 ; WX 549 ; N kappa ; B 33 0 558 501 ; -C 108 ; WX 549 ; N lambda ; B 24 -17 548 739 ; -C 109 ; WX 576 ; N mu ; B 33 -223 567 500 ; -C 110 ; WX 521 ; N nu ; B -9 -16 475 507 ; -C 111 ; WX 549 ; N omicron ; B 35 -19 501 499 ; -C 112 ; WX 549 ; N pi ; B 10 -19 530 487 ; -C 113 ; WX 521 ; N theta ; B 43 -17 485 690 ; -C 114 ; WX 549 ; N rho ; B 50 -230 490 499 ; -C 115 ; WX 603 ; N sigma ; B 30 -21 588 500 ; -C 116 ; WX 439 ; N tau ; B 10 -19 418 500 ; -C 117 ; WX 576 ; N upsilon ; B 7 -18 535 507 ; -C 118 ; WX 713 ; N omega1 ; B 12 -18 671 583 ; -C 119 ; WX 686 ; N omega ; B 42 -17 684 500 ; -C 120 ; WX 493 ; N xi ; B 27 -224 469 766 ; -C 121 ; WX 686 ; N psi ; B 12 -228 701 500 ; -C 122 ; WX 494 ; N zeta ; B 60 -225 467 756 ; -C 123 ; WX 480 ; N braceleft ; B 58 -183 397 673 ; -C 124 ; WX 200 ; N bar ; B 65 -293 135 707 ; -C 125 ; WX 480 ; N braceright ; B 79 -183 418 673 ; -C 126 ; WX 549 ; N similar ; B 17 203 529 307 ; -C 160 ; WX 750 ; N Euro ; B 20 -12 714 685 ; -C 161 ; WX 620 ; N Upsilon1 ; B -2 0 610 685 ; -C 162 ; WX 247 ; N minute ; B 27 459 228 735 ; -C 163 ; WX 549 ; N lessequal ; B 29 0 526 639 ; -C 164 ; WX 167 ; N fraction ; B -180 -12 340 677 ; -C 165 ; WX 713 ; N infinity ; B 26 124 688 404 ; -C 166 ; WX 500 ; N florin ; B 2 -193 494 686 ; -C 167 ; WX 753 ; N club ; B 86 -26 660 533 ; -C 168 ; WX 753 ; N diamond ; B 142 -36 600 550 ; -C 169 ; WX 753 ; N heart ; B 117 -33 631 532 ; -C 170 ; WX 753 ; N spade ; B 113 -36 629 548 ; -C 171 ; WX 1042 ; N arrowboth ; B 24 -15 1024 511 ; -C 172 ; WX 987 ; N arrowleft ; B 32 -15 942 511 ; -C 173 ; WX 603 ; N arrowup ; B 45 0 571 910 ; -C 174 ; WX 987 ; N arrowright ; B 49 -15 959 511 ; -C 175 ; WX 603 ; N arrowdown ; B 45 -22 571 888 ; -C 176 ; WX 400 ; N degree ; B 50 385 350 685 ; -C 177 ; WX 549 ; N plusminus ; B 10 0 539 645 ; -C 178 ; WX 411 ; N second ; B 20 459 413 737 ; -C 179 ; WX 549 ; N greaterequal ; B 29 0 526 639 ; -C 180 ; WX 549 ; N multiply ; B 17 8 533 524 ; -C 181 ; WX 713 ; N proportional ; B 27 123 639 404 ; -C 182 ; WX 494 ; N partialdiff ; B 26 -20 462 746 ; -C 183 ; WX 460 ; N bullet ; B 50 113 410 473 ; -C 184 ; WX 549 ; N divide ; B 10 71 536 456 ; -C 185 ; WX 549 ; N notequal ; B 15 -25 540 549 ; -C 186 ; WX 549 ; N equivalence ; B 14 82 538 443 ; -C 187 ; WX 549 ; N approxequal ; B 14 135 527 394 ; -C 188 ; WX 1000 ; N ellipsis ; B 111 -17 889 95 ; -C 189 ; WX 603 ; N arrowvertex ; B 280 -120 336 1010 ; -C 190 ; WX 1000 ; N arrowhorizex ; B -60 220 1050 276 ; -C 191 ; WX 658 ; N carriagereturn ; B 15 -16 602 629 ; -C 192 ; WX 823 ; N aleph ; B 175 -18 661 658 ; -C 193 ; WX 686 ; N Ifraktur ; B 10 -53 578 740 ; -C 194 ; WX 795 ; N Rfraktur ; B 26 -15 759 734 ; -C 195 ; WX 987 ; N weierstrass ; B 159 -211 870 573 ; -C 196 ; WX 768 ; N circlemultiply ; B 43 -17 733 673 ; -C 197 ; WX 768 ; N circleplus ; B 43 -15 733 675 ; -C 198 ; WX 823 ; N emptyset ; B 39 -24 781 719 ; -C 199 ; WX 768 ; N intersection ; B 40 0 732 509 ; -C 200 ; WX 768 ; N union ; B 40 -17 732 492 ; -C 201 ; WX 713 ; N propersuperset ; B 20 0 673 470 ; -C 202 ; WX 713 ; N reflexsuperset ; B 20 -125 673 470 ; -C 203 ; WX 713 ; N notsubset ; B 36 -70 690 540 ; -C 204 ; WX 713 ; N propersubset ; B 37 0 690 470 ; -C 205 ; WX 713 ; N reflexsubset ; B 37 -125 690 470 ; -C 206 ; WX 713 ; N element ; B 45 0 505 468 ; -C 207 ; WX 713 ; N notelement ; B 45 -58 505 555 ; -C 208 ; WX 768 ; N angle ; B 26 0 738 673 ; -C 209 ; WX 713 ; N gradient ; B 36 -19 681 718 ; -C 210 ; WX 790 ; N registerserif ; B 50 -17 740 673 ; -C 211 ; WX 790 ; N copyrightserif ; B 51 -15 741 675 ; -C 212 ; WX 890 ; N trademarkserif ; B 18 293 855 673 ; -C 213 ; WX 823 ; N product ; B 25 -101 803 751 ; -C 214 ; WX 549 ; N radical ; B 10 -38 515 917 ; -C 215 ; WX 250 ; N dotmath ; B 69 210 169 310 ; -C 216 ; WX 713 ; N logicalnot ; B 15 0 680 288 ; -C 217 ; WX 603 ; N logicaland ; B 23 0 583 454 ; -C 218 ; WX 603 ; N logicalor ; B 30 0 578 477 ; -C 219 ; WX 1042 ; N arrowdblboth ; B 27 -20 1023 510 ; -C 220 ; WX 987 ; N arrowdblleft ; B 30 -15 939 513 ; -C 221 ; WX 603 ; N arrowdblup ; B 39 2 567 911 ; -C 222 ; WX 987 ; N arrowdblright ; B 45 -20 954 508 ; -C 223 ; WX 603 ; N arrowdbldown ; B 44 -19 572 890 ; -C 224 ; WX 494 ; N lozenge ; B 18 0 466 745 ; -C 225 ; WX 329 ; N angleleft ; B 25 -198 306 746 ; -C 226 ; WX 790 ; N registersans ; B 50 -20 740 670 ; -C 227 ; WX 790 ; N copyrightsans ; B 49 -15 739 675 ; -C 228 ; WX 786 ; N trademarksans ; B 5 293 725 673 ; -C 229 ; WX 713 ; N summation ; B 14 -108 695 752 ; -C 230 ; WX 384 ; N parenlefttp ; B 24 -293 436 926 ; -C 231 ; WX 384 ; N parenleftex ; B 24 -85 108 925 ; -C 232 ; WX 384 ; N parenleftbt ; B 24 -293 436 926 ; -C 233 ; WX 384 ; N bracketlefttp ; B 0 -80 349 926 ; -C 234 ; WX 384 ; N bracketleftex ; B 0 -79 77 925 ; -C 235 ; WX 384 ; N bracketleftbt ; B 0 -80 349 926 ; -C 236 ; WX 494 ; N bracelefttp ; B 209 -85 445 925 ; -C 237 ; WX 494 ; N braceleftmid ; B 20 -85 284 935 ; -C 238 ; WX 494 ; N braceleftbt ; B 209 -75 445 935 ; -C 239 ; WX 494 ; N braceex ; B 209 -85 284 935 ; -C 241 ; WX 329 ; N angleright ; B 21 -198 302 746 ; -C 242 ; WX 274 ; N integral ; B 2 -107 291 916 ; -C 243 ; WX 686 ; N integraltp ; B 308 -88 675 920 ; -C 244 ; WX 686 ; N integralex ; B 308 -88 378 975 ; -C 245 ; WX 686 ; N integralbt ; B 11 -87 378 921 ; -C 246 ; WX 384 ; N parenrighttp ; B 54 -293 466 926 ; -C 247 ; WX 384 ; N parenrightex ; B 382 -85 466 925 ; -C 248 ; WX 384 ; N parenrightbt ; B 54 -293 466 926 ; -C 249 ; WX 384 ; N bracketrighttp ; B 22 -80 371 926 ; -C 250 ; WX 384 ; N bracketrightex ; B 294 -79 371 925 ; -C 251 ; WX 384 ; N bracketrightbt ; B 22 -80 371 926 ; -C 252 ; WX 494 ; N bracerighttp ; B 48 -85 284 925 ; -C 253 ; WX 494 ; N bracerightmid ; B 209 -85 473 935 ; -C 254 ; WX 494 ; N bracerightbt ; B 48 -75 284 935 ; -C -1 ; WX 790 ; N apple ; B 56 -3 733 808 ; -EndCharMetrics -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Times-Bold.afm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Times-Bold.afm deleted file mode 100644 index 5907c3db..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Times-Bold.afm +++ /dev/null @@ -1,2590 +0,0 @@ -StartFontMetrics 4.1 -Comment Copyright (c) 1985, 1987, 1989, 1990, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved. -Comment Creation Date: Thu May 1 12:52:56 1997 -Comment UniqueID 43065 -Comment VMusage 41636 52661 -FontName Times-Bold -FullName Times Bold -FamilyName Times -Weight Bold -ItalicAngle 0 -IsFixedPitch false -CharacterSet ExtendedRoman -FontBBox -168 -218 1000 935 -UnderlinePosition -100 -UnderlineThickness 50 -Version 002.000 -Notice Copyright (c) 1985, 1987, 1989, 1990, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved.Times is a trademark of Linotype-Hell AG and/or its subsidiaries. -EncodingScheme WinAnsiEncoding -CapHeight 676 -XHeight 461 -Ascender 683 -Descender -217 -StdHW 44 -StdVW 139 -StartCharMetrics 317 -C 32 ; WX 250 ; N space ; B 0 0 0 0 ; -C 160 ; WX 250 ; N space ; B 0 0 0 0 ; -C 33 ; WX 333 ; N exclam ; B 81 -13 251 691 ; -C 34 ; WX 555 ; N quotedbl ; B 83 404 472 691 ; -C 35 ; WX 500 ; N numbersign ; B 4 0 496 700 ; -C 36 ; WX 500 ; N dollar ; B 29 -99 472 750 ; -C 37 ; WX 1000 ; N percent ; B 124 -14 877 692 ; -C 38 ; WX 833 ; N ampersand ; B 62 -16 787 691 ; -C 146 ; WX 333 ; N quoteright ; B 79 356 263 691 ; -C 40 ; WX 333 ; N parenleft ; B 46 -168 306 694 ; -C 41 ; WX 333 ; N parenright ; B 27 -168 287 694 ; -C 42 ; WX 500 ; N asterisk ; B 56 255 447 691 ; -C 43 ; WX 570 ; N plus ; B 33 0 537 506 ; -C 44 ; WX 250 ; N comma ; B 39 -180 223 155 ; -C 45 ; WX 333 ; N hyphen ; B 44 171 287 287 ; -C 173 ; WX 333 ; N hyphen ; B 44 171 287 287 ; -C 46 ; WX 250 ; N period ; B 41 -13 210 156 ; -C 47 ; WX 278 ; N slash ; B -24 -19 302 691 ; -C 48 ; WX 500 ; N zero ; B 24 -13 476 688 ; -C 49 ; WX 500 ; N one ; B 65 0 442 688 ; -C 50 ; WX 500 ; N two ; B 17 0 478 688 ; -C 51 ; WX 500 ; N three ; B 16 -14 468 688 ; -C 52 ; WX 500 ; N four ; B 19 0 475 688 ; -C 53 ; WX 500 ; N five ; B 22 -8 470 676 ; -C 54 ; WX 500 ; N six ; B 28 -13 475 688 ; -C 55 ; WX 500 ; N seven ; B 17 0 477 676 ; -C 56 ; WX 500 ; N eight ; B 28 -13 472 688 ; -C 57 ; WX 500 ; N nine ; B 26 -13 473 688 ; -C 58 ; WX 333 ; N colon ; B 82 -13 251 472 ; -C 59 ; WX 333 ; N semicolon ; B 82 -180 266 472 ; -C 60 ; WX 570 ; N less ; B 31 -8 539 514 ; -C 61 ; WX 570 ; N equal ; B 33 107 537 399 ; -C 62 ; WX 570 ; N greater ; B 31 -8 539 514 ; -C 63 ; WX 500 ; N question ; B 57 -13 445 689 ; -C 64 ; WX 930 ; N at ; B 108 -19 822 691 ; -C 65 ; WX 722 ; N A ; B 9 0 689 690 ; -C 66 ; WX 667 ; N B ; B 16 0 619 676 ; -C 67 ; WX 722 ; N C ; B 49 -19 687 691 ; -C 68 ; WX 722 ; N D ; B 14 0 690 676 ; -C 69 ; WX 667 ; N E ; B 16 0 641 676 ; -C 70 ; WX 611 ; N F ; B 16 0 583 676 ; -C 71 ; WX 778 ; N G ; B 37 -19 755 691 ; -C 72 ; WX 778 ; N H ; B 21 0 759 676 ; -C 73 ; WX 389 ; N I ; B 20 0 370 676 ; -C 74 ; WX 500 ; N J ; B 3 -96 479 676 ; -C 75 ; WX 778 ; N K ; B 30 0 769 676 ; -C 76 ; WX 667 ; N L ; B 19 0 638 676 ; -C 77 ; WX 944 ; N M ; B 14 0 921 676 ; -C 78 ; WX 722 ; N N ; B 16 -18 701 676 ; -C 79 ; WX 778 ; N O ; B 35 -19 743 691 ; -C 80 ; WX 611 ; N P ; B 16 0 600 676 ; -C 81 ; WX 778 ; N Q ; B 35 -176 743 691 ; -C 82 ; WX 722 ; N R ; B 26 0 715 676 ; -C 83 ; WX 556 ; N S ; B 35 -19 513 692 ; -C 84 ; WX 667 ; N T ; B 31 0 636 676 ; -C 85 ; WX 722 ; N U ; B 16 -19 701 676 ; -C 86 ; WX 722 ; N V ; B 16 -18 701 676 ; -C 87 ; WX 1000 ; N W ; B 19 -15 981 676 ; -C 88 ; WX 722 ; N X ; B 16 0 699 676 ; -C 89 ; WX 722 ; N Y ; B 15 0 699 676 ; -C 90 ; WX 667 ; N Z ; B 28 0 634 676 ; -C 91 ; WX 333 ; N bracketleft ; B 67 -149 301 678 ; -C 92 ; WX 278 ; N backslash ; B -25 -19 303 691 ; -C 93 ; WX 333 ; N bracketright ; B 32 -149 266 678 ; -C 94 ; WX 581 ; N asciicircum ; B 73 311 509 676 ; -C 95 ; WX 500 ; N underscore ; B 0 -125 500 -75 ; -C 145 ; WX 333 ; N quoteleft ; B 70 356 254 691 ; -C 97 ; WX 500 ; N a ; B 25 -14 488 473 ; -C 98 ; WX 556 ; N b ; B 17 -14 521 676 ; -C 99 ; WX 444 ; N c ; B 25 -14 430 473 ; -C 100 ; WX 556 ; N d ; B 25 -14 534 676 ; -C 101 ; WX 444 ; N e ; B 25 -14 426 473 ; -C 102 ; WX 333 ; N f ; B 14 0 389 691 ; L i fi ; L l fl ; -C 103 ; WX 500 ; N g ; B 28 -206 483 473 ; -C 104 ; WX 556 ; N h ; B 16 0 534 676 ; -C 105 ; WX 278 ; N i ; B 16 0 255 691 ; -C 106 ; WX 333 ; N j ; B -57 -203 263 691 ; -C 107 ; WX 556 ; N k ; B 22 0 543 676 ; -C 108 ; WX 278 ; N l ; B 16 0 255 676 ; -C 109 ; WX 833 ; N m ; B 16 0 814 473 ; -C 110 ; WX 556 ; N n ; B 21 0 539 473 ; -C 111 ; WX 500 ; N o ; B 25 -14 476 473 ; -C 112 ; WX 556 ; N p ; B 19 -205 524 473 ; -C 113 ; WX 556 ; N q ; B 34 -205 536 473 ; -C 114 ; WX 444 ; N r ; B 29 0 434 473 ; -C 115 ; WX 389 ; N s ; B 25 -14 361 473 ; -C 116 ; WX 333 ; N t ; B 20 -12 332 630 ; -C 117 ; WX 556 ; N u ; B 16 -14 537 461 ; -C 118 ; WX 500 ; N v ; B 21 -14 485 461 ; -C 119 ; WX 722 ; N w ; B 23 -14 707 461 ; -C 120 ; WX 500 ; N x ; B 12 0 484 461 ; -C 121 ; WX 500 ; N y ; B 16 -205 480 461 ; -C 122 ; WX 444 ; N z ; B 21 0 420 461 ; -C 123 ; WX 394 ; N braceleft ; B 22 -175 340 698 ; -C 124 ; WX 220 ; N bar ; B 66 -218 154 782 ; -C 125 ; WX 394 ; N braceright ; B 54 -175 372 698 ; -C 126 ; WX 520 ; N asciitilde ; B 29 173 491 333 ; -C 161 ; WX 333 ; N exclamdown ; B 82 -203 252 501 ; -C 162 ; WX 500 ; N cent ; B 53 -140 458 588 ; -C 163 ; WX 500 ; N sterling ; B 21 -14 477 684 ; -C -1 ; WX 167 ; N fraction ; B -168 -12 329 688 ; -C 165 ; WX 500 ; N yen ; B -64 0 547 676 ; -C 131 ; WX 500 ; N florin ; B 0 -155 498 706 ; -C 167 ; WX 500 ; N section ; B 57 -132 443 691 ; -C 164 ; WX 500 ; N currency ; B -26 61 526 613 ; -C 39 ; WX 278 ; N quotesingle ; B 75 404 204 691 ; -C 147 ; WX 500 ; N quotedblleft ; B 32 356 486 691 ; -C 171 ; WX 500 ; N guillemotleft ; B 23 36 473 415 ; -C 139 ; WX 333 ; N guilsinglleft ; B 51 36 305 415 ; -C 155 ; WX 333 ; N guilsinglright ; B 28 36 282 415 ; -C -1 ; WX 556 ; N fi ; B 14 0 536 691 ; -C -1 ; WX 556 ; N fl ; B 14 0 536 691 ; -C 150 ; WX 500 ; N endash ; B 0 181 500 271 ; -C 134 ; WX 500 ; N dagger ; B 47 -134 453 691 ; -C 135 ; WX 500 ; N daggerdbl ; B 45 -132 456 691 ; -C 183 ; WX 250 ; N periodcentered ; B 41 248 210 417 ; -C 182 ; WX 540 ; N paragraph ; B 0 -186 519 676 ; -C 149 ; WX 350 ; N bullet ; B 35 198 315 478 ; -C 130 ; WX 333 ; N quotesinglbase ; B 79 -180 263 155 ; -C 132 ; WX 500 ; N quotedblbase ; B 14 -180 468 155 ; -C 148 ; WX 500 ; N quotedblright ; B 14 356 468 691 ; -C 187 ; WX 500 ; N guillemotright ; B 27 36 477 415 ; -C 133 ; WX 1000 ; N ellipsis ; B 82 -13 917 156 ; -C 137 ; WX 1000 ; N perthousand ; B 7 -29 995 706 ; -C 191 ; WX 500 ; N questiondown ; B 55 -201 443 501 ; -C 96 ; WX 333 ; N grave ; B 8 528 246 713 ; -C 180 ; WX 333 ; N acute ; B 86 528 324 713 ; -C 136 ; WX 333 ; N circumflex ; B -2 528 335 704 ; -C 152 ; WX 333 ; N tilde ; B -16 547 349 674 ; -C 175 ; WX 333 ; N macron ; B 1 565 331 637 ; -C -1 ; WX 333 ; N breve ; B 15 528 318 691 ; -C -1 ; WX 333 ; N dotaccent ; B 103 536 258 691 ; -C 168 ; WX 333 ; N dieresis ; B -2 537 335 667 ; -C -1 ; WX 333 ; N ring ; B 60 527 273 740 ; -C 184 ; WX 333 ; N cedilla ; B 68 -218 294 0 ; -C -1 ; WX 333 ; N hungarumlaut ; B -13 528 425 713 ; -C -1 ; WX 333 ; N ogonek ; B 90 -193 319 24 ; -C -1 ; WX 333 ; N caron ; B -2 528 335 704 ; -C 151 ; WX 1000 ; N emdash ; B 0 181 1000 271 ; -C 198 ; WX 1000 ; N AE ; B 4 0 951 676 ; -C 170 ; WX 300 ; N ordfeminine ; B -1 397 301 688 ; -C -1 ; WX 667 ; N Lslash ; B 19 0 638 676 ; -C 216 ; WX 778 ; N Oslash ; B 35 -74 743 737 ; -C 140 ; WX 1000 ; N OE ; B 22 -5 981 684 ; -C 186 ; WX 330 ; N ordmasculine ; B 18 397 312 688 ; -C 230 ; WX 722 ; N ae ; B 33 -14 693 473 ; -C -1 ; WX 278 ; N dotlessi ; B 16 0 255 461 ; -C -1 ; WX 278 ; N lslash ; B -22 0 303 676 ; -C 248 ; WX 500 ; N oslash ; B 25 -92 476 549 ; -C 156 ; WX 722 ; N oe ; B 22 -14 696 473 ; -C 223 ; WX 556 ; N germandbls ; B 19 -12 517 691 ; -C 207 ; WX 389 ; N Idieresis ; B 20 0 370 877 ; -C 233 ; WX 444 ; N eacute ; B 25 -14 426 713 ; -C -1 ; WX 500 ; N abreve ; B 25 -14 488 691 ; -C -1 ; WX 556 ; N uhungarumlaut ; B 16 -14 557 713 ; -C -1 ; WX 444 ; N ecaron ; B 25 -14 426 704 ; -C 159 ; WX 722 ; N Ydieresis ; B 15 0 699 877 ; -C 247 ; WX 570 ; N divide ; B 33 -31 537 537 ; -C 221 ; WX 722 ; N Yacute ; B 15 0 699 923 ; -C 194 ; WX 722 ; N Acircumflex ; B 9 0 689 914 ; -C 225 ; WX 500 ; N aacute ; B 25 -14 488 713 ; -C 219 ; WX 722 ; N Ucircumflex ; B 16 -19 701 914 ; -C 253 ; WX 500 ; N yacute ; B 16 -205 480 713 ; -C -1 ; WX 389 ; N scommaaccent ; B 25 -218 361 473 ; -C 234 ; WX 444 ; N ecircumflex ; B 25 -14 426 704 ; -C -1 ; WX 722 ; N Uring ; B 16 -19 701 935 ; -C 220 ; WX 722 ; N Udieresis ; B 16 -19 701 877 ; -C -1 ; WX 500 ; N aogonek ; B 25 -193 504 473 ; -C 218 ; WX 722 ; N Uacute ; B 16 -19 701 923 ; -C -1 ; WX 556 ; N uogonek ; B 16 -193 539 461 ; -C 203 ; WX 667 ; N Edieresis ; B 16 0 641 877 ; -C -1 ; WX 722 ; N Dcroat ; B 6 0 690 676 ; -C -1 ; WX 250 ; N commaaccent ; B 47 -218 203 -50 ; -C 169 ; WX 747 ; N copyright ; B 26 -19 721 691 ; -C -1 ; WX 667 ; N Emacron ; B 16 0 641 847 ; -C -1 ; WX 444 ; N ccaron ; B 25 -14 430 704 ; -C 229 ; WX 500 ; N aring ; B 25 -14 488 740 ; -C -1 ; WX 722 ; N Ncommaaccent ; B 16 -188 701 676 ; -C -1 ; WX 278 ; N lacute ; B 16 0 297 923 ; -C 224 ; WX 500 ; N agrave ; B 25 -14 488 713 ; -C -1 ; WX 667 ; N Tcommaaccent ; B 31 -218 636 676 ; -C -1 ; WX 722 ; N Cacute ; B 49 -19 687 923 ; -C 227 ; WX 500 ; N atilde ; B 25 -14 488 674 ; -C -1 ; WX 667 ; N Edotaccent ; B 16 0 641 901 ; -C 154 ; WX 389 ; N scaron ; B 25 -14 363 704 ; -C -1 ; WX 389 ; N scedilla ; B 25 -218 361 473 ; -C 237 ; WX 278 ; N iacute ; B 16 0 289 713 ; -C -1 ; WX 494 ; N lozenge ; B 10 0 484 745 ; -C -1 ; WX 722 ; N Rcaron ; B 26 0 715 914 ; -C -1 ; WX 778 ; N Gcommaaccent ; B 37 -218 755 691 ; -C 251 ; WX 556 ; N ucircumflex ; B 16 -14 537 704 ; -C 226 ; WX 500 ; N acircumflex ; B 25 -14 488 704 ; -C -1 ; WX 722 ; N Amacron ; B 9 0 689 847 ; -C -1 ; WX 444 ; N rcaron ; B 29 0 434 704 ; -C 231 ; WX 444 ; N ccedilla ; B 25 -218 430 473 ; -C -1 ; WX 667 ; N Zdotaccent ; B 28 0 634 901 ; -C 222 ; WX 611 ; N Thorn ; B 16 0 600 676 ; -C -1 ; WX 778 ; N Omacron ; B 35 -19 743 847 ; -C -1 ; WX 722 ; N Racute ; B 26 0 715 923 ; -C -1 ; WX 556 ; N Sacute ; B 35 -19 513 923 ; -C -1 ; WX 672 ; N dcaron ; B 25 -14 681 682 ; -C -1 ; WX 722 ; N Umacron ; B 16 -19 701 847 ; -C -1 ; WX 556 ; N uring ; B 16 -14 537 740 ; -C 179 ; WX 300 ; N threesuperior ; B 3 268 297 688 ; -C 210 ; WX 778 ; N Ograve ; B 35 -19 743 923 ; -C 192 ; WX 722 ; N Agrave ; B 9 0 689 923 ; -C -1 ; WX 722 ; N Abreve ; B 9 0 689 901 ; -C 215 ; WX 570 ; N multiply ; B 48 16 522 490 ; -C 250 ; WX 556 ; N uacute ; B 16 -14 537 713 ; -C -1 ; WX 667 ; N Tcaron ; B 31 0 636 914 ; -C -1 ; WX 494 ; N partialdiff ; B 11 -21 494 750 ; -C 255 ; WX 500 ; N ydieresis ; B 16 -205 480 667 ; -C -1 ; WX 722 ; N Nacute ; B 16 -18 701 923 ; -C 238 ; WX 278 ; N icircumflex ; B -37 0 300 704 ; -C 202 ; WX 667 ; N Ecircumflex ; B 16 0 641 914 ; -C 228 ; WX 500 ; N adieresis ; B 25 -14 488 667 ; -C 235 ; WX 444 ; N edieresis ; B 25 -14 426 667 ; -C -1 ; WX 444 ; N cacute ; B 25 -14 430 713 ; -C -1 ; WX 556 ; N nacute ; B 21 0 539 713 ; -C -1 ; WX 556 ; N umacron ; B 16 -14 537 637 ; -C -1 ; WX 722 ; N Ncaron ; B 16 -18 701 914 ; -C 205 ; WX 389 ; N Iacute ; B 20 0 370 923 ; -C 177 ; WX 570 ; N plusminus ; B 33 0 537 506 ; -C 166 ; WX 220 ; N brokenbar ; B 66 -143 154 707 ; -C 174 ; WX 747 ; N registered ; B 26 -19 721 691 ; -C -1 ; WX 778 ; N Gbreve ; B 37 -19 755 901 ; -C -1 ; WX 389 ; N Idotaccent ; B 20 0 370 901 ; -C -1 ; WX 600 ; N summation ; B 14 -10 585 706 ; -C 200 ; WX 667 ; N Egrave ; B 16 0 641 923 ; -C -1 ; WX 444 ; N racute ; B 29 0 434 713 ; -C -1 ; WX 500 ; N omacron ; B 25 -14 476 637 ; -C -1 ; WX 667 ; N Zacute ; B 28 0 634 923 ; -C 142 ; WX 667 ; N Zcaron ; B 28 0 634 914 ; -C -1 ; WX 549 ; N greaterequal ; B 26 0 523 704 ; -C 208 ; WX 722 ; N Eth ; B 6 0 690 676 ; -C 199 ; WX 722 ; N Ccedilla ; B 49 -218 687 691 ; -C -1 ; WX 278 ; N lcommaaccent ; B 16 -218 255 676 ; -C -1 ; WX 416 ; N tcaron ; B 20 -12 425 815 ; -C -1 ; WX 444 ; N eogonek ; B 25 -193 426 473 ; -C -1 ; WX 722 ; N Uogonek ; B 16 -193 701 676 ; -C 193 ; WX 722 ; N Aacute ; B 9 0 689 923 ; -C 196 ; WX 722 ; N Adieresis ; B 9 0 689 877 ; -C 232 ; WX 444 ; N egrave ; B 25 -14 426 713 ; -C -1 ; WX 444 ; N zacute ; B 21 0 420 713 ; -C -1 ; WX 278 ; N iogonek ; B 16 -193 274 691 ; -C 211 ; WX 778 ; N Oacute ; B 35 -19 743 923 ; -C 243 ; WX 500 ; N oacute ; B 25 -14 476 713 ; -C -1 ; WX 500 ; N amacron ; B 25 -14 488 637 ; -C -1 ; WX 389 ; N sacute ; B 25 -14 361 713 ; -C 239 ; WX 278 ; N idieresis ; B -37 0 300 667 ; -C 212 ; WX 778 ; N Ocircumflex ; B 35 -19 743 914 ; -C 217 ; WX 722 ; N Ugrave ; B 16 -19 701 923 ; -C -1 ; WX 612 ; N Delta ; B 6 0 608 688 ; -C 254 ; WX 556 ; N thorn ; B 19 -205 524 676 ; -C 178 ; WX 300 ; N twosuperior ; B 0 275 300 688 ; -C 214 ; WX 778 ; N Odieresis ; B 35 -19 743 877 ; -C 181 ; WX 556 ; N mu ; B 33 -206 536 461 ; -C 236 ; WX 278 ; N igrave ; B -27 0 255 713 ; -C -1 ; WX 500 ; N ohungarumlaut ; B 25 -14 529 713 ; -C -1 ; WX 667 ; N Eogonek ; B 16 -193 644 676 ; -C -1 ; WX 556 ; N dcroat ; B 25 -14 534 676 ; -C 190 ; WX 750 ; N threequarters ; B 23 -12 733 688 ; -C -1 ; WX 556 ; N Scedilla ; B 35 -218 513 692 ; -C -1 ; WX 394 ; N lcaron ; B 16 0 412 682 ; -C -1 ; WX 778 ; N Kcommaaccent ; B 30 -218 769 676 ; -C -1 ; WX 667 ; N Lacute ; B 19 0 638 923 ; -C 153 ; WX 1000 ; N trademark ; B 24 271 977 676 ; -C -1 ; WX 444 ; N edotaccent ; B 25 -14 426 691 ; -C 204 ; WX 389 ; N Igrave ; B 20 0 370 923 ; -C -1 ; WX 389 ; N Imacron ; B 20 0 370 847 ; -C -1 ; WX 667 ; N Lcaron ; B 19 0 652 682 ; -C 189 ; WX 750 ; N onehalf ; B -7 -12 775 688 ; -C -1 ; WX 549 ; N lessequal ; B 29 0 526 704 ; -C 244 ; WX 500 ; N ocircumflex ; B 25 -14 476 704 ; -C 241 ; WX 556 ; N ntilde ; B 21 0 539 674 ; -C -1 ; WX 722 ; N Uhungarumlaut ; B 16 -19 701 923 ; -C 201 ; WX 667 ; N Eacute ; B 16 0 641 923 ; -C -1 ; WX 444 ; N emacron ; B 25 -14 426 637 ; -C -1 ; WX 500 ; N gbreve ; B 28 -206 483 691 ; -C 188 ; WX 750 ; N onequarter ; B 28 -12 743 688 ; -C 138 ; WX 556 ; N Scaron ; B 35 -19 513 914 ; -C -1 ; WX 556 ; N Scommaaccent ; B 35 -218 513 692 ; -C -1 ; WX 778 ; N Ohungarumlaut ; B 35 -19 743 923 ; -C 176 ; WX 400 ; N degree ; B 57 402 343 688 ; -C 242 ; WX 500 ; N ograve ; B 25 -14 476 713 ; -C -1 ; WX 722 ; N Ccaron ; B 49 -19 687 914 ; -C 249 ; WX 556 ; N ugrave ; B 16 -14 537 713 ; -C -1 ; WX 549 ; N radical ; B 10 -46 512 850 ; -C -1 ; WX 722 ; N Dcaron ; B 14 0 690 914 ; -C -1 ; WX 444 ; N rcommaaccent ; B 29 -218 434 473 ; -C 209 ; WX 722 ; N Ntilde ; B 16 -18 701 884 ; -C 245 ; WX 500 ; N otilde ; B 25 -14 476 674 ; -C -1 ; WX 722 ; N Rcommaaccent ; B 26 -218 715 676 ; -C -1 ; WX 667 ; N Lcommaaccent ; B 19 -218 638 676 ; -C 195 ; WX 722 ; N Atilde ; B 9 0 689 884 ; -C -1 ; WX 722 ; N Aogonek ; B 9 -193 699 690 ; -C 197 ; WX 722 ; N Aring ; B 9 0 689 935 ; -C 213 ; WX 778 ; N Otilde ; B 35 -19 743 884 ; -C -1 ; WX 444 ; N zdotaccent ; B 21 0 420 691 ; -C -1 ; WX 667 ; N Ecaron ; B 16 0 641 914 ; -C -1 ; WX 389 ; N Iogonek ; B 20 -193 370 676 ; -C -1 ; WX 556 ; N kcommaaccent ; B 22 -218 543 676 ; -C -1 ; WX 570 ; N minus ; B 33 209 537 297 ; -C 206 ; WX 389 ; N Icircumflex ; B 20 0 370 914 ; -C -1 ; WX 556 ; N ncaron ; B 21 0 539 704 ; -C -1 ; WX 333 ; N tcommaaccent ; B 20 -218 332 630 ; -C 172 ; WX 570 ; N logicalnot ; B 33 108 537 399 ; -C 246 ; WX 500 ; N odieresis ; B 25 -14 476 667 ; -C 252 ; WX 556 ; N udieresis ; B 16 -14 537 667 ; -C -1 ; WX 549 ; N notequal ; B 15 -49 540 570 ; -C -1 ; WX 500 ; N gcommaaccent ; B 28 -206 483 829 ; -C 240 ; WX 500 ; N eth ; B 25 -14 476 691 ; -C 158 ; WX 444 ; N zcaron ; B 21 0 420 704 ; -C -1 ; WX 556 ; N ncommaaccent ; B 21 -218 539 473 ; -C 185 ; WX 300 ; N onesuperior ; B 28 275 273 688 ; -C -1 ; WX 278 ; N imacron ; B -8 0 272 637 ; -C 128 ; WX 500 ; N Euro ; B 0 0 0 0 ; -EndCharMetrics -StartKernData -StartKernPairs 2242 -KPX A C -55 -KPX A Cacute -55 -KPX A Ccaron -55 -KPX A Ccedilla -55 -KPX A G -55 -KPX A Gbreve -55 -KPX A Gcommaaccent -55 -KPX A O -45 -KPX A Oacute -45 -KPX A Ocircumflex -45 -KPX A Odieresis -45 -KPX A Ograve -45 -KPX A Ohungarumlaut -45 -KPX A Omacron -45 -KPX A Oslash -45 -KPX A Otilde -45 -KPX A Q -45 -KPX A T -95 -KPX A Tcaron -95 -KPX A Tcommaaccent -95 -KPX A U -50 -KPX A Uacute -50 -KPX A Ucircumflex -50 -KPX A Udieresis -50 -KPX A Ugrave -50 -KPX A Uhungarumlaut -50 -KPX A Umacron -50 -KPX A Uogonek -50 -KPX A Uring -50 -KPX A V -145 -KPX A W -130 -KPX A Y -100 -KPX A Yacute -100 -KPX A Ydieresis -100 -KPX A p -25 -KPX A quoteright -74 -KPX A u -50 -KPX A uacute -50 -KPX A ucircumflex -50 -KPX A udieresis -50 -KPX A ugrave -50 -KPX A uhungarumlaut -50 -KPX A umacron -50 -KPX A uogonek -50 -KPX A uring -50 -KPX A v -100 -KPX A w -90 -KPX A y -74 -KPX A yacute -74 -KPX A ydieresis -74 -KPX Aacute C -55 -KPX Aacute Cacute -55 -KPX Aacute Ccaron -55 -KPX Aacute Ccedilla -55 -KPX Aacute G -55 -KPX Aacute Gbreve -55 -KPX Aacute Gcommaaccent -55 -KPX Aacute O -45 -KPX Aacute Oacute -45 -KPX Aacute Ocircumflex -45 -KPX Aacute Odieresis -45 -KPX Aacute Ograve -45 -KPX Aacute Ohungarumlaut -45 -KPX Aacute Omacron -45 -KPX Aacute Oslash -45 -KPX Aacute Otilde -45 -KPX Aacute Q -45 -KPX Aacute T -95 -KPX Aacute Tcaron -95 -KPX Aacute Tcommaaccent -95 -KPX Aacute U -50 -KPX Aacute Uacute -50 -KPX Aacute Ucircumflex -50 -KPX Aacute Udieresis -50 -KPX Aacute Ugrave -50 -KPX Aacute Uhungarumlaut -50 -KPX Aacute Umacron -50 -KPX Aacute Uogonek -50 -KPX Aacute Uring -50 -KPX Aacute V -145 -KPX Aacute W -130 -KPX Aacute Y -100 -KPX Aacute Yacute -100 -KPX Aacute Ydieresis -100 -KPX Aacute p -25 -KPX Aacute quoteright -74 -KPX Aacute u -50 -KPX Aacute uacute -50 -KPX Aacute ucircumflex -50 -KPX Aacute udieresis -50 -KPX Aacute ugrave -50 -KPX Aacute uhungarumlaut -50 -KPX Aacute umacron -50 -KPX Aacute uogonek -50 -KPX Aacute uring -50 -KPX Aacute v -100 -KPX Aacute w -90 -KPX Aacute y -74 -KPX Aacute yacute -74 -KPX Aacute ydieresis -74 -KPX Abreve C -55 -KPX Abreve Cacute -55 -KPX Abreve Ccaron -55 -KPX Abreve Ccedilla -55 -KPX Abreve G -55 -KPX Abreve Gbreve -55 -KPX Abreve Gcommaaccent -55 -KPX Abreve O -45 -KPX Abreve Oacute -45 -KPX Abreve Ocircumflex -45 -KPX Abreve Odieresis -45 -KPX Abreve Ograve -45 -KPX Abreve Ohungarumlaut -45 -KPX Abreve Omacron -45 -KPX Abreve Oslash -45 -KPX Abreve Otilde -45 -KPX Abreve Q -45 -KPX Abreve T -95 -KPX Abreve Tcaron -95 -KPX Abreve Tcommaaccent -95 -KPX Abreve U -50 -KPX Abreve Uacute -50 -KPX Abreve Ucircumflex -50 -KPX Abreve Udieresis -50 -KPX Abreve Ugrave -50 -KPX Abreve Uhungarumlaut -50 -KPX Abreve Umacron -50 -KPX Abreve Uogonek -50 -KPX Abreve Uring -50 -KPX Abreve V -145 -KPX Abreve W -130 -KPX Abreve Y -100 -KPX Abreve Yacute -100 -KPX Abreve Ydieresis -100 -KPX Abreve p -25 -KPX Abreve quoteright -74 -KPX Abreve u -50 -KPX Abreve uacute -50 -KPX Abreve ucircumflex -50 -KPX Abreve udieresis -50 -KPX Abreve ugrave -50 -KPX Abreve uhungarumlaut -50 -KPX Abreve umacron -50 -KPX Abreve uogonek -50 -KPX Abreve uring -50 -KPX Abreve v -100 -KPX Abreve w -90 -KPX Abreve y -74 -KPX Abreve yacute -74 -KPX Abreve ydieresis -74 -KPX Acircumflex C -55 -KPX Acircumflex Cacute -55 -KPX Acircumflex Ccaron -55 -KPX Acircumflex Ccedilla -55 -KPX Acircumflex G -55 -KPX Acircumflex Gbreve -55 -KPX Acircumflex Gcommaaccent -55 -KPX Acircumflex O -45 -KPX Acircumflex Oacute -45 -KPX Acircumflex Ocircumflex -45 -KPX Acircumflex Odieresis -45 -KPX Acircumflex Ograve -45 -KPX Acircumflex Ohungarumlaut -45 -KPX Acircumflex Omacron -45 -KPX Acircumflex Oslash -45 -KPX Acircumflex Otilde -45 -KPX Acircumflex Q -45 -KPX Acircumflex T -95 -KPX Acircumflex Tcaron -95 -KPX Acircumflex Tcommaaccent -95 -KPX Acircumflex U -50 -KPX Acircumflex Uacute -50 -KPX Acircumflex Ucircumflex -50 -KPX Acircumflex Udieresis -50 -KPX Acircumflex Ugrave -50 -KPX Acircumflex Uhungarumlaut -50 -KPX Acircumflex Umacron -50 -KPX Acircumflex Uogonek -50 -KPX Acircumflex Uring -50 -KPX Acircumflex V -145 -KPX Acircumflex W -130 -KPX Acircumflex Y -100 -KPX Acircumflex Yacute -100 -KPX Acircumflex Ydieresis -100 -KPX Acircumflex p -25 -KPX Acircumflex quoteright -74 -KPX Acircumflex u -50 -KPX Acircumflex uacute -50 -KPX Acircumflex ucircumflex -50 -KPX Acircumflex udieresis -50 -KPX Acircumflex ugrave -50 -KPX Acircumflex uhungarumlaut -50 -KPX Acircumflex umacron -50 -KPX Acircumflex uogonek -50 -KPX Acircumflex uring -50 -KPX Acircumflex v -100 -KPX Acircumflex w -90 -KPX Acircumflex y -74 -KPX Acircumflex yacute -74 -KPX Acircumflex ydieresis -74 -KPX Adieresis C -55 -KPX Adieresis Cacute -55 -KPX Adieresis Ccaron -55 -KPX Adieresis Ccedilla -55 -KPX Adieresis G -55 -KPX Adieresis Gbreve -55 -KPX Adieresis Gcommaaccent -55 -KPX Adieresis O -45 -KPX Adieresis Oacute -45 -KPX Adieresis Ocircumflex -45 -KPX Adieresis Odieresis -45 -KPX Adieresis Ograve -45 -KPX Adieresis Ohungarumlaut -45 -KPX Adieresis Omacron -45 -KPX Adieresis Oslash -45 -KPX Adieresis Otilde -45 -KPX Adieresis Q -45 -KPX Adieresis T -95 -KPX Adieresis Tcaron -95 -KPX Adieresis Tcommaaccent -95 -KPX Adieresis U -50 -KPX Adieresis Uacute -50 -KPX Adieresis Ucircumflex -50 -KPX Adieresis Udieresis -50 -KPX Adieresis Ugrave -50 -KPX Adieresis Uhungarumlaut -50 -KPX Adieresis Umacron -50 -KPX Adieresis Uogonek -50 -KPX Adieresis Uring -50 -KPX Adieresis V -145 -KPX Adieresis W -130 -KPX Adieresis Y -100 -KPX Adieresis Yacute -100 -KPX Adieresis Ydieresis -100 -KPX Adieresis p -25 -KPX Adieresis quoteright -74 -KPX Adieresis u -50 -KPX Adieresis uacute -50 -KPX Adieresis ucircumflex -50 -KPX Adieresis udieresis -50 -KPX Adieresis ugrave -50 -KPX Adieresis uhungarumlaut -50 -KPX Adieresis umacron -50 -KPX Adieresis uogonek -50 -KPX Adieresis uring -50 -KPX Adieresis v -100 -KPX Adieresis w -90 -KPX Adieresis y -74 -KPX Adieresis yacute -74 -KPX Adieresis ydieresis -74 -KPX Agrave C -55 -KPX Agrave Cacute -55 -KPX Agrave Ccaron -55 -KPX Agrave Ccedilla -55 -KPX Agrave G -55 -KPX Agrave Gbreve -55 -KPX Agrave Gcommaaccent -55 -KPX Agrave O -45 -KPX Agrave Oacute -45 -KPX Agrave Ocircumflex -45 -KPX Agrave Odieresis -45 -KPX Agrave Ograve -45 -KPX Agrave Ohungarumlaut -45 -KPX Agrave Omacron -45 -KPX Agrave Oslash -45 -KPX Agrave Otilde -45 -KPX Agrave Q -45 -KPX Agrave T -95 -KPX Agrave Tcaron -95 -KPX Agrave Tcommaaccent -95 -KPX Agrave U -50 -KPX Agrave Uacute -50 -KPX Agrave Ucircumflex -50 -KPX Agrave Udieresis -50 -KPX Agrave Ugrave -50 -KPX Agrave Uhungarumlaut -50 -KPX Agrave Umacron -50 -KPX Agrave Uogonek -50 -KPX Agrave Uring -50 -KPX Agrave V -145 -KPX Agrave W -130 -KPX Agrave Y -100 -KPX Agrave Yacute -100 -KPX Agrave Ydieresis -100 -KPX Agrave p -25 -KPX Agrave quoteright -74 -KPX Agrave u -50 -KPX Agrave uacute -50 -KPX Agrave ucircumflex -50 -KPX Agrave udieresis -50 -KPX Agrave ugrave -50 -KPX Agrave uhungarumlaut -50 -KPX Agrave umacron -50 -KPX Agrave uogonek -50 -KPX Agrave uring -50 -KPX Agrave v -100 -KPX Agrave w -90 -KPX Agrave y -74 -KPX Agrave yacute -74 -KPX Agrave ydieresis -74 -KPX Amacron C -55 -KPX Amacron Cacute -55 -KPX Amacron Ccaron -55 -KPX Amacron Ccedilla -55 -KPX Amacron G -55 -KPX Amacron Gbreve -55 -KPX Amacron Gcommaaccent -55 -KPX Amacron O -45 -KPX Amacron Oacute -45 -KPX Amacron Ocircumflex -45 -KPX Amacron Odieresis -45 -KPX Amacron Ograve -45 -KPX Amacron Ohungarumlaut -45 -KPX Amacron Omacron -45 -KPX Amacron Oslash -45 -KPX Amacron Otilde -45 -KPX Amacron Q -45 -KPX Amacron T -95 -KPX Amacron Tcaron -95 -KPX Amacron Tcommaaccent -95 -KPX Amacron U -50 -KPX Amacron Uacute -50 -KPX Amacron Ucircumflex -50 -KPX Amacron Udieresis -50 -KPX Amacron Ugrave -50 -KPX Amacron Uhungarumlaut -50 -KPX Amacron Umacron -50 -KPX Amacron Uogonek -50 -KPX Amacron Uring -50 -KPX Amacron V -145 -KPX Amacron W -130 -KPX Amacron Y -100 -KPX Amacron Yacute -100 -KPX Amacron Ydieresis -100 -KPX Amacron p -25 -KPX Amacron quoteright -74 -KPX Amacron u -50 -KPX Amacron uacute -50 -KPX Amacron ucircumflex -50 -KPX Amacron udieresis -50 -KPX Amacron ugrave -50 -KPX Amacron uhungarumlaut -50 -KPX Amacron umacron -50 -KPX Amacron uogonek -50 -KPX Amacron uring -50 -KPX Amacron v -100 -KPX Amacron w -90 -KPX Amacron y -74 -KPX Amacron yacute -74 -KPX Amacron ydieresis -74 -KPX Aogonek C -55 -KPX Aogonek Cacute -55 -KPX Aogonek Ccaron -55 -KPX Aogonek Ccedilla -55 -KPX Aogonek G -55 -KPX Aogonek Gbreve -55 -KPX Aogonek Gcommaaccent -55 -KPX Aogonek O -45 -KPX Aogonek Oacute -45 -KPX Aogonek Ocircumflex -45 -KPX Aogonek Odieresis -45 -KPX Aogonek Ograve -45 -KPX Aogonek Ohungarumlaut -45 -KPX Aogonek Omacron -45 -KPX Aogonek Oslash -45 -KPX Aogonek Otilde -45 -KPX Aogonek Q -45 -KPX Aogonek T -95 -KPX Aogonek Tcaron -95 -KPX Aogonek Tcommaaccent -95 -KPX Aogonek U -50 -KPX Aogonek Uacute -50 -KPX Aogonek Ucircumflex -50 -KPX Aogonek Udieresis -50 -KPX Aogonek Ugrave -50 -KPX Aogonek Uhungarumlaut -50 -KPX Aogonek Umacron -50 -KPX Aogonek Uogonek -50 -KPX Aogonek Uring -50 -KPX Aogonek V -145 -KPX Aogonek W -130 -KPX Aogonek Y -100 -KPX Aogonek Yacute -100 -KPX Aogonek Ydieresis -100 -KPX Aogonek p -25 -KPX Aogonek quoteright -74 -KPX Aogonek u -50 -KPX Aogonek uacute -50 -KPX Aogonek ucircumflex -50 -KPX Aogonek udieresis -50 -KPX Aogonek ugrave -50 -KPX Aogonek uhungarumlaut -50 -KPX Aogonek umacron -50 -KPX Aogonek uogonek -50 -KPX Aogonek uring -50 -KPX Aogonek v -100 -KPX Aogonek w -90 -KPX Aogonek y -34 -KPX Aogonek yacute -34 -KPX Aogonek ydieresis -34 -KPX Aring C -55 -KPX Aring Cacute -55 -KPX Aring Ccaron -55 -KPX Aring Ccedilla -55 -KPX Aring G -55 -KPX Aring Gbreve -55 -KPX Aring Gcommaaccent -55 -KPX Aring O -45 -KPX Aring Oacute -45 -KPX Aring Ocircumflex -45 -KPX Aring Odieresis -45 -KPX Aring Ograve -45 -KPX Aring Ohungarumlaut -45 -KPX Aring Omacron -45 -KPX Aring Oslash -45 -KPX Aring Otilde -45 -KPX Aring Q -45 -KPX Aring T -95 -KPX Aring Tcaron -95 -KPX Aring Tcommaaccent -95 -KPX Aring U -50 -KPX Aring Uacute -50 -KPX Aring Ucircumflex -50 -KPX Aring Udieresis -50 -KPX Aring Ugrave -50 -KPX Aring Uhungarumlaut -50 -KPX Aring Umacron -50 -KPX Aring Uogonek -50 -KPX Aring Uring -50 -KPX Aring V -145 -KPX Aring W -130 -KPX Aring Y -100 -KPX Aring Yacute -100 -KPX Aring Ydieresis -100 -KPX Aring p -25 -KPX Aring quoteright -74 -KPX Aring u -50 -KPX Aring uacute -50 -KPX Aring ucircumflex -50 -KPX Aring udieresis -50 -KPX Aring ugrave -50 -KPX Aring uhungarumlaut -50 -KPX Aring umacron -50 -KPX Aring uogonek -50 -KPX Aring uring -50 -KPX Aring v -100 -KPX Aring w -90 -KPX Aring y -74 -KPX Aring yacute -74 -KPX Aring ydieresis -74 -KPX Atilde C -55 -KPX Atilde Cacute -55 -KPX Atilde Ccaron -55 -KPX Atilde Ccedilla -55 -KPX Atilde G -55 -KPX Atilde Gbreve -55 -KPX Atilde Gcommaaccent -55 -KPX Atilde O -45 -KPX Atilde Oacute -45 -KPX Atilde Ocircumflex -45 -KPX Atilde Odieresis -45 -KPX Atilde Ograve -45 -KPX Atilde Ohungarumlaut -45 -KPX Atilde Omacron -45 -KPX Atilde Oslash -45 -KPX Atilde Otilde -45 -KPX Atilde Q -45 -KPX Atilde T -95 -KPX Atilde Tcaron -95 -KPX Atilde Tcommaaccent -95 -KPX Atilde U -50 -KPX Atilde Uacute -50 -KPX Atilde Ucircumflex -50 -KPX Atilde Udieresis -50 -KPX Atilde Ugrave -50 -KPX Atilde Uhungarumlaut -50 -KPX Atilde Umacron -50 -KPX Atilde Uogonek -50 -KPX Atilde Uring -50 -KPX Atilde V -145 -KPX Atilde W -130 -KPX Atilde Y -100 -KPX Atilde Yacute -100 -KPX Atilde Ydieresis -100 -KPX Atilde p -25 -KPX Atilde quoteright -74 -KPX Atilde u -50 -KPX Atilde uacute -50 -KPX Atilde ucircumflex -50 -KPX Atilde udieresis -50 -KPX Atilde ugrave -50 -KPX Atilde uhungarumlaut -50 -KPX Atilde umacron -50 -KPX Atilde uogonek -50 -KPX Atilde uring -50 -KPX Atilde v -100 -KPX Atilde w -90 -KPX Atilde y -74 -KPX Atilde yacute -74 -KPX Atilde ydieresis -74 -KPX B A -30 -KPX B Aacute -30 -KPX B Abreve -30 -KPX B Acircumflex -30 -KPX B Adieresis -30 -KPX B Agrave -30 -KPX B Amacron -30 -KPX B Aogonek -30 -KPX B Aring -30 -KPX B Atilde -30 -KPX B U -10 -KPX B Uacute -10 -KPX B Ucircumflex -10 -KPX B Udieresis -10 -KPX B Ugrave -10 -KPX B Uhungarumlaut -10 -KPX B Umacron -10 -KPX B Uogonek -10 -KPX B Uring -10 -KPX D A -35 -KPX D Aacute -35 -KPX D Abreve -35 -KPX D Acircumflex -35 -KPX D Adieresis -35 -KPX D Agrave -35 -KPX D Amacron -35 -KPX D Aogonek -35 -KPX D Aring -35 -KPX D Atilde -35 -KPX D V -40 -KPX D W -40 -KPX D Y -40 -KPX D Yacute -40 -KPX D Ydieresis -40 -KPX D period -20 -KPX Dcaron A -35 -KPX Dcaron Aacute -35 -KPX Dcaron Abreve -35 -KPX Dcaron Acircumflex -35 -KPX Dcaron Adieresis -35 -KPX Dcaron Agrave -35 -KPX Dcaron Amacron -35 -KPX Dcaron Aogonek -35 -KPX Dcaron Aring -35 -KPX Dcaron Atilde -35 -KPX Dcaron V -40 -KPX Dcaron W -40 -KPX Dcaron Y -40 -KPX Dcaron Yacute -40 -KPX Dcaron Ydieresis -40 -KPX Dcaron period -20 -KPX Dcroat A -35 -KPX Dcroat Aacute -35 -KPX Dcroat Abreve -35 -KPX Dcroat Acircumflex -35 -KPX Dcroat Adieresis -35 -KPX Dcroat Agrave -35 -KPX Dcroat Amacron -35 -KPX Dcroat Aogonek -35 -KPX Dcroat Aring -35 -KPX Dcroat Atilde -35 -KPX Dcroat V -40 -KPX Dcroat W -40 -KPX Dcroat Y -40 -KPX Dcroat Yacute -40 -KPX Dcroat Ydieresis -40 -KPX Dcroat period -20 -KPX F A -90 -KPX F Aacute -90 -KPX F Abreve -90 -KPX F Acircumflex -90 -KPX F Adieresis -90 -KPX F Agrave -90 -KPX F Amacron -90 -KPX F Aogonek -90 -KPX F Aring -90 -KPX F Atilde -90 -KPX F a -25 -KPX F aacute -25 -KPX F abreve -25 -KPX F acircumflex -25 -KPX F adieresis -25 -KPX F agrave -25 -KPX F amacron -25 -KPX F aogonek -25 -KPX F aring -25 -KPX F atilde -25 -KPX F comma -92 -KPX F e -25 -KPX F eacute -25 -KPX F ecaron -25 -KPX F ecircumflex -25 -KPX F edieresis -25 -KPX F edotaccent -25 -KPX F egrave -25 -KPX F emacron -25 -KPX F eogonek -25 -KPX F o -25 -KPX F oacute -25 -KPX F ocircumflex -25 -KPX F odieresis -25 -KPX F ograve -25 -KPX F ohungarumlaut -25 -KPX F omacron -25 -KPX F oslash -25 -KPX F otilde -25 -KPX F period -110 -KPX J A -30 -KPX J Aacute -30 -KPX J Abreve -30 -KPX J Acircumflex -30 -KPX J Adieresis -30 -KPX J Agrave -30 -KPX J Amacron -30 -KPX J Aogonek -30 -KPX J Aring -30 -KPX J Atilde -30 -KPX J a -15 -KPX J aacute -15 -KPX J abreve -15 -KPX J acircumflex -15 -KPX J adieresis -15 -KPX J agrave -15 -KPX J amacron -15 -KPX J aogonek -15 -KPX J aring -15 -KPX J atilde -15 -KPX J e -15 -KPX J eacute -15 -KPX J ecaron -15 -KPX J ecircumflex -15 -KPX J edieresis -15 -KPX J edotaccent -15 -KPX J egrave -15 -KPX J emacron -15 -KPX J eogonek -15 -KPX J o -15 -KPX J oacute -15 -KPX J ocircumflex -15 -KPX J odieresis -15 -KPX J ograve -15 -KPX J ohungarumlaut -15 -KPX J omacron -15 -KPX J oslash -15 -KPX J otilde -15 -KPX J period -20 -KPX J u -15 -KPX J uacute -15 -KPX J ucircumflex -15 -KPX J udieresis -15 -KPX J ugrave -15 -KPX J uhungarumlaut -15 -KPX J umacron -15 -KPX J uogonek -15 -KPX J uring -15 -KPX K O -30 -KPX K Oacute -30 -KPX K Ocircumflex -30 -KPX K Odieresis -30 -KPX K Ograve -30 -KPX K Ohungarumlaut -30 -KPX K Omacron -30 -KPX K Oslash -30 -KPX K Otilde -30 -KPX K e -25 -KPX K eacute -25 -KPX K ecaron -25 -KPX K ecircumflex -25 -KPX K edieresis -25 -KPX K edotaccent -25 -KPX K egrave -25 -KPX K emacron -25 -KPX K eogonek -25 -KPX K o -25 -KPX K oacute -25 -KPX K ocircumflex -25 -KPX K odieresis -25 -KPX K ograve -25 -KPX K ohungarumlaut -25 -KPX K omacron -25 -KPX K oslash -25 -KPX K otilde -25 -KPX K u -15 -KPX K uacute -15 -KPX K ucircumflex -15 -KPX K udieresis -15 -KPX K ugrave -15 -KPX K uhungarumlaut -15 -KPX K umacron -15 -KPX K uogonek -15 -KPX K uring -15 -KPX K y -45 -KPX K yacute -45 -KPX K ydieresis -45 -KPX Kcommaaccent O -30 -KPX Kcommaaccent Oacute -30 -KPX Kcommaaccent Ocircumflex -30 -KPX Kcommaaccent Odieresis -30 -KPX Kcommaaccent Ograve -30 -KPX Kcommaaccent Ohungarumlaut -30 -KPX Kcommaaccent Omacron -30 -KPX Kcommaaccent Oslash -30 -KPX Kcommaaccent Otilde -30 -KPX Kcommaaccent e -25 -KPX Kcommaaccent eacute -25 -KPX Kcommaaccent ecaron -25 -KPX Kcommaaccent ecircumflex -25 -KPX Kcommaaccent edieresis -25 -KPX Kcommaaccent edotaccent -25 -KPX Kcommaaccent egrave -25 -KPX Kcommaaccent emacron -25 -KPX Kcommaaccent eogonek -25 -KPX Kcommaaccent o -25 -KPX Kcommaaccent oacute -25 -KPX Kcommaaccent ocircumflex -25 -KPX Kcommaaccent odieresis -25 -KPX Kcommaaccent ograve -25 -KPX Kcommaaccent ohungarumlaut -25 -KPX Kcommaaccent omacron -25 -KPX Kcommaaccent oslash -25 -KPX Kcommaaccent otilde -25 -KPX Kcommaaccent u -15 -KPX Kcommaaccent uacute -15 -KPX Kcommaaccent ucircumflex -15 -KPX Kcommaaccent udieresis -15 -KPX Kcommaaccent ugrave -15 -KPX Kcommaaccent uhungarumlaut -15 -KPX Kcommaaccent umacron -15 -KPX Kcommaaccent uogonek -15 -KPX Kcommaaccent uring -15 -KPX Kcommaaccent y -45 -KPX Kcommaaccent yacute -45 -KPX Kcommaaccent ydieresis -45 -KPX L T -92 -KPX L Tcaron -92 -KPX L Tcommaaccent -92 -KPX L V -92 -KPX L W -92 -KPX L Y -92 -KPX L Yacute -92 -KPX L Ydieresis -92 -KPX L quotedblright -20 -KPX L quoteright -110 -KPX L y -55 -KPX L yacute -55 -KPX L ydieresis -55 -KPX Lacute T -92 -KPX Lacute Tcaron -92 -KPX Lacute Tcommaaccent -92 -KPX Lacute V -92 -KPX Lacute W -92 -KPX Lacute Y -92 -KPX Lacute Yacute -92 -KPX Lacute Ydieresis -92 -KPX Lacute quotedblright -20 -KPX Lacute quoteright -110 -KPX Lacute y -55 -KPX Lacute yacute -55 -KPX Lacute ydieresis -55 -KPX Lcommaaccent T -92 -KPX Lcommaaccent Tcaron -92 -KPX Lcommaaccent Tcommaaccent -92 -KPX Lcommaaccent V -92 -KPX Lcommaaccent W -92 -KPX Lcommaaccent Y -92 -KPX Lcommaaccent Yacute -92 -KPX Lcommaaccent Ydieresis -92 -KPX Lcommaaccent quotedblright -20 -KPX Lcommaaccent quoteright -110 -KPX Lcommaaccent y -55 -KPX Lcommaaccent yacute -55 -KPX Lcommaaccent ydieresis -55 -KPX Lslash T -92 -KPX Lslash Tcaron -92 -KPX Lslash Tcommaaccent -92 -KPX Lslash V -92 -KPX Lslash W -92 -KPX Lslash Y -92 -KPX Lslash Yacute -92 -KPX Lslash Ydieresis -92 -KPX Lslash quotedblright -20 -KPX Lslash quoteright -110 -KPX Lslash y -55 -KPX Lslash yacute -55 -KPX Lslash ydieresis -55 -KPX N A -20 -KPX N Aacute -20 -KPX N Abreve -20 -KPX N Acircumflex -20 -KPX N Adieresis -20 -KPX N Agrave -20 -KPX N Amacron -20 -KPX N Aogonek -20 -KPX N Aring -20 -KPX N Atilde -20 -KPX Nacute A -20 -KPX Nacute Aacute -20 -KPX Nacute Abreve -20 -KPX Nacute Acircumflex -20 -KPX Nacute Adieresis -20 -KPX Nacute Agrave -20 -KPX Nacute Amacron -20 -KPX Nacute Aogonek -20 -KPX Nacute Aring -20 -KPX Nacute Atilde -20 -KPX Ncaron A -20 -KPX Ncaron Aacute -20 -KPX Ncaron Abreve -20 -KPX Ncaron Acircumflex -20 -KPX Ncaron Adieresis -20 -KPX Ncaron Agrave -20 -KPX Ncaron Amacron -20 -KPX Ncaron Aogonek -20 -KPX Ncaron Aring -20 -KPX Ncaron Atilde -20 -KPX Ncommaaccent A -20 -KPX Ncommaaccent Aacute -20 -KPX Ncommaaccent Abreve -20 -KPX Ncommaaccent Acircumflex -20 -KPX Ncommaaccent Adieresis -20 -KPX Ncommaaccent Agrave -20 -KPX Ncommaaccent Amacron -20 -KPX Ncommaaccent Aogonek -20 -KPX Ncommaaccent Aring -20 -KPX Ncommaaccent Atilde -20 -KPX Ntilde A -20 -KPX Ntilde Aacute -20 -KPX Ntilde Abreve -20 -KPX Ntilde Acircumflex -20 -KPX Ntilde Adieresis -20 -KPX Ntilde Agrave -20 -KPX Ntilde Amacron -20 -KPX Ntilde Aogonek -20 -KPX Ntilde Aring -20 -KPX Ntilde Atilde -20 -KPX O A -40 -KPX O Aacute -40 -KPX O Abreve -40 -KPX O Acircumflex -40 -KPX O Adieresis -40 -KPX O Agrave -40 -KPX O Amacron -40 -KPX O Aogonek -40 -KPX O Aring -40 -KPX O Atilde -40 -KPX O T -40 -KPX O Tcaron -40 -KPX O Tcommaaccent -40 -KPX O V -50 -KPX O W -50 -KPX O X -40 -KPX O Y -50 -KPX O Yacute -50 -KPX O Ydieresis -50 -KPX Oacute A -40 -KPX Oacute Aacute -40 -KPX Oacute Abreve -40 -KPX Oacute Acircumflex -40 -KPX Oacute Adieresis -40 -KPX Oacute Agrave -40 -KPX Oacute Amacron -40 -KPX Oacute Aogonek -40 -KPX Oacute Aring -40 -KPX Oacute Atilde -40 -KPX Oacute T -40 -KPX Oacute Tcaron -40 -KPX Oacute Tcommaaccent -40 -KPX Oacute V -50 -KPX Oacute W -50 -KPX Oacute X -40 -KPX Oacute Y -50 -KPX Oacute Yacute -50 -KPX Oacute Ydieresis -50 -KPX Ocircumflex A -40 -KPX Ocircumflex Aacute -40 -KPX Ocircumflex Abreve -40 -KPX Ocircumflex Acircumflex -40 -KPX Ocircumflex Adieresis -40 -KPX Ocircumflex Agrave -40 -KPX Ocircumflex Amacron -40 -KPX Ocircumflex Aogonek -40 -KPX Ocircumflex Aring -40 -KPX Ocircumflex Atilde -40 -KPX Ocircumflex T -40 -KPX Ocircumflex Tcaron -40 -KPX Ocircumflex Tcommaaccent -40 -KPX Ocircumflex V -50 -KPX Ocircumflex W -50 -KPX Ocircumflex X -40 -KPX Ocircumflex Y -50 -KPX Ocircumflex Yacute -50 -KPX Ocircumflex Ydieresis -50 -KPX Odieresis A -40 -KPX Odieresis Aacute -40 -KPX Odieresis Abreve -40 -KPX Odieresis Acircumflex -40 -KPX Odieresis Adieresis -40 -KPX Odieresis Agrave -40 -KPX Odieresis Amacron -40 -KPX Odieresis Aogonek -40 -KPX Odieresis Aring -40 -KPX Odieresis Atilde -40 -KPX Odieresis T -40 -KPX Odieresis Tcaron -40 -KPX Odieresis Tcommaaccent -40 -KPX Odieresis V -50 -KPX Odieresis W -50 -KPX Odieresis X -40 -KPX Odieresis Y -50 -KPX Odieresis Yacute -50 -KPX Odieresis Ydieresis -50 -KPX Ograve A -40 -KPX Ograve Aacute -40 -KPX Ograve Abreve -40 -KPX Ograve Acircumflex -40 -KPX Ograve Adieresis -40 -KPX Ograve Agrave -40 -KPX Ograve Amacron -40 -KPX Ograve Aogonek -40 -KPX Ograve Aring -40 -KPX Ograve Atilde -40 -KPX Ograve T -40 -KPX Ograve Tcaron -40 -KPX Ograve Tcommaaccent -40 -KPX Ograve V -50 -KPX Ograve W -50 -KPX Ograve X -40 -KPX Ograve Y -50 -KPX Ograve Yacute -50 -KPX Ograve Ydieresis -50 -KPX Ohungarumlaut A -40 -KPX Ohungarumlaut Aacute -40 -KPX Ohungarumlaut Abreve -40 -KPX Ohungarumlaut Acircumflex -40 -KPX Ohungarumlaut Adieresis -40 -KPX Ohungarumlaut Agrave -40 -KPX Ohungarumlaut Amacron -40 -KPX Ohungarumlaut Aogonek -40 -KPX Ohungarumlaut Aring -40 -KPX Ohungarumlaut Atilde -40 -KPX Ohungarumlaut T -40 -KPX Ohungarumlaut Tcaron -40 -KPX Ohungarumlaut Tcommaaccent -40 -KPX Ohungarumlaut V -50 -KPX Ohungarumlaut W -50 -KPX Ohungarumlaut X -40 -KPX Ohungarumlaut Y -50 -KPX Ohungarumlaut Yacute -50 -KPX Ohungarumlaut Ydieresis -50 -KPX Omacron A -40 -KPX Omacron Aacute -40 -KPX Omacron Abreve -40 -KPX Omacron Acircumflex -40 -KPX Omacron Adieresis -40 -KPX Omacron Agrave -40 -KPX Omacron Amacron -40 -KPX Omacron Aogonek -40 -KPX Omacron Aring -40 -KPX Omacron Atilde -40 -KPX Omacron T -40 -KPX Omacron Tcaron -40 -KPX Omacron Tcommaaccent -40 -KPX Omacron V -50 -KPX Omacron W -50 -KPX Omacron X -40 -KPX Omacron Y -50 -KPX Omacron Yacute -50 -KPX Omacron Ydieresis -50 -KPX Oslash A -40 -KPX Oslash Aacute -40 -KPX Oslash Abreve -40 -KPX Oslash Acircumflex -40 -KPX Oslash Adieresis -40 -KPX Oslash Agrave -40 -KPX Oslash Amacron -40 -KPX Oslash Aogonek -40 -KPX Oslash Aring -40 -KPX Oslash Atilde -40 -KPX Oslash T -40 -KPX Oslash Tcaron -40 -KPX Oslash Tcommaaccent -40 -KPX Oslash V -50 -KPX Oslash W -50 -KPX Oslash X -40 -KPX Oslash Y -50 -KPX Oslash Yacute -50 -KPX Oslash Ydieresis -50 -KPX Otilde A -40 -KPX Otilde Aacute -40 -KPX Otilde Abreve -40 -KPX Otilde Acircumflex -40 -KPX Otilde Adieresis -40 -KPX Otilde Agrave -40 -KPX Otilde Amacron -40 -KPX Otilde Aogonek -40 -KPX Otilde Aring -40 -KPX Otilde Atilde -40 -KPX Otilde T -40 -KPX Otilde Tcaron -40 -KPX Otilde Tcommaaccent -40 -KPX Otilde V -50 -KPX Otilde W -50 -KPX Otilde X -40 -KPX Otilde Y -50 -KPX Otilde Yacute -50 -KPX Otilde Ydieresis -50 -KPX P A -74 -KPX P Aacute -74 -KPX P Abreve -74 -KPX P Acircumflex -74 -KPX P Adieresis -74 -KPX P Agrave -74 -KPX P Amacron -74 -KPX P Aogonek -74 -KPX P Aring -74 -KPX P Atilde -74 -KPX P a -10 -KPX P aacute -10 -KPX P abreve -10 -KPX P acircumflex -10 -KPX P adieresis -10 -KPX P agrave -10 -KPX P amacron -10 -KPX P aogonek -10 -KPX P aring -10 -KPX P atilde -10 -KPX P comma -92 -KPX P e -20 -KPX P eacute -20 -KPX P ecaron -20 -KPX P ecircumflex -20 -KPX P edieresis -20 -KPX P edotaccent -20 -KPX P egrave -20 -KPX P emacron -20 -KPX P eogonek -20 -KPX P o -20 -KPX P oacute -20 -KPX P ocircumflex -20 -KPX P odieresis -20 -KPX P ograve -20 -KPX P ohungarumlaut -20 -KPX P omacron -20 -KPX P oslash -20 -KPX P otilde -20 -KPX P period -110 -KPX Q U -10 -KPX Q Uacute -10 -KPX Q Ucircumflex -10 -KPX Q Udieresis -10 -KPX Q Ugrave -10 -KPX Q Uhungarumlaut -10 -KPX Q Umacron -10 -KPX Q Uogonek -10 -KPX Q Uring -10 -KPX Q period -20 -KPX R O -30 -KPX R Oacute -30 -KPX R Ocircumflex -30 -KPX R Odieresis -30 -KPX R Ograve -30 -KPX R Ohungarumlaut -30 -KPX R Omacron -30 -KPX R Oslash -30 -KPX R Otilde -30 -KPX R T -40 -KPX R Tcaron -40 -KPX R Tcommaaccent -40 -KPX R U -30 -KPX R Uacute -30 -KPX R Ucircumflex -30 -KPX R Udieresis -30 -KPX R Ugrave -30 -KPX R Uhungarumlaut -30 -KPX R Umacron -30 -KPX R Uogonek -30 -KPX R Uring -30 -KPX R V -55 -KPX R W -35 -KPX R Y -35 -KPX R Yacute -35 -KPX R Ydieresis -35 -KPX Racute O -30 -KPX Racute Oacute -30 -KPX Racute Ocircumflex -30 -KPX Racute Odieresis -30 -KPX Racute Ograve -30 -KPX Racute Ohungarumlaut -30 -KPX Racute Omacron -30 -KPX Racute Oslash -30 -KPX Racute Otilde -30 -KPX Racute T -40 -KPX Racute Tcaron -40 -KPX Racute Tcommaaccent -40 -KPX Racute U -30 -KPX Racute Uacute -30 -KPX Racute Ucircumflex -30 -KPX Racute Udieresis -30 -KPX Racute Ugrave -30 -KPX Racute Uhungarumlaut -30 -KPX Racute Umacron -30 -KPX Racute Uogonek -30 -KPX Racute Uring -30 -KPX Racute V -55 -KPX Racute W -35 -KPX Racute Y -35 -KPX Racute Yacute -35 -KPX Racute Ydieresis -35 -KPX Rcaron O -30 -KPX Rcaron Oacute -30 -KPX Rcaron Ocircumflex -30 -KPX Rcaron Odieresis -30 -KPX Rcaron Ograve -30 -KPX Rcaron Ohungarumlaut -30 -KPX Rcaron Omacron -30 -KPX Rcaron Oslash -30 -KPX Rcaron Otilde -30 -KPX Rcaron T -40 -KPX Rcaron Tcaron -40 -KPX Rcaron Tcommaaccent -40 -KPX Rcaron U -30 -KPX Rcaron Uacute -30 -KPX Rcaron Ucircumflex -30 -KPX Rcaron Udieresis -30 -KPX Rcaron Ugrave -30 -KPX Rcaron Uhungarumlaut -30 -KPX Rcaron Umacron -30 -KPX Rcaron Uogonek -30 -KPX Rcaron Uring -30 -KPX Rcaron V -55 -KPX Rcaron W -35 -KPX Rcaron Y -35 -KPX Rcaron Yacute -35 -KPX Rcaron Ydieresis -35 -KPX Rcommaaccent O -30 -KPX Rcommaaccent Oacute -30 -KPX Rcommaaccent Ocircumflex -30 -KPX Rcommaaccent Odieresis -30 -KPX Rcommaaccent Ograve -30 -KPX Rcommaaccent Ohungarumlaut -30 -KPX Rcommaaccent Omacron -30 -KPX Rcommaaccent Oslash -30 -KPX Rcommaaccent Otilde -30 -KPX Rcommaaccent T -40 -KPX Rcommaaccent Tcaron -40 -KPX Rcommaaccent Tcommaaccent -40 -KPX Rcommaaccent U -30 -KPX Rcommaaccent Uacute -30 -KPX Rcommaaccent Ucircumflex -30 -KPX Rcommaaccent Udieresis -30 -KPX Rcommaaccent Ugrave -30 -KPX Rcommaaccent Uhungarumlaut -30 -KPX Rcommaaccent Umacron -30 -KPX Rcommaaccent Uogonek -30 -KPX Rcommaaccent Uring -30 -KPX Rcommaaccent V -55 -KPX Rcommaaccent W -35 -KPX Rcommaaccent Y -35 -KPX Rcommaaccent Yacute -35 -KPX Rcommaaccent Ydieresis -35 -KPX T A -90 -KPX T Aacute -90 -KPX T Abreve -90 -KPX T Acircumflex -90 -KPX T Adieresis -90 -KPX T Agrave -90 -KPX T Amacron -90 -KPX T Aogonek -90 -KPX T Aring -90 -KPX T Atilde -90 -KPX T O -18 -KPX T Oacute -18 -KPX T Ocircumflex -18 -KPX T Odieresis -18 -KPX T Ograve -18 -KPX T Ohungarumlaut -18 -KPX T Omacron -18 -KPX T Oslash -18 -KPX T Otilde -18 -KPX T a -92 -KPX T aacute -92 -KPX T abreve -52 -KPX T acircumflex -52 -KPX T adieresis -52 -KPX T agrave -52 -KPX T amacron -52 -KPX T aogonek -92 -KPX T aring -92 -KPX T atilde -52 -KPX T colon -74 -KPX T comma -74 -KPX T e -92 -KPX T eacute -92 -KPX T ecaron -92 -KPX T ecircumflex -92 -KPX T edieresis -52 -KPX T edotaccent -92 -KPX T egrave -52 -KPX T emacron -52 -KPX T eogonek -92 -KPX T hyphen -92 -KPX T i -18 -KPX T iacute -18 -KPX T iogonek -18 -KPX T o -92 -KPX T oacute -92 -KPX T ocircumflex -92 -KPX T odieresis -92 -KPX T ograve -92 -KPX T ohungarumlaut -92 -KPX T omacron -92 -KPX T oslash -92 -KPX T otilde -92 -KPX T period -90 -KPX T r -74 -KPX T racute -74 -KPX T rcaron -74 -KPX T rcommaaccent -74 -KPX T semicolon -74 -KPX T u -92 -KPX T uacute -92 -KPX T ucircumflex -92 -KPX T udieresis -92 -KPX T ugrave -92 -KPX T uhungarumlaut -92 -KPX T umacron -92 -KPX T uogonek -92 -KPX T uring -92 -KPX T w -74 -KPX T y -34 -KPX T yacute -34 -KPX T ydieresis -34 -KPX Tcaron A -90 -KPX Tcaron Aacute -90 -KPX Tcaron Abreve -90 -KPX Tcaron Acircumflex -90 -KPX Tcaron Adieresis -90 -KPX Tcaron Agrave -90 -KPX Tcaron Amacron -90 -KPX Tcaron Aogonek -90 -KPX Tcaron Aring -90 -KPX Tcaron Atilde -90 -KPX Tcaron O -18 -KPX Tcaron Oacute -18 -KPX Tcaron Ocircumflex -18 -KPX Tcaron Odieresis -18 -KPX Tcaron Ograve -18 -KPX Tcaron Ohungarumlaut -18 -KPX Tcaron Omacron -18 -KPX Tcaron Oslash -18 -KPX Tcaron Otilde -18 -KPX Tcaron a -92 -KPX Tcaron aacute -92 -KPX Tcaron abreve -52 -KPX Tcaron acircumflex -52 -KPX Tcaron adieresis -52 -KPX Tcaron agrave -52 -KPX Tcaron amacron -52 -KPX Tcaron aogonek -92 -KPX Tcaron aring -92 -KPX Tcaron atilde -52 -KPX Tcaron colon -74 -KPX Tcaron comma -74 -KPX Tcaron e -92 -KPX Tcaron eacute -92 -KPX Tcaron ecaron -92 -KPX Tcaron ecircumflex -92 -KPX Tcaron edieresis -52 -KPX Tcaron edotaccent -92 -KPX Tcaron egrave -52 -KPX Tcaron emacron -52 -KPX Tcaron eogonek -92 -KPX Tcaron hyphen -92 -KPX Tcaron i -18 -KPX Tcaron iacute -18 -KPX Tcaron iogonek -18 -KPX Tcaron o -92 -KPX Tcaron oacute -92 -KPX Tcaron ocircumflex -92 -KPX Tcaron odieresis -92 -KPX Tcaron ograve -92 -KPX Tcaron ohungarumlaut -92 -KPX Tcaron omacron -92 -KPX Tcaron oslash -92 -KPX Tcaron otilde -92 -KPX Tcaron period -90 -KPX Tcaron r -74 -KPX Tcaron racute -74 -KPX Tcaron rcaron -74 -KPX Tcaron rcommaaccent -74 -KPX Tcaron semicolon -74 -KPX Tcaron u -92 -KPX Tcaron uacute -92 -KPX Tcaron ucircumflex -92 -KPX Tcaron udieresis -92 -KPX Tcaron ugrave -92 -KPX Tcaron uhungarumlaut -92 -KPX Tcaron umacron -92 -KPX Tcaron uogonek -92 -KPX Tcaron uring -92 -KPX Tcaron w -74 -KPX Tcaron y -34 -KPX Tcaron yacute -34 -KPX Tcaron ydieresis -34 -KPX Tcommaaccent A -90 -KPX Tcommaaccent Aacute -90 -KPX Tcommaaccent Abreve -90 -KPX Tcommaaccent Acircumflex -90 -KPX Tcommaaccent Adieresis -90 -KPX Tcommaaccent Agrave -90 -KPX Tcommaaccent Amacron -90 -KPX Tcommaaccent Aogonek -90 -KPX Tcommaaccent Aring -90 -KPX Tcommaaccent Atilde -90 -KPX Tcommaaccent O -18 -KPX Tcommaaccent Oacute -18 -KPX Tcommaaccent Ocircumflex -18 -KPX Tcommaaccent Odieresis -18 -KPX Tcommaaccent Ograve -18 -KPX Tcommaaccent Ohungarumlaut -18 -KPX Tcommaaccent Omacron -18 -KPX Tcommaaccent Oslash -18 -KPX Tcommaaccent Otilde -18 -KPX Tcommaaccent a -92 -KPX Tcommaaccent aacute -92 -KPX Tcommaaccent abreve -52 -KPX Tcommaaccent acircumflex -52 -KPX Tcommaaccent adieresis -52 -KPX Tcommaaccent agrave -52 -KPX Tcommaaccent amacron -52 -KPX Tcommaaccent aogonek -92 -KPX Tcommaaccent aring -92 -KPX Tcommaaccent atilde -52 -KPX Tcommaaccent colon -74 -KPX Tcommaaccent comma -74 -KPX Tcommaaccent e -92 -KPX Tcommaaccent eacute -92 -KPX Tcommaaccent ecaron -92 -KPX Tcommaaccent ecircumflex -92 -KPX Tcommaaccent edieresis -52 -KPX Tcommaaccent edotaccent -92 -KPX Tcommaaccent egrave -52 -KPX Tcommaaccent emacron -52 -KPX Tcommaaccent eogonek -92 -KPX Tcommaaccent hyphen -92 -KPX Tcommaaccent i -18 -KPX Tcommaaccent iacute -18 -KPX Tcommaaccent iogonek -18 -KPX Tcommaaccent o -92 -KPX Tcommaaccent oacute -92 -KPX Tcommaaccent ocircumflex -92 -KPX Tcommaaccent odieresis -92 -KPX Tcommaaccent ograve -92 -KPX Tcommaaccent ohungarumlaut -92 -KPX Tcommaaccent omacron -92 -KPX Tcommaaccent oslash -92 -KPX Tcommaaccent otilde -92 -KPX Tcommaaccent period -90 -KPX Tcommaaccent r -74 -KPX Tcommaaccent racute -74 -KPX Tcommaaccent rcaron -74 -KPX Tcommaaccent rcommaaccent -74 -KPX Tcommaaccent semicolon -74 -KPX Tcommaaccent u -92 -KPX Tcommaaccent uacute -92 -KPX Tcommaaccent ucircumflex -92 -KPX Tcommaaccent udieresis -92 -KPX Tcommaaccent ugrave -92 -KPX Tcommaaccent uhungarumlaut -92 -KPX Tcommaaccent umacron -92 -KPX Tcommaaccent uogonek -92 -KPX Tcommaaccent uring -92 -KPX Tcommaaccent w -74 -KPX Tcommaaccent y -34 -KPX Tcommaaccent yacute -34 -KPX Tcommaaccent ydieresis -34 -KPX U A -60 -KPX U Aacute -60 -KPX U Abreve -60 -KPX U Acircumflex -60 -KPX U Adieresis -60 -KPX U Agrave -60 -KPX U Amacron -60 -KPX U Aogonek -60 -KPX U Aring -60 -KPX U Atilde -60 -KPX U comma -50 -KPX U period -50 -KPX Uacute A -60 -KPX Uacute Aacute -60 -KPX Uacute Abreve -60 -KPX Uacute Acircumflex -60 -KPX Uacute Adieresis -60 -KPX Uacute Agrave -60 -KPX Uacute Amacron -60 -KPX Uacute Aogonek -60 -KPX Uacute Aring -60 -KPX Uacute Atilde -60 -KPX Uacute comma -50 -KPX Uacute period -50 -KPX Ucircumflex A -60 -KPX Ucircumflex Aacute -60 -KPX Ucircumflex Abreve -60 -KPX Ucircumflex Acircumflex -60 -KPX Ucircumflex Adieresis -60 -KPX Ucircumflex Agrave -60 -KPX Ucircumflex Amacron -60 -KPX Ucircumflex Aogonek -60 -KPX Ucircumflex Aring -60 -KPX Ucircumflex Atilde -60 -KPX Ucircumflex comma -50 -KPX Ucircumflex period -50 -KPX Udieresis A -60 -KPX Udieresis Aacute -60 -KPX Udieresis Abreve -60 -KPX Udieresis Acircumflex -60 -KPX Udieresis Adieresis -60 -KPX Udieresis Agrave -60 -KPX Udieresis Amacron -60 -KPX Udieresis Aogonek -60 -KPX Udieresis Aring -60 -KPX Udieresis Atilde -60 -KPX Udieresis comma -50 -KPX Udieresis period -50 -KPX Ugrave A -60 -KPX Ugrave Aacute -60 -KPX Ugrave Abreve -60 -KPX Ugrave Acircumflex -60 -KPX Ugrave Adieresis -60 -KPX Ugrave Agrave -60 -KPX Ugrave Amacron -60 -KPX Ugrave Aogonek -60 -KPX Ugrave Aring -60 -KPX Ugrave Atilde -60 -KPX Ugrave comma -50 -KPX Ugrave period -50 -KPX Uhungarumlaut A -60 -KPX Uhungarumlaut Aacute -60 -KPX Uhungarumlaut Abreve -60 -KPX Uhungarumlaut Acircumflex -60 -KPX Uhungarumlaut Adieresis -60 -KPX Uhungarumlaut Agrave -60 -KPX Uhungarumlaut Amacron -60 -KPX Uhungarumlaut Aogonek -60 -KPX Uhungarumlaut Aring -60 -KPX Uhungarumlaut Atilde -60 -KPX Uhungarumlaut comma -50 -KPX Uhungarumlaut period -50 -KPX Umacron A -60 -KPX Umacron Aacute -60 -KPX Umacron Abreve -60 -KPX Umacron Acircumflex -60 -KPX Umacron Adieresis -60 -KPX Umacron Agrave -60 -KPX Umacron Amacron -60 -KPX Umacron Aogonek -60 -KPX Umacron Aring -60 -KPX Umacron Atilde -60 -KPX Umacron comma -50 -KPX Umacron period -50 -KPX Uogonek A -60 -KPX Uogonek Aacute -60 -KPX Uogonek Abreve -60 -KPX Uogonek Acircumflex -60 -KPX Uogonek Adieresis -60 -KPX Uogonek Agrave -60 -KPX Uogonek Amacron -60 -KPX Uogonek Aogonek -60 -KPX Uogonek Aring -60 -KPX Uogonek Atilde -60 -KPX Uogonek comma -50 -KPX Uogonek period -50 -KPX Uring A -60 -KPX Uring Aacute -60 -KPX Uring Abreve -60 -KPX Uring Acircumflex -60 -KPX Uring Adieresis -60 -KPX Uring Agrave -60 -KPX Uring Amacron -60 -KPX Uring Aogonek -60 -KPX Uring Aring -60 -KPX Uring Atilde -60 -KPX Uring comma -50 -KPX Uring period -50 -KPX V A -135 -KPX V Aacute -135 -KPX V Abreve -135 -KPX V Acircumflex -135 -KPX V Adieresis -135 -KPX V Agrave -135 -KPX V Amacron -135 -KPX V Aogonek -135 -KPX V Aring -135 -KPX V Atilde -135 -KPX V G -30 -KPX V Gbreve -30 -KPX V Gcommaaccent -30 -KPX V O -45 -KPX V Oacute -45 -KPX V Ocircumflex -45 -KPX V Odieresis -45 -KPX V Ograve -45 -KPX V Ohungarumlaut -45 -KPX V Omacron -45 -KPX V Oslash -45 -KPX V Otilde -45 -KPX V a -92 -KPX V aacute -92 -KPX V abreve -92 -KPX V acircumflex -92 -KPX V adieresis -92 -KPX V agrave -92 -KPX V amacron -92 -KPX V aogonek -92 -KPX V aring -92 -KPX V atilde -92 -KPX V colon -92 -KPX V comma -129 -KPX V e -100 -KPX V eacute -100 -KPX V ecaron -100 -KPX V ecircumflex -100 -KPX V edieresis -100 -KPX V edotaccent -100 -KPX V egrave -100 -KPX V emacron -100 -KPX V eogonek -100 -KPX V hyphen -74 -KPX V i -37 -KPX V iacute -37 -KPX V icircumflex -37 -KPX V idieresis -37 -KPX V igrave -37 -KPX V imacron -37 -KPX V iogonek -37 -KPX V o -100 -KPX V oacute -100 -KPX V ocircumflex -100 -KPX V odieresis -100 -KPX V ograve -100 -KPX V ohungarumlaut -100 -KPX V omacron -100 -KPX V oslash -100 -KPX V otilde -100 -KPX V period -145 -KPX V semicolon -92 -KPX V u -92 -KPX V uacute -92 -KPX V ucircumflex -92 -KPX V udieresis -92 -KPX V ugrave -92 -KPX V uhungarumlaut -92 -KPX V umacron -92 -KPX V uogonek -92 -KPX V uring -92 -KPX W A -120 -KPX W Aacute -120 -KPX W Abreve -120 -KPX W Acircumflex -120 -KPX W Adieresis -120 -KPX W Agrave -120 -KPX W Amacron -120 -KPX W Aogonek -120 -KPX W Aring -120 -KPX W Atilde -120 -KPX W O -10 -KPX W Oacute -10 -KPX W Ocircumflex -10 -KPX W Odieresis -10 -KPX W Ograve -10 -KPX W Ohungarumlaut -10 -KPX W Omacron -10 -KPX W Oslash -10 -KPX W Otilde -10 -KPX W a -65 -KPX W aacute -65 -KPX W abreve -65 -KPX W acircumflex -65 -KPX W adieresis -65 -KPX W agrave -65 -KPX W amacron -65 -KPX W aogonek -65 -KPX W aring -65 -KPX W atilde -65 -KPX W colon -55 -KPX W comma -92 -KPX W e -65 -KPX W eacute -65 -KPX W ecaron -65 -KPX W ecircumflex -65 -KPX W edieresis -65 -KPX W edotaccent -65 -KPX W egrave -65 -KPX W emacron -65 -KPX W eogonek -65 -KPX W hyphen -37 -KPX W i -18 -KPX W iacute -18 -KPX W iogonek -18 -KPX W o -75 -KPX W oacute -75 -KPX W ocircumflex -75 -KPX W odieresis -75 -KPX W ograve -75 -KPX W ohungarumlaut -75 -KPX W omacron -75 -KPX W oslash -75 -KPX W otilde -75 -KPX W period -92 -KPX W semicolon -55 -KPX W u -50 -KPX W uacute -50 -KPX W ucircumflex -50 -KPX W udieresis -50 -KPX W ugrave -50 -KPX W uhungarumlaut -50 -KPX W umacron -50 -KPX W uogonek -50 -KPX W uring -50 -KPX W y -60 -KPX W yacute -60 -KPX W ydieresis -60 -KPX Y A -110 -KPX Y Aacute -110 -KPX Y Abreve -110 -KPX Y Acircumflex -110 -KPX Y Adieresis -110 -KPX Y Agrave -110 -KPX Y Amacron -110 -KPX Y Aogonek -110 -KPX Y Aring -110 -KPX Y Atilde -110 -KPX Y O -35 -KPX Y Oacute -35 -KPX Y Ocircumflex -35 -KPX Y Odieresis -35 -KPX Y Ograve -35 -KPX Y Ohungarumlaut -35 -KPX Y Omacron -35 -KPX Y Oslash -35 -KPX Y Otilde -35 -KPX Y a -85 -KPX Y aacute -85 -KPX Y abreve -85 -KPX Y acircumflex -85 -KPX Y adieresis -85 -KPX Y agrave -85 -KPX Y amacron -85 -KPX Y aogonek -85 -KPX Y aring -85 -KPX Y atilde -85 -KPX Y colon -92 -KPX Y comma -92 -KPX Y e -111 -KPX Y eacute -111 -KPX Y ecaron -111 -KPX Y ecircumflex -111 -KPX Y edieresis -71 -KPX Y edotaccent -111 -KPX Y egrave -71 -KPX Y emacron -71 -KPX Y eogonek -111 -KPX Y hyphen -92 -KPX Y i -37 -KPX Y iacute -37 -KPX Y iogonek -37 -KPX Y o -111 -KPX Y oacute -111 -KPX Y ocircumflex -111 -KPX Y odieresis -111 -KPX Y ograve -111 -KPX Y ohungarumlaut -111 -KPX Y omacron -111 -KPX Y oslash -111 -KPX Y otilde -111 -KPX Y period -92 -KPX Y semicolon -92 -KPX Y u -92 -KPX Y uacute -92 -KPX Y ucircumflex -92 -KPX Y udieresis -92 -KPX Y ugrave -92 -KPX Y uhungarumlaut -92 -KPX Y umacron -92 -KPX Y uogonek -92 -KPX Y uring -92 -KPX Yacute A -110 -KPX Yacute Aacute -110 -KPX Yacute Abreve -110 -KPX Yacute Acircumflex -110 -KPX Yacute Adieresis -110 -KPX Yacute Agrave -110 -KPX Yacute Amacron -110 -KPX Yacute Aogonek -110 -KPX Yacute Aring -110 -KPX Yacute Atilde -110 -KPX Yacute O -35 -KPX Yacute Oacute -35 -KPX Yacute Ocircumflex -35 -KPX Yacute Odieresis -35 -KPX Yacute Ograve -35 -KPX Yacute Ohungarumlaut -35 -KPX Yacute Omacron -35 -KPX Yacute Oslash -35 -KPX Yacute Otilde -35 -KPX Yacute a -85 -KPX Yacute aacute -85 -KPX Yacute abreve -85 -KPX Yacute acircumflex -85 -KPX Yacute adieresis -85 -KPX Yacute agrave -85 -KPX Yacute amacron -85 -KPX Yacute aogonek -85 -KPX Yacute aring -85 -KPX Yacute atilde -85 -KPX Yacute colon -92 -KPX Yacute comma -92 -KPX Yacute e -111 -KPX Yacute eacute -111 -KPX Yacute ecaron -111 -KPX Yacute ecircumflex -111 -KPX Yacute edieresis -71 -KPX Yacute edotaccent -111 -KPX Yacute egrave -71 -KPX Yacute emacron -71 -KPX Yacute eogonek -111 -KPX Yacute hyphen -92 -KPX Yacute i -37 -KPX Yacute iacute -37 -KPX Yacute iogonek -37 -KPX Yacute o -111 -KPX Yacute oacute -111 -KPX Yacute ocircumflex -111 -KPX Yacute odieresis -111 -KPX Yacute ograve -111 -KPX Yacute ohungarumlaut -111 -KPX Yacute omacron -111 -KPX Yacute oslash -111 -KPX Yacute otilde -111 -KPX Yacute period -92 -KPX Yacute semicolon -92 -KPX Yacute u -92 -KPX Yacute uacute -92 -KPX Yacute ucircumflex -92 -KPX Yacute udieresis -92 -KPX Yacute ugrave -92 -KPX Yacute uhungarumlaut -92 -KPX Yacute umacron -92 -KPX Yacute uogonek -92 -KPX Yacute uring -92 -KPX Ydieresis A -110 -KPX Ydieresis Aacute -110 -KPX Ydieresis Abreve -110 -KPX Ydieresis Acircumflex -110 -KPX Ydieresis Adieresis -110 -KPX Ydieresis Agrave -110 -KPX Ydieresis Amacron -110 -KPX Ydieresis Aogonek -110 -KPX Ydieresis Aring -110 -KPX Ydieresis Atilde -110 -KPX Ydieresis O -35 -KPX Ydieresis Oacute -35 -KPX Ydieresis Ocircumflex -35 -KPX Ydieresis Odieresis -35 -KPX Ydieresis Ograve -35 -KPX Ydieresis Ohungarumlaut -35 -KPX Ydieresis Omacron -35 -KPX Ydieresis Oslash -35 -KPX Ydieresis Otilde -35 -KPX Ydieresis a -85 -KPX Ydieresis aacute -85 -KPX Ydieresis abreve -85 -KPX Ydieresis acircumflex -85 -KPX Ydieresis adieresis -85 -KPX Ydieresis agrave -85 -KPX Ydieresis amacron -85 -KPX Ydieresis aogonek -85 -KPX Ydieresis aring -85 -KPX Ydieresis atilde -85 -KPX Ydieresis colon -92 -KPX Ydieresis comma -92 -KPX Ydieresis e -111 -KPX Ydieresis eacute -111 -KPX Ydieresis ecaron -111 -KPX Ydieresis ecircumflex -111 -KPX Ydieresis edieresis -71 -KPX Ydieresis edotaccent -111 -KPX Ydieresis egrave -71 -KPX Ydieresis emacron -71 -KPX Ydieresis eogonek -111 -KPX Ydieresis hyphen -92 -KPX Ydieresis i -37 -KPX Ydieresis iacute -37 -KPX Ydieresis iogonek -37 -KPX Ydieresis o -111 -KPX Ydieresis oacute -111 -KPX Ydieresis ocircumflex -111 -KPX Ydieresis odieresis -111 -KPX Ydieresis ograve -111 -KPX Ydieresis ohungarumlaut -111 -KPX Ydieresis omacron -111 -KPX Ydieresis oslash -111 -KPX Ydieresis otilde -111 -KPX Ydieresis period -92 -KPX Ydieresis semicolon -92 -KPX Ydieresis u -92 -KPX Ydieresis uacute -92 -KPX Ydieresis ucircumflex -92 -KPX Ydieresis udieresis -92 -KPX Ydieresis ugrave -92 -KPX Ydieresis uhungarumlaut -92 -KPX Ydieresis umacron -92 -KPX Ydieresis uogonek -92 -KPX Ydieresis uring -92 -KPX a v -25 -KPX aacute v -25 -KPX abreve v -25 -KPX acircumflex v -25 -KPX adieresis v -25 -KPX agrave v -25 -KPX amacron v -25 -KPX aogonek v -25 -KPX aring v -25 -KPX atilde v -25 -KPX b b -10 -KPX b period -40 -KPX b u -20 -KPX b uacute -20 -KPX b ucircumflex -20 -KPX b udieresis -20 -KPX b ugrave -20 -KPX b uhungarumlaut -20 -KPX b umacron -20 -KPX b uogonek -20 -KPX b uring -20 -KPX b v -15 -KPX comma quotedblright -45 -KPX comma quoteright -55 -KPX d w -15 -KPX dcroat w -15 -KPX e v -15 -KPX eacute v -15 -KPX ecaron v -15 -KPX ecircumflex v -15 -KPX edieresis v -15 -KPX edotaccent v -15 -KPX egrave v -15 -KPX emacron v -15 -KPX eogonek v -15 -KPX f comma -15 -KPX f dotlessi -35 -KPX f i -25 -KPX f o -25 -KPX f oacute -25 -KPX f ocircumflex -25 -KPX f odieresis -25 -KPX f ograve -25 -KPX f ohungarumlaut -25 -KPX f omacron -25 -KPX f oslash -25 -KPX f otilde -25 -KPX f period -15 -KPX f quotedblright 50 -KPX f quoteright 55 -KPX g period -15 -KPX gbreve period -15 -KPX gcommaaccent period -15 -KPX h y -15 -KPX h yacute -15 -KPX h ydieresis -15 -KPX i v -10 -KPX iacute v -10 -KPX icircumflex v -10 -KPX idieresis v -10 -KPX igrave v -10 -KPX imacron v -10 -KPX iogonek v -10 -KPX k e -10 -KPX k eacute -10 -KPX k ecaron -10 -KPX k ecircumflex -10 -KPX k edieresis -10 -KPX k edotaccent -10 -KPX k egrave -10 -KPX k emacron -10 -KPX k eogonek -10 -KPX k o -15 -KPX k oacute -15 -KPX k ocircumflex -15 -KPX k odieresis -15 -KPX k ograve -15 -KPX k ohungarumlaut -15 -KPX k omacron -15 -KPX k oslash -15 -KPX k otilde -15 -KPX k y -15 -KPX k yacute -15 -KPX k ydieresis -15 -KPX kcommaaccent e -10 -KPX kcommaaccent eacute -10 -KPX kcommaaccent ecaron -10 -KPX kcommaaccent ecircumflex -10 -KPX kcommaaccent edieresis -10 -KPX kcommaaccent edotaccent -10 -KPX kcommaaccent egrave -10 -KPX kcommaaccent emacron -10 -KPX kcommaaccent eogonek -10 -KPX kcommaaccent o -15 -KPX kcommaaccent oacute -15 -KPX kcommaaccent ocircumflex -15 -KPX kcommaaccent odieresis -15 -KPX kcommaaccent ograve -15 -KPX kcommaaccent ohungarumlaut -15 -KPX kcommaaccent omacron -15 -KPX kcommaaccent oslash -15 -KPX kcommaaccent otilde -15 -KPX kcommaaccent y -15 -KPX kcommaaccent yacute -15 -KPX kcommaaccent ydieresis -15 -KPX n v -40 -KPX nacute v -40 -KPX ncaron v -40 -KPX ncommaaccent v -40 -KPX ntilde v -40 -KPX o v -10 -KPX o w -10 -KPX oacute v -10 -KPX oacute w -10 -KPX ocircumflex v -10 -KPX ocircumflex w -10 -KPX odieresis v -10 -KPX odieresis w -10 -KPX ograve v -10 -KPX ograve w -10 -KPX ohungarumlaut v -10 -KPX ohungarumlaut w -10 -KPX omacron v -10 -KPX omacron w -10 -KPX oslash v -10 -KPX oslash w -10 -KPX otilde v -10 -KPX otilde w -10 -KPX period quotedblright -55 -KPX period quoteright -55 -KPX quotedblleft A -10 -KPX quotedblleft Aacute -10 -KPX quotedblleft Abreve -10 -KPX quotedblleft Acircumflex -10 -KPX quotedblleft Adieresis -10 -KPX quotedblleft Agrave -10 -KPX quotedblleft Amacron -10 -KPX quotedblleft Aogonek -10 -KPX quotedblleft Aring -10 -KPX quotedblleft Atilde -10 -KPX quoteleft A -10 -KPX quoteleft Aacute -10 -KPX quoteleft Abreve -10 -KPX quoteleft Acircumflex -10 -KPX quoteleft Adieresis -10 -KPX quoteleft Agrave -10 -KPX quoteleft Amacron -10 -KPX quoteleft Aogonek -10 -KPX quoteleft Aring -10 -KPX quoteleft Atilde -10 -KPX quoteleft quoteleft -63 -KPX quoteright d -20 -KPX quoteright dcroat -20 -KPX quoteright quoteright -63 -KPX quoteright r -20 -KPX quoteright racute -20 -KPX quoteright rcaron -20 -KPX quoteright rcommaaccent -20 -KPX quoteright s -37 -KPX quoteright sacute -37 -KPX quoteright scaron -37 -KPX quoteright scedilla -37 -KPX quoteright scommaaccent -37 -KPX quoteright space -74 -KPX quoteright v -20 -KPX r c -18 -KPX r cacute -18 -KPX r ccaron -18 -KPX r ccedilla -18 -KPX r comma -92 -KPX r e -18 -KPX r eacute -18 -KPX r ecaron -18 -KPX r ecircumflex -18 -KPX r edieresis -18 -KPX r edotaccent -18 -KPX r egrave -18 -KPX r emacron -18 -KPX r eogonek -18 -KPX r g -10 -KPX r gbreve -10 -KPX r gcommaaccent -10 -KPX r hyphen -37 -KPX r n -15 -KPX r nacute -15 -KPX r ncaron -15 -KPX r ncommaaccent -15 -KPX r ntilde -15 -KPX r o -18 -KPX r oacute -18 -KPX r ocircumflex -18 -KPX r odieresis -18 -KPX r ograve -18 -KPX r ohungarumlaut -18 -KPX r omacron -18 -KPX r oslash -18 -KPX r otilde -18 -KPX r p -10 -KPX r period -100 -KPX r q -18 -KPX r v -10 -KPX racute c -18 -KPX racute cacute -18 -KPX racute ccaron -18 -KPX racute ccedilla -18 -KPX racute comma -92 -KPX racute e -18 -KPX racute eacute -18 -KPX racute ecaron -18 -KPX racute ecircumflex -18 -KPX racute edieresis -18 -KPX racute edotaccent -18 -KPX racute egrave -18 -KPX racute emacron -18 -KPX racute eogonek -18 -KPX racute g -10 -KPX racute gbreve -10 -KPX racute gcommaaccent -10 -KPX racute hyphen -37 -KPX racute n -15 -KPX racute nacute -15 -KPX racute ncaron -15 -KPX racute ncommaaccent -15 -KPX racute ntilde -15 -KPX racute o -18 -KPX racute oacute -18 -KPX racute ocircumflex -18 -KPX racute odieresis -18 -KPX racute ograve -18 -KPX racute ohungarumlaut -18 -KPX racute omacron -18 -KPX racute oslash -18 -KPX racute otilde -18 -KPX racute p -10 -KPX racute period -100 -KPX racute q -18 -KPX racute v -10 -KPX rcaron c -18 -KPX rcaron cacute -18 -KPX rcaron ccaron -18 -KPX rcaron ccedilla -18 -KPX rcaron comma -92 -KPX rcaron e -18 -KPX rcaron eacute -18 -KPX rcaron ecaron -18 -KPX rcaron ecircumflex -18 -KPX rcaron edieresis -18 -KPX rcaron edotaccent -18 -KPX rcaron egrave -18 -KPX rcaron emacron -18 -KPX rcaron eogonek -18 -KPX rcaron g -10 -KPX rcaron gbreve -10 -KPX rcaron gcommaaccent -10 -KPX rcaron hyphen -37 -KPX rcaron n -15 -KPX rcaron nacute -15 -KPX rcaron ncaron -15 -KPX rcaron ncommaaccent -15 -KPX rcaron ntilde -15 -KPX rcaron o -18 -KPX rcaron oacute -18 -KPX rcaron ocircumflex -18 -KPX rcaron odieresis -18 -KPX rcaron ograve -18 -KPX rcaron ohungarumlaut -18 -KPX rcaron omacron -18 -KPX rcaron oslash -18 -KPX rcaron otilde -18 -KPX rcaron p -10 -KPX rcaron period -100 -KPX rcaron q -18 -KPX rcaron v -10 -KPX rcommaaccent c -18 -KPX rcommaaccent cacute -18 -KPX rcommaaccent ccaron -18 -KPX rcommaaccent ccedilla -18 -KPX rcommaaccent comma -92 -KPX rcommaaccent e -18 -KPX rcommaaccent eacute -18 -KPX rcommaaccent ecaron -18 -KPX rcommaaccent ecircumflex -18 -KPX rcommaaccent edieresis -18 -KPX rcommaaccent edotaccent -18 -KPX rcommaaccent egrave -18 -KPX rcommaaccent emacron -18 -KPX rcommaaccent eogonek -18 -KPX rcommaaccent g -10 -KPX rcommaaccent gbreve -10 -KPX rcommaaccent gcommaaccent -10 -KPX rcommaaccent hyphen -37 -KPX rcommaaccent n -15 -KPX rcommaaccent nacute -15 -KPX rcommaaccent ncaron -15 -KPX rcommaaccent ncommaaccent -15 -KPX rcommaaccent ntilde -15 -KPX rcommaaccent o -18 -KPX rcommaaccent oacute -18 -KPX rcommaaccent ocircumflex -18 -KPX rcommaaccent odieresis -18 -KPX rcommaaccent ograve -18 -KPX rcommaaccent ohungarumlaut -18 -KPX rcommaaccent omacron -18 -KPX rcommaaccent oslash -18 -KPX rcommaaccent otilde -18 -KPX rcommaaccent p -10 -KPX rcommaaccent period -100 -KPX rcommaaccent q -18 -KPX rcommaaccent v -10 -KPX space A -55 -KPX space Aacute -55 -KPX space Abreve -55 -KPX space Acircumflex -55 -KPX space Adieresis -55 -KPX space Agrave -55 -KPX space Amacron -55 -KPX space Aogonek -55 -KPX space Aring -55 -KPX space Atilde -55 -KPX space T -30 -KPX space Tcaron -30 -KPX space Tcommaaccent -30 -KPX space V -45 -KPX space W -30 -KPX space Y -55 -KPX space Yacute -55 -KPX space Ydieresis -55 -KPX v a -10 -KPX v aacute -10 -KPX v abreve -10 -KPX v acircumflex -10 -KPX v adieresis -10 -KPX v agrave -10 -KPX v amacron -10 -KPX v aogonek -10 -KPX v aring -10 -KPX v atilde -10 -KPX v comma -55 -KPX v e -10 -KPX v eacute -10 -KPX v ecaron -10 -KPX v ecircumflex -10 -KPX v edieresis -10 -KPX v edotaccent -10 -KPX v egrave -10 -KPX v emacron -10 -KPX v eogonek -10 -KPX v o -10 -KPX v oacute -10 -KPX v ocircumflex -10 -KPX v odieresis -10 -KPX v ograve -10 -KPX v ohungarumlaut -10 -KPX v omacron -10 -KPX v oslash -10 -KPX v otilde -10 -KPX v period -70 -KPX w comma -55 -KPX w o -10 -KPX w oacute -10 -KPX w ocircumflex -10 -KPX w odieresis -10 -KPX w ograve -10 -KPX w ohungarumlaut -10 -KPX w omacron -10 -KPX w oslash -10 -KPX w otilde -10 -KPX w period -70 -KPX y comma -55 -KPX y e -10 -KPX y eacute -10 -KPX y ecaron -10 -KPX y ecircumflex -10 -KPX y edieresis -10 -KPX y edotaccent -10 -KPX y egrave -10 -KPX y emacron -10 -KPX y eogonek -10 -KPX y o -25 -KPX y oacute -25 -KPX y ocircumflex -25 -KPX y odieresis -25 -KPX y ograve -25 -KPX y ohungarumlaut -25 -KPX y omacron -25 -KPX y oslash -25 -KPX y otilde -25 -KPX y period -70 -KPX yacute comma -55 -KPX yacute e -10 -KPX yacute eacute -10 -KPX yacute ecaron -10 -KPX yacute ecircumflex -10 -KPX yacute edieresis -10 -KPX yacute edotaccent -10 -KPX yacute egrave -10 -KPX yacute emacron -10 -KPX yacute eogonek -10 -KPX yacute o -25 -KPX yacute oacute -25 -KPX yacute ocircumflex -25 -KPX yacute odieresis -25 -KPX yacute ograve -25 -KPX yacute ohungarumlaut -25 -KPX yacute omacron -25 -KPX yacute oslash -25 -KPX yacute otilde -25 -KPX yacute period -70 -KPX ydieresis comma -55 -KPX ydieresis e -10 -KPX ydieresis eacute -10 -KPX ydieresis ecaron -10 -KPX ydieresis ecircumflex -10 -KPX ydieresis edieresis -10 -KPX ydieresis edotaccent -10 -KPX ydieresis egrave -10 -KPX ydieresis emacron -10 -KPX ydieresis eogonek -10 -KPX ydieresis o -25 -KPX ydieresis oacute -25 -KPX ydieresis ocircumflex -25 -KPX ydieresis odieresis -25 -KPX ydieresis ograve -25 -KPX ydieresis ohungarumlaut -25 -KPX ydieresis omacron -25 -KPX ydieresis oslash -25 -KPX ydieresis otilde -25 -KPX ydieresis period -70 -EndKernPairs -EndKernData -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Times-BoldItalic.afm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Times-BoldItalic.afm deleted file mode 100644 index 396987c4..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Times-BoldItalic.afm +++ /dev/null @@ -1,2386 +0,0 @@ -StartFontMetrics 4.1 -Comment Copyright (c) 1985, 1987, 1989, 1990, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved. -Comment Creation Date: Thu May 1 13:04:06 1997 -Comment UniqueID 43066 -Comment VMusage 45874 56899 -FontName Times-BoldItalic -FullName Times Bold Italic -FamilyName Times -Weight Bold -ItalicAngle -15 -IsFixedPitch false -CharacterSet ExtendedRoman -FontBBox -200 -218 996 921 -UnderlinePosition -100 -UnderlineThickness 50 -Version 002.000 -Notice Copyright (c) 1985, 1987, 1989, 1990, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved.Times is a trademark of Linotype-Hell AG and/or its subsidiaries. -EncodingScheme WinAnsiEncoding -CapHeight 669 -XHeight 462 -Ascender 683 -Descender -217 -StdHW 42 -StdVW 121 -StartCharMetrics 317 -C 32 ; WX 250 ; N space ; B 0 0 0 0 ; -C 160 ; WX 250 ; N space ; B 0 0 0 0 ; -C 33 ; WX 389 ; N exclam ; B 67 -13 370 684 ; -C 34 ; WX 555 ; N quotedbl ; B 136 398 536 685 ; -C 35 ; WX 500 ; N numbersign ; B -33 0 533 700 ; -C 36 ; WX 500 ; N dollar ; B -20 -100 497 733 ; -C 37 ; WX 833 ; N percent ; B 39 -10 793 692 ; -C 38 ; WX 778 ; N ampersand ; B 5 -19 699 682 ; -C 146 ; WX 333 ; N quoteright ; B 98 369 302 685 ; -C 40 ; WX 333 ; N parenleft ; B 28 -179 344 685 ; -C 41 ; WX 333 ; N parenright ; B -44 -179 271 685 ; -C 42 ; WX 500 ; N asterisk ; B 65 249 456 685 ; -C 43 ; WX 570 ; N plus ; B 33 0 537 506 ; -C 44 ; WX 250 ; N comma ; B -60 -182 144 134 ; -C 45 ; WX 333 ; N hyphen ; B 2 166 271 282 ; -C 173 ; WX 333 ; N hyphen ; B 2 166 271 282 ; -C 46 ; WX 250 ; N period ; B -9 -13 139 135 ; -C 47 ; WX 278 ; N slash ; B -64 -18 342 685 ; -C 48 ; WX 500 ; N zero ; B 17 -14 477 683 ; -C 49 ; WX 500 ; N one ; B 5 0 419 683 ; -C 50 ; WX 500 ; N two ; B -27 0 446 683 ; -C 51 ; WX 500 ; N three ; B -15 -13 450 683 ; -C 52 ; WX 500 ; N four ; B -15 0 503 683 ; -C 53 ; WX 500 ; N five ; B -11 -13 487 669 ; -C 54 ; WX 500 ; N six ; B 23 -15 509 679 ; -C 55 ; WX 500 ; N seven ; B 52 0 525 669 ; -C 56 ; WX 500 ; N eight ; B 3 -13 476 683 ; -C 57 ; WX 500 ; N nine ; B -12 -10 475 683 ; -C 58 ; WX 333 ; N colon ; B 23 -13 264 459 ; -C 59 ; WX 333 ; N semicolon ; B -25 -183 264 459 ; -C 60 ; WX 570 ; N less ; B 31 -8 539 514 ; -C 61 ; WX 570 ; N equal ; B 33 107 537 399 ; -C 62 ; WX 570 ; N greater ; B 31 -8 539 514 ; -C 63 ; WX 500 ; N question ; B 79 -13 470 684 ; -C 64 ; WX 832 ; N at ; B 63 -18 770 685 ; -C 65 ; WX 667 ; N A ; B -67 0 593 683 ; -C 66 ; WX 667 ; N B ; B -24 0 624 669 ; -C 67 ; WX 667 ; N C ; B 32 -18 677 685 ; -C 68 ; WX 722 ; N D ; B -46 0 685 669 ; -C 69 ; WX 667 ; N E ; B -27 0 653 669 ; -C 70 ; WX 667 ; N F ; B -13 0 660 669 ; -C 71 ; WX 722 ; N G ; B 21 -18 706 685 ; -C 72 ; WX 778 ; N H ; B -24 0 799 669 ; -C 73 ; WX 389 ; N I ; B -32 0 406 669 ; -C 74 ; WX 500 ; N J ; B -46 -99 524 669 ; -C 75 ; WX 667 ; N K ; B -21 0 702 669 ; -C 76 ; WX 611 ; N L ; B -22 0 590 669 ; -C 77 ; WX 889 ; N M ; B -29 -12 917 669 ; -C 78 ; WX 722 ; N N ; B -27 -15 748 669 ; -C 79 ; WX 722 ; N O ; B 27 -18 691 685 ; -C 80 ; WX 611 ; N P ; B -27 0 613 669 ; -C 81 ; WX 722 ; N Q ; B 27 -208 691 685 ; -C 82 ; WX 667 ; N R ; B -29 0 623 669 ; -C 83 ; WX 556 ; N S ; B 2 -18 526 685 ; -C 84 ; WX 611 ; N T ; B 50 0 650 669 ; -C 85 ; WX 722 ; N U ; B 67 -18 744 669 ; -C 86 ; WX 667 ; N V ; B 65 -18 715 669 ; -C 87 ; WX 889 ; N W ; B 65 -18 940 669 ; -C 88 ; WX 667 ; N X ; B -24 0 694 669 ; -C 89 ; WX 611 ; N Y ; B 73 0 659 669 ; -C 90 ; WX 611 ; N Z ; B -11 0 590 669 ; -C 91 ; WX 333 ; N bracketleft ; B -37 -159 362 674 ; -C 92 ; WX 278 ; N backslash ; B -1 -18 279 685 ; -C 93 ; WX 333 ; N bracketright ; B -56 -157 343 674 ; -C 94 ; WX 570 ; N asciicircum ; B 67 304 503 669 ; -C 95 ; WX 500 ; N underscore ; B 0 -125 500 -75 ; -C 145 ; WX 333 ; N quoteleft ; B 128 369 332 685 ; -C 97 ; WX 500 ; N a ; B -21 -14 455 462 ; -C 98 ; WX 500 ; N b ; B -14 -13 444 699 ; -C 99 ; WX 444 ; N c ; B -5 -13 392 462 ; -C 100 ; WX 500 ; N d ; B -21 -13 517 699 ; -C 101 ; WX 444 ; N e ; B 5 -13 398 462 ; -C 102 ; WX 333 ; N f ; B -169 -205 446 698 ; L i fi ; L l fl ; -C 103 ; WX 500 ; N g ; B -52 -203 478 462 ; -C 104 ; WX 556 ; N h ; B -13 -9 498 699 ; -C 105 ; WX 278 ; N i ; B 2 -9 263 684 ; -C 106 ; WX 278 ; N j ; B -189 -207 279 684 ; -C 107 ; WX 500 ; N k ; B -23 -8 483 699 ; -C 108 ; WX 278 ; N l ; B 2 -9 290 699 ; -C 109 ; WX 778 ; N m ; B -14 -9 722 462 ; -C 110 ; WX 556 ; N n ; B -6 -9 493 462 ; -C 111 ; WX 500 ; N o ; B -3 -13 441 462 ; -C 112 ; WX 500 ; N p ; B -120 -205 446 462 ; -C 113 ; WX 500 ; N q ; B 1 -205 471 462 ; -C 114 ; WX 389 ; N r ; B -21 0 389 462 ; -C 115 ; WX 389 ; N s ; B -19 -13 333 462 ; -C 116 ; WX 278 ; N t ; B -11 -9 281 594 ; -C 117 ; WX 556 ; N u ; B 15 -9 492 462 ; -C 118 ; WX 444 ; N v ; B 16 -13 401 462 ; -C 119 ; WX 667 ; N w ; B 16 -13 614 462 ; -C 120 ; WX 500 ; N x ; B -46 -13 469 462 ; -C 121 ; WX 444 ; N y ; B -94 -205 392 462 ; -C 122 ; WX 389 ; N z ; B -43 -78 368 449 ; -C 123 ; WX 348 ; N braceleft ; B 5 -187 436 686 ; -C 124 ; WX 220 ; N bar ; B 66 -218 154 782 ; -C 125 ; WX 348 ; N braceright ; B -129 -187 302 686 ; -C 126 ; WX 570 ; N asciitilde ; B 54 173 516 333 ; -C 161 ; WX 389 ; N exclamdown ; B 19 -205 322 492 ; -C 162 ; WX 500 ; N cent ; B 42 -143 439 576 ; -C 163 ; WX 500 ; N sterling ; B -32 -12 510 683 ; -C -1 ; WX 167 ; N fraction ; B -169 -14 324 683 ; -C 165 ; WX 500 ; N yen ; B 33 0 628 669 ; -C 131 ; WX 500 ; N florin ; B -87 -156 537 707 ; -C 167 ; WX 500 ; N section ; B 36 -143 459 685 ; -C 164 ; WX 500 ; N currency ; B -26 34 526 586 ; -C 39 ; WX 278 ; N quotesingle ; B 128 398 268 685 ; -C 147 ; WX 500 ; N quotedblleft ; B 53 369 513 685 ; -C 171 ; WX 500 ; N guillemotleft ; B 12 32 468 415 ; -C 139 ; WX 333 ; N guilsinglleft ; B 32 32 303 415 ; -C 155 ; WX 333 ; N guilsinglright ; B 10 32 281 415 ; -C -1 ; WX 556 ; N fi ; B -188 -205 514 703 ; -C -1 ; WX 556 ; N fl ; B -186 -205 553 704 ; -C 150 ; WX 500 ; N endash ; B -40 178 477 269 ; -C 134 ; WX 500 ; N dagger ; B 91 -145 494 685 ; -C 135 ; WX 500 ; N daggerdbl ; B 10 -139 493 685 ; -C 183 ; WX 250 ; N periodcentered ; B 51 257 199 405 ; -C 182 ; WX 500 ; N paragraph ; B -57 -193 562 669 ; -C 149 ; WX 350 ; N bullet ; B 0 175 350 525 ; -C 130 ; WX 333 ; N quotesinglbase ; B -5 -182 199 134 ; -C 132 ; WX 500 ; N quotedblbase ; B -57 -182 403 134 ; -C 148 ; WX 500 ; N quotedblright ; B 53 369 513 685 ; -C 187 ; WX 500 ; N guillemotright ; B 12 32 468 415 ; -C 133 ; WX 1000 ; N ellipsis ; B 40 -13 852 135 ; -C 137 ; WX 1000 ; N perthousand ; B 7 -29 996 706 ; -C 191 ; WX 500 ; N questiondown ; B 30 -205 421 492 ; -C 96 ; WX 333 ; N grave ; B 85 516 297 697 ; -C 180 ; WX 333 ; N acute ; B 139 516 379 697 ; -C 136 ; WX 333 ; N circumflex ; B 40 516 367 690 ; -C 152 ; WX 333 ; N tilde ; B 48 536 407 655 ; -C 175 ; WX 333 ; N macron ; B 51 553 393 623 ; -C -1 ; WX 333 ; N breve ; B 71 516 387 678 ; -C -1 ; WX 333 ; N dotaccent ; B 163 550 298 684 ; -C 168 ; WX 333 ; N dieresis ; B 55 550 402 684 ; -C -1 ; WX 333 ; N ring ; B 127 516 340 729 ; -C 184 ; WX 333 ; N cedilla ; B -80 -218 156 5 ; -C -1 ; WX 333 ; N hungarumlaut ; B 69 516 498 697 ; -C -1 ; WX 333 ; N ogonek ; B 15 -183 244 34 ; -C -1 ; WX 333 ; N caron ; B 79 516 411 690 ; -C 151 ; WX 1000 ; N emdash ; B -40 178 977 269 ; -C 198 ; WX 944 ; N AE ; B -64 0 918 669 ; -C 170 ; WX 266 ; N ordfeminine ; B 16 399 330 685 ; -C -1 ; WX 611 ; N Lslash ; B -22 0 590 669 ; -C 216 ; WX 722 ; N Oslash ; B 27 -125 691 764 ; -C 140 ; WX 944 ; N OE ; B 23 -8 946 677 ; -C 186 ; WX 300 ; N ordmasculine ; B 56 400 347 685 ; -C 230 ; WX 722 ; N ae ; B -5 -13 673 462 ; -C -1 ; WX 278 ; N dotlessi ; B 2 -9 238 462 ; -C -1 ; WX 278 ; N lslash ; B -7 -9 307 699 ; -C 248 ; WX 500 ; N oslash ; B -3 -119 441 560 ; -C 156 ; WX 722 ; N oe ; B 6 -13 674 462 ; -C 223 ; WX 500 ; N germandbls ; B -200 -200 473 705 ; -C 207 ; WX 389 ; N Idieresis ; B -32 0 450 862 ; -C 233 ; WX 444 ; N eacute ; B 5 -13 435 697 ; -C -1 ; WX 500 ; N abreve ; B -21 -14 471 678 ; -C -1 ; WX 556 ; N uhungarumlaut ; B 15 -9 610 697 ; -C -1 ; WX 444 ; N ecaron ; B 5 -13 467 690 ; -C 159 ; WX 611 ; N Ydieresis ; B 73 0 659 862 ; -C 247 ; WX 570 ; N divide ; B 33 -29 537 535 ; -C 221 ; WX 611 ; N Yacute ; B 73 0 659 904 ; -C 194 ; WX 667 ; N Acircumflex ; B -67 0 593 897 ; -C 225 ; WX 500 ; N aacute ; B -21 -14 463 697 ; -C 219 ; WX 722 ; N Ucircumflex ; B 67 -18 744 897 ; -C 253 ; WX 444 ; N yacute ; B -94 -205 435 697 ; -C -1 ; WX 389 ; N scommaaccent ; B -19 -218 333 462 ; -C 234 ; WX 444 ; N ecircumflex ; B 5 -13 423 690 ; -C -1 ; WX 722 ; N Uring ; B 67 -18 744 921 ; -C 220 ; WX 722 ; N Udieresis ; B 67 -18 744 862 ; -C -1 ; WX 500 ; N aogonek ; B -21 -183 455 462 ; -C 218 ; WX 722 ; N Uacute ; B 67 -18 744 904 ; -C -1 ; WX 556 ; N uogonek ; B 15 -183 492 462 ; -C 203 ; WX 667 ; N Edieresis ; B -27 0 653 862 ; -C -1 ; WX 722 ; N Dcroat ; B -31 0 700 669 ; -C -1 ; WX 250 ; N commaaccent ; B -36 -218 131 -50 ; -C 169 ; WX 747 ; N copyright ; B 30 -18 718 685 ; -C -1 ; WX 667 ; N Emacron ; B -27 0 653 830 ; -C -1 ; WX 444 ; N ccaron ; B -5 -13 467 690 ; -C 229 ; WX 500 ; N aring ; B -21 -14 455 729 ; -C -1 ; WX 722 ; N Ncommaaccent ; B -27 -218 748 669 ; -C -1 ; WX 278 ; N lacute ; B 2 -9 392 904 ; -C 224 ; WX 500 ; N agrave ; B -21 -14 455 697 ; -C -1 ; WX 611 ; N Tcommaaccent ; B 50 -218 650 669 ; -C -1 ; WX 667 ; N Cacute ; B 32 -18 677 904 ; -C 227 ; WX 500 ; N atilde ; B -21 -14 491 655 ; -C -1 ; WX 667 ; N Edotaccent ; B -27 0 653 862 ; -C 154 ; WX 389 ; N scaron ; B -19 -13 424 690 ; -C -1 ; WX 389 ; N scedilla ; B -19 -218 333 462 ; -C 237 ; WX 278 ; N iacute ; B 2 -9 352 697 ; -C -1 ; WX 494 ; N lozenge ; B 10 0 484 745 ; -C -1 ; WX 667 ; N Rcaron ; B -29 0 623 897 ; -C -1 ; WX 722 ; N Gcommaaccent ; B 21 -218 706 685 ; -C 251 ; WX 556 ; N ucircumflex ; B 15 -9 492 690 ; -C 226 ; WX 500 ; N acircumflex ; B -21 -14 455 690 ; -C -1 ; WX 667 ; N Amacron ; B -67 0 593 830 ; -C -1 ; WX 389 ; N rcaron ; B -21 0 424 690 ; -C 231 ; WX 444 ; N ccedilla ; B -5 -218 392 462 ; -C -1 ; WX 611 ; N Zdotaccent ; B -11 0 590 862 ; -C 222 ; WX 611 ; N Thorn ; B -27 0 573 669 ; -C -1 ; WX 722 ; N Omacron ; B 27 -18 691 830 ; -C -1 ; WX 667 ; N Racute ; B -29 0 623 904 ; -C -1 ; WX 556 ; N Sacute ; B 2 -18 531 904 ; -C -1 ; WX 608 ; N dcaron ; B -21 -13 675 708 ; -C -1 ; WX 722 ; N Umacron ; B 67 -18 744 830 ; -C -1 ; WX 556 ; N uring ; B 15 -9 492 729 ; -C 179 ; WX 300 ; N threesuperior ; B 17 265 321 683 ; -C 210 ; WX 722 ; N Ograve ; B 27 -18 691 904 ; -C 192 ; WX 667 ; N Agrave ; B -67 0 593 904 ; -C -1 ; WX 667 ; N Abreve ; B -67 0 593 885 ; -C 215 ; WX 570 ; N multiply ; B 48 16 522 490 ; -C 250 ; WX 556 ; N uacute ; B 15 -9 492 697 ; -C -1 ; WX 611 ; N Tcaron ; B 50 0 650 897 ; -C -1 ; WX 494 ; N partialdiff ; B 11 -21 494 750 ; -C 255 ; WX 444 ; N ydieresis ; B -94 -205 443 655 ; -C -1 ; WX 722 ; N Nacute ; B -27 -15 748 904 ; -C 238 ; WX 278 ; N icircumflex ; B -3 -9 324 690 ; -C 202 ; WX 667 ; N Ecircumflex ; B -27 0 653 897 ; -C 228 ; WX 500 ; N adieresis ; B -21 -14 476 655 ; -C 235 ; WX 444 ; N edieresis ; B 5 -13 448 655 ; -C -1 ; WX 444 ; N cacute ; B -5 -13 435 697 ; -C -1 ; WX 556 ; N nacute ; B -6 -9 493 697 ; -C -1 ; WX 556 ; N umacron ; B 15 -9 492 623 ; -C -1 ; WX 722 ; N Ncaron ; B -27 -15 748 897 ; -C 205 ; WX 389 ; N Iacute ; B -32 0 432 904 ; -C 177 ; WX 570 ; N plusminus ; B 33 0 537 506 ; -C 166 ; WX 220 ; N brokenbar ; B 66 -143 154 707 ; -C 174 ; WX 747 ; N registered ; B 30 -18 718 685 ; -C -1 ; WX 722 ; N Gbreve ; B 21 -18 706 885 ; -C -1 ; WX 389 ; N Idotaccent ; B -32 0 406 862 ; -C -1 ; WX 600 ; N summation ; B 14 -10 585 706 ; -C 200 ; WX 667 ; N Egrave ; B -27 0 653 904 ; -C -1 ; WX 389 ; N racute ; B -21 0 407 697 ; -C -1 ; WX 500 ; N omacron ; B -3 -13 462 623 ; -C -1 ; WX 611 ; N Zacute ; B -11 0 590 904 ; -C 142 ; WX 611 ; N Zcaron ; B -11 0 590 897 ; -C -1 ; WX 549 ; N greaterequal ; B 26 0 523 704 ; -C 208 ; WX 722 ; N Eth ; B -31 0 700 669 ; -C 199 ; WX 667 ; N Ccedilla ; B 32 -218 677 685 ; -C -1 ; WX 278 ; N lcommaaccent ; B -42 -218 290 699 ; -C -1 ; WX 366 ; N tcaron ; B -11 -9 434 754 ; -C -1 ; WX 444 ; N eogonek ; B 5 -183 398 462 ; -C -1 ; WX 722 ; N Uogonek ; B 67 -183 744 669 ; -C 193 ; WX 667 ; N Aacute ; B -67 0 593 904 ; -C 196 ; WX 667 ; N Adieresis ; B -67 0 593 862 ; -C 232 ; WX 444 ; N egrave ; B 5 -13 398 697 ; -C -1 ; WX 389 ; N zacute ; B -43 -78 407 697 ; -C -1 ; WX 278 ; N iogonek ; B -20 -183 263 684 ; -C 211 ; WX 722 ; N Oacute ; B 27 -18 691 904 ; -C 243 ; WX 500 ; N oacute ; B -3 -13 463 697 ; -C -1 ; WX 500 ; N amacron ; B -21 -14 467 623 ; -C -1 ; WX 389 ; N sacute ; B -19 -13 407 697 ; -C 239 ; WX 278 ; N idieresis ; B 2 -9 364 655 ; -C 212 ; WX 722 ; N Ocircumflex ; B 27 -18 691 897 ; -C 217 ; WX 722 ; N Ugrave ; B 67 -18 744 904 ; -C -1 ; WX 612 ; N Delta ; B 6 0 608 688 ; -C 254 ; WX 500 ; N thorn ; B -120 -205 446 699 ; -C 178 ; WX 300 ; N twosuperior ; B 2 274 313 683 ; -C 214 ; WX 722 ; N Odieresis ; B 27 -18 691 862 ; -C 181 ; WX 576 ; N mu ; B -60 -207 516 449 ; -C 236 ; WX 278 ; N igrave ; B 2 -9 259 697 ; -C -1 ; WX 500 ; N ohungarumlaut ; B -3 -13 582 697 ; -C -1 ; WX 667 ; N Eogonek ; B -27 -183 653 669 ; -C -1 ; WX 500 ; N dcroat ; B -21 -13 552 699 ; -C 190 ; WX 750 ; N threequarters ; B 7 -14 726 683 ; -C -1 ; WX 556 ; N Scedilla ; B 2 -218 526 685 ; -C -1 ; WX 382 ; N lcaron ; B 2 -9 448 708 ; -C -1 ; WX 667 ; N Kcommaaccent ; B -21 -218 702 669 ; -C -1 ; WX 611 ; N Lacute ; B -22 0 590 904 ; -C 153 ; WX 1000 ; N trademark ; B 32 263 968 669 ; -C -1 ; WX 444 ; N edotaccent ; B 5 -13 398 655 ; -C 204 ; WX 389 ; N Igrave ; B -32 0 406 904 ; -C -1 ; WX 389 ; N Imacron ; B -32 0 461 830 ; -C -1 ; WX 611 ; N Lcaron ; B -22 0 671 718 ; -C 189 ; WX 750 ; N onehalf ; B -9 -14 723 683 ; -C -1 ; WX 549 ; N lessequal ; B 29 0 526 704 ; -C 244 ; WX 500 ; N ocircumflex ; B -3 -13 451 690 ; -C 241 ; WX 556 ; N ntilde ; B -6 -9 504 655 ; -C -1 ; WX 722 ; N Uhungarumlaut ; B 67 -18 744 904 ; -C 201 ; WX 667 ; N Eacute ; B -27 0 653 904 ; -C -1 ; WX 444 ; N emacron ; B 5 -13 439 623 ; -C -1 ; WX 500 ; N gbreve ; B -52 -203 478 678 ; -C 188 ; WX 750 ; N onequarter ; B 7 -14 721 683 ; -C 138 ; WX 556 ; N Scaron ; B 2 -18 553 897 ; -C -1 ; WX 556 ; N Scommaaccent ; B 2 -218 526 685 ; -C -1 ; WX 722 ; N Ohungarumlaut ; B 27 -18 723 904 ; -C 176 ; WX 400 ; N degree ; B 83 397 369 683 ; -C 242 ; WX 500 ; N ograve ; B -3 -13 441 697 ; -C -1 ; WX 667 ; N Ccaron ; B 32 -18 677 897 ; -C 249 ; WX 556 ; N ugrave ; B 15 -9 492 697 ; -C -1 ; WX 549 ; N radical ; B 10 -46 512 850 ; -C -1 ; WX 722 ; N Dcaron ; B -46 0 685 897 ; -C -1 ; WX 389 ; N rcommaaccent ; B -67 -218 389 462 ; -C 209 ; WX 722 ; N Ntilde ; B -27 -15 748 862 ; -C 245 ; WX 500 ; N otilde ; B -3 -13 491 655 ; -C -1 ; WX 667 ; N Rcommaaccent ; B -29 -218 623 669 ; -C -1 ; WX 611 ; N Lcommaaccent ; B -22 -218 590 669 ; -C 195 ; WX 667 ; N Atilde ; B -67 0 593 862 ; -C -1 ; WX 667 ; N Aogonek ; B -67 -183 604 683 ; -C 197 ; WX 667 ; N Aring ; B -67 0 593 921 ; -C 213 ; WX 722 ; N Otilde ; B 27 -18 691 862 ; -C -1 ; WX 389 ; N zdotaccent ; B -43 -78 368 655 ; -C -1 ; WX 667 ; N Ecaron ; B -27 0 653 897 ; -C -1 ; WX 389 ; N Iogonek ; B -32 -183 406 669 ; -C -1 ; WX 500 ; N kcommaaccent ; B -23 -218 483 699 ; -C -1 ; WX 606 ; N minus ; B 51 209 555 297 ; -C 206 ; WX 389 ; N Icircumflex ; B -32 0 450 897 ; -C -1 ; WX 556 ; N ncaron ; B -6 -9 523 690 ; -C -1 ; WX 278 ; N tcommaaccent ; B -62 -218 281 594 ; -C 172 ; WX 606 ; N logicalnot ; B 51 108 555 399 ; -C 246 ; WX 500 ; N odieresis ; B -3 -13 471 655 ; -C 252 ; WX 556 ; N udieresis ; B 15 -9 499 655 ; -C -1 ; WX 549 ; N notequal ; B 15 -49 540 570 ; -C -1 ; WX 500 ; N gcommaaccent ; B -52 -203 478 767 ; -C 240 ; WX 500 ; N eth ; B -3 -13 454 699 ; -C 158 ; WX 389 ; N zcaron ; B -43 -78 424 690 ; -C -1 ; WX 556 ; N ncommaaccent ; B -6 -218 493 462 ; -C 185 ; WX 300 ; N onesuperior ; B 30 274 301 683 ; -C -1 ; WX 278 ; N imacron ; B 2 -9 294 623 ; -C 128 ; WX 500 ; N Euro ; B 0 0 0 0 ; -EndCharMetrics -StartKernData -StartKernPairs 2038 -KPX A C -65 -KPX A Cacute -65 -KPX A Ccaron -65 -KPX A Ccedilla -65 -KPX A G -60 -KPX A Gbreve -60 -KPX A Gcommaaccent -60 -KPX A O -50 -KPX A Oacute -50 -KPX A Ocircumflex -50 -KPX A Odieresis -50 -KPX A Ograve -50 -KPX A Ohungarumlaut -50 -KPX A Omacron -50 -KPX A Oslash -50 -KPX A Otilde -50 -KPX A Q -55 -KPX A T -55 -KPX A Tcaron -55 -KPX A Tcommaaccent -55 -KPX A U -50 -KPX A Uacute -50 -KPX A Ucircumflex -50 -KPX A Udieresis -50 -KPX A Ugrave -50 -KPX A Uhungarumlaut -50 -KPX A Umacron -50 -KPX A Uogonek -50 -KPX A Uring -50 -KPX A V -95 -KPX A W -100 -KPX A Y -70 -KPX A Yacute -70 -KPX A Ydieresis -70 -KPX A quoteright -74 -KPX A u -30 -KPX A uacute -30 -KPX A ucircumflex -30 -KPX A udieresis -30 -KPX A ugrave -30 -KPX A uhungarumlaut -30 -KPX A umacron -30 -KPX A uogonek -30 -KPX A uring -30 -KPX A v -74 -KPX A w -74 -KPX A y -74 -KPX A yacute -74 -KPX A ydieresis -74 -KPX Aacute C -65 -KPX Aacute Cacute -65 -KPX Aacute Ccaron -65 -KPX Aacute Ccedilla -65 -KPX Aacute G -60 -KPX Aacute Gbreve -60 -KPX Aacute Gcommaaccent -60 -KPX Aacute O -50 -KPX Aacute Oacute -50 -KPX Aacute Ocircumflex -50 -KPX Aacute Odieresis -50 -KPX Aacute Ograve -50 -KPX Aacute Ohungarumlaut -50 -KPX Aacute Omacron -50 -KPX Aacute Oslash -50 -KPX Aacute Otilde -50 -KPX Aacute Q -55 -KPX Aacute T -55 -KPX Aacute Tcaron -55 -KPX Aacute Tcommaaccent -55 -KPX Aacute U -50 -KPX Aacute Uacute -50 -KPX Aacute Ucircumflex -50 -KPX Aacute Udieresis -50 -KPX Aacute Ugrave -50 -KPX Aacute Uhungarumlaut -50 -KPX Aacute Umacron -50 -KPX Aacute Uogonek -50 -KPX Aacute Uring -50 -KPX Aacute V -95 -KPX Aacute W -100 -KPX Aacute Y -70 -KPX Aacute Yacute -70 -KPX Aacute Ydieresis -70 -KPX Aacute quoteright -74 -KPX Aacute u -30 -KPX Aacute uacute -30 -KPX Aacute ucircumflex -30 -KPX Aacute udieresis -30 -KPX Aacute ugrave -30 -KPX Aacute uhungarumlaut -30 -KPX Aacute umacron -30 -KPX Aacute uogonek -30 -KPX Aacute uring -30 -KPX Aacute v -74 -KPX Aacute w -74 -KPX Aacute y -74 -KPX Aacute yacute -74 -KPX Aacute ydieresis -74 -KPX Abreve C -65 -KPX Abreve Cacute -65 -KPX Abreve Ccaron -65 -KPX Abreve Ccedilla -65 -KPX Abreve G -60 -KPX Abreve Gbreve -60 -KPX Abreve Gcommaaccent -60 -KPX Abreve O -50 -KPX Abreve Oacute -50 -KPX Abreve Ocircumflex -50 -KPX Abreve Odieresis -50 -KPX Abreve Ograve -50 -KPX Abreve Ohungarumlaut -50 -KPX Abreve Omacron -50 -KPX Abreve Oslash -50 -KPX Abreve Otilde -50 -KPX Abreve Q -55 -KPX Abreve T -55 -KPX Abreve Tcaron -55 -KPX Abreve Tcommaaccent -55 -KPX Abreve U -50 -KPX Abreve Uacute -50 -KPX Abreve Ucircumflex -50 -KPX Abreve Udieresis -50 -KPX Abreve Ugrave -50 -KPX Abreve Uhungarumlaut -50 -KPX Abreve Umacron -50 -KPX Abreve Uogonek -50 -KPX Abreve Uring -50 -KPX Abreve V -95 -KPX Abreve W -100 -KPX Abreve Y -70 -KPX Abreve Yacute -70 -KPX Abreve Ydieresis -70 -KPX Abreve quoteright -74 -KPX Abreve u -30 -KPX Abreve uacute -30 -KPX Abreve ucircumflex -30 -KPX Abreve udieresis -30 -KPX Abreve ugrave -30 -KPX Abreve uhungarumlaut -30 -KPX Abreve umacron -30 -KPX Abreve uogonek -30 -KPX Abreve uring -30 -KPX Abreve v -74 -KPX Abreve w -74 -KPX Abreve y -74 -KPX Abreve yacute -74 -KPX Abreve ydieresis -74 -KPX Acircumflex C -65 -KPX Acircumflex Cacute -65 -KPX Acircumflex Ccaron -65 -KPX Acircumflex Ccedilla -65 -KPX Acircumflex G -60 -KPX Acircumflex Gbreve -60 -KPX Acircumflex Gcommaaccent -60 -KPX Acircumflex O -50 -KPX Acircumflex Oacute -50 -KPX Acircumflex Ocircumflex -50 -KPX Acircumflex Odieresis -50 -KPX Acircumflex Ograve -50 -KPX Acircumflex Ohungarumlaut -50 -KPX Acircumflex Omacron -50 -KPX Acircumflex Oslash -50 -KPX Acircumflex Otilde -50 -KPX Acircumflex Q -55 -KPX Acircumflex T -55 -KPX Acircumflex Tcaron -55 -KPX Acircumflex Tcommaaccent -55 -KPX Acircumflex U -50 -KPX Acircumflex Uacute -50 -KPX Acircumflex Ucircumflex -50 -KPX Acircumflex Udieresis -50 -KPX Acircumflex Ugrave -50 -KPX Acircumflex Uhungarumlaut -50 -KPX Acircumflex Umacron -50 -KPX Acircumflex Uogonek -50 -KPX Acircumflex Uring -50 -KPX Acircumflex V -95 -KPX Acircumflex W -100 -KPX Acircumflex Y -70 -KPX Acircumflex Yacute -70 -KPX Acircumflex Ydieresis -70 -KPX Acircumflex quoteright -74 -KPX Acircumflex u -30 -KPX Acircumflex uacute -30 -KPX Acircumflex ucircumflex -30 -KPX Acircumflex udieresis -30 -KPX Acircumflex ugrave -30 -KPX Acircumflex uhungarumlaut -30 -KPX Acircumflex umacron -30 -KPX Acircumflex uogonek -30 -KPX Acircumflex uring -30 -KPX Acircumflex v -74 -KPX Acircumflex w -74 -KPX Acircumflex y -74 -KPX Acircumflex yacute -74 -KPX Acircumflex ydieresis -74 -KPX Adieresis C -65 -KPX Adieresis Cacute -65 -KPX Adieresis Ccaron -65 -KPX Adieresis Ccedilla -65 -KPX Adieresis G -60 -KPX Adieresis Gbreve -60 -KPX Adieresis Gcommaaccent -60 -KPX Adieresis O -50 -KPX Adieresis Oacute -50 -KPX Adieresis Ocircumflex -50 -KPX Adieresis Odieresis -50 -KPX Adieresis Ograve -50 -KPX Adieresis Ohungarumlaut -50 -KPX Adieresis Omacron -50 -KPX Adieresis Oslash -50 -KPX Adieresis Otilde -50 -KPX Adieresis Q -55 -KPX Adieresis T -55 -KPX Adieresis Tcaron -55 -KPX Adieresis Tcommaaccent -55 -KPX Adieresis U -50 -KPX Adieresis Uacute -50 -KPX Adieresis Ucircumflex -50 -KPX Adieresis Udieresis -50 -KPX Adieresis Ugrave -50 -KPX Adieresis Uhungarumlaut -50 -KPX Adieresis Umacron -50 -KPX Adieresis Uogonek -50 -KPX Adieresis Uring -50 -KPX Adieresis V -95 -KPX Adieresis W -100 -KPX Adieresis Y -70 -KPX Adieresis Yacute -70 -KPX Adieresis Ydieresis -70 -KPX Adieresis quoteright -74 -KPX Adieresis u -30 -KPX Adieresis uacute -30 -KPX Adieresis ucircumflex -30 -KPX Adieresis udieresis -30 -KPX Adieresis ugrave -30 -KPX Adieresis uhungarumlaut -30 -KPX Adieresis umacron -30 -KPX Adieresis uogonek -30 -KPX Adieresis uring -30 -KPX Adieresis v -74 -KPX Adieresis w -74 -KPX Adieresis y -74 -KPX Adieresis yacute -74 -KPX Adieresis ydieresis -74 -KPX Agrave C -65 -KPX Agrave Cacute -65 -KPX Agrave Ccaron -65 -KPX Agrave Ccedilla -65 -KPX Agrave G -60 -KPX Agrave Gbreve -60 -KPX Agrave Gcommaaccent -60 -KPX Agrave O -50 -KPX Agrave Oacute -50 -KPX Agrave Ocircumflex -50 -KPX Agrave Odieresis -50 -KPX Agrave Ograve -50 -KPX Agrave Ohungarumlaut -50 -KPX Agrave Omacron -50 -KPX Agrave Oslash -50 -KPX Agrave Otilde -50 -KPX Agrave Q -55 -KPX Agrave T -55 -KPX Agrave Tcaron -55 -KPX Agrave Tcommaaccent -55 -KPX Agrave U -50 -KPX Agrave Uacute -50 -KPX Agrave Ucircumflex -50 -KPX Agrave Udieresis -50 -KPX Agrave Ugrave -50 -KPX Agrave Uhungarumlaut -50 -KPX Agrave Umacron -50 -KPX Agrave Uogonek -50 -KPX Agrave Uring -50 -KPX Agrave V -95 -KPX Agrave W -100 -KPX Agrave Y -70 -KPX Agrave Yacute -70 -KPX Agrave Ydieresis -70 -KPX Agrave quoteright -74 -KPX Agrave u -30 -KPX Agrave uacute -30 -KPX Agrave ucircumflex -30 -KPX Agrave udieresis -30 -KPX Agrave ugrave -30 -KPX Agrave uhungarumlaut -30 -KPX Agrave umacron -30 -KPX Agrave uogonek -30 -KPX Agrave uring -30 -KPX Agrave v -74 -KPX Agrave w -74 -KPX Agrave y -74 -KPX Agrave yacute -74 -KPX Agrave ydieresis -74 -KPX Amacron C -65 -KPX Amacron Cacute -65 -KPX Amacron Ccaron -65 -KPX Amacron Ccedilla -65 -KPX Amacron G -60 -KPX Amacron Gbreve -60 -KPX Amacron Gcommaaccent -60 -KPX Amacron O -50 -KPX Amacron Oacute -50 -KPX Amacron Ocircumflex -50 -KPX Amacron Odieresis -50 -KPX Amacron Ograve -50 -KPX Amacron Ohungarumlaut -50 -KPX Amacron Omacron -50 -KPX Amacron Oslash -50 -KPX Amacron Otilde -50 -KPX Amacron Q -55 -KPX Amacron T -55 -KPX Amacron Tcaron -55 -KPX Amacron Tcommaaccent -55 -KPX Amacron U -50 -KPX Amacron Uacute -50 -KPX Amacron Ucircumflex -50 -KPX Amacron Udieresis -50 -KPX Amacron Ugrave -50 -KPX Amacron Uhungarumlaut -50 -KPX Amacron Umacron -50 -KPX Amacron Uogonek -50 -KPX Amacron Uring -50 -KPX Amacron V -95 -KPX Amacron W -100 -KPX Amacron Y -70 -KPX Amacron Yacute -70 -KPX Amacron Ydieresis -70 -KPX Amacron quoteright -74 -KPX Amacron u -30 -KPX Amacron uacute -30 -KPX Amacron ucircumflex -30 -KPX Amacron udieresis -30 -KPX Amacron ugrave -30 -KPX Amacron uhungarumlaut -30 -KPX Amacron umacron -30 -KPX Amacron uogonek -30 -KPX Amacron uring -30 -KPX Amacron v -74 -KPX Amacron w -74 -KPX Amacron y -74 -KPX Amacron yacute -74 -KPX Amacron ydieresis -74 -KPX Aogonek C -65 -KPX Aogonek Cacute -65 -KPX Aogonek Ccaron -65 -KPX Aogonek Ccedilla -65 -KPX Aogonek G -60 -KPX Aogonek Gbreve -60 -KPX Aogonek Gcommaaccent -60 -KPX Aogonek O -50 -KPX Aogonek Oacute -50 -KPX Aogonek Ocircumflex -50 -KPX Aogonek Odieresis -50 -KPX Aogonek Ograve -50 -KPX Aogonek Ohungarumlaut -50 -KPX Aogonek Omacron -50 -KPX Aogonek Oslash -50 -KPX Aogonek Otilde -50 -KPX Aogonek Q -55 -KPX Aogonek T -55 -KPX Aogonek Tcaron -55 -KPX Aogonek Tcommaaccent -55 -KPX Aogonek U -50 -KPX Aogonek Uacute -50 -KPX Aogonek Ucircumflex -50 -KPX Aogonek Udieresis -50 -KPX Aogonek Ugrave -50 -KPX Aogonek Uhungarumlaut -50 -KPX Aogonek Umacron -50 -KPX Aogonek Uogonek -50 -KPX Aogonek Uring -50 -KPX Aogonek V -95 -KPX Aogonek W -100 -KPX Aogonek Y -70 -KPX Aogonek Yacute -70 -KPX Aogonek Ydieresis -70 -KPX Aogonek quoteright -74 -KPX Aogonek u -30 -KPX Aogonek uacute -30 -KPX Aogonek ucircumflex -30 -KPX Aogonek udieresis -30 -KPX Aogonek ugrave -30 -KPX Aogonek uhungarumlaut -30 -KPX Aogonek umacron -30 -KPX Aogonek uogonek -30 -KPX Aogonek uring -30 -KPX Aogonek v -74 -KPX Aogonek w -74 -KPX Aogonek y -34 -KPX Aogonek yacute -34 -KPX Aogonek ydieresis -34 -KPX Aring C -65 -KPX Aring Cacute -65 -KPX Aring Ccaron -65 -KPX Aring Ccedilla -65 -KPX Aring G -60 -KPX Aring Gbreve -60 -KPX Aring Gcommaaccent -60 -KPX Aring O -50 -KPX Aring Oacute -50 -KPX Aring Ocircumflex -50 -KPX Aring Odieresis -50 -KPX Aring Ograve -50 -KPX Aring Ohungarumlaut -50 -KPX Aring Omacron -50 -KPX Aring Oslash -50 -KPX Aring Otilde -50 -KPX Aring Q -55 -KPX Aring T -55 -KPX Aring Tcaron -55 -KPX Aring Tcommaaccent -55 -KPX Aring U -50 -KPX Aring Uacute -50 -KPX Aring Ucircumflex -50 -KPX Aring Udieresis -50 -KPX Aring Ugrave -50 -KPX Aring Uhungarumlaut -50 -KPX Aring Umacron -50 -KPX Aring Uogonek -50 -KPX Aring Uring -50 -KPX Aring V -95 -KPX Aring W -100 -KPX Aring Y -70 -KPX Aring Yacute -70 -KPX Aring Ydieresis -70 -KPX Aring quoteright -74 -KPX Aring u -30 -KPX Aring uacute -30 -KPX Aring ucircumflex -30 -KPX Aring udieresis -30 -KPX Aring ugrave -30 -KPX Aring uhungarumlaut -30 -KPX Aring umacron -30 -KPX Aring uogonek -30 -KPX Aring uring -30 -KPX Aring v -74 -KPX Aring w -74 -KPX Aring y -74 -KPX Aring yacute -74 -KPX Aring ydieresis -74 -KPX Atilde C -65 -KPX Atilde Cacute -65 -KPX Atilde Ccaron -65 -KPX Atilde Ccedilla -65 -KPX Atilde G -60 -KPX Atilde Gbreve -60 -KPX Atilde Gcommaaccent -60 -KPX Atilde O -50 -KPX Atilde Oacute -50 -KPX Atilde Ocircumflex -50 -KPX Atilde Odieresis -50 -KPX Atilde Ograve -50 -KPX Atilde Ohungarumlaut -50 -KPX Atilde Omacron -50 -KPX Atilde Oslash -50 -KPX Atilde Otilde -50 -KPX Atilde Q -55 -KPX Atilde T -55 -KPX Atilde Tcaron -55 -KPX Atilde Tcommaaccent -55 -KPX Atilde U -50 -KPX Atilde Uacute -50 -KPX Atilde Ucircumflex -50 -KPX Atilde Udieresis -50 -KPX Atilde Ugrave -50 -KPX Atilde Uhungarumlaut -50 -KPX Atilde Umacron -50 -KPX Atilde Uogonek -50 -KPX Atilde Uring -50 -KPX Atilde V -95 -KPX Atilde W -100 -KPX Atilde Y -70 -KPX Atilde Yacute -70 -KPX Atilde Ydieresis -70 -KPX Atilde quoteright -74 -KPX Atilde u -30 -KPX Atilde uacute -30 -KPX Atilde ucircumflex -30 -KPX Atilde udieresis -30 -KPX Atilde ugrave -30 -KPX Atilde uhungarumlaut -30 -KPX Atilde umacron -30 -KPX Atilde uogonek -30 -KPX Atilde uring -30 -KPX Atilde v -74 -KPX Atilde w -74 -KPX Atilde y -74 -KPX Atilde yacute -74 -KPX Atilde ydieresis -74 -KPX B A -25 -KPX B Aacute -25 -KPX B Abreve -25 -KPX B Acircumflex -25 -KPX B Adieresis -25 -KPX B Agrave -25 -KPX B Amacron -25 -KPX B Aogonek -25 -KPX B Aring -25 -KPX B Atilde -25 -KPX B U -10 -KPX B Uacute -10 -KPX B Ucircumflex -10 -KPX B Udieresis -10 -KPX B Ugrave -10 -KPX B Uhungarumlaut -10 -KPX B Umacron -10 -KPX B Uogonek -10 -KPX B Uring -10 -KPX D A -25 -KPX D Aacute -25 -KPX D Abreve -25 -KPX D Acircumflex -25 -KPX D Adieresis -25 -KPX D Agrave -25 -KPX D Amacron -25 -KPX D Aogonek -25 -KPX D Aring -25 -KPX D Atilde -25 -KPX D V -50 -KPX D W -40 -KPX D Y -50 -KPX D Yacute -50 -KPX D Ydieresis -50 -KPX Dcaron A -25 -KPX Dcaron Aacute -25 -KPX Dcaron Abreve -25 -KPX Dcaron Acircumflex -25 -KPX Dcaron Adieresis -25 -KPX Dcaron Agrave -25 -KPX Dcaron Amacron -25 -KPX Dcaron Aogonek -25 -KPX Dcaron Aring -25 -KPX Dcaron Atilde -25 -KPX Dcaron V -50 -KPX Dcaron W -40 -KPX Dcaron Y -50 -KPX Dcaron Yacute -50 -KPX Dcaron Ydieresis -50 -KPX Dcroat A -25 -KPX Dcroat Aacute -25 -KPX Dcroat Abreve -25 -KPX Dcroat Acircumflex -25 -KPX Dcroat Adieresis -25 -KPX Dcroat Agrave -25 -KPX Dcroat Amacron -25 -KPX Dcroat Aogonek -25 -KPX Dcroat Aring -25 -KPX Dcroat Atilde -25 -KPX Dcroat V -50 -KPX Dcroat W -40 -KPX Dcroat Y -50 -KPX Dcroat Yacute -50 -KPX Dcroat Ydieresis -50 -KPX F A -100 -KPX F Aacute -100 -KPX F Abreve -100 -KPX F Acircumflex -100 -KPX F Adieresis -100 -KPX F Agrave -100 -KPX F Amacron -100 -KPX F Aogonek -100 -KPX F Aring -100 -KPX F Atilde -100 -KPX F a -95 -KPX F aacute -95 -KPX F abreve -95 -KPX F acircumflex -95 -KPX F adieresis -95 -KPX F agrave -95 -KPX F amacron -95 -KPX F aogonek -95 -KPX F aring -95 -KPX F atilde -95 -KPX F comma -129 -KPX F e -100 -KPX F eacute -100 -KPX F ecaron -100 -KPX F ecircumflex -100 -KPX F edieresis -100 -KPX F edotaccent -100 -KPX F egrave -100 -KPX F emacron -100 -KPX F eogonek -100 -KPX F i -40 -KPX F iacute -40 -KPX F icircumflex -40 -KPX F idieresis -40 -KPX F igrave -40 -KPX F imacron -40 -KPX F iogonek -40 -KPX F o -70 -KPX F oacute -70 -KPX F ocircumflex -70 -KPX F odieresis -70 -KPX F ograve -70 -KPX F ohungarumlaut -70 -KPX F omacron -70 -KPX F oslash -70 -KPX F otilde -70 -KPX F period -129 -KPX F r -50 -KPX F racute -50 -KPX F rcaron -50 -KPX F rcommaaccent -50 -KPX J A -25 -KPX J Aacute -25 -KPX J Abreve -25 -KPX J Acircumflex -25 -KPX J Adieresis -25 -KPX J Agrave -25 -KPX J Amacron -25 -KPX J Aogonek -25 -KPX J Aring -25 -KPX J Atilde -25 -KPX J a -40 -KPX J aacute -40 -KPX J abreve -40 -KPX J acircumflex -40 -KPX J adieresis -40 -KPX J agrave -40 -KPX J amacron -40 -KPX J aogonek -40 -KPX J aring -40 -KPX J atilde -40 -KPX J comma -10 -KPX J e -40 -KPX J eacute -40 -KPX J ecaron -40 -KPX J ecircumflex -40 -KPX J edieresis -40 -KPX J edotaccent -40 -KPX J egrave -40 -KPX J emacron -40 -KPX J eogonek -40 -KPX J o -40 -KPX J oacute -40 -KPX J ocircumflex -40 -KPX J odieresis -40 -KPX J ograve -40 -KPX J ohungarumlaut -40 -KPX J omacron -40 -KPX J oslash -40 -KPX J otilde -40 -KPX J period -10 -KPX J u -40 -KPX J uacute -40 -KPX J ucircumflex -40 -KPX J udieresis -40 -KPX J ugrave -40 -KPX J uhungarumlaut -40 -KPX J umacron -40 -KPX J uogonek -40 -KPX J uring -40 -KPX K O -30 -KPX K Oacute -30 -KPX K Ocircumflex -30 -KPX K Odieresis -30 -KPX K Ograve -30 -KPX K Ohungarumlaut -30 -KPX K Omacron -30 -KPX K Oslash -30 -KPX K Otilde -30 -KPX K e -25 -KPX K eacute -25 -KPX K ecaron -25 -KPX K ecircumflex -25 -KPX K edieresis -25 -KPX K edotaccent -25 -KPX K egrave -25 -KPX K emacron -25 -KPX K eogonek -25 -KPX K o -25 -KPX K oacute -25 -KPX K ocircumflex -25 -KPX K odieresis -25 -KPX K ograve -25 -KPX K ohungarumlaut -25 -KPX K omacron -25 -KPX K oslash -25 -KPX K otilde -25 -KPX K u -20 -KPX K uacute -20 -KPX K ucircumflex -20 -KPX K udieresis -20 -KPX K ugrave -20 -KPX K uhungarumlaut -20 -KPX K umacron -20 -KPX K uogonek -20 -KPX K uring -20 -KPX K y -20 -KPX K yacute -20 -KPX K ydieresis -20 -KPX Kcommaaccent O -30 -KPX Kcommaaccent Oacute -30 -KPX Kcommaaccent Ocircumflex -30 -KPX Kcommaaccent Odieresis -30 -KPX Kcommaaccent Ograve -30 -KPX Kcommaaccent Ohungarumlaut -30 -KPX Kcommaaccent Omacron -30 -KPX Kcommaaccent Oslash -30 -KPX Kcommaaccent Otilde -30 -KPX Kcommaaccent e -25 -KPX Kcommaaccent eacute -25 -KPX Kcommaaccent ecaron -25 -KPX Kcommaaccent ecircumflex -25 -KPX Kcommaaccent edieresis -25 -KPX Kcommaaccent edotaccent -25 -KPX Kcommaaccent egrave -25 -KPX Kcommaaccent emacron -25 -KPX Kcommaaccent eogonek -25 -KPX Kcommaaccent o -25 -KPX Kcommaaccent oacute -25 -KPX Kcommaaccent ocircumflex -25 -KPX Kcommaaccent odieresis -25 -KPX Kcommaaccent ograve -25 -KPX Kcommaaccent ohungarumlaut -25 -KPX Kcommaaccent omacron -25 -KPX Kcommaaccent oslash -25 -KPX Kcommaaccent otilde -25 -KPX Kcommaaccent u -20 -KPX Kcommaaccent uacute -20 -KPX Kcommaaccent ucircumflex -20 -KPX Kcommaaccent udieresis -20 -KPX Kcommaaccent ugrave -20 -KPX Kcommaaccent uhungarumlaut -20 -KPX Kcommaaccent umacron -20 -KPX Kcommaaccent uogonek -20 -KPX Kcommaaccent uring -20 -KPX Kcommaaccent y -20 -KPX Kcommaaccent yacute -20 -KPX Kcommaaccent ydieresis -20 -KPX L T -18 -KPX L Tcaron -18 -KPX L Tcommaaccent -18 -KPX L V -37 -KPX L W -37 -KPX L Y -37 -KPX L Yacute -37 -KPX L Ydieresis -37 -KPX L quoteright -55 -KPX L y -37 -KPX L yacute -37 -KPX L ydieresis -37 -KPX Lacute T -18 -KPX Lacute Tcaron -18 -KPX Lacute Tcommaaccent -18 -KPX Lacute V -37 -KPX Lacute W -37 -KPX Lacute Y -37 -KPX Lacute Yacute -37 -KPX Lacute Ydieresis -37 -KPX Lacute quoteright -55 -KPX Lacute y -37 -KPX Lacute yacute -37 -KPX Lacute ydieresis -37 -KPX Lcommaaccent T -18 -KPX Lcommaaccent Tcaron -18 -KPX Lcommaaccent Tcommaaccent -18 -KPX Lcommaaccent V -37 -KPX Lcommaaccent W -37 -KPX Lcommaaccent Y -37 -KPX Lcommaaccent Yacute -37 -KPX Lcommaaccent Ydieresis -37 -KPX Lcommaaccent quoteright -55 -KPX Lcommaaccent y -37 -KPX Lcommaaccent yacute -37 -KPX Lcommaaccent ydieresis -37 -KPX Lslash T -18 -KPX Lslash Tcaron -18 -KPX Lslash Tcommaaccent -18 -KPX Lslash V -37 -KPX Lslash W -37 -KPX Lslash Y -37 -KPX Lslash Yacute -37 -KPX Lslash Ydieresis -37 -KPX Lslash quoteright -55 -KPX Lslash y -37 -KPX Lslash yacute -37 -KPX Lslash ydieresis -37 -KPX N A -30 -KPX N Aacute -30 -KPX N Abreve -30 -KPX N Acircumflex -30 -KPX N Adieresis -30 -KPX N Agrave -30 -KPX N Amacron -30 -KPX N Aogonek -30 -KPX N Aring -30 -KPX N Atilde -30 -KPX Nacute A -30 -KPX Nacute Aacute -30 -KPX Nacute Abreve -30 -KPX Nacute Acircumflex -30 -KPX Nacute Adieresis -30 -KPX Nacute Agrave -30 -KPX Nacute Amacron -30 -KPX Nacute Aogonek -30 -KPX Nacute Aring -30 -KPX Nacute Atilde -30 -KPX Ncaron A -30 -KPX Ncaron Aacute -30 -KPX Ncaron Abreve -30 -KPX Ncaron Acircumflex -30 -KPX Ncaron Adieresis -30 -KPX Ncaron Agrave -30 -KPX Ncaron Amacron -30 -KPX Ncaron Aogonek -30 -KPX Ncaron Aring -30 -KPX Ncaron Atilde -30 -KPX Ncommaaccent A -30 -KPX Ncommaaccent Aacute -30 -KPX Ncommaaccent Abreve -30 -KPX Ncommaaccent Acircumflex -30 -KPX Ncommaaccent Adieresis -30 -KPX Ncommaaccent Agrave -30 -KPX Ncommaaccent Amacron -30 -KPX Ncommaaccent Aogonek -30 -KPX Ncommaaccent Aring -30 -KPX Ncommaaccent Atilde -30 -KPX Ntilde A -30 -KPX Ntilde Aacute -30 -KPX Ntilde Abreve -30 -KPX Ntilde Acircumflex -30 -KPX Ntilde Adieresis -30 -KPX Ntilde Agrave -30 -KPX Ntilde Amacron -30 -KPX Ntilde Aogonek -30 -KPX Ntilde Aring -30 -KPX Ntilde Atilde -30 -KPX O A -40 -KPX O Aacute -40 -KPX O Abreve -40 -KPX O Acircumflex -40 -KPX O Adieresis -40 -KPX O Agrave -40 -KPX O Amacron -40 -KPX O Aogonek -40 -KPX O Aring -40 -KPX O Atilde -40 -KPX O T -40 -KPX O Tcaron -40 -KPX O Tcommaaccent -40 -KPX O V -50 -KPX O W -50 -KPX O X -40 -KPX O Y -50 -KPX O Yacute -50 -KPX O Ydieresis -50 -KPX Oacute A -40 -KPX Oacute Aacute -40 -KPX Oacute Abreve -40 -KPX Oacute Acircumflex -40 -KPX Oacute Adieresis -40 -KPX Oacute Agrave -40 -KPX Oacute Amacron -40 -KPX Oacute Aogonek -40 -KPX Oacute Aring -40 -KPX Oacute Atilde -40 -KPX Oacute T -40 -KPX Oacute Tcaron -40 -KPX Oacute Tcommaaccent -40 -KPX Oacute V -50 -KPX Oacute W -50 -KPX Oacute X -40 -KPX Oacute Y -50 -KPX Oacute Yacute -50 -KPX Oacute Ydieresis -50 -KPX Ocircumflex A -40 -KPX Ocircumflex Aacute -40 -KPX Ocircumflex Abreve -40 -KPX Ocircumflex Acircumflex -40 -KPX Ocircumflex Adieresis -40 -KPX Ocircumflex Agrave -40 -KPX Ocircumflex Amacron -40 -KPX Ocircumflex Aogonek -40 -KPX Ocircumflex Aring -40 -KPX Ocircumflex Atilde -40 -KPX Ocircumflex T -40 -KPX Ocircumflex Tcaron -40 -KPX Ocircumflex Tcommaaccent -40 -KPX Ocircumflex V -50 -KPX Ocircumflex W -50 -KPX Ocircumflex X -40 -KPX Ocircumflex Y -50 -KPX Ocircumflex Yacute -50 -KPX Ocircumflex Ydieresis -50 -KPX Odieresis A -40 -KPX Odieresis Aacute -40 -KPX Odieresis Abreve -40 -KPX Odieresis Acircumflex -40 -KPX Odieresis Adieresis -40 -KPX Odieresis Agrave -40 -KPX Odieresis Amacron -40 -KPX Odieresis Aogonek -40 -KPX Odieresis Aring -40 -KPX Odieresis Atilde -40 -KPX Odieresis T -40 -KPX Odieresis Tcaron -40 -KPX Odieresis Tcommaaccent -40 -KPX Odieresis V -50 -KPX Odieresis W -50 -KPX Odieresis X -40 -KPX Odieresis Y -50 -KPX Odieresis Yacute -50 -KPX Odieresis Ydieresis -50 -KPX Ograve A -40 -KPX Ograve Aacute -40 -KPX Ograve Abreve -40 -KPX Ograve Acircumflex -40 -KPX Ograve Adieresis -40 -KPX Ograve Agrave -40 -KPX Ograve Amacron -40 -KPX Ograve Aogonek -40 -KPX Ograve Aring -40 -KPX Ograve Atilde -40 -KPX Ograve T -40 -KPX Ograve Tcaron -40 -KPX Ograve Tcommaaccent -40 -KPX Ograve V -50 -KPX Ograve W -50 -KPX Ograve X -40 -KPX Ograve Y -50 -KPX Ograve Yacute -50 -KPX Ograve Ydieresis -50 -KPX Ohungarumlaut A -40 -KPX Ohungarumlaut Aacute -40 -KPX Ohungarumlaut Abreve -40 -KPX Ohungarumlaut Acircumflex -40 -KPX Ohungarumlaut Adieresis -40 -KPX Ohungarumlaut Agrave -40 -KPX Ohungarumlaut Amacron -40 -KPX Ohungarumlaut Aogonek -40 -KPX Ohungarumlaut Aring -40 -KPX Ohungarumlaut Atilde -40 -KPX Ohungarumlaut T -40 -KPX Ohungarumlaut Tcaron -40 -KPX Ohungarumlaut Tcommaaccent -40 -KPX Ohungarumlaut V -50 -KPX Ohungarumlaut W -50 -KPX Ohungarumlaut X -40 -KPX Ohungarumlaut Y -50 -KPX Ohungarumlaut Yacute -50 -KPX Ohungarumlaut Ydieresis -50 -KPX Omacron A -40 -KPX Omacron Aacute -40 -KPX Omacron Abreve -40 -KPX Omacron Acircumflex -40 -KPX Omacron Adieresis -40 -KPX Omacron Agrave -40 -KPX Omacron Amacron -40 -KPX Omacron Aogonek -40 -KPX Omacron Aring -40 -KPX Omacron Atilde -40 -KPX Omacron T -40 -KPX Omacron Tcaron -40 -KPX Omacron Tcommaaccent -40 -KPX Omacron V -50 -KPX Omacron W -50 -KPX Omacron X -40 -KPX Omacron Y -50 -KPX Omacron Yacute -50 -KPX Omacron Ydieresis -50 -KPX Oslash A -40 -KPX Oslash Aacute -40 -KPX Oslash Abreve -40 -KPX Oslash Acircumflex -40 -KPX Oslash Adieresis -40 -KPX Oslash Agrave -40 -KPX Oslash Amacron -40 -KPX Oslash Aogonek -40 -KPX Oslash Aring -40 -KPX Oslash Atilde -40 -KPX Oslash T -40 -KPX Oslash Tcaron -40 -KPX Oslash Tcommaaccent -40 -KPX Oslash V -50 -KPX Oslash W -50 -KPX Oslash X -40 -KPX Oslash Y -50 -KPX Oslash Yacute -50 -KPX Oslash Ydieresis -50 -KPX Otilde A -40 -KPX Otilde Aacute -40 -KPX Otilde Abreve -40 -KPX Otilde Acircumflex -40 -KPX Otilde Adieresis -40 -KPX Otilde Agrave -40 -KPX Otilde Amacron -40 -KPX Otilde Aogonek -40 -KPX Otilde Aring -40 -KPX Otilde Atilde -40 -KPX Otilde T -40 -KPX Otilde Tcaron -40 -KPX Otilde Tcommaaccent -40 -KPX Otilde V -50 -KPX Otilde W -50 -KPX Otilde X -40 -KPX Otilde Y -50 -KPX Otilde Yacute -50 -KPX Otilde Ydieresis -50 -KPX P A -85 -KPX P Aacute -85 -KPX P Abreve -85 -KPX P Acircumflex -85 -KPX P Adieresis -85 -KPX P Agrave -85 -KPX P Amacron -85 -KPX P Aogonek -85 -KPX P Aring -85 -KPX P Atilde -85 -KPX P a -40 -KPX P aacute -40 -KPX P abreve -40 -KPX P acircumflex -40 -KPX P adieresis -40 -KPX P agrave -40 -KPX P amacron -40 -KPX P aogonek -40 -KPX P aring -40 -KPX P atilde -40 -KPX P comma -129 -KPX P e -50 -KPX P eacute -50 -KPX P ecaron -50 -KPX P ecircumflex -50 -KPX P edieresis -50 -KPX P edotaccent -50 -KPX P egrave -50 -KPX P emacron -50 -KPX P eogonek -50 -KPX P o -55 -KPX P oacute -55 -KPX P ocircumflex -55 -KPX P odieresis -55 -KPX P ograve -55 -KPX P ohungarumlaut -55 -KPX P omacron -55 -KPX P oslash -55 -KPX P otilde -55 -KPX P period -129 -KPX Q U -10 -KPX Q Uacute -10 -KPX Q Ucircumflex -10 -KPX Q Udieresis -10 -KPX Q Ugrave -10 -KPX Q Uhungarumlaut -10 -KPX Q Umacron -10 -KPX Q Uogonek -10 -KPX Q Uring -10 -KPX R O -40 -KPX R Oacute -40 -KPX R Ocircumflex -40 -KPX R Odieresis -40 -KPX R Ograve -40 -KPX R Ohungarumlaut -40 -KPX R Omacron -40 -KPX R Oslash -40 -KPX R Otilde -40 -KPX R T -30 -KPX R Tcaron -30 -KPX R Tcommaaccent -30 -KPX R U -40 -KPX R Uacute -40 -KPX R Ucircumflex -40 -KPX R Udieresis -40 -KPX R Ugrave -40 -KPX R Uhungarumlaut -40 -KPX R Umacron -40 -KPX R Uogonek -40 -KPX R Uring -40 -KPX R V -18 -KPX R W -18 -KPX R Y -18 -KPX R Yacute -18 -KPX R Ydieresis -18 -KPX Racute O -40 -KPX Racute Oacute -40 -KPX Racute Ocircumflex -40 -KPX Racute Odieresis -40 -KPX Racute Ograve -40 -KPX Racute Ohungarumlaut -40 -KPX Racute Omacron -40 -KPX Racute Oslash -40 -KPX Racute Otilde -40 -KPX Racute T -30 -KPX Racute Tcaron -30 -KPX Racute Tcommaaccent -30 -KPX Racute U -40 -KPX Racute Uacute -40 -KPX Racute Ucircumflex -40 -KPX Racute Udieresis -40 -KPX Racute Ugrave -40 -KPX Racute Uhungarumlaut -40 -KPX Racute Umacron -40 -KPX Racute Uogonek -40 -KPX Racute Uring -40 -KPX Racute V -18 -KPX Racute W -18 -KPX Racute Y -18 -KPX Racute Yacute -18 -KPX Racute Ydieresis -18 -KPX Rcaron O -40 -KPX Rcaron Oacute -40 -KPX Rcaron Ocircumflex -40 -KPX Rcaron Odieresis -40 -KPX Rcaron Ograve -40 -KPX Rcaron Ohungarumlaut -40 -KPX Rcaron Omacron -40 -KPX Rcaron Oslash -40 -KPX Rcaron Otilde -40 -KPX Rcaron T -30 -KPX Rcaron Tcaron -30 -KPX Rcaron Tcommaaccent -30 -KPX Rcaron U -40 -KPX Rcaron Uacute -40 -KPX Rcaron Ucircumflex -40 -KPX Rcaron Udieresis -40 -KPX Rcaron Ugrave -40 -KPX Rcaron Uhungarumlaut -40 -KPX Rcaron Umacron -40 -KPX Rcaron Uogonek -40 -KPX Rcaron Uring -40 -KPX Rcaron V -18 -KPX Rcaron W -18 -KPX Rcaron Y -18 -KPX Rcaron Yacute -18 -KPX Rcaron Ydieresis -18 -KPX Rcommaaccent O -40 -KPX Rcommaaccent Oacute -40 -KPX Rcommaaccent Ocircumflex -40 -KPX Rcommaaccent Odieresis -40 -KPX Rcommaaccent Ograve -40 -KPX Rcommaaccent Ohungarumlaut -40 -KPX Rcommaaccent Omacron -40 -KPX Rcommaaccent Oslash -40 -KPX Rcommaaccent Otilde -40 -KPX Rcommaaccent T -30 -KPX Rcommaaccent Tcaron -30 -KPX Rcommaaccent Tcommaaccent -30 -KPX Rcommaaccent U -40 -KPX Rcommaaccent Uacute -40 -KPX Rcommaaccent Ucircumflex -40 -KPX Rcommaaccent Udieresis -40 -KPX Rcommaaccent Ugrave -40 -KPX Rcommaaccent Uhungarumlaut -40 -KPX Rcommaaccent Umacron -40 -KPX Rcommaaccent Uogonek -40 -KPX Rcommaaccent Uring -40 -KPX Rcommaaccent V -18 -KPX Rcommaaccent W -18 -KPX Rcommaaccent Y -18 -KPX Rcommaaccent Yacute -18 -KPX Rcommaaccent Ydieresis -18 -KPX T A -55 -KPX T Aacute -55 -KPX T Abreve -55 -KPX T Acircumflex -55 -KPX T Adieresis -55 -KPX T Agrave -55 -KPX T Amacron -55 -KPX T Aogonek -55 -KPX T Aring -55 -KPX T Atilde -55 -KPX T O -18 -KPX T Oacute -18 -KPX T Ocircumflex -18 -KPX T Odieresis -18 -KPX T Ograve -18 -KPX T Ohungarumlaut -18 -KPX T Omacron -18 -KPX T Oslash -18 -KPX T Otilde -18 -KPX T a -92 -KPX T aacute -92 -KPX T abreve -92 -KPX T acircumflex -92 -KPX T adieresis -92 -KPX T agrave -92 -KPX T amacron -92 -KPX T aogonek -92 -KPX T aring -92 -KPX T atilde -92 -KPX T colon -74 -KPX T comma -92 -KPX T e -92 -KPX T eacute -92 -KPX T ecaron -92 -KPX T ecircumflex -92 -KPX T edieresis -52 -KPX T edotaccent -92 -KPX T egrave -52 -KPX T emacron -52 -KPX T eogonek -92 -KPX T hyphen -92 -KPX T i -37 -KPX T iacute -37 -KPX T iogonek -37 -KPX T o -95 -KPX T oacute -95 -KPX T ocircumflex -95 -KPX T odieresis -95 -KPX T ograve -95 -KPX T ohungarumlaut -95 -KPX T omacron -95 -KPX T oslash -95 -KPX T otilde -95 -KPX T period -92 -KPX T r -37 -KPX T racute -37 -KPX T rcaron -37 -KPX T rcommaaccent -37 -KPX T semicolon -74 -KPX T u -37 -KPX T uacute -37 -KPX T ucircumflex -37 -KPX T udieresis -37 -KPX T ugrave -37 -KPX T uhungarumlaut -37 -KPX T umacron -37 -KPX T uogonek -37 -KPX T uring -37 -KPX T w -37 -KPX T y -37 -KPX T yacute -37 -KPX T ydieresis -37 -KPX Tcaron A -55 -KPX Tcaron Aacute -55 -KPX Tcaron Abreve -55 -KPX Tcaron Acircumflex -55 -KPX Tcaron Adieresis -55 -KPX Tcaron Agrave -55 -KPX Tcaron Amacron -55 -KPX Tcaron Aogonek -55 -KPX Tcaron Aring -55 -KPX Tcaron Atilde -55 -KPX Tcaron O -18 -KPX Tcaron Oacute -18 -KPX Tcaron Ocircumflex -18 -KPX Tcaron Odieresis -18 -KPX Tcaron Ograve -18 -KPX Tcaron Ohungarumlaut -18 -KPX Tcaron Omacron -18 -KPX Tcaron Oslash -18 -KPX Tcaron Otilde -18 -KPX Tcaron a -92 -KPX Tcaron aacute -92 -KPX Tcaron abreve -92 -KPX Tcaron acircumflex -92 -KPX Tcaron adieresis -92 -KPX Tcaron agrave -92 -KPX Tcaron amacron -92 -KPX Tcaron aogonek -92 -KPX Tcaron aring -92 -KPX Tcaron atilde -92 -KPX Tcaron colon -74 -KPX Tcaron comma -92 -KPX Tcaron e -92 -KPX Tcaron eacute -92 -KPX Tcaron ecaron -92 -KPX Tcaron ecircumflex -92 -KPX Tcaron edieresis -52 -KPX Tcaron edotaccent -92 -KPX Tcaron egrave -52 -KPX Tcaron emacron -52 -KPX Tcaron eogonek -92 -KPX Tcaron hyphen -92 -KPX Tcaron i -37 -KPX Tcaron iacute -37 -KPX Tcaron iogonek -37 -KPX Tcaron o -95 -KPX Tcaron oacute -95 -KPX Tcaron ocircumflex -95 -KPX Tcaron odieresis -95 -KPX Tcaron ograve -95 -KPX Tcaron ohungarumlaut -95 -KPX Tcaron omacron -95 -KPX Tcaron oslash -95 -KPX Tcaron otilde -95 -KPX Tcaron period -92 -KPX Tcaron r -37 -KPX Tcaron racute -37 -KPX Tcaron rcaron -37 -KPX Tcaron rcommaaccent -37 -KPX Tcaron semicolon -74 -KPX Tcaron u -37 -KPX Tcaron uacute -37 -KPX Tcaron ucircumflex -37 -KPX Tcaron udieresis -37 -KPX Tcaron ugrave -37 -KPX Tcaron uhungarumlaut -37 -KPX Tcaron umacron -37 -KPX Tcaron uogonek -37 -KPX Tcaron uring -37 -KPX Tcaron w -37 -KPX Tcaron y -37 -KPX Tcaron yacute -37 -KPX Tcaron ydieresis -37 -KPX Tcommaaccent A -55 -KPX Tcommaaccent Aacute -55 -KPX Tcommaaccent Abreve -55 -KPX Tcommaaccent Acircumflex -55 -KPX Tcommaaccent Adieresis -55 -KPX Tcommaaccent Agrave -55 -KPX Tcommaaccent Amacron -55 -KPX Tcommaaccent Aogonek -55 -KPX Tcommaaccent Aring -55 -KPX Tcommaaccent Atilde -55 -KPX Tcommaaccent O -18 -KPX Tcommaaccent Oacute -18 -KPX Tcommaaccent Ocircumflex -18 -KPX Tcommaaccent Odieresis -18 -KPX Tcommaaccent Ograve -18 -KPX Tcommaaccent Ohungarumlaut -18 -KPX Tcommaaccent Omacron -18 -KPX Tcommaaccent Oslash -18 -KPX Tcommaaccent Otilde -18 -KPX Tcommaaccent a -92 -KPX Tcommaaccent aacute -92 -KPX Tcommaaccent abreve -92 -KPX Tcommaaccent acircumflex -92 -KPX Tcommaaccent adieresis -92 -KPX Tcommaaccent agrave -92 -KPX Tcommaaccent amacron -92 -KPX Tcommaaccent aogonek -92 -KPX Tcommaaccent aring -92 -KPX Tcommaaccent atilde -92 -KPX Tcommaaccent colon -74 -KPX Tcommaaccent comma -92 -KPX Tcommaaccent e -92 -KPX Tcommaaccent eacute -92 -KPX Tcommaaccent ecaron -92 -KPX Tcommaaccent ecircumflex -92 -KPX Tcommaaccent edieresis -52 -KPX Tcommaaccent edotaccent -92 -KPX Tcommaaccent egrave -52 -KPX Tcommaaccent emacron -52 -KPX Tcommaaccent eogonek -92 -KPX Tcommaaccent hyphen -92 -KPX Tcommaaccent i -37 -KPX Tcommaaccent iacute -37 -KPX Tcommaaccent iogonek -37 -KPX Tcommaaccent o -95 -KPX Tcommaaccent oacute -95 -KPX Tcommaaccent ocircumflex -95 -KPX Tcommaaccent odieresis -95 -KPX Tcommaaccent ograve -95 -KPX Tcommaaccent ohungarumlaut -95 -KPX Tcommaaccent omacron -95 -KPX Tcommaaccent oslash -95 -KPX Tcommaaccent otilde -95 -KPX Tcommaaccent period -92 -KPX Tcommaaccent r -37 -KPX Tcommaaccent racute -37 -KPX Tcommaaccent rcaron -37 -KPX Tcommaaccent rcommaaccent -37 -KPX Tcommaaccent semicolon -74 -KPX Tcommaaccent u -37 -KPX Tcommaaccent uacute -37 -KPX Tcommaaccent ucircumflex -37 -KPX Tcommaaccent udieresis -37 -KPX Tcommaaccent ugrave -37 -KPX Tcommaaccent uhungarumlaut -37 -KPX Tcommaaccent umacron -37 -KPX Tcommaaccent uogonek -37 -KPX Tcommaaccent uring -37 -KPX Tcommaaccent w -37 -KPX Tcommaaccent y -37 -KPX Tcommaaccent yacute -37 -KPX Tcommaaccent ydieresis -37 -KPX U A -45 -KPX U Aacute -45 -KPX U Abreve -45 -KPX U Acircumflex -45 -KPX U Adieresis -45 -KPX U Agrave -45 -KPX U Amacron -45 -KPX U Aogonek -45 -KPX U Aring -45 -KPX U Atilde -45 -KPX Uacute A -45 -KPX Uacute Aacute -45 -KPX Uacute Abreve -45 -KPX Uacute Acircumflex -45 -KPX Uacute Adieresis -45 -KPX Uacute Agrave -45 -KPX Uacute Amacron -45 -KPX Uacute Aogonek -45 -KPX Uacute Aring -45 -KPX Uacute Atilde -45 -KPX Ucircumflex A -45 -KPX Ucircumflex Aacute -45 -KPX Ucircumflex Abreve -45 -KPX Ucircumflex Acircumflex -45 -KPX Ucircumflex Adieresis -45 -KPX Ucircumflex Agrave -45 -KPX Ucircumflex Amacron -45 -KPX Ucircumflex Aogonek -45 -KPX Ucircumflex Aring -45 -KPX Ucircumflex Atilde -45 -KPX Udieresis A -45 -KPX Udieresis Aacute -45 -KPX Udieresis Abreve -45 -KPX Udieresis Acircumflex -45 -KPX Udieresis Adieresis -45 -KPX Udieresis Agrave -45 -KPX Udieresis Amacron -45 -KPX Udieresis Aogonek -45 -KPX Udieresis Aring -45 -KPX Udieresis Atilde -45 -KPX Ugrave A -45 -KPX Ugrave Aacute -45 -KPX Ugrave Abreve -45 -KPX Ugrave Acircumflex -45 -KPX Ugrave Adieresis -45 -KPX Ugrave Agrave -45 -KPX Ugrave Amacron -45 -KPX Ugrave Aogonek -45 -KPX Ugrave Aring -45 -KPX Ugrave Atilde -45 -KPX Uhungarumlaut A -45 -KPX Uhungarumlaut Aacute -45 -KPX Uhungarumlaut Abreve -45 -KPX Uhungarumlaut Acircumflex -45 -KPX Uhungarumlaut Adieresis -45 -KPX Uhungarumlaut Agrave -45 -KPX Uhungarumlaut Amacron -45 -KPX Uhungarumlaut Aogonek -45 -KPX Uhungarumlaut Aring -45 -KPX Uhungarumlaut Atilde -45 -KPX Umacron A -45 -KPX Umacron Aacute -45 -KPX Umacron Abreve -45 -KPX Umacron Acircumflex -45 -KPX Umacron Adieresis -45 -KPX Umacron Agrave -45 -KPX Umacron Amacron -45 -KPX Umacron Aogonek -45 -KPX Umacron Aring -45 -KPX Umacron Atilde -45 -KPX Uogonek A -45 -KPX Uogonek Aacute -45 -KPX Uogonek Abreve -45 -KPX Uogonek Acircumflex -45 -KPX Uogonek Adieresis -45 -KPX Uogonek Agrave -45 -KPX Uogonek Amacron -45 -KPX Uogonek Aogonek -45 -KPX Uogonek Aring -45 -KPX Uogonek Atilde -45 -KPX Uring A -45 -KPX Uring Aacute -45 -KPX Uring Abreve -45 -KPX Uring Acircumflex -45 -KPX Uring Adieresis -45 -KPX Uring Agrave -45 -KPX Uring Amacron -45 -KPX Uring Aogonek -45 -KPX Uring Aring -45 -KPX Uring Atilde -45 -KPX V A -85 -KPX V Aacute -85 -KPX V Abreve -85 -KPX V Acircumflex -85 -KPX V Adieresis -85 -KPX V Agrave -85 -KPX V Amacron -85 -KPX V Aogonek -85 -KPX V Aring -85 -KPX V Atilde -85 -KPX V G -10 -KPX V Gbreve -10 -KPX V Gcommaaccent -10 -KPX V O -30 -KPX V Oacute -30 -KPX V Ocircumflex -30 -KPX V Odieresis -30 -KPX V Ograve -30 -KPX V Ohungarumlaut -30 -KPX V Omacron -30 -KPX V Oslash -30 -KPX V Otilde -30 -KPX V a -111 -KPX V aacute -111 -KPX V abreve -111 -KPX V acircumflex -111 -KPX V adieresis -111 -KPX V agrave -111 -KPX V amacron -111 -KPX V aogonek -111 -KPX V aring -111 -KPX V atilde -111 -KPX V colon -74 -KPX V comma -129 -KPX V e -111 -KPX V eacute -111 -KPX V ecaron -111 -KPX V ecircumflex -111 -KPX V edieresis -71 -KPX V edotaccent -111 -KPX V egrave -71 -KPX V emacron -71 -KPX V eogonek -111 -KPX V hyphen -70 -KPX V i -55 -KPX V iacute -55 -KPX V iogonek -55 -KPX V o -111 -KPX V oacute -111 -KPX V ocircumflex -111 -KPX V odieresis -111 -KPX V ograve -111 -KPX V ohungarumlaut -111 -KPX V omacron -111 -KPX V oslash -111 -KPX V otilde -111 -KPX V period -129 -KPX V semicolon -74 -KPX V u -55 -KPX V uacute -55 -KPX V ucircumflex -55 -KPX V udieresis -55 -KPX V ugrave -55 -KPX V uhungarumlaut -55 -KPX V umacron -55 -KPX V uogonek -55 -KPX V uring -55 -KPX W A -74 -KPX W Aacute -74 -KPX W Abreve -74 -KPX W Acircumflex -74 -KPX W Adieresis -74 -KPX W Agrave -74 -KPX W Amacron -74 -KPX W Aogonek -74 -KPX W Aring -74 -KPX W Atilde -74 -KPX W O -15 -KPX W Oacute -15 -KPX W Ocircumflex -15 -KPX W Odieresis -15 -KPX W Ograve -15 -KPX W Ohungarumlaut -15 -KPX W Omacron -15 -KPX W Oslash -15 -KPX W Otilde -15 -KPX W a -85 -KPX W aacute -85 -KPX W abreve -85 -KPX W acircumflex -85 -KPX W adieresis -85 -KPX W agrave -85 -KPX W amacron -85 -KPX W aogonek -85 -KPX W aring -85 -KPX W atilde -85 -KPX W colon -55 -KPX W comma -74 -KPX W e -90 -KPX W eacute -90 -KPX W ecaron -90 -KPX W ecircumflex -90 -KPX W edieresis -50 -KPX W edotaccent -90 -KPX W egrave -50 -KPX W emacron -50 -KPX W eogonek -90 -KPX W hyphen -50 -KPX W i -37 -KPX W iacute -37 -KPX W iogonek -37 -KPX W o -80 -KPX W oacute -80 -KPX W ocircumflex -80 -KPX W odieresis -80 -KPX W ograve -80 -KPX W ohungarumlaut -80 -KPX W omacron -80 -KPX W oslash -80 -KPX W otilde -80 -KPX W period -74 -KPX W semicolon -55 -KPX W u -55 -KPX W uacute -55 -KPX W ucircumflex -55 -KPX W udieresis -55 -KPX W ugrave -55 -KPX W uhungarumlaut -55 -KPX W umacron -55 -KPX W uogonek -55 -KPX W uring -55 -KPX W y -55 -KPX W yacute -55 -KPX W ydieresis -55 -KPX Y A -74 -KPX Y Aacute -74 -KPX Y Abreve -74 -KPX Y Acircumflex -74 -KPX Y Adieresis -74 -KPX Y Agrave -74 -KPX Y Amacron -74 -KPX Y Aogonek -74 -KPX Y Aring -74 -KPX Y Atilde -74 -KPX Y O -25 -KPX Y Oacute -25 -KPX Y Ocircumflex -25 -KPX Y Odieresis -25 -KPX Y Ograve -25 -KPX Y Ohungarumlaut -25 -KPX Y Omacron -25 -KPX Y Oslash -25 -KPX Y Otilde -25 -KPX Y a -92 -KPX Y aacute -92 -KPX Y abreve -92 -KPX Y acircumflex -92 -KPX Y adieresis -92 -KPX Y agrave -92 -KPX Y amacron -92 -KPX Y aogonek -92 -KPX Y aring -92 -KPX Y atilde -92 -KPX Y colon -92 -KPX Y comma -92 -KPX Y e -111 -KPX Y eacute -111 -KPX Y ecaron -111 -KPX Y ecircumflex -71 -KPX Y edieresis -71 -KPX Y edotaccent -111 -KPX Y egrave -71 -KPX Y emacron -71 -KPX Y eogonek -111 -KPX Y hyphen -92 -KPX Y i -55 -KPX Y iacute -55 -KPX Y iogonek -55 -KPX Y o -111 -KPX Y oacute -111 -KPX Y ocircumflex -111 -KPX Y odieresis -111 -KPX Y ograve -111 -KPX Y ohungarumlaut -111 -KPX Y omacron -111 -KPX Y oslash -111 -KPX Y otilde -111 -KPX Y period -74 -KPX Y semicolon -92 -KPX Y u -92 -KPX Y uacute -92 -KPX Y ucircumflex -92 -KPX Y udieresis -92 -KPX Y ugrave -92 -KPX Y uhungarumlaut -92 -KPX Y umacron -92 -KPX Y uogonek -92 -KPX Y uring -92 -KPX Yacute A -74 -KPX Yacute Aacute -74 -KPX Yacute Abreve -74 -KPX Yacute Acircumflex -74 -KPX Yacute Adieresis -74 -KPX Yacute Agrave -74 -KPX Yacute Amacron -74 -KPX Yacute Aogonek -74 -KPX Yacute Aring -74 -KPX Yacute Atilde -74 -KPX Yacute O -25 -KPX Yacute Oacute -25 -KPX Yacute Ocircumflex -25 -KPX Yacute Odieresis -25 -KPX Yacute Ograve -25 -KPX Yacute Ohungarumlaut -25 -KPX Yacute Omacron -25 -KPX Yacute Oslash -25 -KPX Yacute Otilde -25 -KPX Yacute a -92 -KPX Yacute aacute -92 -KPX Yacute abreve -92 -KPX Yacute acircumflex -92 -KPX Yacute adieresis -92 -KPX Yacute agrave -92 -KPX Yacute amacron -92 -KPX Yacute aogonek -92 -KPX Yacute aring -92 -KPX Yacute atilde -92 -KPX Yacute colon -92 -KPX Yacute comma -92 -KPX Yacute e -111 -KPX Yacute eacute -111 -KPX Yacute ecaron -111 -KPX Yacute ecircumflex -71 -KPX Yacute edieresis -71 -KPX Yacute edotaccent -111 -KPX Yacute egrave -71 -KPX Yacute emacron -71 -KPX Yacute eogonek -111 -KPX Yacute hyphen -92 -KPX Yacute i -55 -KPX Yacute iacute -55 -KPX Yacute iogonek -55 -KPX Yacute o -111 -KPX Yacute oacute -111 -KPX Yacute ocircumflex -111 -KPX Yacute odieresis -111 -KPX Yacute ograve -111 -KPX Yacute ohungarumlaut -111 -KPX Yacute omacron -111 -KPX Yacute oslash -111 -KPX Yacute otilde -111 -KPX Yacute period -74 -KPX Yacute semicolon -92 -KPX Yacute u -92 -KPX Yacute uacute -92 -KPX Yacute ucircumflex -92 -KPX Yacute udieresis -92 -KPX Yacute ugrave -92 -KPX Yacute uhungarumlaut -92 -KPX Yacute umacron -92 -KPX Yacute uogonek -92 -KPX Yacute uring -92 -KPX Ydieresis A -74 -KPX Ydieresis Aacute -74 -KPX Ydieresis Abreve -74 -KPX Ydieresis Acircumflex -74 -KPX Ydieresis Adieresis -74 -KPX Ydieresis Agrave -74 -KPX Ydieresis Amacron -74 -KPX Ydieresis Aogonek -74 -KPX Ydieresis Aring -74 -KPX Ydieresis Atilde -74 -KPX Ydieresis O -25 -KPX Ydieresis Oacute -25 -KPX Ydieresis Ocircumflex -25 -KPX Ydieresis Odieresis -25 -KPX Ydieresis Ograve -25 -KPX Ydieresis Ohungarumlaut -25 -KPX Ydieresis Omacron -25 -KPX Ydieresis Oslash -25 -KPX Ydieresis Otilde -25 -KPX Ydieresis a -92 -KPX Ydieresis aacute -92 -KPX Ydieresis abreve -92 -KPX Ydieresis acircumflex -92 -KPX Ydieresis adieresis -92 -KPX Ydieresis agrave -92 -KPX Ydieresis amacron -92 -KPX Ydieresis aogonek -92 -KPX Ydieresis aring -92 -KPX Ydieresis atilde -92 -KPX Ydieresis colon -92 -KPX Ydieresis comma -92 -KPX Ydieresis e -111 -KPX Ydieresis eacute -111 -KPX Ydieresis ecaron -111 -KPX Ydieresis ecircumflex -71 -KPX Ydieresis edieresis -71 -KPX Ydieresis edotaccent -111 -KPX Ydieresis egrave -71 -KPX Ydieresis emacron -71 -KPX Ydieresis eogonek -111 -KPX Ydieresis hyphen -92 -KPX Ydieresis i -55 -KPX Ydieresis iacute -55 -KPX Ydieresis iogonek -55 -KPX Ydieresis o -111 -KPX Ydieresis oacute -111 -KPX Ydieresis ocircumflex -111 -KPX Ydieresis odieresis -111 -KPX Ydieresis ograve -111 -KPX Ydieresis ohungarumlaut -111 -KPX Ydieresis omacron -111 -KPX Ydieresis oslash -111 -KPX Ydieresis otilde -111 -KPX Ydieresis period -74 -KPX Ydieresis semicolon -92 -KPX Ydieresis u -92 -KPX Ydieresis uacute -92 -KPX Ydieresis ucircumflex -92 -KPX Ydieresis udieresis -92 -KPX Ydieresis ugrave -92 -KPX Ydieresis uhungarumlaut -92 -KPX Ydieresis umacron -92 -KPX Ydieresis uogonek -92 -KPX Ydieresis uring -92 -KPX b b -10 -KPX b period -40 -KPX b u -20 -KPX b uacute -20 -KPX b ucircumflex -20 -KPX b udieresis -20 -KPX b ugrave -20 -KPX b uhungarumlaut -20 -KPX b umacron -20 -KPX b uogonek -20 -KPX b uring -20 -KPX c h -10 -KPX c k -10 -KPX c kcommaaccent -10 -KPX cacute h -10 -KPX cacute k -10 -KPX cacute kcommaaccent -10 -KPX ccaron h -10 -KPX ccaron k -10 -KPX ccaron kcommaaccent -10 -KPX ccedilla h -10 -KPX ccedilla k -10 -KPX ccedilla kcommaaccent -10 -KPX comma quotedblright -95 -KPX comma quoteright -95 -KPX e b -10 -KPX eacute b -10 -KPX ecaron b -10 -KPX ecircumflex b -10 -KPX edieresis b -10 -KPX edotaccent b -10 -KPX egrave b -10 -KPX emacron b -10 -KPX eogonek b -10 -KPX f comma -10 -KPX f dotlessi -30 -KPX f e -10 -KPX f eacute -10 -KPX f edotaccent -10 -KPX f eogonek -10 -KPX f f -18 -KPX f o -10 -KPX f oacute -10 -KPX f ocircumflex -10 -KPX f ograve -10 -KPX f ohungarumlaut -10 -KPX f oslash -10 -KPX f otilde -10 -KPX f period -10 -KPX f quoteright 55 -KPX k e -30 -KPX k eacute -30 -KPX k ecaron -30 -KPX k ecircumflex -30 -KPX k edieresis -30 -KPX k edotaccent -30 -KPX k egrave -30 -KPX k emacron -30 -KPX k eogonek -30 -KPX k o -10 -KPX k oacute -10 -KPX k ocircumflex -10 -KPX k odieresis -10 -KPX k ograve -10 -KPX k ohungarumlaut -10 -KPX k omacron -10 -KPX k oslash -10 -KPX k otilde -10 -KPX kcommaaccent e -30 -KPX kcommaaccent eacute -30 -KPX kcommaaccent ecaron -30 -KPX kcommaaccent ecircumflex -30 -KPX kcommaaccent edieresis -30 -KPX kcommaaccent edotaccent -30 -KPX kcommaaccent egrave -30 -KPX kcommaaccent emacron -30 -KPX kcommaaccent eogonek -30 -KPX kcommaaccent o -10 -KPX kcommaaccent oacute -10 -KPX kcommaaccent ocircumflex -10 -KPX kcommaaccent odieresis -10 -KPX kcommaaccent ograve -10 -KPX kcommaaccent ohungarumlaut -10 -KPX kcommaaccent omacron -10 -KPX kcommaaccent oslash -10 -KPX kcommaaccent otilde -10 -KPX n v -40 -KPX nacute v -40 -KPX ncaron v -40 -KPX ncommaaccent v -40 -KPX ntilde v -40 -KPX o v -15 -KPX o w -25 -KPX o x -10 -KPX o y -10 -KPX o yacute -10 -KPX o ydieresis -10 -KPX oacute v -15 -KPX oacute w -25 -KPX oacute x -10 -KPX oacute y -10 -KPX oacute yacute -10 -KPX oacute ydieresis -10 -KPX ocircumflex v -15 -KPX ocircumflex w -25 -KPX ocircumflex x -10 -KPX ocircumflex y -10 -KPX ocircumflex yacute -10 -KPX ocircumflex ydieresis -10 -KPX odieresis v -15 -KPX odieresis w -25 -KPX odieresis x -10 -KPX odieresis y -10 -KPX odieresis yacute -10 -KPX odieresis ydieresis -10 -KPX ograve v -15 -KPX ograve w -25 -KPX ograve x -10 -KPX ograve y -10 -KPX ograve yacute -10 -KPX ograve ydieresis -10 -KPX ohungarumlaut v -15 -KPX ohungarumlaut w -25 -KPX ohungarumlaut x -10 -KPX ohungarumlaut y -10 -KPX ohungarumlaut yacute -10 -KPX ohungarumlaut ydieresis -10 -KPX omacron v -15 -KPX omacron w -25 -KPX omacron x -10 -KPX omacron y -10 -KPX omacron yacute -10 -KPX omacron ydieresis -10 -KPX oslash v -15 -KPX oslash w -25 -KPX oslash x -10 -KPX oslash y -10 -KPX oslash yacute -10 -KPX oslash ydieresis -10 -KPX otilde v -15 -KPX otilde w -25 -KPX otilde x -10 -KPX otilde y -10 -KPX otilde yacute -10 -KPX otilde ydieresis -10 -KPX period quotedblright -95 -KPX period quoteright -95 -KPX quoteleft quoteleft -74 -KPX quoteright d -15 -KPX quoteright dcroat -15 -KPX quoteright quoteright -74 -KPX quoteright r -15 -KPX quoteright racute -15 -KPX quoteright rcaron -15 -KPX quoteright rcommaaccent -15 -KPX quoteright s -74 -KPX quoteright sacute -74 -KPX quoteright scaron -74 -KPX quoteright scedilla -74 -KPX quoteright scommaaccent -74 -KPX quoteright space -74 -KPX quoteright t -37 -KPX quoteright tcommaaccent -37 -KPX quoteright v -15 -KPX r comma -65 -KPX r period -65 -KPX racute comma -65 -KPX racute period -65 -KPX rcaron comma -65 -KPX rcaron period -65 -KPX rcommaaccent comma -65 -KPX rcommaaccent period -65 -KPX space A -37 -KPX space Aacute -37 -KPX space Abreve -37 -KPX space Acircumflex -37 -KPX space Adieresis -37 -KPX space Agrave -37 -KPX space Amacron -37 -KPX space Aogonek -37 -KPX space Aring -37 -KPX space Atilde -37 -KPX space V -70 -KPX space W -70 -KPX space Y -70 -KPX space Yacute -70 -KPX space Ydieresis -70 -KPX v comma -37 -KPX v e -15 -KPX v eacute -15 -KPX v ecaron -15 -KPX v ecircumflex -15 -KPX v edieresis -15 -KPX v edotaccent -15 -KPX v egrave -15 -KPX v emacron -15 -KPX v eogonek -15 -KPX v o -15 -KPX v oacute -15 -KPX v ocircumflex -15 -KPX v odieresis -15 -KPX v ograve -15 -KPX v ohungarumlaut -15 -KPX v omacron -15 -KPX v oslash -15 -KPX v otilde -15 -KPX v period -37 -KPX w a -10 -KPX w aacute -10 -KPX w abreve -10 -KPX w acircumflex -10 -KPX w adieresis -10 -KPX w agrave -10 -KPX w amacron -10 -KPX w aogonek -10 -KPX w aring -10 -KPX w atilde -10 -KPX w comma -37 -KPX w e -10 -KPX w eacute -10 -KPX w ecaron -10 -KPX w ecircumflex -10 -KPX w edieresis -10 -KPX w edotaccent -10 -KPX w egrave -10 -KPX w emacron -10 -KPX w eogonek -10 -KPX w o -15 -KPX w oacute -15 -KPX w ocircumflex -15 -KPX w odieresis -15 -KPX w ograve -15 -KPX w ohungarumlaut -15 -KPX w omacron -15 -KPX w oslash -15 -KPX w otilde -15 -KPX w period -37 -KPX x e -10 -KPX x eacute -10 -KPX x ecaron -10 -KPX x ecircumflex -10 -KPX x edieresis -10 -KPX x edotaccent -10 -KPX x egrave -10 -KPX x emacron -10 -KPX x eogonek -10 -KPX y comma -37 -KPX y period -37 -KPX yacute comma -37 -KPX yacute period -37 -KPX ydieresis comma -37 -KPX ydieresis period -37 -EndKernPairs -EndKernData -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Times-Italic.afm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Times-Italic.afm deleted file mode 100644 index 3d3fd8d0..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Times-Italic.afm +++ /dev/null @@ -1,2669 +0,0 @@ -StartFontMetrics 4.1 -Comment Copyright (c) 1985, 1987, 1989, 1990, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved. -Comment Creation Date: Thu May 1 12:56:55 1997 -Comment UniqueID 43067 -Comment VMusage 47727 58752 -FontName Times-Italic -FullName Times Italic -FamilyName Times -Weight Medium -ItalicAngle -15.5 -IsFixedPitch false -CharacterSet ExtendedRoman -FontBBox -169 -217 1010 883 -UnderlinePosition -100 -UnderlineThickness 50 -Version 002.000 -Notice Copyright (c) 1985, 1987, 1989, 1990, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved.Times is a trademark of Linotype-Hell AG and/or its subsidiaries. -EncodingScheme WinAnsiEncoding -CapHeight 653 -XHeight 441 -Ascender 683 -Descender -217 -StdHW 32 -StdVW 76 -StartCharMetrics 317 -C 32 ; WX 250 ; N space ; B 0 0 0 0 ; -C 160 ; WX 250 ; N space ; B 0 0 0 0 ; -C 33 ; WX 333 ; N exclam ; B 39 -11 302 667 ; -C 34 ; WX 420 ; N quotedbl ; B 144 421 432 666 ; -C 35 ; WX 500 ; N numbersign ; B 2 0 540 676 ; -C 36 ; WX 500 ; N dollar ; B 31 -89 497 731 ; -C 37 ; WX 833 ; N percent ; B 79 -13 790 676 ; -C 38 ; WX 778 ; N ampersand ; B 76 -18 723 666 ; -C 146 ; WX 333 ; N quoteright ; B 151 436 290 666 ; -C 40 ; WX 333 ; N parenleft ; B 42 -181 315 669 ; -C 41 ; WX 333 ; N parenright ; B 16 -180 289 669 ; -C 42 ; WX 500 ; N asterisk ; B 128 255 492 666 ; -C 43 ; WX 675 ; N plus ; B 86 0 590 506 ; -C 44 ; WX 250 ; N comma ; B -4 -129 135 101 ; -C 45 ; WX 333 ; N hyphen ; B 49 192 282 255 ; -C 173 ; WX 333 ; N hyphen ; B 49 192 282 255 ; -C 46 ; WX 250 ; N period ; B 27 -11 138 100 ; -C 47 ; WX 278 ; N slash ; B -65 -18 386 666 ; -C 48 ; WX 500 ; N zero ; B 32 -7 497 676 ; -C 49 ; WX 500 ; N one ; B 49 0 409 676 ; -C 50 ; WX 500 ; N two ; B 12 0 452 676 ; -C 51 ; WX 500 ; N three ; B 15 -7 465 676 ; -C 52 ; WX 500 ; N four ; B 1 0 479 676 ; -C 53 ; WX 500 ; N five ; B 15 -7 491 666 ; -C 54 ; WX 500 ; N six ; B 30 -7 521 686 ; -C 55 ; WX 500 ; N seven ; B 75 -8 537 666 ; -C 56 ; WX 500 ; N eight ; B 30 -7 493 676 ; -C 57 ; WX 500 ; N nine ; B 23 -17 492 676 ; -C 58 ; WX 333 ; N colon ; B 50 -11 261 441 ; -C 59 ; WX 333 ; N semicolon ; B 27 -129 261 441 ; -C 60 ; WX 675 ; N less ; B 84 -8 592 514 ; -C 61 ; WX 675 ; N equal ; B 86 120 590 386 ; -C 62 ; WX 675 ; N greater ; B 84 -8 592 514 ; -C 63 ; WX 500 ; N question ; B 132 -12 472 664 ; -C 64 ; WX 920 ; N at ; B 118 -18 806 666 ; -C 65 ; WX 611 ; N A ; B -51 0 564 668 ; -C 66 ; WX 611 ; N B ; B -8 0 588 653 ; -C 67 ; WX 667 ; N C ; B 66 -18 689 666 ; -C 68 ; WX 722 ; N D ; B -8 0 700 653 ; -C 69 ; WX 611 ; N E ; B -1 0 634 653 ; -C 70 ; WX 611 ; N F ; B 8 0 645 653 ; -C 71 ; WX 722 ; N G ; B 52 -18 722 666 ; -C 72 ; WX 722 ; N H ; B -8 0 767 653 ; -C 73 ; WX 333 ; N I ; B -8 0 384 653 ; -C 74 ; WX 444 ; N J ; B -6 -18 491 653 ; -C 75 ; WX 667 ; N K ; B 7 0 722 653 ; -C 76 ; WX 556 ; N L ; B -8 0 559 653 ; -C 77 ; WX 833 ; N M ; B -18 0 873 653 ; -C 78 ; WX 667 ; N N ; B -20 -15 727 653 ; -C 79 ; WX 722 ; N O ; B 60 -18 699 666 ; -C 80 ; WX 611 ; N P ; B 0 0 605 653 ; -C 81 ; WX 722 ; N Q ; B 59 -182 699 666 ; -C 82 ; WX 611 ; N R ; B -13 0 588 653 ; -C 83 ; WX 500 ; N S ; B 17 -18 508 667 ; -C 84 ; WX 556 ; N T ; B 59 0 633 653 ; -C 85 ; WX 722 ; N U ; B 102 -18 765 653 ; -C 86 ; WX 611 ; N V ; B 76 -18 688 653 ; -C 87 ; WX 833 ; N W ; B 71 -18 906 653 ; -C 88 ; WX 611 ; N X ; B -29 0 655 653 ; -C 89 ; WX 556 ; N Y ; B 78 0 633 653 ; -C 90 ; WX 556 ; N Z ; B -6 0 606 653 ; -C 91 ; WX 389 ; N bracketleft ; B 21 -153 391 663 ; -C 92 ; WX 278 ; N backslash ; B -41 -18 319 666 ; -C 93 ; WX 389 ; N bracketright ; B 12 -153 382 663 ; -C 94 ; WX 422 ; N asciicircum ; B 0 301 422 666 ; -C 95 ; WX 500 ; N underscore ; B 0 -125 500 -75 ; -C 145 ; WX 333 ; N quoteleft ; B 171 436 310 666 ; -C 97 ; WX 500 ; N a ; B 17 -11 476 441 ; -C 98 ; WX 500 ; N b ; B 23 -11 473 683 ; -C 99 ; WX 444 ; N c ; B 30 -11 425 441 ; -C 100 ; WX 500 ; N d ; B 15 -13 527 683 ; -C 101 ; WX 444 ; N e ; B 31 -11 412 441 ; -C 102 ; WX 278 ; N f ; B -147 -207 424 678 ; L i fi ; L l fl ; -C 103 ; WX 500 ; N g ; B 8 -206 472 441 ; -C 104 ; WX 500 ; N h ; B 19 -9 478 683 ; -C 105 ; WX 278 ; N i ; B 49 -11 264 654 ; -C 106 ; WX 278 ; N j ; B -124 -207 276 654 ; -C 107 ; WX 444 ; N k ; B 14 -11 461 683 ; -C 108 ; WX 278 ; N l ; B 41 -11 279 683 ; -C 109 ; WX 722 ; N m ; B 12 -9 704 441 ; -C 110 ; WX 500 ; N n ; B 14 -9 474 441 ; -C 111 ; WX 500 ; N o ; B 27 -11 468 441 ; -C 112 ; WX 500 ; N p ; B -75 -205 469 441 ; -C 113 ; WX 500 ; N q ; B 25 -209 483 441 ; -C 114 ; WX 389 ; N r ; B 45 0 412 441 ; -C 115 ; WX 389 ; N s ; B 16 -13 366 442 ; -C 116 ; WX 278 ; N t ; B 37 -11 296 546 ; -C 117 ; WX 500 ; N u ; B 42 -11 475 441 ; -C 118 ; WX 444 ; N v ; B 21 -18 426 441 ; -C 119 ; WX 667 ; N w ; B 16 -18 648 441 ; -C 120 ; WX 444 ; N x ; B -27 -11 447 441 ; -C 121 ; WX 444 ; N y ; B -24 -206 426 441 ; -C 122 ; WX 389 ; N z ; B -2 -81 380 428 ; -C 123 ; WX 400 ; N braceleft ; B 51 -177 407 687 ; -C 124 ; WX 275 ; N bar ; B 105 -217 171 783 ; -C 125 ; WX 400 ; N braceright ; B -7 -177 349 687 ; -C 126 ; WX 541 ; N asciitilde ; B 40 183 502 323 ; -C 161 ; WX 389 ; N exclamdown ; B 59 -205 322 473 ; -C 162 ; WX 500 ; N cent ; B 77 -143 472 560 ; -C 163 ; WX 500 ; N sterling ; B 10 -6 517 670 ; -C -1 ; WX 167 ; N fraction ; B -169 -10 337 676 ; -C 165 ; WX 500 ; N yen ; B 27 0 603 653 ; -C 131 ; WX 500 ; N florin ; B 25 -182 507 682 ; -C 167 ; WX 500 ; N section ; B 53 -162 461 666 ; -C 164 ; WX 500 ; N currency ; B -22 53 522 597 ; -C 39 ; WX 214 ; N quotesingle ; B 132 421 241 666 ; -C 147 ; WX 556 ; N quotedblleft ; B 166 436 514 666 ; -C 171 ; WX 500 ; N guillemotleft ; B 53 37 445 403 ; -C 139 ; WX 333 ; N guilsinglleft ; B 51 37 281 403 ; -C 155 ; WX 333 ; N guilsinglright ; B 52 37 282 403 ; -C -1 ; WX 500 ; N fi ; B -141 -207 481 681 ; -C -1 ; WX 500 ; N fl ; B -141 -204 518 682 ; -C 150 ; WX 500 ; N endash ; B -6 197 505 243 ; -C 134 ; WX 500 ; N dagger ; B 101 -159 488 666 ; -C 135 ; WX 500 ; N daggerdbl ; B 22 -143 491 666 ; -C 183 ; WX 250 ; N periodcentered ; B 70 199 181 310 ; -C 182 ; WX 523 ; N paragraph ; B 55 -123 616 653 ; -C 149 ; WX 350 ; N bullet ; B 40 191 310 461 ; -C 130 ; WX 333 ; N quotesinglbase ; B 44 -129 183 101 ; -C 132 ; WX 556 ; N quotedblbase ; B 57 -129 405 101 ; -C 148 ; WX 556 ; N quotedblright ; B 151 436 499 666 ; -C 187 ; WX 500 ; N guillemotright ; B 55 37 447 403 ; -C 133 ; WX 889 ; N ellipsis ; B 57 -11 762 100 ; -C 137 ; WX 1000 ; N perthousand ; B 25 -19 1010 706 ; -C 191 ; WX 500 ; N questiondown ; B 28 -205 368 471 ; -C 96 ; WX 333 ; N grave ; B 121 492 311 664 ; -C 180 ; WX 333 ; N acute ; B 180 494 403 664 ; -C 136 ; WX 333 ; N circumflex ; B 91 492 385 661 ; -C 152 ; WX 333 ; N tilde ; B 100 517 427 624 ; -C 175 ; WX 333 ; N macron ; B 99 532 411 583 ; -C -1 ; WX 333 ; N breve ; B 117 492 418 650 ; -C -1 ; WX 333 ; N dotaccent ; B 207 548 305 646 ; -C 168 ; WX 333 ; N dieresis ; B 107 548 405 646 ; -C -1 ; WX 333 ; N ring ; B 155 492 355 691 ; -C 184 ; WX 333 ; N cedilla ; B -30 -217 182 0 ; -C -1 ; WX 333 ; N hungarumlaut ; B 93 494 486 664 ; -C -1 ; WX 333 ; N ogonek ; B 20 -169 203 40 ; -C -1 ; WX 333 ; N caron ; B 121 492 426 661 ; -C 151 ; WX 889 ; N emdash ; B -6 197 894 243 ; -C 198 ; WX 889 ; N AE ; B -27 0 911 653 ; -C 170 ; WX 276 ; N ordfeminine ; B 42 406 352 676 ; -C -1 ; WX 556 ; N Lslash ; B -8 0 559 653 ; -C 216 ; WX 722 ; N Oslash ; B 60 -105 699 722 ; -C 140 ; WX 944 ; N OE ; B 49 -8 964 666 ; -C 186 ; WX 310 ; N ordmasculine ; B 67 406 362 676 ; -C 230 ; WX 667 ; N ae ; B 23 -11 640 441 ; -C -1 ; WX 278 ; N dotlessi ; B 49 -11 235 441 ; -C -1 ; WX 278 ; N lslash ; B 41 -11 312 683 ; -C 248 ; WX 500 ; N oslash ; B 28 -135 469 554 ; -C 156 ; WX 667 ; N oe ; B 20 -12 646 441 ; -C 223 ; WX 500 ; N germandbls ; B -168 -207 493 679 ; -C 207 ; WX 333 ; N Idieresis ; B -8 0 435 818 ; -C 233 ; WX 444 ; N eacute ; B 31 -11 459 664 ; -C -1 ; WX 500 ; N abreve ; B 17 -11 502 650 ; -C -1 ; WX 500 ; N uhungarumlaut ; B 42 -11 580 664 ; -C -1 ; WX 444 ; N ecaron ; B 31 -11 482 661 ; -C 159 ; WX 556 ; N Ydieresis ; B 78 0 633 818 ; -C 247 ; WX 675 ; N divide ; B 86 -11 590 517 ; -C 221 ; WX 556 ; N Yacute ; B 78 0 633 876 ; -C 194 ; WX 611 ; N Acircumflex ; B -51 0 564 873 ; -C 225 ; WX 500 ; N aacute ; B 17 -11 487 664 ; -C 219 ; WX 722 ; N Ucircumflex ; B 102 -18 765 873 ; -C 253 ; WX 444 ; N yacute ; B -24 -206 459 664 ; -C -1 ; WX 389 ; N scommaaccent ; B 16 -217 366 442 ; -C 234 ; WX 444 ; N ecircumflex ; B 31 -11 441 661 ; -C -1 ; WX 722 ; N Uring ; B 102 -18 765 883 ; -C 220 ; WX 722 ; N Udieresis ; B 102 -18 765 818 ; -C -1 ; WX 500 ; N aogonek ; B 17 -169 476 441 ; -C 218 ; WX 722 ; N Uacute ; B 102 -18 765 876 ; -C -1 ; WX 500 ; N uogonek ; B 42 -169 477 441 ; -C 203 ; WX 611 ; N Edieresis ; B -1 0 634 818 ; -C -1 ; WX 722 ; N Dcroat ; B -8 0 700 653 ; -C -1 ; WX 250 ; N commaaccent ; B 8 -217 133 -50 ; -C 169 ; WX 760 ; N copyright ; B 41 -18 719 666 ; -C -1 ; WX 611 ; N Emacron ; B -1 0 634 795 ; -C -1 ; WX 444 ; N ccaron ; B 30 -11 482 661 ; -C 229 ; WX 500 ; N aring ; B 17 -11 476 691 ; -C -1 ; WX 667 ; N Ncommaaccent ; B -20 -187 727 653 ; -C -1 ; WX 278 ; N lacute ; B 41 -11 395 876 ; -C 224 ; WX 500 ; N agrave ; B 17 -11 476 664 ; -C -1 ; WX 556 ; N Tcommaaccent ; B 59 -217 633 653 ; -C -1 ; WX 667 ; N Cacute ; B 66 -18 690 876 ; -C 227 ; WX 500 ; N atilde ; B 17 -11 511 624 ; -C -1 ; WX 611 ; N Edotaccent ; B -1 0 634 818 ; -C 154 ; WX 389 ; N scaron ; B 16 -13 454 661 ; -C -1 ; WX 389 ; N scedilla ; B 16 -217 366 442 ; -C 237 ; WX 278 ; N iacute ; B 49 -11 355 664 ; -C -1 ; WX 471 ; N lozenge ; B 13 0 459 724 ; -C -1 ; WX 611 ; N Rcaron ; B -13 0 588 873 ; -C -1 ; WX 722 ; N Gcommaaccent ; B 52 -217 722 666 ; -C 251 ; WX 500 ; N ucircumflex ; B 42 -11 475 661 ; -C 226 ; WX 500 ; N acircumflex ; B 17 -11 476 661 ; -C -1 ; WX 611 ; N Amacron ; B -51 0 564 795 ; -C -1 ; WX 389 ; N rcaron ; B 45 0 434 661 ; -C 231 ; WX 444 ; N ccedilla ; B 30 -217 425 441 ; -C -1 ; WX 556 ; N Zdotaccent ; B -6 0 606 818 ; -C 222 ; WX 611 ; N Thorn ; B 0 0 569 653 ; -C -1 ; WX 722 ; N Omacron ; B 60 -18 699 795 ; -C -1 ; WX 611 ; N Racute ; B -13 0 588 876 ; -C -1 ; WX 500 ; N Sacute ; B 17 -18 508 876 ; -C -1 ; WX 544 ; N dcaron ; B 15 -13 658 683 ; -C -1 ; WX 722 ; N Umacron ; B 102 -18 765 795 ; -C -1 ; WX 500 ; N uring ; B 42 -11 475 691 ; -C 179 ; WX 300 ; N threesuperior ; B 43 268 339 676 ; -C 210 ; WX 722 ; N Ograve ; B 60 -18 699 876 ; -C 192 ; WX 611 ; N Agrave ; B -51 0 564 876 ; -C -1 ; WX 611 ; N Abreve ; B -51 0 564 862 ; -C 215 ; WX 675 ; N multiply ; B 93 8 582 497 ; -C 250 ; WX 500 ; N uacute ; B 42 -11 477 664 ; -C -1 ; WX 556 ; N Tcaron ; B 59 0 633 873 ; -C -1 ; WX 476 ; N partialdiff ; B 17 -38 459 710 ; -C 255 ; WX 444 ; N ydieresis ; B -24 -206 441 606 ; -C -1 ; WX 667 ; N Nacute ; B -20 -15 727 876 ; -C 238 ; WX 278 ; N icircumflex ; B 33 -11 327 661 ; -C 202 ; WX 611 ; N Ecircumflex ; B -1 0 634 873 ; -C 228 ; WX 500 ; N adieresis ; B 17 -11 489 606 ; -C 235 ; WX 444 ; N edieresis ; B 31 -11 451 606 ; -C -1 ; WX 444 ; N cacute ; B 30 -11 459 664 ; -C -1 ; WX 500 ; N nacute ; B 14 -9 477 664 ; -C -1 ; WX 500 ; N umacron ; B 42 -11 485 583 ; -C -1 ; WX 667 ; N Ncaron ; B -20 -15 727 873 ; -C 205 ; WX 333 ; N Iacute ; B -8 0 433 876 ; -C 177 ; WX 675 ; N plusminus ; B 86 0 590 506 ; -C 166 ; WX 275 ; N brokenbar ; B 105 -142 171 708 ; -C 174 ; WX 760 ; N registered ; B 41 -18 719 666 ; -C -1 ; WX 722 ; N Gbreve ; B 52 -18 722 862 ; -C -1 ; WX 333 ; N Idotaccent ; B -8 0 384 818 ; -C -1 ; WX 600 ; N summation ; B 15 -10 585 706 ; -C 200 ; WX 611 ; N Egrave ; B -1 0 634 876 ; -C -1 ; WX 389 ; N racute ; B 45 0 431 664 ; -C -1 ; WX 500 ; N omacron ; B 27 -11 495 583 ; -C -1 ; WX 556 ; N Zacute ; B -6 0 606 876 ; -C 142 ; WX 556 ; N Zcaron ; B -6 0 606 873 ; -C -1 ; WX 549 ; N greaterequal ; B 26 0 523 658 ; -C 208 ; WX 722 ; N Eth ; B -8 0 700 653 ; -C 199 ; WX 667 ; N Ccedilla ; B 66 -217 689 666 ; -C -1 ; WX 278 ; N lcommaaccent ; B 22 -217 279 683 ; -C -1 ; WX 300 ; N tcaron ; B 37 -11 407 681 ; -C -1 ; WX 444 ; N eogonek ; B 31 -169 412 441 ; -C -1 ; WX 722 ; N Uogonek ; B 102 -184 765 653 ; -C 193 ; WX 611 ; N Aacute ; B -51 0 564 876 ; -C 196 ; WX 611 ; N Adieresis ; B -51 0 564 818 ; -C 232 ; WX 444 ; N egrave ; B 31 -11 412 664 ; -C -1 ; WX 389 ; N zacute ; B -2 -81 431 664 ; -C -1 ; WX 278 ; N iogonek ; B 49 -169 264 654 ; -C 211 ; WX 722 ; N Oacute ; B 60 -18 699 876 ; -C 243 ; WX 500 ; N oacute ; B 27 -11 487 664 ; -C -1 ; WX 500 ; N amacron ; B 17 -11 495 583 ; -C -1 ; WX 389 ; N sacute ; B 16 -13 431 664 ; -C 239 ; WX 278 ; N idieresis ; B 49 -11 352 606 ; -C 212 ; WX 722 ; N Ocircumflex ; B 60 -18 699 873 ; -C 217 ; WX 722 ; N Ugrave ; B 102 -18 765 876 ; -C -1 ; WX 612 ; N Delta ; B 6 0 608 688 ; -C 254 ; WX 500 ; N thorn ; B -75 -205 469 683 ; -C 178 ; WX 300 ; N twosuperior ; B 33 271 324 676 ; -C 214 ; WX 722 ; N Odieresis ; B 60 -18 699 818 ; -C 181 ; WX 500 ; N mu ; B -30 -209 497 428 ; -C 236 ; WX 278 ; N igrave ; B 49 -11 284 664 ; -C -1 ; WX 500 ; N ohungarumlaut ; B 27 -11 590 664 ; -C -1 ; WX 611 ; N Eogonek ; B -1 -169 634 653 ; -C -1 ; WX 500 ; N dcroat ; B 15 -13 572 683 ; -C 190 ; WX 750 ; N threequarters ; B 23 -10 736 676 ; -C -1 ; WX 500 ; N Scedilla ; B 17 -217 508 667 ; -C -1 ; WX 300 ; N lcaron ; B 41 -11 407 683 ; -C -1 ; WX 667 ; N Kcommaaccent ; B 7 -217 722 653 ; -C -1 ; WX 556 ; N Lacute ; B -8 0 559 876 ; -C 153 ; WX 980 ; N trademark ; B 30 247 957 653 ; -C -1 ; WX 444 ; N edotaccent ; B 31 -11 412 606 ; -C 204 ; WX 333 ; N Igrave ; B -8 0 384 876 ; -C -1 ; WX 333 ; N Imacron ; B -8 0 441 795 ; -C -1 ; WX 611 ; N Lcaron ; B -8 0 586 653 ; -C 189 ; WX 750 ; N onehalf ; B 34 -10 749 676 ; -C -1 ; WX 549 ; N lessequal ; B 26 0 523 658 ; -C 244 ; WX 500 ; N ocircumflex ; B 27 -11 468 661 ; -C 241 ; WX 500 ; N ntilde ; B 14 -9 476 624 ; -C -1 ; WX 722 ; N Uhungarumlaut ; B 102 -18 765 876 ; -C 201 ; WX 611 ; N Eacute ; B -1 0 634 876 ; -C -1 ; WX 444 ; N emacron ; B 31 -11 457 583 ; -C -1 ; WX 500 ; N gbreve ; B 8 -206 487 650 ; -C 188 ; WX 750 ; N onequarter ; B 33 -10 736 676 ; -C 138 ; WX 500 ; N Scaron ; B 17 -18 520 873 ; -C -1 ; WX 500 ; N Scommaaccent ; B 17 -217 508 667 ; -C -1 ; WX 722 ; N Ohungarumlaut ; B 60 -18 699 876 ; -C 176 ; WX 400 ; N degree ; B 101 390 387 676 ; -C 242 ; WX 500 ; N ograve ; B 27 -11 468 664 ; -C -1 ; WX 667 ; N Ccaron ; B 66 -18 689 873 ; -C 249 ; WX 500 ; N ugrave ; B 42 -11 475 664 ; -C -1 ; WX 453 ; N radical ; B 2 -60 452 768 ; -C -1 ; WX 722 ; N Dcaron ; B -8 0 700 873 ; -C -1 ; WX 389 ; N rcommaaccent ; B -3 -217 412 441 ; -C 209 ; WX 667 ; N Ntilde ; B -20 -15 727 836 ; -C 245 ; WX 500 ; N otilde ; B 27 -11 496 624 ; -C -1 ; WX 611 ; N Rcommaaccent ; B -13 -187 588 653 ; -C -1 ; WX 556 ; N Lcommaaccent ; B -8 -217 559 653 ; -C 195 ; WX 611 ; N Atilde ; B -51 0 566 836 ; -C -1 ; WX 611 ; N Aogonek ; B -51 -169 566 668 ; -C 197 ; WX 611 ; N Aring ; B -51 0 564 883 ; -C 213 ; WX 722 ; N Otilde ; B 60 -18 699 836 ; -C -1 ; WX 389 ; N zdotaccent ; B -2 -81 380 606 ; -C -1 ; WX 611 ; N Ecaron ; B -1 0 634 873 ; -C -1 ; WX 333 ; N Iogonek ; B -8 -169 384 653 ; -C -1 ; WX 444 ; N kcommaaccent ; B 14 -187 461 683 ; -C -1 ; WX 675 ; N minus ; B 86 220 590 286 ; -C 206 ; WX 333 ; N Icircumflex ; B -8 0 425 873 ; -C -1 ; WX 500 ; N ncaron ; B 14 -9 510 661 ; -C -1 ; WX 278 ; N tcommaaccent ; B 2 -217 296 546 ; -C 172 ; WX 675 ; N logicalnot ; B 86 108 590 386 ; -C 246 ; WX 500 ; N odieresis ; B 27 -11 489 606 ; -C 252 ; WX 500 ; N udieresis ; B 42 -11 479 606 ; -C -1 ; WX 549 ; N notequal ; B 12 -29 537 541 ; -C -1 ; WX 500 ; N gcommaaccent ; B 8 -206 472 706 ; -C 240 ; WX 500 ; N eth ; B 27 -11 482 683 ; -C 158 ; WX 389 ; N zcaron ; B -2 -81 434 661 ; -C -1 ; WX 500 ; N ncommaaccent ; B 14 -187 474 441 ; -C 185 ; WX 300 ; N onesuperior ; B 43 271 284 676 ; -C -1 ; WX 278 ; N imacron ; B 46 -11 311 583 ; -C 128 ; WX 500 ; N Euro ; B 0 0 0 0 ; -EndCharMetrics -StartKernData -StartKernPairs 2321 -KPX A C -30 -KPX A Cacute -30 -KPX A Ccaron -30 -KPX A Ccedilla -30 -KPX A G -35 -KPX A Gbreve -35 -KPX A Gcommaaccent -35 -KPX A O -40 -KPX A Oacute -40 -KPX A Ocircumflex -40 -KPX A Odieresis -40 -KPX A Ograve -40 -KPX A Ohungarumlaut -40 -KPX A Omacron -40 -KPX A Oslash -40 -KPX A Otilde -40 -KPX A Q -40 -KPX A T -37 -KPX A Tcaron -37 -KPX A Tcommaaccent -37 -KPX A U -50 -KPX A Uacute -50 -KPX A Ucircumflex -50 -KPX A Udieresis -50 -KPX A Ugrave -50 -KPX A Uhungarumlaut -50 -KPX A Umacron -50 -KPX A Uogonek -50 -KPX A Uring -50 -KPX A V -105 -KPX A W -95 -KPX A Y -55 -KPX A Yacute -55 -KPX A Ydieresis -55 -KPX A quoteright -37 -KPX A u -20 -KPX A uacute -20 -KPX A ucircumflex -20 -KPX A udieresis -20 -KPX A ugrave -20 -KPX A uhungarumlaut -20 -KPX A umacron -20 -KPX A uogonek -20 -KPX A uring -20 -KPX A v -55 -KPX A w -55 -KPX A y -55 -KPX A yacute -55 -KPX A ydieresis -55 -KPX Aacute C -30 -KPX Aacute Cacute -30 -KPX Aacute Ccaron -30 -KPX Aacute Ccedilla -30 -KPX Aacute G -35 -KPX Aacute Gbreve -35 -KPX Aacute Gcommaaccent -35 -KPX Aacute O -40 -KPX Aacute Oacute -40 -KPX Aacute Ocircumflex -40 -KPX Aacute Odieresis -40 -KPX Aacute Ograve -40 -KPX Aacute Ohungarumlaut -40 -KPX Aacute Omacron -40 -KPX Aacute Oslash -40 -KPX Aacute Otilde -40 -KPX Aacute Q -40 -KPX Aacute T -37 -KPX Aacute Tcaron -37 -KPX Aacute Tcommaaccent -37 -KPX Aacute U -50 -KPX Aacute Uacute -50 -KPX Aacute Ucircumflex -50 -KPX Aacute Udieresis -50 -KPX Aacute Ugrave -50 -KPX Aacute Uhungarumlaut -50 -KPX Aacute Umacron -50 -KPX Aacute Uogonek -50 -KPX Aacute Uring -50 -KPX Aacute V -105 -KPX Aacute W -95 -KPX Aacute Y -55 -KPX Aacute Yacute -55 -KPX Aacute Ydieresis -55 -KPX Aacute quoteright -37 -KPX Aacute u -20 -KPX Aacute uacute -20 -KPX Aacute ucircumflex -20 -KPX Aacute udieresis -20 -KPX Aacute ugrave -20 -KPX Aacute uhungarumlaut -20 -KPX Aacute umacron -20 -KPX Aacute uogonek -20 -KPX Aacute uring -20 -KPX Aacute v -55 -KPX Aacute w -55 -KPX Aacute y -55 -KPX Aacute yacute -55 -KPX Aacute ydieresis -55 -KPX Abreve C -30 -KPX Abreve Cacute -30 -KPX Abreve Ccaron -30 -KPX Abreve Ccedilla -30 -KPX Abreve G -35 -KPX Abreve Gbreve -35 -KPX Abreve Gcommaaccent -35 -KPX Abreve O -40 -KPX Abreve Oacute -40 -KPX Abreve Ocircumflex -40 -KPX Abreve Odieresis -40 -KPX Abreve Ograve -40 -KPX Abreve Ohungarumlaut -40 -KPX Abreve Omacron -40 -KPX Abreve Oslash -40 -KPX Abreve Otilde -40 -KPX Abreve Q -40 -KPX Abreve T -37 -KPX Abreve Tcaron -37 -KPX Abreve Tcommaaccent -37 -KPX Abreve U -50 -KPX Abreve Uacute -50 -KPX Abreve Ucircumflex -50 -KPX Abreve Udieresis -50 -KPX Abreve Ugrave -50 -KPX Abreve Uhungarumlaut -50 -KPX Abreve Umacron -50 -KPX Abreve Uogonek -50 -KPX Abreve Uring -50 -KPX Abreve V -105 -KPX Abreve W -95 -KPX Abreve Y -55 -KPX Abreve Yacute -55 -KPX Abreve Ydieresis -55 -KPX Abreve quoteright -37 -KPX Abreve u -20 -KPX Abreve uacute -20 -KPX Abreve ucircumflex -20 -KPX Abreve udieresis -20 -KPX Abreve ugrave -20 -KPX Abreve uhungarumlaut -20 -KPX Abreve umacron -20 -KPX Abreve uogonek -20 -KPX Abreve uring -20 -KPX Abreve v -55 -KPX Abreve w -55 -KPX Abreve y -55 -KPX Abreve yacute -55 -KPX Abreve ydieresis -55 -KPX Acircumflex C -30 -KPX Acircumflex Cacute -30 -KPX Acircumflex Ccaron -30 -KPX Acircumflex Ccedilla -30 -KPX Acircumflex G -35 -KPX Acircumflex Gbreve -35 -KPX Acircumflex Gcommaaccent -35 -KPX Acircumflex O -40 -KPX Acircumflex Oacute -40 -KPX Acircumflex Ocircumflex -40 -KPX Acircumflex Odieresis -40 -KPX Acircumflex Ograve -40 -KPX Acircumflex Ohungarumlaut -40 -KPX Acircumflex Omacron -40 -KPX Acircumflex Oslash -40 -KPX Acircumflex Otilde -40 -KPX Acircumflex Q -40 -KPX Acircumflex T -37 -KPX Acircumflex Tcaron -37 -KPX Acircumflex Tcommaaccent -37 -KPX Acircumflex U -50 -KPX Acircumflex Uacute -50 -KPX Acircumflex Ucircumflex -50 -KPX Acircumflex Udieresis -50 -KPX Acircumflex Ugrave -50 -KPX Acircumflex Uhungarumlaut -50 -KPX Acircumflex Umacron -50 -KPX Acircumflex Uogonek -50 -KPX Acircumflex Uring -50 -KPX Acircumflex V -105 -KPX Acircumflex W -95 -KPX Acircumflex Y -55 -KPX Acircumflex Yacute -55 -KPX Acircumflex Ydieresis -55 -KPX Acircumflex quoteright -37 -KPX Acircumflex u -20 -KPX Acircumflex uacute -20 -KPX Acircumflex ucircumflex -20 -KPX Acircumflex udieresis -20 -KPX Acircumflex ugrave -20 -KPX Acircumflex uhungarumlaut -20 -KPX Acircumflex umacron -20 -KPX Acircumflex uogonek -20 -KPX Acircumflex uring -20 -KPX Acircumflex v -55 -KPX Acircumflex w -55 -KPX Acircumflex y -55 -KPX Acircumflex yacute -55 -KPX Acircumflex ydieresis -55 -KPX Adieresis C -30 -KPX Adieresis Cacute -30 -KPX Adieresis Ccaron -30 -KPX Adieresis Ccedilla -30 -KPX Adieresis G -35 -KPX Adieresis Gbreve -35 -KPX Adieresis Gcommaaccent -35 -KPX Adieresis O -40 -KPX Adieresis Oacute -40 -KPX Adieresis Ocircumflex -40 -KPX Adieresis Odieresis -40 -KPX Adieresis Ograve -40 -KPX Adieresis Ohungarumlaut -40 -KPX Adieresis Omacron -40 -KPX Adieresis Oslash -40 -KPX Adieresis Otilde -40 -KPX Adieresis Q -40 -KPX Adieresis T -37 -KPX Adieresis Tcaron -37 -KPX Adieresis Tcommaaccent -37 -KPX Adieresis U -50 -KPX Adieresis Uacute -50 -KPX Adieresis Ucircumflex -50 -KPX Adieresis Udieresis -50 -KPX Adieresis Ugrave -50 -KPX Adieresis Uhungarumlaut -50 -KPX Adieresis Umacron -50 -KPX Adieresis Uogonek -50 -KPX Adieresis Uring -50 -KPX Adieresis V -105 -KPX Adieresis W -95 -KPX Adieresis Y -55 -KPX Adieresis Yacute -55 -KPX Adieresis Ydieresis -55 -KPX Adieresis quoteright -37 -KPX Adieresis u -20 -KPX Adieresis uacute -20 -KPX Adieresis ucircumflex -20 -KPX Adieresis udieresis -20 -KPX Adieresis ugrave -20 -KPX Adieresis uhungarumlaut -20 -KPX Adieresis umacron -20 -KPX Adieresis uogonek -20 -KPX Adieresis uring -20 -KPX Adieresis v -55 -KPX Adieresis w -55 -KPX Adieresis y -55 -KPX Adieresis yacute -55 -KPX Adieresis ydieresis -55 -KPX Agrave C -30 -KPX Agrave Cacute -30 -KPX Agrave Ccaron -30 -KPX Agrave Ccedilla -30 -KPX Agrave G -35 -KPX Agrave Gbreve -35 -KPX Agrave Gcommaaccent -35 -KPX Agrave O -40 -KPX Agrave Oacute -40 -KPX Agrave Ocircumflex -40 -KPX Agrave Odieresis -40 -KPX Agrave Ograve -40 -KPX Agrave Ohungarumlaut -40 -KPX Agrave Omacron -40 -KPX Agrave Oslash -40 -KPX Agrave Otilde -40 -KPX Agrave Q -40 -KPX Agrave T -37 -KPX Agrave Tcaron -37 -KPX Agrave Tcommaaccent -37 -KPX Agrave U -50 -KPX Agrave Uacute -50 -KPX Agrave Ucircumflex -50 -KPX Agrave Udieresis -50 -KPX Agrave Ugrave -50 -KPX Agrave Uhungarumlaut -50 -KPX Agrave Umacron -50 -KPX Agrave Uogonek -50 -KPX Agrave Uring -50 -KPX Agrave V -105 -KPX Agrave W -95 -KPX Agrave Y -55 -KPX Agrave Yacute -55 -KPX Agrave Ydieresis -55 -KPX Agrave quoteright -37 -KPX Agrave u -20 -KPX Agrave uacute -20 -KPX Agrave ucircumflex -20 -KPX Agrave udieresis -20 -KPX Agrave ugrave -20 -KPX Agrave uhungarumlaut -20 -KPX Agrave umacron -20 -KPX Agrave uogonek -20 -KPX Agrave uring -20 -KPX Agrave v -55 -KPX Agrave w -55 -KPX Agrave y -55 -KPX Agrave yacute -55 -KPX Agrave ydieresis -55 -KPX Amacron C -30 -KPX Amacron Cacute -30 -KPX Amacron Ccaron -30 -KPX Amacron Ccedilla -30 -KPX Amacron G -35 -KPX Amacron Gbreve -35 -KPX Amacron Gcommaaccent -35 -KPX Amacron O -40 -KPX Amacron Oacute -40 -KPX Amacron Ocircumflex -40 -KPX Amacron Odieresis -40 -KPX Amacron Ograve -40 -KPX Amacron Ohungarumlaut -40 -KPX Amacron Omacron -40 -KPX Amacron Oslash -40 -KPX Amacron Otilde -40 -KPX Amacron Q -40 -KPX Amacron T -37 -KPX Amacron Tcaron -37 -KPX Amacron Tcommaaccent -37 -KPX Amacron U -50 -KPX Amacron Uacute -50 -KPX Amacron Ucircumflex -50 -KPX Amacron Udieresis -50 -KPX Amacron Ugrave -50 -KPX Amacron Uhungarumlaut -50 -KPX Amacron Umacron -50 -KPX Amacron Uogonek -50 -KPX Amacron Uring -50 -KPX Amacron V -105 -KPX Amacron W -95 -KPX Amacron Y -55 -KPX Amacron Yacute -55 -KPX Amacron Ydieresis -55 -KPX Amacron quoteright -37 -KPX Amacron u -20 -KPX Amacron uacute -20 -KPX Amacron ucircumflex -20 -KPX Amacron udieresis -20 -KPX Amacron ugrave -20 -KPX Amacron uhungarumlaut -20 -KPX Amacron umacron -20 -KPX Amacron uogonek -20 -KPX Amacron uring -20 -KPX Amacron v -55 -KPX Amacron w -55 -KPX Amacron y -55 -KPX Amacron yacute -55 -KPX Amacron ydieresis -55 -KPX Aogonek C -30 -KPX Aogonek Cacute -30 -KPX Aogonek Ccaron -30 -KPX Aogonek Ccedilla -30 -KPX Aogonek G -35 -KPX Aogonek Gbreve -35 -KPX Aogonek Gcommaaccent -35 -KPX Aogonek O -40 -KPX Aogonek Oacute -40 -KPX Aogonek Ocircumflex -40 -KPX Aogonek Odieresis -40 -KPX Aogonek Ograve -40 -KPX Aogonek Ohungarumlaut -40 -KPX Aogonek Omacron -40 -KPX Aogonek Oslash -40 -KPX Aogonek Otilde -40 -KPX Aogonek Q -40 -KPX Aogonek T -37 -KPX Aogonek Tcaron -37 -KPX Aogonek Tcommaaccent -37 -KPX Aogonek U -50 -KPX Aogonek Uacute -50 -KPX Aogonek Ucircumflex -50 -KPX Aogonek Udieresis -50 -KPX Aogonek Ugrave -50 -KPX Aogonek Uhungarumlaut -50 -KPX Aogonek Umacron -50 -KPX Aogonek Uogonek -50 -KPX Aogonek Uring -50 -KPX Aogonek V -105 -KPX Aogonek W -95 -KPX Aogonek Y -55 -KPX Aogonek Yacute -55 -KPX Aogonek Ydieresis -55 -KPX Aogonek quoteright -37 -KPX Aogonek u -20 -KPX Aogonek uacute -20 -KPX Aogonek ucircumflex -20 -KPX Aogonek udieresis -20 -KPX Aogonek ugrave -20 -KPX Aogonek uhungarumlaut -20 -KPX Aogonek umacron -20 -KPX Aogonek uogonek -20 -KPX Aogonek uring -20 -KPX Aogonek v -55 -KPX Aogonek w -55 -KPX Aogonek y -55 -KPX Aogonek yacute -55 -KPX Aogonek ydieresis -55 -KPX Aring C -30 -KPX Aring Cacute -30 -KPX Aring Ccaron -30 -KPX Aring Ccedilla -30 -KPX Aring G -35 -KPX Aring Gbreve -35 -KPX Aring Gcommaaccent -35 -KPX Aring O -40 -KPX Aring Oacute -40 -KPX Aring Ocircumflex -40 -KPX Aring Odieresis -40 -KPX Aring Ograve -40 -KPX Aring Ohungarumlaut -40 -KPX Aring Omacron -40 -KPX Aring Oslash -40 -KPX Aring Otilde -40 -KPX Aring Q -40 -KPX Aring T -37 -KPX Aring Tcaron -37 -KPX Aring Tcommaaccent -37 -KPX Aring U -50 -KPX Aring Uacute -50 -KPX Aring Ucircumflex -50 -KPX Aring Udieresis -50 -KPX Aring Ugrave -50 -KPX Aring Uhungarumlaut -50 -KPX Aring Umacron -50 -KPX Aring Uogonek -50 -KPX Aring Uring -50 -KPX Aring V -105 -KPX Aring W -95 -KPX Aring Y -55 -KPX Aring Yacute -55 -KPX Aring Ydieresis -55 -KPX Aring quoteright -37 -KPX Aring u -20 -KPX Aring uacute -20 -KPX Aring ucircumflex -20 -KPX Aring udieresis -20 -KPX Aring ugrave -20 -KPX Aring uhungarumlaut -20 -KPX Aring umacron -20 -KPX Aring uogonek -20 -KPX Aring uring -20 -KPX Aring v -55 -KPX Aring w -55 -KPX Aring y -55 -KPX Aring yacute -55 -KPX Aring ydieresis -55 -KPX Atilde C -30 -KPX Atilde Cacute -30 -KPX Atilde Ccaron -30 -KPX Atilde Ccedilla -30 -KPX Atilde G -35 -KPX Atilde Gbreve -35 -KPX Atilde Gcommaaccent -35 -KPX Atilde O -40 -KPX Atilde Oacute -40 -KPX Atilde Ocircumflex -40 -KPX Atilde Odieresis -40 -KPX Atilde Ograve -40 -KPX Atilde Ohungarumlaut -40 -KPX Atilde Omacron -40 -KPX Atilde Oslash -40 -KPX Atilde Otilde -40 -KPX Atilde Q -40 -KPX Atilde T -37 -KPX Atilde Tcaron -37 -KPX Atilde Tcommaaccent -37 -KPX Atilde U -50 -KPX Atilde Uacute -50 -KPX Atilde Ucircumflex -50 -KPX Atilde Udieresis -50 -KPX Atilde Ugrave -50 -KPX Atilde Uhungarumlaut -50 -KPX Atilde Umacron -50 -KPX Atilde Uogonek -50 -KPX Atilde Uring -50 -KPX Atilde V -105 -KPX Atilde W -95 -KPX Atilde Y -55 -KPX Atilde Yacute -55 -KPX Atilde Ydieresis -55 -KPX Atilde quoteright -37 -KPX Atilde u -20 -KPX Atilde uacute -20 -KPX Atilde ucircumflex -20 -KPX Atilde udieresis -20 -KPX Atilde ugrave -20 -KPX Atilde uhungarumlaut -20 -KPX Atilde umacron -20 -KPX Atilde uogonek -20 -KPX Atilde uring -20 -KPX Atilde v -55 -KPX Atilde w -55 -KPX Atilde y -55 -KPX Atilde yacute -55 -KPX Atilde ydieresis -55 -KPX B A -25 -KPX B Aacute -25 -KPX B Abreve -25 -KPX B Acircumflex -25 -KPX B Adieresis -25 -KPX B Agrave -25 -KPX B Amacron -25 -KPX B Aogonek -25 -KPX B Aring -25 -KPX B Atilde -25 -KPX B U -10 -KPX B Uacute -10 -KPX B Ucircumflex -10 -KPX B Udieresis -10 -KPX B Ugrave -10 -KPX B Uhungarumlaut -10 -KPX B Umacron -10 -KPX B Uogonek -10 -KPX B Uring -10 -KPX D A -35 -KPX D Aacute -35 -KPX D Abreve -35 -KPX D Acircumflex -35 -KPX D Adieresis -35 -KPX D Agrave -35 -KPX D Amacron -35 -KPX D Aogonek -35 -KPX D Aring -35 -KPX D Atilde -35 -KPX D V -40 -KPX D W -40 -KPX D Y -40 -KPX D Yacute -40 -KPX D Ydieresis -40 -KPX Dcaron A -35 -KPX Dcaron Aacute -35 -KPX Dcaron Abreve -35 -KPX Dcaron Acircumflex -35 -KPX Dcaron Adieresis -35 -KPX Dcaron Agrave -35 -KPX Dcaron Amacron -35 -KPX Dcaron Aogonek -35 -KPX Dcaron Aring -35 -KPX Dcaron Atilde -35 -KPX Dcaron V -40 -KPX Dcaron W -40 -KPX Dcaron Y -40 -KPX Dcaron Yacute -40 -KPX Dcaron Ydieresis -40 -KPX Dcroat A -35 -KPX Dcroat Aacute -35 -KPX Dcroat Abreve -35 -KPX Dcroat Acircumflex -35 -KPX Dcroat Adieresis -35 -KPX Dcroat Agrave -35 -KPX Dcroat Amacron -35 -KPX Dcroat Aogonek -35 -KPX Dcroat Aring -35 -KPX Dcroat Atilde -35 -KPX Dcroat V -40 -KPX Dcroat W -40 -KPX Dcroat Y -40 -KPX Dcroat Yacute -40 -KPX Dcroat Ydieresis -40 -KPX F A -115 -KPX F Aacute -115 -KPX F Abreve -115 -KPX F Acircumflex -115 -KPX F Adieresis -115 -KPX F Agrave -115 -KPX F Amacron -115 -KPX F Aogonek -115 -KPX F Aring -115 -KPX F Atilde -115 -KPX F a -75 -KPX F aacute -75 -KPX F abreve -75 -KPX F acircumflex -75 -KPX F adieresis -75 -KPX F agrave -75 -KPX F amacron -75 -KPX F aogonek -75 -KPX F aring -75 -KPX F atilde -75 -KPX F comma -135 -KPX F e -75 -KPX F eacute -75 -KPX F ecaron -75 -KPX F ecircumflex -75 -KPX F edieresis -75 -KPX F edotaccent -75 -KPX F egrave -75 -KPX F emacron -75 -KPX F eogonek -75 -KPX F i -45 -KPX F iacute -45 -KPX F icircumflex -45 -KPX F idieresis -45 -KPX F igrave -45 -KPX F imacron -45 -KPX F iogonek -45 -KPX F o -105 -KPX F oacute -105 -KPX F ocircumflex -105 -KPX F odieresis -105 -KPX F ograve -105 -KPX F ohungarumlaut -105 -KPX F omacron -105 -KPX F oslash -105 -KPX F otilde -105 -KPX F period -135 -KPX F r -55 -KPX F racute -55 -KPX F rcaron -55 -KPX F rcommaaccent -55 -KPX J A -40 -KPX J Aacute -40 -KPX J Abreve -40 -KPX J Acircumflex -40 -KPX J Adieresis -40 -KPX J Agrave -40 -KPX J Amacron -40 -KPX J Aogonek -40 -KPX J Aring -40 -KPX J Atilde -40 -KPX J a -35 -KPX J aacute -35 -KPX J abreve -35 -KPX J acircumflex -35 -KPX J adieresis -35 -KPX J agrave -35 -KPX J amacron -35 -KPX J aogonek -35 -KPX J aring -35 -KPX J atilde -35 -KPX J comma -25 -KPX J e -25 -KPX J eacute -25 -KPX J ecaron -25 -KPX J ecircumflex -25 -KPX J edieresis -25 -KPX J edotaccent -25 -KPX J egrave -25 -KPX J emacron -25 -KPX J eogonek -25 -KPX J o -25 -KPX J oacute -25 -KPX J ocircumflex -25 -KPX J odieresis -25 -KPX J ograve -25 -KPX J ohungarumlaut -25 -KPX J omacron -25 -KPX J oslash -25 -KPX J otilde -25 -KPX J period -25 -KPX J u -35 -KPX J uacute -35 -KPX J ucircumflex -35 -KPX J udieresis -35 -KPX J ugrave -35 -KPX J uhungarumlaut -35 -KPX J umacron -35 -KPX J uogonek -35 -KPX J uring -35 -KPX K O -50 -KPX K Oacute -50 -KPX K Ocircumflex -50 -KPX K Odieresis -50 -KPX K Ograve -50 -KPX K Ohungarumlaut -50 -KPX K Omacron -50 -KPX K Oslash -50 -KPX K Otilde -50 -KPX K e -35 -KPX K eacute -35 -KPX K ecaron -35 -KPX K ecircumflex -35 -KPX K edieresis -35 -KPX K edotaccent -35 -KPX K egrave -35 -KPX K emacron -35 -KPX K eogonek -35 -KPX K o -40 -KPX K oacute -40 -KPX K ocircumflex -40 -KPX K odieresis -40 -KPX K ograve -40 -KPX K ohungarumlaut -40 -KPX K omacron -40 -KPX K oslash -40 -KPX K otilde -40 -KPX K u -40 -KPX K uacute -40 -KPX K ucircumflex -40 -KPX K udieresis -40 -KPX K ugrave -40 -KPX K uhungarumlaut -40 -KPX K umacron -40 -KPX K uogonek -40 -KPX K uring -40 -KPX K y -40 -KPX K yacute -40 -KPX K ydieresis -40 -KPX Kcommaaccent O -50 -KPX Kcommaaccent Oacute -50 -KPX Kcommaaccent Ocircumflex -50 -KPX Kcommaaccent Odieresis -50 -KPX Kcommaaccent Ograve -50 -KPX Kcommaaccent Ohungarumlaut -50 -KPX Kcommaaccent Omacron -50 -KPX Kcommaaccent Oslash -50 -KPX Kcommaaccent Otilde -50 -KPX Kcommaaccent e -35 -KPX Kcommaaccent eacute -35 -KPX Kcommaaccent ecaron -35 -KPX Kcommaaccent ecircumflex -35 -KPX Kcommaaccent edieresis -35 -KPX Kcommaaccent edotaccent -35 -KPX Kcommaaccent egrave -35 -KPX Kcommaaccent emacron -35 -KPX Kcommaaccent eogonek -35 -KPX Kcommaaccent o -40 -KPX Kcommaaccent oacute -40 -KPX Kcommaaccent ocircumflex -40 -KPX Kcommaaccent odieresis -40 -KPX Kcommaaccent ograve -40 -KPX Kcommaaccent ohungarumlaut -40 -KPX Kcommaaccent omacron -40 -KPX Kcommaaccent oslash -40 -KPX Kcommaaccent otilde -40 -KPX Kcommaaccent u -40 -KPX Kcommaaccent uacute -40 -KPX Kcommaaccent ucircumflex -40 -KPX Kcommaaccent udieresis -40 -KPX Kcommaaccent ugrave -40 -KPX Kcommaaccent uhungarumlaut -40 -KPX Kcommaaccent umacron -40 -KPX Kcommaaccent uogonek -40 -KPX Kcommaaccent uring -40 -KPX Kcommaaccent y -40 -KPX Kcommaaccent yacute -40 -KPX Kcommaaccent ydieresis -40 -KPX L T -20 -KPX L Tcaron -20 -KPX L Tcommaaccent -20 -KPX L V -55 -KPX L W -55 -KPX L Y -20 -KPX L Yacute -20 -KPX L Ydieresis -20 -KPX L quoteright -37 -KPX L y -30 -KPX L yacute -30 -KPX L ydieresis -30 -KPX Lacute T -20 -KPX Lacute Tcaron -20 -KPX Lacute Tcommaaccent -20 -KPX Lacute V -55 -KPX Lacute W -55 -KPX Lacute Y -20 -KPX Lacute Yacute -20 -KPX Lacute Ydieresis -20 -KPX Lacute quoteright -37 -KPX Lacute y -30 -KPX Lacute yacute -30 -KPX Lacute ydieresis -30 -KPX Lcommaaccent T -20 -KPX Lcommaaccent Tcaron -20 -KPX Lcommaaccent Tcommaaccent -20 -KPX Lcommaaccent V -55 -KPX Lcommaaccent W -55 -KPX Lcommaaccent Y -20 -KPX Lcommaaccent Yacute -20 -KPX Lcommaaccent Ydieresis -20 -KPX Lcommaaccent quoteright -37 -KPX Lcommaaccent y -30 -KPX Lcommaaccent yacute -30 -KPX Lcommaaccent ydieresis -30 -KPX Lslash T -20 -KPX Lslash Tcaron -20 -KPX Lslash Tcommaaccent -20 -KPX Lslash V -55 -KPX Lslash W -55 -KPX Lslash Y -20 -KPX Lslash Yacute -20 -KPX Lslash Ydieresis -20 -KPX Lslash quoteright -37 -KPX Lslash y -30 -KPX Lslash yacute -30 -KPX Lslash ydieresis -30 -KPX N A -27 -KPX N Aacute -27 -KPX N Abreve -27 -KPX N Acircumflex -27 -KPX N Adieresis -27 -KPX N Agrave -27 -KPX N Amacron -27 -KPX N Aogonek -27 -KPX N Aring -27 -KPX N Atilde -27 -KPX Nacute A -27 -KPX Nacute Aacute -27 -KPX Nacute Abreve -27 -KPX Nacute Acircumflex -27 -KPX Nacute Adieresis -27 -KPX Nacute Agrave -27 -KPX Nacute Amacron -27 -KPX Nacute Aogonek -27 -KPX Nacute Aring -27 -KPX Nacute Atilde -27 -KPX Ncaron A -27 -KPX Ncaron Aacute -27 -KPX Ncaron Abreve -27 -KPX Ncaron Acircumflex -27 -KPX Ncaron Adieresis -27 -KPX Ncaron Agrave -27 -KPX Ncaron Amacron -27 -KPX Ncaron Aogonek -27 -KPX Ncaron Aring -27 -KPX Ncaron Atilde -27 -KPX Ncommaaccent A -27 -KPX Ncommaaccent Aacute -27 -KPX Ncommaaccent Abreve -27 -KPX Ncommaaccent Acircumflex -27 -KPX Ncommaaccent Adieresis -27 -KPX Ncommaaccent Agrave -27 -KPX Ncommaaccent Amacron -27 -KPX Ncommaaccent Aogonek -27 -KPX Ncommaaccent Aring -27 -KPX Ncommaaccent Atilde -27 -KPX Ntilde A -27 -KPX Ntilde Aacute -27 -KPX Ntilde Abreve -27 -KPX Ntilde Acircumflex -27 -KPX Ntilde Adieresis -27 -KPX Ntilde Agrave -27 -KPX Ntilde Amacron -27 -KPX Ntilde Aogonek -27 -KPX Ntilde Aring -27 -KPX Ntilde Atilde -27 -KPX O A -55 -KPX O Aacute -55 -KPX O Abreve -55 -KPX O Acircumflex -55 -KPX O Adieresis -55 -KPX O Agrave -55 -KPX O Amacron -55 -KPX O Aogonek -55 -KPX O Aring -55 -KPX O Atilde -55 -KPX O T -40 -KPX O Tcaron -40 -KPX O Tcommaaccent -40 -KPX O V -50 -KPX O W -50 -KPX O X -40 -KPX O Y -50 -KPX O Yacute -50 -KPX O Ydieresis -50 -KPX Oacute A -55 -KPX Oacute Aacute -55 -KPX Oacute Abreve -55 -KPX Oacute Acircumflex -55 -KPX Oacute Adieresis -55 -KPX Oacute Agrave -55 -KPX Oacute Amacron -55 -KPX Oacute Aogonek -55 -KPX Oacute Aring -55 -KPX Oacute Atilde -55 -KPX Oacute T -40 -KPX Oacute Tcaron -40 -KPX Oacute Tcommaaccent -40 -KPX Oacute V -50 -KPX Oacute W -50 -KPX Oacute X -40 -KPX Oacute Y -50 -KPX Oacute Yacute -50 -KPX Oacute Ydieresis -50 -KPX Ocircumflex A -55 -KPX Ocircumflex Aacute -55 -KPX Ocircumflex Abreve -55 -KPX Ocircumflex Acircumflex -55 -KPX Ocircumflex Adieresis -55 -KPX Ocircumflex Agrave -55 -KPX Ocircumflex Amacron -55 -KPX Ocircumflex Aogonek -55 -KPX Ocircumflex Aring -55 -KPX Ocircumflex Atilde -55 -KPX Ocircumflex T -40 -KPX Ocircumflex Tcaron -40 -KPX Ocircumflex Tcommaaccent -40 -KPX Ocircumflex V -50 -KPX Ocircumflex W -50 -KPX Ocircumflex X -40 -KPX Ocircumflex Y -50 -KPX Ocircumflex Yacute -50 -KPX Ocircumflex Ydieresis -50 -KPX Odieresis A -55 -KPX Odieresis Aacute -55 -KPX Odieresis Abreve -55 -KPX Odieresis Acircumflex -55 -KPX Odieresis Adieresis -55 -KPX Odieresis Agrave -55 -KPX Odieresis Amacron -55 -KPX Odieresis Aogonek -55 -KPX Odieresis Aring -55 -KPX Odieresis Atilde -55 -KPX Odieresis T -40 -KPX Odieresis Tcaron -40 -KPX Odieresis Tcommaaccent -40 -KPX Odieresis V -50 -KPX Odieresis W -50 -KPX Odieresis X -40 -KPX Odieresis Y -50 -KPX Odieresis Yacute -50 -KPX Odieresis Ydieresis -50 -KPX Ograve A -55 -KPX Ograve Aacute -55 -KPX Ograve Abreve -55 -KPX Ograve Acircumflex -55 -KPX Ograve Adieresis -55 -KPX Ograve Agrave -55 -KPX Ograve Amacron -55 -KPX Ograve Aogonek -55 -KPX Ograve Aring -55 -KPX Ograve Atilde -55 -KPX Ograve T -40 -KPX Ograve Tcaron -40 -KPX Ograve Tcommaaccent -40 -KPX Ograve V -50 -KPX Ograve W -50 -KPX Ograve X -40 -KPX Ograve Y -50 -KPX Ograve Yacute -50 -KPX Ograve Ydieresis -50 -KPX Ohungarumlaut A -55 -KPX Ohungarumlaut Aacute -55 -KPX Ohungarumlaut Abreve -55 -KPX Ohungarumlaut Acircumflex -55 -KPX Ohungarumlaut Adieresis -55 -KPX Ohungarumlaut Agrave -55 -KPX Ohungarumlaut Amacron -55 -KPX Ohungarumlaut Aogonek -55 -KPX Ohungarumlaut Aring -55 -KPX Ohungarumlaut Atilde -55 -KPX Ohungarumlaut T -40 -KPX Ohungarumlaut Tcaron -40 -KPX Ohungarumlaut Tcommaaccent -40 -KPX Ohungarumlaut V -50 -KPX Ohungarumlaut W -50 -KPX Ohungarumlaut X -40 -KPX Ohungarumlaut Y -50 -KPX Ohungarumlaut Yacute -50 -KPX Ohungarumlaut Ydieresis -50 -KPX Omacron A -55 -KPX Omacron Aacute -55 -KPX Omacron Abreve -55 -KPX Omacron Acircumflex -55 -KPX Omacron Adieresis -55 -KPX Omacron Agrave -55 -KPX Omacron Amacron -55 -KPX Omacron Aogonek -55 -KPX Omacron Aring -55 -KPX Omacron Atilde -55 -KPX Omacron T -40 -KPX Omacron Tcaron -40 -KPX Omacron Tcommaaccent -40 -KPX Omacron V -50 -KPX Omacron W -50 -KPX Omacron X -40 -KPX Omacron Y -50 -KPX Omacron Yacute -50 -KPX Omacron Ydieresis -50 -KPX Oslash A -55 -KPX Oslash Aacute -55 -KPX Oslash Abreve -55 -KPX Oslash Acircumflex -55 -KPX Oslash Adieresis -55 -KPX Oslash Agrave -55 -KPX Oslash Amacron -55 -KPX Oslash Aogonek -55 -KPX Oslash Aring -55 -KPX Oslash Atilde -55 -KPX Oslash T -40 -KPX Oslash Tcaron -40 -KPX Oslash Tcommaaccent -40 -KPX Oslash V -50 -KPX Oslash W -50 -KPX Oslash X -40 -KPX Oslash Y -50 -KPX Oslash Yacute -50 -KPX Oslash Ydieresis -50 -KPX Otilde A -55 -KPX Otilde Aacute -55 -KPX Otilde Abreve -55 -KPX Otilde Acircumflex -55 -KPX Otilde Adieresis -55 -KPX Otilde Agrave -55 -KPX Otilde Amacron -55 -KPX Otilde Aogonek -55 -KPX Otilde Aring -55 -KPX Otilde Atilde -55 -KPX Otilde T -40 -KPX Otilde Tcaron -40 -KPX Otilde Tcommaaccent -40 -KPX Otilde V -50 -KPX Otilde W -50 -KPX Otilde X -40 -KPX Otilde Y -50 -KPX Otilde Yacute -50 -KPX Otilde Ydieresis -50 -KPX P A -90 -KPX P Aacute -90 -KPX P Abreve -90 -KPX P Acircumflex -90 -KPX P Adieresis -90 -KPX P Agrave -90 -KPX P Amacron -90 -KPX P Aogonek -90 -KPX P Aring -90 -KPX P Atilde -90 -KPX P a -80 -KPX P aacute -80 -KPX P abreve -80 -KPX P acircumflex -80 -KPX P adieresis -80 -KPX P agrave -80 -KPX P amacron -80 -KPX P aogonek -80 -KPX P aring -80 -KPX P atilde -80 -KPX P comma -135 -KPX P e -80 -KPX P eacute -80 -KPX P ecaron -80 -KPX P ecircumflex -80 -KPX P edieresis -80 -KPX P edotaccent -80 -KPX P egrave -80 -KPX P emacron -80 -KPX P eogonek -80 -KPX P o -80 -KPX P oacute -80 -KPX P ocircumflex -80 -KPX P odieresis -80 -KPX P ograve -80 -KPX P ohungarumlaut -80 -KPX P omacron -80 -KPX P oslash -80 -KPX P otilde -80 -KPX P period -135 -KPX Q U -10 -KPX Q Uacute -10 -KPX Q Ucircumflex -10 -KPX Q Udieresis -10 -KPX Q Ugrave -10 -KPX Q Uhungarumlaut -10 -KPX Q Umacron -10 -KPX Q Uogonek -10 -KPX Q Uring -10 -KPX R O -40 -KPX R Oacute -40 -KPX R Ocircumflex -40 -KPX R Odieresis -40 -KPX R Ograve -40 -KPX R Ohungarumlaut -40 -KPX R Omacron -40 -KPX R Oslash -40 -KPX R Otilde -40 -KPX R U -40 -KPX R Uacute -40 -KPX R Ucircumflex -40 -KPX R Udieresis -40 -KPX R Ugrave -40 -KPX R Uhungarumlaut -40 -KPX R Umacron -40 -KPX R Uogonek -40 -KPX R Uring -40 -KPX R V -18 -KPX R W -18 -KPX R Y -18 -KPX R Yacute -18 -KPX R Ydieresis -18 -KPX Racute O -40 -KPX Racute Oacute -40 -KPX Racute Ocircumflex -40 -KPX Racute Odieresis -40 -KPX Racute Ograve -40 -KPX Racute Ohungarumlaut -40 -KPX Racute Omacron -40 -KPX Racute Oslash -40 -KPX Racute Otilde -40 -KPX Racute U -40 -KPX Racute Uacute -40 -KPX Racute Ucircumflex -40 -KPX Racute Udieresis -40 -KPX Racute Ugrave -40 -KPX Racute Uhungarumlaut -40 -KPX Racute Umacron -40 -KPX Racute Uogonek -40 -KPX Racute Uring -40 -KPX Racute V -18 -KPX Racute W -18 -KPX Racute Y -18 -KPX Racute Yacute -18 -KPX Racute Ydieresis -18 -KPX Rcaron O -40 -KPX Rcaron Oacute -40 -KPX Rcaron Ocircumflex -40 -KPX Rcaron Odieresis -40 -KPX Rcaron Ograve -40 -KPX Rcaron Ohungarumlaut -40 -KPX Rcaron Omacron -40 -KPX Rcaron Oslash -40 -KPX Rcaron Otilde -40 -KPX Rcaron U -40 -KPX Rcaron Uacute -40 -KPX Rcaron Ucircumflex -40 -KPX Rcaron Udieresis -40 -KPX Rcaron Ugrave -40 -KPX Rcaron Uhungarumlaut -40 -KPX Rcaron Umacron -40 -KPX Rcaron Uogonek -40 -KPX Rcaron Uring -40 -KPX Rcaron V -18 -KPX Rcaron W -18 -KPX Rcaron Y -18 -KPX Rcaron Yacute -18 -KPX Rcaron Ydieresis -18 -KPX Rcommaaccent O -40 -KPX Rcommaaccent Oacute -40 -KPX Rcommaaccent Ocircumflex -40 -KPX Rcommaaccent Odieresis -40 -KPX Rcommaaccent Ograve -40 -KPX Rcommaaccent Ohungarumlaut -40 -KPX Rcommaaccent Omacron -40 -KPX Rcommaaccent Oslash -40 -KPX Rcommaaccent Otilde -40 -KPX Rcommaaccent U -40 -KPX Rcommaaccent Uacute -40 -KPX Rcommaaccent Ucircumflex -40 -KPX Rcommaaccent Udieresis -40 -KPX Rcommaaccent Ugrave -40 -KPX Rcommaaccent Uhungarumlaut -40 -KPX Rcommaaccent Umacron -40 -KPX Rcommaaccent Uogonek -40 -KPX Rcommaaccent Uring -40 -KPX Rcommaaccent V -18 -KPX Rcommaaccent W -18 -KPX Rcommaaccent Y -18 -KPX Rcommaaccent Yacute -18 -KPX Rcommaaccent Ydieresis -18 -KPX T A -50 -KPX T Aacute -50 -KPX T Abreve -50 -KPX T Acircumflex -50 -KPX T Adieresis -50 -KPX T Agrave -50 -KPX T Amacron -50 -KPX T Aogonek -50 -KPX T Aring -50 -KPX T Atilde -50 -KPX T O -18 -KPX T Oacute -18 -KPX T Ocircumflex -18 -KPX T Odieresis -18 -KPX T Ograve -18 -KPX T Ohungarumlaut -18 -KPX T Omacron -18 -KPX T Oslash -18 -KPX T Otilde -18 -KPX T a -92 -KPX T aacute -92 -KPX T abreve -92 -KPX T acircumflex -92 -KPX T adieresis -92 -KPX T agrave -92 -KPX T amacron -92 -KPX T aogonek -92 -KPX T aring -92 -KPX T atilde -92 -KPX T colon -55 -KPX T comma -74 -KPX T e -92 -KPX T eacute -92 -KPX T ecaron -92 -KPX T ecircumflex -52 -KPX T edieresis -52 -KPX T edotaccent -92 -KPX T egrave -52 -KPX T emacron -52 -KPX T eogonek -92 -KPX T hyphen -74 -KPX T i -55 -KPX T iacute -55 -KPX T iogonek -55 -KPX T o -92 -KPX T oacute -92 -KPX T ocircumflex -92 -KPX T odieresis -92 -KPX T ograve -92 -KPX T ohungarumlaut -92 -KPX T omacron -92 -KPX T oslash -92 -KPX T otilde -92 -KPX T period -74 -KPX T r -55 -KPX T racute -55 -KPX T rcaron -55 -KPX T rcommaaccent -55 -KPX T semicolon -65 -KPX T u -55 -KPX T uacute -55 -KPX T ucircumflex -55 -KPX T udieresis -55 -KPX T ugrave -55 -KPX T uhungarumlaut -55 -KPX T umacron -55 -KPX T uogonek -55 -KPX T uring -55 -KPX T w -74 -KPX T y -74 -KPX T yacute -74 -KPX T ydieresis -34 -KPX Tcaron A -50 -KPX Tcaron Aacute -50 -KPX Tcaron Abreve -50 -KPX Tcaron Acircumflex -50 -KPX Tcaron Adieresis -50 -KPX Tcaron Agrave -50 -KPX Tcaron Amacron -50 -KPX Tcaron Aogonek -50 -KPX Tcaron Aring -50 -KPX Tcaron Atilde -50 -KPX Tcaron O -18 -KPX Tcaron Oacute -18 -KPX Tcaron Ocircumflex -18 -KPX Tcaron Odieresis -18 -KPX Tcaron Ograve -18 -KPX Tcaron Ohungarumlaut -18 -KPX Tcaron Omacron -18 -KPX Tcaron Oslash -18 -KPX Tcaron Otilde -18 -KPX Tcaron a -92 -KPX Tcaron aacute -92 -KPX Tcaron abreve -92 -KPX Tcaron acircumflex -92 -KPX Tcaron adieresis -92 -KPX Tcaron agrave -92 -KPX Tcaron amacron -92 -KPX Tcaron aogonek -92 -KPX Tcaron aring -92 -KPX Tcaron atilde -92 -KPX Tcaron colon -55 -KPX Tcaron comma -74 -KPX Tcaron e -92 -KPX Tcaron eacute -92 -KPX Tcaron ecaron -92 -KPX Tcaron ecircumflex -52 -KPX Tcaron edieresis -52 -KPX Tcaron edotaccent -92 -KPX Tcaron egrave -52 -KPX Tcaron emacron -52 -KPX Tcaron eogonek -92 -KPX Tcaron hyphen -74 -KPX Tcaron i -55 -KPX Tcaron iacute -55 -KPX Tcaron iogonek -55 -KPX Tcaron o -92 -KPX Tcaron oacute -92 -KPX Tcaron ocircumflex -92 -KPX Tcaron odieresis -92 -KPX Tcaron ograve -92 -KPX Tcaron ohungarumlaut -92 -KPX Tcaron omacron -92 -KPX Tcaron oslash -92 -KPX Tcaron otilde -92 -KPX Tcaron period -74 -KPX Tcaron r -55 -KPX Tcaron racute -55 -KPX Tcaron rcaron -55 -KPX Tcaron rcommaaccent -55 -KPX Tcaron semicolon -65 -KPX Tcaron u -55 -KPX Tcaron uacute -55 -KPX Tcaron ucircumflex -55 -KPX Tcaron udieresis -55 -KPX Tcaron ugrave -55 -KPX Tcaron uhungarumlaut -55 -KPX Tcaron umacron -55 -KPX Tcaron uogonek -55 -KPX Tcaron uring -55 -KPX Tcaron w -74 -KPX Tcaron y -74 -KPX Tcaron yacute -74 -KPX Tcaron ydieresis -34 -KPX Tcommaaccent A -50 -KPX Tcommaaccent Aacute -50 -KPX Tcommaaccent Abreve -50 -KPX Tcommaaccent Acircumflex -50 -KPX Tcommaaccent Adieresis -50 -KPX Tcommaaccent Agrave -50 -KPX Tcommaaccent Amacron -50 -KPX Tcommaaccent Aogonek -50 -KPX Tcommaaccent Aring -50 -KPX Tcommaaccent Atilde -50 -KPX Tcommaaccent O -18 -KPX Tcommaaccent Oacute -18 -KPX Tcommaaccent Ocircumflex -18 -KPX Tcommaaccent Odieresis -18 -KPX Tcommaaccent Ograve -18 -KPX Tcommaaccent Ohungarumlaut -18 -KPX Tcommaaccent Omacron -18 -KPX Tcommaaccent Oslash -18 -KPX Tcommaaccent Otilde -18 -KPX Tcommaaccent a -92 -KPX Tcommaaccent aacute -92 -KPX Tcommaaccent abreve -92 -KPX Tcommaaccent acircumflex -92 -KPX Tcommaaccent adieresis -92 -KPX Tcommaaccent agrave -92 -KPX Tcommaaccent amacron -92 -KPX Tcommaaccent aogonek -92 -KPX Tcommaaccent aring -92 -KPX Tcommaaccent atilde -92 -KPX Tcommaaccent colon -55 -KPX Tcommaaccent comma -74 -KPX Tcommaaccent e -92 -KPX Tcommaaccent eacute -92 -KPX Tcommaaccent ecaron -92 -KPX Tcommaaccent ecircumflex -52 -KPX Tcommaaccent edieresis -52 -KPX Tcommaaccent edotaccent -92 -KPX Tcommaaccent egrave -52 -KPX Tcommaaccent emacron -52 -KPX Tcommaaccent eogonek -92 -KPX Tcommaaccent hyphen -74 -KPX Tcommaaccent i -55 -KPX Tcommaaccent iacute -55 -KPX Tcommaaccent iogonek -55 -KPX Tcommaaccent o -92 -KPX Tcommaaccent oacute -92 -KPX Tcommaaccent ocircumflex -92 -KPX Tcommaaccent odieresis -92 -KPX Tcommaaccent ograve -92 -KPX Tcommaaccent ohungarumlaut -92 -KPX Tcommaaccent omacron -92 -KPX Tcommaaccent oslash -92 -KPX Tcommaaccent otilde -92 -KPX Tcommaaccent period -74 -KPX Tcommaaccent r -55 -KPX Tcommaaccent racute -55 -KPX Tcommaaccent rcaron -55 -KPX Tcommaaccent rcommaaccent -55 -KPX Tcommaaccent semicolon -65 -KPX Tcommaaccent u -55 -KPX Tcommaaccent uacute -55 -KPX Tcommaaccent ucircumflex -55 -KPX Tcommaaccent udieresis -55 -KPX Tcommaaccent ugrave -55 -KPX Tcommaaccent uhungarumlaut -55 -KPX Tcommaaccent umacron -55 -KPX Tcommaaccent uogonek -55 -KPX Tcommaaccent uring -55 -KPX Tcommaaccent w -74 -KPX Tcommaaccent y -74 -KPX Tcommaaccent yacute -74 -KPX Tcommaaccent ydieresis -34 -KPX U A -40 -KPX U Aacute -40 -KPX U Abreve -40 -KPX U Acircumflex -40 -KPX U Adieresis -40 -KPX U Agrave -40 -KPX U Amacron -40 -KPX U Aogonek -40 -KPX U Aring -40 -KPX U Atilde -40 -KPX U comma -25 -KPX U period -25 -KPX Uacute A -40 -KPX Uacute Aacute -40 -KPX Uacute Abreve -40 -KPX Uacute Acircumflex -40 -KPX Uacute Adieresis -40 -KPX Uacute Agrave -40 -KPX Uacute Amacron -40 -KPX Uacute Aogonek -40 -KPX Uacute Aring -40 -KPX Uacute Atilde -40 -KPX Uacute comma -25 -KPX Uacute period -25 -KPX Ucircumflex A -40 -KPX Ucircumflex Aacute -40 -KPX Ucircumflex Abreve -40 -KPX Ucircumflex Acircumflex -40 -KPX Ucircumflex Adieresis -40 -KPX Ucircumflex Agrave -40 -KPX Ucircumflex Amacron -40 -KPX Ucircumflex Aogonek -40 -KPX Ucircumflex Aring -40 -KPX Ucircumflex Atilde -40 -KPX Ucircumflex comma -25 -KPX Ucircumflex period -25 -KPX Udieresis A -40 -KPX Udieresis Aacute -40 -KPX Udieresis Abreve -40 -KPX Udieresis Acircumflex -40 -KPX Udieresis Adieresis -40 -KPX Udieresis Agrave -40 -KPX Udieresis Amacron -40 -KPX Udieresis Aogonek -40 -KPX Udieresis Aring -40 -KPX Udieresis Atilde -40 -KPX Udieresis comma -25 -KPX Udieresis period -25 -KPX Ugrave A -40 -KPX Ugrave Aacute -40 -KPX Ugrave Abreve -40 -KPX Ugrave Acircumflex -40 -KPX Ugrave Adieresis -40 -KPX Ugrave Agrave -40 -KPX Ugrave Amacron -40 -KPX Ugrave Aogonek -40 -KPX Ugrave Aring -40 -KPX Ugrave Atilde -40 -KPX Ugrave comma -25 -KPX Ugrave period -25 -KPX Uhungarumlaut A -40 -KPX Uhungarumlaut Aacute -40 -KPX Uhungarumlaut Abreve -40 -KPX Uhungarumlaut Acircumflex -40 -KPX Uhungarumlaut Adieresis -40 -KPX Uhungarumlaut Agrave -40 -KPX Uhungarumlaut Amacron -40 -KPX Uhungarumlaut Aogonek -40 -KPX Uhungarumlaut Aring -40 -KPX Uhungarumlaut Atilde -40 -KPX Uhungarumlaut comma -25 -KPX Uhungarumlaut period -25 -KPX Umacron A -40 -KPX Umacron Aacute -40 -KPX Umacron Abreve -40 -KPX Umacron Acircumflex -40 -KPX Umacron Adieresis -40 -KPX Umacron Agrave -40 -KPX Umacron Amacron -40 -KPX Umacron Aogonek -40 -KPX Umacron Aring -40 -KPX Umacron Atilde -40 -KPX Umacron comma -25 -KPX Umacron period -25 -KPX Uogonek A -40 -KPX Uogonek Aacute -40 -KPX Uogonek Abreve -40 -KPX Uogonek Acircumflex -40 -KPX Uogonek Adieresis -40 -KPX Uogonek Agrave -40 -KPX Uogonek Amacron -40 -KPX Uogonek Aogonek -40 -KPX Uogonek Aring -40 -KPX Uogonek Atilde -40 -KPX Uogonek comma -25 -KPX Uogonek period -25 -KPX Uring A -40 -KPX Uring Aacute -40 -KPX Uring Abreve -40 -KPX Uring Acircumflex -40 -KPX Uring Adieresis -40 -KPX Uring Agrave -40 -KPX Uring Amacron -40 -KPX Uring Aogonek -40 -KPX Uring Aring -40 -KPX Uring Atilde -40 -KPX Uring comma -25 -KPX Uring period -25 -KPX V A -60 -KPX V Aacute -60 -KPX V Abreve -60 -KPX V Acircumflex -60 -KPX V Adieresis -60 -KPX V Agrave -60 -KPX V Amacron -60 -KPX V Aogonek -60 -KPX V Aring -60 -KPX V Atilde -60 -KPX V O -30 -KPX V Oacute -30 -KPX V Ocircumflex -30 -KPX V Odieresis -30 -KPX V Ograve -30 -KPX V Ohungarumlaut -30 -KPX V Omacron -30 -KPX V Oslash -30 -KPX V Otilde -30 -KPX V a -111 -KPX V aacute -111 -KPX V abreve -111 -KPX V acircumflex -111 -KPX V adieresis -111 -KPX V agrave -111 -KPX V amacron -111 -KPX V aogonek -111 -KPX V aring -111 -KPX V atilde -111 -KPX V colon -65 -KPX V comma -129 -KPX V e -111 -KPX V eacute -111 -KPX V ecaron -111 -KPX V ecircumflex -111 -KPX V edieresis -71 -KPX V edotaccent -111 -KPX V egrave -71 -KPX V emacron -71 -KPX V eogonek -111 -KPX V hyphen -55 -KPX V i -74 -KPX V iacute -74 -KPX V icircumflex -34 -KPX V idieresis -34 -KPX V igrave -34 -KPX V imacron -34 -KPX V iogonek -74 -KPX V o -111 -KPX V oacute -111 -KPX V ocircumflex -111 -KPX V odieresis -111 -KPX V ograve -111 -KPX V ohungarumlaut -111 -KPX V omacron -111 -KPX V oslash -111 -KPX V otilde -111 -KPX V period -129 -KPX V semicolon -74 -KPX V u -74 -KPX V uacute -74 -KPX V ucircumflex -74 -KPX V udieresis -74 -KPX V ugrave -74 -KPX V uhungarumlaut -74 -KPX V umacron -74 -KPX V uogonek -74 -KPX V uring -74 -KPX W A -60 -KPX W Aacute -60 -KPX W Abreve -60 -KPX W Acircumflex -60 -KPX W Adieresis -60 -KPX W Agrave -60 -KPX W Amacron -60 -KPX W Aogonek -60 -KPX W Aring -60 -KPX W Atilde -60 -KPX W O -25 -KPX W Oacute -25 -KPX W Ocircumflex -25 -KPX W Odieresis -25 -KPX W Ograve -25 -KPX W Ohungarumlaut -25 -KPX W Omacron -25 -KPX W Oslash -25 -KPX W Otilde -25 -KPX W a -92 -KPX W aacute -92 -KPX W abreve -92 -KPX W acircumflex -92 -KPX W adieresis -92 -KPX W agrave -92 -KPX W amacron -92 -KPX W aogonek -92 -KPX W aring -92 -KPX W atilde -92 -KPX W colon -65 -KPX W comma -92 -KPX W e -92 -KPX W eacute -92 -KPX W ecaron -92 -KPX W ecircumflex -92 -KPX W edieresis -52 -KPX W edotaccent -92 -KPX W egrave -52 -KPX W emacron -52 -KPX W eogonek -92 -KPX W hyphen -37 -KPX W i -55 -KPX W iacute -55 -KPX W iogonek -55 -KPX W o -92 -KPX W oacute -92 -KPX W ocircumflex -92 -KPX W odieresis -92 -KPX W ograve -92 -KPX W ohungarumlaut -92 -KPX W omacron -92 -KPX W oslash -92 -KPX W otilde -92 -KPX W period -92 -KPX W semicolon -65 -KPX W u -55 -KPX W uacute -55 -KPX W ucircumflex -55 -KPX W udieresis -55 -KPX W ugrave -55 -KPX W uhungarumlaut -55 -KPX W umacron -55 -KPX W uogonek -55 -KPX W uring -55 -KPX W y -70 -KPX W yacute -70 -KPX W ydieresis -70 -KPX Y A -50 -KPX Y Aacute -50 -KPX Y Abreve -50 -KPX Y Acircumflex -50 -KPX Y Adieresis -50 -KPX Y Agrave -50 -KPX Y Amacron -50 -KPX Y Aogonek -50 -KPX Y Aring -50 -KPX Y Atilde -50 -KPX Y O -15 -KPX Y Oacute -15 -KPX Y Ocircumflex -15 -KPX Y Odieresis -15 -KPX Y Ograve -15 -KPX Y Ohungarumlaut -15 -KPX Y Omacron -15 -KPX Y Oslash -15 -KPX Y Otilde -15 -KPX Y a -92 -KPX Y aacute -92 -KPX Y abreve -92 -KPX Y acircumflex -92 -KPX Y adieresis -92 -KPX Y agrave -92 -KPX Y amacron -92 -KPX Y aogonek -92 -KPX Y aring -92 -KPX Y atilde -92 -KPX Y colon -65 -KPX Y comma -92 -KPX Y e -92 -KPX Y eacute -92 -KPX Y ecaron -92 -KPX Y ecircumflex -92 -KPX Y edieresis -52 -KPX Y edotaccent -92 -KPX Y egrave -52 -KPX Y emacron -52 -KPX Y eogonek -92 -KPX Y hyphen -74 -KPX Y i -74 -KPX Y iacute -74 -KPX Y icircumflex -34 -KPX Y idieresis -34 -KPX Y igrave -34 -KPX Y imacron -34 -KPX Y iogonek -74 -KPX Y o -92 -KPX Y oacute -92 -KPX Y ocircumflex -92 -KPX Y odieresis -92 -KPX Y ograve -92 -KPX Y ohungarumlaut -92 -KPX Y omacron -92 -KPX Y oslash -92 -KPX Y otilde -92 -KPX Y period -92 -KPX Y semicolon -65 -KPX Y u -92 -KPX Y uacute -92 -KPX Y ucircumflex -92 -KPX Y udieresis -92 -KPX Y ugrave -92 -KPX Y uhungarumlaut -92 -KPX Y umacron -92 -KPX Y uogonek -92 -KPX Y uring -92 -KPX Yacute A -50 -KPX Yacute Aacute -50 -KPX Yacute Abreve -50 -KPX Yacute Acircumflex -50 -KPX Yacute Adieresis -50 -KPX Yacute Agrave -50 -KPX Yacute Amacron -50 -KPX Yacute Aogonek -50 -KPX Yacute Aring -50 -KPX Yacute Atilde -50 -KPX Yacute O -15 -KPX Yacute Oacute -15 -KPX Yacute Ocircumflex -15 -KPX Yacute Odieresis -15 -KPX Yacute Ograve -15 -KPX Yacute Ohungarumlaut -15 -KPX Yacute Omacron -15 -KPX Yacute Oslash -15 -KPX Yacute Otilde -15 -KPX Yacute a -92 -KPX Yacute aacute -92 -KPX Yacute abreve -92 -KPX Yacute acircumflex -92 -KPX Yacute adieresis -92 -KPX Yacute agrave -92 -KPX Yacute amacron -92 -KPX Yacute aogonek -92 -KPX Yacute aring -92 -KPX Yacute atilde -92 -KPX Yacute colon -65 -KPX Yacute comma -92 -KPX Yacute e -92 -KPX Yacute eacute -92 -KPX Yacute ecaron -92 -KPX Yacute ecircumflex -92 -KPX Yacute edieresis -52 -KPX Yacute edotaccent -92 -KPX Yacute egrave -52 -KPX Yacute emacron -52 -KPX Yacute eogonek -92 -KPX Yacute hyphen -74 -KPX Yacute i -74 -KPX Yacute iacute -74 -KPX Yacute icircumflex -34 -KPX Yacute idieresis -34 -KPX Yacute igrave -34 -KPX Yacute imacron -34 -KPX Yacute iogonek -74 -KPX Yacute o -92 -KPX Yacute oacute -92 -KPX Yacute ocircumflex -92 -KPX Yacute odieresis -92 -KPX Yacute ograve -92 -KPX Yacute ohungarumlaut -92 -KPX Yacute omacron -92 -KPX Yacute oslash -92 -KPX Yacute otilde -92 -KPX Yacute period -92 -KPX Yacute semicolon -65 -KPX Yacute u -92 -KPX Yacute uacute -92 -KPX Yacute ucircumflex -92 -KPX Yacute udieresis -92 -KPX Yacute ugrave -92 -KPX Yacute uhungarumlaut -92 -KPX Yacute umacron -92 -KPX Yacute uogonek -92 -KPX Yacute uring -92 -KPX Ydieresis A -50 -KPX Ydieresis Aacute -50 -KPX Ydieresis Abreve -50 -KPX Ydieresis Acircumflex -50 -KPX Ydieresis Adieresis -50 -KPX Ydieresis Agrave -50 -KPX Ydieresis Amacron -50 -KPX Ydieresis Aogonek -50 -KPX Ydieresis Aring -50 -KPX Ydieresis Atilde -50 -KPX Ydieresis O -15 -KPX Ydieresis Oacute -15 -KPX Ydieresis Ocircumflex -15 -KPX Ydieresis Odieresis -15 -KPX Ydieresis Ograve -15 -KPX Ydieresis Ohungarumlaut -15 -KPX Ydieresis Omacron -15 -KPX Ydieresis Oslash -15 -KPX Ydieresis Otilde -15 -KPX Ydieresis a -92 -KPX Ydieresis aacute -92 -KPX Ydieresis abreve -92 -KPX Ydieresis acircumflex -92 -KPX Ydieresis adieresis -92 -KPX Ydieresis agrave -92 -KPX Ydieresis amacron -92 -KPX Ydieresis aogonek -92 -KPX Ydieresis aring -92 -KPX Ydieresis atilde -92 -KPX Ydieresis colon -65 -KPX Ydieresis comma -92 -KPX Ydieresis e -92 -KPX Ydieresis eacute -92 -KPX Ydieresis ecaron -92 -KPX Ydieresis ecircumflex -92 -KPX Ydieresis edieresis -52 -KPX Ydieresis edotaccent -92 -KPX Ydieresis egrave -52 -KPX Ydieresis emacron -52 -KPX Ydieresis eogonek -92 -KPX Ydieresis hyphen -74 -KPX Ydieresis i -74 -KPX Ydieresis iacute -74 -KPX Ydieresis icircumflex -34 -KPX Ydieresis idieresis -34 -KPX Ydieresis igrave -34 -KPX Ydieresis imacron -34 -KPX Ydieresis iogonek -74 -KPX Ydieresis o -92 -KPX Ydieresis oacute -92 -KPX Ydieresis ocircumflex -92 -KPX Ydieresis odieresis -92 -KPX Ydieresis ograve -92 -KPX Ydieresis ohungarumlaut -92 -KPX Ydieresis omacron -92 -KPX Ydieresis oslash -92 -KPX Ydieresis otilde -92 -KPX Ydieresis period -92 -KPX Ydieresis semicolon -65 -KPX Ydieresis u -92 -KPX Ydieresis uacute -92 -KPX Ydieresis ucircumflex -92 -KPX Ydieresis udieresis -92 -KPX Ydieresis ugrave -92 -KPX Ydieresis uhungarumlaut -92 -KPX Ydieresis umacron -92 -KPX Ydieresis uogonek -92 -KPX Ydieresis uring -92 -KPX a g -10 -KPX a gbreve -10 -KPX a gcommaaccent -10 -KPX aacute g -10 -KPX aacute gbreve -10 -KPX aacute gcommaaccent -10 -KPX abreve g -10 -KPX abreve gbreve -10 -KPX abreve gcommaaccent -10 -KPX acircumflex g -10 -KPX acircumflex gbreve -10 -KPX acircumflex gcommaaccent -10 -KPX adieresis g -10 -KPX adieresis gbreve -10 -KPX adieresis gcommaaccent -10 -KPX agrave g -10 -KPX agrave gbreve -10 -KPX agrave gcommaaccent -10 -KPX amacron g -10 -KPX amacron gbreve -10 -KPX amacron gcommaaccent -10 -KPX aogonek g -10 -KPX aogonek gbreve -10 -KPX aogonek gcommaaccent -10 -KPX aring g -10 -KPX aring gbreve -10 -KPX aring gcommaaccent -10 -KPX atilde g -10 -KPX atilde gbreve -10 -KPX atilde gcommaaccent -10 -KPX b period -40 -KPX b u -20 -KPX b uacute -20 -KPX b ucircumflex -20 -KPX b udieresis -20 -KPX b ugrave -20 -KPX b uhungarumlaut -20 -KPX b umacron -20 -KPX b uogonek -20 -KPX b uring -20 -KPX c h -15 -KPX c k -20 -KPX c kcommaaccent -20 -KPX cacute h -15 -KPX cacute k -20 -KPX cacute kcommaaccent -20 -KPX ccaron h -15 -KPX ccaron k -20 -KPX ccaron kcommaaccent -20 -KPX ccedilla h -15 -KPX ccedilla k -20 -KPX ccedilla kcommaaccent -20 -KPX comma quotedblright -140 -KPX comma quoteright -140 -KPX e comma -10 -KPX e g -40 -KPX e gbreve -40 -KPX e gcommaaccent -40 -KPX e period -15 -KPX e v -15 -KPX e w -15 -KPX e x -20 -KPX e y -30 -KPX e yacute -30 -KPX e ydieresis -30 -KPX eacute comma -10 -KPX eacute g -40 -KPX eacute gbreve -40 -KPX eacute gcommaaccent -40 -KPX eacute period -15 -KPX eacute v -15 -KPX eacute w -15 -KPX eacute x -20 -KPX eacute y -30 -KPX eacute yacute -30 -KPX eacute ydieresis -30 -KPX ecaron comma -10 -KPX ecaron g -40 -KPX ecaron gbreve -40 -KPX ecaron gcommaaccent -40 -KPX ecaron period -15 -KPX ecaron v -15 -KPX ecaron w -15 -KPX ecaron x -20 -KPX ecaron y -30 -KPX ecaron yacute -30 -KPX ecaron ydieresis -30 -KPX ecircumflex comma -10 -KPX ecircumflex g -40 -KPX ecircumflex gbreve -40 -KPX ecircumflex gcommaaccent -40 -KPX ecircumflex period -15 -KPX ecircumflex v -15 -KPX ecircumflex w -15 -KPX ecircumflex x -20 -KPX ecircumflex y -30 -KPX ecircumflex yacute -30 -KPX ecircumflex ydieresis -30 -KPX edieresis comma -10 -KPX edieresis g -40 -KPX edieresis gbreve -40 -KPX edieresis gcommaaccent -40 -KPX edieresis period -15 -KPX edieresis v -15 -KPX edieresis w -15 -KPX edieresis x -20 -KPX edieresis y -30 -KPX edieresis yacute -30 -KPX edieresis ydieresis -30 -KPX edotaccent comma -10 -KPX edotaccent g -40 -KPX edotaccent gbreve -40 -KPX edotaccent gcommaaccent -40 -KPX edotaccent period -15 -KPX edotaccent v -15 -KPX edotaccent w -15 -KPX edotaccent x -20 -KPX edotaccent y -30 -KPX edotaccent yacute -30 -KPX edotaccent ydieresis -30 -KPX egrave comma -10 -KPX egrave g -40 -KPX egrave gbreve -40 -KPX egrave gcommaaccent -40 -KPX egrave period -15 -KPX egrave v -15 -KPX egrave w -15 -KPX egrave x -20 -KPX egrave y -30 -KPX egrave yacute -30 -KPX egrave ydieresis -30 -KPX emacron comma -10 -KPX emacron g -40 -KPX emacron gbreve -40 -KPX emacron gcommaaccent -40 -KPX emacron period -15 -KPX emacron v -15 -KPX emacron w -15 -KPX emacron x -20 -KPX emacron y -30 -KPX emacron yacute -30 -KPX emacron ydieresis -30 -KPX eogonek comma -10 -KPX eogonek g -40 -KPX eogonek gbreve -40 -KPX eogonek gcommaaccent -40 -KPX eogonek period -15 -KPX eogonek v -15 -KPX eogonek w -15 -KPX eogonek x -20 -KPX eogonek y -30 -KPX eogonek yacute -30 -KPX eogonek ydieresis -30 -KPX f comma -10 -KPX f dotlessi -60 -KPX f f -18 -KPX f i -20 -KPX f iogonek -20 -KPX f period -15 -KPX f quoteright 92 -KPX g comma -10 -KPX g e -10 -KPX g eacute -10 -KPX g ecaron -10 -KPX g ecircumflex -10 -KPX g edieresis -10 -KPX g edotaccent -10 -KPX g egrave -10 -KPX g emacron -10 -KPX g eogonek -10 -KPX g g -10 -KPX g gbreve -10 -KPX g gcommaaccent -10 -KPX g period -15 -KPX gbreve comma -10 -KPX gbreve e -10 -KPX gbreve eacute -10 -KPX gbreve ecaron -10 -KPX gbreve ecircumflex -10 -KPX gbreve edieresis -10 -KPX gbreve edotaccent -10 -KPX gbreve egrave -10 -KPX gbreve emacron -10 -KPX gbreve eogonek -10 -KPX gbreve g -10 -KPX gbreve gbreve -10 -KPX gbreve gcommaaccent -10 -KPX gbreve period -15 -KPX gcommaaccent comma -10 -KPX gcommaaccent e -10 -KPX gcommaaccent eacute -10 -KPX gcommaaccent ecaron -10 -KPX gcommaaccent ecircumflex -10 -KPX gcommaaccent edieresis -10 -KPX gcommaaccent edotaccent -10 -KPX gcommaaccent egrave -10 -KPX gcommaaccent emacron -10 -KPX gcommaaccent eogonek -10 -KPX gcommaaccent g -10 -KPX gcommaaccent gbreve -10 -KPX gcommaaccent gcommaaccent -10 -KPX gcommaaccent period -15 -KPX k e -10 -KPX k eacute -10 -KPX k ecaron -10 -KPX k ecircumflex -10 -KPX k edieresis -10 -KPX k edotaccent -10 -KPX k egrave -10 -KPX k emacron -10 -KPX k eogonek -10 -KPX k o -10 -KPX k oacute -10 -KPX k ocircumflex -10 -KPX k odieresis -10 -KPX k ograve -10 -KPX k ohungarumlaut -10 -KPX k omacron -10 -KPX k oslash -10 -KPX k otilde -10 -KPX k y -10 -KPX k yacute -10 -KPX k ydieresis -10 -KPX kcommaaccent e -10 -KPX kcommaaccent eacute -10 -KPX kcommaaccent ecaron -10 -KPX kcommaaccent ecircumflex -10 -KPX kcommaaccent edieresis -10 -KPX kcommaaccent edotaccent -10 -KPX kcommaaccent egrave -10 -KPX kcommaaccent emacron -10 -KPX kcommaaccent eogonek -10 -KPX kcommaaccent o -10 -KPX kcommaaccent oacute -10 -KPX kcommaaccent ocircumflex -10 -KPX kcommaaccent odieresis -10 -KPX kcommaaccent ograve -10 -KPX kcommaaccent ohungarumlaut -10 -KPX kcommaaccent omacron -10 -KPX kcommaaccent oslash -10 -KPX kcommaaccent otilde -10 -KPX kcommaaccent y -10 -KPX kcommaaccent yacute -10 -KPX kcommaaccent ydieresis -10 -KPX n v -40 -KPX nacute v -40 -KPX ncaron v -40 -KPX ncommaaccent v -40 -KPX ntilde v -40 -KPX o g -10 -KPX o gbreve -10 -KPX o gcommaaccent -10 -KPX o v -10 -KPX oacute g -10 -KPX oacute gbreve -10 -KPX oacute gcommaaccent -10 -KPX oacute v -10 -KPX ocircumflex g -10 -KPX ocircumflex gbreve -10 -KPX ocircumflex gcommaaccent -10 -KPX ocircumflex v -10 -KPX odieresis g -10 -KPX odieresis gbreve -10 -KPX odieresis gcommaaccent -10 -KPX odieresis v -10 -KPX ograve g -10 -KPX ograve gbreve -10 -KPX ograve gcommaaccent -10 -KPX ograve v -10 -KPX ohungarumlaut g -10 -KPX ohungarumlaut gbreve -10 -KPX ohungarumlaut gcommaaccent -10 -KPX ohungarumlaut v -10 -KPX omacron g -10 -KPX omacron gbreve -10 -KPX omacron gcommaaccent -10 -KPX omacron v -10 -KPX oslash g -10 -KPX oslash gbreve -10 -KPX oslash gcommaaccent -10 -KPX oslash v -10 -KPX otilde g -10 -KPX otilde gbreve -10 -KPX otilde gcommaaccent -10 -KPX otilde v -10 -KPX period quotedblright -140 -KPX period quoteright -140 -KPX quoteleft quoteleft -111 -KPX quoteright d -25 -KPX quoteright dcroat -25 -KPX quoteright quoteright -111 -KPX quoteright r -25 -KPX quoteright racute -25 -KPX quoteright rcaron -25 -KPX quoteright rcommaaccent -25 -KPX quoteright s -40 -KPX quoteright sacute -40 -KPX quoteright scaron -40 -KPX quoteright scedilla -40 -KPX quoteright scommaaccent -40 -KPX quoteright space -111 -KPX quoteright t -30 -KPX quoteright tcommaaccent -30 -KPX quoteright v -10 -KPX r a -15 -KPX r aacute -15 -KPX r abreve -15 -KPX r acircumflex -15 -KPX r adieresis -15 -KPX r agrave -15 -KPX r amacron -15 -KPX r aogonek -15 -KPX r aring -15 -KPX r atilde -15 -KPX r c -37 -KPX r cacute -37 -KPX r ccaron -37 -KPX r ccedilla -37 -KPX r comma -111 -KPX r d -37 -KPX r dcroat -37 -KPX r e -37 -KPX r eacute -37 -KPX r ecaron -37 -KPX r ecircumflex -37 -KPX r edieresis -37 -KPX r edotaccent -37 -KPX r egrave -37 -KPX r emacron -37 -KPX r eogonek -37 -KPX r g -37 -KPX r gbreve -37 -KPX r gcommaaccent -37 -KPX r hyphen -20 -KPX r o -45 -KPX r oacute -45 -KPX r ocircumflex -45 -KPX r odieresis -45 -KPX r ograve -45 -KPX r ohungarumlaut -45 -KPX r omacron -45 -KPX r oslash -45 -KPX r otilde -45 -KPX r period -111 -KPX r q -37 -KPX r s -10 -KPX r sacute -10 -KPX r scaron -10 -KPX r scedilla -10 -KPX r scommaaccent -10 -KPX racute a -15 -KPX racute aacute -15 -KPX racute abreve -15 -KPX racute acircumflex -15 -KPX racute adieresis -15 -KPX racute agrave -15 -KPX racute amacron -15 -KPX racute aogonek -15 -KPX racute aring -15 -KPX racute atilde -15 -KPX racute c -37 -KPX racute cacute -37 -KPX racute ccaron -37 -KPX racute ccedilla -37 -KPX racute comma -111 -KPX racute d -37 -KPX racute dcroat -37 -KPX racute e -37 -KPX racute eacute -37 -KPX racute ecaron -37 -KPX racute ecircumflex -37 -KPX racute edieresis -37 -KPX racute edotaccent -37 -KPX racute egrave -37 -KPX racute emacron -37 -KPX racute eogonek -37 -KPX racute g -37 -KPX racute gbreve -37 -KPX racute gcommaaccent -37 -KPX racute hyphen -20 -KPX racute o -45 -KPX racute oacute -45 -KPX racute ocircumflex -45 -KPX racute odieresis -45 -KPX racute ograve -45 -KPX racute ohungarumlaut -45 -KPX racute omacron -45 -KPX racute oslash -45 -KPX racute otilde -45 -KPX racute period -111 -KPX racute q -37 -KPX racute s -10 -KPX racute sacute -10 -KPX racute scaron -10 -KPX racute scedilla -10 -KPX racute scommaaccent -10 -KPX rcaron a -15 -KPX rcaron aacute -15 -KPX rcaron abreve -15 -KPX rcaron acircumflex -15 -KPX rcaron adieresis -15 -KPX rcaron agrave -15 -KPX rcaron amacron -15 -KPX rcaron aogonek -15 -KPX rcaron aring -15 -KPX rcaron atilde -15 -KPX rcaron c -37 -KPX rcaron cacute -37 -KPX rcaron ccaron -37 -KPX rcaron ccedilla -37 -KPX rcaron comma -111 -KPX rcaron d -37 -KPX rcaron dcroat -37 -KPX rcaron e -37 -KPX rcaron eacute -37 -KPX rcaron ecaron -37 -KPX rcaron ecircumflex -37 -KPX rcaron edieresis -37 -KPX rcaron edotaccent -37 -KPX rcaron egrave -37 -KPX rcaron emacron -37 -KPX rcaron eogonek -37 -KPX rcaron g -37 -KPX rcaron gbreve -37 -KPX rcaron gcommaaccent -37 -KPX rcaron hyphen -20 -KPX rcaron o -45 -KPX rcaron oacute -45 -KPX rcaron ocircumflex -45 -KPX rcaron odieresis -45 -KPX rcaron ograve -45 -KPX rcaron ohungarumlaut -45 -KPX rcaron omacron -45 -KPX rcaron oslash -45 -KPX rcaron otilde -45 -KPX rcaron period -111 -KPX rcaron q -37 -KPX rcaron s -10 -KPX rcaron sacute -10 -KPX rcaron scaron -10 -KPX rcaron scedilla -10 -KPX rcaron scommaaccent -10 -KPX rcommaaccent a -15 -KPX rcommaaccent aacute -15 -KPX rcommaaccent abreve -15 -KPX rcommaaccent acircumflex -15 -KPX rcommaaccent adieresis -15 -KPX rcommaaccent agrave -15 -KPX rcommaaccent amacron -15 -KPX rcommaaccent aogonek -15 -KPX rcommaaccent aring -15 -KPX rcommaaccent atilde -15 -KPX rcommaaccent c -37 -KPX rcommaaccent cacute -37 -KPX rcommaaccent ccaron -37 -KPX rcommaaccent ccedilla -37 -KPX rcommaaccent comma -111 -KPX rcommaaccent d -37 -KPX rcommaaccent dcroat -37 -KPX rcommaaccent e -37 -KPX rcommaaccent eacute -37 -KPX rcommaaccent ecaron -37 -KPX rcommaaccent ecircumflex -37 -KPX rcommaaccent edieresis -37 -KPX rcommaaccent edotaccent -37 -KPX rcommaaccent egrave -37 -KPX rcommaaccent emacron -37 -KPX rcommaaccent eogonek -37 -KPX rcommaaccent g -37 -KPX rcommaaccent gbreve -37 -KPX rcommaaccent gcommaaccent -37 -KPX rcommaaccent hyphen -20 -KPX rcommaaccent o -45 -KPX rcommaaccent oacute -45 -KPX rcommaaccent ocircumflex -45 -KPX rcommaaccent odieresis -45 -KPX rcommaaccent ograve -45 -KPX rcommaaccent ohungarumlaut -45 -KPX rcommaaccent omacron -45 -KPX rcommaaccent oslash -45 -KPX rcommaaccent otilde -45 -KPX rcommaaccent period -111 -KPX rcommaaccent q -37 -KPX rcommaaccent s -10 -KPX rcommaaccent sacute -10 -KPX rcommaaccent scaron -10 -KPX rcommaaccent scedilla -10 -KPX rcommaaccent scommaaccent -10 -KPX space A -18 -KPX space Aacute -18 -KPX space Abreve -18 -KPX space Acircumflex -18 -KPX space Adieresis -18 -KPX space Agrave -18 -KPX space Amacron -18 -KPX space Aogonek -18 -KPX space Aring -18 -KPX space Atilde -18 -KPX space T -18 -KPX space Tcaron -18 -KPX space Tcommaaccent -18 -KPX space V -35 -KPX space W -40 -KPX space Y -75 -KPX space Yacute -75 -KPX space Ydieresis -75 -KPX v comma -74 -KPX v period -74 -KPX w comma -74 -KPX w period -74 -KPX y comma -55 -KPX y period -55 -KPX yacute comma -55 -KPX yacute period -55 -KPX ydieresis comma -55 -KPX ydieresis period -55 -EndKernPairs -EndKernData -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Times-Roman.afm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Times-Roman.afm deleted file mode 100644 index ffea2691..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/Times-Roman.afm +++ /dev/null @@ -1,2421 +0,0 @@ -StartFontMetrics 4.1 -Comment Copyright (c) 1985, 1987, 1989, 1990, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved. -Comment Creation Date: Thu May 1 12:49:17 1997 -Comment UniqueID 43068 -Comment VMusage 43909 54934 -FontName Times-Roman -FullName Times Roman -FamilyName Times -Weight Roman -ItalicAngle 0 -IsFixedPitch false -CharacterSet ExtendedRoman -FontBBox -168 -218 1000 898 -UnderlinePosition -100 -UnderlineThickness 50 -Version 002.00 -Notice Copyright (c) 1985, 1987, 1989, 1990, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved.Times is a trademark of Linotype-Hell AG and/or its subsidiaries. -EncodingScheme WinAnsiEncoding -CapHeight 662 -XHeight 450 -Ascender 683 -Descender -217 -StdHW 28 -StdVW 84 -StartCharMetrics 317 -C 32 ; WX 250 ; N space ; B 0 0 0 0 ; -C 160 ; WX 250 ; N space ; B 0 0 0 0 ; -C 33 ; WX 333 ; N exclam ; B 130 -9 238 676 ; -C 34 ; WX 408 ; N quotedbl ; B 77 431 331 676 ; -C 35 ; WX 500 ; N numbersign ; B 5 0 496 662 ; -C 36 ; WX 500 ; N dollar ; B 44 -87 457 727 ; -C 37 ; WX 833 ; N percent ; B 61 -13 772 676 ; -C 38 ; WX 778 ; N ampersand ; B 42 -13 750 676 ; -C 146 ; WX 333 ; N quoteright ; B 79 433 218 676 ; -C 40 ; WX 333 ; N parenleft ; B 48 -177 304 676 ; -C 41 ; WX 333 ; N parenright ; B 29 -177 285 676 ; -C 42 ; WX 500 ; N asterisk ; B 69 265 432 676 ; -C 43 ; WX 564 ; N plus ; B 30 0 534 506 ; -C 44 ; WX 250 ; N comma ; B 56 -141 195 102 ; -C 45 ; WX 333 ; N hyphen ; B 39 194 285 257 ; -C 173 ; WX 333 ; N hyphen ; B 39 194 285 257 ; -C 46 ; WX 250 ; N period ; B 70 -11 181 100 ; -C 47 ; WX 278 ; N slash ; B -9 -14 287 676 ; -C 48 ; WX 500 ; N zero ; B 24 -14 476 676 ; -C 49 ; WX 500 ; N one ; B 111 0 394 676 ; -C 50 ; WX 500 ; N two ; B 30 0 475 676 ; -C 51 ; WX 500 ; N three ; B 43 -14 431 676 ; -C 52 ; WX 500 ; N four ; B 12 0 472 676 ; -C 53 ; WX 500 ; N five ; B 32 -14 438 688 ; -C 54 ; WX 500 ; N six ; B 34 -14 468 684 ; -C 55 ; WX 500 ; N seven ; B 20 -8 449 662 ; -C 56 ; WX 500 ; N eight ; B 56 -14 445 676 ; -C 57 ; WX 500 ; N nine ; B 30 -22 459 676 ; -C 58 ; WX 278 ; N colon ; B 81 -11 192 459 ; -C 59 ; WX 278 ; N semicolon ; B 80 -141 219 459 ; -C 60 ; WX 564 ; N less ; B 28 -8 536 514 ; -C 61 ; WX 564 ; N equal ; B 30 120 534 386 ; -C 62 ; WX 564 ; N greater ; B 28 -8 536 514 ; -C 63 ; WX 444 ; N question ; B 68 -8 414 676 ; -C 64 ; WX 921 ; N at ; B 116 -14 809 676 ; -C 65 ; WX 722 ; N A ; B 15 0 706 674 ; -C 66 ; WX 667 ; N B ; B 17 0 593 662 ; -C 67 ; WX 667 ; N C ; B 28 -14 633 676 ; -C 68 ; WX 722 ; N D ; B 16 0 685 662 ; -C 69 ; WX 611 ; N E ; B 12 0 597 662 ; -C 70 ; WX 556 ; N F ; B 12 0 546 662 ; -C 71 ; WX 722 ; N G ; B 32 -14 709 676 ; -C 72 ; WX 722 ; N H ; B 19 0 702 662 ; -C 73 ; WX 333 ; N I ; B 18 0 315 662 ; -C 74 ; WX 389 ; N J ; B 10 -14 370 662 ; -C 75 ; WX 722 ; N K ; B 34 0 723 662 ; -C 76 ; WX 611 ; N L ; B 12 0 598 662 ; -C 77 ; WX 889 ; N M ; B 12 0 863 662 ; -C 78 ; WX 722 ; N N ; B 12 -11 707 662 ; -C 79 ; WX 722 ; N O ; B 34 -14 688 676 ; -C 80 ; WX 556 ; N P ; B 16 0 542 662 ; -C 81 ; WX 722 ; N Q ; B 34 -178 701 676 ; -C 82 ; WX 667 ; N R ; B 17 0 659 662 ; -C 83 ; WX 556 ; N S ; B 42 -14 491 676 ; -C 84 ; WX 611 ; N T ; B 17 0 593 662 ; -C 85 ; WX 722 ; N U ; B 14 -14 705 662 ; -C 86 ; WX 722 ; N V ; B 16 -11 697 662 ; -C 87 ; WX 944 ; N W ; B 5 -11 932 662 ; -C 88 ; WX 722 ; N X ; B 10 0 704 662 ; -C 89 ; WX 722 ; N Y ; B 22 0 703 662 ; -C 90 ; WX 611 ; N Z ; B 9 0 597 662 ; -C 91 ; WX 333 ; N bracketleft ; B 88 -156 299 662 ; -C 92 ; WX 278 ; N backslash ; B -9 -14 287 676 ; -C 93 ; WX 333 ; N bracketright ; B 34 -156 245 662 ; -C 94 ; WX 469 ; N asciicircum ; B 24 297 446 662 ; -C 95 ; WX 500 ; N underscore ; B 0 -125 500 -75 ; -C 145 ; WX 333 ; N quoteleft ; B 115 433 254 676 ; -C 97 ; WX 444 ; N a ; B 37 -10 442 460 ; -C 98 ; WX 500 ; N b ; B 3 -10 468 683 ; -C 99 ; WX 444 ; N c ; B 25 -10 412 460 ; -C 100 ; WX 500 ; N d ; B 27 -10 491 683 ; -C 101 ; WX 444 ; N e ; B 25 -10 424 460 ; -C 102 ; WX 333 ; N f ; B 20 0 383 683 ; L i fi ; L l fl ; -C 103 ; WX 500 ; N g ; B 28 -218 470 460 ; -C 104 ; WX 500 ; N h ; B 9 0 487 683 ; -C 105 ; WX 278 ; N i ; B 16 0 253 683 ; -C 106 ; WX 278 ; N j ; B -70 -218 194 683 ; -C 107 ; WX 500 ; N k ; B 7 0 505 683 ; -C 108 ; WX 278 ; N l ; B 19 0 257 683 ; -C 109 ; WX 778 ; N m ; B 16 0 775 460 ; -C 110 ; WX 500 ; N n ; B 16 0 485 460 ; -C 111 ; WX 500 ; N o ; B 29 -10 470 460 ; -C 112 ; WX 500 ; N p ; B 5 -217 470 460 ; -C 113 ; WX 500 ; N q ; B 24 -217 488 460 ; -C 114 ; WX 333 ; N r ; B 5 0 335 460 ; -C 115 ; WX 389 ; N s ; B 51 -10 348 460 ; -C 116 ; WX 278 ; N t ; B 13 -10 279 579 ; -C 117 ; WX 500 ; N u ; B 9 -10 479 450 ; -C 118 ; WX 500 ; N v ; B 19 -14 477 450 ; -C 119 ; WX 722 ; N w ; B 21 -14 694 450 ; -C 120 ; WX 500 ; N x ; B 17 0 479 450 ; -C 121 ; WX 500 ; N y ; B 14 -218 475 450 ; -C 122 ; WX 444 ; N z ; B 27 0 418 450 ; -C 123 ; WX 480 ; N braceleft ; B 100 -181 350 680 ; -C 124 ; WX 200 ; N bar ; B 67 -218 133 782 ; -C 125 ; WX 480 ; N braceright ; B 130 -181 380 680 ; -C 126 ; WX 541 ; N asciitilde ; B 40 183 502 323 ; -C 161 ; WX 333 ; N exclamdown ; B 97 -218 205 467 ; -C 162 ; WX 500 ; N cent ; B 53 -138 448 579 ; -C 163 ; WX 500 ; N sterling ; B 12 -8 490 676 ; -C -1 ; WX 167 ; N fraction ; B -168 -14 331 676 ; -C 165 ; WX 500 ; N yen ; B -53 0 512 662 ; -C 131 ; WX 500 ; N florin ; B 7 -189 490 676 ; -C 167 ; WX 500 ; N section ; B 70 -148 426 676 ; -C 164 ; WX 500 ; N currency ; B -22 58 522 602 ; -C 39 ; WX 180 ; N quotesingle ; B 48 431 133 676 ; -C 147 ; WX 444 ; N quotedblleft ; B 43 433 414 676 ; -C 171 ; WX 500 ; N guillemotleft ; B 42 33 456 416 ; -C 139 ; WX 333 ; N guilsinglleft ; B 63 33 285 416 ; -C 155 ; WX 333 ; N guilsinglright ; B 48 33 270 416 ; -C -1 ; WX 556 ; N fi ; B 31 0 521 683 ; -C -1 ; WX 556 ; N fl ; B 32 0 521 683 ; -C 150 ; WX 500 ; N endash ; B 0 201 500 250 ; -C 134 ; WX 500 ; N dagger ; B 59 -149 442 676 ; -C 135 ; WX 500 ; N daggerdbl ; B 58 -153 442 676 ; -C 183 ; WX 250 ; N periodcentered ; B 70 199 181 310 ; -C 182 ; WX 453 ; N paragraph ; B -22 -154 450 662 ; -C 149 ; WX 350 ; N bullet ; B 40 196 310 466 ; -C 130 ; WX 333 ; N quotesinglbase ; B 79 -141 218 102 ; -C 132 ; WX 444 ; N quotedblbase ; B 45 -141 416 102 ; -C 148 ; WX 444 ; N quotedblright ; B 30 433 401 676 ; -C 187 ; WX 500 ; N guillemotright ; B 44 33 458 416 ; -C 133 ; WX 1000 ; N ellipsis ; B 111 -11 888 100 ; -C 137 ; WX 1000 ; N perthousand ; B 7 -19 994 706 ; -C 191 ; WX 444 ; N questiondown ; B 30 -218 376 466 ; -C 96 ; WX 333 ; N grave ; B 19 507 242 678 ; -C 180 ; WX 333 ; N acute ; B 93 507 317 678 ; -C 136 ; WX 333 ; N circumflex ; B 11 507 322 674 ; -C 152 ; WX 333 ; N tilde ; B 1 532 331 638 ; -C 175 ; WX 333 ; N macron ; B 11 547 322 601 ; -C -1 ; WX 333 ; N breve ; B 26 507 307 664 ; -C -1 ; WX 333 ; N dotaccent ; B 118 581 216 681 ; -C 168 ; WX 333 ; N dieresis ; B 18 581 315 681 ; -C -1 ; WX 333 ; N ring ; B 67 512 266 711 ; -C 184 ; WX 333 ; N cedilla ; B 52 -215 261 0 ; -C -1 ; WX 333 ; N hungarumlaut ; B -3 507 377 678 ; -C -1 ; WX 333 ; N ogonek ; B 62 -165 243 0 ; -C -1 ; WX 333 ; N caron ; B 11 507 322 674 ; -C 151 ; WX 1000 ; N emdash ; B 0 201 1000 250 ; -C 198 ; WX 889 ; N AE ; B 0 0 863 662 ; -C 170 ; WX 276 ; N ordfeminine ; B 4 394 270 676 ; -C -1 ; WX 611 ; N Lslash ; B 12 0 598 662 ; -C 216 ; WX 722 ; N Oslash ; B 34 -80 688 734 ; -C 140 ; WX 889 ; N OE ; B 30 -6 885 668 ; -C 186 ; WX 310 ; N ordmasculine ; B 6 394 304 676 ; -C 230 ; WX 667 ; N ae ; B 38 -10 632 460 ; -C -1 ; WX 278 ; N dotlessi ; B 16 0 253 460 ; -C -1 ; WX 278 ; N lslash ; B 19 0 259 683 ; -C 248 ; WX 500 ; N oslash ; B 29 -112 470 551 ; -C 156 ; WX 722 ; N oe ; B 30 -10 690 460 ; -C 223 ; WX 500 ; N germandbls ; B 12 -9 468 683 ; -C 207 ; WX 333 ; N Idieresis ; B 18 0 315 835 ; -C 233 ; WX 444 ; N eacute ; B 25 -10 424 678 ; -C -1 ; WX 444 ; N abreve ; B 37 -10 442 664 ; -C -1 ; WX 500 ; N uhungarumlaut ; B 9 -10 501 678 ; -C -1 ; WX 444 ; N ecaron ; B 25 -10 424 674 ; -C 159 ; WX 722 ; N Ydieresis ; B 22 0 703 835 ; -C 247 ; WX 564 ; N divide ; B 30 -10 534 516 ; -C 221 ; WX 722 ; N Yacute ; B 22 0 703 890 ; -C 194 ; WX 722 ; N Acircumflex ; B 15 0 706 886 ; -C 225 ; WX 444 ; N aacute ; B 37 -10 442 678 ; -C 219 ; WX 722 ; N Ucircumflex ; B 14 -14 705 886 ; -C 253 ; WX 500 ; N yacute ; B 14 -218 475 678 ; -C -1 ; WX 389 ; N scommaaccent ; B 51 -218 348 460 ; -C 234 ; WX 444 ; N ecircumflex ; B 25 -10 424 674 ; -C -1 ; WX 722 ; N Uring ; B 14 -14 705 898 ; -C 220 ; WX 722 ; N Udieresis ; B 14 -14 705 835 ; -C -1 ; WX 444 ; N aogonek ; B 37 -165 469 460 ; -C 218 ; WX 722 ; N Uacute ; B 14 -14 705 890 ; -C -1 ; WX 500 ; N uogonek ; B 9 -155 487 450 ; -C 203 ; WX 611 ; N Edieresis ; B 12 0 597 835 ; -C -1 ; WX 722 ; N Dcroat ; B 16 0 685 662 ; -C -1 ; WX 250 ; N commaaccent ; B 59 -218 184 -50 ; -C 169 ; WX 760 ; N copyright ; B 38 -14 722 676 ; -C -1 ; WX 611 ; N Emacron ; B 12 0 597 813 ; -C -1 ; WX 444 ; N ccaron ; B 25 -10 412 674 ; -C 229 ; WX 444 ; N aring ; B 37 -10 442 711 ; -C -1 ; WX 722 ; N Ncommaaccent ; B 12 -198 707 662 ; -C -1 ; WX 278 ; N lacute ; B 19 0 290 890 ; -C 224 ; WX 444 ; N agrave ; B 37 -10 442 678 ; -C -1 ; WX 611 ; N Tcommaaccent ; B 17 -218 593 662 ; -C -1 ; WX 667 ; N Cacute ; B 28 -14 633 890 ; -C 227 ; WX 444 ; N atilde ; B 37 -10 442 638 ; -C -1 ; WX 611 ; N Edotaccent ; B 12 0 597 835 ; -C 154 ; WX 389 ; N scaron ; B 39 -10 350 674 ; -C -1 ; WX 389 ; N scedilla ; B 51 -215 348 460 ; -C 237 ; WX 278 ; N iacute ; B 16 0 290 678 ; -C -1 ; WX 471 ; N lozenge ; B 13 0 459 724 ; -C -1 ; WX 667 ; N Rcaron ; B 17 0 659 886 ; -C -1 ; WX 722 ; N Gcommaaccent ; B 32 -218 709 676 ; -C 251 ; WX 500 ; N ucircumflex ; B 9 -10 479 674 ; -C 226 ; WX 444 ; N acircumflex ; B 37 -10 442 674 ; -C -1 ; WX 722 ; N Amacron ; B 15 0 706 813 ; -C -1 ; WX 333 ; N rcaron ; B 5 0 335 674 ; -C 231 ; WX 444 ; N ccedilla ; B 25 -215 412 460 ; -C -1 ; WX 611 ; N Zdotaccent ; B 9 0 597 835 ; -C 222 ; WX 556 ; N Thorn ; B 16 0 542 662 ; -C -1 ; WX 722 ; N Omacron ; B 34 -14 688 813 ; -C -1 ; WX 667 ; N Racute ; B 17 0 659 890 ; -C -1 ; WX 556 ; N Sacute ; B 42 -14 491 890 ; -C -1 ; WX 588 ; N dcaron ; B 27 -10 589 695 ; -C -1 ; WX 722 ; N Umacron ; B 14 -14 705 813 ; -C -1 ; WX 500 ; N uring ; B 9 -10 479 711 ; -C 179 ; WX 300 ; N threesuperior ; B 15 262 291 676 ; -C 210 ; WX 722 ; N Ograve ; B 34 -14 688 890 ; -C 192 ; WX 722 ; N Agrave ; B 15 0 706 890 ; -C -1 ; WX 722 ; N Abreve ; B 15 0 706 876 ; -C 215 ; WX 564 ; N multiply ; B 38 8 527 497 ; -C 250 ; WX 500 ; N uacute ; B 9 -10 479 678 ; -C -1 ; WX 611 ; N Tcaron ; B 17 0 593 886 ; -C -1 ; WX 476 ; N partialdiff ; B 17 -38 459 710 ; -C 255 ; WX 500 ; N ydieresis ; B 14 -218 475 623 ; -C -1 ; WX 722 ; N Nacute ; B 12 -11 707 890 ; -C 238 ; WX 278 ; N icircumflex ; B -16 0 295 674 ; -C 202 ; WX 611 ; N Ecircumflex ; B 12 0 597 886 ; -C 228 ; WX 444 ; N adieresis ; B 37 -10 442 623 ; -C 235 ; WX 444 ; N edieresis ; B 25 -10 424 623 ; -C -1 ; WX 444 ; N cacute ; B 25 -10 413 678 ; -C -1 ; WX 500 ; N nacute ; B 16 0 485 678 ; -C -1 ; WX 500 ; N umacron ; B 9 -10 479 601 ; -C -1 ; WX 722 ; N Ncaron ; B 12 -11 707 886 ; -C 205 ; WX 333 ; N Iacute ; B 18 0 317 890 ; -C 177 ; WX 564 ; N plusminus ; B 30 0 534 506 ; -C 166 ; WX 200 ; N brokenbar ; B 67 -143 133 707 ; -C 174 ; WX 760 ; N registered ; B 38 -14 722 676 ; -C -1 ; WX 722 ; N Gbreve ; B 32 -14 709 876 ; -C -1 ; WX 333 ; N Idotaccent ; B 18 0 315 835 ; -C -1 ; WX 600 ; N summation ; B 15 -10 585 706 ; -C 200 ; WX 611 ; N Egrave ; B 12 0 597 890 ; -C -1 ; WX 333 ; N racute ; B 5 0 335 678 ; -C -1 ; WX 500 ; N omacron ; B 29 -10 470 601 ; -C -1 ; WX 611 ; N Zacute ; B 9 0 597 890 ; -C 142 ; WX 611 ; N Zcaron ; B 9 0 597 886 ; -C -1 ; WX 549 ; N greaterequal ; B 26 0 523 666 ; -C 208 ; WX 722 ; N Eth ; B 16 0 685 662 ; -C 199 ; WX 667 ; N Ccedilla ; B 28 -215 633 676 ; -C -1 ; WX 278 ; N lcommaaccent ; B 19 -218 257 683 ; -C -1 ; WX 326 ; N tcaron ; B 13 -10 318 722 ; -C -1 ; WX 444 ; N eogonek ; B 25 -165 424 460 ; -C -1 ; WX 722 ; N Uogonek ; B 14 -165 705 662 ; -C 193 ; WX 722 ; N Aacute ; B 15 0 706 890 ; -C 196 ; WX 722 ; N Adieresis ; B 15 0 706 835 ; -C 232 ; WX 444 ; N egrave ; B 25 -10 424 678 ; -C -1 ; WX 444 ; N zacute ; B 27 0 418 678 ; -C -1 ; WX 278 ; N iogonek ; B 16 -165 265 683 ; -C 211 ; WX 722 ; N Oacute ; B 34 -14 688 890 ; -C 243 ; WX 500 ; N oacute ; B 29 -10 470 678 ; -C -1 ; WX 444 ; N amacron ; B 37 -10 442 601 ; -C -1 ; WX 389 ; N sacute ; B 51 -10 348 678 ; -C 239 ; WX 278 ; N idieresis ; B -9 0 288 623 ; -C 212 ; WX 722 ; N Ocircumflex ; B 34 -14 688 886 ; -C 217 ; WX 722 ; N Ugrave ; B 14 -14 705 890 ; -C -1 ; WX 612 ; N Delta ; B 6 0 608 688 ; -C 254 ; WX 500 ; N thorn ; B 5 -217 470 683 ; -C 178 ; WX 300 ; N twosuperior ; B 1 270 296 676 ; -C 214 ; WX 722 ; N Odieresis ; B 34 -14 688 835 ; -C 181 ; WX 500 ; N mu ; B 36 -218 512 450 ; -C 236 ; WX 278 ; N igrave ; B -8 0 253 678 ; -C -1 ; WX 500 ; N ohungarumlaut ; B 29 -10 491 678 ; -C -1 ; WX 611 ; N Eogonek ; B 12 -165 597 662 ; -C -1 ; WX 500 ; N dcroat ; B 27 -10 500 683 ; -C 190 ; WX 750 ; N threequarters ; B 15 -14 718 676 ; -C -1 ; WX 556 ; N Scedilla ; B 42 -215 491 676 ; -C -1 ; WX 344 ; N lcaron ; B 19 0 347 695 ; -C -1 ; WX 722 ; N Kcommaaccent ; B 34 -198 723 662 ; -C -1 ; WX 611 ; N Lacute ; B 12 0 598 890 ; -C 153 ; WX 980 ; N trademark ; B 30 256 957 662 ; -C -1 ; WX 444 ; N edotaccent ; B 25 -10 424 623 ; -C 204 ; WX 333 ; N Igrave ; B 18 0 315 890 ; -C -1 ; WX 333 ; N Imacron ; B 11 0 322 813 ; -C -1 ; WX 611 ; N Lcaron ; B 12 0 598 676 ; -C 189 ; WX 750 ; N onehalf ; B 31 -14 746 676 ; -C -1 ; WX 549 ; N lessequal ; B 26 0 523 666 ; -C 244 ; WX 500 ; N ocircumflex ; B 29 -10 470 674 ; -C 241 ; WX 500 ; N ntilde ; B 16 0 485 638 ; -C -1 ; WX 722 ; N Uhungarumlaut ; B 14 -14 705 890 ; -C 201 ; WX 611 ; N Eacute ; B 12 0 597 890 ; -C -1 ; WX 444 ; N emacron ; B 25 -10 424 601 ; -C -1 ; WX 500 ; N gbreve ; B 28 -218 470 664 ; -C 188 ; WX 750 ; N onequarter ; B 37 -14 718 676 ; -C 138 ; WX 556 ; N Scaron ; B 42 -14 491 886 ; -C -1 ; WX 556 ; N Scommaaccent ; B 42 -218 491 676 ; -C -1 ; WX 722 ; N Ohungarumlaut ; B 34 -14 688 890 ; -C 176 ; WX 400 ; N degree ; B 57 390 343 676 ; -C 242 ; WX 500 ; N ograve ; B 29 -10 470 678 ; -C -1 ; WX 667 ; N Ccaron ; B 28 -14 633 886 ; -C 249 ; WX 500 ; N ugrave ; B 9 -10 479 678 ; -C -1 ; WX 453 ; N radical ; B 2 -60 452 768 ; -C -1 ; WX 722 ; N Dcaron ; B 16 0 685 886 ; -C -1 ; WX 333 ; N rcommaaccent ; B 5 -218 335 460 ; -C 209 ; WX 722 ; N Ntilde ; B 12 -11 707 850 ; -C 245 ; WX 500 ; N otilde ; B 29 -10 470 638 ; -C -1 ; WX 667 ; N Rcommaaccent ; B 17 -198 659 662 ; -C -1 ; WX 611 ; N Lcommaaccent ; B 12 -218 598 662 ; -C 195 ; WX 722 ; N Atilde ; B 15 0 706 850 ; -C -1 ; WX 722 ; N Aogonek ; B 15 -165 738 674 ; -C 197 ; WX 722 ; N Aring ; B 15 0 706 898 ; -C 213 ; WX 722 ; N Otilde ; B 34 -14 688 850 ; -C -1 ; WX 444 ; N zdotaccent ; B 27 0 418 623 ; -C -1 ; WX 611 ; N Ecaron ; B 12 0 597 886 ; -C -1 ; WX 333 ; N Iogonek ; B 18 -165 315 662 ; -C -1 ; WX 500 ; N kcommaaccent ; B 7 -218 505 683 ; -C -1 ; WX 564 ; N minus ; B 30 220 534 286 ; -C 206 ; WX 333 ; N Icircumflex ; B 11 0 322 886 ; -C -1 ; WX 500 ; N ncaron ; B 16 0 485 674 ; -C -1 ; WX 278 ; N tcommaaccent ; B 13 -218 279 579 ; -C 172 ; WX 564 ; N logicalnot ; B 30 108 534 386 ; -C 246 ; WX 500 ; N odieresis ; B 29 -10 470 623 ; -C 252 ; WX 500 ; N udieresis ; B 9 -10 479 623 ; -C -1 ; WX 549 ; N notequal ; B 12 -31 537 547 ; -C -1 ; WX 500 ; N gcommaaccent ; B 28 -218 470 749 ; -C 240 ; WX 500 ; N eth ; B 29 -10 471 686 ; -C 158 ; WX 444 ; N zcaron ; B 27 0 418 674 ; -C -1 ; WX 500 ; N ncommaaccent ; B 16 -218 485 460 ; -C 185 ; WX 300 ; N onesuperior ; B 57 270 248 676 ; -C -1 ; WX 278 ; N imacron ; B 6 0 271 601 ; -C 128 ; WX 500 ; N Euro ; B 0 0 0 0 ; -EndCharMetrics -StartKernData -StartKernPairs 2073 -KPX A C -40 -KPX A Cacute -40 -KPX A Ccaron -40 -KPX A Ccedilla -40 -KPX A G -40 -KPX A Gbreve -40 -KPX A Gcommaaccent -40 -KPX A O -55 -KPX A Oacute -55 -KPX A Ocircumflex -55 -KPX A Odieresis -55 -KPX A Ograve -55 -KPX A Ohungarumlaut -55 -KPX A Omacron -55 -KPX A Oslash -55 -KPX A Otilde -55 -KPX A Q -55 -KPX A T -111 -KPX A Tcaron -111 -KPX A Tcommaaccent -111 -KPX A U -55 -KPX A Uacute -55 -KPX A Ucircumflex -55 -KPX A Udieresis -55 -KPX A Ugrave -55 -KPX A Uhungarumlaut -55 -KPX A Umacron -55 -KPX A Uogonek -55 -KPX A Uring -55 -KPX A V -135 -KPX A W -90 -KPX A Y -105 -KPX A Yacute -105 -KPX A Ydieresis -105 -KPX A quoteright -111 -KPX A v -74 -KPX A w -92 -KPX A y -92 -KPX A yacute -92 -KPX A ydieresis -92 -KPX Aacute C -40 -KPX Aacute Cacute -40 -KPX Aacute Ccaron -40 -KPX Aacute Ccedilla -40 -KPX Aacute G -40 -KPX Aacute Gbreve -40 -KPX Aacute Gcommaaccent -40 -KPX Aacute O -55 -KPX Aacute Oacute -55 -KPX Aacute Ocircumflex -55 -KPX Aacute Odieresis -55 -KPX Aacute Ograve -55 -KPX Aacute Ohungarumlaut -55 -KPX Aacute Omacron -55 -KPX Aacute Oslash -55 -KPX Aacute Otilde -55 -KPX Aacute Q -55 -KPX Aacute T -111 -KPX Aacute Tcaron -111 -KPX Aacute Tcommaaccent -111 -KPX Aacute U -55 -KPX Aacute Uacute -55 -KPX Aacute Ucircumflex -55 -KPX Aacute Udieresis -55 -KPX Aacute Ugrave -55 -KPX Aacute Uhungarumlaut -55 -KPX Aacute Umacron -55 -KPX Aacute Uogonek -55 -KPX Aacute Uring -55 -KPX Aacute V -135 -KPX Aacute W -90 -KPX Aacute Y -105 -KPX Aacute Yacute -105 -KPX Aacute Ydieresis -105 -KPX Aacute quoteright -111 -KPX Aacute v -74 -KPX Aacute w -92 -KPX Aacute y -92 -KPX Aacute yacute -92 -KPX Aacute ydieresis -92 -KPX Abreve C -40 -KPX Abreve Cacute -40 -KPX Abreve Ccaron -40 -KPX Abreve Ccedilla -40 -KPX Abreve G -40 -KPX Abreve Gbreve -40 -KPX Abreve Gcommaaccent -40 -KPX Abreve O -55 -KPX Abreve Oacute -55 -KPX Abreve Ocircumflex -55 -KPX Abreve Odieresis -55 -KPX Abreve Ograve -55 -KPX Abreve Ohungarumlaut -55 -KPX Abreve Omacron -55 -KPX Abreve Oslash -55 -KPX Abreve Otilde -55 -KPX Abreve Q -55 -KPX Abreve T -111 -KPX Abreve Tcaron -111 -KPX Abreve Tcommaaccent -111 -KPX Abreve U -55 -KPX Abreve Uacute -55 -KPX Abreve Ucircumflex -55 -KPX Abreve Udieresis -55 -KPX Abreve Ugrave -55 -KPX Abreve Uhungarumlaut -55 -KPX Abreve Umacron -55 -KPX Abreve Uogonek -55 -KPX Abreve Uring -55 -KPX Abreve V -135 -KPX Abreve W -90 -KPX Abreve Y -105 -KPX Abreve Yacute -105 -KPX Abreve Ydieresis -105 -KPX Abreve quoteright -111 -KPX Abreve v -74 -KPX Abreve w -92 -KPX Abreve y -92 -KPX Abreve yacute -92 -KPX Abreve ydieresis -92 -KPX Acircumflex C -40 -KPX Acircumflex Cacute -40 -KPX Acircumflex Ccaron -40 -KPX Acircumflex Ccedilla -40 -KPX Acircumflex G -40 -KPX Acircumflex Gbreve -40 -KPX Acircumflex Gcommaaccent -40 -KPX Acircumflex O -55 -KPX Acircumflex Oacute -55 -KPX Acircumflex Ocircumflex -55 -KPX Acircumflex Odieresis -55 -KPX Acircumflex Ograve -55 -KPX Acircumflex Ohungarumlaut -55 -KPX Acircumflex Omacron -55 -KPX Acircumflex Oslash -55 -KPX Acircumflex Otilde -55 -KPX Acircumflex Q -55 -KPX Acircumflex T -111 -KPX Acircumflex Tcaron -111 -KPX Acircumflex Tcommaaccent -111 -KPX Acircumflex U -55 -KPX Acircumflex Uacute -55 -KPX Acircumflex Ucircumflex -55 -KPX Acircumflex Udieresis -55 -KPX Acircumflex Ugrave -55 -KPX Acircumflex Uhungarumlaut -55 -KPX Acircumflex Umacron -55 -KPX Acircumflex Uogonek -55 -KPX Acircumflex Uring -55 -KPX Acircumflex V -135 -KPX Acircumflex W -90 -KPX Acircumflex Y -105 -KPX Acircumflex Yacute -105 -KPX Acircumflex Ydieresis -105 -KPX Acircumflex quoteright -111 -KPX Acircumflex v -74 -KPX Acircumflex w -92 -KPX Acircumflex y -92 -KPX Acircumflex yacute -92 -KPX Acircumflex ydieresis -92 -KPX Adieresis C -40 -KPX Adieresis Cacute -40 -KPX Adieresis Ccaron -40 -KPX Adieresis Ccedilla -40 -KPX Adieresis G -40 -KPX Adieresis Gbreve -40 -KPX Adieresis Gcommaaccent -40 -KPX Adieresis O -55 -KPX Adieresis Oacute -55 -KPX Adieresis Ocircumflex -55 -KPX Adieresis Odieresis -55 -KPX Adieresis Ograve -55 -KPX Adieresis Ohungarumlaut -55 -KPX Adieresis Omacron -55 -KPX Adieresis Oslash -55 -KPX Adieresis Otilde -55 -KPX Adieresis Q -55 -KPX Adieresis T -111 -KPX Adieresis Tcaron -111 -KPX Adieresis Tcommaaccent -111 -KPX Adieresis U -55 -KPX Adieresis Uacute -55 -KPX Adieresis Ucircumflex -55 -KPX Adieresis Udieresis -55 -KPX Adieresis Ugrave -55 -KPX Adieresis Uhungarumlaut -55 -KPX Adieresis Umacron -55 -KPX Adieresis Uogonek -55 -KPX Adieresis Uring -55 -KPX Adieresis V -135 -KPX Adieresis W -90 -KPX Adieresis Y -105 -KPX Adieresis Yacute -105 -KPX Adieresis Ydieresis -105 -KPX Adieresis quoteright -111 -KPX Adieresis v -74 -KPX Adieresis w -92 -KPX Adieresis y -92 -KPX Adieresis yacute -92 -KPX Adieresis ydieresis -92 -KPX Agrave C -40 -KPX Agrave Cacute -40 -KPX Agrave Ccaron -40 -KPX Agrave Ccedilla -40 -KPX Agrave G -40 -KPX Agrave Gbreve -40 -KPX Agrave Gcommaaccent -40 -KPX Agrave O -55 -KPX Agrave Oacute -55 -KPX Agrave Ocircumflex -55 -KPX Agrave Odieresis -55 -KPX Agrave Ograve -55 -KPX Agrave Ohungarumlaut -55 -KPX Agrave Omacron -55 -KPX Agrave Oslash -55 -KPX Agrave Otilde -55 -KPX Agrave Q -55 -KPX Agrave T -111 -KPX Agrave Tcaron -111 -KPX Agrave Tcommaaccent -111 -KPX Agrave U -55 -KPX Agrave Uacute -55 -KPX Agrave Ucircumflex -55 -KPX Agrave Udieresis -55 -KPX Agrave Ugrave -55 -KPX Agrave Uhungarumlaut -55 -KPX Agrave Umacron -55 -KPX Agrave Uogonek -55 -KPX Agrave Uring -55 -KPX Agrave V -135 -KPX Agrave W -90 -KPX Agrave Y -105 -KPX Agrave Yacute -105 -KPX Agrave Ydieresis -105 -KPX Agrave quoteright -111 -KPX Agrave v -74 -KPX Agrave w -92 -KPX Agrave y -92 -KPX Agrave yacute -92 -KPX Agrave ydieresis -92 -KPX Amacron C -40 -KPX Amacron Cacute -40 -KPX Amacron Ccaron -40 -KPX Amacron Ccedilla -40 -KPX Amacron G -40 -KPX Amacron Gbreve -40 -KPX Amacron Gcommaaccent -40 -KPX Amacron O -55 -KPX Amacron Oacute -55 -KPX Amacron Ocircumflex -55 -KPX Amacron Odieresis -55 -KPX Amacron Ograve -55 -KPX Amacron Ohungarumlaut -55 -KPX Amacron Omacron -55 -KPX Amacron Oslash -55 -KPX Amacron Otilde -55 -KPX Amacron Q -55 -KPX Amacron T -111 -KPX Amacron Tcaron -111 -KPX Amacron Tcommaaccent -111 -KPX Amacron U -55 -KPX Amacron Uacute -55 -KPX Amacron Ucircumflex -55 -KPX Amacron Udieresis -55 -KPX Amacron Ugrave -55 -KPX Amacron Uhungarumlaut -55 -KPX Amacron Umacron -55 -KPX Amacron Uogonek -55 -KPX Amacron Uring -55 -KPX Amacron V -135 -KPX Amacron W -90 -KPX Amacron Y -105 -KPX Amacron Yacute -105 -KPX Amacron Ydieresis -105 -KPX Amacron quoteright -111 -KPX Amacron v -74 -KPX Amacron w -92 -KPX Amacron y -92 -KPX Amacron yacute -92 -KPX Amacron ydieresis -92 -KPX Aogonek C -40 -KPX Aogonek Cacute -40 -KPX Aogonek Ccaron -40 -KPX Aogonek Ccedilla -40 -KPX Aogonek G -40 -KPX Aogonek Gbreve -40 -KPX Aogonek Gcommaaccent -40 -KPX Aogonek O -55 -KPX Aogonek Oacute -55 -KPX Aogonek Ocircumflex -55 -KPX Aogonek Odieresis -55 -KPX Aogonek Ograve -55 -KPX Aogonek Ohungarumlaut -55 -KPX Aogonek Omacron -55 -KPX Aogonek Oslash -55 -KPX Aogonek Otilde -55 -KPX Aogonek Q -55 -KPX Aogonek T -111 -KPX Aogonek Tcaron -111 -KPX Aogonek Tcommaaccent -111 -KPX Aogonek U -55 -KPX Aogonek Uacute -55 -KPX Aogonek Ucircumflex -55 -KPX Aogonek Udieresis -55 -KPX Aogonek Ugrave -55 -KPX Aogonek Uhungarumlaut -55 -KPX Aogonek Umacron -55 -KPX Aogonek Uogonek -55 -KPX Aogonek Uring -55 -KPX Aogonek V -135 -KPX Aogonek W -90 -KPX Aogonek Y -105 -KPX Aogonek Yacute -105 -KPX Aogonek Ydieresis -105 -KPX Aogonek quoteright -111 -KPX Aogonek v -74 -KPX Aogonek w -52 -KPX Aogonek y -52 -KPX Aogonek yacute -52 -KPX Aogonek ydieresis -52 -KPX Aring C -40 -KPX Aring Cacute -40 -KPX Aring Ccaron -40 -KPX Aring Ccedilla -40 -KPX Aring G -40 -KPX Aring Gbreve -40 -KPX Aring Gcommaaccent -40 -KPX Aring O -55 -KPX Aring Oacute -55 -KPX Aring Ocircumflex -55 -KPX Aring Odieresis -55 -KPX Aring Ograve -55 -KPX Aring Ohungarumlaut -55 -KPX Aring Omacron -55 -KPX Aring Oslash -55 -KPX Aring Otilde -55 -KPX Aring Q -55 -KPX Aring T -111 -KPX Aring Tcaron -111 -KPX Aring Tcommaaccent -111 -KPX Aring U -55 -KPX Aring Uacute -55 -KPX Aring Ucircumflex -55 -KPX Aring Udieresis -55 -KPX Aring Ugrave -55 -KPX Aring Uhungarumlaut -55 -KPX Aring Umacron -55 -KPX Aring Uogonek -55 -KPX Aring Uring -55 -KPX Aring V -135 -KPX Aring W -90 -KPX Aring Y -105 -KPX Aring Yacute -105 -KPX Aring Ydieresis -105 -KPX Aring quoteright -111 -KPX Aring v -74 -KPX Aring w -92 -KPX Aring y -92 -KPX Aring yacute -92 -KPX Aring ydieresis -92 -KPX Atilde C -40 -KPX Atilde Cacute -40 -KPX Atilde Ccaron -40 -KPX Atilde Ccedilla -40 -KPX Atilde G -40 -KPX Atilde Gbreve -40 -KPX Atilde Gcommaaccent -40 -KPX Atilde O -55 -KPX Atilde Oacute -55 -KPX Atilde Ocircumflex -55 -KPX Atilde Odieresis -55 -KPX Atilde Ograve -55 -KPX Atilde Ohungarumlaut -55 -KPX Atilde Omacron -55 -KPX Atilde Oslash -55 -KPX Atilde Otilde -55 -KPX Atilde Q -55 -KPX Atilde T -111 -KPX Atilde Tcaron -111 -KPX Atilde Tcommaaccent -111 -KPX Atilde U -55 -KPX Atilde Uacute -55 -KPX Atilde Ucircumflex -55 -KPX Atilde Udieresis -55 -KPX Atilde Ugrave -55 -KPX Atilde Uhungarumlaut -55 -KPX Atilde Umacron -55 -KPX Atilde Uogonek -55 -KPX Atilde Uring -55 -KPX Atilde V -135 -KPX Atilde W -90 -KPX Atilde Y -105 -KPX Atilde Yacute -105 -KPX Atilde Ydieresis -105 -KPX Atilde quoteright -111 -KPX Atilde v -74 -KPX Atilde w -92 -KPX Atilde y -92 -KPX Atilde yacute -92 -KPX Atilde ydieresis -92 -KPX B A -35 -KPX B Aacute -35 -KPX B Abreve -35 -KPX B Acircumflex -35 -KPX B Adieresis -35 -KPX B Agrave -35 -KPX B Amacron -35 -KPX B Aogonek -35 -KPX B Aring -35 -KPX B Atilde -35 -KPX B U -10 -KPX B Uacute -10 -KPX B Ucircumflex -10 -KPX B Udieresis -10 -KPX B Ugrave -10 -KPX B Uhungarumlaut -10 -KPX B Umacron -10 -KPX B Uogonek -10 -KPX B Uring -10 -KPX D A -40 -KPX D Aacute -40 -KPX D Abreve -40 -KPX D Acircumflex -40 -KPX D Adieresis -40 -KPX D Agrave -40 -KPX D Amacron -40 -KPX D Aogonek -40 -KPX D Aring -40 -KPX D Atilde -40 -KPX D V -40 -KPX D W -30 -KPX D Y -55 -KPX D Yacute -55 -KPX D Ydieresis -55 -KPX Dcaron A -40 -KPX Dcaron Aacute -40 -KPX Dcaron Abreve -40 -KPX Dcaron Acircumflex -40 -KPX Dcaron Adieresis -40 -KPX Dcaron Agrave -40 -KPX Dcaron Amacron -40 -KPX Dcaron Aogonek -40 -KPX Dcaron Aring -40 -KPX Dcaron Atilde -40 -KPX Dcaron V -40 -KPX Dcaron W -30 -KPX Dcaron Y -55 -KPX Dcaron Yacute -55 -KPX Dcaron Ydieresis -55 -KPX Dcroat A -40 -KPX Dcroat Aacute -40 -KPX Dcroat Abreve -40 -KPX Dcroat Acircumflex -40 -KPX Dcroat Adieresis -40 -KPX Dcroat Agrave -40 -KPX Dcroat Amacron -40 -KPX Dcroat Aogonek -40 -KPX Dcroat Aring -40 -KPX Dcroat Atilde -40 -KPX Dcroat V -40 -KPX Dcroat W -30 -KPX Dcroat Y -55 -KPX Dcroat Yacute -55 -KPX Dcroat Ydieresis -55 -KPX F A -74 -KPX F Aacute -74 -KPX F Abreve -74 -KPX F Acircumflex -74 -KPX F Adieresis -74 -KPX F Agrave -74 -KPX F Amacron -74 -KPX F Aogonek -74 -KPX F Aring -74 -KPX F Atilde -74 -KPX F a -15 -KPX F aacute -15 -KPX F abreve -15 -KPX F acircumflex -15 -KPX F adieresis -15 -KPX F agrave -15 -KPX F amacron -15 -KPX F aogonek -15 -KPX F aring -15 -KPX F atilde -15 -KPX F comma -80 -KPX F o -15 -KPX F oacute -15 -KPX F ocircumflex -15 -KPX F odieresis -15 -KPX F ograve -15 -KPX F ohungarumlaut -15 -KPX F omacron -15 -KPX F oslash -15 -KPX F otilde -15 -KPX F period -80 -KPX J A -60 -KPX J Aacute -60 -KPX J Abreve -60 -KPX J Acircumflex -60 -KPX J Adieresis -60 -KPX J Agrave -60 -KPX J Amacron -60 -KPX J Aogonek -60 -KPX J Aring -60 -KPX J Atilde -60 -KPX K O -30 -KPX K Oacute -30 -KPX K Ocircumflex -30 -KPX K Odieresis -30 -KPX K Ograve -30 -KPX K Ohungarumlaut -30 -KPX K Omacron -30 -KPX K Oslash -30 -KPX K Otilde -30 -KPX K e -25 -KPX K eacute -25 -KPX K ecaron -25 -KPX K ecircumflex -25 -KPX K edieresis -25 -KPX K edotaccent -25 -KPX K egrave -25 -KPX K emacron -25 -KPX K eogonek -25 -KPX K o -35 -KPX K oacute -35 -KPX K ocircumflex -35 -KPX K odieresis -35 -KPX K ograve -35 -KPX K ohungarumlaut -35 -KPX K omacron -35 -KPX K oslash -35 -KPX K otilde -35 -KPX K u -15 -KPX K uacute -15 -KPX K ucircumflex -15 -KPX K udieresis -15 -KPX K ugrave -15 -KPX K uhungarumlaut -15 -KPX K umacron -15 -KPX K uogonek -15 -KPX K uring -15 -KPX K y -25 -KPX K yacute -25 -KPX K ydieresis -25 -KPX Kcommaaccent O -30 -KPX Kcommaaccent Oacute -30 -KPX Kcommaaccent Ocircumflex -30 -KPX Kcommaaccent Odieresis -30 -KPX Kcommaaccent Ograve -30 -KPX Kcommaaccent Ohungarumlaut -30 -KPX Kcommaaccent Omacron -30 -KPX Kcommaaccent Oslash -30 -KPX Kcommaaccent Otilde -30 -KPX Kcommaaccent e -25 -KPX Kcommaaccent eacute -25 -KPX Kcommaaccent ecaron -25 -KPX Kcommaaccent ecircumflex -25 -KPX Kcommaaccent edieresis -25 -KPX Kcommaaccent edotaccent -25 -KPX Kcommaaccent egrave -25 -KPX Kcommaaccent emacron -25 -KPX Kcommaaccent eogonek -25 -KPX Kcommaaccent o -35 -KPX Kcommaaccent oacute -35 -KPX Kcommaaccent ocircumflex -35 -KPX Kcommaaccent odieresis -35 -KPX Kcommaaccent ograve -35 -KPX Kcommaaccent ohungarumlaut -35 -KPX Kcommaaccent omacron -35 -KPX Kcommaaccent oslash -35 -KPX Kcommaaccent otilde -35 -KPX Kcommaaccent u -15 -KPX Kcommaaccent uacute -15 -KPX Kcommaaccent ucircumflex -15 -KPX Kcommaaccent udieresis -15 -KPX Kcommaaccent ugrave -15 -KPX Kcommaaccent uhungarumlaut -15 -KPX Kcommaaccent umacron -15 -KPX Kcommaaccent uogonek -15 -KPX Kcommaaccent uring -15 -KPX Kcommaaccent y -25 -KPX Kcommaaccent yacute -25 -KPX Kcommaaccent ydieresis -25 -KPX L T -92 -KPX L Tcaron -92 -KPX L Tcommaaccent -92 -KPX L V -100 -KPX L W -74 -KPX L Y -100 -KPX L Yacute -100 -KPX L Ydieresis -100 -KPX L quoteright -92 -KPX L y -55 -KPX L yacute -55 -KPX L ydieresis -55 -KPX Lacute T -92 -KPX Lacute Tcaron -92 -KPX Lacute Tcommaaccent -92 -KPX Lacute V -100 -KPX Lacute W -74 -KPX Lacute Y -100 -KPX Lacute Yacute -100 -KPX Lacute Ydieresis -100 -KPX Lacute quoteright -92 -KPX Lacute y -55 -KPX Lacute yacute -55 -KPX Lacute ydieresis -55 -KPX Lcaron quoteright -92 -KPX Lcaron y -55 -KPX Lcaron yacute -55 -KPX Lcaron ydieresis -55 -KPX Lcommaaccent T -92 -KPX Lcommaaccent Tcaron -92 -KPX Lcommaaccent Tcommaaccent -92 -KPX Lcommaaccent V -100 -KPX Lcommaaccent W -74 -KPX Lcommaaccent Y -100 -KPX Lcommaaccent Yacute -100 -KPX Lcommaaccent Ydieresis -100 -KPX Lcommaaccent quoteright -92 -KPX Lcommaaccent y -55 -KPX Lcommaaccent yacute -55 -KPX Lcommaaccent ydieresis -55 -KPX Lslash T -92 -KPX Lslash Tcaron -92 -KPX Lslash Tcommaaccent -92 -KPX Lslash V -100 -KPX Lslash W -74 -KPX Lslash Y -100 -KPX Lslash Yacute -100 -KPX Lslash Ydieresis -100 -KPX Lslash quoteright -92 -KPX Lslash y -55 -KPX Lslash yacute -55 -KPX Lslash ydieresis -55 -KPX N A -35 -KPX N Aacute -35 -KPX N Abreve -35 -KPX N Acircumflex -35 -KPX N Adieresis -35 -KPX N Agrave -35 -KPX N Amacron -35 -KPX N Aogonek -35 -KPX N Aring -35 -KPX N Atilde -35 -KPX Nacute A -35 -KPX Nacute Aacute -35 -KPX Nacute Abreve -35 -KPX Nacute Acircumflex -35 -KPX Nacute Adieresis -35 -KPX Nacute Agrave -35 -KPX Nacute Amacron -35 -KPX Nacute Aogonek -35 -KPX Nacute Aring -35 -KPX Nacute Atilde -35 -KPX Ncaron A -35 -KPX Ncaron Aacute -35 -KPX Ncaron Abreve -35 -KPX Ncaron Acircumflex -35 -KPX Ncaron Adieresis -35 -KPX Ncaron Agrave -35 -KPX Ncaron Amacron -35 -KPX Ncaron Aogonek -35 -KPX Ncaron Aring -35 -KPX Ncaron Atilde -35 -KPX Ncommaaccent A -35 -KPX Ncommaaccent Aacute -35 -KPX Ncommaaccent Abreve -35 -KPX Ncommaaccent Acircumflex -35 -KPX Ncommaaccent Adieresis -35 -KPX Ncommaaccent Agrave -35 -KPX Ncommaaccent Amacron -35 -KPX Ncommaaccent Aogonek -35 -KPX Ncommaaccent Aring -35 -KPX Ncommaaccent Atilde -35 -KPX Ntilde A -35 -KPX Ntilde Aacute -35 -KPX Ntilde Abreve -35 -KPX Ntilde Acircumflex -35 -KPX Ntilde Adieresis -35 -KPX Ntilde Agrave -35 -KPX Ntilde Amacron -35 -KPX Ntilde Aogonek -35 -KPX Ntilde Aring -35 -KPX Ntilde Atilde -35 -KPX O A -35 -KPX O Aacute -35 -KPX O Abreve -35 -KPX O Acircumflex -35 -KPX O Adieresis -35 -KPX O Agrave -35 -KPX O Amacron -35 -KPX O Aogonek -35 -KPX O Aring -35 -KPX O Atilde -35 -KPX O T -40 -KPX O Tcaron -40 -KPX O Tcommaaccent -40 -KPX O V -50 -KPX O W -35 -KPX O X -40 -KPX O Y -50 -KPX O Yacute -50 -KPX O Ydieresis -50 -KPX Oacute A -35 -KPX Oacute Aacute -35 -KPX Oacute Abreve -35 -KPX Oacute Acircumflex -35 -KPX Oacute Adieresis -35 -KPX Oacute Agrave -35 -KPX Oacute Amacron -35 -KPX Oacute Aogonek -35 -KPX Oacute Aring -35 -KPX Oacute Atilde -35 -KPX Oacute T -40 -KPX Oacute Tcaron -40 -KPX Oacute Tcommaaccent -40 -KPX Oacute V -50 -KPX Oacute W -35 -KPX Oacute X -40 -KPX Oacute Y -50 -KPX Oacute Yacute -50 -KPX Oacute Ydieresis -50 -KPX Ocircumflex A -35 -KPX Ocircumflex Aacute -35 -KPX Ocircumflex Abreve -35 -KPX Ocircumflex Acircumflex -35 -KPX Ocircumflex Adieresis -35 -KPX Ocircumflex Agrave -35 -KPX Ocircumflex Amacron -35 -KPX Ocircumflex Aogonek -35 -KPX Ocircumflex Aring -35 -KPX Ocircumflex Atilde -35 -KPX Ocircumflex T -40 -KPX Ocircumflex Tcaron -40 -KPX Ocircumflex Tcommaaccent -40 -KPX Ocircumflex V -50 -KPX Ocircumflex W -35 -KPX Ocircumflex X -40 -KPX Ocircumflex Y -50 -KPX Ocircumflex Yacute -50 -KPX Ocircumflex Ydieresis -50 -KPX Odieresis A -35 -KPX Odieresis Aacute -35 -KPX Odieresis Abreve -35 -KPX Odieresis Acircumflex -35 -KPX Odieresis Adieresis -35 -KPX Odieresis Agrave -35 -KPX Odieresis Amacron -35 -KPX Odieresis Aogonek -35 -KPX Odieresis Aring -35 -KPX Odieresis Atilde -35 -KPX Odieresis T -40 -KPX Odieresis Tcaron -40 -KPX Odieresis Tcommaaccent -40 -KPX Odieresis V -50 -KPX Odieresis W -35 -KPX Odieresis X -40 -KPX Odieresis Y -50 -KPX Odieresis Yacute -50 -KPX Odieresis Ydieresis -50 -KPX Ograve A -35 -KPX Ograve Aacute -35 -KPX Ograve Abreve -35 -KPX Ograve Acircumflex -35 -KPX Ograve Adieresis -35 -KPX Ograve Agrave -35 -KPX Ograve Amacron -35 -KPX Ograve Aogonek -35 -KPX Ograve Aring -35 -KPX Ograve Atilde -35 -KPX Ograve T -40 -KPX Ograve Tcaron -40 -KPX Ograve Tcommaaccent -40 -KPX Ograve V -50 -KPX Ograve W -35 -KPX Ograve X -40 -KPX Ograve Y -50 -KPX Ograve Yacute -50 -KPX Ograve Ydieresis -50 -KPX Ohungarumlaut A -35 -KPX Ohungarumlaut Aacute -35 -KPX Ohungarumlaut Abreve -35 -KPX Ohungarumlaut Acircumflex -35 -KPX Ohungarumlaut Adieresis -35 -KPX Ohungarumlaut Agrave -35 -KPX Ohungarumlaut Amacron -35 -KPX Ohungarumlaut Aogonek -35 -KPX Ohungarumlaut Aring -35 -KPX Ohungarumlaut Atilde -35 -KPX Ohungarumlaut T -40 -KPX Ohungarumlaut Tcaron -40 -KPX Ohungarumlaut Tcommaaccent -40 -KPX Ohungarumlaut V -50 -KPX Ohungarumlaut W -35 -KPX Ohungarumlaut X -40 -KPX Ohungarumlaut Y -50 -KPX Ohungarumlaut Yacute -50 -KPX Ohungarumlaut Ydieresis -50 -KPX Omacron A -35 -KPX Omacron Aacute -35 -KPX Omacron Abreve -35 -KPX Omacron Acircumflex -35 -KPX Omacron Adieresis -35 -KPX Omacron Agrave -35 -KPX Omacron Amacron -35 -KPX Omacron Aogonek -35 -KPX Omacron Aring -35 -KPX Omacron Atilde -35 -KPX Omacron T -40 -KPX Omacron Tcaron -40 -KPX Omacron Tcommaaccent -40 -KPX Omacron V -50 -KPX Omacron W -35 -KPX Omacron X -40 -KPX Omacron Y -50 -KPX Omacron Yacute -50 -KPX Omacron Ydieresis -50 -KPX Oslash A -35 -KPX Oslash Aacute -35 -KPX Oslash Abreve -35 -KPX Oslash Acircumflex -35 -KPX Oslash Adieresis -35 -KPX Oslash Agrave -35 -KPX Oslash Amacron -35 -KPX Oslash Aogonek -35 -KPX Oslash Aring -35 -KPX Oslash Atilde -35 -KPX Oslash T -40 -KPX Oslash Tcaron -40 -KPX Oslash Tcommaaccent -40 -KPX Oslash V -50 -KPX Oslash W -35 -KPX Oslash X -40 -KPX Oslash Y -50 -KPX Oslash Yacute -50 -KPX Oslash Ydieresis -50 -KPX Otilde A -35 -KPX Otilde Aacute -35 -KPX Otilde Abreve -35 -KPX Otilde Acircumflex -35 -KPX Otilde Adieresis -35 -KPX Otilde Agrave -35 -KPX Otilde Amacron -35 -KPX Otilde Aogonek -35 -KPX Otilde Aring -35 -KPX Otilde Atilde -35 -KPX Otilde T -40 -KPX Otilde Tcaron -40 -KPX Otilde Tcommaaccent -40 -KPX Otilde V -50 -KPX Otilde W -35 -KPX Otilde X -40 -KPX Otilde Y -50 -KPX Otilde Yacute -50 -KPX Otilde Ydieresis -50 -KPX P A -92 -KPX P Aacute -92 -KPX P Abreve -92 -KPX P Acircumflex -92 -KPX P Adieresis -92 -KPX P Agrave -92 -KPX P Amacron -92 -KPX P Aogonek -92 -KPX P Aring -92 -KPX P Atilde -92 -KPX P a -15 -KPX P aacute -15 -KPX P abreve -15 -KPX P acircumflex -15 -KPX P adieresis -15 -KPX P agrave -15 -KPX P amacron -15 -KPX P aogonek -15 -KPX P aring -15 -KPX P atilde -15 -KPX P comma -111 -KPX P period -111 -KPX Q U -10 -KPX Q Uacute -10 -KPX Q Ucircumflex -10 -KPX Q Udieresis -10 -KPX Q Ugrave -10 -KPX Q Uhungarumlaut -10 -KPX Q Umacron -10 -KPX Q Uogonek -10 -KPX Q Uring -10 -KPX R O -40 -KPX R Oacute -40 -KPX R Ocircumflex -40 -KPX R Odieresis -40 -KPX R Ograve -40 -KPX R Ohungarumlaut -40 -KPX R Omacron -40 -KPX R Oslash -40 -KPX R Otilde -40 -KPX R T -60 -KPX R Tcaron -60 -KPX R Tcommaaccent -60 -KPX R U -40 -KPX R Uacute -40 -KPX R Ucircumflex -40 -KPX R Udieresis -40 -KPX R Ugrave -40 -KPX R Uhungarumlaut -40 -KPX R Umacron -40 -KPX R Uogonek -40 -KPX R Uring -40 -KPX R V -80 -KPX R W -55 -KPX R Y -65 -KPX R Yacute -65 -KPX R Ydieresis -65 -KPX Racute O -40 -KPX Racute Oacute -40 -KPX Racute Ocircumflex -40 -KPX Racute Odieresis -40 -KPX Racute Ograve -40 -KPX Racute Ohungarumlaut -40 -KPX Racute Omacron -40 -KPX Racute Oslash -40 -KPX Racute Otilde -40 -KPX Racute T -60 -KPX Racute Tcaron -60 -KPX Racute Tcommaaccent -60 -KPX Racute U -40 -KPX Racute Uacute -40 -KPX Racute Ucircumflex -40 -KPX Racute Udieresis -40 -KPX Racute Ugrave -40 -KPX Racute Uhungarumlaut -40 -KPX Racute Umacron -40 -KPX Racute Uogonek -40 -KPX Racute Uring -40 -KPX Racute V -80 -KPX Racute W -55 -KPX Racute Y -65 -KPX Racute Yacute -65 -KPX Racute Ydieresis -65 -KPX Rcaron O -40 -KPX Rcaron Oacute -40 -KPX Rcaron Ocircumflex -40 -KPX Rcaron Odieresis -40 -KPX Rcaron Ograve -40 -KPX Rcaron Ohungarumlaut -40 -KPX Rcaron Omacron -40 -KPX Rcaron Oslash -40 -KPX Rcaron Otilde -40 -KPX Rcaron T -60 -KPX Rcaron Tcaron -60 -KPX Rcaron Tcommaaccent -60 -KPX Rcaron U -40 -KPX Rcaron Uacute -40 -KPX Rcaron Ucircumflex -40 -KPX Rcaron Udieresis -40 -KPX Rcaron Ugrave -40 -KPX Rcaron Uhungarumlaut -40 -KPX Rcaron Umacron -40 -KPX Rcaron Uogonek -40 -KPX Rcaron Uring -40 -KPX Rcaron V -80 -KPX Rcaron W -55 -KPX Rcaron Y -65 -KPX Rcaron Yacute -65 -KPX Rcaron Ydieresis -65 -KPX Rcommaaccent O -40 -KPX Rcommaaccent Oacute -40 -KPX Rcommaaccent Ocircumflex -40 -KPX Rcommaaccent Odieresis -40 -KPX Rcommaaccent Ograve -40 -KPX Rcommaaccent Ohungarumlaut -40 -KPX Rcommaaccent Omacron -40 -KPX Rcommaaccent Oslash -40 -KPX Rcommaaccent Otilde -40 -KPX Rcommaaccent T -60 -KPX Rcommaaccent Tcaron -60 -KPX Rcommaaccent Tcommaaccent -60 -KPX Rcommaaccent U -40 -KPX Rcommaaccent Uacute -40 -KPX Rcommaaccent Ucircumflex -40 -KPX Rcommaaccent Udieresis -40 -KPX Rcommaaccent Ugrave -40 -KPX Rcommaaccent Uhungarumlaut -40 -KPX Rcommaaccent Umacron -40 -KPX Rcommaaccent Uogonek -40 -KPX Rcommaaccent Uring -40 -KPX Rcommaaccent V -80 -KPX Rcommaaccent W -55 -KPX Rcommaaccent Y -65 -KPX Rcommaaccent Yacute -65 -KPX Rcommaaccent Ydieresis -65 -KPX T A -93 -KPX T Aacute -93 -KPX T Abreve -93 -KPX T Acircumflex -93 -KPX T Adieresis -93 -KPX T Agrave -93 -KPX T Amacron -93 -KPX T Aogonek -93 -KPX T Aring -93 -KPX T Atilde -93 -KPX T O -18 -KPX T Oacute -18 -KPX T Ocircumflex -18 -KPX T Odieresis -18 -KPX T Ograve -18 -KPX T Ohungarumlaut -18 -KPX T Omacron -18 -KPX T Oslash -18 -KPX T Otilde -18 -KPX T a -80 -KPX T aacute -80 -KPX T abreve -80 -KPX T acircumflex -80 -KPX T adieresis -40 -KPX T agrave -40 -KPX T amacron -40 -KPX T aogonek -80 -KPX T aring -80 -KPX T atilde -40 -KPX T colon -50 -KPX T comma -74 -KPX T e -70 -KPX T eacute -70 -KPX T ecaron -70 -KPX T ecircumflex -70 -KPX T edieresis -30 -KPX T edotaccent -70 -KPX T egrave -70 -KPX T emacron -30 -KPX T eogonek -70 -KPX T hyphen -92 -KPX T i -35 -KPX T iacute -35 -KPX T iogonek -35 -KPX T o -80 -KPX T oacute -80 -KPX T ocircumflex -80 -KPX T odieresis -80 -KPX T ograve -80 -KPX T ohungarumlaut -80 -KPX T omacron -80 -KPX T oslash -80 -KPX T otilde -80 -KPX T period -74 -KPX T r -35 -KPX T racute -35 -KPX T rcaron -35 -KPX T rcommaaccent -35 -KPX T semicolon -55 -KPX T u -45 -KPX T uacute -45 -KPX T ucircumflex -45 -KPX T udieresis -45 -KPX T ugrave -45 -KPX T uhungarumlaut -45 -KPX T umacron -45 -KPX T uogonek -45 -KPX T uring -45 -KPX T w -80 -KPX T y -80 -KPX T yacute -80 -KPX T ydieresis -80 -KPX Tcaron A -93 -KPX Tcaron Aacute -93 -KPX Tcaron Abreve -93 -KPX Tcaron Acircumflex -93 -KPX Tcaron Adieresis -93 -KPX Tcaron Agrave -93 -KPX Tcaron Amacron -93 -KPX Tcaron Aogonek -93 -KPX Tcaron Aring -93 -KPX Tcaron Atilde -93 -KPX Tcaron O -18 -KPX Tcaron Oacute -18 -KPX Tcaron Ocircumflex -18 -KPX Tcaron Odieresis -18 -KPX Tcaron Ograve -18 -KPX Tcaron Ohungarumlaut -18 -KPX Tcaron Omacron -18 -KPX Tcaron Oslash -18 -KPX Tcaron Otilde -18 -KPX Tcaron a -80 -KPX Tcaron aacute -80 -KPX Tcaron abreve -80 -KPX Tcaron acircumflex -80 -KPX Tcaron adieresis -40 -KPX Tcaron agrave -40 -KPX Tcaron amacron -40 -KPX Tcaron aogonek -80 -KPX Tcaron aring -80 -KPX Tcaron atilde -40 -KPX Tcaron colon -50 -KPX Tcaron comma -74 -KPX Tcaron e -70 -KPX Tcaron eacute -70 -KPX Tcaron ecaron -70 -KPX Tcaron ecircumflex -30 -KPX Tcaron edieresis -30 -KPX Tcaron edotaccent -70 -KPX Tcaron egrave -70 -KPX Tcaron emacron -30 -KPX Tcaron eogonek -70 -KPX Tcaron hyphen -92 -KPX Tcaron i -35 -KPX Tcaron iacute -35 -KPX Tcaron iogonek -35 -KPX Tcaron o -80 -KPX Tcaron oacute -80 -KPX Tcaron ocircumflex -80 -KPX Tcaron odieresis -80 -KPX Tcaron ograve -80 -KPX Tcaron ohungarumlaut -80 -KPX Tcaron omacron -80 -KPX Tcaron oslash -80 -KPX Tcaron otilde -80 -KPX Tcaron period -74 -KPX Tcaron r -35 -KPX Tcaron racute -35 -KPX Tcaron rcaron -35 -KPX Tcaron rcommaaccent -35 -KPX Tcaron semicolon -55 -KPX Tcaron u -45 -KPX Tcaron uacute -45 -KPX Tcaron ucircumflex -45 -KPX Tcaron udieresis -45 -KPX Tcaron ugrave -45 -KPX Tcaron uhungarumlaut -45 -KPX Tcaron umacron -45 -KPX Tcaron uogonek -45 -KPX Tcaron uring -45 -KPX Tcaron w -80 -KPX Tcaron y -80 -KPX Tcaron yacute -80 -KPX Tcaron ydieresis -80 -KPX Tcommaaccent A -93 -KPX Tcommaaccent Aacute -93 -KPX Tcommaaccent Abreve -93 -KPX Tcommaaccent Acircumflex -93 -KPX Tcommaaccent Adieresis -93 -KPX Tcommaaccent Agrave -93 -KPX Tcommaaccent Amacron -93 -KPX Tcommaaccent Aogonek -93 -KPX Tcommaaccent Aring -93 -KPX Tcommaaccent Atilde -93 -KPX Tcommaaccent O -18 -KPX Tcommaaccent Oacute -18 -KPX Tcommaaccent Ocircumflex -18 -KPX Tcommaaccent Odieresis -18 -KPX Tcommaaccent Ograve -18 -KPX Tcommaaccent Ohungarumlaut -18 -KPX Tcommaaccent Omacron -18 -KPX Tcommaaccent Oslash -18 -KPX Tcommaaccent Otilde -18 -KPX Tcommaaccent a -80 -KPX Tcommaaccent aacute -80 -KPX Tcommaaccent abreve -80 -KPX Tcommaaccent acircumflex -80 -KPX Tcommaaccent adieresis -40 -KPX Tcommaaccent agrave -40 -KPX Tcommaaccent amacron -40 -KPX Tcommaaccent aogonek -80 -KPX Tcommaaccent aring -80 -KPX Tcommaaccent atilde -40 -KPX Tcommaaccent colon -50 -KPX Tcommaaccent comma -74 -KPX Tcommaaccent e -70 -KPX Tcommaaccent eacute -70 -KPX Tcommaaccent ecaron -70 -KPX Tcommaaccent ecircumflex -30 -KPX Tcommaaccent edieresis -30 -KPX Tcommaaccent edotaccent -70 -KPX Tcommaaccent egrave -30 -KPX Tcommaaccent emacron -70 -KPX Tcommaaccent eogonek -70 -KPX Tcommaaccent hyphen -92 -KPX Tcommaaccent i -35 -KPX Tcommaaccent iacute -35 -KPX Tcommaaccent iogonek -35 -KPX Tcommaaccent o -80 -KPX Tcommaaccent oacute -80 -KPX Tcommaaccent ocircumflex -80 -KPX Tcommaaccent odieresis -80 -KPX Tcommaaccent ograve -80 -KPX Tcommaaccent ohungarumlaut -80 -KPX Tcommaaccent omacron -80 -KPX Tcommaaccent oslash -80 -KPX Tcommaaccent otilde -80 -KPX Tcommaaccent period -74 -KPX Tcommaaccent r -35 -KPX Tcommaaccent racute -35 -KPX Tcommaaccent rcaron -35 -KPX Tcommaaccent rcommaaccent -35 -KPX Tcommaaccent semicolon -55 -KPX Tcommaaccent u -45 -KPX Tcommaaccent uacute -45 -KPX Tcommaaccent ucircumflex -45 -KPX Tcommaaccent udieresis -45 -KPX Tcommaaccent ugrave -45 -KPX Tcommaaccent uhungarumlaut -45 -KPX Tcommaaccent umacron -45 -KPX Tcommaaccent uogonek -45 -KPX Tcommaaccent uring -45 -KPX Tcommaaccent w -80 -KPX Tcommaaccent y -80 -KPX Tcommaaccent yacute -80 -KPX Tcommaaccent ydieresis -80 -KPX U A -40 -KPX U Aacute -40 -KPX U Abreve -40 -KPX U Acircumflex -40 -KPX U Adieresis -40 -KPX U Agrave -40 -KPX U Amacron -40 -KPX U Aogonek -40 -KPX U Aring -40 -KPX U Atilde -40 -KPX Uacute A -40 -KPX Uacute Aacute -40 -KPX Uacute Abreve -40 -KPX Uacute Acircumflex -40 -KPX Uacute Adieresis -40 -KPX Uacute Agrave -40 -KPX Uacute Amacron -40 -KPX Uacute Aogonek -40 -KPX Uacute Aring -40 -KPX Uacute Atilde -40 -KPX Ucircumflex A -40 -KPX Ucircumflex Aacute -40 -KPX Ucircumflex Abreve -40 -KPX Ucircumflex Acircumflex -40 -KPX Ucircumflex Adieresis -40 -KPX Ucircumflex Agrave -40 -KPX Ucircumflex Amacron -40 -KPX Ucircumflex Aogonek -40 -KPX Ucircumflex Aring -40 -KPX Ucircumflex Atilde -40 -KPX Udieresis A -40 -KPX Udieresis Aacute -40 -KPX Udieresis Abreve -40 -KPX Udieresis Acircumflex -40 -KPX Udieresis Adieresis -40 -KPX Udieresis Agrave -40 -KPX Udieresis Amacron -40 -KPX Udieresis Aogonek -40 -KPX Udieresis Aring -40 -KPX Udieresis Atilde -40 -KPX Ugrave A -40 -KPX Ugrave Aacute -40 -KPX Ugrave Abreve -40 -KPX Ugrave Acircumflex -40 -KPX Ugrave Adieresis -40 -KPX Ugrave Agrave -40 -KPX Ugrave Amacron -40 -KPX Ugrave Aogonek -40 -KPX Ugrave Aring -40 -KPX Ugrave Atilde -40 -KPX Uhungarumlaut A -40 -KPX Uhungarumlaut Aacute -40 -KPX Uhungarumlaut Abreve -40 -KPX Uhungarumlaut Acircumflex -40 -KPX Uhungarumlaut Adieresis -40 -KPX Uhungarumlaut Agrave -40 -KPX Uhungarumlaut Amacron -40 -KPX Uhungarumlaut Aogonek -40 -KPX Uhungarumlaut Aring -40 -KPX Uhungarumlaut Atilde -40 -KPX Umacron A -40 -KPX Umacron Aacute -40 -KPX Umacron Abreve -40 -KPX Umacron Acircumflex -40 -KPX Umacron Adieresis -40 -KPX Umacron Agrave -40 -KPX Umacron Amacron -40 -KPX Umacron Aogonek -40 -KPX Umacron Aring -40 -KPX Umacron Atilde -40 -KPX Uogonek A -40 -KPX Uogonek Aacute -40 -KPX Uogonek Abreve -40 -KPX Uogonek Acircumflex -40 -KPX Uogonek Adieresis -40 -KPX Uogonek Agrave -40 -KPX Uogonek Amacron -40 -KPX Uogonek Aogonek -40 -KPX Uogonek Aring -40 -KPX Uogonek Atilde -40 -KPX Uring A -40 -KPX Uring Aacute -40 -KPX Uring Abreve -40 -KPX Uring Acircumflex -40 -KPX Uring Adieresis -40 -KPX Uring Agrave -40 -KPX Uring Amacron -40 -KPX Uring Aogonek -40 -KPX Uring Aring -40 -KPX Uring Atilde -40 -KPX V A -135 -KPX V Aacute -135 -KPX V Abreve -135 -KPX V Acircumflex -135 -KPX V Adieresis -135 -KPX V Agrave -135 -KPX V Amacron -135 -KPX V Aogonek -135 -KPX V Aring -135 -KPX V Atilde -135 -KPX V G -15 -KPX V Gbreve -15 -KPX V Gcommaaccent -15 -KPX V O -40 -KPX V Oacute -40 -KPX V Ocircumflex -40 -KPX V Odieresis -40 -KPX V Ograve -40 -KPX V Ohungarumlaut -40 -KPX V Omacron -40 -KPX V Oslash -40 -KPX V Otilde -40 -KPX V a -111 -KPX V aacute -111 -KPX V abreve -111 -KPX V acircumflex -71 -KPX V adieresis -71 -KPX V agrave -71 -KPX V amacron -71 -KPX V aogonek -111 -KPX V aring -111 -KPX V atilde -71 -KPX V colon -74 -KPX V comma -129 -KPX V e -111 -KPX V eacute -111 -KPX V ecaron -71 -KPX V ecircumflex -71 -KPX V edieresis -71 -KPX V edotaccent -111 -KPX V egrave -71 -KPX V emacron -71 -KPX V eogonek -111 -KPX V hyphen -100 -KPX V i -60 -KPX V iacute -60 -KPX V icircumflex -20 -KPX V idieresis -20 -KPX V igrave -20 -KPX V imacron -20 -KPX V iogonek -60 -KPX V o -129 -KPX V oacute -129 -KPX V ocircumflex -129 -KPX V odieresis -89 -KPX V ograve -89 -KPX V ohungarumlaut -129 -KPX V omacron -89 -KPX V oslash -129 -KPX V otilde -89 -KPX V period -129 -KPX V semicolon -74 -KPX V u -75 -KPX V uacute -75 -KPX V ucircumflex -75 -KPX V udieresis -75 -KPX V ugrave -75 -KPX V uhungarumlaut -75 -KPX V umacron -75 -KPX V uogonek -75 -KPX V uring -75 -KPX W A -120 -KPX W Aacute -120 -KPX W Abreve -120 -KPX W Acircumflex -120 -KPX W Adieresis -120 -KPX W Agrave -120 -KPX W Amacron -120 -KPX W Aogonek -120 -KPX W Aring -120 -KPX W Atilde -120 -KPX W O -10 -KPX W Oacute -10 -KPX W Ocircumflex -10 -KPX W Odieresis -10 -KPX W Ograve -10 -KPX W Ohungarumlaut -10 -KPX W Omacron -10 -KPX W Oslash -10 -KPX W Otilde -10 -KPX W a -80 -KPX W aacute -80 -KPX W abreve -80 -KPX W acircumflex -80 -KPX W adieresis -80 -KPX W agrave -80 -KPX W amacron -80 -KPX W aogonek -80 -KPX W aring -80 -KPX W atilde -80 -KPX W colon -37 -KPX W comma -92 -KPX W e -80 -KPX W eacute -80 -KPX W ecaron -80 -KPX W ecircumflex -80 -KPX W edieresis -40 -KPX W edotaccent -80 -KPX W egrave -40 -KPX W emacron -40 -KPX W eogonek -80 -KPX W hyphen -65 -KPX W i -40 -KPX W iacute -40 -KPX W iogonek -40 -KPX W o -80 -KPX W oacute -80 -KPX W ocircumflex -80 -KPX W odieresis -80 -KPX W ograve -80 -KPX W ohungarumlaut -80 -KPX W omacron -80 -KPX W oslash -80 -KPX W otilde -80 -KPX W period -92 -KPX W semicolon -37 -KPX W u -50 -KPX W uacute -50 -KPX W ucircumflex -50 -KPX W udieresis -50 -KPX W ugrave -50 -KPX W uhungarumlaut -50 -KPX W umacron -50 -KPX W uogonek -50 -KPX W uring -50 -KPX W y -73 -KPX W yacute -73 -KPX W ydieresis -73 -KPX Y A -120 -KPX Y Aacute -120 -KPX Y Abreve -120 -KPX Y Acircumflex -120 -KPX Y Adieresis -120 -KPX Y Agrave -120 -KPX Y Amacron -120 -KPX Y Aogonek -120 -KPX Y Aring -120 -KPX Y Atilde -120 -KPX Y O -30 -KPX Y Oacute -30 -KPX Y Ocircumflex -30 -KPX Y Odieresis -30 -KPX Y Ograve -30 -KPX Y Ohungarumlaut -30 -KPX Y Omacron -30 -KPX Y Oslash -30 -KPX Y Otilde -30 -KPX Y a -100 -KPX Y aacute -100 -KPX Y abreve -100 -KPX Y acircumflex -100 -KPX Y adieresis -60 -KPX Y agrave -60 -KPX Y amacron -60 -KPX Y aogonek -100 -KPX Y aring -100 -KPX Y atilde -60 -KPX Y colon -92 -KPX Y comma -129 -KPX Y e -100 -KPX Y eacute -100 -KPX Y ecaron -100 -KPX Y ecircumflex -100 -KPX Y edieresis -60 -KPX Y edotaccent -100 -KPX Y egrave -60 -KPX Y emacron -60 -KPX Y eogonek -100 -KPX Y hyphen -111 -KPX Y i -55 -KPX Y iacute -55 -KPX Y iogonek -55 -KPX Y o -110 -KPX Y oacute -110 -KPX Y ocircumflex -110 -KPX Y odieresis -70 -KPX Y ograve -70 -KPX Y ohungarumlaut -110 -KPX Y omacron -70 -KPX Y oslash -110 -KPX Y otilde -70 -KPX Y period -129 -KPX Y semicolon -92 -KPX Y u -111 -KPX Y uacute -111 -KPX Y ucircumflex -111 -KPX Y udieresis -71 -KPX Y ugrave -71 -KPX Y uhungarumlaut -111 -KPX Y umacron -71 -KPX Y uogonek -111 -KPX Y uring -111 -KPX Yacute A -120 -KPX Yacute Aacute -120 -KPX Yacute Abreve -120 -KPX Yacute Acircumflex -120 -KPX Yacute Adieresis -120 -KPX Yacute Agrave -120 -KPX Yacute Amacron -120 -KPX Yacute Aogonek -120 -KPX Yacute Aring -120 -KPX Yacute Atilde -120 -KPX Yacute O -30 -KPX Yacute Oacute -30 -KPX Yacute Ocircumflex -30 -KPX Yacute Odieresis -30 -KPX Yacute Ograve -30 -KPX Yacute Ohungarumlaut -30 -KPX Yacute Omacron -30 -KPX Yacute Oslash -30 -KPX Yacute Otilde -30 -KPX Yacute a -100 -KPX Yacute aacute -100 -KPX Yacute abreve -100 -KPX Yacute acircumflex -100 -KPX Yacute adieresis -60 -KPX Yacute agrave -60 -KPX Yacute amacron -60 -KPX Yacute aogonek -100 -KPX Yacute aring -100 -KPX Yacute atilde -60 -KPX Yacute colon -92 -KPX Yacute comma -129 -KPX Yacute e -100 -KPX Yacute eacute -100 -KPX Yacute ecaron -100 -KPX Yacute ecircumflex -100 -KPX Yacute edieresis -60 -KPX Yacute edotaccent -100 -KPX Yacute egrave -60 -KPX Yacute emacron -60 -KPX Yacute eogonek -100 -KPX Yacute hyphen -111 -KPX Yacute i -55 -KPX Yacute iacute -55 -KPX Yacute iogonek -55 -KPX Yacute o -110 -KPX Yacute oacute -110 -KPX Yacute ocircumflex -110 -KPX Yacute odieresis -70 -KPX Yacute ograve -70 -KPX Yacute ohungarumlaut -110 -KPX Yacute omacron -70 -KPX Yacute oslash -110 -KPX Yacute otilde -70 -KPX Yacute period -129 -KPX Yacute semicolon -92 -KPX Yacute u -111 -KPX Yacute uacute -111 -KPX Yacute ucircumflex -111 -KPX Yacute udieresis -71 -KPX Yacute ugrave -71 -KPX Yacute uhungarumlaut -111 -KPX Yacute umacron -71 -KPX Yacute uogonek -111 -KPX Yacute uring -111 -KPX Ydieresis A -120 -KPX Ydieresis Aacute -120 -KPX Ydieresis Abreve -120 -KPX Ydieresis Acircumflex -120 -KPX Ydieresis Adieresis -120 -KPX Ydieresis Agrave -120 -KPX Ydieresis Amacron -120 -KPX Ydieresis Aogonek -120 -KPX Ydieresis Aring -120 -KPX Ydieresis Atilde -120 -KPX Ydieresis O -30 -KPX Ydieresis Oacute -30 -KPX Ydieresis Ocircumflex -30 -KPX Ydieresis Odieresis -30 -KPX Ydieresis Ograve -30 -KPX Ydieresis Ohungarumlaut -30 -KPX Ydieresis Omacron -30 -KPX Ydieresis Oslash -30 -KPX Ydieresis Otilde -30 -KPX Ydieresis a -100 -KPX Ydieresis aacute -100 -KPX Ydieresis abreve -100 -KPX Ydieresis acircumflex -100 -KPX Ydieresis adieresis -60 -KPX Ydieresis agrave -60 -KPX Ydieresis amacron -60 -KPX Ydieresis aogonek -100 -KPX Ydieresis aring -100 -KPX Ydieresis atilde -100 -KPX Ydieresis colon -92 -KPX Ydieresis comma -129 -KPX Ydieresis e -100 -KPX Ydieresis eacute -100 -KPX Ydieresis ecaron -100 -KPX Ydieresis ecircumflex -100 -KPX Ydieresis edieresis -60 -KPX Ydieresis edotaccent -100 -KPX Ydieresis egrave -60 -KPX Ydieresis emacron -60 -KPX Ydieresis eogonek -100 -KPX Ydieresis hyphen -111 -KPX Ydieresis i -55 -KPX Ydieresis iacute -55 -KPX Ydieresis iogonek -55 -KPX Ydieresis o -110 -KPX Ydieresis oacute -110 -KPX Ydieresis ocircumflex -110 -KPX Ydieresis odieresis -70 -KPX Ydieresis ograve -70 -KPX Ydieresis ohungarumlaut -110 -KPX Ydieresis omacron -70 -KPX Ydieresis oslash -110 -KPX Ydieresis otilde -70 -KPX Ydieresis period -129 -KPX Ydieresis semicolon -92 -KPX Ydieresis u -111 -KPX Ydieresis uacute -111 -KPX Ydieresis ucircumflex -111 -KPX Ydieresis udieresis -71 -KPX Ydieresis ugrave -71 -KPX Ydieresis uhungarumlaut -111 -KPX Ydieresis umacron -71 -KPX Ydieresis uogonek -111 -KPX Ydieresis uring -111 -KPX a v -20 -KPX a w -15 -KPX aacute v -20 -KPX aacute w -15 -KPX abreve v -20 -KPX abreve w -15 -KPX acircumflex v -20 -KPX acircumflex w -15 -KPX adieresis v -20 -KPX adieresis w -15 -KPX agrave v -20 -KPX agrave w -15 -KPX amacron v -20 -KPX amacron w -15 -KPX aogonek v -20 -KPX aogonek w -15 -KPX aring v -20 -KPX aring w -15 -KPX atilde v -20 -KPX atilde w -15 -KPX b period -40 -KPX b u -20 -KPX b uacute -20 -KPX b ucircumflex -20 -KPX b udieresis -20 -KPX b ugrave -20 -KPX b uhungarumlaut -20 -KPX b umacron -20 -KPX b uogonek -20 -KPX b uring -20 -KPX b v -15 -KPX c y -15 -KPX c yacute -15 -KPX c ydieresis -15 -KPX cacute y -15 -KPX cacute yacute -15 -KPX cacute ydieresis -15 -KPX ccaron y -15 -KPX ccaron yacute -15 -KPX ccaron ydieresis -15 -KPX ccedilla y -15 -KPX ccedilla yacute -15 -KPX ccedilla ydieresis -15 -KPX comma quotedblright -70 -KPX comma quoteright -70 -KPX e g -15 -KPX e gbreve -15 -KPX e gcommaaccent -15 -KPX e v -25 -KPX e w -25 -KPX e x -15 -KPX e y -15 -KPX e yacute -15 -KPX e ydieresis -15 -KPX eacute g -15 -KPX eacute gbreve -15 -KPX eacute gcommaaccent -15 -KPX eacute v -25 -KPX eacute w -25 -KPX eacute x -15 -KPX eacute y -15 -KPX eacute yacute -15 -KPX eacute ydieresis -15 -KPX ecaron g -15 -KPX ecaron gbreve -15 -KPX ecaron gcommaaccent -15 -KPX ecaron v -25 -KPX ecaron w -25 -KPX ecaron x -15 -KPX ecaron y -15 -KPX ecaron yacute -15 -KPX ecaron ydieresis -15 -KPX ecircumflex g -15 -KPX ecircumflex gbreve -15 -KPX ecircumflex gcommaaccent -15 -KPX ecircumflex v -25 -KPX ecircumflex w -25 -KPX ecircumflex x -15 -KPX ecircumflex y -15 -KPX ecircumflex yacute -15 -KPX ecircumflex ydieresis -15 -KPX edieresis g -15 -KPX edieresis gbreve -15 -KPX edieresis gcommaaccent -15 -KPX edieresis v -25 -KPX edieresis w -25 -KPX edieresis x -15 -KPX edieresis y -15 -KPX edieresis yacute -15 -KPX edieresis ydieresis -15 -KPX edotaccent g -15 -KPX edotaccent gbreve -15 -KPX edotaccent gcommaaccent -15 -KPX edotaccent v -25 -KPX edotaccent w -25 -KPX edotaccent x -15 -KPX edotaccent y -15 -KPX edotaccent yacute -15 -KPX edotaccent ydieresis -15 -KPX egrave g -15 -KPX egrave gbreve -15 -KPX egrave gcommaaccent -15 -KPX egrave v -25 -KPX egrave w -25 -KPX egrave x -15 -KPX egrave y -15 -KPX egrave yacute -15 -KPX egrave ydieresis -15 -KPX emacron g -15 -KPX emacron gbreve -15 -KPX emacron gcommaaccent -15 -KPX emacron v -25 -KPX emacron w -25 -KPX emacron x -15 -KPX emacron y -15 -KPX emacron yacute -15 -KPX emacron ydieresis -15 -KPX eogonek g -15 -KPX eogonek gbreve -15 -KPX eogonek gcommaaccent -15 -KPX eogonek v -25 -KPX eogonek w -25 -KPX eogonek x -15 -KPX eogonek y -15 -KPX eogonek yacute -15 -KPX eogonek ydieresis -15 -KPX f a -10 -KPX f aacute -10 -KPX f abreve -10 -KPX f acircumflex -10 -KPX f adieresis -10 -KPX f agrave -10 -KPX f amacron -10 -KPX f aogonek -10 -KPX f aring -10 -KPX f atilde -10 -KPX f dotlessi -50 -KPX f f -25 -KPX f i -20 -KPX f iacute -20 -KPX f quoteright 55 -KPX g a -5 -KPX g aacute -5 -KPX g abreve -5 -KPX g acircumflex -5 -KPX g adieresis -5 -KPX g agrave -5 -KPX g amacron -5 -KPX g aogonek -5 -KPX g aring -5 -KPX g atilde -5 -KPX gbreve a -5 -KPX gbreve aacute -5 -KPX gbreve abreve -5 -KPX gbreve acircumflex -5 -KPX gbreve adieresis -5 -KPX gbreve agrave -5 -KPX gbreve amacron -5 -KPX gbreve aogonek -5 -KPX gbreve aring -5 -KPX gbreve atilde -5 -KPX gcommaaccent a -5 -KPX gcommaaccent aacute -5 -KPX gcommaaccent abreve -5 -KPX gcommaaccent acircumflex -5 -KPX gcommaaccent adieresis -5 -KPX gcommaaccent agrave -5 -KPX gcommaaccent amacron -5 -KPX gcommaaccent aogonek -5 -KPX gcommaaccent aring -5 -KPX gcommaaccent atilde -5 -KPX h y -5 -KPX h yacute -5 -KPX h ydieresis -5 -KPX i v -25 -KPX iacute v -25 -KPX icircumflex v -25 -KPX idieresis v -25 -KPX igrave v -25 -KPX imacron v -25 -KPX iogonek v -25 -KPX k e -10 -KPX k eacute -10 -KPX k ecaron -10 -KPX k ecircumflex -10 -KPX k edieresis -10 -KPX k edotaccent -10 -KPX k egrave -10 -KPX k emacron -10 -KPX k eogonek -10 -KPX k o -10 -KPX k oacute -10 -KPX k ocircumflex -10 -KPX k odieresis -10 -KPX k ograve -10 -KPX k ohungarumlaut -10 -KPX k omacron -10 -KPX k oslash -10 -KPX k otilde -10 -KPX k y -15 -KPX k yacute -15 -KPX k ydieresis -15 -KPX kcommaaccent e -10 -KPX kcommaaccent eacute -10 -KPX kcommaaccent ecaron -10 -KPX kcommaaccent ecircumflex -10 -KPX kcommaaccent edieresis -10 -KPX kcommaaccent edotaccent -10 -KPX kcommaaccent egrave -10 -KPX kcommaaccent emacron -10 -KPX kcommaaccent eogonek -10 -KPX kcommaaccent o -10 -KPX kcommaaccent oacute -10 -KPX kcommaaccent ocircumflex -10 -KPX kcommaaccent odieresis -10 -KPX kcommaaccent ograve -10 -KPX kcommaaccent ohungarumlaut -10 -KPX kcommaaccent omacron -10 -KPX kcommaaccent oslash -10 -KPX kcommaaccent otilde -10 -KPX kcommaaccent y -15 -KPX kcommaaccent yacute -15 -KPX kcommaaccent ydieresis -15 -KPX l w -10 -KPX lacute w -10 -KPX lcommaaccent w -10 -KPX lslash w -10 -KPX n v -40 -KPX n y -15 -KPX n yacute -15 -KPX n ydieresis -15 -KPX nacute v -40 -KPX nacute y -15 -KPX nacute yacute -15 -KPX nacute ydieresis -15 -KPX ncaron v -40 -KPX ncaron y -15 -KPX ncaron yacute -15 -KPX ncaron ydieresis -15 -KPX ncommaaccent v -40 -KPX ncommaaccent y -15 -KPX ncommaaccent yacute -15 -KPX ncommaaccent ydieresis -15 -KPX ntilde v -40 -KPX ntilde y -15 -KPX ntilde yacute -15 -KPX ntilde ydieresis -15 -KPX o v -15 -KPX o w -25 -KPX o y -10 -KPX o yacute -10 -KPX o ydieresis -10 -KPX oacute v -15 -KPX oacute w -25 -KPX oacute y -10 -KPX oacute yacute -10 -KPX oacute ydieresis -10 -KPX ocircumflex v -15 -KPX ocircumflex w -25 -KPX ocircumflex y -10 -KPX ocircumflex yacute -10 -KPX ocircumflex ydieresis -10 -KPX odieresis v -15 -KPX odieresis w -25 -KPX odieresis y -10 -KPX odieresis yacute -10 -KPX odieresis ydieresis -10 -KPX ograve v -15 -KPX ograve w -25 -KPX ograve y -10 -KPX ograve yacute -10 -KPX ograve ydieresis -10 -KPX ohungarumlaut v -15 -KPX ohungarumlaut w -25 -KPX ohungarumlaut y -10 -KPX ohungarumlaut yacute -10 -KPX ohungarumlaut ydieresis -10 -KPX omacron v -15 -KPX omacron w -25 -KPX omacron y -10 -KPX omacron yacute -10 -KPX omacron ydieresis -10 -KPX oslash v -15 -KPX oslash w -25 -KPX oslash y -10 -KPX oslash yacute -10 -KPX oslash ydieresis -10 -KPX otilde v -15 -KPX otilde w -25 -KPX otilde y -10 -KPX otilde yacute -10 -KPX otilde ydieresis -10 -KPX p y -10 -KPX p yacute -10 -KPX p ydieresis -10 -KPX period quotedblright -70 -KPX period quoteright -70 -KPX quotedblleft A -80 -KPX quotedblleft Aacute -80 -KPX quotedblleft Abreve -80 -KPX quotedblleft Acircumflex -80 -KPX quotedblleft Adieresis -80 -KPX quotedblleft Agrave -80 -KPX quotedblleft Amacron -80 -KPX quotedblleft Aogonek -80 -KPX quotedblleft Aring -80 -KPX quotedblleft Atilde -80 -KPX quoteleft A -80 -KPX quoteleft Aacute -80 -KPX quoteleft Abreve -80 -KPX quoteleft Acircumflex -80 -KPX quoteleft Adieresis -80 -KPX quoteleft Agrave -80 -KPX quoteleft Amacron -80 -KPX quoteleft Aogonek -80 -KPX quoteleft Aring -80 -KPX quoteleft Atilde -80 -KPX quoteleft quoteleft -74 -KPX quoteright d -50 -KPX quoteright dcroat -50 -KPX quoteright l -10 -KPX quoteright lacute -10 -KPX quoteright lcommaaccent -10 -KPX quoteright lslash -10 -KPX quoteright quoteright -74 -KPX quoteright r -50 -KPX quoteright racute -50 -KPX quoteright rcaron -50 -KPX quoteright rcommaaccent -50 -KPX quoteright s -55 -KPX quoteright sacute -55 -KPX quoteright scaron -55 -KPX quoteright scedilla -55 -KPX quoteright scommaaccent -55 -KPX quoteright space -74 -KPX quoteright t -18 -KPX quoteright tcommaaccent -18 -KPX quoteright v -50 -KPX r comma -40 -KPX r g -18 -KPX r gbreve -18 -KPX r gcommaaccent -18 -KPX r hyphen -20 -KPX r period -55 -KPX racute comma -40 -KPX racute g -18 -KPX racute gbreve -18 -KPX racute gcommaaccent -18 -KPX racute hyphen -20 -KPX racute period -55 -KPX rcaron comma -40 -KPX rcaron g -18 -KPX rcaron gbreve -18 -KPX rcaron gcommaaccent -18 -KPX rcaron hyphen -20 -KPX rcaron period -55 -KPX rcommaaccent comma -40 -KPX rcommaaccent g -18 -KPX rcommaaccent gbreve -18 -KPX rcommaaccent gcommaaccent -18 -KPX rcommaaccent hyphen -20 -KPX rcommaaccent period -55 -KPX space A -55 -KPX space Aacute -55 -KPX space Abreve -55 -KPX space Acircumflex -55 -KPX space Adieresis -55 -KPX space Agrave -55 -KPX space Amacron -55 -KPX space Aogonek -55 -KPX space Aring -55 -KPX space Atilde -55 -KPX space T -18 -KPX space Tcaron -18 -KPX space Tcommaaccent -18 -KPX space V -50 -KPX space W -30 -KPX space Y -90 -KPX space Yacute -90 -KPX space Ydieresis -90 -KPX v a -25 -KPX v aacute -25 -KPX v abreve -25 -KPX v acircumflex -25 -KPX v adieresis -25 -KPX v agrave -25 -KPX v amacron -25 -KPX v aogonek -25 -KPX v aring -25 -KPX v atilde -25 -KPX v comma -65 -KPX v e -15 -KPX v eacute -15 -KPX v ecaron -15 -KPX v ecircumflex -15 -KPX v edieresis -15 -KPX v edotaccent -15 -KPX v egrave -15 -KPX v emacron -15 -KPX v eogonek -15 -KPX v o -20 -KPX v oacute -20 -KPX v ocircumflex -20 -KPX v odieresis -20 -KPX v ograve -20 -KPX v ohungarumlaut -20 -KPX v omacron -20 -KPX v oslash -20 -KPX v otilde -20 -KPX v period -65 -KPX w a -10 -KPX w aacute -10 -KPX w abreve -10 -KPX w acircumflex -10 -KPX w adieresis -10 -KPX w agrave -10 -KPX w amacron -10 -KPX w aogonek -10 -KPX w aring -10 -KPX w atilde -10 -KPX w comma -65 -KPX w o -10 -KPX w oacute -10 -KPX w ocircumflex -10 -KPX w odieresis -10 -KPX w ograve -10 -KPX w ohungarumlaut -10 -KPX w omacron -10 -KPX w oslash -10 -KPX w otilde -10 -KPX w period -65 -KPX x e -15 -KPX x eacute -15 -KPX x ecaron -15 -KPX x ecircumflex -15 -KPX x edieresis -15 -KPX x edotaccent -15 -KPX x egrave -15 -KPX x emacron -15 -KPX x eogonek -15 -KPX y comma -65 -KPX y period -65 -KPX yacute comma -65 -KPX yacute period -65 -KPX ydieresis comma -65 -KPX ydieresis period -65 -EndKernPairs -EndKernData -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/ZapfDingbats.afm b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/ZapfDingbats.afm deleted file mode 100644 index b2745053..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/ZapfDingbats.afm +++ /dev/null @@ -1,225 +0,0 @@ -StartFontMetrics 4.1 -Comment Copyright (c) 1985, 1987, 1988, 1989, 1997 Adobe Systems Incorporated. All Rights Reserved. -Comment Creation Date: Thu May 1 15:14:13 1997 -Comment UniqueID 43082 -Comment VMusage 45775 55535 -FontName ZapfDingbats -FullName ITC Zapf Dingbats -FamilyName ZapfDingbats -Weight Medium -ItalicAngle 0 -IsFixedPitch false -CharacterSet Special -FontBBox -1 -143 981 820 -UnderlinePosition -100 -UnderlineThickness 50 -Version 002.000 -Notice Copyright (c) 1985, 1987, 1988, 1989, 1997 Adobe Systems Incorporated. All Rights Reserved.ITC Zapf Dingbats is a registered trademark of International Typeface Corporation. -EncodingScheme FontSpecific -StdHW 28 -StdVW 90 -StartCharMetrics 202 -C 32 ; WX 278 ; N space ; B 0 0 0 0 ; -C 33 ; WX 974 ; N a1 ; B 35 72 939 621 ; -C 34 ; WX 961 ; N a2 ; B 35 81 927 611 ; -C 35 ; WX 974 ; N a202 ; B 35 72 939 621 ; -C 36 ; WX 980 ; N a3 ; B 35 0 945 692 ; -C 37 ; WX 719 ; N a4 ; B 34 139 685 566 ; -C 38 ; WX 789 ; N a5 ; B 35 -14 755 705 ; -C 39 ; WX 790 ; N a119 ; B 35 -14 755 705 ; -C 40 ; WX 791 ; N a118 ; B 35 -13 761 705 ; -C 41 ; WX 690 ; N a117 ; B 34 138 655 553 ; -C 42 ; WX 960 ; N a11 ; B 35 123 925 568 ; -C 43 ; WX 939 ; N a12 ; B 35 134 904 559 ; -C 44 ; WX 549 ; N a13 ; B 29 -11 516 705 ; -C 45 ; WX 855 ; N a14 ; B 34 59 820 632 ; -C 46 ; WX 911 ; N a15 ; B 35 50 876 642 ; -C 47 ; WX 933 ; N a16 ; B 35 139 899 550 ; -C 48 ; WX 911 ; N a105 ; B 35 50 876 642 ; -C 49 ; WX 945 ; N a17 ; B 35 139 909 553 ; -C 50 ; WX 974 ; N a18 ; B 35 104 938 587 ; -C 51 ; WX 755 ; N a19 ; B 34 -13 721 705 ; -C 52 ; WX 846 ; N a20 ; B 36 -14 811 705 ; -C 53 ; WX 762 ; N a21 ; B 35 0 727 692 ; -C 54 ; WX 761 ; N a22 ; B 35 0 727 692 ; -C 55 ; WX 571 ; N a23 ; B -1 -68 571 661 ; -C 56 ; WX 677 ; N a24 ; B 36 -13 642 705 ; -C 57 ; WX 763 ; N a25 ; B 35 0 728 692 ; -C 58 ; WX 760 ; N a26 ; B 35 0 726 692 ; -C 59 ; WX 759 ; N a27 ; B 35 0 725 692 ; -C 60 ; WX 754 ; N a28 ; B 35 0 720 692 ; -C 61 ; WX 494 ; N a6 ; B 35 0 460 692 ; -C 62 ; WX 552 ; N a7 ; B 35 0 517 692 ; -C 63 ; WX 537 ; N a8 ; B 35 0 503 692 ; -C 64 ; WX 577 ; N a9 ; B 35 96 542 596 ; -C 65 ; WX 692 ; N a10 ; B 35 -14 657 705 ; -C 66 ; WX 786 ; N a29 ; B 35 -14 751 705 ; -C 67 ; WX 788 ; N a30 ; B 35 -14 752 705 ; -C 68 ; WX 788 ; N a31 ; B 35 -14 753 705 ; -C 69 ; WX 790 ; N a32 ; B 35 -14 756 705 ; -C 70 ; WX 793 ; N a33 ; B 35 -13 759 705 ; -C 71 ; WX 794 ; N a34 ; B 35 -13 759 705 ; -C 72 ; WX 816 ; N a35 ; B 35 -14 782 705 ; -C 73 ; WX 823 ; N a36 ; B 35 -14 787 705 ; -C 74 ; WX 789 ; N a37 ; B 35 -14 754 705 ; -C 75 ; WX 841 ; N a38 ; B 35 -14 807 705 ; -C 76 ; WX 823 ; N a39 ; B 35 -14 789 705 ; -C 77 ; WX 833 ; N a40 ; B 35 -14 798 705 ; -C 78 ; WX 816 ; N a41 ; B 35 -13 782 705 ; -C 79 ; WX 831 ; N a42 ; B 35 -14 796 705 ; -C 80 ; WX 923 ; N a43 ; B 35 -14 888 705 ; -C 81 ; WX 744 ; N a44 ; B 35 0 710 692 ; -C 82 ; WX 723 ; N a45 ; B 35 0 688 692 ; -C 83 ; WX 749 ; N a46 ; B 35 0 714 692 ; -C 84 ; WX 790 ; N a47 ; B 34 -14 756 705 ; -C 85 ; WX 792 ; N a48 ; B 35 -14 758 705 ; -C 86 ; WX 695 ; N a49 ; B 35 -14 661 706 ; -C 87 ; WX 776 ; N a50 ; B 35 -6 741 699 ; -C 88 ; WX 768 ; N a51 ; B 35 -7 734 699 ; -C 89 ; WX 792 ; N a52 ; B 35 -14 757 705 ; -C 90 ; WX 759 ; N a53 ; B 35 0 725 692 ; -C 91 ; WX 707 ; N a54 ; B 35 -13 672 704 ; -C 92 ; WX 708 ; N a55 ; B 35 -14 672 705 ; -C 93 ; WX 682 ; N a56 ; B 35 -14 647 705 ; -C 94 ; WX 701 ; N a57 ; B 35 -14 666 705 ; -C 95 ; WX 826 ; N a58 ; B 35 -14 791 705 ; -C 96 ; WX 815 ; N a59 ; B 35 -14 780 705 ; -C 97 ; WX 789 ; N a60 ; B 35 -14 754 705 ; -C 98 ; WX 789 ; N a61 ; B 35 -14 754 705 ; -C 99 ; WX 707 ; N a62 ; B 34 -14 673 705 ; -C 100 ; WX 687 ; N a63 ; B 36 0 651 692 ; -C 101 ; WX 696 ; N a64 ; B 35 0 661 691 ; -C 102 ; WX 689 ; N a65 ; B 35 0 655 692 ; -C 103 ; WX 786 ; N a66 ; B 34 -14 751 705 ; -C 104 ; WX 787 ; N a67 ; B 35 -14 752 705 ; -C 105 ; WX 713 ; N a68 ; B 35 -14 678 705 ; -C 106 ; WX 791 ; N a69 ; B 35 -14 756 705 ; -C 107 ; WX 785 ; N a70 ; B 36 -14 751 705 ; -C 108 ; WX 791 ; N a71 ; B 35 -14 757 705 ; -C 109 ; WX 873 ; N a72 ; B 35 -14 838 705 ; -C 110 ; WX 761 ; N a73 ; B 35 0 726 692 ; -C 111 ; WX 762 ; N a74 ; B 35 0 727 692 ; -C 112 ; WX 762 ; N a203 ; B 35 0 727 692 ; -C 113 ; WX 759 ; N a75 ; B 35 0 725 692 ; -C 114 ; WX 759 ; N a204 ; B 35 0 725 692 ; -C 115 ; WX 892 ; N a76 ; B 35 0 858 705 ; -C 116 ; WX 892 ; N a77 ; B 35 -14 858 692 ; -C 117 ; WX 788 ; N a78 ; B 35 -14 754 705 ; -C 118 ; WX 784 ; N a79 ; B 35 -14 749 705 ; -C 119 ; WX 438 ; N a81 ; B 35 -14 403 705 ; -C 120 ; WX 138 ; N a82 ; B 35 0 104 692 ; -C 121 ; WX 277 ; N a83 ; B 35 0 242 692 ; -C 122 ; WX 415 ; N a84 ; B 35 0 380 692 ; -C 123 ; WX 392 ; N a97 ; B 35 263 357 705 ; -C 124 ; WX 392 ; N a98 ; B 34 263 357 705 ; -C 125 ; WX 668 ; N a99 ; B 35 263 633 705 ; -C 126 ; WX 668 ; N a100 ; B 36 263 634 705 ; -C 128 ; WX 390 ; N a89 ; B 35 -14 356 705 ; -C 129 ; WX 390 ; N a90 ; B 35 -14 355 705 ; -C 130 ; WX 317 ; N a93 ; B 35 0 283 692 ; -C 131 ; WX 317 ; N a94 ; B 35 0 283 692 ; -C 132 ; WX 276 ; N a91 ; B 35 0 242 692 ; -C 133 ; WX 276 ; N a92 ; B 35 0 242 692 ; -C 134 ; WX 509 ; N a205 ; B 35 0 475 692 ; -C 135 ; WX 509 ; N a85 ; B 35 0 475 692 ; -C 136 ; WX 410 ; N a206 ; B 35 0 375 692 ; -C 137 ; WX 410 ; N a86 ; B 35 0 375 692 ; -C 138 ; WX 234 ; N a87 ; B 35 -14 199 705 ; -C 139 ; WX 234 ; N a88 ; B 35 -14 199 705 ; -C 140 ; WX 334 ; N a95 ; B 35 0 299 692 ; -C 141 ; WX 334 ; N a96 ; B 35 0 299 692 ; -C 161 ; WX 732 ; N a101 ; B 35 -143 697 806 ; -C 162 ; WX 544 ; N a102 ; B 56 -14 488 706 ; -C 163 ; WX 544 ; N a103 ; B 34 -14 508 705 ; -C 164 ; WX 910 ; N a104 ; B 35 40 875 651 ; -C 165 ; WX 667 ; N a106 ; B 35 -14 633 705 ; -C 166 ; WX 760 ; N a107 ; B 35 -14 726 705 ; -C 167 ; WX 760 ; N a108 ; B 0 121 758 569 ; -C 168 ; WX 776 ; N a112 ; B 35 0 741 705 ; -C 169 ; WX 595 ; N a111 ; B 34 -14 560 705 ; -C 170 ; WX 694 ; N a110 ; B 35 -14 659 705 ; -C 171 ; WX 626 ; N a109 ; B 34 0 591 705 ; -C 172 ; WX 788 ; N a120 ; B 35 -14 754 705 ; -C 173 ; WX 788 ; N a121 ; B 35 -14 754 705 ; -C 174 ; WX 788 ; N a122 ; B 35 -14 754 705 ; -C 175 ; WX 788 ; N a123 ; B 35 -14 754 705 ; -C 176 ; WX 788 ; N a124 ; B 35 -14 754 705 ; -C 177 ; WX 788 ; N a125 ; B 35 -14 754 705 ; -C 178 ; WX 788 ; N a126 ; B 35 -14 754 705 ; -C 179 ; WX 788 ; N a127 ; B 35 -14 754 705 ; -C 180 ; WX 788 ; N a128 ; B 35 -14 754 705 ; -C 181 ; WX 788 ; N a129 ; B 35 -14 754 705 ; -C 182 ; WX 788 ; N a130 ; B 35 -14 754 705 ; -C 183 ; WX 788 ; N a131 ; B 35 -14 754 705 ; -C 184 ; WX 788 ; N a132 ; B 35 -14 754 705 ; -C 185 ; WX 788 ; N a133 ; B 35 -14 754 705 ; -C 186 ; WX 788 ; N a134 ; B 35 -14 754 705 ; -C 187 ; WX 788 ; N a135 ; B 35 -14 754 705 ; -C 188 ; WX 788 ; N a136 ; B 35 -14 754 705 ; -C 189 ; WX 788 ; N a137 ; B 35 -14 754 705 ; -C 190 ; WX 788 ; N a138 ; B 35 -14 754 705 ; -C 191 ; WX 788 ; N a139 ; B 35 -14 754 705 ; -C 192 ; WX 788 ; N a140 ; B 35 -14 754 705 ; -C 193 ; WX 788 ; N a141 ; B 35 -14 754 705 ; -C 194 ; WX 788 ; N a142 ; B 35 -14 754 705 ; -C 195 ; WX 788 ; N a143 ; B 35 -14 754 705 ; -C 196 ; WX 788 ; N a144 ; B 35 -14 754 705 ; -C 197 ; WX 788 ; N a145 ; B 35 -14 754 705 ; -C 198 ; WX 788 ; N a146 ; B 35 -14 754 705 ; -C 199 ; WX 788 ; N a147 ; B 35 -14 754 705 ; -C 200 ; WX 788 ; N a148 ; B 35 -14 754 705 ; -C 201 ; WX 788 ; N a149 ; B 35 -14 754 705 ; -C 202 ; WX 788 ; N a150 ; B 35 -14 754 705 ; -C 203 ; WX 788 ; N a151 ; B 35 -14 754 705 ; -C 204 ; WX 788 ; N a152 ; B 35 -14 754 705 ; -C 205 ; WX 788 ; N a153 ; B 35 -14 754 705 ; -C 206 ; WX 788 ; N a154 ; B 35 -14 754 705 ; -C 207 ; WX 788 ; N a155 ; B 35 -14 754 705 ; -C 208 ; WX 788 ; N a156 ; B 35 -14 754 705 ; -C 209 ; WX 788 ; N a157 ; B 35 -14 754 705 ; -C 210 ; WX 788 ; N a158 ; B 35 -14 754 705 ; -C 211 ; WX 788 ; N a159 ; B 35 -14 754 705 ; -C 212 ; WX 894 ; N a160 ; B 35 58 860 634 ; -C 213 ; WX 838 ; N a161 ; B 35 152 803 540 ; -C 214 ; WX 1016 ; N a163 ; B 34 152 981 540 ; -C 215 ; WX 458 ; N a164 ; B 35 -127 422 820 ; -C 216 ; WX 748 ; N a196 ; B 35 94 698 597 ; -C 217 ; WX 924 ; N a165 ; B 35 140 890 552 ; -C 218 ; WX 748 ; N a192 ; B 35 94 698 597 ; -C 219 ; WX 918 ; N a166 ; B 35 166 884 526 ; -C 220 ; WX 927 ; N a167 ; B 35 32 892 660 ; -C 221 ; WX 928 ; N a168 ; B 35 129 891 562 ; -C 222 ; WX 928 ; N a169 ; B 35 128 893 563 ; -C 223 ; WX 834 ; N a170 ; B 35 155 799 537 ; -C 224 ; WX 873 ; N a171 ; B 35 93 838 599 ; -C 225 ; WX 828 ; N a172 ; B 35 104 791 588 ; -C 226 ; WX 924 ; N a173 ; B 35 98 889 594 ; -C 227 ; WX 924 ; N a162 ; B 35 98 889 594 ; -C 228 ; WX 917 ; N a174 ; B 35 0 882 692 ; -C 229 ; WX 930 ; N a175 ; B 35 84 896 608 ; -C 230 ; WX 931 ; N a176 ; B 35 84 896 608 ; -C 231 ; WX 463 ; N a177 ; B 35 -99 429 791 ; -C 232 ; WX 883 ; N a178 ; B 35 71 848 623 ; -C 233 ; WX 836 ; N a179 ; B 35 44 802 648 ; -C 234 ; WX 836 ; N a193 ; B 35 44 802 648 ; -C 235 ; WX 867 ; N a180 ; B 35 101 832 591 ; -C 236 ; WX 867 ; N a199 ; B 35 101 832 591 ; -C 237 ; WX 696 ; N a181 ; B 35 44 661 648 ; -C 238 ; WX 696 ; N a200 ; B 35 44 661 648 ; -C 239 ; WX 874 ; N a182 ; B 35 77 840 619 ; -C 241 ; WX 874 ; N a201 ; B 35 73 840 615 ; -C 242 ; WX 760 ; N a183 ; B 35 0 725 692 ; -C 243 ; WX 946 ; N a184 ; B 35 160 911 533 ; -C 244 ; WX 771 ; N a197 ; B 34 37 736 655 ; -C 245 ; WX 865 ; N a185 ; B 35 207 830 481 ; -C 246 ; WX 771 ; N a194 ; B 34 37 736 655 ; -C 247 ; WX 888 ; N a198 ; B 34 -19 853 712 ; -C 248 ; WX 967 ; N a186 ; B 35 124 932 568 ; -C 249 ; WX 888 ; N a195 ; B 34 -19 853 712 ; -C 250 ; WX 831 ; N a187 ; B 35 113 796 579 ; -C 251 ; WX 873 ; N a188 ; B 36 118 838 578 ; -C 252 ; WX 927 ; N a189 ; B 35 150 891 542 ; -C 253 ; WX 970 ; N a190 ; B 35 76 931 616 ; -C 254 ; WX 918 ; N a191 ; B 34 99 884 593 ; -EndCharMetrics -EndFontMetrics diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/installed-fonts.dist.json b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/installed-fonts.dist.json deleted file mode 100644 index c6abf158..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/installed-fonts.dist.json +++ /dev/null @@ -1,80 +0,0 @@ -{ - "sans-serif": { - "normal": "Helvetica", - "bold": "Helvetica-Bold", - "italic": "Helvetica-Oblique", - "bold_italic": "Helvetica-BoldOblique" - }, - "times": { - "normal": "Times-Roman", - "bold": "Times-Bold", - "italic": "Times-Italic", - "bold_italic": "Times-BoldItalic" - }, - "times-roman": { - "normal": "Times-Roman", - "bold": "Times-Bold", - "italic": "Times-Italic", - "bold_italic": "Times-BoldItalic" - }, - "courier": { - "normal": "Courier", - "bold": "Courier-Bold", - "italic": "Courier-Oblique", - "bold_italic": "Courier-BoldOblique" - }, - "helvetica": { - "normal": "Helvetica", - "bold": "Helvetica-Bold", - "italic": "Helvetica-Oblique", - "bold_italic": "Helvetica-BoldOblique" - }, - "zapfdingbats": { - "normal": "ZapfDingbats", - "bold": "ZapfDingbats", - "italic": "ZapfDingbats", - "bold_italic": "ZapfDingbats" - }, - "symbol": { - "normal": "Symbol", - "bold": "Symbol", - "italic": "Symbol", - "bold_italic": "Symbol" - }, - "serif": { - "normal": "Times-Roman", - "bold": "Times-Bold", - "italic": "Times-Italic", - "bold_italic": "Times-BoldItalic" - }, - "monospace": { - "normal": "Courier", - "bold": "Courier-Bold", - "italic": "Courier-Oblique", - "bold_italic": "Courier-BoldOblique" - }, - "fixed": { - "normal": "Courier", - "bold": "Courier-Bold", - "italic": "Courier-Oblique", - "bold_italic": "Courier-BoldOblique" - }, - "dejavu sans": { - "bold": "DejaVuSans-Bold", - "bold_italic": "DejaVuSans-BoldOblique", - "italic": "DejaVuSans-Oblique", - "normal": "DejaVuSans" - }, - "dejavu sans mono": { - "bold": "DejaVuSansMono-Bold", - "bold_italic": "DejaVuSansMono-BoldOblique", - "italic": "DejaVuSansMono-Oblique", - "normal": "DejaVuSansMono" - }, - "dejavu serif": { - "bold": "DejaVuSerif-Bold", - "bold_italic": "DejaVuSerif-BoldItalic", - "italic": "DejaVuSerif-Italic", - "normal": "DejaVuSerif" - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/mustRead.html b/docker/statistics/vendor/dompdf/dompdf/lib/fonts/mustRead.html deleted file mode 100644 index b9f4ba2a..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/fonts/mustRead.html +++ /dev/null @@ -1,17 +0,0 @@ - - - - - Core 14 AFM Files - ReadMe - - - or - - - - - -
    This file and the 14 PostScript(R) AFM files it accompanies may be used, copied, and distributed for any purpose and without charge, with or without modification, provided that all copyright notices are retained; that the AFM files are not distributed without this file; that all modifications to this file or any of the AFM files are prominently noted in the modified file(s); and that this paragraph is not modified. Adobe Systems has no responsibility or obligation to support the use of the AFM files. Col
    -

    Source http://www.adobe.com/devnet/font/#pcfi

    - - \ No newline at end of file diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/res/broken_image.png b/docker/statistics/vendor/dompdf/dompdf/lib/res/broken_image.png deleted file mode 100644 index 771a1a37..00000000 Binary files a/docker/statistics/vendor/dompdf/dompdf/lib/res/broken_image.png and /dev/null differ diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/res/broken_image.svg b/docker/statistics/vendor/dompdf/dompdf/lib/res/broken_image.svg deleted file mode 100644 index 83ba7e74..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/res/broken_image.svg +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/docker/statistics/vendor/dompdf/dompdf/lib/res/html.css b/docker/statistics/vendor/dompdf/dompdf/lib/res/html.css deleted file mode 100644 index b3aae08b..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/lib/res/html.css +++ /dev/null @@ -1,518 +0,0 @@ -/** - * dompdf default stylesheet. - * - * @package dompdf - * @link https://github.com/dompdf/dompdf - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - * - * Portions from Mozilla - * @link https://dxr.mozilla.org/mozilla-central/source/layout/style/res/html.css - * @license http://mozilla.org/MPL/2.0/ Mozilla Public License, v. 2.0 - * - * Portions from W3C - * @link https://www.w3.org/TR/css-ui-3/#default-style-sheet - * - */ - -@page { - margin: 1.2cm; -} - -html { - display: -dompdf-page !important; - counter-reset: page; -} - -/* blocks */ - -article, -aside, -details, -div, -dt, -figcaption, -footer, -form, -header, -hgroup, -main, -nav, -noscript, -section, -summary { - display: block; -} - -body { - page-break-before: avoid; - display: block !important; - counter-increment: page; -} - -p, dl, multicol { - display: block; - margin: 1em 0; -} - -dd { - display: block; - margin-left: 40px; -} - -blockquote, figure { - display: block; - margin: 1em 40px; -} - -address { - display: block; - font-style: italic; -} - -center { - display: block; - text-align: center; -} - -blockquote[type=cite] { - display: block; - margin: 1em 0; - padding-left: 1em; - border-left: solid; - border-color: blue; - border-width: thin; -} - -h1, h2, h3, h4, h5, h6 { - display: block; - font-weight: bold; -} - -h1 { - font-size: 2em; - margin: .67em 0; -} - -h2 { - font-size: 1.5em; - margin: .83em 0; -} - -h3 { - font-size: 1.17em; - margin: 1em 0; -} - -h4 { - margin: 1.33em 0; -} - -h5 { - font-size: 0.83em; - margin: 1.67em 0; -} - -h6 { - font-size: 0.67em; - margin: 2.33em 0; -} - -listing { - display: block; - font-family: fixed; - font-size: medium; - white-space: pre; - margin: 1em 0; -} - -plaintext, pre, xmp { - display: block; - font-family: fixed; - white-space: pre; - margin: 1em 0; -} - -/* tables */ - -table { - display: table; - border-spacing: 2px; - border-collapse: separate; - margin-top: 0; - margin-bottom: 0; - text-indent: 0; - text-align: left; /* quirk */ -} - -table[border] { - border: outset gray; -} - -table[border] td, -table[border] th { - border: 1px inset gray; -} - -table[border="0"] td, -table[border="0"] th { - border-width: 0; -} - -/* make sure backgrounds are inherited in tables -- see bug 4510 */ -td, th, tr { - background: inherit; -} - -/* caption inherits from table not table-outer */ -caption { - display: table-caption; - text-align: center; -} - -tr { - display: table-row; - vertical-align: inherit; -} - -col { - display: table-column; -} - -colgroup { - display: table-column-group; -} - -tbody { - display: table-row-group; - vertical-align: middle; -} - -thead { - display: table-header-group; - vertical-align: middle; -} - -tfoot { - display: table-footer-group; - vertical-align: middle; -} - -/* To simulate tbody auto-insertion */ -table > tr { - vertical-align: middle; -} - -td { - display: table-cell; - vertical-align: inherit; - text-align: inherit; - padding: 1px; -} - -th { - display: table-cell; - vertical-align: inherit; - text-align: center; - font-weight: bold; - padding: 1px; -} - -/* inlines */ - -q::before { - content: open-quote; -} - -q::after { - content: close-quote; -} - -:link { - color: #00c; - text-decoration: underline; -} - -b, strong { - font-weight: bolder; -} - -i, cite, em, var, dfn { - font-style: italic; -} - -tt, code, kbd, samp { - font-family: fixed; -} - -u, ins { - text-decoration: underline; -} - -s, strike, del { - text-decoration: line-through; -} - -big { - font-size: larger; -} - -small { - font-size: smaller; -} - -sub { - vertical-align: sub; - font-size: smaller; - line-height: normal; -} - -sup { - vertical-align: super; - font-size: smaller; - line-height: normal; -} - -nobr { - white-space: nowrap; -} - -mark { - background: yellow; - color: black; -} - -/* titles */ - -abbr[title], acronym[title] { - text-decoration: dotted underline; -} - -/* lists */ - -ul, menu, dir { - display: block; - list-style-type: disc; - margin: 1em 0; - padding-left: 40px; -} - -ol { - display: block; - list-style-type: decimal; - margin: 1em 0; - padding-left: 40px; -} - -li { - display: list-item; -} - -/*li::before { - display: -dompdf-list-bullet !important; - content: counter(-dompdf-default-counter) ". "; - padding-right: 0.5em; -}*/ - -/* nested lists have no top/bottom margins */ -:matches(ul, ol, dir, menu, dl) ul, -:matches(ul, ol, dir, menu, dl) ol, -:matches(ul, ol, dir, menu, dl) dir, -:matches(ul, ol, dir, menu, dl) menu, -:matches(ul, ol, dir, menu, dl) dl { - margin-top: 0; - margin-bottom: 0; -} - -/* 2 deep unordered lists use a circle */ -:matches(ul, ol, dir, menu) ul, -:matches(ul, ol, dir, menu) ul, -:matches(ul, ol, dir, menu) ul, -:matches(ul, ol, dir, menu) ul { - list-style-type: circle; -} - -/* 3 deep (or more) unordered lists use a square */ -:matches(ul, ol, dir, menu) :matches(ul, ol, dir, menu) ul, -:matches(ul, ol, dir, menu) :matches(ul, ol, dir, menu) menu, -:matches(ul, ol, dir, menu) :matches(ul, ol, dir, menu) dir { - list-style-type: square; -} - -/* forms */ -/* From https://www.w3.org/TR/css-ui-3/#default-style-sheet */ -form { - display: block; -} - -input, button, select { - display: inline-block; - font-family: sans-serif; -} - -input[type=text], -input[type=password], -select { - width: 12em; -} - -input[type=text], -input[type=password], -input[type=button], -input[type=submit], -input[type=reset], -input[type=file], -button, -textarea, -select { - background: #FFF; - border: 1px solid #999; - padding: 2px; - margin: 2px; -} - -input[type=button], -input[type=submit], -input[type=reset], -input[type=file], -button { - background: #CCC; - text-align: center; -} - -input[type=file] { - width: 8em; -} - -input[type=text]::before, -input[type=button]::before, -input[type=submit]::before, -input[type=reset]::before { - content: attr(value); -} - -input[type=file]::before { - content: "Choose a file"; -} - -input[type=password][value]::before { - font-family: "DejaVu Sans" !important; - content: "\2022\2022\2022\2022\2022\2022\2022\2022"; - line-height: 1em; -} - -input[type=checkbox], -input[type=radio], -select::after { - font-family: "DejaVu Sans" !important; - font-size: 18px; - line-height: 1; -} - -input[type=checkbox]::before { - content: "\2610"; -} - -input[type=checkbox][checked]::before { - content: "\2611"; -} - -input[type=radio]::before { - content: "\25CB"; -} - -input[type=radio][checked]::before { - content: "\25C9"; -} - -textarea { - display: block; - height: 3em; - overflow: hidden; - font-family: monospace; - white-space: pre-wrap; - word-wrap: break-word; -} - -select { - position: relative!important; - overflow: hidden!important; -} - -select::after { - position: absolute; - right: 0; - top: 0; - height: 5em; - width: 1.4em; - text-align: center; - background: #CCC; - content: "\25BE"; -} - -select option { - display: none; -} - -select option[selected] { - display: inline; -} - -fieldset { - display: block; - margin: 0.6em 2px 2px; - padding: 0.75em; - border: 1pt groove #666; - position: relative; -} - -fieldset > legend { - position: absolute; - top: -0.6em; - left: 0.75em; - padding: 0 0.3em; - background: white; -} - -legend { - display: inline-block; -} - -/* leafs */ - -hr { - display: block; - height: 0; - border: 1px inset; - margin: 0.5em auto 0.5em auto; -} - -hr[size="1"] { - border-style: solid none none none; -} - -iframe { - border: 2px inset; -} - -noframes { - display: block; -} - -br { - display: -dompdf-br; -} - -img, img_generated { - display: -dompdf-image !important; -} - -dompdf_generated { - display: inline; -} - -/* hidden elements */ -area, base, basefont, head, meta, script, style, title, -noembed, param { - display: none; - -dompdf-keep: yes; -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Adapter/CPDF.php b/docker/statistics/vendor/dompdf/dompdf/src/Adapter/CPDF.php deleted file mode 100644 index 13802b6c..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Adapter/CPDF.php +++ /dev/null @@ -1,944 +0,0 @@ - [0.0, 0.0, 4767.87, 6740.79], - "2a0" => [0.0, 0.0, 3370.39, 4767.87], - "a0" => [0.0, 0.0, 2383.94, 3370.39], - "a1" => [0.0, 0.0, 1683.78, 2383.94], - "a2" => [0.0, 0.0, 1190.55, 1683.78], - "a3" => [0.0, 0.0, 841.89, 1190.55], - "a4" => [0.0, 0.0, 595.28, 841.89], - "a5" => [0.0, 0.0, 419.53, 595.28], - "a6" => [0.0, 0.0, 297.64, 419.53], - "a7" => [0.0, 0.0, 209.76, 297.64], - "a8" => [0.0, 0.0, 147.40, 209.76], - "a9" => [0.0, 0.0, 104.88, 147.40], - "a10" => [0.0, 0.0, 73.70, 104.88], - "b0" => [0.0, 0.0, 2834.65, 4008.19], - "b1" => [0.0, 0.0, 2004.09, 2834.65], - "b2" => [0.0, 0.0, 1417.32, 2004.09], - "b3" => [0.0, 0.0, 1000.63, 1417.32], - "b4" => [0.0, 0.0, 708.66, 1000.63], - "b5" => [0.0, 0.0, 498.90, 708.66], - "b6" => [0.0, 0.0, 354.33, 498.90], - "b7" => [0.0, 0.0, 249.45, 354.33], - "b8" => [0.0, 0.0, 175.75, 249.45], - "b9" => [0.0, 0.0, 124.72, 175.75], - "b10" => [0.0, 0.0, 87.87, 124.72], - "c0" => [0.0, 0.0, 2599.37, 3676.54], - "c1" => [0.0, 0.0, 1836.85, 2599.37], - "c2" => [0.0, 0.0, 1298.27, 1836.85], - "c3" => [0.0, 0.0, 918.43, 1298.27], - "c4" => [0.0, 0.0, 649.13, 918.43], - "c5" => [0.0, 0.0, 459.21, 649.13], - "c6" => [0.0, 0.0, 323.15, 459.21], - "c7" => [0.0, 0.0, 229.61, 323.15], - "c8" => [0.0, 0.0, 161.57, 229.61], - "c9" => [0.0, 0.0, 113.39, 161.57], - "c10" => [0.0, 0.0, 79.37, 113.39], - "ra0" => [0.0, 0.0, 2437.80, 3458.27], - "ra1" => [0.0, 0.0, 1729.13, 2437.80], - "ra2" => [0.0, 0.0, 1218.90, 1729.13], - "ra3" => [0.0, 0.0, 864.57, 1218.90], - "ra4" => [0.0, 0.0, 609.45, 864.57], - "sra0" => [0.0, 0.0, 2551.18, 3628.35], - "sra1" => [0.0, 0.0, 1814.17, 2551.18], - "sra2" => [0.0, 0.0, 1275.59, 1814.17], - "sra3" => [0.0, 0.0, 907.09, 1275.59], - "sra4" => [0.0, 0.0, 637.80, 907.09], - "letter" => [0.0, 0.0, 612.00, 792.00], - "half-letter" => [0.0, 0.0, 396.00, 612.00], - "legal" => [0.0, 0.0, 612.00, 1008.00], - "ledger" => [0.0, 0.0, 1224.00, 792.00], - "tabloid" => [0.0, 0.0, 792.00, 1224.00], - "executive" => [0.0, 0.0, 521.86, 756.00], - "folio" => [0.0, 0.0, 612.00, 936.00], - "commercial #10 envelope" => [0.0, 0.0, 684.00, 297.00], - "catalog #10 1/2 envelope" => [0.0, 0.0, 648.00, 864.00], - "8.5x11" => [0.0, 0.0, 612.00, 792.00], - "8.5x14" => [0.0, 0.0, 612.00, 1008.00], - "11x17" => [0.0, 0.0, 792.00, 1224.00], - ]; - - /** - * The Dompdf object - * - * @var Dompdf - */ - protected $_dompdf; - - /** - * Instance of Cpdf class - * - * @var \Dompdf\Cpdf - */ - protected $_pdf; - - /** - * PDF width, in points - * - * @var float - */ - protected $_width; - - /** - * PDF height, in points - * - * @var float - */ - protected $_height; - - /** - * Current page number - * - * @var int - */ - protected $_page_number; - - /** - * Total number of pages - * - * @var int - */ - protected $_page_count; - - /** - * Array of pages for accessing after rendering is initially complete - * - * @var array - */ - protected $_pages; - - /** - * Currently-applied opacity level (0 - 1) - * - * @var float - */ - protected $_current_opacity = 1; - - public function __construct($paper = "letter", string $orientation = "portrait", ?Dompdf $dompdf = null) - { - if (is_array($paper)) { - $size = array_map("floatval", $paper); - } else { - $paper = strtolower($paper); - $size = self::$PAPER_SIZES[$paper] ?? self::$PAPER_SIZES["letter"]; - } - - if (strtolower($orientation) === "landscape") { - [$size[2], $size[3]] = [$size[3], $size[2]]; - } - - if ($dompdf === null) { - $this->_dompdf = new Dompdf(); - } else { - $this->_dompdf = $dompdf; - } - - $this->_pdf = new \Dompdf\Cpdf( - $size, - true, - $this->_dompdf->getOptions()->getFontCache(), - $this->_dompdf->getOptions()->getTempDir() - ); - - $this->_pdf->addInfo("Producer", sprintf("%s + CPDF", $this->_dompdf->version)); - $time = substr_replace(date('YmdHisO'), '\'', -2, 0) . '\''; - $this->_pdf->addInfo("CreationDate", "D:$time"); - $this->_pdf->addInfo("ModDate", "D:$time"); - - $this->_width = $size[2] - $size[0]; - $this->_height = $size[3] - $size[1]; - - $this->_page_number = $this->_page_count = 1; - - $this->_pages = [$this->_pdf->getFirstPageId()]; - } - - public function get_dompdf() - { - return $this->_dompdf; - } - - /** - * Returns the Cpdf instance - * - * @return \Dompdf\Cpdf - */ - public function get_cpdf() - { - return $this->_pdf; - } - - public function add_info(string $label, string $value): void - { - $this->_pdf->addInfo($label, $value); - } - - /** - * Opens a new 'object' - * - * While an object is open, all drawing actions are recorded in the object, - * as opposed to being drawn on the current page. Objects can be added - * later to a specific page or to several pages. - * - * The return value is an integer ID for the new object. - * - * @see CPDF::close_object() - * @see CPDF::add_object() - * - * @return int - */ - public function open_object() - { - $ret = $this->_pdf->openObject(); - $this->_pdf->saveState(); - return $ret; - } - - /** - * Reopens an existing 'object' - * - * @see CPDF::open_object() - * @param int $object the ID of a previously opened object - */ - public function reopen_object($object) - { - $this->_pdf->reopenObject($object); - $this->_pdf->saveState(); - } - - /** - * Closes the current 'object' - * - * @see CPDF::open_object() - */ - public function close_object() - { - $this->_pdf->restoreState(); - $this->_pdf->closeObject(); - } - - /** - * Adds a specified 'object' to the document - * - * $object int specifying an object created with {@link - * CPDF::open_object()}. $where can be one of: - * - 'add' add to current page only - * - 'all' add to every page from the current one onwards - * - 'odd' add to all odd numbered pages from now on - * - 'even' add to all even numbered pages from now on - * - 'next' add the object to the next page only - * - 'nextodd' add to all odd numbered pages from the next one - * - 'nexteven' add to all even numbered pages from the next one - * - * @see Cpdf::addObject() - * - * @param int $object - * @param string $where - */ - public function add_object($object, $where = 'all') - { - $this->_pdf->addObject($object, $where); - } - - /** - * Stops the specified 'object' from appearing in the document. - * - * The object will stop being displayed on the page following the current - * one. - * - * @param int $object - */ - public function stop_object($object) - { - $this->_pdf->stopObject($object); - } - - /** - * Serialize the pdf object's current state for retrieval later - */ - public function serialize_object($id) - { - return $this->_pdf->serializeObject($id); - } - - public function reopen_serialized_object($obj) - { - return $this->_pdf->restoreSerializedObject($obj); - } - - //........................................................................ - - public function get_width() - { - return $this->_width; - } - - public function get_height() - { - return $this->_height; - } - - public function get_page_number() - { - return $this->_page_number; - } - - public function get_page_count() - { - return $this->_page_count; - } - - /** - * Sets the current page number - * - * @param int $num - */ - public function set_page_number($num) - { - $this->_page_number = $num; - } - - public function set_page_count($count) - { - $this->_page_count = $count; - } - - /** - * Sets the stroke color - * - * See {@link Style::set_color()} for the format of the color array. - * - * @param array $color - */ - protected function _set_stroke_color($color) - { - $this->_pdf->setStrokeColor($color); - $alpha = isset($color["alpha"]) ? $color["alpha"] : 1; - $alpha *= $this->_current_opacity; - $this->_set_line_transparency("Normal", $alpha); - } - - /** - * Sets the fill colour - * - * See {@link Style::set_color()} for the format of the colour array. - * - * @param array $color - */ - protected function _set_fill_color($color) - { - $this->_pdf->setColor($color); - $alpha = isset($color["alpha"]) ? $color["alpha"] : 1; - $alpha *= $this->_current_opacity; - $this->_set_fill_transparency("Normal", $alpha); - } - - /** - * Sets line transparency - * @see Cpdf::setLineTransparency() - * - * Valid blend modes are (case-sensitive): - * - * Normal, Multiply, Screen, Overlay, Darken, Lighten, - * ColorDodge, ColorBurn, HardLight, SoftLight, Difference, - * Exclusion - * - * @param string $mode the blending mode to use - * @param float $opacity 0.0 fully transparent, 1.0 fully opaque - */ - protected function _set_line_transparency($mode, $opacity) - { - $this->_pdf->setLineTransparency($mode, $opacity); - } - - /** - * Sets fill transparency - * @see Cpdf::setFillTransparency() - * - * Valid blend modes are (case-sensitive): - * - * Normal, Multiply, Screen, Overlay, Darken, Lighten, - * ColorDogde, ColorBurn, HardLight, SoftLight, Difference, - * Exclusion - * - * @param string $mode the blending mode to use - * @param float $opacity 0.0 fully transparent, 1.0 fully opaque - */ - protected function _set_fill_transparency($mode, $opacity) - { - $this->_pdf->setFillTransparency($mode, $opacity); - } - - /** - * Sets the line style - * - * @see Cpdf::setLineStyle() - * - * @param float $width - * @param string $cap - * @param string $join - * @param array $dash - */ - protected function _set_line_style($width, $cap, $join, $dash) - { - $this->_pdf->setLineStyle($width, $cap, $join, $dash); - } - - public function set_opacity(float $opacity, string $mode = "Normal"): void - { - $this->_set_line_transparency($mode, $opacity); - $this->_set_fill_transparency($mode, $opacity); - $this->_current_opacity = $opacity; - } - - public function set_default_view($view, $options = []) - { - array_unshift($options, $view); - call_user_func_array([$this->_pdf, "openHere"], $options); - } - - /** - * Remaps y coords from 4th to 1st quadrant - * - * @param float $y - * @return float - */ - protected function y($y) - { - return $this->_height - $y; - } - - public function line($x1, $y1, $x2, $y2, $color, $width, $style = [], $cap = "butt") - { - $this->_set_stroke_color($color); - $this->_set_line_style($width, $cap, "", $style); - - $this->_pdf->line($x1, $this->y($y1), - $x2, $this->y($y2)); - $this->_set_line_transparency("Normal", $this->_current_opacity); - } - - public function arc($x, $y, $r1, $r2, $astart, $aend, $color, $width, $style = [], $cap = "butt") - { - $this->_set_stroke_color($color); - $this->_set_line_style($width, $cap, "", $style); - - $this->_pdf->ellipse($x, $this->y($y), $r1, $r2, 0, 8, $astart, $aend, false, false, true, false); - $this->_set_line_transparency("Normal", $this->_current_opacity); - } - - public function rectangle($x1, $y1, $w, $h, $color, $width, $style = [], $cap = "butt") - { - $this->_set_stroke_color($color); - $this->_set_line_style($width, $cap, "", $style); - $this->_pdf->rectangle($x1, $this->y($y1) - $h, $w, $h); - $this->_set_line_transparency("Normal", $this->_current_opacity); - } - - public function filled_rectangle($x1, $y1, $w, $h, $color) - { - $this->_set_fill_color($color); - $this->_pdf->filledRectangle($x1, $this->y($y1) - $h, $w, $h); - $this->_set_fill_transparency("Normal", $this->_current_opacity); - } - - public function clipping_rectangle($x1, $y1, $w, $h) - { - $this->_pdf->clippingRectangle($x1, $this->y($y1) - $h, $w, $h); - } - - public function clipping_roundrectangle($x1, $y1, $w, $h, $rTL, $rTR, $rBR, $rBL) - { - $this->_pdf->clippingRectangleRounded($x1, $this->y($y1) - $h, $w, $h, $rTL, $rTR, $rBR, $rBL); - } - - public function clipping_polygon(array $points): void - { - // Adjust y values - for ($i = 1; $i < count($points); $i += 2) { - $points[$i] = $this->y($points[$i]); - } - - $this->_pdf->clippingPolygon($points); - } - - public function clipping_end() - { - $this->_pdf->clippingEnd(); - } - - public function save() - { - $this->_pdf->saveState(); - } - - public function restore() - { - $this->_pdf->restoreState(); - } - - public function rotate($angle, $x, $y) - { - $this->_pdf->rotate($angle, $x, $y); - } - - public function skew($angle_x, $angle_y, $x, $y) - { - $this->_pdf->skew($angle_x, $angle_y, $x, $y); - } - - public function scale($s_x, $s_y, $x, $y) - { - $this->_pdf->scale($s_x, $s_y, $x, $y); - } - - public function translate($t_x, $t_y) - { - $this->_pdf->translate($t_x, $t_y); - } - - public function transform($a, $b, $c, $d, $e, $f) - { - $this->_pdf->transform([$a, $b, $c, $d, $e, $f]); - } - - public function polygon($points, $color, $width = null, $style = [], $fill = false) - { - $this->_set_fill_color($color); - $this->_set_stroke_color($color); - - if (!$fill && isset($width)) { - $this->_set_line_style($width, "square", "miter", $style); - } - - // Adjust y values - for ($i = 1; $i < count($points); $i += 2) { - $points[$i] = $this->y($points[$i]); - } - - $this->_pdf->polygon($points, $fill); - - $this->_set_fill_transparency("Normal", $this->_current_opacity); - $this->_set_line_transparency("Normal", $this->_current_opacity); - } - - public function circle($x, $y, $r, $color, $width = null, $style = [], $fill = false) - { - $this->_set_fill_color($color); - $this->_set_stroke_color($color); - - if (!$fill && isset($width)) { - $this->_set_line_style($width, "round", "round", $style); - } - - $this->_pdf->ellipse($x, $this->y($y), $r, 0, 0, 8, 0, 360, 1, $fill); - - $this->_set_fill_transparency("Normal", $this->_current_opacity); - $this->_set_line_transparency("Normal", $this->_current_opacity); - } - - /** - * Convert image to a PNG image - * - * @param string $image_url - * @param string $type - * - * @return string|null The url of the newly converted image - */ - protected function _convert_to_png($image_url, $type) - { - $filename = Cache::getTempImage($image_url); - - if ($filename !== null && file_exists($filename)) { - return $filename; - } - - $func_name = "imagecreatefrom$type"; - - set_error_handler([Helpers::class, "record_warnings"]); - - if (!function_exists($func_name)) { - if (!method_exists(Helpers::class, $func_name)) { - throw new Exception("Function $func_name() not found. Cannot convert $type image: $image_url. Please install the image PHP extension."); - } - $func_name = [Helpers::class, $func_name]; - } - - try { - $im = call_user_func($func_name, $image_url); - - if ($im) { - imageinterlace($im, false); - - $tmp_dir = $this->_dompdf->getOptions()->getTempDir(); - $tmp_name = @tempnam($tmp_dir, "{$type}_dompdf_img_"); - @unlink($tmp_name); - $filename = "$tmp_name.png"; - - imagepng($im, $filename); - imagedestroy($im); - } else { - $filename = null; - } - } finally { - restore_error_handler(); - } - - if ($filename !== null) { - Cache::addTempImage($image_url, $filename); - } - - return $filename; - } - - public function image($img, $x, $y, $w, $h, $resolution = "normal") - { - [$width, $height, $type] = Helpers::dompdf_getimagesize($img, $this->get_dompdf()->getHttpContext()); - - $debug_png = $this->_dompdf->getOptions()->getDebugPng(); - - if ($debug_png) { - print "[image:$img|$width|$height|$type]"; - } - - switch ($type) { - case "jpeg": - if ($debug_png) { - print '!!!jpg!!!'; - } - $this->_pdf->addJpegFromFile($img, $x, $this->y($y) - $h, $w, $h); - break; - - case "webp": - /** @noinspection PhpMissingBreakStatementInspection */ - case "gif": - /** @noinspection PhpMissingBreakStatementInspection */ - case "bmp": - if ($debug_png) print "!!!{$type}!!!"; - $img = $this->_convert_to_png($img, $type); - if ($img === null) { - if ($debug_png) print '!!!conversion to PDF failed!!!'; - $this->image(Cache::$broken_image, $x, $y, $w, $h, $resolution); - break; - } - - case "png": - if ($debug_png) print '!!!png!!!'; - - $this->_pdf->addPngFromFile($img, $x, $this->y($y) - $h, $w, $h); - break; - - case "svg": - if ($debug_png) print '!!!SVG!!!'; - - $this->_pdf->addSvgFromFile($img, $x, $this->y($y) - $h, $w, $h); - break; - - default: - if ($debug_png) print '!!!unknown!!!'; - } - } - - public function select($x, $y, $w, $h, $font, $size, $color = [0, 0, 0], $opts = []) - { - $pdf = $this->_pdf; - - $font .= ".afm"; - $pdf->selectFont($font); - - if (!isset($pdf->acroFormId)) { - $pdf->addForm(); - } - - $ft = \Dompdf\Cpdf::ACROFORM_FIELD_CHOICE; - $ff = \Dompdf\Cpdf::ACROFORM_FIELD_CHOICE_COMBO; - - $id = $pdf->addFormField($ft, rand(), $x, $this->y($y) - $h, $x + $w, $this->y($y), $ff, $size, $color); - $pdf->setFormFieldOpt($id, $opts); - } - - public function textarea($x, $y, $w, $h, $font, $size, $color = [0, 0, 0]) - { - $pdf = $this->_pdf; - - $font .= ".afm"; - $pdf->selectFont($font); - - if (!isset($pdf->acroFormId)) { - $pdf->addForm(); - } - - $ft = \Dompdf\Cpdf::ACROFORM_FIELD_TEXT; - $ff = \Dompdf\Cpdf::ACROFORM_FIELD_TEXT_MULTILINE; - - $pdf->addFormField($ft, rand(), $x, $this->y($y) - $h, $x + $w, $this->y($y), $ff, $size, $color); - } - - public function input($x, $y, $w, $h, $type, $font, $size, $color = [0, 0, 0]) - { - $pdf = $this->_pdf; - - $font .= ".afm"; - $pdf->selectFont($font); - - if (!isset($pdf->acroFormId)) { - $pdf->addForm(); - } - - $ft = \Dompdf\Cpdf::ACROFORM_FIELD_TEXT; - $ff = 0; - - switch ($type) { - case 'text': - $ft = \Dompdf\Cpdf::ACROFORM_FIELD_TEXT; - break; - case 'password': - $ft = \Dompdf\Cpdf::ACROFORM_FIELD_TEXT; - $ff = \Dompdf\Cpdf::ACROFORM_FIELD_TEXT_PASSWORD; - break; - case 'submit': - $ft = \Dompdf\Cpdf::ACROFORM_FIELD_BUTTON; - break; - } - - $pdf->addFormField($ft, rand(), $x, $this->y($y) - $h, $x + $w, $this->y($y), $ff, $size, $color); - } - - public function text($x, $y, $text, $font, $size, $color = [0, 0, 0], $word_space = 0.0, $char_space = 0.0, $angle = 0.0) - { - $pdf = $this->_pdf; - - $this->_set_fill_color($color); - - $is_font_subsetting = $this->_dompdf->getOptions()->getIsFontSubsettingEnabled(); - $pdf->selectFont($font . '.afm', '', true, $is_font_subsetting); - - $pdf->addText($x, $this->y($y) - $pdf->getFontHeight($size), $size, $text, $angle, $word_space, $char_space); - - $this->_set_fill_transparency("Normal", $this->_current_opacity); - } - - public function javascript($code) - { - $this->_pdf->addJavascript($code); - } - - //........................................................................ - - public function add_named_dest($anchorname) - { - $this->_pdf->addDestination($anchorname, "Fit"); - } - - public function add_link($url, $x, $y, $width, $height) - { - $y = $this->y($y) - $height; - - if (strpos($url, '#') === 0) { - // Local link - $name = substr($url, 1); - if ($name) { - $this->_pdf->addInternalLink($name, $x, $y, $x + $width, $y + $height); - } - } else { - $this->_pdf->addLink($url, $x, $y, $x + $width, $y + $height); - } - } - - /** - * @throws FontNotFoundException - */ - public function get_text_width($text, $font, $size, $word_spacing = 0.0, $char_spacing = 0.0) - { - $this->_pdf->selectFont($font, '', true, $this->_dompdf->getOptions()->getIsFontSubsettingEnabled()); - return $this->_pdf->getTextWidth($size, $text, $word_spacing, $char_spacing); - } - - /** - * @throws FontNotFoundException - */ - public function get_font_height($font, $size) - { - $options = $this->_dompdf->getOptions(); - $this->_pdf->selectFont($font, '', true, $options->getIsFontSubsettingEnabled()); - - return $this->_pdf->getFontHeight($size) * $options->getFontHeightRatio(); - } - - /*function get_font_x_height($font, $size) { - $this->_pdf->selectFont($font); - $ratio = $this->_dompdf->getOptions()->getFontHeightRatio(); - return $this->_pdf->getFontXHeight($size) * $ratio; - }*/ - - /** - * @throws FontNotFoundException - */ - public function get_font_baseline($font, $size) - { - $ratio = $this->_dompdf->getOptions()->getFontHeightRatio(); - return $this->get_font_height($font, $size) / $ratio; - } - - /** - * Processes a callback or script on every page. - * - * The callback function receives the four parameters `int $pageNumber`, - * `int $pageCount`, `Canvas $canvas`, and `FontMetrics $fontMetrics`, in - * that order. If a script is passed as string, the variables `$PAGE_NUM`, - * `$PAGE_COUNT`, `$pdf`, and `$fontMetrics` are available instead. Passing - * a script as string is deprecated and will be removed in a future version. - * - * This function can be used to add page numbers to all pages after the - * first one, for example. - * - * @param callable|string $callback The callback function or PHP script to process on every page - */ - public function page_script($callback): void - { - if (is_string($callback)) { - $this->processPageScript(function ( - int $PAGE_NUM, - int $PAGE_COUNT, - self $pdf, - FontMetrics $fontMetrics - ) use ($callback) { - eval($callback); - }); - return; - } - - $this->processPageScript($callback); - } - - public function page_text($x, $y, $text, $font, $size, $color = [0, 0, 0], $word_space = 0.0, $char_space = 0.0, $angle = 0.0) - { - $this->processPageScript(function (int $pageNumber, int $pageCount) use ($x, $y, $text, $font, $size, $color, $word_space, $char_space, $angle) { - $text = str_replace( - ["{PAGE_NUM}", "{PAGE_COUNT}"], - [$pageNumber, $pageCount], - $text - ); - $this->text($x, $y, $text, $font, $size, $color, $word_space, $char_space, $angle); - }); - } - - public function page_line($x1, $y1, $x2, $y2, $color, $width, $style = []) - { - $this->processPageScript(function () use ($x1, $y1, $x2, $y2, $color, $width, $style) { - $this->line($x1, $y1, $x2, $y2, $color, $width, $style); - }); - } - - /** - * @return int - */ - public function new_page() - { - $this->_page_number++; - $this->_page_count++; - - $ret = $this->_pdf->newPage(); - $this->_pages[] = $ret; - return $ret; - } - - protected function processPageScript(callable $callback): void - { - $pageNumber = 1; - - foreach ($this->_pages as $pid) { - $this->reopen_object($pid); - - $fontMetrics = $this->_dompdf->getFontMetrics(); - $callback($pageNumber, $this->_page_count, $this, $fontMetrics); - - $this->close_object(); - $pageNumber++; - } - } - - public function stream($filename = "document.pdf", $options = []) - { - if (headers_sent()) { - die("Unable to stream pdf: headers already sent"); - } - - if (!isset($options["compress"])) $options["compress"] = true; - if (!isset($options["Attachment"])) $options["Attachment"] = true; - - $debug = !$options['compress']; - $tmp = ltrim($this->_pdf->output($debug)); - - header("Cache-Control: private"); - header("Content-Type: application/pdf"); - header("Content-Length: " . mb_strlen($tmp, "8bit")); - - $filename = str_replace(["\n", "'"], "", basename($filename, ".pdf")) . ".pdf"; - $attachment = $options["Attachment"] ? "attachment" : "inline"; - header(Helpers::buildContentDispositionHeader($attachment, $filename)); - - echo $tmp; - flush(); - } - - public function output($options = []) - { - if (!isset($options["compress"])) $options["compress"] = true; - - $debug = !$options['compress']; - - return $this->_pdf->output($debug); - } - - /** - * Returns logging messages generated by the Cpdf class - * - * @return string - */ - public function get_messages() - { - return $this->_pdf->messages; - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Adapter/GD.php b/docker/statistics/vendor/dompdf/dompdf/src/Adapter/GD.php deleted file mode 100644 index 1e8bfbb5..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Adapter/GD.php +++ /dev/null @@ -1,942 +0,0 @@ -_dompdf = new Dompdf(); - } else { - $this->_dompdf = $dompdf; - } - - $this->dpi = $this->get_dompdf()->getOptions()->getDpi(); - - if ($aa_factor < 1) { - $aa_factor = 1; - } - - $this->_aa_factor = $aa_factor; - - $size[2] *= $aa_factor; - $size[3] *= $aa_factor; - - $this->_width = $size[2] - $size[0]; - $this->_height = $size[3] - $size[1]; - - $this->_actual_width = $this->_upscale($this->_width); - $this->_actual_height = $this->_upscale($this->_height); - - $this->_page_number = $this->_page_count = 0; - - if (is_null($bg_color) || !is_array($bg_color)) { - // Pure white bg - $bg_color = [1, 1, 1, 0]; - } - - $this->_bg_color_array = $bg_color; - - $this->new_page(); - } - - public function get_dompdf() - { - return $this->_dompdf; - } - - /** - * Return the GD image resource - * - * @return \GdImage|resource - */ - public function get_image() - { - return $this->_img; - } - - /** - * Return the image's width in pixels - * - * @return int - */ - public function get_width() - { - return round($this->_width / $this->_aa_factor); - } - - /** - * Return the image's height in pixels - * - * @return int - */ - public function get_height() - { - return round($this->_height / $this->_aa_factor); - } - - public function get_page_number() - { - return $this->_page_number; - } - - public function get_page_count() - { - return $this->_page_count; - } - - /** - * Sets the current page number - * - * @param int $num - */ - public function set_page_number($num) - { - $this->_page_number = $num; - } - - public function set_page_count($count) - { - $this->_page_count = $count; - } - - public function set_opacity(float $opacity, string $mode = "Normal"): void - { - // FIXME - } - - /** - * Allocate a new color. Allocate with GD as needed and store - * previously allocated colors in $this->_colors. - * - * @param array $color The new current color - * @return int The allocated color - */ - protected function _allocate_color($color) - { - $a = isset($color["alpha"]) ? $color["alpha"] : 1; - - if (isset($color["c"])) { - $color = Helpers::cmyk_to_rgb($color); - } - - list($r, $g, $b) = $color; - - $r = round($r * 255); - $g = round($g * 255); - $b = round($b * 255); - $a = round(127 - ($a * 127)); - - // Clip values - $r = $r > 255 ? 255 : $r; - $g = $g > 255 ? 255 : $g; - $b = $b > 255 ? 255 : $b; - $a = $a > 127 ? 127 : $a; - - $r = $r < 0 ? 0 : $r; - $g = $g < 0 ? 0 : $g; - $b = $b < 0 ? 0 : $b; - $a = $a < 0 ? 0 : $a; - - $key = sprintf("#%02X%02X%02X%02X", $r, $g, $b, $a); - - if (isset($this->_colors[$key])) { - return $this->_colors[$key]; - } - - if ($a != 0) { - $this->_colors[$key] = imagecolorallocatealpha($this->get_image(), $r, $g, $b, $a); - } else { - $this->_colors[$key] = imagecolorallocate($this->get_image(), $r, $g, $b); - } - - return $this->_colors[$key]; - } - - /** - * Scales value up to the current canvas DPI from 72 DPI - * - * @param float $length - * @return int - */ - protected function _upscale($length) - { - return round(($length * $this->dpi) / 72 * $this->_aa_factor); - } - - /** - * Scales value down from the current canvas DPI to 72 DPI - * - * @param float $length - * @return float - */ - protected function _downscale($length) - { - return round(($length / $this->dpi * 72) / $this->_aa_factor); - } - - protected function convertStyle(array $style, int $color, int $width): array - { - $gdStyle = []; - - if (count($style) === 1) { - $style[] = $style[0]; - } - - foreach ($style as $index => $s) { - $d = $this->_upscale($s); - - for ($i = 0; $i < $d; $i++) { - for ($j = 0; $j < $width; $j++) { - $gdStyle[] = $index % 2 === 0 - ? $color - : IMG_COLOR_TRANSPARENT; - } - } - } - - return $gdStyle; - } - - public function line($x1, $y1, $x2, $y2, $color, $width, $style = [], $cap = "butt") - { - // Account for the fact that round and square caps are expected to - // extend outwards - if ($cap === "round" || $cap === "square") { - // Shift line by half width - $w = $width / 2; - $a = $x2 - $x1; - $b = $y2 - $y1; - $c = sqrt($a ** 2 + $b ** 2); - $dx = $a * $w / $c; - $dy = $b * $w / $c; - - $x1 -= $dx; - $x2 -= $dx; - $y1 -= $dy; - $y2 -= $dy; - - // Adapt dash pattern - if (is_array($style)) { - foreach ($style as $index => &$s) { - $s = $index % 2 === 0 ? $s + $width : $s - $width; - } - } - } - - // Scale by the AA factor and DPI - $x1 = $this->_upscale($x1); - $y1 = $this->_upscale($y1); - $x2 = $this->_upscale($x2); - $y2 = $this->_upscale($y2); - $width = $this->_upscale($width); - - $c = $this->_allocate_color($color); - - // Convert the style array if required - if (is_array($style) && count($style) > 0) { - $gd_style = $this->convertStyle($style, $c, $width); - - if (!empty($gd_style)) { - imagesetstyle($this->get_image(), $gd_style); - $c = IMG_COLOR_STYLED; - } - } - - imagesetthickness($this->get_image(), $width); - - imageline($this->get_image(), $x1, $y1, $x2, $y2, $c); - } - - public function arc($x, $y, $r1, $r2, $astart, $aend, $color, $width, $style = [], $cap = "butt") - { - // Account for the fact that round and square caps are expected to - // extend outwards - if ($cap === "round" || $cap === "square") { - // Adapt dash pattern - if (is_array($style)) { - foreach ($style as $index => &$s) { - $s = $index % 2 === 0 ? $s + $width : $s - $width; - } - } - } - - // Scale by the AA factor and DPI - $x = $this->_upscale($x); - $y = $this->_upscale($y); - $w = $this->_upscale($r1 * 2); - $h = $this->_upscale($r2 * 2); - $width = $this->_upscale($width); - - // Adapt angles as imagearc counts clockwise - $start = 360 - $aend; - $end = 360 - $astart; - - $c = $this->_allocate_color($color); - - // Convert the style array if required - if (is_array($style) && count($style) > 0) { - $gd_style = $this->convertStyle($style, $c, $width); - - if (!empty($gd_style)) { - imagesetstyle($this->get_image(), $gd_style); - $c = IMG_COLOR_STYLED; - } - } - - imagesetthickness($this->get_image(), $width); - - imagearc($this->get_image(), $x, $y, $w, $h, $start, $end, $c); - } - - public function rectangle($x1, $y1, $w, $h, $color, $width, $style = [], $cap = "butt") - { - // Account for the fact that round and square caps are expected to - // extend outwards - if ($cap === "round" || $cap === "square") { - // Adapt dash pattern - if (is_array($style)) { - foreach ($style as $index => &$s) { - $s = $index % 2 === 0 ? $s + $width : $s - $width; - } - } - } - - // Scale by the AA factor and DPI - $x1 = $this->_upscale($x1); - $y1 = $this->_upscale($y1); - $w = $this->_upscale($w); - $h = $this->_upscale($h); - $width = $this->_upscale($width); - - $c = $this->_allocate_color($color); - - // Convert the style array if required - if (is_array($style) && count($style) > 0) { - $gd_style = $this->convertStyle($style, $c, $width); - - if (!empty($gd_style)) { - imagesetstyle($this->get_image(), $gd_style); - $c = IMG_COLOR_STYLED; - } - } - - imagesetthickness($this->get_image(), $width); - - if ($c === IMG_COLOR_STYLED) { - $points = [ - $x1, $y1, - $x1 + $w, $y1, - $x1 + $w, $y1 + $h, - $x1, $y1 + $h - ]; - if (version_compare(PHP_VERSION, "8.1.0", "<")) { - imagepolygon($this->get_image(), $points, count($points)/2, $c); - } else { - imagepolygon($this->get_image(), $points, $c); - } - } else { - imagerectangle($this->get_image(), $x1, $y1, $x1 + $w, $y1 + $h, $c); - } - } - - public function filled_rectangle($x1, $y1, $w, $h, $color) - { - // Scale by the AA factor and DPI - $x1 = $this->_upscale($x1); - $y1 = $this->_upscale($y1); - $w = $this->_upscale($w); - $h = $this->_upscale($h); - - $c = $this->_allocate_color($color); - - imagefilledrectangle($this->get_image(), $x1, $y1, $x1 + $w, $y1 + $h, $c); - } - - public function clipping_rectangle($x1, $y1, $w, $h) - { - // @todo - } - - public function clipping_roundrectangle($x1, $y1, $w, $h, $rTL, $rTR, $rBR, $rBL) - { - // @todo - } - - public function clipping_polygon(array $points): void - { - // @todo - } - - public function clipping_end() - { - // @todo - } - - public function save() - { - $this->get_dompdf()->getOptions()->setDpi(72); - } - - public function restore() - { - $this->get_dompdf()->getOptions()->setDpi($this->dpi); - } - - public function rotate($angle, $x, $y) - { - // @todo - } - - public function skew($angle_x, $angle_y, $x, $y) - { - // @todo - } - - public function scale($s_x, $s_y, $x, $y) - { - // @todo - } - - public function translate($t_x, $t_y) - { - // @todo - } - - public function transform($a, $b, $c, $d, $e, $f) - { - // @todo - } - - public function polygon($points, $color, $width = null, $style = [], $fill = false) - { - // Scale each point by the AA factor and DPI - foreach (array_keys($points) as $i) { - $points[$i] = $this->_upscale($points[$i]); - } - - $width = isset($width) ? $this->_upscale($width) : null; - - $c = $this->_allocate_color($color); - - // Convert the style array if required - if (is_array($style) && count($style) > 0 && isset($width) && !$fill) { - $gd_style = $this->convertStyle($style, $c, $width); - - if (!empty($gd_style)) { - imagesetstyle($this->get_image(), $gd_style); - $c = IMG_COLOR_STYLED; - } - } - - imagesetthickness($this->get_image(), isset($width) ? $width : 0); - - if ($fill) { - if (version_compare(PHP_VERSION, "8.1.0", "<")) { - imagefilledpolygon($this->get_image(), $points, count($points)/2, $c); - } else { - imagefilledpolygon($this->get_image(), $points, $c); - } - } else { - if (version_compare(PHP_VERSION, "8.1.0", "<")) { - imagepolygon($this->get_image(), $points, count($points)/2, $c); - } else { - imagepolygon($this->get_image(), $points, $c); - } - } - } - - public function circle($x, $y, $r, $color, $width = null, $style = [], $fill = false) - { - // Scale by the AA factor and DPI - $x = $this->_upscale($x); - $y = $this->_upscale($y); - $d = $this->_upscale(2 * $r); - $width = isset($width) ? $this->_upscale($width) : null; - - $c = $this->_allocate_color($color); - - // Convert the style array if required - if (is_array($style) && count($style) > 0 && isset($width) && !$fill) { - $gd_style = $this->convertStyle($style, $c, $width); - - if (!empty($gd_style)) { - imagesetstyle($this->get_image(), $gd_style); - $c = IMG_COLOR_STYLED; - } - } - - imagesetthickness($this->get_image(), isset($width) ? $width : 0); - - if ($fill) { - imagefilledellipse($this->get_image(), $x, $y, $d, $d, $c); - } else { - imageellipse($this->get_image(), $x, $y, $d, $d, $c); - } - } - - /** - * @throws \Exception - */ - public function image($img, $x, $y, $w, $h, $resolution = "normal") - { - $img_type = Cache::detect_type($img, $this->get_dompdf()->getHttpContext()); - - if (!$img_type) { - return; - } - - $func_name = "imagecreatefrom$img_type"; - if (!function_exists($func_name)) { - if (!method_exists(Helpers::class, $func_name)) { - throw new \Exception("Function $func_name() not found. Cannot convert $img_type image: $img. Please install the image PHP extension."); - } - $func_name = [Helpers::class, $func_name]; - } - $src = @call_user_func($func_name, $img); - - if (!$src) { - return; // Probably should add to $_dompdf_errors or whatever here - } - - // Scale by the AA factor and DPI - $x = $this->_upscale($x); - $y = $this->_upscale($y); - - $w = $this->_upscale($w); - $h = $this->_upscale($h); - - $img_w = imagesx($src); - $img_h = imagesy($src); - - imagecopyresampled($this->get_image(), $src, $x, $y, 0, 0, $w, $h, $img_w, $img_h); - } - - public function text($x, $y, $text, $font, $size, $color = [0, 0, 0], $word_spacing = 0.0, $char_spacing = 0.0, $angle = 0.0) - { - // Scale by the AA factor and DPI - $x = $this->_upscale($x); - $y = $this->_upscale($y); - $size = $this->_upscale($size) * self::FONT_SCALE; - - $h = round($this->get_font_height_actual($font, $size)); - $c = $this->_allocate_color($color); - - // imagettftext() converts numeric entities to their respective - // character. Preserve any originally double encoded entities to be - // represented as is. - // eg: &#160; will render   rather than its character. - $text = preg_replace('/&(#(?:x[a-fA-F0-9]+|[0-9]+);)/', '&\1', $text); - - $text = mb_encode_numericentity($text, [0x0080, 0xff, 0, 0xff], 'UTF-8'); - - $font = $this->get_ttf_file($font); - - // FIXME: word spacing - imagettftext($this->get_image(), $size, $angle, $x, $y + $h, $c, $font, $text); - } - - public function javascript($code) - { - // Not implemented - } - - public function add_named_dest($anchorname) - { - // Not implemented - } - - public function add_link($url, $x, $y, $width, $height) - { - // Not implemented - } - - public function add_info(string $label, string $value): void - { - // N/A - } - - public function set_default_view($view, $options = []) - { - // N/A - } - - public function get_text_width($text, $font, $size, $word_spacing = 0.0, $char_spacing = 0.0) - { - $font = $this->get_ttf_file($font); - $size = $this->_upscale($size) * self::FONT_SCALE; - - // imagettfbbox() converts numeric entities to their respective - // character. Preserve any originally double encoded entities to be - // represented as is. - // eg: &#160; will render   rather than its character. - $text = preg_replace('/&(#(?:x[a-fA-F0-9]+|[0-9]+);)/', '&\1', $text); - - $text = mb_encode_numericentity($text, [0x0080, 0xffff, 0, 0xffff], 'UTF-8'); - - // FIXME: word spacing - list($x1, , $x2) = imagettfbbox($size, 0, $font, $text); - - // Add additional 1pt to prevent text overflow issues - return $this->_downscale($x2 - $x1) + 1; - } - - /** - * @param string|null $font - * @return string - */ - public function get_ttf_file($font) - { - if ($font === null) { - $font = ""; - } - - if ( stripos($font, ".ttf") === false ) { - $font .= ".ttf"; - } - - if (!file_exists($font)) { - $font_metrics = $this->_dompdf->getFontMetrics(); - $font = $font_metrics->getFont($this->_dompdf->getOptions()->getDefaultFont()) . ".ttf"; - if (!file_exists($font)) { - if (strpos($font, "mono")) { - $font = $font_metrics->getFont("DejaVu Mono") . ".ttf"; - } elseif (strpos($font, "sans") !== false) { - $font = $font_metrics->getFont("DejaVu Sans") . ".ttf"; - } elseif (strpos($font, "serif")) { - $font = $font_metrics->getFont("DejaVu Serif") . ".ttf"; - } else { - $font = $font_metrics->getFont("DejaVu Sans") . ".ttf"; - } - } - } - - return $font; - } - - public function get_font_height($font, $size) - { - $size = $this->_upscale($size) * self::FONT_SCALE; - - $height = $this->get_font_height_actual($font, $size); - - return $this->_downscale($height); - } - - /** - * @param string $font - * @param float $size - * - * @return float - */ - protected function get_font_height_actual($font, $size) - { - $font = $this->get_ttf_file($font); - $ratio = $this->_dompdf->getOptions()->getFontHeightRatio(); - - // FIXME: word spacing - list(, $y2, , , , $y1) = imagettfbbox($size, 0, $font, "MXjpqytfhl"); // Test string with ascenders, descenders and caps - return ($y2 - $y1) * $ratio; - } - - public function get_font_baseline($font, $size) - { - $ratio = $this->_dompdf->getOptions()->getFontHeightRatio(); - return $this->get_font_height($font, $size) / $ratio; - } - - public function new_page() - { - $this->_page_number++; - $this->_page_count++; - - $this->_img = imagecreatetruecolor($this->_actual_width, $this->_actual_height); - - $this->_bg_color = $this->_allocate_color($this->_bg_color_array); - imagealphablending($this->_img, true); - imagesavealpha($this->_img, true); - imagefill($this->_img, 0, 0, $this->_bg_color); - - $this->_imgs[] = $this->_img; - } - - public function open_object() - { - // N/A - } - - public function close_object() - { - // N/A - } - - public function add_object() - { - // N/A - } - - public function page_script($callback): void - { - // N/A - } - - public function page_text($x, $y, $text, $font, $size, $color = [0, 0, 0], $word_space = 0.0, $char_space = 0.0, $angle = 0.0) - { - // N/A - } - - public function page_line($x1, $y1, $x2, $y2, $color, $width, $style = []) - { - // N/A - } - - /** - * Streams the image to the client. - * - * @param string $filename The filename to present to the client. - * @param array $options Associative array: 'type' => jpeg|jpg|png; 'quality' => 0 - 100 (JPEG only); - * 'page' => Number of the page to output (defaults to the first); 'Attachment': 1 or 0 (default 1). - */ - public function stream($filename, $options = []) - { - if (headers_sent()) { - die("Unable to stream image: headers already sent"); - } - - if (!isset($options["type"])) $options["type"] = "png"; - if (!isset($options["Attachment"])) $options["Attachment"] = true; - $type = strtolower($options["type"]); - - switch ($type) { - case "jpg": - case "jpeg": - $contentType = "image/jpeg"; - $extension = ".jpg"; - break; - case "png": - default: - $contentType = "image/png"; - $extension = ".png"; - break; - } - - header("Cache-Control: private"); - header("Content-Type: $contentType"); - - $filename = str_replace(["\n", "'"], "", basename($filename, ".$type")) . $extension; - $attachment = $options["Attachment"] ? "attachment" : "inline"; - header(Helpers::buildContentDispositionHeader($attachment, $filename)); - - $this->_output($options); - flush(); - } - - /** - * Returns the image as a string. - * - * @param array $options Associative array: 'type' => jpeg|jpg|png; 'quality' => 0 - 100 (JPEG only); - * 'page' => Number of the page to output (defaults to the first). - * @return string - */ - public function output($options = []) - { - ob_start(); - - $this->_output($options); - - return ob_get_clean(); - } - - /** - * Outputs the image stream directly. - * - * @param array $options Associative array: 'type' => jpeg|jpg|png; 'quality' => 0 - 100 (JPEG only); - * 'page' => Number of the page to output (defaults to the first). - */ - protected function _output($options = []) - { - if (!isset($options["type"])) $options["type"] = "png"; - if (!isset($options["page"])) $options["page"] = 1; - $type = strtolower($options["type"]); - - if (isset($this->_imgs[$options["page"] - 1])) { - $img = $this->_imgs[$options["page"] - 1]; - } else { - $img = $this->_imgs[0]; - } - - // Perform any antialiasing - if ($this->_aa_factor != 1) { - $dst_w = round($this->_actual_width / $this->_aa_factor); - $dst_h = round($this->_actual_height / $this->_aa_factor); - $dst = imagecreatetruecolor($dst_w, $dst_h); - imagecopyresampled($dst, $img, 0, 0, 0, 0, - $dst_w, $dst_h, - $this->_actual_width, $this->_actual_height); - } else { - $dst = $img; - } - - switch ($type) { - case "jpg": - case "jpeg": - if (!isset($options["quality"])) { - $options["quality"] = 75; - } - - imagejpeg($dst, null, $options["quality"]); - break; - case "png": - default: - imagepng($dst); - break; - } - - if ($this->_aa_factor != 1) { - imagedestroy($dst); - } - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Adapter/PDFLib.php b/docker/statistics/vendor/dompdf/dompdf/src/Adapter/PDFLib.php deleted file mode 100644 index 6467cf1a..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Adapter/PDFLib.php +++ /dev/null @@ -1,1450 +0,0 @@ - "Courier", - "courier-bold" => "Courier-Bold", - "courier-oblique" => "Courier-Oblique", - "courier-boldoblique" => "Courier-BoldOblique", - "helvetica" => "Helvetica", - "helvetica-bold" => "Helvetica-Bold", - "helvetica-oblique" => "Helvetica-Oblique", - "helvetica-boldoblique" => "Helvetica-BoldOblique", - "times" => "Times-Roman", - "times-roman" => "Times-Roman", - "times-bold" => "Times-Bold", - "times-italic" => "Times-Italic", - "times-bolditalic" => "Times-BoldItalic", - "symbol" => "Symbol", - "zapfdinbats" => "ZapfDingbats", - "zapfdingbats" => "ZapfDingbats", - ]; - - /** - * @var \Dompdf\Dompdf - */ - protected $_dompdf; - - /** - * Instance of PDFLib class - * - * @var \PDFLib - */ - protected $_pdf; - - /** - * Name of temporary file used for PDFs created on disk - * - * @var string - */ - protected $_file; - - /** - * PDF width, in points - * - * @var float - */ - protected $_width; - - /** - * PDF height, in points - * - * @var float - */ - protected $_height; - - /** - * Last fill color used - * - * @var array - */ - protected $_last_fill_color; - - /** - * Last stroke color used - * - * @var array - */ - protected $_last_stroke_color; - - /** - * The current opacity level - * - * @var float|null - */ - protected $_current_opacity; - - /** - * Cache of image handles - * - * @var array - */ - protected $_imgs; - - /** - * Cache of font handles - * - * @var array - */ - protected $_fonts; - - /** - * Cache of fontFile checks - * - * @var array - */ - protected $_fontsFiles; - - /** - * List of objects (templates) to add to multiple pages - * - * @var array - */ - protected $_objs; - - /** - * List of gstate objects created for this PDF (for reuse) - * - * @var array - */ - protected $_gstates = []; - - /** - * Current page number - * - * @var int - */ - protected $_page_number; - - /** - * Total number of pages - * - * @var int - */ - protected $_page_count; - - /** - * Array of pages for accessing after rendering is initially complete - * - * @var array - */ - protected $_pages; - - public function __construct($paper = "letter", string $orientation = "portrait", ?Dompdf $dompdf = null) - { - if (is_array($paper)) { - $size = array_map("floatval", $paper); - } else { - $paper = strtolower($paper); - $size = self::$PAPER_SIZES[$paper] ?? self::$PAPER_SIZES["letter"]; - } - - if (strtolower($orientation) === "landscape") { - [$size[2], $size[3]] = [$size[3], $size[2]]; - } - - $this->_width = $size[2] - $size[0]; - $this->_height = $size[3] - $size[1]; - - if ($dompdf === null) { - $this->_dompdf = new Dompdf(); - } else { - $this->_dompdf = $dompdf; - } - - $this->_pdf = new \PDFLib(); - - $license = $dompdf->getOptions()->getPdflibLicense(); - if (strlen($license) > 0) { - $this->setPDFLibParameter("license", $license); - } - - if ($this->getPDFLibMajorVersion() < 10) { - $this->setPDFLibParameter("textformat", "utf8"); - } - if ($this->getPDFLibMajorVersion() >= 7) { - $this->setPDFLibParameter("errorpolicy", "return"); - // $this->_pdf->set_option('logging={filename=' . \APP_PATH . '/logs/pdflib.log classes={api=1 warning=2}}'); - // $this->_pdf->set_option('errorpolicy=exception'); - } else { - $this->setPDFLibParameter("fontwarning", "false"); - } - - $searchPath = $this->_dompdf->getOptions()->getFontDir(); - if (empty($searchPath) === false) { - $this->_pdf->set_option('searchpath={' . $searchPath . '}'); - } - - // fetch PDFLib version information for the producer field - $this->_pdf->set_info("Producer Addendum", sprintf("%s + PDFLib %s", $dompdf->version, $this->getPDFLibMajorVersion())); - - // Silence pedantic warnings about missing TZ settings - $tz = @date_default_timezone_get(); - date_default_timezone_set("UTC"); - $this->_pdf->set_info("Date", date("Y-m-d")); - date_default_timezone_set($tz); - - if (self::$IN_MEMORY) { - $this->_pdf->begin_document("", ""); - } else { - $tmp_dir = $this->_dompdf->getOptions()->getTempDir(); - $tmp_name = @tempnam($tmp_dir, "libdompdf_pdf_"); - @unlink($tmp_name); - $this->_file = "$tmp_name.pdf"; - $this->_pdf->begin_document($this->_file, ""); - } - - $this->_pdf->begin_page_ext($this->_width, $this->_height, ""); - - $this->_page_number = $this->_page_count = 1; - - $this->_imgs = []; - $this->_fonts = []; - $this->_objs = []; - } - - function get_dompdf() - { - return $this->_dompdf; - } - - /** - * Close the pdf - */ - protected function _close() - { - $this->_place_objects(); - - // Close all pages - $this->_pdf->suspend_page(""); - for ($p = 1; $p <= $this->_page_count; $p++) { - $this->_pdf->resume_page("pagenumber=$p"); - $this->_pdf->end_page_ext(""); - } - - $this->_pdf->end_document(""); - } - - - /** - * Returns the PDFLib instance - * - * @return PDFLib - */ - public function get_pdflib() - { - return $this->_pdf; - } - - public function add_info(string $label, string $value): void - { - $this->_pdf->set_info($label, $value); - } - - /** - * Opens a new 'object' (template in PDFLib-speak) - * - * While an object is open, all drawing actions are recorded to the - * object instead of being drawn on the current page. Objects can - * be added later to a specific page or to several pages. - * - * The return value is an integer ID for the new object. - * - * @see PDFLib::close_object() - * @see PDFLib::add_object() - * - * @return int - */ - public function open_object() - { - $this->_pdf->suspend_page(""); - if ($this->getPDFLibMajorVersion() >= 7) { - $ret = $this->_pdf->begin_template_ext($this->_width, $this->_height, null); - } else { - $ret = $this->_pdf->begin_template($this->_width, $this->_height); - } - $this->_pdf->save(); - $this->_objs[$ret] = ["start_page" => $this->_page_number]; - - return $ret; - } - - /** - * Reopen an existing object (NOT IMPLEMENTED) - * PDFLib does not seem to support reopening templates. - * - * @param int $object the ID of a previously opened object - * - * @throws Exception - * @return void - */ - public function reopen_object($object) - { - throw new Exception("PDFLib does not support reopening objects."); - } - - /** - * Close the current template - * - * @see PDFLib::open_object() - */ - public function close_object() - { - $this->_pdf->restore(); - if ($this->getPDFLibMajorVersion() >= 7) { - $this->_pdf->end_template_ext($this->_width, $this->_height); - } else { - $this->_pdf->end_template(); - } - $this->_pdf->resume_page("pagenumber=" . $this->_page_number); - } - - /** - * Adds the specified object to the document - * - * $where can be one of: - * - 'add' add to current page only - * - 'all' add to every page from the current one onwards - * - 'odd' add to all odd numbered pages from now on - * - 'even' add to all even numbered pages from now on - * - 'next' add the object to the next page only - * - 'nextodd' add to all odd numbered pages from the next one - * - 'nexteven' add to all even numbered pages from the next one - * - * @param int $object the object handle returned by open_object() - * @param string $where - */ - public function add_object($object, $where = 'all') - { - - if (mb_strpos($where, "next") !== false) { - $this->_objs[$object]["start_page"]++; - $where = str_replace("next", "", $where); - if ($where == "") { - $where = "add"; - } - } - - $this->_objs[$object]["where"] = $where; - } - - /** - * Stops the specified template from appearing in the document. - * - * The object will stop being displayed on the page following the - * current one. - * - * @param int $object - */ - public function stop_object($object) - { - - if (!isset($this->_objs[$object])) { - return; - } - - $start = $this->_objs[$object]["start_page"]; - $where = $this->_objs[$object]["where"]; - - // Place the object on this page if required - if ($this->_page_number >= $start && - (($this->_page_number % 2 == 0 && $where === "even") || - ($this->_page_number % 2 == 1 && $where === "odd") || - ($where === "all")) - ) { - $this->_pdf->fit_image($object, 0, 0, ""); - } - - $this->_objs[$object] = null; - unset($this->_objs[$object]); - } - - /** - * Add all active objects to the current page - */ - protected function _place_objects() - { - - foreach ($this->_objs as $obj => $props) { - $start = $props["start_page"]; - $where = $props["where"]; - - // Place the object on this page if required - if ($this->_page_number >= $start && - (($this->_page_number % 2 == 0 && $where === "even") || - ($this->_page_number % 2 == 1 && $where === "odd") || - ($where === "all")) - ) { - $this->_pdf->fit_image($obj, 0, 0, ""); - } - } - } - - public function get_width() - { - return $this->_width; - } - - public function get_height() - { - return $this->_height; - } - - public function get_page_number() - { - return $this->_page_number; - } - - public function get_page_count() - { - return $this->_page_count; - } - - /** - * @param $num - */ - public function set_page_number($num) - { - $this->_page_number = (int)$num; - } - - public function set_page_count($count) - { - $this->_page_count = (int)$count; - } - - /** - * Sets the line style - * - * @param float $width - * @param string $cap - * @param string $join - * @param array $dash - */ - protected function _set_line_style($width, $cap, $join, $dash) - { - if (!is_array($dash)) { - $dash = []; - } - - // Work around PDFLib limitation with 0 dash length: - // Value 0 for option 'dasharray' is too small (minimum 1.5e-05) - foreach ($dash as &$d) { - if ($d == 0) { - $d = 1.5e-5; - } - } - - if (count($dash) === 1) { - $dash[] = $dash[0]; - } - - if ($this->getPDFLibMajorVersion() >= 9) { - if (count($dash) > 1) { - $this->_pdf->set_graphics_option("dasharray={" . implode(" ", $dash) . "}"); - } else { - $this->_pdf->set_graphics_option("dasharray=none"); - } - } else { - if (count($dash) > 1) { - $this->_pdf->setdashpattern("dasharray={" . implode(" ", $dash) . "}"); - } else { - $this->_pdf->setdash(0, 0); - } - } - - switch ($join) { - case "miter": - if ($this->getPDFLibMajorVersion() >= 9) { - $this->_pdf->set_graphics_option('linejoin=0'); - } else { - $this->_pdf->setlinejoin(0); - } - break; - - case "round": - if ($this->getPDFLibMajorVersion() >= 9) { - $this->_pdf->set_graphics_option('linejoin=1'); - } else { - $this->_pdf->setlinejoin(1); - } - break; - - case "bevel": - if ($this->getPDFLibMajorVersion() >= 9) { - $this->_pdf->set_graphics_option('linejoin=2'); - } else { - $this->_pdf->setlinejoin(2); - } - break; - - default: - break; - } - - switch ($cap) { - case "butt": - if ($this->getPDFLibMajorVersion() >= 9) { - $this->_pdf->set_graphics_option('linecap=0'); - } else { - $this->_pdf->setlinecap(0); - } - break; - - case "round": - if ($this->getPDFLibMajorVersion() >= 9) { - $this->_pdf->set_graphics_option('linecap=1'); - } else { - $this->_pdf->setlinecap(1); - } - break; - - case "square": - if ($this->getPDFLibMajorVersion() >= 9) { - $this->_pdf->set_graphics_option('linecap=2'); - } else { - $this->_pdf->setlinecap(2); - } - break; - - default: - break; - } - - $this->_pdf->setlinewidth($width); - } - - /** - * Sets the line color - * - * @param array $color array(r,g,b) - */ - protected function _set_stroke_color($color) - { - // TODO: we should check the current PDF stroke color - // instead of the cached value - if ($this->_last_stroke_color == $color) { - // FIXME: do nothing, this optimization is broken by the - // stroke being set as a side effect of other operations - //return; - } - - $alpha = isset($color["alpha"]) ? $color["alpha"] : 1; - if (isset($this->_current_opacity)) { - $alpha *= $this->_current_opacity; - } - - $this->_last_stroke_color = $color; - - if (isset($color[3])) { - $type = "cmyk"; - list($c1, $c2, $c3, $c4) = [$color[0], $color[1], $color[2], $color[3]]; - } elseif (isset($color[2])) { - $type = "rgb"; - list($c1, $c2, $c3, $c4) = [$color[0], $color[1], $color[2], null]; - } else { - $type = "gray"; - list($c1, $c2, $c3, $c4) = [$color[0], $color[1], null, null]; - } - - $this->_set_stroke_opacity($alpha, "Normal"); - $this->_pdf->setcolor("stroke", $type, $c1, $c2, $c3, $c4); - } - - /** - * Sets the fill color - * - * @param array $color array(r,g,b) - */ - protected function _set_fill_color($color) - { - // TODO: we should check the current PDF fill color - // instead of the cached value - if ($this->_last_fill_color == $color) { - // FIXME: do nothing, this optimization is broken by the - // fill being set as a side effect of other operations - //return; - } - - $alpha = isset($color["alpha"]) ? $color["alpha"] : 1; - if (isset($this->_current_opacity)) { - $alpha *= $this->_current_opacity; - } - - $this->_last_fill_color = $color; - - if (isset($color[3])) { - $type = "cmyk"; - list($c1, $c2, $c3, $c4) = [$color[0], $color[1], $color[2], $color[3]]; - } elseif (isset($color[2])) { - $type = "rgb"; - list($c1, $c2, $c3, $c4) = [$color[0], $color[1], $color[2], null]; - } else { - $type = "gray"; - list($c1, $c2, $c3, $c4) = [$color[0], $color[1], null, null]; - } - - $this->_set_fill_opacity($alpha, "Normal"); - $this->_pdf->setcolor("fill", $type, $c1, $c2, $c3, $c4); - } - - /** - * Sets the fill opacity - * - * @param float $opacity - * @param string $mode - */ - public function _set_fill_opacity($opacity, $mode = "Normal") - { - if ($mode === "Normal" && isset($opacity)) { - $this->_set_gstate("opacityfill=$opacity"); - } - } - - /** - * Sets the stroke opacity - * - * @param float $opacity - * @param string $mode - */ - public function _set_stroke_opacity($opacity, $mode = "Normal") - { - if ($mode === "Normal" && isset($opacity)) { - $this->_set_gstate("opacitystroke=$opacity"); - } - } - - public function set_opacity(float $opacity, string $mode = "Normal"): void - { - if ($mode === "Normal") { - $this->_set_gstate("opacityfill=$opacity opacitystroke=$opacity"); - $this->_current_opacity = $opacity; - } - } - - /** - * Sets the gstate - * - * @param $gstate_options - * @return int - */ - public function _set_gstate($gstate_options) - { - if (($gstate = array_search($gstate_options, $this->_gstates)) === false) { - $gstate = $this->_pdf->create_gstate($gstate_options); - $this->_gstates[$gstate] = $gstate_options; - } - - return $this->_pdf->set_gstate($gstate); - } - - public function set_default_view($view, $options = []) - { - // TODO - // http://www.pdflib.com/fileadmin/pdflib/pdf/manuals/PDFlib-8.0.2-API-reference.pdf - /** - * fitheight Fit the page height to the window, with the x coordinate left at the left edge of the window. - * fitrect Fit the rectangle specified by left, bottom, right, and top to the window. - * fitvisible Fit the visible contents of the page (the ArtBox) to the window. - * fitvisibleheight Fit the visible contents of the page to the window with the x coordinate left at the left edge of the window. - * fitvisiblewidth Fit the visible contents of the page to the window with the y coordinate top at the top edge of the window. - * fitwidth Fit the page width to the window, with the y coordinate top at the top edge of the window. - * fitwindow Fit the complete page to the window. - * fixed - */ - //$this->setPDFLibParameter("openaction", $view); - } - - /** - * Loads a specific font and stores the corresponding descriptor. - * - * @param string $font - * @param string $encoding - * @param string $options - * - * @return int the font descriptor for the font - */ - protected function _load_font($font, $encoding = null, $options = "") - { - // Fix for PDFLibs case-sensitive font names - $baseFont = basename($font); - $isNativeFont = false; - if (isset(self::$nativeFontsTpPDFLib[$baseFont])) { - $font = self::$nativeFontsTpPDFLib[$baseFont]; - $isNativeFont = true; - } - - // Check if the font is a native PDF font - // Embed non-native fonts - $test = strtolower($baseFont); - if (in_array($test, DOMPDF::$nativeFonts)) { - $font = basename($font); - } else { - // Embed non-native fonts - $options .= " embedding=true"; - } - - $options .= " autosubsetting=" . ($this->_dompdf->getOptions()->getIsFontSubsettingEnabled() === false ? "false" : "true"); - - if (is_null($encoding)) { - // Unicode encoding is only available for the commerical - // version of PDFlib and not PDFlib-Lite - if (strlen($this->_dompdf->getOptions()->getPdflibLicense()) > 0) { - $encoding = "unicode"; - } else { - $encoding = "auto"; - } - } - - $key = "$font:$encoding:$options"; - if (isset($this->_fonts[$key])) { - return $this->_fonts[$key]; - } - - // Native fonts are build in, just load it - if ($isNativeFont) { - $this->_fonts[$key] = $this->_pdf->load_font($font, $encoding, $options); - - return $this->_fonts[$key]; - } - - $fontOutline = $this->getPDFLibParameter("FontOutline", 1); - if ($fontOutline === "" || $fontOutline <= 0) { - $families = $this->_dompdf->getFontMetrics()->getFontFamilies(); - foreach ($families as $files) { - foreach ($files as $file) { - $face = basename($file); - $afm = null; - - if (isset($this->_fontsFiles[$face])) { - continue; - } - - // Prefer ttfs to afms - if (file_exists("$file.ttf")) { - $outline = "$file.ttf"; - } elseif (file_exists("$file.TTF")) { - $outline = "$file.TTF"; - } elseif (file_exists("$file.pfb")) { - $outline = "$file.pfb"; - if (file_exists("$file.afm")) { - $afm = "$file.afm"; - } - } elseif (file_exists("$file.PFB")) { - $outline = "$file.PFB"; - if (file_exists("$file.AFM")) { - $afm = "$file.AFM"; - } - } else { - continue; - } - - $this->_fontsFiles[$face] = true; - - if ($this->getPDFLibMajorVersion() >= 9) { - $this->setPDFLibParameter("FontOutline", '{' . "$face=$outline" . '}'); - } else { - $this->setPDFLibParameter("FontOutline", "\{$face\}=\{$outline\}"); - } - - if (is_null($afm)) { - continue; - } - if ($this->getPDFLibMajorVersion() >= 9) { - $this->setPDFLibParameter("FontAFM", '{' . "$face=$afm" . '}'); - } else { - $this->setPDFLibParameter("FontAFM", "\{$face\}=\{$afm\}"); - } - } - } - } - - $this->_fonts[$key] = $this->_pdf->load_font($font, $encoding, $options); - - return $this->_fonts[$key]; - } - - /** - * Remaps y coords from 4th to 1st quadrant - * - * @param float $y - * @return float - */ - protected function y($y) - { - return $this->_height - $y; - } - - public function line($x1, $y1, $x2, $y2, $color, $width, $style = [], $cap = "butt") - { - $this->_set_line_style($width, $cap, "", $style); - $this->_set_stroke_color($color); - - $y1 = $this->y($y1); - $y2 = $this->y($y2); - - $this->_pdf->moveto($x1, $y1); - $this->_pdf->lineto($x2, $y2); - $this->_pdf->stroke(); - - $this->_set_stroke_opacity($this->_current_opacity, "Normal"); - } - - public function arc($x, $y, $r1, $r2, $astart, $aend, $color, $width, $style = [], $cap = "butt") - { - $this->_set_line_style($width, $cap, "", $style); - $this->_set_stroke_color($color); - - $y = $this->y($y); - - $this->_pdf->arc($x, $y, $r1, $astart, $aend); - $this->_pdf->stroke(); - - $this->_set_stroke_opacity($this->_current_opacity, "Normal"); - } - - public function rectangle($x1, $y1, $w, $h, $color, $width, $style = [], $cap = "butt") - { - $this->_set_stroke_color($color); - $this->_set_line_style($width, $cap, "", $style); - - $y1 = $this->y($y1) - $h; - - $this->_pdf->rect($x1, $y1, $w, $h); - $this->_pdf->stroke(); - - $this->_set_stroke_opacity($this->_current_opacity, "Normal"); - } - - public function filled_rectangle($x1, $y1, $w, $h, $color) - { - $this->_set_fill_color($color); - - $y1 = $this->y($y1) - $h; - - $this->_pdf->rect(floatval($x1), floatval($y1), floatval($w), floatval($h)); - $this->_pdf->fill(); - - $this->_set_fill_opacity($this->_current_opacity, "Normal"); - } - - public function clipping_rectangle($x1, $y1, $w, $h) - { - $this->_pdf->save(); - - $y1 = $this->y($y1) - $h; - - $this->_pdf->rect(floatval($x1), floatval($y1), floatval($w), floatval($h)); - $this->_pdf->clip(); - } - - public function clipping_roundrectangle($x1, $y1, $w, $h, $rTL, $rTR, $rBR, $rBL) - { - if ($this->getPDFLibMajorVersion() < 9) { - //TODO: add PDFLib7 support - $this->clipping_rectangle($x1, $y1, $w, $h); - return; - } - - $this->_pdf->save(); - - // we use 0,0 for the base coordinates for the path points - // since we're drawing the path at the $x1,$y1 coordinates - - $path = 0; - //start: left edge, top end - $path = $this->_pdf->add_path_point($path, 0, 0 - $rTL + $h, "move", ""); - // line: left edge, bottom end - $path = $this->_pdf->add_path_point($path, 0, 0 + $rBL, "line", ""); - // curve: bottom-left corner - if ($rBL > 0) { - $path = $this->_pdf->add_path_point($path, 0 + $rBL, 0, "elliptical", "radius=$rBL clockwise=false"); - } - // line: bottom edge, left end - $path = $this->_pdf->add_path_point($path, 0 - $rBR + $w, 0, "line", ""); - // curve: bottom-right corner - if ($rBR > 0) { - $path = $this->_pdf->add_path_point($path, 0 + $w, 0 + $rBR, "elliptical", "radius=$rBR clockwise=false"); - } - // line: right edge, top end - $path = $this->_pdf->add_path_point($path, 0 + $w, 0 - $rTR + $h, "line", ""); - // curve: top-right corner - if ($rTR > 0) { - $path = $this->_pdf->add_path_point($path, 0 - $rTR + $w, 0 + $h, "elliptical", "radius=$rTR clockwise=false"); - } - // line: top edge, left end - $path = $this->_pdf->add_path_point($path, 0 + $rTL, 0 + $h, "line", ""); - // curve: top-left corner - if ($rTL > 0) { - $path = $this->_pdf->add_path_point($path, 0, 0 - $rTL + $h, "elliptical", "radius=$rTL clockwise=false"); - } - $this->_pdf->draw_path($path, $x1, $this->_height-$y1-$h, "clip=true"); - } - - public function clipping_polygon(array $points): void - { - $this->_pdf->save(); - - $y = $this->y(array_pop($points)); - $x = array_pop($points); - $this->_pdf->moveto($x, $y); - - while (count($points) > 1) { - $y = $this->y(array_pop($points)); - $x = array_pop($points); - $this->_pdf->lineto($x, $y); - } - - $this->_pdf->closepath(); - $this->_pdf->clip(); - } - - public function clipping_end() - { - $this->_pdf->restore(); - } - - public function save() - { - $this->_pdf->save(); - } - - function restore() - { - $this->_pdf->restore(); - } - - public function rotate($angle, $x, $y) - { - $pdf = $this->_pdf; - $pdf->translate($x, $this->_height - $y); - $pdf->rotate(-$angle); - $pdf->translate(-$x, -$this->_height + $y); - } - - public function skew($angle_x, $angle_y, $x, $y) - { - $pdf = $this->_pdf; - $pdf->translate($x, $this->_height - $y); - $pdf->skew($angle_y, $angle_x); // Needs to be inverted - $pdf->translate(-$x, -$this->_height + $y); - } - - public function scale($s_x, $s_y, $x, $y) - { - $pdf = $this->_pdf; - $pdf->translate($x, $this->_height - $y); - $pdf->scale($s_x, $s_y); - $pdf->translate(-$x, -$this->_height + $y); - } - - public function translate($t_x, $t_y) - { - $this->_pdf->translate($t_x, -$t_y); - } - - public function transform($a, $b, $c, $d, $e, $f) - { - $this->_pdf->concat($a, $b, $c, $d, $e, $f); - } - - public function polygon($points, $color, $width = null, $style = [], $fill = false) - { - $this->_set_fill_color($color); - $this->_set_stroke_color($color); - - if (!$fill && isset($width)) { - $this->_set_line_style($width, "square", "miter", $style); - } - - $y = $this->y(array_pop($points)); - $x = array_pop($points); - $this->_pdf->moveto($x, $y); - - while (count($points) > 1) { - $y = $this->y(array_pop($points)); - $x = array_pop($points); - $this->_pdf->lineto($x, $y); - } - - if ($fill) { - $this->_pdf->fill(); - } else { - $this->_pdf->closepath_stroke(); - } - - $this->_set_fill_opacity($this->_current_opacity, "Normal"); - $this->_set_stroke_opacity($this->_current_opacity, "Normal"); - } - - public function circle($x, $y, $r, $color, $width = null, $style = [], $fill = false) - { - $this->_set_fill_color($color); - $this->_set_stroke_color($color); - - if (!$fill && isset($width)) { - $this->_set_line_style($width, "round", "round", $style); - } - - $y = $this->y($y); - - $this->_pdf->circle($x, $y, $r); - - if ($fill) { - $this->_pdf->fill(); - } else { - $this->_pdf->stroke(); - } - - $this->_set_fill_opacity($this->_current_opacity, "Normal"); - $this->_set_stroke_opacity($this->_current_opacity, "Normal"); - } - - public function image($img, $x, $y, $w, $h, $resolution = "normal") - { - $w = (int)$w; - $h = (int)$h; - - $img_type = Cache::detect_type($img, $this->get_dompdf()->getHttpContext()); - - // Strip file:// prefix - if (substr($img, 0, 7) === "file://") { - $img = substr($img, 7); - } - - if (!isset($this->_imgs[$img])) { - if (strtolower($img_type) === "svg") { - //FIXME: PDFLib loads SVG but returns error message "Function must not be called in 'page' scope" - $image_load_response = $this->_pdf->load_graphics($img_type, $img, ""); - } else { - $image_load_response = $this->_pdf->load_image($img_type, $img, ""); - } - if ($image_load_response === 0) { - //TODO: should do something with the error message - $error = $this->_pdf->get_errmsg(); - return; - } - $this->_imgs[$img] = $image_load_response; - } - - $img = $this->_imgs[$img]; - - $y = $this->y($y) - $h; - if (strtolower($img_type) === "svg") { - $this->_pdf->fit_graphics($img, $x, $y, 'boxsize={' . "$w $h" . '} fitmethod=entire'); - } else { - $this->_pdf->fit_image($img, $x, $y, 'boxsize={' . "$w $h" . '} fitmethod=entire'); - } - } - - public function text($x, $y, $text, $font, $size, $color = [0, 0, 0], $word_spacing = 0, $char_spacing = 0, $angle = 0) - { - if ($size == 0) { - return; - } - - $fh = $this->_load_font($font); - - $this->_pdf->setfont($fh, $size); - $this->_set_fill_color($color); - - $y = $this->y($y) - $this->get_font_height($font, $size); - - $word_spacing = (float)$word_spacing; - $char_spacing = (float)$char_spacing; - $angle = -(float)$angle; - - $this->_pdf->fit_textline($text, $x, $y, "rotate=$angle wordspacing=$word_spacing charspacing=$char_spacing "); - - $this->_set_fill_opacity($this->_current_opacity, "Normal"); - } - - public function javascript($code) - { - if (strlen($this->_dompdf->getOptions()->getPdflibLicense()) > 0) { - $this->_pdf->create_action("JavaScript", $code); - } - } - - public function add_named_dest($anchorname) - { - $this->_pdf->add_nameddest($anchorname, ""); - } - - public function add_link($url, $x, $y, $width, $height) - { - $y = $this->y($y) - $height; - if (strpos($url, '#') === 0) { - // Local link - $name = substr($url, 1); - if ($name) { - $this->_pdf->create_annotation($x, $y, $x + $width, $y + $height, 'Link', - "contents={$url} destname=" . substr($url, 1) . " linewidth=0"); - } - } else { - //TODO: PDFLib::create_action does not permit non-HTTP links for URI actions - $action = $this->_pdf->create_action("URI", "url={{$url}}"); - // add the annotation only if the action was created - if ($action !== 0) { - $this->_pdf->create_annotation($x, $y, $x + $width, $y + $height, 'Link', "contents={{$url}} action={activate=$action} linewidth=0"); - } - } - } - - public function get_text_width($text, $font, $size, $word_spacing = 0.0, $letter_spacing = 0.0) - { - if ($size == 0) { - return 0.0; - } - - $fh = $this->_load_font($font); - - // Determine the additional width due to extra spacing - $num_spaces = mb_substr_count($text, " "); - $delta = $word_spacing * $num_spaces; - - if ($letter_spacing) { - $num_chars = mb_strlen($text); - $delta += $num_chars * $letter_spacing; - } - - return $this->_pdf->stringwidth($text, $fh, $size) + $delta; - } - - public function get_font_height($font, $size) - { - if ($size == 0) { - return 0.0; - } - - $fh = $this->_load_font($font); - - $this->_pdf->setfont($fh, $size); - - $asc = $this->_pdf->info_font($fh, "ascender", "fontsize=$size"); - $desc = $this->_pdf->info_font($fh, "descender", "fontsize=$size"); - - // $desc is usually < 0, - $ratio = $this->_dompdf->getOptions()->getFontHeightRatio(); - - return (abs($asc) + abs($desc)) * $ratio; - } - - public function get_font_baseline($font, $size) - { - $ratio = $this->_dompdf->getOptions()->getFontHeightRatio(); - - return $this->get_font_height($font, $size) / $ratio * 1.1; - } - - /** - * Processes a callback or script on every page. - * - * The callback function receives the four parameters `int $pageNumber`, - * `int $pageCount`, `Canvas $canvas`, and `FontMetrics $fontMetrics`, in - * that order. If a script is passed as string, the variables `$PAGE_NUM`, - * `$PAGE_COUNT`, `$pdf`, and `$fontMetrics` are available instead. Passing - * a script as string is deprecated and will be removed in a future version. - * - * This function can be used to add page numbers to all pages after the - * first one, for example. - * - * @param callable|string $callback The callback function or PHP script to process on every page - */ - public function page_script($callback): void - { - if (is_string($callback)) { - $this->processPageScript(function ( - int $PAGE_NUM, - int $PAGE_COUNT, - self $pdf, - FontMetrics $fontMetrics - ) use ($callback) { - eval($callback); - }); - return; - } - - $this->processPageScript($callback); - } - - public function page_text($x, $y, $text, $font, $size, $color = [0, 0, 0], $word_space = 0.0, $char_space = 0.0, $angle = 0.0) - { - $this->processPageScript(function (int $pageNumber, int $pageCount) use ($x, $y, $text, $font, $size, $color, $word_space, $char_space, $angle) { - $text = str_replace( - ["{PAGE_NUM}", "{PAGE_COUNT}"], - [$pageNumber, $pageCount], - $text - ); - $this->text($x, $y, $text, $font, $size, $color, $word_space, $char_space, $angle); - }); - } - - public function page_line($x1, $y1, $x2, $y2, $color, $width, $style = []) - { - $this->processPageScript(function () use ($x1, $y1, $x2, $y2, $color, $width, $style) { - $this->line($x1, $y1, $x2, $y2, $color, $width, $style); - }); - } - - public function new_page() - { - // Add objects to the current page - $this->_place_objects(); - - $this->_pdf->suspend_page(""); - $this->_pdf->begin_page_ext($this->_width, $this->_height, ""); - $this->_page_number = ++$this->_page_count; - } - - protected function processPageScript(callable $callback): void - { - $this->_pdf->suspend_page(""); - - for ($p = 1; $p <= $this->_page_count; $p++) { - $this->_pdf->resume_page("pagenumber=$p"); - - $fontMetrics = $this->_dompdf->getFontMetrics(); - $callback($p, $this->_page_count, $this, $fontMetrics); - - $this->_pdf->suspend_page(""); - } - - $this->_pdf->resume_page("pagenumber=" . $this->_page_number); - } - - /** - * @throws Exception - */ - public function stream($filename = "document.pdf", $options = []) - { - if (headers_sent()) { - die("Unable to stream pdf: headers already sent"); - } - - if (!isset($options["compress"])) { - $options["compress"] = true; - } - if (!isset($options["Attachment"])) { - $options["Attachment"] = true; - } - - if ($options["compress"]) { - $this->setPDFLibValue("compress", 6); - } else { - $this->setPDFLibValue("compress", 0); - } - - $this->_close(); - - $data = ""; - - if (self::$IN_MEMORY) { - $data = $this->_pdf->get_buffer(); - $size = mb_strlen($data, "8bit"); - } else { - $size = filesize($this->_file); - } - - header("Cache-Control: private"); - header("Content-Type: application/pdf"); - header("Content-Length: " . $size); - - $filename = str_replace(["\n", "'"], "", basename($filename, ".pdf")) . ".pdf"; - $attachment = $options["Attachment"] ? "attachment" : "inline"; - header(Helpers::buildContentDispositionHeader($attachment, $filename)); - - if (self::$IN_MEMORY) { - echo $data; - } else { - // Chunked readfile() - $chunk = (1 << 21); // 2 MB - $fh = fopen($this->_file, "rb"); - if (!$fh) { - throw new Exception("Unable to load temporary PDF file: " . $this->_file); - } - - while (!feof($fh)) { - echo fread($fh, $chunk); - } - fclose($fh); - - //debugpng - if ($this->_dompdf->getOptions()->getDebugPng()) { - print '[pdflib stream unlink ' . $this->_file . ']'; - } - if (!$this->_dompdf->getOptions()->getDebugKeepTemp()) { - unlink($this->_file); - } - $this->_file = null; - unset($this->_file); - } - - flush(); - } - - public function output($options = []) - { - if (!isset($options["compress"])) { - $options["compress"] = true; - } - - if ($options["compress"]) { - $this->setPDFLibValue("compress", 6); - } else { - $this->setPDFLibValue("compress", 0); - } - - $this->_close(); - - if (self::$IN_MEMORY) { - $data = $this->_pdf->get_buffer(); - } else { - $data = file_get_contents($this->_file); - - //debugpng - if ($this->_dompdf->getOptions()->getDebugPng()) { - print '[pdflib output unlink ' . $this->_file . ']'; - } - if (!$this->_dompdf->getOptions()->getDebugKeepTemp()) { - unlink($this->_file); - } - $this->_file = null; - unset($this->_file); - } - - return $data; - } - - /** - * @param string $keyword - * @param string $optlist - * @return mixed - */ - protected function getPDFLibParameter($keyword, $optlist = "") - { - if ($this->getPDFLibMajorVersion() >= 9) { - return $this->_pdf->get_option($keyword, ""); - } - - return $this->_pdf->get_parameter($keyword, $optlist); - } - - /** - * @param string $keyword - * @param string $value - * @return mixed - */ - protected function setPDFLibParameter($keyword, $value) - { - if ($this->getPDFLibMajorVersion() >= 9) { - return $this->_pdf->set_option($keyword . "=" . $value); - } - - return $this->_pdf->set_parameter($keyword, $value); - } - - /** - * @param string $keyword - * @param string $optlist - * @return mixed - */ - protected function getPDFLibValue($keyword, $optlist = "") - { - if ($this->getPDFLibMajorVersion() >= 9) { - return $this->getPDFLibParameter($keyword, $optlist); - } - - return $this->_pdf->get_value($keyword); - } - - /** - * @param string $keyword - * @param string $value - * @return mixed - */ - protected function setPDFLibValue($keyword, $value) - { - if ($this->getPDFLibMajorVersion() >= 9) { - return $this->setPDFLibParameter($keyword, $value); - } - - return $this->_pdf->set_value($keyword, $value); - } - - /** - * @return int - */ - protected function getPDFLibMajorVersion() - { - if (is_null(self::$MAJOR_VERSION)) { - if (method_exists($this->_pdf, "get_option")) { - self::$MAJOR_VERSION = abs(intval($this->_pdf->get_option("major", ""))); - } else { - self::$MAJOR_VERSION = abs(intval($this->_pdf->get_value("major", ""))); - } - } - - return self::$MAJOR_VERSION; - } -} - -// Workaround for idiotic limitation on statics... -PDFLib::$PAPER_SIZES = CPDF::$PAPER_SIZES; diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Canvas.php b/docker/statistics/vendor/dompdf/dompdf/src/Canvas.php deleted file mode 100644 index a3b486cc..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Canvas.php +++ /dev/null @@ -1,477 +0,0 @@ - alpha]` - * where r, g, b, and alpha are float values between 0 and 1 - * @param float $width - * @param array $style - * @param string $cap `butt`, `round`, or `square` - */ - function line($x1, $y1, $x2, $y2, $color, $width, $style = [], $cap = "butt"); - - /** - * Draws an arc - * - * See {@link Cpdf::setLineStyle()} for a description of the format of the - * $style and $cap parameters (aka dash and cap). - * - * @param float $x X coordinate of the arc - * @param float $y Y coordinate of the arc - * @param float $r1 Radius 1 - * @param float $r2 Radius 2 - * @param float $astart Start angle in degrees - * @param float $aend End angle in degrees - * @param array $color Color array in the format `[r, g, b, "alpha" => alpha]` - * where r, g, b, and alpha are float values between 0 and 1 - * @param float $width - * @param array $style - * @param string $cap `butt`, `round`, or `square` - */ - function arc($x, $y, $r1, $r2, $astart, $aend, $color, $width, $style = [], $cap = "butt"); - - /** - * Draws a rectangle at x1,y1 with width w and height h - * - * See {@link Cpdf::setLineStyle()} for a description of the format of the - * $style and $cap parameters (aka dash and cap). - * - * @param float $x1 - * @param float $y1 - * @param float $w - * @param float $h - * @param array $color Color array in the format `[r, g, b, "alpha" => alpha]` - * where r, g, b, and alpha are float values between 0 and 1 - * @param float $width - * @param array $style - * @param string $cap `butt`, `round`, or `square` - */ - function rectangle($x1, $y1, $w, $h, $color, $width, $style = [], $cap = "butt"); - - /** - * Draws a filled rectangle at x1,y1 with width w and height h - * - * @param float $x1 - * @param float $y1 - * @param float $w - * @param float $h - * @param array $color Color array in the format `[r, g, b, "alpha" => alpha]` - * where r, g, b, and alpha are float values between 0 and 1 - */ - function filled_rectangle($x1, $y1, $w, $h, $color); - - /** - * Starts a clipping rectangle at x1,y1 with width w and height h - * - * @param float $x1 - * @param float $y1 - * @param float $w - * @param float $h - */ - function clipping_rectangle($x1, $y1, $w, $h); - - /** - * Starts a rounded clipping rectangle at x1,y1 with width w and height h - * - * @param float $x1 - * @param float $y1 - * @param float $w - * @param float $h - * @param float $tl - * @param float $tr - * @param float $br - * @param float $bl - */ - function clipping_roundrectangle($x1, $y1, $w, $h, $tl, $tr, $br, $bl); - - /** - * Starts a clipping polygon - * - * @param float[] $points - */ - public function clipping_polygon(array $points): void; - - /** - * Ends the last clipping shape - */ - function clipping_end(); - - /** - * Processes a callback on every page. - * - * The callback function receives the four parameters `int $pageNumber`, - * `int $pageCount`, `Canvas $canvas`, and `FontMetrics $fontMetrics`, in - * that order. - * - * This function can be used to add page numbers to all pages after the - * first one, for example. - * - * @param callable $callback The callback function to process on every page - */ - public function page_script($callback): void; - - /** - * Writes text at the specified x and y coordinates on every page. - * - * The strings '{PAGE_NUM}' and '{PAGE_COUNT}' are automatically replaced - * with their current values. - * - * @param float $x - * @param float $y - * @param string $text The text to write - * @param string $font The font file to use - * @param float $size The font size, in points - * @param array $color Color array in the format `[r, g, b, "alpha" => alpha]` - * where r, g, b, and alpha are float values between 0 and 1 - * @param float $word_space Word spacing adjustment - * @param float $char_space Char spacing adjustment - * @param float $angle Angle to write the text at, measured clockwise starting from the x-axis - */ - public function page_text($x, $y, $text, $font, $size, $color = [0, 0, 0], $word_space = 0.0, $char_space = 0.0, $angle = 0.0); - - /** - * Draws a line at the specified coordinates on every page. - * - * @param float $x1 - * @param float $y1 - * @param float $x2 - * @param float $y2 - * @param array $color Color array in the format `[r, g, b, "alpha" => alpha]` - * where r, g, b, and alpha are float values between 0 and 1 - * @param float $width - * @param array $style - */ - public function page_line($x1, $y1, $x2, $y2, $color, $width, $style = []); - - /** - * Save current state - */ - function save(); - - /** - * Restore last state - */ - function restore(); - - /** - * Rotate - * - * @param float $angle angle in degrees for counter-clockwise rotation - * @param float $x Origin abscissa - * @param float $y Origin ordinate - */ - function rotate($angle, $x, $y); - - /** - * Skew - * - * @param float $angle_x - * @param float $angle_y - * @param float $x Origin abscissa - * @param float $y Origin ordinate - */ - function skew($angle_x, $angle_y, $x, $y); - - /** - * Scale - * - * @param float $s_x scaling factor for width as percent - * @param float $s_y scaling factor for height as percent - * @param float $x Origin abscissa - * @param float $y Origin ordinate - */ - function scale($s_x, $s_y, $x, $y); - - /** - * Translate - * - * @param float $t_x movement to the right - * @param float $t_y movement to the bottom - */ - function translate($t_x, $t_y); - - /** - * Transform - * - * @param float $a - * @param float $b - * @param float $c - * @param float $d - * @param float $e - * @param float $f - */ - function transform($a, $b, $c, $d, $e, $f); - - /** - * Draws a polygon - * - * The polygon is formed by joining all the points stored in the $points - * array. $points has the following structure: - * ``` - * array(0 => x1, - * 1 => y1, - * 2 => x2, - * 3 => y2, - * ... - * ); - * ``` - * - * See {@link Cpdf::setLineStyle()} for a description of the format of the - * $style parameter (aka dash). - * - * @param array $points - * @param array $color Color array in the format `[r, g, b, "alpha" => alpha]` - * where r, g, b, and alpha are float values between 0 and 1 - * @param float $width - * @param array $style - * @param bool $fill Fills the polygon if true - */ - function polygon($points, $color, $width = null, $style = [], $fill = false); - - /** - * Draws a circle at $x,$y with radius $r - * - * See {@link Cpdf::setLineStyle()} for a description of the format of the - * $style parameter (aka dash). - * - * @param float $x - * @param float $y - * @param float $r - * @param array $color Color array in the format `[r, g, b, "alpha" => alpha]` - * where r, g, b, and alpha are float values between 0 and 1 - * @param float $width - * @param array $style - * @param bool $fill Fills the circle if true - */ - function circle($x, $y, $r, $color, $width = null, $style = [], $fill = false); - - /** - * Add an image to the pdf. - * - * The image is placed at the specified x and y coordinates with the - * given width and height. - * - * @param string $img The path to the image - * @param float $x X position - * @param float $y Y position - * @param float $w Width - * @param float $h Height - * @param string $resolution The resolution of the image - */ - function image($img, $x, $y, $w, $h, $resolution = "normal"); - - /** - * Writes text at the specified x and y coordinates - * - * @param float $x - * @param float $y - * @param string $text The text to write - * @param string $font The font file to use - * @param float $size The font size, in points - * @param array $color Color array in the format `[r, g, b, "alpha" => alpha]` - * where r, g, b, and alpha are float values between 0 and 1 - * @param float $word_space Word spacing adjustment - * @param float $char_space Char spacing adjustment - * @param float $angle Angle to write the text at, measured clockwise starting from the x-axis - */ - function text($x, $y, $text, $font, $size, $color = [0, 0, 0], $word_space = 0.0, $char_space = 0.0, $angle = 0.0); - - /** - * Add a named destination (similar to ... in html) - * - * @param string $anchorname The name of the named destination - */ - function add_named_dest($anchorname); - - /** - * Add a link to the pdf - * - * @param string $url The url to link to - * @param float $x The x position of the link - * @param float $y The y position of the link - * @param float $width The width of the link - * @param float $height The height of the link - */ - function add_link($url, $x, $y, $width, $height); - - /** - * Add meta information to the PDF. - * - * @param string $label Label of the value (Creator, Producer, etc.) - * @param string $value The text to set - */ - public function add_info(string $label, string $value): void; - - /** - * Calculates text size, in points - * - * @param string $text The text to be sized - * @param string $font The font file to use - * @param float $size The font size, in points - * @param float $word_spacing Word spacing, if any - * @param float $char_spacing Char spacing, if any - * - * @return float - */ - function get_text_width($text, $font, $size, $word_spacing = 0.0, $char_spacing = 0.0); - - /** - * Calculates font height, in points - * - * @param string $font The font file to use - * @param float $size The font size, in points - * - * @return float - */ - function get_font_height($font, $size); - - /** - * Returns the font x-height, in points - * - * @param string $font The font file to use - * @param float $size The font size, in points - * - * @return float - */ - //function get_font_x_height($font, $size); - - /** - * Calculates font baseline, in points - * - * @param string $font The font file to use - * @param float $size The font size, in points - * - * @return float - */ - function get_font_baseline($font, $size); - - /** - * Returns the PDF's width in points - * - * @return float - */ - function get_width(); - - /** - * Returns the PDF's height in points - * - * @return float - */ - function get_height(); - - /** - * Sets the opacity - * - * @param float $opacity - * @param string $mode - */ - public function set_opacity(float $opacity, string $mode = "Normal"): void; - - /** - * Sets the default view - * - * @param string $view - * 'XYZ' left, top, zoom - * 'Fit' - * 'FitH' top - * 'FitV' left - * 'FitR' left,bottom,right - * 'FitB' - * 'FitBH' top - * 'FitBV' left - * @param array $options - */ - function set_default_view($view, $options = []); - - /** - * @param string $code - */ - function javascript($code); - - /** - * Starts a new page - * - * Subsequent drawing operations will appear on the new page. - */ - function new_page(); - - /** - * Streams the PDF to the client. - * - * @param string $filename The filename to present to the client. - * @param array $options Associative array: 'compress' => 1 or 0 (default 1); 'Attachment' => 1 or 0 (default 1). - */ - function stream($filename, $options = []); - - /** - * Returns the PDF as a string. - * - * @param array $options Associative array: 'compress' => 1 or 0 (default 1). - * - * @return string - */ - function output($options = []); -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/CanvasFactory.php b/docker/statistics/vendor/dompdf/dompdf/src/CanvasFactory.php deleted file mode 100644 index d89320c1..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/CanvasFactory.php +++ /dev/null @@ -1,58 +0,0 @@ -getOptions()->getPdfBackend()); - - if (isset($class) && class_exists($class, false)) { - $class .= "_Adapter"; - } else { - if (($backend === "auto" || $backend === "pdflib") && - class_exists("PDFLib", false) - ) { - $class = "Dompdf\\Adapter\\PDFLib"; - } - - else { - if ($backend === "gd" && extension_loaded('gd')) { - $class = "Dompdf\\Adapter\\GD"; - } else { - $class = "Dompdf\\Adapter\\CPDF"; - } - } - } - - return new $class($paper, $orientation, $dompdf); - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Cellmap.php b/docker/statistics/vendor/dompdf/dompdf/src/Cellmap.php deleted file mode 100644 index e6c1c68e..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Cellmap.php +++ /dev/null @@ -1,999 +0,0 @@ - 8, - "solid" => 7, - "dashed" => 6, - "dotted" => 5, - "ridge" => 4, - "outset" => 3, - "groove" => 2, - "inset" => 1, - "none" => 0 - ]; - - /** - * The table object this cellmap is attached to. - * - * @var TableFrameDecorator - */ - protected $_table; - - /** - * The total number of rows in the table - * - * @var int - */ - protected $_num_rows; - - /** - * The total number of columns in the table - * - * @var int - */ - protected $_num_cols; - - /** - * 2D array mapping to frames - * - * @var Frame[][] - */ - protected $_cells; - - /** - * 1D array of column dimensions - * - * @var array - */ - protected $_columns; - - /** - * 1D array of row dimensions - * - * @var array - */ - protected $_rows; - - /** - * 2D array of border specs - * - * @var array - */ - protected $_borders; - - /** - * 1D Array mapping frames to (multiple) pairs, keyed on frame_id. - * - * @var array[] - */ - protected $_frames; - - /** - * Current column when adding cells, 0-based - * - * @var int - */ - private $__col; - - /** - * Current row when adding cells, 0-based - * - * @var int - */ - private $__row; - - /** - * Tells whether the columns' width can be modified - * - * @var bool - */ - private $_columns_locked = false; - - /** - * Tells whether the table has table-layout:fixed - * - * @var bool - */ - private $_fixed_layout = false; - - /** - * @param TableFrameDecorator $table - */ - public function __construct(TableFrameDecorator $table) - { - $this->_table = $table; - $this->reset(); - } - - public function reset(): void - { - $this->_num_rows = 0; - $this->_num_cols = 0; - - $this->_cells = []; - $this->_frames = []; - - if (!$this->_columns_locked) { - $this->_columns = []; - } - - $this->_rows = []; - - $this->_borders = []; - - $this->__col = $this->__row = 0; - } - - public function lock_columns(): void - { - $this->_columns_locked = true; - } - - /** - * @return bool - */ - public function is_columns_locked() - { - return $this->_columns_locked; - } - - /** - * @param bool $fixed - */ - public function set_layout_fixed(bool $fixed) - { - $this->_fixed_layout = $fixed; - } - - /** - * @return bool - */ - public function is_layout_fixed() - { - return $this->_fixed_layout; - } - - /** - * @return int - */ - public function get_num_rows() - { - return $this->_num_rows; - } - - /** - * @return int - */ - public function get_num_cols() - { - return $this->_num_cols; - } - - /** - * @return array - */ - public function &get_columns() - { - return $this->_columns; - } - - /** - * @param $columns - */ - public function set_columns($columns) - { - $this->_columns = $columns; - } - - /** - * @param int $i - * - * @return mixed - */ - public function &get_column($i) - { - if (!isset($this->_columns[$i])) { - $this->_columns[$i] = [ - "x" => 0, - "min-width" => 0, - "max-width" => 0, - "used-width" => null, - "absolute" => 0, - "percent" => 0, - "auto" => true, - ]; - } - - return $this->_columns[$i]; - } - - /** - * @return array - */ - public function &get_rows() - { - return $this->_rows; - } - - /** - * @param int $j - * - * @return mixed - */ - public function &get_row($j) - { - if (!isset($this->_rows[$j])) { - $this->_rows[$j] = [ - "y" => 0, - "first-column" => 0, - "height" => null, - ]; - } - - return $this->_rows[$j]; - } - - /** - * @param int $i - * @param int $j - * @param mixed $h_v - * @param null|mixed $prop - * - * @return mixed - */ - public function get_border($i, $j, $h_v, $prop = null) - { - if (!isset($this->_borders[$i][$j][$h_v])) { - $this->_borders[$i][$j][$h_v] = [ - "width" => 0, - "style" => "solid", - "color" => "black", - ]; - } - - if (isset($prop)) { - return $this->_borders[$i][$j][$h_v][$prop]; - } - - return $this->_borders[$i][$j][$h_v]; - } - - /** - * @param int $i - * @param int $j - * - * @return array - */ - public function get_border_properties($i, $j) - { - return [ - "top" => $this->get_border($i, $j, "horizontal"), - "right" => $this->get_border($i, $j + 1, "vertical"), - "bottom" => $this->get_border($i + 1, $j, "horizontal"), - "left" => $this->get_border($i, $j, "vertical"), - ]; - } - - /** - * @param Frame $frame - * - * @return array|null - */ - public function get_spanned_cells(Frame $frame) - { - $key = $frame->get_id(); - - if (isset($this->_frames[$key])) { - return $this->_frames[$key]; - } - - return null; - } - - /** - * @param Frame $frame - * - * @return bool - */ - public function frame_exists_in_cellmap(Frame $frame) - { - $key = $frame->get_id(); - - return isset($this->_frames[$key]); - } - - /** - * @param Frame $frame - * - * @return array - * @throws Exception - */ - public function get_frame_position(Frame $frame) - { - global $_dompdf_warnings; - - $key = $frame->get_id(); - - if (!isset($this->_frames[$key])) { - throw new Exception("Frame not found in cellmap"); - } - - // Positions are stored relative to the table position - [$table_x, $table_y] = $this->_table->get_position(); - $col = $this->_frames[$key]["columns"][0]; - $row = $this->_frames[$key]["rows"][0]; - - if (!isset($this->_columns[$col])) { - $_dompdf_warnings[] = "Frame not found in columns array. Check your table layout for missing or extra TDs."; - $x = $table_x; - } else { - $x = $table_x + $this->_columns[$col]["x"]; - } - - if (!isset($this->_rows[$row])) { - $_dompdf_warnings[] = "Frame not found in row array. Check your table layout for missing or extra TDs."; - $y = $table_y; - } else { - $y = $table_y + $this->_rows[$row]["y"]; - } - - return [$x, $y, "x" => $x, "y" => $y]; - } - - /** - * @param Frame $frame - * - * @return int - * @throws Exception - */ - public function get_frame_width(Frame $frame) - { - $key = $frame->get_id(); - - if (!isset($this->_frames[$key])) { - throw new Exception("Frame not found in cellmap"); - } - - $cols = $this->_frames[$key]["columns"]; - $w = 0; - foreach ($cols as $i) { - $w += $this->_columns[$i]["used-width"]; - } - - return $w; - } - - /** - * @param Frame $frame - * - * @return int - * @throws Exception - * @throws Exception - */ - public function get_frame_height(Frame $frame) - { - $key = $frame->get_id(); - - if (!isset($this->_frames[$key])) { - throw new Exception("Frame not found in cellmap"); - } - - $rows = $this->_frames[$key]["rows"]; - $h = 0; - foreach ($rows as $i) { - if (!isset($this->_rows[$i])) { - throw new Exception("The row #$i could not be found, please file an issue in the tracker with the HTML code"); - } - - $h += $this->_rows[$i]["height"]; - } - - return $h; - } - - /** - * @param int $j - * @param mixed $width - */ - public function set_column_width($j, $width) - { - if ($this->_columns_locked) { - return; - } - - $col =& $this->get_column($j); - $col["used-width"] = $width; - $next_col =& $this->get_column($j + 1); - $next_col["x"] = $col["x"] + $width; - } - - /** - * @param int $i - * @param long $height - */ - public function set_row_height($i, $height) - { - $row =& $this->get_row($i); - if ($height > $row["height"]) { - $row["height"] = $height; - } - $next_row =& $this->get_row($i + 1); - $next_row["y"] = $row["y"] + $row["height"]; - } - - /** - * https://www.w3.org/TR/CSS21/tables.html#border-conflict-resolution - * - * @param int $i - * @param int $j - * @param string $h_v `horizontal` or `vertical` - * @param array $border_spec - */ - protected function resolve_border(int $i, int $j, string $h_v, array $border_spec): void - { - if (!isset($this->_borders[$i][$j][$h_v])) { - $this->_borders[$i][$j][$h_v] = $border_spec; - return; - } - - $border = $this->_borders[$i][$j][$h_v]; - - $n_width = $border_spec["width"]; - $n_style = $border_spec["style"]; - $o_width = $border["width"]; - $o_style = $border["style"]; - - if ($o_style === "hidden") { - return; - } - - // A style of `none` has lowest priority independent of its specified - // width here, as its resolved width is always 0 - if ($n_style === "hidden" || $n_width > $o_width - || ($o_width == $n_width - && isset(self::BORDER_STYLE_SCORE[$n_style]) - && isset(self::BORDER_STYLE_SCORE[$o_style]) - && self::BORDER_STYLE_SCORE[$n_style] > self::BORDER_STYLE_SCORE[$o_style]) - ) { - $this->_borders[$i][$j][$h_v] = $border_spec; - } - } - - /** - * Get the resolved border properties for the given frame. - * - * @param AbstractFrameDecorator $frame - * - * @return array[] - */ - protected function get_resolved_border(AbstractFrameDecorator $frame): array - { - $key = $frame->get_id(); - $columns = $this->_frames[$key]["columns"]; - $rows = $this->_frames[$key]["rows"]; - - $first_col = $columns[0]; - $last_col = $columns[count($columns) - 1]; - $first_row = $rows[0]; - $last_row = $rows[count($rows) - 1]; - - $max_top = null; - $max_bottom = null; - $max_left = null; - $max_right = null; - - foreach ($columns as $col) { - $top = $this->_borders[$first_row][$col]["horizontal"]; - $bottom = $this->_borders[$last_row + 1][$col]["horizontal"]; - - if ($max_top === null || $top["width"] > $max_top["width"]) { - $max_top = $top; - } - if ($max_bottom === null || $bottom["width"] > $max_bottom["width"]) { - $max_bottom = $bottom; - } - } - - foreach ($rows as $row) { - $left = $this->_borders[$row][$first_col]["vertical"]; - $right = $this->_borders[$row][$last_col + 1]["vertical"]; - - if ($max_left === null || $left["width"] > $max_left["width"]) { - $max_left = $left; - } - if ($max_right === null || $right["width"] > $max_right["width"]) { - $max_right = $right; - } - } - - return [$max_top, $max_right, $max_bottom, $max_left]; - } - - /** - * @param AbstractFrameDecorator $frame - */ - public function add_frame(Frame $frame): void - { - $style = $frame->get_style(); - $display = $style->display; - - $collapse = $this->_table->get_style()->border_collapse === "collapse"; - - // Recursively add the frames within the table, its row groups and rows - if ($frame === $this->_table - || $display === "table-row" - || in_array($display, TableFrameDecorator::ROW_GROUPS, true) - ) { - $start_row = $this->__row; - - foreach ($frame->get_children() as $child) { - $this->add_frame($child); - } - - if ($display === "table-row") { - $this->add_row(); - } - - $num_rows = $this->__row - $start_row - 1; - $key = $frame->get_id(); - - // Row groups always span across the entire table - $this->_frames[$key]["columns"] = range(0, max(0, $this->_num_cols - 1)); - $this->_frames[$key]["rows"] = range($start_row, max(0, $this->__row - 1)); - $this->_frames[$key]["frame"] = $frame; - - if ($collapse) { - $bp = $style->get_border_properties(); - - // Resolve vertical borders - for ($i = 0; $i < $num_rows + 1; $i++) { - $this->resolve_border($start_row + $i, 0, "vertical", $bp["left"]); - $this->resolve_border($start_row + $i, $this->_num_cols, "vertical", $bp["right"]); - } - - // Resolve horizontal borders - for ($j = 0; $j < $this->_num_cols; $j++) { - $this->resolve_border($start_row, $j, "horizontal", $bp["top"]); - $this->resolve_border($this->__row, $j, "horizontal", $bp["bottom"]); - } - - if ($frame === $this->_table) { - // Clear borders because the cells are now using them. The - // border width still needs to be set to half the resolved - // width so that the table is positioned properly - [$top, $right, $bottom, $left] = $this->get_resolved_border($frame); - - $style->set_used("border_top_width", $top["width"] / 2); - $style->set_used("border_right_width", $right["width"] / 2); - $style->set_used("border_bottom_width", $bottom["width"] / 2); - $style->set_used("border_left_width", $left["width"] / 2); - $style->set_used("border_style", "none"); - } else { - // Clear borders for rows and row groups - $style->set_used("border_width", 0); - $style->set_used("border_style", "none"); - } - } - - if ($frame === $this->_table) { - // Apply resolved borders to table cells and calculate column - // widths after all frames have been added - $this->calculate_column_widths(); - } - return; - } - - // Add the frame to the cellmap - $key = $frame->get_id(); - $node = $frame->get_node(); - $bp = $style->get_border_properties(); - - // Determine where this cell is going - $colspan = max((int) $node->getAttribute("colspan"), 1); - $rowspan = max((int) $node->getAttribute("rowspan"), 1); - - // Find the next available column (fix by Ciro Mondueri) - $ac = $this->__col; - while (isset($this->_cells[$this->__row][$ac])) { - $ac++; - } - - $this->__col = $ac; - - // Rows: - for ($i = 0; $i < $rowspan; $i++) { - $row = $this->__row + $i; - - $this->_frames[$key]["rows"][] = $row; - - for ($j = 0; $j < $colspan; $j++) { - $this->_cells[$row][$this->__col + $j] = $frame; - } - - if ($collapse) { - // Resolve vertical borders - $this->resolve_border($row, $this->__col, "vertical", $bp["left"]); - $this->resolve_border($row, $this->__col + $colspan, "vertical", $bp["right"]); - } - } - - // Columns: - for ($j = 0; $j < $colspan; $j++) { - $col = $this->__col + $j; - $this->_frames[$key]["columns"][] = $col; - - if ($collapse) { - // Resolve horizontal borders - $this->resolve_border($this->__row, $col, "horizontal", $bp["top"]); - $this->resolve_border($this->__row + $rowspan, $col, "horizontal", $bp["bottom"]); - } - } - - $this->_frames[$key]["frame"] = $frame; - - $this->__col += $colspan; - if ($this->__col > $this->_num_cols) { - $this->_num_cols = $this->__col; - } - } - - /** - * Apply resolved borders to table cells and calculate column widths. - */ - protected function calculate_column_widths(): void - { - $table = $this->_table; - $table_style = $table->get_style(); - $collapse = $table_style->border_collapse === "collapse"; - - if ($collapse) { - $v_spacing = 0; - $h_spacing = 0; - } else { - // The additional 1/2 width gets added to the table proper - [$h, $v] = $table_style->border_spacing; - $v_spacing = $v / 2; - $h_spacing = $h / 2; - } - - foreach ($this->_frames as $frame_info) { - /** @var TableCellFrameDecorator */ - $frame = $frame_info["frame"]; - $style = $frame->get_style(); - $display = $style->display; - - if ($display !== "table-cell") { - continue; - } - - if ($collapse) { - // Set the resolved border at half width - [$top, $right, $bottom, $left] = $this->get_resolved_border($frame); - - $style->set_used("border_top_width", $top["width"] / 2); - $style->set_used("border_top_style", $top["style"]); - $style->set_used("border_top_color", $top["color"]); - $style->set_used("border_right_width", $right["width"] / 2); - $style->set_used("border_right_style", $right["style"]); - $style->set_used("border_right_color", $right["color"]); - $style->set_used("border_bottom_width", $bottom["width"] / 2); - $style->set_used("border_bottom_style", $bottom["style"]); - $style->set_used("border_bottom_color", $bottom["color"]); - $style->set_used("border_left_width", $left["width"] / 2); - $style->set_used("border_left_style", $left["style"]); - $style->set_used("border_left_color", $left["color"]); - $style->set_used("margin", 0); - } else { - // Border spacing is effectively a margin between cells - $style->set_used("margin_top", $v_spacing); - $style->set_used("margin_bottom", $v_spacing); - $style->set_used("margin_left", $h_spacing); - $style->set_used("margin_right", $h_spacing); - } - - if ($this->_columns_locked) { - continue; - } - - $node = $frame->get_node(); - $colspan = max((int) $node->getAttribute("colspan"), 1); - $first_col = $frame_info["columns"][0]; - - // Resolve the frame's width - if ($this->_fixed_layout) { - list($frame_min, $frame_max) = [0, 10e-10]; - } else { - list($frame_min, $frame_max) = $frame->get_min_max_width(); - } - - $width = $style->width; - - $val = null; - if (Helpers::is_percent($width) && $colspan === 1) { - $var = "percent"; - $val = (float)rtrim($width, "% "); - } elseif ($width !== "auto" && $colspan === 1) { - $var = "absolute"; - $val = $frame_min; - } - - $min = 0; - $max = 0; - for ($cs = 0; $cs < $colspan; $cs++) { - - // Resolve the frame's width(s) with other cells - $col =& $this->get_column($first_col + $cs); - - // Note: $var is either 'percent' or 'absolute'. We compare the - // requested percentage or absolute values with the existing widths - // and adjust accordingly. - if (isset($var) && $val > $col[$var]) { - $col[$var] = $val; - $col["auto"] = false; - } - - $min += $col["min-width"]; - $max += $col["max-width"]; - } - - if ($frame_min > $min && $colspan === 1) { - // The frame needs more space. Expand each sub-column - // FIXME try to avoid putting this dummy value when table-layout:fixed - $inc = ($this->is_layout_fixed() ? 10e-10 : ($frame_min - $min)); - for ($c = 0; $c < $colspan; $c++) { - $col =& $this->get_column($first_col + $c); - $col["min-width"] += $inc; - } - } - - if ($frame_max > $max) { - // FIXME try to avoid putting this dummy value when table-layout:fixed - $inc = ($this->is_layout_fixed() ? 10e-10 : ($frame_max - $max) / $colspan); - for ($c = 0; $c < $colspan; $c++) { - $col =& $this->get_column($first_col + $c); - $col["max-width"] += $inc; - } - } - } - - // Adjust absolute columns so that the absolute (and max) width is the - // largest minimum width of all cells. This accounts for cells without - // absolute width within an absolute column - foreach ($this->_columns as &$col) { - if ($col["absolute"] > 0) { - $col["absolute"] = $col["min-width"]; - $col["max-width"] = $col["min-width"]; - } - } - } - - protected function add_row(): void - { - $this->__row++; - $this->_num_rows++; - - // Find the next available column - $i = 0; - while (isset($this->_cells[$this->__row][$i])) { - $i++; - } - - $this->__col = $i; - } - - /** - * Remove a row from the cellmap. - * - * @param Frame - */ - public function remove_row(Frame $row) - { - $key = $row->get_id(); - if (!isset($this->_frames[$key])) { - return; // Presumably this row has already been removed - } - - $this->__row = $this->_num_rows--; - - $rows = $this->_frames[$key]["rows"]; - $columns = $this->_frames[$key]["columns"]; - - // Remove all frames from this row - foreach ($rows as $r) { - foreach ($columns as $c) { - if (isset($this->_cells[$r][$c])) { - $id = $this->_cells[$r][$c]->get_id(); - - $this->_cells[$r][$c] = null; - unset($this->_cells[$r][$c]); - - // has multiple rows? - if (isset($this->_frames[$id]) && count($this->_frames[$id]["rows"]) > 1) { - // remove just the desired row, but leave the frame - if (($row_key = array_search($r, $this->_frames[$id]["rows"])) !== false) { - unset($this->_frames[$id]["rows"][$row_key]); - } - continue; - } - - $this->_frames[$id] = null; - unset($this->_frames[$id]); - } - } - - $this->_rows[$r] = null; - unset($this->_rows[$r]); - } - - $this->_frames[$key] = null; - unset($this->_frames[$key]); - } - - /** - * Remove a row group from the cellmap. - * - * @param Frame $group The group to remove - */ - public function remove_row_group(Frame $group) - { - $key = $group->get_id(); - if (!isset($this->_frames[$key])) { - return; // Presumably this row has already been removed - } - - $iter = $group->get_first_child(); - while ($iter) { - $this->remove_row($iter); - $iter = $iter->get_next_sibling(); - } - - $this->_frames[$key] = null; - unset($this->_frames[$key]); - } - - /** - * Update a row group after rows have been removed - * - * @param Frame $group The group to update - * @param Frame $last_row The last row in the row group - */ - public function update_row_group(Frame $group, Frame $last_row) - { - $g_key = $group->get_id(); - - $first_index = $this->_frames[$g_key]["rows"][0]; - $last_index = $first_index; - $row = $last_row; - while ($row = $row->get_prev_sibling()) { - $last_index++; - } - - $this->_frames[$g_key]["rows"] = range($first_index, $last_index); - } - - public function assign_x_positions(): void - { - // Pre-condition: widths must be resolved and assigned to columns and - // column[0]["x"] must be set. - - if ($this->_columns_locked) { - return; - } - - $x = $this->_columns[0]["x"]; - foreach (array_keys($this->_columns) as $j) { - $this->_columns[$j]["x"] = $x; - $x += $this->_columns[$j]["used-width"]; - } - } - - public function assign_frame_heights(): void - { - // Pre-condition: widths and heights of each column & row must be - // calcluated - foreach ($this->_frames as $arr) { - $frame = $arr["frame"]; - - $h = 0.0; - foreach ($arr["rows"] as $row) { - if (!isset($this->_rows[$row])) { - // The row has been removed because of a page split, so skip it. - continue; - } - - $h += $this->_rows[$row]["height"]; - } - - if ($frame instanceof TableCellFrameDecorator) { - $frame->set_cell_height($h); - } else { - $frame->get_style()->set_used("height", $h); - } - } - } - - /** - * Re-adjust frame height if the table height is larger than its content - */ - public function set_frame_heights(float $table_height, float $content_height): void - { - // Distribute the increased height proportionally amongst each row - foreach ($this->_frames as $arr) { - $frame = $arr["frame"]; - - $h = 0.0; - foreach ($arr["rows"] as $row) { - if (!isset($this->_rows[$row])) { - continue; - } - - $h += $this->_rows[$row]["height"]; - } - - if ($content_height > 0) { - $new_height = ($h / $content_height) * $table_height; - } else { - $new_height = 0.0; - } - - if ($frame instanceof TableCellFrameDecorator) { - $frame->set_cell_height($new_height); - } else { - $frame->get_style()->set_used("height", $new_height); - } - } - } - - /** - * Used for debugging: - * - * @return string - */ - public function __toString(): string - { - $str = ""; - $str .= "Columns:
    "; - $str .= Helpers::pre_r($this->_columns, true); - $str .= "Rows:
    "; - $str .= Helpers::pre_r($this->_rows, true); - - $str .= "Frames:
    "; - $arr = []; - foreach ($this->_frames as $key => $val) { - $arr[$key] = ["columns" => $val["columns"], "rows" => $val["rows"]]; - } - - $str .= Helpers::pre_r($arr, true); - - if (php_sapi_name() == "cli") { - $str = strip_tags(str_replace(["
    ", "", ""], - ["\n", chr(27) . "[01;33m", chr(27) . "[0m"], - $str)); - } - - return $str; - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Css/AttributeTranslator.php b/docker/statistics/vendor/dompdf/dompdf/src/Css/AttributeTranslator.php deleted file mode 100644 index b2013e13..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Css/AttributeTranslator.php +++ /dev/null @@ -1,652 +0,0 @@ - array ( 'align' => '', ), - 'img' => [ - 'align' => [ - 'bottom' => 'vertical-align: baseline;', - 'middle' => 'vertical-align: middle;', - 'top' => 'vertical-align: top;', - 'left' => 'float: left;', - 'right' => 'float: right;' - ], - 'border' => 'border: %0.2Fpx solid;', - 'height' => '_set_px_height', - 'hspace' => 'padding-left: %1$0.2Fpx; padding-right: %1$0.2Fpx;', - 'vspace' => 'padding-top: %1$0.2Fpx; padding-bottom: %1$0.2Fpx;', - 'width' => '_set_px_width', - ], - 'table' => [ - 'align' => [ - 'left' => 'margin-left: 0; margin-right: auto;', - 'center' => 'margin-left: auto; margin-right: auto;', - 'right' => 'margin-left: auto; margin-right: 0;' - ], - 'bgcolor' => 'background-color: %s;', - 'border' => '_set_table_border', - 'cellpadding' => '_set_table_cellpadding', //'border-spacing: %0.2F; border-collapse: separate;', - 'cellspacing' => '_set_table_cellspacing', - 'frame' => [ - 'void' => 'border-style: none;', - 'above' => 'border-top-style: solid;', - 'below' => 'border-bottom-style: solid;', - 'hsides' => 'border-left-style: solid; border-right-style: solid;', - 'vsides' => 'border-top-style: solid; border-bottom-style: solid;', - 'lhs' => 'border-left-style: solid;', - 'rhs' => 'border-right-style: solid;', - 'box' => 'border-style: solid;', - 'border' => 'border-style: solid;' - ], - 'rules' => '_set_table_rules', - 'width' => 'width: %s;', - ], - 'hr' => [ - 'align' => '_set_hr_align', // Need to grab width to set 'left' & 'right' correctly - 'noshade' => 'border-style: solid;', - 'size' => '_set_hr_size', //'border-width: %0.2F px;', - 'width' => 'width: %s;', - ], - 'div' => [ - 'align' => 'text-align: %s;', - ], - 'h1' => [ - 'align' => 'text-align: %s;', - ], - 'h2' => [ - 'align' => 'text-align: %s;', - ], - 'h3' => [ - 'align' => 'text-align: %s;', - ], - 'h4' => [ - 'align' => 'text-align: %s;', - ], - 'h5' => [ - 'align' => 'text-align: %s;', - ], - 'h6' => [ - 'align' => 'text-align: %s;', - ], - //TODO: translate more form element attributes - 'input' => [ - 'size' => '_set_input_width' - ], - 'p' => [ - 'align' => 'text-align: %s;', - ], -// 'col' => array( -// 'align' => '', -// 'valign' => '', -// ), -// 'colgroup' => array( -// 'align' => '', -// 'valign' => '', -// ), - 'tbody' => [ - 'align' => '_set_table_row_align', - 'valign' => '_set_table_row_valign', - ], - 'td' => [ - 'align' => 'text-align: %s;', - 'bgcolor' => '_set_background_color', - 'height' => 'height: %s;', - 'nowrap' => 'white-space: nowrap;', - 'valign' => 'vertical-align: %s;', - 'width' => 'width: %s;', - ], - 'tfoot' => [ - 'align' => '_set_table_row_align', - 'valign' => '_set_table_row_valign', - ], - 'th' => [ - 'align' => 'text-align: %s;', - 'bgcolor' => '_set_background_color', - 'height' => 'height: %s;', - 'nowrap' => 'white-space: nowrap;', - 'valign' => 'vertical-align: %s;', - 'width' => 'width: %s;', - ], - 'thead' => [ - 'align' => '_set_table_row_align', - 'valign' => '_set_table_row_valign', - ], - 'tr' => [ - 'align' => '_set_table_row_align', - 'bgcolor' => '_set_table_row_bgcolor', - 'valign' => '_set_table_row_valign', - ], - 'body' => [ - 'background' => 'background-image: url(%s);', - 'bgcolor' => '_set_background_color', - 'link' => '_set_body_link', - 'text' => '_set_color', - ], - 'br' => [ - 'clear' => 'clear: %s;', - ], - 'basefont' => [ - 'color' => '_set_color', - 'face' => 'font-family: %s;', - 'size' => '_set_basefont_size', - ], - 'font' => [ - 'color' => '_set_color', - 'face' => 'font-family: %s;', - 'size' => '_set_font_size', - ], - 'dir' => [ - 'compact' => 'margin: 0.5em 0;', - ], - 'dl' => [ - 'compact' => 'margin: 0.5em 0;', - ], - 'menu' => [ - 'compact' => 'margin: 0.5em 0;', - ], - 'ol' => [ - 'compact' => 'margin: 0.5em 0;', - 'start' => 'counter-reset: -dompdf-default-counter %d;', - 'type' => 'list-style-type: %s;', - ], - 'ul' => [ - 'compact' => 'margin: 0.5em 0;', - 'type' => 'list-style-type: %s;', - ], - 'li' => [ - 'type' => 'list-style-type: %s;', - 'value' => 'counter-reset: -dompdf-default-counter %d;', - ], - 'pre' => [ - 'width' => 'width: %s;', - ], - ]; - - protected static $_last_basefont_size = 3; - protected static $_font_size_lookup = [ - // For basefont support - -3 => "4pt", - -2 => "5pt", - -1 => "6pt", - 0 => "7pt", - - 1 => "8pt", - 2 => "10pt", - 3 => "12pt", - 4 => "14pt", - 5 => "18pt", - 6 => "24pt", - 7 => "34pt", - - // For basefont support - 8 => "48pt", - 9 => "44pt", - 10 => "52pt", - 11 => "60pt", - ]; - - /** - * @param Frame $frame - */ - static function translate_attributes(Frame $frame) - { - $node = $frame->get_node(); - $tag = $node->nodeName; - - if (!isset(self::$__ATTRIBUTE_LOOKUP[$tag])) { - return; - } - - $valid_attrs = self::$__ATTRIBUTE_LOOKUP[$tag]; - $attrs = $node->attributes; - $style = rtrim($node->getAttribute(self::$_style_attr), "; "); - if ($style != "") { - $style .= ";"; - } - - foreach ($attrs as $attr => $attr_node) { - if (!isset($valid_attrs[$attr])) { - continue; - } - - $value = $attr_node->value; - - $target = $valid_attrs[$attr]; - - // Look up $value in $target, if $target is an array: - if (is_array($target)) { - if (isset($target[$value])) { - $style .= " " . self::_resolve_target($node, $target[$value], $value); - } - } else { - // otherwise use target directly - $style .= " " . self::_resolve_target($node, $target, $value); - } - } - - if (!is_null($style)) { - $style = ltrim($style); - $node->setAttribute(self::$_style_attr, $style); - } - } - - /** - * @param \DOMNode $node - * @param string $target - * @param string $value - * - * @return string - */ - protected static function _resolve_target(\DOMNode $node, $target, $value) - { - if ($target[0] === "_") { - return self::$target($node, $value); - } - - return $value ? sprintf($target, $value) : ""; - } - - /** - * @param \DOMElement $node - * @param string $new_style - */ - static function append_style(\DOMElement $node, $new_style) - { - $style = rtrim($node->getAttribute(self::$_style_attr), ";"); - $style .= $new_style; - $style = ltrim($style, ";"); - $node->setAttribute(self::$_style_attr, $style); - } - - /** - * @param \DOMNode $node - * - * @return \DOMNodeList|\DOMElement[] - */ - protected static function get_cell_list(\DOMNode $node) - { - $xpath = new \DOMXpath($node->ownerDocument); - - switch ($node->nodeName) { - default: - case "table": - $query = "tr/td | thead/tr/td | tbody/tr/td | tfoot/tr/td | tr/th | thead/tr/th | tbody/tr/th | tfoot/tr/th"; - break; - - case "tbody": - case "tfoot": - case "thead": - $query = "tr/td | tr/th"; - break; - - case "tr": - $query = "td | th"; - break; - } - - return $xpath->query($query, $node); - } - - /** - * @param string $value - * - * @return string - */ - protected static function _get_valid_color($value) - { - if (preg_match('/^#?([0-9A-F]{6})$/i', $value, $matches)) { - $value = "#$matches[1]"; - } - - return $value; - } - - /** - * @param \DOMElement $node - * @param string $value - * - * @return string - */ - protected static function _set_color(\DOMElement $node, $value) - { - $value = self::_get_valid_color($value); - - return "color: $value;"; - } - - /** - * @param \DOMElement $node - * @param string $value - * - * @return string - */ - protected static function _set_background_color(\DOMElement $node, $value) - { - $value = self::_get_valid_color($value); - - return "background-color: $value;"; - } - - protected static function _set_px_width(\DOMElement $node, string $value): string - { - $v = trim($value); - - if (Helpers::is_percent($v)) { - return sprintf("width: %s;", $v); - } - - if (is_numeric(mb_substr($v, 0, 1))) { - return sprintf("width: %spx;", (float) $v); - } - - return ""; - } - - protected static function _set_px_height(\DOMElement $node, string $value): string - { - $v = trim($value); - - if (Helpers::is_percent($v)) { - return sprintf("height: %s;", $v); - } - - if (is_numeric(mb_substr($v, 0, 1))) { - return sprintf("height: %spx;", (float) $v); - } - - return ""; - } - - /** - * @param \DOMElement $node - * @param string $value - * - * @return null - */ - protected static function _set_table_cellpadding(\DOMElement $node, $value) - { - $cell_list = self::get_cell_list($node); - - foreach ($cell_list as $cell) { - self::append_style($cell, "; padding: {$value}px;"); - } - - return null; - } - - /** - * @param \DOMElement $node - * @param string $value - * - * @return string - */ - protected static function _set_table_border(\DOMElement $node, $value) - { - return "border-width: $value" . "px;"; - } - - /** - * @param \DOMElement $node - * @param string $value - * - * @return string - */ - protected static function _set_table_cellspacing(\DOMElement $node, $value) - { - $style = rtrim($node->getAttribute(self::$_style_attr), ";"); - - if ($value == 0) { - $style .= "; border-collapse: collapse;"; - } else { - $style .= "; border-spacing: {$value}px; border-collapse: separate;"; - } - - return ltrim($style, ";"); - } - - /** - * @param \DOMElement $node - * @param string $value - * - * @return null|string - */ - protected static function _set_table_rules(\DOMElement $node, $value) - { - $new_style = "; border-collapse: collapse;"; - - switch ($value) { - case "none": - $new_style .= "border-style: none;"; - break; - - case "groups": - // FIXME: unsupported - return null; - - case "rows": - $new_style .= "border-style: solid none solid none; border-width: 1px; "; - break; - - case "cols": - $new_style .= "border-style: none solid none solid; border-width: 1px; "; - break; - - case "all": - $new_style .= "border-style: solid; border-width: 1px; "; - break; - - default: - // Invalid value - return null; - } - - $cell_list = self::get_cell_list($node); - - foreach ($cell_list as $cell) { - $style = $cell->getAttribute(self::$_style_attr); - $style .= $new_style; - $cell->setAttribute(self::$_style_attr, $style); - } - - $style = rtrim($node->getAttribute(self::$_style_attr), ";"); - $style .= "; border-collapse: collapse; "; - - return ltrim($style, "; "); - } - - /** - * @param \DOMElement $node - * @param string $value - * - * @return string - */ - protected static function _set_hr_size(\DOMElement $node, $value) - { - $style = rtrim($node->getAttribute(self::$_style_attr), ";"); - $style .= "; border-width: " . max(0, $value - 2) . "; "; - - return ltrim($style, "; "); - } - - /** - * @param \DOMElement $node - * @param string $value - * - * @return null|string - */ - protected static function _set_hr_align(\DOMElement $node, $value) - { - $style = rtrim($node->getAttribute(self::$_style_attr), ";"); - $width = $node->getAttribute("width"); - - if ($width == "") { - $width = "100%"; - } - - $remainder = 100 - (double)rtrim($width, "% "); - - switch ($value) { - case "left": - $style .= "; margin-right: $remainder %;"; - break; - - case "right": - $style .= "; margin-left: $remainder %;"; - break; - - case "center": - $style .= "; margin-left: auto; margin-right: auto;"; - break; - - default: - return null; - } - - return ltrim($style, "; "); - } - - /** - * @param \DOMElement $node - * @param string $value - * - * @return null|string - */ - protected static function _set_input_width(\DOMElement $node, $value) - { - if (empty($value)) { return null; } - - if ($node->hasAttribute("type") && in_array(strtolower($node->getAttribute("type")), ["text","password"])) { - return sprintf("width: %Fem", (((int)$value * .65)+2)); - } else { - return sprintf("width: %upx;", (int)$value); - } - } - - /** - * @param \DOMElement $node - * @param string $value - * - * @return null - */ - protected static function _set_table_row_align(\DOMElement $node, $value) - { - $cell_list = self::get_cell_list($node); - - foreach ($cell_list as $cell) { - self::append_style($cell, "; text-align: $value;"); - } - - return null; - } - - /** - * @param \DOMElement $node - * @param string $value - * - * @return null - */ - protected static function _set_table_row_valign(\DOMElement $node, $value) - { - $cell_list = self::get_cell_list($node); - - foreach ($cell_list as $cell) { - self::append_style($cell, "; vertical-align: $value;"); - } - - return null; - } - - /** - * @param \DOMElement $node - * @param string $value - * - * @return null - */ - protected static function _set_table_row_bgcolor(\DOMElement $node, $value) - { - $cell_list = self::get_cell_list($node); - $value = self::_get_valid_color($value); - - foreach ($cell_list as $cell) { - self::append_style($cell, "; background-color: $value;"); - } - - return null; - } - - /** - * @param \DOMElement $node - * @param string $value - * - * @return null - */ - protected static function _set_body_link(\DOMElement $node, $value) - { - $a_list = $node->getElementsByTagName("a"); - $value = self::_get_valid_color($value); - - foreach ($a_list as $a) { - self::append_style($a, "; color: $value;"); - } - - return null; - } - - /** - * @param \DOMElement $node - * @param string $value - * - * @return null - */ - protected static function _set_basefont_size(\DOMElement $node, $value) - { - // FIXME: ? we don't actually set the font size of anything here, just - // the base size for later modification by tags. - self::$_last_basefont_size = $value; - - return null; - } - - /** - * @param \DOMElement $node - * @param string $value - * - * @return string - */ - protected static function _set_font_size(\DOMElement $node, $value) - { - $style = $node->getAttribute(self::$_style_attr); - - if ($value[0] === "-" || $value[0] === "+") { - $value = self::$_last_basefont_size + (int)$value; - } - - if (isset(self::$_font_size_lookup[$value])) { - $style .= "; font-size: " . self::$_font_size_lookup[$value] . ";"; - } else { - $style .= "; font-size: $value;"; - } - - return ltrim($style, "; "); - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Css/Color.php b/docker/statistics/vendor/dompdf/dompdf/src/Css/Color.php deleted file mode 100644 index 28a9f562..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Css/Color.php +++ /dev/null @@ -1,339 +0,0 @@ - "F0F8FF", - "antiquewhite" => "FAEBD7", - "aqua" => "00FFFF", - "aquamarine" => "7FFFD4", - "azure" => "F0FFFF", - "beige" => "F5F5DC", - "bisque" => "FFE4C4", - "black" => "000000", - "blanchedalmond" => "FFEBCD", - "blue" => "0000FF", - "blueviolet" => "8A2BE2", - "brown" => "A52A2A", - "burlywood" => "DEB887", - "cadetblue" => "5F9EA0", - "chartreuse" => "7FFF00", - "chocolate" => "D2691E", - "coral" => "FF7F50", - "cornflowerblue" => "6495ED", - "cornsilk" => "FFF8DC", - "crimson" => "DC143C", - "cyan" => "00FFFF", - "darkblue" => "00008B", - "darkcyan" => "008B8B", - "darkgoldenrod" => "B8860B", - "darkgray" => "A9A9A9", - "darkgreen" => "006400", - "darkgrey" => "A9A9A9", - "darkkhaki" => "BDB76B", - "darkmagenta" => "8B008B", - "darkolivegreen" => "556B2F", - "darkorange" => "FF8C00", - "darkorchid" => "9932CC", - "darkred" => "8B0000", - "darksalmon" => "E9967A", - "darkseagreen" => "8FBC8F", - "darkslateblue" => "483D8B", - "darkslategray" => "2F4F4F", - "darkslategrey" => "2F4F4F", - "darkturquoise" => "00CED1", - "darkviolet" => "9400D3", - "deeppink" => "FF1493", - "deepskyblue" => "00BFFF", - "dimgray" => "696969", - "dimgrey" => "696969", - "dodgerblue" => "1E90FF", - "firebrick" => "B22222", - "floralwhite" => "FFFAF0", - "forestgreen" => "228B22", - "fuchsia" => "FF00FF", - "gainsboro" => "DCDCDC", - "ghostwhite" => "F8F8FF", - "gold" => "FFD700", - "goldenrod" => "DAA520", - "gray" => "808080", - "green" => "008000", - "greenyellow" => "ADFF2F", - "grey" => "808080", - "honeydew" => "F0FFF0", - "hotpink" => "FF69B4", - "indianred" => "CD5C5C", - "indigo" => "4B0082", - "ivory" => "FFFFF0", - "khaki" => "F0E68C", - "lavender" => "E6E6FA", - "lavenderblush" => "FFF0F5", - "lawngreen" => "7CFC00", - "lemonchiffon" => "FFFACD", - "lightblue" => "ADD8E6", - "lightcoral" => "F08080", - "lightcyan" => "E0FFFF", - "lightgoldenrodyellow" => "FAFAD2", - "lightgray" => "D3D3D3", - "lightgreen" => "90EE90", - "lightgrey" => "D3D3D3", - "lightpink" => "FFB6C1", - "lightsalmon" => "FFA07A", - "lightseagreen" => "20B2AA", - "lightskyblue" => "87CEFA", - "lightslategray" => "778899", - "lightslategrey" => "778899", - "lightsteelblue" => "B0C4DE", - "lightyellow" => "FFFFE0", - "lime" => "00FF00", - "limegreen" => "32CD32", - "linen" => "FAF0E6", - "magenta" => "FF00FF", - "maroon" => "800000", - "mediumaquamarine" => "66CDAA", - "mediumblue" => "0000CD", - "mediumorchid" => "BA55D3", - "mediumpurple" => "9370DB", - "mediumseagreen" => "3CB371", - "mediumslateblue" => "7B68EE", - "mediumspringgreen" => "00FA9A", - "mediumturquoise" => "48D1CC", - "mediumvioletred" => "C71585", - "midnightblue" => "191970", - "mintcream" => "F5FFFA", - "mistyrose" => "FFE4E1", - "moccasin" => "FFE4B5", - "navajowhite" => "FFDEAD", - "navy" => "000080", - "oldlace" => "FDF5E6", - "olive" => "808000", - "olivedrab" => "6B8E23", - "orange" => "FFA500", - "orangered" => "FF4500", - "orchid" => "DA70D6", - "palegoldenrod" => "EEE8AA", - "palegreen" => "98FB98", - "paleturquoise" => "AFEEEE", - "palevioletred" => "DB7093", - "papayawhip" => "FFEFD5", - "peachpuff" => "FFDAB9", - "peru" => "CD853F", - "pink" => "FFC0CB", - "plum" => "DDA0DD", - "powderblue" => "B0E0E6", - "purple" => "800080", - "red" => "FF0000", - "rosybrown" => "BC8F8F", - "royalblue" => "4169E1", - "saddlebrown" => "8B4513", - "salmon" => "FA8072", - "sandybrown" => "F4A460", - "seagreen" => "2E8B57", - "seashell" => "FFF5EE", - "sienna" => "A0522D", - "silver" => "C0C0C0", - "skyblue" => "87CEEB", - "slateblue" => "6A5ACD", - "slategray" => "708090", - "slategrey" => "708090", - "snow" => "FFFAFA", - "springgreen" => "00FF7F", - "steelblue" => "4682B4", - "tan" => "D2B48C", - "teal" => "008080", - "thistle" => "D8BFD8", - "tomato" => "FF6347", - "turquoise" => "40E0D0", - "violet" => "EE82EE", - "wheat" => "F5DEB3", - "white" => "FFFFFF", - "whitesmoke" => "F5F5F5", - "yellow" => "FFFF00", - "yellowgreen" => "9ACD32", - ]; - - /** - * @param array|string|null $color - * @return array|string|null - */ - static function parse($color) - { - if ($color === null) { - return null; - } - - if (is_array($color)) { - // Assume the array has the right format... - // FIXME: should/could verify this. - return $color; - } - - static $cache = []; - - $color = strtolower($color); - - if (isset($cache[$color])) { - return $cache[$color]; - } - - if ($color === "transparent") { - return $cache[$color] = $color; - } - - if (isset(self::$cssColorNames[$color])) { - return $cache[$color] = self::getArray(self::$cssColorNames[$color]); - } - - // https://www.w3.org/TR/css-color-4/#hex-notation - if (mb_substr($color, 0, 1) === "#") { - $length = mb_strlen($color); - $alpha = 1.0; - - // #rgb format - if ($length === 4) { - return $cache[$color] = self::getArray($color[1] . $color[1] . $color[2] . $color[2] . $color[3] . $color[3]); - } - - // #rgba format - if ($length === 5) { - if (ctype_xdigit($color[4])) { - $alpha = round(hexdec($color[4] . $color[4])/255, 2); - } - return $cache[$color] = self::getArray($color[1] . $color[1] . $color[2] . $color[2] . $color[3] . $color[3], $alpha); - } - - // #rrggbb format - if ($length === 7) { - return $cache[$color] = self::getArray(mb_substr($color, 1, 6)); - } - - // #rrggbbaa format - if ($length === 9) { - if (ctype_xdigit(mb_substr($color, 7, 2))) { - $alpha = round(hexdec(mb_substr($color, 7, 2))/255, 2); - } - return $cache[$color] = self::getArray(mb_substr($color, 1, 6), $alpha); - } - - return null; - } - - // rgb( r g b [/α] ) / rgb( r,g,b[,α] ) format and alias rgba() - // https://www.w3.org/TR/css-color-4/#rgb-functions - if (mb_substr($color, 0, 4) === "rgb(" || mb_substr($color, 0, 5) === "rgba(") { - $i = mb_strpos($color, "("); - $j = mb_strpos($color, ")"); - - // Bad color value - if ($i === false || $j === false) { - return null; - } - - $value_decl = trim(mb_substr($color, $i + 1, $j - $i - 1)); - - if (mb_strpos($value_decl, ",") === false) { - // Space-separated values syntax `r g b` or `r g b / α` - $parts = preg_split("/\s*\/\s*/", $value_decl); - $triplet = preg_split("/\s+/", $parts[0]); - $alpha = $parts[1] ?? 1.0; - } else { - // Comma-separated values syntax `r, g, b` or `r, g, b, α` - $parts = preg_split("/\s*,\s*/", $value_decl); - $triplet = array_slice($parts, 0, 3); - $alpha = $parts[3] ?? 1.0; - } - - if (count($triplet) !== 3) { - return null; - } - - // Parse alpha value - if (Helpers::is_percent($alpha)) { - $alpha = (float) $alpha / 100; - } else { - $alpha = (float) $alpha; - } - - $alpha = max(0.0, min($alpha, 1.0)); - - foreach ($triplet as &$c) { - if (Helpers::is_percent($c)) { - $c = round((float) $c * 2.55); - } - } - - return $cache[$color] = self::getArray(vsprintf("%02X%02X%02X", $triplet), $alpha); - } - - // cmyk( c,m,y,k ) format - // http://www.w3.org/TR/css3-gcpm/#cmyk-colors - if (mb_substr($color, 0, 5) === "cmyk(") { - $i = mb_strpos($color, "("); - $j = mb_strpos($color, ")"); - - // Bad color value - if ($i === false || $j === false) { - return null; - } - - $values = explode(",", mb_substr($color, $i + 1, $j - $i - 1)); - - if (count($values) != 4) { - return null; - } - - $values = array_map(function ($c) { - return min(1.0, max(0.0, floatval(trim($c)))); - }, $values); - - return $cache[$color] = self::getArray($values); - } - - // Invalid or unsupported color format - return null; - } - - /** - * @param array|string $color - * @param float $alpha - * @return array - */ - static function getArray($color, $alpha = 1.0) - { - $c = [null, null, null, null, "alpha" => $alpha, "hex" => null]; - - if (is_array($color)) { - $c = $color; - $c["c"] = $c[0]; - $c["m"] = $c[1]; - $c["y"] = $c[2]; - $c["k"] = $c[3]; - $c["alpha"] = $alpha; - $c["hex"] = "cmyk($c[0],$c[1],$c[2],$c[3])"; - } else { - if (ctype_xdigit($color) === false || mb_strlen($color) !== 6) { - // invalid color value ... expected 6-character hex - return $c; - } - $c[0] = hexdec(mb_substr($color, 0, 2)) / 0xff; - $c[1] = hexdec(mb_substr($color, 2, 2)) / 0xff; - $c[2] = hexdec(mb_substr($color, 4, 2)) / 0xff; - $c["r"] = $c[0]; - $c["g"] = $c[1]; - $c["b"] = $c[2]; - $c["alpha"] = $alpha; - $c["hex"] = sprintf("#%s%02X", $color, round($alpha * 255)); - } - - return $c; - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Css/Style.php b/docker/statistics/vendor/dompdf/dompdf/src/Css/Style.php deleted file mode 100644 index 2d4c9d79..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Css/Style.php +++ /dev/null @@ -1,3743 +0,0 @@ -margin_top = 10.0; - * echo $style->margin_top; // Returns `10.0` - * ``` - * - * To declare a property from a string, use {@link Style::set_prop()}: - * - * ``` - * $style->set_prop("margin_top", "1em"); - * echo $style->get_specified("margin_top"); // Returns `1em` - * echo $style->margin_top; // Returns `12.0`, assuming the default font size - * ``` - * - * Actual CSS parsing is performed in the {@link Stylesheet} class. - * - * @property string $azimuth - * @property string $background_attachment - * @property array|string $background_color - * @property string $background_image Image URL or `none` - * @property string $background_image_resolution - * @property array $background_position - * @property string $background_repeat - * @property array|string $background_size `cover`, `contain`, or `[width, height]`, each being a length, percentage, or `auto` - * @property string $border_collapse - * @property string $border_color Only use for setting all sides to the same color - * @property float[] $border_spacing Pair of `[horizontal, vertical]` spacing - * @property string $border_style Only use for setting all sides to the same style - * @property array|string $border_top_color - * @property array|string $border_right_color - * @property array|string $border_bottom_color - * @property array|string $border_left_color - * @property string $border_top_style Valid border style - * @property string $border_right_style Valid border style - * @property string $border_bottom_style Valid border style - * @property string $border_left_style Valid border style - * @property float $border_top_width Length in pt - * @property float $border_right_width Length in pt - * @property float $border_bottom_width Length in pt - * @property float $border_left_width Length in pt - * @property string $border_width Only use for setting all sides to the same width - * @property float|string $border_bottom_left_radius Radius in pt or a percentage value - * @property float|string $border_bottom_right_radius Radius in pt or a percentage value - * @property float|string $border_top_left_radius Radius in pt or a percentage value - * @property float|string $border_top_right_radius Radius in pt or a percentage value - * @property string $border_radius Only use for setting all corners to the same radius - * @property float|string $bottom Length in pt, a percentage value, or `auto` - * @property string $caption_side - * @property string $clear - * @property string $clip - * @property array|string $color - * @property string[]|string $content List of content components, `normal`, or `none` - * @property array|string $counter_increment Array defining the counters to increment or `none` - * @property array|string $counter_reset Array defining the counters to reset or `none` - * @property string $cue_after - * @property string $cue_before - * @property string $cue - * @property string $cursor - * @property string $direction - * @property string $display - * @property string $elevation - * @property string $empty_cells - * @property string $float - * @property string $font_family - * @property float $font_size Length in pt - * @property string $font_style - * @property string $font_variant - * @property string $font_weight - * @property float|string $height Length in pt, a percentage value, or `auto` - * @property string $image_resolution - * @property string $inset Only use for setting all box insets to the same length - * @property float|string $left Length in pt, a percentage value, or `auto` - * @property float $letter_spacing Length in pt - * @property float $line_height Length in pt - * @property string $list_style_image Image URL or `none` - * @property string $list_style_position - * @property string $list_style_type - * @property float|string $margin_right Length in pt, a percentage value, or `auto` - * @property float|string $margin_left Length in pt, a percentage value, or `auto` - * @property float|string $margin_top Length in pt, a percentage value, or `auto` - * @property float|string $margin_bottom Length in pt, a percentage value, or `auto` - * @property string $margin Only use for setting all sides to the same length - * @property float|string $max_height Length in pt, a percentage value, or `none` - * @property float|string $max_width Length in pt, a percentage value, or `none` - * @property float|string $min_height Length in pt, a percentage value, or `auto` - * @property float|string $min_width Length in pt, a percentage value, or `auto` - * @property float $opacity Number in the range [0, 1] - * @property int $orphans - * @property array|string $outline_color - * @property string $outline_style Valid border style, except for `hidden` - * @property float $outline_width Length in pt - * @property float $outline_offset Length in pt - * @property string $overflow - * @property string $overflow_wrap - * @property float|string $padding_top Length in pt or a percentage value - * @property float|string $padding_right Length in pt or a percentage value - * @property float|string $padding_bottom Length in pt or a percentage value - * @property float|string $padding_left Length in pt or a percentage value - * @property string $padding Only use for setting all sides to the same length - * @property string $page_break_after - * @property string $page_break_before - * @property string $page_break_inside - * @property string $pause_after - * @property string $pause_before - * @property string $pause - * @property string $pitch_range - * @property string $pitch - * @property string $play_during - * @property string $position - * @property string $quotes - * @property string $richness - * @property float|string $right Length in pt, a percentage value, or `auto` - * @property float[]|string $size Pair of `[width, height]` or `auto` - * @property string $speak_header - * @property string $speak_numeral - * @property string $speak_punctuation - * @property string $speak - * @property string $speech_rate - * @property string $src - * @property string $stress - * @property string $table_layout - * @property string $text_align - * @property string $text_decoration - * @property float|string $text_indent Length in pt or a percentage value - * @property string $text_transform - * @property float|string $top Length in pt, a percentage value, or `auto` - * @property array $transform List of transforms - * @property array $transform_origin - * @property string $unicode_bidi - * @property string $unicode_range - * @property string $vertical_align - * @property string $visibility - * @property string $voice_family - * @property string $volume - * @property string $white_space - * @property int $widows - * @property float|string $width Length in pt, a percentage value, or `auto` - * @property string $word_break - * @property float $word_spacing Length in pt - * @property int|string $z_index Integer value or `auto` - * @property string $_dompdf_keep - * - * @package dompdf - */ -class Style -{ - protected const CSS_IDENTIFIER = "-?[_a-zA-Z]+[_a-zA-Z0-9-]*"; - protected const CSS_INTEGER = "[+-]?\d+"; - protected const CSS_NUMBER = "[+-]?\d*\.?\d+(?:[eE][+-]?\d+)?"; - - /** - * Default font size, in points. - * - * @var float - */ - public static $default_font_size = 12; - - /** - * Default line height, as a fraction of the font size. - * - * @var float - */ - public static $default_line_height = 1.2; - - /** - * Default "absolute" font sizes relative to the default font-size - * https://www.w3.org/TR/css-fonts-3/#absolute-size-value - * - * @var array - */ - public static $font_size_keywords = [ - "xx-small" => 0.6, // 3/5 - "x-small" => 0.75, // 3/4 - "small" => 0.889, // 8/9 - "medium" => 1, // 1 - "large" => 1.2, // 6/5 - "x-large" => 1.5, // 3/2 - "xx-large" => 2.0, // 2/1 - ]; - - /** - * List of valid text-align keywords. - */ - public const TEXT_ALIGN_KEYWORDS = ["left", "right", "center", "justify"]; - - /** - * List of valid vertical-align keywords. - */ - public const VERTICAL_ALIGN_KEYWORDS = ["baseline", "bottom", "middle", - "sub", "super", "text-bottom", "text-top", "top"]; - - /** - * List of all block-level (outer) display types. - * * https://www.w3.org/TR/css-display-3/#display-type - * * https://www.w3.org/TR/css-display-3/#block-level - */ - public const BLOCK_LEVEL_TYPES = [ - "block", - // "flow-root", - "list-item", - // "flex", - // "grid", - "table" - ]; - - /** - * List of all inline-level (outer) display types. - * * https://www.w3.org/TR/css-display-3/#display-type - * * https://www.w3.org/TR/css-display-3/#inline-level - */ - public const INLINE_LEVEL_TYPES = [ - "inline", - "inline-block", - // "inline-flex", - // "inline-grid", - "inline-table" - ]; - - /** - * List of all table-internal (outer) display types. - * * https://www.w3.org/TR/css-display-3/#layout-specific-display - */ - public const TABLE_INTERNAL_TYPES = [ - "table-row-group", - "table-header-group", - "table-footer-group", - "table-row", - "table-cell", - "table-column-group", - "table-column", - "table-caption" - ]; - - /** - * List of all inline (inner) display types. - */ - public const INLINE_TYPES = ["inline"]; - - /** - * List of all block (inner) display types. - */ - public const BLOCK_TYPES = ["block", "inline-block", "table-cell", "list-item"]; - - /** - * List of all table (inner) display types. - */ - public const TABLE_TYPES = ["table", "inline-table"]; - - /** - * Lookup table for valid display types. Initially computed from the - * different constants. - * - * @var array - */ - protected static $valid_display_types = []; - - /** - * List of all positioned types. - */ - public const POSITIONED_TYPES = ["relative", "absolute", "fixed"]; - - /** - * List of valid border styles. - */ - public const BORDER_STYLES = [ - "none", "hidden", - "dotted", "dashed", "solid", - "double", "groove", "ridge", "inset", "outset" - ]; - - /** - * List of valid outline-style values. - * Same as the border styles, except `auto` is allowed, `hidden` is not. - * - * @link https://www.w3.org/TR/css-ui-4/#typedef-outline-line-style - */ - protected const OUTLINE_STYLES = [ - "auto", "none", - "dotted", "dashed", "solid", - "double", "groove", "ridge", "inset", "outset" - ]; - - /** - * Map of CSS shorthand properties and their corresponding sub-properties. - * The order of the sub-properties is relevant for the fallback getter, - * which is used in case no specific getter method is defined. - * - * @var array - */ - protected static $_props_shorthand = [ - "background" => [ - "background_image", - "background_position", - "background_size", - "background_repeat", - // "background_origin", - // "background_clip", - "background_attachment", - "background_color" - ], - "border" => [ - "border_top_width", - "border_right_width", - "border_bottom_width", - "border_left_width", - "border_top_style", - "border_right_style", - "border_bottom_style", - "border_left_style", - "border_top_color", - "border_right_color", - "border_bottom_color", - "border_left_color" - ], - "border_top" => [ - "border_top_width", - "border_top_style", - "border_top_color" - ], - "border_right" => [ - "border_right_width", - "border_right_style", - "border_right_color" - ], - "border_bottom" => [ - "border_bottom_width", - "border_bottom_style", - "border_bottom_color" - ], - "border_left" => [ - "border_left_width", - "border_left_style", - "border_left_color" - ], - "border_width" => [ - "border_top_width", - "border_right_width", - "border_bottom_width", - "border_left_width" - ], - "border_style" => [ - "border_top_style", - "border_right_style", - "border_bottom_style", - "border_left_style" - ], - "border_color" => [ - "border_top_color", - "border_right_color", - "border_bottom_color", - "border_left_color" - ], - "border_radius" => [ - "border_top_left_radius", - "border_top_right_radius", - "border_bottom_right_radius", - "border_bottom_left_radius" - ], - "font" => [ - "font_family", - "font_size", - // "font_stretch", - "font_style", - "font_variant", - "font_weight", - "line_height" - ], - "inset" => [ - "top", - "right", - "bottom", - "left" - ], - "list_style" => [ - "list_style_image", - "list_style_position", - "list_style_type" - ], - "margin" => [ - "margin_top", - "margin_right", - "margin_bottom", - "margin_left" - ], - "padding" => [ - "padding_top", - "padding_right", - "padding_bottom", - "padding_left" - ], - "outline" => [ - "outline_width", - "outline_style", - "outline_color" - ] - ]; - - /** - * Maps legacy property names to actual property names. - * - * @var array - */ - protected static $_props_alias = [ - "word_wrap" => "overflow_wrap", - "_dompdf_background_image_resolution" => "background_image_resolution", - "_dompdf_image_resolution" => "image_resolution", - "_webkit_transform" => "transform", - "_webkit_transform_origin" => "transform_origin" - ]; - - /** - * Default style values. - * - * @link https://www.w3.org/TR/CSS21/propidx.html - * - * @var array - */ - protected static $_defaults = null; - - /** - * List of inherited properties - * - * @link https://www.w3.org/TR/CSS21/propidx.html - * - * @var array - */ - protected static $_inherited = null; - - /** - * Caches method_exists result - * - * @var array - */ - protected static $_methods_cache = []; - - /** - * The stylesheet this style belongs to - * - * @var Stylesheet - */ - protected $_stylesheet; - - /** - * Media queries attached to the style - * - * @var array - */ - protected $_media_queries; - - /** - * Properties set by an `!important` declaration. - * - * @var array - */ - protected $_important_props = []; - - /** - * Specified (or declared) values of the CSS properties. - * - * https://www.w3.org/TR/css-cascade-3/#value-stages - * - * @var array - */ - protected $_props = []; - - /** - * Computed values of the CSS properties. - * - * @var array - */ - protected $_props_computed = []; - - /** - * Used values of the CSS properties. - * - * @var array - */ - protected $_props_used = []; - - /** - * Marks properties with non-final used values that should be cleared on - * style reset. - * - * @var array - */ - protected $non_final_used = []; - - protected static $_dependency_map = [ - "border_top_style" => [ - "border_top_width" - ], - "border_bottom_style" => [ - "border_bottom_width" - ], - "border_left_style" => [ - "border_left_width" - ], - "border_right_style" => [ - "border_right_width" - ], - "direction" => [ - "text_align" - ], - "font_size" => [ - "background_position", - "background_size", - "border_top_width", - "border_right_width", - "border_bottom_width", - "border_left_width", - "border_top_left_radius", - "border_top_right_radius", - "border_bottom_right_radius", - "border_bottom_left_radius", - "letter_spacing", - "line_height", - "margin_top", - "margin_right", - "margin_bottom", - "margin_left", - "outline_width", - "outline_offset", - "padding_top", - "padding_right", - "padding_bottom", - "padding_left", - "word_spacing", - "width", - "height", - "min-width", - "min-height", - "max-width", - "max-height" - ], - "float" => [ - "display" - ], - "position" => [ - "display" - ], - "outline_style" => [ - "outline_width" - ] - ]; - - /** - * Lookup table for dependent properties. Initially computed from the - * dependency map. - * - * @var array - */ - protected static $_dependent_props = []; - - /** - * Style of the parent element in document tree. - * - * @var Style - */ - protected $parent_style; - - /** - * @var Frame|null - */ - protected $_frame; - - /** - * The origin of the style - * - * @var int - */ - protected $_origin = Stylesheet::ORIG_AUTHOR; - - /** - * The computed bottom spacing - * - * @var float|string|null - */ - private $_computed_bottom_spacing = null; - - /** - * @var bool|null - */ - private $has_border_radius_cache = null; - - /** - * @var array|null - */ - private $resolved_border_radius = null; - - /** - * @var FontMetrics - */ - private $fontMetrics; - - /** - * @param Stylesheet $stylesheet The stylesheet the style is associated with. - * @param int $origin - */ - public function __construct(Stylesheet $stylesheet, int $origin = Stylesheet::ORIG_AUTHOR) - { - $this->fontMetrics = $stylesheet->getFontMetrics(); - - $this->_stylesheet = $stylesheet; - $this->_media_queries = []; - $this->_origin = $origin; - $this->parent_style = null; - - if (!isset(self::$_defaults)) { - - // Shorthand - $d =& self::$_defaults; - - // All CSS 2.1 properties, and their default values - // Some properties are specified with their computed value for - // efficiency; this only works if the computed value is not - // dependent on another property - $d["azimuth"] = "center"; - $d["background_attachment"] = "scroll"; - $d["background_color"] = "transparent"; - $d["background_image"] = "none"; - $d["background_image_resolution"] = "normal"; - $d["background_position"] = ["0%", "0%"]; - $d["background_repeat"] = "repeat"; - $d["background"] = ""; - $d["border_collapse"] = "separate"; - $d["border_color"] = ""; - $d["border_spacing"] = [0.0, 0.0]; - $d["border_style"] = ""; - $d["border_top"] = ""; - $d["border_right"] = ""; - $d["border_bottom"] = ""; - $d["border_left"] = ""; - $d["border_top_color"] = "currentcolor"; - $d["border_right_color"] = "currentcolor"; - $d["border_bottom_color"] = "currentcolor"; - $d["border_left_color"] = "currentcolor"; - $d["border_top_style"] = "none"; - $d["border_right_style"] = "none"; - $d["border_bottom_style"] = "none"; - $d["border_left_style"] = "none"; - $d["border_top_width"] = "medium"; - $d["border_right_width"] = "medium"; - $d["border_bottom_width"] = "medium"; - $d["border_left_width"] = "medium"; - $d["border_width"] = ""; - $d["border_bottom_left_radius"] = 0.0; - $d["border_bottom_right_radius"] = 0.0; - $d["border_top_left_radius"] = 0.0; - $d["border_top_right_radius"] = 0.0; - $d["border_radius"] = ""; - $d["border"] = ""; - $d["bottom"] = "auto"; - $d["caption_side"] = "top"; - $d["clear"] = "none"; - $d["clip"] = "auto"; - $d["color"] = "#000000"; - $d["content"] = "normal"; - $d["counter_increment"] = "none"; - $d["counter_reset"] = "none"; - $d["cue_after"] = "none"; - $d["cue_before"] = "none"; - $d["cue"] = ""; - $d["cursor"] = "auto"; - $d["direction"] = "ltr"; - $d["display"] = "inline"; - $d["elevation"] = "level"; - $d["empty_cells"] = "show"; - $d["float"] = "none"; - $d["font_family"] = $stylesheet->get_dompdf()->getOptions()->getDefaultFont(); - $d["font_size"] = "medium"; - $d["font_style"] = "normal"; - $d["font_variant"] = "normal"; - $d["font_weight"] = "normal"; - $d["font"] = ""; - $d["height"] = "auto"; - $d["image_resolution"] = "normal"; - $d["inset"] = ""; - $d["left"] = "auto"; - $d["letter_spacing"] = "normal"; - $d["line_height"] = "normal"; - $d["list_style_image"] = "none"; - $d["list_style_position"] = "outside"; - $d["list_style_type"] = "disc"; - $d["list_style"] = ""; - $d["margin_right"] = 0.0; - $d["margin_left"] = 0.0; - $d["margin_top"] = 0.0; - $d["margin_bottom"] = 0.0; - $d["margin"] = ""; - $d["max_height"] = "none"; - $d["max_width"] = "none"; - $d["min_height"] = "auto"; - $d["min_width"] = "auto"; - $d["orphans"] = 2; - $d["outline_color"] = "currentcolor"; // "invert" special color is not supported - $d["outline_style"] = "none"; - $d["outline_width"] = "medium"; - $d["outline_offset"] = 0.0; - $d["outline"] = ""; - $d["overflow"] = "visible"; - $d["overflow_wrap"] = "normal"; - $d["padding_top"] = 0.0; - $d["padding_right"] = 0.0; - $d["padding_bottom"] = 0.0; - $d["padding_left"] = 0.0; - $d["padding"] = ""; - $d["page_break_after"] = "auto"; - $d["page_break_before"] = "auto"; - $d["page_break_inside"] = "auto"; - $d["pause_after"] = "0"; - $d["pause_before"] = "0"; - $d["pause"] = ""; - $d["pitch_range"] = "50"; - $d["pitch"] = "medium"; - $d["play_during"] = "auto"; - $d["position"] = "static"; - $d["quotes"] = "auto"; - $d["richness"] = "50"; - $d["right"] = "auto"; - $d["size"] = "auto"; // @page - $d["speak_header"] = "once"; - $d["speak_numeral"] = "continuous"; - $d["speak_punctuation"] = "none"; - $d["speak"] = "normal"; - $d["speech_rate"] = "medium"; - $d["stress"] = "50"; - $d["table_layout"] = "auto"; - $d["text_align"] = ""; - $d["text_decoration"] = "none"; - $d["text_indent"] = 0.0; - $d["text_transform"] = "none"; - $d["top"] = "auto"; - $d["unicode_bidi"] = "normal"; - $d["vertical_align"] = "baseline"; - $d["visibility"] = "visible"; - $d["voice_family"] = ""; - $d["volume"] = "medium"; - $d["white_space"] = "normal"; - $d["widows"] = 2; - $d["width"] = "auto"; - $d["word_break"] = "normal"; - $d["word_spacing"] = "normal"; - $d["z_index"] = "auto"; - - // CSS3 - $d["opacity"] = 1.0; - $d["background_size"] = ["auto", "auto"]; - $d["transform"] = "none"; - $d["transform_origin"] = "50% 50%"; - - // for @font-face - $d["src"] = ""; - $d["unicode_range"] = ""; - - // vendor-prefixed properties - $d["_dompdf_keep"] = ""; - - // Properties that inherit by default - self::$_inherited = [ - "azimuth", - "background_image_resolution", - "border_collapse", - "border_spacing", - "caption_side", - "color", - "cursor", - "direction", - "elevation", - "empty_cells", - "font_family", - "font_size", - "font_style", - "font_variant", - "font_weight", - "font", - "image_resolution", - "letter_spacing", - "line_height", - "list_style_image", - "list_style_position", - "list_style_type", - "list_style", - "orphans", - "overflow_wrap", - "pitch_range", - "pitch", - "quotes", - "richness", - "speak_header", - "speak_numeral", - "speak_punctuation", - "speak", - "speech_rate", - "stress", - "text_align", - "text_indent", - "text_transform", - "visibility", - "voice_family", - "volume", - "white_space", - "widows", - "word_break", - "word_spacing", - ]; - - // Compute dependent props from dependency map - foreach (self::$_dependency_map as $props) { - foreach ($props as $prop) { - self::$_dependent_props[$prop] = true; - } - } - - // Compute valid display-type lookup table - self::$valid_display_types = [ - "none" => true, - "-dompdf-br" => true, - "-dompdf-image" => true, - "-dompdf-list-bullet" => true, - "-dompdf-page" => true - ]; - foreach (self::BLOCK_LEVEL_TYPES as $val) { - self::$valid_display_types[$val] = true; - } - foreach (self::INLINE_LEVEL_TYPES as $val) { - self::$valid_display_types[$val] = true; - } - foreach (self::TABLE_INTERNAL_TYPES as $val) { - self::$valid_display_types[$val] = true; - } - } - } - - /** - * Clear all non-final used values. - * - * @return void - */ - public function reset(): void - { - foreach (array_keys($this->non_final_used) as $prop) { - unset($this->_props_used[$prop]); - } - - $this->non_final_used = []; - } - - /** - * @param array $media_queries - */ - public function set_media_queries(array $media_queries): void - { - $this->_media_queries = $media_queries; - } - - /** - * @return array - */ - public function get_media_queries(): array - { - return $this->_media_queries; - } - - /** - * @param Frame $frame - */ - public function set_frame(Frame $frame): void - { - $this->_frame = $frame; - } - - /** - * @return Frame|null - */ - public function get_frame(): ?Frame - { - return $this->_frame; - } - - /** - * @param int $origin - */ - public function set_origin(int $origin): void - { - $this->_origin = $origin; - } - - /** - * @return int - */ - public function get_origin(): int - { - return $this->_origin; - } - - /** - * Returns the {@link Stylesheet} the style is associated with. - * - * @return Stylesheet - */ - public function get_stylesheet(): Stylesheet - { - return $this->_stylesheet; - } - - public function is_absolute(): bool - { - $position = $this->__get("position"); - return $position === "absolute" || $position === "fixed"; - } - - public function is_in_flow(): bool - { - $float = $this->__get("float"); - return $float === "none" && !$this->is_absolute(); - } - - /** - * Converts any CSS length value into an absolute length in points. - * - * length_in_pt() takes a single length (e.g. '1em') or an array of - * lengths and returns an absolute length. If an array is passed, then - * the return value is the sum of all elements. If any of the lengths - * provided are "auto" or "none" then that value is returned. - * - * If a reference size is not provided, the current font size is used. - * - * @param float|string|array $length The numeric length (or string measurement) or array of lengths to resolve. - * @param float|null $ref_size An absolute reference size to resolve percentage lengths. - * - * @return float|string - */ - public function length_in_pt($length, ?float $ref_size = null) - { - $font_size = $this->__get("font_size"); - $ref_size = $ref_size ?? $font_size; - - if (!\is_array($length)) { - $length = [$length]; - } - - $ret = 0.0; - - foreach ($length as $l) { - if ($l === "auto" || $l === "none") { - return $l; - } - - // Assume numeric values are already in points - if (is_numeric($l)) { - $ret += (float) $l; - continue; - } - - $val = $this->single_length_in_pt((string) $l, $ref_size, $font_size); - $ret += $val ?? 0; - } - - return $ret; - } - - /** - * Convert a length declaration to pt. - * - * @param string $l The length declaration. - * @param float $ref_size Reference size for percentage declarations. - * @param float|null $font_size Font size for resolving font-size relative units. - * - * @return float|null The length in pt, or `null` for invalid declarations. - */ - protected function single_length_in_pt(string $l, float $ref_size = 0, ?float $font_size = null): ?float - { - static $cache = []; - - $font_size = $font_size ?? $this->__get("font_size"); - - $key = "$l/$ref_size/$font_size"; - - if (\array_key_exists($key, $cache)) { - return $cache[$key]; - } - - $number = self::CSS_NUMBER; - $pattern = "/^($number)(.*)?$/"; - - if (!preg_match($pattern, $l, $matches)) { - return null; - } - - $v = (float) $matches[1]; - $unit = mb_strtolower($matches[2]); - - if ($unit === "") { - // Legacy support for unitless values, not covered by spec. Might - // want to restrict this to unitless `0` in the future - $value = $v; - } - - elseif ($unit === "%") { - $value = $v / 100 * $ref_size; - } - - elseif ($unit === "px") { - $dpi = $this->_stylesheet->get_dompdf()->getOptions()->getDpi(); - $value = ($v * 72) / $dpi; - } - - elseif ($unit === "pt") { - $value = $v; - } - - elseif ($unit === "rem") { - $tree = $this->_stylesheet->get_dompdf()->getTree(); - $root_style = $tree !== null ? $tree->get_root()->get_style() : null; - $root_font_size = $root_style === null || $root_style === $this - ? $font_size - : $root_style->__get("font_size"); - $value = $v * $root_font_size; - - // Skip caching if the root style is not available yet, as to avoid - // incorrectly cached values if the root font size is different from - // the default - if ($root_style === null) { - return $value; - } - } - - elseif ($unit === "em") { - $value = $v * $font_size; - } - - elseif ($unit === "cm") { - $value = $v * 72 / 2.54; - } - - elseif ($unit === "mm") { - $value = $v * 72 / 25.4; - } - - elseif ($unit === "ex") { - // FIXME: em:ex ratio? - $value = $v * $font_size / 2; - } - - elseif ($unit === "in") { - $value = $v * 72; - } - - elseif ($unit === "pc") { - $value = $v * 12; - } - - else { - // Invalid or unsupported declaration - $value = null; - } - - return $cache[$key] = $value; - } - - /** - * Resolve inherited property values using the provided parent style or the - * default values, in case no parent style exists. - * - * https://www.w3.org/TR/css-cascade-3/#inheriting - * - * @param Style|null $parent - */ - public function inherit(?Style $parent = null): void - { - $this->parent_style = $parent; - - // Clear the computed font size, as it might depend on the parent - // font size - unset($this->_props_computed["font_size"]); - unset($this->_props_used["font_size"]); - - if ($parent) { - foreach (self::$_inherited as $prop) { - // For properties that inherit by default: When the cascade did - // not result in a value, inherit the parent value. Inheritance - // is handled via the specific sub-properties for shorthands - if (isset($this->_props[$prop]) || isset(self::$_props_shorthand[$prop])) { - continue; - } - - if (isset($parent->_props[$prop])) { - $parent_val = $parent->computed($prop); - - $this->_props[$prop] = $parent_val; - $this->_props_computed[$prop] = $parent_val; - $this->_props_used[$prop] = null; - } - } - } - - foreach ($this->_props as $prop => $val) { - if ($val === "inherit") { - if ($parent && isset($parent->_props[$prop])) { - $parent_val = $parent->computed($prop); - - $this->_props[$prop] = $parent_val; - $this->_props_computed[$prop] = $parent_val; - $this->_props_used[$prop] = null; - } else { - // Parent prop not set, use default - $this->_props[$prop] = self::$_defaults[$prop]; - unset($this->_props_computed[$prop]); - unset($this->_props_used[$prop]); - } - } - } - } - - /** - * Override properties in this style with those in $style - * - * @param Style $style - */ - public function merge(Style $style): void - { - foreach ($style->_props as $prop => $val) { - $important = isset($style->_important_props[$prop]); - - // `!important` declarations take precedence over normal ones - if (!$important && isset($this->_important_props[$prop])) { - continue; - } - - if ($important) { - $this->_important_props[$prop] = true; - } - - $this->_props[$prop] = $val; - - // Copy an existing computed value only for non-dependent - // properties; otherwise it may be invalid for the current style - if (!isset(self::$_dependent_props[$prop]) - && \array_key_exists($prop, $style->_props_computed) - ) { - $this->_props_computed[$prop] = $style->_props_computed[$prop]; - $this->_props_used[$prop] = null; - } else { - unset($this->_props_computed[$prop]); - unset($this->_props_used[$prop]); - } - } - } - - /** - * Clear information about important declarations after the style has been - * finalized during stylesheet loading. - */ - public function clear_important(): void - { - $this->_important_props = []; - } - - /** - * Clear border-radius and bottom-spacing cache as necessary when a given - * property is set. - * - * @param string $prop The property that is set. - */ - protected function clear_cache(string $prop): void - { - // Clear border-radius cache on setting any border-radius - // property - if ($prop === "border_top_left_radius" - || $prop === "border_top_right_radius" - || $prop === "border_bottom_left_radius" - || $prop === "border_bottom_right_radius" - ) { - $this->has_border_radius_cache = null; - $this->resolved_border_radius = null; - } - - // Clear bottom-spacing cache if necessary. Border style can - // disable/enable border calculations - if ($prop === "margin_bottom" - || $prop === "padding_bottom" - || $prop === "border_bottom_width" - || $prop === "border_bottom_style" - ) { - $this->_computed_bottom_spacing = null; - } - } - - /** - * Set a style property from a value declaration. - * - * Setting `$clear_dependencies` to `false` is useful for saving a bit of - * unnecessary work while loading stylesheets. - * - * @param string $prop The property to set. - * @param mixed $val The value declaration or computed value. - * @param bool $important Whether the declaration is important. - * @param bool $clear_dependencies Whether to clear computed values of dependent properties. - */ - public function set_prop(string $prop, $val, bool $important = false, bool $clear_dependencies = true): void - { - $prop = str_replace("-", "_", $prop); - - // Legacy property aliases - if (isset(self::$_props_alias[$prop])) { - $prop = self::$_props_alias[$prop]; - } - - if (!isset(self::$_defaults[$prop])) { - global $_dompdf_warnings; - $_dompdf_warnings[] = "'$prop' is not a recognized CSS property."; - return; - } - - if ($prop !== "content" && \is_string($val) && mb_strpos($val, "url") === false && mb_strlen($val) > 1) { - $val = mb_strtolower(trim(str_replace(["\n", "\t"], [" "], $val))); - } - - if (isset(self::$_props_shorthand[$prop])) { - // Shorthand properties directly set their respective sub-properties - // https://www.w3.org/TR/css-cascade-3/#shorthand - if ($val === "initial" || $val === "inherit" || $val === "unset") { - foreach (self::$_props_shorthand[$prop] as $sub_prop) { - $this->set_prop($sub_prop, $val, $important, $clear_dependencies); - } - } else { - $method = "_set_$prop"; - - if (!isset(self::$_methods_cache[$method])) { - self::$_methods_cache[$method] = method_exists($this, $method); - } - - if (self::$_methods_cache[$method]) { - $values = $this->$method($val); - - if ($values === []) { - return; - } - - // Each missing sub-property is assigned its initial value - // https://www.w3.org/TR/css-cascade-3/#shorthand - foreach (self::$_props_shorthand[$prop] as $sub_prop) { - $sub_val = $values[$sub_prop] ?? self::$_defaults[$sub_prop]; - $this->set_prop($sub_prop, $sub_val, $important, $clear_dependencies); - } - } - } - } else { - // Legacy support for `word-break: break-word` - // https://www.w3.org/TR/css-text-3/#valdef-word-break-break-word - if ($prop === "word_break" && $val === "break-word") { - $val = "normal"; - $this->set_prop("overflow_wrap", "anywhere", $important, $clear_dependencies); - } - - // `!important` declarations take precedence over normal ones - if (!$important && isset($this->_important_props[$prop])) { - return; - } - - if ($important) { - $this->_important_props[$prop] = true; - } - - // https://www.w3.org/TR/css-cascade-3/#inherit-initial - if ($val === "unset") { - $val = \in_array($prop, self::$_inherited, true) - ? "inherit" - : "initial"; - } - - // https://www.w3.org/TR/css-cascade-3/#valdef-all-initial - if ($val === "initial") { - $val = self::$_defaults[$prop]; - } - - $computed = $this->compute_prop($prop, $val); - - // Skip invalid declarations - if ($computed === null) { - return; - } - - $this->_props[$prop] = $val; - $this->_props_computed[$prop] = $computed; - $this->_props_used[$prop] = null; - - if ($clear_dependencies) { - // Clear the computed values of any dependent properties, so - // they can be re-computed - if (isset(self::$_dependency_map[$prop])) { - foreach (self::$_dependency_map[$prop] as $dependent) { - unset($this->_props_computed[$dependent]); - unset($this->_props_used[$dependent]); - } - } - - $this->clear_cache($prop); - } - } - } - - /** - * Get the specified value of a style property. - * - * @param string $prop - * - * @return mixed - * @throws Exception - */ - public function get_specified(string $prop) - { - // Legacy property aliases - if (isset(self::$_props_alias[$prop])) { - $prop = self::$_props_alias[$prop]; - } - - if (!isset(self::$_defaults[$prop])) { - throw new Exception("'$prop' is not a recognized CSS property."); - } - - return $this->_props[$prop] ?? self::$_defaults[$prop]; - } - - /** - * Set a style property to its final value. - * - * This sets the specified and used value of the style property to the given - * value, meaning the value is not parsed and thus should have a type - * compatible with the property. - * - * If a shorthand property is specified, all of its sub-properties are set - * to the given value. - * - * @param string $prop The property to set. - * @param mixed $val The final value of the property. - * - * @throws Exception - */ - public function __set(string $prop, $val) - { - // Legacy property aliases - if (isset(self::$_props_alias[$prop])) { - $prop = self::$_props_alias[$prop]; - } - - if (!isset(self::$_defaults[$prop])) { - throw new Exception("'$prop' is not a recognized CSS property."); - } - - if (isset(self::$_props_shorthand[$prop])) { - foreach (self::$_props_shorthand[$prop] as $sub_prop) { - $this->__set($sub_prop, $val); - } - } else { - $this->_props[$prop] = $val; - $this->_props_computed[$prop] = $val; - $this->_props_used[$prop] = $val; - - $this->clear_cache($prop); - } - } - - /** - * Set the used value of a style property. - * - * Used values are cleared on style reset. - * - * If a shorthand property is specified, all of its sub-properties are set - * to the given value. - * - * @param string $prop The property to set. - * @param mixed $val The used value of the property. - * - * @throws Exception - */ - public function set_used(string $prop, $val): void - { - // Legacy property aliases - if (isset(self::$_props_alias[$prop])) { - $prop = self::$_props_alias[$prop]; - } - - if (!isset(self::$_defaults[$prop])) { - throw new Exception("'$prop' is not a recognized CSS property."); - } - - if (isset(self::$_props_shorthand[$prop])) { - foreach (self::$_props_shorthand[$prop] as $sub_prop) { - $this->set_used($sub_prop, $val); - } - } else { - $this->_props_used[$prop] = $val; - $this->non_final_used[$prop] = true; - } - } - - /** - * Get the used or computed value of a style property, depending on whether - * the used value has been determined yet. - * - * @param string $prop - * - * @return mixed - * @throws Exception - */ - public function __get(string $prop) - { - // Legacy property aliases - if (isset(self::$_props_alias[$prop])) { - $prop = self::$_props_alias[$prop]; - } - - if (!isset(self::$_defaults[$prop])) { - throw new Exception("'$prop' is not a recognized CSS property."); - } - - if (isset($this->_props_used[$prop])) { - return $this->_props_used[$prop]; - } - - $method = "_get_$prop"; - - if (!isset(self::$_methods_cache[$method])) { - self::$_methods_cache[$method] = method_exists($this, $method); - } - - if (isset(self::$_props_shorthand[$prop])) { - // Don't cache shorthand values, always use getter. If no dedicated - // getter exists, use a simple fallback getter concatenating all - // sub-property values - if (self::$_methods_cache[$method]) { - return $this->$method(); - } else { - return implode(" ", array_map(function ($sub_prop) { - $val = $this->__get($sub_prop); - return \is_array($val) ? implode(" ", $val) : $val; - }, self::$_props_shorthand[$prop])); - } - } else { - $computed = $this->computed($prop); - $used = self::$_methods_cache[$method] - ? $this->$method($computed) - : $computed; - - $this->_props_used[$prop] = $used; - return $used; - } - } - - /** - * @param string $prop The property to compute. - * @param mixed $val The value to compute. Non-string values are treated as already computed. - * - * @return mixed The computed value. - */ - protected function compute_prop(string $prop, $val) - { - // During style merge, the parent style is not available yet, so - // temporarily use the initial value for `inherit` properties. The - // keyword is properly resolved during inheritance - if ($val === "inherit") { - $val = self::$_defaults[$prop]; - } - - // Check for values which are already computed - if (!\is_string($val)) { - return $val; - } - - $method = "_compute_$prop"; - - if (!isset(self::$_methods_cache[$method])) { - self::$_methods_cache[$method] = method_exists($this, $method); - } - - if (self::$_methods_cache[$method]) { - return $this->$method($val); - } elseif ($val !== "") { - return $val; - } else { - return null; - } - } - - /** - * Get the computed value for the given property. - * - * @param string $prop The property to get the computed value of. - * - * @return mixed The computed value. - */ - protected function computed(string $prop) - { - if (!\array_key_exists($prop, $this->_props_computed)) { - $val = $this->_props[$prop] ?? self::$_defaults[$prop]; - $computed = $this->compute_prop($prop, $val); - - $this->_props_computed[$prop] = $computed; - } - - return $this->_props_computed[$prop]; - } - - /** - * @param float $cbw The width of the containing block. - * @return float|string|null - */ - public function computed_bottom_spacing(float $cbw) - { - // Caching the bottom spacing independently of the given width is a bit - // iffy, but should be okay, as the containing block should only - // potentially change after a page break, and the style is reset in that - // case - if ($this->_computed_bottom_spacing !== null) { - return $this->_computed_bottom_spacing; - } - return $this->_computed_bottom_spacing = $this->length_in_pt( - [ - $this->margin_bottom, - $this->padding_bottom, - $this->border_bottom_width - ], - $cbw - ); - } - - /** - * Returns an `array(r, g, b, "r" => r, "g" => g, "b" => b, "alpha" => alpha, "hex" => "#rrggbb")` - * based on the provided CSS color value. - * - * @param string|null $color - * @return array|string|null - */ - public function munge_color($color) - { - return Color::parse($color); - } - - /** - * @return string - */ - public function get_font_family_raw(): string - { - return trim($this->_props["font_family"], " \t\n\r\x0B\"'"); - } - - /** - * Getter for the `font-family` CSS property. - * - * Uses the {@link FontMetrics} class to resolve the font family into an - * actual font file. - * - * @param string $computed - * @return string - * @throws Exception - * - * @link https://www.w3.org/TR/CSS21/fonts.html#propdef-font-family - */ - protected function _get_font_family($computed): string - { - //TODO: we should be using the calculated prop rather than perform the entire family parsing operation again - - $fontMetrics = $this->getFontMetrics(); - $DEBUGCSS = $this->_stylesheet->get_dompdf()->getOptions()->getDebugCss(); - - // Select the appropriate font. First determine the subtype, then check - // the specified font-families for a candidate. - - // Resolve font-weight - $weight = $this->__get("font_weight"); - if ($weight === 'bold') { - $weight = 700; - } elseif (preg_match('/^[0-9]+$/', $weight, $match)) { - $weight = (int)$match[0]; - } else { - $weight = 400; - } - - // Resolve font-style - $font_style = $this->__get("font_style"); - $subtype = $fontMetrics->getType($weight . ' ' . $font_style); - - $families = preg_split("/\s*,\s*/", $computed); - - $font = null; - foreach ($families as $family) { - //remove leading and trailing string delimiters, e.g. on font names with spaces; - //remove leading and trailing whitespace - $family = trim($family, " \t\n\r\x0B\"'"); - if ($DEBUGCSS) { - print '(' . $family . ')'; - } - $font = $fontMetrics->getFont($family, $subtype); - - if ($font) { - if ($DEBUGCSS) { - print "
    [get_font_family:";
    -                    print '(' . $computed . '.' . $font_style . '.' . $weight . '.' . $subtype . ')';
    -                    print '(' . $font . ")get_font_family]\n
    "; - } - return $font; - } - } - - $family = null; - if ($DEBUGCSS) { - print '(default)'; - } - $font = $fontMetrics->getFont($family, $subtype); - - if ($font) { - if ($DEBUGCSS) { - print '(' . $font . ")get_font_family]\n"; - } - return $font; - } - - throw new Exception("Unable to find a suitable font replacement for: '" . $computed . "'"); - } - - /** - * @param float|string $computed - * @return float - * - * @link https://www.w3.org/TR/css-text-4/#word-spacing-property - */ - protected function _get_word_spacing($computed) - { - if (\is_float($computed)) { - return $computed; - } - - // Resolve percentage values - $font_size = $this->__get("font_size"); - return $this->single_length_in_pt($computed, $font_size); - } - - /** - * @param float|string $computed - * @return float - * - * @link https://www.w3.org/TR/css-text-4/#letter-spacing-property - */ - protected function _get_letter_spacing($computed) - { - if (\is_float($computed)) { - return $computed; - } - - // Resolve percentage values - $font_size = $this->__get("font_size"); - return $this->single_length_in_pt($computed, $font_size); - } - - /** - * @param float|string $computed - * @return float - * - * @link https://www.w3.org/TR/CSS21/visudet.html#propdef-line-height - */ - protected function _get_line_height($computed) - { - // Lengths have been computed to float, number values to string - if (\is_float($computed)) { - return $computed; - } - - $font_size = $this->__get("font_size"); - $factor = $computed === "normal" - ? self::$default_line_height - : (float) $computed; - - return $factor * $font_size; - } - - /** - * @param string $computed - * @param bool $current_is_parent - * - * @return array|string - */ - protected function get_color_value($computed, bool $current_is_parent = false) - { - if ($computed === "currentcolor") { - // https://www.w3.org/TR/css-color-4/#resolving-other-colors - if ($current_is_parent) { - // Use the `color` value from the parent for the `color` - // property itself - return isset($this->parent_style) - ? $this->parent_style->__get("color") - : $this->munge_color(self::$_defaults["color"]); - } - - return $this->__get("color"); - } - - return $this->munge_color($computed) ?? "transparent"; - } - - /** - * Returns the color as an array - * - * The array has the following format: - * `array(r, g, b, "r" => r, "g" => g, "b" => b, "alpha" => alpha, "hex" => "#rrggbb")` - * - * @param string $computed - * @return array|string - * - * @link https://www.w3.org/TR/CSS21/colors.html#propdef-color - */ - protected function _get_color($computed) - { - return $this->get_color_value($computed, true); - } - - /** - * Returns the background color as an array - * - * See {@link Style::_get_color()} for format of the color array. - * - * @param string $computed - * @return array|string - * - * @link https://www.w3.org/TR/CSS21/colors.html#propdef-background-color - */ - protected function _get_background_color($computed) - { - return $this->get_color_value($computed); - } - - /** - * Returns the background image URI, or "none" - * - * @param string $computed - * @return string - * - * @link https://www.w3.org/TR/CSS21/colors.html#propdef-background-image - */ - protected function _get_background_image($computed): string - { - return $this->_stylesheet->resolve_url($computed); - } - - /** - * Returns the border color as an array - * - * See {@link Style::_get_color()} for format of the color array. - * - * @param string $computed - * @return array|string - * - * @link https://www.w3.org/TR/CSS21/box.html#border-color-properties - */ - protected function _get_border_top_color($computed) - { - return $this->get_color_value($computed); - } - - /** - * @param string $computed - * @return array|string - */ - protected function _get_border_right_color($computed) - { - return $this->get_color_value($computed); - } - - /** - * @param string $computed - * @return array|string - */ - protected function _get_border_bottom_color($computed) - { - return $this->get_color_value($computed); - } - - /** - * @param string $computed - * @return array|string - */ - protected function _get_border_left_color($computed) - { - return $this->get_color_value($computed); - } - - /** - * Return an array of all border properties. - * - * The returned array has the following structure: - * - * ``` - * array("top" => array("width" => [border-width], - * "style" => [border-style], - * "color" => [border-color (array)]), - * "bottom" ... ) - * ``` - * - * @return array - */ - public function get_border_properties(): array - { - return [ - "top" => [ - "width" => $this->__get("border_top_width"), - "style" => $this->__get("border_top_style"), - "color" => $this->__get("border_top_color"), - ], - "bottom" => [ - "width" => $this->__get("border_bottom_width"), - "style" => $this->__get("border_bottom_style"), - "color" => $this->__get("border_bottom_color"), - ], - "right" => [ - "width" => $this->__get("border_right_width"), - "style" => $this->__get("border_right_style"), - "color" => $this->__get("border_right_color"), - ], - "left" => [ - "width" => $this->__get("border_left_width"), - "style" => $this->__get("border_left_style"), - "color" => $this->__get("border_left_color"), - ], - ]; - } - - /** - * Return a single border-side property - * - * @param string $side - * @return string - */ - protected function get_border_side(string $side): string - { - $color = $this->__get("border_{$side}_color"); - - return $this->__get("border_{$side}_width") . " " . - $this->__get("border_{$side}_style") . " " . - (\is_array($color) ? $color["hex"] : $color); - } - - /** - * Return full border properties as a string - * - * Border properties are returned just as specified in CSS: - * `[width] [style] [color]` - * e.g. "1px solid blue" - * - * @return string - * - * @link https://www.w3.org/TR/CSS21/box.html#border-shorthand-properties - */ - protected function _get_border_top(): string - { - return $this->get_border_side("top"); - } - - /** - * @return string - */ - protected function _get_border_right(): string - { - return $this->get_border_side("right"); - } - - /** - * @return string - */ - protected function _get_border_bottom(): string - { - return $this->get_border_side("bottom"); - } - - /** - * @return string - */ - protected function _get_border_left(): string - { - return $this->get_border_side("left"); - } - - public function has_border_radius(): bool - { - if (isset($this->has_border_radius_cache)) { - return $this->has_border_radius_cache; - } - - // Use a fixed ref size here. We don't know the border-box width here - // and font size might be 0. Since we are only interested in whether - // there is any border radius at all, this should do - $tl = (float) $this->length_in_pt($this->border_top_left_radius, 12); - $tr = (float) $this->length_in_pt($this->border_top_right_radius, 12); - $br = (float) $this->length_in_pt($this->border_bottom_right_radius, 12); - $bl = (float) $this->length_in_pt($this->border_bottom_left_radius, 12); - - $this->has_border_radius_cache = $tl + $tr + $br + $bl > 0; - return $this->has_border_radius_cache; - } - - /** - * Get the final border-radius values to use. - * - * Percentage values are resolved relative to the width of the border box. - * The border radius is additionally scaled for the given render box, and - * constrained by its width and height. - * - * @param float[] $border_box The border box of the frame. - * @param float[]|null $render_box The box to resolve the border radius for. - * - * @return float[] A 4-tuple of top-left, top-right, bottom-right, and bottom-left radius. - */ - public function resolve_border_radius( - array $border_box, - ?array $render_box = null - ): array { - $render_box = $render_box ?? $border_box; - $use_cache = $render_box === $border_box; - - if ($use_cache && isset($this->resolved_border_radius)) { - return $this->resolved_border_radius; - } - - [$x, $y, $w, $h] = $border_box; - - // Resolve percentages relative to width, as long as we have no support - // for per-axis radii - $tl = (float) $this->length_in_pt($this->border_top_left_radius, $w); - $tr = (float) $this->length_in_pt($this->border_top_right_radius, $w); - $br = (float) $this->length_in_pt($this->border_bottom_right_radius, $w); - $bl = (float) $this->length_in_pt($this->border_bottom_left_radius, $w); - - if ($tl + $tr + $br + $bl > 0) { - [$rx, $ry, $rw, $rh] = $render_box; - - $t_offset = $y - $ry; - $r_offset = $rx + $rw - $x - $w; - $b_offset = $ry + $rh - $y - $h; - $l_offset = $x - $rx; - - if ($tl > 0) { - $tl = max($tl + ($t_offset + $l_offset) / 2, 0); - } - if ($tr > 0) { - $tr = max($tr + ($t_offset + $r_offset) / 2, 0); - } - if ($br > 0) { - $br = max($br + ($b_offset + $r_offset) / 2, 0); - } - if ($bl > 0) { - $bl = max($bl + ($b_offset + $l_offset) / 2, 0); - } - - if ($tl + $bl > $rh) { - $f = $rh / ($tl + $bl); - $tl = $f * $tl; - $bl = $f * $bl; - } - if ($tr + $br > $rh) { - $f = $rh / ($tr + $br); - $tr = $f * $tr; - $br = $f * $br; - } - if ($tl + $tr > $rw) { - $f = $rw / ($tl + $tr); - $tl = $f * $tl; - $tr = $f * $tr; - } - if ($bl + $br > $rw) { - $f = $rw / ($bl + $br); - $bl = $f * $bl; - $br = $f * $br; - } - } - - $values = [$tl, $tr, $br, $bl]; - - if ($use_cache) { - $this->resolved_border_radius = $values; - } - - return $values; - } - - /** - * Returns the outline color as an array - * - * See {@link Style::_get_color()} for format of the color array. - * - * @param string $computed - * @return array|string - * - * @link https://www.w3.org/TR/css-ui-4/#propdef-outline-color - */ - protected function _get_outline_color($computed) - { - return $this->get_color_value($computed); - } - - /** - * @param string $computed - * @return string - * - * @link https://www.w3.org/TR/css-ui-4/#propdef-outline-style - */ - protected function _get_outline_style($computed): string - { - return $computed === "auto" ? "solid" : $computed; - } - - /** - * Return full outline properties as a string - * - * Outline properties are returned just as specified in CSS: - * `[width] [style] [color]` - * e.g. "1px solid blue" - * - * @return string - * - * @link https://www.w3.org/TR/CSS21/box.html#border-shorthand-properties - */ - protected function _get_outline(): string - { - $color = $this->__get("outline_color"); - - return $this->__get("outline_width") . " " . - $this->__get("outline_style") . " " . - (\is_array($color) ? $color["hex"] : $color); - } - - /** - * Returns the list style image URI, or "none" - * - * @param string $computed - * @return string - * - * @link https://www.w3.org/TR/CSS21/generate.html#propdef-list-style-image - */ - protected function _get_list_style_image($computed): string - { - return $this->_stylesheet->resolve_url($computed); - } - - /** - * @param string $value - * @param int $default - * - * @return array|string - */ - protected function parse_counter_prop(string $value, int $default) - { - $ident = self::CSS_IDENTIFIER; - $integer = self::CSS_INTEGER; - $pattern = "/($ident)(?:\s+($integer))?/"; - - if (!preg_match_all($pattern, $value, $matches, PREG_SET_ORDER)) { - return "none"; - } - - $counters = []; - - foreach ($matches as $match) { - $counter = $match[1]; - $value = isset($match[2]) ? (int) $match[2] : $default; - $counters[$counter] = $value; - } - - return $counters; - } - - /** - * @param string $computed - * @return array|string - * - * @link https://www.w3.org/TR/CSS21/generate.html#propdef-counter-increment - */ - protected function _get_counter_increment($computed) - { - if ($computed === "none") { - return $computed; - } - - return $this->parse_counter_prop($computed, 1); - } - - /** - * @param string $computed - * @return array|string - * - * @link https://www.w3.org/TR/CSS21/generate.html#propdef-counter-reset - */ - protected function _get_counter_reset($computed) - { - if ($computed === "none") { - return $computed; - } - - return $this->parse_counter_prop($computed, 0); - } - - /** - * @param string $computed - * @return string[]|string - * - * @link https://www.w3.org/TR/CSS21/generate.html#propdef-content - */ - protected function _get_content($computed) - { - if ($computed === "normal" || $computed === "none") { - return $computed; - } - - return $this->parse_property_value($computed); - } - - /*==============================*/ - - /** - * Parse a property value into its components. - * - * @param string $value - * - * @return string[] - */ - protected function parse_property_value(string $value): array - { - $ident = self::CSS_IDENTIFIER; - $number = self::CSS_NUMBER; - - $pattern = "/\n" . - "\s* \" ( (?:[^\"]|\\\\[\"])* ) (?munge_color($val) - : $val; - - if ($munged_color === null) { - return null; - } - - return \is_array($munged_color) ? $munged_color["hex"] : $munged_color; - } - - /** - * @param string $val - * @return int|null - */ - protected function compute_integer(string $val): ?int - { - $integer = self::CSS_INTEGER; - return preg_match("/^$integer$/", $val) - ? (int) $val - : null; - } - - /** - * @param string $val - * @return float|null - */ - protected function compute_length(string $val): ?float - { - return mb_strpos($val, "%") === false - ? $this->single_length_in_pt($val) - : null; - } - - /** - * @param string $val - * @return float|null - */ - protected function compute_length_positive(string $val): ?float - { - $computed = $this->compute_length($val); - return $computed !== null && $computed >= 0 ? $computed : null; - } - - /** - * @param string $val - * @return float|string|null - */ - protected function compute_length_percentage(string $val) - { - // Compute with a fixed ref size to decide whether percentage values - // are valid - $computed = $this->single_length_in_pt($val, 12); - - if ($computed === null) { - return null; - } - - // Retain valid percentage declarations - return mb_strpos($val, "%") === false ? $computed : $val; - } - - /** - * @param string $val - * @return float|string|null - */ - protected function compute_length_percentage_positive(string $val) - { - // Compute with a fixed ref size to decide whether percentage values - // are valid - $computed = $this->single_length_in_pt($val, 12); - - if ($computed === null || $computed < 0) { - return null; - } - - // Retain valid percentage declarations - return mb_strpos($val, "%") === false ? $computed : $val; - } - - /** - * @param string $val - * @param string $style_prop The corresponding border-/outline-style property. - * - * @return float|null - * - * @link https://www.w3.org/TR/css-backgrounds-3/#typedef-line-width - */ - protected function compute_line_width(string $val, string $style_prop): ?float - { - // Border-width keywords - if ($val === "thin") { - $computed = 0.5; - } elseif ($val === "medium") { - $computed = 1.5; - } elseif ($val === "thick") { - $computed = 2.5; - } else { - $computed = $this->compute_length_positive($val); - } - - if ($computed === null) { - return null; - } - - // Computed width is 0 if the line style is `none` or `hidden` - // https://www.w3.org/TR/css-backgrounds-3/#border-width - // https://www.w3.org/TR/css-ui-4/#outline-width - $lineStyle = $this->__get($style_prop); - $hasLineStyle = $lineStyle !== "none" && $lineStyle !== "hidden"; - - return $hasLineStyle ? $computed : 0.0; - } - - /** - * @param string $val - * @return string|null - */ - protected function compute_border_style(string $val): ?string - { - return \in_array($val, self::BORDER_STYLES, true) ? $val : null; - } - - /** - * Parse a property value with 1 to 4 components into 4 values, as required - * by shorthand properties such as `margin`, `padding`, and `border-radius`. - * - * @param string $prop The shorthand property with exactly 4 sub-properties to handle. - * @param string $value The property value to parse. - * - * @return string[] - */ - protected function set_quad_shorthand(string $prop, string $value): array - { - $v = $this->parse_property_value($value); - - switch (\count($v)) { - case 1: - $values = [$v[0], $v[0], $v[0], $v[0]]; - break; - case 2: - $values = [$v[0], $v[1], $v[0], $v[1]]; - break; - case 3: - $values = [$v[0], $v[1], $v[2], $v[1]]; - break; - case 4: - $values = [$v[0], $v[1], $v[2], $v[3]]; - break; - default: - return []; - } - - return array_combine(self::$_props_shorthand[$prop], $values); - } - - /*======================*/ - - /** - * @link https://www.w3.org/TR/CSS21/visuren.html#display-prop - */ - protected function _compute_display(string $val) - { - // Make sure that common valid, but unsupported display types have an - // appropriate fallback display type - switch ($val) { - case "flow-root": - case "flex": - case "grid": - case "table-caption": - $val = "block"; - break; - case "inline-flex": - case "inline-grid": - $val = "inline-block"; - break; - } - - if (!isset(self::$valid_display_types[$val])) { - return null; - } - - // https://www.w3.org/TR/CSS21/visuren.html#dis-pos-flo - if ($this->is_in_flow()) { - return $val; - } else { - switch ($val) { - case "inline": - case "inline-block": - // case "table-row-group": - // case "table-header-group": - // case "table-footer-group": - // case "table-row": - // case "table-cell": - // case "table-column-group": - // case "table-column": - // case "table-caption": - return "block"; - case "inline-table": - return "table"; - default: - return $val; - } - } - } - - /** - * @link https://www.w3.org/TR/CSS21/colors.html#propdef-color - */ - protected function _compute_color(string $color) - { - return $this->compute_color_value($color); - } - - /** - * @link https://www.w3.org/TR/CSS21/colors.html#propdef-background-color - */ - protected function _compute_background_color(string $color) - { - return $this->compute_color_value($color); - } - - /** - * @link https://www.w3.org/TR/CSS21/colors.html#propdef-background-image - */ - protected function _compute_background_image(string $val) - { - $parsed_val = $this->_stylesheet->resolve_url($val); - - if ($parsed_val === "none") { - return "none"; - } else { - return "url($parsed_val)"; - } - } - - /** - * @link https://www.w3.org/TR/CSS21/colors.html#propdef-background-repeat - */ - protected function _compute_background_repeat(string $val) - { - $keywords = ["repeat", "repeat-x", "repeat-y", "no-repeat"]; - return \in_array($val, $keywords, true) ? $val : null; - } - - /** - * @link https://www.w3.org/TR/CSS21/colors.html#propdef-background-attachment - */ - protected function _compute_background_attachment(string $val) - { - $keywords = ["scroll", "fixed"]; - return \in_array($val, $keywords, true) ? $val : null; - } - - /** - * @link https://www.w3.org/TR/CSS21/colors.html#propdef-background-position - */ - protected function _compute_background_position(string $val) - { - $parts = preg_split("/\s+/", $val); - - if (\count($parts) > 2) { - return null; - } - - switch ($parts[0]) { - case "left": - $x = "0%"; - break; - - case "right": - $x = "100%"; - break; - - case "top": - $y = "0%"; - break; - - case "bottom": - $y = "100%"; - break; - - case "center": - $x = "50%"; - $y = "50%"; - break; - - default: - $x = $parts[0]; - break; - } - - if (isset($parts[1])) { - switch ($parts[1]) { - case "left": - $x = "0%"; - break; - - case "right": - $x = "100%"; - break; - - case "top": - $y = "0%"; - break; - - case "bottom": - $y = "100%"; - break; - - case "center": - if ($parts[0] === "left" || $parts[0] === "right" || $parts[0] === "center") { - $y = "50%"; - } else { - $x = "50%"; - } - break; - - default: - $y = $parts[1]; - break; - } - } else { - $y = "50%"; - } - - if (!isset($x)) { - $x = "0%"; - } - - if (!isset($y)) { - $y = "0%"; - } - - return [$x, $y]; - } - - /** - * Compute `background-size`. - * - * Computes to one of the following values: - * * `cover` - * * `contain` - * * `[width, height]`, each being a length, percentage, or `auto` - * - * @link https://www.w3.org/TR/css-backgrounds-3/#background-size - */ - protected function _compute_background_size(string $val) - { - if ($val === "cover" || $val === "contain") { - return $val; - } - - $parts = preg_split("/\s+/", $val); - - if (\count($parts) > 2) { - return null; - } - - $width = $parts[0]; - if ($width !== "auto") { - $width = $this->compute_length_percentage_positive($width); - } - - $height = $parts[1] ?? "auto"; - if ($height !== "auto") { - $height = $this->compute_length_percentage_positive($height); - } - - if ($width === null || $height === null) { - return null; - } - - return [$width, $height]; - } - - /** - * @link https://www.w3.org/TR/css-backgrounds-3/#propdef-background - */ - protected function _set_background(string $value): array - { - $components = $this->parse_property_value($value); - $props = []; - $pos_size = []; - - foreach ($components as $val) { - if ($val === "none" || mb_substr($val, 0, 4) === "url(") { - $props["background_image"] = $val; - } elseif ($val === "scroll" || $val === "fixed") { - $props["background_attachment"] = $val; - } elseif ($val === "repeat" || $val === "repeat-x" || $val === "repeat-y" || $val === "no-repeat") { - $props["background_repeat"] = $val; - } elseif ($this->is_color_value($val)) { - $props["background_color"] = $val; - } else { - $pos_size[] = $val; - } - } - - if (\count($pos_size)) { - // Split value list at "/" - $index = array_search("/", $pos_size, true); - - if ($index !== false) { - $pos = \array_slice($pos_size, 0, $index); - $size = \array_slice($pos_size, $index + 1); - } else { - $pos = $pos_size; - $size = []; - } - - $props["background_position"] = implode(" ", $pos); - - if (\count($size)) { - $props["background_size"] = implode(" ", $size); - } - } - - return $props; - } - - /** - * @link https://www.w3.org/TR/CSS21/fonts.html#propdef-font-size - */ - protected function _compute_font_size(string $size) - { - $parent_font_size = isset($this->parent_style) - ? $this->parent_style->__get("font_size") - : self::$default_font_size; - - switch ($size) { - case "xx-small": - case "x-small": - case "small": - case "medium": - case "large": - case "x-large": - case "xx-large": - $fs = self::$default_font_size * self::$font_size_keywords[$size]; - break; - - case "smaller": - $fs = 8 / 9 * $parent_font_size; - break; - - case "larger": - $fs = 6 / 5 * $parent_font_size; - break; - - default: - $fs = $this->single_length_in_pt($size, $parent_font_size, $parent_font_size); - break; - } - - return $fs; - } - - /** - * @link https://www.w3.org/TR/CSS21/fonts.html#font-boldness - */ - protected function _compute_font_weight(string $weight) - { - $computed_weight = $weight; - - if ($weight === "bolder") { - //TODO: One font weight heavier than the parent element (among the available weights of the font). - $computed_weight = "bold"; - } elseif ($weight === "lighter") { - //TODO: One font weight lighter than the parent element (among the available weights of the font). - $computed_weight = "normal"; - } - - return $computed_weight; - } - - /** - * Handle the `font` shorthand property. - * - * `[ font-style || font-variant || font-weight ] font-size [ / line-height ] font-family` - * - * @link https://www.w3.org/TR/CSS21/fonts.html#font-shorthand - */ - protected function _set_font(string $value): array - { - $components = $this->parse_property_value($value); - $props = []; - - $number = self::CSS_NUMBER; - $unit = "pt|px|pc|rem|em|ex|in|cm|mm|%"; - $sizePattern = "/^(xx-small|x-small|small|medium|large|x-large|xx-large|smaller|larger|$number(?:$unit))$/"; - $sizeIndex = null; - - // Find index of font-size to split the component list - foreach ($components as $i => $val) { - if (preg_match($sizePattern, $val)) { - $sizeIndex = $i; - $props["font_size"] = $val; - break; - } - } - - // `font-size` is mandatory - if ($sizeIndex === null) { - return []; - } - - // `font-style`, `font-variant`, `font-weight` in any order - $styleVariantWeight = \array_slice($components, 0, $sizeIndex); - $stylePattern = "/^(italic|oblique)$/"; - $variantPattern = "/^(small-caps)$/"; - $weightPattern = "/^(bold|bolder|lighter|100|200|300|400|500|600|700|800|900)$/"; - - if (\count($styleVariantWeight) > 3) { - return []; - } - - foreach ($styleVariantWeight as $val) { - if ($val === "normal") { - // Ignore any `normal` value, as it is valid and the initial - // value for all three properties - } elseif (!isset($props["font_style"]) && preg_match($stylePattern, $val)) { - $props["font_style"] = $val; - } elseif (!isset($props["font_variant"]) && preg_match($variantPattern, $val)) { - $props["font_variant"] = $val; - } elseif (!isset($props["font_weight"]) && preg_match($weightPattern, $val)) { - $props["font_weight"] = $val; - } else { - // Duplicates and other values disallowed here - return []; - } - } - - // Optional slash + `line-height` followed by mandatory `font-family` - $lineFamily = \array_slice($components, $sizeIndex + 1); - $hasLineHeight = $lineFamily !== [] && $lineFamily[0] === "/"; - $lineHeight = $hasLineHeight ? \array_slice($lineFamily, 1, 1) : []; - $fontFamily = $hasLineHeight ? \array_slice($lineFamily, 2) : $lineFamily; - $lineHeightPattern = "/^(normal|$number(?:$unit)?)$/"; - - // Missing `font-family` or `line-height` after slash - if ($fontFamily === [] - || ($hasLineHeight && !preg_match($lineHeightPattern, $lineHeight[0])) - ) { - return []; - } - - if ($hasLineHeight) { - $props["line_height"] = $lineHeight[0]; - } - - $props["font_family"] = implode("", $fontFamily); - - return $props; - } - - /** - * Compute `text-align`. - * - * If no alignment is set on the element and the direction is rtl then - * the property is set to "right", otherwise it is set to "left". - * - * @link https://www.w3.org/TR/CSS21/text.html#propdef-text-align - */ - protected function _compute_text_align(string $val) - { - $alignment = $val; - if ($alignment === "") { - $alignment = "left"; - if ($this->__get("direction") === "rtl") { - $alignment = "right"; - } - } - - if (!\in_array($alignment, self::TEXT_ALIGN_KEYWORDS, true)) { - return null; - } - - return $alignment; - } - - /** - * @link https://www.w3.org/TR/css-text-4/#word-spacing-property - */ - protected function _compute_word_spacing(string $val) - { - if ($val === "normal") { - return 0.0; - } - - return $this->compute_length_percentage($val); - } - - /** - * @link https://www.w3.org/TR/css-text-4/#letter-spacing-property - */ - protected function _compute_letter_spacing(string $val) - { - if ($val === "normal") { - return 0.0; - } - - return $this->compute_length_percentage($val); - } - - /** - * @link https://www.w3.org/TR/CSS21/visudet.html#propdef-line-height - */ - protected function _compute_line_height(string $val) - { - if ($val === "normal") { - return $val; - } - - // Compute number values to string and lengths to float (in pt) - if (is_numeric($val)) { - return (string) $val; - } - - $font_size = $this->__get("font_size"); - $computed = $this->single_length_in_pt($val, $font_size); - return $computed !== null && $computed >= 0 ? $computed : null; - } - - /** - * @link https://www.w3.org/TR/css-text-3/#text-indent-property - */ - protected function _compute_text_indent(string $val) - { - return $this->compute_length_percentage($val); - } - - /** - * @link https://www.w3.org/TR/CSS21/page.html#propdef-page-break-before - */ - protected function _compute_page_break_before(string $break) - { - if ($break === "left" || $break === "right") { - $break = "always"; - } - - return $break; - } - - /** - * @link https://www.w3.org/TR/CSS21/page.html#propdef-page-break-after - */ - protected function _compute_page_break_after(string $break) - { - if ($break === "left" || $break === "right") { - $break = "always"; - } - - return $break; - } - - /** - * @link https://www.w3.org/TR/CSS21/visudet.html#propdef-width - */ - protected function _compute_width(string $val) - { - if ($val === "auto") { - return $val; - } - - return $this->compute_length_percentage_positive($val); - } - - /** - * @link https://www.w3.org/TR/CSS21/visudet.html#propdef-height - */ - protected function _compute_height(string $val) - { - if ($val === "auto") { - return $val; - } - - return $this->compute_length_percentage_positive($val); - } - - /** - * @link https://www.w3.org/TR/CSS21/visudet.html#propdef-min-width - */ - protected function _compute_min_width(string $val) - { - // Legacy support for `none`, not covered by spec - if ($val === "auto" || $val === "none") { - return "auto"; - } - - return $this->compute_length_percentage_positive($val); - } - - /** - * @link https://www.w3.org/TR/CSS21/visudet.html#propdef-min-height - */ - protected function _compute_min_height(string $val) - { - // Legacy support for `none`, not covered by spec - if ($val === "auto" || $val === "none") { - return "auto"; - } - - return $this->compute_length_percentage_positive($val); - } - - /** - * @link https://www.w3.org/TR/CSS21/visudet.html#propdef-max-width - */ - protected function _compute_max_width(string $val) - { - // Legacy support for `auto`, not covered by spec - if ($val === "none" || $val === "auto") { - return "none"; - } - - return $this->compute_length_percentage_positive($val); - } - - /** - * @link https://www.w3.org/TR/CSS21/visudet.html#propdef-max-height - */ - protected function _compute_max_height(string $val) - { - // Legacy support for `auto`, not covered by spec - if ($val === "none" || $val === "auto") { - return "none"; - } - - return $this->compute_length_percentage_positive($val); - } - - /** - * @link https://www.w3.org/TR/css-position-3/#inset-properties - * @link https://www.w3.org/TR/css-position-3/#propdef-inset - */ - protected function _set_inset(string $val): array - { - return $this->set_quad_shorthand("inset", $val); - } - - /** - * @param string $val - * @return float|string|null - */ - protected function compute_box_inset(string $val) - { - if ($val === "auto") { - return $val; - } - - return $this->compute_length_percentage($val); - } - - protected function _compute_top(string $val) - { - return $this->compute_box_inset($val); - } - - protected function _compute_right(string $val) - { - return $this->compute_box_inset($val); - } - - protected function _compute_bottom(string $val) - { - return $this->compute_box_inset($val); - } - - protected function _compute_left(string $val) - { - return $this->compute_box_inset($val); - } - - /** - * @link https://www.w3.org/TR/CSS21/box.html#margin-properties - * @link https://www.w3.org/TR/CSS21/box.html#propdef-margin - */ - protected function _set_margin(string $val): array - { - return $this->set_quad_shorthand("margin", $val); - } - - /** - * @param string $val - * @return float|string|null - */ - protected function compute_margin(string $val) - { - // Legacy support for `none` keyword, not covered by spec - if ($val === "none") { - return 0.0; - } - - if ($val === "auto") { - return $val; - } - - return $this->compute_length_percentage($val); - } - - protected function _compute_margin_top(string $val) - { - return $this->compute_margin($val); - } - - protected function _compute_margin_right(string $val) - { - return $this->compute_margin($val); - } - - protected function _compute_margin_bottom(string $val) - { - return $this->compute_margin($val); - } - - protected function _compute_margin_left(string $val) - { - return $this->compute_margin($val); - } - - /** - * @link https://www.w3.org/TR/CSS21/box.html#padding-properties - * @link https://www.w3.org/TR/CSS21/box.html#propdef-padding - */ - protected function _set_padding(string $val): array - { - return $this->set_quad_shorthand("padding", $val); - } - - /** - * @param string $val - * @return float|string|null - */ - protected function compute_padding(string $val) - { - // Legacy support for `none` keyword, not covered by spec - if ($val === "none") { - return 0.0; - } - - return $this->compute_length_percentage_positive($val); - } - - protected function _compute_padding_top(string $val) - { - return $this->compute_padding($val); - } - - protected function _compute_padding_right(string $val) - { - return $this->compute_padding($val); - } - - protected function _compute_padding_bottom(string $val) - { - return $this->compute_padding($val); - } - - protected function _compute_padding_left(string $val) - { - return $this->compute_padding($val); - } - - /** - * @param string $value `width || style || color` - * @param string[] $styles The list of border styles to accept. - * - * @return array Array of `[width, style, color]`, or `null` if the declaration is invalid. - */ - protected function parse_border_side(string $value, array $styles = self::BORDER_STYLES): ?array - { - $components = $this->parse_property_value($value); - $width = null; - $style = null; - $color = null; - - foreach ($components as $val) { - if ($style === null && \in_array($val, $styles, true)) { - $style = $val; - } elseif ($color === null && $this->is_color_value($val)) { - $color = $val; - } elseif ($width === null) { - // Assume width - $width = $val; - } else { - // Duplicates are not allowed - return null; - } - } - - return [$width, $style, $color]; - } - - /** - * @link https://www.w3.org/TR/CSS21/box.html#border-properties - * @link https://www.w3.org/TR/CSS21/box.html#propdef-border - */ - protected function _set_border(string $value): array - { - $values = $this->parse_border_side($value); - - if ($values === null) { - return []; - } - - return array_merge( - array_combine(self::$_props_shorthand["border_top"], $values), - array_combine(self::$_props_shorthand["border_right"], $values), - array_combine(self::$_props_shorthand["border_bottom"], $values), - array_combine(self::$_props_shorthand["border_left"], $values) - ); - } - - /** - * @param string $prop - * @param string $value - * @return array - */ - protected function set_border_side(string $prop, string $value): array - { - $values = $this->parse_border_side($value); - - if ($values === null) { - return []; - } - - return array_combine(self::$_props_shorthand[$prop], $values); - } - - protected function _set_border_top(string $val): array - { - return $this->set_border_side("border_top", $val); - } - - protected function _set_border_right(string $val): array - { - return $this->set_border_side("border_right", $val); - } - - protected function _set_border_bottom(string $val): array - { - return $this->set_border_side("border_bottom", $val); - } - - protected function _set_border_left(string $val): array - { - return $this->set_border_side("border_left", $val); - } - - /** - * @link https://www.w3.org/TR/CSS21/box.html#propdef-border-color - */ - protected function _set_border_color(string $val): array - { - return $this->set_quad_shorthand("border_color", $val); - } - - protected function _compute_border_top_color(string $val) - { - return $this->compute_color_value($val); - } - - protected function _compute_border_right_color(string $val) - { - return $this->compute_color_value($val); - } - - protected function _compute_border_bottom_color(string $val) - { - return $this->compute_color_value($val); - } - - protected function _compute_border_left_color(string $val) - { - return $this->compute_color_value($val); - } - - /** - * @link https://www.w3.org/TR/CSS21/box.html#propdef-border-style - */ - protected function _set_border_style(string $val): array - { - return $this->set_quad_shorthand("border_style", $val); - } - - protected function _compute_border_top_style(string $val) - { - return $this->compute_border_style($val); - } - - protected function _compute_border_right_style(string $val) - { - return $this->compute_border_style($val); - } - - protected function _compute_border_bottom_style(string $val) - { - return $this->compute_border_style($val); - } - - protected function _compute_border_left_style(string $val) - { - return $this->compute_border_style($val); - } - - /** - * @link https://www.w3.org/TR/CSS21/box.html#propdef-border-width - */ - protected function _set_border_width(string $val): array - { - return $this->set_quad_shorthand("border_width", $val); - } - - protected function _compute_border_top_width(string $val) - { - return $this->compute_line_width($val, "border_top_style"); - } - - protected function _compute_border_right_width(string $val) - { - return $this->compute_line_width($val, "border_right_style"); - } - - protected function _compute_border_bottom_width(string $val) - { - return $this->compute_line_width($val, "border_bottom_style"); - } - - protected function _compute_border_left_width(string $val) - { - return $this->compute_line_width($val, "border_left_style"); - } - - /** - * @link https://www.w3.org/TR/css-backgrounds-3/#corners - * @link https://www.w3.org/TR/css-backgrounds-3/#propdef-border-radius - */ - protected function _set_border_radius(string $val): array - { - return $this->set_quad_shorthand("border_radius", $val); - } - - protected function _compute_border_top_left_radius(string $val) - { - return $this->compute_length_percentage_positive($val); - } - - protected function _compute_border_top_right_radius(string $val) - { - return $this->compute_length_percentage_positive($val); - } - - protected function _compute_border_bottom_right_radius(string $val) - { - return $this->compute_length_percentage_positive($val); - } - - protected function _compute_border_bottom_left_radius(string $val) - { - return $this->compute_length_percentage_positive($val); - } - - /** - * @link https://www.w3.org/TR/css-ui-4/#outline-props - * @link https://www.w3.org/TR/css-ui-4/#propdef-outline - */ - protected function _set_outline(string $value): array - { - $values = $this->parse_border_side($value, self::OUTLINE_STYLES); - - if ($values === null) { - return []; - } - - return array_combine(self::$_props_shorthand["outline"], $values); - } - - protected function _compute_outline_color(string $val) - { - return $this->compute_color_value($val); - } - - protected function _compute_outline_style(string $val) - { - return \in_array($val, self::OUTLINE_STYLES, true) ? $val : null; - } - - protected function _compute_outline_width(string $val) - { - return $this->compute_line_width($val, "outline_style"); - } - - /** - * @link https://www.w3.org/TR/css-ui-4/#propdef-outline-offset - */ - protected function _compute_outline_offset(string $val) - { - return $this->compute_length($val); - } - - /** - * Compute `border-spacing` to two lengths of the form - * `[horizontal, vertical]`. - * - * @link https://www.w3.org/TR/CSS21/tables.html#propdef-border-spacing - */ - protected function _compute_border_spacing(string $val) - { - $parts = preg_split("/\s+/", $val); - - if (\count($parts) > 2) { - return null; - } - - $h = $this->compute_length_positive($parts[0]); - $v = isset($parts[1]) - ? $this->compute_length_positive($parts[1]) - : $h; - - if ($h === null || $v === null) { - return null; - } - - return [$h, $v]; - } - - /** - * @link https://www.w3.org/TR/CSS21/generate.html#propdef-list-style-image - */ - protected function _compute_list_style_image(string $val) - { - $parsed_val = $this->_stylesheet->resolve_url($val); - - if ($parsed_val === "none") { - return "none"; - } else { - return "url($parsed_val)"; - } - } - - /** - * @link https://www.w3.org/TR/CSS21/generate.html#propdef-list-style - */ - protected function _set_list_style(string $value): array - { - static $positions = ["inside", "outside"]; - static $types = [ - "disc", "circle", "square", - "decimal-leading-zero", "decimal", "1", - "lower-roman", "upper-roman", "a", "A", - "lower-greek", - "lower-latin", "upper-latin", - "lower-alpha", "upper-alpha", - "armenian", "georgian", "hebrew", - "cjk-ideographic", "hiragana", "katakana", - "hiragana-iroha", "katakana-iroha", "none" - ]; - - $components = $this->parse_property_value($value); - $props = []; - - foreach ($components as $val) { - /* https://www.w3.org/TR/CSS21/generate.html#list-style - * A value of 'none' for the 'list-style' property sets both 'list-style-type' and 'list-style-image' to 'none' - */ - if ($val === "none") { - $props["list_style_type"] = $val; - $props["list_style_image"] = $val; - continue; - } - - //On setting or merging or inheriting list_style_image as well as list_style_type, - //and url exists, then url has precedence, otherwise fall back to list_style_type - //Firefox is wrong here (list_style_image gets overwritten on explicit list_style_type) - //Internet Explorer 7/8 and dompdf is right. - - if (mb_substr($val, 0, 4) === "url(") { - $props["list_style_image"] = $val; - continue; - } - - if (\in_array($val, $types, true)) { - $props["list_style_type"] = $val; - } elseif (\in_array($val, $positions, true)) { - $props["list_style_position"] = $val; - } - } - - return $props; - } - - /** - * @link https://www.w3.org/TR/css-page-3/#page-size-prop - */ - protected function _compute_size(string $val) - { - if ($val === "auto") { - return $val; - } - - $parts = $this->parse_property_value($val); - $count = \count($parts); - - if ($count === 0 || $count > 3) { - return null; - } - - $size = null; - $orientation = null; - $lengths = []; - - foreach ($parts as $part) { - if ($size === null && isset(CPDF::$PAPER_SIZES[$part])) { - $size = $part; - } elseif ($orientation === null && ($part === "portrait" || $part === "landscape")) { - $orientation = $part; - } else { - $lengths[] = $part; - } - } - - if ($size !== null && $lengths !== []) { - return null; - } - - if ($size !== null) { - // Standard paper size - [$l1, $l2] = \array_slice(CPDF::$PAPER_SIZES[$size], 2, 2); - } elseif ($lengths === []) { - // Orientation only, use default paper size - $dims = $this->_stylesheet->get_dompdf()->getPaperSize(); - [$l1, $l2] = \array_slice($dims, 2, 2); - } else { - // Custom paper size - $l1 = $this->compute_length_positive($lengths[0]); - $l2 = isset($lengths[1]) ? $this->compute_length_positive($lengths[1]) : $l1; - - if ($l1 === null || $l2 === null) { - return null; - } - } - - if (($orientation === "portrait" && $l1 > $l2) - || ($orientation === "landscape" && $l2 > $l1) - ) { - return [$l2, $l1]; - } - - return [$l1, $l2]; - } - - /** - * @param string $computed - * @return array - * - * @link https://www.w3.org/TR/css-transforms-1/#transform-property - */ - protected function _get_transform($computed) - { - //TODO: should be handled in setter (lengths set to absolute) - - $number = "\s*([^,\s]+)\s*"; - $tr_value = "\s*([^,\s]+)\s*"; - $angle = "\s*([^,\s]+(?:deg|rad)?)\s*"; - - if (!preg_match_all("/[a-z]+\([^\)]+\)/i", $computed, $parts, PREG_SET_ORDER)) { - return []; - } - - $functions = [ - //"matrix" => "\($number,$number,$number,$number,$number,$number\)", - - "translate" => "\($tr_value(?:,$tr_value)?\)", - "translateX" => "\($tr_value\)", - "translateY" => "\($tr_value\)", - - "scale" => "\($number(?:,$number)?\)", - "scaleX" => "\($number\)", - "scaleY" => "\($number\)", - - "rotate" => "\($angle\)", - - "skew" => "\($angle(?:,$angle)?\)", - "skewX" => "\($angle\)", - "skewY" => "\($angle\)", - ]; - - $transforms = []; - - foreach ($parts as $part) { - $t = $part[0]; - - foreach ($functions as $name => $pattern) { - if (preg_match("/$name\s*$pattern/i", $t, $matches)) { - $values = \array_slice($matches, 1); - - switch ($name) { - // units - case "rotate": - case "skew": - case "skewX": - case "skewY": - - foreach ($values as $i => $value) { - if (strpos($value, "rad")) { - $values[$i] = rad2deg((float) $value); - } else { - $values[$i] = (float) $value; - } - } - - switch ($name) { - case "skew": - if (!isset($values[1])) { - $values[1] = 0; - } - break; - case "skewX": - $name = "skew"; - $values = [$values[0], 0]; - break; - case "skewY": - $name = "skew"; - $values = [0, $values[0]]; - break; - } - break; - - // units - case "translate": - $values[0] = $this->length_in_pt($values[0], (float)$this->length_in_pt($this->width)); - - if (isset($values[1])) { - $values[1] = $this->length_in_pt($values[1], (float)$this->length_in_pt($this->height)); - } else { - $values[1] = 0; - } - break; - - case "translateX": - $name = "translate"; - $values = [$this->length_in_pt($values[0], (float)$this->length_in_pt($this->width)), 0]; - break; - - case "translateY": - $name = "translate"; - $values = [0, $this->length_in_pt($values[0], (float)$this->length_in_pt($this->height))]; - break; - - // units - case "scale": - if (!isset($values[1])) { - $values[1] = $values[0]; - } - break; - - case "scaleX": - $name = "scale"; - $values = [$values[0], 1.0]; - break; - - case "scaleY": - $name = "scale"; - $values = [1.0, $values[0]]; - break; - } - - $transforms[] = [ - $name, - $values, - ]; - } - } - } - - return $transforms; - } - - /** - * @param string $computed - * @return array - * - * @link https://www.w3.org/TR/css-transforms-1/#transform-origin-property - */ - protected function _get_transform_origin($computed) - { - //TODO: should be handled in setter - - $values = preg_split("/\s+/", $computed); - - $values = array_map(function ($value) { - if (\in_array($value, ["top", "left"], true)) { - return 0; - } elseif (\in_array($value, ["bottom", "right"], true)) { - return "100%"; - } else { - return $value; - } - }, $values); - - if (!isset($values[1])) { - $values[1] = $values[0]; - } - - return $values; - } - - /** - * @param string $val - * @return string|null - */ - protected function parse_image_resolution(string $val): ?string - { - // If exif data could be get: - // $re = '/^\s*(\d+|normal|auto)(?:\s*,\s*(\d+|normal))?\s*$/'; - - $re = '/^\s*(\d+|normal|auto)\s*$/'; - - if (!preg_match($re, $val, $matches)) { - return null; - } - - return $matches[1]; - } - - /** - * auto | normal | dpi - */ - protected function _compute_background_image_resolution(string $val) - { - return $this->parse_image_resolution($val); - } - - /** - * auto | normal | dpi - */ - protected function _compute_image_resolution(string $val) - { - return $this->parse_image_resolution($val); - } - - /** - * @link https://www.w3.org/TR/css-break-3/#propdef-orphans - */ - protected function _compute_orphans(string $val) - { - return $this->compute_integer($val); - } - - /** - * @link https://www.w3.org/TR/css-break-3/#propdef-widows - */ - protected function _compute_widows(string $val) - { - return $this->compute_integer($val); - } - - /** - * @link https://www.w3.org/TR/css-color-4/#propdef-opacity - */ - protected function _compute_opacity(string $val) - { - $number = self::CSS_NUMBER; - $pattern = "/^($number)(%?)$/"; - - if (!preg_match($pattern, $val, $matches)) { - return null; - } - - $v = (float) $matches[1]; - $percent = $matches[2] === "%"; - $opacity = $percent ? ($v / 100) : $v; - - return max(0.0, min($opacity, 1.0)); - } - - /** - * @link https://www.w3.org/TR/CSS21//visuren.html#propdef-z-index - */ - protected function _compute_z_index(string $val) - { - if ($val === "auto") { - return $val; - } - - return $this->compute_integer($val); - } - - /** - * @param FontMetrics $fontMetrics - * @return $this - */ - public function setFontMetrics(FontMetrics $fontMetrics) - { - $this->fontMetrics = $fontMetrics; - return $this; - } - - /** - * @return FontMetrics - */ - public function getFontMetrics() - { - return $this->fontMetrics; - } - - /** - * Generate a string representation of the Style - * - * This dumps the entire property array into a string via print_r. Useful - * for debugging. - * - * @return string - */ - /*DEBUGCSS print: see below additional debugging util*/ - public function __toString(): string - { - $parent_font_size = $this->parent_style - ? $this->parent_style->font_size - : self::$default_font_size; - - return print_r(array_merge(["parent_font_size" => $parent_font_size], - $this->_props), true); - } - - /*DEBUGCSS*/ - public function debug_print(): void - { - $parent_font_size = $this->parent_style - ? $this->parent_style->font_size - : self::$default_font_size; - - print " parent_font_size:" . $parent_font_size . ";\n"; - print " Props [\n"; - print " specified [\n"; - foreach ($this->_props as $prop => $val) { - print ' ' . $prop . ': ' . preg_replace("/\r\n/", ' ', print_r($val, true)); - if (isset($this->_important_props[$prop])) { - print ' !important'; - } - print ";\n"; - } - print " ]\n"; - print " computed [\n"; - foreach ($this->_props_computed as $prop => $val) { - print ' ' . $prop . ': ' . preg_replace("/\r\n/", ' ', print_r($val, true)); - print ";\n"; - } - print " ]\n"; - print " cached [\n"; - foreach ($this->_props_used as $prop => $val) { - print ' ' . $prop . ': ' . preg_replace("/\r\n/", ' ', print_r($val, true)); - print ";\n"; - } - print " ]\n"; - print " ]\n"; - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Css/Stylesheet.php b/docker/statistics/vendor/dompdf/dompdf/src/Css/Stylesheet.php deleted file mode 100644 index 6bb88137..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Css/Stylesheet.php +++ /dev/null @@ -1,1655 +0,0 @@ - 0x00000000, // user agent declarations - self::ORIG_USER => 0x10000000, // user normal declarations - self::ORIG_AUTHOR => 0x30000000, // author normal declarations - ]; - - /** - * Non-CSS presentational hints (i.e. HTML 4 attributes) are handled as if added - * to the beginning of an author stylesheet, i.e. anything in author stylesheets - * should override them. - */ - const SPEC_NON_CSS = 0x20000000; - - /** - * Current dompdf instance - * - * @var Dompdf - */ - private $_dompdf; - - /** - * Array of currently defined styles - * - * @var Style[][] - */ - private $_styles; - - /** - * Base protocol of the document being parsed - * Used to handle relative urls. - * - * @var string - */ - private $_protocol = ""; - - /** - * Base hostname of the document being parsed - * Used to handle relative urls. - * - * @var string - */ - private $_base_host = ""; - - /** - * Base path of the document being parsed - * Used to handle relative urls. - * - * @var string - */ - private $_base_path = ""; - - /** - * The styles defined by @page rules - * - * @var array - $child = $child->nextSibling; - } - } else { - $css = $tag->nodeValue; - } - - // Set the base path of the Stylesheet to that of the file being processed - $this->css->set_protocol($this->protocol); - $this->css->set_host($this->baseHost); - $this->css->set_base_path($this->basePath); - - $this->css->load_css($css, Stylesheet::ORIG_AUTHOR); - break; - } - - // Set the base path of the Stylesheet to that of the file being processed - $this->css->set_protocol($this->protocol); - $this->css->set_host($this->baseHost); - $this->css->set_base_path($this->basePath); - } - } - - /** - * @param string $cacheId - * @deprecated - */ - public function enable_caching($cacheId) - { - $this->enableCaching($cacheId); - } - - /** - * Enable experimental caching capability - * - * @param string $cacheId - */ - public function enableCaching($cacheId) - { - $this->cacheId = $cacheId; - } - - /** - * @param string $value - * @return bool - * @deprecated - */ - public function parse_default_view($value) - { - return $this->parseDefaultView($value); - } - - /** - * @param string $value - * @return bool - */ - public function parseDefaultView($value) - { - $valid = ["XYZ", "Fit", "FitH", "FitV", "FitR", "FitB", "FitBH", "FitBV"]; - - $options = preg_split("/\s*,\s*/", trim($value)); - $defaultView = array_shift($options); - - if (!in_array($defaultView, $valid)) { - return false; - } - - $this->setDefaultView($defaultView, $options); - return true; - } - - /** - * Renders the HTML to PDF - */ - public function render() - { - $this->setPhpConfig(); - - $logOutputFile = $this->options->getLogOutputFile(); - if ($logOutputFile) { - if (!file_exists($logOutputFile) && is_writable(dirname($logOutputFile))) { - touch($logOutputFile); - } - - $startTime = microtime(true); - if (is_writable($logOutputFile)) { - ob_start(); - } - } - - $this->processHtml(); - - $this->css->apply_styles($this->tree); - - // @page style rules : size, margins - $pageStyles = $this->css->get_page_styles(); - $basePageStyle = $pageStyles["base"]; - unset($pageStyles["base"]); - - foreach ($pageStyles as $pageStyle) { - $pageStyle->inherit($basePageStyle); - } - - // Set paper size if defined via CSS - if (is_array($basePageStyle->size)) { - [$width, $height] = $basePageStyle->size; - $this->setPaper([0, 0, $width, $height]); - } - - // Create a new canvas instance if the current one does not match the - // desired paper size - $canvasWidth = $this->canvas->get_width(); - $canvasHeight = $this->canvas->get_height(); - $size = $this->getPaperSize(); - - if ($canvasWidth !== $size[2] || $canvasHeight !== $size[3]) { - $this->canvas = CanvasFactory::get_instance($this, $this->paperSize, $this->paperOrientation); - $this->fontMetrics->setCanvas($this->canvas); - } - - $canvas = $this->canvas; - - $root_frame = $this->tree->get_root(); - $root = Factory::decorate_root($root_frame, $this); - foreach ($this->tree as $frame) { - if ($frame === $root_frame) { - continue; - } - Factory::decorate_frame($frame, $this, $root); - } - - // Add meta information - $title = $this->dom->getElementsByTagName("title"); - if ($title->length) { - $canvas->add_info("Title", trim($title->item(0)->nodeValue)); - } - - $metas = $this->dom->getElementsByTagName("meta"); - $labels = [ - "author" => "Author", - "keywords" => "Keywords", - "description" => "Subject", - ]; - /** @var \DOMElement $meta */ - foreach ($metas as $meta) { - $name = mb_strtolower($meta->getAttribute("name")); - $value = trim($meta->getAttribute("content")); - - if (isset($labels[$name])) { - $canvas->add_info($labels[$name], $value); - continue; - } - - if ($name === "dompdf.view" && $this->parseDefaultView($value)) { - $canvas->set_default_view($this->defaultView, $this->defaultViewOptions); - } - } - - $root->set_containing_block(0, 0, $canvas->get_width(), $canvas->get_height()); - $root->set_renderer(new Renderer($this)); - - // This is where the magic happens: - $root->reflow(); - - if (isset($this->callbacks["end_document"])) { - $fs = $this->callbacks["end_document"]; - - foreach ($fs as $f) { - $canvas->page_script($f); - } - } - - // Clean up cached images - if (!$this->options->getDebugKeepTemp()) { - Cache::clear($this->options->getDebugPng()); - } - - global $_dompdf_warnings, $_dompdf_show_warnings; - if ($_dompdf_show_warnings && isset($_dompdf_warnings)) { - echo 'Dompdf Warnings
    ';
    -            foreach ($_dompdf_warnings as $msg) {
    -                echo $msg . "\n";
    -            }
    -
    -            if ($canvas instanceof CPDF) {
    -                echo $canvas->get_cpdf()->messages;
    -            }
    -            echo '
    '; - flush(); - } - - if ($logOutputFile && is_writable($logOutputFile)) { - $this->writeLog($logOutputFile, $startTime); - ob_end_clean(); - } - - $this->restorePhpConfig(); - } - - /** - * Writes the output buffer in the log file - * - * @param string $logOutputFile - * @param float $startTime - */ - private function writeLog(string $logOutputFile, float $startTime): void - { - $frames = Frame::$ID_COUNTER; - $memory = memory_get_peak_usage(true) / 1024; - $time = (microtime(true) - $startTime) * 1000; - - $out = sprintf( - "%6d" . - "%10.2f KB" . - "%10.2f ms" . - " " . - ($this->quirksmode ? " ON" : "OFF") . - "
    ", $frames, $memory, $time); - - $out .= ob_get_contents(); - ob_clean(); - - file_put_contents($logOutputFile, $out); - } - - /** - * Add meta information to the PDF after rendering. - * - * @deprecated - */ - public function add_info($label, $value) - { - $this->addInfo($label, $value); - } - - /** - * Add meta information to the PDF after rendering. - * - * @param string $label Label of the value (Creator, Producer, etc.) - * @param string $value The text to set - */ - public function addInfo(string $label, string $value): void - { - $this->canvas->add_info($label, $value); - } - - /** - * Streams the PDF to the client. - * - * The file will open a download dialog by default. The options - * parameter controls the output. Accepted options (array keys) are: - * - * 'compress' = > 1 (=default) or 0: - * Apply content stream compression - * - * 'Attachment' => 1 (=default) or 0: - * Set the 'Content-Disposition:' HTTP header to 'attachment' - * (thereby causing the browser to open a download dialog) - * - * @param string $filename the name of the streamed file - * @param array $options header options (see above) - */ - public function stream($filename = "document.pdf", $options = []) - { - $this->setPhpConfig(); - - $this->canvas->stream($filename, $options); - - $this->restorePhpConfig(); - } - - /** - * Returns the PDF as a string. - * - * The options parameter controls the output. Accepted options are: - * - * 'compress' = > 1 or 0 - apply content stream compression, this is - * on (1) by default - * - * @param array $options options (see above) - * - * @return string|null - */ - public function output($options = []) - { - $this->setPhpConfig(); - - $output = $this->canvas->output($options); - - $this->restorePhpConfig(); - - return $output; - } - - /** - * @return string - * @deprecated - */ - public function output_html() - { - return $this->outputHtml(); - } - - /** - * Returns the underlying HTML document as a string - * - * @return string - */ - public function outputHtml() - { - return $this->dom->saveHTML(); - } - - /** - * Get the dompdf option value - * - * @param string $key - * @return mixed - * @deprecated - */ - public function get_option($key) - { - return $this->options->get($key); - } - - /** - * @param string $key - * @param mixed $value - * @return $this - * @deprecated - */ - public function set_option($key, $value) - { - $this->options->set($key, $value); - return $this; - } - - /** - * @param array $options - * @return $this - * @deprecated - */ - public function set_options(array $options) - { - $this->options->set($options); - return $this; - } - - /** - * @param string $size - * @param string $orientation - * @deprecated - */ - public function set_paper($size, $orientation = "portrait") - { - $this->setPaper($size, $orientation); - } - - /** - * Sets the paper size & orientation - * - * @param string|float[] $size 'letter', 'legal', 'A4', etc. {@link Dompdf\Adapter\CPDF::$PAPER_SIZES} - * @param string $orientation 'portrait' or 'landscape' - * @return $this - */ - public function setPaper($size, string $orientation = "portrait"): self - { - $this->paperSize = $size; - $this->paperOrientation = $orientation; - return $this; - } - - /** - * Gets the paper size - * - * @return float[] A four-element float array - */ - public function getPaperSize(): array - { - $paper = $this->paperSize; - $orientation = $this->paperOrientation; - - if (is_array($paper)) { - $size = array_map("floatval", $paper); - } else { - $paper = strtolower($paper); - $size = CPDF::$PAPER_SIZES[$paper] ?? CPDF::$PAPER_SIZES["letter"]; - } - - if (strtolower($orientation) === "landscape") { - [$size[2], $size[3]] = [$size[3], $size[2]]; - } - - return $size; - } - - /** - * Gets the paper orientation - * - * @return string Either "portrait" or "landscape" - */ - public function getPaperOrientation(): string - { - return $this->paperOrientation; - } - - /** - * @param FrameTree $tree - * @return $this - */ - public function setTree(FrameTree $tree) - { - $this->tree = $tree; - return $this; - } - - /** - * @return FrameTree - * @deprecated - */ - public function get_tree() - { - return $this->getTree(); - } - - /** - * Returns the underlying {@link FrameTree} object - * - * @return FrameTree - */ - public function getTree() - { - return $this->tree; - } - - /** - * @param string $protocol - * @return $this - * @deprecated - */ - public function set_protocol($protocol) - { - return $this->setProtocol($protocol); - } - - /** - * Sets the protocol to use - * FIXME validate these - * - * @param string $protocol - * @return $this - */ - public function setProtocol(string $protocol) - { - $this->protocol = $protocol; - return $this; - } - - /** - * @return string - * @deprecated - */ - public function get_protocol() - { - return $this->getProtocol(); - } - - /** - * Returns the protocol in use - * - * @return string - */ - public function getProtocol() - { - return $this->protocol; - } - - /** - * @param string $host - * @deprecated - */ - public function set_host($host) - { - $this->setBaseHost($host); - } - - /** - * Sets the base hostname - * - * @param string $baseHost - * @return $this - */ - public function setBaseHost(string $baseHost) - { - $this->baseHost = $baseHost; - return $this; - } - - /** - * @return string - * @deprecated - */ - public function get_host() - { - return $this->getBaseHost(); - } - - /** - * Returns the base hostname - * - * @return string - */ - public function getBaseHost() - { - return $this->baseHost; - } - - /** - * Sets the base path - * - * @param string $path - * @deprecated - */ - public function set_base_path($path) - { - $this->setBasePath($path); - } - - /** - * Sets the base path - * - * @param string $basePath - * @return $this - */ - public function setBasePath(string $basePath) - { - $this->basePath = $basePath; - return $this; - } - - /** - * @return string - * @deprecated - */ - public function get_base_path() - { - return $this->getBasePath(); - } - - /** - * Returns the base path - * - * @return string - */ - public function getBasePath() - { - return $this->basePath; - } - - /** - * @param string $default_view The default document view - * @param array $options The view's options - * @return $this - * @deprecated - */ - public function set_default_view($default_view, $options) - { - return $this->setDefaultView($default_view, $options); - } - - /** - * Sets the default view - * - * @param string $defaultView The default document view - * @param array $options The view's options - * @return $this - */ - public function setDefaultView($defaultView, $options) - { - $this->defaultView = $defaultView; - $this->defaultViewOptions = $options; - return $this; - } - - /** - * @param resource $http_context - * @return $this - * @deprecated - */ - public function set_http_context($http_context) - { - return $this->setHttpContext($http_context); - } - - /** - * Sets the HTTP context - * - * @param resource|array $httpContext - * @return $this - */ - public function setHttpContext($httpContext) - { - $this->options->setHttpContext($httpContext); - return $this; - } - - /** - * @return resource - * @deprecated - */ - public function get_http_context() - { - return $this->getHttpContext(); - } - - /** - * Returns the HTTP context - * - * @return resource - */ - public function getHttpContext() - { - return $this->options->getHttpContext(); - } - - /** - * Set a custom `Canvas` instance to render the document to. - * - * Be aware that the instance will be replaced on render if the document - * defines a paper size different from the canvas. - * - * @param Canvas $canvas - * @return $this - */ - public function setCanvas(Canvas $canvas) - { - $this->canvas = $canvas; - return $this; - } - - /** - * @return Canvas - * @deprecated - */ - public function get_canvas() - { - return $this->getCanvas(); - } - - /** - * Return the underlying Canvas instance (e.g. Dompdf\Adapter\CPDF, Dompdf\Adapter\GD) - * - * @return Canvas - */ - public function getCanvas() - { - return $this->canvas; - } - - /** - * @param Stylesheet $css - * @return $this - */ - public function setCss(Stylesheet $css) - { - $this->css = $css; - return $this; - } - - /** - * @return Stylesheet - * @deprecated - */ - public function get_css() - { - return $this->getCss(); - } - - /** - * Returns the stylesheet - * - * @return Stylesheet - */ - public function getCss() - { - return $this->css; - } - - /** - * @param DOMDocument $dom - * @return $this - */ - public function setDom(DOMDocument $dom) - { - $this->dom = $dom; - return $this; - } - - /** - * @return DOMDocument - * @deprecated - */ - public function get_dom() - { - return $this->getDom(); - } - - /** - * @return DOMDocument - */ - public function getDom() - { - return $this->dom; - } - - /** - * @param Options $options - * @return $this - */ - public function setOptions(Options $options) - { - // For backwards compatibility - if ($this->options && $this->options->getHttpContext() && !$options->getHttpContext()) { - $options->setHttpContext($this->options->getHttpContext()); - } - - $this->options = $options; - $fontMetrics = $this->fontMetrics; - if (isset($fontMetrics)) { - $fontMetrics->setOptions($options); - } - return $this; - } - - /** - * @return Options - */ - public function getOptions() - { - return $this->options; - } - - /** - * @return array - * @deprecated - */ - public function get_callbacks() - { - return $this->getCallbacks(); - } - - /** - * Returns the callbacks array - * - * @return array - */ - public function getCallbacks() - { - return $this->callbacks; - } - - /** - * @param array $callbacks the set of callbacks to set - * @return $this - * @deprecated - */ - public function set_callbacks($callbacks) - { - return $this->setCallbacks($callbacks); - } - - /** - * Define callbacks that allow modifying the document during render. - * - * The callbacks array should contain arrays with `event` set to a callback - * event name and `f` set to a function or any other callable. - * - * The available callback events are: - * * `begin_page_reflow`: called before page reflow - * * `begin_frame`: called before a frame is rendered - * * `end_frame`: called after frame rendering is complete - * * `begin_page_render`: called before a page is rendered - * * `end_page_render`: called after page rendering is complete - * * `end_document`: called for every page after rendering is complete - * - * The function `f` receives three arguments `Frame $frame`, `Canvas $canvas`, - * and `FontMetrics $fontMetrics` for all events but `end_document`. For - * `end_document`, the function receives four arguments `int $pageNumber`, - * `int $pageCount`, `Canvas $canvas`, and `FontMetrics $fontMetrics` instead. - * - * @param array $callbacks The set of callbacks to set. - * @return $this - */ - public function setCallbacks(array $callbacks): self - { - $this->callbacks = []; - - foreach ($callbacks as $c) { - if (is_array($c) && isset($c["event"]) && isset($c["f"])) { - $event = $c["event"]; - $f = $c["f"]; - if (is_string($event) && is_callable($f)) { - $this->callbacks[$event][] = $f; - } - } - } - - return $this; - } - - /** - * @return boolean - * @deprecated - */ - public function get_quirksmode() - { - return $this->getQuirksmode(); - } - - /** - * Get the quirks mode - * - * @return boolean true if quirks mode is active - */ - public function getQuirksmode() - { - return $this->quirksmode; - } - - /** - * @param FontMetrics $fontMetrics - * @return $this - */ - public function setFontMetrics(FontMetrics $fontMetrics) - { - $this->fontMetrics = $fontMetrics; - return $this; - } - - /** - * @return FontMetrics - */ - public function getFontMetrics() - { - return $this->fontMetrics; - } - - /** - * PHP5 overloaded getter - * Along with {@link Dompdf::__set()} __get() provides access to all - * properties directly. Typically __get() is not called directly outside - * of this class. - * - * @param string $prop - * - * @throws Exception - * @return mixed - */ - function __get($prop) - { - switch ($prop) { - case 'version': - return $this->version; - default: - throw new Exception('Invalid property: ' . $prop); - } - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Exception.php b/docker/statistics/vendor/dompdf/dompdf/src/Exception.php deleted file mode 100644 index 3a90e477..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Exception.php +++ /dev/null @@ -1,27 +0,0 @@ -setCanvas($canvas); - $this->setOptions($options); - $this->loadFontFamilies(); - } - - /** - * @deprecated - */ - public function save_font_families() - { - $this->saveFontFamilies(); - } - - /** - * Saves the stored font family cache - * - * The name and location of the cache file are determined by {@link - * FontMetrics::USER_FONTS_FILE}. This file should be writable by the - * webserver process. - * - * @see FontMetrics::loadFontFamilies() - */ - public function saveFontFamilies() - { - file_put_contents($this->getUserFontsFilePath(), json_encode($this->userFonts, JSON_PRETTY_PRINT)); - } - - /** - * @deprecated - */ - public function load_font_families() - { - $this->loadFontFamilies(); - } - - /** - * Loads the stored font family cache - * - * @see FontMetrics::saveFontFamilies() - */ - public function loadFontFamilies() - { - $file = $this->options->getRootDir() . "/lib/fonts/installed-fonts.dist.json"; - $this->bundledFonts = json_decode(file_get_contents($file), true); - - if (is_readable($this->getUserFontsFilePath())) { - $this->userFonts = json_decode(file_get_contents($this->getUserFontsFilePath()), true); - } else { - $this->loadFontFamiliesLegacy(); - } - } - - private function loadFontFamiliesLegacy() - { - $legacyCacheFile = $this->options->getFontDir() . '/dompdf_font_family_cache.php'; - if (is_readable($legacyCacheFile)) { - $fontDir = $this->options->getFontDir(); - $rootDir = $this->options->getRootDir(); - - if (!defined("DOMPDF_DIR")) { define("DOMPDF_DIR", $rootDir); } - if (!defined("DOMPDF_FONT_DIR")) { define("DOMPDF_FONT_DIR", $fontDir); } - - $cacheDataClosure = require $legacyCacheFile; - $cacheData = is_array($cacheDataClosure) ? $cacheDataClosure : $cacheDataClosure($fontDir, $rootDir); - if (is_array($cacheData)) { - foreach ($cacheData as $family => $variants) { - if (!isset($this->bundledFonts[$family]) && is_array($variants)) { - foreach ($variants as $variant => $variantPath) { - $variantName = basename($variantPath); - $variantDir = dirname($variantPath); - if ($variantDir == $fontDir) { - $this->userFonts[$family][$variant] = $variantName; - } else { - $this->userFonts[$family][$variant] = $variantPath; - } - } - } - } - $this->saveFontFamilies(); - } - } - } - - /** - * @param array $style - * @param string $remote_file - * @param resource $context - * @return bool - * @deprecated - */ - public function register_font($style, $remote_file, $context = null) - { - return $this->registerFont($style, $remote_file); - } - - /** - * @param array $style - * @param string $remoteFile - * @param resource $context - * @return bool - */ - public function registerFont($style, $remoteFile, $context = null) - { - $fontname = mb_strtolower($style["family"]); - $families = $this->getFontFamilies(); - - $entry = []; - if (isset($families[$fontname])) { - $entry = $families[$fontname]; - } - - $styleString = $this->getType("{$style['weight']} {$style['style']}"); - - $remoteHash = md5($remoteFile); - - $prefix = $fontname . "_" . $styleString; - $prefix = trim($prefix, "-"); - if (function_exists('iconv')) { - $prefix = @iconv('utf-8', 'us-ascii//TRANSLIT', $prefix); - } - $prefix_encoding = mb_detect_encoding($prefix, mb_detect_order(), true); - $substchar = mb_substitute_character(); - mb_substitute_character(0x005F); - $prefix = mb_convert_encoding($prefix, "ISO-8859-1", $prefix_encoding); - mb_substitute_character($substchar); - $prefix = preg_replace("[\W]", "_", $prefix); - $prefix = preg_replace("/[^-_\w]+/", "", $prefix); - - $localFile = $prefix . "_" . $remoteHash; - $localFilePath = $this->getOptions()->getFontDir() . "/" . $localFile; - - if (isset($entry[$styleString]) && $localFilePath == $entry[$styleString]) { - return true; - } - - - $entry[$styleString] = $localFile; - - // Download the remote file - [$protocol] = Helpers::explode_url($remoteFile); - $allowed_protocols = $this->options->getAllowedProtocols(); - if (!array_key_exists($protocol, $allowed_protocols)) { - Helpers::record_warnings(E_USER_WARNING, "Permission denied on $remoteFile. The communication protocol is not supported.", __FILE__, __LINE__); - return false; - } - - foreach ($allowed_protocols[$protocol]["rules"] as $rule) { - [$result, $message] = $rule($remoteFile); - if ($result !== true) { - Helpers::record_warnings(E_USER_WARNING, "Error loading $remoteFile: $message", __FILE__, __LINE__); - return false; - } - } - - list($remoteFileContent, $http_response_header) = @Helpers::getFileContent($remoteFile, $context); - if ($remoteFileContent === null) { - return false; - } - - $localTempFile = @tempnam($this->options->get("tempDir"), "dompdf-font-"); - file_put_contents($localTempFile, $remoteFileContent); - - $font = Font::load($localTempFile); - - if (!$font) { - unlink($localTempFile); - return false; - } - - $font->parse(); - $font->saveAdobeFontMetrics("$localFilePath.ufm"); - $font->close(); - - unlink($localTempFile); - - if ( !file_exists("$localFilePath.ufm") ) { - return false; - } - - $fontExtension = ".ttf"; - switch ($font->getFontType()) { - case "TrueType": - default: - $fontExtension = ".ttf"; - break; - } - - // Save the changes - file_put_contents($localFilePath.$fontExtension, $remoteFileContent); - - if ( !file_exists($localFilePath.$fontExtension) ) { - unlink("$localFilePath.ufm"); - return false; - } - - $this->setFontFamily($fontname, $entry); - - return true; - } - - /** - * @param $text - * @param $font - * @param $size - * @param float $word_spacing - * @param float $char_spacing - * @return float - * @deprecated - */ - public function get_text_width($text, $font, $size, $word_spacing = 0.0, $char_spacing = 0.0) - { - //return self::$_pdf->get_text_width($text, $font, $size, $word_spacing, $char_spacing); - return $this->getTextWidth($text, $font, $size, $word_spacing, $char_spacing); - } - - /** - * Calculates text size, in points - * - * @param string $text The text to be sized - * @param string $font The font file to use - * @param float $size The font size, in points - * @param float $wordSpacing Word spacing, if any - * @param float $charSpacing Char spacing, if any - * - * @return float - */ - public function getTextWidth(string $text, $font, float $size, float $wordSpacing = 0.0, float $charSpacing = 0.0): float - { - // @todo Make sure this cache is efficient before enabling it - static $cache = []; - - if ($text === "") { - return 0; - } - - // Don't cache long strings - $useCache = !isset($text[50]); // Faster than strlen - - // Text-size calculations depend on the canvas used. Make sure to not - // return wrong values when switching canvas backends - $canvasClass = get_class($this->canvas); - $key = "$canvasClass/$font/$size/$wordSpacing/$charSpacing"; - - if ($useCache && isset($cache[$key][$text])) { - return $cache[$key][$text]; - } - - $width = $this->canvas->get_text_width($text, $font, $size, $wordSpacing, $charSpacing); - - if ($useCache) { - $cache[$key][$text] = $width; - } - - return $width; - } - - /** - * @param $font - * @param $size - * @return float - * @deprecated - */ - public function get_font_height($font, $size) - { - return $this->getFontHeight($font, $size); - } - - /** - * Calculates font height, in points - * - * @param string $font The font file to use - * @param float $size The font size, in points - * - * @return float - */ - public function getFontHeight($font, float $size): float - { - return $this->canvas->get_font_height($font, $size); - } - - /** - * Calculates font baseline, in points - * - * @param string $font The font file to use - * @param float $size The font size, in points - * - * @return float - */ - public function getFontBaseline($font, float $size): float - { - return $this->canvas->get_font_baseline($font, $size); - } - - /** - * @param $family_raw - * @param string $subtype_raw - * @return string - * @deprecated - */ - public function get_font($family_raw, $subtype_raw = "normal") - { - return $this->getFont($family_raw, $subtype_raw); - } - - /** - * Resolves a font family & subtype into an actual font file - * Subtype can be one of 'normal', 'bold', 'italic' or 'bold_italic'. If - * the particular font family has no suitable font file, the default font - * ({@link Options::defaultFont}) is used. The font file returned - * is the absolute pathname to the font file on the system. - * - * @param string|null $familyRaw - * @param string $subtypeRaw - * - * @return string|null - */ - public function getFont($familyRaw, $subtypeRaw = "normal") - { - static $cache = []; - - if (isset($cache[$familyRaw][$subtypeRaw])) { - return $cache[$familyRaw][$subtypeRaw]; - } - - /* Allow calling for various fonts in search path. Therefore not immediately - * return replacement on non match. - * Only when called with NULL try replacement. - * When this is also missing there is really trouble. - * If only the subtype fails, nevertheless return failure. - * Only on checking the fallback font, check various subtypes on same font. - */ - - $subtype = strtolower($subtypeRaw); - - $families = $this->getFontFamilies(); - if ($familyRaw) { - $family = str_replace(["'", '"'], "", strtolower($familyRaw)); - - if (isset($families[$family][$subtype])) { - return $cache[$familyRaw][$subtypeRaw] = $families[$family][$subtype]; - } - - return null; - } - - $fallback_families = [strtolower($this->options->getDefaultFont()), "serif"]; - foreach ($fallback_families as $family) { - if (isset($families[$family][$subtype])) { - return $cache[$familyRaw][$subtypeRaw] = $families[$family][$subtype]; - } - - if (!isset($families[$family])) { - continue; - } - - $family = $families[$family]; - - foreach ($family as $sub => $font) { - if (strpos($subtype, $sub) !== false) { - return $cache[$familyRaw][$subtypeRaw] = $font; - } - } - - if ($subtype !== "normal") { - foreach ($family as $sub => $font) { - if ($sub !== "normal") { - return $cache[$familyRaw][$subtypeRaw] = $font; - } - } - } - - $subtype = "normal"; - - if (isset($family[$subtype])) { - return $cache[$familyRaw][$subtypeRaw] = $family[$subtype]; - } - } - - return null; - } - - /** - * @param $family - * @return null|string - * @deprecated - */ - public function get_family($family) - { - return $this->getFamily($family); - } - - /** - * @param string $family - * @return null|string - */ - public function getFamily($family) - { - $family = str_replace(["'", '"'], "", mb_strtolower($family)); - $families = $this->getFontFamilies(); - - if (isset($families[$family])) { - return $families[$family]; - } - - return null; - } - - /** - * @param $type - * @return string - * @deprecated - */ - public function get_type($type) - { - return $this->getType($type); - } - - /** - * @param string $type - * @return string - */ - public function getType($type) - { - if (preg_match('/bold/i', $type)) { - $weight = 700; - } elseif (preg_match('/([1-9]00)/', $type, $match)) { - $weight = (int)$match[0]; - } else { - $weight = 400; - } - $weight = $weight === 400 ? 'normal' : $weight; - $weight = $weight === 700 ? 'bold' : $weight; - - $style = preg_match('/italic|oblique/i', $type) ? 'italic' : null; - - if ($weight === 'normal' && $style !== null) { - return $style; - } - - return $style === null - ? $weight - : $weight.'_'.$style; - } - - /** - * @return array - * @deprecated - */ - public function get_font_families() - { - return $this->getFontFamilies(); - } - - /** - * Returns the current font lookup table - * - * @return array - */ - public function getFontFamilies() - { - if (!isset($this->fontFamilies)) { - $this->setFontFamilies(); - } - return $this->fontFamilies; - } - - /** - * Convert loaded fonts to font lookup table - * - * @return array - */ - public function setFontFamilies() - { - $fontFamilies = []; - if (isset($this->bundledFonts) && is_array($this->bundledFonts)) { - foreach ($this->bundledFonts as $family => $variants) { - if (!isset($fontFamilies[$family])) { - $fontFamilies[$family] = array_map(function ($variant) { - return $this->getOptions()->getRootDir() . '/lib/fonts/' . $variant; - }, $variants); - } - } - } - if (isset($this->userFonts) && is_array($this->userFonts)) { - foreach ($this->userFonts as $family => $variants) { - $fontFamilies[$family] = array_map(function ($variant) { - $variantName = basename($variant); - if ($variantName === $variant) { - return $this->getOptions()->getFontDir() . '/' . $variant; - } - return $variant; - }, $variants); - } - } - $this->fontFamilies = $fontFamilies; - } - - /** - * @param string $fontname - * @param mixed $entry - * @deprecated - */ - public function set_font_family($fontname, $entry) - { - $this->setFontFamily($fontname, $entry); - } - - /** - * @param string $fontname - * @param mixed $entry - */ - public function setFontFamily($fontname, $entry) - { - $this->userFonts[mb_strtolower($fontname)] = $entry; - $this->saveFontFamilies(); - unset($this->fontFamilies); - } - - /** - * @return string - */ - public function getUserFontsFilePath() - { - return $this->options->getFontDir() . '/' . self::USER_FONTS_FILE; - } - - /** - * @param Options $options - * @return $this - */ - public function setOptions(Options $options) - { - $this->options = $options; - unset($this->fontFamilies); - return $this; - } - - /** - * @return Options - */ - public function getOptions() - { - return $this->options; - } - - /** - * @param Canvas $canvas - * @return $this - */ - public function setCanvas(Canvas $canvas) - { - $this->canvas = $canvas; - return $this; - } - - /** - * @return Canvas - */ - public function getCanvas() - { - return $this->canvas; - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Frame.php b/docker/statistics/vendor/dompdf/dompdf/src/Frame.php deleted file mode 100644 index 55136b22..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Frame.php +++ /dev/null @@ -1,1217 +0,0 @@ -_node = $node; - - $this->_parent = null; - $this->_first_child = null; - $this->_last_child = null; - $this->_prev_sibling = $this->_next_sibling = null; - - $this->_style = null; - - $this->_containing_block = [ - "x" => null, - "y" => null, - "w" => null, - "h" => null, - ]; - - $this->_containing_block[0] =& $this->_containing_block["x"]; - $this->_containing_block[1] =& $this->_containing_block["y"]; - $this->_containing_block[2] =& $this->_containing_block["w"]; - $this->_containing_block[3] =& $this->_containing_block["h"]; - - $this->_position = [ - "x" => null, - "y" => null, - ]; - - $this->_position[0] =& $this->_position["x"]; - $this->_position[1] =& $this->_position["y"]; - - $this->_opacity = 1.0; - $this->_decorator = null; - - $this->set_id(self::$ID_COUNTER++); - } - - /** - * WIP : preprocessing to remove all the unused whitespace - */ - protected function ws_trim() - { - if ($this->ws_keep()) { - return; - } - - if (self::$_ws_state === self::WS_SPACE) { - $node = $this->_node; - - if ($node->nodeName === "#text" && !empty($node->nodeValue)) { - $node->nodeValue = preg_replace("/[ \t\r\n\f]+/u", " ", trim($node->nodeValue)); - self::$_ws_state = self::WS_TEXT; - } - } - } - - /** - * @return bool - */ - protected function ws_keep() - { - $whitespace = $this->get_style()->white_space; - - return in_array($whitespace, ["pre", "pre-wrap", "pre-line"]); - } - - /** - * @return bool - */ - protected function ws_is_text() - { - $node = $this->get_node(); - - if ($node->nodeName === "img") { - return true; - } - - if (!$this->is_in_flow()) { - return false; - } - - if ($this->is_text_node()) { - return trim($node->nodeValue) !== ""; - } - - return true; - } - - /** - * "Destructor": forcibly free all references held by this frame - * - * @param bool $recursive if true, call dispose on all children - */ - public function dispose($recursive = false) - { - if ($recursive) { - while ($child = $this->_first_child) { - $child->dispose(true); - } - } - - // Remove this frame from the tree - if ($this->_prev_sibling) { - $this->_prev_sibling->_next_sibling = $this->_next_sibling; - } - - if ($this->_next_sibling) { - $this->_next_sibling->_prev_sibling = $this->_prev_sibling; - } - - if ($this->_parent && $this->_parent->_first_child === $this) { - $this->_parent->_first_child = $this->_next_sibling; - } - - if ($this->_parent && $this->_parent->_last_child === $this) { - $this->_parent->_last_child = $this->_prev_sibling; - } - - if ($this->_parent) { - $this->_parent->get_node()->removeChild($this->_node); - } - - $this->_style = null; - unset($this->_style); - } - - /** - * Re-initialize the frame - */ - public function reset() - { - $this->_position["x"] = null; - $this->_position["y"] = null; - - $this->_containing_block["x"] = null; - $this->_containing_block["y"] = null; - $this->_containing_block["w"] = null; - $this->_containing_block["h"] = null; - - $this->_style->reset(); - } - - /** - * @return \DOMElement|\DOMText - */ - public function get_node() - { - return $this->_node; - } - - /** - * @return int - */ - public function get_id() - { - return $this->_id; - } - - /** - * @return Style - */ - public function get_style() - { - return $this->_style; - } - - /** - * @deprecated - * @return Style - */ - public function get_original_style() - { - return $this->_style; - } - - /** - * @return Frame - */ - public function get_parent() - { - return $this->_parent; - } - - /** - * @return FrameDecorator\AbstractFrameDecorator - */ - public function get_decorator() - { - return $this->_decorator; - } - - /** - * @return Frame - */ - public function get_first_child() - { - return $this->_first_child; - } - - /** - * @return Frame - */ - public function get_last_child() - { - return $this->_last_child; - } - - /** - * @return Frame - */ - public function get_prev_sibling() - { - return $this->_prev_sibling; - } - - /** - * @return Frame - */ - public function get_next_sibling() - { - return $this->_next_sibling; - } - - /** - * @return FrameListIterator - */ - public function get_children(): FrameListIterator - { - return new FrameListIterator($this); - } - - // Layout property accessors - - /** - * Containing block dimensions - * - * @param string|null $i The key of the wanted containing block's dimension (x, y, w, h) - * - * @return float[]|float - */ - public function get_containing_block($i = null) - { - if (isset($i)) { - return $this->_containing_block[$i]; - } - - return $this->_containing_block; - } - - /** - * Block position - * - * @param string|null $i The key of the wanted position value (x, y) - * - * @return float[]|float - */ - public function get_position($i = null) - { - if (isset($i)) { - return $this->_position[$i]; - } - - return $this->_position; - } - - //........................................................................ - - /** - * Return the width of the margin box of the frame, in pt. Meaningless - * unless the width has been calculated properly. - * - * @return float - */ - public function get_margin_width(): float - { - $style = $this->_style; - - return (float)$style->length_in_pt([ - $style->width, - $style->margin_left, - $style->margin_right, - $style->border_left_width, - $style->border_right_width, - $style->padding_left, - $style->padding_right - ], $this->_containing_block["w"]); - } - - /** - * Return the height of the margin box of the frame, in pt. Meaningless - * unless the height has been calculated properly. - * - * @return float - */ - public function get_margin_height(): float - { - $style = $this->_style; - - return (float)$style->length_in_pt( - [ - $style->height, - (float)$style->length_in_pt( - [ - $style->border_top_width, - $style->border_bottom_width, - $style->margin_top, - $style->margin_bottom, - $style->padding_top, - $style->padding_bottom - ], $this->_containing_block["w"] - ) - ], - $this->_containing_block["h"] - ); - } - - /** - * Return the content box (x,y,w,h) of the frame. - * - * Width and height might be reported as 0 if they have not been resolved - * yet. - * - * @return float[] - */ - public function get_content_box(): array - { - $style = $this->_style; - $cb = $this->_containing_block; - - $x = $this->_position["x"] + - (float)$style->length_in_pt( - [ - $style->margin_left, - $style->border_left_width, - $style->padding_left - ], - $cb["w"] - ); - - $y = $this->_position["y"] + - (float)$style->length_in_pt( - [ - $style->margin_top, - $style->border_top_width, - $style->padding_top - ], $cb["w"] - ); - - $w = (float)$style->length_in_pt($style->width, $cb["w"]); - - $h = (float)$style->length_in_pt($style->height, $cb["h"]); - - return [0 => $x, "x" => $x, - 1 => $y, "y" => $y, - 2 => $w, "w" => $w, - 3 => $h, "h" => $h]; - } - - /** - * Return the padding box (x,y,w,h) of the frame. - * - * Width and height might be reported as 0 if they have not been resolved - * yet. - * - * @return float[] - */ - public function get_padding_box(): array - { - $style = $this->_style; - $cb = $this->_containing_block; - - $x = $this->_position["x"] + - (float)$style->length_in_pt( - [ - $style->margin_left, - $style->border_left_width - ], - $cb["w"] - ); - - $y = $this->_position["y"] + - (float)$style->length_in_pt( - [ - $style->margin_top, - $style->border_top_width - ], - $cb["h"] - ); - - $w = (float)$style->length_in_pt( - [ - $style->padding_left, - $style->width, - $style->padding_right - ], - $cb["w"] - ); - - $h = (float)$style->length_in_pt( - [ - $style->padding_top, - $style->padding_bottom, - $style->length_in_pt($style->height, $cb["h"]) - ], - $cb["w"] - ); - - return [0 => $x, "x" => $x, - 1 => $y, "y" => $y, - 2 => $w, "w" => $w, - 3 => $h, "h" => $h]; - } - - /** - * Return the border box of the frame. - * - * Width and height might be reported as 0 if they have not been resolved - * yet. - * - * @return float[] - */ - public function get_border_box(): array - { - $style = $this->_style; - $cb = $this->_containing_block; - - $x = $this->_position["x"] + (float)$style->length_in_pt($style->margin_left, $cb["w"]); - - $y = $this->_position["y"] + (float)$style->length_in_pt($style->margin_top, $cb["w"]); - - $w = (float)$style->length_in_pt( - [ - $style->border_left_width, - $style->padding_left, - $style->width, - $style->padding_right, - $style->border_right_width - ], - $cb["w"] - ); - - $h = (float)$style->length_in_pt( - [ - $style->border_top_width, - $style->padding_top, - $style->padding_bottom, - $style->border_bottom_width, - $style->length_in_pt($style->height, $cb["h"]) - ], - $cb["w"] - ); - - return [0 => $x, "x" => $x, - 1 => $y, "y" => $y, - 2 => $w, "w" => $w, - 3 => $h, "h" => $h]; - } - - /** - * @param float|null $opacity - * - * @return float - */ - public function get_opacity(?float $opacity = null): float - { - if ($opacity !== null) { - $this->set_opacity($opacity); - } - - return $this->_opacity; - } - - /** - * @return LineBox|null - */ - public function &get_containing_line() - { - return $this->_containing_line; - } - - //........................................................................ - // Set methods - - /** - * @param int $id - */ - public function set_id($id) - { - $this->_id = $id; - - // We can only set attributes of DOMElement objects (nodeType == 1). - // Since these are the only objects that we can assign CSS rules to, - // this shortcoming is okay. - if ($this->_node->nodeType == XML_ELEMENT_NODE) { - $this->_node->setAttribute("frame_id", $id); - } - } - - /** - * @param Style $style - */ - public function set_style(Style $style): void - { - // $style->set_frame($this); - $this->_style = $style; - } - - /** - * @param FrameDecorator\AbstractFrameDecorator $decorator - */ - public function set_decorator(FrameDecorator\AbstractFrameDecorator $decorator) - { - $this->_decorator = $decorator; - } - - /** - * @param float|float[]|null $x - * @param float|null $y - * @param float|null $w - * @param float|null $h - */ - public function set_containing_block($x = null, $y = null, $w = null, $h = null) - { - if (is_array($x)) { - foreach ($x as $key => $val) { - $$key = $val; - } - } - - if (is_numeric($x)) { - $this->_containing_block["x"] = $x; - } - - if (is_numeric($y)) { - $this->_containing_block["y"] = $y; - } - - if (is_numeric($w)) { - $this->_containing_block["w"] = $w; - } - - if (is_numeric($h)) { - $this->_containing_block["h"] = $h; - } - } - - /** - * @param float|float[]|null $x - * @param float|null $y - */ - public function set_position($x = null, $y = null) - { - if (is_array($x)) { - list($x, $y) = [$x["x"], $x["y"]]; - } - - if (is_numeric($x)) { - $this->_position["x"] = $x; - } - - if (is_numeric($y)) { - $this->_position["y"] = $y; - } - } - - /** - * @param float $opacity - */ - public function set_opacity(float $opacity): void - { - $parent = $this->get_parent(); - $base_opacity = $parent && $parent->_opacity !== null ? $parent->_opacity : 1.0; - $this->_opacity = $base_opacity * $opacity; - } - - /** - * @param LineBox $line - */ - public function set_containing_line(LineBox $line) - { - $this->_containing_line = $line; - } - - /** - * Indicates if the margin height is auto sized - * - * @return bool - */ - public function is_auto_height() - { - $style = $this->_style; - - return in_array( - "auto", - [ - $style->height, - $style->margin_top, - $style->margin_bottom, - $style->border_top_width, - $style->border_bottom_width, - $style->padding_top, - $style->padding_bottom, - $this->_containing_block["h"] - ], - true - ); - } - - /** - * Indicates if the margin width is auto sized - * - * @return bool - */ - public function is_auto_width() - { - $style = $this->_style; - - return in_array( - "auto", - [ - $style->width, - $style->margin_left, - $style->margin_right, - $style->border_left_width, - $style->border_right_width, - $style->padding_left, - $style->padding_right, - $this->_containing_block["w"] - ], - true - ); - } - - /** - * Tells if the frame is a text node - * - * @return bool - */ - public function is_text_node(): bool - { - if (isset($this->_is_cache["text_node"])) { - return $this->_is_cache["text_node"]; - } - - return $this->_is_cache["text_node"] = ($this->get_node()->nodeName === "#text"); - } - - /** - * @return bool - */ - public function is_positioned(): bool - { - if (isset($this->_is_cache["positioned"])) { - return $this->_is_cache["positioned"]; - } - - $position = $this->get_style()->position; - - return $this->_is_cache["positioned"] = in_array($position, Style::POSITIONED_TYPES, true); - } - - /** - * @return bool - */ - public function is_absolute(): bool - { - if (isset($this->_is_cache["absolute"])) { - return $this->_is_cache["absolute"]; - } - - return $this->_is_cache["absolute"] = $this->get_style()->is_absolute(); - } - - /** - * Whether the frame is a block container. - * - * @return bool - */ - public function is_block(): bool - { - if (isset($this->_is_cache["block"])) { - return $this->_is_cache["block"]; - } - - return $this->_is_cache["block"] = in_array($this->get_style()->display, Style::BLOCK_TYPES, true); - } - - /** - * Whether the frame has a block-level display type. - * - * @return bool - */ - public function is_block_level(): bool - { - if (isset($this->_is_cache["block_level"])) { - return $this->_is_cache["block_level"]; - } - - $display = $this->get_style()->display; - - return $this->_is_cache["block_level"] = in_array($display, Style::BLOCK_LEVEL_TYPES, true); - } - - /** - * Whether the frame has an inline-level display type. - * - * @return bool - */ - public function is_inline_level(): bool - { - if (isset($this->_is_cache["inline_level"])) { - return $this->_is_cache["inline_level"]; - } - - $display = $this->get_style()->display; - - return $this->_is_cache["inline_level"] = in_array($display, Style::INLINE_LEVEL_TYPES, true); - } - - /** - * @return bool - */ - public function is_in_flow(): bool - { - if (isset($this->_is_cache["in_flow"])) { - return $this->_is_cache["in_flow"]; - } - - return $this->_is_cache["in_flow"] = $this->get_style()->is_in_flow(); - } - - /** - * @return bool - */ - public function is_pre(): bool - { - if (isset($this->_is_cache["pre"])) { - return $this->_is_cache["pre"]; - } - - $white_space = $this->get_style()->white_space; - - return $this->_is_cache["pre"] = in_array($white_space, ["pre", "pre-wrap"], true); - } - - /** - * @return bool - */ - public function is_table(): bool - { - if (isset($this->_is_cache["table"])) { - return $this->_is_cache["table"]; - } - - $display = $this->get_style()->display; - - return $this->_is_cache["table"] = in_array($display, Style::TABLE_TYPES, true); - } - - - /** - * Inserts a new child at the beginning of the Frame - * - * @param Frame $child The new Frame to insert - * @param bool $update_node Whether or not to update the DOM - */ - public function prepend_child(Frame $child, $update_node = true) - { - if ($update_node) { - $this->_node->insertBefore($child->_node, $this->_first_child ? $this->_first_child->_node : null); - } - - // Remove the child from its parent - if ($child->_parent) { - $child->_parent->remove_child($child, false); - } - - $child->_parent = $this; - $child->_prev_sibling = null; - - // Handle the first child - if (!$this->_first_child) { - $this->_first_child = $child; - $this->_last_child = $child; - $child->_next_sibling = null; - } else { - $this->_first_child->_prev_sibling = $child; - $child->_next_sibling = $this->_first_child; - $this->_first_child = $child; - } - } - - /** - * Inserts a new child at the end of the Frame - * - * @param Frame $child The new Frame to insert - * @param bool $update_node Whether or not to update the DOM - */ - public function append_child(Frame $child, $update_node = true) - { - if ($update_node) { - $this->_node->appendChild($child->_node); - } - - // Remove the child from its parent - if ($child->_parent) { - $child->_parent->remove_child($child, false); - } - - $child->_parent = $this; - $decorator = $child->get_decorator(); - // force an update to the cached parent - if ($decorator !== null) { - $decorator->get_parent(false); - } - $child->_next_sibling = null; - - // Handle the first child - if (!$this->_last_child) { - $this->_first_child = $child; - $this->_last_child = $child; - $child->_prev_sibling = null; - } else { - $this->_last_child->_next_sibling = $child; - $child->_prev_sibling = $this->_last_child; - $this->_last_child = $child; - } - } - - /** - * Inserts a new child immediately before the specified frame - * - * @param Frame $new_child The new Frame to insert - * @param Frame $ref The Frame after the new Frame - * @param bool $update_node Whether or not to update the DOM - * - * @throws Exception - */ - public function insert_child_before(Frame $new_child, Frame $ref, $update_node = true) - { - if ($ref === $this->_first_child) { - $this->prepend_child($new_child, $update_node); - - return; - } - - if (is_null($ref)) { - $this->append_child($new_child, $update_node); - - return; - } - - if ($ref->_parent !== $this) { - throw new Exception("Reference child is not a child of this node."); - } - - // Update the node - if ($update_node) { - $this->_node->insertBefore($new_child->_node, $ref->_node); - } - - // Remove the child from its parent - if ($new_child->_parent) { - $new_child->_parent->remove_child($new_child, false); - } - - $new_child->_parent = $this; - $new_child->_next_sibling = $ref; - $new_child->_prev_sibling = $ref->_prev_sibling; - - if ($ref->_prev_sibling) { - $ref->_prev_sibling->_next_sibling = $new_child; - } - - $ref->_prev_sibling = $new_child; - } - - /** - * Inserts a new child immediately after the specified frame - * - * @param Frame $new_child The new Frame to insert - * @param Frame $ref The Frame before the new Frame - * @param bool $update_node Whether or not to update the DOM - * - * @throws Exception - */ - public function insert_child_after(Frame $new_child, Frame $ref, $update_node = true) - { - if ($ref === $this->_last_child) { - $this->append_child($new_child, $update_node); - - return; - } - - if (is_null($ref)) { - $this->prepend_child($new_child, $update_node); - - return; - } - - if ($ref->_parent !== $this) { - throw new Exception("Reference child is not a child of this node."); - } - - // Update the node - if ($update_node) { - if ($ref->_next_sibling) { - $next_node = $ref->_next_sibling->_node; - $this->_node->insertBefore($new_child->_node, $next_node); - } else { - $new_child->_node = $this->_node->appendChild($new_child->_node); - } - } - - // Remove the child from its parent - if ($new_child->_parent) { - $new_child->_parent->remove_child($new_child, false); - } - - $new_child->_parent = $this; - $new_child->_prev_sibling = $ref; - $new_child->_next_sibling = $ref->_next_sibling; - - if ($ref->_next_sibling) { - $ref->_next_sibling->_prev_sibling = $new_child; - } - - $ref->_next_sibling = $new_child; - } - - /** - * Remove a child frame - * - * @param Frame $child - * @param bool $update_node Whether or not to remove the DOM node - * - * @throws Exception - * @return Frame The removed child frame - */ - public function remove_child(Frame $child, $update_node = true) - { - if ($child->_parent !== $this) { - throw new Exception("Child not found in this frame"); - } - - if ($update_node) { - $this->_node->removeChild($child->_node); - } - - if ($child === $this->_first_child) { - $this->_first_child = $child->_next_sibling; - } - - if ($child === $this->_last_child) { - $this->_last_child = $child->_prev_sibling; - } - - if ($child->_prev_sibling) { - $child->_prev_sibling->_next_sibling = $child->_next_sibling; - } - - if ($child->_next_sibling) { - $child->_next_sibling->_prev_sibling = $child->_prev_sibling; - } - - $child->_next_sibling = null; - $child->_prev_sibling = null; - $child->_parent = null; - - return $child; - } - - //........................................................................ - - // Debugging function: - /** - * @return string - */ - public function __toString() - { - // Skip empty text frames -// if ( $this->is_text_node() && -// preg_replace("/\s/", "", $this->_node->data) === "" ) -// return ""; - - - $str = "" . $this->_node->nodeName . ":
    "; - //$str .= spl_object_hash($this->_node) . "
    "; - $str .= "Id: " . $this->get_id() . "
    "; - $str .= "Class: " . get_class($this) . "
    "; - - if ($this->is_text_node()) { - $tmp = htmlspecialchars($this->_node->nodeValue); - $str .= "
    '" . mb_substr($tmp, 0, 70) .
    -                (mb_strlen($tmp) > 70 ? "..." : "") . "'
    "; - } elseif ($css_class = $this->_node->getAttribute("class")) { - $str .= "CSS class: '$css_class'
    "; - } - - if ($this->_parent) { - $str .= "\nParent:" . $this->_parent->_node->nodeName . - " (" . spl_object_hash($this->_parent->_node) . ") " . - "
    "; - } - - if ($this->_prev_sibling) { - $str .= "Prev: " . $this->_prev_sibling->_node->nodeName . - " (" . spl_object_hash($this->_prev_sibling->_node) . ") " . - "
    "; - } - - if ($this->_next_sibling) { - $str .= "Next: " . $this->_next_sibling->_node->nodeName . - " (" . spl_object_hash($this->_next_sibling->_node) . ") " . - "
    "; - } - - $d = $this->get_decorator(); - while ($d && $d != $d->get_decorator()) { - $str .= "Decorator: " . get_class($d) . "
    "; - $d = $d->get_decorator(); - } - - $str .= "Position: " . Helpers::pre_r($this->_position, true); - $str .= "\nContaining block: " . Helpers::pre_r($this->_containing_block, true); - $str .= "\nMargin width: " . Helpers::pre_r($this->get_margin_width(), true); - $str .= "\nMargin height: " . Helpers::pre_r($this->get_margin_height(), true); - - $str .= "\nStyle:
    " . $this->_style->__toString() . "
    "; - - if ($this->_decorator instanceof FrameDecorator\Block) { - $str .= "Lines:
    ";
    -            foreach ($this->_decorator->get_line_boxes() as $line) {
    -                foreach ($line->get_frames() as $frame) {
    -                    if ($frame instanceof FrameDecorator\Text) {
    -                        $str .= "\ntext: ";
    -                        $str .= "'" . htmlspecialchars($frame->get_text()) . "'";
    -                    } else {
    -                        $str .= "\nBlock: " . $frame->get_node()->nodeName . " (" . spl_object_hash($frame->get_node()) . ")";
    -                    }
    -                }
    -
    -                $str .=
    -                    "\ny => " . $line->y . "\n" .
    -                    "w => " . $line->w . "\n" .
    -                    "h => " . $line->h . "\n" .
    -                    "left => " . $line->left . "\n" .
    -                    "right => " . $line->right . "\n";
    -            }
    -            $str .= "
    "; - } - - $str .= "\n"; - if (php_sapi_name() === "cli") { - $str = strip_tags(str_replace(["
    ", "", ""], - ["\n", "", ""], - $str)); - } - - return $str; - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Frame/Factory.php b/docker/statistics/vendor/dompdf/dompdf/src/Frame/Factory.php deleted file mode 100644 index be39ff34..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Frame/Factory.php +++ /dev/null @@ -1,262 +0,0 @@ -set_reflower(new PageFrameReflower($frame)); - $root->set_decorator($frame); - - return $frame; - } - - /** - * Decorate a Frame - * - * @param Frame $frame The frame to decorate - * @param Dompdf $dompdf The dompdf instance - * @param Frame|null $root The root of the frame - * - * @throws Exception - * @return AbstractFrameDecorator|null - * FIXME: this is admittedly a little smelly... - */ - public static function decorate_frame(Frame $frame, Dompdf $dompdf, ?Frame $root = null): ?AbstractFrameDecorator - { - $style = $frame->get_style(); - $display = $style->display; - - switch ($display) { - - case "block": - $positioner = "Block"; - $decorator = "Block"; - $reflower = "Block"; - break; - - case "inline-block": - $positioner = "Inline"; - $decorator = "Block"; - $reflower = "Block"; - break; - - case "inline": - $positioner = "Inline"; - if ($frame->is_text_node()) { - $decorator = "Text"; - $reflower = "Text"; - } else { - $decorator = "Inline"; - $reflower = "Inline"; - } - break; - - case "table": - $positioner = "Block"; - $decorator = "Table"; - $reflower = "Table"; - break; - - case "inline-table": - $positioner = "Inline"; - $decorator = "Table"; - $reflower = "Table"; - break; - - case "table-row-group": - case "table-header-group": - case "table-footer-group": - $positioner = "NullPositioner"; - $decorator = "TableRowGroup"; - $reflower = "TableRowGroup"; - break; - - case "table-row": - $positioner = "NullPositioner"; - $decorator = "TableRow"; - $reflower = "TableRow"; - break; - - case "table-cell": - $positioner = "TableCell"; - $decorator = "TableCell"; - $reflower = "TableCell"; - break; - - case "list-item": - $positioner = "Block"; - $decorator = "Block"; - $reflower = "Block"; - break; - - case "-dompdf-list-bullet": - if ($style->list_style_position === "inside") { - $positioner = "Inline"; - } else { - $positioner = "ListBullet"; - } - - if ($style->list_style_image !== "none") { - $decorator = "ListBulletImage"; - } else { - $decorator = "ListBullet"; - } - - $reflower = "ListBullet"; - break; - - case "-dompdf-image": - $positioner = "Inline"; - $decorator = "Image"; - $reflower = "Image"; - break; - - case "-dompdf-br": - $positioner = "Inline"; - $decorator = "Inline"; - $reflower = "Inline"; - break; - - default: - case "none": - if ($style->_dompdf_keep !== "yes") { - // Remove the node and the frame - $frame->get_parent()->remove_child($frame); - return null; - } - - $positioner = "NullPositioner"; - $decorator = "NullFrameDecorator"; - $reflower = "NullFrameReflower"; - break; - } - - // Handle CSS position - $position = $style->position; - - if ($position === "absolute") { - $positioner = "Absolute"; - } elseif ($position === "fixed") { - $positioner = "Fixed"; - } - - $node = $frame->get_node(); - - // Handle nodeName - if ($node->nodeName === "img") { - $style->set_prop("display", "-dompdf-image"); - $decorator = "Image"; - $reflower = "Image"; - } - - $decorator = "Dompdf\\FrameDecorator\\$decorator"; - $reflower = "Dompdf\\FrameReflower\\$reflower"; - - /** @var AbstractFrameDecorator $deco */ - $deco = new $decorator($frame, $dompdf); - - $deco->set_positioner(self::getPositionerInstance($positioner)); - $deco->set_reflower(new $reflower($deco, $dompdf->getFontMetrics())); - - if ($root) { - $deco->set_root($root); - } - - if ($display === "list-item") { - // Insert a list-bullet frame - $xml = $dompdf->getDom(); - $bullet_node = $xml->createElement("bullet"); // arbitrary choice - $b_f = new Frame($bullet_node); - - $node = $frame->get_node(); - $parent_node = $node->parentNode; - if ($parent_node && $parent_node instanceof \DOMElement) { - if (!$parent_node->hasAttribute("dompdf-children-count")) { - $xpath = new DOMXPath($xml); - $count = $xpath->query("li", $parent_node)->length; - $parent_node->setAttribute("dompdf-children-count", $count); - } - - if (is_numeric($node->getAttribute("value"))) { - $index = intval($node->getAttribute("value")); - } else { - if (!$parent_node->hasAttribute("dompdf-counter")) { - $index = ($parent_node->hasAttribute("start") ? $parent_node->getAttribute("start") : 1); - } else { - $index = (int)$parent_node->getAttribute("dompdf-counter") + 1; - } - } - - $parent_node->setAttribute("dompdf-counter", $index); - $bullet_node->setAttribute("dompdf-counter", $index); - } - - $new_style = $dompdf->getCss()->create_style(); - $new_style->set_prop("display", "-dompdf-list-bullet"); - $new_style->inherit($style); - $b_f->set_style($new_style); - - $deco->prepend_child(Factory::decorate_frame($b_f, $dompdf, $root)); - } - - return $deco; - } - - /** - * Creates Positioners - * - * @param string $type Type of positioner to use - * - * @return AbstractPositioner - */ - protected static function getPositionerInstance(string $type): AbstractPositioner - { - if (!isset(self::$_positioners[$type])) { - $class = '\\Dompdf\\Positioner\\'.$type; - self::$_positioners[$type] = new $class(); - } - return self::$_positioners[$type]; - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Frame/FrameListIterator.php b/docker/statistics/vendor/dompdf/dompdf/src/Frame/FrameListIterator.php deleted file mode 100644 index 01575505..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Frame/FrameListIterator.php +++ /dev/null @@ -1,100 +0,0 @@ -parent = $frame; - $this->rewind(); - } - - public function rewind(): void - { - $this->cur = $this->parent->get_first_child(); - $this->prev = null; - $this->num = 0; - } - - /** - * @return bool - */ - public function valid(): bool - { - return $this->cur !== null; - } - - /** - * @return int - */ - public function key(): int - { - return $this->num; - } - - /** - * @return Frame|null - */ - public function current(): ?Frame - { - return $this->cur; - } - - public function next(): void - { - if ($this->cur === null) { - return; - } - - if ($this->cur->get_parent() === $this->parent) { - $this->prev = $this->cur; - $this->cur = $this->cur->get_next_sibling(); - $this->num++; - } else { - // Continue from the previous child if the current frame has been - // moved to another parent - $this->cur = $this->prev !== null - ? $this->prev->get_next_sibling() - : $this->parent->get_first_child(); - } - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Frame/FrameTree.php b/docker/statistics/vendor/dompdf/dompdf/src/Frame/FrameTree.php deleted file mode 100644 index 6d012d8d..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Frame/FrameTree.php +++ /dev/null @@ -1,324 +0,0 @@ -_dom = $dom; - $this->_root = null; - $this->_registry = []; - } - - /** - * Returns the DOMDocument object representing the current html document - * - * @return DOMDocument - */ - public function get_dom() - { - return $this->_dom; - } - - /** - * Returns the root frame of the tree - * - * @return Frame - */ - public function get_root() - { - return $this->_root; - } - - /** - * Returns a specific frame given its id - * - * @param string $id - * - * @return Frame|null - */ - public function get_frame($id) - { - return isset($this->_registry[$id]) ? $this->_registry[$id] : null; - } - - /** - * Returns a post-order iterator for all frames in the tree - * - * @deprecated Iterate the tree directly instead - * @return FrameTreeIterator - */ - public function get_frames(): FrameTreeIterator - { - return new FrameTreeIterator($this->_root); - } - - /** - * Returns a post-order iterator for all frames in the tree - * - * @return FrameTreeIterator - */ - public function getIterator(): FrameTreeIterator - { - return new FrameTreeIterator($this->_root); - } - - /** - * Builds the tree - */ - public function build_tree() - { - $html = $this->_dom->getElementsByTagName("html")->item(0); - if (is_null($html)) { - $html = $this->_dom->firstChild; - } - - if (is_null($html)) { - throw new Exception("Requested HTML document contains no data."); - } - - $this->fix_tables(); - - $this->_root = $this->_build_tree_r($html); - } - - /** - * Adds missing TBODYs around TR - */ - protected function fix_tables() - { - $xp = new DOMXPath($this->_dom); - - // Move table caption before the table - // FIXME find a better way to deal with it... - $captions = $xp->query('//table/caption'); - foreach ($captions as $caption) { - $table = $caption->parentNode; - $table->parentNode->insertBefore($caption, $table); - } - - $firstRows = $xp->query('//table/tr[1]'); - /** @var DOMElement $tableChild */ - foreach ($firstRows as $tableChild) { - $tbody = $this->_dom->createElement('tbody'); - $tableNode = $tableChild->parentNode; - do { - if ($tableChild->nodeName === 'tr') { - $tmpNode = $tableChild; - $tableChild = $tableChild->nextSibling; - $tableNode->removeChild($tmpNode); - $tbody->appendChild($tmpNode); - } else { - if ($tbody->hasChildNodes() === true) { - $tableNode->insertBefore($tbody, $tableChild); - $tbody = $this->_dom->createElement('tbody'); - } - $tableChild = $tableChild->nextSibling; - } - } while ($tableChild); - if ($tbody->hasChildNodes() === true) { - $tableNode->appendChild($tbody); - } - } - } - - // FIXME: temporary hack, preferably we will improve rendering of sequential #text nodes - /** - * Remove a child from a node - * - * Remove a child from a node. If the removed node results in two - * adjacent #text nodes then combine them. - * - * @param DOMNode $node the current DOMNode being considered - * @param array $children an array of nodes that are the children of $node - * @param int $index index from the $children array of the node to remove - */ - protected function _remove_node(DOMNode $node, array &$children, $index) - { - $child = $children[$index]; - $previousChild = $child->previousSibling; - $nextChild = $child->nextSibling; - $node->removeChild($child); - if (isset($previousChild, $nextChild)) { - if ($previousChild->nodeName === "#text" && $nextChild->nodeName === "#text") { - $previousChild->nodeValue .= $nextChild->nodeValue; - $this->_remove_node($node, $children, $index+1); - } - } - array_splice($children, $index, 1); - } - - /** - * Recursively adds {@link Frame} objects to the tree - * - * Recursively build a tree of Frame objects based on a dom tree. - * No layout information is calculated at this time, although the - * tree may be adjusted (i.e. nodes and frames for generated content - * and images may be created). - * - * @param DOMNode $node the current DOMNode being considered - * - * @return Frame - */ - protected function _build_tree_r(DOMNode $node) - { - $frame = new Frame($node); - $id = $frame->get_id(); - $this->_registry[$id] = $frame; - - if (!$node->hasChildNodes()) { - return $frame; - } - - // Store the children in an array so that the tree can be modified - $children = []; - $length = $node->childNodes->length; - for ($i = 0; $i < $length; $i++) { - $children[] = $node->childNodes->item($i); - } - $index = 0; - // INFO: We don't advance $index if a node is removed to avoid skipping nodes - while ($index < count($children)) { - $child = $children[$index]; - $nodeName = strtolower($child->nodeName); - - // Skip non-displaying nodes - if (in_array($nodeName, self::$HIDDEN_TAGS)) { - if ($nodeName !== "head" && $nodeName !== "style") { - $this->_remove_node($node, $children, $index); - } else { - $index++; - } - continue; - } - // Skip empty text nodes - if ($nodeName === "#text" && $child->nodeValue === "") { - $this->_remove_node($node, $children, $index); - continue; - } - // Skip empty image nodes - if ($nodeName === "img" && $child->getAttribute("src") === "") { - $this->_remove_node($node, $children, $index); - continue; - } - - if (is_object($child)) { - $frame->append_child($this->_build_tree_r($child), false); - } - $index++; - } - - return $frame; - } - - /** - * @param DOMElement $node - * @param DOMElement $new_node - * @param string $pos - * - * @return mixed - */ - public function insert_node(DOMElement $node, DOMElement $new_node, $pos) - { - if ($pos === "after" || !$node->firstChild) { - $node->appendChild($new_node); - } else { - $node->insertBefore($new_node, $node->firstChild); - } - - $this->_build_tree_r($new_node); - - $frame_id = $new_node->getAttribute("frame_id"); - $frame = $this->get_frame($frame_id); - - $parent_id = $node->getAttribute("frame_id"); - $parent = $this->get_frame($parent_id); - - if ($parent) { - if ($pos === "before") { - $parent->prepend_child($frame, false); - } else { - $parent->append_child($frame, false); - } - } - - return $frame_id; - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Frame/FrameTreeIterator.php b/docker/statistics/vendor/dompdf/dompdf/src/Frame/FrameTreeIterator.php deleted file mode 100644 index 4da8da1e..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Frame/FrameTreeIterator.php +++ /dev/null @@ -1,88 +0,0 @@ -_stack[] = $this->_root = $root; - $this->_num = 0; - } - - public function rewind(): void - { - $this->_stack = [$this->_root]; - $this->_num = 0; - } - - /** - * @return bool - */ - public function valid(): bool - { - return count($this->_stack) > 0; - } - - /** - * @return int - */ - public function key(): int - { - return $this->_num; - } - - /** - * @return Frame - */ - public function current(): Frame - { - return end($this->_stack); - } - - public function next(): void - { - $b = array_pop($this->_stack); - $this->_num++; - - // Push all children onto the stack in reverse order - if ($c = $b->get_last_child()) { - $this->_stack[] = $c; - while ($c = $c->get_prev_sibling()) { - $this->_stack[] = $c; - } - } - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/AbstractFrameDecorator.php b/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/AbstractFrameDecorator.php deleted file mode 100644 index 2c1fcc5d..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/AbstractFrameDecorator.php +++ /dev/null @@ -1,923 +0,0 @@ - counter_value) (for generated content) - * - * @var array - */ - public $_counters = []; - - /** - * The root node of the DOM tree - * - * @var Frame - */ - protected $_root; - - /** - * The decorated frame - * - * @var Frame - */ - protected $_frame; - - /** - * AbstractPositioner object used to position this frame (Strategy pattern) - * - * @var AbstractPositioner - */ - protected $_positioner; - - /** - * Reflower object used to calculate frame dimensions (Strategy pattern) - * - * @var AbstractFrameReflower - */ - protected $_reflower; - - /** - * Reference to the current dompdf instance - * - * @var Dompdf - */ - protected $_dompdf; - - /** - * First block parent - * - * @var Block - */ - private $_block_parent; - - /** - * First positioned parent (position: relative | absolute | fixed) - * - * @var AbstractFrameDecorator - */ - private $_positioned_parent; - - /** - * Cache for the get_parent while loop results - * - * @var Frame - */ - private $_cached_parent; - - /** - * Whether generated content and counters have been set. - * - * @var bool - */ - public $content_set = false; - - /** - * Whether the frame has been split - * - * @var bool - */ - public $is_split = false; - - /** - * Whether the frame is a split-off frame - * - * @var bool - */ - public $is_split_off = false; - - /** - * Class constructor - * - * @param Frame $frame The decoration target - * @param Dompdf $dompdf The Dompdf object - */ - function __construct(Frame $frame, Dompdf $dompdf) - { - $this->_frame = $frame; - $this->_root = null; - $this->_dompdf = $dompdf; - $frame->set_decorator($this); - } - - /** - * "Destructor": forcibly free all references held by this object - * - * @param bool $recursive if true, call dispose on all children - */ - function dispose($recursive = false) - { - if ($recursive) { - while ($child = $this->get_first_child()) { - $child->dispose(true); - } - } - - $this->_root = null; - unset($this->_root); - - $this->_frame->dispose(true); - $this->_frame = null; - unset($this->_frame); - - $this->_positioner = null; - unset($this->_positioner); - - $this->_reflower = null; - unset($this->_reflower); - } - - /** - * Return a copy of this frame with $node as its node - * - * @param DOMNode $node - * - * @return AbstractFrameDecorator - */ - function copy(DOMNode $node) - { - $frame = new Frame($node); - $style = clone $this->_frame->get_style(); - - $style->reset(); - $frame->set_style($style); - - if ($node instanceof DOMElement && $node->hasAttribute("id")) { - $node->setAttribute("data-dompdf-original-id", $node->getAttribute("id")); - $node->removeAttribute("id"); - } - - return Factory::decorate_frame($frame, $this->_dompdf, $this->_root); - } - - /** - * Create a deep copy: copy this node and all children - * - * @return AbstractFrameDecorator - */ - function deep_copy() - { - $node = $this->_frame->get_node()->cloneNode(); - $frame = new Frame($node); - $style = clone $this->_frame->get_style(); - - $style->reset(); - $frame->set_style($style); - - if ($node instanceof DOMElement && $node->hasAttribute("id")) { - $node->setAttribute("data-dompdf-original-id", $node->getAttribute("id")); - $node->removeAttribute("id"); - } - - $deco = Factory::decorate_frame($frame, $this->_dompdf, $this->_root); - - foreach ($this->get_children() as $child) { - $deco->append_child($child->deep_copy()); - } - - return $deco; - } - - /** - * Create an anonymous child frame, inheriting styles from this frame. - * - * @param string $node_name - * @param string $display - * - * @return AbstractFrameDecorator - */ - public function create_anonymous_child(string $node_name, string $display): AbstractFrameDecorator - { - $style = $this->get_style(); - $child_style = $style->get_stylesheet()->create_style(); - $child_style->set_prop("display", $display); - $child_style->inherit($style); - - $node = $this->get_node()->ownerDocument->createElement($node_name); - $frame = new Frame($node); - $frame->set_style($child_style); - - return Factory::decorate_frame($frame, $this->_dompdf, $this->_root); - } - - function reset() - { - $this->_frame->reset(); - $this->_reflower->reset(); - $this->reset_generated_content(); - $this->revert_counter_increment(); - - $this->content_set = false; - $this->_counters = []; - - // clear parent lookup caches - $this->_cached_parent = null; - $this->_block_parent = null; - $this->_positioned_parent = null; - - // Reset all children - foreach ($this->get_children() as $child) { - $child->reset(); - } - } - - /** - * If this represents a generated node then child nodes represent generated - * content. Remove the children since the content will be generated next - * time this frame is reflowed. - */ - protected function reset_generated_content(): void - { - if ($this->content_set - && $this->get_node()->nodeName === "dompdf_generated" - ) { - $content = $this->get_style()->content; - - if ($content !== "normal" && $content !== "none") { - foreach ($this->get_children() as $child) { - $this->remove_child($child); - } - } - } - } - - /** - * Decrement any counters that were incremented on the current node, unless - * that node is the body. - */ - protected function revert_counter_increment(): void - { - if ($this->content_set - && $this->get_node()->nodeName !== "body" - && ($decrement = $this->get_style()->counter_increment) !== "none" - ) { - $this->decrement_counters($decrement); - } - } - - // Getters ----------- - - function get_id() - { - return $this->_frame->get_id(); - } - - /** - * @return Frame - */ - function get_frame() - { - return $this->_frame; - } - - function get_node() - { - return $this->_frame->get_node(); - } - - function get_style() - { - return $this->_frame->get_style(); - } - - /** - * @deprecated - */ - function get_original_style() - { - return $this->_frame->get_style(); - } - - function get_containing_block($i = null) - { - return $this->_frame->get_containing_block($i); - } - - function get_position($i = null) - { - return $this->_frame->get_position($i); - } - - /** - * @return Dompdf - */ - function get_dompdf() - { - return $this->_dompdf; - } - - public function get_margin_width(): float - { - return $this->_frame->get_margin_width(); - } - - public function get_margin_height(): float - { - return $this->_frame->get_margin_height(); - } - - public function get_content_box(): array - { - return $this->_frame->get_content_box(); - } - - public function get_padding_box(): array - { - return $this->_frame->get_padding_box(); - } - - public function get_border_box(): array - { - return $this->_frame->get_border_box(); - } - - function set_id($id) - { - $this->_frame->set_id($id); - } - - public function set_style(Style $style): void - { - $this->_frame->set_style($style); - } - - function set_containing_block($x = null, $y = null, $w = null, $h = null) - { - $this->_frame->set_containing_block($x, $y, $w, $h); - } - - function set_position($x = null, $y = null) - { - $this->_frame->set_position($x, $y); - } - - function is_auto_height() - { - return $this->_frame->is_auto_height(); - } - - function is_auto_width() - { - return $this->_frame->is_auto_width(); - } - - function __toString() - { - return $this->_frame->__toString(); - } - - function prepend_child(Frame $child, $update_node = true) - { - while ($child instanceof AbstractFrameDecorator) { - $child = $child->_frame; - } - - $this->_frame->prepend_child($child, $update_node); - } - - function append_child(Frame $child, $update_node = true) - { - while ($child instanceof AbstractFrameDecorator) { - $child = $child->_frame; - } - - $this->_frame->append_child($child, $update_node); - } - - function insert_child_before(Frame $new_child, Frame $ref, $update_node = true) - { - while ($new_child instanceof AbstractFrameDecorator) { - $new_child = $new_child->_frame; - } - - if ($ref instanceof AbstractFrameDecorator) { - $ref = $ref->_frame; - } - - $this->_frame->insert_child_before($new_child, $ref, $update_node); - } - - function insert_child_after(Frame $new_child, Frame $ref, $update_node = true) - { - $insert_frame = $new_child; - while ($insert_frame instanceof AbstractFrameDecorator) { - $insert_frame = $insert_frame->_frame; - } - - $reference_frame = $ref; - while ($reference_frame instanceof AbstractFrameDecorator) { - $reference_frame = $reference_frame->_frame; - } - - $this->_frame->insert_child_after($insert_frame, $reference_frame, $update_node); - } - - function remove_child(Frame $child, $update_node = true) - { - while ($child instanceof AbstractFrameDecorator) { - $child = $child->_frame; - } - - return $this->_frame->remove_child($child, $update_node); - } - - /** - * @param bool $use_cache - * @return AbstractFrameDecorator - */ - function get_parent($use_cache = true) - { - if ($use_cache && $this->_cached_parent) { - return $this->_cached_parent; - } - $p = $this->_frame->get_parent(); - if ($p && $deco = $p->get_decorator()) { - while ($tmp = $deco->get_decorator()) { - $deco = $tmp; - } - - return $this->_cached_parent = $deco; - } else { - return $this->_cached_parent = $p; - } - } - - /** - * @return AbstractFrameDecorator - */ - function get_first_child() - { - $c = $this->_frame->get_first_child(); - if ($c && $deco = $c->get_decorator()) { - while ($tmp = $deco->get_decorator()) { - $deco = $tmp; - } - - return $deco; - } else { - if ($c) { - return $c; - } - } - - return null; - } - - /** - * @return AbstractFrameDecorator - */ - function get_last_child() - { - $c = $this->_frame->get_last_child(); - if ($c && $deco = $c->get_decorator()) { - while ($tmp = $deco->get_decorator()) { - $deco = $tmp; - } - - return $deco; - } else { - if ($c) { - return $c; - } - } - - return null; - } - - /** - * @return AbstractFrameDecorator - */ - function get_prev_sibling() - { - $s = $this->_frame->get_prev_sibling(); - if ($s && $deco = $s->get_decorator()) { - while ($tmp = $deco->get_decorator()) { - $deco = $tmp; - } - - return $deco; - } else { - if ($s) { - return $s; - } - } - - return null; - } - - /** - * @return AbstractFrameDecorator - */ - function get_next_sibling() - { - $s = $this->_frame->get_next_sibling(); - if ($s && $deco = $s->get_decorator()) { - while ($tmp = $deco->get_decorator()) { - $deco = $tmp; - } - - return $deco; - } else { - if ($s) { - return $s; - } - } - - return null; - } - - /** - * @return FrameListIterator - */ - public function get_children(): FrameListIterator - { - return new FrameListIterator($this); - } - - /** - * @return FrameTreeIterator - */ - function get_subtree(): FrameTreeIterator - { - return new FrameTreeIterator($this); - } - - function set_positioner(AbstractPositioner $posn) - { - $this->_positioner = $posn; - if ($this->_frame instanceof AbstractFrameDecorator) { - $this->_frame->set_positioner($posn); - } - } - - function set_reflower(AbstractFrameReflower $reflower) - { - $this->_reflower = $reflower; - if ($this->_frame instanceof AbstractFrameDecorator) { - $this->_frame->set_reflower($reflower); - } - } - - /** - * @return AbstractPositioner - */ - function get_positioner() - { - return $this->_positioner; - } - - /** - * @return AbstractFrameReflower - */ - function get_reflower() - { - return $this->_reflower; - } - - /** - * @param Frame $root - */ - function set_root(Frame $root) - { - $this->_root = $root; - - if ($this->_frame instanceof AbstractFrameDecorator) { - $this->_frame->set_root($root); - } - } - - /** - * @return Page - */ - function get_root() - { - return $this->_root; - } - - /** - * @return Block - */ - function find_block_parent() - { - // Find our nearest block level parent - if (isset($this->_block_parent)) { - return $this->_block_parent; - } - - $p = $this->get_parent(); - - while ($p) { - if ($p->is_block()) { - break; - } - - $p = $p->get_parent(); - } - - return $this->_block_parent = $p; - } - - /** - * @return AbstractFrameDecorator - */ - function find_positioned_parent() - { - // Find our nearest relative positioned parent - if (isset($this->_positioned_parent)) { - return $this->_positioned_parent; - } - - $p = $this->get_parent(); - while ($p) { - if ($p->is_positioned()) { - break; - } - - $p = $p->get_parent(); - } - - if (!$p) { - $p = $this->_root; - } - - return $this->_positioned_parent = $p; - } - - /** - * Split this frame at $child. - * The current frame is cloned and $child and all children following - * $child are added to the clone. The clone is then passed to the - * current frame's parent->split() method. - * - * @param Frame|null $child - * @param bool $page_break - * @param bool $forced Whether the page break is forced. - * - * @throws Exception - */ - public function split(?Frame $child = null, bool $page_break = false, bool $forced = false): void - { - if (is_null($child)) { - $this->get_parent()->split($this, $page_break, $forced); - return; - } - - if ($child->get_parent() !== $this) { - throw new Exception("Unable to split: frame is not a child of this one."); - } - - $this->revert_counter_increment(); - - $node = $this->_frame->get_node(); - $split = $this->copy($node->cloneNode()); - - $style = $this->_frame->get_style(); - $split_style = $split->get_style(); - - // Truncate the box decoration at the split, except for the body - if ($node->nodeName !== "body") { - // Clear bottom decoration of original frame - $style->margin_bottom = 0.0; - $style->padding_bottom = 0.0; - $style->border_bottom_width = 0.0; - $style->border_bottom_left_radius = 0.0; - $style->border_bottom_right_radius = 0.0; - - // Clear top decoration of split frame - $split_style->margin_top = 0.0; - $split_style->padding_top = 0.0; - $split_style->border_top_width = 0.0; - $split_style->border_top_left_radius = 0.0; - $split_style->border_top_right_radius = 0.0; - $split_style->page_break_before = "auto"; - } - - $split_style->text_indent = 0.0; - $split_style->counter_reset = "none"; - - $this->is_split = true; - $split->is_split_off = true; - $split->_already_pushed = true; - - $this->get_parent()->insert_child_after($split, $this); - - if ($this instanceof Block) { - // Remove the frames that will be moved to the new split node from - // the line boxes - $this->remove_frames_from_line($child); - - // recalculate the float offsets after paging - foreach ($this->get_line_boxes() as $line_box) { - $line_box->get_float_offsets(); - } - } - - if (!$forced) { - // Reset top margin in case of an unforced page break - // https://www.w3.org/TR/CSS21/page.html#allowed-page-breaks - $child->get_style()->margin_top = 0.0; - } - - // Add $child and all following siblings to the new split node - $iter = $child; - while ($iter) { - $frame = $iter; - $iter = $iter->get_next_sibling(); - $frame->reset(); - $split->append_child($frame); - } - - $this->get_parent()->split($split, $page_break, $forced); - - // Preserve the current counter values. This must be done after the - // parent split, as counters get reset on frame reset - $split->_counters = $this->_counters; - } - - /** - * @param array $counters - */ - public function reset_counters(array $counters): void - { - foreach ($counters as $id => $value) { - $this->reset_counter($id, $value); - } - } - - /** - * @param string $id - * @param int $value - */ - public function reset_counter(string $id = self::DEFAULT_COUNTER, int $value = 0): void - { - $this->get_parent()->_counters[$id] = $value; - } - - /** - * @param array $counters - */ - public function decrement_counters(array $counters): void - { - foreach ($counters as $id => $increment) { - $this->increment_counter($id, $increment * -1); - } - } - - /** - * @param array $counters - */ - public function increment_counters(array $counters): void - { - foreach ($counters as $id => $increment) { - $this->increment_counter($id, $increment); - } - } - - /** - * @param string $id - * @param int $increment - */ - public function increment_counter(string $id = self::DEFAULT_COUNTER, int $increment = 1): void - { - $counter_frame = $this->lookup_counter_frame($id); - - if ($counter_frame) { - if (!isset($counter_frame->_counters[$id])) { - $counter_frame->_counters[$id] = 0; - } - - $counter_frame->_counters[$id] += $increment; - } - } - - /** - * @param string $id - * @return AbstractFrameDecorator|null - */ - function lookup_counter_frame($id = self::DEFAULT_COUNTER) - { - $f = $this->get_parent(); - - while ($f) { - if (isset($f->_counters[$id])) { - return $f; - } - $fp = $f->get_parent(); - - if (!$fp) { - return $f; - } - - $f = $fp; - } - - return null; - } - - /** - * @param string $id - * @param string $type - * @return bool|string - * - * TODO: What version is the best : this one or the one in ListBullet ? - */ - function counter_value(string $id = self::DEFAULT_COUNTER, string $type = "decimal") - { - $type = mb_strtolower($type); - - if (!isset($this->_counters[$id])) { - $this->_counters[$id] = 0; - } - - $value = $this->_counters[$id]; - - switch ($type) { - default: - case "decimal": - return $value; - - case "decimal-leading-zero": - return str_pad($value, 2, "0", STR_PAD_LEFT); - - case "lower-roman": - return Helpers::dec2roman($value); - - case "upper-roman": - return mb_strtoupper(Helpers::dec2roman($value)); - - case "lower-latin": - case "lower-alpha": - return chr((($value - 1) % 26) + ord('a')); - - case "upper-latin": - case "upper-alpha": - return chr((($value - 1) % 26) + ord('A')); - - case "lower-greek": - return Helpers::unichr($value + 944); - - case "upper-greek": - return Helpers::unichr($value + 912); - } - } - - final function position() - { - $this->_positioner->position($this); - } - - /** - * @param float $offset_x - * @param float $offset_y - * @param bool $ignore_self - */ - final function move(float $offset_x, float $offset_y, bool $ignore_self = false): void - { - $this->_positioner->move($this, $offset_x, $offset_y, $ignore_self); - } - - /** - * @param Block|null $block - */ - final function reflow(Block $block = null) - { - // Uncomment this to see the frames before they're laid out, instead of - // during rendering. - //echo $this->_frame; flush(); - $this->_reflower->reflow($block); - } - - /** - * @return array - */ - final public function get_min_max_width(): array - { - return $this->_reflower->get_min_max_width(); - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/Block.php b/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/Block.php deleted file mode 100644 index 1fcf134d..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/Block.php +++ /dev/null @@ -1,256 +0,0 @@ -_line_boxes = [new LineBox($this)]; - $this->_cl = 0; - $this->dangling_markers = []; - } - - function reset() - { - parent::reset(); - - $this->_line_boxes = [new LineBox($this)]; - $this->_cl = 0; - $this->dangling_markers = []; - } - - /** - * @return LineBox - */ - function get_current_line_box() - { - return $this->_line_boxes[$this->_cl]; - } - - /** - * @return int - */ - function get_current_line_number() - { - return $this->_cl; - } - - /** - * @return LineBox[] - */ - function get_line_boxes() - { - return $this->_line_boxes; - } - - /** - * @param int $line_number - * @return int - */ - function set_current_line_number($line_number) - { - $line_boxes_count = count($this->_line_boxes); - $cl = max(min($line_number, $line_boxes_count), 0); - return ($this->_cl = $cl); - } - - /** - * @param int $i - */ - function clear_line($i) - { - if (isset($this->_line_boxes[$i])) { - unset($this->_line_boxes[$i]); - } - } - - /** - * @param Frame $frame - * @return LineBox|null - */ - public function add_frame_to_line(Frame $frame): ?LineBox - { - $current_line = $this->_line_boxes[$this->_cl]; - $frame->set_containing_line($current_line); - - // Inline frames are currently treated as wrappers, and are not actually - // added to the line - if ($frame instanceof Inline) { - return null; - } - - $current_line->add_frame($frame); - - $this->increase_line_width($frame->get_margin_width()); - $this->maximize_line_height($frame->get_margin_height(), $frame); - - // Add any dangling list markers to the first line box if it is inline - if ($this->_cl === 0 && $current_line->inline - && $this->dangling_markers !== [] - ) { - foreach ($this->dangling_markers as $marker) { - $current_line->add_list_marker($marker); - $this->maximize_line_height($marker->get_margin_height(), $marker); - } - - $this->dangling_markers = []; - } - - return $current_line; - } - - /** - * Remove the given frame and all following frames and lines from the block. - * - * @param Frame $frame - */ - public function remove_frames_from_line(Frame $frame): void - { - // Inline frames are not added to line boxes themselves, only their - // text frame children - $actualFrame = $frame; - while ($actualFrame !== null && $actualFrame instanceof Inline) { - $actualFrame = $actualFrame->get_first_child(); - } - - if ($actualFrame === null) { - return; - } - - // Search backwards through the lines for $frame - $frame = $actualFrame; - $i = $this->_cl; - $j = null; - - while ($i > 0) { - $line = $this->_line_boxes[$i]; - foreach ($line->get_frames() as $index => $f) { - if ($frame === $f) { - $j = $index; - break 2; - } - } - $i--; - } - - if ($j === null) { - return; - } - - // Remove all lines that follow - for ($k = $this->_cl; $k > $i; $k--) { - unset($this->_line_boxes[$k]); - } - - // Remove the line, if it is empty - if ($j > 0) { - $line->remove_frames($j); - } else { - unset($this->_line_boxes[$i]); - } - - // Reset array indices - $this->_line_boxes = array_values($this->_line_boxes); - $this->_cl = count($this->_line_boxes) - 1; - } - - /** - * @param float $w - */ - public function increase_line_width(float $w): void - { - $this->_line_boxes[$this->_cl]->w += $w; - } - - /** - * @param float $val - * @param Frame $frame - */ - public function maximize_line_height(float $val, Frame $frame): void - { - if ($val > $this->_line_boxes[$this->_cl]->h) { - $this->_line_boxes[$this->_cl]->tallest_frame = $frame; - $this->_line_boxes[$this->_cl]->h = $val; - } - } - - /** - * @param bool $br - */ - public function add_line(bool $br = false): void - { - $line = $this->_line_boxes[$this->_cl]; - - $line->br = $br; - $y = $line->y + $line->h; - - $new_line = new LineBox($this, $y); - - $this->_line_boxes[++$this->_cl] = $new_line; - } - - /** - * @param ListBullet $marker - */ - public function add_dangling_marker(ListBullet $marker): void - { - $this->dangling_markers[] = $marker; - } - - /** - * Inherit any dangling markers from the parent block. - * - * @param Block $block - */ - public function inherit_dangling_markers(self $block): void - { - if ($block->dangling_markers !== []) { - $this->dangling_markers = $block->dangling_markers; - $block->dangling_markers = []; - } - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/Image.php b/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/Image.php deleted file mode 100644 index 92ac491a..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/Image.php +++ /dev/null @@ -1,120 +0,0 @@ -get_node()->getAttribute("src"); - - $debug_png = $dompdf->getOptions()->getDebugPng(); - if ($debug_png) { - print '[__construct ' . $url . ']'; - } - - list($this->_image_url, /*$type*/, $this->_image_msg) = Cache::resolve_url( - $url, - $dompdf->getProtocol(), - $dompdf->getBaseHost(), - $dompdf->getBasePath(), - $dompdf->getOptions() - ); - - if (Cache::is_broken($this->_image_url) && - $alt = $frame->get_node()->getAttribute("alt") - ) { - $fontMetrics = $dompdf->getFontMetrics(); - $style = $frame->get_style(); - $font = $style->font_family; - $size = $style->font_size; - $word_spacing = $style->word_spacing; - $letter_spacing = $style->letter_spacing; - - $style->width = (4 / 3) * $fontMetrics->getTextWidth($alt, $font, $size, $word_spacing, $letter_spacing); - $style->height = $fontMetrics->getFontHeight($font, $size); - } - } - - /** - * Get the intrinsic pixel dimensions of the image. - * - * @return array Width and height as `float|int`. - */ - public function get_intrinsic_dimensions(): array - { - [$width, $height] = Helpers::dompdf_getimagesize($this->_image_url, $this->_dompdf->getHttpContext()); - - return [$width, $height]; - } - - /** - * Resample the given pixel length according to dpi. - * - * @param float|int $length - * @return float - */ - public function resample($length): float - { - $dpi = $this->_dompdf->getOptions()->getDpi(); - return ($length * 72) / $dpi; - } - - /** - * Return the image's url - * - * @return string The url of this image - */ - function get_image_url() - { - return $this->_image_url; - } - - /** - * Return the image's error message - * - * @return string The image's error message - */ - function get_image_msg() - { - return $this->_image_msg; - } - -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/Inline.php b/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/Inline.php deleted file mode 100644 index 668d795e..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/Inline.php +++ /dev/null @@ -1,121 +0,0 @@ -get_style(); - $font = $style->font_family; - $size = $style->font_size; - $fontHeight = $this->_dompdf->getFontMetrics()->getFontHeight($font, $size); - - return ($style->line_height / ($size > 0 ? $size : 1)) * $fontHeight; - } - - public function split(?Frame $child = null, bool $page_break = false, bool $forced = false): void - { - if (is_null($child)) { - $this->get_parent()->split($this, $page_break, $forced); - return; - } - - if ($child->get_parent() !== $this) { - throw new Exception("Unable to split: frame is not a child of this one."); - } - - $this->revert_counter_increment(); - $node = $this->_frame->get_node(); - $split = $this->copy($node->cloneNode()); - - $style = $this->_frame->get_style(); - $split_style = $split->get_style(); - - // Unset the current node's right style properties - $style->margin_right = 0.0; - $style->padding_right = 0.0; - $style->border_right_width = 0.0; - $style->border_top_right_radius = 0.0; - $style->border_bottom_right_radius = 0.0; - - // Unset the split node's left style properties since we don't want them - // to propagate - $split_style->margin_left = 0.0; - $split_style->padding_left = 0.0; - $split_style->border_left_width = 0.0; - $split_style->border_top_left_radius = 0.0; - $split_style->border_bottom_left_radius = 0.0; - - // If this is a generated node don't propagate the content style - if ($split->get_node()->nodeName == "dompdf_generated") { - $split_style->content = "normal"; - } - - //On continuation of inline element on next line, - //don't repeat non-horizontally repeatable background images - //See e.g. in testcase image_variants, long descriptions - if (($url = $style->background_image) && $url !== "none" - && ($repeat = $style->background_repeat) && $repeat !== "repeat" && $repeat !== "repeat-x" - ) { - $split_style->background_image = "none"; - } - - $this->get_parent()->insert_child_after($split, $this); - - // Add $child and all following siblings to the new split node - $iter = $child; - while ($iter) { - $frame = $iter; - $iter = $iter->get_next_sibling(); - $frame->reset(); - $split->append_child($frame); - } - - $parent = $this->get_parent(); - - if ($page_break) { - $parent->split($split, $page_break, $forced); - } elseif ($parent instanceof Inline) { - $parent->split($split); - } - } - -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/ListBullet.php b/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/ListBullet.php deleted file mode 100644 index 703f4676..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/ListBullet.php +++ /dev/null @@ -1,117 +0,0 @@ -_frame->get_style(); - - if ($style->list_style_type === "none") { - return 0.0; - } - - return $style->font_size * self::BULLET_SIZE; - } - - /** - * Get the height of the bullet symbol. - * - * @return float - */ - public function get_height(): float - { - $style = $this->_frame->get_style(); - - if ($style->list_style_type === "none") { - return 0.0; - } - - return $style->font_size * self::BULLET_SIZE; - } - - /** - * Get the width of the bullet, including indentation. - */ - public function get_margin_width(): float - { - $style = $this->get_style(); - - if ($style->list_style_type === "none") { - return 0.0; - } - - return $style->font_size * (self::BULLET_SIZE + self::MARKER_INDENT); - } - - /** - * Get the line height for the bullet. - * - * This increases the height of the corresponding line box when necessary. - */ - public function get_margin_height(): float - { - $style = $this->get_style(); - - if ($style->list_style_type === "none") { - return 0.0; - } - - // TODO: This is a copy of `FrameDecorator\Text::get_margin_height()` - // Would be nice to properly refactor that at some point - $font = $style->font_family; - $size = $style->font_size; - $fontHeight = $this->_dompdf->getFontMetrics()->getFontHeight($font, $size); - - return ($style->line_height / ($size > 0 ? $size : 1)) * $fontHeight; - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/ListBulletImage.php b/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/ListBulletImage.php deleted file mode 100644 index d921929c..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/ListBulletImage.php +++ /dev/null @@ -1,112 +0,0 @@ -get_style(); - $url = $style->list_style_image; - $frame->get_node()->setAttribute("src", $url); - $this->_img = new Image($frame, $dompdf); - parent::__construct($this->_img, $dompdf); - - $url = $this->_img->get_image_url(); - - if (Cache::is_broken($url)) { - $this->_width = parent::get_width(); - $this->_height = parent::get_height(); - } else { - // Resample the bullet image to be consistent with 'auto' sized images - [$width, $height] = $this->_img->get_intrinsic_dimensions(); - $this->_width = $this->_img->resample($width); - $this->_height = $this->_img->resample($height); - } - } - - public function get_width(): float - { - return $this->_width; - } - - public function get_height(): float - { - return $this->_height; - } - - public function get_margin_width(): float - { - $style = $this->get_style(); - return $this->_width + $style->font_size * self::MARKER_INDENT; - } - - public function get_margin_height(): float - { - $fontMetrics = $this->_dompdf->getFontMetrics(); - $style = $this->get_style(); - $font = $style->font_family; - $size = $style->font_size; - $fontHeight = $fontMetrics->getFontHeight($font, $size); - $baseline = $fontMetrics->getFontBaseline($font, $size); - - // This is the same factor as used in - // `FrameDecorator\Text::get_margin_height()` - $f = $style->line_height / ($size > 0 ? $size : 1); - - // FIXME: Tries to approximate replacing the space above the font - // baseline with the image - return $f * ($fontHeight - $baseline) + $this->_height; - } - - /** - * Return image url - * - * @return string - */ - function get_image_url() - { - return $this->_img->get_image_url(); - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/NullFrameDecorator.php b/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/NullFrameDecorator.php deleted file mode 100644 index f0838167..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/NullFrameDecorator.php +++ /dev/null @@ -1,33 +0,0 @@ -_frame->get_style(); - $style->width = 0; - $style->height = 0; - $style->margin = 0; - $style->padding = 0; - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/Page.php b/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/Page.php deleted file mode 100644 index 25ef2408..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/Page.php +++ /dev/null @@ -1,753 +0,0 @@ -_page_full = false; - $this->_in_table = 0; - $this->bottom_page_edge = null; - } - - /** - * Set the renderer used for this pdf - * - * @param Renderer $renderer the renderer to use - */ - function set_renderer($renderer) - { - $this->_renderer = $renderer; - } - - /** - * Return the renderer used for this pdf - * - * @return Renderer - */ - function get_renderer() - { - return $this->_renderer; - } - - /** - * Calculate the bottom edge of the page area after margins have been - * applied for the current page. - */ - public function calculate_bottom_page_edge(): void - { - [, , , $cbh] = $this->get_containing_block(); - $style = $this->get_style(); - $margin_bottom = (float) $style->length_in_pt($style->margin_bottom, $cbh); - - $this->bottom_page_edge = $cbh - $margin_bottom; - } - - /** - * Returns true if the page is full and is no longer accepting frames. - * - * @return bool - */ - function is_full() - { - return $this->_page_full; - } - - /** - * Start a new page by resetting the full flag. - */ - function next_page() - { - $this->_floating_frames = []; - $this->_renderer->new_page(); - $this->_page_full = false; - } - - /** - * Indicate to the page that a table is currently being reflowed. - */ - function table_reflow_start() - { - $this->_in_table++; - } - - /** - * Indicate to the page that table reflow is finished. - */ - function table_reflow_end() - { - $this->_in_table--; - } - - /** - * Return whether we are currently in a nested table or not - * - * @return bool - */ - function in_nested_table() - { - return $this->_in_table > 1; - } - - /** - * Check if a forced page break is required before $frame. This uses the - * frame's page_break_before property as well as the preceding frame's - * page_break_after property. - * - * @link http://www.w3.org/TR/CSS21/page.html#forced - * - * @param AbstractFrameDecorator $frame the frame to check - * - * @return bool true if a page break occurred - */ - function check_forced_page_break(Frame $frame) - { - // Skip check if page is already split and for the body - if ($this->_page_full || $frame->get_node()->nodeName === "body") { - return false; - } - - $page_breaks = ["always", "left", "right"]; - $style = $frame->get_style(); - - if (($frame->is_block_level() || $style->display === "table-row") - && in_array($style->page_break_before, $page_breaks, true) - ) { - // Prevent cascading splits - $frame->split(null, true, true); - $style->page_break_before = "auto"; - $this->_page_full = true; - $frame->_already_pushed = true; - - return true; - } - - // Find the preceding block-level sibling (or table row). Inline - // elements are treated as if wrapped in an anonymous block container - // here. See https://www.w3.org/TR/CSS21/visuren.html#anonymous-block-level - $prev = $frame->get_prev_sibling(); - while ($prev && (($prev->is_text_node() && $prev->get_node()->nodeValue === "") - || $prev->get_node()->nodeName === "bullet") - ) { - $prev = $prev->get_prev_sibling(); - } - - if ($prev && ($prev->is_block_level() || $prev->get_style()->display === "table-row")) { - if (in_array($prev->get_style()->page_break_after, $page_breaks, true)) { - // Prevent cascading splits - $frame->split(null, true, true); - $prev->get_style()->page_break_after = "auto"; - $this->_page_full = true; - $frame->_already_pushed = true; - - return true; - } - - $prev_last_child = $prev->get_last_child(); - while ($prev_last_child && (($prev_last_child->is_text_node() && $prev_last_child->get_node()->nodeValue === "") - || $prev_last_child->get_node()->nodeName === "bullet") - ) { - $prev_last_child = $prev_last_child->get_prev_sibling(); - } - - if ($prev_last_child - && $prev_last_child->is_block_level() - && in_array($prev_last_child->get_style()->page_break_after, $page_breaks, true) - ) { - $frame->split(null, true, true); - $prev_last_child->get_style()->page_break_after = "auto"; - $this->_page_full = true; - $frame->_already_pushed = true; - - return true; - } - } - - return false; - } - - /** - * Check for a gap between the top content edge of a frame and its child - * content. - * - * Additionally, the top margin, border, and padding of the frame must fit - * on the current page. - * - * @param float $childPos The top margin or line-box edge of the child content. - * @param Frame $frame The parent frame to check. - * @return bool - */ - protected function hasGap(float $childPos, Frame $frame): bool - { - $style = $frame->get_style(); - $cbw = $frame->get_containing_block("w"); - $contentEdge = $frame->get_position("y") + (float) $style->length_in_pt([ - $style->margin_top, - $style->border_top_width, - $style->padding_top - ], $cbw); - - return Helpers::lengthGreater($childPos, $contentEdge) - && Helpers::lengthLessOrEqual($contentEdge, $this->bottom_page_edge); - } - - /** - * Determine if a page break is allowed before $frame - * http://www.w3.org/TR/CSS21/page.html#allowed-page-breaks - * - * In the normal flow, page breaks can occur at the following places: - * - * 1. In the vertical margin between block boxes. When an - * unforced page break occurs here, the used values of the - * relevant 'margin-top' and 'margin-bottom' properties are set - * to '0'. When a forced page break occurs here, the used value - * of the relevant 'margin-bottom' property is set to '0'; the - * relevant 'margin-top' used value may either be set to '0' or - * retained. - * 2. Between line boxes inside a block container box. - * 3. Between the content edge of a block container box and the - * outer edges of its child content (margin edges of block-level - * children or line box edges for inline-level children) if there - * is a (non-zero) gap between them. - * - * These breaks are subject to the following rules: - * - * * Rule A: Breaking at (1) is allowed only if the - * 'page-break-after' and 'page-break-before' properties of all - * the elements generating boxes that meet at this margin allow - * it, which is when at least one of them has the value - * 'always', 'left', or 'right', or when all of them are 'auto'. - * - * * Rule B: However, if all of them are 'auto' and a common - * ancestor of all the elements has a 'page-break-inside' value - * of 'avoid', then breaking here is not allowed. - * - * * Rule C: Breaking at (2) is allowed only if the number of line - * boxes between the break and the start of the enclosing block - * box is the value of 'orphans' or more, and the number of line - * boxes between the break and the end of the box is the value - * of 'widows' or more. - * - * * Rule D: In addition, breaking at (2) or (3) is allowed only - * if the 'page-break-inside' property of the element and all - * its ancestors is 'auto'. - * - * If the above does not provide enough break points to keep content - * from overflowing the page boxes, then rules A, B and D are - * dropped in order to find additional breakpoints. - * - * If that still does not lead to sufficient break points, rule C is - * dropped as well, to find still more break points. - * - * We also allow breaks between table rows. - * - * @param AbstractFrameDecorator $frame the frame to check - * - * @return bool true if a break is allowed, false otherwise - */ - protected function _page_break_allowed(Frame $frame) - { - Helpers::dompdf_debug("page-break", "_page_break_allowed(" . $frame->get_node()->nodeName . ")"); - $display = $frame->get_style()->display; - - // Block Frames (1): - if ($frame->is_block_level() || $display === "-dompdf-image") { - - // Avoid breaks within table-cells - if ($this->_in_table > ($display === "table" ? 1 : 0)) { - Helpers::dompdf_debug("page-break", "In table: " . $this->_in_table); - - return false; - } - - // Rule A - if ($frame->get_style()->page_break_before === "avoid") { - Helpers::dompdf_debug("page-break", "before: avoid"); - - return false; - } - - // Find the preceding block-level sibling. Inline elements are - // treated as if wrapped in an anonymous block container here. See - // https://www.w3.org/TR/CSS21/visuren.html#anonymous-block-level - $prev = $frame->get_prev_sibling(); - while ($prev && (($prev->is_text_node() && $prev->get_node()->nodeValue === "") - || $prev->get_node()->nodeName === "bullet") - ) { - $prev = $prev->get_prev_sibling(); - } - - // Does the previous element allow a page break after? - if ($prev && ($prev->is_block_level() || $prev->get_style()->display === "-dompdf-image") - && $prev->get_style()->page_break_after === "avoid" - ) { - Helpers::dompdf_debug("page-break", "after: avoid"); - - return false; - } - - // Rules B & D - $parent = $frame->get_parent(); - $p = $parent; - while ($p) { - if ($p->get_style()->page_break_inside === "avoid") { - Helpers::dompdf_debug("page-break", "parent->inside: avoid"); - - return false; - } - $p = $p->find_block_parent(); - } - - // To prevent cascading page breaks when a top-level element has - // page-break-inside: avoid, ensure that at least one frame is - // on the page before splitting. - if ($parent->get_node()->nodeName === "body" && !$prev) { - // We are the body's first child - Helpers::dompdf_debug("page-break", "Body's first child."); - - return false; - } - - // Check for a possible type (3) break - if (!$prev && $parent && !$this->hasGap($frame->get_position("y"), $parent)) { - Helpers::dompdf_debug("page-break", "First block-level frame, no gap"); - - return false; - } - - Helpers::dompdf_debug("page-break", "block: break allowed"); - - return true; - - } // Inline frames (2): - else { - if ($frame->is_inline_level()) { - - // Avoid breaks within table-cells - if ($this->_in_table) { - Helpers::dompdf_debug("page-break", "In table: " . $this->_in_table); - - return false; - } - - // Rule C - $block_parent = $frame->find_block_parent(); - $parent_style = $block_parent->get_style(); - $line = $block_parent->get_current_line_box(); - $line_count = count($block_parent->get_line_boxes()); - $line_number = $frame->get_containing_line() && empty($line->get_frames()) - ? $line_count - 1 - : $line_count; - - // The line number of the frame can be less than the current - // number of line boxes, in case we are backtracking. As long as - // we are not checking for widows yet, just checking against the - // number of line boxes is sufficient in most cases, though. - if ($line_number <= $parent_style->orphans) { - Helpers::dompdf_debug("page-break", "orphans"); - - return false; - } - - // FIXME: Checking widows is tricky without having laid out the - // remaining line boxes. Just ignore it for now... - - // Rule D - $p = $block_parent; - while ($p) { - if ($p->get_style()->page_break_inside === "avoid") { - Helpers::dompdf_debug("page-break", "parent->inside: avoid"); - - return false; - } - $p = $p->find_block_parent(); - } - - // To prevent cascading page breaks when a top-level element has - // page-break-inside: avoid, ensure that at least one frame with - // some content is on the page before splitting. - $prev = $frame->get_prev_sibling(); - while ($prev && ($prev->is_text_node() && trim($prev->get_node()->nodeValue) == "")) { - $prev = $prev->get_prev_sibling(); - } - - if ($block_parent->get_node()->nodeName === "body" && !$prev) { - // We are the body's first child - Helpers::dompdf_debug("page-break", "Body's first child."); - - return false; - } - - Helpers::dompdf_debug("page-break", "inline: break allowed"); - - return true; - - // Table-rows - } else { - if ($display === "table-row") { - - // If this is a nested table, prevent the page from breaking - if ($this->_in_table > 1) { - Helpers::dompdf_debug("page-break", "table: nested table"); - - return false; - } - - // Rule A (table row) - if ($frame->get_style()->page_break_before === "avoid") { - Helpers::dompdf_debug("page-break", "before: avoid"); - - return false; - } - - // Find the preceding row - $prev = $frame->get_prev_sibling(); - - if (!$prev) { - $prev_group = $frame->get_parent()->get_prev_sibling(); - - if ($prev_group - && in_array($prev_group->get_style()->display, Table::ROW_GROUPS, true) - ) { - $prev = $prev_group->get_last_child(); - } - } - - // Check if a page break is allowed after the preceding row - if ($prev && $prev->get_style()->page_break_after === "avoid") { - Helpers::dompdf_debug("page-break", "after: avoid"); - - return false; - } - - // Avoid breaking before the first row of a table - if (!$prev) { - Helpers::dompdf_debug("page-break", "table: first-row"); - - return false; - } - - // Rule B (table row) - // Check if the page_break_inside property is not 'avoid' - // for the parent table or any of its ancestors - $table = Table::find_parent_table($frame); - - $p = $table; - while ($p) { - if ($p->get_style()->page_break_inside === "avoid") { - Helpers::dompdf_debug("page-break", "parent->inside: avoid"); - - return false; - } - $p = $p->find_block_parent(); - } - - Helpers::dompdf_debug("page-break", "table-row: break allowed"); - - return true; - } else { - if (in_array($display, Table::ROW_GROUPS, true)) { - - // Disallow breaks at row-groups: only split at row boundaries - return false; - - } else { - Helpers::dompdf_debug("page-break", "? " . $display); - - return false; - } - } - } - } - } - - /** - * Check if $frame will fit on the page. If the frame does not fit, - * the frame tree is modified so that a page break occurs in the - * correct location. - * - * @param AbstractFrameDecorator $frame the frame to check - * - * @return bool - */ - function check_page_break(Frame $frame) - { - if ($this->_page_full || $frame->_already_pushed - // Never check for breaks on empty text nodes - || ($frame->is_text_node() && $frame->get_node()->nodeValue === "") - ) { - return false; - } - - $p = $frame; - do { - $display = $p->get_style()->display; - if ($display == "table-row") { - if ($p->_already_pushed) { return false; } - } - } while ($p = $p->get_parent()); - - // If the frame is absolute or fixed it shouldn't break - $p = $frame; - do { - if ($p->is_absolute()) { - return false; - } - } while ($p = $p->get_parent()); - - $margin_height = $frame->get_margin_height(); - - // Determine the frame's maximum y value - $max_y = (float)$frame->get_position("y") + $margin_height; - - // If a split is to occur here, then the bottom margins & paddings of all - // parents of $frame must fit on the page as well: - $p = $frame->get_parent(); - while ($p && $p !== $this) { - $cbw = $p->get_containing_block("w"); - $max_y += (float) $p->get_style()->computed_bottom_spacing($cbw); - $p = $p->get_parent(); - } - - // Check if $frame flows off the page - if (Helpers::lengthLessOrEqual($max_y, $this->bottom_page_edge)) { - // no: do nothing - return false; - } - - Helpers::dompdf_debug("page-break", "check_page_break"); - Helpers::dompdf_debug("page-break", "in_table: " . $this->_in_table); - - // yes: determine page break location - $iter = $frame; - $flg = false; - $pushed_flg = false; - - $in_table = $this->_in_table; - - Helpers::dompdf_debug("page-break", "Starting search"); - while ($iter) { - // echo "\nbacktrack: " .$iter->get_node()->nodeName ." ".spl_object_hash($iter->get_node()). ""; - if ($iter === $this) { - Helpers::dompdf_debug("page-break", "reached root."); - // We've reached the root in our search. Just split at $frame. - break; - } - - if ($iter->_already_pushed) { - $pushed_flg = true; - } elseif ($this->_page_break_allowed($iter)) { - Helpers::dompdf_debug("page-break", "break allowed, splitting."); - $iter->split(null, true); - $this->_page_full = true; - $this->_in_table = $in_table; - $iter->_already_pushed = true; - $frame->_already_pushed = true; - - return true; - } - - if (!$flg && $next = $iter->get_last_child()) { - Helpers::dompdf_debug("page-break", "following last child."); - - if ($next->is_table()) { - $this->_in_table++; - } - - $iter = $next; - $pushed_flg = false; - continue; - } - - if ($pushed_flg) { - // The frame was already pushed, avoid breaking on a previous page - break; - } - - $next = $iter->get_prev_sibling(); - // Skip empty text nodes - while ($next && $next->is_text_node() && $next->get_node()->nodeValue === "") { - $next = $next->get_prev_sibling(); - } - - if ($next) { - Helpers::dompdf_debug("page-break", "following prev sibling."); - - if ($next->is_table() && !$iter->is_table()) { - $this->_in_table++; - } elseif (!$next->is_table() && $iter->is_table()) { - $this->_in_table--; - } - - $iter = $next; - $flg = false; - continue; - } - - if ($next = $iter->get_parent()) { - Helpers::dompdf_debug("page-break", "following parent."); - - if ($iter->is_table()) { - $this->_in_table--; - } - - $iter = $next; - $flg = true; - continue; - } - - break; - } - - $this->_in_table = $in_table; - - // No valid page break found. Just break at $frame. - Helpers::dompdf_debug("page-break", "no valid break found, just splitting."); - - // If we are in a table, backtrack to the nearest top-level table row - if ($this->_in_table) { - $iter = $frame; - while ($iter && $iter->get_style()->display !== "table-row" && $iter->get_style()->display !== 'table-row-group' && $iter->_already_pushed === false) { - $iter = $iter->get_parent(); - } - - if ($iter) { - $iter->split(null, true); - $iter->_already_pushed = true; - } else { - return false; - } - } else { - $frame->split(null, true); - } - - $this->_page_full = true; - $frame->_already_pushed = true; - - return true; - } - - //........................................................................ - - public function split(?Frame $child = null, bool $page_break = false, bool $forced = false): void - { - // Do nothing - } - - /** - * Add a floating frame - * - * @param Frame $frame - * - * @return void - */ - function add_floating_frame(Frame $frame) - { - array_unshift($this->_floating_frames, $frame); - } - - /** - * @return Frame[] - */ - function get_floating_frames() - { - return $this->_floating_frames; - } - - /** - * @param $key - */ - public function remove_floating_frame($key) - { - unset($this->_floating_frames[$key]); - } - - /** - * @param Frame $child - * @return int|mixed - */ - public function get_lowest_float_offset(Frame $child) - { - $style = $child->get_style(); - $side = $style->clear; - $float = $style->float; - - $y = 0; - - if ($float === "none") { - foreach ($this->_floating_frames as $key => $frame) { - if ($side === "both" || $frame->get_style()->float === $side) { - $y = max($y, $frame->get_position("y") + $frame->get_margin_height()); - } - $this->remove_floating_frame($key); - } - } - - if ($y > 0) { - $y++; // add 1px buffer from float - } - - return $y; - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/Table.php b/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/Table.php deleted file mode 100644 index 2770cbec..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/Table.php +++ /dev/null @@ -1,343 +0,0 @@ -_cellmap = new Cellmap($this); - - if ($frame->get_style()->table_layout === "fixed") { - $this->_cellmap->set_layout_fixed(true); - } - - $this->_headers = []; - $this->_footers = []; - } - - public function reset() - { - parent::reset(); - $this->_cellmap->reset(); - $this->_headers = []; - $this->_footers = []; - $this->_reflower->reset(); - } - - //........................................................................ - - /** - * Split the table at $row. $row and all subsequent rows will be - * added to the clone. This method is overridden in order to remove - * frames from the cellmap properly. - */ - public function split(?Frame $child = null, bool $page_break = false, bool $forced = false): void - { - if (is_null($child)) { - parent::split($child, $page_break, $forced); - return; - } - - // If $child is a header or if it is the first non-header row, do - // not duplicate headers, simply move the table to the next page. - if (count($this->_headers) - && !in_array($child, $this->_headers, true) - && !in_array($child->get_prev_sibling(), $this->_headers, true) - ) { - $first_header = null; - - // Insert copies of the table headers before $child - foreach ($this->_headers as $header) { - - $new_header = $header->deep_copy(); - - if (is_null($first_header)) { - $first_header = $new_header; - } - - $this->insert_child_before($new_header, $child); - } - - parent::split($first_header, $page_break, $forced); - - } elseif (in_array($child->get_style()->display, self::ROW_GROUPS, true)) { - - // Individual rows should have already been handled - parent::split($child, $page_break, $forced); - - } else { - - $iter = $child; - - while ($iter) { - $this->_cellmap->remove_row($iter); - $iter = $iter->get_next_sibling(); - } - - parent::split($child, $page_break, $forced); - } - } - - public function copy(DOMNode $node) - { - $deco = parent::copy($node); - - // In order to keep columns' widths through pages - $deco->_cellmap->set_columns($this->_cellmap->get_columns()); - $deco->_cellmap->lock_columns(); - - return $deco; - } - - /** - * Static function to locate the parent table of a frame - * - * @param Frame $frame - * - * @return Table the table that is an ancestor of $frame - */ - public static function find_parent_table(Frame $frame) - { - while ($frame = $frame->get_parent()) { - if ($frame->is_table()) { - break; - } - } - - return $frame; - } - - /** - * Return this table's Cellmap - * - * @return Cellmap - */ - public function get_cellmap() - { - return $this->_cellmap; - } - - //........................................................................ - - /** - * Check for text nodes between valid table children that only contain white - * space, except if white space is to be preserved. - * - * @param AbstractFrameDecorator $frame - * - * @return bool - */ - private function isEmptyTextNode(AbstractFrameDecorator $frame): bool - { - // This is based on the white-space pattern in `FrameReflower\Text`, - // i.e. only match on collapsible white space - $wsPattern = '/^[^\S\xA0\x{202F}\x{2007}]*$/u'; - $validChildOrNull = function ($frame) { - return $frame === null - || in_array($frame->get_style()->display, self::VALID_CHILDREN, true); - }; - - return $frame instanceof Text - && !$frame->is_pre() - && preg_match($wsPattern, $frame->get_text()) - && $validChildOrNull($frame->get_prev_sibling()) - && $validChildOrNull($frame->get_next_sibling()); - } - - /** - * Restructure tree so that the table has the correct structure. Misplaced - * children are appropriately wrapped in anonymous row groups, rows, and - * cells. - * - * https://www.w3.org/TR/CSS21/tables.html#anonymous-boxes - */ - public function normalize(): void - { - $column_caption = ["table-column-group", "table-column", "table-caption"]; - $children = iterator_to_array($this->get_children()); - $tbody = null; - - foreach ($children as $child) { - $display = $child->get_style()->display; - - if (in_array($display, self::ROW_GROUPS, true)) { - // Reset anonymous tbody - $tbody = null; - - // Add headers and footers - if ($display === "table-header-group") { - $this->_headers[] = $child; - } elseif ($display === "table-footer-group") { - $this->_footers[] = $child; - } - continue; - } - - if (in_array($display, $column_caption, true)) { - continue; - } - - // Remove empty text nodes between valid children - if ($this->isEmptyTextNode($child)) { - $this->remove_child($child); - continue; - } - - // Catch consecutive misplaced frames within a single anonymous group - if ($tbody === null) { - $tbody = $this->create_anonymous_child("tbody", "table-row-group"); - $this->insert_child_before($tbody, $child); - } - - $tbody->append_child($child); - } - - // Handle empty table: Make sure there is at least one row group - if (!$this->get_first_child()) { - $tbody = $this->create_anonymous_child("tbody", "table-row-group"); - $this->append_child($tbody); - } - - foreach ($this->get_children() as $child) { - $display = $child->get_style()->display; - - if (in_array($display, self::ROW_GROUPS, true)) { - $this->normalizeRowGroup($child); - } - } - } - - private function normalizeRowGroup(AbstractFrameDecorator $frame): void - { - $children = iterator_to_array($frame->get_children()); - $tr = null; - - foreach ($children as $child) { - $display = $child->get_style()->display; - - if ($display === "table-row") { - // Reset anonymous tr - $tr = null; - continue; - } - - // Remove empty text nodes between valid children - if ($this->isEmptyTextNode($child)) { - $frame->remove_child($child); - continue; - } - - // Catch consecutive misplaced frames within a single anonymous row - if ($tr === null) { - $tr = $frame->create_anonymous_child("tr", "table-row"); - $frame->insert_child_before($tr, $child); - } - - $tr->append_child($child); - } - - // Handle empty row group: Make sure there is at least one row - if (!$frame->get_first_child()) { - $tr = $frame->create_anonymous_child("tr", "table-row"); - $frame->append_child($tr); - } - - foreach ($frame->get_children() as $child) { - $this->normalizeRow($child); - } - } - - private function normalizeRow(AbstractFrameDecorator $frame): void - { - $children = iterator_to_array($frame->get_children()); - $td = null; - - foreach ($children as $child) { - $display = $child->get_style()->display; - - if ($display === "table-cell") { - // Reset anonymous td - $td = null; - continue; - } - - // Remove empty text nodes between valid children - if ($this->isEmptyTextNode($child)) { - $frame->remove_child($child); - continue; - } - - // Catch consecutive misplaced frames within a single anonymous cell - if ($td === null) { - $td = $frame->create_anonymous_child("td", "table-cell"); - $frame->insert_child_before($td, $child); - } - - $td->append_child($child); - } - - // Handle empty row: Make sure there is at least one cell - if (!$frame->get_first_child()) { - $td = $frame->create_anonymous_child("td", "table-cell"); - $frame->append_child($td); - } - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/TableCell.php b/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/TableCell.php deleted file mode 100644 index d382164a..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/TableCell.php +++ /dev/null @@ -1,143 +0,0 @@ -_resolved_borders = []; - $this->_content_height = 0; - } - - //........................................................................ - - function reset() - { - parent::reset(); - $this->_resolved_borders = []; - $this->_content_height = 0; - $this->_frame->reset(); - } - - /** - * @return int - */ - function get_content_height() - { - return $this->_content_height; - } - - /** - * @param $height - */ - function set_content_height($height) - { - $this->_content_height = $height; - } - - /** - * @param $height - */ - function set_cell_height($height) - { - $style = $this->get_style(); - $v_space = (float)$style->length_in_pt( - [ - $style->margin_top, - $style->padding_top, - $style->border_top_width, - $style->border_bottom_width, - $style->padding_bottom, - $style->margin_bottom - ], - (float)$style->length_in_pt($style->height) - ); - - $new_height = $height - $v_space; - $style->set_used("height", $new_height); - - if ($new_height > $this->_content_height) { - $y_offset = 0; - - // Adjust our vertical alignment - switch ($style->vertical_align) { - default: - case "baseline": - // FIXME: this isn't right - - case "top": - // Don't need to do anything - return; - - case "middle": - $y_offset = ($new_height - $this->_content_height) / 2; - break; - - case "bottom": - $y_offset = $new_height - $this->_content_height; - break; - } - - if ($y_offset) { - // Move our children - foreach ($this->get_line_boxes() as $line) { - foreach ($line->get_frames() as $frame) { - $frame->move(0, $y_offset); - } - } - } - } - } - - /** - * @param $side - * @param $border_spec - */ - function set_resolved_border($side, $border_spec) - { - $this->_resolved_borders[$side] = $border_spec; - } - - /** - * @param $side - * @return mixed - */ - function get_resolved_border($side) - { - return $this->_resolved_borders[$side]; - } - - /** - * @return array - */ - function get_resolved_borders() - { - return $this->_resolved_borders; - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/TableRow.php b/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/TableRow.php deleted file mode 100644 index ba985c91..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/TableRow.php +++ /dev/null @@ -1,28 +0,0 @@ -get_parent(); - $cellmap = $parent->get_cellmap(); - $iter = $child; - - while ($iter) { - $cellmap->remove_row($iter); - $iter = $iter->get_next_sibling(); - } - - // Remove all subsequent row groups from the cellmap - $iter = $this->get_next_sibling(); - - while ($iter) { - $cellmap->remove_row_group($iter); - $iter = $iter->get_next_sibling(); - } - - // If we are splitting at the first child remove the - // table-row-group from the cellmap as well - if ($child === $this->get_first_child()) { - $cellmap->remove_row_group($this); - parent::split(null, $page_break, $forced); - return; - } - - $cellmap->update_row_group($this, $child->get_prev_sibling()); - parent::split($child, $page_break, $forced); - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/Text.php b/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/Text.php deleted file mode 100644 index 9d669346..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/FrameDecorator/Text.php +++ /dev/null @@ -1,191 +0,0 @@ -is_text_node()) { - throw new Exception("Text_Decorator can only be applied to #text nodes."); - } - - parent::__construct($frame, $dompdf); - $this->text_spacing = 0.0; - } - - function reset() - { - parent::reset(); - $this->text_spacing = 0.0; - } - - // Accessor methods - - /** - * @return float - */ - public function get_text_spacing(): float - { - return $this->text_spacing; - } - - /** - * @return string - */ - function get_text() - { - // FIXME: this should be in a child class (and is incorrect) -// if ( $this->_frame->get_style()->content !== "normal" ) { -// $this->_frame->get_node()->data = $this->_frame->get_style()->content; -// $this->_frame->get_style()->content = "normal"; -// } - -// Helpers::pre_r("---"); -// $style = $this->_frame->get_style(); -// var_dump($text = $this->_frame->get_node()->data); -// var_dump($asc = utf8_decode($text)); -// for ($i = 0; $i < strlen($asc); $i++) -// Helpers::pre_r("$i: " . $asc[$i] . " - " . ord($asc[$i])); -// Helpers::pre_r("width: " . $this->_dompdf->getFontMetrics()->getTextWidth($text, $style->font_family, $style->font_size)); - - return $this->_frame->get_node()->data; - } - - //........................................................................ - - /** - * Vertical padding, border, and margin do not apply when determining the - * height for inline frames. - * - * http://www.w3.org/TR/CSS21/visudet.html#inline-non-replaced - * - * The vertical padding, border and margin of an inline, non-replaced box - * start at the top and bottom of the content area, not the - * 'line-height'. But only the 'line-height' is used to calculate the - * height of the line box. - * - * @return float - */ - public function get_margin_height(): float - { - // This function is also called in add_frame_to_line() and is used to - // determine the line height - $style = $this->get_style(); - $font = $style->font_family; - $size = $style->font_size; - $fontHeight = $this->_dompdf->getFontMetrics()->getFontHeight($font, $size); - - return ($style->line_height / ($size > 0 ? $size : 1)) * $fontHeight; - } - - public function get_padding_box(): array - { - $style = $this->_frame->get_style(); - $pb = $this->_frame->get_padding_box(); - $pb[3] = $pb["h"] = (float) $style->length_in_pt($style->height); - return $pb; - } - - /** - * @param float $spacing - */ - public function set_text_spacing(float $spacing): void - { - $this->text_spacing = $spacing; - $this->recalculate_width(); - } - - /** - * Recalculate the text width - * - * @return float - */ - public function recalculate_width(): float - { - $fontMetrics = $this->_dompdf->getFontMetrics(); - $style = $this->get_style(); - $text = $this->get_text(); - $font = $style->font_family; - $size = $style->font_size; - $word_spacing = $this->text_spacing + $style->word_spacing; - $letter_spacing = $style->letter_spacing; - $text_width = $fontMetrics->getTextWidth($text, $font, $size, $word_spacing, $letter_spacing); - - $style->set_used("width", $text_width); - return $text_width; - } - - // Text manipulation methods - - /** - * Split the text in this frame at the offset specified. The remaining - * text is added as a sibling frame following this one and is returned. - * - * @param int $offset - * @return Frame|null - */ - function split_text($offset) - { - if ($offset == 0) { - return null; - } - - $split = $this->_frame->get_node()->splitText($offset); - if ($split === false) { - return null; - } - - $deco = $this->copy($split); - - $p = $this->get_parent(); - $p->insert_child_after($deco, $this, false); - - if ($p instanceof Inline) { - $p->split($deco); - } - - return $deco; - } - - /** - * @param int $offset - * @param int $count - */ - function delete_text($offset, $count) - { - $this->_frame->get_node()->deleteData($offset, $count); - } - - /** - * @param string $text - */ - function set_text($text) - { - $this->_frame->get_node()->data = $text; - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/AbstractFrameReflower.php b/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/AbstractFrameReflower.php deleted file mode 100644 index fa0cc511..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/AbstractFrameReflower.php +++ /dev/null @@ -1,705 +0,0 @@ -_frame = $frame; - $this->_min_max_child_cache = null; - $this->_min_max_cache = null; - } - - /** - * @return Dompdf - */ - function get_dompdf() - { - return $this->_frame->get_dompdf(); - } - - public function reset(): void - { - $this->_min_max_child_cache = null; - $this->_min_max_cache = null; - } - - /** - * Determine the actual containing block for absolute and fixed position. - * - * https://www.w3.org/TR/CSS21/visudet.html#containing-block-details - */ - protected function determine_absolute_containing_block(): void - { - $frame = $this->_frame; - $style = $frame->get_style(); - - switch ($style->position) { - case "absolute": - $parent = $frame->find_positioned_parent(); - if ($parent !== $frame->get_root()) { - $parent_style = $parent->get_style(); - $parent_padding_box = $parent->get_padding_box(); - //FIXME: an accurate measure of the positioned parent height - // is not possible until reflow has completed; - // we'll fall back to the parent's containing block, - // which is wrong for auto-height parents - if ($parent_style->height === "auto") { - $parent_containing_block = $parent->get_containing_block(); - $containing_block_height = $parent_containing_block["h"] - - (float)$parent_style->length_in_pt([ - $parent_style->margin_top, - $parent_style->margin_bottom, - $parent_style->border_top_width, - $parent_style->border_bottom_width - ], $parent_containing_block["w"]); - } else { - $containing_block_height = $parent_padding_box["h"]; - } - $frame->set_containing_block($parent_padding_box["x"], $parent_padding_box["y"], $parent_padding_box["w"], $containing_block_height); - break; - } - case "fixed": - $initial_cb = $frame->get_root()->get_first_child()->get_containing_block(); - $frame->set_containing_block($initial_cb["x"], $initial_cb["y"], $initial_cb["w"], $initial_cb["h"]); - break; - default: - // Nothing to do, containing block already set via parent - break; - } - } - - /** - * Collapse frames margins - * http://www.w3.org/TR/CSS21/box.html#collapsing-margins - */ - protected function _collapse_margins(): void - { - $frame = $this->_frame; - - // Margins of float/absolutely positioned/inline-level elements do not collapse - if (!$frame->is_in_flow() || $frame->is_inline_level() - || $frame->get_root() === $frame || $frame->get_parent() === $frame->get_root() - ) { - return; - } - - $cb = $frame->get_containing_block(); - $style = $frame->get_style(); - - $t = $style->length_in_pt($style->margin_top, $cb["w"]); - $b = $style->length_in_pt($style->margin_bottom, $cb["w"]); - - // Handle 'auto' values - if ($t === "auto") { - $style->set_used("margin_top", 0.0); - $t = 0.0; - } - - if ($b === "auto") { - $style->set_used("margin_bottom", 0.0); - $b = 0.0; - } - - // Collapse vertical margins: - $n = $frame->get_next_sibling(); - if ( $n && !($n->is_block_level() && $n->is_in_flow()) ) { - while ($n = $n->get_next_sibling()) { - if ($n->is_block_level() && $n->is_in_flow()) { - break; - } - - if (!$n->get_first_child()) { - $n = null; - break; - } - } - } - - if ($n) { - $n_style = $n->get_style(); - $n_t = (float)$n_style->length_in_pt($n_style->margin_top, $cb["w"]); - - $b = $this->get_collapsed_margin_length($b, $n_t); - $style->set_used("margin_bottom", $b); - $n_style->set_used("margin_top", 0.0); - } - - // Collapse our first child's margin, if there is no border or padding - if ($style->border_top_width == 0 && $style->length_in_pt($style->padding_top) == 0) { - $f = $this->_frame->get_first_child(); - if ( $f && !($f->is_block_level() && $f->is_in_flow()) ) { - while ($f = $f->get_next_sibling()) { - if ($f->is_block_level() && $f->is_in_flow()) { - break; - } - - if (!$f->get_first_child()) { - $f = null; - break; - } - } - } - - // Margins are collapsed only between block-level boxes - if ($f) { - $f_style = $f->get_style(); - $f_t = (float)$f_style->length_in_pt($f_style->margin_top, $cb["w"]); - - $t = $this->get_collapsed_margin_length($t, $f_t); - $style->set_used("margin_top", $t); - $f_style->set_used("margin_top", 0.0); - } - } - - // Collapse our last child's margin, if there is no border or padding - if ($style->border_bottom_width == 0 && $style->length_in_pt($style->padding_bottom) == 0) { - $l = $this->_frame->get_last_child(); - if ( $l && !($l->is_block_level() && $l->is_in_flow()) ) { - while ($l = $l->get_prev_sibling()) { - if ($l->is_block_level() && $l->is_in_flow()) { - break; - } - - if (!$l->get_last_child()) { - $l = null; - break; - } - } - } - - // Margins are collapsed only between block-level boxes - if ($l) { - $l_style = $l->get_style(); - $l_b = (float)$l_style->length_in_pt($l_style->margin_bottom, $cb["w"]); - - $b = $this->get_collapsed_margin_length($b, $l_b); - $style->set_used("margin_bottom", $b); - $l_style->set_used("margin_bottom", 0.0); - } - } - } - - /** - * Get the combined (collapsed) length of two adjoining margins. - * - * See http://www.w3.org/TR/CSS21/box.html#collapsing-margins. - * - * @param float $l1 - * @param float $l2 - * - * @return float - */ - private function get_collapsed_margin_length(float $l1, float $l2): float - { - if ($l1 < 0 && $l2 < 0) { - return min($l1, $l2); // min(x, y) = - max(abs(x), abs(y)), if x < 0 && y < 0 - } - - if ($l1 < 0 || $l2 < 0) { - return $l1 + $l2; // x + y = x - abs(y), if y < 0 - } - - return max($l1, $l2); - } - - /** - * Handle relative positioning according to - * https://www.w3.org/TR/CSS21/visuren.html#relative-positioning. - * - * @param AbstractFrameDecorator $frame The frame to handle. - */ - protected function position_relative(AbstractFrameDecorator $frame): void - { - $style = $frame->get_style(); - - if ($style->position === "relative") { - $cb = $frame->get_containing_block(); - $top = $style->length_in_pt($style->top, $cb["h"]); - $right = $style->length_in_pt($style->right, $cb["w"]); - $bottom = $style->length_in_pt($style->bottom, $cb["h"]); - $left = $style->length_in_pt($style->left, $cb["w"]); - - // FIXME RTL case: - // if ($left !== "auto" && $right !== "auto") $left = -$right; - if ($left === "auto" && $right === "auto") { - $left = 0; - } elseif ($left === "auto") { - $left = -$right; - } - - if ($top === "auto" && $bottom === "auto") { - $top = 0; - } elseif ($top === "auto") { - $top = -$bottom; - } - - $frame->move($left, $top); - } - } - - /** - * @param Block|null $block - */ - abstract function reflow(Block $block = null); - - /** - * Resolve the `min-width` property. - * - * Resolves to 0 if not set or if a percentage and the containing-block - * width is not defined. - * - * @param float|null $cbw Width of the containing block. - * - * @return float - */ - protected function resolve_min_width(?float $cbw): float - { - $style = $this->_frame->get_style(); - $min_width = $style->min_width; - - return $min_width !== "auto" - ? $style->length_in_pt($min_width, $cbw ?? 0) - : 0.0; - } - - /** - * Resolve the `max-width` property. - * - * Resolves to `INF` if not set or if a percentage and the containing-block - * width is not defined. - * - * @param float|null $cbw Width of the containing block. - * - * @return float - */ - protected function resolve_max_width(?float $cbw): float - { - $style = $this->_frame->get_style(); - $max_width = $style->max_width; - - return $max_width !== "none" - ? $style->length_in_pt($max_width, $cbw ?? INF) - : INF; - } - - /** - * Resolve the `min-height` property. - * - * Resolves to 0 if not set or if a percentage and the containing-block - * height is not defined. - * - * @param float|null $cbh Height of the containing block. - * - * @return float - */ - protected function resolve_min_height(?float $cbh): float - { - $style = $this->_frame->get_style(); - $min_height = $style->min_height; - - return $min_height !== "auto" - ? $style->length_in_pt($min_height, $cbh ?? 0) - : 0.0; - } - - /** - * Resolve the `max-height` property. - * - * Resolves to `INF` if not set or if a percentage and the containing-block - * height is not defined. - * - * @param float|null $cbh Height of the containing block. - * - * @return float - */ - protected function resolve_max_height(?float $cbh): float - { - $style = $this->_frame->get_style(); - $max_height = $style->max_height; - - return $max_height !== "none" - ? $style->length_in_pt($style->max_height, $cbh ?? INF) - : INF; - } - - /** - * Get the minimum and maximum preferred width of the contents of the frame, - * as requested by its children. - * - * @return array A two-element array of min and max width. - */ - public function get_min_max_child_width(): array - { - if (!is_null($this->_min_max_child_cache)) { - return $this->_min_max_child_cache; - } - - $low = []; - $high = []; - - for ($iter = $this->_frame->get_children(); $iter->valid(); $iter->next()) { - $inline_min = 0; - $inline_max = 0; - - // Add all adjacent inline widths together to calculate max width - while ($iter->valid() && ($iter->current()->is_inline_level() || $iter->current()->get_style()->display === "-dompdf-image")) { - /** @var AbstractFrameDecorator */ - $child = $iter->current(); - $child->get_reflower()->_set_content(); - $minmax = $child->get_min_max_width(); - - if (in_array($child->get_style()->white_space, ["pre", "nowrap"], true)) { - $inline_min += $minmax["min"]; - } else { - $low[] = $minmax["min"]; - } - - $inline_max += $minmax["max"]; - $iter->next(); - } - - if ($inline_min > 0) { - $low[] = $inline_min; - } - if ($inline_max > 0) { - $high[] = $inline_max; - } - - // Skip children with absolute position - if ($iter->valid() && !$iter->current()->is_absolute()) { - /** @var AbstractFrameDecorator */ - $child = $iter->current(); - $child->get_reflower()->_set_content(); - list($low[], $high[]) = $child->get_min_max_width(); - } - } - - $min = count($low) ? max($low) : 0; - $max = count($high) ? max($high) : 0; - - return $this->_min_max_child_cache = [$min, $max]; - } - - /** - * Get the minimum and maximum preferred content-box width of the frame. - * - * @return array A two-element array of min and max width. - */ - public function get_min_max_content_width(): array - { - return $this->get_min_max_child_width(); - } - - /** - * Get the minimum and maximum preferred border-box width of the frame. - * - * Required for shrink-to-fit width calculation, as used in automatic table - * layout, absolute positioning, float and inline-block. This provides a - * basic implementation. Child classes should override this or - * `get_min_max_content_width` as necessary. - * - * @return array An array `[0 => min, 1 => max, "min" => min, "max" => max]` - * of min and max width. - */ - public function get_min_max_width(): array - { - if (!is_null($this->_min_max_cache)) { - return $this->_min_max_cache; - } - - $style = $this->_frame->get_style(); - [$min, $max] = $this->get_min_max_content_width(); - - // Account for margins, borders, and padding - $dims = [ - $style->padding_left, - $style->padding_right, - $style->border_left_width, - $style->border_right_width, - $style->margin_left, - $style->margin_right - ]; - - // The containing block is not defined yet, treat percentages as 0 - $delta = (float) $style->length_in_pt($dims, 0); - $min += $delta; - $max += $delta; - - return $this->_min_max_cache = [$min, $max, "min" => $min, "max" => $max]; - } - - /** - * Parses a CSS string containing quotes and escaped hex characters - * - * @param $string string The CSS string to parse - * @param $single_trim - * @return string - */ - protected function _parse_string($string, $single_trim = false) - { - if ($single_trim) { - $string = preg_replace('/^[\"\']/', "", $string); - $string = preg_replace('/[\"\']$/', "", $string); - } else { - $string = trim($string, "'\""); - } - - $string = str_replace(["\\\n", '\\"', "\\'"], - ["", '"', "'"], $string); - - // Convert escaped hex characters into ascii characters (e.g. \A => newline) - $string = preg_replace_callback("/\\\\([0-9a-fA-F]{0,6})/", - function ($matches) { return \Dompdf\Helpers::unichr(hexdec($matches[1])); }, - $string); - return $string; - } - - /** - * Parses a CSS "quotes" property - * - * https://www.w3.org/TR/css-content-3/#quotes - * - * @return array An array of pairs of quotes - */ - protected function _parse_quotes(): array - { - $quotes = $this->_frame->get_style()->quotes; - - if ($quotes === "none") { - return []; - } - - if ($quotes === "auto") { - // TODO: Use typographically appropriate quotes for the current - // language here - return [['"', '"'], ["'", "'"]]; - } - - // Matches quote types - $re = '/(\'[^\']*\')|(\"[^\"]*\")/'; - - // Split on spaces, except within quotes - if (!preg_match_all($re, $quotes, $matches, PREG_SET_ORDER)) { - return []; - } - - $quotes_array = []; - foreach ($matches as $_quote) { - $quotes_array[] = $this->_parse_string($_quote[0], true); - } - - return array_chunk($quotes_array, 2); - } - - /** - * Parses the CSS "content" property - * - * https://www.w3.org/TR/CSS21/generate.html#content - * - * @return string The resulting string - */ - protected function _parse_content(): string - { - $style = $this->_frame->get_style(); - $content = $style->content; - - if ($content === "normal" || $content === "none") { - return ""; - } - - $quotes = $this->_parse_quotes(); - $text = ""; - - foreach ($content as $val) { - // String - if (in_array(mb_substr($val, 0, 1), ['"', "'"], true)) { - $text .= $this->_parse_string($val); - continue; - } - - $val = mb_strtolower($val); - - // Keywords - if ($val === "open-quote") { - // FIXME: Take quotation depth into account - if (isset($quotes[0][0])) { - $text .= $quotes[0][0]; - } - continue; - } elseif ($val === "close-quote") { - // FIXME: Take quotation depth into account - if (isset($quotes[0][1])) { - $text .= $quotes[0][1]; - } - continue; - } elseif ($val === "no-open-quote") { - // FIXME: Increment quotation depth - continue; - } elseif ($val === "no-close-quote") { - // FIXME: Decrement quotation depth - continue; - } - - // attr() - if (mb_substr($val, 0, 5) === "attr(") { - $i = mb_strpos($val, ")"); - if ($i === false) { - continue; - } - - $attr = trim(mb_substr($val, 5, $i - 5)); - if ($attr === "") { - continue; - } - - $text .= $this->_frame->get_parent()->get_node()->getAttribute($attr); - continue; - } - - // counter()/counters() - if (mb_substr($val, 0, 7) === "counter") { - // Handle counter() references: - // http://www.w3.org/TR/CSS21/generate.html#content - - $i = mb_strpos($val, ")"); - if ($i === false) { - continue; - } - - preg_match('/(counters?)(^\()*?\(\s*([^\s,]+)\s*(,\s*["\']?([^"\'\)]*)["\']?\s*(,\s*([^\s)]+)\s*)?)?\)/i', $val, $args); - $counter_id = $args[3]; - - if (strtolower($args[1]) === "counter") { - // counter(name [,style]) - if (isset($args[5])) { - $type = trim($args[5]); - } else { - $type = "decimal"; - } - $p = $this->_frame->lookup_counter_frame($counter_id); - - $text .= $p->counter_value($counter_id, $type); - } elseif (strtolower($args[1]) === "counters") { - // counters(name, string [,style]) - if (isset($args[5])) { - $string = $this->_parse_string($args[5]); - } else { - $string = ""; - } - - if (isset($args[7])) { - $type = trim($args[7]); - } else { - $type = "decimal"; - } - - $p = $this->_frame->lookup_counter_frame($counter_id); - $tmp = []; - while ($p) { - // We only want to use the counter values when they actually increment the counter - if (array_key_exists($counter_id, $p->_counters)) { - array_unshift($tmp, $p->counter_value($counter_id, $type)); - } - $p = $p->lookup_counter_frame($counter_id); - } - $text .= implode($string, $tmp); - } else { - // countertops? - } - - continue; - } - } - - return $text; - } - - /** - * Handle counters and set generated content if the frame is a - * generated-content frame. - */ - protected function _set_content(): void - { - $frame = $this->_frame; - - if ($frame->content_set) { - return; - } - - $style = $frame->get_style(); - - if (($reset = $style->counter_reset) !== "none") { - $frame->reset_counters($reset); - } - - if (($increment = $style->counter_increment) !== "none") { - $frame->increment_counters($increment); - } - - if ($frame->get_node()->nodeName === "dompdf_generated") { - $content = $this->_parse_content(); - - if ($content !== "") { - $node = $frame->get_node()->ownerDocument->createTextNode($content); - - $new_style = $style->get_stylesheet()->create_style(); - $new_style->inherit($style); - - $new_frame = new Frame($node); - $new_frame->set_style($new_style); - - Factory::decorate_frame($new_frame, $frame->get_dompdf(), $frame->get_root()); - $frame->append_child($new_frame); - } - } - - $frame->content_set = true; - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/Block.php b/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/Block.php deleted file mode 100644 index 9fb7184b..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/Block.php +++ /dev/null @@ -1,948 +0,0 @@ -_frame; - $style = $frame->get_style(); - $absolute = $frame->is_absolute(); - - $cb = $frame->get_containing_block(); - $w = $cb["w"]; - - $rm = $style->length_in_pt($style->margin_right, $w); - $lm = $style->length_in_pt($style->margin_left, $w); - - $left = $style->length_in_pt($style->left, $w); - $right = $style->length_in_pt($style->right, $w); - - // Handle 'auto' values - $dims = [$style->border_left_width, - $style->border_right_width, - $style->padding_left, - $style->padding_right, - $width !== "auto" ? $width : 0, - $rm !== "auto" ? $rm : 0, - $lm !== "auto" ? $lm : 0]; - - // absolutely positioned boxes take the 'left' and 'right' properties into account - if ($absolute) { - $dims[] = $left !== "auto" ? $left : 0; - $dims[] = $right !== "auto" ? $right : 0; - } - - $sum = (float)$style->length_in_pt($dims, $w); - - // Compare to the containing block - $diff = $w - $sum; - - if ($absolute) { - // Absolutely positioned - // http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width - - if ($width === "auto" || $left === "auto" || $right === "auto") { - // "all of the three are 'auto'" logic + otherwise case - if ($lm === "auto") { - $lm = 0; - } - if ($rm === "auto") { - $rm = 0; - } - - $block_parent = $frame->find_block_parent(); - $parent_content = $block_parent->get_content_box(); - $line = $block_parent->get_current_line_box(); - - // TODO: This is the in-flow inline position. Use the in-flow - // block position if the original display type is block-level - $inflow_x = $parent_content["x"] - $cb["x"] + $line->left + $line->w; - - if ($width === "auto" && $left === "auto" && $right === "auto") { - // rule 3, per instruction preceding rule set - // shrink-to-fit width - $left = $inflow_x; - [$min, $max] = $this->get_min_max_child_width(); - $width = min(max($min, $diff - $left), $max); - $right = $diff - $left - $width; - } elseif ($width === "auto" && $left === "auto") { - // rule 1 - // shrink-to-fit width - [$min, $max] = $this->get_min_max_child_width(); - $width = min(max($min, $diff), $max); - $left = $diff - $width; - } elseif ($width === "auto" && $right === "auto") { - // rule 3 - // shrink-to-fit width - [$min, $max] = $this->get_min_max_child_width(); - $width = min(max($min, $diff), $max); - $right = $diff - $width; - } elseif ($left === "auto" && $right === "auto") { - // rule 2 - $left = $inflow_x; - $right = $diff - $left; - } elseif ($left === "auto") { - // rule 4 - $left = $diff; - } elseif ($width === "auto") { - // rule 5 - $width = max($diff, 0); - } else { - // $right === "auto" - // rule 6 - $right = $diff; - } - } else { - // "none of the three are 'auto'" logic described in paragraph preceding the rules - if ($diff >= 0) { - if ($lm === "auto" && $rm === "auto") { - $lm = $rm = $diff / 2; - } elseif ($lm === "auto") { - $lm = $diff; - } elseif ($rm === "auto") { - $rm = $diff; - } - } else { - // over-constrained, solve for right - $right = $right + $diff; - - if ($lm === "auto") { - $lm = 0; - } - if ($rm === "auto") { - $rm = 0; - } - } - } - } elseif ($style->float !== "none" || $style->display === "inline-block") { - // Shrink-to-fit width for float and inline block - // https://www.w3.org/TR/CSS21/visudet.html#float-width - // https://www.w3.org/TR/CSS21/visudet.html#inlineblock-width - - if ($width === "auto") { - [$min, $max] = $this->get_min_max_child_width(); - $width = min(max($min, $diff), $max); - } - if ($lm === "auto") { - $lm = 0; - } - if ($rm === "auto") { - $rm = 0; - } - } else { - // Block-level, normal flow - // https://www.w3.org/TR/CSS21/visudet.html#blockwidth - - if ($diff >= 0) { - // Find auto properties and get them to take up the slack - if ($width === "auto") { - $width = $diff; - - if ($lm === "auto") { - $lm = 0; - } - if ($rm === "auto") { - $rm = 0; - } - } elseif ($lm === "auto" && $rm === "auto") { - $lm = $rm = $diff / 2; - } elseif ($lm === "auto") { - $lm = $diff; - } elseif ($rm === "auto") { - $rm = $diff; - } - } else { - // We are over constrained--set margin-right to the difference - $rm = (float) $rm + $diff; - - if ($width === "auto") { - $width = 0; - } - if ($lm === "auto") { - $lm = 0; - } - } - } - - return [ - "width" => $width, - "margin_left" => $lm, - "margin_right" => $rm, - "left" => $left, - "right" => $right, - ]; - } - - /** - * Call the above function, but resolve max/min widths - * - * @throws Exception - * @return array - */ - protected function _calculate_restricted_width() - { - $frame = $this->_frame; - $style = $frame->get_style(); - $cb = $frame->get_containing_block(); - - if (!isset($cb["w"])) { - throw new Exception("Box property calculation requires containing block width"); - } - - $width = $style->length_in_pt($style->width, $cb["w"]); - - $values = $this->_calculate_width($width); - $margin_left = $values["margin_left"]; - $margin_right = $values["margin_right"]; - $width = $values["width"]; - $left = $values["left"]; - $right = $values["right"]; - - // Handle min/max width - // https://www.w3.org/TR/CSS21/visudet.html#min-max-widths - $min_width = $this->resolve_min_width($cb["w"]); - $max_width = $this->resolve_max_width($cb["w"]); - - if ($width > $max_width) { - $values = $this->_calculate_width($max_width); - $margin_left = $values["margin_left"]; - $margin_right = $values["margin_right"]; - $width = $values["width"]; - $left = $values["left"]; - $right = $values["right"]; - } - - if ($width < $min_width) { - $values = $this->_calculate_width($min_width); - $margin_left = $values["margin_left"]; - $margin_right = $values["margin_right"]; - $width = $values["width"]; - $left = $values["left"]; - $right = $values["right"]; - } - - return [$width, $margin_left, $margin_right, $left, $right]; - } - - /** - * Determine the unrestricted height of content within the block - * not by adding each line's height, but by getting the last line's position. - * This because lines could have been pushed lower by a clearing element. - * - * @return float - */ - protected function _calculate_content_height() - { - $height = 0; - $lines = $this->_frame->get_line_boxes(); - if (count($lines) > 0) { - $last_line = end($lines); - $content_box = $this->_frame->get_content_box(); - $height = $last_line->y + $last_line->h - $content_box["y"]; - } - return $height; - } - - /** - * Determine the frame's restricted height - * - * @return array - */ - protected function _calculate_restricted_height() - { - $frame = $this->_frame; - $style = $frame->get_style(); - $content_height = $this->_calculate_content_height(); - $cb = $frame->get_containing_block(); - - $height = $style->length_in_pt($style->height, $cb["h"]); - $margin_top = $style->length_in_pt($style->margin_top, $cb["w"]); - $margin_bottom = $style->length_in_pt($style->margin_bottom, $cb["w"]); - - $top = $style->length_in_pt($style->top, $cb["h"]); - $bottom = $style->length_in_pt($style->bottom, $cb["h"]); - - if ($frame->is_absolute()) { - // Absolutely positioned - // http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-height - - $h_dims = [ - $top !== "auto" ? $top : 0, - $height !== "auto" ? $height : 0, - $bottom !== "auto" ? $bottom : 0 - ]; - $w_dims = [ - $style->margin_top !== "auto" ? $style->margin_top : 0, - $style->padding_top, - $style->border_top_width, - $style->border_bottom_width, - $style->padding_bottom, - $style->margin_bottom !== "auto" ? $style->margin_bottom : 0 - ]; - - $sum = (float)$style->length_in_pt($h_dims, $cb["h"]) - + (float)$style->length_in_pt($w_dims, $cb["w"]); - - $diff = $cb["h"] - $sum; - - if ($height === "auto" || $top === "auto" || $bottom === "auto") { - // "all of the three are 'auto'" logic + otherwise case - if ($margin_top === "auto") { - $margin_top = 0; - } - if ($margin_bottom === "auto") { - $margin_bottom = 0; - } - - $block_parent = $frame->find_block_parent(); - $current_line = $block_parent->get_current_line_box(); - - // TODO: This is the in-flow inline position. Use the in-flow - // block position if the original display type is block-level - $inflow_y = $current_line->y - $cb["y"]; - - if ($height === "auto" && $top === "auto" && $bottom === "auto") { - // rule 3, per instruction preceding rule set - $top = $inflow_y; - $height = $content_height; - $bottom = $diff - $top - $height; - } elseif ($height === "auto" && $top === "auto") { - // rule 1 - $height = $content_height; - $top = $diff - $height; - } elseif ($height === "auto" && $bottom === "auto") { - // rule 3 - $height = $content_height; - $bottom = $diff - $height; - } elseif ($top === "auto" && $bottom === "auto") { - // rule 2 - $top = $inflow_y; - $bottom = $diff - $top; - } elseif ($top === "auto") { - // rule 4 - $top = $diff; - } elseif ($height === "auto") { - // rule 5 - $height = max($diff, 0); - } else { - // $bottom === "auto" - // rule 6 - $bottom = $diff; - } - } else { - // "none of the three are 'auto'" logic described in paragraph preceding the rules - if ($diff >= 0) { - if ($margin_top === "auto" && $margin_bottom === "auto") { - $margin_top = $margin_bottom = $diff / 2; - } elseif ($margin_top === "auto") { - $margin_top = $diff; - } elseif ($margin_bottom === "auto") { - $margin_bottom = $diff; - } - } else { - // over-constrained, solve for bottom - $bottom = $bottom + $diff; - - if ($margin_top === "auto") { - $margin_top = 0; - } - if ($margin_bottom === "auto") { - $margin_bottom = 0; - } - } - } - } else { - // https://www.w3.org/TR/CSS21/visudet.html#normal-block - // https://www.w3.org/TR/CSS21/visudet.html#block-root-margin - - if ($height === "auto") { - $height = $content_height; - } - if ($margin_top === "auto") { - $margin_top = 0; - } - if ($margin_bottom === "auto") { - $margin_bottom = 0; - } - - // Handle min/max height - // https://www.w3.org/TR/CSS21/visudet.html#min-max-heights - $min_height = $this->resolve_min_height($cb["h"]); - $max_height = $this->resolve_max_height($cb["h"]); - $height = Helpers::clamp($height, $min_height, $max_height); - } - - // TODO: Need to also take min/max height into account for absolute - // positioning, using similar logic to the `_calculate_width`/ - // `calculate_restricted_width` split above. The non-absolute case - // can simply clamp height within min/max, as margins and offsets are - // not affected - - return [$height, $margin_top, $margin_bottom, $top, $bottom]; - } - - /** - * Adjust the justification of each of our lines. - * http://www.w3.org/TR/CSS21/text.html#propdef-text-align - */ - protected function _text_align() - { - $style = $this->_frame->get_style(); - $w = $this->_frame->get_containing_block("w"); - $width = (float)$style->length_in_pt($style->width, $w); - $text_indent = (float)$style->length_in_pt($style->text_indent, $w); - - switch ($style->text_align) { - default: - case "left": - foreach ($this->_frame->get_line_boxes() as $line) { - if (!$line->inline) { - continue; - } - - $line->trim_trailing_ws(); - - if ($line->left) { - foreach ($line->frames_to_align() as $frame) { - $frame->move($line->left, 0); - } - } - } - break; - - case "right": - foreach ($this->_frame->get_line_boxes() as $i => $line) { - if (!$line->inline) { - continue; - } - - $line->trim_trailing_ws(); - - $indent = $i === 0 ? $text_indent : 0; - $dx = $width - $line->w - $line->right - $indent; - - foreach ($line->frames_to_align() as $frame) { - $frame->move($dx, 0); - } - } - break; - - case "justify": - // We justify all lines except the last one, unless the frame - // has been split, in which case the actual last line is part of - // the split-off frame - $lines = $this->_frame->get_line_boxes(); - $last_line_index = $this->_frame->is_split ? null : count($lines) - 1; - - foreach ($lines as $i => $line) { - if (!$line->inline) { - continue; - } - - $line->trim_trailing_ws(); - - if ($line->left) { - foreach ($line->frames_to_align() as $frame) { - $frame->move($line->left, 0); - } - } - - if ($line->br || $i === $last_line_index) { - continue; - } - - $frames = $line->get_frames(); - $other_frame_count = 0; - - foreach ($frames as $frame) { - if (!($frame instanceof TextFrameDecorator)) { - $other_frame_count++; - } - } - - $word_count = $line->wc + $other_frame_count; - - // Set the spacing for each child - if ($word_count > 1) { - $indent = $i === 0 ? $text_indent : 0; - $spacing = ($width - $line->get_width() - $indent) / ($word_count - 1); - } else { - $spacing = 0; - } - - $dx = 0; - foreach ($frames as $frame) { - if ($frame instanceof TextFrameDecorator) { - $text = $frame->get_text(); - $spaces = mb_substr_count($text, " "); - - $frame->move($dx, 0); - $frame->set_text_spacing($spacing); - - $dx += $spaces * $spacing; - } else { - $frame->move($dx, 0); - } - } - - // The line (should) now occupy the entire width - $line->w = $width; - } - break; - - case "center": - case "centre": - foreach ($this->_frame->get_line_boxes() as $i => $line) { - if (!$line->inline) { - continue; - } - - $line->trim_trailing_ws(); - - $indent = $i === 0 ? $text_indent : 0; - $dx = ($width + $line->left - $line->w - $line->right - $indent) / 2; - - foreach ($line->frames_to_align() as $frame) { - $frame->move($dx, 0); - } - } - break; - } - } - - /** - * Align inline children vertically. - * Aligns each child vertically after each line is reflowed - */ - function vertical_align() - { - $fontMetrics = $this->get_dompdf()->getFontMetrics(); - - foreach ($this->_frame->get_line_boxes() as $line) { - $height = $line->h; - - // Move all markers to the top of the line box - foreach ($line->get_list_markers() as $marker) { - $x = $marker->get_position("x"); - $marker->set_position($x, $line->y); - } - - foreach ($line->frames_to_align() as $frame) { - $style = $frame->get_style(); - $isInlineBlock = $style->display !== "inline" - && $style->display !== "-dompdf-list-bullet"; - - $baseline = $fontMetrics->getFontBaseline($style->font_family, $style->font_size); - $y_offset = 0; - - //FIXME: The 0.8 ratio applied to the height is arbitrary (used to accommodate descenders?) - if ($isInlineBlock) { - // Workaround: Skip vertical alignment if the frame is the - // only one one the line, excluding empty text frames, which - // may be the result of trailing white space - // FIXME: This special case should be removed once vertical - // alignment is properly fixed - $skip = true; - - foreach ($line->get_frames() as $other) { - if ($other !== $frame - && !($other->is_text_node() && $other->get_node()->nodeValue === "") - ) { - $skip = false; - break; - } - } - - if ($skip) { - continue; - } - - $marginHeight = $frame->get_margin_height(); - $imageHeightDiff = $height * 0.8 - $marginHeight; - - $align = $frame->get_style()->vertical_align; - if (in_array($align, Style::VERTICAL_ALIGN_KEYWORDS, true)) { - switch ($align) { - case "middle": - $y_offset = $imageHeightDiff / 2; - break; - - case "sub": - $y_offset = 0.3 * $height + $imageHeightDiff; - break; - - case "super": - $y_offset = -0.2 * $height + $imageHeightDiff; - break; - - case "text-top": // FIXME: this should be the height of the frame minus the height of the text - $y_offset = $height - $style->line_height; - break; - - case "top": - break; - - case "text-bottom": // FIXME: align bottom of image with the descender? - case "bottom": - $y_offset = 0.3 * $height + $imageHeightDiff; - break; - - case "baseline": - default: - $y_offset = $imageHeightDiff; - break; - } - } else { - $y_offset = $baseline - (float)$style->length_in_pt($align, $style->font_size) - $marginHeight; - } - } else { - $parent = $frame->get_parent(); - if ($parent instanceof TableCellFrameDecorator) { - $align = "baseline"; - } else { - $align = $parent->get_style()->vertical_align; - } - if (in_array($align, Style::VERTICAL_ALIGN_KEYWORDS, true)) { - switch ($align) { - case "middle": - $y_offset = ($height * 0.8 - $baseline) / 2; - break; - - case "sub": - $y_offset = $height * 0.8 - $baseline * 0.5; - break; - - case "super": - $y_offset = $height * 0.8 - $baseline * 1.4; - break; - - case "text-top": - case "top": // Not strictly accurate, but good enough for now - break; - - case "text-bottom": - case "bottom": - $y_offset = $height * 0.8 - $baseline; - break; - - case "baseline": - default: - $y_offset = $height * 0.8 - $baseline; - break; - } - } else { - $y_offset = $height * 0.8 - $baseline - (float)$style->length_in_pt($align, $style->font_size); - } - } - - if ($y_offset !== 0) { - $frame->move(0, $y_offset); - } - } - } - } - - /** - * @param AbstractFrameDecorator $child - */ - function process_clear(AbstractFrameDecorator $child) - { - $child_style = $child->get_style(); - $root = $this->_frame->get_root(); - - // Handle "clear" - if ($child_style->clear !== "none") { - //TODO: this is a WIP for handling clear/float frames that are in between inline frames - if ($child->get_prev_sibling() !== null) { - $this->_frame->add_line(); - } - if ($child_style->float !== "none" && $child->get_next_sibling()) { - $this->_frame->set_current_line_number($this->_frame->get_current_line_number() - 1); - } - - $lowest_y = $root->get_lowest_float_offset($child); - - // If a float is still applying, we handle it - if ($lowest_y) { - if ($child->is_in_flow()) { - $line_box = $this->_frame->get_current_line_box(); - $line_box->y = $lowest_y + $child->get_margin_height(); - $line_box->left = 0; - $line_box->right = 0; - } - - $child->move(0, $lowest_y - $child->get_position("y")); - } - } - } - - /** - * @param AbstractFrameDecorator $child - * @param float $cb_x - * @param float $cb_w - */ - function process_float(AbstractFrameDecorator $child, $cb_x, $cb_w) - { - $child_style = $child->get_style(); - $root = $this->_frame->get_root(); - - // Handle "float" - if ($child_style->float !== "none") { - $root->add_floating_frame($child); - - // Remove next frame's beginning whitespace - $next = $child->get_next_sibling(); - if ($next && $next instanceof TextFrameDecorator) { - $next->set_text(ltrim($next->get_text())); - } - - $line_box = $this->_frame->get_current_line_box(); - list($old_x, $old_y) = $child->get_position(); - - $float_x = $cb_x; - $float_y = $old_y; - $float_w = $child->get_margin_width(); - - if ($child_style->clear === "none") { - switch ($child_style->float) { - case "left": - $float_x += $line_box->left; - break; - case "right": - $float_x += ($cb_w - $line_box->right - $float_w); - break; - } - } else { - if ($child_style->float === "right") { - $float_x += ($cb_w - $float_w); - } - } - - if ($cb_w < $float_x + $float_w - $old_x) { - // TODO handle when floating elements don't fit - } - - $line_box->get_float_offsets(); - - if ($child->_float_next_line) { - $float_y += $line_box->h; - } - - $child->set_position($float_x, $float_y); - $child->move($float_x - $old_x, $float_y - $old_y, true); - } - } - - /** - * @param BlockFrameDecorator $block - */ - function reflow(BlockFrameDecorator $block = null) - { - - // Check if a page break is forced - $page = $this->_frame->get_root(); - $page->check_forced_page_break($this->_frame); - - // Bail if the page is full - if ($page->is_full()) { - return; - } - - $this->determine_absolute_containing_block(); - - // Counters and generated content - $this->_set_content(); - - // Inherit any dangling list markers - if ($block && $this->_frame->is_in_flow()) { - $this->_frame->inherit_dangling_markers($block); - } - - // Collapse margins if required - $this->_collapse_margins(); - - $style = $this->_frame->get_style(); - $cb = $this->_frame->get_containing_block(); - - // Determine the constraints imposed by this frame: calculate the width - // of the content area: - [$width, $margin_left, $margin_right, $left, $right] = $this->_calculate_restricted_width(); - - // Store the calculated properties - $style->set_used("width", $width); - $style->set_used("margin_left", $margin_left); - $style->set_used("margin_right", $margin_right); - $style->set_used("left", $left); - $style->set_used("right", $right); - - $margin_top = $style->length_in_pt($style->margin_top, $cb["w"]); - $margin_bottom = $style->length_in_pt($style->margin_bottom, $cb["w"]); - - $auto_top = $style->top === "auto"; - $auto_margin_top = $margin_top === "auto"; - - // Update the position - $this->_frame->position(); - [$x, $y] = $this->_frame->get_position(); - - // Adjust the first line based on the text-indent property - $indent = (float)$style->length_in_pt($style->text_indent, $cb["w"]); - $this->_frame->increase_line_width($indent); - - // Determine the content edge - $top = (float)$style->length_in_pt([ - $margin_top !== "auto" ? $margin_top : 0, - $style->border_top_width, - $style->padding_top - ], $cb["w"]); - $bottom = (float)$style->length_in_pt([ - $margin_bottom !== "auto" ? $margin_bottom : 0, - $style->border_bottom_width, - $style->padding_bottom - ], $cb["w"]); - - $cb_x = $x + (float)$margin_left + (float)$style->length_in_pt([$style->border_left_width, - $style->padding_left], $cb["w"]); - - $cb_y = $y + $top; - - $height = $style->length_in_pt($style->height, $cb["h"]); - if ($height === "auto") { - $height = ($cb["h"] + $cb["y"]) - $bottom - $cb_y; - } - - // Set the y position of the first line in this block - $line_box = $this->_frame->get_current_line_box(); - $line_box->y = $cb_y; - $line_box->get_float_offsets(); - - // Set the containing blocks and reflow each child - foreach ($this->_frame->get_children() as $child) { - $child->set_containing_block($cb_x, $cb_y, $width, $height); - $this->process_clear($child); - $child->reflow($this->_frame); - - // Check for a page break before the child - $page->check_page_break($child); - - // Don't add the child to the line if a page break has occurred - // before it (possibly via a descendant), in which case it has been - // reset, including its position - if ($page->is_full() && $child->get_position("x") === null) { - break; - } - - $this->process_float($child, $cb_x, $width); - } - - // Stop reflow if a page break has occurred before the frame, in which - // case it has been reset, including its position - if ($page->is_full() && $this->_frame->get_position("x") === null) { - return; - } - - // Determine our height - [$height, $margin_top, $margin_bottom, $top, $bottom] = $this->_calculate_restricted_height(); - - $style->set_used("height", $height); - $style->set_used("margin_top", $margin_top); - $style->set_used("margin_bottom", $margin_bottom); - $style->set_used("top", $top); - $style->set_used("bottom", $bottom); - - if ($this->_frame->is_absolute()) { - if ($auto_top) { - $this->_frame->move(0, $top); - } - if ($auto_margin_top) { - $this->_frame->move(0, $margin_top, true); - } - } - - $this->_text_align(); - $this->vertical_align(); - - // Handle relative positioning - foreach ($this->_frame->get_children() as $child) { - $this->position_relative($child); - } - - if ($block && $this->_frame->is_in_flow()) { - $block->add_frame_to_line($this->_frame); - - if ($this->_frame->is_block_level()) { - $block->add_line(); - } - } - } - - public function get_min_max_content_width(): array - { - // TODO: While the containing block is not set yet on the frame, it can - // already be determined in some cases due to fixed dimensions on the - // ancestor forming the containing block. In such cases, percentage - // values could be resolved here - $style = $this->_frame->get_style(); - $width = $style->width; - $fixed_width = $width !== "auto" && !Helpers::is_percent($width); - - // If the frame has a specified width, then we don't need to check - // its children - if ($fixed_width) { - $min = (float) $style->length_in_pt($width, 0); - $max = $min; - } else { - [$min, $max] = $this->get_min_max_child_width(); - } - - // Handle min/max width style properties - $min_width = $this->resolve_min_width(null); - $max_width = $this->resolve_max_width(null); - $min = Helpers::clamp($min, $min_width, $max_width); - $max = Helpers::clamp($max, $min_width, $max_width); - - return [$min, $max]; - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/Image.php b/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/Image.php deleted file mode 100644 index eae34087..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/Image.php +++ /dev/null @@ -1,213 +0,0 @@ -determine_absolute_containing_block(); - - // Counters and generated content - $this->_set_content(); - - //FLOAT - //$frame = $this->_frame; - //$page = $frame->get_root(); - - //if ($frame->get_style()->float !== "none" ) { - // $page->add_floating_frame($this); - //} - - $this->resolve_dimensions(); - $this->resolve_margins(); - - $frame = $this->_frame; - $frame->position(); - - if ($block && $frame->is_in_flow()) { - $block->add_frame_to_line($frame); - } - } - - public function get_min_max_content_width(): array - { - // TODO: While the containing block is not set yet on the frame, it can - // already be determined in some cases due to fixed dimensions on the - // ancestor forming the containing block. In such cases, percentage - // values could be resolved here - $style = $this->_frame->get_style(); - - [$width] = $this->calculate_size(null, null); - $min_width = $this->resolve_min_width(null); - $percent_width = Helpers::is_percent($style->width) - || Helpers::is_percent($style->max_width) - || ($style->width === "auto" - && (Helpers::is_percent($style->height) || Helpers::is_percent($style->max_height))); - - // Use the specified min width as minimum when width or max width depend - // on the containing block and cannot be resolved yet. This mimics - // browser behavior - $min = $percent_width ? $min_width : $width; - $max = $width; - - return [$min, $max]; - } - - /** - * Calculate width and height, accounting for min/max constraints. - * - * * https://www.w3.org/TR/CSS21/visudet.html#inline-replaced-width - * * https://www.w3.org/TR/CSS21/visudet.html#inline-replaced-height - * * https://www.w3.org/TR/CSS21/visudet.html#min-max-widths - * * https://www.w3.org/TR/CSS21/visudet.html#min-max-heights - * - * @param float|null $cbw Width of the containing block. - * @param float|null $cbh Height of the containing block. - * - * @return float[] - */ - protected function calculate_size(?float $cbw, ?float $cbh): array - { - /** @var ImageFrameDecorator */ - $frame = $this->_frame; - $style = $frame->get_style(); - - $computed_width = $style->width; - $computed_height = $style->height; - - $width = $cbw === null && Helpers::is_percent($computed_width) - ? "auto" - : $style->length_in_pt($computed_width, $cbw ?? 0); - $height = $cbh === null && Helpers::is_percent($computed_height) - ? "auto" - : $style->length_in_pt($computed_height, $cbh ?? 0); - $min_width = $this->resolve_min_width($cbw); - $max_width = $this->resolve_max_width($cbw); - $min_height = $this->resolve_min_height($cbh); - $max_height = $this->resolve_max_height($cbh); - - if ($width === "auto" && $height === "auto") { - // Use intrinsic dimensions, resampled to pt - [$img_width, $img_height] = $frame->get_intrinsic_dimensions(); - $w = $frame->resample($img_width); - $h = $frame->resample($img_height); - - // Resolve min/max constraints according to the constraint-violation - // table in https://www.w3.org/TR/CSS21/visudet.html#min-max-widths - $max_width = max($min_width, $max_width); - $max_height = max($min_height, $max_height); - - if (($w > $max_width && $h <= $max_height) - || ($w > $max_width && $h > $max_height && $max_width / $w <= $max_height / $h) - || ($w < $min_width && $h > $min_height) - || ($w < $min_width && $h < $min_height && $min_width / $w > $min_height / $h) - ) { - $width = Helpers::clamp($w, $min_width, $max_width); - $height = $width * ($img_height / $img_width); - $height = Helpers::clamp($height, $min_height, $max_height); - } else { - $height = Helpers::clamp($h, $min_height, $max_height); - $width = $height * ($img_width / $img_height); - $width = Helpers::clamp($width, $min_width, $max_width); - } - } elseif ($height === "auto") { - // Width is fixed, scale height according to aspect ratio - [$img_width, $img_height] = $frame->get_intrinsic_dimensions(); - $width = Helpers::clamp((float) $width, $min_width, $max_width); - $height = $width * ($img_height / $img_width); - $height = Helpers::clamp($height, $min_height, $max_height); - } elseif ($width === "auto") { - // Height is fixed, scale width according to aspect ratio - [$img_width, $img_height] = $frame->get_intrinsic_dimensions(); - $height = Helpers::clamp((float) $height, $min_height, $max_height); - $width = $height * ($img_width / $img_height); - $width = Helpers::clamp($width, $min_width, $max_width); - } else { - // Width and height are fixed - $width = Helpers::clamp((float) $width, $min_width, $max_width); - $height = Helpers::clamp((float) $height, $min_height, $max_height); - } - - return [$width, $height]; - } - - protected function resolve_dimensions(): void - { - /** @var ImageFrameDecorator */ - $frame = $this->_frame; - $style = $frame->get_style(); - - $debug_png = $this->get_dompdf()->getOptions()->getDebugPng(); - - if ($debug_png) { - [$img_width, $img_height] = $frame->get_intrinsic_dimensions(); - print "resolve_dimensions() " . - $frame->get_style()->width . " " . - $frame->get_style()->height . ";" . - $frame->get_parent()->get_style()->width . " " . - $frame->get_parent()->get_style()->height . ";" . - $frame->get_parent()->get_parent()->get_style()->width . " " . - $frame->get_parent()->get_parent()->get_style()->height . ";" . - $img_width . " " . - $img_height . "|"; - } - - [, , $cbw, $cbh] = $frame->get_containing_block(); - [$width, $height] = $this->calculate_size($cbw, $cbh); - - if ($debug_png) { - print $width . " " . $height . ";"; - } - - $style->set_used("width", $width); - $style->set_used("height", $height); - } - - protected function resolve_margins(): void - { - // Only handle the inline case for now - // https://www.w3.org/TR/CSS21/visudet.html#inline-replaced-width - // https://www.w3.org/TR/CSS21/visudet.html#inline-replaced-height - $style = $this->_frame->get_style(); - - if ($style->margin_left === "auto") { - $style->set_used("margin_left", 0.0); - } - if ($style->margin_right === "auto") { - $style->set_used("margin_right", 0.0); - } - if ($style->margin_top === "auto") { - $style->set_used("margin_top", 0.0); - } - if ($style->margin_bottom === "auto") { - $style->set_used("margin_bottom", 0.0); - } - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/Inline.php b/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/Inline.php deleted file mode 100644 index 34a66860..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/Inline.php +++ /dev/null @@ -1,188 +0,0 @@ -_frame; - $style = $frame->get_style(); - - // Resolve width, so the margin width can be checked - $style->set_used("width", 0.0); - - $cb = $frame->get_containing_block(); - $line = $block->get_current_line_box(); - $width = $frame->get_margin_width(); - - if ($width > ($cb["w"] - $line->left - $line->w - $line->right)) { - $block->add_line(); - - // Find the appropriate inline ancestor to split - $child = $frame; - $p = $child->get_parent(); - while ($p instanceof InlineFrameDecorator && !$child->get_prev_sibling()) { - $child = $p; - $p = $p->get_parent(); - } - - if ($p instanceof InlineFrameDecorator) { - // Split parent and stop current reflow. Reflow continues - // via child-reflow loop of split parent - $p->split($child); - return; - } - } - - $frame->position(); - $block->add_frame_to_line($frame); - } - - /** - * @param BlockFrameDecorator|null $block - */ - function reflow(BlockFrameDecorator $block = null) - { - /** @var InlineFrameDecorator */ - $frame = $this->_frame; - - // Check if a page break is forced - $page = $frame->get_root(); - $page->check_forced_page_break($frame); - - if ($page->is_full()) { - return; - } - - // Counters and generated content - $this->_set_content(); - - $style = $frame->get_style(); - - // Resolve auto margins - // https://www.w3.org/TR/CSS21/visudet.html#inline-width - // https://www.w3.org/TR/CSS21/visudet.html#inline-non-replaced - if ($style->margin_left === "auto") { - $style->set_used("margin_left", 0.0); - } - if ($style->margin_right === "auto") { - $style->set_used("margin_right", 0.0); - } - if ($style->margin_top === "auto") { - $style->set_used("margin_top", 0.0); - } - if ($style->margin_bottom === "auto") { - $style->set_used("margin_bottom", 0.0); - } - - // Handle line breaks - if ($frame->get_node()->nodeName === "br") { - if ($block) { - $line = $block->get_current_line_box(); - $frame->set_containing_line($line); - $block->maximize_line_height($frame->get_margin_height(), $frame); - $block->add_line(true); - - $next = $frame->get_next_sibling(); - $p = $frame->get_parent(); - - if ($next && $p instanceof InlineFrameDecorator) { - $p->split($next); - } - } - return; - } - - // Handle empty inline frames - if (!$frame->get_first_child()) { - if ($block) { - $this->reflow_empty($block); - } - return; - } - - // Add our margin, padding & border to the first and last children - if (($f = $frame->get_first_child()) && $f instanceof TextFrameDecorator) { - $f_style = $f->get_style(); - $f_style->margin_left = $style->margin_left; - $f_style->padding_left = $style->padding_left; - $f_style->border_left_width = $style->border_left_width; - $f_style->border_left_style = $style->border_left_style; - $f_style->border_left_color = $style->border_left_color; - } - - if (($l = $frame->get_last_child()) && $l instanceof TextFrameDecorator) { - $l_style = $l->get_style(); - $l_style->margin_right = $style->margin_right; - $l_style->padding_right = $style->padding_right; - $l_style->border_right_width = $style->border_right_width; - $l_style->border_right_style = $style->border_right_style; - $l_style->border_right_color = $style->border_right_color; - } - - $cb = $frame->get_containing_block(); - - // Set the containing blocks and reflow each child. The containing - // block is not changed by line boxes. - foreach ($frame->get_children() as $child) { - $child->set_containing_block($cb); - $child->reflow($block); - - // Stop reflow if the frame has been reset by a line or page break - // due to child reflow - if (!$frame->content_set) { - return; - } - } - - if (!$frame->get_first_child()) { - return; - } - - // Assume the position of the first child - [$x, $y] = $frame->get_first_child()->get_position(); - $frame->set_position($x, $y); - - // Handle relative positioning - foreach ($frame->get_children() as $child) { - $this->position_relative($child); - } - - if ($block) { - $block->add_frame_to_line($frame); - } - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/ListBullet.php b/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/ListBullet.php deleted file mode 100644 index 3618a28f..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/ListBullet.php +++ /dev/null @@ -1,51 +0,0 @@ -_frame; - $style = $frame->get_style(); - - $style->set_used("width", $frame->get_width()); - $frame->position(); - - if ($style->list_style_position === "inside") { - $block->add_frame_to_line($frame); - } else { - $block->add_dangling_marker($frame); - } - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/NullFrameReflower.php b/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/NullFrameReflower.php deleted file mode 100644 index 8d7e5583..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/NullFrameReflower.php +++ /dev/null @@ -1,37 +0,0 @@ -get_style(); - $page_styles = $style->get_stylesheet()->get_page_styles(); - - // http://www.w3.org/TR/CSS21/page.html#page-selectors - if (count($page_styles) > 1) { - $odd = $page_number % 2 == 1; - $first = $page_number == 1; - - $style = clone $page_styles["base"]; - - // FIXME RTL - if ($odd && isset($page_styles[":right"])) { - $style->merge($page_styles[":right"]); - } - - if ($odd && isset($page_styles[":odd"])) { - $style->merge($page_styles[":odd"]); - } - - // FIXME RTL - if (!$odd && isset($page_styles[":left"])) { - $style->merge($page_styles[":left"]); - } - - if (!$odd && isset($page_styles[":even"])) { - $style->merge($page_styles[":even"]); - } - - if ($first && isset($page_styles[":first"])) { - $style->merge($page_styles[":first"]); - } - - $frame->set_style($style); - } - - $frame->calculate_bottom_page_edge(); - } - - /** - * Paged layout: - * http://www.w3.org/TR/CSS21/page.html - * - * @param BlockFrameDecorator|null $block - */ - function reflow(BlockFrameDecorator $block = null) - { - /** @var PageFrameDecorator $frame */ - $frame = $this->_frame; - $child = $frame->get_first_child(); - $fixed_children = []; - $prev_child = null; - $current_page = 0; - - while ($child) { - $this->apply_page_style($frame, $current_page + 1); - - $style = $frame->get_style(); - - // Pages are only concerned with margins - $cb = $frame->get_containing_block(); - $left = (float)$style->length_in_pt($style->margin_left, $cb["w"]); - $right = (float)$style->length_in_pt($style->margin_right, $cb["w"]); - $top = (float)$style->length_in_pt($style->margin_top, $cb["h"]); - $bottom = (float)$style->length_in_pt($style->margin_bottom, $cb["h"]); - - $content_x = $cb["x"] + $left; - $content_y = $cb["y"] + $top; - $content_width = $cb["w"] - $left - $right; - $content_height = $cb["h"] - $top - $bottom; - - // Only if it's the first page, we save the nodes with a fixed position - if ($current_page == 0) { - foreach ($child->get_children() as $onechild) { - if ($onechild->get_style()->position === "fixed") { - $fixed_children[] = $onechild->deep_copy(); - } - } - $fixed_children = array_reverse($fixed_children); - } - - $child->set_containing_block($content_x, $content_y, $content_width, $content_height); - - // Check for begin reflow callback - $this->_check_callbacks("begin_page_reflow", $child); - - //Insert a copy of each node which have a fixed position - if ($current_page >= 1) { - foreach ($fixed_children as $fixed_child) { - $child->insert_child_before($fixed_child->deep_copy(), $child->get_first_child()); - } - } - - $child->reflow(); - $next_child = $child->get_next_sibling(); - - // Check for begin render callback - $this->_check_callbacks("begin_page_render", $child); - - // Render the page - $frame->get_renderer()->render($child); - - // Check for end render callback - $this->_check_callbacks("end_page_render", $child); - - if ($next_child) { - $frame->next_page(); - } - - // Wait to dispose of all frames on the previous page - // so callback will have access to them - if ($prev_child) { - $prev_child->dispose(true); - } - $prev_child = $child; - $child = $next_child; - $current_page++; - } - - // Dispose of previous page if it still exists - if ($prev_child) { - $prev_child->dispose(true); - } - } - - /** - * Check for callbacks that need to be performed when a given event - * gets triggered on a page - * - * @param string $event The type of event - * @param Frame $frame The frame that event is triggered on - */ - protected function _check_callbacks(string $event, Frame $frame): void - { - if (!isset($this->_callbacks)) { - $dompdf = $this->get_dompdf(); - $this->_callbacks = $dompdf->getCallbacks(); - $this->_canvas = $dompdf->getCanvas(); - } - - if (isset($this->_callbacks[$event])) { - $fs = $this->_callbacks[$event]; - $canvas = $this->_canvas; - $fontMetrics = $this->get_dompdf()->getFontMetrics(); - - foreach ($fs as $f) { - $f($frame, $canvas, $fontMetrics); - } - } - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/Table.php b/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/Table.php deleted file mode 100644 index 5173738e..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/Table.php +++ /dev/null @@ -1,523 +0,0 @@ -_state = null; - parent::__construct($frame); - } - - /** - * State is held here so it needs to be reset along with the decorator - */ - public function reset(): void - { - parent::reset(); - $this->_state = null; - } - - protected function _assign_widths() - { - $style = $this->_frame->get_style(); - - // Find the min/max width of the table and sort the columns into - // absolute/percent/auto arrays - $delta = $this->_state["width_delta"]; - $min_width = $this->_state["min_width"]; - $max_width = $this->_state["max_width"]; - $percent_used = $this->_state["percent_used"]; - $absolute_used = $this->_state["absolute_used"]; - $auto_min = $this->_state["auto_min"]; - - $absolute =& $this->_state["absolute"]; - $percent =& $this->_state["percent"]; - $auto =& $this->_state["auto"]; - - // Determine the actual width of the table (excluding borders and - // padding) - $cb = $this->_frame->get_containing_block(); - $columns =& $this->_frame->get_cellmap()->get_columns(); - - $width = $style->width; - $min_table_width = $this->resolve_min_width($cb["w"]) - $delta; - - if ($width !== "auto") { - $preferred_width = (float) $style->length_in_pt($width, $cb["w"]) - $delta; - - if ($preferred_width < $min_table_width) { - $preferred_width = $min_table_width; - } - - if ($preferred_width > $min_width) { - $width = $preferred_width; - } else { - $width = $min_width; - } - - } else { - if ($max_width + $delta < $cb["w"]) { - $width = $max_width; - } elseif ($cb["w"] - $delta > $min_width) { - $width = $cb["w"] - $delta; - } else { - $width = $min_width; - } - - if ($width < $min_table_width) { - $width = $min_table_width; - } - - } - - // Store our resolved width - $style->set_used("width", $width); - - $cellmap = $this->_frame->get_cellmap(); - - if ($cellmap->is_columns_locked()) { - return; - } - - // If the whole table fits on the page, then assign each column it's max width - if ($width == $max_width) { - foreach ($columns as $i => $col) { - $cellmap->set_column_width($i, $col["max-width"]); - } - - return; - } - - // Determine leftover and assign it evenly to all columns - if ($width > $min_width) { - // We have three cases to deal with: - // - // 1. All columns are auto or absolute width. In this case we - // distribute extra space across all auto columns weighted by the - // difference between their max and min width, or by max width only - // if the width of the table is larger than the max width for all - // columns. - // - // 2. Only absolute widths have been specified, no auto columns. In - // this case we distribute extra space across all columns weighted - // by their absolute width. - // - // 3. Percentage widths have been specified. In this case we normalize - // the percentage values and try to assign widths as fractions of - // the table width. Absolute column widths are fully satisfied and - // any remaining space is evenly distributed among all auto columns. - - // Case 1: - if ($percent_used == 0 && count($auto)) { - foreach ($absolute as $i) { - $w = $columns[$i]["min-width"]; - $cellmap->set_column_width($i, $w); - } - - if ($width < $max_width) { - $increment = $width - $min_width; - $table_delta = $max_width - $min_width; - - foreach ($auto as $i) { - $min = $columns[$i]["min-width"]; - $max = $columns[$i]["max-width"]; - $col_delta = $max - $min; - $w = $min + $increment * ($col_delta / $table_delta); - $cellmap->set_column_width($i, $w); - } - } else { - $increment = $width - $max_width; - $auto_max = $max_width - $absolute_used; - - foreach ($auto as $i) { - $max = $columns[$i]["max-width"]; - $f = $auto_max > 0 ? $max / $auto_max : 1 / count($auto); - $w = $max + $increment * $f; - $cellmap->set_column_width($i, $w); - } - } - return; - } - - // Case 2: - if ($percent_used == 0 && !count($auto)) { - $increment = $width - $absolute_used; - - foreach ($absolute as $i) { - $abs = $columns[$i]["min-width"]; - $f = $absolute_used > 0 ? $abs / $absolute_used : 1 / count($absolute); - $w = $abs + $increment * $f; - $cellmap->set_column_width($i, $w); - } - return; - } - - // Case 3: - if ($percent_used > 0) { - // Scale percent values if the total percentage is > 100 or - // there are no auto values to take up slack - if ($percent_used > 100 || count($auto) == 0) { - $scale = 100 / $percent_used; - } else { - $scale = 1; - } - - // Account for the minimum space used by the unassigned auto - // columns, by the columns with absolute widths, and the - // percentage columns following the current one - $used_width = $auto_min + $absolute_used; - - foreach ($absolute as $i) { - $w = $columns[$i]["min-width"]; - $cellmap->set_column_width($i, $w); - } - - $percent_min = 0; - - foreach ($percent as $i) { - $percent_min += $columns[$i]["min-width"]; - } - - // First-come, first served - foreach ($percent as $i) { - $min = $columns[$i]["min-width"]; - $percent_min -= $min; - $slack = $width - $used_width - $percent_min; - - $columns[$i]["percent"] *= $scale; - $w = min($columns[$i]["percent"] * $width / 100, $slack); - - if ($w < $min) { - $w = $min; - } - - $cellmap->set_column_width($i, $w); - $used_width += $w; - } - - // This works because $used_width includes the min-width of each - // unassigned column - if (count($auto) > 0) { - $increment = ($width - $used_width) / count($auto); - - foreach ($auto as $i) { - $w = $columns[$i]["min-width"] + $increment; - $cellmap->set_column_width($i, $w); - } - } - return; - } - } else { - // We are over-constrained: - // Each column gets its minimum width - foreach ($columns as $i => $col) { - $cellmap->set_column_width($i, $col["min-width"]); - } - } - } - - /** - * Determine the frame's height based on min/max height - * - * @return float - */ - protected function _calculate_height() - { - $frame = $this->_frame; - $style = $frame->get_style(); - $cb = $frame->get_containing_block(); - - $height = $style->length_in_pt($style->height, $cb["h"]); - - $cellmap = $frame->get_cellmap(); - $cellmap->assign_frame_heights(); - $rows = $cellmap->get_rows(); - - // Determine our content height - $content_height = 0.0; - foreach ($rows as $r) { - $content_height += $r["height"]; - } - - if ($height === "auto") { - $height = $content_height; - } - - // Handle min/max height - // https://www.w3.org/TR/CSS21/visudet.html#min-max-heights - $min_height = $this->resolve_min_height($cb["h"]); - $max_height = $this->resolve_max_height($cb["h"]); - $height = Helpers::clamp($height, $min_height, $max_height); - - // Use the content height or the height value, whichever is greater - if ($height <= $content_height) { - $height = $content_height; - } else { - // FIXME: Borders and row positions are not properly updated by this - // $cellmap->set_frame_heights($height, $content_height); - } - - return $height; - } - - /** - * @param BlockFrameDecorator|null $block - */ - function reflow(BlockFrameDecorator $block = null) - { - /** @var TableFrameDecorator */ - $frame = $this->_frame; - - // Check if a page break is forced - $page = $frame->get_root(); - $page->check_forced_page_break($frame); - - // Bail if the page is full - if ($page->is_full()) { - return; - } - - // Let the page know that we're reflowing a table so that splits - // are suppressed (simply setting page-break-inside: avoid won't - // work because we may have an arbitrary number of block elements - // inside tds.) - $page->table_reflow_start(); - - $this->determine_absolute_containing_block(); - - // Counters and generated content - $this->_set_content(); - - // Collapse vertical margins, if required - $this->_collapse_margins(); - - // Table layout algorithm: - // http://www.w3.org/TR/CSS21/tables.html#auto-table-layout - - if (is_null($this->_state)) { - $this->get_min_max_width(); - } - - $cb = $frame->get_containing_block(); - $style = $frame->get_style(); - - // This is slightly inexact, but should be okay. Add half the - // border-spacing to the table as padding. The other half is added to - // the cells themselves. - if ($style->border_collapse === "separate") { - [$h, $v] = $style->border_spacing; - $v = $v / 2; - $h = $h / 2; - - $style->set_used("padding_left", (float)$style->length_in_pt($style->padding_left, $cb["w"]) + $h); - $style->set_used("padding_right", (float)$style->length_in_pt($style->padding_right, $cb["w"]) + $h); - $style->set_used("padding_top", (float)$style->length_in_pt($style->padding_top, $cb["w"]) + $v); - $style->set_used("padding_bottom", (float)$style->length_in_pt($style->padding_bottom, $cb["w"]) + $v); - } - - $this->_assign_widths(); - - // Adjust left & right margins, if they are auto - $delta = $this->_state["width_delta"]; - $width = $style->width; - $left = $style->length_in_pt($style->margin_left, $cb["w"]); - $right = $style->length_in_pt($style->margin_right, $cb["w"]); - - $diff = (float) $cb["w"] - (float) $width - $delta; - - if ($left === "auto" && $right === "auto") { - if ($diff < 0) { - $left = 0; - $right = $diff; - } else { - $left = $right = $diff / 2; - } - } else { - if ($left === "auto") { - $left = max($diff - $right, 0); - } - if ($right === "auto") { - $right = max($diff - $left, 0); - } - } - - $style->set_used("margin_left", $left); - $style->set_used("margin_right", $right); - - $frame->position(); - [$x, $y] = $frame->get_position(); - - // Determine the content edge - $offset_x = (float)$left + (float)$style->length_in_pt([ - $style->padding_left, - $style->border_left_width - ], $cb["w"]); - $offset_y = (float)$style->length_in_pt([ - $style->margin_top, - $style->border_top_width, - $style->padding_top - ], $cb["w"]); - $content_x = $x + $offset_x; - $content_y = $y + $offset_y; - - if (isset($cb["h"])) { - $h = $cb["h"]; - } else { - $h = null; - } - - $cellmap = $frame->get_cellmap(); - $col =& $cellmap->get_column(0); - $col["x"] = $offset_x; - - $row =& $cellmap->get_row(0); - $row["y"] = $offset_y; - - $cellmap->assign_x_positions(); - - // Set the containing block of each child & reflow - foreach ($frame->get_children() as $child) { - $child->set_containing_block($content_x, $content_y, $width, $h); - $child->reflow(); - - if (!$page->in_nested_table()) { - // Check if a split has occurred - $page->check_page_break($child); - - if ($page->is_full()) { - break; - } - } - } - - // Stop reflow if a page break has occurred before the frame, in which - // case it has been reset, including its position - if ($page->is_full() && $frame->get_position("x") === null) { - $page->table_reflow_end(); - return; - } - - // Assign heights to our cells: - $style->set_used("height", $this->_calculate_height()); - - $page->table_reflow_end(); - - if ($block && $frame->is_in_flow()) { - $block->add_frame_to_line($frame); - - if ($frame->is_block_level()) { - $block->add_line(); - } - } - } - - public function get_min_max_width(): array - { - if (!is_null($this->_min_max_cache)) { - return $this->_min_max_cache; - } - - $style = $this->_frame->get_style(); - $cellmap = $this->_frame->get_cellmap(); - - $this->_frame->normalize(); - - // Add the cells to the cellmap (this will calculate column widths as - // frames are added) - $cellmap->add_frame($this->_frame); - - // Find the min/max width of the table and sort the columns into - // absolute/percent/auto arrays - $this->_state = []; - $this->_state["min_width"] = 0; - $this->_state["max_width"] = 0; - - $this->_state["percent_used"] = 0; - $this->_state["absolute_used"] = 0; - $this->_state["auto_min"] = 0; - - $this->_state["absolute"] = []; - $this->_state["percent"] = []; - $this->_state["auto"] = []; - - $columns =& $cellmap->get_columns(); - foreach ($columns as $i => $col) { - $this->_state["min_width"] += $col["min-width"]; - $this->_state["max_width"] += $col["max-width"]; - - if ($col["absolute"] > 0) { - $this->_state["absolute"][] = $i; - $this->_state["absolute_used"] += $col["min-width"]; - } elseif ($col["percent"] > 0) { - $this->_state["percent"][] = $i; - $this->_state["percent_used"] += $col["percent"]; - } else { - $this->_state["auto"][] = $i; - $this->_state["auto_min"] += $col["min-width"]; - } - } - - // Account for margins, borders, padding, and border spacing - $cb_w = $this->_frame->get_containing_block("w"); - $lm = (float) $style->length_in_pt($style->margin_left, $cb_w); - $rm = (float) $style->length_in_pt($style->margin_right, $cb_w); - - $dims = [ - $style->border_left_width, - $style->border_right_width, - $style->padding_left, - $style->padding_right - ]; - - if ($style->border_collapse !== "collapse") { - list($dims[]) = $style->border_spacing; - } - - $delta = (float) $style->length_in_pt($dims, $cb_w); - - $this->_state["width_delta"] = $delta; - - $min_width = $this->_state["min_width"] + $delta + $lm + $rm; - $max_width = $this->_state["max_width"] + $delta + $lm + $rm; - - return $this->_min_max_cache = [ - $min_width, - $max_width, - "min" => $min_width, - "max" => $max_width - ]; - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/TableCell.php b/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/TableCell.php deleted file mode 100644 index f5ce35da..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/TableCell.php +++ /dev/null @@ -1,161 +0,0 @@ -_set_content(); - - $style = $this->_frame->get_style(); - - $table = TableFrameDecorator::find_parent_table($this->_frame); - $cellmap = $table->get_cellmap(); - - list($x, $y) = $cellmap->get_frame_position($this->_frame); - $this->_frame->set_position($x, $y); - - $cells = $cellmap->get_spanned_cells($this->_frame); - - $w = 0; - foreach ($cells["columns"] as $i) { - $col = $cellmap->get_column($i); - $w += $col["used-width"]; - } - - //FIXME? - $h = $this->_frame->get_containing_block("h"); - - $left_space = (float)$style->length_in_pt([$style->margin_left, - $style->padding_left, - $style->border_left_width], - $w); - - $right_space = (float)$style->length_in_pt([$style->padding_right, - $style->margin_right, - $style->border_right_width], - $w); - - $top_space = (float)$style->length_in_pt([$style->margin_top, - $style->padding_top, - $style->border_top_width], - $h); - $bottom_space = (float)$style->length_in_pt([$style->margin_bottom, - $style->padding_bottom, - $style->border_bottom_width], - $h); - - $cb_w = $w - $left_space - $right_space; - $style->set_used("width", $cb_w); - - $content_x = $x + $left_space; - $content_y = $line_y = $y + $top_space; - - // Adjust the first line based on the text-indent property - $indent = (float)$style->length_in_pt($style->text_indent, $w); - $this->_frame->increase_line_width($indent); - - $page = $this->_frame->get_root(); - - // Set the y position of the first line in the cell - $line_box = $this->_frame->get_current_line_box(); - $line_box->y = $line_y; - - // Set the containing blocks and reflow each child - foreach ($this->_frame->get_children() as $child) { - $child->set_containing_block($content_x, $content_y, $cb_w, $h); - $this->process_clear($child); - $child->reflow($this->_frame); - $this->process_float($child, $content_x, $cb_w); - - if ($page->is_full()) { - break; - } - } - - // Determine our height - $style_height = (float)$style->length_in_pt($style->height, $h); - - /** @var FrameDecorator\TableCell */ - $frame = $this->_frame; - - $frame->set_content_height($this->_calculate_content_height()); - - $height = max($style_height, (float)$frame->get_content_height()); - - // Let the cellmap know our height - $cell_height = $height / count($cells["rows"]); - - if ($style_height <= $height) { - $cell_height += $top_space + $bottom_space; - } - - foreach ($cells["rows"] as $i) { - $cellmap->set_row_height($i, $cell_height); - } - - $style->set_used("height", $height); - - $this->_text_align(); - $this->vertical_align(); - - // Handle relative positioning - foreach ($this->_frame->get_children() as $child) { - $this->position_relative($child); - } - } - - public function get_min_max_content_width(): array - { - // Ignore percentage values for a specified width here, as they are - // relative to the table width, which is not determined yet - $style = $this->_frame->get_style(); - $width = $style->width; - $fixed_width = $width !== "auto" && !Helpers::is_percent($width); - - [$min, $max] = $this->get_min_max_child_width(); - - // For table cells: Use specified width if it is greater than the - // minimum defined by the content - if ($fixed_width) { - $width = (float) $style->length_in_pt($width, 0); - $min = max($width, $min); - $max = $min; - } - - // Handle min/max width style properties - $min_width = $this->resolve_min_width(null); - $max_width = $this->resolve_max_width(null); - $min = Helpers::clamp($min, $min_width, $max_width); - $max = Helpers::clamp($max, $min_width, $max_width); - - return [$min, $max]; - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/TableRow.php b/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/TableRow.php deleted file mode 100644 index f84c1258..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/TableRow.php +++ /dev/null @@ -1,82 +0,0 @@ -_frame; - - // Check if a page break is forced - $page = $frame->get_root(); - $page->check_forced_page_break($frame); - - // Bail if the page is full - if ($page->is_full()) { - return; - } - - // Counters and generated content - $this->_set_content(); - - $this->_frame->position(); - $style = $this->_frame->get_style(); - $cb = $this->_frame->get_containing_block(); - - foreach ($this->_frame->get_children() as $child) { - $child->set_containing_block($cb); - $child->reflow(); - - if ($page->is_full()) { - break; - } - } - - if ($page->is_full()) { - return; - } - - $table = TableFrameDecorator::find_parent_table($this->_frame); - $cellmap = $table->get_cellmap(); - $style->set_used("width", $cellmap->get_frame_width($this->_frame)); - $style->set_used("height", $cellmap->get_frame_height($this->_frame)); - - $this->_frame->set_position($cellmap->get_frame_position($this->_frame)); - } - - /** - * @throws Exception - */ - public function get_min_max_width(): array - { - throw new Exception("Min/max width is undefined for table rows"); - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/TableRowGroup.php b/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/TableRowGroup.php deleted file mode 100644 index c8b19aa5..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/TableRowGroup.php +++ /dev/null @@ -1,71 +0,0 @@ -_frame; - $page = $frame->get_root(); - - // Counters and generated content - $this->_set_content(); - - $style = $frame->get_style(); - $cb = $frame->get_containing_block(); - - foreach ($frame->get_children() as $child) { - $child->set_containing_block($cb["x"], $cb["y"], $cb["w"], $cb["h"]); - $child->reflow(); - - // Check if a split has occurred - $page->check_page_break($child); - - if ($page->is_full()) { - break; - } - } - - $table = TableFrameDecorator::find_parent_table($frame); - $cellmap = $table->get_cellmap(); - - // Stop reflow if a page break has occurred before the frame, in which - // case it is not part of its parent table's cell map yet - if ($page->is_full() && !$cellmap->frame_exists_in_cellmap($frame)) { - return; - } - - $style->set_used("width", $cellmap->get_frame_width($frame)); - $style->set_used("height", $cellmap->get_frame_height($frame)); - - $frame->set_position($cellmap->get_frame_position($frame)); - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/Text.php b/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/Text.php deleted file mode 100644 index 19c79921..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/FrameReflower/Text.php +++ /dev/null @@ -1,611 +0,0 @@ - - */ - const SOFT_HYPHEN = "\xC2\xAD"; - - /** - * The regex splits on everything that's a separator (^\S double negative), - * excluding the following non-breaking space characters: - * * nbsp (\xA0) - * * narrow nbsp (\x{202F}) - * * figure space (\x{2007}) - */ - public static $_whitespace_pattern = '/([^\S\xA0\x{202F}\x{2007}]+)/u'; - - /** - * The regex splits on everything that's a separator (^\S double negative) - * plus dashes, excluding the following non-breaking space characters: - * * nbsp (\xA0) - * * narrow nbsp (\x{202F}) - * * figure space (\x{2007}) - */ - public static $_wordbreak_pattern = '/([^\S\xA0\x{202F}\x{2007}\n]+|\R|\-+|\xAD+)/u'; - - /** - * Frame for this reflower - * - * @var TextFrameDecorator - */ - protected $_frame; - - /** - * Saves trailing whitespace trimmed after a line break, so it can be - * restored when needed. - * - * @var string|null - */ - protected $trailingWs = null; - - /** - * @var FontMetrics - */ - private $fontMetrics; - - /** - * @param TextFrameDecorator $frame - * @param FontMetrics $fontMetrics - */ - public function __construct(TextFrameDecorator $frame, FontMetrics $fontMetrics) - { - parent::__construct($frame); - $this->setFontMetrics($fontMetrics); - } - - /** - * Apply text transform and white-space collapse according to style. - * - * * http://www.w3.org/TR/CSS21/text.html#propdef-text-transform - * * http://www.w3.org/TR/CSS21/text.html#propdef-white-space - * - * @param string $text - * @return string - */ - protected function pre_process_text(string $text): string - { - $style = $this->_frame->get_style(); - - // Handle text transform - switch ($style->text_transform) { - case "capitalize": - $text = Helpers::mb_ucwords($text); - break; - case "uppercase": - $text = mb_convert_case($text, MB_CASE_UPPER); - break; - case "lowercase": - $text = mb_convert_case($text, MB_CASE_LOWER); - break; - default: - break; - } - - // Handle white-space collapse - switch ($style->white_space) { - default: - case "normal": - case "nowrap": - $text = preg_replace(self::$_whitespace_pattern, " ", $text) ?? ""; - break; - - case "pre-line": - // Collapse white space except for line breaks - $text = preg_replace('/([^\S\xA0\x{202F}\x{2007}\n]+)/u', " ", $text) ?? ""; - break; - - case "pre": - case "pre-wrap": - break; - - } - - return $text; - } - - /** - * @param string $text - * @param BlockFrameDecorator $block - * @param bool $nowrap - * - * @return bool|int - */ - protected function line_break(string $text, BlockFrameDecorator $block, bool $nowrap = false) - { - $fontMetrics = $this->getFontMetrics(); - $frame = $this->_frame; - $style = $frame->get_style(); - $font = $style->font_family; - $size = $style->font_size; - $word_spacing = $style->word_spacing; - $letter_spacing = $style->letter_spacing; - - // Determine the available width - $current_line = $block->get_current_line_box(); - $line_width = $frame->get_containing_block("w"); - $current_line_width = $current_line->left + $current_line->w + $current_line->right; - $available_width = $line_width - $current_line_width; - - // Determine the frame width including margin, padding & border - $visible_text = preg_replace('/\xAD/u', "", $text); - $text_width = $fontMetrics->getTextWidth($visible_text, $font, $size, $word_spacing, $letter_spacing); - $mbp_width = (float) $style->length_in_pt([ - $style->margin_left, - $style->border_left_width, - $style->padding_left, - $style->padding_right, - $style->border_right_width, - $style->margin_right - ], $line_width); - $frame_width = $text_width + $mbp_width; - - if (Helpers::lengthLessOrEqual($frame_width, $available_width)) { - return false; - } - - if ($nowrap) { - return $current_line_width == 0 ? false : 0; - } - - // Split the text into words - $words = preg_split(self::$_wordbreak_pattern, $text, -1, PREG_SPLIT_DELIM_CAPTURE); - $wc = count($words); - - // Determine the split point - $width = 0.0; - $str = ""; - - $space_width = $fontMetrics->getTextWidth(" ", $font, $size, $word_spacing, $letter_spacing); - $shy_width = $fontMetrics->getTextWidth(self::SOFT_HYPHEN, $font, $size); - - // @todo support - for ($i = 0; $i < $wc; $i += 2) { - // Allow trailing white space to overflow. White space is always - // collapsed to the standard space character currently, so only - // handle that for now - $sep = $words[$i + 1] ?? ""; - $word = $sep === " " ? $words[$i] : $words[$i] . $sep; - $word_width = $fontMetrics->getTextWidth($word, $font, $size, $word_spacing, $letter_spacing); - $used_width = $width + $word_width + $mbp_width; - - if (Helpers::lengthGreater($used_width, $available_width)) { - // If the previous split happened by soft hyphen, we have to - // append its width again because the last hyphen of a line - // won't be removed - if (isset($words[$i - 1]) && self::SOFT_HYPHEN === $words[$i - 1]) { - $width += $shy_width; - } - break; - } - - // If the word is splitted by soft hyphen, but no line break is needed - // we have to reduce the width. But the str is not modified, otherwise - // the wrong offset is calculated at the end of this method. - if ($sep === self::SOFT_HYPHEN) { - $width += $word_width - $shy_width; - $str .= $word; - } elseif ($sep === " ") { - $width += $word_width + $space_width; - $str .= $word . $sep; - } else { - $width += $word_width; - $str .= $word; - } - } - - // The first word has overflowed. Force it onto the line, or as many - // characters as fit if breaking words is allowed - if ($current_line_width == 0 && $width === 0.0) { - if ($sep === " ") { - $word .= $sep; - } - - // https://www.w3.org/TR/css-text-3/#overflow-wrap-property - $wrap = $style->overflow_wrap; - $break_word = $wrap === "anywhere" || $wrap === "break-word"; - - if ($break_word) { - $s = ""; - - for ($j = 0; $j < mb_strlen($word); $j++) { - $c = mb_substr($word, $j, 1); - $w = $fontMetrics->getTextWidth($s . $c, $font, $size, $word_spacing, $letter_spacing); - - if (Helpers::lengthGreater($w, $available_width)) { - break; - } - - $s .= $c; - } - - // Always force the first character onto the line - $str = $j === 0 ? $s . $c : $s; - } else { - $str = $word; - } - } - - $offset = mb_strlen($str); - return $offset; - } - - /** - * @param string $text - * @return bool|int - */ - protected function newline_break(string $text) - { - if (($i = mb_strpos($text, "\n")) === false) { - return false; - } - - return $i + 1; - } - - /** - * @param BlockFrameDecorator $block - * @return bool|null Whether to add a new line at the end. `null` if reflow - * should be stopped. - */ - protected function layout_line(BlockFrameDecorator $block): ?bool - { - $frame = $this->_frame; - $style = $frame->get_style(); - $current_line = $block->get_current_line_box(); - $text = $frame->get_text(); - - // Trim leading white space if this is the first text on the line - if ($current_line->w === 0.0 && !$frame->is_pre()) { - $text = ltrim($text, " "); - } - - if ($text === "") { - $frame->set_text(""); - $style->set_used("width", 0.0); - return false; - } - - // Determine the next line break - // http://www.w3.org/TR/CSS21/text.html#propdef-white-space - $white_space = $style->white_space; - $nowrap = $white_space === "nowrap" || $white_space === "pre"; - - switch ($white_space) { - default: - case "normal": - case "nowrap": - $split = $this->line_break($text, $block, $nowrap); - $add_line = false; - break; - - case "pre": - case "pre-line": - case "pre-wrap": - $hard_split = $this->newline_break($text); - $first_line = $hard_split !== false - ? mb_substr($text, 0, $hard_split) - : $text; - $soft_split = $this->line_break($first_line, $block, $nowrap); - - $split = $soft_split !== false ? $soft_split : $hard_split; - $add_line = $hard_split !== false; - break; - } - - if ($split === 0) { - // Make sure to move text when floating frames leave no space to - // place anything onto the line - // TODO: Would probably be better to move just below the current - // floating frame instead of trying to place text in line-height - // increments - if ($current_line->h === 0.0) { - // Line height might be 0 - $h = max($frame->get_margin_height(), 1.0); - $block->maximize_line_height($h, $frame); - } - - // Break line and repeat layout - $block->add_line(); - - // Find the appropriate inline ancestor to split - $child = $frame; - $p = $child->get_parent(); - while ($p instanceof InlineFrameDecorator && !$child->get_prev_sibling()) { - $child = $p; - $p = $p->get_parent(); - } - - if ($p instanceof InlineFrameDecorator) { - // Split parent and stop current reflow. Reflow continues - // via child-reflow loop of split parent - $p->split($child); - return null; - } - - return $this->layout_line($block); - } - - // Final split point is determined - if ($split !== false && $split < mb_strlen($text)) { - // Split the line - $frame->set_text($text); - $frame->split_text($split); - $add_line = true; - - // Remove inner soft hyphens - $t = $frame->get_text(); - $shyPosition = mb_strpos($t, self::SOFT_HYPHEN); - if (false !== $shyPosition && $shyPosition < mb_strlen($t) - 1) { - $t = str_replace(self::SOFT_HYPHEN, "", mb_substr($t, 0, -1)) . mb_substr($t, -1); - $frame->set_text($t); - } - } else { - // No split required - // Remove soft hyphens - $text = str_replace(self::SOFT_HYPHEN, "", $text); - $frame->set_text($text); - } - - // Set our new width - $frame->recalculate_width(); - - return $add_line; - } - - /** - * @param BlockFrameDecorator|null $block - */ - function reflow(BlockFrameDecorator $block = null) - { - $frame = $this->_frame; - $page = $frame->get_root(); - $page->check_forced_page_break($frame); - - if ($page->is_full()) { - return; - } - - // Determine the text height - $style = $frame->get_style(); - $size = $style->font_size; - $font = $style->font_family; - $font_height = $this->getFontMetrics()->getFontHeight($font, $size); - $style->set_used("height", $font_height); - - // Handle text transform and white space - $text = $this->pre_process_text($frame->get_text()); - $frame->set_text($text); - - if ($block === null) { - return; - } - - $add_line = $this->layout_line($block); - - if ($add_line === null) { - return; - } - - $frame->position(); - - // Skip wrapped white space between block-level elements in case white - // space is collapsed - if ($frame->get_text() === "" && $frame->get_margin_width() === 0.0) { - return; - } - - $line = $block->add_frame_to_line($frame); - $trimmed = trim($frame->get_text()); - - // Split the text into words (used to determine spacing between - // words on justified lines) - if ($trimmed !== "") { - $words = preg_split(self::$_whitespace_pattern, $trimmed); - $line->wc += count($words); - } - - if ($add_line) { - $block->add_line(); - } - } - - /** - * Trim trailing white space from the frame text. - */ - public function trim_trailing_ws(): void - { - $frame = $this->_frame; - $text = $frame->get_text(); - $trailing = mb_substr($text, -1); - - // White space is always collapsed to the standard space character - // currently, so only handle that for now - if ($trailing === " ") { - $this->trailingWs = $trailing; - $frame->set_text(mb_substr($text, 0, -1)); - $frame->recalculate_width(); - } - } - - public function reset(): void - { - parent::reset(); - - // Restore trimmed trailing white space, as the frame will go through - // another reflow and line breaks might be different after a split - if ($this->trailingWs !== null) { - $text = $this->_frame->get_text(); - $this->_frame->set_text($text . $this->trailingWs); - $this->trailingWs = null; - } - } - - //........................................................................ - - public function get_min_max_width(): array - { - $fontMetrics = $this->getFontMetrics(); - $frame = $this->_frame; - $style = $frame->get_style(); - $text = $frame->get_text(); - $font = $style->font_family; - $size = $style->font_size; - $word_spacing = $style->word_spacing; - $letter_spacing = $style->letter_spacing; - - // Handle text transform and white space - $text = $this->pre_process_text($frame->get_text()); - - if (!$frame->is_pre()) { - // Determine whether the frame is at the start of its parent block. - // Trim leading white space in that case - $child = $frame; - $p = $frame->get_parent(); - while (!$p->is_block() && !$child->get_prev_sibling()) { - $child = $p; - $p = $p->get_parent(); - } - - if (!$child->get_prev_sibling()) { - $text = ltrim($text, " "); - } - - // Determine whether the frame is at the end of its parent block. - // Trim trailing white space in that case - $child = $frame; - $p = $frame->get_parent(); - while (!$p->is_block() && !$child->get_next_sibling()) { - $child = $p; - $p = $p->get_parent(); - } - - if (!$child->get_next_sibling()) { - $text = rtrim($text, " "); - } - } - - // Strip soft hyphens for max-line-width calculations - $visible_text = preg_replace('/\xAD/u', "", $text); - - // Determine minimum text width - switch ($style->white_space) { - default: - case "normal": - case "pre-line": - case "pre-wrap": - // The min width is the longest word or, if breaking words is - // allowed with the `anywhere` keyword, the widest character. - // For performance reasons, we only check the first character in - // the latter case. - // https://www.w3.org/TR/css-text-3/#overflow-wrap-property - if ($style->overflow_wrap === "anywhere") { - $char = mb_substr($visible_text, 0, 1); - $min = $fontMetrics->getTextWidth($char, $font, $size, $word_spacing, $letter_spacing); - } else { - // Find the longest word - $words = preg_split(self::$_wordbreak_pattern, $text, -1, PREG_SPLIT_DELIM_CAPTURE); - $lengths = array_map(function ($chunk) use ($fontMetrics, $font, $size, $word_spacing, $letter_spacing) { - // Allow trailing white space to overflow. As in actual - // layout above, only handle a single space for now - $sep = $chunk[1] ?? ""; - $word = $sep === " " ? $chunk[0] : $chunk[0] . $sep; - return $fontMetrics->getTextWidth($word, $font, $size, $word_spacing, $letter_spacing); - }, array_chunk($words, 2)); - $min = max($lengths); - } - break; - - case "pre": - // Find the longest line - $lines = array_flip(preg_split("/\R/u", $visible_text)); - array_walk($lines, function (&$chunked_text_width, $chunked_text) use ($fontMetrics, $font, $size, $word_spacing, $letter_spacing) { - $chunked_text_width = $fontMetrics->getTextWidth($chunked_text, $font, $size, $word_spacing, $letter_spacing); - }); - arsort($lines); - $min = reset($lines); - break; - - case "nowrap": - $min = $fontMetrics->getTextWidth($visible_text, $font, $size, $word_spacing, $letter_spacing); - break; - } - - // Determine maximum text width - switch ($style->white_space) { - default: - case "normal": - $max = $fontMetrics->getTextWidth($visible_text, $font, $size, $word_spacing, $letter_spacing); - break; - - case "pre-line": - case "pre-wrap": - // Find the longest line - $lines = array_flip(preg_split("/\R/u", $visible_text)); - array_walk($lines, function (&$chunked_text_width, $chunked_text) use ($fontMetrics, $font, $size, $word_spacing, $letter_spacing) { - $chunked_text_width = $fontMetrics->getTextWidth($chunked_text, $font, $size, $word_spacing, $letter_spacing); - }); - arsort($lines); - $max = reset($lines); - break; - - case "pre": - case "nowrap": - $max = $min; - break; - } - - // Account for margins, borders, and padding - $dims = [ - $style->padding_left, - $style->padding_right, - $style->border_left_width, - $style->border_right_width, - $style->margin_left, - $style->margin_right - ]; - - // The containing block is not defined yet, treat percentages as 0 - $delta = (float) $style->length_in_pt($dims, 0); - $min += $delta; - $max += $delta; - - return [$min, $max, "min" => $min, "max" => $max]; - } - - /** - * @param FontMetrics $fontMetrics - * @return $this - */ - public function setFontMetrics(FontMetrics $fontMetrics) - { - $this->fontMetrics = $fontMetrics; - return $this; - } - - /** - * @return FontMetrics - */ - public function getFontMetrics() - { - return $this->fontMetrics; - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Helpers.php b/docker/statistics/vendor/dompdf/dompdf/src/Helpers.php deleted file mode 100644 index ba78515a..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Helpers.php +++ /dev/null @@ -1,1093 +0,0 @@ - tags if the current sapi is not 'cli'. - * Returns the output string instead of displaying it if $return is true. - * - * @param mixed $mixed variable or expression to display - * @param bool $return - * - * @return string|null - */ - public static function pre_r($mixed, $return = false) - { - if ($return) { - return "
    " . print_r($mixed, true) . "
    "; - } - - if (php_sapi_name() !== "cli") { - echo "
    ";
    -        }
    -
    -        print_r($mixed);
    -
    -        if (php_sapi_name() !== "cli") {
    -            echo "
    "; - } else { - echo "\n"; - } - - flush(); - - return null; - } - - /** - * builds a full url given a protocol, hostname, base path and url - * - * @param string $protocol - * @param string $host - * @param string $base_path - * @param string $url - * @return string - * - * Initially the trailing slash of $base_path was optional, and conditionally appended. - * However on dynamically created sites, where the page is given as url parameter, - * the base path might not end with an url. - * Therefore do not append a slash, and **require** the $base_url to ending in a slash - * when needed. - * Vice versa, on using the local file system path of a file, make sure that the slash - * is appended (o.k. also for Windows) - */ - public static function build_url($protocol, $host, $base_path, $url) - { - $protocol = mb_strtolower($protocol); - if (empty($protocol)) { - $protocol = "file://"; - } - if ($url === "") { - return null; - } - - $url_lc = mb_strtolower($url); - - // Is the url already fully qualified, a Data URI, or a reference to a named anchor? - // File-protocol URLs may require additional processing (e.g. for URLs with a relative path) - if ( - ( - mb_strpos($url_lc, "://") !== false - && !in_array(substr($url_lc, 0, 7), ["file://", "phar://"], true) - ) - || mb_substr($url_lc, 0, 1) === "#" - || mb_strpos($url_lc, "data:") === 0 - || mb_strpos($url_lc, "mailto:") === 0 - || mb_strpos($url_lc, "tel:") === 0 - ) { - return $url; - } - - $res = ""; - if (strpos($url_lc, "file://") === 0) { - $url = substr($url, 7); - $protocol = "file://"; - } elseif (strpos($url_lc, "phar://") === 0) { - $res = substr($url, strpos($url_lc, ".phar")+5); - $url = substr($url, 7, strpos($url_lc, ".phar")-2); - $protocol = "phar://"; - } - - $ret = ""; - - $is_local_path = in_array($protocol, ["file://", "phar://"], true); - - if ($is_local_path) { - //On Windows local file, an abs path can begin also with a '\' or a drive letter and colon - //drive: followed by a relative path would be a drive specific default folder. - //not known in php app code, treat as abs path - //($url[1] !== ':' || ($url[2]!=='\\' && $url[2]!=='/')) - if ($url[0] !== '/' && (strtoupper(substr(PHP_OS, 0, 3)) !== 'WIN' || (mb_strlen($url) > 1 && $url[0] !== '\\' && $url[1] !== ':'))) { - // For rel path and local access we ignore the host, and run the path through realpath() - $ret .= realpath($base_path) . '/'; - } - $ret .= $url; - $ret = preg_replace('/\?(.*)$/', "", $ret); - - $filepath = realpath($ret); - if ($filepath === false) { - return null; - } - - $ret = "$protocol$filepath$res"; - - return $ret; - } - - $ret = $protocol; - // Protocol relative urls (e.g. "//example.org/style.css") - if (strpos($url, '//') === 0) { - $ret .= substr($url, 2); - //remote urls with backslash in html/css are not really correct, but lets be genereous - } elseif ($url[0] === '/' || $url[0] === '\\') { - // Absolute path - $ret .= $host . $url; - } else { - // Relative path - //$base_path = $base_path !== "" ? rtrim($base_path, "/\\") . "/" : ""; - $ret .= $host . $base_path . $url; - } - - // URL should now be complete, final cleanup - $parsed_url = parse_url($ret); - - // reproduced from https://www.php.net/manual/en/function.parse-url.php#106731 - $scheme = isset($parsed_url['scheme']) ? $parsed_url['scheme'] . '://' : ''; - $host = isset($parsed_url['host']) ? $parsed_url['host'] : ''; - $port = isset($parsed_url['port']) ? ':' . $parsed_url['port'] : ''; - $user = isset($parsed_url['user']) ? $parsed_url['user'] : ''; - $pass = isset($parsed_url['pass']) ? ':' . $parsed_url['pass'] : ''; - $pass = ($user || $pass) ? "$pass@" : ''; - $path = isset($parsed_url['path']) ? $parsed_url['path'] : ''; - $query = isset($parsed_url['query']) ? '?' . $parsed_url['query'] : ''; - $fragment = isset($parsed_url['fragment']) ? '#' . $parsed_url['fragment'] : ''; - - // partially reproduced from https://stackoverflow.com/a/1243431/264628 - /* replace '//' or '/./' or '/foo/../' with '/' */ - $re = array('#(/\.?/)#', '#/(?!\.\.)[^/]+/\.\./#'); - for ($n=1; $n>0; $path=preg_replace($re, '/', $path, -1, $n)) {} - - $ret = "$scheme$user$pass$host$port$path$query$fragment"; - - return $ret; - } - - /** - * Builds a HTTP Content-Disposition header string using `$dispositionType` - * and `$filename`. - * - * If the filename contains any characters not in the ISO-8859-1 character - * set, a fallback filename will be included for clients not supporting the - * `filename*` parameter. - * - * @param string $dispositionType - * @param string $filename - * @return string - */ - public static function buildContentDispositionHeader($dispositionType, $filename) - { - $encoding = mb_detect_encoding($filename); - $fallbackfilename = mb_convert_encoding($filename, "ISO-8859-1", $encoding); - $fallbackfilename = str_replace("\"", "", $fallbackfilename); - $encodedfilename = rawurlencode($filename); - - $contentDisposition = "Content-Disposition: $dispositionType; filename=\"$fallbackfilename\""; - if ($fallbackfilename !== $filename) { - $contentDisposition .= "; filename*=UTF-8''$encodedfilename"; - } - - return $contentDisposition; - } - - /** - * Converts decimal numbers to roman numerals. - * - * As numbers larger than 3999 (and smaller than 1) cannot be represented in - * the standard form of roman numerals, those are left in decimal form. - * - * See https://en.wikipedia.org/wiki/Roman_numerals#Standard_form - * - * @param int|string $num - * - * @throws Exception - * @return string - */ - public static function dec2roman($num): string - { - - static $ones = ["", "i", "ii", "iii", "iv", "v", "vi", "vii", "viii", "ix"]; - static $tens = ["", "x", "xx", "xxx", "xl", "l", "lx", "lxx", "lxxx", "xc"]; - static $hund = ["", "c", "cc", "ccc", "cd", "d", "dc", "dcc", "dccc", "cm"]; - static $thou = ["", "m", "mm", "mmm"]; - - if (!is_numeric($num)) { - throw new Exception("dec2roman() requires a numeric argument."); - } - - if ($num >= 4000 || $num <= 0) { - return (string) $num; - } - - $num = strrev((string)$num); - - $ret = ""; - switch (mb_strlen($num)) { - /** @noinspection PhpMissingBreakStatementInspection */ - case 4: - $ret .= $thou[$num[3]]; - /** @noinspection PhpMissingBreakStatementInspection */ - case 3: - $ret .= $hund[$num[2]]; - /** @noinspection PhpMissingBreakStatementInspection */ - case 2: - $ret .= $tens[$num[1]]; - /** @noinspection PhpMissingBreakStatementInspection */ - case 1: - $ret .= $ones[$num[0]]; - default: - break; - } - - return $ret; - } - - /** - * Restrict a length to the given range. - * - * If min > max, the result is min. - * - * @param float $length - * @param float $min - * @param float $max - * - * @return float - */ - public static function clamp(float $length, float $min, float $max): float - { - return max($min, min($length, $max)); - } - - /** - * Determines whether $value is a percentage or not - * - * @param string|float|int $value - * - * @return bool - */ - public static function is_percent($value): bool - { - return is_string($value) && false !== mb_strpos($value, "%"); - } - - /** - * Parses a data URI scheme - * http://en.wikipedia.org/wiki/Data_URI_scheme - * - * @param string $data_uri The data URI to parse - * - * @return array|bool The result with charset, mime type and decoded data - */ - public static function parse_data_uri($data_uri) - { - if (!preg_match('/^data:(?P[a-z0-9\/+-.]+)(;charset=(?P[a-z0-9-])+)?(?P;base64)?\,(?P.*)?/is', $data_uri, $match)) { - return false; - } - - $match['data'] = rawurldecode($match['data']); - $result = [ - 'charset' => $match['charset'] ? $match['charset'] : 'US-ASCII', - 'mime' => $match['mime'] ? $match['mime'] : 'text/plain', - 'data' => $match['base64'] ? base64_decode($match['data']) : $match['data'], - ]; - - return $result; - } - - /** - * Encodes a Uniform Resource Identifier (URI) by replacing non-alphanumeric - * characters with a percent (%) sign followed by two hex digits, excepting - * characters in the URI reserved character set. - * - * Assumes that the URI is a complete URI, so does not encode reserved - * characters that have special meaning in the URI. - * - * Simulates the encodeURI function available in JavaScript - * https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/encodeURI - * - * Source: http://stackoverflow.com/q/4929584/264628 - * - * @param string $uri The URI to encode - * @return string The original URL with special characters encoded - */ - public static function encodeURI($uri) { - $unescaped = [ - '%2D'=>'-','%5F'=>'_','%2E'=>'.','%21'=>'!', '%7E'=>'~', - '%2A'=>'*', '%27'=>"'", '%28'=>'(', '%29'=>')' - ]; - $reserved = [ - '%3B'=>';','%2C'=>',','%2F'=>'/','%3F'=>'?','%3A'=>':', - '%40'=>'@','%26'=>'&','%3D'=>'=','%2B'=>'+','%24'=>'$' - ]; - $score = [ - '%23'=>'#' - ]; - return strtr(rawurlencode(rawurldecode($uri)), array_merge($reserved, $unescaped, $score)); - } - - /** - * Decoder for RLE8 compression in windows bitmaps - * http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdi/bitmaps_6x0u.asp - * - * @param string $str Data to decode - * @param int $width Image width - * - * @return string - */ - public static function rle8_decode($str, $width) - { - $lineWidth = $width + (3 - ($width - 1) % 4); - $out = ''; - $cnt = strlen($str); - - for ($i = 0; $i < $cnt; $i++) { - $o = ord($str[$i]); - switch ($o) { - case 0: # ESCAPE - $i++; - switch (ord($str[$i])) { - case 0: # NEW LINE - $padCnt = $lineWidth - strlen($out) % $lineWidth; - if ($padCnt < $lineWidth) { - $out .= str_repeat(chr(0), $padCnt); # pad line - } - break; - case 1: # END OF FILE - $padCnt = $lineWidth - strlen($out) % $lineWidth; - if ($padCnt < $lineWidth) { - $out .= str_repeat(chr(0), $padCnt); # pad line - } - break 3; - case 2: # DELTA - $i += 2; - break; - default: # ABSOLUTE MODE - $num = ord($str[$i]); - for ($j = 0; $j < $num; $j++) { - $out .= $str[++$i]; - } - if ($num % 2) { - $i++; - } - } - break; - default: - $out .= str_repeat($str[++$i], $o); - } - } - return $out; - } - - /** - * Decoder for RLE4 compression in windows bitmaps - * see http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdi/bitmaps_6x0u.asp - * - * @param string $str Data to decode - * @param int $width Image width - * - * @return string - */ - public static function rle4_decode($str, $width) - { - $w = floor($width / 2) + ($width % 2); - $lineWidth = $w + (3 - (($width - 1) / 2) % 4); - $pixels = []; - $cnt = strlen($str); - $c = 0; - - for ($i = 0; $i < $cnt; $i++) { - $o = ord($str[$i]); - switch ($o) { - case 0: # ESCAPE - $i++; - switch (ord($str[$i])) { - case 0: # NEW LINE - while (count($pixels) % $lineWidth != 0) { - $pixels[] = 0; - } - break; - case 1: # END OF FILE - while (count($pixels) % $lineWidth != 0) { - $pixels[] = 0; - } - break 3; - case 2: # DELTA - $i += 2; - break; - default: # ABSOLUTE MODE - $num = ord($str[$i]); - for ($j = 0; $j < $num; $j++) { - if ($j % 2 == 0) { - $c = ord($str[++$i]); - $pixels[] = ($c & 240) >> 4; - } else { - $pixels[] = $c & 15; - } - } - - if ($num % 2 == 0) { - $i++; - } - } - break; - default: - $c = ord($str[++$i]); - for ($j = 0; $j < $o; $j++) { - $pixels[] = ($j % 2 == 0 ? ($c & 240) >> 4 : $c & 15); - } - } - } - - $out = ''; - if (count($pixels) % 2) { - $pixels[] = 0; - } - - $cnt = count($pixels) / 2; - - for ($i = 0; $i < $cnt; $i++) { - $out .= chr(16 * $pixels[2 * $i] + $pixels[2 * $i + 1]); - } - - return $out; - } - - /** - * parse a full url or pathname and return an array(protocol, host, path, - * file + query + fragment) - * - * @param string $url - * @return array - */ - public static function explode_url($url) - { - $protocol = ""; - $host = ""; - $path = ""; - $file = ""; - $res = ""; - - $arr = parse_url($url); - if ( isset($arr["scheme"]) ) { - $arr["scheme"] = mb_strtolower($arr["scheme"]); - } - - if (isset($arr["scheme"]) && $arr["scheme"] !== "file" && $arr["scheme"] !== "phar" && strlen($arr["scheme"]) > 1) { - $protocol = $arr["scheme"] . "://"; - - if (isset($arr["user"])) { - $host .= $arr["user"]; - - if (isset($arr["pass"])) { - $host .= ":" . $arr["pass"]; - } - - $host .= "@"; - } - - if (isset($arr["host"])) { - $host .= $arr["host"]; - } - - if (isset($arr["port"])) { - $host .= ":" . $arr["port"]; - } - - if (isset($arr["path"]) && $arr["path"] !== "") { - // Do we have a trailing slash? - if ($arr["path"][mb_strlen($arr["path"]) - 1] === "/") { - $path = $arr["path"]; - $file = ""; - } else { - $path = rtrim(dirname($arr["path"]), '/\\') . "/"; - $file = basename($arr["path"]); - } - } - - if (isset($arr["query"])) { - $file .= "?" . $arr["query"]; - } - - if (isset($arr["fragment"])) { - $file .= "#" . $arr["fragment"]; - } - - } else { - - $protocol = ""; - $host = ""; // localhost, really - - $i = mb_stripos($url, "://"); - if ($i !== false) { - $protocol = mb_strtolower(mb_substr($url, 0, $i + 3)); - $url = mb_substr($url, $i + 3); - } else { - $protocol = "file://"; - } - - if ($protocol === "phar://") { - $res = substr($url, stripos($url, ".phar")+5); - $url = substr($url, 7, stripos($url, ".phar")-2); - } - - $file = basename($url); - $path = dirname($url) . "/"; - } - - $ret = [$protocol, $host, $path, $file, - "protocol" => $protocol, - "host" => $host, - "path" => $path, - "file" => $file, - "resource" => $res]; - return $ret; - } - - /** - * Print debug messages - * - * @param string $type The type of debug messages to print - * @param string $msg The message to show - */ - public static function dompdf_debug($type, $msg) - { - global $_DOMPDF_DEBUG_TYPES, $_dompdf_show_warnings, $_dompdf_debug; - if (isset($_DOMPDF_DEBUG_TYPES[$type]) && ($_dompdf_show_warnings || $_dompdf_debug)) { - $arr = debug_backtrace(); - - echo basename($arr[0]["file"]) . " (" . $arr[0]["line"] . "): " . $arr[1]["function"] . ": "; - Helpers::pre_r($msg); - } - } - - /** - * Stores warnings in an array for display later - * This function allows warnings generated by the DomDocument parser - * and CSS loader ({@link Stylesheet}) to be captured and displayed - * later. Without this function, errors are displayed immediately and - * PDF streaming is impossible. - * @see http://www.php.net/manual/en/function.set-error_handler.php - * - * @param int $errno - * @param string $errstr - * @param string $errfile - * @param string $errline - * - * @throws Exception - */ - public static function record_warnings($errno, $errstr, $errfile, $errline) - { - // Not a warning or notice - if (!($errno & (E_WARNING | E_NOTICE | E_USER_NOTICE | E_USER_WARNING | E_STRICT | E_DEPRECATED | E_USER_DEPRECATED))) { - throw new Exception($errstr . " $errno"); - } - - global $_dompdf_warnings; - global $_dompdf_show_warnings; - - if ($_dompdf_show_warnings) { - echo $errstr . "\n"; - } - - $_dompdf_warnings[] = $errstr; - } - - /** - * @param $c - * @return bool|string - */ - public static function unichr($c) - { - if ($c <= 0x7F) { - return chr($c); - } elseif ($c <= 0x7FF) { - return chr(0xC0 | $c >> 6) . chr(0x80 | $c & 0x3F); - } elseif ($c <= 0xFFFF) { - return chr(0xE0 | $c >> 12) . chr(0x80 | $c >> 6 & 0x3F) - . chr(0x80 | $c & 0x3F); - } elseif ($c <= 0x10FFFF) { - return chr(0xF0 | $c >> 18) . chr(0x80 | $c >> 12 & 0x3F) - . chr(0x80 | $c >> 6 & 0x3F) - . chr(0x80 | $c & 0x3F); - } - return false; - } - - /** - * Converts a CMYK color to RGB - * - * @param float|float[] $c - * @param float $m - * @param float $y - * @param float $k - * - * @return float[] - */ - public static function cmyk_to_rgb($c, $m = null, $y = null, $k = null) - { - if (is_array($c)) { - [$c, $m, $y, $k] = $c; - } - - $c *= 255; - $m *= 255; - $y *= 255; - $k *= 255; - - $r = (1 - round(2.55 * ($c + $k))); - $g = (1 - round(2.55 * ($m + $k))); - $b = (1 - round(2.55 * ($y + $k))); - - if ($r < 0) { - $r = 0; - } - if ($g < 0) { - $g = 0; - } - if ($b < 0) { - $b = 0; - } - - return [ - $r, $g, $b, - "r" => $r, "g" => $g, "b" => $b - ]; - } - - /** - * getimagesize doesn't give a good size for 32bit BMP image v5 - * - * @param string $filename - * @param resource $context - * @return array An array of three elements: width and height as - * `float|int`, and image type as `string|null`. - */ - public static function dompdf_getimagesize($filename, $context = null) - { - static $cache = []; - - if (isset($cache[$filename])) { - return $cache[$filename]; - } - - [$width, $height, $type] = getimagesize($filename); - - // Custom types - $types = [ - IMAGETYPE_JPEG => "jpeg", - IMAGETYPE_GIF => "gif", - IMAGETYPE_BMP => "bmp", - IMAGETYPE_PNG => "png", - IMAGETYPE_WEBP => "webp", - ]; - - $type = $types[$type] ?? null; - - if ($width == null || $height == null) { - [$data] = Helpers::getFileContent($filename, $context); - - if ($data !== null) { - if (substr($data, 0, 2) === "BM") { - $meta = unpack("vtype/Vfilesize/Vreserved/Voffset/Vheadersize/Vwidth/Vheight", $data); - $width = (int) $meta["width"]; - $height = (int) $meta["height"]; - $type = "bmp"; - } elseif (strpos($data, "loadFile($filename); - - [$width, $height] = $doc->getDimensions(); - $width = (float) $width; - $height = (float) $height; - $type = "svg"; - } - } - } - - return $cache[$filename] = [$width ?? 0, $height ?? 0, $type]; - } - - /** - * Credit goes to mgutt - * http://www.programmierer-forum.de/function-imagecreatefrombmp-welche-variante-laeuft-t143137.htm - * Modified by Fabien Menager to support RGB555 BMP format - */ - public static function imagecreatefrombmp($filename, $context = null) - { - if (!function_exists("imagecreatetruecolor")) { - trigger_error("The PHP GD extension is required, but is not installed.", E_ERROR); - return false; - } - - // version 1.00 - if (!($fh = fopen($filename, 'rb'))) { - trigger_error('imagecreatefrombmp: Can not open ' . $filename, E_USER_WARNING); - return false; - } - - $bytes_read = 0; - - // read file header - $meta = unpack('vtype/Vfilesize/Vreserved/Voffset', fread($fh, 14)); - - // check for bitmap - if ($meta['type'] != 19778) { - trigger_error('imagecreatefrombmp: ' . $filename . ' is not a bitmap!', E_USER_WARNING); - return false; - } - - // read image header - $meta += unpack('Vheadersize/Vwidth/Vheight/vplanes/vbits/Vcompression/Vimagesize/Vxres/Vyres/Vcolors/Vimportant', fread($fh, 40)); - $bytes_read += 40; - - // read additional bitfield header - if ($meta['compression'] == 3) { - $meta += unpack('VrMask/VgMask/VbMask', fread($fh, 12)); - $bytes_read += 12; - } - - // set bytes and padding - $meta['bytes'] = $meta['bits'] / 8; - $meta['decal'] = 4 - (4 * (($meta['width'] * $meta['bytes'] / 4) - floor($meta['width'] * $meta['bytes'] / 4))); - if ($meta['decal'] == 4) { - $meta['decal'] = 0; - } - - // obtain imagesize - if ($meta['imagesize'] < 1) { - $meta['imagesize'] = $meta['filesize'] - $meta['offset']; - // in rare cases filesize is equal to offset so we need to read physical size - if ($meta['imagesize'] < 1) { - $meta['imagesize'] = @filesize($filename) - $meta['offset']; - if ($meta['imagesize'] < 1) { - trigger_error('imagecreatefrombmp: Can not obtain filesize of ' . $filename . '!', E_USER_WARNING); - return false; - } - } - } - - // calculate colors - $meta['colors'] = !$meta['colors'] ? pow(2, $meta['bits']) : $meta['colors']; - - // read color palette - $palette = []; - if ($meta['bits'] < 16) { - $palette = unpack('l' . $meta['colors'], fread($fh, $meta['colors'] * 4)); - // in rare cases the color value is signed - if ($palette[1] < 0) { - foreach ($palette as $i => $color) { - $palette[$i] = $color + 16777216; - } - } - } - - // ignore extra bitmap headers - if ($meta['headersize'] > $bytes_read) { - fread($fh, $meta['headersize'] - $bytes_read); - } - - // create gd image - $im = imagecreatetruecolor($meta['width'], $meta['height']); - $data = fread($fh, $meta['imagesize']); - - // uncompress data - switch ($meta['compression']) { - case 1: - $data = Helpers::rle8_decode($data, $meta['width']); - break; - case 2: - $data = Helpers::rle4_decode($data, $meta['width']); - break; - } - - $p = 0; - $vide = chr(0); - $y = $meta['height'] - 1; - $error = 'imagecreatefrombmp: ' . $filename . ' has not enough data!'; - - // loop through the image data beginning with the lower left corner - while ($y >= 0) { - $x = 0; - while ($x < $meta['width']) { - switch ($meta['bits']) { - case 32: - case 24: - if (!($part = substr($data, $p, 3 /*$meta['bytes']*/))) { - trigger_error($error, E_USER_WARNING); - return $im; - } - $color = unpack('V', $part . $vide); - break; - case 16: - if (!($part = substr($data, $p, 2 /*$meta['bytes']*/))) { - trigger_error($error, E_USER_WARNING); - return $im; - } - $color = unpack('v', $part); - - if (empty($meta['rMask']) || $meta['rMask'] != 0xf800) { - $color[1] = (($color[1] & 0x7c00) >> 7) * 65536 + (($color[1] & 0x03e0) >> 2) * 256 + (($color[1] & 0x001f) << 3); // 555 - } else { - $color[1] = (($color[1] & 0xf800) >> 8) * 65536 + (($color[1] & 0x07e0) >> 3) * 256 + (($color[1] & 0x001f) << 3); // 565 - } - break; - case 8: - $color = unpack('n', $vide . substr($data, $p, 1)); - $color[1] = $palette[$color[1] + 1]; - break; - case 4: - $color = unpack('n', $vide . substr($data, floor($p), 1)); - $color[1] = ($p * 2) % 2 == 0 ? $color[1] >> 4 : $color[1] & 0x0F; - $color[1] = $palette[$color[1] + 1]; - break; - case 1: - $color = unpack('n', $vide . substr($data, floor($p), 1)); - switch (($p * 8) % 8) { - case 0: - $color[1] = $color[1] >> 7; - break; - case 1: - $color[1] = ($color[1] & 0x40) >> 6; - break; - case 2: - $color[1] = ($color[1] & 0x20) >> 5; - break; - case 3: - $color[1] = ($color[1] & 0x10) >> 4; - break; - case 4: - $color[1] = ($color[1] & 0x8) >> 3; - break; - case 5: - $color[1] = ($color[1] & 0x4) >> 2; - break; - case 6: - $color[1] = ($color[1] & 0x2) >> 1; - break; - case 7: - $color[1] = ($color[1] & 0x1); - break; - } - $color[1] = $palette[$color[1] + 1]; - break; - default: - trigger_error('imagecreatefrombmp: ' . $filename . ' has ' . $meta['bits'] . ' bits and this is not supported!', E_USER_WARNING); - return false; - } - imagesetpixel($im, $x, $y, $color[1]); - $x++; - $p += $meta['bytes']; - } - $y--; - $p += $meta['decal']; - } - fclose($fh); - return $im; - } - - /** - * Gets the content of the file at the specified path using one of - * the following methods, in preferential order: - * - file_get_contents: if allow_url_fopen is true or the file is local - * - curl: if allow_url_fopen is false and curl is available - * - * @param string $uri - * @param resource $context - * @param int $offset - * @param int $maxlen - * @return string[] - */ - public static function getFileContent($uri, $context = null, $offset = 0, $maxlen = null) - { - $content = null; - $headers = null; - [$protocol] = Helpers::explode_url($uri); - $is_local_path = in_array(strtolower($protocol), ["", "file://", "phar://"], true); - $can_use_curl = in_array(strtolower($protocol), ["http://", "https://"], true); - - set_error_handler([self::class, 'record_warnings']); - - try { - if ($is_local_path || ini_get('allow_url_fopen') || !$can_use_curl) { - if ($is_local_path === false) { - $uri = Helpers::encodeURI($uri); - } - if (isset($maxlen)) { - $result = file_get_contents($uri, false, $context, $offset, $maxlen); - } else { - $result = file_get_contents($uri, false, $context, $offset); - } - if ($result !== false) { - $content = $result; - } - if (isset($http_response_header)) { - $headers = $http_response_header; - } - - } elseif ($can_use_curl && function_exists('curl_exec')) { - $curl = curl_init($uri); - - curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); - curl_setopt($curl, CURLOPT_HEADER, true); - if ($offset > 0) { - curl_setopt($curl, CURLOPT_RESUME_FROM, $offset); - } - - if ($maxlen > 0) { - curl_setopt($curl, CURLOPT_BUFFERSIZE, 128); - curl_setopt($curl, CURLOPT_NOPROGRESS, false); - curl_setopt($curl, CURLOPT_PROGRESSFUNCTION, function ($res, $download_size_total, $download_size, $upload_size_total, $upload_size) use ($maxlen) { - return ($download_size > $maxlen) ? 1 : 0; - }); - } - - $context_options = []; - if (!is_null($context)) { - $context_options = stream_context_get_options($context); - } - foreach ($context_options as $stream => $options) { - foreach ($options as $option => $value) { - $key = strtolower($stream) . ":" . strtolower($option); - switch ($key) { - case "curl:curl_verify_ssl_host": - curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, !$value ? 0 : 2); - break; - case "curl:max_redirects": - curl_setopt($curl, CURLOPT_MAXREDIRS, $value); - break; - case "http:follow_location": - curl_setopt($curl, CURLOPT_FOLLOWLOCATION, $value); - break; - case "http:header": - if (is_string($value)) { - curl_setopt($curl, CURLOPT_HTTPHEADER, [$value]); - } else { - curl_setopt($curl, CURLOPT_HTTPHEADER, $value); - } - break; - case "http:timeout": - curl_setopt($curl, CURLOPT_TIMEOUT, $value); - break; - case "http:user_agent": - curl_setopt($curl, CURLOPT_USERAGENT, $value); - break; - case "curl:curl_verify_ssl_peer": - case "ssl:verify_peer": - curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, $value); - break; - } - } - } - - $data = curl_exec($curl); - - if ($data !== false && !curl_errno($curl)) { - switch ($http_code = curl_getinfo($curl, CURLINFO_HTTP_CODE)) { - case 200: - $raw_headers = substr($data, 0, curl_getinfo($curl, CURLINFO_HEADER_SIZE)); - $headers = preg_split("/[\n\r]+/", trim($raw_headers)); - $content = substr($data, curl_getinfo($curl, CURLINFO_HEADER_SIZE)); - break; - } - } - curl_close($curl); - } - } finally { - restore_error_handler(); - } - - return [$content, $headers]; - } - - /** - * @param string $str - * @return string - */ - public static function mb_ucwords(string $str): string - { - $max_len = mb_strlen($str); - if ($max_len === 1) { - return mb_strtoupper($str); - } - - $str = mb_strtoupper(mb_substr($str, 0, 1)) . mb_substr($str, 1); - - foreach ([' ', '.', ',', '!', '?', '-', '+'] as $s) { - $pos = 0; - while (($pos = mb_strpos($str, $s, $pos)) !== false) { - $pos++; - // Nothing to do if the separator is the last char of the string - if ($pos !== false && $pos < $max_len) { - // If the char we want to upper is the last char there is nothing to append behind - if ($pos + 1 < $max_len) { - $str = mb_substr($str, 0, $pos) . mb_strtoupper(mb_substr($str, $pos, 1)) . mb_substr($str, $pos + 1); - } else { - $str = mb_substr($str, 0, $pos) . mb_strtoupper(mb_substr($str, $pos, 1)); - } - } - } - } - - return $str; - } - - /** - * Check whether two lengths should be considered equal, accounting for - * inaccuracies in float computation. - * - * The implementation relies on the fact that we are neither dealing with - * very large, nor with very small numbers in layout. Adapted from - * https://floating-point-gui.de/errors/comparison/. - * - * @param float $a - * @param float $b - * - * @return bool - */ - public static function lengthEqual(float $a, float $b): bool - { - // The epsilon results in a precision of at least: - // * 7 decimal digits at around 1 - // * 4 decimal digits at around 1000 (around the size of common paper formats) - // * 2 decimal digits at around 100,000 (100,000pt ~ 35.28m) - static $epsilon = 1e-8; - static $almostZero = 1e-12; - - $diff = abs($a - $b); - - if ($a === $b || $diff < $almostZero) { - return true; - } - - return $diff < $epsilon * max(abs($a), abs($b)); - } - - /** - * Check `$a < $b`, accounting for inaccuracies in float computation. - */ - public static function lengthLess(float $a, float $b): bool - { - return $a < $b && !self::lengthEqual($a, $b); - } - - /** - * Check `$a <= $b`, accounting for inaccuracies in float computation. - */ - public static function lengthLessOrEqual(float $a, float $b): bool - { - return $a <= $b || self::lengthEqual($a, $b); - } - - /** - * Check `$a > $b`, accounting for inaccuracies in float computation. - */ - public static function lengthGreater(float $a, float $b): bool - { - return $a > $b && !self::lengthEqual($a, $b); - } - - /** - * Check `$a >= $b`, accounting for inaccuracies in float computation. - */ - public static function lengthGreaterOrEqual(float $a, float $b): bool - { - return $a >= $b || self::lengthEqual($a, $b); - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Image/Cache.php b/docker/statistics/vendor/dompdf/dompdf/src/Image/Cache.php deleted file mode 100644 index b3e1d0e9..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Image/Cache.php +++ /dev/null @@ -1,289 +0,0 @@ -getAllowedProtocols(); - if (!array_key_exists($protocol, $allowed_protocols)) { - throw new ImageException("Permission denied on $url. The communication protocol is not supported.", E_WARNING); - } - foreach ($allowed_protocols[$protocol]["rules"] as $rule) { - [$result, $message] = $rule($full_url); - if (!$result) { - throw new ImageException("Error loading $url: $message", E_WARNING); - } - } - } - - if ($protocol === "file://") { - $resolved_url = $full_url; - } elseif (isset(self::$_cache[$full_url])) { - $resolved_url = self::$_cache[$full_url]; - } else { - $tmp_dir = $options->getTempDir(); - if (($resolved_url = @tempnam($tmp_dir, "ca_dompdf_img_")) === false) { - throw new ImageException("Unable to create temporary image in " . $tmp_dir, E_WARNING); - } - $tempfile = $resolved_url; - - $image = null; - if ($is_data_uri) { - if (($parsed_data_uri = Helpers::parse_data_uri($url)) !== false) { - $image = $parsed_data_uri["data"]; - } - } else { - list($image, $http_response_header) = Helpers::getFileContent($full_url, $options->getHttpContext()); - } - - // Image not found or invalid - if ($image === null) { - $msg = ($is_data_uri ? "Data-URI could not be parsed" : "Image not found"); - throw new ImageException($msg, E_WARNING); - } - - if (@file_put_contents($resolved_url, $image) === false) { - throw new ImageException("Unable to create temporary image in " . $tmp_dir, E_WARNING); - } - - self::$_cache[$full_url] = $resolved_url; - } - - // Check if the local file is readable - if (!is_readable($resolved_url) || !filesize($resolved_url)) { - throw new ImageException("Image not readable or empty", E_WARNING); - } - - list($width, $height, $type) = Helpers::dompdf_getimagesize($resolved_url, $options->getHttpContext()); - - if (($width && $height && in_array($type, ["gif", "png", "jpeg", "bmp", "svg","webp"], true)) === false) { - throw new ImageException("Image type unknown", E_WARNING); - } - - if ($type === "svg") { - $parser = xml_parser_create("utf-8"); - xml_parser_set_option($parser, XML_OPTION_CASE_FOLDING, false); - xml_set_element_handler( - $parser, - function ($parser, $name, $attributes) use ($options, $parsed_url, $full_url) { - if (strtolower($name) === "image") { - if (!\array_key_exists($full_url, self::$svgRefs)) { - self::$svgRefs[$full_url] = []; - } - $attributes = array_change_key_case($attributes, CASE_LOWER); - $urls = []; - $urls[] = $attributes["xlink:href"] ?? ""; - $urls[] = $attributes["href"] ?? ""; - foreach ($urls as $url) { - if (empty($url)) { - continue; - } - - $inner_full_url = Helpers::build_url($parsed_url["protocol"], $parsed_url["host"], $parsed_url["path"], $url); - if (empty($inner_full_url)) { - continue; - } - - self::detectCircularRef($full_url, $inner_full_url); - self::$svgRefs[$full_url][] = $inner_full_url; - [$resolved_url, $type, $message] = self::resolve_url($url, $parsed_url["protocol"], $parsed_url["host"], $parsed_url["path"], $options); - if (!empty($message)) { - throw new ImageException("This SVG document references a restricted resource. $message", E_WARNING); - } - } - } - }, - false - ); - - if (($fp = fopen($resolved_url, "r")) !== false) { - while ($line = fread($fp, 8192)) { - xml_parse($parser, $line, false); - } - fclose($fp); - xml_parse($parser, "", true); - } - xml_parser_free($parser); - } - } catch (ImageException $e) { - if ($tempfile) { - unlink($tempfile); - } - $resolved_url = self::$broken_image; - list($width, $height, $type) = Helpers::dompdf_getimagesize($resolved_url, $options->getHttpContext()); - $message = self::$error_message; - Helpers::record_warnings($e->getCode(), $e->getMessage() . " \n $url", $e->getFile(), $e->getLine()); - self::$_cache[$full_url] = $resolved_url; - } - - return [$resolved_url, $type, $message]; - } - - static function detectCircularRef(string $src, string $target) - { - if (!\array_key_exists($target, self::$svgRefs)) { - return; - } - foreach (self::$svgRefs[$target] as $ref) { - if ($ref === $src) { - throw new ImageException("Circular external SVG image reference detected.", E_WARNING); - } - self::detectCircularRef($src, $ref); - } - } - - /** - * Register a temp file for the given original image file. - * - * @param string $filePath The path of the original image. - * @param string $tempPath The path of the temp file to register. - * @param string $key An optional key to register the temp file at. - */ - static function addTempImage(string $filePath, string $tempPath, string $key = "default"): void - { - if (!isset(self::$tempImages[$filePath])) { - self::$tempImages[$filePath] = []; - } - - self::$tempImages[$filePath][$key] = $tempPath; - } - - /** - * Get the path of a temp file registered for the given original image file. - * - * @param string $filePath The path of the original image. - * @param string $key The key the temp file is registered at. - */ - static function getTempImage(string $filePath, string $key = "default"): ?string - { - return self::$tempImages[$filePath][$key] ?? null; - } - - /** - * Unlink all cached images (i.e. temporary images either downloaded - * or converted) except for the bundled "broken image" - */ - static function clear(bool $debugPng = false) - { - foreach (self::$_cache as $file) { - if ($file === self::$broken_image) { - continue; - } - if ($debugPng) { - print "[clear unlink $file]"; - } - if (file_exists($file)) { - unlink($file); - } - } - - foreach (self::$tempImages as $versions) { - foreach ($versions as $file) { - if ($file === self::$broken_image) { - continue; - } - if ($debugPng) { - print "[unlink temp image $file]"; - } - if (file_exists($file)) { - unlink($file); - } - } - } - - self::$_cache = []; - self::$tempImages = []; - self::$svgRefs = []; - } - - static function detect_type($file, $context = null) - { - list(, , $type) = Helpers::dompdf_getimagesize($file, $context); - - return $type; - } - - static function is_broken($url) - { - return $url === self::$broken_image; - } -} - -if (file_exists(realpath(__DIR__ . "/../../lib/res/broken_image.svg"))) { - Cache::$broken_image = realpath(__DIR__ . "/../../lib/res/broken_image.svg"); -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/JavascriptEmbedder.php b/docker/statistics/vendor/dompdf/dompdf/src/JavascriptEmbedder.php deleted file mode 100644 index f4b9bc25..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/JavascriptEmbedder.php +++ /dev/null @@ -1,51 +0,0 @@ -_dompdf = $dompdf; - } - - /** - * @param $script - */ - public function insert($script) - { - $this->_dompdf->getCanvas()->javascript($script); - } - - /** - * @param Frame $frame - */ - public function render(Frame $frame) - { - if (!$this->_dompdf->getOptions()->getIsJavascriptEnabled()) { - return; - } - - $this->insert($frame->get_node()->nodeValue); - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/LineBox.php b/docker/statistics/vendor/dompdf/dompdf/src/LineBox.php deleted file mode 100644 index 11b83c15..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/LineBox.php +++ /dev/null @@ -1,412 +0,0 @@ -_block_frame = $frame; - $this->_frames = []; - $this->y = $y; - - $this->get_float_offsets(); - } - - /** - * Returns the floating elements inside the first floating parent - * - * @param Page $root - * - * @return Frame[] - */ - public function get_floats_inside(Page $root) - { - $floating_frames = $root->get_floating_frames(); - - if (count($floating_frames) == 0) { - return $floating_frames; - } - - // Find nearest floating element - $p = $this->_block_frame; - while ($p->get_style()->float === "none") { - $parent = $p->get_parent(); - - if (!$parent) { - break; - } - - $p = $parent; - } - - if ($p == $root) { - return $floating_frames; - } - - $parent = $p; - - $childs = []; - - foreach ($floating_frames as $_floating) { - $p = $_floating->get_parent(); - - while (($p = $p->get_parent()) && $p !== $parent); - - if ($p) { - $childs[] = $p; - } - } - - return $childs; - } - - public function get_float_offsets() - { - static $anti_infinite_loop = 10000; // FIXME smelly hack - - $reflower = $this->_block_frame->get_reflower(); - - if (!$reflower) { - return; - } - - $cb_w = null; - - $block = $this->_block_frame; - $root = $block->get_root(); - - if (!$root) { - return; - } - - $style = $this->_block_frame->get_style(); - $floating_frames = $this->get_floats_inside($root); - $inside_left_floating_width = 0; - $inside_right_floating_width = 0; - $outside_left_floating_width = 0; - $outside_right_floating_width = 0; - - foreach ($floating_frames as $child_key => $floating_frame) { - $floating_frame_parent = $floating_frame->get_parent(); - $id = $floating_frame->get_id(); - - if (isset($this->floating_blocks[$id])) { - continue; - } - - $float = $floating_frame->get_style()->float; - $floating_width = $floating_frame->get_margin_width(); - - if (!$cb_w) { - $cb_w = $floating_frame->get_containing_block("w"); - } - - $line_w = $this->get_width(); - - if (!$floating_frame->_float_next_line && ($cb_w <= $line_w + $floating_width) && ($cb_w > $line_w)) { - $floating_frame->_float_next_line = true; - continue; - } - - // If the child is still shifted by the floating element - if ($anti_infinite_loop-- > 0 && - $floating_frame->get_position("y") + $floating_frame->get_margin_height() >= $this->y && - $block->get_position("x") + $block->get_margin_width() >= $floating_frame->get_position("x") - ) { - if ($float === "left") { - if ($floating_frame_parent === $this->_block_frame) { - $inside_left_floating_width += $floating_width; - } else { - $outside_left_floating_width += $floating_width; - } - } elseif ($float === "right") { - if ($floating_frame_parent === $this->_block_frame) { - $inside_right_floating_width += $floating_width; - } else { - $outside_right_floating_width += $floating_width; - } - } - - $this->floating_blocks[$id] = true; - } // else, the floating element won't shift anymore - else { - $root->remove_floating_frame($child_key); - } - } - - $this->left += $inside_left_floating_width; - if ($outside_left_floating_width > 0 && $outside_left_floating_width > ((float)$style->length_in_pt($style->margin_left) + (float)$style->length_in_pt($style->padding_left))) { - $this->left += $outside_left_floating_width - (float)$style->length_in_pt($style->margin_left) - (float)$style->length_in_pt($style->padding_left); - } - $this->right += $inside_right_floating_width; - if ($outside_right_floating_width > 0 && $outside_right_floating_width > ((float)$style->length_in_pt($style->margin_left) + (float)$style->length_in_pt($style->padding_right))) { - $this->right += $outside_right_floating_width - (float)$style->length_in_pt($style->margin_right) - (float)$style->length_in_pt($style->padding_right); - } - } - - /** - * @return float - */ - public function get_width() - { - return $this->left + $this->w + $this->right; - } - - /** - * @return Block - */ - public function get_block_frame() - { - return $this->_block_frame; - } - - /** - * @return AbstractFrameDecorator[] - */ - function &get_frames() - { - return $this->_frames; - } - - /** - * @param AbstractFrameDecorator $frame - */ - public function add_frame(Frame $frame): void - { - $this->_frames[] = $frame; - - if ($frame->get_positioner() instanceof InlinePositioner) { - $this->inline = true; - } - } - - /** - * Remove the frame at the given index and all following frames from the - * line. - * - * @param int $index - */ - public function remove_frames(int $index): void - { - $lastIndex = count($this->_frames) - 1; - - if ($index < 0 || $index > $lastIndex) { - return; - } - - for ($i = $lastIndex; $i >= $index; $i--) { - $f = $this->_frames[$i]; - unset($this->_frames[$i]); - $this->w -= $f->get_margin_width(); - } - - // Reset array indices - $this->_frames = array_values($this->_frames); - - // Recalculate the height of the line - $h = 0.0; - $this->inline = false; - - foreach ($this->_frames as $f) { - $h = max($h, $f->get_margin_height()); - - if ($f->get_positioner() instanceof InlinePositioner) { - $this->inline = true; - } - } - - $this->h = $h; - } - - /** - * Get the `outside` positioned list markers to be vertically aligned with - * the line box. - * - * @return ListBullet[] - */ - public function get_list_markers(): array - { - return $this->list_markers; - } - - /** - * Add a list marker to the line box. - * - * The list marker is only added for the purpose of vertical alignment, it - * is not actually added to the list of frames of the line box. - */ - public function add_list_marker(ListBullet $marker): void - { - $this->list_markers[] = $marker; - } - - /** - * An iterator of all list markers and inline positioned frames of the line - * box. - * - * @return \Iterator - */ - public function frames_to_align(): \Iterator - { - yield from $this->list_markers; - - foreach ($this->_frames as $frame) { - if ($frame->get_positioner() instanceof InlinePositioner) { - yield $frame; - } - } - } - - /** - * Trim trailing whitespace from the line. - */ - public function trim_trailing_ws(): void - { - $lastIndex = count($this->_frames) - 1; - - if ($lastIndex < 0) { - return; - } - - $lastFrame = $this->_frames[$lastIndex]; - $reflower = $lastFrame->get_reflower(); - - if ($reflower instanceof TextFrameReflower && !$lastFrame->is_pre()) { - $reflower->trim_trailing_ws(); - $this->recalculate_width(); - } - } - - /** - * Recalculate LineBox width based on the contained frames total width. - * - * @return float - */ - public function recalculate_width(): float - { - $width = 0.0; - - foreach ($this->_frames as $frame) { - $width += $frame->get_margin_width(); - } - - return $this->w = $width; - } - - /** - * @return string - */ - public function __toString(): string - { - $props = ["wc", "y", "w", "h", "left", "right", "br"]; - $s = ""; - foreach ($props as $prop) { - $s .= "$prop: " . $this->$prop . "\n"; - } - $s .= count($this->_frames) . " frames\n"; - - return $s; - } -} - -/* -class LineBoxList implements Iterator { - private $_p = 0; - private $_lines = array(); - -} -*/ diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Options.php b/docker/statistics/vendor/dompdf/dompdf/src/Options.php deleted file mode 100644 index b4591ef9..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Options.php +++ /dev/null @@ -1,1213 +0,0 @@ - ["rules" => []], - "http://" => ["rules" => []], - "https://" => ["rules" => []] - ]; - - /** - * Operational artifact (log files, temporary files) path validation - * - * @var callable - */ - private $artifactPathValidation = null; - - /** - * @var string - */ - private $logOutputFile; - - /** - * Styles targeted to this media type are applied to the document. - * This is on top of the media types that are always applied: - * all, static, visual, bitmap, paged, dompdf - * - * @var string - */ - private $defaultMediaType = "screen"; - - /** - * The default paper size. - * - * North America standard is "letter"; other countries generally "a4" - * @see \Dompdf\Adapter\CPDF::PAPER_SIZES for valid sizes - * - * @var string|float[] - */ - private $defaultPaperSize = "letter"; - - /** - * The default paper orientation. - * - * The orientation of the page (portrait or landscape). - * - * @var string - */ - private $defaultPaperOrientation = "portrait"; - - /** - * The default font family - * - * Used if no suitable fonts can be found. This must exist in the font folder. - * - * @var string - */ - private $defaultFont = "serif"; - - /** - * Image DPI setting - * - * This setting determines the default DPI setting for images and fonts. The - * DPI may be overridden for inline images by explicitly setting the - * image's width & height style attributes (i.e. if the image's native - * width is 600 pixels and you specify the image's width as 72 points, - * the image will have a DPI of 600 in the rendered PDF. The DPI of - * background images can not be overridden and is controlled entirely - * via this parameter. - * - * For the purposes of DOMPDF, pixels per inch (PPI) = dots per inch (DPI). - * If a size in html is given as px (or without unit as image size), - * this tells the corresponding size in pt at 72 DPI. - * This adjusts the relative sizes to be similar to the rendering of the - * html page in a reference browser. - * - * In pdf, always 1 pt = 1/72 inch - * - * @var int - */ - private $dpi = 96; - - /** - * A ratio applied to the fonts height to be more like browsers' line height - * - * @var float - */ - private $fontHeightRatio = 1.1; - - /** - * Enable embedded PHP - * - * If this setting is set to true then DOMPDF will automatically evaluate - * embedded PHP contained within tags. - * - * ==== IMPORTANT ==== - * Enabling this for documents you do not trust (e.g. arbitrary remote html - * pages) is a security risk. Embedded scripts are run with the same level of - * system access available to dompdf. Set this option to false (recommended) - * if you wish to process untrusted documents. - * - * This setting may increase the risk of system exploit. Do not change - * this settings without understanding the consequences. Additional - * documentation is available on the dompdf wiki at: - * https://github.com/dompdf/dompdf/wiki - * - * @var bool - */ - private $isPhpEnabled = false; - - /** - * Enable remote file access - * - * If this setting is set to true, DOMPDF will access remote sites for - * images and CSS files as required. - * - * ==== IMPORTANT ==== - * This can be a security risk, in particular in combination with isPhpEnabled and - * allowing remote html code to be passed to $dompdf = new DOMPDF(); $dompdf->load_html(...); - * This allows anonymous users to download legally doubtful internet content which on - * tracing back appears to being downloaded by your server, or allows malicious php code - * in remote html pages to be executed by your server with your account privileges. - * - * This setting may increase the risk of system exploit. Do not change - * this settings without understanding the consequences. Additional - * documentation is available on the dompdf wiki at: - * https://github.com/dompdf/dompdf/wiki - * - * @var bool - */ - private $isRemoteEnabled = false; - - /** - * Enable inline JavaScript - * - * If this setting is set to true then DOMPDF will automatically insert - * JavaScript code contained within - * tags as written into the PDF. - * - * NOTE: This is PDF-based JavaScript to be executed by the PDF viewer, - * not browser-based JavaScript executed by Dompdf. - * - * @var bool - */ - private $isJavascriptEnabled = true; - - /** - * Use the HTML5 Lib parser - * - * @deprecated - * @var bool - */ - private $isHtml5ParserEnabled = true; - - /** - * Whether to enable font subsetting or not. - * - * @var bool - */ - private $isFontSubsettingEnabled = true; - - /** - * @var bool - */ - private $debugPng = false; - - /** - * @var bool - */ - private $debugKeepTemp = false; - - /** - * @var bool - */ - private $debugCss = false; - - /** - * @var bool - */ - private $debugLayout = false; - - /** - * @var bool - */ - private $debugLayoutLines = true; - - /** - * @var bool - */ - private $debugLayoutBlocks = true; - - /** - * @var bool - */ - private $debugLayoutInline = true; - - /** - * @var bool - */ - private $debugLayoutPaddingBox = true; - - /** - * The PDF rendering backend to use - * - * Valid settings are 'PDFLib', 'CPDF', 'GD', and 'auto'. 'auto' will - * look for PDFLib and use it if found, or if not it will fall back on - * CPDF. 'GD' renders PDFs to graphic files. {@link Dompdf\CanvasFactory} - * ultimately determines which rendering class to instantiate - * based on this setting. - * - * @var string - */ - private $pdfBackend = "CPDF"; - - /** - * PDFlib license key - * - * If you are using a licensed, commercial version of PDFlib, specify - * your license key here. If you are using PDFlib-Lite or are evaluating - * the commercial version of PDFlib, comment out this setting. - * - * @link http://www.pdflib.com - * - * If pdflib present in web server and auto or selected explicitly above, - * a real license code must exist! - * - * @var string - */ - private $pdflibLicense = ""; - - /** - * HTTP context created with stream_context_create() - * Will be used for file_get_contents - * - * @link https://www.php.net/manual/context.php - * - * @var resource - */ - private $httpContext; - - /** - * @param array $attributes - */ - public function __construct(array $attributes = null) - { - $rootDir = realpath(__DIR__ . "/../"); - $this->setChroot(array($rootDir)); - $this->setRootDir($rootDir); - $this->setTempDir(sys_get_temp_dir()); - $this->setFontDir($rootDir . "/lib/fonts"); - $this->setFontCache($this->getFontDir()); - - $ver = ""; - $versionFile = realpath(__DIR__ . '/../VERSION'); - if (($version = file_get_contents($versionFile)) !== false) { - $version = trim($version); - if ($version !== '$Format:<%h>$') { - $ver = "/$version"; - } - } - $this->setHttpContext([ - "http" => [ - "follow_location" => false, - "user_agent" => "Dompdf$ver https://github.com/dompdf/dompdf" - ] - ]); - - $this->setAllowedProtocols(["file://", "http://", "https://"]); - - $this->setArtifactPathValidation([$this, "validateArtifactPath"]); - - if (null !== $attributes) { - $this->set($attributes); - } - } - - /** - * @param array|string $attributes - * @param null|mixed $value - * @return $this - */ - public function set($attributes, $value = null) - { - if (!is_array($attributes)) { - $attributes = [$attributes => $value]; - } - foreach ($attributes as $key => $value) { - if ($key === 'tempDir' || $key === 'temp_dir') { - $this->setTempDir($value); - } elseif ($key === 'fontDir' || $key === 'font_dir') { - $this->setFontDir($value); - } elseif ($key === 'fontCache' || $key === 'font_cache') { - $this->setFontCache($value); - } elseif ($key === 'chroot') { - $this->setChroot($value); - } elseif ($key === 'allowedProtocols') { - $this->setAllowedProtocols($value); - } elseif ($key === 'artifactPathValidation') { - $this->setArtifactPathValidation($value); - } elseif ($key === 'logOutputFile' || $key === 'log_output_file') { - $this->setLogOutputFile($value); - } elseif ($key === 'defaultMediaType' || $key === 'default_media_type') { - $this->setDefaultMediaType($value); - } elseif ($key === 'defaultPaperSize' || $key === 'default_paper_size') { - $this->setDefaultPaperSize($value); - } elseif ($key === 'defaultPaperOrientation' || $key === 'default_paper_orientation') { - $this->setDefaultPaperOrientation($value); - } elseif ($key === 'defaultFont' || $key === 'default_font') { - $this->setDefaultFont($value); - } elseif ($key === 'dpi') { - $this->setDpi($value); - } elseif ($key === 'fontHeightRatio' || $key === 'font_height_ratio') { - $this->setFontHeightRatio($value); - } elseif ($key === 'isPhpEnabled' || $key === 'is_php_enabled' || $key === 'enable_php') { - $this->setIsPhpEnabled($value); - } elseif ($key === 'isRemoteEnabled' || $key === 'is_remote_enabled' || $key === 'enable_remote') { - $this->setIsRemoteEnabled($value); - } elseif ($key === 'isJavascriptEnabled' || $key === 'is_javascript_enabled' || $key === 'enable_javascript') { - $this->setIsJavascriptEnabled($value); - } elseif ($key === 'isHtml5ParserEnabled' || $key === 'is_html5_parser_enabled' || $key === 'enable_html5_parser') { - $this->setIsHtml5ParserEnabled($value); - } elseif ($key === 'isFontSubsettingEnabled' || $key === 'is_font_subsetting_enabled' || $key === 'enable_font_subsetting') { - $this->setIsFontSubsettingEnabled($value); - } elseif ($key === 'debugPng' || $key === 'debug_png') { - $this->setDebugPng($value); - } elseif ($key === 'debugKeepTemp' || $key === 'debug_keep_temp') { - $this->setDebugKeepTemp($value); - } elseif ($key === 'debugCss' || $key === 'debug_css') { - $this->setDebugCss($value); - } elseif ($key === 'debugLayout' || $key === 'debug_layout') { - $this->setDebugLayout($value); - } elseif ($key === 'debugLayoutLines' || $key === 'debug_layout_lines') { - $this->setDebugLayoutLines($value); - } elseif ($key === 'debugLayoutBlocks' || $key === 'debug_layout_blocks') { - $this->setDebugLayoutBlocks($value); - } elseif ($key === 'debugLayoutInline' || $key === 'debug_layout_inline') { - $this->setDebugLayoutInline($value); - } elseif ($key === 'debugLayoutPaddingBox' || $key === 'debug_layout_padding_box') { - $this->setDebugLayoutPaddingBox($value); - } elseif ($key === 'pdfBackend' || $key === 'pdf_backend') { - $this->setPdfBackend($value); - } elseif ($key === 'pdflibLicense' || $key === 'pdflib_license') { - $this->setPdflibLicense($value); - } elseif ($key === 'httpContext' || $key === 'http_context') { - $this->setHttpContext($value); - } - } - return $this; - } - - /** - * @param string $key - * @return mixed - */ - public function get($key) - { - if ($key === 'tempDir' || $key === 'temp_dir') { - return $this->getTempDir(); - } elseif ($key === 'fontDir' || $key === 'font_dir') { - return $this->getFontDir(); - } elseif ($key === 'fontCache' || $key === 'font_cache') { - return $this->getFontCache(); - } elseif ($key === 'chroot') { - return $this->getChroot(); - } elseif ($key === 'allowedProtocols') { - return $this->getAllowedProtocols(); - } elseif ($key === 'artifactPathValidation') { - return $this->getArtifactPathValidation(); - } elseif ($key === 'logOutputFile' || $key === 'log_output_file') { - return $this->getLogOutputFile(); - } elseif ($key === 'defaultMediaType' || $key === 'default_media_type') { - return $this->getDefaultMediaType(); - } elseif ($key === 'defaultPaperSize' || $key === 'default_paper_size') { - return $this->getDefaultPaperSize(); - } elseif ($key === 'defaultPaperOrientation' || $key === 'default_paper_orientation') { - return $this->getDefaultPaperOrientation(); - } elseif ($key === 'defaultFont' || $key === 'default_font') { - return $this->getDefaultFont(); - } elseif ($key === 'dpi') { - return $this->getDpi(); - } elseif ($key === 'fontHeightRatio' || $key === 'font_height_ratio') { - return $this->getFontHeightRatio(); - } elseif ($key === 'isPhpEnabled' || $key === 'is_php_enabled' || $key === 'enable_php') { - return $this->getIsPhpEnabled(); - } elseif ($key === 'isRemoteEnabled' || $key === 'is_remote_enabled' || $key === 'enable_remote') { - return $this->getIsRemoteEnabled(); - } elseif ($key === 'isJavascriptEnabled' || $key === 'is_javascript_enabled' || $key === 'enable_javascript') { - return $this->getIsJavascriptEnabled(); - } elseif ($key === 'isHtml5ParserEnabled' || $key === 'is_html5_parser_enabled' || $key === 'enable_html5_parser') { - return $this->getIsHtml5ParserEnabled(); - } elseif ($key === 'isFontSubsettingEnabled' || $key === 'is_font_subsetting_enabled' || $key === 'enable_font_subsetting') { - return $this->getIsFontSubsettingEnabled(); - } elseif ($key === 'debugPng' || $key === 'debug_png') { - return $this->getDebugPng(); - } elseif ($key === 'debugKeepTemp' || $key === 'debug_keep_temp') { - return $this->getDebugKeepTemp(); - } elseif ($key === 'debugCss' || $key === 'debug_css') { - return $this->getDebugCss(); - } elseif ($key === 'debugLayout' || $key === 'debug_layout') { - return $this->getDebugLayout(); - } elseif ($key === 'debugLayoutLines' || $key === 'debug_layout_lines') { - return $this->getDebugLayoutLines(); - } elseif ($key === 'debugLayoutBlocks' || $key === 'debug_layout_blocks') { - return $this->getDebugLayoutBlocks(); - } elseif ($key === 'debugLayoutInline' || $key === 'debug_layout_inline') { - return $this->getDebugLayoutInline(); - } elseif ($key === 'debugLayoutPaddingBox' || $key === 'debug_layout_padding_box') { - return $this->getDebugLayoutPaddingBox(); - } elseif ($key === 'pdfBackend' || $key === 'pdf_backend') { - return $this->getPdfBackend(); - } elseif ($key === 'pdflibLicense' || $key === 'pdflib_license') { - return $this->getPdflibLicense(); - } elseif ($key === 'httpContext' || $key === 'http_context') { - return $this->getHttpContext(); - } - return null; - } - - /** - * @param string $pdfBackend - * @return $this - */ - public function setPdfBackend($pdfBackend) - { - $this->pdfBackend = $pdfBackend; - return $this; - } - - /** - * @return string - */ - public function getPdfBackend() - { - return $this->pdfBackend; - } - - /** - * @param string $pdflibLicense - * @return $this - */ - public function setPdflibLicense($pdflibLicense) - { - $this->pdflibLicense = $pdflibLicense; - return $this; - } - - /** - * @return string - */ - public function getPdflibLicense() - { - return $this->pdflibLicense; - } - - /** - * @param array|string $chroot - * @return $this - */ - public function setChroot($chroot, $delimiter = ',') - { - if (is_string($chroot)) { - $this->chroot = explode($delimiter, $chroot); - } elseif (is_array($chroot)) { - $this->chroot = $chroot; - } - return $this; - } - - /** - * @return array - */ - public function getAllowedProtocols() - { - return $this->allowedProtocols; - } - - /** - * @param array $allowedProtocols The protocols to allow, as an array - * formatted as ["protocol://" => ["rules" => [callable]], ...] - * or ["protocol://", ...] - * - * @return $this - */ - public function setAllowedProtocols(array $allowedProtocols) - { - $protocols = []; - foreach ($allowedProtocols as $protocol => $config) { - if (is_string($protocol)) { - $protocols[$protocol] = []; - if (is_array($config)) { - $protocols[$protocol] = $config; - } - } elseif (is_string($config)) { - $protocols[$config] = []; - } - } - $this->allowedProtocols = []; - foreach ($protocols as $protocol => $config) { - $this->addAllowedProtocol($protocol, ...($config["rules"] ?? [])); - } - return $this; - } - - /** - * Adds a new protocol to the allowed protocols collection - * - * @param string $protocol The scheme to add (e.g. "http://") - * @param callable $rule A callable that validates the protocol - * @return $this - */ - public function addAllowedProtocol(string $protocol, callable ...$rules) - { - $protocol = strtolower($protocol); - if (empty($rules)) { - $rules = []; - switch ($protocol) { - case "file://": - $rules[] = [$this, "validateLocalUri"]; - break; - case "http://": - case "https://": - $rules[] = [$this, "validateRemoteUri"]; - break; - case "phar://": - $rules[] = [$this, "validatePharUri"]; - break; - } - } - $this->allowedProtocols[$protocol] = ["rules" => $rules]; - return $this; - } - - /** - * @return array - */ - public function getArtifactPathValidation() - { - return $this->artifactPathValidation; - } - - /** - * @param callable $validator - * @return $this - */ - public function setArtifactPathValidation($validator) - { - $this->artifactPathValidation = $validator; - return $this; - } - - /** - * @return array - */ - public function getChroot() - { - $chroot = []; - if (is_array($this->chroot)) { - $chroot = $this->chroot; - } - return $chroot; - } - - /** - * @param boolean $debugCss - * @return $this - */ - public function setDebugCss($debugCss) - { - $this->debugCss = $debugCss; - return $this; - } - - /** - * @return boolean - */ - public function getDebugCss() - { - return $this->debugCss; - } - - /** - * @param boolean $debugKeepTemp - * @return $this - */ - public function setDebugKeepTemp($debugKeepTemp) - { - $this->debugKeepTemp = $debugKeepTemp; - return $this; - } - - /** - * @return boolean - */ - public function getDebugKeepTemp() - { - return $this->debugKeepTemp; - } - - /** - * @param boolean $debugLayout - * @return $this - */ - public function setDebugLayout($debugLayout) - { - $this->debugLayout = $debugLayout; - return $this; - } - - /** - * @return boolean - */ - public function getDebugLayout() - { - return $this->debugLayout; - } - - /** - * @param boolean $debugLayoutBlocks - * @return $this - */ - public function setDebugLayoutBlocks($debugLayoutBlocks) - { - $this->debugLayoutBlocks = $debugLayoutBlocks; - return $this; - } - - /** - * @return boolean - */ - public function getDebugLayoutBlocks() - { - return $this->debugLayoutBlocks; - } - - /** - * @param boolean $debugLayoutInline - * @return $this - */ - public function setDebugLayoutInline($debugLayoutInline) - { - $this->debugLayoutInline = $debugLayoutInline; - return $this; - } - - /** - * @return boolean - */ - public function getDebugLayoutInline() - { - return $this->debugLayoutInline; - } - - /** - * @param boolean $debugLayoutLines - * @return $this - */ - public function setDebugLayoutLines($debugLayoutLines) - { - $this->debugLayoutLines = $debugLayoutLines; - return $this; - } - - /** - * @return boolean - */ - public function getDebugLayoutLines() - { - return $this->debugLayoutLines; - } - - /** - * @param boolean $debugLayoutPaddingBox - * @return $this - */ - public function setDebugLayoutPaddingBox($debugLayoutPaddingBox) - { - $this->debugLayoutPaddingBox = $debugLayoutPaddingBox; - return $this; - } - - /** - * @return boolean - */ - public function getDebugLayoutPaddingBox() - { - return $this->debugLayoutPaddingBox; - } - - /** - * @param boolean $debugPng - * @return $this - */ - public function setDebugPng($debugPng) - { - $this->debugPng = $debugPng; - return $this; - } - - /** - * @return boolean - */ - public function getDebugPng() - { - return $this->debugPng; - } - - /** - * @param string $defaultFont - * @return $this - */ - public function setDefaultFont($defaultFont) - { - if (!($defaultFont === null || trim($defaultFont) === "")) { - $this->defaultFont = $defaultFont; - } else { - $this->defaultFont = "serif"; - } - return $this; - } - - /** - * @return string - */ - public function getDefaultFont() - { - return $this->defaultFont; - } - - /** - * @param string $defaultMediaType - * @return $this - */ - public function setDefaultMediaType($defaultMediaType) - { - $this->defaultMediaType = $defaultMediaType; - return $this; - } - - /** - * @return string - */ - public function getDefaultMediaType() - { - return $this->defaultMediaType; - } - - /** - * @param string|float[] $defaultPaperSize - * @return $this - */ - public function setDefaultPaperSize($defaultPaperSize): self - { - $this->defaultPaperSize = $defaultPaperSize; - return $this; - } - - /** - * @param string $defaultPaperOrientation - * @return $this - */ - public function setDefaultPaperOrientation(string $defaultPaperOrientation): self - { - $this->defaultPaperOrientation = $defaultPaperOrientation; - return $this; - } - - /** - * @return string|float[] - */ - public function getDefaultPaperSize() - { - return $this->defaultPaperSize; - } - - /** - * @return string - */ - public function getDefaultPaperOrientation(): string - { - return $this->defaultPaperOrientation; - } - - /** - * @param int $dpi - * @return $this - */ - public function setDpi($dpi) - { - $this->dpi = $dpi; - return $this; - } - - /** - * @return int - */ - public function getDpi() - { - return $this->dpi; - } - - /** - * @param string $fontCache - * @return $this - */ - public function setFontCache($fontCache) - { - if (!is_callable($this->artifactPathValidation) || ($this->artifactPathValidation)($fontCache, "fontCache") === true) { - $this->fontCache = $fontCache; - } - return $this; - } - - /** - * @return string - */ - public function getFontCache() - { - return $this->fontCache; - } - - /** - * @param string $fontDir - * @return $this - */ - public function setFontDir($fontDir) - { - if (!is_callable($this->artifactPathValidation) || ($this->artifactPathValidation)($fontDir, "fontDir") === true) { - $this->fontDir = $fontDir; - } - return $this; - } - - /** - * @return string - */ - public function getFontDir() - { - return $this->fontDir; - } - - /** - * @param float $fontHeightRatio - * @return $this - */ - public function setFontHeightRatio($fontHeightRatio) - { - $this->fontHeightRatio = $fontHeightRatio; - return $this; - } - - /** - * @return float - */ - public function getFontHeightRatio() - { - return $this->fontHeightRatio; - } - - /** - * @param boolean $isFontSubsettingEnabled - * @return $this - */ - public function setIsFontSubsettingEnabled($isFontSubsettingEnabled) - { - $this->isFontSubsettingEnabled = $isFontSubsettingEnabled; - return $this; - } - - /** - * @return boolean - */ - public function getIsFontSubsettingEnabled() - { - return $this->isFontSubsettingEnabled; - } - - /** - * @return boolean - */ - public function isFontSubsettingEnabled() - { - return $this->getIsFontSubsettingEnabled(); - } - - /** - * @deprecated - * @param boolean $isHtml5ParserEnabled - * @return $this - */ - public function setIsHtml5ParserEnabled($isHtml5ParserEnabled) - { - $this->isHtml5ParserEnabled = $isHtml5ParserEnabled; - return $this; - } - - /** - * @deprecated - * @return boolean - */ - public function getIsHtml5ParserEnabled() - { - return $this->isHtml5ParserEnabled; - } - - /** - * @deprecated - * @return boolean - */ - public function isHtml5ParserEnabled() - { - return $this->getIsHtml5ParserEnabled(); - } - - /** - * @param boolean $isJavascriptEnabled - * @return $this - */ - public function setIsJavascriptEnabled($isJavascriptEnabled) - { - $this->isJavascriptEnabled = $isJavascriptEnabled; - return $this; - } - - /** - * @return boolean - */ - public function getIsJavascriptEnabled() - { - return $this->isJavascriptEnabled; - } - - /** - * @return boolean - */ - public function isJavascriptEnabled() - { - return $this->getIsJavascriptEnabled(); - } - - /** - * @param boolean $isPhpEnabled - * @return $this - */ - public function setIsPhpEnabled($isPhpEnabled) - { - $this->isPhpEnabled = $isPhpEnabled; - return $this; - } - - /** - * @return boolean - */ - public function getIsPhpEnabled() - { - return $this->isPhpEnabled; - } - - /** - * @return boolean - */ - public function isPhpEnabled() - { - return $this->getIsPhpEnabled(); - } - - /** - * @param boolean $isRemoteEnabled - * @return $this - */ - public function setIsRemoteEnabled($isRemoteEnabled) - { - $this->isRemoteEnabled = $isRemoteEnabled; - return $this; - } - - /** - * @return boolean - */ - public function getIsRemoteEnabled() - { - return $this->isRemoteEnabled; - } - - /** - * @return boolean - */ - public function isRemoteEnabled() - { - return $this->getIsRemoteEnabled(); - } - - /** - * @param string $logOutputFile - * @return $this - */ - public function setLogOutputFile($logOutputFile) - { - if (!is_callable($this->artifactPathValidation) || ($this->artifactPathValidation)($logOutputFile, "logOutputFile") === true) { - $this->logOutputFile = $logOutputFile; - } - return $this; - } - - /** - * @return string - */ - public function getLogOutputFile() - { - return $this->logOutputFile; - } - - /** - * @param string $tempDir - * @return $this - */ - public function setTempDir($tempDir) - { - if (!is_callable($this->artifactPathValidation) || ($this->artifactPathValidation)($tempDir, "tempDir") === true) { - $this->tempDir = $tempDir; - } - return $this; - } - - /** - * @return string - */ - public function getTempDir() - { - return $this->tempDir; - } - - /** - * @param string $rootDir - * @return $this - */ - public function setRootDir($rootDir) - { - if (!is_callable($this->artifactPathValidation) || ($this->artifactPathValidation)($rootDir, "rootDir") === true) { - $this->rootDir = $rootDir; - } - return $this; - } - - /** - * @return string - */ - public function getRootDir() - { - return $this->rootDir; - } - - /** - * Sets the HTTP context - * - * @param resource|array $httpContext - * @return $this - */ - public function setHttpContext($httpContext) - { - $this->httpContext = is_array($httpContext) ? stream_context_create($httpContext) : $httpContext; - return $this; - } - - /** - * Returns the HTTP context - * - * @return resource - */ - public function getHttpContext() - { - return $this->httpContext; - } - - - public function validateArtifactPath(?string $path, string $option) - { - if ($path === null) { - return true; - } - $parsed_uri = parse_url($path); - if ($parsed_uri === false || (array_key_exists("scheme", $parsed_uri) && strtolower($parsed_uri["scheme"]) === "phar")) { - return false; - } - return true; - } - - public function validateLocalUri(string $uri) - { - if ($uri === null || strlen($uri) === 0) { - return [false, "The URI must not be empty."]; - } - - $realfile = realpath(str_replace("file://", "", $uri)); - - $dirs = $this->chroot; - $dirs[] = $this->rootDir; - $chrootValid = false; - foreach ($dirs as $chrootPath) { - $chrootPath = realpath($chrootPath); - if ($chrootPath !== false && strpos($realfile, $chrootPath) === 0) { - $chrootValid = true; - break; - } - } - if ($chrootValid !== true) { - return [false, "Permission denied. The file could not be found under the paths specified by Options::chroot."]; - } - - if (!$realfile) { - return [false, "File not found."]; - } - - return [true, null]; - } - - public function validatePharUri(string $uri) - { - if ($uri === null || strlen($uri) === 0) { - return [false, "The URI must not be empty."]; - } - - $file = substr(substr($uri, 0, strpos($uri, ".phar") + 5), 7); - return $this->validateLocalUri($file); - } - - public function validateRemoteUri(string $uri) - { - if ($uri === null || strlen($uri) === 0) { - return [false, "The URI must not be empty."]; - } - - if (!$this->isRemoteEnabled) { - return [false, "Remote file requested, but remote file download is disabled."]; - } - - return [true, null]; - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/PhpEvaluator.php b/docker/statistics/vendor/dompdf/dompdf/src/PhpEvaluator.php deleted file mode 100644 index 4a46555c..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/PhpEvaluator.php +++ /dev/null @@ -1,62 +0,0 @@ -_canvas = $canvas; - } - - /** - * @param $code - * @param array $vars - */ - public function evaluate($code, $vars = []) - { - if (!$this->_canvas->get_dompdf()->getOptions()->getIsPhpEnabled()) { - return; - } - - // Set up some variables for the inline code - $pdf = $this->_canvas; - $fontMetrics = $pdf->get_dompdf()->getFontMetrics(); - $PAGE_NUM = $pdf->get_page_number(); - $PAGE_COUNT = $pdf->get_page_count(); - - // Override those variables if passed in - foreach ($vars as $k => $v) { - $$k = $v; - } - - eval($code); - } - - /** - * @param Frame $frame - */ - public function render(Frame $frame) - { - $this->evaluate($frame->get_node()->nodeValue); - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Positioner/Absolute.php b/docker/statistics/vendor/dompdf/dompdf/src/Positioner/Absolute.php deleted file mode 100644 index 2df9a742..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Positioner/Absolute.php +++ /dev/null @@ -1,128 +0,0 @@ -get_reflower() instanceof Block) { - $style = $frame->get_style(); - [$cbx, $cby, $cbw, $cbh] = $frame->get_containing_block(); - - // If the `top` value is `auto`, the frame will be repositioned - // after its height has been resolved - $left = (float) $style->length_in_pt($style->left, $cbw); - $top = (float) $style->length_in_pt($style->top, $cbh); - - $frame->set_position($cbx + $left, $cby + $top); - } else { - // Legacy positioning logic for image and table frames - // TODO: Resolve dimensions, margins, and offsets similar to the - // block case in the reflowers and use the simplified logic above - $style = $frame->get_style(); - $block_parent = $frame->find_block_parent(); - $current_line = $block_parent->get_current_line_box(); - - list($x, $y, $w, $h) = $frame->get_containing_block(); - $inflow_x = $block_parent->get_content_box()["x"] + $current_line->left + $current_line->w; - $inflow_y = $current_line->y; - - $top = $style->length_in_pt($style->top, $h); - $right = $style->length_in_pt($style->right, $w); - $bottom = $style->length_in_pt($style->bottom, $h); - $left = $style->length_in_pt($style->left, $w); - - list($width, $height) = [$frame->get_margin_width(), $frame->get_margin_height()]; - - $orig_width = $style->get_specified("width"); - $orig_height = $style->get_specified("height"); - - /**************************** - * - * Width auto: - * ____________| left=auto | left=fixed | - * right=auto | A | B | - * right=fixed | C | D | - * - * Width fixed: - * ____________| left=auto | left=fixed | - * right=auto | E | F | - * right=fixed | G | H | - *****************************/ - - if ($left === "auto") { - if ($right === "auto") { - // A or E - Keep the frame at the same position - $x = $inflow_x; - } else { - if ($orig_width === "auto") { - // C - $x += $w - $width - $right; - } else { - // G - $x += $w - $width - $right; - } - } - } else { - if ($right === "auto") { - // B or F - $x += (float)$left; - } else { - if ($orig_width === "auto") { - // D - TODO change width - $x += (float)$left; - } else { - // H - Everything is fixed: left + width win - $x += (float)$left; - } - } - } - - // The same vertically - if ($top === "auto") { - if ($bottom === "auto") { - // A or E - Keep the frame at the same position - $y = $inflow_y; - } else { - if ($orig_height === "auto") { - // C - $y += (float)$h - $height - (float)$bottom; - } else { - // G - $y += (float)$h - $height - (float)$bottom; - } - } - } else { - if ($bottom === "auto") { - // B or F - $y += (float)$top; - } else { - if ($orig_height === "auto") { - // D - TODO change height - $y += (float)$top; - } else { - // H - Everything is fixed: top + height win - $y += (float)$top; - } - } - } - - $frame->set_position($x, $y); - } - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Positioner/AbstractPositioner.php b/docker/statistics/vendor/dompdf/dompdf/src/Positioner/AbstractPositioner.php deleted file mode 100644 index a75c09fb..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Positioner/AbstractPositioner.php +++ /dev/null @@ -1,48 +0,0 @@ -get_position(); - - if (!$ignore_self) { - $frame->set_position($x + $offset_x, $y + $offset_y); - } - - foreach ($frame->get_children() as $child) { - $child->move($offset_x, $offset_y); - } - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Positioner/Block.php b/docker/statistics/vendor/dompdf/dompdf/src/Positioner/Block.php deleted file mode 100644 index e6f65eab..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Positioner/Block.php +++ /dev/null @@ -1,40 +0,0 @@ -get_style(); - $cb = $frame->get_containing_block(); - $p = $frame->find_block_parent(); - - if ($p) { - $float = $style->float; - - if (!$float || $float === "none") { - $p->add_line(true); - } - $y = $p->get_current_line_box()->y; - } else { - $y = $cb["y"]; - } - - $x = $cb["x"]; - - $frame->set_position($x, $y); - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Positioner/Fixed.php b/docker/statistics/vendor/dompdf/dompdf/src/Positioner/Fixed.php deleted file mode 100644 index 13eb9e9c..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Positioner/Fixed.php +++ /dev/null @@ -1,92 +0,0 @@ -get_reflower() instanceof Block) { - parent::position($frame); - } else { - // Legacy positioning logic for image and table frames - // TODO: Resolve dimensions, margins, and offsets similar to the - // block case in the reflowers and use the simplified logic above - $style = $frame->get_style(); - $root = $frame->get_root(); - $initialcb = $root->get_containing_block(); - $initialcb_style = $root->get_style(); - - $p = $frame->find_block_parent(); - if ($p) { - $p->add_line(); - } - // Compute the margins of the @page style - $margin_top = (float)$initialcb_style->length_in_pt($initialcb_style->margin_top, $initialcb["h"]); - $margin_right = (float)$initialcb_style->length_in_pt($initialcb_style->margin_right, $initialcb["w"]); - $margin_bottom = (float)$initialcb_style->length_in_pt($initialcb_style->margin_bottom, $initialcb["h"]); - $margin_left = (float)$initialcb_style->length_in_pt($initialcb_style->margin_left, $initialcb["w"]); - - // The needed computed style of the element - $height = (float)$style->length_in_pt($style->get_specified("height"), $initialcb["h"]); - $width = (float)$style->length_in_pt($style->get_specified("width"), $initialcb["w"]); - - $top = $style->length_in_pt($style->get_specified("top"), $initialcb["h"]); - $right = $style->length_in_pt($style->get_specified("right"), $initialcb["w"]); - $bottom = $style->length_in_pt($style->get_specified("bottom"), $initialcb["h"]); - $left = $style->length_in_pt($style->get_specified("left"), $initialcb["w"]); - - $y = $margin_top; - if (isset($top)) { - $y = (float)$top + $margin_top; - if ($top === "auto") { - $y = $margin_top; - if (isset($bottom) && $bottom !== "auto") { - $y = $initialcb["h"] - $bottom - $margin_bottom; - if ($frame->is_auto_height()) { - $y -= $height; - } else { - $y -= $frame->get_margin_height(); - } - } - } - } - - $x = $margin_left; - if (isset($left)) { - $x = (float)$left + $margin_left; - if ($left === "auto") { - $x = $margin_left; - if (isset($right) && $right !== "auto") { - $x = $initialcb["w"] - $right - $margin_right; - if ($frame->is_auto_width()) { - $x -= $width; - } else { - $x -= $frame->get_margin_width(); - } - } - } - } - - $frame->set_position($x, $y); - - foreach ($frame->get_children() as $child) { - $child->set_position($x, $y); - } - } - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Positioner/Inline.php b/docker/statistics/vendor/dompdf/dompdf/src/Positioner/Inline.php deleted file mode 100644 index c0bdaf26..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Positioner/Inline.php +++ /dev/null @@ -1,52 +0,0 @@ -find_block_parent(); - - if (!$block) { - throw new Exception("No block-level parent found. Not good."); - } - - $cb = $frame->get_containing_block(); - $line = $block->get_current_line_box(); - - if (!$frame->is_text_node() && !($frame instanceof InlineFrameDecorator)) { - // Atomic inline boxes and replaced inline elements - // (inline-block, inline-table, img etc.) - $width = $frame->get_margin_width(); - $available_width = $cb["w"] - $line->left - $line->w - $line->right; - - if (Helpers::lengthGreater($width, $available_width)) { - $block->add_line(); - $line = $block->get_current_line_box(); - } - } - - $frame->set_position($cb["x"] + $line->w, $line->y); - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Positioner/ListBullet.php b/docker/statistics/vendor/dompdf/dompdf/src/Positioner/ListBullet.php deleted file mode 100644 index 081d5941..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Positioner/ListBullet.php +++ /dev/null @@ -1,42 +0,0 @@ -get_parent(); - $style = $parent->get_style(); - $cbw = $parent->get_containing_block("w"); - $margin_left = (float) $style->length_in_pt($style->margin_left, $cbw); - $border_edge = $parent->get_position("x") + $margin_left; - - // This includes the marker indentation - $x = $border_edge - $frame->get_margin_width(); - - // The marker is later vertically aligned with the corresponding line - // box and its vertical position is fine-tuned in the renderer - $p = $frame->find_block_parent(); - $y = $p->get_current_line_box()->y; - - $frame->set_position($x, $y); - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Positioner/NullPositioner.php b/docker/statistics/vendor/dompdf/dompdf/src/Positioner/NullPositioner.php deleted file mode 100644 index 6ad425c3..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Positioner/NullPositioner.php +++ /dev/null @@ -1,26 +0,0 @@ -get_cellmap(); - $frame->set_position($cellmap->get_frame_position($frame)); - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Positioner/TableRow.php b/docker/statistics/vendor/dompdf/dompdf/src/Positioner/TableRow.php deleted file mode 100644 index 79c0fcf2..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Positioner/TableRow.php +++ /dev/null @@ -1,34 +0,0 @@ -get_containing_block(); - $p = $frame->get_prev_sibling(); - - if ($p) { - $y = $p->get_position("y") + $p->get_margin_height(); - } else { - $y = $cb["y"]; - } - $frame->set_position($cb["x"], $y); - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Renderer.php b/docker/statistics/vendor/dompdf/dompdf/src/Renderer.php deleted file mode 100644 index e3cacc10..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Renderer.php +++ /dev/null @@ -1,291 +0,0 @@ -_canvas->new_page(); - } - - /** - * Render frames recursively - * - * @param Frame $frame the frame to render - */ - public function render(Frame $frame) - { - global $_dompdf_debug; - - $this->_check_callbacks("begin_frame", $frame); - - if ($_dompdf_debug) { - echo $frame; - flush(); - } - - $style = $frame->get_style(); - - if (in_array($style->visibility, ["hidden", "collapse"], true)) { - return; - } - - $display = $style->display; - $transformList = $style->transform; - $hasTransform = $transformList !== []; - - // Starts the CSS transformation - if ($hasTransform) { - $this->_canvas->save(); - list($x, $y) = $frame->get_padding_box(); - $origin = $style->transform_origin; - - foreach ($transformList as $transform) { - list($function, $values) = $transform; - if ($function === "matrix") { - $function = "transform"; - } - - $values = array_map("floatval", $values); - $values[] = $x + (float)$style->length_in_pt($origin[0], (float)$style->length_in_pt($style->width)); - $values[] = $y + (float)$style->length_in_pt($origin[1], (float)$style->length_in_pt($style->height)); - - call_user_func_array([$this->_canvas, $function], $values); - } - } - - switch ($display) { - - case "block": - case "list-item": - case "inline-block": - case "table": - case "inline-table": - $this->_render_frame("block", $frame); - break; - - case "inline": - if ($frame->is_text_node()) { - $this->_render_frame("text", $frame); - } else { - $this->_render_frame("inline", $frame); - } - break; - - case "table-cell": - $this->_render_frame("table-cell", $frame); - break; - - case "table-row-group": - case "table-header-group": - case "table-footer-group": - $this->_render_frame("table-row-group", $frame); - break; - - case "-dompdf-list-bullet": - $this->_render_frame("list-bullet", $frame); - break; - - case "-dompdf-image": - $this->_render_frame("image", $frame); - break; - - case "none": - $node = $frame->get_node(); - - if ($node->nodeName === "script") { - if ($node->getAttribute("type") === "text/php" || - $node->getAttribute("language") === "php" - ) { - // Evaluate embedded php scripts - $this->_render_frame("php", $frame); - } elseif ($node->getAttribute("type") === "text/javascript" || - $node->getAttribute("language") === "javascript" - ) { - // Insert JavaScript - $this->_render_frame("javascript", $frame); - } - } - - // Don't render children, so skip to next iter - return; - - default: - break; - - } - - // Starts the overflow: hidden box - if ($style->overflow === "hidden") { - $padding_box = $frame->get_padding_box(); - [$x, $y, $w, $h] = $padding_box; - $style = $frame->get_style(); - - if ($style->has_border_radius()) { - $border_box = $frame->get_border_box(); - [$tl, $tr, $br, $bl] = $style->resolve_border_radius($border_box, $padding_box); - $this->_canvas->clipping_roundrectangle($x, $y, $w, $h, $tl, $tr, $br, $bl); - } else { - $this->_canvas->clipping_rectangle($x, $y, $w, $h); - } - } - - $stack = []; - - foreach ($frame->get_children() as $child) { - // < 0 : negative z-index - // = 0 : no z-index, no stacking context - // = 1 : stacking context without z-index - // > 1 : z-index - $child_style = $child->get_style(); - $child_z_index = $child_style->z_index; - $z_index = 0; - - if ($child_z_index !== "auto") { - $z_index = $child_z_index + 1; - } elseif ($child_style->float !== "none" || $child->is_positioned()) { - $z_index = 1; - } - - $stack[$z_index][] = $child; - } - - ksort($stack); - - foreach ($stack as $by_index) { - foreach ($by_index as $child) { - $this->render($child); - } - } - - // Ends the overflow: hidden box - if ($style->overflow === "hidden") { - $this->_canvas->clipping_end(); - } - - if ($hasTransform) { - $this->_canvas->restore(); - } - - // Check for end frame callback - $this->_check_callbacks("end_frame", $frame); - } - - /** - * Check for callbacks that need to be performed when a given event - * gets triggered on a frame - * - * @param string $event The type of event - * @param Frame $frame The frame that event is triggered on - */ - protected function _check_callbacks(string $event, Frame $frame): void - { - if (!isset($this->_callbacks)) { - $this->_callbacks = $this->_dompdf->getCallbacks(); - } - - if (isset($this->_callbacks[$event])) { - $fs = $this->_callbacks[$event]; - $canvas = $this->_canvas; - $fontMetrics = $this->_dompdf->getFontMetrics(); - - foreach ($fs as $f) { - $f($frame, $canvas, $fontMetrics); - } - } - } - - /** - * Render a single frame - * - * Creates Renderer objects on demand - * - * @param string $type type of renderer to use - * @param Frame $frame the frame to render - */ - protected function _render_frame($type, $frame) - { - - if (!isset($this->_renderers[$type])) { - - switch ($type) { - case "block": - $this->_renderers[$type] = new Block($this->_dompdf); - break; - - case "inline": - $this->_renderers[$type] = new Renderer\Inline($this->_dompdf); - break; - - case "text": - $this->_renderers[$type] = new Text($this->_dompdf); - break; - - case "image": - $this->_renderers[$type] = new Image($this->_dompdf); - break; - - case "table-cell": - $this->_renderers[$type] = new TableCell($this->_dompdf); - break; - - case "table-row-group": - $this->_renderers[$type] = new TableRowGroup($this->_dompdf); - break; - - case "list-bullet": - $this->_renderers[$type] = new ListBullet($this->_dompdf); - break; - - case "php": - $this->_renderers[$type] = new PhpEvaluator($this->_canvas); - break; - - case "javascript": - $this->_renderers[$type] = new JavascriptEmbedder($this->_dompdf); - break; - - } - } - - $this->_renderers[$type]->render($frame); - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Renderer/AbstractRenderer.php b/docker/statistics/vendor/dompdf/dompdf/src/Renderer/AbstractRenderer.php deleted file mode 100644 index 8b01ef8c..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Renderer/AbstractRenderer.php +++ /dev/null @@ -1,1244 +0,0 @@ -_dompdf = $dompdf; - $this->_canvas = $dompdf->getCanvas(); - } - - /** - * Render a frame. - * - * Specialized in child classes - * - * @param Frame $frame The frame to render - */ - abstract function render(Frame $frame); - - /** - * @param Frame $frame - * @param float[] $border_box - */ - protected function _render_background(Frame $frame, array $border_box): void - { - $style = $frame->get_style(); - $color = $style->background_color; - $image = $style->background_image; - [$x, $y, $w, $h] = $border_box; - - if ($color === "transparent" && $image === "none") { - return; - } - - if ($style->has_border_radius()) { - [$tl, $tr, $br, $bl] = $style->resolve_border_radius($border_box); - $this->_canvas->clipping_roundrectangle($x, $y, $w, $h, $tl, $tr, $br, $bl); - } - - if ($color !== "transparent") { - $this->_canvas->filled_rectangle($x, $y, $w, $h, $color); - } - - if ($image !== "none") { - $this->_background_image($image, $x, $y, $w, $h, $style); - } - - if ($style->has_border_radius()) { - $this->_canvas->clipping_end(); - } - } - - /** - * @param Frame $frame - * @param float[] $border_box - * @param string $corner_style - */ - protected function _render_border(Frame $frame, array $border_box, string $corner_style = "bevel"): void - { - $style = $frame->get_style(); - $bp = $style->get_border_properties(); - [$x, $y, $w, $h] = $border_box; - [$tl, $tr, $br, $bl] = $style->resolve_border_radius($border_box); - - // Short-cut: If all the borders are "solid" with the same color and - // style, and no radius, we'd better draw a rectangle - if ($bp["top"]["style"] === "solid" && - $bp["top"] === $bp["right"] && - $bp["right"] === $bp["bottom"] && - $bp["bottom"] === $bp["left"] && - !$style->has_border_radius() - ) { - $props = $bp["top"]; - if ($props["color"] === "transparent" || $props["width"] <= 0) { - return; - } - - $width = (float)$style->length_in_pt($props["width"]); - $this->_canvas->rectangle($x + $width / 2, $y + $width / 2, $w - $width, $h - $width, $props["color"], $width); - return; - } - - // Do it the long way - $widths = [ - (float)$style->length_in_pt($bp["top"]["width"]), - (float)$style->length_in_pt($bp["right"]["width"]), - (float)$style->length_in_pt($bp["bottom"]["width"]), - (float)$style->length_in_pt($bp["left"]["width"]) - ]; - - foreach ($bp as $side => $props) { - if ($props["style"] === "none" || - $props["style"] === "hidden" || - $props["color"] === "transparent" || - $props["width"] <= 0 - ) { - continue; - } - - [$x, $y, $w, $h] = $border_box; - $method = "_border_" . $props["style"]; - - switch ($side) { - case "top": - $length = $w; - $r1 = $tl; - $r2 = $tr; - break; - - case "bottom": - $length = $w; - $y += $h; - $r1 = $bl; - $r2 = $br; - break; - - case "left": - $length = $h; - $r1 = $tl; - $r2 = $bl; - break; - - case "right": - $length = $h; - $x += $w; - $r1 = $tr; - $r2 = $br; - break; - - default: - break; - } - - // draw rounded corners - $this->$method($x, $y, $length, $props["color"], $widths, $side, $corner_style, $r1, $r2); - } - } - - /** - * @param Frame $frame - * @param float[] $border_box - * @param string $corner_style - */ - protected function _render_outline(Frame $frame, array $border_box, string $corner_style = "bevel"): void - { - $style = $frame->get_style(); - - $width = $style->outline_width; - $outline_style = $style->outline_style; - $color = $style->outline_color; - - if ($outline_style === "none" || $color === "transparent" || $width <= 0) { - return; - } - - $offset = $style->outline_offset; - - [$x, $y, $w, $h] = $border_box; - $d = $width + $offset; - $outline_box = [$x - $d, $y - $d, $w + $d * 2, $h + $d * 2]; - [$tl, $tr, $br, $bl] = $style->resolve_border_radius($border_box, $outline_box); - - $x -= $offset; - $y -= $offset; - $w += $offset * 2; - $h += $offset * 2; - - // For a simple outline, we can draw a rectangle - if ($outline_style === "solid" && !$style->has_border_radius()) { - $x -= $width / 2; - $y -= $width / 2; - $w += $width; - $h += $width; - - $this->_canvas->rectangle($x, $y, $w, $h, $color, $width); - return; - } - - $x -= $width; - $y -= $width; - $w += $width * 2; - $h += $width * 2; - - $method = "_border_" . $outline_style; - $widths = array_fill(0, 4, $width); - $sides = ["top", "right", "left", "bottom"]; - - foreach ($sides as $side) { - switch ($side) { - case "top": - $length = $w; - $side_x = $x; - $side_y = $y; - $r1 = $tl; - $r2 = $tr; - break; - - case "bottom": - $length = $w; - $side_x = $x; - $side_y = $y + $h; - $r1 = $bl; - $r2 = $br; - break; - - case "left": - $length = $h; - $side_x = $x; - $side_y = $y; - $r1 = $tl; - $r2 = $bl; - break; - - case "right": - $length = $h; - $side_x = $x + $w; - $side_y = $y; - $r1 = $tr; - $r2 = $br; - break; - - default: - break; - } - - $this->$method($side_x, $side_y, $length, $color, $widths, $side, $corner_style, $r1, $r2); - } - } - - /** - * Render a background image over a rectangular area - * - * @param string $url The background image to load - * @param float $x The left edge of the rectangular area - * @param float $y The top edge of the rectangular area - * @param float $width The width of the rectangular area - * @param float $height The height of the rectangular area - * @param Style $style The associated Style object - * - * @throws \Exception - */ - protected function _background_image($url, $x, $y, $width, $height, $style) - { - if (!function_exists("imagecreatetruecolor")) { - throw new \Exception("The PHP GD extension is required, but is not installed."); - } - - $sheet = $style->get_stylesheet(); - - // Skip degenerate cases - if ($width == 0 || $height == 0) { - return; - } - - $box_width = $width; - $box_height = $height; - - //debugpng - if ($this->_dompdf->getOptions()->getDebugPng()) { - print '[_background_image ' . $url . ']'; - } - - list($img, $type, /*$msg*/) = Cache::resolve_url( - $url, - $sheet->get_protocol(), - $sheet->get_host(), - $sheet->get_base_path(), - $this->_dompdf->getOptions() - ); - - // Bail if the image is no good - if (Cache::is_broken($img)) { - return; - } - - //Try to optimize away reading and composing of same background multiple times - //Postponing read with imagecreatefrom ...() - //final composition parameters and name not known yet - //Therefore read dimension directly from file, instead of creating gd object first. - //$img_w = imagesx($src); $img_h = imagesy($src); - - list($img_w, $img_h) = Helpers::dompdf_getimagesize($img, $this->_dompdf->getHttpContext()); - if ($img_w == 0 || $img_h == 0) { - return; - } - - // save for later check if file needs to be resized. - $org_img_w = $img_w; - $org_img_h = $img_h; - - $repeat = $style->background_repeat; - $dpi = $this->_dompdf->getOptions()->getDpi(); - - //Increase background resolution and dependent box size according to image resolution to be placed in - //Then image can be copied in without resize - $bg_width = round((float)($width * $dpi) / 72); - $bg_height = round((float)($height * $dpi) / 72); - - list($img_w, $img_h) = $this->_resize_background_image( - $img_w, - $img_h, - $bg_width, - $bg_height, - $style->background_size, - $dpi - ); - //Need %bg_x, $bg_y as background pos, where img starts, converted to pixel - - list($bg_x, $bg_y) = $style->background_position; - - if (Helpers::is_percent($bg_x)) { - // The point $bg_x % from the left edge of the image is placed - // $bg_x % from the left edge of the background rectangle - $p = ((float)$bg_x) / 100.0; - $x1 = $p * $img_w; - $x2 = $p * $bg_width; - - $bg_x = $x2 - $x1; - } else { - $bg_x = (float)($style->length_in_pt($bg_x) * $dpi) / 72; - } - - $bg_x = round($bg_x + (float)$style->length_in_pt($style->border_left_width) * $dpi / 72); - - if (Helpers::is_percent($bg_y)) { - // The point $bg_y % from the left edge of the image is placed - // $bg_y % from the left edge of the background rectangle - $p = ((float)$bg_y) / 100.0; - $y1 = $p * $img_h; - $y2 = $p * $bg_height; - - $bg_y = $y2 - $y1; - } else { - $bg_y = (float)($style->length_in_pt($bg_y) * $dpi) / 72; - } - - $bg_y = round($bg_y + (float)$style->length_in_pt($style->border_top_width) * $dpi / 72); - - //clip background to the image area on partial repeat. Nothing to do if img off area - //On repeat, normalize start position to the tile at immediate left/top or 0/0 of area - //On no repeat with positive offset: move size/start to have offset==0 - //Handle x/y Dimensions separately - - if ($repeat !== "repeat" && $repeat !== "repeat-x") { - //No repeat x - if ($bg_x < 0) { - $bg_width = $img_w + $bg_x; - } else { - $x += ($bg_x * 72) / $dpi; - $bg_width = $bg_width - $bg_x; - if ($bg_width > $img_w) { - $bg_width = $img_w; - } - $bg_x = 0; - } - - if ($bg_width <= 0) { - return; - } - - $width = (float)($bg_width * 72) / $dpi; - } else { - //repeat x - if ($bg_x < 0) { - $bg_x = -((-$bg_x) % $img_w); - } else { - $bg_x = $bg_x % $img_w; - if ($bg_x > 0) { - $bg_x -= $img_w; - } - } - } - - if ($repeat !== "repeat" && $repeat !== "repeat-y") { - //no repeat y - if ($bg_y < 0) { - $bg_height = $img_h + $bg_y; - } else { - $y += ($bg_y * 72) / $dpi; - $bg_height = $bg_height - $bg_y; - if ($bg_height > $img_h) { - $bg_height = $img_h; - } - $bg_y = 0; - } - if ($bg_height <= 0) { - return; - } - $height = (float)($bg_height * 72) / $dpi; - } else { - //repeat y - if ($bg_y < 0) { - $bg_y = -((-$bg_y) % $img_h); - } else { - $bg_y = $bg_y % $img_h; - if ($bg_y > 0) { - $bg_y -= $img_h; - } - } - } - - //Optimization, if repeat has no effect - if ($repeat === "repeat" && $bg_y <= 0 && $img_h + $bg_y >= $bg_height) { - $repeat = "repeat-x"; - } - - if ($repeat === "repeat" && $bg_x <= 0 && $img_w + $bg_x >= $bg_width) { - $repeat = "repeat-y"; - } - - if (($repeat === "repeat-x" && $bg_x <= 0 && $img_w + $bg_x >= $bg_width) || - ($repeat === "repeat-y" && $bg_y <= 0 && $img_h + $bg_y >= $bg_height) - ) { - $repeat = "no-repeat"; - } - - // Avoid rendering identical background-image variants multiple times - // This is not dependent of background color of box! .'_'.(is_array($bg_color) ? $bg_color["hex"] : $bg_color) - // Note: Here, bg_* are the start values, not end values after going through the tile loops! - - $key = implode("_", [$bg_width, $bg_height, $img_w, $img_h, $bg_x, $bg_y, $repeat]); - // FIXME: This will fail when a file with that exact name exists in the - // same directory, included in the document as regular image - $cpdfKey = $img . "_" . $key; - $tmpFile = Cache::getTempImage($img, $key); - $cached = ($this->_canvas instanceof CPDF && $this->_canvas->get_cpdf()->image_iscached($cpdfKey)) - || ($tmpFile !== null && file_exists($tmpFile)); - - if (!$cached) { - // img: image url string - // img_w, img_h: original image size in px - // width, height: box size in pt - // bg_width, bg_height: box size in px - // x, y: left/top edge of box on page in pt - // start_x, start_y: placement of image relative to pattern - // $repeat: repeat mode - // $bg: GD object of result image - // $src: GD object of original image - - // Create a new image to fit over the background rectangle - $bg = imagecreatetruecolor($bg_width, $bg_height); - $cpdfFromGd = true; - - switch (strtolower($type)) { - case "png": - $cpdfFromGd = false; - imagesavealpha($bg, true); - imagealphablending($bg, false); - $src = @imagecreatefrompng($img); - break; - - case "jpeg": - $src = @imagecreatefromjpeg($img); - break; - - case "webp": - $src = @imagecreatefromwebp($img); - break; - - case "gif": - $src = @imagecreatefromgif($img); - break; - - case "bmp": - $src = @Helpers::imagecreatefrombmp($img); - break; - - default: - return; // Unsupported image type - } - - if ($src == null) { - return; - } - - if ($img_w != $org_img_w || $img_h != $org_img_h) { - $newSrc = imagescale($src, $img_w, $img_h); - imagedestroy($src); - $src = $newSrc; - } - - if ($src == null) { - return; - } - - //Background color if box is not relevant here - //Non transparent image: box clipped to real size. Background non relevant. - //Transparent image: The image controls the transparency and lets shine through whatever background. - //However on transparent image preset the composed image with the transparency color, - //to keep the transparency when copying over the non transparent parts of the tiles. - $ti = imagecolortransparent($src); - $palletsize = imagecolorstotal($src); - - if ($ti >= 0 && $ti < $palletsize) { - $tc = imagecolorsforindex($src, $ti); - $ti = imagecolorallocate($bg, $tc['red'], $tc['green'], $tc['blue']); - imagefill($bg, 0, 0, $ti); - imagecolortransparent($bg, $ti); - } - - //This has only an effect for the non repeatable dimension. - //compute start of src and dest coordinates of the single copy - if ($bg_x < 0) { - $dst_x = 0; - $src_x = -$bg_x; - } else { - $src_x = 0; - $dst_x = $bg_x; - } - - if ($bg_y < 0) { - $dst_y = 0; - $src_y = -$bg_y; - } else { - $src_y = 0; - $dst_y = $bg_y; - } - - //For historical reasons exchange meanings of variables: - //start_* will be the start values, while bg_* will be the temporary start values in the loops - $start_x = $bg_x; - $start_y = $bg_y; - - // Copy regions from the source image to the background - if ($repeat === "no-repeat") { - // Simply place the image on the background - imagecopy($bg, $src, $dst_x, $dst_y, $src_x, $src_y, $img_w, $img_h); - - } elseif ($repeat === "repeat-x") { - for ($bg_x = $start_x; $bg_x < $bg_width; $bg_x += $img_w) { - if ($bg_x < 0) { - $dst_x = 0; - $src_x = -$bg_x; - $w = $img_w + $bg_x; - } else { - $dst_x = $bg_x; - $src_x = 0; - $w = $img_w; - } - imagecopy($bg, $src, $dst_x, $dst_y, $src_x, $src_y, $w, $img_h); - } - } elseif ($repeat === "repeat-y") { - - for ($bg_y = $start_y; $bg_y < $bg_height; $bg_y += $img_h) { - if ($bg_y < 0) { - $dst_y = 0; - $src_y = -$bg_y; - $h = $img_h + $bg_y; - } else { - $dst_y = $bg_y; - $src_y = 0; - $h = $img_h; - } - imagecopy($bg, $src, $dst_x, $dst_y, $src_x, $src_y, $img_w, $h); - } - } elseif ($repeat === "repeat") { - for ($bg_y = $start_y; $bg_y < $bg_height; $bg_y += $img_h) { - for ($bg_x = $start_x; $bg_x < $bg_width; $bg_x += $img_w) { - if ($bg_x < 0) { - $dst_x = 0; - $src_x = -$bg_x; - $w = $img_w + $bg_x; - } else { - $dst_x = $bg_x; - $src_x = 0; - $w = $img_w; - } - - if ($bg_y < 0) { - $dst_y = 0; - $src_y = -$bg_y; - $h = $img_h + $bg_y; - } else { - $dst_y = $bg_y; - $src_y = 0; - $h = $img_h; - } - imagecopy($bg, $src, $dst_x, $dst_y, $src_x, $src_y, $w, $h); - } - } - } else { - print 'Unknown repeat!'; - } - - imagedestroy($src); - - if ($cpdfFromGd && $this->_canvas instanceof CPDF) { - // Skip writing temp file as the GD object is added directly - } else { - $tmpDir = $this->_dompdf->getOptions()->getTempDir(); - $tmpName = @tempnam($tmpDir, "bg_dompdf_img_"); - @unlink($tmpName); - $tmpFile = "$tmpName.png"; - - imagepng($bg, $tmpFile); - imagedestroy($bg); - - Cache::addTempImage($img, $tmpFile, $key); - } - } else { - $bg = null; - $cpdfFromGd = $tmpFile === null; - } - - if ($this->_dompdf->getOptions()->getDebugPng()) { - print '[_background_image ' . $tmpFile . ']'; - } - - $this->_canvas->clipping_rectangle($x, $y, $box_width, $box_height); - - // When using cpdf and optimization to direct png creation from gd object is available, - // don't create temp file, but place gd object directly into the pdf - if ($cpdfFromGd && $this->_canvas instanceof CPDF) { - // Note: CPDF_Adapter image converts y position - $this->_canvas->get_cpdf()->addImagePng($bg, $cpdfKey, $x, $this->_canvas->get_height() - $y - $height, $width, $height); - - if (isset($bg)) { - imagedestroy($bg); - } - } else { - $this->_canvas->image($tmpFile, $x, $y, $width, $height); - } - - $this->_canvas->clipping_end(); - } - - // Border rendering functions - - /** - * @param float $x - * @param float $y - * @param float $length - * @param array $color - * @param float[] $widths - * @param string $side - * @param string $corner_style - * @param float $r1 - * @param float $r2 - */ - protected function _border_dotted($x, $y, $length, $color, $widths, $side, $corner_style = "bevel", $r1 = 0, $r2 = 0) - { - $this->_border_line($x, $y, $length, $color, $widths, $side, $corner_style, "dotted", $r1, $r2); - } - - /** - * @param float $x - * @param float $y - * @param float $length - * @param array $color - * @param float[] $widths - * @param string $side - * @param string $corner_style - * @param float $r1 - * @param float $r2 - */ - protected function _border_dashed($x, $y, $length, $color, $widths, $side, $corner_style = "bevel", $r1 = 0, $r2 = 0) - { - $this->_border_line($x, $y, $length, $color, $widths, $side, $corner_style, "dashed", $r1, $r2); - } - - /** - * @param float $x - * @param float $y - * @param float $length - * @param array $color - * @param float[] $widths - * @param string $side - * @param string $corner_style - * @param float $r1 - * @param float $r2 - */ - protected function _border_solid($x, $y, $length, $color, $widths, $side, $corner_style = "bevel", $r1 = 0, $r2 = 0) - { - $this->_border_line($x, $y, $length, $color, $widths, $side, $corner_style, "solid", $r1, $r2); - } - - /** - * @param string $side - * @param float $ratio - * @param float $top - * @param float $right - * @param float $bottom - * @param float $left - * @param float $x - * @param float $y - * @param float $length - * @param float $r1 - * @param float $r2 - */ - protected function _apply_ratio($side, $ratio, $top, $right, $bottom, $left, &$x, &$y, &$length, &$r1, &$r2) - { - switch ($side) { - case "top": - $r1 -= $left * $ratio; - $r2 -= $right * $ratio; - $x += $left * $ratio; - $y += $top * $ratio; - $length -= $left * $ratio + $right * $ratio; - break; - - case "bottom": - $r1 -= $right * $ratio; - $r2 -= $left * $ratio; - $x += $left * $ratio; - $y -= $bottom * $ratio; - $length -= $left * $ratio + $right * $ratio; - break; - - case "left": - $r1 -= $top * $ratio; - $r2 -= $bottom * $ratio; - $x += $left * $ratio; - $y += $top * $ratio; - $length -= $top * $ratio + $bottom * $ratio; - break; - - case "right": - $r1 -= $bottom * $ratio; - $r2 -= $top * $ratio; - $x -= $right * $ratio; - $y += $top * $ratio; - $length -= $top * $ratio + $bottom * $ratio; - break; - - default: - return; - } - } - - /** - * @param float $x - * @param float $y - * @param float $length - * @param array $color - * @param float[] $widths - * @param string $side - * @param string $corner_style - * @param float $r1 - * @param float $r2 - */ - protected function _border_double($x, $y, $length, $color, $widths, $side, $corner_style = "bevel", $r1 = 0, $r2 = 0) - { - list($top, $right, $bottom, $left) = $widths; - - $third_widths = [$top / 3, $right / 3, $bottom / 3, $left / 3]; - - // draw the outer border - $this->_border_solid($x, $y, $length, $color, $third_widths, $side, $corner_style, $r1, $r2); - - $this->_apply_ratio($side, 2 / 3, $top, $right, $bottom, $left, $x, $y, $length, $r1, $r2); - - $this->_border_solid($x, $y, $length, $color, $third_widths, $side, $corner_style, $r1, $r2); - } - - /** - * @param float $x - * @param float $y - * @param float $length - * @param array $color - * @param float[] $widths - * @param string $side - * @param string $corner_style - * @param float $r1 - * @param float $r2 - */ - protected function _border_groove($x, $y, $length, $color, $widths, $side, $corner_style = "bevel", $r1 = 0, $r2 = 0) - { - list($top, $right, $bottom, $left) = $widths; - - $half_widths = [$top / 2, $right / 2, $bottom / 2, $left / 2]; - - $this->_border_inset($x, $y, $length, $color, $half_widths, $side, $corner_style, $r1, $r2); - - $this->_apply_ratio($side, 0.5, $top, $right, $bottom, $left, $x, $y, $length, $r1, $r2); - - $this->_border_outset($x, $y, $length, $color, $half_widths, $side, $corner_style, $r1, $r2); - } - - /** - * @param float $x - * @param float $y - * @param float $length - * @param array $color - * @param float[] $widths - * @param string $side - * @param string $corner_style - * @param float $r1 - * @param float $r2 - */ - protected function _border_ridge($x, $y, $length, $color, $widths, $side, $corner_style = "bevel", $r1 = 0, $r2 = 0) - { - list($top, $right, $bottom, $left) = $widths; - - $half_widths = [$top / 2, $right / 2, $bottom / 2, $left / 2]; - - $this->_border_outset($x, $y, $length, $color, $half_widths, $side, $corner_style, $r1, $r2); - - $this->_apply_ratio($side, 0.5, $top, $right, $bottom, $left, $x, $y, $length, $r1, $r2); - - $this->_border_inset($x, $y, $length, $color, $half_widths, $side, $corner_style, $r1, $r2); - } - - /** - * @param $c - * @return mixed - */ - protected function _tint($c) - { - if (!is_numeric($c)) { - return $c; - } - - return min(1, $c + 0.16); - } - - /** - * @param $c - * @return mixed - */ - protected function _shade($c) - { - if (!is_numeric($c)) { - return $c; - } - - return max(0, $c - 0.33); - } - - /** - * @param float $x - * @param float $y - * @param float $length - * @param array $color - * @param float[] $widths - * @param string $side - * @param string $corner_style - * @param float $r1 - * @param float $r2 - */ - protected function _border_inset($x, $y, $length, $color, $widths, $side, $corner_style = "bevel", $r1 = 0, $r2 = 0) - { - switch ($side) { - case "top": - case "left": - $shade = array_map([$this, "_shade"], $color); - $this->_border_solid($x, $y, $length, $shade, $widths, $side, $corner_style, $r1, $r2); - break; - - case "bottom": - case "right": - $tint = array_map([$this, "_tint"], $color); - $this->_border_solid($x, $y, $length, $tint, $widths, $side, $corner_style, $r1, $r2); - break; - - default: - return; - } - } - - /** - * @param float $x - * @param float $y - * @param float $length - * @param array $color - * @param float[] $widths - * @param string $side - * @param string $corner_style - * @param float $r1 - * @param float $r2 - */ - protected function _border_outset($x, $y, $length, $color, $widths, $side, $corner_style = "bevel", $r1 = 0, $r2 = 0) - { - switch ($side) { - case "top": - case "left": - $tint = array_map([$this, "_tint"], $color); - $this->_border_solid($x, $y, $length, $tint, $widths, $side, $corner_style, $r1, $r2); - break; - - case "bottom": - case "right": - $shade = array_map([$this, "_shade"], $color); - $this->_border_solid($x, $y, $length, $shade, $widths, $side, $corner_style, $r1, $r2); - break; - - default: - return; - } - } - - /** - * Get the dash pattern and cap style for the given border style, width, and - * line length. - * - * The base pattern is adjusted so that it fits the given line length - * symmetrically. - * - * @param string $style - * @param float $width - * @param float $length - * - * @return array - */ - protected function dashPattern(string $style, float $width, float $length): array - { - if ($style === "dashed") { - $w = 3 * $width; - - if ($length < $w) { - $s = $w; - } else { - // Scale dashes and gaps - $r = round($length / $w); - $r = $r % 2 === 0 ? $r + 1 : $r; - $s = $length / $r; - } - - return [[$s], "butt"]; - } - - if ($style === "dotted") { - // Draw circles along the line - // Round caps extend outwards by half line width, so a zero dash - // width results in a circle - $gap = $width <= 1 ? 2 : 1; - $w = ($gap + 1) * $width; - - if ($length < $w) { - $s = $w; - } else { - // Only scale gaps - $l = $length - $width; - $r = max(round($l / $w), 1); - $s = $l / $r; - } - - return [[0, $s], "round"]; - } - - return [[], "butt"]; - } - - /** - * Draws a solid, dotted, or dashed line, observing the border radius - * - * @param float $x - * @param float $y - * @param float $length - * @param array $color - * @param float[] $widths - * @param string $side - * @param string $corner_style - * @param string $pattern_name - * @param float $r1 - * @param float $r2 - */ - protected function _border_line($x, $y, $length, $color, $widths, $side, $corner_style = "bevel", $pattern_name = "none", $r1 = 0, $r2 = 0) - { - /** used by $$side */ - [$top, $right, $bottom, $left] = $widths; - $width = $$side; - - // No need to clip corners if border radius is large enough - $cornerClip = $corner_style === "bevel" && ($r1 < $width || $r2 < $width); - $lineLength = $length - $r1 - $r2; - [$pattern, $cap] = $this->dashPattern($pattern_name, $width, $lineLength); - - // Determine arc border radius for corner arcs - $halfWidth = $width / 2; - $ar1 = max($r1 - $halfWidth, 0); - $ar2 = max($r2 - $halfWidth, 0); - - // Small angle adjustments to prevent the background from shining through - $adj1 = $ar1 / 80; - $adj2 = $ar2 / 80; - - // Adjust line width and corner angles to account for the fact that - // round caps extend outwards. The line is actually only shifted below, - // not shortened, as otherwise the end dash (circle) will vanish - // occasionally - $dl = $cap === "round" ? $halfWidth : 0; - - if ($cap === "round" && $ar1 > 0) { - $adj1 -= rad2deg(asin($halfWidth / $ar1)); - } - if ($cap === "round" && $ar2 > 0) { - $adj2 -= rad2deg(asin($halfWidth / $ar2)); - } - - switch ($side) { - case "top": - if ($cornerClip) { - $points = [ - $x, $y, - $x, $y - 1, // Extend outwards to avoid gaps - $x + $length, $y - 1, // Extend outwards to avoid gaps - $x + $length, $y, - $x + $length - max($right, $r2), $y + max($width, $r2), - $x + max($left, $r1), $y + max($width, $r1) - ]; - $this->_canvas->clipping_polygon($points); - } - - $y += $halfWidth; - - if ($ar1 > 0 && $adj1 > -22.5) { - $this->_canvas->arc($x + $r1, $y + $ar1, $ar1, $ar1, 90 - $adj1, 135 + $adj1, $color, $width, $pattern, $cap); - } - - if ($lineLength > 0) { - $this->_canvas->line($x + $dl + $r1, $y, $x + $dl + $length - $r2, $y, $color, $width, $pattern, $cap); - } - - if ($ar2 > 0 && $adj2 > -22.5) { - $this->_canvas->arc($x + $length - $r2, $y + $ar2, $ar2, $ar2, 45 - $adj2, 90 + $adj2, $color, $width, $pattern, $cap); - } - break; - - case "bottom": - if ($cornerClip) { - $points = [ - $x, $y, - $x, $y + 1, // Extend outwards to avoid gaps - $x + $length, $y + 1, // Extend outwards to avoid gaps - $x + $length, $y, - $x + $length - max($right, $r2), $y - max($width, $r2), - $x + max($left, $r1), $y - max($width, $r1) - ]; - $this->_canvas->clipping_polygon($points); - } - - $y -= $halfWidth; - - if ($ar1 > 0 && $adj1 > -22.5) { - $this->_canvas->arc($x + $r1, $y - $ar1, $ar1, $ar1, 225 - $adj1, 270 + $adj1, $color, $width, $pattern, $cap); - } - - if ($lineLength > 0) { - $this->_canvas->line($x + $dl + $r1, $y, $x + $dl + $length - $r2, $y, $color, $width, $pattern, $cap); - } - - if ($ar2 > 0 && $adj2 > -22.5) { - $this->_canvas->arc($x + $length - $r2, $y - $ar2, $ar2, $ar2, 270 - $adj2, 315 + $adj2, $color, $width, $pattern, $cap); - } - break; - - case "left": - if ($cornerClip) { - $points = [ - $x, $y, - $x - 1, $y, // Extend outwards to avoid gaps - $x - 1, $y + $length, // Extend outwards to avoid gaps - $x, $y + $length, - $x + max($width, $r2), $y + $length - max($bottom, $r2), - $x + max($width, $r1), $y + max($top, $r1) - ]; - $this->_canvas->clipping_polygon($points); - } - - $x += $halfWidth; - - if ($ar1 > 0 && $adj1 > -22.5) { - $this->_canvas->arc($x + $ar1, $y + $r1, $ar1, $ar1, 135 - $adj1, 180 + $adj1, $color, $width, $pattern, $cap); - } - - if ($lineLength > 0) { - $this->_canvas->line($x, $y + $dl + $r1, $x, $y + $dl + $length - $r2, $color, $width, $pattern, $cap); - } - - if ($ar2 > 0 && $adj2 > -22.5) { - $this->_canvas->arc($x + $ar2, $y + $length - $r2, $ar2, $ar2, 180 - $adj2, 225 + $adj2, $color, $width, $pattern, $cap); - } - break; - - case "right": - if ($cornerClip) { - $points = [ - $x, $y, - $x + 1, $y, // Extend outwards to avoid gaps - $x + 1, $y + $length, // Extend outwards to avoid gaps - $x, $y + $length, - $x - max($width, $r2), $y + $length - max($bottom, $r2), - $x - max($width, $r1), $y + max($top, $r1) - ]; - $this->_canvas->clipping_polygon($points); - } - - $x -= $halfWidth; - - if ($ar1 > 0 && $adj1 > -22.5) { - $this->_canvas->arc($x - $ar1, $y + $r1, $ar1, $ar1, 0 - $adj1, 45 + $adj1, $color, $width, $pattern, $cap); - } - - if ($lineLength > 0) { - $this->_canvas->line($x, $y + $dl + $r1, $x, $y + $dl + $length - $r2, $color, $width, $pattern, $cap); - } - - if ($ar2 > 0 && $adj2 > -22.5) { - $this->_canvas->arc($x - $ar2, $y + $length - $r2, $ar2, $ar2, 315 - $adj2, 360 + $adj2, $color, $width, $pattern, $cap); - } - break; - } - - if ($cornerClip) { - $this->_canvas->clipping_end(); - } - } - - /** - * @param float $opacity - */ - protected function _set_opacity(float $opacity): void - { - if ($opacity >= 0.0 && $opacity <= 1.0) { - $this->_canvas->set_opacity($opacity); - } - } - - /** - * @param float[] $box - * @param string $color - * @param array $style - */ - protected function _debug_layout($box, $color = "red", $style = []) - { - $this->_canvas->rectangle($box[0], $box[1], $box[2], $box[3], Color::parse($color), 0.1, $style); - } - - /** - * @param float $img_width - * @param float $img_height - * @param float $container_width - * @param float $container_height - * @param array|string $bg_resize - * @param int $dpi - * - * @return array - */ - protected function _resize_background_image( - $img_width, - $img_height, - $container_width, - $container_height, - $bg_resize, - $dpi - ) { - // We got two some specific numbers and/or auto definitions - if (is_array($bg_resize)) { - $is_auto_width = $bg_resize[0] === 'auto'; - if ($is_auto_width) { - $new_img_width = $img_width; - } else { - $new_img_width = $bg_resize[0]; - if (Helpers::is_percent($new_img_width)) { - $new_img_width = round(($container_width / 100) * (float)$new_img_width); - } else { - $new_img_width = round($new_img_width * $dpi / 72); - } - } - - $is_auto_height = $bg_resize[1] === 'auto'; - if ($is_auto_height) { - $new_img_height = $img_height; - } else { - $new_img_height = $bg_resize[1]; - if (Helpers::is_percent($new_img_height)) { - $new_img_height = round(($container_height / 100) * (float)$new_img_height); - } else { - $new_img_height = round($new_img_height * $dpi / 72); - } - } - - // if one of both was set to auto the other one needs to scale proportionally - if ($is_auto_width !== $is_auto_height) { - if ($is_auto_height) { - $new_img_height = round($new_img_width * ($img_height / $img_width)); - } else { - $new_img_width = round($new_img_height * ($img_width / $img_height)); - } - } - } else { - $container_ratio = $container_height / $container_width; - - if ($bg_resize === 'cover' || $bg_resize === 'contain') { - $img_ratio = $img_height / $img_width; - - if ( - ($bg_resize === 'cover' && $container_ratio > $img_ratio) || - ($bg_resize === 'contain' && $container_ratio < $img_ratio) - ) { - $new_img_height = $container_height; - $new_img_width = round($container_height / $img_ratio); - } else { - $new_img_width = $container_width; - $new_img_height = round($container_width * $img_ratio); - } - } else { - $new_img_width = $img_width; - $new_img_height = $img_height; - } - } - - return [$new_img_width, $new_img_height]; - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Renderer/Block.php b/docker/statistics/vendor/dompdf/dompdf/src/Renderer/Block.php deleted file mode 100644 index 99db1929..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Renderer/Block.php +++ /dev/null @@ -1,88 +0,0 @@ -get_style(); - $node = $frame->get_node(); - $dompdf = $this->_dompdf; - - $this->_set_opacity($frame->get_opacity($style->opacity)); - - [$x, $y, $w, $h] = $frame->get_border_box(); - - if ($node->nodeName === "body") { - // Margins should be fully resolved at this point - $mt = $style->margin_top; - $mb = $style->margin_bottom; - $h = $frame->get_containing_block("h") - $mt - $mb; - } - - $border_box = [$x, $y, $w, $h]; - - // Draw our background, border and content - $this->_render_background($frame, $border_box); - $this->_render_border($frame, $border_box); - $this->_render_outline($frame, $border_box); - - // Handle anchors & links - if ($node->nodeName === "a" && $href = $node->getAttribute("href")) { - $href = Helpers::build_url($dompdf->getProtocol(), $dompdf->getBaseHost(), $dompdf->getBasePath(), $href) ?? $href; - $this->_canvas->add_link($href, $x, $y, $w, $h); - } - - $id = $frame->get_node()->getAttribute("id"); - if (strlen($id) > 0) { - $this->_canvas->add_named_dest($id); - } - - $this->debugBlockLayout($frame, "red", false); - } - - protected function debugBlockLayout(Frame $frame, ?string $color, bool $lines = false): void - { - $options = $this->_dompdf->getOptions(); - $debugLayout = $options->getDebugLayout(); - - if (!$debugLayout) { - return; - } - - if ($color && $options->getDebugLayoutBlocks()) { - $this->_debug_layout($frame->get_border_box(), $color); - - if ($options->getDebugLayoutPaddingBox()) { - $this->_debug_layout($frame->get_padding_box(), $color, [0.5, 0.5]); - } - } - - if ($lines && $options->getDebugLayoutLines() && $frame instanceof BlockFrameDecorator) { - [$cx, , $cw] = $frame->get_content_box(); - - foreach ($frame->get_line_boxes() as $line) { - $lw = $cw - $line->left - $line->right; - $this->_debug_layout([$cx + $line->left, $line->y, $lw, $line->h], "orange"); - } - } - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Renderer/Image.php b/docker/statistics/vendor/dompdf/dompdf/src/Renderer/Image.php deleted file mode 100644 index 61f684f9..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Renderer/Image.php +++ /dev/null @@ -1,90 +0,0 @@ -get_style(); - $border_box = $frame->get_border_box(); - - $this->_set_opacity($frame->get_opacity($style->opacity)); - - // Render background & borders - $this->_render_background($frame, $border_box); - $this->_render_border($frame, $border_box); - $this->_render_outline($frame, $border_box); - - $content_box = $frame->get_content_box(); - [$x, $y, $w, $h] = $content_box; - - $src = $frame->get_image_url(); - $alt = null; - - if (Cache::is_broken($src) && - $alt = $frame->get_node()->getAttribute("alt") - ) { - $font = $style->font_family; - $size = $style->font_size; - $word_spacing = $style->word_spacing; - $letter_spacing = $style->letter_spacing; - - $this->_canvas->text( - $x, - $y, - $alt, - $font, - $size, - $style->color, - $word_spacing, - $letter_spacing - ); - } elseif ($w > 0 && $h > 0) { - if ($style->has_border_radius()) { - [$tl, $tr, $br, $bl] = $style->resolve_border_radius($border_box, $content_box); - $this->_canvas->clipping_roundrectangle($x, $y, $w, $h, $tl, $tr, $br, $bl); - } - - $this->_canvas->image($src, $x, $y, $w, $h, $style->image_resolution); - - if ($style->has_border_radius()) { - $this->_canvas->clipping_end(); - } - } - - if ($msg = $frame->get_image_msg()) { - $parts = preg_split("/\s*\n\s*/", $msg); - $font = $style->font_family; - $height = 10; - $_y = $alt ? $y + $h - count($parts) * $height : $y; - - foreach ($parts as $i => $_part) { - $this->_canvas->text($x, $_y + $i * $height, $_part, $font, $height * 0.8, [0.5, 0.5, 0.5]); - } - } - - $id = $frame->get_node()->getAttribute("id"); - if (strlen($id) > 0) { - $this->_canvas->add_named_dest($id); - } - - $this->debugBlockLayout($frame, "blue"); - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Renderer/Inline.php b/docker/statistics/vendor/dompdf/dompdf/src/Renderer/Inline.php deleted file mode 100644 index ad354649..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Renderer/Inline.php +++ /dev/null @@ -1,126 +0,0 @@ -get_first_child()) { - return; // No children, no service - } - - $style = $frame->get_style(); - $dompdf = $this->_dompdf; - - $this->_set_opacity($frame->get_opacity($style->opacity)); - - $do_debug_layout_line = $dompdf->getOptions()->getDebugLayout() - && $dompdf->getOptions()->getDebugLayoutInline(); - - // Draw the background & border behind each child. To do this we need - // to figure out just how much space each child takes: - [$x, $y] = $frame->get_first_child()->get_position(); - [$w, $h] = $this->get_child_size($frame, $do_debug_layout_line); - - [, , $cbw] = $frame->get_containing_block(); - $margin_left = $style->length_in_pt($style->margin_left, $cbw); - $pt = $style->length_in_pt($style->padding_top, $cbw); - $pb = $style->length_in_pt($style->padding_bottom, $cbw); - - // Make sure that border and background start inside the left margin - // Extend the drawn box by border and padding in vertical direction, as - // these do not affect layout - // FIXME: Using a small vertical offset of a fraction of the height here - // to work around the vertical position being slightly off in general - $x += $margin_left; - $y -= $style->border_top_width + $pt - ($h * 0.1); - $w += $style->border_left_width + $style->border_right_width; - $h += $style->border_top_width + $pt + $style->border_bottom_width + $pb; - - $border_box = [$x, $y, $w, $h]; - $this->_render_background($frame, $border_box); - $this->_render_border($frame, $border_box); - $this->_render_outline($frame, $border_box); - - $node = $frame->get_node(); - $id = $node->getAttribute("id"); - if (strlen($id) > 0) { - $this->_canvas->add_named_dest($id); - } - - // Only two levels of links frames - $is_link_node = $node->nodeName === "a"; - if ($is_link_node) { - if (($name = $node->getAttribute("name"))) { - $this->_canvas->add_named_dest($name); - } - } - - if ($frame->get_parent() && $frame->get_parent()->get_node()->nodeName === "a") { - $link_node = $frame->get_parent()->get_node(); - } - - // Handle anchors & links - if ($is_link_node) { - if ($href = $node->getAttribute("href")) { - $href = Helpers::build_url($dompdf->getProtocol(), $dompdf->getBaseHost(), $dompdf->getBasePath(), $href) ?? $href; - $this->_canvas->add_link($href, $x, $y, $w, $h); - } - } - } - - protected function get_child_size(Frame $frame, bool $do_debug_layout_line): array - { - $w = 0.0; - $h = 0.0; - - foreach ($frame->get_children() as $child) { - if ($child->get_node()->nodeValue === " " && $child->get_prev_sibling() && !$child->get_next_sibling()) { - break; - } - - $style = $child->get_style(); - $auto_width = $style->width === "auto"; - $auto_height = $style->height === "auto"; - [, , $child_w, $child_h] = $child->get_padding_box(); - - if ($auto_width || $auto_height) { - [$child_w2, $child_h2] = $this->get_child_size($child, $do_debug_layout_line); - - if ($auto_width) { - $child_w = $child_w2; - } - - if ($auto_height) { - $child_h = $child_h2; - } - } - - $w += $child_w; - $h = max($h, $child_h); - - if ($do_debug_layout_line) { - $this->_debug_layout($child->get_border_box(), "blue"); - - if ($this->_dompdf->getOptions()->getDebugLayoutPaddingBox()) { - $this->_debug_layout($child->get_padding_box(), "blue", [0.5, 0.5]); - } - } - } - - return [$w, $h]; - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Renderer/ListBullet.php b/docker/statistics/vendor/dompdf/dompdf/src/Renderer/ListBullet.php deleted file mode 100644 index 2df6696a..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Renderer/ListBullet.php +++ /dev/null @@ -1,235 +0,0 @@ -get_parent(); - $style = $frame->get_style(); - - $this->_set_opacity($frame->get_opacity($style->opacity)); - - // Don't render bullets twice if the list item was split - if ($li->is_split_off) { - return; - } - - $font_family = $style->font_family; - $font_size = $style->font_size; - $baseline = $this->_canvas->get_font_baseline($font_family, $font_size); - - // Handle list-style-image - // If list style image is requested but missing, fall back to predefined types - if ($frame instanceof ListBulletImage && !Cache::is_broken($img = $frame->get_image_url())) { - [$x, $y] = $frame->get_position(); - $w = $frame->get_width(); - $h = $frame->get_height(); - $y += $baseline - $h; - - $this->_canvas->image($img, $x, $y, $w, $h); - } else { - $bullet_style = $style->list_style_type; - - switch ($bullet_style) { - default: - case "disc": - case "circle": - [$x, $y] = $frame->get_position(); - $offset = $font_size * ListBulletFrameDecorator::BULLET_OFFSET; - $r = ($font_size * ListBulletFrameDecorator::BULLET_SIZE) / 2; - $x += $r; - $y += $baseline - $r - $offset; - $o = $font_size * ListBulletFrameDecorator::BULLET_THICKNESS; - $this->_canvas->circle($x, $y, $r, $style->color, $o, null, $bullet_style !== "circle"); - break; - - case "square": - [$x, $y] = $frame->get_position(); - $offset = $font_size * ListBulletFrameDecorator::BULLET_OFFSET; - $w = $font_size * ListBulletFrameDecorator::BULLET_SIZE; - $y += $baseline - $w - $offset; - $this->_canvas->filled_rectangle($x, $y, $w, $w, $style->color); - break; - - case "decimal-leading-zero": - case "decimal": - case "lower-alpha": - case "lower-latin": - case "lower-roman": - case "lower-greek": - case "upper-alpha": - case "upper-latin": - case "upper-roman": - case "1": // HTML 4.0 compatibility - case "a": - case "i": - case "A": - case "I": - $pad = null; - if ($bullet_style === "decimal-leading-zero") { - $pad = strlen($li->get_parent()->get_node()->getAttribute("dompdf-children-count")); - } - - $node = $frame->get_node(); - - if (!$node->hasAttribute("dompdf-counter")) { - return; - } - - $index = $node->getAttribute("dompdf-counter"); - $text = $this->make_counter($index, $bullet_style, $pad); - - if (trim($text) === "") { - return; - } - - $word_spacing = $style->word_spacing; - $letter_spacing = $style->letter_spacing; - $text_width = $this->_dompdf->getFontMetrics()->getTextWidth($text, $font_family, $font_size, $word_spacing, $letter_spacing); - - [$x, $y] = $frame->get_position(); - // Correct for static frame width applied by positioner - $x += $frame->get_width() - $text_width; - - $this->_canvas->text($x, $y, $text, - $font_family, $font_size, - $style->color, $word_spacing, $letter_spacing); - - case "none": - break; - } - } - - $id = $frame->get_node()->getAttribute("id"); - if (strlen($id) > 0) { - $this->_canvas->add_named_dest($id); - } - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Renderer/TableCell.php b/docker/statistics/vendor/dompdf/dompdf/src/Renderer/TableCell.php deleted file mode 100644 index cbbffd34..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Renderer/TableCell.php +++ /dev/null @@ -1,188 +0,0 @@ -get_style(); - - if (trim($frame->get_node()->nodeValue) === "" && $style->empty_cells === "hide") { - return; - } - - $this->_set_opacity($frame->get_opacity($style->opacity)); - - $border_box = $frame->get_border_box(); - $table = Table::find_parent_table($frame); - - if ($table->get_style()->border_collapse !== "collapse") { - $this->_render_background($frame, $border_box); - $this->_render_border($frame, $border_box); - $this->_render_outline($frame, $border_box); - } else { - // The collapsed case is slightly complicated... - - $cells = $table->get_cellmap()->get_spanned_cells($frame); - - if (is_null($cells)) { - return; - } - - // Render the background to the padding box, as the cells are - // rendered individually one after another, and we don't want the - // background to overlap an adjacent border - $padding_box = $frame->get_padding_box(); - - $this->_render_background($frame, $padding_box); - $this->_render_collapsed_border($frame, $table); - - // FIXME: Outline should be drawn over other cells - $this->_render_outline($frame, $border_box); - } - - $id = $frame->get_node()->getAttribute("id"); - if (strlen($id) > 0) { - $this->_canvas->add_named_dest($id); - } - - // $this->debugBlockLayout($frame, "red", false); - } - - /** - * @param Frame $frame - * @param Table $table - */ - protected function _render_collapsed_border(Frame $frame, Table $table): void - { - $cellmap = $table->get_cellmap(); - $cells = $cellmap->get_spanned_cells($frame); - $num_rows = $cellmap->get_num_rows(); - $num_cols = $cellmap->get_num_cols(); - - [$table_x, $table_y] = $table->get_position(); - - // Determine the top row spanned by this cell - $i = $cells["rows"][0]; - $top_row = $cellmap->get_row($i); - - // Determine if this cell borders on the bottom of the table. If so, - // then we draw its bottom border. Otherwise the next row down will - // draw its top border instead. - if (in_array($num_rows - 1, $cells["rows"])) { - $draw_bottom = true; - $bottom_row = $cellmap->get_row($num_rows - 1); - } else { - $draw_bottom = false; - } - - // Draw the horizontal borders - foreach ($cells["columns"] as $j) { - $bp = $cellmap->get_border_properties($i, $j); - $col = $cellmap->get_column($j); - - $x = $table_x + $col["x"] - $bp["left"]["width"] / 2; - $y = $table_y + $top_row["y"] - $bp["top"]["width"] / 2; - $w = $col["used-width"] + ($bp["left"]["width"] + $bp["right"]["width"]) / 2; - - if ($bp["top"]["width"] > 0) { - $widths = [ - (float)$bp["top"]["width"], - (float)$bp["right"]["width"], - (float)$bp["bottom"]["width"], - (float)$bp["left"]["width"] - ]; - - $method = "_border_" . $bp["top"]["style"]; - $this->$method($x, $y, $w, $bp["top"]["color"], $widths, "top", "square"); - } - - if ($draw_bottom) { - $bp = $cellmap->get_border_properties($num_rows - 1, $j); - if ($bp["bottom"]["width"] <= 0) { - continue; - } - - $widths = [ - (float)$bp["top"]["width"], - (float)$bp["right"]["width"], - (float)$bp["bottom"]["width"], - (float)$bp["left"]["width"] - ]; - - $y = $table_y + $bottom_row["y"] + $bottom_row["height"] + $bp["bottom"]["width"] / 2; - - $method = "_border_" . $bp["bottom"]["style"]; - $this->$method($x, $y, $w, $bp["bottom"]["color"], $widths, "bottom", "square"); - } - } - - $j = $cells["columns"][0]; - $left_col = $cellmap->get_column($j); - - if (in_array($num_cols - 1, $cells["columns"])) { - $draw_right = true; - $right_col = $cellmap->get_column($num_cols - 1); - } else { - $draw_right = false; - } - - // Draw the vertical borders - foreach ($cells["rows"] as $i) { - $bp = $cellmap->get_border_properties($i, $j); - $row = $cellmap->get_row($i); - - $x = $table_x + $left_col["x"] - $bp["left"]["width"] / 2; - $y = $table_y + $row["y"] - $bp["top"]["width"] / 2; - $h = $row["height"] + ($bp["top"]["width"] + $bp["bottom"]["width"]) / 2; - - if ($bp["left"]["width"] > 0) { - $widths = [ - (float)$bp["top"]["width"], - (float)$bp["right"]["width"], - (float)$bp["bottom"]["width"], - (float)$bp["left"]["width"] - ]; - - $method = "_border_" . $bp["left"]["style"]; - $this->$method($x, $y, $h, $bp["left"]["color"], $widths, "left", "square"); - } - - if ($draw_right) { - $bp = $cellmap->get_border_properties($i, $num_cols - 1); - if ($bp["right"]["width"] <= 0) { - continue; - } - - $widths = [ - (float)$bp["top"]["width"], - (float)$bp["right"]["width"], - (float)$bp["bottom"]["width"], - (float)$bp["left"]["width"] - ]; - - $x = $table_x + $right_col["x"] + $right_col["used-width"] + $bp["right"]["width"] / 2; - - $method = "_border_" . $bp["right"]["style"]; - $this->$method($x, $y, $h, $bp["right"]["color"], $widths, "right", "square"); - } - } - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Renderer/TableRowGroup.php b/docker/statistics/vendor/dompdf/dompdf/src/Renderer/TableRowGroup.php deleted file mode 100644 index 295ccde3..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Renderer/TableRowGroup.php +++ /dev/null @@ -1,40 +0,0 @@ -get_style(); - - $this->_set_opacity($frame->get_opacity($style->opacity)); - - $border_box = $frame->get_border_box(); - - $this->_render_border($frame, $border_box); - $this->_render_outline($frame, $border_box); - - $id = $frame->get_node()->getAttribute("id"); - if (strlen($id) > 0) { - $this->_canvas->add_named_dest($id); - } - - $this->debugBlockLayout($frame, "red"); - } -} diff --git a/docker/statistics/vendor/dompdf/dompdf/src/Renderer/Text.php b/docker/statistics/vendor/dompdf/dompdf/src/Renderer/Text.php deleted file mode 100644 index 2a2e5cc7..00000000 --- a/docker/statistics/vendor/dompdf/dompdf/src/Renderer/Text.php +++ /dev/null @@ -1,158 +0,0 @@ -_canvas, "get_cpdf" ) - //- For cpdf these can and must stay 0, because font metrics are used directly. - //- For other renderers, if different values are wanted, separate the parameter sets. - // But $size and $size-$height seem to be accurate enough - - /** Relative to bottom of text, as fraction of height */ - const UNDERLINE_OFFSET = 0.0; - - /** Relative to top of text */ - const OVERLINE_OFFSET = 0.0; - - /** Relative to centre of text. */ - const LINETHROUGH_OFFSET = 0.0; - - /** How far to extend lines past either end, in pt */ - const DECO_EXTENSION = 0.0; - - /** - * @param \Dompdf\FrameDecorator\Text $frame - */ - function render(Frame $frame) - { - $style = $frame->get_style(); - $text = $frame->get_text(); - - if ($text === "") { - return; - } - - $this->_set_opacity($frame->get_opacity($style->opacity)); - - list($x, $y) = $frame->get_position(); - $cb = $frame->get_containing_block(); - - $ml = $style->margin_left; - $pl = $style->padding_left; - $bl = $style->border_left_width; - $x += (float) $style->length_in_pt([$ml, $pl, $bl], $cb["w"]); - - $font = $style->font_family; - $size = $style->font_size; - $frame_font_size = $frame->get_dompdf()->getFontMetrics()->getFontHeight($font, $size); - $word_spacing = $frame->get_text_spacing() + $style->word_spacing; - $letter_spacing = $style->letter_spacing; - $width = (float) $style->width; - - /*$text = str_replace( - array("{PAGE_NUM}"), - array($this->_canvas->get_page_number()), - $text - );*/ - - $this->_canvas->text($x, $y, $text, - $font, $size, - $style->color, $word_spacing, $letter_spacing); - - $line = $frame->get_containing_line(); - - // FIXME Instead of using the tallest frame to position, - // the decoration, the text should be well placed - if (false && $line->tallest_frame) { - $base_frame = $line->tallest_frame; - $style = $base_frame->get_style(); - $size = $style->font_size; - } - - $line_thickness = $size * self::DECO_THICKNESS; - $underline_offset = $size * self::UNDERLINE_OFFSET; - $overline_offset = $size * self::OVERLINE_OFFSET; - $linethrough_offset = $size * self::LINETHROUGH_OFFSET; - $underline_position = -0.08; - - if ($this->_canvas instanceof CPDF) { - $cpdf_font = $this->_canvas->get_cpdf()->fonts[$style->font_family]; - - if (isset($cpdf_font["UnderlinePosition"])) { - $underline_position = $cpdf_font["UnderlinePosition"] / 1000; - } - - if (isset($cpdf_font["UnderlineThickness"])) { - $line_thickness = $size * ($cpdf_font["UnderlineThickness"] / 1000); - } - } - - $descent = $size * $underline_position; - $base = $frame_font_size; - - // Handle text decoration: - // http://www.w3.org/TR/CSS21/text.html#propdef-text-decoration - - // Draw all applicable text-decorations. Start with the root and work our way down. - $p = $frame; - $stack = []; - while ($p = $p->get_parent()) { - $stack[] = $p; - } - - while (isset($stack[0])) { - $f = array_pop($stack); - - if (($text_deco = $f->get_style()->text_decoration) === "none") { - continue; - } - - $deco_y = $y; //$line->y; - $color = $f->get_style()->color; - - switch ($text_deco) { - default: - continue 2; - - case "underline": - $deco_y += $base - $descent + $underline_offset + $line_thickness / 2; - break; - - case "overline": - $deco_y += $overline_offset + $line_thickness / 2; - break; - - case "line-through": - $deco_y += $base * 0.7 + $linethrough_offset; - break; - } - - $dx = 0; - $x1 = $x - self::DECO_EXTENSION; - $x2 = $x + $width + $dx + self::DECO_EXTENSION; - $this->_canvas->line($x1, $deco_y, $x2, $deco_y, $color, $line_thickness); - } - - if ($this->_dompdf->getOptions()->getDebugLayout() && $this->_dompdf->getOptions()->getDebugLayoutLines()) { - $text_width = $this->_dompdf->getFontMetrics()->getTextWidth($text, $font, $size, $word_spacing, $letter_spacing); - $this->_debug_layout([$x, $y, $text_width, $frame_font_size], "orange", [0.5, 0.5]); - } - } -} diff --git a/docker/statistics/vendor/larastan/larastan/LICENSE.md b/docker/statistics/vendor/graham-campbell/result-type/LICENSE similarity index 92% rename from docker/statistics/vendor/larastan/larastan/LICENSE.md rename to docker/statistics/vendor/graham-campbell/result-type/LICENSE index dd310956..8e7c8988 100644 --- a/docker/statistics/vendor/larastan/larastan/LICENSE.md +++ b/docker/statistics/vendor/graham-campbell/result-type/LICENSE @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) Can Vural , Nuno Maduro , +Copyright (c) 2020-2024 Graham Campbell Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/docker/statistics/vendor/graham-campbell/result-type/composer.json b/docker/statistics/vendor/graham-campbell/result-type/composer.json new file mode 100644 index 00000000..32bfc81e --- /dev/null +++ b/docker/statistics/vendor/graham-campbell/result-type/composer.json @@ -0,0 +1,33 @@ +{ + "name": "graham-campbell/result-type", + "description": "An Implementation Of The Result Type", + "keywords": ["result", "result-type", "Result", "Result Type", "Result-Type", "Graham Campbell", "GrahamCampbell"], + "license": "MIT", + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + } + ], + "require": { + "php": "^7.2.5 || ^8.0", + "phpoption/phpoption": "^1.9.3" + }, + "require-dev": { + "phpunit/phpunit": "^8.5.39 || ^9.6.20 || ^10.5.28" + }, + "autoload": { + "psr-4": { + "GrahamCampbell\\ResultType\\": "src/" + } + }, + "autoload-dev": { + "psr-4": { + "GrahamCampbell\\Tests\\ResultType\\": "tests/" + } + }, + "config": { + "preferred-install": "dist" + } +} diff --git a/docker/statistics/vendor/graham-campbell/result-type/src/Error.php b/docker/statistics/vendor/graham-campbell/result-type/src/Error.php new file mode 100644 index 00000000..2c37c3e2 --- /dev/null +++ b/docker/statistics/vendor/graham-campbell/result-type/src/Error.php @@ -0,0 +1,121 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace GrahamCampbell\ResultType; + +use PhpOption\None; +use PhpOption\Some; + +/** + * @template T + * @template E + * + * @extends \GrahamCampbell\ResultType\Result + */ +final class Error extends Result +{ + /** + * @var E + */ + private $value; + + /** + * Internal constructor for an error value. + * + * @param E $value + * + * @return void + */ + private function __construct($value) + { + $this->value = $value; + } + + /** + * Create a new error value. + * + * @template F + * + * @param F $value + * + * @return \GrahamCampbell\ResultType\Result + */ + public static function create($value) + { + return new self($value); + } + + /** + * Get the success option value. + * + * @return \PhpOption\Option + */ + public function success() + { + return None::create(); + } + + /** + * Map over the success value. + * + * @template S + * + * @param callable(T):S $f + * + * @return \GrahamCampbell\ResultType\Result + */ + public function map(callable $f) + { + return self::create($this->value); + } + + /** + * Flat map over the success value. + * + * @template S + * @template F + * + * @param callable(T):\GrahamCampbell\ResultType\Result $f + * + * @return \GrahamCampbell\ResultType\Result + */ + public function flatMap(callable $f) + { + /** @var \GrahamCampbell\ResultType\Result */ + return self::create($this->value); + } + + /** + * Get the error option value. + * + * @return \PhpOption\Option + */ + public function error() + { + return Some::create($this->value); + } + + /** + * Map over the error value. + * + * @template F + * + * @param callable(E):F $f + * + * @return \GrahamCampbell\ResultType\Result + */ + public function mapError(callable $f) + { + return self::create($f($this->value)); + } +} diff --git a/docker/statistics/vendor/graham-campbell/result-type/src/Result.php b/docker/statistics/vendor/graham-campbell/result-type/src/Result.php new file mode 100644 index 00000000..8c67bcdd --- /dev/null +++ b/docker/statistics/vendor/graham-campbell/result-type/src/Result.php @@ -0,0 +1,69 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace GrahamCampbell\ResultType; + +/** + * @template T + * @template E + */ +abstract class Result +{ + /** + * Get the success option value. + * + * @return \PhpOption\Option + */ + abstract public function success(); + + /** + * Map over the success value. + * + * @template S + * + * @param callable(T):S $f + * + * @return \GrahamCampbell\ResultType\Result + */ + abstract public function map(callable $f); + + /** + * Flat map over the success value. + * + * @template S + * @template F + * + * @param callable(T):\GrahamCampbell\ResultType\Result $f + * + * @return \GrahamCampbell\ResultType\Result + */ + abstract public function flatMap(callable $f); + + /** + * Get the error option value. + * + * @return \PhpOption\Option + */ + abstract public function error(); + + /** + * Map over the error value. + * + * @template F + * + * @param callable(E):F $f + * + * @return \GrahamCampbell\ResultType\Result + */ + abstract public function mapError(callable $f); +} diff --git a/docker/statistics/vendor/graham-campbell/result-type/src/Success.php b/docker/statistics/vendor/graham-campbell/result-type/src/Success.php new file mode 100644 index 00000000..27cd85ee --- /dev/null +++ b/docker/statistics/vendor/graham-campbell/result-type/src/Success.php @@ -0,0 +1,120 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace GrahamCampbell\ResultType; + +use PhpOption\None; +use PhpOption\Some; + +/** + * @template T + * @template E + * + * @extends \GrahamCampbell\ResultType\Result + */ +final class Success extends Result +{ + /** + * @var T + */ + private $value; + + /** + * Internal constructor for a success value. + * + * @param T $value + * + * @return void + */ + private function __construct($value) + { + $this->value = $value; + } + + /** + * Create a new error value. + * + * @template S + * + * @param S $value + * + * @return \GrahamCampbell\ResultType\Result + */ + public static function create($value) + { + return new self($value); + } + + /** + * Get the success option value. + * + * @return \PhpOption\Option + */ + public function success() + { + return Some::create($this->value); + } + + /** + * Map over the success value. + * + * @template S + * + * @param callable(T):S $f + * + * @return \GrahamCampbell\ResultType\Result + */ + public function map(callable $f) + { + return self::create($f($this->value)); + } + + /** + * Flat map over the success value. + * + * @template S + * @template F + * + * @param callable(T):\GrahamCampbell\ResultType\Result $f + * + * @return \GrahamCampbell\ResultType\Result + */ + public function flatMap(callable $f) + { + return $f($this->value); + } + + /** + * Get the error option value. + * + * @return \PhpOption\Option + */ + public function error() + { + return None::create(); + } + + /** + * Map over the error value. + * + * @template F + * + * @param callable(E):F $f + * + * @return \GrahamCampbell\ResultType\Result + */ + public function mapError(callable $f) + { + return self::create($this->value); + } +} diff --git a/docker/statistics/vendor/larastan/larastan/bootstrap.php b/docker/statistics/vendor/larastan/larastan/bootstrap.php deleted file mode 100644 index 9ebaa9ff..00000000 --- a/docker/statistics/vendor/larastan/larastan/bootstrap.php +++ /dev/null @@ -1,33 +0,0 @@ -make(Kernel::class)->bootstrap(); - } elseif ($app instanceof LumenApplication) { - $app->boot(); - } - - if (! defined('LARAVEL_VERSION')) { - define('LARAVEL_VERSION', $app->version()); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/composer.json b/docker/statistics/vendor/larastan/larastan/composer.json deleted file mode 100644 index 4e380ab4..00000000 --- a/docker/statistics/vendor/larastan/larastan/composer.json +++ /dev/null @@ -1,86 +0,0 @@ -{ - "name": "larastan/larastan", - "type": "phpstan-extension", - "description": "Larastan - Discover bugs in your code without running it. A phpstan/phpstan extension for Laravel", - "keywords": ["laravel", "larastan", "phpstan", "php", "package", "static analysis", "code analysis", "code analyse"], - "license": "MIT", - "authors": [ - { - "name": "Can Vural", - "email": "can9119@gmail.com" - }, - { - "name": "Nuno Maduro", - "email": "enunomaduro@gmail.com" - } - ], - "require": { - "php": "^8.0.2", - "ext-json": "*", - "illuminate/console": "^9.52.16 || ^10.28.0 || ^11.16", - "illuminate/container": "^9.52.16 || ^10.28.0 || ^11.16", - "illuminate/contracts": "^9.52.16 || ^10.28.0 || ^11.16", - "illuminate/database": "^9.52.16 || ^10.28.0 || ^11.16", - "illuminate/http": "^9.52.16 || ^10.28.0 || ^11.16", - "illuminate/pipeline": "^9.52.16 || ^10.28.0 || ^11.16", - "illuminate/support": "^9.52.16 || ^10.28.0 || ^11.16", - "phpmyadmin/sql-parser": "^5.9.0", - "phpstan/phpstan": "^1.12.11" - }, - "require-dev": { - "doctrine/coding-standard": "^12.0", - "laravel/framework": "^9.52.16 || ^10.28.0 || ^11.16", - "mockery/mockery": "^1.5.1", - "nikic/php-parser": "^4.19.1", - "orchestra/canvas": "^7.11.1 || ^8.11.0 || ^9.0.2", - "orchestra/testbench-core": "^7.33.0 || ^8.13.0 || ^9.0.9", - "phpstan/phpstan-deprecation-rules": "^1.2", - "phpunit/phpunit": "^9.6.13 || ^10.5.16" - }, - "suggest": { - "orchestra/testbench": "Using Larastan for analysing a package needs Testbench" - }, - "autoload-dev": { - "psr-4": { - "App\\": "tests/application/app/", - "Database\\Factories\\": "tests/application/database/factories/", - "Database\\Migrations\\": "tests/application/database/migrations/" - }, - "classmap": [ - "tests/" - ] - }, - "minimum-stability": "dev", - "prefer-stable": true, - "autoload": { - "psr-4": { - "Larastan\\Larastan\\": "src/" - } - }, - "config": { - "sort-packages": true, - "preferred-install": "dist", - "allow-plugins": { - "dealerdirect/phpcodesniffer-composer-installer": true - } - }, - "extra": { - "branch-alias": { - "dev-master": "2.0-dev" - }, - "phpstan": { - "includes": [ - "extension.neon" - ] - } - }, - "scripts": { - "test:cs": "phpcs", - "test:types": "phpstan analyse --ansi --memory-limit 256M", - "test:unit": "phpunit --colors=always -d memory_limit=1408M", - "test": [ - "@test:types", - "@test:unit" - ] - } -} diff --git a/docker/statistics/vendor/larastan/larastan/extension.neon b/docker/statistics/vendor/larastan/larastan/extension.neon deleted file mode 100644 index 334ed74c..00000000 --- a/docker/statistics/vendor/larastan/larastan/extension.neon +++ /dev/null @@ -1,570 +0,0 @@ -parameters: - universalObjectCratesClasses: - - Illuminate\Http\Request - - Illuminate\Support\Optional - earlyTerminatingFunctionCalls: - - abort - - dd - excludePaths: - - *.blade.php - mixinExcludeClasses: - - Eloquent - bootstrapFiles: - - bootstrap.php - checkOctaneCompatibility: false - noEnvCallsOutsideOfConfig: false - noModelMake: true - noUnnecessaryCollectionCall: true - noUnnecessaryCollectionCallOnly: [] - noUnnecessaryCollectionCallExcept: [] - squashedMigrationsPath: [] - databaseMigrationsPath: [] - disableMigrationScan: false - disableSchemaScan: false - viewDirectories: [] - checkModelProperties: false - checkPhpDocMissingReturn: false - checkUnusedViews: false - checkModelAppends: false - -parametersSchema: - checkOctaneCompatibility: bool() - noEnvCallsOutsideOfConfig: bool() - noModelMake: bool() - noUnnecessaryCollectionCall: bool() - noUnnecessaryCollectionCallOnly: listOf(string()) - noUnnecessaryCollectionCallExcept: listOf(string()) - databaseMigrationsPath: listOf(string()) - disableMigrationScan: bool() - viewDirectories: listOf(string()) - squashedMigrationsPath: listOf(string()) - disableSchemaScan: bool() - checkModelProperties: bool() - checkUnusedViews: bool() - checkModelAppends: bool() - -conditionalTags: - Larastan\Larastan\Rules\NoEnvCallsOutsideOfConfigRule: - phpstan.rules.rule: %noEnvCallsOutsideOfConfig% - Larastan\Larastan\Rules\NoModelMakeRule: - phpstan.rules.rule: %noModelMake% - Larastan\Larastan\Rules\NoUnnecessaryCollectionCallRule: - phpstan.rules.rule: %noUnnecessaryCollectionCall% - Larastan\Larastan\Rules\OctaneCompatibilityRule: - phpstan.rules.rule: %checkOctaneCompatibility% - Larastan\Larastan\Rules\UnusedViewsRule: - phpstan.rules.rule: %checkUnusedViews% - Larastan\Larastan\Rules\ModelAppendsRule: - phpstan.rules.rule: %checkModelAppends% - -services: - - - class: Larastan\Larastan\Methods\RelationForwardsCallsExtension - tags: - - phpstan.broker.methodsClassReflectionExtension - - - - class: Larastan\Larastan\Methods\ModelForwardsCallsExtension - tags: - - phpstan.broker.methodsClassReflectionExtension - - - - class: Larastan\Larastan\Methods\EloquentBuilderForwardsCallsExtension - tags: - - phpstan.broker.methodsClassReflectionExtension - - - - class: Larastan\Larastan\Methods\HigherOrderTapProxyExtension - tags: - - phpstan.broker.methodsClassReflectionExtension - - - - class: Larastan\Larastan\Methods\HigherOrderCollectionProxyExtension - tags: - - phpstan.broker.methodsClassReflectionExtension - - - - class: Larastan\Larastan\Methods\StorageMethodsClassReflectionExtension - tags: - - phpstan.broker.methodsClassReflectionExtension - - - - class: Larastan\Larastan\Methods\Extension - tags: - - phpstan.broker.methodsClassReflectionExtension - - - class: Larastan\Larastan\Methods\ModelFactoryMethodsClassReflectionExtension - tags: - - phpstan.broker.methodsClassReflectionExtension - - - class: Larastan\Larastan\Methods\RedirectResponseMethodsClassReflectionExtension - tags: - - phpstan.broker.methodsClassReflectionExtension - - - class: Larastan\Larastan\Methods\MacroMethodsClassReflectionExtension - tags: - - phpstan.broker.methodsClassReflectionExtension - - - class: Larastan\Larastan\Methods\ViewWithMethodsClassReflectionExtension - tags: - - phpstan.broker.methodsClassReflectionExtension - - - - class: Larastan\Larastan\Properties\ModelAccessorExtension - tags: - - phpstan.broker.propertiesClassReflectionExtension - - - - class: Larastan\Larastan\Properties\ModelPropertyExtension - tags: - - phpstan.broker.propertiesClassReflectionExtension - - - - class: Larastan\Larastan\Properties\HigherOrderCollectionProxyPropertyExtension - tags: - - phpstan.broker.propertiesClassReflectionExtension - - - - class: Larastan\Larastan\Types\RelationDynamicMethodReturnTypeExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - - class: Larastan\Larastan\Types\ModelRelationsDynamicMethodReturnTypeExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\HigherOrderTapProxyExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - class: Larastan\Larastan\ReturnTypes\ContainerArrayAccessDynamicMethodReturnTypeExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - arguments: - className: Illuminate\Contracts\Container\Container - - - class: Larastan\Larastan\ReturnTypes\ContainerArrayAccessDynamicMethodReturnTypeExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - arguments: - className: Illuminate\Container\Container - - - class: Larastan\Larastan\ReturnTypes\ContainerArrayAccessDynamicMethodReturnTypeExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - arguments: - className: Illuminate\Foundation\Application - - - class: Larastan\Larastan\ReturnTypes\ContainerArrayAccessDynamicMethodReturnTypeExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - arguments: - className: Illuminate\Contracts\Foundation\Application - - - - class: Larastan\Larastan\Properties\ModelRelationsExtension - tags: - - phpstan.broker.propertiesClassReflectionExtension - - - class: Larastan\Larastan\ReturnTypes\ModelOnlyDynamicMethodReturnTypeExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\ModelFactoryDynamicStaticMethodReturnTypeExtension - tags: - - phpstan.broker.dynamicStaticMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\ModelDynamicStaticMethodReturnTypeExtension - tags: - - phpstan.broker.dynamicStaticMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\AppMakeDynamicReturnTypeExtension - tags: - - phpstan.broker.dynamicStaticMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\AuthExtension - tags: - - phpstan.broker.dynamicStaticMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\GuardDynamicStaticMethodReturnTypeExtension - tags: - - phpstan.broker.dynamicStaticMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\AuthManagerExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\DateExtension - tags: - - phpstan.broker.dynamicStaticMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\GuardExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\RequestFileExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\RequestRouteExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\RequestUserExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\EloquentBuilderExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\RelationCollectionExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\ModelFindExtension - tags: - - phpstan.broker.dynamicStaticMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\BuilderModelFindExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\TestCaseExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - - class: Larastan\Larastan\Support\CollectionHelper - - - - class: Larastan\Larastan\ReturnTypes\Helpers\AuthExtension - tags: - - phpstan.broker.dynamicFunctionReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\Helpers\CollectExtension - tags: - - phpstan.broker.dynamicFunctionReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\Helpers\NowAndTodayExtension - tags: - - phpstan.broker.dynamicFunctionReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\Helpers\ResponseExtension - tags: - - phpstan.broker.dynamicFunctionReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\Helpers\ValidatorExtension - tags: - - phpstan.broker.dynamicFunctionReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\CollectionFilterRejectDynamicReturnTypeExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\CollectionWhereNotNullDynamicReturnTypeExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\EnumerableGenericStaticMethodDynamicMethodReturnTypeExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\NewModelQueryDynamicMethodReturnTypeExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\FactoryDynamicMethodReturnTypeExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\EnumerableGenericStaticMethodDynamicStaticMethodReturnTypeExtension - tags: - - phpstan.broker.dynamicStaticMethodReturnTypeExtension - - - - class: Larastan\Larastan\Types\AbortIfFunctionTypeSpecifyingExtension - tags: - - phpstan.typeSpecifier.functionTypeSpecifyingExtension - arguments: - methodName: 'abort' - negate: false - - - - class: Larastan\Larastan\Types\AbortIfFunctionTypeSpecifyingExtension - tags: - - phpstan.typeSpecifier.functionTypeSpecifyingExtension - arguments: - methodName: 'abort' - negate: true - - - - class: Larastan\Larastan\Types\AbortIfFunctionTypeSpecifyingExtension - tags: - - phpstan.typeSpecifier.functionTypeSpecifyingExtension - arguments: - methodName: throw - negate: false - - - - class: Larastan\Larastan\Types\AbortIfFunctionTypeSpecifyingExtension - tags: - - phpstan.typeSpecifier.functionTypeSpecifyingExtension - arguments: - methodName: throw - negate: true - - - - class: Larastan\Larastan\ReturnTypes\Helpers\AppExtension - tags: - - phpstan.broker.dynamicFunctionReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\Helpers\ValueExtension - tags: - - phpstan.broker.dynamicFunctionReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\Helpers\StrExtension - tags: - - phpstan.broker.dynamicFunctionReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\Helpers\TapExtension - tags: - - phpstan.broker.dynamicFunctionReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\StorageDynamicStaticMethodReturnTypeExtension - tags: - - phpstan.broker.dynamicStaticMethodReturnTypeExtension - - - - class: Larastan\Larastan\Types\GenericEloquentCollectionTypeNodeResolverExtension - tags: - - phpstan.phpDoc.typeNodeResolverExtension - - - - class: Larastan\Larastan\Types\ViewStringTypeNodeResolverExtension - tags: - - phpstan.phpDoc.typeNodeResolverExtension - - - - class: Larastan\Larastan\Rules\OctaneCompatibilityRule - - - - class: Larastan\Larastan\Rules\NoEnvCallsOutsideOfConfigRule - - - - class: Larastan\Larastan\Rules\NoModelMakeRule - - - - class: Larastan\Larastan\Rules\NoUnnecessaryCollectionCallRule - arguments: - onlyMethods: %noUnnecessaryCollectionCallOnly% - excludeMethods: %noUnnecessaryCollectionCallExcept% - - - - class: Larastan\Larastan\Rules\ModelAppendsRule - - - - class: Larastan\Larastan\Types\GenericEloquentBuilderTypeNodeResolverExtension - tags: - - phpstan.phpDoc.typeNodeResolverExtension - - - class: Larastan\Larastan\ReturnTypes\AppEnvironmentReturnTypeExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - - class: Larastan\Larastan\Types\ModelProperty\ModelPropertyTypeNodeResolverExtension - tags: - - phpstan.phpDoc.typeNodeResolverExtension - arguments: - active: %checkModelProperties% - - - - class: Larastan\Larastan\Types\RelationParserHelper - arguments: - parser: @currentPhpVersionSimpleDirectParser - - - - class: Larastan\Larastan\Properties\MigrationHelper - arguments: - databaseMigrationPath: %databaseMigrationsPath% - disableMigrationScan: %disableMigrationScan% - parser: @currentPhpVersionSimpleDirectParser - reflectionProvider: @reflectionProvider - - - - class: Larastan\Larastan\Properties\SquashedMigrationHelper - arguments: - schemaPaths: %squashedMigrationsPath% - disableSchemaScan: %disableSchemaScan% - - - - class: Larastan\Larastan\Properties\ModelCastHelper - - - - class: Larastan\Larastan\Properties\ModelPropertyHelper - - - - class: Larastan\Larastan\Rules\ModelRuleHelper - - - - class: Larastan\Larastan\Methods\BuilderHelper - arguments: - checkProperties: %checkModelProperties% - - - - class: Larastan\Larastan\Rules\RelationExistenceRule - tags: - - phpstan.rules.rule - - - - class: Larastan\Larastan\Rules\CheckDispatchArgumentTypesCompatibleWithClassConstructorRule - arguments: - dispatchableClass: Illuminate\Foundation\Bus\Dispatchable - tags: - - phpstan.rules.rule - - - class: Larastan\Larastan\Rules\CheckDispatchArgumentTypesCompatibleWithClassConstructorRule - arguments: - dispatchableClass: Illuminate\Foundation\Events\Dispatchable - tags: - - phpstan.rules.rule - - - - class: Larastan\Larastan\Properties\Schema\PhpMyAdminDataTypeToPhpTypeConverter - - - - class: Larastan\Larastan\LarastanStubFilesExtension - tags: - - phpstan.stubFilesExtension - - - - class: Larastan\Larastan\Rules\UnusedViewsRule - - - - class: Larastan\Larastan\Collectors\UsedViewFunctionCollector - tags: - - phpstan.collector - - - - class: Larastan\Larastan\Collectors\UsedEmailViewCollector - tags: - - phpstan.collector - - - - class: Larastan\Larastan\Collectors\UsedViewMakeCollector - tags: - - phpstan.collector - - - - class: Larastan\Larastan\Collectors\UsedViewFacadeMakeCollector - tags: - - phpstan.collector - - - - class: Larastan\Larastan\Collectors\UsedRouteFacadeViewCollector - tags: - - phpstan.collector - - - class: Larastan\Larastan\Collectors\UsedViewInAnotherViewCollector - arguments: - parser: @currentPhpVersionSimpleDirectParser - - - class: Larastan\Larastan\Support\ViewFileHelper - arguments: - viewDirectories: %viewDirectories% - - - - class: Larastan\Larastan\ReturnTypes\ApplicationMakeDynamicReturnTypeExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\ContainerMakeDynamicReturnTypeExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\ConsoleCommand\ArgumentDynamicReturnTypeExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\ConsoleCommand\HasArgumentDynamicReturnTypeExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\ConsoleCommand\OptionDynamicReturnTypeExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\ConsoleCommand\HasOptionDynamicReturnTypeExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\TranslatorGetReturnTypeExtension - tags: - - phpstan.broker.dynamicMethodReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\TransHelperReturnTypeExtension - tags: - - phpstan.broker.dynamicFunctionReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\DoubleUnderscoreHelperReturnTypeExtension - tags: - - phpstan.broker.dynamicFunctionReturnTypeExtension - - - - class: Larastan\Larastan\ReturnTypes\AppMakeHelper - - - - class: Larastan\Larastan\Internal\ConsoleApplicationResolver - - - - class: Larastan\Larastan\Internal\ConsoleApplicationHelper - - - - class: Larastan\Larastan\Support\HigherOrderCollectionProxyHelper - -rules: - - Larastan\Larastan\Rules\UselessConstructs\NoUselessWithFunctionCallsRule - - Larastan\Larastan\Rules\UselessConstructs\NoUselessValueFunctionCallsRule - - Larastan\Larastan\Rules\DeferrableServiceProviderMissingProvidesRule - - Larastan\Larastan\Rules\ConsoleCommand\UndefinedArgumentOrOptionRule diff --git a/docker/statistics/vendor/larastan/larastan/phpcs.xml.dist b/docker/statistics/vendor/larastan/larastan/phpcs.xml.dist deleted file mode 100644 index bac78391..00000000 --- a/docker/statistics/vendor/larastan/larastan/phpcs.xml.dist +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - - - - - - - - src - tests - - tests/*/data - tests/enum-definition.php - tests/bootstrap.php - tests/application - - - - - - - - tests/* - - - - tests/Type/GenericModelPropertyTypeTest.php - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docker/statistics/vendor/larastan/larastan/src/ApplicationResolver.php b/docker/statistics/vendor/larastan/larastan/src/ApplicationResolver.php deleted file mode 100644 index 9d5097c9..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ApplicationResolver.php +++ /dev/null @@ -1,106 +0,0 @@ -bootstrap($app); - - return; - } - - $filesystem = new Filesystem(); - - $laravelVendorPath = $app->basePath('vendor'); - - if ( - sprintf('%s/autoload.php', $laravelVendorPath) !== sprintf('%s/autoload.php', $vendorDir) - ) { - if ($filesystem->exists($app->bootstrapPath('cache/packages.php'))) { - $filesystem->delete($app->bootstrapPath('cache/packages.php')); - } - - $filesystem->delete($laravelVendorPath); - $filesystem->link($vendorDir, $laravelVendorPath); - } - - $app->flush(); - } - - /** - * Creates an application and registers service providers found. - * - * @throws ReflectionException - */ - public static function resolve(): Application - { - /** @var non-empty-string $workingPath */ - $workingPath = getcwd(); - if (! defined('TESTBENCH_WORKING_PATH')) { - define('TESTBENCH_WORKING_PATH', $workingPath); - } - - $composerConfig = ComposerHelper::getComposerConfig($workingPath); - - if ($composerConfig) { - $vendorDir = ComposerHelper::getVendorDirFromComposerConfig($workingPath, $composerConfig); - } else { - $vendorDir = $workingPath . '/vendor'; - } - - $resolvingCallback = static function ($app): void { - $packageManifest = $app->make(PackageManifest::class); - - if (file_exists($packageManifest->manifestPath)) { - return; - } - - $packageManifest->build(); - }; - - if (class_exists(Config::class)) { - $config = Config::loadFromYaml($workingPath); - - self::createSymlinkToVendorPath(Testbench::create($config['laravel'], null, ['extra' => ['dont-discover' => ['*']]]), $vendorDir); - - return Testbench::create( - $config['laravel'], - $resolvingCallback, - ['enables_package_discoveries' => true, 'extra' => $config->getExtraAttributes()], - ); - } - - self::createSymlinkToVendorPath(Testbench::create(Testbench::applicationBasePath(), null, ['extra' => ['dont-discover' => ['*']]]), $vendorDir); - - return Testbench::create( - null, - $resolvingCallback, - ['enables_package_discoveries' => true], - ); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Collectors/UsedEmailViewCollector.php b/docker/statistics/vendor/larastan/larastan/src/Collectors/UsedEmailViewCollector.php deleted file mode 100644 index 51a9a2f4..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Collectors/UsedEmailViewCollector.php +++ /dev/null @@ -1,62 +0,0 @@ - */ -final class UsedEmailViewCollector implements Collector -{ - public function getNodeType(): string - { - return Node\Expr\MethodCall::class; - } - - /** @param Node\Expr\MethodCall $node */ - public function processNode(Node $node, Scope $scope): string|null - { - $name = $node->name; - - if (! $name instanceof Identifier) { - return null; - } - - if (! in_array($name->name, ['markdown', 'view'], true)) { - return null; - } - - if (count($node->getArgs()) === 0) { - return null; - } - - $class = $node->var; - - $type = $scope->getType($class); - if ( - ! (new ObjectType(Mailable::class))->isSuperTypeOf($type)->yes() - && ! (new ObjectType(MailMessage::class))->isSuperTypeOf($type)->yes() - ) { - return null; - } - - $template = $node->getArgs()[0]->value; - - if (! $template instanceof Node\Scalar\String_) { - return null; - } - - return ViewName::normalize($template->value); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Collectors/UsedRouteFacadeViewCollector.php b/docker/statistics/vendor/larastan/larastan/src/Collectors/UsedRouteFacadeViewCollector.php deleted file mode 100644 index 079fd927..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Collectors/UsedRouteFacadeViewCollector.php +++ /dev/null @@ -1,61 +0,0 @@ - */ -final class UsedRouteFacadeViewCollector implements Collector -{ - public function getNodeType(): string - { - return Node\Expr\StaticCall::class; - } - - /** @param Node\Expr\StaticCall $node */ - public function processNode(Node $node, Scope $scope): string|null - { - $name = $node->name; - - if (! $name instanceof Node\Identifier) { - return null; - } - - if ($name->name !== 'view') { - return null; - } - - if (count($node->getArgs()) < 2) { - return null; - } - - $class = $node->class; - - if (! $class instanceof Node\Name) { - return null; - } - - $class = $scope->resolveName($class); - - if (! (new ObjectType(Route::class))->isSuperTypeOf(new ObjectType($class))->yes()) { - return null; - } - - $template = $node->getArgs()[1]->value; - - if (! $template instanceof Node\Scalar\String_) { - return null; - } - - return ViewName::normalize($template->value); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Collectors/UsedViewFacadeMakeCollector.php b/docker/statistics/vendor/larastan/larastan/src/Collectors/UsedViewFacadeMakeCollector.php deleted file mode 100644 index 06fd7cb0..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Collectors/UsedViewFacadeMakeCollector.php +++ /dev/null @@ -1,61 +0,0 @@ - */ -final class UsedViewFacadeMakeCollector implements Collector -{ - public function getNodeType(): string - { - return Node\Expr\StaticCall::class; - } - - /** @param Node\Expr\StaticCall $node */ - public function processNode(Node $node, Scope $scope): string|null - { - $name = $node->name; - - if (! $name instanceof Node\Identifier) { - return null; - } - - if ($name->name !== 'make') { - return null; - } - - if (count($node->getArgs()) < 1) { - return null; - } - - $class = $node->class; - - if (! $class instanceof Node\Name) { - return null; - } - - $class = $scope->resolveName($class); - - if (! (new ObjectType(View::class))->isSuperTypeOf(new ObjectType($class))->yes()) { - return null; - } - - $template = $node->getArgs()[0]->value; - - if (! $template instanceof Node\Scalar\String_) { - return null; - } - - return ViewName::normalize($template->value); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Collectors/UsedViewFunctionCollector.php b/docker/statistics/vendor/larastan/larastan/src/Collectors/UsedViewFunctionCollector.php deleted file mode 100644 index 100f7213..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Collectors/UsedViewFunctionCollector.php +++ /dev/null @@ -1,51 +0,0 @@ - */ -final class UsedViewFunctionCollector implements Collector -{ - public function getNodeType(): string - { - return Node\Expr\FuncCall::class; - } - - /** @param Node\Expr\FuncCall $node */ - public function processNode(Node $node, Scope $scope): string|null - { - $funcName = $node->name; - - if (! $funcName instanceof Node\Name) { - return null; - } - - $funcName = $scope->resolveName($funcName); - - if ($funcName !== 'view') { - return null; - } - - // TODO: maybe make sure this function is coming from Laravel - - if (count($node->getArgs()) < 1) { - return null; - } - - $template = $node->getArgs()[0]->value; - - if (! $template instanceof Node\Scalar\String_) { - return null; - } - - return ViewName::normalize($template->value); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Collectors/UsedViewInAnotherViewCollector.php b/docker/statistics/vendor/larastan/larastan/src/Collectors/UsedViewInAnotherViewCollector.php deleted file mode 100644 index ed65e67a..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Collectors/UsedViewInAnotherViewCollector.php +++ /dev/null @@ -1,73 +0,0 @@ - */ - public function getUsedViews(): array - { - $usedViews = []; - foreach ($this->viewFileHelper->getAllViewFilePaths() as $viewFile) { - try { - $parserNodes = $this->parser->parseFile($viewFile); - - $usedViews = array_merge($usedViews, $this->processNodes($parserNodes)); - } catch (ParserErrorsException) { - continue; - } - } - - return $usedViews; - } - - /** - * @param Node\Stmt[] $nodes - * - * @return list - */ - private function processNodes(array $nodes): array - { - $nodes = array_filter($nodes, static function (Node $node) { - return $node instanceof Node\Stmt\InlineHTML; - }); - - if (count($nodes) === 0) { - return []; - } - - $usedViews = []; - - foreach ($nodes as $node) { - preg_match_all(self::VIEW_NAME_REGEX, $node->value, $matches, PREG_SET_ORDER, 0); - - $usedViews = array_merge($usedViews, array_map(static function ($match) { - return $match[5]; - }, $matches)); - } - - return $usedViews; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Collectors/UsedViewMakeCollector.php b/docker/statistics/vendor/larastan/larastan/src/Collectors/UsedViewMakeCollector.php deleted file mode 100644 index c5812c32..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Collectors/UsedViewMakeCollector.php +++ /dev/null @@ -1,55 +0,0 @@ - */ -final class UsedViewMakeCollector implements Collector -{ - public function getNodeType(): string - { - return Node\Expr\MethodCall::class; - } - - /** @param Node\Expr\MethodCall $node */ - public function processNode(Node $node, Scope $scope): string|null - { - $name = $node->name; - - if (! $name instanceof Node\Identifier) { - return null; - } - - if ($name->name !== 'make') { - return null; - } - - if (count($node->getArgs()) < 1) { - return null; - } - - $class = $node->var; - - if (! (new ObjectType(Factory::class))->isSuperTypeOf($scope->getType($class))->yes()) { - return null; - } - - $template = $node->getArgs()[0]->value; - - if (! $template instanceof Node\Scalar\String_) { - return null; - } - - return ViewName::normalize($template->value); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Concerns/HasContainer.php b/docker/statistics/vendor/larastan/larastan/src/Concerns/HasContainer.php deleted file mode 100644 index 27bda364..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Concerns/HasContainer.php +++ /dev/null @@ -1,42 +0,0 @@ -container = $container; - } - - /** - * Returns the current broker. - */ - public function getContainer(): ContainerContract - { - return $this->container ?? Container::getInstance(); - } - - /** - * Resolve the given type from the container. - */ - public function resolve(string $abstract): mixed - { - try { - $concrete = $this->getContainer()->make($abstract); - } catch (Throwable) { - return null; - } - - return $concrete; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Concerns/LoadsAuthModel.php b/docker/statistics/vendor/larastan/larastan/src/Concerns/LoadsAuthModel.php deleted file mode 100644 index b88486e0..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Concerns/LoadsAuthModel.php +++ /dev/null @@ -1,48 +0,0 @@ - */ - private function getAuthModels(ConfigRepository $config, string|null $guard = null): array - { - $guards = $config->get('auth.guards'); - $providers = $config->get('auth.providers'); - - if (! is_array($guards) || ! is_array($providers)) { - return []; - } - - return array_reduce( - $guard === null ? array_keys($guards) : [$guard], - static function ($carry, $guardName) use ($guards, $providers) { - $provider = $guards[$guardName]['provider'] ?? null; - - if (! $provider) { - return $carry; - } - - $authModel = $providers[$provider]['model'] ?? null; - - if (! $authModel || in_array($authModel, $carry, strict: true)) { - return $carry; - } - - $carry[] = $authModel; - - return $carry; - }, - initial: [], - ); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Contracts/Methods/PassableContract.php b/docker/statistics/vendor/larastan/larastan/src/Contracts/Methods/PassableContract.php deleted file mode 100644 index 86684472..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Contracts/Methods/PassableContract.php +++ /dev/null @@ -1,50 +0,0 @@ - */ - public static function getComposerConfig(string $root): array|null - { - $composerJsonPath = self::getComposerJsonPath($root); - - if (! is_file($composerJsonPath)) { - return null; - } - - try { - $composerJsonContents = @file_get_contents($composerJsonPath); - - if ($composerJsonContents === false) { - return null; - } - - return json_decode($composerJsonContents, true, 512, JSON_THROW_ON_ERROR); - } catch (JsonException) { - return null; - } - } - - private static function getComposerJsonPath(string $root): string - { - $envComposer = getenv('COMPOSER'); - $fileName = is_string($envComposer) ? $envComposer : 'composer.json'; - - return $root . '/' . basename(trim($fileName)); - } - - /** @param array $composerConfig */ - public static function getVendorDirFromComposerConfig(string $root, array $composerConfig): string - { - $vendorDirectory = $composerConfig['config']['vendor-dir'] ?? 'vendor'; - - return $root . '/' . trim($vendorDirectory, '/'); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Internal/ConsoleApplicationHelper.php b/docker/statistics/vendor/larastan/larastan/src/Internal/ConsoleApplicationHelper.php deleted file mode 100644 index 0a1473e0..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Internal/ConsoleApplicationHelper.php +++ /dev/null @@ -1,117 +0,0 @@ -consoleApplicationResolver->findCommands($classReflection) as $command) { - try { - $arguments = $command->getDefinition()->getArguments(); - $builder = ConstantArrayTypeBuilder::createEmpty(); - - foreach ($arguments as $name => $argument) { - $argumentType = $this->getArgumentType($scope, $argument); - $builder->setOffsetValueType(new ConstantStringType($name), $argumentType); - } - - $argTypes[] = $builder->getArray(); - } catch (InvalidArgumentException) { - // noop - } - } - - return count($argTypes) > 0 ? TypeCombinator::union(...$argTypes) : null; - } - - public function getArgumentType(Scope $scope, InputArgument $argument): Type - { - if ($argument->isArray()) { - $argType = new ArrayType(new IntegerType(), new StringType()); - - if (! $argument->isRequired() && $argument->getDefault() !== []) { - $argType = TypeCombinator::union($argType, $scope->getTypeFromValue($argument->getDefault())); - } - } else { - $argType = new StringType(); - - if (! $argument->isRequired()) { - $argType = TypeCombinator::union($argType, $scope->getTypeFromValue($argument->getDefault())); - } - } - - return $argType; - } - - public function getOptions(ClassReflection $classReflection, Scope $scope): Type|null - { - $optTypes = []; - - foreach ($this->consoleApplicationResolver->findCommands($classReflection) as $command) { - try { - $options = $command->getDefinition()->getOptions(); - $builder = ConstantArrayTypeBuilder::createEmpty(); - foreach ($options as $name => $option) { - $argumentType = $this->getOptionType($scope, $option); - $builder->setOffsetValueType(new ConstantStringType($name), $argumentType); - } - - $optTypes[] = $builder->getArray(); - } catch (InvalidArgumentException) { - // noop - } - } - - return count($optTypes) > 0 ? TypeCombinator::union(...$optTypes) : null; - } - - public function getOptionType(Scope $scope, InputOption $option): Type - { - if (! $option->acceptValue()) { - if ($option->isNegatable()) { - return new UnionType([new BooleanType(), new NullType()]); - } - - return new BooleanType(); - } - - $optType = TypeCombinator::union(new StringType(), new NullType()); - - if ($option->isValueRequired() && ($option->isArray() || $option->getDefault() !== null)) { - $optType = TypeCombinator::removeNull($optType); - } - - if ($option->isArray()) { - $optType = new ArrayType(new IntegerType(), $optType); - } - - return TypeCombinator::union($optType, $scope->getTypeFromValue($option->getDefault())); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Internal/ConsoleApplicationResolver.php b/docker/statistics/vendor/larastan/larastan/src/Internal/ConsoleApplicationResolver.php deleted file mode 100644 index 9a6cb1fa..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Internal/ConsoleApplicationResolver.php +++ /dev/null @@ -1,54 +0,0 @@ -getApplication(); - - $classType = new ObjectType($classReflection->getName()); - - if (! (new ObjectType('Illuminate\Console\Command'))->isSuperTypeOf($classType)->yes()) { - return []; - } - - $commands = []; - - foreach ($consoleApplication->all() as $name => $command) { - if (! $classType->isSuperTypeOf(new ObjectType($command::class))->yes()) { - continue; - } - - $commands[$name] = $command; - } - - return $commands; // @phpstan-ignore-line - } - - private function getApplication(): Application - { - if ($this->application === null) { - $this->application = new Application(app(Container::class), app(Dispatcher::class), app()->version()); - $this->application->setContainerCommandLoader(); - } - - return $this->application; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Internal/LaravelVersion.php b/docker/statistics/vendor/larastan/larastan/src/Internal/LaravelVersion.php deleted file mode 100644 index 0937f19a..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Internal/LaravelVersion.php +++ /dev/null @@ -1,30 +0,0 @@ -='); - } - - public static function getBuilderModelGenericName(): string - { - return self::hasLaravel1115Generics() ? 'TModel' : 'TModelClass'; - } - - public static function hasCollectedByAttribute(): bool - { - return version_compare(self::getLaravelVersion(), '11.28.0', '>='); - } - - private static function getLaravelVersion(): string - { - return LARAVEL_VERSION; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/LarastanStubFilesExtension.php b/docker/statistics/vendor/larastan/larastan/src/LarastanStubFilesExtension.php deleted file mode 100644 index 7b361b4e..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/LarastanStubFilesExtension.php +++ /dev/null @@ -1,40 +0,0 @@ -directories()->name('/^\d+/')->in(__DIR__ . '/../stubs')->depth(0); - - // Include only applicable versions - $stubDirectories - ->filter(static fn (SplFileInfo $file) => version_compare($file->getFilename(), LARAVEL_VERSION, '<=')) - ->sort(static fn (SplFileInfo $a, SplFileInfo $b) => version_compare($a->getFilename(), $b->getFilename())); - - $files = []; - - $stubDirs = [__DIR__ . '/../stubs/common', ...array_keys(iterator_to_array($stubDirectories))]; - - $stubFiles = Finder::create()->files()->name('*.stub')->in($stubDirs); - - foreach ($stubFiles as $stubFile) { - $files[$stubFile->getRelativePathname()] = $stubFile->getRealPath(); - } - - return array_values($files); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Methods/BuilderHelper.php b/docker/statistics/vendor/larastan/larastan/src/Methods/BuilderHelper.php deleted file mode 100644 index 0a33b80e..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Methods/BuilderHelper.php +++ /dev/null @@ -1,235 +0,0 @@ -getObjectClassReflections()) > 0 && $this->checkProperties) { - $returnClassReflection = $returnObject->getObjectClassReflections()[0]; - - $modelType = $returnClassReflection->getActiveTemplateTypeMap()->getType('TModelClass') - ?? $returnClassReflection->getActiveTemplateTypeMap()->getType('TRelatedModel'); - - if ($modelType !== null) { - $finder = substr($methodName, 5); - - $segments = preg_split('/(And|Or)(?=[A-Z])/', $finder, -1, PREG_SPLIT_DELIM_CAPTURE); - - if ($segments !== false) { - $trinaryLogic = TrinaryLogic::createYes(); - - foreach ($segments as $segment) { - if ($segment === 'And' || $segment === 'Or') { - continue; - } - - $trinaryLogic = $trinaryLogic->and($modelType->hasProperty(Str::snake($segment))); - } - - if (! $trinaryLogic->yes()) { - return null; - } - } - } - } - - $classReflection = $this->reflectionProvider->getClass(QueryBuilder::class); - - $methodReflection = $classReflection->getNativeMethod('dynamicWhere'); - - return new EloquentBuilderMethodReflection( - $methodName, - $classReflection, - [new DynamicWhereParameterReflection()], - $returnObject, - true, - ); - } - - /** - * This method mimics the `EloquentBuilder::__call` method. - * Does not handle the case where $methodName exists in `EloquentBuilder`, - * that should be checked by caller before calling this method. - * - * @param ClassReflection $eloquentBuilder Can be `EloquentBuilder` or a custom builder extending it. - * - * @throws MissingMethodFromReflectionException - * @throws ShouldNotHappenException - */ - public function searchOnEloquentBuilder(ClassReflection $eloquentBuilder, string $methodName, Type $modelType): MethodReflection|null - { - // Check for macros first - if ($this->macroMethodsClassReflectionExtension->hasMethod($eloquentBuilder, $methodName)) { - return $this->macroMethodsClassReflectionExtension->getMethod($eloquentBuilder, $methodName); - } - - $scopeName = 'scope' . ucfirst($methodName); - - foreach ($modelType->getObjectClassReflections() as $reflection) { - // Check for @method phpdoc tags - if (array_key_exists($scopeName, $reflection->getMethodTags())) { - $methodTag = $reflection->getMethodTags()[$scopeName]; - - $parameters = []; - foreach ($methodTag->getParameters() as $parameterName => $parameterTag) { - $parameters[] = new AnnotationScopeMethodParameterReflection( - $parameterName, - $parameterTag->getType(), - $parameterTag->passedByReference(), - $parameterTag->isOptional(), - $parameterTag->isVariadic(), - $parameterTag->getDefaultValue(), - ); - } - - // We shift the parameters, - // because first parameter is the Builder - array_shift($parameters); - - return new EloquentBuilderMethodReflection( - $scopeName, - $reflection, - $parameters, - $methodTag->getReturnType(), - ); - } - - if ($reflection->hasNativeMethod($scopeName)) { - $methodReflection = $reflection->getNativeMethod($scopeName); - $parametersAcceptor = $methodReflection->getVariants()[0]; - - $parameters = $parametersAcceptor->getParameters(); - // We shift the parameters, - // because first parameter is the Builder - array_shift($parameters); - - $returnType = $parametersAcceptor->getReturnType(); - - return new EloquentBuilderMethodReflection( - $scopeName, - $methodReflection->getDeclaringClass(), - $parameters, - $returnType, - $parametersAcceptor->isVariadic(), - ); - } - } - - $queryBuilderReflection = $this->reflectionProvider->getClass(QueryBuilder::class); - - if (in_array($methodName, $this->passthru, true)) { - return $queryBuilderReflection->getNativeMethod($methodName); - } - - if ($queryBuilderReflection->hasNativeMethod($methodName)) { - return $queryBuilderReflection->getNativeMethod($methodName); - } - - // Check for query builder macros - if ($this->macroMethodsClassReflectionExtension->hasMethod($queryBuilderReflection, $methodName)) { - return $this->macroMethodsClassReflectionExtension->getMethod($queryBuilderReflection, $methodName); - } - - return $this->dynamicWhere($methodName, new GenericObjectType($eloquentBuilder->getName(), [$modelType])); - } - - /** - * @throws MissingMethodFromReflectionException - * @throws ShouldNotHappenException - */ - public function determineBuilderName(string $modelClassName): string - { - $method = $this->reflectionProvider->getClass($modelClassName)->getNativeMethod('newEloquentBuilder'); - - $returnType = $method->getVariants()[0]->getReturnType(); - - if (in_array(EloquentBuilder::class, $returnType->getReferencedClasses(), true)) { - return EloquentBuilder::class; - } - - $classNames = $returnType->getObjectClassNames(); - - if (count($classNames) === 1) { - return $classNames[0]; - } - - return $returnType->describe(VerbosityLevel::value()); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Methods/EloquentBuilderForwardsCallsExtension.php b/docker/statistics/vendor/larastan/larastan/src/Methods/EloquentBuilderForwardsCallsExtension.php deleted file mode 100644 index 84a148dd..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Methods/EloquentBuilderForwardsCallsExtension.php +++ /dev/null @@ -1,161 +0,0 @@ - */ - private array $cache = []; - - public function __construct(private BuilderHelper $builderHelper, private ReflectionProvider $reflectionProvider) - { - } - - /** - * @throws ShouldNotHappenException - * @throws MissingMethodFromReflectionException - */ - public function hasMethod(ClassReflection $classReflection, string $methodName): bool - { - if (array_key_exists($classReflection->getCacheKey() . '-' . $methodName, $this->cache)) { - return true; - } - - $methodReflection = $this->findMethod($classReflection, $methodName); - - if ($methodReflection !== null) { - $this->cache[$classReflection->getCacheKey() . '-' . $methodName] = $methodReflection; - - return true; - } - - return false; - } - - public function getMethod(ClassReflection $classReflection, string $methodName): MethodReflection - { - return $this->cache[$classReflection->getCacheKey() . '-' . $methodName]; - } - - /** - * @throws MissingMethodFromReflectionException - * @throws ShouldNotHappenException - */ - private function findMethod(ClassReflection $classReflection, string $methodName): MethodReflection|null - { - if (! $classReflection->is(EloquentBuilder::class)) { - return null; - } - - $loopReflection = $classReflection; - - do { - $modelType = $loopReflection->getActiveTemplateTypeMap()->getType(LaravelVersion::getBuilderModelGenericName()); - - if ($modelType !== null) { - break; - } - - $loopReflection = $loopReflection->getParentClass(); - } while ($loopReflection !== null); - - if ($modelType === null) { - return null; - } - - if ($modelType instanceof TemplateObjectType) { - $modelType = $modelType->getBound(); - } - - $ref = $this->builderHelper->searchOnEloquentBuilder($classReflection, $methodName, $modelType); - - if ($ref === null) { - // Special case for `SoftDeletes` trait - if ( - in_array($methodName, ['withTrashed', 'onlyTrashed', 'withoutTrashed', 'restore', 'createOrRestore', 'restoreOrCreate'], true) && - array_key_exists(SoftDeletes::class, array_merge(...array_map(static fn ($r) => $r->getTraits(true), $modelType->getObjectClassReflections()))) - ) { - $ref = $this->reflectionProvider->getClass(SoftDeletes::class)->getMethod($methodName, new OutOfClassScope()); - - if ($methodName === 'restore') { - return new EloquentBuilderMethodReflection( - $methodName, - $classReflection, - $ref->getVariants()[0]->getParameters(), - new IntegerType(), - $ref->getVariants()[0]->isVariadic(), - ); - } - - if ($methodName === 'restoreOrCreate' || $methodName === 'createOrRestore') { - return new EloquentBuilderMethodReflection( - $methodName, - $classReflection, - $ref->getVariants()[0]->getParameters(), - $modelType, - $ref->getVariants()[0]->isVariadic(), - ); - } - - return new EloquentBuilderMethodReflection( - $methodName, - $classReflection, - $ref->getVariants()[0]->getParameters(), - new GenericObjectType($classReflection->getName(), [$modelType]), - $ref->getVariants()[0]->isVariadic(), - ); - } - - return null; - } - - // Macros have their own reflection. And return type, parameters, etc. are already set with the closure. - if ($ref instanceof Macro) { - return $ref; - } - - $parametersAcceptor = $ref->getVariants()[0]; - - if (in_array($methodName, $this->builderHelper->passthru, true)) { - $returnType = $parametersAcceptor->getReturnType(); - } elseif ($classReflection->isGeneric()) { - $returnType = new GenericObjectType($classReflection->getName(), array_values($classReflection->getTemplateTypeMap()->getTypes())); - } else { - $returnType = new ObjectType($classReflection->getName()); - } - - // Returning custom reflection - // to ensure return type is always `EloquentBuilder` - return new EloquentBuilderMethodReflection( - $methodName, - $classReflection, - $parametersAcceptor->getParameters(), - $returnType, - $parametersAcceptor->isVariadic(), - ); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Methods/Extension.php b/docker/statistics/vendor/larastan/larastan/src/Methods/Extension.php deleted file mode 100644 index d607d600..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Methods/Extension.php +++ /dev/null @@ -1,54 +0,0 @@ -kernel = $kernel ?? new Kernel($methodReflectionFactory, $reflectionProvider); - } - - public function hasMethod(ClassReflection $classReflection, string $methodName): bool - { - if ($classReflection->getName() === Model::class) { - return false; - } - - if (array_key_exists($methodName . '-' . $classReflection->getName(), $this->methodReflections)) { - return true; - } - - $passable = $this->kernel->handle($classReflection, $methodName); - - $found = $passable->hasFound(); - - if ($found) { - $this->methodReflections[$methodName . '-' . $classReflection->getName()] = $passable->getMethodReflection(); - } - - return $found; - } - - public function getMethod(ClassReflection $classReflection, string $methodName): MethodReflection - { - return $this->methodReflections[$methodName . '-' . $classReflection->getName()]; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Methods/HigherOrderCollectionProxyExtension.php b/docker/statistics/vendor/larastan/larastan/src/Methods/HigherOrderCollectionProxyExtension.php deleted file mode 100644 index 359f498e..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Methods/HigherOrderCollectionProxyExtension.php +++ /dev/null @@ -1,142 +0,0 @@ -higherOrderCollectionProxyHelper->hasPropertyOrMethod($classReflection, $methodName, 'method'); - } - - public function getMethod( - ClassReflection $classReflection, - string $methodName, - ): MethodReflection { - $activeTemplateTypeMap = $classReflection->getActiveTemplateTypeMap(); - - /** @var Type\Constant\ConstantStringType $methodType */ - $methodType = $activeTemplateTypeMap->getType('T'); - - /** @var Type\ObjectType $valueType */ - $valueType = $activeTemplateTypeMap->getType('TValue'); - - /** @var Type\Type $collectionType */ - $collectionType = $activeTemplateTypeMap->getType('TCollection'); - - $collectionClassName = count($collectionType->getObjectClassNames()) === 0 - ? Collection::class - : $collectionType->getObjectClassNames()[0]; - - $modelMethodReflection = $valueType->getMethod($methodName, new OutOfClassScope()); - - $modelMethodReturnType = $modelMethodReflection->getVariants()[0]->getReturnType(); - - $returnType = $this->higherOrderCollectionProxyHelper->determineReturnType($methodType->getValue(), $valueType, $modelMethodReturnType, $collectionClassName); - - return new class ($classReflection, $methodName, $modelMethodReflection, $returnType) implements MethodReflection - { - public function __construct(private ClassReflection $classReflection, private string $methodName, private MethodReflection $modelMethodReflection, private Type\Type $returnType) - { - } - - public function getDeclaringClass(): ClassReflection - { - return $this->classReflection; - } - - public function isStatic(): bool - { - return false; - } - - public function isPrivate(): bool - { - return false; - } - - public function isPublic(): bool - { - return true; - } - - public function getDocComment(): string|null - { - return null; - } - - public function getName(): string - { - return $this->methodName; - } - - public function getPrototype(): ClassMemberReflection - { - return $this; - } - - /** @return FunctionVariant[] */ - public function getVariants(): array - { - return [ - new FunctionVariant( - $this->modelMethodReflection->getVariants()[0]->getTemplateTypeMap(), - $this->modelMethodReflection->getVariants()[0]->getResolvedTemplateTypeMap(), - $this->modelMethodReflection->getVariants()[0]->getParameters(), - $this->modelMethodReflection->getVariants()[0]->isVariadic(), - $this->returnType, - ), - ]; - } - - public function isDeprecated(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function getDeprecatedDescription(): string|null - { - return null; - } - - public function isFinal(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function isInternal(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function getThrowType(): \PHPStan\Type\Type|null - { - return null; - } - - public function hasSideEffects(): TrinaryLogic - { - return TrinaryLogic::createMaybe(); - } - }; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Methods/HigherOrderTapProxyExtension.php b/docker/statistics/vendor/larastan/larastan/src/Methods/HigherOrderTapProxyExtension.php deleted file mode 100644 index c754ad80..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Methods/HigherOrderTapProxyExtension.php +++ /dev/null @@ -1,45 +0,0 @@ -getName() !== HigherOrderTapProxy::class) { - return false; - } - - $templateTypeMap = $classReflection->getActiveTemplateTypeMap(); - - $templateType = $templateTypeMap->getType('TClass'); - - if ($templateType === null || $templateType->getObjectClassReflections() === []) { - return false; - } - - return $templateType->hasMethod($methodName)->yes(); - } - - public function getMethod( - ClassReflection $classReflection, - string $methodName, - ): MethodReflection { - $templateType = $classReflection->getActiveTemplateTypeMap()->getType('TClass'); - - if ($templateType === null || $templateType->getObjectClassReflections() === [] || ! $templateType->hasMethod($methodName)->yes()) { - throw new ShouldNotHappenException(); - } - - return $templateType->getMethod($methodName, new OutOfClassScope()); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Methods/Kernel.php b/docker/statistics/vendor/larastan/larastan/src/Methods/Kernel.php deleted file mode 100644 index 8548fecd..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Methods/Kernel.php +++ /dev/null @@ -1,48 +0,0 @@ -getContainer()); - - $passable = new Passable($this->methodReflectionFactory, $this->reflectionProvider, $pipeline, $classReflection, $methodName); - - $pipeline->send($passable) - ->through( - [ - Pipes\SelfClass::class, - Pipes\Contracts::class, - Pipes\Facades::class, - Pipes\Managers::class, - Pipes\Auths::class, - ], - ) - ->then( - static function ($method): void { - }, - ); - - return $passable; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Methods/Macro.php b/docker/statistics/vendor/larastan/larastan/src/Methods/Macro.php deleted file mode 100644 index 65b9d2ac..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Methods/Macro.php +++ /dev/null @@ -1,125 +0,0 @@ - ValidationException::class, - 'validateWithBag' => ValidationException::class, - ]; - - public function __construct(private ClassReflection $classReflection, private string $methodName, private ClosureType $closureType) - { - } - - public function getDeclaringClass(): ClassReflection - { - return $this->classReflection; - } - - public function isPrivate(): bool - { - return false; - } - - public function isPublic(): bool - { - return true; - } - - public function isFinal(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function isInternal(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function isStatic(): bool - { - return $this->isStatic; - } - - /** - * Set the is static value. - */ - public function setIsStatic(bool $isStatic): void - { - $this->isStatic = $isStatic; - } - - public function getDocComment(): string|null - { - return null; - } - - public function getName(): string - { - return $this->methodName; - } - - public function isDeprecated(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function getPrototype(): ClassMemberReflection - { - return $this; - } - - /** @inheritDoc */ - public function getVariants(): array - { - return [ - new FunctionVariant(TemplateTypeMap::createEmpty(), null, $this->closureType->getParameters(), $this->closureType->isVariadic(), $this->closureType->getReturnType()), - ]; - } - - public function getDeprecatedDescription(): string|null - { - return null; - } - - public function getThrowType(): Type|null - { - if (array_key_exists($this->methodName, $this->methodThrowTypeMap)) { - return new ObjectType($this->methodThrowTypeMap[$this->methodName]); - } - - return null; - } - - public function hasSideEffects(): TrinaryLogic - { - return TrinaryLogic::createMaybe(); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Methods/MacroMethodsClassReflectionExtension.php b/docker/statistics/vendor/larastan/larastan/src/Methods/MacroMethodsClassReflectionExtension.php deleted file mode 100644 index 0691937a..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Methods/MacroMethodsClassReflectionExtension.php +++ /dev/null @@ -1,204 +0,0 @@ - */ - private array $methods = []; - - public function __construct(private ReflectionProvider $reflectionProvider, private ClosureTypeFactory $closureTypeFactory) - { - } - - /** - * @throws ReflectionException - * @throws ShouldNotHappenException - * @throws MissingMethodFromReflectionException - */ - public function hasMethod(ClassReflection $classReflection, string $methodName): bool - { - /** @var class-string[] $classNames */ - $classNames = []; - $found = false; - $macroTraitProperty = null; - - if ($classReflection->isInterface() && Str::startsWith($classReflection->getName(), 'Illuminate\Contracts')) { - /** @var object|null $concrete */ - $concrete = $this->resolve($classReflection->getName()); - - if ($concrete !== null) { - $className = $concrete::class; - - if ($className && $this->reflectionProvider->getClass($className)->hasTraitUse(Macroable::class)) { - $classNames = [$className]; - $macroTraitProperty = 'macros'; - } - } - } elseif ( - $this->hasIndirectTraitUse($classReflection, Macroable::class) || - $classReflection->is(Builder::class) || - $classReflection->is(QueryBuilder::class) - ) { - $classNames = [$classReflection->getName()]; - $macroTraitProperty = 'macros'; - - if ($classReflection->isSubclassOf(Builder::class)) { - $classNames[] = Builder::class; - } - } elseif ($classReflection->isSubclassOf(Facade::class)) { - $facadeClass = $classReflection->getName(); - - if ($facadeClass === Auth::class) { - $classNames = ['Illuminate\Auth\SessionGuard', RequestGuard::class]; - $macroTraitProperty = 'macros'; - } else { - $concrete = null; - - try { - $concrete = $facadeClass::getFacadeRoot(); - } catch (Throwable) { - } - - if ($concrete) { - $facadeClassName = $concrete::class; - - if ($facadeClassName) { - $classNames = [$facadeClassName]; - $macroTraitProperty = 'macros'; - } - } - } - } - - if ($this->hasIndirectTraitUse($classReflection, CarbonMacro::class) && Carbon::hasMacro($methodName)) { - $methodReflection = new Macro( - $classReflection, - $methodName, - $this->closureTypeFactory->fromClosureObject(Closure::fromCallable(Carbon::getMacro($methodName))), // @phpstan-ignore-line hasMacro guarantees no null return - ); - - $this->methods[$classReflection->getName() . '-' . $methodName] = $methodReflection; - - return true; - } - - if ($classNames !== [] && $macroTraitProperty) { - foreach ($classNames as $className) { - $macroClassReflection = $this->reflectionProvider->getClass($className); - - if (! $macroClassReflection->getNativeReflection()->hasProperty($macroTraitProperty)) { - continue; - } - - $refProperty = $macroClassReflection->getNativeReflection()->getProperty($macroTraitProperty); - $refProperty->setAccessible(true); - - $found = array_key_exists($methodName, $refProperty->getValue()); - - if (! $found) { - continue; - } - - $macroDefinition = $refProperty->getValue()[$methodName]; - - if (is_string($macroDefinition)) { - if (str_contains($macroDefinition, '::')) { - $macroDefinition = explode('::', $macroDefinition, 2); - $macroClassName = $macroDefinition[0]; - if (! $this->reflectionProvider->hasClass($macroClassName) || ! $this->reflectionProvider->getClass($macroClassName)->hasNativeMethod($macroDefinition[1])) { - throw new ShouldNotHappenException('Class ' . $macroClassName . ' does not exist'); - } - - $methodReflection = $this->reflectionProvider->getClass($macroClassName)->getNativeMethod($macroDefinition[1]); - } elseif (is_callable($macroDefinition)) { - $methodReflection = new Macro( - $macroClassReflection, - $methodName, - $this->closureTypeFactory->fromClosureObject(Closure::fromCallable($macroDefinition)), - ); - } else { - throw new ShouldNotHappenException('Function ' . $macroDefinition . ' does not exist'); - } - } elseif (is_array($macroDefinition)) { - if (is_string($macroDefinition[0])) { - $macroClassName = $macroDefinition[0]; - } else { - $macroClassName = get_class($macroDefinition[0]); - } - - if ($macroClassName === false || ! $this->reflectionProvider->hasClass($macroClassName) || ! $this->reflectionProvider->getClass($macroClassName)->hasNativeMethod($macroDefinition[1])) { - throw new ShouldNotHappenException('Class ' . $macroClassName . ' does not exist'); - } - - $methodReflection = $this->reflectionProvider->getClass($macroClassName)->getNativeMethod($macroDefinition[1]); - } else { - $methodReflection = new Macro( - $macroClassReflection, - $methodName, - $this->closureTypeFactory->fromClosureObject($refProperty->getValue()[$methodName]), - ); - - $methodReflection->setIsStatic(true); - } - - $this->methods[$classReflection->getName() . '-' . $methodName] = $methodReflection; - - break; - } - } - - return $found; - } - - public function getMethod( - ClassReflection $classReflection, - string $methodName, - ): MethodReflection { - return $this->methods[$classReflection->getName() . '-' . $methodName]; - } - - private function hasIndirectTraitUse(ClassReflection $class, string $traitName): bool - { - foreach ($class->getTraits() as $trait) { - if ($this->hasIndirectTraitUse($trait, $traitName)) { - return true; - } - } - - return $class->hasTraitUse($traitName); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Methods/ModelFactoryMethodsClassReflectionExtension.php b/docker/statistics/vendor/larastan/larastan/src/Methods/ModelFactoryMethodsClassReflectionExtension.php deleted file mode 100644 index 6312dcbc..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Methods/ModelFactoryMethodsClassReflectionExtension.php +++ /dev/null @@ -1,169 +0,0 @@ -isSubclassOf(Factory::class)) { - return false; - } - - $modelType = $classReflection->getActiveTemplateTypeMap()->getType('TModel'); - - // Generic type is not specified - if ($modelType === null) { - if (! $classReflection->isGeneric() && $classReflection->getParentClass()?->isGeneric()) { - $modelType = $classReflection->getParentClass()->getActiveTemplateTypeMap()->getType('TModel'); - } - } - - if ($modelType === null) { - return false; - } - - if ($modelType->getObjectClassReflections() !== []) { - $modelReflection = $modelType->getObjectClassReflections()[0]; - } else { - $modelReflection = $this->reflectionProvider->getClass(Model::class); - } - - if ($methodName === 'trashed' && array_key_exists(SoftDeletes::class, $modelReflection->getTraits(true))) { - return true; - } - - if (! Str::startsWith($methodName, ['for', 'has'])) { - return false; - } - - $relationship = Str::camel(Str::substr($methodName, 3)); - - return $modelType->hasMethod($relationship)->yes(); - } - - public function getMethod( - ClassReflection $classReflection, - string $methodName, - ): MethodReflection { - return new class ($classReflection, $methodName) implements MethodReflection - { - public function __construct(private ClassReflection $classReflection, private string $methodName) - { - } - - public function getDeclaringClass(): ClassReflection - { - return $this->classReflection; - } - - public function isStatic(): bool - { - return false; - } - - public function isPrivate(): bool - { - return false; - } - - public function isPublic(): bool - { - return true; - } - - public function getDocComment(): string|null - { - return null; - } - - public function getName(): string - { - return $this->methodName; - } - - public function getPrototype(): ClassMemberReflection - { - return $this; - } - - /** @return ParametersAcceptor[] */ - public function getVariants(): array - { - $returnType = new ObjectType($this->classReflection->getName()); - $stateParameter = $this->classReflection->getMethod('state', new OutOfClassScope())->getVariants()[0]->getParameters()[0]; - $countParameter = $this->classReflection->getMethod('count', new OutOfClassScope())->getVariants()[0]->getParameters()[0]; - - $variants = [ - new FunctionVariant(TemplateTypeMap::createEmpty(), null, [], false, $returnType), - ]; - - if (Str::startsWith($this->methodName, 'for')) { - $variants[] = new FunctionVariant(TemplateTypeMap::createEmpty(), null, [$stateParameter], false, $returnType); - } else { - $variants[] = new FunctionVariant(TemplateTypeMap::createEmpty(), null, [$countParameter], false, $returnType); - $variants[] = new FunctionVariant(TemplateTypeMap::createEmpty(), null, [$stateParameter], false, $returnType); - $variants[] = new FunctionVariant(TemplateTypeMap::createEmpty(), null, [$countParameter, $stateParameter], false, $returnType); - } - - return $variants; - } - - public function isDeprecated(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function getDeprecatedDescription(): string|null - { - return null; - } - - public function isFinal(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function isInternal(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function getThrowType(): Type|null - { - return null; - } - - public function hasSideEffects(): TrinaryLogic - { - return TrinaryLogic::createMaybe(); - } - }; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Methods/ModelForwardsCallsExtension.php b/docker/statistics/vendor/larastan/larastan/src/Methods/ModelForwardsCallsExtension.php deleted file mode 100644 index be1ed90a..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Methods/ModelForwardsCallsExtension.php +++ /dev/null @@ -1,236 +0,0 @@ - */ - private array $cache = []; - - public function __construct(private BuilderHelper $builderHelper, private ReflectionProvider $reflectionProvider, private EloquentBuilderForwardsCallsExtension $eloquentBuilderForwardsCallsExtension) - { - } - - /** - * @throws MissingMethodFromReflectionException - * @throws ShouldNotHappenException - */ - public function hasMethod(ClassReflection $classReflection, string $methodName): bool - { - if (array_key_exists($classReflection->getCacheKey() . '-' . $methodName, $this->cache)) { - return true; - } - - $methodReflection = $this->findMethod($classReflection, $methodName); - - if ($methodReflection !== null) { - $this->cache[$classReflection->getCacheKey() . '-' . $methodName] = $methodReflection; - - return true; - } - - return false; - } - - public function getMethod(ClassReflection $classReflection, string $methodName): MethodReflection - { - return $this->cache[$classReflection->getCacheKey() . '-' . $methodName]; - } - - /** - * @throws ShouldNotHappenException - * @throws MissingMethodFromReflectionException - */ - private function findMethod(ClassReflection $classReflection, string $methodName): MethodReflection|null - { - if (! $classReflection->is(Model::class)) { - return null; - } - - $builderName = $this->builderHelper->determineBuilderName($classReflection->getName()); - - if (in_array($methodName, ['increment', 'decrement'], true)) { - $methodReflection = $classReflection->getNativeMethod($methodName); - - return new class ($classReflection, $methodName, $methodReflection) implements MethodReflection - { - private ClassReflection $classReflection; - - private string $methodName; - - private MethodReflection $methodReflection; - - public function __construct(ClassReflection $classReflection, string $methodName, MethodReflection $methodReflection) - { - $this->classReflection = $classReflection; - $this->methodName = $methodName; - $this->methodReflection = $methodReflection; - } - - public function getDeclaringClass(): ClassReflection - { - return $this->classReflection; - } - - public function isStatic(): bool - { - return false; - } - - public function isPrivate(): bool - { - return false; - } - - public function isPublic(): bool - { - return true; - } - - public function getDocComment(): string|null - { - return null; - } - - public function getName(): string - { - return $this->methodName; - } - - public function getPrototype(): ClassMemberReflection - { - return $this; - } - - /** @return ParametersAcceptor[] */ - public function getVariants(): array - { - return $this->methodReflection->getVariants(); - } - - public function isDeprecated(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function getDeprecatedDescription(): string|null - { - return null; - } - - public function isFinal(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function isInternal(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function getThrowType(): Type|null - { - return null; - } - - public function hasSideEffects(): TrinaryLogic - { - return TrinaryLogic::createYes(); - } - }; - } - - $builderReflection = $this->reflectionProvider->getClass($builderName)->withTypes([new ObjectType($classReflection->getName())]); - - if ($builderReflection->isGeneric()) { - $genericBuilderAndModelType = new GenericObjectType($builderName, [new ObjectType($classReflection->getName())]); - } else { - $genericBuilderAndModelType = new ObjectType($builderName); - } - - if ($builderReflection->hasNativeMethod($methodName)) { - $reflection = $builderReflection->getNativeMethod($methodName); - - $parametersAcceptor = $this->transformStaticParameters($reflection, $genericBuilderAndModelType); - - $returnType = TypeTraverser::map($parametersAcceptor->getReturnType(), static function (Type $type, callable $traverse) use ($genericBuilderAndModelType) { - if ($type instanceof TypeWithClassName && $type->getClassName() === Builder::class) { - return $genericBuilderAndModelType; - } - - return $traverse($type); - }); - - return new EloquentBuilderMethodReflection( - $methodName, - $builderReflection, - $parametersAcceptor->getParameters(), - $returnType, - $parametersAcceptor->isVariadic(), - ); - } - - if ($this->eloquentBuilderForwardsCallsExtension->hasMethod($builderReflection, $methodName)) { - return $this->eloquentBuilderForwardsCallsExtension->getMethod($builderReflection, $methodName); - } - - return null; - } - - private function transformStaticParameters(MethodReflection $method, ObjectType $builder): ParametersAcceptor - { - $acceptor = $method->getVariants()[0]; - - return new FunctionVariant($acceptor->getTemplateTypeMap(), $acceptor->getResolvedTemplateTypeMap(), array_map(function ( - ParameterReflection $parameter, - ) use ($builder): ParameterReflection { - return new DummyParameter( - $parameter->getName(), - $this->transformStaticType($parameter->getType(), $builder), - $parameter->isOptional(), - $parameter->passedByReference(), - $parameter->isVariadic(), - $parameter->getDefaultValue(), - ); - }, $acceptor->getParameters()), $acceptor->isVariadic(), $this->transformStaticType($acceptor->getReturnType(), $builder)); - } - - private function transformStaticType(Type $type, ObjectType $builder): Type - { - return TypeTraverser::map($type, static function (Type $type, callable $traverse) use ($builder): Type { - if ($type instanceof StaticType) { - return $builder; - } - - return $traverse($type); - }); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Methods/ModelTypeHelper.php b/docker/statistics/vendor/larastan/larastan/src/Methods/ModelTypeHelper.php deleted file mode 100644 index e0015a12..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Methods/ModelTypeHelper.php +++ /dev/null @@ -1,31 +0,0 @@ -getClassName() === Model::class) { - return new ObjectType($modelClass); - } - - return $traverse($type); - }); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Methods/Passable.php b/docker/statistics/vendor/larastan/larastan/src/Methods/Passable.php deleted file mode 100644 index ea65fe24..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Methods/Passable.php +++ /dev/null @@ -1,139 +0,0 @@ -classReflection; - } - - public function setClassReflection(ClassReflection $classReflection): PassableContract - { - $this->classReflection = $classReflection; - - return $this; - } - - public function getMethodName(): string - { - return $this->methodName; - } - - public function hasFound(): bool - { - return $this->methodReflection !== null; - } - - public function searchOn(string $class): bool - { - if (! $this->reflectionProvider->hasClass($class)) { - return false; - } - - $classReflection = $this->reflectionProvider->getClass($class); - - $found = $classReflection->hasNativeMethod($this->methodName); - - if ($found) { - $this->setMethodReflection($classReflection->getNativeMethod($this->methodName)); - } - - return $found; - } - - public function getMethodReflection(): MethodReflection - { - if ($this->methodReflection === null) { - throw new LogicException("MethodReflection doesn't exist"); - } - - return $this->methodReflection; - } - - public function setMethodReflection(MethodReflection $methodReflection): void - { - $this->methodReflection = $methodReflection; - } - - public function setStaticAllowed(bool $staticAllowed): void - { - $this->staticAllowed = $staticAllowed; - } - - public function isStaticAllowed(): bool - { - return $this->staticAllowed; - } - - public function sendToPipeline(string $class, bool $staticAllowed = false): bool - { - if (! $this->reflectionProvider->hasClass($class)) { - return false; - } - - $classReflection = $this->reflectionProvider->getClass($class); - - $this->setStaticAllowed($this->staticAllowed ?: $staticAllowed); - - $originalClassReflection = $this->classReflection; - $this->pipeline->send($this->setClassReflection($classReflection)) - ->then( - function (PassableContract $passable) use ($originalClassReflection): void { - if ($passable->hasFound()) { - $this->setMethodReflection($passable->getMethodReflection()); - $this->setStaticAllowed($passable->isStaticAllowed()); - } - - $this->setClassReflection($originalClassReflection); - }, - ); - - $result = $this->hasFound(); - - if ($result) { - $this->setMethodReflection(new StaticMethodReflection($this->getMethodReflection())); - } - - return $result; - } - - public function getReflectionProvider(): ReflectionProvider - { - return $this->reflectionProvider; - } - - public function getMethodReflectionFactory(): PhpMethodReflectionFactory - { - return $this->methodReflectionFactory; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Methods/Pipes/Auths.php b/docker/statistics/vendor/larastan/larastan/src/Methods/Pipes/Auths.php deleted file mode 100644 index dfd06999..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Methods/Pipes/Auths.php +++ /dev/null @@ -1,64 +0,0 @@ -getClassReflection() - ->getName(); - - $found = false; - - $config = $this->resolve('config'); - - if ($config !== null && in_array($classReflectionName, $this->classes, true)) { - $authModels = $this->getAuthModels($config); - - foreach ($authModels as $authModel) { - if ($passable->sendToPipeline($authModel)) { - $found = true; - - break; - } - } - } elseif ($classReflectionName === Factory::class || $classReflectionName === AuthManager::class) { - $found = $passable->sendToPipeline( - Guard::class, - ); - } - - if ($found) { - return; - } - - $next($passable); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Methods/Pipes/Contracts.php b/docker/statistics/vendor/larastan/larastan/src/Methods/Pipes/Contracts.php deleted file mode 100644 index f3e6ef1d..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Methods/Pipes/Contracts.php +++ /dev/null @@ -1,55 +0,0 @@ -concretes($passable->getClassReflection()) as $concrete) { - if ($passable->sendToPipeline($concrete)) { - $found = true; - - break; - } - } - - if ($found) { - return; - } - - $next($passable); - } - - /** @return class-string[] */ - private function concretes(ClassReflection $classReflection): array - { - if ($classReflection->isInterface() && Str::startsWith($classReflection->getName(), 'Illuminate\Contracts')) { - $concrete = $this->resolve($classReflection->getName()); - - if ($concrete !== null) { - $class = $concrete::class; - - if ($class) { - return [$class]; - } - } - } - - return []; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Methods/Pipes/Facades.php b/docker/statistics/vendor/larastan/larastan/src/Methods/Pipes/Facades.php deleted file mode 100644 index ca060c6c..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Methods/Pipes/Facades.php +++ /dev/null @@ -1,77 +0,0 @@ -getClassReflection(); - - $found = false; - - if ($classReflection->isSubclassOf(Facade::class)) { - $facadeClass = $classReflection->getName(); - - if (ReflectionHelper::hasMethodTag($classReflection, $passable->getMethodName())) { - $next($passable); - - return; - } - - $concrete = null; - - try { - $concrete = $facadeClass::getFacadeRoot(); - } catch (Throwable) { - } - - if ($concrete) { - $class = $concrete::class; - - if ($class) { - $found = $passable->sendToPipeline($class, true); - } - } - - if (! $found && Str::startsWith($passable->getMethodName(), 'assert')) { - $fakeFacadeClass = $this->getFake($facadeClass); - - if ($passable->getReflectionProvider()->hasClass($fakeFacadeClass)) { - assert(class_exists($fakeFacadeClass)); - $found = $passable->sendToPipeline($fakeFacadeClass, true); - } - } - } - - if ($found) { - return; - } - - $next($passable); - } - - private function getFake(string $facade): string - { - $shortClassName = substr($facade, strrpos($facade, '\\') + 1); - - return sprintf('\\Illuminate\\Support\\Testing\\Fakes\\%sFake', $shortClassName); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Methods/Pipes/Managers.php b/docker/statistics/vendor/larastan/larastan/src/Methods/Pipes/Managers.php deleted file mode 100644 index e4292fd4..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Methods/Pipes/Managers.php +++ /dev/null @@ -1,53 +0,0 @@ -getClassReflection(); - - $found = false; - - if ($classReflection->isSubclassOf(Manager::class) && ! $classReflection->isAbstract()) { - $driver = null; - - $concrete = $this->resolve( - $classReflection->getName(), - ); - - try { - $driver = $concrete->driver(); - } catch (InvalidArgumentException) { - // .. - } - - if ($driver !== null) { - $class = $driver::class; - - if ($class) { - $found = $passable->sendToPipeline($class); - } - } - } - - if ($found) { - return; - } - - $next($passable); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Methods/Pipes/SelfClass.php b/docker/statistics/vendor/larastan/larastan/src/Methods/Pipes/SelfClass.php deleted file mode 100644 index 88e6a0b7..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Methods/Pipes/SelfClass.php +++ /dev/null @@ -1,25 +0,0 @@ -getClassReflection() - ->getName(); - - if ($passable->searchOn($className)) { - return; - } - - $next($passable); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Methods/RedirectResponseMethodsClassReflectionExtension.php b/docker/statistics/vendor/larastan/larastan/src/Methods/RedirectResponseMethodsClassReflectionExtension.php deleted file mode 100644 index 19de7b34..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Methods/RedirectResponseMethodsClassReflectionExtension.php +++ /dev/null @@ -1,34 +0,0 @@ -getName() !== 'Illuminate\Http\RedirectResponse') { - return false; - } - - // @phpcs:ignore - if (! str_starts_with($methodName, 'with')) { - return false; - } - - return true; - } - - public function getMethod( - Reflection\ClassReflection $classReflection, - string $methodName, - ): Reflection\MethodReflection { - return new DynamicWhereMethodReflection($classReflection, $methodName); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Methods/RelationForwardsCallsExtension.php b/docker/statistics/vendor/larastan/larastan/src/Methods/RelationForwardsCallsExtension.php deleted file mode 100644 index beaa9ffb..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Methods/RelationForwardsCallsExtension.php +++ /dev/null @@ -1,107 +0,0 @@ - */ - private array $cache = []; - - public function __construct(private BuilderHelper $builderHelper, private ReflectionProvider $reflectionProvider) - { - } - - public function hasMethod(ClassReflection $classReflection, string $methodName): bool - { - if (array_key_exists($classReflection->getCacheKey() . '-' . $methodName, $this->cache)) { - return true; - } - - $methodReflection = $this->findMethod($classReflection, $methodName); - - if ($methodReflection !== null) { - $this->cache[$classReflection->getCacheKey() . '-' . $methodName] = $methodReflection; - - return true; - } - - return false; - } - - public function getMethod( - ClassReflection $classReflection, - string $methodName, - ): MethodReflection { - return $this->cache[$classReflection->getCacheKey() . '-' . $methodName]; - } - - /** - * @throws MissingMethodFromReflectionException - * @throws ShouldNotHappenException - */ - private function findMethod(ClassReflection $classReflection, string $methodName): MethodReflection|null - { - if (! $classReflection->is(Relation::class)) { - return null; - } - - $relatedModel = $classReflection->getActiveTemplateTypeMap()->getType('TRelatedModel'); - - if ($relatedModel === null) { - return null; - } - - if ($relatedModel->getObjectClassReflections() !== []) { - $modelReflection = $relatedModel->getObjectClassReflections()[0]; - } else { - $modelReflection = $this->reflectionProvider->getClass(Model::class); - } - - if (! $modelReflection->is(Model::class)) { - return null; - } - - $builderName = $this->builderHelper->determineBuilderName($modelReflection->getName()); - $builderType = new GenericObjectType($builderName, [new ObjectType($modelReflection->getName())]); - - if (! $builderType->hasMethod($methodName)->yes()) { - return null; - } - - $reflection = $builderType->getMethod($methodName, new OutOfClassScope()); - - $parametersAcceptor = $reflection->getVariants()[0]; - $returnType = $parametersAcceptor->getReturnType(); - - if ((new ObjectType(Builder::class))->isSuperTypeOf($returnType)->yes()) { - $returnType = new ThisType($classReflection); - } - - return new EloquentBuilderMethodReflection( - $methodName, - $reflection->getDeclaringClass(), - $parametersAcceptor->getParameters(), - $returnType, - $parametersAcceptor->isVariadic(), - ); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Methods/StorageMethodsClassReflectionExtension.php b/docker/statistics/vendor/larastan/larastan/src/Methods/StorageMethodsClassReflectionExtension.php deleted file mode 100644 index c3d1a44b..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Methods/StorageMethodsClassReflectionExtension.php +++ /dev/null @@ -1,55 +0,0 @@ -getName() !== Storage::class) { - return false; - } - - if ($this->reflectionProvider->getClass(FilesystemManager::class)->hasMethod($methodName)) { - return true; - } - - // @phpcs:ignore - if ($this->reflectionProvider->getClass(FilesystemAdapter::class)->hasMethod($methodName)) { - return true; - } - - return false; - } - - public function getMethod( - ClassReflection $classReflection, - string $methodName, - ): MethodReflection { - if ($this->reflectionProvider->getClass(FilesystemManager::class)->hasMethod($methodName)) { - return new StaticMethodReflection( - $this->reflectionProvider->getClass(FilesystemManager::class)->getMethod($methodName, new OutOfClassScope()), - ); - } - - return new StaticMethodReflection( - $this->reflectionProvider->getClass(FilesystemAdapter::class)->getMethod($methodName, new OutOfClassScope()), - ); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Methods/ViewWithMethodsClassReflectionExtension.php b/docker/statistics/vendor/larastan/larastan/src/Methods/ViewWithMethodsClassReflectionExtension.php deleted file mode 100644 index 2b9ff686..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Methods/ViewWithMethodsClassReflectionExtension.php +++ /dev/null @@ -1,37 +0,0 @@ -getName(), ['Illuminate\View\View', 'Illuminate\Contracts\View\View'], true)) { - return false; - } - - // @phpcs:ignore - if (! str_starts_with($methodName, 'with')) { - return false; - } - - return true; - } - - public function getMethod( - ClassReflection $classReflection, - string $methodName, - ): MethodReflection { - return new DynamicWhereMethodReflection($classReflection, $methodName); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Properties/HigherOrderCollectionProxyPropertyExtension.php b/docker/statistics/vendor/larastan/larastan/src/Properties/HigherOrderCollectionProxyPropertyExtension.php deleted file mode 100644 index 0da449ee..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Properties/HigherOrderCollectionProxyPropertyExtension.php +++ /dev/null @@ -1,124 +0,0 @@ -higherOrderCollectionProxyHelper->hasPropertyOrMethod($classReflection, $propertyName, 'property'); - } - - public function getProperty( - ClassReflection $classReflection, - string $propertyName, - ): PropertyReflection { - $activeTemplateTypeMap = $classReflection->getActiveTemplateTypeMap(); - - /** @var Type\Constant\ConstantStringType $methodType */ - $methodType = $activeTemplateTypeMap->getType('T'); - - /** @var Type\ObjectType $modelType */ - $modelType = $activeTemplateTypeMap->getType('TValue'); - - /** @var Type\Type $collectionType */ - $collectionType = $activeTemplateTypeMap->getType('TCollection'); - - $propertyType = $modelType->getProperty($propertyName, new OutOfClassScope())->getReadableType(); - - if ($collectionType->getObjectClassNames() !== []) { - $collectionClassName = $collectionType->getObjectClassNames()[0]; - } else { - $collectionClassName = Collection::class; - } - - $returnType = $this->higherOrderCollectionProxyHelper->determineReturnType($methodType->getValue(), $modelType, $propertyType, $collectionClassName); - - return new class ($classReflection, $returnType) implements PropertyReflection - { - public function __construct(private ClassReflection $classReflection, private Type\Type $returnType) - { - } - - public function getDeclaringClass(): ClassReflection - { - return $this->classReflection; - } - - public function isStatic(): bool - { - return false; - } - - public function isPrivate(): bool - { - return false; - } - - public function isPublic(): bool - { - return true; - } - - public function getDocComment(): string|null - { - return null; - } - - public function getReadableType(): Type\Type - { - return $this->returnType; - } - - public function getWritableType(): Type\Type - { - return $this->returnType; - } - - public function canChangeTypeAfterAssignment(): bool - { - return false; - } - - public function isReadable(): bool - { - return true; - } - - public function isWritable(): bool - { - return false; - } - - public function isDeprecated(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function getDeprecatedDescription(): string|null - { - return null; - } - - public function isInternal(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - }; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Properties/MigrationHelper.php b/docker/statistics/vendor/larastan/larastan/src/Properties/MigrationHelper.php deleted file mode 100644 index cee55a98..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Properties/MigrationHelper.php +++ /dev/null @@ -1,94 +0,0 @@ - $tables - * - * @return array - */ - public function initializeTables(array $tables = []): array - { - if ($this->disableMigrationScan) { - return $tables; - } - - if (count($this->databaseMigrationPath) === 0) { - $this->databaseMigrationPath = [database_path('migrations')]; - } - - $schemaAggregator = new SchemaAggregator($this->reflectionProvider, $tables); - $filesArray = $this->getMigrationFiles(); - - if (empty($filesArray)) { - return $tables; - } - - uasort($filesArray, static function (SplFileInfo $a, SplFileInfo $b) { - return $a->getFilename() <=> $b->getFilename(); - }); - - foreach ($filesArray as $file) { - try { - $schemaAggregator->addStatements($this->parser->parseFile($file->getPathname())); - } catch (ParserErrorsException) { - continue; - } - } - - return $schemaAggregator->tables; - } - - /** @return SplFileInfo[] */ - private function getMigrationFiles(): array - { - /** @var SplFileInfo[] $migrationFiles */ - $migrationFiles = []; - - foreach ($this->databaseMigrationPath as $additionalPath) { - $absolutePath = $this->fileHelper->absolutizePath($additionalPath); - - if (! is_dir($absolutePath)) { - continue; - } - - $migrationFiles += iterator_to_array( - new RegexIterator( - new RecursiveIteratorIterator(new RecursiveDirectoryIterator($absolutePath)), - '/\.php$/i', - ), - ); - } - - return $migrationFiles; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Properties/ModelAccessorExtension.php b/docker/statistics/vendor/larastan/larastan/src/Properties/ModelAccessorExtension.php deleted file mode 100644 index 3ec9874b..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Properties/ModelAccessorExtension.php +++ /dev/null @@ -1,28 +0,0 @@ -modelPropertyHelper->hasAccessor($classReflection, $propertyName, strictGenerics: true); - } - - public function getProperty(ClassReflection $classReflection, string $propertyName): PropertyReflection - { - return $this->modelPropertyHelper->getAccessor($classReflection, $propertyName); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Properties/ModelCastHelper.php b/docker/statistics/vendor/larastan/larastan/src/Properties/ModelCastHelper.php deleted file mode 100644 index 2d5ae57b..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Properties/ModelCastHelper.php +++ /dev/null @@ -1,269 +0,0 @@ -> */ - private array $modelCasts = []; - - public function __construct( - protected ReflectionProvider $reflectionProvider, - ) { - } - - public function getReadableType(string $cast, Type $originalType): Type - { - $cast = $this->parseCast($cast); - - $attributeType = match ($cast) { - 'int', 'integer', 'timestamp' => new IntegerType(), - 'real', 'float', 'double' => new FloatType(), - 'decimal' => TypeCombinator::intersect(new StringType(), new AccessoryNumericStringType()), - 'string' => new StringType(), - 'bool', 'boolean' => new BooleanType(), - 'object' => new ObjectType(stdClass::class), - 'array', 'json' => new ArrayType(new BenevolentUnionType([new IntegerType(), new StringType()]), new MixedType()), - 'collection' => new ObjectType(Collection::class), - 'date', 'datetime' => $this->getDateType(), - 'immutable_date', 'immutable_datetime' => new ObjectType(CarbonImmutable::class), - AsArrayObject::class, AsEncryptedArrayObject::class => new ObjectType(ArrayObject::class), - AsCollection::class, AsEncryptedCollection::class => new GenericObjectType(Collection::class, [new BenevolentUnionType([new IntegerType(), new StringType()]), new MixedType()]), - AsStringable::class => new ObjectType(IlluminateStringable::class), - default => null, - }; - - if ($attributeType) { - return $attributeType; - } - - if (! $this->reflectionProvider->hasClass($cast)) { - return $originalType; - } - - $classReflection = $this->reflectionProvider->getClass($cast); - - if ($classReflection->isEnum()) { - return new ObjectType($cast); - } - - if ($classReflection->isSubclassOf(Castable::class)) { - $methodReflection = $classReflection->getNativeMethod('castUsing'); - $castUsingReturn = $methodReflection->getVariants()[0]->getReturnType(); - - if ($castUsingReturn->getObjectClassReflections() !== []) { - $classReflection = $castUsingReturn->getObjectClassReflections()[0]; - } - } - - if ($classReflection->isSubclassOf(CastsAttributes::class)) { - $methodReflection = $classReflection->getNativeMethod('get'); - - return $methodReflection->getVariants()[0]->getReturnType(); - } - - if ($classReflection->isSubclassOf(CastsInboundAttributes::class)) { - return $originalType; - } - - return new MixedType(); - } - - public function getWriteableType(string $cast, Type $originalType): Type - { - $cast = $this->parseCast($cast); - - $attributeType = match ($cast) { - 'int', 'integer', 'timestamp' => new IntegerType(), - 'real', 'float', 'double' => new FloatType(), - 'decimal' => TypeCombinator::intersect(new StringType(), new AccessoryNumericStringType(), new FloatType()), - 'string' => new StringType(), - 'bool', 'boolean' => TypeCombinator::union(new BooleanType(), new ConstantIntegerType(0), new ConstantIntegerType(1)), - 'object' => new ObjectType(stdClass::class), - 'array', 'json' => new ArrayType(new BenevolentUnionType([new IntegerType(), new StringType()]), new MixedType()), - 'collection' => new ObjectType(Collection::class), - 'date', 'datetime' => $this->getDateType(), - 'immutable_date', 'immutable_datetime' => new ObjectType(CarbonImmutable::class), - AsArrayObject::class, AsCollection::class, - AsEncryptedArrayObject::class, AsEncryptedCollection::class => new MixedType(), - AsStringable::class => TypeCombinator::union(new StringType(), new ObjectType(Stringable::class)), - default => null, - }; - - if ($attributeType) { - return $attributeType; - } - - if (! $this->reflectionProvider->hasClass($cast)) { - return $originalType; - } - - $classReflection = $this->reflectionProvider->getClass($cast); - - if ($classReflection->isEnum()) { - return new ObjectType($cast); - } - - if ($classReflection->isSubclassOf(Castable::class)) { - $methodReflection = $classReflection->getNativeMethod('castUsing'); - $castUsingReturn = $methodReflection->getVariants()[0]->getReturnType(); - - if ($castUsingReturn->getObjectClassReflections() !== []) { - $classReflection = $castUsingReturn->getObjectClassReflections()[0]; - } - } - - if ( - $classReflection->isSubclassOf(CastsAttributes::class) - || $classReflection->isSubclassOf(CastsInboundAttributes::class) - ) { - $methodReflection = $classReflection->getNativeMethod('set'); - $parameters = $methodReflection->getVariants()[0]->getParameters(); - - $valueParameter = Arr::first($parameters, static fn (ParameterReflection $parameterReflection) => $parameterReflection->getName() === 'value'); - - if ($valueParameter) { - return $valueParameter->getType(); - } - } - - return new MixedType(); - } - - public function getDateType(): Type - { - $dateClass = class_exists(Date::class) - ? Date::now()::class - : IlluminateCarbon::class; - - if ($dateClass === IlluminateCarbon::class) { - return TypeCombinator::union(new ObjectType($dateClass), new ObjectType(Carbon::class)); - } - - return new ObjectType($dateClass); - } - - private function parseCast(string $cast): string - { - foreach (explode(':', $cast) as $part) { - // If the cast is prefixed with `encrypted:` we need to skip to the next - if ($part === 'encrypted') { - continue; - } - - return $part; - } - - return $cast; - } - - public function hasCastForProperty(ClassReflection $modelClassReflection, string $propertyName): bool - { - if (! array_key_exists($modelClassReflection->getName(), $this->modelCasts)) { - $modelCasts = $this->getModelCasts($modelClassReflection); - } else { - $modelCasts = $this->modelCasts[$modelClassReflection->getName()]; - } - - return array_key_exists($propertyName, $modelCasts); - } - - public function getCastForProperty(ClassReflection $modelClassReflection, string $propertyName): string|null - { - if (! array_key_exists($modelClassReflection->getName(), $this->modelCasts)) { - $modelCasts = $this->getModelCasts($modelClassReflection); - } else { - $modelCasts = $this->modelCasts[$modelClassReflection->getName()]; - } - - return $modelCasts[$propertyName] ?? null; - } - - /** - * @return array - * - * @throws ShouldNotHappenException - * @throws MissingMethodFromReflectionException - */ - private function getModelCasts(ClassReflection $modelClassReflection): array - { - try { - /** @var Model $modelInstance */ - $modelInstance = $modelClassReflection->getNativeReflection()->newInstanceWithoutConstructor(); - } catch (ReflectionException) { - throw new ShouldNotHappenException(); - } - - $modelCasts = $modelInstance->getCasts(); - - if (version_compare(LARAVEL_VERSION, '11.0.0', '>=')) { - $castsMethodReturnType = $modelClassReflection->getMethod( - 'casts', - new OutOfClassScope(), - )->getVariants()[0]->getReturnType(); - - if ($castsMethodReturnType->isConstantArray()->yes()) { - $modelCasts = array_merge( - $modelCasts, - array_combine( - array_map(static fn ($key) => $key->getValue(), $castsMethodReturnType->getKeyTypes()), // @phpstan-ignore-line - array_map(static fn ($value) => str_replace('\\\\', '\\', $value->getValue()), $castsMethodReturnType->getValueTypes()), // @phpstan-ignore-line - ), - ); - } - } - - return $modelCasts; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Properties/ModelProperty.php b/docker/statistics/vendor/larastan/larastan/src/Properties/ModelProperty.php deleted file mode 100644 index f2a425ed..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Properties/ModelProperty.php +++ /dev/null @@ -1,82 +0,0 @@ -declaringClass; - } - - public function isStatic(): bool - { - return false; - } - - public function isPrivate(): bool - { - return false; - } - - public function isPublic(): bool - { - return true; - } - - public function isReadable(): bool - { - return true; - } - - public function isWritable(): bool - { - return $this->writeable; - } - - public function getDocComment(): string|null - { - return null; - } - - public function getReadableType(): Type - { - return $this->readableType; - } - - public function getWritableType(): Type - { - return $this->writableType; - } - - public function canChangeTypeAfterAssignment(): bool - { - return false; - } - - public function isDeprecated(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function getDeprecatedDescription(): string|null - { - return null; - } - - public function isInternal(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Properties/ModelPropertyExtension.php b/docker/statistics/vendor/larastan/larastan/src/Properties/ModelPropertyExtension.php deleted file mode 100644 index e8ba1be6..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Properties/ModelPropertyExtension.php +++ /dev/null @@ -1,32 +0,0 @@ -modelPropertyHelper->hasAccessor($classReflection, $propertyName, strictGenerics: false)) { - return false; - } - - return $this->modelPropertyHelper->hasDatabaseProperty($classReflection, $propertyName); - } - - public function getProperty(ClassReflection $classReflection, string $propertyName): PropertyReflection - { - return $this->modelPropertyHelper->getDatabaseProperty($classReflection, $propertyName); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Properties/ModelPropertyHelper.php b/docker/statistics/vendor/larastan/larastan/src/Properties/ModelPropertyHelper.php deleted file mode 100644 index a0a10895..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Properties/ModelPropertyHelper.php +++ /dev/null @@ -1,243 +0,0 @@ - */ - private array $tables = []; - - public function __construct( - private TypeStringResolver $stringResolver, - private MigrationHelper $migrationHelper, - private SquashedMigrationHelper $squashedMigrationHelper, - private ModelCastHelper $modelCastHelper, - ) { - } - - /** - * Determine if the model has a database property. - */ - public function hasDatabaseProperty(ClassReflection|string $classReflectionOrTable, string $propertyName): bool - { - if (! $this->migrationsLoaded()) { - $this->loadMigrations(); - } - - if (is_string($classReflectionOrTable)) { - if (! array_key_exists($classReflectionOrTable, $this->tables)) { - return false; - } - - return array_key_exists($propertyName, $this->tables[$classReflectionOrTable]->columns); - } - - if (! $classReflectionOrTable->isSubclassOf(Model::class)) { - return false; - } - - if ($classReflectionOrTable->isAbstract()) { - return false; - } - - if (ReflectionHelper::hasPropertyTag($classReflectionOrTable, $propertyName)) { - return false; - } - - try { - /** @var Model $modelInstance */ - $modelInstance = $classReflectionOrTable->getNativeReflection()->newInstanceWithoutConstructor(); - } catch (ReflectionException) { - return false; - } - - if ($propertyName === $modelInstance->getKeyName()) { - return true; - } - - $tableName = $modelInstance->getTable(); - - if (! array_key_exists($tableName, $this->tables)) { - return false; - } - - return array_key_exists($propertyName, $this->tables[$tableName]->columns); - } - - public function getDatabaseProperty(ClassReflection $classReflection, string $propertyName): ModelProperty - { - try { - /** @var Model $modelInstance */ - $modelInstance = $classReflection->getNativeReflection()->newInstanceWithoutConstructor(); - } catch (ReflectionException) { - throw new ShouldNotHappenException(); - } - - $tableName = $modelInstance->getTable(); - - if ( - $propertyName === $modelInstance->getKeyName() - && (! array_key_exists($tableName, $this->tables) || ! array_key_exists($propertyName, $this->tables[$tableName]->columns)) - ) { - return new ModelProperty( - $classReflection, - $this->stringResolver->resolve($modelInstance->getKeyType()), - $this->stringResolver->resolve($modelInstance->getKeyType()), - ); - } - - $column = $this->tables[$tableName]->columns[$propertyName]; - - if ($this->hasDate($modelInstance, $propertyName)) { - $readableType = $this->modelCastHelper->getDateType(); - $writableType = TypeCombinator::union($this->modelCastHelper->getDateType(), new StringType()); - } else { - $cast = $this->modelCastHelper->getCastForProperty($classReflection, $propertyName); - - if ($cast !== null) { - $readableType = $this->modelCastHelper->getReadableType( - $cast, - $this->stringResolver->resolve($column->readableType), - ); - $writableType = $this->modelCastHelper->getWriteableType( - $cast, - $this->stringResolver->resolve($column->writeableType), - ); - } elseif (in_array($column->readableType, ['enum', 'set'], true)) { - if ($column->options === null || count($column->options) < 1) { - $readableType = $writableType = new StringType(); - } else { - $readableType = $writableType = TypeCombinator::union(...array_map( - static fn ($option) => new ConstantStringType($option), - $column->options, - )); - } - } else { - $readableType = $this->stringResolver->resolve($column->readableType); - $writableType = $this->stringResolver->resolve($column->writeableType); - } - } - - if ($column->nullable) { - $readableType = TypeCombinator::addNull($readableType); - $writableType = TypeCombinator::addNull($writableType); - } - - return new ModelProperty( - $classReflection, - $readableType, - $writableType, - ); - } - - /** - * Determine if the model has a property accessor. - * - * @param bool $strictGenerics Requires the Attribute generics to be defined. - */ - public function hasAccessor(ClassReflection $classReflection, string $propertyName, bool $strictGenerics = true): bool - { - if (! $classReflection->isSubclassOf(Model::class)) { - return false; - } - - $camelCase = Str::camel($propertyName); - - if (! $classReflection->hasNativeMethod($camelCase)) { - return $classReflection->hasNativeMethod('get' . Str::studly($propertyName) . 'Attribute'); - } - - $methodReflection = $classReflection->getNativeMethod($camelCase); - - if ($methodReflection->isPublic() || $methodReflection->isPrivate()) { - return false; - } - - $returnType = $methodReflection->getVariants()[0]->getReturnType(); - - if (! $strictGenerics) { - return (new ObjectType(Attribute::class))->isSuperTypeOf($returnType)->yes(); - } - - if ($returnType->getObjectClassReflections() === [] || ! $returnType->getObjectClassReflections()[0]->isGeneric()) { - return false; - } - - return (new GenericObjectType(Attribute::class, [new MixedType(), new MixedType()]))->isSuperTypeOf($returnType)->yes(); - } - - public function getAccessor(ClassReflection $classReflection, string $propertyName): ModelProperty - { - $studlyName = Str::studly($propertyName); - - if ($classReflection->hasNativeMethod($studlyName)) { - $methodReflection = $classReflection->getNativeMethod($studlyName); - - $returnType = $methodReflection->getVariants()[0]->getReturnType(); - - return new ModelProperty( - $classReflection, - $returnType->getTemplateType(Attribute::class, 'TGet'), - $returnType->getTemplateType(Attribute::class, 'TSet'), - ); - } - - $method = $classReflection->getNativeMethod('get' . Str::studly($propertyName) . 'Attribute'); - - return new ModelProperty( - $classReflection, - $method->getVariants()[0]->getReturnType(), - $method->getVariants()[0]->getReturnType(), - ); - } - - private function migrationsLoaded(): bool - { - return count($this->tables) > 0; - } - - private function loadMigrations(): void - { - // First try to create tables from squashed migrations, if there are any - // Then scan the normal migration files for further changes to tables. - $tables = $this->squashedMigrationHelper->initializeTables(); - - $this->tables = $this->migrationHelper->initializeTables($tables); - } - - private function hasDate(Model $modelInstance, string $propertyName): bool - { - $dates = $modelInstance->getDates(); - - // In order to support SoftDeletes - if (method_exists($modelInstance, 'getDeletedAtColumn')) { - $dates[] = $modelInstance->getDeletedAtColumn(); - } - - return in_array($propertyName, $dates, true); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Properties/ModelRelationsExtension.php b/docker/statistics/vendor/larastan/larastan/src/Properties/ModelRelationsExtension.php deleted file mode 100644 index 44095644..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Properties/ModelRelationsExtension.php +++ /dev/null @@ -1,208 +0,0 @@ -isSubclassOf(Model::class)) { - return false; - } - - if (ReflectionHelper::hasPropertyTag($classReflection, $propertyName)) { - return false; - } - - if (str_ends_with($propertyName, '_count')) { - $propertyName = Str::before($propertyName, '_count'); - - $methodNames = [Str::camel($propertyName), $propertyName]; - } else { - $methodNames = [$propertyName]; - } - - foreach ($methodNames as $methodName) { - if (! $classReflection->hasNativeMethod($methodName)) { - continue; - } - - $returnType = $classReflection->getNativeMethod($methodName)->getVariants()[0]->getReturnType(); - - if ((new ObjectType(Relation::class))->isSuperTypeOf($returnType)->yes()) { - return true; - } - } - - return false; - } - - public function getProperty(ClassReflection $classReflection, string $propertyName): PropertyReflection - { - if (str_ends_with($propertyName, '_count')) { - return new ModelProperty($classReflection, IntegerRangeType::createAllGreaterThanOrEqualTo(0), new NeverType(), false); - } - - $methodReflection = $classReflection->getMethod($propertyName, new OutOfClassScope()); - - if (version_compare(LARAVEL_VERSION, '11.0.0', '<')) { - $relationType = $this->getRelationTypeBeforeL11($methodReflection); - } else { - $returnType = $methodReflection->getVariants()[0]->getReturnType(); - - $relationType = TypeTraverser::map($returnType, function (Type $type, callable $traverse) use ($methodReflection): Type { - if ($type instanceof UnionType || $type instanceof IntersectionType) { - return $traverse($type); - } - - if (! (new ObjectType(Relation::class))->isSuperTypeOf($type)->yes()) { - return $type; - } - - $related = $type->getTemplateType(Relation::class, 'TRelatedModel'); - - // generics not provided, need to new up a Relation with the correct - // TRelatedModel type so the TResult will populate correctly - if ($related->getObjectClassNames()[0] === Model::class) { - $modelName = $this->relationParserHelper->findModelsInRelationMethod($methodReflection)[0] ?? Model::class; - - $type = new GenericObjectType($type->getObjectClassNames()[0], [new ObjectType($modelName)]); - } - - /** @phpstan-ignore phpstanApi.getTemplateType (non-existent template on < L11) */ - return $type->getTemplateType(Relation::class, 'TResult'); - }); - - $relationType = $this->collectionHelper->replaceCollectionsInType($relationType); - } - - return new ModelProperty($classReflection, $relationType, new NeverType(), false); - } - - private function getRelationTypeBeforeL11(ExtendedMethodReflection $method): Type - { - $returnType = $method->getVariants()[0]->getReturnType(); - - /** @phpstan-ignore phpstanApi.instanceofType (deprecated, special shortcut we take) */ - if ($returnType instanceof GenericObjectType) { - $relatedModel = $returnType->getTypes()[0]; - - if ($relatedModel->getObjectClassNames() === []) { - $relatedModelClassNames = [Model::class]; - } else { - $relatedModelClassNames = $relatedModel->getObjectClassNames(); - } - } else { - $modelName = $this->relationParserHelper->findModelsInRelationMethod($method)[0] ?? Model::class; - $relatedModel = new ObjectType($modelName); - $relatedModelClassNames = [$modelName]; - } - - return TypeTraverser::map($returnType, function (Type $type, callable $traverse) use ($relatedModelClassNames, $relatedModel) { - if ($type instanceof UnionType || $type instanceof IntersectionType) { - return $traverse($type); - } - - if ($type->getObjectClassNames() === []) { - return $traverse($type); - } - - if ($type instanceof GenericObjectType) { - $relatedModel = $type->getTypes()[0]; - $relatedModelClassNames = $relatedModel->getObjectClassNames(); - } - - if ( - (new ObjectType(BelongsToMany::class))->isSuperTypeOf($type)->yes() - || (new ObjectType(HasMany::class))->isSuperTypeOf($type)->yes() - || ( - (new ObjectType(HasManyThrough::class))->isSuperTypeOf($type)->yes() - // HasOneThrough extends HasManyThrough - && ! (new ObjectType(HasOneThrough::class))->isSuperTypeOf($type)->yes() - ) - || (new ObjectType(MorphMany::class))->isSuperTypeOf($type)->yes() - || (new ObjectType(MorphToMany::class))->isSuperTypeOf($type)->yes() - || Str::contains($type->getObjectClassNames()[0], 'Many') // fallback - ) { - $types = []; - - foreach ($relatedModelClassNames as $relatedModelClassName) { - $types[] = $this->collectionHelper->determineCollectionClass($relatedModelClassName); - } - - if ($types !== []) { - return TypeCombinator::union(...$types); - } - } - - if ( - (new ObjectType(MorphTo::class))->isSuperTypeOf($type)->yes() - || Str::endsWith($type->getObjectClassNames()[0], 'MorphTo') // fallback - ) { - // There was no generic type, or it was just Model - if ($relatedModel->getObjectClassNames()[0] === Model::class) { - return TypeCombinator::addNull($relatedModel); - } - - $types = []; - - foreach ($relatedModelClassNames as $relatedModelClassName) { - $types[] = new ObjectType($relatedModelClassName); - } - - if ($types !== []) { - return TypeCombinator::addNull(TypeCombinator::union(...$types)); - } - } - - return new UnionType([ - $relatedModel, - new NullType(), - ]); - }); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Properties/ReflectionTypeContainer.php b/docker/statistics/vendor/larastan/larastan/src/Properties/ReflectionTypeContainer.php deleted file mode 100644 index 39ee89ec..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Properties/ReflectionTypeContainer.php +++ /dev/null @@ -1,35 +0,0 @@ -getName(); - } - - public function getName(): string - { - return $this->type; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Properties/Schema/PhpMyAdminDataTypeToPhpTypeConverter.php b/docker/statistics/vendor/larastan/larastan/src/Properties/Schema/PhpMyAdminDataTypeToPhpTypeConverter.php deleted file mode 100644 index 63936868..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Properties/Schema/PhpMyAdminDataTypeToPhpTypeConverter.php +++ /dev/null @@ -1,21 +0,0 @@ -name) { - 'CHAR', 'VARCHAR', 'TINYTEXT', 'TEXT', 'MEDIUMTEXT', 'LONGTEXT', 'BINARY', 'VARBINARY', 'DATE', 'DATETIME', 'TIMESTAMP', 'TIME', 'TINYBLOB', 'BLOB', 'MEDIUMBLOB', 'JSON' => 'string', - 'BIT', 'TINYINT', 'SMALLINT', 'MEDIUMINT', 'INT', 'INTEGER', 'BIGINT', 'YEAR' => 'int', - 'DECIMAL', 'DEC', 'NUMERIC', 'FIXED', 'FLOAT', 'DOUBLE', 'DOUBLE PRECISION', 'REAL' => 'float', - 'BOOL', 'BOOLEAN' => 'bool', - default => 'mixed', - }; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Properties/SchemaAggregator.php b/docker/statistics/vendor/larastan/larastan/src/Properties/SchemaAggregator.php deleted file mode 100644 index 1b700de7..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Properties/SchemaAggregator.php +++ /dev/null @@ -1,666 +0,0 @@ - $tables */ - public function __construct(private ReflectionProvider $reflectionProvider, public array $tables = []) - { - } - - /** @param array $stmts */ - public function addStatements(array $stmts): void - { - $nodeFinder = new NodeFinder(); - - /** @var PhpParser\Node\Stmt\Class_[] $classes */ - $classes = $nodeFinder->findInstanceOf($stmts, PhpParser\Node\Stmt\Class_::class); - - foreach ($classes as $stmt) { - $this->addClassStatements($stmt->stmts); - } - } - - /** @param array $stmts */ - private function addClassStatements(array $stmts): void - { - foreach ($stmts as $stmt) { - if ( - ! ($stmt instanceof PhpParser\Node\Stmt\ClassMethod) - || $stmt->name->name === 'down' - || ! $stmt->stmts - ) { - continue; - } - - $this->addUpMethodStatements($stmt->stmts); - } - } - - /** @param PhpParser\Node\Stmt[] $stmts */ - private function addUpMethodStatements(array $stmts): void - { - $nodeFinder = new NodeFinder(); - $methods = $nodeFinder->findInstanceOf($stmts, PhpParser\Node\Stmt\Expression::class); - - foreach ($methods as $stmt) { - if ( - $stmt instanceof PhpParser\Node\Stmt\Expression - && $stmt->expr instanceof PhpParser\Node\Expr\MethodCall - && $stmt->expr->var instanceof PhpParser\Node\Expr\StaticCall - && $stmt->expr->var->class instanceof PhpParser\Node\Name - && $stmt->expr->var->name instanceof PhpParser\Node\Identifier - && ($stmt->expr->var->name->toString() === 'connection' || $stmt->expr->var->name->toString() === 'setConnection') - && ($stmt->expr->var->class->toCodeString() === '\Schema' || (new ObjectType('Illuminate\Support\Facades\Schema'))->isSuperTypeOf(new ObjectType($stmt->expr->var->class->toCodeString()))->yes()) - ) { - $statement = $stmt->expr; - } elseif ( - $stmt instanceof PhpParser\Node\Stmt\Expression - && $stmt->expr instanceof PhpParser\Node\Expr\StaticCall - && $stmt->expr->class instanceof PhpParser\Node\Name - && $stmt->expr->name instanceof PhpParser\Node\Identifier - && ($stmt->expr->class->toCodeString() === '\Schema' || (new ObjectType('Illuminate\Support\Facades\Schema'))->isSuperTypeOf(new ObjectType($stmt->expr->class->toCodeString()))->yes()) - ) { - $statement = $stmt->expr; - } else { - continue; - } - - if (! $statement->name instanceof PhpParser\Node\Identifier) { - continue; - } - - switch ($statement->name->name) { - case 'create': - $this->alterTable($statement, true); - break; - - case 'table': - $this->alterTable($statement, false); - break; - - case 'drop': - case 'dropIfExists': - $this->dropTable($statement); - break; - - case 'rename': - $this->renameTableThroughStaticCall($statement); - } - } - } - - private function alterTable(PhpParser\Node\Expr\StaticCall|PhpParser\Node\Expr\MethodCall $call, bool $creating): void - { - if ( - ! isset($call->args[0]) - || ! $call->getArgs()[0]->value instanceof PhpParser\Node\Scalar\String_ - ) { - return; - } - - $tableName = $call->getArgs()[0]->value->value; - - if ($creating) { - $this->tables[$tableName] = new SchemaTable($tableName); - } - - if ( - ! isset($call->args[1]) - || ! $call->getArgs()[1]->value instanceof PhpParser\Node\Expr\Closure - || count($call->getArgs()[1]->value->params) < 1 - || ($call->getArgs()[1]->value->params[0]->type instanceof PhpParser\Node\Name - && ! (new ObjectType('Illuminate\Database\Schema\Blueprint'))->isSuperTypeOf(new ObjectType($call->getArgs()[1]->value->params[0]->type->toCodeString()))->yes() - ) - ) { - return; - } - - $updateClosure = $call->getArgs()[1]->value; - - if ( - ! ($call->getArgs()[1]->value->params[0]->var instanceof PhpParser\Node\Expr\Variable) - || ! is_string($call->getArgs()[1]->value->params[0]->var->name) - ) { - return; - } - - $argName = $call->getArgs()[1]->value->params[0]->var->name; - - $this->processColumnUpdates($tableName, $argName, $this->getUpdateStatements($updateClosure)); - } - - /** - * @param PhpParser\Node\Stmt[] $stmts - * - * @throws Exception - */ - private function processColumnUpdates(string $tableName, string $argName, array $stmts): void - { - if (! isset($this->tables[$tableName])) { - return; - } - - $table = $this->tables[$tableName]; - - foreach ($stmts as $stmt) { - if ( - ! ($stmt instanceof PhpParser\Node\Stmt\Expression) - || ! ($stmt->expr instanceof PhpParser\Node\Expr\MethodCall) - || ! ($stmt->expr->name instanceof PhpParser\Node\Identifier) - ) { - continue; - } - - $rootVar = $stmt->expr; - - $firstMethodCall = $rootVar; - - $nullable = false; - - while ($rootVar instanceof PhpParser\Node\Expr\MethodCall) { - if ( - $rootVar->name instanceof PhpParser\Node\Identifier - && $rootVar->name->name === 'nullable' - && $this->getNullableArgumentValue($rootVar) === true - ) { - $nullable = true; - } - - $firstMethodCall = $rootVar; - $rootVar = $rootVar->var; - } - - if ( - ! ($rootVar instanceof PhpParser\Node\Expr\Variable) - || $rootVar->name !== $argName - || ! ($firstMethodCall->name instanceof PhpParser\Node\Identifier) - ) { - continue; - } - - $firstArg = $firstMethodCall->getArgs()[0]->value ?? null; - $secondArg = $firstMethodCall->getArgs()[1]->value ?? null; - - if ($firstMethodCall->name->name === 'foreignIdFor') { - if ( - $firstArg instanceof PhpParser\Node\Expr\ClassConstFetch - && $firstArg->class instanceof PhpParser\Node\Name - ) { - $modelClass = $firstArg->class->toCodeString(); - } elseif ($firstArg instanceof PhpParser\Node\Scalar\String_) { - $modelClass = $firstArg->value; - } else { - continue; - } - - $columnName = Str::snake(class_basename($modelClass)) . '_id'; - if ($secondArg instanceof PhpParser\Node\Scalar\String_) { - $columnName = $secondArg->value; - } - - $type = $this->getModelReferenceType($modelClass); - $table->setColumn(new SchemaColumn($columnName, $type ?? 'int', $nullable)); - - continue; - } - - if (! $firstArg instanceof PhpParser\Node\Scalar\String_) { - if ($firstArg instanceof PhpParser\Node\Expr\Array_ && $firstMethodCall->name->name === 'dropColumn') { - foreach ($firstArg->items as $arrayItem) { - if ($arrayItem === null || ! ($arrayItem->value instanceof PhpParser\Node\Scalar\String_)) { - continue; - } - - $table->dropColumn($arrayItem->value->value); - } - } - - if ( - $firstMethodCall->name->name === 'timestamps' - || $firstMethodCall->name->name === 'timestampsTz' - || $firstMethodCall->name->name === 'nullableTimestamps' - || $firstMethodCall->name->name === 'nullableTimestampsTz' - || $firstMethodCall->name->name === 'rememberToken' - ) { - switch (strtolower($firstMethodCall->name->name)) { - case 'droptimestamps': - case 'droptimestampstz': - $table->dropColumn('created_at'); - $table->dropColumn('updated_at'); - break; - - case 'remembertoken': - $table->setColumn(new SchemaColumn('remember_token', 'string', $nullable)); - break; - - case 'dropremembertoken': - $table->dropColumn('remember_token'); - break; - - case 'timestamps': - case 'timestampstz': - case 'nullabletimestamps': - $table->setColumn(new SchemaColumn('created_at', 'string', true)); - $table->setColumn(new SchemaColumn('updated_at', 'string', true)); - break; - } - - continue; - } - - $defaultsMap = [ - 'softDeletes' => 'deleted_at', - 'softDeletesTz' => 'deleted_at', - 'softDeletesDatetime' => 'deleted_at', - 'dropSoftDeletes' => 'deleted_at', - 'dropSoftDeletesTz' => 'deleted_at', - 'uuid' => 'uuid', - 'id' => 'id', - 'ulid' => 'ulid', - 'ipAddress' => 'ip_address', - 'macAddress' => 'mac_address', - ]; - if (! array_key_exists($firstMethodCall->name->name, $defaultsMap)) { - continue; - } - - $columnName = $defaultsMap[$firstMethodCall->name->name]; - } else { - $columnName = $firstArg->value; - } - - $secondArgArray = null; - - if ($secondArg instanceof PhpParser\Node\Expr\Array_) { - $secondArgArray = []; - - foreach ($secondArg->items as $arrayItem) { - if ($arrayItem === null || ! ($arrayItem->value instanceof PhpParser\Node\Scalar\String_)) { - continue; - } - - $secondArgArray[] = $arrayItem->value->value; - } - } - - $this->processStatementAlterMethod( - strtolower($firstMethodCall->name->name), - $firstMethodCall, - $table, - $columnName, - $nullable, - $secondArg, - $argName, - $tableName, - $secondArgArray, - $stmt, - ); - } - } - - private function dropTable(PhpParser\Node\Expr\StaticCall|PhpParser\Node\Expr\MethodCall $call): void - { - if ( - ! isset($call->args[0]) - || ! $call->getArgs()[0]->value instanceof PhpParser\Node\Scalar\String_ - ) { - return; - } - - $tableName = $call->getArgs()[0]->value->value; - - unset($this->tables[$tableName]); - } - - private function renameTableThroughStaticCall(PhpParser\Node\Expr\StaticCall|PhpParser\Node\Expr\MethodCall $call): void - { - if ( - ! isset($call->args[0], $call->args[1]) - || ! $call->getArgs()[0]->value instanceof PhpParser\Node\Scalar\String_ - || ! $call->getArgs()[1]->value instanceof PhpParser\Node\Scalar\String_ - ) { - return; - } - - $oldTableName = $call->getArgs()[0]->value->value; - $newTableName = $call->getArgs()[1]->value->value; - - $this->renameTable($oldTableName, $newTableName); - } - - private function renameTableThroughMethodCall(SchemaTable $oldTable, PhpParser\Node\Expr\MethodCall $call): void - { - if ( - ! isset($call->args[0]) - || ! $call->getArgs()[0]->value instanceof PhpParser\Node\Scalar\String_ - ) { - return; - } - - /** @var PhpParser\Node\Scalar\String_ $methodCallArgument */ - $methodCallArgument = $call->getArgs()[0]->value; - - $oldTableName = $oldTable->name; - $newTableName = $methodCallArgument->value; - - $this->renameTable($oldTableName, $newTableName); - } - - private function renameTable(string $oldTableName, string $newTableName): void - { - if (! isset($this->tables[$oldTableName])) { - return; - } - - $table = $this->tables[$oldTableName]; - - unset($this->tables[$oldTableName]); - - $table->name = $newTableName; - - $this->tables[$newTableName] = $table; - } - - private function getModelReferenceType(string $modelClass): string|null - { - $classReflection = $this->reflectionProvider->getClass($modelClass); - try { - /** @var Model $modelInstance */ - $modelInstance = $classReflection->getNativeReflection()->newInstanceWithoutConstructor(); - } catch (ReflectionException) { - return null; - } - - $tableName = $modelInstance->getTable(); - - if (! array_key_exists($tableName, $this->tables)) { - return null; - } - - $table = $this->tables[$tableName]; - $column = $modelInstance->getKeyName(); - - if (! array_key_exists($column, $table->columns)) { - return null; - } - - return $table->columns[$column]->readableType; - } - - private function getNullableArgumentValue(PhpParser\Node\Expr\MethodCall $rootVar): bool - { - if (! array_key_exists(0, $rootVar->args)) { - return true; - } - - $arg = $rootVar->args[0]; - - if (! ($arg instanceof PhpParser\Node\Arg)) { - return true; - } - - $argExpression = $arg->value; - - if (! ($argExpression instanceof PhpParser\Node\Expr\ConstFetch)) { - return true; - } - - return $argExpression->name->getFirst() === 'true'; - } - - /** @return PhpParser\Node\Stmt\Expression[] */ - private function getUpdateStatements(PhpParser\Node\Expr $updateClosure): array - { - if (! property_exists($updateClosure, 'stmts')) { - return []; - } - - $statements = []; - $nodeFinder = new NodeFinder(); - - foreach ($updateClosure->stmts as $updateStatement) { - if ($updateStatement instanceof PhpParser\Node\Stmt\If_) { - $statements = array_merge( - $statements, - $nodeFinder->findInstanceOf($updateStatement, PhpParser\Node\Stmt\Expression::class), - ); - - continue; - } - - $statements[] = $updateStatement; - } - - return $statements; - } - - /** - * @param array $secondArgArray - * - * @throws Exception - */ - private function processStatementAlterMethod( - string $method, - PhpParser\Node\Expr\MethodCall|null $firstMethodCall, - SchemaTable $table, - string $columnName, - bool $nullable, - mixed $secondArg, - PhpParser\Node\Expr|string $argName, - string $tableName, - array|null $secondArgArray, - PhpParser\Node\Stmt\Expression $stmt, - ): void { - switch ($method) { - case 'addcolumn': - $this->processStatementAlterMethod( - strtolower($firstMethodCall->args[0]->value->value ?? ''), - null, - $table, - $firstMethodCall->args[1]->value->value ?? '', - $nullable, - $secondArg, - $argName, - $tableName, - $secondArgArray, - $stmt, - ); - - return; - - case 'biginteger': - case 'increments': - case 'id': - case 'integer': - case 'integerincrements': - case 'mediumincrements': - case 'mediuminteger': - case 'smallincrements': - case 'smallinteger': - case 'tinyincrements': - case 'tinyinteger': - case 'unsignedbiginteger': - case 'unsignedinteger': - case 'unsignedmediuminteger': - case 'unsignedsmallinteger': - case 'unsignedtinyinteger': - case 'bigincrements': - case 'foreignid': - $table->setColumn(new SchemaColumn($columnName, 'int', $nullable)); - - return; - - case 'char': - case 'datetimetz': - case 'date': - case 'datetime': - case 'ipaddress': - case 'json': - case 'jsonb': - case 'linestring': - case 'longtext': - case 'macaddress': - case 'mediumtext': - case 'multilinestring': - case 'string': - case 'text': - case 'time': - case 'timestamp': - case 'ulid': - case 'uuid': - case 'binary': - $table->setColumn(new SchemaColumn($columnName, 'string', $nullable)); - - return; - - case 'boolean': - $table->setColumn(new SchemaColumn($columnName, 'bool', $nullable)); - - return; - - case 'geometry': - case 'geometrycollection': - case 'multipoint': - case 'multipolygon': - case 'multipolygonz': - case 'point': - case 'polygon': - case 'computed': - $table->setColumn(new SchemaColumn($columnName, 'mixed', $nullable)); - - return; - - case 'double': - case 'float': - case 'unsigneddecimal': - case 'decimal': - $table->setColumn(new SchemaColumn($columnName, 'float', $nullable)); - - return; - - case 'after': - if ( - $secondArg instanceof PhpParser\Node\Expr\Closure - && $secondArg->params[0]->var instanceof PhpParser\Node\Expr\Variable - && ! ($secondArg->params[0]->var->name instanceof PhpParser\Node\Expr) - ) { - $argName = $secondArg->params[0]->var->name; - $this->processColumnUpdates($tableName, $argName, $secondArg->stmts); - } - - return; - - case 'dropcolumn': - case 'dropifexists': - case 'dropsoftdeletes': - case 'dropsoftdeletestz': - case 'removecolumn': - case 'drop': - $table->dropColumn($columnName); - - return; - - case 'dropforeign': - case 'dropindex': - case 'dropprimary': - case 'dropunique': - case 'foreign': - case 'index': - case 'primary': - case 'renameindex': - case 'spatialIndex': - case 'unique': - case 'dropspatialindex': - return; - - case 'dropmorphs': - $table->dropColumn($columnName . '_type'); - $table->dropColumn($columnName . '_id'); - - return; - - case 'enum': - $table->setColumn(new SchemaColumn($columnName, 'enum', $nullable, $secondArgArray)); - - return; - - case 'morphs': - $table->setColumn(new SchemaColumn($columnName . '_type', 'string', $nullable)); - $table->setColumn(new SchemaColumn($columnName . '_id', 'int', $nullable)); - - return; - - case 'nullablemorphs': - $table->setColumn(new SchemaColumn($columnName . '_type', 'string', true)); - $table->setColumn(new SchemaColumn($columnName . '_id', 'int', true)); - - return; - - case 'nullableuuidmorphs': - $table->setColumn(new SchemaColumn($columnName . '_type', 'string', true)); - $table->setColumn(new SchemaColumn($columnName . '_id', 'string', true)); - - return; - - case 'rename': - /** @var PhpParser\Node\Expr\MethodCall $methodCall */ - $methodCall = $stmt->expr; - $this->renameTableThroughMethodCall($table, $methodCall); - - return; - - case 'renamecolumn': - if ($secondArg instanceof PhpParser\Node\Scalar\String_) { - $table->renameColumn($columnName, $secondArg->value); - } - - return; - - case 'set': - $table->setColumn(new SchemaColumn($columnName, 'set', $nullable, $secondArgArray)); - - return; - - case 'softdeletestz': - case 'timestamptz': - case 'timetz': - case 'year': - case 'softdeletes': - $table->setColumn(new SchemaColumn($columnName, 'string', true)); - - return; - - case 'uuidmorphs': - $table->setColumn(new SchemaColumn($columnName . '_type', 'string', $nullable)); - $table->setColumn(new SchemaColumn($columnName . '_id', 'string', $nullable)); - - return; - - default: - // We know a property exists with a name, we just don't know its type. - $table->setColumn(new SchemaColumn($columnName, 'mixed', $nullable)); - } - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Properties/SchemaColumn.php b/docker/statistics/vendor/larastan/larastan/src/Properties/SchemaColumn.php deleted file mode 100644 index 9fa04fe7..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Properties/SchemaColumn.php +++ /dev/null @@ -1,21 +0,0 @@ - */ - public array|null $options = null, - ) { - $this->writeableType = $readableType; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Properties/SchemaTable.php b/docker/statistics/vendor/larastan/larastan/src/Properties/SchemaTable.php deleted file mode 100644 index 4c1a6bd5..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Properties/SchemaTable.php +++ /dev/null @@ -1,41 +0,0 @@ - */ - public array $columns = []; - - public function __construct(public string $name) - { - } - - public function setColumn(SchemaColumn $column): void - { - $this->columns[$column->name] = $column; - } - - public function renameColumn(string $oldName, string $newName): void - { - if (! isset($this->columns[$oldName])) { - return; - } - - $oldColumn = $this->columns[$oldName]; - - unset($this->columns[$oldName]); - - $oldColumn->name = $newName; - - $this->columns[$newName] = $oldColumn; - } - - public function dropColumn(string $columnName): void - { - unset($this->columns[$columnName]); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Properties/SquashedMigrationHelper.php b/docker/statistics/vendor/larastan/larastan/src/Properties/SquashedMigrationHelper.php deleted file mode 100644 index c21a0076..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Properties/SquashedMigrationHelper.php +++ /dev/null @@ -1,132 +0,0 @@ -disableSchemaScan) { - return []; - } - - if (empty($this->schemaPaths)) { - $this->schemaPaths = [database_path('schema')]; - } - - $filesArray = $this->getSchemaFiles(); - - if (empty($filesArray)) { - return []; - } - - ksort($filesArray); - - /** @var array $tables */ - $tables = []; - - foreach ($filesArray as $file) { - $fileContents = file_get_contents($file->getPathname()); - - if ($fileContents === false) { - continue; - } - - try { - $parser = new Parser($fileContents); - } catch (ParserException) { - // TODO: re-throw the exception with a clear message? - continue; - } - - /** @var CreateStatement[] $createStatements */ - $createStatements = array_filter($parser->statements, static fn (Statement $statement) => $statement instanceof CreateStatement && $statement->name !== null); - - foreach ($createStatements as $createStatement) { - if ($createStatement->name?->table === null || array_key_exists($createStatement->name->table, $tables)) { - continue; - } - - $table = new SchemaTable($createStatement->name->table); - - if (! is_array($createStatement->fields)) { - continue; - } - - foreach ($createStatement->fields as $field) { - if ($field->name === null || $field->type === null) { - continue; - } - - $table->setColumn(new SchemaColumn($field->name, $this->converter->convert($field->type), $this->isNullable($field))); - } - - $tables[$createStatement->name->table] = $table; - } - } - - return $tables; - } - - /** @return SplFileInfo[] */ - private function getSchemaFiles(): array - { - /** @var SplFileInfo[] $schemaFiles */ - $schemaFiles = []; - - foreach ($this->schemaPaths as $additionalPath) { - $absolutePath = $this->fileHelper->absolutizePath($additionalPath); - - if (! is_dir($absolutePath)) { - continue; - } - - $schemaFiles += iterator_to_array( - new RegexIterator( - new RecursiveIteratorIterator(new RecursiveDirectoryIterator($absolutePath)), - '/\.dump|\.sql/i', - ), - ); - } - - return $schemaFiles; - } - - private function isNullable(CreateDefinition $definition): bool - { - return ! $definition->options?->has('NOT NULL'); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Reflection/AnnotationScopeMethodParameterReflection.php b/docker/statistics/vendor/larastan/larastan/src/Reflection/AnnotationScopeMethodParameterReflection.php deleted file mode 100644 index e2129a4f..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Reflection/AnnotationScopeMethodParameterReflection.php +++ /dev/null @@ -1,46 +0,0 @@ -name; - } - - public function isOptional(): bool - { - return $this->isOptional; - } - - public function getType(): Type - { - return $this->type; - } - - public function passedByReference(): PassedByReference - { - return $this->passedByReference; - } - - public function isVariadic(): bool - { - return $this->isVariadic; - } - - public function getDefaultValue(): Type|null - { - return $this->defaultValue; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Reflection/AnnotationScopeMethodReflection.php b/docker/statistics/vendor/larastan/larastan/src/Reflection/AnnotationScopeMethodReflection.php deleted file mode 100644 index 86a4d64e..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Reflection/AnnotationScopeMethodReflection.php +++ /dev/null @@ -1,100 +0,0 @@ -declaringClass; - } - - public function getPrototype(): ClassMemberReflection - { - return $this; - } - - public function isStatic(): bool - { - return $this->isStatic; - } - - public function isPrivate(): bool - { - return false; - } - - public function isPublic(): bool - { - return true; - } - - public function getName(): string - { - return $this->name; - } - - /** @return ParametersAcceptor[] */ - public function getVariants(): array - { - if ($this->variants === null) { - $this->variants = [new FunctionVariant(TemplateTypeMap::createEmpty(), null, $this->parameters, $this->isVariadic, $this->returnType)]; - } - - return $this->variants; - } - - public function isDeprecated(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function getDeprecatedDescription(): string|null - { - return null; - } - - public function isFinal(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function isInternal(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function getThrowType(): Type|null - { - return null; - } - - public function hasSideEffects(): TrinaryLogic - { - return TrinaryLogic::createMaybe(); - } - - public function getDocComment(): string|null - { - return null; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Reflection/DynamicWhereMethodReflection.php b/docker/statistics/vendor/larastan/larastan/src/Reflection/DynamicWhereMethodReflection.php deleted file mode 100644 index 585c96fd..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Reflection/DynamicWhereMethodReflection.php +++ /dev/null @@ -1,134 +0,0 @@ -classReflection; - } - - public function isStatic(): bool - { - return false; - } - - public function isPrivate(): bool - { - return false; - } - - public function isPublic(): bool - { - return true; - } - - public function getDocComment(): string|null - { - return null; - } - - public function getName(): string - { - return $this->methodName; - } - - public function getPrototype(): Reflection\ClassMemberReflection - { - return $this; - } - - /** @return FunctionVariant[] */ - public function getVariants(): array - { - return [ - new FunctionVariant( - TemplateTypeMap::createEmpty(), - TemplateTypeMap::createEmpty(), - [ - new class implements ParameterReflection - { - public function getName(): string - { - return 'dynamic-with'; - } - - public function isOptional(): bool - { - return false; - } - - public function getType(): Type - { - return new MixedType(); - } - - public function passedByReference(): PassedByReference - { - return Reflection\PassedByReference::createNo(); - } - - public function isVariadic(): bool - { - return false; - } - - public function getDefaultValue(): Type|null - { - return null; - } - }, - ], - false, - new ObjectType($this->classReflection->getName()), - ), - ]; - } - - public function isDeprecated(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function getDeprecatedDescription(): string|null - { - return null; - } - - public function isFinal(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function isInternal(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function getThrowType(): Type|null - { - return null; - } - - public function hasSideEffects(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Reflection/DynamicWhereParameterReflection.php b/docker/statistics/vendor/larastan/larastan/src/Reflection/DynamicWhereParameterReflection.php deleted file mode 100644 index f12e87c3..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Reflection/DynamicWhereParameterReflection.php +++ /dev/null @@ -1,43 +0,0 @@ -returnType = $returnType ?? new ObjectType(Builder::class); - } - - public function getDeclaringClass(): ClassReflection - { - return $this->classReflection; - } - - public function isStatic(): bool - { - return true; - } - - public function isPrivate(): bool - { - return false; - } - - public function isPublic(): bool - { - return true; - } - - public function getName(): string - { - return $this->methodName; - } - - public function getPrototype(): ClassMemberReflection - { - return $this; - } - - /** - * {@inheritDoc} - */ - public function getVariants(): array - { - return [ - new FunctionVariant( - TemplateTypeMap::createEmpty(), - null, - $this->parameters, - $this->isVariadic, - $this->returnType, - ), - ]; - } - - public function getDocComment(): string|null - { - return null; - } - - public function isDeprecated(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function getDeprecatedDescription(): string|null - { - return null; - } - - public function isFinal(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function isInternal(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function getThrowType(): Type|null - { - return null; - } - - public function hasSideEffects(): TrinaryLogic - { - return TrinaryLogic::createMaybe(); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Reflection/ModelScopeMethodReflection.php b/docker/statistics/vendor/larastan/larastan/src/Reflection/ModelScopeMethodReflection.php deleted file mode 100644 index 05cd2615..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Reflection/ModelScopeMethodReflection.php +++ /dev/null @@ -1,102 +0,0 @@ -classReflection; - } - - public function isStatic(): bool - { - return false; - } - - public function isPrivate(): bool - { - return false; - } - - public function isPublic(): bool - { - return true; - } - - public function getName(): string - { - return $this->methodName; - } - - public function getPrototype(): ClassMemberReflection - { - return $this; - } - - /** - * {@inheritDoc} - */ - public function getVariants(): array - { - return [ - new FunctionVariant( - TemplateTypeMap::createEmpty(), - null, - [], - false, - new ObjectType($this->relation->getName()), - ), - ]; - } - - public function getDocComment(): string|null - { - return null; - } - - public function isDeprecated(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function getDeprecatedDescription(): string|null - { - return null; - } - - public function isFinal(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function isInternal(): TrinaryLogic - { - return TrinaryLogic::createNo(); - } - - public function getThrowType(): Type|null - { - return null; - } - - public function hasSideEffects(): TrinaryLogic - { - return TrinaryLogic::createMaybe(); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Reflection/ReflectionHelper.php b/docker/statistics/vendor/larastan/larastan/src/Reflection/ReflectionHelper.php deleted file mode 100644 index 295aaa3a..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Reflection/ReflectionHelper.php +++ /dev/null @@ -1,54 +0,0 @@ -getPropertyTags())) { - return true; - } - - foreach ($classReflection->getAncestors() as $ancestor) { - if (array_key_exists($propertyName, $ancestor->getPropertyTags())) { - return true; - } - } - - /** @phpstan-ignore-next-line */ - return (new MixinPropertiesClassReflectionExtension([$classReflection->getName()])) - ->hasProperty($classReflection, $propertyName); - } - - /** - * Does the given class or any of its ancestors have an `@method*` annotation with the given name? - */ - public static function hasMethodTag(ClassReflection $classReflection, string $methodName): bool - { - if (array_key_exists($methodName, $classReflection->getMethodTags())) { - return true; - } - - foreach ($classReflection->getAncestors() as $ancestor) { - if (array_key_exists($methodName, $ancestor->getMethodTags())) { - return true; - } - } - - /** @phpstan-ignore-next-line */ - return (new MixinMethodsClassReflectionExtension([$classReflection->getName()])) - ->hasMethod($classReflection, $methodName); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Reflection/StaticMethodReflection.php b/docker/statistics/vendor/larastan/larastan/src/Reflection/StaticMethodReflection.php deleted file mode 100644 index 1c3a57fc..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Reflection/StaticMethodReflection.php +++ /dev/null @@ -1,90 +0,0 @@ -methodReflection->getDeclaringClass(); - } - - public function isStatic(): bool - { - return true; - } - - public function isPrivate(): bool - { - return $this->methodReflection->isPrivate(); - } - - public function isPublic(): bool - { - return $this->methodReflection->isPublic(); - } - - public function getDocComment(): string|null - { - return $this->methodReflection->getDocComment(); - } - - public function getName(): string - { - return $this->methodReflection->getName(); - } - - public function getPrototype(): ClassMemberReflection - { - return $this->methodReflection->getPrototype(); - } - - /** @return ParametersAcceptor[] */ - public function getVariants(): array - { - return $this->methodReflection->getVariants(); - } - - public function isDeprecated(): TrinaryLogic - { - return $this->methodReflection->isDeprecated(); - } - - public function getDeprecatedDescription(): string|null - { - return $this->methodReflection->getDeprecatedDescription(); - } - - public function isFinal(): TrinaryLogic - { - return $this->methodReflection->isFinal(); - } - - public function isInternal(): TrinaryLogic - { - return $this->methodReflection->isInternal(); - } - - public function getThrowType(): Type|null - { - return $this->methodReflection->getThrowType(); - } - - public function hasSideEffects(): TrinaryLogic - { - return $this->methodReflection->hasSideEffects(); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/AppEnvironmentReturnTypeExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/AppEnvironmentReturnTypeExtension.php deleted file mode 100644 index 1425f26f..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/AppEnvironmentReturnTypeExtension.php +++ /dev/null @@ -1,41 +0,0 @@ -getName() === 'environment'; - } - - public function getTypeFromMethodCall( - MethodReflection $methodReflection, - MethodCall $methodCall, - Scope $scope, - ): Type { - if (count($methodCall->getArgs()) === 0) { - return new StringType(); - } - - return new BooleanType(); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/AppMakeDynamicReturnTypeExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/AppMakeDynamicReturnTypeExtension.php deleted file mode 100644 index 407f5dea..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/AppMakeDynamicReturnTypeExtension.php +++ /dev/null @@ -1,35 +0,0 @@ -getName() === 'make' || $methodReflection->getName() === 'makeWith'; - } - - public function getTypeFromStaticMethodCall(MethodReflection $methodReflection, StaticCall $methodCall, Scope $scope): Type - { - return $this->appMakeHelper->resolveTypeFromCall($methodCall, $scope); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/AppMakeHelper.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/AppMakeHelper.php deleted file mode 100644 index d385344a..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/AppMakeHelper.php +++ /dev/null @@ -1,58 +0,0 @@ -getArgs(); - if (count($args) === 0) { - return new ErrorType(); - } - - $argType = $scope->getType($args[0]->value); - - $constantStrings = $argType->getConstantStrings(); - - if (count($constantStrings) > 0) { - $types = []; - foreach ($constantStrings as $constantString) { - try { - /** @var object|null $resolved */ - $resolved = $this->resolve($constantString->getValue()); - - if ($resolved === null) { - return new ErrorType(); - } - - $types[] = new ObjectType($resolved::class); - } catch (Throwable) { - return new ErrorType(); - } - } - - return TypeCombinator::union(...$types); - } - - return new MixedType(); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ApplicationMakeDynamicReturnTypeExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ApplicationMakeDynamicReturnTypeExtension.php deleted file mode 100644 index 9b0db7ae..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ApplicationMakeDynamicReturnTypeExtension.php +++ /dev/null @@ -1,37 +0,0 @@ -getName(), ['make', 'makeWith', 'resolve'], true); - } - - public function getTypeFromMethodCall(MethodReflection $methodReflection, MethodCall $methodCall, Scope $scope): Type - { - return $this->appMakeHelper->resolveTypeFromCall($methodCall, $scope); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/AuthExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/AuthExtension.php deleted file mode 100644 index c9ea55cd..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/AuthExtension.php +++ /dev/null @@ -1,59 +0,0 @@ -getName() === 'user'; - } - - public function getTypeFromStaticMethodCall( - MethodReflection $methodReflection, - StaticCall $methodCall, - Scope $scope, - ): Type|null { - $config = $this->getContainer()->get('config'); - $authModels = []; - - if ($config !== null) { - $authModels = $this->getAuthModels($config); - } - - if (count($authModels) === 0) { - return null; - } - - return TypeCombinator::addNull( - TypeCombinator::union(...array_map( - static fn (string $authModel): Type => new ObjectType($authModel), - $authModels, - )), - ); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/AuthManagerExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/AuthManagerExtension.php deleted file mode 100644 index 31033106..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/AuthManagerExtension.php +++ /dev/null @@ -1,58 +0,0 @@ -getName() === 'user'; - } - - public function getTypeFromMethodCall( - MethodReflection $methodReflection, - MethodCall $methodCall, - Scope $scope, - ): Type|null { - $config = $this->getContainer()->get('config'); - $authModels = []; - - if ($config !== null) { - $authModels = $this->getAuthModels($config); - } - - if (count($authModels) === 0) { - return null; - } - - return TypeCombinator::addNull( - TypeCombinator::union(...array_map( - static fn (string $authModel): Type => new ObjectType($authModel), - $authModels, - )), - ); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/BuilderModelFindExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/BuilderModelFindExtension.php deleted file mode 100644 index 2979b965..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/BuilderModelFindExtension.php +++ /dev/null @@ -1,109 +0,0 @@ -getName(); - - if (! Str::startsWith($methodName, 'find')) { - return false; - } - - $model = $methodReflection->getDeclaringClass()->getActiveTemplateTypeMap()->getType(LaravelVersion::getBuilderModelGenericName()); - - if ($model === null || $model->getObjectClassNames() === []) { - return false; - } - - return $this->reflectionProvider->getClass(Builder::class)->hasNativeMethod($methodName) || - $this->reflectionProvider->getClass(QueryBuilder::class)->hasNativeMethod($methodName); - } - - public function getTypeFromMethodCall( - MethodReflection $methodReflection, - MethodCall $methodCall, - Scope $scope, - ): Type|null { - if (count($methodCall->getArgs()) < 1) { - return null; - } - - /** @var Type $modelClassType */ - $modelClassType = $methodReflection->getDeclaringClass()->getActiveTemplateTypeMap()->getType(LaravelVersion::getBuilderModelGenericName()); - - if ((new ObjectType(Model::class))->isSuperTypeOf($modelClassType)->no()) { - return null; - } - - $returnType = $methodReflection->getVariants()[0]->getReturnType(); - $argType = $scope->getType($methodCall->getArgs()[0]->value); - - if ($argType instanceof MixedType) { - return $returnType; - } - - $models = []; - - foreach ($modelClassType->getObjectClassReflections() as $objectClassReflection) { - $modelName = $objectClassReflection->getName(); - - $returnType = ModelTypeHelper::replaceStaticTypeWithModel($returnType, $modelName); - - if ($argType->isIterable()->yes()) { - if (in_array(Collection::class, $returnType->getReferencedClasses(), true)) { - $models[] = $this->collectionHelper->determineCollectionClass($modelName); - continue; - } - - $models[] = TypeCombinator::remove($returnType, new ObjectType($modelName)); - } else { - $models[] = TypeCombinator::remove( - TypeCombinator::remove( - $returnType, - new ArrayType(new MixedType(), $modelClassType), - ), - new ObjectType(Collection::class), - ); - } - } - - return count($models) > 0 ? TypeCombinator::union(...$models) : null; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/CollectionFilterRejectDynamicReturnTypeExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/CollectionFilterRejectDynamicReturnTypeExtension.php deleted file mode 100644 index f06ad5ab..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/CollectionFilterRejectDynamicReturnTypeExtension.php +++ /dev/null @@ -1,103 +0,0 @@ -getName(), ['filter', 'reject'], true); - } - - public function getTypeFromMethodCall( - MethodReflection $methodReflection, - MethodCall $methodCall, - Scope $scope, - ): Type|null { - $calledOnType = $scope->getType($methodCall->var); - - if ($calledOnType->getObjectClassReflections() === [] || ! $calledOnType->getObjectClassReflections()[0]->isGeneric()) { - return null; - } - - $keyType = $methodReflection->getDeclaringClass()->getActiveTemplateTypeMap()->getType('TKey'); - $valueType = $methodReflection->getDeclaringClass()->getActiveTemplateTypeMap()->getType('TValue'); - - if ($keyType === null || $valueType === null) { - return null; - } - - $methodName = $methodReflection->getName(); - assert($methodName === 'filter' || $methodName === 'reject', 'proven in isMethodSupported'); - - if (count($methodCall->getArgs()) < 1) { - $modifiedType = match ($methodName) { - 'filter' => TypeCombinator::removeFalsey($valueType), - 'reject' => TypeCombinator::removeTruthy($valueType) - }; - - return new GenericObjectType($calledOnType->getObjectClassNames()[0], [$keyType, $modifiedType]); - } - - $callbackArg = $methodCall->getArgs()[0]->value; - - $var = null; - $expr = null; - - if ($callbackArg instanceof Closure && count($callbackArg->stmts) === 1 && count($callbackArg->params) > 0) { - $statement = $callbackArg->stmts[0]; - if ($statement instanceof Return_ && $statement->expr !== null) { - $var = $callbackArg->params[0]->var; - $expr = $statement->expr; - } - } elseif ($callbackArg instanceof ArrowFunction && count($callbackArg->params) > 0) { - $var = $callbackArg->params[0]->var; - $expr = $callbackArg->expr; - } - - if ($var !== null && $expr !== null) { - if (! $var instanceof Variable || ! is_string($var->name)) { - throw new ShouldNotHappenException(); - } - - $itemVariableName = $var->name; - - $node = new Variable($itemVariableName); - // @phpstan-ignore-next-line - $scope = $scope->assignExpression($node, $valueType); - $scope = match ($methodName) { - 'filter' => $scope->filterByTruthyValue($expr), - 'reject' => $scope->filterByFalseyValue($expr), - }; - $valueType = $scope->getVariableType($itemVariableName); - } - - return new GenericObjectType($calledOnType->getObjectClassNames()[0], [$keyType, $valueType]); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/CollectionWhereNotNullDynamicReturnTypeExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/CollectionWhereNotNullDynamicReturnTypeExtension.php deleted file mode 100644 index bb9b31a2..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/CollectionWhereNotNullDynamicReturnTypeExtension.php +++ /dev/null @@ -1,83 +0,0 @@ -getName() === 'whereNotNull'; - } - - public function getTypeFromMethodCall( - MethodReflection $methodReflection, - MethodCall $methodCall, - Scope $scope, - ): Type|null { - $calledOnType = $scope->getType($methodCall->var); - - if ($calledOnType->getObjectClassNames() === []) { - return null; - } - - $keyType = $methodReflection->getDeclaringClass()->getActiveTemplateTypeMap()->getType('TKey'); - $valueType = $methodReflection->getDeclaringClass()->getActiveTemplateTypeMap()->getType('TValue') ?? - $methodReflection->getDeclaringClass()->getActiveTemplateTypeMap()->getType('TModel'); - - if ($keyType === null || $valueType === null) { - return null; - } - - $nonFalseyTypes = TypeCombinator::removeNull($valueType); - - if (! $this->argumentIsString($methodCall, $scope)) { - return new GenericObjectType($calledOnType->getObjectClassNames()[0], [$keyType, $nonFalseyTypes]); - } - - $scalarTypes = new UnionType([ - new StringType(), - new IntegerType(), - new FloatType(), - new BooleanType(), - ]); - - $nonFalseyTypes = TypeCombinator::remove($nonFalseyTypes, $scalarTypes); - - return new GenericObjectType($calledOnType->getObjectClassNames()[0], [$keyType, $nonFalseyTypes]); - } - - public function argumentIsString(MethodCall $methodCall, Scope $scope): bool - { - if (count($methodCall->getArgs()) === 0) { - return false; - } - - $argType = $scope->getType($methodCall->getArgs()[0]->value); - - return (new NullType())->isSuperTypeOf($argType)->no(); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ConsoleCommand/ArgumentDynamicReturnTypeExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ConsoleCommand/ArgumentDynamicReturnTypeExtension.php deleted file mode 100644 index a2fea132..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ConsoleCommand/ArgumentDynamicReturnTypeExtension.php +++ /dev/null @@ -1,85 +0,0 @@ -getName(), ['argument', 'arguments'], true); - } - - public function getTypeFromMethodCall( - MethodReflection $methodReflection, - MethodCall $methodCall, - Scope $scope, - ): Type|null { - $classReflection = $scope->getClassReflection(); - - if ($classReflection === null) { - return null; - } - - $args = $methodCall->getArgs(); - - $defaultReturnType = ParametersAcceptorSelector::selectFromArgs($scope, $methodCall->getArgs(), $methodReflection->getVariants())->getReturnType(); - - if ($args === [] || $methodReflection->getName() === 'arguments') { - return $this->consoleApplicationHelper->getArguments($classReflection, $scope); - } - - $argStrings = $scope->getType($args[0]->value)->getConstantStrings(); - - if (count($argStrings) === 0) { - return null; - } - - $returnTypes = []; - - foreach ($argStrings as $argString) { - $argName = $argString->getValue(); - - $argTypes = []; - - foreach ($this->consoleApplicationResolver->findCommands($classReflection) as $command) { - try { - $command->mergeApplicationDefinition(); - $argument = $command->getDefinition()->getArgument($argName); - - $argTypes[] = $this->consoleApplicationHelper->getArgumentType($scope, $argument); - } catch (InvalidArgumentException) { - // noop - } - - $returnTypes[] = count($argTypes) > 0 ? TypeCombinator::union(...$argTypes) : $defaultReturnType; - } - } - - return count($returnTypes) > 0 ? TypeCombinator::union(...$returnTypes) : null; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ConsoleCommand/HasArgumentDynamicReturnTypeExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ConsoleCommand/HasArgumentDynamicReturnTypeExtension.php deleted file mode 100644 index 01b8e9fc..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ConsoleCommand/HasArgumentDynamicReturnTypeExtension.php +++ /dev/null @@ -1,70 +0,0 @@ -getName() === 'hasArgument'; - } - - public function getTypeFromMethodCall( - MethodReflection $methodReflection, - MethodCall $methodCall, - Scope $scope, - ): Type|null { - $classReflection = $scope->getClassReflection(); - - if ($classReflection === null) { - return null; - } - - if ($methodCall->getArgs() === []) { - return null; - } - - $constantStrings = $scope->getType($methodCall->getArgs()[0]->value)->getConstantStrings(); - - if (count($constantStrings) !== 1) { - return null; - } - - $returnTypes = []; - - foreach ($this->consoleApplicationResolver->findCommands($classReflection) as $command) { - $command->mergeApplicationDefinition(); - $returnTypes[] = $command->getDefinition()->hasArgument($constantStrings[0]->getValue()); - } - - if (count($returnTypes) === 0) { - return null; - } - - $returnTypes = array_unique($returnTypes); - - return count($returnTypes) === 1 ? new ConstantBooleanType($returnTypes[0]) : null; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ConsoleCommand/HasOptionDynamicReturnTypeExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ConsoleCommand/HasOptionDynamicReturnTypeExtension.php deleted file mode 100644 index cbee1cc4..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ConsoleCommand/HasOptionDynamicReturnTypeExtension.php +++ /dev/null @@ -1,72 +0,0 @@ -getName() === 'hasOption'; - } - - public function getTypeFromMethodCall( - MethodReflection $methodReflection, - MethodCall $methodCall, - Scope $scope, - ): Type|null { - $classReflection = $scope->getClassReflection(); - - if ($classReflection === null) { - return null; - } - - if ($methodCall->getArgs() === []) { - return null; - } - - $constantStrings = $scope->getType($methodCall->getArgs()[0]->value)->getConstantStrings(); - - if (count($constantStrings) !== 1) { - return null; - } - - $argName = $constantStrings[0]->getValue(); - - $returnTypes = []; - - foreach ($this->consoleApplicationResolver->findCommands($classReflection) as $command) { - $command->mergeApplicationDefinition(); - $returnTypes[] = $command->getDefinition()->hasOption($argName) || $command->getDefinition()->hasShortcut($argName); - } - - if (count($returnTypes) === 0) { - return null; - } - - $returnTypes = array_unique($returnTypes); - - return count($returnTypes) === 1 ? new ConstantBooleanType($returnTypes[0]) : null; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ConsoleCommand/OptionDynamicReturnTypeExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ConsoleCommand/OptionDynamicReturnTypeExtension.php deleted file mode 100644 index 299c7d71..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ConsoleCommand/OptionDynamicReturnTypeExtension.php +++ /dev/null @@ -1,91 +0,0 @@ -getName(), ['option', 'options'], true); - } - - public function getTypeFromMethodCall( - MethodReflection $methodReflection, - MethodCall $methodCall, - Scope $scope, - ): Type|null { - $classReflection = $scope->getClassReflection(); - - if ($classReflection === null) { - return null; - } - - $args = $methodCall->getArgs(); - - $defaultReturnType = ParametersAcceptorSelector::selectFromArgs($scope, $methodCall->getArgs(), $methodReflection->getVariants())->getReturnType(); - - if ($args === [] || $methodReflection->getName() === 'options') { - return $this->consoleApplicationHelper->getOptions($classReflection, $scope); - } - - $argStrings = $scope->getType($args[0]->value)->getConstantStrings(); - - if (count($argStrings) === 0) { - return null; - } - - $returnTypes = []; - - foreach ($argStrings as $argString) { - $argName = $argString->getValue(); - - $argTypes = []; - - foreach ($this->consoleApplicationResolver->findCommands($classReflection) as $command) { - try { - $command->mergeApplicationDefinition(); - $definition = $command->getDefinition(); - - if ($definition->hasShortcut($argName)) { - $argument = $definition->getOptionForShortcut($argName); - } else { - $argument = $definition->getOption($argName); - } - - $argTypes[] = $this->consoleApplicationHelper->getOptionType($scope, $argument); - } catch (InvalidArgumentException) { - // noop - } - - $returnTypes[] = count($argTypes) > 0 ? TypeCombinator::union(...$argTypes) : $defaultReturnType; - } - } - - return count($returnTypes) > 0 ? TypeCombinator::union(...$returnTypes) : null; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ContainerArrayAccessDynamicMethodReturnTypeExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ContainerArrayAccessDynamicMethodReturnTypeExtension.php deleted file mode 100644 index 691e3f47..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ContainerArrayAccessDynamicMethodReturnTypeExtension.php +++ /dev/null @@ -1,79 +0,0 @@ -className; - } - - public function isMethodSupported(MethodReflection $methodReflection): bool - { - return $methodReflection->getName() === 'offsetGet'; - } - - public function getTypeFromMethodCall( - MethodReflection $methodReflection, - MethodCall $methodCall, - Scope $scope, - ): Type|null { - $args = $methodCall->getArgs(); - - if (count($args) === 0) { - return null; - } - - $argType = $scope->getType($args[0]->value); - - $argStrings = $argType->getConstantStrings(); - - if ($argStrings === []) { - return null; - } - - $argTypes = []; - - foreach ($argStrings as $argString) { - $resolvedValue = $this->resolve($argString->getValue()); - - if ($resolvedValue === null) { - $argTypes[] = new ErrorType(); - continue; - } - - if (is_object($resolvedValue)) { - $class = $resolvedValue::class; - - $argTypes[] = new ObjectType($class); - continue; - } - - $argTypes[] = $scope->getTypeFromValue($resolvedValue); - } - - return TypeCombinator::union(...$argTypes); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ContainerMakeDynamicReturnTypeExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ContainerMakeDynamicReturnTypeExtension.php deleted file mode 100644 index ef332828..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ContainerMakeDynamicReturnTypeExtension.php +++ /dev/null @@ -1,37 +0,0 @@ -getName(), ['make', 'makeWith', 'resolve'], true); - } - - public function getTypeFromMethodCall(MethodReflection $methodReflection, MethodCall $methodCall, Scope $scope): Type - { - return $this->appMakeHelper->resolveTypeFromCall($methodCall, $scope); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/DateExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/DateExtension.php deleted file mode 100644 index b8eb84e9..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/DateExtension.php +++ /dev/null @@ -1,72 +0,0 @@ -getName(), [ - 'create', - 'createFromDate', - 'createFromTime', - 'createFromTimeString', - 'createFromTimestamp', - 'createFromTimestampMs', - 'createFromTimestampUTC', - 'createMidnightDate', - 'fromSerialized', - 'getTestNow', - 'instance', - 'maxValue', - 'minValue', - 'now', - 'parse', - 'today', - 'tomorrow', - 'yesterday', - 'createFromFormat', - 'createSafe', - 'make', - ], true); - } - - public function getTypeFromStaticMethodCall( - MethodReflection $methodReflection, - StaticCall $methodCall, - Scope $scope, - ): Type { - $dateType = new ObjectType(get_class(now())); - - if (in_array($methodReflection->getName(), ['createFromFormat', 'createSafe'], true)) { - return TypeCombinator::union($dateType, new ConstantBooleanType(false)); - } - - if (in_array($methodReflection->getName(), ['getTestNow', 'make'], true)) { - return TypeCombinator::addNull($dateType); - } - - return $dateType; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/DoubleUnderscoreHelperReturnTypeExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/DoubleUnderscoreHelperReturnTypeExtension.php deleted file mode 100644 index a5e229e4..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/DoubleUnderscoreHelperReturnTypeExtension.php +++ /dev/null @@ -1,42 +0,0 @@ -getName() === '__'; - } - - public function getTypeFromFunctionCall( - FunctionReflection $functionReflection, - FuncCall $functionCall, - Scope $scope, - ): Type { - if (count($functionCall->args) === 0) { - return new NullType(); - } - - return new BenevolentUnionType([ - new ArrayType(new MixedType(), new MixedType()), - new StringType(), - ]); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/EloquentBuilderExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/EloquentBuilderExtension.php deleted file mode 100644 index e7d32512..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/EloquentBuilderExtension.php +++ /dev/null @@ -1,108 +0,0 @@ -reflectionProvider->getClass(EloquentBuilder::class); - - // Don't handle dynamic wheres - if ( - Str::startsWith($methodReflection->getName(), 'where') && - ! $builderReflection->hasNativeMethod($methodReflection->getName()) - ) { - return false; - } - - if ( - Str::startsWith($methodReflection->getName(), 'find') && - $builderReflection->hasNativeMethod($methodReflection->getName()) - ) { - return false; - } - - $templateTypeMap = $methodReflection->getDeclaringClass()->getActiveTemplateTypeMap(); - - if (! $templateTypeMap->hasType(LaravelVersion::getBuilderModelGenericName())) { - return false; - } - - if ($templateTypeMap->getType(LaravelVersion::getBuilderModelGenericName())?->getObjectClassNames() === []) { - return false; - } - - return $builderReflection->hasNativeMethod($methodReflection->getName()); - } - - public function getTypeFromMethodCall( - MethodReflection $methodReflection, - MethodCall $methodCall, - Scope $scope, - ): Type|null { - $returnType = ParametersAcceptorSelector::selectFromArgs($scope, $methodCall->getArgs(), $methodReflection->getVariants())->getReturnType(); - $templateTypeMap = $methodReflection->getDeclaringClass()->getActiveTemplateTypeMap(); - - $modelType = $templateTypeMap->getType(LaravelVersion::getBuilderModelGenericName()); - if ($modelType === null) { - return null; - } - - $classNames = $modelType->getObjectClassNames(); - - if ($classNames !== [] && $modelType->isObject()->yes() && in_array(Collection::class, $returnType->getReferencedClasses(), true)) { - $collectionClassName = $this->collectionHelper->determineCollectionClassName($classNames[0]); - - $collectionReflection = $this->reflectionProvider->getClass($collectionClassName); - - if (! $collectionReflection->isGeneric()) { - // Not generic. So return the type as is - return new ObjectType($collectionClassName); - } - - $typeMap = $collectionReflection->getActiveTemplateTypeMap(); - - // Specifies key and value - if ($typeMap->count() === 2) { - return new GenericObjectType($collectionClassName, [new IntegerType(), $modelType]); - } - - // Specifies only value - if (($typeMap->count() === 1) && $typeMap->hasType('TModel')) { - return new GenericObjectType($collectionClassName, [$modelType]); - } - } - - return null; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/EnumerableGenericStaticMethodDynamicMethodReturnTypeExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/EnumerableGenericStaticMethodDynamicMethodReturnTypeExtension.php deleted file mode 100644 index 9ddfbab7..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/EnumerableGenericStaticMethodDynamicMethodReturnTypeExtension.php +++ /dev/null @@ -1,175 +0,0 @@ -getDeclaringClass()->getName() === EloquentCollection::class) { - return in_array($methodReflection->getName(), ['find', 'map', 'mapWithKeys', 'unique'], true); - } - - $methods = [ - 'chunk', - 'chunkWhile', - 'collapse', - 'combine', - 'concat', - 'crossJoin', - 'flatMap', - 'flip', - 'groupBy', - 'keyBy', - 'keys', - 'map', - 'mapInto', - 'mapToDictionary', - 'mapToGroups', - 'mapWithKeys', - 'mergeRecursive', - 'pad', - 'partition', - 'pluck', - 'random', - 'sliding', - 'split', - 'splitIn', - 'values', - 'wrap', - 'zip', - ]; - - if ($methodReflection->getDeclaringClass()->getName() === Collection::class) { - $methods = array_merge($methods, ['pop', 'shift']); - } - - return in_array($methodReflection->getName(), $methods, true); - } - - public function getTypeFromMethodCall( - MethodReflection $methodReflection, - MethodCall $methodCall, - Scope $scope, - ): Type { - $returnType = ParametersAcceptorSelector::selectFromArgs( - $scope, - $methodCall->getArgs(), - $methodReflection->getVariants(), - )->getReturnType(); - - if ((! $returnType instanceof UnionType) && $returnType->isObject()->no()) { - return $returnType; - } - - // map and mapWithKeys returns base collection, - // if items does not include Eloquent model. - // This logic is in stub files, so here we check if the return type is base collection - if ( - $methodReflection->getDeclaringClass()->getName() === EloquentCollection::class && - in_array($methodReflection->getName(), ['map', 'mapWithKeys'], true) && - $returnType->getObjectClassNames()[0] === Collection::class - ) { - return $returnType; - } - - $calledOnType = $scope->getType($methodCall->var); - - if ($calledOnType->getObjectClassReflections() === []) { - return $returnType; - } - - $classReflection = $calledOnType->getObjectClassReflections()[0]; - - // Special cases for methods returning single models - if ((new ObjectType(Model::class))->isSuperTypeOf($returnType)->yes()) { - return $returnType; - } - - // If it's a UnionType, traverse the types and try to find a collection object type - if ($returnType instanceof UnionType) { - return $returnType->traverse(function (Type $type) use ($classReflection) { - // @phpcs:ignore - if ($type instanceof GenericObjectType && ($innerReflection = $type->getClassReflection()) !== null) { // @phpstan-ignore-line - return $this->handleGenericObjectType($classReflection, $innerReflection); - } - - return $type; - }); - } - - if ($returnType->getObjectClassReflections() === []) { - return $returnType; - } - - return $this->handleGenericObjectType($classReflection, $returnType->getObjectClassReflections()[0]); - } - - private function handleGenericObjectType(ClassReflection $classReflection, ClassReflection $returnTypeClassReflection): ObjectType - { - if ($classReflection->getActiveTemplateTypeMap()->count() !== $returnTypeClassReflection->getActiveTemplateTypeMap()->count()) { - return new ObjectType($classReflection->getName()); - } - - $genericTypes = $returnTypeClassReflection->typeMapToList($returnTypeClassReflection->getActiveTemplateTypeMap()); - - if ($genericTypes === []) { - return new ObjectType($classReflection->getName()); - } - - // If the key type is gonna be a model, we change it to string - if ((new ObjectType(Model::class))->isSuperTypeOf($genericTypes[0])->yes()) { - $genericTypes[0] = new StringType(); - } - - $genericTypes = array_map(static function (Type $type) use ($classReflection) { - return TypeTraverser::map($type, static function (Type $type, callable $traverse) use ($classReflection): Type { - if ($type instanceof UnionType || $type instanceof IntersectionType) { - return $traverse($type); - } - - // @phpcs:ignore - if ($type instanceof GenericObjectType && (($innerTypeReflection = $type->getClassReflection()) !== null)) { - $genericTypes = $innerTypeReflection->typeMapToList($innerTypeReflection->getActiveTemplateTypeMap()); - - if ($classReflection->isSubclassOf($type->getClassName())) { - return new GenericObjectType($classReflection->getName(), $genericTypes); - } - } - - return $traverse($type); - }); - }, $genericTypes); - - return new GenericObjectType($classReflection->getName(), $genericTypes); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/EnumerableGenericStaticMethodDynamicStaticMethodReturnTypeExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/EnumerableGenericStaticMethodDynamicStaticMethodReturnTypeExtension.php deleted file mode 100644 index 2de7fa39..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/EnumerableGenericStaticMethodDynamicStaticMethodReturnTypeExtension.php +++ /dev/null @@ -1,110 +0,0 @@ -getName(), [ - 'make', - 'wrap', - 'times', - 'range', - ], true); - } - - public function getTypeFromStaticMethodCall( - MethodReflection $methodReflection, - StaticCall $methodCall, - Scope $scope, - ): Type { - $returnType = ParametersAcceptorSelector::selectFromArgs( - $scope, - $methodCall->getArgs(), - $methodReflection->getVariants(), - )->getReturnType(); - - if (! $returnType instanceof UnionType && $returnType->isObject()->no()) { - return $returnType; - } - - $class = $methodCall->class; - - if (! $class instanceof Name) { - return new ErrorType(); - } - - if (! $this->reflectionProvider->hasClass((string) $class)) { - return $returnType; - } - - $classReflection = $this->reflectionProvider->getClass((string) $class); - - // If it's called on Support collection, just return. - if ($classReflection->getName() === Collection::class) { - return $returnType; - } - - // If it's a UnionType, traverse the types and try to find a collection object type - if ($returnType instanceof UnionType) { - return $returnType->traverse(function (Type $type) use ($classReflection) { - // @phpcs:ignore - if ($type instanceof GenericObjectType && ($innerReflection = $type->getClassReflection()) !== null) { // @phpstan-ignore-line - return $this->handleGenericObjectType($classReflection, $innerReflection); - } - - return $type; - }); - } - - $returnTypeClassReflections = $returnType->getObjectClassReflections(); - - if ($returnTypeClassReflections === []) { - return $returnType; - } - - return $this->handleGenericObjectType($classReflection, $returnTypeClassReflections[0]); - } - - private function handleGenericObjectType(ClassReflection $classReflection, ClassReflection $returnTypeClassReflection): ObjectType - { - if ($classReflection->getActiveTemplateTypeMap()->count() !== $returnTypeClassReflection->getActiveTemplateTypeMap()->count()) { - return new ObjectType($classReflection->getName()); - } - - return new GenericObjectType( - $classReflection->getName(), - $returnTypeClassReflection->typeMapToList($returnTypeClassReflection->getActiveTemplateTypeMap()), - ); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/FactoryDynamicMethodReturnTypeExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/FactoryDynamicMethodReturnTypeExtension.php deleted file mode 100644 index 947aeb23..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/FactoryDynamicMethodReturnTypeExtension.php +++ /dev/null @@ -1,84 +0,0 @@ -getType($methodCall->var); - $originalReturnType = ParametersAcceptorSelector::selectFromArgs($scope, $methodCall->getArgs(), $methodReflection->getVariants())->getReturnType(); - - if (! $calledOnType instanceof ModelFactoryType) { - return null; - } - - if (in_array($methodReflection->getName(), ['count', 'times'], true)) { - if ($methodCall->getArgs() === []) { - return new ErrorType(); - } - - $argType = $scope->getType($methodCall->getArgs()[0]->value); - - if ((new IntegerType())->isSuperTypeOf($argType)->yes()) { - return new ModelFactoryType($calledOnType->getClassName(), null, null, TrinaryLogic::createNo()); - } - - if ((new NullType())->isSuperTypeOf($argType)->yes()) { - return new ModelFactoryType($calledOnType->getClassName(), null, null, TrinaryLogic::createYes()); - } - - return new ModelFactoryType($calledOnType->getClassName(), null, null, TrinaryLogic::createMaybe()); - } - - if (in_array($methodReflection->getName(), ['create', 'createQuietly', 'make'], true)) { - if ($calledOnType->isSingleModel()->yes()) { - return TypeCombinator::remove($originalReturnType, new ObjectType(Collection::class)); - } - - if ($calledOnType->isSingleModel()->no()) { - return TypeCombinator::remove($originalReturnType, new ObjectType(Model::class)); - } - } - - if (! $originalReturnType->isSuperTypeOf($calledOnType)->yes()) { - return null; - } - - return $calledOnType; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/GuardDynamicStaticMethodReturnTypeExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/GuardDynamicStaticMethodReturnTypeExtension.php deleted file mode 100644 index c8a82d2e..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/GuardDynamicStaticMethodReturnTypeExtension.php +++ /dev/null @@ -1,83 +0,0 @@ -getName() === 'guard'; - } - - public function getTypeFromStaticMethodCall( - MethodReflection $methodReflection, - StaticCall $methodCall, - Scope $scope, - ): Type { - $defaultReturnType = TypeCombinator::intersect(new ObjectType(Guard::class), new ObjectType(StatefulGuard::class)); - - $config = $this->getContainer()->get('config'); - if ($config === null) { - return $defaultReturnType; - } - - /** @var string $defaultGuard */ - $defaultGuard = $config->get('auth.defaults.guard'); - - if (count($methodCall->getArgs()) === 0) { - /** @var array $guards */ - $guards = $config->get('auth.guards'); - - if (! array_key_exists($defaultGuard, $guards)) { - return $defaultReturnType; - } - - return $this->findTypeFromGuardDriver($guards[$defaultGuard]['driver']) ?? $defaultReturnType; - } - - $argType = $scope->getType($methodCall->getArgs()[0]->value); - $argStrings = $argType->getConstantStrings(); - - if (count($argStrings) !== 1) { - return $defaultReturnType; - } - - return $this->findTypeFromGuardDriver($argStrings[0]->getValue()) ?? $defaultReturnType; - } - - private function findTypeFromGuardDriver(string $driver): Type|null - { - return match ($driver) { - 'session' => new ObjectType('Illuminate\Auth\SessionGuard'), - 'token' => new ObjectType(TokenGuard::class), - 'passport' => new ObjectType(RequestGuard::class), - default => null, - }; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/GuardExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/GuardExtension.php deleted file mode 100644 index 09f0d3b0..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/GuardExtension.php +++ /dev/null @@ -1,85 +0,0 @@ -getName() === 'user'; - } - - public function getTypeFromMethodCall( - MethodReflection $methodReflection, - MethodCall $methodCall, - Scope $scope, - ): Type|null { - $config = $this->getContainer()->get('config'); - $authModels = []; - - if ($config !== null) { - $guard = $this->getGuardFromMethodCall($scope, $methodCall); - $authModels = $this->getAuthModels($config, $guard); - } - - if (count($authModels) === 0) { - return null; - } - - return TypeCombinator::addNull( - TypeCombinator::union(...array_map( - static fn (string $authModel): Type => new ObjectType($authModel), - $authModels, - )), - ); - } - - private function getGuardFromMethodCall(Scope $scope, MethodCall $methodCall): string|null - { - if ( - ! ($methodCall->var instanceof StaticCall) && - ! ($methodCall->var instanceof MethodCall) && - ! ($methodCall->var instanceof FuncCall) - ) { - return null; - } - - if (count($methodCall->var->args) !== 1) { - return null; - } - - $guardType = $scope->getType($methodCall->var->getArgs()[0]->value); - $constantStrings = $guardType->getConstantStrings(); - - if (count($constantStrings) !== 1) { - return null; - } - - return $constantStrings[0]->getValue(); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/AppExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/AppExtension.php deleted file mode 100644 index 224aa7d0..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/AppExtension.php +++ /dev/null @@ -1,41 +0,0 @@ -getName() === 'app' || $functionReflection->getName() === 'resolve'; - } - - public function getTypeFromFunctionCall( - FunctionReflection $functionReflection, - FuncCall $functionCall, - Scope $scope, - ): Type { - if (count($functionCall->getArgs()) === 0) { - return new ObjectType(Application::class); - } - - return $this->appMakeHelper->resolveTypeFromCall($functionCall, $scope); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/AuthExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/AuthExtension.php deleted file mode 100644 index 46ab8813..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/AuthExtension.php +++ /dev/null @@ -1,49 +0,0 @@ -getName() === 'auth'; - } - - public function getTypeFromFunctionCall( - FunctionReflection $functionReflection, - FuncCall $functionCall, - Scope $scope, - ): Type { - if (count($functionCall->getArgs()) < 1) { - /** @var ?object $class */ - $class = $this->resolve(Factory::class); - - if ($class === null) { - return new ObjectType(Factory::class); - } - - return new ObjectType($class::class); - } - - return TypeCombinator::intersect(new ObjectType(Guard::class), new ObjectType(StatefulGuard::class)); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/CollectExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/CollectExtension.php deleted file mode 100644 index 5e4f432a..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/CollectExtension.php +++ /dev/null @@ -1,46 +0,0 @@ -getName() === 'collect'; - } - - public function getTypeFromFunctionCall( - FunctionReflection $functionReflection, - FuncCall $functionCall, - Scope $scope, - ): Type|null { - if (count($functionCall->getArgs()) < 1) { - return new GenericObjectType(Collection::class, [new BenevolentUnionType([new IntegerType(), new StringType()]), new MixedType()]); - } - - $valueType = $scope->getType($functionCall->getArgs()[0]->value); - - return $this->collectionHelper->determineGenericCollectionTypeFromType($valueType); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/NowAndTodayExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/NowAndTodayExtension.php deleted file mode 100644 index c0d118a5..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/NowAndTodayExtension.php +++ /dev/null @@ -1,32 +0,0 @@ -getName() === 'now' || $functionReflection->getName() === 'today'; - } - - public function getTypeFromFunctionCall( - FunctionReflection $functionReflection, - FuncCall $functionCall, - Scope $scope, - ): Type { - return new ObjectType(get_class(now())); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/ResponseExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/ResponseExtension.php deleted file mode 100644 index 399770bf..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/ResponseExtension.php +++ /dev/null @@ -1,37 +0,0 @@ -getName() === 'response'; - } - - public function getTypeFromFunctionCall( - FunctionReflection $functionReflection, - FuncCall $functionCall, - Scope $scope, - ): Type { - if (count($functionCall->getArgs()) === 0) { - return new ObjectType(ResponseFactory::class); - } - - return new ObjectType(Response::class); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/StrExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/StrExtension.php deleted file mode 100644 index 406dd721..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/StrExtension.php +++ /dev/null @@ -1,33 +0,0 @@ -getName() === 'str'; - } - - public function getTypeFromFunctionCall(FunctionReflection $functionReflection, FuncCall $functionCall, Scope $scope): Type|null - { - if (count($functionCall->getArgs()) === 1) { - return new ObjectType(Stringable::class); - } - - return new MixedType(); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/TapExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/TapExtension.php deleted file mode 100644 index 7ebebfc8..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/TapExtension.php +++ /dev/null @@ -1,45 +0,0 @@ -getName() === 'tap'; - } - - public function getTypeFromFunctionCall( - FunctionReflection $functionReflection, - FuncCall $functionCall, - Scope $scope, - ): Type { - if (count($functionCall->getArgs()) === 1) { - $type = $scope->getType($functionCall->getArgs()[0]->value); - - return new GenericObjectType(HigherOrderTapProxy::class, [ - $type instanceof ThisType ? $type->getStaticObjectType() : $type, - ]); - } - - if (count($functionCall->getArgs()) === 2) { - return $scope->getType($functionCall->getArgs()[0]->value); - } - - return new NeverType(); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/ValidatorExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/ValidatorExtension.php deleted file mode 100644 index b098cbda..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/ValidatorExtension.php +++ /dev/null @@ -1,41 +0,0 @@ -getName() === 'validator'; - } - - public function getTypeFromFunctionCall( - FunctionReflection $functionReflection, - FuncCall $functionCall, - Scope $scope, - ): Type { - if (count($functionCall->getArgs()) === 0) { - return new ObjectType(Factory::class); - } - - return new IntersectionType([ - new ObjectType(Validator::class), - new ObjectType(\Illuminate\Contracts\Validation\Validator::class), - ]); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/ValueExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/ValueExtension.php deleted file mode 100644 index 10b40b84..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/Helpers/ValueExtension.php +++ /dev/null @@ -1,48 +0,0 @@ -getName() === 'value'; - } - - public function getTypeFromFunctionCall( - FunctionReflection $functionReflection, - FuncCall $functionCall, - Scope $scope, - ): Type { - if (count($functionCall->getArgs()) === 0) { - return new NeverType(); - } - - $arg = $functionCall->getArgs()[0]->value; - if ($arg instanceof Closure) { - $callbackType = $scope->getType($arg); - - return ParametersAcceptorSelector::selectFromArgs( - $scope, - $functionCall->getArgs(), - $callbackType->getCallableParametersAcceptors($scope), - )->getReturnType(); - } - - return $scope->getType($arg); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/HigherOrderTapProxyExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/HigherOrderTapProxyExtension.php deleted file mode 100644 index 17bbeb6c..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/HigherOrderTapProxyExtension.php +++ /dev/null @@ -1,48 +0,0 @@ -getType($methodCall->var); - - if ($type instanceof GenericObjectType) { // @phpstan-ignore-line - $types = $type->getTypes(); - - if (count($types) === 1 && $types[0]->getObjectClassNames() !== []) { - return $types[0]; - } - } - - return new MixedType(); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ModelDynamicStaticMethodReturnTypeExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ModelDynamicStaticMethodReturnTypeExtension.php deleted file mode 100644 index c9135666..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ModelDynamicStaticMethodReturnTypeExtension.php +++ /dev/null @@ -1,137 +0,0 @@ -getName(); - - if ($name === '__construct') { - return false; - } - - // Another extension handles this case - if (Str::startsWith($name, 'find')) { - return false; - } - - if (in_array($name, ['get', 'hydrate', 'fromQuery'], true)) { - return true; - } - - return $this->reflectionProvider->getClass(Model::class)->hasNativeMethod($name); - } - - public function getTypeFromStaticMethodCall( - MethodReflection $methodReflection, - StaticCall $methodCall, - Scope $scope, - ): Type|null { - $method = $methodReflection->getDeclaringClass() - ->getMethod($methodReflection->getName(), $scope); - - $returnType = ParametersAcceptorSelector::selectFromArgs($scope, $methodCall->getArgs(), $method->getVariants())->getReturnType(); - - if (count(array_intersect([EloquentBuilder::class, QueryBuilder::class, Collection::class], $returnType->getReferencedClasses())) === 0) { - return null; - } - - if (count(array_intersect([EloquentBuilder::class], $returnType->getReferencedClasses())) > 0) { - if ($methodCall->class instanceof Name) { - return new GenericObjectType( - $this->builderHelper->determineBuilderName($scope->resolveName($methodCall->class)), - [$scope->resolveTypeByName($methodCall->class)], - ); - } - - $type = $scope->getType($methodCall->class); - - if ($type->isClassStringType()->yes()) { - $type = $type->getClassStringObjectType(); - } - - $classNames = $type->getObjectClassNames(); - - $types = []; - - foreach ($classNames as $className) { - if (! $this->reflectionProvider->hasClass($className)) { - continue; - } - - try { - $types[] = new GenericObjectType( - $this->builderHelper->determineBuilderName($className), - [new ObjectType($className)], - ); - } catch (MissingMethodFromReflectionException) { - } - } - - if ($types !== []) { - return TypeCombinator::union(...$types); - } - } - - if (in_array(Collection::class, $returnType->getReferencedClasses(), true)) { - if ($methodCall->class instanceof Name) { - $modelNames = [$scope->resolveName($methodCall->class)]; - } else { - $modelNames = $scope->getType($methodCall->class)->getObjectTypeOrClassStringObjectType()->getObjectClassNames(); - } - - $types = []; - - foreach ($modelNames as $modelName) { - $types[] = $this->collectionHelper->determineCollectionClass($modelName); - } - - if ($types !== []) { - return TypeCombinator::union(...$types); - } - } - - return $returnType; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ModelFactoryDynamicStaticMethodReturnTypeExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ModelFactoryDynamicStaticMethodReturnTypeExtension.php deleted file mode 100644 index 996e56dd..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ModelFactoryDynamicStaticMethodReturnTypeExtension.php +++ /dev/null @@ -1,140 +0,0 @@ -getName() === 'factory'; - } - - public function getTypeFromStaticMethodCall( - MethodReflection $methodReflection, - StaticCall $methodCall, - Scope $scope, - ): Type { - $class = $methodCall->class; - - $calledOnType = $class instanceof Name - ? new ObjectType($scope->resolveName($class)) - : $scope->getType($class); - - if (count($methodCall->getArgs()) === 0) { - $isSingleModel = TrinaryLogic::createYes(); - } else { - $argType = $scope->getType($methodCall->getArgs()[0]->value); - - $numericTypes = [ - new IntegerType(), - new FloatType(), - new IntersectionType([ - new StringType(), - new AccessoryNumericStringType(), - ]), - ]; - - $isSingleModel = (new UnionType($numericTypes))->isSuperTypeOf($argType)->negate(); - } - - return TypeCombinator::union(...array_map( - function (ClassReflection $classReflection) use ($scope, $isSingleModel) { - $factoryReflection = $this->getFactoryReflection($classReflection, $scope); - - if ($factoryReflection === null) { - return new ErrorType(); - } - - return new ModelFactoryType($factoryReflection->getName(), null, $factoryReflection, $isSingleModel); - }, - $calledOnType->getObjectClassReflections(), - )); - } - - private function getFactoryReflection( - ClassReflection $modelReflection, - Scope $scope, - ): ClassReflection|null { - $factoryReflection = $this->getFactoryFromNewFactoryMethod($modelReflection, $scope); - - if ($factoryReflection !== null) { - return $factoryReflection; - } - - /** @phpstan-ignore argument.type (guaranteed to be model class-string) */ - $factoryClass = Factory::resolveFactoryName($modelReflection->getName()); - - if (class_exists($factoryClass)) { - return $this->reflectionProvider->getClass($factoryClass); - } - - return null; - } - - private function getFactoryFromNewFactoryMethod( - ClassReflection $modelReflection, - Scope $scope, - ): ClassReflection|null { - if (! $modelReflection->hasMethod('newFactory')) { - return null; - } - - $factoryReflections = $modelReflection->getMethod('newFactory', $scope) - ->getVariants()[0] - ->getReturnType() - ->getObjectClassReflections(); - - if (count($factoryReflections) !== 1) { - return null; - } - - foreach ($factoryReflections as $factoryReflection) { - if ( - $factoryReflection->isSubclassOf(Factory::class) - && ! $factoryReflection->isAbstract() - ) { - return $factoryReflection; - } - } - - return null; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ModelFindExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ModelFindExtension.php deleted file mode 100644 index 963f1b26..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ModelFindExtension.php +++ /dev/null @@ -1,112 +0,0 @@ -getName(); - - if (! Str::startsWith($methodName, 'find')) { - return false; - } - - return $this->reflectionProvider->getClass(Builder::class)->hasNativeMethod($methodName) || - $this->reflectionProvider->getClass(QueryBuilder::class)->hasNativeMethod($methodName); - } - - public function getTypeFromStaticMethodCall( - MethodReflection $methodReflection, - StaticCall $methodCall, - Scope $scope, - ): Type { - if (count($methodCall->getArgs()) < 1) { - return new ErrorType(); - } - - $class = $methodCall->class; - - if ($class instanceof Name) { - $modelNames = [$scope->resolveName($class)]; - } else { - $type = $scope->getType($class); - - if ($type->getObjectClassNames() !== []) { - $modelNames = $type->getObjectClassNames(); - } elseif ( - $type->isClassStringType()->yes() && - count($type->getReferencedClasses()) > 0 - ) { - $modelNames = $type->getReferencedClasses(); - } else { - return new ErrorType(); - } - } - - $types = []; - - foreach ($modelNames as $modelName) { - $returnType = $methodReflection->getVariants()[0]->getReturnType(); - $argType = $scope->getType($methodCall->getArgs()[0]->value); - - if ($argType->isIterable()->yes()) { - if (in_array(Collection::class, $returnType->getReferencedClasses(), true)) { - $types[] = $this->collectionHelper->determineCollectionClass($modelName); - continue; - } - - $types[] = TypeCombinator::remove($returnType, new ObjectType($modelName)); - continue; - } - - if ($argType instanceof MixedType) { - $types[] = $returnType; - } else { - $types[] = TypeCombinator::remove( - TypeCombinator::remove( - $returnType, - new ArrayType(new MixedType(), new ObjectType($modelName)), - ), - new ObjectType(Collection::class), - ); - } - } - - return TypeCombinator::union(...$types); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ModelOnlyDynamicMethodReturnTypeExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ModelOnlyDynamicMethodReturnTypeExtension.php deleted file mode 100644 index 4c48af53..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/ModelOnlyDynamicMethodReturnTypeExtension.php +++ /dev/null @@ -1,86 +0,0 @@ -getName() === 'only'; - } - - public function getTypeFromMethodCall( - MethodReflection $methodReflection, - MethodCall $methodCall, - Scope $scope, - ): Type { - $args = $methodCall->getArgs(); - - if (count($args) < 1) { - return new ErrorType(); - } - - $keys = []; - - foreach ($args as $arg) { - $type = $scope->getType($arg->value); - - $stringsArray = []; - $stringsArray[] = $type->getConstantStrings(); - - foreach ($type->getArrays() as $array) { - $stringsArray[] = $array->getItemType()->getConstantStrings(); - } - - foreach ($stringsArray as $strings) { - if (count($strings) > 0) { - array_push($keys, ...$strings); - continue 2; - } - } - - // encountered an argument that does not resolve to a constant string - return new ArrayType(new StringType(), new MixedType()); - } - - $model = $scope->getType($methodCall->var); - - $array = array_reduce($keys, static function ($array, $key) use ($model, $scope) { - $name = $key->getValue(); - - $valueType = $model->hasProperty($name)->yes() - ? $model->getProperty($name, $scope)->getReadableType() - : new NullType(); - - $array->setOffsetValueType($key, $valueType); - - return $array; - }, ConstantArrayTypeBuilder::createEmpty()); - - return $array->getArray(); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/NewModelQueryDynamicMethodReturnTypeExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/NewModelQueryDynamicMethodReturnTypeExtension.php deleted file mode 100644 index 42a1963b..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/NewModelQueryDynamicMethodReturnTypeExtension.php +++ /dev/null @@ -1,74 +0,0 @@ -getName(), [ - 'newQuery', - 'newModelQuery', - 'newQueryWithoutRelationships', - 'newQueryWithoutScopes', - 'newQueryWithoutScope', - 'newQueryForRestoration', - ], true); - } - - public function getTypeFromMethodCall( - MethodReflection $methodReflection, - MethodCall $methodCall, - Scope $scope, - ): Type|null { - $calledOnType = $scope->getType($methodCall->var); - - $classReflections = $calledOnType->getObjectClassReflections(); - - if ($classReflections === []) { - return null; - } - - $types = []; - - foreach ($classReflections as $classReflection) { - if (! $classReflection->isSubclassOf(Model::class)) { - continue; - } - - $builderName = $this->builderHelper->determineBuilderName($classReflection->getName()); - - $types[] = new GenericObjectType($builderName, [new ObjectType($classReflection->getName())]); - } - - if ($types === []) { - return null; - } - - return TypeCombinator::union(...$types); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/RelationCollectionExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/RelationCollectionExtension.php deleted file mode 100644 index f4bf60cb..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/RelationCollectionExtension.php +++ /dev/null @@ -1,67 +0,0 @@ -getDeclaringClass()->getActiveTemplateTypeMap()->getType('TRelatedModel'); - - if ($modelType === null && $methodReflection->getDeclaringClass()->getName() === Builder::class) { - $modelType = $methodReflection->getDeclaringClass()->getActiveTemplateTypeMap()->getType(LaravelVersion::getBuilderModelGenericName()); - } - - if ($modelType === null || $modelType->getObjectClassNames() === []) { - return false; - } - - return $methodReflection->getDeclaringClass()->hasNativeMethod($methodReflection->getName()) || - $this->reflectionProvider->getClass(Builder::class)->hasNativeMethod($methodReflection->getName()) || - $this->reflectionProvider->getClass(QueryBuilder::class)->hasNativeMethod($methodReflection->getName()); - } - - public function getTypeFromMethodCall( - MethodReflection $methodReflection, - MethodCall $methodCall, - Scope $scope, - ): Type|null { - $returnType = ParametersAcceptorSelector::selectFromArgs($scope, $methodCall->getArgs(), $methodReflection->getVariants())->getReturnType(); - - if (! in_array(Collection::class, $returnType->getReferencedClasses(), true)) { - return null; - } - - return $this->collectionHelper->replaceCollectionsInType($returnType); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/RequestFileExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/RequestFileExtension.php deleted file mode 100644 index 01f4a1f9..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/RequestFileExtension.php +++ /dev/null @@ -1,52 +0,0 @@ -getName() === 'file'; - } - - public function getTypeFromMethodCall( - MethodReflection $methodReflection, - MethodCall $methodCall, - Scope $scope, - ): Type { - $uploadedFileType = new ObjectType(UploadedFile::class); - $uploadedFileArrayType = new ArrayType(new IntegerType(), $uploadedFileType); - - if (count($methodCall->getArgs()) === 0) { - return new ArrayType(new IntegerType(), $uploadedFileType); - } - - if (count($methodCall->getArgs()) === 1) { - return TypeCombinator::union($uploadedFileArrayType, TypeCombinator::addNull($uploadedFileType)); - } - - return TypeCombinator::union(TypeCombinator::union($uploadedFileArrayType, $uploadedFileType), $scope->getType($methodCall->getArgs()[1]->value)); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/RequestRouteExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/RequestRouteExtension.php deleted file mode 100644 index 9be8ff06..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/RequestRouteExtension.php +++ /dev/null @@ -1,48 +0,0 @@ -getName() === 'route'; - } - - public function getTypeFromMethodCall( - MethodReflection $methodReflection, - MethodCall $methodCall, - Scope $scope, - ): Type { - if (count($methodCall->getArgs()) === 0) { - return TypeCombinator::addNull(new ObjectType(Route::class)); - } - - return ParametersAcceptorSelector::selectFromArgs( - $scope, - $methodCall->getArgs(), - $methodReflection->getVariants(), - )->getReturnType(); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/RequestUserExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/RequestUserExtension.php deleted file mode 100644 index c2dde227..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/RequestUserExtension.php +++ /dev/null @@ -1,83 +0,0 @@ -getName() === 'user'; - } - - public function getTypeFromMethodCall( - MethodReflection $methodReflection, - MethodCall $methodCall, - Scope $scope, - ): Type|null { - if ($methodReflection->getDeclaringClass()->getName() !== Request::class) { - return null; - } - - $config = $this->getContainer()->get('config'); - $authModels = []; - - if ($config !== null) { - $guard = $this->getGuardFromMethodCall($scope, $methodCall); - $authModels = $this->getAuthModels($config, $guard); - } - - if (count($authModels) === 0) { - return null; - } - - return TypeCombinator::addNull( - TypeCombinator::union(...array_map( - static fn (string $authModel): Type => new ObjectType($authModel), - $authModels, - )), - ); - } - - private function getGuardFromMethodCall(Scope $scope, MethodCall $methodCall): string|null - { - $args = $methodCall->getArgs(); - - if (count($args) !== 1) { - return null; - } - - $guardType = $scope->getType($args[0]->value); - $constantStrings = $guardType->getConstantStrings(); - - if (count($constantStrings) !== 1) { - return null; - } - - return $constantStrings[0]->getValue(); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/StorageDynamicStaticMethodReturnTypeExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/StorageDynamicStaticMethodReturnTypeExtension.php deleted file mode 100644 index 2878035a..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/StorageDynamicStaticMethodReturnTypeExtension.php +++ /dev/null @@ -1,40 +0,0 @@ -getName(), ['disk', 'drive', 'cloud'], strict: true); - } - - public function getTypeFromStaticMethodCall( - MethodReflection $methodReflection, - StaticCall $methodCall, - Scope $scope, - ): Type { - return new ObjectType(FilesystemAdapter::class); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/TestCaseExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/TestCaseExtension.php deleted file mode 100644 index db971f61..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/TestCaseExtension.php +++ /dev/null @@ -1,65 +0,0 @@ -getName(), [ - 'mock', - 'partialMock', - 'spy', - ], true); - } - - public function getTypeFromMethodCall( - MethodReflection $methodReflection, - MethodCall $methodCall, - Scope $scope, - ): Type { - $defaultReturnType = new ObjectType('Mockery\\MockInterface'); - - if (count($methodCall->args) === 0) { - return new ErrorType(); - } - - $classType = $scope->getType($methodCall->getArgs()[0]->value); - $constantStrings = $classType->getConstantStrings(); - - if ($constantStrings === []) { - return $defaultReturnType; - } - - $returnTypes = []; - - foreach ($constantStrings as $constantString) { - $objectType = new ObjectType($constantString->getValue()); - - $returnTypes[] = TypeCombinator::intersect($defaultReturnType, $objectType); - } - - return TypeCombinator::union(...$returnTypes); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/TransHelperReturnTypeExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/TransHelperReturnTypeExtension.php deleted file mode 100644 index e581dcf9..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/TransHelperReturnTypeExtension.php +++ /dev/null @@ -1,43 +0,0 @@ -getName() === 'trans'; - } - - public function getTypeFromFunctionCall( - FunctionReflection $functionReflection, - FuncCall $functionCall, - Scope $scope, - ): Type { - if (count($functionCall->args) === 0) { - return new ObjectType(Translator::class); - } - - return new BenevolentUnionType([ - new ArrayType(new MixedType(), new MixedType()), - new StringType(), - ]); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/TranslatorGetReturnTypeExtension.php b/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/TranslatorGetReturnTypeExtension.php deleted file mode 100644 index 76437dbd..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/ReturnTypes/TranslatorGetReturnTypeExtension.php +++ /dev/null @@ -1,41 +0,0 @@ -getName() === 'get'; - } - - public function getTypeFromMethodCall( - MethodReflection $methodReflection, - MethodCall $methodCall, - Scope $scope, - ): Type { - return new BenevolentUnionType([ - new ArrayType(new MixedType(), new MixedType()), - new StringType(), - ]); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Rules/CheckDispatchArgumentTypesCompatibleWithClassConstructorRule.php b/docker/statistics/vendor/larastan/larastan/src/Rules/CheckDispatchArgumentTypesCompatibleWithClassConstructorRule.php deleted file mode 100644 index aa876d36..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Rules/CheckDispatchArgumentTypesCompatibleWithClassConstructorRule.php +++ /dev/null @@ -1,162 +0,0 @@ - */ -class CheckDispatchArgumentTypesCompatibleWithClassConstructorRule implements Rule -{ - public function __construct( - private ReflectionProvider $reflectionProvider, - private FunctionCallParametersCheck $check, - private string $dispatchableClass, - ) { - } - - public function getNodeType(): string - { - return StaticCall::class; - } - - /** @inheritDoc */ - public function processNode(Node $node, Scope $scope): array - { - if (! $node->name instanceof Node\Identifier) { - return []; - } - - $methodName = $node->name->name; - - if (! in_array($methodName, $this->getAvailableMethods(), true)) { - return []; - } - - if (! $node->class instanceof Node\Name) { - return []; - } - - $jobClassReflection = $this->reflectionProvider->getClass($scope->resolveName($node->class)); - - if (! $jobClassReflection->hasTraitUse($this->dispatchableClass)) { - return []; - } - - $jobOrEvent = $this->dispatchableClass === Dispatchable::class ? 'job' : 'event'; - - if (! $jobClassReflection->hasConstructor()) { - $requiredArgCount = 0; - - if (in_array($methodName, ['dispatchIf', 'dispatchUnless'], true)) { - $requiredArgCount = 1; - } - - if (count($node->getArgs()) > $requiredArgCount) { - return [ - RuleErrorBuilder::message(sprintf( - ucfirst($jobOrEvent) . ' class %s does not have a constructor and must be dispatched without any parameters.', - $jobClassReflection->getDisplayName(), - )) - ->identifier(sprintf('larastan.%s.noConstructor', $jobOrEvent . 's')) - ->build(), - ]; - } - - return []; - } - - if (in_array($methodName, ['dispatchIf', 'dispatchUnless'], true)) { - if ($node->getArgs() === []) { - return []; // Handled by other rules - } - - $firstArgType = $scope->getType($node->getArgs()[0]->value); - if (! (new BooleanType())->isSuperTypeOf($firstArgType)->yes()) { - return []; // Handled by other rules - } - } - - $constructorReflection = $jobClassReflection->getConstructor(); - - $classDisplayName = str_replace('%', '%%', $jobClassReflection->getDisplayName()); - - // Special case because these methods have another parameter as first argument. - if (in_array($methodName, ['dispatchIf', 'dispatchUnless'], true)) { - $args = $node->getArgs(); - array_shift($args); - $node = (new BuilderFactory())->staticCall($node->class, $node->name, $args); - } - - // @phpstan-ignore-next-line - return $this->check->check( - ParametersAcceptorSelector::selectFromArgs( - $scope, - $node->getArgs(), - $constructorReflection->getVariants(), - ), - $scope, - $constructorReflection->getDeclaringClass()->isBuiltin(), - $node, - [ - ucfirst($jobOrEvent) . ' class ' . $classDisplayName . ' constructor invoked with %d parameter in ' . $classDisplayName . '::' . $methodName . '(), %d required.', - ucfirst($jobOrEvent) . ' class ' . $classDisplayName . ' constructor invoked with %d parameters in ' . $classDisplayName . '::' . $methodName . '(), %d required.', - ucfirst($jobOrEvent) . ' class ' . $classDisplayName . ' constructor invoked with %d parameter in ' . $classDisplayName . '::' . $methodName . '(), at least %d required.', - ucfirst($jobOrEvent) . ' class ' . $classDisplayName . ' constructor invoked with %d parameters in ' . $classDisplayName . '::' . $methodName . '(), at least %d required.', - ucfirst($jobOrEvent) . ' class ' . $classDisplayName . ' constructor invoked with %d parameter in ' . $classDisplayName . '::' . $methodName . '(), %d-%d required.', - ucfirst($jobOrEvent) . ' class ' . $classDisplayName . ' constructor invoked with %d parameters in ' . $classDisplayName . '::' . $methodName . '(), %d-%d required.', - 'Parameter %s of ' . $jobOrEvent . ' class ' . $classDisplayName . ' constructor expects %s in ' . $classDisplayName . '::' . $methodName . '(), %s given.', - '', // constructor does not have a return type - 'Parameter %s of ' . $jobOrEvent . ' class ' . $classDisplayName . ' constructor is passed by reference, so it expects variables only', - 'Unable to resolve the template type %s in instantiation of ' . $jobOrEvent . ' class ' . $classDisplayName, - 'Missing parameter $%s in call to ' . $classDisplayName . ' constructor.', - 'Unknown parameter $%s in call to ' . $classDisplayName . ' constructor.', - 'Return type of call to ' . $classDisplayName . ' constructor contains unresolvable type.', - ], - ); - } - - /** @return non-empty-string[] */ - private function getAvailableMethods(): array - { - if ($this->dispatchableClass === Dispatchable::class) { - return [ - 'dispatch', - 'dispatchIf', - 'dispatchUnless', - 'dispatchSync', - 'dispatchNow', - 'dispatchAfterResponse', - ]; - } - - if ($this->dispatchableClass === EventDispatchable::class) { - return [ - 'dispatch', - 'dispatchIf', - 'dispatchUnless', - ]; - } - - return []; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Rules/ConsoleCommand/UndefinedArgumentOrOptionRule.php b/docker/statistics/vendor/larastan/larastan/src/Rules/ConsoleCommand/UndefinedArgumentOrOptionRule.php deleted file mode 100644 index f82e0333..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Rules/ConsoleCommand/UndefinedArgumentOrOptionRule.php +++ /dev/null @@ -1,91 +0,0 @@ - */ -final class UndefinedArgumentOrOptionRule implements Rule -{ - public function __construct(private ConsoleApplicationResolver $consoleApplicationResolver) - { - } - - public function getNodeType(): string - { - return MethodCall::class; - } - - /** @return RuleError[] errors */ - public function processNode(Node $node, Scope $scope): array - { - if (! $node->name instanceof Node\Identifier || ! in_array($node->name->name, ['argument', 'option'], true)) { - return []; - } - - if (count($node->getArgs()) !== 1) { - return []; - } - - $classReflection = $scope->getClassReflection(); - - if ($classReflection === null) { - return []; - } - - if (! (new ObjectType('Illuminate\Console\Command'))->isSuperTypeOf(new ObjectType($classReflection->getName()))->yes()) { - return []; - } - - if (! (new ObjectType('Illuminate\Console\Command'))->isSuperTypeOf($scope->getType($node->var))->yes()) { - return []; - } - - $methodName = $node->name->name; - - $argType = $scope->getType($node->getArgs()[0]->value); - - $argStrings = $argType->getConstantStrings(); - - if (count($argStrings) !== 1) { - return []; - } - - $argName = $argStrings[0]->getValue(); - - $errors = []; - - foreach ($this->consoleApplicationResolver->findCommands($classReflection) as $name => $command) { - $command->mergeApplicationDefinition(); - - if ($methodName === 'argument') { - if (! $command->getDefinition()->hasArgument($argName)) { - $errors[] = RuleErrorBuilder::message(sprintf('Command "%s" does not have argument "%s".', $name, $argName)) - ->line($node->getLine()) - ->identifier('larastan.console.undefinedArgument') - ->build(); - } - } elseif (! $command->getDefinition()->hasOption($argName) && ! $command->getDefinition()->hasShortcut($argName)) { - $errors[] = RuleErrorBuilder::message(sprintf('Command "%s" does not have option "%s".', $name, $argName)) - ->line($node->getLine()) - ->identifier('larastan.console.undefinedOption') - ->build(); - } - } - - return $errors; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Rules/DeferrableServiceProviderMissingProvidesRule.php b/docker/statistics/vendor/larastan/larastan/src/Rules/DeferrableServiceProviderMissingProvidesRule.php deleted file mode 100644 index 43bd8087..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Rules/DeferrableServiceProviderMissingProvidesRule.php +++ /dev/null @@ -1,59 +0,0 @@ - */ -class DeferrableServiceProviderMissingProvidesRule implements Rule -{ - public function getNodeType(): string - { - return InClassNode::class; - } - - /** - * @return RuleError[] - * - * @throws ShouldNotHappenException - * @throws MissingMethodFromReflectionException - */ - public function processNode(Node $node, Scope $scope): array - { - $classReflection = $node->getClassReflection(); - - // This rule is only applicable to deferrable serviceProviders - if (! $classReflection->isSubclassOf(ServiceProvider::class) || ! $classReflection->implementsInterface(DeferrableProvider::class)) { - return []; - } - - if (! $classReflection->hasNativeMethod('provides')) { - throw new ShouldNotHappenException('If this scenario happens, the "provides" method is removed from the base Laravel ServiceProvider and this rule can be removed.'); - } - - $method = $classReflection->getNativeMethod('provides'); - - // The provides method is overwritten somewhere in the class hierarchy - if ($method->getDeclaringClass()->getName() !== ServiceProvider::class) { - return []; - } - - return [ - RuleErrorBuilder::message('ServiceProviders that implement the "DeferrableProvider" interface should implement the "provides" method that returns an array of strings or class-strings') - ->line($node->getLine()) - ->identifier('larastan.deferrableServiceProvider.missingProvides') - ->build(), - ]; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Rules/ModelAppendsRule.php b/docker/statistics/vendor/larastan/larastan/src/Rules/ModelAppendsRule.php deleted file mode 100644 index cb143ac2..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Rules/ModelAppendsRule.php +++ /dev/null @@ -1,93 +0,0 @@ - - */ -class ModelAppendsRule implements Rule -{ - public function __construct( - private ModelPropertyHelper $modelPropertyHelper, - ) { - } - - public function getNodeType(): string - { - return Property::class; - } - - /** @return array */ - public function processNode(Node $node, Scope $scope): array - { - if ($node->props[0]->name->toString() !== 'appends') { - return []; - } - - $classReflection = $scope->getClassReflection(); - - if (! $classReflection?->isSubclassOf(Model::class)) { - return []; - } - - $value = $node->props[0]->default; - - if (! $value instanceof Array_) { - return []; - } - - $appends = $value->items; - - return array_reduce($appends, function ($errors, $appended) use ($classReflection, $scope) { - if (! $appended?->value instanceof String_) { - return $errors; - } - - $name = $appended->value->value; - - $hasDatabaseProperty = $this->modelPropertyHelper->hasDatabaseProperty($classReflection, $name); - $hasAccessor = $this->modelPropertyHelper->hasAccessor($classReflection, $name, strictGenerics: false); - - if ($hasDatabaseProperty) { - $errors[] = RuleErrorBuilder::message(sprintf("Property '%s' is not a computed property, remove from \$appends.", $name)) - ->identifier('rules.modelAppends') - ->line($appended->getLine()) - ->file($scope->getFile()) - ->build(); - } - - if (! $hasDatabaseProperty && ! $hasAccessor) { - $errors[] = RuleErrorBuilder::message(sprintf("Property '%s' does not exist in model.", $name)) - ->identifier('rules.modelAppends') - ->line($appended->getLine()) - ->file($scope->getFile()) - ->build(); - } - - return $errors; - }, []); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Rules/ModelRuleHelper.php b/docker/statistics/vendor/larastan/larastan/src/Rules/ModelRuleHelper.php deleted file mode 100644 index 9a119dd2..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Rules/ModelRuleHelper.php +++ /dev/null @@ -1,63 +0,0 @@ -isSuperTypeOf($type)->yes() && - ! (new ObjectType(EloquentBuilder::class))->isSuperTypeOf($type)->yes() && - ! (new ObjectType(Relation::class))->isSuperTypeOf($type)->yes() && - ! (new ObjectType(Model::class))->isSuperTypeOf($type)->yes() - ) { - return null; - } - - // We expect it to be generic builder or relation class with model type inside - if ((! $type instanceof GenericObjectType) && (new ObjectType(Model::class))->isSuperTypeOf($type)->no()) { - return null; - } - - if ($type instanceof GenericObjectType) { - $modelType = $type->getTypes()[0]; - } else { - $modelType = $type; - } - - $modelType = TypeCombinator::removeNull($modelType); - - $classReflections = $modelType->getObjectClassReflections(); - - if (count($classReflections) !== 1) { - return null; - } - - $modelReflection = $classReflections[0]; - - if ($modelReflection->getName() === Model::class) { - return null; - } - - if ($modelReflection->isAbstract()) { - return null; - } - - return $modelReflection; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Rules/NoEnvCallsOutsideOfConfigRule.php b/docker/statistics/vendor/larastan/larastan/src/Rules/NoEnvCallsOutsideOfConfigRule.php deleted file mode 100644 index 0a95480a..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Rules/NoEnvCallsOutsideOfConfigRule.php +++ /dev/null @@ -1,63 +0,0 @@ - - */ -class NoEnvCallsOutsideOfConfigRule implements Rule -{ - use HasContainer; - - public function getNodeType(): string - { - return FuncCall::class; - } - - /** @return array */ - public function processNode(Node $node, Scope $scope): array - { - $name = $node->name; - - if (! $name instanceof Name) { - return []; - } - - if ($scope->resolveName($name) !== 'env') { - return []; - } - - if (! $this->isCalledOutsideOfConfig($node, $scope)) { - return []; - } - - return [ - RuleErrorBuilder::message("Called 'env' outside of the config directory which returns null when the config is cached, use 'config'.") - ->identifier('larastan.noEnvCallsOutsideOfConfig') - ->line($node->getLine()) - ->file($scope->getFile()) - ->build(), - ]; - } - - protected function isCalledOutsideOfConfig(FuncCall $call, Scope $scope): bool - { - return str_starts_with($scope->getFile(), config_path()) === false; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Rules/NoModelMakeRule.php b/docker/statistics/vendor/larastan/larastan/src/Rules/NoModelMakeRule.php deleted file mode 100644 index e3ba3b7c..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Rules/NoModelMakeRule.php +++ /dev/null @@ -1,91 +0,0 @@ - - */ -class NoModelMakeRule implements Rule -{ - public function __construct(protected ReflectionProvider $reflectionProvider) - { - } - - public function getNodeType(): string - { - return StaticCall::class; - } - - /** @return array */ - public function processNode(Node $node, Scope $scope): array - { - $name = $node->name; - - if (! $name instanceof Identifier) { - return []; - } - - if ($name->name !== 'make') { - return []; - } - - if (! $this->isCalledOnModel($node, $scope)) { - return []; - } - - return [ - RuleErrorBuilder::message("Called 'Model::make()' which performs unnecessary work, use 'new Model()'.") - ->identifier('larastan.noModelMake') - ->line($node->getLine()) - ->file($scope->getFile()) - ->build(), - ]; - } - - /** - * Was the expression called on a Model instance? - */ - protected function isCalledOnModel(StaticCall $call, Scope $scope): bool - { - $class = $call->class; - if ($class instanceof FullyQualified) { - $type = new ObjectType($class->toString()); - } elseif ($class instanceof Expr) { - $type = $scope->getType($class); - - if ($type->isClassStringType()->yes() && $type->getConstantStrings() !== []) { - $type = new ObjectType($type->getConstantStrings()[0]->getValue()); - } - } else { - // TODO can we handle relative names, do they even occur here? - return false; - } - - return (new ObjectType(Model::class)) - ->isSuperTypeOf($type) - ->yes(); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Rules/NoUnnecessaryCollectionCallRule.php b/docker/statistics/vendor/larastan/larastan/src/Rules/NoUnnecessaryCollectionCallRule.php deleted file mode 100644 index cb029947..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Rules/NoUnnecessaryCollectionCallRule.php +++ /dev/null @@ -1,335 +0,0 @@ -count() - * could be simplified to: - * User::count() - * - * In addition, this code: - * User::whereStatus('active')->get()->pluck('id') - * could be simplified to: - * User::whereStatus('active')->pluck('id') - * - * @implements Rule - */ -class NoUnnecessaryCollectionCallRule implements Rule -{ - /** - * The method names that can be applied on a Collection, but should be applied on a Builder. - */ - protected const RISKY_METHODS = [ - 'count', - 'isempty', - 'isnotempty', - 'last', - 'pop', - 'skip', - 'slice', - 'take', - // Eloquent collection - 'diff', - 'except', - 'find', - 'modelkeys', - 'only', - ]; - - /** - * The method names that can be applied on a Collection, but should in some cases be applied - * on a builder depending on what parameter is passed to the method. - */ - protected const RISKY_PARAM_METHODS = [ - 'average', - 'avg', - 'firstwhere', - 'max', - 'min', - 'pluck', - 'sum', - 'where', - 'wherestrict', - ]; - - /** @var string[] The method names that should be checked by this rule - can be configured by the user. */ - protected array $shouldHandle; - - /** - * @param string[] $onlyMethods - * @param string[] $excludeMethods - */ - public function __construct( - protected ReflectionProvider $reflectionProvider, - protected ModelPropertyExtension $propertyExtension, - array $onlyMethods, - array $excludeMethods, - ) { - $allMethods = array_merge( - self::RISKY_METHODS, - self::RISKY_PARAM_METHODS, - [ - 'first', - 'contains', - 'containsstrict', - ], - ); - - if (! empty($onlyMethods)) { - $this->shouldHandle = array_map(static function (string $methodName): string { - return Str::lower($methodName); - }, $onlyMethods); - } else { - $this->shouldHandle = $allMethods; - } - - if (empty($excludeMethods)) { - return; - } - - $this->shouldHandle = array_diff($this->shouldHandle, array_map(static function (string $methodName): string { - return Str::lower($methodName); - }, $excludeMethods)); - } - - public function getNodeType(): string - { - return MethodCall::class; - } - - /** @return RuleError[] */ - public function processNode(Node $node, Scope $scope): array - { - if (! $node->name instanceof Identifier) { - return []; - } - - $name = $node->name; - - if (! in_array($name->toLowerString(), $this->shouldHandle, true)) { - return []; - } - - if (! $this->isCalledOnCollection($node->var, $scope)) { - // Method was not called on a collection, so no errors. - return []; - } - - $previousCall = $node->var; - - if (! $this->callIsQuery($previousCall, $scope)) { - // Previous call wasn't on a Builder, so no errors. - return []; - } - - if (! ($previousCall->name instanceof Identifier)) { - // Previous call was made dynamically e.g. User::query()->{$method}() - // Can't really analyze it in this scenario so no errors. - return []; - } - - if ($name->toLowerString() === 'first') { - if (count($node->args) === 0) { - // 'first', also accepts a closure as an argument. - return [$this->formatError($name->toString())]; - } - } elseif ($this->isRiskyMethod($name)) { - return [$this->formatError($name->toString())]; - } elseif ($this->isRiskyParamMethod($name)) { - if (count($node->args) === 0) { - // Calling e.g. DB::table()->pluck($columnName)->sum() - // We have to check whether $columnName is actually a database column - // and not an alias for some computed attribute - if ($previousCall->name->name === 'pluck' && $this->firstArgIsDatabaseColumn($previousCall, $scope)) { - return [$this->formatError($name->toString())]; - } - - return []; - } - - if ($this->firstArgIsDatabaseColumn($node, $scope)) { - return [$this->formatError($name->toString())]; - } - } elseif (in_array($name->toLowerString(), ['contains', 'containsstrict'], true)) { - // 'contains' can also be called with Model instances or keys as its first argument - /** @var Arg[] $args */ - $args = $node->args; - if (count($args) === 1 && ! ($args[0]->value instanceof Node\FunctionLike)) { - return [$this->formatError($name->toString())]; - } - - if ($this->firstArgIsDatabaseColumn($node, $scope)) { - return [$this->formatError($name->toString())]; - } - } - - return []; - } - - /** - * Determines whether the first argument is a string and references a database column. - */ - protected function firstArgIsDatabaseColumn(Node\Expr\StaticCall|MethodCall $node, Scope $scope): bool - { - /** @var Arg[] $args */ - $args = $node->args; - if (count($args) === 0 || ! ($args[0]->value instanceof Node\Scalar\String_)) { - return false; - } - - if ($node instanceof Node\Expr\StaticCall) { - /** @var Node\Name $class */ - $class = $node->class; - - $modelReflection = $this->reflectionProvider->getClass($class->toCodeString()); - - /** @var String_ $firstArg */ - $firstArg = $args[0]->value; - - return $this->propertyExtension->hasProperty($modelReflection, $firstArg->value); - } - - $iterableType = $scope->getType($node->var)->getIterableValueType(); - - if ((new ObjectType(stdClass::class))->isSuperTypeOf($iterableType)->yes()) { - $previousCall = $node->var; - if ($previousCall instanceof MethodCall) { - $queryBuilderType = $scope->getType($previousCall->var); - if ((new ObjectType(QueryBuilder::class))->isSuperTypeOf($queryBuilderType)->yes()) { - // We encountered a DB query such as DB::table(..)->get()->max('id') - // We assume max('id') could have been retrieved without calling get(). - return true; - } - } - - return false; - } - - if ((new ObjectType(Model::class))->isSuperTypeOf($iterableType)->yes()) { - $iterableClassNames = $iterableType->getObjectClassNames(); - - if (count($iterableClassNames) === 0) { - return false; - } - - $modelReflection = $this->reflectionProvider->getClass($iterableClassNames[0]); - - /** @var String_ $firstArg */ - $firstArg = $args[0]->value; - - return $this->propertyExtension->hasProperty($modelReflection, $firstArg->value); - } - - return false; - } - - /** - * Returns whether the method call is a call on a builder instance. - * - * @phpstan-assert-if-true MethodCall|Node\Expr\StaticCall $call - */ - protected function callIsQuery(Node\Expr $call, Scope $scope): bool - { - if ($call instanceof MethodCall) { - $calledOn = $scope->getType($call->var); - - return $this->isBuilder($calledOn); - } - - if ($call instanceof Node\Expr\StaticCall) { - $class = $call->class; - if ($class instanceof Node\Name) { - $modelClassName = $class->toCodeString(); - - return (new ObjectType(Model::class))->isSuperTypeOf(new ObjectType($modelClassName))->yes() - && $call->name instanceof Identifier - && in_array($call->name->toLowerString(), ['get', 'all', 'pluck'], true); - } - } - - return false; - } - - /** - * Returns whether the method is one of the risky methods. - */ - protected function isRiskyMethod(Identifier $name): bool - { - return in_array($name->toLowerString(), self::RISKY_METHODS, true); - } - - /** - * Returns whether the method might be a risky method depending on the parameters passed. - */ - protected function isRiskyParamMethod(Identifier $name): bool - { - return in_array($name->toLowerString(), self::RISKY_PARAM_METHODS, true); - } - - /** - * Returns whether its argument is some builder instance. - */ - protected function isBuilder(Type $type): bool - { - return (new ObjectType(EloquentBuilder::class))->isSuperTypeOf($type)->yes() - || (new ObjectType(QueryBuilder::class))->isSuperTypeOf($type)->yes() - || (new ObjectType(Relation::class))->isSuperTypeOf($type)->yes(); - } - - /** - * Returns whether the Expr was not called on a Collection instance. - */ - protected function isCalledOnCollection(Node\Expr $expr, Scope $scope): bool - { - $calledOnType = $scope->getType($expr); - - return (new ObjectType(Collection::class))->isSuperTypeOf($calledOnType)->yes(); - } - - /** - * Formats the error. - */ - protected function formatError(string $methodName): RuleError - { - return RuleErrorBuilder::message(sprintf( - "Called '%s' on Laravel collection, but could have been retrieved as a query.", - $methodName, - )) - ->identifier('larastan.noUnnecessaryCollectionCall') - ->build(); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Rules/OctaneCompatibilityRule.php b/docker/statistics/vendor/larastan/larastan/src/Rules/OctaneCompatibilityRule.php deleted file mode 100644 index 5a88ed77..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Rules/OctaneCompatibilityRule.php +++ /dev/null @@ -1,161 +0,0 @@ - */ -class OctaneCompatibilityRule implements Rule -{ - public function getNodeType(): string - { - return MethodCall::class; - } - - /** - * @param MethodCall $node - * - * @return RuleError[] - */ - public function processNode(Node $node, Scope $scope): array - { - if (! $node->name instanceof Node\Identifier) { - return []; - } - - if (! in_array($node->name->name, ['singleton', 'bind'], true)) { - return []; - } - - $args = $node->getArgs(); - - if (count($args) < 2) { - return []; - } - - $calledOnType = $scope->getType($node->var); - - $classNames = $calledOnType->getObjectClassNames(); - - if (count($classNames) !== 1) { - return []; - } - - if ( - $classNames[0] !== Application::class && - ! (new ObjectType(Application::class))->isSuperTypeOf($calledOnType)->yes() - ) { - return []; - } - - if (! $args[1]->value instanceof Node\Expr\Closure) { - return []; - } - - /** @var Node\Expr\Closure $closure */ - $closure = $args[1]->value; - - /** @var Node\Param[] $closureParams */ - $closureParams = $closure->getParams(); - - // Closure should have at least one parameter. First param - // is container, second is parameters. If no parameter - // is given we will check for the usage of `$this->app` - if (count($closureParams) < 1) { - return $this->checkForThisAppUsage($scope, $closure); - } - - // Using `$app` with `bind` is ok, so we return early - if ($node->name->name === 'bind') { - return []; - } - - if (! $closureParams[0]->var instanceof Node\Expr\Variable) { - return []; - } - - $containerParameterName = $closureParams[0]->var->name; - - $nodes = (new NodeFinder())->find($closure->getStmts(), static function (Node $node) use ($containerParameterName): bool { - if (! $node instanceof Node\Expr\New_) { - return false; - } - - if (count($node->getArgs()) < 1) { - return false; - } - - if (! $node->getArgs()[0]->value instanceof Node\Expr\Variable && ! $node->getArgs()[0]->value instanceof Node\Expr\ArrayDimFetch) { - return false; - } - - if ($node->getArgs()[0]->value instanceof Node\Expr\ArrayDimFetch) { - /** @var Node\Expr\Variable $var */ - $var = $node->getArgs()[0]->value->var; - - if ($var->name !== $containerParameterName) { - return false; - } - - if ($node->getArgs()[0]->value->dim === null) { - return false; - } - - if (! $node->getArgs()[0]->value->dim instanceof Node\Scalar\String_) { - return false; - } - - return in_array($node->getArgs()[0]->value->dim->value, ['request', 'config'], true); - } - - return $node->getArgs()[0]->value->name === $containerParameterName; - }); - - if (count($nodes) > 0) { - return array_map([$this, 'dependencyInjectionError'], $nodes); - } - - return []; - } - - /** @return RuleError[] */ - private function checkForThisAppUsage(Scope $scope, Node\Expr\Closure $closure): array - { - $nodes = (new NodeFinder())->find($closure->getStmts(), static function (Node $node): bool { - return $node instanceof Node\Expr\PropertyFetch && - $node->var instanceof Node\Expr\Variable && - $node->var->name === 'this' && - $node->name instanceof Node\Identifier && - $node->name->name === 'app'; - }); - - if (count($nodes) > 0) { - return array_map([$this, 'dependencyInjectionError'], $nodes); - } - - return []; - } - - private function dependencyInjectionError(Node $node): RuleError - { - return RuleErrorBuilder::message('Consider using bind method instead or pass a closure.') - ->identifier('larastan.octaneCompatibility') - ->tip('See: https://laravel.com/docs/octane#dependency-injection-and-octane') - ->line($node->getAttribute('startLine')) - ->build(); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Rules/RelationExistenceRule.php b/docker/statistics/vendor/larastan/larastan/src/Rules/RelationExistenceRule.php deleted file mode 100644 index 9dbb7afb..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Rules/RelationExistenceRule.php +++ /dev/null @@ -1,190 +0,0 @@ - */ -class RelationExistenceRule implements Rule -{ - public function __construct(private ModelRuleHelper $modelRuleHelper) - { - } - - public function getNodeType(): string - { - return Node\Expr\CallLike::class; - } - - /** @return RuleError[] */ - public function processNode(Node $node, Scope $scope): array - { - if (! $node instanceof MethodCall && ! $node instanceof Node\Expr\StaticCall) { - return []; - } - - if (! $node->name instanceof Node\Identifier) { - return []; - } - - if ( - ! in_array( - $node->name->name, - [ - 'has', - 'with', - 'orHas', - 'doesntHave', - 'orDoesntHave', - 'whereHas', - 'withWhereHas', - 'orWhereHas', - 'whereDoesntHave', - 'orWhereDoesntHave', - 'whereRelation', - ], - true, - ) - ) { - return []; - } - - $args = $node->getArgs(); - - if (count($args) < 1) { - return []; - } - - $valueType = $scope->getType($args[0]->value); - - /** @var ConstantStringType[] $relations */ - $relations = []; - - if ($valueType->isConstantArray()->yes()) { - $arrays = $valueType->getConstantArrays(); - - foreach ($arrays as $array) { - $relations = array_merge( - $relations, - ...array_map(static function (Type $type) { - return $type->getConstantStrings(); - }, $array->getKeyTypes()), - ...array_map(static function (Type $type) { - return $type->getConstantStrings(); - }, $array->getValueTypes()), - ); - } - } else { - $constants = $valueType->getConstantStrings(); - - if ($constants === []) { - return []; - } - - $relations = $constants; - } - - $errors = []; - - foreach ($relations as $relationType) { - $relationName = explode(':', $relationType->getValue())[0]; - - $calledOnNode = $node instanceof MethodCall ? $node->var : $node->class; - - if ($calledOnNode instanceof Node\Name) { - $calledOnType = new ObjectType($calledOnNode->toString()); - } else { - $calledOnType = $scope->getType($calledOnNode); - } - - $closure = function (Type $calledOnType, string $relationName, Node\Expr\CallLike $node) use ($scope): array { - $modelReflection = $this->modelRuleHelper->findModelReflectionFromType($calledOnType); - - if ($modelReflection === null) { - return []; - } - - if (! $modelReflection->hasMethod($relationName)) { - return [ - $this->getRuleError($relationName, $modelReflection, $node), - ]; - } - - $relationMethod = $modelReflection->getMethod($relationName, $scope); - - if (! (new ObjectType(Relation::class))->isSuperTypeOf(ParametersAcceptorSelector::selectFromArgs($scope, $node->getArgs(), $relationMethod->getVariants())->getReturnType())->yes()) { - return [ - $this->getRuleError($relationName, $modelReflection, $node), - ]; - } - - return []; - }; - - if (str_contains($relationName, '.')) { - // Nested relations - $relations = explode('.', $relationName); - - foreach ($relations as $relation) { - $result = $closure($calledOnType, $relation, $node); - - if ($result !== []) { - return $result; - } - - $modelReflection = $this->modelRuleHelper->findModelReflectionFromType($calledOnType); - - if ($modelReflection === null) { - return []; - } - - // Dynamic method return type extensions are not taken into account here. - // So we simulate a method call to the relation here to get the return type. - $calledOnType = $scope->getType(new MethodCall(new Node\Expr\New_(new Node\Name($modelReflection->getName())), new Node\Identifier($relation))); - } - - return []; - } - - $errors = array_merge($errors, $closure($calledOnType, $relationName, $node)); - } - - return $errors; - } - - private function getRuleError( - string $relationName, - ClassReflection $modelReflection, - Node $node, - ): RuleError { - return RuleErrorBuilder::message(sprintf( - "Relation '%s' is not found in %s model.", - $relationName, - $modelReflection->getName(), - )) - ->identifier('larastan.relationExistence') - ->line($node->getAttribute('startLine')) - ->build(); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Rules/UnusedViewsRule.php b/docker/statistics/vendor/larastan/larastan/src/Rules/UnusedViewsRule.php deleted file mode 100644 index a7b9013c..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Rules/UnusedViewsRule.php +++ /dev/null @@ -1,89 +0,0 @@ - */ -final class UnusedViewsRule implements Rule -{ - /** @var list|null */ - private array|null $viewsUsedInOtherViews = null; - - public function __construct(private UsedViewInAnotherViewCollector $usedViewInAnotherViewCollector, private ViewFileHelper $viewFileHelper) - { - } - - public function getNodeType(): string - { - return CollectedDataNode::class; - } - - /** @return RuleError[] */ - public function processNode(Node $node, Scope $scope): array - { - if ($this->viewsUsedInOtherViews === null) { - $this->viewsUsedInOtherViews = $this->usedViewInAnotherViewCollector->getUsedViews(); - } - - $usedViews = collect([ - $node->get(UsedViewFunctionCollector::class), - $node->get(UsedEmailViewCollector::class), - $node->get(UsedViewMakeCollector::class), - $node->get(UsedViewFacadeMakeCollector::class), - $node->get(UsedRouteFacadeViewCollector::class), - $this->viewsUsedInOtherViews, - ])->flatten()->unique()->toArray(); - - $allViews = iterator_to_array($this->viewFileHelper->getAllViewNames()); - - $existingViews = []; - - /** @var Factory $view */ - $view = view(); - - foreach ($usedViews as $viewName) { - if (! $view->exists($viewName)) { - continue; - } - - $existingViews[] = $viewName; - } - - $unusedViews = array_diff($allViews, array_filter($existingViews)); - - $errors = []; - foreach ($unusedViews as $file) { - $path = $view->getFinder()->find($file); - - $errors[] = RuleErrorBuilder::message('This view is not used in the project.') - ->file($path) - ->line(0) - ->identifier('larastan.unusedViews') - ->build(); - } - - return $errors; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Rules/UselessConstructs/NoUselessValueFunctionCallsRule.php b/docker/statistics/vendor/larastan/larastan/src/Rules/UselessConstructs/NoUselessValueFunctionCallsRule.php deleted file mode 100644 index 0dab0566..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Rules/UselessConstructs/NoUselessValueFunctionCallsRule.php +++ /dev/null @@ -1,55 +0,0 @@ - */ -class NoUselessValueFunctionCallsRule implements Rule -{ - public function getNodeType(): string - { - return FuncCall::class; - } - - /** @return RuleError[] */ - public function processNode(Node $node, Scope $scope): array - { - if (! $node->name instanceof Node\Name) { - return []; - } - - if (strtolower($node->name->toString()) !== 'value') { - return []; - } - - $args = $node->getArgs(); - - if (count($args) < 1) { - return []; - } - - if ($scope->getType($args[0]->value)->isSuperTypeOf(new ClosureType([], new MixedType(), true))->no() === false) { - return []; - } - - return [ - RuleErrorBuilder::message("Calling the helper function 'value()' without a closure as the first argument simply returns the first argument without doing anything") - ->line($node->getLine()) - ->identifier('larastan.uselessConstructs.value') - ->build(), - ]; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Rules/UselessConstructs/NoUselessWithFunctionCallsRule.php b/docker/statistics/vendor/larastan/larastan/src/Rules/UselessConstructs/NoUselessWithFunctionCallsRule.php deleted file mode 100644 index 3c84d213..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Rules/UselessConstructs/NoUselessWithFunctionCallsRule.php +++ /dev/null @@ -1,64 +0,0 @@ - */ -class NoUselessWithFunctionCallsRule implements Rule -{ - public function getNodeType(): string - { - return FuncCall::class; - } - - /** @return RuleError[] */ - public function processNode(Node $node, Scope $scope): array - { - if (! $node->name instanceof Node\Name) { - return []; - } - - if (strtolower($node->name->toString()) !== 'with') { - return []; - } - - $args = $node->getArgs(); - - if (count($args) < 1) { - return []; - } - - if (count($args) === 1) { - return [ - RuleErrorBuilder::message("Calling the helper function 'with()' with only one argument simply returns the value itself. If you want to chain methods on a construct, use '(new ClassName())->foo()' instead") - ->line($node->getLine()) - ->identifier('larastan.uselessConstructs.with') - ->build(), - ]; - } - - $secondArgumentType = $scope->getType($args[1]->value); - - if ($secondArgumentType->isCallable()->no() === false) { - return []; - } - - return [ - RuleErrorBuilder::message("Calling the helper function 'with()' without a callable as the second argument simply returns the value without doing anything") - ->line($node->getLine()) - ->identifier('larastan.uselessConstructs.with') - ->build(), - ]; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Support/CollectionHelper.php b/docker/statistics/vendor/larastan/larastan/src/Support/CollectionHelper.php deleted file mode 100644 index c5f9c9f8..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Support/CollectionHelper.php +++ /dev/null @@ -1,185 +0,0 @@ -getObjectClassReflections(); - - if (count($classReflections) > 0) { - if ((new ObjectType(Enumerable::class))->isSuperTypeOf($type)->yes()) { - return $this->getTypeFromEloquentCollection($classReflections[0]); - } - - if ( - (new ObjectType(Traversable::class))->isSuperTypeOf($type)->yes() || - (new ObjectType(IteratorAggregate::class))->isSuperTypeOf($type)->yes() || - (new ObjectType(Iterator::class))->isSuperTypeOf($type)->yes() - ) { - return $this->getTypeFromIterator($classReflections[0]); - } - } - - if (! $type->isArray()->yes()) { - return new GenericObjectType(Collection::class, [$type->toArray()->getIterableKeyType(), $type->toArray()->getIterableValueType()]); - } - - if ($type->isIterableAtLeastOnce()->no()) { - return new GenericObjectType(Collection::class, [new BenevolentUnionType([new IntegerType(), new StringType()]), new MixedType()]); - } - - return null; - } - - public function determineCollectionClassName(string $modelClassName): string - { - try { - $modelReflection = $this->reflectionProvider->getClass($modelClassName); - - if (LaravelVersion::hasCollectedByAttribute()) { - $attrs = $modelReflection->getNativeReflection()->getAttributes('Illuminate\Database\Eloquent\Attributes\CollectedBy'); // @phpstan-ignore-line Attribute class is not available in older Laravel versions - - if ($attrs !== []) { - $expr = $attrs[0]->getArgumentsExpressions()[0]; - - if ($expr instanceof ClassConstFetch && $expr->class instanceof Name) { - return $expr->class->toString(); - } - } - } - - $newCollectionMethod = $modelReflection->getNativeMethod('newCollection'); - $returnType = $newCollectionMethod->getVariants()[0]->getReturnType(); - - $classNames = $returnType->getObjectClassNames(); - - if (count($classNames) === 1) { - return $classNames[0]; - } - - return $returnType->describe(VerbosityLevel::value()); - } catch (MissingMethodFromReflectionException | ShouldNotHappenException) { - return EloquentCollection::class; - } - } - - public function determineCollectionClass(string $modelClassName, Type|null $modelType = null): Type - { - $modelType ??= new ObjectType($modelClassName); - - $collectionClassName = $this->determineCollectionClassName($modelClassName); - $collectionReflection = $this->reflectionProvider->getClass($collectionClassName); - - if ($collectionReflection->isGeneric()) { - $typeMap = $collectionReflection->getActiveTemplateTypeMap(); - - // Specifies key and value - if ($typeMap->count() === 2) { - return new GenericObjectType($collectionClassName, [new IntegerType(), $modelType]); - } - - // Specifies only value - if (($typeMap->count() === 1) && $typeMap->hasType('TModel')) { - return new GenericObjectType($collectionClassName, [$modelType]); - } - } - - // Not generic. So return the type as is - return new ObjectType($collectionClassName); - } - - public function replaceCollectionsInType(Type $type): Type - { - if (! in_array(EloquentCollection::class, $type->getReferencedClasses(), true)) { - return $type; - } - - return TypeTraverser::map($type, function ($type, $traverse): Type { - if ($type instanceof UnionType || $type instanceof IntersectionType) { - return $traverse($type); - } - - if (! (new ObjectType(EloquentCollection::class))->isSuperTypeOf($type)->yes()) { - return $traverse($type); - } - - $templateType = $type->getTemplateType(EloquentCollection::class, 'TModel'); - $models = $templateType->getObjectClassNames(); - - return match (count($models)) { - 0 => $type, - 1 => $this->determineCollectionClass($models[0], $templateType), - default => TypeCombinator::union(...array_map(fn ($m) => $this->determineCollectionClass($m), $models)), - }; - }); - } - - private function getTypeFromEloquentCollection(ClassReflection $classReflection): GenericObjectType|null - { - $keyType = new BenevolentUnionType([new IntegerType(), new StringType()]); - - $innerValueType = $classReflection->getActiveTemplateTypeMap()->getType('TModel'); - - if ($classReflection->is(EloquentCollection::class)) { - $keyType = new IntegerType(); - } - - if ($innerValueType !== null) { - return new GenericObjectType(Collection::class, [$keyType, $innerValueType]); - } - - return null; - } - - private function getTypeFromIterator(ClassReflection $classReflection): GenericObjectType - { - $keyType = new BenevolentUnionType([new IntegerType(), new StringType()]); - - $templateTypes = array_values($classReflection->getActiveTemplateTypeMap()->getTypes()); - - if (count($templateTypes) === 1) { - return new GenericObjectType(Collection::class, [$keyType, $templateTypes[0]]); - } - - return new GenericObjectType(Collection::class, $templateTypes); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Support/HigherOrderCollectionProxyHelper.php b/docker/statistics/vendor/larastan/larastan/src/Support/HigherOrderCollectionProxyHelper.php deleted file mode 100644 index 985fae3a..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Support/HigherOrderCollectionProxyHelper.php +++ /dev/null @@ -1,147 +0,0 @@ -getName() !== HigherOrderCollectionProxy::class) { - return false; - } - - $activeTemplateTypeMap = $classReflection->getActiveTemplateTypeMap(); - - if ($activeTemplateTypeMap->count() !== 3) { - return false; - } - - $methodType = $activeTemplateTypeMap->getType('T'); - $valueType = $activeTemplateTypeMap->getType('TValue'); - - if (($methodType === null) || ($valueType === null)) { - return false; - } - - $constants = $methodType->getConstantStrings(); - - if (count($constants) !== 1) { - return false; - } - - if (! $valueType->canCallMethods()->yes()) { - return false; - } - - if ($propertyOrMethod === 'method') { - return $valueType->hasMethod($name)->yes(); - } - - return $valueType->hasProperty($name)->yes(); - } - - public function determineReturnType(string $name, Type\Type $valueType, Type\Type $methodOrPropertyReturnType, string $collectionType): Type\Type - { - $integerType = new Type\IntegerType(); - - switch ($name) { - case 'average': - case 'avg': - $returnType = new Type\FloatType(); - break; - case 'contains': - case 'every': - case 'some': - $returnType = new Type\BooleanType(); - break; - case 'each': - case 'filter': - case 'reject': - case 'skipUntil': - case 'skipWhile': - case 'sortBy': - case 'sortByDesc': - case 'takeUntil': - case 'takeWhile': - case 'unique': - $returnType = $this->getCollectionType($collectionType, $integerType, $valueType); - break; - case 'keyBy': - $returnType = $this->getCollectionType($collectionType, new Type\BenevolentUnionType([$integerType, new Type\StringType()]), $valueType); - break; - case 'first': - $returnType = Type\TypeCombinator::addNull($valueType); - break; - case 'flatMap': - $returnType = $this->getCollectionType(SupportCollection::class, $integerType, new Type\MixedType()); - break; - case 'groupBy': - case 'partition': - $returnType = $this->getCollectionType($collectionType, $integerType, $this->getCollectionType($collectionType, $integerType, $valueType)); - break; - case 'map': - $returnType = $this->getCollectionType( - SupportCollection::class, - new Type\IntegerType(), - $methodOrPropertyReturnType, - ); - break; - case 'max': - case 'min': - $returnType = $methodOrPropertyReturnType; - break; - case 'sum': - if ($methodOrPropertyReturnType->accepts(new Type\IntegerType(), true)->yes()) { - $returnType = new Type\IntegerType(); - } else { - $returnType = new Type\ErrorType(); - } - - break; - default: - $returnType = new Type\ErrorType(); - break; - } - - return $returnType; - } - - private function getCollectionType(string $collectionClassName, Type\Type $keyType, Type\Type $valueType): Type\Type - { - $collectionReflection = $this->reflectionProvider->getClass($collectionClassName); - - if ($collectionReflection->isGeneric()) { - $typeMap = $collectionReflection->getActiveTemplateTypeMap(); - - // Specifies key and value - if ($typeMap->count() === 2) { - return new GenericObjectType($collectionClassName, [$keyType, $valueType]); - } - - // Specifies only value - if (($typeMap->count() === 1) && $typeMap->hasType('TModel')) { - return new GenericObjectType($collectionClassName, [$valueType]); - } - } - - // Not generic. So return the type as is - return new ObjectType($collectionClassName); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Support/ViewFileHelper.php b/docker/statistics/vendor/larastan/larastan/src/Support/ViewFileHelper.php deleted file mode 100644 index e91c7f81..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Support/ViewFileHelper.php +++ /dev/null @@ -1,84 +0,0 @@ - $viewDirectories */ - public function __construct(private array $viewDirectories, private FileHelper $fileHelper) - { - if (count($viewDirectories) !== 0) { - return; - } - - $this->viewDirectories = [resource_path('views')]; // @phpstan-ignore-line - } - - public function getAllViewFilePaths(): Generator - { - foreach ($this->viewDirectories as $viewDirectory) { - $absolutePath = $this->fileHelper->absolutizePath($viewDirectory); - - if (! is_dir($absolutePath)) { - continue; - } - - $views = iterator_to_array( - new RegexIterator( - new RecursiveIteratorIterator(new RecursiveDirectoryIterator($absolutePath)), - '/\.blade\.php$/i', - ), - ); - - foreach ($views as $view) { - yield $view->getPathname(); - } - } - } - - public function getAllViewNames(): Generator - { - foreach ($this->viewDirectories as $viewDirectory) { - $absolutePath = $this->fileHelper->absolutizePath($viewDirectory); - - if (! is_dir($absolutePath)) { - continue; - } - - $views = iterator_to_array( - new RegexIterator( - new RecursiveIteratorIterator(new RecursiveDirectoryIterator($absolutePath)), - '/\.blade\.php$/i', - ), - ); - - foreach ($views as $view) { - if (str_contains($view->getPathname(), 'views' . DIRECTORY_SEPARATOR . 'vendor') || str_contains($view->getPathname(), 'views' . DIRECTORY_SEPARATOR . 'errors')) { - continue; - } - - $viewName = explode($viewDirectory . DIRECTORY_SEPARATOR, $view->getPathname()); - - yield str_replace([DIRECTORY_SEPARATOR, '.blade.php'], ['.', ''], $viewName[1]); - } - } - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Types/AbortIfFunctionTypeSpecifyingExtension.php b/docker/statistics/vendor/larastan/larastan/src/Types/AbortIfFunctionTypeSpecifyingExtension.php deleted file mode 100644 index 570bee3c..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Types/AbortIfFunctionTypeSpecifyingExtension.php +++ /dev/null @@ -1,57 +0,0 @@ -methodName = $methodName . '_' . ($negate === false ? 'if' : 'unless'); - } - - public function isFunctionSupported( - FunctionReflection $functionReflection, - FuncCall $node, - TypeSpecifierContext $context, - ): bool { - return $functionReflection->getName() === $this->methodName && $context->null(); - } - - public function specifyTypes( - FunctionReflection $functionReflection, - FuncCall $node, - Scope $scope, - TypeSpecifierContext $context, - ): SpecifiedTypes { - if (! str_starts_with($this->methodName, 'throw') && count($node->args) < 2) { - return new SpecifiedTypes(); - } - - $context = $this->negate === false ? TypeSpecifierContext::createFalsey() : TypeSpecifierContext::createTruthy(); - - return $this->typeSpecifier->specifyTypesInCondition($scope, $node->getArgs()[0]->value, $context); - } - - public function setTypeSpecifier(TypeSpecifier $typeSpecifier): void - { - $this->typeSpecifier = $typeSpecifier; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Types/Factory/ModelFactoryType.php b/docker/statistics/vendor/larastan/larastan/src/Types/Factory/ModelFactoryType.php deleted file mode 100644 index 458bb49b..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Types/Factory/ModelFactoryType.php +++ /dev/null @@ -1,31 +0,0 @@ -isSingleModel = $isSingleModel ?? TrinaryLogic::createMaybe(); - } - - public function isSingleModel(): TrinaryLogic - { - return $this->isSingleModel; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Types/GenericEloquentBuilderTypeNodeResolverExtension.php b/docker/statistics/vendor/larastan/larastan/src/Types/GenericEloquentBuilderTypeNodeResolverExtension.php deleted file mode 100644 index e0083b18..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Types/GenericEloquentBuilderTypeNodeResolverExtension.php +++ /dev/null @@ -1,74 +0,0 @@ -types) !== 2) { - return null; - } - - $modelTypeNode = null; - $builderTypeNode = null; - foreach ($typeNode->types as $innerTypeNode) { - if ( - ! ($innerTypeNode instanceof IdentifierTypeNode) - || ! $this->provider->hasClass($nameScope->resolveStringName($innerTypeNode->name)) - || ! (new ObjectType(Model::class))->isSuperTypeOf(new ObjectType($nameScope->resolveStringName($innerTypeNode->name)))->yes() - ) { - continue; - } - - $modelTypeNode = $innerTypeNode; - } - - if ($modelTypeNode === null) { - return null; - } - - foreach ($typeNode->types as $innerTypeNode) { - if ( - ! ($innerTypeNode instanceof IdentifierTypeNode) - || ! $this->provider->hasClass($nameScope->resolveStringName($innerTypeNode->name)) - || ($nameScope->resolveStringName($innerTypeNode->name) !== Builder::class && ! (new ObjectType(Builder::class))->isSuperTypeOf(new ObjectType($nameScope->resolveStringName($innerTypeNode->name)))->yes()) - ) { - continue; - } - - $builderTypeNode = $innerTypeNode; - } - - if ($builderTypeNode === null) { - return null; - } - - $builderTypeName = $nameScope->resolveStringName($builderTypeNode->name); - $modelTypeName = $nameScope->resolveStringName($modelTypeNode->name); - - return new GenericObjectType($builderTypeName, [ - new ObjectType($modelTypeName), - ]); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Types/GenericEloquentCollectionTypeNodeResolverExtension.php b/docker/statistics/vendor/larastan/larastan/src/Types/GenericEloquentCollectionTypeNodeResolverExtension.php deleted file mode 100644 index 67d146dd..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Types/GenericEloquentCollectionTypeNodeResolverExtension.php +++ /dev/null @@ -1,83 +0,0 @@ - $accounts - * - * Now IDE's can benefit from auto-completion, and we can benefit from the correct type passed to the generic collection - */ -class GenericEloquentCollectionTypeNodeResolverExtension implements TypeNodeResolverExtension -{ - public function __construct(private TypeNodeResolver $typeNodeResolver) - { - } - - public function resolve(TypeNode $typeNode, NameScope $nameScope): Type|null - { - if (! $typeNode instanceof UnionTypeNode || count($typeNode->types) !== 2) { - return null; - } - - $arrayTypeNode = null; - $identifierTypeNode = null; - foreach ($typeNode->types as $innerTypeNode) { - if ($innerTypeNode instanceof ArrayTypeNode) { - $arrayTypeNode = $innerTypeNode; - continue; - } - - if (! ($innerTypeNode instanceof IdentifierTypeNode)) { - continue; - } - - $identifierTypeNode = $innerTypeNode; - } - - if ($arrayTypeNode === null || $identifierTypeNode === null) { - return null; - } - - $identifierTypeName = $nameScope->resolveStringName($identifierTypeNode->name); - if ($identifierTypeName !== Collection::class) { - return null; - } - - $innerArrayTypeNode = $arrayTypeNode->type; - if (! $innerArrayTypeNode instanceof IdentifierTypeNode) { - return null; - } - - $resolvedInnerArrayType = $this->typeNodeResolver->resolve($innerArrayTypeNode, $nameScope); - - return new GenericObjectType($identifierTypeName, [ - new IntegerType(), - $resolvedInnerArrayType, - ]); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Types/ModelProperty/GenericModelPropertyType.php b/docker/statistics/vendor/larastan/larastan/src/Types/ModelProperty/GenericModelPropertyType.php deleted file mode 100644 index 6925e17c..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Types/ModelProperty/GenericModelPropertyType.php +++ /dev/null @@ -1,191 +0,0 @@ -type->describe($level); - } - - /** @return string[] */ - public function getReferencedClasses(): array - { - return $this->getGenericType()->getReferencedClasses(); - } - - public function getGenericType(): Type - { - return $this->type; - } - - public function acceptsWithReason(Type $type, bool $strictTypes): AcceptsResult - { - if ($type instanceof CompoundType) { - return $type->isAcceptedWithReasonBy($this, $strictTypes); - } - - if (count($type->getConstantStrings()) === 1) { - $givenString = $type->getConstantStrings()[0]->getValue(); - $genericType = $this->getGenericType(); - - if ($genericType instanceof MixedType) { - return AcceptsResult::createYes(); - } - - if (count($genericType->getObjectClassNames()) < 1) { - return AcceptsResult::createYes(); - } - - if (str_contains($givenString, ' as ')) { - $givenString = explode(' as ', $givenString)[0]; - } - - if (str_contains($givenString, '.')) { - $parts = explode('.', $givenString); - - if (count($parts) !== 2) { - return AcceptsResult::createYes(); - } - - [$tableName, $propertyName] = $parts; - - if (! $this->modelPropertyHelper->hasDatabaseProperty($tableName, $propertyName)) { - return AcceptsResult::createNo([sprintf('Database table "%s" does not have column "%s"', $tableName, $propertyName)]); - } - - return AcceptsResult::createYes(); - } - - $reasons = []; - - if (! $genericType->hasProperty($givenString)->yes()) { - $reasons[] = sprintf('The given string should be a property of %s, %s given.', $this->type->describe(VerbosityLevel::value()), $givenString); - } - - return new AcceptsResult($genericType->hasProperty($givenString), $reasons); - } - - if ($type instanceof self) { - return new AcceptsResult($this->getGenericType()->accepts($type->getGenericType(), $strictTypes), [sprintf('The given string should be a property of %s', $this->type->describe(VerbosityLevel::value()))]); - } - - if ($type->isString()->yes()) { - // It is an arbitrary string, so we cannot check if it is a property of the model. - // We return yes to not cause issues on levels 7+ - return AcceptsResult::createYes(); - } - - return AcceptsResult::createNo(); - } - - public function isSuperTypeOf(Type $type): TrinaryLogic - { - $constantStrings = $type->getConstantStrings(); - - if (count($constantStrings) === 1) { - if (! $this->getGenericType()->hasProperty($constantStrings[0]->getValue())->yes()) { - return TrinaryLogic::createNo(); - } - - return TrinaryLogic::createYes(); - } - - if ($type instanceof self) { - return $this->getGenericType()->isSuperTypeOf($type->getGenericType()); - } - - if ($type instanceof CompoundType) { - return $type->isSubTypeOf($this); - } - - return TrinaryLogic::createNo(); - } - - public function traverse(callable $cb): Type - { - $newType = $cb($this->getGenericType()); - - if ($newType === $this->getGenericType()) { - return $this; - } - - return new self($newType, $this->modelPropertyHelper); - } - - public function inferTemplateTypes(Type $receivedType): TemplateTypeMap - { - if ($receivedType instanceof UnionType || $receivedType instanceof IntersectionType) { // @phpstan-ignore-line - return $receivedType->inferTemplateTypesOn($this); - } - - $constantStrings = $receivedType->getConstantStrings(); - - if (count($constantStrings) === 1) { - $typeToInfer = new ObjectType($constantStrings[0]->getValue()); - } elseif ($receivedType instanceof self) { - $typeToInfer = $receivedType->type; - } elseif ($receivedType->isClassStringType()->yes()) { - $typeToInfer = $this->getGenericType(); - - if ($typeToInfer instanceof TemplateType) { - $typeToInfer = $typeToInfer->getBound(); - } - - $typeToInfer = TypeCombinator::intersect($typeToInfer, new ObjectWithoutClassType()); - } else { - return TemplateTypeMap::createEmpty(); - } - - if (! $this->getGenericType()->isSuperTypeOf($typeToInfer)->no()) { - return $this->getGenericType()->inferTemplateTypes($typeToInfer); - } - - return TemplateTypeMap::createEmpty(); - } - - /** @return TemplateTypeReference[] */ - public function getReferencedTemplateTypes(TemplateTypeVariance $positionVariance): array - { - $variance = $positionVariance->compose(TemplateTypeVariance::createCovariant()); - - return $this->getGenericType()->getReferencedTemplateTypes($variance); - } - - /** @param mixed[] $properties */ - public static function __set_state(array $properties): Type - { - return new self($properties['type'], $properties['modelPropertyHelper']); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Types/ModelProperty/ModelPropertyTypeNodeResolverExtension.php b/docker/statistics/vendor/larastan/larastan/src/Types/ModelProperty/ModelPropertyTypeNodeResolverExtension.php deleted file mode 100644 index be7f4a0b..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Types/ModelProperty/ModelPropertyTypeNodeResolverExtension.php +++ /dev/null @@ -1,64 +0,0 @@ -type->name !== 'model-property') { - return null; - } - - if (! $this->active) { - return new StringType(); - } - - if (count($typeNode->genericTypes) !== 1) { - return new ErrorType(); - } - - $genericType = $this->baseResolver->resolve($typeNode->genericTypes[0], $nameScope); - - if ((new ObjectType(Model::class))->isSuperTypeOf($genericType)->no()) { - return new ErrorType(); - } - - if ($genericType instanceof NeverType) { - return new ErrorType(); - } - - return new GenericModelPropertyType($genericType, $this->modelPropertyHelper); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Types/ModelRelationsDynamicMethodReturnTypeExtension.php b/docker/statistics/vendor/larastan/larastan/src/Types/ModelRelationsDynamicMethodReturnTypeExtension.php deleted file mode 100644 index 7430015a..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Types/ModelRelationsDynamicMethodReturnTypeExtension.php +++ /dev/null @@ -1,111 +0,0 @@ -getVariants()[0]; - - $returnType = $variant->getReturnType(); - - $classNames = $returnType->getObjectClassNames(); - - if (count($classNames) !== 1) { - return false; - } - - if (! (new ObjectType(Relation::class))->isSuperTypeOf($returnType)->yes()) { - return false; - } - - if (! $methodReflection->getDeclaringClass()->hasNativeMethod($methodReflection->getName())) { - return false; - } - - if (count($variant->getParameters()) !== 0) { - return false; - } - - if ( - in_array($methodReflection->getName(), [ - 'hasOne', - 'hasOneThrough', - 'morphOne', - 'belongsTo', - 'morphTo', - 'hasMany', - 'hasManyThrough', - 'morphMany', - 'belongsToMany', - 'morphToMany', - 'morphedByMany', - ], true) - ) { - return false; - } - - $models = $this - ->relationParserHelper - ->findModelsInRelationMethod($methodReflection); - - return count($models) !== 0; - } - - /** @throws ShouldNotHappenException */ - public function getTypeFromMethodCall( - MethodReflection $methodReflection, - MethodCall $methodCall, - Scope $scope, - ): Type|null { - $returnType = $methodReflection->getVariants()[0]->getReturnType(); - $returnTypeObjectClassNames = $returnType->getObjectClassNames(); - - if ($returnTypeObjectClassNames === []) { - return null; - } - - $models = $this->relationParserHelper->findModelsInRelationMethod($methodReflection); - - $types = array_map(static fn ($model) => new ObjectType((string) $model), $models); - $types[] = $scope->getType($methodCall->var); - - if (! LaravelVersion::hasLaravel1115Generics() && ! (new ObjectType(BelongsTo::class))->isSuperTypeOf($returnType)->yes()) { - $types = [$types[0]]; - } - - return new GenericObjectType($returnTypeObjectClassNames[0], $types); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Types/Passable.php b/docker/statistics/vendor/larastan/larastan/src/Types/Passable.php deleted file mode 100644 index 8c375bbd..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Types/Passable.php +++ /dev/null @@ -1,26 +0,0 @@ -type; - } - - public function setType(Type $type): void - { - $this->type = $type; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Types/RelationDynamicMethodReturnTypeExtension.php b/docker/statistics/vendor/larastan/larastan/src/Types/RelationDynamicMethodReturnTypeExtension.php deleted file mode 100644 index c0d061bc..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Types/RelationDynamicMethodReturnTypeExtension.php +++ /dev/null @@ -1,165 +0,0 @@ -getName(), [ - 'hasOne', - 'hasOneThrough', - 'morphOne', - 'belongsTo', - 'morphTo', - 'hasMany', - 'hasManyThrough', - 'morphMany', - 'belongsToMany', - 'morphToMany', - 'morphedByMany', - ], true); - } - - /** @throws ShouldNotHappenException */ - public function getTypeFromMethodCall( - MethodReflection $methodReflection, - MethodCall $methodCall, - Scope $scope, - ): Type|null { - $returnType = ParametersAcceptorSelector::selectFromArgs($scope, $methodCall->getArgs(), $methodReflection->getVariants()) - ->getReturnType(); - - $classNames = $returnType->getObjectClassNames(); - - if (! LaravelVersion::hasLaravel1115Generics()) { - return $this->getTypeForLaravelLessThan1115($methodReflection, $methodCall, $scope, $returnType, $classNames); - } - - if (count($classNames) !== 1) { - return null; - } - - $isThroughRelation = false; - - if ($methodCall->name instanceof Identifier) { - $isThroughRelation = in_array($methodCall->name->toString(), ['hasManyThrough', 'hasOneThrough'], strict: true); - } - - $args = array_slice($methodCall->getArgs(), 0, $isThroughRelation ? 2 : 1); - - $models = array_map(static function ($arg) use ($scope): string { - $argType = $scope->getType($arg->value); - $returnClass = Model::class; - - if ($argType->isClassStringType()->yes()) { - $classNames = $argType->getClassStringObjectType()->getObjectClassNames(); - - if (count($classNames) === 1) { - $returnClass = $classNames[0]; - } - } - - return $returnClass; - }, array_values($args)); - - if (count($models) === 0) { - // `morphTo` can be called without arguments. - if ($methodReflection->getName() !== 'morphTo') { - return null; - } - - $models = [Model::class]; - } - - $types = array_map(static fn ($model) => new ObjectType((string) $model), $models); - $types[] = $scope->getType($methodCall->var); - - return new GenericObjectType($classNames[0], $types); - } - - /** - * @param string[] $classNames - * - * @throws ShouldNotHappenException - */ - private function getTypeForLaravelLessThan1115( - MethodReflection $methodReflection, - MethodCall $methodCall, - Scope $scope, - Type $returnType, - array $classNames, - ): Type|null { - if (count($classNames) !== 1) { - return null; - } - - $calledOnType = $scope->getType($methodCall->var); - - if ($calledOnType instanceof StaticType) { - $calledOnType = new ObjectType($calledOnType->getClassName()); - } - - if (count($methodCall->getArgs()) === 0) { - // Special case for MorphTo. `morphTo` can be called without arguments. - if ($methodReflection->getName() === 'morphTo') { - return new GenericObjectType($classNames[0], [new ObjectType(Model::class), $calledOnType]); - } - - return null; - } - - $argType = $scope->getType($methodCall->getArgs()[0]->value); - $argStrings = $argType->getConstantStrings(); - - if (count($argStrings) !== 1) { - return null; - } - - $argClassName = $argStrings[0]->getValue(); - - if (! $this->provider->hasClass($argClassName)) { - $argClassName = Model::class; - } - - // Special case for BelongsTo. We need to add the child model as a generic type also. - if ((new ObjectType(BelongsTo::class))->isSuperTypeOf($returnType)->yes()) { - return new GenericObjectType($classNames[0], [new ObjectType($argClassName), $calledOnType]); - } - - return new GenericObjectType($classNames[0], [new ObjectType($argClassName)]); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Types/RelationParserHelper.php b/docker/statistics/vendor/larastan/larastan/src/Types/RelationParserHelper.php deleted file mode 100644 index e3ee71b3..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Types/RelationParserHelper.php +++ /dev/null @@ -1,119 +0,0 @@ - */ - public function findModelsInRelationMethod( - MethodReflection $methodReflection, - ): array { - if (method_exists($methodReflection, 'getDeclaringTrait') && $methodReflection->getDeclaringTrait() !== null) { - $fileName = $methodReflection->getDeclaringTrait()->getFileName(); - } else { - $fileName = $methodReflection - ->getDeclaringClass() - ->getNativeReflection() - ->getMethod($methodReflection->getName()) - ->getFileName(); - } - - if ($fileName === false || $fileName === null) { - return []; - } - - $fileStmts = $this->parser->parseFile($fileName); - - /** @var Node\Stmt\ClassMethod|null $relationMethod */ - $relationMethod = $this->findMethod($methodReflection->getName(), $fileStmts); - - if ($relationMethod === null) { - return []; - } - - /** @var Node\Stmt\Return_|null $returnStmt */ - $returnStmt = $this->findReturn($relationMethod); - - if ($returnStmt === null || ! $returnStmt->expr instanceof MethodCall) { - return []; - } - - $methodCall = $returnStmt->expr; - - while ($methodCall->var instanceof MethodCall) { - $methodCall = $methodCall->var; - } - - if (count($methodCall->getArgs()) < 1) { - return []; - } - - $scope = $this->scopeFactory->create(ScopeContext::create($fileName)); - - $methodScope = $scope - ->enterClass($methodReflection->getDeclaringClass()) - ->enterClassMethod($relationMethod, TemplateTypeMap::createEmpty(), [], null, null, null, false, false, false); - - $isThroughRelation = false; - - if ($methodCall->name instanceof Node\Identifier) { - $isThroughRelation = in_array($methodCall->name->toString(), ['hasManyThrough', 'hasOneThrough'], strict: true); - } - - $args = array_slice($methodCall->getArgs(), 0, $isThroughRelation ? 2 : 1); - - return array_map(static function ($arg) use ($methodScope): string { - $argType = $methodScope->getType($arg->value); - $returnClass = Model::class; - - if ($argType->isClassStringType()->yes()) { - $classNames = $argType->getClassStringObjectType()->getObjectClassNames(); - - if (count($classNames) === 1) { - $returnClass = $classNames[0]; - } - } - - return $returnClass; - }, array_values($args)); - } - - private function findMethod(string $method, mixed $statements): Node|null - { - return (new NodeFinder())->findFirst($statements, static function (Node $node) use ($method) { - return $node instanceof Node\Stmt\ClassMethod - && $node->name->toString() === $method; - }); - } - - private function findReturn(Node\Stmt\ClassMethod $relationMethod): Node|null - { - /** @var Node[] $statements */ - $statements = $relationMethod->stmts; - - return (new NodeFinder())->findFirstInstanceOf($statements, Node\Stmt\Return_::class); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Types/ViewStringType.php b/docker/statistics/vendor/larastan/larastan/src/Types/ViewStringType.php deleted file mode 100644 index 81e99443..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Types/ViewStringType.php +++ /dev/null @@ -1,85 +0,0 @@ -exists($string) test is a valid view-string type. - */ -class ViewStringType extends StringType -{ - public function describe(VerbosityLevel $level): string - { - return 'view-string'; - } - - public function accepts(Type $type, bool $strictTypes): TrinaryLogic - { - if ($type instanceof CompoundType) { - return $type->isAcceptedBy($this, $strictTypes); - } - - $constantStrings = $type->getConstantStrings(); - - if (count($constantStrings) === 1) { - /** @var Factory $view */ - $view = view(); - - return TrinaryLogic::createFromBoolean($view->exists($constantStrings[0]->getValue())); - } - - if ($type instanceof self) { - return TrinaryLogic::createYes(); - } - - if ($type->isString()->yes()) { - return TrinaryLogic::createMaybe(); - } - - return TrinaryLogic::createNo(); - } - - public function isSuperTypeOf(Type $type): TrinaryLogic - { - $constantStrings = $type->getConstantStrings(); - - if (count($constantStrings) === 1) { - /** @var Factory $view */ - $view = view(); - - return TrinaryLogic::createFromBoolean($view->exists($constantStrings[0]->getValue())); - } - - if ($type instanceof self) { - return TrinaryLogic::createYes(); - } - - if ($type->isString()->yes()) { - return TrinaryLogic::createMaybe(); - } - - if ($type instanceof CompoundType) { - return $type->isSubTypeOf($this); - } - - return TrinaryLogic::createNo(); - } - - /** @param mixed[] $properties */ - public static function __set_state(array $properties): Type - { - return new self(); - } -} diff --git a/docker/statistics/vendor/larastan/larastan/src/Types/ViewStringTypeNodeResolverExtension.php b/docker/statistics/vendor/larastan/larastan/src/Types/ViewStringTypeNodeResolverExtension.php deleted file mode 100644 index 3680ea50..00000000 --- a/docker/statistics/vendor/larastan/larastan/src/Types/ViewStringTypeNodeResolverExtension.php +++ /dev/null @@ -1,26 +0,0 @@ -__toString() === 'view-string') { - return new ViewStringType(); - } - - return null; - } -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/10.0.0/BelongsToMany.stub b/docker/statistics/vendor/larastan/larastan/stubs/10.0.0/BelongsToMany.stub deleted file mode 100644 index 3753e899..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/10.0.0/BelongsToMany.stub +++ /dev/null @@ -1,155 +0,0 @@ - - */ -class BelongsToMany extends Relation -{ - /** - * Find a related model by its primary key or return new instance of the related model. - * - * @param mixed $id - * @param array|'*')>|model-property|'*' $columns - * @return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Support\Collection : TRelatedModel) - */ - public function findOrNew($id, $columns = ['*']); - - /** - * Get the first related model record matching the attributes or instantiate it. - * - * @param array $attributes - * @return TRelatedModel - */ - public function firstOrNew(array $attributes); - - /** - * Get the first related record matching the attributes or create it. - * - * @param array $attributes - * @param array $joining - * @param bool $touch - * @return TRelatedModel - */ - public function firstOrCreate(array $attributes, array $joining = [], $touch = true); - - /** - * Attempt to create the record. If a unique constraint violation occurs, attempt to find the matching record. - * - * @param array $attributes - * @param array $joining - * @param bool $touch - * @return TRelatedModel - */ - public function createOrFirst(array $attributes, array $joining = [], $touch = true); - - /** - * Create or update a related record matching the attributes, and fill it with values. - * - * @param array $attributes - * @param array $values - * @param array $joining - * @param bool $touch - * @return TRelatedModel - */ - public function updateOrCreate(array $attributes, array $values = [], array $joining = [], $touch = true); - - /** - * Find a related model by its primary key. - * - * @param mixed $id - * @param array $columns - * @return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Database\Eloquent\Collection : TRelatedModel|null) - */ - public function find($id, $columns = ['*']); - - /** - * Find multiple related models by their primary keys. - * - * @param \Illuminate\Contracts\Support\Arrayable|int[] $ids - * @param array $columns - * @return \Illuminate\Database\Eloquent\Collection - */ - public function findMany($ids, $columns = ['*']); - - /** - * Find a related model by its primary key or throw an exception. - * - * @param mixed $id - * @param array $columns - * @return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Database\Eloquent\Collection : TRelatedModel) - * - * @throws \Illuminate\Database\Eloquent\ModelNotFoundException - */ - public function findOrFail($id, $columns = ['*']); - - /** - * Execute the query and get the first result. - * - * @param array $columns - * @return TRelatedModel|null - */ - public function first($columns = ['*']); - - /** - * Execute the query and get the first result or throw an exception. - * - * @param array $columns - * @return TRelatedModel - * - * @throws \Illuminate\Database\Eloquent\ModelNotFoundException - */ - public function firstOrFail($columns = ['*']); - - /** - * Create a new instance of the related model. - * - * @param array, mixed> $attributes - * @param mixed[] $joining - * @param bool $touch - * @return TRelatedModel - */ - public function create(array $attributes = [], array $joining = [], $touch = true); - - /** - * Get the results of the relationship. - * - * @phpstan-return \Traversable - */ - public function getResults(); - - /** - * Get a paginator for the "select" statement. - * - * @param int|null $perPage - * @param array $columns - * @param string $pageName - * @param int|null $page - * @return \Illuminate\Pagination\LengthAwarePaginator - */ - public function paginate($perPage = null, $columns = ['*'], $pageName = 'page', $page = null); - - /** - * Paginate the given query into a simple paginator. - * - * @param int|null $perPage - * @param array $columns - * @param string $pageName - * @param int|null $page - * @return \Illuminate\Pagination\Paginator - */ - public function simplePaginate($perPage = null, $columns = ['*'], $pageName = 'page', $page = null); - - /** - * Paginate the given query into a cursor paginator. - * - * @param int|null $perPage - * @param array $columns - * @param string $cursorName - * @param string|null $cursor - * @return \Illuminate\Pagination\CursorPaginator - */ - public function cursorPaginate($perPage = null, $columns = ['*'], $cursorName = 'cursor', $cursor = null); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/10.0.0/Contracts/Database/Eloquent.stub b/docker/statistics/vendor/larastan/larastan/stubs/10.0.0/Contracts/Database/Eloquent.stub deleted file mode 100644 index 8e95fd66..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/10.0.0/Contracts/Database/Eloquent.stub +++ /dev/null @@ -1,11 +0,0 @@ - - */ -interface Builder extends BaseContract -{} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/10.0.0/Contracts/Database/Query.stub b/docker/statistics/vendor/larastan/larastan/stubs/10.0.0/Contracts/Database/Query.stub deleted file mode 100644 index c66410de..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/10.0.0/Contracts/Database/Query.stub +++ /dev/null @@ -1,15 +0,0 @@ -, mixed> $attributes - * @phpstan-return TModelClass - */ - public function make(array $attributes = []); - - /** @phpstan-return TModelClass */ - public function getModel(); - - /** - * @phpstan-param array, mixed> $attributes - * @phpstan-return TModelClass - */ - public function create(array $attributes = []); - - /** - * Create a collection of models from plain arrays. - * - * @param array $items - * @phpstan-return \Illuminate\Database\Eloquent\Collection - */ - public function hydrate(array $items); - - /** - * Create a collection of models from a raw query. - * - * @param string $query - * @param array $bindings - * @phpstan-return \Illuminate\Database\Eloquent\Collection - */ - public function fromQuery($query, $bindings = []); - - /** - * Find a model by its primary key. - * - * @param mixed $id - * @param array|'*')>|model-property|'*' $columns - * @phpstan-return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Database\Eloquent\Collection : TModelClass|null) - */ - public function find($id, $columns = ['*']); - - /** - * Find multiple models by their primary keys. - * - * @param \Illuminate\Contracts\Support\Arrayable|array $ids - * @param array|'*')>|model-property|'*' $columns - * @return \Illuminate\Database\Eloquent\Collection - */ - public function findMany($ids, $columns = ['*']); - - /** - * Find a model by its primary key or throw an exception. - * - * @param mixed $id - * @param array|'*')>|model-property|'*' $columns - * @phpstan-return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Database\Eloquent\Collection : TModelClass) - * - * @throws \Illuminate\Database\Eloquent\ModelNotFoundException - */ - public function findOrFail($id, $columns = ['*']); - - /** - * Find a model by its primary key or return fresh model instance. - * - * @template T - * @param T $id - * @param array|'*')>|model-property|'*' $columns - * @phpstan-return ($id is array ? \Illuminate\Database\Eloquent\Collection : TModelClass) - */ - public function findOrNew($id, $columns = ['*']); - - /** - * Execute the query and get the first result. - * - * @param array|'*')>|model-property|'*' $columns - * @return TModelClass|null - */ - public function first($columns = ['*']); - - /** - * Get the first record matching the attributes or instantiate it. - * - * @param array, mixed> $attributes - * @param array, mixed> $values - * @phpstan-return TModelClass - */ - public function firstOrNew(array $attributes = [], array $values = []); - - /** - * Get the first record matching the attributes or create it. - * - * @param array, mixed> $attributes - * @param array, mixed> $values - * @phpstan-return TModelClass - */ - public function firstOrCreate(array $attributes, array $values = []); - - /** - * Attempt to create the record. If a unique constraint violation occurs, attempt to find the matching record. - * - * @param array, mixed> $attributes - * @param array, mixed> $values - * @phpstan-return TModelClass - */ - public function createOrFirst(array $attributes = [], array $values = []); - - /** - * Create or update a record matching the attributes, and fill it with values. - * - * @param array, mixed> $attributes - * @param array, mixed> $values - * @phpstan-return TModelClass - */ - public function updateOrCreate(array $attributes, array $values = []); - - /** - * @param array, mixed> $attributes - * @phpstan-return TModelClass - */ - public function forceCreate(array $attributes); - - /** - * @param array, mixed> $values - * @return int - */ - public function update(array $values); - - /** - * Execute the query and get the first result or throw an exception. - * - * @param array|'*')>|model-property|'*' $columns - * @phpstan-return TModelClass - * - * @throws \Illuminate\Database\Eloquent\ModelNotFoundException - */ - public function firstOrFail($columns = ['*']); - - /** - * Execute the query and get the first result if it's the sole matching record. - * - * @param array|'*')>|model-property|'*' $columns - * @phpstan-return TModelClass - */ - public function sole($columns = ['*']); - - /** - * Execute the query and get the first result or call a callback. - * - * @param \Closure|array|'*')> $columns - * @param \Closure|null $callback - * @phpstan-return TModelClass|mixed - */ - public function firstOr($columns = ['*'], \Closure $callback = null); - - /** - * Add a relationship count / exists condition to the query. - * - * @template TRelatedModel of Model - * @param \Illuminate\Database\Eloquent\Relations\Relation|string $relation - * @param string $operator - * @param int $count - * @param string $boolean - * @param \Closure|null $callback - * @return static - * - * @throws \RuntimeException - */ - public function has($relation, $operator = '>=', $count = 1, $boolean = 'and', \Closure $callback = null); - - /** - * Add a relationship count / exists condition to the query with an "or". - * - * @param string $relation - * @param string $operator - * @param int $count - * @return static - */ - public function orHas($relation, $operator = '>=', $count = 1); - - /** - * Add a relationship count / exists condition to the query. - * - * @param string $relation - * @param string $boolean - * @param \Closure|null $callback - * @return static - */ - public function doesntHave($relation, $boolean = 'and', \Closure $callback = null); - - /** - * Add a relationship count / exists condition to the query with an "or". - * - * @param string $relation - * @return static - */ - public function orDoesntHave($relation); - - /** - * Add a basic where clause to the query. - * - * @param (\Closure(static): mixed)|model-property|array, mixed>|\Illuminate\Contracts\Database\Query\Expression $column - * @param mixed $operator - * @param mixed $value - * @param string $boolean - * @return static - */ - public function where($column, $operator = null, $value = null, $boolean = 'and'); - - /** - * Add an "or where" clause to the query. - * - * @param (\Closure(static): mixed)|model-property|array, mixed>|\Illuminate\Contracts\Database\Query\Expression $column - * @param mixed $operator - * @param mixed $value - * @return static - */ - public function orWhere($column, $operator = null, $value = null); - - /** - * Add a relationship count / exists condition to the query with where clauses. - * - * @param string $relation - * @param \Closure|null $callback - * @param string $operator - * @param int $count - * @return static - */ - public function whereHas($relation, \Closure $callback = null, $operator = '>=', $count = 1); - - /** - * Add a relationship count / exists condition to the query with where clauses. - * - * Also load the relationship with same condition. - * - * @param string $relation - * @param \Closure|null $callback - * @param string $operator - * @param int $count - * @return static - */ - public function withWhereHas($relation, \Closure $callback = null, $operator = '>=', $count = 1); - - /** - * Add a relationship count / exists condition to the query with where clauses and an "or". - * - * @param string $relation - * @param \Closure|null $callback - * @param string $operator - * @param int $count - * @return static - */ - public function orWhereHas($relation, \Closure $callback = null, $operator = '>=', $count = 1); - - /** - * Add an "or where" clause to a relationship query. - * - * @param string $relation - * @param \Closure|string|array|\Illuminate\Contracts\Database\Query\Expression $column - * @param mixed $operator - * @param mixed $value - * @return static - */ - public function orWhereRelation($relation, $column, $operator = null, $value = null); - - /** - * Add a polymorphic relationship count / exists condition to the query. - * - * @template TRelatedModel of Model - * @template TChildModel of Model - * @param \Illuminate\Database\Eloquent\Relations\MorphTo|string $relation - * @param string|array $types - * @param string $operator - * @param int $count - * @param string $boolean - * @param \Closure|null $callback - * @return static - */ - public function hasMorph($relation, $types, $operator = '>=', $count = 1, $boolean = 'and', \Closure $callback = null); - - /** - * Add a polymorphic relationship count / exists condition to the query with an "or". - * - * @template TRelatedModel of Model - * @template TChildModel of Model - * @param \Illuminate\Database\Eloquent\Relations\MorphTo|string $relation - * @param string|array $types - * @param string $operator - * @param int $count - * @return static - */ - public function orHasMorph($relation, $types, $operator = '>=', $count = 1); - - /** - * Add a polymorphic relationship count / exists condition to the query. - * - * @template TRelatedModel of Model - * @template TChildModel of Model - * @param \Illuminate\Database\Eloquent\Relations\MorphTo|string $relation - * @param string|array $types - * @param string $boolean - * @param \Closure|null $callback - * @return static - */ - public function doesntHaveMorph($relation, $types, $boolean = 'and', \Closure $callback = null); - - /** - * Add a polymorphic relationship count / exists condition to the query with an "or". - * - * @template TRelatedModel of Model - * @template TChildModel of Model - * @param \Illuminate\Database\Eloquent\Relations\MorphTo|string $relation - * @param string|array $types - * @return static - */ - public function orDoesntHaveMorph($relation, $types); - - /** - * Add a polymorphic relationship count / exists condition to the query with where clauses. - * - * @template TRelatedModel of Model - * @template TChildModel of Model - * @param \Illuminate\Database\Eloquent\Relations\MorphTo|string $relation - * @param string|array $types - * @param \Closure|null $callback - * @param string $operator - * @param int $count - * @return static - */ - public function whereHasMorph($relation, $types, \Closure $callback = null, $operator = '>=', $count = 1); - - /** - * Add a polymorphic relationship count / exists condition to the query with where clauses and an "or". - * - * @template TRelatedModel of Model - * @template TChildModel of Model - * @param \Illuminate\Database\Eloquent\Relations\MorphTo|string $relation - * @param string|array $types - * @param \Closure|null $callback - * @param string $operator - * @param int $count - * @return static - */ - public function orWhereHasMorph($relation, $types, \Closure $callback = null, $operator = '>=', $count = 1); - - /** - * Add a polymorphic relationship count / exists condition to the query with where clauses. - * - * @template TRelatedModel of Model - * @template TChildModel of Model - * @param \Illuminate\Database\Eloquent\Relations\MorphTo|string $relation - * @param string|array $types - * @param \Closure|null $callback - * @return static - */ - public function whereDoesntHaveMorph($relation, $types, \Closure $callback = null); - - /** - * Add a polymorphic relationship count / exists condition to the query with where clauses and an "or". - * - * @template TRelatedModel of Model - * @template TChildModel of Model - * @param \Illuminate\Database\Eloquent\Relations\MorphTo|string $relation - * @param string|array $types - * @param \Closure|null $callback - * @return static - */ - public function orWhereDoesntHaveMorph($relation, $types, \Closure $callback = null); - - /** - * Merge the where constraints from another query to the current query. - * - * @param \Illuminate\Database\Eloquent\Builder $from - * @return static - */ - public function mergeConstraintsFrom(\Illuminate\Database\Eloquent\Builder $from); - - /** - * Add a relationship count / exists condition to the query with where clauses and an "or". - * - * @param string $relation - * @param \Closure|null $callback - * @return static - */ - public function orWhereDoesntHave($relation, \Closure $callback = null); - - /** - * Add a relationship count / exists condition to the query with where clauses. - * - * @param string $relation - * @param \Closure|null $callback - * @return static - */ - public function whereDoesntHave($relation, \Closure $callback = null); - - /** - * Add a basic where clause to the query, and return the first result. - * - * @param (\Closure(static): mixed)|model-property|array, mixed>|\Illuminate\Contracts\Database\Query\Expression $column - * @param mixed $operator - * @param mixed $value - * @param string $boolean - * @phpstan-return TModelClass|null - */ - public function firstWhere($column, $operator = null, $value = null, $boolean = 'and'); - - /** - * Execute the query as a "select" statement. - * - * @param array|'*')>|model-property|'*' $columns - * @phpstan-return \Illuminate\Database\Eloquent\Collection - */ - public function get($columns = ['*']); - - /** - * Get the hydrated models without eager loading. - * - * @param array|'*')>|model-property|'*' $columns - * @phpstan-return TModelClass[] - */ - public function getModels($columns = ['*']); - - /** - * Get a single column's value from the first result of a query. - * - * @param model-property|\Illuminate\Contracts\Database\Query\Expression $column - * @return mixed - */ - public function value($column); - - /** - * Paginate the given query. - * - * @param int|null $perPage - * @param array $columns - * @param string $pageName - * @param int|null $page - * @return \Illuminate\Pagination\LengthAwarePaginator - * - * @throws \InvalidArgumentException - */ - public function paginate($perPage = null, $columns = ['*'], $pageName = 'page', $page = null); - - /** - * Paginate the given query into a simple paginator. - * - * @param int|null $perPage - * @param array $columns - * @param string $pageName - * @param int|null $page - * @return \Illuminate\Pagination\Paginator - */ - public function simplePaginate($perPage = null, $columns = ['*'], $pageName = 'page', $page = null); - - /** - * Paginate the given query into a cursor paginator. - * - * @param int|null $perPage - * @param array $columns - * @param string $cursorName - * @param \Illuminate\Pagination\Cursor|string|null $cursor - * @return \Illuminate\Pagination\CursorPaginator - */ - public function cursorPaginate($perPage = null, $columns = ['*'], $cursorName = 'cursor', $cursor = null); - - /** - * Get a lazy collection for the given query. - * - * @phpstan-return \Illuminate\Support\LazyCollection - */ - public function cursor(); - - /** - * Query lazily, by chunks of the given size. - * - * @param int $chunkSize - * @return \Illuminate\Support\LazyCollection - * - * @throws \InvalidArgumentException - */ - public function lazy($chunkSize = 1000); - - /** - * Query lazily, by chunking the results of a query by comparing IDs. - * - * @param int $chunkSize - * @param string|null $column - * @param string|null $alias - * @return \Illuminate\Support\LazyCollection - * - * @throws \InvalidArgumentException - */ - public function lazyById($chunkSize = 1000, $column = null, $alias = null); - - /** - * Query lazily, by chunking the results of a query by comparing IDs in descending order. - * - * @param int $chunkSize - * @param string|null $column - * @param string|null $alias - * @return \Illuminate\Support\LazyCollection - * - * @throws \InvalidArgumentException - */ - public function lazyByIdDesc($chunkSize = 1000, $column = null, $alias = null); - - /** - * Add a basic where clause to a relationship query. - * - * @param string $relation - * @param \Closure|string|array|\Illuminate\Contracts\Database\Query\Expression $column - * @param mixed $operator - * @param mixed $value - * @return static - */ - public function whereRelation($relation, $column, $operator = null, $value = null); - - /** - * Gets the result of a query in chunks. - * - * @param int $count - * @param callable(\Illuminate\Database\Eloquent\Collection, int): mixed $callback - * @return bool - */ - public function chunk($count, $callback); - - /** - * Chunk the results of a query by comparing IDs. - * - * @param int $count - * @param callable(\Illuminate\Database\Eloquent\Collection, int): mixed $callback - * @param string|null $column - * @param string|null $alias - * @return bool - */ - public function chunkById($count, callable $callback, $column = null, $alias = null); - - /** - * Chunk the results of a query by comparing IDs in descending order. - * - * @param int $count - * @param callable(\Illuminate\Database\Eloquent\Collection, int): mixed $callback - * @param string|null $column - * @param string|null $alias - * @return bool - */ - public function chunkByIdDesc($count, callable $callback, $column = null, $alias = null); - - /** - * Run a map over each item while chunking. - * - * @template TReturn - * - * @param callable(TModelClass): TReturn $callback - * @param int $count - * @return \Illuminate\Support\Collection - */ - public function chunkMap(callable $callback, $count = 1000); -} - -class Scope {} - -/** - * @method static \Illuminate\Database\Eloquent\Builder withTrashed(bool $withTrashed = true) - * @method static \Illuminate\Database\Eloquent\Builder onlyTrashed() - * @method static \Illuminate\Database\Eloquent\Builder withoutTrashed() - * @method static bool restore() - * @method static static restoreOrCreate(array $attributes = [], array $values = []) - * @method static static createOrRestore(array $attributes = [], array $values = []) - */ -trait SoftDeletes {} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/10.0.0/HasMany.stub b/docker/statistics/vendor/larastan/larastan/stubs/10.0.0/HasMany.stub deleted file mode 100644 index 62c74229..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/10.0.0/HasMany.stub +++ /dev/null @@ -1,24 +0,0 @@ - - */ -class HasMany extends HasOneOrMany -{ - /** - * Get the results of the relationship. - * - * @phpstan-return \Traversable - */ - public function getResults(); - - /** - * Convert the relationship to a "has one" relationship. - * - * @return HasOne - */ - public function one(); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/10.0.0/HasManyThrough.stub b/docker/statistics/vendor/larastan/larastan/stubs/10.0.0/HasManyThrough.stub deleted file mode 100644 index 69c70c3f..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/10.0.0/HasManyThrough.stub +++ /dev/null @@ -1,84 +0,0 @@ - - */ -class HasManyThrough extends Relation -{ - /** - * Get the results of the relationship. - * - * @phpstan-return \Traversable - */ - public function getResults(); - - /** - * Get a paginator for the "select" statement. - * - * @param int|null $perPage - * @param array $columns - * @param string $pageName - * @param int|null $page - * @return \Illuminate\Pagination\LengthAwarePaginator - */ - public function paginate($perPage = null, $columns = ['*'], $pageName = 'page', $page = null); - - /** - * Paginate the given query into a simple paginator. - * - * @param int|null $perPage - * @param array $columns - * @param string $pageName - * @param int|null $page - * @return \Illuminate\Pagination\Paginator - */ - public function simplePaginate($perPage = null, $columns = ['*'], $pageName = 'page', $page = null); - - /** - * Paginate the given query into a cursor paginator. - * - * @param int|null $perPage - * @param array $columns - * @param string $cursorName - * @param string|null $cursor - * @return \Illuminate\Pagination\CursorPaginator - */ - public function cursorPaginate($perPage = null, $columns = ['*'], $cursorName = 'cursor', $cursor = null); - - /** - * Find a related model by its primary key. - * - * @param mixed $id - * @param array $columns - * @return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Database\Eloquent\Collection : TRelatedModel|null) - */ - public function find($id, $columns = ['*']); - - /** - * Find multiple related models by their primary keys. - * - * @param \Illuminate\Contracts\Support\Arrayable|int[] $ids - * @param array $columns - * @return \Illuminate\Database\Eloquent\Collection - */ - public function findMany($ids, $columns = ['*']); - - /** - * Find a related model by its primary key or throw an exception. - * - * @param mixed $id - * @param array $columns - * @return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Database\Eloquent\Collection : TRelatedModel) - */ - public function findOrFail($id, $columns = ['*']); - - /** - * Convert the relationship to a "has one through" relationship. - * - * @return HasOneThrough - */ - public function one(); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/10.0.0/HasOneOrMany.stub b/docker/statistics/vendor/larastan/larastan/stubs/10.0.0/HasOneOrMany.stub deleted file mode 100644 index c348980e..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/10.0.0/HasOneOrMany.stub +++ /dev/null @@ -1,95 +0,0 @@ - - */ -abstract class HasOneOrMany extends Relation -{ - /** - * Create a new has one or many relationship instance. - * - * @param \Illuminate\Database\Eloquent\Builder $query - * @param TRelatedModel $parent - * @param string $foreignKey - * @param string $localKey - * @return void - */ - public function __construct(\Illuminate\Database\Eloquent\Builder $query, \Illuminate\Database\Eloquent\Model $parent, $foreignKey, $localKey); - - /** - * @param array, mixed> $attributes - * @phpstan-return TRelatedModel - */ - public function make(array $attributes = []); - - /** - * Find a model by its primary key or return new instance of the related model. - * - * @param mixed $id - * @param array $columns - * @return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Support\Collection : TRelatedModel) - */ - public function findOrNew($id, $columns = ['*']); - - /** - * Get the first related model record matching the attributes or instantiate it. - * - * @param array, mixed> $attributes - * @param array $values - * @return TRelatedModel - */ - public function firstOrNew(array $attributes, array $values = []); - - /** - * Get the first related record matching the attributes or create it. - * - * @param array, mixed> $attributes - * @param array $values - * @return TRelatedModel - */ - public function firstOrCreate(array $attributes, array $values = []); - - /** - * Attempt to create the record. If a unique constraint violation occurs, attempt to find the matching record. - * - * @param array, mixed> $attributes - * @param array $values - * @return TRelatedModel - */ - public function createOrFirst(array $attributes, array $values = []); - - /** - * Create or update a related record matching the attributes, and fill it with values. - * - * @param array, mixed> $attributes - * @param array $values - * @return TRelatedModel - */ - public function updateOrCreate(array $attributes, array $values = []); - - /** - * Attach a model instance to the parent model. - * - * @param \Illuminate\Database\Eloquent\Model $model - * @return TRelatedModel|false - */ - public function save(\Illuminate\Database\Eloquent\Model $model); - - /** - * @phpstan-param array, mixed> $attributes - * - * @phpstan-return TRelatedModel - */ - public function create(array $attributes = []); - - /** - * Create a Collection of new instances of the related model. - * - * @param iterable $records - * @return \Illuminate\Database\Eloquent\Collection - */ - public function createMany(iterable $records); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/10.0.0/MorphMany.stub b/docker/statistics/vendor/larastan/larastan/stubs/10.0.0/MorphMany.stub deleted file mode 100644 index 3ff145bf..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/10.0.0/MorphMany.stub +++ /dev/null @@ -1,31 +0,0 @@ - - */ -class MorphMany extends MorphOneOrMany -{ - /** - * @param array, mixed> $attributes - * - * @phpstan-return TRelatedModel - */ - public function create(array $attributes = []); - - /** - * Get the results of the relationship. - * - * @phpstan-return \Traversable - */ - public function getResults(); - - /** - * Convert the relationship to a "morph one" relationship. - * - * @return MorphOne - */ - public function one(); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/10.0.0/QueryBuilder.stub b/docker/statistics/vendor/larastan/larastan/stubs/10.0.0/QueryBuilder.stub deleted file mode 100644 index 580a0b6f..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/10.0.0/QueryBuilder.stub +++ /dev/null @@ -1,353 +0,0 @@ -|string $query - * @param string $as - * @param \Closure|string $first - * @param string|null $operator - * @param \Illuminate\Contracts\Database\Query\Expression|string|null $second - * @param string $type - * @param bool $where - * @return $this - * - * @throws \InvalidArgumentException - */ - public function joinSub($query, $as, $first, $operator = null, $second = null, $type = 'inner', $where = false); - - /** - * Add a basic where clause to the query. - * - * @param \Closure|string|array|\Illuminate\Contracts\Database\Query\Expression $column - * @param mixed $operator - * @param mixed $value - * @param string $boolean - * @return $this - */ - public function where($column, $operator = null, $value = null, $boolean = 'and'); - - /** - * Add an array of where clauses to the query. - * - * @param array $column - * @param string $boolean - * @param string $method - * @return $this - */ - protected function addArrayOfWheres($column, $boolean, $method = 'where'); - - /** - * Add an "or where" clause to the query. - * - * @param \Closure|string|array|\Illuminate\Contracts\Database\Query\Expression $column - * @param mixed $operator - * @param mixed $value - * @return $this - */ - public function orWhere($column, $operator = null, $value = null); - - /** - * Add a "where" clause comparing two columns to the query. - * - * @param string|array $first - * @param string|null $operator - * @param string|null $second - * @param string|null $boolean - * @return $this - */ - public function whereColumn($first, $operator = null, $second = null, $boolean = 'and'); - - /** - * Add a "where in raw" clause for integer values to the query. - * - * @param string $column - * @param \Illuminate\Contracts\Support\Arrayable|array $values - * @param string $boolean - * @param bool $not - * @return $this - */ - public function whereIntegerInRaw($column, $values, $boolean = 'and', $not = false); - - /** - * Add an "or where in raw" clause for integer values to the query. - * - * @param string $column - * @param \Illuminate\Contracts\Support\Arrayable|array $values - * @return $this - */ - public function orWhereIntegerInRaw($column, $values); - - /** - * Add a "where not in raw" clause for integer values to the query. - * - * @param string $column - * @param \Illuminate\Contracts\Support\Arrayable|array $values - * @param string $boolean - * @return $this - */ - public function whereIntegerNotInRaw($column, $values, $boolean = 'and'); - - /** - * Add an "or where not in raw" clause for integer values to the query. - * - * @param string $column - * @param \Illuminate\Contracts\Support\Arrayable|array $values - * @return $this - */ - public function orWhereIntegerNotInRaw($column, $values); - - /** - * Add a "where null" clause to the query. - * - * @param string|array|\Illuminate\Contracts\Database\Query\Expression $columns - * @param string $boolean - * @param bool $not - * @return $this - */ - public function whereNull($columns, $boolean = 'and', $not = false); - - /** - * Add a "where not null" clause to the query. - * - * @param string|array|\Illuminate\Contracts\Database\Query\Expression $columns - * @param string $boolean - * @return $this - */ - public function whereNotNull($columns, $boolean = 'and'); - - /** - * Adds a where condition using row values. - * - * @param array $columns - * @param string $operator - * @param array $values - * @param string $boolean - * @return $this - * - * @throws \InvalidArgumentException - */ - public function whereRowValues($columns, $operator, $values, $boolean = 'and'); - - /** - * Adds a or where condition using row values. - * - * @param array $columns - * @param string $operator - * @param array $values - * @return $this - */ - public function orWhereRowValues($columns, $operator, $values); - - /** - * Add a "having between " clause to the query. - * - * @param string $column - * @param iterable $values - * @param string $boolean - * @param bool $not - * @return $this - */ - public function havingBetween($column, iterable $values, $boolean = 'and', $not = false); - - /** - * Add a union statement to the query. - * - * @template TModelClass of \Illuminate\Database\Eloquent\Model - * @param \Illuminate\Database\Query\Builder|\Illuminate\Database\Eloquent\Builder|\Closure $query - * @param bool $all - * @return $this - */ - public function union($query, $all = false); - - /** - * Add a union all statement to the query. - * - * @template TModelClass of \Illuminate\Database\Eloquent\Model - * @param \Illuminate\Database\Query\Builder|\Illuminate\Database\Eloquent\Builder|\Closure $query - * @return $this - */ - public function unionAll($query); - - /** - * Execute a query for a single record by ID. - * - * @param int|string $id - * @param array $columns - * @return array|object|null - */ - public function find($id, $columns = ['*']); - - /** - * Get an array with the values of a given column. - * - * @param string|\Illuminate\Contracts\Database\Query\Expression $column - * @param string|null $key - * @return \Illuminate\Support\Collection - */ - public function pluck($column, $key = null); - - /** - * Retrieve the sum of the values of a given column. - * - * @param \Illuminate\Contracts\Database\Query\Expression|string $column - * @return numeric-string|float|int - */ - public function sum($column); - - /** - * Retrieve the average of the values of a given column. - * - * @param \Illuminate\Contracts\Database\Query\Expression|string $column - * @return numeric-string|float|int|null - */ - public function avg($column); - - /** - * Alias for the "avg" method. - * - * @param \Illuminate\Contracts\Database\Query\Expression|string $column - * @return numeric-string|float|int|null - */ - public function average($column); - - /** - * Execute an aggregate function on the database. - * - * @param string $function - * @param array $columns - * @return mixed - */ - public function aggregate($function, $columns = ['*']); - - /** - * Execute a numeric aggregate function on the database. - * - * @param string $function - * @param array $columns - * @return float|int - */ - public function numericAggregate($function, $columns = ['*']); - - /** - * Set the aggregate property without running the query. - * - * @param string $function - * @param array $columns - * @return $this - */ - protected function setAggregate($function, $columns); - - /** - * Execute the given callback while selecting the given columns. - * - * After running the callback, the columns are reset to the original value. - * - * @param array $columns - * @param callable $callback - * @return mixed - */ - protected function onceWithColumns($columns, $callback); - - /** - * Insert a new record and get the value of the primary key. - * - * @param array $values - * @param string|null $sequence - * @return int - */ - public function insertGetId(array $values, $sequence = null); - - /** - * Insert new records into the table using a subquery. - * - * @template TModelClass of \Illuminate\Database\Eloquent\Model - * @param array $columns - * @param \Closure|\Illuminate\Database\Query\Builder|\Illuminate\Database\Eloquent\Builder|string $query - * @return int - */ - public function insertUsing(array $columns, $query); - - /** - * Update a record in the database. - * - * @param array $values - * @return int - */ - public function update(array $values); - - /** - * Insert or update a record matching the attributes, and fill it with values. - * - * @param array $attributes - * @param array $values - * @return bool - */ - public function updateOrInsert(array $attributes, array $values = []); - - /** - * Increment a column's value by a given amount. - * - * @param string|\Illuminate\Contracts\Database\Query\Expression $column - * @param float|int $amount - * @param array $extra - * @return int - * - * @throws \InvalidArgumentException - */ - public function increment($column, $amount = 1, array $extra = []); - - /** - * Decrement a column's value by a given amount. - * - * @param string|\Illuminate\Contracts\Database\Query\Expression $column - * @param float|int $amount - * @param array $extra - * @return int - * - * @throws \InvalidArgumentException - */ - public function decrement($column, $amount = 1, array $extra = []); - - /** - * Get the raw SQL representation of the query with embedded bindings. - * - * @return string - */ - public function toRawSql(); - - /** - * Dump the raw current SQL with embedded bindings. - * - * @return $this - */ - public function dumpRawSql(); - - /** - * Die and dump the current SQL with embedded bindings. - * - * @return never - */ - public function ddRawSql(); - - /** - * Get a lazy collection for the given query. - * - * @return \Illuminate\Support\LazyCollection - */ - public function cursor(); - - /** - * Execute the query as a "select" statement. - * - * @param string[]|string $columns - * @return \Illuminate\Support\Collection - */ - public function get($columns = ['*']); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/11.0.0/BelongsTo.stub b/docker/statistics/vendor/larastan/larastan/stubs/11.0.0/BelongsTo.stub deleted file mode 100644 index 3476e01b..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/11.0.0/BelongsTo.stub +++ /dev/null @@ -1,3 +0,0 @@ -> - */ -class BelongsToMany extends Relation -{ - /** - * Find a related model by its primary key or return new instance of the related model. - * - * @param mixed $id - * @param array|'*')>|model-property|'*' $columns - * @return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Database\Eloquent\Collection : TRelatedModel) - */ - public function findOrNew($id, $columns = ['*']); - - /** - * Get the first related model record matching the attributes or instantiate it. - * - * @param array, mixed> $attributes - * @param array, mixed> $values - * @return TRelatedModel - */ - public function firstOrNew(array $attributes = [], array $values = []); - - /** - * Get the first related record matching the attributes or create it. - * - * @param array, mixed> $attributes - * @param array, mixed> $values - * @param array $joining - * @param bool $touch - * @return TRelatedModel - */ - public function firstOrCreate(array $attributes = [], array $values = [], array $joining = [], $touch = true); - - /** - * Attempt to create the record. If a unique constraint violation occurs, attempt to find the matching record. - * - * @param array, mixed> $attributes - * @param array, mixed> $values - * @param array $joining - * @param bool $touch - * @return TRelatedModel - */ - public function createOrFirst(array $attributes, array $values = [], array $joining = [], $touch = true); - - /** - * Create or update a related record matching the attributes, and fill it with values. - * - * @param array, mixed> $attributes - * @param array, mixed> $values - * @param array $joining - * @param bool $touch - * @return TRelatedModel - */ - public function updateOrCreate(array $attributes, array $values = [], array $joining = [], $touch = true); - - /** - * Find a related model by its primary key. - * - * @param mixed $id - * @param array|'*')> $columns - * @return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Database\Eloquent\Collection : TRelatedModel|null) - */ - public function find($id, $columns = ['*']); - - /** - * Find multiple related models by their primary keys. - * - * @param \Illuminate\Contracts\Support\Arrayable|int[] $ids - * @param array|'*')> $columns - * @return \Illuminate\Database\Eloquent\Collection - */ - public function findMany($ids, $columns = ['*']); - - /** - * Find a related model by its primary key or throw an exception. - * - * @param mixed $id - * @param array|'*')> $columns - * @return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Database\Eloquent\Collection : TRelatedModel) - * - * @throws \Illuminate\Database\Eloquent\ModelNotFoundException - */ - public function findOrFail($id, $columns = ['*']); - - /** - * Execute the query and get the first result. - * - * @param array|'*')> $columns - * @return TRelatedModel|null - */ - public function first($columns = ['*']); - - /** - * Execute the query and get the first result or throw an exception. - * - * @param array|'*')> $columns - * @return TRelatedModel - * - * @throws \Illuminate\Database\Eloquent\ModelNotFoundException - */ - public function firstOrFail($columns = ['*']); - - /** - * Create a new instance of the related model. - * - * @param array, mixed> $attributes - * @param array $joining - * @param bool $touch - * @return TRelatedModel - */ - public function create(array $attributes = [], array $joining = [], $touch = true); - - /** - * Get a paginator for the "select" statement. - * - * @param int|null $perPage - * @param array|'*')> $columns - * @param string $pageName - * @param int|null $page - * @return \Illuminate\Pagination\LengthAwarePaginator - */ - public function paginate($perPage = null, $columns = ['*'], $pageName = 'page', $page = null); - - /** - * Paginate the given query into a simple paginator. - * - * @param int|null $perPage - * @param array|'*')> $columns - * @param string $pageName - * @param int|null $page - * @return \Illuminate\Pagination\Paginator - */ - public function simplePaginate($perPage = null, $columns = ['*'], $pageName = 'page', $page = null); - - /** - * Paginate the given query into a cursor paginator. - * - * @param int|null $perPage - * @param array|'*')> $columns - * @param string $cursorName - * @param string|null $cursor - * @return \Illuminate\Pagination\CursorPaginator - */ - public function cursorPaginate($perPage = null, $columns = ['*'], $cursorName = 'cursor', $cursor = null); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/11.0.0/EloquentBuilder.stub b/docker/statistics/vendor/larastan/larastan/stubs/11.0.0/EloquentBuilder.stub deleted file mode 100644 index 80023cfe..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/11.0.0/EloquentBuilder.stub +++ /dev/null @@ -1,334 +0,0 @@ -, mixed> $attributes - * @return TModel - */ - public function make(array $attributes = []); - - /** - * @param array, mixed> $attributes - * @return TModel - */ - public function create(array $attributes = []); - - /** - * Create a collection of models from plain arrays. - * - * @param array $items - * @phpstan-return \Illuminate\Database\Eloquent\Collection - */ - public function hydrate(array $items); - - /** - * Create a collection of models from a raw query. - * - * @param string $query - * @param array $bindings - * @return \Illuminate\Database\Eloquent\Collection - */ - public function fromQuery($query, $bindings = []); - - /** - * Find a model by its primary key. - * - * @param mixed $id - * @param array|'*')>|model-property|'*' $columns - * @return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Database\Eloquent\Collection : TModel|null) - */ - public function find($id, $columns = ['*']); - - /** - * Find multiple models by their primary keys. - * - * @param \Illuminate\Contracts\Support\Arrayable|array $ids - * @param array|'*')>|model-property|'*' $columns - * @return \Illuminate\Database\Eloquent\Collection - */ - public function findMany($ids, $columns = ['*']); - - /** - * Find a model by its primary key or throw an exception. - * - * @param mixed $id - * @param array|'*')>|model-property|'*' $columns - * @return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Database\Eloquent\Collection : TModel) - * - * @throws \Illuminate\Database\Eloquent\ModelNotFoundException - */ - public function findOrFail($id, $columns = ['*']); - - /** - * Find a model by its primary key or return fresh model instance. - * - * @param mixed $id - * @param array|'*')>|model-property|'*' $columns - * @phpstan-return ($id is array ? \Illuminate\Database\Eloquent\Collection : TModel) - */ - public function findOrNew($id, $columns = ['*']); - - /** - * Execute the query and get the first result. - * - * @param array|'*')>|model-property|'*' $columns - * @return TModel|null - */ - public function first($columns = ['*']); - - /** - * Get the first record matching the attributes or instantiate it. - * - * @param array, mixed> $attributes - * @param array, mixed> $values - * @return TModel - */ - public function firstOrNew(array $attributes = [], array $values = []); - - /** - * Get the first record matching the attributes or create it. - * - * @param array, mixed> $attributes - * @param array, mixed> $values - * @return TModel - */ - public function firstOrCreate(array $attributes = [], array $values = []); - - /** - * Execute the query and get the first result or throw an exception. - * - * @param array|'*')>|model-property|'*' $columns - * @phpstan-return TModel - * - * @throws \Illuminate\Database\Eloquent\ModelNotFoundException - */ - public function firstOrFail($columns = ['*']); - - /** - * Execute the query and get the first result or call a callback. - * - * @template TValue - * - * @param (\Closure(): TValue)|list|'*'> $columns - * @param (\Closure(): TValue)|null $callback - * @return TModel|TValue - */ - public function firstOr($columns = ['*'], \Closure $callback = null); - - /** - * Attempt to create the record. If a unique constraint violation occurs, attempt to find the matching record. - * - * @param array, mixed> $attributes - * @param array, mixed> $values - * @return TModel - */ - public function createOrFirst(array $attributes = [], array $values = []); - - /** - * Create or update a record matching the attributes, and fill it with values. - * - * @param array, mixed> $attributes - * @param array, mixed> $values - * @return TModel - */ - public function updateOrCreate(array $attributes = [], array $values = []); - - /** - * @param array, mixed> $attributes - * @return TModel - */ - public function forceCreate(array $attributes); - - /** - * @param array, mixed> $values - * @return int - */ - public function update(array $values); - - /** - * Execute the query and get the first result if it's the sole matching record. - * - * @param array|'*')>|model-property|'*' $columns - * @return TModel - * - * @throws \Illuminate\Database\Eloquent\ModelNotFoundException - * @throws \Illuminate\Database\MultipleRecordsFoundException - */ - public function sole($columns = ['*']); - - /** - * Add a basic where clause to the query. - * - * @param (\Closure(static): mixed)|model-property|array, mixed>|\Illuminate\Contracts\Database\Query\Expression $column - * @param mixed $operator - * @param mixed $value - * @param string $boolean - * @return static - */ - public function where($column, $operator = null, $value = null, $boolean = 'and'); - - /** - * Add an "or where" clause to the query. - * - * @param (\Closure(static): mixed)|model-property|array, mixed>|\Illuminate\Contracts\Database\Query\Expression $column - * @param mixed $operator - * @param mixed $value - * @return static - */ - public function orWhere($column, $operator = null, $value = null); - - /** - * Add a basic where clause to the query, and return the first result. - * - * @param (\Closure(static): mixed)|model-property|array, mixed>|\Illuminate\Contracts\Database\Query\Expression $column - * @param mixed $operator - * @param mixed $value - * @param string $boolean - * @return TModel|null - */ - public function firstWhere($column, $operator = null, $value = null, $boolean = 'and'); - - /** - * Execute the query as a "select" statement. - * - * @param array|'*')>|model-property|'*' $columns - * @return \Illuminate\Database\Eloquent\Collection - */ - public function get($columns = ['*']); - - /** - * Get the hydrated models without eager loading. - * - * @param array|'*')>|model-property|'*' $columns - * @return list - */ - public function getModels($columns = ['*']); - - /** - * Get a single column's value from the first result of a query. - * - * @param model-property|\Illuminate\Contracts\Database\Query\Expression $column - * @return mixed - */ - public function value($column); - - /** - * Paginate the given query. - * - * @param int|null $perPage - * @param array|'*')> $columns - * @param string $pageName - * @param int|null $page - * @return \Illuminate\Pagination\LengthAwarePaginator - * - * @throws \InvalidArgumentException - */ - public function paginate($perPage = null, $columns = ['*'], $pageName = 'page', $page = null); - - /** - * Paginate the given query into a simple paginator. - * - * @param int|null $perPage - * @param array|'*')> $columns - * @param string $pageName - * @param int|null $page - * @return \Illuminate\Pagination\Paginator - */ - public function simplePaginate($perPage = null, $columns = ['*'], $pageName = 'page', $page = null); - - /** - * Paginate the given query into a cursor paginator. - * - * @param int|null $perPage - * @param array|'*')> $columns - * @param string $cursorName - * @param \Illuminate\Pagination\Cursor|string|null $cursor - * @return \Illuminate\Pagination\CursorPaginator - */ - public function cursorPaginate($perPage = null, $columns = ['*'], $cursorName = 'cursor', $cursor = null); - - /** - * Get a lazy collection for the given query. - * - * @return \Illuminate\Support\LazyCollection - */ - public function cursor(); - - /** - * Query lazily, by chunks of the given size. - * - * @param int $chunkSize - * @return \Illuminate\Support\LazyCollection - * - * @throws \InvalidArgumentException - */ - public function lazy($chunkSize = 1000); - - /** - * Query lazily, by chunking the results of a query by comparing IDs. - * - * @param int $chunkSize - * @param string|null $column - * @param string|null $alias - * @return \Illuminate\Support\LazyCollection - * - * @throws \InvalidArgumentException - */ - public function lazyById($chunkSize = 1000, $column = null, $alias = null); - - /** - * Query lazily, by chunking the results of a query by comparing IDs in descending order. - * - * @param int $chunkSize - * @param string|null $column - * @param string|null $alias - * @return \Illuminate\Support\LazyCollection - * - * @throws \InvalidArgumentException - */ - public function lazyByIdDesc($chunkSize = 1000, $column = null, $alias = null); - - /** - * Gets the result of a query in chunks. - * - * @param int $count - * @param callable(\Illuminate\Database\Eloquent\Collection, int): mixed $callback - * @return bool - */ - public function chunk($count, $callback); - - /** - * Chunk the results of a query by comparing IDs. - * - * @param int $count - * @param callable(\Illuminate\Database\Eloquent\Collection, int): mixed $callback - * @param string|null $column - * @param string|null $alias - * @return bool - */ - public function chunkById($count, callable $callback, $column = null, $alias = null); - - /** - * Chunk the results of a query by comparing IDs in descending order. - * - * @param int $count - * @param callable(\Illuminate\Database\Eloquent\Collection, int): mixed $callback - * @param string|null $column - * @param string|null $alias - * @return bool - */ - public function chunkByIdDesc($count, callable $callback, $column = null, $alias = null); -} - -class Scope {} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/11.0.0/HasMany.stub b/docker/statistics/vendor/larastan/larastan/stubs/11.0.0/HasMany.stub deleted file mode 100644 index 3476e01b..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/11.0.0/HasMany.stub +++ /dev/null @@ -1,3 +0,0 @@ - - */ -abstract class HasOneOrMany extends Relation -{ - /** - * @param array, mixed> $attributes - * @phpstan-return TRelatedModel - */ - public function make(array $attributes = []); - - /** - * Find a model by its primary key or return new instance of the related model. - * - * @param mixed $id - * @param array|'*')> $columns - * @return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Database\Eloquent\Collection : TRelatedModel) - */ - public function findOrNew($id, $columns = ['*']); - - /** - * Get the first related model record matching the attributes or instantiate it. - * - * @param array, mixed> $attributes - * @param array, mixed> $values - * @return TRelatedModel - */ - public function firstOrNew(array $attributes = [], array $values = []); - - /** - * Get the first related record matching the attributes or create it. - * - * @param array, mixed> $attributes - * @param array, mixed> $values - * @return TRelatedModel - */ - public function firstOrCreate(array $attributes = [], array $values = []); - - /** - * Attempt to create the record. If a unique constraint violation occurs, attempt to find the matching record. - * - * @param array, mixed> $attributes - * @param array, mixed> $values - * @return TRelatedModel - */ - public function createOrFirst(array $attributes = [], array $values = []); - - /** - * Create or update a related record matching the attributes, and fill it with values. - * - * @param array, mixed> $attributes - * @param array, mixed> $values - * @return TRelatedModel - */ - public function updateOrCreate(array $attributes = [], array $values = []); - - /** - * @param array, mixed> $attributes - * @return TRelatedModel - */ - public function create(array $attributes = []); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/11.0.0/HasOneOrManyThrough.stub b/docker/statistics/vendor/larastan/larastan/stubs/11.0.0/HasOneOrManyThrough.stub deleted file mode 100644 index 143409a1..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/11.0.0/HasOneOrManyThrough.stub +++ /dev/null @@ -1,66 +0,0 @@ - - */ -abstract class HasOneOrManyThrough extends Relation -{ - /** - * Get a paginator for the "select" statement. - * - * @param int|null $perPage - * @param array|'*')> $columns - * @param string $pageName - * @param int|null $page - * @return \Illuminate\Pagination\LengthAwarePaginator - */ - public function paginate($perPage = null, $columns = ['*'], $pageName = 'page', $page = null); - - /** - * Paginate the given query into a simple paginator. - * - * @param int|null $perPage - * @param array|'*')> $columns - * @param string $pageName - * @param int|null $page - * @return \Illuminate\Pagination\Paginator - */ - public function simplePaginate($perPage = null, $columns = ['*'], $pageName = 'page', $page = null); - - /** - * Paginate the given query into a cursor paginator. - * - * @param int|null $perPage - * @param array|'*')> $columns - * @param string $cursorName - * @param string|null $cursor - * @return \Illuminate\Pagination\CursorPaginator - */ - public function cursorPaginate($perPage = null, $columns = ['*'], $cursorName = 'cursor', $cursor = null); - - /** - * Find a related model by its primary key. - * - * @param mixed $id - * @param array|'*')> $columns - * @return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Database\Eloquent\Collection : TRelatedModel|null) - */ - public function find($id, $columns = ['*']); - - /** - * Find a related model by its primary key or throw an exception. - * - * @param mixed $id - * @param array|'*')> $columns - * @return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Database\Eloquent\Collection : TRelatedModel) - */ - public function findOrFail($id, $columns = ['*']); -} - diff --git a/docker/statistics/vendor/larastan/larastan/stubs/11.0.0/HasOneThrough.stub b/docker/statistics/vendor/larastan/larastan/stubs/11.0.0/HasOneThrough.stub deleted file mode 100644 index 3476e01b..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/11.0.0/HasOneThrough.stub +++ /dev/null @@ -1,3 +0,0 @@ - - */ -abstract class Model implements \JsonSerializable, \ArrayAccess -{ - /** - * @var array - */ - protected $casts = []; - - /** - * @var list - */ - protected $hidden = []; - - /** - * @var list - */ - protected $fillable = []; - - /** - * @var list - */ - protected $visible = []; - - /** - * @var list - */ - protected $appends = []; - - /** - * @var list - */ - protected $with = []; - - /** - * @var list - */ - protected $withCount = []; - - /** - * Update the model in the database. - * - * @param array, mixed> $options - * @return bool - */ - public function save(array $options = []); - - /** - * Update the model in the database. - * - * @param array, mixed> $attributes - * @param array $options - * @return bool - */ - public function update(array $attributes = [], array $options = []); -} - -/** @template TModel of Model */ -class ModelNotFoundException extends \RuntimeException {} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/11.0.0/MorphMany.stub b/docker/statistics/vendor/larastan/larastan/stubs/11.0.0/MorphMany.stub deleted file mode 100644 index 3476e01b..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/11.0.0/MorphMany.stub +++ /dev/null @@ -1,3 +0,0 @@ -|\Illuminate\Contracts\Database\Query\Expression $column - * @param mixed $operator - * @param mixed $value - * @param string $boolean - * @return $this - */ - public function where($column, $operator = null, $value = null, $boolean = 'and'); - - /** - * Add an array of where clauses to the query. - * - * @param array $column - * @param string $boolean - * @param string $method - * @return $this - */ - protected function addArrayOfWheres($column, $boolean, $method = 'where'); - - /** - * Add an "or where" clause to the query. - * - * @param \Closure|string|array|\Illuminate\Contracts\Database\Query\Expression $column - * @param mixed $operator - * @param mixed $value - * @return $this - */ - public function orWhere($column, $operator = null, $value = null); - - /** - * Add a "where" clause comparing two columns to the query. - * - * @param string|array $first - * @param string|null $operator - * @param string|null $second - * @param string|null $boolean - * @return $this - */ - public function whereColumn($first, $operator = null, $second = null, $boolean = 'and'); - - /** - * Add a "where in raw" clause for integer values to the query. - * - * @param string $column - * @param \Illuminate\Contracts\Support\Arrayable|array $values - * @param string $boolean - * @param bool $not - * @return $this - */ - public function whereIntegerInRaw($column, $values, $boolean = 'and', $not = false); - - /** - * Add an "or where in raw" clause for integer values to the query. - * - * @param string $column - * @param \Illuminate\Contracts\Support\Arrayable|array $values - * @return $this - */ - public function orWhereIntegerInRaw($column, $values); - - /** - * Add a "where not in raw" clause for integer values to the query. - * - * @param string $column - * @param \Illuminate\Contracts\Support\Arrayable|array $values - * @param string $boolean - * @return $this - */ - public function whereIntegerNotInRaw($column, $values, $boolean = 'and'); - - /** - * Add an "or where not in raw" clause for integer values to the query. - * - * @param string $column - * @param \Illuminate\Contracts\Support\Arrayable|array $values - * @return $this - */ - public function orWhereIntegerNotInRaw($column, $values); - - /** - * Add a "where null" clause to the query. - * - * @param string|array|\Illuminate\Contracts\Database\Query\Expression $columns - * @param string $boolean - * @param bool $not - * @return $this - */ - public function whereNull($columns, $boolean = 'and', $not = false); - - /** - * Add a "where not null" clause to the query. - * - * @param string|array|\Illuminate\Contracts\Database\Query\Expression $columns - * @param string $boolean - * @return $this - */ - public function whereNotNull($columns, $boolean = 'and'); - - /** - * Adds a where condition using row values. - * - * @param array $columns - * @param string $operator - * @param array $values - * @param string $boolean - * @return $this - * - * @throws \InvalidArgumentException - */ - public function whereRowValues($columns, $operator, $values, $boolean = 'and'); - - /** - * Adds a or where condition using row values. - * - * @param array $columns - * @param string $operator - * @param array $values - * @return $this - */ - public function orWhereRowValues($columns, $operator, $values); - - /** - * Add a "having between " clause to the query. - * - * @param string $column - * @param iterable $values - * @param string $boolean - * @param bool $not - * @return $this - */ - public function havingBetween($column, iterable $values, $boolean = 'and', $not = false); - /** - * Execute a query for a single record by ID. - * - * @param int|string $id - * @param array $columns - * @return array|object|null - */ - public function find($id, $columns = ['*']); - - /** - * Get an array with the values of a given column. - * - * @param string|\Illuminate\Contracts\Database\Query\Expression $column - * @param string|null $key - * @return \Illuminate\Support\Collection - */ - public function pluck($column, $key = null); - - /** - * Retrieve the sum of the values of a given column. - * - * @param \Illuminate\Contracts\Database\Query\Expression|string $column - * @return numeric-string|float|int - */ - public function sum($column); - - /** - * Retrieve the average of the values of a given column. - * - * @param \Illuminate\Contracts\Database\Query\Expression|string $column - * @return numeric-string|float|int|null - */ - public function avg($column); - - /** - * Alias for the "avg" method. - * - * @param \Illuminate\Contracts\Database\Query\Expression|string $column - * @return numeric-string|float|int|null - */ - public function average($column); - - /** - * Execute an aggregate function on the database. - * - * @param string $function - * @param array $columns - * @return mixed - */ - public function aggregate($function, $columns = ['*']); - - /** - * Execute a numeric aggregate function on the database. - * - * @param string $function - * @param array $columns - * @return float|int - */ - public function numericAggregate($function, $columns = ['*']); - - /** - * Set the aggregate property without running the query. - * - * @param string $function - * @param array $columns - * @return $this - */ - protected function setAggregate($function, $columns); - - /** - * Execute the given callback while selecting the given columns. - * - * After running the callback, the columns are reset to the original value. - * - * @param array $columns - * @param callable $callback - * @return mixed - */ - protected function onceWithColumns($columns, $callback); - - /** - * Insert a new record and get the value of the primary key. - * - * @param array $values - * @param string|null $sequence - * @return int - */ - public function insertGetId(array $values, $sequence = null); - - /** - * Insert new records into the table using a subquery. - * - * @param array $columns - * @param \Closure|\Illuminate\Database\Query\Builder|\Illuminate\Database\Eloquent\Builder<*>|string $query - * @return int - */ - public function insertUsing(array $columns, $query); - - /** - * Update a record in the database. - * - * @param array $values - * @return int - */ - public function update(array $values); - - /** - * Insert or update a record matching the attributes, and fill it with values. - * - * @param array $attributes - * @param array|(callable(bool): array) $values - * @return bool - */ - public function updateOrInsert(array $attributes = [], array|callable $values = []); - - /** - * Increment a column's value by a given amount. - * - * @param string|\Illuminate\Contracts\Database\Query\Expression $column - * @param float|int $amount - * @param array $extra - * @return int - * - * @throws \InvalidArgumentException - */ - public function increment($column, $amount = 1, array $extra = []); - - /** - * Decrement a column's value by a given amount. - * - * @param string|\Illuminate\Contracts\Database\Query\Expression $column - * @param float|int $amount - * @param array $extra - * @return int - * - * @throws \InvalidArgumentException - */ - public function decrement($column, $amount = 1, array $extra = []); - - /** - * Get a lazy collection for the given query. - * - * @return \Illuminate\Support\LazyCollection - */ - public function cursor(); - - /** - * Execute the query as a "select" statement. - * - * @param string[]|string $columns - * @return \Illuminate\Support\Collection - */ - public function get($columns = ['*']); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/11.0.0/Relation.stub b/docker/statistics/vendor/larastan/larastan/stubs/11.0.0/Relation.stub deleted file mode 100644 index 83d06efd..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/11.0.0/Relation.stub +++ /dev/null @@ -1,44 +0,0 @@ -> $columns - * @return \Illuminate\Database\Eloquent\Collection - */ - public function get($columns = ['*']); - - /** - * Execute the query and get the first result if it's the sole matching record. - * - * @param array>|model-property $columns - * @return TRelatedModel - * - * @throws \Illuminate\Database\Eloquent\ModelNotFoundException - * @throws \Illuminate\Database\MultipleRecordsFoundException - */ - public function sole($columns = ['*']); - - /** - * Add the constraints for an internal relationship existence query. - * - * Essentially, these queries compare on column names like whereColumn. - * - * @param \Illuminate\Database\Eloquent\Builder $query - * @param \Illuminate\Database\Eloquent\Builder $parentQuery - * @param array>|model-property $columns - * @return \Illuminate\Database\Eloquent\Builder - */ - public function getRelationExistenceQuery(Builder $query, Builder $parentQuery, $columns = ['*']); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/Attribute.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/Attribute.stub deleted file mode 100644 index 72ec09c0..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/Attribute.stub +++ /dev/null @@ -1,53 +0,0 @@ - - */ - public static function make(callable $get = null, callable $set = null); - - /** - * Create a new attribute accessor. - * - * @template T - * @param callable(mixed, mixed=): T $get - * @return Attribute - */ - public static function get(callable $get); - - /** - * Create a new attribute mutator. - * - * @template T - * @param callable(T, mixed=): mixed $set - * @return Attribute - */ - public static function set(callable $set); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/BelongsTo.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/BelongsTo.stub deleted file mode 100644 index a5d47408..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/BelongsTo.stub +++ /dev/null @@ -1,27 +0,0 @@ - - */ -class BelongsTo extends Relation -{ - /** @phpstan-return TChildModel */ - public function associate(); - - /** @phpstan-return TChildModel */ - public function dissociate(); - - /** @phpstan-return TChildModel */ - public function getChild(); - - /** - * Get the results of the relationship. - * - * @phpstan-return ?TRelatedModel - */ - public function getResults(); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/BelongsToMany.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/BelongsToMany.stub deleted file mode 100644 index 7045d6fd..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/BelongsToMany.stub +++ /dev/null @@ -1,145 +0,0 @@ - - */ -class BelongsToMany extends Relation -{ - /** - * Find a related model by its primary key or return new instance of the related model. - * - * @param mixed $id - * @param array|'*')>|model-property|'*' $columns - * @return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Support\Collection : TRelatedModel) - */ - public function findOrNew($id, $columns = ['*']); - - /** - * Get the first related model record matching the attributes or instantiate it. - * - * @param array $attributes - * @return TRelatedModel - */ - public function firstOrNew(array $attributes); - - /** - * Get the first related record matching the attributes or create it. - * - * @param array $attributes - * @param array $joining - * @param bool $touch - * @return TRelatedModel - */ - public function firstOrCreate(array $attributes, array $joining = [], $touch = true); - - /** - * Create or update a related record matching the attributes, and fill it with values. - * - * @param array $attributes - * @param array $values - * @param array $joining - * @param bool $touch - * @return TRelatedModel - */ - public function updateOrCreate(array $attributes, array $values = [], array $joining = [], $touch = true); - - /** - * Find a related model by its primary key. - * - * @param mixed $id - * @param array $columns - * @return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Database\Eloquent\Collection : TRelatedModel|null) - */ - public function find($id, $columns = ['*']); - - /** - * Find multiple related models by their primary keys. - * - * @param \Illuminate\Contracts\Support\Arrayable|int[] $ids - * @param array $columns - * @return \Illuminate\Database\Eloquent\Collection - */ - public function findMany($ids, $columns = ['*']); - - /** - * Find a related model by its primary key or throw an exception. - * - * @param mixed $id - * @param array $columns - * @return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Database\Eloquent\Collection : TRelatedModel) - * - * @throws \Illuminate\Database\Eloquent\ModelNotFoundException - */ - public function findOrFail($id, $columns = ['*']); - - /** - * Execute the query and get the first result. - * - * @param array $columns - * @return TRelatedModel|null - */ - public function first($columns = ['*']); - - /** - * Execute the query and get the first result or throw an exception. - * - * @param array $columns - * @return TRelatedModel - * - * @throws \Illuminate\Database\Eloquent\ModelNotFoundException - */ - public function firstOrFail($columns = ['*']); - - /** - * Create a new instance of the related model. - * - * @param array, mixed> $attributes - * @param mixed[] $joining - * @param bool $touch - * @return TRelatedModel - */ - public function create(array $attributes = [], array $joining = [], $touch = true); - - /** - * Get the results of the relationship. - * - * @phpstan-return \Traversable - */ - public function getResults(); - - /** - * Get a paginator for the "select" statement. - * - * @param int|null $perPage - * @param array $columns - * @param string $pageName - * @param int|null $page - * @return \Illuminate\Pagination\LengthAwarePaginator - */ - public function paginate($perPage = null, $columns = ['*'], $pageName = 'page', $page = null); - - /** - * Paginate the given query into a simple paginator. - * - * @param int|null $perPage - * @param array $columns - * @param string $pageName - * @param int|null $page - * @return \Illuminate\Pagination\Paginator - */ - public function simplePaginate($perPage = null, $columns = ['*'], $pageName = 'page', $page = null); - - /** - * Paginate the given query into a cursor paginator. - * - * @param int|null $perPage - * @param array $columns - * @param string $cursorName - * @param string|null $cursor - * @return \Illuminate\Pagination\CursorPaginator - */ - public function cursorPaginate($perPage = null, $columns = ['*'], $cursorName = 'cursor', $cursor = null); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/Collection.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/Collection.stub deleted file mode 100644 index ae835410..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/Collection.stub +++ /dev/null @@ -1,94 +0,0 @@ - - * @implements \Illuminate\Support\Enumerable - */ -class Collection implements ArrayAccess, CanBeEscapedWhenCastToString, Enumerable -{ - /** - * @use \Illuminate\Support\Traits\EnumeratesValues - */ - use EnumeratesValues; - - /** - * Get one or a specified number of items randomly from the collection. - * - * @param (callable(TValue): int)|int|null $number - * @return ($number is null ? TValue : static) - * - * @throws \InvalidArgumentException - */ - public function random($number = null); - - /** - * Create a collection by using this collection for keys and another for its values. - * - * @template TCombineValue - * - * @param \Illuminate\Contracts\Support\Arrayable|iterable $values - * @return static - */ - public function combine($values); - - /** - * Get and remove the last N items from the collection. - * - * @param int $count - * @return ($count is 1 ? TValue|null : static) - */ - public function pop($count = 1); - - /** - * Get and remove the first N items from the collection. - * - * @param int $count - * @return ($count is 1 ? TValue|null : static) - */ - public function shift($count = 1); - - /** - * Push all of the given items onto the collection. - * - * @template TConcatKey of array-key - * @template TConcatValue - * - * @param iterable $source - * @return static - * TODO: this is for 9.x compatibility. Remove it when we drop 9.x support. - */ - public function concat($source); -} - -/** - * @template TKey of array-key - * @template TValue - * - * @implements \Illuminate\Support\Enumerable - */ -class LazyCollection implements CanBeEscapedWhenCastToString, Enumerable -{ - /** - * @use \Illuminate\Support\Traits\EnumeratesValues - */ - use EnumeratesValues; - - /** - * Create a collection by using this collection for keys and another for its values. - * - * @template TCombineValue - * - * @param \Illuminate\Contracts\Support\Arrayable|iterable $values - * @return static - */ - public function combine($values); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/Conditionable.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/Conditionable.stub deleted file mode 100644 index c485b0c9..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/Conditionable.stub +++ /dev/null @@ -1,34 +0,0 @@ - */ -interface Container extends \ArrayAccess -{ - -} - -namespace Illuminate\Contracts\Foundation; - -interface Application extends \Illuminate\Contracts\Container\Container -{ - -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/Contracts/Pagination.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/Contracts/Pagination.stub deleted file mode 100644 index b37af992..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/Contracts/Pagination.stub +++ /dev/null @@ -1,33 +0,0 @@ - - */ - public function items(): array; -} - -/** - * @template TItem - * - * @extends Paginator - */ -interface LengthAwarePaginator extends Paginator -{} - -/** - * @template TItem - */ -interface CursorPaginator -{ - /** - * @return array - */ - public function items(): array; -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/Contracts/Queue.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/Contracts/Queue.stub deleted file mode 100644 index b2ce63b1..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/Contracts/Queue.stub +++ /dev/null @@ -1,11 +0,0 @@ - - */ - public function toArray(); -} - -interface Jsonable -{} - -interface CanBeEscapedWhenCastToString -{} - diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/Contracts/Translation.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/Contracts/Translation.stub deleted file mode 100644 index 1ecf167c..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/Contracts/Translation.stub +++ /dev/null @@ -1,5 +0,0 @@ -, mixed> $attributes - * @phpstan-return TModelClass - */ - public function make(array $attributes = []); - - /** - * Register a new global scope. - * - * @param string $identifier - * @param \Illuminate\Database\Eloquent\Scope|\Closure $scope - * @return static - */ - public function withGlobalScope($identifier, $scope); - - /** - * Remove a registered global scope. - * - * @param \Illuminate\Database\Eloquent\Scope|string $scope - * @return static - */ - public function withoutGlobalScope($scope); - - /** @phpstan-return TModelClass */ - public function getModel(); - - /** - * @phpstan-param array, mixed> $attributes - * @phpstan-return TModelClass - */ - public function create(array $attributes = []); - - /** - * Create a collection of models from plain arrays. - * - * @param array $items - * @phpstan-return \Illuminate\Database\Eloquent\Collection - */ - public function hydrate(array $items); - - /** - * Create a collection of models from a raw query. - * - * @param string $query - * @param array $bindings - * @phpstan-return \Illuminate\Database\Eloquent\Collection - */ - public function fromQuery($query, $bindings = []); - - /** - * Find a model by its primary key. - * - * @param mixed $id - * @param array|'*')>|model-property|'*' $columns - * @phpstan-return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Database\Eloquent\Collection : TModelClass|null) - */ - public function find($id, $columns = ['*']); - - /** - * Find multiple models by their primary keys. - * - * @param \Illuminate\Contracts\Support\Arrayable|array $ids - * @param array|'*')>|model-property|'*' $columns - * @return \Illuminate\Database\Eloquent\Collection - */ - public function findMany($ids, $columns = ['*']); - - /** - * Find a model by its primary key or throw an exception. - * - * @param mixed $id - * @param array|'*')>|model-property|'*' $columns - * @phpstan-return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Database\Eloquent\Collection : TModelClass) - * - * @throws \Illuminate\Database\Eloquent\ModelNotFoundException - */ - public function findOrFail($id, $columns = ['*']); - - /** - * Find a model by its primary key or return fresh model instance. - * - * @template T - * @param T $id - * @param array|'*')>|model-property|'*' $columns - * @phpstan-return ($id is array ? \Illuminate\Database\Eloquent\Collection : TModelClass) - */ - public function findOrNew($id, $columns = ['*']); - - /** - * Execute the query and get the first result. - * - * @param array|'*')>|model-property|'*' $columns - * @return TModelClass|null - */ - public function first($columns = ['*']); - - /** - * Get the first record matching the attributes or instantiate it. - * - * @param array, mixed> $attributes - * @param array, mixed> $values - * @phpstan-return TModelClass - */ - public function firstOrNew(array $attributes = [], array $values = []); - - /** - * Get the first record matching the attributes or create it. - * - * @param array, mixed> $attributes - * @param array, mixed> $values - * @phpstan-return TModelClass - */ - public function firstOrCreate(array $attributes, array $values = []); - - /** - * Create or update a record matching the attributes, and fill it with values. - * - * @param array, mixed> $attributes - * @param array, mixed> $values - * @phpstan-return TModelClass - */ - public function updateOrCreate(array $attributes, array $values = []); - - /** - * @param array, mixed> $attributes - * @phpstan-return TModelClass - */ - public function forceCreate(array $attributes); - - /** - * @param array, mixed> $values - * @return int - */ - public function update(array $values); - - /** - * Execute the query and get the first result or throw an exception. - * - * @param array|'*')>|model-property|'*' $columns - * @phpstan-return TModelClass - * - * @throws \Illuminate\Database\Eloquent\ModelNotFoundException - */ - public function firstOrFail($columns = ['*']); - - /** - * Execute the query and get the first result if it's the sole matching record. - * - * @param array|'*')>|model-property|'*' $columns - * @phpstan-return TModelClass - */ - public function sole($columns = ['*']); - - /** - * Execute the query and get the first result or call a callback. - * - * @param \Closure|array|'*')> $columns - * @param \Closure|null $callback - * @phpstan-return TModelClass|mixed - */ - public function firstOr($columns = ['*'], \Closure $callback = null); - - /** - * Add a relationship count / exists condition to the query. - * - * @template TRelatedModel of Model - * @param \Illuminate\Database\Eloquent\Relations\Relation|string $relation - * @param string $operator - * @param int $count - * @param string $boolean - * @param \Closure|null $callback - * @return static - * - * @throws \RuntimeException - */ - public function has($relation, $operator = '>=', $count = 1, $boolean = 'and', \Closure $callback = null); - - /** - * Add a relationship count / exists condition to the query with an "or". - * - * @param string $relation - * @param string $operator - * @param int $count - * @return static - */ - public function orHas($relation, $operator = '>=', $count = 1); - - /** - * Add a relationship count / exists condition to the query. - * - * @param string $relation - * @param string $boolean - * @param \Closure|null $callback - * @return static - */ - public function doesntHave($relation, $boolean = 'and', \Closure $callback = null); - - /** - * Add a relationship count / exists condition to the query with an "or". - * - * @param string $relation - * @return static - */ - public function orDoesntHave($relation); - - /** - * Add a basic where clause to the query. - * - * @param (\Closure(static): void)|(\Closure(static): static)|model-property|array|int, mixed>|\Illuminate\Database\Query\Expression $column - * @param mixed $operator - * @param mixed $value - * @param string $boolean - * @return static - */ - public function where($column, $operator = null, $value = null, $boolean = 'and'); - - /** - * Add an "or where" clause to the query. - * - * @param (\Closure(static): void)|(\Closure(static): static)|model-property|array|int, mixed>|\Illuminate\Database\Query\Expression $column - * @param mixed $operator - * @param mixed $value - * @return $this - */ - public function orWhere($column, $operator = null, $value = null); - - /** - * Add a relationship count / exists condition to the query with where clauses. - * - * @param string $relation - * @param \Closure|null $callback - * @param string $operator - * @param int $count - * @return static - */ - public function whereHas($relation, \Closure $callback = null, $operator = '>=', $count = 1); - - /** - * Add a relationship count / exists condition to the query with where clauses. - * - * Also load the relationship with same condition. - * - * @param string $relation - * @param \Closure|null $callback - * @param string $operator - * @param int $count - * @return static - */ - public function withWhereHas($relation, \Closure $callback = null, $operator = '>=', $count = 1); - - /** - * Add a relationship count / exists condition to the query with where clauses and an "or". - * - * @param string $relation - * @param \Closure|null $callback - * @param string $operator - * @param int $count - * @return static - */ - public function orWhereHas($relation, \Closure $callback = null, $operator = '>=', $count = 1); - - /** - * Add an "or where" clause to a relationship query. - * - * @param string $relation - * @param \Closure|string|array|\Illuminate\Database\Query\Expression $column - * @param mixed $operator - * @param mixed $value - * @return static - */ - public function orWhereRelation($relation, $column, $operator = null, $value = null); - - /** - * Add a polymorphic relationship count / exists condition to the query. - * - * @template TRelatedModel of Model - * @template TChildModel of Model - * @param \Illuminate\Database\Eloquent\Relations\MorphTo|string $relation - * @param string|array $types - * @param string $operator - * @param int $count - * @param string $boolean - * @param \Closure|null $callback - * @return static - */ - public function hasMorph($relation, $types, $operator = '>=', $count = 1, $boolean = 'and', \Closure $callback = null); - - /** - * Add a polymorphic relationship count / exists condition to the query with an "or". - * - * @template TRelatedModel of Model - * @template TChildModel of Model - * @param \Illuminate\Database\Eloquent\Relations\MorphTo|string $relation - * @param string|array $types - * @param string $operator - * @param int $count - * @return static - */ - public function orHasMorph($relation, $types, $operator = '>=', $count = 1); - - /** - * Add a polymorphic relationship count / exists condition to the query. - * - * @template TRelatedModel of Model - * @template TChildModel of Model - * @param \Illuminate\Database\Eloquent\Relations\MorphTo|string $relation - * @param string|array $types - * @param string $boolean - * @param \Closure|null $callback - * @return static - */ - public function doesntHaveMorph($relation, $types, $boolean = 'and', \Closure $callback = null); - - /** - * Add a polymorphic relationship count / exists condition to the query with an "or". - * - * @template TRelatedModel of Model - * @template TChildModel of Model - * @param \Illuminate\Database\Eloquent\Relations\MorphTo|string $relation - * @param string|array $types - * @return static - */ - public function orDoesntHaveMorph($relation, $types); - - /** - * Add a polymorphic relationship count / exists condition to the query with where clauses. - * - * @template TRelatedModel of Model - * @template TChildModel of Model - * @param \Illuminate\Database\Eloquent\Relations\MorphTo|string $relation - * @param string|array $types - * @param \Closure|null $callback - * @param string $operator - * @param int $count - * @return static - */ - public function whereHasMorph($relation, $types, \Closure $callback = null, $operator = '>=', $count = 1); - - /** - * Add a polymorphic relationship count / exists condition to the query with where clauses and an "or". - * - * @template TRelatedModel of Model - * @template TChildModel of Model - * @param \Illuminate\Database\Eloquent\Relations\MorphTo|string $relation - * @param string|array $types - * @param \Closure|null $callback - * @param string $operator - * @param int $count - * @return static - */ - public function orWhereHasMorph($relation, $types, \Closure $callback = null, $operator = '>=', $count = 1); - - /** - * Add a polymorphic relationship count / exists condition to the query with where clauses. - * - * @template TRelatedModel of Model - * @template TChildModel of Model - * @param \Illuminate\Database\Eloquent\Relations\MorphTo|string $relation - * @param string|array $types - * @param \Closure|null $callback - * @return static - */ - public function whereDoesntHaveMorph($relation, $types, \Closure $callback = null); - - /** - * Add a polymorphic relationship count / exists condition to the query with where clauses and an "or". - * - * @template TRelatedModel of Model - * @template TChildModel of Model - * @param \Illuminate\Database\Eloquent\Relations\MorphTo|string $relation - * @param string|array $types - * @param \Closure|null $callback - * @return static - */ - public function orWhereDoesntHaveMorph($relation, $types, \Closure $callback = null); - - /** - * Merge the where constraints from another query to the current query. - * - * @param \Illuminate\Database\Eloquent\Builder $from - * @return static - */ - public function mergeConstraintsFrom(\Illuminate\Database\Eloquent\Builder $from); - - /** - * Add a relationship count / exists condition to the query with where clauses and an "or". - * - * @param string $relation - * @param \Closure|null $callback - * @return static - */ - public function orWhereDoesntHave($relation, \Closure $callback = null); - - /** - * Add a relationship count / exists condition to the query with where clauses. - * - * @param string $relation - * @param \Closure|null $callback - * @return static - */ - public function whereDoesntHave($relation, \Closure $callback = null); - - /** - * Add a basic where clause to the query, and return the first result. - * - * @param (\Closure(static): void)|(\Closure(static): static)|model-property|array|int, mixed>|\Illuminate\Database\Query\Expression $column - * @param mixed $operator - * @param mixed $value - * @param string $boolean - * @phpstan-return TModelClass|null - */ - public function firstWhere($column, $operator = null, $value = null, $boolean = 'and'); - - /** - * Execute the query as a "select" statement. - * - * @param array|'*')>|model-property|'*' $columns - * @phpstan-return \Illuminate\Database\Eloquent\Collection - */ - public function get($columns = ['*']); - - /** - * Get a lazy collection for the given query. - * - * @phpstan-return \Illuminate\Support\LazyCollection - */ - public function cursor(); - - /** - * Get the hydrated models without eager loading. - * - * @param array|'*')>|model-property|'*' $columns - * @phpstan-return TModelClass[] - */ - public function getModels($columns = ['*']); - - /** - * Get a single column's value from the first result of a query. - * - * @param model-property|\Illuminate\Database\Query\Expression $column - * @return mixed - */ - public function value($column); - - /** - * Paginate the given query. - * - * @param int|null $perPage - * @param array $columns - * @param string $pageName - * @param int|null $page - * @return \Illuminate\Pagination\LengthAwarePaginator - * - * @throws \InvalidArgumentException - */ - public function paginate($perPage = null, $columns = ['*'], $pageName = 'page', $page = null); - - /** - * Paginate the given query into a simple paginator. - * - * @param int|null $perPage - * @param array $columns - * @param string $pageName - * @param int|null $page - * @return \Illuminate\Pagination\Paginator - */ - public function simplePaginate($perPage = null, $columns = ['*'], $pageName = 'page', $page = null); - - /** - * Paginate the given query into a cursor paginator. - * - * @param int|null $perPage - * @param array $columns - * @param string $cursorName - * @param \Illuminate\Pagination\Cursor|string|null $cursor - * @return \Illuminate\Pagination\CursorPaginator - */ - public function cursorPaginate($perPage = null, $columns = ['*'], $cursorName = 'cursor', $cursor = null); - - /** - * Query lazily, by chunks of the given size. - * - * @param int $chunkSize - * @return \Illuminate\Support\LazyCollection - * - * @throws \InvalidArgumentException - */ - public function lazy($chunkSize = 1000); - - /** - * Query lazily, by chunking the results of a query by comparing IDs. - * - * @param int $chunkSize - * @param string|null $column - * @param string|null $alias - * @return \Illuminate\Support\LazyCollection - * - * @throws \InvalidArgumentException - */ - public function lazyById($chunkSize = 1000, $column = null, $alias = null); - - /** - * Query lazily, by chunking the results of a query by comparing IDs in descending order. - * - * @param int $chunkSize - * @param string|null $column - * @param string|null $alias - * @return \Illuminate\Support\LazyCollection - * - * @throws \InvalidArgumentException - */ - public function lazyByIdDesc($chunkSize = 1000, $column = null, $alias = null); - - /** - * Add a basic where clause to a relationship query. - * - * @param string $relation - * @param \Closure|string|array|\Illuminate\Database\Query\Expression $column - * @param mixed $operator - * @param mixed $value - * @return static - */ - public function whereRelation($relation, $column, $operator = null, $value = null); - - /** - * Gets the result of a query in chunks. - * - * @param int $count - * @param callable(\Illuminate\Database\Eloquent\Collection, int): mixed $callback - * @return bool - */ - public function chunk($count, $callback); - - /** - * Chunk the results of a query by comparing IDs. - * - * @param int $count - * @param callable(\Illuminate\Database\Eloquent\Collection, int): mixed $callback - * @param string|null $column - * @param string|null $alias - * @return bool - */ - public function chunkById($count, callable $callback, $column = null, $alias = null); - - /** - * Run a map over each item while chunking. - * - * @template TReturn - * - * @param callable(TModelClass): TReturn $callback - * @param int $count - * @return \Illuminate\Support\Collection - */ - public function chunkMap(callable $callback, $count = 1000); -} - -class Scope {} - -/** - * @method static \Illuminate\Database\Eloquent\Builder withTrashed(bool $withTrashed = true) - * @method static \Illuminate\Database\Eloquent\Builder onlyTrashed() - * @method static \Illuminate\Database\Eloquent\Builder withoutTrashed() - * @method static bool restore() - * @method static static restoreOrCreate(array $attributes = [], array $values = []) - */ -trait SoftDeletes {} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/EloquentCollection.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/EloquentCollection.stub deleted file mode 100644 index c8c44bd9..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/EloquentCollection.stub +++ /dev/null @@ -1,49 +0,0 @@ - - */ -class Collection extends BaseCollection implements QueueableCollection -{ - /** - * Find a model in the collection by key. - * - * @template TFindDefault - * - * @param mixed $key - * @param TFindDefault $default - * @phpstan-return ($key is \Illuminate\Database\Eloquent\Model ? TModel|TFindDefault : ($key is (\Illuminate\Contracts\Support\Arrayable|array) ? static : TModel|TFindDefault)) - */ - public function find($key, $default = null); - - /** - * Run a map over each of the items. - * - * @template TMapValue - * - * @param callable(TModel, TKey): TMapValue $callback - * @return (TMapValue is \Illuminate\Database\Eloquent\Model ? static : \Illuminate\Support\Collection) - */ - public function map(callable $callback); - - /** - * Run an associative map over each of the items. - * - * The callback should return an associative array with a single key / value pair. - * - * @template TMapWithKeysKey of array-key - * @template TMapWithKeysValue - * - * @param callable(TModel, TKey): array $callback - * @return (TMapWithKeysValue is \Illuminate\Database\Eloquent\Model ? static : \Illuminate\Support\Collection) - */ - public function mapWithKeys(callable $callback); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/Enumerable.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/Enumerable.stub deleted file mode 100644 index 81aaf9aa..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/Enumerable.stub +++ /dev/null @@ -1,63 +0,0 @@ - - * @extends \Illuminate\Contracts\Support\Arrayable - */ -interface Enumerable extends \Countable, \IteratorAggregate, \JsonSerializable, \Illuminate\Contracts\Support\Arrayable -{ - /** - * Search the collection for a given value and return the corresponding key if successful. - * - * @param TValue|callable(TValue,TKey): bool $value - * @param bool $strict - * @return (TKey is int ? int|bool : string|bool) - */ - public function search($value, $strict = false); - - /** - * Get one or a specified number of items randomly from the collection. - * - * @param (callable(TValue): int)|int|null $number - * @return ($number is null ? TValue : static) - * - * @throws \InvalidArgumentException - */ - public function random($number = null); - - /** - * Create a collection by using this collection for keys and another for its values. - * - * @template TCombineValue - * - * @param \Illuminate\Contracts\Support\Arrayable|iterable $values - * @return static - */ - public function combine($values); - - /** - * Key an associative array by a field or using a callback. - * - * @template TNewKey of array-key - * - * @param (callable(TValue, TKey): TNewKey)|array|string $keyBy - * @return static<($keyBy is string ? array-key : ($keyBy is array ? array-key : TNewKey)), TValue> - */ - public function keyBy($keyBy); - - /** - * Group an associative array by a field or using a callback. - * - * @template TGroupKey of array-key - * - * @param (callable(TValue, TKey): TGroupKey)|array|string $groupBy - * @param bool $preserveKeys - * @return static<($groupBy is string ? array-key : ($groupBy is array ? array-key : TGroupKey)), static<($preserveKeys is true ? TKey : int), TValue>> - */ - public function groupBy($groupBy, $preserveKeys = false); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/EnumeratesValues.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/EnumeratesValues.stub deleted file mode 100644 index 24201ca8..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/EnumeratesValues.stub +++ /dev/null @@ -1,51 +0,0 @@ - $average - * @property-read HigherOrderCollectionProxy<'avg', TValue, static> $avg - * @property-read HigherOrderCollectionProxy<'contains', TValue, static> $contains - * @property-read HigherOrderCollectionProxy<'each', TValue, static> $each - * @property-read HigherOrderCollectionProxy<'every', TValue, static> $every - * @property-read HigherOrderCollectionProxy<'filter', TValue, static> $filter - * @property-read HigherOrderCollectionProxy<'first', TValue, static> $first - * @property-read HigherOrderCollectionProxy<'flatMap', TValue, static> $flatMap - * @property-read HigherOrderCollectionProxy<'groupBy', TValue, static> $groupBy - * @property-read HigherOrderCollectionProxy<'keyBy', TValue, static> $keyBy - * @property-read HigherOrderCollectionProxy<'map', TValue, static> $map - * @property-read HigherOrderCollectionProxy<'max', TValue, static> $max - * @property-read HigherOrderCollectionProxy<'min', TValue, static> $min - * @property-read HigherOrderCollectionProxy<'partition', TValue, static> $partition - * @property-read HigherOrderCollectionProxy<'reject', TValue, static> $reject - * @property-read HigherOrderCollectionProxy<'some', TValue, static> $some - * @property-read HigherOrderCollectionProxy<'sortBy', TValue, static> $sortBy - * @property-read HigherOrderCollectionProxy<'sortByDesc', TValue, static> $sortByDesc - * @property-read HigherOrderCollectionProxy<'skipUntil', TValue, static> $skipUntil - * @property-read HigherOrderCollectionProxy<'skipWhile', TValue, static> $skipWhile - * @property-read HigherOrderCollectionProxy<'sum', TValue, static> $sum - * @property-read HigherOrderCollectionProxy<'takeUntil', TValue, static> $takeUntil - * @property-read HigherOrderCollectionProxy<'takeWhile', TValue, static> $takeWhile - * @property-read HigherOrderCollectionProxy<'unique', TValue, static> $unique - * @property-read HigherOrderCollectionProxy<'until', TValue, static> $until - */ -trait EnumeratesValues -{ - /** - * NOTE: This stub is needed to support older Laravel versions. - * - * Map a collection and flatten the result by a single level. - * - * @template TFlatMapKey of array-key - * @template TFlatMapValue - * - * @param callable(TValue, TKey): (\Illuminate\Support\Collection|array) $callback - * @return static - */ - public function flatMap(callable $callback); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/Facades.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/Facades.stub deleted file mode 100644 index 35a15cb0..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/Facades.stub +++ /dev/null @@ -1,35 +0,0 @@ - - */ - protected $model; - - /** - * Get a new factory instance for the given attributes. - * - * @param callable|array, mixed> $attributes - * @return static - */ - public static function new($attributes = []); - - /** - * Create a single model and persist it to the database. - * - * @param array, mixed> $attributes - * @return TModel - */ - public function createOne($attributes = []); - - /** - * Create a single model and persist it to the database. - * - * @param array, mixed> $attributes - * @return TModel - */ - public function createOneQuietly($attributes = []) {} - - /** - * Create a collection of models and persist them to the database. - * - * @param iterable, mixed>> $records - * @return \Illuminate\Database\Eloquent\Collection - */ - public function createMany(iterable $records); - - /** - * Create a collection of models and persist them to the database. - * - * @param array, mixed> $attributes - * @param \Illuminate\Database\Eloquent\Model|null $parent - * @return \Illuminate\Database\Eloquent\Collection|TModel - */ - public function create($attributes = [], ?\Illuminate\Database\Eloquent\Model $parent = null); - - /** - * Create a collection of models and persist them to the database without dispatching any model events. - * - * @param (callable(array): array)|array $attributes - * @param \Illuminate\Database\Eloquent\Model|null $parent - * @return \Illuminate\Database\Eloquent\Collection|TModel - */ - public function createQuietly($attributes = [], ?\Illuminate\Database\Eloquent\Model $parent = null); - - /** - * Make a single instance of the model. - * - * @param callable|array, mixed> $attributes - * @return TModel - */ - public function makeOne($attributes = []); - - /** - * Create a collection of models. - * - * @param array, mixed> $attributes - * @param \Illuminate\Database\Eloquent\Model|null $parent - * @return \Illuminate\Database\Eloquent\Collection|TModel - */ - public function make($attributes = [], ?\Illuminate\Database\Eloquent\Model $parent = null); - - /** - * Make an instance of the model with the given attributes. - * - * @param \Illuminate\Database\Eloquent\Model|null $parent - * @return TModel - */ - protected function makeInstance(?\Illuminate\Database\Eloquent\Model $parent); - - /** - * Define the model's default state. - * - * @return array, mixed> - */ - abstract public function definition(); - - /** - * Add a new "after making" callback to the model definition. - * - * @param \Closure(TModel): mixed $callback - * @return static - */ - public function afterMaking(\Closure $callback); - - /** - * Add a new "after creating" callback to the model definition. - * - * @param \Closure(TModel): mixed $callback - * @return static - */ - public function afterCreating(\Closure $callback); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/Foundation/Http/FormRequest.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/Foundation/Http/FormRequest.stub deleted file mode 100644 index 73c32cf3..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/Foundation/Http/FormRequest.stub +++ /dev/null @@ -1,24 +0,0 @@ -|null $keys - * - * @return ($keys is null ? \Illuminate\Support\ValidatedInput : array) - */ - public function safe(array $keys = null); - - /** - * Get the validated data from the request. - * - * @param array|int|string|null $key - * @param mixed $default - * @return ($key is null ? array : mixed) - */ - public function validated($key = null, $default = null); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/Gate.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/Gate.stub deleted file mode 100644 index ed57dd69..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/Gate.stub +++ /dev/null @@ -1,31 +0,0 @@ - - */ -class HasMany extends HasOneOrMany -{ - /** - * Get the results of the relationship. - * - * @phpstan-return \Traversable - */ - public function getResults(); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/HasManyThrough.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/HasManyThrough.stub deleted file mode 100644 index f18a9097..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/HasManyThrough.stub +++ /dev/null @@ -1,77 +0,0 @@ - - */ -class HasManyThrough extends Relation -{ - /** - * Get the results of the relationship. - * - * @phpstan-return \Traversable - */ - public function getResults(); - - /** - * Get a paginator for the "select" statement. - * - * @param int|null $perPage - * @param array $columns - * @param string $pageName - * @param int|null $page - * @return \Illuminate\Pagination\LengthAwarePaginator - */ - public function paginate($perPage = null, $columns = ['*'], $pageName = 'page', $page = null); - - /** - * Paginate the given query into a simple paginator. - * - * @param int|null $perPage - * @param array $columns - * @param string $pageName - * @param int|null $page - * @return \Illuminate\Pagination\Paginator - */ - public function simplePaginate($perPage = null, $columns = ['*'], $pageName = 'page', $page = null); - - /** - * Paginate the given query into a cursor paginator. - * - * @param int|null $perPage - * @param array $columns - * @param string $cursorName - * @param string|null $cursor - * @return \Illuminate\Pagination\CursorPaginator - */ - public function cursorPaginate($perPage = null, $columns = ['*'], $cursorName = 'cursor', $cursor = null); - - /** - * Find a related model by its primary key. - * - * @param mixed $id - * @param array $columns - * @return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Database\Eloquent\Collection : TRelatedModel|null) - */ - public function find($id, $columns = ['*']); - - /** - * Find multiple related models by their primary keys. - * - * @param \Illuminate\Contracts\Support\Arrayable|int[] $ids - * @param array $columns - * @return \Illuminate\Database\Eloquent\Collection - */ - public function findMany($ids, $columns = ['*']); - - /** - * Find a related model by its primary key or throw an exception. - * - * @param mixed $id - * @param array $columns - * @return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Database\Eloquent\Collection : TRelatedModel) - */ - public function findOrFail($id, $columns = ['*']); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/HasOne.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/HasOne.stub deleted file mode 100644 index 336dd2d6..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/HasOne.stub +++ /dev/null @@ -1,17 +0,0 @@ - - */ -class HasOne extends HasOneOrMany -{ - /** - * Get the results of the relationship. - * - * @phpstan-return ?TRelatedModel - */ - public function getResults(); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/HasOneOrMany.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/HasOneOrMany.stub deleted file mode 100644 index 51a8fe86..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/HasOneOrMany.stub +++ /dev/null @@ -1,86 +0,0 @@ - - */ -abstract class HasOneOrMany extends Relation -{ - /** - * Create a new has one or many relationship instance. - * - * @param \Illuminate\Database\Eloquent\Builder $query - * @param TRelatedModel $parent - * @param string $foreignKey - * @param string $localKey - * @return void - */ - public function __construct(\Illuminate\Database\Eloquent\Builder $query, \Illuminate\Database\Eloquent\Model $parent, $foreignKey, $localKey); - - /** - * @param array, mixed> $attributes - * @phpstan-return TRelatedModel - */ - public function make(array $attributes = []); - - /** - * Find a model by its primary key or return new instance of the related model. - * - * @param mixed $id - * @param array $columns - * @return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Support\Collection : TRelatedModel) - */ - public function findOrNew($id, $columns = ['*']); - - /** - * Get the first related model record matching the attributes or instantiate it. - * - * @param array, mixed> $attributes - * @param array $values - * @return TRelatedModel - */ - public function firstOrNew(array $attributes, array $values = []); - - /** - * Get the first related record matching the attributes or create it. - * - * @param array, mixed> $attributes - * @param array $values - * @return TRelatedModel - */ - public function firstOrCreate(array $attributes, array $values = []); - - /** - * Create or update a related record matching the attributes, and fill it with values. - * - * @param array, mixed> $attributes - * @param array $values - * @return TRelatedModel - */ - public function updateOrCreate(array $attributes, array $values = []); - - /** - * Attach a model instance to the parent model. - * - * @param \Illuminate\Database\Eloquent\Model $model - * @return TRelatedModel|false - */ - public function save(\Illuminate\Database\Eloquent\Model $model); - - /** - * @phpstan-param array, mixed> $attributes - * - * @phpstan-return TRelatedModel - */ - public function create(array $attributes = []); - - /** - * Create a Collection of new instances of the related model. - * - * @param iterable $records - * @return \Illuminate\Database\Eloquent\Collection - */ - public function createMany(iterable $records); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/HasOneThrough.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/HasOneThrough.stub deleted file mode 100644 index dd865bdb..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/HasOneThrough.stub +++ /dev/null @@ -1,24 +0,0 @@ - - */ -class HasOneThrough extends HasManyThrough -{ - /** - * @param array, mixed> $attributes - * - * @phpstan-return TRelatedModel - */ - public function create(array $attributes = []); - - /** - * Get the results of the relationship. - * - * @phpstan-return \Traversable - */ - public function getResults(); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/Helpers.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/Helpers.stub deleted file mode 100644 index 35a38366..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/Helpers.stub +++ /dev/null @@ -1,202 +0,0 @@ -|string|null $key - * @param mixed $default - * @return ($key is null ? \Illuminate\Config\Repository : ($key is array ? null : mixed)) - */ -function config($key = null, $default = null) {} - -/** - * Create a new cookie instance. - * - * @param non-empty-string|null $name - * @param string|null $value - * @param int $minutes - * @param string|null $path - * @param string|null $domain - * @param bool|null $secure - * @param bool $httpOnly - * @param bool $raw - * @param string|null $sameSite - * @return ($name is null ? \Illuminate\Cookie\CookieJar : \Symfony\Component\HttpFoundation\Cookie) - */ -function cookie($name = null, $value = null, $minutes = 0, $path = null, $domain = null, $secure = null, $httpOnly = true, $raw = false, $sameSite = null) {} - -/** - * Log a debug message to the logs. - * - * @param string|null $message - * @param mixed[] $context - * @return ($message is null ? \Illuminate\Log\LogManager : null) - */ -function logger($message = null, array $context = []) {} - -/** - * Get a log driver instance. - * - * @param string|null $driver - * @return ($driver is null ? \Illuminate\Log\LogManager : \Psr\Log\LoggerInterface&\Illuminate\Log\Logger ) - */ -function logs($driver = null) {} - -/** - * Get an instance of the redirector. - * - * @param string|null $to - * @param int $status - * @param array $headers - * @param bool|null $secure - * @return ($to is null ? \Illuminate\Routing\Redirector : \Illuminate\Http\RedirectResponse) - */ -function redirect($to = null, $status = 302, $headers = [], $secure = null) {} - -/** - * Get an instance of the current request or an input item from the request. - * - * @param string[]|string|null $key - * @param mixed $default - * @return ($key is null ? \Illuminate\Http\Request : ($key is array ? string[] : mixed)) - */ -function request($key = null, $default = null) {} - -/** - * Get / set the specified session value. - * - * If an array is passed as the key, we will assume you want to set an array of values. - * - * @param mixed[]|string|null $key - * @param mixed $default - * @return ($key is null ? \Illuminate\Session\SessionManager : ($key is array ? null : mixed)) - */ -function session($key = null, $default = null) {} - -/** - * Generate a url for the application. - * - * @param string|null $path - * @param mixed $parameters - * @param bool|null $secure - * @return ($path is null ? \Illuminate\Contracts\Routing\UrlGenerator : string) - */ -function url($path = null, $parameters = [], $secure = null) {} - -/** - * @template TValue - * @template TDefault - * - * @param callable(): TValue $callback - * @param TDefault|(callable(\Throwable): TDefault) $rescue - * @param bool|callable $report - * @return TValue|TDefault - */ -function rescue(callable $callback, $rescue = null, $report = true) {} - -/** - * @template TValue - * @param int|array $times - * @param callable(int): TValue $callback - * @param int|callable(int, \Exception): int $sleepMilliseconds - * @param null|callable(\Exception): bool $when - * @phpstan-return TValue - * - * @throws \Exception - */ -function retry($times, callable $callback, $sleepMilliseconds = 0, $when = null) {} - -/** - * @template TValue - * @param TValue $value - * @param null|callable(TValue): mixed $callback - * @return mixed - */ -function tap($value, $callback = null) {} - -/** - * @param view-string|null $view - * @param \Illuminate\Contracts\Support\Arrayable|array $data - * @param array $mergeData - * @return ($view is null ? \Illuminate\Contracts\View\Factory : \Illuminate\View\View) - */ -function view($view = null, $data = [], $mergeData = []) {} - -/** - * Translate the given message. - * - * @param string|null $key - * @param array $replace - * @param string|null $locale - * @return ($key is null ? \Illuminate\Contracts\Translation\Translator : mixed) - */ -function trans($key = null, $replace = [], $locale = null) {} - - /** - * Translate the given message. - * - * @param string|null $key - * @param array $replace - * @param string|null $locale - * @return ($key is null ? null : mixed) - */ -function __($key = null, $replace = [], $locale = null) {} - -/** - * Provide access to optional objects. - * - * @template TValue of mixed - * @template TReturn of mixed - * - * @param TValue $value - * @param ?callable(TValue): TReturn $callback - * @return ($callback is null ? mixed : ($value is null ? null : TReturn)) - */ -function optional($value = null, callable $callback = null) {} - -/** - * Transform the given value if it is present. - * - * @template TValue of mixed - * @template TReturn of mixed - * @template TDefault of mixed - * - * @param TValue|null $value - * @param callable(TValue): TReturn $callback - * @param TDefault|callable(TValue|null): TDefault $default - * @return ($value is empty ? TDefault : TReturn) - */ -function transform($value, callable $callback, $default = null): mixed {} - -/** - * Determine if a value is "filled". - * - * @phpstan-assert-if-true !=null $value - * - * @param mixed $value - * @return bool - */ -function filled($value) {} - -/** - * Determine if the given value is "blank". - * - * @phpstan-assert-if-false !=null $value - * - * @param mixed $value - * @return bool - */ -function blank($value) {} - -/** - * Gets the value of an environment variable. - * - * @template TDefault - * - * @param string $key - * @param TDefault $default - * @return bool|string|TDefault - */ -function env($key, $default = null) {} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/HigherOrderProxies.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/HigherOrderProxies.stub deleted file mode 100644 index c716cad8..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/HigherOrderProxies.stub +++ /dev/null @@ -1,23 +0,0 @@ -|null - * - * @param string|null $key - * @param TDefault $default - * - * @return ($key is null ? array> : string|TDefault) - */ - public function header($key = null, $default = null); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/Log/Logger.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/Log/Logger.stub deleted file mode 100644 index 81260862..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/Log/Logger.stub +++ /dev/null @@ -1,20 +0,0 @@ - $data - * @return $this - */ - public function markdown($view, array $data = []); - - /** - * @param view-string $view - * @param array $data - * @return $this - */ - public function view($view, array $data = []); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/Model.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/Model.stub deleted file mode 100644 index 04c999e3..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/Model.stub +++ /dev/null @@ -1,79 +0,0 @@ - - */ -abstract class Model implements \JsonSerializable, \ArrayAccess -{ - /** - * @var array - */ - protected $attributes = []; - - /** - * @var array - */ - protected $casts = []; - - /** - * @var list - */ - protected $hidden = []; - - /** - * @var list - */ - protected $fillable = []; - - /** - * @var list - */ - protected $visible = []; - - /** - * @var list - */ - protected $appends = []; - - /** - * @var list - */ - protected $with = []; - - /** - * @var list - */ - protected $withCount = []; - - /** - * Update the model in the database. - * - * @param array $options - * @return bool - */ - public function save(array $options = []); - - /** - * Update the model in the database. - * - * @param array, mixed> $attributes - * @param array $options - * @return bool - */ - public function update(array $attributes = [], array $options = []); - - /** - * Begin querying a model with eager loading. - * - * @param string|array> $relations - * @return \Illuminate\Database\Eloquent\Builder - */ - public static function with($relations); -} - -/** - * @template TModel of Model - */ -class ModelNotFoundException extends \RuntimeException {} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/MorphMany.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/MorphMany.stub deleted file mode 100644 index ca5ec902..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/MorphMany.stub +++ /dev/null @@ -1,24 +0,0 @@ - - */ -class MorphMany extends MorphOneOrMany -{ - /** - * @param array, mixed> $attributes - * - * @phpstan-return TRelatedModel - */ - public function create(array $attributes = []); - - /** - * Get the results of the relationship. - * - * @phpstan-return \Traversable - */ - public function getResults(); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/MorphOne.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/MorphOne.stub deleted file mode 100644 index bf5e437f..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/MorphOne.stub +++ /dev/null @@ -1,17 +0,0 @@ - - */ -class MorphOne extends MorphOneOrMany -{ - /** - * Get the results of the relationship. - * - * @phpstan-return ?TRelatedModel - */ - public function getResults(); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/MorphOneOrMany.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/MorphOneOrMany.stub deleted file mode 100644 index c3b775b7..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/MorphOneOrMany.stub +++ /dev/null @@ -1,17 +0,0 @@ - - */ -abstract class MorphOneOrMany extends HasOneOrMany -{ - /** - * @param array, mixed> $attributes - * - * @phpstan-return TRelatedModel - */ - public function create(array $attributes = []); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/MorphTo.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/MorphTo.stub deleted file mode 100644 index 2904af2c..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/MorphTo.stub +++ /dev/null @@ -1,11 +0,0 @@ - - */ -class MorphTo extends BelongsTo -{} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/MorphToMany.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/MorphToMany.stub deleted file mode 100644 index 65d0ec38..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/MorphToMany.stub +++ /dev/null @@ -1,11 +0,0 @@ - - */ -class MorphToMany extends BelongsToMany -{ -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/MultipleRecordsFoundException.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/MultipleRecordsFoundException.stub deleted file mode 100644 index ba9e1054..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/MultipleRecordsFoundException.stub +++ /dev/null @@ -1,8 +0,0 @@ - - */ -abstract class AbstractPaginator implements \Illuminate\Contracts\Support\Htmlable -{ - /** - * @return array - */ - public function items(): array; - - /** - * @return \Illuminate\Support\Collection - */ - public function getCollection(): \Illuminate\Support\Collection; - - /** - * @return \ArrayIterator - */ - public function getIterator(): \Traversable; - - public function offsetExists(mixed $offset): bool; - - /** - * @return TValue|null - */ - public function offsetGet(mixed $offset): mixed; - - /** - * @param TValue $value - */ - public function offsetSet(mixed $offset, $value): void; - - public function offsetUnset(mixed $offset): void; -} - -/** - * @template TValue - * - * @implements \ArrayAccess - * @implements \IteratorAggregate - * @implements \Illuminate\Contracts\Support\Arrayable - * @implements \Illuminate\Contracts\Pagination\Paginator - * - * @extends AbstractPaginator - */ -class Paginator extends AbstractPaginator implements \Illuminate\Contracts\Support\Arrayable, \ArrayAccess, \Countable, \IteratorAggregate, \Illuminate\Contracts\Support\Jsonable, \JsonSerializable, \Illuminate\Contracts\Pagination\Paginator -{} - -/** - * @template TValue - * - * @implements \ArrayAccess - * @implements \IteratorAggregate - * @implements \Illuminate\Contracts\Support\Arrayable - * @implements \Illuminate\Contracts\Pagination\LengthAwarePaginator - * - * @extends AbstractPaginator - */ -class LengthAwarePaginator extends AbstractPaginator implements \Illuminate\Contracts\Support\Arrayable, \ArrayAccess, \Countable, \IteratorAggregate, \Illuminate\Contracts\Support\Jsonable, \JsonSerializable, \Illuminate\Contracts\Pagination\LengthAwarePaginator -{} - -/** - * @template TValue - * - * @mixin \Illuminate\Support\Collection - */ -abstract class AbstractCursorPaginator implements \Illuminate\Contracts\Support\Htmlable -{ - /** - * @return array - */ - public function items(): array; - - /** - * @return \Illuminate\Support\Collection - */ - public function getCollection(): \Illuminate\Support\Collection; - - /** - * @return \ArrayIterator - */ - public function getIterator(): \Traversable; - - public function offsetExists(mixed $offset): bool; - - /** - * @return TValue|null - */ - public function offsetGet(mixed $offset): mixed; - - /** - * @param TValue $value - */ - public function offsetSet(mixed $offset, $value): void; - - public function offsetUnset(mixed $offset): void; -} - -/** - * @template TValue - * - * @implements \ArrayAccess - * @implements \IteratorAggregate - * @implements \Illuminate\Contracts\Support\Arrayable - * @implements \Illuminate\Contracts\Pagination\CursorPaginator - * - * @extends AbstractCursorPaginator - */ -class CursorPaginator extends AbstractCursorPaginator implements \Illuminate\Contracts\Support\Arrayable, \ArrayAccess, \Countable, \IteratorAggregate, \Illuminate\Contracts\Support\Jsonable, \JsonSerializable, \Illuminate\Contracts\Pagination\CursorPaginator -{} - -/** - * @implements \Illuminate\Contracts\Support\Arrayable - */ -class Cursor implements \Illuminate\Contracts\Support\Arrayable -{} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/QueryBuilder.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/QueryBuilder.stub deleted file mode 100644 index 529ae114..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/QueryBuilder.stub +++ /dev/null @@ -1,308 +0,0 @@ -|string $query - * @param string $as - * @param \Closure|string $first - * @param string|null $operator - * @param string|null $second - * @param string $type - * @param bool $where - * @return $this - * - * @throws \InvalidArgumentException - */ - public function joinSub($query, $as, $first, $operator = null, $second = null, $type = 'inner', $where = false); - - /** - * Add a basic where clause to the query. - * - * @param \Closure|string|array $column - * @param mixed $operator - * @param mixed $value - * @param string $boolean - * @return $this - */ - public function where($column, $operator = null, $value = null, $boolean = 'and'); - - /** - * Add an array of where clauses to the query. - * - * @param array $column - * @param string $boolean - * @param string $method - * @return $this - */ - protected function addArrayOfWheres($column, $boolean, $method = 'where'); - - /** - * Add an "or where" clause to the query. - * - * @param \Closure|string|array $column - * @param mixed $operator - * @param mixed $value - * @return $this - */ - public function orWhere($column, $operator = null, $value = null); - - /** - * Add a "where" clause comparing two columns to the query. - * - * @param string|array $first - * @param string|null $operator - * @param string|null $second - * @param string|null $boolean - * @return $this - */ - public function whereColumn($first, $operator = null, $second = null, $boolean = 'and'); - - /** - * Add a "where in raw" clause for integer values to the query. - * - * @param string $column - * @param \Illuminate\Contracts\Support\Arrayable|array $values - * @param string $boolean - * @param bool $not - * @return $this - */ - public function whereIntegerInRaw($column, $values, $boolean = 'and', $not = false); - - /** - * Add an "or where in raw" clause for integer values to the query. - * - * @param string $column - * @param \Illuminate\Contracts\Support\Arrayable|array $values - * @return $this - */ - public function orWhereIntegerInRaw($column, $values); - - /** - * Add a "where not in raw" clause for integer values to the query. - * - * @param string $column - * @param \Illuminate\Contracts\Support\Arrayable|array $values - * @param string $boolean - * @return $this - */ - public function whereIntegerNotInRaw($column, $values, $boolean = 'and'); - - /** - * Add an "or where not in raw" clause for integer values to the query. - * - * @param string $column - * @param \Illuminate\Contracts\Support\Arrayable|array $values - * @return $this - */ - public function orWhereIntegerNotInRaw($column, $values); - - /** - * Add a "where null" clause to the query. - * - * @param string|array $columns - * @param string $boolean - * @param bool $not - * @return $this - */ - public function whereNull($columns, $boolean = 'and', $not = false); - - /** - * Add a "where not null" clause to the query. - * - * @param string|array $columns - * @param string $boolean - * @return $this - */ - public function whereNotNull($columns, $boolean = 'and'); - - /** - * Adds a where condition using row values. - * - * @param array $columns - * @param string $operator - * @param array $values - * @param string $boolean - * @return $this - * - * @throws \InvalidArgumentException - */ - public function whereRowValues($columns, $operator, $values, $boolean = 'and'); - - /** - * Adds a or where condition using row values. - * - * @param array $columns - * @param string $operator - * @param array $values - * @return $this - */ - public function orWhereRowValues($columns, $operator, $values); - - /** - * Add a "having between " clause to the query. - * - * @param string $column - * @param array $values - * @param string $boolean - * @param bool $not - * @return $this - */ - public function havingBetween($column, array $values, $boolean = 'and', $not = false); - - /** - * Add a union statement to the query. - * - * @template TModelClass of \Illuminate\Database\Eloquent\Model - * @param \Illuminate\Database\Query\Builder|\Illuminate\Database\Eloquent\Builder|\Closure $query - * @param bool $all - * @return $this - */ - public function union($query, $all = false); - - /** - * Add a union all statement to the query. - * - * @template TModelClass of \Illuminate\Database\Eloquent\Model - * @param \Illuminate\Database\Query\Builder|\Illuminate\Database\Eloquent\Builder|\Closure $query - * @return $this - */ - public function unionAll($query); - - /** - * Execute a query for a single record by ID. - * - * @param int|string $id - * @param array $columns - * @return array|object|null - */ - public function find($id, $columns = ['*']); - - /** - * Get a lazy collection for the given query. - * - * @return \Illuminate\Support\LazyCollection - */ - public function cursor(); - - /** - * Execute the query as a "select" statement. - * - * @param string[]|string $columns - * @return \Illuminate\Support\Collection - */ - public function get($columns = ['*']); - - /** - * Get an array with the values of a given column. - * - * @param string|\Illuminate\Database\Query\Expression $column - * @param string|null $key - * @return \Illuminate\Support\Collection - */ - public function pluck($column, $key = null); - - /** - * Execute an aggregate function on the database. - * - * @param string $function - * @param array $columns - * @return mixed - */ - public function aggregate($function, $columns = ['*']); - - /** - * Execute a numeric aggregate function on the database. - * - * @param string $function - * @param array $columns - * @return float|int - */ - public function numericAggregate($function, $columns = ['*']); - - /** - * Set the aggregate property without running the query. - * - * @param string $function - * @param array $columns - * @return $this - */ - protected function setAggregate($function, $columns); - - /** - * Execute the given callback while selecting the given columns. - * - * After running the callback, the columns are reset to the original value. - * - * @param array $columns - * @param callable $callback - * @return mixed - */ - protected function onceWithColumns($columns, $callback); - - /** - * Insert a new record and get the value of the primary key. - * - * @param array $values - * @param string|null $sequence - * @return int - */ - public function insertGetId(array $values, $sequence = null); - - /** - * Insert new records into the table using a subquery. - * - * @template TModelClass of \Illuminate\Database\Eloquent\Model - * @param array $columns - * @param \Closure|\Illuminate\Database\Query\Builder|\Illuminate\Database\Eloquent\Builder|string $query - * @return int - */ - public function insertUsing(array $columns, $query); - - /** - * Update a record in the database. - * - * @param array $values - * @return int - */ - public function update(array $values); - - /** - * Insert or update a record matching the attributes, and fill it with values. - * - * @param array $attributes - * @param array $values - * @return bool - */ - public function updateOrInsert(array $attributes, array $values = []); - - /** - * Increment a column's value by a given amount. - * - * @param string|\Illuminate\Database\Query\Expression $column - * @param float|int $amount - * @param array $extra - * @return int - * - * @throws \InvalidArgumentException - */ - public function increment($column, $amount = 1, array $extra = []); - - /** - * Decrement a column's value by a given amount. - * - * @param string|\Illuminate\Database\Query\Expression $column - * @param float|int $amount - * @param array $extra - * @return int - * - * @throws \InvalidArgumentException - */ - public function decrement($column, $amount = 1, array $extra = []); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/Queue/Queue.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/Queue/Queue.stub deleted file mode 100644 index 8c659fe7..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/Queue/Queue.stub +++ /dev/null @@ -1,10 +0,0 @@ - - */ - public function getEager(); - - /** - * Execute the query as a "select" statement. - * - * @param array $columns - * @phpstan-return \Illuminate\Database\Eloquent\Collection - */ - public function get($columns = ['*']); - - /** - * @phpstan-return \Illuminate\Database\Eloquent\Builder - */ - public function getQuery(); - - /** - * @param array, mixed> $attributes - * @phpstan-return TRelatedModel - */ - public function make(array $attributes = []); - - /** - * Execute the query and get the first result if it's the sole matching record. - * - * @param array>|string $columns - * @return TRelatedModel - * - * @throws \Illuminate\Database\Eloquent\ModelNotFoundException<\Illuminate\Database\Eloquent\Model> - * @throws \Illuminate\Database\MultipleRecordsFoundException - */ - public function sole($columns = ['*']); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/Route.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/Route.stub deleted file mode 100644 index 4da9f5d2..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/Route.stub +++ /dev/null @@ -1,14 +0,0 @@ - $benchmarkables - * @param int $iterations - * @return ($benchmarkables is \Closure ? float : array) - */ - public static function measure(Closure|array $benchmarkables, int $iterations = 1): array|float {} -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/Support/Manager.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/Support/Manager.stub deleted file mode 100644 index abe4d9ca..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/Support/Manager.stub +++ /dev/null @@ -1,5 +0,0 @@ -|Traversable - * @param string|iterable $search - * @param string|iterable $replace - * @param TSubject $subject - * @param bool $caseSensitive - * @return ($subject is Traversable ? array : TSubject) - */ - public static function replace($search, $replace, $subject, $caseSensitive = true) {} -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/Support/Tappable.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/Support/Tappable.stub deleted file mode 100644 index e99587ae..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/Support/Tappable.stub +++ /dev/null @@ -1,12 +0,0 @@ - : $this) - */ - function tap($callback = null) {} -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/Support/ValidatedInput.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/Support/ValidatedInput.stub deleted file mode 100644 index 37502514..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/Support/ValidatedInput.stub +++ /dev/null @@ -1,5 +0,0 @@ -|null $keys - * - * @return ($keys is null ? \Illuminate\Support\ValidatedInput : array) - */ - public function safe(array $keys = null); -} diff --git a/docker/statistics/vendor/larastan/larastan/stubs/common/View/View.stub b/docker/statistics/vendor/larastan/larastan/stubs/common/View/View.stub deleted file mode 100644 index 5b8b2a84..00000000 --- a/docker/statistics/vendor/larastan/larastan/stubs/common/View/View.stub +++ /dev/null @@ -1,8 +0,0 @@ - */ -class View implements \ArrayAccess, \Illuminate\Contracts\Support\Htmlable, \Illuminate\Contracts\View\View -{ -} diff --git a/docker/statistics/vendor/laravel/framework/RELEASE.md b/docker/statistics/vendor/laravel/framework/RELEASE.md deleted file mode 100644 index 953dc177..00000000 --- a/docker/statistics/vendor/laravel/framework/RELEASE.md +++ /dev/null @@ -1,5 +0,0 @@ -# Release Instructions - -Go to the ["manual release" GitHub Action](https://github.com/laravel/framework/actions/workflows/releases.yml). Then, choose "Run workflow", select the correct branch, and enter the version you wish to release. Next, press "Run workflow" to execute the action. The workflow will automatically update the version in `Application.php`, tag a new release, run the splitter script for the Illuminate components, generate release notes, create a GitHub Release, and update the `CHANGELOG.md` file. - -Screenshot 2024-05-06 at 10 46 04 diff --git a/docker/statistics/vendor/laravel/prompts/src/Exceptions/FormRevertedException.php b/docker/statistics/vendor/laravel/prompts/src/Exceptions/FormRevertedException.php deleted file mode 100644 index c47ddf18..00000000 --- a/docker/statistics/vendor/laravel/prompts/src/Exceptions/FormRevertedException.php +++ /dev/null @@ -1,10 +0,0 @@ - - */ - protected array $steps = []; - - /** - * The responses provided by each step. - * - * @var array - */ - protected array $responses = []; - - /** - * Add a new step. - */ - public function add(Closure $step, ?string $name = null, bool $ignoreWhenReverting = false): self - { - $this->steps[] = new FormStep($step, true, $name, $ignoreWhenReverting); - - return $this; - } - - /** - * Run all of the given steps. - * - * @return array - */ - public function submit(): array - { - $index = 0; - $wasReverted = false; - - while ($index < count($this->steps)) { - $step = $this->steps[$index]; - - if ($wasReverted && $index > 0 && $step->shouldIgnoreWhenReverting($this->responses)) { - $index--; - - continue; - } - - $wasReverted = false; - - $index > 0 - ? Prompt::revertUsing(function () use (&$wasReverted) { - $wasReverted = true; - }) : Prompt::preventReverting(); - - try { - $this->responses[$step->name ?? $index] = $step->run( - $this->responses, - $this->responses[$step->name ?? $index] ?? null, - ); - } catch (FormRevertedException) { - $wasReverted = true; - } - - $wasReverted ? $index-- : $index++; - } - - Prompt::preventReverting(); - - return $this->responses; - } - - /** - * Prompt the user for text input. - */ - public function text(string $label, string $placeholder = '', string $default = '', bool|string $required = false, mixed $validate = null, string $hint = '', ?string $name = null, ?Closure $transform = null): self - { - return $this->runPrompt(text(...), get_defined_vars()); - } - - /** - * Prompt the user for multiline text input. - */ - public function textarea(string $label, string $placeholder = '', string $default = '', bool|string $required = false, ?Closure $validate = null, string $hint = '', int $rows = 5, ?string $name = null, ?Closure $transform = null): self - { - return $this->runPrompt(textarea(...), get_defined_vars()); - } - - /** - * Prompt the user for input, hiding the value. - */ - public function password(string $label, string $placeholder = '', bool|string $required = false, mixed $validate = null, string $hint = '', ?string $name = null, ?Closure $transform = null): self - { - return $this->runPrompt(password(...), get_defined_vars()); - } - - /** - * Prompt the user to select an option. - * - * @param array|Collection $options - * @param true|string $required - */ - public function select(string $label, array|Collection $options, int|string|null $default = null, int $scroll = 5, mixed $validate = null, string $hint = '', bool|string $required = true, ?string $name = null, ?Closure $transform = null): self - { - return $this->runPrompt(select(...), get_defined_vars()); - } - - /** - * Prompt the user to select multiple options. - * - * @param array|Collection $options - * @param array|Collection $default - */ - public function multiselect(string $label, array|Collection $options, array|Collection $default = [], int $scroll = 5, bool|string $required = false, mixed $validate = null, string $hint = 'Use the space bar to select options.', ?string $name = null, ?Closure $transform = null): self - { - return $this->runPrompt(multiselect(...), get_defined_vars()); - } - - /** - * Prompt the user to confirm an action. - */ - public function confirm(string $label, bool $default = true, string $yes = 'Yes', string $no = 'No', bool|string $required = false, mixed $validate = null, string $hint = '', ?string $name = null, ?Closure $transform = null): self - { - return $this->runPrompt(confirm(...), get_defined_vars()); - } - - /** - * Prompt the user to continue or cancel after pausing. - */ - public function pause(string $message = 'Press enter to continue...', ?string $name = null): self - { - return $this->runPrompt(pause(...), get_defined_vars()); - } - - /** - * Prompt the user for text input with auto-completion. - * - * @param array|Collection|Closure(string): array $options - */ - public function suggest(string $label, array|Collection|Closure $options, string $placeholder = '', string $default = '', int $scroll = 5, bool|string $required = false, mixed $validate = null, string $hint = '', ?string $name = null, ?Closure $transform = null): self - { - return $this->runPrompt(suggest(...), get_defined_vars()); - } - - /** - * Allow the user to search for an option. - * - * @param Closure(string): array $options - * @param true|string $required - */ - public function search(string $label, Closure $options, string $placeholder = '', int $scroll = 5, mixed $validate = null, string $hint = '', bool|string $required = true, ?string $name = null, ?Closure $transform = null): self - { - return $this->runPrompt(search(...), get_defined_vars()); - } - - /** - * Allow the user to search for multiple option. - * - * @param Closure(string): array $options - */ - public function multisearch(string $label, Closure $options, string $placeholder = '', int $scroll = 5, bool|string $required = false, mixed $validate = null, string $hint = 'Use the space bar to select options.', ?string $name = null, ?Closure $transform = null): self - { - return $this->runPrompt(multisearch(...), get_defined_vars()); - } - - /** - * Render a spinner while the given callback is executing. - * - * @param \Closure(): mixed $callback - */ - public function spin(Closure $callback, string $message = '', ?string $name = null): self - { - return $this->runPrompt(spin(...), get_defined_vars(), true); - } - - /** - * Display a note. - */ - public function note(string $message, ?string $type = null, ?string $name = null): self - { - return $this->runPrompt(note(...), get_defined_vars(), true); - } - - /** - * Display an error. - */ - public function error(string $message, ?string $name = null): self - { - return $this->runPrompt(error(...), get_defined_vars(), true); - } - - /** - * Display a warning. - */ - public function warning(string $message, ?string $name = null): self - { - return $this->runPrompt(warning(...), get_defined_vars(), true); - } - - /** - * Display an alert. - */ - public function alert(string $message, ?string $name = null): self - { - return $this->runPrompt(alert(...), get_defined_vars(), true); - } - - /** - * Display an informational message. - */ - public function info(string $message, ?string $name = null): self - { - return $this->runPrompt(info(...), get_defined_vars(), true); - } - - /** - * Display an introduction. - */ - public function intro(string $message, ?string $name = null): self - { - return $this->runPrompt(intro(...), get_defined_vars(), true); - } - - /** - * Display a closing message. - */ - public function outro(string $message, ?string $name = null): self - { - return $this->runPrompt(outro(...), get_defined_vars(), true); - } - - /** - * Display a table. - * - * @param array>|Collection> $headers - * @param array>|Collection> $rows - */ - public function table(array|Collection $headers = [], array|Collection|null $rows = null, ?string $name = null): self - { - return $this->runPrompt(table(...), get_defined_vars(), true); - } - - /** - * Display a progress bar. - * - * @template TSteps of iterable|int - * @template TReturn - * - * @param TSteps $steps - * @param ?Closure((TSteps is int ? int : value-of), Progress): TReturn $callback - */ - public function progress(string $label, iterable|int $steps, ?Closure $callback = null, string $hint = '', ?string $name = null): self - { - return $this->runPrompt(progress(...), get_defined_vars(), true); - } - - /** - * Execute the given prompt passing the given arguments. - * - * @param array $arguments - */ - protected function runPrompt(callable $prompt, array $arguments, bool $ignoreWhenReverting = false): self - { - return $this->add(function (array $responses, mixed $previousResponse) use ($prompt, $arguments) { - unset($arguments['name']); - - if (array_key_exists('default', $arguments) && $previousResponse !== null) { - $arguments['default'] = $previousResponse; - } - - return $prompt(...$arguments); - }, name: $arguments['name'], ignoreWhenReverting: $ignoreWhenReverting); - } -} diff --git a/docker/statistics/vendor/laravel/prompts/src/FormStep.php b/docker/statistics/vendor/laravel/prompts/src/FormStep.php deleted file mode 100644 index 6541144c..00000000 --- a/docker/statistics/vendor/laravel/prompts/src/FormStep.php +++ /dev/null @@ -1,59 +0,0 @@ -condition = is_bool($condition) - ? fn () => $condition - : $condition; - } - - /** - * Execute this step. - * - * @param array $responses - */ - public function run(array $responses, mixed $previousResponse): mixed - { - if (! $this->shouldRun($responses)) { - return null; - } - - return ($this->step)($responses, $previousResponse); - } - - /** - * Whether the step should run based on the given condition. - * - * @param array $responses - */ - protected function shouldRun(array $responses): bool - { - return ($this->condition)($responses); - } - - /** - * Whether this step should be skipped over when a subsequent step is reverted. - * - * @param array $responses - */ - public function shouldIgnoreWhenReverting(array $responses): bool - { - if (! $this->shouldRun($responses)) { - return true; - } - - return $this->ignoreWhenReverting; - } -} diff --git a/docker/statistics/vendor/laravel/prompts/src/TextareaPrompt.php b/docker/statistics/vendor/laravel/prompts/src/TextareaPrompt.php deleted file mode 100644 index e5a33666..00000000 --- a/docker/statistics/vendor/laravel/prompts/src/TextareaPrompt.php +++ /dev/null @@ -1,248 +0,0 @@ -scroll = $rows; - - $this->initializeScrolling(); - - $this->trackTypedValue( - default: $default, - submit: false, - allowNewLine: true, - ); - - $this->on('key', function ($key) { - if ($key[0] === "\e") { - match ($key) { - Key::UP, Key::UP_ARROW, Key::CTRL_P => $this->handleUpKey(), - Key::DOWN, Key::DOWN_ARROW, Key::CTRL_N => $this->handleDownKey(), - default => null, - }; - - return; - } - - // Keys may be buffered. - foreach (mb_str_split($key) as $key) { - if ($key === Key::CTRL_D) { - $this->submit(); - - return; - } - } - }); - } - - /** - * Get the formatted value with a virtual cursor. - */ - public function valueWithCursor(): string - { - if ($this->value() === '') { - return $this->wrappedPlaceholderWithCursor(); - } - - return $this->addCursor($this->wrappedValue(), $this->cursorPosition + $this->cursorOffset(), -1); - } - - /** - * The word-wrapped version of the typed value. - */ - public function wrappedValue(): string - { - return $this->mbWordwrap($this->value(), $this->width, PHP_EOL, true); - } - - /** - * The formatted lines. - * - * @return array - */ - public function lines(): array - { - return explode(PHP_EOL, $this->wrappedValue()); - } - - /** - * The currently visible lines. - * - * @return array - */ - public function visible(): array - { - $this->adjustVisibleWindow(); - - $withCursor = $this->valueWithCursor(); - - return array_slice(explode(PHP_EOL, $withCursor), $this->firstVisible, $this->scroll, preserve_keys: true); - } - - /** - * Handle the up key press. - */ - protected function handleUpKey(): void - { - if ($this->cursorPosition === 0) { - return; - } - - $lines = collect($this->lines()); - - // Line length + 1 for the newline character - $lineLengths = $lines->map(fn ($line, $index) => mb_strlen($line) + ($index === $lines->count() - 1 ? 0 : 1)); - - $currentLineIndex = $this->currentLineIndex(); - - if ($currentLineIndex === 0) { - // They're already at the first line, jump them to the first position - $this->cursorPosition = 0; - - return; - } - - $currentLines = $lineLengths->slice(0, $currentLineIndex + 1); - - $currentColumn = $currentLines->last() - ($currentLines->sum() - $this->cursorPosition); - - $destinationLineLength = ($lineLengths->get($currentLineIndex - 1) ?? $currentLines->first()) - 1; - - $newColumn = min($destinationLineLength, $currentColumn); - - $fullLines = $currentLines->slice(0, -2); - - $this->cursorPosition = $fullLines->sum() + $newColumn; - } - - /** - * Handle the down key press. - */ - protected function handleDownKey(): void - { - $lines = collect($this->lines()); - - // Line length + 1 for the newline character - $lineLengths = $lines->map(fn ($line, $index) => mb_strlen($line) + ($index === $lines->count() - 1 ? 0 : 1)); - - $currentLineIndex = $this->currentLineIndex(); - - if ($currentLineIndex === $lines->count() - 1) { - // They're already at the last line, jump them to the last position - $this->cursorPosition = mb_strlen($lines->implode(PHP_EOL)); - - return; - } - - // Lines up to and including the current line - $currentLines = $lineLengths->slice(0, $currentLineIndex + 1); - - $currentColumn = $currentLines->last() - ($currentLines->sum() - $this->cursorPosition); - - $destinationLineLength = $lineLengths->get($currentLineIndex + 1) ?? $currentLines->last(); - - if ($currentLineIndex + 1 !== $lines->count() - 1) { - $destinationLineLength--; - } - - $newColumn = min(max(0, $destinationLineLength), $currentColumn); - - $this->cursorPosition = $currentLines->sum() + $newColumn; - } - - /** - * Adjust the visible window to ensure the cursor is always visible. - */ - protected function adjustVisibleWindow(): void - { - if (count($this->lines()) < $this->scroll) { - return; - } - - $currentLineIndex = $this->currentLineIndex(); - - while ($this->firstVisible + $this->scroll <= $currentLineIndex) { - $this->firstVisible++; - } - - if ($currentLineIndex === $this->firstVisible - 1) { - $this->firstVisible = max(0, $this->firstVisible - 1); - } - - // Make sure there are always the scroll amount visible - if ($this->firstVisible + $this->scroll > count($this->lines())) { - $this->firstVisible = count($this->lines()) - $this->scroll; - } - } - - /** - * Get the index of the current line that the cursor is on. - */ - protected function currentLineIndex(): int - { - $totalLineLength = 0; - - return (int) collect($this->lines())->search(function ($line) use (&$totalLineLength) { - $totalLineLength += mb_strlen($line) + 1; - - return $totalLineLength > $this->cursorPosition; - }) ?: 0; - } - - /** - * Calculate the cursor offset considering wrapped words. - */ - protected function cursorOffset(): int - { - $cursorOffset = 0; - - preg_match_all('/\S{'.$this->width.',}/u', $this->value(), $matches, PREG_OFFSET_CAPTURE); - - foreach ($matches[0] as $match) { - if ($this->cursorPosition + $cursorOffset >= $match[1] + mb_strwidth($match[0])) { - $cursorOffset += (int) floor(mb_strwidth($match[0]) / $this->width); - } - } - - return $cursorOffset; - } - - /** - * A wrapped version of the placeholder with the virtual cursor. - */ - protected function wrappedPlaceholderWithCursor(): string - { - return implode(PHP_EOL, array_map( - $this->dim(...), - explode(PHP_EOL, $this->addCursor( - $this->mbWordwrap($this->placeholder, $this->width, PHP_EOL, true), - cursorPosition: 0, - )) - )); - } -} diff --git a/docker/statistics/vendor/laravel/prompts/src/Themes/Default/Concerns/InteractsWithStrings.php b/docker/statistics/vendor/laravel/prompts/src/Themes/Default/Concerns/InteractsWithStrings.php deleted file mode 100644 index 25a2363f..00000000 --- a/docker/statistics/vendor/laravel/prompts/src/Themes/Default/Concerns/InteractsWithStrings.php +++ /dev/null @@ -1,46 +0,0 @@ - $lines - */ - protected function longest(array $lines, int $padding = 0): int - { - return max( - $this->minWidth, - collect($lines) - ->map(fn ($line) => mb_strwidth($this->stripEscapeSequences($line)) + $padding) - ->max() - ); - } - - /** - * Pad text ignoring ANSI escape sequences. - */ - protected function pad(string $text, int $length, string $char = ' '): string - { - $rightPadding = str_repeat($char, max(0, $length - mb_strwidth($this->stripEscapeSequences($text)))); - - return "{$text}{$rightPadding}"; - } - - /** - * Strip ANSI escape sequences from the given text. - */ - protected function stripEscapeSequences(string $text): string - { - // Strip ANSI escape sequences. - $text = preg_replace("/\e[^m]*m/", '', $text); - - // Strip Symfony named style tags. - $text = preg_replace("/<(info|comment|question|error)>(.*?)<\/\\1>/", '$2', $text); - - // Strip Symfony inline style tags. - return preg_replace("/<(?:(?:[fb]g|options)=[a-z,;]+)+>(.*?)<\/>/i", '$1', $text); - } -} diff --git a/docker/statistics/vendor/laravel/prompts/src/Themes/Default/TextareaPromptRenderer.php b/docker/statistics/vendor/laravel/prompts/src/Themes/Default/TextareaPromptRenderer.php deleted file mode 100644 index a639fa75..00000000 --- a/docker/statistics/vendor/laravel/prompts/src/Themes/Default/TextareaPromptRenderer.php +++ /dev/null @@ -1,87 +0,0 @@ -width = $prompt->terminal()->cols() - 8; - - return match ($prompt->state) { - 'submit' => $this - ->box( - $this->dim($this->truncate($prompt->label, $prompt->width)), - collect($prompt->lines())->implode(PHP_EOL), - ), - - 'cancel' => $this - ->box( - $this->truncate($prompt->label, $prompt->width), - collect($prompt->lines())->map(fn ($line) => $this->strikethrough($this->dim($line)))->implode(PHP_EOL), - color: 'red', - ) - ->error($prompt->cancelMessage), - - 'error' => $this - ->box( - $this->truncate($prompt->label, $prompt->width), - $this->renderText($prompt), - color: 'yellow', - info: 'Ctrl+D to submit' - ) - ->warning($this->truncate($prompt->error, $prompt->terminal()->cols() - 5)), - - default => $this - ->box( - $this->cyan($this->truncate($prompt->label, $prompt->width)), - $this->renderText($prompt), - info: 'Ctrl+D to submit' - ) - ->when( - $prompt->hint, - fn () => $this->hint($prompt->hint), - fn () => $this->newLine() // Space for errors - ) - }; - } - - /** - * Render the text in the prompt. - */ - protected function renderText(TextareaPrompt $prompt): string - { - $visible = collect($prompt->visible()); - - while ($visible->count() < $prompt->scroll) { - $visible->push(''); - } - - $longest = $this->longest($prompt->lines()) + 2; - - return $this->scrollbar( - $visible, - $prompt->firstVisible, - $prompt->scroll, - count($prompt->lines()), - min($longest, $prompt->width + 2), - )->implode(PHP_EOL); - } - - /** - * The number of lines to reserve outside of the scrollable area. - */ - public function reservedLines(): int - { - return 5; - } -} diff --git a/docker/statistics/vendor/league/commonmark/src/Delimiter/Bracket.php b/docker/statistics/vendor/league/commonmark/src/Delimiter/Bracket.php deleted file mode 100644 index 3a86859c..00000000 --- a/docker/statistics/vendor/league/commonmark/src/Delimiter/Bracket.php +++ /dev/null @@ -1,83 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace League\CommonMark\Delimiter; - -use League\CommonMark\Node\Node; - -final class Bracket -{ - private Node $node; - private ?Bracket $previous; - private bool $hasNext = false; - private int $position; - private bool $image; - private bool $active = true; - - public function __construct(Node $node, ?Bracket $previous, int $position, bool $image) - { - $this->node = $node; - $this->previous = $previous; - $this->position = $position; - $this->image = $image; - } - - public function getNode(): Node - { - return $this->node; - } - - public function getPrevious(): ?Bracket - { - return $this->previous; - } - - public function hasNext(): bool - { - return $this->hasNext; - } - - public function getPosition(): int - { - return $this->position; - } - - public function isImage(): bool - { - return $this->image; - } - - /** - * Only valid in the context of non-images (links) - */ - public function isActive(): bool - { - return $this->active; - } - - /** - * @internal - */ - public function setHasNext(bool $hasNext): void - { - $this->hasNext = $hasNext; - } - - /** - * @internal - */ - public function setActive(bool $active): void - { - $this->active = $active; - } -} diff --git a/docker/statistics/vendor/league/commonmark/src/Delimiter/Processor/CacheableDelimiterProcessorInterface.php b/docker/statistics/vendor/league/commonmark/src/Delimiter/Processor/CacheableDelimiterProcessorInterface.php deleted file mode 100644 index a2a9b7ef..00000000 --- a/docker/statistics/vendor/league/commonmark/src/Delimiter/Processor/CacheableDelimiterProcessorInterface.php +++ /dev/null @@ -1,46 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace League\CommonMark\Delimiter\Processor; - -use League\CommonMark\Delimiter\DelimiterInterface; - -/** - * Special marker interface for delimiter processors that return dynamic values from getDelimiterUse() - * - * In order to guarantee linear performance of delimiter processing, the delimiter stack must be able to - * cache the lower bound when searching for a matching opener. This gets complicated for delimiter processors - * that use a dynamic number of characters (like with emphasis and its "multiple of 3" rule). - */ -interface CacheableDelimiterProcessorInterface extends DelimiterProcessorInterface -{ - /** - * Returns a cache key of the factors that determine the number of characters to use. - * - * In order to guarantee linear performance of delimiter processing, the delimiter stack must be able to - * cache the lower bound when searching for a matching opener. This lower bound is usually quite simple; - * for example, with quotes, it's just the last opener with that characted. However, this gets complicated - * for delimiter processors that use a dynamic number of characters (like with emphasis and its "multiple - * of 3" rule), because the delimiter length being considered may change during processing because of that - * dynamic logic in getDelimiterUse(). Therefore, we cannot safely cache the lower bound for these dynamic - * processors without knowing the factors that determine the number of characters to use. - * - * At a minimum, this should include the delimiter character, plus any other factors used to determine - * the result of getDelimiterUse(). The format of the string is not important so long as it is unique - * (compared to other processors) and consistent for a given set of factors. - * - * If getDelimiterUse() always returns the same hard-coded value, this method should return just - * the delimiter character. - */ - public function getCacheKey(DelimiterInterface $closer): string; -} diff --git a/docker/statistics/vendor/league/commonmark/src/Reference/MemoryLimitedReferenceMap.php b/docker/statistics/vendor/league/commonmark/src/Reference/MemoryLimitedReferenceMap.php deleted file mode 100644 index d47bd6a6..00000000 --- a/docker/statistics/vendor/league/commonmark/src/Reference/MemoryLimitedReferenceMap.php +++ /dev/null @@ -1,68 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace League\CommonMark\Reference; - -final class MemoryLimitedReferenceMap implements ReferenceMapInterface -{ - private ReferenceMapInterface $decorated; - - private const MINIMUM_SIZE = 100_000; - - private int $remaining; - - public function __construct(ReferenceMapInterface $decorated, int $maxSize) - { - $this->decorated = $decorated; - $this->remaining = \max(self::MINIMUM_SIZE, $maxSize); - } - - public function add(ReferenceInterface $reference): void - { - $this->decorated->add($reference); - } - - public function contains(string $label): bool - { - return $this->decorated->contains($label); - } - - public function get(string $label): ?ReferenceInterface - { - $reference = $this->decorated->get($label); - if ($reference === null) { - return null; - } - - // Check for expansion limit - $this->remaining -= \strlen($reference->getDestination()) + \strlen($reference->getTitle()); - if ($this->remaining < 0) { - return null; - } - - return $reference; - } - - /** - * @return \Traversable - */ - public function getIterator(): \Traversable - { - return $this->decorated->getIterator(); - } - - public function count(): int - { - return $this->decorated->count(); - } -} diff --git a/docker/statistics/vendor/masterminds/html5/CREDITS b/docker/statistics/vendor/masterminds/html5/CREDITS deleted file mode 100644 index c2dbc4b6..00000000 --- a/docker/statistics/vendor/masterminds/html5/CREDITS +++ /dev/null @@ -1,11 +0,0 @@ -Matt Butcher [technosophos] (lead) -Matt Farina [mattfarina] (lead) -Asmir Mustafic [goetas] (contributor) -Edward Z. Yang [ezyang] (contributor) -Geoffrey Sneddon [gsnedders] (contributor) -Kukhar Vasily [ngreduce] (contributor) -Rune Christensen [MrElectronic] (contributor) -Mišo Belica [miso-belica] (contributor) -Asmir Mustafic [goetas] (contributor) -KITAITI Makoto [KitaitiMakoto] (contributor) -Jacob Floyd [cognifloyd] (contributor) diff --git a/docker/statistics/vendor/masterminds/html5/LICENSE.txt b/docker/statistics/vendor/masterminds/html5/LICENSE.txt deleted file mode 100644 index 3c275b54..00000000 --- a/docker/statistics/vendor/masterminds/html5/LICENSE.txt +++ /dev/null @@ -1,66 +0,0 @@ -## HTML5-PHP License - -Copyright (c) 2013 The Authors of HTML5-PHP - -Matt Butcher - mattbutcher@google.com -Matt Farina - matt@mattfarina.com -Asmir Mustafic - goetas@gmail.com - -Permission is hereby granted, free of charge, to any person obtaining a copy of -this software and associated documentation files (the "Software"), to deal in -the Software without restriction, including without limitation the rights to -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software is furnished to do so, -subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -## HTML5Lib License - -Portions of this are based on html5lib's PHP version, which was a -sub-project of html5lib. The following is the list of contributors from -html5lib: - -html5lib: - -Copyright (c) 2006-2009 The Authors - -Contributors: -James Graham - jg307@cam.ac.uk -Anne van Kesteren - annevankesteren@gmail.com -Lachlan Hunt - lachlan.hunt@lachy.id.au -Matt McDonald - kanashii@kanashii.ca -Sam Ruby - rubys@intertwingly.net -Ian Hickson (Google) - ian@hixie.ch -Thomas Broyer - t.broyer@ltgt.net -Jacques Distler - distler@golem.ph.utexas.edu -Henri Sivonen - hsivonen@iki.fi -Adam Barth - abarth@webkit.org -Eric Seidel - eric@webkit.org -The Mozilla Foundation (contributions from Henri Sivonen since 2008) -David Flanagan (Mozilla) - dflanagan@mozilla.com - -Permission is hereby granted, free of charge, to any person obtaining a copy of -this software and associated documentation files (the "Software"), to deal in -the Software without restriction, including without limitation the rights to -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software is furnished to do so, -subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/docker/statistics/vendor/masterminds/html5/README.md b/docker/statistics/vendor/masterminds/html5/README.md deleted file mode 100644 index fb6e5625..00000000 --- a/docker/statistics/vendor/masterminds/html5/README.md +++ /dev/null @@ -1,270 +0,0 @@ -> # UKRAINE NEEDS YOUR HELP NOW! -> -> On 24 February 2022, Russian [President Vladimir Putin ordered an invasion of Ukraine by Russian Armed Forces](https://www.bbc.com/news/world-europe-60504334). -> -> Your support is urgently needed. -> -> - Donate to the volunteers. Here is the volunteer fund helping the Ukrainian army to provide all the necessary equipment: -> https://bank.gov.ua/en/news/all/natsionalniy-bank-vidkriv-spetsrahunok-dlya-zboru-koshtiv-na-potrebi-armiyi or https://savelife.in.ua/en/donate/ -> - Triple-check social media sources. Russian disinformation is attempting to coverup and distort the reality in Ukraine. -> - Help Ukrainian refugees who are fleeing Russian attacks and shellings: https://www.globalcitizen.org/en/content/ways-to-help-ukraine-conflict/ -> - Put pressure on your political representatives to provide help to Ukraine. -> - Believe in the Ukrainian people, they will not surrender, they don't have another Ukraine. -> -> THANK YOU! ----- - -# HTML5-PHP - -HTML5 is a standards-compliant HTML5 parser and writer written entirely in PHP. -It is stable and used in many production websites, and has -well over [five million downloads](https://packagist.org/packages/masterminds/html5). - -HTML5 provides the following features. - -- An HTML5 serializer -- Support for PHP namespaces -- Composer support -- Event-based (SAX-like) parser -- A DOM tree builder -- Interoperability with [QueryPath](https://github.com/technosophos/querypath) -- Runs on **PHP** 5.3.0 or newer - -[![CI](https://github.com/Masterminds/html5-php/actions/workflows/ci.yaml/badge.svg)](https://github.com/Masterminds/html5-php/actions/workflows/ci.yaml) -[![Latest Stable Version](https://poser.pugx.org/masterminds/html5/v/stable.png)](https://packagist.org/packages/masterminds/html5) -[![Code Coverage](https://scrutinizer-ci.com/g/Masterminds/html5-php/badges/coverage.png?b=master)](https://scrutinizer-ci.com/g/Masterminds/html5-php/?branch=master) -[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/Masterminds/html5-php/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/Masterminds/html5-php/?branch=master) -[![Stability: Sustained](https://masterminds.github.io/stability/sustained.svg)](https://masterminds.github.io/stability/sustained.html) - -## Installation - -Install HTML5-PHP using [composer](http://getcomposer.org/). - -By adding the `masterminds/html5` dependency to your `composer.json` file: - -```json -{ - "require" : { - "masterminds/html5": "^2.0" - }, -} -``` - -By invoking require command via composer executable: - -```bash -composer require masterminds/html5 -``` - -## Basic Usage - -HTML5-PHP has a high-level API and a low-level API. - -Here is how you use the high-level `HTML5` library API: - -```php - - - TEST - - -

    Hello World

    -

    This is a test of the HTML5 parser.

    - - -HERE; - -// Parse the document. $dom is a DOMDocument. -$html5 = new HTML5(); -$dom = $html5->loadHTML($html); - -// Render it as HTML5: -print $html5->saveHTML($dom); - -// Or save it to a file: -$html5->save($dom, 'out.html'); -``` - -The `$dom` created by the parser is a full `DOMDocument` object. And the -`save()` and `saveHTML()` methods will take any DOMDocument. - -### Options - -It is possible to pass in an array of configuration options when loading -an HTML5 document. - -```php -// An associative array of options -$options = array( - 'option_name' => 'option_value', -); - -// Provide the options to the constructor -$html5 = new HTML5($options); - -$dom = $html5->loadHTML($html); -``` - -The following options are supported: - -* `encode_entities` (boolean): Indicates that the serializer should aggressively - encode characters as entities. Without this, it only encodes the bare - minimum. -* `disable_html_ns` (boolean): Prevents the parser from automatically - assigning the HTML5 namespace to the DOM document. This is for - non-namespace aware DOM tools. -* `target_document` (\DOMDocument): A DOM document that will be used as the - destination for the parsed nodes. -* `implicit_namespaces` (array): An assoc array of namespaces that should be - used by the parser. Name is tag prefix, value is NS URI. - -## The Low-Level API - -This library provides the following low-level APIs that you can use to -create more customized HTML5 tools: - -- A SAX-like event-based parser that you can hook into for special kinds -of parsing. -- A flexible error-reporting mechanism that can be tuned to document -syntax checking. -- A DOM implementation that uses PHP's built-in DOM library. - -The unit tests exercise each piece of the API, and every public function -is well-documented. - -### Parser Design - -The parser is designed as follows: - -- The `Scanner` handles scanning on behalf of the parser. -- The `Tokenizer` requests data off of the scanner, parses it, clasifies -it, and sends it to an `EventHandler`. It is a *recursive descent parser.* -- The `EventHandler` receives notifications and data for each specific -semantic event that occurs during tokenization. -- The `DOMBuilder` is an `EventHandler` that listens for tokenizing -events and builds a document tree (`DOMDocument`) based on the events. - -### Serializer Design - -The serializer takes a data structure (the `DOMDocument`) and transforms -it into a character representation -- an HTML5 document. - -The serializer is broken into three parts: - -- The `OutputRules` contain the rules to turn DOM elements into strings. The -rules are an implementation of the interface `RulesInterface` allowing for -different rule sets to be used. -- The `Traverser`, which is a special-purpose tree walker. It visits -each node node in the tree and uses the `OutputRules` to transform the node -into a string. -- `HTML5` manages the `Traverser` and stores the resultant data -in the correct place. - -The serializer (`save()`, `saveHTML()`) follows the -[section 8.9 of the HTML 5.0 spec](http://www.w3.org/TR/2012/CR-html5-20121217/syntax.html#serializing-html-fragments). -So tags are serialized according to these rules: - -- A tag with children: <foo>CHILDREN</foo> -- A tag that cannot have content: <foo> (no closing tag) -- A tag that could have content, but doesn't: <foo></foo> - -## Known Issues (Or, Things We Designed Against the Spec) - -Please check the issue queue for a full list, but the following are -issues known issues that are not presently on the roadmap: - -- Namespaces: HTML5 only [supports a selected list of namespaces](http://www.w3.org/TR/html5/infrastructure.html#namespaces) - and they do not operate in the same way as XML namespaces. A `:` has no special - meaning. - By default the parser does not support XML style namespaces via `:`; - to enable the XML namespaces see the [XML Namespaces section](#xml-namespaces) -- Scripts: This parser does not contain a JavaScript or a CSS - interpreter. While one may be supplied, not all features will be - supported. -- Reentrance: The current parser is not re-entrant. (Thus you can't pause - the parser to modify the HTML string mid-parse.) -- Validation: The current tree builder is **not** a validating parser. - While it will correct some HTML, it does not check that the HTML - conforms to the standard. (Should you wish, you can build a validating - parser by extending DOMTree or building your own EventHandler - implementation.) - * There is limited support for insertion modes. - * Some autocorrection is done automatically. - * Per the spec, many legacy tags are admitted and correctly handled, - even though they are technically not part of HTML5. -- Attribute names and values: Due to the implementation details of the - PHP implementation of DOM, attribute names that do not follow the - XML 1.0 standard are not inserted into the DOM. (Effectively, they - are ignored.) If you've got a clever fix for this, jump in! -- Processor Instructions: The HTML5 spec does not allow processor - instructions. We do. Since this is a server-side library, we think - this is useful. And that means, dear reader, that in some cases you - can parse the HTML from a mixed PHP/HTML document. This, however, - is an incidental feature, not a core feature. -- HTML manifests: Unsupported. -- PLAINTEXT: Unsupported. -- Adoption Agency Algorithm: Not yet implemented. (8.2.5.4.7) - -## XML Namespaces - -To use XML style namespaces you have to configure well the main `HTML5` instance. - -```php -use Masterminds\HTML5; -$html = new HTML5(array( - "xmlNamespaces" => true -)); - -$dom = $html->loadHTML(''); - -$dom->documentElement->namespaceURI; // http://www.example.com - -``` - -You can also add some default prefixes that will not require the namespace declaration, -but its elements will be namespaced. - -```php -use Masterminds\HTML5; -$html = new HTML5(array( - "implicitNamespaces"=>array( - "t"=>"http://www.example.com" - ) -)); - -$dom = $html->loadHTML(''); - -$dom->documentElement->namespaceURI; // http://www.example.com - -``` - -## Thanks to... - -The dedicated (and patient) contributors of patches small and large, -who have already made this library better.See the CREDITS file for -a list of contributors. - -We owe a huge debt of gratitude to the original authors of html5lib. - -While not much of the original parser remains, we learned a lot from -reading the html5lib library. And some pieces remain here. In -particular, much of the UTF-8 and Unicode handling is derived from the -html5lib project. - -## License - -This software is released under the MIT license. The original html5lib -library was also released under the MIT license. - -See LICENSE.txt - -Certain files contain copyright assertions by specific individuals -involved with html5lib. Those have been retained where appropriate. diff --git a/docker/statistics/vendor/masterminds/html5/RELEASE.md b/docker/statistics/vendor/masterminds/html5/RELEASE.md deleted file mode 100644 index 33007ed6..00000000 --- a/docker/statistics/vendor/masterminds/html5/RELEASE.md +++ /dev/null @@ -1,157 +0,0 @@ -# Release Notes - -2.7.6 (2021-08-18) - -- #218: Address comment handling issues - -2.7.5 (2021-07-01) - -- #204: Travis: Enable tests on PHP 8.0 -- #207: Fix PHP 8.1 deprecations - -2.7.4 (2020-10-01) - -- #191: Fix travisci build -- #195: Add .gitattributes file with export-ignore rules -- #194: Fix query parameter parsed as character entity - -2.7.3 (2020-07-05) - -- #190: mitigate cyclic reference between output rules and the traverser objects - -2.7.2 (2020-07-01) - -- #187: Fixed memory leak in HTML5::saveHTML() -- #186: Add special case for end tag
    - -2.7.1 (2020-06-14) - -- #171: add PHP 7.4 job -- #178: Prevent infinite loop on un-terminated entity declaration at EOF - -2.7.0 (2019-07-25) - -- #164: Drop HHVM support -- #168: Set default encoding in the DOMDocument object - -2.6.0 (2019-03-10) - -- #163: Allow to pass a charset to the Scanner - -2.5.0 (2018-12-27) - -- #162, #161, #155, #154, #153, #151: big performance improvements -- #156: fixed typos -- #160: adopt and enforce code style -- #159: remove deprecated php unit base test case -- #150: backport changes from old master branch - -2.4.0 (2018-11-17) - -- #148: Improve performance by moving sequence matching -- #147: Improve the Tokenizer performance -- #146: Improve performance by relying on a native string instead of InputStream -- #144: Add DOM extension in composer.json -- #145: Add more extensions on composer.json, improve phpdocs and remove dead code -- #143: Remove experimental comment - -2.3.1 (2018-10-18) - -- #121: Audio is not a block tag (fixed by #141) -- #136: Handle illegal self-closing according to spec (fixed by #137) -- #141: Minor fixes in the README - -2.3.0 (2017-09-04) - -- #129: image within inline svg breaks system (fixed by #133) -- #131: ² does not work (fixed by #132) -- #134: Improve tokenizer performance by 20% (alternative version of #130 thanks to @MichaelHeerklotz) -- #135: Raw & in attributes - -2.2.2 (2016-09-22) - -- #116: In XML mode, tags are case sensitive -- #115: Fix PHP Notice in OutputRules -- #112: fix parsing of options of an optgroup -- #111: Adding test for the address tag - -2.2.1 (2016-05-10) - -- #109: Fixed issue where address tag could be written without closing tag (thanks sylus) - -2.2.0 (2016-04-11) - -- #105: Enable composer cache (for CI/CD) -- #100: Use mb_substitute_character inset of ini_set for environments where ini_set is disable (e.g., shared hosting) -- #98: Allow link, meta, style tags in noscript tags -- #96: Fixed xml:href on svgs that use the "use" breaking -- #94: Counting UTF8 characters performance improvement -- #93: Use newer version of coveralls package -- #90: Remove duplicate test -- #87: Allow multiple root nodes - -2.1.2 (2015-06-07) -- #82: Support for PHP7 -- #84: Improved boolean attribute handling - -2.1.1 (2015-03-23) -- #78: Fixes bug where unmatched entity like string drops everything after &. - -2.1.0 (2015-02-01) -- #74: Added `disable_html_ns` and `target_doc` dom parsing options -- Unified option names -- #73: Fixed alphabet, ß now can be detected -- #75 and #76: Allow whitespace in RCDATA tags -- #77: Fixed parsing blunder for json embeds -- #72: Add options to HTML methods - -2.0.2 (2014-12-17) -- #50: empty document handling -- #63: tags with strange capitalization -- #65: dashes and underscores as allowed characters in tag names -- #68: Fixed issue with non-inline elements inside inline containers - -2.0.1 (2014-09-23) -- #59: Fixed issue parsing some fragments. -- #56: Incorrectly saw 0 as empty string -- Sami as new documentation generator - -2.0.0 (2014-07-28) -- #53: Improved boolean attributes handling -- #52: Facebook HHVM compatibility -- #48: Adopted PSR-2 as coding standard -- #47: Moved everything to Masterminds namespace -- #45: Added custom namespaces -- #44: Added support to XML-style namespaces -- #37: Refactored HTML5 class removing static methods - -1.0.5 (2014-06-10) -- #38: Set the dev-master branch as the 1.0.x branch for composer (goetas) -- #34: Tests use PSR-4 for autoloading. (goetas) -- #40, #41: Fix entity handling in RCDATA sections. (KitaitiMakoto) -- #32: Fixed issue where wharacter references were being incorrectly encoded in style tags. - -1.0.4 (2014-04-29) -- #30/#31 Don't throw an exception for invalid tag names. - -1.0.3 (2014-02-28) -- #23 and #29: Ignore attributes with illegal chars in name for the PHP DOM. - -1.0.2 (2014-02-12) -- #23: Handle missing tag close in attribute list. -- #25: Fixed text escaping in the serializer (HTML% 8.3). -- #27: Fixed tests on Windows: changed "\n" -> PHP_EOL. -- #28: Fixed infinite loop for char "&" in unquoted attribute in parser. -- #26: Updated tag name case handling to deal with uppercase usage. -- #24: Newlines and tabs are allowed inside quoted attributes (HTML5 8.2.4). -- Fixed Travis CI testing. - -1.0.1 (2013-11-07) -- CDATA encoding is improved. (Non-standard; Issue #19) -- Some parser rules were not returning the new current element. (Issue #20) -- Added, to the README, details on code test coverage and to packagist version. -- Fixed processor instructions. -- Improved test coverage and documentation coverage. - -1.0.0 (2013-10-02) -- Initial release. diff --git a/docker/statistics/vendor/masterminds/html5/UPGRADING.md b/docker/statistics/vendor/masterminds/html5/UPGRADING.md deleted file mode 100644 index 76e3a19b..00000000 --- a/docker/statistics/vendor/masterminds/html5/UPGRADING.md +++ /dev/null @@ -1,21 +0,0 @@ -From 1.x to 2.x -================= - -- All classes uses `Masterminds` namespace. -- All public static methods has been removed from `HTML5` class and the general API to access the HTML5 functionalities has changed. - - Before: - - $dom = \HTML5::loadHTML('....'); - \HTML5::saveHTML($dom); - - After: - - use Masterminds\HTML5; - - $html5 = new HTML5(); - - $dom = $html5->loadHTML('....'); - echo $html5->saveHTML($dom); - - diff --git a/docker/statistics/vendor/masterminds/html5/bin/entities.php b/docker/statistics/vendor/masterminds/html5/bin/entities.php deleted file mode 100644 index 56323a34..00000000 --- a/docker/statistics/vendor/masterminds/html5/bin/entities.php +++ /dev/null @@ -1,26 +0,0 @@ - $obj) { - $sname = substr($name, 1, -1); - $table[$sname] = $obj->characters; -} - -echo '=5.3.0" - }, - "require-dev": { - "phpunit/phpunit" : "^4.8.35 || ^5.7.21 || ^6 || ^7 || ^8 || ^9" - }, - "autoload": { - "psr-4": {"Masterminds\\": "src"} - }, - "autoload-dev": { - "psr-4": {"Masterminds\\HTML5\\Tests\\": "test/HTML5"} - }, - "extra": { - "branch-alias": { - "dev-master": "2.7-dev" - } - } -} diff --git a/docker/statistics/vendor/masterminds/html5/src/HTML5.php b/docker/statistics/vendor/masterminds/html5/src/HTML5.php deleted file mode 100644 index c857145f..00000000 --- a/docker/statistics/vendor/masterminds/html5/src/HTML5.php +++ /dev/null @@ -1,246 +0,0 @@ - false, - - // Prevents the parser from automatically assigning the HTML5 namespace to the DOM document. - 'disable_html_ns' => false, - ); - - protected $errors = array(); - - public function __construct(array $defaultOptions = array()) - { - $this->defaultOptions = array_merge($this->defaultOptions, $defaultOptions); - } - - /** - * Get the current default options. - * - * @return array - */ - public function getOptions() - { - return $this->defaultOptions; - } - - /** - * Load and parse an HTML file. - * - * This will apply the HTML5 parser, which is tolerant of many - * varieties of HTML, including XHTML 1, HTML 4, and well-formed HTML - * 3. Note that in these cases, not all of the old data will be - * preserved. For example, XHTML's XML declaration will be removed. - * - * The rules governing parsing are set out in the HTML 5 spec. - * - * @param string|resource $file The path to the file to parse. If this is a resource, it is - * assumed to be an open stream whose pointer is set to the first - * byte of input. - * @param array $options Configuration options when parsing the HTML. - * - * @return \DOMDocument A DOM document. These object type is defined by the libxml - * library, and should have been included with your version of PHP. - */ - public function load($file, array $options = array()) - { - // Handle the case where file is a resource. - if (is_resource($file)) { - return $this->parse(stream_get_contents($file), $options); - } - - return $this->parse(file_get_contents($file), $options); - } - - /** - * Parse a HTML Document from a string. - * - * Take a string of HTML 5 (or earlier) and parse it into a - * DOMDocument. - * - * @param string $string A html5 document as a string. - * @param array $options Configuration options when parsing the HTML. - * - * @return \DOMDocument A DOM document. DOM is part of libxml, which is included with - * almost all distribtions of PHP. - */ - public function loadHTML($string, array $options = array()) - { - return $this->parse($string, $options); - } - - /** - * Convenience function to load an HTML file. - * - * This is here to provide backwards compatibility with the - * PHP DOM implementation. It simply calls load(). - * - * @param string $file The path to the file to parse. If this is a resource, it is - * assumed to be an open stream whose pointer is set to the first - * byte of input. - * @param array $options Configuration options when parsing the HTML. - * - * @return \DOMDocument A DOM document. These object type is defined by the libxml - * library, and should have been included with your version of PHP. - */ - public function loadHTMLFile($file, array $options = array()) - { - return $this->load($file, $options); - } - - /** - * Parse a HTML fragment from a string. - * - * @param string $string the HTML5 fragment as a string - * @param array $options Configuration options when parsing the HTML - * - * @return \DOMDocumentFragment A DOM fragment. The DOM is part of libxml, which is included with - * almost all distributions of PHP. - */ - public function loadHTMLFragment($string, array $options = array()) - { - return $this->parseFragment($string, $options); - } - - /** - * Return all errors encountered into parsing phase. - * - * @return array - */ - public function getErrors() - { - return $this->errors; - } - - /** - * Return true it some errors were encountered into parsing phase. - * - * @return bool - */ - public function hasErrors() - { - return count($this->errors) > 0; - } - - /** - * Parse an input string. - * - * @param string $input - * @param array $options - * - * @return \DOMDocument - */ - public function parse($input, array $options = array()) - { - $this->errors = array(); - $options = array_merge($this->defaultOptions, $options); - $events = new DOMTreeBuilder(false, $options); - $scanner = new Scanner($input, !empty($options['encoding']) ? $options['encoding'] : 'UTF-8'); - $parser = new Tokenizer($scanner, $events, !empty($options['xmlNamespaces']) ? Tokenizer::CONFORMANT_XML : Tokenizer::CONFORMANT_HTML); - - $parser->parse(); - $this->errors = $events->getErrors(); - - return $events->document(); - } - - /** - * Parse an input stream where the stream is a fragment. - * - * Lower-level loading function. This requires an input stream instead - * of a string, file, or resource. - * - * @param string $input The input data to parse in the form of a string. - * @param array $options An array of options. - * - * @return \DOMDocumentFragment - */ - public function parseFragment($input, array $options = array()) - { - $options = array_merge($this->defaultOptions, $options); - $events = new DOMTreeBuilder(true, $options); - $scanner = new Scanner($input, !empty($options['encoding']) ? $options['encoding'] : 'UTF-8'); - $parser = new Tokenizer($scanner, $events, !empty($options['xmlNamespaces']) ? Tokenizer::CONFORMANT_XML : Tokenizer::CONFORMANT_HTML); - - $parser->parse(); - $this->errors = $events->getErrors(); - - return $events->fragment(); - } - - /** - * Save a DOM into a given file as HTML5. - * - * @param mixed $dom The DOM to be serialized. - * @param string|resource $file The filename to be written or resource to write to. - * @param array $options Configuration options when serializing the DOM. These include: - * - encode_entities: Text written to the output is escaped by default and not all - * entities are encoded. If this is set to true all entities will be encoded. - * Defaults to false. - */ - public function save($dom, $file, $options = array()) - { - $close = true; - if (is_resource($file)) { - $stream = $file; - $close = false; - } else { - $stream = fopen($file, 'wb'); - } - $options = array_merge($this->defaultOptions, $options); - $rules = new OutputRules($stream, $options); - $trav = new Traverser($dom, $stream, $rules, $options); - - $trav->walk(); - /* - * release the traverser to avoid cyclic references and allow PHP to free memory without waiting for gc_collect_cycles - */ - $rules->unsetTraverser(); - if ($close) { - fclose($stream); - } - } - - /** - * Convert a DOM into an HTML5 string. - * - * @param mixed $dom The DOM to be serialized. - * @param array $options Configuration options when serializing the DOM. These include: - * - encode_entities: Text written to the output is escaped by default and not all - * entities are encoded. If this is set to true all entities will be encoded. - * Defaults to false. - * - * @return string A HTML5 documented generated from the DOM. - */ - public function saveHTML($dom, $options = array()) - { - $stream = fopen('php://temp', 'wb'); - $this->save($dom, $stream, array_merge($this->defaultOptions, $options)); - - $html = stream_get_contents($stream, -1, 0); - - fclose($stream); - - return $html; - } -} diff --git a/docker/statistics/vendor/masterminds/html5/src/HTML5/Elements.php b/docker/statistics/vendor/masterminds/html5/src/HTML5/Elements.php deleted file mode 100644 index 5d8cfd44..00000000 --- a/docker/statistics/vendor/masterminds/html5/src/HTML5/Elements.php +++ /dev/null @@ -1,637 +0,0 @@ - [PARENT-TAG-NAME-TO-CLOSE1, PARENT-TAG-NAME-TO-CLOSE2, ...]. - * - * Order is important, after auto-closing one parent with might have to close also their parent. - * - * @var array - */ - public static $optionalEndElementsParentsToClose = array( - 'tr' => array('td', 'tr'), - 'td' => array('td', 'th'), - 'th' => array('td', 'th'), - 'tfoot' => array('td', 'th', 'tr', 'tbody', 'thead'), - 'tbody' => array('td', 'th', 'tr', 'thead'), - ); - - /** - * The HTML5 elements as defined in http://dev.w3.org/html5/markup/elements.html. - * - * @var array - */ - public static $html5 = array( - 'a' => 1, - 'abbr' => 1, - 'address' => 65, // NORMAL | BLOCK_TAG - 'area' => 9, // NORMAL | VOID_TAG - 'article' => 81, // NORMAL | AUTOCLOSE_P | BLOCK_TAG - 'aside' => 81, // NORMAL | AUTOCLOSE_P | BLOCK_TAG - 'audio' => 1, // NORMAL - 'b' => 1, - 'base' => 9, // NORMAL | VOID_TAG - 'bdi' => 1, - 'bdo' => 1, - 'blockquote' => 81, // NORMAL | AUTOCLOSE_P | BLOCK_TAG - 'body' => 1, - 'br' => 9, // NORMAL | VOID_TAG - 'button' => 1, - 'canvas' => 65, // NORMAL | BLOCK_TAG - 'caption' => 1, - 'cite' => 1, - 'code' => 1, - 'col' => 9, // NORMAL | VOID_TAG - 'colgroup' => 1, - 'command' => 9, // NORMAL | VOID_TAG - // "data" => 1, // This is highly experimental and only part of the whatwg spec (not w3c). See https://developer.mozilla.org/en-US/docs/HTML/Element/data - 'datalist' => 1, - 'dd' => 65, // NORMAL | BLOCK_TAG - 'del' => 1, - 'details' => 17, // NORMAL | AUTOCLOSE_P, - 'dfn' => 1, - 'dialog' => 17, // NORMAL | AUTOCLOSE_P, - 'div' => 81, // NORMAL | AUTOCLOSE_P | BLOCK_TAG - 'dl' => 81, // NORMAL | AUTOCLOSE_P | BLOCK_TAG - 'dt' => 1, - 'em' => 1, - 'embed' => 9, // NORMAL | VOID_TAG - 'fieldset' => 81, // NORMAL | AUTOCLOSE_P | BLOCK_TAG - 'figcaption' => 81, // NORMAL | AUTOCLOSE_P | BLOCK_TAG - 'figure' => 81, // NORMAL | AUTOCLOSE_P | BLOCK_TAG - 'footer' => 81, // NORMAL | AUTOCLOSE_P | BLOCK_TAG - 'form' => 81, // NORMAL | AUTOCLOSE_P | BLOCK_TAG - 'h1' => 81, // NORMAL | AUTOCLOSE_P | BLOCK_TAG - 'h2' => 81, // NORMAL | AUTOCLOSE_P | BLOCK_TAG - 'h3' => 81, // NORMAL | AUTOCLOSE_P | BLOCK_TAG - 'h4' => 81, // NORMAL | AUTOCLOSE_P | BLOCK_TAG - 'h5' => 81, // NORMAL | AUTOCLOSE_P | BLOCK_TAG - 'h6' => 81, // NORMAL | AUTOCLOSE_P | BLOCK_TAG - 'head' => 1, - 'header' => 81, // NORMAL | AUTOCLOSE_P | BLOCK_TAG - 'hgroup' => 81, // NORMAL | AUTOCLOSE_P | BLOCK_TAG - 'hr' => 73, // NORMAL | VOID_TAG - 'html' => 1, - 'i' => 1, - 'iframe' => 3, // NORMAL | TEXT_RAW - 'img' => 9, // NORMAL | VOID_TAG - 'input' => 9, // NORMAL | VOID_TAG - 'kbd' => 1, - 'ins' => 1, - 'keygen' => 9, // NORMAL | VOID_TAG - 'label' => 1, - 'legend' => 1, - 'li' => 1, - 'link' => 9, // NORMAL | VOID_TAG - 'map' => 1, - 'mark' => 1, - 'menu' => 17, // NORMAL | AUTOCLOSE_P, - 'meta' => 9, // NORMAL | VOID_TAG - 'meter' => 1, - 'nav' => 17, // NORMAL | AUTOCLOSE_P, - 'noscript' => 65, // NORMAL | BLOCK_TAG - 'object' => 1, - 'ol' => 81, // NORMAL | AUTOCLOSE_P | BLOCK_TAG - 'optgroup' => 1, - 'option' => 1, - 'output' => 65, // NORMAL | BLOCK_TAG - 'p' => 209, // NORMAL | AUTOCLOSE_P | BLOCK_TAG | BLOCK_ONLY_INLINE - 'param' => 9, // NORMAL | VOID_TAG - 'pre' => 81, // NORMAL | AUTOCLOSE_P | BLOCK_TAG - 'progress' => 1, - 'q' => 1, - 'rp' => 1, - 'rt' => 1, - 'ruby' => 1, - 's' => 1, - 'samp' => 1, - 'script' => 3, // NORMAL | TEXT_RAW - 'section' => 81, // NORMAL | AUTOCLOSE_P | BLOCK_TAG - 'select' => 1, - 'small' => 1, - 'source' => 9, // NORMAL | VOID_TAG - 'span' => 1, - 'strong' => 1, - 'style' => 3, // NORMAL | TEXT_RAW - 'sub' => 1, - 'summary' => 17, // NORMAL | AUTOCLOSE_P, - 'sup' => 1, - 'table' => 65, // NORMAL | BLOCK_TAG - 'tbody' => 1, - 'td' => 1, - 'textarea' => 5, // NORMAL | TEXT_RCDATA - 'tfoot' => 65, // NORMAL | BLOCK_TAG - 'th' => 1, - 'thead' => 1, - 'time' => 1, - 'title' => 5, // NORMAL | TEXT_RCDATA - 'tr' => 1, - 'track' => 9, // NORMAL | VOID_TAG - 'u' => 1, - 'ul' => 81, // NORMAL | AUTOCLOSE_P | BLOCK_TAG - 'var' => 1, - 'video' => 1, - 'wbr' => 9, // NORMAL | VOID_TAG - - // Legacy? - 'basefont' => 8, // VOID_TAG - 'bgsound' => 8, // VOID_TAG - 'noframes' => 2, // RAW_TEXT - 'frame' => 9, // NORMAL | VOID_TAG - 'frameset' => 1, - 'center' => 16, - 'dir' => 16, - 'listing' => 16, // AUTOCLOSE_P - 'plaintext' => 48, // AUTOCLOSE_P | TEXT_PLAINTEXT - 'applet' => 0, - 'marquee' => 0, - 'isindex' => 8, // VOID_TAG - 'xmp' => 20, // AUTOCLOSE_P | VOID_TAG | RAW_TEXT - 'noembed' => 2, // RAW_TEXT - ); - - /** - * The MathML elements. - * See http://www.w3.org/wiki/MathML/Elements. - * - * In our case we are only concerned with presentation MathML and not content - * MathML. There is a nice list of this subset at https://developer.mozilla.org/en-US/docs/MathML/Element. - * - * @var array - */ - public static $mathml = array( - 'maction' => 1, - 'maligngroup' => 1, - 'malignmark' => 1, - 'math' => 1, - 'menclose' => 1, - 'merror' => 1, - 'mfenced' => 1, - 'mfrac' => 1, - 'mglyph' => 1, - 'mi' => 1, - 'mlabeledtr' => 1, - 'mlongdiv' => 1, - 'mmultiscripts' => 1, - 'mn' => 1, - 'mo' => 1, - 'mover' => 1, - 'mpadded' => 1, - 'mphantom' => 1, - 'mroot' => 1, - 'mrow' => 1, - 'ms' => 1, - 'mscarries' => 1, - 'mscarry' => 1, - 'msgroup' => 1, - 'msline' => 1, - 'mspace' => 1, - 'msqrt' => 1, - 'msrow' => 1, - 'mstack' => 1, - 'mstyle' => 1, - 'msub' => 1, - 'msup' => 1, - 'msubsup' => 1, - 'mtable' => 1, - 'mtd' => 1, - 'mtext' => 1, - 'mtr' => 1, - 'munder' => 1, - 'munderover' => 1, - ); - - /** - * The svg elements. - * - * The Mozilla documentation has a good list at https://developer.mozilla.org/en-US/docs/SVG/Element. - * The w3c list appears to be lacking in some areas like filter effect elements. - * That list can be found at http://www.w3.org/wiki/SVG/Elements. - * - * Note, FireFox appears to do a better job rendering filter effects than chrome. - * While they are in the spec I'm not sure how widely implemented they are. - * - * @var array - */ - public static $svg = array( - 'a' => 1, - 'altGlyph' => 1, - 'altGlyphDef' => 1, - 'altGlyphItem' => 1, - 'animate' => 1, - 'animateColor' => 1, - 'animateMotion' => 1, - 'animateTransform' => 1, - 'circle' => 1, - 'clipPath' => 1, - 'color-profile' => 1, - 'cursor' => 1, - 'defs' => 1, - 'desc' => 1, - 'ellipse' => 1, - 'feBlend' => 1, - 'feColorMatrix' => 1, - 'feComponentTransfer' => 1, - 'feComposite' => 1, - 'feConvolveMatrix' => 1, - 'feDiffuseLighting' => 1, - 'feDisplacementMap' => 1, - 'feDistantLight' => 1, - 'feFlood' => 1, - 'feFuncA' => 1, - 'feFuncB' => 1, - 'feFuncG' => 1, - 'feFuncR' => 1, - 'feGaussianBlur' => 1, - 'feImage' => 1, - 'feMerge' => 1, - 'feMergeNode' => 1, - 'feMorphology' => 1, - 'feOffset' => 1, - 'fePointLight' => 1, - 'feSpecularLighting' => 1, - 'feSpotLight' => 1, - 'feTile' => 1, - 'feTurbulence' => 1, - 'filter' => 1, - 'font' => 1, - 'font-face' => 1, - 'font-face-format' => 1, - 'font-face-name' => 1, - 'font-face-src' => 1, - 'font-face-uri' => 1, - 'foreignObject' => 1, - 'g' => 1, - 'glyph' => 1, - 'glyphRef' => 1, - 'hkern' => 1, - 'image' => 1, - 'line' => 1, - 'linearGradient' => 1, - 'marker' => 1, - 'mask' => 1, - 'metadata' => 1, - 'missing-glyph' => 1, - 'mpath' => 1, - 'path' => 1, - 'pattern' => 1, - 'polygon' => 1, - 'polyline' => 1, - 'radialGradient' => 1, - 'rect' => 1, - 'script' => 3, // NORMAL | RAW_TEXT - 'set' => 1, - 'stop' => 1, - 'style' => 3, // NORMAL | RAW_TEXT - 'svg' => 1, - 'switch' => 1, - 'symbol' => 1, - 'text' => 1, - 'textPath' => 1, - 'title' => 1, - 'tref' => 1, - 'tspan' => 1, - 'use' => 1, - 'view' => 1, - 'vkern' => 1, - ); - - /** - * Some attributes in SVG are case sensitive. - * - * This map contains key/value pairs with the key as the lowercase attribute - * name and the value with the correct casing. - */ - public static $svgCaseSensitiveAttributeMap = array( - 'attributename' => 'attributeName', - 'attributetype' => 'attributeType', - 'basefrequency' => 'baseFrequency', - 'baseprofile' => 'baseProfile', - 'calcmode' => 'calcMode', - 'clippathunits' => 'clipPathUnits', - 'contentscripttype' => 'contentScriptType', - 'contentstyletype' => 'contentStyleType', - 'diffuseconstant' => 'diffuseConstant', - 'edgemode' => 'edgeMode', - 'externalresourcesrequired' => 'externalResourcesRequired', - 'filterres' => 'filterRes', - 'filterunits' => 'filterUnits', - 'glyphref' => 'glyphRef', - 'gradienttransform' => 'gradientTransform', - 'gradientunits' => 'gradientUnits', - 'kernelmatrix' => 'kernelMatrix', - 'kernelunitlength' => 'kernelUnitLength', - 'keypoints' => 'keyPoints', - 'keysplines' => 'keySplines', - 'keytimes' => 'keyTimes', - 'lengthadjust' => 'lengthAdjust', - 'limitingconeangle' => 'limitingConeAngle', - 'markerheight' => 'markerHeight', - 'markerunits' => 'markerUnits', - 'markerwidth' => 'markerWidth', - 'maskcontentunits' => 'maskContentUnits', - 'maskunits' => 'maskUnits', - 'numoctaves' => 'numOctaves', - 'pathlength' => 'pathLength', - 'patterncontentunits' => 'patternContentUnits', - 'patterntransform' => 'patternTransform', - 'patternunits' => 'patternUnits', - 'pointsatx' => 'pointsAtX', - 'pointsaty' => 'pointsAtY', - 'pointsatz' => 'pointsAtZ', - 'preservealpha' => 'preserveAlpha', - 'preserveaspectratio' => 'preserveAspectRatio', - 'primitiveunits' => 'primitiveUnits', - 'refx' => 'refX', - 'refy' => 'refY', - 'repeatcount' => 'repeatCount', - 'repeatdur' => 'repeatDur', - 'requiredextensions' => 'requiredExtensions', - 'requiredfeatures' => 'requiredFeatures', - 'specularconstant' => 'specularConstant', - 'specularexponent' => 'specularExponent', - 'spreadmethod' => 'spreadMethod', - 'startoffset' => 'startOffset', - 'stddeviation' => 'stdDeviation', - 'stitchtiles' => 'stitchTiles', - 'surfacescale' => 'surfaceScale', - 'systemlanguage' => 'systemLanguage', - 'tablevalues' => 'tableValues', - 'targetx' => 'targetX', - 'targety' => 'targetY', - 'textlength' => 'textLength', - 'viewbox' => 'viewBox', - 'viewtarget' => 'viewTarget', - 'xchannelselector' => 'xChannelSelector', - 'ychannelselector' => 'yChannelSelector', - 'zoomandpan' => 'zoomAndPan', - ); - - /** - * Some SVG elements are case sensitive. - * This map contains these. - * - * The map contains key/value store of the name is lowercase as the keys and - * the correct casing as the value. - */ - public static $svgCaseSensitiveElementMap = array( - 'altglyph' => 'altGlyph', - 'altglyphdef' => 'altGlyphDef', - 'altglyphitem' => 'altGlyphItem', - 'animatecolor' => 'animateColor', - 'animatemotion' => 'animateMotion', - 'animatetransform' => 'animateTransform', - 'clippath' => 'clipPath', - 'feblend' => 'feBlend', - 'fecolormatrix' => 'feColorMatrix', - 'fecomponenttransfer' => 'feComponentTransfer', - 'fecomposite' => 'feComposite', - 'feconvolvematrix' => 'feConvolveMatrix', - 'fediffuselighting' => 'feDiffuseLighting', - 'fedisplacementmap' => 'feDisplacementMap', - 'fedistantlight' => 'feDistantLight', - 'feflood' => 'feFlood', - 'fefunca' => 'feFuncA', - 'fefuncb' => 'feFuncB', - 'fefuncg' => 'feFuncG', - 'fefuncr' => 'feFuncR', - 'fegaussianblur' => 'feGaussianBlur', - 'feimage' => 'feImage', - 'femerge' => 'feMerge', - 'femergenode' => 'feMergeNode', - 'femorphology' => 'feMorphology', - 'feoffset' => 'feOffset', - 'fepointlight' => 'fePointLight', - 'fespecularlighting' => 'feSpecularLighting', - 'fespotlight' => 'feSpotLight', - 'fetile' => 'feTile', - 'feturbulence' => 'feTurbulence', - 'foreignobject' => 'foreignObject', - 'glyphref' => 'glyphRef', - 'lineargradient' => 'linearGradient', - 'radialgradient' => 'radialGradient', - 'textpath' => 'textPath', - ); - - /** - * Check whether the given element meets the given criterion. - * - * Example: - * - * Elements::isA('script', Elements::TEXT_RAW); // Returns true. - * - * Elements::isA('script', Elements::TEXT_RCDATA); // Returns false. - * - * @param string $name The element name. - * @param int $mask One of the constants on this class. - * - * @return bool true if the element matches the mask, false otherwise. - */ - public static function isA($name, $mask) - { - return (static::element($name) & $mask) === $mask; - } - - /** - * Test if an element is a valid html5 element. - * - * @param string $name The name of the element. - * - * @return bool true if a html5 element and false otherwise. - */ - public static function isHtml5Element($name) - { - // html5 element names are case insensitive. Forcing lowercase for the check. - // Do we need this check or will all data passed here already be lowercase? - return isset(static::$html5[strtolower($name)]); - } - - /** - * Test if an element name is a valid MathML presentation element. - * - * @param string $name The name of the element. - * - * @return bool true if a MathML name and false otherwise. - */ - public static function isMathMLElement($name) - { - // MathML is case-sensitive unlike html5 elements. - return isset(static::$mathml[$name]); - } - - /** - * Test if an element is a valid SVG element. - * - * @param string $name The name of the element. - * - * @return bool true if a SVG element and false otherise. - */ - public static function isSvgElement($name) - { - // SVG is case-sensitive unlike html5 elements. - return isset(static::$svg[$name]); - } - - /** - * Is an element name valid in an html5 document. - * This includes html5 elements along with other allowed embedded content - * such as svg and mathml. - * - * @param string $name The name of the element. - * - * @return bool true if valid and false otherwise. - */ - public static function isElement($name) - { - return static::isHtml5Element($name) || static::isMathMLElement($name) || static::isSvgElement($name); - } - - /** - * Get the element mask for the given element name. - * - * @param string $name The name of the element. - * - * @return int the element mask. - */ - public static function element($name) - { - if (isset(static::$html5[$name])) { - return static::$html5[$name]; - } - if (isset(static::$svg[$name])) { - return static::$svg[$name]; - } - if (isset(static::$mathml[$name])) { - return static::$mathml[$name]; - } - - return 0; - } - - /** - * Normalize a SVG element name to its proper case and form. - * - * @param string $name The name of the element. - * - * @return string the normalized form of the element name. - */ - public static function normalizeSvgElement($name) - { - $name = strtolower($name); - if (isset(static::$svgCaseSensitiveElementMap[$name])) { - $name = static::$svgCaseSensitiveElementMap[$name]; - } - - return $name; - } - - /** - * Normalize a SVG attribute name to its proper case and form. - * - * @param string $name The name of the attribute. - * - * @return string The normalized form of the attribute name. - */ - public static function normalizeSvgAttribute($name) - { - $name = strtolower($name); - if (isset(static::$svgCaseSensitiveAttributeMap[$name])) { - $name = static::$svgCaseSensitiveAttributeMap[$name]; - } - - return $name; - } - - /** - * Normalize a MathML attribute name to its proper case and form. - * Note, all MathML element names are lowercase. - * - * @param string $name The name of the attribute. - * - * @return string The normalized form of the attribute name. - */ - public static function normalizeMathMlAttribute($name) - { - $name = strtolower($name); - - // Only one attribute has a mixed case form for MathML. - if ('definitionurl' === $name) { - $name = 'definitionURL'; - } - - return $name; - } -} diff --git a/docker/statistics/vendor/masterminds/html5/src/HTML5/Entities.php b/docker/statistics/vendor/masterminds/html5/src/HTML5/Entities.php deleted file mode 100644 index 0e7227dc..00000000 --- a/docker/statistics/vendor/masterminds/html5/src/HTML5/Entities.php +++ /dev/null @@ -1,2236 +0,0 @@ - 'Á', - 'Aacut' => 'Á', - 'aacute' => 'á', - 'aacut' => 'á', - 'Abreve' => 'Ă', - 'abreve' => 'ă', - 'ac' => '∾', - 'acd' => '∿', - 'acE' => '∾̳', - 'Acirc' => 'Â', - 'Acir' => 'Â', - 'acirc' => 'â', - 'acir' => 'â', - 'acute' => '´', - 'acut' => '´', - 'Acy' => 'А', - 'acy' => 'а', - 'AElig' => 'Æ', - 'AEli' => 'Æ', - 'aelig' => 'æ', - 'aeli' => 'æ', - 'af' => '⁡', - 'Afr' => '𝔄', - 'afr' => '𝔞', - 'Agrave' => 'À', - 'Agrav' => 'À', - 'agrave' => 'à', - 'agrav' => 'à', - 'alefsym' => 'ℵ', - 'aleph' => 'ℵ', - 'Alpha' => 'Α', - 'alpha' => 'α', - 'Amacr' => 'Ā', - 'amacr' => 'ā', - 'amalg' => '⨿', - 'AMP' => '&', - 'AM' => '&', - 'amp' => '&', - 'am' => '&', - 'And' => '⩓', - 'and' => '∧', - 'andand' => '⩕', - 'andd' => '⩜', - 'andslope' => '⩘', - 'andv' => '⩚', - 'ang' => '∠', - 'ange' => '⦤', - 'angle' => '∠', - 'angmsd' => '∡', - 'angmsdaa' => '⦨', - 'angmsdab' => '⦩', - 'angmsdac' => '⦪', - 'angmsdad' => '⦫', - 'angmsdae' => '⦬', - 'angmsdaf' => '⦭', - 'angmsdag' => '⦮', - 'angmsdah' => '⦯', - 'angrt' => '∟', - 'angrtvb' => '⊾', - 'angrtvbd' => '⦝', - 'angsph' => '∢', - 'angst' => 'Å', - 'angzarr' => '⍼', - 'Aogon' => 'Ą', - 'aogon' => 'ą', - 'Aopf' => '𝔸', - 'aopf' => '𝕒', - 'ap' => '≈', - 'apacir' => '⩯', - 'apE' => '⩰', - 'ape' => '≊', - 'apid' => '≋', - 'apos' => '\'', - 'ApplyFunction' => '⁡', - 'approx' => '≈', - 'approxeq' => '≊', - 'Aring' => 'Å', - 'Arin' => 'Å', - 'aring' => 'å', - 'arin' => 'å', - 'Ascr' => '𝒜', - 'ascr' => '𝒶', - 'Assign' => '≔', - 'ast' => '*', - 'asymp' => '≈', - 'asympeq' => '≍', - 'Atilde' => 'Ã', - 'Atild' => 'Ã', - 'atilde' => 'ã', - 'atild' => 'ã', - 'Auml' => 'Ä', - 'Aum' => 'Ä', - 'auml' => 'ä', - 'aum' => 'ä', - 'awconint' => '∳', - 'awint' => '⨑', - 'backcong' => '≌', - 'backepsilon' => '϶', - 'backprime' => '‵', - 'backsim' => '∽', - 'backsimeq' => '⋍', - 'Backslash' => '∖', - 'Barv' => '⫧', - 'barvee' => '⊽', - 'Barwed' => '⌆', - 'barwed' => '⌅', - 'barwedge' => '⌅', - 'bbrk' => '⎵', - 'bbrktbrk' => '⎶', - 'bcong' => '≌', - 'Bcy' => 'Б', - 'bcy' => 'б', - 'bdquo' => '„', - 'becaus' => '∵', - 'Because' => '∵', - 'because' => '∵', - 'bemptyv' => '⦰', - 'bepsi' => '϶', - 'bernou' => 'ℬ', - 'Bernoullis' => 'ℬ', - 'Beta' => 'Β', - 'beta' => 'β', - 'beth' => 'ℶ', - 'between' => '≬', - 'Bfr' => '𝔅', - 'bfr' => '𝔟', - 'bigcap' => '⋂', - 'bigcirc' => '◯', - 'bigcup' => '⋃', - 'bigodot' => '⨀', - 'bigoplus' => '⨁', - 'bigotimes' => '⨂', - 'bigsqcup' => '⨆', - 'bigstar' => '★', - 'bigtriangledown' => '▽', - 'bigtriangleup' => '△', - 'biguplus' => '⨄', - 'bigvee' => '⋁', - 'bigwedge' => '⋀', - 'bkarow' => '⤍', - 'blacklozenge' => '⧫', - 'blacksquare' => '▪', - 'blacktriangle' => '▴', - 'blacktriangledown' => '▾', - 'blacktriangleleft' => '◂', - 'blacktriangleright' => '▸', - 'blank' => '␣', - 'blk12' => '▒', - 'blk14' => '░', - 'blk34' => '▓', - 'block' => '█', - 'bne' => '=⃥', - 'bnequiv' => '≡⃥', - 'bNot' => '⫭', - 'bnot' => '⌐', - 'Bopf' => '𝔹', - 'bopf' => '𝕓', - 'bot' => '⊥', - 'bottom' => '⊥', - 'bowtie' => '⋈', - 'boxbox' => '⧉', - 'boxDL' => '╗', - 'boxDl' => '╖', - 'boxdL' => '╕', - 'boxdl' => '┐', - 'boxDR' => '╔', - 'boxDr' => '╓', - 'boxdR' => '╒', - 'boxdr' => '┌', - 'boxH' => '═', - 'boxh' => '─', - 'boxHD' => '╦', - 'boxHd' => '╤', - 'boxhD' => '╥', - 'boxhd' => '┬', - 'boxHU' => '╩', - 'boxHu' => '╧', - 'boxhU' => '╨', - 'boxhu' => '┴', - 'boxminus' => '⊟', - 'boxplus' => '⊞', - 'boxtimes' => '⊠', - 'boxUL' => '╝', - 'boxUl' => '╜', - 'boxuL' => '╛', - 'boxul' => '┘', - 'boxUR' => '╚', - 'boxUr' => '╙', - 'boxuR' => '╘', - 'boxur' => '└', - 'boxV' => '║', - 'boxv' => '│', - 'boxVH' => '╬', - 'boxVh' => '╫', - 'boxvH' => '╪', - 'boxvh' => '┼', - 'boxVL' => '╣', - 'boxVl' => '╢', - 'boxvL' => '╡', - 'boxvl' => '┤', - 'boxVR' => '╠', - 'boxVr' => '╟', - 'boxvR' => '╞', - 'boxvr' => '├', - 'bprime' => '‵', - 'Breve' => '˘', - 'breve' => '˘', - 'brvbar' => '¦', - 'brvba' => '¦', - 'Bscr' => 'ℬ', - 'bscr' => '𝒷', - 'bsemi' => '⁏', - 'bsim' => '∽', - 'bsime' => '⋍', - 'bsol' => '\\', - 'bsolb' => '⧅', - 'bsolhsub' => '⟈', - 'bull' => '•', - 'bullet' => '•', - 'bump' => '≎', - 'bumpE' => '⪮', - 'bumpe' => '≏', - 'Bumpeq' => '≎', - 'bumpeq' => '≏', - 'Cacute' => 'Ć', - 'cacute' => 'ć', - 'Cap' => '⋒', - 'cap' => '∩', - 'capand' => '⩄', - 'capbrcup' => '⩉', - 'capcap' => '⩋', - 'capcup' => '⩇', - 'capdot' => '⩀', - 'CapitalDifferentialD' => 'ⅅ', - 'caps' => '∩︀', - 'caret' => '⁁', - 'caron' => 'ˇ', - 'Cayleys' => 'ℭ', - 'ccaps' => '⩍', - 'Ccaron' => 'Č', - 'ccaron' => 'č', - 'Ccedil' => 'Ç', - 'Ccedi' => 'Ç', - 'ccedil' => 'ç', - 'ccedi' => 'ç', - 'Ccirc' => 'Ĉ', - 'ccirc' => 'ĉ', - 'Cconint' => '∰', - 'ccups' => '⩌', - 'ccupssm' => '⩐', - 'Cdot' => 'Ċ', - 'cdot' => 'ċ', - 'cedil' => '¸', - 'cedi' => '¸', - 'Cedilla' => '¸', - 'cemptyv' => '⦲', - 'cent' => '¢', - 'cen' => '¢', - 'CenterDot' => '·', - 'centerdot' => '·', - 'Cfr' => 'ℭ', - 'cfr' => '𝔠', - 'CHcy' => 'Ч', - 'chcy' => 'ч', - 'check' => '✓', - 'checkmark' => '✓', - 'Chi' => 'Χ', - 'chi' => 'χ', - 'cir' => '○', - 'circ' => 'ˆ', - 'circeq' => '≗', - 'circlearrowleft' => '↺', - 'circlearrowright' => '↻', - 'circledast' => '⊛', - 'circledcirc' => '⊚', - 'circleddash' => '⊝', - 'CircleDot' => '⊙', - 'circledR' => '®', - 'circledS' => 'Ⓢ', - 'CircleMinus' => '⊖', - 'CirclePlus' => '⊕', - 'CircleTimes' => '⊗', - 'cirE' => '⧃', - 'cire' => '≗', - 'cirfnint' => '⨐', - 'cirmid' => '⫯', - 'cirscir' => '⧂', - 'ClockwiseContourIntegral' => '∲', - 'CloseCurlyDoubleQuote' => '”', - 'CloseCurlyQuote' => '’', - 'clubs' => '♣', - 'clubsuit' => '♣', - 'Colon' => '∷', - 'colon' => ':', - 'Colone' => '⩴', - 'colone' => '≔', - 'coloneq' => '≔', - 'comma' => ',', - 'commat' => '@', - 'comp' => '∁', - 'compfn' => '∘', - 'complement' => '∁', - 'complexes' => 'ℂ', - 'cong' => '≅', - 'congdot' => '⩭', - 'Congruent' => '≡', - 'Conint' => '∯', - 'conint' => '∮', - 'ContourIntegral' => '∮', - 'Copf' => 'ℂ', - 'copf' => '𝕔', - 'coprod' => '∐', - 'Coproduct' => '∐', - 'COPY' => '©', - 'COP' => '©', - 'copy' => '©', - 'cop' => '©', - 'copysr' => '℗', - 'CounterClockwiseContourIntegral' => '∳', - 'crarr' => '↵', - 'Cross' => '⨯', - 'cross' => '✗', - 'Cscr' => '𝒞', - 'cscr' => '𝒸', - 'csub' => '⫏', - 'csube' => '⫑', - 'csup' => '⫐', - 'csupe' => '⫒', - 'ctdot' => '⋯', - 'cudarrl' => '⤸', - 'cudarrr' => '⤵', - 'cuepr' => '⋞', - 'cuesc' => '⋟', - 'cularr' => '↶', - 'cularrp' => '⤽', - 'Cup' => '⋓', - 'cup' => '∪', - 'cupbrcap' => '⩈', - 'CupCap' => '≍', - 'cupcap' => '⩆', - 'cupcup' => '⩊', - 'cupdot' => '⊍', - 'cupor' => '⩅', - 'cups' => '∪︀', - 'curarr' => '↷', - 'curarrm' => '⤼', - 'curlyeqprec' => '⋞', - 'curlyeqsucc' => '⋟', - 'curlyvee' => '⋎', - 'curlywedge' => '⋏', - 'curren' => '¤', - 'curre' => '¤', - 'curvearrowleft' => '↶', - 'curvearrowright' => '↷', - 'cuvee' => '⋎', - 'cuwed' => '⋏', - 'cwconint' => '∲', - 'cwint' => '∱', - 'cylcty' => '⌭', - 'Dagger' => '‡', - 'dagger' => '†', - 'daleth' => 'ℸ', - 'Darr' => '↡', - 'dArr' => '⇓', - 'darr' => '↓', - 'dash' => '‐', - 'Dashv' => '⫤', - 'dashv' => '⊣', - 'dbkarow' => '⤏', - 'dblac' => '˝', - 'Dcaron' => 'Ď', - 'dcaron' => 'ď', - 'Dcy' => 'Д', - 'dcy' => 'д', - 'DD' => 'ⅅ', - 'dd' => 'ⅆ', - 'ddagger' => '‡', - 'ddarr' => '⇊', - 'DDotrahd' => '⤑', - 'ddotseq' => '⩷', - 'deg' => '°', - 'de' => '°', - 'Del' => '∇', - 'Delta' => 'Δ', - 'delta' => 'δ', - 'demptyv' => '⦱', - 'dfisht' => '⥿', - 'Dfr' => '𝔇', - 'dfr' => '𝔡', - 'dHar' => '⥥', - 'dharl' => '⇃', - 'dharr' => '⇂', - 'DiacriticalAcute' => '´', - 'DiacriticalDot' => '˙', - 'DiacriticalDoubleAcute' => '˝', - 'DiacriticalGrave' => '`', - 'DiacriticalTilde' => '˜', - 'diam' => '⋄', - 'Diamond' => '⋄', - 'diamond' => '⋄', - 'diamondsuit' => '♦', - 'diams' => '♦', - 'die' => '¨', - 'DifferentialD' => 'ⅆ', - 'digamma' => 'ϝ', - 'disin' => '⋲', - 'div' => '÷', - 'divide' => '÷', - 'divid' => '÷', - 'divideontimes' => '⋇', - 'divonx' => '⋇', - 'DJcy' => 'Ђ', - 'djcy' => 'ђ', - 'dlcorn' => '⌞', - 'dlcrop' => '⌍', - 'dollar' => '$', - 'Dopf' => '𝔻', - 'dopf' => '𝕕', - 'Dot' => '¨', - 'dot' => '˙', - 'DotDot' => '⃜', - 'doteq' => '≐', - 'doteqdot' => '≑', - 'DotEqual' => '≐', - 'dotminus' => '∸', - 'dotplus' => '∔', - 'dotsquare' => '⊡', - 'doublebarwedge' => '⌆', - 'DoubleContourIntegral' => '∯', - 'DoubleDot' => '¨', - 'DoubleDownArrow' => '⇓', - 'DoubleLeftArrow' => '⇐', - 'DoubleLeftRightArrow' => '⇔', - 'DoubleLeftTee' => '⫤', - 'DoubleLongLeftArrow' => '⟸', - 'DoubleLongLeftRightArrow' => '⟺', - 'DoubleLongRightArrow' => '⟹', - 'DoubleRightArrow' => '⇒', - 'DoubleRightTee' => '⊨', - 'DoubleUpArrow' => '⇑', - 'DoubleUpDownArrow' => '⇕', - 'DoubleVerticalBar' => '∥', - 'DownArrow' => '↓', - 'Downarrow' => '⇓', - 'downarrow' => '↓', - 'DownArrowBar' => '⤓', - 'DownArrowUpArrow' => '⇵', - 'DownBreve' => '̑', - 'downdownarrows' => '⇊', - 'downharpoonleft' => '⇃', - 'downharpoonright' => '⇂', - 'DownLeftRightVector' => '⥐', - 'DownLeftTeeVector' => '⥞', - 'DownLeftVector' => '↽', - 'DownLeftVectorBar' => '⥖', - 'DownRightTeeVector' => '⥟', - 'DownRightVector' => '⇁', - 'DownRightVectorBar' => '⥗', - 'DownTee' => '⊤', - 'DownTeeArrow' => '↧', - 'drbkarow' => '⤐', - 'drcorn' => '⌟', - 'drcrop' => '⌌', - 'Dscr' => '𝒟', - 'dscr' => '𝒹', - 'DScy' => 'Ѕ', - 'dscy' => 'ѕ', - 'dsol' => '⧶', - 'Dstrok' => 'Đ', - 'dstrok' => 'đ', - 'dtdot' => '⋱', - 'dtri' => '▿', - 'dtrif' => '▾', - 'duarr' => '⇵', - 'duhar' => '⥯', - 'dwangle' => '⦦', - 'DZcy' => 'Џ', - 'dzcy' => 'џ', - 'dzigrarr' => '⟿', - 'Eacute' => 'É', - 'Eacut' => 'É', - 'eacute' => 'é', - 'eacut' => 'é', - 'easter' => '⩮', - 'Ecaron' => 'Ě', - 'ecaron' => 'ě', - 'ecir' => 'ê', - 'Ecirc' => 'Ê', - 'Ecir' => 'Ê', - 'ecirc' => 'ê', - 'ecolon' => '≕', - 'Ecy' => 'Э', - 'ecy' => 'э', - 'eDDot' => '⩷', - 'Edot' => 'Ė', - 'eDot' => '≑', - 'edot' => 'ė', - 'ee' => 'ⅇ', - 'efDot' => '≒', - 'Efr' => '𝔈', - 'efr' => '𝔢', - 'eg' => '⪚', - 'Egrave' => 'È', - 'Egrav' => 'È', - 'egrave' => 'è', - 'egrav' => 'è', - 'egs' => '⪖', - 'egsdot' => '⪘', - 'el' => '⪙', - 'Element' => '∈', - 'elinters' => '⏧', - 'ell' => 'ℓ', - 'els' => '⪕', - 'elsdot' => '⪗', - 'Emacr' => 'Ē', - 'emacr' => 'ē', - 'empty' => '∅', - 'emptyset' => '∅', - 'EmptySmallSquare' => '◻', - 'emptyv' => '∅', - 'EmptyVerySmallSquare' => '▫', - 'emsp' => ' ', - 'emsp13' => ' ', - 'emsp14' => ' ', - 'ENG' => 'Ŋ', - 'eng' => 'ŋ', - 'ensp' => ' ', - 'Eogon' => 'Ę', - 'eogon' => 'ę', - 'Eopf' => '𝔼', - 'eopf' => '𝕖', - 'epar' => '⋕', - 'eparsl' => '⧣', - 'eplus' => '⩱', - 'epsi' => 'ε', - 'Epsilon' => 'Ε', - 'epsilon' => 'ε', - 'epsiv' => 'ϵ', - 'eqcirc' => '≖', - 'eqcolon' => '≕', - 'eqsim' => '≂', - 'eqslantgtr' => '⪖', - 'eqslantless' => '⪕', - 'Equal' => '⩵', - 'equals' => '=', - 'EqualTilde' => '≂', - 'equest' => '≟', - 'Equilibrium' => '⇌', - 'equiv' => '≡', - 'equivDD' => '⩸', - 'eqvparsl' => '⧥', - 'erarr' => '⥱', - 'erDot' => '≓', - 'Escr' => 'ℰ', - 'escr' => 'ℯ', - 'esdot' => '≐', - 'Esim' => '⩳', - 'esim' => '≂', - 'Eta' => 'Η', - 'eta' => 'η', - 'ETH' => 'Ð', - 'ET' => 'Ð', - 'eth' => 'ð', - 'et' => 'ð', - 'Euml' => 'Ë', - 'Eum' => 'Ë', - 'euml' => 'ë', - 'eum' => 'ë', - 'euro' => '€', - 'excl' => '!', - 'exist' => '∃', - 'Exists' => '∃', - 'expectation' => 'ℰ', - 'ExponentialE' => 'ⅇ', - 'exponentiale' => 'ⅇ', - 'fallingdotseq' => '≒', - 'Fcy' => 'Ф', - 'fcy' => 'ф', - 'female' => '♀', - 'ffilig' => 'ffi', - 'fflig' => 'ff', - 'ffllig' => 'ffl', - 'Ffr' => '𝔉', - 'ffr' => '𝔣', - 'filig' => 'fi', - 'FilledSmallSquare' => '◼', - 'FilledVerySmallSquare' => '▪', - 'fjlig' => 'fj', - 'flat' => '♭', - 'fllig' => 'fl', - 'fltns' => '▱', - 'fnof' => 'ƒ', - 'Fopf' => '𝔽', - 'fopf' => '𝕗', - 'ForAll' => '∀', - 'forall' => '∀', - 'fork' => '⋔', - 'forkv' => '⫙', - 'Fouriertrf' => 'ℱ', - 'fpartint' => '⨍', - 'frac12' => '½', - 'frac1' => '¼', - 'frac13' => '⅓', - 'frac14' => '¼', - 'frac15' => '⅕', - 'frac16' => '⅙', - 'frac18' => '⅛', - 'frac23' => '⅔', - 'frac25' => '⅖', - 'frac34' => '¾', - 'frac3' => '¾', - 'frac35' => '⅗', - 'frac38' => '⅜', - 'frac45' => '⅘', - 'frac56' => '⅚', - 'frac58' => '⅝', - 'frac78' => '⅞', - 'frasl' => '⁄', - 'frown' => '⌢', - 'Fscr' => 'ℱ', - 'fscr' => '𝒻', - 'gacute' => 'ǵ', - 'Gamma' => 'Γ', - 'gamma' => 'γ', - 'Gammad' => 'Ϝ', - 'gammad' => 'ϝ', - 'gap' => '⪆', - 'Gbreve' => 'Ğ', - 'gbreve' => 'ğ', - 'Gcedil' => 'Ģ', - 'Gcirc' => 'Ĝ', - 'gcirc' => 'ĝ', - 'Gcy' => 'Г', - 'gcy' => 'г', - 'Gdot' => 'Ġ', - 'gdot' => 'ġ', - 'gE' => '≧', - 'ge' => '≥', - 'gEl' => '⪌', - 'gel' => '⋛', - 'geq' => '≥', - 'geqq' => '≧', - 'geqslant' => '⩾', - 'ges' => '⩾', - 'gescc' => '⪩', - 'gesdot' => '⪀', - 'gesdoto' => '⪂', - 'gesdotol' => '⪄', - 'gesl' => '⋛︀', - 'gesles' => '⪔', - 'Gfr' => '𝔊', - 'gfr' => '𝔤', - 'Gg' => '⋙', - 'gg' => '≫', - 'ggg' => '⋙', - 'gimel' => 'ℷ', - 'GJcy' => 'Ѓ', - 'gjcy' => 'ѓ', - 'gl' => '≷', - 'gla' => '⪥', - 'glE' => '⪒', - 'glj' => '⪤', - 'gnap' => '⪊', - 'gnapprox' => '⪊', - 'gnE' => '≩', - 'gne' => '⪈', - 'gneq' => '⪈', - 'gneqq' => '≩', - 'gnsim' => '⋧', - 'Gopf' => '𝔾', - 'gopf' => '𝕘', - 'grave' => '`', - 'GreaterEqual' => '≥', - 'GreaterEqualLess' => '⋛', - 'GreaterFullEqual' => '≧', - 'GreaterGreater' => '⪢', - 'GreaterLess' => '≷', - 'GreaterSlantEqual' => '⩾', - 'GreaterTilde' => '≳', - 'Gscr' => '𝒢', - 'gscr' => 'ℊ', - 'gsim' => '≳', - 'gsime' => '⪎', - 'gsiml' => '⪐', - 'GT' => '>', - 'G' => '>', - 'Gt' => '≫', - 'gt' => '>', - 'g' => '>', - 'gtcc' => '⪧', - 'gtcir' => '⩺', - 'gtdot' => '⋗', - 'gtlPar' => '⦕', - 'gtquest' => '⩼', - 'gtrapprox' => '⪆', - 'gtrarr' => '⥸', - 'gtrdot' => '⋗', - 'gtreqless' => '⋛', - 'gtreqqless' => '⪌', - 'gtrless' => '≷', - 'gtrsim' => '≳', - 'gvertneqq' => '≩︀', - 'gvnE' => '≩︀', - 'Hacek' => 'ˇ', - 'hairsp' => ' ', - 'half' => '½', - 'hamilt' => 'ℋ', - 'HARDcy' => 'Ъ', - 'hardcy' => 'ъ', - 'hArr' => '⇔', - 'harr' => '↔', - 'harrcir' => '⥈', - 'harrw' => '↭', - 'Hat' => '^', - 'hbar' => 'ℏ', - 'Hcirc' => 'Ĥ', - 'hcirc' => 'ĥ', - 'hearts' => '♥', - 'heartsuit' => '♥', - 'hellip' => '…', - 'hercon' => '⊹', - 'Hfr' => 'ℌ', - 'hfr' => '𝔥', - 'HilbertSpace' => 'ℋ', - 'hksearow' => '⤥', - 'hkswarow' => '⤦', - 'hoarr' => '⇿', - 'homtht' => '∻', - 'hookleftarrow' => '↩', - 'hookrightarrow' => '↪', - 'Hopf' => 'ℍ', - 'hopf' => '𝕙', - 'horbar' => '―', - 'HorizontalLine' => '─', - 'Hscr' => 'ℋ', - 'hscr' => '𝒽', - 'hslash' => 'ℏ', - 'Hstrok' => 'Ħ', - 'hstrok' => 'ħ', - 'HumpDownHump' => '≎', - 'HumpEqual' => '≏', - 'hybull' => '⁃', - 'hyphen' => '‐', - 'Iacute' => 'Í', - 'Iacut' => 'Í', - 'iacute' => 'í', - 'iacut' => 'í', - 'ic' => '⁣', - 'Icirc' => 'Î', - 'Icir' => 'Î', - 'icirc' => 'î', - 'icir' => 'î', - 'Icy' => 'И', - 'icy' => 'и', - 'Idot' => 'İ', - 'IEcy' => 'Е', - 'iecy' => 'е', - 'iexcl' => '¡', - 'iexc' => '¡', - 'iff' => '⇔', - 'Ifr' => 'ℑ', - 'ifr' => '𝔦', - 'Igrave' => 'Ì', - 'Igrav' => 'Ì', - 'igrave' => 'ì', - 'igrav' => 'ì', - 'ii' => 'ⅈ', - 'iiiint' => '⨌', - 'iiint' => '∭', - 'iinfin' => '⧜', - 'iiota' => '℩', - 'IJlig' => 'IJ', - 'ijlig' => 'ij', - 'Im' => 'ℑ', - 'Imacr' => 'Ī', - 'imacr' => 'ī', - 'image' => 'ℑ', - 'ImaginaryI' => 'ⅈ', - 'imagline' => 'ℐ', - 'imagpart' => 'ℑ', - 'imath' => 'ı', - 'imof' => '⊷', - 'imped' => 'Ƶ', - 'Implies' => '⇒', - 'in' => '∈', - 'incare' => '℅', - 'infin' => '∞', - 'infintie' => '⧝', - 'inodot' => 'ı', - 'Int' => '∬', - 'int' => '∫', - 'intcal' => '⊺', - 'integers' => 'ℤ', - 'Integral' => '∫', - 'intercal' => '⊺', - 'Intersection' => '⋂', - 'intlarhk' => '⨗', - 'intprod' => '⨼', - 'InvisibleComma' => '⁣', - 'InvisibleTimes' => '⁢', - 'IOcy' => 'Ё', - 'iocy' => 'ё', - 'Iogon' => 'Į', - 'iogon' => 'į', - 'Iopf' => '𝕀', - 'iopf' => '𝕚', - 'Iota' => 'Ι', - 'iota' => 'ι', - 'iprod' => '⨼', - 'iquest' => '¿', - 'iques' => '¿', - 'Iscr' => 'ℐ', - 'iscr' => '𝒾', - 'isin' => '∈', - 'isindot' => '⋵', - 'isinE' => '⋹', - 'isins' => '⋴', - 'isinsv' => '⋳', - 'isinv' => '∈', - 'it' => '⁢', - 'Itilde' => 'Ĩ', - 'itilde' => 'ĩ', - 'Iukcy' => 'І', - 'iukcy' => 'і', - 'Iuml' => 'Ï', - 'Ium' => 'Ï', - 'iuml' => 'ï', - 'ium' => 'ï', - 'Jcirc' => 'Ĵ', - 'jcirc' => 'ĵ', - 'Jcy' => 'Й', - 'jcy' => 'й', - 'Jfr' => '𝔍', - 'jfr' => '𝔧', - 'jmath' => 'ȷ', - 'Jopf' => '𝕁', - 'jopf' => '𝕛', - 'Jscr' => '𝒥', - 'jscr' => '𝒿', - 'Jsercy' => 'Ј', - 'jsercy' => 'ј', - 'Jukcy' => 'Є', - 'jukcy' => 'є', - 'Kappa' => 'Κ', - 'kappa' => 'κ', - 'kappav' => 'ϰ', - 'Kcedil' => 'Ķ', - 'kcedil' => 'ķ', - 'Kcy' => 'К', - 'kcy' => 'к', - 'Kfr' => '𝔎', - 'kfr' => '𝔨', - 'kgreen' => 'ĸ', - 'KHcy' => 'Х', - 'khcy' => 'х', - 'KJcy' => 'Ќ', - 'kjcy' => 'ќ', - 'Kopf' => '𝕂', - 'kopf' => '𝕜', - 'Kscr' => '𝒦', - 'kscr' => '𝓀', - 'lAarr' => '⇚', - 'Lacute' => 'Ĺ', - 'lacute' => 'ĺ', - 'laemptyv' => '⦴', - 'lagran' => 'ℒ', - 'Lambda' => 'Λ', - 'lambda' => 'λ', - 'Lang' => '⟪', - 'lang' => '⟨', - 'langd' => '⦑', - 'langle' => '⟨', - 'lap' => '⪅', - 'Laplacetrf' => 'ℒ', - 'laquo' => '«', - 'laqu' => '«', - 'Larr' => '↞', - 'lArr' => '⇐', - 'larr' => '←', - 'larrb' => '⇤', - 'larrbfs' => '⤟', - 'larrfs' => '⤝', - 'larrhk' => '↩', - 'larrlp' => '↫', - 'larrpl' => '⤹', - 'larrsim' => '⥳', - 'larrtl' => '↢', - 'lat' => '⪫', - 'lAtail' => '⤛', - 'latail' => '⤙', - 'late' => '⪭', - 'lates' => '⪭︀', - 'lBarr' => '⤎', - 'lbarr' => '⤌', - 'lbbrk' => '❲', - 'lbrace' => '{', - 'lbrack' => '[', - 'lbrke' => '⦋', - 'lbrksld' => '⦏', - 'lbrkslu' => '⦍', - 'Lcaron' => 'Ľ', - 'lcaron' => 'ľ', - 'Lcedil' => 'Ļ', - 'lcedil' => 'ļ', - 'lceil' => '⌈', - 'lcub' => '{', - 'Lcy' => 'Л', - 'lcy' => 'л', - 'ldca' => '⤶', - 'ldquo' => '“', - 'ldquor' => '„', - 'ldrdhar' => '⥧', - 'ldrushar' => '⥋', - 'ldsh' => '↲', - 'lE' => '≦', - 'le' => '≤', - 'LeftAngleBracket' => '⟨', - 'LeftArrow' => '←', - 'Leftarrow' => '⇐', - 'leftarrow' => '←', - 'LeftArrowBar' => '⇤', - 'LeftArrowRightArrow' => '⇆', - 'leftarrowtail' => '↢', - 'LeftCeiling' => '⌈', - 'LeftDoubleBracket' => '⟦', - 'LeftDownTeeVector' => '⥡', - 'LeftDownVector' => '⇃', - 'LeftDownVectorBar' => '⥙', - 'LeftFloor' => '⌊', - 'leftharpoondown' => '↽', - 'leftharpoonup' => '↼', - 'leftleftarrows' => '⇇', - 'LeftRightArrow' => '↔', - 'Leftrightarrow' => '⇔', - 'leftrightarrow' => '↔', - 'leftrightarrows' => '⇆', - 'leftrightharpoons' => '⇋', - 'leftrightsquigarrow' => '↭', - 'LeftRightVector' => '⥎', - 'LeftTee' => '⊣', - 'LeftTeeArrow' => '↤', - 'LeftTeeVector' => '⥚', - 'leftthreetimes' => '⋋', - 'LeftTriangle' => '⊲', - 'LeftTriangleBar' => '⧏', - 'LeftTriangleEqual' => '⊴', - 'LeftUpDownVector' => '⥑', - 'LeftUpTeeVector' => '⥠', - 'LeftUpVector' => '↿', - 'LeftUpVectorBar' => '⥘', - 'LeftVector' => '↼', - 'LeftVectorBar' => '⥒', - 'lEg' => '⪋', - 'leg' => '⋚', - 'leq' => '≤', - 'leqq' => '≦', - 'leqslant' => '⩽', - 'les' => '⩽', - 'lescc' => '⪨', - 'lesdot' => '⩿', - 'lesdoto' => '⪁', - 'lesdotor' => '⪃', - 'lesg' => '⋚︀', - 'lesges' => '⪓', - 'lessapprox' => '⪅', - 'lessdot' => '⋖', - 'lesseqgtr' => '⋚', - 'lesseqqgtr' => '⪋', - 'LessEqualGreater' => '⋚', - 'LessFullEqual' => '≦', - 'LessGreater' => '≶', - 'lessgtr' => '≶', - 'LessLess' => '⪡', - 'lesssim' => '≲', - 'LessSlantEqual' => '⩽', - 'LessTilde' => '≲', - 'lfisht' => '⥼', - 'lfloor' => '⌊', - 'Lfr' => '𝔏', - 'lfr' => '𝔩', - 'lg' => '≶', - 'lgE' => '⪑', - 'lHar' => '⥢', - 'lhard' => '↽', - 'lharu' => '↼', - 'lharul' => '⥪', - 'lhblk' => '▄', - 'LJcy' => 'Љ', - 'ljcy' => 'љ', - 'Ll' => '⋘', - 'll' => '≪', - 'llarr' => '⇇', - 'llcorner' => '⌞', - 'Lleftarrow' => '⇚', - 'llhard' => '⥫', - 'lltri' => '◺', - 'Lmidot' => 'Ŀ', - 'lmidot' => 'ŀ', - 'lmoust' => '⎰', - 'lmoustache' => '⎰', - 'lnap' => '⪉', - 'lnapprox' => '⪉', - 'lnE' => '≨', - 'lne' => '⪇', - 'lneq' => '⪇', - 'lneqq' => '≨', - 'lnsim' => '⋦', - 'loang' => '⟬', - 'loarr' => '⇽', - 'lobrk' => '⟦', - 'LongLeftArrow' => '⟵', - 'Longleftarrow' => '⟸', - 'longleftarrow' => '⟵', - 'LongLeftRightArrow' => '⟷', - 'Longleftrightarrow' => '⟺', - 'longleftrightarrow' => '⟷', - 'longmapsto' => '⟼', - 'LongRightArrow' => '⟶', - 'Longrightarrow' => '⟹', - 'longrightarrow' => '⟶', - 'looparrowleft' => '↫', - 'looparrowright' => '↬', - 'lopar' => '⦅', - 'Lopf' => '𝕃', - 'lopf' => '𝕝', - 'loplus' => '⨭', - 'lotimes' => '⨴', - 'lowast' => '∗', - 'lowbar' => '_', - 'LowerLeftArrow' => '↙', - 'LowerRightArrow' => '↘', - 'loz' => '◊', - 'lozenge' => '◊', - 'lozf' => '⧫', - 'lpar' => '(', - 'lparlt' => '⦓', - 'lrarr' => '⇆', - 'lrcorner' => '⌟', - 'lrhar' => '⇋', - 'lrhard' => '⥭', - 'lrm' => '‎', - 'lrtri' => '⊿', - 'lsaquo' => '‹', - 'Lscr' => 'ℒ', - 'lscr' => '𝓁', - 'Lsh' => '↰', - 'lsh' => '↰', - 'lsim' => '≲', - 'lsime' => '⪍', - 'lsimg' => '⪏', - 'lsqb' => '[', - 'lsquo' => '‘', - 'lsquor' => '‚', - 'Lstrok' => 'Ł', - 'lstrok' => 'ł', - 'LT' => '<', - 'L' => '<', - 'Lt' => '≪', - 'lt' => '<', - 'l' => '<', - 'ltcc' => '⪦', - 'ltcir' => '⩹', - 'ltdot' => '⋖', - 'lthree' => '⋋', - 'ltimes' => '⋉', - 'ltlarr' => '⥶', - 'ltquest' => '⩻', - 'ltri' => '◃', - 'ltrie' => '⊴', - 'ltrif' => '◂', - 'ltrPar' => '⦖', - 'lurdshar' => '⥊', - 'luruhar' => '⥦', - 'lvertneqq' => '≨︀', - 'lvnE' => '≨︀', - 'macr' => '¯', - 'mac' => '¯', - 'male' => '♂', - 'malt' => '✠', - 'maltese' => '✠', - 'Map' => '⤅', - 'map' => '↦', - 'mapsto' => '↦', - 'mapstodown' => '↧', - 'mapstoleft' => '↤', - 'mapstoup' => '↥', - 'marker' => '▮', - 'mcomma' => '⨩', - 'Mcy' => 'М', - 'mcy' => 'м', - 'mdash' => '—', - 'mDDot' => '∺', - 'measuredangle' => '∡', - 'MediumSpace' => ' ', - 'Mellintrf' => 'ℳ', - 'Mfr' => '𝔐', - 'mfr' => '𝔪', - 'mho' => '℧', - 'micro' => 'µ', - 'micr' => 'µ', - 'mid' => '∣', - 'midast' => '*', - 'midcir' => '⫰', - 'middot' => '·', - 'middo' => '·', - 'minus' => '−', - 'minusb' => '⊟', - 'minusd' => '∸', - 'minusdu' => '⨪', - 'MinusPlus' => '∓', - 'mlcp' => '⫛', - 'mldr' => '…', - 'mnplus' => '∓', - 'models' => '⊧', - 'Mopf' => '𝕄', - 'mopf' => '𝕞', - 'mp' => '∓', - 'Mscr' => 'ℳ', - 'mscr' => '𝓂', - 'mstpos' => '∾', - 'Mu' => 'Μ', - 'mu' => 'μ', - 'multimap' => '⊸', - 'mumap' => '⊸', - 'nabla' => '∇', - 'Nacute' => 'Ń', - 'nacute' => 'ń', - 'nang' => '∠⃒', - 'nap' => '≉', - 'napE' => '⩰̸', - 'napid' => '≋̸', - 'napos' => 'ʼn', - 'napprox' => '≉', - 'natur' => '♮', - 'natural' => '♮', - 'naturals' => 'ℕ', - 'nbsp' => ' ', - 'nbs' => ' ', - 'nbump' => '≎̸', - 'nbumpe' => '≏̸', - 'ncap' => '⩃', - 'Ncaron' => 'Ň', - 'ncaron' => 'ň', - 'Ncedil' => 'Ņ', - 'ncedil' => 'ņ', - 'ncong' => '≇', - 'ncongdot' => '⩭̸', - 'ncup' => '⩂', - 'Ncy' => 'Н', - 'ncy' => 'н', - 'ndash' => '–', - 'ne' => '≠', - 'nearhk' => '⤤', - 'neArr' => '⇗', - 'nearr' => '↗', - 'nearrow' => '↗', - 'nedot' => '≐̸', - 'NegativeMediumSpace' => '​', - 'NegativeThickSpace' => '​', - 'NegativeThinSpace' => '​', - 'NegativeVeryThinSpace' => '​', - 'nequiv' => '≢', - 'nesear' => '⤨', - 'nesim' => '≂̸', - 'NestedGreaterGreater' => '≫', - 'NestedLessLess' => '≪', - 'NewLine' => ' -', - 'nexist' => '∄', - 'nexists' => '∄', - 'Nfr' => '𝔑', - 'nfr' => '𝔫', - 'ngE' => '≧̸', - 'nge' => '≱', - 'ngeq' => '≱', - 'ngeqq' => '≧̸', - 'ngeqslant' => '⩾̸', - 'nges' => '⩾̸', - 'nGg' => '⋙̸', - 'ngsim' => '≵', - 'nGt' => '≫⃒', - 'ngt' => '≯', - 'ngtr' => '≯', - 'nGtv' => '≫̸', - 'nhArr' => '⇎', - 'nharr' => '↮', - 'nhpar' => '⫲', - 'ni' => '∋', - 'nis' => '⋼', - 'nisd' => '⋺', - 'niv' => '∋', - 'NJcy' => 'Њ', - 'njcy' => 'њ', - 'nlArr' => '⇍', - 'nlarr' => '↚', - 'nldr' => '‥', - 'nlE' => '≦̸', - 'nle' => '≰', - 'nLeftarrow' => '⇍', - 'nleftarrow' => '↚', - 'nLeftrightarrow' => '⇎', - 'nleftrightarrow' => '↮', - 'nleq' => '≰', - 'nleqq' => '≦̸', - 'nleqslant' => '⩽̸', - 'nles' => '⩽̸', - 'nless' => '≮', - 'nLl' => '⋘̸', - 'nlsim' => '≴', - 'nLt' => '≪⃒', - 'nlt' => '≮', - 'nltri' => '⋪', - 'nltrie' => '⋬', - 'nLtv' => '≪̸', - 'nmid' => '∤', - 'NoBreak' => '⁠', - 'NonBreakingSpace' => ' ', - 'Nopf' => 'ℕ', - 'nopf' => '𝕟', - 'Not' => '⫬', - 'not' => '¬', - 'no' => '¬', - 'NotCongruent' => '≢', - 'NotCupCap' => '≭', - 'NotDoubleVerticalBar' => '∦', - 'NotElement' => '∉', - 'NotEqual' => '≠', - 'NotEqualTilde' => '≂̸', - 'NotExists' => '∄', - 'NotGreater' => '≯', - 'NotGreaterEqual' => '≱', - 'NotGreaterFullEqual' => '≧̸', - 'NotGreaterGreater' => '≫̸', - 'NotGreaterLess' => '≹', - 'NotGreaterSlantEqual' => '⩾̸', - 'NotGreaterTilde' => '≵', - 'NotHumpDownHump' => '≎̸', - 'NotHumpEqual' => '≏̸', - 'notin' => '∉', - 'notindot' => '⋵̸', - 'notinE' => '⋹̸', - 'notinva' => '∉', - 'notinvb' => '⋷', - 'notinvc' => '⋶', - 'NotLeftTriangle' => '⋪', - 'NotLeftTriangleBar' => '⧏̸', - 'NotLeftTriangleEqual' => '⋬', - 'NotLess' => '≮', - 'NotLessEqual' => '≰', - 'NotLessGreater' => '≸', - 'NotLessLess' => '≪̸', - 'NotLessSlantEqual' => '⩽̸', - 'NotLessTilde' => '≴', - 'NotNestedGreaterGreater' => '⪢̸', - 'NotNestedLessLess' => '⪡̸', - 'notni' => '∌', - 'notniva' => '∌', - 'notnivb' => '⋾', - 'notnivc' => '⋽', - 'NotPrecedes' => '⊀', - 'NotPrecedesEqual' => '⪯̸', - 'NotPrecedesSlantEqual' => '⋠', - 'NotReverseElement' => '∌', - 'NotRightTriangle' => '⋫', - 'NotRightTriangleBar' => '⧐̸', - 'NotRightTriangleEqual' => '⋭', - 'NotSquareSubset' => '⊏̸', - 'NotSquareSubsetEqual' => '⋢', - 'NotSquareSuperset' => '⊐̸', - 'NotSquareSupersetEqual' => '⋣', - 'NotSubset' => '⊂⃒', - 'NotSubsetEqual' => '⊈', - 'NotSucceeds' => '⊁', - 'NotSucceedsEqual' => '⪰̸', - 'NotSucceedsSlantEqual' => '⋡', - 'NotSucceedsTilde' => '≿̸', - 'NotSuperset' => '⊃⃒', - 'NotSupersetEqual' => '⊉', - 'NotTilde' => '≁', - 'NotTildeEqual' => '≄', - 'NotTildeFullEqual' => '≇', - 'NotTildeTilde' => '≉', - 'NotVerticalBar' => '∤', - 'npar' => '∦', - 'nparallel' => '∦', - 'nparsl' => '⫽⃥', - 'npart' => '∂̸', - 'npolint' => '⨔', - 'npr' => '⊀', - 'nprcue' => '⋠', - 'npre' => '⪯̸', - 'nprec' => '⊀', - 'npreceq' => '⪯̸', - 'nrArr' => '⇏', - 'nrarr' => '↛', - 'nrarrc' => '⤳̸', - 'nrarrw' => '↝̸', - 'nRightarrow' => '⇏', - 'nrightarrow' => '↛', - 'nrtri' => '⋫', - 'nrtrie' => '⋭', - 'nsc' => '⊁', - 'nsccue' => '⋡', - 'nsce' => '⪰̸', - 'Nscr' => '𝒩', - 'nscr' => '𝓃', - 'nshortmid' => '∤', - 'nshortparallel' => '∦', - 'nsim' => '≁', - 'nsime' => '≄', - 'nsimeq' => '≄', - 'nsmid' => '∤', - 'nspar' => '∦', - 'nsqsube' => '⋢', - 'nsqsupe' => '⋣', - 'nsub' => '⊄', - 'nsubE' => '⫅̸', - 'nsube' => '⊈', - 'nsubset' => '⊂⃒', - 'nsubseteq' => '⊈', - 'nsubseteqq' => '⫅̸', - 'nsucc' => '⊁', - 'nsucceq' => '⪰̸', - 'nsup' => '⊅', - 'nsupE' => '⫆̸', - 'nsupe' => '⊉', - 'nsupset' => '⊃⃒', - 'nsupseteq' => '⊉', - 'nsupseteqq' => '⫆̸', - 'ntgl' => '≹', - 'Ntilde' => 'Ñ', - 'Ntild' => 'Ñ', - 'ntilde' => 'ñ', - 'ntild' => 'ñ', - 'ntlg' => '≸', - 'ntriangleleft' => '⋪', - 'ntrianglelefteq' => '⋬', - 'ntriangleright' => '⋫', - 'ntrianglerighteq' => '⋭', - 'Nu' => 'Ν', - 'nu' => 'ν', - 'num' => '#', - 'numero' => '№', - 'numsp' => ' ', - 'nvap' => '≍⃒', - 'nVDash' => '⊯', - 'nVdash' => '⊮', - 'nvDash' => '⊭', - 'nvdash' => '⊬', - 'nvge' => '≥⃒', - 'nvgt' => '>⃒', - 'nvHarr' => '⤄', - 'nvinfin' => '⧞', - 'nvlArr' => '⤂', - 'nvle' => '≤⃒', - 'nvlt' => '<⃒', - 'nvltrie' => '⊴⃒', - 'nvrArr' => '⤃', - 'nvrtrie' => '⊵⃒', - 'nvsim' => '∼⃒', - 'nwarhk' => '⤣', - 'nwArr' => '⇖', - 'nwarr' => '↖', - 'nwarrow' => '↖', - 'nwnear' => '⤧', - 'Oacute' => 'Ó', - 'Oacut' => 'Ó', - 'oacute' => 'ó', - 'oacut' => 'ó', - 'oast' => '⊛', - 'ocir' => 'ô', - 'Ocirc' => 'Ô', - 'Ocir' => 'Ô', - 'ocirc' => 'ô', - 'Ocy' => 'О', - 'ocy' => 'о', - 'odash' => '⊝', - 'Odblac' => 'Ő', - 'odblac' => 'ő', - 'odiv' => '⨸', - 'odot' => '⊙', - 'odsold' => '⦼', - 'OElig' => 'Œ', - 'oelig' => 'œ', - 'ofcir' => '⦿', - 'Ofr' => '𝔒', - 'ofr' => '𝔬', - 'ogon' => '˛', - 'Ograve' => 'Ò', - 'Ograv' => 'Ò', - 'ograve' => 'ò', - 'ograv' => 'ò', - 'ogt' => '⧁', - 'ohbar' => '⦵', - 'ohm' => 'Ω', - 'oint' => '∮', - 'olarr' => '↺', - 'olcir' => '⦾', - 'olcross' => '⦻', - 'oline' => '‾', - 'olt' => '⧀', - 'Omacr' => 'Ō', - 'omacr' => 'ō', - 'Omega' => 'Ω', - 'omega' => 'ω', - 'Omicron' => 'Ο', - 'omicron' => 'ο', - 'omid' => '⦶', - 'ominus' => '⊖', - 'Oopf' => '𝕆', - 'oopf' => '𝕠', - 'opar' => '⦷', - 'OpenCurlyDoubleQuote' => '“', - 'OpenCurlyQuote' => '‘', - 'operp' => '⦹', - 'oplus' => '⊕', - 'Or' => '⩔', - 'or' => '∨', - 'orarr' => '↻', - 'ord' => 'º', - 'order' => 'ℴ', - 'orderof' => 'ℴ', - 'ordf' => 'ª', - 'ordm' => 'º', - 'origof' => '⊶', - 'oror' => '⩖', - 'orslope' => '⩗', - 'orv' => '⩛', - 'oS' => 'Ⓢ', - 'Oscr' => '𝒪', - 'oscr' => 'ℴ', - 'Oslash' => 'Ø', - 'Oslas' => 'Ø', - 'oslash' => 'ø', - 'oslas' => 'ø', - 'osol' => '⊘', - 'Otilde' => 'Õ', - 'Otild' => 'Õ', - 'otilde' => 'õ', - 'otild' => 'õ', - 'Otimes' => '⨷', - 'otimes' => '⊗', - 'otimesas' => '⨶', - 'Ouml' => 'Ö', - 'Oum' => 'Ö', - 'ouml' => 'ö', - 'oum' => 'ö', - 'ovbar' => '⌽', - 'OverBar' => '‾', - 'OverBrace' => '⏞', - 'OverBracket' => '⎴', - 'OverParenthesis' => '⏜', - 'par' => '¶', - 'para' => '¶', - 'parallel' => '∥', - 'parsim' => '⫳', - 'parsl' => '⫽', - 'part' => '∂', - 'PartialD' => '∂', - 'Pcy' => 'П', - 'pcy' => 'п', - 'percnt' => '%', - 'period' => '.', - 'permil' => '‰', - 'perp' => '⊥', - 'pertenk' => '‱', - 'Pfr' => '𝔓', - 'pfr' => '𝔭', - 'Phi' => 'Φ', - 'phi' => 'φ', - 'phiv' => 'ϕ', - 'phmmat' => 'ℳ', - 'phone' => '☎', - 'Pi' => 'Π', - 'pi' => 'π', - 'pitchfork' => '⋔', - 'piv' => 'ϖ', - 'planck' => 'ℏ', - 'planckh' => 'ℎ', - 'plankv' => 'ℏ', - 'plus' => '+', - 'plusacir' => '⨣', - 'plusb' => '⊞', - 'pluscir' => '⨢', - 'plusdo' => '∔', - 'plusdu' => '⨥', - 'pluse' => '⩲', - 'PlusMinus' => '±', - 'plusmn' => '±', - 'plusm' => '±', - 'plussim' => '⨦', - 'plustwo' => '⨧', - 'pm' => '±', - 'Poincareplane' => 'ℌ', - 'pointint' => '⨕', - 'Popf' => 'ℙ', - 'popf' => '𝕡', - 'pound' => '£', - 'poun' => '£', - 'Pr' => '⪻', - 'pr' => '≺', - 'prap' => '⪷', - 'prcue' => '≼', - 'prE' => '⪳', - 'pre' => '⪯', - 'prec' => '≺', - 'precapprox' => '⪷', - 'preccurlyeq' => '≼', - 'Precedes' => '≺', - 'PrecedesEqual' => '⪯', - 'PrecedesSlantEqual' => '≼', - 'PrecedesTilde' => '≾', - 'preceq' => '⪯', - 'precnapprox' => '⪹', - 'precneqq' => '⪵', - 'precnsim' => '⋨', - 'precsim' => '≾', - 'Prime' => '″', - 'prime' => '′', - 'primes' => 'ℙ', - 'prnap' => '⪹', - 'prnE' => '⪵', - 'prnsim' => '⋨', - 'prod' => '∏', - 'Product' => '∏', - 'profalar' => '⌮', - 'profline' => '⌒', - 'profsurf' => '⌓', - 'prop' => '∝', - 'Proportion' => '∷', - 'Proportional' => '∝', - 'propto' => '∝', - 'prsim' => '≾', - 'prurel' => '⊰', - 'Pscr' => '𝒫', - 'pscr' => '𝓅', - 'Psi' => 'Ψ', - 'psi' => 'ψ', - 'puncsp' => ' ', - 'Qfr' => '𝔔', - 'qfr' => '𝔮', - 'qint' => '⨌', - 'Qopf' => 'ℚ', - 'qopf' => '𝕢', - 'qprime' => '⁗', - 'Qscr' => '𝒬', - 'qscr' => '𝓆', - 'quaternions' => 'ℍ', - 'quatint' => '⨖', - 'quest' => '?', - 'questeq' => '≟', - 'QUOT' => '"', - 'QUO' => '"', - 'quot' => '"', - 'quo' => '"', - 'rAarr' => '⇛', - 'race' => '∽̱', - 'Racute' => 'Ŕ', - 'racute' => 'ŕ', - 'radic' => '√', - 'raemptyv' => '⦳', - 'Rang' => '⟫', - 'rang' => '⟩', - 'rangd' => '⦒', - 'range' => '⦥', - 'rangle' => '⟩', - 'raquo' => '»', - 'raqu' => '»', - 'Rarr' => '↠', - 'rArr' => '⇒', - 'rarr' => '→', - 'rarrap' => '⥵', - 'rarrb' => '⇥', - 'rarrbfs' => '⤠', - 'rarrc' => '⤳', - 'rarrfs' => '⤞', - 'rarrhk' => '↪', - 'rarrlp' => '↬', - 'rarrpl' => '⥅', - 'rarrsim' => '⥴', - 'Rarrtl' => '⤖', - 'rarrtl' => '↣', - 'rarrw' => '↝', - 'rAtail' => '⤜', - 'ratail' => '⤚', - 'ratio' => '∶', - 'rationals' => 'ℚ', - 'RBarr' => '⤐', - 'rBarr' => '⤏', - 'rbarr' => '⤍', - 'rbbrk' => '❳', - 'rbrace' => '}', - 'rbrack' => ']', - 'rbrke' => '⦌', - 'rbrksld' => '⦎', - 'rbrkslu' => '⦐', - 'Rcaron' => 'Ř', - 'rcaron' => 'ř', - 'Rcedil' => 'Ŗ', - 'rcedil' => 'ŗ', - 'rceil' => '⌉', - 'rcub' => '}', - 'Rcy' => 'Р', - 'rcy' => 'р', - 'rdca' => '⤷', - 'rdldhar' => '⥩', - 'rdquo' => '”', - 'rdquor' => '”', - 'rdsh' => '↳', - 'Re' => 'ℜ', - 'real' => 'ℜ', - 'realine' => 'ℛ', - 'realpart' => 'ℜ', - 'reals' => 'ℝ', - 'rect' => '▭', - 'REG' => '®', - 'RE' => '®', - 'reg' => '®', - 're' => '®', - 'ReverseElement' => '∋', - 'ReverseEquilibrium' => '⇋', - 'ReverseUpEquilibrium' => '⥯', - 'rfisht' => '⥽', - 'rfloor' => '⌋', - 'Rfr' => 'ℜ', - 'rfr' => '𝔯', - 'rHar' => '⥤', - 'rhard' => '⇁', - 'rharu' => '⇀', - 'rharul' => '⥬', - 'Rho' => 'Ρ', - 'rho' => 'ρ', - 'rhov' => 'ϱ', - 'RightAngleBracket' => '⟩', - 'RightArrow' => '→', - 'Rightarrow' => '⇒', - 'rightarrow' => '→', - 'RightArrowBar' => '⇥', - 'RightArrowLeftArrow' => '⇄', - 'rightarrowtail' => '↣', - 'RightCeiling' => '⌉', - 'RightDoubleBracket' => '⟧', - 'RightDownTeeVector' => '⥝', - 'RightDownVector' => '⇂', - 'RightDownVectorBar' => '⥕', - 'RightFloor' => '⌋', - 'rightharpoondown' => '⇁', - 'rightharpoonup' => '⇀', - 'rightleftarrows' => '⇄', - 'rightleftharpoons' => '⇌', - 'rightrightarrows' => '⇉', - 'rightsquigarrow' => '↝', - 'RightTee' => '⊢', - 'RightTeeArrow' => '↦', - 'RightTeeVector' => '⥛', - 'rightthreetimes' => '⋌', - 'RightTriangle' => '⊳', - 'RightTriangleBar' => '⧐', - 'RightTriangleEqual' => '⊵', - 'RightUpDownVector' => '⥏', - 'RightUpTeeVector' => '⥜', - 'RightUpVector' => '↾', - 'RightUpVectorBar' => '⥔', - 'RightVector' => '⇀', - 'RightVectorBar' => '⥓', - 'ring' => '˚', - 'risingdotseq' => '≓', - 'rlarr' => '⇄', - 'rlhar' => '⇌', - 'rlm' => '‏', - 'rmoust' => '⎱', - 'rmoustache' => '⎱', - 'rnmid' => '⫮', - 'roang' => '⟭', - 'roarr' => '⇾', - 'robrk' => '⟧', - 'ropar' => '⦆', - 'Ropf' => 'ℝ', - 'ropf' => '𝕣', - 'roplus' => '⨮', - 'rotimes' => '⨵', - 'RoundImplies' => '⥰', - 'rpar' => ')', - 'rpargt' => '⦔', - 'rppolint' => '⨒', - 'rrarr' => '⇉', - 'Rrightarrow' => '⇛', - 'rsaquo' => '›', - 'Rscr' => 'ℛ', - 'rscr' => '𝓇', - 'Rsh' => '↱', - 'rsh' => '↱', - 'rsqb' => ']', - 'rsquo' => '’', - 'rsquor' => '’', - 'rthree' => '⋌', - 'rtimes' => '⋊', - 'rtri' => '▹', - 'rtrie' => '⊵', - 'rtrif' => '▸', - 'rtriltri' => '⧎', - 'RuleDelayed' => '⧴', - 'ruluhar' => '⥨', - 'rx' => '℞', - 'Sacute' => 'Ś', - 'sacute' => 'ś', - 'sbquo' => '‚', - 'Sc' => '⪼', - 'sc' => '≻', - 'scap' => '⪸', - 'Scaron' => 'Š', - 'scaron' => 'š', - 'sccue' => '≽', - 'scE' => '⪴', - 'sce' => '⪰', - 'Scedil' => 'Ş', - 'scedil' => 'ş', - 'Scirc' => 'Ŝ', - 'scirc' => 'ŝ', - 'scnap' => '⪺', - 'scnE' => '⪶', - 'scnsim' => '⋩', - 'scpolint' => '⨓', - 'scsim' => '≿', - 'Scy' => 'С', - 'scy' => 'с', - 'sdot' => '⋅', - 'sdotb' => '⊡', - 'sdote' => '⩦', - 'searhk' => '⤥', - 'seArr' => '⇘', - 'searr' => '↘', - 'searrow' => '↘', - 'sect' => '§', - 'sec' => '§', - 'semi' => ';', - 'seswar' => '⤩', - 'setminus' => '∖', - 'setmn' => '∖', - 'sext' => '✶', - 'Sfr' => '𝔖', - 'sfr' => '𝔰', - 'sfrown' => '⌢', - 'sharp' => '♯', - 'SHCHcy' => 'Щ', - 'shchcy' => 'щ', - 'SHcy' => 'Ш', - 'shcy' => 'ш', - 'ShortDownArrow' => '↓', - 'ShortLeftArrow' => '←', - 'shortmid' => '∣', - 'shortparallel' => '∥', - 'ShortRightArrow' => '→', - 'ShortUpArrow' => '↑', - 'shy' => '­', - 'sh' => '­', - 'Sigma' => 'Σ', - 'sigma' => 'σ', - 'sigmaf' => 'ς', - 'sigmav' => 'ς', - 'sim' => '∼', - 'simdot' => '⩪', - 'sime' => '≃', - 'simeq' => '≃', - 'simg' => '⪞', - 'simgE' => '⪠', - 'siml' => '⪝', - 'simlE' => '⪟', - 'simne' => '≆', - 'simplus' => '⨤', - 'simrarr' => '⥲', - 'slarr' => '←', - 'SmallCircle' => '∘', - 'smallsetminus' => '∖', - 'smashp' => '⨳', - 'smeparsl' => '⧤', - 'smid' => '∣', - 'smile' => '⌣', - 'smt' => '⪪', - 'smte' => '⪬', - 'smtes' => '⪬︀', - 'SOFTcy' => 'Ь', - 'softcy' => 'ь', - 'sol' => '/', - 'solb' => '⧄', - 'solbar' => '⌿', - 'Sopf' => '𝕊', - 'sopf' => '𝕤', - 'spades' => '♠', - 'spadesuit' => '♠', - 'spar' => '∥', - 'sqcap' => '⊓', - 'sqcaps' => '⊓︀', - 'sqcup' => '⊔', - 'sqcups' => '⊔︀', - 'Sqrt' => '√', - 'sqsub' => '⊏', - 'sqsube' => '⊑', - 'sqsubset' => '⊏', - 'sqsubseteq' => '⊑', - 'sqsup' => '⊐', - 'sqsupe' => '⊒', - 'sqsupset' => '⊐', - 'sqsupseteq' => '⊒', - 'squ' => '□', - 'Square' => '□', - 'square' => '□', - 'SquareIntersection' => '⊓', - 'SquareSubset' => '⊏', - 'SquareSubsetEqual' => '⊑', - 'SquareSuperset' => '⊐', - 'SquareSupersetEqual' => '⊒', - 'SquareUnion' => '⊔', - 'squarf' => '▪', - 'squf' => '▪', - 'srarr' => '→', - 'Sscr' => '𝒮', - 'sscr' => '𝓈', - 'ssetmn' => '∖', - 'ssmile' => '⌣', - 'sstarf' => '⋆', - 'Star' => '⋆', - 'star' => '☆', - 'starf' => '★', - 'straightepsilon' => 'ϵ', - 'straightphi' => 'ϕ', - 'strns' => '¯', - 'Sub' => '⋐', - 'sub' => '⊂', - 'subdot' => '⪽', - 'subE' => '⫅', - 'sube' => '⊆', - 'subedot' => '⫃', - 'submult' => '⫁', - 'subnE' => '⫋', - 'subne' => '⊊', - 'subplus' => '⪿', - 'subrarr' => '⥹', - 'Subset' => '⋐', - 'subset' => '⊂', - 'subseteq' => '⊆', - 'subseteqq' => '⫅', - 'SubsetEqual' => '⊆', - 'subsetneq' => '⊊', - 'subsetneqq' => '⫋', - 'subsim' => '⫇', - 'subsub' => '⫕', - 'subsup' => '⫓', - 'succ' => '≻', - 'succapprox' => '⪸', - 'succcurlyeq' => '≽', - 'Succeeds' => '≻', - 'SucceedsEqual' => '⪰', - 'SucceedsSlantEqual' => '≽', - 'SucceedsTilde' => '≿', - 'succeq' => '⪰', - 'succnapprox' => '⪺', - 'succneqq' => '⪶', - 'succnsim' => '⋩', - 'succsim' => '≿', - 'SuchThat' => '∋', - 'Sum' => '∑', - 'sum' => '∑', - 'sung' => '♪', - 'Sup' => '⋑', - 'sup' => '³', - 'sup1' => '¹', - 'sup2' => '²', - 'sup3' => '³', - 'supdot' => '⪾', - 'supdsub' => '⫘', - 'supE' => '⫆', - 'supe' => '⊇', - 'supedot' => '⫄', - 'Superset' => '⊃', - 'SupersetEqual' => '⊇', - 'suphsol' => '⟉', - 'suphsub' => '⫗', - 'suplarr' => '⥻', - 'supmult' => '⫂', - 'supnE' => '⫌', - 'supne' => '⊋', - 'supplus' => '⫀', - 'Supset' => '⋑', - 'supset' => '⊃', - 'supseteq' => '⊇', - 'supseteqq' => '⫆', - 'supsetneq' => '⊋', - 'supsetneqq' => '⫌', - 'supsim' => '⫈', - 'supsub' => '⫔', - 'supsup' => '⫖', - 'swarhk' => '⤦', - 'swArr' => '⇙', - 'swarr' => '↙', - 'swarrow' => '↙', - 'swnwar' => '⤪', - 'szlig' => 'ß', - 'szli' => 'ß', - 'Tab' => ' ', - 'target' => '⌖', - 'Tau' => 'Τ', - 'tau' => 'τ', - 'tbrk' => '⎴', - 'Tcaron' => 'Ť', - 'tcaron' => 'ť', - 'Tcedil' => 'Ţ', - 'tcedil' => 'ţ', - 'Tcy' => 'Т', - 'tcy' => 'т', - 'tdot' => '⃛', - 'telrec' => '⌕', - 'Tfr' => '𝔗', - 'tfr' => '𝔱', - 'there4' => '∴', - 'Therefore' => '∴', - 'therefore' => '∴', - 'Theta' => 'Θ', - 'theta' => 'θ', - 'thetasym' => 'ϑ', - 'thetav' => 'ϑ', - 'thickapprox' => '≈', - 'thicksim' => '∼', - 'ThickSpace' => '  ', - 'thinsp' => ' ', - 'ThinSpace' => ' ', - 'thkap' => '≈', - 'thksim' => '∼', - 'THORN' => 'Þ', - 'THOR' => 'Þ', - 'thorn' => 'þ', - 'thor' => 'þ', - 'Tilde' => '∼', - 'tilde' => '˜', - 'TildeEqual' => '≃', - 'TildeFullEqual' => '≅', - 'TildeTilde' => '≈', - 'times' => '×', - 'time' => '×', - 'timesb' => '⊠', - 'timesbar' => '⨱', - 'timesd' => '⨰', - 'tint' => '∭', - 'toea' => '⤨', - 'top' => '⊤', - 'topbot' => '⌶', - 'topcir' => '⫱', - 'Topf' => '𝕋', - 'topf' => '𝕥', - 'topfork' => '⫚', - 'tosa' => '⤩', - 'tprime' => '‴', - 'TRADE' => '™', - 'trade' => '™', - 'triangle' => '▵', - 'triangledown' => '▿', - 'triangleleft' => '◃', - 'trianglelefteq' => '⊴', - 'triangleq' => '≜', - 'triangleright' => '▹', - 'trianglerighteq' => '⊵', - 'tridot' => '◬', - 'trie' => '≜', - 'triminus' => '⨺', - 'TripleDot' => '⃛', - 'triplus' => '⨹', - 'trisb' => '⧍', - 'tritime' => '⨻', - 'trpezium' => '⏢', - 'Tscr' => '𝒯', - 'tscr' => '𝓉', - 'TScy' => 'Ц', - 'tscy' => 'ц', - 'TSHcy' => 'Ћ', - 'tshcy' => 'ћ', - 'Tstrok' => 'Ŧ', - 'tstrok' => 'ŧ', - 'twixt' => '≬', - 'twoheadleftarrow' => '↞', - 'twoheadrightarrow' => '↠', - 'Uacute' => 'Ú', - 'Uacut' => 'Ú', - 'uacute' => 'ú', - 'uacut' => 'ú', - 'Uarr' => '↟', - 'uArr' => '⇑', - 'uarr' => '↑', - 'Uarrocir' => '⥉', - 'Ubrcy' => 'Ў', - 'ubrcy' => 'ў', - 'Ubreve' => 'Ŭ', - 'ubreve' => 'ŭ', - 'Ucirc' => 'Û', - 'Ucir' => 'Û', - 'ucirc' => 'û', - 'ucir' => 'û', - 'Ucy' => 'У', - 'ucy' => 'у', - 'udarr' => '⇅', - 'Udblac' => 'Ű', - 'udblac' => 'ű', - 'udhar' => '⥮', - 'ufisht' => '⥾', - 'Ufr' => '𝔘', - 'ufr' => '𝔲', - 'Ugrave' => 'Ù', - 'Ugrav' => 'Ù', - 'ugrave' => 'ù', - 'ugrav' => 'ù', - 'uHar' => '⥣', - 'uharl' => '↿', - 'uharr' => '↾', - 'uhblk' => '▀', - 'ulcorn' => '⌜', - 'ulcorner' => '⌜', - 'ulcrop' => '⌏', - 'ultri' => '◸', - 'Umacr' => 'Ū', - 'umacr' => 'ū', - 'uml' => '¨', - 'um' => '¨', - 'UnderBar' => '_', - 'UnderBrace' => '⏟', - 'UnderBracket' => '⎵', - 'UnderParenthesis' => '⏝', - 'Union' => '⋃', - 'UnionPlus' => '⊎', - 'Uogon' => 'Ų', - 'uogon' => 'ų', - 'Uopf' => '𝕌', - 'uopf' => '𝕦', - 'UpArrow' => '↑', - 'Uparrow' => '⇑', - 'uparrow' => '↑', - 'UpArrowBar' => '⤒', - 'UpArrowDownArrow' => '⇅', - 'UpDownArrow' => '↕', - 'Updownarrow' => '⇕', - 'updownarrow' => '↕', - 'UpEquilibrium' => '⥮', - 'upharpoonleft' => '↿', - 'upharpoonright' => '↾', - 'uplus' => '⊎', - 'UpperLeftArrow' => '↖', - 'UpperRightArrow' => '↗', - 'Upsi' => 'ϒ', - 'upsi' => 'υ', - 'upsih' => 'ϒ', - 'Upsilon' => 'Υ', - 'upsilon' => 'υ', - 'UpTee' => '⊥', - 'UpTeeArrow' => '↥', - 'upuparrows' => '⇈', - 'urcorn' => '⌝', - 'urcorner' => '⌝', - 'urcrop' => '⌎', - 'Uring' => 'Ů', - 'uring' => 'ů', - 'urtri' => '◹', - 'Uscr' => '𝒰', - 'uscr' => '𝓊', - 'utdot' => '⋰', - 'Utilde' => 'Ũ', - 'utilde' => 'ũ', - 'utri' => '▵', - 'utrif' => '▴', - 'uuarr' => '⇈', - 'Uuml' => 'Ü', - 'Uum' => 'Ü', - 'uuml' => 'ü', - 'uum' => 'ü', - 'uwangle' => '⦧', - 'vangrt' => '⦜', - 'varepsilon' => 'ϵ', - 'varkappa' => 'ϰ', - 'varnothing' => '∅', - 'varphi' => 'ϕ', - 'varpi' => 'ϖ', - 'varpropto' => '∝', - 'vArr' => '⇕', - 'varr' => '↕', - 'varrho' => 'ϱ', - 'varsigma' => 'ς', - 'varsubsetneq' => '⊊︀', - 'varsubsetneqq' => '⫋︀', - 'varsupsetneq' => '⊋︀', - 'varsupsetneqq' => '⫌︀', - 'vartheta' => 'ϑ', - 'vartriangleleft' => '⊲', - 'vartriangleright' => '⊳', - 'Vbar' => '⫫', - 'vBar' => '⫨', - 'vBarv' => '⫩', - 'Vcy' => 'В', - 'vcy' => 'в', - 'VDash' => '⊫', - 'Vdash' => '⊩', - 'vDash' => '⊨', - 'vdash' => '⊢', - 'Vdashl' => '⫦', - 'Vee' => '⋁', - 'vee' => '∨', - 'veebar' => '⊻', - 'veeeq' => '≚', - 'vellip' => '⋮', - 'Verbar' => '‖', - 'verbar' => '|', - 'Vert' => '‖', - 'vert' => '|', - 'VerticalBar' => '∣', - 'VerticalLine' => '|', - 'VerticalSeparator' => '❘', - 'VerticalTilde' => '≀', - 'VeryThinSpace' => ' ', - 'Vfr' => '𝔙', - 'vfr' => '𝔳', - 'vltri' => '⊲', - 'vnsub' => '⊂⃒', - 'vnsup' => '⊃⃒', - 'Vopf' => '𝕍', - 'vopf' => '𝕧', - 'vprop' => '∝', - 'vrtri' => '⊳', - 'Vscr' => '𝒱', - 'vscr' => '𝓋', - 'vsubnE' => '⫋︀', - 'vsubne' => '⊊︀', - 'vsupnE' => '⫌︀', - 'vsupne' => '⊋︀', - 'Vvdash' => '⊪', - 'vzigzag' => '⦚', - 'Wcirc' => 'Ŵ', - 'wcirc' => 'ŵ', - 'wedbar' => '⩟', - 'Wedge' => '⋀', - 'wedge' => '∧', - 'wedgeq' => '≙', - 'weierp' => '℘', - 'Wfr' => '𝔚', - 'wfr' => '𝔴', - 'Wopf' => '𝕎', - 'wopf' => '𝕨', - 'wp' => '℘', - 'wr' => '≀', - 'wreath' => '≀', - 'Wscr' => '𝒲', - 'wscr' => '𝓌', - 'xcap' => '⋂', - 'xcirc' => '◯', - 'xcup' => '⋃', - 'xdtri' => '▽', - 'Xfr' => '𝔛', - 'xfr' => '𝔵', - 'xhArr' => '⟺', - 'xharr' => '⟷', - 'Xi' => 'Ξ', - 'xi' => 'ξ', - 'xlArr' => '⟸', - 'xlarr' => '⟵', - 'xmap' => '⟼', - 'xnis' => '⋻', - 'xodot' => '⨀', - 'Xopf' => '𝕏', - 'xopf' => '𝕩', - 'xoplus' => '⨁', - 'xotime' => '⨂', - 'xrArr' => '⟹', - 'xrarr' => '⟶', - 'Xscr' => '𝒳', - 'xscr' => '𝓍', - 'xsqcup' => '⨆', - 'xuplus' => '⨄', - 'xutri' => '△', - 'xvee' => '⋁', - 'xwedge' => '⋀', - 'Yacute' => 'Ý', - 'Yacut' => 'Ý', - 'yacute' => 'ý', - 'yacut' => 'ý', - 'YAcy' => 'Я', - 'yacy' => 'я', - 'Ycirc' => 'Ŷ', - 'ycirc' => 'ŷ', - 'Ycy' => 'Ы', - 'ycy' => 'ы', - 'yen' => '¥', - 'ye' => '¥', - 'Yfr' => '𝔜', - 'yfr' => '𝔶', - 'YIcy' => 'Ї', - 'yicy' => 'ї', - 'Yopf' => '𝕐', - 'yopf' => '𝕪', - 'Yscr' => '𝒴', - 'yscr' => '𝓎', - 'YUcy' => 'Ю', - 'yucy' => 'ю', - 'Yuml' => 'Ÿ', - 'yuml' => 'ÿ', - 'yum' => 'ÿ', - 'Zacute' => 'Ź', - 'zacute' => 'ź', - 'Zcaron' => 'Ž', - 'zcaron' => 'ž', - 'Zcy' => 'З', - 'zcy' => 'з', - 'Zdot' => 'Ż', - 'zdot' => 'ż', - 'zeetrf' => 'ℨ', - 'ZeroWidthSpace' => '​', - 'Zeta' => 'Ζ', - 'zeta' => 'ζ', - 'Zfr' => 'ℨ', - 'zfr' => '𝔷', - 'ZHcy' => 'Ж', - 'zhcy' => 'ж', - 'zigrarr' => '⇝', - 'Zopf' => 'ℤ', - 'zopf' => '𝕫', - 'Zscr' => '𝒵', - 'zscr' => '𝓏', - 'zwj' => '‍', - 'zwnj' => '‌', - ); -} diff --git a/docker/statistics/vendor/masterminds/html5/src/HTML5/Exception.php b/docker/statistics/vendor/masterminds/html5/src/HTML5/Exception.php deleted file mode 100644 index 64e97e6f..00000000 --- a/docker/statistics/vendor/masterminds/html5/src/HTML5/Exception.php +++ /dev/null @@ -1,10 +0,0 @@ - self::NAMESPACE_HTML, - 'svg' => self::NAMESPACE_SVG, - 'math' => self::NAMESPACE_MATHML, - ); - - /** - * Holds the always available namespaces (which does not require the XMLNS declaration). - * - * @var array - */ - protected $implicitNamespaces = array( - 'xml' => self::NAMESPACE_XML, - 'xmlns' => self::NAMESPACE_XMLNS, - 'xlink' => self::NAMESPACE_XLINK, - ); - - /** - * Holds a stack of currently active namespaces. - * - * @var array - */ - protected $nsStack = array(); - - /** - * Holds the number of namespaces declared by a node. - * - * @var array - */ - protected $pushes = array(); - - /** - * Defined in 8.2.5. - */ - const IM_INITIAL = 0; - - const IM_BEFORE_HTML = 1; - - const IM_BEFORE_HEAD = 2; - - const IM_IN_HEAD = 3; - - const IM_IN_HEAD_NOSCRIPT = 4; - - const IM_AFTER_HEAD = 5; - - const IM_IN_BODY = 6; - - const IM_TEXT = 7; - - const IM_IN_TABLE = 8; - - const IM_IN_TABLE_TEXT = 9; - - const IM_IN_CAPTION = 10; - - const IM_IN_COLUMN_GROUP = 11; - - const IM_IN_TABLE_BODY = 12; - - const IM_IN_ROW = 13; - - const IM_IN_CELL = 14; - - const IM_IN_SELECT = 15; - - const IM_IN_SELECT_IN_TABLE = 16; - - const IM_AFTER_BODY = 17; - - const IM_IN_FRAMESET = 18; - - const IM_AFTER_FRAMESET = 19; - - const IM_AFTER_AFTER_BODY = 20; - - const IM_AFTER_AFTER_FRAMESET = 21; - - const IM_IN_SVG = 22; - - const IM_IN_MATHML = 23; - - protected $options = array(); - - protected $stack = array(); - - protected $current; // Pointer in the tag hierarchy. - protected $rules; - protected $doc; - - protected $frag; - - protected $processor; - - protected $insertMode = 0; - - /** - * Track if we are in an element that allows only inline child nodes. - * - * @var string|null - */ - protected $onlyInline; - - /** - * Quirks mode is enabled by default. - * Any document that is missing the DT will be considered to be in quirks mode. - */ - protected $quirks = true; - - protected $errors = array(); - - public function __construct($isFragment = false, array $options = array()) - { - $this->options = $options; - - if (isset($options[self::OPT_TARGET_DOC])) { - $this->doc = $options[self::OPT_TARGET_DOC]; - } else { - $impl = new \DOMImplementation(); - // XXX: - // Create the doctype. For now, we are always creating HTML5 - // documents, and attempting to up-convert any older DTDs to HTML5. - $dt = $impl->createDocumentType('html'); - // $this->doc = \DOMImplementation::createDocument(NULL, 'html', $dt); - $this->doc = $impl->createDocument(null, '', $dt); - $this->doc->encoding = !empty($options['encoding']) ? $options['encoding'] : 'UTF-8'; - } - - $this->errors = array(); - - $this->current = $this->doc; // ->documentElement; - - // Create a rules engine for tags. - $this->rules = new TreeBuildingRules(); - - $implicitNS = array(); - if (isset($this->options[self::OPT_IMPLICIT_NS])) { - $implicitNS = $this->options[self::OPT_IMPLICIT_NS]; - } elseif (isset($this->options['implicitNamespaces'])) { - $implicitNS = $this->options['implicitNamespaces']; - } - - // Fill $nsStack with the defalut HTML5 namespaces, plus the "implicitNamespaces" array taken form $options - array_unshift($this->nsStack, $implicitNS + array('' => self::NAMESPACE_HTML) + $this->implicitNamespaces); - - if ($isFragment) { - $this->insertMode = static::IM_IN_BODY; - $this->frag = $this->doc->createDocumentFragment(); - $this->current = $this->frag; - } - } - - /** - * Get the document. - */ - public function document() - { - return $this->doc; - } - - /** - * Get the DOM fragment for the body. - * - * This returns a DOMNodeList because a fragment may have zero or more - * DOMNodes at its root. - * - * @see http://www.w3.org/TR/2012/CR-html5-20121217/syntax.html#concept-frag-parse-context - * - * @return \DOMDocumentFragment - */ - public function fragment() - { - return $this->frag; - } - - /** - * Provide an instruction processor. - * - * This is used for handling Processor Instructions as they are - * inserted. If omitted, PI's are inserted directly into the DOM tree. - * - * @param InstructionProcessor $proc - */ - public function setInstructionProcessor(InstructionProcessor $proc) - { - $this->processor = $proc; - } - - public function doctype($name, $idType = 0, $id = null, $quirks = false) - { - // This is used solely for setting quirks mode. Currently we don't - // try to preserve the inbound DT. We convert it to HTML5. - $this->quirks = $quirks; - - if ($this->insertMode > static::IM_INITIAL) { - $this->parseError('Illegal placement of DOCTYPE tag. Ignoring: ' . $name); - - return; - } - - $this->insertMode = static::IM_BEFORE_HTML; - } - - /** - * Process the start tag. - * - * @todo - XMLNS namespace handling (we need to parse, even if it's not valid) - * - XLink, MathML and SVG namespace handling - * - Omission rules: 8.1.2.4 Optional tags - * - * @param string $name - * @param array $attributes - * @param bool $selfClosing - * - * @return int - */ - public function startTag($name, $attributes = array(), $selfClosing = false) - { - $lname = $this->normalizeTagName($name); - - // Make sure we have an html element. - if (!$this->doc->documentElement && 'html' !== $name && !$this->frag) { - $this->startTag('html'); - } - - // Set quirks mode if we're at IM_INITIAL with no doctype. - if ($this->insertMode === static::IM_INITIAL) { - $this->quirks = true; - $this->parseError('No DOCTYPE specified.'); - } - - // SPECIAL TAG HANDLING: - // Spec says do this, and "don't ask." - // find the spec where this is defined... looks problematic - if ('image' === $name && !($this->insertMode === static::IM_IN_SVG || $this->insertMode === static::IM_IN_MATHML)) { - $name = 'img'; - } - - // Autoclose p tags where appropriate. - if ($this->insertMode >= static::IM_IN_BODY && Elements::isA($name, Elements::AUTOCLOSE_P)) { - $this->autoclose('p'); - } - - // Set insert mode: - switch ($name) { - case 'html': - $this->insertMode = static::IM_BEFORE_HEAD; - break; - case 'head': - if ($this->insertMode > static::IM_BEFORE_HEAD) { - $this->parseError('Unexpected head tag outside of head context.'); - } else { - $this->insertMode = static::IM_IN_HEAD; - } - break; - case 'body': - $this->insertMode = static::IM_IN_BODY; - break; - case 'svg': - $this->insertMode = static::IM_IN_SVG; - break; - case 'math': - $this->insertMode = static::IM_IN_MATHML; - break; - case 'noscript': - if ($this->insertMode === static::IM_IN_HEAD) { - $this->insertMode = static::IM_IN_HEAD_NOSCRIPT; - } - break; - } - - // Special case handling for SVG. - if ($this->insertMode === static::IM_IN_SVG) { - $lname = Elements::normalizeSvgElement($lname); - } - - $pushes = 0; - // when we found a tag thats appears inside $nsRoots, we have to switch the defalut namespace - if (isset($this->nsRoots[$lname]) && $this->nsStack[0][''] !== $this->nsRoots[$lname]) { - array_unshift($this->nsStack, array( - '' => $this->nsRoots[$lname], - ) + $this->nsStack[0]); - ++$pushes; - } - $needsWorkaround = false; - if (isset($this->options['xmlNamespaces']) && $this->options['xmlNamespaces']) { - // when xmlNamespaces is true a and we found a 'xmlns' or 'xmlns:*' attribute, we should add a new item to the $nsStack - foreach ($attributes as $aName => $aVal) { - if ('xmlns' === $aName) { - $needsWorkaround = $aVal; - array_unshift($this->nsStack, array( - '' => $aVal, - ) + $this->nsStack[0]); - ++$pushes; - } elseif ('xmlns' === (($pos = strpos($aName, ':')) ? substr($aName, 0, $pos) : '')) { - array_unshift($this->nsStack, array( - substr($aName, $pos + 1) => $aVal, - ) + $this->nsStack[0]); - ++$pushes; - } - } - } - - if ($this->onlyInline && Elements::isA($lname, Elements::BLOCK_TAG)) { - $this->autoclose($this->onlyInline); - $this->onlyInline = null; - } - - // some elements as table related tags might have optional end tags that force us to auto close multiple tags - // https://www.w3.org/TR/html401/struct/tables.html - if ($this->current instanceof \DOMElement && isset(Elements::$optionalEndElementsParentsToClose[$lname])) { - foreach (Elements::$optionalEndElementsParentsToClose[$lname] as $parentElName) { - if ($this->current instanceof \DOMElement && $this->current->tagName === $parentElName) { - $this->autoclose($parentElName); - } - } - } - - try { - $prefix = ($pos = strpos($lname, ':')) ? substr($lname, 0, $pos) : ''; - - if (false !== $needsWorkaround) { - $xml = "<$lname xmlns=\"$needsWorkaround\" " . (strlen($prefix) && isset($this->nsStack[0][$prefix]) ? ("xmlns:$prefix=\"" . $this->nsStack[0][$prefix] . '"') : '') . '/>'; - - $frag = new \DOMDocument('1.0', 'UTF-8'); - $frag->loadXML($xml); - - $ele = $this->doc->importNode($frag->documentElement, true); - } else { - if (!isset($this->nsStack[0][$prefix]) || ('' === $prefix && isset($this->options[self::OPT_DISABLE_HTML_NS]) && $this->options[self::OPT_DISABLE_HTML_NS])) { - $ele = $this->doc->createElement($lname); - } else { - $ele = $this->doc->createElementNS($this->nsStack[0][$prefix], $lname); - } - } - } catch (\DOMException $e) { - $this->parseError("Illegal tag name: <$lname>. Replaced with ."); - $ele = $this->doc->createElement('invalid'); - } - - if (Elements::isA($lname, Elements::BLOCK_ONLY_INLINE)) { - $this->onlyInline = $lname; - } - - // When we add some namespacess, we have to track them. Later, when "endElement" is invoked, we have to remove them. - // When we are on a void tag, we do not need to care about namesapce nesting. - if ($pushes > 0 && !Elements::isA($name, Elements::VOID_TAG)) { - // PHP tends to free the memory used by DOM, - // to avoid spl_object_hash collisions whe have to avoid garbage collection of $ele storing it into $pushes - // see https://bugs.php.net/bug.php?id=67459 - $this->pushes[spl_object_hash($ele)] = array($pushes, $ele); - } - - foreach ($attributes as $aName => $aVal) { - // xmlns attributes can't be set - if ('xmlns' === $aName) { - continue; - } - - if ($this->insertMode === static::IM_IN_SVG) { - $aName = Elements::normalizeSvgAttribute($aName); - } elseif ($this->insertMode === static::IM_IN_MATHML) { - $aName = Elements::normalizeMathMlAttribute($aName); - } - - $aVal = (string) $aVal; - - try { - $prefix = ($pos = strpos($aName, ':')) ? substr($aName, 0, $pos) : false; - - if ('xmlns' === $prefix) { - $ele->setAttributeNS(self::NAMESPACE_XMLNS, $aName, $aVal); - } elseif (false !== $prefix && isset($this->nsStack[0][$prefix])) { - $ele->setAttributeNS($this->nsStack[0][$prefix], $aName, $aVal); - } else { - $ele->setAttribute($aName, $aVal); - } - } catch (\DOMException $e) { - $this->parseError("Illegal attribute name for tag $name. Ignoring: $aName"); - continue; - } - - // This is necessary on a non-DTD schema, like HTML5. - if ('id' === $aName) { - $ele->setIdAttribute('id', true); - } - } - - if ($this->frag !== $this->current && $this->rules->hasRules($name)) { - // Some elements have special processing rules. Handle those separately. - $this->current = $this->rules->evaluate($ele, $this->current); - } else { - // Otherwise, it's a standard element. - $this->current->appendChild($ele); - - if (!Elements::isA($name, Elements::VOID_TAG)) { - $this->current = $ele; - } - - // Self-closing tags should only be respected on foreign elements - // (and are implied on void elements) - // See: https://www.w3.org/TR/html5/syntax.html#start-tags - if (Elements::isHtml5Element($name)) { - $selfClosing = false; - } - } - - // This is sort of a last-ditch attempt to correct for cases where no head/body - // elements are provided. - if ($this->insertMode <= static::IM_BEFORE_HEAD && 'head' !== $name && 'html' !== $name) { - $this->insertMode = static::IM_IN_BODY; - } - - // When we are on a void tag, we do not need to care about namesapce nesting, - // but we have to remove the namespaces pushed to $nsStack. - if ($pushes > 0 && Elements::isA($name, Elements::VOID_TAG)) { - // remove the namespaced definded by current node - for ($i = 0; $i < $pushes; ++$i) { - array_shift($this->nsStack); - } - } - - if ($selfClosing) { - $this->endTag($name); - } - - // Return the element mask, which the tokenizer can then use to set - // various processing rules. - return Elements::element($name); - } - - public function endTag($name) - { - $lname = $this->normalizeTagName($name); - - // Special case within 12.2.6.4.7: An end tag whose tag name is "br" should be treated as an opening tag - if ('br' === $name) { - $this->parseError('Closing tag encountered for void element br.'); - - $this->startTag('br'); - } - // Ignore closing tags for other unary elements. - elseif (Elements::isA($name, Elements::VOID_TAG)) { - return; - } - - if ($this->insertMode <= static::IM_BEFORE_HTML) { - // 8.2.5.4.2 - if (in_array($name, array( - 'html', - 'br', - 'head', - 'title', - ))) { - $this->startTag('html'); - $this->endTag($name); - $this->insertMode = static::IM_BEFORE_HEAD; - - return; - } - - // Ignore the tag. - $this->parseError('Illegal closing tag at global scope.'); - - return; - } - - // Special case handling for SVG. - if ($this->insertMode === static::IM_IN_SVG) { - $lname = Elements::normalizeSvgElement($lname); - } - - $cid = spl_object_hash($this->current); - - // XXX: HTML has no parent. What do we do, though, - // if this element appears in the wrong place? - if ('html' === $lname) { - return; - } - - // remove the namespaced definded by current node - if (isset($this->pushes[$cid])) { - for ($i = 0; $i < $this->pushes[$cid][0]; ++$i) { - array_shift($this->nsStack); - } - unset($this->pushes[$cid]); - } - - if (!$this->autoclose($lname)) { - $this->parseError('Could not find closing tag for ' . $lname); - } - - switch ($lname) { - case 'head': - $this->insertMode = static::IM_AFTER_HEAD; - break; - case 'body': - $this->insertMode = static::IM_AFTER_BODY; - break; - case 'svg': - case 'mathml': - $this->insertMode = static::IM_IN_BODY; - break; - } - } - - public function comment($cdata) - { - // TODO: Need to handle case where comment appears outside of the HTML tag. - $node = $this->doc->createComment($cdata); - $this->current->appendChild($node); - } - - public function text($data) - { - // XXX: Hmmm.... should we really be this strict? - if ($this->insertMode < static::IM_IN_HEAD) { - // Per '8.2.5.4.3 The "before head" insertion mode' the characters - // " \t\n\r\f" should be ignored but no mention of a parse error. This is - // practical as most documents contain these characters. Other text is not - // expected here so recording a parse error is necessary. - $dataTmp = trim($data, " \t\n\r\f"); - if (!empty($dataTmp)) { - // fprintf(STDOUT, "Unexpected insert mode: %d", $this->insertMode); - $this->parseError('Unexpected text. Ignoring: ' . $dataTmp); - } - - return; - } - // fprintf(STDOUT, "Appending text %s.", $data); - $node = $this->doc->createTextNode($data); - $this->current->appendChild($node); - } - - public function eof() - { - // If the $current isn't the $root, do we need to do anything? - } - - public function parseError($msg, $line = 0, $col = 0) - { - $this->errors[] = sprintf('Line %d, Col %d: %s', $line, $col, $msg); - } - - public function getErrors() - { - return $this->errors; - } - - public function cdata($data) - { - $node = $this->doc->createCDATASection($data); - $this->current->appendChild($node); - } - - public function processingInstruction($name, $data = null) - { - // XXX: Ignore initial XML declaration, per the spec. - if ($this->insertMode === static::IM_INITIAL && 'xml' === strtolower($name)) { - return; - } - - // Important: The processor may modify the current DOM tree however it sees fit. - if ($this->processor instanceof InstructionProcessor) { - $res = $this->processor->process($this->current, $name, $data); - if (!empty($res)) { - $this->current = $res; - } - - return; - } - - // Otherwise, this is just a dumb PI element. - $node = $this->doc->createProcessingInstruction($name, $data); - - $this->current->appendChild($node); - } - - // ========================================================================== - // UTILITIES - // ========================================================================== - - /** - * Apply normalization rules to a tag name. - * See sections 2.9 and 8.1.2. - * - * @param string $tagName - * - * @return string The normalized tag name. - */ - protected function normalizeTagName($tagName) - { - /* - * Section 2.9 suggests that we should not do this. if (strpos($name, ':') !== false) { // We know from the grammar that there must be at least one other // char besides :, since : is not a legal tag start. $parts = explode(':', $name); return array_pop($parts); } - */ - return $tagName; - } - - protected function quirksTreeResolver($name) - { - throw new \Exception('Not implemented.'); - } - - /** - * Automatically climb the tree and close the closest node with the matching $tag. - * - * @param string $tagName - * - * @return bool - */ - protected function autoclose($tagName) - { - $working = $this->current; - do { - if (XML_ELEMENT_NODE !== $working->nodeType) { - return false; - } - if ($working->tagName === $tagName) { - $this->current = $working->parentNode; - - return true; - } - } while ($working = $working->parentNode); - - return false; - } - - /** - * Checks if the given tagname is an ancestor of the present candidate. - * - * If $this->current or anything above $this->current matches the given tag - * name, this returns true. - * - * @param string $tagName - * - * @return bool - */ - protected function isAncestor($tagName) - { - $candidate = $this->current; - while (XML_ELEMENT_NODE === $candidate->nodeType) { - if ($candidate->tagName === $tagName) { - return true; - } - $candidate = $candidate->parentNode; - } - - return false; - } - - /** - * Returns true if the immediate parent element is of the given tagname. - * - * @param string $tagName - * - * @return bool - */ - protected function isParent($tagName) - { - return $this->current->tagName === $tagName; - } -} diff --git a/docker/statistics/vendor/masterminds/html5/src/HTML5/Parser/EventHandler.php b/docker/statistics/vendor/masterminds/html5/src/HTML5/Parser/EventHandler.php deleted file mode 100644 index 9893a718..00000000 --- a/docker/statistics/vendor/masterminds/html5/src/HTML5/Parser/EventHandler.php +++ /dev/null @@ -1,114 +0,0 @@ -). - * - * @return int one of the Tokenizer::TEXTMODE_* constants - */ - public function startTag($name, $attributes = array(), $selfClosing = false); - - /** - * An end-tag. - */ - public function endTag($name); - - /** - * A comment section (unparsed character data). - */ - public function comment($cdata); - - /** - * A unit of parsed character data. - * - * Entities in this text are *already decoded*. - */ - public function text($cdata); - - /** - * Indicates that the document has been entirely processed. - */ - public function eof(); - - /** - * Emitted when the parser encounters an error condition. - */ - public function parseError($msg, $line, $col); - - /** - * A CDATA section. - * - * @param string $data - * The unparsed character data - */ - public function cdata($data); - - /** - * This is a holdover from the XML spec. - * - * While user agents don't get PIs, server-side does. - * - * @param string $name The name of the processor (e.g. 'php'). - * @param string $data The unparsed data. - */ - public function processingInstruction($name, $data = null); -} diff --git a/docker/statistics/vendor/masterminds/html5/src/HTML5/Parser/FileInputStream.php b/docker/statistics/vendor/masterminds/html5/src/HTML5/Parser/FileInputStream.php deleted file mode 100644 index b081ed96..00000000 --- a/docker/statistics/vendor/masterminds/html5/src/HTML5/Parser/FileInputStream.php +++ /dev/null @@ -1,33 +0,0 @@ -errors = UTF8Utils::checkForIllegalCodepoints($data); - - $data = $this->replaceLinefeeds($data); - - $this->data = $data; - $this->char = 0; - $this->EOF = strlen($data); - } - - /** - * Check if upcomming chars match the given sequence. - * - * This will read the stream for the $sequence. If it's - * found, this will return true. If not, return false. - * Since this unconsumes any chars it reads, the caller - * will still need to read the next sequence, even if - * this returns true. - * - * Example: $this->scanner->sequenceMatches('') will - * see if the input stream is at the start of a - * '' string. - * - * @param string $sequence - * @param bool $caseSensitive - * - * @return bool - */ - public function sequenceMatches($sequence, $caseSensitive = true) - { - $portion = substr($this->data, $this->char, strlen($sequence)); - - return $caseSensitive ? $portion === $sequence : 0 === strcasecmp($portion, $sequence); - } - - /** - * Get the current position. - * - * @return int The current intiger byte position. - */ - public function position() - { - return $this->char; - } - - /** - * Take a peek at the next character in the data. - * - * @return string The next character. - */ - public function peek() - { - if (($this->char + 1) < $this->EOF) { - return $this->data[$this->char + 1]; - } - - return false; - } - - /** - * Get the next character. - * Note: This advances the pointer. - * - * @return string The next character. - */ - public function next() - { - ++$this->char; - - if ($this->char < $this->EOF) { - return $this->data[$this->char]; - } - - return false; - } - - /** - * Get the current character. - * Note, this does not advance the pointer. - * - * @return string The current character. - */ - public function current() - { - if ($this->char < $this->EOF) { - return $this->data[$this->char]; - } - - return false; - } - - /** - * Silently consume N chars. - * - * @param int $count - */ - public function consume($count = 1) - { - $this->char += $count; - } - - /** - * Unconsume some of the data. - * This moves the data pointer backwards. - * - * @param int $howMany The number of characters to move the pointer back. - */ - public function unconsume($howMany = 1) - { - if (($this->char - $howMany) >= 0) { - $this->char -= $howMany; - } - } - - /** - * Get the next group of that contains hex characters. - * Note, along with getting the characters the pointer in the data will be - * moved as well. - * - * @return string The next group that is hex characters. - */ - public function getHex() - { - return $this->doCharsWhile(static::CHARS_HEX); - } - - /** - * Get the next group of characters that are ASCII Alpha characters. - * Note, along with getting the characters the pointer in the data will be - * moved as well. - * - * @return string The next group of ASCII alpha characters. - */ - public function getAsciiAlpha() - { - return $this->doCharsWhile(static::CHARS_ALPHA); - } - - /** - * Get the next group of characters that are ASCII Alpha characters and numbers. - * Note, along with getting the characters the pointer in the data will be - * moved as well. - * - * @return string The next group of ASCII alpha characters and numbers. - */ - public function getAsciiAlphaNum() - { - return $this->doCharsWhile(static::CHARS_ALNUM); - } - - /** - * Get the next group of numbers. - * Note, along with getting the characters the pointer in the data will be - * moved as well. - * - * @return string The next group of numbers. - */ - public function getNumeric() - { - return $this->doCharsWhile('0123456789'); - } - - /** - * Consume whitespace. - * Whitespace in HTML5 is: formfeed, tab, newline, space. - * - * @return int The length of the matched whitespaces. - */ - public function whitespace() - { - if ($this->char >= $this->EOF) { - return false; - } - - $len = strspn($this->data, "\n\t\f ", $this->char); - - $this->char += $len; - - return $len; - } - - /** - * Returns the current line that is being consumed. - * - * @return int The current line number. - */ - public function currentLine() - { - if (empty($this->EOF) || 0 === $this->char) { - return 1; - } - - // Add one to $this->char because we want the number for the next - // byte to be processed. - return substr_count($this->data, "\n", 0, min($this->char, $this->EOF)) + 1; - } - - /** - * Read chars until something in the mask is encountered. - * - * @param string $mask - * - * @return mixed - */ - public function charsUntil($mask) - { - return $this->doCharsUntil($mask); - } - - /** - * Read chars as long as the mask matches. - * - * @param string $mask - * - * @return int - */ - public function charsWhile($mask) - { - return $this->doCharsWhile($mask); - } - - /** - * Returns the current column of the current line that the tokenizer is at. - * - * Newlines are column 0. The first char after a newline is column 1. - * - * @return int The column number. - */ - public function columnOffset() - { - // Short circuit for the first char. - if (0 === $this->char) { - return 0; - } - - // strrpos is weird, and the offset needs to be negative for what we - // want (i.e., the last \n before $this->char). This needs to not have - // one (to make it point to the next character, the one we want the - // position of) added to it because strrpos's behaviour includes the - // final offset byte. - $backwardFrom = $this->char - 1 - strlen($this->data); - $lastLine = strrpos($this->data, "\n", $backwardFrom); - - // However, for here we want the length up until the next byte to be - // processed, so add one to the current byte ($this->char). - if (false !== $lastLine) { - $findLengthOf = substr($this->data, $lastLine + 1, $this->char - 1 - $lastLine); - } else { - // After a newline. - $findLengthOf = substr($this->data, 0, $this->char); - } - - return UTF8Utils::countChars($findLengthOf); - } - - /** - * Get all characters until EOF. - * - * This consumes characters until the EOF. - * - * @return int The number of characters remaining. - */ - public function remainingChars() - { - if ($this->char < $this->EOF) { - $data = substr($this->data, $this->char); - $this->char = $this->EOF; - - return $data; - } - - return ''; // false; - } - - /** - * Replace linefeed characters according to the spec. - * - * @param $data - * - * @return string - */ - private function replaceLinefeeds($data) - { - /* - * U+000D CARRIAGE RETURN (CR) characters and U+000A LINE FEED (LF) characters are treated specially. - * Any CR characters that are followed by LF characters must be removed, and any CR characters not - * followed by LF characters must be converted to LF characters. Thus, newlines in HTML DOMs are - * represented by LF characters, and there are never any CR characters in the input to the tokenization - * stage. - */ - $crlfTable = array( - "\0" => "\xEF\xBF\xBD", - "\r\n" => "\n", - "\r" => "\n", - ); - - return strtr($data, $crlfTable); - } - - /** - * Read to a particular match (or until $max bytes are consumed). - * - * This operates on byte sequences, not characters. - * - * Matches as far as possible until we reach a certain set of bytes - * and returns the matched substring. - * - * @param string $bytes Bytes to match. - * @param int $max Maximum number of bytes to scan. - * - * @return mixed Index or false if no match is found. You should use strong - * equality when checking the result, since index could be 0. - */ - private function doCharsUntil($bytes, $max = null) - { - if ($this->char >= $this->EOF) { - return false; - } - - if (0 === $max || $max) { - $len = strcspn($this->data, $bytes, $this->char, $max); - } else { - $len = strcspn($this->data, $bytes, $this->char); - } - - $string = (string) substr($this->data, $this->char, $len); - $this->char += $len; - - return $string; - } - - /** - * Returns the string so long as $bytes matches. - * - * Matches as far as possible with a certain set of bytes - * and returns the matched substring. - * - * @param string $bytes A mask of bytes to match. If ANY byte in this mask matches the - * current char, the pointer advances and the char is part of the - * substring. - * @param int $max The max number of chars to read. - * - * @return string - */ - private function doCharsWhile($bytes, $max = null) - { - if ($this->char >= $this->EOF) { - return false; - } - - if (0 === $max || $max) { - $len = strspn($this->data, $bytes, $this->char, $max); - } else { - $len = strspn($this->data, $bytes, $this->char); - } - - $string = (string) substr($this->data, $this->char, $len); - $this->char += $len; - - return $string; - } -} diff --git a/docker/statistics/vendor/masterminds/html5/src/HTML5/Parser/StringInputStream.php b/docker/statistics/vendor/masterminds/html5/src/HTML5/Parser/StringInputStream.php deleted file mode 100644 index 75b08861..00000000 --- a/docker/statistics/vendor/masterminds/html5/src/HTML5/Parser/StringInputStream.php +++ /dev/null @@ -1,336 +0,0 @@ - - -Permission is hereby granted, free of charge, to any person obtaining a -copy of this software and associated documentation files (the - "Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions: - -The above copyright notice and this permission notice shall be included -in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -*/ - -// Some conventions: -// - /* */ indicates verbatim text from the HTML 5 specification -// MPB: Not sure which version of the spec. Moving from HTML5lib to -// HTML5-PHP, I have been using this version: -// http://www.w3.org/TR/2012/CR-html5-20121217/Overview.html#contents -// -// - // indicates regular comments - -/** - * @deprecated since 2.4, to remove in 3.0. Use a string in the scanner instead. - */ -class StringInputStream implements InputStream -{ - /** - * The string data we're parsing. - */ - private $data; - - /** - * The current integer byte position we are in $data. - */ - private $char; - - /** - * Length of $data; when $char === $data, we are at the end-of-file. - */ - private $EOF; - - /** - * Parse errors. - */ - public $errors = array(); - - /** - * Create a new InputStream wrapper. - * - * @param string $data Data to parse. - * @param string $encoding The encoding to use for the data. - * @param string $debug A fprintf format to use to echo the data on stdout. - */ - public function __construct($data, $encoding = 'UTF-8', $debug = '') - { - $data = UTF8Utils::convertToUTF8($data, $encoding); - if ($debug) { - fprintf(STDOUT, $debug, $data, strlen($data)); - } - - // There is good reason to question whether it makes sense to - // do this here, since most of these checks are done during - // parsing, and since this check doesn't actually *do* anything. - $this->errors = UTF8Utils::checkForIllegalCodepoints($data); - - $data = $this->replaceLinefeeds($data); - - $this->data = $data; - $this->char = 0; - $this->EOF = strlen($data); - } - - public function __toString() - { - return $this->data; - } - - /** - * Replace linefeed characters according to the spec. - */ - protected function replaceLinefeeds($data) - { - /* - * U+000D CARRIAGE RETURN (CR) characters and U+000A LINE FEED (LF) characters are treated specially. - * Any CR characters that are followed by LF characters must be removed, and any CR characters not - * followed by LF characters must be converted to LF characters. Thus, newlines in HTML DOMs are - * represented by LF characters, and there are never any CR characters in the input to the tokenization - * stage. - */ - $crlfTable = array( - "\0" => "\xEF\xBF\xBD", - "\r\n" => "\n", - "\r" => "\n", - ); - - return strtr($data, $crlfTable); - } - - /** - * Returns the current line that the tokenizer is at. - */ - public function currentLine() - { - if (empty($this->EOF) || 0 === $this->char) { - return 1; - } - // Add one to $this->char because we want the number for the next - // byte to be processed. - return substr_count($this->data, "\n", 0, min($this->char, $this->EOF)) + 1; - } - - /** - * @deprecated - */ - public function getCurrentLine() - { - return $this->currentLine(); - } - - /** - * Returns the current column of the current line that the tokenizer is at. - * Newlines are column 0. The first char after a newline is column 1. - * - * @return int The column number. - */ - public function columnOffset() - { - // Short circuit for the first char. - if (0 === $this->char) { - return 0; - } - // strrpos is weird, and the offset needs to be negative for what we - // want (i.e., the last \n before $this->char). This needs to not have - // one (to make it point to the next character, the one we want the - // position of) added to it because strrpos's behaviour includes the - // final offset byte. - $backwardFrom = $this->char - 1 - strlen($this->data); - $lastLine = strrpos($this->data, "\n", $backwardFrom); - - // However, for here we want the length up until the next byte to be - // processed, so add one to the current byte ($this->char). - if (false !== $lastLine) { - $findLengthOf = substr($this->data, $lastLine + 1, $this->char - 1 - $lastLine); - } else { - // After a newline. - $findLengthOf = substr($this->data, 0, $this->char); - } - - return UTF8Utils::countChars($findLengthOf); - } - - /** - * @deprecated - */ - public function getColumnOffset() - { - return $this->columnOffset(); - } - - /** - * Get the current character. - * - * @return string The current character. - */ - #[\ReturnTypeWillChange] - public function current() - { - return $this->data[$this->char]; - } - - /** - * Advance the pointer. - * This is part of the Iterator interface. - */ - #[\ReturnTypeWillChange] - public function next() - { - ++$this->char; - } - - /** - * Rewind to the start of the string. - */ - #[\ReturnTypeWillChange] - public function rewind() - { - $this->char = 0; - } - - /** - * Is the current pointer location valid. - * - * @return bool Whether the current pointer location is valid. - */ - #[\ReturnTypeWillChange] - public function valid() - { - return $this->char < $this->EOF; - } - - /** - * Get all characters until EOF. - * - * This reads to the end of the file, and sets the read marker at the - * end of the file. - * - * Note this performs bounds checking. - * - * @return string Returns the remaining text. If called when the InputStream is - * already exhausted, it returns an empty string. - */ - public function remainingChars() - { - if ($this->char < $this->EOF) { - $data = substr($this->data, $this->char); - $this->char = $this->EOF; - - return $data; - } - - return ''; // false; - } - - /** - * Read to a particular match (or until $max bytes are consumed). - * - * This operates on byte sequences, not characters. - * - * Matches as far as possible until we reach a certain set of bytes - * and returns the matched substring. - * - * @param string $bytes Bytes to match. - * @param int $max Maximum number of bytes to scan. - * - * @return mixed Index or false if no match is found. You should use strong - * equality when checking the result, since index could be 0. - */ - public function charsUntil($bytes, $max = null) - { - if ($this->char >= $this->EOF) { - return false; - } - - if (0 === $max || $max) { - $len = strcspn($this->data, $bytes, $this->char, $max); - } else { - $len = strcspn($this->data, $bytes, $this->char); - } - - $string = (string) substr($this->data, $this->char, $len); - $this->char += $len; - - return $string; - } - - /** - * Returns the string so long as $bytes matches. - * - * Matches as far as possible with a certain set of bytes - * and returns the matched substring. - * - * @param string $bytes A mask of bytes to match. If ANY byte in this mask matches the - * current char, the pointer advances and the char is part of the - * substring. - * @param int $max The max number of chars to read. - * - * @return string - */ - public function charsWhile($bytes, $max = null) - { - if ($this->char >= $this->EOF) { - return false; - } - - if (0 === $max || $max) { - $len = strspn($this->data, $bytes, $this->char, $max); - } else { - $len = strspn($this->data, $bytes, $this->char); - } - $string = (string) substr($this->data, $this->char, $len); - $this->char += $len; - - return $string; - } - - /** - * Unconsume characters. - * - * @param int $howMany The number of characters to unconsume. - */ - public function unconsume($howMany = 1) - { - if (($this->char - $howMany) >= 0) { - $this->char -= $howMany; - } - } - - /** - * Look ahead without moving cursor. - */ - public function peek() - { - if (($this->char + 1) <= $this->EOF) { - return $this->data[$this->char + 1]; - } - - return false; - } - - #[\ReturnTypeWillChange] - public function key() - { - return $this->char; - } -} diff --git a/docker/statistics/vendor/masterminds/html5/src/HTML5/Parser/Tokenizer.php b/docker/statistics/vendor/masterminds/html5/src/HTML5/Parser/Tokenizer.php deleted file mode 100644 index e8b4aa09..00000000 --- a/docker/statistics/vendor/masterminds/html5/src/HTML5/Parser/Tokenizer.php +++ /dev/null @@ -1,1214 +0,0 @@ -scanner = $scanner; - $this->events = $eventHandler; - $this->mode = $mode; - } - - /** - * Begin parsing. - * - * This will begin scanning the document, tokenizing as it goes. - * Tokens are emitted into the event handler. - * - * Tokenizing will continue until the document is completely - * read. Errors are emitted into the event handler, but - * the parser will attempt to continue parsing until the - * entire input stream is read. - */ - public function parse() - { - do { - $this->consumeData(); - // FIXME: Add infinite loop protection. - } while ($this->carryOn); - } - - /** - * Set the text mode for the character data reader. - * - * HTML5 defines three different modes for reading text: - * - Normal: Read until a tag is encountered. - * - RCDATA: Read until a tag is encountered, but skip a few otherwise- - * special characters. - * - Raw: Read until a special closing tag is encountered (viz. pre, script) - * - * This allows those modes to be set. - * - * Normally, setting is done by the event handler via a special return code on - * startTag(), but it can also be set manually using this function. - * - * @param int $textmode One of Elements::TEXT_*. - * @param string $untilTag The tag that should stop RAW or RCDATA mode. Normal mode does not - * use this indicator. - */ - public function setTextMode($textmode, $untilTag = null) - { - $this->textMode = $textmode & (Elements::TEXT_RAW | Elements::TEXT_RCDATA); - $this->untilTag = $untilTag; - } - - /** - * Consume a character and make a move. - * HTML5 8.2.4.1. - */ - protected function consumeData() - { - $tok = $this->scanner->current(); - - if ('&' === $tok) { - // Character reference - $ref = $this->decodeCharacterReference(); - $this->buffer($ref); - - $tok = $this->scanner->current(); - } - - // Parse tag - if ('<' === $tok) { - // Any buffered text data can go out now. - $this->flushBuffer(); - - $tok = $this->scanner->next(); - - if (false === $tok) { - // end of string - $this->parseError('Illegal tag opening'); - } elseif ('!' === $tok) { - $this->markupDeclaration(); - } elseif ('/' === $tok) { - $this->endTag(); - } elseif ('?' === $tok) { - $this->processingInstruction(); - } elseif ($this->is_alpha($tok)) { - $this->tagName(); - } else { - $this->parseError('Illegal tag opening'); - // TODO is this necessary ? - $this->characterData(); - } - - $tok = $this->scanner->current(); - } - - if (false === $tok) { - // Handle end of document - $this->eof(); - } else { - // Parse character - switch ($this->textMode) { - case Elements::TEXT_RAW: - $this->rawText($tok); - break; - - case Elements::TEXT_RCDATA: - $this->rcdata($tok); - break; - - default: - if ('<' === $tok || '&' === $tok) { - break; - } - - // NULL character - if ("\00" === $tok) { - $this->parseError('Received null character.'); - - $this->text .= $tok; - $this->scanner->consume(); - - break; - } - - $this->text .= $this->scanner->charsUntil("<&\0"); - } - } - - return $this->carryOn; - } - - /** - * Parse anything that looks like character data. - * - * Different rules apply based on the current text mode. - * - * @see Elements::TEXT_RAW Elements::TEXT_RCDATA. - */ - protected function characterData() - { - $tok = $this->scanner->current(); - if (false === $tok) { - return false; - } - switch ($this->textMode) { - case Elements::TEXT_RAW: - return $this->rawText($tok); - case Elements::TEXT_RCDATA: - return $this->rcdata($tok); - default: - if ('<' === $tok || '&' === $tok) { - return false; - } - - return $this->text($tok); - } - } - - /** - * This buffers the current token as character data. - * - * @param string $tok The current token. - * - * @return bool - */ - protected function text($tok) - { - // This should never happen... - if (false === $tok) { - return false; - } - - // NULL character - if ("\00" === $tok) { - $this->parseError('Received null character.'); - } - - $this->buffer($tok); - $this->scanner->consume(); - - return true; - } - - /** - * Read text in RAW mode. - * - * @param string $tok The current token. - * - * @return bool - */ - protected function rawText($tok) - { - if (is_null($this->untilTag)) { - return $this->text($tok); - } - - $sequence = 'untilTag . '>'; - $txt = $this->readUntilSequence($sequence); - $this->events->text($txt); - $this->setTextMode(0); - - return $this->endTag(); - } - - /** - * Read text in RCDATA mode. - * - * @param string $tok The current token. - * - * @return bool - */ - protected function rcdata($tok) - { - if (is_null($this->untilTag)) { - return $this->text($tok); - } - - $sequence = 'untilTag; - $txt = ''; - - $caseSensitive = !Elements::isHtml5Element($this->untilTag); - while (false !== $tok && !('<' == $tok && ($this->scanner->sequenceMatches($sequence, $caseSensitive)))) { - if ('&' == $tok) { - $txt .= $this->decodeCharacterReference(); - $tok = $this->scanner->current(); - } else { - $txt .= $tok; - $tok = $this->scanner->next(); - } - } - $len = strlen($sequence); - $this->scanner->consume($len); - $len += $this->scanner->whitespace(); - if ('>' !== $this->scanner->current()) { - $this->parseError('Unclosed RCDATA end tag'); - } - - $this->scanner->unconsume($len); - $this->events->text($txt); - $this->setTextMode(0); - - return $this->endTag(); - } - - /** - * If the document is read, emit an EOF event. - */ - protected function eof() - { - // fprintf(STDOUT, "EOF"); - $this->flushBuffer(); - $this->events->eof(); - $this->carryOn = false; - } - - /** - * Look for markup. - */ - protected function markupDeclaration() - { - $tok = $this->scanner->next(); - - // Comment: - if ('-' == $tok && '-' == $this->scanner->peek()) { - $this->scanner->consume(2); - - return $this->comment(); - } elseif ('D' == $tok || 'd' == $tok) { // Doctype - return $this->doctype(); - } elseif ('[' == $tok) { // CDATA section - return $this->cdataSection(); - } - - // FINISH - $this->parseError('Expected . Emit an empty comment because 8.2.4.46 says to. - if ('>' == $tok) { - // Parse error. Emit the comment token. - $this->parseError("Expected comment data, got '>'"); - $this->events->comment(''); - $this->scanner->consume(); - - return true; - } - - // Replace NULL with the replacement char. - if ("\0" == $tok) { - $tok = UTF8Utils::FFFD; - } - while (!$this->isCommentEnd()) { - $comment .= $tok; - $tok = $this->scanner->next(); - } - - $this->events->comment($comment); - $this->scanner->consume(); - - return true; - } - - /** - * Check if the scanner has reached the end of a comment. - * - * @return bool - */ - protected function isCommentEnd() - { - $tok = $this->scanner->current(); - - // EOF - if (false === $tok) { - // Hit the end. - $this->parseError('Unexpected EOF in a comment.'); - - return true; - } - - // If next two tokens are not '--', not the end. - if ('-' != $tok || '-' != $this->scanner->peek()) { - return false; - } - - $this->scanner->consume(2); // Consume '-' and one of '!' or '>' - - // Test for '>' - if ('>' == $this->scanner->current()) { - return true; - } - // Test for '!>' - if ('!' == $this->scanner->current() && '>' == $this->scanner->peek()) { - $this->scanner->consume(); // Consume the last '>' - return true; - } - // Unread '-' and one of '!' or '>'; - $this->scanner->unconsume(2); - - return false; - } - - /** - * Parse a DOCTYPE. - * - * Parse a DOCTYPE declaration. This method has strong bearing on whether or - * not Quirksmode is enabled on the event handler. - * - * @todo This method is a little long. Should probably refactor. - * - * @return bool - */ - protected function doctype() - { - // Check that string is DOCTYPE. - if ($this->scanner->sequenceMatches('DOCTYPE', false)) { - $this->scanner->consume(7); - } else { - $chars = $this->scanner->charsWhile('DOCTYPEdoctype'); - $this->parseError('Expected DOCTYPE, got %s', $chars); - - return $this->bogusComment('scanner->whitespace(); - $tok = $this->scanner->current(); - - // EOF: die. - if (false === $tok) { - $this->events->doctype('html5', EventHandler::DOCTYPE_NONE, '', true); - $this->eof(); - - return true; - } - - // NULL char: convert. - if ("\0" === $tok) { - $this->parseError('Unexpected null character in DOCTYPE.'); - } - - $stop = " \n\f>"; - $doctypeName = $this->scanner->charsUntil($stop); - // Lowercase ASCII, replace \0 with FFFD - $doctypeName = strtolower(strtr($doctypeName, "\0", UTF8Utils::FFFD)); - - $tok = $this->scanner->current(); - - // If false, emit a parse error, DOCTYPE, and return. - if (false === $tok) { - $this->parseError('Unexpected EOF in DOCTYPE declaration.'); - $this->events->doctype($doctypeName, EventHandler::DOCTYPE_NONE, null, true); - - return true; - } - - // Short DOCTYPE, like - if ('>' == $tok) { - // DOCTYPE without a name. - if (0 == strlen($doctypeName)) { - $this->parseError('Expected a DOCTYPE name. Got nothing.'); - $this->events->doctype($doctypeName, 0, null, true); - $this->scanner->consume(); - - return true; - } - $this->events->doctype($doctypeName); - $this->scanner->consume(); - - return true; - } - $this->scanner->whitespace(); - - $pub = strtoupper($this->scanner->getAsciiAlpha()); - $white = $this->scanner->whitespace(); - - // Get ID, and flag it as pub or system. - if (('PUBLIC' == $pub || 'SYSTEM' == $pub) && $white > 0) { - // Get the sys ID. - $type = 'PUBLIC' == $pub ? EventHandler::DOCTYPE_PUBLIC : EventHandler::DOCTYPE_SYSTEM; - $id = $this->quotedString("\0>"); - if (false === $id) { - $this->events->doctype($doctypeName, $type, $pub, false); - - return true; - } - - // Premature EOF. - if (false === $this->scanner->current()) { - $this->parseError('Unexpected EOF in DOCTYPE'); - $this->events->doctype($doctypeName, $type, $id, true); - - return true; - } - - // Well-formed complete DOCTYPE. - $this->scanner->whitespace(); - if ('>' == $this->scanner->current()) { - $this->events->doctype($doctypeName, $type, $id, false); - $this->scanner->consume(); - - return true; - } - - // If we get here, we have scanner->charsUntil('>'); - $this->parseError('Malformed DOCTYPE.'); - $this->events->doctype($doctypeName, $type, $id, true); - $this->scanner->consume(); - - return true; - } - - // Else it's a bogus DOCTYPE. - // Consume to > and trash. - $this->scanner->charsUntil('>'); - - $this->parseError('Expected PUBLIC or SYSTEM. Got %s.', $pub); - $this->events->doctype($doctypeName, 0, null, true); - $this->scanner->consume(); - - return true; - } - - /** - * Utility for reading a quoted string. - * - * @param string $stopchars Characters (in addition to a close-quote) that should stop the string. - * E.g. sometimes '>' is higher precedence than '"' or "'". - * - * @return mixed String if one is found (quotations omitted). - */ - protected function quotedString($stopchars) - { - $tok = $this->scanner->current(); - if ('"' == $tok || "'" == $tok) { - $this->scanner->consume(); - $ret = $this->scanner->charsUntil($tok . $stopchars); - if ($this->scanner->current() == $tok) { - $this->scanner->consume(); - } else { - // Parse error because no close quote. - $this->parseError('Expected %s, got %s', $tok, $this->scanner->current()); - } - - return $ret; - } - - return false; - } - - /** - * Handle a CDATA section. - * - * @return bool - */ - protected function cdataSection() - { - $cdata = ''; - $this->scanner->consume(); - - $chars = $this->scanner->charsWhile('CDAT'); - if ('CDATA' != $chars || '[' != $this->scanner->current()) { - $this->parseError('Expected [CDATA[, got %s', $chars); - - return $this->bogusComment('scanner->next(); - do { - if (false === $tok) { - $this->parseError('Unexpected EOF inside CDATA.'); - $this->bogusComment('scanner->next(); - } while (!$this->scanner->sequenceMatches(']]>')); - - // Consume ]]> - $this->scanner->consume(3); - - $this->events->cdata($cdata); - - return true; - } - - // ================================================================ - // Non-HTML5 - // ================================================================ - - /** - * Handle a processing instruction. - * - * XML processing instructions are supposed to be ignored in HTML5, - * treated as "bogus comments". However, since we're not a user - * agent, we allow them. We consume until ?> and then issue a - * EventListener::processingInstruction() event. - * - * @return bool - */ - protected function processingInstruction() - { - if ('?' != $this->scanner->current()) { - return false; - } - - $tok = $this->scanner->next(); - $procName = $this->scanner->getAsciiAlpha(); - $white = $this->scanner->whitespace(); - - // If not a PI, send to bogusComment. - if (0 == strlen($procName) || 0 == $white || false == $this->scanner->current()) { - $this->parseError("Expected processing instruction name, got $tok"); - $this->bogusComment('. - while (!('?' == $this->scanner->current() && '>' == $this->scanner->peek())) { - $data .= $this->scanner->current(); - - $tok = $this->scanner->next(); - if (false === $tok) { - $this->parseError('Unexpected EOF in processing instruction.'); - $this->events->processingInstruction($procName, $data); - - return true; - } - } - - $this->scanner->consume(2); // Consume the closing tag - $this->events->processingInstruction($procName, $data); - - return true; - } - - // ================================================================ - // UTILITY FUNCTIONS - // ================================================================ - - /** - * Read from the input stream until we get to the desired sequene - * or hit the end of the input stream. - * - * @param string $sequence - * - * @return string - */ - protected function readUntilSequence($sequence) - { - $buffer = ''; - - // Optimization for reading larger blocks faster. - $first = substr($sequence, 0, 1); - while (false !== $this->scanner->current()) { - $buffer .= $this->scanner->charsUntil($first); - - // Stop as soon as we hit the stopping condition. - if ($this->scanner->sequenceMatches($sequence, false)) { - return $buffer; - } - $buffer .= $this->scanner->current(); - $this->scanner->consume(); - } - - // If we get here, we hit the EOF. - $this->parseError('Unexpected EOF during text read.'); - - return $buffer; - } - - /** - * Check if upcomming chars match the given sequence. - * - * This will read the stream for the $sequence. If it's - * found, this will return true. If not, return false. - * Since this unconsumes any chars it reads, the caller - * will still need to read the next sequence, even if - * this returns true. - * - * Example: $this->scanner->sequenceMatches('') will - * see if the input stream is at the start of a - * '' string. - * - * @param string $sequence - * @param bool $caseSensitive - * - * @return bool - */ - protected function sequenceMatches($sequence, $caseSensitive = true) - { - @trigger_error(__METHOD__ . ' method is deprecated since version 2.4 and will be removed in 3.0. Use Scanner::sequenceMatches() instead.', E_USER_DEPRECATED); - - return $this->scanner->sequenceMatches($sequence, $caseSensitive); - } - - /** - * Send a TEXT event with the contents of the text buffer. - * - * This emits an EventHandler::text() event with the current contents of the - * temporary text buffer. (The buffer is used to group as much PCDATA - * as we can instead of emitting lots and lots of TEXT events.) - */ - protected function flushBuffer() - { - if ('' === $this->text) { - return; - } - $this->events->text($this->text); - $this->text = ''; - } - - /** - * Add text to the temporary buffer. - * - * @see flushBuffer() - * - * @param string $str - */ - protected function buffer($str) - { - $this->text .= $str; - } - - /** - * Emit a parse error. - * - * A parse error always returns false because it never consumes any - * characters. - * - * @param string $msg - * - * @return string - */ - protected function parseError($msg) - { - $args = func_get_args(); - - if (count($args) > 1) { - array_shift($args); - $msg = vsprintf($msg, $args); - } - - $line = $this->scanner->currentLine(); - $col = $this->scanner->columnOffset(); - $this->events->parseError($msg, $line, $col); - - return false; - } - - /** - * Decode a character reference and return the string. - * - * If $inAttribute is set to true, a bare & will be returned as-is. - * - * @param bool $inAttribute Set to true if the text is inside of an attribute value. - * false otherwise. - * - * @return string - */ - protected function decodeCharacterReference($inAttribute = false) - { - // Next char after &. - $tok = $this->scanner->next(); - $start = $this->scanner->position(); - - if (false === $tok) { - return '&'; - } - - // These indicate not an entity. We return just - // the &. - if ("\t" === $tok || "\n" === $tok || "\f" === $tok || ' ' === $tok || '&' === $tok || '<' === $tok) { - // $this->scanner->next(); - return '&'; - } - - // Numeric entity - if ('#' === $tok) { - $tok = $this->scanner->next(); - - if (false === $tok) { - $this->parseError('Expected &#DEC; &#HEX;, got EOF'); - $this->scanner->unconsume(1); - - return '&'; - } - - // Hexidecimal encoding. - // X[0-9a-fA-F]+; - // x[0-9a-fA-F]+; - if ('x' === $tok || 'X' === $tok) { - $tok = $this->scanner->next(); // Consume x - - // Convert from hex code to char. - $hex = $this->scanner->getHex(); - if (empty($hex)) { - $this->parseError('Expected &#xHEX;, got &#x%s', $tok); - // We unconsume because we don't know what parser rules might - // be in effect for the remaining chars. For example. '&#>' - // might result in a specific parsing rule inside of tag - // contexts, while not inside of pcdata context. - $this->scanner->unconsume(2); - - return '&'; - } - $entity = CharacterReference::lookupHex($hex); - } // Decimal encoding. - // [0-9]+; - else { - // Convert from decimal to char. - $numeric = $this->scanner->getNumeric(); - if (false === $numeric) { - $this->parseError('Expected &#DIGITS;, got &#%s', $tok); - $this->scanner->unconsume(2); - - return '&'; - } - $entity = CharacterReference::lookupDecimal($numeric); - } - } elseif ('=' === $tok && $inAttribute) { - return '&'; - } else { // String entity. - // Attempt to consume a string up to a ';'. - // [a-zA-Z0-9]+; - $cname = $this->scanner->getAsciiAlphaNum(); - $entity = CharacterReference::lookupName($cname); - - // When no entity is found provide the name of the unmatched string - // and continue on as the & is not part of an entity. The & will - // be converted to & elsewhere. - if (null === $entity) { - if (!$inAttribute || '' === $cname) { - $this->parseError("No match in entity table for '%s'", $cname); - } - $this->scanner->unconsume($this->scanner->position() - $start); - - return '&'; - } - } - - // The scanner has advanced the cursor for us. - $tok = $this->scanner->current(); - - // We have an entity. We're done here. - if (';' === $tok) { - $this->scanner->consume(); - - return $entity; - } - - // Failing to match ; means unconsume the entire string. - $this->scanner->unconsume($this->scanner->position() - $start); - - $this->parseError('Expected &ENTITY;, got &ENTITY%s (no trailing ;) ', $tok); - - return '&'; - } - - /** - * Checks whether a (single-byte) character is an ASCII letter or not. - * - * @param string $input A single-byte string - * - * @return bool True if it is a letter, False otherwise - */ - protected function is_alpha($input) - { - $code = ord($input); - - return ($code >= 97 && $code <= 122) || ($code >= 65 && $code <= 90); - } -} diff --git a/docker/statistics/vendor/masterminds/html5/src/HTML5/Parser/TreeBuildingRules.php b/docker/statistics/vendor/masterminds/html5/src/HTML5/Parser/TreeBuildingRules.php deleted file mode 100644 index 00d3951f..00000000 --- a/docker/statistics/vendor/masterminds/html5/src/HTML5/Parser/TreeBuildingRules.php +++ /dev/null @@ -1,127 +0,0 @@ - 1, - 'dd' => 1, - 'dt' => 1, - 'rt' => 1, - 'rp' => 1, - 'tr' => 1, - 'th' => 1, - 'td' => 1, - 'thead' => 1, - 'tfoot' => 1, - 'tbody' => 1, - 'table' => 1, - 'optgroup' => 1, - 'option' => 1, - ); - - /** - * Returns true if the given tagname has special processing rules. - */ - public function hasRules($tagname) - { - return isset(static::$tags[$tagname]); - } - - /** - * Evaluate the rule for the current tag name. - * - * This may modify the existing DOM. - * - * @return \DOMElement The new Current DOM element. - */ - public function evaluate($new, $current) - { - switch ($new->tagName) { - case 'li': - return $this->handleLI($new, $current); - case 'dt': - case 'dd': - return $this->handleDT($new, $current); - case 'rt': - case 'rp': - return $this->handleRT($new, $current); - case 'optgroup': - return $this->closeIfCurrentMatches($new, $current, array( - 'optgroup', - )); - case 'option': - return $this->closeIfCurrentMatches($new, $current, array( - 'option', - )); - case 'tr': - return $this->closeIfCurrentMatches($new, $current, array( - 'tr', - )); - case 'td': - case 'th': - return $this->closeIfCurrentMatches($new, $current, array( - 'th', - 'td', - )); - case 'tbody': - case 'thead': - case 'tfoot': - case 'table': // Spec isn't explicit about this, but it's necessary. - - return $this->closeIfCurrentMatches($new, $current, array( - 'thead', - 'tfoot', - 'tbody', - )); - } - - return $current; - } - - protected function handleLI($ele, $current) - { - return $this->closeIfCurrentMatches($ele, $current, array( - 'li', - )); - } - - protected function handleDT($ele, $current) - { - return $this->closeIfCurrentMatches($ele, $current, array( - 'dt', - 'dd', - )); - } - - protected function handleRT($ele, $current) - { - return $this->closeIfCurrentMatches($ele, $current, array( - 'rt', - 'rp', - )); - } - - protected function closeIfCurrentMatches($ele, $current, $match) - { - if (in_array($current->tagName, $match, true)) { - $current->parentNode->appendChild($ele); - } else { - $current->appendChild($ele); - } - - return $ele; - } -} diff --git a/docker/statistics/vendor/masterminds/html5/src/HTML5/Parser/UTF8Utils.php b/docker/statistics/vendor/masterminds/html5/src/HTML5/Parser/UTF8Utils.php deleted file mode 100644 index 4405e4cc..00000000 --- a/docker/statistics/vendor/masterminds/html5/src/HTML5/Parser/UTF8Utils.php +++ /dev/null @@ -1,177 +0,0 @@ - - -Permission is hereby granted, free of charge, to any person obtaining a -copy of this software and associated documentation files (the - "Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions: - -The above copyright notice and this permission notice shall be included -in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -*/ - -use Masterminds\HTML5\Exception; - -class UTF8Utils -{ - /** - * The Unicode replacement character. - */ - const FFFD = "\xEF\xBF\xBD"; - - /** - * Count the number of characters in a string. - * UTF-8 aware. This will try (in order) iconv, MB, and finally a custom counter. - * - * @param string $string - * - * @return int - */ - public static function countChars($string) - { - // Get the length for the string we need. - if (function_exists('mb_strlen')) { - return mb_strlen($string, 'utf-8'); - } - - if (function_exists('iconv_strlen')) { - return iconv_strlen($string, 'utf-8'); - } - - $count = count_chars($string); - - // 0x80 = 0x7F - 0 + 1 (one added to get inclusive range) - // 0x33 = 0xF4 - 0x2C + 1 (one added to get inclusive range) - return array_sum(array_slice($count, 0, 0x80)) + array_sum(array_slice($count, 0xC2, 0x33)); - } - - /** - * Convert data from the given encoding to UTF-8. - * - * This has not yet been tested with charactersets other than UTF-8. - * It should work with ISO-8859-1/-13 and standard Latin Win charsets. - * - * @param string $data The data to convert - * @param string $encoding A valid encoding. Examples: http://www.php.net/manual/en/mbstring.supported-encodings.php - * - * @return string - */ - public static function convertToUTF8($data, $encoding = 'UTF-8') - { - /* - * From the HTML5 spec: Given an encoding, the bytes in the input stream must be converted - * to Unicode characters for the tokeniser, as described by the rules for that encoding, - * except that the leading U+FEFF BYTE ORDER MARK character, if any, must not be stripped - * by the encoding layer (it is stripped by the rule below). Bytes or sequences of bytes - * in the original byte stream that could not be converted to Unicode characters must be - * converted to U+FFFD REPLACEMENT CHARACTER code points. - */ - - // mb_convert_encoding is chosen over iconv because of a bug. The best - // details for the bug are on http://us1.php.net/manual/en/function.iconv.php#108643 - // which contains links to the actual but reports as well as work around - // details. - if (function_exists('mb_convert_encoding')) { - // mb library has the following behaviors: - // - UTF-16 surrogates result in false. - // - Overlongs and outside Plane 16 result in empty strings. - - // Before we run mb_convert_encoding we need to tell it what to do with - // characters it does not know. This could be different than the parent - // application executing this library so we store the value, change it - // to our needs, and then change it back when we are done. This feels - // a little excessive and it would be great if there was a better way. - $save = mb_substitute_character(); - mb_substitute_character('none'); - $data = mb_convert_encoding($data, 'UTF-8', $encoding); - mb_substitute_character($save); - } - // @todo Get iconv running in at least some environments if that is possible. - elseif (function_exists('iconv') && 'auto' !== $encoding) { - // fprintf(STDOUT, "iconv found\n"); - // iconv has the following behaviors: - // - Overlong representations are ignored. - // - Beyond Plane 16 is replaced with a lower char. - // - Incomplete sequences generate a warning. - $data = @iconv($encoding, 'UTF-8//IGNORE', $data); - } else { - throw new Exception('Not implemented, please install mbstring or iconv'); - } - - /* - * One leading U+FEFF BYTE ORDER MARK character must be ignored if any are present. - */ - if ("\xEF\xBB\xBF" === substr($data, 0, 3)) { - $data = substr($data, 3); - } - - return $data; - } - - /** - * Checks for Unicode code points that are not valid in a document. - * - * @param string $data A string to analyze - * - * @return array An array of (string) error messages produced by the scanning - */ - public static function checkForIllegalCodepoints($data) - { - // Vestigal error handling. - $errors = array(); - - /* - * All U+0000 null characters in the input must be replaced by U+FFFD REPLACEMENT CHARACTERs. - * Any occurrences of such characters is a parse error. - */ - for ($i = 0, $count = substr_count($data, "\0"); $i < $count; ++$i) { - $errors[] = 'null-character'; - } - - /* - * Any occurrences of any characters in the ranges U+0001 to U+0008, U+000B, U+000E to U+001F, U+007F - * to U+009F, U+D800 to U+DFFF , U+FDD0 to U+FDEF, and characters U+FFFE, U+FFFF, U+1FFFE, U+1FFFF, - * U+2FFFE, U+2FFFF, U+3FFFE, U+3FFFF, U+4FFFE, U+4FFFF, U+5FFFE, U+5FFFF, U+6FFFE, U+6FFFF, U+7FFFE, - * U+7FFFF, U+8FFFE, U+8FFFF, U+9FFFE, U+9FFFF, U+AFFFE, U+AFFFF, U+BFFFE, U+BFFFF, U+CFFFE, U+CFFFF, - * U+DFFFE, U+DFFFF, U+EFFFE, U+EFFFF, U+FFFFE, U+FFFFF, U+10FFFE, and U+10FFFF are parse errors. - * (These are all control characters or permanently undefined Unicode characters.) - */ - // Check PCRE is loaded. - $count = preg_match_all( - '/(?: - [\x01-\x08\x0B\x0E-\x1F\x7F] # U+0001 to U+0008, U+000B, U+000E to U+001F and U+007F - | - \xC2[\x80-\x9F] # U+0080 to U+009F - | - \xED(?:\xA0[\x80-\xFF]|[\xA1-\xBE][\x00-\xFF]|\xBF[\x00-\xBF]) # U+D800 to U+DFFFF - | - \xEF\xB7[\x90-\xAF] # U+FDD0 to U+FDEF - | - \xEF\xBF[\xBE\xBF] # U+FFFE and U+FFFF - | - [\xF0-\xF4][\x8F-\xBF]\xBF[\xBE\xBF] # U+nFFFE and U+nFFFF (1 <= n <= 10_{16}) - )/x', $data, $matches); - for ($i = 0; $i < $count; ++$i) { - $errors[] = 'invalid-codepoint'; - } - - return $errors; - } -} diff --git a/docker/statistics/vendor/masterminds/html5/src/HTML5/Serializer/HTML5Entities.php b/docker/statistics/vendor/masterminds/html5/src/HTML5/Serializer/HTML5Entities.php deleted file mode 100644 index e9421a12..00000000 --- a/docker/statistics/vendor/masterminds/html5/src/HTML5/Serializer/HTML5Entities.php +++ /dev/null @@ -1,1533 +0,0 @@ - ' ', - "\n" => ' ', - '!' => '!', - '"' => '"', - '#' => '#', - '$' => '$', - '%' => '%', - '&' => '&', - '\'' => ''', - '(' => '(', - ')' => ')', - '*' => '*', - '+' => '+', - ',' => ',', - '.' => '.', - '/' => '/', - ':' => ':', - ';' => ';', - '<' => '<', - '<⃒' => '&nvlt', - '=' => '=', - '=⃥' => '&bne', - '>' => '>', - '>⃒' => '&nvgt', - '?' => '?', - '@' => '@', - '[' => '[', - '\\' => '\', - ']' => ']', - '^' => '^', - '_' => '_', - '`' => '`', - 'fj' => '&fjlig', - '{' => '{', - '|' => '|', - '}' => '}', - ' ' => ' ', - '¡' => '¡', - '¢' => '¢', - '£' => '£', - '¤' => '¤', - '¥' => '¥', - '¦' => '¦', - '§' => '§', - '¨' => '¨', - '©' => '©', - 'ª' => 'ª', - '«' => '«', - '¬' => '¬', - '­' => '­', - '®' => '®', - '¯' => '¯', - '°' => '°', - '±' => '±', - '²' => '²', - '³' => '³', - '´' => '´', - 'µ' => 'µ', - '¶' => '¶', - '·' => '·', - '¸' => '¸', - '¹' => '¹', - 'º' => 'º', - '»' => '»', - '¼' => '¼', - '½' => '½', - '¾' => '¾', - '¿' => '¿', - 'À' => 'À', - 'Á' => 'Á', - 'Â' => 'Â', - 'Ã' => 'Ã', - 'Ä' => 'Ä', - 'Å' => 'Å', - 'Æ' => 'Æ', - 'Ç' => 'Ç', - 'È' => 'È', - 'É' => 'É', - 'Ê' => 'Ê', - 'Ë' => 'Ë', - 'Ì' => 'Ì', - 'Í' => 'Í', - 'Î' => 'Î', - 'Ï' => 'Ï', - 'Ð' => 'Ð', - 'Ñ' => 'Ñ', - 'Ò' => 'Ò', - 'Ó' => 'Ó', - 'Ô' => 'Ô', - 'Õ' => 'Õ', - 'Ö' => 'Ö', - '×' => '×', - 'Ø' => 'Ø', - 'Ù' => 'Ù', - 'Ú' => 'Ú', - 'Û' => 'Û', - 'Ü' => 'Ü', - 'Ý' => 'Ý', - 'Þ' => 'Þ', - 'ß' => 'ß', - 'à' => 'à', - 'á' => 'á', - 'â' => 'â', - 'ã' => 'ã', - 'ä' => 'ä', - 'å' => 'å', - 'æ' => 'æ', - 'ç' => 'ç', - 'è' => 'è', - 'é' => 'é', - 'ê' => 'ê', - 'ë' => 'ë', - 'ì' => 'ì', - 'í' => 'í', - 'î' => 'î', - 'ï' => 'ï', - 'ð' => 'ð', - 'ñ' => 'ñ', - 'ò' => 'ò', - 'ó' => 'ó', - 'ô' => 'ô', - 'õ' => 'õ', - 'ö' => 'ö', - '÷' => '÷', - 'ø' => 'ø', - 'ù' => 'ù', - 'ú' => 'ú', - 'û' => 'û', - 'ü' => 'ü', - 'ý' => 'ý', - 'þ' => 'þ', - 'ÿ' => 'ÿ', - 'Ā' => 'Ā', - 'ā' => 'ā', - 'Ă' => 'Ă', - 'ă' => 'ă', - 'Ą' => 'Ą', - 'ą' => 'ą', - 'Ć' => 'Ć', - 'ć' => 'ć', - 'Ĉ' => 'Ĉ', - 'ĉ' => 'ĉ', - 'Ċ' => 'Ċ', - 'ċ' => 'ċ', - 'Č' => 'Č', - 'č' => 'č', - 'Ď' => 'Ď', - 'ď' => 'ď', - 'Đ' => 'Đ', - 'đ' => 'đ', - 'Ē' => 'Ē', - 'ē' => 'ē', - 'Ė' => 'Ė', - 'ė' => 'ė', - 'Ę' => 'Ę', - 'ę' => 'ę', - 'Ě' => 'Ě', - 'ě' => 'ě', - 'Ĝ' => 'Ĝ', - 'ĝ' => 'ĝ', - 'Ğ' => 'Ğ', - 'ğ' => 'ğ', - 'Ġ' => 'Ġ', - 'ġ' => 'ġ', - 'Ģ' => 'Ģ', - 'Ĥ' => 'Ĥ', - 'ĥ' => 'ĥ', - 'Ħ' => 'Ħ', - 'ħ' => 'ħ', - 'Ĩ' => 'Ĩ', - 'ĩ' => 'ĩ', - 'Ī' => 'Ī', - 'ī' => 'ī', - 'Į' => 'Į', - 'į' => 'į', - 'İ' => 'İ', - 'ı' => 'ı', - 'IJ' => 'IJ', - 'ij' => 'ij', - 'Ĵ' => 'Ĵ', - 'ĵ' => 'ĵ', - 'Ķ' => 'Ķ', - 'ķ' => 'ķ', - 'ĸ' => 'ĸ', - 'Ĺ' => 'Ĺ', - 'ĺ' => 'ĺ', - 'Ļ' => 'Ļ', - 'ļ' => 'ļ', - 'Ľ' => 'Ľ', - 'ľ' => 'ľ', - 'Ŀ' => 'Ŀ', - 'ŀ' => 'ŀ', - 'Ł' => 'Ł', - 'ł' => 'ł', - 'Ń' => 'Ń', - 'ń' => 'ń', - 'Ņ' => 'Ņ', - 'ņ' => 'ņ', - 'Ň' => 'Ň', - 'ň' => 'ň', - 'ʼn' => 'ʼn', - 'Ŋ' => 'Ŋ', - 'ŋ' => 'ŋ', - 'Ō' => 'Ō', - 'ō' => 'ō', - 'Ő' => 'Ő', - 'ő' => 'ő', - 'Œ' => 'Œ', - 'œ' => 'œ', - 'Ŕ' => 'Ŕ', - 'ŕ' => 'ŕ', - 'Ŗ' => 'Ŗ', - 'ŗ' => 'ŗ', - 'Ř' => 'Ř', - 'ř' => 'ř', - 'Ś' => 'Ś', - 'ś' => 'ś', - 'Ŝ' => 'Ŝ', - 'ŝ' => 'ŝ', - 'Ş' => 'Ş', - 'ş' => 'ş', - 'Š' => 'Š', - 'š' => 'š', - 'Ţ' => 'Ţ', - 'ţ' => 'ţ', - 'Ť' => 'Ť', - 'ť' => 'ť', - 'Ŧ' => 'Ŧ', - 'ŧ' => 'ŧ', - 'Ũ' => 'Ũ', - 'ũ' => 'ũ', - 'Ū' => 'Ū', - 'ū' => 'ū', - 'Ŭ' => 'Ŭ', - 'ŭ' => 'ŭ', - 'Ů' => 'Ů', - 'ů' => 'ů', - 'Ű' => 'Ű', - 'ű' => 'ű', - 'Ų' => 'Ų', - 'ų' => 'ų', - 'Ŵ' => 'Ŵ', - 'ŵ' => 'ŵ', - 'Ŷ' => 'Ŷ', - 'ŷ' => 'ŷ', - 'Ÿ' => 'Ÿ', - 'Ź' => 'Ź', - 'ź' => 'ź', - 'Ż' => 'Ż', - 'ż' => 'ż', - 'Ž' => 'Ž', - 'ž' => 'ž', - 'ƒ' => 'ƒ', - 'Ƶ' => 'Ƶ', - 'ǵ' => 'ǵ', - 'ȷ' => 'ȷ', - 'ˆ' => 'ˆ', - 'ˇ' => 'ˇ', - '˘' => '˘', - '˙' => '˙', - '˚' => '˚', - '˛' => '˛', - '˜' => '˜', - '˝' => '˝', - '̑' => '̑', - 'Α' => 'Α', - 'Β' => 'Β', - 'Γ' => 'Γ', - 'Δ' => 'Δ', - 'Ε' => 'Ε', - 'Ζ' => 'Ζ', - 'Η' => 'Η', - 'Θ' => 'Θ', - 'Ι' => 'Ι', - 'Κ' => 'Κ', - 'Λ' => 'Λ', - 'Μ' => 'Μ', - 'Ν' => 'Ν', - 'Ξ' => 'Ξ', - 'Ο' => 'Ο', - 'Π' => 'Π', - 'Ρ' => 'Ρ', - 'Σ' => 'Σ', - 'Τ' => 'Τ', - 'Υ' => 'Υ', - 'Φ' => 'Φ', - 'Χ' => 'Χ', - 'Ψ' => 'Ψ', - 'Ω' => 'Ω', - 'α' => 'α', - 'β' => 'β', - 'γ' => 'γ', - 'δ' => 'δ', - 'ε' => 'ε', - 'ζ' => 'ζ', - 'η' => 'η', - 'θ' => 'θ', - 'ι' => 'ι', - 'κ' => 'κ', - 'λ' => 'λ', - 'μ' => 'μ', - 'ν' => 'ν', - 'ξ' => 'ξ', - 'ο' => 'ο', - 'π' => 'π', - 'ρ' => 'ρ', - 'ς' => 'ς', - 'σ' => 'σ', - 'τ' => 'τ', - 'υ' => 'υ', - 'φ' => 'φ', - 'χ' => 'χ', - 'ψ' => 'ψ', - 'ω' => 'ω', - 'ϑ' => 'ϑ', - 'ϒ' => 'ϒ', - 'ϕ' => 'ϕ', - 'ϖ' => 'ϖ', - 'Ϝ' => 'Ϝ', - 'ϝ' => 'ϝ', - 'ϰ' => 'ϰ', - 'ϱ' => 'ϱ', - 'ϵ' => 'ϵ', - '϶' => '϶', - 'Ё' => 'Ё', - 'Ђ' => 'Ђ', - 'Ѓ' => 'Ѓ', - 'Є' => 'Є', - 'Ѕ' => 'Ѕ', - 'І' => 'І', - 'Ї' => 'Ї', - 'Ј' => 'Ј', - 'Љ' => 'Љ', - 'Њ' => 'Њ', - 'Ћ' => 'Ћ', - 'Ќ' => 'Ќ', - 'Ў' => 'Ў', - 'Џ' => 'Џ', - 'А' => 'А', - 'Б' => 'Б', - 'В' => 'В', - 'Г' => 'Г', - 'Д' => 'Д', - 'Е' => 'Е', - 'Ж' => 'Ж', - 'З' => 'З', - 'И' => 'И', - 'Й' => 'Й', - 'К' => 'К', - 'Л' => 'Л', - 'М' => 'М', - 'Н' => 'Н', - 'О' => 'О', - 'П' => 'П', - 'Р' => 'Р', - 'С' => 'С', - 'Т' => 'Т', - 'У' => 'У', - 'Ф' => 'Ф', - 'Х' => 'Х', - 'Ц' => 'Ц', - 'Ч' => 'Ч', - 'Ш' => 'Ш', - 'Щ' => 'Щ', - 'Ъ' => 'Ъ', - 'Ы' => 'Ы', - 'Ь' => 'Ь', - 'Э' => 'Э', - 'Ю' => 'Ю', - 'Я' => 'Я', - 'а' => 'а', - 'б' => 'б', - 'в' => 'в', - 'г' => 'г', - 'д' => 'д', - 'е' => 'е', - 'ж' => 'ж', - 'з' => 'з', - 'и' => 'и', - 'й' => 'й', - 'к' => 'к', - 'л' => 'л', - 'м' => 'м', - 'н' => 'н', - 'о' => 'о', - 'п' => 'п', - 'р' => 'р', - 'с' => 'с', - 'т' => 'т', - 'у' => 'у', - 'ф' => 'ф', - 'х' => 'х', - 'ц' => 'ц', - 'ч' => 'ч', - 'ш' => 'ш', - 'щ' => 'щ', - 'ъ' => 'ъ', - 'ы' => 'ы', - 'ь' => 'ь', - 'э' => 'э', - 'ю' => 'ю', - 'я' => 'я', - 'ё' => 'ё', - 'ђ' => 'ђ', - 'ѓ' => 'ѓ', - 'є' => 'є', - 'ѕ' => 'ѕ', - 'і' => 'і', - 'ї' => 'ї', - 'ј' => 'ј', - 'љ' => 'љ', - 'њ' => 'њ', - 'ћ' => 'ћ', - 'ќ' => 'ќ', - 'ў' => 'ў', - 'џ' => 'џ', - ' ' => ' ', - ' ' => ' ', - ' ' => ' ', - ' ' => ' ', - ' ' => ' ', - ' ' => ' ', - ' ' => ' ', - ' ' => ' ', - '​' => '​', - '‌' => '‌', - '‍' => '‍', - '‎' => '‎', - '‏' => '‏', - '‐' => '‐', - '–' => '–', - '—' => '—', - '―' => '―', - '‖' => '‖', - '‘' => '‘', - '’' => '’', - '‚' => '‚', - '“' => '“', - '”' => '”', - '„' => '„', - '†' => '†', - '‡' => '‡', - '•' => '•', - '‥' => '‥', - '…' => '…', - '‰' => '‰', - '‱' => '‱', - '′' => '′', - '″' => '″', - '‴' => '‴', - '‵' => '‵', - '‹' => '‹', - '›' => '›', - '‾' => '‾', - '⁁' => '⁁', - '⁃' => '⁃', - '⁄' => '⁄', - '⁏' => '⁏', - '⁗' => '⁗', - ' ' => ' ', - '  ' => '&ThickSpace', - '⁠' => '⁠', - '⁡' => '⁡', - '⁢' => '⁢', - '⁣' => '⁣', - '€' => '€', - '⃛' => '⃛', - '⃜' => '⃜', - 'ℂ' => 'ℂ', - '℅' => '℅', - 'ℊ' => 'ℊ', - 'ℋ' => 'ℋ', - 'ℌ' => 'ℌ', - 'ℍ' => 'ℍ', - 'ℎ' => 'ℎ', - 'ℏ' => 'ℏ', - 'ℐ' => 'ℐ', - 'ℑ' => 'ℑ', - 'ℒ' => 'ℒ', - 'ℓ' => 'ℓ', - 'ℕ' => 'ℕ', - '№' => '№', - '℗' => '℗', - '℘' => '℘', - 'ℙ' => 'ℙ', - 'ℚ' => 'ℚ', - 'ℛ' => 'ℛ', - 'ℜ' => 'ℜ', - 'ℝ' => 'ℝ', - '℞' => '℞', - '™' => '™', - 'ℤ' => 'ℤ', - '℧' => '℧', - 'ℨ' => 'ℨ', - '℩' => '℩', - 'ℬ' => 'ℬ', - 'ℭ' => 'ℭ', - 'ℯ' => 'ℯ', - 'ℰ' => 'ℰ', - 'ℱ' => 'ℱ', - 'ℳ' => 'ℳ', - 'ℴ' => 'ℴ', - 'ℵ' => 'ℵ', - 'ℶ' => 'ℶ', - 'ℷ' => 'ℷ', - 'ℸ' => 'ℸ', - 'ⅅ' => 'ⅅ', - 'ⅆ' => 'ⅆ', - 'ⅇ' => 'ⅇ', - 'ⅈ' => 'ⅈ', - '⅓' => '⅓', - '⅔' => '⅔', - '⅕' => '⅕', - '⅖' => '⅖', - '⅗' => '⅗', - '⅘' => '⅘', - '⅙' => '⅙', - '⅚' => '⅚', - '⅛' => '⅛', - '⅜' => '⅜', - '⅝' => '⅝', - '⅞' => '⅞', - '←' => '←', - '↑' => '↑', - '→' => '→', - '↓' => '↓', - '↔' => '↔', - '↕' => '↕', - '↖' => '↖', - '↗' => '↗', - '↘' => '↘', - '↙' => '↙', - '↚' => '↚', - '↛' => '↛', - '↝' => '↝', - '↝̸' => '&nrarrw', - '↞' => '↞', - '↟' => '↟', - '↠' => '↠', - '↡' => '↡', - '↢' => '↢', - '↣' => '↣', - '↤' => '↤', - '↥' => '↥', - '↦' => '↦', - '↧' => '↧', - '↩' => '↩', - '↪' => '↪', - '↫' => '↫', - '↬' => '↬', - '↭' => '↭', - '↮' => '↮', - '↰' => '↰', - '↱' => '↱', - '↲' => '↲', - '↳' => '↳', - '↵' => '↵', - '↶' => '↶', - '↷' => '↷', - '↺' => '↺', - '↻' => '↻', - '↼' => '↼', - '↽' => '↽', - '↾' => '↾', - '↿' => '↿', - '⇀' => '⇀', - '⇁' => '⇁', - '⇂' => '⇂', - '⇃' => '⇃', - '⇄' => '⇄', - '⇅' => '⇅', - '⇆' => '⇆', - '⇇' => '⇇', - '⇈' => '⇈', - '⇉' => '⇉', - '⇊' => '⇊', - '⇋' => '⇋', - '⇌' => '⇌', - '⇍' => '⇍', - '⇎' => '⇎', - '⇏' => '⇏', - '⇐' => '⇐', - '⇑' => '⇑', - '⇒' => '⇒', - '⇓' => '⇓', - '⇔' => '⇔', - '⇕' => '⇕', - '⇖' => '⇖', - '⇗' => '⇗', - '⇘' => '⇘', - '⇙' => '⇙', - '⇚' => '⇚', - '⇛' => '⇛', - '⇝' => '⇝', - '⇤' => '⇤', - '⇥' => '⇥', - '⇵' => '⇵', - '⇽' => '⇽', - '⇾' => '⇾', - '⇿' => '⇿', - '∀' => '∀', - '∁' => '∁', - '∂' => '∂', - '∂̸' => '&npart', - '∃' => '∃', - '∄' => '∄', - '∅' => '∅', - '∇' => '∇', - '∈' => '∈', - '∉' => '∉', - '∋' => '∋', - '∌' => '∌', - '∏' => '∏', - '∐' => '∐', - '∑' => '∑', - '−' => '−', - '∓' => '∓', - '∔' => '∔', - '∖' => '∖', - '∗' => '∗', - '∘' => '∘', - '√' => '√', - '∝' => '∝', - '∞' => '∞', - '∟' => '∟', - '∠' => '∠', - '∠⃒' => '&nang', - '∡' => '∡', - '∢' => '∢', - '∣' => '∣', - '∤' => '∤', - '∥' => '∥', - '∦' => '∦', - '∧' => '∧', - '∨' => '∨', - '∩' => '∩', - '∩︀' => '&caps', - '∪' => '∪', - '∪︀' => '&cups', - '∫' => '∫', - '∬' => '∬', - '∭' => '∭', - '∮' => '∮', - '∯' => '∯', - '∰' => '∰', - '∱' => '∱', - '∲' => '∲', - '∳' => '∳', - '∴' => '∴', - '∵' => '∵', - '∶' => '∶', - '∷' => '∷', - '∸' => '∸', - '∺' => '∺', - '∻' => '∻', - '∼' => '∼', - '∼⃒' => '&nvsim', - '∽' => '∽', - '∽̱' => '&race', - '∾' => '∾', - '∾̳' => '&acE', - '∿' => '∿', - '≀' => '≀', - '≁' => '≁', - '≂' => '≂', - '≂̸' => '&nesim', - '≃' => '≃', - '≄' => '≄', - '≅' => '≅', - '≆' => '≆', - '≇' => '≇', - '≈' => '≈', - '≉' => '≉', - '≊' => '≊', - '≋' => '≋', - '≋̸' => '&napid', - '≌' => '≌', - '≍' => '≍', - '≍⃒' => '&nvap', - '≎' => '≎', - '≎̸' => '&nbump', - '≏' => '≏', - '≏̸' => '&nbumpe', - '≐' => '≐', - '≐̸' => '&nedot', - '≑' => '≑', - '≒' => '≒', - '≓' => '≓', - '≔' => '≔', - '≕' => '≕', - '≖' => '≖', - '≗' => '≗', - '≙' => '≙', - '≚' => '≚', - '≜' => '≜', - '≟' => '≟', - '≠' => '≠', - '≡' => '≡', - '≡⃥' => '&bnequiv', - '≢' => '≢', - '≤' => '≤', - '≤⃒' => '&nvle', - '≥' => '≥', - '≥⃒' => '&nvge', - '≦' => '≦', - '≦̸' => '&nlE', - '≧' => '≧', - '≧̸' => '&NotGreaterFullEqual', - '≨' => '≨', - '≨︀' => '&lvertneqq', - '≩' => '≩', - '≩︀' => '&gvertneqq', - '≪' => '≪', - '≪̸' => '&nLtv', - '≪⃒' => '&nLt', - '≫' => '≫', - '≫̸' => '&NotGreaterGreater', - '≫⃒' => '&nGt', - '≬' => '≬', - '≭' => '≭', - '≮' => '≮', - '≯' => '≯', - '≰' => '≰', - '≱' => '≱', - '≲' => '≲', - '≳' => '≳', - '≴' => '≴', - '≵' => '≵', - '≶' => '≶', - '≷' => '≷', - '≸' => '≸', - '≹' => '≹', - '≺' => '≺', - '≻' => '≻', - '≼' => '≼', - '≽' => '≽', - '≾' => '≾', - '≿' => '≿', - '≿̸' => '&NotSucceedsTilde', - '⊀' => '⊀', - '⊁' => '⊁', - '⊂' => '⊂', - '⊂⃒' => '&vnsub', - '⊃' => '⊃', - '⊃⃒' => '&nsupset', - '⊄' => '⊄', - '⊅' => '⊅', - '⊆' => '⊆', - '⊇' => '⊇', - '⊈' => '⊈', - '⊉' => '⊉', - '⊊' => '⊊', - '⊊︀' => '&vsubne', - '⊋' => '⊋', - '⊋︀' => '&vsupne', - '⊍' => '⊍', - '⊎' => '⊎', - '⊏' => '⊏', - '⊏̸' => '&NotSquareSubset', - '⊐' => '⊐', - '⊐̸' => '&NotSquareSuperset', - '⊑' => '⊑', - '⊒' => '⊒', - '⊓' => '⊓', - '⊓︀' => '&sqcaps', - '⊔' => '⊔', - '⊔︀' => '&sqcups', - '⊕' => '⊕', - '⊖' => '⊖', - '⊗' => '⊗', - '⊘' => '⊘', - '⊙' => '⊙', - '⊚' => '⊚', - '⊛' => '⊛', - '⊝' => '⊝', - '⊞' => '⊞', - '⊟' => '⊟', - '⊠' => '⊠', - '⊡' => '⊡', - '⊢' => '⊢', - '⊣' => '⊣', - '⊤' => '⊤', - '⊥' => '⊥', - '⊧' => '⊧', - '⊨' => '⊨', - '⊩' => '⊩', - '⊪' => '⊪', - '⊫' => '⊫', - '⊬' => '⊬', - '⊭' => '⊭', - '⊮' => '⊮', - '⊯' => '⊯', - '⊰' => '⊰', - '⊲' => '⊲', - '⊳' => '⊳', - '⊴' => '⊴', - '⊴⃒' => '&nvltrie', - '⊵' => '⊵', - '⊵⃒' => '&nvrtrie', - '⊶' => '⊶', - '⊷' => '⊷', - '⊸' => '⊸', - '⊹' => '⊹', - '⊺' => '⊺', - '⊻' => '⊻', - '⊽' => '⊽', - '⊾' => '⊾', - '⊿' => '⊿', - '⋀' => '⋀', - '⋁' => '⋁', - '⋂' => '⋂', - '⋃' => '⋃', - '⋄' => '⋄', - '⋅' => '⋅', - '⋆' => '⋆', - '⋇' => '⋇', - '⋈' => '⋈', - '⋉' => '⋉', - '⋊' => '⋊', - '⋋' => '⋋', - '⋌' => '⋌', - '⋍' => '⋍', - '⋎' => '⋎', - '⋏' => '⋏', - '⋐' => '⋐', - '⋑' => '⋑', - '⋒' => '⋒', - '⋓' => '⋓', - '⋔' => '⋔', - '⋕' => '⋕', - '⋖' => '⋖', - '⋗' => '⋗', - '⋘' => '⋘', - '⋘̸' => '&nLl', - '⋙' => '⋙', - '⋙̸' => '&nGg', - '⋚' => '⋚', - '⋚︀' => '&lesg', - '⋛' => '⋛', - '⋛︀' => '&gesl', - '⋞' => '⋞', - '⋟' => '⋟', - '⋠' => '⋠', - '⋡' => '⋡', - '⋢' => '⋢', - '⋣' => '⋣', - '⋦' => '⋦', - '⋧' => '⋧', - '⋨' => '⋨', - '⋩' => '⋩', - '⋪' => '⋪', - '⋫' => '⋫', - '⋬' => '⋬', - '⋭' => '⋭', - '⋮' => '⋮', - '⋯' => '⋯', - '⋰' => '⋰', - '⋱' => '⋱', - '⋲' => '⋲', - '⋳' => '⋳', - '⋴' => '⋴', - '⋵' => '⋵', - '⋵̸' => '¬indot', - '⋶' => '⋶', - '⋷' => '⋷', - '⋹' => '⋹', - '⋹̸' => '¬inE', - '⋺' => '⋺', - '⋻' => '⋻', - '⋼' => '⋼', - '⋽' => '⋽', - '⋾' => '⋾', - '⌅' => '⌅', - '⌆' => '⌆', - '⌈' => '⌈', - '⌉' => '⌉', - '⌊' => '⌊', - '⌋' => '⌋', - '⌌' => '⌌', - '⌍' => '⌍', - '⌎' => '⌎', - '⌏' => '⌏', - '⌐' => '⌐', - '⌒' => '⌒', - '⌓' => '⌓', - '⌕' => '⌕', - '⌖' => '⌖', - '⌜' => '⌜', - '⌝' => '⌝', - '⌞' => '⌞', - '⌟' => '⌟', - '⌢' => '⌢', - '⌣' => '⌣', - '⌭' => '⌭', - '⌮' => '⌮', - '⌶' => '⌶', - '⌽' => '⌽', - '⌿' => '⌿', - '⍼' => '⍼', - '⎰' => '⎰', - '⎱' => '⎱', - '⎴' => '⎴', - '⎵' => '⎵', - '⎶' => '⎶', - '⏜' => '⏜', - '⏝' => '⏝', - '⏞' => '⏞', - '⏟' => '⏟', - '⏢' => '⏢', - '⏧' => '⏧', - '␣' => '␣', - 'Ⓢ' => 'Ⓢ', - '─' => '─', - '│' => '│', - '┌' => '┌', - '┐' => '┐', - '└' => '└', - '┘' => '┘', - '├' => '├', - '┤' => '┤', - '┬' => '┬', - '┴' => '┴', - '┼' => '┼', - '═' => '═', - '║' => '║', - '╒' => '╒', - '╓' => '╓', - '╔' => '╔', - '╕' => '╕', - '╖' => '╖', - '╗' => '╗', - '╘' => '╘', - '╙' => '╙', - '╚' => '╚', - '╛' => '╛', - '╜' => '╜', - '╝' => '╝', - '╞' => '╞', - '╟' => '╟', - '╠' => '╠', - '╡' => '╡', - '╢' => '╢', - '╣' => '╣', - '╤' => '╤', - '╥' => '╥', - '╦' => '╦', - '╧' => '╧', - '╨' => '╨', - '╩' => '╩', - '╪' => '╪', - '╫' => '╫', - '╬' => '╬', - '▀' => '▀', - '▄' => '▄', - '█' => '█', - '░' => '░', - '▒' => '▒', - '▓' => '▓', - '□' => '□', - '▪' => '▪', - '▫' => '▫', - '▭' => '▭', - '▮' => '▮', - '▱' => '▱', - '△' => '△', - '▴' => '▴', - '▵' => '▵', - '▸' => '▸', - '▹' => '▹', - '▽' => '▽', - '▾' => '▾', - '▿' => '▿', - '◂' => '◂', - '◃' => '◃', - '◊' => '◊', - '○' => '○', - '◬' => '◬', - '◯' => '◯', - '◸' => '◸', - '◹' => '◹', - '◺' => '◺', - '◻' => '◻', - '◼' => '◼', - '★' => '★', - '☆' => '☆', - '☎' => '☎', - '♀' => '♀', - '♂' => '♂', - '♠' => '♠', - '♣' => '♣', - '♥' => '♥', - '♦' => '♦', - '♪' => '♪', - '♭' => '♭', - '♮' => '♮', - '♯' => '♯', - '✓' => '✓', - '✗' => '✗', - '✠' => '✠', - '✶' => '✶', - '❘' => '❘', - '❲' => '❲', - '❳' => '❳', - '⟈' => '⟈', - '⟉' => '⟉', - '⟦' => '⟦', - '⟧' => '⟧', - '⟨' => '⟨', - '⟩' => '⟩', - '⟪' => '⟪', - '⟫' => '⟫', - '⟬' => '⟬', - '⟭' => '⟭', - '⟵' => '⟵', - '⟶' => '⟶', - '⟷' => '⟷', - '⟸' => '⟸', - '⟹' => '⟹', - '⟺' => '⟺', - '⟼' => '⟼', - '⟿' => '⟿', - '⤂' => '⤂', - '⤃' => '⤃', - '⤄' => '⤄', - '⤅' => '⤅', - '⤌' => '⤌', - '⤍' => '⤍', - '⤎' => '⤎', - '⤏' => '⤏', - '⤐' => '⤐', - '⤑' => '⤑', - '⤒' => '⤒', - '⤓' => '⤓', - '⤖' => '⤖', - '⤙' => '⤙', - '⤚' => '⤚', - '⤛' => '⤛', - '⤜' => '⤜', - '⤝' => '⤝', - '⤞' => '⤞', - '⤟' => '⤟', - '⤠' => '⤠', - '⤣' => '⤣', - '⤤' => '⤤', - '⤥' => '⤥', - '⤦' => '⤦', - '⤧' => '⤧', - '⤨' => '⤨', - '⤩' => '⤩', - '⤪' => '⤪', - '⤳' => '⤳', - '⤳̸' => '&nrarrc', - '⤵' => '⤵', - '⤶' => '⤶', - '⤷' => '⤷', - '⤸' => '⤸', - '⤹' => '⤹', - '⤼' => '⤼', - '⤽' => '⤽', - '⥅' => '⥅', - '⥈' => '⥈', - '⥉' => '⥉', - '⥊' => '⥊', - '⥋' => '⥋', - '⥎' => '⥎', - '⥏' => '⥏', - '⥐' => '⥐', - '⥑' => '⥑', - '⥒' => '⥒', - '⥓' => '⥓', - '⥔' => '⥔', - '⥕' => '⥕', - '⥖' => '⥖', - '⥗' => '⥗', - '⥘' => '⥘', - '⥙' => '⥙', - '⥚' => '⥚', - '⥛' => '⥛', - '⥜' => '⥜', - '⥝' => '⥝', - '⥞' => '⥞', - '⥟' => '⥟', - '⥠' => '⥠', - '⥡' => '⥡', - '⥢' => '⥢', - '⥣' => '⥣', - '⥤' => '⥤', - '⥥' => '⥥', - '⥦' => '⥦', - '⥧' => '⥧', - '⥨' => '⥨', - '⥩' => '⥩', - '⥪' => '⥪', - '⥫' => '⥫', - '⥬' => '⥬', - '⥭' => '⥭', - '⥮' => '⥮', - '⥯' => '⥯', - '⥰' => '⥰', - '⥱' => '⥱', - '⥲' => '⥲', - '⥳' => '⥳', - '⥴' => '⥴', - '⥵' => '⥵', - '⥶' => '⥶', - '⥸' => '⥸', - '⥹' => '⥹', - '⥻' => '⥻', - '⥼' => '⥼', - '⥽' => '⥽', - '⥾' => '⥾', - '⥿' => '⥿', - '⦅' => '⦅', - '⦆' => '⦆', - '⦋' => '⦋', - '⦌' => '⦌', - '⦍' => '⦍', - '⦎' => '⦎', - '⦏' => '⦏', - '⦐' => '⦐', - '⦑' => '⦑', - '⦒' => '⦒', - '⦓' => '⦓', - '⦔' => '⦔', - '⦕' => '⦕', - '⦖' => '⦖', - '⦚' => '⦚', - '⦜' => '⦜', - '⦝' => '⦝', - '⦤' => '⦤', - '⦥' => '⦥', - '⦦' => '⦦', - '⦧' => '⦧', - '⦨' => '⦨', - '⦩' => '⦩', - '⦪' => '⦪', - '⦫' => '⦫', - '⦬' => '⦬', - '⦭' => '⦭', - '⦮' => '⦮', - '⦯' => '⦯', - '⦰' => '⦰', - '⦱' => '⦱', - '⦲' => '⦲', - '⦳' => '⦳', - '⦴' => '⦴', - '⦵' => '⦵', - '⦶' => '⦶', - '⦷' => '⦷', - '⦹' => '⦹', - '⦻' => '⦻', - '⦼' => '⦼', - '⦾' => '⦾', - '⦿' => '⦿', - '⧀' => '⧀', - '⧁' => '⧁', - '⧂' => '⧂', - '⧃' => '⧃', - '⧄' => '⧄', - '⧅' => '⧅', - '⧉' => '⧉', - '⧍' => '⧍', - '⧎' => '⧎', - '⧏' => '⧏', - '⧏̸' => '&NotLeftTriangleBar', - '⧐' => '⧐', - '⧐̸' => '&NotRightTriangleBar', - '⧜' => '⧜', - '⧝' => '⧝', - '⧞' => '⧞', - '⧣' => '⧣', - '⧤' => '⧤', - '⧥' => '⧥', - '⧫' => '⧫', - '⧴' => '⧴', - '⧶' => '⧶', - '⨀' => '⨀', - '⨁' => '⨁', - '⨂' => '⨂', - '⨄' => '⨄', - '⨆' => '⨆', - '⨌' => '⨌', - '⨍' => '⨍', - '⨐' => '⨐', - '⨑' => '⨑', - '⨒' => '⨒', - '⨓' => '⨓', - '⨔' => '⨔', - '⨕' => '⨕', - '⨖' => '⨖', - '⨗' => '⨗', - '⨢' => '⨢', - '⨣' => '⨣', - '⨤' => '⨤', - '⨥' => '⨥', - '⨦' => '⨦', - '⨧' => '⨧', - '⨩' => '⨩', - '⨪' => '⨪', - '⨭' => '⨭', - '⨮' => '⨮', - '⨯' => '⨯', - '⨰' => '⨰', - '⨱' => '⨱', - '⨳' => '⨳', - '⨴' => '⨴', - '⨵' => '⨵', - '⨶' => '⨶', - '⨷' => '⨷', - '⨸' => '⨸', - '⨹' => '⨹', - '⨺' => '⨺', - '⨻' => '⨻', - '⨼' => '⨼', - '⨿' => '⨿', - '⩀' => '⩀', - '⩂' => '⩂', - '⩃' => '⩃', - '⩄' => '⩄', - '⩅' => '⩅', - '⩆' => '⩆', - '⩇' => '⩇', - '⩈' => '⩈', - '⩉' => '⩉', - '⩊' => '⩊', - '⩋' => '⩋', - '⩌' => '⩌', - '⩍' => '⩍', - '⩐' => '⩐', - '⩓' => '⩓', - '⩔' => '⩔', - '⩕' => '⩕', - '⩖' => '⩖', - '⩗' => '⩗', - '⩘' => '⩘', - '⩚' => '⩚', - '⩛' => '⩛', - '⩜' => '⩜', - '⩝' => '⩝', - '⩟' => '⩟', - '⩦' => '⩦', - '⩪' => '⩪', - '⩭' => '⩭', - '⩭̸' => '&ncongdot', - '⩮' => '⩮', - '⩯' => '⩯', - '⩰' => '⩰', - '⩰̸' => '&napE', - '⩱' => '⩱', - '⩲' => '⩲', - '⩳' => '⩳', - '⩴' => '⩴', - '⩵' => '⩵', - '⩷' => '⩷', - '⩸' => '⩸', - '⩹' => '⩹', - '⩺' => '⩺', - '⩻' => '⩻', - '⩼' => '⩼', - '⩽' => '⩽', - '⩽̸' => '&nles', - '⩾' => '⩾', - '⩾̸' => '&nges', - '⩿' => '⩿', - '⪀' => '⪀', - '⪁' => '⪁', - '⪂' => '⪂', - '⪃' => '⪃', - '⪄' => '⪄', - '⪅' => '⪅', - '⪆' => '⪆', - '⪇' => '⪇', - '⪈' => '⪈', - '⪉' => '⪉', - '⪊' => '⪊', - '⪋' => '⪋', - '⪌' => '⪌', - '⪍' => '⪍', - '⪎' => '⪎', - '⪏' => '⪏', - '⪐' => '⪐', - '⪑' => '⪑', - '⪒' => '⪒', - '⪓' => '⪓', - '⪔' => '⪔', - '⪕' => '⪕', - '⪖' => '⪖', - '⪗' => '⪗', - '⪘' => '⪘', - '⪙' => '⪙', - '⪚' => '⪚', - '⪝' => '⪝', - '⪞' => '⪞', - '⪟' => '⪟', - '⪠' => '⪠', - '⪡' => '⪡', - '⪡̸' => '&NotNestedLessLess', - '⪢' => '⪢', - '⪢̸' => '&NotNestedGreaterGreater', - '⪤' => '⪤', - '⪥' => '⪥', - '⪦' => '⪦', - '⪧' => '⪧', - '⪨' => '⪨', - '⪩' => '⪩', - '⪪' => '⪪', - '⪫' => '⪫', - '⪬' => '⪬', - '⪬︀' => '&smtes', - '⪭' => '⪭', - '⪭︀' => '&lates', - '⪮' => '⪮', - '⪯' => '⪯', - '⪯̸' => '&NotPrecedesEqual', - '⪰' => '⪰', - '⪰̸' => '&NotSucceedsEqual', - '⪳' => '⪳', - '⪴' => '⪴', - '⪵' => '⪵', - '⪶' => '⪶', - '⪷' => '⪷', - '⪸' => '⪸', - '⪹' => '⪹', - '⪺' => '⪺', - '⪻' => '⪻', - '⪼' => '⪼', - '⪽' => '⪽', - '⪾' => '⪾', - '⪿' => '⪿', - '⫀' => '⫀', - '⫁' => '⫁', - '⫂' => '⫂', - '⫃' => '⫃', - '⫄' => '⫄', - '⫅' => '⫅', - '⫅̸' => '&nsubE', - '⫆' => '⫆', - '⫆̸' => '&nsupseteqq', - '⫇' => '⫇', - '⫈' => '⫈', - '⫋' => '⫋', - '⫋︀' => '&vsubnE', - '⫌' => '⫌', - '⫌︀' => '&varsupsetneqq', - '⫏' => '⫏', - '⫐' => '⫐', - '⫑' => '⫑', - '⫒' => '⫒', - '⫓' => '⫓', - '⫔' => '⫔', - '⫕' => '⫕', - '⫖' => '⫖', - '⫗' => '⫗', - '⫘' => '⫘', - '⫙' => '⫙', - '⫚' => '⫚', - '⫛' => '⫛', - '⫤' => '⫤', - '⫦' => '⫦', - '⫧' => '⫧', - '⫨' => '⫨', - '⫩' => '⫩', - '⫫' => '⫫', - '⫬' => '⫬', - '⫭' => '⫭', - '⫮' => '⫮', - '⫯' => '⫯', - '⫰' => '⫰', - '⫱' => '⫱', - '⫲' => '⫲', - '⫳' => '⫳', - '⫽︀' => '&varsupsetneqq', - 'ff' => 'ff', - 'fi' => 'fi', - 'fl' => 'fl', - 'ffi' => 'ffi', - 'ffl' => 'ffl', - '𝒜' => '𝒜', - '𝒞' => '𝒞', - '𝒟' => '𝒟', - '𝒢' => '𝒢', - '𝒥' => '𝒥', - '𝒦' => '𝒦', - '𝒩' => '𝒩', - '𝒪' => '𝒪', - '𝒫' => '𝒫', - '𝒬' => '𝒬', - '𝒮' => '𝒮', - '𝒯' => '𝒯', - '𝒰' => '𝒰', - '𝒱' => '𝒱', - '𝒲' => '𝒲', - '𝒳' => '𝒳', - '𝒴' => '𝒴', - '𝒵' => '𝒵', - '𝒶' => '𝒶', - '𝒷' => '𝒷', - '𝒸' => '𝒸', - '𝒹' => '𝒹', - '𝒻' => '𝒻', - '𝒽' => '𝒽', - '𝒾' => '𝒾', - '𝒿' => '𝒿', - '𝓀' => '𝓀', - '𝓁' => '𝓁', - '𝓂' => '𝓂', - '𝓃' => '𝓃', - '𝓅' => '𝓅', - '𝓆' => '𝓆', - '𝓇' => '𝓇', - '𝓈' => '𝓈', - '𝓉' => '𝓉', - '𝓊' => '𝓊', - '𝓋' => '𝓋', - '𝓌' => '𝓌', - '𝓍' => '𝓍', - '𝓎' => '𝓎', - '𝓏' => '𝓏', - '𝔄' => '𝔄', - '𝔅' => '𝔅', - '𝔇' => '𝔇', - '𝔈' => '𝔈', - '𝔉' => '𝔉', - '𝔊' => '𝔊', - '𝔍' => '𝔍', - '𝔎' => '𝔎', - '𝔏' => '𝔏', - '𝔐' => '𝔐', - '𝔑' => '𝔑', - '𝔒' => '𝔒', - '𝔓' => '𝔓', - '𝔔' => '𝔔', - '𝔖' => '𝔖', - '𝔗' => '𝔗', - '𝔘' => '𝔘', - '𝔙' => '𝔙', - '𝔚' => '𝔚', - '𝔛' => '𝔛', - '𝔜' => '𝔜', - '𝔞' => '𝔞', - '𝔟' => '𝔟', - '𝔠' => '𝔠', - '𝔡' => '𝔡', - '𝔢' => '𝔢', - '𝔣' => '𝔣', - '𝔤' => '𝔤', - '𝔥' => '𝔥', - '𝔦' => '𝔦', - '𝔧' => '𝔧', - '𝔨' => '𝔨', - '𝔩' => '𝔩', - '𝔪' => '𝔪', - '𝔫' => '𝔫', - '𝔬' => '𝔬', - '𝔭' => '𝔭', - '𝔮' => '𝔮', - '𝔯' => '𝔯', - '𝔰' => '𝔰', - '𝔱' => '𝔱', - '𝔲' => '𝔲', - '𝔳' => '𝔳', - '𝔴' => '𝔴', - '𝔵' => '𝔵', - '𝔶' => '𝔶', - '𝔷' => '𝔷', - '𝔸' => '𝔸', - '𝔹' => '𝔹', - '𝔻' => '𝔻', - '𝔼' => '𝔼', - '𝔽' => '𝔽', - '𝔾' => '𝔾', - '𝕀' => '𝕀', - '𝕁' => '𝕁', - '𝕂' => '𝕂', - '𝕃' => '𝕃', - '𝕄' => '𝕄', - '𝕆' => '𝕆', - '𝕊' => '𝕊', - '𝕋' => '𝕋', - '𝕌' => '𝕌', - '𝕍' => '𝕍', - '𝕎' => '𝕎', - '𝕏' => '𝕏', - '𝕐' => '𝕐', - '𝕒' => '𝕒', - '𝕓' => '𝕓', - '𝕔' => '𝕔', - '𝕕' => '𝕕', - '𝕖' => '𝕖', - '𝕗' => '𝕗', - '𝕘' => '𝕘', - '𝕙' => '𝕙', - '𝕚' => '𝕚', - '𝕛' => '𝕛', - '𝕜' => '𝕜', - '𝕝' => '𝕝', - '𝕞' => '𝕞', - '𝕟' => '𝕟', - '𝕠' => '𝕠', - '𝕡' => '𝕡', - '𝕢' => '𝕢', - '𝕣' => '𝕣', - '𝕤' => '𝕤', - '𝕥' => '𝕥', - '𝕦' => '𝕦', - '𝕧' => '𝕧', - '𝕨' => '𝕨', - '𝕩' => '𝕩', - '𝕪' => '𝕪', - '𝕫' => '𝕫', - ); -} diff --git a/docker/statistics/vendor/masterminds/html5/src/HTML5/Serializer/OutputRules.php b/docker/statistics/vendor/masterminds/html5/src/HTML5/Serializer/OutputRules.php deleted file mode 100644 index ec467f22..00000000 --- a/docker/statistics/vendor/masterminds/html5/src/HTML5/Serializer/OutputRules.php +++ /dev/null @@ -1,553 +0,0 @@ -'http://www.w3.org/1999/xhtml', - 'attrNamespace'=>'http://www.w3.org/1999/xhtml', - - 'nodeName'=>'img', 'nodeName'=>array('img', 'a'), - 'attrName'=>'alt', 'attrName'=>array('title', 'alt'), - ), - */ - array( - 'nodeNamespace' => 'http://www.w3.org/1999/xhtml', - 'attrName' => array('href', - 'hreflang', - 'http-equiv', - 'icon', - 'id', - 'keytype', - 'kind', - 'label', - 'lang', - 'language', - 'list', - 'maxlength', - 'media', - 'method', - 'name', - 'placeholder', - 'rel', - 'rows', - 'rowspan', - 'sandbox', - 'spellcheck', - 'scope', - 'seamless', - 'shape', - 'size', - 'sizes', - 'span', - 'src', - 'srcdoc', - 'srclang', - 'srcset', - 'start', - 'step', - 'style', - 'summary', - 'tabindex', - 'target', - 'title', - 'type', - 'value', - 'width', - 'border', - 'charset', - 'cite', - 'class', - 'code', - 'codebase', - 'color', - 'cols', - 'colspan', - 'content', - 'coords', - 'data', - 'datetime', - 'default', - 'dir', - 'dirname', - 'enctype', - 'for', - 'form', - 'formaction', - 'headers', - 'height', - 'accept', - 'accept-charset', - 'accesskey', - 'action', - 'align', - 'alt', - 'bgcolor', - ), - ), - array( - 'nodeNamespace' => 'http://www.w3.org/1999/xhtml', - 'xpath' => 'starts-with(local-name(), \'data-\')', - ), - ); - - const DOCTYPE = ''; - - public function __construct($output, $options = array()) - { - if (isset($options['encode_entities'])) { - $this->encode = $options['encode_entities']; - } - - $this->outputMode = static::IM_IN_HTML; - $this->out = $output; - $this->hasHTML5 = defined('ENT_HTML5'); - } - - public function addRule(array $rule) - { - $this->nonBooleanAttributes[] = $rule; - } - - public function setTraverser(Traverser $traverser) - { - $this->traverser = $traverser; - - return $this; - } - - public function unsetTraverser() - { - $this->traverser = null; - - return $this; - } - - public function document($dom) - { - $this->doctype(); - if ($dom->documentElement) { - foreach ($dom->childNodes as $node) { - $this->traverser->node($node); - } - $this->nl(); - } - } - - protected function doctype() - { - $this->wr(static::DOCTYPE); - $this->nl(); - } - - public function element($ele) - { - $name = $ele->tagName; - - // Per spec: - // If the element has a declared namespace in the HTML, MathML or - // SVG namespaces, we use the lname instead of the tagName. - if ($this->traverser->isLocalElement($ele)) { - $name = $ele->localName; - } - - // If we are in SVG or MathML there is special handling. - // Using if/elseif instead of switch because it's faster in PHP. - if ('svg' == $name) { - $this->outputMode = static::IM_IN_SVG; - $name = Elements::normalizeSvgElement($name); - } elseif ('math' == $name) { - $this->outputMode = static::IM_IN_MATHML; - } - - $this->openTag($ele); - if (Elements::isA($name, Elements::TEXT_RAW)) { - foreach ($ele->childNodes as $child) { - if ($child instanceof \DOMCharacterData) { - $this->wr($child->data); - } elseif ($child instanceof \DOMElement) { - $this->element($child); - } - } - } else { - // Handle children. - if ($ele->hasChildNodes()) { - $this->traverser->children($ele->childNodes); - } - - // Close out the SVG or MathML special handling. - if ('svg' == $name || 'math' == $name) { - $this->outputMode = static::IM_IN_HTML; - } - } - - // If not unary, add a closing tag. - if (!Elements::isA($name, Elements::VOID_TAG)) { - $this->closeTag($ele); - } - } - - /** - * Write a text node. - * - * @param \DOMText $ele The text node to write. - */ - public function text($ele) - { - if (isset($ele->parentNode) && isset($ele->parentNode->tagName) && Elements::isA($ele->parentNode->localName, Elements::TEXT_RAW)) { - $this->wr($ele->data); - - return; - } - - // FIXME: This probably needs some flags set. - $this->wr($this->enc($ele->data)); - } - - public function cdata($ele) - { - // This encodes CDATA. - $this->wr($ele->ownerDocument->saveXML($ele)); - } - - public function comment($ele) - { - // These produce identical output. - // $this->wr(''); - $this->wr($ele->ownerDocument->saveXML($ele)); - } - - public function processorInstruction($ele) - { - $this->wr('wr($ele->target) - ->wr(' ') - ->wr($ele->data) - ->wr('?>'); - } - - /** - * Write the namespace attributes. - * - * @param \DOMNode $ele The element being written. - */ - protected function namespaceAttrs($ele) - { - if (!$this->xpath || $this->xpath->document !== $ele->ownerDocument) { - $this->xpath = new \DOMXPath($ele->ownerDocument); - } - - foreach ($this->xpath->query('namespace::*[not(.=../../namespace::*)]', $ele) as $nsNode) { - if (!in_array($nsNode->nodeValue, $this->implicitNamespaces)) { - $this->wr(' ')->wr($nsNode->nodeName)->wr('="')->wr($nsNode->nodeValue)->wr('"'); - } - } - } - - /** - * Write the opening tag. - * - * Tags for HTML, MathML, and SVG are in the local name. Otherwise, use the - * qualified name (8.3). - * - * @param \DOMNode $ele The element being written. - */ - protected function openTag($ele) - { - $this->wr('<')->wr($this->traverser->isLocalElement($ele) ? $ele->localName : $ele->tagName); - - $this->attrs($ele); - $this->namespaceAttrs($ele); - - if ($this->outputMode == static::IM_IN_HTML) { - $this->wr('>'); - } // If we are not in html mode we are in SVG, MathML, or XML embedded content. - else { - if ($ele->hasChildNodes()) { - $this->wr('>'); - } // If there are no children this is self closing. - else { - $this->wr(' />'); - } - } - } - - protected function attrs($ele) - { - // FIXME: Needs support for xml, xmlns, xlink, and namespaced elements. - if (!$ele->hasAttributes()) { - return $this; - } - - // TODO: Currently, this always writes name="value", and does not do - // value-less attributes. - $map = $ele->attributes; - $len = $map->length; - for ($i = 0; $i < $len; ++$i) { - $node = $map->item($i); - $val = $this->enc($node->value, true); - - // XXX: The spec says that we need to ensure that anything in - // the XML, XMLNS, or XLink NS's should use the canonical - // prefix. It seems that DOM does this for us already, but there - // may be exceptions. - $name = $node->nodeName; - - // Special handling for attributes in SVG and MathML. - // Using if/elseif instead of switch because it's faster in PHP. - if ($this->outputMode == static::IM_IN_SVG) { - $name = Elements::normalizeSvgAttribute($name); - } elseif ($this->outputMode == static::IM_IN_MATHML) { - $name = Elements::normalizeMathMlAttribute($name); - } - - $this->wr(' ')->wr($name); - - if ((isset($val) && '' !== $val) || $this->nonBooleanAttribute($node)) { - $this->wr('="')->wr($val)->wr('"'); - } - } - } - - protected function nonBooleanAttribute(\DOMAttr $attr) - { - $ele = $attr->ownerElement; - foreach ($this->nonBooleanAttributes as $rule) { - if (isset($rule['nodeNamespace']) && $rule['nodeNamespace'] !== $ele->namespaceURI) { - continue; - } - if (isset($rule['attNamespace']) && $rule['attNamespace'] !== $attr->namespaceURI) { - continue; - } - if (isset($rule['nodeName']) && !is_array($rule['nodeName']) && $rule['nodeName'] !== $ele->localName) { - continue; - } - if (isset($rule['nodeName']) && is_array($rule['nodeName']) && !in_array($ele->localName, $rule['nodeName'], true)) { - continue; - } - if (isset($rule['attrName']) && !is_array($rule['attrName']) && $rule['attrName'] !== $attr->localName) { - continue; - } - if (isset($rule['attrName']) && is_array($rule['attrName']) && !in_array($attr->localName, $rule['attrName'], true)) { - continue; - } - if (isset($rule['xpath'])) { - $xp = $this->getXPath($attr); - if (isset($rule['prefixes'])) { - foreach ($rule['prefixes'] as $nsPrefix => $ns) { - $xp->registerNamespace($nsPrefix, $ns); - } - } - if (!$xp->evaluate($rule['xpath'], $attr)) { - continue; - } - } - - return true; - } - - return false; - } - - private function getXPath(\DOMNode $node) - { - if (!$this->xpath) { - $this->xpath = new \DOMXPath($node->ownerDocument); - } - - return $this->xpath; - } - - /** - * Write the closing tag. - * - * Tags for HTML, MathML, and SVG are in the local name. Otherwise, use the - * qualified name (8.3). - * - * @param \DOMNode $ele The element being written. - */ - protected function closeTag($ele) - { - if ($this->outputMode == static::IM_IN_HTML || $ele->hasChildNodes()) { - $this->wr('wr($this->traverser->isLocalElement($ele) ? $ele->localName : $ele->tagName)->wr('>'); - } - } - - /** - * Write to the output. - * - * @param string $text The string to put into the output - * - * @return $this - */ - protected function wr($text) - { - fwrite($this->out, $text); - - return $this; - } - - /** - * Write a new line character. - * - * @return $this - */ - protected function nl() - { - fwrite($this->out, PHP_EOL); - - return $this; - } - - /** - * Encode text. - * - * When encode is set to false, the default value, the text passed in is - * escaped per section 8.3 of the html5 spec. For details on how text is - * escaped see the escape() method. - * - * When encoding is set to true the text is converted to named character - * references where appropriate. Section 8.1.4 Character references of the - * html5 spec refers to using named character references. This is useful for - * characters that can't otherwise legally be used in the text. - * - * The named character references are listed in section 8.5. - * - * @see http://www.w3.org/TR/2013/CR-html5-20130806/syntax.html#named-character-references True encoding will turn all named character references into their entities. - * This includes such characters as +.# and many other common ones. By default - * encoding here will just escape &'<>". - * - * Note, PHP 5.4+ has better html5 encoding. - * - * @todo Use the Entities class in php 5.3 to have html5 entities. - * - * @param string $text Text to encode. - * @param bool $attribute True if we are encoding an attrubute, false otherwise. - * - * @return string The encoded text. - */ - protected function enc($text, $attribute = false) - { - // Escape the text rather than convert to named character references. - if (!$this->encode) { - return $this->escape($text, $attribute); - } - - // If we are in PHP 5.4+ we can use the native html5 entity functionality to - // convert the named character references. - - if ($this->hasHTML5) { - return htmlentities($text, ENT_HTML5 | ENT_SUBSTITUTE | ENT_QUOTES, 'UTF-8', false); - } // If a version earlier than 5.4 html5 entities are not entirely handled. - // This manually handles them. - else { - return strtr($text, HTML5Entities::$map); - } - } - - /** - * Escape test. - * - * According to the html5 spec section 8.3 Serializing HTML fragments, text - * within tags that are not style, script, xmp, iframe, noembed, and noframes - * need to be properly escaped. - * - * The & should be converted to &, no breaking space unicode characters - * converted to  , when in attribute mode the " should be converted to - * ", and when not in attribute mode the < and > should be converted to - * < and >. - * - * @see http://www.w3.org/TR/2013/CR-html5-20130806/syntax.html#escapingString - * - * @param string $text Text to escape. - * @param bool $attribute True if we are escaping an attrubute, false otherwise. - */ - protected function escape($text, $attribute = false) - { - // Not using htmlspecialchars because, while it does escaping, it doesn't - // match the requirements of section 8.5. For example, it doesn't handle - // non-breaking spaces. - if ($attribute) { - $replace = array( - '"' => '"', - '&' => '&', - "\xc2\xa0" => ' ', - ); - } else { - $replace = array( - '<' => '<', - '>' => '>', - '&' => '&', - "\xc2\xa0" => ' ', - ); - } - - return strtr($text, $replace); - } -} diff --git a/docker/statistics/vendor/masterminds/html5/src/HTML5/Serializer/README.md b/docker/statistics/vendor/masterminds/html5/src/HTML5/Serializer/README.md deleted file mode 100644 index 849a47f3..00000000 --- a/docker/statistics/vendor/masterminds/html5/src/HTML5/Serializer/README.md +++ /dev/null @@ -1,33 +0,0 @@ -# The Serializer (Writer) Model - -The serializer roughly follows sections _8.1 Writing HTML documents_ and section -_8.3 Serializing HTML fragments_ by converting DOMDocument, DOMDocumentFragment, -and DOMNodeList into HTML5. - - [ HTML5 ] // Interface for saving. - || - [ Traverser ] // Walk the DOM - || - [ Rules ] // Convert DOM elements into strings. - || - [ HTML5 ] // HTML5 document or fragment in text. - - -## HTML5 Class - -Provides the top level interface for saving. - -## The Traverser - -Walks the DOM finding each element and passing it off to the output rules to -convert to HTML5. - -## Output Rules - -The output rules are defined in the RulesInterface which can have multiple -implementations. Currently, the OutputRules is the default implementation that -converts a DOM as is into HTML5. - -## HTML5 String - -The output of the process it HTML5 as a string or saved to a file. \ No newline at end of file diff --git a/docker/statistics/vendor/masterminds/html5/src/HTML5/Serializer/RulesInterface.php b/docker/statistics/vendor/masterminds/html5/src/HTML5/Serializer/RulesInterface.php deleted file mode 100644 index 69a6ecda..00000000 --- a/docker/statistics/vendor/masterminds/html5/src/HTML5/Serializer/RulesInterface.php +++ /dev/null @@ -1,99 +0,0 @@ - 'html', - 'http://www.w3.org/1998/Math/MathML' => 'math', - 'http://www.w3.org/2000/svg' => 'svg', - ); - - protected $dom; - - protected $options; - - protected $encode = false; - - protected $rules; - - protected $out; - - /** - * Create a traverser. - * - * @param \DOMNode|\DOMNodeList $dom The document or node to traverse. - * @param resource $out A stream that allows writing. The traverser will output into this - * stream. - * @param array $options An array of options for the traverser as key/value pairs. These include: - * - encode_entities: A bool to specify if full encding should happen for all named - * charachter references. Defaults to false which escapes &'<>". - * - output_rules: The path to the class handling the output rules. - */ - public function __construct($dom, $out, RulesInterface $rules, $options = array()) - { - $this->dom = $dom; - $this->out = $out; - $this->rules = $rules; - $this->options = $options; - - $this->rules->setTraverser($this); - } - - /** - * Tell the traverser to walk the DOM. - * - * @return resource $out Returns the output stream. - */ - public function walk() - { - if ($this->dom instanceof \DOMDocument) { - $this->rules->document($this->dom); - } elseif ($this->dom instanceof \DOMDocumentFragment) { - // Document fragments are a special case. Only the children need to - // be serialized. - if ($this->dom->hasChildNodes()) { - $this->children($this->dom->childNodes); - } - } // If NodeList, loop - elseif ($this->dom instanceof \DOMNodeList) { - // If this is a NodeList of DOMDocuments this will not work. - $this->children($this->dom); - } // Else assume this is a DOMNode-like datastructure. - else { - $this->node($this->dom); - } - - return $this->out; - } - - /** - * Process a node in the DOM. - * - * @param mixed $node A node implementing \DOMNode. - */ - public function node($node) - { - // A listing of types is at http://php.net/manual/en/dom.constants.php - switch ($node->nodeType) { - case XML_ELEMENT_NODE: - $this->rules->element($node); - break; - case XML_TEXT_NODE: - $this->rules->text($node); - break; - case XML_CDATA_SECTION_NODE: - $this->rules->cdata($node); - break; - case XML_PI_NODE: - $this->rules->processorInstruction($node); - break; - case XML_COMMENT_NODE: - $this->rules->comment($node); - break; - // Currently we don't support embedding DTDs. - default: - //print ''; - break; - } - } - - /** - * Walk through all the nodes on a node list. - * - * @param \DOMNodeList $nl A list of child elements to walk through. - */ - public function children($nl) - { - foreach ($nl as $node) { - $this->node($node); - } - } - - /** - * Is an element local? - * - * @param mixed $ele An element that implement \DOMNode. - * - * @return bool true if local and false otherwise. - */ - public function isLocalElement($ele) - { - $uri = $ele->namespaceURI; - if (empty($uri)) { - return false; - } - - return isset(static::$local_ns[$uri]); - } -} diff --git a/docker/statistics/vendor/mockery/mockery/docs/.gitignore b/docker/statistics/vendor/mockery/mockery/docs/.gitignore deleted file mode 100644 index e35d8850..00000000 --- a/docker/statistics/vendor/mockery/mockery/docs/.gitignore +++ /dev/null @@ -1 +0,0 @@ -_build diff --git a/docker/statistics/vendor/mockery/mockery/docs/Makefile b/docker/statistics/vendor/mockery/mockery/docs/Makefile deleted file mode 100644 index 9a8c9408..00000000 --- a/docker/statistics/vendor/mockery/mockery/docs/Makefile +++ /dev/null @@ -1,177 +0,0 @@ -# Makefile for Sphinx documentation -# - -# You can set these variables from the command line. -SPHINXOPTS = -SPHINXBUILD = sphinx-build -PAPER = -BUILDDIR = _build - -# User-friendly check for sphinx-build -ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1) -$(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/) -endif - -# Internal variables. -PAPEROPT_a4 = -D latex_paper_size=a4 -PAPEROPT_letter = -D latex_paper_size=letter -ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . -# the i18n builder cannot share the environment and doctrees with the others -I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . - -.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext - -help: - @echo "Please use \`make ' where is one of" - @echo " html to make standalone HTML files" - @echo " dirhtml to make HTML files named index.html in directories" - @echo " singlehtml to make a single large HTML file" - @echo " pickle to make pickle files" - @echo " json to make JSON files" - @echo " htmlhelp to make HTML files and a HTML help project" - @echo " qthelp to make HTML files and a qthelp project" - @echo " devhelp to make HTML files and a Devhelp project" - @echo " epub to make an epub" - @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter" - @echo " latexpdf to make LaTeX files and run them through pdflatex" - @echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx" - @echo " text to make text files" - @echo " man to make manual pages" - @echo " texinfo to make Texinfo files" - @echo " info to make Texinfo files and run them through makeinfo" - @echo " gettext to make PO message catalogs" - @echo " changes to make an overview of all changed/added/deprecated items" - @echo " xml to make Docutils-native XML files" - @echo " pseudoxml to make pseudoxml-XML files for display purposes" - @echo " linkcheck to check all external links for integrity" - @echo " doctest to run all doctests embedded in the documentation (if enabled)" - -clean: - rm -rf $(BUILDDIR)/* - -html: - $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html - @echo - @echo "Build finished. The HTML pages are in $(BUILDDIR)/html." - -dirhtml: - $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml - @echo - @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml." - -singlehtml: - $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml - @echo - @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml." - -pickle: - $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle - @echo - @echo "Build finished; now you can process the pickle files." - -json: - $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json - @echo - @echo "Build finished; now you can process the JSON files." - -htmlhelp: - $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp - @echo - @echo "Build finished; now you can run HTML Help Workshop with the" \ - ".hhp project file in $(BUILDDIR)/htmlhelp." - -qthelp: - $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp - @echo - @echo "Build finished; now you can run "qcollectiongenerator" with the" \ - ".qhcp project file in $(BUILDDIR)/qthelp, like this:" - @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/MockeryDocs.qhcp" - @echo "To view the help file:" - @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/MockeryDocs.qhc" - -devhelp: - $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp - @echo - @echo "Build finished." - @echo "To view the help file:" - @echo "# mkdir -p $$HOME/.local/share/devhelp/MockeryDocs" - @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/MockeryDocs" - @echo "# devhelp" - -epub: - $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub - @echo - @echo "Build finished. The epub file is in $(BUILDDIR)/epub." - -latex: - $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex - @echo - @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex." - @echo "Run \`make' in that directory to run these through (pdf)latex" \ - "(use \`make latexpdf' here to do that automatically)." - -latexpdf: - $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex - @echo "Running LaTeX files through pdflatex..." - $(MAKE) -C $(BUILDDIR)/latex all-pdf - @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." - -latexpdfja: - $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex - @echo "Running LaTeX files through platex and dvipdfmx..." - $(MAKE) -C $(BUILDDIR)/latex all-pdf-ja - @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." - -text: - $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text - @echo - @echo "Build finished. The text files are in $(BUILDDIR)/text." - -man: - $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man - @echo - @echo "Build finished. The manual pages are in $(BUILDDIR)/man." - -texinfo: - $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo - @echo - @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo." - @echo "Run \`make' in that directory to run these through makeinfo" \ - "(use \`make info' here to do that automatically)." - -info: - $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo - @echo "Running Texinfo files through makeinfo..." - make -C $(BUILDDIR)/texinfo info - @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo." - -gettext: - $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale - @echo - @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale." - -changes: - $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes - @echo - @echo "The overview file is in $(BUILDDIR)/changes." - -linkcheck: - $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck - @echo - @echo "Link check complete; look for any errors in the above output " \ - "or in $(BUILDDIR)/linkcheck/output.txt." - -doctest: - $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest - @echo "Testing of doctests in the sources finished, look at the " \ - "results in $(BUILDDIR)/doctest/output.txt." - -xml: - $(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml - @echo - @echo "Build finished. The XML files are in $(BUILDDIR)/xml." - -pseudoxml: - $(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml - @echo - @echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml." diff --git a/docker/statistics/vendor/mockery/mockery/library/Mockery/CountValidator/CountValidatorInterface.php b/docker/statistics/vendor/mockery/mockery/library/Mockery/CountValidator/CountValidatorInterface.php deleted file mode 100644 index 1cbf4cc3..00000000 --- a/docker/statistics/vendor/mockery/mockery/library/Mockery/CountValidator/CountValidatorInterface.php +++ /dev/null @@ -1,24 +0,0 @@ ->>>>>> c7fdd2968a4cf2ead466c6ccaa09e8b2557fb582:docker/streamline-src/vendor/monolog/monolog/CHANGELOG.md ### 3.8.1 (2024-12-05) * Deprecated Monolog\DateTimeImmutable in favor of Monolog\JsonSerializableDateTimeImmutable (#1928) diff --git a/docker/statistics/vendor/monolog/monolog/src/Monolog/Formatter/GelfMessageFormatter.php b/docker/statistics/vendor/monolog/monolog/src/Monolog/Formatter/GelfMessageFormatter.php index 2333d94e..12a3b0a3 100644 --- a/docker/statistics/vendor/monolog/monolog/src/Monolog/Formatter/GelfMessageFormatter.php +++ b/docker/statistics/vendor/monolog/monolog/src/Monolog/Formatter/GelfMessageFormatter.php @@ -115,11 +115,7 @@ class GelfMessageFormatter extends NormalizerFormatter } foreach ($extra as $key => $val) { -<<<<<<< HEAD:docker/statistics/vendor/monolog/monolog/src/Monolog/Formatter/GelfMessageFormatter.php $key = (string) preg_replace('#[^\w.-]#', '-', (string) $key); -======= - $key = (string) preg_replace('#[^\w\.\-]#', '-', $key); ->>>>>>> c7fdd2968a4cf2ead466c6ccaa09e8b2557fb582:docker/streamline-src/vendor/monolog/monolog/src/Monolog/Formatter/GelfMessageFormatter.php $val = \is_scalar($val) || null === $val ? $val : $this->toJson($val); $len = \strlen($this->extraPrefix . $key . $val); if ($len > $this->maxLength) { @@ -131,11 +127,7 @@ class GelfMessageFormatter extends NormalizerFormatter } foreach ($context as $key => $val) { -<<<<<<< HEAD:docker/statistics/vendor/monolog/monolog/src/Monolog/Formatter/GelfMessageFormatter.php $key = (string) preg_replace('#[^\w.-]#', '-', (string) $key); -======= - $key = (string) preg_replace('#[^\w\.\-]#', '-', $key); ->>>>>>> c7fdd2968a4cf2ead466c6ccaa09e8b2557fb582:docker/streamline-src/vendor/monolog/monolog/src/Monolog/Formatter/GelfMessageFormatter.php $val = \is_scalar($val) || null === $val ? $val : $this->toJson($val); $len = \strlen($this->contextPrefix . $key . $val); if ($len > $this->maxLength) { diff --git a/docker/statistics/vendor/monolog/monolog/src/Monolog/Handler/BufferHandler.php b/docker/statistics/vendor/monolog/monolog/src/Monolog/Handler/BufferHandler.php index 9bd63557..c799b6b9 100644 --- a/docker/statistics/vendor/monolog/monolog/src/Monolog/Handler/BufferHandler.php +++ b/docker/statistics/vendor/monolog/monolog/src/Monolog/Handler/BufferHandler.php @@ -161,13 +161,10 @@ class BufferHandler extends AbstractHandler implements ProcessableHandlerInterfa } throw new \UnexpectedValueException('The nested handler of type '.\get_class($this->handler).' does not support formatters.'); -<<<<<<< HEAD:docker/statistics/vendor/monolog/monolog/src/Monolog/Handler/BufferHandler.php } public function setHandler(HandlerInterface $handler): void { $this->handler = $handler; -======= ->>>>>>> c7fdd2968a4cf2ead466c6ccaa09e8b2557fb582:docker/streamline-src/vendor/monolog/monolog/src/Monolog/Handler/BufferHandler.php } } diff --git a/docker/statistics/vendor/monolog/monolog/src/Monolog/Handler/ErrorLogHandler.php b/docker/statistics/vendor/monolog/monolog/src/Monolog/Handler/ErrorLogHandler.php index f32bf85e..cd28ff6a 100644 --- a/docker/statistics/vendor/monolog/monolog/src/Monolog/Handler/ErrorLogHandler.php +++ b/docker/statistics/vendor/monolog/monolog/src/Monolog/Handler/ErrorLogHandler.php @@ -27,20 +27,12 @@ class ErrorLogHandler extends AbstractProcessingHandler public const OPERATING_SYSTEM = 0; public const SAPI = 4; -<<<<<<< HEAD:docker/statistics/vendor/monolog/monolog/src/Monolog/Handler/ErrorLogHandler.php /** @var 0|4 */ -======= - /** @var 0|1|3|4 */ ->>>>>>> c7fdd2968a4cf2ead466c6ccaa09e8b2557fb582:docker/streamline-src/vendor/monolog/monolog/src/Monolog/Handler/ErrorLogHandler.php protected int $messageType; protected bool $expandNewlines; /** -<<<<<<< HEAD:docker/statistics/vendor/monolog/monolog/src/Monolog/Handler/ErrorLogHandler.php * @param 0|4 $messageType Says where the error should go. -======= - * @param 0|1|3|4 $messageType Says where the error should go. ->>>>>>> c7fdd2968a4cf2ead466c6ccaa09e8b2557fb582:docker/streamline-src/vendor/monolog/monolog/src/Monolog/Handler/ErrorLogHandler.php * @param bool $expandNewlines If set to true, newlines in the message will be expanded to be take multiple log entries * * @throws \InvalidArgumentException If an unsupported message type is set diff --git a/docker/statistics/vendor/monolog/monolog/src/Monolog/JsonSerializableDateTimeImmutable.php b/docker/statistics/vendor/monolog/monolog/src/Monolog/JsonSerializableDateTimeImmutable.php index 1fa2ed75..de2cc5e9 100644 --- a/docker/statistics/vendor/monolog/monolog/src/Monolog/JsonSerializableDateTimeImmutable.php +++ b/docker/statistics/vendor/monolog/monolog/src/Monolog/JsonSerializableDateTimeImmutable.php @@ -11,14 +11,8 @@ namespace Monolog; -<<<<<<< HEAD:docker/statistics/vendor/monolog/monolog/src/Monolog/JsonSerializableDateTimeImmutable.php -class_alias(JsonSerializableDateTimeImmutable::class, 'Monolog\DateTimeImmutable'); - -<<<<<<<< HEAD:docker/statistics/vendor/monolog/monolog/src/Monolog/JsonSerializableDateTimeImmutable.php -======= use DateTimeZone; ->>>>>>> c7fdd2968a4cf2ead466c6ccaa09e8b2557fb582:docker/streamline-src/vendor/monolog/monolog/src/Monolog/JsonSerializableDateTimeImmutable.php /** * Overrides default json encoding of date time objects * @@ -50,17 +44,5 @@ class JsonSerializableDateTimeImmutable extends \DateTimeImmutable implements \J public function __toString(): string { return $this->jsonSerialize(); -<<<<<<< HEAD:docker/statistics/vendor/monolog/monolog/src/Monolog/JsonSerializableDateTimeImmutable.php -======== -// @phpstan-ignore-next-line -if (false) { - /** - * @deprecated Use \Monolog\JsonSerializableDateTimeImmutable instead. - */ - class DateTimeImmutable extends JsonSerializableDateTimeImmutable - { ->>>>>>>> c7fdd2968a4cf2ead466c6ccaa09e8b2557fb582:docker/streamline-src/vendor/monolog/monolog/src/Monolog/DateTimeImmutable.php -======= ->>>>>>> c7fdd2968a4cf2ead466c6ccaa09e8b2557fb582:docker/streamline-src/vendor/monolog/monolog/src/Monolog/JsonSerializableDateTimeImmutable.php } } diff --git a/docker/statistics/vendor/monolog/monolog/src/Monolog/Test/MonologTestCase.php b/docker/statistics/vendor/monolog/monolog/src/Monolog/Test/MonologTestCase.php index 4f6e8ad2..34c7724e 100644 --- a/docker/statistics/vendor/monolog/monolog/src/Monolog/Test/MonologTestCase.php +++ b/docker/statistics/vendor/monolog/monolog/src/Monolog/Test/MonologTestCase.php @@ -17,7 +17,6 @@ use Monolog\LogRecord; use Monolog\JsonSerializableDateTimeImmutable; use Monolog\Formatter\FormatterInterface; use Psr\Log\LogLevel; -use ReflectionProperty; /** * Lets you easily generate log records and a dummy formatter for testing purposes diff --git a/docker/statistics/vendor/myclabs/deep-copy/src/DeepCopy/TypeFilter/Date/DatePeriodFilter.php b/docker/statistics/vendor/myclabs/deep-copy/src/DeepCopy/TypeFilter/Date/DatePeriodFilter.php deleted file mode 100644 index 6bd2f7e5..00000000 --- a/docker/statistics/vendor/myclabs/deep-copy/src/DeepCopy/TypeFilter/Date/DatePeriodFilter.php +++ /dev/null @@ -1,42 +0,0 @@ -= 80200 && $element->include_end_date) { - $options |= DatePeriod::INCLUDE_END_DATE; - } - if (!$element->include_start_date) { - $options |= DatePeriod::EXCLUDE_START_DATE; - } - - if ($element->getEndDate()) { - return new DatePeriod($element->getStartDate(), $element->getDateInterval(), $element->getEndDate(), $options); - } - - if (PHP_VERSION_ID >= 70217) { - $recurrences = $element->getRecurrences(); - } else { - $recurrences = $element->recurrences - $element->include_start_date; - } - - return new DatePeriod($element->getStartDate(), $element->getDateInterval(), $recurrences, $options); - } -} diff --git a/docker/statistics/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/AsymmetricVisibilityTokenEmulator.php b/docker/statistics/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/AsymmetricVisibilityTokenEmulator.php deleted file mode 100644 index 084bb75d..00000000 --- a/docker/statistics/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/AsymmetricVisibilityTokenEmulator.php +++ /dev/null @@ -1,93 +0,0 @@ - \T_PUBLIC_SET, - \T_PROTECTED => \T_PROTECTED_SET, - \T_PRIVATE => \T_PRIVATE_SET, - ]; - for ($i = 0, $c = count($tokens); $i < $c; ++$i) { - $token = $tokens[$i]; - if (isset($map[$token->id]) && $i + 3 < $c && $tokens[$i + 1]->text === '(' && - $tokens[$i + 2]->id === \T_STRING && \strtolower($tokens[$i + 2]->text) === 'set' && - $tokens[$i + 3]->text === ')' && - $this->isKeywordContext($tokens, $i) - ) { - array_splice($tokens, $i, 4, [ - new Token( - $map[$token->id], $token->text . '(' . $tokens[$i + 2]->text . ')', - $token->line, $token->pos), - ]); - $c -= 3; - } - } - - return $tokens; - } - - public function reverseEmulate(string $code, array $tokens): array { - $reverseMap = [ - \T_PUBLIC_SET => \T_PUBLIC, - \T_PROTECTED_SET => \T_PROTECTED, - \T_PRIVATE_SET => \T_PRIVATE, - ]; - for ($i = 0, $c = count($tokens); $i < $c; ++$i) { - $token = $tokens[$i]; - if (isset($reverseMap[$token->id]) && - \preg_match('/(public|protected|private)\((set)\)/i', $token->text, $matches) - ) { - [, $modifier, $set] = $matches; - $modifierLen = \strlen($modifier); - array_splice($tokens, $i, 1, [ - new Token($reverseMap[$token->id], $modifier, $token->line, $token->pos), - new Token(\ord('('), '(', $token->line, $token->pos + $modifierLen), - new Token(\T_STRING, $set, $token->line, $token->pos + $modifierLen + 1), - new Token(\ord(')'), ')', $token->line, $token->pos + $modifierLen + 4), - ]); - $i += 3; - $c += 3; - } - } - - return $tokens; - } - - /** @param Token[] $tokens */ - protected function isKeywordContext(array $tokens, int $pos): bool { - $prevToken = $this->getPreviousNonSpaceToken($tokens, $pos); - if ($prevToken === null) { - return false; - } - return $prevToken->id !== \T_OBJECT_OPERATOR - && $prevToken->id !== \T_NULLSAFE_OBJECT_OPERATOR; - } - - /** @param Token[] $tokens */ - private function getPreviousNonSpaceToken(array $tokens, int $start): ?Token { - for ($i = $start - 1; $i >= 0; --$i) { - if ($tokens[$i]->id === T_WHITESPACE) { - continue; - } - - return $tokens[$i]; - } - - return null; - } -} diff --git a/docker/statistics/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/PropertyTokenEmulator.php b/docker/statistics/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/PropertyTokenEmulator.php deleted file mode 100644 index 71b7fc23..00000000 --- a/docker/statistics/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/PropertyTokenEmulator.php +++ /dev/null @@ -1,19 +0,0 @@ - 0 : Flags - * 'byRef' => false : Whether hook returns by reference - * 'params' => array(): Parameters - * 'attrGroups' => array(): PHP attribute groups - * @param array $attributes Additional attributes - */ - public function __construct($name, $body, array $subNodes = [], array $attributes = []) { - $this->attributes = $attributes; - $this->name = \is_string($name) ? new Identifier($name) : $name; - $this->body = $body; - $this->flags = $subNodes['flags'] ?? 0; - $this->byRef = $subNodes['byRef'] ?? false; - $this->params = $subNodes['params'] ?? []; - $this->attrGroups = $subNodes['attrGroups'] ?? []; - } - - public function returnsByRef(): bool { - return $this->byRef; - } - - public function getParams(): array { - return $this->params; - } - - public function getReturnType() { - return null; - } - - /** - * Whether the property hook is final. - */ - public function isFinal(): bool { - return (bool) ($this->flags & Modifiers::FINAL); - } - - public function getStmts(): ?array { - if ($this->body instanceof Expr) { - $name = $this->name->toLowerString(); - if ($name === 'get') { - return [new Return_($this->body)]; - } - if ($name === 'set') { - if (!$this->hasAttribute('propertyName')) { - throw new \LogicException( - 'Can only use getStmts() on a "set" hook if the "propertyName" attribute is set'); - } - - $propName = $this->getAttribute('propertyName'); - $prop = new PropertyFetch(new Variable('this'), (string) $propName); - return [new Expression(new Assign($prop, $this->body))]; - } - throw new \LogicException('Unknown property hook "' . $name . '"'); - } - return $this->body; - } - - public function getAttrGroups(): array { - return $this->attrGroups; - } - - public function getType(): string { - return 'PropertyHook'; - } - - public function getSubNodeNames(): array { - return ['attrGroups', 'flags', 'byRef', 'name', 'params', 'body']; - } -} diff --git a/docker/statistics/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Property.php b/docker/statistics/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Property.php deleted file mode 100644 index 6c0c968f..00000000 --- a/docker/statistics/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Property.php +++ /dev/null @@ -1,15 +0,0 @@ -registerCustomFixers([ - new \PharIo\CSFixer\PhpdocSingleLineVarFixer() - ]) - ->setRiskyAllowed(true) - ->setRules( - [ - 'PharIo/phpdoc_single_line_var_fixer' => true, - - 'align_multiline_comment' => true, - 'array_indentation' => true, - 'array_syntax' => ['syntax' => 'short'], - 'binary_operator_spaces' => [ - 'operators' => [ - '=' => 'align', - '=>' => 'align', - ], - ], - 'blank_line_after_namespace' => true, - 'blank_line_after_opening_tag' => false, - 'blank_line_before_statement' => [ - 'statements' => [ - 'break', - 'continue', - 'declare', - 'do', - 'for', - 'foreach', - 'if', - 'include', - 'include_once', - 'require', - 'require_once', - 'return', - 'switch', - 'throw', - 'try', - 'while', - 'yield', - ], - ], - 'braces' => [ - 'allow_single_line_closure' => false, - 'position_after_anonymous_constructs' => 'same', - 'position_after_control_structures' => 'same', - 'position_after_functions_and_oop_constructs' => 'same' - ], - 'cast_spaces' => ['space' => 'none'], - - // This fixer removes the blank line at class start, no way to disable that, so we disable the fixer :( - //'class_attributes_separation' => ['elements' => ['const', 'method', 'property']], - - 'combine_consecutive_issets' => true, - 'combine_consecutive_unsets' => true, - 'compact_nullable_typehint' => true, - 'concat_space' => ['spacing' => 'one'], - 'date_time_immutable' => true, - 'declare_equal_normalize' => ['space' => 'single'], - 'declare_strict_types' => true, - 'dir_constant' => true, - 'elseif' => true, - 'encoding' => true, - 'full_opening_tag' => true, - 'fully_qualified_strict_types' => true, - 'function_declaration' => [ - 'closure_function_spacing' => 'one' - ], - 'global_namespace_import' => [ - 'import_classes' => true, - 'import_constants' => true, - 'import_functions' => true, - ], - 'header_comment' => ['header' => $header, 'separate' => 'none'], - 'indentation_type' => true, - 'is_null' => true, - 'line_ending' => true, - 'list_syntax' => ['syntax' => 'short'], - 'logical_operators' => true, - 'lowercase_cast' => true, - 'constant_case' => ['case' => 'lower'], - 'lowercase_keywords' => true, - 'lowercase_static_reference' => true, - 'magic_constant_casing' => true, - 'method_argument_space' => ['on_multiline' => 'ensure_fully_multiline'], - 'modernize_types_casting' => true, - 'multiline_comment_opening_closing' => true, - 'multiline_whitespace_before_semicolons' => true, - 'new_with_braces' => false, - 'no_alias_functions' => true, - 'no_alternative_syntax' => true, - 'no_blank_lines_after_class_opening' => false, - 'no_blank_lines_after_phpdoc' => true, - 'no_blank_lines_before_namespace' => true, - 'no_closing_tag' => true, - 'no_empty_comment' => true, - 'no_empty_phpdoc' => true, - 'no_empty_statement' => true, - 'no_extra_blank_lines' => true, - 'no_homoglyph_names' => true, - 'no_leading_import_slash' => true, - 'no_leading_namespace_whitespace' => true, - 'no_mixed_echo_print' => ['use' => 'print'], - 'no_multiline_whitespace_around_double_arrow' => true, - 'no_null_property_initialization' => true, - 'no_php4_constructor' => true, - 'no_short_bool_cast' => true, - 'echo_tag_syntax' => ['format' => 'long'], - 'no_singleline_whitespace_before_semicolons' => true, - 'no_spaces_after_function_name' => true, - 'no_spaces_inside_parenthesis' => true, - 'no_superfluous_elseif' => true, - 'no_superfluous_phpdoc_tags' => true, - 'no_trailing_comma_in_list_call' => true, - 'no_trailing_comma_in_singleline_array' => true, - 'no_trailing_whitespace' => true, - 'no_trailing_whitespace_in_comment' => true, - 'no_unneeded_control_parentheses' => false, - 'no_unneeded_curly_braces' => false, - 'no_unneeded_final_method' => true, - 'no_unreachable_default_argument_value' => true, - 'no_unset_on_property' => true, - 'no_unused_imports' => true, - 'no_useless_else' => true, - 'no_useless_return' => true, - 'no_whitespace_before_comma_in_array' => true, - 'no_whitespace_in_blank_line' => true, - 'non_printable_character' => true, - 'normalize_index_brace' => true, - 'object_operator_without_whitespace' => true, - 'ordered_class_elements' => [ - 'order' => [ - 'use_trait', - 'constant_public', - 'constant_protected', - 'constant_private', - 'property_public_static', - 'property_protected_static', - 'property_private_static', - 'property_public', - 'property_protected', - 'property_private', - 'method_public_static', - 'construct', - 'destruct', - 'magic', - 'phpunit', - 'method_public', - 'method_protected', - 'method_private', - 'method_protected_static', - 'method_private_static', - ], - ], - 'ordered_imports' => [ - 'imports_order' => [ - PhpCsFixer\Fixer\Import\OrderedImportsFixer::IMPORT_TYPE_CLASS, - PhpCsFixer\Fixer\Import\OrderedImportsFixer::IMPORT_TYPE_CONST, - PhpCsFixer\Fixer\Import\OrderedImportsFixer::IMPORT_TYPE_FUNCTION, - ] - ], - 'phpdoc_add_missing_param_annotation' => true, - 'phpdoc_align' => true, - 'phpdoc_annotation_without_dot' => true, - 'phpdoc_indent' => true, - 'phpdoc_no_access' => true, - 'phpdoc_no_empty_return' => true, - 'phpdoc_no_package' => true, - 'phpdoc_order' => true, - 'phpdoc_return_self_reference' => true, - 'phpdoc_scalar' => true, - 'phpdoc_separation' => true, - 'phpdoc_single_line_var_spacing' => true, - 'phpdoc_to_comment' => true, - 'phpdoc_trim' => true, - 'phpdoc_trim_consecutive_blank_line_separation' => true, - 'phpdoc_types' => ['groups' => ['simple', 'meta']], - 'phpdoc_types_order' => true, - 'phpdoc_to_return_type' => true, - 'phpdoc_var_without_name' => true, - 'pow_to_exponentiation' => true, - 'protected_to_private' => true, - 'return_assignment' => true, - 'return_type_declaration' => ['space_before' => 'none'], - 'self_accessor' => false, - 'semicolon_after_instruction' => true, - 'set_type_to_cast' => true, - 'short_scalar_cast' => true, - 'simplified_null_return' => true, - 'single_blank_line_at_eof' => true, - 'single_import_per_statement' => true, - 'single_line_after_imports' => true, - 'single_quote' => true, - 'standardize_not_equals' => true, - 'ternary_to_null_coalescing' => true, - 'trailing_comma_in_multiline' => false, - 'trim_array_spaces' => true, - 'unary_operator_spaces' => true, - 'visibility_required' => [ - 'elements' => [ - 'const', - 'method', - 'property', - ], - ], - 'void_return' => true, - 'whitespace_after_comma_in_array' => true, - 'yoda_style' => false - ] - ) - ->setFinder( - PhpCsFixer\Finder::create() - ->files() - ->in(__DIR__ . '/build') - ->in(__DIR__ . '/src') - ->in(__DIR__ . '/tests') - ->notName('autoload.php') - ); diff --git a/docker/statistics/vendor/phar-io/manifest/manifest.xsd b/docker/statistics/vendor/phar-io/manifest/manifest.xsd deleted file mode 100644 index 63e3f1cb..00000000 --- a/docker/statistics/vendor/phar-io/manifest/manifest.xsd +++ /dev/null @@ -1,116 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docker/statistics/vendor/phar-io/manifest/src/exceptions/NoEmailAddressException.php b/docker/statistics/vendor/phar-io/manifest/src/exceptions/NoEmailAddressException.php deleted file mode 100644 index 27913126..00000000 --- a/docker/statistics/vendor/phar-io/manifest/src/exceptions/NoEmailAddressException.php +++ /dev/null @@ -1,16 +0,0 @@ -, Sebastian Heuer , Sebastian Bergmann and contributors - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - * - */ -namespace PharIo\Manifest; - -use InvalidArgumentException; - -class NoEmailAddressException extends InvalidArgumentException implements Exception { -} diff --git a/docker/statistics/vendor/phar-io/manifest/tools/php-cs-fixer.d/PhpdocSingleLineVarFixer.php b/docker/statistics/vendor/phar-io/manifest/tools/php-cs-fixer.d/PhpdocSingleLineVarFixer.php deleted file mode 100644 index ea5414e4..00000000 --- a/docker/statistics/vendor/phar-io/manifest/tools/php-cs-fixer.d/PhpdocSingleLineVarFixer.php +++ /dev/null @@ -1,72 +0,0 @@ -isTokenKindFound(T_DOC_COMMENT); - } - - public function isRisky(): bool { - return false; - } - - public function fix(\SplFileInfo $file, Tokens $tokens): void { - foreach($tokens as $index => $token) { - if (!$token->isGivenKind(T_DOC_COMMENT)) { - continue; - } - if (\stripos($token->getContent(), '@var') === false) { - continue; - } - - if (preg_match('#^/\*\*[\s\*]+(@var[^\r\n]+)[\s\*]*\*\/$#u', $token->getContent(), $matches) !== 1) { - continue; - } - $newContent = '/** ' . \rtrim($matches[1]) . ' */'; - if ($newContent === $token->getContent()) { - continue; - } - $tokens[$index] = new Token([T_DOC_COMMENT, $newContent]); - } - } - - public function getPriority(): int { - return 0; - } - - public function getName(): string { - return 'PharIo/phpdoc_single_line_var_fixer'; - } - - public function supports(\SplFileInfo $file): bool { - return true; - } - -} diff --git a/docker/statistics/vendor/phar-io/manifest/tools/php-cs-fixer.d/header.txt b/docker/statistics/vendor/phar-io/manifest/tools/php-cs-fixer.d/header.txt deleted file mode 100644 index dc8c4ffc..00000000 --- a/docker/statistics/vendor/phar-io/manifest/tools/php-cs-fixer.d/header.txt +++ /dev/null @@ -1,6 +0,0 @@ -This file is part of PharIo\Manifest. - -Copyright (c) Arne Blankerts , Sebastian Heuer , Sebastian Bergmann and contributors - -For the full copyright and license information, please view the LICENSE -file that was distributed with this source code. diff --git a/docker/statistics/vendor/phenx/php-font-lib/LICENSE b/docker/statistics/vendor/phenx/php-font-lib/LICENSE deleted file mode 100644 index bca992d7..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/LICENSE +++ /dev/null @@ -1,456 +0,0 @@ - GNU LESSER GENERAL PUBLIC LICENSE - Version 2.1, February 1999 - - Copyright (C) 1991, 1999 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - -[This is the first released version of the Lesser GPL. It also counts - as the successor of the GNU Library Public License, version 2, hence - the version number 2.1.] - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -Licenses are intended to guarantee your freedom to share and change -free software--to make sure the software is free for all its users. - - This license, the Lesser General Public License, applies to some -specially designated software packages--typically libraries--of the -Free Software Foundation and other authors who decide to use it. You -can use it too, but we suggest you first think carefully about whether -this license or the ordinary General Public License is the better -strategy to use in any particular case, based on the explanations below. - - When we speak of free software, we are referring to freedom of use, -not price. Our General Public Licenses are designed to make sure that -you have the freedom to distribute copies of free software (and charge -for this service if you wish); that you receive source code or can get -it if you want it; that you can change the software and use pieces of -it in new free programs; and that you are informed that you can do -these things. - - To protect your rights, we need to make restrictions that forbid -distributors to deny you these rights or to ask you to surrender these -rights. These restrictions translate to certain responsibilities for -you if you distribute copies of the library or if you modify it. - - For example, if you distribute copies of the library, whether gratis -or for a fee, you must give the recipients all the rights that we gave -you. You must make sure that they, too, receive or can get the source -code. If you link other code with the library, you must provide -complete object files to the recipients, so that they can relink them -with the library after making changes to the library and recompiling -it. And you must show them these terms so they know their rights. - - We protect your rights with a two-step method: (1) we copyright the -library, and (2) we offer you this license, which gives you legal -permission to copy, distribute and/or modify the library. - - To protect each distributor, we want to make it very clear that -there is no warranty for the free library. Also, if the library is -modified by someone else and passed on, the recipients should know -that what they have is not the original version, so that the original -author's reputation will not be affected by problems that might be -introduced by others. - - Finally, software patents pose a constant threat to the existence of -any free program. We wish to make sure that a company cannot -effectively restrict the users of a free program by obtaining a -restrictive license from a patent holder. Therefore, we insist that -any patent license obtained for a version of the library must be -consistent with the full freedom of use specified in this license. - - Most GNU software, including some libraries, is covered by the -ordinary GNU General Public License. This license, the GNU Lesser -General Public License, applies to certain designated libraries, and -is quite different from the ordinary General Public License. We use -this license for certain libraries in order to permit linking those -libraries into non-free programs. - - When a program is linked with a library, whether statically or using -a shared library, the combination of the two is legally speaking a -combined work, a derivative of the original library. The ordinary -General Public License therefore permits such linking only if the -entire combination fits its criteria of freedom. The Lesser General -Public License permits more lax criteria for linking other code with -the library. - - We call this license the "Lesser" General Public License because it -does Less to protect the user's freedom than the ordinary General -Public License. It also provides other free software developers Less -of an advantage over competing non-free programs. These disadvantages -are the reason we use the ordinary General Public License for many -libraries. However, the Lesser license provides advantages in certain -special circumstances. - - For example, on rare occasions, there may be a special need to -encourage the widest possible use of a certain library, so that it becomes -a de-facto standard. To achieve this, non-free programs must be -allowed to use the library. A more frequent case is that a free -library does the same job as widely used non-free libraries. In this -case, there is little to gain by limiting the free library to free -software only, so we use the Lesser General Public License. - - In other cases, permission to use a particular library in non-free -programs enables a greater number of people to use a large body of -free software. For example, permission to use the GNU C Library in -non-free programs enables many more people to use the whole GNU -operating system, as well as its variant, the GNU/Linux operating -system. - - Although the Lesser General Public License is Less protective of the -users' freedom, it does ensure that the user of a program that is -linked with the Library has the freedom and the wherewithal to run -that program using a modified version of the Library. - - The precise terms and conditions for copying, distribution and -modification follow. Pay close attention to the difference between a -"work based on the library" and a "work that uses the library". The -former contains code derived from the library, whereas the latter must -be combined with the library in order to run. - - GNU LESSER GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License Agreement applies to any software library or other -program which contains a notice placed by the copyright holder or -other authorized party saying it may be distributed under the terms of -this Lesser General Public License (also called "this License"). -Each licensee is addressed as "you". - - A "library" means a collection of software functions and/or data -prepared so as to be conveniently linked with application programs -(which use some of those functions and data) to form executables. - - The "Library", below, refers to any such software library or work -which has been distributed under these terms. A "work based on the -Library" means either the Library or any derivative work under -copyright law: that is to say, a work containing the Library or a -portion of it, either verbatim or with modifications and/or translated -straightforwardly into another language. (Hereinafter, translation is -included without limitation in the term "modification".) - - "Source code" for a work means the preferred form of the work for -making modifications to it. For a library, complete source code means -all the source code for all modules it contains, plus any associated -interface definition files, plus the scripts used to control compilation -and installation of the library. - - Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running a program using the Library is not restricted, and output from -such a program is covered only if its contents constitute a work based -on the Library (independent of the use of the Library in a tool for -writing it). Whether that is true depends on what the Library does -and what the program that uses the Library does. - - 1. You may copy and distribute verbatim copies of the Library's -complete source code as you receive it, in any medium, provided that -you conspicuously and appropriately publish on each copy an -appropriate copyright notice and disclaimer of warranty; keep intact -all the notices that refer to this License and to the absence of any -warranty; and distribute a copy of this License along with the -Library. - - You may charge a fee for the physical act of transferring a copy, -and you may at your option offer warranty protection in exchange for a -fee. - - 2. You may modify your copy or copies of the Library or any portion -of it, thus forming a work based on the Library, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) The modified work must itself be a software library. - - b) You must cause the files modified to carry prominent notices - stating that you changed the files and the date of any change. - - c) You must cause the whole of the work to be licensed at no - charge to all third parties under the terms of this License. - - d) If a facility in the modified Library refers to a function or a - table of data to be supplied by an application program that uses - the facility, other than as an argument passed when the facility - is invoked, then you must make a good faith effort to ensure that, - in the event an application does not supply such function or - table, the facility still operates, and performs whatever part of - its purpose remains meaningful. - - (For example, a function in a library to compute square roots has - a purpose that is entirely well-defined independent of the - application. Therefore, Subsection 2d requires that any - application-supplied function or table used by this function must - be optional: if the application does not supply it, the square - root function must still compute square roots.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Library, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Library, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote -it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Library. - -In addition, mere aggregation of another work not based on the Library -with the Library (or with a work based on the Library) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may opt to apply the terms of the ordinary GNU General Public -License instead of this License to a given copy of the Library. To do -this, you must alter all the notices that refer to this License, so -that they refer to the ordinary GNU General Public License, version 2, -instead of to this License. (If a newer version than version 2 of the -ordinary GNU General Public License has appeared, then you can specify -that version instead if you wish.) Do not make any other change in -these notices. - - Once this change is made in a given copy, it is irreversible for -that copy, so the ordinary GNU General Public License applies to all -subsequent copies and derivative works made from that copy. - - This option is useful when you wish to copy part of the code of -the Library into a program that is not a library. - - 4. You may copy and distribute the Library (or a portion or -derivative of it, under Section 2) in object code or executable form -under the terms of Sections 1 and 2 above provided that you accompany -it with the complete corresponding machine-readable source code, which -must be distributed under the terms of Sections 1 and 2 above on a -medium customarily used for software interchange. - - If distribution of object code is made by offering access to copy -from a designated place, then offering equivalent access to copy the -source code from the same place satisfies the requirement to -distribute the source code, even though third parties are not -compelled to copy the source along with the object code. - - 5. A program that contains no derivative of any portion of the -Library, but is designed to work with the Library by being compiled or -linked with it, is called a "work that uses the Library". Such a -work, in isolation, is not a derivative work of the Library, and -therefore falls outside the scope of this License. - - However, linking a "work that uses the Library" with the Library -creates an executable that is a derivative of the Library (because it -contains portions of the Library), rather than a "work that uses the -library". The executable is therefore covered by this License. -Section 6 states terms for distribution of such executables. - - When a "work that uses the Library" uses material from a header file -that is part of the Library, the object code for the work may be a -derivative work of the Library even though the source code is not. -Whether this is true is especially significant if the work can be -linked without the Library, or if the work is itself a library. The -threshold for this to be true is not precisely defined by law. - - If such an object file uses only numerical parameters, data -structure layouts and accessors, and small macros and small inline -functions (ten lines or less in length), then the use of the object -file is unrestricted, regardless of whether it is legally a derivative -work. (Executables containing this object code plus portions of the -Library will still fall under Section 6.) - - Otherwise, if the work is a derivative of the Library, you may -distribute the object code for the work under the terms of Section 6. -Any executables containing that work also fall under Section 6, -whether or not they are linked directly with the Library itself. - - 6. As an exception to the Sections above, you may also combine or -link a "work that uses the Library" with the Library to produce a -work containing portions of the Library, and distribute that work -under terms of your choice, provided that the terms permit -modification of the work for the customer's own use and reverse -engineering for debugging such modifications. - - You must give prominent notice with each copy of the work that the -Library is used in it and that the Library and its use are covered by -this License. You must supply a copy of this License. If the work -during execution displays copyright notices, you must include the -copyright notice for the Library among them, as well as a reference -directing the user to the copy of this License. Also, you must do one -of these things: - - a) Accompany the work with the complete corresponding - machine-readable source code for the Library including whatever - changes were used in the work (which must be distributed under - Sections 1 and 2 above); and, if the work is an executable linked - with the Library, with the complete machine-readable "work that - uses the Library", as object code and/or source code, so that the - user can modify the Library and then relink to produce a modified - executable containing the modified Library. (It is understood - that the user who changes the contents of definitions files in the - Library will not necessarily be able to recompile the application - to use the modified definitions.) - - b) Use a suitable shared library mechanism for linking with the - Library. A suitable mechanism is one that (1) uses at run time a - copy of the library already present on the user's computer system, - rather than copying library functions into the executable, and (2) - will operate properly with a modified version of the library, if - the user installs one, as long as the modified version is - interface-compatible with the version that the work was made with. - - c) Accompany the work with a written offer, valid for at - least three years, to give the same user the materials - specified in Subsection 6a, above, for a charge no more - than the cost of performing this distribution. - - d) If distribution of the work is made by offering access to copy - from a designated place, offer equivalent access to copy the above - specified materials from the same place. - - e) Verify that the user has already received a copy of these - materials or that you have already sent this user a copy. - - For an executable, the required form of the "work that uses the -Library" must include any data and utility programs needed for -reproducing the executable from it. However, as a special exception, -the materials to be distributed need not include anything that is -normally distributed (in either source or binary form) with the major -components (compiler, kernel, and so on) of the operating system on -which the executable runs, unless that component itself accompanies -the executable. - - It may happen that this requirement contradicts the license -restrictions of other proprietary libraries that do not normally -accompany the operating system. Such a contradiction means you cannot -use both them and the Library together in an executable that you -distribute. - - 7. You may place library facilities that are a work based on the -Library side-by-side in a single library together with other library -facilities not covered by this License, and distribute such a combined -library, provided that the separate distribution of the work based on -the Library and of the other library facilities is otherwise -permitted, and provided that you do these two things: - - a) Accompany the combined library with a copy of the same work - based on the Library, uncombined with any other library - facilities. This must be distributed under the terms of the - Sections above. - - b) Give prominent notice with the combined library of the fact - that part of it is a work based on the Library, and explaining - where to find the accompanying uncombined form of the same work. - - 8. You may not copy, modify, sublicense, link with, or distribute -the Library except as expressly provided under this License. Any -attempt otherwise to copy, modify, sublicense, link with, or -distribute the Library is void, and will automatically terminate your -rights under this License. However, parties who have received copies, -or rights, from you under this License will not have their licenses -terminated so long as such parties remain in full compliance. - - 9. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Library or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Library (or any work based on the -Library), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Library or works based on it. - - 10. Each time you redistribute the Library (or any work based on the -Library), the recipient automatically receives a license from the -original licensor to copy, distribute, link with or modify the Library -subject to these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties with -this License. - - 11. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Library at all. For example, if a patent -license would not permit royalty-free redistribution of the Library by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Library. - -If any portion of this section is held invalid or unenforceable under any -particular circumstance, the balance of the section is intended to apply, -and the section as a whole is intended to apply in other circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 12. If the distribution and/or use of the Library is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Library under this License may add -an explicit geographical distribution limitation excluding those countries, -so that distribution is permitted only in or among countries not thus -excluded. In such case, this License incorporates the limitation as if -written in the body of this License. - - 13. The Free Software Foundation may publish revised and/or new -versions of the Lesser General Public License from time to time. -Such new versions will be similar in spirit to the present version, -but may differ in detail to address new problems or concerns. - -Each version is given a distinguishing version number. If the Library -specifies a version number of this License which applies to it and -"any later version", you have the option of following the terms and -conditions either of that version or of any later version published by -the Free Software Foundation. If the Library does not specify a -license version number, you may choose any version ever published by -the Free Software Foundation. - - 14. If you wish to incorporate parts of the Library into other free -programs whose distribution conditions are incompatible with these, -write to the author to ask for permission. For software which is -copyrighted by the Free Software Foundation, write to the Free -Software Foundation; we sometimes make exceptions for this. Our -decision will be guided by the two goals of preserving the free status -of all derivatives of our free software and of promoting the sharing -and reuse of software generally. - - NO WARRANTY - - 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO -WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. -EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR -OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY -KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE -LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME -THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN -WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY -AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU -FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR -CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE -LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING -RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A -FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF -SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH -DAMAGES. \ No newline at end of file diff --git a/docker/statistics/vendor/phenx/php-font-lib/README.md b/docker/statistics/vendor/phenx/php-font-lib/README.md deleted file mode 100644 index df8edfe8..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/README.md +++ /dev/null @@ -1,50 +0,0 @@ -[![PHPUnit tests](https://github.com/dompdf/php-font-lib/actions/workflows/phpunit.yml/badge.svg)](https://github.com/dompdf/php-font-lib/actions/workflows/phpunit.yml) - -# PHP Font Lib - -This library can be used to: - * Read TrueType, OpenType (with TrueType glyphs), WOFF font files - * Extract basic info (name, style, etc) - * Extract advanced info (horizontal metrics, glyph names, glyph shapes, etc) - * Make an Adobe Font Metrics (AFM) file from a font - -This project was initiated by the need to read font files in the [DOMPDF project](https://github.com/dompdf/dompdf). - -Usage Example -------------- - -### Base font information - -```php -$font = \FontLib\Font::load('fontfile.ttf'); -$font->parse(); // for getFontWeight() to work this call must be done first! -echo $font->getFontName() .'
    '; -echo $font->getFontSubfamily() .'
    '; -echo $font->getFontSubfamilyID() .'
    '; -echo $font->getFontFullName() .'
    '; -echo $font->getFontVersion() .'
    '; -echo $font->getFontWeight() .'
    '; -echo $font->getFontPostscriptName() .'
    '; -$font->close(); -``` - -### Font Metrics Generation - -```php -$font = FontLib\Font::load('fontfile.ttf'); -$font->parse(); -$font->saveAdobeFontMetrics('fontfile.ufm'); -``` - -### Create a font subset - -```php -$font = FontLib\Font::load('fontfile.ttf'); -$font->parse(); -$font->setSubset("abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ.:,;' (!?)+-*/== 1234567890"); // characters to include -$font->reduce(); -touch('fontfile.subset.ttf'); -$font->open('fontfile.subset.ttf', FontLib\BinaryStream::modeReadWrite); -$font->encode(array("OS/2")); -$font->close(); -``` diff --git a/docker/statistics/vendor/phenx/php-font-lib/composer.json b/docker/statistics/vendor/phenx/php-font-lib/composer.json deleted file mode 100644 index 97b42b89..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/composer.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "name": "phenx/php-font-lib", - "type": "library", - "description": "A library to read, parse, export and make subsets of different types of font files.", - "homepage": "https://github.com/PhenX/php-font-lib", - "license": "LGPL-2.1-or-later", - "authors": [ - { - "name": "Fabien Ménager", - "email": "fabien.menager@gmail.com" - } - ], - "autoload": { - "psr-4": { - "FontLib\\": "src/FontLib" - } - }, - "autoload-dev": { - "psr-4": { - "FontLib\\Tests\\": "tests/FontLib" - } - }, - "config": { - "bin-dir": "bin" - }, - "require": { - "ext-mbstring": "*" - }, - "require-dev": { - "symfony/phpunit-bridge" : "^3 || ^4 || ^5 || ^6" - } -} diff --git a/docker/statistics/vendor/phenx/php-font-lib/maps/adobe-standard-encoding.map b/docker/statistics/vendor/phenx/php-font-lib/maps/adobe-standard-encoding.map deleted file mode 100644 index 230d4a1e..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/maps/adobe-standard-encoding.map +++ /dev/null @@ -1,231 +0,0 @@ -// Adobe Standard Encoding table for ttf2pt1 -// Thomas Henlich - -=20 U+0020 SPACE -=21 U+0021 EXCLAMATION MARK -=22 U+0022 QUOTATION MARK -=23 U+0023 NUMBER SIGN -=24 U+0024 DOLLAR SIGN -=25 U+0025 PERCENT SIGN -=26 U+0026 AMPERSAND -=27 U+2019 RIGHT SINGLE QUOTATION MARK -=28 U+0028 LEFT PARENTHESIS -=29 U+0029 RIGHT PARENTHESIS -=2A U+002A ASTERISK -=2B U+002B PLUS SIGN -=2C U+002C COMMA -=2D U+002D HYPHEN-MINUS -=2E U+002E FULL STOP -=2F U+002F SOLIDUS -=30 U+0030 DIGIT ZERO -=31 U+0031 DIGIT ONE -=32 U+0032 DIGIT TWO -=33 U+0033 DIGIT THREE -=34 U+0034 DIGIT FOUR -=35 U+0035 DIGIT FIVE -=36 U+0036 DIGIT SIX -=37 U+0037 DIGIT SEVEN -=38 U+0038 DIGIT EIGHT -=39 U+0039 DIGIT NINE -=3A U+003A COLON -=3B U+003B SEMICOLON -=3C U+003C LESS-THAN SIGN -=3D U+003D EQUALS SIGN -=3E U+003E GREATER-THAN SIGN -=3F U+003F QUESTION MARK -=40 U+0040 COMMERCIAL AT -=41 U+0041 LATIN CAPITAL LETTER A -=42 U+0042 LATIN CAPITAL LETTER B -=43 U+0043 LATIN CAPITAL LETTER C -=44 U+0044 LATIN CAPITAL LETTER D -=45 U+0045 LATIN CAPITAL LETTER E -=46 U+0046 LATIN CAPITAL LETTER F -=47 U+0047 LATIN CAPITAL LETTER G -=48 U+0048 LATIN CAPITAL LETTER H -=49 U+0049 LATIN CAPITAL LETTER I -=4A U+004A LATIN CAPITAL LETTER J -=4B U+004B LATIN CAPITAL LETTER K -=4C U+004C LATIN CAPITAL LETTER L -=4D U+004D LATIN CAPITAL LETTER M -=4E U+004E LATIN CAPITAL LETTER N -=4F U+004F LATIN CAPITAL LETTER O -=50 U+0050 LATIN CAPITAL LETTER P -=51 U+0051 LATIN CAPITAL LETTER Q -=52 U+0052 LATIN CAPITAL LETTER R -=53 U+0053 LATIN CAPITAL LETTER S -=54 U+0054 LATIN CAPITAL LETTER T -=55 U+0055 LATIN CAPITAL LETTER U -=56 U+0056 LATIN CAPITAL LETTER V -=57 U+0057 LATIN CAPITAL LETTER W -=58 U+0058 LATIN CAPITAL LETTER X -=59 U+0059 LATIN CAPITAL LETTER Y -=5A U+005A LATIN CAPITAL LETTER Z -=5B U+005B LEFT SQUARE BRACKET -=5C U+005C REVERSE SOLIDUS -=5D U+005D RIGHT SQUARE BRACKET -=5E U+005E CIRCUMFLEX ACCENT -=5F U+005F LOW LINE -=60 U+2018 LEFT SINGLE QUOTATION MARK -=61 U+0061 LATIN SMALL LETTER A -=62 U+0062 LATIN SMALL LETTER B -=63 U+0063 LATIN SMALL LETTER C -=64 U+0064 LATIN SMALL LETTER D -=65 U+0065 LATIN SMALL LETTER E -=66 U+0066 LATIN SMALL LETTER F -=67 U+0067 LATIN SMALL LETTER G -=68 U+0068 LATIN SMALL LETTER H -=69 U+0069 LATIN SMALL LETTER I -=6A U+006A LATIN SMALL LETTER J -=6B U+006B LATIN SMALL LETTER K -=6C U+006C LATIN SMALL LETTER L -=6D U+006D LATIN SMALL LETTER M -=6E U+006E LATIN SMALL LETTER N -=6F U+006F LATIN SMALL LETTER O -=70 U+0070 LATIN SMALL LETTER P -=71 U+0071 LATIN SMALL LETTER Q -=72 U+0072 LATIN SMALL LETTER R -=73 U+0073 LATIN SMALL LETTER S -=74 U+0074 LATIN SMALL LETTER T -=75 U+0075 LATIN SMALL LETTER U -=76 U+0076 LATIN SMALL LETTER V -=77 U+0077 LATIN SMALL LETTER W -=78 U+0078 LATIN SMALL LETTER X -=79 U+0079 LATIN SMALL LETTER Y -=7A U+007A LATIN SMALL LETTER Z -=7B U+007B LEFT CURLY BRACKET -=7C U+007C VERTICAL LINE -=7D U+007D RIGHT CURLY BRACKET -=7E U+007E TILDE -=A1 U+00A1 INVERTED EXCLAMATION MARK -=A2 U+00A2 CENT SIGN -=A3 U+00A3 POUND SIGN -=A4 U+2044 FRACTION SLASH -=A5 U+00A5 YEN SIGN -=A6 U+0192 LATIN SMALL LETTER F WITH HOOK -=A7 U+00A7 SECTION SIGN -=A8 U+00A4 CURRENCY SIGN -=A9 U+0027 APOSTROPHE -=AA U+201C LEFT DOUBLE QUOTATION MARK -=AB U+00AB LEFT-POINTING DOUBLE ANGLE QUOTATION MARK -=AC U+2039 SINGLE LEFT-POINTING ANGLE QUOTATION MARK -=AD U+203A SINGLE RIGHT-POINTING ANGLE QUOTATION MARK -=AE U+FB01 LATIN SMALL LIGATURE FI -=AF U+FB02 LATIN SMALL LIGATURE FL -=B1 U+2013 EN DASH -=B2 U+2020 DAGGER -=B3 U+2021 DOUBLE DAGGER -=B4 U+00B7 MIDDLE DOT -=B6 U+00B6 PILCROW SIGN -=B7 U+2022 BULLET -=B8 U+201A SINGLE LOW-9 QUOTATION MARK -=B9 U+201E DOUBLE LOW-9 QUOTATION MARK -=BA U+201D RIGHT DOUBLE QUOTATION MARK -=BB U+00BB RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK -=BC U+2026 HORIZONTAL ELLIPSIS -=BD U+2030 PER MILLE SIGN -=BF U+00BF INVERTED QUESTION MARK -=C1 U+0060 GRAVE ACCENT -=C2 U+00B4 ACUTE ACCENT -=C3 U+02C6 MODIFIER LETTER CIRCUMFLEX ACCENT -=C4 U+02DC SMALL TILDE -=C5 U+00AF MACRON -=C6 U+02D8 BREVE -=C7 U+02D9 DOT ABOVE -=C8 U+00A8 DIAERESIS -=CA U+02DA RING ABOVE -=CB U+00B8 CEDILLA -=CD U+02DD DOUBLE ACUTE ACCENT -=CE U+02DB OGONEK -=CF U+02C7 CARON -=D0 U+2014 EM DASH -=E1 U+00C6 LATIN CAPITAL LETTER AE -=E3 U+00AA FEMININE ORDINAL INDICATOR -=E8 U+0141 LATIN CAPITAL LETTER L WITH STROKE -=E9 U+00D8 LATIN CAPITAL LETTER O WITH STROKE -=EA U+0152 LATIN CAPITAL LIGATURE OE -=EB U+00BA MASCULINE ORDINAL INDICATOR -=F1 U+00E6 LATIN SMALL LETTER AE -=F5 U+0131 LATIN SMALL LETTER DOTLESS I -=F8 U+0142 LATIN SMALL LETTER L WITH STROKE -=F9 U+00F8 LATIN SMALL LETTER O WITH STROKE -=FA U+0153 LATIN SMALL LIGATURE OE -=FB U+00DF LATIN SMALL LETTER SHARP S - -// unencoded characters: -=100 U+00E7 LATIN SMALL LETTER C WITH CEDILLA -=101 U+00FF LATIN SMALL LETTER Y WITH DIAERESIS -=102 U+00E3 LATIN SMALL LETTER A WITH TILDE -=103 U+00EE LATIN SMALL LETTER I WITH CIRCUMFLEX -=104 U+00B3 SUPERSCRIPT THREE -=105 U+00EA LATIN SMALL LETTER E WITH CIRCUMFLEX -=106 U+00FE LATIN SMALL LETTER THORN -=107 U+00E8 LATIN SMALL LETTER E WITH GRAVE -=108 U+00B2 SUPERSCRIPT TWO -=109 U+00E9 LATIN SMALL LETTER E WITH ACUTE -=10A U+00F5 LATIN SMALL LETTER O WITH TILDE -=10B U+00C1 LATIN CAPITAL LETTER A WITH ACUTE -=10C U+00F4 LATIN SMALL LETTER O WITH CIRCUMFLEX -=10D U+00FD LATIN SMALL LETTER Y WITH ACUTE -=10E U+00FC LATIN SMALL LETTER U WITH DIAERESIS -=10F U+00BE VULGAR FRACTION THREE QUARTERS -=110 U+00E2 LATIN SMALL LETTER A WITH CIRCUMFLEX -=111 U+00D0 LATIN CAPITAL LETTER ETH -=112 U+00EB LATIN SMALL LETTER E WITH DIAERESIS -=113 U+00F9 LATIN SMALL LETTER U WITH GRAVE -=114 U+2122 TRADE MARK SIGN -=115 U+00F2 LATIN SMALL LETTER O WITH GRAVE -=116 U+0161 LATIN SMALL LETTER S WITH CARON -=117 U+00CF LATIN CAPITAL LETTER I WITH DIAERESIS -=118 U+00FA LATIN SMALL LETTER U WITH ACUTE -=119 U+00E0 LATIN SMALL LETTER A WITH GRAVE -=11A U+00F1 LATIN SMALL LETTER N WITH TILDE -=11B U+00E5 LATIN SMALL LETTER A WITH RING ABOVE -=11C U+017E LATIN SMALL LETTER Z WITH CARON -=11D U+00CE LATIN CAPITAL LETTER I WITH CIRCUMFLEX -=11E U+00D1 LATIN CAPITAL LETTER N WITH TILDE -=11F U+00FB LATIN SMALL LETTER U WITH CIRCUMFLEX -=120 U+00CA LATIN CAPITAL LETTER E WITH CIRCUMFLEX -=121 U+00CD LATIN CAPITAL LETTER I WITH ACUTE -=122 U+00C7 LATIN CAPITAL LETTER C WITH CEDILLA -=123 U+00D6 LATIN CAPITAL LETTER O WITH DIAERESIS -=124 U+0160 LATIN CAPITAL LETTER S WITH CARON -=125 U+00CC LATIN CAPITAL LETTER I WITH GRAVE -=126 U+00E4 LATIN SMALL LETTER A WITH DIAERESIS -=127 U+00D2 LATIN CAPITAL LETTER O WITH GRAVE -=128 U+00C8 LATIN CAPITAL LETTER E WITH GRAVE -=129 U+0178 LATIN CAPITAL LETTER Y WITH DIAERESIS -=12A U+00AE REGISTERED SIGN -=12B U+00D5 LATIN CAPITAL LETTER O WITH TILDE -=12C U+00BC VULGAR FRACTION ONE QUARTER -=12D U+00D9 LATIN CAPITAL LETTER U WITH GRAVE -=12E U+00DB LATIN CAPITAL LETTER U WITH CIRCUMFLEX -=12F U+00DE LATIN CAPITAL LETTER THORN -=130 U+00F7 DIVISION SIGN -=131 U+00C3 LATIN CAPITAL LETTER A WITH TILDE -=132 U+00DA LATIN CAPITAL LETTER U WITH ACUTE -=133 U+00D4 LATIN CAPITAL LETTER O WITH CIRCUMFLEX -=134 U+00AC NOT SIGN -=135 U+00C5 LATIN CAPITAL LETTER A WITH RING ABOVE -=136 U+00EF LATIN SMALL LETTER I WITH DIAERESIS -=137 U+00ED LATIN SMALL LETTER I WITH ACUTE -=138 U+00E1 LATIN SMALL LETTER A WITH ACUTE -=139 U+00B1 PLUS-MINUS SIGN -=13A U+00D7 MULTIPLICATION SIGN -=13B U+00DC LATIN CAPITAL LETTER U WITH DIAERESIS -=13C U+2212 MINUS SIGN -=13D U+00B9 SUPERSCRIPT ONE -=13E U+00C9 LATIN CAPITAL LETTER E WITH ACUTE -=13F U+00C2 LATIN CAPITAL LETTER A WITH CIRCUMFLEX -=140 U+00A9 COPYRIGHT SIGN -=141 U+00C0 LATIN CAPITAL LETTER A WITH GRAVE -=142 U+00F6 LATIN SMALL LETTER O WITH DIAERESIS -=143 U+00F3 LATIN SMALL LETTER O WITH ACUTE -=144 U+00B0 DEGREE SIGN -=145 U+00EC LATIN SMALL LETTER I WITH GRAVE -=146 U+00B5 MICRO SIGN -=147 U+00D3 LATIN CAPITAL LETTER O WITH ACUTE -=148 U+00F0 LATIN SMALL LETTER ETH -=149 U+00C4 LATIN CAPITAL LETTER A WITH DIAERESIS -=14A U+00DD LATIN CAPITAL LETTER Y WITH ACUTE -=14B U+00A6 BROKEN BAR -=14C U+00BD VULGAR FRACTION ONE HALF diff --git a/docker/statistics/vendor/phenx/php-font-lib/maps/cp1250.map b/docker/statistics/vendor/phenx/php-font-lib/maps/cp1250.map deleted file mode 100644 index ec110af0..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/maps/cp1250.map +++ /dev/null @@ -1,251 +0,0 @@ -!00 U+0000 .notdef -!01 U+0001 .notdef -!02 U+0002 .notdef -!03 U+0003 .notdef -!04 U+0004 .notdef -!05 U+0005 .notdef -!06 U+0006 .notdef -!07 U+0007 .notdef -!08 U+0008 .notdef -!09 U+0009 .notdef -!0A U+000A .notdef -!0B U+000B .notdef -!0C U+000C .notdef -!0D U+000D .notdef -!0E U+000E .notdef -!0F U+000F .notdef -!10 U+0010 .notdef -!11 U+0011 .notdef -!12 U+0012 .notdef -!13 U+0013 .notdef -!14 U+0014 .notdef -!15 U+0015 .notdef -!16 U+0016 .notdef -!17 U+0017 .notdef -!18 U+0018 .notdef -!19 U+0019 .notdef -!1A U+001A .notdef -!1B U+001B .notdef -!1C U+001C .notdef -!1D U+001D .notdef -!1E U+001E .notdef -!1F U+001F .notdef -!20 U+0020 space -!21 U+0021 exclam -!22 U+0022 quotedbl -!23 U+0023 numbersign -!24 U+0024 dollar -!25 U+0025 percent -!26 U+0026 ampersand -!27 U+0027 quotesingle -!28 U+0028 parenleft -!29 U+0029 parenright -!2A U+002A asterisk -!2B U+002B plus -!2C U+002C comma -!2D U+002D hyphen -!2E U+002E period -!2F U+002F slash -!30 U+0030 zero -!31 U+0031 one -!32 U+0032 two -!33 U+0033 three -!34 U+0034 four -!35 U+0035 five -!36 U+0036 six -!37 U+0037 seven -!38 U+0038 eight -!39 U+0039 nine -!3A U+003A colon -!3B U+003B semicolon -!3C U+003C less -!3D U+003D equal -!3E U+003E greater -!3F U+003F question -!40 U+0040 at -!41 U+0041 A -!42 U+0042 B -!43 U+0043 C -!44 U+0044 D -!45 U+0045 E -!46 U+0046 F -!47 U+0047 G -!48 U+0048 H -!49 U+0049 I -!4A U+004A J -!4B U+004B K -!4C U+004C L -!4D U+004D M -!4E U+004E N -!4F U+004F O -!50 U+0050 P -!51 U+0051 Q -!52 U+0052 R -!53 U+0053 S -!54 U+0054 T -!55 U+0055 U -!56 U+0056 V -!57 U+0057 W -!58 U+0058 X -!59 U+0059 Y -!5A U+005A Z -!5B U+005B bracketleft -!5C U+005C backslash -!5D U+005D bracketright -!5E U+005E asciicircum -!5F U+005F underscore -!60 U+0060 grave -!61 U+0061 a -!62 U+0062 b -!63 U+0063 c -!64 U+0064 d -!65 U+0065 e -!66 U+0066 f -!67 U+0067 g -!68 U+0068 h -!69 U+0069 i -!6A U+006A j -!6B U+006B k -!6C U+006C l -!6D U+006D m -!6E U+006E n -!6F U+006F o -!70 U+0070 p -!71 U+0071 q -!72 U+0072 r -!73 U+0073 s -!74 U+0074 t -!75 U+0075 u -!76 U+0076 v -!77 U+0077 w -!78 U+0078 x -!79 U+0079 y -!7A U+007A z -!7B U+007B braceleft -!7C U+007C bar -!7D U+007D braceright -!7E U+007E asciitilde -!7F U+007F .notdef -!80 U+20AC Euro -!82 U+201A quotesinglbase -!84 U+201E quotedblbase -!85 U+2026 ellipsis -!86 U+2020 dagger -!87 U+2021 daggerdbl -!89 U+2030 perthousand -!8A U+0160 Scaron -!8B U+2039 guilsinglleft -!8C U+015A Sacute -!8D U+0164 Tcaron -!8E U+017D Zcaron -!8F U+0179 Zacute -!91 U+2018 quoteleft -!92 U+2019 quoteright -!93 U+201C quotedblleft -!94 U+201D quotedblright -!95 U+2022 bullet -!96 U+2013 endash -!97 U+2014 emdash -!99 U+2122 trademark -!9A U+0161 scaron -!9B U+203A guilsinglright -!9C U+015B sacute -!9D U+0165 tcaron -!9E U+017E zcaron -!9F U+017A zacute -!A0 U+00A0 space -!A1 U+02C7 caron -!A2 U+02D8 breve -!A3 U+0141 Lslash -!A4 U+00A4 currency -!A5 U+0104 Aogonek -!A6 U+00A6 brokenbar -!A7 U+00A7 section -!A8 U+00A8 dieresis -!A9 U+00A9 copyright -!AA U+015E Scedilla -!AB U+00AB guillemotleft -!AC U+00AC logicalnot -!AD U+00AD hyphen -!AE U+00AE registered -!AF U+017B Zdotaccent -!B0 U+00B0 degree -!B1 U+00B1 plusminus -!B2 U+02DB ogonek -!B3 U+0142 lslash -!B4 U+00B4 acute -!B5 U+00B5 mu -!B6 U+00B6 paragraph -!B7 U+00B7 periodcentered -!B8 U+00B8 cedilla -!B9 U+0105 aogonek -!BA U+015F scedilla -!BB U+00BB guillemotright -!BC U+013D Lcaron -!BD U+02DD hungarumlaut -!BE U+013E lcaron -!BF U+017C zdotaccent -!C0 U+0154 Racute -!C1 U+00C1 Aacute -!C2 U+00C2 Acircumflex -!C3 U+0102 Abreve -!C4 U+00C4 Adieresis -!C5 U+0139 Lacute -!C6 U+0106 Cacute -!C7 U+00C7 Ccedilla -!C8 U+010C Ccaron -!C9 U+00C9 Eacute -!CA U+0118 Eogonek -!CB U+00CB Edieresis -!CC U+011A Ecaron -!CD U+00CD Iacute -!CE U+00CE Icircumflex -!CF U+010E Dcaron -!D0 U+0110 Dcroat -!D1 U+0143 Nacute -!D2 U+0147 Ncaron -!D3 U+00D3 Oacute -!D4 U+00D4 Ocircumflex -!D5 U+0150 Ohungarumlaut -!D6 U+00D6 Odieresis -!D7 U+00D7 multiply -!D8 U+0158 Rcaron -!D9 U+016E Uring -!DA U+00DA Uacute -!DB U+0170 Uhungarumlaut -!DC U+00DC Udieresis -!DD U+00DD Yacute -!DE U+0162 Tcommaaccent -!DF U+00DF germandbls -!E0 U+0155 racute -!E1 U+00E1 aacute -!E2 U+00E2 acircumflex -!E3 U+0103 abreve -!E4 U+00E4 adieresis -!E5 U+013A lacute -!E6 U+0107 cacute -!E7 U+00E7 ccedilla -!E8 U+010D ccaron -!E9 U+00E9 eacute -!EA U+0119 eogonek -!EB U+00EB edieresis -!EC U+011B ecaron -!ED U+00ED iacute -!EE U+00EE icircumflex -!EF U+010F dcaron -!F0 U+0111 dcroat -!F1 U+0144 nacute -!F2 U+0148 ncaron -!F3 U+00F3 oacute -!F4 U+00F4 ocircumflex -!F5 U+0151 ohungarumlaut -!F6 U+00F6 odieresis -!F7 U+00F7 divide -!F8 U+0159 rcaron -!F9 U+016F uring -!FA U+00FA uacute -!FB U+0171 uhungarumlaut -!FC U+00FC udieresis -!FD U+00FD yacute -!FE U+0163 tcommaaccent -!FF U+02D9 dotaccent diff --git a/docker/statistics/vendor/phenx/php-font-lib/maps/cp1251.map b/docker/statistics/vendor/phenx/php-font-lib/maps/cp1251.map deleted file mode 100644 index de6a198d..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/maps/cp1251.map +++ /dev/null @@ -1,255 +0,0 @@ -!00 U+0000 .notdef -!01 U+0001 .notdef -!02 U+0002 .notdef -!03 U+0003 .notdef -!04 U+0004 .notdef -!05 U+0005 .notdef -!06 U+0006 .notdef -!07 U+0007 .notdef -!08 U+0008 .notdef -!09 U+0009 .notdef -!0A U+000A .notdef -!0B U+000B .notdef -!0C U+000C .notdef -!0D U+000D .notdef -!0E U+000E .notdef -!0F U+000F .notdef -!10 U+0010 .notdef -!11 U+0011 .notdef -!12 U+0012 .notdef -!13 U+0013 .notdef -!14 U+0014 .notdef -!15 U+0015 .notdef -!16 U+0016 .notdef -!17 U+0017 .notdef -!18 U+0018 .notdef -!19 U+0019 .notdef -!1A U+001A .notdef -!1B U+001B .notdef -!1C U+001C .notdef -!1D U+001D .notdef -!1E U+001E .notdef -!1F U+001F .notdef -!20 U+0020 space -!21 U+0021 exclam -!22 U+0022 quotedbl -!23 U+0023 numbersign -!24 U+0024 dollar -!25 U+0025 percent -!26 U+0026 ampersand -!27 U+0027 quotesingle -!28 U+0028 parenleft -!29 U+0029 parenright -!2A U+002A asterisk -!2B U+002B plus -!2C U+002C comma -!2D U+002D hyphen -!2E U+002E period -!2F U+002F slash -!30 U+0030 zero -!31 U+0031 one -!32 U+0032 two -!33 U+0033 three -!34 U+0034 four -!35 U+0035 five -!36 U+0036 six -!37 U+0037 seven -!38 U+0038 eight -!39 U+0039 nine -!3A U+003A colon -!3B U+003B semicolon -!3C U+003C less -!3D U+003D equal -!3E U+003E greater -!3F U+003F question -!40 U+0040 at -!41 U+0041 A -!42 U+0042 B -!43 U+0043 C -!44 U+0044 D -!45 U+0045 E -!46 U+0046 F -!47 U+0047 G -!48 U+0048 H -!49 U+0049 I -!4A U+004A J -!4B U+004B K -!4C U+004C L -!4D U+004D M -!4E U+004E N -!4F U+004F O -!50 U+0050 P -!51 U+0051 Q -!52 U+0052 R -!53 U+0053 S -!54 U+0054 T -!55 U+0055 U -!56 U+0056 V -!57 U+0057 W -!58 U+0058 X -!59 U+0059 Y -!5A U+005A Z -!5B U+005B bracketleft -!5C U+005C backslash -!5D U+005D bracketright -!5E U+005E asciicircum -!5F U+005F underscore -!60 U+0060 grave -!61 U+0061 a -!62 U+0062 b -!63 U+0063 c -!64 U+0064 d -!65 U+0065 e -!66 U+0066 f -!67 U+0067 g -!68 U+0068 h -!69 U+0069 i -!6A U+006A j -!6B U+006B k -!6C U+006C l -!6D U+006D m -!6E U+006E n -!6F U+006F o -!70 U+0070 p -!71 U+0071 q -!72 U+0072 r -!73 U+0073 s -!74 U+0074 t -!75 U+0075 u -!76 U+0076 v -!77 U+0077 w -!78 U+0078 x -!79 U+0079 y -!7A U+007A z -!7B U+007B braceleft -!7C U+007C bar -!7D U+007D braceright -!7E U+007E asciitilde -!7F U+007F .notdef -!80 U+0402 afii10051 -!81 U+0403 afii10052 -!82 U+201A quotesinglbase -!83 U+0453 afii10100 -!84 U+201E quotedblbase -!85 U+2026 ellipsis -!86 U+2020 dagger -!87 U+2021 daggerdbl -!88 U+20AC Euro -!89 U+2030 perthousand -!8A U+0409 afii10058 -!8B U+2039 guilsinglleft -!8C U+040A afii10059 -!8D U+040C afii10061 -!8E U+040B afii10060 -!8F U+040F afii10145 -!90 U+0452 afii10099 -!91 U+2018 quoteleft -!92 U+2019 quoteright -!93 U+201C quotedblleft -!94 U+201D quotedblright -!95 U+2022 bullet -!96 U+2013 endash -!97 U+2014 emdash -!99 U+2122 trademark -!9A U+0459 afii10106 -!9B U+203A guilsinglright -!9C U+045A afii10107 -!9D U+045C afii10109 -!9E U+045B afii10108 -!9F U+045F afii10193 -!A0 U+00A0 space -!A1 U+040E afii10062 -!A2 U+045E afii10110 -!A3 U+0408 afii10057 -!A4 U+00A4 currency -!A5 U+0490 afii10050 -!A6 U+00A6 brokenbar -!A7 U+00A7 section -!A8 U+0401 afii10023 -!A9 U+00A9 copyright -!AA U+0404 afii10053 -!AB U+00AB guillemotleft -!AC U+00AC logicalnot -!AD U+00AD hyphen -!AE U+00AE registered -!AF U+0407 afii10056 -!B0 U+00B0 degree -!B1 U+00B1 plusminus -!B2 U+0406 afii10055 -!B3 U+0456 afii10103 -!B4 U+0491 afii10098 -!B5 U+00B5 mu -!B6 U+00B6 paragraph -!B7 U+00B7 periodcentered -!B8 U+0451 afii10071 -!B9 U+2116 afii61352 -!BA U+0454 afii10101 -!BB U+00BB guillemotright -!BC U+0458 afii10105 -!BD U+0405 afii10054 -!BE U+0455 afii10102 -!BF U+0457 afii10104 -!C0 U+0410 afii10017 -!C1 U+0411 afii10018 -!C2 U+0412 afii10019 -!C3 U+0413 afii10020 -!C4 U+0414 afii10021 -!C5 U+0415 afii10022 -!C6 U+0416 afii10024 -!C7 U+0417 afii10025 -!C8 U+0418 afii10026 -!C9 U+0419 afii10027 -!CA U+041A afii10028 -!CB U+041B afii10029 -!CC U+041C afii10030 -!CD U+041D afii10031 -!CE U+041E afii10032 -!CF U+041F afii10033 -!D0 U+0420 afii10034 -!D1 U+0421 afii10035 -!D2 U+0422 afii10036 -!D3 U+0423 afii10037 -!D4 U+0424 afii10038 -!D5 U+0425 afii10039 -!D6 U+0426 afii10040 -!D7 U+0427 afii10041 -!D8 U+0428 afii10042 -!D9 U+0429 afii10043 -!DA U+042A afii10044 -!DB U+042B afii10045 -!DC U+042C afii10046 -!DD U+042D afii10047 -!DE U+042E afii10048 -!DF U+042F afii10049 -!E0 U+0430 afii10065 -!E1 U+0431 afii10066 -!E2 U+0432 afii10067 -!E3 U+0433 afii10068 -!E4 U+0434 afii10069 -!E5 U+0435 afii10070 -!E6 U+0436 afii10072 -!E7 U+0437 afii10073 -!E8 U+0438 afii10074 -!E9 U+0439 afii10075 -!EA U+043A afii10076 -!EB U+043B afii10077 -!EC U+043C afii10078 -!ED U+043D afii10079 -!EE U+043E afii10080 -!EF U+043F afii10081 -!F0 U+0440 afii10082 -!F1 U+0441 afii10083 -!F2 U+0442 afii10084 -!F3 U+0443 afii10085 -!F4 U+0444 afii10086 -!F5 U+0445 afii10087 -!F6 U+0446 afii10088 -!F7 U+0447 afii10089 -!F8 U+0448 afii10090 -!F9 U+0449 afii10091 -!FA U+044A afii10092 -!FB U+044B afii10093 -!FC U+044C afii10094 -!FD U+044D afii10095 -!FE U+044E afii10096 -!FF U+044F afii10097 diff --git a/docker/statistics/vendor/phenx/php-font-lib/maps/cp1252.map b/docker/statistics/vendor/phenx/php-font-lib/maps/cp1252.map deleted file mode 100644 index dd490e59..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/maps/cp1252.map +++ /dev/null @@ -1,251 +0,0 @@ -!00 U+0000 .notdef -!01 U+0001 .notdef -!02 U+0002 .notdef -!03 U+0003 .notdef -!04 U+0004 .notdef -!05 U+0005 .notdef -!06 U+0006 .notdef -!07 U+0007 .notdef -!08 U+0008 .notdef -!09 U+0009 .notdef -!0A U+000A .notdef -!0B U+000B .notdef -!0C U+000C .notdef -!0D U+000D .notdef -!0E U+000E .notdef -!0F U+000F .notdef -!10 U+0010 .notdef -!11 U+0011 .notdef -!12 U+0012 .notdef -!13 U+0013 .notdef -!14 U+0014 .notdef -!15 U+0015 .notdef -!16 U+0016 .notdef -!17 U+0017 .notdef -!18 U+0018 .notdef -!19 U+0019 .notdef -!1A U+001A .notdef -!1B U+001B .notdef -!1C U+001C .notdef -!1D U+001D .notdef -!1E U+001E .notdef -!1F U+001F .notdef -!20 U+0020 space -!21 U+0021 exclam -!22 U+0022 quotedbl -!23 U+0023 numbersign -!24 U+0024 dollar -!25 U+0025 percent -!26 U+0026 ampersand -!27 U+0027 quotesingle -!28 U+0028 parenleft -!29 U+0029 parenright -!2A U+002A asterisk -!2B U+002B plus -!2C U+002C comma -!2D U+002D hyphen -!2E U+002E period -!2F U+002F slash -!30 U+0030 zero -!31 U+0031 one -!32 U+0032 two -!33 U+0033 three -!34 U+0034 four -!35 U+0035 five -!36 U+0036 six -!37 U+0037 seven -!38 U+0038 eight -!39 U+0039 nine -!3A U+003A colon -!3B U+003B semicolon -!3C U+003C less -!3D U+003D equal -!3E U+003E greater -!3F U+003F question -!40 U+0040 at -!41 U+0041 A -!42 U+0042 B -!43 U+0043 C -!44 U+0044 D -!45 U+0045 E -!46 U+0046 F -!47 U+0047 G -!48 U+0048 H -!49 U+0049 I -!4A U+004A J -!4B U+004B K -!4C U+004C L -!4D U+004D M -!4E U+004E N -!4F U+004F O -!50 U+0050 P -!51 U+0051 Q -!52 U+0052 R -!53 U+0053 S -!54 U+0054 T -!55 U+0055 U -!56 U+0056 V -!57 U+0057 W -!58 U+0058 X -!59 U+0059 Y -!5A U+005A Z -!5B U+005B bracketleft -!5C U+005C backslash -!5D U+005D bracketright -!5E U+005E asciicircum -!5F U+005F underscore -!60 U+0060 grave -!61 U+0061 a -!62 U+0062 b -!63 U+0063 c -!64 U+0064 d -!65 U+0065 e -!66 U+0066 f -!67 U+0067 g -!68 U+0068 h -!69 U+0069 i -!6A U+006A j -!6B U+006B k -!6C U+006C l -!6D U+006D m -!6E U+006E n -!6F U+006F o -!70 U+0070 p -!71 U+0071 q -!72 U+0072 r -!73 U+0073 s -!74 U+0074 t -!75 U+0075 u -!76 U+0076 v -!77 U+0077 w -!78 U+0078 x -!79 U+0079 y -!7A U+007A z -!7B U+007B braceleft -!7C U+007C bar -!7D U+007D braceright -!7E U+007E asciitilde -!7F U+007F .notdef -!80 U+20AC Euro -!82 U+201A quotesinglbase -!83 U+0192 florin -!84 U+201E quotedblbase -!85 U+2026 ellipsis -!86 U+2020 dagger -!87 U+2021 daggerdbl -!88 U+02C6 circumflex -!89 U+2030 perthousand -!8A U+0160 Scaron -!8B U+2039 guilsinglleft -!8C U+0152 OE -!8E U+017D Zcaron -!91 U+2018 quoteleft -!92 U+2019 quoteright -!93 U+201C quotedblleft -!94 U+201D quotedblright -!95 U+2022 bullet -!96 U+2013 endash -!97 U+2014 emdash -!98 U+02DC tilde -!99 U+2122 trademark -!9A U+0161 scaron -!9B U+203A guilsinglright -!9C U+0153 oe -!9E U+017E zcaron -!9F U+0178 Ydieresis -!A0 U+00A0 space -!A1 U+00A1 exclamdown -!A2 U+00A2 cent -!A3 U+00A3 sterling -!A4 U+00A4 currency -!A5 U+00A5 yen -!A6 U+00A6 brokenbar -!A7 U+00A7 section -!A8 U+00A8 dieresis -!A9 U+00A9 copyright -!AA U+00AA ordfeminine -!AB U+00AB guillemotleft -!AC U+00AC logicalnot -!AD U+00AD hyphen -!AE U+00AE registered -!AF U+00AF macron -!B0 U+00B0 degree -!B1 U+00B1 plusminus -!B2 U+00B2 twosuperior -!B3 U+00B3 threesuperior -!B4 U+00B4 acute -!B5 U+00B5 mu -!B6 U+00B6 paragraph -!B7 U+00B7 periodcentered -!B8 U+00B8 cedilla -!B9 U+00B9 onesuperior -!BA U+00BA ordmasculine -!BB U+00BB guillemotright -!BC U+00BC onequarter -!BD U+00BD onehalf -!BE U+00BE threequarters -!BF U+00BF questiondown -!C0 U+00C0 Agrave -!C1 U+00C1 Aacute -!C2 U+00C2 Acircumflex -!C3 U+00C3 Atilde -!C4 U+00C4 Adieresis -!C5 U+00C5 Aring -!C6 U+00C6 AE -!C7 U+00C7 Ccedilla -!C8 U+00C8 Egrave -!C9 U+00C9 Eacute -!CA U+00CA Ecircumflex -!CB U+00CB Edieresis -!CC U+00CC Igrave -!CD U+00CD Iacute -!CE U+00CE Icircumflex -!CF U+00CF Idieresis -!D0 U+00D0 Eth -!D1 U+00D1 Ntilde -!D2 U+00D2 Ograve -!D3 U+00D3 Oacute -!D4 U+00D4 Ocircumflex -!D5 U+00D5 Otilde -!D6 U+00D6 Odieresis -!D7 U+00D7 multiply -!D8 U+00D8 Oslash -!D9 U+00D9 Ugrave -!DA U+00DA Uacute -!DB U+00DB Ucircumflex -!DC U+00DC Udieresis -!DD U+00DD Yacute -!DE U+00DE Thorn -!DF U+00DF germandbls -!E0 U+00E0 agrave -!E1 U+00E1 aacute -!E2 U+00E2 acircumflex -!E3 U+00E3 atilde -!E4 U+00E4 adieresis -!E5 U+00E5 aring -!E6 U+00E6 ae -!E7 U+00E7 ccedilla -!E8 U+00E8 egrave -!E9 U+00E9 eacute -!EA U+00EA ecircumflex -!EB U+00EB edieresis -!EC U+00EC igrave -!ED U+00ED iacute -!EE U+00EE icircumflex -!EF U+00EF idieresis -!F0 U+00F0 eth -!F1 U+00F1 ntilde -!F2 U+00F2 ograve -!F3 U+00F3 oacute -!F4 U+00F4 ocircumflex -!F5 U+00F5 otilde -!F6 U+00F6 odieresis -!F7 U+00F7 divide -!F8 U+00F8 oslash -!F9 U+00F9 ugrave -!FA U+00FA uacute -!FB U+00FB ucircumflex -!FC U+00FC udieresis -!FD U+00FD yacute -!FE U+00FE thorn -!FF U+00FF ydieresis diff --git a/docker/statistics/vendor/phenx/php-font-lib/maps/cp1253.map b/docker/statistics/vendor/phenx/php-font-lib/maps/cp1253.map deleted file mode 100644 index 4bd826fb..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/maps/cp1253.map +++ /dev/null @@ -1,239 +0,0 @@ -!00 U+0000 .notdef -!01 U+0001 .notdef -!02 U+0002 .notdef -!03 U+0003 .notdef -!04 U+0004 .notdef -!05 U+0005 .notdef -!06 U+0006 .notdef -!07 U+0007 .notdef -!08 U+0008 .notdef -!09 U+0009 .notdef -!0A U+000A .notdef -!0B U+000B .notdef -!0C U+000C .notdef -!0D U+000D .notdef -!0E U+000E .notdef -!0F U+000F .notdef -!10 U+0010 .notdef -!11 U+0011 .notdef -!12 U+0012 .notdef -!13 U+0013 .notdef -!14 U+0014 .notdef -!15 U+0015 .notdef -!16 U+0016 .notdef -!17 U+0017 .notdef -!18 U+0018 .notdef -!19 U+0019 .notdef -!1A U+001A .notdef -!1B U+001B .notdef -!1C U+001C .notdef -!1D U+001D .notdef -!1E U+001E .notdef -!1F U+001F .notdef -!20 U+0020 space -!21 U+0021 exclam -!22 U+0022 quotedbl -!23 U+0023 numbersign -!24 U+0024 dollar -!25 U+0025 percent -!26 U+0026 ampersand -!27 U+0027 quotesingle -!28 U+0028 parenleft -!29 U+0029 parenright -!2A U+002A asterisk -!2B U+002B plus -!2C U+002C comma -!2D U+002D hyphen -!2E U+002E period -!2F U+002F slash -!30 U+0030 zero -!31 U+0031 one -!32 U+0032 two -!33 U+0033 three -!34 U+0034 four -!35 U+0035 five -!36 U+0036 six -!37 U+0037 seven -!38 U+0038 eight -!39 U+0039 nine -!3A U+003A colon -!3B U+003B semicolon -!3C U+003C less -!3D U+003D equal -!3E U+003E greater -!3F U+003F question -!40 U+0040 at -!41 U+0041 A -!42 U+0042 B -!43 U+0043 C -!44 U+0044 D -!45 U+0045 E -!46 U+0046 F -!47 U+0047 G -!48 U+0048 H -!49 U+0049 I -!4A U+004A J -!4B U+004B K -!4C U+004C L -!4D U+004D M -!4E U+004E N -!4F U+004F O -!50 U+0050 P -!51 U+0051 Q -!52 U+0052 R -!53 U+0053 S -!54 U+0054 T -!55 U+0055 U -!56 U+0056 V -!57 U+0057 W -!58 U+0058 X -!59 U+0059 Y -!5A U+005A Z -!5B U+005B bracketleft -!5C U+005C backslash -!5D U+005D bracketright -!5E U+005E asciicircum -!5F U+005F underscore -!60 U+0060 grave -!61 U+0061 a -!62 U+0062 b -!63 U+0063 c -!64 U+0064 d -!65 U+0065 e -!66 U+0066 f -!67 U+0067 g -!68 U+0068 h -!69 U+0069 i -!6A U+006A j -!6B U+006B k -!6C U+006C l -!6D U+006D m -!6E U+006E n -!6F U+006F o -!70 U+0070 p -!71 U+0071 q -!72 U+0072 r -!73 U+0073 s -!74 U+0074 t -!75 U+0075 u -!76 U+0076 v -!77 U+0077 w -!78 U+0078 x -!79 U+0079 y -!7A U+007A z -!7B U+007B braceleft -!7C U+007C bar -!7D U+007D braceright -!7E U+007E asciitilde -!7F U+007F .notdef -!80 U+20AC Euro -!82 U+201A quotesinglbase -!83 U+0192 florin -!84 U+201E quotedblbase -!85 U+2026 ellipsis -!86 U+2020 dagger -!87 U+2021 daggerdbl -!89 U+2030 perthousand -!8B U+2039 guilsinglleft -!91 U+2018 quoteleft -!92 U+2019 quoteright -!93 U+201C quotedblleft -!94 U+201D quotedblright -!95 U+2022 bullet -!96 U+2013 endash -!97 U+2014 emdash -!99 U+2122 trademark -!9B U+203A guilsinglright -!A0 U+00A0 space -!A1 U+0385 dieresistonos -!A2 U+0386 Alphatonos -!A3 U+00A3 sterling -!A4 U+00A4 currency -!A5 U+00A5 yen -!A6 U+00A6 brokenbar -!A7 U+00A7 section -!A8 U+00A8 dieresis -!A9 U+00A9 copyright -!AB U+00AB guillemotleft -!AC U+00AC logicalnot -!AD U+00AD hyphen -!AE U+00AE registered -!AF U+2015 afii00208 -!B0 U+00B0 degree -!B1 U+00B1 plusminus -!B2 U+00B2 twosuperior -!B3 U+00B3 threesuperior -!B4 U+0384 tonos -!B5 U+00B5 mu -!B6 U+00B6 paragraph -!B7 U+00B7 periodcentered -!B8 U+0388 Epsilontonos -!B9 U+0389 Etatonos -!BA U+038A Iotatonos -!BB U+00BB guillemotright -!BC U+038C Omicrontonos -!BD U+00BD onehalf -!BE U+038E Upsilontonos -!BF U+038F Omegatonos -!C0 U+0390 iotadieresistonos -!C1 U+0391 Alpha -!C2 U+0392 Beta -!C3 U+0393 Gamma -!C4 U+0394 Delta -!C5 U+0395 Epsilon -!C6 U+0396 Zeta -!C7 U+0397 Eta -!C8 U+0398 Theta -!C9 U+0399 Iota -!CA U+039A Kappa -!CB U+039B Lambda -!CC U+039C Mu -!CD U+039D Nu -!CE U+039E Xi -!CF U+039F Omicron -!D0 U+03A0 Pi -!D1 U+03A1 Rho -!D3 U+03A3 Sigma -!D4 U+03A4 Tau -!D5 U+03A5 Upsilon -!D6 U+03A6 Phi -!D7 U+03A7 Chi -!D8 U+03A8 Psi -!D9 U+03A9 Omega -!DA U+03AA Iotadieresis -!DB U+03AB Upsilondieresis -!DC U+03AC alphatonos -!DD U+03AD epsilontonos -!DE U+03AE etatonos -!DF U+03AF iotatonos -!E0 U+03B0 upsilondieresistonos -!E1 U+03B1 alpha -!E2 U+03B2 beta -!E3 U+03B3 gamma -!E4 U+03B4 delta -!E5 U+03B5 epsilon -!E6 U+03B6 zeta -!E7 U+03B7 eta -!E8 U+03B8 theta -!E9 U+03B9 iota -!EA U+03BA kappa -!EB U+03BB lambda -!EC U+03BC mu -!ED U+03BD nu -!EE U+03BE xi -!EF U+03BF omicron -!F0 U+03C0 pi -!F1 U+03C1 rho -!F2 U+03C2 sigma1 -!F3 U+03C3 sigma -!F4 U+03C4 tau -!F5 U+03C5 upsilon -!F6 U+03C6 phi -!F7 U+03C7 chi -!F8 U+03C8 psi -!F9 U+03C9 omega -!FA U+03CA iotadieresis -!FB U+03CB upsilondieresis -!FC U+03CC omicrontonos -!FD U+03CD upsilontonos -!FE U+03CE omegatonos diff --git a/docker/statistics/vendor/phenx/php-font-lib/maps/cp1254.map b/docker/statistics/vendor/phenx/php-font-lib/maps/cp1254.map deleted file mode 100644 index 829473b2..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/maps/cp1254.map +++ /dev/null @@ -1,249 +0,0 @@ -!00 U+0000 .notdef -!01 U+0001 .notdef -!02 U+0002 .notdef -!03 U+0003 .notdef -!04 U+0004 .notdef -!05 U+0005 .notdef -!06 U+0006 .notdef -!07 U+0007 .notdef -!08 U+0008 .notdef -!09 U+0009 .notdef -!0A U+000A .notdef -!0B U+000B .notdef -!0C U+000C .notdef -!0D U+000D .notdef -!0E U+000E .notdef -!0F U+000F .notdef -!10 U+0010 .notdef -!11 U+0011 .notdef -!12 U+0012 .notdef -!13 U+0013 .notdef -!14 U+0014 .notdef -!15 U+0015 .notdef -!16 U+0016 .notdef -!17 U+0017 .notdef -!18 U+0018 .notdef -!19 U+0019 .notdef -!1A U+001A .notdef -!1B U+001B .notdef -!1C U+001C .notdef -!1D U+001D .notdef -!1E U+001E .notdef -!1F U+001F .notdef -!20 U+0020 space -!21 U+0021 exclam -!22 U+0022 quotedbl -!23 U+0023 numbersign -!24 U+0024 dollar -!25 U+0025 percent -!26 U+0026 ampersand -!27 U+0027 quotesingle -!28 U+0028 parenleft -!29 U+0029 parenright -!2A U+002A asterisk -!2B U+002B plus -!2C U+002C comma -!2D U+002D hyphen -!2E U+002E period -!2F U+002F slash -!30 U+0030 zero -!31 U+0031 one -!32 U+0032 two -!33 U+0033 three -!34 U+0034 four -!35 U+0035 five -!36 U+0036 six -!37 U+0037 seven -!38 U+0038 eight -!39 U+0039 nine -!3A U+003A colon -!3B U+003B semicolon -!3C U+003C less -!3D U+003D equal -!3E U+003E greater -!3F U+003F question -!40 U+0040 at -!41 U+0041 A -!42 U+0042 B -!43 U+0043 C -!44 U+0044 D -!45 U+0045 E -!46 U+0046 F -!47 U+0047 G -!48 U+0048 H -!49 U+0049 I -!4A U+004A J -!4B U+004B K -!4C U+004C L -!4D U+004D M -!4E U+004E N -!4F U+004F O -!50 U+0050 P -!51 U+0051 Q -!52 U+0052 R -!53 U+0053 S -!54 U+0054 T -!55 U+0055 U -!56 U+0056 V -!57 U+0057 W -!58 U+0058 X -!59 U+0059 Y -!5A U+005A Z -!5B U+005B bracketleft -!5C U+005C backslash -!5D U+005D bracketright -!5E U+005E asciicircum -!5F U+005F underscore -!60 U+0060 grave -!61 U+0061 a -!62 U+0062 b -!63 U+0063 c -!64 U+0064 d -!65 U+0065 e -!66 U+0066 f -!67 U+0067 g -!68 U+0068 h -!69 U+0069 i -!6A U+006A j -!6B U+006B k -!6C U+006C l -!6D U+006D m -!6E U+006E n -!6F U+006F o -!70 U+0070 p -!71 U+0071 q -!72 U+0072 r -!73 U+0073 s -!74 U+0074 t -!75 U+0075 u -!76 U+0076 v -!77 U+0077 w -!78 U+0078 x -!79 U+0079 y -!7A U+007A z -!7B U+007B braceleft -!7C U+007C bar -!7D U+007D braceright -!7E U+007E asciitilde -!7F U+007F .notdef -!80 U+20AC Euro -!82 U+201A quotesinglbase -!83 U+0192 florin -!84 U+201E quotedblbase -!85 U+2026 ellipsis -!86 U+2020 dagger -!87 U+2021 daggerdbl -!88 U+02C6 circumflex -!89 U+2030 perthousand -!8A U+0160 Scaron -!8B U+2039 guilsinglleft -!8C U+0152 OE -!91 U+2018 quoteleft -!92 U+2019 quoteright -!93 U+201C quotedblleft -!94 U+201D quotedblright -!95 U+2022 bullet -!96 U+2013 endash -!97 U+2014 emdash -!98 U+02DC tilde -!99 U+2122 trademark -!9A U+0161 scaron -!9B U+203A guilsinglright -!9C U+0153 oe -!9F U+0178 Ydieresis -!A0 U+00A0 space -!A1 U+00A1 exclamdown -!A2 U+00A2 cent -!A3 U+00A3 sterling -!A4 U+00A4 currency -!A5 U+00A5 yen -!A6 U+00A6 brokenbar -!A7 U+00A7 section -!A8 U+00A8 dieresis -!A9 U+00A9 copyright -!AA U+00AA ordfeminine -!AB U+00AB guillemotleft -!AC U+00AC logicalnot -!AD U+00AD hyphen -!AE U+00AE registered -!AF U+00AF macron -!B0 U+00B0 degree -!B1 U+00B1 plusminus -!B2 U+00B2 twosuperior -!B3 U+00B3 threesuperior -!B4 U+00B4 acute -!B5 U+00B5 mu -!B6 U+00B6 paragraph -!B7 U+00B7 periodcentered -!B8 U+00B8 cedilla -!B9 U+00B9 onesuperior -!BA U+00BA ordmasculine -!BB U+00BB guillemotright -!BC U+00BC onequarter -!BD U+00BD onehalf -!BE U+00BE threequarters -!BF U+00BF questiondown -!C0 U+00C0 Agrave -!C1 U+00C1 Aacute -!C2 U+00C2 Acircumflex -!C3 U+00C3 Atilde -!C4 U+00C4 Adieresis -!C5 U+00C5 Aring -!C6 U+00C6 AE -!C7 U+00C7 Ccedilla -!C8 U+00C8 Egrave -!C9 U+00C9 Eacute -!CA U+00CA Ecircumflex -!CB U+00CB Edieresis -!CC U+00CC Igrave -!CD U+00CD Iacute -!CE U+00CE Icircumflex -!CF U+00CF Idieresis -!D0 U+011E Gbreve -!D1 U+00D1 Ntilde -!D2 U+00D2 Ograve -!D3 U+00D3 Oacute -!D4 U+00D4 Ocircumflex -!D5 U+00D5 Otilde -!D6 U+00D6 Odieresis -!D7 U+00D7 multiply -!D8 U+00D8 Oslash -!D9 U+00D9 Ugrave -!DA U+00DA Uacute -!DB U+00DB Ucircumflex -!DC U+00DC Udieresis -!DD U+0130 Idotaccent -!DE U+015E Scedilla -!DF U+00DF germandbls -!E0 U+00E0 agrave -!E1 U+00E1 aacute -!E2 U+00E2 acircumflex -!E3 U+00E3 atilde -!E4 U+00E4 adieresis -!E5 U+00E5 aring -!E6 U+00E6 ae -!E7 U+00E7 ccedilla -!E8 U+00E8 egrave -!E9 U+00E9 eacute -!EA U+00EA ecircumflex -!EB U+00EB edieresis -!EC U+00EC igrave -!ED U+00ED iacute -!EE U+00EE icircumflex -!EF U+00EF idieresis -!F0 U+011F gbreve -!F1 U+00F1 ntilde -!F2 U+00F2 ograve -!F3 U+00F3 oacute -!F4 U+00F4 ocircumflex -!F5 U+00F5 otilde -!F6 U+00F6 odieresis -!F7 U+00F7 divide -!F8 U+00F8 oslash -!F9 U+00F9 ugrave -!FA U+00FA uacute -!FB U+00FB ucircumflex -!FC U+00FC udieresis -!FD U+0131 dotlessi -!FE U+015F scedilla -!FF U+00FF ydieresis diff --git a/docker/statistics/vendor/phenx/php-font-lib/maps/cp1255.map b/docker/statistics/vendor/phenx/php-font-lib/maps/cp1255.map deleted file mode 100644 index 079e10c6..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/maps/cp1255.map +++ /dev/null @@ -1,233 +0,0 @@ -!00 U+0000 .notdef -!01 U+0001 .notdef -!02 U+0002 .notdef -!03 U+0003 .notdef -!04 U+0004 .notdef -!05 U+0005 .notdef -!06 U+0006 .notdef -!07 U+0007 .notdef -!08 U+0008 .notdef -!09 U+0009 .notdef -!0A U+000A .notdef -!0B U+000B .notdef -!0C U+000C .notdef -!0D U+000D .notdef -!0E U+000E .notdef -!0F U+000F .notdef -!10 U+0010 .notdef -!11 U+0011 .notdef -!12 U+0012 .notdef -!13 U+0013 .notdef -!14 U+0014 .notdef -!15 U+0015 .notdef -!16 U+0016 .notdef -!17 U+0017 .notdef -!18 U+0018 .notdef -!19 U+0019 .notdef -!1A U+001A .notdef -!1B U+001B .notdef -!1C U+001C .notdef -!1D U+001D .notdef -!1E U+001E .notdef -!1F U+001F .notdef -!20 U+0020 space -!21 U+0021 exclam -!22 U+0022 quotedbl -!23 U+0023 numbersign -!24 U+0024 dollar -!25 U+0025 percent -!26 U+0026 ampersand -!27 U+0027 quotesingle -!28 U+0028 parenleft -!29 U+0029 parenright -!2A U+002A asterisk -!2B U+002B plus -!2C U+002C comma -!2D U+002D hyphen -!2E U+002E period -!2F U+002F slash -!30 U+0030 zero -!31 U+0031 one -!32 U+0032 two -!33 U+0033 three -!34 U+0034 four -!35 U+0035 five -!36 U+0036 six -!37 U+0037 seven -!38 U+0038 eight -!39 U+0039 nine -!3A U+003A colon -!3B U+003B semicolon -!3C U+003C less -!3D U+003D equal -!3E U+003E greater -!3F U+003F question -!40 U+0040 at -!41 U+0041 A -!42 U+0042 B -!43 U+0043 C -!44 U+0044 D -!45 U+0045 E -!46 U+0046 F -!47 U+0047 G -!48 U+0048 H -!49 U+0049 I -!4A U+004A J -!4B U+004B K -!4C U+004C L -!4D U+004D M -!4E U+004E N -!4F U+004F O -!50 U+0050 P -!51 U+0051 Q -!52 U+0052 R -!53 U+0053 S -!54 U+0054 T -!55 U+0055 U -!56 U+0056 V -!57 U+0057 W -!58 U+0058 X -!59 U+0059 Y -!5A U+005A Z -!5B U+005B bracketleft -!5C U+005C backslash -!5D U+005D bracketright -!5E U+005E asciicircum -!5F U+005F underscore -!60 U+0060 grave -!61 U+0061 a -!62 U+0062 b -!63 U+0063 c -!64 U+0064 d -!65 U+0065 e -!66 U+0066 f -!67 U+0067 g -!68 U+0068 h -!69 U+0069 i -!6A U+006A j -!6B U+006B k -!6C U+006C l -!6D U+006D m -!6E U+006E n -!6F U+006F o -!70 U+0070 p -!71 U+0071 q -!72 U+0072 r -!73 U+0073 s -!74 U+0074 t -!75 U+0075 u -!76 U+0076 v -!77 U+0077 w -!78 U+0078 x -!79 U+0079 y -!7A U+007A z -!7B U+007B braceleft -!7C U+007C bar -!7D U+007D braceright -!7E U+007E asciitilde -!7F U+007F .notdef -!80 U+20AC Euro -!82 U+201A quotesinglbase -!83 U+0192 florin -!84 U+201E quotedblbase -!85 U+2026 ellipsis -!86 U+2020 dagger -!87 U+2021 daggerdbl -!88 U+02C6 circumflex -!89 U+2030 perthousand -!8B U+2039 guilsinglleft -!91 U+2018 quoteleft -!92 U+2019 quoteright -!93 U+201C quotedblleft -!94 U+201D quotedblright -!95 U+2022 bullet -!96 U+2013 endash -!97 U+2014 emdash -!98 U+02DC tilde -!99 U+2122 trademark -!9B U+203A guilsinglright -!A0 U+00A0 space -!A1 U+00A1 exclamdown -!A2 U+00A2 cent -!A3 U+00A3 sterling -!A4 U+20AA afii57636 -!A5 U+00A5 yen -!A6 U+00A6 brokenbar -!A7 U+00A7 section -!A8 U+00A8 dieresis -!A9 U+00A9 copyright -!AA U+00D7 multiply -!AB U+00AB guillemotleft -!AC U+00AC logicalnot -!AD U+00AD sfthyphen -!AE U+00AE registered -!AF U+00AF macron -!B0 U+00B0 degree -!B1 U+00B1 plusminus -!B2 U+00B2 twosuperior -!B3 U+00B3 threesuperior -!B4 U+00B4 acute -!B5 U+00B5 mu -!B6 U+00B6 paragraph -!B7 U+00B7 middot -!B8 U+00B8 cedilla -!B9 U+00B9 onesuperior -!BA U+00F7 divide -!BB U+00BB guillemotright -!BC U+00BC onequarter -!BD U+00BD onehalf -!BE U+00BE threequarters -!BF U+00BF questiondown -!C0 U+05B0 afii57799 -!C1 U+05B1 afii57801 -!C2 U+05B2 afii57800 -!C3 U+05B3 afii57802 -!C4 U+05B4 afii57793 -!C5 U+05B5 afii57794 -!C6 U+05B6 afii57795 -!C7 U+05B7 afii57798 -!C8 U+05B8 afii57797 -!C9 U+05B9 afii57806 -!CB U+05BB afii57796 -!CC U+05BC afii57807 -!CD U+05BD afii57839 -!CE U+05BE afii57645 -!CF U+05BF afii57841 -!D0 U+05C0 afii57842 -!D1 U+05C1 afii57804 -!D2 U+05C2 afii57803 -!D3 U+05C3 afii57658 -!D4 U+05F0 afii57716 -!D5 U+05F1 afii57717 -!D6 U+05F2 afii57718 -!D7 U+05F3 gereshhebrew -!D8 U+05F4 gershayimhebrew -!E0 U+05D0 afii57664 -!E1 U+05D1 afii57665 -!E2 U+05D2 afii57666 -!E3 U+05D3 afii57667 -!E4 U+05D4 afii57668 -!E5 U+05D5 afii57669 -!E6 U+05D6 afii57670 -!E7 U+05D7 afii57671 -!E8 U+05D8 afii57672 -!E9 U+05D9 afii57673 -!EA U+05DA afii57674 -!EB U+05DB afii57675 -!EC U+05DC afii57676 -!ED U+05DD afii57677 -!EE U+05DE afii57678 -!EF U+05DF afii57679 -!F0 U+05E0 afii57680 -!F1 U+05E1 afii57681 -!F2 U+05E2 afii57682 -!F3 U+05E3 afii57683 -!F4 U+05E4 afii57684 -!F5 U+05E5 afii57685 -!F6 U+05E6 afii57686 -!F7 U+05E7 afii57687 -!F8 U+05E8 afii57688 -!F9 U+05E9 afii57689 -!FA U+05EA afii57690 -!FD U+200E afii299 -!FE U+200F afii300 diff --git a/docker/statistics/vendor/phenx/php-font-lib/maps/cp1257.map b/docker/statistics/vendor/phenx/php-font-lib/maps/cp1257.map deleted file mode 100644 index 2f2ecfa2..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/maps/cp1257.map +++ /dev/null @@ -1,244 +0,0 @@ -!00 U+0000 .notdef -!01 U+0001 .notdef -!02 U+0002 .notdef -!03 U+0003 .notdef -!04 U+0004 .notdef -!05 U+0005 .notdef -!06 U+0006 .notdef -!07 U+0007 .notdef -!08 U+0008 .notdef -!09 U+0009 .notdef -!0A U+000A .notdef -!0B U+000B .notdef -!0C U+000C .notdef -!0D U+000D .notdef -!0E U+000E .notdef -!0F U+000F .notdef -!10 U+0010 .notdef -!11 U+0011 .notdef -!12 U+0012 .notdef -!13 U+0013 .notdef -!14 U+0014 .notdef -!15 U+0015 .notdef -!16 U+0016 .notdef -!17 U+0017 .notdef -!18 U+0018 .notdef -!19 U+0019 .notdef -!1A U+001A .notdef -!1B U+001B .notdef -!1C U+001C .notdef -!1D U+001D .notdef -!1E U+001E .notdef -!1F U+001F .notdef -!20 U+0020 space -!21 U+0021 exclam -!22 U+0022 quotedbl -!23 U+0023 numbersign -!24 U+0024 dollar -!25 U+0025 percent -!26 U+0026 ampersand -!27 U+0027 quotesingle -!28 U+0028 parenleft -!29 U+0029 parenright -!2A U+002A asterisk -!2B U+002B plus -!2C U+002C comma -!2D U+002D hyphen -!2E U+002E period -!2F U+002F slash -!30 U+0030 zero -!31 U+0031 one -!32 U+0032 two -!33 U+0033 three -!34 U+0034 four -!35 U+0035 five -!36 U+0036 six -!37 U+0037 seven -!38 U+0038 eight -!39 U+0039 nine -!3A U+003A colon -!3B U+003B semicolon -!3C U+003C less -!3D U+003D equal -!3E U+003E greater -!3F U+003F question -!40 U+0040 at -!41 U+0041 A -!42 U+0042 B -!43 U+0043 C -!44 U+0044 D -!45 U+0045 E -!46 U+0046 F -!47 U+0047 G -!48 U+0048 H -!49 U+0049 I -!4A U+004A J -!4B U+004B K -!4C U+004C L -!4D U+004D M -!4E U+004E N -!4F U+004F O -!50 U+0050 P -!51 U+0051 Q -!52 U+0052 R -!53 U+0053 S -!54 U+0054 T -!55 U+0055 U -!56 U+0056 V -!57 U+0057 W -!58 U+0058 X -!59 U+0059 Y -!5A U+005A Z -!5B U+005B bracketleft -!5C U+005C backslash -!5D U+005D bracketright -!5E U+005E asciicircum -!5F U+005F underscore -!60 U+0060 grave -!61 U+0061 a -!62 U+0062 b -!63 U+0063 c -!64 U+0064 d -!65 U+0065 e -!66 U+0066 f -!67 U+0067 g -!68 U+0068 h -!69 U+0069 i -!6A U+006A j -!6B U+006B k -!6C U+006C l -!6D U+006D m -!6E U+006E n -!6F U+006F o -!70 U+0070 p -!71 U+0071 q -!72 U+0072 r -!73 U+0073 s -!74 U+0074 t -!75 U+0075 u -!76 U+0076 v -!77 U+0077 w -!78 U+0078 x -!79 U+0079 y -!7A U+007A z -!7B U+007B braceleft -!7C U+007C bar -!7D U+007D braceright -!7E U+007E asciitilde -!7F U+007F .notdef -!80 U+20AC Euro -!82 U+201A quotesinglbase -!84 U+201E quotedblbase -!85 U+2026 ellipsis -!86 U+2020 dagger -!87 U+2021 daggerdbl -!89 U+2030 perthousand -!8B U+2039 guilsinglleft -!8D U+00A8 dieresis -!8E U+02C7 caron -!8F U+00B8 cedilla -!91 U+2018 quoteleft -!92 U+2019 quoteright -!93 U+201C quotedblleft -!94 U+201D quotedblright -!95 U+2022 bullet -!96 U+2013 endash -!97 U+2014 emdash -!99 U+2122 trademark -!9B U+203A guilsinglright -!9D U+00AF macron -!9E U+02DB ogonek -!A0 U+00A0 space -!A2 U+00A2 cent -!A3 U+00A3 sterling -!A4 U+00A4 currency -!A6 U+00A6 brokenbar -!A7 U+00A7 section -!A8 U+00D8 Oslash -!A9 U+00A9 copyright -!AA U+0156 Rcommaaccent -!AB U+00AB guillemotleft -!AC U+00AC logicalnot -!AD U+00AD hyphen -!AE U+00AE registered -!AF U+00C6 AE -!B0 U+00B0 degree -!B1 U+00B1 plusminus -!B2 U+00B2 twosuperior -!B3 U+00B3 threesuperior -!B4 U+00B4 acute -!B5 U+00B5 mu -!B6 U+00B6 paragraph -!B7 U+00B7 periodcentered -!B8 U+00F8 oslash -!B9 U+00B9 onesuperior -!BA U+0157 rcommaaccent -!BB U+00BB guillemotright -!BC U+00BC onequarter -!BD U+00BD onehalf -!BE U+00BE threequarters -!BF U+00E6 ae -!C0 U+0104 Aogonek -!C1 U+012E Iogonek -!C2 U+0100 Amacron -!C3 U+0106 Cacute -!C4 U+00C4 Adieresis -!C5 U+00C5 Aring -!C6 U+0118 Eogonek -!C7 U+0112 Emacron -!C8 U+010C Ccaron -!C9 U+00C9 Eacute -!CA U+0179 Zacute -!CB U+0116 Edotaccent -!CC U+0122 Gcommaaccent -!CD U+0136 Kcommaaccent -!CE U+012A Imacron -!CF U+013B Lcommaaccent -!D0 U+0160 Scaron -!D1 U+0143 Nacute -!D2 U+0145 Ncommaaccent -!D3 U+00D3 Oacute -!D4 U+014C Omacron -!D5 U+00D5 Otilde -!D6 U+00D6 Odieresis -!D7 U+00D7 multiply -!D8 U+0172 Uogonek -!D9 U+0141 Lslash -!DA U+015A Sacute -!DB U+016A Umacron -!DC U+00DC Udieresis -!DD U+017B Zdotaccent -!DE U+017D Zcaron -!DF U+00DF germandbls -!E0 U+0105 aogonek -!E1 U+012F iogonek -!E2 U+0101 amacron -!E3 U+0107 cacute -!E4 U+00E4 adieresis -!E5 U+00E5 aring -!E6 U+0119 eogonek -!E7 U+0113 emacron -!E8 U+010D ccaron -!E9 U+00E9 eacute -!EA U+017A zacute -!EB U+0117 edotaccent -!EC U+0123 gcommaaccent -!ED U+0137 kcommaaccent -!EE U+012B imacron -!EF U+013C lcommaaccent -!F0 U+0161 scaron -!F1 U+0144 nacute -!F2 U+0146 ncommaaccent -!F3 U+00F3 oacute -!F4 U+014D omacron -!F5 U+00F5 otilde -!F6 U+00F6 odieresis -!F7 U+00F7 divide -!F8 U+0173 uogonek -!F9 U+0142 lslash -!FA U+015B sacute -!FB U+016B umacron -!FC U+00FC udieresis -!FD U+017C zdotaccent -!FE U+017E zcaron -!FF U+02D9 dotaccent diff --git a/docker/statistics/vendor/phenx/php-font-lib/maps/cp1258.map b/docker/statistics/vendor/phenx/php-font-lib/maps/cp1258.map deleted file mode 100644 index fed915f7..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/maps/cp1258.map +++ /dev/null @@ -1,247 +0,0 @@ -!00 U+0000 .notdef -!01 U+0001 .notdef -!02 U+0002 .notdef -!03 U+0003 .notdef -!04 U+0004 .notdef -!05 U+0005 .notdef -!06 U+0006 .notdef -!07 U+0007 .notdef -!08 U+0008 .notdef -!09 U+0009 .notdef -!0A U+000A .notdef -!0B U+000B .notdef -!0C U+000C .notdef -!0D U+000D .notdef -!0E U+000E .notdef -!0F U+000F .notdef -!10 U+0010 .notdef -!11 U+0011 .notdef -!12 U+0012 .notdef -!13 U+0013 .notdef -!14 U+0014 .notdef -!15 U+0015 .notdef -!16 U+0016 .notdef -!17 U+0017 .notdef -!18 U+0018 .notdef -!19 U+0019 .notdef -!1A U+001A .notdef -!1B U+001B .notdef -!1C U+001C .notdef -!1D U+001D .notdef -!1E U+001E .notdef -!1F U+001F .notdef -!20 U+0020 space -!21 U+0021 exclam -!22 U+0022 quotedbl -!23 U+0023 numbersign -!24 U+0024 dollar -!25 U+0025 percent -!26 U+0026 ampersand -!27 U+0027 quotesingle -!28 U+0028 parenleft -!29 U+0029 parenright -!2A U+002A asterisk -!2B U+002B plus -!2C U+002C comma -!2D U+002D hyphen -!2E U+002E period -!2F U+002F slash -!30 U+0030 zero -!31 U+0031 one -!32 U+0032 two -!33 U+0033 three -!34 U+0034 four -!35 U+0035 five -!36 U+0036 six -!37 U+0037 seven -!38 U+0038 eight -!39 U+0039 nine -!3A U+003A colon -!3B U+003B semicolon -!3C U+003C less -!3D U+003D equal -!3E U+003E greater -!3F U+003F question -!40 U+0040 at -!41 U+0041 A -!42 U+0042 B -!43 U+0043 C -!44 U+0044 D -!45 U+0045 E -!46 U+0046 F -!47 U+0047 G -!48 U+0048 H -!49 U+0049 I -!4A U+004A J -!4B U+004B K -!4C U+004C L -!4D U+004D M -!4E U+004E N -!4F U+004F O -!50 U+0050 P -!51 U+0051 Q -!52 U+0052 R -!53 U+0053 S -!54 U+0054 T -!55 U+0055 U -!56 U+0056 V -!57 U+0057 W -!58 U+0058 X -!59 U+0059 Y -!5A U+005A Z -!5B U+005B bracketleft -!5C U+005C backslash -!5D U+005D bracketright -!5E U+005E asciicircum -!5F U+005F underscore -!60 U+0060 grave -!61 U+0061 a -!62 U+0062 b -!63 U+0063 c -!64 U+0064 d -!65 U+0065 e -!66 U+0066 f -!67 U+0067 g -!68 U+0068 h -!69 U+0069 i -!6A U+006A j -!6B U+006B k -!6C U+006C l -!6D U+006D m -!6E U+006E n -!6F U+006F o -!70 U+0070 p -!71 U+0071 q -!72 U+0072 r -!73 U+0073 s -!74 U+0074 t -!75 U+0075 u -!76 U+0076 v -!77 U+0077 w -!78 U+0078 x -!79 U+0079 y -!7A U+007A z -!7B U+007B braceleft -!7C U+007C bar -!7D U+007D braceright -!7E U+007E asciitilde -!7F U+007F .notdef -!80 U+20AC Euro -!82 U+201A quotesinglbase -!83 U+0192 florin -!84 U+201E quotedblbase -!85 U+2026 ellipsis -!86 U+2020 dagger -!87 U+2021 daggerdbl -!88 U+02C6 circumflex -!89 U+2030 perthousand -!8B U+2039 guilsinglleft -!8C U+0152 OE -!91 U+2018 quoteleft -!92 U+2019 quoteright -!93 U+201C quotedblleft -!94 U+201D quotedblright -!95 U+2022 bullet -!96 U+2013 endash -!97 U+2014 emdash -!98 U+02DC tilde -!99 U+2122 trademark -!9B U+203A guilsinglright -!9C U+0153 oe -!9F U+0178 Ydieresis -!A0 U+00A0 space -!A1 U+00A1 exclamdown -!A2 U+00A2 cent -!A3 U+00A3 sterling -!A4 U+00A4 currency -!A5 U+00A5 yen -!A6 U+00A6 brokenbar -!A7 U+00A7 section -!A8 U+00A8 dieresis -!A9 U+00A9 copyright -!AA U+00AA ordfeminine -!AB U+00AB guillemotleft -!AC U+00AC logicalnot -!AD U+00AD hyphen -!AE U+00AE registered -!AF U+00AF macron -!B0 U+00B0 degree -!B1 U+00B1 plusminus -!B2 U+00B2 twosuperior -!B3 U+00B3 threesuperior -!B4 U+00B4 acute -!B5 U+00B5 mu -!B6 U+00B6 paragraph -!B7 U+00B7 periodcentered -!B8 U+00B8 cedilla -!B9 U+00B9 onesuperior -!BA U+00BA ordmasculine -!BB U+00BB guillemotright -!BC U+00BC onequarter -!BD U+00BD onehalf -!BE U+00BE threequarters -!BF U+00BF questiondown -!C0 U+00C0 Agrave -!C1 U+00C1 Aacute -!C2 U+00C2 Acircumflex -!C3 U+0102 Abreve -!C4 U+00C4 Adieresis -!C5 U+00C5 Aring -!C6 U+00C6 AE -!C7 U+00C7 Ccedilla -!C8 U+00C8 Egrave -!C9 U+00C9 Eacute -!CA U+00CA Ecircumflex -!CB U+00CB Edieresis -!CC U+0300 gravecomb -!CD U+00CD Iacute -!CE U+00CE Icircumflex -!CF U+00CF Idieresis -!D0 U+0110 Dcroat -!D1 U+00D1 Ntilde -!D2 U+0309 hookabovecomb -!D3 U+00D3 Oacute -!D4 U+00D4 Ocircumflex -!D5 U+01A0 Ohorn -!D6 U+00D6 Odieresis -!D7 U+00D7 multiply -!D8 U+00D8 Oslash -!D9 U+00D9 Ugrave -!DA U+00DA Uacute -!DB U+00DB Ucircumflex -!DC U+00DC Udieresis -!DD U+01AF Uhorn -!DE U+0303 tildecomb -!DF U+00DF germandbls -!E0 U+00E0 agrave -!E1 U+00E1 aacute -!E2 U+00E2 acircumflex -!E3 U+0103 abreve -!E4 U+00E4 adieresis -!E5 U+00E5 aring -!E6 U+00E6 ae -!E7 U+00E7 ccedilla -!E8 U+00E8 egrave -!E9 U+00E9 eacute -!EA U+00EA ecircumflex -!EB U+00EB edieresis -!EC U+0301 acutecomb -!ED U+00ED iacute -!EE U+00EE icircumflex -!EF U+00EF idieresis -!F0 U+0111 dcroat -!F1 U+00F1 ntilde -!F2 U+0323 dotbelowcomb -!F3 U+00F3 oacute -!F4 U+00F4 ocircumflex -!F5 U+01A1 ohorn -!F6 U+00F6 odieresis -!F7 U+00F7 divide -!F8 U+00F8 oslash -!F9 U+00F9 ugrave -!FA U+00FA uacute -!FB U+00FB ucircumflex -!FC U+00FC udieresis -!FD U+01B0 uhorn -!FE U+20AB dong -!FF U+00FF ydieresis diff --git a/docker/statistics/vendor/phenx/php-font-lib/maps/cp874.map b/docker/statistics/vendor/phenx/php-font-lib/maps/cp874.map deleted file mode 100644 index 1006e6b1..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/maps/cp874.map +++ /dev/null @@ -1,225 +0,0 @@ -!00 U+0000 .notdef -!01 U+0001 .notdef -!02 U+0002 .notdef -!03 U+0003 .notdef -!04 U+0004 .notdef -!05 U+0005 .notdef -!06 U+0006 .notdef -!07 U+0007 .notdef -!08 U+0008 .notdef -!09 U+0009 .notdef -!0A U+000A .notdef -!0B U+000B .notdef -!0C U+000C .notdef -!0D U+000D .notdef -!0E U+000E .notdef -!0F U+000F .notdef -!10 U+0010 .notdef -!11 U+0011 .notdef -!12 U+0012 .notdef -!13 U+0013 .notdef -!14 U+0014 .notdef -!15 U+0015 .notdef -!16 U+0016 .notdef -!17 U+0017 .notdef -!18 U+0018 .notdef -!19 U+0019 .notdef -!1A U+001A .notdef -!1B U+001B .notdef -!1C U+001C .notdef -!1D U+001D .notdef -!1E U+001E .notdef -!1F U+001F .notdef -!20 U+0020 space -!21 U+0021 exclam -!22 U+0022 quotedbl -!23 U+0023 numbersign -!24 U+0024 dollar -!25 U+0025 percent -!26 U+0026 ampersand -!27 U+0027 quotesingle -!28 U+0028 parenleft -!29 U+0029 parenright -!2A U+002A asterisk -!2B U+002B plus -!2C U+002C comma -!2D U+002D hyphen -!2E U+002E period -!2F U+002F slash -!30 U+0030 zero -!31 U+0031 one -!32 U+0032 two -!33 U+0033 three -!34 U+0034 four -!35 U+0035 five -!36 U+0036 six -!37 U+0037 seven -!38 U+0038 eight -!39 U+0039 nine -!3A U+003A colon -!3B U+003B semicolon -!3C U+003C less -!3D U+003D equal -!3E U+003E greater -!3F U+003F question -!40 U+0040 at -!41 U+0041 A -!42 U+0042 B -!43 U+0043 C -!44 U+0044 D -!45 U+0045 E -!46 U+0046 F -!47 U+0047 G -!48 U+0048 H -!49 U+0049 I -!4A U+004A J -!4B U+004B K -!4C U+004C L -!4D U+004D M -!4E U+004E N -!4F U+004F O -!50 U+0050 P -!51 U+0051 Q -!52 U+0052 R -!53 U+0053 S -!54 U+0054 T -!55 U+0055 U -!56 U+0056 V -!57 U+0057 W -!58 U+0058 X -!59 U+0059 Y -!5A U+005A Z -!5B U+005B bracketleft -!5C U+005C backslash -!5D U+005D bracketright -!5E U+005E asciicircum -!5F U+005F underscore -!60 U+0060 grave -!61 U+0061 a -!62 U+0062 b -!63 U+0063 c -!64 U+0064 d -!65 U+0065 e -!66 U+0066 f -!67 U+0067 g -!68 U+0068 h -!69 U+0069 i -!6A U+006A j -!6B U+006B k -!6C U+006C l -!6D U+006D m -!6E U+006E n -!6F U+006F o -!70 U+0070 p -!71 U+0071 q -!72 U+0072 r -!73 U+0073 s -!74 U+0074 t -!75 U+0075 u -!76 U+0076 v -!77 U+0077 w -!78 U+0078 x -!79 U+0079 y -!7A U+007A z -!7B U+007B braceleft -!7C U+007C bar -!7D U+007D braceright -!7E U+007E asciitilde -!7F U+007F .notdef -!80 U+20AC Euro -!85 U+2026 ellipsis -!91 U+2018 quoteleft -!92 U+2019 quoteright -!93 U+201C quotedblleft -!94 U+201D quotedblright -!95 U+2022 bullet -!96 U+2013 endash -!97 U+2014 emdash -!A0 U+00A0 space -!A1 U+0E01 kokaithai -!A2 U+0E02 khokhaithai -!A3 U+0E03 khokhuatthai -!A4 U+0E04 khokhwaithai -!A5 U+0E05 khokhonthai -!A6 U+0E06 khorakhangthai -!A7 U+0E07 ngonguthai -!A8 U+0E08 chochanthai -!A9 U+0E09 chochingthai -!AA U+0E0A chochangthai -!AB U+0E0B sosothai -!AC U+0E0C chochoethai -!AD U+0E0D yoyingthai -!AE U+0E0E dochadathai -!AF U+0E0F topatakthai -!B0 U+0E10 thothanthai -!B1 U+0E11 thonangmonthothai -!B2 U+0E12 thophuthaothai -!B3 U+0E13 nonenthai -!B4 U+0E14 dodekthai -!B5 U+0E15 totaothai -!B6 U+0E16 thothungthai -!B7 U+0E17 thothahanthai -!B8 U+0E18 thothongthai -!B9 U+0E19 nonuthai -!BA U+0E1A bobaimaithai -!BB U+0E1B poplathai -!BC U+0E1C phophungthai -!BD U+0E1D fofathai -!BE U+0E1E phophanthai -!BF U+0E1F fofanthai -!C0 U+0E20 phosamphaothai -!C1 U+0E21 momathai -!C2 U+0E22 yoyakthai -!C3 U+0E23 roruathai -!C4 U+0E24 ruthai -!C5 U+0E25 lolingthai -!C6 U+0E26 luthai -!C7 U+0E27 wowaenthai -!C8 U+0E28 sosalathai -!C9 U+0E29 sorusithai -!CA U+0E2A sosuathai -!CB U+0E2B hohipthai -!CC U+0E2C lochulathai -!CD U+0E2D oangthai -!CE U+0E2E honokhukthai -!CF U+0E2F paiyannoithai -!D0 U+0E30 saraathai -!D1 U+0E31 maihanakatthai -!D2 U+0E32 saraaathai -!D3 U+0E33 saraamthai -!D4 U+0E34 saraithai -!D5 U+0E35 saraiithai -!D6 U+0E36 sarauethai -!D7 U+0E37 saraueethai -!D8 U+0E38 sarauthai -!D9 U+0E39 sarauuthai -!DA U+0E3A phinthuthai -!DF U+0E3F bahtthai -!E0 U+0E40 saraethai -!E1 U+0E41 saraaethai -!E2 U+0E42 saraothai -!E3 U+0E43 saraaimaimuanthai -!E4 U+0E44 saraaimaimalaithai -!E5 U+0E45 lakkhangyaothai -!E6 U+0E46 maiyamokthai -!E7 U+0E47 maitaikhuthai -!E8 U+0E48 maiekthai -!E9 U+0E49 maithothai -!EA U+0E4A maitrithai -!EB U+0E4B maichattawathai -!EC U+0E4C thanthakhatthai -!ED U+0E4D nikhahitthai -!EE U+0E4E yamakkanthai -!EF U+0E4F fongmanthai -!F0 U+0E50 zerothai -!F1 U+0E51 onethai -!F2 U+0E52 twothai -!F3 U+0E53 threethai -!F4 U+0E54 fourthai -!F5 U+0E55 fivethai -!F6 U+0E56 sixthai -!F7 U+0E57 seventhai -!F8 U+0E58 eightthai -!F9 U+0E59 ninethai -!FA U+0E5A angkhankhuthai -!FB U+0E5B khomutthai diff --git a/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-1.map b/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-1.map deleted file mode 100644 index 61740a38..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-1.map +++ /dev/null @@ -1,256 +0,0 @@ -!00 U+0000 .notdef -!01 U+0001 .notdef -!02 U+0002 .notdef -!03 U+0003 .notdef -!04 U+0004 .notdef -!05 U+0005 .notdef -!06 U+0006 .notdef -!07 U+0007 .notdef -!08 U+0008 .notdef -!09 U+0009 .notdef -!0A U+000A .notdef -!0B U+000B .notdef -!0C U+000C .notdef -!0D U+000D .notdef -!0E U+000E .notdef -!0F U+000F .notdef -!10 U+0010 .notdef -!11 U+0011 .notdef -!12 U+0012 .notdef -!13 U+0013 .notdef -!14 U+0014 .notdef -!15 U+0015 .notdef -!16 U+0016 .notdef -!17 U+0017 .notdef -!18 U+0018 .notdef -!19 U+0019 .notdef -!1A U+001A .notdef -!1B U+001B .notdef -!1C U+001C .notdef -!1D U+001D .notdef -!1E U+001E .notdef -!1F U+001F .notdef -!20 U+0020 space -!21 U+0021 exclam -!22 U+0022 quotedbl -!23 U+0023 numbersign -!24 U+0024 dollar -!25 U+0025 percent -!26 U+0026 ampersand -!27 U+0027 quotesingle -!28 U+0028 parenleft -!29 U+0029 parenright -!2A U+002A asterisk -!2B U+002B plus -!2C U+002C comma -!2D U+002D hyphen -!2E U+002E period -!2F U+002F slash -!30 U+0030 zero -!31 U+0031 one -!32 U+0032 two -!33 U+0033 three -!34 U+0034 four -!35 U+0035 five -!36 U+0036 six -!37 U+0037 seven -!38 U+0038 eight -!39 U+0039 nine -!3A U+003A colon -!3B U+003B semicolon -!3C U+003C less -!3D U+003D equal -!3E U+003E greater -!3F U+003F question -!40 U+0040 at -!41 U+0041 A -!42 U+0042 B -!43 U+0043 C -!44 U+0044 D -!45 U+0045 E -!46 U+0046 F -!47 U+0047 G -!48 U+0048 H -!49 U+0049 I -!4A U+004A J -!4B U+004B K -!4C U+004C L -!4D U+004D M -!4E U+004E N -!4F U+004F O -!50 U+0050 P -!51 U+0051 Q -!52 U+0052 R -!53 U+0053 S -!54 U+0054 T -!55 U+0055 U -!56 U+0056 V -!57 U+0057 W -!58 U+0058 X -!59 U+0059 Y -!5A U+005A Z -!5B U+005B bracketleft -!5C U+005C backslash -!5D U+005D bracketright -!5E U+005E asciicircum -!5F U+005F underscore -!60 U+0060 grave -!61 U+0061 a -!62 U+0062 b -!63 U+0063 c -!64 U+0064 d -!65 U+0065 e -!66 U+0066 f -!67 U+0067 g -!68 U+0068 h -!69 U+0069 i -!6A U+006A j -!6B U+006B k -!6C U+006C l -!6D U+006D m -!6E U+006E n -!6F U+006F o -!70 U+0070 p -!71 U+0071 q -!72 U+0072 r -!73 U+0073 s -!74 U+0074 t -!75 U+0075 u -!76 U+0076 v -!77 U+0077 w -!78 U+0078 x -!79 U+0079 y -!7A U+007A z -!7B U+007B braceleft -!7C U+007C bar -!7D U+007D braceright -!7E U+007E asciitilde -!7F U+007F .notdef -!80 U+0080 .notdef -!81 U+0081 .notdef -!82 U+0082 .notdef -!83 U+0083 .notdef -!84 U+0084 .notdef -!85 U+0085 .notdef -!86 U+0086 .notdef -!87 U+0087 .notdef -!88 U+0088 .notdef -!89 U+0089 .notdef -!8A U+008A .notdef -!8B U+008B .notdef -!8C U+008C .notdef -!8D U+008D .notdef -!8E U+008E .notdef -!8F U+008F .notdef -!90 U+0090 .notdef -!91 U+0091 .notdef -!92 U+0092 .notdef -!93 U+0093 .notdef -!94 U+0094 .notdef -!95 U+0095 .notdef -!96 U+0096 .notdef -!97 U+0097 .notdef -!98 U+0098 .notdef -!99 U+0099 .notdef -!9A U+009A .notdef -!9B U+009B .notdef -!9C U+009C .notdef -!9D U+009D .notdef -!9E U+009E .notdef -!9F U+009F .notdef -!A0 U+00A0 space -!A1 U+00A1 exclamdown -!A2 U+00A2 cent -!A3 U+00A3 sterling -!A4 U+00A4 currency -!A5 U+00A5 yen -!A6 U+00A6 brokenbar -!A7 U+00A7 section -!A8 U+00A8 dieresis -!A9 U+00A9 copyright -!AA U+00AA ordfeminine -!AB U+00AB guillemotleft -!AC U+00AC logicalnot -!AD U+00AD hyphen -!AE U+00AE registered -!AF U+00AF macron -!B0 U+00B0 degree -!B1 U+00B1 plusminus -!B2 U+00B2 twosuperior -!B3 U+00B3 threesuperior -!B4 U+00B4 acute -!B5 U+00B5 mu -!B6 U+00B6 paragraph -!B7 U+00B7 periodcentered -!B8 U+00B8 cedilla -!B9 U+00B9 onesuperior -!BA U+00BA ordmasculine -!BB U+00BB guillemotright -!BC U+00BC onequarter -!BD U+00BD onehalf -!BE U+00BE threequarters -!BF U+00BF questiondown -!C0 U+00C0 Agrave -!C1 U+00C1 Aacute -!C2 U+00C2 Acircumflex -!C3 U+00C3 Atilde -!C4 U+00C4 Adieresis -!C5 U+00C5 Aring -!C6 U+00C6 AE -!C7 U+00C7 Ccedilla -!C8 U+00C8 Egrave -!C9 U+00C9 Eacute -!CA U+00CA Ecircumflex -!CB U+00CB Edieresis -!CC U+00CC Igrave -!CD U+00CD Iacute -!CE U+00CE Icircumflex -!CF U+00CF Idieresis -!D0 U+00D0 Eth -!D1 U+00D1 Ntilde -!D2 U+00D2 Ograve -!D3 U+00D3 Oacute -!D4 U+00D4 Ocircumflex -!D5 U+00D5 Otilde -!D6 U+00D6 Odieresis -!D7 U+00D7 multiply -!D8 U+00D8 Oslash -!D9 U+00D9 Ugrave -!DA U+00DA Uacute -!DB U+00DB Ucircumflex -!DC U+00DC Udieresis -!DD U+00DD Yacute -!DE U+00DE Thorn -!DF U+00DF germandbls -!E0 U+00E0 agrave -!E1 U+00E1 aacute -!E2 U+00E2 acircumflex -!E3 U+00E3 atilde -!E4 U+00E4 adieresis -!E5 U+00E5 aring -!E6 U+00E6 ae -!E7 U+00E7 ccedilla -!E8 U+00E8 egrave -!E9 U+00E9 eacute -!EA U+00EA ecircumflex -!EB U+00EB edieresis -!EC U+00EC igrave -!ED U+00ED iacute -!EE U+00EE icircumflex -!EF U+00EF idieresis -!F0 U+00F0 eth -!F1 U+00F1 ntilde -!F2 U+00F2 ograve -!F3 U+00F3 oacute -!F4 U+00F4 ocircumflex -!F5 U+00F5 otilde -!F6 U+00F6 odieresis -!F7 U+00F7 divide -!F8 U+00F8 oslash -!F9 U+00F9 ugrave -!FA U+00FA uacute -!FB U+00FB ucircumflex -!FC U+00FC udieresis -!FD U+00FD yacute -!FE U+00FE thorn -!FF U+00FF ydieresis diff --git a/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-11.map b/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-11.map deleted file mode 100644 index 91688120..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-11.map +++ /dev/null @@ -1,248 +0,0 @@ -!00 U+0000 .notdef -!01 U+0001 .notdef -!02 U+0002 .notdef -!03 U+0003 .notdef -!04 U+0004 .notdef -!05 U+0005 .notdef -!06 U+0006 .notdef -!07 U+0007 .notdef -!08 U+0008 .notdef -!09 U+0009 .notdef -!0A U+000A .notdef -!0B U+000B .notdef -!0C U+000C .notdef -!0D U+000D .notdef -!0E U+000E .notdef -!0F U+000F .notdef -!10 U+0010 .notdef -!11 U+0011 .notdef -!12 U+0012 .notdef -!13 U+0013 .notdef -!14 U+0014 .notdef -!15 U+0015 .notdef -!16 U+0016 .notdef -!17 U+0017 .notdef -!18 U+0018 .notdef -!19 U+0019 .notdef -!1A U+001A .notdef -!1B U+001B .notdef -!1C U+001C .notdef -!1D U+001D .notdef -!1E U+001E .notdef -!1F U+001F .notdef -!20 U+0020 space -!21 U+0021 exclam -!22 U+0022 quotedbl -!23 U+0023 numbersign -!24 U+0024 dollar -!25 U+0025 percent -!26 U+0026 ampersand -!27 U+0027 quotesingle -!28 U+0028 parenleft -!29 U+0029 parenright -!2A U+002A asterisk -!2B U+002B plus -!2C U+002C comma -!2D U+002D hyphen -!2E U+002E period -!2F U+002F slash -!30 U+0030 zero -!31 U+0031 one -!32 U+0032 two -!33 U+0033 three -!34 U+0034 four -!35 U+0035 five -!36 U+0036 six -!37 U+0037 seven -!38 U+0038 eight -!39 U+0039 nine -!3A U+003A colon -!3B U+003B semicolon -!3C U+003C less -!3D U+003D equal -!3E U+003E greater -!3F U+003F question -!40 U+0040 at -!41 U+0041 A -!42 U+0042 B -!43 U+0043 C -!44 U+0044 D -!45 U+0045 E -!46 U+0046 F -!47 U+0047 G -!48 U+0048 H -!49 U+0049 I -!4A U+004A J -!4B U+004B K -!4C U+004C L -!4D U+004D M -!4E U+004E N -!4F U+004F O -!50 U+0050 P -!51 U+0051 Q -!52 U+0052 R -!53 U+0053 S -!54 U+0054 T -!55 U+0055 U -!56 U+0056 V -!57 U+0057 W -!58 U+0058 X -!59 U+0059 Y -!5A U+005A Z -!5B U+005B bracketleft -!5C U+005C backslash -!5D U+005D bracketright -!5E U+005E asciicircum -!5F U+005F underscore -!60 U+0060 grave -!61 U+0061 a -!62 U+0062 b -!63 U+0063 c -!64 U+0064 d -!65 U+0065 e -!66 U+0066 f -!67 U+0067 g -!68 U+0068 h -!69 U+0069 i -!6A U+006A j -!6B U+006B k -!6C U+006C l -!6D U+006D m -!6E U+006E n -!6F U+006F o -!70 U+0070 p -!71 U+0071 q -!72 U+0072 r -!73 U+0073 s -!74 U+0074 t -!75 U+0075 u -!76 U+0076 v -!77 U+0077 w -!78 U+0078 x -!79 U+0079 y -!7A U+007A z -!7B U+007B braceleft -!7C U+007C bar -!7D U+007D braceright -!7E U+007E asciitilde -!7F U+007F .notdef -!80 U+0080 .notdef -!81 U+0081 .notdef -!82 U+0082 .notdef -!83 U+0083 .notdef -!84 U+0084 .notdef -!85 U+0085 .notdef -!86 U+0086 .notdef -!87 U+0087 .notdef -!88 U+0088 .notdef -!89 U+0089 .notdef -!8A U+008A .notdef -!8B U+008B .notdef -!8C U+008C .notdef -!8D U+008D .notdef -!8E U+008E .notdef -!8F U+008F .notdef -!90 U+0090 .notdef -!91 U+0091 .notdef -!92 U+0092 .notdef -!93 U+0093 .notdef -!94 U+0094 .notdef -!95 U+0095 .notdef -!96 U+0096 .notdef -!97 U+0097 .notdef -!98 U+0098 .notdef -!99 U+0099 .notdef -!9A U+009A .notdef -!9B U+009B .notdef -!9C U+009C .notdef -!9D U+009D .notdef -!9E U+009E .notdef -!9F U+009F .notdef -!A0 U+00A0 space -!A1 U+0E01 kokaithai -!A2 U+0E02 khokhaithai -!A3 U+0E03 khokhuatthai -!A4 U+0E04 khokhwaithai -!A5 U+0E05 khokhonthai -!A6 U+0E06 khorakhangthai -!A7 U+0E07 ngonguthai -!A8 U+0E08 chochanthai -!A9 U+0E09 chochingthai -!AA U+0E0A chochangthai -!AB U+0E0B sosothai -!AC U+0E0C chochoethai -!AD U+0E0D yoyingthai -!AE U+0E0E dochadathai -!AF U+0E0F topatakthai -!B0 U+0E10 thothanthai -!B1 U+0E11 thonangmonthothai -!B2 U+0E12 thophuthaothai -!B3 U+0E13 nonenthai -!B4 U+0E14 dodekthai -!B5 U+0E15 totaothai -!B6 U+0E16 thothungthai -!B7 U+0E17 thothahanthai -!B8 U+0E18 thothongthai -!B9 U+0E19 nonuthai -!BA U+0E1A bobaimaithai -!BB U+0E1B poplathai -!BC U+0E1C phophungthai -!BD U+0E1D fofathai -!BE U+0E1E phophanthai -!BF U+0E1F fofanthai -!C0 U+0E20 phosamphaothai -!C1 U+0E21 momathai -!C2 U+0E22 yoyakthai -!C3 U+0E23 roruathai -!C4 U+0E24 ruthai -!C5 U+0E25 lolingthai -!C6 U+0E26 luthai -!C7 U+0E27 wowaenthai -!C8 U+0E28 sosalathai -!C9 U+0E29 sorusithai -!CA U+0E2A sosuathai -!CB U+0E2B hohipthai -!CC U+0E2C lochulathai -!CD U+0E2D oangthai -!CE U+0E2E honokhukthai -!CF U+0E2F paiyannoithai -!D0 U+0E30 saraathai -!D1 U+0E31 maihanakatthai -!D2 U+0E32 saraaathai -!D3 U+0E33 saraamthai -!D4 U+0E34 saraithai -!D5 U+0E35 saraiithai -!D6 U+0E36 sarauethai -!D7 U+0E37 saraueethai -!D8 U+0E38 sarauthai -!D9 U+0E39 sarauuthai -!DA U+0E3A phinthuthai -!DF U+0E3F bahtthai -!E0 U+0E40 saraethai -!E1 U+0E41 saraaethai -!E2 U+0E42 saraothai -!E3 U+0E43 saraaimaimuanthai -!E4 U+0E44 saraaimaimalaithai -!E5 U+0E45 lakkhangyaothai -!E6 U+0E46 maiyamokthai -!E7 U+0E47 maitaikhuthai -!E8 U+0E48 maiekthai -!E9 U+0E49 maithothai -!EA U+0E4A maitrithai -!EB U+0E4B maichattawathai -!EC U+0E4C thanthakhatthai -!ED U+0E4D nikhahitthai -!EE U+0E4E yamakkanthai -!EF U+0E4F fongmanthai -!F0 U+0E50 zerothai -!F1 U+0E51 onethai -!F2 U+0E52 twothai -!F3 U+0E53 threethai -!F4 U+0E54 fourthai -!F5 U+0E55 fivethai -!F6 U+0E56 sixthai -!F7 U+0E57 seventhai -!F8 U+0E58 eightthai -!F9 U+0E59 ninethai -!FA U+0E5A angkhankhuthai -!FB U+0E5B khomutthai diff --git a/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-15.map b/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-15.map deleted file mode 100644 index 6c2b5712..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-15.map +++ /dev/null @@ -1,256 +0,0 @@ -!00 U+0000 .notdef -!01 U+0001 .notdef -!02 U+0002 .notdef -!03 U+0003 .notdef -!04 U+0004 .notdef -!05 U+0005 .notdef -!06 U+0006 .notdef -!07 U+0007 .notdef -!08 U+0008 .notdef -!09 U+0009 .notdef -!0A U+000A .notdef -!0B U+000B .notdef -!0C U+000C .notdef -!0D U+000D .notdef -!0E U+000E .notdef -!0F U+000F .notdef -!10 U+0010 .notdef -!11 U+0011 .notdef -!12 U+0012 .notdef -!13 U+0013 .notdef -!14 U+0014 .notdef -!15 U+0015 .notdef -!16 U+0016 .notdef -!17 U+0017 .notdef -!18 U+0018 .notdef -!19 U+0019 .notdef -!1A U+001A .notdef -!1B U+001B .notdef -!1C U+001C .notdef -!1D U+001D .notdef -!1E U+001E .notdef -!1F U+001F .notdef -!20 U+0020 space -!21 U+0021 exclam -!22 U+0022 quotedbl -!23 U+0023 numbersign -!24 U+0024 dollar -!25 U+0025 percent -!26 U+0026 ampersand -!27 U+0027 quotesingle -!28 U+0028 parenleft -!29 U+0029 parenright -!2A U+002A asterisk -!2B U+002B plus -!2C U+002C comma -!2D U+002D hyphen -!2E U+002E period -!2F U+002F slash -!30 U+0030 zero -!31 U+0031 one -!32 U+0032 two -!33 U+0033 three -!34 U+0034 four -!35 U+0035 five -!36 U+0036 six -!37 U+0037 seven -!38 U+0038 eight -!39 U+0039 nine -!3A U+003A colon -!3B U+003B semicolon -!3C U+003C less -!3D U+003D equal -!3E U+003E greater -!3F U+003F question -!40 U+0040 at -!41 U+0041 A -!42 U+0042 B -!43 U+0043 C -!44 U+0044 D -!45 U+0045 E -!46 U+0046 F -!47 U+0047 G -!48 U+0048 H -!49 U+0049 I -!4A U+004A J -!4B U+004B K -!4C U+004C L -!4D U+004D M -!4E U+004E N -!4F U+004F O -!50 U+0050 P -!51 U+0051 Q -!52 U+0052 R -!53 U+0053 S -!54 U+0054 T -!55 U+0055 U -!56 U+0056 V -!57 U+0057 W -!58 U+0058 X -!59 U+0059 Y -!5A U+005A Z -!5B U+005B bracketleft -!5C U+005C backslash -!5D U+005D bracketright -!5E U+005E asciicircum -!5F U+005F underscore -!60 U+0060 grave -!61 U+0061 a -!62 U+0062 b -!63 U+0063 c -!64 U+0064 d -!65 U+0065 e -!66 U+0066 f -!67 U+0067 g -!68 U+0068 h -!69 U+0069 i -!6A U+006A j -!6B U+006B k -!6C U+006C l -!6D U+006D m -!6E U+006E n -!6F U+006F o -!70 U+0070 p -!71 U+0071 q -!72 U+0072 r -!73 U+0073 s -!74 U+0074 t -!75 U+0075 u -!76 U+0076 v -!77 U+0077 w -!78 U+0078 x -!79 U+0079 y -!7A U+007A z -!7B U+007B braceleft -!7C U+007C bar -!7D U+007D braceright -!7E U+007E asciitilde -!7F U+007F .notdef -!80 U+0080 .notdef -!81 U+0081 .notdef -!82 U+0082 .notdef -!83 U+0083 .notdef -!84 U+0084 .notdef -!85 U+0085 .notdef -!86 U+0086 .notdef -!87 U+0087 .notdef -!88 U+0088 .notdef -!89 U+0089 .notdef -!8A U+008A .notdef -!8B U+008B .notdef -!8C U+008C .notdef -!8D U+008D .notdef -!8E U+008E .notdef -!8F U+008F .notdef -!90 U+0090 .notdef -!91 U+0091 .notdef -!92 U+0092 .notdef -!93 U+0093 .notdef -!94 U+0094 .notdef -!95 U+0095 .notdef -!96 U+0096 .notdef -!97 U+0097 .notdef -!98 U+0098 .notdef -!99 U+0099 .notdef -!9A U+009A .notdef -!9B U+009B .notdef -!9C U+009C .notdef -!9D U+009D .notdef -!9E U+009E .notdef -!9F U+009F .notdef -!A0 U+00A0 space -!A1 U+00A1 exclamdown -!A2 U+00A2 cent -!A3 U+00A3 sterling -!A4 U+20AC Euro -!A5 U+00A5 yen -!A6 U+0160 Scaron -!A7 U+00A7 section -!A8 U+0161 scaron -!A9 U+00A9 copyright -!AA U+00AA ordfeminine -!AB U+00AB guillemotleft -!AC U+00AC logicalnot -!AD U+00AD hyphen -!AE U+00AE registered -!AF U+00AF macron -!B0 U+00B0 degree -!B1 U+00B1 plusminus -!B2 U+00B2 twosuperior -!B3 U+00B3 threesuperior -!B4 U+017D Zcaron -!B5 U+00B5 mu -!B6 U+00B6 paragraph -!B7 U+00B7 periodcentered -!B8 U+017E zcaron -!B9 U+00B9 onesuperior -!BA U+00BA ordmasculine -!BB U+00BB guillemotright -!BC U+0152 OE -!BD U+0153 oe -!BE U+0178 Ydieresis -!BF U+00BF questiondown -!C0 U+00C0 Agrave -!C1 U+00C1 Aacute -!C2 U+00C2 Acircumflex -!C3 U+00C3 Atilde -!C4 U+00C4 Adieresis -!C5 U+00C5 Aring -!C6 U+00C6 AE -!C7 U+00C7 Ccedilla -!C8 U+00C8 Egrave -!C9 U+00C9 Eacute -!CA U+00CA Ecircumflex -!CB U+00CB Edieresis -!CC U+00CC Igrave -!CD U+00CD Iacute -!CE U+00CE Icircumflex -!CF U+00CF Idieresis -!D0 U+00D0 Eth -!D1 U+00D1 Ntilde -!D2 U+00D2 Ograve -!D3 U+00D3 Oacute -!D4 U+00D4 Ocircumflex -!D5 U+00D5 Otilde -!D6 U+00D6 Odieresis -!D7 U+00D7 multiply -!D8 U+00D8 Oslash -!D9 U+00D9 Ugrave -!DA U+00DA Uacute -!DB U+00DB Ucircumflex -!DC U+00DC Udieresis -!DD U+00DD Yacute -!DE U+00DE Thorn -!DF U+00DF germandbls -!E0 U+00E0 agrave -!E1 U+00E1 aacute -!E2 U+00E2 acircumflex -!E3 U+00E3 atilde -!E4 U+00E4 adieresis -!E5 U+00E5 aring -!E6 U+00E6 ae -!E7 U+00E7 ccedilla -!E8 U+00E8 egrave -!E9 U+00E9 eacute -!EA U+00EA ecircumflex -!EB U+00EB edieresis -!EC U+00EC igrave -!ED U+00ED iacute -!EE U+00EE icircumflex -!EF U+00EF idieresis -!F0 U+00F0 eth -!F1 U+00F1 ntilde -!F2 U+00F2 ograve -!F3 U+00F3 oacute -!F4 U+00F4 ocircumflex -!F5 U+00F5 otilde -!F6 U+00F6 odieresis -!F7 U+00F7 divide -!F8 U+00F8 oslash -!F9 U+00F9 ugrave -!FA U+00FA uacute -!FB U+00FB ucircumflex -!FC U+00FC udieresis -!FD U+00FD yacute -!FE U+00FE thorn -!FF U+00FF ydieresis diff --git a/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-16.map b/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-16.map deleted file mode 100644 index 202c8fe5..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-16.map +++ /dev/null @@ -1,256 +0,0 @@ -!00 U+0000 .notdef -!01 U+0001 .notdef -!02 U+0002 .notdef -!03 U+0003 .notdef -!04 U+0004 .notdef -!05 U+0005 .notdef -!06 U+0006 .notdef -!07 U+0007 .notdef -!08 U+0008 .notdef -!09 U+0009 .notdef -!0A U+000A .notdef -!0B U+000B .notdef -!0C U+000C .notdef -!0D U+000D .notdef -!0E U+000E .notdef -!0F U+000F .notdef -!10 U+0010 .notdef -!11 U+0011 .notdef -!12 U+0012 .notdef -!13 U+0013 .notdef -!14 U+0014 .notdef -!15 U+0015 .notdef -!16 U+0016 .notdef -!17 U+0017 .notdef -!18 U+0018 .notdef -!19 U+0019 .notdef -!1A U+001A .notdef -!1B U+001B .notdef -!1C U+001C .notdef -!1D U+001D .notdef -!1E U+001E .notdef -!1F U+001F .notdef -!20 U+0020 space -!21 U+0021 exclam -!22 U+0022 quotedbl -!23 U+0023 numbersign -!24 U+0024 dollar -!25 U+0025 percent -!26 U+0026 ampersand -!27 U+0027 quotesingle -!28 U+0028 parenleft -!29 U+0029 parenright -!2A U+002A asterisk -!2B U+002B plus -!2C U+002C comma -!2D U+002D hyphen -!2E U+002E period -!2F U+002F slash -!30 U+0030 zero -!31 U+0031 one -!32 U+0032 two -!33 U+0033 three -!34 U+0034 four -!35 U+0035 five -!36 U+0036 six -!37 U+0037 seven -!38 U+0038 eight -!39 U+0039 nine -!3A U+003A colon -!3B U+003B semicolon -!3C U+003C less -!3D U+003D equal -!3E U+003E greater -!3F U+003F question -!40 U+0040 at -!41 U+0041 A -!42 U+0042 B -!43 U+0043 C -!44 U+0044 D -!45 U+0045 E -!46 U+0046 F -!47 U+0047 G -!48 U+0048 H -!49 U+0049 I -!4A U+004A J -!4B U+004B K -!4C U+004C L -!4D U+004D M -!4E U+004E N -!4F U+004F O -!50 U+0050 P -!51 U+0051 Q -!52 U+0052 R -!53 U+0053 S -!54 U+0054 T -!55 U+0055 U -!56 U+0056 V -!57 U+0057 W -!58 U+0058 X -!59 U+0059 Y -!5A U+005A Z -!5B U+005B bracketleft -!5C U+005C backslash -!5D U+005D bracketright -!5E U+005E asciicircum -!5F U+005F underscore -!60 U+0060 grave -!61 U+0061 a -!62 U+0062 b -!63 U+0063 c -!64 U+0064 d -!65 U+0065 e -!66 U+0066 f -!67 U+0067 g -!68 U+0068 h -!69 U+0069 i -!6A U+006A j -!6B U+006B k -!6C U+006C l -!6D U+006D m -!6E U+006E n -!6F U+006F o -!70 U+0070 p -!71 U+0071 q -!72 U+0072 r -!73 U+0073 s -!74 U+0074 t -!75 U+0075 u -!76 U+0076 v -!77 U+0077 w -!78 U+0078 x -!79 U+0079 y -!7A U+007A z -!7B U+007B braceleft -!7C U+007C bar -!7D U+007D braceright -!7E U+007E asciitilde -!7F U+007F .notdef -!80 U+0080 .notdef -!81 U+0081 .notdef -!82 U+0082 .notdef -!83 U+0083 .notdef -!84 U+0084 .notdef -!85 U+0085 .notdef -!86 U+0086 .notdef -!87 U+0087 .notdef -!88 U+0088 .notdef -!89 U+0089 .notdef -!8A U+008A .notdef -!8B U+008B .notdef -!8C U+008C .notdef -!8D U+008D .notdef -!8E U+008E .notdef -!8F U+008F .notdef -!90 U+0090 .notdef -!91 U+0091 .notdef -!92 U+0092 .notdef -!93 U+0093 .notdef -!94 U+0094 .notdef -!95 U+0095 .notdef -!96 U+0096 .notdef -!97 U+0097 .notdef -!98 U+0098 .notdef -!99 U+0099 .notdef -!9A U+009A .notdef -!9B U+009B .notdef -!9C U+009C .notdef -!9D U+009D .notdef -!9E U+009E .notdef -!9F U+009F .notdef -!A0 U+00A0 space -!A1 U+0104 Aogonek -!A2 U+0105 aogonek -!A3 U+0141 Lslash -!A4 U+20AC Euro -!A5 U+201E quotedblbase -!A6 U+0160 Scaron -!A7 U+00A7 section -!A8 U+0161 scaron -!A9 U+00A9 copyright -!AA U+0218 Scommaaccent -!AB U+00AB guillemotleft -!AC U+0179 Zacute -!AD U+00AD hyphen -!AE U+017A zacute -!AF U+017B Zdotaccent -!B0 U+00B0 degree -!B1 U+00B1 plusminus -!B2 U+010C Ccaron -!B3 U+0142 lslash -!B4 U+017D Zcaron -!B5 U+201D quotedblright -!B6 U+00B6 paragraph -!B7 U+00B7 periodcentered -!B8 U+017E zcaron -!B9 U+010D ccaron -!BA U+0219 scommaaccent -!BB U+00BB guillemotright -!BC U+0152 OE -!BD U+0153 oe -!BE U+0178 Ydieresis -!BF U+017C zdotaccent -!C0 U+00C0 Agrave -!C1 U+00C1 Aacute -!C2 U+00C2 Acircumflex -!C3 U+0102 Abreve -!C4 U+00C4 Adieresis -!C5 U+0106 Cacute -!C6 U+00C6 AE -!C7 U+00C7 Ccedilla -!C8 U+00C8 Egrave -!C9 U+00C9 Eacute -!CA U+00CA Ecircumflex -!CB U+00CB Edieresis -!CC U+00CC Igrave -!CD U+00CD Iacute -!CE U+00CE Icircumflex -!CF U+00CF Idieresis -!D0 U+0110 Dcroat -!D1 U+0143 Nacute -!D2 U+00D2 Ograve -!D3 U+00D3 Oacute -!D4 U+00D4 Ocircumflex -!D5 U+0150 Ohungarumlaut -!D6 U+00D6 Odieresis -!D7 U+015A Sacute -!D8 U+0170 Uhungarumlaut -!D9 U+00D9 Ugrave -!DA U+00DA Uacute -!DB U+00DB Ucircumflex -!DC U+00DC Udieresis -!DD U+0118 Eogonek -!DE U+021A Tcommaaccent -!DF U+00DF germandbls -!E0 U+00E0 agrave -!E1 U+00E1 aacute -!E2 U+00E2 acircumflex -!E3 U+0103 abreve -!E4 U+00E4 adieresis -!E5 U+0107 cacute -!E6 U+00E6 ae -!E7 U+00E7 ccedilla -!E8 U+00E8 egrave -!E9 U+00E9 eacute -!EA U+00EA ecircumflex -!EB U+00EB edieresis -!EC U+00EC igrave -!ED U+00ED iacute -!EE U+00EE icircumflex -!EF U+00EF idieresis -!F0 U+0111 dcroat -!F1 U+0144 nacute -!F2 U+00F2 ograve -!F3 U+00F3 oacute -!F4 U+00F4 ocircumflex -!F5 U+0151 ohungarumlaut -!F6 U+00F6 odieresis -!F7 U+015B sacute -!F8 U+0171 uhungarumlaut -!F9 U+00F9 ugrave -!FA U+00FA uacute -!FB U+00FB ucircumflex -!FC U+00FC udieresis -!FD U+0119 eogonek -!FE U+021B tcommaaccent -!FF U+00FF ydieresis diff --git a/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-2.map b/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-2.map deleted file mode 100644 index 65ae09f9..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-2.map +++ /dev/null @@ -1,256 +0,0 @@ -!00 U+0000 .notdef -!01 U+0001 .notdef -!02 U+0002 .notdef -!03 U+0003 .notdef -!04 U+0004 .notdef -!05 U+0005 .notdef -!06 U+0006 .notdef -!07 U+0007 .notdef -!08 U+0008 .notdef -!09 U+0009 .notdef -!0A U+000A .notdef -!0B U+000B .notdef -!0C U+000C .notdef -!0D U+000D .notdef -!0E U+000E .notdef -!0F U+000F .notdef -!10 U+0010 .notdef -!11 U+0011 .notdef -!12 U+0012 .notdef -!13 U+0013 .notdef -!14 U+0014 .notdef -!15 U+0015 .notdef -!16 U+0016 .notdef -!17 U+0017 .notdef -!18 U+0018 .notdef -!19 U+0019 .notdef -!1A U+001A .notdef -!1B U+001B .notdef -!1C U+001C .notdef -!1D U+001D .notdef -!1E U+001E .notdef -!1F U+001F .notdef -!20 U+0020 space -!21 U+0021 exclam -!22 U+0022 quotedbl -!23 U+0023 numbersign -!24 U+0024 dollar -!25 U+0025 percent -!26 U+0026 ampersand -!27 U+0027 quotesingle -!28 U+0028 parenleft -!29 U+0029 parenright -!2A U+002A asterisk -!2B U+002B plus -!2C U+002C comma -!2D U+002D hyphen -!2E U+002E period -!2F U+002F slash -!30 U+0030 zero -!31 U+0031 one -!32 U+0032 two -!33 U+0033 three -!34 U+0034 four -!35 U+0035 five -!36 U+0036 six -!37 U+0037 seven -!38 U+0038 eight -!39 U+0039 nine -!3A U+003A colon -!3B U+003B semicolon -!3C U+003C less -!3D U+003D equal -!3E U+003E greater -!3F U+003F question -!40 U+0040 at -!41 U+0041 A -!42 U+0042 B -!43 U+0043 C -!44 U+0044 D -!45 U+0045 E -!46 U+0046 F -!47 U+0047 G -!48 U+0048 H -!49 U+0049 I -!4A U+004A J -!4B U+004B K -!4C U+004C L -!4D U+004D M -!4E U+004E N -!4F U+004F O -!50 U+0050 P -!51 U+0051 Q -!52 U+0052 R -!53 U+0053 S -!54 U+0054 T -!55 U+0055 U -!56 U+0056 V -!57 U+0057 W -!58 U+0058 X -!59 U+0059 Y -!5A U+005A Z -!5B U+005B bracketleft -!5C U+005C backslash -!5D U+005D bracketright -!5E U+005E asciicircum -!5F U+005F underscore -!60 U+0060 grave -!61 U+0061 a -!62 U+0062 b -!63 U+0063 c -!64 U+0064 d -!65 U+0065 e -!66 U+0066 f -!67 U+0067 g -!68 U+0068 h -!69 U+0069 i -!6A U+006A j -!6B U+006B k -!6C U+006C l -!6D U+006D m -!6E U+006E n -!6F U+006F o -!70 U+0070 p -!71 U+0071 q -!72 U+0072 r -!73 U+0073 s -!74 U+0074 t -!75 U+0075 u -!76 U+0076 v -!77 U+0077 w -!78 U+0078 x -!79 U+0079 y -!7A U+007A z -!7B U+007B braceleft -!7C U+007C bar -!7D U+007D braceright -!7E U+007E asciitilde -!7F U+007F .notdef -!80 U+0080 .notdef -!81 U+0081 .notdef -!82 U+0082 .notdef -!83 U+0083 .notdef -!84 U+0084 .notdef -!85 U+0085 .notdef -!86 U+0086 .notdef -!87 U+0087 .notdef -!88 U+0088 .notdef -!89 U+0089 .notdef -!8A U+008A .notdef -!8B U+008B .notdef -!8C U+008C .notdef -!8D U+008D .notdef -!8E U+008E .notdef -!8F U+008F .notdef -!90 U+0090 .notdef -!91 U+0091 .notdef -!92 U+0092 .notdef -!93 U+0093 .notdef -!94 U+0094 .notdef -!95 U+0095 .notdef -!96 U+0096 .notdef -!97 U+0097 .notdef -!98 U+0098 .notdef -!99 U+0099 .notdef -!9A U+009A .notdef -!9B U+009B .notdef -!9C U+009C .notdef -!9D U+009D .notdef -!9E U+009E .notdef -!9F U+009F .notdef -!A0 U+00A0 space -!A1 U+0104 Aogonek -!A2 U+02D8 breve -!A3 U+0141 Lslash -!A4 U+00A4 currency -!A5 U+013D Lcaron -!A6 U+015A Sacute -!A7 U+00A7 section -!A8 U+00A8 dieresis -!A9 U+0160 Scaron -!AA U+015E Scedilla -!AB U+0164 Tcaron -!AC U+0179 Zacute -!AD U+00AD hyphen -!AE U+017D Zcaron -!AF U+017B Zdotaccent -!B0 U+00B0 degree -!B1 U+0105 aogonek -!B2 U+02DB ogonek -!B3 U+0142 lslash -!B4 U+00B4 acute -!B5 U+013E lcaron -!B6 U+015B sacute -!B7 U+02C7 caron -!B8 U+00B8 cedilla -!B9 U+0161 scaron -!BA U+015F scedilla -!BB U+0165 tcaron -!BC U+017A zacute -!BD U+02DD hungarumlaut -!BE U+017E zcaron -!BF U+017C zdotaccent -!C0 U+0154 Racute -!C1 U+00C1 Aacute -!C2 U+00C2 Acircumflex -!C3 U+0102 Abreve -!C4 U+00C4 Adieresis -!C5 U+0139 Lacute -!C6 U+0106 Cacute -!C7 U+00C7 Ccedilla -!C8 U+010C Ccaron -!C9 U+00C9 Eacute -!CA U+0118 Eogonek -!CB U+00CB Edieresis -!CC U+011A Ecaron -!CD U+00CD Iacute -!CE U+00CE Icircumflex -!CF U+010E Dcaron -!D0 U+0110 Dcroat -!D1 U+0143 Nacute -!D2 U+0147 Ncaron -!D3 U+00D3 Oacute -!D4 U+00D4 Ocircumflex -!D5 U+0150 Ohungarumlaut -!D6 U+00D6 Odieresis -!D7 U+00D7 multiply -!D8 U+0158 Rcaron -!D9 U+016E Uring -!DA U+00DA Uacute -!DB U+0170 Uhungarumlaut -!DC U+00DC Udieresis -!DD U+00DD Yacute -!DE U+0162 Tcommaaccent -!DF U+00DF germandbls -!E0 U+0155 racute -!E1 U+00E1 aacute -!E2 U+00E2 acircumflex -!E3 U+0103 abreve -!E4 U+00E4 adieresis -!E5 U+013A lacute -!E6 U+0107 cacute -!E7 U+00E7 ccedilla -!E8 U+010D ccaron -!E9 U+00E9 eacute -!EA U+0119 eogonek -!EB U+00EB edieresis -!EC U+011B ecaron -!ED U+00ED iacute -!EE U+00EE icircumflex -!EF U+010F dcaron -!F0 U+0111 dcroat -!F1 U+0144 nacute -!F2 U+0148 ncaron -!F3 U+00F3 oacute -!F4 U+00F4 ocircumflex -!F5 U+0151 ohungarumlaut -!F6 U+00F6 odieresis -!F7 U+00F7 divide -!F8 U+0159 rcaron -!F9 U+016F uring -!FA U+00FA uacute -!FB U+0171 uhungarumlaut -!FC U+00FC udieresis -!FD U+00FD yacute -!FE U+0163 tcommaaccent -!FF U+02D9 dotaccent diff --git a/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-4.map b/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-4.map deleted file mode 100644 index a7d87bf3..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-4.map +++ /dev/null @@ -1,256 +0,0 @@ -!00 U+0000 .notdef -!01 U+0001 .notdef -!02 U+0002 .notdef -!03 U+0003 .notdef -!04 U+0004 .notdef -!05 U+0005 .notdef -!06 U+0006 .notdef -!07 U+0007 .notdef -!08 U+0008 .notdef -!09 U+0009 .notdef -!0A U+000A .notdef -!0B U+000B .notdef -!0C U+000C .notdef -!0D U+000D .notdef -!0E U+000E .notdef -!0F U+000F .notdef -!10 U+0010 .notdef -!11 U+0011 .notdef -!12 U+0012 .notdef -!13 U+0013 .notdef -!14 U+0014 .notdef -!15 U+0015 .notdef -!16 U+0016 .notdef -!17 U+0017 .notdef -!18 U+0018 .notdef -!19 U+0019 .notdef -!1A U+001A .notdef -!1B U+001B .notdef -!1C U+001C .notdef -!1D U+001D .notdef -!1E U+001E .notdef -!1F U+001F .notdef -!20 U+0020 space -!21 U+0021 exclam -!22 U+0022 quotedbl -!23 U+0023 numbersign -!24 U+0024 dollar -!25 U+0025 percent -!26 U+0026 ampersand -!27 U+0027 quotesingle -!28 U+0028 parenleft -!29 U+0029 parenright -!2A U+002A asterisk -!2B U+002B plus -!2C U+002C comma -!2D U+002D hyphen -!2E U+002E period -!2F U+002F slash -!30 U+0030 zero -!31 U+0031 one -!32 U+0032 two -!33 U+0033 three -!34 U+0034 four -!35 U+0035 five -!36 U+0036 six -!37 U+0037 seven -!38 U+0038 eight -!39 U+0039 nine -!3A U+003A colon -!3B U+003B semicolon -!3C U+003C less -!3D U+003D equal -!3E U+003E greater -!3F U+003F question -!40 U+0040 at -!41 U+0041 A -!42 U+0042 B -!43 U+0043 C -!44 U+0044 D -!45 U+0045 E -!46 U+0046 F -!47 U+0047 G -!48 U+0048 H -!49 U+0049 I -!4A U+004A J -!4B U+004B K -!4C U+004C L -!4D U+004D M -!4E U+004E N -!4F U+004F O -!50 U+0050 P -!51 U+0051 Q -!52 U+0052 R -!53 U+0053 S -!54 U+0054 T -!55 U+0055 U -!56 U+0056 V -!57 U+0057 W -!58 U+0058 X -!59 U+0059 Y -!5A U+005A Z -!5B U+005B bracketleft -!5C U+005C backslash -!5D U+005D bracketright -!5E U+005E asciicircum -!5F U+005F underscore -!60 U+0060 grave -!61 U+0061 a -!62 U+0062 b -!63 U+0063 c -!64 U+0064 d -!65 U+0065 e -!66 U+0066 f -!67 U+0067 g -!68 U+0068 h -!69 U+0069 i -!6A U+006A j -!6B U+006B k -!6C U+006C l -!6D U+006D m -!6E U+006E n -!6F U+006F o -!70 U+0070 p -!71 U+0071 q -!72 U+0072 r -!73 U+0073 s -!74 U+0074 t -!75 U+0075 u -!76 U+0076 v -!77 U+0077 w -!78 U+0078 x -!79 U+0079 y -!7A U+007A z -!7B U+007B braceleft -!7C U+007C bar -!7D U+007D braceright -!7E U+007E asciitilde -!7F U+007F .notdef -!80 U+0080 .notdef -!81 U+0081 .notdef -!82 U+0082 .notdef -!83 U+0083 .notdef -!84 U+0084 .notdef -!85 U+0085 .notdef -!86 U+0086 .notdef -!87 U+0087 .notdef -!88 U+0088 .notdef -!89 U+0089 .notdef -!8A U+008A .notdef -!8B U+008B .notdef -!8C U+008C .notdef -!8D U+008D .notdef -!8E U+008E .notdef -!8F U+008F .notdef -!90 U+0090 .notdef -!91 U+0091 .notdef -!92 U+0092 .notdef -!93 U+0093 .notdef -!94 U+0094 .notdef -!95 U+0095 .notdef -!96 U+0096 .notdef -!97 U+0097 .notdef -!98 U+0098 .notdef -!99 U+0099 .notdef -!9A U+009A .notdef -!9B U+009B .notdef -!9C U+009C .notdef -!9D U+009D .notdef -!9E U+009E .notdef -!9F U+009F .notdef -!A0 U+00A0 space -!A1 U+0104 Aogonek -!A2 U+0138 kgreenlandic -!A3 U+0156 Rcommaaccent -!A4 U+00A4 currency -!A5 U+0128 Itilde -!A6 U+013B Lcommaaccent -!A7 U+00A7 section -!A8 U+00A8 dieresis -!A9 U+0160 Scaron -!AA U+0112 Emacron -!AB U+0122 Gcommaaccent -!AC U+0166 Tbar -!AD U+00AD hyphen -!AE U+017D Zcaron -!AF U+00AF macron -!B0 U+00B0 degree -!B1 U+0105 aogonek -!B2 U+02DB ogonek -!B3 U+0157 rcommaaccent -!B4 U+00B4 acute -!B5 U+0129 itilde -!B6 U+013C lcommaaccent -!B7 U+02C7 caron -!B8 U+00B8 cedilla -!B9 U+0161 scaron -!BA U+0113 emacron -!BB U+0123 gcommaaccent -!BC U+0167 tbar -!BD U+014A Eng -!BE U+017E zcaron -!BF U+014B eng -!C0 U+0100 Amacron -!C1 U+00C1 Aacute -!C2 U+00C2 Acircumflex -!C3 U+00C3 Atilde -!C4 U+00C4 Adieresis -!C5 U+00C5 Aring -!C6 U+00C6 AE -!C7 U+012E Iogonek -!C8 U+010C Ccaron -!C9 U+00C9 Eacute -!CA U+0118 Eogonek -!CB U+00CB Edieresis -!CC U+0116 Edotaccent -!CD U+00CD Iacute -!CE U+00CE Icircumflex -!CF U+012A Imacron -!D0 U+0110 Dcroat -!D1 U+0145 Ncommaaccent -!D2 U+014C Omacron -!D3 U+0136 Kcommaaccent -!D4 U+00D4 Ocircumflex -!D5 U+00D5 Otilde -!D6 U+00D6 Odieresis -!D7 U+00D7 multiply -!D8 U+00D8 Oslash -!D9 U+0172 Uogonek -!DA U+00DA Uacute -!DB U+00DB Ucircumflex -!DC U+00DC Udieresis -!DD U+0168 Utilde -!DE U+016A Umacron -!DF U+00DF germandbls -!E0 U+0101 amacron -!E1 U+00E1 aacute -!E2 U+00E2 acircumflex -!E3 U+00E3 atilde -!E4 U+00E4 adieresis -!E5 U+00E5 aring -!E6 U+00E6 ae -!E7 U+012F iogonek -!E8 U+010D ccaron -!E9 U+00E9 eacute -!EA U+0119 eogonek -!EB U+00EB edieresis -!EC U+0117 edotaccent -!ED U+00ED iacute -!EE U+00EE icircumflex -!EF U+012B imacron -!F0 U+0111 dcroat -!F1 U+0146 ncommaaccent -!F2 U+014D omacron -!F3 U+0137 kcommaaccent -!F4 U+00F4 ocircumflex -!F5 U+00F5 otilde -!F6 U+00F6 odieresis -!F7 U+00F7 divide -!F8 U+00F8 oslash -!F9 U+0173 uogonek -!FA U+00FA uacute -!FB U+00FB ucircumflex -!FC U+00FC udieresis -!FD U+0169 utilde -!FE U+016B umacron -!FF U+02D9 dotaccent diff --git a/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-5.map b/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-5.map deleted file mode 100644 index f9cd4edc..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-5.map +++ /dev/null @@ -1,256 +0,0 @@ -!00 U+0000 .notdef -!01 U+0001 .notdef -!02 U+0002 .notdef -!03 U+0003 .notdef -!04 U+0004 .notdef -!05 U+0005 .notdef -!06 U+0006 .notdef -!07 U+0007 .notdef -!08 U+0008 .notdef -!09 U+0009 .notdef -!0A U+000A .notdef -!0B U+000B .notdef -!0C U+000C .notdef -!0D U+000D .notdef -!0E U+000E .notdef -!0F U+000F .notdef -!10 U+0010 .notdef -!11 U+0011 .notdef -!12 U+0012 .notdef -!13 U+0013 .notdef -!14 U+0014 .notdef -!15 U+0015 .notdef -!16 U+0016 .notdef -!17 U+0017 .notdef -!18 U+0018 .notdef -!19 U+0019 .notdef -!1A U+001A .notdef -!1B U+001B .notdef -!1C U+001C .notdef -!1D U+001D .notdef -!1E U+001E .notdef -!1F U+001F .notdef -!20 U+0020 space -!21 U+0021 exclam -!22 U+0022 quotedbl -!23 U+0023 numbersign -!24 U+0024 dollar -!25 U+0025 percent -!26 U+0026 ampersand -!27 U+0027 quotesingle -!28 U+0028 parenleft -!29 U+0029 parenright -!2A U+002A asterisk -!2B U+002B plus -!2C U+002C comma -!2D U+002D hyphen -!2E U+002E period -!2F U+002F slash -!30 U+0030 zero -!31 U+0031 one -!32 U+0032 two -!33 U+0033 three -!34 U+0034 four -!35 U+0035 five -!36 U+0036 six -!37 U+0037 seven -!38 U+0038 eight -!39 U+0039 nine -!3A U+003A colon -!3B U+003B semicolon -!3C U+003C less -!3D U+003D equal -!3E U+003E greater -!3F U+003F question -!40 U+0040 at -!41 U+0041 A -!42 U+0042 B -!43 U+0043 C -!44 U+0044 D -!45 U+0045 E -!46 U+0046 F -!47 U+0047 G -!48 U+0048 H -!49 U+0049 I -!4A U+004A J -!4B U+004B K -!4C U+004C L -!4D U+004D M -!4E U+004E N -!4F U+004F O -!50 U+0050 P -!51 U+0051 Q -!52 U+0052 R -!53 U+0053 S -!54 U+0054 T -!55 U+0055 U -!56 U+0056 V -!57 U+0057 W -!58 U+0058 X -!59 U+0059 Y -!5A U+005A Z -!5B U+005B bracketleft -!5C U+005C backslash -!5D U+005D bracketright -!5E U+005E asciicircum -!5F U+005F underscore -!60 U+0060 grave -!61 U+0061 a -!62 U+0062 b -!63 U+0063 c -!64 U+0064 d -!65 U+0065 e -!66 U+0066 f -!67 U+0067 g -!68 U+0068 h -!69 U+0069 i -!6A U+006A j -!6B U+006B k -!6C U+006C l -!6D U+006D m -!6E U+006E n -!6F U+006F o -!70 U+0070 p -!71 U+0071 q -!72 U+0072 r -!73 U+0073 s -!74 U+0074 t -!75 U+0075 u -!76 U+0076 v -!77 U+0077 w -!78 U+0078 x -!79 U+0079 y -!7A U+007A z -!7B U+007B braceleft -!7C U+007C bar -!7D U+007D braceright -!7E U+007E asciitilde -!7F U+007F .notdef -!80 U+0080 .notdef -!81 U+0081 .notdef -!82 U+0082 .notdef -!83 U+0083 .notdef -!84 U+0084 .notdef -!85 U+0085 .notdef -!86 U+0086 .notdef -!87 U+0087 .notdef -!88 U+0088 .notdef -!89 U+0089 .notdef -!8A U+008A .notdef -!8B U+008B .notdef -!8C U+008C .notdef -!8D U+008D .notdef -!8E U+008E .notdef -!8F U+008F .notdef -!90 U+0090 .notdef -!91 U+0091 .notdef -!92 U+0092 .notdef -!93 U+0093 .notdef -!94 U+0094 .notdef -!95 U+0095 .notdef -!96 U+0096 .notdef -!97 U+0097 .notdef -!98 U+0098 .notdef -!99 U+0099 .notdef -!9A U+009A .notdef -!9B U+009B .notdef -!9C U+009C .notdef -!9D U+009D .notdef -!9E U+009E .notdef -!9F U+009F .notdef -!A0 U+00A0 space -!A1 U+0401 afii10023 -!A2 U+0402 afii10051 -!A3 U+0403 afii10052 -!A4 U+0404 afii10053 -!A5 U+0405 afii10054 -!A6 U+0406 afii10055 -!A7 U+0407 afii10056 -!A8 U+0408 afii10057 -!A9 U+0409 afii10058 -!AA U+040A afii10059 -!AB U+040B afii10060 -!AC U+040C afii10061 -!AD U+00AD hyphen -!AE U+040E afii10062 -!AF U+040F afii10145 -!B0 U+0410 afii10017 -!B1 U+0411 afii10018 -!B2 U+0412 afii10019 -!B3 U+0413 afii10020 -!B4 U+0414 afii10021 -!B5 U+0415 afii10022 -!B6 U+0416 afii10024 -!B7 U+0417 afii10025 -!B8 U+0418 afii10026 -!B9 U+0419 afii10027 -!BA U+041A afii10028 -!BB U+041B afii10029 -!BC U+041C afii10030 -!BD U+041D afii10031 -!BE U+041E afii10032 -!BF U+041F afii10033 -!C0 U+0420 afii10034 -!C1 U+0421 afii10035 -!C2 U+0422 afii10036 -!C3 U+0423 afii10037 -!C4 U+0424 afii10038 -!C5 U+0425 afii10039 -!C6 U+0426 afii10040 -!C7 U+0427 afii10041 -!C8 U+0428 afii10042 -!C9 U+0429 afii10043 -!CA U+042A afii10044 -!CB U+042B afii10045 -!CC U+042C afii10046 -!CD U+042D afii10047 -!CE U+042E afii10048 -!CF U+042F afii10049 -!D0 U+0430 afii10065 -!D1 U+0431 afii10066 -!D2 U+0432 afii10067 -!D3 U+0433 afii10068 -!D4 U+0434 afii10069 -!D5 U+0435 afii10070 -!D6 U+0436 afii10072 -!D7 U+0437 afii10073 -!D8 U+0438 afii10074 -!D9 U+0439 afii10075 -!DA U+043A afii10076 -!DB U+043B afii10077 -!DC U+043C afii10078 -!DD U+043D afii10079 -!DE U+043E afii10080 -!DF U+043F afii10081 -!E0 U+0440 afii10082 -!E1 U+0441 afii10083 -!E2 U+0442 afii10084 -!E3 U+0443 afii10085 -!E4 U+0444 afii10086 -!E5 U+0445 afii10087 -!E6 U+0446 afii10088 -!E7 U+0447 afii10089 -!E8 U+0448 afii10090 -!E9 U+0449 afii10091 -!EA U+044A afii10092 -!EB U+044B afii10093 -!EC U+044C afii10094 -!ED U+044D afii10095 -!EE U+044E afii10096 -!EF U+044F afii10097 -!F0 U+2116 afii61352 -!F1 U+0451 afii10071 -!F2 U+0452 afii10099 -!F3 U+0453 afii10100 -!F4 U+0454 afii10101 -!F5 U+0455 afii10102 -!F6 U+0456 afii10103 -!F7 U+0457 afii10104 -!F8 U+0458 afii10105 -!F9 U+0459 afii10106 -!FA U+045A afii10107 -!FB U+045B afii10108 -!FC U+045C afii10109 -!FD U+00A7 section -!FE U+045E afii10110 -!FF U+045F afii10193 diff --git a/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-7.map b/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-7.map deleted file mode 100644 index e163796b..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-7.map +++ /dev/null @@ -1,250 +0,0 @@ -!00 U+0000 .notdef -!01 U+0001 .notdef -!02 U+0002 .notdef -!03 U+0003 .notdef -!04 U+0004 .notdef -!05 U+0005 .notdef -!06 U+0006 .notdef -!07 U+0007 .notdef -!08 U+0008 .notdef -!09 U+0009 .notdef -!0A U+000A .notdef -!0B U+000B .notdef -!0C U+000C .notdef -!0D U+000D .notdef -!0E U+000E .notdef -!0F U+000F .notdef -!10 U+0010 .notdef -!11 U+0011 .notdef -!12 U+0012 .notdef -!13 U+0013 .notdef -!14 U+0014 .notdef -!15 U+0015 .notdef -!16 U+0016 .notdef -!17 U+0017 .notdef -!18 U+0018 .notdef -!19 U+0019 .notdef -!1A U+001A .notdef -!1B U+001B .notdef -!1C U+001C .notdef -!1D U+001D .notdef -!1E U+001E .notdef -!1F U+001F .notdef -!20 U+0020 space -!21 U+0021 exclam -!22 U+0022 quotedbl -!23 U+0023 numbersign -!24 U+0024 dollar -!25 U+0025 percent -!26 U+0026 ampersand -!27 U+0027 quotesingle -!28 U+0028 parenleft -!29 U+0029 parenright -!2A U+002A asterisk -!2B U+002B plus -!2C U+002C comma -!2D U+002D hyphen -!2E U+002E period -!2F U+002F slash -!30 U+0030 zero -!31 U+0031 one -!32 U+0032 two -!33 U+0033 three -!34 U+0034 four -!35 U+0035 five -!36 U+0036 six -!37 U+0037 seven -!38 U+0038 eight -!39 U+0039 nine -!3A U+003A colon -!3B U+003B semicolon -!3C U+003C less -!3D U+003D equal -!3E U+003E greater -!3F U+003F question -!40 U+0040 at -!41 U+0041 A -!42 U+0042 B -!43 U+0043 C -!44 U+0044 D -!45 U+0045 E -!46 U+0046 F -!47 U+0047 G -!48 U+0048 H -!49 U+0049 I -!4A U+004A J -!4B U+004B K -!4C U+004C L -!4D U+004D M -!4E U+004E N -!4F U+004F O -!50 U+0050 P -!51 U+0051 Q -!52 U+0052 R -!53 U+0053 S -!54 U+0054 T -!55 U+0055 U -!56 U+0056 V -!57 U+0057 W -!58 U+0058 X -!59 U+0059 Y -!5A U+005A Z -!5B U+005B bracketleft -!5C U+005C backslash -!5D U+005D bracketright -!5E U+005E asciicircum -!5F U+005F underscore -!60 U+0060 grave -!61 U+0061 a -!62 U+0062 b -!63 U+0063 c -!64 U+0064 d -!65 U+0065 e -!66 U+0066 f -!67 U+0067 g -!68 U+0068 h -!69 U+0069 i -!6A U+006A j -!6B U+006B k -!6C U+006C l -!6D U+006D m -!6E U+006E n -!6F U+006F o -!70 U+0070 p -!71 U+0071 q -!72 U+0072 r -!73 U+0073 s -!74 U+0074 t -!75 U+0075 u -!76 U+0076 v -!77 U+0077 w -!78 U+0078 x -!79 U+0079 y -!7A U+007A z -!7B U+007B braceleft -!7C U+007C bar -!7D U+007D braceright -!7E U+007E asciitilde -!7F U+007F .notdef -!80 U+0080 .notdef -!81 U+0081 .notdef -!82 U+0082 .notdef -!83 U+0083 .notdef -!84 U+0084 .notdef -!85 U+0085 .notdef -!86 U+0086 .notdef -!87 U+0087 .notdef -!88 U+0088 .notdef -!89 U+0089 .notdef -!8A U+008A .notdef -!8B U+008B .notdef -!8C U+008C .notdef -!8D U+008D .notdef -!8E U+008E .notdef -!8F U+008F .notdef -!90 U+0090 .notdef -!91 U+0091 .notdef -!92 U+0092 .notdef -!93 U+0093 .notdef -!94 U+0094 .notdef -!95 U+0095 .notdef -!96 U+0096 .notdef -!97 U+0097 .notdef -!98 U+0098 .notdef -!99 U+0099 .notdef -!9A U+009A .notdef -!9B U+009B .notdef -!9C U+009C .notdef -!9D U+009D .notdef -!9E U+009E .notdef -!9F U+009F .notdef -!A0 U+00A0 space -!A1 U+2018 quoteleft -!A2 U+2019 quoteright -!A3 U+00A3 sterling -!A6 U+00A6 brokenbar -!A7 U+00A7 section -!A8 U+00A8 dieresis -!A9 U+00A9 copyright -!AB U+00AB guillemotleft -!AC U+00AC logicalnot -!AD U+00AD hyphen -!AF U+2015 afii00208 -!B0 U+00B0 degree -!B1 U+00B1 plusminus -!B2 U+00B2 twosuperior -!B3 U+00B3 threesuperior -!B4 U+0384 tonos -!B5 U+0385 dieresistonos -!B6 U+0386 Alphatonos -!B7 U+00B7 periodcentered -!B8 U+0388 Epsilontonos -!B9 U+0389 Etatonos -!BA U+038A Iotatonos -!BB U+00BB guillemotright -!BC U+038C Omicrontonos -!BD U+00BD onehalf -!BE U+038E Upsilontonos -!BF U+038F Omegatonos -!C0 U+0390 iotadieresistonos -!C1 U+0391 Alpha -!C2 U+0392 Beta -!C3 U+0393 Gamma -!C4 U+0394 Delta -!C5 U+0395 Epsilon -!C6 U+0396 Zeta -!C7 U+0397 Eta -!C8 U+0398 Theta -!C9 U+0399 Iota -!CA U+039A Kappa -!CB U+039B Lambda -!CC U+039C Mu -!CD U+039D Nu -!CE U+039E Xi -!CF U+039F Omicron -!D0 U+03A0 Pi -!D1 U+03A1 Rho -!D3 U+03A3 Sigma -!D4 U+03A4 Tau -!D5 U+03A5 Upsilon -!D6 U+03A6 Phi -!D7 U+03A7 Chi -!D8 U+03A8 Psi -!D9 U+03A9 Omega -!DA U+03AA Iotadieresis -!DB U+03AB Upsilondieresis -!DC U+03AC alphatonos -!DD U+03AD epsilontonos -!DE U+03AE etatonos -!DF U+03AF iotatonos -!E0 U+03B0 upsilondieresistonos -!E1 U+03B1 alpha -!E2 U+03B2 beta -!E3 U+03B3 gamma -!E4 U+03B4 delta -!E5 U+03B5 epsilon -!E6 U+03B6 zeta -!E7 U+03B7 eta -!E8 U+03B8 theta -!E9 U+03B9 iota -!EA U+03BA kappa -!EB U+03BB lambda -!EC U+03BC mu -!ED U+03BD nu -!EE U+03BE xi -!EF U+03BF omicron -!F0 U+03C0 pi -!F1 U+03C1 rho -!F2 U+03C2 sigma1 -!F3 U+03C3 sigma -!F4 U+03C4 tau -!F5 U+03C5 upsilon -!F6 U+03C6 phi -!F7 U+03C7 chi -!F8 U+03C8 psi -!F9 U+03C9 omega -!FA U+03CA iotadieresis -!FB U+03CB upsilondieresis -!FC U+03CC omicrontonos -!FD U+03CD upsilontonos -!FE U+03CE omegatonos diff --git a/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-9.map b/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-9.map deleted file mode 100644 index 48c123ae..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/maps/iso-8859-9.map +++ /dev/null @@ -1,256 +0,0 @@ -!00 U+0000 .notdef -!01 U+0001 .notdef -!02 U+0002 .notdef -!03 U+0003 .notdef -!04 U+0004 .notdef -!05 U+0005 .notdef -!06 U+0006 .notdef -!07 U+0007 .notdef -!08 U+0008 .notdef -!09 U+0009 .notdef -!0A U+000A .notdef -!0B U+000B .notdef -!0C U+000C .notdef -!0D U+000D .notdef -!0E U+000E .notdef -!0F U+000F .notdef -!10 U+0010 .notdef -!11 U+0011 .notdef -!12 U+0012 .notdef -!13 U+0013 .notdef -!14 U+0014 .notdef -!15 U+0015 .notdef -!16 U+0016 .notdef -!17 U+0017 .notdef -!18 U+0018 .notdef -!19 U+0019 .notdef -!1A U+001A .notdef -!1B U+001B .notdef -!1C U+001C .notdef -!1D U+001D .notdef -!1E U+001E .notdef -!1F U+001F .notdef -!20 U+0020 space -!21 U+0021 exclam -!22 U+0022 quotedbl -!23 U+0023 numbersign -!24 U+0024 dollar -!25 U+0025 percent -!26 U+0026 ampersand -!27 U+0027 quotesingle -!28 U+0028 parenleft -!29 U+0029 parenright -!2A U+002A asterisk -!2B U+002B plus -!2C U+002C comma -!2D U+002D hyphen -!2E U+002E period -!2F U+002F slash -!30 U+0030 zero -!31 U+0031 one -!32 U+0032 two -!33 U+0033 three -!34 U+0034 four -!35 U+0035 five -!36 U+0036 six -!37 U+0037 seven -!38 U+0038 eight -!39 U+0039 nine -!3A U+003A colon -!3B U+003B semicolon -!3C U+003C less -!3D U+003D equal -!3E U+003E greater -!3F U+003F question -!40 U+0040 at -!41 U+0041 A -!42 U+0042 B -!43 U+0043 C -!44 U+0044 D -!45 U+0045 E -!46 U+0046 F -!47 U+0047 G -!48 U+0048 H -!49 U+0049 I -!4A U+004A J -!4B U+004B K -!4C U+004C L -!4D U+004D M -!4E U+004E N -!4F U+004F O -!50 U+0050 P -!51 U+0051 Q -!52 U+0052 R -!53 U+0053 S -!54 U+0054 T -!55 U+0055 U -!56 U+0056 V -!57 U+0057 W -!58 U+0058 X -!59 U+0059 Y -!5A U+005A Z -!5B U+005B bracketleft -!5C U+005C backslash -!5D U+005D bracketright -!5E U+005E asciicircum -!5F U+005F underscore -!60 U+0060 grave -!61 U+0061 a -!62 U+0062 b -!63 U+0063 c -!64 U+0064 d -!65 U+0065 e -!66 U+0066 f -!67 U+0067 g -!68 U+0068 h -!69 U+0069 i -!6A U+006A j -!6B U+006B k -!6C U+006C l -!6D U+006D m -!6E U+006E n -!6F U+006F o -!70 U+0070 p -!71 U+0071 q -!72 U+0072 r -!73 U+0073 s -!74 U+0074 t -!75 U+0075 u -!76 U+0076 v -!77 U+0077 w -!78 U+0078 x -!79 U+0079 y -!7A U+007A z -!7B U+007B braceleft -!7C U+007C bar -!7D U+007D braceright -!7E U+007E asciitilde -!7F U+007F .notdef -!80 U+0080 .notdef -!81 U+0081 .notdef -!82 U+0082 .notdef -!83 U+0083 .notdef -!84 U+0084 .notdef -!85 U+0085 .notdef -!86 U+0086 .notdef -!87 U+0087 .notdef -!88 U+0088 .notdef -!89 U+0089 .notdef -!8A U+008A .notdef -!8B U+008B .notdef -!8C U+008C .notdef -!8D U+008D .notdef -!8E U+008E .notdef -!8F U+008F .notdef -!90 U+0090 .notdef -!91 U+0091 .notdef -!92 U+0092 .notdef -!93 U+0093 .notdef -!94 U+0094 .notdef -!95 U+0095 .notdef -!96 U+0096 .notdef -!97 U+0097 .notdef -!98 U+0098 .notdef -!99 U+0099 .notdef -!9A U+009A .notdef -!9B U+009B .notdef -!9C U+009C .notdef -!9D U+009D .notdef -!9E U+009E .notdef -!9F U+009F .notdef -!A0 U+00A0 space -!A1 U+00A1 exclamdown -!A2 U+00A2 cent -!A3 U+00A3 sterling -!A4 U+00A4 currency -!A5 U+00A5 yen -!A6 U+00A6 brokenbar -!A7 U+00A7 section -!A8 U+00A8 dieresis -!A9 U+00A9 copyright -!AA U+00AA ordfeminine -!AB U+00AB guillemotleft -!AC U+00AC logicalnot -!AD U+00AD hyphen -!AE U+00AE registered -!AF U+00AF macron -!B0 U+00B0 degree -!B1 U+00B1 plusminus -!B2 U+00B2 twosuperior -!B3 U+00B3 threesuperior -!B4 U+00B4 acute -!B5 U+00B5 mu -!B6 U+00B6 paragraph -!B7 U+00B7 periodcentered -!B8 U+00B8 cedilla -!B9 U+00B9 onesuperior -!BA U+00BA ordmasculine -!BB U+00BB guillemotright -!BC U+00BC onequarter -!BD U+00BD onehalf -!BE U+00BE threequarters -!BF U+00BF questiondown -!C0 U+00C0 Agrave -!C1 U+00C1 Aacute -!C2 U+00C2 Acircumflex -!C3 U+00C3 Atilde -!C4 U+00C4 Adieresis -!C5 U+00C5 Aring -!C6 U+00C6 AE -!C7 U+00C7 Ccedilla -!C8 U+00C8 Egrave -!C9 U+00C9 Eacute -!CA U+00CA Ecircumflex -!CB U+00CB Edieresis -!CC U+00CC Igrave -!CD U+00CD Iacute -!CE U+00CE Icircumflex -!CF U+00CF Idieresis -!D0 U+011E Gbreve -!D1 U+00D1 Ntilde -!D2 U+00D2 Ograve -!D3 U+00D3 Oacute -!D4 U+00D4 Ocircumflex -!D5 U+00D5 Otilde -!D6 U+00D6 Odieresis -!D7 U+00D7 multiply -!D8 U+00D8 Oslash -!D9 U+00D9 Ugrave -!DA U+00DA Uacute -!DB U+00DB Ucircumflex -!DC U+00DC Udieresis -!DD U+0130 Idotaccent -!DE U+015E Scedilla -!DF U+00DF germandbls -!E0 U+00E0 agrave -!E1 U+00E1 aacute -!E2 U+00E2 acircumflex -!E3 U+00E3 atilde -!E4 U+00E4 adieresis -!E5 U+00E5 aring -!E6 U+00E6 ae -!E7 U+00E7 ccedilla -!E8 U+00E8 egrave -!E9 U+00E9 eacute -!EA U+00EA ecircumflex -!EB U+00EB edieresis -!EC U+00EC igrave -!ED U+00ED iacute -!EE U+00EE icircumflex -!EF U+00EF idieresis -!F0 U+011F gbreve -!F1 U+00F1 ntilde -!F2 U+00F2 ograve -!F3 U+00F3 oacute -!F4 U+00F4 ocircumflex -!F5 U+00F5 otilde -!F6 U+00F6 odieresis -!F7 U+00F7 divide -!F8 U+00F8 oslash -!F9 U+00F9 ugrave -!FA U+00FA uacute -!FB U+00FB ucircumflex -!FC U+00FC udieresis -!FD U+0131 dotlessi -!FE U+015F scedilla -!FF U+00FF ydieresis diff --git a/docker/statistics/vendor/phenx/php-font-lib/maps/koi8-r.map b/docker/statistics/vendor/phenx/php-font-lib/maps/koi8-r.map deleted file mode 100644 index 6ad5d05d..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/maps/koi8-r.map +++ /dev/null @@ -1,256 +0,0 @@ -!00 U+0000 .notdef -!01 U+0001 .notdef -!02 U+0002 .notdef -!03 U+0003 .notdef -!04 U+0004 .notdef -!05 U+0005 .notdef -!06 U+0006 .notdef -!07 U+0007 .notdef -!08 U+0008 .notdef -!09 U+0009 .notdef -!0A U+000A .notdef -!0B U+000B .notdef -!0C U+000C .notdef -!0D U+000D .notdef -!0E U+000E .notdef -!0F U+000F .notdef -!10 U+0010 .notdef -!11 U+0011 .notdef -!12 U+0012 .notdef -!13 U+0013 .notdef -!14 U+0014 .notdef -!15 U+0015 .notdef -!16 U+0016 .notdef -!17 U+0017 .notdef -!18 U+0018 .notdef -!19 U+0019 .notdef -!1A U+001A .notdef -!1B U+001B .notdef -!1C U+001C .notdef -!1D U+001D .notdef -!1E U+001E .notdef -!1F U+001F .notdef -!20 U+0020 space -!21 U+0021 exclam -!22 U+0022 quotedbl -!23 U+0023 numbersign -!24 U+0024 dollar -!25 U+0025 percent -!26 U+0026 ampersand -!27 U+0027 quotesingle -!28 U+0028 parenleft -!29 U+0029 parenright -!2A U+002A asterisk -!2B U+002B plus -!2C U+002C comma -!2D U+002D hyphen -!2E U+002E period -!2F U+002F slash -!30 U+0030 zero -!31 U+0031 one -!32 U+0032 two -!33 U+0033 three -!34 U+0034 four -!35 U+0035 five -!36 U+0036 six -!37 U+0037 seven -!38 U+0038 eight -!39 U+0039 nine -!3A U+003A colon -!3B U+003B semicolon -!3C U+003C less -!3D U+003D equal -!3E U+003E greater -!3F U+003F question -!40 U+0040 at -!41 U+0041 A -!42 U+0042 B -!43 U+0043 C -!44 U+0044 D -!45 U+0045 E -!46 U+0046 F -!47 U+0047 G -!48 U+0048 H -!49 U+0049 I -!4A U+004A J -!4B U+004B K -!4C U+004C L -!4D U+004D M -!4E U+004E N -!4F U+004F O -!50 U+0050 P -!51 U+0051 Q -!52 U+0052 R -!53 U+0053 S -!54 U+0054 T -!55 U+0055 U -!56 U+0056 V -!57 U+0057 W -!58 U+0058 X -!59 U+0059 Y -!5A U+005A Z -!5B U+005B bracketleft -!5C U+005C backslash -!5D U+005D bracketright -!5E U+005E asciicircum -!5F U+005F underscore -!60 U+0060 grave -!61 U+0061 a -!62 U+0062 b -!63 U+0063 c -!64 U+0064 d -!65 U+0065 e -!66 U+0066 f -!67 U+0067 g -!68 U+0068 h -!69 U+0069 i -!6A U+006A j -!6B U+006B k -!6C U+006C l -!6D U+006D m -!6E U+006E n -!6F U+006F o -!70 U+0070 p -!71 U+0071 q -!72 U+0072 r -!73 U+0073 s -!74 U+0074 t -!75 U+0075 u -!76 U+0076 v -!77 U+0077 w -!78 U+0078 x -!79 U+0079 y -!7A U+007A z -!7B U+007B braceleft -!7C U+007C bar -!7D U+007D braceright -!7E U+007E asciitilde -!7F U+007F .notdef -!80 U+2500 SF100000 -!81 U+2502 SF110000 -!82 U+250C SF010000 -!83 U+2510 SF030000 -!84 U+2514 SF020000 -!85 U+2518 SF040000 -!86 U+251C SF080000 -!87 U+2524 SF090000 -!88 U+252C SF060000 -!89 U+2534 SF070000 -!8A U+253C SF050000 -!8B U+2580 upblock -!8C U+2584 dnblock -!8D U+2588 block -!8E U+258C lfblock -!8F U+2590 rtblock -!90 U+2591 ltshade -!91 U+2592 shade -!92 U+2593 dkshade -!93 U+2320 integraltp -!94 U+25A0 filledbox -!95 U+2219 periodcentered -!96 U+221A radical -!97 U+2248 approxequal -!98 U+2264 lessequal -!99 U+2265 greaterequal -!9A U+00A0 space -!9B U+2321 integralbt -!9C U+00B0 degree -!9D U+00B2 twosuperior -!9E U+00B7 periodcentered -!9F U+00F7 divide -!A0 U+2550 SF430000 -!A1 U+2551 SF240000 -!A2 U+2552 SF510000 -!A3 U+0451 afii10071 -!A4 U+2553 SF520000 -!A5 U+2554 SF390000 -!A6 U+2555 SF220000 -!A7 U+2556 SF210000 -!A8 U+2557 SF250000 -!A9 U+2558 SF500000 -!AA U+2559 SF490000 -!AB U+255A SF380000 -!AC U+255B SF280000 -!AD U+255C SF270000 -!AE U+255D SF260000 -!AF U+255E SF360000 -!B0 U+255F SF370000 -!B1 U+2560 SF420000 -!B2 U+2561 SF190000 -!B3 U+0401 afii10023 -!B4 U+2562 SF200000 -!B5 U+2563 SF230000 -!B6 U+2564 SF470000 -!B7 U+2565 SF480000 -!B8 U+2566 SF410000 -!B9 U+2567 SF450000 -!BA U+2568 SF460000 -!BB U+2569 SF400000 -!BC U+256A SF540000 -!BD U+256B SF530000 -!BE U+256C SF440000 -!BF U+00A9 copyright -!C0 U+044E afii10096 -!C1 U+0430 afii10065 -!C2 U+0431 afii10066 -!C3 U+0446 afii10088 -!C4 U+0434 afii10069 -!C5 U+0435 afii10070 -!C6 U+0444 afii10086 -!C7 U+0433 afii10068 -!C8 U+0445 afii10087 -!C9 U+0438 afii10074 -!CA U+0439 afii10075 -!CB U+043A afii10076 -!CC U+043B afii10077 -!CD U+043C afii10078 -!CE U+043D afii10079 -!CF U+043E afii10080 -!D0 U+043F afii10081 -!D1 U+044F afii10097 -!D2 U+0440 afii10082 -!D3 U+0441 afii10083 -!D4 U+0442 afii10084 -!D5 U+0443 afii10085 -!D6 U+0436 afii10072 -!D7 U+0432 afii10067 -!D8 U+044C afii10094 -!D9 U+044B afii10093 -!DA U+0437 afii10073 -!DB U+0448 afii10090 -!DC U+044D afii10095 -!DD U+0449 afii10091 -!DE U+0447 afii10089 -!DF U+044A afii10092 -!E0 U+042E afii10048 -!E1 U+0410 afii10017 -!E2 U+0411 afii10018 -!E3 U+0426 afii10040 -!E4 U+0414 afii10021 -!E5 U+0415 afii10022 -!E6 U+0424 afii10038 -!E7 U+0413 afii10020 -!E8 U+0425 afii10039 -!E9 U+0418 afii10026 -!EA U+0419 afii10027 -!EB U+041A afii10028 -!EC U+041B afii10029 -!ED U+041C afii10030 -!EE U+041D afii10031 -!EF U+041E afii10032 -!F0 U+041F afii10033 -!F1 U+042F afii10049 -!F2 U+0420 afii10034 -!F3 U+0421 afii10035 -!F4 U+0422 afii10036 -!F5 U+0423 afii10037 -!F6 U+0416 afii10024 -!F7 U+0412 afii10019 -!F8 U+042C afii10046 -!F9 U+042B afii10045 -!FA U+0417 afii10025 -!FB U+0428 afii10042 -!FC U+042D afii10047 -!FD U+0429 afii10043 -!FE U+0427 afii10041 -!FF U+042A afii10044 diff --git a/docker/statistics/vendor/phenx/php-font-lib/maps/koi8-u.map b/docker/statistics/vendor/phenx/php-font-lib/maps/koi8-u.map deleted file mode 100644 index 40a7e4fd..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/maps/koi8-u.map +++ /dev/null @@ -1,256 +0,0 @@ -!00 U+0000 .notdef -!01 U+0001 .notdef -!02 U+0002 .notdef -!03 U+0003 .notdef -!04 U+0004 .notdef -!05 U+0005 .notdef -!06 U+0006 .notdef -!07 U+0007 .notdef -!08 U+0008 .notdef -!09 U+0009 .notdef -!0A U+000A .notdef -!0B U+000B .notdef -!0C U+000C .notdef -!0D U+000D .notdef -!0E U+000E .notdef -!0F U+000F .notdef -!10 U+0010 .notdef -!11 U+0011 .notdef -!12 U+0012 .notdef -!13 U+0013 .notdef -!14 U+0014 .notdef -!15 U+0015 .notdef -!16 U+0016 .notdef -!17 U+0017 .notdef -!18 U+0018 .notdef -!19 U+0019 .notdef -!1A U+001A .notdef -!1B U+001B .notdef -!1C U+001C .notdef -!1D U+001D .notdef -!1E U+001E .notdef -!1F U+001F .notdef -!20 U+0020 space -!21 U+0021 exclam -!22 U+0022 quotedbl -!23 U+0023 numbersign -!24 U+0024 dollar -!25 U+0025 percent -!26 U+0026 ampersand -!27 U+0027 quotesingle -!28 U+0028 parenleft -!29 U+0029 parenright -!2A U+002A asterisk -!2B U+002B plus -!2C U+002C comma -!2D U+002D hyphen -!2E U+002E period -!2F U+002F slash -!30 U+0030 zero -!31 U+0031 one -!32 U+0032 two -!33 U+0033 three -!34 U+0034 four -!35 U+0035 five -!36 U+0036 six -!37 U+0037 seven -!38 U+0038 eight -!39 U+0039 nine -!3A U+003A colon -!3B U+003B semicolon -!3C U+003C less -!3D U+003D equal -!3E U+003E greater -!3F U+003F question -!40 U+0040 at -!41 U+0041 A -!42 U+0042 B -!43 U+0043 C -!44 U+0044 D -!45 U+0045 E -!46 U+0046 F -!47 U+0047 G -!48 U+0048 H -!49 U+0049 I -!4A U+004A J -!4B U+004B K -!4C U+004C L -!4D U+004D M -!4E U+004E N -!4F U+004F O -!50 U+0050 P -!51 U+0051 Q -!52 U+0052 R -!53 U+0053 S -!54 U+0054 T -!55 U+0055 U -!56 U+0056 V -!57 U+0057 W -!58 U+0058 X -!59 U+0059 Y -!5A U+005A Z -!5B U+005B bracketleft -!5C U+005C backslash -!5D U+005D bracketright -!5E U+005E asciicircum -!5F U+005F underscore -!60 U+0060 grave -!61 U+0061 a -!62 U+0062 b -!63 U+0063 c -!64 U+0064 d -!65 U+0065 e -!66 U+0066 f -!67 U+0067 g -!68 U+0068 h -!69 U+0069 i -!6A U+006A j -!6B U+006B k -!6C U+006C l -!6D U+006D m -!6E U+006E n -!6F U+006F o -!70 U+0070 p -!71 U+0071 q -!72 U+0072 r -!73 U+0073 s -!74 U+0074 t -!75 U+0075 u -!76 U+0076 v -!77 U+0077 w -!78 U+0078 x -!79 U+0079 y -!7A U+007A z -!7B U+007B braceleft -!7C U+007C bar -!7D U+007D braceright -!7E U+007E asciitilde -!7F U+007F .notdef -!80 U+2500 SF100000 -!81 U+2502 SF110000 -!82 U+250C SF010000 -!83 U+2510 SF030000 -!84 U+2514 SF020000 -!85 U+2518 SF040000 -!86 U+251C SF080000 -!87 U+2524 SF090000 -!88 U+252C SF060000 -!89 U+2534 SF070000 -!8A U+253C SF050000 -!8B U+2580 upblock -!8C U+2584 dnblock -!8D U+2588 block -!8E U+258C lfblock -!8F U+2590 rtblock -!90 U+2591 ltshade -!91 U+2592 shade -!92 U+2593 dkshade -!93 U+2320 integraltp -!94 U+25A0 filledbox -!95 U+2022 bullet -!96 U+221A radical -!97 U+2248 approxequal -!98 U+2264 lessequal -!99 U+2265 greaterequal -!9A U+00A0 space -!9B U+2321 integralbt -!9C U+00B0 degree -!9D U+00B2 twosuperior -!9E U+00B7 periodcentered -!9F U+00F7 divide -!A0 U+2550 SF430000 -!A1 U+2551 SF240000 -!A2 U+2552 SF510000 -!A3 U+0451 afii10071 -!A4 U+0454 afii10101 -!A5 U+2554 SF390000 -!A6 U+0456 afii10103 -!A7 U+0457 afii10104 -!A8 U+2557 SF250000 -!A9 U+2558 SF500000 -!AA U+2559 SF490000 -!AB U+255A SF380000 -!AC U+255B SF280000 -!AD U+0491 afii10098 -!AE U+255D SF260000 -!AF U+255E SF360000 -!B0 U+255F SF370000 -!B1 U+2560 SF420000 -!B2 U+2561 SF190000 -!B3 U+0401 afii10023 -!B4 U+0404 afii10053 -!B5 U+2563 SF230000 -!B6 U+0406 afii10055 -!B7 U+0407 afii10056 -!B8 U+2566 SF410000 -!B9 U+2567 SF450000 -!BA U+2568 SF460000 -!BB U+2569 SF400000 -!BC U+256A SF540000 -!BD U+0490 afii10050 -!BE U+256C SF440000 -!BF U+00A9 copyright -!C0 U+044E afii10096 -!C1 U+0430 afii10065 -!C2 U+0431 afii10066 -!C3 U+0446 afii10088 -!C4 U+0434 afii10069 -!C5 U+0435 afii10070 -!C6 U+0444 afii10086 -!C7 U+0433 afii10068 -!C8 U+0445 afii10087 -!C9 U+0438 afii10074 -!CA U+0439 afii10075 -!CB U+043A afii10076 -!CC U+043B afii10077 -!CD U+043C afii10078 -!CE U+043D afii10079 -!CF U+043E afii10080 -!D0 U+043F afii10081 -!D1 U+044F afii10097 -!D2 U+0440 afii10082 -!D3 U+0441 afii10083 -!D4 U+0442 afii10084 -!D5 U+0443 afii10085 -!D6 U+0436 afii10072 -!D7 U+0432 afii10067 -!D8 U+044C afii10094 -!D9 U+044B afii10093 -!DA U+0437 afii10073 -!DB U+0448 afii10090 -!DC U+044D afii10095 -!DD U+0449 afii10091 -!DE U+0447 afii10089 -!DF U+044A afii10092 -!E0 U+042E afii10048 -!E1 U+0410 afii10017 -!E2 U+0411 afii10018 -!E3 U+0426 afii10040 -!E4 U+0414 afii10021 -!E5 U+0415 afii10022 -!E6 U+0424 afii10038 -!E7 U+0413 afii10020 -!E8 U+0425 afii10039 -!E9 U+0418 afii10026 -!EA U+0419 afii10027 -!EB U+041A afii10028 -!EC U+041B afii10029 -!ED U+041C afii10030 -!EE U+041D afii10031 -!EF U+041E afii10032 -!F0 U+041F afii10033 -!F1 U+042F afii10049 -!F2 U+0420 afii10034 -!F3 U+0421 afii10035 -!F4 U+0422 afii10036 -!F5 U+0423 afii10037 -!F6 U+0416 afii10024 -!F7 U+0412 afii10019 -!F8 U+042C afii10046 -!F9 U+042B afii10045 -!FA U+0417 afii10025 -!FB U+0428 afii10042 -!FC U+042D afii10047 -!FD U+0429 afii10043 -!FE U+0427 afii10041 -!FF U+042A afii10044 diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/AdobeFontMetrics.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/AdobeFontMetrics.php deleted file mode 100644 index 613117db..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/AdobeFontMetrics.php +++ /dev/null @@ -1,253 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib; - -use FontLib\Table\Type\name; -use FontLib\TrueType\File; - -/** - * Adobe Font Metrics file creation utility class. - * - * @package php-font-lib - */ -class AdobeFontMetrics { - private $f; - - /** - * @var File - */ - private $font; - - function __construct(File $font) { - $this->font = $font; - } - - function write($file, $encoding = null) { - $map_data = array(); - - if ($encoding) { - $encoding = preg_replace("/[^a-z0-9-_]/", "", $encoding); - $map_file = dirname(__FILE__) . "/../../maps/$encoding.map"; - if (!file_exists($map_file)) { - throw new \Exception("Unknown encoding ($encoding)"); - } - - $map = new EncodingMap($map_file); - $map_data = $map->parse(); - } - - $this->f = fopen($file, "w+"); - - $font = $this->font; - - $this->startSection("FontMetrics", 4.1); - $this->addPair("Notice", "Converted by PHP-font-lib"); - $this->addPair("Comment", "https://github.com/dompdf/php-font-lib"); - - $encoding_scheme = ($encoding ? $encoding : "FontSpecific"); - $this->addPair("EncodingScheme", $encoding_scheme); - - $records = $font->getData("name", "records"); - foreach ($records as $id => $record) { - if (!isset(name::$nameIdCodes[$id]) || preg_match("/[\r\n]/", $record->string)) { - continue; - } - - $this->addPair(name::$nameIdCodes[$id], $record->string); - } - - $os2 = $font->getData("OS/2"); - $this->addPair("Weight", ($os2["usWeightClass"] > 400 ? "Bold" : "Medium")); - - $post = $font->getData("post"); - $this->addPair("ItalicAngle", $post["italicAngle"]); - $this->addPair("IsFixedPitch", ($post["isFixedPitch"] ? "true" : "false")); - $this->addPair("UnderlineThickness", $font->normalizeFUnit($post["underlineThickness"])); - $this->addPair("UnderlinePosition", $font->normalizeFUnit($post["underlinePosition"])); - - $hhea = $font->getData("hhea"); - - if (isset($hhea["ascent"])) { - $this->addPair("FontHeightOffset", $font->normalizeFUnit($hhea["lineGap"])); - } - else { - $this->addPair("FontHeightOffset", $font->normalizeFUnit($os2["typoLineGap"])); - } - - $glyf = $font->getData("glyf"); - $glyphIndexArray = $font->getUnicodeCharMap(); - $hasGlyphs = $glyf instanceof glyf && is_array($glyphIndexArray); - - // capHeight is based on capital H - if ($hasGlyphs && \array_key_exists(72, $glyphIndexArray)) { - $upperH = $glyf[$glyphIndexArray[72]]; - $upperH->parseData(); - $this->addPair("CapHeight", $font->normalizeFUnit($upperH->yMax)); - } - - // xHeight is based on lowercase x - if ($hasGlyphs && \array_key_exists(120, $glyphIndexArray)) { - $lowerX = $glyf[$glyphIndexArray[120]]; - $lowerX->parseData(); - $this->addPair("XHeight", $font->normalizeFUnit($lowerX->yMax)); - } - - // ascender is based on lowercase d - if ($hasGlyphs && \array_key_exists(100, $glyphIndexArray)) { - $lowerD = $glyf[$glyphIndexArray[100]]; - $lowerD->parseData(); - $this->addPair("Ascender", $font->normalizeFUnit($lowerD->yMax)); - } elseif (isset($hhea["ascent"])) { - $this->addPair("Ascender", $font->normalizeFUnit($hhea["ascent"])); - } - else { - $this->addPair("Ascender", $font->normalizeFUnit($os2["typoAscender"])); - } - - // descender is based on lowercase p - if ($hasGlyphs && \array_key_exists(112, $glyphIndexArray)) { - $lowerP = $glyf[$glyphIndexArray[112]]; - $lowerP->parseData(); - $this->addPair("Descender", $font->normalizeFUnit($lowerP->yMin)); - } elseif (isset($hhea["descent"])) { - $this->addPair("Descender", $font->normalizeFUnit($hhea["descent"])); - } - else { - $this->addPair("Descender", -abs($font->normalizeFUnit($os2["typoDescender"]))); - } - - $head = $font->getData("head"); - $this->addArray("FontBBox", array( - $font->normalizeFUnit($head["xMin"]), - $font->normalizeFUnit($head["yMin"]), - $font->normalizeFUnit($head["xMax"]), - $font->normalizeFUnit($head["yMax"]), - )); - - if ($glyphIndexArray) { - $hmtx = $font->getData("hmtx"); - $names = $font->getData("post", "names"); - - $this->startSection("CharMetrics", count($hmtx)); - - if ($encoding) { - foreach ($map_data as $code => $value) { - list($c, $name) = $value; - - if (!isset($glyphIndexArray[$c])) { - continue; - } - - $g = $glyphIndexArray[$c]; - - if (!isset($hmtx[$g])) { - $hmtx[$g] = $hmtx[0]; - } - - $this->addMetric(array( - "C" => ($code > 255 ? -1 : $code), - "WX" => $font->normalizeFUnit($hmtx[$g][0]), - "N" => $name, - )); - } - } - else { - foreach ($glyphIndexArray as $c => $g) { - if (!isset($hmtx[$g])) { - $hmtx[$g] = $hmtx[0]; - } - - $this->addMetric(array( - "U" => $c, - "WX" => $font->normalizeFUnit($hmtx[$g][0]), - "N" => (isset($names[$g]) ? $names[$g] : sprintf("uni%04x", $c)), - "G" => $g, - )); - } - } - - $this->endSection("CharMetrics"); - - $kern = $font->getData("kern", "subtable"); - $tree = is_array($kern) ? $kern["tree"] : null; - - if (!$encoding && is_array($tree)) { - $this->startSection("KernData"); - $this->startSection("KernPairs", count($tree, COUNT_RECURSIVE) - count($tree)); - - foreach ($tree as $left => $values) { - if (!is_array($values)) { - continue; - } - if (!isset($glyphIndexArray[$left])) { - continue; - } - - $left_gid = $glyphIndexArray[$left]; - - if (!isset($names[$left_gid])) { - continue; - } - - $left_name = $names[$left_gid]; - - $this->addLine(""); - - foreach ($values as $right => $value) { - if (!isset($glyphIndexArray[$right])) { - continue; - } - - $right_gid = $glyphIndexArray[$right]; - - if (!isset($names[$right_gid])) { - continue; - } - - $right_name = $names[$right_gid]; - $this->addPair("KPX", "$left_name $right_name $value"); - } - } - - $this->endSection("KernPairs"); - $this->endSection("KernData"); - } - } - - $this->endSection("FontMetrics"); - } - - function addLine($line) { - fwrite($this->f, "$line\n"); - } - - function addPair($key, $value) { - $this->addLine("$key $value"); - } - - function addArray($key, $array) { - $this->addLine("$key " . implode(" ", $array)); - } - - function addMetric($data) { - $array = array(); - foreach ($data as $key => $value) { - $array[] = "$key $value"; - } - $this->addLine(implode(" ; ", $array)); - } - - function startSection($name, $value = "") { - $this->addLine("Start$name $value"); - } - - function endSection($name) { - $this->addLine("End$name"); - } -} diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/BinaryStream.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/BinaryStream.php deleted file mode 100644 index 5e170c6e..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/BinaryStream.php +++ /dev/null @@ -1,449 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib; - -/** - * Generic font file binary stream. - * - * @package php-font-lib - */ -class BinaryStream { - /** - * @var resource The file pointer - */ - protected $f; - - const uint8 = 1; - const int8 = 2; - const uint16 = 3; - const int16 = 4; - const uint32 = 5; - const int32 = 6; - const shortFrac = 7; - const Fixed = 8; - const FWord = 9; - const uFWord = 10; - const F2Dot14 = 11; - const longDateTime = 12; - const char = 13; - - const modeRead = "rb"; - const modeWrite = "wb"; - const modeReadWrite = "rb+"; - - static function backtrace() { - var_dump(debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS)); - } - - /** - * Open a font file in read mode - * - * @param string $filename The file name of the font to open - * - * @return bool - */ - public function load($filename) { - return $this->open($filename, self::modeRead); - } - - /** - * Open a font file in a chosen mode - * - * @param string $filename The file name of the font to open - * @param string $mode The opening mode - * - * @throws \Exception - * @return bool - */ - public function open($filename, $mode = self::modeRead) { - if (!in_array($mode, array(self::modeRead, self::modeWrite, self::modeReadWrite))) { - throw new \Exception("Unknown file open mode"); - } - - $this->f = fopen($filename, $mode); - - return $this->f != false; - } - - /** - * Close the internal file pointer - */ - public function close() { - return fclose($this->f) != false; - } - - /** - * Change the internal file pointer - * - * @param resource $fp - * - * @throws \Exception - */ - public function setFile($fp) { - if (!is_resource($fp)) { - throw new \Exception('$fp is not a valid resource'); - } - - $this->f = $fp; - } - - /** - * Create a temporary file in write mode - * - * @param bool $allow_memory Allow in-memory files - * - * @return resource the temporary file pointer resource - */ - public static function getTempFile($allow_memory = true) { - $f = null; - - if ($allow_memory) { - $f = fopen("php://temp", "rb+"); - } - else { - $f = fopen(tempnam(sys_get_temp_dir(), "fnt"), "rb+"); - } - - return $f; - } - - /** - * Move the internal file pinter to $offset bytes - * - * @param int $offset - * - * @return bool True if the $offset position exists in the file - */ - public function seek($offset) { - return fseek($this->f, $offset, SEEK_SET) == 0; - } - - /** - * Gives the current position in the file - * - * @return int The current position - */ - public function pos() { - return ftell($this->f); - } - - public function skip($n) { - fseek($this->f, $n, SEEK_CUR); - } - - /** - * @param int $n The number of bytes to read - * - * @return string - */ - public function read($n) { - if ($n < 1) { - return ""; - } - - return (string) fread($this->f, $n); - } - - public function write($data, $length = null) { - if ($data === null || $data === "" || $data === false) { - return 0; - } - - return fwrite($this->f, $data, $length); - } - - public function readUInt8() { - return ord($this->read(1)); - } - - public function readUInt8Many($count) { - return array_values(unpack("C*", $this->read($count))); - } - - public function writeUInt8($data) { - return $this->write(chr($data), 1); - } - - public function readInt8() { - $v = $this->readUInt8(); - - if ($v >= 0x80) { - $v -= 0x100; - } - - return $v; - } - - public function readInt8Many($count) { - return array_values(unpack("c*", $this->read($count))); - } - - public function writeInt8($data) { - if ($data < 0) { - $data += 0x100; - } - - return $this->writeUInt8($data); - } - - public function readUInt16() { - $a = unpack("nn", $this->read(2)); - - return $a["n"]; - } - - public function readUInt16Many($count) { - return array_values(unpack("n*", $this->read($count * 2))); - } - - public function readUFWord() { - return $this->readUInt16(); - } - - public function writeUInt16($data) { - return $this->write(pack("n", $data), 2); - } - - public function writeUFWord($data) { - return $this->writeUInt16($data); - } - - public function readInt16() { - $a = unpack("nn", $this->read(2)); - $v = $a["n"]; - - if ($v >= 0x8000) { - $v -= 0x10000; - } - - return $v; - } - - public function readInt16Many($count) { - $vals = array_values(unpack("n*", $this->read($count * 2))); - foreach ($vals as &$v) { - if ($v >= 0x8000) { - $v -= 0x10000; - } - } - - return $vals; - } - - public function readFWord() { - return $this->readInt16(); - } - - public function writeInt16($data) { - if ($data < 0) { - $data += 0x10000; - } - - return $this->writeUInt16($data); - } - - public function writeFWord($data) { - return $this->writeInt16($data); - } - - public function readUInt32() { - $a = unpack("NN", $this->read(4)); - - return $a["N"]; - } - - public function writeUInt32($data) { - return $this->write(pack("N", $data), 4); - } - - public function readFixed() { - $d = $this->readInt16(); - $d2 = $this->readUInt16(); - - return round($d + $d2 / 0x10000, 4); - } - - public function writeFixed($data) { - $left = floor($data); - $right = ($data - $left) * 0x10000; - - return $this->writeInt16($left) + $this->writeUInt16($right); - } - - public function readLongDateTime() { - $this->readUInt32(); // ignored - $date = $this->readUInt32() - 2082844800; - - # PHP_INT_MIN isn't defined in PHP < 7.0 - $php_int_min = defined("PHP_INT_MIN") ? PHP_INT_MIN : ~PHP_INT_MAX; - - if (is_string($date) || $date > PHP_INT_MAX || $date < $php_int_min) { - $date = 0; - } - - return date("Y-m-d H:i:s", $date); - } - - public function writeLongDateTime($data) { - $date = strtotime($data); - $date += 2082844800; - - return $this->writeUInt32(0) + $this->writeUInt32($date); - } - - public function unpack($def) { - $d = array(); - foreach ($def as $name => $type) { - $d[$name] = $this->r($type); - } - - return $d; - } - - public function pack($def, $data) { - $bytes = 0; - foreach ($def as $name => $type) { - $bytes += $this->w($type, $data[$name]); - } - - return $bytes; - } - - /** - * Read a data of type $type in the file from the current position - * - * @param mixed $type The data type to read - * - * @return mixed The data that was read - */ - public function r($type) { - switch ($type) { - case self::uint8: - return $this->readUInt8(); - case self::int8: - return $this->readInt8(); - case self::uint16: - return $this->readUInt16(); - case self::int16: - return $this->readInt16(); - case self::uint32: - return $this->readUInt32(); - case self::int32: - return $this->readUInt32(); - case self::shortFrac: - return $this->readFixed(); - case self::Fixed: - return $this->readFixed(); - case self::FWord: - return $this->readInt16(); - case self::uFWord: - return $this->readUInt16(); - case self::F2Dot14: - return $this->readInt16(); - case self::longDateTime: - return $this->readLongDateTime(); - case self::char: - return $this->read(1); - default: - if (is_array($type)) { - if ($type[0] == self::char) { - return $this->read($type[1]); - } - if ($type[0] == self::uint16) { - return $this->readUInt16Many($type[1]); - } - if ($type[0] == self::int16) { - return $this->readInt16Many($type[1]); - } - if ($type[0] == self::uint8) { - return $this->readUInt8Many($type[1]); - } - if ($type[0] == self::int8) { - return $this->readInt8Many($type[1]); - } - - $ret = array(); - for ($i = 0; $i < $type[1]; $i++) { - $ret[] = $this->r($type[0]); - } - - return $ret; - } - - return null; - } - } - - /** - * Write $data of type $type in the file from the current position - * - * @param mixed $type The data type to write - * @param mixed $data The data to write - * - * @return int The number of bytes read - */ - public function w($type, $data) { - switch ($type) { - case self::uint8: - return $this->writeUInt8($data); - case self::int8: - return $this->writeInt8($data); - case self::uint16: - return $this->writeUInt16($data); - case self::int16: - return $this->writeInt16($data); - case self::uint32: - return $this->writeUInt32($data); - case self::int32: - return $this->writeUInt32($data); - case self::shortFrac: - return $this->writeFixed($data); - case self::Fixed: - return $this->writeFixed($data); - case self::FWord: - return $this->writeInt16($data); - case self::uFWord: - return $this->writeUInt16($data); - case self::F2Dot14: - return $this->writeInt16($data); - case self::longDateTime: - return $this->writeLongDateTime($data); - case self::char: - return $this->write($data, 1); - default: - if (is_array($type)) { - if ($type[0] == self::char) { - return $this->write($data, $type[1]); - } - - $ret = 0; - for ($i = 0; $i < $type[1]; $i++) { - if (isset($data[$i])) { - $ret += $this->w($type[0], $data[$i]); - } - } - - return $ret; - } - - return null; - } - } - - /** - * Converts a Uint32 value to string - * - * @param int $uint32 - * - * @return string The string - */ - public function convertUInt32ToStr($uint32) { - return chr(($uint32 >> 24) & 0xFF) . chr(($uint32 >> 16) & 0xFF) . chr(($uint32 >> 8) & 0xFF) . chr($uint32 & 0xFF); - } -} diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/EOT/File.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/EOT/File.php deleted file mode 100644 index 55933ebf..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/EOT/File.php +++ /dev/null @@ -1,159 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib\EOT; - -/** - * EOT font file. - * - * @package php-font-lib - */ -class File extends \FontLib\TrueType\File { - const TTEMBED_SUBSET = 0x00000001; - const TTEMBED_TTCOMPRESSED = 0x00000004; - const TTEMBED_FAILIFVARIATIONSIMULATED = 0x00000010; - const TTMBED_EMBEDEUDC = 0x00000020; - const TTEMBED_VALIDATIONTESTS = 0x00000040; // Deprecated - const TTEMBED_WEBOBJECT = 0x00000080; - const TTEMBED_XORENCRYPTDATA = 0x10000000; - - /** - * @var Header - */ - public $header; - - function parseHeader() { - if (!empty($this->header)) { - return; - } - - $this->header = new Header($this); - $this->header->parse(); - } - - function parse() { - $this->parseHeader(); - - $flags = $this->header->data["Flags"]; - - if ($flags & self::TTEMBED_TTCOMPRESSED) { - $mtx_version = $this->readUInt8(); - $mtx_copy_limit = $this->readUInt8() << 16 | $this->readUInt8() << 8 | $this->readUInt8(); - $mtx_offset_1 = $this->readUInt8() << 16 | $this->readUInt8() << 8 | $this->readUInt8(); - $mtx_offset_2 = $this->readUInt8() << 16 | $this->readUInt8() << 8 | $this->readUInt8(); - /* - var_dump("$mtx_version $mtx_copy_limit $mtx_offset_1 $mtx_offset_2"); - - $pos = $this->pos(); - $size = $mtx_offset_1 - $pos; - var_dump("pos: $pos"); - var_dump("size: $size");*/ - } - - if ($flags & self::TTEMBED_XORENCRYPTDATA) { - // Process XOR - } - // TODO Read font data ... - } - - /** - * Little endian version of the read method - * - * @param int $n The number of bytes to read - * - * @return string - */ - public function read($n) { - if ($n < 1) { - return ""; - } - - $string = (string) fread($this->f, $n); - $chunks = mb_str_split($string, 2, '8bit'); - $chunks = array_map("strrev", $chunks); - return implode("", $chunks); - } - - public function readUInt32() { - $uint32 = parent::readUInt32(); - - return $uint32 >> 16 & 0x0000FFFF | $uint32 << 16 & 0xFFFF0000; - } - - /** - * Get font copyright - * - * @return string|null - */ - function getFontCopyright() { - return null; - } - - /** - * Get font name - * - * @return string|null - */ - function getFontName() { - return $this->header->data["FamilyName"]; - } - - /** - * Get font subfamily - * - * @return string|null - */ - function getFontSubfamily() { - return $this->header->data["StyleName"]; - } - - /** - * Get font subfamily ID - * - * @return string|null - */ - function getFontSubfamilyID() { - return $this->header->data["StyleName"]; - } - - /** - * Get font full name - * - * @return string|null - */ - function getFontFullName() { - return $this->header->data["FullName"]; - } - - /** - * Get font version - * - * @return string|null - */ - function getFontVersion() { - return $this->header->data["VersionName"]; - } - - /** - * Get font weight - * - * @return string|null - */ - function getFontWeight() { - return $this->header->data["Weight"]; - } - - /** - * Get font Postscript name - * - * @return string|null - */ - function getFontPostscriptName() { - return null; - } -} diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/EOT/Header.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/EOT/Header.php deleted file mode 100644 index 2730c808..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/EOT/Header.php +++ /dev/null @@ -1,113 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib\EOT; - -use Exception; -use FontLib\Font; - -/** - * TrueType font file header. - * - * @package php-font-lib - * - * @property File $font - */ -class Header extends \FontLib\Header { - protected $def = array( - "format" => self::uint32, - "numTables" => self::uint16, - "searchRange" => self::uint16, - "entrySelector" => self::uint16, - "rangeShift" => self::uint16, - ); - - public function parse() { - $font = $this->font; - - $this->data = $font->unpack(array( - "EOTSize" => self::uint32, - "FontDataSize" => self::uint32, - "Version" => self::uint32, - "Flags" => self::uint32, - "FontPANOSE" => array(self::uint8, 10), - "Charset" => self::uint8, - "Italic" => self::uint8, - "Weight" => self::uint32, - "fsType" => self::uint16, - "MagicNumber" => self::uint16, - "UnicodeRange1" => self::uint32, - "UnicodeRange2" => self::uint32, - "UnicodeRange3" => self::uint32, - "UnicodeRange4" => self::uint32, - "CodePageRange1" => self::uint32, - "CodePageRange2" => self::uint32, - "CheckSumAdjustment" => self::uint32, - "Reserved1" => self::uint32, - "Reserved2" => self::uint32, - "Reserved3" => self::uint32, - "Reserved4" => self::uint32, - )); - - $this->data["Padding1"] = $font->readUInt16(); - $this->readString("FamilyName"); - - $this->data["Padding2"] = $font->readUInt16(); - $this->readString("StyleName"); - - $this->data["Padding3"] = $font->readUInt16(); - $this->readString("VersionName"); - - $this->data["Padding4"] = $font->readUInt16(); - $this->readString("FullName"); - - switch ($this->data["Version"]) { - default: - throw new Exception("Unknown EOT version " . $this->data["Version"]); - - case 0x00010000: - // Nothing to do more - break; - - case 0x00020001: - $this->data["Padding5"] = $font->readUInt16(); - $this->readString("RootString"); - break; - - case 0x00020002: - $this->data["Padding5"] = $font->readUInt16(); - $this->readString("RootString"); - - $this->data["RootStringCheckSum"] = $font->readUInt32(); - $this->data["EUDCCodePage"] = $font->readUInt32(); - - $this->data["Padding6"] = $font->readUInt16(); - $this->readString("Signature"); - - $this->data["EUDCFlags"] = $font->readUInt32(); - $this->data["EUDCFontSize"] = $font->readUInt32(); - break; - } - - if (!empty($this->data["RootString"])) { - $this->data["RootString"] = explode("\0", $this->data["RootString"]); - } - } - - private function readString($name) { - $font = $this->font; - $size = $font->readUInt16(); - - $this->data["{$name}Size"] = $size; - $this->data[$name] = Font::UTF16ToUTF8($font->read($size)); - } - - public function encode() { - //return $this->font->pack($this->def, $this->data); - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/EncodingMap.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/EncodingMap.php deleted file mode 100644 index 02e7ca4f..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/EncodingMap.php +++ /dev/null @@ -1,37 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib; - -/** - * Encoding map used to map a code point to a Unicode char. - * - * @package php-font-lib - */ -class EncodingMap { - private $f; - - function __construct($file) { - $this->f = fopen($file, "r"); - } - - function parse() { - $map = array(); - - while ($line = fgets($this->f)) { - if (preg_match('/^[\!\=]([0-9A-F]{2,})\s+U\+([0-9A-F]{2})([0-9A-F]{2})\s+([^\s]+)/', $line, $matches)) { - $unicode = (hexdec($matches[2]) << 8) + hexdec($matches[3]); - $map[hexdec($matches[1])] = array($unicode, $matches[4]); - } - } - - ksort($map); - - return $map; - } -} diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Exception/FontNotFoundException.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Exception/FontNotFoundException.php deleted file mode 100644 index d97f2523..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Exception/FontNotFoundException.php +++ /dev/null @@ -1,11 +0,0 @@ -message = 'Font not found in: ' . $fontPath; - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Font.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Font.php deleted file mode 100644 index 3f6a7842..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Font.php +++ /dev/null @@ -1,89 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib; - -use FontLib\Exception\FontNotFoundException; - -/** - * Generic font file. - * - * @package php-font-lib - */ -class Font { - static $debug = false; - - /** - * @param string $file The font file - * - * @return TrueType\File|null $file - */ - public static function load($file) { - if(!file_exists($file)){ - throw new FontNotFoundException($file); - } - - $header = file_get_contents($file, false, null, 0, 4); - $class = null; - - switch ($header) { - case "\x00\x01\x00\x00": - case "true": - case "typ1": - $class = "TrueType\\File"; - break; - - case "OTTO": - $class = "OpenType\\File"; - break; - - case "wOFF": - $class = "WOFF\\File"; - break; - - case "ttcf": - $class = "TrueType\\Collection"; - break; - - // Unknown type or EOT - default: - $magicNumber = file_get_contents($file, false, null, 34, 2); - - if ($magicNumber === "LP") { - $class = "EOT\\File"; - } - } - - if ($class) { - $class = "FontLib\\$class"; - - /** @var TrueType\File $obj */ - $obj = new $class; - $obj->load($file); - - return $obj; - } - - return null; - } - - static function d($str) { - if (!self::$debug) { - return; - } - echo "$str\n"; - } - - static function UTF16ToUTF8($str) { - return mb_convert_encoding($str, "utf-8", "utf-16"); - } - - static function UTF8ToUTF16($str) { - return mb_convert_encoding($str, "utf-16", "utf-8"); - } -} diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Glyph/Outline.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Glyph/Outline.php deleted file mode 100644 index efb2de5c..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Glyph/Outline.php +++ /dev/null @@ -1,109 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - * @version $Id: Font_Table_glyf.php 46 2012-04-02 20:22:38Z fabien.menager $ - */ -namespace FontLib\Glyph; - -use FontLib\Table\Type\glyf; -use FontLib\TrueType\File; -use FontLib\BinaryStream; - -/** - * `glyf` font table. - * - * @package php-font-lib - */ -class Outline extends BinaryStream { - /** - * @var \FontLib\Table\Type\glyf - */ - protected $table; - - protected $offset; - protected $size; - - // Data - public $numberOfContours; - public $xMin; - public $yMin; - public $xMax; - public $yMax; - - /** - * @var string|null - */ - public $raw; - - /** - * @param glyf $table - * @param $offset - * @param $size - * - * @return Outline - */ - static function init(glyf $table, $offset, $size, BinaryStream $font) { - $font->seek($offset); - - if ($size === 0 || $font->readInt16() > -1) { - /** @var OutlineSimple $glyph */ - $glyph = new OutlineSimple($table, $offset, $size); - } - else { - /** @var OutlineComposite $glyph */ - $glyph = new OutlineComposite($table, $offset, $size); - } - - $glyph->parse($font); - - return $glyph; - } - - /** - * @return File - */ - function getFont() { - return $this->table->getFont(); - } - - function __construct(glyf $table, $offset = null, $size = null) { - $this->table = $table; - $this->offset = $offset; - $this->size = $size; - } - - function parse(BinaryStream $font) { - $font->seek($this->offset); - - $this->raw = $font->read($this->size); - } - - function parseData() { - $font = $this->getFont(); - $font->seek($this->offset); - - $this->numberOfContours = $font->readInt16(); - $this->xMin = $font->readFWord(); - $this->yMin = $font->readFWord(); - $this->xMax = $font->readFWord(); - $this->yMax = $font->readFWord(); - } - - function encode() { - $font = $this->getFont(); - - return $font->write($this->raw, mb_strlen((string) $this->raw, '8bit')); - } - - function getSVGContours() { - // Inherit - } - - function getGlyphIDs() { - return array(); - } -} - diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Glyph/OutlineComponent.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Glyph/OutlineComponent.php deleted file mode 100644 index fa75c2a8..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Glyph/OutlineComponent.php +++ /dev/null @@ -1,31 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - * @version $Id: Font_Table_glyf.php 46 2012-04-02 20:22:38Z fabien.menager $ - */ - -namespace FontLib\Glyph; -/** - * Glyph outline component - * - * @package php-font-lib - */ -class OutlineComponent { - public $flags; - public $glyphIndex; - public $a, $b, $c, $d, $e, $f; - public $point_compound; - public $point_component; - public $instructions; - - function getMatrix() { - return array( - $this->a, $this->b, - $this->c, $this->d, - $this->e, $this->f, - ); - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Glyph/OutlineComposite.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Glyph/OutlineComposite.php deleted file mode 100644 index eb3da91c..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Glyph/OutlineComposite.php +++ /dev/null @@ -1,253 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - * @version $Id: Font_Table_glyf.php 46 2012-04-02 20:22:38Z fabien.menager $ - */ - -namespace FontLib\Glyph; - -/** - * Composite glyph outline - * - * @package php-font-lib - */ -class OutlineComposite extends Outline { - const ARG_1_AND_2_ARE_WORDS = 0x0001; - const ARGS_ARE_XY_VALUES = 0x0002; - const ROUND_XY_TO_GRID = 0x0004; - const WE_HAVE_A_SCALE = 0x0008; - const MORE_COMPONENTS = 0x0020; - const WE_HAVE_AN_X_AND_Y_SCALE = 0x0040; - const WE_HAVE_A_TWO_BY_TWO = 0x0080; - const WE_HAVE_INSTRUCTIONS = 0x0100; - const USE_MY_METRICS = 0x0200; - const OVERLAP_COMPOUND = 0x0400; - - /** - * @var OutlineComponent[] - */ - public $components = array(); - - function getGlyphIDs() { - if (empty($this->components)) { - $this->parseData(); - } - - $glyphIDs = array(); - foreach ($this->components as $_component) { - $glyphIDs[] = $_component->glyphIndex; - - $_glyph = $this->table->data[$_component->glyphIndex]; - - if ($_glyph !== $this) { - $glyphIDs = array_merge($glyphIDs, $_glyph->getGlyphIDs()); - } - } - - return $glyphIDs; - } - - /*function parse() { - //$this->parseData(); - }*/ - - function parseData() { - parent::parseData(); - - $font = $this->getFont(); - - do { - $flags = $font->readUInt16(); - $glyphIndex = $font->readUInt16(); - - $a = 1.0; - $b = 0.0; - $c = 0.0; - $d = 1.0; - $e = 0.0; - $f = 0.0; - - $point_compound = null; - $point_component = null; - - $instructions = null; - - if ($flags & self::ARG_1_AND_2_ARE_WORDS) { - if ($flags & self::ARGS_ARE_XY_VALUES) { - $e = $font->readInt16(); - $f = $font->readInt16(); - } - else { - $point_compound = $font->readUInt16(); - $point_component = $font->readUInt16(); - } - } - else { - if ($flags & self::ARGS_ARE_XY_VALUES) { - $e = $font->readInt8(); - $f = $font->readInt8(); - } - else { - $point_compound = $font->readUInt8(); - $point_component = $font->readUInt8(); - } - } - - if ($flags & self::WE_HAVE_A_SCALE) { - $a = $d = $font->readInt16(); - } - elseif ($flags & self::WE_HAVE_AN_X_AND_Y_SCALE) { - $a = $font->readInt16(); - $d = $font->readInt16(); - } - elseif ($flags & self::WE_HAVE_A_TWO_BY_TWO) { - $a = $font->readInt16(); - $b = $font->readInt16(); - $c = $font->readInt16(); - $d = $font->readInt16(); - } - - //if ($flags & self::WE_HAVE_INSTRUCTIONS) { - // - //} - - $component = new OutlineComponent(); - $component->flags = $flags; - $component->glyphIndex = $glyphIndex; - $component->a = $a; - $component->b = $b; - $component->c = $c; - $component->d = $d; - $component->e = $e; - $component->f = $f; - $component->point_compound = $point_compound; - $component->point_component = $point_component; - $component->instructions = $instructions; - - $this->components[] = $component; - } while ($flags & self::MORE_COMPONENTS); - if ($flags & self::WE_HAVE_INSTRUCTIONS) { - $numInstr = $font->readUInt16(); - $instr = $font->read($numInstr); - $this->components[count($this->components) - 1]->instructions = pack('n', $numInstr) . $instr; - } - } - - function encode() { - $font = $this->getFont(); - - $gids = $font->getSubset(); - - $size = $font->writeInt16(-1); - $size += $font->writeFWord($this->xMin); - $size += $font->writeFWord($this->yMin); - $size += $font->writeFWord($this->xMax); - $size += $font->writeFWord($this->yMax); - - foreach ($this->components as $_i => $_component) { - $flags = 0; - if ($_component->point_component === null && $_component->point_compound === null) { - $flags |= self::ARGS_ARE_XY_VALUES; - - if (abs($_component->e) > 0x7F || abs($_component->f) > 0x7F) { - $flags |= self::ARG_1_AND_2_ARE_WORDS; - } - } - elseif ($_component->point_component > 0xFF || $_component->point_compound > 0xFF) { - $flags |= self::ARG_1_AND_2_ARE_WORDS; - } - - if ($_component->b == 0 && $_component->c == 0) { - if ($_component->a == $_component->d) { - if ($_component->a != 1.0) { - $flags |= self::WE_HAVE_A_SCALE; - } - } - else { - $flags |= self::WE_HAVE_AN_X_AND_Y_SCALE; - } - } - else { - $flags |= self::WE_HAVE_A_TWO_BY_TWO; - } - - if ($_i < count($this->components) - 1) { - $flags |= self::MORE_COMPONENTS; - } elseif($_component->instructions !== null) { - $flags |= self::WE_HAVE_INSTRUCTIONS; - } - - $size += $font->writeUInt16($flags); - - $new_gid = array_search($_component->glyphIndex, $gids); - $size += $font->writeUInt16($new_gid); - - if ($flags & self::ARG_1_AND_2_ARE_WORDS) { - if ($flags & self::ARGS_ARE_XY_VALUES) { - $size += $font->writeInt16($_component->e); - $size += $font->writeInt16($_component->f); - } - else { - $size += $font->writeUInt16($_component->point_compound); - $size += $font->writeUInt16($_component->point_component); - } - } - else { - if ($flags & self::ARGS_ARE_XY_VALUES) { - $size += $font->writeInt8($_component->e); - $size += $font->writeInt8($_component->f); - } - else { - $size += $font->writeUInt8($_component->point_compound); - $size += $font->writeUInt8($_component->point_component); - } - } - - if ($flags & self::WE_HAVE_A_SCALE) { - $size += $font->writeInt16($_component->a); - } - elseif ($flags & self::WE_HAVE_AN_X_AND_Y_SCALE) { - $size += $font->writeInt16($_component->a); - $size += $font->writeInt16($_component->d); - } - elseif ($flags & self::WE_HAVE_A_TWO_BY_TWO) { - $size += $font->writeInt16($_component->a); - $size += $font->writeInt16($_component->b); - $size += $font->writeInt16($_component->c); - $size += $font->writeInt16($_component->d); - } - } - - if($_component->instructions !== null) { - $size += $font->write($_component->instructions, strlen($_component->instructions)); - } - - return $size; - } - - public function getSVGContours() { - $contours = array(); - - /** @var \FontLib\Table\Type\glyf $glyph_data */ - $glyph_data = $this->getFont()->getTableObject("glyf"); - - /** @var Outline[] $glyphs */ - $glyphs = $glyph_data->data; - - foreach ($this->components as $component) { - $_glyph = $glyphs[$component->glyphIndex]; - - if ($_glyph !== $this) { - $contours[] = array( - "contours" => $_glyph->getSVGContours(), - "transform" => $component->getMatrix(), - ); - } - } - - return $contours; - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Glyph/OutlineSimple.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Glyph/OutlineSimple.php deleted file mode 100644 index c0c5c856..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Glyph/OutlineSimple.php +++ /dev/null @@ -1,335 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - * @version $Id: Font_Table_glyf.php 46 2012-04-02 20:22:38Z fabien.menager $ - */ - -namespace FontLib\Glyph; - -/** - * `glyf` font table. - * - * @package php-font-lib - */ -class OutlineSimple extends Outline { - const ON_CURVE = 0x01; - const X_SHORT_VECTOR = 0x02; - const Y_SHORT_VECTOR = 0x04; - const REPEAT = 0x08; - const THIS_X_IS_SAME = 0x10; - const THIS_Y_IS_SAME = 0x20; - - public $instructions; - public $points; - - function parseData() { - parent::parseData(); - - if (!$this->size) { - return; - } - - $font = $this->getFont(); - - $noc = $this->numberOfContours; - - if ($noc == 0) { - return; - } - - $endPtsOfContours = $font->r(array(self::uint16, $noc)); - - $instructionLength = $font->readUInt16(); - $this->instructions = $font->r(array(self::uint8, $instructionLength)); - - $count = $endPtsOfContours[$noc - 1] + 1; - - // Flags - $flags = array(); - for ($index = 0; $index < $count; $index++) { - $flags[$index] = $font->readUInt8(); - - if ($flags[$index] & self::REPEAT) { - $repeats = $font->readUInt8(); - - for ($i = 1; $i <= $repeats; $i++) { - $flags[$index + $i] = $flags[$index]; - } - - $index += $repeats; - } - } - - $points = array(); - foreach ($flags as $i => $flag) { - $points[$i]["onCurve"] = $flag & self::ON_CURVE; - $points[$i]["endOfContour"] = in_array($i, $endPtsOfContours); - } - - // X Coords - $x = 0; - for ($i = 0; $i < $count; $i++) { - $flag = $flags[$i]; - - if ($flag & self::THIS_X_IS_SAME) { - if ($flag & self::X_SHORT_VECTOR) { - $x += $font->readUInt8(); - } - } - else { - if ($flag & self::X_SHORT_VECTOR) { - $x -= $font->readUInt8(); - } - else { - $x += $font->readInt16(); - } - } - - $points[$i]["x"] = $x; - } - - // Y Coords - $y = 0; - for ($i = 0; $i < $count; $i++) { - $flag = $flags[$i]; - - if ($flag & self::THIS_Y_IS_SAME) { - if ($flag & self::Y_SHORT_VECTOR) { - $y += $font->readUInt8(); - } - } - else { - if ($flag & self::Y_SHORT_VECTOR) { - $y -= $font->readUInt8(); - } - else { - $y += $font->readInt16(); - } - } - - $points[$i]["y"] = $y; - } - - $this->points = $points; - } - - public function splitSVGPath($path) { - preg_match_all('/([a-z])|(-?\d+(?:\.\d+)?)/i', $path, $matches, PREG_PATTERN_ORDER); - - return $matches[0]; - } - - public function makePoints($path) { - $path = $this->splitSVGPath($path); - $l = count($path); - $i = 0; - - $points = array(); - - while ($i < $l) { - switch ($path[$i]) { - // moveTo - case "M": - $points[] = array( - "onCurve" => true, - "x" => $path[++$i], - "y" => $path[++$i], - "endOfContour" => false, - ); - break; - - // lineTo - case "L": - $points[] = array( - "onCurve" => true, - "x" => $path[++$i], - "y" => $path[++$i], - "endOfContour" => false, - ); - break; - - // quadraticCurveTo - case "Q": - $points[] = array( - "onCurve" => false, - "x" => $path[++$i], - "y" => $path[++$i], - "endOfContour" => false, - ); - $points[] = array( - "onCurve" => true, - "x" => $path[++$i], - "y" => $path[++$i], - "endOfContour" => false, - ); - break; - - // closePath - /** @noinspection PhpMissingBreakStatementInspection */ - case "z": - $points[count($points) - 1]["endOfContour"] = true; - - default: - $i++; - break; - } - } - - return $points; - } - - function encode() { - if (empty($this->points)) { - return parent::encode(); - } - - return $this->size = $this->encodePoints($this->points); - } - - public function encodePoints($points) { - $endPtsOfContours = array(); - $flags = array(); - $coords_x = array(); - $coords_y = array(); - - $last_x = 0; - $last_y = 0; - $xMin = $yMin = 0xFFFF; - $xMax = $yMax = -0xFFFF; - foreach ($points as $i => $point) { - $flag = 0; - if ($point["onCurve"]) { - $flag |= self::ON_CURVE; - } - - if ($point["endOfContour"]) { - $endPtsOfContours[] = $i; - } - - // Simplified, we could do some optimizations - if ($point["x"] == $last_x) { - $flag |= self::THIS_X_IS_SAME; - } - else { - $x = intval($point["x"]); - $xMin = min($x, $xMin); - $xMax = max($x, $xMax); - $coords_x[] = $x - $last_x; // int16 - } - - // Simplified, we could do some optimizations - if ($point["y"] == $last_y) { - $flag |= self::THIS_Y_IS_SAME; - } - else { - $y = intval($point["y"]); - $yMin = min($y, $yMin); - $yMax = max($y, $yMax); - $coords_y[] = $y - $last_y; // int16 - } - - $flags[] = $flag; - $last_x = $point["x"]; - $last_y = $point["y"]; - } - - $font = $this->getFont(); - - $l = 0; - $l += $font->writeInt16(count($endPtsOfContours)); // endPtsOfContours - $l += $font->writeFWord(isset($this->xMin) ? $this->xMin : $xMin); // xMin - $l += $font->writeFWord(isset($this->yMin) ? $this->yMin : $yMin); // yMin - $l += $font->writeFWord(isset($this->xMax) ? $this->xMax : $xMax); // xMax - $l += $font->writeFWord(isset($this->yMax) ? $this->yMax : $yMax); // yMax - - // Simple glyf - $l += $font->w(array(self::uint16, count($endPtsOfContours)), $endPtsOfContours); // endPtsOfContours - $l += $font->writeUInt16(0); // instructionLength - $l += $font->w(array(self::uint8, count($flags)), $flags); // flags - $l += $font->w(array(self::int16, count($coords_x)), $coords_x); // xCoordinates - $l += $font->w(array(self::int16, count($coords_y)), $coords_y); // yCoordinates - return $l; - } - - public function getSVGContours($points = null) { - $path = ""; - - if (!$points) { - if (empty($this->points)) { - $this->parseData(); - } - - $points = $this->points; - } - - $length = (empty($points) ? 0 : count($points)); - $firstIndex = 0; - $count = 0; - - for ($i = 0; $i < $length; $i++) { - $count++; - - if ($points[$i]["endOfContour"]) { - $path .= $this->getSVGPath($points, $firstIndex, $count); - $firstIndex = $i + 1; - $count = 0; - } - } - - return $path; - } - - protected function getSVGPath($points, $startIndex, $count) { - $offset = 0; - $path = ""; - - while ($offset < $count) { - $point = $points[$startIndex + $offset % $count]; - $point_p1 = $points[$startIndex + ($offset + 1) % $count]; - - if ($offset == 0) { - $path .= "M{$point['x']},{$point['y']} "; - } - - if ($point["onCurve"]) { - if ($point_p1["onCurve"]) { - $path .= "L{$point_p1['x']},{$point_p1['y']} "; - $offset++; - } - else { - $point_p2 = $points[$startIndex + ($offset + 2) % $count]; - - if ($point_p2["onCurve"]) { - $path .= "Q{$point_p1['x']},{$point_p1['y']},{$point_p2['x']},{$point_p2['y']} "; - } - else { - $path .= "Q{$point_p1['x']},{$point_p1['y']}," . $this->midValue($point_p1['x'], $point_p2['x']) . "," . $this->midValue($point_p1['y'], $point_p2['y']) . " "; - } - - $offset += 2; - } - } - else { - if ($point_p1["onCurve"]) { - $path .= "Q{$point['x']},{$point['y']},{$point_p1['x']},{$point_p1['y']} "; - } - else { - $path .= "Q{$point['x']},{$point['y']}," . $this->midValue($point['x'], $point_p1['x']) . "," . $this->midValue($point['y'], $point_p1['y']) . " "; - } - - $offset++; - } - } - - $path .= "z "; - - return $path; - } - - function midValue($a, $b) { - return $a + ($b - $a) / 2; - } -} diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Header.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Header.php deleted file mode 100644 index df308b35..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Header.php +++ /dev/null @@ -1,37 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ -namespace FontLib; - -use FontLib\TrueType\File; - -/** - * Font header container. - * - * @package php-font-lib - */ -abstract class Header extends BinaryStream { - /** - * @var File - */ - protected $font; - protected $def = array(); - - public $data; - - public function __construct(File $font) { - $this->font = $font; - } - - public function encode() { - return $this->font->pack($this->def, $this->data); - } - - public function parse() { - $this->data = $this->font->unpack($this->def); - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/OpenType/File.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/OpenType/File.php deleted file mode 100644 index 0b46df92..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/OpenType/File.php +++ /dev/null @@ -1,18 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib\OpenType; - -/** - * Open Type font, the same as a TrueType one. - * - * @package php-font-lib - */ -class File extends \FontLib\TrueType\File { - // -} diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/OpenType/TableDirectoryEntry.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/OpenType/TableDirectoryEntry.php deleted file mode 100644 index d8f0f6ec..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/OpenType/TableDirectoryEntry.php +++ /dev/null @@ -1,18 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib\OpenType; - -/** - * Open Type Table directory entry, the same as a TrueType one. - * - * @package php-font-lib - */ -class TableDirectoryEntry extends \FontLib\TrueType\TableDirectoryEntry { - -} diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/DirectoryEntry.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/DirectoryEntry.php deleted file mode 100644 index b41fdd0b..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/DirectoryEntry.php +++ /dev/null @@ -1,130 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ -namespace FontLib\Table; - -use FontLib\TrueType\File; -use FontLib\Font; -use FontLib\BinaryStream; - -/** - * Generic Font table directory entry. - * - * @package php-font-lib - */ -class DirectoryEntry extends BinaryStream { - /** - * @var File - */ - protected $font; - - /** - * @var Table - */ - protected $font_table; - - public $entryLength = 4; - - public $tag; - public $checksum; - public $offset; - public $length; - - protected $origF; - - /** - * @param string $data - * - * @return int - */ - static function computeChecksum($data) { - $len = mb_strlen($data, '8bit'); - $mod = $len % 4; - - if ($mod) { - $data = str_pad($data, $len + (4 - $mod), "\0"); - } - - $table = unpack("N*", $data); - return array_sum($table); - } - - function __construct(File $font) { - $this->font = $font; - $this->f = $font->f; - } - - function parse() { - $this->tag = $this->font->read(4); - } - - function open($filename, $mode = self::modeRead) { - // void - } - - function setTable(Table $font_table) { - $this->font_table = $font_table; - } - - function encode($entry_offset) { - Font::d("\n==== $this->tag ===="); - //Font::d("Entry offset = $entry_offset"); - - $data = $this->font_table; - $font = $this->font; - - $table_offset = $font->pos(); - $this->offset = $table_offset; - $table_length = $data->encode(); - - $font->seek($table_offset + $table_length); - $pad = 0; - $mod = $table_length % 4; - if ($mod != 0) { - $pad = 4 - $mod; - $font->write(str_pad("", $pad, "\0"), $pad); - } - - $font->seek($table_offset); - $table_data = $font->read($table_length); - - $font->seek($entry_offset); - - $font->write($this->tag, 4); - $font->writeUInt32(self::computeChecksum($table_data)); - $font->writeUInt32($table_offset); - $font->writeUInt32($table_length); - - Font::d("Bytes written = $table_length"); - - $font->seek($table_offset + $table_length + $pad); - } - - /** - * @return File - */ - function getFont() { - return $this->font; - } - - function startRead() { - $this->font->seek($this->offset); - } - - function endRead() { - // - } - - function startWrite() { - $this->font->seek($this->offset); - } - - function endWrite() { - // - } -} - diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Table.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Table.php deleted file mode 100644 index 57328dd5..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Table.php +++ /dev/null @@ -1,93 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ -namespace FontLib\Table; - -use FontLib\TrueType\File; -use FontLib\Font; -use FontLib\BinaryStream; - -/** - * Generic font table. - * - * @package php-font-lib - */ -class Table extends BinaryStream { - /** - * @var DirectoryEntry - */ - protected $entry; - protected $def = array(); - - public $data; - - final public function __construct(DirectoryEntry $entry) { - $this->entry = $entry; - $entry->setTable($this); - } - - /** - * @return File - */ - public function getFont() { - return $this->entry->getFont(); - } - - protected function _encode() { - if (empty($this->data)) { - Font::d(" >> Table is empty"); - - return 0; - } - - return $this->getFont()->pack($this->def, $this->data); - } - - protected function _parse() { - $this->data = $this->getFont()->unpack($this->def); - } - - protected function _parseRaw() { - $this->data = $this->getFont()->read($this->entry->length); - } - - protected function _encodeRaw() { - return $this->getFont()->write($this->data, $this->entry->length); - } - - public function toHTML() { - return "
    " . var_export($this->data, true) . "
    "; - } - - final public function encode() { - $this->entry->startWrite(); - - if (false && empty($this->def)) { - $length = $this->_encodeRaw(); - } - else { - $length = $this->_encode(); - } - - $this->entry->endWrite(); - - return $length; - } - - final public function parse() { - $this->entry->startRead(); - - if (false && empty($this->def)) { - $this->_parseRaw(); - } - else { - $this->_parse(); - } - - $this->entry->endRead(); - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/cmap.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/cmap.php deleted file mode 100644 index 02788efc..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/cmap.php +++ /dev/null @@ -1,381 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib\Table\Type; -use FontLib\Table\Table; - -/** - * `cmap` font table. - * - * @package php-font-lib - */ -class cmap extends Table { - private static $header_format = array( - "version" => self::uint16, - "numberSubtables" => self::uint16, - ); - - private static $subtable_header_format = array( - "platformID" => self::uint16, - "platformSpecificID" => self::uint16, - "offset" => self::uint32, - ); - - private static $subtable_v2_format = array( - "length" => self::uint16, - "language" => self::uint16 - ); - - private static $subtable_v2_format_subheader = array( - "firstCode" => self::uint16, - "entryCount" => self::uint16, - "idDelta" => self::int16, - "idRangeOffset" => self::uint16 - ); - - private static $subtable_v4_format = array( - "length" => self::uint16, - "language" => self::uint16, - "segCountX2" => self::uint16, - "searchRange" => self::uint16, - "entrySelector" => self::uint16, - "rangeShift" => self::uint16, - ); - - private static $subtable_v12_format = array( - "length" => self::uint32, - "language" => self::uint32, - "ngroups" => self::uint32 - ); - - protected function _parse() { - $font = $this->getFont(); - - $cmap_offset = $font->pos(); - - $data = $font->unpack(self::$header_format); - - $subtables = array(); - for ($i = 0; $i < $data["numberSubtables"]; $i++) { - $subtables[] = $font->unpack(self::$subtable_header_format); - } - - $data["subtables"] = $subtables; - - foreach ($data["subtables"] as $i => &$subtable) { - $font->seek($cmap_offset + $subtable["offset"]); - - $subtable["format"] = $font->readUInt16(); - - switch ($subtable["format"]) { - case 0: - case 6: - case 8: - case 10: - case 13: - case 14: - unset($data["subtables"][$i]); - $data["numberSubtables"]--; - continue 2; - - case 2: - $subtable += $font->unpack(self::$subtable_v2_format); - - $subHeaderKeys = array_map(function($val) { return $val / 8; }, $font->readUInt16Many(256)); - $subHeaders = array(); - - $glyphIdArray = array(); - $maxSubHeaderIndex = max($subHeaderKeys); - for ($i = 0; $i <= $maxSubHeaderIndex; $i++) { - $subHeader = $font->unpack(self::$subtable_v2_format_subheader); - $offset = $font->pos(); - $subHeader["glyphIdArrayOffset"] = $offset + $subHeader["idRangeOffset"] - 2; - $subHeaders[$i] = $subHeader; - - if (!\array_key_exists($subHeader["glyphIdArrayOffset"], $glyphIdArray) || count($glyphIdArray[$subHeader["glyphIdArrayOffset"]]) < $subHeader["entryCount"]) { - $font->seek($subHeader["glyphIdArrayOffset"]); - $glyphIdArray[$subHeader["glyphIdArrayOffset"]] = $font->readUInt16Many($subHeader["entryCount"]); - $font->seek($offset); - } - } - - $glyphIndexArray = array(); - foreach ($subHeaderKeys as $highByte => $subHeaderKey) { - $subHeader = $subHeaders[$subHeaderKey]; - if ($subHeaderKey === 0) { - $c = $highByte; - if ($c < $subHeader["firstCode"] || $c >= ($subHeader["firstCode"] + $subHeader["entryCount"])) { - $glyphIndexArray[$c] = 0; - continue; - } - $c = $highByte; - $index = $c - $subHeader["firstCode"]; - $glyphId = $glyphIdArray[$subHeader["glyphIdArrayOffset"]][$index]; - if ($glyphId === 0) { - $glyphIndexArray[$c] = 0; - } else { - $glyphIndexArray[$c] = ($glyphId + $subHeader["idDelta"]) & 0xFFFF; - } - } else { - for ($index = 0; $index < $subHeader["entryCount"]; $index++) { - $c = null; - $lowByte = $subHeader["firstCode"] + $index; - $c = (($highByte & 0xFF) << 8) | ($lowByte & 0xFF); - $glyphId = $glyphIdArray[$subHeader["glyphIdArrayOffset"]][$index]; - if ($glyphId === 0) { - $glyphIndexArray[$c] = 0; - } else { - $glyphIndexArray[$c] = ($glyphId + $subHeader["idDelta"]) & 0xFFFF; - } - } - } - } - - $subtable += array( - "subHeaderKeys" => $subHeaderKeys, - "subHeaders" => $subHeaders, - "glyphIdArray" => $glyphIdArray, - "glyphIndexArray" => $glyphIndexArray - ); - - break; - - case 4: - $subtable += $font->unpack(self::$subtable_v4_format); - - $segCount = $subtable["segCountX2"] / 2; - $subtable["segCount"] = $segCount; - - $endCode = $font->readUInt16Many($segCount); - - $font->readUInt16(); // reservedPad - - $startCode = $font->readUInt16Many($segCount); - $idDelta = $font->readInt16Many($segCount); - - $ro_start = $font->pos(); - $idRangeOffset = $font->readUInt16Many($segCount); - - $glyphIndexArray = array(); - for ($i = 0; $i < $segCount; $i++) { - $c1 = $startCode[$i]; - $c2 = $endCode[$i]; - $d = $idDelta[$i]; - $ro = $idRangeOffset[$i]; - - if ($ro > 0) { - $font->seek($subtable["offset"] + 2 * $i + $ro); - } - - for ($c = $c1; $c <= $c2; $c++) { - if ($c === 0xFFFF) { - continue; - } - - if ($ro == 0) { - $gid = ($c + $d) & 0xFFFF; - } - else { - $offset = ($c - $c1) * 2 + $ro; - $offset = $ro_start + 2 * $i + $offset; - - $gid = 0; - if ($font->seek($offset) === true) { - $gid = $font->readUInt16(); - } - - if ($gid != 0) { - $gid = ($gid + $d) & 0xFFFF; - } - } - - if ($gid >= 0) { - $glyphIndexArray[$c] = $gid; - } - } - } - - $subtable += array( - "endCode" => $endCode, - "startCode" => $startCode, - "idDelta" => $idDelta, - "idRangeOffset" => $idRangeOffset, - "glyphIndexArray" => $glyphIndexArray - ); - break; - - case 12: - $font->readUInt16(); - - $subtable += $font->unpack(self::$subtable_v12_format); - - $glyphIndexArray = array(); - $endCodes = array(); - $startCodes = array(); - - for ($p = 0; $p < $subtable['ngroups']; $p++) { - - $startCode = $startCodes[] = $font->readUInt32(); - $endCode = $endCodes[] = $font->readUInt32(); - $startGlyphCode = $font->readUInt32(); - - for ($c = $startCode; $c <= $endCode; $c++) { - $glyphIndexArray[$c] = $startGlyphCode; - $startGlyphCode++; - } - } - - $subtable += array( - "startCode" => $startCodes, - "endCode" => $endCodes, - "glyphIndexArray" => $glyphIndexArray, - ); - break; - } - } - - $this->data = $data; - } - - function _encode() { - $font = $this->getFont(); - - $subset = $font->getSubset(); - $glyphIndexArray = $font->getUnicodeCharMap(); - - $newGlyphIndexArray = array(); - foreach ($glyphIndexArray as $code => $gid) { - $new_gid = array_search($gid, $subset); - if ($new_gid !== false) { - $newGlyphIndexArray[$code] = $new_gid; - } - } - - ksort($newGlyphIndexArray); // Sort by char code - - $segments = array(); - - $i = -1; - $prevCode = 0xFFFF; - $prevGid = 0xFFFF; - - foreach ($newGlyphIndexArray as $code => $gid) { - if ( - $prevCode + 1 != $code || - $prevGid + 1 != $gid - ) { - $i++; - $segments[$i] = array(); - } - - $segments[$i][] = array($code, $gid); - - $prevCode = $code; - $prevGid = $gid; - } - - $segments[][] = array(0xFFFF, null); - - $startCode = array(); - $endCode = array(); - $idDelta = array(); - - foreach ($segments as $codes) { - $start = reset($codes); - $end = end($codes); - - $startCode[] = $start[0]; - $endCode[] = $end[0]; - $idDelta[] = $start[1] - $start[0]; - } - - $segCount = count($startCode); - $idRangeOffset = array_fill(0, $segCount, 0); - - $searchRange = 1; - $entrySelector = 0; - while ($searchRange * 2 <= $segCount) { - $searchRange *= 2; - $entrySelector++; - } - $searchRange *= 2; - $rangeShift = $segCount * 2 - $searchRange; - - $subtables = array( - array( - // header - "platformID" => 3, // Unicode - "platformSpecificID" => 1, - "offset" => null, - - // subtable - "format" => 4, - "length" => null, - "language" => 0, - "segCount" => $segCount, - "segCountX2" => $segCount * 2, - "searchRange" => $searchRange, - "entrySelector" => $entrySelector, - "rangeShift" => $rangeShift, - "startCode" => $startCode, - "endCode" => $endCode, - "idDelta" => $idDelta, - "idRangeOffset" => $idRangeOffset, - "glyphIndexArray" => $newGlyphIndexArray, - ) - ); - - $data = array( - "version" => 0, - "numberSubtables" => count($subtables), - "subtables" => $subtables, - ); - - $length = $font->pack(self::$header_format, $data); - - $subtable_headers_size = $data["numberSubtables"] * 8; // size of self::$subtable_header_format - $subtable_headers_offset = $font->pos(); - - $length += $font->write(str_repeat("\0", $subtable_headers_size), $subtable_headers_size); - - // write subtables data - foreach ($data["subtables"] as $i => $subtable) { - $length_before = $length; - $data["subtables"][$i]["offset"] = $length; - - $length += $font->writeUInt16($subtable["format"]); - - $before_subheader = $font->pos(); - $length += $font->pack(self::$subtable_v4_format, $subtable); - - $segCount = $subtable["segCount"]; - $length += $font->w(array(self::uint16, $segCount), $subtable["endCode"]); - $length += $font->writeUInt16(0); // reservedPad - $length += $font->w(array(self::uint16, $segCount), $subtable["startCode"]); - $length += $font->w(array(self::int16, $segCount), $subtable["idDelta"]); - $length += $font->w(array(self::uint16, $segCount), $subtable["idRangeOffset"]); - $length += $font->w(array(self::uint16, $segCount), array_values($subtable["glyphIndexArray"])); - - $after_subtable = $font->pos(); - - $subtable["length"] = $length - $length_before; - $font->seek($before_subheader); - $font->pack(self::$subtable_v4_format, $subtable); - - $font->seek($after_subtable); - } - - // write subtables headers - $font->seek($subtable_headers_offset); - foreach ($data["subtables"] as $subtable) { - $font->pack(self::$subtable_header_format, $subtable); - } - - return $length; - } -} diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/cvt.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/cvt.php deleted file mode 100644 index cec9ee41..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/cvt.php +++ /dev/null @@ -1,27 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib\Table\Type; -use FontLib\Table\Table; - -/** - * `cvt ` font table. - * - * @package php-font-lib - */ -class cvt extends Table { - private $rawData; - protected function _parse() { - $font = $this->getFont(); - $font->seek($this->entry->offset); - $this->rawData = $font->read($this->entry->length); - } - function _encode() { - return $this->getFont()->write($this->rawData, $this->entry->length); - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/fpgm.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/fpgm.php deleted file mode 100644 index 3c37c18a..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/fpgm.php +++ /dev/null @@ -1,27 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib\Table\Type; -use FontLib\Table\Table; - -/** - * `fpgm` font table. - * - * @package php-font-lib - */ -class fpgm extends Table { - private $rawData; - protected function _parse() { - $font = $this->getFont(); - $font->seek($this->entry->offset); - $this->rawData = $font->read($this->entry->length); - } - function _encode() { - return $this->getFont()->write($this->rawData, $this->entry->length); - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/glyf.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/glyf.php deleted file mode 100644 index 8e47f147..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/glyf.php +++ /dev/null @@ -1,166 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib\Table\Type; - -use FontLib\Table\Table; -use FontLib\Glyph\Outline; -use FontLib\Glyph\OutlineSimple; - -/** - * `glyf` font table. - * - * @package php-font-lib - * @property Outline[] $data - */ -class glyf extends Table { - protected function _parse() { - $font = $this->getFont(); - $offset = $font->pos(); - - $loca = $font->getData("loca"); - $real_loca = array_slice($loca, 0, -1); // Not the last dummy loca entry - - $data = array(); - - foreach ($real_loca as $gid => $location) { - $_offset = $offset + $loca[$gid]; - $_size = $loca[$gid + 1] - $loca[$gid]; - $data[$gid] = Outline::init($this, $_offset, $_size, $font); - } - - $this->data = $data; - } - - public function getGlyphIDs($gids = array()) { - $glyphIDs = array(); - - foreach ($gids as $_gid) { - $_glyph = $this->data[$_gid]; - $glyphIDs = array_merge($glyphIDs, $_glyph->getGlyphIDs()); - } - - return array_unique(array_merge($gids, $glyphIDs)); - } - - public function toHTML($n = 500) { - $max = 160; - $font = $this->getFont(); - - $head = $font->getData("head"); - $head_json = json_encode($head); - - $os2 = $font->getData("OS/2"); - $os2_json = json_encode($os2); - - $hmtx = $font->getData("hmtx"); - $hmtx_json = json_encode($hmtx); - - $names = $font->getData("post", "names"); - $glyphIndexArray = array_flip($font->getUnicodeCharMap()); - - $width = (abs($head["xMin"]) + $head["xMax"]); - $height = (abs($head["yMin"]) + $head["yMax"]); - - $ratio = 1; - if ($width > $max || $height > $max) { - $ratio = max($width, $height) / $max; - $width = round($width / $ratio); - $height = round($height / $ratio); - } - - $s = "

    " . "Only the first $n simple glyphs are shown (" . count($this->data) . " total) -
    Simple glyph
    -
    Composite glyph
    - Zoom: -

    - "; - - foreach ($this->data as $g => $glyph) { - if ($n-- <= 0) { - break; - } - - $glyph->parseData(); - - $shape = array( - "SVGContours" => $glyph->getSVGContours(), - "xMin" => $glyph->xMin, - "yMin" => $glyph->yMin, - "xMax" => $glyph->xMax, - "yMax" => $glyph->yMax, - ); - $shape_json = json_encode($shape); - - $type = ($glyph instanceof OutlineSimple ? "simple" : "composite"); - $char = isset($glyphIndexArray[$g]) ? $glyphIndexArray[$g] : 0; - $name = isset($names[$g]) ? $names[$g] : sprintf("uni%04x", $char); - $char = $char ? "&#{$glyphIndexArray[$g]};" : ""; - - if ($char === "" && empty($shape["SVGContours"])) { - $n++; - continue; - } - - $s .= "
    - $g - $char - $name - "; - - if ($type == "composite") { - foreach ($glyph->getGlyphIDs() as $_id) { - $s .= "$_id "; - } - } - - $s .= "
    - -
    - "; - } - - return $s; - } - - - protected function _encode() { - $font = $this->getFont(); - $subset = $font->getSubset(); - $data = $this->data; - - $loca = array(); - - $length = 0; - foreach ($subset as $gid) { - $loca[] = $length; - - $bytes = $data[$gid]->encode(); - - $pad = 0; - $mod = $bytes % 4; - if ($mod != 0) { - $pad = 4 - $mod; - $font->write(str_pad("", $pad, "\0"), $pad); - } - $length += $bytes + $pad; - } - - $loca[] = $length; // dummy loca - $font->getTableObject("loca")->data = $loca; - - return $length; - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/head.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/head.php deleted file mode 100644 index 06865081..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/head.php +++ /dev/null @@ -1,51 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib\Table\Type; -use FontLib\Table\Table; -use Exception; - -/** - * `head` font table. - * - * @package php-font-lib - */ -class head extends Table { - protected $def = array( - "tableVersion" => self::Fixed, - "fontRevision" => self::Fixed, - "checkSumAdjustment" => self::uint32, - "magicNumber" => self::uint32, - "flags" => self::uint16, - "unitsPerEm" => self::uint16, - "created" => self::longDateTime, - "modified" => self::longDateTime, - "xMin" => self::FWord, - "yMin" => self::FWord, - "xMax" => self::FWord, - "yMax" => self::FWord, - "macStyle" => self::uint16, - "lowestRecPPEM" => self::uint16, - "fontDirectionHint" => self::int16, - "indexToLocFormat" => self::int16, - "glyphDataFormat" => self::int16, - ); - - protected function _parse() { - parent::_parse(); - - if ($this->data["magicNumber"] != 0x5F0F3CF5) { - throw new Exception("Incorrect magic number (" . dechex($this->data["magicNumber"]) . ")"); - } - } - - function _encode() { - $this->data["checkSumAdjustment"] = 0; - return parent::_encode(); - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/hhea.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/hhea.php deleted file mode 100644 index cd69040e..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/hhea.php +++ /dev/null @@ -1,44 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib\Table\Type; -use FontLib\Table\Table; - -/** - * `hhea` font table. - * - * @package php-font-lib - */ -class hhea extends Table { - protected $def = array( - "version" => self::Fixed, - "ascent" => self::FWord, - "descent" => self::FWord, - "lineGap" => self::FWord, - "advanceWidthMax" => self::uFWord, - "minLeftSideBearing" => self::FWord, - "minRightSideBearing" => self::FWord, - "xMaxExtent" => self::FWord, - "caretSlopeRise" => self::int16, - "caretSlopeRun" => self::int16, - "caretOffset" => self::FWord, - self::int16, - self::int16, - self::int16, - self::int16, - "metricDataFormat" => self::int16, - "numOfLongHorMetrics" => self::uint16, - ); - - function _encode() { - $font = $this->getFont(); - $this->data["numOfLongHorMetrics"] = count($font->getSubset()); - - return parent::_encode(); - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/hmtx.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/hmtx.php deleted file mode 100644 index ef985bb0..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/hmtx.php +++ /dev/null @@ -1,65 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib\Table\Type; -use FontLib\Table\Table; - -/** - * `hmtx` font table. - * - * @package php-font-lib - */ -class hmtx extends Table { - protected function _parse() { - $font = $this->getFont(); - $offset = $font->pos(); - - $numOfLongHorMetrics = $font->getData("hhea", "numOfLongHorMetrics"); - $numGlyphs = $font->getData("maxp", "numGlyphs"); - - $font->seek($offset); - - $data = array(); - $metrics = $font->readUInt16Many($numOfLongHorMetrics * 2); - for ($gid = 0, $mid = 0; $gid < $numOfLongHorMetrics; $gid++) { - $advanceWidth = isset($metrics[$mid]) ? $metrics[$mid] : 0; - $mid += 1; - $leftSideBearing = isset($metrics[$mid]) ? $metrics[$mid] : 0; - $mid += 1; - $data[$gid] = array($advanceWidth, $leftSideBearing); - } - - if ($numOfLongHorMetrics < $numGlyphs) { - $lastWidth = end($data)[0]; - $numLeft = $numGlyphs - $numOfLongHorMetrics; - $metrics = $font->readUInt16Many($numLeft); - for($i = 0; $i < $numLeft; $i++) { - $gid = $numOfLongHorMetrics + $i; - $leftSideBearing = isset($metrics[$i]) ? $metrics[$i] : 0; - $data[$gid] = array($lastWidth, $leftSideBearing); - } - } - - $this->data = $data; - } - - protected function _encode() { - $font = $this->getFont(); - $subset = $font->getSubset(); - $data = $this->data; - - $length = 0; - - foreach ($subset as $gid) { - $length += $font->writeUInt16($data[$gid][0]); - $length += $font->writeUInt16($data[$gid][1]); - } - - return $length; - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/kern.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/kern.php deleted file mode 100644 index 538d8b2c..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/kern.php +++ /dev/null @@ -1,80 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib\Table\Type; -use FontLib\Table\Table; - -/** - * `kern` font table. - * - * @package php-font-lib - */ -class kern extends Table { - protected function _parse() { - $font = $this->getFont(); - - $data = $font->unpack(array( - "version" => self::uint16, - "nTables" => self::uint16, - - // only the first subtable will be parsed - "subtableVersion" => self::uint16, - "length" => self::uint16, - "coverage" => self::uint16, - )); - - $data["format"] = ($data["coverage"] >> 8); - - $subtable = array(); - - switch ($data["format"]) { - case 0: - $subtable = $font->unpack(array( - "nPairs" => self::uint16, - "searchRange" => self::uint16, - "entrySelector" => self::uint16, - "rangeShift" => self::uint16, - )); - - $pairs = array(); - $tree = array(); - - $values = $font->readUInt16Many($subtable["nPairs"] * 3); - for ($i = 0, $idx = 0; $i < $subtable["nPairs"]; $i++) { - $left = $values[$idx++]; - $right = $values[$idx++]; - $value = $values[$idx++]; - - if ($value >= 0x8000) { - $value -= 0x10000; - } - - $pairs[] = array( - "left" => $left, - "right" => $right, - "value" => $value, - ); - - $tree[$left][$right] = $value; - } - - //$subtable["pairs"] = $pairs; - $subtable["tree"] = $tree; - break; - - case 1: - case 2: - case 3: - break; - } - - $data["subtable"] = $subtable; - - $this->data = $data; - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/loca.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/loca.php deleted file mode 100644 index 25453f7b..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/loca.php +++ /dev/null @@ -1,80 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib\Table\Type; -use FontLib\Table\Table; - -/** - * `loca` font table. - * - * @package php-font-lib - */ -class loca extends Table { - protected function _parse() { - $font = $this->getFont(); - $offset = $font->pos(); - - $indexToLocFormat = $font->getData("head", "indexToLocFormat"); - $numGlyphs = $font->getData("maxp", "numGlyphs"); - - $font->seek($offset); - - $data = array(); - - // 2 bytes - if ($indexToLocFormat == 0) { - $d = $font->read(($numGlyphs + 1) * 2); - $loc = unpack("n*", $d); - - for ($i = 0; $i <= $numGlyphs; $i++) { - $data[] = isset($loc[$i + 1]) ? $loc[$i + 1] * 2 : 0; - } - } - - // 4 bytes - else { - if ($indexToLocFormat == 1) { - $d = $font->read(($numGlyphs + 1) * 4); - $loc = unpack("N*", $d); - - for ($i = 0; $i <= $numGlyphs; $i++) { - $data[] = isset($loc[$i + 1]) ? $loc[$i + 1] : 0; - } - } - } - - $this->data = $data; - } - - function _encode() { - $font = $this->getFont(); - $data = $this->data; - - $indexToLocFormat = $font->getData("head", "indexToLocFormat"); - $numGlyphs = $font->getData("maxp", "numGlyphs"); - $length = 0; - - // 2 bytes - if ($indexToLocFormat == 0) { - for ($i = 0; $i <= $numGlyphs; $i++) { - $length += $font->writeUInt16($data[$i] / 2); - } - } - - // 4 bytes - else { - if ($indexToLocFormat == 1) { - for ($i = 0; $i <= $numGlyphs; $i++) { - $length += $font->writeUInt32($data[$i]); - } - } - } - - return $length; - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/maxp.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/maxp.php deleted file mode 100644 index c69da3cd..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/maxp.php +++ /dev/null @@ -1,42 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib\Table\Type; -use FontLib\Table\Table; - -/** - * `maxp` font table. - * - * @package php-font-lib - */ -class maxp extends Table { - protected $def = array( - "version" => self::Fixed, - "numGlyphs" => self::uint16, - "maxPoints" => self::uint16, - "maxContours" => self::uint16, - "maxComponentPoints" => self::uint16, - "maxComponentContours" => self::uint16, - "maxZones" => self::uint16, - "maxTwilightPoints" => self::uint16, - "maxStorage" => self::uint16, - "maxFunctionDefs" => self::uint16, - "maxInstructionDefs" => self::uint16, - "maxStackElements" => self::uint16, - "maxSizeOfInstructions" => self::uint16, - "maxComponentElements" => self::uint16, - "maxComponentDepth" => self::uint16, - ); - - function _encode() { - $font = $this->getFont(); - $this->data["numGlyphs"] = count($font->getSubset()); - - return parent::_encode(); - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/name.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/name.php deleted file mode 100644 index acdda7a7..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/name.php +++ /dev/null @@ -1,242 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib\Table\Type; - -use FontLib\Table\Table; -use FontLib\Font; - -/** - * `name` font table. - * - * @package php-font-lib - */ -class name extends Table { - private static $header_format = array( - "format" => self::uint16, - "count" => self::uint16, - "stringOffset" => self::uint16, - ); - - const NAME_COPYRIGHT = 0; - const NAME_NAME = 1; - const NAME_SUBFAMILY = 2; - const NAME_SUBFAMILY_ID = 3; - const NAME_FULL_NAME = 4; - const NAME_VERSION = 5; - const NAME_POSTSCRIPT_NAME = 6; - const NAME_TRADEMARK = 7; - const NAME_MANUFACTURER = 8; - const NAME_DESIGNER = 9; - const NAME_DESCRIPTION = 10; - const NAME_VENDOR_URL = 11; - const NAME_DESIGNER_URL = 12; - const NAME_LICENSE = 13; - const NAME_LICENSE_URL = 14; - const NAME_PREFERRE_FAMILY = 16; - const NAME_PREFERRE_SUBFAMILY = 17; - const NAME_COMPAT_FULL_NAME = 18; - const NAME_SAMPLE_TEXT = 19; - - static $nameIdCodes = array( - 0 => "Copyright", - 1 => "FontName", - 2 => "FontSubfamily", - 3 => "UniqueID", - 4 => "FullName", - 5 => "Version", - 6 => "PostScriptName", - 7 => "Trademark", - 8 => "Manufacturer", - 9 => "Designer", - 10 => "Description", - 11 => "FontVendorURL", - 12 => "FontDesignerURL", - 13 => "LicenseDescription", - 14 => "LicenseURL", - // 15 - 16 => "PreferredFamily", - 17 => "PreferredSubfamily", - 18 => "CompatibleFullName", - 19 => "SampleText", - ); - - static $platforms = array( - 0 => "Unicode", - 1 => "Macintosh", - // 2 => Reserved - 3 => "Microsoft", - ); - - static $platformSpecific = array( - // Unicode - 0 => array( - 0 => "Default semantics", - 1 => "Version 1.1 semantics", - 2 => "ISO 10646 1993 semantics (deprecated)", - 3 => "Unicode 2.0 or later semantics", - ), - - // Macintosh - 1 => array( - 0 => "Roman", - 1 => "Japanese", - 2 => "Traditional Chinese", - 3 => "Korean", - 4 => "Arabic", - 5 => "Hebrew", - 6 => "Greek", - 7 => "Russian", - 8 => "RSymbol", - 9 => "Devanagari", - 10 => "Gurmukhi", - 11 => "Gujarati", - 12 => "Oriya", - 13 => "Bengali", - 14 => "Tamil", - 15 => "Telugu", - 16 => "Kannada", - 17 => "Malayalam", - 18 => "Sinhalese", - 19 => "Burmese", - 20 => "Khmer", - 21 => "Thai", - 22 => "Laotian", - 23 => "Georgian", - 24 => "Armenian", - 25 => "Simplified Chinese", - 26 => "Tibetan", - 27 => "Mongolian", - 28 => "Geez", - 29 => "Slavic", - 30 => "Vietnamese", - 31 => "Sindhi", - ), - - // Microsoft - 3 => array( - 0 => "Symbol", - 1 => "Unicode BMP (UCS-2)", - 2 => "ShiftJIS", - 3 => "PRC", - 4 => "Big5", - 5 => "Wansung", - 6 => "Johab", - // 7 => Reserved - // 8 => Reserved - // 9 => Reserved - 10 => "Unicode UCS-4", - ), - ); - - protected function _parse() { - $font = $this->getFont(); - - $tableOffset = $font->pos(); - - $data = $font->unpack(self::$header_format); - - $records = array(); - for ($i = 0; $i < $data["count"]; $i++) { - $record = new nameRecord(); - $record_data = $font->unpack(nameRecord::$format); - $record->map($record_data); - - $records[] = $record; - } - - $system_encodings = mb_list_encodings(); - $system_encodings = array_change_key_case(array_fill_keys($system_encodings, true), CASE_UPPER); - - $names = array(); - foreach ($records as $record) { - $font->seek($tableOffset + $data["stringOffset"] + $record->offset); - $record->stringRaw = $font->read($record->length); - - $encoding = null; - switch ($record->platformID) { - case 3: - switch ($record->platformSpecificID) { - case 2: - if (\array_key_exists("SJIS", $system_encodings)) { - $encoding = "SJIS"; - } - break; - case 3: - if (\array_key_exists("GB18030", $system_encodings)) { - $encoding = "GB18030"; - } - break; - case 4: - if (\array_key_exists("BIG-5", $system_encodings)) { - $encoding = "BIG-5"; - } - break; - case 5: - if (\array_key_exists("UHC", $system_encodings)) { - $encoding = "UHC"; - } - break; - } - break; - } - if ($encoding === null) { - $encoding = "UTF-16"; - } - - $record->string = mb_convert_encoding($record->stringRaw, "UTF-8", $encoding); - if (strpos($record->string, "\0") !== false) { - $record->string = str_replace("\0", "", $record->string); - } - $names[$record->nameID] = $record; - } - - $data["records"] = $names; - - $this->data = $data; - } - - protected function _encode() { - $font = $this->getFont(); - - /** @var nameRecord[] $records */ - $records = $this->data["records"]; - $count_records = \count($records); - - $this->data["count"] = $count_records; - $this->data["stringOffset"] = 6 + ($count_records * 12); // 6 => uint16 * 3, 12 => sizeof self::$record_format - - $length = $font->pack(self::$header_format, $this->data); - - $offset = 0; - - /** @var nameRecord[] $records_to_encode */ - $records_to_encode = array(); - foreach ($records as $record) { - $encoded_record = new nameRecord(); - $encoded_record->platformID = 3; - $encoded_record->platformSpecificID = 1; - $encoded_record->languageID = $record->languageID; - $encoded_record->nameID = $record->nameID; - $encoded_record->offset = $offset; - $encoded_record->string = $record->string; - $encoded_record->length = mb_strlen($encoded_record->getUTF16(), "8bit"); - $records_to_encode[] = $encoded_record; - - $offset += $encoded_record->length; - $length += $font->pack(nameRecord::$format, (array)$encoded_record); - } - - foreach ($records_to_encode as $record) { - $str = $record->getUTF16(); - $length += $font->write($str, mb_strlen($str, "8bit")); - } - - return $length; - } -} diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/nameRecord.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/nameRecord.php deleted file mode 100644 index fe22ba30..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/nameRecord.php +++ /dev/null @@ -1,54 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ -namespace FontLib\Table\Type; - -use FontLib\Font; -use FontLib\BinaryStream; - -/** - * Font table name record. - * - * @package php-font-lib - */ -class nameRecord extends BinaryStream { - public $platformID; - public $platformSpecificID; - public $languageID; - public $nameID; - public $length; - public $offset; - public $string; - public $stringRaw; - - public static $format = array( - "platformID" => self::uint16, - "platformSpecificID" => self::uint16, - "languageID" => self::uint16, - "nameID" => self::uint16, - "length" => self::uint16, - "offset" => self::uint16, - ); - - public function map($data) { - foreach ($data as $key => $value) { - $this->$key = $value; - } - } - - public function getUTF8() { - return $this->string; - } - - public function getUTF16() { - return Font::UTF8ToUTF16($this->string); - } - - function __toString() { - return $this->string; - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/os2.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/os2.php deleted file mode 100644 index 276de0de..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/os2.php +++ /dev/null @@ -1,47 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib\Table\Type; -use FontLib\Table\Table; - -/** - * `OS/2` font table. - * - * @package php-font-lib - */ -class os2 extends Table { - protected $def = array( - "version" => self::uint16, - "xAvgCharWidth" => self::int16, - "usWeightClass" => self::uint16, - "usWidthClass" => self::uint16, - "fsType" => self::int16, - "ySubscriptXSize" => self::int16, - "ySubscriptYSize" => self::int16, - "ySubscriptXOffset" => self::int16, - "ySubscriptYOffset" => self::int16, - "ySuperscriptXSize" => self::int16, - "ySuperscriptYSize" => self::int16, - "ySuperscriptXOffset" => self::int16, - "ySuperscriptYOffset" => self::int16, - "yStrikeoutSize" => self::int16, - "yStrikeoutPosition" => self::int16, - "sFamilyClass" => self::int16, - "panose" => array(self::uint8, 10), - "ulCharRange" => array(self::uint32, 4), - "achVendID" => array(self::char, 4), - "fsSelection" => self::uint16, - "fsFirstCharIndex" => self::uint16, - "fsLastCharIndex" => self::uint16, - "typoAscender" => self::int16, - "typoDescender" => self::int16, - "typoLineGap" => self::int16, - "winAscent" => self::int16, - "winDescent" => self::int16, - ); -} \ No newline at end of file diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/post.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/post.php deleted file mode 100644 index 1160c0b1..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/post.php +++ /dev/null @@ -1,143 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib\Table\Type; -use FontLib\Table\Table; -use FontLib\TrueType\File; - -/** - * `post` font table. - * - * @package php-font-lib - */ -class post extends Table { - protected $def = array( - "format" => self::Fixed, - "italicAngle" => self::Fixed, - "underlinePosition" => self::FWord, - "underlineThickness" => self::FWord, - "isFixedPitch" => self::uint32, - "minMemType42" => self::uint32, - "maxMemType42" => self::uint32, - "minMemType1" => self::uint32, - "maxMemType1" => self::uint32, - ); - - protected function _parse() { - $font = $this->getFont(); - $data = $font->unpack($this->def); - - $names = array(); - - switch ($data["format"]) { - case 1: - $names = File::$macCharNames; - break; - - case 2: - $data["numberOfGlyphs"] = $font->readUInt16(); - - $glyphNameIndex = $font->readUInt16Many($data["numberOfGlyphs"]); - - $data["glyphNameIndex"] = $glyphNameIndex; - - $namesPascal = array(); - for ($i = 0; $i < $data["numberOfGlyphs"]; $i++) { - $len = $font->readUInt8(); - $namesPascal[] = $font->read($len); - } - - foreach ($glyphNameIndex as $g => $index) { - if ($index < 258) { - $names[$g] = File::$macCharNames[$index]; - } - else { - if (array_key_exists($index - 258, $namesPascal)) { - $names[$g] = $namesPascal[$index - 258]; - } - } - } - - break; - - case 2.5: - // TODO - break; - - case 3: - // nothing - break; - - case 4: - // TODO - break; - } - - $data["names"] = $names; - - $this->data = $data; - } - - function _encode() { - $font = $this->getFont(); - $data = $this->data; - $data["format"] = 3; - - $length = $font->pack($this->def, $data); - - return $length; - /* - $subset = $font->getSubset(); - - switch($data["format"]) { - case 1: - // nothing to do - break; - - case 2: - $old_names = $data["names"]; - - $glyphNameIndex = range(0, count($subset)); - - $names = array(); - foreach($subset as $gid) { - $names[] = $data["names"][$data["glyphNameIndex"][$gid]]; - } - - $numberOfGlyphs = count($names); - $length += $font->writeUInt16($numberOfGlyphs); - - foreach($glyphNameIndex as $gni) { - $length += $font->writeUInt16($gni); - } - - //$names = array_slice($names, 257); - foreach($names as $name) { - $len = strlen($name); - $length += $font->writeUInt8($len); - $length += $font->write($name, $len); - } - - break; - - case 2.5: - // TODO - break; - - case 3: - // nothing - break; - - case 4: - // TODO - break; - } - - return $length;*/ - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/prep.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/prep.php deleted file mode 100644 index c82c17d6..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/Table/Type/prep.php +++ /dev/null @@ -1,30 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib\Table\Type; - -use FontLib\Table\Table; - -/** - * `prep` font table. - * - * @package php-font-lib - */ -class prep extends Table -{ - private $rawData; - protected function _parse() { - $font = $this->getFont(); - $font->seek($this->entry->offset); - $this->rawData = $font->read($this->entry->length); - } - function _encode() { - return $this->getFont()->write($this->rawData, $this->entry->length); - } -} diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/TrueType/Collection.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/TrueType/Collection.php deleted file mode 100644 index a6afa4f2..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/TrueType/Collection.php +++ /dev/null @@ -1,100 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib\TrueType; - -use Countable; -use FontLib\BinaryStream; -use Iterator; -use OutOfBoundsException; - -/** - * TrueType collection font file. - * - * @package php-font-lib - */ -class Collection extends BinaryStream implements Iterator, Countable { - /** - * Current iterator position. - * - * @var integer - */ - private $position = 0; - - protected $collectionOffsets = array(); - protected $collection = array(); - protected $version; - protected $numFonts; - - function parse() { - if (isset($this->numFonts)) { - return; - } - - $this->read(4); // tag name - - $this->version = $this->readFixed(); - $this->numFonts = $this->readUInt32(); - - for ($i = 0; $i < $this->numFonts; $i++) { - $this->collectionOffsets[] = $this->readUInt32(); - } - } - - /** - * @param int $fontId - * - * @throws OutOfBoundsException - * @return File - */ - function getFont($fontId) { - $this->parse(); - - if (!isset($this->collectionOffsets[$fontId])) { - throw new OutOfBoundsException(); - } - - if (isset($this->collection[$fontId])) { - return $this->collection[$fontId]; - } - - $font = new File(); - $font->f = $this->f; - $font->setTableOffset($this->collectionOffsets[$fontId]); - - return $this->collection[$fontId] = $font; - } - - function current() { - return $this->getFont($this->position); - } - - function key() { - return $this->position; - } - - function next() { - return ++$this->position; - } - - function rewind() { - $this->position = 0; - } - - function valid() { - $this->parse(); - - return isset($this->collectionOffsets[$this->position]); - } - - function count() { - $this->parse(); - - return $this->numFonts; - } -} diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/TrueType/File.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/TrueType/File.php deleted file mode 100644 index b1c7cd87..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/TrueType/File.php +++ /dev/null @@ -1,591 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib\TrueType; - -use FontLib\AdobeFontMetrics; -use FontLib\Font; -use FontLib\BinaryStream; -use FontLib\Table\Table; -use FontLib\Table\DirectoryEntry; -use FontLib\Table\Type\glyf; -use FontLib\Table\Type\name; -use FontLib\Table\Type\nameRecord; - -/** - * TrueType font file. - * - * @package php-font-lib - */ -class File extends BinaryStream { - /** - * @var Header - */ - public $header = array(); - - private $tableOffset = 0; // Used for TTC - - private static $raw = false; - - protected $directory = array(); - protected $data = array(); - - protected $glyph_subset = array(); - - public $glyph_all = array(); - - static $macCharNames = array( - ".notdef", ".null", "CR", - "space", "exclam", "quotedbl", "numbersign", - "dollar", "percent", "ampersand", "quotesingle", - "parenleft", "parenright", "asterisk", "plus", - "comma", "hyphen", "period", "slash", - "zero", "one", "two", "three", - "four", "five", "six", "seven", - "eight", "nine", "colon", "semicolon", - "less", "equal", "greater", "question", - "at", "A", "B", "C", "D", "E", "F", "G", - "H", "I", "J", "K", "L", "M", "N", "O", - "P", "Q", "R", "S", "T", "U", "V", "W", - "X", "Y", "Z", "bracketleft", - "backslash", "bracketright", "asciicircum", "underscore", - "grave", "a", "b", "c", "d", "e", "f", "g", - "h", "i", "j", "k", "l", "m", "n", "o", - "p", "q", "r", "s", "t", "u", "v", "w", - "x", "y", "z", "braceleft", - "bar", "braceright", "asciitilde", "Adieresis", - "Aring", "Ccedilla", "Eacute", "Ntilde", - "Odieresis", "Udieresis", "aacute", "agrave", - "acircumflex", "adieresis", "atilde", "aring", - "ccedilla", "eacute", "egrave", "ecircumflex", - "edieresis", "iacute", "igrave", "icircumflex", - "idieresis", "ntilde", "oacute", "ograve", - "ocircumflex", "odieresis", "otilde", "uacute", - "ugrave", "ucircumflex", "udieresis", "dagger", - "degree", "cent", "sterling", "section", - "bullet", "paragraph", "germandbls", "registered", - "copyright", "trademark", "acute", "dieresis", - "notequal", "AE", "Oslash", "infinity", - "plusminus", "lessequal", "greaterequal", "yen", - "mu", "partialdiff", "summation", "product", - "pi", "integral", "ordfeminine", "ordmasculine", - "Omega", "ae", "oslash", "questiondown", - "exclamdown", "logicalnot", "radical", "florin", - "approxequal", "increment", "guillemotleft", "guillemotright", - "ellipsis", "nbspace", "Agrave", "Atilde", - "Otilde", "OE", "oe", "endash", - "emdash", "quotedblleft", "quotedblright", "quoteleft", - "quoteright", "divide", "lozenge", "ydieresis", - "Ydieresis", "fraction", "currency", "guilsinglleft", - "guilsinglright", "fi", "fl", "daggerdbl", - "periodcentered", "quotesinglbase", "quotedblbase", "perthousand", - "Acircumflex", "Ecircumflex", "Aacute", "Edieresis", - "Egrave", "Iacute", "Icircumflex", "Idieresis", - "Igrave", "Oacute", "Ocircumflex", "applelogo", - "Ograve", "Uacute", "Ucircumflex", "Ugrave", - "dotlessi", "circumflex", "tilde", "macron", - "breve", "dotaccent", "ring", "cedilla", - "hungarumlaut", "ogonek", "caron", "Lslash", - "lslash", "Scaron", "scaron", "Zcaron", - "zcaron", "brokenbar", "Eth", "eth", - "Yacute", "yacute", "Thorn", "thorn", - "minus", "multiply", "onesuperior", "twosuperior", - "threesuperior", "onehalf", "onequarter", "threequarters", - "franc", "Gbreve", "gbreve", "Idot", - "Scedilla", "scedilla", "Cacute", "cacute", - "Ccaron", "ccaron", "dmacron" - ); - - private function uniord (string $c, string $encoding = null) { - if (function_exists("mb_ord")) { - if (PHP_VERSION_ID < 80000 && $encoding === null) { - // in PHP < 8 the encoding argument, if supplied, must be a valid encoding - $encoding = "UTF-8"; - } - return mb_ord($c, $encoding); - } - - if ($encoding != "UTF-8" && $encoding !== null) { - $c = mb_convert_encoding($c, "UTF-8", $encoding); - } - - $length = mb_strlen(mb_substr($c, 0, 1), '8bit'); - $ord = false; - $bytes = []; - $numbytes = 1; - for ($i = 0; $i < $length; $i++) { - $o = \ord($c[$i]); // get one string character at time - if (\count($bytes) === 0) { // get starting octect - if ($o <= 0x7F) { - $ord = $o; - $numbytes = 1; - } elseif (($o >> 0x05) === 0x06) { // 2 bytes character (0x06 = 110 BIN) - $bytes[] = ($o - 0xC0) << 0x06; - $numbytes = 2; - } elseif (($o >> 0x04) === 0x0E) { // 3 bytes character (0x0E = 1110 BIN) - $bytes[] = ($o - 0xE0) << 0x0C; - $numbytes = 3; - } elseif (($o >> 0x03) === 0x1E) { // 4 bytes character (0x1E = 11110 BIN) - $bytes[] = ($o - 0xF0) << 0x12; - $numbytes = 4; - } else { - $ord = false; - break; - } - } elseif (($o >> 0x06) === 0x02) { // bytes 2, 3 and 4 must start with 0x02 = 10 BIN - $bytes[] = $o - 0x80; - if (\count($bytes) === $numbytes) { - // compose UTF-8 bytes to a single unicode value - $o = $bytes[0]; - for ($j = 1; $j < $numbytes; $j++) { - $o += ($bytes[$j] << (($numbytes - $j - 1) * 0x06)); - } - if ((($o >= 0xD800) and ($o <= 0xDFFF)) or ($o >= 0x10FFFF)) { - // The definition of UTF-8 prohibits encoding character numbers between - // U+D800 and U+DFFF, which are reserved for use with the UTF-16 - // encoding form (as surrogate pairs) and do not directly represent - // characters. - return false; - } else { - $ord = $o; // add char to array - } - // reset data for next char - $bytes = []; - $numbytes = 1; - } - } else { - $ord = false; - break; - } - } - - return $ord; - } - - function getTable() { - $this->parseTableEntries(); - - return $this->directory; - } - - function setTableOffset($offset) { - $this->tableOffset = $offset; - } - - function parse() { - $this->parseTableEntries(); - - $this->data = array(); - - foreach ($this->directory as $tag => $table) { - if (empty($this->data[$tag])) { - $this->readTable($tag); - } - } - } - - function utf8toUnicode($str) { - $len = mb_strlen($str, '8bit'); - $out = array(); - - for ($i = 0; $i < $len; $i++) { - $uni = -1; - $h = ord($str[$i]); - - if ($h <= 0x7F) { - $uni = $h; - } - elseif ($h >= 0xC2) { - if (($h <= 0xDF) && ($i < $len - 1)) { - $uni = ($h & 0x1F) << 6 | (ord($str[++$i]) & 0x3F); - } - elseif (($h <= 0xEF) && ($i < $len - 2)) { - $uni = ($h & 0x0F) << 12 | (ord($str[++$i]) & 0x3F) << 6 | (ord($str[++$i]) & 0x3F); - } - elseif (($h <= 0xF4) && ($i < $len - 3)) { - $uni = ($h & 0x0F) << 18 | (ord($str[++$i]) & 0x3F) << 12 | (ord($str[++$i]) & 0x3F) << 6 | (ord($str[++$i]) & 0x3F); - } - } - - if ($uni >= 0) { - $out[] = $uni; - } - } - - return $out; - } - - function getUnicodeCharMap() { - $subtable = null; - foreach ($this->getData("cmap", "subtables") as $_subtable) { - if ($_subtable["platformID"] == 0 || ($_subtable["platformID"] == 3 && $_subtable["platformSpecificID"] == 1)) { - $subtable = $_subtable; - break; - } - } - - if ($subtable) { - return $subtable["glyphIndexArray"]; - } - - $system_encodings = mb_list_encodings(); - $system_encodings = array_change_key_case(array_fill_keys($system_encodings, true), CASE_UPPER); - foreach ($this->getData("cmap", "subtables") as $_subtable) { - $encoding = null; - switch ($_subtable["platformID"]) { - case 3: - switch ($_subtable["platformSpecificID"]) { - case 2: - if (\array_key_exists("SJIS", $system_encodings)) { - $encoding = "SJIS"; - } - break; - case 3: - if (\array_key_exists("GB18030", $system_encodings)) { - $encoding = "GB18030"; - } - break; - case 4: - if (\array_key_exists("BIG-5", $system_encodings)) { - $encoding = "BIG-5"; - } - break; - case 5: - if (\array_key_exists("UHC", $system_encodings)) { - $encoding = "UHC"; - } - break; - } - break; - } - if ($encoding) { - $glyphIndexArray = array(); - foreach ($_subtable["glyphIndexArray"] as $c => $gid) { - $str = trim(pack("N", $c)); - if (\strlen($str) > 0) { - $ord = $this->uniord($str, $encoding); - if ($ord > 0) { - $glyphIndexArray[$ord] = $gid; - } - } - } - return $glyphIndexArray; - } - } - - return null; - } - - function setSubset($subset) { - if (!is_array($subset)) { - $subset = $this->utf8toUnicode($subset); - } - - $subset = array_unique($subset); - - $glyphIndexArray = $this->getUnicodeCharMap(); - - if (!$glyphIndexArray) { - return; - } - - $gids = array( - 0, // .notdef - 1, // .null - ); - - foreach ($subset as $code) { - if (!isset($glyphIndexArray[$code])) { - continue; - } - - $gid = $glyphIndexArray[$code]; - $gids[$gid] = $gid; - } - - /** @var glyf $glyf */ - $glyf = $this->getTableObject("glyf"); - if ($glyf) { - $gids = $glyf->getGlyphIDs($gids); - sort($gids); - $this->glyph_subset = $gids; - } - $this->glyph_all = array_values($glyphIndexArray); // FIXME - } - - function getSubset() { - if (empty($this->glyph_subset)) { - return $this->glyph_all; - } - - return $this->glyph_subset; - } - - function encode($tags = array()) { - if (!self::$raw) { - $tags = array_merge(array("head", "hhea", "cmap", "hmtx", "maxp", "glyf", "loca", "name", "post", "cvt ", "fpgm", "prep"), $tags); - } - else { - $tags = array_keys($this->directory); - } - - $n = 16; // @todo - - Font::d("Tables : " . implode(", ", $tags)); - - /** @var DirectoryEntry[] $entries */ - $entries = array(); - foreach ($tags as $tag) { - if (!isset($this->directory[$tag])) { - Font::d(" >> '$tag' table doesn't exist"); - continue; - } - - $entries[$tag] = $this->directory[$tag]; - } - - $num_tables = count($entries); - $exponent = floor(log($num_tables, 2)); - $power_of_two = pow(2, $exponent); - - $this->header->data["numTables"] = $num_tables; - $this->header->data["searchRange"] = $power_of_two * 16; - $this->header->data["entrySelector"] = log($power_of_two, 2); - $this->header->data["rangeShift"] = $num_tables * 16 - $this->header->data["searchRange"]; - $this->header->encode(); - - $directory_offset = $this->pos(); - $offset = $directory_offset + $num_tables * $n; - $this->seek($offset); - - $i = 0; - foreach ($entries as $entry) { - $entry->encode($directory_offset + $i * $n); - $i++; - } - } - - function parseHeader() { - if (!empty($this->header)) { - return; - } - - $this->seek($this->tableOffset); - - $this->header = new Header($this); - $this->header->parse(); - } - - function getFontType(){ - $class_parts = explode("\\", get_class($this)); - return $class_parts[1]; - } - - function parseTableEntries() { - $this->parseHeader(); - - if (!empty($this->directory)) { - return; - } - - if (empty($this->header->data["numTables"])) { - return; - } - - - $type = $this->getFontType(); - $class = "FontLib\\$type\\TableDirectoryEntry"; - - for ($i = 0; $i < $this->header->data["numTables"]; $i++) { - /** @var TableDirectoryEntry $entry */ - $entry = new $class($this); - $entry->parse(); - - $this->directory[$entry->tag] = $entry; - } - } - - function normalizeFUnit($value, $base = 1000) { - return round($value * ($base / $this->getData("head", "unitsPerEm"))); - } - - protected function readTable($tag) { - $this->parseTableEntries(); - - if (!self::$raw) { - $name_canon = preg_replace("/[^a-z0-9]/", "", strtolower($tag)); - - $class = "FontLib\\Table\\Type\\$name_canon"; - - if (!isset($this->directory[$tag]) || !@class_exists($class)) { - return; - } - } - else { - $class = "FontLib\\Table\\Table"; - } - - /** @var Table $table */ - $table = new $class($this->directory[$tag]); - $table->parse(); - - $this->data[$tag] = $table; - } - - /** - * @param $name - * - * @return Table - */ - public function getTableObject($name) { - if (\array_key_exists($name, $this->data)) { - return $this->data[$name]; - } - return null; - } - - public function setTableObject($name, Table $data) { - $this->data[$name] = $data; - } - - public function getData($name, $key = null) { - $this->parseTableEntries(); - - if (empty($this->data[$name])) { - $this->readTable($name); - } - - if (!isset($this->data[$name])) { - return null; - } - - if (!$key) { - return $this->data[$name]->data; - } - else { - return $this->data[$name]->data[$key]; - } - } - - function addDirectoryEntry(DirectoryEntry $entry) { - $this->directory[$entry->tag] = $entry; - } - - function saveAdobeFontMetrics($file, $encoding = null) { - $afm = new AdobeFontMetrics($this); - $afm->write($file, $encoding); - } - - /** - * Get a specific name table string value from its ID - * - * @param int $nameID The name ID - * - * @return string|null - */ - function getNameTableString($nameID) { - /** @var nameRecord[] $records */ - $records = $this->getData("name", "records"); - - if (!isset($records[$nameID])) { - return null; - } - - return $records[$nameID]->string; - } - - /** - * Get font copyright - * - * @return string|null - */ - function getFontCopyright() { - return $this->getNameTableString(name::NAME_COPYRIGHT); - } - - /** - * Get font name - * - * @return string|null - */ - function getFontName() { - return $this->getNameTableString(name::NAME_NAME); - } - - /** - * Get font subfamily - * - * @return string|null - */ - function getFontSubfamily() { - return $this->getNameTableString(name::NAME_SUBFAMILY); - } - - /** - * Get font subfamily ID - * - * @return string|null - */ - function getFontSubfamilyID() { - return $this->getNameTableString(name::NAME_SUBFAMILY_ID); - } - - /** - * Get font full name - * - * @return string|null - */ - function getFontFullName() { - return $this->getNameTableString(name::NAME_FULL_NAME); - } - - /** - * Get font version - * - * @return string|null - */ - function getFontVersion() { - return $this->getNameTableString(name::NAME_VERSION); - } - - /** - * Get font weight - * - * @return string|null - */ - function getFontWeight() { - return $this->getTableObject("OS/2")->data["usWeightClass"]; - } - - /** - * Get font Postscript name - * - * @return string|null - */ - function getFontPostscriptName() { - return $this->getNameTableString(name::NAME_POSTSCRIPT_NAME); - } - - function reduce() { - $names_to_keep = array( - name::NAME_COPYRIGHT, - name::NAME_NAME, - name::NAME_SUBFAMILY, - name::NAME_SUBFAMILY_ID, - name::NAME_FULL_NAME, - name::NAME_VERSION, - name::NAME_POSTSCRIPT_NAME, - ); - - foreach ($this->data["name"]->data["records"] as $id => $rec) { - if (!in_array($id, $names_to_keep)) { - unset($this->data["name"]->data["records"][$id]); - } - } - } -} diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/TrueType/Header.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/TrueType/Header.php deleted file mode 100644 index 652e66f2..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/TrueType/Header.php +++ /dev/null @@ -1,31 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib\TrueType; - -/** - * TrueType font file header. - * - * @package php-font-lib - */ -class Header extends \FontLib\Header { - protected $def = array( - "format" => self::uint32, - "numTables" => self::uint16, - "searchRange" => self::uint16, - "entrySelector" => self::uint16, - "rangeShift" => self::uint16, - ); - - public function parse() { - parent::parse(); - - $format = $this->data["format"]; - $this->data["formatText"] = $this->convertUInt32ToStr($format); - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/TrueType/TableDirectoryEntry.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/TrueType/TableDirectoryEntry.php deleted file mode 100644 index 9cf44894..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/TrueType/TableDirectoryEntry.php +++ /dev/null @@ -1,33 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib\TrueType; - -use FontLib\Table\DirectoryEntry; - -/** - * TrueType table directory entry. - * - * @package php-font-lib - */ -class TableDirectoryEntry extends DirectoryEntry { - function __construct(File $font) { - parent::__construct($font); - } - - function parse() { - parent::parse(); - - $font = $this->font; - $this->checksum = $font->readUInt32(); - $this->offset = $font->readUInt32(); - $this->length = $font->readUInt32(); - $this->entryLength += 12; - } -} - diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/WOFF/File.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/WOFF/File.php deleted file mode 100644 index 2c6dff47..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/WOFF/File.php +++ /dev/null @@ -1,81 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib\WOFF; - -use FontLib\Table\DirectoryEntry; - -/** - * WOFF font file. - * - * @package php-font-lib - * - * @property TableDirectoryEntry[] $directory - */ -class File extends \FontLib\TrueType\File { - function parseHeader() { - if (!empty($this->header)) { - return; - } - - $this->header = new Header($this); - $this->header->parse(); - } - - public function load($file) { - parent::load($file); - - $this->parseTableEntries(); - $dataOffset = $this->pos() + count($this->directory) * 20; - - $fw = $this->getTempFile(false); - $fr = $this->f; - - $this->f = $fw; - $offset = $this->header->encode(); - - foreach ($this->directory as $entry) { - // Read ... - $this->f = $fr; - $this->seek($entry->offset); - $data = $this->read($entry->length); - - if ($entry->length < $entry->origLength) { - $data = (string) gzuncompress($data); - } - - // Prepare data ... - $length = mb_strlen($data, '8bit'); - $entry->length = $entry->origLength = $length; - $entry->offset = $dataOffset; - - // Write ... - $this->f = $fw; - - // Woff Entry - $this->seek($offset); - $offset += $this->write($entry->tag, 4); // tag - $offset += $this->writeUInt32($dataOffset); // offset - $offset += $this->writeUInt32($length); // length - $offset += $this->writeUInt32($length); // origLength - $offset += $this->writeUInt32(DirectoryEntry::computeChecksum($data)); // checksum - - // Data - $this->seek($dataOffset); - $dataOffset += $this->write($data, $length); - } - - $this->f = $fw; - $this->seek(0); - - // Need to re-parse this, don't know why - $this->header = null; - $this->directory = array(); - $this->parseTableEntries(); - } -} diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/WOFF/Header.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/WOFF/Header.php deleted file mode 100644 index 9911c97f..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/WOFF/Header.php +++ /dev/null @@ -1,32 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib\WOFF; - -/** - * WOFF font file header. - * - * @package php-font-lib - */ -class Header extends \FontLib\TrueType\Header { - protected $def = array( - "format" => self::uint32, - "flavor" => self::uint32, - "length" => self::uint32, - "numTables" => self::uint16, - self::uint16, - "totalSfntSize" => self::uint32, - "majorVersion" => self::uint16, - "minorVersion" => self::uint16, - "metaOffset" => self::uint32, - "metaLength" => self::uint32, - "metaOrigLength" => self::uint32, - "privOffset" => self::uint32, - "privLength" => self::uint32, - ); -} \ No newline at end of file diff --git a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/WOFF/TableDirectoryEntry.php b/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/WOFF/TableDirectoryEntry.php deleted file mode 100644 index 5f66311c..00000000 --- a/docker/statistics/vendor/phenx/php-font-lib/src/FontLib/WOFF/TableDirectoryEntry.php +++ /dev/null @@ -1,34 +0,0 @@ - - * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License - */ - -namespace FontLib\WOFF; - -use FontLib\Table\DirectoryEntry; - -/** - * WOFF font file table directory entry. - * - * @package php-font-lib - */ -class TableDirectoryEntry extends DirectoryEntry { - public $origLength; - - function __construct(File $font) { - parent::__construct($font); - } - - function parse() { - parent::parse(); - - $font = $this->font; - $this->offset = $font->readUInt32(); - $this->length = $font->readUInt32(); - $this->origLength = $font->readUInt32(); - $this->checksum = $font->readUInt32(); - } -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/LICENSE b/docker/statistics/vendor/phenx/php-svg-lib/LICENSE deleted file mode 100644 index 0a041280..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/LICENSE +++ /dev/null @@ -1,165 +0,0 @@ - GNU LESSER GENERAL PUBLIC LICENSE - Version 3, 29 June 2007 - - Copyright (C) 2007 Free Software Foundation, Inc. - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - - This version of the GNU Lesser General Public License incorporates -the terms and conditions of version 3 of the GNU General Public -License, supplemented by the additional permissions listed below. - - 0. Additional Definitions. - - As used herein, "this License" refers to version 3 of the GNU Lesser -General Public License, and the "GNU GPL" refers to version 3 of the GNU -General Public License. - - "The Library" refers to a covered work governed by this License, -other than an Application or a Combined Work as defined below. - - An "Application" is any work that makes use of an interface provided -by the Library, but which is not otherwise based on the Library. -Defining a subclass of a class defined by the Library is deemed a mode -of using an interface provided by the Library. - - A "Combined Work" is a work produced by combining or linking an -Application with the Library. The particular version of the Library -with which the Combined Work was made is also called the "Linked -Version". - - The "Minimal Corresponding Source" for a Combined Work means the -Corresponding Source for the Combined Work, excluding any source code -for portions of the Combined Work that, considered in isolation, are -based on the Application, and not on the Linked Version. - - The "Corresponding Application Code" for a Combined Work means the -object code and/or source code for the Application, including any data -and utility programs needed for reproducing the Combined Work from the -Application, but excluding the System Libraries of the Combined Work. - - 1. Exception to Section 3 of the GNU GPL. - - You may convey a covered work under sections 3 and 4 of this License -without being bound by section 3 of the GNU GPL. - - 2. Conveying Modified Versions. - - If you modify a copy of the Library, and, in your modifications, a -facility refers to a function or data to be supplied by an Application -that uses the facility (other than as an argument passed when the -facility is invoked), then you may convey a copy of the modified -version: - - a) under this License, provided that you make a good faith effort to - ensure that, in the event an Application does not supply the - function or data, the facility still operates, and performs - whatever part of its purpose remains meaningful, or - - b) under the GNU GPL, with none of the additional permissions of - this License applicable to that copy. - - 3. Object Code Incorporating Material from Library Header Files. - - The object code form of an Application may incorporate material from -a header file that is part of the Library. You may convey such object -code under terms of your choice, provided that, if the incorporated -material is not limited to numerical parameters, data structure -layouts and accessors, or small macros, inline functions and templates -(ten or fewer lines in length), you do both of the following: - - a) Give prominent notice with each copy of the object code that the - Library is used in it and that the Library and its use are - covered by this License. - - b) Accompany the object code with a copy of the GNU GPL and this license - document. - - 4. Combined Works. - - You may convey a Combined Work under terms of your choice that, -taken together, effectively do not restrict modification of the -portions of the Library contained in the Combined Work and reverse -engineering for debugging such modifications, if you also do each of -the following: - - a) Give prominent notice with each copy of the Combined Work that - the Library is used in it and that the Library and its use are - covered by this License. - - b) Accompany the Combined Work with a copy of the GNU GPL and this license - document. - - c) For a Combined Work that displays copyright notices during - execution, include the copyright notice for the Library among - these notices, as well as a reference directing the user to the - copies of the GNU GPL and this license document. - - d) Do one of the following: - - 0) Convey the Minimal Corresponding Source under the terms of this - License, and the Corresponding Application Code in a form - suitable for, and under terms that permit, the user to - recombine or relink the Application with a modified version of - the Linked Version to produce a modified Combined Work, in the - manner specified by section 6 of the GNU GPL for conveying - Corresponding Source. - - 1) Use a suitable shared library mechanism for linking with the - Library. A suitable mechanism is one that (a) uses at run time - a copy of the Library already present on the user's computer - system, and (b) will operate properly with a modified version - of the Library that is interface-compatible with the Linked - Version. - - e) Provide Installation Information, but only if you would otherwise - be required to provide such information under section 6 of the - GNU GPL, and only to the extent that such information is - necessary to install and execute a modified version of the - Combined Work produced by recombining or relinking the - Application with a modified version of the Linked Version. (If - you use option 4d0, the Installation Information must accompany - the Minimal Corresponding Source and Corresponding Application - Code. If you use option 4d1, you must provide the Installation - Information in the manner specified by section 6 of the GNU GPL - for conveying Corresponding Source.) - - 5. Combined Libraries. - - You may place library facilities that are a work based on the -Library side by side in a single library together with other library -facilities that are not Applications and are not covered by this -License, and convey such a combined library under terms of your -choice, if you do both of the following: - - a) Accompany the combined library with a copy of the same work based - on the Library, uncombined with any other library facilities, - conveyed under the terms of this License. - - b) Give prominent notice with the combined library that part of it - is a work based on the Library, and explaining where to find the - accompanying uncombined form of the same work. - - 6. Revised Versions of the GNU Lesser General Public License. - - The Free Software Foundation may publish revised and/or new versions -of the GNU Lesser General Public License from time to time. Such new -versions will be similar in spirit to the present version, but may -differ in detail to address new problems or concerns. - - Each version is given a distinguishing version number. If the -Library as you received it specifies that a certain numbered version -of the GNU Lesser General Public License "or any later version" -applies to it, you have the option of following the terms and -conditions either of that published version or of any later version -published by the Free Software Foundation. If the Library as you -received it does not specify a version number of the GNU Lesser -General Public License, you may choose any version of the GNU Lesser -General Public License ever published by the Free Software Foundation. - - If the Library as you received it specifies that a proxy can decide -whether future versions of the GNU Lesser General Public License shall -apply, that proxy's public statement of acceptance of any version is -permanent authorization for you to choose that version for the -Library. diff --git a/docker/statistics/vendor/phenx/php-svg-lib/README.md b/docker/statistics/vendor/phenx/php-svg-lib/README.md deleted file mode 100644 index ff3c9218..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/README.md +++ /dev/null @@ -1,12 +0,0 @@ -# SVG file parsing / rendering library - -[![Build Status](https://github.com/dompdf/php-svg-lib/actions/workflows/test.yml/badge.svg)](https://github.com/dompdf/php-svg-lib/actions/workflows/test.yml) - -[![Latest Stable Version](https://poser.pugx.org/phenx/php-svg-lib/v/stable)](https://packagist.org/packages/phenx/php-svg-lib) -[![Total Downloads](https://poser.pugx.org/phenx/php-svg-lib/downloads)](https://packagist.org/packages/phenx/php-svg-lib) -[![Latest Unstable Version](https://poser.pugx.org/phenx/php-svg-lib/v/unstable)](https://packagist.org/packages/phenx/php-svg-lib) -[![License](https://poser.pugx.org/phenx/php-svg-lib/license)](https://packagist.org/packages/phenx/php-svg-lib) - -The main purpose of this lib is to rasterize SVG to a surface which can be an image or a PDF for example, through a `\Svg\Surface` PHP interface. - -This project was initialized by the need to render SVG documents inside PDF files for the [DomPdf](https://github.com/dompdf/dompdf) project. diff --git a/docker/statistics/vendor/phenx/php-svg-lib/composer.json b/docker/statistics/vendor/phenx/php-svg-lib/composer.json deleted file mode 100644 index 910a0a1f..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/composer.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "name": "phenx/php-svg-lib", - "type": "library", - "description": "A library to read, parse and export to PDF SVG files.", - "homepage": "https://github.com/PhenX/php-svg-lib", - "license": "LGPL-3.0-or-later", - "authors": [ - { - "name": "Fabien Ménager", - "email": "fabien.menager@gmail.com" - } - ], - "autoload": { - "psr-4": { - "Svg\\": "src/Svg" - } - }, - "autoload-dev": { - "psr-4": { - "Svg\\Tests\\": "tests/Svg" - } - }, - "require": { - "php": "^7.1 || ^8.0", - "ext-mbstring": "*", - "sabberworm/php-css-parser": "^8.4" - }, - "require-dev": { - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5" - } -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/CssLength.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/CssLength.php deleted file mode 100644 index 88eda8c6..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/CssLength.php +++ /dev/null @@ -1,135 +0,0 @@ - - */ - protected static $inchDivisions = [ - 'in' => 1, - 'cm' => 2.54, - 'mm' => 25.4, - 'q' => 101.6, - 'pc' => 6, - 'pt' => 72, - ]; - - /** - * The CSS length unit indicator. - * Will be lower-case and one of the units listed in the '$units' array or empty. - * - * @var string - */ - protected $unit = ''; - - /** - * The numeric value of the given length. - * - * @var float - */ - protected $value = 0; - - /** - * The original unparsed length provided. - * - * @var string - */ - protected $unparsed; - - public function __construct(string $length) - { - $this->unparsed = $length; - $this->parseLengthComponents($length); - } - - /** - * Parse out the unit and value components from the given string length. - */ - protected function parseLengthComponents(string $length): void - { - $length = strtolower($length); - - foreach (self::$units as $unit) { - $pos = strpos($length, $unit); - if ($pos) { - $this->value = floatval(substr($length, 0, $pos)); - $this->unit = $unit; - return; - } - } - - $this->unit = ''; - $this->value = floatval($length); - } - - /** - * Get the unit type of this css length. - * Units are standardised to be lower-cased. - * - * @return string - */ - public function getUnit(): string - { - return $this->unit; - } - - /** - * Get this CSS length in the equivalent pixel count size. - * - * @param float $referenceSize - * @param float $dpi - * - * @return float - */ - public function toPixels(float $referenceSize = 11.0, float $dpi = 96.0): float - { - // Standard relative units - if (in_array($this->unit, ['em', 'rem', 'ex', 'ch'])) { - return $this->value * $referenceSize; - } - - // Percentage relative units - if (in_array($this->unit, ['%', 'vw', 'vh', 'vmin', 'vmax'])) { - return $this->value * ($referenceSize / 100); - } - - // Inch relative units - if (in_array($this->unit, array_keys(static::$inchDivisions))) { - $inchValue = $this->value * $dpi; - $division = static::$inchDivisions[$this->unit]; - return $inchValue / $division; - } - - return $this->value; - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/DefaultStyle.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/DefaultStyle.php deleted file mode 100644 index 4e73d294..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/DefaultStyle.php +++ /dev/null @@ -1,29 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg; - -class DefaultStyle extends Style -{ - public $color = [0, 0, 0, 1]; - public $opacity = 1.0; - public $display = 'inline'; - - public $fill = [0, 0, 0, 1]; - public $fillOpacity = 1.0; - public $fillRule = 'nonzero'; - - public $stroke = 'none'; - public $strokeOpacity = 1.0; - public $strokeLinecap = 'butt'; - public $strokeLinejoin = 'miter'; - public $strokeMiterlimit = 4; - public $strokeWidth = 1.0; - public $strokeDasharray = 0; - public $strokeDashoffset = 0; -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Document.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Document.php deleted file mode 100644 index b6448f3a..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Document.php +++ /dev/null @@ -1,445 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg; - -use Svg\Surface\SurfaceInterface; -use Svg\Tag\AbstractTag; -use Svg\Tag\Anchor; -use Svg\Tag\Circle; -use Svg\Tag\Ellipse; -use Svg\Tag\Group; -use Svg\Tag\ClipPath; -use Svg\Tag\Image; -use Svg\Tag\Line; -use Svg\Tag\LinearGradient; -use Svg\Tag\Path; -use Svg\Tag\Polygon; -use Svg\Tag\Polyline; -use Svg\Tag\Rect; -use Svg\Tag\Stop; -use Svg\Tag\Symbol; -use Svg\Tag\Text; -use Svg\Tag\StyleTag; -use Svg\Tag\UseTag; - -class Document extends AbstractTag -{ - protected $filename; - protected $_defs_depth = 0; - public $inDefs = false; - - protected $x; - protected $y; - protected $width; - protected $height; - - protected $subPathInit; - protected $pathBBox; - protected $viewBox; - - /** @var SurfaceInterface */ - protected $surface; - - /** @var AbstractTag[] */ - protected $stack = array(); - - /** @var AbstractTag[] */ - protected $defs = array(); - - /** @var \Sabberworm\CSS\CSSList\Document[] */ - protected $styleSheets = array(); - - public $allowExternalReferences = true; - - public function loadFile($filename) - { - $this->filename = $filename; - } - - protected function initParser() { - $parser = xml_parser_create("utf-8"); - xml_parser_set_option($parser, XML_OPTION_CASE_FOLDING, false); - xml_set_element_handler( - $parser, - array($this, "_tagStart"), - array($this, "_tagEnd") - ); - xml_set_character_data_handler( - $parser, - array($this, "_charData") - ); - - return $parser; - } - - public function __construct() { - - } - - /** - * Increase the nesting level for defs-like elements - * - * @return int - */ - public function enterDefs () { - $this->_defs_depth++; - $this->inDefs = true; - return $this->_defs_depth; - } - - /** - * Decrease the nesting level for defs-like elements - * - * @return int - */ - public function exitDefs () { - $this->_defs_depth--; - if ($this->_defs_depth < 0) { - $this->_defs_depth = 0; - } - $this->inDefs = ($this->_defs_depth > 0 ? true : false); - return $this->_defs_depth; - } - - /** - * @return SurfaceInterface - */ - public function getSurface() - { - return $this->surface; - } - - public function getStack() - { - return $this->stack; - } - - public function getWidth() - { - return $this->width; - } - - public function getHeight() - { - return $this->height; - } - - public function getDiagonal() - { - return sqrt(($this->width)**2 + ($this->height)**2) / sqrt(2); - } - - public function getDimensions() { - $rootAttributes = null; - - $parser = xml_parser_create("utf-8"); - xml_parser_set_option($parser, XML_OPTION_CASE_FOLDING, false); - xml_set_element_handler( - $parser, - function ($parser, $name, $attributes) use (&$rootAttributes) { - if ($name === "svg" && $rootAttributes === null) { - $attributes = array_change_key_case($attributes, CASE_LOWER); - - $rootAttributes = $attributes; - } - }, - function ($parser, $name) {} - ); - - $fp = fopen($this->filename, "r"); - while ($line = fread($fp, 8192)) { - xml_parse($parser, $line, false); - - if ($rootAttributes !== null) { - break; - } - } - xml_parse($parser, "", true); - - xml_parser_free($parser); - - return $this->handleSizeAttributes($rootAttributes); - } - - public function handleSizeAttributes($attributes){ - if ($this->width === null) { - if (isset($attributes["width"])) { - $width = $this->convertSize($attributes["width"], 400); - $this->width = $width; - } - - if (isset($attributes["height"])) { - $height = $this->convertSize($attributes["height"], 300); - $this->height = $height; - } - - if (isset($attributes['viewbox'])) { - $viewBox = preg_split('/[\s,]+/is', trim($attributes['viewbox'])); - if (count($viewBox) == 4) { - $this->x = $viewBox[0]; - $this->y = $viewBox[1]; - - if (!$this->width) { - $this->width = $viewBox[2]; - } - if (!$this->height) { - $this->height = $viewBox[3]; - } - } - } - } - - return array( - 0 => $this->width, - 1 => $this->height, - - "width" => $this->width, - "height" => $this->height, - ); - } - - public function getDocument(){ - return $this; - } - - /** - * Append a style sheet - * - * @param \Sabberworm\CSS\CSSList\Document $stylesheet - */ - public function appendStyleSheet($stylesheet) { - $this->styleSheets[] = $stylesheet; - } - - /** - * Get the document style sheets - * - * @return \Sabberworm\CSS\CSSList\Document[] - */ - public function getStyleSheets() { - return $this->styleSheets; - } - - protected function before($attributes) - { - $surface = $this->getSurface(); - - $style = new DefaultStyle($this); - $style->inherit($this); - $style->fromAttributes($attributes); - - $this->setStyle($style); - - $surface->setStyle($style); - } - - public function render(SurfaceInterface $surface) - { - $this->_defs_depth = 0; - $this->inDefs = false; - $this->surface = $surface; - - $parser = $this->initParser(); - - if ($this->x || $this->y) { - $surface->translate(-$this->x, -$this->y); - } - - $fp = fopen($this->filename, "r"); - while ($line = fread($fp, 8192)) { - xml_parse($parser, $line, false); - } - - xml_parse($parser, "", true); - - xml_parser_free($parser); - } - - protected function svgOffset($attributes) - { - $this->attributes = $attributes; - - $this->handleSizeAttributes($attributes); - } - - public function getDef($id) { - $id = ltrim($id, "#"); - - return isset($this->defs[$id]) ? $this->defs[$id] : null; - } - - private function _tagStart($parser, $name, $attributes) - { - $this->x = 0; - $this->y = 0; - - $tag = null; - - $attributes = array_change_key_case($attributes, CASE_LOWER); - - switch (strtolower($name)) { - case 'defs': - $this->enterDefs(); - return; - - case 'svg': - if (count($this->attributes)) { - $tag = new Group($this, $name); - } - else { - $tag = $this; - $this->svgOffset($attributes); - } - break; - - case 'path': - $tag = new Path($this, $name); - break; - - case 'rect': - $tag = new Rect($this, $name); - break; - - case 'circle': - $tag = new Circle($this, $name); - break; - - case 'ellipse': - $tag = new Ellipse($this, $name); - break; - - case 'image': - $tag = new Image($this, $name); - break; - - case 'line': - $tag = new Line($this, $name); - break; - - case 'polyline': - $tag = new Polyline($this, $name); - break; - - case 'polygon': - $tag = new Polygon($this, $name); - break; - - case 'lineargradient': - $tag = new LinearGradient($this, $name); - break; - - case 'radialgradient': - $tag = new LinearGradient($this, $name); - break; - - case 'stop': - $tag = new Stop($this, $name); - break; - - case 'style': - $tag = new StyleTag($this, $name); - break; - - case 'a': - $tag = new Anchor($this, $name); - break; - - case 'g': - $tag = new Group($this, $name); - break; - - case 'symbol': - $this->enterDefs(); - $tag = new Symbol($this, $name); - break; - - case 'clippath': - $tag = new ClipPath($this, $name); - break; - - case 'use': - $tag = new UseTag($this, $name); - break; - - case 'text': - $tag = new Text($this, $name); - break; - - case 'desc': - return; - } - - if ($tag) { - if (isset($attributes["id"])) { - $this->defs[$attributes["id"]] = $tag; - } - else { - /** @var AbstractTag $top */ - $top = end($this->stack); - if ($top && $top != $tag) { - $top->children[] = $tag; - } - } - - $this->stack[] = $tag; - - $tag->handle($attributes); - } - } - - function _charData($parser, $data) - { - $stack_top = end($this->stack); - - if ($stack_top instanceof Text || $stack_top instanceof StyleTag) { - $stack_top->appendText($data); - } - } - - function _tagEnd($parser, $name) - { - /** @var AbstractTag $tag */ - $tag = null; - switch (strtolower($name)) { - case 'defs': - $this->exitDefs(); - return; - - case 'symbol': - $this->exitDefs(); - $tag = array_pop($this->stack); - break; - - case 'svg': - case 'path': - case 'rect': - case 'circle': - case 'ellipse': - case 'image': - case 'line': - case 'polyline': - case 'polygon': - case 'radialgradient': - case 'lineargradient': - case 'stop': - case 'style': - case 'text': - case 'g': - case 'clippath': - case 'use': - case 'a': - $tag = array_pop($this->stack); - break; - } - - if ((!$this->inDefs && $tag) || $tag instanceof StyleTag) { - $tag->handleEnd(); - } - } -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Gradient/Stop.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Gradient/Stop.php deleted file mode 100644 index a37fb970..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Gradient/Stop.php +++ /dev/null @@ -1,16 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg\Gradient; - -class Stop -{ - public $offset; - public $color; - public $opacity = 1.0; -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Style.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Style.php deleted file mode 100644 index 5234d47d..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Style.php +++ /dev/null @@ -1,565 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg; - -use Svg\Tag\AbstractTag; - -class Style -{ - const TYPE_COLOR = 1; - const TYPE_LENGTH = 2; - const TYPE_NAME = 3; - const TYPE_ANGLE = 4; - const TYPE_NUMBER = 5; - - private $_document; - private $_parentStyle; - - public $color; - public $opacity; - public $display; - - public $fill; - public $fillOpacity; - public $fillRule; - - public $stroke; - public $strokeOpacity; - public $strokeLinecap; - public $strokeLinejoin; - public $strokeMiterlimit; - public $strokeWidth; - public $strokeDasharray; - public $strokeDashoffset; - - public $fontFamily = 'serif'; - public $fontSize = 12; - public $fontWeight = 'normal'; - public $fontStyle = 'normal'; - public $textAnchor = 'start'; - - public function __construct($document = null) { - if ($document !== null) { - $this->_document = $document; - } - } - - protected function getStyleMap() - { - return array( - 'color' => array('color', self::TYPE_COLOR), - 'opacity' => array('opacity', self::TYPE_NUMBER), - 'display' => array('display', self::TYPE_NAME), - - 'fill' => array('fill', self::TYPE_COLOR), - 'fill-opacity' => array('fillOpacity', self::TYPE_NUMBER), - 'fill-rule' => array('fillRule', self::TYPE_NAME), - - 'stroke' => array('stroke', self::TYPE_COLOR), - 'stroke-dasharray' => array('strokeDasharray', self::TYPE_NAME), - 'stroke-dashoffset' => array('strokeDashoffset', self::TYPE_NUMBER), - 'stroke-linecap' => array('strokeLinecap', self::TYPE_NAME), - 'stroke-linejoin' => array('strokeLinejoin', self::TYPE_NAME), - 'stroke-miterlimit' => array('strokeMiterlimit', self::TYPE_NUMBER), - 'stroke-opacity' => array('strokeOpacity', self::TYPE_NUMBER), - 'stroke-width' => array('strokeWidth', self::TYPE_NUMBER), - - 'font-family' => array('fontFamily', self::TYPE_NAME), - 'font-size' => array('fontSize', self::TYPE_NUMBER), - 'font-weight' => array('fontWeight', self::TYPE_NAME), - 'font-style' => array('fontStyle', self::TYPE_NAME), - 'text-anchor' => array('textAnchor', self::TYPE_NAME), - ); - } - - /** - * @param $attributes - * - * @return Style - */ - public function fromAttributes($attributes) - { - $this->fillStyles($attributes); - - if (isset($attributes["style"])) { - $styles = self::parseCssStyle($attributes["style"]); - $this->fillStyles($styles); - } - } - - public function inherit(AbstractTag $tag) { - $group = $tag->getParentGroup(); - if ($group) { - $parent_style = $group->getStyle(); - $this->_parentStyle = $parent_style; - foreach ($parent_style as $_key => $_value) { - if ($_value !== null) { - $this->$_key = $_value; - } - } - } - } - - public function fromStyleSheets(AbstractTag $tag, $attributes) { - $class = isset($attributes["class"]) ? preg_split('/\s+/', trim($attributes["class"])) : null; - - $stylesheets = $tag->getDocument()->getStyleSheets(); - - $styles = array(); - - foreach ($stylesheets as $_sc) { - - /** @var \Sabberworm\CSS\RuleSet\DeclarationBlock $_decl */ - foreach ($_sc->getAllDeclarationBlocks() as $_decl) { - - /** @var \Sabberworm\CSS\Property\Selector $_selector */ - foreach ($_decl->getSelectors() as $_selector) { - $_selector = $_selector->getSelector(); - - // Match class name - if ($class !== null) { - foreach ($class as $_class) { - if ($_selector === ".$_class") { - /** @var \Sabberworm\CSS\Rule\Rule $_rule */ - foreach ($_decl->getRules() as $_rule) { - $styles[$_rule->getRule()] = $_rule->getValue() . ""; - } - - break 2; - } - } - } - - // Match tag name - if ($_selector === $tag->tagName) { - /** @var \Sabberworm\CSS\Rule\Rule $_rule */ - foreach ($_decl->getRules() as $_rule) { - $styles[$_rule->getRule()] = $_rule->getValue() . ""; - } - - break; - } - } - } - } - - $this->fillStyles($styles); - } - - protected function fillStyles($styles) - { - $style_map = $this->getStyleMap(); - foreach ($style_map as $from => $spec) { - if (isset($styles[$from])) { - list($to, $type) = $spec; - $value = null; - switch ($type) { - case self::TYPE_COLOR: - $value = self::parseColor($styles[$from]); - if ($value === "currentcolor") { - if ($type === "color") { - $value = $this->_parentStyle->color; - } else { - $value = $this->color; - } - } - if (is_array($value) && $value[3] !== 1.0 && array_key_exists("{$from}-opacity", $style_map) === true) { - $styles["{$from}-opacity"] = $value[3]; - } - break; - - case self::TYPE_NUMBER: - $value = ($styles[$from] === null) ? null : (float)$styles[$from]; - break; - - default: - $value = $styles[$from]; - } - - if ($from === "font-family") { - $scheme = \strtolower(parse_url($value, PHP_URL_SCHEME) ?: ""); - if ( - $scheme === "phar" || \strtolower(\substr($value, 0, 7)) === "phar://" - || ($this->_document !== null && $this->_document->allowExternalReferences === false && $scheme !== "data") - ) { - continue; - } - } - - if ($value !== null) { - $this->$to = $value; - } - } - } - } - - static function parseColor($color) - { - $color = strtolower(trim($color)); - - $parts = preg_split('/[^,]\s+/', $color, 2); - - if (count($parts) == 2) { - $color = $parts[1]; - } else { - $color = $parts[0]; - } - - if ($color === "none") { - return "none"; - } - - if ($color === "currentcolor") { - return "currentcolor"; - } - - if ($color === "transparent") { - return [0.0, 0.0, 0.0, 0.0]; - } - - // SVG color name - if (isset(self::$colorNames[$color])) { - return self::parseHexColor(self::$colorNames[$color]); - } - - // Hex color - if ($color[0] === "#") { - return self::parseHexColor($color); - } - - // RGB color - if (strpos($color, "rgb") !== false) { - return self::getQuad($color); - } - - // HSL color - if (strpos($color, "hsl") !== false) { - $quad = self::getQuad($color, true); - - if ($quad == null) { - return null; - } - - list($h, $s, $l, $a) = $quad; - - $r = $l; - $g = $l; - $b = $l; - $v = ($l <= 0.5) ? ($l * (1.0 + $s)) : ($l + $s - $l * $s); - if ($v > 0) { - $m = $l + $l - $v; - $sv = ($v - $m) / $v; - $h *= 6.0; - $sextant = floor($h); - $fract = $h - $sextant; - $vsf = $v * $sv * $fract; - $mid1 = $m + $vsf; - $mid2 = $v - $vsf; - - switch ($sextant) { - case 0: - $r = $v; - $g = $mid1; - $b = $m; - break; - case 1: - $r = $mid2; - $g = $v; - $b = $m; - break; - case 2: - $r = $m; - $g = $v; - $b = $mid1; - break; - case 3: - $r = $m; - $g = $mid2; - $b = $v; - break; - case 4: - $r = $mid1; - $g = $m; - $b = $v; - break; - case 5: - $r = $v; - $g = $m; - $b = $mid2; - break; - } - } - $a = $a * 255; - - return array( - $r * 255.0, - $g * 255.0, - $b * 255.0, - $a - ); - } - - // Gradient - if (strpos($color, "url(#") !== false) { - $i = strpos($color, "("); - $j = strpos($color, ")"); - - // Bad url format - if ($i === false || $j === false) { - return null; - } - - //FIXME: gradients not supported? - return null; // trim(substr($color, $i + 1, $j - $i - 1)); - } - - return null; - } - - static function getQuad($color, $percent = false) { - $i = strpos($color, "("); - $j = strpos($color, ")"); - - // Bad color value - if ($i === false || $j === false) { - return null; - } - - $quad = preg_split("/\\s*[,\\/]\\s*/", trim(substr($color, $i + 1, $j - $i - 1))); - if (!isset($quad[3])) { - $quad[3] = "1"; - } - - if (count($quad) != 3 && count($quad) != 4) { - return null; - } - - foreach (array_keys($quad) as $c) { - $quad[$c] = trim($quad[$c]); - - if ($percent) { - if ($quad[$c][strlen($quad[$c]) - 1] === "%") { - $quad[$c] = floatval($quad[$c]) / 100; - } else { - $quad[$c] = floatval($quad[$c]) / 255; - } - } else { - if ($quad[$c][strlen($quad[$c]) - 1] === "%") { - $quad[$c] = floatval($quad[$c]) * 2.55; - } else { - $quad[$c] = floatval($quad[$c]); - } - } - } - - return $quad; - } - - static function parseHexColor($hex) - { - $c = array(0.0, 0.0, 0.0, 1.0); - - // #FFFFFF - if (isset($hex[6])) { - $c[0] = hexdec(substr($hex, 1, 2)); - $c[1] = hexdec(substr($hex, 3, 2)); - $c[2] = hexdec(substr($hex, 5, 2)); - - if (isset($hex[7])) { - $alpha = substr($hex, 7, 2); - if (ctype_xdigit($alpha)) { - $c[3] = round(hexdec($alpha)/255, 2); - } - } - } else { - $c[0] = hexdec($hex[1] . $hex[1]); - $c[1] = hexdec($hex[2] . $hex[2]); - $c[2] = hexdec($hex[3] . $hex[3]); - - if (isset($hex[4])) { - if (ctype_xdigit($hex[4])) { - $c[3] = round(hexdec($hex[4] . $hex[4])/255, 2); - } - } - } - - return $c; - } - - /** - * Simple CSS parser - * - * @param $style - * - * @return array - */ - static function parseCssStyle($style) - { - $matches = array(); - preg_match_all("/([a-z-]+)\\s*:\\s*([^;$]+)/si", $style, $matches, PREG_SET_ORDER); - - $styles = array(); - foreach ($matches as $match) { - $styles[$match[1]] = $match[2]; - } - - return $styles; - } - - static $colorNames = array( - 'antiquewhite' => '#FAEBD7', - 'aqua' => '#00FFFF', - 'aquamarine' => '#7FFFD4', - 'beige' => '#F5F5DC', - 'black' => '#000000', - 'blue' => '#0000FF', - 'brown' => '#A52A2A', - 'cadetblue' => '#5F9EA0', - 'chocolate' => '#D2691E', - 'cornflowerblue' => '#6495ED', - 'crimson' => '#DC143C', - 'darkblue' => '#00008B', - 'darkgoldenrod' => '#B8860B', - 'darkgreen' => '#006400', - 'darkmagenta' => '#8B008B', - 'darkorange' => '#FF8C00', - 'darkred' => '#8B0000', - 'darkseagreen' => '#8FBC8F', - 'darkslategray' => '#2F4F4F', - 'darkviolet' => '#9400D3', - 'deepskyblue' => '#00BFFF', - 'dodgerblue' => '#1E90FF', - 'firebrick' => '#B22222', - 'forestgreen' => '#228B22', - 'fuchsia' => '#FF00FF', - 'gainsboro' => '#DCDCDC', - 'gold' => '#FFD700', - 'gray' => '#808080', - 'green' => '#008000', - 'greenyellow' => '#ADFF2F', - 'hotpink' => '#FF69B4', - 'indigo' => '#4B0082', - 'khaki' => '#F0E68C', - 'lavenderblush' => '#FFF0F5', - 'lemonchiffon' => '#FFFACD', - 'lightcoral' => '#F08080', - 'lightgoldenrodyellow' => '#FAFAD2', - 'lightgreen' => '#90EE90', - 'lightsalmon' => '#FFA07A', - 'lightskyblue' => '#87CEFA', - 'lightslategray' => '#778899', - 'lightyellow' => '#FFFFE0', - 'lime' => '#00FF00', - 'limegreen' => '#32CD32', - 'magenta' => '#FF00FF', - 'maroon' => '#800000', - 'mediumaquamarine' => '#66CDAA', - 'mediumorchid' => '#BA55D3', - 'mediumseagreen' => '#3CB371', - 'mediumspringgreen' => '#00FA9A', - 'mediumvioletred' => '#C71585', - 'midnightblue' => '#191970', - 'mintcream' => '#F5FFFA', - 'moccasin' => '#FFE4B5', - 'navy' => '#000080', - 'olive' => '#808000', - 'orange' => '#FFA500', - 'orchid' => '#DA70D6', - 'palegreen' => '#98FB98', - 'palevioletred' => '#D87093', - 'peachpuff' => '#FFDAB9', - 'pink' => '#FFC0CB', - 'powderblue' => '#B0E0E6', - 'purple' => '#800080', - 'red' => '#FF0000', - 'royalblue' => '#4169E1', - 'salmon' => '#FA8072', - 'seagreen' => '#2E8B57', - 'sienna' => '#A0522D', - 'silver' => '#C0C0C0', - 'skyblue' => '#87CEEB', - 'slategray' => '#708090', - 'springgreen' => '#00FF7F', - 'steelblue' => '#4682B4', - 'tan' => '#D2B48C', - 'teal' => '#008080', - 'thistle' => '#D8BFD8', - 'turquoise' => '#40E0D0', - 'violetred' => '#D02090', - 'white' => '#FFFFFF', - 'yellow' => '#FFFF00', - 'aliceblue' => '#f0f8ff', - 'azure' => '#f0ffff', - 'bisque' => '#ffe4c4', - 'blanchedalmond' => '#ffebcd', - 'blueviolet' => '#8a2be2', - 'burlywood' => '#deb887', - 'chartreuse' => '#7fff00', - 'coral' => '#ff7f50', - 'cornsilk' => '#fff8dc', - 'cyan' => '#00ffff', - 'darkcyan' => '#008b8b', - 'darkgray' => '#a9a9a9', - 'darkgrey' => '#a9a9a9', - 'darkkhaki' => '#bdb76b', - 'darkolivegreen' => '#556b2f', - 'darkorchid' => '#9932cc', - 'darksalmon' => '#e9967a', - 'darkslateblue' => '#483d8b', - 'darkslategrey' => '#2f4f4f', - 'darkturquoise' => '#00ced1', - 'deeppink' => '#ff1493', - 'dimgray' => '#696969', - 'dimgrey' => '#696969', - 'floralwhite' => '#fffaf0', - 'ghostwhite' => '#f8f8ff', - 'goldenrod' => '#daa520', - 'grey' => '#808080', - 'honeydew' => '#f0fff0', - 'indianred' => '#cd5c5c', - 'ivory' => '#fffff0', - 'lavender' => '#e6e6fa', - 'lawngreen' => '#7cfc00', - 'lightblue' => '#add8e6', - 'lightcyan' => '#e0ffff', - 'lightgray' => '#d3d3d3', - 'lightgrey' => '#d3d3d3', - 'lightpink' => '#ffb6c1', - 'lightseagreen' => '#20b2aa', - 'lightslategrey' => '#778899', - 'lightsteelblue' => '#b0c4de', - 'linen' => '#faf0e6', - 'mediumblue' => '#0000cd', - 'mediumpurple' => '#9370db', - 'mediumslateblue' => '#7b68ee', - 'mediumturquoise' => '#48d1cc', - 'mistyrose' => '#ffe4e1', - 'navajowhite' => '#ffdead', - 'oldlace' => '#fdf5e6', - 'olivedrab' => '#6b8e23', - 'orangered' => '#ff4500', - 'palegoldenrod' => '#eee8aa', - 'paleturquoise' => '#afeeee', - 'papayawhip' => '#ffefd5', - 'peru' => '#cd853f', - 'plum' => '#dda0dd', - 'rosybrown' => '#bc8f8f', - 'saddlebrown' => '#8b4513', - 'sandybrown' => '#f4a460', - 'seashell' => '#fff5ee', - 'slateblue' => '#6a5acd', - 'slategrey' => '#708090', - 'snow' => '#fffafa', - 'tomato' => '#ff6347', - 'violet' => '#ee82ee', - 'wheat' => '#f5deb3', - 'whitesmoke' => '#f5f5f5', - 'yellowgreen' => '#9acd32', - ); -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Surface/CPdf.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Surface/CPdf.php deleted file mode 100644 index e24f6f20..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Surface/CPdf.php +++ /dev/null @@ -1,6419 +0,0 @@ - - * @author Orion Richardson - * @author Helmut Tischer - * @author Ryan H. Masten - * @author Brian Sweeney - * @author Fabien Ménager - * @license Public Domain http://creativecommons.org/licenses/publicdomain/ - * @package Cpdf - */ - -namespace Svg\Surface; - -class CPdf -{ - const PDF_VERSION = '1.7'; - - const ACROFORM_SIG_SIGNATURESEXISTS = 0x0001; - const ACROFORM_SIG_APPENDONLY = 0x0002; - - const ACROFORM_FIELD_BUTTON = 'Btn'; - const ACROFORM_FIELD_TEXT = 'Tx'; - const ACROFORM_FIELD_CHOICE = 'Ch'; - const ACROFORM_FIELD_SIG = 'Sig'; - - const ACROFORM_FIELD_READONLY = 0x0001; - const ACROFORM_FIELD_REQUIRED = 0x0002; - - const ACROFORM_FIELD_TEXT_MULTILINE = 0x1000; - const ACROFORM_FIELD_TEXT_PASSWORD = 0x2000; - const ACROFORM_FIELD_TEXT_RICHTEXT = 0x10000; - - const ACROFORM_FIELD_CHOICE_COMBO = 0x20000; - const ACROFORM_FIELD_CHOICE_EDIT = 0x40000; - const ACROFORM_FIELD_CHOICE_SORT = 0x80000; - const ACROFORM_FIELD_CHOICE_MULTISELECT = 0x200000; - - const XOBJECT_SUBTYPE_FORM = 'Form'; - - /** - * @var integer The current number of pdf objects in the document - */ - public $numObj = 0; - - /** - * @var array This array contains all of the pdf objects, ready for final assembly - */ - public $objects = []; - - /** - * @var integer The objectId (number within the objects array) of the document catalog - */ - public $catalogId; - - /** - * @var integer The objectId (number within the objects array) of indirect references (Javascript EmbeddedFiles) - */ - protected $indirectReferenceId = 0; - - /** - * @var integer The objectId (number within the objects array) - */ - protected $embeddedFilesId = 0; - - /** - * AcroForm objectId - * - * @var integer - */ - public $acroFormId; - - /** - * @var int - */ - public $signatureMaxLen = 5000; - - /** - * @var array Array carrying information about the fonts that the system currently knows about - * Used to ensure that a font is not loaded twice, among other things - */ - public $fonts = []; - - /** - * @var string The default font metrics file to use if no other font has been loaded. - * The path to the directory containing the font metrics should be included - */ - public $defaultFont = './fonts/Helvetica.afm'; - - /** - * @string A record of the current font - */ - public $currentFont = ''; - - /** - * @var string The current base font - */ - public $currentBaseFont = ''; - - /** - * @var integer The number of the current font within the font array - */ - public $currentFontNum = 0; - - /** - * @var integer - */ - public $currentNode; - - /** - * @var integer Object number of the current page - */ - public $currentPage; - - /** - * @var integer Object number of the currently active contents block - */ - public $currentContents; - - /** - * @var integer Number of fonts within the system - */ - public $numFonts = 0; - - /** - * @var integer Number of graphic state resources used - */ - private $numStates = 0; - - /** - * @var array Number of graphic state resources used - */ - private $gstates = []; - - /** - * @var array Current color for fill operations, defaults to inactive value, - * all three components should be between 0 and 1 inclusive when active - */ - public $currentColor = null; - - /** - * @var array Current color for stroke operations (lines etc.) - */ - public $currentStrokeColor = null; - - /** - * @var string Fill rule (nonzero or evenodd) - */ - public $fillRule = "nonzero"; - - /** - * @var string Current style that lines are drawn in - */ - public $currentLineStyle = ''; - - /** - * @var array Current line transparency (partial graphics state) - */ - public $currentLineTransparency = ["mode" => "Normal", "opacity" => 1.0]; - - /** - * array Current fill transparency (partial graphics state) - */ - public $currentFillTransparency = ["mode" => "Normal", "opacity" => 1.0]; - - /** - * @var array An array which is used to save the state of the document, mainly the colors and styles - * it is used to temporarily change to another state, then change back to what it was before - */ - public $stateStack = []; - - /** - * @var integer Number of elements within the state stack - */ - public $nStateStack = 0; - - /** - * @var integer Number of page objects within the document - */ - public $numPages = 0; - - /** - * @var array Object Id storage stack - */ - public $stack = []; - - /** - * @var integer Number of elements within the object Id storage stack - */ - public $nStack = 0; - - /** - * an array which contains information about the objects which are not firmly attached to pages - * these have been added with the addObject function - */ - public $looseObjects = []; - - /** - * array contains information about how the loose objects are to be added to the document - */ - public $addLooseObjects = []; - - /** - * @var integer The objectId of the information object for the document - * this contains authorship, title etc. - */ - public $infoObject = 0; - - /** - * @var integer Number of images being tracked within the document - */ - public $numImages = 0; - - /** - * @var array An array containing options about the document - * it defaults to turning on the compression of the objects - */ - public $options = ['compression' => true]; - - /** - * @var integer The objectId of the first page of the document - */ - public $firstPageId; - - /** - * @var integer The object Id of the procset object - */ - public $procsetObjectId; - - /** - * @var array Store the information about the relationship between font families - * this used so that the code knows which font is the bold version of another font, etc. - * the value of this array is initialised in the constructor function. - */ - public $fontFamilies = []; - - /** - * @var string Folder for php serialized formats of font metrics files. - * If empty string, use same folder as original metrics files. - * This can be passed in from class creator. - * If this folder does not exist or is not writable, Cpdf will be **much** slower. - * Because of potential trouble with php safe mode, folder cannot be created at runtime. - */ - public $fontcache = ''; - - /** - * @var integer The version of the font metrics cache file. - * This value must be manually incremented whenever the internal font data structure is modified. - */ - public $fontcacheVersion = 6; - - /** - * @var string Temporary folder. - * If empty string, will attempt system tmp folder. - * This can be passed in from class creator. - */ - public $tmp = ''; - - /** - * @var string Track if the current font is bolded or italicised - */ - public $currentTextState = ''; - - /** - * @var string Messages are stored here during processing, these can be selected afterwards to give some useful debug information - */ - public $messages = ''; - - /** - * @var string The encryption array for the document encryption is stored here - */ - public $arc4 = ''; - - /** - * @var integer The object Id of the encryption information - */ - public $arc4_objnum = 0; - - /** - * @var string The file identifier, used to uniquely identify a pdf document - */ - public $fileIdentifier = ''; - - /** - * @var boolean A flag to say if a document is to be encrypted or not - */ - public $encrypted = false; - - /** - * @var string The encryption key for the encryption of all the document content (structure is not encrypted) - */ - public $encryptionKey = ''; - - /** - * @var array Array which forms a stack to keep track of nested callback functions - */ - public $callback = []; - - /** - * @var integer The number of callback functions in the callback array - */ - public $nCallback = 0; - - /** - * @var array Store label->id pairs for named destinations, these will be used to replace internal links - * done this way so that destinations can be defined after the location that links to them - */ - public $destinations = []; - - /** - * @var array Store the stack for the transaction commands, each item in here is a record of the values of all the - * publiciables within the class, so that the user can rollback at will (from each 'start' command) - * note that this includes the objects array, so these can be large. - */ - public $checkpoint = ''; - - /** - * @var array Table of Image origin filenames and image labels which were already added with o_image(). - * Allows to merge identical images - */ - public $imagelist = []; - - /** - * @var array Table of already added alpha and plain image files for transparent PNG images. - */ - protected $imageAlphaList = []; - - /** - * @var array List of temporary image files to be deleted after processing. - */ - protected $imageCache = []; - - /** - * @var boolean Whether the text passed in should be treated as Unicode or just local character set. - */ - public $isUnicode = false; - - /** - * @var string the JavaScript code of the document - */ - public $javascript = ''; - - /** - * @var boolean whether the compression is possible - */ - protected $compressionReady = false; - - /** - * @var array Current page size - */ - protected $currentPageSize = ["width" => 0, "height" => 0]; - - /** - * @var array All the chars that will be required in the font subsets - */ - protected $stringSubsets = []; - - /** - * @var string The target internal encoding - */ - protected static $targetEncoding = 'Windows-1252'; - - /** - * @var array - */ - protected $byteRange = array(); - - /** - * @var array The list of the core fonts - */ - protected static $coreFonts = [ - 'courier', - 'courier-bold', - 'courier-oblique', - 'courier-boldoblique', - 'helvetica', - 'helvetica-bold', - 'helvetica-oblique', - 'helvetica-boldoblique', - 'times-roman', - 'times-bold', - 'times-italic', - 'times-bolditalic', - 'symbol', - 'zapfdingbats' - ]; - - /** - * Class constructor - * This will start a new document - * - * @param array $pageSize Array of 4 numbers, defining the bottom left and upper right corner of the page. first two are normally zero. - * @param boolean $isUnicode Whether text will be treated as Unicode or not. - * @param string $fontcache The font cache folder - * @param string $tmp The temporary folder - */ - function __construct($pageSize = [0, 0, 612, 792], $isUnicode = false, $fontcache = '', $tmp = '') - { - $this->isUnicode = $isUnicode; - $this->fontcache = rtrim($fontcache, DIRECTORY_SEPARATOR."/\\"); - $this->tmp = ($tmp !== '' ? $tmp : sys_get_temp_dir()); - $this->newDocument($pageSize); - - $this->compressionReady = function_exists('gzcompress'); - - if (in_array('Windows-1252', mb_list_encodings())) { - self::$targetEncoding = 'Windows-1252'; - } - - // also initialize the font families that are known about already - $this->setFontFamily('init'); - } - - public function __destruct() - { - foreach ($this->imageCache as $file) { - if (file_exists($file)) { - unlink($file); - } - } - } - - /** - * Document object methods (internal use only) - * - * There is about one object method for each type of object in the pdf document - * Each function has the same call list ($id,$action,$options). - * $id = the object ID of the object, or what it is to be if it is being created - * $action = a string specifying the action to be performed, though ALL must support: - * 'new' - create the object with the id $id - * 'out' - produce the output for the pdf object - * $options = optional, a string or array containing the various parameters for the object - * - * These, in conjunction with the output function are the ONLY way for output to be produced - * within the pdf 'file'. - */ - - /** - * Destination object, used to specify the location for the user to jump to, presently on opening - * - * @param $id - * @param $action - * @param string $options - * @return string|null - */ - protected function o_destination($id, $action, $options = '') - { - switch ($action) { - case 'new': - $this->objects[$id] = ['t' => 'destination', 'info' => []]; - $tmp = ''; - switch ($options['type']) { - case 'XYZ': - /** @noinspection PhpMissingBreakStatementInspection */ - case 'FitR': - $tmp = ' ' . $options['p3'] . $tmp; - case 'FitH': - case 'FitV': - case 'FitBH': - /** @noinspection PhpMissingBreakStatementInspection */ - case 'FitBV': - $tmp = ' ' . $options['p1'] . ' ' . $options['p2'] . $tmp; - case 'Fit': - case 'FitB': - $tmp = $options['type'] . $tmp; - $this->objects[$id]['info']['string'] = $tmp; - $this->objects[$id]['info']['page'] = $options['page']; - } - break; - - case 'out': - $o = &$this->objects[$id]; - - $tmp = $o['info']; - $res = "\n$id 0 obj\n" . '[' . $tmp['page'] . ' 0 R /' . $tmp['string'] . "]\nendobj"; - - return $res; - } - - return null; - } - - /** - * set the viewer preferences - * - * @param $id - * @param $action - * @param string|array $options - * @return string|null - */ - protected function o_viewerPreferences($id, $action, $options = '') - { - switch ($action) { - case 'new': - $this->objects[$id] = ['t' => 'viewerPreferences', 'info' => []]; - break; - - case 'add': - $o = &$this->objects[$id]; - - foreach ($options as $k => $v) { - switch ($k) { - // Boolean keys - case 'HideToolbar': - case 'HideMenubar': - case 'HideWindowUI': - case 'FitWindow': - case 'CenterWindow': - case 'DisplayDocTitle': - case 'PickTrayByPDFSize': - $o['info'][$k] = (bool)$v; - break; - - // Integer keys - case 'NumCopies': - $o['info'][$k] = (int)$v; - break; - - // Name keys - case 'ViewArea': - case 'ViewClip': - case 'PrintClip': - case 'PrintArea': - $o['info'][$k] = (string)$v; - break; - - // Named with limited valid values - case 'NonFullScreenPageMode': - if (!in_array($v, ['UseNone', 'UseOutlines', 'UseThumbs', 'UseOC'])) { - break; - } - $o['info'][$k] = $v; - break; - - case 'Direction': - if (!in_array($v, ['L2R', 'R2L'])) { - break; - } - $o['info'][$k] = $v; - break; - - case 'PrintScaling': - if (!in_array($v, ['None', 'AppDefault'])) { - break; - } - $o['info'][$k] = $v; - break; - - case 'Duplex': - if (!in_array($v, ['None', 'Simplex', 'DuplexFlipShortEdge', 'DuplexFlipLongEdge'])) { - break; - } - $o['info'][$k] = $v; - break; - - // Integer array - case 'PrintPageRange': - // Cast to integer array - foreach ($v as $vK => $vV) { - $v[$vK] = (int)$vV; - } - $o['info'][$k] = array_values($v); - break; - } - } - break; - - case 'out': - $o = &$this->objects[$id]; - $res = "\n$id 0 obj\n<< "; - - foreach ($o['info'] as $k => $v) { - if (is_string($v)) { - $v = '/' . $v; - } elseif (is_int($v)) { - $v = (string) $v; - } elseif (is_bool($v)) { - $v = ($v ? 'true' : 'false'); - } elseif (is_array($v)) { - $v = '[' . implode(' ', $v) . ']'; - } - $res .= "\n/$k $v"; - } - $res .= "\n>>\nendobj"; - - return $res; - } - - return null; - } - - /** - * define the document catalog, the overall controller for the document - * - * @param $id - * @param $action - * @param string|array $options - * @return string|null - */ - protected function o_catalog($id, $action, $options = '') - { - if ($action !== 'new') { - $o = &$this->objects[$id]; - } - - switch ($action) { - case 'new': - $this->objects[$id] = ['t' => 'catalog', 'info' => []]; - $this->catalogId = $id; - break; - - case 'acroform': - case 'outlines': - case 'pages': - case 'openHere': - case 'names': - $o['info'][$action] = $options; - break; - - case 'viewerPreferences': - if (!isset($o['info']['viewerPreferences'])) { - $this->numObj++; - $this->o_viewerPreferences($this->numObj, 'new'); - $o['info']['viewerPreferences'] = $this->numObj; - } - - $vp = $o['info']['viewerPreferences']; - $this->o_viewerPreferences($vp, 'add', $options); - - break; - - case 'out': - $res = "\n$id 0 obj\n<< /Type /Catalog"; - - foreach ($o['info'] as $k => $v) { - switch ($k) { - case 'outlines': - $res .= "\n/Outlines $v 0 R"; - break; - - case 'pages': - $res .= "\n/Pages $v 0 R"; - break; - - case 'viewerPreferences': - $res .= "\n/ViewerPreferences $v 0 R"; - break; - - case 'openHere': - $res .= "\n/OpenAction $v 0 R"; - break; - - case 'names': - $res .= "\n/Names $v 0 R"; - break; - - case 'acroform': - $res .= "\n/AcroForm $v 0 R"; - break; - } - } - - $res .= " >>\nendobj"; - - return $res; - } - - return null; - } - - /** - * object which is a parent to the pages in the document - * - * @param $id - * @param $action - * @param string $options - * @return string|null - */ - protected function o_pages($id, $action, $options = '') - { - if ($action !== 'new') { - $o = &$this->objects[$id]; - } - - switch ($action) { - case 'new': - $this->objects[$id] = ['t' => 'pages', 'info' => []]; - $this->o_catalog($this->catalogId, 'pages', $id); - break; - - case 'page': - if (!is_array($options)) { - // then it will just be the id of the new page - $o['info']['pages'][] = $options; - } else { - // then it should be an array having 'id','rid','pos', where rid=the page to which this one will be placed relative - // and pos is either 'before' or 'after', saying where this page will fit. - if (isset($options['id']) && isset($options['rid']) && isset($options['pos'])) { - $i = array_search($options['rid'], $o['info']['pages']); - if (isset($o['info']['pages'][$i]) && $o['info']['pages'][$i] == $options['rid']) { - - // then there is a match - // make a space - switch ($options['pos']) { - case 'before': - $k = $i; - break; - - case 'after': - $k = $i + 1; - break; - - default: - $k = -1; - break; - } - - if ($k >= 0) { - for ($j = count($o['info']['pages']) - 1; $j >= $k; $j--) { - $o['info']['pages'][$j + 1] = $o['info']['pages'][$j]; - } - - $o['info']['pages'][$k] = $options['id']; - } - } - } - } - break; - - case 'procset': - $o['info']['procset'] = $options; - break; - - case 'mediaBox': - $o['info']['mediaBox'] = $options; - // which should be an array of 4 numbers - $this->currentPageSize = ['width' => $options[2], 'height' => $options[3]]; - break; - - case 'font': - $o['info']['fonts'][] = ['objNum' => $options['objNum'], 'fontNum' => $options['fontNum']]; - break; - - case 'extGState': - $o['info']['extGStates'][] = ['objNum' => $options['objNum'], 'stateNum' => $options['stateNum']]; - break; - - case 'xObject': - $o['info']['xObjects'][] = ['objNum' => $options['objNum'], 'label' => $options['label']]; - break; - - case 'out': - if (count($o['info']['pages'])) { - $res = "\n$id 0 obj\n<< /Type /Pages\n/Kids ["; - foreach ($o['info']['pages'] as $v) { - $res .= "$v 0 R\n"; - } - - $res .= "]\n/Count " . count($this->objects[$id]['info']['pages']); - - if ((isset($o['info']['fonts']) && count($o['info']['fonts'])) || - isset($o['info']['procset']) || - (isset($o['info']['extGStates']) && count($o['info']['extGStates'])) - ) { - $res .= "\n/Resources <<"; - - if (isset($o['info']['procset'])) { - $res .= "\n/ProcSet " . $o['info']['procset'] . " 0 R"; - } - - if (isset($o['info']['fonts']) && count($o['info']['fonts'])) { - $res .= "\n/Font << "; - foreach ($o['info']['fonts'] as $finfo) { - $res .= "\n/F" . $finfo['fontNum'] . " " . $finfo['objNum'] . " 0 R"; - } - $res .= "\n>>"; - } - - if (isset($o['info']['xObjects']) && count($o['info']['xObjects'])) { - $res .= "\n/XObject << "; - foreach ($o['info']['xObjects'] as $finfo) { - $res .= "\n/" . $finfo['label'] . " " . $finfo['objNum'] . " 0 R"; - } - $res .= "\n>>"; - } - - if (isset($o['info']['extGStates']) && count($o['info']['extGStates'])) { - $res .= "\n/ExtGState << "; - foreach ($o['info']['extGStates'] as $gstate) { - $res .= "\n/GS" . $gstate['stateNum'] . " " . $gstate['objNum'] . " 0 R"; - } - $res .= "\n>>"; - } - - $res .= "\n>>"; - if (isset($o['info']['mediaBox'])) { - $tmp = $o['info']['mediaBox']; - $res .= "\n/MediaBox [" . sprintf( - '%.3F %.3F %.3F %.3F', - $tmp[0], - $tmp[1], - $tmp[2], - $tmp[3] - ) . ']'; - } - } - - $res .= "\n >>\nendobj"; - } else { - $res = "\n$id 0 obj\n<< /Type /Pages\n/Count 0\n>>\nendobj"; - } - - return $res; - } - - return null; - } - - /** - * define the outlines in the doc, empty for now - * - * @param $id - * @param $action - * @param string $options - * @return string|null - */ - protected function o_outlines($id, $action, $options = '') - { - if ($action !== 'new') { - $o = &$this->objects[$id]; - } - - switch ($action) { - case 'new': - $this->objects[$id] = ['t' => 'outlines', 'info' => ['outlines' => []]]; - $this->o_catalog($this->catalogId, 'outlines', $id); - break; - - case 'outline': - $o['info']['outlines'][] = $options; - break; - - case 'out': - if (count($o['info']['outlines'])) { - $res = "\n$id 0 obj\n<< /Type /Outlines /Kids ["; - foreach ($o['info']['outlines'] as $v) { - $res .= "$v 0 R "; - } - - $res .= "] /Count " . count($o['info']['outlines']) . " >>\nendobj"; - } else { - $res = "\n$id 0 obj\n<< /Type /Outlines /Count 0 >>\nendobj"; - } - - return $res; - } - - return null; - } - - /** - * an object to hold the font description - * - * @param $id - * @param $action - * @param string|array $options - * @return string|null - * @throws FontNotFoundException - */ - protected function o_font($id, $action, $options = '') - { - if ($action !== 'new') { - $o = &$this->objects[$id]; - } - - switch ($action) { - case 'new': - $this->objects[$id] = [ - 't' => 'font', - 'info' => [ - 'name' => $options['name'], - 'fontFileName' => $options['fontFileName'], - 'SubType' => 'Type1', - 'isSubsetting' => $options['isSubsetting'] - ] - ]; - $fontNum = $this->numFonts; - $this->objects[$id]['info']['fontNum'] = $fontNum; - - // deal with the encoding and the differences - if (isset($options['differences'])) { - // then we'll need an encoding dictionary - $this->numObj++; - $this->o_fontEncoding($this->numObj, 'new', $options); - $this->objects[$id]['info']['encodingDictionary'] = $this->numObj; - } else { - if (isset($options['encoding'])) { - // we can specify encoding here - switch ($options['encoding']) { - case 'WinAnsiEncoding': - case 'MacRomanEncoding': - case 'MacExpertEncoding': - $this->objects[$id]['info']['encoding'] = $options['encoding']; - break; - - case 'none': - break; - - default: - $this->objects[$id]['info']['encoding'] = 'WinAnsiEncoding'; - break; - } - } else { - $this->objects[$id]['info']['encoding'] = 'WinAnsiEncoding'; - } - } - - if ($this->fonts[$options['fontFileName']]['isUnicode']) { - // For Unicode fonts, we need to incorporate font data into - // sub-sections that are linked from the primary font section. - // Look at o_fontGIDtoCID and o_fontDescendentCID functions - // for more information. - // - // All of this code is adapted from the excellent changes made to - // transform FPDF to TCPDF (http://tcpdf.sourceforge.net/) - - $toUnicodeId = ++$this->numObj; - $this->o_toUnicode($toUnicodeId, 'new'); - $this->objects[$id]['info']['toUnicode'] = $toUnicodeId; - - $cidFontId = ++$this->numObj; - $this->o_fontDescendentCID($cidFontId, 'new', $options); - $this->objects[$id]['info']['cidFont'] = $cidFontId; - } - - // also tell the pages node about the new font - $this->o_pages($this->currentNode, 'font', ['fontNum' => $fontNum, 'objNum' => $id]); - break; - - case 'add': - $font_options = $this->processFont($id, $o['info']); - - if ($font_options !== false) { - foreach ($font_options as $k => $v) { - switch ($k) { - case 'BaseFont': - $o['info']['name'] = $v; - break; - case 'FirstChar': - case 'LastChar': - case 'Widths': - case 'FontDescriptor': - case 'SubType': - $this->addMessage('o_font ' . $k . " : " . $v); - $o['info'][$k] = $v; - break; - } - } - - // pass values down to descendent font - if (isset($o['info']['cidFont'])) { - $this->o_fontDescendentCID($o['info']['cidFont'], 'add', $font_options); - } - } - break; - - case 'out': - if ($this->fonts[$this->objects[$id]['info']['fontFileName']]['isUnicode']) { - // For Unicode fonts, we need to incorporate font data into - // sub-sections that are linked from the primary font section. - // Look at o_fontGIDtoCID and o_fontDescendentCID functions - // for more information. - // - // All of this code is adapted from the excellent changes made to - // transform FPDF to TCPDF (http://tcpdf.sourceforge.net/) - - $res = "\n$id 0 obj\n<fonts[$fontFileName])) { - return false; - } - - $font = &$this->fonts[$fontFileName]; - - $fileSuffix = $font['fileSuffix']; - $fileSuffixLower = strtolower($font['fileSuffix']); - $fbfile = "$fontFileName.$fileSuffix"; - $isTtfFont = $fileSuffixLower === 'ttf'; - $isPfbFont = $fileSuffixLower === 'pfb'; - - $this->addMessage('selectFont: checking for - ' . $fbfile); - - if (!$fileSuffix) { - $this->addMessage( - 'selectFont: pfb or ttf file not found, ok if this is one of the 14 standard fonts' - ); - - return false; - } else { - $adobeFontName = isset($font['PostScriptName']) ? $font['PostScriptName'] : $font['FontName']; - // $fontObj = $this->numObj; - $this->addMessage("selectFont: adding font file - $fbfile - $adobeFontName"); - - // find the array of font widths, and put that into an object. - $firstChar = -1; - $lastChar = 0; - $widths = []; - $cid_widths = []; - - foreach ($font['C'] as $num => $d) { - if (intval($num) > 0 || $num == '0') { - if (!$font['isUnicode']) { - // With Unicode, widths array isn't used - if ($lastChar > 0 && $num > $lastChar + 1) { - for ($i = $lastChar + 1; $i < $num; $i++) { - $widths[] = 0; - } - } - } - - $widths[] = $d; - - if ($font['isUnicode']) { - $cid_widths[$num] = $d; - } - - if ($firstChar == -1) { - $firstChar = $num; - } - - $lastChar = $num; - } - } - - // also need to adjust the widths for the differences array - if (isset($object['differences'])) { - foreach ($object['differences'] as $charNum => $charName) { - if ($charNum > $lastChar) { - if (!$object['isUnicode']) { - // With Unicode, widths array isn't used - for ($i = $lastChar + 1; $i <= $charNum; $i++) { - $widths[] = 0; - } - } - - $lastChar = $charNum; - } - - if (isset($font['C'][$charName])) { - $widths[$charNum - $firstChar] = $font['C'][$charName]; - if ($font['isUnicode']) { - $cid_widths[$charName] = $font['C'][$charName]; - } - } - } - } - - if ($font['isUnicode']) { - $font['CIDWidths'] = $cid_widths; - } - - $this->addMessage('selectFont: FirstChar = ' . $firstChar); - $this->addMessage('selectFont: LastChar = ' . $lastChar); - - $widthid = -1; - - if (!$font['isUnicode']) { - // With Unicode, widths array isn't used - - $this->numObj++; - $this->o_contents($this->numObj, 'new', 'raw'); - $this->objects[$this->numObj]['c'] .= '[' . implode(' ', $widths) . ']'; - $widthid = $this->numObj; - } - - $missing_width = 500; - $stemV = 70; - - if (isset($font['MissingWidth'])) { - $missing_width = $font['MissingWidth']; - } - if (isset($font['StdVW'])) { - $stemV = $font['StdVW']; - } else { - if (isset($font['Weight']) && preg_match('!(bold|black)!i', $font['Weight'])) { - $stemV = 120; - } - } - - // load the pfb file, and put that into an object too. - // note that pdf supports only binary format type 1 font files, though there is a - // simple utility to convert them from pfa to pfb. - $data = file_get_contents($fbfile); - - // create the font descriptor - $this->numObj++; - $fontDescriptorId = $this->numObj; - - $this->numObj++; - $pfbid = $this->numObj; - - // determine flags (more than a little flakey, hopefully will not matter much) - $flags = 0; - - if ($font['ItalicAngle'] != 0) { - $flags += pow(2, 6); - } - - if ($font['IsFixedPitch'] === 'true') { - $flags += 1; - } - - $flags += pow(2, 5); // assume non-sybolic - $list = [ - 'Ascent' => 'Ascender', - 'CapHeight' => 'Ascender', //FIXME: php-font-lib is not grabbing this value, so we'll fake it and use the Ascender value // 'CapHeight' - 'MissingWidth' => 'MissingWidth', - 'Descent' => 'Descender', - 'FontBBox' => 'FontBBox', - 'ItalicAngle' => 'ItalicAngle' - ]; - $fdopt = [ - 'Flags' => $flags, - 'FontName' => $adobeFontName, - 'StemV' => $stemV - ]; - - foreach ($list as $k => $v) { - if (isset($font[$v])) { - $fdopt[$k] = $font[$v]; - } - } - - if ($isPfbFont) { - $fdopt['FontFile'] = $pfbid; - } elseif ($isTtfFont) { - $fdopt['FontFile2'] = $pfbid; - } - - $this->o_fontDescriptor($fontDescriptorId, 'new', $fdopt); - - // embed the font program - $this->o_contents($this->numObj, 'new'); - $this->objects[$pfbid]['c'] .= $data; - - // determine the cruicial lengths within this file - if ($isPfbFont) { - $l1 = strpos($data, 'eexec') + 6; - $l2 = strpos($data, '00000000') - $l1; - $l3 = mb_strlen($data, '8bit') - $l2 - $l1; - $this->o_contents( - $this->numObj, - 'add', - ['Length1' => $l1, 'Length2' => $l2, 'Length3' => $l3] - ); - } elseif ($isTtfFont) { - $l1 = mb_strlen($data, '8bit'); - $this->o_contents($this->numObj, 'add', ['Length1' => $l1]); - } - - // tell the font object about all this new stuff - $options = [ - 'BaseFont' => $adobeFontName, - 'MissingWidth' => $missing_width, - 'Widths' => $widthid, - 'FirstChar' => $firstChar, - 'LastChar' => $lastChar, - 'FontDescriptor' => $fontDescriptorId - ]; - - if ($isTtfFont) { - $options['SubType'] = 'TrueType'; - } - - $this->addMessage("adding extra info to font.($fontObjId)"); - - foreach ($options as $fk => $fv) { - $this->addMessage("$fk : $fv"); - } - } - - return $options; - } - - /** - * A toUnicode section, needed for unicode fonts - * - * @param $id - * @param $action - * @return null|string - */ - protected function o_toUnicode($id, $action) - { - switch ($action) { - case 'new': - $this->objects[$id] = [ - 't' => 'toUnicode' - ]; - break; - case 'add': - break; - case 'out': - $ordering = 'UCS'; - $registry = 'Adobe'; - - if ($this->encrypted) { - $this->encryptInit($id); - $ordering = $this->ARC4($ordering); - $registry = $this->filterText($this->ARC4($registry), false, false); - } - - $stream = <<> def -/CMapName /Adobe-Identity-UCS def -/CMapType 2 def -1 begincodespacerange -<0000> -endcodespacerange -1 beginbfrange -<0000> <0000> -endbfrange -endcmap -CMapName currentdict /CMap defineresource pop -end -end -EOT; - - $res = "\n$id 0 obj\n"; - $res .= "<>\n"; - $res .= "stream\n" . $stream . "\nendstream" . "\nendobj"; - - return $res; - } - - return null; - } - - /** - * a font descriptor, needed for including additional fonts - * - * @param $id - * @param $action - * @param string $options - * @return null|string - */ - protected function o_fontDescriptor($id, $action, $options = '') - { - if ($action !== 'new') { - $o = &$this->objects[$id]; - } - - switch ($action) { - case 'new': - $this->objects[$id] = ['t' => 'fontDescriptor', 'info' => $options]; - break; - - case 'out': - $res = "\n$id 0 obj\n<< /Type /FontDescriptor\n"; - foreach ($o['info'] as $label => $value) { - switch ($label) { - case 'Ascent': - case 'CapHeight': - case 'Descent': - case 'Flags': - case 'ItalicAngle': - case 'StemV': - case 'AvgWidth': - case 'Leading': - case 'MaxWidth': - case 'MissingWidth': - case 'StemH': - case 'XHeight': - case 'CharSet': - if (mb_strlen($value, '8bit')) { - $res .= "/$label $value\n"; - } - - break; - case 'FontFile': - case 'FontFile2': - case 'FontFile3': - $res .= "/$label $value 0 R\n"; - break; - - case 'FontBBox': - $res .= "/$label [$value[0] $value[1] $value[2] $value[3]]\n"; - break; - - case 'FontName': - $res .= "/$label /$value\n"; - break; - } - } - - $res .= ">>\nendobj"; - - return $res; - } - - return null; - } - - /** - * the font encoding - * - * @param $id - * @param $action - * @param string $options - * @return null|string - */ - protected function o_fontEncoding($id, $action, $options = '') - { - if ($action !== 'new') { - $o = &$this->objects[$id]; - } - - switch ($action) { - case 'new': - // the options array should contain 'differences' and maybe 'encoding' - $this->objects[$id] = ['t' => 'fontEncoding', 'info' => $options]; - break; - - case 'out': - $res = "\n$id 0 obj\n<< /Type /Encoding\n"; - if (!isset($o['info']['encoding'])) { - $o['info']['encoding'] = 'WinAnsiEncoding'; - } - - if ($o['info']['encoding'] !== 'none') { - $res .= "/BaseEncoding /" . $o['info']['encoding'] . "\n"; - } - - $res .= "/Differences \n["; - - $onum = -100; - - foreach ($o['info']['differences'] as $num => $label) { - if ($num != $onum + 1) { - // we cannot make use of consecutive numbering - $res .= "\n$num /$label"; - } else { - $res .= " /$label"; - } - - $onum = $num; - } - - $res .= "\n]\n>>\nendobj"; - - return $res; - } - - return null; - } - - /** - * a descendent cid font, needed for unicode fonts - * - * @param $id - * @param $action - * @param string|array $options - * @return null|string - */ - protected function o_fontDescendentCID($id, $action, $options = '') - { - if ($action !== 'new') { - $o = &$this->objects[$id]; - } - - switch ($action) { - case 'new': - $this->objects[$id] = ['t' => 'fontDescendentCID', 'info' => $options]; - - // we need a CID system info section - $cidSystemInfoId = ++$this->numObj; - $this->o_cidSystemInfo($cidSystemInfoId, 'new'); - $this->objects[$id]['info']['cidSystemInfo'] = $cidSystemInfoId; - - // and a CID to GID map - $cidToGidMapId = ++$this->numObj; - $this->o_fontGIDtoCIDMap($cidToGidMapId, 'new', $options); - $this->objects[$id]['info']['cidToGidMap'] = $cidToGidMapId; - break; - - case 'add': - foreach ($options as $k => $v) { - switch ($k) { - case 'BaseFont': - $o['info']['name'] = $v; - break; - - case 'FirstChar': - case 'LastChar': - case 'MissingWidth': - case 'FontDescriptor': - case 'SubType': - $this->addMessage("o_fontDescendentCID $k : $v"); - $o['info'][$k] = $v; - break; - } - } - - // pass values down to cid to gid map - $this->o_fontGIDtoCIDMap($o['info']['cidToGidMap'], 'add', $options); - break; - - case 'out': - $res = "\n$id 0 obj\n"; - $res .= "<fonts[$o['info']['fontFileName']]['CIDWidths'])) { - $cid_widths = &$this->fonts[$o['info']['fontFileName']]['CIDWidths']; - $w = ''; - foreach ($cid_widths as $cid => $width) { - $w .= "$cid [$width] "; - } - $res .= "/W [$w]\n"; - } - - $res .= "/CIDToGIDMap " . $o['info']['cidToGidMap'] . " 0 R\n"; - $res .= ">>\n"; - $res .= "endobj"; - - return $res; - } - - return null; - } - - /** - * CID system info section, needed for unicode fonts - * - * @param $id - * @param $action - * @return null|string - */ - protected function o_cidSystemInfo($id, $action) - { - switch ($action) { - case 'new': - $this->objects[$id] = [ - 't' => 'cidSystemInfo' - ]; - break; - case 'add': - break; - case 'out': - $ordering = 'UCS'; - $registry = 'Adobe'; - - if ($this->encrypted) { - $this->encryptInit($id); - $ordering = $this->ARC4($ordering); - $registry = $this->ARC4($registry); - } - - - $res = "\n$id 0 obj\n"; - - $res .= '<objects[$id]; - } - - switch ($action) { - case 'new': - $this->objects[$id] = ['t' => 'fontGIDtoCIDMap', 'info' => $options]; - break; - - case 'out': - $res = "\n$id 0 obj\n"; - $fontFileName = $o['info']['fontFileName']; - $tmp = $this->fonts[$fontFileName]['CIDtoGID'] = base64_decode($this->fonts[$fontFileName]['CIDtoGID']); - - $compressed = isset($this->fonts[$fontFileName]['CIDtoGID_Compressed']) && - $this->fonts[$fontFileName]['CIDtoGID_Compressed']; - - if (!$compressed && isset($o['raw'])) { - $res .= $tmp; - } else { - $res .= "<<"; - - if (!$compressed && $this->compressionReady && $this->options['compression']) { - // then implement ZLIB based compression on this content stream - $compressed = true; - $tmp = gzcompress($tmp, 6); - } - if ($compressed) { - $res .= "\n/Filter /FlateDecode"; - } - - if ($this->encrypted) { - $this->encryptInit($id); - $tmp = $this->ARC4($tmp); - } - - $res .= "\n/Length " . mb_strlen($tmp, '8bit') . ">>\nstream\n$tmp\nendstream"; - } - - $res .= "\nendobj"; - - return $res; - } - - return null; - } - - /** - * the document procset, solves some problems with printing to old PS printers - * - * @param $id - * @param $action - * @param string $options - * @return null|string - */ - protected function o_procset($id, $action, $options = '') - { - if ($action !== 'new') { - $o = &$this->objects[$id]; - } - - switch ($action) { - case 'new': - $this->objects[$id] = ['t' => 'procset', 'info' => ['PDF' => 1, 'Text' => 1]]; - $this->o_pages($this->currentNode, 'procset', $id); - $this->procsetObjectId = $id; - break; - - case 'add': - // this is to add new items to the procset list, despite the fact that this is considered - // obsolete, the items are required for printing to some postscript printers - switch ($options) { - case 'ImageB': - case 'ImageC': - case 'ImageI': - $o['info'][$options] = 1; - break; - } - break; - - case 'out': - $res = "\n$id 0 obj\n["; - foreach ($o['info'] as $label => $val) { - $res .= "/$label "; - } - $res .= "]\nendobj"; - - return $res; - } - - return null; - } - - /** - * define the document information - * - * @param $id - * @param $action - * @param string $options - * @return null|string - */ - protected function o_info($id, $action, $options = '') - { - switch ($action) { - case 'new': - $this->infoObject = $id; - $date = 'D:' . @date('Ymd'); - $this->objects[$id] = [ - 't' => 'info', - 'info' => [ - 'Producer' => 'CPDF (dompdf)', - 'CreationDate' => $date - ] - ]; - break; - case 'Title': - case 'Author': - case 'Subject': - case 'Keywords': - case 'Creator': - case 'Producer': - case 'CreationDate': - case 'ModDate': - case 'Trapped': - $this->objects[$id]['info'][$action] = $options; - break; - - case 'out': - $encrypted = $this->encrypted; - if ($encrypted) { - $this->encryptInit($id); - } - - $res = "\n$id 0 obj\n<<\n"; - $o = &$this->objects[$id]; - foreach ($o['info'] as $k => $v) { - $res .= "/$k ("; - - // dates must be outputted as-is, without Unicode transformations - if ($k !== 'CreationDate' && $k !== 'ModDate') { - $v = $this->utf8toUtf16BE($v); - } - - if ($encrypted) { - $v = $this->ARC4($v); - } - - $res .= $this->filterText($v, false, false); - $res .= ")\n"; - } - - $res .= ">>\nendobj"; - - return $res; - } - - return null; - } - - /** - * an action object, used to link to URLS initially - * - * @param $id - * @param $action - * @param string $options - * @return null|string - */ - protected function o_action($id, $action, $options = '') - { - if ($action !== 'new') { - $o = &$this->objects[$id]; - } - - switch ($action) { - case 'new': - if (is_array($options)) { - $this->objects[$id] = ['t' => 'action', 'info' => $options, 'type' => $options['type']]; - } else { - // then assume a URI action - $this->objects[$id] = ['t' => 'action', 'info' => $options, 'type' => 'URI']; - } - break; - - case 'out': - if ($this->encrypted) { - $this->encryptInit($id); - } - - $res = "\n$id 0 obj\n<< /Type /Action"; - switch ($o['type']) { - case 'ilink': - if (!isset($this->destinations[(string)$o['info']['label']])) { - break; - } - - // there will be an 'label' setting, this is the name of the destination - $res .= "\n/S /GoTo\n/D " . $this->destinations[(string)$o['info']['label']] . " 0 R"; - break; - - case 'URI': - $res .= "\n/S /URI\n/URI ("; - if ($this->encrypted) { - $res .= $this->filterText($this->ARC4($o['info']), false, false); - } else { - $res .= $this->filterText($o['info'], false, false); - } - - $res .= ")"; - break; - } - - $res .= "\n>>\nendobj"; - - return $res; - } - - return null; - } - - /** - * an annotation object, this will add an annotation to the current page. - * initially will support just link annotations - * - * @param $id - * @param $action - * @param string $options - * @return null|string - */ - protected function o_annotation($id, $action, $options = '') - { - if ($action !== 'new') { - $o = &$this->objects[$id]; - } - - switch ($action) { - case 'new': - // add the annotation to the current page - $pageId = $this->currentPage; - $this->o_page($pageId, 'annot', $id); - - // and add the action object which is going to be required - switch ($options['type']) { - case 'link': - $this->objects[$id] = ['t' => 'annotation', 'info' => $options]; - $this->numObj++; - $this->o_action($this->numObj, 'new', $options['url']); - $this->objects[$id]['info']['actionId'] = $this->numObj; - break; - - case 'ilink': - // this is to a named internal link - $label = $options['label']; - $this->objects[$id] = ['t' => 'annotation', 'info' => $options]; - $this->numObj++; - $this->o_action($this->numObj, 'new', ['type' => 'ilink', 'label' => $label]); - $this->objects[$id]['info']['actionId'] = $this->numObj; - break; - } - break; - - case 'out': - $res = "\n$id 0 obj\n<< /Type /Annot"; - switch ($o['info']['type']) { - case 'link': - case 'ilink': - $res .= "\n/Subtype /Link"; - break; - } - $res .= "\n/A " . $o['info']['actionId'] . " 0 R"; - $res .= "\n/Border [0 0 0]"; - $res .= "\n/H /I"; - $res .= "\n/Rect [ "; - - foreach ($o['info']['rect'] as $v) { - $res .= sprintf("%.4F ", $v); - } - - $res .= "]"; - $res .= "\n>>\nendobj"; - - return $res; - } - - return null; - } - - /** - * a page object, it also creates a contents object to hold its contents - * - * @param $id - * @param $action - * @param string $options - * @return null|string - */ - protected function o_page($id, $action, $options = '') - { - if ($action !== 'new') { - $o = &$this->objects[$id]; - } - - switch ($action) { - case 'new': - $this->numPages++; - $this->objects[$id] = [ - 't' => 'page', - 'info' => [ - 'parent' => $this->currentNode, - 'pageNum' => $this->numPages, - 'mediaBox' => $this->objects[$this->currentNode]['info']['mediaBox'] - ] - ]; - - if (is_array($options)) { - // then this must be a page insertion, array should contain 'rid','pos'=[before|after] - $options['id'] = $id; - $this->o_pages($this->currentNode, 'page', $options); - } else { - $this->o_pages($this->currentNode, 'page', $id); - } - - $this->currentPage = $id; - //make a contents object to go with this page - $this->numObj++; - $this->o_contents($this->numObj, 'new', $id); - $this->currentContents = $this->numObj; - $this->objects[$id]['info']['contents'] = []; - $this->objects[$id]['info']['contents'][] = $this->numObj; - - $match = ($this->numPages % 2 ? 'odd' : 'even'); - foreach ($this->addLooseObjects as $oId => $target) { - if ($target === 'all' || $match === $target) { - $this->objects[$id]['info']['contents'][] = $oId; - } - } - break; - - case 'content': - $o['info']['contents'][] = $options; - break; - - case 'annot': - // add an annotation to this page - if (!isset($o['info']['annot'])) { - $o['info']['annot'] = []; - } - - // $options should contain the id of the annotation dictionary - $o['info']['annot'][] = $options; - break; - - case 'out': - $res = "\n$id 0 obj\n<< /Type /Page"; - if (isset($o['info']['mediaBox'])) { - $tmp = $o['info']['mediaBox']; - $res .= "\n/MediaBox [" . sprintf( - '%.3F %.3F %.3F %.3F', - $tmp[0], - $tmp[1], - $tmp[2], - $tmp[3] - ) . ']'; - } - $res .= "\n/Parent " . $o['info']['parent'] . " 0 R"; - - if (isset($o['info']['annot'])) { - $res .= "\n/Annots ["; - foreach ($o['info']['annot'] as $aId) { - $res .= " $aId 0 R"; - } - $res .= " ]"; - } - - $count = count($o['info']['contents']); - if ($count == 1) { - $res .= "\n/Contents " . $o['info']['contents'][0] . " 0 R"; - } else { - if ($count > 1) { - $res .= "\n/Contents [\n"; - - // reverse the page contents so added objects are below normal content - //foreach (array_reverse($o['info']['contents']) as $cId) { - // Back to normal now that I've got transparency working --Benj - foreach ($o['info']['contents'] as $cId) { - $res .= "$cId 0 R\n"; - } - $res .= "]"; - } - } - - $res .= "\n>>\nendobj"; - - return $res; - } - - return null; - } - - /** - * the contents objects hold all of the content which appears on pages - * - * @param $id - * @param $action - * @param string|array $options - * @return null|string - */ - protected function o_contents($id, $action, $options = '') - { - if ($action !== 'new') { - $o = &$this->objects[$id]; - } - - switch ($action) { - case 'new': - $this->objects[$id] = ['t' => 'contents', 'c' => '', 'info' => []]; - if (mb_strlen($options, '8bit') && intval($options)) { - // then this contents is the primary for a page - $this->objects[$id]['onPage'] = $options; - } else { - if ($options === 'raw') { - // then this page contains some other type of system object - $this->objects[$id]['raw'] = 1; - } - } - break; - - case 'add': - // add more options to the declaration - foreach ($options as $k => $v) { - $o['info'][$k] = $v; - } - - case 'out': - $tmp = $o['c']; - $res = "\n$id 0 obj\n"; - - if (isset($this->objects[$id]['raw'])) { - $res .= $tmp; - } else { - $res .= "<<"; - if ($this->compressionReady && $this->options['compression']) { - // then implement ZLIB based compression on this content stream - $res .= " /Filter /FlateDecode"; - $tmp = gzcompress($tmp, 6); - } - - if ($this->encrypted) { - $this->encryptInit($id); - $tmp = $this->ARC4($tmp); - } - - foreach ($o['info'] as $k => $v) { - $res .= "\n/$k $v"; - } - - $res .= "\n/Length " . mb_strlen($tmp, '8bit') . " >>\nstream\n$tmp\nendstream"; - } - - $res .= "\nendobj"; - - return $res; - } - - return null; - } - - /** - * @param $id - * @param $action - * @return string|null - */ - protected function o_embedjs($id, $action) - { - switch ($action) { - case 'new': - $this->objects[$id] = [ - 't' => 'embedjs', - 'info' => [ - 'Names' => '[(EmbeddedJS) ' . ($id + 1) . ' 0 R]' - ] - ]; - break; - - case 'out': - $o = &$this->objects[$id]; - $res = "\n$id 0 obj\n<< "; - foreach ($o['info'] as $k => $v) { - $res .= "\n/$k $v"; - } - $res .= "\n>>\nendobj"; - - return $res; - } - - return null; - } - - /** - * @param $id - * @param $action - * @param string $code - * @return null|string - */ - protected function o_javascript($id, $action, $code = '') - { - switch ($action) { - case 'new': - $this->objects[$id] = [ - 't' => 'javascript', - 'info' => [ - 'S' => '/JavaScript', - 'JS' => '(' . $this->filterText($code, true, false) . ')', - ] - ]; - break; - - case 'out': - $o = &$this->objects[$id]; - $res = "\n$id 0 obj\n<< "; - - foreach ($o['info'] as $k => $v) { - $res .= "\n/$k $v"; - } - $res .= "\n>>\nendobj"; - - return $res; - } - - return null; - } - - /** - * an image object, will be an XObject in the document, includes description and data - * - * @param $id - * @param $action - * @param string $options - * @return null|string - */ - protected function o_image($id, $action, $options = '') - { - switch ($action) { - case 'new': - // make the new object - $this->objects[$id] = ['t' => 'image', 'data' => &$options['data'], 'info' => []]; - - $info =& $this->objects[$id]['info']; - - $info['Type'] = '/XObject'; - $info['Subtype'] = '/Image'; - $info['Width'] = $options['iw']; - $info['Height'] = $options['ih']; - - if (isset($options['masked']) && $options['masked']) { - $info['SMask'] = ($this->numObj - 1) . ' 0 R'; - } - - if (!isset($options['type']) || $options['type'] === 'jpg') { - if (!isset($options['channels'])) { - $options['channels'] = 3; - } - - switch ($options['channels']) { - case 1: - $info['ColorSpace'] = '/DeviceGray'; - break; - case 4: - $info['ColorSpace'] = '/DeviceCMYK'; - break; - default: - $info['ColorSpace'] = '/DeviceRGB'; - break; - } - - if ($info['ColorSpace'] === '/DeviceCMYK') { - $info['Decode'] = '[1 0 1 0 1 0 1 0]'; - } - - $info['Filter'] = '/DCTDecode'; - $info['BitsPerComponent'] = 8; - } else { - if ($options['type'] === 'png') { - $info['Filter'] = '/FlateDecode'; - $info['DecodeParms'] = '<< /Predictor 15 /Colors ' . $options['ncolor'] . ' /Columns ' . $options['iw'] . ' /BitsPerComponent ' . $options['bitsPerComponent'] . '>>'; - - if ($options['isMask']) { - $info['ColorSpace'] = '/DeviceGray'; - } else { - if (mb_strlen($options['pdata'], '8bit')) { - $tmp = ' [ /Indexed /DeviceRGB ' . (mb_strlen($options['pdata'], '8bit') / 3 - 1) . ' '; - $this->numObj++; - $this->o_contents($this->numObj, 'new'); - $this->objects[$this->numObj]['c'] = $options['pdata']; - $tmp .= $this->numObj . ' 0 R'; - $tmp .= ' ]'; - $info['ColorSpace'] = $tmp; - - if (isset($options['transparency'])) { - $transparency = $options['transparency']; - switch ($transparency['type']) { - case 'indexed': - $tmp = ' [ ' . $transparency['data'] . ' ' . $transparency['data'] . '] '; - $info['Mask'] = $tmp; - break; - - case 'color-key': - $tmp = ' [ ' . - $transparency['r'] . ' ' . $transparency['r'] . - $transparency['g'] . ' ' . $transparency['g'] . - $transparency['b'] . ' ' . $transparency['b'] . - ' ] '; - $info['Mask'] = $tmp; - break; - } - } - } else { - if (isset($options['transparency'])) { - $transparency = $options['transparency']; - - switch ($transparency['type']) { - case 'indexed': - $tmp = ' [ ' . $transparency['data'] . ' ' . $transparency['data'] . '] '; - $info['Mask'] = $tmp; - break; - - case 'color-key': - $tmp = ' [ ' . - $transparency['r'] . ' ' . $transparency['r'] . ' ' . - $transparency['g'] . ' ' . $transparency['g'] . ' ' . - $transparency['b'] . ' ' . $transparency['b'] . - ' ] '; - $info['Mask'] = $tmp; - break; - } - } - $info['ColorSpace'] = '/' . $options['color']; - } - } - - $info['BitsPerComponent'] = $options['bitsPerComponent']; - } - } - - // assign it a place in the named resource dictionary as an external object, according to - // the label passed in with it. - $this->o_pages($this->currentNode, 'xObject', ['label' => $options['label'], 'objNum' => $id]); - - // also make sure that we have the right procset object for it. - $this->o_procset($this->procsetObjectId, 'add', 'ImageC'); - break; - - case 'out': - $o = &$this->objects[$id]; - $tmp = &$o['data']; - $res = "\n$id 0 obj\n<<"; - - foreach ($o['info'] as $k => $v) { - $res .= "\n/$k $v"; - } - - if ($this->encrypted) { - $this->encryptInit($id); - $tmp = $this->ARC4($tmp); - } - - $res .= "\n/Length " . mb_strlen($tmp, '8bit') . ">>\nstream\n$tmp\nendstream\nendobj"; - - return $res; - } - - return null; - } - - /** - * graphics state object - * - * @param $id - * @param $action - * @param string $options - * @return null|string - */ - protected function o_extGState($id, $action, $options = "") - { - static $valid_params = [ - "LW", - "LC", - "LC", - "LJ", - "ML", - "D", - "RI", - "OP", - "op", - "OPM", - "Font", - "BG", - "BG2", - "UCR", - "TR", - "TR2", - "HT", - "FL", - "SM", - "SA", - "BM", - "SMask", - "CA", - "ca", - "AIS", - "TK" - ]; - - switch ($action) { - case "new": - $this->objects[$id] = ['t' => 'extGState', 'info' => $options]; - - // Tell the pages about the new resource - $this->numStates++; - $this->o_pages($this->currentNode, 'extGState', ["objNum" => $id, "stateNum" => $this->numStates]); - break; - - case "out": - $o = &$this->objects[$id]; - $res = "\n$id 0 obj\n<< /Type /ExtGState\n"; - - foreach ($o["info"] as $k => $v) { - if (!in_array($k, $valid_params)) { - continue; - } - $res .= "/$k $v\n"; - } - - $res .= ">>\nendobj"; - - return $res; - } - - return null; - } - - /** - * @param integer $id - * @param string $action - * @param mixed $options - * @return string - */ - protected function o_xobject($id, $action, $options = '') - { - switch ($action) { - case 'new': - $this->objects[$id] = ['t' => 'xobject', 'info' => $options, 'c' => '']; - break; - - case 'procset': - $this->objects[$id]['procset'] = $options; - break; - - case 'font': - $this->objects[$id]['fonts'][$options['fontNum']] = [ - 'objNum' => $options['objNum'], - 'fontNum' => $options['fontNum'] - ]; - break; - - case 'xObject': - $this->objects[$id]['xObjects'][] = ['objNum' => $options['objNum'], 'label' => $options['label']]; - break; - - case 'out': - $o = &$this->objects[$id]; - $res = "\n$id 0 obj\n<< /Type /XObject\n"; - - foreach ($o["info"] as $k => $v) { - switch ($k) { - case 'Subtype': - $res .= "/Subtype /$v\n"; - break; - case 'bbox': - $res .= "/BBox ["; - foreach ($v as $value) { - $res .= sprintf("%.4F ", $value); - } - $res .= "]\n"; - break; - default: - $res .= "/$k $v\n"; - break; - } - } - $res .= "/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]\n"; - - $res .= "/Resources <<"; - if (isset($o['procset'])) { - $res .= "\n/ProcSet " . $o['procset'] . " 0 R"; - } else { - $res .= "\n/ProcSet [/PDF /Text /ImageB /ImageC /ImageI]"; - } - if (isset($o['fonts']) && count($o['fonts'])) { - $res .= "\n/Font << "; - foreach ($o['fonts'] as $finfo) { - $res .= "\n/F" . $finfo['fontNum'] . " " . $finfo['objNum'] . " 0 R"; - } - $res .= "\n>>"; - } - if (isset($o['xObjects']) && count($o['xObjects'])) { - $res .= "\n/XObject << "; - foreach ($o['xObjects'] as $finfo) { - $res .= "\n/" . $finfo['label'] . " " . $finfo['objNum'] . " 0 R"; - } - $res .= "\n>>"; - } - $res .= "\n>>\n"; - - $tmp = $o["c"]; - if ($this->compressionReady && $this->options['compression']) { - // then implement ZLIB based compression on this content stream - $res .= " /Filter /FlateDecode\n"; - $tmp = gzcompress($tmp, 6); - } - - if ($this->encrypted) { - $this->encryptInit($id); - $tmp = $this->ARC4($tmp); - } - - $res .= "/Length " . mb_strlen($tmp, '8bit') . " >>\n"; - $res .= "stream\n" . $tmp . "\nendstream" . "\nendobj"; - - return $res; - } - - return null; - } - - /** - * @param $id - * @param $action - * @param string $options - * @return null|string - */ - protected function o_acroform($id, $action, $options = '') - { - switch ($action) { - case "new": - $this->o_catalog($this->catalogId, 'acroform', $id); - $this->objects[$id] = array('t' => 'acroform', 'info' => $options); - break; - - case 'addfield': - $this->objects[$id]['info']['Fields'][] = $options; - break; - - case 'font': - $this->objects[$id]['fonts'][$options['fontNum']] = [ - 'objNum' => $options['objNum'], - 'fontNum' => $options['fontNum'] - ]; - break; - - case "out": - $o = &$this->objects[$id]; - $res = "\n$id 0 obj\n<<"; - - foreach ($o["info"] as $k => $v) { - switch ($k) { - case 'Fields': - $res .= " /Fields ["; - foreach ($v as $i) { - $res .= "$i 0 R "; - } - $res .= "]\n"; - break; - default: - $res .= "/$k $v\n"; - } - } - - $res .= "/DR <<\n"; - if (isset($o['fonts']) && count($o['fonts'])) { - $res .= "/Font << \n"; - foreach ($o['fonts'] as $finfo) { - $res .= "/F" . $finfo['fontNum'] . " " . $finfo['objNum'] . " 0 R\n"; - } - $res .= ">>\n"; - } - $res .= ">>\n"; - - $res .= ">>\nendobj"; - - return $res; - } - - return null; - } - - /** - * @param $id - * @param $action - * @param mixed $options - * @return null|string - */ - protected function o_field($id, $action, $options = '') - { - switch ($action) { - case "new": - $this->o_page($options['pageid'], 'annot', $id); - $this->o_acroform($this->acroFormId, 'addfield', $id); - $this->objects[$id] = ['t' => 'field', 'info' => $options]; - break; - - case 'set': - $this->objects[$id]['info'] = array_merge($this->objects[$id]['info'], $options); - break; - - case "out": - $o = &$this->objects[$id]; - $res = "\n$id 0 obj\n<< /Type /Annot /Subtype /Widget \n"; - - $encrypted = $this->encrypted; - if ($encrypted) { - $this->encryptInit($id); - } - - foreach ($o["info"] as $k => $v) { - switch ($k) { - case 'pageid': - $res .= "/P $v 0 R\n"; - break; - case 'value': - if ($encrypted) { - $v = $this->filterText($this->ARC4($v), false, false); - } - $res .= "/V ($v)\n"; - break; - case 'refvalue': - $res .= "/V $v 0 R\n"; - break; - case 'da': - if ($encrypted) { - $v = $this->filterText($this->ARC4($v), false, false); - } - $res .= "/DA ($v)\n"; - break; - case 'options': - $res .= "/Opt [\n"; - foreach ($v as $opt) { - if ($encrypted) { - $opt = $this->filterText($this->ARC4($opt), false, false); - } - $res .= "($opt)\n"; - } - $res .= "]\n"; - break; - case 'rect': - $res .= "/Rect ["; - foreach ($v as $value) { - $res .= sprintf("%.4F ", $value); - } - $res .= "]\n"; - break; - case 'appearance': - $res .= "/AP << "; - foreach ($v as $a => $ref) { - $res .= "/$a $ref 0 R "; - } - $res .= ">>\n"; - break; - case 'T': - if ($encrypted) { - $v = $this->filterText($this->ARC4($v), false, false); - } - $res .= "/T ($v)\n"; - break; - default: - $res .= "/$k $v\n"; - } - - } - - $res .= ">>\nendobj"; - - return $res; - } - - return null; - } - - /** - * - * @param $id - * @param $action - * @param string $options - * @return null|string - */ - protected function o_sig($id, $action, $options = '') - { - $sign_maxlen = $this->signatureMaxLen; - - switch ($action) { - case "new": - $this->objects[$id] = array('t' => 'sig', 'info' => $options); - $this->byteRange[$id] = ['t' => 'sig']; - break; - - case 'byterange': - $o = &$this->objects[$id]; - $content =& $options['content']; - $content_len = strlen($content); - $pos = strpos($content, sprintf("/ByteRange [ %'.010d", $id)); - $len = strlen('/ByteRange [ ********** ********** ********** ********** ]'); - $rangeStartPos = $pos + $len + 1 + 10; // before '<' - $content = substr_replace($content, str_pad(sprintf('/ByteRange [ 0 %u %u %u ]', $rangeStartPos, $rangeStartPos + $sign_maxlen + 2, $content_len - 2 - $sign_maxlen - $rangeStartPos), $len, ' ', STR_PAD_RIGHT), $pos, $len); - - $fuid = uniqid(); - $tmpInput = $this->tmp . "/pkcs7.tmp." . $fuid . '.in'; - $tmpOutput = $this->tmp . "/pkcs7.tmp." . $fuid . '.out'; - - if (file_put_contents($tmpInput, substr($content, 0, $rangeStartPos)) === false) { - throw new \Exception("Unable to write temporary file for signing."); - } - if (file_put_contents($tmpInput, substr($content, $rangeStartPos + 2 + $sign_maxlen), - FILE_APPEND) === false) { - throw new \Exception("Unable to write temporary file for signing."); - } - - if (openssl_pkcs7_sign($tmpInput, $tmpOutput, - $o['info']['SignCert'], - array($o['info']['PrivKey'], $o['info']['Password']), - array(), PKCS7_BINARY | PKCS7_DETACHED) === false) { - throw new \Exception("Failed to prepare signature."); - } - - $signature = file_get_contents($tmpOutput); - - unlink($tmpInput); - unlink($tmpOutput); - - $sign = substr($signature, (strpos($signature, "%%EOF\n\n------") + 13)); - list($head, $signature) = explode("\n\n", $sign); - - $signature = base64_decode(trim($signature)); - - $signature = current(unpack('H*', $signature)); - $signature = str_pad($signature, $sign_maxlen, '0'); - $siglen = strlen($signature); - if (strlen($signature) > $sign_maxlen) { - throw new \Exception("Signature length ($siglen) exceeds the $sign_maxlen limit."); - } - - $content = substr_replace($content, $signature, $rangeStartPos + 1, $sign_maxlen); - break; - - case "out": - $res = "\n$id 0 obj\n<<\n"; - - $encrypted = $this->encrypted; - if ($encrypted) { - $this->encryptInit($id); - } - - $res .= "/ByteRange " .sprintf("[ %'.010d ********** ********** ********** ]\n", $id); - $res .= "/Contents <" . str_pad('', $sign_maxlen, '0') . ">\n"; - $res .= "/Filter/Adobe.PPKLite\n"; //PPKMS \n"; - $res .= "/Type/Sig/SubFilter/adbe.pkcs7.detached \n"; - - $date = "D:" . substr_replace(date('YmdHisO'), '\'', -2, 0) . '\''; - if ($encrypted) { - $date = $this->ARC4($date); - } - - $res .= "/M ($date)\n"; - $res .= "/Prop_Build << /App << /Name /DomPDF >> /Filter << /Name /Adobe.PPKLite >> >>\n"; - - $o = &$this->objects[$id]; - foreach ($o['info'] as $k => $v) { - switch ($k) { - case 'Name': - case 'Location': - case 'Reason': - case 'ContactInfo': - if ($v !== null && $v !== '') { - $res .= "/$k (" . - ($encrypted ? $this->filterText($this->ARC4($v), false, false) : $v) . ") \n"; - } - break; - } - } - $res .= ">>\nendobj"; - - return $res; - } - - return null; - } - - /** - * encryption object. - * - * @param $id - * @param $action - * @param string $options - * @return string|null - */ - protected function o_encryption($id, $action, $options = '') - { - switch ($action) { - case 'new': - // make the new object - $this->objects[$id] = ['t' => 'encryption', 'info' => $options]; - $this->arc4_objnum = $id; - break; - - case 'keys': - // figure out the additional parameters required - $pad = chr(0x28) . chr(0xBF) . chr(0x4E) . chr(0x5E) . chr(0x4E) . chr(0x75) . chr(0x8A) . chr(0x41) - . chr(0x64) . chr(0x00) . chr(0x4E) . chr(0x56) . chr(0xFF) . chr(0xFA) . chr(0x01) . chr(0x08) - . chr(0x2E) . chr(0x2E) . chr(0x00) . chr(0xB6) . chr(0xD0) . chr(0x68) . chr(0x3E) . chr(0x80) - . chr(0x2F) . chr(0x0C) . chr(0xA9) . chr(0xFE) . chr(0x64) . chr(0x53) . chr(0x69) . chr(0x7A); - - $info = $this->objects[$id]['info']; - - $len = mb_strlen($info['owner'], '8bit'); - - if ($len > 32) { - $owner = substr($info['owner'], 0, 32); - } else { - if ($len < 32) { - $owner = $info['owner'] . substr($pad, 0, 32 - $len); - } else { - $owner = $info['owner']; - } - } - - $len = mb_strlen($info['user'], '8bit'); - if ($len > 32) { - $user = substr($info['user'], 0, 32); - } else { - if ($len < 32) { - $user = $info['user'] . substr($pad, 0, 32 - $len); - } else { - $user = $info['user']; - } - } - - $tmp = $this->md5_16($owner); - $okey = substr($tmp, 0, 5); - $this->ARC4_init($okey); - $ovalue = $this->ARC4($user); - $this->objects[$id]['info']['O'] = $ovalue; - - // now make the u value, phew. - $tmp = $this->md5_16( - $user . $ovalue . chr($info['p']) . chr(255) . chr(255) . chr(255) . hex2bin($this->fileIdentifier) - ); - - $ukey = substr($tmp, 0, 5); - $this->ARC4_init($ukey); - $this->encryptionKey = $ukey; - $this->encrypted = true; - $uvalue = $this->ARC4($pad); - $this->objects[$id]['info']['U'] = $uvalue; - // initialize the arc4 array - break; - - case 'out': - $o = &$this->objects[$id]; - - $res = "\n$id 0 obj\n<<"; - $res .= "\n/Filter /Standard"; - $res .= "\n/V 1"; - $res .= "\n/R 2"; - $res .= "\n/O (" . $this->filterText($o['info']['O'], false, false) . ')'; - $res .= "\n/U (" . $this->filterText($o['info']['U'], false, false) . ')'; - // and the p-value needs to be converted to account for the twos-complement approach - $o['info']['p'] = (($o['info']['p'] ^ 255) + 1) * -1; - $res .= "\n/P " . ($o['info']['p']); - $res .= "\n>>\nendobj"; - - return $res; - } - - return null; - } - - protected function o_indirect_references($id, $action, $options = null) - { - switch ($action) { - case 'new': - case 'add': - if ($id === 0) { - $id = ++$this->numObj; - $this->o_catalog($this->catalogId, 'names', $id); - $this->objects[$id] = ['t' => 'indirect_references', 'info' => $options]; - $this->indirectReferenceId = $id; - } else { - $this->objects[$id]['info'] = array_merge($this->objects[$id]['info'], $options); - } - break; - case 'out': - $res = "\n$id 0 obj << "; - - foreach ($this->objects[$id]['info'] as $referenceObjName => $referenceObjId) { - $res .= "/$referenceObjName $referenceObjId 0 R "; - } - - $res .= ">> endobj"; - return $res; - } - - return null; - } - - protected function o_names($id, $action, $options = null) - { - switch ($action) { - case 'new': - case 'add': - if ($id === 0) { - $id = ++$this->numObj; - $this->objects[$id] = ['t' => 'names', 'info' => [$options]]; - $this->o_indirect_references($this->indirectReferenceId, 'add', ['EmbeddedFiles' => $id]); - $this->embeddedFilesId = $id; - } else { - $this->objects[$id]['info'][] = $options; - } - break; - case 'out': - $info = &$this->objects[$id]['info']; - $res = ''; - if (count($info) > 0) { - $res = "\n$id 0 obj << /Names [ "; - - if ($this->encrypted) { - $this->encryptInit($id); - } - - foreach ($info as $entry) { - if ($this->encrypted) { - $filename = $this->ARC4($entry['filename']); - } else { - $filename = $entry['filename']; - } - - $res .= "($filename) " . $entry['dict_reference'] . " 0 R "; - } - - $res .= "] >> endobj"; - } - return $res; - } - - return null; - } - - protected function o_embedded_file_dictionary($id, $action, $options = null) - { - switch ($action) { - case 'new': - $embeddedFileId = ++$this->numObj; - $options['embedded_reference'] = $embeddedFileId; - $this->objects[$id] = ['t' => 'embedded_file_dictionary', 'info' => $options]; - $this->o_embedded_file($embeddedFileId, 'new', $options); - $options['dict_reference'] = $id; - $this->o_names($this->embeddedFilesId, 'add', $options); - break; - case 'out': - $info = &$this->objects[$id]['info']; - $filename = $this->utf8toUtf16BE($info['filename']); - $description = $this->utf8toUtf16BE($info['description']); - - if ($this->encrypted) { - $this->encryptInit($id); - $filename = $this->ARC4($filename); - $description = $this->ARC4($description); - } - - $filename = $this->filterText($filename, false, false); - $description = $this->filterText($description, false, false); - - $res = "\n$id 0 obj <>"; - $res .= " /F ($filename) /UF ($filename) /Desc ($description)"; - $res .= " >> endobj"; - return $res; - } - - return null; - } - - protected function o_embedded_file($id, $action, $options = null): ?string - { - switch ($action) { - case 'new': - $this->objects[$id] = ['t' => 'embedded_file', 'info' => $options]; - break; - case 'out': - $info = &$this->objects[$id]['info']; - - if ($this->compressionReady) { - $filepath = $info['filepath']; - $checksum = md5_file($filepath); - $f = fopen($filepath, "rb"); - - $file_content_compressed = ''; - $deflateContext = deflate_init(ZLIB_ENCODING_DEFLATE, ['level' => 6]); - while (($block = fread($f, 8192))) { - $file_content_compressed .= deflate_add($deflateContext, $block, ZLIB_NO_FLUSH); - } - $file_content_compressed .= deflate_add($deflateContext, '', ZLIB_FINISH); - $file_size_uncompressed = ftell($f); - fclose($f); - } else { - $file_content = file_get_contents($info['filepath']); - $file_size_uncompressed = mb_strlen($file_content, '8bit'); - $checksum = md5($file_content); - } - - if ($this->encrypted) { - $this->encryptInit($id); - $checksum = $this->ARC4($checksum); - $file_content_compressed = $this->ARC4($file_content_compressed); - } - $file_size_compressed = mb_strlen($file_content_compressed, '8bit'); - - $res = "\n$id 0 obj <>" . - " /Type/EmbeddedFile /Filter/FlateDecode" . - " /Length $file_size_compressed >> stream\n$file_content_compressed\nendstream\nendobj"; - - return $res; - } - - return null; - } - - /** - * ARC4 functions - * A series of function to implement ARC4 encoding in PHP - */ - - /** - * calculate the 16 byte version of the 128 bit md5 digest of the string - * - * @param $string - * @return string - */ - function md5_16($string) - { - $tmp = md5($string); - $out = ''; - for ($i = 0; $i <= 30; $i = $i + 2) { - $out .= chr(hexdec(substr($tmp, $i, 2))); - } - - return $out; - } - - /** - * initialize the encryption for processing a particular object - * - * @param $id - */ - function encryptInit($id) - { - $tmp = $this->encryptionKey; - $hex = dechex($id); - if (mb_strlen($hex, '8bit') < 6) { - $hex = substr('000000', 0, 6 - mb_strlen($hex, '8bit')) . $hex; - } - $tmp .= chr(hexdec(substr($hex, 4, 2))) - . chr(hexdec(substr($hex, 2, 2))) - . chr(hexdec(substr($hex, 0, 2))) - . chr(0) - . chr(0) - ; - $key = $this->md5_16($tmp); - $this->ARC4_init(substr($key, 0, 10)); - } - - /** - * initialize the ARC4 encryption - * - * @param string $key - */ - function ARC4_init($key = '') - { - $this->arc4 = ''; - - // setup the control array - if (mb_strlen($key, '8bit') == 0) { - return; - } - - $k = ''; - while (mb_strlen($k, '8bit') < 256) { - $k .= $key; - } - - $k = substr($k, 0, 256); - for ($i = 0; $i < 256; $i++) { - $this->arc4 .= chr($i); - } - - $j = 0; - - for ($i = 0; $i < 256; $i++) { - $t = $this->arc4[$i]; - $j = ($j + ord($t) + ord($k[$i])) % 256; - $this->arc4[$i] = $this->arc4[$j]; - $this->arc4[$j] = $t; - } - } - - /** - * ARC4 encrypt a text string - * - * @param $text - * @return string - */ - function ARC4($text) - { - $len = mb_strlen($text, '8bit'); - $a = 0; - $b = 0; - $c = $this->arc4; - $out = ''; - for ($i = 0; $i < $len; $i++) { - $a = ($a + 1) % 256; - $t = $c[$a]; - $b = ($b + ord($t)) % 256; - $c[$a] = $c[$b]; - $c[$b] = $t; - $k = ord($c[(ord($c[$a]) + ord($c[$b])) % 256]); - $out .= chr(ord($text[$i]) ^ $k); - } - - return $out; - } - - /** - * functions which can be called to adjust or add to the document - */ - - /** - * add a link in the document to an external URL - * - * @param $url - * @param $x0 - * @param $y0 - * @param $x1 - * @param $y1 - */ - function addLink($url, $x0, $y0, $x1, $y1) - { - $this->numObj++; - $info = ['type' => 'link', 'url' => $url, 'rect' => [$x0, $y0, $x1, $y1]]; - $this->o_annotation($this->numObj, 'new', $info); - } - - /** - * add a link in the document to an internal destination (ie. within the document) - * - * @param $label - * @param $x0 - * @param $y0 - * @param $x1 - * @param $y1 - */ - function addInternalLink($label, $x0, $y0, $x1, $y1) - { - $this->numObj++; - $info = ['type' => 'ilink', 'label' => $label, 'rect' => [$x0, $y0, $x1, $y1]]; - $this->o_annotation($this->numObj, 'new', $info); - } - - /** - * set the encryption of the document - * can be used to turn it on and/or set the passwords which it will have. - * also the functions that the user will have are set here, such as print, modify, add - * - * @param string $userPass - * @param string $ownerPass - * @param array $pc - */ - function setEncryption($userPass = '', $ownerPass = '', $pc = []) - { - $p = bindec("11000000"); - - $options = ['print' => 4, 'modify' => 8, 'copy' => 16, 'add' => 32]; - - foreach ($pc as $k => $v) { - if ($v && isset($options[$k])) { - $p += $options[$k]; - } else { - if (isset($options[$v])) { - $p += $options[$v]; - } - } - } - - // implement encryption on the document - if ($this->arc4_objnum == 0) { - // then the block does not exist already, add it. - $this->numObj++; - if (mb_strlen($ownerPass) == 0) { - $ownerPass = $userPass; - } - - $this->o_encryption($this->numObj, 'new', ['user' => $userPass, 'owner' => $ownerPass, 'p' => $p]); - } - } - - /** - * should be used for internal checks, not implemented as yet - */ - function checkAllHere() - { - } - - /** - * return the pdf stream as a string returned from the function - * - * @param bool $debug - * @return string - */ - function output($debug = false) - { - if ($debug) { - // turn compression off - $this->options['compression'] = false; - } - - if ($this->javascript) { - $this->numObj++; - - $js_id = $this->numObj; - $this->o_embedjs($js_id, 'new'); - $this->o_javascript(++$this->numObj, 'new', $this->javascript); - - $id = $this->catalogId; - - $this->o_indirect_references($this->indirectReferenceId, 'add', ['JavaScript' => $js_id]); - } - - if ($this->fileIdentifier === '') { - $tmp = implode('', $this->objects[$this->infoObject]['info']); - $this->fileIdentifier = md5('DOMPDF' . __FILE__ . $tmp . microtime() . mt_rand()); - } - - if ($this->arc4_objnum) { - $this->o_encryption($this->arc4_objnum, 'keys'); - $this->ARC4_init($this->encryptionKey); - } - - $this->checkAllHere(); - - $xref = []; - $content = '%PDF-' . self::PDF_VERSION; - $pos = mb_strlen($content, '8bit'); - - // pre-process o_font objects before output of all objects - foreach ($this->objects as $k => $v) { - if ($v['t'] === 'font') { - $this->o_font($k, 'add'); - } - } - - foreach ($this->objects as $k => $v) { - $tmp = 'o_' . $v['t']; - $cont = $this->$tmp($k, 'out'); - $content .= $cont; - $xref[] = $pos + 1; //+1 to account for \n at the start of each object - $pos += mb_strlen($cont, '8bit'); - } - - $content .= "\nxref\n0 " . (count($xref) + 1) . "\n0000000000 65535 f \n"; - - foreach ($xref as $p) { - $content .= str_pad($p, 10, "0", STR_PAD_LEFT) . " 00000 n \n"; - } - - $content .= "trailer\n<<\n" . - '/Size ' . (count($xref) + 1) . "\n" . - '/Root 1 0 R' . "\n" . - '/Info ' . $this->infoObject . " 0 R\n" - ; - - // if encryption has been applied to this document then add the marker for this dictionary - if ($this->arc4_objnum > 0) { - $content .= '/Encrypt ' . $this->arc4_objnum . " 0 R\n"; - } - - $content .= '/ID[<' . $this->fileIdentifier . '><' . $this->fileIdentifier . ">]\n"; - - // account for \n added at start of xref table - $pos++; - - $content .= ">>\nstartxref\n$pos\n%%EOF\n"; - - if (count($this->byteRange) > 0) { - foreach ($this->byteRange as $k => $v) { - $tmp = 'o_' . $v['t']; - $this->$tmp($k, 'byterange', ['content' => &$content]); - } - } - - return $content; - } - - /** - * initialize a new document - * if this is called on an existing document results may be unpredictable, but the existing document would be lost at minimum - * this function is called automatically by the constructor function - * - * @param array $pageSize - */ - private function newDocument($pageSize = [0, 0, 612, 792]) - { - $this->numObj = 0; - $this->objects = []; - - $this->numObj++; - $this->o_catalog($this->numObj, 'new'); - - $this->numObj++; - $this->o_outlines($this->numObj, 'new'); - - $this->numObj++; - $this->o_pages($this->numObj, 'new'); - - $this->o_pages($this->numObj, 'mediaBox', $pageSize); - $this->currentNode = 3; - - $this->numObj++; - $this->o_procset($this->numObj, 'new'); - - $this->numObj++; - $this->o_info($this->numObj, 'new'); - - $this->numObj++; - $this->o_page($this->numObj, 'new'); - - // need to store the first page id as there is no way to get it to the user during - // startup - $this->firstPageId = $this->currentContents; - } - - /** - * open the font file and return a php structure containing it. - * first check if this one has been done before and saved in a form more suited to php - * note that if a php serialized version does not exist it will try and make one, but will - * require write access to the directory to do it... it is MUCH faster to have these serialized - * files. - * - * @param $font - */ - private function openFont($font) - { - // assume that $font contains the path and file but not the extension - $name = basename($font); - $dir = dirname($font); - - $fontcache = $this->fontcache; - if ($fontcache == '') { - $fontcache = $dir; - } - - //$name filename without folder and extension of font metrics - //$dir folder of font metrics - //$fontcache folder of runtime created php serialized version of font metrics. - // If this is not given, the same folder as the font metrics will be used. - // Storing and reusing serialized versions improves speed much - - $this->addMessage("openFont: $font - $name"); - - if (!$this->isUnicode || in_array(mb_strtolower(basename($name)), self::$coreFonts)) { - $metrics_name = "$name.afm"; - } else { - $metrics_name = "$name.ufm"; - } - - $cache_name = "$metrics_name.json"; - $this->addMessage("metrics: $metrics_name, cache: $cache_name"); - - if (file_exists($fontcache . '/' . $cache_name)) { - $this->addMessage("openFont: json metrics file exists $fontcache/$cache_name"); - $cached_font_info = json_decode(file_get_contents($fontcache . '/' . $cache_name), true); - if (!isset($cached_font_info['_version_']) || $cached_font_info['_version_'] != $this->fontcacheVersion) { - $this->addMessage('openFont: font cache is out of date, regenerating'); - } else { - $this->fonts[$font] = $cached_font_info; - } - } - - if (!isset($this->fonts[$font]) && file_exists("$dir/$metrics_name")) { - // then rebuild the php_.afm file from the .afm file - $this->addMessage("openFont: build php file from $dir/$metrics_name"); - $data = []; - - // 20 => 'space' - $data['codeToName'] = []; - - // Since we're not going to enable Unicode for the core fonts we need to use a font-based - // setting for Unicode support rather than a global setting. - $data['isUnicode'] = (strtolower(substr($metrics_name, -3)) !== 'afm'); - - $cidtogid = ''; - if ($data['isUnicode']) { - $cidtogid = str_pad('', 256 * 256 * 2, "\x00"); - } - - $file = file("$dir/$metrics_name"); - - foreach ($file as $rowA) { - $row = trim($rowA); - $pos = strpos($row, ' '); - - if ($pos) { - // then there must be some keyword - $key = substr($row, 0, $pos); - switch ($key) { - case 'FontName': - case 'FullName': - case 'FamilyName': - case 'PostScriptName': - case 'Weight': - case 'ItalicAngle': - case 'IsFixedPitch': - case 'CharacterSet': - case 'UnderlinePosition': - case 'UnderlineThickness': - case 'Version': - case 'EncodingScheme': - case 'CapHeight': - case 'XHeight': - case 'Ascender': - case 'Descender': - case 'StdHW': - case 'StdVW': - case 'StartCharMetrics': - case 'FontHeightOffset': // OAR - Added so we can offset the height calculation of a Windows font. Otherwise it's too big. - $data[$key] = trim(substr($row, $pos)); - break; - - case 'FontBBox': - $data[$key] = explode(' ', trim(substr($row, $pos))); - break; - - //C 39 ; WX 222 ; N quoteright ; B 53 463 157 718 ; - case 'C': // Found in AFM files - $bits = explode(';', trim($row)); - $dtmp = ['C' => null, 'N' => null, 'WX' => null, 'B' => []]; - - foreach ($bits as $bit) { - $bits2 = explode(' ', trim($bit)); - if (mb_strlen($bits2[0], '8bit') == 0) { - continue; - } - - if (count($bits2) > 2) { - $dtmp[$bits2[0]] = []; - for ($i = 1; $i < count($bits2); $i++) { - $dtmp[$bits2[0]][] = $bits2[$i]; - } - } else { - if (count($bits2) == 2) { - $dtmp[$bits2[0]] = $bits2[1]; - } - } - } - - $c = (int)$dtmp['C']; - $n = $dtmp['N']; - $width = floatval($dtmp['WX']); - - if ($c >= 0) { - if (!ctype_xdigit($n) || $c != hexdec($n)) { - $data['codeToName'][$c] = $n; - } - $data['C'][$c] = $width; - } elseif (isset($n)) { - $data['C'][$n] = $width; - } - - if (!isset($data['MissingWidth']) && $c === -1 && $n === '.notdef') { - $data['MissingWidth'] = $width; - } - - break; - - // U 827 ; WX 0 ; N squaresubnosp ; G 675 ; - case 'U': // Found in UFM files - if (!$data['isUnicode']) { - break; - } - - $bits = explode(';', trim($row)); - $dtmp = ['G' => null, 'N' => null, 'U' => null, 'WX' => null]; - - foreach ($bits as $bit) { - $bits2 = explode(' ', trim($bit)); - if (mb_strlen($bits2[0], '8bit') === 0) { - continue; - } - - if (count($bits2) > 2) { - $dtmp[$bits2[0]] = []; - for ($i = 1; $i < count($bits2); $i++) { - $dtmp[$bits2[0]][] = $bits2[$i]; - } - } else { - if (count($bits2) == 2) { - $dtmp[$bits2[0]] = $bits2[1]; - } - } - } - - $c = (int)$dtmp['U']; - $n = $dtmp['N']; - $glyph = $dtmp['G']; - $width = floatval($dtmp['WX']); - - if ($c >= 0) { - // Set values in CID to GID map - if ($c >= 0 && $c < 0xFFFF && $glyph) { - $cidtogid[$c * 2] = chr($glyph >> 8); - $cidtogid[$c * 2 + 1] = chr($glyph & 0xFF); - } - - if (!ctype_xdigit($n) || $c != hexdec($n)) { - $data['codeToName'][$c] = $n; - } - $data['C'][$c] = $width; - } elseif (isset($n)) { - $data['C'][$n] = $width; - } - - if (!isset($data['MissingWidth']) && $c === -1 && $n === '.notdef') { - $data['MissingWidth'] = $width; - } - - break; - - case 'KPX': - break; // don't include them as they are not used yet - //KPX Adieresis yacute -40 - /*$bits = explode(' ', trim($row)); - $data['KPX'][$bits[1]][$bits[2]] = $bits[3]; - break;*/ - } - } - } - - if ($this->compressionReady && $this->options['compression']) { - // then implement ZLIB based compression on CIDtoGID string - $data['CIDtoGID_Compressed'] = true; - $cidtogid = gzcompress($cidtogid, 6); - } - $data['CIDtoGID'] = base64_encode($cidtogid); - $data['_version_'] = $this->fontcacheVersion; - $this->fonts[$font] = $data; - - //Because of potential trouble with php safe mode, expect that the folder already exists. - //If not existing, this will hit performance because of missing cached results. - if (is_dir($fontcache) && is_writable($fontcache)) { - file_put_contents("$fontcache/$cache_name", json_encode($data, JSON_PRETTY_PRINT)); - } - $data = null; - } - - if (!isset($this->fonts[$font])) { - $this->addMessage("openFont: no font file found for $font. Do you need to run load_font.php?"); - } - } - - /** - * if the font is not loaded then load it and make the required object - * else just make it the current font - * the encoding array can contain 'encoding'=> 'none','WinAnsiEncoding','MacRomanEncoding' or 'MacExpertEncoding' - * note that encoding='none' will need to be used for symbolic fonts - * and 'differences' => an array of mappings between numbers 0->255 and character names. - * - * @param string $fontName - * @param string $encoding - * @param bool $set - * @param bool $isSubsetting - * @return int - * @throws FontNotFoundException - */ - function selectFont($fontName, $encoding = '', $set = true, $isSubsetting = true) - { - if ($fontName === null || $fontName === '') { - return $this->currentFontNum; - } - - $ext = substr($fontName, -4); - if ($ext === '.afm' || $ext === '.ufm') { - $fontName = substr($fontName, 0, mb_strlen($fontName) - 4); - } - - if (!isset($this->fonts[$fontName])) { - $this->addMessage("selectFont: selecting - $fontName - $encoding, $set"); - - // load the file - $this->openFont($fontName); - - if (isset($this->fonts[$fontName])) { - $this->numObj++; - $this->numFonts++; - - $font = &$this->fonts[$fontName]; - - $name = basename($fontName); - $options = ['name' => $name, 'fontFileName' => $fontName, 'isSubsetting' => $isSubsetting]; - - if (is_array($encoding)) { - // then encoding and differences might be set - if (isset($encoding['encoding'])) { - $options['encoding'] = $encoding['encoding']; - } - - if (isset($encoding['differences'])) { - $options['differences'] = $encoding['differences']; - } - } else { - if (mb_strlen($encoding, '8bit')) { - // then perhaps only the encoding has been set - $options['encoding'] = $encoding; - } - } - - $this->o_font($this->numObj, 'new', $options); - - if (file_exists("$fontName.ttf")) { - $fileSuffix = 'ttf'; - } elseif (file_exists("$fontName.TTF")) { - $fileSuffix = 'TTF'; - } elseif (file_exists("$fontName.pfb")) { - $fileSuffix = 'pfb'; - } elseif (file_exists("$fontName.PFB")) { - $fileSuffix = 'PFB'; - } else { - $fileSuffix = ''; - } - - $font['fileSuffix'] = $fileSuffix; - - $font['fontNum'] = $this->numFonts; - $font['isSubsetting'] = $isSubsetting && $font['isUnicode'] && strtolower($fileSuffix) === 'ttf'; - - // also set the differences here, note that this means that these will take effect only the - //first time that a font is selected, else they are ignored - if (isset($options['differences'])) { - $font['differences'] = $options['differences']; - } - } - } - - if ($set && isset($this->fonts[$fontName])) { - // so if for some reason the font was not set in the last one then it will not be selected - $this->currentBaseFont = $fontName; - - // the next lines mean that if a new font is selected, then the current text state will be - // applied to it as well. - $this->currentFont = $this->currentBaseFont; - $this->currentFontNum = $this->fonts[$this->currentFont]['fontNum']; - } - - return $this->currentFontNum; - } - - /** - * sets up the current font, based on the font families, and the current text state - * note that this system is quite flexible, a bold-italic font can be completely different to a - * italic-bold font, and even bold-bold will have to be defined within the family to have meaning - * This function is to be called whenever the currentTextState is changed, it will update - * the currentFont setting to whatever the appropriate family one is. - * If the user calls selectFont themselves then that will reset the currentBaseFont, and the currentFont - * This function will change the currentFont to whatever it should be, but will not change the - * currentBaseFont. - */ - private function setCurrentFont() - { - // if (strlen($this->currentBaseFont) == 0){ - // // then assume an initial font - // $this->selectFont($this->defaultFont); - // } - // $cf = substr($this->currentBaseFont,strrpos($this->currentBaseFont,'/')+1); - // if (strlen($this->currentTextState) - // && isset($this->fontFamilies[$cf]) - // && isset($this->fontFamilies[$cf][$this->currentTextState])){ - // // then we are in some state or another - // // and this font has a family, and the current setting exists within it - // // select the font, then return it - // $nf = substr($this->currentBaseFont,0,strrpos($this->currentBaseFont,'/')+1).$this->fontFamilies[$cf][$this->currentTextState]; - // $this->selectFont($nf,'',0); - // $this->currentFont = $nf; - // $this->currentFontNum = $this->fonts[$nf]['fontNum']; - // } else { - // // the this font must not have the right family member for the current state - // // simply assume the base font - $this->currentFont = $this->currentBaseFont; - $this->currentFontNum = $this->fonts[$this->currentFont]['fontNum']; - // } - } - - /** - * function for the user to find out what the ID is of the first page that was created during - * startup - useful if they wish to add something to it later. - * - * @return int - */ - function getFirstPageId() - { - return $this->firstPageId; - } - - /** - * add content to the currently active object - * - * @param $content - */ - private function addContent($content) - { - $this->objects[$this->currentContents]['c'] .= $content; - } - - /** - * sets the color for fill operations - * - * @param array $color - * @param bool $force - */ - function setColor($color, $force = false) - { - $new_color = [$color[0], $color[1], $color[2], isset($color[3]) ? $color[3] : null]; - - if (!$force && $this->currentColor == $new_color) { - return; - } - - if (isset($new_color[3])) { - $this->currentColor = $new_color; - $this->addContent(vsprintf("\n%.3F %.3F %.3F %.3F k", $this->currentColor)); - } else { - if (isset($new_color[2])) { - $this->currentColor = $new_color; - $this->addContent(vsprintf("\n%.3F %.3F %.3F rg", $this->currentColor)); - } - } - } - - /** - * sets the color for fill operations - * - * @param string $fillRule - */ - function setFillRule($fillRule) - { - if (!in_array($fillRule, ["nonzero", "evenodd"])) { - return; - } - - $this->fillRule = $fillRule; - } - - /** - * sets the color for stroke operations - * - * @param array $color - * @param bool $force - */ - function setStrokeColor($color, $force = false) - { - $new_color = [$color[0], $color[1], $color[2], isset($color[3]) ? $color[3] : null]; - - if (!$force && $this->currentStrokeColor == $new_color) { - return; - } - - if (isset($new_color[3])) { - $this->currentStrokeColor = $new_color; - $this->addContent(vsprintf("\n%.3F %.3F %.3F %.3F K", $this->currentStrokeColor)); - } else { - if (isset($new_color[2])) { - $this->currentStrokeColor = $new_color; - $this->addContent(vsprintf("\n%.3F %.3F %.3F RG", $this->currentStrokeColor)); - } - } - } - - /** - * Set the graphics state for compositions - * - * @param $parameters - */ - function setGraphicsState($parameters) - { - // Create a new graphics state object if necessary - if (($gstate = array_search($parameters, $this->gstates)) === false) { - $this->numObj++; - $this->o_extGState($this->numObj, 'new', $parameters); - $gstate = $this->numStates; - $this->gstates[$gstate] = $parameters; - } - $this->addContent("\n/GS$gstate gs"); - } - - /** - * Set current blend mode & opacity for lines. - * - * Valid blend modes are: - * - * Normal, Multiply, Screen, Overlay, Darken, Lighten, - * ColorDogde, ColorBurn, HardLight, SoftLight, Difference, - * Exclusion - * - * @param string $mode the blend mode to use - * @param float $opacity 0.0 fully transparent, 1.0 fully opaque - */ - function setLineTransparency($mode, $opacity) - { - static $blend_modes = [ - "Normal", - "Multiply", - "Screen", - "Overlay", - "Darken", - "Lighten", - "ColorDogde", - "ColorBurn", - "HardLight", - "SoftLight", - "Difference", - "Exclusion" - ]; - - if (!in_array($mode, $blend_modes)) { - $mode = "Normal"; - } - - if (is_null($this->currentLineTransparency)) { - $this->currentLineTransparency = []; - } - - if ($mode === (key_exists('mode', $this->currentLineTransparency) ? - $this->currentLineTransparency['mode'] : '') && - $opacity === (key_exists('opacity', $this->currentLineTransparency) ? - $this->currentLineTransparency["opacity"] : '')) { - return; - } - - $this->currentLineTransparency["mode"] = $mode; - $this->currentLineTransparency["opacity"] = $opacity; - - $options = [ - "BM" => "/$mode", - "CA" => (float)$opacity - ]; - - $this->setGraphicsState($options); - } - - /** - * Set current blend mode & opacity for filled objects. - * - * Valid blend modes are: - * - * Normal, Multiply, Screen, Overlay, Darken, Lighten, - * ColorDogde, ColorBurn, HardLight, SoftLight, Difference, - * Exclusion - * - * @param string $mode the blend mode to use - * @param float $opacity 0.0 fully transparent, 1.0 fully opaque - */ - function setFillTransparency($mode, $opacity) - { - static $blend_modes = [ - "Normal", - "Multiply", - "Screen", - "Overlay", - "Darken", - "Lighten", - "ColorDogde", - "ColorBurn", - "HardLight", - "SoftLight", - "Difference", - "Exclusion" - ]; - - if (!in_array($mode, $blend_modes)) { - $mode = "Normal"; - } - - if (is_null($this->currentFillTransparency)) { - $this->currentFillTransparency = []; - } - - if ($mode === (key_exists('mode', $this->currentFillTransparency) ? - $this->currentFillTransparency['mode'] : '') && - $opacity === (key_exists('opacity', $this->currentFillTransparency) ? - $this->currentFillTransparency["opacity"] : '')) { - return; - } - - $this->currentFillTransparency["mode"] = $mode; - $this->currentFillTransparency["opacity"] = $opacity; - - $options = [ - "BM" => "/$mode", - "ca" => (float)$opacity, - ]; - - $this->setGraphicsState($options); - } - - /** - * draw a line from one set of coordinates to another - * - * @param float $x1 - * @param float $y1 - * @param float $x2 - * @param float $y2 - * @param bool $stroke - */ - function line($x1, $y1, $x2, $y2, $stroke = true) - { - $this->addContent(sprintf("\n%.3F %.3F m %.3F %.3F l", $x1, $y1, $x2, $y2)); - - if ($stroke) { - $this->addContent(' S'); - } - } - - /** - * draw a bezier curve based on 4 control points - * - * @param float $x0 - * @param float $y0 - * @param float $x1 - * @param float $y1 - * @param float $x2 - * @param float $y2 - * @param float $x3 - * @param float $y3 - */ - function curve($x0, $y0, $x1, $y1, $x2, $y2, $x3, $y3) - { - // in the current line style, draw a bezier curve from (x0,y0) to (x3,y3) using the other two points - // as the control points for the curve. - $this->addContent( - sprintf("\n%.3F %.3F m %.3F %.3F %.3F %.3F %.3F %.3F c S", $x0, $y0, $x1, $y1, $x2, $y2, $x3, $y3) - ); - } - - /** - * draw a part of an ellipse - * - * @param float $x0 - * @param float $y0 - * @param float $astart - * @param float $afinish - * @param float $r1 - * @param float $r2 - * @param float $angle - * @param int $nSeg - */ - function partEllipse($x0, $y0, $astart, $afinish, $r1, $r2 = 0, $angle = 0, $nSeg = 8) - { - $this->ellipse($x0, $y0, $r1, $r2, $angle, $nSeg, $astart, $afinish, false); - } - - /** - * draw a filled ellipse - * - * @param float $x0 - * @param float $y0 - * @param float $r1 - * @param float $r2 - * @param float $angle - * @param int $nSeg - * @param float $astart - * @param float $afinish - */ - function filledEllipse($x0, $y0, $r1, $r2 = 0, $angle = 0, $nSeg = 8, $astart = 0, $afinish = 360) - { - $this->ellipse($x0, $y0, $r1, $r2, $angle, $nSeg, $astart, $afinish, true, true); - } - - /** - * @param float $x - * @param float $y - */ - function lineTo($x, $y) - { - $this->addContent(sprintf("\n%.3F %.3F l", $x, $y)); - } - - /** - * @param float $x - * @param float $y - */ - function moveTo($x, $y) - { - $this->addContent(sprintf("\n%.3F %.3F m", $x, $y)); - } - - /** - * draw a bezier curve based on 4 control points - * - * @param float $x1 - * @param float $y1 - * @param float $x2 - * @param float $y2 - * @param float $x3 - * @param float $y3 - */ - function curveTo($x1, $y1, $x2, $y2, $x3, $y3) - { - $this->addContent(sprintf("\n%.3F %.3F %.3F %.3F %.3F %.3F c", $x1, $y1, $x2, $y2, $x3, $y3)); - } - - /** - * draw a bezier curve based on 4 control points - * - * @param float $cpx - * @param float $cpy - * @param float $x - * @param float $y - */ - function quadTo($cpx, $cpy, $x, $y) - { - $this->addContent(sprintf("\n%.3F %.3F %.3F %.3F v", $cpx, $cpy, $x, $y)); - } - - function closePath() - { - $this->addContent(' h'); - } - - function endPath() - { - $this->addContent(' n'); - } - - /** - * draw an ellipse - * note that the part and filled ellipse are just special cases of this function - * - * draws an ellipse in the current line style - * centered at $x0,$y0, radii $r1,$r2 - * if $r2 is not set, then a circle is drawn - * from $astart to $afinish, measured in degrees, running anti-clockwise from the right hand side of the ellipse. - * nSeg is not allowed to be less than 2, as this will simply draw a line (and will even draw a - * pretty crappy shape at 2, as we are approximating with bezier curves. - * - * @param float $x0 - * @param float $y0 - * @param float $r1 - * @param float $r2 - * @param float $angle - * @param int $nSeg - * @param float $astart - * @param float $afinish - * @param bool $close - * @param bool $fill - * @param bool $stroke - * @param bool $incomplete - */ - function ellipse( - $x0, - $y0, - $r1, - $r2 = 0, - $angle = 0, - $nSeg = 8, - $astart = 0, - $afinish = 360, - $close = true, - $fill = false, - $stroke = true, - $incomplete = false - ) { - if ($r1 == 0) { - return; - } - - if ($r2 == 0) { - $r2 = $r1; - } - - if ($nSeg < 2) { - $nSeg = 2; - } - - $astart = deg2rad((float)$astart); - $afinish = deg2rad((float)$afinish); - $totalAngle = $afinish - $astart; - - $dt = $totalAngle / $nSeg; - $dtm = $dt / 3; - - if ($angle != 0) { - $a = -1 * deg2rad((float)$angle); - - $this->addContent( - sprintf("\n q %.3F %.3F %.3F %.3F %.3F %.3F cm", cos($a), -sin($a), sin($a), cos($a), $x0, $y0) - ); - - $x0 = 0; - $y0 = 0; - } - - $t1 = $astart; - $a0 = $x0 + $r1 * cos($t1); - $b0 = $y0 + $r2 * sin($t1); - $c0 = -$r1 * sin($t1); - $d0 = $r2 * cos($t1); - - if (!$incomplete) { - $this->addContent(sprintf("\n%.3F %.3F m ", $a0, $b0)); - } - - for ($i = 1; $i <= $nSeg; $i++) { - // draw this bit of the total curve - $t1 = $i * $dt + $astart; - $a1 = $x0 + $r1 * cos($t1); - $b1 = $y0 + $r2 * sin($t1); - $c1 = -$r1 * sin($t1); - $d1 = $r2 * cos($t1); - - $this->addContent( - sprintf( - "\n%.3F %.3F %.3F %.3F %.3F %.3F c", - ($a0 + $c0 * $dtm), - ($b0 + $d0 * $dtm), - ($a1 - $c1 * $dtm), - ($b1 - $d1 * $dtm), - $a1, - $b1 - ) - ); - - $a0 = $a1; - $b0 = $b1; - $c0 = $c1; - $d0 = $d1; - } - - if (!$incomplete) { - if ($fill) { - $this->addContent(' f'); - } - - if ($stroke) { - if ($close) { - $this->addContent(' s'); // small 's' signifies closing the path as well - } else { - $this->addContent(' S'); - } - } - } - - if ($angle != 0) { - $this->addContent(' Q'); - } - } - - /** - * this sets the line drawing style. - * width, is the thickness of the line in user units - * cap is the type of cap to put on the line, values can be 'butt','round','square' - * where the diffference between 'square' and 'butt' is that 'square' projects a flat end past the - * end of the line. - * join can be 'miter', 'round', 'bevel' - * dash is an array which sets the dash pattern, is a series of length values, which are the lengths of the - * on and off dashes. - * (2) represents 2 on, 2 off, 2 on , 2 off ... - * (2,1) is 2 on, 1 off, 2 on, 1 off.. etc - * phase is a modifier on the dash pattern which is used to shift the point at which the pattern starts. - * - * @param float $width - * @param string $cap - * @param string $join - * @param array $dash - * @param int $phase - */ - function setLineStyle($width = 1, $cap = '', $join = '', $dash = '', $phase = 0) - { - // this is quite inefficient in that it sets all the parameters whenever 1 is changed, but will fix another day - $string = ''; - - if ($width > 0) { - $string .= "$width w"; - } - - $ca = ['butt' => 0, 'round' => 1, 'square' => 2]; - - if (isset($ca[$cap])) { - $string .= " $ca[$cap] J"; - } - - $ja = ['miter' => 0, 'round' => 1, 'bevel' => 2]; - - if (isset($ja[$join])) { - $string .= " $ja[$join] j"; - } - - if (is_array($dash)) { - $string .= ' [ ' . implode(' ', $dash) . " ] $phase d"; - } - - $this->currentLineStyle = $string; - $this->addContent("\n$string"); - } - - /** - * draw a polygon, the syntax for this is similar to the GD polygon command - * - * @param float[] $p - * @param bool $fill - */ - public function polygon(array $p, bool $fill = false): void - { - $this->addContent(sprintf("\n%.3F %.3F m ", $p[0], $p[1])); - - $n = count($p); - for ($i = 2; $i < $n; $i = $i + 2) { - $this->addContent(sprintf("%.3F %.3F l ", $p[$i], $p[$i + 1])); - } - - if ($fill) { - $this->addContent(' f'); - } else { - $this->addContent(' S'); - } - } - - /** - * a filled rectangle, note that it is the width and height of the rectangle which are the secondary parameters, not - * the coordinates of the upper-right corner - * - * @param float $x1 - * @param float $y1 - * @param float $width - * @param float $height - */ - function filledRectangle($x1, $y1, $width, $height) - { - $this->addContent(sprintf("\n%.3F %.3F %.3F %.3F re f", $x1, $y1, $width, $height)); - } - - /** - * draw a rectangle, note that it is the width and height of the rectangle which are the secondary parameters, not - * the coordinates of the upper-right corner - * - * @param float $x1 - * @param float $y1 - * @param float $width - * @param float $height - */ - function rectangle($x1, $y1, $width, $height) - { - $this->addContent(sprintf("\n%.3F %.3F %.3F %.3F re S", $x1, $y1, $width, $height)); - } - - /** - * draw a rectangle, note that it is the width and height of the rectangle which are the secondary parameters, not - * the coordinates of the upper-right corner - * - * @param float $x1 - * @param float $y1 - * @param float $width - * @param float $height - */ - function rect($x1, $y1, $width, $height) - { - $this->addContent(sprintf("\n%.3F %.3F %.3F %.3F re", $x1, $y1, $width, $height)); - } - - function stroke(bool $close = false) - { - $this->addContent("\n" . ($close ? "s" : "S")); - } - - function fill() - { - $this->addContent("\nf" . ($this->fillRule === "evenodd" ? "*" : "")); - } - - function fillStroke(bool $close = false) - { - $this->addContent("\n" . ($close ? "b" : "B") . ($this->fillRule === "evenodd" ? "*" : "")); - } - - /** - * @param string $subtype - * @param integer $x - * @param integer $y - * @param integer $w - * @param integer $h - * @return int - */ - function addXObject($subtype, $x, $y, $w, $h) - { - $id = ++$this->numObj; - $this->o_xobject($id, 'new', ['Subtype' => $subtype, 'bbox' => [$x, $y, $w, $h]]); - return $id; - } - - /** - * @param integer $numXObject - * @param string $type - * @param array $options - */ - function setXObjectResource($numXObject, $type, $options) - { - if (in_array($type, ['procset', 'font', 'xObject'])) { - $this->o_xobject($numXObject, $type, $options); - } - } - - /** - * add signature - * - * $fieldSigId = $cpdf->addFormField(Cpdf::ACROFORM_FIELD_SIG, 'Signature1', 0, 0, 0, 0, 0); - * - * $signatureId = $cpdf->addSignature([ - * 'signcert' => file_get_contents('dompdf.crt'), - * 'privkey' => file_get_contents('dompdf.key'), - * 'password' => 'password', - * 'name' => 'DomPDF DEMO', - * 'location' => 'Home', - * 'reason' => 'First Form', - * 'contactinfo' => 'info' - * ]); - * $cpdf->setFormFieldValue($fieldSigId, "$signatureId 0 R"); - * - * @param string $signcert - * @param string $privkey - * @param string $password - * @param string|null $name - * @param string|null $location - * @param string|null $reason - * @param string|null $contactinfo - * @return int - */ - function addSignature($signcert, $privkey, $password = '', $name = null, $location = null, $reason = null, $contactinfo = null) { - $sigId = ++$this->numObj; - $this->o_sig($sigId, 'new', [ - 'SignCert' => $signcert, - 'PrivKey' => $privkey, - 'Password' => $password, - 'Name' => $name, - 'Location' => $location, - 'Reason' => $reason, - 'ContactInfo' => $contactinfo - ]); - - return $sigId; - } - - /** - * add field to form - * - * @param string $type ACROFORM_FIELD_* - * @param string $name - * @param $x0 - * @param $y0 - * @param $x1 - * @param $y1 - * @param integer $ff Field Flag ACROFORM_FIELD_*_* - * @param float $size - * @param array $color - * @return int - */ - public function addFormField($type, $name, $x0, $y0, $x1, $y1, $ff = 0, $size = 10.0, $color = [0, 0, 0]) - { - if (!$this->numFonts) { - $this->selectFont($this->defaultFont); - } - - $color = implode(' ', $color) . ' rg'; - - $currentFontNum = $this->currentFontNum; - $font = array_filter( - $this->objects[$this->currentNode]['info']['fonts'], - function ($item) use ($currentFontNum) { return $item['fontNum'] == $currentFontNum; } - ); - - $this->o_acroform($this->acroFormId, 'font', - ['objNum' => $font[0]['objNum'], 'fontNum' => $font[0]['fontNum']]); - - $fieldId = ++$this->numObj; - $this->o_field($fieldId, 'new', [ - 'rect' => [$x0, $y0, $x1, $y1], - 'F' => 4, - 'FT' => "/$type", - 'T' => $name, - 'Ff' => $ff, - 'pageid' => $this->currentPage, - 'da' => "$color /F$this->currentFontNum " . sprintf('%.1F Tf ', $size) - ]); - - return $fieldId; - } - - /** - * set Field value - * - * @param integer $numFieldObj - * @param string $value - */ - public function setFormFieldValue($numFieldObj, $value) - { - $this->o_field($numFieldObj, 'set', ['value' => $value]); - } - - /** - * set Field value (reference) - * - * @param integer $numFieldObj - * @param integer $numObj Object number - */ - public function setFormFieldRefValue($numFieldObj, $numObj) - { - $this->o_field($numFieldObj, 'set', ['refvalue' => $numObj]); - } - - /** - * set Field Appearanc (reference) - * - * @param integer $numFieldObj - * @param integer $normalNumObj - * @param integer|null $rolloverNumObj - * @param integer|null $downNumObj - */ - public function setFormFieldAppearance($numFieldObj, $normalNumObj, $rolloverNumObj = null, $downNumObj = null) - { - $appearance['N'] = $normalNumObj; - - if ($rolloverNumObj !== null) { - $appearance['R'] = $rolloverNumObj; - } - - if ($downNumObj !== null) { - $appearance['D'] = $downNumObj; - } - - $this->o_field($numFieldObj, 'set', ['appearance' => $appearance]); - } - - /** - * set Choice Field option values - * - * @param integer $numFieldObj - * @param array $value - */ - public function setFormFieldOpt($numFieldObj, $value) - { - $this->o_field($numFieldObj, 'set', ['options' => $value]); - } - - /** - * add form to document - * - * @param integer $sigFlags - * @param boolean $needAppearances - */ - public function addForm($sigFlags = 0, $needAppearances = false) - { - $this->acroFormId = ++$this->numObj; - $this->o_acroform($this->acroFormId, 'new', [ - 'NeedAppearances' => $needAppearances ? 'true' : 'false', - 'SigFlags' => $sigFlags - ]); - } - - /** - * save the current graphic state - */ - function save() - { - // we must reset the color cache or it will keep bad colors after clipping - $this->currentColor = null; - $this->currentStrokeColor = null; - $this->addContent("\nq"); - } - - /** - * restore the last graphic state - */ - function restore() - { - // we must reset the color cache or it will keep bad colors after clipping - $this->currentColor = null; - $this->currentStrokeColor = null; - $this->addContent("\nQ"); - } - - /** - * draw a clipping rectangle, all the elements added after this will be clipped - * - * @param float $x1 - * @param float $y1 - * @param float $width - * @param float $height - */ - function clippingRectangle($x1, $y1, $width, $height) - { - $this->save(); - $this->addContent(sprintf("\n%.3F %.3F %.3F %.3F re W n", $x1, $y1, $width, $height)); - } - - /** - * draw a clipping rounded rectangle, all the elements added after this will be clipped - * - * @param float $x1 - * @param float $y1 - * @param float $w - * @param float $h - * @param float $rTL - * @param float $rTR - * @param float $rBR - * @param float $rBL - */ - function clippingRectangleRounded($x1, $y1, $w, $h, $rTL, $rTR, $rBR, $rBL) - { - $this->save(); - - // start: top edge, left end - $this->addContent(sprintf("\n%.3F %.3F m ", $x1, $y1 - $rTL + $h)); - - // line: bottom edge, left end - $this->addContent(sprintf("\n%.3F %.3F l ", $x1, $y1 + $rBL)); - - // curve: bottom-left corner - $this->ellipse($x1 + $rBL, $y1 + $rBL, $rBL, 0, 0, 8, 180, 270, false, false, false, true); - - // line: right edge, bottom end - $this->addContent(sprintf("\n%.3F %.3F l ", $x1 + $w - $rBR, $y1)); - - // curve: bottom-right corner - $this->ellipse($x1 + $w - $rBR, $y1 + $rBR, $rBR, 0, 0, 8, 270, 360, false, false, false, true); - - // line: right edge, top end - $this->addContent(sprintf("\n%.3F %.3F l ", $x1 + $w, $y1 + $h - $rTR)); - - // curve: bottom-right corner - $this->ellipse($x1 + $w - $rTR, $y1 + $h - $rTR, $rTR, 0, 0, 8, 0, 90, false, false, false, true); - - // line: bottom edge, right end - $this->addContent(sprintf("\n%.3F %.3F l ", $x1 + $rTL, $y1 + $h)); - - // curve: top-right corner - $this->ellipse($x1 + $rTL, $y1 + $h - $rTL, $rTL, 0, 0, 8, 90, 180, false, false, false, true); - - // line: top edge, left end - $this->addContent(sprintf("\n%.3F %.3F l ", $x1 + $rBL, $y1)); - - // Close & clip - $this->addContent(" W n"); - } - - /** - * draw a clipping polygon, the syntax for this is similar to the GD polygon command - * - * @param float[] $p - */ - public function clippingPolygon(array $p): void - { - $this->save(); - - $this->addContent(sprintf("\n%.3F %.3F m ", $p[0], $p[1])); - - $n = count($p); - for ($i = 2; $i < $n; $i = $i + 2) { - $this->addContent(sprintf("%.3F %.3F l ", $p[$i], $p[$i + 1])); - } - - $this->addContent("W n"); - } - - /** - * ends the last clipping shape - */ - function clippingEnd() - { - $this->restore(); - } - - /** - * scale - * - * @param float $s_x scaling factor for width as percent - * @param float $s_y scaling factor for height as percent - * @param float $x Origin abscissa - * @param float $y Origin ordinate - */ - function scale($s_x, $s_y, $x, $y) - { - $y = $this->currentPageSize["height"] - $y; - - $tm = [ - $s_x, - 0, - 0, - $s_y, - $x * (1 - $s_x), - $y * (1 - $s_y) - ]; - - $this->transform($tm); - } - - /** - * translate - * - * @param float $t_x movement to the right - * @param float $t_y movement to the bottom - */ - function translate($t_x, $t_y) - { - $tm = [ - 1, - 0, - 0, - 1, - $t_x, - -$t_y - ]; - - $this->transform($tm); - } - - /** - * rotate - * - * @param float $angle angle in degrees for counter-clockwise rotation - * @param float $x Origin abscissa - * @param float $y Origin ordinate - */ - function rotate($angle, $x, $y) - { - $y = $this->currentPageSize["height"] - $y; - - $a = deg2rad($angle); - $cos_a = cos($a); - $sin_a = sin($a); - - $tm = [ - $cos_a, - -$sin_a, - $sin_a, - $cos_a, - $x - $sin_a * $y - $cos_a * $x, - $y - $cos_a * $y + $sin_a * $x, - ]; - - $this->transform($tm); - } - - /** - * skew - * - * @param float $angle_x - * @param float $angle_y - * @param float $x Origin abscissa - * @param float $y Origin ordinate - */ - function skew($angle_x, $angle_y, $x, $y) - { - $y = $this->currentPageSize["height"] - $y; - - $tan_x = tan(deg2rad($angle_x)); - $tan_y = tan(deg2rad($angle_y)); - - $tm = [ - 1, - -$tan_y, - -$tan_x, - 1, - $tan_x * $y, - $tan_y * $x, - ]; - - $this->transform($tm); - } - - /** - * apply graphic transformations - * - * @param array $tm transformation matrix - */ - function transform($tm) - { - $this->addContent(vsprintf("\n %.3F %.3F %.3F %.3F %.3F %.3F cm", $tm)); - } - - /** - * add a new page to the document - * this also makes the new page the current active object - * - * @param int $insert - * @param int $id - * @param string $pos - * @return int - */ - function newPage($insert = 0, $id = 0, $pos = 'after') - { - // if there is a state saved, then go up the stack closing them - // then on the new page, re-open them with the right setings - - if ($this->nStateStack) { - for ($i = $this->nStateStack; $i >= 1; $i--) { - $this->restoreState($i); - } - } - - $this->numObj++; - - if ($insert) { - // the id from the ezPdf class is the id of the contents of the page, not the page object itself - // query that object to find the parent - $rid = $this->objects[$id]['onPage']; - $opt = ['rid' => $rid, 'pos' => $pos]; - $this->o_page($this->numObj, 'new', $opt); - } else { - $this->o_page($this->numObj, 'new'); - } - - // if there is a stack saved, then put that onto the page - if ($this->nStateStack) { - for ($i = 1; $i <= $this->nStateStack; $i++) { - $this->saveState($i); - } - } - - // and if there has been a stroke or fill color set, then transfer them - if (isset($this->currentColor)) { - $this->setColor($this->currentColor, true); - } - - if (isset($this->currentStrokeColor)) { - $this->setStrokeColor($this->currentStrokeColor, true); - } - - // if there is a line style set, then put this in too - if (mb_strlen($this->currentLineStyle, '8bit')) { - $this->addContent("\n$this->currentLineStyle"); - } - - // the call to the o_page object set currentContents to the present page, so this can be returned as the page id - return $this->currentContents; - } - - /** - * Streams the PDF to the client. - * - * @param string $filename The filename to present to the client. - * @param array $options Associative array: 'compress' => 1 or 0 (default 1); 'Attachment' => 1 or 0 (default 1). - */ - function stream($filename = "document.pdf", $options = []) - { - if (headers_sent()) { - die("Unable to stream pdf: headers already sent"); - } - - if (!isset($options["compress"])) $options["compress"] = true; - if (!isset($options["Attachment"])) $options["Attachment"] = true; - - $debug = !$options['compress']; - $tmp = ltrim($this->output($debug)); - - header("Cache-Control: private"); - header("Content-Type: application/pdf"); - header("Content-Length: " . mb_strlen($tmp, "8bit")); - - $filename = str_replace(["\n", "'"], "", basename($filename, ".pdf")) . ".pdf"; - $attachment = $options["Attachment"] ? "attachment" : "inline"; - - $encoding = mb_detect_encoding($filename); - $fallbackfilename = mb_convert_encoding($filename, "ISO-8859-1", $encoding); - $fallbackfilename = str_replace("\"", "", $fallbackfilename); - $encodedfilename = rawurlencode($filename); - - $contentDisposition = "Content-Disposition: $attachment; filename=\"$fallbackfilename\""; - if ($fallbackfilename !== $filename) { - $contentDisposition .= "; filename*=UTF-8''$encodedfilename"; - } - header($contentDisposition); - - echo $tmp; - flush(); - } - - /** - * return the height in units of the current font in the given size - * - * @param float $size - * - * @return float - */ - public function getFontHeight(float $size): float - { - if (!$this->numFonts) { - $this->selectFont($this->defaultFont); - } - - $font = $this->fonts[$this->currentFont]; - - // for the current font, and the given size, what is the height of the font in user units - if (isset($font['Ascender']) && isset($font['Descender'])) { - $h = $font['Ascender'] - $font['Descender']; - } else { - $h = $font['FontBBox'][3] - $font['FontBBox'][1]; - } - - // have to adjust by a font offset for Windows fonts. unfortunately it looks like - // the bounding box calculations are wrong and I don't know why. - if (isset($font['FontHeightOffset'])) { - // For CourierNew from Windows this needs to be -646 to match the - // Adobe native Courier font. - // - // For FreeMono from GNU this needs to be -337 to match the - // Courier font. - // - // Both have been added manually to the .afm and .ufm files. - $h += (int)$font['FontHeightOffset']; - } - - return $size * $h / 1000; - } - - /** - * @param float $size - * - * @return float - */ - public function getFontXHeight(float $size): float - { - if (!$this->numFonts) { - $this->selectFont($this->defaultFont); - } - - $font = $this->fonts[$this->currentFont]; - - // for the current font, and the given size, what is the height of the font in user units - if (isset($font['XHeight'])) { - $xh = $font['Ascender'] - $font['Descender']; - } else { - $xh = $this->getFontHeight($size) / 2; - } - - return $size * $xh / 1000; - } - - /** - * return the font descender, this will normally return a negative number - * if you add this number to the baseline, you get the level of the bottom of the font - * it is in the pdf user units - * - * @param float $size - * - * @return float - */ - public function getFontDescender(float $size): float - { - // note that this will most likely return a negative value - if (!$this->numFonts) { - $this->selectFont($this->defaultFont); - } - - //$h = $this->fonts[$this->currentFont]['FontBBox'][1]; - $h = $this->fonts[$this->currentFont]['Descender']; - - return $size * $h / 1000; - } - - /** - * filter the text, this is applied to all text just before being inserted into the pdf document - * it escapes the various things that need to be escaped, and so on - * - * @param $text - * @param bool $bom - * @param bool $convert_encoding - * @return string - */ - function filterText($text, $bom = true, $convert_encoding = true) - { - if (!$this->numFonts) { - $this->selectFont($this->defaultFont); - } - - if ($convert_encoding) { - $cf = $this->currentFont; - if (isset($this->fonts[$cf]) && $this->fonts[$cf]['isUnicode']) { - $text = $this->utf8toUtf16BE($text, $bom); - } else { - //$text = html_entity_decode($text, ENT_QUOTES); - $text = mb_convert_encoding($text, self::$targetEncoding, 'UTF-8'); - } - } elseif ($bom) { - $text = $this->utf8toUtf16BE($text, $bom); - } - - // the chr(13) substitution fixes a bug seen in TCPDF (bug #1421290) - return strtr($text, [')' => '\\)', '(' => '\\(', '\\' => '\\\\', chr(13) => '\r']); - } - - /** - * return array containing codepoints (UTF-8 character values) for the - * string passed in. - * - * based on the excellent TCPDF code by Nicola Asuni and the - * RFC for UTF-8 at http://www.faqs.org/rfcs/rfc3629.html - * - * @param string $text UTF-8 string to process - * @return array UTF-8 codepoints array for the string - */ - function utf8toCodePointsArray(&$text) - { - $length = mb_strlen($text, '8bit'); // http://www.php.net/manual/en/function.mb-strlen.php#77040 - $unicode = []; // array containing unicode values - $bytes = []; // array containing single character byte sequences - $numbytes = 1; // number of octets needed to represent the UTF-8 character - - for ($i = 0; $i < $length; $i++) { - $c = ord($text[$i]); // get one string character at time - if (count($bytes) === 0) { // get starting octect - if ($c <= 0x7F) { - $unicode[] = $c; // use the character "as is" because is ASCII - $numbytes = 1; - } elseif (($c >> 0x05) === 0x06) { // 2 bytes character (0x06 = 110 BIN) - $bytes[] = ($c - 0xC0) << 0x06; - $numbytes = 2; - } elseif (($c >> 0x04) === 0x0E) { // 3 bytes character (0x0E = 1110 BIN) - $bytes[] = ($c - 0xE0) << 0x0C; - $numbytes = 3; - } elseif (($c >> 0x03) === 0x1E) { // 4 bytes character (0x1E = 11110 BIN) - $bytes[] = ($c - 0xF0) << 0x12; - $numbytes = 4; - } else { - // use replacement character for other invalid sequences - $unicode[] = 0xFFFD; - $bytes = []; - $numbytes = 1; - } - } elseif (($c >> 0x06) === 0x02) { // bytes 2, 3 and 4 must start with 0x02 = 10 BIN - $bytes[] = $c - 0x80; - if (count($bytes) === $numbytes) { - // compose UTF-8 bytes to a single unicode value - $c = $bytes[0]; - for ($j = 1; $j < $numbytes; $j++) { - $c += ($bytes[$j] << (($numbytes - $j - 1) * 0x06)); - } - if ((($c >= 0xD800) and ($c <= 0xDFFF)) or ($c >= 0x10FFFF)) { - // The definition of UTF-8 prohibits encoding character numbers between - // U+D800 and U+DFFF, which are reserved for use with the UTF-16 - // encoding form (as surrogate pairs) and do not directly represent - // characters. - $unicode[] = 0xFFFD; // use replacement character - } else { - $unicode[] = $c; // add char to array - } - // reset data for next char - $bytes = []; - $numbytes = 1; - } - } else { - // use replacement character for other invalid sequences - $unicode[] = 0xFFFD; - $bytes = []; - $numbytes = 1; - } - } - - return $unicode; - } - - /** - * convert UTF-8 to UTF-16 with an additional byte order marker - * at the front if required. - * - * based on the excellent TCPDF code by Nicola Asuni and the - * RFC for UTF-8 at http://www.faqs.org/rfcs/rfc3629.html - * - * @param string $text UTF-8 string to process - * @param boolean $bom whether to add the byte order marker - * @return string UTF-16 result string - */ - function utf8toUtf16BE(&$text, $bom = true) - { - $out = $bom ? "\xFE\xFF" : ''; - - $unicode = $this->utf8toCodePointsArray($text); - foreach ($unicode as $c) { - if ($c === 0xFFFD) { - $out .= "\xFF\xFD"; // replacement character - } elseif ($c < 0x10000) { - $out .= chr($c >> 0x08) . chr($c & 0xFF); - } else { - $c -= 0x10000; - $w1 = 0xD800 | ($c >> 0x10); - $w2 = 0xDC00 | ($c & 0x3FF); - $out .= chr($w1 >> 0x08) . chr($w1 & 0xFF) . chr($w2 >> 0x08) . chr($w2 & 0xFF); - } - } - - return $out; - } - - /** - * given a start position and information about how text is to be laid out, calculate where - * on the page the text will end - * - * @param $x - * @param $y - * @param $angle - * @param $size - * @param $wa - * @param $text - * @return array - */ - private function getTextPosition($x, $y, $angle, $size, $wa, $text) - { - // given this information return an array containing x and y for the end position as elements 0 and 1 - $w = $this->getTextWidth($size, $text); - - // need to adjust for the number of spaces in this text - $words = explode(' ', $text); - $nspaces = count($words) - 1; - $w += $wa * $nspaces; - $a = deg2rad((float)$angle); - - return [cos($a) * $w + $x, -sin($a) * $w + $y]; - } - - /** - * Callback method used by smallCaps - * - * @param array $matches - * - * @return string - */ - function toUpper($matches) - { - return mb_strtoupper($matches[0]); - } - - function concatMatches($matches) - { - $str = ""; - foreach ($matches as $match) { - $str .= $match[0]; - } - - return $str; - } - - /** - * register text for font subsetting - * - * @param string $font - * @param string $text - */ - function registerText($font, $text) - { - if (!$this->isUnicode || in_array(mb_strtolower(basename($font)), self::$coreFonts)) { - return; - } - - if (!isset($this->stringSubsets[$font])) { - $base_subset = "\u{fffd}\u{fffe}\u{ffff}"; - $this->stringSubsets[$font] = $this->utf8toCodePointsArray($base_subset); - } - - $this->stringSubsets[$font] = array_unique( - array_merge($this->stringSubsets[$font], $this->utf8toCodePointsArray($text)) - ); - } - - /** - * add text to the document, at a specified location, size and angle on the page - * - * @param float $x - * @param float $y - * @param float $size - * @param string $text - * @param float $angle - * @param float $wordSpaceAdjust - * @param float $charSpaceAdjust - * @param bool $smallCaps - */ - function addText($x, $y, $size, $text, $angle = 0, $wordSpaceAdjust = 0, $charSpaceAdjust = 0, $smallCaps = false) - { - if (!$this->numFonts) { - $this->selectFont($this->defaultFont); - } - - $text = str_replace(["\r", "\n"], "", $text); - - // if ($smallCaps) { - // preg_match_all("/(\P{Ll}+)/u", $text, $matches, PREG_SET_ORDER); - // $lower = $this->concatMatches($matches); - // d($lower); - - // preg_match_all("/(\p{Ll}+)/u", $text, $matches, PREG_SET_ORDER); - // $other = $this->concatMatches($matches); - // d($other); - - // $text = preg_replace_callback("/\p{Ll}/u", array($this, "toUpper"), $text); - // } - - // if there are any open callbacks, then they should be called, to show the start of the line - if ($this->nCallback > 0) { - for ($i = $this->nCallback; $i > 0; $i--) { - // call each function - $info = [ - 'x' => $x, - 'y' => $y, - 'angle' => $angle, - 'status' => 'sol', - 'p' => $this->callback[$i]['p'], - 'nCallback' => $this->callback[$i]['nCallback'], - 'height' => $this->callback[$i]['height'], - 'descender' => $this->callback[$i]['descender'] - ]; - - $func = $this->callback[$i]['f']; - $this->$func($info); - } - } - - if ($angle == 0) { - $this->addContent(sprintf("\nBT %.3F %.3F Td", $x, $y)); - } else { - $a = deg2rad((float)$angle); - $this->addContent( - sprintf("\nBT %.3F %.3F %.3F %.3F %.3F %.3F Tm", cos($a), -sin($a), sin($a), cos($a), $x, $y) - ); - } - - if ($wordSpaceAdjust != 0) { - $this->addContent(sprintf(" %.3F Tw", $wordSpaceAdjust)); - } - - if ($charSpaceAdjust != 0) { - $this->addContent(sprintf(" %.3F Tc", $charSpaceAdjust)); - } - - $len = mb_strlen($text); - $start = 0; - - if ($start < $len) { - $part = $text; // OAR - Don't need this anymore, given that $start always equals zero. substr($text, $start); - $place_text = $this->filterText($part, false); - // modify unicode text so that extra word spacing is manually implemented (bug #) - if ($this->fonts[$this->currentFont]['isUnicode'] && $wordSpaceAdjust != 0) { - $space_scale = 1000 / $size; - $place_text = str_replace("\x00\x20", "\x00\x20)\x00\x20" . (-round($space_scale * $wordSpaceAdjust)) . "\x00\x20(", $place_text); - } - $this->addContent(" /F$this->currentFontNum " . sprintf('%.1F Tf ', $size)); - $this->addContent(" [($place_text)] TJ"); - } - - if ($wordSpaceAdjust != 0) { - $this->addContent(sprintf(" %.3F Tw", 0)); - } - - if ($charSpaceAdjust != 0) { - $this->addContent(sprintf(" %.3F Tc", 0)); - } - - $this->addContent(' ET'); - - // if there are any open callbacks, then they should be called, to show the end of the line - if ($this->nCallback > 0) { - for ($i = $this->nCallback; $i > 0; $i--) { - // call each function - $tmp = $this->getTextPosition($x, $y, $angle, $size, $wordSpaceAdjust, $text); - $info = [ - 'x' => $tmp[0], - 'y' => $tmp[1], - 'angle' => $angle, - 'status' => 'eol', - 'p' => $this->callback[$i]['p'], - 'nCallback' => $this->callback[$i]['nCallback'], - 'height' => $this->callback[$i]['height'], - 'descender' => $this->callback[$i]['descender'] - ]; - $func = $this->callback[$i]['f']; - $this->$func($info); - } - } - - if ($this->fonts[$this->currentFont]['isSubsetting']) { - $this->registerText($this->currentFont, $text); - } - } - - /** - * calculate how wide a given text string will be on a page, at a given size. - * this can be called externally, but is also used by the other class functions - * - * @param float $size - * @param string $text - * @param float $wordSpacing - * @param float $charSpacing - * - * @return float - */ - public function getTextWidth(float $size, string $text, float $wordSpacing = 0.0, float $charSpacing = 0.0): float - { - static $ord_cache = []; - - // this function should not change any of the settings, though it will need to - // track any directives which change during calculation, so copy them at the start - // and put them back at the end. - $store_currentTextState = $this->currentTextState; - - if (!$this->numFonts) { - $this->selectFont($this->defaultFont); - } - - $text = str_replace(["\r", "\n"], "", $text); - - // hmm, this is where it all starts to get tricky - use the font information to - // calculate the width of each character, add them up and convert to user units - $w = 0; - $cf = $this->currentFont; - $current_font = $this->fonts[$cf]; - $space_scale = 1000 / ($size > 0 ? $size : 1); - - if ($current_font['isUnicode']) { - // for Unicode, use the code points array to calculate width rather - // than just the string itself - $unicode = $this->utf8toCodePointsArray($text); - - foreach ($unicode as $char) { - // check if we have to replace character - if (isset($current_font['differences'][$char])) { - $char = $current_font['differences'][$char]; - } - - if (isset($current_font['C'][$char])) { - $char_width = $current_font['C'][$char]; - - // add the character width - $w += $char_width; - - // add additional padding for space - if (isset($current_font['codeToName'][$char]) && $current_font['codeToName'][$char] === 'space') { // Space - $w += $wordSpacing * $space_scale; - } - } - } - - // add additional char spacing - if ($charSpacing != 0) { - $w += $charSpacing * $space_scale * count($unicode); - } - - } else { - // If CPDF is in Unicode mode but the current font does not support Unicode we need to convert the character set to Windows-1252 - if ($this->isUnicode) { - $text = mb_convert_encoding($text, 'Windows-1252', 'UTF-8'); - } - - $len = mb_strlen($text, 'Windows-1252'); - - for ($i = 0; $i < $len; $i++) { - $c = $text[$i]; - $char = isset($ord_cache[$c]) ? $ord_cache[$c] : ($ord_cache[$c] = ord($c)); - - // check if we have to replace character - if (isset($current_font['differences'][$char])) { - $char = $current_font['differences'][$char]; - } - - if (isset($current_font['C'][$char])) { - $char_width = $current_font['C'][$char]; - - // add the character width - $w += $char_width; - - // add additional padding for space - if (isset($current_font['codeToName'][$char]) && $current_font['codeToName'][$char] === 'space') { // Space - $w += $wordSpacing * $space_scale; - } - } - } - - // add additional char spacing - if ($charSpacing != 0) { - $w += $charSpacing * $space_scale * $len; - } - } - - $this->currentTextState = $store_currentTextState; - $this->setCurrentFont(); - - return $w * $size / 1000; - } - - /** - * this will be called at a new page to return the state to what it was on the - * end of the previous page, before the stack was closed down - * This is to get around not being able to have open 'q' across pages - * - * @param int $pageEnd - */ - function saveState($pageEnd = 0) - { - if ($pageEnd) { - // this will be called at a new page to return the state to what it was on the - // end of the previous page, before the stack was closed down - // This is to get around not being able to have open 'q' across pages - $opt = $this->stateStack[$pageEnd]; - // ok to use this as stack starts numbering at 1 - $this->setColor($opt['col'], true); - $this->setStrokeColor($opt['str'], true); - $this->addContent("\n" . $opt['lin']); - // $this->currentLineStyle = $opt['lin']; - } else { - $this->nStateStack++; - $this->stateStack[$this->nStateStack] = [ - 'col' => $this->currentColor, - 'str' => $this->currentStrokeColor, - 'lin' => $this->currentLineStyle - ]; - } - - $this->save(); - } - - /** - * restore a previously saved state - * - * @param int $pageEnd - */ - function restoreState($pageEnd = 0) - { - if (!$pageEnd) { - $n = $this->nStateStack; - $this->currentColor = $this->stateStack[$n]['col']; - $this->currentStrokeColor = $this->stateStack[$n]['str']; - $this->addContent("\n" . $this->stateStack[$n]['lin']); - $this->currentLineStyle = $this->stateStack[$n]['lin']; - $this->stateStack[$n] = null; - unset($this->stateStack[$n]); - $this->nStateStack--; - } - - $this->restore(); - } - - /** - * make a loose object, the output will go into this object, until it is closed, then will revert to - * the current one. - * this object will not appear until it is included within a page. - * the function will return the object number - * - * @return int - */ - function openObject() - { - $this->nStack++; - $this->stack[$this->nStack] = ['c' => $this->currentContents, 'p' => $this->currentPage]; - // add a new object of the content type, to hold the data flow - $this->numObj++; - $this->o_contents($this->numObj, 'new'); - $this->currentContents = $this->numObj; - $this->looseObjects[$this->numObj] = 1; - - return $this->numObj; - } - - /** - * open an existing object for editing - * - * @param $id - */ - function reopenObject($id) - { - $this->nStack++; - $this->stack[$this->nStack] = ['c' => $this->currentContents, 'p' => $this->currentPage]; - $this->currentContents = $id; - - // also if this object is the primary contents for a page, then set the current page to its parent - if (isset($this->objects[$id]['onPage'])) { - $this->currentPage = $this->objects[$id]['onPage']; - } - } - - /** - * close an object - */ - function closeObject() - { - // close the object, as long as there was one open in the first place, which will be indicated by - // an objectId on the stack. - if ($this->nStack > 0) { - $this->currentContents = $this->stack[$this->nStack]['c']; - $this->currentPage = $this->stack[$this->nStack]['p']; - $this->nStack--; - // easier to probably not worry about removing the old entries, they will be overwritten - // if there are new ones. - } - } - - /** - * stop an object from appearing on pages from this point on - * - * @param $id - */ - function stopObject($id) - { - // if an object has been appearing on pages up to now, then stop it, this page will - // be the last one that could contain it. - if (isset($this->addLooseObjects[$id])) { - $this->addLooseObjects[$id] = ''; - } - } - - /** - * after an object has been created, it wil only show if it has been added, using this function. - * - * @param $id - * @param string $options - */ - function addObject($id, $options = 'add') - { - // add the specified object to the page - if (isset($this->looseObjects[$id]) && $this->currentContents != $id) { - // then it is a valid object, and it is not being added to itself - switch ($options) { - case 'all': - // then this object is to be added to this page (done in the next block) and - // all future new pages. - $this->addLooseObjects[$id] = 'all'; - - case 'add': - if (isset($this->objects[$this->currentContents]['onPage'])) { - // then the destination contents is the primary for the page - // (though this object is actually added to that page) - $this->o_page($this->objects[$this->currentContents]['onPage'], 'content', $id); - } - break; - - case 'even': - $this->addLooseObjects[$id] = 'even'; - $pageObjectId = $this->objects[$this->currentContents]['onPage']; - if ($this->objects[$pageObjectId]['info']['pageNum'] % 2 == 0) { - $this->addObject($id); - // hacky huh :) - } - break; - - case 'odd': - $this->addLooseObjects[$id] = 'odd'; - $pageObjectId = $this->objects[$this->currentContents]['onPage']; - if ($this->objects[$pageObjectId]['info']['pageNum'] % 2 == 1) { - $this->addObject($id); - // hacky huh :) - } - break; - - case 'next': - $this->addLooseObjects[$id] = 'all'; - break; - - case 'nexteven': - $this->addLooseObjects[$id] = 'even'; - break; - - case 'nextodd': - $this->addLooseObjects[$id] = 'odd'; - break; - } - } - } - - /** - * return a storable representation of a specific object - * - * @param $id - * @return string|null - */ - function serializeObject($id) - { - if (array_key_exists($id, $this->objects)) { - return serialize($this->objects[$id]); - } - - return null; - } - - /** - * restore an object from its stored representation. Returns its new object id. - * - * @param $obj - * @return int - */ - function restoreSerializedObject($obj) - { - $obj_id = $this->openObject(); - $this->objects[$obj_id] = unserialize($obj); - $this->closeObject(); - - return $obj_id; - } - - /** - * Embeds a file inside the PDF - * - * @param string $filepath path to the file to store inside the PDF - * @param string $embeddedFilename the filename displayed in the list of embedded files - * @param string $description a description in the list of embedded files - */ - public function addEmbeddedFile(string $filepath, string $embeddedFilename, string $description): void - { - $this->numObj++; - $this->o_embedded_file_dictionary( - $this->numObj, - 'new', - [ - 'filepath' => $filepath, - 'filename' => $embeddedFilename, - 'description' => $description - ] - ); - } - - /** - * Add content to the documents info object - * - * @param string|array $label - * @param string $value - */ - public function addInfo($label, string $value = ""): void - { - // this will only work if the label is one of the valid ones. - // modify this so that arrays can be passed as well. - // if $label is an array then assume that it is key => value pairs - // else assume that they are both scalar, anything else will probably error - if (is_array($label)) { - foreach ($label as $l => $v) { - $this->o_info($this->infoObject, $l, (string) $v); - } - } else { - $this->o_info($this->infoObject, $label, $value); - } - } - - /** - * set the viewer preferences of the document, it is up to the browser to obey these. - * - * @param $label - * @param int $value - */ - function setPreferences($label, $value = 0) - { - // this will only work if the label is one of the valid ones. - if (is_array($label)) { - foreach ($label as $l => $v) { - $this->o_catalog($this->catalogId, 'viewerPreferences', [$l => $v]); - } - } else { - $this->o_catalog($this->catalogId, 'viewerPreferences', [$label => $value]); - } - } - - /** - * extract an integer from a position in a byte stream - * - * @param $data - * @param $pos - * @param $num - * @return int - */ - private function getBytes(&$data, $pos, $num) - { - // return the integer represented by $num bytes from $pos within $data - $ret = 0; - for ($i = 0; $i < $num; $i++) { - $ret *= 256; - $ret += ord($data[$pos + $i]); - } - - return $ret; - } - - /** - * Check if image already added to pdf image directory. - * If yes, need not to create again (pass empty data) - * - * @param string $imgname - * @return bool - */ - function image_iscached($imgname) - { - return isset($this->imagelist[$imgname]); - } - - /** - * add a PNG image into the document, from a GD object - * this should work with remote files - * - * @param \GdImage|resource $img A GD resource - * @param string $file The PNG file - * @param float $x X position - * @param float $y Y position - * @param float $w Width - * @param float $h Height - * @param bool $is_mask true if the image is a mask - * @param bool $mask true if the image is masked - * @throws Exception - */ - function addImagePng(&$img, $file, $x, $y, $w = 0.0, $h = 0.0, $is_mask = false, $mask = null) - { - if (!function_exists("imagepng")) { - throw new \Exception("The PHP GD extension is required, but is not installed."); - } - - //if already cached, need not to read again - if (isset($this->imagelist[$file])) { - $data = null; - } else { - // Example for transparency handling on new image. Retain for current image - // $tIndex = imagecolortransparent($img); - // if ($tIndex > 0) { - // $tColor = imagecolorsforindex($img, $tIndex); - // $new_tIndex = imagecolorallocate($new_img, $tColor['red'], $tColor['green'], $tColor['blue']); - // imagefill($new_img, 0, 0, $new_tIndex); - // imagecolortransparent($new_img, $new_tIndex); - // } - // blending mode (literal/blending) on drawing into current image. not relevant when not saved or not drawn - //imagealphablending($img, true); - - //default, but explicitely set to ensure pdf compatibility - imagesavealpha($img, false/*!$is_mask && !$mask*/); - - $error = 0; - //DEBUG_IMG_TEMP - //debugpng - if (defined("DEBUGPNG") && DEBUGPNG) { - print '[addImagePng ' . $file . ']'; - } - - ob_start(); - @imagepng($img); - $data = ob_get_clean(); - - if ($data == '') { - $error = 1; - $errormsg = 'trouble writing file from GD'; - //DEBUG_IMG_TEMP - //debugpng - if (defined("DEBUGPNG") && DEBUGPNG) { - print 'trouble writing file from GD'; - } - } - - if ($error) { - $this->addMessage('PNG error - (' . $file . ') ' . $errormsg); - - return; - } - } //End isset($this->imagelist[$file]) (png Duplicate removal) - - $this->addPngFromBuf($data, $file, $x, $y, $w, $h, $is_mask, $mask); - } - - /** - * @param $file - * @param $x - * @param $y - * @param $w - * @param $h - * @param $byte - */ - protected function addImagePngAlpha($file, $x, $y, $w, $h, $byte) - { - // generate images - $img = @imagecreatefrompng($file); - - if ($img === false) { - return; - } - - // FIXME The pixel transformation doesn't work well with 8bit PNGs - $eight_bit = ($byte & 4) !== 4; - - $wpx = imagesx($img); - $hpx = imagesy($img); - - imagesavealpha($img, false); - - // create temp alpha file - $tempfile_alpha = @tempnam($this->tmp, "cpdf_img_"); - @unlink($tempfile_alpha); - $tempfile_alpha = "$tempfile_alpha.png"; - - // create temp plain file - $tempfile_plain = @tempnam($this->tmp, "cpdf_img_"); - @unlink($tempfile_plain); - $tempfile_plain = "$tempfile_plain.png"; - - $imgalpha = imagecreate($wpx, $hpx); - imagesavealpha($imgalpha, false); - - // generate gray scale palette (0 -> 255) - for ($c = 0; $c < 256; ++$c) { - imagecolorallocate($imgalpha, $c, $c, $c); - } - - // Use PECL gmagick + Graphics Magic to process transparent PNG images - if (extension_loaded("gmagick")) { - $gmagick = new \Gmagick($file); - $gmagick->setimageformat('png'); - - // Get opacity channel (negative of alpha channel) - $alpha_channel_neg = clone $gmagick; - $alpha_channel_neg->separateimagechannel(\Gmagick::CHANNEL_OPACITY); - - // Negate opacity channel - $alpha_channel = new \Gmagick(); - $alpha_channel->newimage($wpx, $hpx, "#FFFFFF", "png"); - $alpha_channel->compositeimage($alpha_channel_neg, \Gmagick::COMPOSITE_DIFFERENCE, 0, 0); - $alpha_channel->separateimagechannel(\Gmagick::CHANNEL_RED); - $alpha_channel->writeimage($tempfile_alpha); - - // Cast to 8bit+palette - $imgalpha_ = @imagecreatefrompng($tempfile_alpha); - imagecopy($imgalpha, $imgalpha_, 0, 0, 0, 0, $wpx, $hpx); - imagedestroy($imgalpha_); - imagepng($imgalpha, $tempfile_alpha); - - // Make opaque image - $color_channels = new \Gmagick(); - $color_channels->newimage($wpx, $hpx, "#FFFFFF", "png"); - $color_channels->compositeimage($gmagick, \Gmagick::COMPOSITE_COPYRED, 0, 0); - $color_channels->compositeimage($gmagick, \Gmagick::COMPOSITE_COPYGREEN, 0, 0); - $color_channels->compositeimage($gmagick, \Gmagick::COMPOSITE_COPYBLUE, 0, 0); - $color_channels->writeimage($tempfile_plain); - - $imgplain = @imagecreatefrompng($tempfile_plain); - } - // Use PECL imagick + ImageMagic to process transparent PNG images - elseif (extension_loaded("imagick")) { - // Native cloning was added to pecl-imagick in svn commit 263814 - // the first version containing it was 3.0.1RC1 - static $imagickClonable = null; - if ($imagickClonable === null) { - $imagickClonable = true; - if (defined('Imagick::IMAGICK_EXTVER')) { - $imagickVersion = \Imagick::IMAGICK_EXTVER; - } else { - $imagickVersion = '0'; - } - if (version_compare($imagickVersion, '0.0.1', '>=')) { - $imagickClonable = version_compare($imagickVersion, '3.0.1rc1', '>='); - } - } - - $imagick = new \Imagick($file); - $imagick->setFormat('png'); - - // Get opacity channel (negative of alpha channel) - if ($imagick->getImageAlphaChannel()) { - $alpha_channel = $imagickClonable ? clone $imagick : $imagick->clone(); - $alpha_channel->separateImageChannel(\Imagick::CHANNEL_ALPHA); - // Since ImageMagick7 negate invert transparency as default - if (\Imagick::getVersion()['versionNumber'] < 1800) { - $alpha_channel->negateImage(true); - } - $alpha_channel->writeImage($tempfile_alpha); - - // Cast to 8bit+palette - $imgalpha_ = @imagecreatefrompng($tempfile_alpha); - imagecopy($imgalpha, $imgalpha_, 0, 0, 0, 0, $wpx, $hpx); - imagedestroy($imgalpha_); - imagepng($imgalpha, $tempfile_alpha); - } else { - $tempfile_alpha = null; - } - - // Make opaque image - $color_channels = new \Imagick(); - $color_channels->newImage($wpx, $hpx, "#FFFFFF", "png"); - $color_channels->compositeImage($imagick, \Imagick::COMPOSITE_COPYRED, 0, 0); - $color_channels->compositeImage($imagick, \Imagick::COMPOSITE_COPYGREEN, 0, 0); - $color_channels->compositeImage($imagick, \Imagick::COMPOSITE_COPYBLUE, 0, 0); - $color_channels->writeImage($tempfile_plain); - - $imgplain = @imagecreatefrompng($tempfile_plain); - } else { - // allocated colors cache - $allocated_colors = []; - - // extract alpha channel - for ($xpx = 0; $xpx < $wpx; ++$xpx) { - for ($ypx = 0; $ypx < $hpx; ++$ypx) { - $color = imagecolorat($img, $xpx, $ypx); - $col = imagecolorsforindex($img, $color); - $alpha = $col['alpha']; - - if ($eight_bit) { - // with gamma correction - $gammacorr = 2.2; - $pixel = round(pow((((127 - $alpha) * 255 / 127) / 255), $gammacorr) * 255); - } else { - // without gamma correction - $pixel = (127 - $alpha) * 2; - - $key = $col['red'] . $col['green'] . $col['blue']; - - if (!isset($allocated_colors[$key])) { - $pixel_img = imagecolorallocate($img, $col['red'], $col['green'], $col['blue']); - $allocated_colors[$key] = $pixel_img; - } else { - $pixel_img = $allocated_colors[$key]; - } - - imagesetpixel($img, $xpx, $ypx, $pixel_img); - } - - imagesetpixel($imgalpha, $xpx, $ypx, $pixel); - } - } - - // extract image without alpha channel - $imgplain = imagecreatetruecolor($wpx, $hpx); - imagecopy($imgplain, $img, 0, 0, 0, 0, $wpx, $hpx); - imagedestroy($img); - - imagepng($imgalpha, $tempfile_alpha); - imagepng($imgplain, $tempfile_plain); - } - - $this->imageAlphaList[$file] = [$tempfile_alpha, $tempfile_plain]; - - // embed mask image - if ($tempfile_alpha) { - $this->addImagePng($imgalpha, $tempfile_alpha, $x, $y, $w, $h, true); - imagedestroy($imgalpha); - $this->imageCache[] = $tempfile_alpha; - } - - // embed image, masked with previously embedded mask - $this->addImagePng($imgplain, $tempfile_plain, $x, $y, $w, $h, false, ($tempfile_alpha !== null)); - imagedestroy($imgplain); - $this->imageCache[] = $tempfile_plain; - } - - /** - * add a PNG image into the document, from a file - * this should work with remote files - * - * @param $file - * @param $x - * @param $y - * @param int $w - * @param int $h - * @throws Exception - */ - function addPngFromFile($file, $x, $y, $w = 0, $h = 0) - { - if (!function_exists("imagecreatefrompng")) { - throw new \Exception("The PHP GD extension is required, but is not installed."); - } - - if (isset($this->imageAlphaList[$file])) { - [$alphaFile, $plainFile] = $this->imageAlphaList[$file]; - - if ($alphaFile) { - $img = null; - $this->addImagePng($img, $alphaFile, $x, $y, $w, $h, true); - } - - $img = null; - $this->addImagePng($img, $plainFile, $x, $y, $w, $h, false, ($plainFile !== null)); - return; - } - - //if already cached, need not to read again - if (isset($this->imagelist[$file])) { - $img = null; - } else { - $info = file_get_contents($file, false, null, 24, 5); - $meta = unpack("CbitDepth/CcolorType/CcompressionMethod/CfilterMethod/CinterlaceMethod", $info); - $bit_depth = $meta["bitDepth"]; - $color_type = $meta["colorType"]; - - // http://www.w3.org/TR/PNG/#11IHDR - // 3 => indexed - // 4 => greyscale with alpha - // 6 => fullcolor with alpha - $is_alpha = in_array($color_type, [4, 6]) || ($color_type == 3 && $bit_depth != 4); - - if ($is_alpha) { // exclude grayscale alpha - $this->addImagePngAlpha($file, $x, $y, $w, $h, $color_type); - return; - } - - //png files typically contain an alpha channel. - //pdf file format or class.pdf does not support alpha blending. - //on alpha blended images, more transparent areas have a color near black. - //This appears in the result on not storing the alpha channel. - //Correct would be the box background image or its parent when transparent. - //But this would make the image dependent on the background. - //Therefore create an image with white background and copy in - //A more natural background than black is white. - //Therefore create an empty image with white background and merge the - //image in with alpha blending. - $imgtmp = @imagecreatefrompng($file); - if (!$imgtmp) { - return; - } - $sx = imagesx($imgtmp); - $sy = imagesy($imgtmp); - $img = imagecreatetruecolor($sx, $sy); - imagealphablending($img, true); - - // @todo is it still needed ?? - $ti = imagecolortransparent($imgtmp); - if ($ti >= 0) { - $tc = imagecolorsforindex($imgtmp, $ti); - $ti = imagecolorallocate($img, $tc['red'], $tc['green'], $tc['blue']); - imagefill($img, 0, 0, $ti); - imagecolortransparent($img, $ti); - } else { - imagefill($img, 1, 1, imagecolorallocate($img, 255, 255, 255)); - } - - imagecopy($img, $imgtmp, 0, 0, 0, 0, $sx, $sy); - imagedestroy($imgtmp); - } - $this->addImagePng($img, $file, $x, $y, $w, $h); - - if ($img) { - imagedestroy($img); - } - } - - /** - * add a PNG image into the document, from a memory buffer of the file - * - * @param $data - * @param $file - * @param $x - * @param $y - * @param float $w - * @param float $h - * @param bool $is_mask - * @param null $mask - */ - function addPngFromBuf(&$data, $file, $x, $y, $w = 0.0, $h = 0.0, $is_mask = false, $mask = null) - { - if (isset($this->imagelist[$file])) { - $data = null; - $info['width'] = $this->imagelist[$file]['w']; - $info['height'] = $this->imagelist[$file]['h']; - $label = $this->imagelist[$file]['label']; - } else { - if ($data == null) { - $this->addMessage('addPngFromBuf error - data not present!'); - - return; - } - - $error = 0; - - if (!$error) { - $header = chr(137) . chr(80) . chr(78) . chr(71) . chr(13) . chr(10) . chr(26) . chr(10); - - if (mb_substr($data, 0, 8, '8bit') != $header) { - $error = 1; - - if (defined("DEBUGPNG") && DEBUGPNG) { - print '[addPngFromFile this file does not have a valid header ' . $file . ']'; - } - - $errormsg = 'this file does not have a valid header'; - } - } - - if (!$error) { - // set pointer - $p = 8; - $len = mb_strlen($data, '8bit'); - - // cycle through the file, identifying chunks - $haveHeader = 0; - $info = []; - $idata = ''; - $pdata = ''; - - while ($p < $len) { - $chunkLen = $this->getBytes($data, $p, 4); - $chunkType = mb_substr($data, $p + 4, 4, '8bit'); - - switch ($chunkType) { - case 'IHDR': - // this is where all the file information comes from - $info['width'] = $this->getBytes($data, $p + 8, 4); - $info['height'] = $this->getBytes($data, $p + 12, 4); - $info['bitDepth'] = ord($data[$p + 16]); - $info['colorType'] = ord($data[$p + 17]); - $info['compressionMethod'] = ord($data[$p + 18]); - $info['filterMethod'] = ord($data[$p + 19]); - $info['interlaceMethod'] = ord($data[$p + 20]); - - //print_r($info); - $haveHeader = 1; - if ($info['compressionMethod'] != 0) { - $error = 1; - - //debugpng - if (defined("DEBUGPNG") && DEBUGPNG) { - print '[addPngFromFile unsupported compression method ' . $file . ']'; - } - - $errormsg = 'unsupported compression method'; - } - - if ($info['filterMethod'] != 0) { - $error = 1; - - //debugpng - if (defined("DEBUGPNG") && DEBUGPNG) { - print '[addPngFromFile unsupported filter method ' . $file . ']'; - } - - $errormsg = 'unsupported filter method'; - } - break; - - case 'PLTE': - $pdata .= mb_substr($data, $p + 8, $chunkLen, '8bit'); - break; - - case 'IDAT': - $idata .= mb_substr($data, $p + 8, $chunkLen, '8bit'); - break; - - case 'tRNS': - //this chunk can only occur once and it must occur after the PLTE chunk and before IDAT chunk - //print "tRNS found, color type = ".$info['colorType']."\n"; - $transparency = []; - - switch ($info['colorType']) { - // indexed color, rbg - case 3: - /* corresponding to entries in the plte chunk - Alpha for palette index 0: 1 byte - Alpha for palette index 1: 1 byte - ...etc... - */ - // there will be one entry for each palette entry. up until the last non-opaque entry. - // set up an array, stretching over all palette entries which will be o (opaque) or 1 (transparent) - $transparency['type'] = 'indexed'; - $trans = 0; - - for ($i = $chunkLen; $i >= 0; $i--) { - if (ord($data[$p + 8 + $i]) == 0) { - $trans = $i; - } - } - - $transparency['data'] = $trans; - break; - - // grayscale - case 0: - /* corresponding to entries in the plte chunk - Gray: 2 bytes, range 0 .. (2^bitdepth)-1 - */ - // $transparency['grayscale'] = $this->PRVT_getBytes($data,$p+8,2); // g = grayscale - $transparency['type'] = 'indexed'; - $transparency['data'] = ord($data[$p + 8 + 1]); - break; - - // truecolor - case 2: - /* corresponding to entries in the plte chunk - Red: 2 bytes, range 0 .. (2^bitdepth)-1 - Green: 2 bytes, range 0 .. (2^bitdepth)-1 - Blue: 2 bytes, range 0 .. (2^bitdepth)-1 - */ - $transparency['r'] = $this->getBytes($data, $p + 8, 2); - // r from truecolor - $transparency['g'] = $this->getBytes($data, $p + 10, 2); - // g from truecolor - $transparency['b'] = $this->getBytes($data, $p + 12, 2); - // b from truecolor - - $transparency['type'] = 'color-key'; - break; - - //unsupported transparency type - default: - if (defined("DEBUGPNG") && DEBUGPNG) { - print '[addPngFromFile unsupported transparency type ' . $file . ']'; - } - break; - } - - // KS End new code - break; - - default: - break; - } - - $p += $chunkLen + 12; - } - - if (!$haveHeader) { - $error = 1; - - //debugpng - if (defined("DEBUGPNG") && DEBUGPNG) { - print '[addPngFromFile information header is missing ' . $file . ']'; - } - - $errormsg = 'information header is missing'; - } - - if (isset($info['interlaceMethod']) && $info['interlaceMethod']) { - $error = 1; - - //debugpng - if (defined("DEBUGPNG") && DEBUGPNG) { - print '[addPngFromFile no support for interlaced images in pdf ' . $file . ']'; - } - - $errormsg = 'There appears to be no support for interlaced images in pdf.'; - } - } - - if (!$error && $info['bitDepth'] > 8) { - $error = 1; - - //debugpng - if (defined("DEBUGPNG") && DEBUGPNG) { - print '[addPngFromFile bit depth of 8 or less is supported ' . $file . ']'; - } - - $errormsg = 'only bit depth of 8 or less is supported'; - } - - if (!$error) { - switch ($info['colorType']) { - case 3: - $color = 'DeviceRGB'; - $ncolor = 1; - break; - - case 2: - $color = 'DeviceRGB'; - $ncolor = 3; - break; - - case 0: - $color = 'DeviceGray'; - $ncolor = 1; - break; - - default: - $error = 1; - - //debugpng - if (defined("DEBUGPNG") && DEBUGPNG) { - print '[addPngFromFile alpha channel not supported: ' . $info['colorType'] . ' ' . $file . ']'; - } - - $errormsg = 'transparency alpha channel not supported, transparency only supported for palette images.'; - } - } - - if ($error) { - $this->addMessage('PNG error - (' . $file . ') ' . $errormsg); - - return; - } - - //print_r($info); - // so this image is ok... add it in. - $this->numImages++; - $im = $this->numImages; - $label = "I$im"; - $this->numObj++; - - // $this->o_image($this->numObj,'new',array('label' => $label,'data' => $idata,'iw' => $w,'ih' => $h,'type' => 'png','ic' => $info['width'])); - $options = [ - 'label' => $label, - 'data' => $idata, - 'bitsPerComponent' => $info['bitDepth'], - 'pdata' => $pdata, - 'iw' => $info['width'], - 'ih' => $info['height'], - 'type' => 'png', - 'color' => $color, - 'ncolor' => $ncolor, - 'masked' => $mask, - 'isMask' => $is_mask - ]; - - if (isset($transparency)) { - $options['transparency'] = $transparency; - } - - $this->o_image($this->numObj, 'new', $options); - $this->imagelist[$file] = ['label' => $label, 'w' => $info['width'], 'h' => $info['height']]; - } - - if ($is_mask) { - return; - } - - if ($w <= 0 && $h <= 0) { - $w = $info['width']; - $h = $info['height']; - } - - if ($w <= 0) { - $w = $h / $info['height'] * $info['width']; - } - - if ($h <= 0) { - $h = $w * $info['height'] / $info['width']; - } - - $this->addContent(sprintf("\nq\n%.3F 0 0 %.3F %.3F %.3F cm /%s Do\nQ", $w, $h, $x, $y, $label)); - } - - /** - * add a JPEG image into the document, from a file - * - * @param $img - * @param $x - * @param $y - * @param int $w - * @param int $h - */ - function addJpegFromFile($img, $x, $y, $w = 0, $h = 0) - { - // attempt to add a jpeg image straight from a file, using no GD commands - // note that this function is unable to operate on a remote file. - - if (!file_exists($img)) { - return; - } - - if ($this->image_iscached($img)) { - $data = null; - $imageWidth = $this->imagelist[$img]['w']; - $imageHeight = $this->imagelist[$img]['h']; - $channels = $this->imagelist[$img]['c']; - } else { - $tmp = getimagesize($img); - $imageWidth = $tmp[0]; - $imageHeight = $tmp[1]; - - if (isset($tmp['channels'])) { - $channels = $tmp['channels']; - } else { - $channels = 3; - } - - $data = file_get_contents($img); - } - - if ($w <= 0 && $h <= 0) { - $w = $imageWidth; - } - - if ($w == 0) { - $w = $h / $imageHeight * $imageWidth; - } - - if ($h == 0) { - $h = $w * $imageHeight / $imageWidth; - } - - $this->addJpegImage_common($data, $img, $imageWidth, $imageHeight, $x, $y, $w, $h, $channels); - } - - /** - * common code used by the two JPEG adding functions - * @param $data - * @param $imgname - * @param $imageWidth - * @param $imageHeight - * @param $x - * @param $y - * @param int $w - * @param int $h - * @param int $channels - */ - private function addJpegImage_common( - &$data, - $imgname, - $imageWidth, - $imageHeight, - $x, - $y, - $w = 0, - $h = 0, - $channels = 3 - ) { - if ($this->image_iscached($imgname)) { - $label = $this->imagelist[$imgname]['label']; - //debugpng - //if (DEBUGPNG) print '[addJpegImage_common Duplicate '.$imgname.']'; - - } else { - if ($data == null) { - $this->addMessage('addJpegImage_common error - (' . $imgname . ') data not present!'); - - return; - } - - // note that this function is not to be called externally - // it is just the common code between the GD and the file options - $this->numImages++; - $im = $this->numImages; - $label = "I$im"; - $this->numObj++; - - $this->o_image( - $this->numObj, - 'new', - [ - 'label' => $label, - 'data' => &$data, - 'iw' => $imageWidth, - 'ih' => $imageHeight, - 'channels' => $channels - ] - ); - - $this->imagelist[$imgname] = [ - 'label' => $label, - 'w' => $imageWidth, - 'h' => $imageHeight, - 'c' => $channels - ]; - } - - $this->addContent(sprintf("\nq\n%.3F 0 0 %.3F %.3F %.3F cm /%s Do\nQ ", $w, $h, $x, $y, $label)); - } - - /** - * specify where the document should open when it first starts - * - * @param $style - * @param int $a - * @param int $b - * @param int $c - */ - function openHere($style, $a = 0, $b = 0, $c = 0) - { - // this function will open the document at a specified page, in a specified style - // the values for style, and the required parameters are: - // 'XYZ' left, top, zoom - // 'Fit' - // 'FitH' top - // 'FitV' left - // 'FitR' left,bottom,right - // 'FitB' - // 'FitBH' top - // 'FitBV' left - $this->numObj++; - $this->o_destination( - $this->numObj, - 'new', - ['page' => $this->currentPage, 'type' => $style, 'p1' => $a, 'p2' => $b, 'p3' => $c] - ); - $id = $this->catalogId; - $this->o_catalog($id, 'openHere', $this->numObj); - } - - /** - * Add JavaScript code to the PDF document - * - * @param string $code - */ - function addJavascript($code) - { - $this->javascript .= $code; - } - - /** - * create a labelled destination within the document - * - * @param $label - * @param $style - * @param int $a - * @param int $b - * @param int $c - */ - function addDestination($label, $style, $a = 0, $b = 0, $c = 0) - { - // associates the given label with the destination, it is done this way so that a destination can be specified after - // it has been linked to - // styles are the same as the 'openHere' function - $this->numObj++; - $this->o_destination( - $this->numObj, - 'new', - ['page' => $this->currentPage, 'type' => $style, 'p1' => $a, 'p2' => $b, 'p3' => $c] - ); - $id = $this->numObj; - - // store the label->idf relationship, note that this means that labels can be used only once - $this->destinations["$label"] = $id; - } - - /** - * define font families, this is used to initialize the font families for the default fonts - * and for the user to add new ones for their fonts. The default bahavious can be overridden should - * that be desired. - * - * @param $family - * @param string $options - */ - function setFontFamily($family, $options = '') - { - if (!is_array($options)) { - if ($family === 'init') { - // set the known family groups - // these font families will be used to enable bold and italic markers to be included - // within text streams. html forms will be used... - $this->fontFamilies['Helvetica.afm'] = - [ - 'b' => 'Helvetica-Bold.afm', - 'i' => 'Helvetica-Oblique.afm', - 'bi' => 'Helvetica-BoldOblique.afm', - 'ib' => 'Helvetica-BoldOblique.afm' - ]; - - $this->fontFamilies['Courier.afm'] = - [ - 'b' => 'Courier-Bold.afm', - 'i' => 'Courier-Oblique.afm', - 'bi' => 'Courier-BoldOblique.afm', - 'ib' => 'Courier-BoldOblique.afm' - ]; - - $this->fontFamilies['Times-Roman.afm'] = - [ - 'b' => 'Times-Bold.afm', - 'i' => 'Times-Italic.afm', - 'bi' => 'Times-BoldItalic.afm', - 'ib' => 'Times-BoldItalic.afm' - ]; - } - } else { - - // the user is trying to set a font family - // note that this can also be used to set the base ones to something else - if (mb_strlen($family)) { - $this->fontFamilies[$family] = $options; - } - } - } - - /** - * used to add messages for use in debugging - * - * @param $message - */ - function addMessage($message) - { - $this->messages .= $message . "\n"; - } - - /** - * a few functions which should allow the document to be treated transactionally. - * - * @param $action - */ - function transaction($action) - { - switch ($action) { - case 'start': - // store all the data away into the checkpoint variable - $data = get_object_vars($this); - $this->checkpoint = $data; - unset($data); - break; - - case 'commit': - if (is_array($this->checkpoint) && isset($this->checkpoint['checkpoint'])) { - $tmp = $this->checkpoint['checkpoint']; - $this->checkpoint = $tmp; - unset($tmp); - } else { - $this->checkpoint = ''; - } - break; - - case 'rewind': - // do not destroy the current checkpoint, but move us back to the state then, so that we can try again - if (is_array($this->checkpoint)) { - // can only abort if were inside a checkpoint - $tmp = $this->checkpoint; - - foreach ($tmp as $k => $v) { - if ($k !== 'checkpoint') { - $this->$k = $v; - } - } - unset($tmp); - } - break; - - case 'abort': - if (is_array($this->checkpoint)) { - // can only abort if were inside a checkpoint - $tmp = $this->checkpoint; - foreach ($tmp as $k => $v) { - $this->$k = $v; - } - unset($tmp); - } - break; - } - } -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Surface/SurfaceCpdf.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Surface/SurfaceCpdf.php deleted file mode 100644 index 62cc74a1..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Surface/SurfaceCpdf.php +++ /dev/null @@ -1,495 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg\Surface; - -use Svg\Document; -use Svg\Style; - -class SurfaceCpdf implements SurfaceInterface -{ - const DEBUG = false; - - /** @var \Svg\Surface\CPdf */ - private $canvas; - - private $width; - private $height; - - /** @var Style */ - private $style; - - public function __construct(Document $doc, $canvas = null) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - - $dimensions = $doc->getDimensions(); - $w = $dimensions["width"]; - $h = $dimensions["height"]; - - if (!$canvas) { - $canvas = new \Svg\Surface\CPdf(array(0, 0, $w, $h)); - $refl = new \ReflectionClass($canvas); - $canvas->fontcache = realpath(dirname($refl->getFileName()) . "/../../fonts/")."/"; - } - - // Flip PDF coordinate system so that the origin is in - // the top left rather than the bottom left - $canvas->transform(array( - 1, 0, - 0, -1, - 0, $h - )); - - $this->width = $w; - $this->height = $h; - - $this->canvas = $canvas; - } - - function out() - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - return $this->canvas->output(); - } - - public function save() - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->save(); - } - - public function restore() - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->restore(); - } - - public function scale($x, $y) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - - $this->transform($x, 0, 0, $y, 0, 0); - } - - public function rotate($angle) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - - $a = deg2rad($angle); - $cos_a = cos($a); - $sin_a = sin($a); - - $this->transform( - $cos_a, $sin_a, - -$sin_a, $cos_a, - 0, 0 - ); - } - - public function translate($x, $y) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - - $this->transform( - 1, 0, - 0, 1, - $x, $y - ); - } - - public function transform($a, $b, $c, $d, $e, $f) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - - $this->canvas->transform(array($a, $b, $c, $d, $e, $f)); - } - - public function beginPath() - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - // TODO: Implement beginPath() method. - } - - public function closePath() - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->closePath(); - } - - public function fillStroke(bool $close = false) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->fillStroke($close); - } - - public function clip() - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->clip(); - } - - public function fillText($text, $x, $y, $maxWidth = null) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->addText($x, $y, $this->style->fontSize, $text); - } - - public function strokeText($text, $x, $y, $maxWidth = null) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->addText($x, $y, $this->style->fontSize, $text); - } - - public function drawImage($image, $sx, $sy, $sw = null, $sh = null, $dx = null, $dy = null, $dw = null, $dh = null) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - - if (strpos($image, "data:") === 0) { - $parts = explode(',', $image, 2); - - $data = $parts[1]; - $base64 = false; - - $token = strtok($parts[0], ';'); - while ($token !== false) { - if ($token == 'base64') { - $base64 = true; - } - - $token = strtok(';'); - } - - if ($base64) { - $data = base64_decode($data); - } - } - else { - $data = file_get_contents($image); - } - - $image = tempnam(sys_get_temp_dir(), "svg"); - file_put_contents($image, $data); - - $img = $this->image($image, $sx, $sy, $sw, $sh, "normal"); - - - unlink($image); - } - - public static function getimagesize($filename) - { - static $cache = array(); - - if (isset($cache[$filename])) { - return $cache[$filename]; - } - - list($width, $height, $type) = getimagesize($filename); - - if ($width == null || $height == null) { - $data = file_get_contents($filename, null, null, 0, 26); - - if (substr($data, 0, 2) === "BM") { - $meta = unpack('vtype/Vfilesize/Vreserved/Voffset/Vheadersize/Vwidth/Vheight', $data); - $width = (int)$meta['width']; - $height = (int)$meta['height']; - $type = IMAGETYPE_BMP; - } - } - - return $cache[$filename] = array($width, $height, $type); - } - - function image($img, $x, $y, $w, $h, $resolution = "normal") - { - list($width, $height, $type) = $this->getimagesize($img); - - switch ($type) { - case IMAGETYPE_JPEG: - $this->canvas->addJpegFromFile($img, $x, $y - $h, $w, $h); - break; - - case IMAGETYPE_GIF: - case IMAGETYPE_BMP: - // @todo use cache for BMP and GIF - $img = $this->_convert_gif_bmp_to_png($img, $type); - - case IMAGETYPE_PNG: - $this->canvas->addPngFromFile($img, $x, $y - $h, $w, $h); - break; - - default: - } - } - - public function lineTo($x, $y) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->lineTo($x, $y); - } - - public function moveTo($x, $y) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->moveTo($x, $y); - } - - public function quadraticCurveTo($cpx, $cpy, $x, $y) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - - // FIXME not accurate - $this->canvas->quadTo($cpx, $cpy, $x, $y); - } - - public function bezierCurveTo($cp1x, $cp1y, $cp2x, $cp2y, $x, $y) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->curveTo($cp1x, $cp1y, $cp2x, $cp2y, $x, $y); - } - - public function arcTo($x1, $y1, $x2, $y2, $radius) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - } - - public function arc($x, $y, $radius, $startAngle, $endAngle, $anticlockwise = false) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->ellipse($x, $y, $radius, $radius, 0, 8, $startAngle, $endAngle, false, false, false, true); - } - - public function circle($x, $y, $radius) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->ellipse($x, $y, $radius, $radius, 0, 8, 0, 360, true, false, false, false); - } - - public function ellipse($x, $y, $radiusX, $radiusY, $rotation, $startAngle, $endAngle, $anticlockwise) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->ellipse($x, $y, $radiusX, $radiusY, 0, 8, 0, 360, false, false, false, false); - } - - public function fillRect($x, $y, $w, $h) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->rect($x, $y, $w, $h); - $this->fill(); - } - - public function rect($x, $y, $w, $h, $rx = 0, $ry = 0) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - - $canvas = $this->canvas; - - if ($rx <= 0.000001/* && $ry <= 0.000001*/) { - $canvas->rect($x, $y, $w, $h); - - return; - } - - $rx = min($rx, $w / 2); - $rx = min($rx, $h / 2); - - /* Define a path for a rectangle with corners rounded by a given radius. - * Start from the lower left corner and proceed counterclockwise. - */ - $this->moveTo($x + $rx, $y); - - /* Start of the arc segment in the lower right corner */ - $this->lineTo($x + $w - $rx, $y); - - /* Arc segment in the lower right corner */ - $this->arc($x + $w - $rx, $y + $rx, $rx, 270, 360); - - /* Start of the arc segment in the upper right corner */ - $this->lineTo($x + $w, $y + $h - $rx ); - - /* Arc segment in the upper right corner */ - $this->arc($x + $w - $rx, $y + $h - $rx, $rx, 0, 90); - - /* Start of the arc segment in the upper left corner */ - $this->lineTo($x + $rx, $y + $h); - - /* Arc segment in the upper left corner */ - $this->arc($x + $rx, $y + $h - $rx, $rx, 90, 180); - - /* Start of the arc segment in the lower left corner */ - $this->lineTo($x , $y + $rx); - - /* Arc segment in the lower left corner */ - $this->arc($x + $rx, $y + $rx, $rx, 180, 270); - } - - public function fill() - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->fill(); - } - - public function strokeRect($x, $y, $w, $h) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->rect($x, $y, $w, $h); - $this->stroke(); - } - - public function stroke(bool $close = false) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->stroke($close); - } - - public function endPath() - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->endPath(); - } - - public function measureText($text) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $style = $this->getStyle(); - $this->setFont($style->fontFamily, $style->fontStyle, $style->fontWeight); - - return $this->canvas->getTextWidth($this->getStyle()->fontSize, $text); - } - - public function getStyle() - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - return $this->style; - } - - public function setStyle(Style $style) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - - $this->style = $style; - $canvas = $this->canvas; - - if (is_array($style->stroke) && $stroke = $style->stroke) { - $canvas->setStrokeColor(array((float)$stroke[0]/255, (float)$stroke[1]/255, (float)$stroke[2]/255), true); - } - - if (is_array($style->fill) && $fill = $style->fill) { - $canvas->setColor(array((float)$fill[0]/255, (float)$fill[1]/255, (float)$fill[2]/255), true); - } - - if ($fillRule = strtolower($style->fillRule)) { - $canvas->setFillRule($fillRule); - } - - $opacity = $style->opacity; - if ($opacity !== null && $opacity < 1.0) { - $canvas->setLineTransparency("Normal", $opacity); - $canvas->currentLineTransparency = null; - - $canvas->setFillTransparency("Normal", $opacity); - $canvas->currentFillTransparency = null; - } - else { - $fillOpacity = $style->fillOpacity; - if ($fillOpacity !== null && $fillOpacity < 1.0) { - $canvas->setFillTransparency("Normal", $fillOpacity); - $canvas->currentFillTransparency = null; - } - - $strokeOpacity = $style->strokeOpacity; - if ($strokeOpacity !== null && $strokeOpacity < 1.0) { - $canvas->setLineTransparency("Normal", $strokeOpacity); - $canvas->currentLineTransparency = null; - } - } - - $dashArray = null; - if ($style->strokeDasharray) { - $dashArray = preg_split('/\s*,\s*/', $style->strokeDasharray); - } - - - $phase=0; - if ($style->strokeDashoffset) { - $phase = $style->strokeDashoffset; - } - - - $canvas->setLineStyle( - $style->strokeWidth, - $style->strokeLinecap, - $style->strokeLinejoin, - $dashArray, - $phase - ); - - $this->setFont($style->fontFamily, $style->fontStyle, $style->fontWeight); - } - - public function setFont($family, $style, $weight) - { - $map = [ - "serif" => "times", - "sans-serif" => "helvetica", - "fantasy" => "symbol", - "cursive" => "times", - "monospace" => "courier" - ]; - - $styleMap = [ - "courier" => [ - "" => "Courier", - "b" => "Courier-Bold", - "i" => "Courier-Oblique", - "bi" => "Courier-BoldOblique", - ], - "helvetica" => [ - "" => "Helvetica", - "b" => "Helvetica-Bold", - "i" => "Helvetica-Oblique", - "bi" => "Helvetica-BoldOblique", - ], - "symbol" => [ - "" => "Symbol" - ], - "times" => [ - "" => "Times-Roman", - "b" => "Times-Bold", - "i" => "Times-Italic", - "bi" => "Times-BoldItalic", - ], - ]; - - $family_lc = strtolower($family); - if (isset($map[$family_lc])) { - $family = $map[$family_lc]; - } - - if (isset($styleMap[$family])) { - $key = ""; - - $weight = strtolower($weight); - if ($weight === "bold" || $weight === "bolder" || (is_numeric($weight) && $weight >= 600)) { - $key .= "b"; - } - - $style = strtolower($style); - if ($style === "italic" || $style === "oblique") { - $key .= "i"; - } - - if (isset($styleMap[$family][$key])) { - $family = $styleMap[$family][$key]; - } - } - - $this->canvas->selectFont("$family.afm"); - } -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Surface/SurfaceInterface.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Surface/SurfaceInterface.php deleted file mode 100644 index 25b30014..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Surface/SurfaceInterface.php +++ /dev/null @@ -1,90 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg\Surface; - -use Svg\Style; - -/** - * Interface Surface, like CanvasRenderingContext2D - * - * @package Svg - */ -interface SurfaceInterface -{ - public function save(); - - public function restore(); - - // transformations (default transform is the identity matrix) - public function scale($x, $y); - - public function rotate($angle); - - public function translate($x, $y); - - public function transform($a, $b, $c, $d, $e, $f); - - // path ends - public function beginPath(); - - public function closePath(); - - public function fill(); - - public function stroke(bool $close = false); - - public function endPath(); - - public function fillStroke(bool $close = false); - - public function clip(); - - // text (see also the CanvasDrawingStyles interface) - public function fillText($text, $x, $y, $maxWidth = null); - - public function strokeText($text, $x, $y, $maxWidth = null); - - public function measureText($text); - - // drawing images - public function drawImage($image, $sx, $sy, $sw = null, $sh = null, $dx = null, $dy = null, $dw = null, $dh = null); - - // paths - public function lineTo($x, $y); - - public function moveTo($x, $y); - - public function quadraticCurveTo($cpx, $cpy, $x, $y); - - public function bezierCurveTo($cp1x, $cp1y, $cp2x, $cp2y, $x, $y); - - public function arcTo($x1, $y1, $x2, $y2, $radius); - - public function circle($x, $y, $radius); - - public function arc($x, $y, $radius, $startAngle, $endAngle, $anticlockwise = false); - - public function ellipse($x, $y, $radiusX, $radiusY, $rotation, $startAngle, $endAngle, $anticlockwise); - - // Rectangle - public function rect($x, $y, $w, $h, $rx = 0, $ry = 0); - - public function fillRect($x, $y, $w, $h); - - public function strokeRect($x, $y, $w, $h); - - public function setStyle(Style $style); - - /** - * @return Style - */ - public function getStyle(); - - public function setFont($family, $style, $weight); -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Surface/SurfacePDFLib.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Surface/SurfacePDFLib.php deleted file mode 100644 index 3d25aef8..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Surface/SurfacePDFLib.php +++ /dev/null @@ -1,430 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg\Surface; - -use Svg\Style; -use Svg\Document; - -class SurfacePDFLib implements SurfaceInterface -{ - const DEBUG = false; - - private $canvas; - - private $width; - private $height; - - /** @var Style */ - private $style; - - public function __construct(Document $doc, $canvas = null) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - - $dimensions = $doc->getDimensions(); - $w = $dimensions["width"]; - $h = $dimensions["height"]; - - if (!$canvas) { - $canvas = new \PDFlib(); - - /* all strings are expected as utf8 */ - $canvas->set_option("stringformat=utf8"); - $canvas->set_option("errorpolicy=return"); - - /* open new PDF file; insert a file name to create the PDF on disk */ - if ($canvas->begin_document("", "") == 0) { - die("Error: " . $canvas->get_errmsg()); - } - $canvas->set_info("Creator", "PDFlib starter sample"); - $canvas->set_info("Title", "starter_graphics"); - - $canvas->begin_page_ext($w, $h, ""); - } - - // Flip PDF coordinate system so that the origin is in - // the top left rather than the bottom left - $canvas->setmatrix( - 1, 0, - 0, -1, - 0, $h - ); - - $this->width = $w; - $this->height = $h; - - $this->canvas = $canvas; - } - - function out() - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - - $this->canvas->end_page_ext(""); - $this->canvas->end_document(""); - - return $this->canvas->get_buffer(); - } - - public function save() - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->save(); - } - - public function restore() - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->restore(); - } - - public function scale($x, $y) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->scale($x, $y); - } - - public function rotate($angle) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->rotate($angle); - } - - public function translate($x, $y) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->translate($x, $y); - } - - public function transform($a, $b, $c, $d, $e, $f) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->concat($a, $b, $c, $d, $e, $f); - } - - public function beginPath() - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - // TODO: Implement beginPath() method. - } - - public function closePath() - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->closepath(); - } - - public function fillStroke(bool $close = false) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - if ($close) { - $this->canvas->closepath_fill_stroke(); - } else { - $this->canvas->fill_stroke(); - } - } - - public function clip() - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->clip(); - } - - public function fillText($text, $x, $y, $maxWidth = null) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->set_text_pos($x, $y); - $this->canvas->show($text); - } - - public function strokeText($text, $x, $y, $maxWidth = null) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - // TODO: Implement drawImage() method. - } - - public function drawImage($image, $sx, $sy, $sw = null, $sh = null, $dx = null, $dy = null, $dw = null, $dh = null) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - - if (strpos($image, "data:") === 0) { - $data = substr($image, strpos($image, ";") + 1); - if (strpos($data, "base64") === 0) { - $data = base64_decode(substr($data, 7)); - } - } - else { - $data = file_get_contents($image); - } - - $image = tempnam(sys_get_temp_dir(), "svg"); - file_put_contents($image, $data); - - $img = $this->canvas->load_image("auto", $image, ""); - - $sy = $sy - $sh; - $this->canvas->fit_image($img, $sx, $sy, 'boxsize={' . "$sw $sh" . '} fitmethod=entire'); - - unlink($image); - } - - public function lineTo($x, $y) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->lineto($x, $y); - } - - public function moveTo($x, $y) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->moveto($x, $y); - } - - public function quadraticCurveTo($cpx, $cpy, $x, $y) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - - // FIXME not accurate - $this->canvas->curveTo($cpx, $cpy, $cpx, $cpy, $x, $y); - } - - public function bezierCurveTo($cp1x, $cp1y, $cp2x, $cp2y, $x, $y) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->curveto($cp1x, $cp1y, $cp2x, $cp2y, $x, $y); - } - - public function arcTo($x1, $y1, $x2, $y2, $radius) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - } - - public function arc($x, $y, $radius, $startAngle, $endAngle, $anticlockwise = false) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->arc($x, $y, $radius, $startAngle, $endAngle); - } - - public function circle($x, $y, $radius) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->circle($x, $y, $radius); - } - - public function ellipse($x, $y, $radiusX, $radiusY, $rotation, $startAngle, $endAngle, $anticlockwise) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->ellipse($x, $y, $radiusX, $radiusY); - } - - public function fillRect($x, $y, $w, $h) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->rect($x, $y, $w, $h); - $this->fill(); - } - - public function rect($x, $y, $w, $h, $rx = 0, $ry = 0) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - - $canvas = $this->canvas; - - if ($rx <= 0.000001/* && $ry <= 0.000001*/) { - $canvas->rect($x, $y, $w, $h); - - return; - } - - /* Define a path for a rectangle with corners rounded by a given radius. - * Start from the lower left corner and proceed counterclockwise. - */ - $canvas->moveto($x + $rx, $y); - - /* Start of the arc segment in the lower right corner */ - $canvas->lineto($x + $w - $rx, $y); - - /* Arc segment in the lower right corner */ - $canvas->arc($x + $w - $rx, $y + $rx, $rx, 270, 360); - - /* Start of the arc segment in the upper right corner */ - $canvas->lineto($x + $w, $y + $h - $rx ); - - /* Arc segment in the upper right corner */ - $canvas->arc($x + $w - $rx, $y + $h - $rx, $rx, 0, 90); - - /* Start of the arc segment in the upper left corner */ - $canvas->lineto($x + $rx, $y + $h); - - /* Arc segment in the upper left corner */ - $canvas->arc($x + $rx, $y + $h - $rx, $rx, 90, 180); - - /* Start of the arc segment in the lower left corner */ - $canvas->lineto($x , $y + $rx); - - /* Arc segment in the lower left corner */ - $canvas->arc($x + $rx, $y + $rx, $rx, 180, 270); - } - - public function fill() - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->fill(); - } - - public function strokeRect($x, $y, $w, $h) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->rect($x, $y, $w, $h); - $this->stroke(); - } - - public function stroke(bool $close = false) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - if ($close) { - $this->canvas->closepath_stroke(); - } else { - $this->canvas->stroke(); - } - } - - public function endPath() - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $this->canvas->endPath(); - } - - public function measureText($text) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - $style = $this->getStyle(); - $font = $this->getFont($style->fontFamily, $style->fontStyle); - - return $this->canvas->stringwidth($text, $font, $this->getStyle()->fontSize); - } - - public function getStyle() - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - return $this->style; - } - - public function setStyle(Style $style) - { - if (self::DEBUG) echo __FUNCTION__ . "\n"; - - $this->style = $style; - $canvas = $this->canvas; - - if (is_array($style->stroke) && $stroke = $style->stroke) { - $canvas->setcolor( - "stroke", - "rgb", - $stroke[0] / 255, - $stroke[1] / 255, - $stroke[2] / 255, - null - ); - } - - if (is_array($style->fill) && $fill = $style->fill) { - $canvas->setcolor( - "fill", - "rgb", - $fill[0] / 255, - $fill[1] / 255, - $fill[2] / 255, - null - ); - } - - if ($fillRule = strtolower($style->fillRule)) { - $map = array( - "nonzero" => "winding", - "evenodd" => "evenodd", - ); - - if (isset($map[$fillRule])) { - $fillRule = $map[$fillRule]; - - $canvas->set_parameter("fillrule", $fillRule); - } - } - - $opts = array(); - if ($style->strokeWidth > 0.000001) { - $opts[] = "linewidth=$style->strokeWidth"; - } - - if (in_array($style->strokeLinecap, array("butt", "round", "projecting"))) { - $opts[] = "linecap=$style->strokeLinecap"; - } - - if (in_array($style->strokeLinejoin, array("miter", "round", "bevel"))) { - $opts[] = "linejoin=$style->strokeLinejoin"; - } - - $canvas->set_graphics_option(implode(" ", $opts)); - - $opts = array(); - $opacity = $style->opacity; - if ($opacity !== null && $opacity < 1.0) { - $opts[] = "opacityfill=$opacity"; - $opts[] = "opacitystroke=$opacity"; - } - else { - $fillOpacity = $style->fillOpacity; - if ($fillOpacity !== null && $fillOpacity < 1.0) { - $opts[] = "opacityfill=$fillOpacity"; - } - - $strokeOpacity = $style->strokeOpacity; - if ($strokeOpacity !== null && $strokeOpacity < 1.0) { - $opts[] = "opacitystroke=$strokeOpacity"; - } - } - - if (count($opts)) { - $gs = $canvas->create_gstate(implode(" ", $opts)); - $canvas->set_gstate($gs); - } - - $font = $this->getFont($style->fontFamily, $style->fontStyle); - if ($font) { - $canvas->setfont($font, $style->fontSize); - } - } - - private function getFont($family, $style) - { - $map = array( - "serif" => "Times", - "sans-serif" => "Helvetica", - "fantasy" => "Symbol", - "cursive" => "Times", - "monospace" => "Courier", - - "arial" => "Helvetica", - "verdana" => "Helvetica", - ); - - $family = strtolower($family); - if (isset($map[$family])) { - $family = $map[$family]; - } - - return $this->canvas->load_font($family, "unicode", "fontstyle=$style"); - } - - public function setFont($family, $style, $weight) - { - // TODO: Implement setFont() method. - } -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/AbstractTag.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/AbstractTag.php deleted file mode 100644 index c74e0eb8..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/AbstractTag.php +++ /dev/null @@ -1,327 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg\Tag; - -use Svg\CssLength; -use Svg\Document; -use Svg\Style; - -abstract class AbstractTag -{ - /** @var Document */ - protected $document; - - public $tagName; - - /** @var Style */ - protected $style; - - protected $attributes = array(); - - protected $hasShape = true; - - /** @var self[] */ - protected $children = array(); - - public function __construct(Document $document, $tagName) - { - $this->document = $document; - $this->tagName = $tagName; - } - - public function getDocument(){ - return $this->document; - } - - /** - * @return Group|null - */ - public function getParentGroup() { - $stack = $this->getDocument()->getStack(); - for ($i = count($stack)-2; $i >= 0; $i--) { - $tag = $stack[$i]; - - if ($tag instanceof Group || $tag instanceof Document) { - return $tag; - } - } - - return null; - } - - public function handle($attributes) - { - $this->attributes = $attributes; - - if (!$this->getDocument()->inDefs || $this instanceof StyleTag) { - $this->before($attributes); - $this->start($attributes); - } - } - - public function handleEnd() - { - if (!$this->getDocument()->inDefs || $this instanceof StyleTag) { - $this->end(); - $this->after(); - } - } - - protected function before($attributes) - { - } - - protected function start($attributes) - { - } - - protected function end() - { - } - - protected function after() - { - } - - public function getAttributes() - { - return $this->attributes; - } - - protected function setStyle(Style $style) - { - $this->style = $style; - - if ($style->display === "none") { - $this->hasShape = false; - } - } - - /** - * @return Style - */ - public function getStyle() - { - return $this->style; - } - - /** - * Make a style object from the tag and its attributes - * - * @param array $attributes - * - * @return Style - */ - protected function makeStyle($attributes) { - $style = new Style($this->document); - $style->inherit($this); - $style->fromStyleSheets($this, $attributes); - $style->fromAttributes($attributes); - - return $style; - } - - protected function applyTransform($attributes) - { - - if (isset($attributes["transform"])) { - $surface = $this->document->getSurface(); - - $transform = $attributes["transform"]; - - $matches = array(); - preg_match_all( - '/(matrix|translate|scale|rotate|skew|skewX|skewY)\((.*?)\)/is', - $transform, - $matches, - PREG_SET_ORDER - ); - - $transformations = array(); - foreach ($matches as $match) { - $arguments = preg_split('/[ ,]+/', $match[2]); - array_unshift($arguments, $match[1]); - $transformations[] = $arguments; - } - - foreach ($transformations as $t) { - switch ($t[0]) { - case "matrix": - $surface->transform($t[1], $t[2], $t[3], $t[4], $t[5], $t[6]); - break; - - case "translate": - $surface->translate($t[1], isset($t[2]) ? $t[2] : 0); - break; - - case "scale": - $surface->scale($t[1], isset($t[2]) ? $t[2] : $t[1]); - break; - - case "rotate": - if (isset($t[2])) { - $t[3] = isset($t[3]) ? $t[3] : 0; - $surface->translate($t[2], $t[3]); - $surface->rotate($t[1]); - $surface->translate(-$t[2], -$t[3]); - } else { - $surface->rotate($t[1]); - } - break; - - case "skewX": - $tan_x = tan(deg2rad($t[1])); - $surface->transform(1, 0, $tan_x, 1, 0, 0); - break; - - case "skewY": - $tan_y = tan(deg2rad($t[1])); - $surface->transform(1, $tan_y, 0, 1, 0, 0); - break; - } - } - } - } - - /** - * Apply a viewBox transform to the element - * - * @param array $attributes - */ - protected function applyViewbox($attributes) { - if (!isset($attributes["viewbox"])) { - return; - } - - $surface = $this->document->getSurface(); - $viewBox = preg_split('/[\s,]+/is', trim($attributes['viewbox'])); - if (count($viewBox) != 4) { - return; - } - - // Computing the equivalent transform of an SVG viewport - // https://svgwg.org/svg2-draft/coords.html#ComputingAViewportsTransform - - // 1. Let vb-x, vb-y, vb-width, vb-height be the min-x, min-y, width and height values of the viewBox attribute respectively. - [$vbX, $vbY, $vbWidth, $vbHeight] = $viewBox; - - if ($vbWidth < 0 || $vbHeight < 0) { - return; - } - - // correct solution is to not render, for now scaling to 0 below - //if ($vbWidth == 0 || $vbHeight == 0) { - //} - - // 2. Let e-x, e-y, e-width, e-height be the position and size of the element respectively. - $eX = $attributes["x"] ?? 0; - $eY = $attributes["y"] ?? 0; - $eWidth = $attributes["width"] ?? $this->document->getWidth(); - $eHeight = $attributes["height"] ?? $this->document->getHeight(); - - // 3. Let align be the align value of preserveAspectRatio, or 'xMidYMid' if preserveAspectRatio is not defined. - $preserveAspectRatio = explode(" ", $attributes["preserveAspectRatio"] ?? "xMidYMid meet"); - $align = $preserveAspectRatio[0]; - - // 4. Let meetOrSlice be the meetOrSlice value of preserveAspectRatio, or 'meet' if preserveAspectRatio is not defined or if meetOrSlice is missing from this value. - $meetOrSlice = $meetOrSlice ?? "meet"; - - // 5. Initialize scale-x to e-width/vb-width. - $scaleX = $vbWidth == 0 ? 0 : ($eWidth / $vbWidth); - - // 6. Initialize scale-y to e-height/vb-height. - $scaleY = $vbHeight == 0 ? 0 : ($eHeight / $vbHeight); - - // 7. If align is not 'none' and meetOrSlice is 'meet', set the larger of scale-x and scale-y to the smaller. - if ($align !== "none" && $meetOrSlice === "meet") { - $scaleX = min($scaleX, $scaleY); - $scaleY = min($scaleX, $scaleY); - } - - // 8. Otherwise, if align is not 'none' and meetOrSlice is 'slice', set the smaller of scale-x and scale-y to the larger. - elseif ($align !== "none" && $meetOrSlice === "slice") { - $scaleX = max($scaleX, $scaleY); - $scaleY = max($scaleX, $scaleY); - } - - // 9. Initialize translate-x to e-x - (vb-x * scale-x). - $translateX = $eX - ($vbX * $scaleX); - - // 10. Initialize translate-y to e-y - (vb-y * scale-y) - $translateY = $eY - ($vbY * $scaleY); - - // 11. If align contains 'xMid', add (e-width - vb-width * scale-x) / 2 to translate-x. - if (strpos($align, "xMid") !== false) { - $translateX += ($eWidth - $vbWidth * $scaleX) / 2; - } - - // 12. If align contains 'xMax', add (e-width - vb-width * scale-x) to translate-x. - if (strpos($align, "xMax") !== false) { - $translateX += ($eWidth - $vbWidth * $scaleX); - } - - // 13. If align contains 'yMid', add (e-height - vb-height * scale-y) / 2 to translate-y. - if (strpos($align, "yMid") !== false) { - $translateX += ($eHeight - $vbHeight * $scaleY) / 2; - } - - // 14. If align contains 'yMax', add (e-height - vb-height * scale-y) to translate-y. - if (strpos($align, "yMid") !== false) { - $translateX += ($eHeight - $vbHeight * $scaleY); - } - - $surface->translate($translateX, $translateY); - $surface->scale($scaleX, $scaleY); - } - - /** - * Convert the given size for the context of this current tag. - * Takes a pixel-based reference, which is usually specific to the context of the size, - * but the actual reference size will be decided based upon the unit used. - * - * @param string $size - * @param float $pxReference - * - * @return float - */ - protected function convertSize(string $size, float $pxReference): float - { - $length = new CssLength($size); - $reference = $pxReference; - $defaultFontSize = 12; - - switch ($length->getUnit()) { - case "em": - $reference = $this->style->fontSize ?? $defaultFontSize; - break; - case "rem": - $reference = $this->document->style->fontSize ?? $defaultFontSize; - break; - case "ex": - case "ch": - $emRef = $this->style->fontSize ?? $defaultFontSize; - $reference = $emRef * 0.5; - break; - case "vw": - $reference = $this->getDocument()->getWidth(); - break; - case "vh": - $reference = $this->getDocument()->getHeight(); - break; - case "vmin": - $reference = min($this->getDocument()->getHeight(), $this->getDocument()->getWidth()); - break; - case "vmax": - $reference = max($this->getDocument()->getHeight(), $this->getDocument()->getWidth()); - break; - } - - return (new CssLength($size))->toPixels($reference); - } -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Anchor.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Anchor.php deleted file mode 100644 index 6979495c..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Anchor.php +++ /dev/null @@ -1,14 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg\Tag; - -class Anchor extends Group -{ - -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Circle.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Circle.php deleted file mode 100644 index e504ffe3..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Circle.php +++ /dev/null @@ -1,36 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg\Tag; - -use Svg\Style; - -class Circle extends Shape -{ - protected $cx = 0; - protected $cy = 0; - protected $r; - - public function start($attributes) - { - if (isset($attributes['cx'])) { - $width = $this->document->getWidth(); - $this->cx = $this->convertSize($attributes['cx'], $width); - } - if (isset($attributes['cy'])) { - $height = $this->document->getHeight(); - $this->cy = $this->convertSize($attributes['cy'], $height); - } - if (isset($attributes['r'])) { - $diagonal = $this->document->getDiagonal(); - $this->r = $this->convertSize($attributes['r'], $diagonal); - } - - $this->document->getSurface()->circle($this->cx, $this->cy, $this->r); - } -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/ClipPath.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/ClipPath.php deleted file mode 100644 index 46722f93..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/ClipPath.php +++ /dev/null @@ -1,33 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg\Tag; - -use Svg\Style; - -class ClipPath extends AbstractTag -{ - protected function before($attributes) - { - $surface = $this->document->getSurface(); - - $surface->save(); - - $style = $this->makeStyle($attributes); - - $this->setStyle($style); - $surface->setStyle($style); - - $this->applyTransform($attributes); - } - - protected function after() - { - $this->document->getSurface()->restore(); - } -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Ellipse.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Ellipse.php deleted file mode 100644 index 42891e03..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Ellipse.php +++ /dev/null @@ -1,42 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg\Tag; - -use Svg\Style; - -class Ellipse extends Shape -{ - protected $cx = 0; - protected $cy = 0; - protected $rx = 0; - protected $ry = 0; - - public function start($attributes) - { - parent::start($attributes); - - $width = $this->document->getWidth(); - $height = $this->document->getHeight(); - - if (isset($attributes['cx'])) { - $this->cx = $this->convertSize($attributes['cx'], $width); - } - if (isset($attributes['cy'])) { - $this->cy = $this->convertSize($attributes['cy'], $height); - } - if (isset($attributes['rx'])) { - $this->rx = $this->convertSize($attributes['rx'], $width); - } - if (isset($attributes['ry'])) { - $this->ry = $this->convertSize($attributes['ry'], $height); - } - - $this->document->getSurface()->ellipse($this->cx, $this->cy, $this->rx, $this->ry, 0, 0, 360, false); - } -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Group.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Group.php deleted file mode 100644 index bacb3851..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Group.php +++ /dev/null @@ -1,33 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg\Tag; - -use Svg\Style; - -class Group extends AbstractTag -{ - protected function before($attributes) - { - $surface = $this->document->getSurface(); - - $surface->save(); - - $style = $this->makeStyle($attributes); - - $this->setStyle($style); - $surface->setStyle($style); - - $this->applyTransform($attributes); - } - - protected function after() - { - $this->document->getSurface()->restore(); - } -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Image.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Image.php deleted file mode 100644 index de397c49..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Image.php +++ /dev/null @@ -1,76 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg\Tag; - -use Svg\Style; - -class Image extends AbstractTag -{ - protected $x = 0; - protected $y = 0; - protected $width = 0; - protected $height = 0; - protected $href = null; - - protected function before($attributes) - { - parent::before($attributes); - - $surface = $this->document->getSurface(); - $surface->save(); - - $this->applyTransform($attributes); - } - - public function start($attributes) - { - $height = $this->document->getHeight(); - $width = $this->document->getWidth(); - $this->y = $height; - - if (isset($attributes['x'])) { - $this->x = $this->convertSize($attributes['x'], $width); - } - if (isset($attributes['y'])) { - $this->y = $height - $this->convertSize($attributes['y'], $height); - } - - if (isset($attributes['width'])) { - $this->width = $this->convertSize($attributes['width'], $width); - } - if (isset($attributes['height'])) { - $this->height = $this->convertSize($attributes['height'], $height); - } - - if (isset($attributes['xlink:href'])) { - $this->href = $attributes['xlink:href']; - } - - if (isset($attributes['href'])) { - $this->href = $attributes['href']; - } - - $this->document->getSurface()->transform(1, 0, 0, -1, 0, $height); - - $scheme = \strtolower(parse_url($this->href, PHP_URL_SCHEME) ?: ""); - if ( - $scheme === "phar" || \strtolower(\substr($this->href, 0, 7)) === "phar://" - || ($this->document->allowExternalReferences === false && $scheme !== "data") - ) { - return; - } - - $this->document->getSurface()->drawImage($this->href, $this->x, $this->y, $this->width, $this->height); - } - - protected function after() - { - $this->document->getSurface()->restore(); - } -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Line.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Line.php deleted file mode 100644 index fb3b64c4..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Line.php +++ /dev/null @@ -1,43 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg\Tag; - -use Svg\Style; - -class Line extends Shape -{ - protected $x1 = 0; - protected $y1 = 0; - - protected $x2 = 0; - protected $y2 = 0; - - public function start($attributes) - { - $height = $this->document->getHeight(); - $width = $this->document->getWidth(); - - if (isset($attributes['x1'])) { - $this->x1 = $this->convertSize($attributes['x1'], $width); - } - if (isset($attributes['y1'])) { - $this->y1 = $this->convertSize($attributes['y1'], $height); - } - if (isset($attributes['x2'])) { - $this->x2 = $this->convertSize($attributes['x2'], $width); - } - if (isset($attributes['y2'])) { - $this->y2 = $this->convertSize($attributes['y2'], $height); - } - - $surface = $this->document->getSurface(); - $surface->moveTo($this->x1, $this->y1); - $surface->lineTo($this->x2, $this->y2); - } -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/LinearGradient.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/LinearGradient.php deleted file mode 100644 index c5e63979..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/LinearGradient.php +++ /dev/null @@ -1,83 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg\Tag; - - -use Svg\Gradient; -use Svg\Style; - -class LinearGradient extends AbstractTag -{ - protected $x1; - protected $y1; - protected $x2; - protected $y2; - - /** @var Gradient\Stop[] */ - protected $stops = array(); - - public function start($attributes) - { - parent::start($attributes); - - if (isset($attributes['x1'])) { - $this->x1 = $attributes['x1']; - } - if (isset($attributes['y1'])) { - $this->y1 = $attributes['y1']; - } - if (isset($attributes['x2'])) { - $this->x2 = $attributes['x2']; - } - if (isset($attributes['y2'])) { - $this->y2 = $attributes['y2']; - } - } - - public function getStops() { - if (empty($this->stops)) { - foreach ($this->children as $_child) { - if ($_child->tagName != "stop") { - continue; - } - - $_stop = new Gradient\Stop(); - $_attributes = $_child->attributes; - - // Style - if (isset($_attributes["style"])) { - $_style = Style::parseCssStyle($_attributes["style"]); - - if (isset($_style["stop-color"])) { - $_stop->color = Style::parseColor($_style["stop-color"]); - } - - if (isset($_style["stop-opacity"])) { - $_stop->opacity = max(0, min(1.0, $_style["stop-opacity"])); - } - } - - // Attributes - if (isset($_attributes["offset"])) { - $_stop->offset = $_attributes["offset"]; - } - if (isset($_attributes["stop-color"])) { - $_stop->color = Style::parseColor($_attributes["stop-color"]); - } - if (isset($_attributes["stop-opacity"])) { - $_stop->opacity = max(0, min(1.0, $_attributes["stop-opacity"])); - } - - $this->stops[] = $_stop; - } - } - - return $this->stops; - } -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Path.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Path.php deleted file mode 100644 index a2a4c5bf..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Path.php +++ /dev/null @@ -1,581 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg\Tag; - -use Svg\Surface\SurfaceInterface; - -class Path extends Shape -{ - // kindly borrowed from fabric.util.parsePath. - /* @see https://github.com/fabricjs/fabric.js/blob/master/src/util/path.js#L664 */ - const NUMBER_PATTERN = '([-+]?(?:\d*\.\d+|\d+\.?)(?:[eE][-+]?\d+)?)\s*'; - const COMMA_PATTERN = '(?:\s+,?\s*|,\s*)?'; - const FLAG_PATTERN = '([01])'; - const ARC_REGEXP = '/' - . self::NUMBER_PATTERN - . self::COMMA_PATTERN - . self::NUMBER_PATTERN - . self::COMMA_PATTERN - . self::NUMBER_PATTERN - . self::COMMA_PATTERN - . self::FLAG_PATTERN - . self::COMMA_PATTERN - . self::FLAG_PATTERN - . self::COMMA_PATTERN - . self::NUMBER_PATTERN - . self::COMMA_PATTERN - . self::NUMBER_PATTERN - . '/'; - - static $commandLengths = array( - 'm' => 2, - 'l' => 2, - 'h' => 1, - 'v' => 1, - 'c' => 6, - 's' => 4, - 'q' => 4, - 't' => 2, - 'a' => 7, - ); - - static $repeatedCommands = array( - 'm' => 'l', - 'M' => 'L', - ); - - public static function parse(string $commandSequence): array - { - $commands = array(); - preg_match_all('/([MZLHVCSQTAmzlhvcsqta])([eE ,\-.\d]+)*/', $commandSequence, $commands, PREG_SET_ORDER); - - $path = array(); - foreach ($commands as $c) { - if (count($c) == 3) { - $commandLower = strtolower($c[1]); - - // arcs have special flags that apparently don't require spaces. - if ($commandLower === 'a' && preg_match_all(static::ARC_REGEXP, $c[2], $matches, PREG_PATTERN_ORDER)) { - $numberOfMatches = count($matches[0]); - for ($k = 0; $k < $numberOfMatches; ++$k) { - $path[] = [ - $c[1], - $matches[1][$k], - $matches[2][$k], - $matches[3][$k], - $matches[4][$k], - $matches[5][$k], - $matches[6][$k], - $matches[7][$k], - ]; - } - continue; - } - - $arguments = array(); - preg_match_all('/([-+]?((\d+\.\d+)|((\d+)|(\.\d+)))(?:e[-+]?\d+)?)/i', $c[2], $arguments, PREG_PATTERN_ORDER); - $item = $arguments[0]; - - if ( - isset(self::$commandLengths[$commandLower]) && - ($commandLength = self::$commandLengths[$commandLower]) && - count($item) > $commandLength - ) { - $repeatedCommand = isset(self::$repeatedCommands[$c[1]]) ? self::$repeatedCommands[$c[1]] : $c[1]; - $command = $c[1]; - - for ($k = 0, $klen = count($item); $k < $klen; $k += $commandLength) { - $_item = array_slice($item, $k, $k + $commandLength); - array_unshift($_item, $command); - $path[] = $_item; - - $command = $repeatedCommand; - } - } else { - array_unshift($item, $c[1]); - $path[] = $item; - } - - } else { - $item = array($c[1]); - - $path[] = $item; - } - } - - return $path; - } - - public function start($attributes) - { - if (!isset($attributes['d'])) { - $this->hasShape = false; - - return; - } - - $path = static::parse($attributes['d']); - $surface = $this->document->getSurface(); - - // From https://github.com/kangax/fabric.js/blob/master/src/shapes/path.class.js - $current = null; // current instruction - $previous = null; - $subpathStartX = 0; - $subpathStartY = 0; - $x = 0; // current x - $y = 0; // current y - $controlX = 0; // current control point x - $controlY = 0; // current control point y - $tempX = null; - $tempY = null; - $tempControlX = null; - $tempControlY = null; - $l = 0; //-((this.width / 2) + $this.pathOffset.x), - $t = 0; //-((this.height / 2) + $this.pathOffset.y), - - foreach ($path as $current) { - switch ($current[0]) { // first letter - case 'l': // lineto, relative - $x += $current[1]; - $y += $current[2]; - $surface->lineTo($x + $l, $y + $t); - break; - - case 'L': // lineto, absolute - $x = $current[1]; - $y = $current[2]; - $surface->lineTo($x + $l, $y + $t); - break; - - case 'h': // horizontal lineto, relative - $x += $current[1]; - $surface->lineTo($x + $l, $y + $t); - break; - - case 'H': // horizontal lineto, absolute - $x = $current[1]; - $surface->lineTo($x + $l, $y + $t); - break; - - case 'v': // vertical lineto, relative - $y += $current[1]; - $surface->lineTo($x + $l, $y + $t); - break; - - case 'V': // verical lineto, absolute - $y = $current[1]; - $surface->lineTo($x + $l, $y + $t); - break; - - case 'm': // moveTo, relative - $x += $current[1]; - $y += $current[2]; - $subpathStartX = $x; - $subpathStartY = $y; - $surface->moveTo($x + $l, $y + $t); - break; - - case 'M': // moveTo, absolute - $x = $current[1]; - $y = $current[2]; - $subpathStartX = $x; - $subpathStartY = $y; - $surface->moveTo($x + $l, $y + $t); - break; - - case 'c': // bezierCurveTo, relative - $tempX = $x + $current[5]; - $tempY = $y + $current[6]; - $controlX = $x + $current[3]; - $controlY = $y + $current[4]; - $surface->bezierCurveTo( - $x + $current[1] + $l, // x1 - $y + $current[2] + $t, // y1 - $controlX + $l, // x2 - $controlY + $t, // y2 - $tempX + $l, - $tempY + $t - ); - $x = $tempX; - $y = $tempY; - break; - - case 'C': // bezierCurveTo, absolute - $x = $current[5]; - $y = $current[6]; - $controlX = $current[3]; - $controlY = $current[4]; - $surface->bezierCurveTo( - $current[1] + $l, - $current[2] + $t, - $controlX + $l, - $controlY + $t, - $x + $l, - $y + $t - ); - break; - - case 's': // shorthand cubic bezierCurveTo, relative - - // transform to absolute x,y - $tempX = $x + $current[3]; - $tempY = $y + $current[4]; - - if (!preg_match('/[CcSs]/', $previous[0])) { - // If there is no previous command or if the previous command was not a C, c, S, or s, - // the control point is coincident with the current point - $controlX = $x; - $controlY = $y; - } else { - // calculate reflection of previous control points - $controlX = 2 * $x - $controlX; - $controlY = 2 * $y - $controlY; - } - - $surface->bezierCurveTo( - $controlX + $l, - $controlY + $t, - $x + $current[1] + $l, - $y + $current[2] + $t, - $tempX + $l, - $tempY + $t - ); - // set control point to 2nd one of this command - // "... the first control point is assumed to be - // the reflection of the second control point on - // the previous command relative to the current point." - $controlX = $x + $current[1]; - $controlY = $y + $current[2]; - - $x = $tempX; - $y = $tempY; - break; - - case 'S': // shorthand cubic bezierCurveTo, absolute - $tempX = $current[3]; - $tempY = $current[4]; - - if (!preg_match('/[CcSs]/', $previous[0])) { - // If there is no previous command or if the previous command was not a C, c, S, or s, - // the control point is coincident with the current point - $controlX = $x; - $controlY = $y; - } else { - // calculate reflection of previous control points - $controlX = 2 * $x - $controlX; - $controlY = 2 * $y - $controlY; - } - - $surface->bezierCurveTo( - $controlX + $l, - $controlY + $t, - $current[1] + $l, - $current[2] + $t, - $tempX + $l, - $tempY + $t - ); - $x = $tempX; - $y = $tempY; - - // set control point to 2nd one of this command - // "... the first control point is assumed to be - // the reflection of the second control point on - // the previous command relative to the current point." - $controlX = $current[1]; - $controlY = $current[2]; - - break; - - case 'q': // quadraticCurveTo, relative - // transform to absolute x,y - $tempX = $x + $current[3]; - $tempY = $y + $current[4]; - - $controlX = $x + $current[1]; - $controlY = $y + $current[2]; - - $surface->quadraticCurveTo( - $controlX + $l, - $controlY + $t, - $tempX + $l, - $tempY + $t - ); - $x = $tempX; - $y = $tempY; - break; - - case 'Q': // quadraticCurveTo, absolute - $tempX = $current[3]; - $tempY = $current[4]; - - $surface->quadraticCurveTo( - $current[1] + $l, - $current[2] + $t, - $tempX + $l, - $tempY + $t - ); - $x = $tempX; - $y = $tempY; - $controlX = $current[1]; - $controlY = $current[2]; - break; - - case 't': // shorthand quadraticCurveTo, relative - - // transform to absolute x,y - $tempX = $x + $current[1]; - $tempY = $y + $current[2]; - - // calculate reflection of previous control points - if (preg_match('/[QqT]/', $previous[0])) { - $controlX = 2 * $x - $controlX; - $controlY = 2 * $y - $controlY; - } elseif ($previous[0] === 't') { - $controlX = 2 * $x - $tempControlX; - $controlY = 2 * $y - $tempControlY; - } else { - $controlX = $x; - $controlY = $y; - } - - $tempControlX = $controlX; - $tempControlY = $controlY; - - $surface->quadraticCurveTo( - $controlX + $l, - $controlY + $t, - $tempX + $l, - $tempY + $t - ); - $x = $tempX; - $y = $tempY; - break; - - case 'T': - $tempX = $current[1]; - $tempY = $current[2]; - - // calculate reflection of previous control points - if (preg_match('/[QqTt]/', $previous[0])) { - $controlX = 2 * $x - $controlX; - $controlY = 2 * $y - $controlY; - } else { - $controlX = $x; - $controlY = $y; - } - - $surface->quadraticCurveTo( - $controlX + $l, - $controlY + $t, - $tempX + $l, - $tempY + $t - ); - $x = $tempX; - $y = $tempY; - break; - - case 'a': - $this->drawArc( - $surface, - $x + $l, - $y + $t, - array( - $current[1], - $current[2], - $current[3], - $current[4], - $current[5], - $current[6] + $x + $l, - $current[7] + $y + $t - ) - ); - $x += $current[6]; - $y += $current[7]; - break; - - case 'A': - // TODO: optimize this - $this->drawArc( - $surface, - $x + $l, - $y + $t, - array( - $current[1], - $current[2], - $current[3], - $current[4], - $current[5], - $current[6] + $l, - $current[7] + $t - ) - ); - $x = $current[6]; - $y = $current[7]; - break; - - case 'z': - case 'Z': - $x = $subpathStartX; - $y = $subpathStartY; - $surface->closePath(); - break; - } - $previous = $current; - } - } - - function drawArc(SurfaceInterface $surface, $fx, $fy, $coords) - { - $rx = $coords[0]; - $ry = $coords[1]; - $rot = $coords[2]; - $large = $coords[3]; - $sweep = $coords[4]; - $tx = $coords[5]; - $ty = $coords[6]; - $segs = array( - array(), - array(), - array(), - array(), - ); - - $toX = $tx - $fx; - $toY = $ty - $fy; - - if ((float)($toX + $toY) === 0.0) { - return; - } - - if ((float)abs($rx) == 0.0 || (float)abs($ry) === 0.0) { - $surface->lineTo($tx, $ty); - return; - } - - $segsNorm = $this->arcToSegments($toX, $toY, $rx, $ry, $large, $sweep, $rot); - - for ($i = 0, $len = count($segsNorm); $i < $len; $i++) { - $segs[$i][0] = $segsNorm[$i][0] + $fx; - $segs[$i][1] = $segsNorm[$i][1] + $fy; - $segs[$i][2] = $segsNorm[$i][2] + $fx; - $segs[$i][3] = $segsNorm[$i][3] + $fy; - $segs[$i][4] = $segsNorm[$i][4] + $fx; - $segs[$i][5] = $segsNorm[$i][5] + $fy; - - call_user_func_array(array($surface, "bezierCurveTo"), $segs[$i]); - } - } - - function arcToSegments($toX, $toY, $rx, $ry, $large, $sweep, $rotateX) - { - $th = $rotateX * M_PI / 180; - $sinTh = sin($th); - $cosTh = cos($th); - $fromX = 0; - $fromY = 0; - - $rx = abs($rx); - $ry = abs($ry); - - $px = -$cosTh * $toX * 0.5 - $sinTh * $toY * 0.5; - $py = -$cosTh * $toY * 0.5 + $sinTh * $toX * 0.5; - $rx2 = $rx * $rx; - $ry2 = $ry * $ry; - $py2 = $py * $py; - $px2 = $px * $px; - $pl = $rx2 * $ry2 - $rx2 * $py2 - $ry2 * $px2; - $root = 0; - - if ($pl < 0) { - $s = sqrt(1 - $pl / ($rx2 * $ry2)); - $rx *= $s; - $ry *= $s; - } else { - $root = ($large == $sweep ? -1.0 : 1.0) * sqrt($pl / ($rx2 * $py2 + $ry2 * $px2)); - } - - $cx = $root * $rx * $py / $ry; - $cy = -$root * $ry * $px / $rx; - $cx1 = $cosTh * $cx - $sinTh * $cy + $toX * 0.5; - $cy1 = $sinTh * $cx + $cosTh * $cy + $toY * 0.5; - $mTheta = $this->calcVectorAngle(1, 0, ($px - $cx) / $rx, ($py - $cy) / $ry); - $dtheta = $this->calcVectorAngle(($px - $cx) / $rx, ($py - $cy) / $ry, (-$px - $cx) / $rx, (-$py - $cy) / $ry); - - if ($sweep == 0 && $dtheta > 0) { - $dtheta -= 2 * M_PI; - } else { - if ($sweep == 1 && $dtheta < 0) { - $dtheta += 2 * M_PI; - } - } - - // $Convert $into $cubic $bezier $segments <= 90deg - $segments = ceil(abs($dtheta / M_PI * 2)); - $result = array(); - $mDelta = $dtheta / $segments; - $mT = 8 / 3 * sin($mDelta / 4) * sin($mDelta / 4) / sin($mDelta / 2); - $th3 = $mTheta + $mDelta; - - for ($i = 0; $i < $segments; $i++) { - $result[$i] = $this->segmentToBezier( - $mTheta, - $th3, - $cosTh, - $sinTh, - $rx, - $ry, - $cx1, - $cy1, - $mT, - $fromX, - $fromY - ); - $fromX = $result[$i][4]; - $fromY = $result[$i][5]; - $mTheta = $th3; - $th3 += $mDelta; - } - - return $result; - } - - function segmentToBezier($th2, $th3, $cosTh, $sinTh, $rx, $ry, $cx1, $cy1, $mT, $fromX, $fromY) - { - $costh2 = cos($th2); - $sinth2 = sin($th2); - $costh3 = cos($th3); - $sinth3 = sin($th3); - $toX = $cosTh * $rx * $costh3 - $sinTh * $ry * $sinth3 + $cx1; - $toY = $sinTh * $rx * $costh3 + $cosTh * $ry * $sinth3 + $cy1; - $cp1X = $fromX + $mT * (-$cosTh * $rx * $sinth2 - $sinTh * $ry * $costh2); - $cp1Y = $fromY + $mT * (-$sinTh * $rx * $sinth2 + $cosTh * $ry * $costh2); - $cp2X = $toX + $mT * ($cosTh * $rx * $sinth3 + $sinTh * $ry * $costh3); - $cp2Y = $toY + $mT * ($sinTh * $rx * $sinth3 - $cosTh * $ry * $costh3); - - return array( - $cp1X, - $cp1Y, - $cp2X, - $cp2Y, - $toX, - $toY - ); - } - - function calcVectorAngle($ux, $uy, $vx, $vy) - { - $ta = atan2($uy, $ux); - $tb = atan2($vy, $vx); - if ($tb >= $ta) { - return $tb - $ta; - } else { - return 2 * M_PI - ($ta - $tb); - } - } -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Polygon.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Polygon.php deleted file mode 100644 index e7ca92a1..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Polygon.php +++ /dev/null @@ -1,42 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg\Tag; - -class Polygon extends Shape -{ - public function start($attributes) - { - $tmp = array(); - preg_match_all('/([\-]*[0-9\.]+)/', $attributes['points'], $tmp, PREG_PATTERN_ORDER); - - $points = $tmp[0]; - $count = count($points); - - if ($count < 4) { - // nothing to draw - return; - } - - $surface = $this->document->getSurface(); - list($x, $y) = $points; - $surface->moveTo($x, $y); - - for ($i = 2; $i < $count; $i += 2) { - if ($i + 1 === $count) { - // invalid trailing point - continue; - } - $x = $points[$i]; - $y = $points[$i + 1]; - $surface->lineTo($x, $y); - } - - $surface->closePath(); - } -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Polyline.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Polyline.php deleted file mode 100644 index 45e2131e..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Polyline.php +++ /dev/null @@ -1,40 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg\Tag; - -class Polyline extends Shape -{ - public function start($attributes) - { - $tmp = array(); - preg_match_all('/([\-]*[0-9\.]+)/', $attributes['points'], $tmp, PREG_PATTERN_ORDER); - - $points = $tmp[0]; - $count = count($points); - - if ($count < 4) { - // nothing to draw - return; - } - - $surface = $this->document->getSurface(); - list($x, $y) = $points; - $surface->moveTo($x, $y); - - for ($i = 2; $i < $count; $i += 2) { - if ($i + 1 === $count) { - // invalid trailing point - continue; - } - $x = $points[$i]; - $y = $points[$i + 1]; - $surface->lineTo($x, $y); - } - } -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/RadialGradient.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/RadialGradient.php deleted file mode 100644 index a9de62f3..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/RadialGradient.php +++ /dev/null @@ -1,17 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg\Tag; - -class RadialGradient extends AbstractTag -{ - public function start($attributes) - { - - } -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Rect.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Rect.php deleted file mode 100644 index b5f3f774..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Rect.php +++ /dev/null @@ -1,50 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg\Tag; - -use Svg\Style; - -class Rect extends Shape -{ - protected $x = 0; - protected $y = 0; - protected $width = 0; - protected $height = 0; - protected $rx = 0; - protected $ry = 0; - - public function start($attributes) - { - $width = $this->document->getWidth(); - $height = $this->document->getHeight(); - - if (isset($attributes['x'])) { - $this->x = $this->convertSize($attributes['x'], $width); - } - if (isset($attributes['y'])) { - $this->y = $this->convertSize($attributes['y'], $height); - } - - if (isset($attributes['width'])) { - $this->width = $this->convertSize($attributes['width'], $width); - } - if (isset($attributes['height'])) { - $this->height = $this->convertSize($attributes['height'], $height); - } - - if (isset($attributes['rx'])) { - $this->rx = $attributes['rx']; - } - if (isset($attributes['ry'])) { - $this->ry = $attributes['ry']; - } - - $this->document->getSurface()->rect($this->x, $this->y, $this->width, $this->height, $this->rx, $this->ry); - } -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Shape.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Shape.php deleted file mode 100644 index 767e81db..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Shape.php +++ /dev/null @@ -1,63 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg\Tag; - -use Svg\Style; - -class Shape extends AbstractTag -{ - protected function before($attributes) - { - $surface = $this->document->getSurface(); - - $surface->save(); - - $style = $this->makeStyle($attributes); - - $this->setStyle($style); - $surface->setStyle($style); - - $this->applyTransform($attributes); - } - - protected function after() - { - $surface = $this->document->getSurface(); - - if ($this->hasShape) { - $style = $surface->getStyle(); - - $fill = $style->fill && is_array($style->fill); - $stroke = $style->stroke && is_array($style->stroke); - - if ($fill) { - if ($stroke) { - $surface->fillStroke(false); - } else { -// if (is_string($style->fill)) { -// /** @var LinearGradient|RadialGradient $gradient */ -// $gradient = $this->getDocument()->getDef($style->fill); -// -// var_dump($gradient->getStops()); -// } - - $surface->fill(); - } - } - elseif ($stroke) { - $surface->stroke(false); - } - else { - $surface->endPath(); - } - } - - $surface->restore(); - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Stop.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Stop.php deleted file mode 100644 index 22c9a988..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Stop.php +++ /dev/null @@ -1,17 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg\Tag; - -class Stop extends AbstractTag -{ - public function start($attributes) - { - - } -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/StyleTag.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/StyleTag.php deleted file mode 100644 index 309de01e..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/StyleTag.php +++ /dev/null @@ -1,27 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg\Tag; - -use Sabberworm\CSS; - -class StyleTag extends AbstractTag -{ - protected $text = ""; - - public function end() - { - $parser = new CSS\Parser($this->text); - $this->document->appendStyleSheet($parser->parse()); - } - - public function appendText($text) - { - $this->text .= $text; - } -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Symbol.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Symbol.php deleted file mode 100644 index d00e7abb..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Symbol.php +++ /dev/null @@ -1,34 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg\Tag; - -use Svg\Style; - -class Symbol extends AbstractTag -{ - protected function before($attributes) - { - $surface = $this->document->getSurface(); - - $surface->save(); - - $style = $this->makeStyle($attributes); - - $this->setStyle($style); - $surface->setStyle($style); - - $this->applyViewbox($attributes); - $this->applyTransform($attributes); - } - - protected function after() - { - $this->document->getSurface()->restore(); - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Text.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Text.php deleted file mode 100644 index 80e08a60..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/Text.php +++ /dev/null @@ -1,72 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg\Tag; - -use Svg\Style; - -class Text extends Shape -{ - protected $x = 0; - protected $y = 0; - protected $text = ""; - - public function start($attributes) - { - $height = $this->document->getHeight(); - $this->y = $height; - - if (isset($attributes['x'])) { - $width = $this->document->getWidth(); - $this->x = $this->convertSize($attributes['x'], $width); - } - if (isset($attributes['y'])) { - $this->y = $height - $this->convertSize($attributes['y'], $height); - } - - $this->document->getSurface()->transform(1, 0, 0, -1, 0, $height); - } - - public function end() - { - $surface = $this->document->getSurface(); - $x = $this->x; - $y = $this->y; - $style = $surface->getStyle(); - $surface->setFont($style->fontFamily, $style->fontStyle, $style->fontWeight); - - switch ($style->textAnchor) { - case "middle": - $width = $surface->measureText($this->text); - $x -= $width / 2; - break; - - case "end": - $width = $surface->measureText($this->text); - $x -= $width; - break; - } - - $surface->fillText($this->getText(), $x, $y); - } - - protected function after() - { - $this->document->getSurface()->restore(); - } - - public function appendText($text) - { - $this->text .= $text; - } - - public function getText() - { - return trim($this->text); - } -} diff --git a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/UseTag.php b/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/UseTag.php deleted file mode 100644 index cb669b9d..00000000 --- a/docker/statistics/vendor/phenx/php-svg-lib/src/Svg/Tag/UseTag.php +++ /dev/null @@ -1,132 +0,0 @@ - - * @license GNU LGPLv3+ http://www.gnu.org/copyleft/lesser.html - */ - -namespace Svg\Tag; - -class UseTag extends AbstractTag -{ - protected $x = 0; - protected $y = 0; - protected $width; - protected $height; - protected $instances = 0; - - /** @var AbstractTag */ - protected $reference; - - protected function before($attributes) - { - $this->instances++; - if ($this->instances > 1) { - //TODO: log circular reference error state - return; - } - - if (isset($attributes['x'])) { - $this->x = $attributes['x']; - } - if (isset($attributes['y'])) { - $this->y = $attributes['y']; - } - - if (isset($attributes['width'])) { - $this->width = $attributes['width']; - } - if (isset($attributes['height'])) { - $this->height = $attributes['height']; - } - - parent::before($attributes); - - $document = $this->getDocument(); - - $link = $attributes["href"] ?? $attributes["xlink:href"]; - $this->reference = $document->getDef($link); - - $surface = $document->getSurface(); - $surface->save(); - - $surface->translate($this->x, $this->y); - } - - protected function after() { - if ($this->instances > 0) { - return; - } - parent::after(); - $this->getDocument()->getSurface()->restore(); - } - - public function handle($attributes) - { - if ($this->instances > 1) { - //TODO: log circular reference error state - return; - } - - parent::handle($attributes); - - if (!$this->reference) { - return; - } - - $originalAttributes = array_merge($this->reference->attributes); - $originalStyle = $this->reference->getStyle(); - $mergedAttributes = $this->reference->attributes; - $attributesToNotMerge = ['x', 'y', 'width', 'height', 'href', 'xlink:href', 'id', 'style']; - foreach ($attributes as $attrKey => $attrVal) { - if (!in_array($attrKey, $attributesToNotMerge) && !isset($mergedAttributes[$attrKey])) { - $mergedAttributes[$attrKey] = $attrVal; - } - } - $mergedAttributes['style'] = ($attributes['style'] ?? '') . ';' . ($mergedAttributes['style'] ?? ''); - - $this->_handle($this->reference, $mergedAttributes); - - $this->reference->attributes = $originalAttributes; - if ($originalStyle !== null) { - $this->reference->setStyle($originalStyle); - } - } - - public function handleEnd() - { - $this->instances--; - if ($this->instances > 0) { - return; - } - - if ($this->reference) { - $this->_handleEnd($this->reference); - } - - parent::handleEnd(); - } - - private function _handle($tag, $attributes) { - $tag->handle($attributes); - foreach ($tag->children as $child) { - $originalAttributes = array_merge($child->attributes); - $originalStyle = $child->getStyle(); - $mergedAttributes = $child->attributes; - $mergedAttributes['style'] = ($attributes['style'] ?? '') . ';' . ($mergedAttributes['style'] ?? ''); - $this->_handle($child, $mergedAttributes); - $child->attributes = $originalAttributes; - if ($originalStyle !== null) { - $child->setStyle($originalStyle); - } - } - } - - private function _handleEnd($tag) { - foreach ($tag->children as $child) { - $this->_handleEnd($child); - } - $tag->handleEnd(); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/CHANGELOG.md b/docker/statistics/vendor/phpmyadmin/sql-parser/CHANGELOG.md deleted file mode 100644 index b433d3a8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/CHANGELOG.md +++ /dev/null @@ -1,604 +0,0 @@ -# Change Log - -## [5.10.2] - 2024-12-05 - -### Added - -- Add MariaDb 11.6 and 11.7 contexts (#601) -- Add context files for MySQL 9.1 (#603) - -## [5.10.1] - 2024-11-10 - -### Fixed - -- Fix parsing of ALTER TABLE … RENAME KEY (#580) -- Fix parsing table names that start with "e1" (#578) -- Improve handling of negative and overflowed offsets on TokensList (#582) -- Fix parsing of queries with 'AND' (#590) -- Fix C style comments with two asterisks (#597) -- Fix parsing of SRID in column definition (#595) - -## [5.10.0] - 2024-08-29 - -- Fix parsing of UPDATE ... SET (#577) -- Fix parsing of WITH PARSER (#563) -- Fix context files for MySQL and MariaDB (#572) (#576) -- Allow using `::class` keyword to load a context (#571) -- Fix query flags for lower-case functions (#564) -- Improve context files by using constants (#570) -- Fix case when a condition is not parsed correctly (#560) -- Support parsing KILL statements (#556) -- Fix replace clause of select statement with FOR UPDATE (#555) -- Add support for ALTER FUNCTION and ALTER PROCEDURE statements (#553) - -## [5.9.1] - 2024-08-13 - -- Allow parsing ALTER TABLE statement with column check constraint (#554) -- Add support for PHPUnit 10 (#573) - -## [5.9.0] - 2024-01-20 - -- Fix keywords not being recognized as table alias (#496) -- Add `bin/sql-parser` executable file (#517) -- Fix bind parameter in LIMIT OFFSET (#498) -- Fix using ? as a parameter (#515) - -## [5.8.2] - 2023-09-19 - -- Fix a regression with the ALTER operation (#511) - -## [5.8.1] - 2023-09-15 - -- Fix `:=` was not recognized as an operator just like `=` (#306) -- Fix `ALTER TABLE … MODIFY … ENUM('')` is being wrongly parsed (#234) -- Fix `ALTER TABLE … MODIFY … ENUM('')` is being wrongly parsed (#478) -- Fix MariaDB window function with alias gives bad linting errors (#283) -- Fix unrecognized keyword `COLLATE` in `WHERE` clauses (#491) -- Fix invalid hexadecimal prefix 0X (#508) - -## [5.8.0] - 2023-06-05 - -- Fix `ALTER EVENT RENAME TO` to use expression instead of var (#419) -- Fix incorrect order of operations to parse table/db called `` (#422) -- Fix ALTER EVENT statement with DEFINER=user modifier fails to be parsed (#418) -- Fix GROUP BY modifier WITH ROLLUP is treated as a syntax error and prevents export of SQL query results -- Fix `TokensList::getPrevious` was not able to reach very first token (#428) -- Fix `TransactionStatement::build()` "Call to a member function build() on null" when the transaction has no end -- Fix MySQL-specific commands parsing (#226) -- Fix `ALTER TABLE … RENAME COLUMN … TO …` is not understood by the parser/linter (#430) -- Fix `PARTITION` syntax errors (#377) -- Fix `ALTER USER` when used with `IDENTIFIED WITH/VIA/BY` option (#431) -- Fix `COALESCE PARTITION` in `ALTER TABLE`, rather than `COALESCE` (#323) -- Support `ALGORITHM` and `LOCK` options in `ALTER TABLE` statements (#319) -- Fix way end of functions, procedures and triggers' bodies is identified (#438) -- Fix `enclosed by` is not recognized by the parser when `fields` is in lower case (#236) -- Support `KEY` on `CreateDefinition` (#330) -- Fix `CALL` statements parsing (#372) -- Implement support for `LEFT JOIN`, `JOIN`, `INNER JOIN` on `UpdateStatement` (#260) -- Implement support for `TABLE` and `REPLACE` statements on `DESCRIBE` statements -- Fix `DESCRIBE` to allow a schema.table syntax (#445) -- Fix parsing insert queries with functions trims commas (#450) - -## [5.7.0] - 2023-01-25 - -* Performance improvement to use less the `nextToken()` function (#397) -* Lexer - Solving ambiguity on function keywords (#385) -* Implement `ALTER EVENT` (#404) -* Add `ALTER EVENT` keywords (#404) -* Drop PHP 7.1 support -* Fix the alter operation table options `RENAME INDEX x TO y` (#405) -* Fix `CreateStatement` function's options (#406) -* Fix a PHP notice on Linter using `ANALYZE` (#413) - -## [5.6.0] - 2023-01-02 - -* Add missing return types annotations -* Improve the WITH statements parser (#363) -* Add support for passing `Context::SQL_MODE*` constants to `Context::setMode` method -* Fix additional body tokens issue with `CREATE VIEW` statements (#371) -* Exclude from composer vendor bundle /tests and /phpunit.xml.dist -* Support table structure with `COMPRESSED` columns (#351) -* Add `#[\AllowDynamicProperties]` on `Statement` and `Expression` classes for PHP 8.2 support -* Support `ALTER` queries of `PARTITIONS` (#329) -* Fixed differentiating between `ANALYZE` and `EXPLAIN` statements (#386) -* Added "NOT" to the select options (#374) -* Implement the `EXPLAIN` Parser (#389) -* Context: Updated contexts to contain `multipoint` and `multipolygon` data types (#393) -* Support more keywords on `Expression` component (#399) -* Fix PHP 8.3 failing tests (#400) - -## [5.5.0] - 2021-12-08 - -* Add WITH support (#165, #331) -* Fixed BufferedQuery when it has an odd number of backslashes in the end (#340) -* Fixed the issue that ignored the body tokens when creating views with union (#343) -* Fixed parser errors on "ALTER TABLE" statements to add columns with SET type (#168) -* Fixed PHP 8.1 fatal errors on classes that "implements ArrayAccess" -* Add new contexts for MariaDB 10.4, 10.5, 10.6 (#328) -* Fixed parser errors for "ALTER USER" with options (#342) -* Fixed handling of the procedures and functions's options where part of the body (#339) -* Fix PHP notice "Undefined index: name in src/Components/Key.php#206" for table keys using expressions (#347) -* Added support for MySQL 8.0 table structure KEY expressions (#347) -* Added support for KEY order (ASC/DESC) (#296) -* Added missing KEY options for MySQL and MariaDB (#348) -* Added support for ENFORCED and NOT ENFORCED on table create queries (#341) -* Performance improvement to use less the "ord()" function (#352) -* Added support for OVER() with an alias (AS) (#197) - -## [5.4.2] - 2021-02-05 - -* Added check for quoted symbol to avoid parser error in case of keyword (#317) -* Allow PHP 8 - -## [5.4.1] - 2020-10-15 - -* Fix array_key_exists warning when parsing a "DEFAULT FALSE" token (#299) - -## [5.4.0] - 2020-10-08 - -* EXISTS is also a function. (#297) -* Fix lexer to not allow numbers with letters (#300) -* Add support for INVISIBLE keyword (#292) -* Fix the "$" might be a character used in a name (#301) -* Fix use stream_select instead of non-blocking STDIN (#309) -* Add select validation to a create view statement (#310) - -## [5.3.1] - 2020-03-20 - -* Revert some changes with the understanding of ANSI_QUOTES mode and identifiers -* Suggest motranslator 5.0 in README - -## [5.3.0] - 2020-03-20 - -* Stop instanciating an object to check its class name. (#290) -* Replace sscanf by equivalent native PHP functions because sscanf can be disabled for security reasons. (#270) -* Allow phpunit 9 -* Allow phpmyadmin/motranslator 5.0 -* Fix for php error when "INSERT INTO x SET a = 1" is "INSERT INTO x SET = 1" (#295) -* Fixed lexer fails to detect "*" as a wildcard (#288) -* Fixed ANSI_QUOTES support (#284) -* Fixed parser mistakes with comments (#156) - -## [5.2.0] - 2020-01-07 - -* Fix ALTER TABLE ... PRIMARY/UNIQUE KEY results in error (#267) -* Prevent overwrite of offset in Limit clause by parenthesis (#275) -* Allow SCHEMA to be used in CREATE Database statement (#231) -* Add missing options in SET statement (#255) -* Add support for DROP USER statement (#259) -* Fix php error "undefined index" when replacing a non existing clause (#249) - -## [5.1.0] - 2019-11-12 - -* Fix for PHP deprecations messages about implode for php 7.4+ (#258) -* Parse CHECK keyword on table definition (#264) -* Parse truncate statement (#221) -* Fix wrong parsing of partitions (#265) - -## [5.0.0] - 2019-05-09 - -* Drop support for PHP 5.3, PHP 5.4, PHP 5.5, PHP 5.6, PHP 7.0 and HHVM -* Enable strict mode on PHP files -* Fix redundant whitespaces in build() outputs (#228) -* Fix incorrect error on DEFAULT keyword in ALTER operation (#229) -* Fix incorrect outputs from Query::getClause (#233) -* Add support for reading an SQL file from stdin -* Fix for missing tokenize-query in Composer's vendor/bin/ directory -* Fix for PHP warnings with an incomplete CASE expression (#241) -* Fix for error message with multiple CALL statements (#223) -* Recognize the question mark character as a parameter (#242) - -## [4.7.4] - YYYY-MM-DD - -## [4.7.3] - 2021-12-08 - -- Fixed BufferedQuery when it has an odd number of backslashes in the end (#340) -- Fixed the issue that ignored the body tokens when creating views with union (#343) -- Fixed parser errors on "ALTER TABLE" statements to add columns with SET type (#168) -- Fixed parser errors for "ALTER USER" with options (#342) -- Fixed handling of the procedures and functions's options where part of the body (#339) -- Fix PHP notice "Undefined index: name in src/Components/Key.php#206" for table keys using functions (#347) -- Fix MySQL 8.0 table structure KEY expression not recognized (#347) -- Fix KEY order (ASC/DESC) not part of the KEY definition (#296) -- Fix missing KEY options for MySQL and MariaDB (#348) -- Fix validation error when using ENFORCED option (#341) - -## [4.7.2] - 2021-02-05 - -- Added check for quoted symbol to avoid parser error in case of keyword (#317) -- Adjust PHP version constraint to not support PHP 8.0 on the 4.7 series (5.x series supports it) - -## [4.7.1] - 2020-10-15 - -* Fix array_key_exists warning when parsing a "DEFAULT FALSE" token (#299) - -## [4.7.0] - 2020-10-08 - -* EXISTS is also a function. (#297) -* Fix lexer to not allow numbers with letters (#300) -* Add support for INVISIBLE keyword (#292) -* Fix the "$" might be a character used in a name (#301) -* Fix use stream_select instead of non-blocking STDIN (#309) -* Add select validation to a create view statement (#310) - -## [4.6.1] - 2020-03-20 - -* Revert some changes with the understanding of ANSI_QUOTES mode and identifiers -* Suggest motranslator 4.0 in README - -## [4.6.0] - 2020-03-20 - -* Stop instanciating an object to check its class name. (#290) -* Replace sscanf by equivalent native PHP functions because sscanf can be disabled for security reasons. (#270) -* Allow phpunit 7 -* Fix for php error when "INSERT INTO x SET a = 1" is "INSERT INTO x SET = 1" (#295) -* Fixed lexer fails to detect "*" as a wildcard (#288) -* Fixed ANSI_QUOTES support (#284) -* Fixed parser mistakes with comments (#156) - -## [4.5.0] - 2020-01-07 - -* Fix ALTER TABLE ... PRIMARY/UNIQUE KEY results in error (#267) -* Prevent overwrite of offset in Limit clause by parenthesis (#275) -* Allow SCHEMA to be used in CREATE Database statement (#231) -* Add missing options in SET statement (#255) -* Add support for DROP USER statement (#259) -* Fix php error "undefined index" when replacing a non existing clause (#249) - -## [4.4.0] - 2019-11-12 - -* Fix for PHP deprecations messages about implode for php 7.4+ (#258) -* Parse CHECK keyword on table definition (#264) -* Parse truncate statement (#221) -* Fix wrong parsing of partitions (#265) - -## [4.3.2] - 2019-06-03 - -Backport fixes from 5.0.0 to QA branch: - -* Fix redundant whitespaces in build() outputs (#228) -* Fix incorrect error on DEFAULT keyword in ALTER operation (#229) -* Fix incorrect outputs from Query::getClause (#233) -* Add support for reading an SQL file from stdin -* Fix for missing tokenize-query in Composer's vendor/bin/ directory -* Fix for PHP warnings with an incomplete CASE expression (#241) -* Fix for error message with multiple CALL statements (#223) -* Recognize the question mark character as a parameter (#242) - -## [4.3.1] - 2019-01-05 - -* Fixed incorrect error thrown on DEFAULT keyword in ALTER statement (#218) - -## [4.3.0] - 2018-12-25 - -* Add support for aliases on CASE expressions (#162 and #192) -* Add support for INDEX hints in SELECT statement (#199) -* Add support for LOCK and UNLOCK TABLES statement (#180) -* Add detection of extraneous comma in UPDATE statement (#160) -* Add detection of a missing comma between two ALTER operations (#189) -* Add missing support for STRAIGHT_JOIN (#196) -* Add support for end options in SET statement (#190) -* Fix building of RENAME statements (#201) -* Add support for PURGE statements (#207) -* Add support for COLLATE keyword (#190) - -## [4.2.5] - 2018-10-31 - -* Fix issue with CREATE OR REPLACE VIEW. - -## [4.2.4] - 2017-12-06 - -* Fix parsing of CREATE TABLE with per field COLLATE. -* Improved Context::loadClosest to better deal with corner cases. -* Localization updates. - -## [4.2.3] - 2017-10-10 - -* Make mbstring extension optional (though Symfony polyfill). -* Fixed build CREATE TABLE query with PARTITIONS having ENGINE but not VALUES. - -## [4.2.2] - 2017-09-28 - -* Added support for binding parameters. - -## [4.2.1] - 2017-09-08 - -* Fixed minor bug in Query::getFlags. -* Localization updates. - -## [4.2.0] - 2017-08-30 - -* Initial support for MariaDB SQL contexts. -* Add support for MariaDB 10.3 INTERSECT and EXCEPT. - -## [4.1.10] - 2017-08-21 - -* Use custom LoaderException for context loading errors. - -## [4.1.9] - 2017-07-12 - -* Various code cleanups. -* Improved error handling of several invalid statements. - -## [4.1.8] - 2017-07-09 - -* Fixed parsing SQL comment at the end of query. -* Improved handing of non utf-8 strings. -* Added query flag for SET queries. - -## [4.1.7] - 2017-06-06 - -* Fixed setting combination SQL Modes. - -## [4.1.6] - 2017-06-01 - -* Fixed building query with GROUP BY clause. - -## [4.1.5] - 2017-05-15 - -* Fixed invalid lexing of queries with : in strings. -* Properly handle maximal length of delimiter. - -## [4.1.4] - 2017-05-05 - -* Fixed wrong extract of string tokens with escaped characters. -* Properly handle lowercase begin statement. - -## [4.1.3] - 2017-04-06 - -* Added support for DELETE ... JOIN clauses. -* Changed BufferedQuery to include comments in output. -* Fixed parsing of inline comments. - -## [4.1.2] - 2017-02-20 - -* Coding style improvements. -* Chinese localization. -* Improved order validatin for JOIN clauses. -* Improved pretty printing of JOIN clauses. -* Added support for LOAD DATA statements. - -## [4.1.1] - 2017-02-07 - -* Localization using phpmyadmin/motranslator is now optional. -* Improved testsuite. -* Better handling of non upper cased not reserved keywords. -* Minor performance and coding style improvements. - -## [4.1.0] - 2017-01-23 - -* Use phpmyadmin/motranslator to localize messages. - -## [4.0.1] - 2017-01-23 - -* Fixed CLI wrappers for new API. -* Fixed README for new API. - -## [4.0.0] - 2017-01-23 - -* Added PhpMyAdmin namespace prefix to follow PSR-4. - -## [3.4.17] - 2017-01-20 - -* Coding style fixes. -* Fixed indentation in HTML formatting. -* Fixed parsing of unterminated variables. -* Improved comments lexing. - -## [3.4.16] - 2017-01-06 - -* Coding style fixes. -* Properly handle operators AND, NOT, OR, XOR, DIV, MOD - -## [3.4.15] - 2017-01-02 - -* Fix return value of Formatter.toString() when type is text -* Fix parsing of FIELDS and LINES options in SELECT..INTO -* PHP 7.2 compatibility. -* Better parameter passing to query formatter. - -## [3.4.14] - 2016-11-30 - -* Improved parsing of UNION queries. -* Recognize BINARY function. - -## [3.4.13] - 2016-11-15 - -* Fix broken incorrect clause order detection for Joins. -* Add parsing of end options in Select statements. - -## [3.4.12] - 2016-11-09 - -* Added verification order of SELECT statement clauses. - -## [3.4.11] - 2016-10-25 - -* Fixed parsing of ON UPDATE option in field definition of TIMESTAMP type with precision -* Fixed parsing of NATURAL JOIN, CROSS JOIN and related joins. -* Fixed parsing of BEGIN/END labels. - -## [3.4.10] - 2016-10-03 - -* Fixed API regression on DELETE statement - -## [3.4.9] - 2016-10-03 - -* Added support for CASE expressions -* Support for parsing and building DELETE statement -* Support for parsing subqueries in FROM clause - -## [3.4.8] - 2016-09-22 - -* No change release to sync GitHub releases with Packagist - -## [3.4.7] - 2016-09-20 - -* Fix parsing of DEFINER without backquotes -* Fixed escaping HTML entities in HTML formatter -* Fixed escaping of control chars in CLI formatter - -## [3.4.6] - 2016-09-13 - -* Fix parsing of REPLACE INTO ... -* Fix parsing of INSERT ... ON DUPLICATE KEY UPDATE ... -* Extended testsuite -* Re-enabled PHP 5.3 support - -## [3.4.5] - 2016-09-13 - -* Fix parsing of INSERT...SELECT and INSERT...SET syntax -* Fix parsing of CREATE TABLE ... PARTITION -* Fix parsing of SET CHARACTER SET, CHARSET, NAMES -* Add Support for 'CREATE TABLE `table_copy` LIKE `table` - -## [3.4.4] - 2016-04-26 - -* Add support for FULL OUTER JOIN - -## [3.4.3] - 2016-04-19 - -* Fix parsing of query with \ - -## [3.4.2] - 2016-04-07 - -* Recognize UNION DISTINCT -* Recognize REGEXP and RLIKE operators - -## [3.4.1] - 2016-04-06 - -* Add FULLTEXT and SPATIAL keywords -* Properly parse CREATE TABLE [AS] SELECT -* Fix parsing of table with DEFAULT and COMMENT - -## [3.4.0] - 2016-02-23 - -* Fix parsing DEFAULT value on CREATE -* Fix parsing of ALTER VIEW - -## [3.3.1] - 2016-02-12 - -* Condition: Allow keyword `INTERVAL`. - -## [3.3.0] - 2016-02-12 - -* Expression: Refactored parsing options. - -## [3.2.0] - 2016-02-11 - -* Context: Added custom mode that avoids escaping when possible. - -## [3.1.0] - 2016-02-10 - -* ArrayObj: Handle more complex expressions in arrays. -* BufferedQuery: Backslashes in comments escaped characters in comments. -* Condition: Allow `IF` in conditions. -* Context: Add `;` as operator. -* Context: Updated contexts to contain `BIT` data type. -* CreateStatement: The `DEFAULT` option may be an expression. -* DescribeStatement: Added `DESC` as alias for `DESCRIBE`. -* Expression: Rewrote expression parsing. -* Misc: Added PHPUnit's Code Coverage 3.0 as a dependency. -* Misc: Added support for PHP 5.4 back. -* Misc: Removed dependency to Ctype. -* Misc: Repository transferred from @udan11 to @phpMyAdmin. -* Misc: Updated `.gitignore` to ignore `composer.lock`. -* Misc: Updated Composer and Travis configuration for PHP 7 and PHPUnit 5. -* Tools: Documented tags in `ContextGenerator`. - -## [3.0.8] - 2015-12-18 - -* Allow `NULL` in expressions. -* Downgraded PHPUnit to 4.8. Removed old PHP versions. -* Updated PHPUnit to 5.1 and fixed some of the tests. -* Added `UNION ALL` as a type of `UNION`. -* Expressions are permitted in `SET` operations. -* Added `STRAIGHT_JOIN` as a known type of join. -* Added missing definitions for `MATCH` and `AGAINST`. -* Added missing statement (`FLUSH` and `DEALLOCATE`). - -## [3.0.7] - 2015-11-12 - -* Expressions may begin with a function that is also a reserved keyword (e.g. `IF`). - -## [3.0.6] - 2015-11-12 - -* Fixed a bug where formatter split the function name and the parameters list. - -## [3.0.5] - 2015-11-08 - -* Add GRANT as known statement. -* Use JOIN expressions for flag detection. -* Fix the order of clauses in SELECT statements involving UNIONs. -* Added dummy parsers for CREATE USER and SET PASSWORD statements. -* Accept NOT operator in conditions. -* Fixed DELIMITER statements in BufferedQuery. -* Added INSERT statement builder. - -## [3.0.4] - 2015-10-21 - -* Fix error message in `SqlParser\Components\OptionsArray`. - -## [3.0.3] - 2015-10-10 - -* Avoid building a field multiple times if clause has synonyms. - -## [3.0.2] - 2015-10-10 - -* Add EXISTS as an acceptable keyword in conditions. - -## [3.0.1] - 2015-10-06 - -* Handle backslashes separately for `SqlParser\Utils\BufferedQuery`. Fixes a bug where backslashes in combination with strings weren't handled properly. - -## [3.0.0] - 2015-10-02 - -__Breaking changes:__ - -* `SqlParser\Components\Reference::$table` is now an instance of `SqlParser\Components\Expression` to support references from other tables. - -## [2.1.3] - 2015-10-02 - -* Add definitions for all JOIN clauses. - -## [2.1.2] - 2015-10-02 - -* Properly parse options when the value of the option is '='. - -## [2.1.1] - 2015-09-30 - -* Only RANGE and LIST type partitions support VALUES. - -## [2.1.0] - 2015-09-30 - -* Added utilities for handling tokens and tokens list. - -## [2.0.3] - 2015-09-30 - -* Added missing NOT IN operator. This caused troubles when parsing conditions that contained the `NOT IN` operator. - -## [2.0.2] - 2015-09-30 - -* Added support for `OUTER` as an optional keyword in joins. - -## [2.0.1] - 2015-09-30 - -* Fixed a bug related to (sub)partitions options not being included in the built component. Also, the option `ENGINE` was unrecognized. - -## [2.0.0] - 2015-09-25 - -* Better parsing for CREATE TABLE statements (related to breaking change 1). -* Added support for JSON data type. -* Refactoring and minor documentation improvements. - -__Breaking changes:__ -* `SqlParser\Components\Key::$columns` is now an array of arrays. Each array must contain a `name` key which represents the name of the column and an optional `length` key which represents the length of the column. - -## [1.0.0] - 2015-08-20 - -* First release of this library. - -[5.10.2]: https://github.com/phpmyadmin/sql-parser/compare/5.10.1...5.10.2 -[5.10.1]: https://github.com/phpmyadmin/sql-parser/compare/5.10.0...5.10.1 -[5.10.0]: https://github.com/phpmyadmin/sql-parser/compare/5.9.1...5.10.0 -[5.9.1]: https://github.com/phpmyadmin/sql-parser/compare/5.9.0...5.9.1 -[5.9.0]: https://github.com/phpmyadmin/sql-parser/compare/5.8.2...5.9.0 diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/LICENSE.txt b/docker/statistics/vendor/phpmyadmin/sql-parser/LICENSE.txt deleted file mode 100644 index d159169d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/LICENSE.txt +++ /dev/null @@ -1,339 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Lesser General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) year name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - , 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Lesser General -Public License instead of this License. diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/README.md b/docker/statistics/vendor/phpmyadmin/sql-parser/README.md deleted file mode 100644 index 46c6cbb5..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/README.md +++ /dev/null @@ -1,137 +0,0 @@ -# SQL Parser - -A validating SQL lexer and parser with a focus on MySQL dialect. - -## Code status - -![Tests](https://github.com/phpmyadmin/sql-parser/workflows/Run%20tests/badge.svg?branch=master) -[![Code Coverage](https://scrutinizer-ci.com/g/phpmyadmin/sql-parser/badges/coverage.png?b=master)](https://scrutinizer-ci.com/g/phpmyadmin/sql-parser/?branch=master) -[![codecov.io](https://codecov.io/github/phpmyadmin/sql-parser/coverage.svg?branch=master)](https://codecov.io/github/phpmyadmin/sql-parser?branch=master) -[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/phpmyadmin/sql-parser/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/phpmyadmin/sql-parser/?branch=master) -[![Translation status](https://hosted.weblate.org/widgets/phpmyadmin/-/svg-badge.svg)](https://hosted.weblate.org/engage/phpmyadmin/?utm_source=widget) -[![Packagist](https://img.shields.io/packagist/dt/phpmyadmin/sql-parser.svg)](https://packagist.org/packages/phpmyadmin/sql-parser) -[![Open Source Helpers](https://www.codetriage.com/phpmyadmin/sql-parser/badges/users.svg)](https://www.codetriage.com/phpmyadmin/sql-parser) -[![Type coverage](https://shepherd.dev/github/phpmyadmin/sql-parser/coverage.svg)](https://shepherd.dev/github/phpmyadmin/sql-parser) -[![Infection MSI](https://badge.stryker-mutator.io/github.com/phpmyadmin/sql-parser/master)](https://infection.github.io) - -## Installation - -Please use [Composer][1] to install: - -```sh -composer require phpmyadmin/sql-parser -``` - -## Documentation - -The API documentation is available at -. - -## Usage - -### Command line utilities - -Command line utility to syntax highlight SQL query: - -```sh -./vendor/bin/highlight-query --query "SELECT 1" -``` - -Command line utility to lint SQL query: - -```sh -./vendor/bin/lint-query --query "SELECT 1" -``` - -Command line utility to tokenize SQL query: - -```sh -./vendor/bin/tokenize-query --query "SELECT 1" -``` - -All commands are able to parse input from stdin (standard in), such as: - -```sh -echo "SELECT 1" | ./vendor/bin/highlight-query -cat example.sql | ./vendor/bin/lint-query -``` - -### Formatting SQL query - -```php -echo PhpMyAdmin\SqlParser\Utils\Formatter::format($query, ['type' => 'html']); -``` - -### Discoverying query type - -```php -use PhpMyAdmin\SqlParser\Parser; -use PhpMyAdmin\SqlParser\Utils\Query; - -$query = 'OPTIMIZE TABLE tbl'; -$parser = new Parser($query); -$flags = Query::getFlags($parser->statements[0]); - -echo $flags['querytype']; -``` - -### Parsing and building SQL query - -```php -require __DIR__ . '/vendor/autoload.php'; - -$query1 = 'select * from a'; -$parser = new PhpMyAdmin\SqlParser\Parser($query1); - -// inspect query -var_dump($parser->statements[0]); // outputs object(PhpMyAdmin\SqlParser\Statements\SelectStatement) - -// modify query by replacing table a with table b -$table2 = new \PhpMyAdmin\SqlParser\Components\Expression('', 'b', '', ''); -$parser->statements[0]->from[0] = $table2; - -// build query again from an array of object(PhpMyAdmin\SqlParser\Statements\SelectStatement) to a string -$statement = $parser->statements[0]; -$query2 = $statement->build(); -var_dump($query2); // outputs string(19) 'SELECT * FROM `b` ' - -// Change SQL mode -PhpMyAdmin\SqlParser\Context::setMode(PhpMyAdmin\SqlParser\Context::SQL_MODE_ANSI_QUOTES); - -// build the query again using different quotes -$query2 = $statement->build(); -var_dump($query2); // outputs string(19) 'SELECT * FROM "b" ' -``` - -## Localization - -You can localize error messages installing `phpmyadmin/motranslator` version `5.0` or newer: - -```sh -composer require phpmyadmin/motranslator:^5.0 -``` - -The locale is automatically detected from your environment, you can also set a different locale - -**From cli**: - -```sh -LC_ALL=pl ./vendor/bin/lint-query --query "SELECT 1" -``` - -**From php**: - -```php -require __DIR__ . '/vendor/autoload.php'; - -$GLOBALS['lang'] = 'pl'; - -$query1 = 'select * from a'; -$parser = new PhpMyAdmin\SqlParser\Parser($query1); -``` - -## More information - -This library was originally created during the Google Summer of Code 2015 and has been used by phpMyAdmin since version 4.5. - -[1]:https://getcomposer.org/ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/bin/highlight-query b/docker/statistics/vendor/phpmyadmin/sql-parser/bin/highlight-query deleted file mode 100755 index 53d380f2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/bin/highlight-query +++ /dev/null @@ -1,30 +0,0 @@ -#!/usr/bin/env php -runHighlight()); diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/bin/lint-query b/docker/statistics/vendor/phpmyadmin/sql-parser/bin/lint-query deleted file mode 100755 index 1fe12f2f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/bin/lint-query +++ /dev/null @@ -1,30 +0,0 @@ -#!/usr/bin/env php -runLint()); diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/bin/sql-parser b/docker/statistics/vendor/phpmyadmin/sql-parser/bin/sql-parser deleted file mode 100755 index 7850f75a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/bin/sql-parser +++ /dev/null @@ -1,31 +0,0 @@ -#!/usr/bin/env php -run()); diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/bin/tokenize-query b/docker/statistics/vendor/phpmyadmin/sql-parser/bin/tokenize-query deleted file mode 100755 index e1a55f6b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/bin/tokenize-query +++ /dev/null @@ -1,30 +0,0 @@ -#!/usr/bin/env php -runTokenize()); diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/composer.json b/docker/statistics/vendor/phpmyadmin/sql-parser/composer.json deleted file mode 100644 index 36ccdb91..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/composer.json +++ /dev/null @@ -1,96 +0,0 @@ -{ - "name": "phpmyadmin/sql-parser", - "description": "A validating SQL lexer and parser with a focus on MySQL dialect.", - "license": "GPL-2.0-or-later", - "keywords": ["sql", "lexer", "parser", "analysis", "sql syntax highlighter", "sql lexer", "sql tokenizer", "sql parser", "sql linter", "query linter"], - "homepage": "https://github.com/phpmyadmin/sql-parser", - "authors": [ - { - "name": "The phpMyAdmin Team", - "email": "developers@phpmyadmin.net", - "homepage": "https://www.phpmyadmin.net/team/" - } - ], - "support": { - "issues": "https://github.com/phpmyadmin/sql-parser/issues", - "source": "https://github.com/phpmyadmin/sql-parser" - }, - "funding": [ - { - "type": "other", - "url": "https://www.phpmyadmin.net/donate/" - } - ], - "require": { - "php": "^7.2 || ^8.0", - "symfony/polyfill-mbstring": "^1.3", - "symfony/polyfill-php80": "^1.16" - }, - "require-dev": { - "phpbench/phpbench": "^1.1", - "phpmyadmin/coding-standard": "^3.0", - "phpmyadmin/motranslator": "^4.0 || ^5.0", - "phpstan/extension-installer": "^1.1", - "phpstan/phpstan": "^1.9.12", - "phpstan/phpstan-phpunit": "^1.3.3", - "phpunit/phpunit": "^8.5 || ^9.6", - "psalm/plugin-phpunit": "^0.16.1", - "vimeo/psalm": "^4.11", - "zumba/json-serializer": "~3.0.2" - }, - "conflict": { - "phpmyadmin/motranslator": "<3.0" - }, - "suggest": { - "ext-mbstring": "For best performance", - "phpmyadmin/motranslator": "Translate messages to your favorite locale" - }, - "bin": [ - "bin/highlight-query", - "bin/lint-query", - "bin/sql-parser", - "bin/tokenize-query" - ], - "autoload": { - "psr-4": { - "PhpMyAdmin\\SqlParser\\": "src" - } - }, - "autoload-dev": { - "psr-4": { - "PhpMyAdmin\\SqlParser\\Tests\\": "tests" - } - }, - "scripts": { - "phpcbf": "@php phpcbf", - "phpcs": "@php phpcs", - "phpstan": "@php phpstan analyse", - "psalm": "@php psalm --no-diff", - "phpunit": "@php phpunit --color=always", - "phpbench": "@php phpbench run tests/benchmarks --report=aggregate", - "test": [ - "@phpcs", - "@phpstan", - "@psalm", - "@phpunit" - ], - "update:baselines": [ - "@php phpstan analyse --generate-baseline", - "@php psalm --set-baseline=psalm-baseline.xml" - ] - }, - "config": { - "sort-packages": true, - "allow-plugins": { - "composer/package-versions-deprecated": true, - "dealerdirect/phpcodesniffer-composer-installer": true, - "phpstan/extension-installer": true - } - }, - "archive": { - "exclude": [ - "/tests", - "/phpunit.xml.dist" - ] - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/af/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/af/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 903fbab0..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/af/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/af/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/af/LC_MESSAGES/sqlparser.po deleted file mode 100644 index e902f27e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/af/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,277 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Afrikaans \n" -"Language: af\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Nog nie geimplimenteer nie." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"’n Nuwe verklaring is gevind, maar geen afbakening tussen dit en die vorige " -"een nie." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "Ontbrekende komma voor die aanvang van 'n nuwe wysigingsbewerking." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Onherkenbare wysigingsbewerking." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "%1$d waardes is verwag, maar gevind %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "'n Openingshakie gevolg deur 'n stel waardes is verwag." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "'n Opening-hakie is verwag." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Onverwagte sleutelwoord." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Onverwagte einde van CASE-uitdrukking" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "Potensiële duplikaat-alias van CASE-uitdrukking." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "'n Alias wat na AS verwag word, maar gekry het " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "'n Alias is voorheen gevind." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "'n Alias is na AS verwag." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"'n Simboolnaam is verwag! 'n Gereserveerde sleutelwoord kan nie as 'n " -"kolomnaam gebruik word sonder agteraanhalings nie." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "'n Simboolnaam is verwag!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "'n Komma of 'n slothakie is verwag." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "’n Sluitingshakie is verwag." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Onherkende datatipe." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "'n Uitdrukking is verwag." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "'n Alias is verwag." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Onverwagte kolletjie." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Onverwagte teken." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "'n Verrekening is verwag." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Onverwagte einde van LOCK-uitdrukking." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Hierdie opsie bots met \"%1$s\"." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Die ou naam van die tafel was verwag." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Sleutelwoord \"AAN\" was verwag." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Die nuwe naam van die tafel was verwag." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "'n Hernoembewerking is verwag." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Ontbrekende uitdrukking." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Onverwagte karakter." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Verwagte witspasie(s) voor skeidingsteken." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Verwagte afbakening." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Eindkwotasie %1$s is verwag." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Veranderlike naam is verwag." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Onverwagte begin van stelling." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Onherkende stellingtipe." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Geen transaksie is voorheen begin nie." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Hierdie tipe klousule is voorheen ontleed." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Onherkende sleutelwoord." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Sleutelwoord aan die einde van stelling." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Onverwagte ordening van klousules." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Die naam van die entiteit is verwag." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "'n Tabelnaam is verwag." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Ten minste een kolomdefinisie is verwag." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "'n \"TERUGKEER\"-sleutelwoord is verwag." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Hierdie tipe klousule is nie geldig in Multi-table-navrae nie." - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "Onverwagte einde van LOCK-stelling." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Onverwagte sleutelwoord" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "Die naam van die CTE is verwag." - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "AS navraag is verwag." - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "Subnavraag van die CTE is verwag." - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "Onverwagte einde van die MET CTE." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Onverwagte einde van LOCK-uitdrukking." - -#, fuzzy -#~| msgid "Error" -#~ msgid "error #1" -#~ msgstr "Fout" - -#, fuzzy -#~| msgid "Query" -#~ msgid "strict error" -#~ msgstr "Navraag dmv Voorbeeld" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ar/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ar/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index fa3a19f0..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ar/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ar/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ar/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 34a9c65a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ar/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,280 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Arabic \n" -"Language: ar\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 " -"&& n%100<=10 ? 3 : n%100>=11 ? 4 : 5;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "لم تنفذ بعد." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "تم العثور على بيان جديد، ولكن لا يوجد محدد بينه وبين سابقه ." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "فاصلة مفقودة قبل بدء عملية تغيير جديدة." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "عملية تغيير غير معروفة." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "تم توقع قيم %1$d ، ولكن تم العثور على %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "من المتوقع وجود قوس فتح متبوعا بمجموعة من القيم." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "من المتوقع وجود قوس مفتوح." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "كلمة رئيسية غير متوقعة." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "نهاية غير متوقعة من التعبير" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "من المحتمل وجود مُسَمَّى إضافي متكرر لعبارة CASE." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "يتوقع وضع مُسَمَّى إضافي بعد AS لكن تم وضع " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "اسم مستعار موجود مسبقا ." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "كان من المتوقع اسم مستعار بعد AS." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"كان من المتوقع وجود اسم رمز! لا يمكن استخدام كلمة رئيسية محجوزة كاسم عمود " -"بدون علامات اقتباس." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "كان من المتوقع اسم رمز!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "من المتوقع وجود فاصلة أو قوس إغلاق." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "من المتوقع وجود قوس مغلق." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "نوع بيانات غير معروف." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "متوقع وجود تعبير ." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "كان من المتوقع وجود اسم مستعار." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "نقطة غير متوقعة." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "رمز غير متوقع." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "متوقع حدوث تعويض ." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "نهاية غير متوقعة لعبارة LOCK ." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "يتعارض هذا الخيار مع“%1$s“ ." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "متوفع وجود اسم الجدول القديم ." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "متوقع وجود الكلمة الرئيسية \"TO\"." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "متوقع وجود الاسم الجديد للجدول ." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "نتوقع منك اعادة تسمية ." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "تعبير مفقود ." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "حرف غير متوقع ." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "المسافات البيضاء المتوقعة قبل المحدد." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "المحدد المتوقع." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "نتوقع إنهاء الاقتباس %1$s ." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "متوقع منك اسم متغير ." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "بداية غير متوقعة للبيان." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "نوع بيان غير معروف." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "لم يتم بدء أي معاملة من قبل." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "تم تحليل هذا النوع من العبارات سابقا." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "كلمة محجوزة غير معروفة." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "الكلمة المفتاحية في نهاية البيان." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "ترتيب غير متوقع للبنود." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "نتوفع منك ادراج اسم الكيان ." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "نتوقع تسمية الجدول ." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "نتوقع منك تعريف عمود علي الاقل ." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "كانت الكلمة الرئيسية \"رجوع\" متوقعة." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "هذا النوع من الشرط غير صالح في الاستعلامات متعددة الجداول." - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "نهاية غير متوقعة لبيان LOCK." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "كلمة أساسية غير متوقعة" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "The name of the CTE was expected." -msgstr "نتوفع منك ادراج اسم الكيان ." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "A \"RETURNS\" keyword was expected." -msgid "AS keyword was expected." -msgstr "كانت الكلمة الرئيسية \"رجوع\" متوقعة." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "Subquery of the CTE was expected." -msgstr "نتوفع منك ادراج اسم الكيان ." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected end of LOCK statement." -msgid "Unexpected end of the WITH CTE." -msgstr "نهاية غير متوقعة لبيان LOCK." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "نهاية غير متوقعة لتعبير LOCK." - -#~ msgid "error #1" -#~ msgstr "الخطأ رقم 1" - -#~ msgid "strict error" -#~ msgstr "خطأ صارم" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ast/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ast/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 976616d3..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ast/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ast/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ast/LC_MESSAGES/sqlparser.po deleted file mode 100644 index b26006e7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ast/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,283 +0,0 @@ -# phpMyAdmin SQL parser translation. -# Copyright (C) 2015 - 2017 phpMyAdmin devel team -# This file is distributed under the same license as the SQL parser package. -# FIRST AUTHOR , YEAR. -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-03-01 15:39+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Asturian \n" -"Language: ast\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.16-rc\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Entá nun se desendolcó." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"Alcontróse una nueva declaración, pero nun hai llendador ente ésta y la " -"anterior." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Operación d'alteración desconocida." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "Esperábense %1$d valores, pero s'alcontraron %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "Esperábase un corchete d'apertura siguíu por un conxuntu de valores." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Esperábase un corchete d'apertura." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Palabra clave inesperada." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Final inesperáu d'espresión CASE" - -#: src/Components/CaseExpression.php:212 -#, fuzzy -#| msgid "Unexpected end of CASE expression" -msgid "Potential duplicate alias of CASE expression." -msgstr "Final inesperáu d'espresión CASE" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Alcontróse anteriormente un alcuñu." - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "An alias was expected." -msgid "An alias was expected after AS." -msgstr "Esperábase un alcuñu." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Esperábase un nome de símbolu. Una palabra acutada nun puede usase como nome " -"de columna ensin comines." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Esperábase un nome de símbolu" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Esperábase una coma o un corchete de zarru." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Esperábase un corchete de zarru." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Tipu de datu desconocíu." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Esperábase una espresión." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Esperábase un alcuñu." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Puntu inesperáu." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "Esperábase un desplazamientu." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Final inesperáu d'espresión LOCK." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Esta opción fai conflictu con \"%1$s\"." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Esperábase'l nome anterior de la tabla." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Esperábase la palabra clave \"TO\"." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Esperábase'l nome nuevu de la tabla." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Esperábase una operación de cambiu de nome." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Falta una espresión." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Carácter inesperáu." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Esperábase espaciu(os) en blancu antes d'un llendador." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Esperábase un llendador." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Esperábense les comines de final %1$s." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Esperábase un nome de variable." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "" - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "Final inesperáu d'espresión LOCK." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Palabra clave inesperada" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The new name of the table was expected." -msgid "The name of the CTE was expected." -msgstr "Esperábase'l nome nuevu de la tabla." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "Keyword \"TO\" was expected." -msgid "AS keyword was expected." -msgstr "Esperábase la palabra clave \"TO\"." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "Keyword \"TO\" was expected." -msgid "Subquery of the CTE was expected." -msgstr "Esperábase la palabra clave \"TO\"." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected end of CASE expression" -msgid "Unexpected end of the WITH CTE." -msgstr "Final inesperáu d'espresión CASE" - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Final inesperáu d'espresión LOCK." diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/az/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/az/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 0b4ee08b..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/az/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/az/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/az/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 39712c01..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/az/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,298 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2017-11-25 14:44+0000\n" -"Last-Translator: Sevdimali İsa \n" -"Language-Team: Azerbaijani \n" -"Language: az\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 2.18-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Hələki tətbiq edilməyib." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Kateqoriya olunmamış alter əməliyyatı." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "%1$d gözlənilirdi, amma %2$d tapıldı." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "Mötərizə ardından bir qrup dəyər gözlənilməkdə." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Gözlənilməyən açar söz." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Gözlənməz Böyük/Kiçik hərf ifadəsi sonu" - -#: src/Components/CaseExpression.php:212 -#, fuzzy -#| msgid "Unexpected end of CASE expression" -msgid "Potential duplicate alias of CASE expression." -msgstr "Gözlənməz Böyük/Kiçik hərf ifadəsi sonu" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Daha öncə alias tapıldı." - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "An alias was expected." -msgid "An alias was expected after AS." -msgstr "Alias gözlənilirdi." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Bir simvol adı gözlənilirdi! Dırnaqsız reserv sözlər sütün adı olaraq " -"istifadə edilə bilməz." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Simvol adı gözlənilirdi!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Vergül və ya mötərizə gözlənilirdi." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Mötərizə gözlənilirdi." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Tanınmayan verilən tipi." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "İfadə gözlənilməkdə." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Alias gözlənilirdi." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Gözlənilməz nöqtə." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Gözlənilməyən token." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "Unexpected end of CASE expression" -msgid "Unexpected end of LOCK expression." -msgstr "Gözlənməz Böyük/Kiçik hərf ifadəsi sonu" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Bu seçim %1$s bununla zidiyyət təşkil edir." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Cədvəlin köhnə adı gözlənilirdi." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "\"TO\" açar sözü gözlənilirdi." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Cədvəlin yeni adı gözlənilirdi." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Yenidən adlandırma əməliyyatı gözlənilirdi." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Əksik ifadə." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Gözlənilməyən simvol." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, fuzzy, php-format -#| msgid "Event %1$s has been created." -msgid "Ending quote %1$s was expected." -msgstr "%1$s hadisəsi yaradıldı." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Dəyişən adı gözlənilirdi." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "İfadənin gözlənilməz başlanğıcı." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Tanınmayan ifadə tipi." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Daha öncə tranzaksiya başladılmadı." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Tanınmayan açarsöz." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "İfadənin sonunda açar söz." - -#: src/Statement.php:555 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected ordering of clauses." -msgstr "Cədvəlin başına" - -#: src/Statements/CreateStatement.php:549 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The name of the entity was expected." -msgstr "Açıq olan cədvəl sayı." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "Cədvəl adı gözlənilirdi." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Ən az bir sütün açıqlaması gözlənilirdi." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "\"RETURNS\" açarsözü gözlənilirdi." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of LOCK statement." -msgstr "İfadənin gözlənilməz başlanğıcı." - -#: src/Statements/PurgeStatement.php:138 -#, fuzzy -#| msgid "Unexpected keyword." -msgid "Unexpected keyword" -msgstr "Gözlənilməyən açar söz." - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The name of the CTE was expected." -msgstr "Açıq olan cədvəl sayı." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "A \"RETURNS\" keyword was expected." -msgid "AS keyword was expected." -msgstr "\"RETURNS\" açarsözü gözlənilirdi." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "Subquery of the CTE was expected." -msgstr "Açıq olan cədvəl sayı." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of the WITH CTE." -msgstr "İfadənin gözlənilməz başlanğıcı." - -#, fuzzy -#~| msgid "Unexpected end of CASE expression" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Gözlənməz Böyük/Kiçik hərf ifadəsi sonu" - -#~ msgid "error #1" -#~ msgstr "xəta #1" - -#, fuzzy -#~| msgid "Query error" -#~ msgid "strict error" -#~ msgstr "Sorğu xətası" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/be/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/be/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 7bc34a3d..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/be/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/be/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/be/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 3b082aeb..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/be/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,285 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Belarusian \n" -"Language: be\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " -"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Яшчэ не рэалізавана." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"Знойдзена новае сцвярджэнне, але між ім і папярэднім няма раздзяляльніка." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "Адсутнічае коска перад пачаткам новай аперацыі alter." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Нераспазнаная аперацыя змены." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "Чакалася %1$d значэнняў, а знойдзена %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "Чакаліся адкрывальная дужка і спіс значэнняў." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Чакалася адкрывальная дужка." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Нечаканае ключавое слова." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Нечаканы канец CASE-выразу" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "Патэнцыйны дублікат псеўданіма ў CASE-выразе." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Псеўданім быў знайдзены раней." - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "An alias was expected." -msgid "An alias was expected after AS." -msgstr "Чакаўся псеўданім." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Чакалася назва сімвала! Зарэзерваваныя ключавыя словы нельга выкарыстоўваць " -"як назву слупка без двукоссяў." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Чакалася назва сімвала!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Чакалася коска або закрывальная дужка." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Чакалася закрывальная дужка." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Нераспазнаны тып даных." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Чакаўся выраз." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Чакаўся псеўданім." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Нечаканая кропка." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Нечаканы знак." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "Чакаўся соступ." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Нечаканы канец LOCK-выразу." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Гэты параметр канфліктуе з «%1$s»." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Чакалася старая назва табліцы." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Чакалаcя ключавое слова «TO»." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Чакалася новая назва табліцы." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Чакалася аперацыя перайменавання." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Адсутнічае выраз." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Нечаканы сімвал." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Чакаўся прагал(ы) перад раздзяляльнікам." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Чакаецца раздзяляльнік." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Чакалася канцавое двукоссе %1$s." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Чакалася назва зменнай." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Нечаканы пачатак сцвярджэння." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Нераспазнаны тып сцвярджэння." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Няма папярэдне запушчанай транзакцыі." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Гэты тып выразу быў папярэдне разабраны." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Нераспазнанае ключавое слова." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Ключавое слова ў канцы сцвярджэння." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Нечаканы парадак выразаў." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Чакалася назва сутнасці." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "Чакалася назва табліцы." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Чакалася азначэнне прынамсі аднаго слупка." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "Чакалася ключавое слова «RETURNS»." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Гэты тып выразу не правільны для мультытаблічных запытаў." - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of LOCK statement." -msgstr "Нечаканы пачатак сцвярджэння." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Нечаканае ключавое слова" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "The name of the CTE was expected." -msgstr "Чакалася назва сутнасці." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "A \"RETURNS\" keyword was expected." -msgid "AS keyword was expected." -msgstr "Чакалася ключавое слова «RETURNS»." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "Subquery of the CTE was expected." -msgstr "Чакалася назва сутнасці." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of the WITH CTE." -msgstr "Нечаканы пачатак сцвярджэння." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Нечаканы канец LOCK-выразу." - -#~ msgid "error #1" -#~ msgstr "памылка #1" - -#~ msgid "strict error" -#~ msgstr "недапушчальная памылка" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/be@latin/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/be@latin/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 744c9d2d..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/be@latin/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/be@latin/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/be@latin/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 9b098af3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/be@latin/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,288 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Belarusian (latin) \n" -"Language: be@latin\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " -"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Jašče nie realizavana." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"Znojdziena novaje scviardžennie, alie miž im i papiarednim niama " -"razdzialiaĺnika." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Nieraspaznanaja apieracyja zmieny." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "Čakalasia %1$d značenniaŭ, a znojdziena %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "Čakalisia adkryvaĺnaja dužka i spis značenniaŭ." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Čakalasia adkryvaĺnaja dužka." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Niečakanaje kliučavoje slova." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Niečakany kaniec CASE-vyrazu" - -#: src/Components/CaseExpression.php:212 -#, fuzzy -#| msgid "Unexpected end of CASE expression" -msgid "Potential duplicate alias of CASE expression." -msgstr "Niečakany kaniec CASE-vyrazu" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Psieŭdanim byŭ znajdzieny raniej." - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "An alias was expected." -msgid "An alias was expected after AS." -msgstr "Čakaŭsia psieŭdanim." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Čakalasia nazva simvala! Zareziervavanyja kliučavyja slovy nieĺha " -"vykarystoŭvać jak nazvu slupka biez dvukossiaŭ." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Čakalasia nazva simvala!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Čakalasia koska abo zakryvaĺnaja dužka." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Čakalasia zakryvaĺnaja dužka." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Nieraspaznany typ danych." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Čakaŭsia vyraz." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Čakaŭsia psieŭdanim." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Niečakanaja kropka." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Niečakany znak." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "Čakaŭsia sostup." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Niečakany kaniec LOCK-vyrazu." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Hety paramietr kanfliktuje z «%1$s»." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Čakalasia staraja nazva tablicy." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Čakalacja kliučavoje slova «TO»." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Čakalasia novaja nazva tablicy." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Čakalasia apieracyja pierajmienavannia." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Adsutničaje vyraz." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Niečakany simval." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Čakaŭsia prahal(y) pierad razdzialiaĺnikam." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Čakajecca razdzialiaĺnik." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Čakalasia kancavoje dvukossie %1$s." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Čakalasia nazva zmiennaj." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Niečakany pačatak scviardžennia." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Nieraspaznany typ scviardžennia." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Niama papiarednie zapuščanaj tranzakcyi." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Hety typ vyrazu byŭ papiarednie razabrany." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Nieraspaznanaje kliučavoje slova." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Kliučavoje slova ŭ kancy scviardžennia." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Niečakany paradak vyrazaŭ." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Čakalasia nazva sutnasci." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "Čakalasia nazva tablicy." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Čakalasia aznačennie prynamsi adnaho slupka." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "Čakalasia kliučavoje slova «RETURNS»." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Hety typ vyrazu nie praviĺny dlia muĺtytabličnych zapytaŭ." - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of LOCK statement." -msgstr "Niečakany pačatak scviardžennia." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Niečakanaje kliučavoje slova" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "The name of the CTE was expected." -msgstr "Čakalasia nazva sutnasci." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "A \"RETURNS\" keyword was expected." -msgid "AS keyword was expected." -msgstr "Čakalasia kliučavoje slova «RETURNS»." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "Subquery of the CTE was expected." -msgstr "Čakalasia nazva sutnasci." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of the WITH CTE." -msgstr "Niečakany pačatak scviardžennia." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Niečakany kaniec LOCK-vyrazu." - -#~ msgid "error #1" -#~ msgstr "pamylka #1" - -#~ msgid "strict error" -#~ msgstr "niedapuščaĺnaja pamylka" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/bg/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/bg/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 1bc6410e..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/bg/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/bg/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/bg/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 54b0b847..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/bg/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,323 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2020-10-14 10:02+0000\n" -"Last-Translator: Пламен \n" -"Language-Team: Bulgarian \n" -"Language: bg\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.3-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Все още не е внедрена." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"Беше открито ново изявление, но не и разграничител между него и предишния." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "Липсва запетая пред началото на нова операция alter." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Неизвестна промяна на операцията." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "%1$d стойности бяха очаквани, но бяха намерени %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "Очаква се отваряща скоба последвана от списък стойности." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Очаква се отваряща скоба." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Неочаквана ключова дума." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Неочакван край на израза CASE" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "Потенциален дублиращ се псевдоним на изявата на CASE." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "Псевдоним, очакван след AS, но получи " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Преди това е открит псевдоним." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "Псевдоним се очакваше след AS." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Очакваше се име на символ! Запазената ключова дума не може да се използва " -"като име на колона без обратни кавички." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Очаква се име на символ!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Очакваше се запетая или затваряща скоба." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "No rows selected" -msgid "An expression was expected." -msgstr "Няма върнати редове" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "No tables selected." -msgid "An alias was expected." -msgstr "Няма избрани таблици." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -#, fuzzy -#| msgid "Unexpected characters on line %s." -msgid "Unexpected token." -msgstr "Неочаквани знаци на ред %s." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK expression." -msgstr "В началото на таблицата" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The old name of the table was expected." -msgstr "Броят отворени таблици." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The new name of the table was expected." -msgstr "Броят отворени таблици." - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The row has been deleted." -msgid "A rename operation was expected." -msgstr "Редът беше изтрит" - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "като регулярен израз" - -#: src/Lexer.php:274 -#, fuzzy -#| msgid "Unexpected characters on line %s." -msgid "Unexpected character." -msgstr "Неочаквани знаци на ред %s." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, fuzzy, php-format -#| msgid "Event %1$s has been created." -msgid "Ending quote %1$s was expected." -msgstr "Събитието %1$s беше създадено." - -#: src/Lexer.php:1056 -#, fuzzy -#| msgid "Table name template" -msgid "Variable name was expected." -msgstr "Шаблон за име на таблица" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected beginning of statement." -msgstr "В началото на таблицата" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Keyword at end of statement." -msgstr "В началото на таблицата" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected ordering of clauses." -msgstr "В началото на таблицата" - -#: src/Statements/CreateStatement.php:549 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The name of the entity was expected." -msgstr "Броят отворени таблици." - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "Table name template" -msgid "A table name was expected." -msgstr "Шаблон за име на таблица" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The row has been deleted." -msgid "At least one column definition was expected." -msgstr "Редът беше изтрит" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK statement." -msgstr "В началото на таблицата" - -#: src/Statements/PurgeStatement.php:138 -#, fuzzy -#| msgid "Unexpected characters on line %s." -msgid "Unexpected keyword" -msgstr "Неочаквани знаци на ред %s." - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The name of the CTE was expected." -msgstr "Броят отворени таблици." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "No rows selected" -msgid "AS keyword was expected." -msgstr "Няма върнати редове" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "Subquery of the CTE was expected." -msgstr "Броят отворени таблици." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of the WITH CTE." -msgstr "В началото на таблицата" - -#, fuzzy -#~| msgid "At Beginning of Table" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "В началото на таблицата" - -#, fuzzy -#~| msgid "errors." -#~ msgid "error #1" -#~ msgstr "грешки." - -#, fuzzy -#~| msgid "Gather errors" -#~ msgid "strict error" -#~ msgstr "Събиране на грешки" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/bn/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/bn/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 52623048..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/bn/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/bn/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/bn/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 7b130a14..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/bn/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,329 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2021-03-02 18:02+0000\n" -"Last-Translator: Nokib Sarkar \n" -"Language-Team: Bengali \n" -"Language: bn\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Weblate 4.5\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "এখনো বাস্তবায়িত হয়নি।" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"একটি নতুন বিবৃতি পাওয়া গেছে, তবে এটি এবং পূর্ববর্তীটির মধ্যে কোনও বিভাজক নেই।" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "নতুন অল্টার অপারেশন শুরুর আগে কমা খুঁজে পাওয়া যায় নি।" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -#, fuzzy -#| msgid "Unexpected characters on line %s." -msgid "Unexpected keyword." -msgstr "%s লাইনে অপ্রত্যাশিত চিহ্ন।" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected after AS." -msgstr "ডাটাবেইজ নিবার্চন করা হয়নি।" - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -#| msgid "Table name template" -msgid "A symbol name was expected!" -msgstr "টেবলের নামের নকশা" - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "No databases selected." -msgid "A comma or a closing bracket was expected." -msgstr "ডাটাবেইজ নিবার্চন করা হয়নি।" - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "No rows selected" -msgid "An expression was expected." -msgstr "কোন রো নির্বাচন করা হয় নাই" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected." -msgstr "ডাটাবেইজ নিবার্চন করা হয়নি।" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -#, fuzzy -#| msgid "Unexpected characters on line %s." -msgid "Unexpected token." -msgstr "%s লাইনে অপ্রত্যাশিত চিহ্ন।" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK expression." -msgstr "টেবিলের শুরুতে" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The old name of the table was expected." -msgstr "খোলা টেবিলের সংখ্যা।" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The new name of the table was expected." -msgstr "খোলা টেবিলের সংখ্যা।" - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The row has been deleted." -msgid "A rename operation was expected." -msgstr "রো টি মুছা হয়েছে।" - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "রেগুলার এক্সপ্রেশনের মত" - -#: src/Lexer.php:274 -#, fuzzy -#| msgid "Unexpected characters on line %s." -msgid "Unexpected character." -msgstr "%s লাইনে অপ্রত্যাশিত চিহ্ন।" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, fuzzy, php-format -#| msgid "Event %1$s has been created." -msgid "Ending quote %1$s was expected." -msgstr "ইভেন্ট %1$s তৈরী হয়েছে।" - -#: src/Lexer.php:1056 -#, fuzzy -#| msgid "Table name template" -msgid "Variable name was expected." -msgstr "টেবলের নামের নকশা" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected beginning of statement." -msgstr "টেবিলের শুরুতে" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Keyword at end of statement." -msgstr "টেবিলের শুরুতে" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected ordering of clauses." -msgstr "টেবিলের শুরুতে" - -#: src/Statements/CreateStatement.php:549 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The name of the entity was expected." -msgstr "খোলা টেবিলের সংখ্যা।" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "Table name template" -msgid "A table name was expected." -msgstr "টেবলের নামের নকশা" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The row has been deleted." -msgid "At least one column definition was expected." -msgstr "রো টি মুছা হয়েছে।" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK statement." -msgstr "টেবিলের শুরুতে" - -#: src/Statements/PurgeStatement.php:138 -#, fuzzy -#| msgid "Unexpected characters on line %s." -msgid "Unexpected keyword" -msgstr "%s লাইনে অপ্রত্যাশিত চিহ্ন।" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The name of the CTE was expected." -msgstr "খোলা টেবিলের সংখ্যা।" - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "No rows selected" -msgid "AS keyword was expected." -msgstr "কোন রো নির্বাচন করা হয় নাই" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "Subquery of the CTE was expected." -msgstr "খোলা টেবিলের সংখ্যা।" - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of the WITH CTE." -msgstr "টেবিলের শুরুতে" - -#, fuzzy -#~| msgid "At Beginning of Table" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "টেবিলের শুরুতে" - -#, fuzzy -#~| msgid "errors." -#~ msgid "error #1" -#~ msgstr "ভুলসমূহ" - -#, fuzzy -#~| msgid "Gather errors" -#~ msgid "strict error" -#~ msgstr "ভুলসমূহ জড়ো" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/br/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/br/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 284f532c..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/br/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/br/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/br/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 1a260c3d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/br/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,318 +0,0 @@ -# phpMyAdmin translation. -# Copyright (C) 2003 - 2011 phpMyAdmin devel team -# This file is distributed under the same license as the phpMyAdmin package. -# FIRST AUTHOR , YEAR. -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2014-03-28 11:07+0200\n" -"Last-Translator: Michal Čihař \n" -"Language-Team: Breton \n" -"Language: br\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 1.9-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "No rows selected" -msgid "An alias was expected after AS." -msgstr "N'eus bet diuzet linenn ebet" - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -#| msgid "Table name template" -msgid "A symbol name was expected!" -msgstr "Patrom anv taolenn" - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "No rows selected" -msgid "A comma or a closing bracket was expected." -msgstr "N'eus bet diuzet linenn ebet" - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "No rows selected" -msgid "An expression was expected." -msgstr "N'eus bet diuzet linenn ebet" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "No rows selected" -msgid "An alias was expected." -msgstr "N'eus bet diuzet linenn ebet" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "Number of inserted rows" -msgid "Unexpected end of LOCK expression." -msgstr "Niver a linennoù da ensoc'hañ" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The bookmark has been deleted." -msgid "A rename operation was expected." -msgstr "Diverket eo bet ar sined." - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "evel un droienn reoliek" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, fuzzy, php-format -#| msgid "Routine %1$s has been created." -msgid "Ending quote %1$s was expected." -msgstr "Krouet eo bet an argerzh %1s." - -#: src/Lexer.php:1056 -#, fuzzy -#| msgid "Table name template" -msgid "Variable name was expected." -msgstr "Patrom anv taolenn" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "Number of inserted rows" -msgid "Unexpected beginning of statement." -msgstr "Niver a linennoù da ensoc'hañ" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "Number of inserted rows" -msgid "Keyword at end of statement." -msgstr "Niver a linennoù da ensoc'hañ" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "Number of inserted rows" -msgid "Unexpected ordering of clauses." -msgstr "Niver a linennoù da ensoc'hañ" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "Table name template" -msgid "A table name was expected." -msgstr "Patrom anv taolenn" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The bookmark has been deleted." -msgid "At least one column definition was expected." -msgstr "Diverket eo bet ar sined." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "Number of inserted rows" -msgid "Unexpected end of LOCK statement." -msgstr "Niver a linennoù da ensoc'hañ" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "Table name template" -msgid "The name of the CTE was expected." -msgstr "Patrom anv taolenn" - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "No rows selected" -msgid "AS keyword was expected." -msgstr "N'eus bet diuzet linenn ebet" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "Routine %1$s has been created." -msgid "Subquery of the CTE was expected." -msgstr "Krouet eo bet an argerzh %1s." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Number of inserted rows" -msgid "Unexpected end of the WITH CTE." -msgstr "Niver a linennoù da ensoc'hañ" - -#, fuzzy -#~| msgid "Number of inserted rows" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Niver a linennoù da ensoc'hañ" - -#, fuzzy -#~| msgid "Error" -#~ msgid "error #1" -#~ msgstr "Fazi" - -#, fuzzy -#~| msgid "Gather errors" -#~ msgid "strict error" -#~ msgstr "Dastum ar fazioù" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/brx/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/brx/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index fb9eec42..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/brx/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/brx/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/brx/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 3d924cc1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/brx/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,264 +0,0 @@ -# phpMyAdmin translation. -# Copyright (C) 2003 - 2015 phpMyAdmin devel team -# This file is distributed under the same license as the phpMyAdmin package. -# Automatically generated, 2015. -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2015-09-04 09:33+0200\n" -"Last-Translator: Michal Čihař \n" -"Language-Team: Bodo \n" -"Language: brx\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Weblate 2.4-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "" - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "" - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "" - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "" - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "" - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "" - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "" - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "" - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/bs/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/bs/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index c2bc7bb1..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/bs/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/bs/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/bs/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 5e06bdd0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/bs/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,309 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2015-10-15 11:31+0200\n" -"Last-Translator: Michal Čihař \n" -"Language-Team: Bosnian \n" -"Language: bs\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " -"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" -"X-Generator: Weblate 2.5-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected after AS." -msgstr "Nije izabrana ni jedna baza." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -msgid "A symbol name was expected!" -msgstr "Šablon imena datoteke" - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "No databases selected." -msgid "A comma or a closing bracket was expected." -msgstr "Nije izabrana ni jedna baza." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "No databases selected." -msgid "An expression was expected." -msgstr "Nije izabrana ni jedna baza." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected." -msgstr "Nije izabrana ni jedna baza." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK expression." -msgstr "Na početku tabele" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The row has been deleted." -msgid "A rename operation was expected." -msgstr "Red je obrisan" - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "kao regularni izraz" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, fuzzy, php-format -msgid "Ending quote %1$s was expected." -msgstr "Tabela %s je odbačena" - -#: src/Lexer.php:1056 -#, fuzzy -msgid "Variable name was expected." -msgstr "Šablon imena datoteke" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected beginning of statement." -msgstr "Na početku tabele" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Keyword at end of statement." -msgstr "Na početku tabele" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected ordering of clauses." -msgstr "Na početku tabele" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -msgid "A table name was expected." -msgstr "Šablon imena datoteke" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The row has been deleted." -msgid "At least one column definition was expected." -msgstr "Red je obrisan" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK statement." -msgstr "Na početku tabele" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -msgid "The name of the CTE was expected." -msgstr "Šablon imena datoteke" - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "No databases selected." -msgid "AS keyword was expected." -msgstr "Nije izabrana ni jedna baza." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -msgid "Subquery of the CTE was expected." -msgstr "Tabela %s je odbačena" - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of the WITH CTE." -msgstr "Na početku tabele" - -#, fuzzy -#~| msgid "At Beginning of Table" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Na početku tabele" - -#, fuzzy -#~| msgid "Error" -#~ msgid "error #1" -#~ msgstr "Greška" - -#, fuzzy -#~| msgid "Query type" -#~ msgid "strict error" -#~ msgstr "Vrsta upita" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ca/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ca/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index ee5229ff..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ca/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ca/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ca/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 95597c41..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ca/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,287 +0,0 @@ -# Automatically generated <>, 2010. -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Catalan \n" -"Language: ca\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Encara no implementat." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"S'ha trobat una sentència nova, però no hi ha cap delimitador entre aquesta " -"i l'anterior." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Operació de modificació no reconeguda." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "S'esperaven %1$d valors, però s'han trobat %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "S'esperava un claudàtor d'obertura seguit per un conjunt de valors." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "S'esperava un claudàtor d'obertura." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Paraula clau no esperada." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Final inesperat d'expressió CASE" - -#: src/Components/CaseExpression.php:212 -#, fuzzy -#| msgid "Unexpected end of CASE expression" -msgid "Potential duplicate alias of CASE expression." -msgstr "Final inesperat d'expressió CASE" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "S'ha trobat un àlies anteriorment." - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "An alias was expected." -msgid "An alias was expected after AS." -msgstr "S'esperava un àlies." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"S'esperava un nom de símbol! No es pot utilitzar una paraula clau reservada " -"com a nom de columna sense les cometes invertides." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "S'esperava un nom de símbol!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "S'esperava una coma o un claudàtor de tancament." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "S'esperava un claudàtor de tancament." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Tipus de dades desconegut." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "S'esperava una expressió." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "S'esperava un àlies." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Punt inesperat." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Testimoni no esperat." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "S'esperava un desplaçament." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Final inesperat d'expressió LOCK." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Aquesta opció està en conflicte amb \"%1$s\"." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "S'esperava el nom antic de la taula." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "S'esperava la paraula clau \"TO\"." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "S'esperava el nom nou de la taula." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "S'esperava una operació de canvi de nom." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Expressió no trobada." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Caràcter no esperat." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "S'esperaven espais en blanc abans del delimitador." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "S'esperava un delimitador." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "S'esperava una cometa de tancament %1$s." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "S'esperava un nom de variable." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Començament no esperat de sentència." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Tipus de sentència no reconegut." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "No s'ha iniciat cap transacció anteriorment." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Aquest tipus de clàusula s'ha analitzat anteriorment." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Paraula clau no reconeguda." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Paraula clau al final de la sentència." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Ordre de condicions no esperat." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "S'esperava el nom de l'entitat." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "S'esperava un nom de taula." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "S'esperava al menys la definició d'una columna." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "S'esperava una paraula clau \"RETURNS\"." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Aquest tipus de clàusula no és vàlid en consultes de diverses taules." - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of LOCK statement." -msgstr "Començament no esperat de sentència." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Paraula clau no esperada" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "The name of the CTE was expected." -msgstr "S'esperava el nom de l'entitat." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "A \"RETURNS\" keyword was expected." -msgid "AS keyword was expected." -msgstr "S'esperava una paraula clau \"RETURNS\"." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "Subquery of the CTE was expected." -msgstr "S'esperava el nom de l'entitat." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of the WITH CTE." -msgstr "Començament no esperat de sentència." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Final inesperat d'expressió LOCK." - -#~ msgid "error #1" -#~ msgstr "error #1" - -#~ msgid "strict error" -#~ msgstr "Error estricte" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ckb/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ckb/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 953be3cc..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ckb/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ckb/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ckb/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 5fc7122e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ckb/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,310 +0,0 @@ -# phpMyAdmin translation. -# Copyright (C) 2003 - 2012 phpMyAdmin devel team -# This file is distributed under the same license as the phpMyAdmin package. -# Automatically generated, 2012. -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2015-11-20 15:47+0000\n" -"Last-Translator: Dana Akram \n" -"Language-Team: Kurdish Sorani \n" -"Language: ckb\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 2.5-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "No tables selected." -msgid "An alias was expected after AS." -msgstr "هیچ خشتەیەک هەڵنەبژێردراوە." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -#| msgid "No tables selected." -msgid "A symbol name was expected!" -msgstr "هیچ خشتەیەک هەڵنەبژێردراوە." - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "No tables selected." -msgid "A comma or a closing bracket was expected." -msgstr "هیچ خشتەیەک هەڵنەبژێردراوە." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "No rows selected" -msgid "An expression was expected." -msgstr "هیچ ڕیزێک هەڵنەبژێراوە" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "No tables selected." -msgid "An alias was expected." -msgstr "هیچ خشتەیەک هەڵنەبژێردراوە." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "Number of rows" -msgid "Unexpected end of LOCK expression." -msgstr "ژمارەی ڕیزەکان" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The row has been deleted." -msgid "A rename operation was expected." -msgstr "ڕیزەکە سڕایەوە" - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "Versions" -msgid "Missing expression." -msgstr "وەشانەکان" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "Number of rows" -msgid "Unexpected beginning of statement." -msgstr "ژمارەی ڕیزەکان" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "Number of rows" -msgid "Keyword at end of statement." -msgstr "ژمارەی ڕیزەکان" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "Number of rows" -msgid "Unexpected ordering of clauses." -msgstr "ژمارەی ڕیزەکان" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "No tables selected." -msgid "A table name was expected." -msgstr "هیچ خشتەیەک هەڵنەبژێردراوە." - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The row has been deleted." -msgid "At least one column definition was expected." -msgstr "ڕیزەکە سڕایەوە" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "Number of rows" -msgid "Unexpected end of LOCK statement." -msgstr "ژمارەی ڕیزەکان" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "No tables selected." -msgid "The name of the CTE was expected." -msgstr "هیچ خشتەیەک هەڵنەبژێردراوە." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "No rows selected" -msgid "AS keyword was expected." -msgstr "هیچ ڕیزێک هەڵنەبژێراوە" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "No tables selected." -msgid "Subquery of the CTE was expected." -msgstr "هیچ خشتەیەک هەڵنەبژێردراوە." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Number of rows" -msgid "Unexpected end of the WITH CTE." -msgstr "ژمارەی ڕیزەکان" - -#, fuzzy -#~| msgid "Number of rows" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "ژمارەی ڕیزەکان" - -#, fuzzy -#~| msgid "Error" -#~ msgid "error #1" -#~ msgstr "هەڵە" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/cs/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/cs/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 11c79c5f..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/cs/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/cs/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/cs/LC_MESSAGES/sqlparser.po deleted file mode 100644 index fe8f5af9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/cs/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,275 +0,0 @@ -# -# Michal Čihař , 2010, 2011, 2012. -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2022-10-25 08:02+0000\n" -"Last-Translator: mixeros \n" -"Language-Team: Czech \n" -"Language: cs\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" -"X-Generator: Weblate 4.14.2-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Zatím není implementováno." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "Byl nalezen nový výraz bez oddělovače od předchozího výrazu." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "Chybí čárka před začátkem nové operace změny." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Nerozpoznaná operace změny." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "Byly nalezeny %2$d hodnoty, namísto očekávaných %1$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "Byla očekávána úvodní závorka následovaná sadou hodnot." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Byla očekávána úvodní závorka." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Neočekávané klíčové slovo." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Neočekávaný konec CASE výrazu" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "Možný duplicitní alias CASE výrazu." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "Za klíčovým slovem AS byl očekáván alias, ale bylo nalezeno " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Byl nalezen alias." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "Za klíčovým slovem AS byl očekáván alias." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Byl očekáván název symbolu! Vyhrazené klíčové slovo nelze použít jako název " -"sloupce bez zpětných apostrofů." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Byl očekáván název symbolu!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Byla očekávána čárka nebo koncová závorka." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Byla očekávána koncová závorka." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Nerozpoznaný datový typ." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Byl očekáván výraz." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Byl očekáván alias." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Neočekávaná tečka." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Neočekávaný token." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "Byl očekáván offset." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Neočekávaný konec LOCK výrazu." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Tato volba koliduje s \"%1$s\"." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Byl očekáván starý název tabulky." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Bylo očekáváno klíčové slovo \"TO\"." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Byl očekáván nový název tabulky." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Byla očekávána operace přejmenování." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Chybí výraz." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Neočekávaný znak." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Před oddělovačem byla očekávána mezera." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Byl očekáván oddělovač." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Byly očekávány koncové uvozovky %1$s." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Byl očekáván název proměnné." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Neočekávaný začátek výrazu." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Nerozpoznaný typ výrazu." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Nebyla zahájena žádná transakce." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Pro tento typ klauzule proběhlo parsování." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Nerozpoznané klíčové slovo." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Klíčové slovo na konci výrazu." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Neočekávané pořadí klauzulí." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Byl očekáván název entity." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "Byl očekáván název tabulky." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Byla očekávána alespoň jedna definice sloupce." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "Bylo očekáváno klíčové slovo \"RETURNS\"." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Tento typ klauzule je ve vícetabulkových dotazech neplatný." - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "Neočekávaný konec LOCK výrazu." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Neočekávané klíčové slovo" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "Byl očekáván název CTE." - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "Bylo očekáváno klíčové slovo AS." - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "Byl očekáván dílčí dotaz CTE." - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "Neočekávaný konec WITH CTE." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Neočekávaný konec LOCK výrazu." - -#~ msgid "error #1" -#~ msgstr "chyba #1" - -#, fuzzy -#~| msgid "Gather errors" -#~ msgid "strict error" -#~ msgstr "Sbírat chyby" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/cy/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/cy/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 4b29a261..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/cy/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/cy/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/cy/LC_MESSAGES/sqlparser.po deleted file mode 100644 index f2187344..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/cy/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,318 +0,0 @@ -# phpMyAdmin translation. -# Copyright (C) 2003 - 2010 phpMyAdmin devel team -# This file is distributed under the same license as the phpMyAdmin package. -# FIRST AUTHOR , YEAR. -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2015-10-15 11:04+0200\n" -"Last-Translator: Michal Čihař \n" -"Language-Team: Welsh \n" -"Language: cy\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=6; plural=(n==0) ? 0 : (n==1) ? 1 : (n==2) ? 2 : " -"(n==3) ? 3 :(n==6) ? 4 : 5;\n" -"X-Generator: Weblate 2.5-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected after AS." -msgstr "Dim cronfeydd data wedi'u dewis." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -#| msgid "Table name template" -msgid "A symbol name was expected!" -msgstr "Templed enw tabl" - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "No databases selected." -msgid "A comma or a closing bracket was expected." -msgstr "Dim cronfeydd data wedi'u dewis." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "No databases selected." -msgid "An expression was expected." -msgstr "Dim cronfeydd data wedi'u dewis." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected." -msgstr "Dim cronfeydd data wedi'u dewis." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "Show dimension of tables" -msgid "Unexpected end of LOCK expression." -msgstr "Dangos dimensiynau'r tabl" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The row has been deleted." -msgid "A rename operation was expected." -msgstr "Cafodd y rhes ei dileu" - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "fel mynegiad arferol (regular expression)" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, fuzzy, php-format -#| msgid "Database %1$s has been created." -msgid "Ending quote %1$s was expected." -msgstr "Cafodd y gronfa ddata %1$s ei chreu." - -#: src/Lexer.php:1056 -#, fuzzy -#| msgid "Table name template" -msgid "Variable name was expected." -msgstr "Templed enw tabl" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "Show dimension of tables" -msgid "Unexpected beginning of statement." -msgstr "Dangos dimensiynau'r tabl" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "Show dimension of tables" -msgid "Keyword at end of statement." -msgstr "Dangos dimensiynau'r tabl" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "Show dimension of tables" -msgid "Unexpected ordering of clauses." -msgstr "Dangos dimensiynau'r tabl" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "Table name template" -msgid "A table name was expected." -msgstr "Templed enw tabl" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The row has been deleted." -msgid "At least one column definition was expected." -msgstr "Cafodd y rhes ei dileu" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "Show dimension of tables" -msgid "Unexpected end of LOCK statement." -msgstr "Dangos dimensiynau'r tabl" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "Table name template" -msgid "The name of the CTE was expected." -msgstr "Templed enw tabl" - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "No databases selected." -msgid "AS keyword was expected." -msgstr "Dim cronfeydd data wedi'u dewis." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "Subquery of the CTE was expected." -msgstr "Cafodd y gronfa ddata %1$s ei chreu." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Show dimension of tables" -msgid "Unexpected end of the WITH CTE." -msgstr "Dangos dimensiynau'r tabl" - -#, fuzzy -#~| msgid "Show dimension of tables" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Dangos dimensiynau'r tabl" - -#, fuzzy -#~| msgid "Error" -#~ msgid "error #1" -#~ msgstr "Gwall" - -#, fuzzy -#~| msgid "Query" -#~ msgid "strict error" -#~ msgstr "Ymholiad" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/da/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/da/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index f408468a..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/da/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/da/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/da/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 99d96d1f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/da/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,288 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Danish \n" -"Language: da\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Endnu ikke implementeret." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"Et nyt statement blev fundet, men der var ingen adskillelsestegn mellem det " -"og det foregående." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Ukendt alter opgave." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "%1$d værdier var ventet, men fandt %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "En kantet venstreparentes efterfulgt af et sæt værdier blev forventet." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "En kantet venstreparantes var forventet." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Uventet nøgleord." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Uventet afslutning af CASE udtryk" - -#: src/Components/CaseExpression.php:212 -#, fuzzy -#| msgid "Unexpected end of CASE expression" -msgid "Potential duplicate alias of CASE expression." -msgstr "Uventet afslutning af CASE udtryk" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Et alias er fundet tidligere." - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "An alias was expected." -msgid "An alias was expected after AS." -msgstr "Et alias var verntet." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Et symbolnavn var ventet! Et reserveret nøgleord kan ikke bruges som et " -"feltnavn uden backquotes." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Et symbol var ventet!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Et komma eller lukke parentes var ventet." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "En kantet højreparantes var ventet." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Ukendt datatype." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Et udtryk var ventet." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Et alias var verntet." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Uventet punktum." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Uventet token." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "En forskydning var ventet." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Uventet afslutning af LOCK udtryk." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Denne indstilling er i konflikt med \"%1$s\"." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Tabellens gamle navn var ventet." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Nøgleordet \"TO\" var forventet." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Tabellens nye navn var ventet." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "En omdøbsopgave var ventet." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Manglende udtryk." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Uventet karakter." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Forventede whitespace(s) før adskillelsestegn." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Forventede adskillelsestegn." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Slut quote %1$s var ventet." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Variabelnavn var ventet." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Uventet start på statement." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Ukendt type af statement." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Ingen transaktion er blevet startet tidligere." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Denne type af sætningskonstruktion er tidligere blevet parset." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Ukendt nøgleord." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Nøgleord i slutningen af udtryk." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Uventet clause rækkefølge." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Enhedens navn var ventet." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "Et tabelnavn var ventet." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Mindst en kolonne definition var ventet." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "Et \"RETURNS\" nøgleord var forventet." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" -"Denn type af sætningskonstruktion er ikke gyldig i multitabel forespørgsler." - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of LOCK statement." -msgstr "Uventet start på statement." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Uventet nøgleord" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "The name of the CTE was expected." -msgstr "Enhedens navn var ventet." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "A \"RETURNS\" keyword was expected." -msgid "AS keyword was expected." -msgstr "Et \"RETURNS\" nøgleord var forventet." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "Subquery of the CTE was expected." -msgstr "Enhedens navn var ventet." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of the WITH CTE." -msgstr "Uventet start på statement." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Uventet afslutning af LOCK udtryk." - -#~ msgid "error #1" -#~ msgstr "fejl #1" - -#~ msgid "strict error" -#~ msgstr "stringent fejl" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/de/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/de/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 3a0ea389..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/de/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/de/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/de/LC_MESSAGES/sqlparser.po deleted file mode 100644 index c2ac523c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/de/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,274 +0,0 @@ -# Automatically generated <>, 2010. -msgid "" -msgstr "" -"Project-Id-Version: phpMyAdmin-docs 4.0.0-dev\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2022-03-19 21:46+0000\n" -"Last-Translator: Justin Nogossek \n" -"Language-Team: German \n" -"Language: de\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.12-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Noch nicht implementiert." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"Eine neue Anweisung wurde gefunden, aber kein Trennzeichen zwischen ihm und " -"dem vorhergehenden." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "Fehlendes Komma vor einer neuen ALTER-Operation." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Unerkannte ALTER-Operation." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "%1$d Werte erwartet, aber %2$d gefunden." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" -"Eine öffnende Klammer, gefolgt von einer Liste von Werten, wurde erwartet." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Eine öffnende Klammer wurde erwartet." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Unerwartetes Schlüsselwort." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Unerwartetes Ende eines CASE Ausdrucks" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "Möglicher doppelter Alias eines CASE Ausdrucks." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "Ein Alias wurde nach AS erwartet, aber stattdessen " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Ein Alias wurde zuvor gefunden." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "Ein Alias wurde nach AS erwartet." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Ein Symbolname wurde erwartet! Ein reserviertes Schlüsselwort kann nicht " -"ohne Backquotes als Tabellenname verwendet werden." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Ein Symbolname wurde erwartet!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Ein Komma oder eine schließende Klammer wurde erwartet." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Eine schließende Klammer wurde erwartet." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Unerkannter Datentyp." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Ein Ausdruck wurde erwartet." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Ein Alias wurde erwartet." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Unerwarteter Punkt." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Unerwartetes Zeichen." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "Ein Offset wurde erwartet." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Unerwartetes Ende eines LOCK-Ausdrucks." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Diese Option widerspricht „%1$s“." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Der ursprüngliche Tabellenname wurde erwartet." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Schlüsselwort „TO“ wurde erwartet." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Der neue Tabellenname wurde erwartet." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Eine Umbenennungsoperation wurde erwartet." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Fehlender Ausdruck." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Unerwartetes Zeichen." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Erwartete Whitespace vor dem Trennzeichen." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Erwartete Trennzeichen." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Schließendes Anführungszeichen %1$s wurde erzeugt." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Variablenname wurde erwartet." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Unerwarteter Statement-Anfang." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Unerkannte Statement-Typ." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Bisher wurde keine Transaktion gestartet." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Diese Art von Klausel wurde zuvor analysiert." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Unerkanntes Schlüsselwort." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Schlüsselwort am Ende der Anweisung." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Unerwartete Datensatzanforderung." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Der Name der Entität wurde erwartet." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "Tabellenname wurde erwartet." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Mindestens eine Felddefinition wurde erwartet." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "Ein „RETURNS“-Schlüsselwort wurde erwartet." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Diese Art von Klausel ist in Mehr-Tabellen-Anfragen nicht zulässig." - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "Unerwartetes Ende einer LOCK-Anweisung." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Unerwartetes Schlüsselwort" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "Der Name des CTE wurde erwartet." - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "Das Schlüsselwort AS wurde erwartet." - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "Es wurde eine Unterabfrage des CTE erwartet." - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "Unerwartetes Ende des WITH CTE." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Unerwartetes Ende eines LOCK-Ausdrucks." - -#~ msgid "error #1" -#~ msgstr "Fehler #1" - -#~ msgid "strict error" -#~ msgstr "strikter Fehler" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/el/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/el/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index baafdd93..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/el/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/el/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/el/LC_MESSAGES/sqlparser.po deleted file mode 100644 index c285b107..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/el/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,281 +0,0 @@ -# Automatically generated <>, 2010. -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Greek \n" -"Language: el\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Δεν εφαρμόστηκε ακόμα." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"Βρέθηκε μια νέα δήλωση, αλλά χωρίς διαχωριστικό μεταξύ της και της " -"προηγούμενης." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "Λείπει κόμμα πριν από την έναρξη μιας νέας λειτουργίας αλλαγής." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Μη αναγνωρισμένη λειτουργία αλλαγής." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "Αναμενόταν %1$d τιμές, αλλά βρέθηκαν %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "Αναμενόταν μια ανοιχτή αγκύλη ακολουθούμενη από ένα σύνολο τιμών." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Αναμενόταν μια ανοιχτή αγκύλη." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Μη αναμενόμενη λέξη-κλειδί." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Μη αναμενόμενο τέλος της έκφρασης CASE" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "Μη αναμενόμενο τέλος της έκφρασης CASE." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "Ένα ψευδώνυμο αναμενόταν μετά το AS αλλά πήρε " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Βρέθηκε μια ετικέτα προηγουμένως." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "Ένα ψευδώνυμο αναμενόταν μετά το AS." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Αναμενόταν ένα όνομα συμβόλου! Μια δεσμευμένη λέξη-κλειδί δεν μπορεί να " -"χρησιμοποιηθεί ως όνομα στήλης χωρίς εισαγωγικά." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Αναμενόταν όνομα συμβόλου!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Αναμενόταν ένα κόμμα ή μια κλειστή αγκύλη." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Αναμενόταν κλείσιμο αγκύλης." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Μη αναγνωρισμένος τύπος δεδομένων." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Αναμενόταν μια έκφραση." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Αναμενόταν μια ετικέτα." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Μη αναμενόμενη τελεία." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Μη αναμενόμενο τεκμήριο." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "Αναμενόταν μια αντιστάθμιση." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Μη αναμενόμενο τέλος της έκφρασης LOCK." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Αυτή η επιλογή έχει διαίνεξη με το «%1$s»." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Αναμενόταν το παλαιό όνομα του πίνακα." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Αναμενόταν η λέξη-κλειδί «TO»." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Αναμενόταν το νέο όνομα του πίνακα." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Αναμενόταν μια λειτουργία μετονομασίας." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Απολεσθείσα έκφραση." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Μη αναμενόμενος χαρακτήρας." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Αναμενόταν λευκό(ά) διάστημα(τα) πριν τον διαχωριστή." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Αναμενόταν διαχωριστής." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Αναμενόταν τελικό εισαγωγικό %1$s." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Αναμενόταν όνομα μεταβλητής." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Μη αναμενόμενη έναρξη δήλωσης." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Μη αναγνωρισμένος τύπος δήλωσης." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Καμιά συναλλαγή δεν ξεκίνησε προηγουμένως." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Αυτός ο τύπος ρύτρας έχει αναλυθεί προηγουμένως." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Μη αναγνωρισμένη λέξη κλειδί." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Λέξη-κλειδί στο τέλος της δήλωσης." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Μη αναμενόμενη ταξινόμηση δηλώσεων." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Αναμενόταν το όνομα της οντότητας." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "Αναμενόταν όνομα πίνακα." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Αναμενόταν τουλάχιστον ένας ορισμός πεδίου." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "Αναμενόταν μια λέξη-κλειδί «RETURNS»." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Αυτός ο τύπος ρύτρας δεν είναι έγκυρος σε ερωτήματα πολλαπλών πινάκων." - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "Μη αναμενόμενο τέλος της δήλωσης LOCK." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Μη αναμενόμενη λέξη-κλειδί" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "The name of the CTE was expected." -msgstr "Αναμενόταν το όνομα της οντότητας." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "A \"RETURNS\" keyword was expected." -msgid "AS keyword was expected." -msgstr "Αναμενόταν μια λέξη-κλειδί «RETURNS»." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "Subquery of the CTE was expected." -msgstr "Αναμενόταν το όνομα της οντότητας." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected end of LOCK statement." -msgid "Unexpected end of the WITH CTE." -msgstr "Μη αναμενόμενο τέλος της δήλωσης LOCK." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Μη αναμενόμενο τέλος της έκφρασης LOCK." - -#~ msgid "error #1" -#~ msgstr "σφάλμα #1" - -#~ msgid "strict error" -#~ msgstr "περιορισμένο σφάλμα" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/en_GB/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/en_GB/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index ebb14f0f..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/en_GB/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/en_GB/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/en_GB/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 9defa563..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/en_GB/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,274 +0,0 @@ -# Automatically generated <>, 2010. -# Robert Readman , 2012. -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: English (United Kingdom) \n" -"Language: en_GB\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Not implemented yet." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"A new statement was found, but no delimiter between it and the previous one." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "Missing comma before start of a new alter operation." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Unrecognised alter operation." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "%1$d values were expected, but found %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "An opening bracket followed by a set of values was expected." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "An opening bracket was expected." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Unexpected keyword." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Unexpected end of CASE expression" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "Potential duplicate alias of CASE expression." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "An alias expected after AS but got " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "An alias was previously found." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "An alias was expected after AS." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"A symbol name was expected! A reserved keyword cannot be used as a column " -"name without backquotes." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "A symbol name was expected!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "A comma or a closing bracket was expected." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "A closing bracket was expected." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Unrecognised data type." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "An expression was expected." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "An alias was expected." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Unexpected dot." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Unexpected token." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "An offset was expected." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Unexpected end of LOCK expression." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "This option conflicts with \"%1$s\"." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "The old name of the table was expected." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Keyword \"TO\" was expected." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "The new name of the table was expected." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "A rename operation was expected." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Missing expression." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Unexpected character." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Expected whitespace(s) before delimiter." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Expected delimiter." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Ending quote %1$s was expected." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Variable name was expected." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Unexpected beginning of statement." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Unrecognised statement type." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "No transaction was previously started." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "This type of clause was previously parsed." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Unrecognised keyword." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Keyword at end of statement." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Unexpected ordering of clauses." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "The name of the entity was expected." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "A table name was expected." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "At least one column definition was expected." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "A \"RETURNS\" keyword was expected." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "This type of clause is not valid in Multi-table queries." - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "Unexpected end of LOCK statement." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Unexpected keyword" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "The name of the CTE was expected." - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "AS keyword was expected." - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "Subquery of the CTE was expected." - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "Unexpected end of the WITH CTE." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Unexpected end of LOCK expression." - -#~ msgid "error #1" -#~ msgstr "error #1" - -#~ msgid "strict error" -#~ msgstr "strict error" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/eo/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/eo/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index aa2b4d5c..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/eo/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/eo/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/eo/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 3ca26354..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/eo/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,266 +0,0 @@ -# phpMyAdmin translation. -# Copyright (C) 2003 - 2014 phpMyAdmin devel team -# This file is distributed under the same license as the phpMyAdmin package. -# Automatically generated, 2014. -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2016-12-21 15:58+0000\n" -"Last-Translator: Michal Čihař \n" -"Language-Team: Esperanto \n" -"Language: eo\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 2.10\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "" - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "" - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "" - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "" - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "" - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "" - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "" - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "" - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "" - -#~ msgid "error #1" -#~ msgstr "eraro #1" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/es/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/es/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 973c3c63..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/es/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/es/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/es/LC_MESSAGES/sqlparser.po deleted file mode 100644 index d4ff5e83..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/es/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,274 +0,0 @@ -# Automatically generated <>, 2010. -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2022-04-19 18:11+0000\n" -"Last-Translator: Cristian Alexander Avila González \n" -"Language-Team: Spanish \n" -"Language: es\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.12-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Aún no implementado." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"Se encontró una nueva declaración, pero no hay delimitador entre éste y el " -"anterior." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "Falta la coma antes de comenzar la operación de modificación." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Operación de modificación desconocida." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "Se esperaban %1$d valores, pero encontró %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" -"Se esperaba un corchete de apertura seguido por un conjunto de valores." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Se esperaba un corchete de apertura." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Palabra clave inesperada." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Final inesperado de expresión CASE" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "Posible alias duplicado de la expresión CASE." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "Un alias se esperaba tras AS pero se obtiene " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Se encontró anteriormente un alias." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "Se esperaba un alias después de AS." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"¡Se esperaba un nombre de símbolo! Una palabra reservada no puede usarse " -"como nombre de columna sin comillas." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "¡Se esperaba un nombre de símbolo!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Se esperaba una coma o un corchete de cierre." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Se esperaba un corchete de cierre." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Tipo de dato desconocido." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Se esperaba una expresión." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Se esperaba un alias." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Punto inesperado." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Símbolo (token) inesperado." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "Se espera un desplazamiento." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Final inesperado de la expresión LOCK." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Esta opción tiene conflictos con \"%1$s\"." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Se esperaba el nombre anterior de la tabla." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Se esperaba la palabra clave \"TO\"." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Se esperaba el nuevo nombre de la tabla." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Se esperaba un cambio de nombre." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Expresión desaparecida." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Caracter inesperado." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Espacio(s) en blanco esperado(s) antes de delimitador." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Delimitador esperado." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Se esperaba terminar la cita %1$s." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Se esperaba el nombre de la variable." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Comienzo inesperado de declaración." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Tipo de declaración desconocida." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Ninguna operación se inició anteriormente." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Este tipo de cláusula se analizó previamente." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Palabra clave no reconocida." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Palabra clave al final de la sentencia." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Orden inesperado de condiciones." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Se esperaba el nombre de la entidad." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "Se esperaba un nombre de tabla." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Se esperaba la definición de al menos una columna." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "Se esperaba una palabra \"RETURNS\"." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Este tipo de cláusula no es válida en consultas multi-tabla." - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "Fin inesperado de la instrucción LOCK." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Palabra clave inesperada" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "Se esperaba el nombre del CTE." - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "Se esperaba la palabra clave AS." - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "Se esperaba subconsulta del CTE." - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "Final inesperado del CON CTE." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Final inesperado de la expresión de bloqueo." - -#~ msgid "error #1" -#~ msgstr "error #1" - -#~ msgid "strict error" -#~ msgstr "error estricto" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/et/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/et/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index cc594b59..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/et/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/et/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/et/LC_MESSAGES/sqlparser.po deleted file mode 100644 index a1aedcf5..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/et/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,273 +0,0 @@ -# -# -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2022-10-20 10:05+0000\n" -"Last-Translator: Kristjan Räts \n" -"Language-Team: Estonian \n" -"Language: et\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.14.2-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Hetkel veel rakendamata." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "Leiti uus lause, kuid selle ja talle järgneva vahelt puudub eraldaja." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "Uue ALTER operatsiooni eest puudub koma." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Tundmatu ALTER operatsioon." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "Oodati %1$d väärtust, kuid leiti %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "Oodati avanevat sulgu, millele järgnevad väärtused." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Oodati avanevat sulgu." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Ootamatu võtmesõna." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Ootamatu CASE lause lõpp" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "Võimalik topelt alias CASE lauses." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "Fraasi AS järel oodati aliast, kuid leiti " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Eelnevalt leiti alias." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "Fraasi AS taha oodati aliast." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Oodati sümboli nime! Reserveeritud võtmesõna saab kasutada veeru nimena " -"ainult siis, kui ta on ühekordsete tagurpidi jutumärkide vahel." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Oodati sümboli nime!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Oodati koma või lõpetavat sulgu." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Oodati lõpetavat sulgu." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Tundmatu andmetüüp." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Oodati avaldist." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Oodati aliast." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Ootamatu punkt." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Ootamatud märk." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "Oodati nihet." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Ootamatu LOCK lause lõpp." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "See säte põhjustab konflikti sättega \"%1$s\"." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Oodati tabeli vana nime." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Oodati võtmesõna \"TO\"." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Oodati tabeli uut nime." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Oodati ümbernimetamist." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Avaldis puudub." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Ootamatu sümbol." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Oodati eraldajale eelnevat tühemikku." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Oodati eraldajat." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Oodati lõpetavat sümbolit %1$s." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Oodati muutuja nime." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Ootamatu lause algus." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Tundmatut tüüpi lause." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Transaktsiooni ei olnud eelnevalt alustatud." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Sellist tüüpi klausel parsiti eelnevalt." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Tundmatu võtmesõna." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Võtmesõna lause lõpus." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Ootamatu lausete järjestus." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Oodati olemi nime." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "Oodati tabeli nime." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Oodati vähemalt ühe veeru kirjeldust." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "Oodati võtmesõna \"RETURNS\"." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Sellist tüüpi klausel ei ole mitme tabeli päringus kehtiv." - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "Ootamatu LOCK lause lõpp." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Ootamatu võtmesõna" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "Oodati CTE nime." - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "Oodati võtmesõna \"AS\"." - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "Oodati CTE alampäringut." - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "Ootamatu WITH CTE lõpp." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Ootamatu LOCK lause lõpp." - -#~ msgid "error #1" -#~ msgstr "viga #1" - -#~ msgid "strict error" -#~ msgstr "otsene viga" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/eu/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/eu/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 15131465..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/eu/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/eu/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/eu/LC_MESSAGES/sqlparser.po deleted file mode 100644 index ea3af0bc..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/eu/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,308 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2015-10-15 11:26+0200\n" -"Last-Translator: Michal Čihař \n" -"Language-Team: Basque \n" -"Language: eu\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 2.5-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected after AS." -msgstr "Ez dago datu-baserik aukeratuta." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -msgid "A symbol name was expected!" -msgstr "Txantiloi-fitxategiaren izena" - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "No databases selected." -msgid "A comma or a closing bracket was expected." -msgstr "Ez dago datu-baserik aukeratuta." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "No databases selected." -msgid "An expression was expected." -msgstr "Ez dago datu-baserik aukeratuta." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected." -msgstr "Ez dago datu-baserik aukeratuta." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK expression." -msgstr "Taularen hasieran" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The row has been deleted." -msgid "A rename operation was expected." -msgstr "Errenkada ezabatua izan da" - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "adierazpen erregular moduan" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, fuzzy, php-format -msgid "Ending quote %1$s was expected." -msgstr "%s taula ezabatu egin da" - -#: src/Lexer.php:1056 -#, fuzzy -msgid "Variable name was expected." -msgstr "Txantiloi-fitxategiaren izena" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected beginning of statement." -msgstr "Taularen hasieran" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Keyword at end of statement." -msgstr "Taularen hasieran" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected ordering of clauses." -msgstr "Taularen hasieran" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -msgid "A table name was expected." -msgstr "Txantiloi-fitxategiaren izena" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The row has been deleted." -msgid "At least one column definition was expected." -msgstr "Errenkada ezabatua izan da" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK statement." -msgstr "Taularen hasieran" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -msgid "The name of the CTE was expected." -msgstr "Txantiloi-fitxategiaren izena" - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "No databases selected." -msgid "AS keyword was expected." -msgstr "Ez dago datu-baserik aukeratuta." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -msgid "Subquery of the CTE was expected." -msgstr "%s taula ezabatu egin da" - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of the WITH CTE." -msgstr "Taularen hasieran" - -#, fuzzy -#~| msgid "At Beginning of Table" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Taularen hasieran" - -#, fuzzy -#~| msgid "Error" -#~ msgid "error #1" -#~ msgstr "Errorea" - -#, fuzzy -#~| msgid "Query type" -#~ msgid "strict error" -#~ msgstr "Kontsulta mota" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/fa/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/fa/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 0d6ce529..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/fa/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/fa/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/fa/LC_MESSAGES/sqlparser.po deleted file mode 100644 index b36d5599..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/fa/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,309 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Persian \n" -"Language: fa\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "هنوز پیاده سازی نشده." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "بیانیه‌ی جدیدی یافت شد،اما هیچ محدودیتی قبل و بعد از آن یافت نشد." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "عملیاتِ تغییرِ غیر قابل تشخیص." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "مقادیر %1$d انتظار می رود، اما %2$d یافت شد." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "باید یک براکت آغازین و بعد از آن چند مقدار وجود داشته باشد." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "یک براکت آغازین باید وجود داشته باشد." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "کلمات کلیدی غیرمنتظره." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "پایان غیرمنتظره برای عبارت CASE" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "پایان ناشناخته عبارات." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected after AS." -msgstr "هیچ پایگاه داده ای انتخاب نشده است." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -#| msgid "No databases selected." -msgid "A symbol name was expected!" -msgstr "هیچ پایگاه داده ای انتخاب نشده است." - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "No databases selected." -msgid "A comma or a closing bracket was expected." -msgstr "هیچ پایگاه داده ای انتخاب نشده است." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "No rows selected" -msgid "An expression was expected." -msgstr "هیچ سطری انتخاب نشده است" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected." -msgstr "هیچ پایگاه داده ای انتخاب نشده است." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -msgid "Unexpected end of LOCK expression." -msgstr "پایان ناشناخته عبارات" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The row has been deleted." -msgid "A rename operation was expected." -msgstr "سطر حذف گرديد" - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "بعنوان مبين منظم(as regular expression)" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, fuzzy, php-format -msgid "Ending quote %1$s was expected." -msgstr "جدول %s حذف گرديد" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected beginning of statement." -msgstr "در ابتداي جدول" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Keyword at end of statement." -msgstr "در ابتداي جدول" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected ordering of clauses." -msgstr "در ابتداي جدول" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "No databases selected." -msgid "A table name was expected." -msgstr "هیچ پایگاه داده ای انتخاب نشده است." - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The row has been deleted." -msgid "At least one column definition was expected." -msgstr "سطر حذف گرديد" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK statement." -msgstr "در ابتداي جدول" - -#: src/Statements/PurgeStatement.php:138 -#, fuzzy -msgid "Unexpected keyword" -msgstr "کلمه کلیدی ناشناس" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "No databases selected." -msgid "The name of the CTE was expected." -msgstr "هیچ پایگاه داده ای انتخاب نشده است." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "No rows selected" -msgid "AS keyword was expected." -msgstr "هیچ سطری انتخاب نشده است" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -msgid "Subquery of the CTE was expected." -msgstr "جدول %s حذف گرديد" - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of the WITH CTE." -msgstr "در ابتداي جدول" - -#, fuzzy -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "پایان ناشناخته عبارات" - -#, fuzzy -#~| msgid "Error" -#~ msgid "error #1" -#~ msgstr "خطا" - -#, fuzzy -#~| msgid "Query" -#~ msgid "strict error" -#~ msgstr "پرس و جو" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/fi/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/fi/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 6e8e32b5..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/fi/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/fi/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/fi/LC_MESSAGES/sqlparser.po deleted file mode 100644 index e1418f41..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/fi/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,304 +0,0 @@ -# Automatically generated <>, 2010. -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Finnish \n" -"Language: fi\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Ei vielä toteutettu." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"Löydettiin uusi lauseke, muttei erotinta sen ja sitä edeltäneen välillä." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Tunnistamaton \"alter\"-toiminto." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "Odotettiin arvoa %1$d , mutta löydettiin %2$d." - -#: src/Components/Array2d.php:108 -#, fuzzy -msgid "An opening bracket followed by a set of values was expected." -msgstr "Odotettiin avausmerkki ja sitä odotettiin seuraavan arvoja." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Odotettiin avausmerkkiä." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Odottamaton avainsana." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Odottamaton loppu CASE-ilmaisulle" - -#: src/Components/CaseExpression.php:212 -#, fuzzy -#| msgid "Unexpected end of CASE expression" -msgid "Potential duplicate alias of CASE expression." -msgstr "Odottamaton loppu CASE-ilmaisulle" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "An alias was expected." -msgid "An alias was expected after AS." -msgstr "Odotettiin aliasta." - -#: src/Components/CreateDefinition.php:255 -#, fuzzy -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Odotettiin symbolin nimeä! Varattua avainsanaa ei voida käyttää palstan " -"nimenä ilman lainausmerkkejä." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Odotettiin symbolinimeä!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Odotettiin pilkkua tai sulkumerkkiä." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Odotettiin sulkumerkkiä." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Tunnistamaton datatyyppi." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Odotettiin ilmaisua." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Odotettiin aliasta." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Odottamaton piste." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Odottamaton merkki." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Odottamaton loppu LOCK-ilmaisulle." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Odotettiin vanhaa taulunimeä." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Odotettiin uutta taulunimeä." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Odotettiin uudelleennimeämistoimintoa." - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "regexp-haku" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Odottamatton merkki." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Odotettiin loppumerkkiä %1$s." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Odotettiin muuttujaa." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Odottamaton ilmaisun alku." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Keyword at end of statement." -msgstr "Odottamaton ilmaisun alku." - -#: src/Statement.php:555 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected ordering of clauses." -msgstr "Taulun alkuun" - -#: src/Statements/CreateStatement.php:549 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The name of the entity was expected." -msgstr "Avoinna olevien taulujen määrä." - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "Table name template" -msgid "A table name was expected." -msgstr "Taulunimen pohja" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The row has been deleted." -msgid "At least one column definition was expected." -msgstr "Rivi on nyt poistettu." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of LOCK statement." -msgstr "Odottamaton ilmaisun alku." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Odottamaton avainsana" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The name of the CTE was expected." -msgstr "Avoinna olevien taulujen määrä." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "An expression was expected." -msgid "AS keyword was expected." -msgstr "Odotettiin ilmaisua." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "Subquery of the CTE was expected." -msgstr "Avoinna olevien taulujen määrä." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of the WITH CTE." -msgstr "Odottamaton ilmaisun alku." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Odottamaton loppu LOCK-ilmaisulle." - -#, fuzzy -#~| msgid "errors." -#~ msgid "error #1" -#~ msgstr "virhettä." - -#, fuzzy -#~| msgid "Gather errors" -#~ msgid "strict error" -#~ msgstr "Kerää virheet" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/fr/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/fr/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 61b30cf6..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/fr/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/fr/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/fr/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 7654b079..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/fr/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,274 +0,0 @@ -# Automatically generated <>, 2010. -msgid "" -msgstr "" -"Project-Id-Version: phpMyAdmin-docs 4.0.0-dev\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: French \n" -"Language: fr\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Pas encore mis en œuvre." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"Un nouvel énoncé a été trouvé, mais il n'y a aucun délimiteur entre celui-ci " -"et le précédent." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "Virgule manquante avant le début d’une nouvelle opération ALTER." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Opération ALTER non reconnue." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "%1$d valeurs étaient attendues, mais %2$d ont été trouvées." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" -"Une parenthèse gauche suivie d'un ensemble de valeurs étaient attendus." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Une parenthèse gauche était attendue." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Mot clef inattendu." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Fin inattendue d'une expression CASE" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "Potentiel duplicata de l'alias d'expression CASE." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "Un alias était attendu après AS mais obtenu : " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Un alias a été constaté précédemment." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "Un alias était attendu après AS." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Un nom de symbole était attendu ! Un mot clé réservé ne peut pas servir " -"comme nom de colonne sans les apostrophes inverses." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Un nom de variable était attendu !" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Une virgule ou une parenthèse droite était attendus." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Une parenthèse droite était attendue." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Type de données non reconnu." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Une expression était attendue." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Un alias était attendu." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Point inattendu." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Jeton inattendu." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "Un décalage était prévu." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Fin inattendue de l'expression LOCK." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Cette option entre en conflit avec « %1$s »." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "L'ancien nom de la table était attendu." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Le mot clé « TO » était attendu." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Le nouveau nom de la table était attendu." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Une opération de renommage était attendue." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Expression manquante." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Caractère inattendu." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Des espaces ou tabulations étaient attendus avant le délimiteur." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Un délimiteur était attendu." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Un guillemet %1$s était attendu." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Un nom de variable était attendu." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Début d'énoncé inattendu." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Type d'énoncé non reconnu." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Aucune transaction n'a été précédemment démarrée." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Ce type de clause a été analysé précédemment." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Mot clé non reconnu." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Mot clé à la fin de l'énoncé." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Classement inattendu des clauses." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Le nom de l'entité était attendu." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "Un nom de table était attendu." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "La définition d'au moins une colonne était attendue." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "Le mot clé « RETURNS » était attendu." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Ce type de clause a été analysé précédemment." - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "Fin inattendue de l'instruction LOCK." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Mot clef inattendu" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "Le nom du CTE était attendu." - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "Le mot clé AS était attendu." - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "Une sous-requête du CTE était attendue." - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "Fin inattendue du WITH CTE." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Fin inattendue de l'expression LOCK." - -#~ msgid "error #1" -#~ msgstr "erreur #1" - -#~ msgid "strict error" -#~ msgstr "erreur stricte" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/fy/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/fy/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index e47de4b5..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/fy/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/fy/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/fy/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 0e60ae1f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/fy/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,293 +0,0 @@ -# phpMyAdmin translation. -# Copyright (C) 2003 - 2014 phpMyAdmin devel team -# This file is distributed under the same license as the phpMyAdmin package. -# Automatically generated, 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2015-12-24 23:02+0000\n" -"Last-Translator: Robin van der Vliet \n" -"Language-Team: Frisian \n" -"Language: fy\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 2.5-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "" - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "" - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "Number of tables:" -msgid "Unexpected end of LOCK expression." -msgstr "Oantal tabellen:" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "" - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "Compression" -msgid "Missing expression." -msgstr "Kompresje" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "Number of tables:" -msgid "Unexpected beginning of statement." -msgstr "Oantal tabellen:" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "Number of tables:" -msgid "Keyword at end of statement." -msgstr "Oantal tabellen:" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "Number of tables:" -msgid "Unexpected ordering of clauses." -msgstr "Oantal tabellen:" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "Number of tables:" -msgid "Unexpected end of LOCK statement." -msgstr "Oantal tabellen:" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "" - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "" - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "" - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Number of tables:" -msgid "Unexpected end of the WITH CTE." -msgstr "Oantal tabellen:" - -#, fuzzy -#~| msgid "Number of tables:" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Oantal tabellen:" - -#, fuzzy -#~| msgid "Error" -#~ msgid "error #1" -#~ msgstr "Flater" - -#, fuzzy -#~| msgid "Query error" -#~ msgid "strict error" -#~ msgstr "Queryflater" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/gl/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/gl/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 514bb51a..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/gl/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/gl/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/gl/LC_MESSAGES/sqlparser.po deleted file mode 100644 index b507e56f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/gl/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,330 +0,0 @@ -# Automatically generated <>, 2010. -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2016-01-17 22:02+0000\n" -"Last-Translator: Xosé Calvo \n" -"Language-Team: Galician \n" -"Language: gl\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 2.5-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -#, fuzzy -#| msgid "Iconic table operations" -msgid "Unrecognized alter operation." -msgstr "Operacións de táboas con iconas" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -#, fuzzy -#| msgid "Unexpected characters on line %s." -msgid "Unexpected keyword." -msgstr "Hai caracteres inesperados na liña %s." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected after AS." -msgstr "Non hai ningunha base de datos escollida." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -#| msgid "Table name template" -msgid "A symbol name was expected!" -msgstr "Modelo de nome dos ficheiros" - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "No databases selected." -msgid "A comma or a closing bracket was expected." -msgstr "Non hai ningunha base de datos escollida." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "No rows selected" -msgid "An expression was expected." -msgstr "Non hai ningunha fileira seleccionada" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected." -msgstr "Non hai ningunha base de datos escollida." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -#, fuzzy -#| msgid "Unexpected characters on line %s." -msgid "Unexpected token." -msgstr "Hai caracteres inesperados na liña %s." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK expression." -msgstr "No comezo da táboa" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The old name of the table was expected." -msgstr "O número de táboas abertas." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The new name of the table was expected." -msgstr "O número de táboas abertas." - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The row has been deleted." -msgid "A rename operation was expected." -msgstr "Eliminouse a fileira" - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "como expresión regular" - -#: src/Lexer.php:274 -#, fuzzy -#| msgid "Unexpected characters on line %s." -msgid "Unexpected character." -msgstr "Hai caracteres inesperados na liña %s." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, fuzzy, php-format -#| msgid "Event %1$s has been created." -msgid "Ending quote %1$s was expected." -msgstr "O acontecemento %1$s foi creado." - -#: src/Lexer.php:1056 -#, fuzzy -#| msgid "Table name template" -msgid "Variable name was expected." -msgstr "Modelo de nome dos ficheiros" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected beginning of statement." -msgstr "No comezo da táboa" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Keyword at end of statement." -msgstr "No comezo da táboa" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected ordering of clauses." -msgstr "No comezo da táboa" - -#: src/Statements/CreateStatement.php:549 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The name of the entity was expected." -msgstr "O número de táboas abertas." - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "Table name template" -msgid "A table name was expected." -msgstr "Modelo de nome dos ficheiros" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The row has been deleted." -msgid "At least one column definition was expected." -msgstr "Eliminouse a fileira" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK statement." -msgstr "No comezo da táboa" - -#: src/Statements/PurgeStatement.php:138 -#, fuzzy -#| msgid "Unexpected characters on line %s." -msgid "Unexpected keyword" -msgstr "Hai caracteres inesperados na liña %s." - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The name of the CTE was expected." -msgstr "O número de táboas abertas." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "No rows selected" -msgid "AS keyword was expected." -msgstr "Non hai ningunha fileira seleccionada" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "Subquery of the CTE was expected." -msgstr "O número de táboas abertas." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of the WITH CTE." -msgstr "No comezo da táboa" - -#, fuzzy -#~| msgid "At Beginning of Table" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "No comezo da táboa" - -#, fuzzy -#~| msgid "errors." -#~ msgid "error #1" -#~ msgstr "erros." - -#, fuzzy -#~| msgid "Gather errors" -#~ msgid "strict error" -#~ msgstr "Recoller os erros" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/gu/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/gu/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 550e7199..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/gu/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/gu/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/gu/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 749743f1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/gu/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,283 +0,0 @@ -# phpMyAdmin translation. -# Copyright (C) 2003 - 2015 phpMyAdmin devel team -# This file is distributed under the same license as the phpMyAdmin package. -# Automatically generated, 2016. -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Gujarati \n" -"Language: gu\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "હજુ સુધી અમલમાં નથી મુકાયુ." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "નવો નિવેદન મળ્યો હતો, પરંતુ તે અને પાછલા એક વચ્ચે કોઈ વિભાજક અક્ષરો નથી મળયા." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "આ ફેરફાર માન્ય નથી." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "%1$d આ પ્રકાર ની values અપેક્ષિત હતી, પણ મળ્યું %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "ઓપનિંગ બ્રેકેટ અપેક્ષિત હતું." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "અનપેક્ષિત કીવર્ડ." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "અનપેક્ષિત અંત CASE નિવેદન નો" - -#: src/Components/CaseExpression.php:212 -#, fuzzy -#| msgid "Unexpected end of CASE expression" -msgid "Potential duplicate alias of CASE expression." -msgstr "અનપેક્ષિત અંત CASE નિવેદન નો" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "An offset was expected." -msgid "An alias was expected after AS." -msgstr "ઓફસેટ અપેક્ષિત હતી." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "અલ્પવિરામ અથવા કલોસિંગ બ્રેકેટની અપેક્ષા હતી." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "કલોસિંગ બ્રેકેટની અપેક્ષા હતી." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "અનપેક્ષિત ડેટા પ્રકાર." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "નિવેદનની અપેક્ષા હતી." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "અનપેક્ષિત પૂર્ણ વિરામ." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "ઓફસેટ અપેક્ષિત હતી." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "અનપેક્ષિત અંત LOCK નિવેદન નો." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "ટેબલનુ જૂનું નામ અપેક્ષિત હતુ." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "કીવર્ડ \"TO\" અપેક્ષિત હતો." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "" - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "" - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "" - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "Unexpected end of CASE expression" -msgid "Unexpected end of LOCK statement." -msgstr "અનપેક્ષિત અંત CASE નિવેદન નો" - -#: src/Statements/PurgeStatement.php:138 -#, fuzzy -#| msgid "Unexpected keyword." -msgid "Unexpected keyword" -msgstr "અનપેક્ષિત કીવર્ડ." - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The old name of the table was expected." -msgid "The name of the CTE was expected." -msgstr "ટેબલનુ જૂનું નામ અપેક્ષિત હતુ." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "Keyword \"TO\" was expected." -msgid "AS keyword was expected." -msgstr "કીવર્ડ \"TO\" અપેક્ષિત હતો." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "Keyword \"TO\" was expected." -msgid "Subquery of the CTE was expected." -msgstr "કીવર્ડ \"TO\" અપેક્ષિત હતો." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected end of CASE expression" -msgid "Unexpected end of the WITH CTE." -msgstr "અનપેક્ષિત અંત CASE નિવેદન નો" - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "અનપેક્ષિત અંત LOCK નિવેદન નો." diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/he/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/he/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index a33d244d..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/he/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/he/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/he/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 46e07eb3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/he/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,272 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-28 03:41+0000\n" -"Last-Translator: Yaron Shahrabani \n" -"Language-Team: Hebrew \n" -"Language: he\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=4; plural=(n == 1) ? 0 : ((n == 2) ? 1 : ((n > 10 && " -"n % 10 == 0) ? 2 : 3));\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "לא מוטמע עדיין." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "נמצא ביטוי חדש, אך לא נמצא מפריד בינו לבין הביטוי הקודם." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "חסר פסיק לפני תחילת פעולת שינוי חדשה." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "פעולת שינוי בלתי מזוהה." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "היו אמורים להיות %1$d ערכים, אך נמצאו %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "היו אמורים להיות סוגריים מרובעים פותחים ואחריהם סדרה של ערכים." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "היו אמורים להיות סוגריים מרובעים פותחים." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "מילת מפתח בלתי צפויה." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "סיום בלתי צפוי לביטוי התניה (CASE)" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "כנראה כינוי כפול לביטוי התניה (CASE)." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "אמור היה להיות כינוי אחרי AS (בשם) אבל במקום נמצא " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "נמצא כינוי בעבר." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "אמור היה להיות כינוי אחרי ה־AS (בשם)." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"אמור היה להיות שם של סמל! אסור להשתמש במילה שמורה בתור שם עמודה ללא סימן " -"הטעמה משני (`)." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "אמור היה להיות שם סמל!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "אמורים היו להיות פסיק או סוגריים סוגרים." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "אמורים היו להיות סוגריים סוגרים." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "סוג הנתונים אינו מזוהה." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "אמור היה להיות ביטוי." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "אמור היה להיות כינוי." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "נקודה בלתי צפויה." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "אסימון בלתי צפוי." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "אמור היה להיות היסט." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "סיום בלתי צפוי לביטוי נעילה (LOCK)." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "אפשרות זו סותרת את „%1$s”." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "אמור היה להיות השם הישן של הטבלה." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "אמורה הייתה להיות מילת המפתח „TO” (אל)." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "אמור היה להיות השם החדש של הטבלה." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "אמורה הייתה להיות פעולת שינוי שם." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "ביטוי חסר." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "תו בלתי צפוי." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "אמורים היו להיות רווחים לפני המפריד." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "אמור היה להיות מפריד." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "אמורות היו להיות מירכאות סוגרות %1$s." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "אמור היה להיות שם משתנה." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "תחילת הביטוי אינו צפוי." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "סוג המשפט בלתי מזוהה." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "לא החלה העברה בעבר." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "סוג הסעיף הזה כבר נותח בעבר." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "מילת מפתח בלתי מזוהה." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "מילת מפתח בסוף משפט." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "סידור הסעיפים בלתי צפוי." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "אמור היה להיות שם היישות." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "אמור היה להיות שם טבלה." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "אמורה הייתה להיות לפחות הגדרת עמודה אחת." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "אמורה הייתה להיות מילת מפתח „RETURNS” (מחזירה)." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "סוג סעיף זה אינו תקף בשאילתות מרובות טבלאות." - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "סיום בלתי צפוי להכרזת נעילה (LOCK)." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "מילת מפתח בלתי צפויה" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "אמור היה להיות שם ביטוי הטבלה השיתופית (CTE)." - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "אמורה הייתה להיות מילת המפתח AS (בשם)." - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "אמור היה להיות תת־שאילתה של ביטוי טבלה שיתופית (CTE)." - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "סיום בלתי צפוי ל־WITH CTE." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "סיום בלתי צפוי לביטוי נעילה." - -#~ msgid "error #1" -#~ msgstr "שגיאה #1" - -#~ msgid "strict error" -#~ msgstr "שגיאת הקפדה" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/hi/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/hi/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 3892ab18..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/hi/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/hi/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/hi/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 38846c78..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/hi/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,302 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Hindi \n" -"Language: hi\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "अभी लागू नहीं किया गया।" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "एक नया कथन मिला, परंतु पूर्व कथन और नए कथन के बीच कोई सीमांकक नहीं मिला।" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "नए बदलाव संक्रिया के आरंभ में अल्प विराम नही है।" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "अमान्य बदलाव संक्रिया।" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "%1$d आपेक्षित था परन्तु %2$d मिला।" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "एक खुला कोष्ठक आपेक्षित था।" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "अनापेक्षित बीजशब्द।" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "CASE वाक्यांश का अनापेक्षित अंत" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected after AS." -msgstr "कोइ डाटाबेस नहीं चुना गया है।" - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "एक प्रतीक नाम आपेक्षित था!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "एक अल्पविराम या एक समापन कोष्ठक अपेक्षित था।" - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "एक समापन कोष्ठक अपेक्षित था।" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "आंकड़े का अमान्य प्रकार।" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "एक वाक्यांश अपेक्षित था।" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected." -msgstr "कोइ डाटाबेस नहीं चुना गया है।" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "अनापेक्षित बिंदु।" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "अनापेक्षित टोकन।" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "एक सीमांक अपेक्षित था।" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "LOCK वाक्यांश का अनापेक्षित अंत।" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -#, fuzzy -#| msgid "Title of browser window when a table is selected" -msgid "The old name of the table was expected." -msgstr "ब्राउज़र विंडो का शीर्षक है जब किसी भी सर्वर का चयन नहीं किया है" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The row has been deleted." -msgid "A rename operation was expected." -msgstr "रौ को डिलीट कर दिया" - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "नियमित अभिव्यक्ति के रूप में" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, fuzzy, php-format -#| msgid "Table %1$s has been created." -msgid "Ending quote %1$s was expected." -msgstr "%1$s टेबल बना दिया गया है" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "चर नाम अपेक्षित।" - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "कथन का अनापेक्षित आरंभ।" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "अमान्य कथन प्रकार।" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "पूर्व में कोई अंतरण आरंभ नहीं किया गया था।" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Keyword at end of statement." -msgstr "टेबल के शुरू में" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected ordering of clauses." -msgstr "टेबल के शुरू में" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "Table name template" -msgid "A table name was expected." -msgstr "टेबल नाम टेम्पलेट" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The row has been deleted." -msgid "At least one column definition was expected." -msgstr "रौ को डिलीट कर दिया" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK statement." -msgstr "टेबल के शुरू में" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "Title of browser window when a table is selected" -msgid "The name of the CTE was expected." -msgstr "ब्राउज़र विंडो का शीर्षक है जब किसी भी सर्वर का चयन नहीं किया है" - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "An offset was expected." -msgid "AS keyword was expected." -msgstr "एक सीमांक अपेक्षित था।" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "An offset was expected." -msgid "Subquery of the CTE was expected." -msgstr "एक सीमांक अपेक्षित था।" - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of the WITH CTE." -msgstr "टेबल के शुरू में" - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "LOCK वाक्यांश का अनापेक्षित अंत।" - -#, fuzzy -#~| msgid "errors." -#~ msgid "error #1" -#~ msgstr "त्रुटियों" - -#, fuzzy -#~| msgid "Gather errors" -#~ msgid "strict error" -#~ msgstr "त्रुटियों को इकट्ठा करें" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/hr/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/hr/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index aca8c158..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/hr/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/hr/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/hr/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 160edaab..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/hr/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,318 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2015-10-15 11:24+0200\n" -"Last-Translator: Michal Čihař \n" -"Language-Team: Croatian \n" -"Language: hr\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " -"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" -"X-Generator: Weblate 2.5-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected after AS." -msgstr "Nema odabrane baze podataka." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -msgid "A symbol name was expected!" -msgstr "Predložak naziva datoteka" - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "No databases selected." -msgid "A comma or a closing bracket was expected." -msgstr "Nema odabrane baze podataka." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "No rows selected" -msgid "An expression was expected." -msgstr "Nema odabranih redova" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected." -msgstr "Nema odabrane baze podataka." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK expression." -msgstr "Pri početku tablice" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The old name of the table was expected." -msgstr "Broj otvorenih tablica." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The new name of the table was expected." -msgstr "Broj otvorenih tablica." - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The row has been deleted." -msgid "A rename operation was expected." -msgstr "Redak je izbrisan" - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "kao regularan izraz" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, fuzzy, php-format -#| msgid "Table %1$s has been created." -msgid "Ending quote %1$s was expected." -msgstr "Tablica %1$s je izrađena." - -#: src/Lexer.php:1056 -#, fuzzy -msgid "Variable name was expected." -msgstr "Predložak naziva datoteka" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected beginning of statement." -msgstr "Pri početku tablice" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Keyword at end of statement." -msgstr "Pri početku tablice" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected ordering of clauses." -msgstr "Pri početku tablice" - -#: src/Statements/CreateStatement.php:549 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The name of the entity was expected." -msgstr "Broj otvorenih tablica." - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -msgid "A table name was expected." -msgstr "Predložak naziva datoteka" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The row has been deleted." -msgid "At least one column definition was expected." -msgstr "Redak je izbrisan" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK statement." -msgstr "Pri početku tablice" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The name of the CTE was expected." -msgstr "Broj otvorenih tablica." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "No rows selected" -msgid "AS keyword was expected." -msgstr "Nema odabranih redova" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "Subquery of the CTE was expected." -msgstr "Broj otvorenih tablica." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of the WITH CTE." -msgstr "Pri početku tablice" - -#, fuzzy -#~| msgid "At Beginning of Table" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Pri početku tablice" - -#, fuzzy -#~| msgid "errors." -#~ msgid "error #1" -#~ msgstr "greške." - -#, fuzzy -#~| msgid "Gather errors" -#~ msgid "strict error" -#~ msgstr "Skupi greške" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/hu/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/hu/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index db3ba8c6..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/hu/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/hu/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/hu/LC_MESSAGES/sqlparser.po deleted file mode 100644 index e96a7cd0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/hu/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,300 +0,0 @@ -# Automatically generated <>, 2010. -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2016-12-21 15:58+0000\n" -"Last-Translator: Michal Čihař \n" -"Language-Team: Hungarian \n" -"Language: hu\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 2.10\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Még nincs megvalósítva." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"Egy új utasítás található, de nincs elválasztó közte és az előző között." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Felismerhetetlen módosítás művelet." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "%1$d értékek voltak elvárva, de %2$d található." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "Nyitó kapcsos zárójelet és az azt követő értékeket vártuk." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Nyitó kapcsos zárójelet vártunk." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -#, fuzzy -#| msgid "Unexpected token." -msgid "Unexpected keyword." -msgstr "Váratlan jelsor." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Egy álnév korábban már megtalálva." - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "An alias was expected." -msgid "An alias was expected after AS." -msgstr "Egy álnév várt." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Egy szimbólumnév várt!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Egy vessző vagy egy záró zárójel várt." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Záró kapcsos zárójelet vártunk." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Felismerhetetlen adattípus." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Egy kifejezés várt." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Egy álnév várt." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Váratlan pont." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Váratlan jelsor." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "Offsetet vártunk." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of LOCK expression." -msgstr "Váratlan utasítás kezdet." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Ez a lehetőség ütközik ezzel: „%1$s”." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "A tábla régi neve várt." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "\"TO\" kulcsszavat vártunk." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "A tábla új neve várt." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Egy átnevezési művelet várt." - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "reguláris kifejezésként" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Váratlan karakter." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "A határoló előtt szóközö(ke)t vártunk." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Határolót vártunk." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "A(z) %1$s záró idézés várt." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Változónév várt." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Váratlan utasítás kezdet." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Felismerhetetlen utasítástípus." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Nem volt korábban elindított tranzakció." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "A kikötés ezen típusa korábban fel lett dolgozva." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Felismerhetetlen kulcsszó." - -#: src/Statement.php:409 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Keyword at end of statement." -msgstr "Váratlan utasítás kezdet." - -#: src/Statement.php:555 -#, fuzzy -#| msgid "at beginning of table" -msgid "Unexpected ordering of clauses." -msgstr "a tábla elejénél" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Az entitás neve várt." - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "Table name template" -msgid "A table name was expected." -msgstr "Táblanév sablon" - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Legalább egy oszlopmeghatározás várt." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "\"RETURNS\" kulcsszavat vártunk." - -#: src/Statements/DeleteStatement.php:329 -#, fuzzy -#| msgid "No transaction was previously started." -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Nem volt korábban elindított tranzakció." - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of LOCK statement." -msgstr "Váratlan utasítás kezdet." - -#: src/Statements/PurgeStatement.php:138 -#, fuzzy -#| msgid "Unexpected token." -msgid "Unexpected keyword" -msgstr "Váratlan jelsor." - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "The name of the CTE was expected." -msgstr "Az entitás neve várt." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "A \"RETURNS\" keyword was expected." -msgid "AS keyword was expected." -msgstr "\"RETURNS\" kulcsszavat vártunk." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "Subquery of the CTE was expected." -msgstr "Az entitás neve várt." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of the WITH CTE." -msgstr "Váratlan utasítás kezdet." - -#, fuzzy -#~| msgid "at beginning of table" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "a tábla elejénél" - -#~ msgid "error #1" -#~ msgstr "hiba #1" - -#~ msgid "strict error" -#~ msgstr "szigorú hiba" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/hy/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/hy/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index cfd62d67..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/hy/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/hy/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/hy/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 2bd2aaac..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/hy/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,305 +0,0 @@ -# phpMyAdmin translation. -# Copyright (C) 2003 - 2012 phpMyAdmin devel team -# This file is distributed under the same license as the phpMyAdmin package. -# Automatically generated, 2012. -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2015-12-18 18:19+0000\n" -"Last-Translator: Andrey Aleksanyants \n" -"Language-Team: Armenian \n" -"Language: hy\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Weblate 2.5-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -#, fuzzy -#| msgid "Unexpected character." -msgid "Unexpected keyword." -msgstr "Անսպասելի նշան։" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "An alias was expected." -msgid "An alias was expected after AS." -msgstr "Սպասվում էր այլանունը։" - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -#| msgid "Variable name was expected." -msgid "A symbol name was expected!" -msgstr "Սպասվում էր փոփոխականի անունը։" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Սպասվում էր ստորակետը կամ փակող փակագիծը։" - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Սպասվում էր արտահայտությունը։" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Սպասվում էր այլանունը։" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "Unexpected characters on line %s." -msgid "Unexpected end of LOCK expression." -msgstr "Անսպասելի նշաններ %s տողում։" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Սպասվում էր աղյուսակի հին անունը։" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Սպասվում էր աղյուսակի նոր անունը։" - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Սպասվում էր վերանվանման գործողությունը։" - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "որպես կանոնավոր արտահայտություն" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Անսպասելի նշան։" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Սպասվում էր %1$s փակող չակերտը։" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Սպասվում էր փոփոխականի անունը։" - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "Unexpected characters on line %s." -msgid "Unexpected ordering of clauses." -msgstr "Անսպասելի նշաններ %s տողում։" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "Variable name was expected." -msgid "A table name was expected." -msgstr "Սպասվում էր փոփոխականի անունը։" - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Սպասվում էր առնվազն մեկ սյունակի սահմանումը։" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "Unexpected characters on line %s." -msgid "Unexpected end of LOCK statement." -msgstr "Անսպասելի նշաններ %s տողում։" - -#: src/Statements/PurgeStatement.php:138 -#, fuzzy -#| msgid "Unexpected character." -msgid "Unexpected keyword" -msgstr "Անսպասելի նշան։" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The new name of the table was expected." -msgid "The name of the CTE was expected." -msgstr "Սպասվում էր աղյուսակի նոր անունը։" - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "An expression was expected." -msgid "AS keyword was expected." -msgstr "Սպասվում էր արտահայտությունը։" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The old name of the table was expected." -msgid "Subquery of the CTE was expected." -msgstr "Սպասվում էր աղյուսակի հին անունը։" - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected characters on line %s." -msgid "Unexpected end of the WITH CTE." -msgstr "Անսպասելի նշաններ %s տողում։" - -#, fuzzy -#~| msgid "Unexpected characters on line %s." -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Անսպասելի նշաններ %s տողում։" - -#, fuzzy -#~| msgid "Error" -#~ msgid "error #1" -#~ msgstr "Սխալ" - -#, fuzzy -#~| msgid "Query error" -#~ msgid "strict error" -#~ msgstr "Հարցման սխալ" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ia/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ia/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index c42cb543..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ia/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ia/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ia/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 3175aa85..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ia/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,285 +0,0 @@ -# phpMyAdmin translation. -# Copyright (C) 2003 - 2013 phpMyAdmin devel team -# This file is distributed under the same license as the phpMyAdmin package. -# Automatically generated, 2013. -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Interlingua \n" -"Language: ia\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Ancora non actuate." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"On trovava un nove declaration, ma il non ha alcun demarcator inter isto e " -"le previe." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "mancante comma ante initiar un nove operation de alterar." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Operation d alteration non recognoscite." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "%1$d valores esseva expectate, ma il trovava %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "On expectava un parenthesis aperite sequite per un insimul de valores." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "On expectava un parenthesis aperite." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Un parola clave non expectate." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Un fin inexpectate del expression CASE" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "Un potential alias duplicate del expression CASE." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "Un alias attendite post AS ma obteneva " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Previemente on trovava un pseudonymo." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "On expectava un pseudonymo AS." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"On expectava un nomine de symbolo! Un parola clave reservate non pte esser " -"usate como nomine de columna sin retro citationes (backquotes)." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "On expectava un nomine de symbolo!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "On expectava un comma o un parentheses claudite." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "On expectava un parenthesis claudite." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Typo de datos non cognoscite." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "On expectava un expression." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "On expectava un alias." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Puncto inexpectate." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Un indicio non expectate." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "On expectava un displaciamento." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Un fin inexpectate del expression LOCK." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Iste option conflige con \"%1$s\"." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "On expectava le vetule nomine de le tabella." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "On expectava le parola clave \"TO\"." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "On expectava le nove nomine del tabella." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "On expectava un operation de renominar.." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Expression mancante." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Un character non expectate." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "On expectava spatio(s) blanc ante le demarcator." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "On expectava demarcator." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "On expectava le fin de citation %1$s ." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "On expectava un nomine de variabile." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Un initio de instruction non expectate." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Typo de declaration non recognoscite." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Necun transaction esseva initiate previemente." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Iste typo de proposition esseva analysate previemente." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Parola clave non recognoscite." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Parola clave al fin del instruction." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Un ordine de clausas non expectate." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "On expectava le nomine del entitate." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "On expectava un nomine de tabella." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "On expectava al minus un definition de columna." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "On expectava le parola clave \"RETURN\"." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Iste typo de proposition non es valide in query de multi-tabella." - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "Un initio de instruction LOCK non expectate." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Un parola clave non expectate" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "The name of the CTE was expected." -msgstr "On expectava le nomine del entitate." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "A \"RETURNS\" keyword was expected." -msgid "AS keyword was expected." -msgstr "On expectava le parola clave \"RETURN\"." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "Subquery of the CTE was expected." -msgstr "On expectava le nomine del entitate." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected end of LOCK statement." -msgid "Unexpected end of the WITH CTE." -msgstr "Un initio de instruction LOCK non expectate." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Un fin inexpectate del expression LOCK." - -#~ msgid "error #1" -#~ msgstr "error #1" - -#~ msgid "strict error" -#~ msgstr "stricte error" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/id/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/id/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 0aa612fb..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/id/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/id/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/id/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 706f6d14..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/id/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,274 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Indonesian \n" -"Language: id\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 4.16-dev\n" -"X-Poedit-Basepath: ../../..\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Belum diimplementasikan." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"Suatu pernyataan baru ditemukan, tetapi tanpa pembatas antara itu dan " -"sebelumnya." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "Tidak ada koma sebelum memulai operasi perubahan baru." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Operasi ubah tabel (alter) tak dikenal." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "Nilai %1$d diharapkan. Namun, ditemukan %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "Sebuah kurung buka yang diikuti oleh nilai-nilai diharapkan." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Sebuah kurung buka diharapkan." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Kata kunci tak terduga." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Akhir operasi CASE tak terduga" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "Alias potensial duplikat dari ekspresi CASE." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "Alias yang diharapkan setelah AS tetapi didapat " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Sebuah alias telah ditemukan sebelumnya." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "Sebuah alias diharapkan." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Sebuah nama simbol diharapkan! Kata kunci yang telah diatur tidak dapat " -"digunakan sebagai nama kolom tanpa tanda kutip." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Sebuah nama simbol diharapkan!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Sebuah koma atau kurung tutup diharapkan." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Sebuah kurung tutup diharapkan." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Tipe data tak dikenal." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Sebuah perintah (expression) diharapkan." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Sebuah alias diharapkan." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Titik tak terduga." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Token tak terduga." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "Suatu pergeseran (offset) diharapkan." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Akhir ekspresi LOCK tak terduga." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Pilihan ini bertentangan dengan \"%1$s\"." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Nama lama tabel diharapkan." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Kata kunci \"TO\" diharapkan." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Nama baru tabel diharapkan." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Sebuah operasi ganti nama diharapkan." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Perintah (expression) hilang." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Karakter tak terduga." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Mengharapkan spasi sebelum pembatas." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Mengharapkan pembatas." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Petik akhir %1$s diharapkan." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Nama variabel diharapkan." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Awal pernyataan tak terduga." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Jenis pernyataan tak dikenal." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Tidak ada transaksi yang dimulai sebelumnya." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Jenis klausa ini telah diurai sebelumnya." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Kata kunci tak dikenal." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Kata kunci pada akhir pernyataan." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Pengurutan klausa tak terduga." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Nama entitas diharapkan." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "Sebuah nama tabel diharapkan." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Setidaknya satu definisi kolom diharapkan." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "Sebuah kata kunci \"RETURNS\" diharapkan." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Jenis klausa ini tidak sah dalam kueri multitabel." - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "Awal pernyataan tak terduga." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Kata kunci tidak ada" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "Nama CTE diharapkan." - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "kata kunci AS diharapkan." - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "Subquery dari CTE diharapkan." - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "Akhir yang tidak terduga dari WITH CTE." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Akhir ekspresi Lock tak terduga." - -#~ msgid "error #1" -#~ msgstr "galat #1" - -#~ msgid "strict error" -#~ msgstr "galat ketat" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/it/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/it/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 241c823e..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/it/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/it/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/it/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 133e92da..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/it/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,273 +0,0 @@ -# Automatically generated <>, 2010. -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Italian \n" -"Language: it\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Non ancora implementato." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"E' stato trovato un nuovo statement, ma non c'è alcun delimitatore tra il " -"nuovo statement e il precedente." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "Virgola assente prima dell'inizio di una nuova operazione alter." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Operazione di modifica non riconosciuta." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "Erano attesi %1$d valori, ma ne sono stati trovati %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "Era attesa una parentesi aperta seguita da un insieme di valori." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Era attesa una parentesi aperta." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Keyword inaspettata." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Inattesa fine dell'espressione CASE" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "Potenziale alias duplicato dell'espressione CASE." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "Atteso un alias dopo AS ma trovato " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Un alias è stato trovato precedentemente." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "Era atteso un alias dopo AS." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Era atteso un nome di simbolo! Un termine riservato non può essere usato " -"come nome di un campo senza inserirlo tra backquotes ( ` )." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Era atteso un nome di simbolo!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Era attesa una virgola o una parentesi chiusa." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Era attesa una parentesi chiusa." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Tipo dati non riconosciuto." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Era attesa un'espressione." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Era atteso un alias." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Segno di punteggiatura \"punto\" inatteso." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Token inatteso." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "Era atteso un offset." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Inattesa fine dell'espressione LOCK." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Questa opzione è in conflitto con \"%1$s\"." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Era atteso il vecchio nome della tabella." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Era attesa la parola chiave \"TO\"." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Era atteso il nuovo nome della tabella." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Era attesa una operazione di rinomina." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Espressione mancante." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Carattere inatteso." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Erano attesi uno o più spazi bianchi prima del delimitatore." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Era atteso un delimitatore." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Era atteso il fine quote %1$s." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Era atteso un nome di variabile." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Inizio di statement inatteso." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Tipo statement non riconosciuto." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Non è stata iniziata alcuna transazione in precedenza." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Questo tipo di clausola è stata esaminata in precedenza." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Parola chiave non riconosciuta." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Parola chiave alla fine dello statement." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Ordinamento di clausole inatteso." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Era atteso il nome dell'entity." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "Era atteso un nome di tabella." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Era attesa almeno la definizione di un campo." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "Era attesa una parola chiave \"RETURNS\"." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Questo tipo di clausola non è valida nelle query Multi-tabella." - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "Inattesa fine dello statement LOCK." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Keyword inaspettata" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "Era atteso il nome della CTE." - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "Era attesa la parola chiave AS." - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "Era attesa una subquery della CTE." - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "Inattesa fine dell'espressione WITH CTE." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Inattesa fine dell'espressione LOCK." - -#~ msgid "error #1" -#~ msgstr "errore #1" - -#~ msgid "strict error" -#~ msgstr "errore di tipo strict" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ja/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ja/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 5f7c0bd1..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ja/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ja/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ja/LC_MESSAGES/sqlparser.po deleted file mode 100644 index f2d28a7c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ja/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,273 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Japanese \n" -"Language: ja\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "実装されていません。" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"新しいステートメントが見つかりましたが、その前の文との間に区切り文字がありま" -"せん。" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "新しい ALTER 操作を開始する前にカンマがありません。" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "認識できない alter 操作。" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "値 %1$d があるべきですが、 %2$d が見つかりました。" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "左括弧とそれに続く一連の値があるべきです。" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "左括弧が必要です。" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "予期しないキーワードです。" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "予期しない CASE 式の終了" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "CASE 式でエイリアスが重複している可能性があります。" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "AS の後にエイリアスが必要ですが、取得したものは " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "エイリアスが前に見つかっています。" - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "AS の後にエイリアスが必要です。" - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"シンボル名が必要です。 予約語をバッククォートなしでカラム名として使用すること" -"はできません。" - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "シンボル名が必要です!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "カンマか閉じ括弧が必要です。" - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "閉じる括弧があるべきです。" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "認識できないデータ形式。" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "式が必要です。" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "エイリアスが必要です。" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "予期しないドット。" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "予期しないトークン。" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "オフセットがあるべきです。" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "予期しない LOCK 式の終了。" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "このオプションは \"%1$s\" と競合しています。" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "テーブルの古い名前が必要です。" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "キーワード \"TO\" が必要です。" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "テーブルの新しい名前が必要です。" - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "リネーム操作が必要です。" - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "式がありません。" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "予期しない文字です。" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "区切り文字の前に空白が必要です。" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "区切り文字が必要です。" - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "終端クォート %1$s が必要です。" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "変数名があるべきです。" - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "ここで文を始めることができません。" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "認識されないステートメント形式です。" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "開始されているトランザクションはありません。" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "この種類の句は以前に解釈済みです。" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "認識できないキーワードです。" - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "ステートメントの末尾にキーワードがあります。" - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "予期しない節の順序です。" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "エンティティの名前が予想されていました。" - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "テーブル名が必要です。" - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "少なくとも 1 つのカラム定義が必要です。" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "キーワード \"RETURNS\" が必要です。" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "この句の種類は、複数テーブルクエリでは無効です。" - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "LOCK ステートメントが予期せず終了しました。" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "予期しないキーワード" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "CTE の名前が必要です。" - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "キーワード AS が必要です。" - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "CTE のサブクエリが必要です。" - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "WITH CTE が予期せず終了しました。" - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "予期しない LOCK 式の終了。" - -#~ msgid "error #1" -#~ msgstr "エラー #1" - -#~ msgid "strict error" -#~ msgstr "厳格なエラー" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ka/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ka/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 2539c0ac..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ka/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ka/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ka/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 358322c8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ka/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,312 +0,0 @@ -# Automatically generated <>, 2010. -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2015-10-15 11:03+0200\n" -"Last-Translator: Michal Čihař \n" -"Language-Team: Georgian \n" -"Language: ka\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 2.5-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "Remove selected users" -msgid "An alias was expected after AS." -msgstr "Remove selected users" - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -#| msgid "Remove selected users" -msgid "A symbol name was expected!" -msgstr "Remove selected users" - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "Remove selected users" -msgid "A comma or a closing bracket was expected." -msgstr "Remove selected users" - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "Remove selected users" -msgid "An expression was expected." -msgstr "Remove selected users" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "Remove selected users" -msgid "An alias was expected." -msgstr "Remove selected users" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK expression." -msgstr "ცხრილის დასაწყისში" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The row has been deleted." -msgid "A rename operation was expected." -msgstr "სტრიქონი წაიშალა" - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "რეგულარული გამოსახულება" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, fuzzy, php-format -#| msgid "Table %1$s has been created." -msgid "Ending quote %1$s was expected." -msgstr "Table %1$s has been created." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected beginning of statement." -msgstr "ცხრილის დასაწყისში" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Keyword at end of statement." -msgstr "ცხრილის დასაწყისში" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected ordering of clauses." -msgstr "ცხრილის დასაწყისში" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "Remove selected users" -msgid "A table name was expected." -msgstr "Remove selected users" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The row has been deleted." -msgid "At least one column definition was expected." -msgstr "სტრიქონი წაიშალა" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK statement." -msgstr "ცხრილის დასაწყისში" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "Remove selected users" -msgid "The name of the CTE was expected." -msgstr "Remove selected users" - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "Remove selected users" -msgid "AS keyword was expected." -msgstr "Remove selected users" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "Table %1$s has been created." -msgid "Subquery of the CTE was expected." -msgstr "Table %1$s has been created." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of the WITH CTE." -msgstr "ცხრილის დასაწყისში" - -#, fuzzy -#~| msgid "At Beginning of Table" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "ცხრილის დასაწყისში" - -#, fuzzy -#~| msgid "Error" -#~ msgid "error #1" -#~ msgstr "შეცდომა" - -#, fuzzy -#~| msgid "Ignore errors" -#~ msgid "strict error" -#~ msgstr "შეცდომების იგნორირება" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/kk/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/kk/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 81bf2cc7..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/kk/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/kk/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/kk/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 2c998f3d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/kk/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,290 +0,0 @@ -# phpMyAdmin translation. -# Copyright (C) 2003 - 2012 phpMyAdmin devel team -# This file is distributed under the same license as the phpMyAdmin package. -# Automatically generated, 2012. -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Kazakh \n" -"Language: kk\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Áli iske asyrylmady." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"Jańa nusqaý tabyldy, biraq onyń men aldyńǵy bireý arasynda bólgish joq." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Tanylmaǵan ózgertý áreketi." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "%1$d mánderi kútilgen, biraq %2$d tabyldy." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "Ashýshy jaqsha, sodan keıin mánder jıyntyǵy kútilgen." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Ashýshy jaqsha kútilgen." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Kútpegen kilt sóz." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "CASE órneginiń kútpegen sońy" - -#: src/Components/CaseExpression.php:212 -#, fuzzy -#| msgid "Unexpected end of CASE expression" -msgid "Potential duplicate alias of CASE expression." -msgstr "CASE órneginiń kútpegen sońy" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Aldynda búrkenshik aty tabylǵan." - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "An alias was expected." -msgid "An alias was expected after AS." -msgstr "Búrkenshik aty kútilgen." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Tańba aty kútilgen! Saqtalǵan kilt sózdi doǵal ekpindersiz baǵan aty retinde " -"paıdalanýǵa bolmaıdy." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Tańba aty kútilgen!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Útir nemese jabushy jaqsha kútilgen." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Jabushy jaqsha kútilgen." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Tanylmaǵan derekter túri." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Órnek kútilgen." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Búrkenshik aty kútilgen." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Kútpegen núkte." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Kútpegen tańbalaýysh." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "Yǵysý kútilgen." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "LOCK órneginiń kútpegen sońy." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Bul opsıa «%1$s» degenmen qaıshy keledi." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Kesteniń eski ataýy kútilgen." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "«TO» kilt sózi kútilgen." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Kesteniń jańa ataýy kútilgen." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Qaıta ataý áreketi kútilgen." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Órnek joq." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Kútpegen tańba." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Bólgishke deıin bosoryn(dar) kútilgen." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Bólgish kútilgen." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "«%1$s» jabýshy tyrnaqshasy kútilgen." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Aınymaly aty kútilgen." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Nusqaýdyń kútpegen bastalýy." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Tanylmaǵan nusqaý túri." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Eshbir tranzaksıa aldynda bastalǵan joq." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Bul sóılemdiń túri aldynda taldandy." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Tanylmaǵan kilt sóz." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Nusqaý aıaǵynda kilt sóz." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Kútpegen sóılemder reti." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Nysan aty kútilgen." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "Keste aty kútilgen." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Eń keminde bir baǵannyń anyqtamsy kútilgen." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "«RETURNS» kilt sózi kútilgen." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Birneshe keste saýaldarynda bul sóılem tyri jaramsyz." - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of LOCK statement." -msgstr "Nusqaýdyń kútpegen bastalýy." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Kútpegen kilt sóz" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "The name of the CTE was expected." -msgstr "Nysan aty kútilgen." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "A \"RETURNS\" keyword was expected." -msgid "AS keyword was expected." -msgstr "«RETURNS» kilt sózi kútilgen." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "Subquery of the CTE was expected." -msgstr "Nysan aty kútilgen." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of the WITH CTE." -msgstr "Nusqaýdyń kútpegen bastalýy." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "LOCK órneginiń kútpegen sońy." - -#~ msgid "error #1" -#~ msgstr "qate № 1" - -#~ msgid "strict error" -#~ msgstr "qatań qate" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/km/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/km/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 021e3991..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/km/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/km/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/km/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 25257a88..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/km/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,289 +0,0 @@ -# phpMyAdmin translation. -# Copyright (C) 2003 - 2014 phpMyAdmin devel team -# This file is distributed under the same license as the phpMyAdmin package. -# Automatically generated, 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2017-08-12 15:08+0000\n" -"Last-Translator: ប៉ុកណូ រ៉ូយ៉ាល់ \n" -"Language-Team: Central Khmer \n" -"Language: km\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 2.16\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected after AS." -msgstr "មិន​បាន​ជ្រើស​មូលដ្ឋាន​ទិន្នន័យ។" - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -#| msgid "No databases selected." -msgid "A symbol name was expected!" -msgstr "មិន​បាន​ជ្រើស​មូលដ្ឋាន​ទិន្នន័យ។" - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "No databases selected." -msgid "A comma or a closing bracket was expected." -msgstr "មិន​បាន​ជ្រើស​មូលដ្ឋាន​ទិន្នន័យ។" - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "No databases selected." -msgid "An expression was expected." -msgstr "មិន​បាន​ជ្រើស​មូលដ្ឋាន​ទិន្នន័យ។" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected." -msgstr "មិន​បាន​ជ្រើស​មូលដ្ឋាន​ទិន្នន័យ។" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The bookmark has been deleted." -msgid "A rename operation was expected." -msgstr "បាន​លុប​ចំណាំ។" - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "" - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "" - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "No databases selected." -msgid "A table name was expected." -msgstr "មិន​បាន​ជ្រើស​មូលដ្ឋាន​ទិន្នន័យ។" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The bookmark has been deleted." -msgid "At least one column definition was expected." -msgstr "បាន​លុប​ចំណាំ។" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "No databases selected." -msgid "The name of the CTE was expected." -msgstr "មិន​បាន​ជ្រើស​មូលដ្ឋាន​ទិន្នន័យ។" - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "No databases selected." -msgid "AS keyword was expected." -msgstr "មិន​បាន​ជ្រើស​មូលដ្ឋាន​ទិន្នន័យ។" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "No databases selected." -msgid "Subquery of the CTE was expected." -msgstr "មិន​បាន​ជ្រើស​មូលដ្ឋាន​ទិន្នន័យ។" - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "" - -#~ msgid "error #1" -#~ msgstr "កំហុស​ #1" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/kmr/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/kmr/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 49381715..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/kmr/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/kmr/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/kmr/LC_MESSAGES/sqlparser.po deleted file mode 100644 index a91dcbb7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/kmr/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,261 +0,0 @@ -# phpMyAdmin SQL parser translation. -# Copyright (C) 2015 - 2020 phpMyAdmin devel team -# This file is distributed under the same license as the SQL parser package. -# FIRST AUTHOR , YEAR. -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: Automatically generated\n" -"Language-Team: none\n" -"Language: kmr\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "" - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "" - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "" - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "" - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "" - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "" - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "" - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "" - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/kn/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/kn/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index a3276090..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/kn/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/kn/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/kn/LC_MESSAGES/sqlparser.po deleted file mode 100644 index aff20361..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/kn/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,274 +0,0 @@ -# phpMyAdmin translation. -# Copyright (C) 2003 - 2013 phpMyAdmin devel team -# This file is distributed under the same license as the phpMyAdmin package. -# Automatically generated, 2013. -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2015-07-24 13:05+0200\n" -"Last-Translator: Shameem Ahmed A Mulla \n" -"Language-Team: Kannada \n" -"Language: kn\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 2.4-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "No tables selected." -msgid "An alias was expected after AS." -msgstr "ಯಾವುದೇ ಕೋಷ್ಟಕಗಳು ಆಯ್ಕೆ ಮಾಡಲಿಲ್ಲ." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "" - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "" - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "" - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "" - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "No tables selected." -msgid "A table name was expected." -msgstr "ಯಾವುದೇ ಕೋಷ್ಟಕಗಳು ಆಯ್ಕೆ ಮಾಡಲಿಲ್ಲ." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "No tables selected." -msgid "The name of the CTE was expected." -msgstr "ಯಾವುದೇ ಕೋಷ್ಟಕಗಳು ಆಯ್ಕೆ ಮಾಡಲಿಲ್ಲ." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "No tables selected." -msgid "AS keyword was expected." -msgstr "ಯಾವುದೇ ಕೋಷ್ಟಕಗಳು ಆಯ್ಕೆ ಮಾಡಲಿಲ್ಲ." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "No tables selected." -msgid "Subquery of the CTE was expected." -msgstr "ಯಾವುದೇ ಕೋಷ್ಟಕಗಳು ಆಯ್ಕೆ ಮಾಡಲಿಲ್ಲ." - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ko/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ko/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 00c6afb0..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ko/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ko/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ko/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 471a4e50..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ko/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,271 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Korean \n" -"Language: ko\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "아직 구현되지 않은 기능입니다." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "새로운 문장이 발견되었지만, 이전 문장과의 구분기호가 없습니다." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "새 alter operation 시작 전에 쉼표가 누락되었습니다." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "인식되지 않은 alter 작업입니다." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "값 %1$d 이 예상되었지만, %2$d 가 발견되었습니다." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "일련의 값들에 의해 여는 괄호('(')가 예상됩니다." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "여는 괄호가 예상됩니다." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "예상되지 않은 키워드입니다." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "예기치 못한 CASE 표현식의 끝" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "CASE 표현식의 잠재적 중복 별명입니다." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "AS뒤에 별명이 필요합니다. : " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "이미 사용중인 별명입니다." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "AS뒤에 별명이 필요합니다." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"심볼 이름이 필요합니다! 예약어는 역따옴표 없이 열 이름으로 사용될 수 없습니" -"다." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "심볼 이름이 필요합니다!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "쉼표 또는 닫는 대괄호가 필요합니다." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "닫는 괄호가 필요합니다." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "인식할 수 없는 데이터 형식입니다." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "식이 필요합니다." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "별명이 필요합니다." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "예기치 못한 점(.)입니다." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "예기치 못한 토큰입니다." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "오프셋이 필요합니다." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "LOCK 표현식이 예기치 않게 끝났습니다." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "이 옵션은 \"%1$s\"와(과) 충돌합니다." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "테이블의 이전 이름이 팔요합니다." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "키워드 \"TO\"가 팔요합니다." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "테이블의 새로운 이름이 팔요합니다." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "이름 바꾸기 작업이 필요합니다." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "누락된 표현입니다." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "예상치 못한 문자입니다." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "구분기호 앞에 공백이 필요합니다." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "구분기호가 필요합니다." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "닫는 따옴표 %1$s 가 팔요합니다." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "변수명이 필요합니다." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "명령문이 예기치 않게 시작되었습니다." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "인식할 수 없는 명령문 유형입니다." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "이전에 시작된 처리가 없습니다." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "이 유형의 절은 이전에 구문 분석되었습니다." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "인식할 수 없는 키워드입니다." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "명령문 끝에 있는 키워드." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "예기치 못한 문장(절) 순서입니다." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "개체 이름이 필요합니다." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "테이블 이름이 필요합니다." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "최소 하나의 열 정의가 필요합니다." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "\"RETURNS\"키워드가 필요합니다." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "이 유형의 문장(절)은 다중테이블 요청에서 유효하지 않습니다." - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "LOCK 표현식이 예기치 않게 끝났습니다." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "예상치 못한 키워드" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "CTE 이름이 필요합니다." - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "AS 키워드가 필요합니다." - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "CTE의 서브쿼리가 필요합니다." - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "WITH CTE 표현식이 예기치 않게 끝났습니다." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "LOCK 표현식이 예기치 않게 끝났습니다." - -#~ msgid "error #1" -#~ msgstr "오류 #1" - -#~ msgid "strict error" -#~ msgstr "엄격한 오류" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ksh/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ksh/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index ed9b5602..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ksh/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ksh/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ksh/LC_MESSAGES/sqlparser.po deleted file mode 100644 index c7dbc39a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ksh/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,274 +0,0 @@ -# phpMyAdmin translation. -# Copyright (C) 2003 - 2014 phpMyAdmin devel team -# This file is distributed under the same license as the phpMyAdmin package. -# Automatically generated, 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2014-10-02 15:09+0200\n" -"Last-Translator: Purodha \n" -"Language-Team: Colognian \n" -"Language: ksh\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=n==0 ? 0 : n==1 ? 1 : 2;\n" -"X-Generator: Weblate 1.10-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "The database name is empty!" -msgid "An alias was expected after AS." -msgstr "Kein Name för di Dahtebangk!" - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "" - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "" - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "" - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "" - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "The database name is empty!" -msgid "A table name was expected." -msgstr "Kein Name för di Dahtebangk!" - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The database name is empty!" -msgid "The name of the CTE was expected." -msgstr "Kein Name för di Dahtebangk!" - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "The database name is empty!" -msgid "AS keyword was expected." -msgstr "Kein Name för di Dahtebangk!" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The database name is empty!" -msgid "Subquery of the CTE was expected." -msgstr "Kein Name för di Dahtebangk!" - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ky/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ky/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index da2d2f27..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ky/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ky/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ky/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 5b1182c7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ky/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,284 +0,0 @@ -# phpMyAdmin translation. -# Copyright (C) 2003 - 2013 phpMyAdmin devel team -# This file is distributed under the same license as the phpMyAdmin package. -# Automatically generated, 2013. -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2015-10-15 11:03+0200\n" -"Last-Translator: Michal Čihař \n" -"Language-Team: Kyrgyz \n" -"Language: ky\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 2.5-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "An alias was expected after AS." -msgstr "%1$s аттуу берилиштер базасы түзүлдү." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "A symbol name was expected!" -msgstr "%1$s аттуу берилиштер базасы түзүлдү." - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "A comma or a closing bracket was expected." -msgstr "%1$s аттуу берилиштер базасы түзүлдү." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "An alias was expected." -msgstr "%1$s аттуу берилиштер базасы түзүлдү." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "A rename operation was expected." -msgstr "%1$s аттуу берилиштер базасы түзүлдү." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "" - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "" - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "A table name was expected." -msgstr "%1$s аттуу берилиштер базасы түзүлдү." - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "At least one column definition was expected." -msgstr "%1$s аттуу берилиштер базасы түзүлдү." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "The name of the CTE was expected." -msgstr "%1$s аттуу берилиштер базасы түзүлдү." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "AS keyword was expected." -msgstr "%1$s аттуу берилиштер базасы түзүлдү." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "Subquery of the CTE was expected." -msgstr "%1$s аттуу берилиштер базасы түзүлдү." - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/li/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/li/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index d1202b73..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/li/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/li/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/li/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 18bbfc05..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/li/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,264 +0,0 @@ -# phpMyAdmin translation. -# Copyright (C) 2003 - 2014 phpMyAdmin devel team -# This file is distributed under the same license as the phpMyAdmin package. -# Automatically generated, 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2015-12-29 15:36+0000\n" -"Last-Translator: Robin van der Vliet \n" -"Language-Team: Limburgish \n" -"Language: li\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Weblate 2.5-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "" - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "" - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "" - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "" - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "" - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "" - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "" - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "" - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/lt/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/lt/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 536bed48..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/lt/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/lt/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/lt/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 0039aece..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/lt/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,320 +0,0 @@ -# Automatically generated <>, 2010. -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2022-07-05 15:20+0000\n" -"Last-Translator: Ugnius Vaičeskas \n" -"Language-Team: Lithuanian \n" -"Language: lt\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=(n % 10 == 1 && (n % 100 < 11 || n % 100 > " -"19)) ? 0 : ((n % 10 >= 2 && n % 10 <= 9 && (n % 100 < 11 || n % 100 > 19)) ? " -"1 : 2);\n" -"X-Generator: Weblate 4.13.1-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Vis dar neįgyvendinta." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -#, fuzzy -#| msgid "Iconic table operations" -msgid "Unrecognized alter operation." -msgstr "Piktograminės lentelių operacijos" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Tikimasi atidaromojo skliausto." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected after AS." -msgstr "Nepažymėjote duomenų bazės." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Buvo tikimasi simbolio pavadinimo!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Tikimasi kablelio arba uždaromojo skliausto." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Tikimasi uždaromojo skliausto." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Neatpažintas duomenų tipas." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "No rows selected" -msgid "An expression was expected." -msgstr "Nepasirinkti įrašai" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected." -msgstr "Nepažymėjote duomenų bazės." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Nepageidautinas taškas." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK expression." -msgstr "Lentelės pradžioje" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The old name of the table was expected." -msgstr "Lentelių kurios yra atidarytos skaičius." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The new name of the table was expected." -msgstr "Lentelių kurios yra atidarytos skaičius." - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The row has been deleted." -msgid "A rename operation was expected." -msgstr "Eilutė buvo ištrinta" - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "kaip reguliarųjį išsireiškimą" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, fuzzy, php-format -#| msgid "Event %1$s has been created." -msgid "Ending quote %1$s was expected." -msgstr "Įvykis %1$s buvo sukurtas." - -#: src/Lexer.php:1056 -#, fuzzy -#| msgid "Table name template" -msgid "Variable name was expected." -msgstr "Lentelės vardo šablonas" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected beginning of statement." -msgstr "Lentelės pradžioje" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Keyword at end of statement." -msgstr "Lentelės pradžioje" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected ordering of clauses." -msgstr "Lentelės pradžioje" - -#: src/Statements/CreateStatement.php:549 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The name of the entity was expected." -msgstr "Lentelių kurios yra atidarytos skaičius." - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "Table name template" -msgid "A table name was expected." -msgstr "Lentelės vardo šablonas" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The row has been deleted." -msgid "At least one column definition was expected." -msgstr "Eilutė buvo ištrinta" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK statement." -msgstr "Lentelės pradžioje" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The name of the CTE was expected." -msgstr "Lentelių kurios yra atidarytos skaičius." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "No rows selected" -msgid "AS keyword was expected." -msgstr "Nepasirinkti įrašai" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "Subquery of the CTE was expected." -msgstr "Lentelių kurios yra atidarytos skaičius." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of the WITH CTE." -msgstr "Lentelės pradžioje" - -#, fuzzy -#~| msgid "At Beginning of Table" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Lentelės pradžioje" - -#, fuzzy -#~| msgid "errors." -#~ msgid "error #1" -#~ msgstr "klaidos." - -#, fuzzy -#~| msgid "Gather errors" -#~ msgid "strict error" -#~ msgstr "Rinkti klaidas" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/lv/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/lv/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 4648f699..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/lv/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/lv/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/lv/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 2ad84771..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/lv/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,308 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2016-01-23 11:11+0000\n" -"Last-Translator: Arturs Nikolajevs \n" -"Language-Team: Latvian \n" -"Language: lv\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2;\n" -"X-Generator: Weblate 2.5-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected after AS." -msgstr "Datubāze nav izvēlēta." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -msgid "A symbol name was expected!" -msgstr "Faila nosaukuma šablons" - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "No databases selected." -msgid "A comma or a closing bracket was expected." -msgstr "Datubāze nav izvēlēta." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "No rows selected" -msgid "An expression was expected." -msgstr "Rindas nav iezīmētas" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected." -msgstr "Datubāze nav izvēlēta." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK expression." -msgstr "Tabulas sākumā" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The row has been deleted." -msgid "A rename operation was expected." -msgstr "Ieraksts tika dzēsts" - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "kā regulārā izteiksme" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, fuzzy, php-format -msgid "Ending quote %1$s was expected." -msgstr "Tabula %s tika izdzēsta" - -#: src/Lexer.php:1056 -#, fuzzy -msgid "Variable name was expected." -msgstr "Faila nosaukuma šablons" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected beginning of statement." -msgstr "Tabulas sākumā" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Keyword at end of statement." -msgstr "Tabulas sākumā" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected ordering of clauses." -msgstr "Tabulas sākumā" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -msgid "A table name was expected." -msgstr "Faila nosaukuma šablons" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The row has been deleted." -msgid "At least one column definition was expected." -msgstr "Ieraksts tika dzēsts" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK statement." -msgstr "Tabulas sākumā" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -msgid "The name of the CTE was expected." -msgstr "Faila nosaukuma šablons" - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "No rows selected" -msgid "AS keyword was expected." -msgstr "Rindas nav iezīmētas" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -msgid "Subquery of the CTE was expected." -msgstr "Tabula %s tika izdzēsta" - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of the WITH CTE." -msgstr "Tabulas sākumā" - -#, fuzzy -#~| msgid "At Beginning of Table" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Tabulas sākumā" - -#, fuzzy -#~| msgid "Error" -#~ msgid "error #1" -#~ msgstr "Kļūda" - -#, fuzzy -#~| msgid "Query type" -#~ msgid "strict error" -#~ msgstr "Vaicājuma tips" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/mk/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/mk/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 92fb0216..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/mk/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/mk/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/mk/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 7b007925..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/mk/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,293 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-02-17 01:42+0000\n" -"Last-Translator: \"Kristijan \\\"Fremen\\\" Velkovski\" \n" -"Language-Team: Macedonian \n" -"Language: mk\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n==1 || n%10==1 ? 0 : 1;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Сеуште не е имплементирано." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "Пронајдена е нова изјава, но нема разграница меѓу неа и претходната." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "Недостига запирка пред почетокот на новата alter операција." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Непозната промена(alter) operacija." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "%1$d вредности беа очекувани, но беа најдени %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "Се очекуваше отворена заграда следејќи со сет на вредности." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Се очекуваше отворена заграда." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Неочекуван клучен збор." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Неочекуван крај на CASE израз" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "Потенцијален дупликат алиас на CASE израз." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "Се очекуваше алиас после AS, но се доби " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Алиас беше претходно најден." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "Алијас беше очекуван после AS." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Име на симбол беше очекуван!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Запирка или затворачка заграда беше очекувана." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Израз се очекуваше." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Алијас беше очекуван." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Неочекуван крај на LOCK изразот." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The row has been deleted." -msgid "A rename operation was expected." -msgstr "Записот е избришан" - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "како регуларен израз" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Затварање на цитатот %1$s беше очекуван." - -#: src/Lexer.php:1056 -#, fuzzy -msgid "Variable name was expected." -msgstr "Шаблон на име на податотека" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected beginning of statement." -msgstr "на почетокот од табелата" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Keyword at end of statement." -msgstr "на почетокот од табелата" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected ordering of clauses." -msgstr "на почетокот од табелата" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -msgid "A table name was expected." -msgstr "Шаблон на име на податотека" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The row has been deleted." -msgid "At least one column definition was expected." -msgstr "Записот е избришан" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "Неочекуван крај на LOCK изразот." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -msgid "The name of the CTE was expected." -msgstr "Шаблон на име на податотека" - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "No rows selected" -msgid "AS keyword was expected." -msgstr "Нема селектирани записи" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -msgid "Subquery of the CTE was expected." -msgstr "Табелата %s е избришана" - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of the WITH CTE." -msgstr "на почетокот од табелата" - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Неочекуван крај на Lock изразот." - -#, fuzzy -#~| msgid "Error" -#~ msgid "error #1" -#~ msgstr "Грешка" - -#, fuzzy -#~| msgid "Query type" -#~ msgid "strict error" -#~ msgstr "Вид на упит" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ml/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ml/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 6efabe8b..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ml/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ml/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ml/LC_MESSAGES/sqlparser.po deleted file mode 100644 index d19456c4..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ml/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,293 +0,0 @@ -# phpMyAdmin translation. -# Copyright (C) 2003 - 2011 phpMyAdmin devel team -# This file is distributed under the same license as the phpMyAdmin package. -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Malayalam \n" -"Language: ml\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "ഇതുവരെ നടപ്പാക്കിയിട്ടില്ല." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"ഒരു പുതിയ പ്രസ്താവന കണ്ടെത്തി, പക്ഷേ അതിനും മുമ്പത്തെ പ്രസ്താവനയ്ക്കും ഇടയിൽ അതിര്‍ത്തി ഇല്ല." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "ഒരു പുതിയ പരിവര്‍ത്തരം ആരംഭിക്കുന്നതിന് മുമ്പ് ഉദ്ധരണി സൂചകമായ ചിഹ്നം കാണുന്നില്ല." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "തിരിച്ചറിയാത്ത വ്യത്യാസപ്പെടുത്തല്‍." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "%1$d മൂല്യങ്ങൾ പ്രതീക്ഷിച്ചെങ്കിലും കണ്ടെത്തി %2$d." - -#: src/Components/Array2d.php:108 -#, fuzzy -msgid "An opening bracket followed by a set of values was expected." -msgstr "ഒരു ഓപ്പണിംഗ് ബ്രാക്കറ്റിന് ശേഷം ഒരു കൂട്ടം മൂല്യങ്ങൾ പ്രതീക്ഷിച്ചു." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "ഒരു ഓപ്പണിംഗ് ബ്രായ്ക്കറ്റ് പ്രതീക്ഷിച്ചു." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "അപ്രതീക്ഷിത സൂചകപദം." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "CASE പ്രയോഗശൈലിയുടെ അപ്രതീക്ഷിത അവസാനം" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "CASE പ്രയോഗശൈലിയുടെ തനിപ്പകർപ്പ് അപരനാമം." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "ASന് ശേഷം പ്രതീക്ഷിച്ച ഒരു അപരനാമം ലഭിച്ചു " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "ഒരു അപരനാമം മുമ്പ് കണ്ടെത്തി." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "ASന് ശേഷം ഒരു അപരനാമം പ്രതീക്ഷിച്ചിരുന്നു." - -#: src/Components/CreateDefinition.php:255 -#, fuzzy -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"ഒരു ചിഹ്ന നാമം പ്രതീക്ഷിച്ചു! ബാക്ക് ഉദ്ധരണികൾ ഇല്ലാതെ ഒരു റിസർവ്ഡ് കീവേഡ്, നിരയുടെ പേരായി " -"ഉപയോഗിക്കാൻ കഴിയില്ല." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "ഒരു ചിഹ്ന നാമം പ്രതീക്ഷിച്ചു!" - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "Remove database" -msgid "A comma or a closing bracket was expected." -msgstr "വിവരശേഖരം നീക്കുക." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -#, fuzzy -msgid "A closing bracket was expected." -msgstr "ഒരു അടക്കല്‍ ബ്രാക്കറ്റ് പ്രതീക്ഷിച്ചു." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "തിരിച്ചറിയാത്ത ഡാറ്റ തരം." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "Remove database" -msgid "An expression was expected." -msgstr "വിവരശേഖരം നീക്കുക" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "Remove database" -msgid "An alias was expected." -msgstr "വിവരശേഖരം നീക്കുക." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "അപ്രതീക്ഷിത കുത്ത്‌." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "അപ്രതീക്ഷിത അടയാളം." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -#, fuzzy -msgid "An offset was expected." -msgstr "ഒരു ഓഫ്‌സെറ്റ് പ്രതീക്ഷിച്ചു." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "LOCK പ്രയോഗശൈലിയുടെ അപ്രതീക്ഷിത അവസാനം." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "ഈ \"%1$s\"തിരഞ്ഞെടുക്കല്‍ പൊരുത്തപ്പെടുന്നില്ല." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "പട്ടികയുടെ പഴയ പേര് പ്രതീക്ഷിച്ചു." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "\"TO\" സൂചകപദം പ്രതീക്ഷിച്ചു." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "പട്ടികയുടെ പുതിയ പേര് പ്രതീക്ഷിച്ചു." - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "A rename operation was expected." -msgstr "വിവരശേഖരം(ങ്ങൾ) %1$s സൃഷ്ടിച്ചിരിക്കുന്നു." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "പദപ്രയോഗം നഷ്‌ടമായി." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "അപ്രതീക്ഷിത പ്രതീകം." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "അതിരുകൾക് മുൻപ് പ്രതീക്ഷിച്ച വിടവുകൾ." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "പ്രതീക്ഷിച്ച അതിര്‍ത്തി." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "%1$s ഉദ്ധരണി അവസാനിക്കുന്നു." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "പരിവര്‍ത്തിതവസ്‌തുവിന്റെ പേര് പ്രതീക്ഷിച്ചു." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "പ്രസ്താവനയുടെ അപ്രതീക്ഷിത തുടക്കം." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "തിരിച്ചറിയാത്ത പ്രസ്താവന തരം." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "ഒരു ഇടപാടും മുമ്പ് ആരംഭിച്ചിട്ടില്ല." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "ഇത്തരത്തിലുള്ള ഉടമ്പടി മുമ്പ് വ്യാകരിച്ചു." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "തിരിച്ചറിയാത്ത സൂചകപദം." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "പ്രസ്താവനയുടെ അവസാനം സൂചകപദം." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "ഉപവാക്യങ്ങളുടെ അപ്രതീക്ഷിത ക്രമം." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "വസ്‌തുവിന്റെ പേര് പ്രതീക്ഷിച്ചു." - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "Remove database" -msgid "A table name was expected." -msgstr "വിവരശേഖരം നീക്കുക" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "At least one column definition was expected." -msgstr "വിവരശേഖരം(ങ്ങൾ) %1$s സൃഷ്ടിച്ചിരിക്കുന്നു." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "ഒരു \"റിട്ടേൺസ്\" സൂചകപദം പ്രതീക്ഷിച്ചു." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "മൾട്ടി-ടേബിൾ അന്വേഷണങ്ങളിൽ ഇത്തരത്തിലുള്ള ഉപവാക്യം സാധുവല്ല." - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "LOCK പ്രസ്‌താവനയുടെ അപ്രതീക്ഷിത അവസാനം." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "അപ്രതീക്ഷിത സൂചകപദം" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "The name of the CTE was expected." -msgstr "വസ്‌തുവിന്റെ പേര് പ്രതീക്ഷിച്ചു." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "A \"RETURNS\" keyword was expected." -msgid "AS keyword was expected." -msgstr "ഒരു \"റിട്ടേൺസ്\" സൂചകപദം പ്രതീക്ഷിച്ചു." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "Subquery of the CTE was expected." -msgstr "വസ്‌തുവിന്റെ പേര് പ്രതീക്ഷിച്ചു." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected end of LOCK statement." -msgid "Unexpected end of the WITH CTE." -msgstr "LOCK പ്രസ്‌താവനയുടെ അപ്രതീക്ഷിത അവസാനം." - -#, fuzzy -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "LOCK പ്രയോഗശൈലിയുടെ അപ്രതീക്ഷിത അവസാനം." diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/mn/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/mn/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 58aef4cb..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/mn/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/mn/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/mn/LC_MESSAGES/sqlparser.po deleted file mode 100644 index a1d37d2b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/mn/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,315 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2017-05-29 07:42+0000\n" -"Last-Translator: Sambuu-Yondon \n" -"Language-Team: Mongolian \n" -"Language: mn\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 2.14.1\n" - -#: src/Component.php:39 src/Component.php:59 -#, fuzzy -msgid "Not implemented yet." -msgstr "Хараахан хэрэгжүүлэлт хийгээгүй" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -#, fuzzy -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "шинэ болзол илэрсэн, гэвч өмнөхөөсөө зааглагч байхгүй." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "үл ойлгогдох alter үйлдэл байна." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "%1$d утгууд хүссэн, гэвч %2$d утга олдсон." - -#: src/Components/Array2d.php:108 -#, fuzzy -msgid "An opening bracket followed by a set of values was expected." -msgstr "хаалт нээсний дараагаар утга оноох хэрэгтэй" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected after AS." -msgstr "ӨС сонгогдоогүй." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -#| msgid "No databases selected." -msgid "A symbol name was expected!" -msgstr "ӨС сонгогдоогүй." - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "No databases selected." -msgid "A comma or a closing bracket was expected." -msgstr "ӨС сонгогдоогүй." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "No rows selected" -msgid "An expression was expected." -msgstr "Сонгогдсон мөргүй" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected." -msgstr "ӨС сонгогдоогүй." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK expression." -msgstr "Хүснэгтийн эхэнд" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The row has been deleted." -msgid "A rename operation was expected." -msgstr "Мөр устгагдсан" - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "PHP Version" -msgid "Missing expression." -msgstr "PHP хувилбар" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, fuzzy, php-format -#| msgid "Table %s has been dropped." -msgid "Ending quote %1$s was expected." -msgstr "Хүснэгт %s нь устгагдлаа" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected beginning of statement." -msgstr "Хүснэгтийн эхэнд" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Keyword at end of statement." -msgstr "Хүснэгтийн эхэнд" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected ordering of clauses." -msgstr "Хүснэгтийн эхэнд" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "No databases selected." -msgid "A table name was expected." -msgstr "ӨС сонгогдоогүй." - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The row has been deleted." -msgid "At least one column definition was expected." -msgstr "Мөр устгагдсан" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK statement." -msgstr "Хүснэгтийн эхэнд" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "No databases selected." -msgid "The name of the CTE was expected." -msgstr "ӨС сонгогдоогүй." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "No rows selected" -msgid "AS keyword was expected." -msgstr "Сонгогдсон мөргүй" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "Table %s has been dropped." -msgid "Subquery of the CTE was expected." -msgstr "Хүснэгт %s нь устгагдлаа" - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of the WITH CTE." -msgstr "Хүснэгтийн эхэнд" - -#, fuzzy -#~| msgid "At Beginning of Table" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Хүснэгтийн эхэнд" - -#, fuzzy -#~| msgid "Error" -#~ msgid "error #1" -#~ msgstr "Алдаа" - -#, fuzzy -#~| msgid "Query type" -#~ msgid "strict error" -#~ msgstr "Асуултын төрөл" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ms/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ms/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index b446c14d..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ms/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ms/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ms/LC_MESSAGES/sqlparser.po deleted file mode 100644 index dbcf6220..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ms/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,310 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2015-10-15 11:06+0200\n" -"Last-Translator: Michal Čihař \n" -"Language-Team: Malay \n" -"Language: ms\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 2.5-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "With selected:" -msgid "An alias was expected after AS." -msgstr "Dengan pilihan:" - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -#| msgid "With selected:" -msgid "A symbol name was expected!" -msgstr "Dengan pilihan:" - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "With selected:" -msgid "A comma or a closing bracket was expected." -msgstr "Dengan pilihan:" - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "With selected:" -msgid "An expression was expected." -msgstr "Dengan pilihan:" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "With selected:" -msgid "An alias was expected." -msgstr "Dengan pilihan:" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK expression." -msgstr "Pada Awalan Jadual" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The row has been deleted." -msgid "A rename operation was expected." -msgstr "Baris telah dipadam" - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "sebagai penyataan regular (regexp)" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, fuzzy, php-format -msgid "Ending quote %1$s was expected." -msgstr "Jadual %s telah digugurkan" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected beginning of statement." -msgstr "Pada Awalan Jadual" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Keyword at end of statement." -msgstr "Pada Awalan Jadual" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected ordering of clauses." -msgstr "Pada Awalan Jadual" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "With selected:" -msgid "A table name was expected." -msgstr "Dengan pilihan:" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The row has been deleted." -msgid "At least one column definition was expected." -msgstr "Baris telah dipadam" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK statement." -msgstr "Pada Awalan Jadual" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "With selected:" -msgid "The name of the CTE was expected." -msgstr "Dengan pilihan:" - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "With selected:" -msgid "AS keyword was expected." -msgstr "Dengan pilihan:" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -msgid "Subquery of the CTE was expected." -msgstr "Jadual %s telah digugurkan" - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of the WITH CTE." -msgstr "Pada Awalan Jadual" - -#, fuzzy -#~| msgid "At Beginning of Table" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Pada Awalan Jadual" - -#, fuzzy -#~| msgid "Error" -#~ msgid "error #1" -#~ msgstr "Ralat" - -#, fuzzy -#~| msgid "Query type" -#~ msgid "strict error" -#~ msgstr "Jenis Kueri" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/nb/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/nb/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index bc7a4bae..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/nb/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/nb/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/nb/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 5db71f1d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/nb/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,280 +0,0 @@ -# Automatically generated <>, 2010. -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2020-06-24 17:41+0000\n" -"Last-Translator: Sebastian \n" -"Language-Team: Norwegian Bokmål \n" -"Language: nb\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.2-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Ikke implementert ennå." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"En ny uttalelse ble funnet, men ingen skilletegn mellom det og den forrige." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "Mangler komma før starten av ny endringsoperasjon." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Ukjent endringsoperasjon." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "%1$d verdier var forventet, men fant %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "Åpningsklamme etterfulgt av et sett verdier forventet." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Åpningsklamme forventet." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Uventede karakterer på linje %sd." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Uventet slutt av CASE-uttrykket" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "Mulig duplisert alias av CASE-uttrykk." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "Forventet et alias etter AS, men ble gitt " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Et alias ble tidligere funnet." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "Et alias var forventet etter AS." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Forventet et symbolnavn! Reserverte nøkkelord kan bare bli brukt som " -"kolonnenavn ved å sette gravistegn (`) før og etter navnet." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Forventet et symbolnavn!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Forventet et komma eller en lukkingsklamme." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Forventet en lukkingsklamme." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Ukjent datatype." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Uttrykk forventet." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Alias forventet." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Uventet dott." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Uventet tegn." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "En forskyvning var forventet." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Uventet slutt av LOCK-uttrykket." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Denne operasjonen konflikter med \"%1$s\"." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Forventet gammelt tabellnavn." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Søkeordet \"TIL\" var forventet." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Forventet nytt tabellnavn." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "En navneenringsoperasjon var forventet." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Manglende uttrykk." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Uventet tegn." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Forventet blanktegn før skilletegn." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Forventet avgrensning." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Sluttsitat %1$s forventet." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Variabelnavn forventet." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Uventet begynnelse på uttykket." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Ukjent setningstype." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Ingen transaksjon ble tidligere startet." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Denne typen klausul ble tidligere analysert." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Ukjent nøkkelord." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Nøkkelord ved slutten av uttalelsen." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Uventet klausulrekkefølge." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Enhetsnavn forventet." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "Tabellnavn forventet." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Minst én kolonnedefinisjon forventet." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "Et \"RETURNS\" søkeord ble forventet." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Denne typen klausul er ikke gyldig i Multi-tabell-spørringer." - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "Uventet slutt på LOCK-uttrykket." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Uventet nøkkelord" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "The name of the CTE was expected." -msgstr "Enhetsnavn forventet." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "A \"RETURNS\" keyword was expected." -msgid "AS keyword was expected." -msgstr "Et \"RETURNS\" søkeord ble forventet." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "Subquery of the CTE was expected." -msgstr "Enhetsnavn forventet." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected end of LOCK statement." -msgid "Unexpected end of the WITH CTE." -msgstr "Uventet slutt på LOCK-uttrykket." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Uventet slutt av LOCK-uttrykket." - -#~ msgid "error #1" -#~ msgstr "feil #1" - -#~ msgid "strict error" -#~ msgstr "streng feil" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ne/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ne/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index b9eadb09..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ne/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ne/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ne/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 7aac850b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ne/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,274 +0,0 @@ -# phpMyAdmin translation. -# Copyright (C) 2003 - 2014 phpMyAdmin devel team -# This file is distributed under the same license as the phpMyAdmin package. -# Automatically generated, 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2015-10-15 11:03+0200\n" -"Last-Translator: Michal Čihař \n" -"Language-Team: Nepali \n" -"Language: ne\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 2.5-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "No tables selected." -msgid "An alias was expected after AS." -msgstr "कुनैपनि डेटाबेस चयन गरिएको छैन।" - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "" - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "" - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "" - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "" - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "No tables selected." -msgid "A table name was expected." -msgstr "कुनैपनि डेटाबेस चयन गरिएको छैन।" - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "No tables selected." -msgid "The name of the CTE was expected." -msgstr "कुनैपनि डेटाबेस चयन गरिएको छैन।" - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "No tables selected." -msgid "AS keyword was expected." -msgstr "कुनैपनि डेटाबेस चयन गरिएको छैन।" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "No tables selected." -msgid "Subquery of the CTE was expected." -msgstr "कुनैपनि डेटाबेस चयन गरिएको छैन।" - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/nl/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/nl/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 612d0a1b..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/nl/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/nl/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/nl/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 8f7aa746..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/nl/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,273 +0,0 @@ -# Automatically generated <>, 2010. -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Dutch \n" -"Language: nl\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Nog niet geïmplementeerd." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"Een nieuwe opdracht werd gevonden, maar zonder scheidingsteken tussen deze " -"en de vorige opdracht." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "Ontbrekende komma voor de start van een wijzigingsbewerking." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Onbekende bewerking." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "%1$d waarden werden verwacht, maar %2$d gevonden." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "Een openingshaakje gevolgd door een set met waardes werd verwacht." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Een openingshaakje werd verwacht." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Onverwacht sleutelwoord." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Onverwacht einde van CASE expressie" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "Potentiële dubbele alias van CASE expressie." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "Een alias werd verwacht na AS maar kreeg " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Een alias was eerder al gevonden." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "Een alias werd verwacht na AS." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Een symbool naam werd verwacht! Een gereserveerd sleutelwoord kan niet als " -"kolomnaam gebruikt worden zonder achterwaartse aanhalingstekens." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Een symbool naam werd verwacht!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Een komma of een sluitingshaakje werd verwacht." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Een sluitingshaakje werd verwacht." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Onbekend gegevenstype." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Een expressie werd verwacht." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Een alias werd verwacht." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Onverwachte punt." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Onverwacht token." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "Een offset werd verwacht." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Onverwacht einde van LOCK expressie." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Deze optie conflicteert met \"%1$s\"." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "De oude naam van de tabel werd verwacht." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Sleutelwoord \"TO\" werd verwacht." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "De nieuwe naam van de tabel werd verwacht." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Een hernoem bewerking werd verwacht." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Expressie ontbreekt." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Onverwachte letter." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Spatie(s) werd(en) verwacht voor het scheidingsteken." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Scheidingsteken verwacht." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Eindquote %1$s werd verwacht." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Naam van variabele werd verwacht." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Onverwacht begin van opdracht." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Opdrachttype niet herkend." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Er is geen transactie gestart." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Dit type van voorwaarde is eerder uitgevoerd." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Sleutelwoord niet herkend." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Sleutelwoord aan eind van opdracht." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Onverwachte volgorde van voorwaarden." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "De naam van de entiteit werd verwacht." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "Een tabel naam werd verwacht." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Er werd minimaal één kolomdefinitie verwacht." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "Een \"RETURNS\" sleutelwoord werd verwacht." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Dit type van voorwaarde is niet bruikbaar in multi-tabel queries." - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "Onverwacht einde van LOCK opdracht." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Onverwacht sleutelwoord" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "De naam van de CTE werd verwacht." - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "Het AS sleutelwoord werd verwacht." - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "Subquery van de CTE werd verwacht." - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "Onverwacht einde van WITH CTE opdracht." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Onverwacht einde van LOCK expressie." - -#~ msgid "error #1" -#~ msgstr "fout #1" - -#~ msgid "strict error" -#~ msgstr "strikte fout" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/pa/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/pa/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 9a08ff3d..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/pa/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/pa/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/pa/LC_MESSAGES/sqlparser.po deleted file mode 100644 index ceb3e738..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/pa/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,284 +0,0 @@ -# phpMyAdmin translation. -# Copyright (C) 2003 - 2012 phpMyAdmin devel team -# This file is distributed under the same license as the phpMyAdmin package. -# Automatically generated, 2012. -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2014-01-06 12:13+0200\n" -"Last-Translator: Michal Čihař \n" -"Language-Team: Punjabi \n" -"Language: pa\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 1.9-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "An alias was expected after AS." -msgstr "%1$s ਡਾਟਾਬੇਸ ਬਣ ਚੁੱਕਾ ਹੈ." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "A symbol name was expected!" -msgstr "%1$s ਡਾਟਾਬੇਸ ਬਣ ਚੁੱਕਾ ਹੈ." - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "A comma or a closing bracket was expected." -msgstr "%1$s ਡਾਟਾਬੇਸ ਬਣ ਚੁੱਕਾ ਹੈ." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "An alias was expected." -msgstr "%1$s ਡਾਟਾਬੇਸ ਬਣ ਚੁੱਕਾ ਹੈ." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "A rename operation was expected." -msgstr "%1$s ਡਾਟਾਬੇਸ ਬਣ ਚੁੱਕਾ ਹੈ." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "" - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "" - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "A table name was expected." -msgstr "%1$s ਡਾਟਾਬੇਸ ਬਣ ਚੁੱਕਾ ਹੈ." - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "At least one column definition was expected." -msgstr "%1$s ਡਾਟਾਬੇਸ ਬਣ ਚੁੱਕਾ ਹੈ." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "The name of the CTE was expected." -msgstr "%1$s ਡਾਟਾਬੇਸ ਬਣ ਚੁੱਕਾ ਹੈ." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "AS keyword was expected." -msgstr "%1$s ਡਾਟਾਬੇਸ ਬਣ ਚੁੱਕਾ ਹੈ." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "Subquery of the CTE was expected." -msgstr "%1$s ਡਾਟਾਬੇਸ ਬਣ ਚੁੱਕਾ ਹੈ." - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/pl/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/pl/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index b8c0333f..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/pl/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/pl/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/pl/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 9e05cdcf..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/pl/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,280 +0,0 @@ -# iMutrix , 2012. -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Polish \n" -"Language: pl\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " -"|| n%100>=20) ? 1 : 2;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Jeszcze nie zaimplementowane." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "Znaleziono kolejne polecenie, ale brakuje między nimi rozgranicznika." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "Brak przecinka przed rozpoczęciem nowej operacji zmiany." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Nierozpoznana zmiana operacji." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "Oczekiwano następującej wartości: %1$d; znaleziono %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "Oczekiwano nawiasu otwierającego i listy wartości." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Brak nawiasu otwierającego." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Nieznane słowo kluczowe." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Nieoczekiwany koniec polecenia CASE" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "Potencjalny zduplikowany alias wyrażenia CASE." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "Oczekiwano alias po AS, lecz otrzymano " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Wcześniej znaleziono alias." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "Oczekiwano aliasu po AS." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Oczekiwano nazwy symbolu! Zarezerwowane słowo kluczowe nie może być używane " -"jako nazwa kolumny bez cudzysłowów." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Oczekiwano nazwy symbolu!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Oczekiwano przecinka lub nawiasu zamykającego." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Brak nawiasu zamykającego." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Nierozpoznany typ danych." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Oczekiwano wyrażenia." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Oczekiwano aliasu." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Nieoczekiwana kropka." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Nieoczekiwany znak." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "Oczekiwano przesunięcia." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Nieoczekiwany koniec wyrażenia LOCK." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Ta opcja zawiera konflikt z \"%1$s\"." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Oczekiwano starej nazwy tabeli." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Oczekiwano słowa kluczowego \"TO\"." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Oczekiwano nowej nazwy tabeli." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Oczekiwano polecenia zmiany nazwy." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Brakujace wyrazenie." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Nieoczekiwany znak." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Oczekiwano spacji przez rozgranicznikiem." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Oczekiwano rozgranicznika." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Oczekiwano znaku końca %1$s." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Oczekiwano nazwy zmiennej." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Oczekiwano początku polecenia." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Nierozpoznany typ polecenia." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Żadna transakcja nie została wcześniej uruchomiona." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Tego typu klauzula została wcześniej przeanalizowana." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Nierozpoznane słowo kluczowe." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Słowo kluczowe na końcu wyciągu." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Nieoczekiwana kolejność klauzul." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Oczekiwano nazwy obiektu." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "Oczekiwano nazwy tabeli." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Oczekiwano definicji co najmniej jednej kolumny." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "Oczekiwano słowa kluczowego \"RETURNS\"." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Ta klauzula nie może być stosowana w poleceniach międzytabelowych." - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "Nieoczekiwane zakończenie instrukcji LOCK." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Nieznane słowo kluczowe" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "The name of the CTE was expected." -msgstr "Oczekiwano nazwy obiektu." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "A \"RETURNS\" keyword was expected." -msgid "AS keyword was expected." -msgstr "Oczekiwano słowa kluczowego \"RETURNS\"." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "Subquery of the CTE was expected." -msgstr "Oczekiwano nazwy obiektu." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected end of LOCK statement." -msgid "Unexpected end of the WITH CTE." -msgstr "Nieoczekiwane zakończenie instrukcji LOCK." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Nieoczekiwany koniec wyrażenia LOCK." - -#~ msgid "error #1" -#~ msgstr "Błąd #1" - -#~ msgid "strict error" -#~ msgstr "ścisły błąd" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/pt/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/pt/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 8db95b64..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/pt/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/pt/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/pt/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 0682ced0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/pt/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,282 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Portuguese \n" -"Language: pt\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Ainda não foi implementado." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"Uma nova instrução foi encontrada, mas nenhum delimitador entre ela e a " -"anterior." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "Falta uma vírgula antes do início de uma nova operação de alteração." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Operação de alteração não reconhecida." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "Eram esperados %1$d valores, mas foram encontrados %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" -"Uma abertura de chaveta seguida de um conjunto de valores era esperada." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Uma abertura de chaveta era esperada." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Palavra-chave inesperada." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Fim da expressão CASE inesperada" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "Pseudónimo potencialmente duplicado da expressão CASE." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "Um pseudónimo esperado após AS, mas tem " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Um alias foi previamente encontrado." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "Um pseudónimo foi esperado depois do AS." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Um nome de símbolo era esperado! Uma chave reservada não pode ser usada como " -"um nome de coluna sem as chaves." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Um nome do símbolo era esperado!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Uma vírgula ou um colchete de fechamento era esperado." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Um colchete ou parenteses era esperado." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Tipo de dado desconhecido." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Uma expressão era esperada." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Um alias era esperado." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Ponto inesperado." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Token inesperado." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "Um offset era esperado." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Fim inesperado da expressão LOCK." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Essa opção conflita com \"%1$s1\"." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "O nome antigo da tabela era esperado." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Palavra-chave \"TO\" era esperada." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "O novo nome da tabela era esperado." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Uma operação rename era esperada." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Faltando expressão." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Caractere inesperado." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Espaço(s) em Branco(s) esperado antes do delimitador." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Delimitador esperado." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Citação final %1$s1 era esperada." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Nome da variável era esperado." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Inesperado começo da declaração." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Tipo de declaração desconhecida." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Nenhuma transação foi iniciada anteriormente." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Este tipo de cláusula foi previamente analisado." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Palavra-chave desconhecida." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Palavra-chave no final da declaração." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Ordenação inesperada de cláusulas." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "O nome da entidade era esperado." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "Um nome para a tabela era esperado." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Pelo menos uma definição de coluna era esperada." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "Uma palavra-chave \"RETURNS\" era esperada." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Esse tipo de clausula não é válida em queries Multi-tabela." - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "Fim inesperado da declaração LOCK." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Palavra-chave inesperada" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "The name of the CTE was expected." -msgstr "O nome da entidade era esperado." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "A \"RETURNS\" keyword was expected." -msgid "AS keyword was expected." -msgstr "Uma palavra-chave \"RETURNS\" era esperada." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "Subquery of the CTE was expected." -msgstr "O nome da entidade era esperado." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected end of LOCK statement." -msgid "Unexpected end of the WITH CTE." -msgstr "Fim inesperado da declaração LOCK." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Fim inesperado da expressão LOCK." - -#~ msgid "error #1" -#~ msgstr "Erro #1" - -#~ msgid "strict error" -#~ msgstr "Erro severo" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/pt_BR/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/pt_BR/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 597b718e..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/pt_BR/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/pt_BR/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/pt_BR/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 300755d4..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/pt_BR/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,282 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Portuguese (Brazil) \n" -"Language: pt_BR\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Ainda não implementado." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"Uma nova declaração foi encontrada, porém não há delimitador entre esta e a " -"anterior." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "Falta uma vírgula antes do início de uma nova operação de alteração." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Operação de alteração desconhecida." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "Eram esperados %1$d valores, mas foram encontrados %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" -"Era esperado um colchete de abertura seguido por um conjunto de valores." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Era esperado um colchete de abertura." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Caracter inesperado." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Final inesperado da expressão CASE" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "Pseudônimo potencialmente duplicado da expressão CASE." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "Um pseudônimo esperado após AS, mas tem " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Um nome correlação foi encontrado anteriormente." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "Um pseudônimo foi esperado depois do AS." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Era esperado um nome de símbolo! Um caracter reservado não pode ser usado " -"como um nome de coluna sem apóstrofo." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Era esperado um nome de símbolo!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Era esperado uma vírgula ou um colchete de fechamento." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Era esperado um colchete de fechamento." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Tipo de dado desconhecido." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Era esperado uma expressão." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Era esperado um nome de correlação." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Ponto inesperado." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Símbolo (token) inesperado." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "Era esperado um espaçamento." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Final inesperado da expressão LOCK." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Esta opção está em conflito com \"%1$s\"." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Era esperado o nome anterior da tabela." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Era esperado o caracter \"TO\"." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Era esperado o novo nome da tabela." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Era esperado uma operação renomear." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Faltando expressão." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Caracter inesperado." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Era(m) esperado(s) espaço(s) em branco antes do delimitador." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Esperado delimitador." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Era esperado fechar aspas %1$s." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Era perado nome de variável." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Início de declaração inesperado." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Tipo de declaração desconhecido." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Nenhuma operação foi iniciada anteriormente." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Este tipo de sentença foi previamente analisado." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Comando desconhecido." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Palavra-chave no final da declaração." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Ordenamento de sentenças inesperado." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Era esperado o nome da entidade." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "Era esperado um nome de tabela." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Era esperado a definição de pelo menos uma coluna." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "Era esperado um comando \"RETURNS\"." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Este tipo de sentença não é válida em consultas à várias tabelas." - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "Fim inesperado da declaração LOCK." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Palavra-chave inesperada" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "The name of the CTE was expected." -msgstr "Era esperado o nome da entidade." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "A \"RETURNS\" keyword was expected." -msgid "AS keyword was expected." -msgstr "Era esperado um comando \"RETURNS\"." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "Subquery of the CTE was expected." -msgstr "Era esperado o nome da entidade." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected end of LOCK statement." -msgid "Unexpected end of the WITH CTE." -msgstr "Fim inesperado da declaração LOCK." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Final inesperado da expressão LOCK." - -#~ msgid "error #1" -#~ msgstr "erro #1" - -#~ msgid "strict error" -#~ msgstr "Erro estrito" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/rcf/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/rcf/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 06ea1042..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/rcf/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/rcf/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/rcf/LC_MESSAGES/sqlparser.po deleted file mode 100644 index f12b1759..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/rcf/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,261 +0,0 @@ -# phpMyAdmin SQL parser translation. -# Copyright (C) 2015 - 2020 phpMyAdmin devel team -# This file is distributed under the same license as the SQL parser package. -# FIRST AUTHOR , YEAR. -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: Automatically generated\n" -"Language-Team: none\n" -"Language: rcf\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "" - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "" - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "" - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "" - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "" - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "" - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "" - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "" - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ro/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ro/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index fc1598a0..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ro/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ro/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ro/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 5e7fb9ab..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ro/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,274 +0,0 @@ -# Automatically generated <>, 2010. -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Romanian \n" -"Language: ro\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < " -"20)) ? 1 : 2;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Neimplementat încă." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"A fost găsită o nouă activitate, dar nu există niciun delimitator între " -"aceasta și cea anterioară." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "Virgulă lipsa înainte de începutul unei noi operațiuni ALTER." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Activitate de modificare necunoscută." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "Au fost așteptate %1$d valori, dar s-au găsit %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "Era așteptată o paranteză de deschidere urmată de un set de valori." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Era așteptată o paranteza de deschidere." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Cuvinte cheie neașteptate." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Sfârșit neașteptat al expresiei CASE" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "Alias potențial duplicat al expresiei CASE." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "Era așteptat un alias după AS dar am primit " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "A fost găsit anterior un alias." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "Era așteptat un alias după AS." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Era așteptat nume de simbol! Un cuvânt cheie rezervat nu poate fi folosit ca " -"nume de coloană fără ghilimele." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Era așteptat un nume de simbol!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Era așteptată o virgulă sau o paranteză de închidere." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Era așteptată o paranteza de închidere." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Tip de date nerecunoscut." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Era așteptată o expresie." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Era așteptat un alias." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Punct neașteptat." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Token neașteptat." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "Era așteptat un decalaj." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Sfârșit neașteptat al expresiei LOCK." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Aceasta opțiune intră în conflict cu „%1$s”." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Era așteptat numele vechi al tabelului." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Cuvantul cheie \"TO\" este cerut." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Era așteptat numele nou al tabelului." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Era așteptată o operație de redenumire." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Lipsește expresia." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Caracter neașteptat." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "S-au așteptat spații goale înainte de delimitator." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "A fost așteptat delimitatorul." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Erau așteptate ghilimele la sfârșit %1$s." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Era așteptat numele variabilei." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Început neașteptat al declarației." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Tip de activitate nerecunoscut." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Nu a fost începută anterior nicio tranzacție." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Acest tip de clauză a fost analizat anterior." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Cuvânt cheie nerecunoscut." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Cuvânt cheie la sfârșitul declarației." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Ordonare neașteptată a clauzelor." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Era așteptat numele entității." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "Era așteptat un nume de tabel." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Era așteptată cel puțin o definiție a coloanei." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "Un cuvânt cheie \"RETURNS\" era de aşteptat." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Acest tip de clauză nu este valid în interogările mai multor tabele." - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "Sfârșit neașteptat al declarației LOCK." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Cuvânt-cheie neașteptat" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "Era așteptat numele CTE." - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "Era de aşteptat cuvântul-cheie AS." - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "Era de așteptat o subinterogare a CTE." - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "Sfârșit neașteptat al WITH CTE." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Sfârșit neașteptat al expresiei LOCK." - -#~ msgid "error #1" -#~ msgstr "eroare #1" - -#~ msgid "strict error" -#~ msgstr "eroare strictă" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ru/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ru/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 22e63055..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ru/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ru/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ru/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 4a52d6f3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ru/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,274 +0,0 @@ -# Automatically generated <>, 2010. -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Russian \n" -"Language: ru\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " -"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Ещё не реализовано." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"Было найдено новое утверждение, но не было разделителя между ним и " -"предыдущим." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "Отсутствует запятая перед началом новой операции alter." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Нераспознанная операция изменения." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "Ожидалось %1$d значений, найдено %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "Ожидалась открывающая скобка и список значений." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Ожидалась открывающая скобка." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Неожиданное ключевое слово." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Неожиданное окончание CASE выражения" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "Потенциальный дубликат псевдонима в выражении CASE." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "После AS ожидается псевдоним, однако получено " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Псевдоним был найден ранее." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "После AS ожидался псевдоним." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Ожидалось имя символа! Зарезервированное ключевое слово не может " -"использоваться как имя столбца без обратных запросов." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Ожидалось имя символа!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Ожидалась запятая или закрывающая скобка." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Ожидалась закрывающая скобка." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Нераспознанный тип данных." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Ожидалось выражение." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Ожидался псевдоним." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Неожиданная точка." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Неожиданный токен." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "Ожидалось смещение." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Неожиданное окончание выражения LOCK." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Этот параметр конфликтует с \"%1$s\"." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Ожидалось старое имя таблицы." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Ожидалось ключевое слово \"TO\"." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Ожидалось новое имя таблицы." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Ожидалась операция переименования." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Отсутствует выражение." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Неожиданный символ." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Ожидался пробел перед разделителем." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Ожидается разделитель." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Ожидалась закрывающая кавычка %1$s." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Ожидалось имя переменной." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Неожиданное начало выражения." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Неизвестный оператор." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Ни одна транзакция не была ранее начата." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Этот тип предложения ранее анализировался." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Неизвестное ключевое слово." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Ключевое слово в конце инструкции." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Неожиданный порядок предложений." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Ожидалось имя сущности." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "Ожидалось имя таблицы." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Ожидалось объявление, по крайней мере, одного столбца." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "Ожидалось ключевое слово \"RETURNS\"." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Такого рода выражения не поддерживаются в мульти-табличных запросах." - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "Неожиданное окончание инструкции LOCK." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Неожиданное ключевое слово" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "Ожидалось имя CTE." - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "Ожидалось ключевое слово AS." - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "Ожидался подзапрос CTE." - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "Неожиданное окончание CTE WITH." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Неожиданное окончание выражения LOCK." - -#~ msgid "error #1" -#~ msgstr "ошибка #1" - -#~ msgid "strict error" -#~ msgstr "строгая ошибка" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/si/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/si/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index a0eca57b..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/si/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/si/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/si/LC_MESSAGES/sqlparser.po deleted file mode 100644 index a424f690..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/si/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,318 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Sinhala \n" -"Language: si\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "තවම නිර්මාණය කර නොමැත." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "හදුනානොගත් වෙනස් කිරීමේ මෙහෙයුමක්." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -#, fuzzy -#| msgid "Unexpected characters on line %s." -msgid "Unexpected keyword." -msgstr "%s වන පේළියේ අනපේක්ෂිත අනුලකුණකි." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "'CASE' ප්‍රකාශය නොසිතු ලෙස අවසන් විය." - -#: src/Components/CaseExpression.php:212 -#, fuzzy -#| msgid "Unexpected end of CASE expression" -msgid "Potential duplicate alias of CASE expression." -msgstr "'CASE' ප්‍රකාශය නොසිතු ලෙස අවසන් විය." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "An alias was expected." -msgid "An alias was expected after AS." -msgstr "අනවර්ථ නාමයක් බලාපොරොත්තු වේ." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "සංකේත නාමයක් බලාපොරොත්තු වේ!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "කොමාවක් හෝ අවසන් කිරීමේ වරහනක් බලාපොරොත්තු වේ." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "අවසන් කිරීමේ වරහනක් බලාපොරොත්තු වේ." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "ප්‍රකාශයක් බලපොරොත්තු වේ." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "අනවර්ථ නාමයක් බලාපොරොත්තු වේ." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "බලාපොරොත්තු නොවූ ඩොට් සලකුණක්." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -#, fuzzy -#| msgid "Unexpected characters on line %s." -msgid "Unexpected token." -msgstr "%s වන පේළියේ අනපේක්ෂිත අනුලකුණකි." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "Unexpected end of CASE expression" -msgid "Unexpected end of LOCK expression." -msgstr "'LOCK' ප්‍රකාශය නොසිතු ලෙස අවසන් විය." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -#, fuzzy -#| msgid "Title of browser window when a table is selected" -msgid "The old name of the table was expected." -msgstr "වගුවක් තෝරා ඇති විට බ්‍රව්සර කවුළුවේ මාතෘකාව" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The row has been deleted." -msgid "A rename operation was expected." -msgstr "පේළිය ඉවත් කරන ලදි." - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "regular expression ලෙස" - -#: src/Lexer.php:274 -#, fuzzy -#| msgid "Unexpected characters on line %s." -msgid "Unexpected character." -msgstr "%s වන පේළියේ අනපේක්ෂිත අනුලකුණකි." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, fuzzy, php-format -#| msgid "Event %1$s has been created." -msgid "Ending quote %1$s was expected." -msgstr "%1$s සිද්ධිය සාදන ලදි." - -#: src/Lexer.php:1056 -#, fuzzy -#| msgid "Table name template" -msgid "Variable name was expected." -msgstr "ගොනු නාම ටෙම්ප්ලේටය" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected beginning of statement." -msgstr "වගුව මුලදී" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Keyword at end of statement." -msgstr "වගුව මුලදී" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected ordering of clauses." -msgstr "වගුව මුලදී" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "Table name template" -msgid "A table name was expected." -msgstr "ගොනු නාම ටෙම්ප්ලේටය" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The row has been deleted." -msgid "At least one column definition was expected." -msgstr "පේළිය ඉවත් කරන ලදි." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK statement." -msgstr "වගුව මුලදී" - -#: src/Statements/PurgeStatement.php:138 -#, fuzzy -#| msgid "Unexpected characters on line %s." -msgid "Unexpected keyword" -msgstr "%s වන පේළියේ අනපේක්ෂිත අනුලකුණකි." - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "Title of browser window when a table is selected" -msgid "The name of the CTE was expected." -msgstr "වගුවක් තෝරා ඇති විට බ්‍රව්සර කවුළුවේ මාතෘකාව" - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "An expression was expected." -msgid "AS keyword was expected." -msgstr "ප්‍රකාශයක් බලපොරොත්තු වේ." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "Title of browser window when a table is selected" -msgid "Subquery of the CTE was expected." -msgstr "වගුවක් තෝරා ඇති විට බ්‍රව්සර කවුළුවේ මාතෘකාව" - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of the WITH CTE." -msgstr "වගුව මුලදී" - -#, fuzzy -#~| msgid "Unexpected end of CASE expression" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "'LOCK' ප්‍රකාශය නොසිතු ලෙස අවසන් විය." - -#, fuzzy -#~| msgid "errors." -#~ msgid "error #1" -#~ msgstr "දෝෂ." - -#, fuzzy -#~| msgid "Gather errors" -#~ msgid "strict error" -#~ msgstr "දෝෂ රැස්කරන්න" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sk/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sk/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 6fa89c14..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sk/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sk/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sk/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 44856d65..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sk/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,287 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Slovak \n" -"Language: sk\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Zatiaľ neimplementované." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"Nový príkaz bol nájdený, ale nenašiel sa oddeľovač medzi týmto a predošlým " -"príkazom." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "Chýba čiarka pred začiatkom novej operácie zmeny." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Nerozpoznaná operácia zmeny." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "Očakávali sa hodnoty %1$d, ale našli sa %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "Očakávala sa otvárajúca zátvorka nasledovaná sadou hodnôt." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Očakávala sa otvárajúca zátvorka." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Neočakávaný znak." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Neočakávaný koniec CASE výrazu" - -#: src/Components/CaseExpression.php:212 -#, fuzzy -#| msgid "Unexpected end of CASE expression" -msgid "Potential duplicate alias of CASE expression." -msgstr "Neočakávaný koniec CASE výrazu" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Alias bol predtým najdený." - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "An alias was expected." -msgid "An alias was expected after AS." -msgstr "Bol očakávaný alias." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Očakávalo sa meno symbolu! Rezervované kľúčové slovo nemôže byt použité ako " -"meno stĺpca bez spätných uvodzoviek." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Očakávalo sa meno symbolu!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Bola očakávaná čiarka alebo uzatváracia zátvorka." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Očakávalo sa uzatvorenie zátvorky." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Nerozpoznaný typ dát." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Bol očakávaný výraz." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Bol očakávaný alias." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Neočakávaná bodka." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Neočakávaný token." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "Odstup bol očakávaný." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Neočakávaný koniec LOCK výrazu." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Táto možnosť je v rozpore s %1$s." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Bolo očakávané staré meno tabuľky." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Kľúčové slovo \"TO\" bolo očakávané." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Bolo očakávané nové meno tabuľky." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Očakávala sa operácia premenovania." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Chýbajúci výraz." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Neočakávaný znak." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Očakávala sa medzera pred oddelovačom." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Očakával sa oddeľovač." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Ukončujúca úvodzovka %1$s sa očakávala." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Očakávalo sa meno premennej." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Neočakávaný začiatok výrazu." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Nerozpoznaný typ výrazu." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Transakcia sa predtým nezačala." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Tento typ vety bol predtým rozobraný." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Nerozpoznané kľúčové slovo." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Kľúčové slovo na konci výrazu." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Neočakávané poradie výrazov." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Meno celku bolo očakávané." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "Očakávalo sa meno tabuľky." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Očakávala sa aspoň jedna definícia stĺpca." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "Očakávalo sa kľúčové slovo \"RETURNS\"." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Takýto typ výrazu nie je platný vo viac tabuľkových dotazoch." - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of LOCK statement." -msgstr "Neočakávaný začiatok výrazu." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Neočakávaný znak" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "The name of the CTE was expected." -msgstr "Meno celku bolo očakávané." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "A \"RETURNS\" keyword was expected." -msgid "AS keyword was expected." -msgstr "Očakávalo sa kľúčové slovo \"RETURNS\"." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "Subquery of the CTE was expected." -msgstr "Meno celku bolo očakávané." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of the WITH CTE." -msgstr "Neočakávaný začiatok výrazu." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Neočakávaný koniec LOCK výrazu." - -#~ msgid "error #1" -#~ msgstr "Chyba #1" - -#~ msgid "strict error" -#~ msgstr "Striktná chyba" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sl/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sl/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 0af123e7..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sl/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sl/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sl/LC_MESSAGES/sqlparser.po deleted file mode 100644 index a656ec2e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sl/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,282 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Slovenian \n" -"Language: sl\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=4; plural=n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || " -"n%100==4 ? 2 : 3;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Ni še implementirano." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"Naleteli smo na nov stavek, vendar med njim in prejšnjim stavkom ni " -"ločilnega znaka." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "Manjkajoča vejica pred začetkom nove operacije alter." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Neprepoznan poseg spremembe." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "Pričakovali smo %1$d vrednosti, vendar smo jih našli %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "Pričakovali smo začetni oklepaj, ki mu sledi množica vrednosti." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Pričakovali smo začetni oklepaj." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Nepričakovana ključna beseda." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Nepričakovan konec izraza CASE" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "Morebiti podvojen vzdevek izraza CASE." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "Po AS smo pričakovali vzdevek, dobili pa " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Vzdevek smo našli že prej." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "Po AS smo pričakovali vzdevek." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Pričakovali smo ime simbola! Rezervirane besede ne morete uporabiti kot ime " -"stolpca brez ustreznih narekovajev." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Pričakovali smo ime znaka!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Pričakovali smo vejico ali zaklepaj." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Pričakovali smo zaklepaj." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Neprepoznana vrsta podatkov." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Pričakovali smo izraz." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Pričakovali smo vzdevek." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Nepričakovana pika." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Nepričakovan žeton." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "Pričakovali smo odmik." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Nepričakovan konec izraza LOCK." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Izbira je v sporu z \"%1$s\"." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Pričakovali smo staro ime tabele." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Pričakovali smo ključno besedo \"TO\"." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Pričakovali smo novo ime tabele." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Pričakovali smo poseg preimenovanja." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Manjkajoč izraz." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Nepričakovan znak." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Pred ločitvenim znakom smo pričakoval prazne znake." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Pričakovali smo ločitveni znak." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Pričakovali smo končni narekovaj %1$s." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Pričakovali smo ime spremenljivke." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Nepričakovan začetek stavka." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Neprepoznana vrsta stavka." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Začeli niste nobene transakcije." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "To vrsto stavka smo prej razčlenili." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Nepričakovana ključna beseda." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Ključna beseda na koncu stavka." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Nepričakovan vrstni red stavkov." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Pričakovali smo ime entitete." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "Pričakovali smo ime tabele." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Pričakovali smo vsaj eno opredelitev stolpca." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "Pričakovali smo ključno besedo \"RETURNS\"." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Ta vrsta stavka ni veljavna v večtabelnih poizvedbah." - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "Nepričakovan konec izjave LOCK." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Nepričakovana ključna beseda" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "The name of the CTE was expected." -msgstr "Pričakovali smo ime entitete." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "A \"RETURNS\" keyword was expected." -msgid "AS keyword was expected." -msgstr "Pričakovali smo ključno besedo \"RETURNS\"." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "Subquery of the CTE was expected." -msgstr "Pričakovali smo ime entitete." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected end of LOCK statement." -msgid "Unexpected end of the WITH CTE." -msgstr "Nepričakovan konec izjave LOCK." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Nepričakovan konec izraza LOCK." - -#~ msgid "error #1" -#~ msgstr "napaka #1" - -#~ msgid "strict error" -#~ msgstr "stroga napaka" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sq/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sq/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 0d36ff21..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sq/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sq/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sq/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 6d057cb3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sq/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,287 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Albanian \n" -"Language: sq\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Nuk është implementuar ende." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"Një deklaratë e re është gjetur, por nuk ka delimiter ndërmjet asaj dhe " -"tjetrës më përpara." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Veprim alter i panjohur." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "Vlerat %1$d u pritën, por u gjetën %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "Pritej një kllapë e hapur, e ndjekur nga një set vlerash." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Pritej një kllapë e hapur." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Fjalë kyçe e papritur." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Fund i papritur i shprehjes së CASE" - -#: src/Components/CaseExpression.php:212 -#, fuzzy -#| msgid "Unexpected end of CASE expression" -msgid "Potential duplicate alias of CASE expression." -msgstr "Fund i papritur i shprehjes së CASE" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Një pseudonim është gjetur më përpara." - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "An alias was expected." -msgid "An alias was expected after AS." -msgstr "Pritej një alias (pseudonim)." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Pritej një emër simboli! Një fjalë kyçe e rezervuar nuk mund të përdoret si " -"një emër kolone pa backquotes." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Pritej emri i një simboli!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Pritej një presje ose një kllapë mbyllëse." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Pritej një kllapë mbyllëse." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Tip të dhënash i panjohur." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Pritej një shprehje." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Pritej një alias (pseudonim)." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Pikë e papritur." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Shenjë e papritur." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "Pritej një rezultat (offset)." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Fund i papritur i shprehjes së LOCK." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Ky opsion ndeshet me \"%1$s\"." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Pritej emri i vjetër i tabelës." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Pritej fjala kyçe \"TO\" (për)." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Pritej emri i ri i tabelës." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Pritej një veprim riemërimi." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Shprehje që mungon." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Karakter i papritur." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Pritej hapësirë(a) e bardhë para delimiterit." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Delimitues i pritshëm." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Pritej thonjëza e fundit %1$s." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Pritej emri i ndryshores." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Fillim i papritur i deklaratës." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Tip deklarate i panjohur." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Deri më tani nuk ka filluar ndonjë transaksion." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Ky tip i klauzolës është parsuar më parë." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Fjalë kyçe e panjohur." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Fillim i papritur i deklaratës." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Urdhërimi i papritur i klauzolave." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Pritej emri i entitetit." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "Pritej një emër tabele." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Pritej së paku një përcaktim kolone." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "Pritej një fjalë kyçe \"RETURNS\"." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Ky lloj i klauzolës nuk është i vlefshëm në pyetjet me shumë tavolina." - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of LOCK statement." -msgstr "Fillim i papritur i deklaratës." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Fjalë kyçe e papritur" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "The name of the CTE was expected." -msgstr "Pritej emri i entitetit." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "A \"RETURNS\" keyword was expected." -msgid "AS keyword was expected." -msgstr "Pritej një fjalë kyçe \"RETURNS\"." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "Subquery of the CTE was expected." -msgstr "Pritej emri i entitetit." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of the WITH CTE." -msgstr "Fillim i papritur i deklaratës." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Fund i papritur i shprehjes së LOCK." - -#~ msgid "error #1" -#~ msgstr "gabim # 1" - -#~ msgid "strict error" -#~ msgstr "gabim i rreptë" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sqlparser.pot b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sqlparser.pot deleted file mode 100644 index 46d9ae95..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sqlparser.pot +++ /dev/null @@ -1,262 +0,0 @@ -# phpMyAdmin SQL parser translation. -# Copyright (C) 2015 - 2023 phpMyAdmin devel team -# This file is distributed under the same license as the SQL parser package. -# FIRST AUTHOR , YEAR. -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" -"Language: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=CHARSET\n" -"Content-Transfer-Encoding: 8bit\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "" - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "" - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "" - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "" - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "" - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "" - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "" - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "" - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sr/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sr/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 337eeb2f..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sr/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sr/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sr/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 594393d7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sr/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,317 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2015-10-15 11:25+0200\n" -"Last-Translator: Michal Čihař \n" -"Language-Team: Serbian \n" -"Language: sr\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " -"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" -"X-Generator: Weblate 2.5-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected after AS." -msgstr "Није изабрана ни једна база." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -msgid "A symbol name was expected!" -msgstr "Шаблон имена датотеке" - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "No databases selected." -msgid "A comma or a closing bracket was expected." -msgstr "Није изабрана ни једна база." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "No rows selected" -msgid "An expression was expected." -msgstr "Нема одабраних редова" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected." -msgstr "Није изабрана ни једна база." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK expression." -msgstr "На почетку табеле" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The old name of the table was expected." -msgstr "Број отворених табела." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The new name of the table was expected." -msgstr "Број отворених табела." - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The row has been deleted." -msgid "A rename operation was expected." -msgstr "Ред је обрисан" - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "као регуларни израз" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, fuzzy, php-format -msgid "Ending quote %1$s was expected." -msgstr "Табела %s је одбачена" - -#: src/Lexer.php:1056 -#, fuzzy -msgid "Variable name was expected." -msgstr "Шаблон имена датотеке" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected beginning of statement." -msgstr "На почетку табеле" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Keyword at end of statement." -msgstr "На почетку табеле" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected ordering of clauses." -msgstr "На почетку табеле" - -#: src/Statements/CreateStatement.php:549 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The name of the entity was expected." -msgstr "Број отворених табела." - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -msgid "A table name was expected." -msgstr "Шаблон имена датотеке" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The row has been deleted." -msgid "At least one column definition was expected." -msgstr "Ред је обрисан" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK statement." -msgstr "На почетку табеле" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The name of the CTE was expected." -msgstr "Број отворених табела." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "No rows selected" -msgid "AS keyword was expected." -msgstr "Нема одабраних редова" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "Subquery of the CTE was expected." -msgstr "Број отворених табела." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of the WITH CTE." -msgstr "На почетку табеле" - -#, fuzzy -#~| msgid "At Beginning of Table" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "На почетку табеле" - -#, fuzzy -#~| msgid "Error" -#~ msgid "error #1" -#~ msgstr "Грешка" - -#, fuzzy -#~| msgid "Query type" -#~ msgid "strict error" -#~ msgstr "Врста упита" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sr@latin/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sr@latin/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 981d1b7f..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sr@latin/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sr@latin/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sr@latin/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 6c50a7f9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sr@latin/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,321 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2015-10-15 11:24+0200\n" -"Last-Translator: Michal Čihař \n" -"Language-Team: Serbian (latin) \n" -"Language: sr@latin\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " -"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" -"X-Generator: Weblate 2.5-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected after AS." -msgstr "Nije izabrana ni jedna baza." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -#| msgid "Table name template" -msgid "A symbol name was expected!" -msgstr "Šablon imena tabele" - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "No databases selected." -msgid "A comma or a closing bracket was expected." -msgstr "Nije izabrana ni jedna baza." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "No rows selected" -msgid "An expression was expected." -msgstr "Nema odabranih redova" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected." -msgstr "Nije izabrana ni jedna baza." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK expression." -msgstr "Na početku tabele" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The old name of the table was expected." -msgstr "Broj otvorenih tabela." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The new name of the table was expected." -msgstr "Broj otvorenih tabela." - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The row has been deleted." -msgid "A rename operation was expected." -msgstr "Red je obrisan" - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "kao regularni izraz" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, fuzzy, php-format -#| msgid "Event %1$s has been created." -msgid "Ending quote %1$s was expected." -msgstr "Događaj %1$s je kreiran." - -#: src/Lexer.php:1056 -#, fuzzy -#| msgid "Table name template" -msgid "Variable name was expected." -msgstr "Šablon imena tabele" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected beginning of statement." -msgstr "Na početku tabele" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Keyword at end of statement." -msgstr "Na početku tabele" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected ordering of clauses." -msgstr "Na početku tabele" - -#: src/Statements/CreateStatement.php:549 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The name of the entity was expected." -msgstr "Broj otvorenih tabela." - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "Table name template" -msgid "A table name was expected." -msgstr "Šablon imena tabele" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The row has been deleted." -msgid "At least one column definition was expected." -msgstr "Red je obrisan" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK statement." -msgstr "Na početku tabele" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The name of the CTE was expected." -msgstr "Broj otvorenih tabela." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "No rows selected" -msgid "AS keyword was expected." -msgstr "Nema odabranih redova" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "Subquery of the CTE was expected." -msgstr "Broj otvorenih tabela." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of the WITH CTE." -msgstr "Na početku tabele" - -#, fuzzy -#~| msgid "At Beginning of Table" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Na početku tabele" - -#, fuzzy -#~| msgid "Error" -#~ msgid "error #1" -#~ msgstr "Greška" - -#, fuzzy -#~| msgid "Gather errors" -#~ msgid "strict error" -#~ msgstr "Prikupljanje grešaka" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sv/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sv/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index f91b34a2..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sv/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sv/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sv/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 3f88779a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/sv/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,304 +0,0 @@ -# Automatically generated <>, 2010. -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2022-10-23 12:05+0000\n" -"Last-Translator: Tom Sawyer \n" -"Language-Team: Swedish \n" -"Language: sv\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.14.2-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Ännu inte implementerat." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"En ny sats hittades, men ingen avgränsare mellan det och den föregående." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "Kommatecken saknas före start av en ny alter-operation." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Okänd operation." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "%1$d värden var väntat, men hittade %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "En inledande hakparentes följt av en uppsättning värden förväntades." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "En inledande hakparentes förväntades." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -#, fuzzy -#| msgid "Unexpected token." -msgid "Unexpected keyword." -msgstr "Oväntad token." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Ett alias hittades tidigare." - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "An alias was expected." -msgid "An alias was expected after AS." -msgstr "Ett alias förväntades." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -#| msgid "Variable name was expected." -msgid "A symbol name was expected!" -msgstr "Variabel namn förväntades." - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Semikolon eller en avslutande hakparentes förväntades." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "En avslutande hakparentes förväntades." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Okänd datatyp." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Ett uttryck förväntades." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Ett alias förväntades." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Oväntad punkt." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Oväntad token." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "En förskjutning förväntades." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of LOCK expression." -msgstr "Oväntad början av satsen." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Det här alternativet är i konflikt med \"%1$s\"." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Det gamla namnet på tabellen förväntades." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Sökordet \"Till\" förväntades." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Det nya namnet på tabellen förväntades." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Ett namnbyte förväntades." - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "som reguljärt uttryck" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Oväntade tecken." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Förväntade avgränsare." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Slut citat %1$s förväntades." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Variabel namn förväntades." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Oväntad början av satsen." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Okänd uttryckstyp." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Ingen transaktion startades tidigare." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Okänt nyckelord." - -#: src/Statement.php:409 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Keyword at end of statement." -msgstr "Oväntad början av satsen." - -#: src/Statement.php:555 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected ordering of clauses." -msgstr "Oväntad början av satsen." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Namnet på entiteten förväntades." - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "Variable name was expected." -msgid "A table name was expected." -msgstr "Variabel namn förväntades." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Minst en kolumndefinition förväntades." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "Ett nyckelord förväntades." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of LOCK statement." -msgstr "Oväntad början av satsen." - -#: src/Statements/PurgeStatement.php:138 -#, fuzzy -#| msgid "Unexpected token." -msgid "Unexpected keyword" -msgstr "Oväntad token." - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "The name of the CTE was expected." -msgstr "Namnet på entiteten förväntades." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "A \"RETURNS\" keyword was expected." -msgid "AS keyword was expected." -msgstr "Ett nyckelord förväntades." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "Subquery of the CTE was expected." -msgstr "Namnet på entiteten förväntades." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of the WITH CTE." -msgstr "Oväntad början av satsen." - -#, fuzzy -#~| msgid "Unexpected beginning of statement." -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Oväntad början av satsen." - -#, fuzzy -#~| msgid "errors." -#~ msgid "error #1" -#~ msgstr "fel." - -#, fuzzy -#~| msgid "Gather errors" -#~ msgid "strict error" -#~ msgstr "Samla fel" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ta/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ta/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index df0fe9a6..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ta/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ta/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ta/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 8f1c886c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ta/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,320 +0,0 @@ -# phpMyAdmin translation. -# Copyright (C) 2003 - 2010 phpMyAdmin devel team -# This file is distributed under the same license as the phpMyAdmin package. -# FIRST AUTHOR , YEAR. -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2017-07-21 09:33+0000\n" -"Last-Translator: Murshid Ahmed \n" -"Language-Team: Tamil \n" -"Language: ta\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 2.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "இன்னும் அமுலாக்கப்படவில்லை." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "எதிர்பாராத சிறப்புச்சொல்." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "No tables selected." -msgid "An alias was expected after AS." -msgstr "எந்த தரவுத்தளமும் தேர்ந்தெடுக்கப்படவில்லை." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -#| msgid "No tables selected." -msgid "A symbol name was expected!" -msgstr "எந்த தரவுத்தளமும் தேர்ந்தெடுக்கப்படவில்லை." - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "No tables selected." -msgid "A comma or a closing bracket was expected." -msgstr "எந்த தரவுத்தளமும் தேர்ந்தெடுக்கப்படவில்லை." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "No rows selected" -msgid "An expression was expected." -msgstr "தெரிவுசெய்யப்பட வரிசைகள் இல்லை" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "No tables selected." -msgid "An alias was expected." -msgstr "எந்த தரவுத்தளமும் தேர்ந்தெடுக்கப்படவில்லை." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -#, fuzzy -#| msgid "Unexpected characters on line %s." -msgid "Unexpected token." -msgstr "%sம் வரியில் எதிர்பாராத எழுத்துக்கள் உள்ளன." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "Rate of table open" -msgid "Unexpected end of LOCK expression." -msgstr "திறந்தநிலை அட்டவணைகளின் விழுக்காடு" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The row has been deleted." -msgid "A rename operation was expected." -msgstr "இந்நிரைவரிசை அழிக்கப்பட்டது." - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "வழக்கமான வெளிப்பாடு" - -#: src/Lexer.php:274 -#, fuzzy -#| msgid "Unexpected characters on line %s." -msgid "Unexpected character." -msgstr "%sம் வரியில் எதிர்பாராத எழுத்துக்கள் உள்ளன." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "Rate of table open" -msgid "Unexpected beginning of statement." -msgstr "திறந்தநிலை அட்டவணைகளின் விழுக்காடு" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "Rate of table open" -msgid "Keyword at end of statement." -msgstr "திறந்தநிலை அட்டவணைகளின் விழுக்காடு" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "Rate of table open" -msgid "Unexpected ordering of clauses." -msgstr "திறந்தநிலை அட்டவணைகளின் விழுக்காடு" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "No tables selected." -msgid "A table name was expected." -msgstr "எந்த தரவுத்தளமும் தேர்ந்தெடுக்கப்படவில்லை." - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The row has been deleted." -msgid "At least one column definition was expected." -msgstr "இந்நிரைவரிசை அழிக்கப்பட்டது." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "Rate of table open" -msgid "Unexpected end of LOCK statement." -msgstr "திறந்தநிலை அட்டவணைகளின் விழுக்காடு" - -#: src/Statements/PurgeStatement.php:138 -#, fuzzy -#| msgid "Unexpected keyword." -msgid "Unexpected keyword" -msgstr "எதிர்பாராத சிறப்புச்சொல்." - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "No tables selected." -msgid "The name of the CTE was expected." -msgstr "எந்த தரவுத்தளமும் தேர்ந்தெடுக்கப்படவில்லை." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "No rows selected" -msgid "AS keyword was expected." -msgstr "தெரிவுசெய்யப்பட வரிசைகள் இல்லை" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "No tables selected." -msgid "Subquery of the CTE was expected." -msgstr "எந்த தரவுத்தளமும் தேர்ந்தெடுக்கப்படவில்லை." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Rate of table open" -msgid "Unexpected end of the WITH CTE." -msgstr "திறந்தநிலை அட்டவணைகளின் விழுக்காடு" - -#, fuzzy -#~| msgid "Rate of table open" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "திறந்தநிலை அட்டவணைகளின் விழுக்காடு" - -#, fuzzy -#~| msgid "Error" -#~ msgid "error #1" -#~ msgstr "வலு" - -#, fuzzy -#~| msgid "Query error" -#~ msgid "strict error" -#~ msgstr "வினவல் வழு" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/te/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/te/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 2e6fb50c..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/te/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/te/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/te/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 9806be66..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/te/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,326 +0,0 @@ -# phpMyAdmin translation. -# Copyright (C) 2003 - 2010 phpMyAdmin devel team -# This file is distributed under the same license as the phpMyAdmin package. -# FIRST AUTHOR , YEAR. -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2017-04-12 15:19+0000\n" -"Last-Translator: bhargavi sabbisetty \n" -"Language-Team: Telugu \n" -"Language: te\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 2.13\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "ఇంకా అమలు కాలేదు." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "ఒక కొత్త వాక్యం కనిపించింది, కానీ దీనికి మరియు మునుపటి దానికి మధ్య ఎటువంటి డీలిమిటర్ లేదు ." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "గుర్తించబడని మారు ఆపరేషన్." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "Table name" -msgid "An alias was expected after AS." -msgstr "పట్టిక పేరు" - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -#| msgid "Table name" -msgid "A symbol name was expected!" -msgstr "పట్టిక పేరు" - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "Table name" -msgid "A comma or a closing bracket was expected." -msgstr "పట్టిక పేరు" - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "Table name" -msgid "An expression was expected." -msgstr "పట్టిక పేరు" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "Table name" -msgid "An alias was expected." -msgstr "పట్టిక పేరు" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -# మొదటి అనువాదము -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgctxt "short form" -#| msgid "Create table" -msgid "Unexpected end of LOCK expression." -msgstr "పట్టికను సృష్టించు" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "Database %s has been dropped." -msgid "A rename operation was expected." -msgstr "%s డేటాబేస్ తుడిచివేయడమైనది" - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "Last version" -msgid "Missing expression." -msgstr "చివరి కూర్పు" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -# మొదటి అనువాదము -#: src/Lexer.php:1004 -#, fuzzy, php-format -#| msgid "Page has been created." -msgid "Ending quote %1$s was expected." -msgstr "పుటను సృష్టించడమైనది" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "" - -# మొదటి అనువాదము -#: src/Parser.php:456 -#, fuzzy -#| msgctxt "short form" -#| msgid "Create table" -msgid "Unexpected beginning of statement." -msgstr "పట్టికను సృష్టించు" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -# మొదటి అనువాదము -#: src/Statement.php:409 -#, fuzzy -#| msgctxt "short form" -#| msgid "Create table" -msgid "Keyword at end of statement." -msgstr "పట్టికను సృష్టించు" - -# మొదటి అనువాదము -#: src/Statement.php:555 -#, fuzzy -#| msgctxt "short form" -#| msgid "Create table" -msgid "Unexpected ordering of clauses." -msgstr "పట్టికను సృష్టించు" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "Table name" -msgid "A table name was expected." -msgstr "పట్టిక పేరు" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "Database %s has been dropped." -msgid "At least one column definition was expected." -msgstr "%s డేటాబేస్ తుడిచివేయడమైనది" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -# మొదటి అనువాదము -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgctxt "short form" -#| msgid "Create table" -msgid "Unexpected end of LOCK statement." -msgstr "పట్టికను సృష్టించు" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "Table name" -msgid "The name of the CTE was expected." -msgstr "పట్టిక పేరు" - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "Table name" -msgid "AS keyword was expected." -msgstr "పట్టిక పేరు" - -# మొదటి అనువాదము -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "Page has been created." -msgid "Subquery of the CTE was expected." -msgstr "పుటను సృష్టించడమైనది" - -# మొదటి అనువాదము -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgctxt "short form" -#| msgid "Create table" -msgid "Unexpected end of the WITH CTE." -msgstr "పట్టికను సృష్టించు" - -# మొదటి అనువాదము -#, fuzzy -#~| msgctxt "short form" -#~| msgid "Create table" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "పట్టికను సృష్టించు" - -#, fuzzy -#~| msgid "Error" -#~ msgid "error #1" -#~ msgstr "పొరపాటు" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/th/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/th/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index a9a3167a..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/th/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/th/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/th/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 0162eebe..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/th/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,285 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Thai \n" -"Language: th\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "ยังไม่มีการดำเนินการ" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "ตรวจพบประพจน์ใหม่ แต่ไม่มีตัวคั่นระหว่างข้อความนี้กับข้อความก่อนหน้า" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "ไม่รู้จักการปฏิบัติการนอกเหนือจากนี้" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "ค่าของ %1$d ได้รับการคาดเดา แต่สิ่งที่พบคือ %2$d" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "เปิดวงเล็บเหลี่ยมแล้วตามด้วยชุดของค่าที่จะคาดเดา" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "วงเล็บเหลี่ยมเปิดได้รับการคาดเดา" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "คำสำคัญที่ไม่ได้รับการคาดเดา" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "จุดสิ้นสุดนิพจน์ CASE ไม่ได้รับการคาดเดา" - -#: src/Components/CaseExpression.php:212 -#, fuzzy -#| msgid "Unexpected end of CASE expression" -msgid "Potential duplicate alias of CASE expression." -msgstr "จุดสิ้นสุดนิพจน์ CASE ไม่ได้รับการคาดเดา" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "ชื่อ alias มีอยู่ก่อนแล้ว" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "An alias was expected." -msgid "An alias was expected after AS." -msgstr "ตัวแทนได้รับการคาดเดา" - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"ชื่อสัญลักษณ์ได้รับการคาดเดาแล้ว " -"คำสำคัญที่สงวนไว้ไม่สามารถใช้เป็นชื่อคอลัมน์โดยไม่มีอัญประกาศกลับหลังได้" - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "ชื่อสัญลักษณ์ได้รับการคาดเดา!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "จุลภาค หรือ วงเล็บปิด ได้รับการคาดเดา" - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "วงเล็บปิดได้รับการคาดเดา" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "ไม่รู้จักชนิดข้อมูล" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "หนึ่งนิพจน์ได้รับการคาดเดา" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "ตัวแทนได้รับการคาดเดา" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "จุด ไม่ได้รับการคาดเดา" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "โทเค็นที่ไม่ได้คาดหวังไว้" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "หนึ่งออฟเซ็ตได้รับการคาดเดา" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "จุดสิ้นสุดนิพจน์ LOCK ไม่ได้รับการคาดเดา." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "ตัวเลือกนี้ขัดแย้งกับ %1$s" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "ชื่อเดิมของตารางได้รับการคาดเดา" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "คำสำคัญ \"TO\" ได้รับการคาดเดา" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "ชื่อตารางใหม่ได้รับการคาดเดา" - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "การเปลี่ยนชื่อได้รับการคาดเดา" - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "นิพจน์ขาดหาย" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "ตัวอักษรที่คาดเดาไม่ได้" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "วรรค(อาจจะมากกว่าหนึ่ง) ได้รับการคาดเดาก่อนตัวคั่น" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "ตัวคั่นได้รับการคาดเดา" - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "อัญประกาศปิด %1$s ได้รับการคาดเดา" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "ชื่อตัวแปรได้รับการคาดเดา" - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "ไม่อาจคาดเดาจุดเริ่มต้นของประพจน์" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "ไม่รู้จักชนิดของประพจน์" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "ไม่มีข้อมูลเข้าออกได้เริ่มต้นมาก่อน" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "ชนิดของประโยคนี้ถูกวิเคราะห์มาแล้วก่อนหน้านี้" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "ไม่รู้จักชนิดของคีย์เวิร์ด" - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "คีย์เวิร์ดในตอนท้ายของคำสั่ง" - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "การเรียงของประโยคที่ไม่ได้คาดหวังไว้" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "ชื่อเอนทิติได้รับการคาดหวัง" - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "ชื่อตารางได้รับการคาดหวัง" - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "การกำหนดคอลัมน์อย่างน้อยหนึ่งคอลัมน์ได้รับการคาดหวัง" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "คีย์เวิร์ด \"RETURNS\" ได้รับการคาดหวัง" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "ประโยคชนิดนี้ไม่ถูกต้องในการเรียกใช้แบบหลายตาราง" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of LOCK statement." -msgstr "ไม่อาจคาดเดาจุดเริ่มต้นของประพจน์" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "คำสำคัญที่ไม่ได้รับการคาดเดา" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "The name of the CTE was expected." -msgstr "ชื่อเอนทิติได้รับการคาดหวัง" - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "A \"RETURNS\" keyword was expected." -msgid "AS keyword was expected." -msgstr "คีย์เวิร์ด \"RETURNS\" ได้รับการคาดหวัง" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "Subquery of the CTE was expected." -msgstr "ชื่อเอนทิติได้รับการคาดหวัง" - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of the WITH CTE." -msgstr "ไม่อาจคาดเดาจุดเริ่มต้นของประพจน์" - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "จุดสิ้นสุดนิพจน์ LOCK ไม่ได้รับการคาดเดา." - -#~ msgid "error #1" -#~ msgstr "ผิดพลาด #1" - -#~ msgid "strict error" -#~ msgstr "ข้อผิดพลาดที่ครัดเคร้ง" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/tk/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/tk/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index add4581e..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/tk/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/tk/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/tk/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 96763133..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/tk/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,284 +0,0 @@ -# phpMyAdmin translation. -# Copyright (C) 2003 - 2011 phpMyAdmin devel team -# This file is distributed under the same license as the phpMyAdmin package. -# FIRST AUTHOR , YEAR. -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2013-05-07 17:12+0200\n" -"Last-Translator: Michal Čihař \n" -"Language-Team: Turkmen \n" -"Language: tk\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 1.6-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "An alias was expected after AS." -msgstr "%1$s maglumatlar ulgamy döredildi." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "A symbol name was expected!" -msgstr "%1$s maglumatlar ulgamy döredildi." - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "A comma or a closing bracket was expected." -msgstr "%1$s maglumatlar ulgamy döredildi." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "An alias was expected." -msgstr "%1$s maglumatlar ulgamy döredildi." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "A rename operation was expected." -msgstr "%1$s maglumatlar ulgamy döredildi." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "" - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "" - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "A table name was expected." -msgstr "%1$s maglumatlar ulgamy döredildi." - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "At least one column definition was expected." -msgstr "%1$s maglumatlar ulgamy döredildi." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "The name of the CTE was expected." -msgstr "%1$s maglumatlar ulgamy döredildi." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "AS keyword was expected." -msgstr "%1$s maglumatlar ulgamy döredildi." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "Subquery of the CTE was expected." -msgstr "%1$s maglumatlar ulgamy döredildi." - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/tr/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/tr/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 4ca565e1..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/tr/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/tr/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/tr/LC_MESSAGES/sqlparser.po deleted file mode 100644 index e230e7d4..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/tr/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,272 +0,0 @@ -# Automatically generated <>, 2010. -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2021-12-31 01:53+0000\n" -"Last-Translator: Burak Yavuz \n" -"Language-Team: Turkish \n" -"Language: tr\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 4.10.1\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Henüz uygulanmadı." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"Yeni bir ifade bulundu, ancak bu ve önceki arasında hiç sınırlayıcı yok." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "Yeni bir alter işlemi başlamadan önce eksik virgül." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Kategorilenmemiş değiştirme işlemi." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "%1$d değer beklenmekte, ancak %2$d bulundu." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "Açık bir köşeli parantez ardından bir grup değer beklenmekte." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Açık bir köşeli parantez beklenmekte." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Beklenmeyen anahtar kelime." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Beklenmeyen CASE ifadesi sonu" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "CASE ifadesinin olası kopya kod adı." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "AS'den sonra beklenen ancak var olan bir kod adı " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Bir kodadı daha önce bulundu." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "AS'den sonra bir kod adı beklenmekte." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Bir sembol adı beklenmekte! Ayrılmış bir anahtar kelime ters eğik tırnakları " -"olmadan bir sütun adı olarak kullanılamaz." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Bir sembol adı beklenmekte!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Bir virgül ya da kapalı bir köşeli parantez beklenmekte." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Kapalı bir köşeli parantez beklenmekte." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Tanınmayan veri türü." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Bir ifade beklenmekte." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Bir kodadı beklenmekte." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Beklenmeyen nokta." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Beklenmeyen belirteç." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "Bir karşılık beklenmekte." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Beklenmeyen LOCK ifadesi sonu." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Bu seçenek \"%1$s\" ile çakışıyor." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Tablonun eski adı beklenmekte." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "\"TO\" anahtar kelimesi beklenmekte." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Tablonun yeni adı beklenmekte." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Yeniden adlandırma işlemi beklenmekte." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Eksik ifade." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Beklenmeyen karakter." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Sınırlayıcıdan önce beklenen boşluk(lar)." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Beklenen sınırlayıcı." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Sonlandırma tırnak işareti %1$s beklenmekte." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Değişken adı beklenmekte." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Beklenmeyen ifade başlangıcı." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Tanınmayan ifade türü." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Daha önce hiç işlem başlatılmadı." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Bu tür yan tümce daha önce ayrıştırıldı." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Tanınmayan anahtar kelime." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "İfade sonundaki anahtar kelime." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Beklenmeyen yan tümce sıralaması." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Varlığın adı beklenmekte." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "Tablo adı beklenmekte." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "En az bir sütun tanımı beklenmekte." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "\"RETURNS\" anahtar kelimesi beklenmekte." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Bu tür yan tümce Çoklu tablo sorgularında geçerli değil." - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "Beklenmeyen LOCK deyimi sonu." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Beklenmeyen anahtar kelime" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "CTE'nin adı beklenmekte." - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "AS anahtar kelimesi beklenmekte." - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "CTE'nin alt sorgusu beklenmekte." - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "WITH CTE'nin beklenmeyen sonu." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Beklenmeyen LOCK ifadesi sonu." - -#~ msgid "error #1" -#~ msgstr "hata #1" - -#~ msgid "strict error" -#~ msgstr "kesin hata" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/tt/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/tt/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 89a3bd1d..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/tt/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/tt/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/tt/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 946fdf04..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/tt/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,316 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2015-10-15 11:22+0200\n" -"Last-Translator: Michal Čihař \n" -"Language-Team: Tatar \n" -"Language: tt\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 2.5-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected after AS." -msgstr "Biremlek saylanmağan." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -msgid "A symbol name was expected!" -msgstr "Birem adınıñ tözeleşe" - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "No databases selected." -msgid "A comma or a closing bracket was expected." -msgstr "Biremlek saylanmağan." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "No rows selected" -msgid "An expression was expected." -msgstr "Kertemnär sayladı" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected." -msgstr "Biremlek saylanmağan." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK expression." -msgstr "Tüşämä Başına" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The old name of the table was expected." -msgstr "Açıq toruçı tüşämä sanı." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The new name of the table was expected." -msgstr "Açıq toruçı tüşämä sanı." - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The row has been deleted." -msgid "A rename operation was expected." -msgstr "Bu yazma salınğan buldı" - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "regexp kileş" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, fuzzy, php-format -msgid "Ending quote %1$s was expected." -msgstr "\"%s\" atlı tüşämä beterelde" - -#: src/Lexer.php:1056 -#, fuzzy -msgid "Variable name was expected." -msgstr "Birem adınıñ tözeleşe" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected beginning of statement." -msgstr "Tüşämä Başına" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Keyword at end of statement." -msgstr "Tüşämä Başına" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected ordering of clauses." -msgstr "Tüşämä Başına" - -#: src/Statements/CreateStatement.php:549 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The name of the entity was expected." -msgstr "Açıq toruçı tüşämä sanı." - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -msgid "A table name was expected." -msgstr "Birem adınıñ tözeleşe" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The row has been deleted." -msgid "At least one column definition was expected." -msgstr "Bu yazma salınğan buldı" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK statement." -msgstr "Tüşämä Başına" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The name of the CTE was expected." -msgstr "Açıq toruçı tüşämä sanı." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "No rows selected" -msgid "AS keyword was expected." -msgstr "Kertemnär sayladı" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "Subquery of the CTE was expected." -msgstr "Açıq toruçı tüşämä sanı." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of the WITH CTE." -msgstr "Tüşämä Başına" - -#, fuzzy -#~| msgid "At Beginning of Table" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Tüşämä Başına" - -#, fuzzy -#~| msgid "Error" -#~ msgid "error #1" -#~ msgstr "Xata" - -#, fuzzy -#~| msgid "Query type" -#~ msgid "strict error" -#~ msgstr "Soraw töre" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ug/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ug/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 66c2da2f..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ug/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ug/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ug/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 1da81728..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ug/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,315 +0,0 @@ -# phpMyAdmin translation. -# Copyright (C) 2003 - 2010 phpMyAdmin devel team -# This file is distributed under the same license as the phpMyAdmin package. -# FIRST AUTHOR , YEAR. -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2020-08-03 18:42+0000\n" -"Last-Translator: Abdusalam <1810010207@s.upc.edu.cn>\n" -"Language-Team: Uyghur \n" -"Language: ug\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.2-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "تېخى يولغا قويۇلمىدى." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"يېڭى بايانات تېپىلدى ، ئەمما ئۇنىڭ بىلەن ئالدىنقىسىنىڭ ئوتتۇرىسىدا ئېنىقلىما " -"يوق." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "يېڭى ئۆزگەرتىش مەشغۇلاتى باشلىنىشتىن بۇرۇن پەش يوقاپ كەتتى." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "تونۇلمىغان ئۆزگەرتىش مەشغۇلاتى." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "With selected:" -msgid "An alias was expected after AS." -msgstr "تاللانغىنى:" - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -#| msgid "With selected:" -msgid "A symbol name was expected!" -msgstr "تاللانغىنى:" - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "With selected:" -msgid "A comma or a closing bracket was expected." -msgstr "تاللانغىنى:" - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "With selected:" -msgid "An expression was expected." -msgstr "تاللانغىنى:" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "With selected:" -msgid "An alias was expected." -msgstr "تاللانغىنى:" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "Show dimension of tables" -msgid "Unexpected end of LOCK expression." -msgstr "جەدېۋەلنىڭ چوڭ-كىچىكلىكىنى كۆرسىتىش" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The bookmark has been deleted." -msgid "A rename operation was expected." -msgstr "خەتكۈچ ئۆچۈرۈلدى." - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "مۇنتىزىم ئىپادە" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, fuzzy, php-format -#| msgid "Database %1$s has been created." -msgid "Ending quote %1$s was expected." -msgstr "%1$s ساندان غەلبىلىك قۇرۇلدى" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "Show dimension of tables" -msgid "Unexpected beginning of statement." -msgstr "جەدېۋەلنىڭ چوڭ-كىچىكلىكىنى كۆرسىتىش" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "Show dimension of tables" -msgid "Keyword at end of statement." -msgstr "جەدېۋەلنىڭ چوڭ-كىچىكلىكىنى كۆرسىتىش" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "Show dimension of tables" -msgid "Unexpected ordering of clauses." -msgstr "جەدېۋەلنىڭ چوڭ-كىچىكلىكىنى كۆرسىتىش" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "With selected:" -msgid "A table name was expected." -msgstr "تاللانغىنى:" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The bookmark has been deleted." -msgid "At least one column definition was expected." -msgstr "خەتكۈچ ئۆچۈرۈلدى." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "Show dimension of tables" -msgid "Unexpected end of LOCK statement." -msgstr "جەدېۋەلنىڭ چوڭ-كىچىكلىكىنى كۆرسىتىش" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "With selected:" -msgid "The name of the CTE was expected." -msgstr "تاللانغىنى:" - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "With selected:" -msgid "AS keyword was expected." -msgstr "تاللانغىنى:" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "Subquery of the CTE was expected." -msgstr "%1$s ساندان غەلبىلىك قۇرۇلدى" - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Show dimension of tables" -msgid "Unexpected end of the WITH CTE." -msgstr "جەدېۋەلنىڭ چوڭ-كىچىكلىكىنى كۆرسىتىش" - -#, fuzzy -#~| msgid "Show dimension of tables" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "جەدېۋەلنىڭ چوڭ-كىچىكلىكىنى كۆرسىتىش" - -#~ msgid "error #1" -#~ msgstr "خاتالىق #1" - -#, fuzzy -#~| msgid "Query" -#~ msgid "strict error" -#~ msgstr "تەكشۈرۈش" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/uk/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/uk/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index d9eae9c8..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/uk/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/uk/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/uk/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 8a75ce8f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/uk/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,272 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Ukrainian \n" -"Language: uk\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " -"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Ще не реалізовано." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "Новий оператор знайдено, але між ним і попереднім немає роздільника." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "Відсутня кома перед початком нової операції зміни." - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Нерозпізнана операція зміни." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "Очікувалося %1$d значення, а знайдено %2$d ." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "Очікувалося відкриття дужки з набором значень." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Очікувалося відкриття дужки." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Неочікуване ключове слово." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Неочікуваний кінець виразу CASE" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "Потенційний повторюваний псевдонім виразу CASE." - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "Псевдонім очікується після AS, але отримано " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Псевдонім був раніше знайдений." - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "Псевдонім очікувався після AS." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Очікувалося ім'я ідентифікатора! Зарезервоване ключове слово не може " -"використовуватися, як ім'я стовпця, без зворотніх лапок." - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "Очікувалося ім'я ідентифікатора!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Очікувалося, кома або закривна дужка." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Очікувалася закривна дужка." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Нерозпізнаний тип даних." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Очікувався оператор." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Очікувався псевдонім." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Неочікувана крапка." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Неочікуваний маркер." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "Очікувалося зміщення." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Неочікуваний кінець виразу LOCK." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Цей параметр конфліктує з \"%1$s\"." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Очікувалося стара назва таблиці." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Очікувалося ключове слово \"TO\"." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Очікувалося нове ім'я таблиці." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Очікувалася операція перейменування." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Відсутній оператор." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Неочікуваний символ." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Очікувалося пробіл(и) перед роздільником." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Очікувалося роздільник." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Очікувалося закриваюча лапка %1$s ." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Очікувалося ім'я змінної." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Неочікуваний початок виразу оператора." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Нерозпізнаний тип оператора." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Жодна транзакція не була раніше запущена." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Цей тип оператора був раніше проаналізований." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Нерозпізнане ключове слово." - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "Ключове слово в кінці виразу." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Неочікуваний порядок операторів." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Очікувалося ім'я об'єкта." - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "Очікувалося ім'я таблиці." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Очікувалося, принаймні одне визначення стовпчика." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "Очікувалося ключове слово \"RETURNS\"." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Цей тип оператора не діє для запитів групових таблиць." - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "Несподіваний кінець оператора LOCK." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Неочікуване ключове слово" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "Очікувалося ім'я CTE." - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "Очікувалося ключове слово \"AS\"." - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "Очікувався підзапит CTE." - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "Несподіваний кінець WITH CTE." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Несподіваний кінець виразу LOCK." - -#~ msgid "error #1" -#~ msgstr "помилка #1" - -#~ msgid "strict error" -#~ msgstr "недопустима помилка" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ur/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ur/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 605b5a5f..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ur/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ur/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ur/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 4eab656a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/ur/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,319 +0,0 @@ -# phpMyAdmin translation. -# Copyright (C) 2003 - 2010 phpMyAdmin devel team -# This file is distributed under the same license as the phpMyAdmin package. -# FIRST AUTHOR , YEAR. -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2015-10-15 11:05+0200\n" -"Last-Translator: Michal Čihař \n" -"Language-Team: Urdu \n" -"Language: ur\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Weblate 2.5-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -#, fuzzy -#| msgid "Iconic table operations" -msgid "Unrecognized alter operation." -msgstr "شبیہاتی جدول عملیات" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "Removing Selected Users" -msgid "An alias was expected after AS." -msgstr "منتخب صارفین حذف کیے جا رہے ہیں" - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -#| msgid "Table name template" -msgid "A symbol name was expected!" -msgstr "جدول نام سانچا" - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "Removing Selected Users" -msgid "A comma or a closing bracket was expected." -msgstr "منتخب صارفین حذف کیے جا رہے ہیں" - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "Removing Selected Users" -msgid "An expression was expected." -msgstr "منتخب صارفین حذف کیے جا رہے ہیں" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "Removing Selected Users" -msgid "An alias was expected." -msgstr "منتخب صارفین حذف کیے جا رہے ہیں" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "Show dimension of tables" -msgid "Unexpected end of LOCK expression." -msgstr "ٹیبلز کی جسامت دیکھیں" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The bookmark has been deleted." -msgid "A rename operation was expected." -msgstr "نشانی حذف ہو چکی ہے۔" - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "بطور باقاعدہ اظہار" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, fuzzy, php-format -#| msgid "Database %1$s has been created." -msgid "Ending quote %1$s was expected." -msgstr "کوائفیہ $1%s بن گئی ہے۔" - -#: src/Lexer.php:1056 -#, fuzzy -#| msgid "Table name template" -msgid "Variable name was expected." -msgstr "جدول نام سانچا" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "Show dimension of tables" -msgid "Unexpected beginning of statement." -msgstr "ٹیبلز کی جسامت دیکھیں" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "Show dimension of tables" -msgid "Keyword at end of statement." -msgstr "ٹیبلز کی جسامت دیکھیں" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "Show dimension of tables" -msgid "Unexpected ordering of clauses." -msgstr "ٹیبلز کی جسامت دیکھیں" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "Table name template" -msgid "A table name was expected." -msgstr "جدول نام سانچا" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The bookmark has been deleted." -msgid "At least one column definition was expected." -msgstr "نشانی حذف ہو چکی ہے۔" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "Show dimension of tables" -msgid "Unexpected end of LOCK statement." -msgstr "ٹیبلز کی جسامت دیکھیں" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "Table name template" -msgid "The name of the CTE was expected." -msgstr "جدول نام سانچا" - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "Removing Selected Users" -msgid "AS keyword was expected." -msgstr "منتخب صارفین حذف کیے جا رہے ہیں" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "Database %1$s has been created." -msgid "Subquery of the CTE was expected." -msgstr "کوائفیہ $1%s بن گئی ہے۔" - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Show dimension of tables" -msgid "Unexpected end of the WITH CTE." -msgstr "ٹیبلز کی جسامت دیکھیں" - -#, fuzzy -#~| msgid "Show dimension of tables" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "ٹیبلز کی جسامت دیکھیں" - -#, fuzzy -#~| msgid "Error" -#~ msgid "error #1" -#~ msgstr "نقص" - -#, fuzzy -#~| msgid "Gather errors" -#~ msgid "strict error" -#~ msgstr "نقائص اکھٹی کریں" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/uz/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/uz/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index bf68fbd8..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/uz/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/uz/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/uz/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 1cc7c737..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/uz/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,322 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2015-10-15 11:39+0200\n" -"Last-Translator: Michal Čihař \n" -"Language-Team: Uzbek \n" -"Language: uz\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=(n > 1);\n" -"X-Generator: Weblate 2.5-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -#, fuzzy -#| msgid "Iconic table operations" -msgid "Unrecognized alter operation." -msgstr "Жадвал операцияларини пиктограммалар ёрдамида амалга ошириш" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected after AS." -msgstr "Биронта ҳам маълумотлар базаси танланмаган." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -#| msgid "Table name template" -msgid "A symbol name was expected!" -msgstr "Жадвал номи шаблони" - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "No databases selected." -msgid "A comma or a closing bracket was expected." -msgstr "Биронта ҳам маълумотлар базаси танланмаган." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "No rows selected" -msgid "An expression was expected." -msgstr "Амални амалга ошириш учун битта ёки бир нечта қаторни танлаш керак." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected." -msgstr "Биронта ҳам маълумотлар базаси танланмаган." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK expression." -msgstr "Жадвал бошига" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The old name of the table was expected." -msgstr "Очиқ жадваллар сони." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The new name of the table was expected." -msgstr "Очиқ жадваллар сони." - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The row has been deleted." -msgid "A rename operation was expected." -msgstr "Ёзув ўчирилди" - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "мунтазам ибора" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, fuzzy, php-format -#| msgid "Table %1$s has been created." -msgid "Ending quote %1$s was expected." -msgstr "%1$s жадвали тузилди." - -#: src/Lexer.php:1056 -#, fuzzy -#| msgid "Table name template" -msgid "Variable name was expected." -msgstr "Жадвал номи шаблони" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected beginning of statement." -msgstr "Жадвал бошига" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Keyword at end of statement." -msgstr "Жадвал бошига" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected ordering of clauses." -msgstr "Жадвал бошига" - -#: src/Statements/CreateStatement.php:549 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The name of the entity was expected." -msgstr "Очиқ жадваллар сони." - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "Table name template" -msgid "A table name was expected." -msgstr "Жадвал номи шаблони" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The row has been deleted." -msgid "At least one column definition was expected." -msgstr "Ёзув ўчирилди" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK statement." -msgstr "Жадвал бошига" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The name of the CTE was expected." -msgstr "Очиқ жадваллар сони." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "No rows selected" -msgid "AS keyword was expected." -msgstr "Амални амалга ошириш учун битта ёки бир нечта қаторни танлаш керак." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "Subquery of the CTE was expected." -msgstr "Очиқ жадваллар сони." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of the WITH CTE." -msgstr "Жадвал бошига" - -#, fuzzy -#~| msgid "At Beginning of Table" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Жадвал бошига" - -#, fuzzy -#~| msgid "errors." -#~ msgid "error #1" -#~ msgstr "хатоликлар." - -#, fuzzy -#~| msgid "Ignore errors" -#~ msgid "strict error" -#~ msgstr "Хатоларга эътибор бермаслик" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/uz@latin/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/uz@latin/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 471dd56c..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/uz@latin/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/uz@latin/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/uz@latin/LC_MESSAGES/sqlparser.po deleted file mode 100644 index ffdb15b5..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/uz@latin/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,324 +0,0 @@ -# Automatically generated <>, 2010. -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2015-12-29 19:19+0000\n" -"Last-Translator: Michal Čihař \n" -"Language-Team: Uzbek (latin) \n" -"Language: uz@latin\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 2.5-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -#, fuzzy -#| msgid "Iconic table operations" -msgid "Unrecognized alter operation." -msgstr "Jadval operatsiyalarini piktogrammalar yordamida amalga oshirish" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected after AS." -msgstr "Bironta ham ma`lumotlar bazasi tanlanmagan." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -#| msgid "Table name template" -msgid "A symbol name was expected!" -msgstr "Jadval nomi shabloni" - -#: src/Components/CreateDefinition.php:300 -#, fuzzy -#| msgid "No databases selected." -msgid "A comma or a closing bracket was expected." -msgstr "Bironta ham ma`lumotlar bazasi tanlanmagan." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -#, fuzzy -#| msgid "No rows selected" -msgid "An expression was expected." -msgstr "" -"Amalni amalga oshirish uchun bitta yoki bir nechta qatorni tanlash kerak" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -#, fuzzy -#| msgid "No databases selected." -msgid "An alias was expected." -msgstr "Bironta ham ma`lumotlar bazasi tanlanmagan." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK expression." -msgstr "Jadval boshiga" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The old name of the table was expected." -msgstr "Ochiq jadvallar soni." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The new name of the table was expected." -msgstr "Ochiq jadvallar soni." - -#: src/Components/RenameOperation.php:140 -#, fuzzy -#| msgid "The row has been deleted." -msgid "A rename operation was expected." -msgstr "Yozuv o‘chirildi" - -#: src/Components/SetOperation.php:121 -#, fuzzy -#| msgid "as regular expression" -msgid "Missing expression." -msgstr "muntazam ibora" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, fuzzy, php-format -#| msgid "Table %1$s has been created." -msgid "Ending quote %1$s was expected." -msgstr "%1$s jadvali tuzildi." - -#: src/Lexer.php:1056 -#, fuzzy -#| msgid "Table name template" -msgid "Variable name was expected." -msgstr "Jadval nomi shabloni" - -#: src/Parser.php:456 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected beginning of statement." -msgstr "Jadval boshiga" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Keyword at end of statement." -msgstr "Jadval boshiga" - -#: src/Statement.php:555 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected ordering of clauses." -msgstr "Jadval boshiga" - -#: src/Statements/CreateStatement.php:549 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The name of the entity was expected." -msgstr "Ochiq jadvallar soni." - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "Table name template" -msgid "A table name was expected." -msgstr "Jadval nomi shabloni" - -#: src/Statements/CreateStatement.php:603 -#, fuzzy -#| msgid "The row has been deleted." -msgid "At least one column definition was expected." -msgstr "Yozuv o‘chirildi" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of LOCK statement." -msgstr "Jadval boshiga" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "The name of the CTE was expected." -msgstr "Ochiq jadvallar soni." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "No rows selected" -msgid "AS keyword was expected." -msgstr "" -"Amalni amalga oshirish uchun bitta yoki bir nechta qatorni tanlash kerak" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The number of tables that are open." -msgid "Subquery of the CTE was expected." -msgstr "Ochiq jadvallar soni." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "At Beginning of Table" -msgid "Unexpected end of the WITH CTE." -msgstr "Jadval boshiga" - -#, fuzzy -#~| msgid "At Beginning of Table" -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Jadval boshiga" - -#, fuzzy -#~| msgid "errors." -#~ msgid "error #1" -#~ msgstr "xatoliklar." - -#, fuzzy -#~| msgid "Ignore errors" -#~ msgid "strict error" -#~ msgstr "Xatolarga e`tibor bermaslik" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/vi/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/vi/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 701a90b8..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/vi/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/vi/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/vi/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 83b45046..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/vi/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,297 +0,0 @@ -# phpMyAdmin translation. -# Bản dịch tiếng Việt dành cho phpMyAdmin. -# Copyright (C) 2003 - 2015 phpMyAdmin devel team -# This file is distributed under the same license as the phpMyAdmin package. -# Trần Ngọc Quân , 2015. -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Vietnamese \n" -"Language: vi\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "Chưa được viết mã thực thi." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" -"Tìm thấy câu lệnh mới, nhưng không có dấu ngăn cách giữa nó và lệnh trước." - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "Không nhận ra thao tác thay đổi." - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "Cần giá trị %1$d, nhưng lại nhận được %2$d." - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "Cần một dấu ngoặc ôm mở theo sau bởi một tập hợp các giá trị." - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "Cần dấu ngoặc ôm mở." - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "Từ khóa không mong muốn." - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "Kết thúc bất ngờ của biểu thức CASE" - -#: src/Components/CaseExpression.php:212 -#, fuzzy -#| msgid "Unexpected end of CASE expression" -msgid "Potential duplicate alias of CASE expression." -msgstr "Kết thúc bất ngờ của biểu thức CASE" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "Một bí danh đã tìm thấy từ trước đây." - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "An alias was expected." -msgid "An alias was expected after AS." -msgstr "Cần một bí danh." - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" -"Cần tên biểu tượng. Một từ khoá truy ngược không thể được sử dụng như là một " -"tên cột mà không có các ngoặc sau." - -#: src/Components/CreateDefinition.php:268 -#, fuzzy -#| msgid "Variable name was expected." -msgid "A symbol name was expected!" -msgstr "Cần tên biến." - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "Cần dấu phẩy hoặc dấu ngoặc ôm đóng." - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "Cần dấu ngoặc ôm đóng." - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "Không nhận ra kiểu dữ liệu." - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "Cần một biểu thức." - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "Cần một bí danh." - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "Gặp dấu chấm không cần." - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "Gặp thẻ bài không cần." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "Cần vị trí tương đối." - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "Kết thúc bất ngờ của biểu thức LOCK." - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "Tùy chọn này xung đột với \"%1$s\"." - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "Cần tên cũ của bảng." - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "Cần từ khóa \"TO\"." - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "Cần tên mới của bảng." - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "Cần thao tác đổi tên." - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "Thiếu biểu thức chính quy." - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "Gặp ký tự không cần." - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "Cần các khoảng trắng trước dấu phân tách." - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "Cần dấu phân tách." - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "Cần trích dẫn đóng %1$s." - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "Cần tên biến." - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "Gặp phần đầu mệnh đề không cần." - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "Không thừa nhận kiểu mệnh đề." - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "Chưa có giao địch nào đã bắt đầu trước đây." - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "Kiểu của mệnh đề này đã được phân tích trước đây." - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "Không nhận ra từ khóa." - -#: src/Statement.php:409 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Keyword at end of statement." -msgstr "Gặp phần đầu mệnh đề không cần." - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "Đặt mệnh đề không mong muốn." - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "Cần tên của thực thể." - -#: src/Statements/CreateStatement.php:598 -#, fuzzy -#| msgid "Variable name was expected." -msgid "A table name was expected." -msgstr "Cần tên biến." - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "Chưa có bảng nào được chọn." - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "Cần từ khóa \"RETURNS\"." - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "Mệnh đề loại này không hợp lệ trong các truy vấn Đa bảng." - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of LOCK statement." -msgstr "Gặp phần đầu mệnh đề không cần." - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "Từ khóa không mong muốn" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "The name of the CTE was expected." -msgstr "Cần tên của thực thể." - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "A \"RETURNS\" keyword was expected." -msgid "AS keyword was expected." -msgstr "Cần từ khóa \"RETURNS\"." - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "Subquery of the CTE was expected." -msgstr "Cần tên của thực thể." - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of the WITH CTE." -msgstr "Gặp phần đầu mệnh đề không cần." - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "Kết thúc bất ngờ của biểu thức LOCK." - -#~ msgid "error #1" -#~ msgstr "lỗi #1" - -#~ msgid "strict error" -#~ msgstr "lỗi nghiêm ngặt" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/vls/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/vls/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 100f85ed..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/vls/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/vls/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/vls/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 8fbb4a23..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/vls/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,264 +0,0 @@ -# phpMyAdmin translation. -# Copyright (C) 2003 - 2013 phpMyAdmin devel team -# This file is distributed under the same license as the phpMyAdmin package. -# Automatically generated, 2013. -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2014-12-23 23:39+0200\n" -"Last-Translator: Robin van der Vliet \n" -"Language-Team: West Flemish \n" -"Language: vls\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 2.2-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "" - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "" - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "" - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "" - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "" - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "" - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "" - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "" - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "" - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "" - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "" - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "" - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "" - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "" - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/zh_CN/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/zh_CN/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index a32210fd..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/zh_CN/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/zh_CN/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/zh_CN/LC_MESSAGES/sqlparser.po deleted file mode 100644 index a64561dd..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/zh_CN/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,269 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Chinese (Simplified) \n" -"Language: zh_CN\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "还未实现." - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "发现了一个新的声明,但它与前一声明之间没有分隔符。" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "在新的 alter 操作之前缺少逗号。" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "无法识别的变更(alter)操作。" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "应有%1$d个值,但查找到了%2$d个。" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "应该有一个开头括号后面跟着一组值。" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "应该有一个左括号。" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "不应出现的关键词。" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "CASE表达式意外结束" - -#: src/Components/CaseExpression.php:212 -msgid "Potential duplicate alias of CASE expression." -msgstr "CASE表达式有潜在的重复别名。" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "AS关键字后应跟随别名,但是发现 " - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "之前发现了一个别名。" - -#: src/Components/CaseExpression.php:252 -msgid "An alias was expected after AS." -msgstr "AS关键字后应跟随别名。" - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "应该有一个符号名称!保留的关键字不能用作没有反引号的列名。" - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "应该有一个符号名称!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "应该是有逗号或结束括号。" - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "应有一个右括号。" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "无法识别的数据类型。" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "应该为一个表达式。" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "应该有一个别名。" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "不应出现的点。" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "意外的标记." - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "应该为一个偏移。" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "LOCK表达式意外结束。" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "此选项与“%1$s”冲突。" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "需要有表的旧名称。" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "应为关键词“TO”。" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "应有表的新名称。" - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "应进行重命名操作。" - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "缺少正则表达式。" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "缺少字符。" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "分隔符之前应有空格。" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "应有分隔符。" - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "应有结束引号 %1$s。" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "应有变量名。" - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "不应出现的开始声明。" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "无法识别的声明形式。" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "之前没有开始任何事务。" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "之前已解析此类型的子句。" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "不能识别的关键词。" - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "声明结尾处的关键字。" - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "错误的语句顺序。" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "应有该实体的名称。" - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "应有表名。" - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "至少应有一个字段定义。" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "应有“RETURNS”关键字。" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "此类型的子句在多表查询中无效。" - -#: src/Statements/LockStatement.php:120 -msgid "Unexpected end of LOCK statement." -msgstr "LOCK语句意外结束。" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "不应出现的关键词" - -#: src/Statements/WithStatement.php:118 -msgid "The name of the CTE was expected." -msgstr "应该有CTE的名字。" - -#: src/Statements/WithStatement.php:137 -msgid "AS keyword was expected." -msgstr "应有“AS”关键字。" - -#: src/Statements/WithStatement.php:149 -msgid "Subquery of the CTE was expected." -msgstr "应为CTE的子查询。" - -#: src/Statements/WithStatement.php:266 -msgid "Unexpected end of the WITH CTE." -msgstr "CTE语句意外结束。" - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "LOCK表达式意外结束。" - -#~ msgid "error #1" -#~ msgstr "错误 #1" - -#~ msgid "strict error" -#~ msgstr "严格错误" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/zh_TW/LC_MESSAGES/sqlparser.mo b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/zh_TW/LC_MESSAGES/sqlparser.mo deleted file mode 100644 index 2340741b..00000000 Binary files a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/zh_TW/LC_MESSAGES/sqlparser.mo and /dev/null differ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/zh_TW/LC_MESSAGES/sqlparser.po b/docker/statistics/vendor/phpmyadmin/sql-parser/locale/zh_TW/LC_MESSAGES/sqlparser.po deleted file mode 100644 index 25d86822..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/locale/zh_TW/LC_MESSAGES/sqlparser.po +++ /dev/null @@ -1,283 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: SQL parser 5\n" -"Report-Msgid-Bugs-To: translators@phpmyadmin.net\n" -"POT-Creation-Date: 2023-02-26 22:46+0100\n" -"PO-Revision-Date: 2023-01-26 07:10+0000\n" -"Last-Translator: liviuconcioiu \n" -"Language-Team: Chinese (Traditional) \n" -"Language: zh_TW\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 4.16-dev\n" - -#: src/Component.php:39 src/Component.php:59 -msgid "Not implemented yet." -msgstr "尚未實作。" - -#: src/Components/AlterOperation.php:415 src/Statement.php:359 -msgid "" -"A new statement was found, but no delimiter between it and the previous one." -msgstr "找到新的陳述句,但與前一陳述句之間沒有分隔符。" - -#: src/Components/AlterOperation.php:427 -msgid "Missing comma before start of a new alter operation." -msgstr "" - -#: src/Components/AlterOperation.php:472 -msgid "Unrecognized alter operation." -msgstr "無法識別的修改操作。" - -#: src/Components/Array2d.php:88 -#, php-format -msgid "%1$d values were expected, but found %2$d." -msgstr "預期 %1$d 個數值,但找到 %2$d 個。" - -#: src/Components/Array2d.php:108 -msgid "An opening bracket followed by a set of values was expected." -msgstr "預期開括號後有一組數值。" - -#: src/Components/ArrayObj.php:106 src/Components/CreateDefinition.php:233 -msgid "An opening bracket was expected." -msgstr "預期要有開始括號。" - -#: src/Components/CaseExpression.php:133 src/Components/CaseExpression.php:161 -#: src/Components/CaseExpression.php:172 src/Components/CaseExpression.php:184 -#: src/Components/IndexHint.php:134 src/Components/IndexHint.php:164 -#: src/Components/LockExpression.php:173 src/Components/LockExpression.php:180 -#: src/Components/LockExpression.php:188 src/Statements/DeleteStatement.php:249 -#: src/Statements/DeleteStatement.php:268 -#: src/Statements/DeleteStatement.php:308 -#: src/Statements/DeleteStatement.php:320 -#: src/Statements/DeleteStatement.php:346 -#: src/Statements/DeleteStatement.php:353 -#: src/Statements/InsertStatement.php:189 -#: src/Statements/InsertStatement.php:220 src/Statements/LoadStatement.php:265 -#: src/Statements/LockStatement.php:85 src/Statements/ReplaceStatement.php:149 -#: src/Statements/ReplaceStatement.php:178 -msgid "Unexpected keyword." -msgstr "預期之外的關鍵字。" - -#: src/Components/CaseExpression.php:192 -msgid "Unexpected end of CASE expression" -msgstr "預期之外的CASE陳述式" - -#: src/Components/CaseExpression.php:212 -#, fuzzy -#| msgid "Unexpected end of CASE expression" -msgid "Potential duplicate alias of CASE expression." -msgstr "預期之外的CASE陳述式" - -#: src/Components/CaseExpression.php:225 -msgid "An alias expected after AS but got " -msgstr "" - -#: src/Components/CaseExpression.php:238 src/Components/Expression.php:352 -#: src/Components/Expression.php:372 src/Components/Expression.php:424 -msgid "An alias was previously found." -msgstr "已於前面找到別名。" - -#: src/Components/CaseExpression.php:252 -#, fuzzy -#| msgid "An alias was expected." -msgid "An alias was expected after AS." -msgstr "預期要有別名。" - -#: src/Components/CreateDefinition.php:255 -msgid "" -"A symbol name was expected! A reserved keyword can not be used as a column " -"name without backquotes." -msgstr "預期有一個符號!保留字不可以在沒有反引號時用作欄位名稱。" - -#: src/Components/CreateDefinition.php:268 -msgid "A symbol name was expected!" -msgstr "預期要有符號名稱!" - -#: src/Components/CreateDefinition.php:300 -msgid "A comma or a closing bracket was expected." -msgstr "預期要有逗號或者結束括號。" - -#: src/Components/CreateDefinition.php:313 src/Statements/WithStatement.php:328 -msgid "A closing bracket was expected." -msgstr "預期要有結束括號。" - -#: src/Components/DataType.php:130 -msgid "Unrecognized data type." -msgstr "無法識別的資料類型。" - -#: src/Components/ExpressionArray.php:106 src/Statements/WithStatement.php:197 -msgid "An expression was expected." -msgstr "預期要有表示式。" - -#: src/Components/Expression.php:257 src/Components/Expression.php:435 -msgid "An alias was expected." -msgstr "預期要有別名。" - -#: src/Components/Expression.php:403 -msgid "Unexpected dot." -msgstr "預期之外的句點。" - -#: src/Components/IndexHint.php:140 src/Components/IndexHint.php:170 -#: src/Components/Key.php:259 src/Components/LockExpression.php:161 -#: src/Components/SetOperation.php:138 src/Statement.php:258 -#: src/Statements/DeleteStatement.php:263 -#: src/Statements/DeleteStatement.php:315 -#: src/Statements/ExplainStatement.php:161 -#: src/Statements/InsertStatement.php:203 -#: src/Statements/InsertStatement.php:240 src/Statements/LoadStatement.php:270 -#: src/Statements/LoadStatement.php:291 src/Statements/LoadStatement.php:310 -#: src/Statements/LockStatement.php:93 src/Statements/LockStatement.php:100 -#: src/Statements/PurgeStatement.php:106 src/Statements/PurgeStatement.php:119 -#: src/Statements/PurgeStatement.php:140 -#: src/Statements/ReplaceStatement.php:163 src/Statements/WithStatement.php:132 -msgid "Unexpected token." -msgstr "預期之外的符號。" - -#: src/Components/Limit.php:78 src/Components/Limit.php:105 -msgid "An offset was expected." -msgstr "預期要有偏移量(Offset)。" - -#: src/Components/LockExpression.php:91 src/Components/LockExpression.php:201 -msgid "Unexpected end of LOCK expression." -msgstr "預期之外的LOCK陳述式。" - -#: src/Components/OptionsArray.php:146 -#, php-format -msgid "This option conflicts with \"%1$s\"." -msgstr "此選項與 \"%1$s\" 發生衝突。" - -#: src/Components/RenameOperation.php:103 -msgid "The old name of the table was expected." -msgstr "預期要有舊的資料表名稱。" - -#: src/Components/RenameOperation.php:109 -msgid "Keyword \"TO\" was expected." -msgstr "預期要有 \"TO\" 關鍵字。" - -#: src/Components/RenameOperation.php:124 -msgid "The new name of the table was expected." -msgstr "預期要有新的資料表名稱。" - -#: src/Components/RenameOperation.php:140 -msgid "A rename operation was expected." -msgstr "預期要有重新命名的操作。" - -#: src/Components/SetOperation.php:121 -msgid "Missing expression." -msgstr "缺少表達式。" - -#: src/Lexer.php:274 -msgid "Unexpected character." -msgstr "預期之外的字元。" - -#: src/Lexer.php:313 -msgid "Expected whitespace(s) before delimiter." -msgstr "預期要有空白於分隔符號之前。" - -#: src/Lexer.php:329 src/Lexer.php:348 -msgid "Expected delimiter." -msgstr "預期要有分隔符號。" - -#: src/Lexer.php:1004 -#, php-format -msgid "Ending quote %1$s was expected." -msgstr "預期要於結束使用括號 %1$s。" - -#: src/Lexer.php:1056 -msgid "Variable name was expected." -msgstr "預期要有變數名稱。" - -#: src/Parser.php:456 -msgid "Unexpected beginning of statement." -msgstr "預期之外的陳述句開頭。" - -#: src/Parser.php:499 -msgid "Unrecognized statement type." -msgstr "無法辨識的陳述句類型。" - -#: src/Parser.php:587 -msgid "No transaction was previously started." -msgstr "前面未開啟交易(Transaction)模式。" - -#: src/Statement.php:327 -msgid "This type of clause was previously parsed." -msgstr "此類型的子句已於前面解析過。" - -#: src/Statement.php:398 -msgid "Unrecognized keyword." -msgstr "無法辨識的關鍵字。" - -#: src/Statement.php:409 -msgid "Keyword at end of statement." -msgstr "陳述句結尾的關鍵字。" - -#: src/Statement.php:555 -msgid "Unexpected ordering of clauses." -msgstr "預期之外的排序語句。" - -#: src/Statements/CreateStatement.php:549 -msgid "The name of the entity was expected." -msgstr "預期要有實體名稱。" - -#: src/Statements/CreateStatement.php:598 -msgid "A table name was expected." -msgstr "預期有表格名稱。" - -#: src/Statements/CreateStatement.php:603 -msgid "At least one column definition was expected." -msgstr "預期要至少一個欄位定義。" - -#: src/Statements/CreateStatement.php:707 -msgid "A \"RETURNS\" keyword was expected." -msgstr "預期要使用 \"RETURNS\" 關鍵字。" - -#: src/Statements/DeleteStatement.php:329 -msgid "This type of clause is not valid in Multi-table queries." -msgstr "此類型的子句不可用於多表查詢。" - -#: src/Statements/LockStatement.php:120 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of LOCK statement." -msgstr "預期之外的陳述句開頭。" - -#: src/Statements/PurgeStatement.php:138 -msgid "Unexpected keyword" -msgstr "預期之外的關鍵字" - -#: src/Statements/WithStatement.php:118 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "The name of the CTE was expected." -msgstr "預期要有實體名稱。" - -#: src/Statements/WithStatement.php:137 -#, fuzzy -#| msgid "A \"RETURNS\" keyword was expected." -msgid "AS keyword was expected." -msgstr "預期要使用 \"RETURNS\" 關鍵字。" - -#: src/Statements/WithStatement.php:149 -#, fuzzy -#| msgid "The name of the entity was expected." -msgid "Subquery of the CTE was expected." -msgstr "預期要有實體名稱。" - -#: src/Statements/WithStatement.php:266 -#, fuzzy -#| msgid "Unexpected beginning of statement." -msgid "Unexpected end of the WITH CTE." -msgstr "預期之外的陳述句開頭。" - -#~ msgid "Unexpected end of Lock expression." -#~ msgstr "預期之外的LOCK陳述式。" - -#~ msgid "error #1" -#~ msgstr "錯誤 #1" - -#~ msgid "strict error" -#~ msgstr "嚴謹錯誤" diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/phpunit.xml.dist b/docker/statistics/vendor/phpmyadmin/sql-parser/phpunit.xml.dist deleted file mode 100644 index 3c237e4a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/phpunit.xml.dist +++ /dev/null @@ -1,53 +0,0 @@ - - - - - - - - - - ./tests/Builder - - - ./tests/Components - - - ./tests/Lexer - - - ./tests/Misc - - - ./tests/Parser - - - ./tests/Utils - - - ./tests/Tools - ./tests/Tools/templates/ - ./tests/Tools/contexts/ - - - - - src/ - - - - - - - - diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Component.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Component.php deleted file mode 100644 index 5bf01b55..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Component.php +++ /dev/null @@ -1,73 +0,0 @@ - $options parameters for parsing - * - * @return mixed - * - * @throws Exception not implemented yet. - */ - public static function parse( - Parser $parser, - TokensList $list, - array $options = [] - ) { - // This method should be abstract, but it can't be both static and - // abstract. - throw new Exception(Translator::gettext('Not implemented yet.')); - } - - /** - * Builds the string representation of a component of this type. - * - * In other words, this function represents the inverse function of - * `static::parse`. - * - * @param mixed $component the component to be built - * @param array $options parameters for building - * - * @return mixed - * - * @throws Exception not implemented yet. - */ - public static function build($component, array $options = []) - { - // This method should be abstract, but it can't be both static and - // abstract. - throw new Exception(Translator::gettext('Not implemented yet.')); - } - - /** - * Builds the string representation of a component of this type. - * - * @see static::build - * - * @return string - */ - public function __toString() - { - return static::build($this); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/AlterOperation.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/AlterOperation.php deleted file mode 100644 index fcd40c32..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/AlterOperation.php +++ /dev/null @@ -1,617 +0,0 @@ -> - * @psalm-var array [ - 1, - 'var', - ], - 'CHARSET' => [ - 1, - 'var', - ], - 'DEFAULT CHARACTER SET' => [ - 1, - 'var', - ], - 'DEFAULT CHARSET' => [ - 1, - 'var', - ], - 'UPGRADE' => [ - 1, - 'var', - ], - 'COLLATE' => [ - 2, - 'var', - ], - 'DEFAULT COLLATE' => [ - 2, - 'var', - ], - ]; - - /** - * All table options. - * - * @var array> - * @psalm-var array [ - 1, - 'var=', - ], - 'ALGORITHM' => [ - 1, - 'var=', - ], - 'AUTO_INCREMENT' => [ - 1, - 'var=', - ], - 'AVG_ROW_LENGTH' => [ - 1, - 'var', - ], - 'COALESCE PARTITION' => [ - 1, - 'var', - ], - 'LOCK' => [ - 1, - 'var=', - ], - 'MAX_ROWS' => [ - 1, - 'var', - ], - 'ROW_FORMAT' => [ - 1, - 'var', - ], - 'COMMENT' => [ - 1, - 'var', - ], - 'ADD' => 1, - 'ALTER' => 1, - 'ANALYZE' => 1, - 'CHANGE' => 1, - 'CHARSET' => 1, - 'CHECK' => 1, - 'CONVERT' => 1, - 'DEFAULT CHARSET' => 1, - 'DISABLE' => 1, - 'DISCARD' => 1, - 'DROP' => 1, - 'ENABLE' => 1, - 'IMPORT' => 1, - 'MODIFY' => 1, - 'OPTIMIZE' => 1, - 'ORDER' => 1, - 'REBUILD' => 1, - 'REMOVE' => 1, - 'RENAME' => 1, - 'REORGANIZE' => 1, - 'REPAIR' => 1, - 'UPGRADE' => 1, - - 'COLUMN' => 2, - 'CONSTRAINT' => 2, - 'DEFAULT' => 2, - 'BY' => 2, - 'FOREIGN' => 2, - 'FULLTEXT' => 2, - 'KEY' => [ - 2, - 'var', - ], - 'KEYS' => 2, - 'PARTITION' => 2, - 'PARTITION BY' => 2, - 'PARTITIONING' => 2, - 'PRIMARY KEY' => 2, - 'SPATIAL' => 2, - 'TABLESPACE' => 2, - 'INDEX' => [ - 2, - 'var', - ], - - 'CHARACTER SET' => 3, - 'TO' => [ - 3, - 'var', - ], - ]; - - /** - * All user options. - * - * @var array> - * @psalm-var array [ - 1, - 'var', - ], - 'COMMENT' => [ - 1, - 'var', - ], - 'REQUIRE' => [ - 1, - 'var', - ], - - 'IDENTIFIED VIA' => [ - 2, - 'var', - ], - 'IDENTIFIED WITH' => [ - 2, - 'var', - ], - 'PASSWORD' => [ - 2, - 'var', - ], - 'WITH' => [ - 2, - 'var', - ], - - 'BY' => [ - 4, - 'expr', - ], - - 'ACCOUNT' => 1, - 'DEFAULT' => 1, - - 'LOCK' => 2, - 'UNLOCK' => 2, - - 'IDENTIFIED' => 3, - ]; - - /** - * All view options. - * - * @var array> - * @psalm-var array 1]; - - /** - * All event options. - * - * @var array> - * @psalm-var array 1, - 'EVERY' => [ - 2, - 'expr', - ], - 'AT' => [ - 2, - 'expr', - ], - 'STARTS' => [ - 3, - 'expr', - ], - 'ENDS' => [ - 4, - 'expr', - ], - 'ON COMPLETION PRESERVE' => 5, - 'ON COMPLETION NOT PRESERVE' => 5, - 'RENAME' => 6, - 'TO' => [7, 'expr', ['parseField' => 'table', 'breakOnAlias' => true]], - 'ENABLE' => 8, - 'DISABLE' => 8, - 'DISABLE ON SLAVE' => 8, - 'COMMENT' => [ - 9, - 'var', - ], - 'DO' => 10, - ]; - - /** - * All routine (procedure or function) options. - * - * @var array> - * @psalm-var array [ - 1, - 'var', - ], - 'LANGUAGE SQL' => 2, - 'CONTAINS SQL' => 3, - 'NO SQL' => 3, - 'READS SQL DATA' => 3, - 'MODIFIES SQL DATA' => 3, - 'SQL SECURITY' => 4, - 'DEFINER' => 5, - 'INVOKER' => 5, - ]; - - /** - * Options of this operation. - * - * @var OptionsArray - */ - public $options; - - /** - * The altered field. - * - * @var Expression|string|null - */ - public $field; - - /** - * The partitions. - * - * @var Component[]|ArrayObj|null - */ - public $partitions; - - /** - * Unparsed tokens. - * - * @var Token[]|string - */ - public $unknown = []; - - /** - * @param OptionsArray $options options of alter operation - * @param Expression|string|null $field altered field - * @param Component[]|ArrayObj|null $partitions partitions definition found in the operation - * @param Token[] $unknown unparsed tokens found at the end of operation - */ - public function __construct( - $options = null, - $field = null, - $partitions = null, - $unknown = [] - ) { - $this->partitions = $partitions; - $this->options = $options; - $this->field = $field; - $this->unknown = $unknown; - } - - /** - * @param Parser $parser the parser that serves as context - * @param TokensList $list the list of tokens that are being parsed - * @param array $options parameters for parsing - * - * @return AlterOperation - */ - public static function parse(Parser $parser, TokensList $list, array $options = []) - { - $ret = new static(); - - /** - * Counts brackets. - * - * @var int - */ - $brackets = 0; - - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 ---------------------[ options ]---------------------> 1 - * - * 1 ----------------------[ field ]----------------------> 2 - * - * 1 -------------[ PARTITION / PARTITION BY ]------------> 3 - * - * 2 -------------------------[ , ]-----------------------> 0 - * - * @var int - */ - $state = 0; - - /** - * partition state. - * - * @var int - */ - $partitionState = 0; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping comments. - if ($token->type === Token::TYPE_COMMENT) { - continue; - } - - // Skipping whitespaces. - if ($token->type === Token::TYPE_WHITESPACE) { - if ($state === 2) { - // When parsing the unknown part, the whitespaces are - // included to not break anything. - $ret->unknown[] = $token; - continue; - } - } - - if ($state === 0) { - $ret->options = OptionsArray::parse($parser, $list, $options); - - // Not only when aliasing but also when parsing the body of an event, we just list the tokens of the - // body in the unknown tokens list, as they define their own statements. - if ($ret->options->has('AS') || $ret->options->has('DO')) { - for (; $list->idx < $list->count; ++$list->idx) { - if ($list->tokens[$list->idx]->type === Token::TYPE_DELIMITER) { - break; - } - - $ret->unknown[] = $list->tokens[$list->idx]; - } - - break; - } - - $state = 1; - if ($ret->options->has('PARTITION') || $token->value === 'PARTITION BY') { - $state = 3; - $list->getPrevious(); // in order to check whether it's partition or partition by. - } - } elseif ($state === 1) { - $ret->field = Expression::parse( - $parser, - $list, - [ - 'breakOnAlias' => true, - 'parseField' => 'column', - ] - ); - if ($ret->field === null) { - // No field was read. We go back one token so the next - // iteration will parse the same token, but in state 2. - --$list->idx; - } - - // If the operation is a RENAME COLUMN, now we have detected the field to rename, we need to parse - // again the options to get the new name of the column. - if ($ret->options->has('RENAME') && $ret->options->has('COLUMN')) { - $nextOptions = OptionsArray::parse($parser, $list, $options); - $ret->options->merge($nextOptions); - } - - $state = 2; - } elseif ($state === 2) { - if (is_string($token->value) || is_int($token->value)) { - $arrayKey = $token->value; - } else { - $arrayKey = $token->token; - } - - if ($token->type === Token::TYPE_OPERATOR) { - if ($token->value === '(') { - ++$brackets; - } elseif ($token->value === ')') { - --$brackets; - } elseif (($token->value === ',') && ($brackets === 0)) { - break; - } - } elseif ( - ! self::checkIfTokenQuotedSymbol($token) && - $token->type !== Token::TYPE_STRING && - $token->value !== 'CHECK' - ) { - if (isset(Parser::$STATEMENT_PARSERS[$arrayKey]) && Parser::$STATEMENT_PARSERS[$arrayKey] !== '') { - $list->idx++; // Ignore the current token - $nextToken = $list->getNext(); - - if ($token->value === 'SET' && $nextToken !== null && $nextToken->value === '(') { - // To avoid adding the tokens between the SET() parentheses to the unknown tokens - $list->getNextOfTypeAndValue(Token::TYPE_OPERATOR, ')'); - } elseif ($token->value === 'SET' && $nextToken !== null && $nextToken->value === 'DEFAULT') { - // to avoid adding the `DEFAULT` token to the unknown tokens. - ++$list->idx; - } else { - // We have reached the end of ALTER operation and suddenly found - // a start to new statement, but have not found a delimiter between them - $parser->error( - 'A new statement was found, but no delimiter between it and the previous one.', - $token - ); - break; - } - } elseif ( - (array_key_exists($arrayKey, self::$DB_OPTIONS) - || array_key_exists($arrayKey, self::$TABLE_OPTIONS)) - && ! self::checkIfColumnDefinitionKeyword($arrayKey) - ) { - // This alter operation has finished, which means a comma - // was missing before start of new alter operation - $parser->error('Missing comma before start of a new alter operation.', $token); - break; - } - } - - $ret->unknown[] = $token; - } elseif ($state === 3) { - if ($partitionState === 0) { - $list->idx++; // Ignore the current token - $nextToken = $list->getNext(); - if ( - ($token->type === Token::TYPE_KEYWORD) - && (($token->keyword === 'PARTITION BY') - || ($token->keyword === 'PARTITION' && $nextToken && $nextToken->value !== '(')) - ) { - $partitionState = 1; - } elseif (($token->type === Token::TYPE_KEYWORD) && ($token->keyword === 'PARTITION')) { - $partitionState = 2; - } - - --$list->idx; // to decrease the idx by one, because the last getNext returned and increased it. - - // reverting the effect of the getNext - $list->getPrevious(); - $list->getPrevious(); - - ++$list->idx; // to index the idx by one, because the last getPrevious returned and decreased it. - } elseif ($partitionState === 1) { - // Fetch the next token in a way the current index is reset to manage whitespaces in "field". - $currIdx = $list->idx; - ++$list->idx; - $nextToken = $list->getNext(); - $list->idx = $currIdx; - // Building the expression used for partitioning. - if (empty($ret->field)) { - $ret->field = ''; - } - - if ( - $token->type === Token::TYPE_OPERATOR - && $token->value === '(' - && $nextToken - && $nextToken->keyword === 'PARTITION' - ) { - $partitionState = 2; - --$list->idx; // Current idx is on "(". We need a step back for ArrayObj::parse incoming. - } else { - $ret->field .= $token->type === Token::TYPE_WHITESPACE ? ' ' : $token->token; - } - } elseif ($partitionState === 2) { - $ret->partitions = ArrayObj::parse( - $parser, - $list, - ['type' => PartitionDefinition::class] - ); - } - } - } - - if ($ret->options->isEmpty()) { - $parser->error('Unrecognized alter operation.', $list->tokens[$list->idx]); - } - - --$list->idx; - - return $ret; - } - - /** - * @param AlterOperation $component the component to be built - * @param array $options parameters for building - * - * @return string - */ - public static function build($component, array $options = []) - { - // Specific case of RENAME COLUMN that insert the field between 2 options. - $afterFieldsOptions = new OptionsArray(); - if ($component->options->has('RENAME') && $component->options->has('COLUMN')) { - $afterFieldsOptions = clone $component->options; - $afterFieldsOptions->remove('RENAME'); - $afterFieldsOptions->remove('COLUMN'); - $component->options->remove('TO'); - } - - $ret = $component->options . ' '; - if (isset($component->field) && ($component->field !== '')) { - $ret .= $component->field . ' '; - } - - $ret .= $afterFieldsOptions . TokensList::build($component->unknown); - - if (isset($component->partitions)) { - $ret .= PartitionDefinition::build($component->partitions); - } - - return trim($ret); - } - - /** - * Check if token's value is one of the common keywords - * between column and table alteration - * - * @param string $tokenValue Value of current token - * - * @return bool - */ - private static function checkIfColumnDefinitionKeyword($tokenValue) - { - $commonOptions = [ - 'AUTO_INCREMENT', - 'COMMENT', - 'DEFAULT', - 'CHARACTER SET', - 'COLLATE', - 'PRIMARY', - 'UNIQUE', - 'PRIMARY KEY', - 'UNIQUE KEY', - ]; - - // Since these options can be used for - // both table as well as a specific column in the table - return in_array($tokenValue, $commonOptions); - } - - /** - * Check if token is symbol and quoted with backtick - * - * @param Token $token token to check - * - * @return bool - */ - private static function checkIfTokenQuotedSymbol($token) - { - return $token->type === Token::TYPE_SYMBOL && $token->flags === Token::FLAG_SYMBOL_BACKTICK; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/Array2d.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/Array2d.php deleted file mode 100644 index 90f9c84d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/Array2d.php +++ /dev/null @@ -1,126 +0,0 @@ - $options parameters for parsing - * - * @return ArrayObj[] - */ - public static function parse(Parser $parser, TokensList $list, array $options = []) - { - $ret = []; - - /** - * The number of values in each set. - * - * @var int - */ - $count = -1; - - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 ----------------------[ array ]----------------------> 1 - * - * 1 ------------------------[ , ]------------------------> 0 - * 1 -----------------------[ else ]----------------------> (END) - * - * @var int - */ - $state = 0; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - continue; - } - - // No keyword is expected. - if (($token->type === Token::TYPE_KEYWORD) && ($token->flags & Token::FLAG_KEYWORD_RESERVED)) { - break; - } - - if ($state === 0) { - if ($token->value !== '(') { - break; - } - - $arr = ArrayObj::parse($parser, $list, $options); - $arrCount = count($arr->values); - if ($count === -1) { - $count = $arrCount; - } elseif ($arrCount !== $count) { - $parser->error( - sprintf( - Translator::gettext('%1$d values were expected, but found %2$d.'), - $count, - $arrCount - ), - $token - ); - } - - $ret[] = $arr; - $state = 1; - } elseif ($state === 1) { - if ($token->value !== ',') { - break; - } - - $state = 0; - } - } - - if ($state === 0) { - $parser->error('An opening bracket followed by a set of values was expected.', $list->tokens[$list->idx]); - } - - --$list->idx; - - return $ret; - } - - /** - * @param ArrayObj[] $component the component to be built - * @param array $options parameters for building - * - * @return string - */ - public static function build($component, array $options = []) - { - return ArrayObj::build($component); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/ArrayObj.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/ArrayObj.php deleted file mode 100644 index 1397eb24..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/ArrayObj.php +++ /dev/null @@ -1,185 +0,0 @@ -raw = $raw; - $this->values = $values; - } - - /** - * @param Parser $parser the parser that serves as context - * @param TokensList $list the list of tokens that are being parsed - * @param array $options parameters for parsing - * - * @return ArrayObj|Component[] - */ - public static function parse(Parser $parser, TokensList $list, array $options = []) - { - $ret = empty($options['type']) ? new static() : []; - - /** - * The last raw expression. - * - * @var string - */ - $lastRaw = ''; - - /** - * The last value. - * - * @var string - */ - $lastValue = ''; - - /** - * Counts brackets. - * - * @var int - */ - $brackets = 0; - - /** - * Last separator (bracket or comma). - * - * @var bool - */ - $isCommaLast = false; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - if ($brackets > 0) { - $parser->error('A closing bracket was expected.', $token); - } - - break; - } - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - $lastRaw .= $token->token; - $lastValue = trim($lastValue) . ' '; - continue; - } - - if (($brackets === 0) && (($token->type !== Token::TYPE_OPERATOR) || ($token->value !== '('))) { - $parser->error('An opening bracket was expected.', $token); - break; - } - - if ($token->type === Token::TYPE_OPERATOR) { - if ($token->value === '(') { - if (++$brackets === 1) { // 1 is the base level. - continue; - } - } elseif ($token->value === ')') { - if (--$brackets === 0) { // Array ended. - break; - } - } elseif ($token->value === ',') { - if ($brackets === 1) { - $isCommaLast = true; - if (empty($options['type'])) { - $ret->raw[] = trim($lastRaw); - $ret->values[] = trim($lastValue); - $lastRaw = $lastValue = ''; - } - - continue; - } - } - } - - if (empty($options['type'])) { - $lastRaw .= $token->token; - $lastValue .= $token->value; - } else { - $ret[] = $options['type']::parse( - $parser, - $list, - empty($options['typeOptions']) ? [] : $options['typeOptions'] - ); - } - } - - // Handling last element. - // - // This is treated differently to treat the following cases: - // - // => [] - // [,] => ['', ''] - // [] => [] - // [a,] => ['a', ''] - // [a] => ['a'] - $lastRaw = trim($lastRaw); - if (empty($options['type']) && ((strlen($lastRaw) > 0) || ($isCommaLast))) { - $ret->raw[] = $lastRaw; - $ret->values[] = trim($lastValue); - } - - return $ret; - } - - /** - * @param ArrayObj|ArrayObj[] $component the component to be built - * @param array $options parameters for building - * - * @return string - */ - public static function build($component, array $options = []) - { - if (is_array($component)) { - return implode(', ', $component); - } - - if (! empty($component->raw)) { - return '(' . implode(', ', $component->raw) . ')'; - } - - return '(' . implode(', ', $component->values) . ')'; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/CaseExpression.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/CaseExpression.php deleted file mode 100644 index 1b0570b3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/CaseExpression.php +++ /dev/null @@ -1,303 +0,0 @@ - $options parameters for parsing - * - * @return CaseExpression - */ - public static function parse(Parser $parser, TokensList $list, array $options = []) - { - $ret = new static(); - - /** - * State of parser. - * - * @var int - */ - $state = 0; - - /** - * Syntax type (type 0 or type 1). - * - * @var int - */ - $type = 0; - - ++$list->idx; // Skip 'CASE' - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - continue; - } - - if ($state === 0) { - if ($token->type === Token::TYPE_KEYWORD) { - switch ($token->keyword) { - case 'WHEN': - ++$list->idx; // Skip 'WHEN' - $newCondition = Condition::parse($parser, $list); - $type = 1; - $state = 1; - $ret->conditions[] = $newCondition; - break; - case 'ELSE': - ++$list->idx; // Skip 'ELSE' - $ret->else_result = Expression::parse($parser, $list); - $state = 0; // last clause of CASE expression - break; - case 'END': - $state = 3; // end of CASE expression - ++$list->idx; - break 2; - default: - $parser->error('Unexpected keyword.', $token); - break 2; - } - } else { - $ret->value = Expression::parse($parser, $list); - $type = 0; - $state = 1; - } - } elseif ($state === 1) { - if ($type === 0) { - if ($token->type === Token::TYPE_KEYWORD) { - switch ($token->keyword) { - case 'WHEN': - ++$list->idx; // Skip 'WHEN' - $newValue = Expression::parse($parser, $list); - $state = 2; - $ret->compare_values[] = $newValue; - break; - case 'ELSE': - ++$list->idx; // Skip 'ELSE' - $ret->else_result = Expression::parse($parser, $list); - $state = 0; // last clause of CASE expression - break; - case 'END': - $state = 3; // end of CASE expression - ++$list->idx; - break 2; - default: - $parser->error('Unexpected keyword.', $token); - break 2; - } - } - } else { - if ($token->type === Token::TYPE_KEYWORD && $token->keyword === 'THEN') { - ++$list->idx; // Skip 'THEN' - $newResult = Expression::parse($parser, $list); - $state = 0; - $ret->results[] = $newResult; - } elseif ($token->type === Token::TYPE_KEYWORD) { - $parser->error('Unexpected keyword.', $token); - break; - } - } - } elseif ($state === 2) { - if ($type === 0) { - if ($token->type === Token::TYPE_KEYWORD && $token->keyword === 'THEN') { - ++$list->idx; // Skip 'THEN' - $newResult = Expression::parse($parser, $list); - $ret->results[] = $newResult; - $state = 1; - } elseif ($token->type === Token::TYPE_KEYWORD) { - $parser->error('Unexpected keyword.', $token); - break; - } - } - } - } - - if ($state !== 3) { - $parser->error('Unexpected end of CASE expression', $list->tokens[$list->idx - 1]); - } else { - // Parse for alias of CASE expression - $asFound = false; - for (; $list->idx < $list->count; ++$list->idx) { - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - continue; - } - - // Handle optional AS keyword before alias - if ($token->type === Token::TYPE_KEYWORD && $token->keyword === 'AS') { - if ($asFound || ! empty($ret->alias)) { - $parser->error('Potential duplicate alias of CASE expression.', $token); - break; - } - - $asFound = true; - continue; - } - - if ( - $asFound - && $token->type === Token::TYPE_KEYWORD - && ($token->flags & Token::FLAG_KEYWORD_RESERVED || $token->flags & Token::FLAG_KEYWORD_FUNCTION) - ) { - $parser->error('An alias expected after AS but got ' . $token->value, $token); - $asFound = false; - break; - } - - if ( - $asFound - || $token->type === Token::TYPE_STRING - || ($token->type === Token::TYPE_SYMBOL && ! $token->flags & Token::FLAG_SYMBOL_VARIABLE) - || $token->type === Token::TYPE_NONE - ) { - // An alias is expected (the keyword `AS` was previously found). - if (! empty($ret->alias)) { - $parser->error('An alias was previously found.', $token); - break; - } - - $ret->alias = $token->value; - $asFound = false; - - continue; - } - - break; - } - - if ($asFound) { - $parser->error('An alias was expected after AS.', $list->tokens[$list->idx - 1]); - } - - $ret->expr = self::build($ret); - } - - --$list->idx; - - return $ret; - } - - /** - * @param CaseExpression $component the component to be built - * @param array $options parameters for building - * - * @return string - */ - public static function build($component, array $options = []) - { - $ret = 'CASE '; - if (isset($component->value)) { - // Syntax type 0 - $ret .= $component->value . ' '; - $valuesCount = count($component->compare_values); - $resultsCount = count($component->results); - for ($i = 0; $i < $valuesCount && $i < $resultsCount; ++$i) { - $ret .= 'WHEN ' . $component->compare_values[$i] . ' '; - $ret .= 'THEN ' . $component->results[$i] . ' '; - } - } else { - // Syntax type 1 - $valuesCount = count($component->conditions); - $resultsCount = count($component->results); - for ($i = 0; $i < $valuesCount && $i < $resultsCount; ++$i) { - $ret .= 'WHEN ' . Condition::build($component->conditions[$i]) . ' '; - $ret .= 'THEN ' . $component->results[$i] . ' '; - } - } - - if (isset($component->else_result)) { - $ret .= 'ELSE ' . $component->else_result . ' '; - } - - $ret .= 'END'; - - if ($component->alias) { - $ret .= ' AS ' . Context::escape($component->alias); - } - - return $ret; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/Condition.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/Condition.php deleted file mode 100644 index 38174570..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/Condition.php +++ /dev/null @@ -1,243 +0,0 @@ - - */ - public static $ALLOWED_KEYWORDS = [ - 'ALL' => 1, - 'AND' => 1, - 'BETWEEN' => 1, - 'COLLATE' => 1, - 'EXISTS' => 1, - 'IF' => 1, - 'IN' => 1, - 'INTERVAL' => 1, - 'IS' => 1, - 'LIKE' => 1, - 'MATCH' => 1, - 'NOT IN' => 1, - 'NOT NULL' => 1, - 'NOT' => 1, - 'NULL' => 1, - 'OR' => 1, - 'REGEXP' => 1, - 'RLIKE' => 1, - 'SOUNDS' => 1, - 'XOR' => 1, - ]; - - /** - * Identifiers recognized. - * - * @var array - */ - public $identifiers = []; - - /** - * Whether this component is an operator. - * - * @var bool - */ - public $isOperator = false; - - /** - * The condition. - * - * @var string - */ - public $expr; - - /** - * @param string $expr the condition or the operator - */ - public function __construct($expr = null) - { - $this->expr = trim((string) $expr); - } - - /** - * @param Parser $parser the parser that serves as context - * @param TokensList $list the list of tokens that are being parsed - * @param array $options parameters for parsing - * - * @return Condition[] - */ - public static function parse(Parser $parser, TokensList $list, array $options = []) - { - $ret = []; - - $expr = new static(); - - /** - * Counts brackets. - * - * @var int - */ - $brackets = 0; - - /** - * Whether there was a `BETWEEN` keyword before or not. - * - * It is required to keep track of them because their structure contains - * the keyword `AND`, which is also an operator that delimits - * expressions. - * - * @var bool - */ - $betweenBefore = false; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping whitespaces and comments. - if ($token->type === Token::TYPE_COMMENT) { - continue; - } - - // Replacing all whitespaces (new lines, tabs, etc.) with a single - // space character. - if ($token->type === Token::TYPE_WHITESPACE) { - $expr->expr .= ' '; - continue; - } - - // Conditions are delimited by logical operators. - if ( - ($token->type === Token::TYPE_KEYWORD || $token->type === Token::TYPE_OPERATOR) - && in_array($token->value, static::$DELIMITERS, true) - ) { - if ($betweenBefore && ($token->value === 'AND')) { - // The syntax of keyword `BETWEEN` is hard-coded. - $betweenBefore = false; - } else { - // The expression ended. - $expr->expr = trim($expr->expr); - if ($expr->expr !== '') { - $ret[] = $expr; - } - - // Adding the operator. - $expr = new static($token->value); - $expr->isOperator = true; - $ret[] = $expr; - - // Preparing to parse another condition. - $expr = new static(); - continue; - } - } - - if ( - ($token->type === Token::TYPE_KEYWORD) - && ($token->flags & Token::FLAG_KEYWORD_RESERVED) - && ! ($token->flags & Token::FLAG_KEYWORD_FUNCTION) - ) { - if ($token->value === 'BETWEEN') { - $betweenBefore = true; - } - - if (($brackets === 0) && empty(static::$ALLOWED_KEYWORDS[$token->value])) { - break; - } - } - - if ($token->type === Token::TYPE_OPERATOR) { - if ($token->value === '(') { - ++$brackets; - } elseif ($token->value === ')') { - if ($brackets === 0) { - break; - } - - --$brackets; - } - } - - $expr->expr .= $token->token; - if ( - ($token->type !== Token::TYPE_NONE) - && (($token->type !== Token::TYPE_KEYWORD) - || ($token->flags & Token::FLAG_KEYWORD_RESERVED)) - && ($token->type !== Token::TYPE_STRING) - && ($token->type !== Token::TYPE_SYMBOL || ($token->flags & Token::FLAG_SYMBOL_PARAMETER)) - ) { - continue; - } - - if (in_array($token->value, $expr->identifiers)) { - continue; - } - - $expr->identifiers[] = $token->value; - } - - // Last iteration was not processed. - $expr->expr = trim($expr->expr); - if ($expr->expr !== '') { - $ret[] = $expr; - } - - --$list->idx; - - return $ret; - } - - /** - * @param Condition[] $component the component to be built - * @param array $options parameters for building - * - * @return string - */ - public static function build($component, array $options = []) - { - if (is_array($component)) { - return implode(' ', $component); - } - - return $component->expr; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/CreateDefinition.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/CreateDefinition.php deleted file mode 100644 index 436987ee..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/CreateDefinition.php +++ /dev/null @@ -1,367 +0,0 @@ ->> - * @psalm-var array true, - - 'NOT NULL' => 1, - 'NULL' => 1, - 'DEFAULT' => [ - 2, - 'expr', - ['breakOnAlias' => true], - ], - /* Following are not according to grammar, but MySQL happily accepts - * these at any location */ - 'CHARSET' => [ - 2, - 'var', - ], - 'COLLATE' => [ - 3, - 'var', - ], - 'AUTO_INCREMENT' => 3, - 'KEY' => 4, - 'PRIMARY' => 4, - 'PRIMARY KEY' => 4, - 'UNIQUE' => 4, - 'UNIQUE KEY' => 4, - 'COMMENT' => [ - 5, - 'var', - ], - 'COLUMN_FORMAT' => [ - 6, - 'var', - ], - 'ON UPDATE' => [ - 7, - 'expr', - ], - - // Generated columns options. - 'GENERATED ALWAYS' => 8, - 'AS' => [ - 9, - 'expr', - ['parenthesesDelimited' => true], - ], - 'VIRTUAL' => 10, - 'PERSISTENT' => 11, - 'STORED' => 11, - 'CHECK' => [ - 12, - 'expr', - ['parenthesesDelimited' => true], - ], - 'INVISIBLE' => 13, - 'ENFORCED' => 14, - 'NOT' => 15, - 'COMPRESSED' => 16, - 'SRID' => [ - 17, - 'var', - ], - // Common entries. - // - // NOTE: Some of the common options are not in the same order which - // causes troubles when checking if the options are in the right order. - // I should find a way to define multiple sets of options and make the - // parser select the right set. - // - // 'UNIQUE' => 4, - // 'UNIQUE KEY' => 4, - // 'COMMENT' => [5, 'var'], - // 'NOT NULL' => 1, - // 'NULL' => 1, - // 'PRIMARY' => 4, - // 'PRIMARY KEY' => 4, - ]; - - /** - * The name of the new column. - * - * @var string|null - */ - public $name; - - /** - * Whether this field is a constraint or not. - * - * @var bool|null - */ - public $isConstraint; - - /** - * The data type of thew new column. - * - * @var DataType|null - */ - public $type; - - /** - * The key. - * - * @var Key|null - */ - public $key; - - /** - * The table that is referenced. - * - * @var Reference|null - */ - public $references; - - /** - * The options of this field. - * - * @var OptionsArray|null - */ - public $options; - - /** - * @param string|null $name the name of the field - * @param OptionsArray|null $options the options of this field - * @param DataType|Key|null $type the data type of this field or the key - * @param bool $isConstraint whether this field is a constraint or not - * @param Reference|null $references references - */ - public function __construct( - $name = null, - $options = null, - $type = null, - $isConstraint = false, - $references = null - ) { - $this->name = $name; - $this->options = $options; - if ($type instanceof DataType) { - $this->type = $type; - } elseif ($type instanceof Key) { - $this->key = $type; - $this->isConstraint = $isConstraint; - $this->references = $references; - } - } - - /** - * @param Parser $parser the parser that serves as context - * @param TokensList $list the list of tokens that are being parsed - * @param array $options parameters for parsing - * - * @return CreateDefinition[] - */ - public static function parse(Parser $parser, TokensList $list, array $options = []) - { - $ret = []; - - $expr = new static(); - - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 -----------------------[ ( ]------------------------> 1 - * - * 1 --------------------[ CONSTRAINT ]------------------> 1 - * 1 -----------------------[ key ]----------------------> 2 - * 1 -------------[ constraint / column name ]-----------> 2 - * - * 2 --------------------[ data type ]-------------------> 3 - * - * 3 ---------------------[ options ]--------------------> 4 - * - * 4 --------------------[ REFERENCES ]------------------> 4 - * - * 5 ------------------------[ , ]-----------------------> 1 - * 5 ------------------------[ ) ]-----------------------> 6 (-1) - * - * @var int - */ - $state = 0; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - continue; - } - - if ($state === 0) { - if (($token->type !== Token::TYPE_OPERATOR) || ($token->value !== '(')) { - $parser->error('An opening bracket was expected.', $token); - - break; - } - - $state = 1; - } elseif ($state === 1) { - if ($token->type === Token::TYPE_KEYWORD && $token->keyword === 'CONSTRAINT') { - $expr->isConstraint = true; - } elseif (($token->type === Token::TYPE_KEYWORD) && ($token->flags & Token::FLAG_KEYWORD_KEY)) { - $expr->key = Key::parse($parser, $list); - $state = 4; - } elseif ($token->type === Token::TYPE_SYMBOL || $token->type === Token::TYPE_NONE) { - $expr->name = $token->value; - if (! $expr->isConstraint) { - $state = 2; - } - } elseif ($token->type === Token::TYPE_KEYWORD) { - if ($token->flags & Token::FLAG_KEYWORD_RESERVED) { - // Reserved keywords can't be used - // as field names without backquotes - $parser->error( - 'A symbol name was expected! ' - . 'A reserved keyword can not be used ' - . 'as a column name without backquotes.', - $token - ); - - return $ret; - } - - // Non-reserved keywords are allowed without backquotes - $expr->name = $token->value; - $state = 2; - } else { - $parser->error('A symbol name was expected!', $token); - - return $ret; - } - } elseif ($state === 2) { - $expr->type = DataType::parse($parser, $list); - $state = 3; - } elseif ($state === 3) { - $expr->options = OptionsArray::parse($parser, $list, static::$FIELD_OPTIONS); - $state = 4; - } elseif ($state === 4) { - if ($token->type === Token::TYPE_KEYWORD && $token->keyword === 'REFERENCES') { - ++$list->idx; // Skipping keyword 'REFERENCES'. - $expr->references = Reference::parse($parser, $list); - } else { - --$list->idx; - } - - $state = 5; - } elseif ($state === 5) { - if (! empty($expr->type) || ! empty($expr->key)) { - $ret[] = $expr; - } - - $expr = new static(); - if ($token->value === ',') { - $state = 1; - } elseif ($token->value === ')') { - $state = 6; - ++$list->idx; - break; - } else { - $parser->error('A comma or a closing bracket was expected.', $token); - $state = 0; - break; - } - } - } - - // Last iteration was not saved. - if (! empty($expr->type) || ! empty($expr->key)) { - $ret[] = $expr; - } - - if (($state !== 0) && ($state !== 6)) { - $parser->error('A closing bracket was expected.', $list->tokens[$list->idx - 1]); - } - - --$list->idx; - - return $ret; - } - - /** - * @param CreateDefinition|CreateDefinition[] $component the component to be built - * @param array $options parameters for building - * - * @return string - */ - public static function build($component, array $options = []) - { - if (is_array($component)) { - return "(\n " . implode(",\n ", $component) . "\n)"; - } - - $tmp = ''; - - if ($component->isConstraint) { - $tmp .= 'CONSTRAINT '; - } - - if (isset($component->name) && ($component->name !== '')) { - $tmp .= Context::escape($component->name) . ' '; - } - - if (! empty($component->type)) { - $tmp .= DataType::build( - $component->type, - ['lowercase' => true] - ) . ' '; - } - - if (! empty($component->key)) { - $tmp .= $component->key . ' '; - } - - if (! empty($component->references)) { - $tmp .= 'REFERENCES ' . $component->references . ' '; - } - - $tmp .= $component->options; - - return trim($tmp); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/DataType.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/DataType.php deleted file mode 100644 index 4f4b521b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/DataType.php +++ /dev/null @@ -1,175 +0,0 @@ -> - * @psalm-var array 1, - 'CHARACTER SET' => [ - 2, - 'var', - ], - 'CHARSET' => [ - 2, - 'var', - ], - 'COLLATE' => [ - 3, - 'var', - ], - 'UNSIGNED' => 4, - 'ZEROFILL' => 5, - ]; - - /** - * The name of the data type. - * - * @var string - */ - public $name; - - /** - * The parameters of this data type. - * - * Some data types have no parameters. - * Numeric types might have parameters for the maximum number of digits, - * precision, etc. - * String types might have parameters for the maximum length stored. - * `ENUM` and `SET` have parameters for possible values. - * - * For more information, check the MySQL manual. - * - * @var int[]|string[] - */ - public $parameters = []; - - /** - * The options of this data type. - * - * @var OptionsArray - */ - public $options; - - /** - * @param string $name the name of this data type - * @param int[]|string[] $parameters the parameters (size or possible values) - * @param OptionsArray $options the options of this data type - */ - public function __construct( - $name = null, - array $parameters = [], - $options = null - ) { - $this->name = $name; - $this->parameters = $parameters; - $this->options = $options; - } - - /** - * @param Parser $parser the parser that serves as context - * @param TokensList $list the list of tokens that are being parsed - * @param array $options parameters for parsing - * - * @return DataType|null - */ - public static function parse(Parser $parser, TokensList $list, array $options = []) - { - $ret = new static(); - - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 -------------------[ data type ]--------------------> 1 - * - * 1 ----------------[ size and options ]----------------> 2 - * - * @var int - */ - $state = 0; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - continue; - } - - if ($state === 0) { - $ret->name = strtoupper((string) $token->value); - if (($token->type !== Token::TYPE_KEYWORD) || (! ($token->flags & Token::FLAG_KEYWORD_DATA_TYPE))) { - $parser->error('Unrecognized data type.', $token); - } - - $state = 1; - } elseif ($state === 1) { - if (($token->type === Token::TYPE_OPERATOR) && ($token->value === '(')) { - $parameters = ArrayObj::parse($parser, $list); - ++$list->idx; - $ret->parameters = ($ret->name === 'ENUM') || ($ret->name === 'SET') ? - $parameters->raw : $parameters->values; - } - - $ret->options = OptionsArray::parse($parser, $list, static::$DATA_TYPE_OPTIONS); - ++$list->idx; - break; - } - } - - if (empty($ret->name)) { - return null; - } - - --$list->idx; - - return $ret; - } - - /** - * @param DataType $component the component to be built - * @param array $options parameters for building - * - * @return string - */ - public static function build($component, array $options = []) - { - $name = empty($options['lowercase']) ? - $component->name : strtolower($component->name); - - $parameters = ''; - if (! empty($component->parameters)) { - $parameters = '(' . implode(',', $component->parameters) . ')'; - } - - return trim($name . $parameters . ' ' . $component->options); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/Expression.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/Expression.php deleted file mode 100644 index a817ebee..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/Expression.php +++ /dev/null @@ -1,493 +0,0 @@ - - */ - private static $ALLOWED_KEYWORDS = [ - 'AND' => 1, - 'AS' => 1, - 'BETWEEN' => 1, - 'CASE' => 1, - 'DUAL' => 1, - 'DIV' => 1, - 'IS' => 1, - 'MOD' => 1, - 'NOT' => 1, - 'NOT NULL' => 1, - 'NULL' => 1, - 'OR' => 1, - 'OVER' => 1, - 'REGEXP' => 1, - 'RLIKE' => 1, - 'XOR' => 1, - ]; - - /** - * The name of this database. - * - * @var string|null - */ - public $database; - - /** - * The name of this table. - * - * @var string|null - */ - public $table; - - /** - * The name of the column. - * - * @var string|null - */ - public $column; - - /** - * The sub-expression. - * - * @var string|null - */ - public $expr = ''; - - /** - * The alias of this expression. - * - * @var string|null - */ - public $alias; - - /** - * The name of the function. - * - * @var mixed - */ - public $function; - - /** - * The type of subquery. - * - * @var string|null - */ - public $subquery; - - /** - * Syntax: - * new Expression('expr') - * new Expression('expr', 'alias') - * new Expression('database', 'table', 'column') - * new Expression('database', 'table', 'column', 'alias') - * - * If the database, table or column name is not required, pass an empty - * string. - * - * @param string|null $database The name of the database or the expression. - * @param string|null $table The name of the table or the alias of the expression. - * @param string|null $column the name of the column - * @param string|null $alias the name of the alias - */ - public function __construct($database = null, $table = null, $column = null, $alias = null) - { - if (($column === null) && ($alias === null)) { - $this->expr = $database; // case 1 - $this->alias = $table; // case 2 - } else { - $this->database = $database; // case 3 - $this->table = $table; // case 3 - $this->column = $column; // case 3 - $this->alias = $alias; // case 4 - } - } - - /** - * Possible options:. - * - * `field` - * - * First field to be filled. - * If this is not specified, it takes the value of `parseField`. - * - * `parseField` - * - * Specifies the type of the field parsed. It may be `database`, - * `table` or `column`. These expressions may not include - * parentheses. - * - * `breakOnAlias` - * - * If not empty, breaks when the alias occurs (it is not included). - * - * `breakOnParentheses` - * - * If not empty, breaks when the first parentheses occurs. - * - * `parenthesesDelimited` - * - * If not empty, breaks after last parentheses occurred. - * - * @param Parser $parser the parser that serves as context - * @param TokensList $list the list of tokens that are being parsed - * @param array $options parameters for parsing - * - * @return Expression|null - * - * @throws ParserException - */ - public static function parse(Parser $parser, TokensList $list, array $options = []) - { - $ret = new static(); - - /** - * Whether current tokens make an expression or a table reference. - * - * @var bool - */ - $isExpr = false; - - /** - * Whether a period was previously found. - * - * @var bool - */ - $dot = false; - - /** - * Whether an alias is expected. Is 2 if `AS` keyword was found. - * - * @var bool - */ - $alias = false; - - /** - * Counts brackets. - * - * @var int - */ - $brackets = 0; - - /** - * Keeps track of the last two previous tokens. - * - * @var Token[] - */ - $prev = [ - null, - null, - ]; - - // When a field is parsed, no parentheses are expected. - if (! empty($options['parseField'])) { - $options['breakOnParentheses'] = true; - $options['field'] = $options['parseField']; - } - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - // If the token is a closing C comment from a MySQL command, it must be ignored. - if ($isExpr && $token->token !== '*/') { - $ret->expr .= $token->token; - } - - continue; - } - - if ($token->type === Token::TYPE_KEYWORD) { - if (($brackets > 0) && empty($ret->subquery) && ! empty(Parser::$STATEMENT_PARSERS[$token->keyword])) { - // A `(` was previously found and this keyword is the - // beginning of a statement, so this is a subquery. - $ret->subquery = $token->keyword; - } elseif ( - ($token->flags & Token::FLAG_KEYWORD_FUNCTION) - && (empty($options['parseField']) - && ! $alias) - ) { - $isExpr = true; - } elseif (($token->flags & Token::FLAG_KEYWORD_RESERVED) && ($brackets === 0)) { - if (empty(self::$ALLOWED_KEYWORDS[$token->keyword])) { - // A reserved keyword that is not allowed in the - // expression was found so the expression must have - // ended and a new clause is starting. - break; - } - - if ($token->keyword === 'AS') { - if (! empty($options['breakOnAlias'])) { - break; - } - - if ($alias) { - $parser->error('An alias was expected.', $token); - break; - } - - $alias = true; - continue; - } - - if ($token->keyword === 'CASE') { - // For a use of CASE like - // 'SELECT a = CASE .... END, b=1, `id`, ... FROM ...' - $tempCaseExpr = CaseExpression::parse($parser, $list); - $ret->expr .= CaseExpression::build($tempCaseExpr); - $isExpr = true; - continue; - } - - $isExpr = true; - } elseif ( - $brackets === 0 && strlen((string) $ret->expr) > 0 && ! $alias - && ($ret->table === null || $ret->table === '') - ) { - /* End of expression */ - break; - } - } - - if ( - ($token->type === Token::TYPE_NUMBER) - || ($token->type === Token::TYPE_BOOL) - || (($token->type === Token::TYPE_SYMBOL) - && ($token->flags & Token::FLAG_SYMBOL_VARIABLE)) - || (($token->type === Token::TYPE_SYMBOL) - && ($token->flags & Token::FLAG_SYMBOL_PARAMETER)) - || (($token->type === Token::TYPE_OPERATOR) - && ($token->value !== '.')) - ) { - if (! empty($options['parseField'])) { - break; - } - - // Numbers, booleans and operators (except dot) are usually part - // of expressions. - $isExpr = true; - } - - if ($token->type === Token::TYPE_OPERATOR) { - if (! empty($options['breakOnParentheses']) && (($token->value === '(') || ($token->value === ')'))) { - // No brackets were expected. - break; - } - - if ($token->value === '(') { - ++$brackets; - if ( - empty($ret->function) && ($prev[1] !== null) - && (($prev[1]->type === Token::TYPE_NONE) - || ($prev[1]->type === Token::TYPE_SYMBOL) - || (($prev[1]->type === Token::TYPE_KEYWORD) - && ($prev[1]->flags & Token::FLAG_KEYWORD_FUNCTION))) - ) { - $ret->function = $prev[1]->value; - } - } elseif ($token->value === ')') { - if ($brackets === 0) { - // Not our bracket - break; - } - - --$brackets; - if ($brackets === 0) { - if (! empty($options['parenthesesDelimited'])) { - // The current token is the last bracket, the next - // one will be outside the expression. - $ret->expr .= $token->token; - ++$list->idx; - break; - } - } elseif ($brackets < 0) { - // $parser->error('Unexpected closing bracket.', $token); - // $brackets = 0; - break; - } - } elseif ($token->value === ',') { - // Expressions are comma-delimited. - if ($brackets === 0) { - break; - } - } - } - - // Saving the previous tokens. - $prev[0] = $prev[1]; - $prev[1] = $token; - - if ($alias) { - // An alias is expected (the keyword `AS` was previously found). - if (! empty($ret->alias)) { - $parser->error('An alias was previously found.', $token); - break; - } - - $ret->alias = $token->value; - $alias = false; - } elseif ($isExpr) { - // Handling aliases. - if ( - $brackets === 0 - && ($prev[0] === null - || (($prev[0]->type !== Token::TYPE_OPERATOR || $prev[0]->token === ')') - && ($prev[0]->type !== Token::TYPE_KEYWORD - || ! ($prev[0]->flags & Token::FLAG_KEYWORD_RESERVED)))) - && (($prev[1]->type === Token::TYPE_STRING) - || ($prev[1]->type === Token::TYPE_SYMBOL - && ! ($prev[1]->flags & Token::FLAG_SYMBOL_VARIABLE) - && ! ($prev[1]->flags & Token::FLAG_SYMBOL_PARAMETER)) - || ($prev[1]->type === Token::TYPE_NONE - && $prev[1]->token !== 'OVER')) - ) { - if (! empty($ret->alias)) { - $parser->error('An alias was previously found.', $token); - break; - } - - $ret->alias = $prev[1]->value; - } else { - $currIdx = $list->idx; - --$list->idx; - $beforeToken = $list->getPrevious(); - $list->idx = $currIdx; - // columns names tokens are of type NONE, or SYMBOL (`col`), and the columns options - // would start with a token of type KEYWORD, in that case, we want to have a space - // between the tokens. - if ( - $ret->expr !== null && - $beforeToken && - ($beforeToken->type === Token::TYPE_NONE || - $beforeToken->type === Token::TYPE_SYMBOL || $beforeToken->type === Token::TYPE_STRING) && - $token->type === Token::TYPE_KEYWORD - ) { - $ret->expr = rtrim($ret->expr, ' ') . ' '; - } - - $ret->expr .= $token->token; - } - } elseif (! $isExpr) { - if (($token->type === Token::TYPE_OPERATOR) && ($token->value === '.')) { - // Found a `.` which means we expect a column name and - // the column name we parsed is actually the table name - // and the table name is actually a database name. - if (! empty($ret->database) || $dot) { - $parser->error('Unexpected dot.', $token); - } - - $ret->database = $ret->table; - $ret->table = $ret->column; - $ret->column = null; - $dot = true; - $ret->expr .= $token->token; - } else { - $field = empty($options['field']) ? 'column' : $options['field']; - if (empty($ret->$field)) { - $ret->$field = $token->value; - $ret->expr .= $token->token; - $dot = false; - } else { - // No alias is expected. - if (! empty($options['breakOnAlias'])) { - break; - } - - if (! empty($ret->alias)) { - $parser->error('An alias was previously found.', $token); - break; - } - - $ret->alias = $token->value; - } - } - } - } - - if ($alias) { - $parser->error('An alias was expected.', $list->tokens[$list->idx - 1]); - } - - // White-spaces might be added at the end. - $ret->expr = trim((string) $ret->expr); - - if ($ret->expr === '') { - return null; - } - - --$list->idx; - - return $ret; - } - - /** - * @param Expression|Expression[] $component the component to be built - * @param array $options parameters for building - * - * @return string - */ - public static function build($component, array $options = []) - { - if (is_array($component)) { - return implode(', ', $component); - } - - if ($component->expr !== '' && $component->expr !== null) { - $ret = $component->expr; - } else { - $fields = []; - if (isset($component->database) && ($component->database !== '')) { - $fields[] = $component->database; - } - - if (isset($component->table) && ($component->table !== '')) { - $fields[] = $component->table; - } - - if (isset($component->column) && ($component->column !== '')) { - $fields[] = $component->column; - } - - $ret = implode('.', Context::escape($fields)); - } - - if (! empty($component->alias)) { - $ret .= ' AS ' . Context::escape($component->alias); - } - - return $ret; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/ExpressionArray.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/ExpressionArray.php deleted file mode 100644 index e65b466f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/ExpressionArray.php +++ /dev/null @@ -1,140 +0,0 @@ - $options parameters for parsing - * - * @return Expression[] - * - * @throws ParserException - */ - public static function parse(Parser $parser, TokensList $list, array $options = []) - { - $ret = []; - - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 ----------------------[ array ]---------------------> 1 - * - * 1 ------------------------[ , ]------------------------> 0 - * 1 -----------------------[ else ]----------------------> (END) - * - * @var int - */ - $state = 0; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - continue; - } - - if ( - ($token->type === Token::TYPE_KEYWORD) - && ($token->flags & Token::FLAG_KEYWORD_RESERVED) - && ((~$token->flags & Token::FLAG_KEYWORD_FUNCTION)) - && ($token->value !== 'DUAL') - && ($token->value !== 'NULL') - && ($token->value !== 'CASE') - && ($token->value !== 'NOT') - ) { - // No keyword is expected. - break; - } - - if ($state === 0) { - if ($token->type === Token::TYPE_KEYWORD && $token->value === 'CASE') { - $expr = CaseExpression::parse($parser, $list, $options); - } else { - $expr = Expression::parse($parser, $list, $options); - } - - if ($expr === null) { - break; - } - - $ret[] = $expr; - $state = 1; - } elseif ($state === 1) { - if ($token->value !== ',') { - break; - } - - $state = 0; - } - } - - if ($state === 0) { - $parser->error('An expression was expected.', $list->tokens[$list->idx]); - } - - --$list->idx; - - if (is_array($ret)) { - $retIndex = count($ret) - 1; - if (isset($ret[$retIndex])) { - $expr = $ret[$retIndex]->expr; - if (preg_match('/\s*--\s.*$/', $expr, $matches)) { - $found = $matches[0]; - $ret[$retIndex]->expr = substr($expr, 0, strlen($expr) - strlen($found)); - } - } - } - - return $ret; - } - - /** - * @param Expression[] $component the component to be built - * @param array $options parameters for building - * - * @return string - */ - public static function build($component, array $options = []) - { - $ret = []; - foreach ($component as $frag) { - $ret[] = $frag::build($frag); - } - - return implode(', ', $ret); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/FunctionCall.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/FunctionCall.php deleted file mode 100644 index 4d6c0ed0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/FunctionCall.php +++ /dev/null @@ -1,117 +0,0 @@ -name = $name; - if (is_array($parameters)) { - $this->parameters = new ArrayObj($parameters); - } elseif ($parameters instanceof ArrayObj) { - $this->parameters = $parameters; - } - } - - /** - * @param Parser $parser the parser that serves as context - * @param TokensList $list the list of tokens that are being parsed - * @param array $options parameters for parsing - * - * @return FunctionCall - */ - public static function parse(Parser $parser, TokensList $list, array $options = []) - { - $ret = new static(); - - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 ----------------------[ name ]-----------------------> 1 - * - * 1 --------------------[ parameters ]-------------------> (END) - * - * @var int - */ - $state = 0; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - --$list->idx; // Let last token to previous one to avoid "This type of clause was previously parsed." - break; - } - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - continue; - } - - if ($state === 0) { - if ($token->type === Token::TYPE_OPERATOR && $token->value === '(') { - --$list->idx; // ArrayObj needs to start with `(` - $state = 1; - continue;// do not add this token to the name - } - - $ret->name .= $token->value; - } elseif ($state === 1) { - $ret->parameters = ArrayObj::parse($parser, $list); - break; - } - } - - return $ret; - } - - /** - * @param FunctionCall $component the component to be built - * @param array $options parameters for building - * - * @return string - */ - public static function build($component, array $options = []) - { - return $component->name . $component->parameters; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/GroupKeyword.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/GroupKeyword.php deleted file mode 100644 index 91f889d8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/GroupKeyword.php +++ /dev/null @@ -1,130 +0,0 @@ -expr = $expr; - } - - /** - * @param Parser $parser the parser that serves as context - * @param TokensList $list the list of tokens that are being parsed - * @param array $options parameters for parsing - * - * @return GroupKeyword[] - */ - public static function parse(Parser $parser, TokensList $list, array $options = []) - { - $ret = []; - - $expr = new static(); - - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 --------------------[ expression ]-------------------> 1 - * - * 1 ------------------------[ , ]------------------------> 0 - * 1 -------------------[ ASC / DESC ]--------------------> 1 - * - * @var int - */ - $state = 0; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - continue; - } - - if ($state === 0) { - $expr->expr = Expression::parse($parser, $list); - $state = 1; - } elseif ($state === 1) { - if ( - ($token->type === Token::TYPE_KEYWORD) - && (($token->keyword === 'ASC') || ($token->keyword === 'DESC')) - ) { - $expr->type = $token->keyword; - } elseif (($token->type === Token::TYPE_OPERATOR) && ($token->value === ',')) { - if (! empty($expr->expr)) { - $ret[] = $expr; - } - - $expr = new static(); - $state = 0; - } else { - break; - } - } - } - - // Last iteration was not processed. - if (! empty($expr->expr)) { - $ret[] = $expr; - } - - --$list->idx; - - return $ret; - } - - /** - * @param GroupKeyword|GroupKeyword[] $component the component to be built - * @param array $options parameters for building - * - * @return string - */ - public static function build($component, array $options = []) - { - if (is_array($component)) { - return implode(', ', $component); - } - - return trim((string) $component->expr); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/IndexHint.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/IndexHint.php deleted file mode 100644 index 5ff53862..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/IndexHint.php +++ /dev/null @@ -1,207 +0,0 @@ -type = $type; - $this->indexOrKey = $indexOrKey; - $this->for = $for; - $this->indexes = $indexes; - } - - /** - * @param Parser $parser the parser that serves as context - * @param TokensList $list the list of tokens that are being parsed - * @param array $options parameters for parsing - * - * @return IndexHint|Component[] - */ - public static function parse(Parser $parser, TokensList $list, array $options = []) - { - $ret = []; - $expr = new static(); - $expr->type = $options['type'] ?? null; - /** - * The state of the parser. - * - * Below are the states of the parser. - * 0 ----------------- [ USE/IGNORE/FORCE ]-----------------> 1 - * 1 -------------------- [ INDEX/KEY ] --------------------> 2 - * 2 ----------------------- [ FOR ] -----------------------> 3 - * 2 -------------------- [ expr_list ] --------------------> 0 - * 3 -------------- [ JOIN/GROUP BY/ORDER BY ] -------------> 4 - * 4 -------------------- [ expr_list ] --------------------> 0 - * - * @var int - */ - $state = 0; - - // By design, the parser will parse first token after the keyword. So, the keyword - // must be analyzed too, in order to determine the type of this index hint. - if ($list->idx > 0) { - --$list->idx; - } - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - continue; - } - - switch ($state) { - case 0: - if ($token->type === Token::TYPE_KEYWORD) { - if ($token->keyword !== 'USE' && $token->keyword !== 'IGNORE' && $token->keyword !== 'FORCE') { - break 2; - } - - $expr->type = $token->keyword; - $state = 1; - } - - break; - case 1: - if ($token->type === Token::TYPE_KEYWORD) { - if ($token->keyword === 'INDEX' || $token->keyword === 'KEY') { - $expr->indexOrKey = $token->keyword; - } else { - $parser->error('Unexpected keyword.', $token); - } - - $state = 2; - } else { - // we expect the token to be a keyword - $parser->error('Unexpected token.', $token); - } - - break; - case 2: - if ($token->type === Token::TYPE_KEYWORD && $token->keyword === 'FOR') { - $state = 3; - } else { - $expr->indexes = ExpressionArray::parse($parser, $list); - $state = 0; - $ret[] = $expr; - $expr = new static(); - } - - break; - case 3: - if ($token->type === Token::TYPE_KEYWORD) { - if ( - $token->keyword === 'JOIN' - || $token->keyword === 'GROUP BY' - || $token->keyword === 'ORDER BY' - ) { - $expr->for = $token->keyword; - } else { - $parser->error('Unexpected keyword.', $token); - } - - $state = 4; - } else { - // we expect the token to be a keyword - $parser->error('Unexpected token.', $token); - } - - break; - case 4: - $expr->indexes = ExpressionArray::parse($parser, $list); - $state = 0; - $ret[] = $expr; - $expr = new static(); - break; - } - } - - --$list->idx; - - return $ret; - } - - /** - * @param IndexHint|IndexHint[] $component the component to be built - * @param array $options parameters for building - * - * @return string - */ - public static function build($component, array $options = []) - { - if (is_array($component)) { - return implode(' ', $component); - } - - $ret = $component->type . ' ' . $component->indexOrKey . ' '; - if ($component->for !== null) { - $ret .= 'FOR ' . $component->for . ' '; - } - - return $ret . ExpressionArray::build($component->indexes); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/IntoKeyword.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/IntoKeyword.php deleted file mode 100644 index 8ff178c9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/IntoKeyword.php +++ /dev/null @@ -1,298 +0,0 @@ -> - * @psalm-var array [ - 1, - 'expr', - ], - 'OPTIONALLY' => 2, - 'ENCLOSED BY' => [ - 3, - 'expr', - ], - 'ESCAPED BY' => [ - 4, - 'expr', - ], - ]; - - /** - * LINES Options for `SELECT...INTO` statements. - * - * @var array> - * @psalm-var array [ - 1, - 'expr', - ], - 'TERMINATED BY' => [ - 2, - 'expr', - ], - ]; - - /** - * Type of target (OUTFILE or SYMBOL). - * - * @var string|null - */ - public $type; - - /** - * The destination, which can be a table or a file. - * - * @var string|Expression|null - */ - public $dest; - - /** - * The name of the columns. - * - * @var string[]|null - */ - public $columns; - - /** - * The values to be selected into (SELECT .. INTO @var1). - * - * @var Expression[]|null - */ - public $values; - - /** - * Options for FIELDS/COLUMNS keyword. - * - * @see static::$FIELDS_OPTIONS - * - * @var OptionsArray|null - */ - public $fields_options; - - /** - * Whether to use `FIELDS` or `COLUMNS` while building. - * - * @var bool|null - */ - public $fields_keyword; - - /** - * Options for OPTIONS keyword. - * - * @see static::$LINES_OPTIONS - * - * @var OptionsArray|null - */ - public $lines_options; - - /** - * @param string|null $type type of destination (may be OUTFILE) - * @param string|Expression|null $dest actual destination - * @param string[]|null $columns column list of destination - * @param Expression[]|null $values selected fields - * @param OptionsArray|null $fieldsOptions options for FIELDS/COLUMNS keyword - * @param bool|null $fieldsKeyword options for OPTIONS keyword - */ - public function __construct( - $type = null, - $dest = null, - $columns = null, - $values = null, - $fieldsOptions = null, - $fieldsKeyword = null - ) { - $this->type = $type; - $this->dest = $dest; - $this->columns = $columns; - $this->values = $values; - $this->fields_options = $fieldsOptions; - $this->fields_keyword = $fieldsKeyword; - } - - /** - * @param Parser $parser the parser that serves as context - * @param TokensList $list the list of tokens that are being parsed - * @param array $options parameters for parsing - * - * @return IntoKeyword - */ - public static function parse(Parser $parser, TokensList $list, array $options = []) - { - $ret = new static(); - - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 -----------------------[ name ]----------------------> 1 - * 0 ---------------------[ OUTFILE ]---------------------> 2 - * - * 1 ------------------------[ ( ]------------------------> (END) - * - * 2 ---------------------[ filename ]--------------------> 1 - * - * @var int - */ - $state = 0; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - continue; - } - - if (($token->type === Token::TYPE_KEYWORD) && ($token->flags & Token::FLAG_KEYWORD_RESERVED)) { - if (($state === 0) && ($token->keyword === 'OUTFILE')) { - $ret->type = 'OUTFILE'; - $state = 2; - continue; - } - - // No other keyword is expected except for $state = 4, which expects `LINES` - if ($state !== 4) { - break; - } - } - - if ($state === 0) { - if ( - (isset($options['fromInsert']) - && $options['fromInsert']) - || (isset($options['fromReplace']) - && $options['fromReplace']) - ) { - $ret->dest = Expression::parse( - $parser, - $list, - [ - 'parseField' => 'table', - 'breakOnAlias' => true, - ] - ); - } else { - $ret->values = ExpressionArray::parse($parser, $list); - } - - $state = 1; - } elseif ($state === 1) { - if (($token->type === Token::TYPE_OPERATOR) && ($token->value === '(')) { - $ret->columns = ArrayObj::parse($parser, $list)->values; - ++$list->idx; - } - - break; - } elseif ($state === 2) { - $ret->dest = $token->value; - - $state = 3; - } elseif ($state === 3) { - $ret->parseFileOptions($parser, $list, $token->keyword); - $state = 4; - } elseif ($state === 4) { - if ($token->type === Token::TYPE_KEYWORD && $token->keyword !== 'LINES') { - break; - } - - $ret->parseFileOptions($parser, $list, $token->keyword); - $state = 5; - } - } - - --$list->idx; - - return $ret; - } - - /** - * @param Parser $parser The parser - * @param TokensList $list A token list - * @param string $keyword The keyword - * - * @return void - */ - public function parseFileOptions(Parser $parser, TokensList $list, $keyword = 'FIELDS') - { - ++$list->idx; - - if ($keyword === 'FIELDS' || $keyword === 'COLUMNS') { - // parse field options - $this->fields_options = OptionsArray::parse($parser, $list, static::$FIELDS_OPTIONS); - - $this->fields_keyword = ($keyword === 'FIELDS'); - } else { - // parse line options - $this->lines_options = OptionsArray::parse($parser, $list, static::$LINES_OPTIONS); - } - } - - /** - * @param IntoKeyword $component the component to be built - * @param array $options parameters for building - * - * @return string - */ - public static function build($component, array $options = []) - { - if ($component->dest instanceof Expression) { - $columns = ! empty($component->columns) ? '(`' . implode('`, `', $component->columns) . '`)' : ''; - - return $component->dest . $columns; - } - - if (isset($component->values)) { - return ExpressionArray::build($component->values); - } - - $ret = 'OUTFILE "' . $component->dest . '"'; - - $fieldsOptionsString = OptionsArray::build($component->fields_options); - if (trim($fieldsOptionsString) !== '') { - $ret .= $component->fields_keyword ? ' FIELDS' : ' COLUMNS'; - $ret .= ' ' . $fieldsOptionsString; - } - - $linesOptionsString = OptionsArray::build($component->lines_options, ['expr' => true]); - if (trim($linesOptionsString) !== '') { - $ret .= ' LINES ' . $linesOptionsString; - } - - return $ret; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/JoinKeyword.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/JoinKeyword.php deleted file mode 100644 index 6f964993..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/JoinKeyword.php +++ /dev/null @@ -1,221 +0,0 @@ - - */ - public static $JOINS = [ - 'CROSS JOIN' => 'CROSS', - 'FULL JOIN' => 'FULL', - 'FULL OUTER JOIN' => 'FULL', - 'INNER JOIN' => 'INNER', - 'JOIN' => 'JOIN', - 'LEFT JOIN' => 'LEFT', - 'LEFT OUTER JOIN' => 'LEFT', - 'RIGHT JOIN' => 'RIGHT', - 'RIGHT OUTER JOIN' => 'RIGHT', - 'NATURAL JOIN' => 'NATURAL', - 'NATURAL LEFT JOIN' => 'NATURAL LEFT', - 'NATURAL RIGHT JOIN' => 'NATURAL RIGHT', - 'NATURAL LEFT OUTER JOIN' => 'NATURAL LEFT OUTER', - 'NATURAL RIGHT OUTER JOIN' => 'NATURAL RIGHT OUTER', - 'STRAIGHT_JOIN' => 'STRAIGHT', - ]; - - /** - * Type of this join. - * - * @see static::$JOINS - * - * @var string - */ - public $type; - - /** - * Join expression. - * - * @var Expression - */ - public $expr; - - /** - * Join conditions. - * - * @var Condition[] - */ - public $on; - - /** - * Columns in Using clause. - * - * @var ArrayObj - */ - public $using; - - /** - * @see JoinKeyword::$JOINS - * - * @param string $type Join type - * @param Expression $expr join expression - * @param Condition[] $on join conditions - * @param ArrayObj $using columns joined - */ - public function __construct($type = null, $expr = null, $on = null, $using = null) - { - $this->type = $type; - $this->expr = $expr; - $this->on = $on; - $this->using = $using; - } - - /** - * @param Parser $parser the parser that serves as context - * @param TokensList $list the list of tokens that are being parsed - * @param array $options parameters for parsing - * - * @return JoinKeyword[] - */ - public static function parse(Parser $parser, TokensList $list, array $options = []) - { - $ret = []; - - $expr = new static(); - - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 -----------------------[ JOIN ]----------------------> 1 - * - * 1 -----------------------[ expr ]----------------------> 2 - * - * 2 ------------------------[ ON ]-----------------------> 3 - * 2 -----------------------[ USING ]---------------------> 4 - * - * 3 --------------------[ conditions ]-------------------> 0 - * - * 4 ----------------------[ columns ]--------------------> 0 - * - * @var int - */ - $state = 0; - - // By design, the parser will parse first token after the keyword. - // In this case, the keyword must be analyzed too, in order to determine - // the type of this join. - if ($list->idx > 0) { - --$list->idx; - } - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - continue; - } - - if ($state === 0) { - if (($token->type !== Token::TYPE_KEYWORD) || empty(static::$JOINS[$token->keyword])) { - break; - } - - $expr->type = static::$JOINS[$token->keyword]; - $state = 1; - } elseif ($state === 1) { - $expr->expr = Expression::parse($parser, $list, ['field' => 'table']); - $state = 2; - } elseif ($state === 2) { - if ($token->type === Token::TYPE_KEYWORD) { - switch ($token->keyword) { - case 'ON': - $state = 3; - break; - case 'USING': - $state = 4; - break; - default: - if (empty(static::$JOINS[$token->keyword])) { - /* Next clause is starting */ - break 2; - } - - $ret[] = $expr; - $expr = new static(); - $expr->type = static::$JOINS[$token->keyword]; - $state = 1; - - break; - } - } - } elseif ($state === 3) { - $expr->on = Condition::parse($parser, $list); - $ret[] = $expr; - $expr = new static(); - $state = 0; - } elseif ($state === 4) { - $expr->using = ArrayObj::parse($parser, $list); - $ret[] = $expr; - $expr = new static(); - $state = 0; - } - } - - if (! empty($expr->type)) { - $ret[] = $expr; - } - - --$list->idx; - - return $ret; - } - - /** - * @param JoinKeyword[] $component the component to be built - * @param array $options parameters for building - * - * @return string - */ - public static function build($component, array $options = []) - { - $ret = []; - foreach ($component as $c) { - $ret[] = array_search($c->type, static::$JOINS) . ' ' . $c->expr - . (! empty($c->on) - ? ' ON ' . Condition::build($c->on) : '') - . (! empty($c->using) - ? ' USING ' . ArrayObj::build($c->using) : ''); - } - - return implode(' ', $ret); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/Key.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/Key.php deleted file mode 100644 index 9c0ff839..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/Key.php +++ /dev/null @@ -1,307 +0,0 @@ -> - * @psalm-var array [ - 1, - 'var=', - ], - 'USING' => [ - 2, - 'var', - ], - 'WITH PARSER' => [ - 3, - 'var', - ], - 'COMMENT' => [ - 4, - 'var', - ], - // MariaDB options - 'CLUSTERING' => [ - 4, - 'var=', - ], - 'ENGINE_ATTRIBUTE' => [ - 5, - 'var=', - ], - 'SECONDARY_ENGINE_ATTRIBUTE' => [ - 5, - 'var=', - ], - // MariaDB & MySQL options - 'VISIBLE' => 6, - 'INVISIBLE' => 6, - // MariaDB options - 'IGNORED' => 10, - 'NOT IGNORED' => 10, - ]; - - /** - * The name of this key. - * - * @var string - */ - public $name; - - /** - * The key columns - * - * @var array> - * @phpstan-var array{name?: string, length?: int, order?: string}[] - */ - public $columns; - - /** - * The type of this key. - * - * @var string - */ - public $type; - - /** - * The expression if the Key is not using column names - * - * @var string|null - */ - public $expr = null; - - /** - * The options of this key or null if none where found. - * - * @var OptionsArray|null - */ - public $options; - - /** - * @param string $name the name of the key - * @param array> $columns the columns covered by this key - * @param string $type the type of this key - * @param OptionsArray $options the options of this key - * @phpstan-param array{name?: string, length?: int, order?: string}[] $columns - */ - public function __construct( - $name = null, - array $columns = [], - $type = null, - $options = null - ) { - $this->name = $name; - $this->columns = $columns; - $this->type = $type; - $this->options = $options; - } - - /** - * @param Parser $parser the parser that serves as context - * @param TokensList $list the list of tokens that are being parsed - * @param array $options parameters for parsing - * - * @return Key - */ - public static function parse(Parser $parser, TokensList $list, array $options = []) - { - $ret = new static(); - - /** - * Last parsed column. - * - * @var array - */ - $lastColumn = []; - - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 ---------------------[ type ]---------------------------> 1 - * - * 1 ---------------------[ name ]---------------------------> 1 - * 1 ---------------------[ columns ]------------------------> 2 - * 1 ---------------------[ expression ]---------------------> 5 - * - * 2 ---------------------[ column length ]------------------> 3 - * 3 ---------------------[ column length ]------------------> 2 - * 2 ---------------------[ options ]------------------------> 4 - * 5 ---------------------[ expression ]---------------------> 4 - * - * @var int - */ - $state = 0; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - continue; - } - - if ($state === 0) { - $ret->type = $token->value; - $state = 1; - } elseif ($state === 1) { - if (($token->type === Token::TYPE_OPERATOR) && ($token->value === '(')) { - $positionBeforeSearch = $list->idx; - $list->idx++;// Ignore the current token "(" or the search condition will always be true - $nextToken = $list->getNext(); - $list->idx = $positionBeforeSearch;// Restore the position - - if ($nextToken !== null && $nextToken->value === '(') { - // Switch to expression mode - $state = 5; - } else { - $state = 2; - } - } else { - $ret->name = $token->value; - } - } elseif ($state === 2) { - if ($token->type === Token::TYPE_OPERATOR) { - if ($token->value === '(') { - $state = 3; - } elseif (($token->value === ',') || ($token->value === ')')) { - $state = $token->value === ',' ? 2 : 4; - if (! empty($lastColumn)) { - $ret->columns[] = $lastColumn; - $lastColumn = []; - } - } - } elseif ( - ( - $token->type === Token::TYPE_KEYWORD - ) - && - ( - ($token->keyword === 'ASC') || ($token->keyword === 'DESC') - ) - ) { - $lastColumn['order'] = $token->keyword; - } else { - $lastColumn['name'] = $token->value; - } - } elseif ($state === 3) { - if (($token->type === Token::TYPE_OPERATOR) && ($token->value === ')')) { - $state = 2; - } else { - $lastColumn['length'] = $token->value; - } - } elseif ($state === 4) { - $ret->options = OptionsArray::parse($parser, $list, static::$KEY_OPTIONS); - ++$list->idx; - break; - } elseif ($state === 5) { - if ($token->type === Token::TYPE_OPERATOR) { - // This got back to here and we reached the end of the expression - if ($token->value === ')') { - $state = 4;// go back to state 4 to fetch options - continue; - } - - // The expression is not finished, adding a separator for the next expression - if ($token->value === ',') { - $ret->expr .= ', '; - continue; - } - - // Start of the expression - if ($token->value === '(') { - // This is the first expression, set to empty - if ($ret->expr === null) { - $ret->expr = ''; - } - - $ret->expr .= Expression::parse($parser, $list, ['parenthesesDelimited' => true]); - continue; - } - // Another unexpected operator was found - } - - // Something else than an operator was found - $parser->error('Unexpected token.', $token); - } - } - - --$list->idx; - - return $ret; - } - - /** - * @param Key $component the component to be built - * @param array $options parameters for building - * - * @return string - */ - public static function build($component, array $options = []) - { - $ret = $component->type . ' '; - if (! empty($component->name)) { - $ret .= Context::escape($component->name) . ' '; - } - - if ($component->expr !== null) { - return $ret . '(' . $component->expr . ') ' . $component->options; - } - - $columns = []; - foreach ($component->columns as $column) { - $tmp = ''; - if (isset($column['name'])) { - $tmp .= Context::escape($column['name']); - } - - if (isset($column['length'])) { - $tmp .= '(' . $column['length'] . ')'; - } - - if (isset($column['order'])) { - $tmp .= ' ' . $column['order']; - } - - $columns[] = $tmp; - } - - $ret .= '(' . implode(',', $columns) . ') ' . $component->options; - - return trim($ret); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/Limit.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/Limit.php deleted file mode 100644 index 172fd307..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/Limit.php +++ /dev/null @@ -1,126 +0,0 @@ -rowCount = $rowCount; - $this->offset = $offset; - } - - /** - * @param Parser $parser the parser that serves as context - * @param TokensList $list the list of tokens that are being parsed - * @param array $options parameters for parsing - * - * @return Limit - */ - public static function parse(Parser $parser, TokensList $list, array $options = []) - { - $ret = new static(); - - $offset = false; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - continue; - } - - if (($token->type === Token::TYPE_KEYWORD) && ($token->flags & Token::FLAG_KEYWORD_RESERVED)) { - break; - } - - if ($token->type === Token::TYPE_KEYWORD && $token->keyword === 'OFFSET') { - if ($offset) { - $parser->error('An offset was expected.', $token); - } - - $offset = true; - continue; - } - - if (($token->type === Token::TYPE_OPERATOR) && ($token->value === ',')) { - $ret->offset = $ret->rowCount; - $ret->rowCount = 0; - continue; - } - - // Skip if not a number or a bind parameter (?) - if ( - ! ($token->type === Token::TYPE_NUMBER - || ($token->type === Token::TYPE_SYMBOL && ($token->flags & Token::FLAG_SYMBOL_PARAMETER))) - ) { - break; - } - - if ($offset) { - $ret->offset = $token->value; - $offset = false; - } else { - $ret->rowCount = $token->value; - } - } - - if ($offset) { - $parser->error('An offset was expected.', $list->tokens[$list->idx - 1]); - } - - --$list->idx; - - return $ret; - } - - /** - * @param Limit $component the component to be built - * @param array $options parameters for building - * - * @return string - */ - public static function build($component, array $options = []) - { - return $component->offset . ', ' . $component->rowCount; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/LockExpression.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/LockExpression.php deleted file mode 100644 index 05eeb5e8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/LockExpression.php +++ /dev/null @@ -1,206 +0,0 @@ - $options parameters for parsing - * - * @return LockExpression - */ - public static function parse(Parser $parser, TokensList $list, array $options = []) - { - $ret = new static(); - - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 ---------------- [ tbl_name ] -----------------> 1 - * 1 ---------------- [ lock_type ] ----------------> 2 - * 2 -------------------- [ , ] --------------------> break - * - * @var int - */ - $state = 0; - - $prevToken = null; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ( - $token->type === Token::TYPE_DELIMITER - || ($token->type === Token::TYPE_OPERATOR - && $token->value === ',') - ) { - break; - } - - if ($state === 0) { - $ret->table = Expression::parse($parser, $list, ['parseField' => 'table']); - $state = 1; - } elseif ($state === 1) { - // parse lock type - $ret->type = self::parseLockType($parser, $list); - $state = 2; - } - - $prevToken = $token; - } - - // 2 is the only valid end state - if ($state !== 2) { - $parser->error('Unexpected end of LOCK expression.', $prevToken); - } - - --$list->idx; - - return $ret; - } - - /** - * @param LockExpression|LockExpression[] $component the component to be built - * @param array $options parameters for building - * - * @return string - */ - public static function build($component, array $options = []) - { - if (is_array($component)) { - return implode(', ', $component); - } - - return $component->table . ' ' . $component->type; - } - - /** - * @return string - */ - private static function parseLockType(Parser $parser, TokensList $list) - { - $lockType = ''; - - /** - * The state of the parser while parsing for lock type. - * - * Below are the states of the parser. - * - * 0 ---------------- [ READ ] -----------------> 1 - * 0 ------------- [ LOW_PRIORITY ] ------------> 2 - * 0 ---------------- [ WRITE ] ----------------> 3 - * 1 ---------------- [ LOCAL ] ----------------> 3 - * 2 ---------------- [ WRITE ] ----------------> 3 - * - * @var int - */ - $state = 0; - - $prevToken = null; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ( - $token->type === Token::TYPE_DELIMITER - || ($token->type === Token::TYPE_OPERATOR - && $token->value === ',') - ) { - --$list->idx; - break; - } - - // Skipping whitespaces and comments. - if ($token->type === Token::TYPE_WHITESPACE || $token->type === Token::TYPE_COMMENT) { - continue; - } - - // We only expect keywords - if ($token->type !== Token::TYPE_KEYWORD) { - $parser->error('Unexpected token.', $token); - break; - } - - if ($state === 0) { - if ($token->keyword === 'READ') { - $state = 1; - } elseif ($token->keyword === 'LOW_PRIORITY') { - $state = 2; - } elseif ($token->keyword === 'WRITE') { - $state = 3; - } else { - $parser->error('Unexpected keyword.', $token); - break; - } - - $lockType .= $token->keyword; - } elseif ($state === 1) { - if ($token->keyword !== 'LOCAL') { - $parser->error('Unexpected keyword.', $token); - break; - } - - $lockType .= ' ' . $token->keyword; - $state = 3; - } elseif ($state === 2) { - if ($token->keyword !== 'WRITE') { - $parser->error('Unexpected keyword.', $token); - break; - } - - $lockType .= ' ' . $token->keyword; - $state = 3; // parsing over - } - - $prevToken = $token; - } - - // Only two possible end states - if ($state !== 1 && $state !== 3) { - $parser->error('Unexpected end of LOCK expression.', $prevToken); - } - - return $lockType; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/OptionsArray.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/OptionsArray.php deleted file mode 100644 index 5c0815bc..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/OptionsArray.php +++ /dev/null @@ -1,381 +0,0 @@ - - */ - public $options = []; - - /** - * @param array $options The array of options. Options that have a value - * must be an array with at least two keys `name` and - * `expr` or `value`. - */ - public function __construct(array $options = []) - { - $this->options = $options; - } - - /** - * @param Parser $parser the parser that serves as context - * @param TokensList $list the list of tokens that are being parsed - * @param array $options parameters for parsing - * - * @return OptionsArray - */ - public static function parse(Parser $parser, TokensList $list, array $options = []) - { - $ret = new static(); - - /** - * The ID that will be assigned to duplicate options. - * - * @var int - */ - $lastAssignedId = count($options) + 1; - - /** - * The option that was processed last time. - */ - $lastOption = null; - - /** - * The index of the option that was processed last time. - * - * @var int - */ - $lastOptionId = 0; - - /** - * Counts brackets. - * - * @var int - */ - $brackets = 0; - - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 ---------------------[ option ]----------------------> 1 - * - * 1 -------------------[ = (optional) ]------------------> 2 - * - * 2 ----------------------[ value ]----------------------> 0 - * - * @var int - */ - $state = 0; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping comments. - if ($token->type === Token::TYPE_COMMENT) { - continue; - } - - // Skipping whitespace if not parsing value. - if (($token->type === Token::TYPE_WHITESPACE) && ($brackets === 0)) { - continue; - } - - if ($lastOption === null) { - $upper = strtoupper($token->token); - if (! isset($options[$upper])) { - // There is no option to be processed. - break; - } - - $lastOption = $options[$upper]; - $lastOptionId = is_array($lastOption) ? - $lastOption[0] : $lastOption; - $state = 0; - - // Checking for option conflicts. - // For example, in `SELECT` statements the keywords `ALL` - // and `DISTINCT` conflict and if used together, they - // produce an invalid query. - // - // Usually, tokens can be identified in the array by the - // option ID, but if conflicts occur, a generated option ID - // is used. - // - // The first pseudo duplicate ID is the maximum value of the - // real options (e.g. if there are 5 options, the first - // fake ID is 6). - if (isset($ret->options[$lastOptionId])) { - $parser->error( - sprintf( - Translator::gettext('This option conflicts with "%1$s".'), - is_array($ret->options[$lastOptionId]) - ? $ret->options[$lastOptionId]['name'] - : $ret->options[$lastOptionId] - ), - $token - ); - $lastOptionId = $lastAssignedId++; - } - } - - if ($state === 0) { - if (! is_array($lastOption)) { - // This is a just keyword option without any value. - // This is the beginning and the end of it. - $ret->options[$lastOptionId] = $token->value; - $lastOption = null; - $state = 0; - } elseif (($lastOption[1] === 'var') || ($lastOption[1] === 'var=')) { - // This is a keyword that is followed by a value. - // This is only the beginning. The value is parsed in state - // 1 and 2. State 1 is used to skip the first equals sign - // and state 2 to parse the actual value. - $ret->options[$lastOptionId] = [ - // @var string The name of the option. - 'name' => $token->value, - // @var bool Whether it contains an equal sign. - // This is used by the builder to rebuild it. - 'equals' => $lastOption[1] === 'var=', - // @var string Raw value. - 'expr' => '', - // @var string Processed value. - 'value' => '', - ]; - $state = 1; - } elseif ($lastOption[1] === 'expr' || $lastOption[1] === 'expr=') { - // This is a keyword that is followed by an expression. - // The expression is used by the specialized parser. - - // Skipping this option in order to parse the expression. - ++$list->idx; - $ret->options[$lastOptionId] = [ - // @var string The name of the option. - 'name' => $token->value, - // @var bool Whether it contains an equal sign. - // This is used by the builder to rebuild it. - 'equals' => $lastOption[1] === 'expr=', - // @var Expression The parsed expression. - 'expr' => '', - ]; - $state = 1; - } - } elseif ($state === 1) { - $state = 2; - if ($token->token === '=') { - $ret->options[$lastOptionId]['equals'] = true; - continue; - } - } - - // This is outside the `elseif` group above because the change might - // change this iteration. - if ($state !== 2) { - continue; - } - - if ($lastOption[1] === 'expr' || $lastOption[1] === 'expr=') { - $ret->options[$lastOptionId]['expr'] = Expression::parse( - $parser, - $list, - empty($lastOption[2]) ? [] : $lastOption[2] - ); - if ($ret->options[$lastOptionId]['expr'] !== null) { - $ret->options[$lastOptionId]['value'] - = $ret->options[$lastOptionId]['expr']->expr; - } - - $lastOption = null; - $state = 0; - } else { - if ($token->token === '(') { - ++$brackets; - } elseif ($token->token === ')') { - --$brackets; - } - - $ret->options[$lastOptionId]['expr'] .= $token->token; - - if ( - ! (($token->token === '(') && ($brackets === 1) - || (($token->token === ')') && ($brackets === 0))) - ) { - // First pair of brackets is being skipped. - $ret->options[$lastOptionId]['value'] .= $token->value; - } - - // Checking if we finished parsing. - if ($brackets === 0) { - $lastOption = null; - } - } - } - - /* - * We reached the end of statement without getting a value - * for an option for which a value was required - */ - if ( - $state === 1 - && $lastOption - && ($lastOption[1] === 'expr' - || $lastOption[1] === 'var' - || $lastOption[1] === 'var=' - || $lastOption[1] === 'expr=') - ) { - $parser->error( - sprintf( - 'Value/Expression for the option %1$s was expected.', - $ret->options[$lastOptionId]['name'] - ), - $list->tokens[$list->idx - 1] - ); - } - - if (empty($options['_UNSORTED'])) { - ksort($ret->options); - } - - --$list->idx; - - return $ret; - } - - /** - * @param OptionsArray $component the component to be built - * @param array $options parameters for building - * - * @return string - */ - public static function build($component, array $options = []) - { - if (empty($component->options)) { - return ''; - } - - $options = []; - foreach ($component->options as $option) { - if (! is_array($option)) { - $options[] = $option; - } else { - $options[] = $option['name'] - . (! empty($option['equals']) && $option['equals'] ? '=' : ' ') - . (! empty($option['expr']) ? $option['expr'] : $option['value']); - } - } - - return implode(' ', $options); - } - - /** - * Checks if it has the specified option and returns it value or true. - * - * @param string $key the key to be checked - * @param bool $getExpr Gets the expression instead of the value. - * The value is the processed form of the expression. - * - * @return mixed - */ - public function has($key, $getExpr = false) - { - foreach ($this->options as $option) { - if (is_array($option)) { - if (! strcasecmp($key, $option['name'])) { - return $getExpr ? $option['expr'] : $option['value']; - } - } elseif (! strcasecmp($key, $option)) { - return true; - } - } - - return false; - } - - /** - * Removes the option from the array. - * - * @param string $key the key to be removed - * - * @return bool whether the key was found and deleted or not - */ - public function remove($key) - { - foreach ($this->options as $idx => $option) { - if (is_array($option)) { - if (! strcasecmp($key, $option['name'])) { - unset($this->options[$idx]); - - return true; - } - } elseif (! strcasecmp($key, $option)) { - unset($this->options[$idx]); - - return true; - } - } - - return false; - } - - /** - * Merges the specified options with these ones. Values with same ID will be - * replaced. - * - * @param array|OptionsArray $options the options to be merged - * - * @return void - */ - public function merge($options) - { - if (is_array($options)) { - $this->options = array_merge_recursive($this->options, $options); - } elseif ($options instanceof self) { - $this->options = array_merge_recursive($this->options, $options->options); - } - } - - /** - * Checks tf there are no options set. - * - * @return bool - */ - public function isEmpty() - { - return empty($this->options); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/OrderKeyword.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/OrderKeyword.php deleted file mode 100644 index c7eab49e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/OrderKeyword.php +++ /dev/null @@ -1,135 +0,0 @@ -expr = $expr; - $this->type = $type; - } - - /** - * @param Parser $parser the parser that serves as context - * @param TokensList $list the list of tokens that are being parsed - * @param array $options parameters for parsing - * - * @return OrderKeyword[] - */ - public static function parse(Parser $parser, TokensList $list, array $options = []) - { - $ret = []; - - $expr = new static(); - - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 --------------------[ expression ]-------------------> 1 - * - * 1 ------------------------[ , ]------------------------> 0 - * 1 -------------------[ ASC / DESC ]--------------------> 1 - * - * @var int - */ - $state = 0; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - continue; - } - - if ($state === 0) { - $expr->expr = Expression::parse($parser, $list); - $state = 1; - } elseif ($state === 1) { - if ( - ($token->type === Token::TYPE_KEYWORD) - && (($token->keyword === 'ASC') || ($token->keyword === 'DESC')) - ) { - $expr->type = $token->keyword; - } elseif (($token->type === Token::TYPE_OPERATOR) && ($token->value === ',')) { - if (! empty($expr->expr)) { - $ret[] = $expr; - } - - $expr = new static(); - $state = 0; - } else { - break; - } - } - } - - // Last iteration was not processed. - if (! empty($expr->expr)) { - $ret[] = $expr; - } - - --$list->idx; - - return $ret; - } - - /** - * @param OrderKeyword|OrderKeyword[] $component the component to be built - * @param array $options parameters for building - * - * @return string - */ - public static function build($component, array $options = []) - { - if (is_array($component)) { - return implode(', ', $component); - } - - return $component->expr . ' ' . $component->type; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/ParameterDefinition.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/ParameterDefinition.php deleted file mode 100644 index 11175b1d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/ParameterDefinition.php +++ /dev/null @@ -1,168 +0,0 @@ -name = $name; - $this->inOut = $inOut; - $this->type = $type; - } - - /** - * @param Parser $parser the parser that serves as context - * @param TokensList $list the list of tokens that are being parsed - * @param array $options parameters for parsing - * - * @return ParameterDefinition[] - */ - public static function parse(Parser $parser, TokensList $list, array $options = []) - { - $ret = []; - - $expr = new static(); - - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 -----------------------[ ( ]------------------------> 1 - * - * 1 ----------------[ IN / OUT / INOUT ]----------------> 1 - * 1 ----------------------[ name ]----------------------> 2 - * - * 2 -------------------[ data type ]--------------------> 3 - * - * 3 ------------------------[ , ]-----------------------> 1 - * 3 ------------------------[ ) ]-----------------------> (END) - * - * @var int - */ - $state = 0; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - continue; - } - - if ($state === 0) { - if (($token->type === Token::TYPE_OPERATOR) && ($token->value === '(')) { - $state = 1; - } - - continue; - } elseif ($state === 1) { - if (($token->value === 'IN') || ($token->value === 'OUT') || ($token->value === 'INOUT')) { - $expr->inOut = $token->value; - ++$list->idx; - } elseif ($token->value === ')') { - ++$list->idx; - break; - } else { - $expr->name = $token->value; - $state = 2; - } - } elseif ($state === 2) { - $expr->type = DataType::parse($parser, $list); - $state = 3; - } elseif ($state === 3) { - $ret[] = $expr; - $expr = new static(); - if ($token->value === ',') { - $state = 1; - } elseif ($token->value === ')') { - ++$list->idx; - break; - } - } - } - - // Last iteration was not saved. - if (isset($expr->name) && ($expr->name !== '')) { - $ret[] = $expr; - } - - --$list->idx; - - return $ret; - } - - /** - * @param ParameterDefinition[] $component the component to be built - * @param array $options parameters for building - * - * @return string - */ - public static function build($component, array $options = []) - { - if (is_array($component)) { - return '(' . implode(', ', $component) . ')'; - } - - $tmp = ''; - if (! empty($component->inOut)) { - $tmp .= $component->inOut . ' '; - } - - return trim( - $tmp . Context::escape($component->name) . ' ' . $component->type - ); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/PartitionDefinition.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/PartitionDefinition.php deleted file mode 100644 index d101e96f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/PartitionDefinition.php +++ /dev/null @@ -1,253 +0,0 @@ -> - * @psalm-var array [ - 1, - 'var', - ], - 'ENGINE' => [ - 1, - 'var', - ], - 'COMMENT' => [ - 2, - 'var', - ], - 'DATA DIRECTORY' => [ - 3, - 'var', - ], - 'INDEX DIRECTORY' => [ - 4, - 'var', - ], - 'MAX_ROWS' => [ - 5, - 'var', - ], - 'MIN_ROWS' => [ - 6, - 'var', - ], - 'TABLESPACE' => [ - 7, - 'var', - ], - 'NODEGROUP' => [ - 8, - 'var', - ], - ]; - - /** - * Whether this entry is a subpartition or a partition. - * - * @var bool - */ - public $isSubpartition; - - /** - * The name of this partition. - * - * @var string - */ - public $name; - - /** - * The type of this partition (what follows the `VALUES` keyword). - * - * @var string - */ - public $type; - - /** - * The expression used to defined this partition. - * - * @var Expression|string - */ - public $expr; - - /** - * The subpartitions of this partition. - * - * @var PartitionDefinition[] - */ - public $subpartitions; - - /** - * The options of this field. - * - * @var OptionsArray - */ - public $options; - - /** - * @param Parser $parser the parser that serves as context - * @param TokensList $list the list of tokens that are being parsed - * @param array $options parameters for parsing - * - * @return PartitionDefinition - */ - public static function parse(Parser $parser, TokensList $list, array $options = []) - { - $ret = new static(); - - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 -------------[ PARTITION | SUBPARTITION ]------------> 1 - * - * 1 -----------------------[ name ]----------------------> 2 - * - * 2 ----------------------[ VALUES ]---------------------> 3 - * - * 3 ---------------------[ LESS THAN ]-------------------> 4 - * 3 ------------------------[ IN ]-----------------------> 4 - * - * 4 -----------------------[ expr ]----------------------> 5 - * - * 5 ----------------------[ options ]--------------------> 6 - * - * 6 ------------------[ subpartitions ]------------------> (END) - * - * @var int - */ - $state = 0; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - continue; - } - - if ($state === 0) { - $ret->isSubpartition = ($token->type === Token::TYPE_KEYWORD) && ($token->keyword === 'SUBPARTITION'); - $state = 1; - } elseif ($state === 1) { - $ret->name = $token->value; - - // Looking ahead for a 'VALUES' keyword. - // Loop until the end of the partition name (delimited by a whitespace) - while ($nextToken = $list->tokens[++$list->idx]) { - if ($nextToken->type !== Token::TYPE_NONE) { - break; - } - - $ret->name .= $nextToken->value; - } - - $idx = $list->idx--; - // Get the first token after the white space. - $nextToken = $list->tokens[++$idx]; - - $state = ($nextToken->type === Token::TYPE_KEYWORD) - && ($nextToken->value === 'VALUES') - ? 2 : 5; - } elseif ($state === 2) { - $state = 3; - } elseif ($state === 3) { - $ret->type = $token->value; - $state = 4; - } elseif ($state === 4) { - if ($token->value === 'MAXVALUE') { - $ret->expr = $token->value; - } else { - $ret->expr = Expression::parse( - $parser, - $list, - [ - 'parenthesesDelimited' => true, - 'breakOnAlias' => true, - ] - ); - } - - $state = 5; - } elseif ($state === 5) { - $ret->options = OptionsArray::parse($parser, $list, static::$OPTIONS); - $state = 6; - } elseif ($state === 6) { - if (($token->type === Token::TYPE_OPERATOR) && ($token->value === '(')) { - $ret->subpartitions = ArrayObj::parse( - $parser, - $list, - ['type' => 'PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition'] - ); - ++$list->idx; - } - - break; - } - } - - --$list->idx; - - return $ret; - } - - /** - * @param PartitionDefinition|PartitionDefinition[] $component the component to be built - * @param array $options parameters for building - * - * @return string - */ - public static function build($component, array $options = []) - { - if (is_array($component)) { - return "(\n" . implode(",\n", $component) . "\n)"; - } - - if ($component->isSubpartition) { - return trim('SUBPARTITION ' . $component->name . ' ' . $component->options); - } - - $subpartitions = empty($component->subpartitions) ? '' : ' ' . self::build($component->subpartitions); - - return trim( - 'PARTITION ' . $component->name - . (empty($component->type) ? '' : ' VALUES ' . $component->type . ' ' . $component->expr . ' ') - . (! empty($component->options) && ! empty($component->type) ? '' : ' ') - . $component->options . $subpartitions - ); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/Reference.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/Reference.php deleted file mode 100644 index 15bdd0bf..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/Reference.php +++ /dev/null @@ -1,158 +0,0 @@ -> - * @psalm-var array [ - 1, - 'var', - ], - 'ON DELETE' => [ - 2, - 'var', - ], - 'ON UPDATE' => [ - 3, - 'var', - ], - ]; - - /** - * The referenced table. - * - * @var Expression - */ - public $table; - - /** - * The referenced columns. - * - * @var string[] - */ - public $columns; - - /** - * The options of the referencing. - * - * @var OptionsArray - */ - public $options; - - /** - * @param Expression $table the name of the table referenced - * @param string[] $columns the columns referenced - * @param OptionsArray $options the options - */ - public function __construct($table = null, array $columns = [], $options = null) - { - $this->table = $table; - $this->columns = $columns; - $this->options = $options; - } - - /** - * @param Parser $parser the parser that serves as context - * @param TokensList $list the list of tokens that are being parsed - * @param array $options parameters for parsing - * - * @return Reference - */ - public static function parse(Parser $parser, TokensList $list, array $options = []) - { - $ret = new static(); - - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 ----------------------[ table ]---------------------> 1 - * - * 1 ---------------------[ columns ]--------------------> 2 - * - * 2 ---------------------[ options ]--------------------> (END) - * - * @var int - */ - $state = 0; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - continue; - } - - if ($state === 0) { - $ret->table = Expression::parse( - $parser, - $list, - [ - 'parseField' => 'table', - 'breakOnAlias' => true, - ] - ); - $state = 1; - } elseif ($state === 1) { - $ret->columns = ArrayObj::parse($parser, $list)->values; - $state = 2; - } elseif ($state === 2) { - $ret->options = OptionsArray::parse($parser, $list, static::$REFERENCES_OPTIONS); - ++$list->idx; - break; - } - } - - --$list->idx; - - return $ret; - } - - /** - * @param Reference $component the component to be built - * @param array $options parameters for building - * - * @return string - */ - public static function build($component, array $options = []) - { - return trim( - $component->table - . ' (' . implode(', ', Context::escape($component->columns)) . ') ' - . $component->options - ); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/RenameOperation.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/RenameOperation.php deleted file mode 100644 index e8c0f8f0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/RenameOperation.php +++ /dev/null @@ -1,167 +0,0 @@ -old = $old; - $this->new = $new; - } - - /** - * @param Parser $parser the parser that serves as context - * @param TokensList $list the list of tokens that are being parsed - * @param array $options parameters for parsing - * - * @return RenameOperation[] - */ - public static function parse(Parser $parser, TokensList $list, array $options = []) - { - $ret = []; - - $expr = new static(); - - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 ---------------------[ old name ]--------------------> 1 - * - * 1 ------------------------[ TO ]-----------------------> 2 - * - * 2 ---------------------[ new name ]--------------------> 3 - * - * 3 ------------------------[ , ]------------------------> 0 - * 3 -----------------------[ else ]----------------------> (END) - * - * @var int - */ - $state = 0; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - continue; - } - - if ($state === 0) { - $expr->old = Expression::parse( - $parser, - $list, - [ - 'breakOnAlias' => true, - 'parseField' => 'table', - ] - ); - if (empty($expr->old)) { - $parser->error('The old name of the table was expected.', $token); - } - - $state = 1; - } elseif ($state === 1) { - if ($token->type !== Token::TYPE_KEYWORD || $token->keyword !== 'TO') { - $parser->error('Keyword "TO" was expected.', $token); - break; - } - - $state = 2; - } elseif ($state === 2) { - $expr->new = Expression::parse( - $parser, - $list, - [ - 'breakOnAlias' => true, - 'parseField' => 'table', - ] - ); - if (empty($expr->new)) { - $parser->error('The new name of the table was expected.', $token); - } - - $state = 3; - } elseif ($state === 3) { - if (($token->type !== Token::TYPE_OPERATOR) || ($token->value !== ',')) { - break; - } - - $ret[] = $expr; - $expr = new static(); - $state = 0; - } - } - - if ($state !== 3) { - $parser->error('A rename operation was expected.', $list->tokens[$list->idx - 1]); - } - - // Last iteration was not saved. - if (! empty($expr->old)) { - $ret[] = $expr; - } - - --$list->idx; - - return $ret; - } - - /** - * @param RenameOperation $component the component to be built - * @param array $options parameters for building - * - * @return string - */ - public static function build($component, array $options = []) - { - if (is_array($component)) { - return implode(', ', $component); - } - - return $component->old . ' TO ' . $component->new; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/SetOperation.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/SetOperation.php deleted file mode 100644 index 2faf0c61..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/SetOperation.php +++ /dev/null @@ -1,159 +0,0 @@ -column = $column; - $this->value = $value; - } - - /** - * @param Parser $parser the parser that serves as context - * @param TokensList $list the list of tokens that are being parsed - * @param array $options parameters for parsing - * - * @return SetOperation[] - */ - public static function parse(Parser $parser, TokensList $list, array $options = []) - { - $ret = []; - - $expr = new static(); - - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 ---------------------[ col_name ]--------------------> 0 - * 0 ---------------------[ = or := ]---------------------> 1 - * 1 -----------------------[ value ]---------------------> 1 - * 1 ------------------------[ , ]------------------------> 0 - * - * @var int - */ - $state = 0; - - /** - * Token when the parser has seen the latest comma - * - * @var Token - */ - $commaLastSeenAt = null; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - continue; - } - - // No keyword is expected. - if ( - ($token->type === Token::TYPE_KEYWORD) - && ($token->flags & Token::FLAG_KEYWORD_RESERVED) - && ($state === 0) - ) { - break; - } - - if ($state === 0) { - if (in_array($token->token, ['=', ':='], true)) { - $state = 1; - } elseif ($token->value !== ',') { - $expr->column .= $token->token; - } elseif ($token->value === ',') { - $commaLastSeenAt = $token; - } - } elseif ($state === 1) { - $tmp = Expression::parse( - $parser, - $list, - ['breakOnAlias' => true] - ); - if ($tmp === null) { - $parser->error('Missing expression.', $token); - break; - } - - $expr->column = trim($expr->column); - $expr->value = $tmp->expr; - $ret[] = $expr; - $expr = new static(); - $state = 0; - $commaLastSeenAt = null; - } - } - - --$list->idx; - - // We saw a comma, but didn't see a column-value pair after it - if ($commaLastSeenAt !== null) { - $parser->error('Unexpected token.', $commaLastSeenAt); - } - - return $ret; - } - - /** - * @param SetOperation|SetOperation[] $component the component to be built - * @param array $options parameters for building - * - * @return string - */ - public static function build($component, array $options = []) - { - if (is_array($component)) { - return implode(', ', $component); - } - - return $component->column . ' = ' . $component->value; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/UnionKeyword.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/UnionKeyword.php deleted file mode 100644 index 010cbeca..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/UnionKeyword.php +++ /dev/null @@ -1,33 +0,0 @@ - $component the component to be built - * @param array $options parameters for building - * - * @return string - */ - public static function build($component, array $options = []) - { - $tmp = []; - foreach ($component as $componentPart) { - $tmp[] = $componentPart[0] . ' ' . $componentPart[1]; - } - - return implode(' ', $tmp); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/WithKeyword.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/WithKeyword.php deleted file mode 100644 index 93bb4052..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Components/WithKeyword.php +++ /dev/null @@ -1,64 +0,0 @@ -name = $name; - } - - /** - * @param WithKeyword $component - * @param array $options - * - * @return string - */ - public static function build($component, array $options = []) - { - if (! $component instanceof WithKeyword) { - throw new RuntimeException('Can not build a component that is not a WithKeyword'); - } - - if (! isset($component->statement)) { - throw new RuntimeException('No statement inside WITH'); - } - - $str = $component->name; - - if ($component->columns) { - $str .= ArrayObj::build($component->columns); - } - - $str .= ' AS ('; - - foreach ($component->statement->statements as $statement) { - $str .= $statement->build(); - } - - $str .= ')'; - - return $str; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Context.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Context.php deleted file mode 100644 index 3a67e142..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Context.php +++ /dev/null @@ -1,862 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = []; - - /** - * List of operators and their flags. - * - * @var array - */ - public static $OPERATORS = [ - // Some operators (*, =) may have ambiguous flags, because they depend on - // the context they are being used in. - // For example: 1. SELECT * FROM table; # SQL specific (wildcard) - // SELECT 2 * 3; # arithmetic - // 2. SELECT * FROM table WHERE foo = 'bar'; - // SET @i = 0; - - // @see Token::FLAG_OPERATOR_ARITHMETIC - '%' => 1, - '*' => 1, - '+' => 1, - '-' => 1, - '/' => 1, - - // @see Token::FLAG_OPERATOR_LOGICAL - '!' => 2, - '!=' => 2, - '&&' => 2, - '<' => 2, - '<=' => 2, - '<=>' => 2, - '<>' => 2, - '=' => 2, - '>' => 2, - '>=' => 2, - '||' => 2, - - // @see Token::FLAG_OPERATOR_BITWISE - '&' => 4, - '<<' => 4, - '>>' => 4, - '^' => 4, - '|' => 4, - '~' => 4, - - // @see Token::FLAG_OPERATOR_ASSIGNMENT - ':=' => 8, - - // @see Token::FLAG_OPERATOR_SQL - '(' => 16, - ')' => 16, - '.' => 16, - ',' => 16, - ';' => 16, - ]; - - /** - * The mode of the MySQL server that will be used in lexing, parsing and building the statements. - * - * @internal use the {@see Context::getMode()} method instead. - * - * @link https://dev.mysql.com/doc/refman/en/sql-mode.html - * @link https://mariadb.com/kb/en/sql-mode/ - * - * @var int - */ - public static $MODE = self::SQL_MODE_NONE; - - public const SQL_MODE_NONE = 0; - - /** - * @link https://dev.mysql.com/doc/refman/en/sql-mode.html#sqlmode_allow_invalid_dates - * @link https://mariadb.com/kb/en/sql-mode/#allow_invalid_dates - */ - public const SQL_MODE_ALLOW_INVALID_DATES = 1; - - /** - * @link https://dev.mysql.com/doc/refman/en/sql-mode.html#sqlmode_ansi_quotes - * @link https://mariadb.com/kb/en/sql-mode/#ansi_quotes - */ - public const SQL_MODE_ANSI_QUOTES = 2; - - /** Compatibility mode for Microsoft's SQL server. This is the equivalent of {@see SQL_MODE_ANSI_QUOTES}. */ - public const SQL_MODE_COMPAT_MYSQL = 2; - - /** - * @link https://dev.mysql.com/doc/refman/en/sql-mode.html#sqlmode_error_for_division_by_zero - * @link https://mariadb.com/kb/en/sql-mode/#error_for_division_by_zero - */ - public const SQL_MODE_ERROR_FOR_DIVISION_BY_ZERO = 4; - - /** - * @link https://dev.mysql.com/doc/refman/en/sql-mode.html#sqlmode_high_not_precedence - * @link https://mariadb.com/kb/en/sql-mode/#high_not_precedence - */ - public const SQL_MODE_HIGH_NOT_PRECEDENCE = 8; - - /** - * @link https://dev.mysql.com/doc/refman/en/sql-mode.html#sqlmode_ignore_space - * @link https://mariadb.com/kb/en/sql-mode/#ignore_space - */ - public const SQL_MODE_IGNORE_SPACE = 16; - - /** - * @link https://dev.mysql.com/doc/refman/5.7/en/sql-mode.html#sqlmode_no_auto_create_user - * @link https://mariadb.com/kb/en/sql-mode/#no_auto_create_user - */ - public const SQL_MODE_NO_AUTO_CREATE_USER = 32; - - /** - * @link https://dev.mysql.com/doc/refman/en/sql-mode.html#sqlmode_no_auto_value_on_zero - * @link https://mariadb.com/kb/en/sql-mode/#no_auto_value_on_zero - */ - public const SQL_MODE_NO_AUTO_VALUE_ON_ZERO = 64; - - /** - * @link https://dev.mysql.com/doc/refman/en/sql-mode.html#sqlmode_no_backslash_escapes - * @link https://mariadb.com/kb/en/sql-mode/#no_backslash_escapes - */ - public const SQL_MODE_NO_BACKSLASH_ESCAPES = 128; - - /** - * @link https://dev.mysql.com/doc/refman/en/sql-mode.html#sqlmode_no_dir_in_create - * @link https://mariadb.com/kb/en/sql-mode/#no_dir_in_create - */ - public const SQL_MODE_NO_DIR_IN_CREATE = 256; - - /** - * @link https://dev.mysql.com/doc/refman/en/sql-mode.html#sqlmode_no_engine_substitution - * @link https://mariadb.com/kb/en/sql-mode/#no_engine_substitution - */ - public const SQL_MODE_NO_ENGINE_SUBSTITUTION = 512; - - /** - * @link https://dev.mysql.com/doc/refman/5.7/en/sql-mode.html#sqlmode_no_field_options - * @link https://mariadb.com/kb/en/sql-mode/#no_field_options - */ - public const SQL_MODE_NO_FIELD_OPTIONS = 1024; - - /** - * @link https://dev.mysql.com/doc/refman/5.7/en/sql-mode.html#sqlmode_no_key_options - * @link https://mariadb.com/kb/en/sql-mode/#no_key_options - */ - public const SQL_MODE_NO_KEY_OPTIONS = 2048; - - /** - * @link https://dev.mysql.com/doc/refman/5.7/en/sql-mode.html#sqlmode_no_table_options - * @link https://mariadb.com/kb/en/sql-mode/#no_table_options - */ - public const SQL_MODE_NO_TABLE_OPTIONS = 4096; - - /** - * @link https://dev.mysql.com/doc/refman/en/sql-mode.html#sqlmode_no_unsigned_subtraction - * @link https://mariadb.com/kb/en/sql-mode/#no_unsigned_subtraction - */ - public const SQL_MODE_NO_UNSIGNED_SUBTRACTION = 8192; - - /** - * @link https://dev.mysql.com/doc/refman/en/sql-mode.html#sqlmode_no_zero_date - * @link https://mariadb.com/kb/en/sql-mode/#no_zero_date - */ - public const SQL_MODE_NO_ZERO_DATE = 16384; - - /** - * @link https://dev.mysql.com/doc/refman/en/sql-mode.html#sqlmode_no_zero_in_date - * @link https://mariadb.com/kb/en/sql-mode/#no_zero_in_date - */ - public const SQL_MODE_NO_ZERO_IN_DATE = 32768; - - /** - * @link https://dev.mysql.com/doc/refman/en/sql-mode.html#sqlmode_only_full_group_by - * @link https://mariadb.com/kb/en/sql-mode/#only_full_group_by - */ - public const SQL_MODE_ONLY_FULL_GROUP_BY = 65536; - - /** - * @link https://dev.mysql.com/doc/refman/en/sql-mode.html#sqlmode_pipes_as_concat - * @link https://mariadb.com/kb/en/sql-mode/#pipes_as_concat - */ - public const SQL_MODE_PIPES_AS_CONCAT = 131072; - - /** - * @link https://dev.mysql.com/doc/refman/en/sql-mode.html#sqlmode_real_as_float - * @link https://mariadb.com/kb/en/sql-mode/#real_as_float - */ - public const SQL_MODE_REAL_AS_FLOAT = 262144; - - /** - * @link https://dev.mysql.com/doc/refman/en/sql-mode.html#sqlmode_strict_all_tables - * @link https://mariadb.com/kb/en/sql-mode/#strict_all_tables - */ - public const SQL_MODE_STRICT_ALL_TABLES = 524288; - - /** - * @link https://dev.mysql.com/doc/refman/en/sql-mode.html#sqlmode_strict_trans_tables - * @link https://mariadb.com/kb/en/sql-mode/#strict_trans_tables - */ - public const SQL_MODE_STRICT_TRANS_TABLES = 1048576; - - /** - * Custom mode. - * The table and column names and any other field that must be escaped will not be. - * Reserved keywords are being escaped regardless this mode is used or not. - */ - public const SQL_MODE_NO_ENCLOSING_QUOTES = 1073741824; - - /** - * Equivalent to {@see SQL_MODE_REAL_AS_FLOAT}, {@see SQL_MODE_PIPES_AS_CONCAT}, {@see SQL_MODE_ANSI_QUOTES}, - * {@see SQL_MODE_IGNORE_SPACE}. - * - * @link https://dev.mysql.com/doc/refman/5.7/en/sql-mode.html#sqlmode_ansi - * @link https://mariadb.com/kb/en/sql-mode/#ansi - */ - public const SQL_MODE_ANSI = 393234; - - /** - * Equivalent to {@see SQL_MODE_PIPES_AS_CONCAT}, {@see SQL_MODE_ANSI_QUOTES}, {@see SQL_MODE_IGNORE_SPACE}, - * {@see SQL_MODE_NO_KEY_OPTIONS}, {@see SQL_MODE_NO_TABLE_OPTIONS}, {@see SQL_MODE_NO_FIELD_OPTIONS}. - * - * @link https://dev.mysql.com/doc/refman/5.7/en/sql-mode.html#sqlmode_db2 - * @link https://mariadb.com/kb/en/sql-mode/#db2 - */ - public const SQL_MODE_DB2 = 138258; - - /** - * Equivalent to {@see SQL_MODE_PIPES_AS_CONCAT}, {@see SQL_MODE_ANSI_QUOTES}, {@see SQL_MODE_IGNORE_SPACE}, - * {@see SQL_MODE_NO_KEY_OPTIONS}, {@see SQL_MODE_NO_TABLE_OPTIONS}, {@see SQL_MODE_NO_FIELD_OPTIONS}, - * {@see SQL_MODE_NO_AUTO_CREATE_USER}. - * - * @link https://dev.mysql.com/doc/refman/5.7/en/sql-mode.html#sqlmode_maxdb - * @link https://mariadb.com/kb/en/sql-mode/#maxdb - */ - public const SQL_MODE_MAXDB = 138290; - - /** - * Equivalent to {@see SQL_MODE_PIPES_AS_CONCAT}, {@see SQL_MODE_ANSI_QUOTES}, {@see SQL_MODE_IGNORE_SPACE}, - * {@see SQL_MODE_NO_KEY_OPTIONS}, {@see SQL_MODE_NO_TABLE_OPTIONS}, {@see SQL_MODE_NO_FIELD_OPTIONS}. - * - * @link https://dev.mysql.com/doc/refman/5.7/en/sql-mode.html#sqlmode_mssql - * @link https://mariadb.com/kb/en/sql-mode/#mssql - */ - public const SQL_MODE_MSSQL = 138258; - - /** - * Equivalent to {@see SQL_MODE_PIPES_AS_CONCAT}, {@see SQL_MODE_ANSI_QUOTES}, {@see SQL_MODE_IGNORE_SPACE}, - * {@see SQL_MODE_NO_KEY_OPTIONS}, {@see SQL_MODE_NO_TABLE_OPTIONS}, {@see SQL_MODE_NO_FIELD_OPTIONS}, - * {@see SQL_MODE_NO_AUTO_CREATE_USER}. - * - * @link https://dev.mysql.com/doc/refman/5.7/en/sql-mode.html#sqlmode_oracle - * @link https://mariadb.com/kb/en/sql-mode/#oracle - */ - public const SQL_MODE_ORACLE = 138290; - - /** - * Equivalent to {@see SQL_MODE_PIPES_AS_CONCAT}, {@see SQL_MODE_ANSI_QUOTES}, {@see SQL_MODE_IGNORE_SPACE}, - * {@see SQL_MODE_NO_KEY_OPTIONS}, {@see SQL_MODE_NO_TABLE_OPTIONS}, {@see SQL_MODE_NO_FIELD_OPTIONS}. - * - * @link https://dev.mysql.com/doc/refman/5.7/en/sql-mode.html#sqlmode_postgresql - * @link https://mariadb.com/kb/en/sql-mode/#postgresql - */ - public const SQL_MODE_POSTGRESQL = 138258; - - /** - * Equivalent to {@see SQL_MODE_STRICT_TRANS_TABLES}, {@see SQL_MODE_STRICT_ALL_TABLES}, - * {@see SQL_MODE_NO_ZERO_IN_DATE}, {@see SQL_MODE_NO_ZERO_DATE}, {@see SQL_MODE_ERROR_FOR_DIVISION_BY_ZERO}, - * {@see SQL_MODE_NO_AUTO_CREATE_USER}. - * - * @link https://dev.mysql.com/doc/refman/en/sql-mode.html#sqlmode_traditional - * @link https://mariadb.com/kb/en/sql-mode/#traditional - */ - public const SQL_MODE_TRADITIONAL = 1622052; - - // ------------------------------------------------------------------------- - // Keyword. - - /** - * Checks if the given string is a keyword. - * - * @param string $str string to be checked - * @param bool $isReserved checks if the keyword is reserved - * - * @return int|null - */ - public static function isKeyword($str, $isReserved = false) - { - $str = strtoupper($str); - - if (isset(static::$KEYWORDS[$str])) { - if ($isReserved && ! (static::$KEYWORDS[$str] & Token::FLAG_KEYWORD_RESERVED)) { - return null; - } - - return static::$KEYWORDS[$str]; - } - - return null; - } - - // ------------------------------------------------------------------------- - // Operator. - - /** - * Checks if the given string is an operator. - * - * @param string $str string to be checked - * - * @return int|null the appropriate flag for the operator - */ - public static function isOperator($str) - { - if (! isset(static::$OPERATORS[$str])) { - return null; - } - - return static::$OPERATORS[$str]; - } - - // ------------------------------------------------------------------------- - // Whitespace. - - /** - * Checks if the given character is a whitespace. - * - * @param string $str string to be checked - * - * @return bool - */ - public static function isWhitespace($str) - { - return ($str === ' ') || ($str === "\r") || ($str === "\n") || ($str === "\t"); - } - - // ------------------------------------------------------------------------- - // Comment. - - /** - * Checks if the given string is the beginning of a whitespace. - * - * @param string $str string to be checked - * @param mixed $end - * - * @return int|null the appropriate flag for the comment type - */ - public static function isComment($str, $end = false) - { - $len = strlen($str); - if ($len === 0) { - return null; - } - - // If comment is Bash style (#): - if ($str[0] === '#') { - return Token::FLAG_COMMENT_BASH; - } - - // If comment is opening C style (/*), warning, it could be a MySQL command (/*!) - if (($len > 1) && ($str[0] === '/') && ($str[1] === '*')) { - return ($len > 2) && ($str[2] === '!') ? - Token::FLAG_COMMENT_MYSQL_CMD : Token::FLAG_COMMENT_C; - } - - // If comment is closing C style (*/), warning, it could conflicts with wildcard and a real opening C style. - // It would looks like the following valid SQL statement: "SELECT */* comment */ FROM...". - if (($len > 1) && ($str[0] === '*') && ($str[1] === '/')) { - return Token::FLAG_COMMENT_C; - } - - // If comment is SQL style (--\s?): - if (($len > 2) && ($str[0] === '-') && ($str[1] === '-') && static::isWhitespace($str[2])) { - return Token::FLAG_COMMENT_SQL; - } - - if (($len === 2) && $end && ($str[0] === '-') && ($str[1] === '-')) { - return Token::FLAG_COMMENT_SQL; - } - - return null; - } - - // ------------------------------------------------------------------------- - // Bool. - - /** - * Checks if the given string is a boolean value. - * This actually check only for `TRUE` and `FALSE` because `1` or `0` are - * actually numbers and are parsed by specific methods. - * - * @param string $str string to be checked - * - * @return bool - */ - public static function isBool($str) - { - $str = strtoupper($str); - - return ($str === 'TRUE') || ($str === 'FALSE'); - } - - // ------------------------------------------------------------------------- - // Number. - - /** - * Checks if the given character can be a part of a number. - * - * @param string $str string to be checked - * - * @return bool - */ - public static function isNumber($str) - { - return ($str >= '0') && ($str <= '9') || ($str === '.') - || ($str === '-') || ($str === '+') || ($str === 'e') || ($str === 'E'); - } - - // ------------------------------------------------------------------------- - // Symbol. - - /** - * Checks if the given character is the beginning of a symbol. A symbol - * can be either a variable or a field name. - * - * @param string $str string to be checked - * - * @return int|null the appropriate flag for the symbol type - */ - public static function isSymbol($str) - { - if (strlen($str) === 0) { - return null; - } - - if ($str[0] === '@') { - return Token::FLAG_SYMBOL_VARIABLE; - } - - if ($str[0] === '`') { - return Token::FLAG_SYMBOL_BACKTICK; - } - - if ($str[0] === ':' || $str[0] === '?') { - return Token::FLAG_SYMBOL_PARAMETER; - } - - return null; - } - - // ------------------------------------------------------------------------- - // String. - - /** - * Checks if the given character is the beginning of a string. - * - * @param string $str string to be checked - * - * @return int|null the appropriate flag for the string type - */ - public static function isString($str) - { - if (strlen($str) === 0) { - return null; - } - - if ($str[0] === '\'') { - return Token::FLAG_STRING_SINGLE_QUOTES; - } - - if ($str[0] === '"') { - return Token::FLAG_STRING_DOUBLE_QUOTES; - } - - return null; - } - - // ------------------------------------------------------------------------- - // Delimiter. - - /** - * Checks if the given character can be a separator for two lexeme. - * - * @param string $str string to be checked - * - * @return bool - */ - public static function isSeparator($str) - { - // NOTES: Only non alphanumeric ASCII characters may be separators. - // `~` is the last printable ASCII character. - return ($str <= '~') - && ($str !== '_') - && ($str !== '$') - && (($str < '0') || ($str > '9')) - && (($str < 'a') || ($str > 'z')) - && (($str < 'A') || ($str > 'Z')); - } - - /** - * Loads the specified context. - * - * Contexts may be used by accessing the context directly. - * - * @param string $context name of the context or full class name that defines the context - * - * @return void - * - * @throws LoaderException if the specified context doesn't exist. - */ - public static function load($context = '') - { - if (empty($context)) { - $context = self::$defaultContext; - } - - if ($context[0] !== '\\') { - // Could be the fully qualified class name was given, like `ContextDBMS::class`. - if (class_exists('\\' . $context)) { - $context = '\\' . $context; - } else { - // Short context name (must be formatted into class name). - $context = self::$contextPrefix . $context; - } - } - - if (! class_exists($context)) { - throw @new LoaderException('Specified context ("' . $context . '") does not exist.', $context); - } - - self::$loadedContext = $context; - self::$KEYWORDS = $context::$KEYWORDS; - } - - /** - * Loads the context with the closest version to the one specified. - * - * The closest context is found by replacing last digits with zero until one - * is loaded successfully. - * - * @see Context::load() - * - * @param string $context name of the context or full class name that - * defines the context - * - * @return string|null The loaded context. `null` if no context was loaded. - */ - public static function loadClosest($context = '') - { - $length = strlen($context); - for ($i = $length; $i > 0;) { - try { - /* Trying to load the new context */ - static::load($context); - - return $context; - } catch (LoaderException $e) { - /* Replace last two non zero digits by zeroes */ - do { - $i -= 2; - $part = substr($context, $i, 2); - /* No more numeric parts to strip */ - if (! is_numeric($part)) { - break 2; - } - } while (intval($part) === 0 && $i > 0); - - $context = substr($context, 0, $i) . '00' . substr($context, $i + 2); - } - } - - /* Fallback to loading at least matching engine */ - if (str_starts_with($context, 'MariaDb')) { - return static::loadClosest('MariaDb100300'); - } - - if (str_starts_with($context, 'MySql')) { - return static::loadClosest('MySql50700'); - } - - return null; - } - - /** - * Gets the SQL mode. - */ - public static function getMode(): int - { - return static::$MODE; - } - - /** - * Sets the SQL mode. - * - * @param int|string $mode - * - * @return void - */ - public static function setMode($mode = self::SQL_MODE_NONE) - { - if (is_int($mode)) { - static::$MODE = $mode; - - return; - } - - static::$MODE = self::SQL_MODE_NONE; - if ($mode === '') { - return; - } - - $modes = explode(',', $mode); - foreach ($modes as $sqlMode) { - static::$MODE |= self::getModeFromString($sqlMode); - } - } - - /** - * @psalm-suppress MixedReturnStatement, MixedInferredReturnType Is caused by the LSB of the constants - */ - private static function getModeFromString(string $mode): int - { - // phpcs:disable SlevomatCodingStandard.Classes.DisallowLateStaticBindingForConstants.DisallowedLateStaticBindingForConstant - switch ($mode) { - case 'ALLOW_INVALID_DATES': - return static::SQL_MODE_ALLOW_INVALID_DATES; - - case 'ANSI_QUOTES': - return static::SQL_MODE_ANSI_QUOTES; - - case 'COMPAT_MYSQL': - return static::SQL_MODE_COMPAT_MYSQL; - - case 'ERROR_FOR_DIVISION_BY_ZERO': - return static::SQL_MODE_ERROR_FOR_DIVISION_BY_ZERO; - - case 'HIGH_NOT_PRECEDENCE': - return static::SQL_MODE_HIGH_NOT_PRECEDENCE; - - case 'IGNORE_SPACE': - return static::SQL_MODE_IGNORE_SPACE; - - case 'NO_AUTO_CREATE_USER': - return static::SQL_MODE_NO_AUTO_CREATE_USER; - - case 'NO_AUTO_VALUE_ON_ZERO': - return static::SQL_MODE_NO_AUTO_VALUE_ON_ZERO; - - case 'NO_BACKSLASH_ESCAPES': - return static::SQL_MODE_NO_BACKSLASH_ESCAPES; - - case 'NO_DIR_IN_CREATE': - return static::SQL_MODE_NO_DIR_IN_CREATE; - - case 'NO_ENGINE_SUBSTITUTION': - return static::SQL_MODE_NO_ENGINE_SUBSTITUTION; - - case 'NO_FIELD_OPTIONS': - return static::SQL_MODE_NO_FIELD_OPTIONS; - - case 'NO_KEY_OPTIONS': - return static::SQL_MODE_NO_KEY_OPTIONS; - - case 'NO_TABLE_OPTIONS': - return static::SQL_MODE_NO_TABLE_OPTIONS; - - case 'NO_UNSIGNED_SUBTRACTION': - return static::SQL_MODE_NO_UNSIGNED_SUBTRACTION; - - case 'NO_ZERO_DATE': - return static::SQL_MODE_NO_ZERO_DATE; - - case 'NO_ZERO_IN_DATE': - return static::SQL_MODE_NO_ZERO_IN_DATE; - - case 'ONLY_FULL_GROUP_BY': - return static::SQL_MODE_ONLY_FULL_GROUP_BY; - - case 'PIPES_AS_CONCAT': - return static::SQL_MODE_PIPES_AS_CONCAT; - - case 'REAL_AS_FLOAT': - return static::SQL_MODE_REAL_AS_FLOAT; - - case 'STRICT_ALL_TABLES': - return static::SQL_MODE_STRICT_ALL_TABLES; - - case 'STRICT_TRANS_TABLES': - return static::SQL_MODE_STRICT_TRANS_TABLES; - - case 'NO_ENCLOSING_QUOTES': - return static::SQL_MODE_NO_ENCLOSING_QUOTES; - - case 'ANSI': - return static::SQL_MODE_ANSI; - - case 'DB2': - return static::SQL_MODE_DB2; - - case 'MAXDB': - return static::SQL_MODE_MAXDB; - - case 'MSSQL': - return static::SQL_MODE_MSSQL; - - case 'ORACLE': - return static::SQL_MODE_ORACLE; - - case 'POSTGRESQL': - return static::SQL_MODE_POSTGRESQL; - - case 'TRADITIONAL': - return static::SQL_MODE_TRADITIONAL; - - default: - return self::SQL_MODE_NONE; - } - // phpcs:enable - } - - /** - * Escapes the symbol by adding surrounding backticks. - * - * @param string[]|string $str the string to be escaped - * @param string $quote quote to be used when escaping - * - * @return string|string[] - */ - public static function escape($str, $quote = '`') - { - if (is_array($str)) { - foreach ($str as $key => $value) { - $str[$key] = static::escape($value); - } - - return $str; - } - - if ((static::$MODE & self::SQL_MODE_NO_ENCLOSING_QUOTES) && (! static::isKeyword($str, true))) { - return $str; - } - - if (static::$MODE & self::SQL_MODE_ANSI_QUOTES) { - $quote = '"'; - } - - return $quote . str_replace($quote, $quote . $quote, $str) . $quote; - } - - /** - * Returns char used to quote identifiers based on currently set SQL Mode (ie. standard or ANSI_QUOTES) - * - * @return string either " (double quote, ansi_quotes mode) or ` (backtick, standard mode) - */ - public static function getIdentifierQuote() - { - return self::hasMode(self::SQL_MODE_ANSI_QUOTES) ? '"' : '`'; - } - - /** - * Function verifies that given SQL Mode constant is currently set - * - * @param int $flag for example {@see Context::SQL_MODE_ANSI_QUOTES} - * - * @return bool false on empty param, true/false on given constant/int value - */ - public static function hasMode($flag = null) - { - if (empty($flag)) { - return false; - } - - return (self::$MODE & $flag) === $flag; - } -} - -// Initializing the default context. -Context::load(); diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100000.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100000.php deleted file mode 100644 index 8401038b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100000.php +++ /dev/null @@ -1,1014 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTHORS' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CONTRIBUTORS' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FRAC_SECOND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INNOBASE' => Token::FLAG_KEYWORD, - 'INNODB' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'OFFSET' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONE_SHOT' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROWS' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_FRAC_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALUE' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'VIRTUAL' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER_STRATEGY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISVALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SIMPLIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_VALIDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100100.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100100.php deleted file mode 100644 index d76b86c9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100100.php +++ /dev/null @@ -1,1114 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_DELAY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'OFFSET' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROWS' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VALUE' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GTID_SUBSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GTID_SUBTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_STORAGE_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_STORAGE_SIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVEREDBY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER_STRATEGY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISVALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LATFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LONGFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SIMPLIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_VALIDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALIDATE_PASSWORD_STRENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WAIT_FOR_EXECUTED_GTID_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100200.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100200.php deleted file mode 100644 index 7a7b3796..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100200.php +++ /dev/null @@ -1,1094 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_DELAY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'OFFSET' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VALUE' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WAIT_FOR_EXECUTED_GTID_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100300.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100300.php deleted file mode 100644 index 7fcbcbe3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100300.php +++ /dev/null @@ -1,1133 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVISIBLE' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_DELAY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'OFFSET' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SEQUENCE' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_STORAGE_SIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100400.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100400.php deleted file mode 100644 index e215f9c2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100400.php +++ /dev/null @@ -1,1172 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVISIBLE' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_DELAY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'OFFSET' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PASSWORD' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SEQUENCE' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOURCE_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_COLLECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_FRECHETDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_HAUSDORFFDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEINTERPOLATEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEINTERPOLATEPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTATDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100500.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100500.php deleted file mode 100644 index 3c471f49..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100500.php +++ /dev/null @@ -1,1176 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVISIBLE' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_DELAY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'OFFSET' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PASSWORD' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SEQUENCE' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD, - 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD, - 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOURCE_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_COLLECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_FRECHETDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_HAUSDORFFDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEINTERPOLATEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEINTERPOLATEPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTATDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100600.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100600.php deleted file mode 100644 index d1525200..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100600.php +++ /dev/null @@ -1,1178 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVISIBLE' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_DELAY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PASSWORD' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SEQUENCE' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD, - 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD, - 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADD_MONTHS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOURCE_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_COLLECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEINTERPOLATEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEINTERPOLATEPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTATDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYS_GUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100700.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100700.php deleted file mode 100644 index 2b2840b4..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100700.php +++ /dev/null @@ -1,1182 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVISIBLE' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_DELAY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PASSWORD' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SEQUENCE' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD, - 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD, - 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADD_MONTHS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_NORMALIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NATURAL_SORT_KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SFORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOURCE_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_COLLECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEINTERPOLATEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEINTERPOLATEPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTATDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYS_GUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100800.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100800.php deleted file mode 100644 index 538a9a85..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100800.php +++ /dev/null @@ -1,1183 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVISIBLE' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_DELAY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PASSWORD' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SEQUENCE' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD, - 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD, - 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADD_MONTHS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32C' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_NORMALIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NATURAL_SORT_KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SFORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOURCE_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_COLLECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEINTERPOLATEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEINTERPOLATEPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTATDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYS_GUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100900.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100900.php deleted file mode 100644 index 3b72fc34..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb100900.php +++ /dev/null @@ -1,1180 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVISIBLE' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_DELAY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PASSWORD' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SEQUENCE' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD, - 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD, - 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADD_MONTHS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32C' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_NORMALIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NATURAL_SORT_KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SFORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOURCE_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYS_GUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb101000.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb101000.php deleted file mode 100644 index f600d24d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb101000.php +++ /dev/null @@ -1,1181 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVISIBLE' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_DELAY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PASSWORD' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SEQUENCE' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD, - 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD, - 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADD_MONTHS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32C' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_NORMALIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NATURAL_SORT_KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SFORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOURCE_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYS_GUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb101100.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb101100.php deleted file mode 100644 index 35f43fa8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb101100.php +++ /dev/null @@ -1,1181 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVISIBLE' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_DELAY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PASSWORD' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SEQUENCE' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD, - 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD, - 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADD_MONTHS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32C' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_NORMALIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NATURAL_SORT_KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SFORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TRANSFORM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYS_GUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb110000.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb110000.php deleted file mode 100644 index 7d937bed..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb110000.php +++ /dev/null @@ -1,1182 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVISIBLE' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_DELAY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PASSWORD' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SEQUENCE' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD, - 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD, - 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADD_MONTHS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32C' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT_PICO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_NORMALIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NATURAL_SORT_KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SFORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TRANSFORM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYS_GUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb110100.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb110100.php deleted file mode 100644 index a3971d01..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb110100.php +++ /dev/null @@ -1,1183 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVISIBLE' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_DELAY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PASSWORD' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SEQUENCE' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD, - 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD, - 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADD_MONTHS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32C' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT_PICO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_NORMALIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SCHEMA_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NATURAL_SORT_KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SFORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TRANSFORM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYS_GUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb110200.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb110200.php deleted file mode 100644 index de24e201..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb110200.php +++ /dev/null @@ -1,1186 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVISIBLE' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_DELAY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PASSWORD' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SEQUENCE' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD, - 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD, - 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADD_MONTHS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32C' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT_PICO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_NORMALIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT_FILTER_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT_TO_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SCHEMA_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NATURAL_SORT_KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SFORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TRANSFORM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYS_GUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb110300.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb110300.php deleted file mode 100644 index 2597c5ea..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb110300.php +++ /dev/null @@ -1,1187 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVISIBLE' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_DELAY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PASSWORD' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SEQUENCE' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD, - 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD, - 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADD_MONTHS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32C' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT_PICO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_NORMALIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT_FILTER_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT_TO_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SCHEMA_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'KDF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NATURAL_SORT_KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SFORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TRANSFORM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYS_GUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb110400.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb110400.php deleted file mode 100644 index 2580ff9d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb110400.php +++ /dev/null @@ -1,1187 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVISIBLE' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_DELAY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PASSWORD' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SEQUENCE' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD, - 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD, - 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADD_MONTHS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32C' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT_PICO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_NORMALIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT_FILTER_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT_TO_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SCHEMA_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'KDF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NATURAL_SORT_KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SFORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TRANSFORM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYS_GUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb110500.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb110500.php deleted file mode 100644 index 26e74198..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb110500.php +++ /dev/null @@ -1,1096 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVISIBLE' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_DELAY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SEQUENCE' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VALUE' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ANY_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GTID_SUBSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GTID_SUBTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_STORAGE_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_STORAGE_SIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVEREDBY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER_STRATEGY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISVALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LATFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LONGFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SIMPLIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_VALIDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALIDATE_PASSWORD_STRENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WAIT_FOR_EXECUTED_GTID_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb110600.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb110600.php deleted file mode 100644 index 979bfb2a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb110600.php +++ /dev/null @@ -1,1096 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVISIBLE' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_DELAY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SEQUENCE' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VALUE' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ANY_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GTID_SUBSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GTID_SUBTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_STORAGE_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_STORAGE_SIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVEREDBY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER_STRATEGY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISVALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LATFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LONGFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SIMPLIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_VALIDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALIDATE_PASSWORD_STRENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WAIT_FOR_EXECUTED_GTID_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb110700.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb110700.php deleted file mode 100644 index 647d533e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMariaDb110700.php +++ /dev/null @@ -1,1103 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVISIBLE' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_DELAY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SEQUENCE' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VALUE' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ANY_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GTID_SUBSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GTID_SUBTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_STORAGE_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_STORAGE_SIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVEREDBY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER_STRATEGY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_COLLECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISVALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LATFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LONGFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SIMPLIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_VALIDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUIDV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUIDV7' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALIDATE_PASSWORD_STRENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VEC_DISTANCE_COSINE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VEC_DISTANCE_EUCLIDEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VEC_FROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VEC_TOTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WAIT_FOR_EXECUTED_GTID_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql50000.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql50000.php deleted file mode 100644 index 78c8ad92..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql50000.php +++ /dev/null @@ -1,826 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BDB' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BERKELEYDB' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FRAC_SECOND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INNOBASE' => Token::FLAG_KEYWORD, - 'INNODB' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'OFFSET' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONE_SHOT' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'RAID0' => Token::FLAG_KEYWORD, - 'RAID_CHUNKS' => Token::FLAG_KEYWORD, - 'RAID_CHUNKSIZE' => Token::FLAG_KEYWORD, - 'RAID_TYPE' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROWS' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_FRAC_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'STRIPED' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALUE' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'VIRTUAL' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SONAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql50100.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql50100.php deleted file mode 100644 index 7f0609e9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql50100.php +++ /dev/null @@ -1,904 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTHORS' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BDB' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BERKELEYDB' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CONTRIBUTORS' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FRAC_SECOND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GOTO' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INNOBASE' => Token::FLAG_KEYWORD, - 'INNODB' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LABEL' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAXVALUE' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'OFFSET' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONE_SHOT' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PAGE_CHECKSUM' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITION' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'RAID0' => Token::FLAG_KEYWORD, - 'RAID_CHUNKS' => Token::FLAG_KEYWORD, - 'RAID_CHUNKSIZE' => Token::FLAG_KEYWORD, - 'RAID_TYPE' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANISE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROWS' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEDULER' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_FRAC_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'STRIPED' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRANSACTIONAL' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALUE' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'VIRTUAL' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH PARSER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql50500.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql50500.php deleted file mode 100644 index c17f9c9c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql50500.php +++ /dev/null @@ -1,915 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTHORS' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CONTRIBUTORS' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FRAC_SECOND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INNOBASE' => Token::FLAG_KEYWORD, - 'INNODB' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'OFFSET' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONE_SHOT' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITION' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROWS' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_FRAC_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALUE' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'VIRTUAL' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH PARSER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql50600.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql50600.php deleted file mode 100644 index 3710cb96..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql50600.php +++ /dev/null @@ -1,1013 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTHORS' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CONTRIBUTORS' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_DELAY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'OFFSET' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONE_SHOT' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROWS' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALUE' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'VIRTUAL' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH PARSER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GTID_SUBSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GTID_SUBTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQL_THREAD_WAIT_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALIDATE_PASSWORD_STRENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WAIT_FOR_EXECUTED_GTID_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql50700.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql50700.php deleted file mode 100644 index 31ed4940..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql50700.php +++ /dev/null @@ -1,1097 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_DELAY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'OFFSET' => Token::FLAG_KEYWORD, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROWS' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VALUE' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH PARSER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ANY_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GTID_SUBSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GTID_SUBTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_STORAGE_SIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVEREDBY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER_STRATEGY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISVALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LATFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LONGFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SIMPLIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_VALIDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALIDATE_PASSWORD_STRENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WAIT_FOR_EXECUTED_GTID_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql80000.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql80000.php deleted file mode 100644 index 424e15a2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql80000.php +++ /dev/null @@ -1,1119 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTAINS' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVISIBLE' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_DELAY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'OFFSET' => Token::FLAG_KEYWORD, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PASSWORD' => Token::FLAG_KEYWORD, - 'PERSIST' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PERSIST_ONLY' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROWS' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VALUE' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH PARSER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ANY_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASYNCHRONOUS_CONNECTION_FAILOVER_ADD_MANAGED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASYNCHRONOUS_CONNECTION_FAILOVER_ADD_SOURCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASYNCHRONOUS_CONNECTION_FAILOVER_DELETE_MANAGED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASYNCHRONOUS_CONNECTION_FAILOVER_DELETE_SOURCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASYNCHRONOUS_CONNECTION_FAILOVER_RESET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN_TO_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT_PICO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUPING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_DISABLE_MEMBER_ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_ENABLE_MEMBER_ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_GET_COMMUNICATION_PROTOCOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_GET_WRITE_CONCURRENCY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_RESET_MEMBER_ACTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_SET_AS_PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_SET_COMMUNICATION_PROTOCOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_SET_WRITE_CONCURRENCY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_SWITCH_TO_MULTI_PRIMARY_MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_SWITCH_TO_SINGLE_PRIMARY_MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GTID_SUBSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GTID_SUBTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SCHEMA_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SCHEMA_VALIDATION_REPORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_STORAGE_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_STORAGE_SIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVEREDBY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PS_CURRENT_THREAD_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PS_THREAD_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOURCE_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER_STRATEGY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_COLLECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_FRECHETDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_HAUSDORFFDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISVALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LATFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LATITUDE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEINTERPOLATEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEINTERPOLATEPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LONGFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LONGITUDE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTATDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SIMPLIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TRANSFORM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_VALIDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_TO_BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALIDATE_PASSWORD_STRENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WAIT_FOR_EXECUTED_GTID_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MEMBER OF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql80100.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql80100.php deleted file mode 100644 index 91cb1ef8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql80100.php +++ /dev/null @@ -1,1109 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTAINS' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVISIBLE' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_DELAY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'OFFSET' => Token::FLAG_KEYWORD, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PASSWORD' => Token::FLAG_KEYWORD, - 'PERSIST' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PERSIST_ONLY' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROWS' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VALUE' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH PARSER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ANY_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASYNCHRONOUS_CONNECTION_FAILOVER_ADD_MANAGED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASYNCHRONOUS_CONNECTION_FAILOVER_ADD_SOURCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASYNCHRONOUS_CONNECTION_FAILOVER_DELETE_MANAGED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASYNCHRONOUS_CONNECTION_FAILOVER_DELETE_SOURCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASYNCHRONOUS_CONNECTION_FAILOVER_RESET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN_TO_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT_PICO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUPING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_DISABLE_MEMBER_ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_ENABLE_MEMBER_ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_GET_COMMUNICATION_PROTOCOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_GET_WRITE_CONCURRENCY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_RESET_MEMBER_ACTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_SET_AS_PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_SET_COMMUNICATION_PROTOCOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_SET_WRITE_CONCURRENCY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_SWITCH_TO_MULTI_PRIMARY_MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_SWITCH_TO_SINGLE_PRIMARY_MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SCHEMA_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SCHEMA_VALIDATION_REPORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_STORAGE_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_STORAGE_SIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVEREDBY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PS_CURRENT_THREAD_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PS_THREAD_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOURCE_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER_STRATEGY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_COLLECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_FRECHETDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_HAUSDORFFDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISVALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LATFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LATITUDE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEINTERPOLATEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEINTERPOLATEPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LONGFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LONGITUDE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTATDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SIMPLIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TRANSFORM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_VALIDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_TO_BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALIDATE_PASSWORD_STRENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WAIT_FOR_EXECUTED_GTID_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MEMBER OF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql80200.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql80200.php deleted file mode 100644 index 84e9d82c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql80200.php +++ /dev/null @@ -1,1108 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTAINS' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVISIBLE' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_DELAY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'OFFSET' => Token::FLAG_KEYWORD, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PASSWORD' => Token::FLAG_KEYWORD, - 'PERSIST' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PERSIST_ONLY' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROWS' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VALUE' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH PARSER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ANY_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASYNCHRONOUS_CONNECTION_FAILOVER_ADD_MANAGED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASYNCHRONOUS_CONNECTION_FAILOVER_ADD_SOURCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASYNCHRONOUS_CONNECTION_FAILOVER_DELETE_MANAGED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASYNCHRONOUS_CONNECTION_FAILOVER_DELETE_SOURCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASYNCHRONOUS_CONNECTION_FAILOVER_RESET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN_TO_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT_PICO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUPING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_DISABLE_MEMBER_ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_ENABLE_MEMBER_ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_GET_COMMUNICATION_PROTOCOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_GET_WRITE_CONCURRENCY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_RESET_MEMBER_ACTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_SET_AS_PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_SET_COMMUNICATION_PROTOCOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_SET_WRITE_CONCURRENCY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_SWITCH_TO_MULTI_PRIMARY_MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_SWITCH_TO_SINGLE_PRIMARY_MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SCHEMA_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SCHEMA_VALIDATION_REPORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_STORAGE_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_STORAGE_SIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVEREDBY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PS_CURRENT_THREAD_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PS_THREAD_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOURCE_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER_STRATEGY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_COLLECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_FRECHETDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_HAUSDORFFDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISVALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LATFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LATITUDE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEINTERPOLATEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEINTERPOLATEPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LONGFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LONGITUDE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTATDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SIMPLIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TRANSFORM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_VALIDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_TO_BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALIDATE_PASSWORD_STRENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WAIT_FOR_EXECUTED_GTID_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MEMBER OF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql80300.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql80300.php deleted file mode 100644 index 9471c0d7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql80300.php +++ /dev/null @@ -1,1108 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTAINS' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVISIBLE' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, - 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, - 'MASTER_DELAY' => Token::FLAG_KEYWORD, - 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, - 'MASTER_HOST' => Token::FLAG_KEYWORD, - 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, - 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, - 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, - 'MASTER_PORT' => Token::FLAG_KEYWORD, - 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MASTER_SSL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, - 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, - 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, - 'MASTER_USER' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'OFFSET' => Token::FLAG_KEYWORD, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PASSWORD' => Token::FLAG_KEYWORD, - 'PERSIST' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PERSIST_ONLY' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROWS' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VALUE' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH PARSER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ANY_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASYNCHRONOUS_CONNECTION_FAILOVER_ADD_MANAGED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASYNCHRONOUS_CONNECTION_FAILOVER_ADD_SOURCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASYNCHRONOUS_CONNECTION_FAILOVER_DELETE_MANAGED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASYNCHRONOUS_CONNECTION_FAILOVER_DELETE_SOURCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASYNCHRONOUS_CONNECTION_FAILOVER_RESET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN_TO_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT_PICO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUPING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_DISABLE_MEMBER_ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_ENABLE_MEMBER_ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_GET_COMMUNICATION_PROTOCOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_GET_WRITE_CONCURRENCY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_RESET_MEMBER_ACTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_SET_AS_PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_SET_COMMUNICATION_PROTOCOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_SET_WRITE_CONCURRENCY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_SWITCH_TO_MULTI_PRIMARY_MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_SWITCH_TO_SINGLE_PRIMARY_MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SCHEMA_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SCHEMA_VALIDATION_REPORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_STORAGE_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_STORAGE_SIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVEREDBY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PS_CURRENT_THREAD_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PS_THREAD_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOURCE_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER_STRATEGY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_COLLECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_FRECHETDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_HAUSDORFFDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISVALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LATFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LATITUDE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEINTERPOLATEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEINTERPOLATEPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LONGFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LONGITUDE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTATDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SIMPLIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TRANSFORM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_VALIDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_TO_BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALIDATE_PASSWORD_STRENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WAIT_FOR_EXECUTED_GTID_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MEMBER OF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql80400.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql80400.php deleted file mode 100644 index 707deea4..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql80400.php +++ /dev/null @@ -1,1096 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTO' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BERNOULLI' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTAINS' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'GTIDS' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVISIBLE' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'OFFSET' => Token::FLAG_KEYWORD, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARSE_TREE' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PASSWORD' => Token::FLAG_KEYWORD, - 'PERSIST' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PERSIST_ONLY' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROWS' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'S3' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VALUE' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MANUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARALLEL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'QUALIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLESAMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH PARSER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ANY_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASYNCHRONOUS_CONNECTION_FAILOVER_ADD_MANAGED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASYNCHRONOUS_CONNECTION_FAILOVER_ADD_SOURCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASYNCHRONOUS_CONNECTION_FAILOVER_DELETE_MANAGED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASYNCHRONOUS_CONNECTION_FAILOVER_DELETE_SOURCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASYNCHRONOUS_CONNECTION_FAILOVER_RESET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN_TO_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT_PICO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUPING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_DISABLE_MEMBER_ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_ENABLE_MEMBER_ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_GET_COMMUNICATION_PROTOCOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_GET_WRITE_CONCURRENCY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_RESET_MEMBER_ACTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_SET_AS_PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_SET_COMMUNICATION_PROTOCOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_SET_WRITE_CONCURRENCY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_SWITCH_TO_MULTI_PRIMARY_MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_REPLICATION_SWITCH_TO_SINGLE_PRIMARY_MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SCHEMA_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SCHEMA_VALIDATION_REPORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_STORAGE_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_STORAGE_SIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVEREDBY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PS_CURRENT_THREAD_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PS_THREAD_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOURCE_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER_STRATEGY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_COLLECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_FRECHETDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_HAUSDORFFDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISVALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LATFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LATITUDE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEINTERPOLATEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEINTERPOLATEPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LONGFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LONGITUDE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTATDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SIMPLIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TRANSFORM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_VALIDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_TO_BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALIDATE_PASSWORD_STRENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WAIT_FOR_EXECUTED_GTID_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MEMBER OF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql90000.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql90000.php deleted file mode 100644 index 7b4ba972..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql90000.php +++ /dev/null @@ -1,1090 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTO' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BERNOULLI' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'GTIDS' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVISIBLE' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'OFFSET' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARSE_TREE' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PERSIST' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PERSIST_ONLY' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROWS' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'S3' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VALUE' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MANUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARALLEL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'QUALIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLESAMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VECTOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH PARSER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ANY_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN_TO_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_VECTOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GTID_SUBSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GTID_SUBTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_STORAGE_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_STORAGE_SIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVEREDBY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRING_TO_VECTOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER_STRATEGY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISVALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LATFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LONGFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SIMPLIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_VALIDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_VECTOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_TO_BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALIDATE_PASSWORD_STRENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VECTOR_DIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VECTOR_TO_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WAIT_FOR_EXECUTED_GTID_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql90100.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql90100.php deleted file mode 100644 index aaea0d5f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Contexts/ContextMySql90100.php +++ /dev/null @@ -1,1090 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'ACCOUNT' => Token::FLAG_KEYWORD, - 'ACTION' => Token::FLAG_KEYWORD, - 'AFTER' => Token::FLAG_KEYWORD, - 'AGGREGATE' => Token::FLAG_KEYWORD, - 'ALGORITHM' => Token::FLAG_KEYWORD, - 'ALWAYS' => Token::FLAG_KEYWORD, - 'ANALYSE' => Token::FLAG_KEYWORD, - 'ANY' => Token::FLAG_KEYWORD, - 'AT' => Token::FLAG_KEYWORD, - 'AUTO' => Token::FLAG_KEYWORD, - 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, - 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, - 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, - 'BACKUP' => Token::FLAG_KEYWORD, - 'BEGIN' => Token::FLAG_KEYWORD, - 'BERNOULLI' => Token::FLAG_KEYWORD, - 'BINLOG' => Token::FLAG_KEYWORD, - 'BLOCK' => Token::FLAG_KEYWORD, - 'BTREE' => Token::FLAG_KEYWORD, - 'BYTE' => Token::FLAG_KEYWORD, - 'CACHE' => Token::FLAG_KEYWORD, - 'CASCADED' => Token::FLAG_KEYWORD, - 'CATALOG_NAME' => Token::FLAG_KEYWORD, - 'CHAIN' => Token::FLAG_KEYWORD, - 'CHANGED' => Token::FLAG_KEYWORD, - 'CHANNEL' => Token::FLAG_KEYWORD, - 'CHECKSUM' => Token::FLAG_KEYWORD, - 'CIPHER' => Token::FLAG_KEYWORD, - 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'CLIENT' => Token::FLAG_KEYWORD, - 'CLOSE' => Token::FLAG_KEYWORD, - 'CODE' => Token::FLAG_KEYWORD, - 'COLUMNS' => Token::FLAG_KEYWORD, - 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, - 'COLUMN_NAME' => Token::FLAG_KEYWORD, - 'COMMENT' => Token::FLAG_KEYWORD, - 'COMMIT' => Token::FLAG_KEYWORD, - 'COMMITTED' => Token::FLAG_KEYWORD, - 'COMPACT' => Token::FLAG_KEYWORD, - 'COMPLETION' => Token::FLAG_KEYWORD, - 'COMPRESSED' => Token::FLAG_KEYWORD, - 'COMPRESSION' => Token::FLAG_KEYWORD, - 'CONCURRENT' => Token::FLAG_KEYWORD, - 'CONNECTION' => Token::FLAG_KEYWORD, - 'CONSISTENT' => Token::FLAG_KEYWORD, - 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, - 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, - 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, - 'CONTEXT' => Token::FLAG_KEYWORD, - 'CPU' => Token::FLAG_KEYWORD, - 'CUBE' => Token::FLAG_KEYWORD, - 'CURRENT' => Token::FLAG_KEYWORD, - 'CURSOR_NAME' => Token::FLAG_KEYWORD, - 'DATA' => Token::FLAG_KEYWORD, - 'DATAFILE' => Token::FLAG_KEYWORD, - 'DEALLOCATE' => Token::FLAG_KEYWORD, - 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, - 'DEFINER' => Token::FLAG_KEYWORD, - 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, - 'DES_KEY_FILE' => Token::FLAG_KEYWORD, - 'DIAGNOSTICS' => Token::FLAG_KEYWORD, - 'DIRECTORY' => Token::FLAG_KEYWORD, - 'DISABLE' => Token::FLAG_KEYWORD, - 'DISCARD' => Token::FLAG_KEYWORD, - 'DISK' => Token::FLAG_KEYWORD, - 'DO' => Token::FLAG_KEYWORD, - 'DUMPFILE' => Token::FLAG_KEYWORD, - 'DUPLICATE' => Token::FLAG_KEYWORD, - 'DYNAMIC' => Token::FLAG_KEYWORD, - 'ENABLE' => Token::FLAG_KEYWORD, - 'END' => Token::FLAG_KEYWORD, - 'ENDS' => Token::FLAG_KEYWORD, - 'ENGINE' => Token::FLAG_KEYWORD, - 'ENGINES' => Token::FLAG_KEYWORD, - 'ERROR' => Token::FLAG_KEYWORD, - 'ERRORS' => Token::FLAG_KEYWORD, - 'ESCAPE' => Token::FLAG_KEYWORD, - 'EVENT' => Token::FLAG_KEYWORD, - 'EVENTS' => Token::FLAG_KEYWORD, - 'EVERY' => Token::FLAG_KEYWORD, - 'EXCHANGE' => Token::FLAG_KEYWORD, - 'EXECUTE' => Token::FLAG_KEYWORD, - 'EXPANSION' => Token::FLAG_KEYWORD, - 'EXPIRE' => Token::FLAG_KEYWORD, - 'EXPORT' => Token::FLAG_KEYWORD, - 'EXTENDED' => Token::FLAG_KEYWORD, - 'EXTENT_SIZE' => Token::FLAG_KEYWORD, - 'FAST' => Token::FLAG_KEYWORD, - 'FAULTS' => Token::FLAG_KEYWORD, - 'FIELDS' => Token::FLAG_KEYWORD, - 'FILE' => Token::FLAG_KEYWORD, - 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'FILTER' => Token::FLAG_KEYWORD, - 'FIRST' => Token::FLAG_KEYWORD, - 'FLUSH' => Token::FLAG_KEYWORD, - 'FOLLOWS' => Token::FLAG_KEYWORD, - 'FOUND' => Token::FLAG_KEYWORD, - 'FULL' => Token::FLAG_KEYWORD, - 'FUNCTION' => Token::FLAG_KEYWORD, - 'GENERAL' => Token::FLAG_KEYWORD, - 'GLOBAL' => Token::FLAG_KEYWORD, - 'GRANTS' => Token::FLAG_KEYWORD, - 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, - 'GTIDS' => Token::FLAG_KEYWORD, - 'HANDLER' => Token::FLAG_KEYWORD, - 'HASH' => Token::FLAG_KEYWORD, - 'HELP' => Token::FLAG_KEYWORD, - 'HOST' => Token::FLAG_KEYWORD, - 'HOSTS' => Token::FLAG_KEYWORD, - 'IDENTIFIED' => Token::FLAG_KEYWORD, - 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, - 'IMPORT' => Token::FLAG_KEYWORD, - 'INDEXES' => Token::FLAG_KEYWORD, - 'INITIAL_SIZE' => Token::FLAG_KEYWORD, - 'INSERT_METHOD' => Token::FLAG_KEYWORD, - 'INSTALL' => Token::FLAG_KEYWORD, - 'INVISIBLE' => Token::FLAG_KEYWORD, - 'INVOKER' => Token::FLAG_KEYWORD, - 'IO' => Token::FLAG_KEYWORD, - 'IO_THREAD' => Token::FLAG_KEYWORD, - 'IPC' => Token::FLAG_KEYWORD, - 'ISOLATION' => Token::FLAG_KEYWORD, - 'ISSUER' => Token::FLAG_KEYWORD, - 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, - 'LANGUAGE' => Token::FLAG_KEYWORD, - 'LAST' => Token::FLAG_KEYWORD, - 'LEAVES' => Token::FLAG_KEYWORD, - 'LESS' => Token::FLAG_KEYWORD, - 'LEVEL' => Token::FLAG_KEYWORD, - 'LIST' => Token::FLAG_KEYWORD, - 'LOCAL' => Token::FLAG_KEYWORD, - 'LOCKS' => Token::FLAG_KEYWORD, - 'LOGFILE' => Token::FLAG_KEYWORD, - 'LOGS' => Token::FLAG_KEYWORD, - 'MASTER' => Token::FLAG_KEYWORD, - 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, - 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_ROWS' => Token::FLAG_KEYWORD, - 'MAX_SIZE' => Token::FLAG_KEYWORD, - 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, - 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, - 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, - 'MEDIUM' => Token::FLAG_KEYWORD, - 'MEMORY' => Token::FLAG_KEYWORD, - 'MERGE' => Token::FLAG_KEYWORD, - 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, - 'MIGRATE' => Token::FLAG_KEYWORD, - 'MIN_ROWS' => Token::FLAG_KEYWORD, - 'MODE' => Token::FLAG_KEYWORD, - 'MODIFY' => Token::FLAG_KEYWORD, - 'MUTEX' => Token::FLAG_KEYWORD, - 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, - 'NAME' => Token::FLAG_KEYWORD, - 'NAMES' => Token::FLAG_KEYWORD, - 'NATIONAL' => Token::FLAG_KEYWORD, - 'NCHAR' => Token::FLAG_KEYWORD, - 'NDB' => Token::FLAG_KEYWORD, - 'NDBCLUSTER' => Token::FLAG_KEYWORD, - 'NEVER' => Token::FLAG_KEYWORD, - 'NEW' => Token::FLAG_KEYWORD, - 'NEXT' => Token::FLAG_KEYWORD, - 'NO' => Token::FLAG_KEYWORD, - 'NODEGROUP' => Token::FLAG_KEYWORD, - 'NONBLOCKING' => Token::FLAG_KEYWORD, - 'NONE' => Token::FLAG_KEYWORD, - 'NO_WAIT' => Token::FLAG_KEYWORD, - 'NUMBER' => Token::FLAG_KEYWORD, - 'NVARCHAR' => Token::FLAG_KEYWORD, - 'OFFSET' => Token::FLAG_KEYWORD, - 'ONE' => Token::FLAG_KEYWORD, - 'ONLY' => Token::FLAG_KEYWORD, - 'OPEN' => Token::FLAG_KEYWORD, - 'OPTIONS' => Token::FLAG_KEYWORD, - 'OWNER' => Token::FLAG_KEYWORD, - 'PACK_KEYS' => Token::FLAG_KEYWORD, - 'PAGE' => Token::FLAG_KEYWORD, - 'PARSER' => Token::FLAG_KEYWORD, - 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, - 'PARSE_TREE' => Token::FLAG_KEYWORD, - 'PARTIAL' => Token::FLAG_KEYWORD, - 'PARTITIONING' => Token::FLAG_KEYWORD, - 'PARTITIONS' => Token::FLAG_KEYWORD, - 'PERSIST' => Token::FLAG_KEYWORD, - 'PERSISTENT' => Token::FLAG_KEYWORD, - 'PERSIST_ONLY' => Token::FLAG_KEYWORD, - 'PHASE' => Token::FLAG_KEYWORD, - 'PLUGIN' => Token::FLAG_KEYWORD, - 'PLUGINS' => Token::FLAG_KEYWORD, - 'PLUGIN_DIR' => Token::FLAG_KEYWORD, - 'PORT' => Token::FLAG_KEYWORD, - 'PRECEDES' => Token::FLAG_KEYWORD, - 'PREPARE' => Token::FLAG_KEYWORD, - 'PRESERVE' => Token::FLAG_KEYWORD, - 'PREV' => Token::FLAG_KEYWORD, - 'PRIVILEGES' => Token::FLAG_KEYWORD, - 'PROCESSLIST' => Token::FLAG_KEYWORD, - 'PROFILE' => Token::FLAG_KEYWORD, - 'PROFILES' => Token::FLAG_KEYWORD, - 'PROXY' => Token::FLAG_KEYWORD, - 'QUERY' => Token::FLAG_KEYWORD, - 'QUICK' => Token::FLAG_KEYWORD, - 'READ_ONLY' => Token::FLAG_KEYWORD, - 'REBUILD' => Token::FLAG_KEYWORD, - 'RECOVER' => Token::FLAG_KEYWORD, - 'REDOFILE' => Token::FLAG_KEYWORD, - 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'REDUNDANT' => Token::FLAG_KEYWORD, - 'RELAY' => Token::FLAG_KEYWORD, - 'RELAYLOG' => Token::FLAG_KEYWORD, - 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, - 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, - 'RELAY_THREAD' => Token::FLAG_KEYWORD, - 'RELOAD' => Token::FLAG_KEYWORD, - 'REMOVE' => Token::FLAG_KEYWORD, - 'REORGANIZE' => Token::FLAG_KEYWORD, - 'REPAIR' => Token::FLAG_KEYWORD, - 'REPEATABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, - 'REPLICATION' => Token::FLAG_KEYWORD, - 'RESET' => Token::FLAG_KEYWORD, - 'RESTORE' => Token::FLAG_KEYWORD, - 'RESUME' => Token::FLAG_KEYWORD, - 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, - 'RETURNS' => Token::FLAG_KEYWORD, - 'ROLLBACK' => Token::FLAG_KEYWORD, - 'ROLLUP' => Token::FLAG_KEYWORD, - 'ROUTINE' => Token::FLAG_KEYWORD, - 'ROW' => Token::FLAG_KEYWORD, - 'ROWS' => Token::FLAG_KEYWORD, - 'ROW_FORMAT' => Token::FLAG_KEYWORD, - 'RTREE' => Token::FLAG_KEYWORD, - 'S3' => Token::FLAG_KEYWORD, - 'SAVEPOINT' => Token::FLAG_KEYWORD, - 'SCHEDULE' => Token::FLAG_KEYWORD, - 'SCHEMA_NAME' => Token::FLAG_KEYWORD, - 'SECURITY' => Token::FLAG_KEYWORD, - 'SERIALIZABLE' => Token::FLAG_KEYWORD, - 'SERVER' => Token::FLAG_KEYWORD, - 'SESSION' => Token::FLAG_KEYWORD, - 'SHARE' => Token::FLAG_KEYWORD, - 'SHUTDOWN' => Token::FLAG_KEYWORD, - 'SIGNED' => Token::FLAG_KEYWORD, - 'SIMPLE' => Token::FLAG_KEYWORD, - 'SLAVE' => Token::FLAG_KEYWORD, - 'SLOW' => Token::FLAG_KEYWORD, - 'SNAPSHOT' => Token::FLAG_KEYWORD, - 'SOCKET' => Token::FLAG_KEYWORD, - 'SOME' => Token::FLAG_KEYWORD, - 'SONAME' => Token::FLAG_KEYWORD, - 'SOUNDS' => Token::FLAG_KEYWORD, - 'SOURCE' => Token::FLAG_KEYWORD, - 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, - 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, - 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, - 'SQL_CACHE' => Token::FLAG_KEYWORD, - 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, - 'SQL_THREAD' => Token::FLAG_KEYWORD, - 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, - 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, - 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, - 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, - 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, - 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, - 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, - 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, - 'STACKED' => Token::FLAG_KEYWORD, - 'START' => Token::FLAG_KEYWORD, - 'STARTS' => Token::FLAG_KEYWORD, - 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, - 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, - 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, - 'STATUS' => Token::FLAG_KEYWORD, - 'STOP' => Token::FLAG_KEYWORD, - 'STORAGE' => Token::FLAG_KEYWORD, - 'STRING' => Token::FLAG_KEYWORD, - 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, - 'SUBJECT' => Token::FLAG_KEYWORD, - 'SUBPARTITION' => Token::FLAG_KEYWORD, - 'SUBPARTITIONS' => Token::FLAG_KEYWORD, - 'SUPER' => Token::FLAG_KEYWORD, - 'SUSPEND' => Token::FLAG_KEYWORD, - 'SWAPS' => Token::FLAG_KEYWORD, - 'SWITCHES' => Token::FLAG_KEYWORD, - 'TABLES' => Token::FLAG_KEYWORD, - 'TABLESPACE' => Token::FLAG_KEYWORD, - 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, - 'TABLE_NAME' => Token::FLAG_KEYWORD, - 'TEMPORARY' => Token::FLAG_KEYWORD, - 'TEMPTABLE' => Token::FLAG_KEYWORD, - 'THAN' => Token::FLAG_KEYWORD, - 'TRANSACTION' => Token::FLAG_KEYWORD, - 'TRIGGERS' => Token::FLAG_KEYWORD, - 'TYPE' => Token::FLAG_KEYWORD, - 'TYPES' => Token::FLAG_KEYWORD, - 'UNCOMMITTED' => Token::FLAG_KEYWORD, - 'UNDEFINED' => Token::FLAG_KEYWORD, - 'UNDOFILE' => Token::FLAG_KEYWORD, - 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, - 'UNICODE' => Token::FLAG_KEYWORD, - 'UNINSTALL' => Token::FLAG_KEYWORD, - 'UNKNOWN' => Token::FLAG_KEYWORD, - 'UNTIL' => Token::FLAG_KEYWORD, - 'UPGRADE' => Token::FLAG_KEYWORD, - 'USER_RESOURCES' => Token::FLAG_KEYWORD, - 'USE_FRM' => Token::FLAG_KEYWORD, - 'VALIDATION' => Token::FLAG_KEYWORD, - 'VALUE' => Token::FLAG_KEYWORD, - 'VARIABLES' => Token::FLAG_KEYWORD, - 'VIEW' => Token::FLAG_KEYWORD, - 'WAIT' => Token::FLAG_KEYWORD, - 'WARNINGS' => Token::FLAG_KEYWORD, - 'WITHOUT' => Token::FLAG_KEYWORD, - 'WORK' => Token::FLAG_KEYWORD, - 'WRAPPER' => Token::FLAG_KEYWORD, - 'X509' => Token::FLAG_KEYWORD, - 'XA' => Token::FLAG_KEYWORD, - 'XID' => Token::FLAG_KEYWORD, - 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MANUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARALLEL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'QUALIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TABLESAMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VECTOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH PARSER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, - 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, - 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, - 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ANY_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIN_TO_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'FROM_VECTOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GTID_SUBSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'GTID_SUBTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'IS_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_STORAGE_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_STORAGE_SIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVEREDBY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STRING_TO_VECTOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_BUFFER_STRATEGY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_ISVALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LATFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_LONGFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SIMPLIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_VALIDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TO_VECTOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'UUID_TO_BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VALIDATE_PASSWORD_STRENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VECTOR_DIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VECTOR_TO_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WAIT_FOR_EXECUTED_GTID_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, - 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, - 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Core.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Core.php deleted file mode 100644 index 6c8d22e1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Core.php +++ /dev/null @@ -1,53 +0,0 @@ -strict) { - throw $error; - } - - $this->errors[] = $error; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Exceptions/LexerException.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Exceptions/LexerException.php deleted file mode 100644 index 498ce0e9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Exceptions/LexerException.php +++ /dev/null @@ -1,40 +0,0 @@ -ch = $ch; - $this->pos = $pos; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Exceptions/LoaderException.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Exceptions/LoaderException.php deleted file mode 100644 index 58a53fcd..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Exceptions/LoaderException.php +++ /dev/null @@ -1,31 +0,0 @@ -name = $name; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Exceptions/ParserException.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Exceptions/ParserException.php deleted file mode 100644 index 8e289289..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Exceptions/ParserException.php +++ /dev/null @@ -1,32 +0,0 @@ -token = $token; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Lexer.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Lexer.php deleted file mode 100644 index 782dda66..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Lexer.php +++ /dev/null @@ -1,1126 +0,0 @@ -list; - } - - /** - * @param string|UtfString $str the query to be lexed - * @param bool $strict whether strict mode should be - * enabled or not - * @param string $delimiter the delimiter to be used - */ - public function __construct($str, $strict = false, $delimiter = null) - { - // `strlen` is used instead of `mb_strlen` because the lexer needs to - // parse each byte of the input. - $len = $str instanceof UtfString ? $str->length() : strlen($str); - - // For multi-byte strings, a new instance of `UtfString` is - // initialized (only if `UtfString` usage is forced. - if (! $str instanceof UtfString && USE_UTF_STRINGS && $len !== mb_strlen($str, 'UTF-8')) { - $str = new UtfString($str); - } - - $this->str = $str; - $this->len = $str instanceof UtfString ? $str->length() : $len; - - $this->strict = $strict; - - // Setting the delimiter. - $this->setDelimiter(! empty($delimiter) ? $delimiter : static::$DEFAULT_DELIMITER); - - $this->lex(); - } - - /** - * Sets the delimiter. - * - * @param string $delimiter the new delimiter - * - * @return void - */ - public function setDelimiter($delimiter) - { - $this->delimiter = $delimiter; - $this->delimiterLen = strlen($delimiter); - } - - /** - * Parses the string and extracts lexemes. - * - * @return void - */ - public function lex() - { - // TODO: Sometimes, static::parse* functions make unnecessary calls to - // is* functions. For a better performance, some rules can be deduced - // from context. - // For example, in `parseBool` there is no need to compare the token - // every time with `true` and `false`. The first step would be to - // compare with 'true' only and just after that add another letter from - // context and compare again with `false`. - // Another example is `parseComment`. - - $list = new TokensList(); - - /** - * Last processed token. - * - * @var Token - */ - $lastToken = null; - - for ($this->last = 0, $lastIdx = 0; $this->last < $this->len; $lastIdx = ++$this->last) { - /** - * The new token. - * - * @var Token - */ - $token = null; - - foreach (static::$PARSER_METHODS as $method) { - $token = $this->$method(); - - if ($token) { - break; - } - } - - if ($token === null) { - // @assert($this->last === $lastIdx); - $token = new Token($this->str[$this->last]); - $this->error('Unexpected character.', $this->str[$this->last], $this->last); - } elseif ( - $lastToken !== null - && $token->type === Token::TYPE_SYMBOL - && $token->flags & Token::FLAG_SYMBOL_VARIABLE - && ( - $lastToken->type === Token::TYPE_STRING - || ( - $lastToken->type === Token::TYPE_SYMBOL - && $lastToken->flags & Token::FLAG_SYMBOL_BACKTICK - ) - ) - ) { - // Handles ```... FROM 'user'@'%' ...```. - $lastToken->token .= $token->token; - $lastToken->type = Token::TYPE_SYMBOL; - $lastToken->flags = Token::FLAG_SYMBOL_USER; - $lastToken->value .= '@' . $token->value; - continue; - } elseif ( - $lastToken !== null - && $token->type === Token::TYPE_KEYWORD - && $lastToken->type === Token::TYPE_OPERATOR - && $lastToken->value === '.' - ) { - // Handles ```... tbl.FROM ...```. In this case, FROM is not - // a reserved word. - $token->type = Token::TYPE_NONE; - $token->flags = 0; - $token->value = $token->token; - } - - $token->position = $lastIdx; - - $list->tokens[$list->count++] = $token; - - // Handling delimiters. - if ($token->type === Token::TYPE_NONE && $token->value === 'DELIMITER') { - if ($this->last + 1 >= $this->len) { - $this->error('Expected whitespace(s) before delimiter.', '', $this->last + 1); - continue; - } - - // Skipping last R (from `delimiteR`) and whitespaces between - // the keyword `DELIMITER` and the actual delimiter. - $pos = ++$this->last; - $token = $this->parseWhitespace(); - - if ($token !== null) { - $token->position = $pos; - $list->tokens[$list->count++] = $token; - } - - // Preparing the token that holds the new delimiter. - if ($this->last + 1 >= $this->len) { - $this->error('Expected delimiter.', '', $this->last + 1); - continue; - } - - $pos = $this->last + 1; - - // Parsing the delimiter. - $this->delimiter = null; - $delimiterLen = 0; - while ( - ++$this->last < $this->len - && ! Context::isWhitespace($this->str[$this->last]) - && $delimiterLen < 15 - ) { - $this->delimiter .= $this->str[$this->last]; - ++$delimiterLen; - } - - if (empty($this->delimiter)) { - $this->error('Expected delimiter.', '', $this->last); - $this->delimiter = ';'; - } - - --$this->last; - - // Saving the delimiter and its token. - $this->delimiterLen = strlen($this->delimiter); - $token = new Token($this->delimiter, Token::TYPE_DELIMITER); - $token->position = $pos; - $list->tokens[$list->count++] = $token; - } - - $lastToken = $token; - } - - // Adding a final delimiter to mark the ending. - $list->tokens[$list->count++] = new Token(null, Token::TYPE_DELIMITER); - - // Saving the tokens list. - $this->list = $list; - - $this->solveAmbiguityOnStarOperator(); - $this->solveAmbiguityOnFunctionKeywords(); - } - - /** - * Resolves the ambiguity when dealing with the "*" operator. - * - * In SQL statements, the "*" operator can be an arithmetic operator (like in 2*3) or an SQL wildcard (like in - * SELECT a.* FROM ...). To solve this ambiguity, the solution is to find the next token, excluding whitespaces and - * comments, right after the "*" position. The "*" is for sure an SQL wildcard if the next token found is any of: - * - "FROM" (the FROM keyword like in "SELECT * FROM..."); - * - "USING" (the USING keyword like in "DELETE table_name.* USING..."); - * - "," (a comma separator like in "SELECT *, field FROM..."); - * - ")" (a closing parenthesis like in "COUNT(*)"). - * This methods will change the flag of the "*" tokens when any of those condition above is true. Otherwise, the - * default flag (arithmetic) will be kept. - */ - private function solveAmbiguityOnStarOperator(): void - { - $iBak = $this->list->idx; - while (($starToken = $this->list->getNextOfTypeAndValue(Token::TYPE_OPERATOR, '*')) !== null) { - // getNext() already gets rid of whitespaces and comments. - $next = $this->list->getNext(); - - if ($next === null) { - continue; - } - - if ( - ($next->type !== Token::TYPE_KEYWORD || ! in_array($next->value, ['FROM', 'USING'], true)) - && ($next->type !== Token::TYPE_OPERATOR || ! in_array($next->value, [',', ')'], true)) - ) { - continue; - } - - $starToken->flags = Token::FLAG_OPERATOR_SQL; - } - - $this->list->idx = $iBak; - } - - /** - * Resolves the ambiguity when dealing with the functions keywords. - * - * In SQL statements, the function keywords might be used as table names or columns names. - * To solve this ambiguity, the solution is to find the next token, excluding whitespaces and - * comments, right after the function keyword position. The function keyword is for sure used - * as column name or table name if the next token found is any of: - * - * - "FROM" (the FROM keyword like in "SELECT Country x, AverageSalary avg FROM..."); - * - "WHERE" (the WHERE keyword like in "DELETE FROM emp x WHERE x.salary = 20"); - * - "SET" (the SET keyword like in "UPDATE Country x, City y set x.Name=x.Name"); - * - "," (a comma separator like 'x,' in "UPDATE Country x, City y set x.Name=x.Name"); - * - "." (a dot separator like in "x.asset_id FROM (SELECT evt.asset_id FROM evt)". - * - "NULL" (when used as a table alias like in "avg.col FROM (SELECT ev.col FROM ev) avg"). - * - * This method will change the flag of the function keyword tokens when any of those - * condition above is true. Otherwise, the - * default flag (function keyword) will be kept. - */ - private function solveAmbiguityOnFunctionKeywords(): void - { - $iBak = $this->list->idx; - $keywordFunction = Token::TYPE_KEYWORD | Token::FLAG_KEYWORD_FUNCTION; - while (($keywordToken = $this->list->getNextOfTypeAndFlag(Token::TYPE_KEYWORD, $keywordFunction)) !== null) { - $next = $this->list->getNext(); - if ( - ($next->type !== Token::TYPE_KEYWORD - || ! in_array($next->value, $this->KEYWORD_NAME_INDICATORS, true) - ) - && ($next->type !== Token::TYPE_OPERATOR - || ! in_array($next->value, $this->OPERATOR_NAME_INDICATORS, true) - ) - && ($next->value !== null) - ) { - continue; - } - - $keywordToken->type = Token::TYPE_NONE; - $keywordToken->flags = Token::TYPE_NONE; - $keywordToken->keyword = $keywordToken->value; - } - - $this->list->idx = $iBak; - } - - /** - * Creates a new error log. - * - * @param string $msg the error message - * @param string $str the character that produced the error - * @param int $pos the position of the character - * @param int $code the code of the error - * - * @return void - * - * @throws LexerException throws the exception, if strict mode is enabled. - */ - public function error($msg, $str = '', $pos = 0, $code = 0) - { - $error = new LexerException( - Translator::gettext($msg), - $str, - $pos, - $code - ); - parent::error($error); - } - - /** - * Parses a keyword. - * - * @return Token|null - */ - public function parseKeyword() - { - $token = ''; - - /** - * Value to be returned. - * - * @var Token - */ - $ret = null; - - /** - * The value of `$this->last` where `$token` ends in `$this->str`. - */ - $iEnd = $this->last; - - /** - * Whether last parsed character is a whitespace. - * - * @var bool - */ - $lastSpace = false; - - for ($j = 1; $j < Context::KEYWORD_MAX_LENGTH && $this->last < $this->len; ++$j, ++$this->last) { - // Composed keywords shouldn't have more than one whitespace between - // keywords. - if (Context::isWhitespace($this->str[$this->last])) { - if ($lastSpace) { - --$j; // The size of the keyword didn't increase. - continue; - } - - $lastSpace = true; - } else { - $lastSpace = false; - } - - $token .= $this->str[$this->last]; - $flags = Context::isKeyword($token); - - if (($this->last + 1 !== $this->len && ! Context::isSeparator($this->str[$this->last + 1])) || ! $flags) { - continue; - } - - $ret = new Token($token, Token::TYPE_KEYWORD, $flags); - $iEnd = $this->last; - - // We don't break so we find longest keyword. - // For example, `OR` and `ORDER` have a common prefix `OR`. - // If we stopped at `OR`, the parsing would be invalid. - } - - $this->last = $iEnd; - - return $ret; - } - - /** - * Parses a label. - * - * @return Token|null - */ - public function parseLabel() - { - $token = ''; - - /** - * Value to be returned. - * - * @var Token - */ - $ret = null; - - /** - * The value of `$this->last` where `$token` ends in `$this->str`. - */ - $iEnd = $this->last; - for ($j = 1; $j < Context::LABEL_MAX_LENGTH && $this->last < $this->len; ++$j, ++$this->last) { - if ($this->str[$this->last] === ':' && $j > 1) { - // End of label - $token .= $this->str[$this->last]; - $ret = new Token($token, Token::TYPE_LABEL); - $iEnd = $this->last; - break; - } - - if (Context::isWhitespace($this->str[$this->last]) && $j > 1) { - // Whitespace between label and : - // The size of the keyword didn't increase. - --$j; - } elseif (Context::isSeparator($this->str[$this->last])) { - // Any other separator - break; - } - - $token .= $this->str[$this->last]; - } - - $this->last = $iEnd; - - return $ret; - } - - /** - * Parses an operator. - * - * @return Token|null - */ - public function parseOperator() - { - $token = ''; - - /** - * Value to be returned. - * - * @var Token - */ - $ret = null; - - /** - * The value of `$this->last` where `$token` ends in `$this->str`. - */ - $iEnd = $this->last; - - for ($j = 1; $j < Context::OPERATOR_MAX_LENGTH && $this->last < $this->len; ++$j, ++$this->last) { - $token .= $this->str[$this->last]; - $flags = Context::isOperator($token); - - if (! $flags) { - continue; - } - - $ret = new Token($token, Token::TYPE_OPERATOR, $flags); - $iEnd = $this->last; - } - - $this->last = $iEnd; - - return $ret; - } - - /** - * Parses a whitespace. - * - * @return Token|null - */ - public function parseWhitespace() - { - $token = $this->str[$this->last]; - - if (! Context::isWhitespace($token)) { - return null; - } - - while (++$this->last < $this->len && Context::isWhitespace($this->str[$this->last])) { - $token .= $this->str[$this->last]; - } - - --$this->last; - - return new Token($token, Token::TYPE_WHITESPACE); - } - - /** - * Parses a comment. - * - * @return Token|null - */ - public function parseComment() - { - $iBak = $this->last; - $token = $this->str[$this->last]; - - // Bash style comments. (#comment\n) - if (Context::isComment($token)) { - while (++$this->last < $this->len && $this->str[$this->last] !== "\n") { - $token .= $this->str[$this->last]; - } - - // Include trailing \n as whitespace token - if ($this->last < $this->len) { - --$this->last; - } - - return new Token($token, Token::TYPE_COMMENT, Token::FLAG_COMMENT_BASH); - } - - // C style comments. (/*comment*\/) - if (++$this->last < $this->len) { - $token .= $this->str[$this->last]; - if (Context::isComment($token)) { - // There might be a conflict with "*" operator here, when string is "*/*". - // This can occurs in the following statements: - // - "SELECT */* comment */ FROM ..." - // - "SELECT 2*/* comment */3 AS `six`;" - $next = $this->last + 1; - if (($next < $this->len) && $this->str[$next] === '*' && $token === '*/') { - // Conflict in "*/*": first "*" was not for ending a comment. - // Stop here and let other parsing method define the true behavior of that first star. - $this->last = $iBak; - - return null; - } - - $flags = Token::FLAG_COMMENT_C; - - // This comment already ended. It may be a part of a - // previous MySQL specific command. - if ($token === '*/') { - return new Token($token, Token::TYPE_COMMENT, $flags); - } - - // Checking if this is a MySQL-specific command. - if ($this->last + 1 < $this->len && $this->str[$this->last + 1] === '!') { - $flags |= Token::FLAG_COMMENT_MYSQL_CMD; - $token .= $this->str[++$this->last]; - - while ( - ++$this->last < $this->len - && $this->str[$this->last] >= '0' - && $this->str[$this->last] <= '9' - ) { - $token .= $this->str[$this->last]; - } - - --$this->last; - - // We split this comment and parse only its beginning - // here. - return new Token($token, Token::TYPE_COMMENT, $flags); - } - - // Parsing the comment. - while ( - ++$this->last < $this->len - && ( - $this->str[$this->last - 1] !== '*' - || $this->str[$this->last] !== '/' - ) - ) { - $token .= $this->str[$this->last]; - } - - // Adding the ending. - if ($this->last < $this->len) { - $token .= $this->str[$this->last]; - } - - return new Token($token, Token::TYPE_COMMENT, $flags); - } - } - - // SQL style comments. (-- comment\n) - if (++$this->last < $this->len) { - $token .= $this->str[$this->last]; - $end = false; - } else { - --$this->last; - $end = true; - } - - if (Context::isComment($token, $end)) { - // Checking if this comment did not end already (```--\n```). - if ($this->str[$this->last] !== "\n") { - while (++$this->last < $this->len && $this->str[$this->last] !== "\n") { - $token .= $this->str[$this->last]; - } - } - - // Include trailing \n as whitespace token - if ($this->last < $this->len) { - --$this->last; - } - - return new Token($token, Token::TYPE_COMMENT, Token::FLAG_COMMENT_SQL); - } - - $this->last = $iBak; - - return null; - } - - /** - * Parses a boolean. - * - * @return Token|null - */ - public function parseBool() - { - if ($this->last + 3 >= $this->len) { - // At least `min(strlen('TRUE'), strlen('FALSE'))` characters are - // required. - return null; - } - - $iBak = $this->last; - $token = $this->str[$this->last] . $this->str[++$this->last] - . $this->str[++$this->last] . $this->str[++$this->last]; // _TRUE_ or _FALS_e - - if (Context::isBool($token)) { - return new Token($token, Token::TYPE_BOOL); - } - - if (++$this->last < $this->len) { - $token .= $this->str[$this->last]; // fals_E_ - if (Context::isBool($token)) { - return new Token($token, Token::TYPE_BOOL, 1); - } - } - - $this->last = $iBak; - - return null; - } - - /** - * Parses a number. - * - * @return Token|null - */ - public function parseNumber() - { - // A rudimentary state machine is being used to parse numbers due to - // the various forms of their notation. - // - // Below are the states of the machines and the conditions to change - // the state. - // - // 1 --------------------[ + or - ]-------------------> 1 - // 1 -------------------[ 0x or 0X ]------------------> 2 - // 1 --------------------[ 0 to 9 ]-------------------> 3 - // 1 -----------------------[ . ]---------------------> 10 - // 1 -----------------------[ b ]---------------------> 7 - // - // 2 --------------------[ 0 to F ]-------------------> 2 - // - // 3 --------------------[ 0 to 9 ]-------------------> 3 - // 3 -----------------------[ . ]---------------------> 4 - // 3 --------------------[ e or E ]-------------------> 5 - // - // 4 --------------------[ 0 to 9 ]-------------------> 4 - // 4 --------------------[ e or E ]-------------------> 5 - // - // 5 ---------------[ + or - or 0 to 9 ]--------------> 6 - // - // 7 -----------------------[ ' ]---------------------> 8 - // - // 8 --------------------[ 0 or 1 ]-------------------> 8 - // 8 -----------------------[ ' ]---------------------> 9 - // - // 10 -------------------[ 0 to 9 ]-------------------> 4 - // - // State 1 may be reached by negative numbers. - // State 2 is reached only by hex numbers. - // State 4 is reached only by float numbers. - // State 5 is reached only by numbers in approximate form. - // State 7 is reached only by numbers in bit representation. - // State 10 is a forced proxy to state 4 ensuring a starting dot (= "0.something") precedes a digit, and not "e" - // or "E" causing wrongly interpreted scientific notation (".e[0 to 9]" is invalid). Such invalid notation could - // break the lexer when table names under a given database context starts with ".e[0-9]". - // - // Valid final states are: 2, 3, 4 and 6. Any parsing that finished in a - // state other than these is invalid. - // Also, negative states are invalid states. - $iBak = $this->last; - $token = ''; - $flags = 0; - $state = 1; - for (; $this->last < $this->len; ++$this->last) { - if ($state === 1) { - if ($this->str[$this->last] === '-') { - $flags |= Token::FLAG_NUMBER_NEGATIVE; - } elseif ( - $this->last + 1 < $this->len - && $this->str[$this->last] === '0' - && $this->str[$this->last + 1] === 'x' - ) { - $token .= $this->str[$this->last++]; - $state = 2; - } elseif ($this->str[$this->last] >= '0' && $this->str[$this->last] <= '9') { - $state = 3; - } elseif ($this->str[$this->last] === '.') { - $state = 10; - } elseif ($this->str[$this->last] === 'b') { - $state = 7; - } elseif ($this->str[$this->last] !== '+') { - // `+` is a valid character in a number. - break; - } - } elseif ($state === 2) { - $flags |= Token::FLAG_NUMBER_HEX; - if ( - ! ( - ($this->str[$this->last] >= '0' && $this->str[$this->last] <= '9') - || ($this->str[$this->last] >= 'A' && $this->str[$this->last] <= 'F') - || ($this->str[$this->last] >= 'a' && $this->str[$this->last] <= 'f') - ) - ) { - break; - } - } elseif ($state === 3) { - if ($this->str[$this->last] === '.') { - $state = 4; - } elseif ($this->str[$this->last] === 'e' || $this->str[$this->last] === 'E') { - $state = 5; - } elseif ( - ($this->str[$this->last] >= 'a' && $this->str[$this->last] <= 'z') - || ($this->str[$this->last] >= 'A' && $this->str[$this->last] <= 'Z') - ) { - // A number can't be directly followed by a letter - $state = -$state; - } elseif ($this->str[$this->last] < '0' || $this->str[$this->last] > '9') { - // Just digits and `.`, `e` and `E` are valid characters. - break; - } - } elseif ($state === 4) { - $flags |= Token::FLAG_NUMBER_FLOAT; - if ($this->str[$this->last] === 'e' || $this->str[$this->last] === 'E') { - $state = 5; - } elseif ( - ($this->str[$this->last] >= 'a' && $this->str[$this->last] <= 'z') - || ($this->str[$this->last] >= 'A' && $this->str[$this->last] <= 'Z') - ) { - // A number can't be directly followed by a letter - $state = -$state; - } elseif ($this->str[$this->last] < '0' || $this->str[$this->last] > '9') { - // Just digits, `e` and `E` are valid characters. - break; - } - } elseif ($state === 5) { - $flags |= Token::FLAG_NUMBER_APPROXIMATE; - if ( - $this->str[$this->last] === '+' || $this->str[$this->last] === '-' - || ($this->str[$this->last] >= '0' && $this->str[$this->last] <= '9') - ) { - $state = 6; - } elseif ( - ($this->str[$this->last] >= 'a' && $this->str[$this->last] <= 'z') - || ($this->str[$this->last] >= 'A' && $this->str[$this->last] <= 'Z') - ) { - // A number can't be directly followed by a letter - $state = -$state; - } else { - break; - } - } elseif ($state === 6) { - if ($this->str[$this->last] < '0' || $this->str[$this->last] > '9') { - // Just digits are valid characters. - break; - } - } elseif ($state === 7) { - $flags |= Token::FLAG_NUMBER_BINARY; - if ($this->str[$this->last] !== '\'') { - break; - } - - $state = 8; - } elseif ($state === 8) { - if ($this->str[$this->last] === '\'') { - $state = 9; - } elseif ($this->str[$this->last] !== '0' && $this->str[$this->last] !== '1') { - break; - } - } elseif ($state === 9) { - break; - } elseif ($state === 10) { - $flags |= Token::FLAG_NUMBER_FLOAT; - if ($this->str[$this->last] < '0' || $this->str[$this->last] > '9') { - break; - } - - $state = 4; - } - - $token .= $this->str[$this->last]; - } - - if ($state === 2 || $state === 3 || ($token !== '.' && $state === 4) || $state === 6 || $state === 9) { - --$this->last; - - return new Token($token, Token::TYPE_NUMBER, $flags); - } - - $this->last = $iBak; - - return null; - } - - /** - * Parses a string. - * - * @param string $quote additional starting symbol - * - * @return Token|null - * - * @throws LexerException - */ - public function parseString($quote = '') - { - $token = $this->str[$this->last]; - $flags = Context::isString($token); - - if (! $flags && $token !== $quote) { - return null; - } - - $quote = $token; - - while (++$this->last < $this->len) { - if ( - $this->last + 1 < $this->len - && ( - ($this->str[$this->last] === $quote && $this->str[$this->last + 1] === $quote) - || ($this->str[$this->last] === '\\' && $quote !== '`') - ) - ) { - $token .= $this->str[$this->last] . $this->str[++$this->last]; - } else { - if ($this->str[$this->last] === $quote) { - break; - } - - $token .= $this->str[$this->last]; - } - } - - if ($this->last >= $this->len || $this->str[$this->last] !== $quote) { - $this->error( - sprintf( - Translator::gettext('Ending quote %1$s was expected.'), - $quote - ), - '', - $this->last - ); - } else { - $token .= $this->str[$this->last]; - } - - return new Token($token, Token::TYPE_STRING, $flags); - } - - /** - * Parses a symbol. - * - * @return Token|null - * - * @throws LexerException - */ - public function parseSymbol() - { - $token = $this->str[$this->last]; - $flags = Context::isSymbol($token); - - if (! $flags) { - return null; - } - - if ($flags & Token::FLAG_SYMBOL_VARIABLE) { - if ($this->last + 1 < $this->len && $this->str[++$this->last] === '@') { - // This is a system variable (e.g. `@@hostname`). - $token .= $this->str[$this->last++]; - $flags |= Token::FLAG_SYMBOL_SYSTEM; - } - } elseif ($flags & Token::FLAG_SYMBOL_PARAMETER) { - if ($token !== '?' && $this->last + 1 < $this->len) { - ++$this->last; - } - } else { - $token = ''; - } - - $str = null; - - if ($this->last < $this->len) { - $str = $this->parseString('`'); - - if ($str === null) { - $str = $this->parseUnknown(); - - if ($str === null && ! ($flags & Token::FLAG_SYMBOL_PARAMETER)) { - $this->error('Variable name was expected.', $this->str[$this->last], $this->last); - } - } - } - - if ($str !== null) { - $token .= $str->token; - } - - return new Token($token, Token::TYPE_SYMBOL, $flags); - } - - /** - * Parses unknown parts of the query. - * - * @return Token|null - */ - public function parseUnknown() - { - $token = $this->str[$this->last]; - if (Context::isSeparator($token)) { - return null; - } - - while (++$this->last < $this->len && ! Context::isSeparator($this->str[$this->last])) { - $token .= $this->str[$this->last]; - - // Test if end of token equals the current delimiter. If so, remove it from the token. - if (str_ends_with($token, $this->delimiter)) { - $token = substr($token, 0, -$this->delimiterLen); - $this->last -= $this->delimiterLen - 1; - break; - } - } - - --$this->last; - - return new Token($token); - } - - /** - * Parses the delimiter of the query. - * - * @return Token|null - */ - public function parseDelimiter() - { - $idx = 0; - - while ($idx < $this->delimiterLen && $this->last + $idx < $this->len) { - if ($this->delimiter[$idx] !== $this->str[$this->last + $idx]) { - return null; - } - - ++$idx; - } - - $this->last += $this->delimiterLen - 1; - - return new Token($this->delimiter, Token::TYPE_DELIMITER); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Parser.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Parser.php deleted file mode 100644 index 526461dc..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Parser.php +++ /dev/null @@ -1,635 +0,0 @@ - - */ - public static $STATEMENT_PARSERS = [ - // MySQL Utility Statements - 'DESCRIBE' => 'PhpMyAdmin\\SqlParser\\Statements\\ExplainStatement', - 'DESC' => 'PhpMyAdmin\\SqlParser\\Statements\\ExplainStatement', - 'EXPLAIN' => 'PhpMyAdmin\\SqlParser\\Statements\\ExplainStatement', - 'FLUSH' => '', - 'GRANT' => '', - 'HELP' => '', - 'SET PASSWORD' => '', - 'STATUS' => '', - 'USE' => '', - - // Table Maintenance Statements - // https://dev.mysql.com/doc/refman/5.7/en/table-maintenance-sql.html - 'ANALYZE' => 'PhpMyAdmin\\SqlParser\\Statements\\AnalyzeStatement', - 'BACKUP' => 'PhpMyAdmin\\SqlParser\\Statements\\BackupStatement', - 'CHECK' => 'PhpMyAdmin\\SqlParser\\Statements\\CheckStatement', - 'CHECKSUM' => 'PhpMyAdmin\\SqlParser\\Statements\\ChecksumStatement', - 'KILL' => 'PhpMyAdmin\\SqlParser\\Statements\\KillStatement', - 'OPTIMIZE' => 'PhpMyAdmin\\SqlParser\\Statements\\OptimizeStatement', - 'REPAIR' => 'PhpMyAdmin\\SqlParser\\Statements\\RepairStatement', - 'RESTORE' => 'PhpMyAdmin\\SqlParser\\Statements\\RestoreStatement', - - // Database Administration Statements - // https://dev.mysql.com/doc/refman/5.7/en/sql-syntax-server-administration.html - 'SET' => 'PhpMyAdmin\\SqlParser\\Statements\\SetStatement', - 'SHOW' => 'PhpMyAdmin\\SqlParser\\Statements\\ShowStatement', - - // Data Definition Statements. - // https://dev.mysql.com/doc/refman/5.7/en/sql-syntax-data-definition.html - 'ALTER' => 'PhpMyAdmin\\SqlParser\\Statements\\AlterStatement', - 'CREATE' => 'PhpMyAdmin\\SqlParser\\Statements\\CreateStatement', - 'DROP' => 'PhpMyAdmin\\SqlParser\\Statements\\DropStatement', - 'RENAME' => 'PhpMyAdmin\\SqlParser\\Statements\\RenameStatement', - 'TRUNCATE' => 'PhpMyAdmin\\SqlParser\\Statements\\TruncateStatement', - - // Data Manipulation Statements. - // https://dev.mysql.com/doc/refman/5.7/en/sql-syntax-data-manipulation.html - 'CALL' => 'PhpMyAdmin\\SqlParser\\Statements\\CallStatement', - 'DELETE' => 'PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement', - 'DO' => '', - 'HANDLER' => '', - 'INSERT' => 'PhpMyAdmin\\SqlParser\\Statements\\InsertStatement', - 'LOAD DATA' => 'PhpMyAdmin\\SqlParser\\Statements\\LoadStatement', - 'REPLACE' => 'PhpMyAdmin\\SqlParser\\Statements\\ReplaceStatement', - 'SELECT' => 'PhpMyAdmin\\SqlParser\\Statements\\SelectStatement', - 'UPDATE' => 'PhpMyAdmin\\SqlParser\\Statements\\UpdateStatement', - 'WITH' => 'PhpMyAdmin\\SqlParser\\Statements\\WithStatement', - - // Prepared Statements. - // https://dev.mysql.com/doc/refman/5.7/en/sql-syntax-prepared-statements.html - 'DEALLOCATE' => '', - 'EXECUTE' => '', - 'PREPARE' => '', - - // Transactional and Locking Statements - // https://dev.mysql.com/doc/refman/5.7/en/commit.html - 'BEGIN' => 'PhpMyAdmin\\SqlParser\\Statements\\TransactionStatement', - 'COMMIT' => 'PhpMyAdmin\\SqlParser\\Statements\\TransactionStatement', - 'ROLLBACK' => 'PhpMyAdmin\\SqlParser\\Statements\\TransactionStatement', - 'START TRANSACTION' => 'PhpMyAdmin\\SqlParser\\Statements\\TransactionStatement', - - 'PURGE' => 'PhpMyAdmin\\SqlParser\\Statements\\PurgeStatement', - - // Lock statements - // https://dev.mysql.com/doc/refman/5.7/en/lock-tables.html - 'LOCK' => 'PhpMyAdmin\\SqlParser\\Statements\\LockStatement', - 'UNLOCK' => 'PhpMyAdmin\\SqlParser\\Statements\\LockStatement', - ]; - - /** - * Array of classes that are used in parsing SQL components. - * - * @var array>> - * @psalm-var array}> - */ - public static $KEYWORD_PARSERS = [ - // This is not a proper keyword and was added here to help the - // formatter. - 'PARTITION BY' => [], - 'SUBPARTITION BY' => [], - - // This is not a proper keyword and was added here to help the - // builder. - '_OPTIONS' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\OptionsArray', - 'field' => 'options', - ], - '_END_OPTIONS' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\OptionsArray', - 'field' => 'end_options', - ], - '_GROUP_OPTIONS' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\OptionsArray', - 'field' => 'group_options', - ], - - 'INTERSECT' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\UnionKeyword', - 'field' => 'union', - ], - 'EXCEPT' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\UnionKeyword', - 'field' => 'union', - ], - 'UNION' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\UnionKeyword', - 'field' => 'union', - ], - 'UNION ALL' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\UnionKeyword', - 'field' => 'union', - ], - 'UNION DISTINCT' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\UnionKeyword', - 'field' => 'union', - ], - - // Actual clause parsers. - 'ALTER' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\Expression', - 'field' => 'table', - 'options' => ['parseField' => 'table'], - ], - 'ANALYZE' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\ExpressionArray', - 'field' => 'tables', - 'options' => ['parseField' => 'table'], - ], - 'BACKUP' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\ExpressionArray', - 'field' => 'tables', - 'options' => ['parseField' => 'table'], - ], - 'CALL' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\FunctionCall', - 'field' => 'call', - ], - 'CHECK' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\ExpressionArray', - 'field' => 'tables', - 'options' => ['parseField' => 'table'], - ], - 'CHECKSUM' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\ExpressionArray', - 'field' => 'tables', - 'options' => ['parseField' => 'table'], - ], - 'CROSS JOIN' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\JoinKeyword', - 'field' => 'join', - ], - 'DROP' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\ExpressionArray', - 'field' => 'fields', - 'options' => ['parseField' => 'table'], - ], - 'FORCE' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\IndexHint', - 'field' => 'index_hints', - ], - 'FROM' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\ExpressionArray', - 'field' => 'from', - 'options' => ['field' => 'table'], - ], - 'GROUP BY' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\GroupKeyword', - 'field' => 'group', - ], - 'HAVING' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\Condition', - 'field' => 'having', - ], - 'IGNORE' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\IndexHint', - 'field' => 'index_hints', - ], - 'INTO' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\IntoKeyword', - 'field' => 'into', - ], - 'JOIN' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\JoinKeyword', - 'field' => 'join', - ], - 'LEFT JOIN' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\JoinKeyword', - 'field' => 'join', - ], - 'LEFT OUTER JOIN' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\JoinKeyword', - 'field' => 'join', - ], - 'ON' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\Expression', - 'field' => 'table', - 'options' => ['parseField' => 'table'], - ], - 'RIGHT JOIN' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\JoinKeyword', - 'field' => 'join', - ], - 'RIGHT OUTER JOIN' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\JoinKeyword', - 'field' => 'join', - ], - 'INNER JOIN' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\JoinKeyword', - 'field' => 'join', - ], - 'FULL JOIN' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\JoinKeyword', - 'field' => 'join', - ], - 'FULL OUTER JOIN' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\JoinKeyword', - 'field' => 'join', - ], - 'NATURAL JOIN' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\JoinKeyword', - 'field' => 'join', - ], - 'NATURAL LEFT JOIN' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\JoinKeyword', - 'field' => 'join', - ], - 'NATURAL RIGHT JOIN' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\JoinKeyword', - 'field' => 'join', - ], - 'NATURAL LEFT OUTER JOIN' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\JoinKeyword', - 'field' => 'join', - ], - 'NATURAL RIGHT OUTER JOIN' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\JoinKeyword', - 'field' => 'join', - ], - 'STRAIGHT_JOIN' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\JoinKeyword', - 'field' => 'join', - ], - 'LIMIT' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\Limit', - 'field' => 'limit', - ], - 'OPTIMIZE' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\ExpressionArray', - 'field' => 'tables', - 'options' => ['parseField' => 'table'], - ], - 'ORDER BY' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\OrderKeyword', - 'field' => 'order', - ], - 'PARTITION' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\ArrayObj', - 'field' => 'partition', - ], - 'PROCEDURE' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\FunctionCall', - 'field' => 'procedure', - ], - 'RENAME' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\RenameOperation', - 'field' => 'renames', - ], - 'REPAIR' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\ExpressionArray', - 'field' => 'tables', - 'options' => ['parseField' => 'table'], - ], - 'RESTORE' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\ExpressionArray', - 'field' => 'tables', - 'options' => ['parseField' => 'table'], - ], - 'SET' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\SetOperation', - 'field' => 'set', - ], - 'SELECT' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\ExpressionArray', - 'field' => 'expr', - ], - 'TRUNCATE' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\Expression', - 'field' => 'table', - 'options' => ['parseField' => 'table'], - ], - 'UPDATE' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\ExpressionArray', - 'field' => 'tables', - 'options' => ['parseField' => 'table'], - ], - 'USE' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\IndexHint', - 'field' => 'index_hints', - ], - 'VALUE' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\Array2d', - 'field' => 'values', - ], - 'VALUES' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\Array2d', - 'field' => 'values', - ], - 'WHERE' => [ - 'class' => 'PhpMyAdmin\\SqlParser\\Components\\Condition', - 'field' => 'where', - ], - ]; - - /** - * The list of tokens that are parsed. - * - * @var TokensList|null - */ - public $list; - - /** - * List of statements parsed. - * - * @var Statement[] - */ - public $statements = []; - - /** - * The number of opened brackets. - * - * @var int - */ - public $brackets = 0; - - /** - * @param string|UtfString|TokensList|null $list the list of tokens to be parsed - * @param bool $strict whether strict mode should be enabled or not - */ - public function __construct($list = null, $strict = false) - { - if (is_string($list) || ($list instanceof UtfString)) { - $lexer = new Lexer($list, $strict); - $this->list = $lexer->list; - } elseif ($list instanceof TokensList) { - $this->list = $list; - } - - $this->strict = $strict; - - if ($list === null) { - return; - } - - $this->parse(); - } - - /** - * Builds the parse trees. - * - * @return void - * - * @throws ParserException - */ - public function parse() - { - /** - * Last transaction. - * - * @var TransactionStatement - */ - $lastTransaction = null; - - /** - * Last parsed statement. - * - * @var Statement - */ - $lastStatement = null; - - /** - * Union's type or false for no union. - * - * @var bool|string - */ - $unionType = false; - - /** - * The index of the last token from the last statement. - * - * @var int - */ - $prevLastIdx = -1; - - /** - * The list of tokens. - */ - $list = &$this->list; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // `DELIMITER` is not an actual statement and it requires - // special handling. - if (($token->type === Token::TYPE_NONE) && (strtoupper($token->token) === 'DELIMITER')) { - // Skipping to the end of this statement. - $list->getNextOfType(Token::TYPE_DELIMITER); - $prevLastIdx = $list->idx; - continue; - } - - // Counting the brackets around statements. - if ($token->value === '(') { - ++$this->brackets; - continue; - } - - // Statements can start with keywords only. - // Comments, whitespaces, etc. are ignored. - if ($token->type !== Token::TYPE_KEYWORD) { - if ( - ($token->type !== Token::TYPE_COMMENT) - && ($token->type !== Token::TYPE_WHITESPACE) - && ($token->type !== Token::TYPE_OPERATOR) // `(` and `)` - && ($token->type !== Token::TYPE_DELIMITER) - ) { - $this->error('Unexpected beginning of statement.', $token); - } - - continue; - } - - if ( - ($token->keyword === 'UNION') || - ($token->keyword === 'UNION ALL') || - ($token->keyword === 'UNION DISTINCT') || - ($token->keyword === 'EXCEPT') || - ($token->keyword === 'INTERSECT') - ) { - $unionType = $token->keyword; - continue; - } - - $lastIdx = $list->idx; - $statementName = null; - - if ($token->keyword === 'ANALYZE') { - ++$list->idx; // Skip ANALYZE - - $first = $list->getNextOfType(Token::TYPE_KEYWORD); - $second = $list->getNextOfType(Token::TYPE_KEYWORD); - - // ANALYZE keyword can be an indication of two cases: - // 1 - ANALYZE TABLE statements, in both MariaDB and MySQL - // 2 - Explain statement, in case of MariaDB https://mariadb.com/kb/en/explain-analyze/ - // We need to point case 2 to use the EXPLAIN Parser. - $statementName = 'EXPLAIN'; - if (($first && $first->keyword === 'TABLE') || ($second && $second->keyword === 'TABLE')) { - $statementName = 'ANALYZE'; - } - - $list->idx = $lastIdx; - } else { - // Checking if it is a known statement that can be parsed. - if (empty(static::$STATEMENT_PARSERS[$token->keyword])) { - if (! isset(static::$STATEMENT_PARSERS[$token->keyword])) { - // A statement is considered recognized if the parser - // is aware that it is a statement, but it does not have - // a parser for it yet. - $this->error('Unrecognized statement type.', $token); - } - - // Skipping to the end of this statement. - $list->getNextOfType(Token::TYPE_DELIMITER); - $prevLastIdx = $list->idx; - continue; - } - } - - /** - * The name of the class that is used for parsing. - * - * @var string - */ - $class = static::$STATEMENT_PARSERS[$statementName ?? $token->keyword]; - - /** - * Processed statement. - * - * @var Statement - */ - $statement = new $class($this, $this->list); - - // The first token that is a part of this token is the next token - // unprocessed by the previous statement. - // There might be brackets around statements and this shouldn't - // affect the parser - $statement->first = $prevLastIdx + 1; - - // Storing the index of the last token parsed and updating the old - // index. - $statement->last = $list->idx; - $prevLastIdx = $list->idx; - - // Handles unions. - if ( - ! empty($unionType) - && ($lastStatement instanceof SelectStatement) - && ($statement instanceof SelectStatement) - ) { - /* - * This SELECT statement. - * - * @var SelectStatement $statement - */ - - /* - * Last SELECT statement. - * - * @var SelectStatement $lastStatement - */ - $lastStatement->union[] = [ - $unionType, - $statement, - ]; - - // if there are no no delimiting brackets, the `ORDER` and - // `LIMIT` keywords actually belong to the first statement. - $lastStatement->order = $statement->order; - $lastStatement->limit = $statement->limit; - $statement->order = []; - $statement->limit = null; - - // The statement actually ends where the last statement in - // union ends. - $lastStatement->last = $statement->last; - - $unionType = false; - - // Validate clause order - $statement->validateClauseOrder($this, $list); - continue; - } - - // Handles transactions. - if ($statement instanceof TransactionStatement) { - /* - * @var TransactionStatement - */ - if ($statement->type === TransactionStatement::TYPE_BEGIN) { - $lastTransaction = $statement; - $this->statements[] = $statement; - } elseif ($statement->type === TransactionStatement::TYPE_END) { - if ($lastTransaction === null) { - // Even though an error occurred, the query is being - // saved. - $this->statements[] = $statement; - $this->error('No transaction was previously started.', $token); - } else { - $lastTransaction->end = $statement; - } - - $lastTransaction = null; - } - - // Validate clause order - $statement->validateClauseOrder($this, $list); - continue; - } - - // Validate clause order - $statement->validateClauseOrder($this, $list); - - // Finally, storing the statement. - if ($lastTransaction !== null) { - $lastTransaction->statements[] = $statement; - } else { - $this->statements[] = $statement; - } - - $lastStatement = $statement; - } - } - - /** - * Creates a new error log. - * - * @param string $msg the error message - * @param Token $token the token that produced the error - * @param int $code the code of the error - * - * @return void - * - * @throws ParserException throws the exception, if strict mode is enabled. - */ - public function error($msg, ?Token $token = null, $code = 0) - { - $error = new ParserException( - Translator::gettext($msg), - $token, - $code - ); - parent::error($error); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statement.php deleted file mode 100644 index d63d86a0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statement.php +++ /dev/null @@ -1,585 +0,0 @@ -> - * @psalm-var arrayfield`) was used in building. - */ - $built = []; - - /** - * Statement's clauses. - */ - $clauses = $this->getClauses(); - - foreach ($clauses as $clause) { - /** - * The name of the clause. - * - * @var string - */ - $name = $clause[0]; - - /** - * The type of the clause. - * - * @see self::$CLAUSES - * - * @var int - */ - $type = $clause[1]; - - /** - * The builder (parser) of this clause. - * - * @var Component - */ - $class = Parser::$KEYWORD_PARSERS[$name]['class']; - - /** - * The name of the field that is used as source for the builder. - * Same field is used to store the result of parsing. - * - * @var string - */ - $field = Parser::$KEYWORD_PARSERS[$name]['field']; - - // The field is empty, there is nothing to be built. - if (empty($this->$field)) { - continue; - } - - // Checking if this field was already built. - if ($type & 1) { - if (! empty($built[$field])) { - continue; - } - - $built[$field] = true; - } - - // Checking if the name of the clause should be added. - if ($type & 2) { - $query = trim($query) . ' ' . $name; - } - - // Checking if the result of the builder should be added. - if (! ($type & 1)) { - continue; - } - - $query = trim($query) . ' ' . $class::build($this->$field); - } - - return $query; - } - - /** - * Parses the statements defined by the tokens list. - * - * @param Parser $parser the instance that requests parsing - * @param TokensList $list the list of tokens to be parsed - * - * @return void - * - * @throws Exceptions\ParserException - */ - public function parse(Parser $parser, TokensList $list) - { - /** - * Array containing all list of clauses parsed. - * This is used to check for duplicates. - */ - $parsedClauses = []; - - // This may be corrected by the parser. - $this->first = $list->idx; - - /** - * Whether options were parsed or not. - * For statements that do not have any options this is set to `true` by - * default. - */ - $parsedOptions = empty(static::$OPTIONS); - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Checking if this closing bracket is the pair for a bracket - // outside the statement. - if (($token->value === ')') && ($parser->brackets > 0)) { - --$parser->brackets; - continue; - } - - // Only keywords are relevant here. Other parts of the query are - // processed in the functions below. - if ($token->type !== Token::TYPE_KEYWORD) { - if (($token->type !== Token::TYPE_COMMENT) && ($token->type !== Token::TYPE_WHITESPACE)) { - $parser->error('Unexpected token.', $token); - } - - continue; - } - - // Unions are parsed by the parser because they represent more than - // one statement. - if ( - ($token->keyword === 'UNION') || - ($token->keyword === 'UNION ALL') || - ($token->keyword === 'UNION DISTINCT') || - ($token->keyword === 'EXCEPT') || - ($token->keyword === 'INTERSECT') - ) { - break; - } - - $lastIdx = $list->idx; - - // ON DUPLICATE KEY UPDATE ... - // has to be parsed in parent statement (INSERT or REPLACE) - // so look for it and break - if ($this instanceof Statements\SelectStatement && $token->value === 'ON') { - ++$list->idx; // Skip ON - - // look for ON DUPLICATE KEY UPDATE - $first = $list->getNextOfType(Token::TYPE_KEYWORD); - $second = $list->getNextOfType(Token::TYPE_KEYWORD); - $third = $list->getNextOfType(Token::TYPE_KEYWORD); - - if ( - $first && $second && $third - && $first->value === 'DUPLICATE' - && $second->value === 'KEY' - && $third->value === 'UPDATE' - ) { - $list->idx = $lastIdx; - break; - } - } - - $list->idx = $lastIdx; - - /** - * The name of the class that is used for parsing. - * - * @var Component - */ - $class = null; - - /** - * The name of the field where the result of the parsing is stored. - * - * @var string - */ - $field = null; - - /** - * Parser's options. - */ - $options = []; - - // Looking for duplicated clauses. - if ( - ! empty(Parser::$KEYWORD_PARSERS[$token->value]) - || ! empty(Parser::$STATEMENT_PARSERS[$token->value]) - ) { - if (! empty($parsedClauses[$token->value])) { - $parser->error('This type of clause was previously parsed.', $token); - break; - } - - $parsedClauses[$token->value] = true; - } - - // Checking if this is the beginning of a clause. - // Fix Issue #221: As `truncate` is not a keyword - // but it might be the beginning of a statement of truncate, - // so let the value use the keyword field for truncate type. - $tokenValue = in_array($token->keyword, ['TRUNCATE']) ? $token->keyword : $token->value; - if (! empty(Parser::$KEYWORD_PARSERS[$tokenValue]) && $list->idx < $list->count) { - $class = Parser::$KEYWORD_PARSERS[$tokenValue]['class']; - $field = Parser::$KEYWORD_PARSERS[$tokenValue]['field']; - if (! empty(Parser::$KEYWORD_PARSERS[$tokenValue]['options'])) { - $options = Parser::$KEYWORD_PARSERS[$tokenValue]['options']; - } - } - - // Checking if this is the beginning of the statement. - if (! empty(Parser::$STATEMENT_PARSERS[$token->keyword])) { - if ( - ! empty(static::$CLAUSES) // Undefined for some statements. - && empty(static::$CLAUSES[$token->value]) - ) { - // Some keywords (e.g. `SET`) may be the beginning of a - // statement and a clause. - // If such keyword was found and it cannot be a clause of - // this statement it means it is a new statement, but no - // delimiter was found between them. - $parser->error( - 'A new statement was found, but no delimiter between it and the previous one.', - $token - ); - break; - } - - if (! $parsedOptions) { - if (empty(static::$OPTIONS[$token->value])) { - // Skipping keyword because if it is not a option. - ++$list->idx; - } - - $this->options = OptionsArray::parse($parser, $list, static::$OPTIONS); - $parsedOptions = true; - } - } elseif ($class === null) { - if ($this instanceof Statements\SelectStatement && $token->value === 'WITH ROLLUP') { - // Handle group options in Select statement - // See Statements\SelectStatement::$GROUP_OPTIONS - $this->group_options = OptionsArray::parse($parser, $list, static::$GROUP_OPTIONS); - } elseif ( - $this instanceof Statements\SelectStatement - && ($token->value === 'FOR UPDATE' - || $token->value === 'LOCK IN SHARE MODE') - ) { - // Handle special end options in Select statement - // See Statements\SelectStatement::$END_OPTIONS - $this->end_options = OptionsArray::parse($parser, $list, static::$END_OPTIONS); - } elseif ( - $this instanceof Statements\SetStatement - && ($token->value === 'COLLATE' - || $token->value === 'DEFAULT') - ) { - // Handle special end options in SET statement - // See Statements\SetStatement::$END_OPTIONS - $this->end_options = OptionsArray::parse($parser, $list, static::$END_OPTIONS); - } else { - // There is no parser for this keyword and isn't the beginning - // of a statement (so no options) either. - $parser->error('Unrecognized keyword.', $token); - continue; - } - } - - $this->before($parser, $list, $token); - - // Parsing this keyword. - if ($class !== null) { - // We can't parse keyword at the end of statement - if ($list->idx >= $list->count) { - $parser->error('Keyword at end of statement.', $token); - continue; - } - - ++$list->idx; // Skipping keyword or last option. - $this->$field = $class::parse($parser, $list, $options); - } - - $this->after($parser, $list, $token); - } - - // This may be corrected by the parser. - $this->last = --$list->idx; // Go back to last used token. - } - - /** - * Function called before the token is processed. - * - * @param Parser $parser the instance that requests parsing - * @param TokensList $list the list of tokens to be parsed - * @param Token $token the token that is being parsed - * - * @return void - */ - public function before(Parser $parser, TokensList $list, Token $token) - { - } - - /** - * Function called after the token was processed. - * - * @param Parser $parser the instance that requests parsing - * @param TokensList $list the list of tokens to be parsed - * @param Token $token the token that is being parsed - * - * @return void - */ - public function after(Parser $parser, TokensList $list, Token $token) - { - } - - /** - * Gets the clauses of this statement. - * - * @return array> - * @psalm-return array - */ - public function getClauses() - { - return static::$CLAUSES; - } - - /** - * Gets the clause order of this statement as an array - * with clause as key and index as value. - * - * @return array - */ - public function getClauseOrder(): array - { - $clauses = []; - foreach (array_keys($this->getClauses()) as $key) { - if ($key === '_END_OPTIONS') { - if (static::$END_OPTIONS !== []) { - array_push($clauses, ...array_keys(static::$END_OPTIONS)); - } - } else { - $clauses[] = $key; - } - } - - return array_flip($clauses); - } - - /** - * Builds the string representation of this statement. - * - * @see static::build - * - * @return string - */ - public function __toString() - { - return $this->build(); - } - - /** - * Validates the order of the clauses in parsed statement - * Ideally this should be called after successfully - * completing the parsing of each statement. - * - * @param Parser $parser the instance that requests parsing - * @param TokensList $list the list of tokens to be parsed - * - * @return bool - * - * @throws Exceptions\ParserException - */ - public function validateClauseOrder($parser, $list) - { - $clauses = array_flip(array_keys($this->getClauses())); - - if (empty($clauses) || count($clauses) === 0) { - return true; - } - - $minIdx = -1; - - /** - * For tracking JOIN clauses in a query - * = 0 - JOIN not found till now - * > 0 - Index of first JOIN clause in the statement. - * - * @var int - */ - $minJoin = 0; - - /** - * For tracking JOIN clauses in a query - * = 0 - JOIN not found till now - * > 0 - Index of last JOIN clause - * (which appears together with other JOINs) - * in the statement. - * - * @var int - */ - $maxJoin = 0; - - $error = 0; - $lastIdx = 0; - foreach ($clauses as $clauseType => $index) { - $clauseStartIdx = Utils\Query::getClauseStartOffset($this, $list, $clauseType); - - if ( - $clauseStartIdx !== -1 - && $this instanceof Statements\SelectStatement - && ($clauseType === 'FORCE' - || $clauseType === 'IGNORE' - || $clauseType === 'USE') - ) { - // TODO: ordering of clauses in a SELECT statement with - // Index hints is not supported - return true; - } - - // Handle ordering of Multiple Joins in a query - if ($clauseStartIdx !== -1) { - if ($minJoin === 0 && stripos($clauseType, 'JOIN')) { - // First JOIN clause is detected - $minJoin = $maxJoin = $clauseStartIdx; - } elseif ($minJoin !== 0 && ! stripos($clauseType, 'JOIN')) { - // After a previous JOIN clause, a non-JOIN clause has been detected - $maxJoin = $lastIdx; - } elseif ($maxJoin < $clauseStartIdx && stripos($clauseType, 'JOIN')) { - $error = 1; - } - } - - if ($clauseStartIdx !== -1 && $clauseStartIdx < $minIdx) { - if ($minJoin === 0 || $error === 1) { - $token = $list->tokens[$clauseStartIdx]; - $parser->error('Unexpected ordering of clauses.', $token); - - return false; - } - - $minIdx = $clauseStartIdx; - } elseif ($clauseStartIdx !== -1) { - $minIdx = $clauseStartIdx; - } - - $lastIdx = $clauseStartIdx !== -1 ? $clauseStartIdx : $lastIdx; - } - - return true; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/AlterStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/AlterStatement.php deleted file mode 100644 index 3c13f576..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/AlterStatement.php +++ /dev/null @@ -1,162 +0,0 @@ -> - * @psalm-var array 1, - 'OFFLINE' => 1, - 'IGNORE' => 2, - // `DEFINER` is also used for `ALTER EVENT` - 'DEFINER' => [ - 2, - 'expr=', - ], - 'DATABASE' => 3, - 'EVENT' => 3, - 'FUNCTION' => 3, - 'PROCEDURE' => 3, - 'SERVER' => 3, - 'TABLE' => 3, - 'TABLESPACE' => 3, - 'USER' => 3, - 'VIEW' => 3, - ]; - - /** - * @param Parser $parser the instance that requests parsing - * @param TokensList $list the list of tokens to be parsed - */ - public function parse(Parser $parser, TokensList $list) - { - ++$list->idx; // Skipping `ALTER`. - $parsedOptions = OptionsArray::parse($parser, $list, static::$OPTIONS); - if ($parsedOptions->isEmpty()) { - $parser->error('Unrecognized alter operation.', $list->tokens[$list->idx]); - - return; - } - - $this->options = $parsedOptions; - ++$list->idx; - - // Parsing affected table. - $this->table = Expression::parse( - $parser, - $list, - [ - 'parseField' => 'table', - 'breakOnAlias' => true, - ] - ); - ++$list->idx; // Skipping field. - - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 -----------------[ alter operation ]-----------------> 1 - * - * 1 -------------------------[ , ]-----------------------> 0 - * - * @var int - */ - $state = 0; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - continue; - } - - if ($state === 0) { - $options = []; - if ($this->options->has('DATABASE')) { - $options = AlterOperation::$DB_OPTIONS; - } elseif ($this->options->has('TABLE')) { - $options = AlterOperation::$TABLE_OPTIONS; - } elseif ($this->options->has('VIEW')) { - $options = AlterOperation::$VIEW_OPTIONS; - } elseif ($this->options->has('USER')) { - $options = AlterOperation::$USER_OPTIONS; - } elseif ($this->options->has('EVENT')) { - $options = AlterOperation::$EVENT_OPTIONS; - } elseif ($this->options->has('FUNCTION') || $this->options->has('PROCEDURE')) { - $options = AlterOperation::$ROUTINE_OPTIONS; - } - - $this->altered[] = AlterOperation::parse($parser, $list, $options); - $state = 1; - } elseif ($state === 1) { - if (($token->type === Token::TYPE_OPERATOR) && ($token->value === ',')) { - $state = 0; - } - } - } - } - - /** - * @return string - */ - public function build() - { - $tmp = []; - foreach ($this->altered as $altered) { - $tmp[] = $altered::build($altered); - } - - return trim( - 'ALTER ' . OptionsArray::build($this->options) - . ' ' . Expression::build($this->table) - . ' ' . implode(', ', $tmp) - ); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/AnalyzeStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/AnalyzeStatement.php deleted file mode 100644 index d61f2324..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/AnalyzeStatement.php +++ /dev/null @@ -1,37 +0,0 @@ -> - * @psalm-var array 1, - - 'NO_WRITE_TO_BINLOG' => 2, - 'LOCAL' => 3, - ]; - - /** - * Analyzed tables. - * - * @var Expression[]|null - */ - public $tables; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/BackupStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/BackupStatement.php deleted file mode 100644 index d7bccd20..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/BackupStatement.php +++ /dev/null @@ -1,31 +0,0 @@ -> - * @psalm-var array 1, - - 'NO_WRITE_TO_BINLOG' => 2, - 'LOCAL' => 3, - - 'TO' => [ - 4, - 'var', - ], - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/CallStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/CallStatement.php deleted file mode 100644 index 245a0a67..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/CallStatement.php +++ /dev/null @@ -1,40 +0,0 @@ -call->name . '(' - . ($this->call->parameters ? implode(',', $this->call->parameters->raw) : '') . ')'; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/CheckStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/CheckStatement.php deleted file mode 100644 index 173da0e6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/CheckStatement.php +++ /dev/null @@ -1,30 +0,0 @@ -> - * @psalm-var array 1, - - 'FOR UPGRADE' => 2, - 'QUICK' => 3, - 'FAST' => 4, - 'MEDIUM' => 5, - 'EXTENDED' => 6, - 'CHANGED' => 7, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/ChecksumStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/ChecksumStatement.php deleted file mode 100644 index 3294b79f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/ChecksumStatement.php +++ /dev/null @@ -1,26 +0,0 @@ -> - * @psalm-var array 1, - - 'QUICK' => 2, - 'EXTENDED' => 3, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/CreateStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/CreateStatement.php deleted file mode 100644 index 06100373..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/CreateStatement.php +++ /dev/null @@ -1,805 +0,0 @@ -> - * @psalm-var array 1, - - // CREATE VIEW - 'OR REPLACE' => 2, - 'ALGORITHM' => [ - 3, - 'var=', - ], - // `DEFINER` is also used for `CREATE FUNCTION / PROCEDURE` - 'DEFINER' => [ - 4, - 'expr=', - ], - // Used in `CREATE VIEW` - 'SQL SECURITY' => [ - 5, - 'var', - ], - - 'DATABASE' => 6, - 'EVENT' => 6, - 'FUNCTION' => 6, - 'INDEX' => 6, - 'UNIQUE INDEX' => 6, - 'FULLTEXT INDEX' => 6, - 'SPATIAL INDEX' => 6, - 'PROCEDURE' => 6, - 'SERVER' => 6, - 'TABLE' => 6, - 'TABLESPACE' => 6, - 'TRIGGER' => 6, - 'USER' => 6, - 'VIEW' => 6, - 'SCHEMA' => 6, - - // CREATE TABLE - 'IF NOT EXISTS' => 7, - ]; - - /** - * All database options. - * - * @var array> - * @psalm-var array [ - 1, - 'var=', - ], - 'CHARSET' => [ - 1, - 'var=', - ], - 'DEFAULT CHARACTER SET' => [ - 1, - 'var=', - ], - 'DEFAULT CHARSET' => [ - 1, - 'var=', - ], - 'DEFAULT COLLATE' => [ - 2, - 'var=', - ], - 'COLLATE' => [ - 2, - 'var=', - ], - ]; - - /** - * All table options. - * - * @var array> - * @psalm-var array [ - 1, - 'var=', - ], - 'AUTO_INCREMENT' => [ - 2, - 'var=', - ], - 'AVG_ROW_LENGTH' => [ - 3, - 'var', - ], - 'CHARACTER SET' => [ - 4, - 'var=', - ], - 'CHARSET' => [ - 4, - 'var=', - ], - 'DEFAULT CHARACTER SET' => [ - 4, - 'var=', - ], - 'DEFAULT CHARSET' => [ - 4, - 'var=', - ], - 'CHECKSUM' => [ - 5, - 'var', - ], - 'DEFAULT COLLATE' => [ - 6, - 'var=', - ], - 'COLLATE' => [ - 6, - 'var=', - ], - 'COMMENT' => [ - 7, - 'var=', - ], - 'CONNECTION' => [ - 8, - 'var', - ], - 'DATA DIRECTORY' => [ - 9, - 'var', - ], - 'DELAY_KEY_WRITE' => [ - 10, - 'var', - ], - 'INDEX DIRECTORY' => [ - 11, - 'var', - ], - 'INSERT_METHOD' => [ - 12, - 'var', - ], - 'KEY_BLOCK_SIZE' => [ - 13, - 'var', - ], - 'MAX_ROWS' => [ - 14, - 'var', - ], - 'MIN_ROWS' => [ - 15, - 'var', - ], - 'PACK_KEYS' => [ - 16, - 'var', - ], - 'PASSWORD' => [ - 17, - 'var', - ], - 'ROW_FORMAT' => [ - 18, - 'var', - ], - 'TABLESPACE' => [ - 19, - 'var', - ], - 'STORAGE' => [ - 20, - 'var', - ], - 'UNION' => [ - 21, - 'var', - ], - 'PAGE_COMPRESSED' => [ - 22, - 'var', - ], - 'PAGE_COMPRESSION_LEVEL' => [ - 23, - 'var', - ], - ]; - - /** - * All function options. - * - * @var array> - * @psalm-var array [ - 2, - 'var', - ], - 'FUNCTION' => [ - 3, - 'var=', - ], - 'PROCEDURE' => [ - 3, - 'var=', - ], - 'CONTAINS SQL' => 4, - 'NO SQL' => 4, - 'READS SQL DATA' => 4, - 'MODIFIES SQL DATA' => 4, - 'SQL SECURITY' => [ - 6, - 'var', - ], - 'LANGUAGE' => [ - 7, - 'var', - ], - 'COMMENT' => [ - 8, - 'var', - ], - - 'CREATE' => 1, - 'DETERMINISTIC' => 2, - ]; - - /** - * All trigger options. - * - * @var array> - * @psalm-var array 1, - 'AFTER' => 1, - 'INSERT' => 2, - 'UPDATE' => 2, - 'DELETE' => 2, - ]; - - /** - * The name of the entity that is created. - * - * Used by all `CREATE` statements. - * - * @var Expression|null - */ - public $name; - - /** - * The options of the entity (table, procedure, function, etc.). - * - * Used by `CREATE TABLE`, `CREATE FUNCTION` and `CREATE PROCEDURE`. - * - * @see static::$TABLE_OPTIONS - * @see static::$FUNC_OPTIONS - * @see static::$TRIGGER_OPTIONS - * - * @var OptionsArray|null - */ - public $entityOptions; - - /** - * If `CREATE TABLE`, a list of columns and keys. - * If `CREATE VIEW`, a list of columns. - * - * Used by `CREATE TABLE` and `CREATE VIEW`. - * - * @var CreateDefinition[]|ArrayObj|null - */ - public $fields; - - /** - * If `CREATE TABLE WITH`. - * If `CREATE TABLE AS WITH`. - * If `CREATE VIEW AS WITH`. - * - * Used by `CREATE TABLE`, `CREATE VIEW` - * - * @var WithStatement|null - */ - public $with; - - /** - * If `CREATE TABLE ... SELECT`. - * If `CREATE VIEW AS ` ... SELECT`. - * - * Used by `CREATE TABLE`, `CREATE VIEW` - * - * @var SelectStatement|null - */ - public $select; - - /** - * If `CREATE TABLE ... LIKE`. - * - * Used by `CREATE TABLE` - * - * @var Expression|null - */ - public $like; - - /** - * Expression used for partitioning. - * - * @var string|null - */ - public $partitionBy; - - /** - * The number of partitions. - * - * @var int|null - */ - public $partitionsNum; - - /** - * Expression used for subpartitioning. - * - * @var string|null - */ - public $subpartitionBy; - - /** - * The number of subpartitions. - * - * @var int|null - */ - public $subpartitionsNum; - - /** - * The partition of the new table. - * - * @var PartitionDefinition[]|null - */ - public $partitions; - - /** - * If `CREATE TRIGGER` the name of the table. - * - * Used by `CREATE TRIGGER`. - * - * @var Expression|null - */ - public $table; - - /** - * The return data type of this routine. - * - * Used by `CREATE FUNCTION`. - * - * @var DataType|null - */ - public $return; - - /** - * The parameters of this routine. - * - * Used by `CREATE FUNCTION` and `CREATE PROCEDURE`. - * - * @var ParameterDefinition[]|null - */ - public $parameters; - - /** - * The body of this function or procedure. - * For views, it is the select statement that creates the view. - * Used by `CREATE FUNCTION`, `CREATE PROCEDURE` and `CREATE VIEW`. - * - * @var Token[]|string - */ - public $body = []; - - /** - * @return string - */ - public function build() - { - $fields = ''; - if (! empty($this->fields)) { - if (is_array($this->fields)) { - $fields = CreateDefinition::build($this->fields) . ' '; - } elseif ($this->fields instanceof ArrayObj) { - $fields = ArrayObj::build($this->fields); - } - } - - if ($this->options->has('DATABASE') || $this->options->has('SCHEMA')) { - return 'CREATE ' - . OptionsArray::build($this->options) . ' ' - . Expression::build($this->name) . ' ' - . OptionsArray::build($this->entityOptions); - } - - if ($this->options->has('TABLE')) { - if ($this->select !== null) { - return 'CREATE ' - . OptionsArray::build($this->options) . ' ' - . Expression::build($this->name) . ' ' - . $this->select->build(); - } - - if ($this->like !== null) { - return 'CREATE ' - . OptionsArray::build($this->options) . ' ' - . Expression::build($this->name) . ' LIKE ' - . Expression::build($this->like); - } - - if ($this->with !== null) { - return 'CREATE ' - . OptionsArray::build($this->options) . ' ' - . Expression::build($this->name) . ' ' - . $this->with->build(); - } - - $partition = ''; - - if (! empty($this->partitionBy)) { - $partition .= "\nPARTITION BY " . $this->partitionBy; - } - - if (! empty($this->partitionsNum)) { - $partition .= "\nPARTITIONS " . $this->partitionsNum; - } - - if (! empty($this->subpartitionBy)) { - $partition .= "\nSUBPARTITION BY " . $this->subpartitionBy; - } - - if (! empty($this->subpartitionsNum)) { - $partition .= "\nSUBPARTITIONS " . $this->subpartitionsNum; - } - - if (! empty($this->partitions)) { - $partition .= "\n" . PartitionDefinition::build($this->partitions); - } - - return 'CREATE ' - . OptionsArray::build($this->options) . ' ' - . Expression::build($this->name) . ' ' - . $fields - . OptionsArray::build($this->entityOptions) - . $partition; - } elseif ($this->options->has('VIEW')) { - $builtStatement = ''; - if ($this->select !== null) { - $builtStatement = $this->select->build(); - } elseif ($this->with !== null) { - $builtStatement = $this->with->build(); - } - - return 'CREATE ' - . OptionsArray::build($this->options) . ' ' - . Expression::build($this->name) . ' ' - . $fields . ' AS ' . $builtStatement - . (! empty($this->body) ? TokensList::build($this->body) : '') . ' ' - . OptionsArray::build($this->entityOptions); - } elseif ($this->options->has('TRIGGER')) { - return 'CREATE ' - . OptionsArray::build($this->options) . ' ' - . Expression::build($this->name) . ' ' - . OptionsArray::build($this->entityOptions) . ' ' - . 'ON ' . Expression::build($this->table) . ' ' - . 'FOR EACH ROW ' . TokensList::build($this->body); - } elseif ($this->options->has('PROCEDURE') || $this->options->has('FUNCTION')) { - $tmp = ''; - if ($this->options->has('FUNCTION')) { - $tmp = 'RETURNS ' . DataType::build($this->return); - } - - return 'CREATE ' - . OptionsArray::build($this->options) . ' ' - . Expression::build($this->name) . ' ' - . ParameterDefinition::build($this->parameters) . ' ' - . $tmp . ' ' . OptionsArray::build($this->entityOptions) . ' ' - . TokensList::build($this->body); - } - - return 'CREATE ' - . OptionsArray::build($this->options) . ' ' - . Expression::build($this->name) . ' ' - . TokensList::build($this->body); - } - - /** - * @param Parser $parser the instance that requests parsing - * @param TokensList $list the list of tokens to be parsed - */ - public function parse(Parser $parser, TokensList $list) - { - ++$list->idx; // Skipping `CREATE`. - - // Parsing options. - $this->options = OptionsArray::parse($parser, $list, static::$OPTIONS); - ++$list->idx; // Skipping last option. - - $isDatabase = $this->options->has('DATABASE') || $this->options->has('SCHEMA'); - $fieldName = $isDatabase ? 'database' : 'table'; - - // Parsing the field name. - $this->name = Expression::parse( - $parser, - $list, - [ - 'parseField' => $fieldName, - 'breakOnAlias' => true, - ] - ); - - if (! isset($this->name) || ($this->name === '')) { - $parser->error('The name of the entity was expected.', $list->tokens[$list->idx]); - } else { - ++$list->idx; // Skipping field. - } - - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - $nextidx = $list->idx + 1; - while ($nextidx < $list->count && $list->tokens[$nextidx]->type === Token::TYPE_WHITESPACE) { - ++$nextidx; - } - - if ($isDatabase) { - $this->entityOptions = OptionsArray::parse($parser, $list, static::$DB_OPTIONS); - } elseif ($this->options->has('TABLE')) { - if (($token->type === Token::TYPE_KEYWORD) && ($token->keyword === 'SELECT')) { - /* CREATE TABLE ... SELECT */ - $this->select = new SelectStatement($parser, $list); - } elseif ($token->type === Token::TYPE_KEYWORD && ($token->keyword === 'WITH')) { - /* CREATE TABLE WITH */ - $this->with = new WithStatement($parser, $list); - } elseif ( - ($token->type === Token::TYPE_KEYWORD) && ($token->keyword === 'AS') - && ($list->tokens[$nextidx]->type === Token::TYPE_KEYWORD) - ) { - if ($list->tokens[$nextidx]->value === 'SELECT') { - /* CREATE TABLE ... AS SELECT */ - $list->idx = $nextidx; - $this->select = new SelectStatement($parser, $list); - } elseif ($list->tokens[$nextidx]->value === 'WITH') { - /* CREATE TABLE WITH */ - $list->idx = $nextidx; - $this->with = new WithStatement($parser, $list); - } - } elseif ($token->type === Token::TYPE_KEYWORD && $token->keyword === 'LIKE') { - /* CREATE TABLE `new_tbl` LIKE 'orig_tbl' */ - $list->idx = $nextidx; - $this->like = Expression::parse( - $parser, - $list, - [ - 'parseField' => 'table', - 'breakOnAlias' => true, - ] - ); - // The 'LIKE' keyword was found, but no table_name was found next to it - if ($this->like === null) { - $parser->error('A table name was expected.', $list->tokens[$list->idx]); - } - } else { - $this->fields = CreateDefinition::parse($parser, $list); - if (empty($this->fields)) { - $parser->error('At least one column definition was expected.', $list->tokens[$list->idx]); - } - - ++$list->idx; - - $this->entityOptions = OptionsArray::parse($parser, $list, static::$TABLE_OPTIONS); - - /** - * The field that is being filled (`partitionBy` or - * `subpartitionBy`). - * - * @var string - */ - $field = null; - - /** - * The number of brackets. `false` means no bracket was found - * previously. At least one bracket is required to validate the - * expression. - * - * @var int|bool - */ - $brackets = false; - - /* - * Handles partitions. - */ - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping comments. - if ($token->type === Token::TYPE_COMMENT) { - continue; - } - - if (($token->type === Token::TYPE_KEYWORD) && ($token->keyword === 'PARTITION BY')) { - $field = 'partitionBy'; - $brackets = false; - } elseif (($token->type === Token::TYPE_KEYWORD) && ($token->keyword === 'SUBPARTITION BY')) { - $field = 'subpartitionBy'; - $brackets = false; - } elseif (($token->type === Token::TYPE_KEYWORD) && ($token->keyword === 'PARTITIONS')) { - $token = $list->getNextOfType(Token::TYPE_NUMBER); - --$list->idx; // `getNextOfType` also advances one position. - $this->partitionsNum = $token->value; - } elseif (($token->type === Token::TYPE_KEYWORD) && ($token->keyword === 'SUBPARTITIONS')) { - $token = $list->getNextOfType(Token::TYPE_NUMBER); - --$list->idx; // `getNextOfType` also advances one position. - $this->subpartitionsNum = $token->value; - } elseif (! empty($field)) { - /* - * Handling the content of `PARTITION BY` and `SUBPARTITION BY`. - */ - - // Counting brackets. - if ($token->type === Token::TYPE_OPERATOR) { - if ($token->value === '(') { - // This is used instead of `++$brackets` because, - // initially, `$brackets` is `false` cannot be - // incremented. - $brackets += 1; - } elseif ($token->value === ')') { - --$brackets; - } - } - - // Building the expression used for partitioning. - $this->$field .= $token->type === Token::TYPE_WHITESPACE ? ' ' : $token->token; - - // Last bracket was read, the expression ended. - // Comparing with `0` and not `false`, because `false` means - // that no bracket was found and at least one must is - // required. - if ($brackets === 0) { - $this->$field = trim($this->$field); - $field = null; - } - } elseif (($token->type === Token::TYPE_OPERATOR) && ($token->value === '(')) { - if (! empty($this->partitionBy)) { - $this->partitions = ArrayObj::parse( - $parser, - $list, - ['type' => 'PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition'] - ); - } - - break; - } - } - } - } elseif ($this->options->has('PROCEDURE') || $this->options->has('FUNCTION')) { - $this->parameters = ParameterDefinition::parse($parser, $list); - if ($this->options->has('FUNCTION')) { - $prevToken = $token; - $token = $list->getNextOfType(Token::TYPE_KEYWORD); - if ($token === null || $token->keyword !== 'RETURNS') { - $parser->error('A "RETURNS" keyword was expected.', $token ?? $prevToken); - } else { - ++$list->idx; - $this->return = DataType::parse($parser, $list); - } - } - - ++$list->idx; - - $this->entityOptions = OptionsArray::parse($parser, $list, static::$FUNC_OPTIONS); - ++$list->idx; - - for (; $list->idx < $list->count; ++$list->idx) { - $token = $list->tokens[$list->idx]; - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - $this->body[] = $token; - } - } elseif ($this->options->has('VIEW')) { - /** @var Token $token */ - $token = $list->getNext(); // Skipping whitespaces and comments. - - // Parsing columns list. - if (($token->type === Token::TYPE_OPERATOR) && ($token->value === '(')) { - --$list->idx; // getNext() also goes forward one field. - $this->fields = ArrayObj::parse($parser, $list); - ++$list->idx; // Skipping last token from the array. - $list->getNext(); - } - - // Parsing the SELECT expression if the view started with it. - if ( - $token->type === Token::TYPE_KEYWORD - && $token->keyword === 'AS' - && $list->tokens[$nextidx]->type === Token::TYPE_KEYWORD - ) { - if ($list->tokens[$nextidx]->value === 'SELECT') { - $list->idx = $nextidx; - $this->select = new SelectStatement($parser, $list); - ++$list->idx; // Skipping last token from the select. - } elseif ($list->tokens[$nextidx]->value === 'WITH') { - ++$list->idx; - $this->with = new WithStatement($parser, $list); - } - } - - // Parsing all other tokens - for (; $list->idx < $list->count; ++$list->idx) { - $token = $list->tokens[$list->idx]; - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - $this->body[] = $token; - } - } elseif ($this->options->has('TRIGGER')) { - // Parsing the time and the event. - $this->entityOptions = OptionsArray::parse($parser, $list, static::$TRIGGER_OPTIONS); - ++$list->idx; - - $list->getNextOfTypeAndValue(Token::TYPE_KEYWORD, 'ON'); - ++$list->idx; // Skipping `ON`. - - // Parsing the name of the table. - $this->table = Expression::parse( - $parser, - $list, - [ - 'parseField' => 'table', - 'breakOnAlias' => true, - ] - ); - ++$list->idx; - - $list->getNextOfTypeAndValue(Token::TYPE_KEYWORD, 'FOR EACH ROW'); - ++$list->idx; // Skipping `FOR EACH ROW`. - - for (; $list->idx < $list->count; ++$list->idx) { - $token = $list->tokens[$list->idx]; - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - $this->body[] = $token; - } - } else { - for (; $list->idx < $list->count; ++$list->idx) { - $token = $list->tokens[$list->idx]; - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - $this->body[] = $token; - } - } - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/DeleteStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/DeleteStatement.php deleted file mode 100644 index 75a8c293..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/DeleteStatement.php +++ /dev/null @@ -1,374 +0,0 @@ -> - * @psalm-var array 1, - 'QUICK' => 2, - 'IGNORE' => 3, - ]; - - /** - * The clauses of this statement, in order. - * - * @see Statement::$CLAUSES - * - * @var array> - * @psalm-var array - */ - public static $CLAUSES = [ - 'DELETE' => [ - 'DELETE', - 2, - ], - // Used for options. - '_OPTIONS' => [ - '_OPTIONS', - 1, - ], - 'FROM' => [ - 'FROM', - 3, - ], - 'PARTITION' => [ - 'PARTITION', - 3, - ], - 'USING' => [ - 'USING', - 3, - ], - 'WHERE' => [ - 'WHERE', - 3, - ], - 'ORDER BY' => [ - 'ORDER BY', - 3, - ], - 'LIMIT' => [ - 'LIMIT', - 3, - ], - ]; - - /** - * Table(s) used as sources for this statement. - * - * @var Expression[]|null - */ - public $from; - - /** - * Joins. - * - * @var JoinKeyword[]|null - */ - public $join; - - /** - * Tables used as sources for this statement. - * - * @var Expression[]|null - */ - public $using; - - /** - * Columns used in this statement. - * - * @var Expression[]|null - */ - public $columns; - - /** - * Partitions used as source for this statement. - * - * @var ArrayObj|null - */ - public $partition; - - /** - * Conditions used for filtering each row of the result set. - * - * @var Condition[]|null - */ - public $where; - - /** - * Specifies the order of the rows in the result set. - * - * @var OrderKeyword[]|null - */ - public $order; - - /** - * Conditions used for limiting the size of the result set. - * - * @var Limit|null - */ - public $limit; - - /** - * @return string - */ - public function build() - { - $ret = 'DELETE ' . OptionsArray::build($this->options); - - if ($this->columns !== null && count($this->columns) > 0) { - $ret .= ' ' . ExpressionArray::build($this->columns); - } - - if ($this->from !== null && count($this->from) > 0) { - $ret .= ' FROM ' . ExpressionArray::build($this->from); - } - - if ($this->join !== null && count($this->join) > 0) { - $ret .= ' ' . JoinKeyword::build($this->join); - } - - if ($this->using !== null && count($this->using) > 0) { - $ret .= ' USING ' . ExpressionArray::build($this->using); - } - - if ($this->where !== null && count($this->where) > 0) { - $ret .= ' WHERE ' . Condition::build($this->where); - } - - if ($this->order !== null && count($this->order) > 0) { - $ret .= ' ORDER BY ' . ExpressionArray::build($this->order); - } - - if ($this->limit !== null && strlen((string) $this->limit) > 0) { - $ret .= ' LIMIT ' . Limit::build($this->limit); - } - - return $ret; - } - - /** - * @param Parser $parser the instance that requests parsing - * @param TokensList $list the list of tokens to be parsed - */ - public function parse(Parser $parser, TokensList $list) - { - ++$list->idx; // Skipping `DELETE`. - - // parse any options if provided - $this->options = OptionsArray::parse($parser, $list, static::$OPTIONS); - ++$list->idx; - - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 ---------------------------------[ FROM ]----------------------------------> 2 - * 0 ------------------------------[ table[.*] ]--------------------------------> 1 - * 1 ---------------------------------[ FROM ]----------------------------------> 2 - * 2 --------------------------------[ USING ]----------------------------------> 3 - * 2 --------------------------------[ WHERE ]----------------------------------> 4 - * 2 --------------------------------[ ORDER ]----------------------------------> 5 - * 2 --------------------------------[ LIMIT ]----------------------------------> 6 - * - * @var int - */ - $state = 0; - - /** - * If the query is multi-table or not. - * - * @var bool - */ - $multiTable = false; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - if ($state === 0) { - if ($token->type === Token::TYPE_KEYWORD) { - if ($token->keyword !== 'FROM') { - $parser->error('Unexpected keyword.', $token); - break; - } - - ++$list->idx; // Skip 'FROM' - $this->from = ExpressionArray::parse($parser, $list); - - $state = 2; - } else { - $this->columns = ExpressionArray::parse($parser, $list); - $state = 1; - } - } elseif ($state === 1) { - if ($token->type !== Token::TYPE_KEYWORD) { - $parser->error('Unexpected token.', $token); - break; - } - - if ($token->keyword !== 'FROM') { - $parser->error('Unexpected keyword.', $token); - break; - } - - ++$list->idx; // Skip 'FROM' - $this->from = ExpressionArray::parse($parser, $list); - - $state = 2; - } elseif ($state === 2) { - if ($token->type === Token::TYPE_KEYWORD) { - if (stripos($token->keyword, 'JOIN') !== false) { - ++$list->idx; - $this->join = JoinKeyword::parse($parser, $list); - - // remain in state = 2 - } else { - switch ($token->keyword) { - case 'USING': - ++$list->idx; // Skip 'USING' - $this->using = ExpressionArray::parse($parser, $list); - $state = 3; - - $multiTable = true; - break; - case 'WHERE': - ++$list->idx; // Skip 'WHERE' - $this->where = Condition::parse($parser, $list); - $state = 4; - break; - case 'ORDER BY': - ++$list->idx; // Skip 'ORDER BY' - $this->order = OrderKeyword::parse($parser, $list); - $state = 5; - break; - case 'LIMIT': - ++$list->idx; // Skip 'LIMIT' - $this->limit = Limit::parse($parser, $list); - $state = 6; - break; - default: - $parser->error('Unexpected keyword.', $token); - break 2; - } - } - } - } elseif ($state === 3) { - if ($token->type !== Token::TYPE_KEYWORD) { - $parser->error('Unexpected token.', $token); - break; - } - - if ($token->keyword !== 'WHERE') { - $parser->error('Unexpected keyword.', $token); - break; - } - - ++$list->idx; // Skip 'WHERE' - $this->where = Condition::parse($parser, $list); - $state = 4; - } elseif ($state === 4) { - if ($multiTable === true && $token->type === Token::TYPE_KEYWORD) { - $parser->error('This type of clause is not valid in Multi-table queries.', $token); - break; - } - - if ($token->type === Token::TYPE_KEYWORD) { - switch ($token->keyword) { - case 'ORDER BY': - ++$list->idx; // Skip 'ORDER BY' - $this->order = OrderKeyword::parse($parser, $list); - $state = 5; - break; - case 'LIMIT': - ++$list->idx; // Skip 'LIMIT' - $this->limit = Limit::parse($parser, $list); - $state = 6; - break; - default: - $parser->error('Unexpected keyword.', $token); - break 2; - } - } - } elseif ($state === 5) { - if ($token->type === Token::TYPE_KEYWORD) { - if ($token->keyword !== 'LIMIT') { - $parser->error('Unexpected keyword.', $token); - break; - } - - ++$list->idx; // Skip 'LIMIT' - $this->limit = Limit::parse($parser, $list); - $state = 6; - } - } - } - - if ($state >= 2) { - foreach ($this->from as $fromExpr) { - $fromExpr->database = $fromExpr->table; - $fromExpr->table = $fromExpr->column; - $fromExpr->column = null; - } - } - - --$list->idx; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/DropStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/DropStatement.php deleted file mode 100644 index 5b9d556f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/DropStatement.php +++ /dev/null @@ -1,82 +0,0 @@ -> - * @psalm-var array 1, - 'EVENT' => 1, - 'FUNCTION' => 1, - 'INDEX' => 1, - 'LOGFILE' => 1, - 'PROCEDURE' => 1, - 'SCHEMA' => 1, - 'SERVER' => 1, - 'TABLE' => 1, - 'VIEW' => 1, - 'TABLESPACE' => 1, - 'TRIGGER' => 1, - 'USER' => 1, - - 'TEMPORARY' => 2, - 'IF EXISTS' => 3, - ]; - - /** - * The clauses of this statement, in order. - * - * @see Statement::$CLAUSES - * - * @var array> - * @psalm-var array - */ - public static $CLAUSES = [ - 'DROP' => [ - 'DROP', - 2, - ], - // Used for options. - '_OPTIONS' => [ - '_OPTIONS', - 1, - ], - // Used for select expressions. - 'DROP_' => [ - 'DROP', - 1, - ], - 'ON' => [ - 'ON', - 3, - ], - ]; - - /** - * Dropped elements. - * - * @var Expression[]|null - */ - public $fields; - - /** - * Table of the dropped index. - * - * @var Expression|null - */ - public $table; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/ExplainStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/ExplainStatement.php deleted file mode 100644 index c1e4eb77..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/ExplainStatement.php +++ /dev/null @@ -1,286 +0,0 @@ -> - * @psalm-var array 1, - 'PARTITIONS' => 1, - 'FORMAT' => [ - 1, - 'var', - ], - ]; - - /** - * The parser of the statement to be explained - * - * @var Parser|null - */ - public $bodyParser = null; - - /** - * The statement alias, could be any of the following: - * - {EXPLAIN | DESCRIBE | DESC} - * - {EXPLAIN | DESCRIBE | DESC} ANALYZE - * - ANALYZE - * - * @var string - */ - public $statementAlias; - - /** - * The connection identifier, if used. - * - * @var int|null - */ - public $connectionId = null; - - /** - * The explained database for the table's name, if used. - * - * @var string|null - */ - public $explainedDatabase = null; - - /** - * The explained table's name, if used. - * - * @var string|null - */ - public $explainedTable = null; - - /** - * The explained column's name, if used. - * - * @var string|null - */ - public $explainedColumn = null; - - /** - * @param Parser $parser the instance that requests parsing - * @param TokensList $list the list of tokens to be parsed - */ - public function parse(Parser $parser, TokensList $list) - { - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 -------------------[ EXPLAIN/EXPLAIN ANALYZE/ANALYZE ]-----------------------> 1 - * - * 0 ------------------------[ EXPLAIN/DESC/DESCRIBE ]----------------------------> 3 - * - * 1 ------------------------------[ OPTIONS ]------------------------------------> 2 - * - * 2 --------------[ tablename / STATEMENT / FOR CONNECTION ]---------------------> 2 - * - * 3 -----------------------------[ tablename ]-----------------------------------> 3 - * - * @var int - */ - $state = 0; - - /** - * To Differentiate between ANALYZE / EXPLAIN / EXPLAIN ANALYZE - * 0 -> ANALYZE ( used by mariaDB https://mariadb.com/kb/en/analyze-statement) - * 1 -> {EXPLAIN | DESCRIBE | DESC} - * 2 -> {EXPLAIN | DESCRIBE | DESC} ANALYZE - */ - $miniState = 0; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - --$list->idx; // Back up one token, no real reasons to document - break; - } - - // Skipping whitespaces and comments. - if ($token->type === Token::TYPE_WHITESPACE || $token->type === Token::TYPE_COMMENT) { - continue; - } - - if ($state === 0) { - if ($token->keyword === 'ANALYZE' && $miniState === 0) { - $state = 1; - $this->statementAlias = 'ANALYZE'; - } elseif ( - $token->keyword === 'EXPLAIN' - || $token->keyword === 'DESC' - || $token->keyword === 'DESCRIBE' - ) { - $this->statementAlias = $token->keyword; - - $lastIdx = $list->idx; - $list->idx++; // Ignore the current token - $nextKeyword = $list->getNextOfType(Token::TYPE_KEYWORD); - $list->idx = $lastIdx; - - // There is no other keyword, we must be describing a table - if ($nextKeyword === null) { - $state = 3; - continue; - } - - $miniState = 1; - - $lastIdx = $list->idx; - $nextKeyword = $list->getNextOfTypeAndValue(Token::TYPE_KEYWORD, 'ANALYZE'); - if ($nextKeyword && $nextKeyword->keyword !== null) { - $miniState = 2; - $this->statementAlias .= ' ANALYZE'; - } else { - $list->idx = $lastIdx; - } - - $state = 1; - } - } elseif ($state === 1) { - // Parsing options. - $this->options = OptionsArray::parse($parser, $list, static::$OPTIONS); - $state = 2; - } elseif ($state === 2) { - $currIdx = $list->idx; - $list->idx++; // Ignore the current token - $nextToken = $list->getNext(); - $list->idx = $currIdx; - - if ($token->keyword === 'FOR' && $nextToken->keyword === 'CONNECTION') { - $list->idx++; // Ignore the current token - $list->getNext(); // CONNECTION - $nextToken = $list->getNext(); // Identifier - $this->connectionId = $nextToken->value; - break; - } - - if ( - $token->keyword !== 'SELECT' - && $token->keyword !== 'TABLE' - && $token->keyword !== 'INSERT' - && $token->keyword !== 'REPLACE' - && $token->keyword !== 'UPDATE' - && $token->keyword !== 'DELETE' - ) { - $parser->error('Unexpected token.', $token); - break; - } - - // Index of the last parsed token by default would be the last token in the $list, because we're - // assuming that all remaining tokens at state 2, are related to the to-be-explained statement. - $idxOfLastParsedToken = $list->count - 1; - $subList = new TokensList(array_slice($list->tokens, $list->idx)); - - $this->bodyParser = new Parser($subList); - if (count($this->bodyParser->errors)) { - foreach ($this->bodyParser->errors as $error) { - $parser->errors[] = $error; - } - - break; - } - - $list->idx = $idxOfLastParsedToken; - break; - } elseif ($state === 3) { - if (($token->type === Token::TYPE_OPERATOR) && ($token->value === '.')) { - continue; - } - - if ($this->explainedDatabase === null) { - $lastIdx = $list->idx; - $nextDot = $list->getNextOfTypeAndValue(Token::TYPE_OPERATOR, '.'); - $list->idx = $lastIdx; - if ($nextDot !== null) {// We found a dot, so it must be a db.table name format - $this->explainedDatabase = $token->value; - continue; - } - } - - if ($this->explainedTable === null) { - $this->explainedTable = $token->value; - continue; - } - - if ($this->explainedColumn === null) { - $this->explainedColumn = $token->value; - } - } - } - - if ($state !== 3 || $this->explainedTable !== null) { - return; - } - - // We reached end of the state 3 and no table name was found - /** Token parsed at this moment. */ - $token = $list->tokens[$list->idx]; - $parser->error('Expected a table name.', $token); - } - - public function build(): string - { - $str = $this->statementAlias; - - if ($this->options !== null) { - if (count($this->options->options)) { - $str .= ' '; - } - - $str .= OptionsArray::build($this->options) . ' '; - } - - if ($this->options === null) { - $str .= ' '; - } - - if ($this->bodyParser) { - foreach ($this->bodyParser->statements as $statement) { - $str .= $statement->build(); - } - } elseif ($this->connectionId) { - $str .= 'FOR CONNECTION ' . $this->connectionId; - } - - if ($this->explainedDatabase !== null && $this->explainedTable !== null) { - $str .= Context::escape($this->explainedDatabase) . '.' . Context::escape($this->explainedTable); - } elseif ($this->explainedTable !== null) { - $str .= Context::escape($this->explainedTable); - } - - if ($this->explainedColumn !== null) { - $str .= ' ' . Context::escape($this->explainedColumn); - } - - return $str; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/InsertStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/InsertStatement.php deleted file mode 100644 index ac5dc1f3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/InsertStatement.php +++ /dev/null @@ -1,254 +0,0 @@ -> - * @psalm-var array 1, - 'DELAYED' => 2, - 'HIGH_PRIORITY' => 3, - 'IGNORE' => 4, - ]; - - /** - * Tables used as target for this statement. - * - * @var IntoKeyword|null - */ - public $into; - - /** - * Values to be inserted. - * - * @var ArrayObj[]|null - */ - public $values; - - /** - * If SET clause is present - * holds the SetOperation. - * - * @var SetOperation[]|null - */ - public $set; - - /** - * If SELECT clause is present - * holds the SelectStatement. - * - * @var SelectStatement|null - */ - public $select; - - /** - * If WITH CTE is present - * holds the WithStatement. - * - * @var WithStatement|null - */ - public $with; - - /** - * If ON DUPLICATE KEY UPDATE clause is present - * holds the SetOperation. - * - * @var SetOperation[]|null - */ - public $onDuplicateSet; - - /** - * @return string - */ - public function build() - { - $ret = 'INSERT ' . $this->options; - $ret = trim($ret) . ' INTO ' . $this->into; - - if ($this->values !== null && count($this->values) > 0) { - $ret .= ' VALUES ' . Array2d::build($this->values); - } elseif ($this->set !== null && count($this->set) > 0) { - $ret .= ' SET ' . SetOperation::build($this->set); - } elseif ($this->select !== null && strlen((string) $this->select) > 0) { - $ret .= ' ' . $this->select->build(); - } - - if ($this->onDuplicateSet !== null && count($this->onDuplicateSet) > 0) { - $ret .= ' ON DUPLICATE KEY UPDATE ' . SetOperation::build($this->onDuplicateSet); - } - - return $ret; - } - - /** - * @param Parser $parser the instance that requests parsing - * @param TokensList $list the list of tokens to be parsed - */ - public function parse(Parser $parser, TokensList $list) - { - ++$list->idx; // Skipping `INSERT`. - - // parse any options if provided - $this->options = OptionsArray::parse($parser, $list, static::$OPTIONS); - ++$list->idx; - - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 ---------------------------------[ INTO ]----------------------------------> 1 - * - * 1 -------------------------[ VALUES/VALUE/SET/SELECT ]-----------------------> 2 - * - * 2 -------------------------[ ON DUPLICATE KEY UPDATE ]-----------------------> 3 - * - * @var int - */ - $state = 0; - - /** - * For keeping track of semi-states on encountering - * ON DUPLICATE KEY UPDATE ... - */ - $miniState = 0; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - continue; - } - - if ($state === 0) { - if ($token->type === Token::TYPE_KEYWORD && $token->keyword !== 'INTO') { - $parser->error('Unexpected keyword.', $token); - break; - } - - ++$list->idx; - $this->into = IntoKeyword::parse( - $parser, - $list, - ['fromInsert' => true] - ); - - $state = 1; - } elseif ($state === 1) { - if ($token->type !== Token::TYPE_KEYWORD) { - $parser->error('Unexpected token.', $token); - break; - } - - if ($token->keyword === 'VALUE' || $token->keyword === 'VALUES') { - ++$list->idx; // skip VALUES - - $this->values = Array2d::parse($parser, $list); - } elseif ($token->keyword === 'SET') { - ++$list->idx; // skip SET - - $this->set = SetOperation::parse($parser, $list); - } elseif ($token->keyword === 'SELECT') { - $this->select = new SelectStatement($parser, $list); - } elseif ($token->keyword === 'WITH') { - $this->with = new WithStatement($parser, $list); - } else { - $parser->error('Unexpected keyword.', $token); - break; - } - - $state = 2; - $miniState = 1; - } elseif ($state === 2) { - $lastCount = $miniState; - - if ($miniState === 1 && $token->keyword === 'ON') { - ++$miniState; - } elseif ($miniState === 2 && $token->keyword === 'DUPLICATE') { - ++$miniState; - } elseif ($miniState === 3 && $token->keyword === 'KEY') { - ++$miniState; - } elseif ($miniState === 4 && $token->keyword === 'UPDATE') { - ++$miniState; - } - - if ($lastCount === $miniState) { - $parser->error('Unexpected token.', $token); - break; - } - - if ($miniState === 5) { - ++$list->idx; - $this->onDuplicateSet = SetOperation::parse($parser, $list); - $state = 3; - } - } - } - - --$list->idx; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/KillStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/KillStatement.php deleted file mode 100644 index f020d795..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/KillStatement.php +++ /dev/null @@ -1,177 +0,0 @@ -> - * @psalm-var array 1, - 'SOFT' => 1, - 'CONNECTION' => 2, - 'QUERY' => 2, - 'USER' => 2, - ]; - - /** - * Holds the identifier if explicitly set - * - * @psalm-var Statement|int|null - */ - public $identifier = null; - - /** - * Whether MariaDB ID keyword is used or not. - * - * @var bool - */ - public $idKeywordUsed = false; - - /** - * Whether parenthesis used around the identifier or not - * - * @var bool - */ - public $parenthesisUsed = false; - - /** @throws ParserException */ - public function parse(Parser $parser, TokensList $list): void - { - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 --------------------- [ OPTIONS PARSED ] --------------------------> 0 - * - * 0 -------------------- [ number ] -----------------------------------> 2 - * - * 0 -------------------- [ ( ] ----------------------------------------> 3 - * - * 0 -------------------- [ QUERY ID ] ---------------------------------> 0 - * - * 3 -------------------- [ number ] -----------------------------------> 3 - * - * 3 -------------------- [ SELECT STATEMENT ] -------------------------> 2 - * - * 3 -------------------- [ ) ] ----------------------------------------> 2 - * - * 2 ----------------------------------------------------------> Final state - */ - $state = 0; - - ++$list->idx; // Skipping `KILL`. - $this->options = OptionsArray::parse($parser, $list, static::$OPTIONS); - ++$list->idx; - for (; $list->idx < $list->count; ++$list->idx) { - $token = $list->tokens[$list->idx]; - - if ($token->type === Token::TYPE_WHITESPACE || $token->type === Token::TYPE_COMMENT) { - continue; - } - - switch ($state) { - case 0: - $currIdx = $list->idx; - $prev = $list->getPreviousOfType(Token::TYPE_KEYWORD); - $list->idx = $currIdx; - if ($token->type === Token::TYPE_NUMBER && is_int($token->value)) { - $this->identifier = $token->value; - $state = 2; - } elseif ($token->type === Token::TYPE_OPERATOR && $token->value === '(') { - $this->parenthesisUsed = true; - $state = 3; - } elseif ($prev && $token->value === 'ID' && $prev->value === 'QUERY') { - $this->idKeywordUsed = true; - $state = 0; - } else { - $parser->error('Unexpected token.', $token); - break 2; - } - - break; - - case 3: - if ($token->type === Token::TYPE_KEYWORD && $token->value === 'SELECT') { - $subList = new TokensList(array_slice($list->tokens, $list->idx - 1)); - $subParser = new Parser($subList); - if ($subParser->errors !== []) { - foreach ($subParser->errors as $error) { - $parser->errors[] = $error; - } - - break; - } - - $this->identifier = $subParser->statements[0]; - $state = 2; - } elseif ($token->type === Token::TYPE_OPERATOR && $token->value === ')') { - $state = 2; - } elseif ($token->type === Token::TYPE_NUMBER && is_int($token->value)) { - $this->identifier = $token->value; - $state = 3; - } else { - $parser->error('Unexpected token.', $token); - break 2; - } - - break; - } - } - - if ($state !== 2) { - $token = $list->tokens[$list->idx]; - $parser->error('Unexpected end of the KILL statement.', $token); - } - - --$list->idx; - } - - /** - * {@inheritdoc} - */ - public function build() - { - $ret = 'KILL'; - - if ($this->options !== null && $this->options->options !== []) { - $ret .= ' ' . OptionsArray::build($this->options); - } - - if ($this->idKeywordUsed) { - $ret .= ' ID'; - } - - $identifier = (string) $this->identifier; - if ($this->parenthesisUsed) { - $ret .= ' (' . $identifier . ')'; - } else { - $ret .= ' ' . $identifier; - } - - return $ret; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/LoadStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/LoadStatement.php deleted file mode 100644 index f0f6253e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/LoadStatement.php +++ /dev/null @@ -1,410 +0,0 @@ -> - * @psalm-var array 1, - 'CONCURRENT' => 1, - 'LOCAL' => 2, - ]; - - /** - * FIELDS/COLUMNS Options for `LOAD DATA...INFILE` statements. - * - * @var array> - * @psalm-var array [ - 1, - 'expr', - ], - 'OPTIONALLY' => 2, - 'ENCLOSED BY' => [ - 3, - 'expr', - ], - 'ESCAPED BY' => [ - 4, - 'expr', - ], - ]; - - /** - * LINES Options for `LOAD DATA...INFILE` statements. - * - * @var array> - * @psalm-var array [ - 1, - 'expr', - ], - 'TERMINATED BY' => [ - 2, - 'expr', - ], - ]; - - /** - * File name being used to load data. - * - * @var Expression|null - */ - public $file_name; - - /** - * Table used as destination for this statement. - * - * @var Expression|null - */ - public $table; - - /** - * Partitions used as source for this statement. - * - * @var ArrayObj|null - */ - public $partition; - - /** - * Character set used in this statement. - * - * @var Expression|null - */ - public $charset_name; - - /** - * Options for FIELDS/COLUMNS keyword. - * - * @see static::$FIELDS_OPTIONS - * - * @var OptionsArray|null - */ - public $fields_options; - - /** - * Whether to use `FIELDS` or `COLUMNS` while building. - * - * @var string|null - */ - public $fields_keyword; - - /** - * Options for OPTIONS keyword. - * - * @see static::$LINES_OPTIONS - * - * @var OptionsArray|null - */ - public $lines_options; - - /** - * Column names or user variables. - * - * @var Expression[]|null - */ - public $col_name_or_user_var; - - /** - * SET clause's updated values(optional). - * - * @var SetOperation[]|null - */ - public $set; - - /** - * Ignore 'number' LINES/ROWS. - * - * @var Expression|null - */ - public $ignore_number; - - /** - * REPLACE/IGNORE Keyword. - * - * @var string|null - */ - public $replace_ignore; - - /** - * LINES/ROWS Keyword. - * - * @var string|null - */ - public $lines_rows; - - /** - * @return string - */ - public function build() - { - $ret = 'LOAD DATA ' . $this->options - . ' INFILE ' . $this->file_name; - - if ($this->replace_ignore !== null) { - $ret .= ' ' . trim($this->replace_ignore); - } - - $ret .= ' INTO TABLE ' . $this->table; - - if ($this->partition !== null && strlen((string) $this->partition) > 0) { - $ret .= ' PARTITION ' . ArrayObj::build($this->partition); - } - - if ($this->charset_name !== null) { - $ret .= ' CHARACTER SET ' . $this->charset_name; - } - - if ($this->fields_keyword !== null) { - $ret .= ' ' . $this->fields_keyword . ' ' . $this->fields_options; - } - - if ($this->lines_options !== null && strlen((string) $this->lines_options) > 0) { - $ret .= ' LINES ' . $this->lines_options; - } - - if ($this->ignore_number !== null) { - $ret .= ' IGNORE ' . $this->ignore_number . ' ' . $this->lines_rows; - } - - if ($this->col_name_or_user_var !== null && count($this->col_name_or_user_var) > 0) { - $ret .= ' ' . ExpressionArray::build($this->col_name_or_user_var); - } - - if ($this->set !== null && count($this->set) > 0) { - $ret .= ' SET ' . SetOperation::build($this->set); - } - - return $ret; - } - - /** - * @param Parser $parser the instance that requests parsing - * @param TokensList $list the list of tokens to be parsed - */ - public function parse(Parser $parser, TokensList $list) - { - ++$list->idx; // Skipping `LOAD DATA`. - - // parse any options if provided - $this->options = OptionsArray::parse($parser, $list, static::$OPTIONS); - ++$list->idx; - - /** - * The state of the parser. - * - * @var int - */ - $state = 0; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - continue; - } - - if ($state === 0) { - if ($token->type === Token::TYPE_KEYWORD && $token->keyword !== 'INFILE') { - $parser->error('Unexpected keyword.', $token); - break; - } - - if ($token->type !== Token::TYPE_KEYWORD) { - $parser->error('Unexpected token.', $token); - break; - } - - ++$list->idx; - $this->file_name = Expression::parse( - $parser, - $list, - ['parseField' => 'file'] - ); - $state = 1; - } elseif ($state === 1) { - if ($token->type === Token::TYPE_KEYWORD) { - if ($token->keyword === 'REPLACE' || $token->keyword === 'IGNORE') { - $this->replace_ignore = trim($token->keyword); - } elseif ($token->keyword === 'INTO') { - $state = 2; - } - } - } elseif ($state === 2) { - if ($token->type !== Token::TYPE_KEYWORD || $token->keyword !== 'TABLE') { - $parser->error('Unexpected token.', $token); - break; - } - - ++$list->idx; - $this->table = Expression::parse($parser, $list, ['parseField' => 'table', 'breakOnAlias' => true]); - $state = 3; - } elseif ($state >= 3 && $state <= 7) { - if ($token->type === Token::TYPE_KEYWORD) { - $newState = $this->parseKeywordsAccordingToState($parser, $list, $state); - if ($newState === $state) { - // Avoid infinite loop - break; - } - } elseif ($token->type === Token::TYPE_OPERATOR && $token->token === '(') { - $this->col_name_or_user_var - = ExpressionArray::parse($parser, $list); - $state = 7; - } else { - $parser->error('Unexpected token.', $token); - break; - } - } - } - - --$list->idx; - } - - /** - * @param Parser $parser The parser - * @param TokensList $list A token list - * @param string $keyword The keyword - */ - public function parseFileOptions(Parser $parser, TokensList $list, $keyword = 'FIELDS'): void - { - ++$list->idx; - - if ($keyword === 'FIELDS' || $keyword === 'COLUMNS') { - // parse field options - $this->fields_options = OptionsArray::parse($parser, $list, static::$FIELDS_OPTIONS); - - $this->fields_keyword = $keyword; - } else { - // parse line options - $this->lines_options = OptionsArray::parse($parser, $list, static::$LINES_OPTIONS); - } - } - - /** - * @param Parser $parser - * @param TokensList $list - * @param int $state - * - * @return int - */ - public function parseKeywordsAccordingToState($parser, $list, $state) - { - $token = $list->tokens[$list->idx]; - - switch ($state) { - case 3: - if ($token->keyword === 'PARTITION') { - ++$list->idx; - $this->partition = ArrayObj::parse($parser, $list); - - return 4; - } - - // no break - case 4: - if ($token->keyword === 'CHARACTER SET') { - ++$list->idx; - $this->charset_name = Expression::parse($parser, $list); - - return 5; - } - - // no break - case 5: - if ($token->keyword === 'FIELDS' || $token->keyword === 'COLUMNS' || $token->keyword === 'LINES') { - $this->parseFileOptions($parser, $list, $token->value); - - return 6; - } - - // no break - case 6: - if ($token->keyword === 'IGNORE') { - ++$list->idx; - - $this->ignore_number = Expression::parse($parser, $list); - $nextToken = $list->getNextOfType(Token::TYPE_KEYWORD); - - if ( - $nextToken->type === Token::TYPE_KEYWORD - && (($nextToken->keyword === 'LINES') - || ($nextToken->keyword === 'ROWS')) - ) { - $this->lines_rows = $nextToken->token; - } - - return 7; - } - - // no break - case 7: - if ($token->keyword === 'SET') { - ++$list->idx; - $this->set = SetOperation::parse($parser, $list); - - return 8; - } - - // no break - default: - } - - return $state; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/LockStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/LockStatement.php deleted file mode 100644 index 63a0893f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/LockStatement.php +++ /dev/null @@ -1,131 +0,0 @@ -tokens[$list->idx]->value === 'UNLOCK') { - // this is in fact an UNLOCK statement - $this->isLock = false; - } - - ++$list->idx; // Skipping `LOCK`. - - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 ---------------- [ TABLES ] -----------------> 1 - * 1 -------------- [ lock_expr ] ----------------> 2 - * 2 ------------------ [ , ] --------------------> 1 - * - * @var int - */ - $state = 0; - - /** - * Previous parsed token - */ - $prevToken = null; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - continue; - } - - if ($state === 0) { - if ($token->type === Token::TYPE_KEYWORD) { - if ($token->keyword !== 'TABLES') { - $parser->error('Unexpected keyword.', $token); - break; - } - - $state = 1; - continue; - } - - $parser->error('Unexpected token.', $token); - break; - } - - if ($state === 1) { - if (! $this->isLock) { - // UNLOCK statement should not have any more tokens - $parser->error('Unexpected token.', $token); - break; - } - - $this->locked[] = LockExpression::parse($parser, $list); - $state = 2; - } elseif ($state === 2) { - if ($token->value === ',') { - // move over to parsing next lock expression - $state = 1; - } - } - - $prevToken = $token; - } - - if ($state === 2 || $prevToken === null) { - return; - } - - $parser->error('Unexpected end of LOCK statement.', $prevToken); - } - - /** - * @return string - */ - public function build() - { - return trim(($this->isLock ? 'LOCK' : 'UNLOCK') - . ' TABLES ' . LockExpression::build($this->locked)); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/MaintenanceStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/MaintenanceStatement.php deleted file mode 100644 index d51e57ae..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/MaintenanceStatement.php +++ /dev/null @@ -1,57 +0,0 @@ -idx; - $this->options->merge( - OptionsArray::parse( - $parser, - $list, - static::$OPTIONS - ) - ); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/NotImplementedStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/NotImplementedStatement.php deleted file mode 100644 index 381e17c5..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/NotImplementedStatement.php +++ /dev/null @@ -1,56 +0,0 @@ -unknown as $token) { - $query .= $token->token; - } - - return $query; - } - - /** - * @param Parser $parser the instance that requests parsing - * @param TokensList $list the list of tokens to be parsed - */ - public function parse(Parser $parser, TokensList $list) - { - for (; $list->idx < $list->count; ++$list->idx) { - if ($list->tokens[$list->idx]->type === Token::TYPE_DELIMITER) { - break; - } - - $this->unknown[] = $list->tokens[$list->idx]; - } - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/OptimizeStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/OptimizeStatement.php deleted file mode 100644 index 9d99951e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/OptimizeStatement.php +++ /dev/null @@ -1,37 +0,0 @@ -> - * @psalm-var array 1, - - 'NO_WRITE_TO_BINLOG' => 2, - 'LOCAL' => 3, - ]; - - /** - * Optimized tables. - * - * @var Expression[]|null - */ - public $tables; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/PurgeStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/PurgeStatement.php deleted file mode 100644 index a5d17ab9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/PurgeStatement.php +++ /dev/null @@ -1,145 +0,0 @@ -log_type . ' LOGS ' - . ($this->end_option !== null ? ($this->end_option . ' ' . $this->end_expr) : ''); - - return trim($ret); - } - - /** - * @param Parser $parser the instance that requests parsing - * @param TokensList $list the list of tokens to be parsed - */ - public function parse(Parser $parser, TokensList $list) - { - ++$list->idx; // Skipping `PURGE`. - - /** - * The state of the parser. - * - * @var int - */ - $state = 0; - - $prevToken = null; - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - continue; - } - - switch ($state) { - case 0: - // parse `{ BINARY | MASTER }` - $this->log_type = self::parseExpectedKeyword($parser, $token, ['BINARY', 'MASTER']); - break; - case 1: - // parse `LOGS` - self::parseExpectedKeyword($parser, $token, ['LOGS']); - break; - case 2: - // parse `{ TO | BEFORE }` - $this->end_option = self::parseExpectedKeyword($parser, $token, ['TO', 'BEFORE']); - break; - case 3: - // parse `expr` - $this->end_expr = Expression::parse($parser, $list, []); - break; - default: - $parser->error('Unexpected token.', $token); - break; - } - - $state++; - $prevToken = $token; - } - - // Only one possible end state - if ($state === 4) { - return; - } - - $parser->error('Unexpected token.', $prevToken); - } - - /** - * Parse expected keyword (or throw relevant error) - * - * @param Parser $parser the instance that requests parsing - * @param Token $token token to be parsed - * @param string[] $expectedKeywords array of possibly expected keywords at this point - * - * @return mixed|null - */ - private static function parseExpectedKeyword($parser, $token, $expectedKeywords) - { - if ($token->type === Token::TYPE_KEYWORD) { - if (in_array($token->keyword, $expectedKeywords)) { - return $token->keyword; - } - - $parser->error('Unexpected keyword', $token); - } else { - $parser->error('Unexpected token.', $token); - } - - return null; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/RenameStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/RenameStatement.php deleted file mode 100644 index 1e8826f2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/RenameStatement.php +++ /dev/null @@ -1,56 +0,0 @@ -type !== Token::TYPE_KEYWORD) || ($token->keyword !== 'RENAME')) { - return; - } - - // Checking if it is the beginning of the query. - $list->getNextOfTypeAndValue(Token::TYPE_KEYWORD, 'TABLE'); - } - - /** - * @return string - */ - public function build() - { - return 'RENAME TABLE ' . RenameOperation::build($this->renames); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/RepairStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/RepairStatement.php deleted file mode 100644 index a9638326..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/RepairStatement.php +++ /dev/null @@ -1,32 +0,0 @@ -> - * @psalm-var array 1, - - 'NO_WRITE_TO_BINLOG' => 2, - 'LOCAL' => 3, - - 'QUICK' => 4, - 'EXTENDED' => 5, - 'USE_FRM' => 6, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/ReplaceStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/ReplaceStatement.php deleted file mode 100644 index 0c2db21b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/ReplaceStatement.php +++ /dev/null @@ -1,188 +0,0 @@ -> - * @psalm-var array 1, - 'DELAYED' => 1, - ]; - - /** - * Tables used as target for this statement. - * - * @var IntoKeyword|null - */ - public $into; - - /** - * Values to be replaced. - * - * @var Array2d[]|null - */ - public $values; - - /** - * If SET clause is present - * holds the SetOperation. - * - * @var SetOperation[]|null - */ - public $set; - - /** - * If SELECT clause is present - * holds the SelectStatement. - * - * @var SelectStatement|null - */ - public $select; - - /** - * @return string - */ - public function build() - { - $ret = 'REPLACE ' . $this->options; - $ret = trim($ret) . ' INTO ' . $this->into; - - if ($this->values !== null && count($this->values) > 0) { - $ret .= ' VALUES ' . Array2d::build($this->values); - } elseif ($this->set !== null && count($this->set) > 0) { - $ret .= ' SET ' . SetOperation::build($this->set); - } elseif ($this->select !== null && strlen((string) $this->select) > 0) { - $ret .= ' ' . $this->select->build(); - } - - return $ret; - } - - /** - * @param Parser $parser the instance that requests parsing - * @param TokensList $list the list of tokens to be parsed - * - * @return void - */ - public function parse(Parser $parser, TokensList $list) - { - ++$list->idx; // Skipping `REPLACE`. - - // parse any options if provided - $this->options = OptionsArray::parse($parser, $list, static::$OPTIONS); - - ++$list->idx; - - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 ---------------------------------[ INTO ]----------------------------------> 1 - * - * 1 -------------------------[ VALUES/VALUE/SET/SELECT ]-----------------------> 2 - * - * @var int - */ - $state = 0; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // End of statement. - if ($token->type === Token::TYPE_DELIMITER) { - break; - } - - // Skipping whitespaces and comments. - if (($token->type === Token::TYPE_WHITESPACE) || ($token->type === Token::TYPE_COMMENT)) { - continue; - } - - if ($state === 0) { - if ($token->type === Token::TYPE_KEYWORD && $token->keyword !== 'INTO') { - $parser->error('Unexpected keyword.', $token); - break; - } - - ++$list->idx; - $this->into = IntoKeyword::parse( - $parser, - $list, - ['fromReplace' => true] - ); - - $state = 1; - } elseif ($state === 1) { - if ($token->type !== Token::TYPE_KEYWORD) { - $parser->error('Unexpected token.', $token); - break; - } - - if ($token->keyword === 'VALUE' || $token->keyword === 'VALUES') { - ++$list->idx; // skip VALUES - - $this->values = Array2d::parse($parser, $list); - } elseif ($token->keyword === 'SET') { - ++$list->idx; // skip SET - - $this->set = SetOperation::parse($parser, $list); - } elseif ($token->keyword === 'SELECT') { - $this->select = new SelectStatement($parser, $list); - } else { - $parser->error('Unexpected keyword.', $token); - break; - } - - $state = 2; - } - } - - --$list->idx; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/RestoreStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/RestoreStatement.php deleted file mode 100644 index d54ed904..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/RestoreStatement.php +++ /dev/null @@ -1,28 +0,0 @@ -> - * @psalm-var array 1, - - 'FROM' => [ - 2, - 'var', - ], - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/SelectStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/SelectStatement.php deleted file mode 100644 index fa32845f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/SelectStatement.php +++ /dev/null @@ -1,370 +0,0 @@ -> - * @psalm-var array 1, - 'DISTINCT' => 1, - 'DISTINCTROW' => 1, - 'HIGH_PRIORITY' => 2, - 'MAX_STATEMENT_TIME' => [ - 3, - 'var=', - ], - 'STRAIGHT_JOIN' => 4, - 'SQL_SMALL_RESULT' => 5, - 'SQL_BIG_RESULT' => 6, - 'SQL_BUFFER_RESULT' => 7, - 'SQL_CACHE' => 8, - 'SQL_NO_CACHE' => 8, - 'SQL_CALC_FOUND_ROWS' => 9, - ]; - - /** - * @var array> - * @psalm-var array 1]; - - /** - * @var array> - * @psalm-var array 1, - 'LOCK IN SHARE MODE' => 1, - ]; - - /** - * The clauses of this statement, in order. - * - * @see Statement::$CLAUSES - * - * @var array> - * @psalm-var array - */ - public static $CLAUSES = [ - 'SELECT' => [ - 'SELECT', - 2, - ], - // Used for options. - '_OPTIONS' => [ - '_OPTIONS', - 1, - ], - // Used for selected expressions. - '_SELECT' => [ - 'SELECT', - 1, - ], - 'INTO' => [ - 'INTO', - 3, - ], - 'FROM' => [ - 'FROM', - 3, - ], - 'FORCE' => [ - 'FORCE', - 1, - ], - 'USE' => [ - 'USE', - 1, - ], - 'IGNORE' => [ - 'IGNORE', - 3, - ], - 'PARTITION' => [ - 'PARTITION', - 3, - ], - - 'JOIN' => [ - 'JOIN', - 1, - ], - 'FULL JOIN' => [ - 'FULL JOIN', - 1, - ], - 'INNER JOIN' => [ - 'INNER JOIN', - 1, - ], - 'LEFT JOIN' => [ - 'LEFT JOIN', - 1, - ], - 'LEFT OUTER JOIN' => [ - 'LEFT OUTER JOIN', - 1, - ], - 'RIGHT JOIN' => [ - 'RIGHT JOIN', - 1, - ], - 'RIGHT OUTER JOIN' => [ - 'RIGHT OUTER JOIN', - 1, - ], - 'NATURAL JOIN' => [ - 'NATURAL JOIN', - 1, - ], - 'NATURAL LEFT JOIN' => [ - 'NATURAL LEFT JOIN', - 1, - ], - 'NATURAL RIGHT JOIN' => [ - 'NATURAL RIGHT JOIN', - 1, - ], - 'NATURAL LEFT OUTER JOIN' => [ - 'NATURAL LEFT OUTER JOIN', - 1, - ], - 'NATURAL RIGHT OUTER JOIN' => [ - 'NATURAL RIGHT JOIN', - 1, - ], - 'WHERE' => [ - 'WHERE', - 3, - ], - 'GROUP BY' => [ - 'GROUP BY', - 3, - ], - '_GROUP_OPTIONS' => [ - '_GROUP_OPTIONS', - 1, - ], - 'HAVING' => [ - 'HAVING', - 3, - ], - 'ORDER BY' => [ - 'ORDER BY', - 3, - ], - 'LIMIT' => [ - 'LIMIT', - 3, - ], - 'PROCEDURE' => [ - 'PROCEDURE', - 3, - ], - 'UNION' => [ - 'UNION', - 1, - ], - 'EXCEPT' => [ - 'EXCEPT', - 1, - ], - 'INTERSECT' => [ - 'INTERSECT', - 1, - ], - '_END_OPTIONS' => [ - '_END_OPTIONS', - 1, - ], - // These are available only when `UNION` is present. - // 'ORDER BY' => ['ORDER BY', 3], - // 'LIMIT' => ['LIMIT', 3], - ]; - - /** - * Expressions that are being selected by this statement. - * - * @var (CaseExpression|Expression)[] - */ - public $expr = []; - - /** - * Tables used as sources for this statement. - * - * @var Expression[] - */ - public $from = []; - - /** - * Index hints - * - * @var IndexHint[]|null - */ - public $index_hints; - - /** - * Partitions used as source for this statement. - * - * @var ArrayObj|null - */ - public $partition; - - /** - * Conditions used for filtering each row of the result set. - * - * @var Condition[]|null - */ - public $where; - - /** - * Conditions used for grouping the result set. - * - * @var GroupKeyword[]|null - */ - public $group; - - /** - * List of options available for the GROUP BY component. - * - * @var OptionsArray|null - */ - public $group_options; - - /** - * Conditions used for filtering the result set. - * - * @var Condition[]|null - */ - public $having; - - /** - * Specifies the order of the rows in the result set. - * - * @var OrderKeyword[]|null - */ - public $order; - - /** - * Conditions used for limiting the size of the result set. - * - * @var Limit|null - */ - public $limit; - - /** - * Procedure that should process the data in the result set. - * - * @var FunctionCall|null - */ - public $procedure; - - /** - * Destination of this result set. - * - * @var IntoKeyword|null - */ - public $into; - - /** - * Joins. - * - * @var JoinKeyword[]|null - */ - public $join; - - /** - * Unions. - * - * @var SelectStatement[] - */ - public $union = []; - - /** - * The end options of this query. - * - * @see static::$END_OPTIONS - * - * @var OptionsArray|null - */ - public $end_options; - - /** - * Gets the clauses of this statement. - * - * @return array> - * @psalm-return array - */ - public function getClauses() - { - // This is a cheap fix for `SELECT` statements that contain `UNION`. - // The `ORDER BY` and `LIMIT` clauses should be at the end of the - // statement. - if (! empty($this->union)) { - $clauses = static::$CLAUSES; - unset($clauses['ORDER BY'], $clauses['LIMIT']); - $clauses['ORDER BY'] = [ - 'ORDER BY', - 3, - ]; - $clauses['LIMIT'] = [ - 'LIMIT', - 3, - ]; - - return $clauses; - } - - return static::$CLAUSES; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/SetStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/SetStatement.php deleted file mode 100644 index b3186c1d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/SetStatement.php +++ /dev/null @@ -1,116 +0,0 @@ -> - * @psalm-var array - */ - public static $CLAUSES = [ - 'SET' => [ - 'SET', - 3, - ], - '_END_OPTIONS' => [ - '_END_OPTIONS', - 1, - ], - ]; - - /** - * Possible exceptions in SET statement. - * - * @var array> - * @psalm-var array [ - 3, - 'var', - ], - 'CHARACTER SET' => [ - 3, - 'var', - ], - 'NAMES' => [ - 3, - 'var', - ], - 'PASSWORD' => [ - 3, - 'expr', - ], - 'SESSION' => 3, - 'GLOBAL' => 3, - 'PERSIST' => 3, - 'PERSIST_ONLY' => 3, - '@@SESSION' => 3, - '@@GLOBAL' => 3, - '@@PERSIST' => 3, - '@@PERSIST_ONLY' => 3, - ]; - - /** - * @var array> - * @psalm-var array [ - 1, - 'var', - ], - 'DEFAULT' => 1, - ]; - - /** - * Options used in current statement. - * - * @var OptionsArray|null - */ - public $options; - - /** - * The end options of this query. - * - * @see static::$END_OPTIONS - * - * @var OptionsArray|null - */ - public $end_options; - - /** - * The updated values. - * - * @var SetOperation[]|null - */ - public $set; - - /** - * @return string - */ - public function build() - { - $ret = 'SET ' . OptionsArray::build($this->options) - . ' ' . SetOperation::build($this->set) - . ' ' . OptionsArray::build($this->end_options); - - return trim($ret); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/ShowStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/ShowStatement.php deleted file mode 100644 index 961385ea..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/ShowStatement.php +++ /dev/null @@ -1,61 +0,0 @@ -> - * @psalm-var array 1, - 'AUTHORS' => 2, - 'BINARY' => 2, - 'BINLOG' => 2, - 'CHARACTER' => 2, - 'CODE' => 2, - 'COLLATION' => 2, - 'COLUMNS' => 2, - 'CONTRIBUTORS' => 2, - 'DATABASE' => 2, - 'DATABASES' => 2, - 'ENGINE' => 2, - 'ENGINES' => 2, - 'ERRORS' => 2, - 'EVENT' => 2, - 'EVENTS' => 2, - 'FUNCTION' => 2, - 'GRANTS' => 2, - 'HOSTS' => 2, - 'INDEX' => 2, - 'INNODB' => 2, - 'LOGS' => 2, - 'MASTER' => 2, - 'OPEN' => 2, - 'PLUGINS' => 2, - 'PRIVILEGES' => 2, - 'PROCEDURE' => 2, - 'PROCESSLIST' => 2, - 'PROFILE' => 2, - 'PROFILES' => 2, - 'SCHEDULER' => 2, - 'SET' => 2, - 'SLAVE' => 2, - 'STATUS' => 2, - 'TABLE' => 2, - 'TABLES' => 2, - 'TRIGGER' => 2, - 'TRIGGERS' => 2, - 'VARIABLES' => 2, - 'VIEW' => 2, - 'WARNINGS' => 2, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/TransactionStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/TransactionStatement.php deleted file mode 100644 index a45cc412..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/TransactionStatement.php +++ /dev/null @@ -1,107 +0,0 @@ -> - * @psalm-var array 1, - 'BEGIN' => 1, - 'COMMIT' => 1, - 'ROLLBACK' => 1, - 'WITH CONSISTENT SNAPSHOT' => 2, - 'WORK' => 2, - 'AND NO CHAIN' => 3, - 'AND CHAIN' => 3, - 'RELEASE' => 4, - 'NO RELEASE' => 4, - ]; - - /** - * @param Parser $parser the instance that requests parsing - * @param TokensList $list the list of tokens to be parsed - * - * @return void - */ - public function parse(Parser $parser, TokensList $list) - { - parent::parse($parser, $list); - - // Checks the type of this query. - if ($this->options->has('START TRANSACTION') || $this->options->has('BEGIN')) { - $this->type = self::TYPE_BEGIN; - } elseif ($this->options->has('COMMIT') || $this->options->has('ROLLBACK')) { - $this->type = self::TYPE_END; - } - } - - /** - * @return string - */ - public function build() - { - $ret = OptionsArray::build($this->options); - if ($this->type === self::TYPE_BEGIN) { - foreach ($this->statements as $statement) { - /* - * @var SelectStatement $statement - */ - $ret .= ';' . $statement->build(); - } - - $ret .= ';'; - if ($this->end !== null) { - $ret .= $this->end->build(); - } - } - - return $ret; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/TruncateStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/TruncateStatement.php deleted file mode 100644 index fc5044e8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/TruncateStatement.php +++ /dev/null @@ -1,39 +0,0 @@ -> - * @psalm-var array 1]; - - /** - * The name of the truncated table. - * - * @var Expression|null - */ - public $table; - - /** - * Special build method for truncate statement as Statement::build would return empty string. - * - * @return string - */ - public function build() - { - return 'TRUNCATE TABLE ' . $this->table . ';'; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/UpdateStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/UpdateStatement.php deleted file mode 100644 index 021e09d5..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/UpdateStatement.php +++ /dev/null @@ -1,163 +0,0 @@ -> - * @psalm-var array 1, - 'IGNORE' => 2, - ]; - - /** - * The clauses of this statement, in order. - * - * @see Statement::$CLAUSES - * - * @var array> - * @psalm-var array - */ - public static $CLAUSES = [ - 'UPDATE' => [ - 'UPDATE', - 2, - ], - // Used for options. - '_OPTIONS' => [ - '_OPTIONS', - 1, - ], - // Used for updated tables. - '_UPDATE' => [ - 'UPDATE', - 1, - ], - 'JOIN' => [ - 'JOIN', - 1, - ], - 'LEFT JOIN' => [ - 'LEFT JOIN', - 1, - ], - 'INNER JOIN' => [ - 'INNER JOIN', - 1, - ], - 'SET' => [ - 'SET', - 3, - ], - 'WHERE' => [ - 'WHERE', - 3, - ], - 'ORDER BY' => [ - 'ORDER BY', - 3, - ], - 'LIMIT' => [ - 'LIMIT', - 3, - ], - ]; - - /** - * Tables used as sources for this statement. - * - * @var Expression[]|null - */ - public $tables; - - /** - * The updated values. - * - * @var SetOperation[]|null - */ - public $set; - - /** - * Conditions used for filtering each row of the result set. - * - * @var Condition[]|null - */ - public $where; - - /** - * Specifies the order of the rows in the result set. - * - * @var OrderKeyword[]|null - */ - public $order; - - /** - * Conditions used for limiting the size of the result set. - * - * @var Limit|null - */ - public $limit; - - /** - * Joins. - * - * @var JoinKeyword[]|null - */ - public $join; - - /** - * Function called after the token was processed. - * In the update statement, this is used to check that at least one assignment has been set to throw an error if a - * query like `UPDATE acme SET WHERE 1;` is parsed. - * - * @return void - * - * @throws ParserException throws the exception, if strict mode is enabled. - */ - public function after(Parser $parser, TokensList $list, Token $token) - { - /** @psalm-var string $tokenValue */ - $tokenValue = $token->value; - // Ensure we finished to parse the "SET" token, and if yes, ensure that assignments are defined. - if ($this->set !== [] || (Parser::$KEYWORD_PARSERS[$tokenValue]['field'] ?? null) !== 'set') { - return; - } - - $parser->error('Missing assignment in SET operation.', $list->tokens[$list->idx]); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/WithStatement.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/WithStatement.php deleted file mode 100644 index 58c1d1db..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Statements/WithStatement.php +++ /dev/null @@ -1,343 +0,0 @@ -> - * @psalm-var array 1]; - - /** - * The clauses of this statement, in order. - * - * @see Statement::$CLAUSES - * - * @var array> - * @psalm-var array - */ - public static $CLAUSES = [ - 'WITH' => [ - 'WITH', - 2, - ], - // Used for options. - '_OPTIONS' => [ - '_OPTIONS', - 1, - ], - 'AS' => [ - 'AS', - 2, - ], - ]; - - /** @var WithKeyword[] */ - public $withers = []; - - /** - * holds the CTE parser. - * - * @var Parser|null - */ - public $cteStatementParser; - - /** - * @param Parser $parser the instance that requests parsing - * @param TokensList $list the list of tokens to be parsed - * - * @return void - */ - public function parse(Parser $parser, TokensList $list) - { - /** - * The state of the parser. - * - * Below are the states of the parser. - * - * 0 ---------------- [ name ] -----------------> 1 - * - * 1 ------------------ [ ( ] ------------------> 2 - * - * 2 ------------------ [ AS ] -----------------> 3 - * - * 3 ------------------ [ ( ] ------------------> 4 - * - * 4 ------------------ [ , ] ------------------> 1 - * - * 4 ----- [ SELECT/UPDATE/DELETE/INSERT ] -----> 5 - * - * @var int - */ - $state = 0; - $wither = null; - - ++$list->idx; // Skipping `WITH`. - - // parse any options if provided - $this->options = OptionsArray::parse($parser, $list, static::$OPTIONS); - ++$list->idx; - - for (; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - // Skipping whitespaces and comments. - if ($token->type === Token::TYPE_WHITESPACE || $token->type === Token::TYPE_COMMENT) { - continue; - } - - if ($state === 0) { - if ($token->type !== Token::TYPE_NONE || ! preg_match('/^[a-zA-Z0-9_$]+$/', $token->token)) { - $parser->error('The name of the CTE was expected.', $token); - break; - } - - $wither = $token->value; - $this->withers[$wither] = new WithKeyword($wither); - $state = 1; - } elseif ($state === 1) { - if ($token->type === Token::TYPE_OPERATOR && $token->value === '(') { - $columns = Array2d::parse($parser, $list); - if ($parser->errors !== []) { - break; - } - - $this->withers[$wither]->columns = $columns; - $state = 2; - } elseif ($token->type === Token::TYPE_KEYWORD && $token->keyword === 'AS') { - $state = 3; - } else { - $parser->error('Unexpected token.', $token); - break; - } - } elseif ($state === 2) { - if (! ($token->type === Token::TYPE_KEYWORD && $token->keyword === 'AS')) { - $parser->error('AS keyword was expected.', $token); - break; - } - - $state = 3; - } elseif ($state === 3) { - $idxBeforeGetNext = $list->idx; - - $list->idx++; // Ignore the current token - $nextKeyword = $list->getNext(); - - if (! ($token->value === '(' && ($nextKeyword && $nextKeyword->value === 'SELECT'))) { - $parser->error('Subquery of the CTE was expected.', $token); - $list->idx = $idxBeforeGetNext; - break; - } - - // Restore the index - $list->idx = $idxBeforeGetNext; - - ++$list->idx; - $subList = $this->getSubTokenList($list); - if ($subList instanceof ParserException) { - $parser->errors[] = $subList; - break; - } - - $subParser = new Parser($subList); - - if (count($subParser->errors)) { - foreach ($subParser->errors as $error) { - $parser->errors[] = $error; - } - - break; - } - - $this->withers[$wither]->statement = $subParser; - - $state = 4; - } elseif ($state === 4) { - if ($token->value === ',') { - // There's another WITH expression to parse, go back to state=0 - $state = 0; - continue; - } - - if ( - $token->type === Token::TYPE_KEYWORD && ( - $token->value === 'SELECT' - || $token->value === 'INSERT' - || $token->value === 'UPDATE' - || $token->value === 'DELETE' - ) - ) { - $state = 5; - --$list->idx; - continue; - } - - $parser->error('An expression was expected.', $token); - break; - } elseif ($state === 5) { - /** - * We need to parse all of the remaining tokens becuase mostly, they are only the CTE expression - * which's mostly is SELECT, or INSERT, UPDATE, or delete statement. - * e.g: INSERT .. ( SELECT 1 ) SELECT col1 FROM cte ON DUPLICATE KEY UPDATE col_name = 3. - * The issue is that, `ON DUPLICATE KEY UPDATE col_name = 3` is related to the main INSERT query - * not the cte expression (SELECT col1 FROM cte) we need to determine the end of the expression - * to parse `ON DUPLICATE KEY UPDATE` from the InsertStatement parser instead. - */ - - // Index of the last parsed token by default would be the last token in the $list, because we're - // assuming that all remaining tokens at state 4, are related to the expression. - $idxOfLastParsedToken = $list->count - 1; - // Index before search to be able to restore the index. - $idxBeforeSearch = $list->idx; - // Length of expression tokens is null by default, in order for the $subList to start - // from $list->idx to the end of the $list. - $lengthOfExpressionTokens = null; - - if ($list->getNextOfTypeAndValue(Token::TYPE_KEYWORD, 'ON')) { - // (-1) because getNextOfTypeAndValue returned ON and increased the index. - $idxOfOn = $list->idx - 1; - // We want to make sure that it's `ON DUPLICATE KEY UPDATE` - $dubplicateToken = $list->getNext(); - $keyToken = $list->getNext(); - $updateToken = $list->getNext(); - if ( - $dubplicateToken && $dubplicateToken->keyword === 'DUPLICATE' - && ($keyToken && $keyToken->keyword === 'KEY') - && ($updateToken && $updateToken->keyword === 'UPDATE') - ) { - // Index of the last parsed token will be the token before the ON Keyword - $idxOfLastParsedToken = $idxOfOn - 1; - // The length of the expression tokens would be the difference - // between the first unrelated token `ON` and the idx - // before skipping the CTE tokens. - $lengthOfExpressionTokens = $idxOfOn - $idxBeforeSearch; - } - } - - // Restore the index - $list->idx = $idxBeforeSearch; - - $subList = new TokensList(array_slice($list->tokens, $list->idx, $lengthOfExpressionTokens)); - $subParser = new Parser($subList); - if (count($subParser->errors)) { - foreach ($subParser->errors as $error) { - $parser->errors[] = $error; - } - - break; - } - - $this->cteStatementParser = $subParser; - - $list->idx = $idxOfLastParsedToken; - break; - } - } - - // 5 is the only valid end state - if ($state !== 5) { - /** - * Token parsed at this moment. - */ - $token = $list->tokens[$list->idx]; - - $parser->error('Unexpected end of the WITH CTE.', $token); - } - - --$list->idx; - } - - /** - * {@inheritdoc} - */ - public function build() - { - $str = 'WITH '; - - foreach ($this->withers as $wither) { - $str .= $str === 'WITH ' ? '' : ', '; - $str .= WithKeyword::build($wither); - } - - $str .= ' '; - - if ($this->cteStatementParser) { - foreach ($this->cteStatementParser->statements as $statement) { - $str .= $statement->build(); - } - } - - return $str; - } - - /** - * Get tokens within the WITH expression to use them in another parser - * - * @return ParserException|TokensList - */ - private function getSubTokenList(TokensList $list) - { - $idx = $list->idx; - $token = $list->tokens[$list->idx]; - $openParenthesis = 0; - - while ($list->idx < $list->count) { - if ($token->value === '(') { - ++$openParenthesis; - } elseif ($token->value === ')') { - if (--$openParenthesis === -1) { - break; - } - } - - ++$list->idx; - if (! isset($list->tokens[$list->idx])) { - break; - } - - $token = $list->tokens[$list->idx]; - } - - // performance improvement: return the error to avoid a try/catch in the loop - if ($list->idx === $list->count) { - --$list->idx; - - return new ParserException( - Translator::gettext('A closing bracket was expected.'), - $token - ); - } - - $length = $list->idx - $idx; - - return new TokensList(array_slice($list->tokens, $idx, $length), $length); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Token.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Token.php deleted file mode 100644 index e4a2f45d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Token.php +++ /dev/null @@ -1,344 +0,0 @@ -, !==, etc. - * Bitwise operators: &, |, ^, etc. - * Assignment operators: =, +=, -=, etc. - * SQL specific operators: . (e.g. .. WHERE database.table ..), - * * (e.g. SELECT * FROM ..) - */ - public const TYPE_OPERATOR = 2; - - /** - * Spaces, tabs, new lines, etc. - */ - public const TYPE_WHITESPACE = 3; - - /** - * Any type of legal comment. - * - * Bash (#), C (/* *\/) or SQL (--) comments: - * - * -- SQL-comment - * - * #Bash-like comment - * - * /*C-like comment*\/ - * - * or: - * - * /*C-like - * comment*\/ - * - * Backslashes were added to respect PHP's comments syntax. - */ - public const TYPE_COMMENT = 4; - - /** - * Boolean values: true or false. - */ - public const TYPE_BOOL = 5; - - /** - * Numbers: 4, 0x8, 15.16, 23e42, etc. - */ - public const TYPE_NUMBER = 6; - - /** - * Literal strings: 'string', "test". - * Some of these strings are actually symbols. - */ - public const TYPE_STRING = 7; - - /** - * Database, table names, variables, etc. - * For example: ```SELECT `foo`, `bar` FROM `database`.`table`;```. - */ - public const TYPE_SYMBOL = 8; - - /** - * Delimits an unknown string. - * For example: ```SELECT * FROM test;```, `test` is a delimiter. - */ - public const TYPE_DELIMITER = 9; - - /** - * Labels in LOOP statement, ITERATE statement etc. - * For example (only for begin label): - * begin_label: BEGIN [statement_list] END [end_label] - * begin_label: LOOP [statement_list] END LOOP [end_label] - * begin_label: REPEAT [statement_list] ... END REPEAT [end_label] - * begin_label: WHILE ... DO [statement_list] END WHILE [end_label]. - */ - public const TYPE_LABEL = 10; - - /** - * All tokens types - */ - public const TYPE_ALL = [ - self::TYPE_NONE, - self::TYPE_KEYWORD, - self::TYPE_OPERATOR, - self::TYPE_WHITESPACE, - self::TYPE_COMMENT, - self::TYPE_BOOL, - self::TYPE_NUMBER, - self::TYPE_STRING, - self::TYPE_SYMBOL, - self::TYPE_DELIMITER, - self::TYPE_LABEL, - ]; - - // Flags that describe the tokens in more detail. - // All keywords must have flag 1 so `Context::isKeyword` method doesn't - // require strict comparison. - public const FLAG_KEYWORD = 1; - public const FLAG_KEYWORD_RESERVED = 2; - public const FLAG_KEYWORD_COMPOSED = 4; - public const FLAG_KEYWORD_DATA_TYPE = 8; - public const FLAG_KEYWORD_KEY = 16; - public const FLAG_KEYWORD_FUNCTION = 32; - - // Numbers related flags. - public const FLAG_NUMBER_HEX = 1; - public const FLAG_NUMBER_FLOAT = 2; - public const FLAG_NUMBER_APPROXIMATE = 4; - public const FLAG_NUMBER_NEGATIVE = 8; - public const FLAG_NUMBER_BINARY = 16; - - // Strings related flags. - public const FLAG_STRING_SINGLE_QUOTES = 1; - public const FLAG_STRING_DOUBLE_QUOTES = 2; - - // Comments related flags. - public const FLAG_COMMENT_BASH = 1; - public const FLAG_COMMENT_C = 2; - public const FLAG_COMMENT_SQL = 4; - public const FLAG_COMMENT_MYSQL_CMD = 8; - - // Operators related flags. - public const FLAG_OPERATOR_ARITHMETIC = 1; - public const FLAG_OPERATOR_LOGICAL = 2; - public const FLAG_OPERATOR_BITWISE = 4; - public const FLAG_OPERATOR_ASSIGNMENT = 8; - public const FLAG_OPERATOR_SQL = 16; - - // Symbols related flags. - public const FLAG_SYMBOL_VARIABLE = 1; - public const FLAG_SYMBOL_BACKTICK = 2; - public const FLAG_SYMBOL_USER = 4; - public const FLAG_SYMBOL_SYSTEM = 8; - public const FLAG_SYMBOL_PARAMETER = 16; - - /** - * The token it its raw string representation. - * - * @var string - */ - public $token; - - /** - * The value this token contains (i.e. token after some evaluation). - * - * @var mixed - */ - public $value; - - /** - * The keyword value this token contains, always uppercase. - * - * @var mixed|string|null - */ - public $keyword; - - /** - * The type of this token. - * - * @var int - */ - public $type; - - /** - * The flags of this token. - * - * @var int - */ - public $flags; - - /** - * The position in the initial string where this token started. - * - * The position is counted in chars, not bytes, so you should - * use mb_* functions to properly handle utf-8 multibyte chars. - * - * @var int|null - */ - public $position; - - /** - * @param string $token the value of the token - * @param int $type the type of the token - * @param int $flags the flags of the token - */ - public function __construct($token, $type = 0, $flags = 0) - { - $this->token = $token; - $this->type = $type; - $this->flags = $flags; - $this->keyword = null; - $this->value = $this->extract(); - } - - /** - * Does little processing to the token to extract a value. - * - * If no processing can be done it will return the initial string. - * - * @return mixed - */ - public function extract() - { - switch ($this->type) { - case self::TYPE_KEYWORD: - $this->keyword = strtoupper($this->token); - if (! ($this->flags & self::FLAG_KEYWORD_RESERVED)) { - // Unreserved keywords should stay the way they are because they - // might represent field names. - return $this->token; - } - - return $this->keyword; - - case self::TYPE_WHITESPACE: - return ' '; - - case self::TYPE_BOOL: - return strtoupper($this->token) === 'TRUE'; - - case self::TYPE_NUMBER: - $ret = str_replace('--', '', $this->token); // e.g. ---42 === -42 - if ($this->flags & self::FLAG_NUMBER_HEX) { - $ret = str_replace(['-', '+'], '', $this->token); - if ($this->flags & self::FLAG_NUMBER_NEGATIVE) { - $ret = -hexdec($ret); - } else { - $ret = hexdec($ret); - } - } elseif (($this->flags & self::FLAG_NUMBER_APPROXIMATE) || ($this->flags & self::FLAG_NUMBER_FLOAT)) { - $ret = (float) $ret; - } elseif (! ($this->flags & self::FLAG_NUMBER_BINARY)) { - $ret = (int) $ret; - } - - return $ret; - - case self::TYPE_STRING: - // Trims quotes. - $str = $this->token; - $str = mb_substr($str, 1, -1, 'UTF-8'); - - // Removes surrounding quotes. - $quote = $this->token[0]; - $str = str_replace($quote . $quote, $quote, $str); - - // Finally unescapes the string. - // - // `stripcslashes` replaces escape sequences with their - // representation. - // - // NOTE: In MySQL, `\f` and `\v` have no representation, - // even they usually represent: form-feed and vertical tab. - $str = str_replace('\f', 'f', $str); - $str = str_replace('\v', 'v', $str); - $str = stripcslashes($str); - - return $str; - - case self::TYPE_SYMBOL: - $str = $this->token; - if (isset($str[0]) && ($str[0] === '@')) { - // `mb_strlen($str)` must be used instead of `null` because - // in PHP 5.3- the `null` parameter isn't handled correctly. - $str = mb_substr( - $str, - ! empty($str[1]) && ($str[1] === '@') ? 2 : 1, - mb_strlen($str), - 'UTF-8' - ); - } - - if (isset($str[0]) && ($str[0] === ':')) { - $str = mb_substr($str, 1, mb_strlen($str), 'UTF-8'); - } - - if (isset($str[0]) && (($str[0] === '`') || ($str[0] === '"') || ($str[0] === '\''))) { - $quote = $str[0]; - $str = mb_substr($str, 1, -1, 'UTF-8'); - $str = str_replace($quote . $quote, $quote, $str); - } - - return $str; - } - - return $this->token; - } - - /** - * Converts the token into an inline token by replacing tabs and new lines. - * - * @return string - */ - public function getInlineToken() - { - return str_replace( - [ - "\r", - "\n", - "\t", - ], - [ - '\r', - '\n', - '\t', - ], - $this->token - ); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/TokensList.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/TokensList.php deleted file mode 100644 index 88383539..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/TokensList.php +++ /dev/null @@ -1,282 +0,0 @@ - - */ -class TokensList implements ArrayAccess -{ - /** - * The array of tokens. - * - * @var Token[] - */ - public $tokens = []; - - /** - * The count of tokens. - * - * @var int - */ - public $count = 0; - - /** - * The index of the next token to be returned. - * - * @var int - */ - public $idx = 0; - - /** - * @param Token[] $tokens the initial array of tokens - * @param int $count the count of tokens in the initial array - */ - public function __construct(array $tokens = [], $count = -1) - { - if (empty($tokens)) { - return; - } - - $this->tokens = $tokens; - $this->count = $count === -1 ? count($tokens) : $count; - } - - /** - * Builds an array of tokens by merging their raw value. - * - * @param string|Token[]|TokensList $list the tokens to be built - * - * @return string - */ - public static function build($list) - { - if (is_string($list)) { - return $list; - } - - if ($list instanceof self) { - $list = $list->tokens; - } - - $ret = ''; - if (is_array($list)) { - foreach ($list as $tok) { - $ret .= $tok->token; - } - } - - return $ret; - } - - /** - * Adds a new token. - * - * @param Token $token token to be added in list - * - * @return void - */ - public function add(Token $token) - { - $this->tokens[$this->count++] = $token; - } - - /** - * Gets the next token. Skips any irrelevant token (whitespaces and - * comments). - * - * @return Token|null - */ - public function getNext() - { - for (; $this->idx < $this->count; ++$this->idx) { - if ( - ($this->tokens[$this->idx]->type !== Token::TYPE_WHITESPACE) - && ($this->tokens[$this->idx]->type !== Token::TYPE_COMMENT) - ) { - return $this->tokens[$this->idx++]; - } - } - - return null; - } - - /** - * Gets the previous token. Skips any irrelevant token (whitespaces and - * comments). - */ - public function getPrevious(): ?Token - { - for (; $this->idx >= 0; --$this->idx) { - if ( - ($this->tokens[$this->idx]->type !== Token::TYPE_WHITESPACE) - && ($this->tokens[$this->idx]->type !== Token::TYPE_COMMENT) - ) { - return $this->tokens[$this->idx--]; - } - } - - return null; - } - - /** - * Gets the previous token. - * - * @param int|int[] $type the type - * - * @return Token|null - */ - public function getPreviousOfType($type) - { - if (! is_array($type)) { - $type = [$type]; - } - - for (; $this->idx >= 0; --$this->idx) { - if (in_array($this->tokens[$this->idx]->type, $type, true)) { - return $this->tokens[$this->idx--]; - } - } - - return null; - } - - /** - * Gets the next token. - * - * @param int|int[] $type the type - * - * @return Token|null - */ - public function getNextOfType($type) - { - if (! is_array($type)) { - $type = [$type]; - } - - for (; $this->idx < $this->count; ++$this->idx) { - if (in_array($this->tokens[$this->idx]->type, $type, true)) { - return $this->tokens[$this->idx++]; - } - } - - return null; - } - - /** - * Gets the next token. - * - * @param int $type the type of the token - * @param string $value the value of the token - * - * @return Token|null - */ - public function getNextOfTypeAndValue($type, $value) - { - for (; $this->idx < $this->count; ++$this->idx) { - if (($this->tokens[$this->idx]->type === $type) && ($this->tokens[$this->idx]->value === $value)) { - return $this->tokens[$this->idx++]; - } - } - - return null; - } - - /** - * Gets the next token. - * - * @param int $type the type of the token - * @param int $flag the flag of the token - */ - public function getNextOfTypeAndFlag(int $type, int $flag): ?Token - { - for (; $this->idx < $this->count; ++$this->idx) { - if (($this->tokens[$this->idx]->type === $type) && ($this->tokens[$this->idx]->flags === $flag)) { - return $this->tokens[$this->idx++]; - } - } - - return null; - } - - /** - * Sets a Token inside the list of tokens. - * When defined, offset must be positive otherwise the offset is ignored. - * If the offset is not defined (like in array_push) or if it is greater than the number of Tokens already stored, - * the Token is appended to the list of tokens. - * - * @param int|null $offset the offset to be set. Must be positive otherwise, nothing will be stored. - * @param Token $value the token to be saved - * - * @return void - */ - #[\ReturnTypeWillChange] - public function offsetSet($offset, $value) - { - if ($offset === null || $offset >= $this->count) { - $this->tokens[$this->count++] = $value; - } elseif ($offset >= 0) { - $this->tokens[$offset] = $value; - } - } - - /** - * Gets a Token from the list of tokens. - * If the offset is negative or above the number of tokens set in the list, will return null. - * - * @param int $offset the offset to be returned - * - * @return Token|null - */ - #[\ReturnTypeWillChange] - public function offsetGet($offset) - { - return $this->offsetExists($offset) ? $this->tokens[$offset] : null; - } - - /** - * Checks if an offset was previously set. - * If the offset is negative or above the number of tokens set in the list, will return false. - * - * @param int $offset the offset to be checked - * - * @return bool - */ - #[\ReturnTypeWillChange] - public function offsetExists($offset) - { - return $offset >= 0 && $offset < $this->count; - } - - /** - * Unsets the value of an offset, if the offset exists. - * - * @param int $offset the offset to be unset - * - * @return void - */ - #[\ReturnTypeWillChange] - public function offsetUnset($offset) - { - if (! $this->offsetExists($offset)) { - return; - } - - array_splice($this->tokens, $offset, 1); - --$this->count; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Tools/ContextGenerator.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Tools/ContextGenerator.php deleted file mode 100644 index 7d6f4d61..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Tools/ContextGenerator.php +++ /dev/null @@ -1,412 +0,0 @@ - - */ - public static $LABELS_FLAGS = [ - '(R)' => Token::FLAG_KEYWORD_RESERVED, - '(D)' => Token::FLAG_KEYWORD_DATA_TYPE, - '(K)' => Token::FLAG_KEYWORD_KEY, - '(F)' => Token::FLAG_KEYWORD_FUNCTION, - ]; - - /** - * Documentation links for each context. - * - * @var array - */ - public static $LINKS = [ - 'MySql50000' => 'https://dev.mysql.com/doc/refman/5.0/en/keywords.html', - 'MySql50100' => 'https://dev.mysql.com/doc/refman/5.1/en/keywords.html', - 'MySql50500' => 'https://dev.mysql.com/doc/refman/5.5/en/keywords.html', - 'MySql50600' => 'https://dev.mysql.com/doc/refman/5.6/en/keywords.html', - 'MySql50700' => 'https://dev.mysql.com/doc/refman/5.7/en/keywords.html', - 'MySql80000' => 'https://dev.mysql.com/doc/refman/8.0/en/keywords.html', - 'MySql80100' => 'https://dev.mysql.com/doc/refman/8.1/en/keywords.html', - 'MySql80200' => 'https://dev.mysql.com/doc/refman/8.2/en/keywords.html', - 'MySql80300' => 'https://dev.mysql.com/doc/refman/8.3/en/keywords.html', - 'MySql80400' => 'https://dev.mysql.com/doc/refman/8.4/en/keywords.html', - 'MySql90000' => 'https://dev.mysql.com/doc/refman/9.0/en/keywords.html', - 'MySql90100' => 'https://dev.mysql.com/doc/refman/9.1/en/keywords.html', - 'MariaDb100000' => 'https://mariadb.com/kb/en/reserved-words/', - 'MariaDb100100' => 'https://mariadb.com/kb/en/reserved-words/', - 'MariaDb100200' => 'https://mariadb.com/kb/en/reserved-words/', - 'MariaDb100300' => 'https://mariadb.com/kb/en/reserved-words/', - 'MariaDb100400' => 'https://mariadb.com/kb/en/reserved-words/', - 'MariaDb100500' => 'https://mariadb.com/kb/en/reserved-words/', - 'MariaDb100600' => 'https://mariadb.com/kb/en/reserved-words/', - 'MariaDb100700' => 'https://mariadb.com/kb/en/reserved-words/', - 'MariaDb100800' => 'https://mariadb.com/kb/en/reserved-words/', - 'MariaDb100900' => 'https://mariadb.com/kb/en/reserved-words/', - 'MariaDb101000' => 'https://mariadb.com/kb/en/reserved-words/', - 'MariaDb101100' => 'https://mariadb.com/kb/en/reserved-words/', - 'MariaDb110000' => 'https://mariadb.com/kb/en/reserved-words/', - 'MariaDb110100' => 'https://mariadb.com/kb/en/reserved-words/', - 'MariaDb110200' => 'https://mariadb.com/kb/en/reserved-words/', - 'MariaDb110300' => 'https://mariadb.com/kb/en/reserved-words/', - 'MariaDb110400' => 'https://mariadb.com/kb/en/reserved-words/', - 'MariaDb110500' => 'https://mariadb.com/kb/en/reserved-words/', - 'MariaDb110600' => 'https://mariadb.com/kb/en/reserved-words/', - 'MariaDb110700' => 'https://mariadb.com/kb/en/reserved-words/', - ]; - - /** - * Reversed const <=> int from {@see Token} class to write the constant name instead of its value. - * - * @var array - */ - private static $typesNumToConst = [ - 1 => 'Token::FLAG_KEYWORD', - 2 => 'Token::FLAG_KEYWORD_RESERVED', - 4 => 'Token::FLAG_KEYWORD_COMPOSED', - 8 => 'Token::FLAG_KEYWORD_DATA_TYPE', - 16 => 'Token::FLAG_KEYWORD_KEY', - 32 => 'Token::FLAG_KEYWORD_FUNCTION', - ]; - - /** - * The template of a context. - * - * Parameters: - * 1 - name - * 2 - class - * 3 - link - * 4 - keywords array - */ - public const TEMPLATE = <<<'PHP' - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ -%4$s ]; -} - -PHP; - - /** - * Sorts an array of words. - * - * @param array> $arr - * - * @return array> - */ - public static function sortWords(array &$arr) - { - ksort($arr); - foreach ($arr as &$words) { - sort($words, SORT_STRING); - } - - return $arr; - } - - /** - * Reads a list of words and sorts it by type, length and keyword. - * - * @param list $files - * - * @return array> - */ - public static function readWords(array $files) - { - /** @psalm-var list $words */ - $words = []; - foreach ($files as $file) { - $words = array_merge($words, file($file)); - } - - /** @var array $types */ - $types = []; - - for ($i = 0, $count = count($words); $i !== $count; ++$i) { - $value = trim($words[$i]); - if ($value === '') { - continue; - } - - $type = Token::FLAG_KEYWORD; - - // Reserved, data types, keys, functions, etc. keywords. - foreach (static::$LABELS_FLAGS as $label => $flags) { - if (strstr($value, $label) === false) { - continue; - } - - $type |= $flags; - $value = trim(str_replace($label, '', $value)); - } - - // Composed keyword. - if (strstr($value, ' ') !== false) { - $type |= Token::FLAG_KEYWORD_RESERVED; - $type |= Token::FLAG_KEYWORD_COMPOSED; - } - - $value = strtoupper($value); - if (! isset($types[$value])) { - $types[$value] = $type; - } else { - $types[$value] |= $type; - } - } - - // Prepare an array in a way to sort by type, then by word. - $ret = []; - foreach ($types as $word => $type) { - $ret[$type][] = $word; - } - - return static::sortWords($ret); - } - - /** - * Prints an array of a words in PHP format. - * - * @param array> $words the list of words to be formatted - */ - public static function printWords(array $words): string - { - $ret = ''; - foreach ($words as $type => $wordsByType) { - foreach ($wordsByType as $word) { - $ret .= sprintf(" '%s' => %s,\n", $word, self::translateIntTypeToTextConstant($type)); - } - } - - return $ret; - } - - private static function translateIntTypeToTextConstant(int $type): string - { - $matchingFlags = array_filter( - self::$typesNumToConst, - static function (int $num) use ($type): bool { - return ($type & $num) !== 0; - }, - ARRAY_FILTER_USE_KEY - ); - - return implode(' | ', $matchingFlags); - } - - /** - * Generates a context's class. - * - * @param array>> $options the options for this context - * @psalm-param array{ - * name: string, - * class: string, - * link: string, - * keywords: array> - * } $options - * - * @return string - */ - public static function generate($options) - { - $options['keywords'] = static::printWords($options['keywords']); - - return sprintf(self::TEMPLATE, $options['name'], $options['class'], $options['link'], $options['keywords']); - } - - /** - * Formats context name. - * - * @param string $name name to format - * - * @return string - */ - public static function formatName($name) - { - /* Split name and version */ - $parts = []; - if (preg_match('/^(\D+)(\d+)$/', $name, $parts) === 0) { - return $name; - } - - /* Format name */ - $base = $parts[1]; - switch ($base) { - case 'MySql': - $base = 'MySQL'; - break; - case 'MariaDb': - $base = 'MariaDB'; - break; - } - - /* Parse version to array */ - $versionString = $parts[2]; - if (strlen($versionString) % 2 === 1) { - $versionString = '0' . $versionString; - } - - $version = array_map('intval', str_split($versionString, 2)); - /* Remove trailing zero */ - if ($version[count($version) - 1] === 0) { - $version = array_slice($version, 0, -1); - } - - /* Create name */ - return $base . ' ' . implode('.', $version); - } - - /** - * Builds a test. - * - * Reads the input file, generates the data and writes it back. - * - * @param string $input the input file - * @param string $output the output directory - * - * @return void - */ - public static function build($input, $output) - { - /** - * The directory that contains the input file. - * - * Used to include common files. - * - * @var string - */ - $directory = dirname($input) . '/'; - - /** - * The name of the file that contains the context. - */ - $file = basename($input); - - /** - * The name of the context. - * - * @var string - */ - $name = substr($file, 0, -4); - - /** - * The name of the class that defines this context. - * - * @var string - */ - $class = 'Context' . $name; - - /** - * The formatted name of this context. - */ - $formattedName = static::formatName($name); - - file_put_contents( - $output . '/' . $class . '.php', - static::generate( - [ - 'name' => $formattedName, - 'class' => $class, - 'link' => static::$LINKS[$name], - 'keywords' => static::readWords( - [ - $directory . '_common.txt', - $directory . '_functions' . $file, - $directory . $file, - ] - ), - ] - ) - ); - } - - /** - * Generates recursively all tests preserving the directory structure. - * - * @param string $input the input directory - * @param string $output the output directory - * - * @return void - */ - public static function buildAll($input, $output) - { - $files = scandir($input); - - foreach ($files as $file) { - // Skipping current and parent directories. - // Skipping _functions* and _common.txt files - if (($file[0] === '.') || ($file[0] === '_')) { - continue; - } - - // Skipping README.md - if ($file === 'README.md') { - continue; - } - - // Building the context. - echo sprintf("Building context for %s...\n", $file); - static::build($input . '/' . $file, $output); - } - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Tools/CustomJsonSerializer.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Tools/CustomJsonSerializer.php deleted file mode 100644 index 65ef9058..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Tools/CustomJsonSerializer.php +++ /dev/null @@ -1,76 +0,0 @@ - - */ - protected function extractObjectData($value, $ref, $properties) - { - $data = []; - foreach ($properties as $property) { - if (in_array($property, self::SKIP_PROPERTIES, true)) { - continue; - } - - try { - $propRef = $ref->getProperty($property); - $propRef->setAccessible(true); - $data[$property] = $propRef->getValue($value); - } catch (ReflectionException $e) { - $data[$property] = $value->$property; - } - } - - return $data; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Tools/TestGenerator.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Tools/TestGenerator.php deleted file mode 100644 index 1fa924d2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Tools/TestGenerator.php +++ /dev/null @@ -1,258 +0,0 @@ ->>|null> - */ - public static function generate($query, $type = 'parser') - { - /** - * Lexer used for tokenizing the query. - */ - $lexer = new Lexer($query); - - /** - * Parsed used for analyzing the query. - * A new instance of parser is generated only if the test requires. - * - * @var Parser - */ - $parser = $type === 'parser' ? new Parser($lexer->list) : null; - - /** - * Lexer's errors. - * - * @var array> - */ - $lexerErrors = []; - - /** - * Parser's errors. - */ - $parserErrors = []; - - // Both the lexer and the parser construct exception for errors. - // Usually, exceptions contain a full stack trace and other details that - // are not required. - // The code below extracts only the relevant information. - - // Extracting lexer's errors. - if (! empty($lexer->errors)) { - /** @var LexerException $err */ - foreach ($lexer->errors as $err) { - $lexerErrors[] = [ - $err->getMessage(), - $err->ch, - $err->pos, - $err->getCode(), - ]; - } - - $lexer->errors = []; - } - - // Extracting parser's errors. - if (! empty($parser->errors)) { - /** @var ParserException $err */ - foreach ($parser->errors as $err) { - $parserErrors[] = [ - $err->getMessage(), - $err->token, - $err->getCode(), - ]; - } - - $parser->errors = []; - } - - return [ - 'query' => $query, - 'lexer' => $lexer, - 'parser' => $parser, - 'errors' => [ - 'lexer' => $lexerErrors, - 'parser' => $parserErrors, - ], - ]; - } - - /** - * Builds a test. - * - * Reads the input file, generates the data and writes it back. - * - * @param string $type the type of this test - * @param string $input the input file - * @param string $output the output file - * @param string $debug the debug file - * @param bool $ansi activate quotes ANSI mode - * - * @return void - */ - public static function build($type, $input, $output, $debug = null, $ansi = false) - { - // Support query types: `lexer` / `parser`. - if (! in_array($type, ['lexer', 'parser'])) { - throw new Exception('Unknown test type (expected `lexer` or `parser`).'); - } - - /** - * The query that is used to generate the test. - * - * @var string - */ - $query = file_get_contents($input); - - // There is no point in generating a test without a query. - if (empty($query)) { - throw new Exception('No input query specified.'); - } - - if ($ansi === true) { - // set ANSI_QUOTES for ansi tests - Context::setMode(Context::SQL_MODE_ANSI_QUOTES); - } - - $mariaDbPos = strpos($input, '_mariadb_'); - if ($mariaDbPos !== false) {// Keep in sync with TestCase.php - // set context - $mariaDbVersion = (int) substr($input, $mariaDbPos + 9, 6); - Context::load('MariaDb' . $mariaDbVersion); - } else { - // Load the default context to be sure there is no side effects - Context::load(''); - } - - $test = static::generate($query, $type); - - // unset mode, reset to default every time, to be sure - Context::setMode(); - $serializer = new CustomJsonSerializer(); - // Writing test's data. - $encoded = $serializer->serialize($test); - - $encoded = (string) json_encode( - json_decode($encoded), - JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_PRESERVE_ZERO_FRACTION | JSON_UNESCAPED_SLASHES - ); - - // Remove the project path from .out file, it changes for each dev - $projectFolder = dirname(__DIR__, 2);// Jump to root - $encoded = str_replace($projectFolder, '', $encoded); - - file_put_contents($output, $encoded); - - // Dumping test's data in human readable format too (if required). - if (empty($debug)) { - return; - } - - file_put_contents($debug, print_r($test, true)); - } - - /** - * Generates recursively all tests preserving the directory structure. - * - * @param string $input the input directory - * @param string $output the output directory - * @param mixed|null $debug - * - * @return void - */ - public static function buildAll($input, $output, $debug = null) - { - $files = scandir($input); - - foreach ($files as $file) { - // Skipping current and parent directories. - if (($file === '.') || ($file === '..')) { - continue; - } - - // Appending the filename to directories. - $inputFile = $input . '/' . $file; - $outputFile = $output . '/' . $file; - $debugFile = $debug !== null ? $debug . '/' . $file : null; - - if (is_dir($inputFile)) { - // Creating required directories to maintain the structure. - // Ignoring errors if the folder structure exists already. - if (! is_dir($outputFile)) { - mkdir($outputFile); - } - - if (($debug !== null) && (! is_dir($debugFile))) { - mkdir($debugFile); - } - - // Generating tests recursively. - static::buildAll($inputFile, $outputFile, $debugFile); - } elseif (str_ends_with($inputFile, '.in')) { - // Generating file names by replacing `.in` with `.out` and - // `.debug`. - $outputFile = substr($outputFile, 0, -3) . '.out'; - if ($debug !== null) { - $debugFile = substr($debugFile, 0, -3) . '.debug'; - } - - // Building the test. - if (! file_exists($outputFile)) { - echo sprintf("Building test for %s...\n", $inputFile); - static::build( - str_contains($inputFile, 'lex') ? 'lexer' : 'parser', - $inputFile, - $outputFile, - $debugFile, - str_contains($inputFile, 'ansi') - ); - } else { - echo sprintf("Test for %s already built!\n", $inputFile); - } - } - } - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Translator.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Translator.php deleted file mode 100644 index b0a9ebc5..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Translator.php +++ /dev/null @@ -1,78 +0,0 @@ -setlocale( - self::$loader->detectlocale() - ); - - // Set default text domain - self::$loader->textdomain('sqlparser'); - - // Set path where to look for a domain - self::$loader->bindtextdomain('sqlparser', __DIR__ . '/../locale/'); - } - - if (self::$translator !== null) { - return; - } - - // Get translator - self::$translator = self::$loader->getTranslator(); - } - - /** - * Translates a string. - * - * @param string $msgid String to be translated - * - * @return string translated string (or original, if not found) - */ - public static function gettext($msgid) - { - if (! class_exists('\PhpMyAdmin\MoTranslator\Loader', true)) { - return $msgid; - } - - self::load(); - - return self::$translator->gettext($msgid); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/UtfString.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/UtfString.php deleted file mode 100644 index a9495085..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/UtfString.php +++ /dev/null @@ -1,354 +0,0 @@ - - */ -class UtfString implements ArrayAccess, Stringable -{ - /** - * The raw, multi-byte string. - * - * @var string - */ - public $str = ''; - - /** - * The index of current byte. - * - * For ASCII strings, the byte index is equal to the character index. - * - * @var int - */ - public $byteIdx = 0; - - /** - * The index of current character. - * - * For non-ASCII strings, some characters occupy more than one byte and - * the character index will have a lower value than the byte index. - * - * @var int - */ - public $charIdx = 0; - - /** - * The length of the string (in bytes). - * - * @var int - */ - public $byteLen = 0; - - /** - * The length of the string (in characters). - * - * @var int - */ - public $charLen = 0; - - /** - * A map of ASCII binary values to their ASCII code - * This is to improve performance and avoid calling ord($byte) - * - * Source: https://www.freecodecamp.org/news/ascii-table-hex-to-ascii-value-character-code-chart-2/ - * - * @var array - */ - protected static $asciiMap = [ - "\0" => 0, // (00000000) NUL Null - "\t" => 9, // (00001001) HT Horizontal Tab - "\n" => 10, // (00001010) LF Newline / Line Feed - "\v" => 11, // (00001011) VT Vertical Tab - "\f" => 12, // (00001100) FF Form Feed - "\r" => 13, // (00001101) CR Carriage Return - ' ' => 32, // (00100000) SP Space - '!' => 33, // (00100001) ! Exclamation mark - '"' => 34, // (00100010) " Double quote - '#' => 35, // (00100011) # Number - '$' => 36, // (00100100) $ Dollar - '%' => 37, // (00100101) % Percent - '&' => 38, // (00100110) & Ampersand - '\'' => 39, // (00100111) ' Single quote - '(' => 40, // (00101000) ( Left parenthesis - ')' => 41, // (00101001) ) Right parenthesis - '*' => 42, // (00101010) * Asterisk - '+' => 43, // (00101011) + Plus - ',' => 44, // (00101100) , Comma - '-' => 45, // (00101101) - Minus - '.' => 46, // (00101110) . Period - '/' => 47, // (00101111) / Slash - '0' => 48, // (00110000) 0 Zero - '1' => 49, // (00110001) 1 One - '2' => 50, // (00110010) 2 Two - '3' => 51, // (00110011) 3 Three - '4' => 52, // (00110100) 4 Four - '5' => 53, // (00110101) 5 Five - '6' => 54, // (00110110) 6 Six - '7' => 55, // (00110111) 7 Seven - '8' => 56, // (00111000) 8 Eight - '9' => 57, // (00111001) 9 Nine - ':' => 58, // (00111010) : Colon - ';' => 59, // (00111011) ; Semicolon - '<' => 60, // (00111100) < Less than - '=' => 61, // (00111101) = Equal sign - '>' => 62, // (00111110) > Greater than - '?' => 63, // (00111111) ? Question mark - '@' => 64, // (01000000) @ At sign - 'A' => 65, // (01000001) A Uppercase A - 'B' => 66, // (01000010) B Uppercase B - 'C' => 67, // (01000011) C Uppercase C - 'D' => 68, // (01000100) D Uppercase D - 'E' => 69, // (01000101) E Uppercase E - 'F' => 70, // (01000110) F Uppercase F - 'G' => 71, // (01000111) G Uppercase G - 'H' => 72, // (01001000) H Uppercase H - 'I' => 73, // (01001001) I Uppercase I - 'J' => 74, // (01001010) J Uppercase J - 'K' => 75, // (01001011) K Uppercase K - 'L' => 76, // (01001100) L Uppercase L - 'M' => 77, // (01001101) M Uppercase M - 'N' => 78, // (01001110) N Uppercase N - 'O' => 79, // (01001111) O Uppercase O - 'P' => 80, // (01010000) P Uppercase P - 'Q' => 81, // (01010001) Q Uppercase Q - 'R' => 82, // (01010010) R Uppercase R - 'S' => 83, // (01010011) S Uppercase S - 'T' => 84, // (01010100) T Uppercase T - 'U' => 85, // (01010101) U Uppercase U - 'V' => 86, // (01010110) V Uppercase V - 'W' => 87, // (01010111) W Uppercase W - 'X' => 88, // (01011000) X Uppercase X - 'Y' => 89, // (01011001) Y Uppercase Y - 'Z' => 90, // (01011010) Z Uppercase Z - '[' => 91, // (01011011) [ Left square bracket - '\\' => 92, // (01011100) \ backslash - ']' => 93, // (01011101) ] Right square bracket - '^' => 94, // (01011110) ^ Caret / circumflex - '_' => 95, // (01011111) _ Underscore - '`' => 96, // (01100000) ` Grave / accent - 'a' => 97, // (01100001) a Lowercase a - 'b' => 98, // (01100010) b Lowercase b - 'c' => 99, // (01100011) c Lowercase c - 'd' => 100, // (01100100) d Lowercase d - 'e' => 101, // (01100101) e Lowercase e - 'f' => 102, // (01100110) f Lowercase - 'g' => 103, // (01100111) g Lowercase g - 'h' => 104, // (01101000) h Lowercase h - 'i' => 105, // (01101001) i Lowercase i - 'j' => 106, // (01101010) j Lowercase j - 'k' => 107, // (01101011) k Lowercase k - 'l' => 108, // (01101100) l Lowercase l - 'm' => 109, // (01101101) m Lowercase m - 'n' => 110, // (01101110) n Lowercase n - 'o' => 111, // (01101111) o Lowercase o - 'p' => 112, // (01110000) p Lowercase p - 'q' => 113, // (01110001) q Lowercase q - 'r' => 114, // (01110010) r Lowercase r - 's' => 115, // (01110011) s Lowercase s - 't' => 116, // (01110100) t Lowercase t - 'u' => 117, // (01110101) u Lowercase u - 'v' => 118, // (01110110) v Lowercase v - 'w' => 119, // (01110111) w Lowercase w - 'x' => 120, // (01111000) x Lowercase x - 'y' => 121, // (01111001) y Lowercase y - 'z' => 122, // (01111010) z Lowercase z - '{' => 123, // (01111011) { Left curly bracket - '|' => 124, // (01111100) | Vertical bar - '}' => 125, // (01111101) } Right curly bracket - '~' => 126, // (01111110) ~ Tilde - "\x7f" => 127, // (01111111) DEL Delete - ]; - - /** - * @param string $str the string - */ - public function __construct($str) - { - $this->str = $str; - $this->byteIdx = 0; - $this->charIdx = 0; - $this->byteLen = mb_strlen($str, '8bit'); - if (! mb_check_encoding($str, 'UTF-8')) { - $this->charLen = 0; - } else { - $this->charLen = mb_strlen($str, 'UTF-8'); - } - } - - /** - * Checks if the given offset exists. - * - * @param int $offset the offset to be checked - * - * @return bool - */ - #[\ReturnTypeWillChange] - public function offsetExists($offset) - { - return ($offset >= 0) && ($offset < $this->charLen); - } - - /** - * Gets the character at given offset. - * - * @param int $offset the offset to be returned - * - * @return string|null - */ - #[\ReturnTypeWillChange] - public function offsetGet($offset) - { - if (($offset < 0) || ($offset >= $this->charLen)) { - return null; - } - - $delta = $offset - $this->charIdx; - - if ($delta > 0) { - // Fast forwarding. - while ($delta-- > 0) { - $this->byteIdx += static::getCharLength($this->str[$this->byteIdx]); - ++$this->charIdx; - } - } elseif ($delta < 0) { - // Rewinding. - while ($delta++ < 0) { - do { - $byte = ord($this->str[--$this->byteIdx]); - } while (($byte >= 128) && ($byte < 192)); - - --$this->charIdx; - } - } - - $bytesCount = static::getCharLength($this->str[$this->byteIdx]); - - $ret = ''; - for ($i = 0; $bytesCount-- > 0; ++$i) { - $ret .= $this->str[$this->byteIdx + $i]; - } - - return $ret; - } - - /** - * Sets the value of a character. - * - * @param int $offset the offset to be set - * @param string $value the value to be set - * - * @return void - * - * @throws Exception not implemented. - */ - #[\ReturnTypeWillChange] - public function offsetSet($offset, $value) - { - throw new Exception('Not implemented.'); - } - - /** - * Unsets an index. - * - * @param int $offset the value to be unset - * - * @return void - * - * @throws Exception not implemented. - */ - #[\ReturnTypeWillChange] - public function offsetUnset($offset) - { - throw new Exception('Not implemented.'); - } - - /** - * Gets the length of an UTF-8 character. - * - * According to RFC 3629, a UTF-8 character can have at most 4 bytes. - * However, this implementation supports UTF-8 characters containing up to 6 - * bytes. - * - * @see https://tools.ietf.org/html/rfc3629 - * - * @param string $byte the byte to be analyzed - * - * @return int - */ - public static function getCharLength($byte) - { - // Use the default ASCII map as queries are mostly ASCII chars - // ord($byte) has a performance cost - - if (! isset(static::$asciiMap[$byte])) { - // Complete the cache with missing items - static::$asciiMap[$byte] = ord($byte); - } - - $byte = static::$asciiMap[$byte]; - - if ($byte < 128) { - return 1; - } - - if ($byte < 224) { - return 2; - } - - if ($byte < 240) { - return 3; - } - - if ($byte < 248) { - return 4; - } - - if ($byte < 252) { - return 5; // unofficial - } - - return 6; // unofficial - } - - /** - * Returns the length in characters of the string. - * - * @return int - */ - public function length() - { - return $this->charLen; - } - - /** - * Returns the contained string. - * - * @return string - */ - public function __toString() - { - return $this->str; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/BufferedQuery.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/BufferedQuery.php deleted file mode 100644 index b583c6fd..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/BufferedQuery.php +++ /dev/null @@ -1,410 +0,0 @@ - - * @psalm-var array{delimiter?: non-empty-string, parse_delimiter?: bool, add_delimiter?: bool} - */ - public $options = []; - - /** - * The last delimiter used. - * - * @var string - */ - public $delimiter; - - /** - * The length of the delimiter. - * - * @var int - */ - public $delimiterLen; - - /** - * The current status of the parser. - * - * @var int|null - */ - public $status; - - /** - * The last incomplete query that was extracted. - * - * @var string - */ - public $current = ''; - - /** - * @param string $query the query to be parsed - * @param array $options the options of this parser - * @psalm-param array{delimiter?: non-empty-string, parse_delimiter?: bool, add_delimiter?: bool} $options - */ - public function __construct($query = '', array $options = []) - { - // Merges specified options with defaults. - $this->options = array_merge( - [ - // The starting delimiter. - 'delimiter' => ';', - // Whether `DELIMITER` statements should be parsed. - 'parse_delimiter' => false, - // Whether a delimiter should be added at the end of the statement. - 'add_delimiter' => false, - ], - $options - ); - - $this->query = $query; - $this->setDelimiter($this->options['delimiter']); - } - - /** - * Sets the delimiter. - * - * Used to update the length of it too. - * - * @param string $delimiter - * - * @return void - */ - public function setDelimiter($delimiter) - { - $this->delimiter = $delimiter; - $this->delimiterLen = strlen($delimiter); - } - - /** - * Extracts a statement from the buffer. - * - * @param bool $end whether the end of the buffer was reached - * - * @return string|false - */ - public function extract($end = false) - { - /** - * The last parsed position. - * - * This is statically defined because it is not used outside anywhere - * outside this method and there is probably a (minor) performance - * improvement to it. - * - * @var int - */ - static $i = 0; - - if (empty($this->query)) { - return false; - } - - /** - * The length of the buffer. - * - * @var int - */ - $len = strlen($this->query); - - /** - * The last index of the string that is going to be parsed. - * - * There must be a few characters left in the buffer so the parser can - * avoid confusing some symbols that may have multiple meanings. - * - * For example, if the buffer ends in `-` that may be an operator or the - * beginning of a comment. - * - * Another example if the buffer ends in `DELIMITE`. The parser is going - * to require a few more characters because that may be a part of the - * `DELIMITER` keyword or just a column named `DELIMITE`. - * - * Those extra characters are required only if there is more data - * expected (the end of the buffer was not reached). - */ - $loopLen = $end ? $len : $len - 16; - - for (; $i < $loopLen; ++$i) { - /* - * Handling backslash. - * - * Even if the next character is a special character that should be - * treated differently, because of the preceding backslash, it will - * be ignored. - */ - if ((($this->status & self::STATUS_COMMENT) === 0) && ($this->query[$i] === '\\')) { - $this->current .= $this->query[$i] . ($i + 1 < $len ? $this->query[++$i] : ''); - continue; - } - - /* - * Handling special parses statuses. - */ - if ($this->status === self::STATUS_STRING_SINGLE_QUOTES) { - // Single-quoted strings like 'foo'. - if ($this->query[$i] === '\'') { - $this->status = 0; - } - - $this->current .= $this->query[$i]; - continue; - } elseif ($this->status === self::STATUS_STRING_DOUBLE_QUOTES) { - // Double-quoted strings like "bar". - if ($this->query[$i] === '"') { - $this->status = 0; - } - - $this->current .= $this->query[$i]; - continue; - } elseif ($this->status === self::STATUS_STRING_BACKTICK) { - if ($this->query[$i] === '`') { - $this->status = 0; - } - - $this->current .= $this->query[$i]; - continue; - } elseif (($this->status === self::STATUS_COMMENT_BASH) || ($this->status === self::STATUS_COMMENT_SQL)) { - // Bash-like (#) or SQL-like (-- ) comments end in new line. - if ($this->query[$i] === "\n") { - $this->status = 0; - } - - $this->current .= $this->query[$i]; - continue; - } elseif ($this->status === self::STATUS_COMMENT_C) { - // C-like comments end in */. - if (($this->query[$i - 1] === '*') && ($this->query[$i] === '/')) { - $this->status = 0; - } - - $this->current .= $this->query[$i]; - continue; - } - - /* - * Checking if a string started. - */ - if ($this->query[$i] === '\'') { - $this->status = self::STATUS_STRING_SINGLE_QUOTES; - $this->current .= $this->query[$i]; - continue; - } - - if ($this->query[$i] === '"') { - $this->status = self::STATUS_STRING_DOUBLE_QUOTES; - $this->current .= $this->query[$i]; - continue; - } - - if ($this->query[$i] === '`') { - $this->status = self::STATUS_STRING_BACKTICK; - $this->current .= $this->query[$i]; - continue; - } - - /* - * Checking if a comment started. - */ - if ($this->query[$i] === '#') { - $this->status = self::STATUS_COMMENT_BASH; - $this->current .= $this->query[$i]; - continue; - } - - if ($i + 2 < $len) { - if ( - ($this->query[$i] === '-') - && ($this->query[$i + 1] === '-') - && Context::isWhitespace($this->query[$i + 2]) - ) { - $this->status = self::STATUS_COMMENT_SQL; - $this->current .= $this->query[$i]; - continue; - } - - if (($this->query[$i] === '/') && ($this->query[$i + 1] === '*') && ($this->query[$i + 2] !== '!')) { - $this->status = self::STATUS_COMMENT_C; - $this->current .= $this->query[$i]; - continue; - } - } - - /* - * Handling `DELIMITER` statement. - * - * The code below basically checks for - * `strtoupper(substr($this->query, $i, 9)) === 'DELIMITER'` - * - * This optimization makes the code about 3 times faster. - * - * `DELIMITER` is not being considered a keyword. The only context - * it has a special meaning is when it is the beginning of a - * statement. This is the reason for the last condition. - */ - if ( - ($i + 9 < $len) - && (($this->query[$i] === 'D') || ($this->query[$i] === 'd')) - && (($this->query[$i + 1] === 'E') || ($this->query[$i + 1] === 'e')) - && (($this->query[$i + 2] === 'L') || ($this->query[$i + 2] === 'l')) - && (($this->query[$i + 3] === 'I') || ($this->query[$i + 3] === 'i')) - && (($this->query[$i + 4] === 'M') || ($this->query[$i + 4] === 'm')) - && (($this->query[$i + 5] === 'I') || ($this->query[$i + 5] === 'i')) - && (($this->query[$i + 6] === 'T') || ($this->query[$i + 6] === 't')) - && (($this->query[$i + 7] === 'E') || ($this->query[$i + 7] === 'e')) - && (($this->query[$i + 8] === 'R') || ($this->query[$i + 8] === 'r')) - && Context::isWhitespace($this->query[$i + 9]) - ) { - // Saving the current index to be able to revert any parsing - // done in this block. - $iBak = $i; - $i += 9; // Skipping `DELIMITER`. - - // Skipping whitespaces. - while (($i < $len) && Context::isWhitespace($this->query[$i])) { - ++$i; - } - - // Parsing the delimiter. - $delimiter = ''; - while (($i < $len) && (! Context::isWhitespace($this->query[$i]))) { - $delimiter .= $this->query[$i++]; - } - - // Checking if the delimiter definition ended. - if ( - ($delimiter !== '') - && (($i < $len) && Context::isWhitespace($this->query[$i]) - || (($i === $len) && $end)) - ) { - // Saving the delimiter. - $this->setDelimiter($delimiter); - - // Whether this statement should be returned or not. - $ret = ''; - if (! empty($this->options['parse_delimiter'])) { - // Appending the `DELIMITER` statement that was just - // found to the current statement. - $ret = trim( - $this->current . ' ' . substr($this->query, $iBak, $i - $iBak) - ); - } - - // Removing the statement that was just extracted from the - // query. - $this->query = substr($this->query, $i); - $i = 0; - - // Resetting the current statement. - $this->current = ''; - - return $ret; - } - - // Incomplete statement. Reverting - $i = $iBak; - - return false; - } - - /* - * Checking if the current statement finished. - * - * The first letter of the delimiter is being checked as an - * optimization. This code is almost as fast as the one above. - * - * There is no point in checking if two strings match if not even - * the first letter matches. - */ - if ( - ($this->query[$i] === $this->delimiter[0]) - && (($this->delimiterLen === 1) - || (substr($this->query, $i, $this->delimiterLen) === $this->delimiter)) - ) { - // Saving the statement that just ended. - $ret = $this->current; - - // If needed, adds a delimiter at the end of the statement. - if (! empty($this->options['add_delimiter'])) { - $ret .= $this->delimiter; - } - - // Removing the statement that was just extracted from the - // query. - $this->query = substr($this->query, $i + $this->delimiterLen); - $i = 0; - - // Resetting the current statement. - $this->current = ''; - - // Returning the statement. - return trim($ret); - } - - /* - * Appending current character to current statement. - */ - $this->current .= $this->query[$i]; - } - - if ($end && ($i === $len)) { - // If the end of the buffer was reached, the buffer is emptied and - // the current statement that was extracted is returned. - $ret = $this->current; - - // Emptying the buffer. - $this->query = ''; - $i = 0; - - // Resetting the current statement. - $this->current = ''; - - // Returning the statement. - return trim($ret); - } - - return ''; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/CLI.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/CLI.php deleted file mode 100644 index 99e237b0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/CLI.php +++ /dev/null @@ -1,346 +0,0 @@ -getopt('', ['lint', 'highlight', 'tokenize']); - if ($params !== false) { - if (isset($params['lint'])) { - return $this->runLint(false); - } - - if (isset($params['highlight'])) { - return $this->runHighlight(false); - } - - if (isset($params['tokenize'])) { - return $this->runTokenize(false); - } - } - - $this->usageLint(false); - $this->usageHighlight(false); - $this->usageTokenize(false); - - return 1; - } - - /** - * @param string[]|false[] $params - * @param string[] $longopts - * - * @return void - */ - public function mergeLongOpts(&$params, &$longopts) - { - foreach ($longopts as $value) { - $value = rtrim($value, ':'); - if (! isset($params[$value])) { - continue; - } - - $params[$value[0]] = $params[$value]; - } - } - - /** - * @return void - */ - public function usageHighlight(bool $isStandalone = true) - { - $command = $isStandalone ? 'highlight-query' : 'sql-parser --highlight'; - - echo 'Usage: ' . $command . ' --query SQL [--format html|cli|text] [--ansi]' . "\n"; - echo ' cat file.sql | ' . $command . "\n"; - } - - /** - * @param string $opt - * @param string[] $long - * - * @return string[]|false[]|false - */ - public function getopt($opt, $long) - { - return getopt($opt, $long); - } - - /** - * @return mixed|false - */ - public function parseHighlight() - { - $longopts = [ - 'help', - 'query:', - 'format:', - 'ansi', - ]; - $params = $this->getopt('hq:f:a', $longopts); - if ($params === false) { - return false; - } - - $this->mergeLongOpts($params, $longopts); - if (! isset($params['f'])) { - $params['f'] = 'cli'; - } - - if (! in_array($params['f'], ['html', 'cli', 'text'])) { - echo "ERROR: Invalid value for format!\n"; - - return false; - } - - return $params; - } - - /** - * @return int - */ - public function runHighlight(bool $isStandalone = true) - { - $params = $this->parseHighlight(); - if ($params === false) { - return 1; - } - - if (isset($params['h'])) { - $this->usageHighlight($isStandalone); - - return 0; - } - - if (! isset($params['q'])) { - $stdIn = $this->readStdin(); - - if ($stdIn) { - $params['q'] = $stdIn; - } - } - - if (isset($params['a'])) { - Context::setMode(Context::SQL_MODE_ANSI_QUOTES); - } - - if (isset($params['q'])) { - echo Formatter::format( - $params['q'], - ['type' => $params['f']] - ); - echo "\n"; - - return 0; - } - - echo "ERROR: Missing parameters!\n"; - $this->usageHighlight($isStandalone); - - return 1; - } - - /** - * @return void - */ - public function usageLint(bool $isStandalone = true) - { - $command = $isStandalone ? 'lint-query' : 'sql-parser --lint'; - - echo 'Usage: ' . $command . ' --query SQL [--ansi]' . "\n"; - echo ' cat file.sql | ' . $command . "\n"; - } - - /** - * @return mixed - */ - public function parseLint() - { - $longopts = [ - 'help', - 'query:', - 'context:', - 'ansi', - ]; - $params = $this->getopt('hq:c:a', $longopts); - $this->mergeLongOpts($params, $longopts); - - return $params; - } - - /** - * @return int - */ - public function runLint(bool $isStandalone = true) - { - $params = $this->parseLint(); - if ($params === false) { - return 1; - } - - if (isset($params['h'])) { - $this->usageLint($isStandalone); - - return 0; - } - - if (isset($params['c'])) { - Context::load($params['c']); - } - - if (! isset($params['q'])) { - $stdIn = $this->readStdin(); - - if ($stdIn) { - $params['q'] = $stdIn; - } - } - - if (isset($params['a'])) { - Context::setMode(Context::SQL_MODE_ANSI_QUOTES); - } - - if (isset($params['q'])) { - $lexer = new Lexer($params['q'], false); - $parser = new Parser($lexer->list); - $errors = Error::get([$lexer, $parser]); - if (count($errors) === 0) { - return 0; - } - - $output = Error::format($errors); - echo implode("\n", $output); - echo "\n"; - - return 10; - } - - echo "ERROR: Missing parameters!\n"; - $this->usageLint($isStandalone); - - return 1; - } - - /** - * @return void - */ - public function usageTokenize(bool $isStandalone = true) - { - $command = $isStandalone ? 'tokenize-query' : 'sql-parser --tokenize'; - - echo 'Usage: ' . $command . ' --query SQL [--ansi]' . "\n"; - echo ' cat file.sql | ' . $command . "\n"; - } - - /** - * @return mixed - */ - public function parseTokenize() - { - $longopts = [ - 'help', - 'query:', - 'ansi', - ]; - $params = $this->getopt('hq:a', $longopts); - $this->mergeLongOpts($params, $longopts); - - return $params; - } - - /** - * @return int - */ - public function runTokenize(bool $isStandalone = true) - { - $params = $this->parseTokenize(); - if ($params === false) { - return 1; - } - - if (isset($params['h'])) { - $this->usageTokenize($isStandalone); - - return 0; - } - - if (! isset($params['q'])) { - $stdIn = $this->readStdin(); - - if ($stdIn) { - $params['q'] = $stdIn; - } - } - - if (isset($params['a'])) { - Context::setMode(Context::SQL_MODE_ANSI_QUOTES); - } - - if (isset($params['q'])) { - $lexer = new Lexer($params['q'], false); - foreach ($lexer->list->tokens as $idx => $token) { - echo '[TOKEN ', $idx, "]\n"; - echo 'Type = ', $token->type, "\n"; - echo 'Flags = ', $token->flags, "\n"; - echo 'Value = '; - var_export($token->value); - echo "\n"; - echo 'Token = '; - var_export($token->token); - echo "\n"; - echo "\n"; - } - - return 0; - } - - echo "ERROR: Missing parameters!\n"; - $this->usageTokenize($isStandalone); - - return 1; - } - - /** - * @return string|false - */ - public function readStdin() - { - $read = [STDIN]; - $write = []; - $except = []; - - // Assume there's nothing to be read from STDIN. - $stdin = null; - - // Try to read from STDIN. Wait 0.2 second before timing out. - $result = stream_select($read, $write, $except, 0, 2000); - - if ($result > 0) { - $stdin = stream_get_contents(STDIN); - } - - return $stdin; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/Error.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/Error.php deleted file mode 100644 index f52b91cc..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/Error.php +++ /dev/null @@ -1,97 +0,0 @@ - $objs objects from where the errors will be extracted - * - * @return array> Each element of the array represents an error. - * `$err[0]` holds the error message. - * `$err[1]` holds the error code. - * `$err[2]` holds the string that caused the issue. - * `$err[3]` holds the position of the string. - * (i.e. `[$msg, $code, $str, $pos]`) - */ - public static function get($objs) - { - $ret = []; - - foreach ($objs as $obj) { - if ($obj instanceof Lexer) { - /** @var LexerException $err */ - foreach ($obj->errors as $err) { - $ret[] = [ - $err->getMessage(), - $err->getCode(), - $err->ch, - $err->pos, - ]; - } - } elseif ($obj instanceof Parser) { - /** @var ParserException $err */ - foreach ($obj->errors as $err) { - $ret[] = [ - $err->getMessage(), - $err->getCode(), - $err->token !== null ? $err->token->token : '', - $err->token !== null ? $err->token->position : null, - ]; - } - } - } - - return $ret; - } - - /** - * Formats the specified errors. - * - * @param array> $errors the errors to be formatted - * @param string $format The format of an error. - * '$1$d' is replaced by the position of this error. - * '$2$s' is replaced by the error message. - * '$3$d' is replaced by the error code. - * '$4$s' is replaced by the string that caused the - * issue. - * '$5$d' is replaced by the position of the string. - * - * @return string[] - */ - public static function format( - $errors, - $format = '#%1$d: %2$s (near "%4$s" at position %5$d)' - ) { - $ret = []; - - $i = 0; - foreach ($errors as $key => $err) { - $ret[$key] = sprintf( - $format, - ++$i, - $err[0], - $err[1], - htmlspecialchars((string) $err[2]), - $err[3] - ); - } - - return $ret; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/Formatter.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/Formatter.php deleted file mode 100644 index 7095e694..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/Formatter.php +++ /dev/null @@ -1,787 +0,0 @@ ->> - */ - public $options; - - /** - * Clauses that are usually short. - * - * These clauses share the line with the next clause. - * - * E.g. if INSERT was not here, the formatter would produce: - * - * INSERT - * INTO foo - * VALUES(0, 0, 0),(1, 1, 1); - * - * Instead of: - * - * INSERT INTO foo - * VALUES(0, 0, 0),(1, 1, 1) - * - * @var array - */ - public static $SHORT_CLAUSES = [ - 'CREATE' => true, - 'INSERT' => true, - ]; - - /** - * Clauses that must be inlined. - * - * These clauses usually are short and it's nicer to have them inline. - * - * @var array - */ - public static $INLINE_CLAUSES = [ - 'CREATE' => true, - 'INTO' => true, - 'LIMIT' => true, - 'PARTITION BY' => true, - 'PARTITION' => true, - 'PROCEDURE' => true, - 'SUBPARTITION BY' => true, - 'VALUES' => true, - ]; - - /** - * @param array>> $options the formatting options - */ - public function __construct(array $options = []) - { - $this->options = $this->getMergedOptions($options); - } - - /** - * The specified formatting options are merged with the default values. - * - * @param array>> $options - * - * @return array>> - */ - protected function getMergedOptions(array $options) - { - $options = array_merge( - $this->getDefaultOptions(), - $options - ); - - if (isset($options['formats'])) { - $options['formats'] = self::mergeFormats($this->getDefaultFormats(), $options['formats']); - } else { - $options['formats'] = $this->getDefaultFormats(); - } - - if ($options['line_ending'] === null) { - $options['line_ending'] = $options['type'] === 'html' ? '
    ' : "\n"; - } - - if ($options['indentation'] === null) { - $options['indentation'] = $options['type'] === 'html' ? '    ' : ' '; - } - - // `parts_newline` requires `clause_newline` - $options['parts_newline'] &= $options['clause_newline']; - - return $options; - } - - /** - * The default formatting options. - * - * @return array - * @psalm-return array{ - * type: ('cli'|'text'), - * line_ending: null, - * indentation: null, - * remove_comments: false, - * clause_newline: true, - * parts_newline: true, - * indent_parts: true - * } - */ - protected function getDefaultOptions() - { - return [ - /* - * The format of the result. - * - * @var string The type ('text', 'cli' or 'html') - */ - 'type' => PHP_SAPI === 'cli' ? 'cli' : 'text', - - /* - * The line ending used. - * By default, for text this is "\n" and for HTML this is "
    ". - * - * @var string - */ - 'line_ending' => null, - - /* - * The string used for indentation. - * - * @var string - */ - 'indentation' => null, - - /* - * Whether comments should be removed or not. - * - * @var bool - */ - 'remove_comments' => false, - - /* - * Whether each clause should be on a new line. - * - * @var bool - */ - 'clause_newline' => true, - - /* - * Whether each part should be on a new line. - * Parts are delimited by brackets and commas. - * - * @var bool - */ - 'parts_newline' => true, - - /* - * Whether each part of each clause should be indented. - * - * @var bool - */ - 'indent_parts' => true, - ]; - } - - /** - * The styles used for HTML formatting. - * [$type, $flags, $span, $callback]. - * - * @return array> - * @psalm-return list - */ - protected function getDefaultFormats() - { - return [ - [ - 'type' => Token::TYPE_KEYWORD, - 'flags' => Token::FLAG_KEYWORD_RESERVED, - 'html' => 'class="sql-reserved"', - 'cli' => "\x1b[35m", - 'function' => 'strtoupper', - ], - [ - 'type' => Token::TYPE_KEYWORD, - 'flags' => 0, - 'html' => 'class="sql-keyword"', - 'cli' => "\x1b[95m", - 'function' => 'strtoupper', - ], - [ - 'type' => Token::TYPE_COMMENT, - 'flags' => 0, - 'html' => 'class="sql-comment"', - 'cli' => "\x1b[37m", - 'function' => '', - ], - [ - 'type' => Token::TYPE_BOOL, - 'flags' => 0, - 'html' => 'class="sql-atom"', - 'cli' => "\x1b[36m", - 'function' => 'strtoupper', - ], - [ - 'type' => Token::TYPE_NUMBER, - 'flags' => 0, - 'html' => 'class="sql-number"', - 'cli' => "\x1b[92m", - 'function' => 'strtolower', - ], - [ - 'type' => Token::TYPE_STRING, - 'flags' => 0, - 'html' => 'class="sql-string"', - 'cli' => "\x1b[91m", - 'function' => '', - ], - [ - 'type' => Token::TYPE_SYMBOL, - 'flags' => Token::FLAG_SYMBOL_PARAMETER, - 'html' => 'class="sql-parameter"', - 'cli' => "\x1b[31m", - 'function' => '', - ], - [ - 'type' => Token::TYPE_SYMBOL, - 'flags' => 0, - 'html' => 'class="sql-variable"', - 'cli' => "\x1b[36m", - 'function' => '', - ], - ]; - } - - /** - * @param array> $formats - * @param array> $newFormats - * - * @return array> - */ - private static function mergeFormats(array $formats, array $newFormats): array - { - $added = []; - $integers = [ - 'flags', - 'type', - ]; - $strings = [ - 'html', - 'cli', - 'function', - ]; - - /* Sanitize the array so that we do not have to care later */ - foreach ($newFormats as $j => $new) { - foreach ($integers as $name) { - if (isset($new[$name])) { - continue; - } - - $newFormats[$j][$name] = 0; - } - - foreach ($strings as $name) { - if (isset($new[$name])) { - continue; - } - - $newFormats[$j][$name] = ''; - } - } - - /* Process changes to existing formats */ - foreach ($formats as $i => $original) { - foreach ($newFormats as $j => $new) { - if ($new['type'] !== $original['type'] || $original['flags'] !== $new['flags']) { - continue; - } - - $formats[$i] = $new; - $added[] = $j; - } - } - - /* Add not already handled formats */ - foreach ($newFormats as $j => $new) { - if (in_array($j, $added)) { - continue; - } - - $formats[] = $new; - } - - return $formats; - } - - /** - * Formats the given list of tokens. - * - * @param TokensList $list the list of tokens - * - * @return string - */ - public function formatList($list) - { - /** - * The query to be returned. - * - * @var string - */ - $ret = ''; - - /** - * The indentation level. - * - * @var int - */ - $indent = 0; - - /** - * Whether the line ended. - * - * @var bool - */ - $lineEnded = false; - - /** - * Whether current group is short (no linebreaks). - * - * @var bool - */ - $shortGroup = false; - - /** - * The name of the last clause. - * - * @var string - */ - $lastClause = ''; - - /** - * A stack that keeps track of the indentation level every time a new - * block is found. - */ - $blocksIndentation = []; - - /** - * A stack that keeps track of the line endings every time a new block - * is found. - */ - $blocksLineEndings = []; - - /** - * Whether clause's options were formatted. - * - * @var bool - */ - $formattedOptions = false; - - /** - * Previously parsed token. - * - * @var Token|null - */ - $prev = null; - - // In order to be able to format the queries correctly, the next token - // must be taken into consideration. The loop below uses two pointers, - // `$prev` and `$curr` which store two consecutive tokens. - // Actually, at every iteration the previous token is being used. - for ($list->idx = 0; $list->idx < $list->count; ++$list->idx) { - /** - * Token parsed at this moment. - */ - $curr = $list->tokens[$list->idx]; - if ($list->idx + 1 < $list->count) { - $next = $list->tokens[$list->idx + 1]; - } else { - $next = null; - } - - if ($curr->type === Token::TYPE_WHITESPACE) { - // Keep linebreaks before and after comments - if ( - str_contains($curr->token, "\n") && ( - ($prev !== null && $prev->type === Token::TYPE_COMMENT) || - ($next !== null && $next->type === Token::TYPE_COMMENT) - ) - ) { - $lineEnded = true; - } - - // Whitespaces are skipped because the formatter adds its own. - continue; - } - - if ($curr->type === Token::TYPE_COMMENT && $this->options['remove_comments']) { - // Skip Comments if option `remove_comments` is enabled - continue; - } - - // Checking if pointers were initialized. - if ($prev !== null) { - // Checking if a new clause started. - if (static::isClause($prev) !== false) { - $lastClause = $prev->value; - $formattedOptions = false; - } - - // The options of a clause should stay on the same line and everything that follows. - if ( - $this->options['parts_newline'] - && ! $formattedOptions - && empty(self::$INLINE_CLAUSES[$lastClause]) - && ( - $curr->type !== Token::TYPE_KEYWORD - || ( - $curr->type === Token::TYPE_KEYWORD - && $curr->flags & Token::FLAG_KEYWORD_FUNCTION - ) - ) - ) { - $formattedOptions = true; - $lineEnded = true; - ++$indent; - } - - // Checking if this clause ended. - $isClause = static::isClause($curr); - - if ($isClause !== false) { - if ( - ($isClause === 2 || $this->options['clause_newline']) - && empty(self::$SHORT_CLAUSES[$lastClause]) - ) { - $lineEnded = true; - if ($this->options['parts_newline'] && $indent > 0) { - --$indent; - } - } - } - - // Inline JOINs - if ( - ($prev->type === Token::TYPE_KEYWORD && isset(JoinKeyword::$JOINS[$prev->value])) - || (in_array($curr->value, ['ON', 'USING'], true) - && isset(JoinKeyword::$JOINS[$list->tokens[$list->idx - 2]->value])) - || isset($list->tokens[$list->idx - 4], JoinKeyword::$JOINS[$list->tokens[$list->idx - 4]->value]) - || isset($list->tokens[$list->idx - 6], JoinKeyword::$JOINS[$list->tokens[$list->idx - 6]->value]) - ) { - $lineEnded = false; - } - - // Indenting BEGIN ... END blocks. - if ($prev->type === Token::TYPE_KEYWORD && $prev->keyword === 'BEGIN') { - $lineEnded = true; - $blocksIndentation[] = $indent; - ++$indent; - } elseif ($curr->type === Token::TYPE_KEYWORD && $curr->keyword === 'END') { - $lineEnded = true; - $indent = array_pop($blocksIndentation); - } - - // Formatting fragments delimited by comma. - if ($prev->type === Token::TYPE_OPERATOR && $prev->value === ',') { - // Fragments delimited by a comma are broken into multiple - // pieces only if the clause is not inlined or this fragment - // is between brackets that are on new line. - if ( - end($blocksLineEndings) === true - || ( - empty(self::$INLINE_CLAUSES[$lastClause]) - && ! $shortGroup - && $this->options['parts_newline'] - ) - ) { - $lineEnded = true; - } - } - - // Handling brackets. - // Brackets are indented only if the length of the fragment between - // them is longer than 30 characters. - if ($prev->type === Token::TYPE_OPERATOR && $prev->value === '(') { - $blocksIndentation[] = $indent; - $shortGroup = true; - if (static::getGroupLength($list) > 30) { - ++$indent; - $lineEnded = true; - $shortGroup = false; - } - - $blocksLineEndings[] = $lineEnded; - } elseif ($curr->type === Token::TYPE_OPERATOR && $curr->value === ')') { - $indent = array_pop($blocksIndentation); - $lineEnded |= array_pop($blocksLineEndings); - $shortGroup = false; - } - - // Adding the token. - $ret .= $this->toString($prev); - - // Finishing the line. - if ($lineEnded) { - $ret .= $this->options['line_ending'] - . str_repeat($this->options['indentation'], (int) $indent); - - $lineEnded = false; - } else { - // If the line ended there is no point in adding whitespaces. - // Also, some tokens do not have spaces before or after them. - if ( - // A space after delimiters that are longer than 2 characters. - $prev->keyword === 'DELIMITER' - || ! ( - ($prev->type === Token::TYPE_OPERATOR && ($prev->value === '.' || $prev->value === '(')) - // No space after . ( - || ($curr->type === Token::TYPE_OPERATOR - && ($curr->value === '.' || $curr->value === ',' - || $curr->value === '(' || $curr->value === ')')) - // No space before . , ( ) - || $curr->type === Token::TYPE_DELIMITER && mb_strlen((string) $curr->value, 'UTF-8') < 2 - ) - ) { - $ret .= ' '; - } - } - } - - // Iteration finished, consider current token as previous. - $prev = $curr; - } - - if ($this->options['type'] === 'cli') { - return $ret . "\x1b[0m"; - } - - return $ret; - } - - public function escapeConsole(string $string): string - { - return str_replace( - [ - "\x00", - "\x01", - "\x02", - "\x03", - "\x04", - "\x05", - "\x06", - "\x07", - "\x08", - "\x09", - "\x0A", - "\x0B", - "\x0C", - "\x0D", - "\x0E", - "\x0F", - "\x10", - "\x11", - "\x12", - "\x13", - "\x14", - "\x15", - "\x16", - "\x17", - "\x18", - "\x19", - "\x1A", - "\x1B", - "\x1C", - "\x1D", - "\x1E", - "\x1F", - ], - [ - '\x00', - '\x01', - '\x02', - '\x03', - '\x04', - '\x05', - '\x06', - '\x07', - '\x08', - '\x09', - '\x0A', - '\x0B', - '\x0C', - '\x0D', - '\x0E', - '\x0F', - '\x10', - '\x11', - '\x12', - '\x13', - '\x14', - '\x15', - '\x16', - '\x17', - '\x18', - '\x19', - '\x1A', - '\x1B', - '\x1C', - '\x1D', - '\x1E', - '\x1F', - ], - $string - ); - } - - /** - * Tries to print the query and returns the result. - * - * @param Token $token the token to be printed - * - * @return string - */ - public function toString($token) - { - $text = $token->token; - static $prev; - - foreach ($this->options['formats'] as $format) { - if ($token->type !== $format['type'] || ! (($token->flags & $format['flags']) === $format['flags'])) { - continue; - } - - // Running transformation function. - if (! empty($format['function'])) { - $func = $format['function']; - $text = $func($text); - } - - // Formatting HTML. - if ($this->options['type'] === 'html') { - return '' . htmlspecialchars($text, ENT_NOQUOTES) . ''; - } - - if ($this->options['type'] === 'cli') { - if ($prev !== $format['cli']) { - $prev = $format['cli']; - - return $format['cli'] . $this->escapeConsole($text); - } - - return $this->escapeConsole($text); - } - - break; - } - - if ($this->options['type'] === 'cli') { - if ($prev !== "\x1b[39m") { - $prev = "\x1b[39m"; - - return "\x1b[39m" . $this->escapeConsole($text); - } - - return $this->escapeConsole($text); - } - - if ($this->options['type'] === 'html') { - return htmlspecialchars($text, ENT_NOQUOTES); - } - - return $text; - } - - /** - * Formats a query. - * - * @param string $query The query to be formatted - * @param array>> $options the formatting options - * - * @return string the formatted string - */ - public static function format($query, array $options = []) - { - $lexer = new Lexer($query); - $formatter = new self($options); - - return $formatter->formatList($lexer->list); - } - - /** - * Computes the length of a group. - * - * A group is delimited by a pair of brackets. - * - * @param TokensList $list the list of tokens - * - * @return int - */ - public static function getGroupLength($list) - { - /** - * The number of opening brackets found. - * This counter starts at one because by the time this function called, - * the list already advanced one position and the opening bracket was - * already parsed. - * - * @var int - */ - $count = 1; - - /** - * The length of this group. - * - * @var int - */ - $length = 0; - - for ($idx = $list->idx; $idx < $list->count; ++$idx) { - // Counting the brackets. - if ($list->tokens[$idx]->type === Token::TYPE_OPERATOR) { - if ($list->tokens[$idx]->value === '(') { - ++$count; - } elseif ($list->tokens[$idx]->value === ')') { - --$count; - if ($count === 0) { - break; - } - } - } - - // Keeping track of this group's length. - $length += mb_strlen((string) $list->tokens[$idx]->value, 'UTF-8'); - } - - return $length; - } - - /** - * Checks if a token is a statement or a clause inside a statement. - * - * @param Token $token the token to be checked - * - * @return int|false - * @psalm-return 1|2|false - */ - public static function isClause($token) - { - if ( - ($token->type === Token::TYPE_KEYWORD && isset(Parser::$STATEMENT_PARSERS[$token->keyword])) - || ($token->type === Token::TYPE_NONE && strtoupper($token->token) === 'DELIMITER') - ) { - return 2; - } - - if ($token->type === Token::TYPE_KEYWORD && isset(Parser::$KEYWORD_PARSERS[$token->keyword])) { - return 1; - } - - return false; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/Misc.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/Misc.php deleted file mode 100644 index f4e0bcd8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/Misc.php +++ /dev/null @@ -1,98 +0,0 @@ -|string|null>>|null>> - */ - public static function getAliases($statement, $database) - { - if (! ($statement instanceof SelectStatement) || empty($statement->expr) || empty($statement->from)) { - return []; - } - - $retval = []; - - $tables = []; - - /** - * Expressions that may contain aliases. - * These are extracted from `FROM` and `JOIN` keywords. - * - * @var Expression[] - */ - $expressions = $statement->from; - - // Adding expressions from JOIN. - if (! empty($statement->join)) { - foreach ($statement->join as $join) { - $expressions[] = $join->expr; - } - } - - foreach ($expressions as $expr) { - if (! isset($expr->table) || ($expr->table === '')) { - continue; - } - - $thisDb = isset($expr->database) && ($expr->database !== '') ? - $expr->database : $database; - - if (! isset($retval[$thisDb])) { - $retval[$thisDb] = [ - 'alias' => null, - 'tables' => [], - ]; - } - - if (! isset($retval[$thisDb]['tables'][$expr->table])) { - $retval[$thisDb]['tables'][$expr->table] = [ - 'alias' => isset($expr->alias) && ($expr->alias !== '') ? - $expr->alias : null, - 'columns' => [], - ]; - } - - if (! isset($tables[$thisDb])) { - $tables[$thisDb] = []; - } - - $tables[$thisDb][$expr->alias] = $expr->table; - } - - foreach ($statement->expr as $expr) { - if (! isset($expr->column, $expr->alias) || ($expr->column === '') || ($expr->alias === '')) { - continue; - } - - $thisDb = isset($expr->database) && ($expr->database !== '') ? - $expr->database : $database; - - if (isset($expr->table) && ($expr->table !== '')) { - $thisTable = $tables[$thisDb][$expr->table] ?? $expr->table; - $retval[$thisDb]['tables'][$thisTable]['columns'][$expr->column] = $expr->alias; - } else { - foreach ($retval[$thisDb]['tables'] as &$table) { - $table['columns'][$expr->column] = $expr->alias; - } - } - } - - return $retval; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/Query.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/Query.php deleted file mode 100644 index e9e33593..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/Query.php +++ /dev/null @@ -1,948 +0,0 @@ - - * @psalm-var array{ - * distinct: false, - * drop_database: false, - * group: false, - * having: false, - * is_affected: false, - * is_analyse: false, - * is_count: false, - * is_delete: false, - * is_explain: false, - * is_export: false, - * is_func: false, - * is_group: false, - * is_insert: false, - * is_maint: false, - * is_procedure: false, - * is_replace: false, - * is_select: false, - * is_show: false, - * is_subquery: false, - * join: false, - * limit: false, - * offset: false, - * order: false, - * querytype: false, - * reload: false, - * select_from: false, - * union: false - * } - */ - public static $ALLFLAGS = [ - /* - * select ... DISTINCT ... - */ - 'distinct' => false, - - /* - * drop ... DATABASE ... - */ - 'drop_database' => false, - - /* - * ... GROUP BY ... - */ - 'group' => false, - - /* - * ... HAVING ... - */ - 'having' => false, - - /* - * INSERT ... - * or - * REPLACE ... - * or - * DELETE ... - */ - 'is_affected' => false, - - /* - * select ... PROCEDURE ANALYSE( ... ) ... - */ - 'is_analyse' => false, - - /* - * select COUNT( ... ) ... - */ - 'is_count' => false, - - /* - * DELETE ... - */ - 'is_delete' => false, // @deprecated; use `querytype` - - /* - * EXPLAIN ... - */ - 'is_explain' => false, // @deprecated; use `querytype` - - /* - * select ... INTO OUTFILE ... - */ - 'is_export' => false, - - /* - * select FUNC( ... ) ... - */ - 'is_func' => false, - - /* - * select ... GROUP BY ... - * or - * select ... HAVING ... - */ - 'is_group' => false, - - /* - * INSERT ... - * or - * REPLACE ... - * or - * LOAD DATA ... - */ - 'is_insert' => false, - - /* - * ANALYZE ... - * or - * CHECK ... - * or - * CHECKSUM ... - * or - * OPTIMIZE ... - * or - * REPAIR ... - */ - 'is_maint' => false, - - /* - * CALL ... - */ - 'is_procedure' => false, - - /* - * REPLACE ... - */ - 'is_replace' => false, // @deprecated; use `querytype` - - /* - * SELECT ... - */ - 'is_select' => false, // @deprecated; use `querytype` - - /* - * SHOW ... - */ - 'is_show' => false, // @deprecated; use `querytype` - - /* - * Contains a subquery. - */ - 'is_subquery' => false, - - /* - * ... JOIN ... - */ - 'join' => false, - - /* - * ... LIMIT ... - */ - 'limit' => false, - - /* - * TODO - */ - 'offset' => false, - - /* - * ... ORDER ... - */ - 'order' => false, - - /* - * The type of the query (which is usually the first keyword of - * the statement). - */ - 'querytype' => false, - - /* - * Whether a page reload is required. - */ - 'reload' => false, - - /* - * SELECT ... FROM ... - */ - 'select_from' => false, - - /* - * ... UNION ... - */ - 'union' => false, - ]; - - /** - * Gets an array with flags select statement has. - * - * @param SelectStatement $statement the statement to be processed - * @param array $flags flags set so far - * @psalm-param QueryFlagsType $flags - * - * @return array - * @psalm-return QueryFlagsType - */ - private static function getFlagsSelect($statement, $flags) - { - $flags['querytype'] = 'SELECT'; - $flags['is_select'] = true; - - if (! empty($statement->from)) { - $flags['select_from'] = true; - } - - if ($statement->options->has('DISTINCT')) { - $flags['distinct'] = true; - } - - if (! empty($statement->group) || ! empty($statement->having)) { - $flags['is_group'] = true; - } - - if (! empty($statement->into) && ($statement->into->type === 'OUTFILE')) { - $flags['is_export'] = true; - } - - $expressions = $statement->expr; - if (! empty($statement->join)) { - foreach ($statement->join as $join) { - $expressions[] = $join->expr; - } - } - - foreach ($expressions as $expr) { - if (! empty($expr->function)) { - $function = strtoupper($expr->function); - if ($function === 'COUNT') { - $flags['is_count'] = true; - } elseif (in_array($function, static::$FUNCTIONS, true)) { - $flags['is_func'] = true; - } - } - - if (empty($expr->subquery)) { - continue; - } - - $flags['is_subquery'] = true; - } - - if (! empty($statement->procedure) && ($statement->procedure->name === 'ANALYSE')) { - $flags['is_analyse'] = true; - } - - if (! empty($statement->group)) { - $flags['group'] = true; - } - - if (! empty($statement->having)) { - $flags['having'] = true; - } - - if (! empty($statement->union)) { - $flags['union'] = true; - } - - if (! empty($statement->join)) { - $flags['join'] = true; - } - - return $flags; - } - - /** - * Gets an array with flags this statement has. - * - * @param Statement|null $statement the statement to be processed - * @param bool $all if `false`, false values will not be included - * - * @return array - * @psalm-return QueryFlagsType - */ - public static function getFlags($statement, $all = false) - { - $flags = ['querytype' => false]; - if ($all) { - $flags = self::$ALLFLAGS; - } - - if ($statement instanceof AlterStatement) { - $flags['querytype'] = 'ALTER'; - $flags['reload'] = true; - } elseif ($statement instanceof CreateStatement) { - $flags['querytype'] = 'CREATE'; - $flags['reload'] = true; - } elseif ($statement instanceof AnalyzeStatement) { - $flags['querytype'] = 'ANALYZE'; - $flags['is_maint'] = true; - } elseif ($statement instanceof CheckStatement) { - $flags['querytype'] = 'CHECK'; - $flags['is_maint'] = true; - } elseif ($statement instanceof ChecksumStatement) { - $flags['querytype'] = 'CHECKSUM'; - $flags['is_maint'] = true; - } elseif ($statement instanceof OptimizeStatement) { - $flags['querytype'] = 'OPTIMIZE'; - $flags['is_maint'] = true; - } elseif ($statement instanceof RepairStatement) { - $flags['querytype'] = 'REPAIR'; - $flags['is_maint'] = true; - } elseif ($statement instanceof CallStatement) { - $flags['querytype'] = 'CALL'; - $flags['is_procedure'] = true; - } elseif ($statement instanceof DeleteStatement) { - $flags['querytype'] = 'DELETE'; - $flags['is_delete'] = true; - $flags['is_affected'] = true; - } elseif ($statement instanceof DropStatement) { - $flags['querytype'] = 'DROP'; - $flags['reload'] = true; - - if ($statement->options->has('DATABASE') || $statement->options->has('SCHEMA')) { - $flags['drop_database'] = true; - } - } elseif ($statement instanceof ExplainStatement) { - $flags['querytype'] = 'EXPLAIN'; - $flags['is_explain'] = true; - } elseif ($statement instanceof InsertStatement) { - $flags['querytype'] = 'INSERT'; - $flags['is_affected'] = true; - $flags['is_insert'] = true; - } elseif ($statement instanceof LoadStatement) { - $flags['querytype'] = 'LOAD'; - $flags['is_affected'] = true; - $flags['is_insert'] = true; - } elseif ($statement instanceof ReplaceStatement) { - $flags['querytype'] = 'REPLACE'; - $flags['is_affected'] = true; - $flags['is_replace'] = true; - $flags['is_insert'] = true; - } elseif ($statement instanceof SelectStatement) { - $flags = self::getFlagsSelect($statement, $flags); - } elseif ($statement instanceof ShowStatement) { - $flags['querytype'] = 'SHOW'; - $flags['is_show'] = true; - } elseif ($statement instanceof UpdateStatement) { - $flags['querytype'] = 'UPDATE'; - $flags['is_affected'] = true; - } elseif ($statement instanceof SetStatement) { - $flags['querytype'] = 'SET'; - } elseif ($statement instanceof KillStatement) { - $flags['querytype'] = 'KILL'; - } - - if ( - ($statement instanceof SelectStatement) - || ($statement instanceof UpdateStatement) - || ($statement instanceof DeleteStatement) - ) { - if (! empty($statement->limit)) { - $flags['limit'] = true; - } - - if (! empty($statement->order)) { - $flags['order'] = true; - } - } - - return $flags; - } - - /** - * Parses a query and gets all information about it. - * - * @param string $query the query to be parsed - * - * @return array The array returned is the one returned by - * `static::getFlags()`, with the following keys added: - * - parser - the parser used to analyze the query; - * - statement - the first statement resulted from parsing; - * - select_tables - the real name of the tables selected; - * if there are no table names in the `SELECT` - * expressions, the table names are fetched from the - * `FROM` expressions - * - select_expr - selected expressions - * @psalm-return QueryFlagsType&array{ - * select_expr?: (string|null)[], - * select_tables?: array{string, string|null}[], - * statement?: Statement|null, parser?: Parser - * } - */ - public static function getAll($query) - { - $parser = new Parser($query); - - if (empty($parser->statements[0])) { - return static::getFlags(null, true); - } - - $statement = $parser->statements[0]; - - $ret = static::getFlags($statement, true); - - $ret['parser'] = $parser; - $ret['statement'] = $statement; - - if ($statement instanceof SelectStatement) { - $ret['select_tables'] = []; - $ret['select_expr'] = []; - - // Finding tables' aliases and their associated real names. - $tableAliases = []; - foreach ($statement->from as $expr) { - if (! isset($expr->table, $expr->alias) || ($expr->table === '') || ($expr->alias === '')) { - continue; - } - - $tableAliases[$expr->alias] = [ - $expr->table, - $expr->database ?? null, - ]; - } - - // Trying to find selected tables only from the select expression. - // Sometimes, this is not possible because the tables aren't defined - // explicitly (e.g. SELECT * FROM film, SELECT film_id FROM film). - foreach ($statement->expr as $expr) { - if (isset($expr->table) && ($expr->table !== '')) { - if (isset($tableAliases[$expr->table])) { - $arr = $tableAliases[$expr->table]; - } else { - $arr = [ - $expr->table, - isset($expr->database) && ($expr->database !== '') ? - $expr->database : null, - ]; - } - - if (! in_array($arr, $ret['select_tables'])) { - $ret['select_tables'][] = $arr; - } - } else { - $ret['select_expr'][] = $expr->expr; - } - } - - // If no tables names were found in the SELECT clause or if there - // are expressions like * or COUNT(*), etc. tables names should be - // extracted from the FROM clause. - if (empty($ret['select_tables'])) { - foreach ($statement->from as $expr) { - if (! isset($expr->table) || ($expr->table === '')) { - continue; - } - - $arr = [ - $expr->table, - isset($expr->database) && ($expr->database !== '') ? - $expr->database : null, - ]; - if (in_array($arr, $ret['select_tables'])) { - continue; - } - - $ret['select_tables'][] = $arr; - } - } - } - - return $ret; - } - - /** - * Gets a list of all tables used in this statement. - * - * @param Statement $statement statement to be scanned - * - * @return array - */ - public static function getTables($statement) - { - $expressions = []; - - if (($statement instanceof InsertStatement) || ($statement instanceof ReplaceStatement)) { - $expressions = [$statement->into->dest]; - } elseif ($statement instanceof UpdateStatement) { - $expressions = $statement->tables; - } elseif (($statement instanceof SelectStatement) || ($statement instanceof DeleteStatement)) { - $expressions = $statement->from; - } elseif (($statement instanceof AlterStatement) || ($statement instanceof TruncateStatement)) { - $expressions = [$statement->table]; - } elseif ($statement instanceof DropStatement) { - if (! $statement->options->has('TABLE')) { - // No tables are dropped. - return []; - } - - $expressions = $statement->fields; - } elseif ($statement instanceof RenameStatement) { - foreach ($statement->renames as $rename) { - $expressions[] = $rename->old; - } - } - - $ret = []; - foreach ($expressions as $expr) { - if (empty($expr->table)) { - continue; - } - - $expr->expr = null; // Force rebuild. - $expr->alias = null; // Aliases are not required. - $ret[] = Expression::build($expr); - } - - return $ret; - } - - /** - * Gets a specific clause. - * - * @param Statement $statement the parsed query that has to be modified - * @param TokensList $list the list of tokens - * @param string $clause the clause to be returned - * @param int|string $type The type of the search. - * If int, - * -1 for everything that was before - * 0 only for the clause - * 1 for everything after - * If string, the name of the first clause that - * should not be included. - * @param bool $skipFirst whether to skip the first keyword in clause - * - * @return string - */ - public static function getClause($statement, $list, $clause, $type = 0, $skipFirst = true) - { - /** - * The index of the current clause. - * - * @var int - */ - $currIdx = 0; - - /** - * The count of brackets. - * We keep track of them so we won't insert the clause in a subquery. - * - * @var int - */ - $brackets = 0; - - /** - * The string to be returned. - * - * @var string - */ - $ret = ''; - - /** - * The clauses of this type of statement and their index. - */ - $clauses = $statement->getClauseOrder(); - - /** - * Lexer used for lexing the clause. - */ - $lexer = new Lexer($clause); - - /** - * The type of this clause. - * - * @var string - */ - $clauseType = $lexer->list->getNextOfType(Token::TYPE_KEYWORD)->keyword; - - /** - * The index of this clause. - */ - $clauseIdx = $clauses[$clauseType] ?? -1; - - $firstClauseIdx = $clauseIdx; - $lastClauseIdx = $clauseIdx; - - // Determining the behavior of this function. - if ($type === -1) { - $firstClauseIdx = -1; // Something small enough. - $lastClauseIdx = $clauseIdx - 1; - } elseif ($type === 1) { - $firstClauseIdx = $clauseIdx + 1; - $lastClauseIdx = 10000; // Something big enough. - } elseif (is_string($type) && isset($clauses[$type])) { - if ($clauses[$type] > $clauseIdx) { - $firstClauseIdx = $clauseIdx + 1; - $lastClauseIdx = $clauses[$type] - 1; - } else { - $firstClauseIdx = $clauses[$type] + 1; - $lastClauseIdx = $clauseIdx - 1; - } - } - - // This option is unavailable for multiple clauses. - if ($type !== 0) { - $skipFirst = false; - } - - for ($i = $statement->first; $i <= $statement->last; ++$i) { - $token = $list->tokens[$i]; - - if ($token->type === Token::TYPE_COMMENT) { - continue; - } - - if ($token->type === Token::TYPE_OPERATOR) { - if ($token->value === '(') { - ++$brackets; - } elseif ($token->value === ')') { - --$brackets; - } - } - - if ($brackets === 0) { - // Checking if the section was changed. - if ( - ($token->type === Token::TYPE_KEYWORD) - && isset($clauses[$token->keyword]) - && ($clauses[$token->keyword] >= $currIdx) - ) { - $currIdx = $clauses[$token->keyword]; - if ($skipFirst && ($currIdx === $clauseIdx)) { - // This token is skipped (not added to the old - // clause) because it will be replaced. - continue; - } - } - } - - if (($firstClauseIdx > $currIdx) || ($currIdx > $lastClauseIdx)) { - continue; - } - - $ret .= $token->token; - } - - return trim($ret); - } - - /** - * Builds a query by rebuilding the statement from the tokens list supplied - * and replaces a clause. - * - * It is a very basic version of a query builder. - * - * @param Statement $statement the parsed query that has to be modified - * @param TokensList $list the list of tokens - * @param string $old The type of the clause that should be - * replaced. This can be an entire clause. - * @param string $new The new clause. If this parameter is omitted - * it is considered to be equal with `$old`. - * @param bool $onlyType whether only the type of the clause should - * be replaced or the entire clause - * - * @return string - */ - public static function replaceClause($statement, $list, $old, $new = null, $onlyType = false) - { - // TODO: Update the tokens list and the statement. - - if ($new === null) { - $new = $old; - } - - if ($onlyType) { - return static::getClause($statement, $list, $old, -1, false) . ' ' . - $new . ' ' . static::getClause($statement, $list, $old, 0) . ' ' . - static::getClause($statement, $list, $old, 1, false); - } - - return static::getClause($statement, $list, $old, -1, false) . ' ' . - $new . ' ' . static::getClause($statement, $list, $old, 1, false); - } - - /** - * Builds a query by rebuilding the statement from the tokens list supplied - * and replaces multiple clauses. - * - * @param Statement $statement the parsed query that has to be modified - * @param TokensList $list the list of tokens - * @param array> $ops Clauses to be replaced. Contains multiple - * arrays having two values: [$old, $new]. - * Clauses must be sorted. - * - * @return string - */ - public static function replaceClauses($statement, $list, array $ops) - { - $count = count($ops); - - // Nothing to do. - if ($count === 0) { - return ''; - } - - /** - * Value to be returned. - * - * @var string - */ - $ret = ''; - - // If there is only one clause, `replaceClause()` should be used. - if ($count === 1) { - return static::replaceClause($statement, $list, $ops[0][0], $ops[0][1]); - } - - // Adding everything before first replacement. - $ret .= static::getClause($statement, $list, $ops[0][0], -1) . ' '; - - // Doing replacements. - foreach ($ops as $i => $clause) { - $ret .= $clause[1] . ' '; - - // Adding everything between this and next replacement. - if ($i + 1 === $count) { - continue; - } - - $ret .= static::getClause($statement, $list, $clause[0], $ops[$i + 1][0]) . ' '; - } - - // Adding everything after the last replacement. - return $ret . static::getClause($statement, $list, $ops[$count - 1][0], 1); - } - - /** - * Gets the first full statement in the query. - * - * @param string $query the query to be analyzed - * @param string $delimiter the delimiter to be used - * - * @return array array containing the first full query, - * the remaining part of the query and the last delimiter - * @psalm-return array{string|null, string, string|null} - */ - public static function getFirstStatement($query, $delimiter = null) - { - $lexer = new Lexer($query, false, $delimiter); - $list = $lexer->list; - - /** - * Whether a full statement was found. - * - * @var bool - */ - $fullStatement = false; - - /** - * The first full statement. - * - * @var string - */ - $statement = ''; - - for ($list->idx = 0; $list->idx < $list->count; ++$list->idx) { - $token = $list->tokens[$list->idx]; - - if ($token->type === Token::TYPE_COMMENT) { - continue; - } - - $statement .= $token->token; - - if (($token->type === Token::TYPE_DELIMITER) && ! empty($token->token)) { - $delimiter = $token->token; - $fullStatement = true; - break; - } - } - - // No statement was found so we return the entire query as being the - // remaining part. - if (! $fullStatement) { - return [ - null, - $query, - $delimiter, - ]; - } - - // At least one query was found so we have to build the rest of the - // remaining query. - $query = ''; - for (++$list->idx; $list->idx < $list->count; ++$list->idx) { - $query .= $list->tokens[$list->idx]->token; - } - - return [ - trim($statement), - $query, - $delimiter, - ]; - } - - /** - * Gets a starting offset of a specific clause. - * - * @param Statement $statement the parsed query that has to be modified - * @param TokensList $list the list of tokens - * @param string $clause the clause to be returned - * - * @return int - */ - public static function getClauseStartOffset($statement, $list, $clause) - { - /** - * The count of brackets. - * We keep track of them so we won't insert the clause in a subquery. - * - * @var int - */ - $brackets = 0; - - /** - * The clauses of this type of statement and their index. - */ - $clauses = array_flip(array_keys($statement->getClauses())); - - for ($i = $statement->first; $i <= $statement->last; ++$i) { - $token = $list->tokens[$i]; - - if ($token->type === Token::TYPE_COMMENT) { - continue; - } - - if ($token->type === Token::TYPE_OPERATOR) { - if ($token->value === '(') { - ++$brackets; - } elseif ($token->value === ')') { - --$brackets; - } - } - - if ($brackets !== 0) { - continue; - } - - if ( - ($token->type === Token::TYPE_KEYWORD) - && isset($clauses[$token->keyword]) - && ($clause === $token->keyword) - ) { - return $i; - } - - if ($token->keyword === 'UNION') { - return -1; - } - } - - return -1; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/Routine.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/Routine.php deleted file mode 100644 index 7d54738c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/Routine.php +++ /dev/null @@ -1,141 +0,0 @@ -list); - - if ($type === null) { - return [ - '', - '', - '', - '', - '', - ]; - } - - $options = []; - foreach ($type->options->options as $opt) { - $options[] = is_string($opt) ? $opt : $opt['value']; - } - - return [ - '', - '', - $type->name, - implode(',', $type->parameters), - implode(' ', $options), - ]; - } - - /** - * Parses a parameter of a routine. - * - * @param string $param parameter's definition - * - * @return string[] - */ - public static function getParameter($param) - { - $lexer = new Lexer('(' . $param . ')'); - - // A dummy parser is used for error reporting. - $param = ParameterDefinition::parse(new Parser(), $lexer->list); - - if (empty($param[0])) { - return [ - '', - '', - '', - '', - '', - ]; - } - - $param = $param[0]; - - $options = []; - foreach ($param->type->options->options as $opt) { - $options[] = is_string($opt) ? $opt : $opt['value']; - } - - return [ - empty($param->inOut) ? '' : $param->inOut, - $param->name, - $param->type->name, - implode(',', $param->type->parameters), - implode(' ', $options), - ]; - } - - /** - * Gets the parameters of a routine from the parse tree. - * - * @param CreateStatement $statement the statement to be processed - * - * @return array> - */ - public static function getParameters($statement) - { - $retval = [ - 'num' => 0, - 'dir' => [], - 'name' => [], - 'type' => [], - 'length' => [], - 'length_arr' => [], - 'opts' => [], - ]; - - if (! empty($statement->parameters)) { - $idx = 0; - foreach ($statement->parameters as $param) { - $retval['dir'][$idx] = $param->inOut; - $retval['name'][$idx] = $param->name; - $retval['type'][$idx] = $param->type->name; - $retval['length'][$idx] = implode(',', $param->type->parameters); - $retval['length_arr'][$idx] = $param->type->parameters; - $retval['opts'][$idx] = []; - foreach ($param->type->options->options as $opt) { - $retval['opts'][$idx][] = is_string($opt) ? - $opt : $opt['value']; - } - - $retval['opts'][$idx] = implode(' ', $retval['opts'][$idx]); - ++$idx; - } - - $retval['num'] = $idx; - } - - return $retval; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/Table.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/Table.php deleted file mode 100644 index 7bca9fd8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/Table.php +++ /dev/null @@ -1,138 +0,0 @@ -> - */ - public static function getForeignKeys($statement) - { - if (empty($statement->fields) || (! is_array($statement->fields)) || (! $statement->options->has('TABLE'))) { - return []; - } - - $ret = []; - - foreach ($statement->fields as $field) { - if (empty($field->key) || ($field->key->type !== 'FOREIGN KEY')) { - continue; - } - - $columns = []; - foreach ($field->key->columns as $column) { - if (! isset($column['name'])) { - continue; - } - - $columns[] = $column['name']; - } - - $tmp = [ - 'constraint' => $field->name, - 'index_list' => $columns, - ]; - - if (! empty($field->references)) { - $tmp['ref_db_name'] = $field->references->table->database; - $tmp['ref_table_name'] = $field->references->table->table; - $tmp['ref_index_list'] = $field->references->columns; - - $opt = $field->references->options->has('ON UPDATE'); - - if ($opt) { - $tmp['on_update'] = str_replace(' ', '_', $opt); - } - - $opt = $field->references->options->has('ON DELETE'); - - if ($opt) { - $tmp['on_delete'] = str_replace(' ', '_', $opt); - } - } - - $ret[] = $tmp; - } - - return $ret; - } - - /** - * Gets fields of the table. - * - * @param CreateStatement $statement the statement to be processed - * - * @return array> - */ - public static function getFields($statement) - { - if (empty($statement->fields) || (! is_array($statement->fields)) || (! $statement->options->has('TABLE'))) { - return []; - } - - $ret = []; - - foreach ($statement->fields as $field) { - // Skipping keys. - if (empty($field->type)) { - continue; - } - - $ret[$field->name] = [ - 'type' => $field->type->name, - 'timestamp_not_null' => false, - ]; - - if (! $field->options) { - continue; - } - - if ($field->type->name === 'TIMESTAMP') { - if ($field->options->has('NOT NULL')) { - $ret[$field->name]['timestamp_not_null'] = true; - } - } - - $option = $field->options->has('DEFAULT'); - - if ($option) { - $ret[$field->name]['default_value'] = $option; - if ($option === 'CURRENT_TIMESTAMP') { - $ret[$field->name]['default_current_timestamp'] = true; - } - } - - $option = $field->options->has('ON UPDATE'); - - if ($option === 'CURRENT_TIMESTAMP') { - $ret[$field->name]['on_update_current_timestamp'] = true; - } - - $option = $field->options->has('AS'); - - if (! $option) { - continue; - } - - $ret[$field->name]['generated'] = true; - $ret[$field->name]['expr'] = $option; - } - - return $ret; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/Tokens.php b/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/Tokens.php deleted file mode 100644 index 50884d38..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/src/Utils/Tokens.php +++ /dev/null @@ -1,155 +0,0 @@ - $pattern the pattern to be matches - * - * @return bool - */ - public static function match(Token $token, array $pattern) - { - // Token. - if (isset($pattern['token']) && ($pattern['token'] !== $token->token)) { - return false; - } - - // Value. - if (isset($pattern['value']) && ($pattern['value'] !== $token->value)) { - return false; - } - - if (isset($pattern['value_str']) && strcasecmp($pattern['value_str'], (string) $token->value)) { - return false; - } - - // Type. - if (isset($pattern['type']) && ($pattern['type'] !== $token->type)) { - return false; - } - - // Flags. - return ! isset($pattern['flags']) - || (! (($pattern['flags'] & $token->flags) === 0)); - } - - /** - * @param TokensList|string|UtfString $list - * @param Token[] $find - * @param Token[] $replace - * - * @return TokensList - */ - public static function replaceTokens($list, array $find, array $replace) - { - /** - * Whether the first parameter is a list. - */ - $isList = $list instanceof TokensList; - - // Parsing the tokens. - if (! $isList) { - $list = Lexer::getTokens($list); - } - - /** - * The list to be returned. - * - * @var Token[] - */ - $newList = []; - - /** - * The length of the find pattern is calculated only once. - * - * @var int - */ - $findCount = count($find); - - /** - * The starting index of the pattern. - * - * @var int - */ - $i = 0; - - while ($i < $list->count) { - // A sequence may not start with a comment. - if ($list->tokens[$i]->type === Token::TYPE_COMMENT) { - $newList[] = $list->tokens[$i]; - ++$i; - continue; - } - - /** - * The index used to parse `$list->tokens`. - * - * This index might be running faster than `$k` because some tokens - * are skipped. - */ - $j = $i; - - /** - * The index used to parse `$find`. - * - * This index might be running slower than `$j` because some tokens - * are skipped. - * - * @var int - */ - $k = 0; - - // Checking if the next tokens match the pattern described. - while (($j < $list->count) && ($k < $findCount)) { - // Comments are being skipped. - if ($list->tokens[$j]->type === Token::TYPE_COMMENT) { - ++$j; - } - - if (! static::match($list->tokens[$j], $find[$k])) { - // This token does not match the pattern. - break; - } - - // Going to next token and segment of find pattern. - ++$j; - ++$k; - } - - // Checking if the sequence was found. - if ($k === $findCount) { - // Inserting new tokens. - foreach ($replace as $token) { - $newList[] = $token; - } - - // Skipping next `$findCount` tokens. - $i = $j; - } else { - // Adding the same token. - $newList[] = $list->tokens[$i]; - ++$i; - } - } - - return $isList ? new TokensList($newList) : TokensList::build($newList); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/AlterStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/AlterStatementTest.php deleted file mode 100644 index f011b1a5..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/AlterStatementTest.php +++ /dev/null @@ -1,260 +0,0 @@ -statements[0]; - - $this->assertEquals($query, $stmt->build()); - } - - public function testBuilderWithExpression(): void - { - $query = 'ALTER TABLE `table` ' - . 'ADD UNIQUE KEY `functional_index`' - . ' (`field1`,`field2`, (IFNULL(`field3`,0)))'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals($query, $stmt->build()); - } - - public function testBuilderWithComments(): void - { - $query = 'ALTER /* comment */ TABLE `actor` ' . - 'ADD PRIMARY KEY (`actor_id`), -- comment at the end of the line' . "\n" . - 'ADD KEY `idx_actor_last_name` (`last_name`) -- and that is the last comment.'; - - $expectedQuery = 'ALTER TABLE `actor` ' . - 'ADD PRIMARY KEY (`actor_id`), ' . - 'ADD KEY `idx_actor_last_name` (`last_name`)'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals($expectedQuery, $stmt->build()); - } - - public function testBuilderWithCommentsOnOptions(): void - { - $query = 'ALTER EVENT `myEvent` /* comment */ ' . - 'ON SCHEDULE -- Comment at the end of the line' . "\n" . - 'AT "2023-01-01 01:23:45"'; - - $expectedQuery = 'ALTER EVENT `myEvent` ' . - 'ON SCHEDULE AT "2023-01-01 01:23:45"'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals($expectedQuery, $stmt->build()); - } - - public function testBuilderCompressed(): void - { - $query = 'ALTER TABLE `user` CHANGE `message` `message` TEXT COMPRESSED'; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - $this->assertEquals($query, $stmt->build()); - } - - public function testBuilderPartitions(): void - { - $parser = new Parser('ALTER TABLE t1 PARTITION BY HASH(id) PARTITIONS 8'); - $stmt = $parser->statements[0]; - - $this->assertEquals('ALTER TABLE t1 PARTITION BY HASH(id) PARTITIONS 8', $stmt->build()); - - $parser = new Parser('ALTER TABLE t1 ADD PARTITION (PARTITION p3 VALUES LESS THAN (2002))'); - $stmt = $parser->statements[0]; - - $this->assertEquals( - "ALTER TABLE t1 ADD PARTITION (\n" . - "PARTITION p3 VALUES LESS THAN (2002)\n" . - ')', - $stmt->build() - ); - - $parser = new Parser('ALTER TABLE p PARTITION BY LINEAR KEY ALGORITHM=2 (id) PARTITIONS 32;'); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'ALTER TABLE p PARTITION BY LINEAR KEY ALGORITHM=2 (id) PARTITIONS 32', - $stmt->build() - ); - - $parser = new Parser('ALTER TABLE t1 DROP PARTITION p0, p1;'); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'ALTER TABLE t1 DROP PARTITION p0, p1', - $stmt->build() - ); - - $parser = new Parser( - 'ALTER TABLE trips PARTITION BY RANGE (MONTH(trip_date))' - . ' (' . "\n" - . ' PARTITION p01 VALUES LESS THAN (02),' . "\n" - . ' PARTITION p02 VALUES LESS THAN (03),' . "\n" - . ' PARTITION p03 VALUES LESS THAN (04),' . "\n" - . ' PARTITION p04 VALUES LESS THAN (05),' . "\n" - . ' PARTITION p05 VALUES LESS THAN (06),' . "\n" - . ' PARTITION p06 VALUES LESS THAN (07),' . "\n" - . ' PARTITION p07 VALUES LESS THAN (08),' . "\n" - . ' PARTITION p08 VALUES LESS THAN (09),' . "\n" - . ' PARTITION p09 VALUES LESS THAN (10),' . "\n" - . ' PARTITION p10 VALUES LESS THAN (11),' . "\n" - . ' PARTITION p11 VALUES LESS THAN (12),' . "\n" - . ' PARTITION p12 VALUES LESS THAN (13),' . "\n" - . ' PARTITION pmaxval VALUES LESS THAN MAXVALUE' . "\n" - . ');' - ); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'ALTER TABLE trips PARTITION BY RANGE (MONTH(trip_date)) (' . "\n" - . 'PARTITION p01 VALUES LESS THAN (02),' . "\n" - . 'PARTITION p02 VALUES LESS THAN (03),' . "\n" - . 'PARTITION p03 VALUES LESS THAN (04),' . "\n" - . 'PARTITION p04 VALUES LESS THAN (05),' . "\n" - . 'PARTITION p05 VALUES LESS THAN (06),' . "\n" - . 'PARTITION p06 VALUES LESS THAN (07),' . "\n" - . 'PARTITION p07 VALUES LESS THAN (08),' . "\n" - . 'PARTITION p08 VALUES LESS THAN (09),' . "\n" - . 'PARTITION p09 VALUES LESS THAN (10),' . "\n" - . 'PARTITION p10 VALUES LESS THAN (11),' . "\n" - . 'PARTITION p11 VALUES LESS THAN (12),' . "\n" - . 'PARTITION p12 VALUES LESS THAN (13),' . "\n" - . 'PARTITION pmaxval VALUES LESS THAN MAXVALUE' . "\n" - . ')', - $stmt->build() - ); - } - - public function testBuilderEventWithDefiner(): void - { - $query = 'ALTER DEFINER=user EVENT myEvent ENABLE'; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - $this->assertEquals($query, $stmt->build()); - } - - /** - * @return Generator - */ - public static function provideBuilderForRenameColumn(): Generator - { - $query = 'ALTER TABLE myTable RENAME COLUMN a TO b'; - - yield 'Single RENAME COLUMN' => [$query]; - - $query = 'ALTER TABLE myTable RENAME COLUMN a TO b, RENAME COLUMN b TO a'; - - yield 'Multiple RENAME COLUMN' => [$query]; - - $query = 'ALTER TABLE myTable ' . - 'RENAME COLUMN a TO b, ' . - 'RENAME COLUMN b TO a, ' . - 'RENAME INDEX oldIndex TO newIndex, ' . - 'RENAME TO newTable'; - - yield 'Mixed RENAME COLUMN + RENAME INDEX + RENAME table' => [$query]; - - $query = 'ALTER TABLE myTable ' . - 'RENAME TO newTable, ' . - 'RENAME INDEX oldIndex TO newIndex, ' . - 'RENAME COLUMN b TO a, ' . - 'RENAME COLUMN a TO b'; - - yield 'Mixed RENAME table + RENAME INDEX + RENAME COLUMNS' => [$query]; - } - - /** - * @dataProvider provideBuilderForRenameColumn - */ - public function testBuilderRenameColumn(string $query): void - { - $parser = new Parser($query); - $stmt = $parser->statements[0]; - $this->assertEquals($query, $stmt->build()); - } - - /** - * @return Generator - */ - public static function provideBuilderForAlterRoutine(): Generator - { - $query = 'ALTER FUNCTION func_name COMMENT "test"'; - - yield 'Function with only comment' => [$query]; - - $query = 'ALTER FUNCTION func_name LANGUAGE SQL'; - - yield 'Function with only language' => [$query]; - - $query = 'ALTER FUNCTION func_name COMMENT "test" LANGUAGE SQL CONTAINS SQL SQL SECURITY DEFINER'; - - yield 'Function with all options combinations #1' => [$query]; - - $query = 'ALTER FUNCTION func_name COMMENT "test" LANGUAGE SQL NO SQL SQL SECURITY INVOKER'; - - yield 'Function with all options combinations #2' => [$query]; - - $query = 'ALTER FUNCTION func_name COMMENT "test" LANGUAGE SQL READS SQL DATA'; - - yield 'Function with all remaining options #1' => [$query]; - - $query = 'ALTER FUNCTION func_name COMMENT "test" LANGUAGE SQL MODIFIES SQL DATA'; - - yield 'Function with all remaining options #2' => [$query]; - - $query = 'ALTER PROCEDURE func_name COMMENT "test"'; - - yield 'Procedure with only comment' => [$query]; - - $query = 'ALTER PROCEDURE proc_name LANGUAGE SQL'; - - yield 'Procedure with only language' => [$query]; - - $query = 'ALTER PROCEDURE proc_name COMMENT "test" LANGUAGE SQL CONTAINS SQL SQL SECURITY DEFINER'; - - yield 'Procedure with all options combinations #1' => [$query]; - - $query = 'ALTER PROCEDURE proc_name COMMENT "test" LANGUAGE SQL NO SQL SQL SECURITY INVOKER'; - - yield 'Procedure with all options combinations #2' => [$query]; - - $query = 'ALTER PROCEDURE proc_name COMMENT "test" LANGUAGE SQL READS SQL DATA'; - - yield 'Procedure with all remaining options #1' => [$query]; - - $query = 'ALTER PROCEDURE proc_name COMMENT "test" LANGUAGE SQL MODIFIES SQL DATA'; - - yield 'Procedure with all remaining options #2' => [$query]; - } - - /** - * @dataProvider provideBuilderForAlterRoutine - */ - public function testBuilderForAlterRoutine(string $query): void - { - $parser = new Parser($query); - $stmt = $parser->statements[0]; - $this->assertEquals($query, $stmt->build()); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/CallStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/CallStatementTest.php deleted file mode 100644 index d5a7bcee..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/CallStatementTest.php +++ /dev/null @@ -1,100 +0,0 @@ -statements[0]; - - $this->assertEquals($query, $stmt->build()); - } - - public function testBuilderShort(): void - { - $query = 'CALL foo'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals($query . '()', $stmt->build()); - } - - public function testBuilderWithDbName(): void - { - $query = 'CALL mydb.foo()'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals($query, $stmt->build()); - } - - public function testBuilderWithDbNameShort(): void - { - $query = 'CALL mydb.foo'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals($query . '()', $stmt->build()); - } - - public function testBuilderWithDbNameAndParams(): void - { - $query = 'CALL mydb.foo(@bar, @baz);'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals('CALL mydb.foo(@bar,@baz)', $stmt->build()); - } - - public function testBuilderMultiCallsShort(): void - { - $query = 'call e;call f'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals('CALL e()', $stmt->build()); - $stmt = $parser->statements[1]; - - $this->assertEquals('CALL f()', $stmt->build()); - } - - public function testBuilderMultiCalls(): void - { - $query = 'call e();call f'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals('CALL e()', $stmt->build()); - $stmt = $parser->statements[1]; - - $this->assertEquals('CALL f()', $stmt->build()); - } - - public function testBuilderMultiCallsArgs(): void - { - $query = 'call e("foo");call f'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals('CALL e("foo")', $stmt->build()); - $stmt = $parser->statements[1]; - - $this->assertEquals('CALL f()', $stmt->build()); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/CreateStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/CreateStatementTest.php deleted file mode 100644 index 4300e15d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/CreateStatementTest.php +++ /dev/null @@ -1,845 +0,0 @@ -statements[0]; - $this->assertEquals( - 'CREATE USER "jeffrey"@"localhost" IDENTIFIED BY "mypass"', - $stmt->build() - ); - } - - public function testBuilderDatabase(): void - { - // CREATE DATABASE ... - $parser = new Parser( - 'CREATE DATABASE `mydb` ' . - 'DEFAULT CHARACTER SET = utf8 DEFAULT COLLATE = utf8_general_ci' - ); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'CREATE DATABASE `mydb` ' . - 'DEFAULT CHARACTER SET=utf8 DEFAULT COLLATE=utf8_general_ci', - $stmt->build() - ); - - // CREATE SCHEMA ... - $parser = new Parser('CREATE SCHEMA `mydb` DEFAULT CHARACTER SET = utf8 DEFAULT COLLATE = utf8_general_ci'); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'CREATE SCHEMA `mydb` ' . - 'DEFAULT CHARACTER SET=utf8 DEFAULT COLLATE=utf8_general_ci', - $stmt->build() - ); - } - - public function testBuilderDefaultInt(): void - { - $parser = new Parser( - 'CREATE TABLE IF NOT EXISTS t1 (' . - " c1 int(11) NOT NULL DEFAULT '0' COMMENT 'xxx'" . - ') ENGINE=MyISAM' - ); - $stmt = $parser->statements[0]; - - $this->assertEquals( - "CREATE TABLE IF NOT EXISTS t1 (\n" . - " `c1` int(11) NOT NULL DEFAULT '0' COMMENT 'xxx'\n" . - ') ENGINE=MyISAM', - $stmt->build() - ); - } - - public function testBuilderWithComments(): void - { - $parser = new Parser('CREATE TABLE tab1 (`col1` TIMESTAMP /*!40100 DEFAULT NULL */)'); - $stmt = $parser->statements[0]; - $this->assertEquals( - // TODO: fix with https://github.com/phpmyadmin/sql-parser/issues/256 - "CREATE TABLE tab1 (\n `col1` timestamp DEFAULT NULL\n) ", - $stmt->build() - ); - } - - public function testBuilderCompressed(): void - { - $parser = new Parser('CREATE TABLE users ( user_id int ) PAGE_COMPRESSED=1 PAGE_COMPRESSION_LEVEL=9;'); - $stmt = $parser->statements[0]; - $this->assertEquals( - "CREATE TABLE users (\n `user_id` int\n) PAGE_COMPRESSED=1 PAGE_COMPRESSION_LEVEL=9", - $stmt->build() - ); - } - - public function testBuilderCollate(): void - { - $parser = new Parser( - 'CREATE TABLE IF NOT EXISTS t1 (' . - " c1 varchar(11) NOT NULL DEFAULT '0' COLLATE 'utf8_czech_ci' COMMENT 'xxx'" . - ') ENGINE=MyISAM' - ); - $stmt = $parser->statements[0]; - - $this->assertEquals( - "CREATE TABLE IF NOT EXISTS t1 (\n" . - " `c1` varchar(11) NOT NULL DEFAULT '0' COLLATE 'utf8_czech_ci' COMMENT 'xxx'\n" . - ') ENGINE=MyISAM', - $stmt->build() - ); - } - - public function testBuilderDefaultComment(): void - { - $parser = new Parser( - 'CREATE TABLE `wp_audio` (' . - " `somedata` int(11) DEFAULT NULL COMMENT 'ma data', " . - " `someinfo` int(11) DEFAULT NULL COMMENT 'ma info' " . - ' )' - ); - $stmt = $parser->statements[0]; - - $this->assertEquals( - "CREATE TABLE `wp_audio` (\n" . - " `somedata` int(11) DEFAULT NULL COMMENT 'ma data',\n" . - " `someinfo` int(11) DEFAULT NULL COMMENT 'ma info'\n" . - ') ', - $stmt->build() - ); - } - - public function testBuilderTable(): void - { - /* Assertion 1 */ - $stmt = new CreateStatement(); - - $stmt->name = new Expression('', 'test', ''); - $stmt->options = new OptionsArray(['TABLE']); - $stmt->fields = [ - new CreateDefinition( - 'id', - new OptionsArray(['NOT NULL', 'AUTO_INCREMENT']), - new DataType('INT', [11], new OptionsArray(['UNSIGNED'])) - ), - new CreateDefinition( - '', - null, - new Key('', [['name' => 'id']], 'PRIMARY KEY') - ), - ]; - - $this->assertEquals( - "CREATE TABLE `test` (\n" . - " `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,\n" . - " PRIMARY KEY (`id`)\n" . - ') ', - $stmt->build() - ); - - /* Assertion 2 */ - $query = - "CREATE TABLE `jos_core_acl_aro` (\n" . - " `id` int(11) NOT NULL,\n" . - " `section_value` varchar(240) NOT NULL DEFAULT '0',\n" . - " `value` varchar(240) NOT NULL DEFAULT '',\n" . - " `order_value` int(11) NOT NULL DEFAULT '0',\n" . - " `name` varchar(255) NOT NULL DEFAULT '',\n" . - " `hidden` int(11) NOT NULL DEFAULT '0',\n" . - " PRIMARY KEY (`id`),\n" . - " UNIQUE KEY `jos_section_value_value_aro` (`section_value`(100),`value`(15)) USING BTREE,\n" . - " KEY `jos_gacl_hidden_aro` (`hidden`)\n" . - ') ENGINE=InnoDB DEFAULT CHARSET=latin1'; - $parser = new Parser($query); - $this->assertEquals($query, $parser->statements[0]->build()); - - /* Assertion 3 */ - $query = 'CREATE TABLE `table_copy` LIKE `old_table`'; - $parser = new Parser($query); - $this->assertEquals($query, $parser->statements[0]->build()); - - /* Assertion 4 */ - $query = - "CREATE TABLE `aa` (\n" . - " `id` int(11) NOT NULL,\n" . - " `rTime` timestamp(3) NOT NULL DEFAULT '0000-00-00 00:00:00.000' ON UPDATE CURRENT_TIMESTAMP(3),\n" . - " PRIMARY KEY (`id`)\n" . - ') ENGINE=InnoDB DEFAULT CHARSET=latin1'; - $parser = new Parser($query); - $this->assertEquals($query, $parser->statements[0]->build()); - - /* Assertion 5 */ - $parser = new Parser( - 'CREATE table table_name WITH' . - ' cte (col1) AS ( SELECT 1 UNION ALL SELECT 2 )' . - ' SELECT col1 FROM cte' - ); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'CREATE TABLE table_name WITH' . - ' cte(col1) AS (SELECT 1 UNION ALL SELECT 2)' . - ' SELECT col1 FROM cte', - $stmt->build() - ); - } - - public function testBuilderPartitions(): void - { - /* Assertion 1 */ - $query = 'CREATE TABLE ts (' . "\n" - . ' `id` int,' . "\n" - . ' `purchased` date' . "\n" - . ') ' . "\n" - . 'PARTITION BY RANGE(YEAR(purchased))' . "\n" - . 'PARTITIONS 3' . "\n" - . 'SUBPARTITION BY HASH(TO_DAYS(purchased))' . "\n" - . 'SUBPARTITIONS 2' . "\n" - . '(' . "\n" - . 'PARTITION p0 VALUES LESS THAN (1990) (' . "\n" - . 'SUBPARTITION s0,' . "\n" - . 'SUBPARTITION s1' . "\n" - . '),' . "\n" - . 'PARTITION p1 VALUES LESS THAN (2000) (' . "\n" - . 'SUBPARTITION s2,' . "\n" - . 'SUBPARTITION s3' . "\n" - . '),' . "\n" - . 'PARTITION p2 VALUES LESS THAN MAXVALUE (' . "\n" - . 'SUBPARTITION s4,' . "\n" - . 'SUBPARTITION s5' . "\n" - . ')' . "\n" - . ')'; - $parser = new Parser($query); - $this->assertEquals($query, $parser->statements[0]->build()); - - /* Assertion 2 */ - $query = 'CREATE TABLE `pma_test` (' . "\n" - . ' `test_id` int(32) NOT NULL,' . "\n" - . ' `time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP' . "\n" - . ') ENGINE=InnoDB DEFAULT CHARSET=utf8' . "\n" - . 'PARTITION BY RANGE (test_id)' . "\n" - . '(' . "\n" - . 'PARTITION p0 VALUES LESS THAN (250000) ENGINE=InnoDB,' . "\n" - . 'PARTITION p1 VALUES LESS THAN (500000) ENGINE=InnoDB,' . "\n" - . 'PARTITION p2 VALUES LESS THAN (750000) ENGINE=InnoDB,' . "\n" - . 'PARTITION p3 VALUES LESS THAN (1000000) ENGINE=InnoDB,' . "\n" - . 'PARTITION p4 VALUES LESS THAN (1250000) ENGINE=InnoDB,' . "\n" - . 'PARTITION p5 VALUES LESS THAN (1500000) ENGINE=InnoDB,' . "\n" - . 'PARTITION p6 VALUES LESS THAN MAXVALUE ENGINE=InnoDB' . "\n" - . ')'; - $parser = new Parser($query); - $this->assertEquals($query, $parser->statements[0]->build()); - } - - /** - * @return string[][] - */ - public static function partitionQueriesProvider(): array - { - $subPartitions = << [$subPartitions], 'partitions' => [$partitions]]; - } - - /** - * @dataProvider partitionQueriesProvider - */ - public function testBuilderPartitionsEngine(string $query): void - { - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals($query, $stmt->build()); - } - - public function testBuilderView(): void - { - $parser = new Parser( - 'CREATE OR REPLACE VIEW xviewmytable AS SELECT mytable.id ' - . 'AS id, mytable.personid AS personid FROM mytable ' - . 'WHERE (mytable.birth > \'1990-01-19\') GROUP BY mytable.personid ;' - ); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'CREATE OR REPLACE VIEW xviewmytable AS SELECT mytable.id ' - . 'AS `id`, mytable.personid AS `personid` FROM mytable ' - . 'WHERE (mytable.birth > \'1990-01-19\') GROUP BY mytable.personid ', - $stmt->build() - ); - - $parser = new Parser( - 'CREATE VIEW myView (vid, vfirstname) AS ' . - 'SELECT id, first_name FROM employee WHERE id = 1' - ); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'CREATE VIEW myView (vid, vfirstname) AS ' . - 'SELECT id, first_name FROM employee WHERE id = 1 ', - $stmt->build() - ); - - $parser = new Parser( - 'CREATE OR REPLACE VIEW myView (vid, vfirstname) AS ' . - 'SELECT id, first_name FROM employee WHERE id = 1' - ); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'CREATE OR REPLACE VIEW myView (vid, vfirstname) AS ' . - 'SELECT id, first_name FROM employee WHERE id = 1 ', - $stmt->build() - ); - - // Assert the builder can build wrong syntax select expressions - $parser = new Parser( - 'CREATE OR REPLACE VIEW myView (vid, vfirstname) AS ' . - 'SELECT id, first_name, FROMzz employee WHERE id = 1' - ); - $stmt = $parser->statements[0]; - $this->assertEquals( - 'CREATE OR REPLACE VIEW myView (vid, vfirstname) AS ' . - 'SELECT id, first_name, FROMzz employee WHERE id = 1 ', - $stmt->build() - ); - - $parser = new Parser( - 'CREATE OR REPLACE VIEW myView (vid, vfirstname) AS ' . - 'SELECT id, first_name, FROMzz employee WHERE id = 1 ' . - 'UNION ' . - 'SELECT id, first_name, FROMzz employee WHERE id = 2 ' - ); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'CREATE OR REPLACE VIEW myView (vid, vfirstname) AS ' . - 'SELECT id, first_name, FROMzz employee WHERE id = 1 ' . - 'UNION ' . - 'SELECT id, first_name, FROMzz employee WHERE id = 2 ', - $stmt->build() - ); - - $parser = new Parser('CREATE VIEW `view_programlevelpartner` AS SELECT `p`.`country_id`' - . 'AS `country_id` FROM `program_level_partner` `p` ORDER BY `p`.`id` asc'); - $stmt = $parser->statements[0]; - $this->assertEquals( - 'CREATE VIEW `view_programlevelpartner` AS SELECT `p`.`country_id`' - . ' AS `country_id` FROM `program_level_partner` AS `p` ORDER BY `p`.`id` ASC ', - $stmt->build() - ); - - $parser = new Parser('CREATE VIEW `view_zg_bycountry` AS ' - . 'SELECT `d`.`zg_id` FROM `view_zg_value` AS `d` GROUP BY `d`.`ind_id`;'); - $stmt = $parser->statements[0]; - $this->assertEquals( - 'CREATE VIEW `view_zg_bycountry` AS ' - . 'SELECT `d`.`zg_id` FROM `view_zg_value` AS `d` GROUP BY `d`.`ind_id` ', - $stmt->build() - ); - - $parser = new Parser('CREATE view view_name AS WITH aa(col1)' - . ' AS ( SELECT 1 UNION ALL SELECT 2 ) SELECT col1 FROM cte AS `d` '); - $stmt = $parser->statements[0]; - $this->assertEquals( - 'CREATE view view_name AS WITH aa(col1)' - . ' AS (SELECT 1 UNION ALL SELECT 2) SELECT col1 FROM cte AS `d` ', - $stmt->build() - ); - } - - public function testBuilderViewComplex(): void - { - $parser = new Parser( - 'CREATE VIEW withclause AS' . "\n" - . "\n" - . 'WITH cte AS (' . "\n" - . 'SELECT p.name, p.shape' . "\n" - . 'FROM gis_all as p' . "\n" - . ')' . "\n" - . "\n" - . 'SELECT cte.*' . "\n" - . 'FROM cte' . "\n" - . 'CROSS JOIN gis_all;' - ); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'CREATE VIEW withclause AS ' - . 'WITH cte AS (' - . 'SELECT p.name, p.shape ' - . 'FROM gis_all AS `p`' - . ') ' - . 'SELECT cte.* ' - . 'FROM cte ' - . 'CROSS JOIN gis_all ', - $stmt->build() - ); - $parser = new Parser( - 'CREATE VIEW withclause2 AS' . "\n" - . "\n" - . 'WITH cte AS (' . "\n" - . "\t" . 'SELECT p.name, p.shape' . "\n" - . "\t" . 'FROM gis_all as p' . "\n" - . '), cte2 AS (' . "\n" - . "\t" . 'SELECT p.name as n2, p.shape as sh2' . "\n" - . "\t" . 'FROM gis_all as p' . "\n" - . ')' . "\n" - . "\n" - . 'SELECT cte.*,cte2.*' . "\n" - . 'FROM cte,cte2' . "\n" - . 'CROSS JOIN gis_all;' - ); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'CREATE VIEW withclause2 AS ' - . 'WITH cte AS (' - . 'SELECT p.name, p.shape' - . ' FROM gis_all AS `p`' - . '), cte2 AS (' - . 'SELECT p.name AS `n2`, p.shape AS `sh2`' - . ' FROM gis_all AS `p`' - . ')' - . ' SELECT cte.*, cte2.* ' - . 'FROM cte, cte2' - . ' CROSS JOIN gis_all ', - $stmt->build() - ); - } - - public function testBuilderCreateProcedure(): void - { - $parser = new Parser( - 'CREATE DEFINER=`root`@`%`' - . ' PROCEDURE `test2`(IN `_var` INT) DETERMINISTIC' - . ' MODIFIES SQL DATA SELECT _var' - ); - - /** @var CreateStatement $stmt */ - $stmt = $parser->statements[0]; - - $this->assertSame( - 'CREATE DEFINER=`root`@`%`' - . ' PROCEDURE `test2` (IN `_var` INT) DETERMINISTIC' - . ' MODIFIES SQL DATA SELECT _var', - $stmt->build() - ); - - $parser = new Parser( - 'CREATE DEFINER=`root`@`%`' - . ' PROCEDURE `test2`(IN `_var` INT) NOT DETERMINISTIC NO SQL' - . ' SQL SECURITY INVOKER NO SQL SQL SECURITY INVOKER SELECT _var' - ); - - /** @var CreateStatement $stmt */ - $stmt = $parser->statements[0]; - - $this->assertSame( - 'CREATE DEFINER=`root`@`%`' - . ' PROCEDURE `test2` (IN `_var` INT) NOT DETERMINISTIC NO SQL' - . ' SQL SECURITY INVOKER NO SQL SQL SECURITY INVOKER SELECT _var', - $stmt->build() - ); - - $this->assertFalse($stmt->entityOptions->isEmpty()); - $this->assertFalse($stmt->options->isEmpty()); - $this->assertSame( - 'DEFINER=`root`@`%` PROCEDURE', - $stmt->options->__toString() - ); - - $this->assertSame( - '`test2`', - $stmt->name->__toString() - ); - - $this->assertSame( - '(IN `_var` INT)', - ParameterDefinition::build($stmt->parameters) - ); - - $this->assertSame( - 'NOT DETERMINISTIC NO SQL SQL SECURITY INVOKER NO SQL SQL SECURITY INVOKER', - $stmt->entityOptions->__toString() - ); - - $this->assertSame( - 'SELECT _var', - TokensList::build($stmt->body) - ); - } - - public function testBuilderCreateFunction(): void - { - $parser = new Parser( - 'DELIMITER $$' . "\n" - . 'CREATE DEFINER=`root`@`localhost`' - . ' FUNCTION `inventory_in_stock`(`p_inventory_id` INT) RETURNS tinyint(1)' - . ' READS SQL DATA' - . ' COMMENT \'My best function written by a friend\'\'s friend\'' - . ' BEGIN' . "\n" - . ' DECLARE v_rentals INT;' . "\n" - . ' DECLARE v_out INT;' . "\n" - . "\n" - . ' ' . "\n" - . ' ' . "\n" - . "\n" - . ' SELECT COUNT(*) INTO v_rentals' . "\n" - . ' FROM rental' . "\n" - . ' WHERE inventory_id = p_inventory_id;' . "\n" - . "\n" - . ' IF v_rentals = 0 THEN' . "\n" - . ' RETURN TRUE;' . "\n" - . ' END IF;' . "\n" - . "\n" - . ' SELECT COUNT(rental_id) INTO v_out' . "\n" - . ' FROM inventory LEFT JOIN rental USING(inventory_id)' . "\n" - . ' WHERE inventory.inventory_id = p_inventory_id' . "\n" - . ' AND rental.return_date IS NULL;' . "\n" - . "\n" - . ' IF v_out > 0 THEN' . "\n" - . ' RETURN FALSE;' . "\n" - . ' ELSE' . "\n" - . ' RETURN TRUE;' . "\n" - . ' END IF;' . "\n" - . 'END' - ); - - /** @var CreateStatement $stmt */ - $stmt = $parser->statements[0]; - - $this->assertSame( - 'CREATE DEFINER=`root`@`localhost`' - . ' FUNCTION `inventory_in_stock` (`p_inventory_id` INT) RETURNS TINYINT(1)' - . ' READS SQL DATA' - . ' COMMENT \'My best function written by a friend\'\'s friend\'' - . ' BEGIN' . "\n" - . ' DECLARE v_rentals INT;' . "\n" - . ' DECLARE v_out INT;' . "\n" - . "\n" - . ' ' . "\n" - . ' ' . "\n" - . "\n" - . ' SELECT COUNT(*) INTO v_rentals' . "\n" - . ' FROM rental' . "\n" - . ' WHERE inventory_id = p_inventory_id;' . "\n" - . "\n" - . ' IF v_rentals = 0 THEN' . "\n" - . ' RETURN TRUE;' . "\n" - . ' END IF;' . "\n" - . "\n" - . ' SELECT COUNT(rental_id) INTO v_out' . "\n" - . ' FROM inventory LEFT JOIN rental USING(inventory_id)' . "\n" - . ' WHERE inventory.inventory_id = p_inventory_id' . "\n" - . ' AND rental.return_date IS NULL;' . "\n" - . "\n" - . ' IF v_out > 0 THEN' . "\n" - . ' RETURN FALSE;' . "\n" - . ' ELSE' . "\n" - . ' RETURN TRUE;' . "\n" - . ' END IF;' . "\n" - . 'END', - $stmt->build() - ); - - $this->assertFalse($stmt->entityOptions->isEmpty()); - $this->assertFalse($stmt->options->isEmpty()); - - $this->assertSame( - 'DEFINER=`root`@`localhost` FUNCTION', - $stmt->options->__toString() - ); - - $this->assertSame( - '`inventory_in_stock`', - $stmt->name->__toString() - ); - - $this->assertSame( - '(`p_inventory_id` INT)', - ParameterDefinition::build($stmt->parameters) - ); - - $this->assertSame( - 'READS SQL DATA COMMENT \'My best function written by a friend\'\'s friend\'', - $stmt->entityOptions->__toString() - ); - - $this->assertSame( - 'BEGIN' . "\n" - . ' DECLARE v_rentals INT;' . "\n" - . ' DECLARE v_out INT;' . "\n" - . "\n" - . ' ' . "\n" - . ' ' . "\n" - . "\n" - . ' SELECT COUNT(*) INTO v_rentals' . "\n" - . ' FROM rental' . "\n" - . ' WHERE inventory_id = p_inventory_id;' . "\n" - . "\n" - . ' IF v_rentals = 0 THEN' . "\n" - . ' RETURN TRUE;' . "\n" - . ' END IF;' . "\n" - . "\n" - . ' SELECT COUNT(rental_id) INTO v_out' . "\n" - . ' FROM inventory LEFT JOIN rental USING(inventory_id)' . "\n" - . ' WHERE inventory.inventory_id = p_inventory_id' . "\n" - . ' AND rental.return_date IS NULL;' . "\n" - . "\n" - . ' IF v_out > 0 THEN' . "\n" - . ' RETURN FALSE;' . "\n" - . ' ELSE' . "\n" - . ' RETURN TRUE;' . "\n" - . ' END IF;' . "\n" - . 'END', - TokensList::build($stmt->body) - ); - } - - public function testBuilderTrigger(): void - { - $stmt = new CreateStatement(); - - $stmt->options = new OptionsArray(['TRIGGER']); - $stmt->name = new Expression('ins_sum'); - $stmt->entityOptions = new OptionsArray(['BEFORE', 'INSERT']); - $stmt->table = new Expression('account'); - $stmt->body = 'SET @sum = @sum + NEW.amount'; - - $this->assertEquals( - 'CREATE TRIGGER ins_sum BEFORE INSERT ON account ' . - 'FOR EACH ROW SET @sum = @sum + NEW.amount', - $stmt->build() - ); - } - - public function testBuilderRoutine(): void - { - $parser = new Parser( - 'DELIMITER $$' . "\n" . - 'CREATE FUNCTION test (IN `i` INT) RETURNS VARCHAR ' . - 'BEGIN ' . - 'DECLARE name VARCHAR DEFAULT ""; ' . - 'SELECT name INTO name FROM employees WHERE id = i; ' . - 'RETURN name; ' . - 'END' - ); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'CREATE FUNCTION test (IN `i` INT) RETURNS VARCHAR ' . - ' BEGIN ' . - 'DECLARE name VARCHAR DEFAULT ""; ' . - 'SELECT name INTO name FROM employees WHERE id = i; ' . - 'RETURN name; ' . - 'END', - $stmt->build() - ); - } - - public function testBuildSelect(): void - { - $parser = new Parser('CREATE TABLE new_tbl SELECT * FROM orig_tbl'); - $this->assertEquals( - 'CREATE TABLE new_tbl SELECT * FROM orig_tbl', - $parser->statements[0]->build() - ); - } - - public function testBuildCreateTableSortedIndex(): void - { - $parser = new Parser( - <<<'SQL' -CREATE TABLE `entries` ( - `id` int(11) NOT NULL AUTO_INCREMENT, - `fk_ug_id` int(11) DEFAULT NULL, - `amount` decimal(10,2) DEFAULT NULL, - PRIMARY KEY (`id`), - KEY `entries__ug` (`fk_ug_id` DESC), - KEY `entries__ug2` (`fk_ug_id` ASC), - KEY `33` (`id` ASC, `fk_ug_id` DESC) -) /*!50100 TABLESPACE `innodb_system` */ ENGINE=InnoDB AUTO_INCREMENT=4465 DEFAULT CHARSET=utf8 -SQL - ); - - /** @var CreateStatement $stmt */ - $stmt = $parser->statements[0]; - - $tableBody = <<<'SQL' -( - `id` int(11) NOT NULL AUTO_INCREMENT, - `fk_ug_id` int(11) DEFAULT NULL, - `amount` decimal(10,2) DEFAULT NULL, - PRIMARY KEY (`id`), - KEY `entries__ug` (`fk_ug_id` DESC), - KEY `entries__ug2` (`fk_ug_id` ASC), - KEY `33` (`id` ASC,`fk_ug_id` DESC) -) -SQL; - - $this->assertEquals( - $tableBody, - CreateDefinition::build($stmt->fields) - ); - - $this->assertEquals( - 'CREATE TABLE `entries` ' - . $tableBody - . ' ENGINE=InnoDB AUTO_INCREMENT=4465 DEFAULT CHARSET=utf8 TABLESPACE `innodb_system`', - $stmt->build() - ); - } - - public function testBuildCreateTableComplexIndexes(): void - { - // phpcs:disable Generic.Files.LineLength.TooLong - $parser = new Parser( - <<<'SQL' -CREATE TABLE `page_rebuild_control` ( - `proc_row_number` int DEFAULT NULL, - `place_id` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL, - `place_name` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL, - `place_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL, - `waterway_id` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL, - `cache_updated` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, - `place_active` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL, - `alias_type` int NOT NULL DEFAULT '0', - `status` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL, - `time_taken` float DEFAULT NULL, - PRIMARY KEY (`place_id`,`place_type`) USING BTREE, - KEY `place_type_idx` (`place_type`(10)), - KEY `cached_time_idx` (`cache_updated`), - KEY `active_idx` (`place_active`), - KEY `status_idx` (`status`), - KEY `waterway_idx` (`waterway_id`), - KEY `time_taken_idx` (`time_taken`), - KEY `updated_tz_ind3` ( - -- my expression - (convert_tz(`cache_updated`,_utf8mb4'GMT',_utf8mb4'GB')) - ) COMMENT 'foo\'s', - KEY `updated_tz_ind_two_indexes_commented` ( - -- first expression - ( - convert_tz(`cache_updated`,_utf8mb4'GMT',_utf8mb4'GB') - ) - , - -- second expression - ( - convert_tz(`cache_updated`,_utf8mb4'GMT',_utf8mb4'FR') - ) - ) - -- and now some options - COMMENT 'haha, this is a complex and indented case', - KEY `alias_type_idx` (`alias_type`), - KEY `updated_tz_ind2` ((convert_tz(`cache_updated`,_utf8mb4'GMT',_utf8mb4'GB'))) COMMENT 'foo\'s', - KEY `updated_tz_ind_two_indexes` ((convert_tz(`cache_updated`,_utf8mb4'GMT',_utf8mb4'GB')), (convert_tz(`cache_updated`,_utf8mb4'GMT',_utf8mb4'FR'))) COMMENT 'bar\'s', - KEY `updated_tz_ind` ((convert_tz(`cache_updated`,_utf8mb4'GMT',_utf8mb4'GB'))) - ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; -SQL - ); - // phpcs:enable - - /** @var CreateStatement $stmt */ - $stmt = $parser->statements[0]; - - // phpcs:disable Generic.Files.LineLength.TooLong - $tableBody = <<<'SQL' -( - `proc_row_number` int DEFAULT NULL, - `place_id` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL, - `place_name` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL, - `place_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL, - `waterway_id` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL, - `cache_updated` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, - `place_active` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL, - `alias_type` int NOT NULL DEFAULT '0', - `status` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL, - `time_taken` float DEFAULT NULL, - PRIMARY KEY (`place_id`,`place_type`) USING BTREE, - KEY `place_type_idx` (`place_type`(10)), - KEY `cached_time_idx` (`cache_updated`), - KEY `active_idx` (`place_active`), - KEY `status_idx` (`status`), - KEY `waterway_idx` (`waterway_id`), - KEY `time_taken_idx` (`time_taken`), - KEY `updated_tz_ind3` ((convert_tz(`cache_updated`,_utf8mb4'GMT',_utf8mb4'GB'))) COMMENT 'foo\'s', - KEY `updated_tz_ind_two_indexes_commented` (( - convert_tz(`cache_updated`,_utf8mb4'GMT',_utf8mb4'GB') - ), ( - convert_tz(`cache_updated`,_utf8mb4'GMT',_utf8mb4'FR') - )) COMMENT 'haha, this is a complex and indented case', - KEY `alias_type_idx` (`alias_type`), - KEY `updated_tz_ind2` ((convert_tz(`cache_updated`,_utf8mb4'GMT',_utf8mb4'GB'))) COMMENT 'foo\'s', - KEY `updated_tz_ind_two_indexes` ((convert_tz(`cache_updated`,_utf8mb4'GMT',_utf8mb4'GB')), (convert_tz(`cache_updated`,_utf8mb4'GMT',_utf8mb4'FR'))) COMMENT 'bar\'s', - KEY `updated_tz_ind` ((convert_tz(`cache_updated`,_utf8mb4'GMT',_utf8mb4'GB'))) -) -SQL; - // phpcs:enable - - $this->assertEquals( - $tableBody, - CreateDefinition::build($stmt->fields) - ); - - $this->assertEquals( - 'CREATE TABLE `page_rebuild_control` ' - . $tableBody - . ' ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci', - $stmt->build() - ); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/DeleteStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/DeleteStatementTest.php deleted file mode 100644 index 60f1e728..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/DeleteStatementTest.php +++ /dev/null @@ -1,99 +0,0 @@ -statements[0]; - - $this->assertEquals($query, $stmt->build()); - - /* Assertion 2 */ - $query = 'DELETE IGNORE FROM t1 WHERE 1=1'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals($query, $stmt->build()); - - /* Assertion 3 */ - $query = 'DELETE IGNORE FROM t1 WHERE 1=1 ORDER BY id ASC'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals($query, $stmt->build()); - - /* Assertion 4 */ - $query = 'DELETE IGNORE FROM t1 WHERE 1=1 ORDER BY id ASC LIMIT 0, 25'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals($query, $stmt->build()); - - /* Assertion 5 */ - $query = 'DELETE IGNORE FROM t1'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals($query, $stmt->build()); - - /* Assertion 6 */ - $query = 'DELETE LOW_PRIORITY FROM `test`.users ' - . 'WHERE `id`<3 AND (username="Dan" OR username="Paul") ORDER BY id ASC'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals($query, $stmt->build()); - } - - public function testBuilderMultiTable(): void - { - /* Assertion 1 */ - $query = 'DELETE QUICK table1, table2.* FROM table1 AS `t1`, table2 AS `t2`'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals($query, $stmt->build()); - - /* Assertion 2 */ - $query = 'DELETE QUICK table1, table2.* FROM table1 AS `t1`, table2 AS `t2` WHERE 1=1'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals($query, $stmt->build()); - - /* Assertion 3 */ - $query = 'DELETE QUICK FROM table1, table2.* USING table1 AS `t1`, table2 AS `t2` WHERE 1=1'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals($query, $stmt->build()); - - /* Assertion 4 */ - $query = 'DELETE LOW_PRIORITY t1, t2 FROM t1 INNER JOIN t2 ' - . 'INNER JOIN t3 WHERE t1.id=t2.id AND t2.id=t3.id'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals($query, $stmt->build()); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/ExplainStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/ExplainStatementTest.php deleted file mode 100644 index 7fc0422d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/ExplainStatementTest.php +++ /dev/null @@ -1,104 +0,0 @@ -statements[0]; - $this->assertEquals( - 'EXPLAIN SELECT * FROM test', - $stmt->build() - ); - - /* Assertion 2 */ - $query = 'EXPLAIN ANALYZE SELECT * FROM tablename;'; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - $this->assertEquals( - 'EXPLAIN ANALYZE SELECT * FROM tablename', - $stmt->build() - ); - - /* Assertion 3 */ - $query = 'DESC ANALYZE SELECT * FROM tablename;'; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - $this->assertEquals( - 'DESC ANALYZE SELECT * FROM tablename', - $stmt->build() - ); - - /* Assertion 4 */ - $query = 'ANALYZE SELECT * FROM tablename;'; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - $this->assertEquals( - 'ANALYZE SELECT * FROM tablename', - $stmt->build() - ); - - /* Assertion 5 */ - $query = 'DESCRIBE tablename;'; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - $this->assertEquals( - 'DESCRIBE `tablename`', - $stmt->build() - ); - - /* Assertion 6 */ - $query = 'DESC FOR CONNECTION 458'; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - $this->assertEquals( - 'DESC FOR CONNECTION 458', - $stmt->build() - ); - - /* Assertion 7 */ - $query = 'EXPLAIN FORMAT=TREE SELECT * FROM db;'; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - $this->assertEquals( - 'EXPLAIN FORMAT=TREE SELECT * FROM db', - $stmt->build() - ); - - /* Assertion 8 */ - $query = 'DESCRIBE tablename colname;'; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - $this->assertEquals( - 'DESCRIBE `tablename` `colname`', - $stmt->build() - ); - - /* Assertion 9 */ - $query = 'DESCRIBE tablename \'col%me\';'; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - $this->assertEquals( - 'DESCRIBE `tablename` `col%me`', - $stmt->build() - ); - - /* Assertion 9 */ - $query = 'DESCRIBE db.tablename \'col%me\';'; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - $this->assertEquals( - 'DESCRIBE `db`.`tablename` `col%me`', - $stmt->build() - ); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/InsertStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/InsertStatementTest.php deleted file mode 100644 index 471eea09..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/InsertStatementTest.php +++ /dev/null @@ -1,67 +0,0 @@ -statements[0]; - $this->assertEquals( - 'INSERT INTO tbl(`col1`, `col2`, `col3`) VALUES (1, "str", 3.14)', - $stmt->build() - ); - - /* Assertion 2 */ - /* Reserved keywords (with backquotes as field name) */ - $parser = new Parser('INSERT INTO tbl(`order`) VALUES (1)'); - $stmt = $parser->statements[0]; - $this->assertEquals( - 'INSERT INTO tbl(`order`) VALUES (1)', - $stmt->build() - ); - - /* Assertion 3 */ - /* INSERT ... SET ... */ - $parser = new Parser('INSERT INTO tbl SET FOO = 1'); - $stmt = $parser->statements[0]; - $this->assertEquals( - 'INSERT INTO tbl SET FOO = 1', - $stmt->build() - ); - - /* Assertion 4 */ - /* INSERT ... SELECT ... */ - $parser = new Parser('INSERT INTO tbl SELECT * FROM bar'); - $stmt = $parser->statements[0]; - $this->assertEquals( - 'INSERT INTO tbl SELECT * FROM bar', - $stmt->build() - ); - - /* Assertion 5 */ - /* INSERT ... ON DUPLICATE KEY UPDATE ... */ - $parser = new Parser('INSERT INTO tbl SELECT * FROM bar ON DUPLICATE KEY UPDATE baz = 1'); - $stmt = $parser->statements[0]; - $this->assertEquals( - 'INSERT INTO tbl SELECT * FROM bar ON DUPLICATE KEY UPDATE baz = 1', - $stmt->build() - ); - - /* Assertion 6 */ - /* INSERT [OPTIONS] INTO ... */ - $parser = new Parser('INSERT DELAYED IGNORE INTO tbl SELECT * FROM bar'); - $stmt = $parser->statements[0]; - $this->assertEquals( - 'INSERT DELAYED IGNORE INTO tbl SELECT * FROM bar', - $stmt->build() - ); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/LoadStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/LoadStatementTest.php deleted file mode 100644 index bc3d1c92..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/LoadStatementTest.php +++ /dev/null @@ -1,108 +0,0 @@ -statements[0]; - - $this->assertEquals( - 'LOAD DATA CONCURRENT INFILE ' - . '\'employee1.txt\' INTO TABLE employee', - $stmt->build() - ); - - /* Assertion 2 */ - $query = 'LOAD DATA INFILE \'/tmp/test.txt\' ' - . 'INTO TABLE test FIELDS TERMINATED BY ' - . '\',\' IGNORE 1 LINES'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'LOAD DATA INFILE \'/tmp/test.txt\' ' - . 'INTO TABLE test FIELDS TERMINATED BY ' - . '\',\' IGNORE 1 LINES', - $stmt->build() - ); - - /* Assertion 3 */ - $query = 'LOAD DATA INFILE \'employee3.txt\' ' - . 'INTO TABLE employee FIELDS TERMINATED BY ' - . '\',\' ENCLOSED BY \'"\''; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'LOAD DATA INFILE \'employee3.txt\' ' - . 'INTO TABLE employee FIELDS TERMINATED BY ' - . '\',\' ENCLOSED BY \'"\'', - $stmt->build() - ); - - /* Assertion 4 */ - $query = 'LOAD DATA INFILE \'/tmp/test.txt\' IGNORE ' - . 'INTO TABLE test ' - . 'CHARACTER SET \'utf8\' ' - . 'COLUMNS TERMINATED BY \',\' ' - . 'LINES TERMINATED BY \';\' ' - . 'IGNORE 1 LINES (col1, col2) SET @a = 1'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'LOAD DATA INFILE \'/tmp/test.txt\' IGNORE ' - . 'INTO TABLE test ' - . 'CHARACTER SET \'utf8\' ' - . 'COLUMNS TERMINATED BY \',\' ' - . 'LINES TERMINATED BY \';\' ' - . 'IGNORE 1 LINES (col1, col2) SET @a = 1', - $stmt->build() - ); - - /* Assertion 5 */ - $query = 'LOAD DATA INFILE \'/tmp/test.txt\' REPLACE ' - . 'INTO TABLE test COLUMNS TERMINATED BY \',\' IGNORE 1 ROWS'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'LOAD DATA INFILE \'/tmp/test.txt\' REPLACE ' - . 'INTO TABLE test COLUMNS TERMINATED BY \',\' IGNORE 1 ROWS', - $stmt->build() - ); - - /* Assertion 6 */ - $query = 'LOAD DATA INFILE \'/tmp/test.txt\' IGNORE ' - . 'INTO TABLE test PARTITION (p0, p1, p2) CHARACTER SET \'utf8\' ' - . 'COLUMNS TERMINATED BY \',\' LINES TERMINATED BY \';\' ' - . 'IGNORE 1 LINES (col1, col2) SET @a = 1'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'LOAD DATA INFILE \'/tmp/test.txt\' IGNORE ' - . 'INTO TABLE test PARTITION (p0, p1, p2) CHARACTER SET \'utf8\' ' - . 'COLUMNS TERMINATED BY \',\' LINES TERMINATED BY \';\' ' - . 'IGNORE 1 LINES (col1, col2) SET @a = 1', - $stmt->build() - ); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/LockStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/LockStatementTest.php deleted file mode 100644 index e20caad7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/LockStatementTest.php +++ /dev/null @@ -1,70 +0,0 @@ -statements[0]; - - $this->assertEquals($query, $stmt->build()); - - /* Assertion 2 */ - $query = 'LOCK TABLES table1 AS `t1` READ'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals($query, $stmt->build()); - - /* Assertion 3 */ - $query = 'LOCK TABLES table1 AS `t1` LOW_PRIORITY WRITE'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals($query, $stmt->build()); - - /* Assertion 4 */ - $query = 'LOCK TABLES table1 AS `t1` WRITE'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals($query, $stmt->build()); - - /* Assertion 5 */ - $query = 'LOCK TABLES table1 AS `t1` READ LOCAL, table2 AS `t2` WRITE'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals($query, $stmt->build()); - - /* Assertion 6 */ - $query = 'LOCK TABLES table1 READ LOCAL, table2 AS `t2` WRITE'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals($query, $stmt->build()); - - /* Assertion 7 */ - $query = 'UNLOCK TABLES'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals($query, $stmt->build()); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/PurgeStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/PurgeStatementTest.php deleted file mode 100644 index 68b582ce..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/PurgeStatementTest.php +++ /dev/null @@ -1,24 +0,0 @@ -statements[0]; - $this->assertEquals($query, $stmt->build()); - - $query = 'PURGE BINARY LOGS BEFORE \'2008-04-02 22:46:26\''; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - $this->assertEquals($query, $stmt->build()); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/RenameStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/RenameStatementTest.php deleted file mode 100644 index 5d495cb7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/RenameStatementTest.php +++ /dev/null @@ -1,38 +0,0 @@ -statements[0]; - $this->assertEquals( - $query, - $stmt->build() - ); - - $query = 'RENAME TABLE current_db.tbl_name TO other_db.tbl_name'; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - $this->assertEquals( - $query, - $stmt->build() - ); - - $query = 'RENAME TABLE old_table1 TO new_table1, old_table2 TO new_table2, old_table3 TO new_table3'; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - $this->assertEquals( - $query, - $stmt->build() - ); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/ReplaceStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/ReplaceStatementTest.php deleted file mode 100644 index e5f24751..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/ReplaceStatementTest.php +++ /dev/null @@ -1,51 +0,0 @@ -statements[0]; - $this->assertEquals( - 'REPLACE INTO tbl(`col1`, `col2`, `col3`) VALUES (1, "str", 3.14)', - $stmt->build() - ); - } - - public function testBuilderSet(): void - { - $parser = new Parser('REPLACE INTO tbl(col1, col2, col3) SET col1=1, col2="str", col3=3.14'); - $stmt = $parser->statements[0]; - $this->assertEquals( - 'REPLACE INTO tbl(`col1`, `col2`, `col3`) SET col1 = 1, col2 = "str", col3 = 3.14', - $stmt->build() - ); - } - - public function testBuilderSelect(): void - { - $parser = new Parser('REPLACE INTO tbl(col1, col2, col3) SELECT col1, col2, col3 FROM tbl2'); - $stmt = $parser->statements[0]; - $this->assertEquals( - 'REPLACE INTO tbl(`col1`, `col2`, `col3`) SELECT col1, col2, col3 FROM tbl2', - $stmt->build() - ); - } - - public function testBuilderSelectDelayed(): void - { - $parser = new Parser('REPLACE DELAYED INTO tbl(col1, col2, col3) SELECT col1, col2, col3 FROM tbl2'); - $stmt = $parser->statements[0]; - $this->assertEquals( - 'REPLACE DELAYED INTO tbl(`col1`, `col2`, `col3`) SELECT col1, col2, col3 FROM tbl2', - $stmt->build() - ); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/SelectStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/SelectStatementTest.php deleted file mode 100644 index cd9168e6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/SelectStatementTest.php +++ /dev/null @@ -1,356 +0,0 @@ -statements[0]; - - $this->assertEquals( - 'SELECT * FROM t1 LEFT JOIN (t2, t3, t4) ' - . 'ON (t2.a=t1.a AND t3.b=t1.b AND t4.c=t1.c)', - $stmt->build() - ); - - $parser = new Parser('SELECT NULL IS NULL'); - $stmt = $parser->statements[0]; - - $this->assertEquals('SELECT NULL IS NULL', $stmt->build()); - - $parser = new Parser('SELECT NOT 1'); - $stmt = $parser->statements[0]; - - $this->assertEquals('SELECT NOT 1', $stmt->build()); - - $parser = new Parser('SELECT 1 BETWEEN 0 AND 2'); - $stmt = $parser->statements[0]; - - $this->assertEquals('SELECT 1 BETWEEN 0 AND 2', $stmt->build()); - - $parser = new Parser("SELECT 'a' NOT REGEXP '^[a-d]'"); - $stmt = $parser->statements[0]; - - $this->assertEquals("SELECT 'a' NOT REGEXP '^[a-d]'", $stmt->build()); - - $parser = new Parser("SELECT 'a' RLIKE 'a'"); - $stmt = $parser->statements[0]; - - $this->assertEquals("SELECT 'a' RLIKE 'a'", $stmt->build()); - } - - public function testBuilderUnion(): void - { - $parser = new Parser('SELECT 1 UNION SELECT 2'); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'SELECT 1 UNION SELECT 2', - $stmt->build() - ); - } - - public function testBuilderWithIsNull(): void - { - $parser = new Parser('SELECT `test3`.`t1` is not null AS `is_not_null` FROM `test3` ;'); - $stmt = $parser->statements[0]; - - $this->assertEquals('SELECT `test3`.`t1` is not null AS `is_not_null` FROM `test3`', $stmt->build()); - - $parser = new Parser('SELECT test3.t1 is null AS `col1` FROM test3'); - $stmt = $parser->statements[0]; - - $this->assertEquals('SELECT test3.t1 is null AS `col1` FROM test3', $stmt->build()); - } - - public function testBuilderOrderByNull(): void - { - $query = 'SELECT * FROM some_table ORDER BY some_col IS NULL DESC;'; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals('SELECT * FROM some_table ORDER BY some_col IS NULL DESC', $stmt->build()); - - $query = 'SELECT * FROM some_table ORDER BY some_col IS NOT NULL;'; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals('SELECT * FROM some_table ORDER BY some_col IS NOT NULL ASC', $stmt->build()); - } - - public function testBuilderAlias(): void - { - $parser = new Parser( - 'SELECT sgu.id, sgu.email_address FROM `sf_guard_user` sgu ' - . 'RIGHT JOIN `student_course_booking` scb ON sgu.id = scb.user_id ' - . 'WHERE `has_found_course` = \'1\' GROUP BY sgu.id ' - . 'ORDER BY scb.id DESC LIMIT 0,300' - ); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'SELECT sgu.id, sgu.email_address FROM `sf_guard_user` AS `sgu` ' - . 'RIGHT JOIN `student_course_booking` AS `scb` ON sgu.id = scb.user_id ' - . 'WHERE `has_found_course` = \'1\' GROUP BY sgu.id ' - . 'ORDER BY scb.id DESC LIMIT 0, 300', - $stmt->build() - ); - } - - public function testBuilderAliasOrder(): void - { - $parser = new Parser( - 'SELECT sgu.id, sgu.email_address FROM `sf_guard_user` sgu ' - . 'RIGHT JOIN `student_course_booking` scb ON sgu.id = scb.user_id ' - . 'WHERE `has_found_course` = \'1\' GROUP BY sgu.id ' - . 'ORDER BY scb.id LIMIT 0,300' - ); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'SELECT sgu.id, sgu.email_address FROM `sf_guard_user` AS `sgu` ' - . 'RIGHT JOIN `student_course_booking` AS `scb` ON sgu.id = scb.user_id ' - . 'WHERE `has_found_course` = \'1\' GROUP BY sgu.id ' - . 'ORDER BY scb.id ASC LIMIT 0, 300', - $stmt->build() - ); - } - - public function testBuilderAliasOrderMultiple(): void - { - $parser = new Parser( - 'SELECT sgu.id, sgu.email_address FROM `sf_guard_user` sgu ' - . 'RIGHT JOIN `student_course_booking` scb ON sgu.id = scb.user_id ' - . 'WHERE `has_found_course` = \'1\' GROUP BY sgu.id ' - . 'ORDER BY scb.id DESC, scb.order LIMIT 0,300' - ); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'SELECT sgu.id, sgu.email_address FROM `sf_guard_user` AS `sgu` ' - . 'RIGHT JOIN `student_course_booking` AS `scb` ON sgu.id = scb.user_id ' - . 'WHERE `has_found_course` = \'1\' GROUP BY sgu.id ' - . 'ORDER BY scb.id DESC, scb.order ASC LIMIT 0, 300', - $stmt->build() - ); - } - - public function testBuilderAliasOrderMultipleFunctions(): void - { - $parser = new Parser( - 'SELECT sgu.id, sgu.email_address FROM `sf_guard_user` sgu ' - . 'RIGHT JOIN `student_course_booking` scb ON sgu.id = scb.user_id ' - . 'WHERE `has_found_course` = \'1\' GROUP BY sgu.id ' - . 'ORDER BY scb.id DESC, YEAR(scb.dob) LIMIT 0,300' - ); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'SELECT sgu.id, sgu.email_address FROM `sf_guard_user` AS `sgu` ' - . 'RIGHT JOIN `student_course_booking` AS `scb` ON sgu.id = scb.user_id ' - . 'WHERE `has_found_course` = \'1\' GROUP BY sgu.id ' - . 'ORDER BY scb.id DESC, YEAR(scb.dob) ASC LIMIT 0, 300', - $stmt->build() - ); - } - - public function testBuilderAliasGroupByMultipleFunctions(): void - { - $parser = new Parser( - 'SELECT sgu.id, sgu.email_address FROM `sf_guard_user` sgu ' - . 'RIGHT JOIN `student_course_booking` scb ON sgu.id = scb.user_id ' - . 'WHERE `has_found_course` = \'1\' ' - . 'GROUP BY scb.id, YEAR(scb.dob) LIMIT 0,300' - ); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'SELECT sgu.id, sgu.email_address FROM `sf_guard_user` AS `sgu` ' - . 'RIGHT JOIN `student_course_booking` AS `scb` ON sgu.id = scb.user_id ' - . 'WHERE `has_found_course` = \'1\' ' - . 'GROUP BY scb.id, YEAR(scb.dob) LIMIT 0, 300', - $stmt->build() - ); - } - - public function testBuilderAliasGroupByMultipleFunctionsOrderRemoved(): void - { - $parser = new Parser( - 'SELECT sgu.id, sgu.email_address FROM `sf_guard_user` sgu ' - . 'RIGHT JOIN `student_course_booking` scb ON sgu.id = scb.user_id ' - . 'WHERE `has_found_course` = \'1\' ' - . 'GROUP BY scb.id ASC, YEAR(scb.dob) DESC LIMIT 0,300' - ); - $stmt = $parser->statements[0]; - - // The order is not kept, is this an expected behavior ? - // Ref: 4af06d24b041e499fb0e75ab3a98caf9a91700ef - // Issue: #154 - $this->assertEquals( - 'SELECT sgu.id, sgu.email_address FROM `sf_guard_user` AS `sgu` ' - . 'RIGHT JOIN `student_course_booking` AS `scb` ON sgu.id = scb.user_id ' - . 'WHERE `has_found_course` = \'1\' ' - . 'GROUP BY scb.id, YEAR(scb.dob) LIMIT 0, 300', - $stmt->build() - ); - } - - public function testBuilderAliasOrderCase(): void - { - $parser = new Parser( - 'SELECT * FROM `world_borders` ORDER BY CASE ' - . 'WHEN REGION = 2 THEN 99 ' - . 'WHEN REGION > 3 THEN REGION+1 ' - . 'ELSE 100 END LIMIT 0,300' - ); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'SELECT * FROM `world_borders` ORDER BY CASE ' - . 'WHEN REGION = 2 THEN 99 ' - . 'WHEN REGION > 3 THEN REGION+1 ' - . 'ELSE 100 END ASC LIMIT 0, 300', - $stmt->build() - ); - } - - public function testBuilderAliasGroupByCase(): void - { - $parser = new Parser( - 'SELECT * FROM `world_borders` GROUP BY CASE ' - . 'WHEN REGION = 2 THEN 99 ' - . 'WHEN REGION > 3 THEN REGION+1 ' - . 'ELSE 100 END LIMIT 0,300' - ); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'SELECT * FROM `world_borders` GROUP BY CASE ' - . 'WHEN REGION = 2 THEN 99 ' - . 'WHEN REGION > 3 THEN REGION+1 ' - . 'ELSE 100 END LIMIT 0, 300', - $stmt->build() - ); - } - - public function testBuilderEndOptions(): void - { - /* Assertion 1 */ - $query = 'SELECT pid, name2 FROM tablename WHERE pid = 20 FOR UPDATE'; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - $query, - $stmt->build() - ); - - /* Assertion 2 */ - $query = 'SELECT pid, name2 FROM tablename WHERE pid = 20 LOCK IN SHARE MODE'; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - $query, - $stmt->build() - ); - } - - public function testBuilderIntoOptions(): void - { - /* Assertion 1 */ - $query = 'SELECT a, b, a+b INTO OUTFILE "/tmp/result.txt"' - . ' COLUMNS TERMINATED BY \',\' OPTIONALLY ENCLOSED BY \'"\'' - . ' LINES TERMINATED BY \'\n\'' - . ' FROM test_table'; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - $query, - $stmt->build() - ); - } - - public function testBuilderGroupBy(): void - { - $query = 'SELECT COUNT(CustomerID), Country FROM Customers GROUP BY Country'; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - $query, - $stmt->build() - ); - } - - public function testBuilderGroupByWithRollup(): void - { - $query = 'SELECT year FROM movies GROUP BY year WITH ROLLUP'; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - $query, - $stmt->build() - ); - } - - public function testBuilderGroupByMultipleColumnsWithRollup(): void - { - $query = 'SELECT title, year FROM movies GROUP BY title, year WITH ROLLUP'; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - $query, - $stmt->build() - ); - } - - public function testBuilderGroupByWithRollupWithOtherClauses(): void - { - $query = 'SELECT year FROM movies GROUP BY year WITH ROLLUP ORDER BY year ASC LIMIT 0, 5'; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - $query, - $stmt->build() - ); - } - - public function testBuilderIndexHint(): void - { - $query = 'SELECT * FROM address FORCE INDEX (idx_fk_city_id) IGNORE KEY FOR GROUP BY (a, b,c) WHERE city_id<0'; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - $query, - $stmt->build() - ); - } - - public function testBuilderSurroundedByParanthesisWithLimit(): void - { - $query = '(SELECT first_name FROM `actor` LIMIT 1, 2)'; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'SELECT first_name FROM `actor` LIMIT 1, 2', - $stmt->build() - ); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/SetStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/SetStatementTest.php deleted file mode 100644 index 5f97c8bc..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/SetStatementTest.php +++ /dev/null @@ -1,179 +0,0 @@ -statements[0]; - - $this->assertEquals( - $query, - $stmt->build() - ); - - /* Assertion 2 */ - $query = 'SET CHARSET \'utf8\''; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - $query, - $stmt->build() - ); - - /* Assertion 3 */ - $query = 'SET NAMES \'utf8\''; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - $query, - $stmt->build() - ); - - /* Assertion 4 */ - $query = 'SET NAMES \'utf8\' COLLATE \'utf8_general_ci\''; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'SET NAMES \'utf8\' COLLATE \'utf8_general_ci\'', - $stmt->build() - ); - - /* Assertion 5 */ - $query = 'SET NAMES \'utf8\' DEFAULT'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'SET NAMES \'utf8\' DEFAULT', - $stmt->build() - ); - - /* Assertion 6 */ - $query = 'SET sql_mode = \'TRADITIONAL\''; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'SET sql_mode = \'TRADITIONAL\'', - $stmt->build() - ); - - /* Assertion 7 */ - $query = 'SET SESSION sql_mode = \'TRADITIONAL\''; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'SET SESSION sql_mode = \'TRADITIONAL\'', - $stmt->build() - ); - - /* Assertion 8 */ - $query = 'SET GLOBAL sql_mode = \'TRADITIONAL\''; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'SET GLOBAL sql_mode = \'TRADITIONAL\'', - $stmt->build() - ); - - /* Assertion 9 */ - $query = 'SET @@SESSION sql_mode = \'TRADITIONAL\''; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'SET SESSION sql_mode = \'TRADITIONAL\'', - $stmt->build() - ); - - /* Assertion 10 */ - $query = 'SET @@GLOBAL sql_mode = \'TRADITIONAL\''; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'SET GLOBAL sql_mode = \'TRADITIONAL\'', - $stmt->build() - ); - - /* Assertion 11 */ - $query = 'SET @@sql_mode = \'TRADITIONAL\''; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'SET @@sql_mode = \'TRADITIONAL\'', - $stmt->build() - ); - - /* Assertion 12 */ - $query = 'SET PERSIST sql_mode = \'TRADITIONAL\''; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'SET PERSIST sql_mode = \'TRADITIONAL\'', - $stmt->build() - ); - - /* Assertion 13 */ - $query = 'SET PERSIST_ONLY sql_mode = \'TRADITIONAL\''; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'SET PERSIST_ONLY sql_mode = \'TRADITIONAL\'', - $stmt->build() - ); - - /* Assertion 14 */ - $query = 'SET @@PERSIST sql_mode = \'TRADITIONAL\''; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'SET PERSIST sql_mode = \'TRADITIONAL\'', - $stmt->build() - ); - - /* Assertion 15 */ - $query = 'SET @@PERSIST_ONLY sql_mode = \'TRADITIONAL\''; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals( - 'SET PERSIST_ONLY sql_mode = \'TRADITIONAL\'', - $stmt->build() - ); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/StatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/StatementTest.php deleted file mode 100644 index ea483ccd..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/StatementTest.php +++ /dev/null @@ -1,42 +0,0 @@ -options = new OptionsArray(['DISTINCT']); - - $stmt->expr[] = new Expression('sakila', 'film', 'film_id', 'fid'); - $stmt->expr[] = new Expression('COUNT(film_id)'); - - $stmt->from[] = new Expression('', 'film', ''); - $stmt->from[] = new Expression('', 'actor', ''); - - $stmt->where[] = new Condition('film_id > 10'); - $stmt->where[] = new Condition('OR'); - $stmt->where[] = new Condition('actor.age > 25'); - - $stmt->limit = new Limit(1, 10); - - $this->assertEquals( - 'SELECT DISTINCT `sakila`.`film`.`film_id` AS `fid`, COUNT(film_id) ' . - 'FROM `film`, `actor` ' . - 'WHERE film_id > 10 OR actor.age > 25 ' . - 'LIMIT 10, 1', - (string) $stmt - ); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/TransactionStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/TransactionStatementTest.php deleted file mode 100644 index 4da0dd14..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/TransactionStatementTest.php +++ /dev/null @@ -1,30 +0,0 @@ -statements[0]; - - $this->assertEquals( - 'START TRANSACTION;' . - 'SELECT @A:=SUM(salary) FROM table1 WHERE type=1;' . - 'UPDATE table2 SET summary = @A WHERE type=1;' . - 'COMMIT', - $stmt->build() - ); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/TruncateStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/TruncateStatementTest.php deleted file mode 100644 index f848d82b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/TruncateStatementTest.php +++ /dev/null @@ -1,41 +0,0 @@ -statements[0]; - - $this->assertEquals($query, $stmt->build()); - } - - public function testBuilderDbtable(): void - { - $query = 'TRUNCATE TABLE mydb.mytable;'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals($query, $stmt->build()); - } - - public function testBuilderDbtableBackQuotes(): void - { - $query = 'TRUNCATE TABLE `mydb`.`mytable`;'; - - $parser = new Parser($query); - $stmt = $parser->statements[0]; - - $this->assertEquals($query, $stmt->build()); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/UpdateStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/UpdateStatementTest.php deleted file mode 100644 index 1e21cfc6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Builder/UpdateStatementTest.php +++ /dev/null @@ -1,40 +0,0 @@ -statements[0]; - $this->assertEquals( - 'UPDATE user AS `u` LEFT JOIN user_detail AS `ud` ON u.id = ud.user_id SET ud.ip = \'33\' WHERE u.id = 1', - $stmt->build() - ); - /* Assertion 2 */ - $parser = new Parser('update user u join user_detail ud on u.id = ud.user_id set ud.ip =\'33\' where u.id = 1'); - $stmt = $parser->statements[0]; - $this->assertEquals( - 'UPDATE user AS `u` JOIN user_detail AS `ud` ON u.id = ud.user_id SET ud.ip = \'33\' WHERE u.id = 1', - $stmt->build() - ); - /* Assertion 3 */ - $parser = new Parser( - 'update user u inner join user_detail ud on u.id = ud.user_id set ud.ip =\'33\' where u.id = 1' - ); - $stmt = $parser->statements[0]; - $this->assertEquals( - 'UPDATE user AS `u` INNER JOIN user_detail AS `ud` ON u.id = ud.user_id SET ud.ip = \'33\' WHERE u.id = 1', - $stmt->build() - ); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/Array2dTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/Array2dTest.php deleted file mode 100644 index acf40aae..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/Array2dTest.php +++ /dev/null @@ -1,94 +0,0 @@ -getTokensList('(1, 2) +')); - $this->assertEquals( - [ - 1, - 2, - ], - $arrays[0]->values - ); - } - - public function testBuild(): void - { - $arrays = Array2d::parse(new Parser(), $this->getTokensList('(1, 2), (3, 4), (5, 6)')); - $this->assertEquals( - '(1, 2), (3, 4), (5, 6)', - Array2d::build($arrays) - ); - } - - public function testParseErr1(): void - { - $parser = new Parser(); - Array2d::parse($parser, $this->getTokensList('(1, 2 +')); - $this->assertCount(1, $parser->errors); - $this->assertEquals('A closing bracket was expected.', $parser->errors[0]->getMessage()); - } - - public function testParseErr2(): void - { - $parser = new Parser(); - Array2d::parse($parser, $this->getTokensList('(1, 2 TABLE')); - $this->assertCount(1, $parser->errors); - $this->assertEquals('A closing bracket was expected.', $parser->errors[0]->getMessage()); - } - - public function testParseErr3(): void - { - $parser = new Parser(); - Array2d::parse($parser, $this->getTokensList(')')); - $this->assertCount(1, $parser->errors); - $this->assertEquals( - 'An opening bracket followed by a set of values was expected.', - $parser->errors[0]->getMessage() - ); - } - - public function testParseErr4(): void - { - $parser = new Parser(); - Array2d::parse($parser, $this->getTokensList('TABLE')); - $this->assertCount(1, $parser->errors); - $this->assertEquals( - 'An opening bracket followed by a set of values was expected.', - $parser->errors[0]->getMessage() - ); - } - - public function testParseErr5(): void - { - $parser = new Parser(); - Array2d::parse($parser, $this->getTokensList('(1, 2),')); - $this->assertCount(1, $parser->errors); - $this->assertEquals( - 'An opening bracket followed by a set of values was expected.', - $parser->errors[0]->getMessage() - ); - } - - public function testParseErr6(): void - { - $parser = new Parser(); - Array2d::parse($parser, $this->getTokensList('(1, 2),(3)')); - $this->assertCount(1, $parser->errors); - $this->assertEquals( - '2 values were expected, but found 1.', - $parser->errors[0]->getMessage() - ); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/ArrayObjTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/ArrayObjTest.php deleted file mode 100644 index 5a251540..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/ArrayObjTest.php +++ /dev/null @@ -1,60 +0,0 @@ -assertEquals('(a, b)', ArrayObj::build($component)); - } - - public function testBuildValues(): void - { - $component = new ArrayObj([], ['a', 'b']); - $this->assertEquals('(a, b)', ArrayObj::build($component)); - } - - public function testParseType(): void - { - $components = ArrayObj::parse( - new Parser(), - $this->getTokensList('(1 + 2, 3 + 4)'), - [ - 'type' => Expression::class, - 'typeOptions' => ['breakOnParentheses' => true], - ] - ); - $this->assertInstanceOf(Expression::class, $components[0]); - $this->assertInstanceOf(Expression::class, $components[1]); - $this->assertEquals($components[0]->expr, '1 + 2'); - $this->assertEquals($components[1]->expr, '3 + 4'); - } - - /** - * @dataProvider parseProvider - */ - public function testParse(string $test): void - { - $this->runParserTest($test); - } - - /** - * @return string[][] - */ - public static function parseProvider(): array - { - return [ - ['parser/parseArrayErr1'], - ['parser/parseArrayErr3'], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/CaseExpressionTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/CaseExpressionTest.php deleted file mode 100644 index c5bcbe06..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/CaseExpressionTest.php +++ /dev/null @@ -1,128 +0,0 @@ -getTokensList($caseExprQuery) - ); - $this->assertEquals( - CaseExpression::build($component), - 'CASE 1 WHEN 1 THEN "Some" ELSE "Other" END' - ); - } - - public function testParseBuild2(): void - { - $caseExprQuery = 'case when 1=1 then "India" else "Other" end'; - $component = CaseExpression::parse( - new Parser(), - $this->getTokensList($caseExprQuery) - ); - $this->assertEquals( - CaseExpression::build($component), - 'CASE WHEN 1=1 THEN "India" ELSE "Other" END' - ); - } - - public function testParseBuild3(): void - { - $caseExprQuery = 'case 1 when 1 then "Some" ' - . 'when 2 then "SomeOther" else "Other" end'; - $component = CaseExpression::parse( - new Parser(), - $this->getTokensList($caseExprQuery) - ); - $this->assertEquals( - CaseExpression::build($component), - 'CASE 1 WHEN 1 THEN "Some" WHEN 2 THEN "SomeOther" ELSE "Other" END' - ); - } - - public function testParseBuild4(): void - { - $caseExprQuery = 'case 1 when 1 then "Some" ' - . 'when 2 then "SomeOther" end'; - $component = CaseExpression::parse( - new Parser(), - $this->getTokensList($caseExprQuery) - ); - $this->assertEquals( - CaseExpression::build($component), - 'CASE 1 WHEN 1 THEN "Some" WHEN 2 THEN "SomeOther" END' - ); - } - - public function testParseBuild5(): void - { - $caseExprQuery = 'case when 1=1 then "Some" ' - . 'when 1=2 then "SomeOther" else "Other" end'; - $component = CaseExpression::parse( - new Parser(), - $this->getTokensList($caseExprQuery) - ); - $this->assertEquals( - CaseExpression::build($component), - 'CASE WHEN 1=1 THEN "Some" WHEN 1=2 THEN "SomeOther" ELSE "Other" END' - ); - } - - public function testParseBuild6(): void - { - $caseExprQuery = 'case when 1=1 then "Some" ' - . 'when 1=2 then "SomeOther" end'; - $component = CaseExpression::parse( - new Parser(), - $this->getTokensList($caseExprQuery) - ); - $this->assertEquals( - CaseExpression::build($component), - 'CASE WHEN 1=1 THEN "Some" WHEN 1=2 THEN "SomeOther" END' - ); - } - - public function testParseBuild7(): void - { - $caseExprQuery = 'case when 1=1 then "Some" ' - . 'when 1=2 then "SomeOther" end AS foo'; - $component = CaseExpression::parse( - new Parser(), - $this->getTokensList($caseExprQuery) - ); - $this->assertEquals( - CaseExpression::build($component), - 'CASE WHEN 1=1 THEN "Some" WHEN 1=2 THEN "SomeOther" END AS `foo`' - ); - } - - public function testParseBuild8(): void - { - $caseExprQuery = 'case when 1=1 then "Some" ' - . 'when 1=2 then "SomeOther" end foo'; - $component = CaseExpression::parse( - new Parser(), - $this->getTokensList($caseExprQuery) - ); - $this->assertEquals( - CaseExpression::build($component), - 'CASE WHEN 1=1 THEN "Some" WHEN 1=2 THEN "SomeOther" END AS `foo`' - ); - } - - public function testBuildWithIncompleteCaseExpression(): void - { - $incompleteCaseExpressionComponent = new CaseExpression(); - $this->assertEquals('CASE END', CaseExpression::build($incompleteCaseExpressionComponent)); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/ComponentTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/ComponentTest.php deleted file mode 100644 index 1c9462eb..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/ComponentTest.php +++ /dev/null @@ -1,32 +0,0 @@ -expectExceptionMessage('Not implemented yet.'); - $this->expectException(Throwable::class); - Component::parse(new Parser(), new TokensList()); - } - - public function testBuild(): void - { - $this->expectExceptionMessage('Not implemented yet.'); - $this->expectException(Throwable::class); - Component::build(null); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/ConditionTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/ConditionTest.php deleted file mode 100644 index 4ff86093..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/ConditionTest.php +++ /dev/null @@ -1,41 +0,0 @@ -getTokensList('/* id = */ id = 10')); - $this->assertEquals($component[0]->expr, 'id = 10'); - } - - public function testParseBetween(): void - { - $component = Condition::parse( - new Parser(), - $this->getTokensList('(id BETWEEN 10 AND 20) OR (id BETWEEN 30 AND 40)') - ); - $this->assertEquals($component[0]->expr, '(id BETWEEN 10 AND 20)'); - $this->assertEquals($component[1]->expr, 'OR'); - $this->assertEquals($component[2]->expr, '(id BETWEEN 30 AND 40)'); - } - - public function testParseAnd(): void - { - $component = Condition::parse( - new Parser(), - $this->getTokensList("`col` LIKE 'AND'") - ); - $this->assertEquals( - "`col` LIKE 'AND'", - Condition::build($component) - ); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/CreateDefinitionTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/CreateDefinitionTest.php deleted file mode 100644 index 3f28f4ba..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/CreateDefinitionTest.php +++ /dev/null @@ -1,162 +0,0 @@ -getTokensList('(str TEXT, FULLTEXT INDEX indx (str))') - ); - $this->assertEquals('str', $component[0]->name); - $this->assertEquals('FULLTEXT INDEX', $component[1]->key->type); - $this->assertEquals('indx', $component[1]->key->name); - $this->assertEquals('FULLTEXT INDEX `indx` (`str`)', (string) $component[1]); - } - - public function testParse2(): void - { - $component = CreateDefinition::parse( - new Parser(), - $this->getTokensList('(str TEXT NOT NULL INVISIBLE)') - ); - $this->assertEquals('str', $component[0]->name); - $this->assertEquals('TEXT', $component[0]->type->name); - $this->assertTrue($component[0]->options->has('INVISIBLE')); - $this->assertTrue($component[0]->options->has('NOT NULL')); - } - - public function testParseErr1(): void - { - $parser = new Parser(); - $component = CreateDefinition::parse( - $parser, - $this->getTokensList('(str TEXT, FULLTEXT INDEX indx (str)') - ); - $this->assertCount(2, $component); - - $this->assertEquals( - 'A closing bracket was expected.', - $parser->errors[0]->getMessage() - ); - } - - public function testParseErr2(): void - { - $parser = new Parser(); - CreateDefinition::parse( - $parser, - $this->getTokensList(')') - ); - - $this->assertEquals( - 'An opening bracket was expected.', - $parser->errors[0]->getMessage() - ); - } - - public function testBuild(): void - { - $parser = new Parser( - 'CREATE TABLE `payment` (' . - '-- snippet' . "\n" . - '`customer_id` smallint(5) unsigned NOT NULL,' . - 'CONSTRAINT `fk_payment_customer` FOREIGN KEY (`customer_id`) ' . - 'REFERENCES `customer` (`customer_id`) ON UPDATE CASCADE' . - ') ENGINE=InnoDB"' - ); - $this->assertInstanceOf(CreateStatement::class, $parser->statements[0]); - $this->assertEquals( - 'CONSTRAINT `fk_payment_customer` FOREIGN KEY (`customer_id`) ' . - 'REFERENCES `customer` (`customer_id`) ON UPDATE CASCADE', - CreateDefinition::build($parser->statements[0]->fields[1]) - ); - } - - public function testBuild2(): void - { - $parser = new Parser( - 'CREATE TABLE `payment` (' . - '-- snippet' . "\n" . - '`customer_id` smallint(5) unsigned NOT NULL,' . - '`customer_data` longtext CHARACTER SET utf8mb4 CHARSET utf8mb4_bin NOT NULL ' . - 'CHECK (json_valid(customer_data)),CONSTRAINT `fk_payment_customer` FOREIGN KEY ' . - '(`customer_id`) REFERENCES `customer` (`customer_id`) ON UPDATE CASCADE' . - ') ENGINE=InnoDB"' - ); - $this->assertInstanceOf(CreateStatement::class, $parser->statements[0]); - $this->assertEquals( - 'CONSTRAINT `fk_payment_customer` FOREIGN KEY (`customer_id`) ' . - 'REFERENCES `customer` (`customer_id`) ON UPDATE CASCADE', - CreateDefinition::build($parser->statements[0]->fields[2]) - ); - } - - public function testBuild3(): void - { - $parser = new Parser( - 'DROP TABLE IF EXISTS `searches`;' - . 'CREATE TABLE `searches` (' - . ' `id` int(10) unsigned NOT NULL AUTO_INCREMENT,' - . ' `name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,' - . ' `public_name` varchar(120) COLLATE utf8_unicode_ci NOT NULL,' - . ' `group_id` smallint(5) unsigned NOT NULL DEFAULT \'0\',' - . ' `shortdesc` tinytext COLLATE utf8_unicode_ci,' - . ' `show_separators` tinyint(1) NOT NULL DEFAULT \'0\',' - . ' `show_separators_two` tinyint(1) NOT NULL DEFAULT FALSE,' - . ' `deleted` tinyint(1) NOT NULL DEFAULT \'0\',' - . ' PRIMARY KEY (`id`)' - . ') ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci ;' - . '' - . 'ALTER TABLE `searches` ADD `admins_only` BOOLEAN NOT NULL DEFAULT FALSE AFTER `show_separators`;' - ); - $this->assertInstanceOf(CreateStatement::class, $parser->statements[1]); - $this->assertEquals( - '`public_name` varchar(120) COLLATE utf8_unicode_ci NOT NULL', - CreateDefinition::build($parser->statements[1]->fields[2]) - ); - $this->assertEquals( - '`show_separators` tinyint(1) NOT NULL DEFAULT \'0\'', - CreateDefinition::build($parser->statements[1]->fields[5]) - ); - $this->assertEquals( - '`show_separators_two` tinyint(1) NOT NULL DEFAULT FALSE', - CreateDefinition::build($parser->statements[1]->fields[6]) - ); - } - - public function testBuildWithInvisibleKeyword(): void - { - $parser = new Parser( - 'CREATE TABLE `payment` (' . - '-- snippet' . "\n" . - '`customer_id` smallint(5) unsigned NOT NULL INVISIBLE,' . - '`customer_data` longtext CHARACTER SET utf8mb4 CHARSET utf8mb4_bin NOT NULL ' . - 'CHECK (json_valid(customer_data)),CONSTRAINT `fk_payment_customer` FOREIGN KEY ' . - '(`customer_id`) REFERENCES `customer` (`customer_id`) ON UPDATE CASCADE' . - ') ENGINE=InnoDB"' - ); - $this->assertInstanceOf(CreateStatement::class, $parser->statements[0]); - $this->assertEquals( - '`customer_id` smallint(5) UNSIGNED NOT NULL INVISIBLE', - CreateDefinition::build($parser->statements[0]->fields[0]) - ); - } - - public function testBuildWithCompressed(): void - { - $query = 'CREATE TABLE `user` ( `message2` TEXT COMPRESSED )'; - $parser = new Parser($query); - $stmt = $parser->statements[0]; - $this->assertEquals("CREATE TABLE `user` (\n `message2` text COMPRESSED\n) ", $stmt->build()); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/ExpressionArrayTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/ExpressionArrayTest.php deleted file mode 100644 index 2bf44d04..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/ExpressionArrayTest.php +++ /dev/null @@ -1,54 +0,0 @@ -getTokensList('(expr)'), - ['breakOnParentheses' => true] - ); - $this->assertEquals([], $component); - } - - public function testParse2(): void - { - $component = ExpressionArray::parse( - new Parser(), - $this->getTokensList('(expr) +'), - ['parenthesesDelimited' => true] - ); - $this->assertCount(1, $component); - $this->assertEquals('(expr)', $component[0]->expr); - } - - public function testParseWithCommentsNoOptions(): void - { - $component = ExpressionArray::parse( - new Parser(), - $this->getTokensList('(expr) -- comment ?') - ); - $this->assertCount(1, $component); - $this->assertEquals('(expr)', $component[0]->expr); - } - - public function testParseWithCommentsAndOptions(): void - { - $component = ExpressionArray::parse( - new Parser(), - $this->getTokensList('(expr -- comment ?)'), - ['parenthesesDelimited' => true] - ); - $this->assertCount(1, $component); - $this->assertEquals('(expr', $component[0]->expr); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/ExpressionTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/ExpressionTest.php deleted file mode 100644 index 73dfe7cd..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/ExpressionTest.php +++ /dev/null @@ -1,154 +0,0 @@ -getTokensList('IF(film_id > 0, film_id, film_id)')); - $this->assertEquals($component->expr, 'IF(film_id > 0, film_id, film_id)'); - } - - public function testParse2(): void - { - $component = Expression::parse(new Parser(), $this->getTokensList('col`test`')); - $this->assertEquals($component->expr, 'col'); - } - - public function testParse3(): void - { - $component = Expression::parse(new Parser(), $this->getTokensList('col xx')); - $this->assertEquals($component->alias, 'xx'); - - $component = Expression::parse(new Parser(), $this->getTokensList('col y')); - $this->assertEquals($component->alias, 'y'); - - $component = Expression::parse(new Parser(), $this->getTokensList('avg.col FROM (SELECT ev.col FROM ev)')); - $this->assertEquals($component->table, 'avg'); - $this->assertEquals($component->expr, 'avg.col'); - - $component = Expression::parse(new Parser(), $this->getTokensList('x.id FROM (SELECT a.id FROM a) x')); - $this->assertEquals($component->table, 'x'); - $this->assertEquals($component->expr, 'x.id'); - } - - /** - * @dataProvider parseErrProvider - */ - public function testParseErr(string $expr, string $error): void - { - $parser = new Parser(); - Expression::parse($parser, $this->getTokensList($expr)); - $errors = $this->getErrorsAsArray($parser); - $this->assertEquals($errors[0][0], $error); - } - - /** - * @return string[][] - */ - public static function parseErrProvider(): array - { - return [ - /* - [ - '(1))', - 'Unexpected closing bracket.', - ], - */ - [ - 'tbl..col', - 'Unexpected dot.', - ], - [ - 'id AS AS id2', - 'An alias was expected.', - ], - [ - 'id`id2`\'id3\'', - 'An alias was previously found.', - ], - [ - '(id) id2 id3', - 'An alias was previously found.', - ], - ]; - } - - public function testBuild(): void - { - $component = [ - new Expression('1 + 2', 'three'), - new Expression('1 + 3', 'four'), - ]; - $this->assertEquals( - Expression::build($component), - '1 + 2 AS `three`, 1 + 3 AS `four`' - ); - } - - /** - * @return string[][] - */ - public static function mysqlCommandsProvider(): array - { - return [ - [ - '/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;', - 'SET @OLD_CHARACTER_SET_CLIENT = @@CHARACTER_SET_CLIENT', - ], - [ - '/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;', - 'SET @OLD_CHARACTER_SET_RESULTS = @@CHARACTER_SET_RESULTS', - ], - [ - '/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;', - 'SET @OLD_COLLATION_CONNECTION = @@COLLATION_CONNECTION', - ], - [ - '/*!40101 SET NAMES utf8 */;', - 'SET NAMES utf8', - ], - [ - '/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;', - 'SET @OLD_TIME_ZONE = @@TIME_ZONE', - ], - [ - "/*!40103 SET TIME_ZONE='+00:00' */;", - "SET TIME_ZONE = '+00:00'", - ], - [ - '/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;', - 'SET @OLD_UNIQUE_CHECKS = @@UNIQUE_CHECKS, UNIQUE_CHECKS = 0', - ], - [ - '/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;', - 'SET @OLD_FOREIGN_KEY_CHECKS = @@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS = 0', - ], - [ - "/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;", - "SET @OLD_SQL_MODE = @@SQL_MODE, SQL_MODE = 'NO_AUTO_VALUE_ON_ZERO'", - ], - [ - '/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;', - 'SET @OLD_SQL_NOTES = @@SQL_NOTES, SQL_NOTES = 0', - ], - ]; - } - - /** - * @dataProvider mysqlCommandsProvider - */ - public function testMysqlCommands(string $expr, string $expected): void - { - $parser = new Parser($expr, true); - $parser->parse(); - self::assertSame($expected, $parser->statements[0]->build()); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/FunctionCallTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/FunctionCallTest.php deleted file mode 100644 index 3623412a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/FunctionCallTest.php +++ /dev/null @@ -1,24 +0,0 @@ -assertEquals('func(a, b)', FunctionCall::build($component)); - } - - public function testBuildArrayObj(): void - { - $component = new FunctionCall('func', new ArrayObj(['a', 'b'])); - $this->assertEquals('func(a, b)', FunctionCall::build($component)); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/GroupKeywordTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/GroupKeywordTest.php deleted file mode 100644 index 4ddba778..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/GroupKeywordTest.php +++ /dev/null @@ -1,76 +0,0 @@ -, string}> - */ - public static function provideExpressions(): Generator - { - yield 'With no expression at all' => [[], '']; - - yield 'With single simple expression' => [ - self::makeComponentFrom('a'), - 'a', - ]; - - yield 'With multiple simple expressions' => [ - self::makeComponentsFrom('a', 'b', 'c'), - 'a, b, c', - ]; - - yield 'With single untrimmed expression' => [ - self::makeComponentFrom(' o '), - 'o', - ]; - - yield 'With single untrimmed expression having several kinds of whitespaces' => [ - self::makeComponentFrom(" \n\r foo \t\v\x00 "), - 'foo', - ]; - - yield 'With multiple untrimmed expressions' => [ - self::makeComponentsFrom(' x', ' y ', 'z '), - 'x, y, z', - ]; - - yield 'With multiple untrimmed expression having several kinds of whitespaces' => [ - self::makeComponentsFrom(" \n\r\t\v\x00foo", " \n\r\tbar\v\x00", "baz \n\r\t\v\x00"), - 'foo, bar, baz', - ]; - } - - /** - * @param GroupKeyword|array $component - * - * @dataProvider provideExpressions - */ - public function testBuild($component, string $expected): void - { - $this->assertSame($expected, GroupKeyword::build($component)); - } - - private static function makeComponentFrom(string $string): GroupKeyword - { - return new GroupKeyword(new Expression($string)); - } - - /** - * @return array - */ - private static function makeComponentsFrom(string ...$string): array - { - return array_map([self::class, 'makeComponentFrom'], $string); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/IntoKeywordTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/IntoKeywordTest.php deleted file mode 100644 index 4dea44cd..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/IntoKeywordTest.php +++ /dev/null @@ -1,43 +0,0 @@ -getTokensList('OUTFILE "/tmp/outfile.txt"')); - $this->assertEquals($component->type, 'OUTFILE'); - $this->assertEquals($component->dest, '/tmp/outfile.txt'); - } - - public function testBuild(): void - { - $component = IntoKeyword::parse(new Parser(), $this->getTokensList('tbl(`col1`, `col2`)')); - $this->assertEquals('tbl(`col1`, `col2`)', IntoKeyword::build($component)); - } - - public function testBuildValues(): void - { - $component = IntoKeyword::parse(new Parser(), $this->getTokensList('@a1, @a2, @a3')); - $this->assertEquals('@a1, @a2, @a3', IntoKeyword::build($component)); - } - - public function testBuildOutfile(): void - { - $component = IntoKeyword::parse(new Parser(), $this->getTokensList('OUTFILE "/tmp/outfile.txt"')); - $this->assertEquals('OUTFILE "/tmp/outfile.txt"', IntoKeyword::build($component)); - } - - public function testParseErr1(): void - { - $component = IntoKeyword::parse(new Parser(), $this->getTokensList('OUTFILE;')); - $this->assertEquals($component->type, 'OUTFILE'); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/JoinKeywordTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/JoinKeywordTest.php deleted file mode 100644 index a99b0933..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/JoinKeywordTest.php +++ /dev/null @@ -1,46 +0,0 @@ -getTokensList('JOIN a')); - $this->assertCount(1, $component); - $this->assertEquals('a', $component[0]->expr->expr); - $this->assertNull($component[0]->on); - $this->assertNull($component[0]->using); - } - - public function testParseIncompleteUsing(): void - { - $component = JoinKeyword::parse(new Parser(), $this->getTokensList('JOIN table2 USING (id)')); - $this->assertCount(1, $component); - $this->assertEquals('table2', $component[0]->expr->expr); - $this->assertNull($component[0]->on); - $this->assertEquals(['id'], $component[0]->using->values); - } - - public function testBuild(): void - { - $component = JoinKeyword::parse( - new Parser(), - $this->getTokensList( - 'LEFT JOIN (t2 CROSS JOIN t3 CROSS JOIN t4) ' . - 'ON (t2.a=t1.a AND t3.b=t1.b AND t4.c=t1.c)' - ) - ); - $this->assertEquals( - 'LEFT JOIN (t2 CROSS JOIN t3 CROSS JOIN t4) ' . - 'ON (t2.a=t1.a AND t3.b=t1.b AND t4.c=t1.c)', - JoinKeyword::build($component) - ); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/KeyTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/KeyTest.php deleted file mode 100644 index 421a05d5..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/KeyTest.php +++ /dev/null @@ -1,374 +0,0 @@ -getTokensList('') - ); - $this->assertNull($component->type); - $this->assertNull($component->options); - $this->assertNull($component->name); - $this->assertNull($component->expr); - $this->assertSame([], $component->columns); - $this->assertSame( - '()', - Key::build($component) - ); - } - - public function testParseKeyWithoutOptions(): void - { - $component = Key::parse( - new Parser(), - $this->getTokensList('KEY `alias_type_idx` (`alias_type`),') - ); - $this->assertEquals('KEY', $component->type); - $this->assertEquals('alias_type_idx', $component->name); - $this->assertEquals(new OptionsArray(), $component->options); - $this->assertNull($component->expr); - $this->assertSame([['name' => 'alias_type']], $component->columns); - $this->assertSame( - 'KEY `alias_type_idx` (`alias_type`)', - Key::build($component) - ); - } - - public function testParseKeyWithLengthWithoutOptions(): void - { - $component = Key::parse( - new Parser(), - $this->getTokensList('KEY `alias_type_idx` (`alias_type`(10)),') - ); - $this->assertEquals('KEY', $component->type); - $this->assertEquals('alias_type_idx', $component->name); - $this->assertEquals(new OptionsArray(), $component->options); - $this->assertNull($component->expr); - $this->assertSame([['name' => 'alias_type', 'length' => 10]], $component->columns); - $this->assertSame( - 'KEY `alias_type_idx` (`alias_type`(10))', - Key::build($component) - ); - } - - public function testParseKeyWithLengthWithoutOptionsWithOrder(): void - { - $component = Key::parse( - new Parser(), - $this->getTokensList('KEY `alias_type_idx` (`alias_type`(10) ASC),') - ); - $this->assertEquals('KEY', $component->type); - $this->assertEquals('alias_type_idx', $component->name); - $this->assertEquals(new OptionsArray(), $component->options); - $this->assertNull($component->expr); - $this->assertSame([['name' => 'alias_type', 'length' => 10, 'order' => 'ASC']], $component->columns); - $this->assertSame( - 'KEY `alias_type_idx` (`alias_type`(10) ASC)', - Key::build($component) - ); - } - - public function testParseKeyWithoutOptionsWithOrderLowercase(): void - { - $component = Key::parse( - new Parser(), - $this->getTokensList('KEY `alias_type_idx` (`alias_type` desc),') - ); - $this->assertEquals('KEY', $component->type); - $this->assertEquals('alias_type_idx', $component->name); - $this->assertEquals(new OptionsArray(), $component->options); - $this->assertNull($component->expr); - $this->assertSame([['name' => 'alias_type', 'order' => 'DESC']], $component->columns); - $this->assertSame( - 'KEY `alias_type_idx` (`alias_type` DESC)', - Key::build($component) - ); - } - - public function testParseKeyWithoutOptionsWithOrder(): void - { - $component = Key::parse( - new Parser(), - $this->getTokensList('KEY `alias_type_idx` (`alias_type` DESC),') - ); - $this->assertEquals('KEY', $component->type); - $this->assertEquals('alias_type_idx', $component->name); - $this->assertEquals(new OptionsArray(), $component->options); - $this->assertNull($component->expr); - $this->assertSame([['name' => 'alias_type', 'order' => 'DESC']], $component->columns); - $this->assertSame( - 'KEY `alias_type_idx` (`alias_type` DESC)', - Key::build($component) - ); - } - - public function testParseKeyWithLengthWithOptions(): void - { - $component = Key::parse( - new Parser(), - $this->getTokensList('KEY `alias_type_idx` (`alias_type`(10)) COMMENT \'my comment\',') - ); - $this->assertEquals('KEY', $component->type); - $this->assertEquals('alias_type_idx', $component->name); - $this->assertEquals(new OptionsArray( - [ - 4 => [ - 'name' => 'COMMENT', - 'equals' => false, - 'expr' => '\'my comment\'', - 'value' => 'my comment', - ], - ] - ), $component->options); - $this->assertNull($component->expr); - $this->assertSame([['name' => 'alias_type', 'length' => 10]], $component->columns); - $this->assertSame( - 'KEY `alias_type_idx` (`alias_type`(10)) COMMENT \'my comment\'', - Key::build($component) - ); - } - - public function testParseKeyWithLengthWithAllOptions(): void - { - $component = Key::parse( - new Parser(), - $this->getTokensList( - // This is not a vary plausible example but it runs - // Only ENGINE_ATTRIBUTE gives a not supported error but is still a valid syntax - 'KEY `alias_type_idx` (`alias_type`(10))' - . ' COMMENT \'my comment\' VISIBLE KEY_BLOCK_SIZE=1' - . ' INVISIBLE ENGINE_ATTRIBUTE \'foo\' SECONDARY_ENGINE_ATTRIBUTE=\'bar\' USING BTREE,' - ) - ); - $this->assertEquals('KEY', $component->type); - $this->assertEquals('alias_type_idx', $component->name); - $this->assertEquals(new OptionsArray( - [ - 1 => [ - 'name' => 'KEY_BLOCK_SIZE', - 'equals' => true, - 'expr' => '1', - 'value' => '1', - ], - 2 => [ - 'name' => 'USING', - 'equals' => false, - 'expr' => 'BTREE', - 'value' => 'BTREE', - ], - 4 => [ - 'name' => 'COMMENT', - 'equals' => false, - 'expr' => '\'my comment\'', - 'value' => 'my comment', - ], - 5 => [ - 'name' => 'ENGINE_ATTRIBUTE', - 'equals' => true, - 'expr' => '\'foo\'', - 'value' => 'foo', - ], - 6 => 'VISIBLE', - 12 => 'INVISIBLE', - 13 => [ - 'name' => 'SECONDARY_ENGINE_ATTRIBUTE', - 'equals' => true, - 'expr' => '\'bar\'', - 'value' => 'bar', - ], - ] - ), $component->options); - $this->assertNull($component->expr); - $this->assertSame([['name' => 'alias_type', 'length' => 10]], $component->columns); - } - - public function testParseKeyExpressionWithoutOptions(): void - { - $component = Key::parse( - new Parser(), - $this->getTokensList( - 'KEY `updated_tz_ind2` ((convert_tz(`cache_updated`,_utf8mb4\'GMT\',_utf8mb4\'GB\'))),' - ) - ); - $this->assertEquals('KEY', $component->type); - $this->assertEquals('updated_tz_ind2', $component->name); - $this->assertEquals(new OptionsArray(), $component->options); - $expr = new Expression('(convert_tz(`cache_updated`,_utf8mb4\'GMT\',_utf8mb4\'GB\'))'); - $expr->function = 'convert_tz'; - $this->assertEquals($expr, $component->expr); - $this->assertSame([], $component->columns); - $this->assertSame( - 'KEY `updated_tz_ind2` ((convert_tz(`cache_updated`,_utf8mb4\'GMT\',_utf8mb4\'GB\'))) ', - Key::build($component) - ); - } - - public function testParseKeyExpressionWithOptions(): void - { - $component = Key::parse( - new Parser(), - $this->getTokensList( - 'KEY `updated_tz_ind2`' - . ' ((convert_tz(`cache_updated`,_utf8mb4\'GMT\',_utf8mb4\'GB\')))' - . ' COMMENT \'my comment\',' - ) - ); - $this->assertEquals('KEY', $component->type); - $this->assertEquals('updated_tz_ind2', $component->name); - $this->assertEquals(new OptionsArray( - [ - 4 => [ - 'name' => 'COMMENT', - 'equals' => false, - 'expr' => '\'my comment\'', - 'value' => 'my comment', - ], - ] - ), $component->options); - $expr = new Expression('(convert_tz(`cache_updated`,_utf8mb4\'GMT\',_utf8mb4\'GB\'))'); - $expr->function = 'convert_tz'; - $this->assertEquals($expr, $component->expr); - $this->assertSame([], $component->columns); - $this->assertSame( - 'KEY `updated_tz_ind2`' - . ' ((convert_tz(`cache_updated`,_utf8mb4\'GMT\',_utf8mb4\'GB\')))' - . ' COMMENT \'my comment\'', - Key::build($component) - ); - } - - public function testParseKeyExpressionWithOptionsError(): void - { - $parser = new Parser(); - $component = Key::parse( - $parser, - $this->getTokensList( - 'KEY `updated_tz_ind2` (()convert_tz(`cache_updated`,_utf8mb4\'GMT\',_utf8mb4\'GB\')))' - . ' COMMENT \'my comment\',' - ) - ); - $this->assertEquals('KEY', $component->type); - $this->assertEquals('updated_tz_ind2', $component->name); - $this->assertEquals(new OptionsArray( - [] - ), $component->options); - $t = new Token('convert_tz', Token::TYPE_KEYWORD, 33); - $t->position = 25; - - $this->assertEquals([ - new ParserException( - 'Unexpected token.', - $t - ), - ], $parser->errors); - $expr = new Expression('(convert_tz(`cache_updated`,_utf8mb4\'GMT\',_utf8mb4\'GB\'))'); - $expr->function = 'convert_tz'; - $this->assertEquals('()(`cache_updated`,_utf8mb4\'GMT\',_utf8mb4\'GB\')', $component->expr); - $this->assertSame([], $component->columns); - $this->assertSame( - 'KEY `updated_tz_ind2` (()(`cache_updated`,_utf8mb4\'GMT\',_utf8mb4\'GB\')) ', - Key::build($component) - ); - } - - public function testParseKeyOneExpressionWithOptions(): void - { - $parser = new Parser(); - $component = Key::parse( - $parser, - $this->getTokensList( - 'KEY `updated_tz_ind2`' - . ' (' - . '(convert_tz(`cache_updated`,_utf8mb4\'GMT\',_utf8mb4\'GB\')), ' - . '(convert_tz(`cache_updated`,_utf8mb4\'GMT\',_utf8mb4\'FR\'))' - . ')' - . ' COMMENT \'my comment\',' - ) - ); - $this->assertEquals('KEY', $component->type); - $this->assertEquals('updated_tz_ind2', $component->name); - $this->assertEquals(new OptionsArray( - [ - 4 => [ - 'name' => 'COMMENT', - 'equals' => false, - 'expr' => '\'my comment\'', - 'value' => 'my comment', - ], - ] - ), $component->options); - $this->assertSame([], $parser->errors); - $expr = new Expression( - '(convert_tz(`cache_updated`,_utf8mb4\'GMT\',_utf8mb4\'GB\')),' - . ' (convert_tz(`cache_updated`,_utf8mb4\'GMT\',_utf8mb4\'FR\'))' - ); - $expr->function = 'convert_tz'; - $this->assertEquals($expr, $component->expr); - $this->assertSame([], $component->columns); - $this->assertSame( - 'KEY `updated_tz_ind2` ((convert_tz(`cache_updated`,_utf8mb4\'GMT\',_utf8mb4\'GB\')),' - . ' (convert_tz(`cache_updated`,_utf8mb4\'GMT\',_utf8mb4\'FR\'))' - . ') COMMENT \'my comment\'', - Key::build($component) - ); - } - - public function testParseKeyMultipleExpressionsWithOptions(): void - { - $parser = new Parser(); - $component = Key::parse( - $parser, - $this->getTokensList( - 'KEY `updated_tz_ind2`' - . ' (' - . '(convert_tz(`cache_updated`,_utf8mb4\'GMT\',_utf8mb4\'GB\')), ' - . '(convert_tz(`cache_updated`,_utf8mb4\'GMT\',_utf8mb4\'FR\')), ' - . '(convert_tz(`cache_updated`,_utf8mb4\'GMT\',_utf8mb4\'RU\'))' - . ')' - . ' COMMENT \'my comment\',' - ) - ); - $this->assertEquals('KEY', $component->type); - $this->assertEquals('updated_tz_ind2', $component->name); - $this->assertEquals(new OptionsArray( - [ - 4 => [ - 'name' => 'COMMENT', - 'equals' => false, - 'expr' => '\'my comment\'', - 'value' => 'my comment', - ], - ] - ), $component->options); - $expr = new Expression( - '(convert_tz(`cache_updated`,_utf8mb4\'GMT\',_utf8mb4\'GB\')),' - . ' (convert_tz(`cache_updated`,_utf8mb4\'GMT\',_utf8mb4\'FR\')),' - . ' (convert_tz(`cache_updated`,_utf8mb4\'GMT\',_utf8mb4\'RU\'))' - ); - $expr->function = 'convert_tz'; - $this->assertEquals($expr, $component->expr); - $this->assertSame([], $component->columns); - $this->assertSame([], $parser->errors); - $this->assertSame( - 'KEY `updated_tz_ind2` ((convert_tz(`cache_updated`,_utf8mb4\'GMT\',_utf8mb4\'GB\')),' - . ' (convert_tz(`cache_updated`,_utf8mb4\'GMT\',_utf8mb4\'FR\')),' - . ' (convert_tz(`cache_updated`,_utf8mb4\'GMT\',_utf8mb4\'RU\'))' - . ') COMMENT \'my comment\'', - Key::build($component) - ); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/LimitTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/LimitTest.php deleted file mode 100644 index e8c29048..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/LimitTest.php +++ /dev/null @@ -1,42 +0,0 @@ -assertEquals(Limit::build($component), '0, 1'); - } - - public function testBuildWithOffset(): void - { - $component = new Limit(1, 2); - $this->assertEquals(Limit::build($component), '2, 1'); - } - - /** - * @dataProvider parseProvider - */ - public function testParse(string $test): void - { - $this->runParserTest($test); - } - - /** - * @return string[][] - */ - public static function parseProvider(): array - { - return [ - ['parser/parseLimitErr1'], - ['parser/parseLimitErr2'], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/LockExpressionTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/LockExpressionTest.php deleted file mode 100644 index e1cb4919..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/LockExpressionTest.php +++ /dev/null @@ -1,73 +0,0 @@ -getTokensList('table1 AS t1 READ LOCAL')); - $this->assertNotNull($component->table); - $this->assertEquals($component->table->table, 'table1'); - $this->assertEquals($component->table->alias, 't1'); - $this->assertEquals($component->type, 'READ LOCAL'); - } - - public function testParse2(): void - { - $component = LockExpression::parse(new Parser(), $this->getTokensList('table1 LOW_PRIORITY WRITE')); - $this->assertNotNull($component->table); - $this->assertEquals($component->table->table, 'table1'); - $this->assertEquals($component->type, 'LOW_PRIORITY WRITE'); - } - - /** - * @dataProvider parseErrProvider - */ - public function testParseErr(string $expr, string $error): void - { - $parser = new Parser(); - LockExpression::parse($parser, $this->getTokensList($expr)); - $errors = $this->getErrorsAsArray($parser); - $this->assertEquals($errors[0][0], $error); - } - - /** - * @return string[][] - */ - public static function parseErrProvider(): array - { - return [ - [ - 'table1 AS t1', - 'Unexpected end of LOCK expression.', - ], - [ - 'table1 AS t1 READ WRITE', - 'Unexpected keyword.', - ], - [ - 'table1 AS t1 READ 2', - 'Unexpected token.', - ], - ]; - } - - public function testBuild(): void - { - $component = [ - LockExpression::parse(new Parser(), $this->getTokensList('table1 AS t1 READ LOCAL')), - LockExpression::parse(new Parser(), $this->getTokensList('table2 LOW_PRIORITY WRITE')), - ]; - $this->assertEquals( - LockExpression::build($component), - 'table1 AS `t1` READ LOCAL, table2 LOW_PRIORITY WRITE' - ); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/OptionsArrayTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/OptionsArrayTest.php deleted file mode 100644 index 4d4d0b23..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/OptionsArrayTest.php +++ /dev/null @@ -1,134 +0,0 @@ -getTokensList('A B = /*comment*/ (test) C'), - [ - 'A' => 1, - 'B' => [ - 2, - 'var', - ], - 'C' => 3, - ] - ); - $this->assertEquals( - [ - 1 => 'A', - 2 => [ - 'name' => 'B', - 'expr' => '(test)', - 'value' => 'test', - 'equals' => true, - ], - 3 => 'C', - ], - $component->options - ); - } - - public function testParseExpr(): void - { - $component = OptionsArray::parse( - new Parser(), - $this->getTokensList('SUM = (3 + 5) RESULT = 8'), - [ - 'SUM' => [ - 1, - 'expr', - ['parenthesesDelimited' => true], - ], - 'RESULT' => [ - 2, - 'var', - ], - ] - ); - $this->assertEquals('(3 + 5)', (string) $component->has('SUM', true)); - $this->assertEquals('8', $component->has('RESULT')); - } - - public function testHas(): void - { - $component = OptionsArray::parse( - new Parser(), - $this->getTokensList('A B = /*comment*/ (test) C'), - [ - 'A' => 1, - 'B' => [ - 2, - 'var', - ], - 'C' => 3, - ] - ); - $this->assertTrue($component->has('A')); - $this->assertEquals('test', $component->has('B')); - $this->assertTrue($component->has('C')); - $this->assertFalse($component->has('D')); - } - - public function testRemove(): void - { - /* Assertion 1 */ - $component = new OptionsArray(['a', 'b', 'c']); - $this->assertTrue($component->remove('b')); - $this->assertFalse($component->remove('d')); - $this->assertEquals($component->options, [0 => 'a', 2 => 'c']); - - /* Assertion 2 */ - $component = OptionsArray::parse( - new Parser(), - $this->getTokensList('A B = /*comment*/ (test) C'), - [ - 'A' => 1, - 'B' => [ - 2, - 'var', - ], - 'C' => 3, - ] - ); - $this->assertEquals('test', $component->has('B')); - $component->remove('B'); - $this->assertFalse($component->has('B')); - } - - public function testMerge(): void - { - $component = new OptionsArray(['a']); - $component->merge(['b', 'c']); - $this->assertEquals($component->options, ['a', 'b', 'c']); - } - - public function testBuild(): void - { - $component = new OptionsArray( - [ - 'ALL', - 'SQL_CALC_FOUND_ROWS', - [ - 'name' => 'MAX_STATEMENT_TIME', - 'value' => '42', - 'equals' => true, - ], - ] - ); - $this->assertEquals( - OptionsArray::build($component), - 'ALL SQL_CALC_FOUND_ROWS MAX_STATEMENT_TIME=42' - ); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/OrderKeywordTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/OrderKeywordTest.php deleted file mode 100644 index 415d8ddb..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/OrderKeywordTest.php +++ /dev/null @@ -1,25 +0,0 @@ -assertEquals( - OrderKeyword::build( - [ - new OrderKeyword(new Expression('a'), 'ASC'), - new OrderKeyword(new Expression('b'), 'DESC'), - ] - ), - 'a ASC, b DESC' - ); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/ParameterDefinitionTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/ParameterDefinitionTest.php deleted file mode 100644 index a10fd9fe..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/ParameterDefinitionTest.php +++ /dev/null @@ -1,32 +0,0 @@ -getTokensList('(a INT, b INT') - ); - $this->assertEquals('a', $component[0]->name); - $this->assertEquals('b', $component[1]->name); - } - - public function testParseComplex(): void - { - $parser = new Parser(); - $component = ParameterDefinition::parse( - $parser, - $this->getTokensList('CREATE DEFINER=`root`@`%` PROCEDURE `foo`( $bar int )') - ); - $this->assertEquals('$bar', $component[0]->name); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/PartitionDefinitionTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/PartitionDefinitionTest.php deleted file mode 100644 index 9bd73e63..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/PartitionDefinitionTest.php +++ /dev/null @@ -1,36 +0,0 @@ -getTokensList('PARTITION p0 VALUES LESS THAN(1990)') - ); - $this->assertFalse($component->isSubpartition); - $this->assertEquals('p0', $component->name); - $this->assertEquals('LESS THAN', $component->type); - $this->assertEquals('(1990)', $component->expr->expr); - } - - public function testParseNameWithUnderscore(): void - { - $component = PartitionDefinition::parse( - new Parser(), - $this->getTokensList('PARTITION 2017_12 VALUES LESS THAN (\'2018-01-01 00:00:00\') ENGINE = MyISAM') - ); - $this->assertFalse($component->isSubpartition); - $this->assertEquals('2017_12', $component->name); - $this->assertEquals('LESS THAN', $component->type); - $this->assertEquals('(\'2018-01-01 00:00:00\')', $component->expr->expr); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/ReferenceTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/ReferenceTest.php deleted file mode 100644 index fd8fb58d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/ReferenceTest.php +++ /dev/null @@ -1,26 +0,0 @@ -getTokensList('tbl (id)')); - $this->assertEquals('tbl', $component->table->table); - $this->assertEquals(['id'], $component->columns); - } - - public function testBuild(): void - { - $component = new Reference(new Expression('`tbl`'), ['id']); - $this->assertEquals('`tbl` (`id`)', Reference::build($component)); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/RenameOperationTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/RenameOperationTest.php deleted file mode 100644 index e4d83a03..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Components/RenameOperationTest.php +++ /dev/null @@ -1,18 +0,0 @@ -getTokensList('a TO b, c TO d')); - $this->assertEquals(RenameOperation::build($component), 'a TO b, c TO d'); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Lexer/ContextTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Lexer/ContextTest.php deleted file mode 100644 index fe93ee4f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Lexer/ContextTest.php +++ /dev/null @@ -1,313 +0,0 @@ -assertEquals('\\PhpMyAdmin\\SqlParser\\Contexts\\ContextMySql50700', Context::$loadedContext); - $this->assertArrayHasKey('STORED', Context::$KEYWORDS); - $this->assertArrayNotHasKey('AUTHORS', Context::$KEYWORDS); - - // Restoring context. - Context::load(''); - $this->assertEquals('\\PhpMyAdmin\\SqlParser\\Contexts\\ContextMySql50700', Context::$defaultContext); - $this->assertArrayHasKey('STORED', Context::$KEYWORDS); - $this->assertArrayNotHasKey('AUTHORS', Context::$KEYWORDS); - } - - /** - * Test for loading closest SQL context - * - * @dataProvider contextLoadingProvider - */ - public function testLoadClosest(string $context, ?string $expected): void - { - $this->assertEquals($expected, Context::loadClosest($context)); - if ($expected !== null) { - $this->assertEquals('\\PhpMyAdmin\\SqlParser\\Contexts\\Context' . $expected, Context::$loadedContext); - $this->assertTrue(class_exists(Context::$loadedContext)); - } - - // Restoring context. - Context::load(''); - } - - /** - * @return array> - * @psalm-return array - */ - public static function contextLoadingProvider(): array - { - return [ - 'MySQL match' => [ - 'MySql50500', - 'MySql50500', - ], - 'MySQL strip' => [ - 'MySql50712', - 'MySql50700', - ], - 'MySQL fallback' => [ - 'MySql9897969594', - 'MySql50700', - ], - 'MariaDB match' => [ - 'MariaDb100000', - 'MariaDb100000', - ], - 'MariaDB stripg' => [ - 'MariaDb109900', - 'MariaDb100000', - ], - 'MariaDB fallback' => [ - 'MariaDb990000', - 'MariaDb100300', - ], - 'Invalid' => [ - 'Sql', - null, - ], - ]; - } - - /** - * @dataProvider contextNamesProvider - */ - public function testLoadAll(string $context): void - { - Context::load($context); - $this->assertEquals('\\PhpMyAdmin\\SqlParser\\Contexts\\Context' . $context, Context::$loadedContext); - - // Restoring context. - Context::load(''); - } - - /** - * @return string[][] - */ - public static function contextNamesProvider(): array - { - return [ - ['MySql50000'], - ['MySql50100'], - ['MySql50500'], - ['MySql50600'], - ['MySql50700'], - ['MySql80000'], - ['MySql80100'], - ['MySql80200'], - ['MySql80300'], - ['MySql80400'], - ['MySql90000'], - ['MySql90100'], - ['MariaDb100000'], - ['MariaDb100100'], - ['MariaDb100200'], - ['MariaDb100300'], - ['MariaDb100400'], - ['MariaDb100500'], - ['MariaDb100600'], - ['MariaDb100700'], - ['MariaDb100800'], - ['MariaDb100900'], - ['MariaDb101000'], - ['MariaDb101100'], - ['MariaDb110000'], - ['MariaDb110100'], - ['MariaDb110200'], - ['MariaDb110300'], - ['MariaDb110400'], - ['MariaDb110500'], - ['MariaDb110600'], - ['MariaDb110700'], - ]; - } - - /** - * @dataProvider contextClassesProvider - */ - public function testLoadAllByClass(string $context): void - { - Context::load($context); - $this->assertEquals('\\' . $context, Context::$loadedContext); - - // Restoring context. - Context::load(''); - } - - /** - * @return string[][] - */ - public static function contextClassesProvider(): array - { - return [ - [Contexts\ContextMySql50000::class], - [Contexts\ContextMySql50100::class], - [Contexts\ContextMySql50500::class], - [Contexts\ContextMySql50600::class], - [Contexts\ContextMySql50700::class], - [Contexts\ContextMySql80000::class], - [Contexts\ContextMySql80100::class], - [Contexts\ContextMySql80200::class], - [Contexts\ContextMySql80300::class], - [Contexts\ContextMySql80400::class], - [Contexts\ContextMySql90000::class], - [Contexts\ContextMySql90100::class], - [Contexts\ContextMariaDb100000::class], - [Contexts\ContextMariaDb100100::class], - [Contexts\ContextMariaDb100200::class], - [Contexts\ContextMariaDb100300::class], - [Contexts\ContextMariaDb100400::class], - [Contexts\ContextMariaDb100500::class], - [Contexts\ContextMariaDb100600::class], - [Contexts\ContextMariaDb100700::class], - [Contexts\ContextMariaDb100800::class], - [Contexts\ContextMariaDb100900::class], - [Contexts\ContextMariaDb101000::class], - [Contexts\ContextMariaDb101100::class], - [Contexts\ContextMariaDb110000::class], - [Contexts\ContextMariaDb110100::class], - [Contexts\ContextMariaDb110200::class], - [Contexts\ContextMariaDb110300::class], - [Contexts\ContextMariaDb110400::class], - [Contexts\ContextMariaDb110500::class], - [Contexts\ContextMariaDb110600::class], - [Contexts\ContextMariaDb110700::class], - ]; - } - - public function testLoadError(): void - { - $this->expectExceptionMessage( - 'Specified context ("\PhpMyAdmin\SqlParser\Contexts\ContextFoo") does not exist.' - ); - $this->expectException(Throwable::class); - Context::load('Foo'); - } - - /** - * @param int|string $mode - * - * @dataProvider providerForTestMode - */ - public function testMode($mode, int $expected): void - { - Context::setMode($mode); - $this->assertSame($expected, Context::getMode()); - } - - /** - * @return array> - * @psalm-return list - */ - public static function providerForTestMode(): array - { - return [ - [0, Context::SQL_MODE_NONE], - [1, 1], - ['', Context::SQL_MODE_NONE], - ['invalid', Context::SQL_MODE_NONE], - ['ALLOW_INVALID_DATES', Context::SQL_MODE_ALLOW_INVALID_DATES], - ['ANSI_QUOTES', Context::SQL_MODE_ANSI_QUOTES], - ['COMPAT_MYSQL', Context::SQL_MODE_COMPAT_MYSQL], - ['ERROR_FOR_DIVISION_BY_ZERO', Context::SQL_MODE_ERROR_FOR_DIVISION_BY_ZERO], - ['HIGH_NOT_PRECEDENCE', Context::SQL_MODE_HIGH_NOT_PRECEDENCE], - ['IGNORE_SPACE', Context::SQL_MODE_IGNORE_SPACE], - ['NO_AUTO_CREATE_USER', Context::SQL_MODE_NO_AUTO_CREATE_USER], - ['NO_AUTO_VALUE_ON_ZERO', Context::SQL_MODE_NO_AUTO_VALUE_ON_ZERO], - ['NO_BACKSLASH_ESCAPES', Context::SQL_MODE_NO_BACKSLASH_ESCAPES], - ['NO_DIR_IN_CREATE', Context::SQL_MODE_NO_DIR_IN_CREATE], - ['NO_ENGINE_SUBSTITUTION', Context::SQL_MODE_NO_ENGINE_SUBSTITUTION], - ['NO_FIELD_OPTIONS', Context::SQL_MODE_NO_FIELD_OPTIONS], - ['NO_KEY_OPTIONS', Context::SQL_MODE_NO_KEY_OPTIONS], - ['NO_TABLE_OPTIONS', Context::SQL_MODE_NO_TABLE_OPTIONS], - ['NO_UNSIGNED_SUBTRACTION', Context::SQL_MODE_NO_UNSIGNED_SUBTRACTION], - ['NO_ZERO_DATE', Context::SQL_MODE_NO_ZERO_DATE], - ['NO_ZERO_IN_DATE', Context::SQL_MODE_NO_ZERO_IN_DATE], - ['ONLY_FULL_GROUP_BY', Context::SQL_MODE_ONLY_FULL_GROUP_BY], - ['PIPES_AS_CONCAT', Context::SQL_MODE_PIPES_AS_CONCAT], - ['REAL_AS_FLOAT', Context::SQL_MODE_REAL_AS_FLOAT], - ['STRICT_ALL_TABLES', Context::SQL_MODE_STRICT_ALL_TABLES], - ['STRICT_TRANS_TABLES', Context::SQL_MODE_STRICT_TRANS_TABLES], - ['NO_ENCLOSING_QUOTES', Context::SQL_MODE_NO_ENCLOSING_QUOTES], - ['ANSI', Context::SQL_MODE_ANSI], - ['DB2', Context::SQL_MODE_DB2], - ['MAXDB', Context::SQL_MODE_MAXDB], - ['MSSQL', Context::SQL_MODE_MSSQL], - ['ORACLE', Context::SQL_MODE_ORACLE], - ['POSTGRESQL', Context::SQL_MODE_POSTGRESQL], - ['TRADITIONAL', Context::SQL_MODE_TRADITIONAL], - ]; - } - - public function testModeWithCombinedModes(): void - { - Context::setMode( - Context::SQL_MODE_REAL_AS_FLOAT | Context::SQL_MODE_ANSI_QUOTES | Context::SQL_MODE_IGNORE_SPACE - ); - $this->assertSame( - Context::SQL_MODE_REAL_AS_FLOAT | Context::SQL_MODE_ANSI_QUOTES | Context::SQL_MODE_IGNORE_SPACE, - Context::getMode() - ); - $this->assertTrue(Context::hasMode(Context::SQL_MODE_REAL_AS_FLOAT | Context::SQL_MODE_IGNORE_SPACE)); - $this->assertTrue(Context::hasMode(Context::SQL_MODE_ANSI_QUOTES)); - $this->assertFalse(Context::hasMode(Context::SQL_MODE_REAL_AS_FLOAT | Context::SQL_MODE_ALLOW_INVALID_DATES)); - $this->assertFalse(Context::hasMode(Context::SQL_MODE_ALLOW_INVALID_DATES)); - - Context::setMode(Context::SQL_MODE_TRADITIONAL); - $this->assertSame(Context::SQL_MODE_TRADITIONAL, Context::getMode()); - - Context::setMode(); - $this->assertSame(Context::SQL_MODE_NONE, Context::getMode()); - } - - public function testModeWithString(): void - { - Context::setMode('REAL_AS_FLOAT,ANSI_QUOTES,IGNORE_SPACE'); - $this->assertSame( - Context::SQL_MODE_REAL_AS_FLOAT | Context::SQL_MODE_ANSI_QUOTES | Context::SQL_MODE_IGNORE_SPACE, - Context::getMode() - ); - $this->assertTrue(Context::hasMode(Context::SQL_MODE_REAL_AS_FLOAT | Context::SQL_MODE_IGNORE_SPACE)); - $this->assertTrue(Context::hasMode(Context::SQL_MODE_ANSI_QUOTES)); - $this->assertFalse(Context::hasMode(Context::SQL_MODE_REAL_AS_FLOAT | Context::SQL_MODE_ALLOW_INVALID_DATES)); - $this->assertFalse(Context::hasMode(Context::SQL_MODE_ALLOW_INVALID_DATES)); - - Context::setMode('TRADITIONAL'); - $this->assertSame(Context::SQL_MODE_TRADITIONAL, Context::getMode()); - - Context::setMode(''); - $this->assertSame(Context::SQL_MODE_NONE, Context::getMode()); - } - - public function testEscape(): void - { - Context::setMode(Context::SQL_MODE_NO_ENCLOSING_QUOTES); - $this->assertEquals('test', Context::escape('test')); - - Context::setMode(Context::SQL_MODE_ANSI_QUOTES); - $this->assertEquals('"test"', Context::escape('test')); - - Context::setMode(); - $this->assertEquals('`test`', Context::escape('test')); - - $this->assertEquals(['`a`', '`b`'], Context::escape(['a', 'b'])); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Lexer/IsMethodsTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Lexer/IsMethodsTest.php deleted file mode 100644 index afc8948a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Lexer/IsMethodsTest.php +++ /dev/null @@ -1,138 +0,0 @@ -assertEquals(1 | Token::FLAG_KEYWORD_RESERVED, Context::isKeyword('SELECT')); - $this->assertEquals(1 | Token::FLAG_KEYWORD_RESERVED, Context::isKeyword('ALL')); - $this->assertEquals(1 | Token::FLAG_KEYWORD_RESERVED, Context::isKeyword('DISTINCT')); - - $this->assertEquals( - 1 | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, - Context::isKeyword('PRIMARY KEY') - ); - $this->assertEquals( - 1 | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - Context::isKeyword('CHARACTER SET') - ); - - $this->assertEquals(1 | Token::FLAG_KEYWORD_RESERVED, Context::isKeyword('FROM', true)); - $this->assertNull(Context::isKeyword('MODIFY', true)); - - $this->assertNull(Context::isKeyword('foo')); - $this->assertNull(Context::isKeyword('bar baz')); - } - - public function testIsOperator(): void - { - $this->assertEquals(Token::FLAG_OPERATOR_ARITHMETIC, Context::isOperator('%')); - $this->assertEquals(Token::FLAG_OPERATOR_LOGICAL, Context::isOperator('!')); - $this->assertEquals(Token::FLAG_OPERATOR_LOGICAL, Context::isOperator('&&')); - $this->assertEquals(Token::FLAG_OPERATOR_LOGICAL, Context::isOperator('<=>')); - $this->assertEquals(Token::FLAG_OPERATOR_BITWISE, Context::isOperator('&')); - $this->assertEquals(Token::FLAG_OPERATOR_ASSIGNMENT, Context::isOperator(':=')); - $this->assertEquals(Token::FLAG_OPERATOR_SQL, Context::isOperator(',')); - - $this->assertNull(Context::isOperator('a')); - } - - public function testIsWhitespace(): void - { - $this->assertTrue(Context::isWhitespace(' ')); - $this->assertTrue(Context::isWhitespace("\r")); - $this->assertTrue(Context::isWhitespace("\n")); - $this->assertTrue(Context::isWhitespace("\t")); - - $this->assertFalse(Context::isWhitespace('a')); - $this->assertFalse(Context::isWhitespace("\b")); - $this->assertFalse(Context::isWhitespace("\u1000")); - } - - public function testIsComment(): void - { - $this->assertEquals(Token::FLAG_COMMENT_BASH, Context::isComment('#')); - $this->assertEquals(Token::FLAG_COMMENT_C, Context::isComment('/*')); - $this->assertEquals(Token::FLAG_COMMENT_C, Context::isComment('*/')); - $this->assertEquals(Token::FLAG_COMMENT_SQL, Context::isComment('-- ')); - $this->assertEquals(Token::FLAG_COMMENT_SQL, Context::isComment("--\t")); - $this->assertEquals(Token::FLAG_COMMENT_SQL, Context::isComment("--\n")); - - $this->assertEquals(Token::FLAG_COMMENT_BASH, Context::isComment('# a comment')); - $this->assertEquals(Token::FLAG_COMMENT_C, Context::isComment('/*comment */')); - $this->assertEquals(Token::FLAG_COMMENT_SQL, Context::isComment('-- my comment')); - - $this->assertNull(Context::isComment('')); - $this->assertNull(Context::isComment('--not a comment')); - } - - public function testIsBool(): void - { - $this->assertTrue(Context::isBool('true')); - $this->assertTrue(Context::isBool('false')); - - $this->assertFalse(Context::isBool('tru')); - $this->assertFalse(Context::isBool('falsee')); - } - - public function testIsNumber(): void - { - $this->assertTrue(Context::isNumber('+')); - $this->assertTrue(Context::isNumber('-')); - $this->assertTrue(Context::isNumber('.')); - $this->assertTrue(Context::isNumber('0')); - $this->assertTrue(Context::isNumber('1')); - $this->assertTrue(Context::isNumber('2')); - $this->assertTrue(Context::isNumber('3')); - $this->assertTrue(Context::isNumber('4')); - $this->assertTrue(Context::isNumber('5')); - $this->assertTrue(Context::isNumber('6')); - $this->assertTrue(Context::isNumber('7')); - $this->assertTrue(Context::isNumber('8')); - $this->assertTrue(Context::isNumber('9')); - $this->assertTrue(Context::isNumber('e')); - $this->assertTrue(Context::isNumber('E')); - } - - public function testIsString(): void - { - $this->assertEquals(Token::FLAG_STRING_SINGLE_QUOTES, Context::isString("'")); - $this->assertEquals(Token::FLAG_STRING_DOUBLE_QUOTES, Context::isString('"')); - - $this->assertEquals(Token::FLAG_STRING_SINGLE_QUOTES, Context::isString("'foo bar'")); - $this->assertEquals(Token::FLAG_STRING_DOUBLE_QUOTES, Context::isString('"foo bar"')); - - $this->assertNull(Context::isString('')); - $this->assertNull(Context::isString('foo bar')); - } - - public function testIsSymbol(): void - { - $this->assertEquals(Token::FLAG_SYMBOL_VARIABLE, Context::isSymbol('@')); - $this->assertEquals(Token::FLAG_SYMBOL_BACKTICK, Context::isSymbol('`')); - - $this->assertEquals(Token::FLAG_SYMBOL_VARIABLE, Context::isSymbol('@id')); - $this->assertEquals(Token::FLAG_SYMBOL_BACKTICK, Context::isSymbol('`id`')); - - $this->assertNull(Context::isSymbol('')); - $this->assertNull(Context::isSymbol('id')); - } - - public function testisSeparator(): void - { - $this->assertTrue(Context::isSeparator('+')); - $this->assertTrue(Context::isSeparator('.')); - - $this->assertFalse(Context::isSeparator('1')); - $this->assertFalse(Context::isSeparator('E')); - $this->assertFalse(Context::isSeparator('_')); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Lexer/LexerTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Lexer/LexerTest.php deleted file mode 100644 index e310c94f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Lexer/LexerTest.php +++ /dev/null @@ -1,101 +0,0 @@ -error('error #1', 'foo', 1, 2); - $lexer->error( - sprintf('%2$s #%1$d', 2, 'error'), - 'bar', - 3, - 4 - ); - - $this->assertEquals( - $lexer->errors, - [ - new LexerException('error #1', 'foo', 1, 2), - new LexerException('error #2', 'bar', 3, 4), - ] - ); - } - - public function testErrorStrict(): void - { - $this->expectExceptionCode(4); - $this->expectExceptionMessage('strict error'); - $this->expectException(LexerException::class); - $lexer = new Lexer(''); - $lexer->strict = true; - - $lexer->error('strict error', 'foo', 1, 4); - } - - /** - * @dataProvider lexProvider - */ - public function testLex(string $test): void - { - $this->runParserTest($test); - } - - /** - * @return string[][] - */ - public static function lexProvider(): array - { - return [ - ['lexer/lex'], - ['lexer/lexUtf8'], - ['lexer/lexBool'], - ['lexer/lexComment'], - ['lexer/lexCommentEnd'], - ['lexer/lexDelimiter'], - ['lexer/lexDelimiter2'], - ['lexer/lexDelimiterErr1'], - ['lexer/lexDelimiterErr2'], - ['lexer/lexDelimiterErr3'], - ['lexer/lexDelimiterLen'], - ['lexer/lexKeyword'], - ['lexer/lexKeyword2'], - ['lexer/lexNumber'], - ['lexer/lexOperator'], - ['lexer/lexOperatorStarIsArithmetic'], - ['lexer/lexOperatorStarIsWildcard'], - ['lexer/lexEmptyCStyleComment'], - ['lexer/lexString'], - ['lexer/lexStringErr1'], - ['lexer/lexSymbol'], - ['lexer/lexSymbolErr1'], - ['lexer/lexSymbolErr2'], - ['lexer/lexSymbolErr3'], - ['lexer/lexSymbolUser1'], - ['lexer/lexSymbolUser2'], - ['lexer/lexSymbolUser3'], - ['lexer/lexSymbolUser4_mariadb_100400'], - ['lexer/lexSymbolUser5_mariadb_100400'], - ['lexer/lexWhitespace'], - ['lexer/lexLabel1'], - ['lexer/lexLabel2'], - ['lexer/lexNoLabel'], - ['lexer/lexWildcardThenComment'], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Lexer/TokenTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Lexer/TokenTest.php deleted file mode 100644 index eb54dbed..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Lexer/TokenTest.php +++ /dev/null @@ -1,92 +0,0 @@ -assertEquals($tok->value, 'SELECT'); - - $tok = new Token('aS', Token::TYPE_KEYWORD, Token::FLAG_KEYWORD_RESERVED); - $this->assertEquals($tok->value, 'AS'); - } - - public function testExtractWhitespace(): void - { - $tok = new Token(" \t \r \n ", Token::TYPE_WHITESPACE); - $this->assertEquals($tok->value, ' '); - } - - public function testExtractBool(): void - { - $tok = new Token('false', Token::TYPE_BOOL); - $this->assertFalse($tok->value); - - $tok = new Token('True', Token::TYPE_BOOL); - $this->assertTrue($tok->value); - } - - public function testExtractNumber(): void - { - $tok = new Token('--42', Token::TYPE_NUMBER, Token::FLAG_NUMBER_NEGATIVE); - $this->assertEquals($tok->value, 42); - - $tok = new Token('---42', Token::TYPE_NUMBER, Token::FLAG_NUMBER_NEGATIVE); - $this->assertEquals($tok->value, -42); - - $tok = new Token('0xFE', Token::TYPE_NUMBER, Token::FLAG_NUMBER_HEX); - $this->assertEquals($tok->value, 0xFE); - - $tok = new Token('-0xEF', Token::TYPE_NUMBER, Token::FLAG_NUMBER_NEGATIVE | Token::FLAG_NUMBER_HEX); - $this->assertEquals($tok->value, -0xEF); - - $tok = new Token('3.14', Token::TYPE_NUMBER, Token::FLAG_NUMBER_FLOAT); - $this->assertEquals($tok->value, 3.14); - } - - public function testExtractString(): void - { - $tok = new Token('"foo bar "', Token::TYPE_STRING); - $this->assertEquals($tok->value, 'foo bar '); - - $tok = new Token("' bar foo '", Token::TYPE_STRING); - $this->assertEquals($tok->value, ' bar foo '); - - $tok = new Token("'\''", Token::TYPE_STRING); - $this->assertEquals($tok->value, '\''); - - $tok = new Token('"\c\d\e\f\g\h\i\j\k\l\m\p\q\s\u\v\w\x\y\z"', Token::TYPE_STRING); - $this->assertEquals($tok->value, 'cdefghijklmpqsuvwxyz'); - } - - public function testExtractSymbol(): void - { - $tok = new Token('@foo', Token::TYPE_SYMBOL, Token::FLAG_SYMBOL_VARIABLE); - $this->assertEquals($tok->value, 'foo'); - - $tok = new Token('`foo`', Token::TYPE_SYMBOL, Token::FLAG_SYMBOL_BACKTICK); - $this->assertEquals($tok->value, 'foo'); - - $tok = new Token('@`foo`', Token::TYPE_SYMBOL, Token::FLAG_SYMBOL_VARIABLE); - $this->assertEquals($tok->value, 'foo'); - - $tok = new Token(':foo', Token::TYPE_SYMBOL, Token::FLAG_SYMBOL_PARAMETER); - $this->assertEquals($tok->value, 'foo'); - - $tok = new Token('?', Token::TYPE_SYMBOL, Token::FLAG_SYMBOL_PARAMETER); - $this->assertEquals($tok->value, '?'); - } - - public function testInlineToken(): void - { - $token = new Token(" \r \n \t "); - $this->assertEquals($token->getInlineToken(), ' \r \n \t '); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Lexer/TokensListTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Lexer/TokensListTest.php deleted file mode 100644 index e1479d75..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Lexer/TokensListTest.php +++ /dev/null @@ -1,177 +0,0 @@ -tokens = [ - new Token('SELECT', Token::TYPE_KEYWORD), - new Token(' ', Token::TYPE_WHITESPACE), - new Token('*', Token::TYPE_OPERATOR), - new Token(' ', Token::TYPE_WHITESPACE), - new Token('FROM', Token::TYPE_KEYWORD, Token::FLAG_KEYWORD_RESERVED), - new Token(' ', Token::TYPE_WHITESPACE), - new Token('`test`', Token::TYPE_SYMBOL), - new Token(' ', Token::TYPE_WHITESPACE), - new Token('WHERE', Token::TYPE_KEYWORD, Token::FLAG_KEYWORD_RESERVED), - new Token(' ', Token::TYPE_WHITESPACE), - new Token('name', Token::TYPE_NONE), - new Token('=', Token::TYPE_OPERATOR), - new Token('fa', Token::TYPE_NONE), - ]; - } - - public function testBuild(): void - { - $list = new TokensList($this->tokens); - $this->assertEquals('SELECT * FROM `test` WHERE name=fa', TokensList::build($list)); - } - - public function testAdd(): void - { - $list = new TokensList(); - foreach ($this->tokens as $token) { - $list->add($token); - } - - $this->assertEquals(new TokensList($this->tokens), $list); - } - - public function testGetNext(): void - { - $list = new TokensList($this->tokens); - $this->assertEquals($this->tokens[0], $list->getNext()); - $this->assertEquals($this->tokens[2], $list->getNext()); - $this->assertEquals($this->tokens[4], $list->getNext()); - $this->assertEquals($this->tokens[6], $list->getNext()); - $this->assertEquals($this->tokens[8], $list->getNext()); - $this->assertEquals($this->tokens[10], $list->getNext()); - $this->assertEquals($this->tokens[11], $list->getNext()); - $this->assertEquals($this->tokens[12], $list->getNext()); - $this->assertNull($list->getNext()); - } - - public function testGetPrevious(): void - { - $list = new TokensList($this->tokens); - $list->idx = 7; - $this->assertEquals($this->tokens[6], $list->getPrevious()); - $this->assertEquals($this->tokens[4], $list->getPrevious()); - $this->assertEquals($this->tokens[2], $list->getPrevious()); - $this->assertEquals($this->tokens[0], $list->getPrevious()); - $this->assertNull($list->getPrevious()); - } - - public function testGetNextOfType(): void - { - $list = new TokensList($this->tokens); - $this->assertEquals($this->tokens[0], $list->getNextOfType(Token::TYPE_KEYWORD)); - $this->assertEquals($this->tokens[4], $list->getNextOfType([Token::TYPE_KEYWORD])); - $this->assertEquals($this->tokens[6], $list->getNextOfType([Token::TYPE_KEYWORD, Token::TYPE_SYMBOL])); - $this->assertEquals($this->tokens[8], $list->getNextOfType([Token::TYPE_KEYWORD, Token::TYPE_SYMBOL])); - $this->assertNull($list->getNextOfType(Token::TYPE_KEYWORD)); - } - - public function testGetPreviousOfType(): void - { - $list = new TokensList($this->tokens); - $list->idx = 9; - $this->assertEquals($this->tokens[8], $list->getPreviousOfType([Token::TYPE_KEYWORD, Token::TYPE_SYMBOL])); - $this->assertEquals($this->tokens[6], $list->getPreviousOfType([Token::TYPE_KEYWORD, Token::TYPE_SYMBOL])); - $this->assertEquals($this->tokens[4], $list->getPreviousOfType([Token::TYPE_KEYWORD])); - $this->assertEquals($this->tokens[0], $list->getPreviousOfType(Token::TYPE_KEYWORD)); - $this->assertNull($list->getPreviousOfType(Token::TYPE_KEYWORD)); - } - - public function testGetNextOfTypeAndFlag(): void - { - $list = new TokensList($this->tokens); - $this->assertEquals($this->tokens[4], $list->getNextOfTypeAndFlag( - Token::TYPE_KEYWORD, - Token::FLAG_KEYWORD_RESERVED - )); - $this->assertEquals($this->tokens[8], $list->getNextOfTypeAndFlag( - Token::TYPE_KEYWORD, - Token::FLAG_KEYWORD_RESERVED - )); - $this->assertNull($list->getNextOfTypeAndFlag(Token::TYPE_KEYWORD, Token::FLAG_KEYWORD_RESERVED)); - } - - public function testGetNextOfTypeAndValue(): void - { - $list = new TokensList($this->tokens); - $this->assertEquals($this->tokens[0], $list->getNextOfTypeAndValue(Token::TYPE_KEYWORD, 'SELECT')); - $this->assertNull($list->getNextOfTypeAndValue(Token::TYPE_KEYWORD, 'SELECT')); - } - - public function testArrayAccess(): void - { - $list = new TokensList(); - - // offsetSet(NULL, $value) - foreach ($this->tokens as $token) { - $list[] = $token; - } - - // offsetSet($offset, $value) - $list[2] = $this->tokens[2]; - - // offsetSet($offset, $value) with overflowed offset - $list[$list->count] = $this->tokens[1]; - $this->assertSame($list[$list->count - 1], $this->tokens[1]); - $this->assertSame($list->count, count($this->tokens) + 1); - - // offsetGet($offset) with negative offset - $this->assertNull($list[-1]); - - // offsetGet($offset) with overflow offset - $this->assertNull($list[$list->count]); - - // offsetGet($offset) - for ($i = 0, $count = count($this->tokens); $i < $count; ++$i) { - $this->assertSame($this->tokens[$i], $list[$i]); - } - - // offsetExists($offset) - $this->assertArrayHasKey(2, $list); - $this->assertArrayNotHasKey(14, $list); - $this->assertArrayNotHasKey(-8, $list); - - // offsetUnset($offset) - $currentCountTokens = $list->count; - unset($list[2]); - $newCountTokens = $list->count; - $this->assertSame($this->tokens[3], $list[2]); - $this->assertSame($currentCountTokens - 1, $newCountTokens); - - // offsetUnset($offset) with invalid offset (negative or overflowed) - $currentListTokens = $list->tokens; - unset($list[-1]); - $this->assertSame($currentListTokens, $list->tokens); - $this->assertSame($newCountTokens, $list->count); // No unset actually performed. - unset($list[999]); - $this->assertSame($currentListTokens, $list->tokens); - $this->assertSame($newCountTokens, $list->count); // No unset actually performed. - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Misc/BugsTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Misc/BugsTest.php deleted file mode 100644 index 4b6e3877..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Misc/BugsTest.php +++ /dev/null @@ -1,49 +0,0 @@ -runParserTest($test); - } - - /** - * @return string[][] - */ - public static function bugProvider(): array - { - return [ - ['bugs/fuzz1'], - ['bugs/fuzz2'], - ['bugs/fuzz3'], - ['bugs/fuzz4'], - ['bugs/gh9'], - ['bugs/gh14'], - ['bugs/gh16'], - ['bugs/gh202'], - ['bugs/gh234'], - ['bugs/gh317'], - ['bugs/gh412'], - ['bugs/gh478'], - ['bugs/gh492'], - ['bugs/gh496'], - ['bugs/gh498'], - ['bugs/gh499'], - ['bugs/gh508'], - ['bugs/gh511'], - ['bugs/pma11800'], - ['bugs/pma11836'], - ['bugs/pma11843'], - ['bugs/pma11879'], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Misc/ParameterTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Misc/ParameterTest.php deleted file mode 100644 index e5ba4276..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Misc/ParameterTest.php +++ /dev/null @@ -1,29 +0,0 @@ -runParserTest($test); - } - - /** - * @return string[][] - */ - public static function parameterProvider(): array - { - return [ - ['misc/parseParameter'], - ['misc/parseParameter2'], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Misc/UtfStringTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Misc/UtfStringTest.php deleted file mode 100644 index 4434d330..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Misc/UtfStringTest.php +++ /dev/null @@ -1,126 +0,0 @@ -assertArrayHasKey(self::TEST_PHRASE_LEN - 1, $str); - $this->assertArrayNotHasKey(-1, $str); - $this->assertArrayNotHasKey(self::TEST_PHRASE_LEN, $str); - - // offsetGet - $this->assertEquals('.', $str[self::TEST_PHRASE_LEN - 1]); - $this->assertNull($str[-1]); - $this->assertNull($str[self::TEST_PHRASE_LEN]); - } - - public function testSet(): void - { - $this->expectExceptionMessage('Not implemented.'); - $this->expectException(Throwable::class); - $str = new UtfString(''); - $str[0] = 'a'; - } - - public function testUnset(): void - { - $this->expectExceptionMessage('Not implemented.'); - $this->expectException(Throwable::class); - $str = new UtfString(''); - unset($str[0]); - } - - public function testGetCharLength(): void - { - $this->assertEquals(1, UtfString::getCharLength(chr(0x00))); // 00000000 - $this->assertEquals(1, UtfString::getCharLength(chr(0x7F))); // 01111111 - - $this->assertEquals(2, UtfString::getCharLength(chr(0xC0))); // 11000000 - $this->assertEquals(2, UtfString::getCharLength(chr(0xDF))); // 11011111 - - $this->assertEquals(3, UtfString::getCharLength(chr(0xE0))); // 11100000 - $this->assertEquals(3, UtfString::getCharLength(chr(0xEF))); // 11101111 - - $this->assertEquals(4, UtfString::getCharLength(chr(0xF0))); // 11110000 - $this->assertEquals(4, UtfString::getCharLength(chr(0xF7))); // 11110111 - - $this->assertEquals(5, UtfString::getCharLength(chr(0xF8))); // 11111000 - $this->assertEquals(5, UtfString::getCharLength(chr(0xFB))); // 11111011 - - $this->assertEquals(6, UtfString::getCharLength(chr(0xFC))); // 11111100 - $this->assertEquals(6, UtfString::getCharLength(chr(0xFD))); // 11111101 - } - - public function testToString(): void - { - $str = new UtfString(self::TEST_PHRASE); - $this->assertEquals(self::TEST_PHRASE, (string) $str); - } - - /** - * Test access to string. - * - * @dataProvider utf8StringsProvider - */ - public function testAccess(string $text, ?string $pos10, ?string $pos20): void - { - $str = new UtfString($text); - $this->assertEquals($pos10, $str->offsetGet(10)); - $this->assertEquals($pos20, $str->offsetGet(20)); - $this->assertEquals($pos10, $str->offsetGet(10)); - } - - /** - * @return array> - * @psalm-return array - */ - public static function utf8StringsProvider(): array - { - return [ - 'ascii' => [ - 'abcdefghijklmnopqrstuvwxyz', - 'k', - 'u', - ], - 'unicode' => [ - 'áéíóúýěřťǔǐǒǎšďȟǰǩľžčǚň', - 'ǐ', - 'č', - ], - 'emoji' => [ - '😂😄😃😀😊😉😍😘😚😗😂👿😮😨😱😠😡😤😖😆😋👯', - '😂', - '😋', - ], - 'iso' => [ - "P\xf8\xed\xb9ern\xec \xbelu\xbbou\xe8k\xfd k\xf3d \xfap\xecl \xef\xe1belsk\xe9 k\xf3dy", - null, - null, - ], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/AlterStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/AlterStatementTest.php deleted file mode 100644 index 19071502..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/AlterStatementTest.php +++ /dev/null @@ -1,114 +0,0 @@ -runParserTest($test); - } - - /** - * @return string[][] - */ - public static function alterProvider(): array - { - return [ - ['parser/parseAlter'], - ['parser/parseAlter2'], - ['parser/parseAlter3'], - ['parser/parseAlter4'], - ['parser/parseAlter5'], - ['parser/parseAlter6'], - ['parser/parseAlter7'], - ['parser/parseAlter8'], - ['parser/parseAlter9'], - ['parser/parseAlter10'], - ['parser/parseAlter11'], - ['parser/parseAlter12'], - ['parser/parseAlter13'], - ['parser/parseAlter14'], - ['parser/parseAlterErr'], - ['parser/parseAlterErr2'], - ['parser/parseAlterErr3'], - ['parser/parseAlterErr4'], - ['parser/parseAlterTableRenameIndex1'], - ['parser/parseAlterTableRenameIndex2'], - ['parser/parseAlterTableRenameKey1'], - ['parser/parseAlterTableRenameKey2'], - ['parser/parseAlterTablePartitionByRange1'], - ['parser/parseAlterTablePartitionByRange2'], - ['parser/parseAlterTableCoalescePartition'], - ['parser/parseAlterTableAddColumnWithCheck'], - ['parser/parseAlterTableAddSpatialIndex1'], - ['parser/parseAlterTableDropAddIndex1'], - ['parser/parseAlterTableDropColumn1'], - ['parser/parseAlterTableModifyColumn'], - ['parser/parseAlterTableModifyColumnEnum1'], - ['parser/parseAlterTableModifyColumnEnum2'], - ['parser/parseAlterTableModifyColumnEnum3'], - ['parser/parseAlterWithInvisible'], - ['parser/parseAlterTableCharacterSet1'], - ['parser/parseAlterTableCharacterSet2'], - ['parser/parseAlterTableCharacterSet3'], - ['parser/parseAlterTableCharacterSet4'], - ['parser/parseAlterTableCharacterSet5'], - ['parser/parseAlterTableCharacterSet6'], - ['parser/parseAlterTableCharacterSet7'], - ['parser/parseAlterUser'], - ['parser/parseAlterUser1'], - ['parser/parseAlterUser2'], - ['parser/parseAlterUser3'], - ['parser/parseAlterUser4'], - ['parser/parseAlterUser5'], - ['parser/parseAlterUser6'], - ['parser/parseAlterUser7'], - ['parser/parseAlterUser8'], - ['parser/parseAlterUser9'], - ['parser/parseAlterUser10'], - ['parser/parseAlterEvent'], - ['parser/parseAlterEvent2'], - ['parser/parseAlterEvent3'], - ['parser/parseAlterEvent4'], - ['parser/parseAlterEvent5'], - ['parser/parseAlterEvent6'], - ['parser/parseAlterEvent7'], - ['parser/parseAlterEvent8'], - ['parser/parseAlterEvent9'], - ['parser/parseAlterEventComplete'], - ['parser/parseAlterEventErr'], - ['parser/parseAlterEventOnScheduleAt'], - ['parser/parseAlterEventOnScheduleAt2'], - ['parser/parseAlterEventOnScheduleEvery'], - ['parser/parseAlterEventOnScheduleEvery2'], - ['parser/parseAlterEventOnScheduleEvery3'], - ['parser/parseAlterEventOnScheduleEvery4'], - ['parser/parseAlterEventOnScheduleEvery5'], - ['parser/parseAlterEventOnScheduleEvery6'], - ['parser/parseAlterEventWithDefiner'], - ['parser/parseAlterEventWithOtherDefiners'], - ['parser/parseAlterRenameColumn'], - ['parser/parseAlterRenameColumns'], - ['parser/parseAlterFunction1'], - ['parser/parseAlterFunction2'], - ['parser/parseAlterFunction3'], - ['parser/parseAlterFunction4'], - ['parser/parseAlterFunction5'], - ['parser/parseAlterFunction6'], - ['parser/parseAlterProcedure1'], - ['parser/parseAlterProcedure2'], - ['parser/parseAlterProcedure3'], - ['parser/parseAlterProcedure4'], - ['parser/parseAlterProcedure5'], - ['parser/parseAlterProcedure6'], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/AnalyzeStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/AnalyzeStatementTest.php deleted file mode 100644 index 9c8543a6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/AnalyzeStatementTest.php +++ /dev/null @@ -1,31 +0,0 @@ -runParserTest($test); - } - - /** - * @return string[][] - */ - public static function analyzeProvider(): array - { - return [ - ['parser/parseAnalyzeTable'], - ['parser/parseAnalyzeTable1'], - ['parser/parseAnalyzeErr1'], - ['parser/parseAnalyzeErr2'], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/CallStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/CallStatementTest.php deleted file mode 100644 index cfab7e5d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/CallStatementTest.php +++ /dev/null @@ -1,32 +0,0 @@ -runParserTest($test); - } - - /** - * @return string[][] - */ - public static function callProvider(): array - { - return [ - ['parser/parseCall'], - ['parser/parseCall2'], - ['parser/parseCall3'], - ['parser/parseCall4'], - ['parser/parseCall5'], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/CreateStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/CreateStatementTest.php deleted file mode 100644 index c6f1e5a3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/CreateStatementTest.php +++ /dev/null @@ -1,88 +0,0 @@ -runParserTest($test); - } - - /** - * @return string[][] - */ - public static function createProvider(): array - { - return [ - ['parser/parseCreateDatabase'], - ['parser/parseCreateDatabaseErr'], - ['parser/parseCreateFunction'], - ['parser/parseCreateFunctionErr1'], - ['parser/parseCreateFunctionErr2'], - ['parser/parseCreateFunctionErr3'], - ['parser/parseCreateProcedure'], - ['parser/parseCreateProcedure1'], - ['parser/parseCreateProcedure2'], - ['parser/parseCreateProcedure3'], - ['parser/parseCreateProcedure4'], - ['parser/parseCreateSchema'], - ['parser/parseCreateSchemaErr'], - ['parser/parseCreateTable'], - ['parser/parseCreateTable2'], - ['parser/parseCreateTable3'], - ['parser/parseCreateTable4'], - ['parser/parseCreateTable5'], - ['parser/parseCreateTable6'], - ['parser/parseCreateTable7'], - ['parser/parseCreateTable8'], - ['parser/parseCreateTable9'], - ['parser/parseCreateTable10'], - ['parser/parseCreateTable11'], - ['parser/parseCreateTable12'], - ['parser/parseCreateTable13'], - ['parser/parseCreateTable14'], - ['parser/parseCreateTable15'], - ['parser/parseCreateTable16'], - ['parser/parseCreateTable17'], - ['parser/parseCreateTable18'], - ['parser/parseCreateTableErr1'], - ['parser/parseCreateTableErr2'], - ['parser/parseCreateTableErr3'], - ['parser/parseCreateTableErr4'], - ['parser/parseCreateTableErr5'], - ['parser/parseCreateTableSelect'], - ['parser/parseCreateTableAsSelect'], - ['parser/parseCreateTableLike'], - ['parser/parseCreateTableSpatial'], - ['parser/parseCreateTableSRID'], - ['parser/parseCreateTableTimestampWithPrecision'], - ['parser/parseCreateTableEnforcedCheck'], - ['parser/parseCreateTableNotEnforcedCheck'], - ['parser/parseCreateTableWithInvisibleKey'], - ['parser/parseCreateTableWithParser'], - ['parser/parseCreateTrigger'], - ['parser/parseCreateUser1'], - ['parser/parseCreateUser2'], - ['parser/parseCreateView'], - ['parser/parseCreateView2'], - ['parser/parseCreateView3'], - ['parser/parseCreateView4'], - ['parser/parseCreateView5'], - ['parser/parseCreateViewMultiple'], - ['parser/parseCreateViewWithoutQuotes'], - ['parser/parseCreateViewWithQuotes'], - ['parser/parseCreateViewWithWrongSyntax'], - ['parser/parseCreateViewWithUnion'], - ['parser/parseCreateViewAsWithAs'], - ['parser/parseCreateOrReplaceView1'], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/DeleteStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/DeleteStatementTest.php deleted file mode 100644 index 8d4c8744..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/DeleteStatementTest.php +++ /dev/null @@ -1,52 +0,0 @@ -runParserTest($test); - } - - /** - * @return string[][] - */ - public static function deleteProvider(): array - { - return [ - ['parser/parseDelete'], - ['parser/parseDelete2'], - ['parser/parseDelete3'], - ['parser/parseDelete4'], - ['parser/parseDelete5'], - ['parser/parseDelete6'], - ['parser/parseDelete7'], - ['parser/parseDelete8'], - ['parser/parseDelete9'], - ['parser/parseDelete10'], - ['parser/parseDelete11'], - ['parser/parseDelete12'], - ['parser/parseDeleteErr1'], - ['parser/parseDeleteErr2'], - ['parser/parseDeleteErr3'], - ['parser/parseDeleteErr4'], - ['parser/parseDeleteErr5'], - ['parser/parseDeleteErr6'], - ['parser/parseDeleteErr7'], - ['parser/parseDeleteErr8'], - ['parser/parseDeleteErr9'], - ['parser/parseDeleteErr10'], - ['parser/parseDeleteErr11'], - ['parser/parseDeleteErr12'], - ['parser/parseDeleteJoin'], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/DropStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/DropStatementTest.php deleted file mode 100644 index 21c41eb6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/DropStatementTest.php +++ /dev/null @@ -1,29 +0,0 @@ -runParserTest($test); - } - - /** - * @return string[][] - */ - public static function dropProvider(): array - { - return [ - ['parser/parseDrop'], - ['parser/parseDrop2'], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/ExplainStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/ExplainStatementTest.php deleted file mode 100644 index ed9e5ddf..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/ExplainStatementTest.php +++ /dev/null @@ -1,46 +0,0 @@ -runParserTest($test); - } - - /** - * @return string[][] - */ - public static function explainProvider(): array - { - return [ - ['parser/parseExplain'], - ['parser/parseExplain1'], - ['parser/parseExplain2'], - ['parser/parseExplain3'], - ['parser/parseExplain4'], - ['parser/parseExplain5'], - ['parser/parseExplain6'], - ['parser/parseExplain7'], - ['parser/parseExplain8'], - ['parser/parseExplain9'], - ['parser/parseExplain10'], - ['parser/parseExplain11'], - ['parser/parseExplain12'], - ['parser/parseExplain13'], - ['parser/parseExplain14'], - ['parser/parseExplainErr'], - ['parser/parseExplainErr1'], - ['parser/parseExplainErr2'], - ['parser/parseExplainErr3'], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/InsertStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/InsertStatementTest.php deleted file mode 100644 index e3c070a8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/InsertStatementTest.php +++ /dev/null @@ -1,37 +0,0 @@ -runParserTest($test); - } - - /** - * @return string[][] - */ - public static function insertProvider(): array - { - return [ - ['parser/parseInsert'], - ['parser/parseInsertFunction'], - ['parser/parseInsertSelect'], - ['parser/parseInsertOnDuplicateKey'], - ['parser/parseInsertSetOnDuplicateKey'], - ['parser/parseInsertSelectOnDuplicateKey'], - ['parser/parseInsertOnDuplicateKeyErr'], - ['parser/parseInsertErr'], - ['parser/parseInsertErr2'], - ['parser/parseInsertIntoErr'], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/KillStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/KillStatementTest.php deleted file mode 100644 index 335c96a2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/KillStatementTest.php +++ /dev/null @@ -1,69 +0,0 @@ -runParserTest($test); - } - - /** - * @return string[][] - */ - public static function killProvider(): array - { - return [ - ['parser/parseKill'], - ['parser/parseKill2'], - ['parser/parseKill3'], - ['parser/parseKillConnection'], - ['parser/parseKillQuery'], - ['parser/parseKillErr1'], - ['parser/parseKillErr2'], - ['parser/parseKillErr3'], - ['parser/parseKillErr4'], - ]; - } - - /** @dataProvider buildKillProvider */ - public function testBuildKill(string $sql): void - { - $parser = new Parser($sql); - $this->assertCount(1, $parser->statements); - $statement = $parser->statements[0]; - $this->assertInstanceOf(KillStatement::class, $statement); - $builtSql = $statement->build(); - $this->assertEquals($sql, $builtSql); - } - - /** - * @return array> - * @psalm-return list> - */ - public static function buildKillProvider(): array - { - return [ - ['KILL (SELECT 3 + 4)'], - ['KILL QUERY 4'], - ['KILL CONNECTION 5'], - ['KILL 6'], - ['KILL QUERY (SELECT 7)'], - ['KILL SOFT QUERY (SELECT 8)'], - ['KILL HARD 9'], - ['KILL USER 10'], - ['KILL SOFT (SELECT 1)'], - ['KILL (2)'], - ['KILL QUERY ID (2)'], - ['KILL QUERY ID (SELECT ID FROM INFORMATION_SCHEMA.PROCESSLIST LIMIT 0, 1)'], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/LoadStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/LoadStatementTest.php deleted file mode 100644 index 7c623bbe..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/LoadStatementTest.php +++ /dev/null @@ -1,50 +0,0 @@ -getData('parser/parseLoad1'); - $parser = new Parser($data['query']); - $stmt = $parser->statements[0]; - $this->assertEquals(10, $stmt->options->has('CONCURRENT')); - } - - /** - * @dataProvider loadProvider - */ - public function testLoad(string $test): void - { - $this->runParserTest($test); - } - - /** - * @return string[][] - */ - public static function loadProvider(): array - { - return [ - ['parser/parseLoad1'], - ['parser/parseLoad2'], - ['parser/parseLoad3'], - ['parser/parseLoad4'], - ['parser/parseLoad5'], - ['parser/parseLoad6'], - ['parser/parseLoad7'], - ['parser/parseLoad8'], - ['parser/parseLoadErr1'], - ['parser/parseLoadErr2'], - ['parser/parseLoadErr3'], - ['parser/parseLoadErr4'], - ['parser/parseLoadErr5'], - ['parser/parseLoadErr6'], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/LockStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/LockStatementTest.php deleted file mode 100644 index b1d25468..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/LockStatementTest.php +++ /dev/null @@ -1,44 +0,0 @@ -runParserTest($test); - } - - /** - * @return string[][] - */ - public static function lockProvider(): array - { - return [ - ['parser/parseLock1'], - ['parser/parseLock2'], - ['parser/parseLock3'], - ['parser/parseLock4'], - ['parser/parseLock5'], - ['parser/parseLockErr1'], - ['parser/parseLockErr2'], - ['parser/parseLockErr3'], - ['parser/parseLockErr4'], - ['parser/parseLockErr5'], - ['parser/parseLockErr6'], - ['parser/parseLockErr7'], - ['parser/parseLockErr8'], - ['parser/parseLockErr9'], - ['parser/parseLockErr10'], - ['parser/parseUnlock1'], - ['parser/parseUnlockErr1'], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/ParserLongExportsTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/ParserLongExportsTest.php deleted file mode 100644 index 3351d192..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/ParserLongExportsTest.php +++ /dev/null @@ -1,120 +0,0 @@ -parse(); - - $sql = []; - foreach ($parser->statements as $stmt) { - $sql[] = $stmt->__toString(); - } - - $this->assertEquals($expectedSql, $sql); - } - - public function testParsephpMyAdminDump(): void - { - $data = $this->getData('parser/parsephpMyAdminExport1'); - $parser = new Parser($data['query']); - $collectedSetStatements = []; - foreach ($parser->statements as $statement) { - if ($statement instanceof TransactionStatement) { - foreach ($statement->statements as $transactionStatement) { - if (! $transactionStatement instanceof SetStatement) { - continue; - } - - $collectedSetStatements[] = $transactionStatement->build(); - } - - continue; - } - - if (! $statement instanceof SetStatement) { - continue; - } - - $collectedSetStatements[] = $statement->build(); - } - - $this->assertEquals([ - 'SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"', - 'SET AUTOCOMMIT = 0', - 'SET time_zone = "+00:00"', - 'SET @OLD_CHARACTER_SET_CLIENT = @@CHARACTER_SET_CLIENT', - 'SET @OLD_CHARACTER_SET_RESULTS = @@CHARACTER_SET_RESULTS', - 'SET @OLD_COLLATION_CONNECTION = @@COLLATION_CONNECTION', - 'SET NAMES utf8mb4', - 'SET CHARACTER_SET_CLIENT = @OLD_CHARACTER_SET_CLIENT', - 'SET CHARACTER_SET_RESULTS = @OLD_CHARACTER_SET_RESULTS', - 'SET COLLATION_CONNECTION = @OLD_COLLATION_CONNECTION', - ], $collectedSetStatements); - - foreach ($parser->statements as $stmt) { - // Check they all build - $this->assertIsString($stmt->build()); - } - } - - /** - * @dataProvider exportFileProvider - */ - public function testParseExport(string $test): void - { - $this->runParserTest($test); - } - - /** - * @return string[][] - */ - public static function exportFileProvider(): array - { - return [ - ['parser/parsephpMyAdminExport1'], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/ParserTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/ParserTest.php deleted file mode 100644 index 2d79a7da..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/ParserTest.php +++ /dev/null @@ -1,85 +0,0 @@ -runParserTest($test); - } - - /** - * @return string[][] - */ - public static function parseProvider(): array - { - return [ - ['parser/parse'], - ['parser/parse2'], - ['parser/parseDelimiter'], - ]; - } - - public function testUnrecognizedStatement(): void - { - $parser = new Parser('SELECT 1; FROM'); - $this->assertEquals( - 'Unrecognized statement type.', - $parser->errors[0]->getMessage() - ); - } - - public function testUnrecognizedKeyword(): void - { - $parser = new Parser('SELECT 1 FROM foo PARTITION(bar, baz) AS'); - $this->assertEquals( - 'Unrecognized keyword.', - $parser->errors[0]->getMessage() - ); - } - - /** - * @runInSeparateProcess - * @preserveGlobalState disabled - */ - public function testError(): void - { - $parser = new Parser(new TokensList()); - - $parser->error('error #1', new Token('foo'), 1); - $parser->error(sprintf('%2$s #%1$d', 2, 'error'), new Token('bar'), 2); - - $this->assertEquals( - $parser->errors, - [ - new ParserException('error #1', new Token('foo'), 1), - new ParserException('error #2', new Token('bar'), 2), - ] - ); - } - - public function testErrorStrict(): void - { - $this->expectExceptionCode(3); - $this->expectExceptionMessage('strict error'); - $this->expectException(ParserException::class); - $parser = new Parser(new TokensList()); - $parser->strict = true; - - $parser->error('strict error', new Token('foo'), 3); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/PurgeStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/PurgeStatementTest.php deleted file mode 100644 index 5d61c16b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/PurgeStatementTest.php +++ /dev/null @@ -1,34 +0,0 @@ -runParserTest($test); - } - - /** - * @return string[][] - */ - public static function purgeProvider(): array - { - return [ - ['parser/parsePurge'], - ['parser/parsePurge2'], - ['parser/parsePurge3'], - ['parser/parsePurge4'], - ['parser/parsePurgeErr'], - ['parser/parsePurgeErr2'], - ['parser/parsePurgeErr3'], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/RenameStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/RenameStatementTest.php deleted file mode 100644 index 003d8dc9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/RenameStatementTest.php +++ /dev/null @@ -1,34 +0,0 @@ -runParserTest($test); - } - - /** - * @return string[][] - */ - public static function renameProvider(): array - { - return [ - ['parser/parseRename'], - ['parser/parseRename2'], - ['parser/parseRenameErr1'], - ['parser/parseRenameErr2'], - ['parser/parseRenameErr3'], - ['parser/parseRenameErr4'], - ['parser/parseRenameErr5'], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/ReplaceStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/ReplaceStatementTest.php deleted file mode 100644 index e05ee655..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/ReplaceStatementTest.php +++ /dev/null @@ -1,36 +0,0 @@ -runParserTest($test); - } - - /** - * @return string[][] - */ - public static function replaceProvider(): array - { - return [ - ['parser/parseReplace'], - ['parser/parseReplace2'], - ['parser/parseReplaceValues'], - ['parser/parseReplaceSet'], - ['parser/parseReplaceSelect'], - ['parser/parseReplaceErr'], - ['parser/parseReplaceErr2'], - ['parser/parseReplaceErr3'], - ['parser/parseReplaceIntoErr'], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/RestoreStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/RestoreStatementTest.php deleted file mode 100644 index 12455737..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/RestoreStatementTest.php +++ /dev/null @@ -1,28 +0,0 @@ -runParserTest($test); - } - - /** - * @return string[][] - */ - public static function restoreProvider(): array - { - return [ - ['parser/parseRestore'], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/SelectStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/SelectStatementTest.php deleted file mode 100644 index a7549b79..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/SelectStatementTest.php +++ /dev/null @@ -1,110 +0,0 @@ -getData('parser/parseSelect'); - $parser = new Parser($data['query']); - $stmt = $parser->statements[0]; - $this->assertEquals(10, $stmt->options->has('MAX_STATEMENT_TIME')); - } - - /** - * @dataProvider selectProvider - */ - public function testSelect(string $test): void - { - $this->runParserTest($test); - } - - /** - * @return string[][] - */ - public static function selectProvider(): array - { - return [ - ['parser/parseSelect2'], - ['parser/parseSelect3'], - ['parser/parseSelect4'], - ['parser/parseSelect5'], - ['parser/parseSelect6'], - ['parser/parseSelect7'], - ['parser/parseSelect8'], - ['parser/parseSelect9'], - ['parser/parseSelect10'], - ['parser/parseSelect11'], - ['parser/parseSelect12'], - ['parser/parseSelect13'], - ['parser/parseSelect14'], - ['parser/parseSelect15'], - ['parser/parseSelect16'], - ['parser/parseSelectAggregateWithPartitionAndAlias'], - ['parser/parseSelectErr1'], - ['parser/parseSelectErr2'], - ['parser/parseSelectNested'], - ['parser/parseSelectCase1'], - ['parser/parseSelectCase2'], - ['parser/parseSelectCase3'], - ['parser/parseSelectCase4'], - ['parser/parseSelectCase5'], - ['parser/parseSelectCaseErr1'], - ['parser/parseSelectCaseErr2'], - ['parser/parseSelectCaseErr3'], - ['parser/parseSelectCaseErr4'], - ['parser/parseSelectCaseErr5'], - ['parser/parseSelectCaseAlias1'], - ['parser/parseSelectCaseAlias2'], - ['parser/parseSelectCaseAlias3'], - ['parser/parseSelectCaseAlias4'], - ['parser/parseSelectCaseAlias5'], - ['parser/parseSelectCaseAlias6'], - ['parser/parseSelectCaseAliasErr1'], - ['parser/parseSelectCaseAliasErr2'], - ['parser/parseSelectCaseAliasErr3'], - ['parser/parseSelectCaseAliasErr4'], - ['parser/parseSelectExists'], - ['parser/parseSelectIntoOptions1'], - ['parser/parseSelectIntoOptions2'], - ['parser/parseSelectIntoOptions3'], - ['parser/parseSelectJoinCross'], - ['parser/parseSelectJoinNatural'], - ['parser/parseSelectJoinNaturalLeft'], - ['parser/parseSelectJoinNaturalRight'], - ['parser/parseSelectJoinNaturalLeftOuter'], - ['parser/parseSelectJoinNaturalRightOuter'], - ['parser/parseSelectJoinMultiple'], - ['parser/parseSelectJoinMultiple2'], - ['parser/parseSelectWrongOrder'], - ['parser/parseSelectWrongOrder2'], - ['parser/parseSelectEndOptions1'], - ['parser/parseSelectEndOptions2'], - ['parser/parseSelectEndOptionsErr'], - ['parser/parseSelectUnion'], - ['parser/parseSelectUnion2'], - ['parser/parseSelectWhere'], - ['parser/parseSelectWhereCollate'], - ['parser/parseSelectIndexHint1'], - ['parser/parseSelectIndexHint2'], - ['parser/parseSelectOrderByIsNull'], - ['parser/parseSelectIndexHintErr1'], - ['parser/parseSelectIndexHintErr2'], - ['parser/parseSelectIndexHintErr3'], - ['parser/parseSelectIndexHintErr4'], - ['parser/parseSelectWithParenthesis'], - ['parser/parseSelectOrderByComment'], - ['parser/parseSelectOverAlias_mariadb_100600'], - ['parser/parseSelectGroupBy'], - ['parser/parseSelectGroupByErr'], - ['parser/parseSelectGroupByWithComments'], - ['parser/parseTable1'], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/SetStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/SetStatementTest.php deleted file mode 100644 index 7c5e3ed1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/SetStatementTest.php +++ /dev/null @@ -1,39 +0,0 @@ -runParserTest($test); - } - - /** - * @return string[][] - */ - public static function setProvider(): array - { - return [ - ['parser/parseSetCharset'], - ['parser/parseSetCharsetError'], - ['parser/parseSetCharacterSet'], - ['parser/parseSetCharacterSetError'], - ['parser/parseAlterTableSetAutoIncrementError'], - ['parser/parseSetNames'], - ['parser/parseSetNamesError'], - ['parser/parseSetError1'], - ['parser/parseInsertIntoSet'], - ['parser/parseSetVariable'], - ['parser/parseSetVariable2'], - ['parser/parseSetGlobalVariable'], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/TransactionStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/TransactionStatementTest.php deleted file mode 100644 index 13aa5a8f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/TransactionStatementTest.php +++ /dev/null @@ -1,47 +0,0 @@ -getData('parser/parseTransaction4'); - $parser = new Parser($data['query']); - $stmt = $parser->statements[0]; - $this->assertEquals( - 'START TRANSACTION;SET time_zone = "+00:00";', - $stmt->build() - ); - } - - /** - * @dataProvider transactionProvider - */ - public function testTransaction(string $test): void - { - $this->runParserTest($test); - } - - /** - * @return string[][] - */ - public static function transactionProvider(): array - { - return [ - ['parser/parseTransaction'], - ['parser/parseTransaction2'], - ['parser/parseTransaction3'], - ['parser/parseTransaction4'], - ['parser/parseTransaction5'], - ['parser/parseTransaction6'], - ['parser/parseTransaction7'], - ['parser/parseTransactionErr1'], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/UpdateStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/UpdateStatementTest.php deleted file mode 100644 index 7733ce61..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/UpdateStatementTest.php +++ /dev/null @@ -1,36 +0,0 @@ -runParserTest($test); - } - - /** - * @return string[][] - */ - public static function updateProvider(): array - { - return [ - ['parser/parseUpdate1'], - ['parser/parseUpdate2'], - ['parser/parseUpdate3'], - ['parser/parseUpdate4'], - ['parser/parseUpdate5'], - ['parser/parseUpdate6'], - ['parser/parseUpdate7'], - ['parser/parseUpdateErr'], - ['parser/parseUpdateEmptySet'], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/WithStatementTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/WithStatementTest.php deleted file mode 100644 index 448d374e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Parser/WithStatementTest.php +++ /dev/null @@ -1,148 +0,0 @@ -runParserTest($test); - } - - /** - * @return string[][] - */ - public static function parseWith(): array - { - return [ - ['parser/parseWithStatement'], - ['parser/parseWithStatement1'], - ['parser/parseWithStatement2'], - ['parser/parseWithStatement3'], - ['parser/parseWithStatement4'], - ['parser/parseWithStatement5'], - ['parser/parseWithStatement6'], - ['parser/parseWithStatement7'], - ['parser/parseWithStatementErr'], - ['parser/parseWithStatementErr1'], - ['parser/parseWithStatementErr2'], - ['parser/parseWithStatementErr3'], - ['parser/parseWithStatementErr4'], - ['parser/parseWithStatementErr5'], - ['parser/parseWithStatementErr6'], - ['parser/parseWithStatementErr7'], - ['parser/parseWithStatementErr8'], - ]; - } - - public function testWith(): void - { - $sql = <<getErrorsAsArray($lexer); - $this->assertCount(0, $lexerErrors); - $parser = new Parser($lexer->list); - $parserErrors = $this->getErrorsAsArray($parser); - $this->assertCount(0, $parserErrors); - $this->assertCount(1, $parser->statements); - - // phpcs:disable Generic.Files.LineLength.TooLong - $expected = <<assertEquals($expected, $parser->statements[0]->build()); - } - - public function testWithHasErrors(): void - { - $sql = <<getErrorsAsArray($lexer); - $this->assertCount(0, $lexerErrors); - $parser = new Parser($lexer->list); - $parserErrors = $this->getErrorsAsArray($parser); - $this->assertCount(4, $parserErrors); - } - - public function testWithEmbedParenthesis(): void - { - $sql = <<getErrorsAsArray($lexer); - $this->assertCount(0, $lexerErrors); - $parser = new Parser($lexer->list); - $parserErrors = $this->getErrorsAsArray($parser); - $this->assertCount(0, $parserErrors); - - // phpcs:disable Generic.Files.LineLength.TooLong - $expected = <<assertEquals($expected, $parser->statements[0]->build()); - } - - public function testWithHasUnclosedParenthesis(): void - { - $sql = <<getErrorsAsArray($lexer); - $this->assertCount(0, $lexerErrors); - $parser = new Parser($lexer->list); - $parserErrors = $this->getErrorsAsArray($parser); - $this->assertEquals($parserErrors[0][0], 'A closing bracket was expected.'); - } - - public function testBuildWrongWithKeyword(): void - { - $this->expectExceptionMessage('Can not build a component that is not a WithKeyword'); - WithKeyword::build(new stdClass()); - } - - public function testBuildBadWithKeyword(): void - { - $this->expectExceptionMessage('No statement inside WITH'); - WithKeyword::build(new WithKeyword('test')); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/TestCase.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/TestCase.php deleted file mode 100644 index 8351a84b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/TestCase.php +++ /dev/null @@ -1,173 +0,0 @@ -list; - } - - /** - * Gets the errors as an array. - * - * @param Lexer|Parser $obj object containing the errors - * - * @return array> - * @psalm-return ( - * $obj is Lexer - * ? list - * : list - * ) - */ - public function getErrorsAsArray($obj): array - { - $ret = []; - if ($obj instanceof Lexer) { - /** @var LexerException $err */ - foreach ($obj->errors as $err) { - $ret[] = [$err->getMessage(), $err->ch, $err->pos, (int) $err->getCode()]; - } - } elseif ($obj instanceof Parser) { - /** @var ParserException $err */ - foreach ($obj->errors as $err) { - $ret[] = [$err->getMessage(), $err->token, (int) $err->getCode()]; - } - } - - return $ret; - } - - /** - * Gets test's input and expected output. - * - * @param string $name the name of the test - * - * @return array[]>|null> - * @psalm-return array{ - * query: string, - * lexer: Lexer, - * parser: Parser|null, - * errors: array{lexer: list, parser: list} - * } - */ - public function getData(string $name): array - { - $serializedData = file_get_contents('tests/data/' . $name . '.out'); - $this->assertIsString($serializedData); - - $serializer = new CustomJsonSerializer(); - $data = $serializer->unserialize($serializedData); - - $this->assertIsArray($data); - $this->assertArrayHasKey('query', $data); - $this->assertArrayHasKey('lexer', $data); - $this->assertArrayHasKey('parser', $data); - $this->assertArrayHasKey('errors', $data); - $this->assertIsString($data['query']); - $this->assertInstanceOf(Lexer::class, $data['lexer']); - if ($data['parser'] !== null) { - $this->assertInstanceOf(Parser::class, $data['parser']); - } - - $this->assertIsArray($data['errors']); - $this->assertArrayHasKey('lexer', $data['errors']); - $this->assertArrayHasKey('parser', $data['errors']); - $this->assertIsArray($data['errors']['lexer']); - $this->assertIsArray($data['errors']['parser']); - - $data['query'] = file_get_contents('tests/data/' . $name . '.in'); - $this->assertIsString($data['query']); - - return $data; - } - - /** - * Runs a test. - * - * @param string $name the name of the test - */ - public function runParserTest(string $name): void - { - /** - * Test's data. - */ - $data = $this->getData($name); - - if (str_contains($name, '/ansi/')) { - // set mode if appropriate - Context::setMode(Context::SQL_MODE_ANSI_QUOTES); - } - - $mariaDbPos = strpos($name, '_mariadb_'); - if ($mariaDbPos !== false) {// Keep in sync with TestGenerator.php - // set context - $mariaDbVersion = (int) substr($name, $mariaDbPos + 9, 6); - Context::load('MariaDb' . $mariaDbVersion); - } - - // Lexer. - $lexer = new Lexer($data['query']); - $lexerErrors = $this->getErrorsAsArray($lexer); - $lexer->errors = []; - - // Parser. - $parser = empty($data['parser']) ? null : new Parser($lexer->list); - $parserErrors = []; - if ($parser !== null) { - $parserErrors = $this->getErrorsAsArray($parser); - $parser->errors = []; - } - - // Testing objects. - $this->assertEquals($data['lexer'], $lexer); - $this->assertEquals($data['parser'], $parser); - - // Testing errors. - $this->assertEquals($data['errors']['parser'], $parserErrors); - $this->assertEquals($data['errors']['lexer'], $lexerErrors); - - // reset mode after test run - Context::setMode(); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Tools/ContextGeneratorTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Tools/ContextGeneratorTest.php deleted file mode 100644 index d6d4df26..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Tools/ContextGeneratorTest.php +++ /dev/null @@ -1,79 +0,0 @@ -assertEquals('Invalid00Format00', $name); - - $name = ContextGenerator::formatName('MySql80000'); - $this->assertEquals('MySQL 8.0', $name); - - $name = ContextGenerator::formatName('MariaDb100200'); - $this->assertEquals('MariaDB 10.2', $name); - - $name = ContextGenerator::formatName('MariaDb100000'); - $this->assertEquals('MariaDB 10.0', $name); - - $name = ContextGenerator::formatName('FutureDBMS45784012500'); - $this->assertEquals('FutureDBMS 4.57.84.1.25', $name); - } - - public function testSortWords(): void - { - $wordsArray = ['41' => ['GEOMETRYCOLLECTION', 'DATE'], '35' => ['SCHEMA', 'REPEAT', 'VALUES']]; - ContextGenerator::sortWords($wordsArray); - $this->assertEquals([ - '41' => ['DATE', 'GEOMETRYCOLLECTION'], - '35' => ['REPEAT', 'SCHEMA', 'VALUES'], - ], $wordsArray); - } - - public function testReadWords(): void - { - $testFiles = [getcwd() . '/tests/Tools/contexts/testContext.txt']; - $readWords = ContextGenerator::readWords($testFiles); - $this->assertEquals([ - Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED => [ - 'RESERVED', - 'RESERVED2', - 'RESERVED3', - 'RESERVED4', - 'RESERVED5', - ], - Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION => ['FUNCTION'], - Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE => ['DATATYPE'], - Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_KEY => ['KEYWORD'], - Token::FLAG_KEYWORD => ['NO_FLAG'], - Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED => ['COMPOSED KEYWORD'], - ], $readWords); - } - - public function testGenerate(): void - { - $testFiles = [getcwd() . '/tests/Tools/contexts/testContext.txt']; - $readWords = ContextGenerator::readWords($testFiles); - ContextGenerator::printWords($readWords); - $options = [ - 'keywords' => $readWords, - 'name' => 'MYSQL TEST', - 'class' => 'TestContext', - 'link' => 'https://www.phpmyadmin.net/contribute', - ]; - $generatedTemplate = ContextGenerator::generate($options); - $expectedTemplate = file_get_contents(getcwd() . '/tests/Tools/templates/TestContext.php'); - $this->assertEquals($expectedTemplate, $generatedTemplate); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Tools/contexts/testContext.txt b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Tools/contexts/testContext.txt deleted file mode 100644 index e7b107b8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Tools/contexts/testContext.txt +++ /dev/null @@ -1,16 +0,0 @@ -RESERVED (R) - RESERVED2 (R) - RESERVED3 (R) - RESERVED4 (R) -reserved5 (R) - -FUNCTION (F) -DATATYPE (D) -KEYWORD (K) - - - -NO_FLAG -COMPOSED KEYWORD - -FUNCTION diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Tools/templates/TestContext.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Tools/templates/TestContext.php deleted file mode 100644 index e357cfe1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Tools/templates/TestContext.php +++ /dev/null @@ -1,42 +0,0 @@ - - * @phpstan-var non-empty-array - */ - public static $KEYWORDS = [ - 'NO_FLAG' => Token::FLAG_KEYWORD, - 'RESERVED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESERVED2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESERVED3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESERVED4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'RESERVED5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, - 'COMPOSED KEYWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, - 'DATATYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, - 'KEYWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_KEY, - 'FUNCTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, - ]; -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/BufferedQueryTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/BufferedQueryTest.php deleted file mode 100644 index b5e599c1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/BufferedQueryTest.php +++ /dev/null @@ -1,358 +0,0 @@ - $options - * @param string[] $expected - * @psalm-param array{delimiter?: non-empty-string, parse_delimiter?: bool, add_delimiter?: bool} $options - * @psalm-param positive-int $chunkSize - * - * @dataProvider extractProvider - */ - public function testExtract( - string $query, - int $chunkSize, - array $options, - array $expected - ): void { - $chunks = str_split($query, $chunkSize); - $count = count($chunks); - - /** - * The array of extracted statements. - */ - $statements = []; - - /** - * The `BufferedQuery` instance used for extraction. - */ - $bq = new BufferedQuery('', $options); - - // Feeding chunks and extracting queries. - $i = 0; - while ($i < $count) { - $stmt = $bq->extract(); - - if ($stmt) { - $statements[] = $stmt; - } else { - $bq->query .= $chunks[$i++]; - } - } - - // Feeding ended, extracting remaining queries. - while ($stmt = $bq->extract(true)) { - $statements[] = $stmt; - } - - $this->assertEquals($expected, $statements); - } - - /** - * @return array> - * @psalm-return list - */ - public static function extractProvider(): array - { - $query = - '/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;' . "\n" . - '/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;' . "\n" . - '/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;' . "\n" . - '/*!40101 SET NAMES utf8mb4 */;' . "\n" . - '' . "\n" . - 'SET SQL_MODE = \'NO_AUTO_VALUE_ON_ZERO\';' . "\n" . - 'SET time_zone = "+00:00";' . "\n" . - '' . "\n" . - '/* a comment */ DELIMITER $$' . "\n" . - '' . "\n" . - '# Bash-like comment sytanx.' . "\n" . - 'CREATE DEFINER=`root`@`localhost` PROCEDURE `film_in_stock` (IN `p_film_id` ' . - 'INT, IN `p_store_id` INT, OUT `p_film_count` INT) READS SQL DATA' . "\n" . - 'BEGIN' . "\n" . - ' SELECT inventory_id' . "\n" . - ' FROM inventory' . "\n" . - ' WHERE film_id = p_film_id' . "\n" . - ' AND store_id = p_store_id' . "\n" . - ' AND inventory_in_stock(inventory_id);' . "\n" . - '' . "\n" . - ' SELECT FOUND_ROWS() INTO p_film_count;' . "\n" . - 'END$$' . "\n" . - '' . "\n" . - 'DELIMITER ;' . "\n" . - '' . "\n" . - '-- --------------------------------------------------------' . "\n" . - '' . "\n" . - '--' . "\n" . - '-- Table structure for `actor`' . "\n" . - '--' . "\n" . - '' . "\n" . - '/* C-like comment syntax. */' . "\n" . - 'CREATE TABLE IF NOT EXISTS `actor` (' . "\n" . - '`actor_id` SMALLINT(5) UNSIGNED NOT NULL,' . "\n" . - '`first_name` VARCHAR(45) NOT NULL,' . "\n" . - '`last_name` VARCHAR(45) NOT NULL,' . "\n" . - '`last_update` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP' . "\n" . - ') ENGINE=InnoDB DEFAULT CHARSET=utf8;' . "\n" . - '' . "\n" . - '/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;' . "\n" . - '/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;' . "\n" . - '/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */'; - - return [ - [ - "SELECT '\'';\nSELECT '\'';", - 8, - [ - 'parse_delimiter' => true, - 'add_delimiter' => true, - ], - [ - "SELECT '\'';", - "SELECT '\'';", - ], - ], - - [ - 'SELECT \\', - 8, - [ - 'parse_delimiter' => false, - 'add_delimiter' => false, - ], - ['SELECT \\'], - ], - - [ - "CREATE TABLE `test` (\n" . - " `txt` varchar(10)\n" . - ");\n" . - "INSERT INTO `test` (`txt`) VALUES('abc');\n" . - "INSERT INTO `test` (`txt`) VALUES('\\\\');\n" . - "INSERT INTO `test` (`txt`) VALUES('xyz');\n", - 8, - [ - 'parse_delimiter' => true, - 'add_delimiter' => true, - ], - [ - "CREATE TABLE `test` (\n" . - " `txt` varchar(10)\n" . - ');', - "INSERT INTO `test` (`txt`) VALUES('abc');", - "INSERT INTO `test` (`txt`) VALUES('\\\\');", - "INSERT INTO `test` (`txt`) VALUES('xyz');", - ], - ], - - [ - 'SELECT """""""";' . - 'SELECT """\\\\"""', - 8, - [ - 'parse_delimiter' => true, - 'add_delimiter' => true, - ], - [ - 'SELECT """""""";', - 'SELECT """\\\\"""', - ], - ], - - [ - 'DELIMITER A_VERY_LONG_DEL' . "\n" . - 'SELECT 1 A_VERY_LONG_DEL' . "\n" . - 'DELIMITER ;', - 3, - [ - 'parse_delimiter' => true, - 'add_delimiter' => true, - ], - [ - 'DELIMITER A_VERY_LONG_DEL', - 'SELECT 1 A_VERY_LONG_DEL', - 'DELIMITER ;', - ], - ], - - [ - $query, - 32, - [ - 'parse_delimiter' => false, - 'add_delimiter' => false, - ], - [ - '/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */', - - '/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */', - - '/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */', - - '/*!40101 SET NAMES utf8mb4 */', - - 'SET SQL_MODE = \'NO_AUTO_VALUE_ON_ZERO\'', - - 'SET time_zone = "+00:00"', - - '# Bash-like comment sytanx.' . "\n" . - 'CREATE DEFINER=`root`@`localhost` PROCEDURE `film_in_stock` (IN `p_film_id` ' . - 'INT, IN `p_store_id` INT, OUT `p_film_count` INT) READS SQL DATA' . "\n" . - 'BEGIN' . "\n" . - ' SELECT inventory_id' . "\n" . - ' FROM inventory' . "\n" . - ' WHERE film_id = p_film_id' . "\n" . - ' AND store_id = p_store_id' . "\n" . - ' AND inventory_in_stock(inventory_id);' . "\n" . - '' . "\n" . - ' SELECT FOUND_ROWS() INTO p_film_count;' . "\n" . - 'END', - - '-- --------------------------------------------------------' . "\n" . - '' . "\n" . - '--' . "\n" . - '-- Table structure for `actor`' . "\n" . - '--' . "\n" . - '' . "\n" . - '/* C-like comment syntax. */' . "\n" . - 'CREATE TABLE IF NOT EXISTS `actor` (' . "\n" . - '`actor_id` SMALLINT(5) UNSIGNED NOT NULL,' . "\n" . - '`first_name` VARCHAR(45) NOT NULL,' . "\n" . - '`last_name` VARCHAR(45) NOT NULL,' . "\n" . - '`last_update` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP' . "\n" . - ') ENGINE=InnoDB DEFAULT CHARSET=utf8', - - '/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */', - - '/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */', - - '/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */', - ], - ], - - [ - $query, - 32, - [ - 'parse_delimiter' => true, - 'add_delimiter' => false, - ], - [ - '/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */', - - '/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */', - - '/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */', - - '/*!40101 SET NAMES utf8mb4 */', - - 'SET SQL_MODE = \'NO_AUTO_VALUE_ON_ZERO\'', - - 'SET time_zone = "+00:00"', - - '/* a comment */ DELIMITER $$', - - '# Bash-like comment sytanx.' . "\n" . - 'CREATE DEFINER=`root`@`localhost` PROCEDURE `film_in_stock` (IN `p_film_id` ' . - 'INT, IN `p_store_id` INT, OUT `p_film_count` INT) READS SQL DATA' . "\n" . - 'BEGIN' . "\n" . - ' SELECT inventory_id' . "\n" . - ' FROM inventory' . "\n" . - ' WHERE film_id = p_film_id' . "\n" . - ' AND store_id = p_store_id' . "\n" . - ' AND inventory_in_stock(inventory_id);' . "\n" . - '' . "\n" . - ' SELECT FOUND_ROWS() INTO p_film_count;' . "\n" . - 'END', - - 'DELIMITER ;', - - '-- --------------------------------------------------------' . "\n" . - '' . "\n" . - '--' . "\n" . - '-- Table structure for `actor`' . "\n" . - '--' . "\n" . - '' . "\n" . - '/* C-like comment syntax. */' . "\n" . - 'CREATE TABLE IF NOT EXISTS `actor` (' . "\n" . - '`actor_id` SMALLINT(5) UNSIGNED NOT NULL,' . "\n" . - '`first_name` VARCHAR(45) NOT NULL,' . "\n" . - '`last_name` VARCHAR(45) NOT NULL,' . "\n" . - '`last_update` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP' . "\n" . - ') ENGINE=InnoDB DEFAULT CHARSET=utf8', - - '/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */', - - '/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */', - - '/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */', - ], - ], - - [ - $query, - 64, - [ - 'parse_delimiter' => false, - 'add_delimiter' => true, - ], - [ - '/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;', - - '/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;', - - '/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;', - - '/*!40101 SET NAMES utf8mb4 */;', - - 'SET SQL_MODE = \'NO_AUTO_VALUE_ON_ZERO\';', - - 'SET time_zone = "+00:00";', - - '# Bash-like comment sytanx.' . "\n" . - 'CREATE DEFINER=`root`@`localhost` PROCEDURE `film_in_stock` (IN `p_film_id` ' . - 'INT, IN `p_store_id` INT, OUT `p_film_count` INT) READS SQL DATA' . "\n" . - 'BEGIN' . "\n" . - ' SELECT inventory_id' . "\n" . - ' FROM inventory' . "\n" . - ' WHERE film_id = p_film_id' . "\n" . - ' AND store_id = p_store_id' . "\n" . - ' AND inventory_in_stock(inventory_id);' . "\n" . - '' . "\n" . - ' SELECT FOUND_ROWS() INTO p_film_count;' . "\n" . - 'END$$', - - '-- --------------------------------------------------------' . "\n" . - '' . "\n" . - '--' . "\n" . - '-- Table structure for `actor`' . "\n" . - '--' . "\n" . - '' . "\n" . - '/* C-like comment syntax. */' . "\n" . - 'CREATE TABLE IF NOT EXISTS `actor` (' . "\n" . - '`actor_id` SMALLINT(5) UNSIGNED NOT NULL,' . "\n" . - '`first_name` VARCHAR(45) NOT NULL,' . "\n" . - '`last_name` VARCHAR(45) NOT NULL,' . "\n" . - '`last_update` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP' . "\n" . - ') ENGINE=InnoDB DEFAULT CHARSET=utf8;', - - '/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;', - - '/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;', - - '/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */', - ], - ], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/CLITest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/CLITest.php deleted file mode 100644 index 80347378..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/CLITest.php +++ /dev/null @@ -1,482 +0,0 @@ -|false $getopt - */ - private function getCLI($getopt): CLI - { - $cli = $this->createPartialMock(CLI::class, ['getopt']); - $cli->method('getopt')->willReturn($getopt); - - return $cli; - } - - /** - * @param array|false $getopt - */ - private function getCLIStdIn(string $input, $getopt): CLI - { - $cli = $this->createPartialMock(CLI::class, ['getopt', 'readStdin']); - $cli->method('getopt')->willReturn($getopt); - $cli->method('readStdin')->willReturn($input); - - return $cli; - } - - /** - * Test that getopt call works. - * - * We do mock it for other tests to return values we want. - */ - public function testGetopt(): void - { - $cli = new CLI(); - $this->assertEquals( - $cli->getopt('', []), - [] - ); - } - - /** - * @param array|false $getopt - * - * @dataProvider highlightParamsProvider - */ - public function testRunHighlight($getopt, string $output, int $result): void - { - $cli = $this->getCLI($getopt); - $this->expectOutputString($output); - $this->assertEquals($result, $cli->runHighlight()); - } - - /** - * @return array|false>> - * @psalm-return list|false), string, int}> - */ - public static function highlightParamsProvider(): array - { - return [ - [ - ['q' => 'SELECT 1'], - "\x1b[35mSELECT\n \x1b[92m1\x1b[0m\n", - 0, - ], - [ - ['query' => 'SELECT 1'], - "\x1b[35mSELECT\n \x1b[92m1\x1b[0m\n", - 0, - ], - [ - [ - 'q' => 'SELECT /* comment */ 1 /* other */', - 'f' => 'text', - ], - "SELECT\n /* comment */ 1 /* other */\n", - 0, - ], - [ - [ - 'q' => 'SELECT 1', - 'f' => 'foo', - ], - "ERROR: Invalid value for format!\n", - 1, - ], - [ - [ - 'q' => 'SELECT 1', - 'f' => 'html', - ], - 'SELECT
    ' . - '    1' . "\n", - 0, - ], - [ - ['h' => true], - 'Usage: highlight-query --query SQL [--format html|cli|text] [--ansi]' . "\n" . - ' cat file.sql | highlight-query' . "\n", - 0, - ], - [ - [], - 'ERROR: Missing parameters!' . "\n" . - 'Usage: highlight-query --query SQL [--format html|cli|text] [--ansi]' . "\n" . - ' cat file.sql | highlight-query' . "\n", - 1, - ], - [ - false, - '', - 1, - ], - ]; - } - - /** - * @param array|false $getopt - * - * @dataProvider highlightParamsStdInProvider - */ - public function testRunHighlightStdIn(string $input, $getopt, string $output, int $result): void - { - $cli = $this->getCLIStdIn($input, $getopt); - $this->expectOutputString($output); - $this->assertEquals($result, $cli->runHighlight()); - } - - /** - * @return array|false>> - * @psalm-return list|false), string, int}> - */ - public static function highlightParamsStdInProvider(): array - { - return [ - [ - 'SELECT 1', - [], - "\x1b[35mSELECT\n \x1b[92m1\x1b[0m\n", - 0, - ], - [ - 'SELECT /* comment */ 1 /* other */', - ['f' => 'text'], - "SELECT\n /* comment */ 1 /* other */\n", - 0, - ], - [ - 'SELECT 1', - ['f' => 'foo'], - "ERROR: Invalid value for format!\n", - 1, - ], - [ - 'SELECT 1', - ['f' => 'html'], - 'SELECT
    ' . - '    1' . "\n", - 0, - ], - [ - '', - ['h' => true], - 'Usage: highlight-query --query SQL [--format html|cli|text] [--ansi]' . "\n" . - ' cat file.sql | highlight-query' . "\n", - 0, - ], - [ - '', - [], - 'ERROR: Missing parameters!' . "\n" . - 'Usage: highlight-query --query SQL [--format html|cli|text] [--ansi]' . "\n" . - ' cat file.sql | highlight-query' . "\n", - 1, - ], - [ - '', - false, - '', - 1, - ], - ]; - } - - /** - * @param array|false $getopt - * - * @dataProvider lintParamsStdInProvider - */ - public function testRunLintFromStdIn(string $input, $getopt, string $output, int $result): void - { - $cli = $this->getCLIStdIn($input, $getopt); - $this->expectOutputString($output); - $this->assertEquals($result, $cli->runLint()); - } - - /** - * @return array|false>> - * @psalm-return list|false), string, int}> - */ - public static function lintParamsStdInProvider(): array - { - return [ - [ - 'SELECT 1', - [], - '', - 0, - ], - [ - 'SELECT SELECT', - [], - '#1: An expression was expected. (near "SELECT" at position 7)' . "\n" . - '#2: This type of clause was previously parsed. (near "SELECT" at position 7)' . "\n" . - '#3: An expression was expected. (near "" at position 0)' . "\n", - 10, - ], - [ - 'SELECT SELECT', - ['c' => 'MySql80000'], - '#1: An expression was expected. (near "SELECT" at position 7)' . "\n" . - '#2: This type of clause was previously parsed. (near "SELECT" at position 7)' . "\n" . - '#3: An expression was expected. (near "" at position 0)' . "\n", - 10, - ], - [ - '', - [], - 'ERROR: Missing parameters!' . "\n" . - 'Usage: lint-query --query SQL [--ansi]' . "\n" . - ' cat file.sql | lint-query' . "\n", - 1, - ], - [ - '', - ['h' => true], - 'Usage: lint-query --query SQL [--ansi]' . "\n" . - ' cat file.sql | lint-query' . "\n", - 0, - ], - [ - '', - false, - '', - 1, - ], - ]; - } - - /** - * @param array|false $getopt - * - * @dataProvider lintParamsProvider - */ - public function testRunLint($getopt, string $output, int $result): void - { - $cli = $this->getCLI($getopt); - $this->expectOutputString($output); - $this->assertEquals($result, $cli->runLint()); - } - - /** - * @return array|false>> - * @psalm-return list|false), string, int}> - */ - public static function lintParamsProvider(): array - { - return [ - [ - ['q' => 'SELECT 1'], - '', - 0, - ], - [ - ['query' => 'SELECT 1'], - '', - 0, - ], - [ - ['q' => 'SELECT SELECT'], - '#1: An expression was expected. (near "SELECT" at position 7)' . "\n" . - '#2: This type of clause was previously parsed. (near "SELECT" at position 7)' . "\n" . - '#3: An expression was expected. (near "" at position 0)' . "\n", - 10, - ], - [ - [ - 'q' => 'SELECT SELECT', - 'c' => 'MySql80000', - ], - '#1: An expression was expected. (near "SELECT" at position 7)' . "\n" . - '#2: This type of clause was previously parsed. (near "SELECT" at position 7)' . "\n" . - '#3: An expression was expected. (near "" at position 0)' . "\n", - 10, - ], - [ - ['h' => true], - 'Usage: lint-query --query SQL [--ansi]' . "\n" . - ' cat file.sql | lint-query' . "\n", - 0, - ], - [ - [], - 'ERROR: Missing parameters!' . "\n" . - 'Usage: lint-query --query SQL [--ansi]' . "\n" . - ' cat file.sql | lint-query' . "\n", - 1, - ], - [ - false, - '', - 1, - ], - ]; - } - - /** - * @param array|false $getopt - * - * @dataProvider tokenizeParamsProvider - */ - public function testRunTokenize($getopt, string $output, int $result): void - { - $cli = $this->getCLI($getopt); - $this->expectOutputString($output); - $this->assertEquals($result, $cli->runTokenize()); - } - - /** - * @return array|false>> - * @psalm-return list|false), string, int}> - */ - public static function tokenizeParamsProvider(): array - { - $result = "[TOKEN 0]\nType = 1\nFlags = 3\nValue = 'SELECT'\nToken = 'SELECT'\n\n" - . "[TOKEN 1]\nType = 3\nFlags = 0\nValue = ' '\nToken = ' '\n\n" - . "[TOKEN 2]\nType = 6\nFlags = 0\nValue = 1\nToken = '1'\n\n" - . "[TOKEN 3]\nType = 9\nFlags = 0\nValue = NULL\nToken = NULL\n\n"; - - return [ - [ - ['q' => 'SELECT 1'], - $result, - 0, - ], - [ - ['query' => 'SELECT 1'], - $result, - 0, - ], - [ - ['h' => true], - 'Usage: tokenize-query --query SQL [--ansi]' . "\n" . - ' cat file.sql | tokenize-query' . "\n", - 0, - ], - [ - [], - 'ERROR: Missing parameters!' . "\n" . - 'Usage: tokenize-query --query SQL [--ansi]' . "\n" . - ' cat file.sql | tokenize-query' . "\n", - 1, - ], - [ - false, - '', - 1, - ], - ]; - } - - /** - * @param array|false $getopt - * - * @dataProvider tokenizeParamsStdInProvider - */ - public function testRunTokenizeStdIn(string $input, $getopt, string $output, int $result): void - { - $cli = $this->getCLIStdIn($input, $getopt); - $this->expectOutputString($output); - $this->assertEquals($result, $cli->runTokenize()); - } - - /** - * @return array|false>> - * @psalm-return list|false), string, int}> - */ - public static function tokenizeParamsStdInProvider(): array - { - $result = "[TOKEN 0]\nType = 1\nFlags = 3\nValue = 'SELECT'\nToken = 'SELECT'\n\n" - . "[TOKEN 1]\nType = 3\nFlags = 0\nValue = ' '\nToken = ' '\n\n" - . "[TOKEN 2]\nType = 6\nFlags = 0\nValue = 1\nToken = '1'\n\n" - . "[TOKEN 3]\nType = 9\nFlags = 0\nValue = NULL\nToken = NULL\n\n"; - - return [ - [ - 'SELECT 1', - [], - $result, - 0, - ], - [ - '', - ['h' => true], - 'Usage: tokenize-query --query SQL [--ansi]' . "\n" . - ' cat file.sql | tokenize-query' . "\n", - 0, - ], - [ - '', - [], - 'ERROR: Missing parameters!' . "\n" . - 'Usage: tokenize-query --query SQL [--ansi]' . "\n" . - ' cat file.sql | tokenize-query' . "\n", - 1, - ], - [ - '', - false, - '', - 1, - ], - ]; - } - - /** - * @dataProvider stdinParamsProvider - */ - public function testStdinPipe(string $cmd, int $result): void - { - exec($cmd, $out, $ret); - $this->assertSame($result, $ret); - } - - /** - * @return array> - * @psalm-return list - */ - public static function stdinParamsProvider(): array - { - $binPath = PHP_BINARY . ' ' . dirname(__DIR__, 2) . '/bin/'; - - return [ - [ - 'echo "SELECT 1" | ' . $binPath . 'highlight-query', - 0, - ], - [ - 'echo "invalid query" | ' . $binPath . 'highlight-query', - 0, - ], - [ - 'echo "SELECT 1" | ' . $binPath . 'lint-query', - 0, - ], - [ - 'echo "invalid query" | ' . $binPath . 'lint-query', - 10, - ], - [ - 'echo "SELECT 1" | ' . $binPath . 'tokenize-query', - 0, - ], - [ - 'echo "invalid query" | ' . $binPath . 'tokenize-query', - 0, - ], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/ErrorTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/ErrorTest.php deleted file mode 100644 index 2a91cdf0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/ErrorTest.php +++ /dev/null @@ -1,65 +0,0 @@ -list); - $this->assertEquals( - [ - [ - 'Unexpected character.', - 0, - '}', - 22, - ], - [ - 'Unexpected dot.', - 0, - '.', - 17, - ], - ], - Error::get([$lexer, $parser]) - ); - } - - public function testGetWithNullToken(): void - { - $lexer = new Lexer('LOCK TABLES table1 AS `t1` LOCAL'); - $parser = new Parser($lexer->list); - $this->assertSame( - [ - ['An alias was previously found.', 0, 'LOCAL', 27], - ['Unexpected keyword.', 0, 'LOCAL', 27], - ['Unexpected end of LOCK expression.', 0, '', null], - ], - Error::get([$lexer, $parser]) - ); - } - - public function testFormat(): void - { - $this->assertEquals( - ['#1: error msg (near "token" at position 100)'], - Error::format([['error msg', 42, 'token', 100]]) - ); - $this->assertEquals( - [ - '#1: error msg (near "token" at position 100)', - '#2: error msg (near "token" at position 200)', - ], - Error::format([['error msg', 42, 'token', 100], ['error msg', 42, 'token', 200]]) - ); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/FormatterTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/FormatterTest.php deleted file mode 100644 index 73a6708d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/FormatterTest.php +++ /dev/null @@ -1,613 +0,0 @@ -> $default - * @param array> $overriding - * @param array> $expected - * @psalm-param list $default - * @psalm-param list $overriding - * @psalm-param list $expected - * - * @dataProvider mergeFormatsProvider - */ - public function testMergeFormats(array $default, array $overriding, array $expected): void - { - $formatter = $this->createPartialMock(Formatter::class, ['getDefaultOptions', 'getDefaultFormats']); - - $formatter->expects($this->once()) - ->method('getDefaultOptions') - ->willReturn([ - 'type' => 'text', - 'line_ending' => null, - 'indentation' => null, - 'clause_newline' => null, - 'parts_newline' => null, - ]); - - $formatter->expects($this->once()) - ->method('getDefaultFormats') - ->willReturn($default); - - $expectedOptions = [ - 'type' => 'test-type', - 'line_ending' => '
    ', - 'indentation' => ' ', - 'clause_newline' => null, - 'parts_newline' => 0, - 'formats' => $expected, - ]; - - $overridingOptions = [ - 'type' => 'test-type', - 'line_ending' => '
    ', - 'formats' => $overriding, - ]; - - $reflectionMethod = new ReflectionMethod($formatter, 'getMergedOptions'); - $reflectionMethod->setAccessible(true); - $this->assertEquals($expectedOptions, $reflectionMethod->invoke($formatter, $overridingOptions)); - } - - /** - * @return array>>> - * @psalm-return array, - * overriding: list, - * expected: list - * }> - */ - public static function mergeFormatsProvider(): array - { - // [default[], overriding[], expected[]] - return [ - 'empty formats' => [ - 'default' => [ - [ - 'type' => 0, - 'flags' => 0, - 'html' => '', - 'cli' => '', - 'function' => '', - ], - ], - 'overriding' => [ - [], - ], - 'expected' => [ - [ - 'type' => 0, - 'flags' => 0, - 'html' => '', - 'cli' => '', - 'function' => '', - ], - ], - ], - 'no flags' => [ - 'default' => [ - [ - 'type' => 0, - 'flags' => 0, - 'html' => 'html', - 'cli' => 'cli', - ], - [ - 'type' => 0, - 'flags' => 1, - 'html' => 'html', - 'cli' => 'cli', - ], - ], - 'overriding' => [ - [ - 'type' => 0, - 'html' => 'new html', - 'cli' => 'new cli', - ], - ], - 'expected' => [ - [ - 'type' => 0, - 'flags' => 0, - 'html' => 'new html', - 'cli' => 'new cli', - 'function' => '', - ], - [ - 'type' => 0, - 'flags' => 1, - 'html' => 'html', - 'cli' => 'cli', - ], - ], - ], - 'with flags' => [ - 'default' => [ - [ - 'type' => -1, - 'flags' => 0, - 'html' => 'html', - 'cli' => 'cli', - ], - [ - 'type' => 0, - 'flags' => 0, - 'html' => 'html', - 'cli' => 'cli', - ], - [ - 'type' => 0, - 'flags' => 1, - 'html' => 'html', - 'cli' => 'cli', - ], - ], - 'overriding' => [ - [ - 'type' => 0, - 'flags' => 0, - 'html' => 'new html', - 'cli' => 'new cli', - ], - ], - 'expected' => [ - [ - 'type' => -1, - 'flags' => 0, - 'html' => 'html', - 'cli' => 'cli', - ], - [ - 'type' => 0, - 'flags' => 0, - 'html' => 'new html', - 'cli' => 'new cli', - 'function' => '', - ], - [ - 'type' => 0, - 'flags' => 1, - 'html' => 'html', - 'cli' => 'cli', - ], - ], - ], - 'with extra formats' => [ - 'default' => [ - [ - 'type' => 0, - 'flags' => 0, - 'html' => 'html', - 'cli' => 'cli', - ], - ], - 'overriding' => [ - [ - 'type' => 0, - 'flags' => 1, - 'html' => 'new html', - 'cli' => 'new cli', - ], - [ - 'type' => 1, - 'html' => 'new html', - 'cli' => 'new cli', - ], - [ - 'type' => 1, - 'flags' => 1, - 'html' => 'new html', - 'cli' => 'new cli', - ], - ], - 'expected' => [ - [ - 'type' => 0, - 'flags' => 0, - 'html' => 'html', - 'cli' => 'cli', - ], - [ - 'type' => 0, - 'flags' => 1, - 'html' => 'new html', - 'cli' => 'new cli', - 'function' => '', - ], - [ - 'type' => 1, - 'flags' => 0, - 'html' => 'new html', - 'cli' => 'new cli', - 'function' => '', - ], - [ - 'type' => 1, - 'flags' => 1, - 'html' => 'new html', - 'cli' => 'new cli', - 'function' => '', - ], - ], - ], - ]; - } - - /** - * @param array $options - * - * @dataProvider formatQueriesProviders - */ - public function testFormat(string $query, string $text, string $cli, string $html, array $options = []): void - { - // Test TEXT format - $this->assertEquals( - $text, - Formatter::format($query, ['type' => 'text'] + $options), - 'Text formatting failed.' - ); - - // Test CLI format - $this->assertEquals( - $cli, - Formatter::format($query, ['type' => 'cli'] + $options), - 'CLI formatting failed.' - ); - - // Test HTML format - $this->assertEquals( - $html, - Formatter::format($query, ['type' => 'html'] + $options), - 'HTML formatting failed.' - ); - } - - /** - * @return array>> - * @psalm-return array - * }> - */ - public static function formatQueriesProviders(): array - { - return [ - 'empty' => [ - 'query' => '', - 'text' => '', - 'cli' => "\x1b[0m", - 'html' => '', - ], - 'minimal' => [ - 'query' => 'select 1', - 'text' => 'SELECT' . "\n" . - ' 1', - 'cli' => "\x1b[35mSELECT\n" . - " \x1b[92m1\x1b[0m", - 'html' => 'SELECT
    ' . - '    1', - ], - 'simply' => [ - 'query' => 'select * from tbl where 1', - 'text' => 'SELECT' . "\n" . - ' *' . "\n" . - 'FROM' . "\n" . - ' tbl' . "\n" . - 'WHERE' . "\n" . - ' 1', - 'cli' => "\x1b[35mSELECT\n" . - " \x1b[39m*\n" . - "\x1b[35mFROM\n" . - " \x1b[39mtbl\n" . - "\x1b[35mWHERE\n" . - " \x1b[92m1\x1b[0m", - 'html' => 'SELECT
    ' . - '    *
    ' . - 'FROM
    ' . - '    tbl
    ' . - 'WHERE
    ' . - '    1', - ], - 'typical' => [ - 'query' => 'SELECT id, if(id=1,"Si","No") from `tbl` where id = 0 or ' . - 'id = 1 group by id order by id desc limit 1 offset 0', - 'text' => 'SELECT' . "\n" . - ' id,' . "\n" . - ' IF(id = 1, "Si", "No")' . "\n" . - 'FROM' . "\n" . - ' `tbl`' . "\n" . - 'WHERE' . "\n" . - ' id = 0 OR id = 1' . "\n" . - 'GROUP BY' . "\n" . - ' id' . "\n" . - 'ORDER BY' . "\n" . - ' id' . "\n" . - 'DESC' . "\n" . - 'LIMIT 1 OFFSET 0', - 'cli' => "\x1b[35mSELECT\n" . - " \x1b[39mid,\n" . - " \x1b[35mIF\x1b[39m(id = \x1b[92m1\x1b[39m, \x1b[91m\"Si\"\x1b[39m, \x1b[91m\"No\"\x1b[39m)\n" . - "\x1b[35mFROM\n" . - " \x1b[36m`tbl`\n" . - "\x1b[35mWHERE\n" . - " \x1b[39mid = \x1b[92m0 \x1b[35mOR \x1b[39mid = \x1b[92m1\n" . - "\x1b[35mGROUP BY\n" . - " \x1b[39mid\n" . - "\x1b[35mORDER BY\n" . - " \x1b[39mid\n" . - "\x1b[35mDESC\n" . - "LIMIT \x1b[92m1 \x1b[95mOFFSET \x1b[92m0\x1b[0m", - 'html' => 'SELECT
    ' . - '    id,
    ' . - '    IF(id = ' . - '1, "Si", ' . - '"No")
    ' . - 'FROM
    ' . - '    `tbl`
    ' . - 'WHERE
    ' . - '    id = 0 ' . - 'OR id = 1
    ' . - 'GROUP BY
    ' . - '    id
    ' . - 'ORDER BY
    ' . - '    id
    ' . - 'DESC
    ' . - 'LIMIT 1 ' . - 'OFFSET 0', - ], - 'comments' => [ - 'query' => 'select /* Comment */ *' . "\n" . - 'from tbl # Comment' . "\n" . - 'where 1 -- Comment', - 'text' => 'SELECT' . "\n" . - ' /* Comment */ *' . "\n" . - 'FROM' . "\n" . - ' tbl # Comment' . "\n" . - 'WHERE' . "\n" . - ' 1 -- Comment', - 'cli' => "\x1b[35mSELECT\n" . - " \x1b[37m/* Comment */ \x1b[39m*\n" . - "\x1b[35mFROM\n" . - " \x1b[39mtbl \x1b[37m# Comment\n" . - "\x1b[35mWHERE\n" . - " \x1b[92m1 \x1b[37m-- Comment\x1b[0m", - 'html' => 'SELECT
    ' . - '    /* Comment */ *
    ' . - 'FROM
    ' . - '    tbl # Comment
    ' . - 'WHERE
    ' . - '    1 ' . - '-- Comment', - ], - 'strip comments' => [ - 'query' => 'select /* Comment */ *' . "\n" . - 'from tbl # Comment' . "\n" . - 'where 1 -- Comment', - 'text' => 'SELECT' . "\n" . - ' *' . "\n" . - 'FROM' . "\n" . - ' tbl' . "\n" . - 'WHERE' . "\n" . - ' 1', - 'cli' => "\x1b[35mSELECT\n" . - " \x1b[39m*\n" . - "\x1b[35mFROM\n" . - " \x1b[39mtbl\n" . - "\x1b[35mWHERE\n" . - " \x1b[92m1\x1b[0m", - 'html' => 'SELECT
    ' . - '    *
    ' . - 'FROM
    ' . - '    tbl
    ' . - 'WHERE
    ' . - '    1', - 'options' => ['remove_comments' => true], - ], - 'keywords' => [ - 'query' => 'select hex("1")', - 'text' => 'SELECT' . "\n" . - ' HEX("1")', - 'cli' => "\x1b[35mSELECT\n" . - " \x1b[95mHEX\x1b[39m(\x1b[91m\"1\"\x1b[39m)\x1b[0m", - 'html' => 'SELECT
    ' . - '    HEX("1")', - ], - 'distinct count' => [ - 'query' => 'select distinct count(*)', - 'text' => 'SELECT DISTINCT' . "\n" . - ' COUNT(*)', - 'cli' => "\x1b[35mSELECT DISTINCT\n" . - " \x1b[95mCOUNT\x1b[39m(*)\x1b[0m", - 'html' => 'SELECT DISTINCT
    ' . - '    COUNT(*)', - ], - 'create procedure' => [ - 'query' => 'create procedure test_procedure() begin from tbl select *; end', - 'text' => 'CREATE PROCEDURE test_procedure()' . "\n" . - 'BEGIN' . "\n" . - ' FROM' . "\n" . - ' tbl' . "\n" . - ' SELECT' . "\n" . - ' *;' . "\n" . - 'END', - 'cli' => "\x1b[35mCREATE PROCEDURE \x1b[39mtest_procedure()\n" . - "\x1b[95mBEGIN\n" . - " \x1b[35mFROM\n" . - " \x1b[39mtbl\n" . - " \x1b[35mSELECT\n" . - " \x1b[39m*;\n" . - "\x1b[95mEND\x1b[0m", - 'html' => 'CREATE ' . - 'PROCEDURE test_procedure()
    ' . - 'BEGIN
    ' . - '    FROM
    ' . - '        tbl
    ' . - '    SELECT
    ' . - '        *;
    ' . - 'END', - ], - 'insert' => [ - 'query' => 'insert into foo values (0, 0, 0), (1, 1, 1)', - 'text' => 'INSERT INTO foo' . "\n" . - 'VALUES(0, 0, 0),(1, 1, 1)', - 'cli' => "\x1b[35mINSERT INTO \x1b[39mfoo\n" . - "\x1b[35mVALUES\x1b[39m(\x1b[92m0\x1b[39m, \x1b[92m0\x1b[39m, " . - "\x1b[92m0\x1b[39m),(\x1b[92m1\x1b[39m, \x1b[92m1\x1b[39m, \x1b[92m1\x1b[39m)\x1b[0m", - 'html' => 'INSERT INTO foo
    ' . - 'VALUES(0, ' . - '0, 0),(' . - '1, 1, ' . - '1)', - ], - 'string as alias' => [ - 'query' => 'select "Text" as bar', - 'text' => 'SELECT' . "\n" . - ' "Text" AS bar', - 'cli' => "\x1b[35mSELECT\n" . - " \x1b[91m\"Text\" \x1b[35mAS \x1b[39mbar\x1b[0m", - 'html' => 'SELECT
    ' . - '    "Text" ' . - 'AS bar', - ], - 'escape cli' => [ - 'query' => "select 'text\x1b[33mcolor-inj'", - 'text' => 'SELECT' . "\n" . - " 'text\x1B[33mcolor-inj'", - 'cli' => "\x1b[35mSELECT\n" . - " \x1b[91m'text\\x1B[33mcolor-inj'\x1b[0m", - 'html' => 'SELECT
    ' . - '    \'text' . "\x1b[33m" . 'color-inj\'', - ], - 'escape html' => [ - 'query' => "select 'xss' from `xss` , nxss /*sxss*/", - 'text' => 'SELECT' . "\n" . - ' \'xss\'' . "\n" . - 'FROM' . "\n" . - ' `xss`,' . "\n" . - ' < s > nxss /*sxss*/', - 'cli' => "\x1b[35mSELECT\n" . - " \x1b[91m'xss'\n" . - "\x1b[35mFROM\n" . - " \x1b[36m`xss`\x1b[39m,\n" . - " < s > nxss \x1b[37m/*sxss*/\x1b[0m", - 'html' => 'SELECT
    ' . - '    \'<s>xss\'
    ' . - 'FROM
    ' . - '    `<s>xss`,' . - '
        < s > nxss /*s<s>xss*/', - ], - 'create table' => [ - 'query' => 'create table if not exists `pma__bookmark` (' . "\n" . - '`id` int(11) not null auto_increment,' . "\n" . - '`dbase` varchar(255) not null default "",' . "\n" . - '`user` varchar(255) not null default "",' . "\n" . - '`label` varchar(255) collate utf8_general_ci not null default "",' . "\n" . - '`query` text not null,' . "\n" . - 'primary key (`id`)', - 'text' => 'CREATE TABLE IF NOT EXISTS `pma__bookmark`(' . "\n" . - ' `id` INT(11) NOT NULL AUTO_INCREMENT,' . "\n" . - ' `dbase` VARCHAR(255) NOT NULL DEFAULT "",' . "\n" . - ' `user` VARCHAR(255) NOT NULL DEFAULT "",' . "\n" . - ' `label` VARCHAR(255) COLLATE utf8_general_ci NOT NULL DEFAULT "",' . "\n" . - ' `query` TEXT NOT NULL,' . "\n" . - ' PRIMARY KEY(`id`)', - 'cli' => "\x1b[35mCREATE TABLE IF NOT EXISTS \x1b[36m`pma__bookmark`\x1b[39m(\n" . - " \x1b[36m`id` \x1b[35mINT\x1b[39m(\x1b[92m11\x1b[39m) " . - "\x1b[35mNOT NULL \x1b[95mAUTO_INCREMENT\x1b[39m,\n" . - " \x1b[36m`dbase` \x1b[35mVARCHAR\x1b[39m(\x1b[92m255\x1b[39m) " . - "\x1b[35mNOT NULL DEFAULT \x1b[91m\"\"\x1b[39m,\n" . - " \x1b[36m`user` \x1b[35mVARCHAR\x1b[39m(\x1b[92m255\x1b[39m) " . - "\x1b[35mNOT NULL DEFAULT \x1b[91m\"\"\x1b[39m,\n" . - " \x1b[36m`label` \x1b[35mVARCHAR\x1b[39m(\x1b[92m255\x1b[39m) " . - "\x1b[35mCOLLATE \x1b[39mutf8_general_ci \x1b[35mNOT NULL DEFAULT \x1b[91m\"\"\x1b[39m,\n" . - " \x1b[36m`query` \x1b[95mTEXT \x1b[35mNOT NULL\x1b[39m,\n" . - " \x1b[35mPRIMARY KEY\x1b[39m(\x1b[36m`id`\x1b[39m)\x1b[0m", - 'html' => 'CREATE TABLE ' . - 'IF NOT EXISTS ' . - '`pma__bookmark`(
    ' . - '    `id` ' . - 'INT(11) ' . - 'NOT NULL AUTO_INCREMENT,
    ' . - '    `dbase` ' . - 'VARCHAR(255) ' . - 'NOT NULL DEFAULT ' . - '"",
    ' . - '    `user` ' . - 'VARCHAR(255) ' . - 'NOT NULL DEFAULT ' . - '"",
    ' . - '    `label` ' . - 'VARCHAR(255) ' . - 'COLLATE utf8_general_ci ' . - 'NOT NULL DEFAULT ' . - '"",
    ' . - '    `query` ' . - 'TEXT NOT NULL,
    ' . - '    ' . - 'PRIMARY KEY(`id`)', - ], - 'join' => [ - 'query' => 'join tbl2 on c1=c2', - 'text' => 'JOIN tbl2 ON c1 = c2', - 'cli' => "\x1b[35mJOIN \x1b[39mtbl2 \x1b[35mON \x1b[39mc1 = c2" . - "\x1b[0m", - 'html' => 'JOIN tbl2 ON c1 = c2', - ], - 'named param' => [ - 'query' => 'select * from tbl where col = :param', - 'text' => 'SELECT' . "\n" . - ' *' . "\n" . - 'FROM' . "\n" . - ' tbl' . "\n" . - 'WHERE' . "\n" . - ' col = :param', - 'cli' => "\x1b[35mSELECT\n" . - " \x1b[39m*\n" . - "\x1b[35mFROM\n" . - " \x1b[39mtbl\n" . - "\x1b[35mWHERE\n" . - " \x1b[39mcol = \x1b[31m:param\x1b[0m", - 'html' => 'SELECT
    ' . - '    *
    ' . - 'FROM
    ' . - '    tbl
    ' . - 'WHERE
    ' . - '    col = :param', - ], - 'anon param' => [ - 'query' => 'select * from tbl where col = ?', - 'text' => 'SELECT' . "\n" . - ' *' . "\n" . - 'FROM' . "\n" . - ' tbl' . "\n" . - 'WHERE' . "\n" . - ' col = ?', - 'cli' => "\x1b[35mSELECT\n" . - " \x1b[39m*\n" . - "\x1b[35mFROM\n" . - " \x1b[39mtbl\n" . - "\x1b[35mWHERE\n" . - " \x1b[39mcol = \x1b[31m?\x1b[0m", - 'html' => 'SELECT
    ' . - '    *
    ' . - 'FROM
    ' . - '    tbl
    ' . - 'WHERE
    ' . - '    col = ?', - ], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/MiscTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/MiscTest.php deleted file mode 100644 index 192b22c3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/MiscTest.php +++ /dev/null @@ -1,137 +0,0 @@ -}> - * }> $expected - * - * @dataProvider getAliasesProvider - */ - public function testGetAliases(string $query, ?string $db, array $expected): void - { - $parser = new Parser($query); - $statement = empty($parser->statements[0]) ? - null : $parser->statements[0]; - $this->assertEquals($expected, Misc::getAliases($statement, $db)); - } - - /** - * @return array> - * @psalm-return list}> - * }>}> - */ - public static function getAliasesProvider(): array - { - return [ - [ - 'select * from (select 1) tbl', - 'mydb', - [], - ], - [ - 'select i.name as `n`,abcdef gh from qwerty i', - 'mydb', - [ - 'mydb' => [ - 'alias' => null, - 'tables' => [ - 'qwerty' => [ - 'alias' => 'i', - 'columns' => [ - 'name' => 'n', - 'abcdef' => 'gh', - ], - ], - ], - ], - ], - ], - [ - 'select film_id id,title from film', - 'sakila', - [ - 'sakila' => [ - 'alias' => null, - 'tables' => [ - 'film' => [ - 'alias' => null, - 'columns' => ['film_id' => 'id'], - ], - ], - ], - ], - ], - [ - 'select `sakila`.`A`.`actor_id` as aid,`F`.`film_id` `fid`,' - . 'last_update updated from `sakila`.actor A join `film_actor` as ' - . '`F` on F.actor_id = A.`actor_id`', - 'sakila', - [ - 'sakila' => [ - 'alias' => null, - 'tables' => [ - 'film_actor' => [ - 'alias' => 'F', - 'columns' => [ - 'film_id' => 'fid', - 'last_update' => 'updated', - ], - ], - 'actor' => [ - 'alias' => 'A', - 'columns' => [ - 'actor_id' => 'aid', - 'last_update' => 'updated', - ], - ], - ], - ], - ], - ], - [ - 'SELECT film_id FROM (SELECT * FROM film) as f;', - 'sakila', - [], - ], - [ - '', - null, - [], - ], - [ - 'SELECT 1', - null, - [], - ], - [ - 'SELECT * FROM orders AS ord WHERE 1', - 'db', - [ - 'db' => [ - 'alias' => null, - 'tables' => [ - 'orders' => [ - 'alias' => 'ord', - 'columns' => [], - ], - ], - ], - ], - ], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/QueryTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/QueryTest.php deleted file mode 100644 index 583b67ab..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/QueryTest.php +++ /dev/null @@ -1,747 +0,0 @@ - $expected - * @psalm-param QueryFlagsType $expected - * - * @dataProvider getFlagsProvider - */ - public function testGetFlags(string $query, array $expected): void - { - $parser = new Parser($query); - $this->assertEquals($expected, Query::getFlags($parser->statements[0])); - } - - /** - * @return array>> - * @psalm-return list - */ - public static function getFlagsProvider(): array - { - return [ - [ - 'ALTER TABLE DROP col', - [ - 'reload' => true, - 'querytype' => 'ALTER', - ], - ], - [ - 'CALL test()', - [ - 'is_procedure' => true, - 'querytype' => 'CALL', - ], - ], - [ - 'CREATE TABLE tbl (id INT)', - [ - 'reload' => true, - 'querytype' => 'CREATE', - ], - ], - [ - 'CHECK TABLE tbl', - [ - 'is_maint' => true, - 'querytype' => 'CHECK', - ], - ], - [ - 'DELETE FROM tbl', - [ - 'is_affected' => true, - 'is_delete' => true, - 'querytype' => 'DELETE', - ], - ], - [ - 'DROP VIEW v', - [ - 'reload' => true, - 'querytype' => 'DROP', - ], - ], - [ - 'DROP DATABASE db', - [ - 'drop_database' => true, - 'reload' => true, - 'querytype' => 'DROP', - ], - ], - [ - 'EXPLAIN tbl', - [ - 'is_explain' => true, - 'querytype' => 'EXPLAIN', - ], - ], - [ - 'LOAD DATA INFILE \'/tmp/test.txt\' INTO TABLE test', - [ - 'is_affected' => true, - 'is_insert' => true, - 'querytype' => 'LOAD', - ], - ], - [ - 'INSERT INTO tbl VALUES (1)', - [ - 'is_affected' => true, - 'is_insert' => true, - 'querytype' => 'INSERT', - ], - ], - [ - 'REPLACE INTO tbl VALUES (2)', - [ - 'is_affected' => true, - 'is_replace' => true, - 'is_insert' => true, - 'querytype' => 'REPLACE', - ], - ], - [ - 'SELECT 1', - [ - 'is_select' => true, - 'querytype' => 'SELECT', - ], - ], - [ - 'SELECT * FROM tbl', - [ - 'is_select' => true, - 'select_from' => true, - 'querytype' => 'SELECT', - ], - ], - [ - 'SELECT DISTINCT * FROM tbl LIMIT 0, 10 ORDER BY id', - [ - 'distinct' => true, - 'is_select' => true, - 'select_from' => true, - 'limit' => true, - 'order' => true, - 'querytype' => 'SELECT', - ], - ], - [ - 'SELECT * FROM actor GROUP BY actor_id', - [ - 'is_group' => true, - 'is_select' => true, - 'select_from' => true, - 'group' => true, - 'querytype' => 'SELECT', - ], - ], - [ - 'SELECT col1, col2 FROM table1 PROCEDURE ANALYSE(10, 2000);', - [ - 'is_analyse' => true, - 'is_select' => true, - 'select_from' => true, - 'querytype' => 'SELECT', - ], - ], - [ - 'SELECT * FROM tbl INTO OUTFILE "/tmp/export.txt"', - [ - 'is_export' => true, - 'is_select' => true, - 'select_from' => true, - 'querytype' => 'SELECT', - ], - ], - [ - 'SELECT COUNT(id), SUM(id) FROM tbl', - [ - 'is_count' => true, - 'is_func' => true, - 'is_select' => true, - 'select_from' => true, - 'querytype' => 'SELECT', - ], - ], - [ - 'SELECT count(*) FROM tbl', - [ - 'is_count' => true, - 'is_select' => true, - 'select_from' => true, - 'querytype' => 'SELECT', - ], - ], - [ - 'SELECT sum(*) FROM tbl', - [ - 'is_func' => true, - 'is_select' => true, - 'select_from' => true, - 'querytype' => 'SELECT', - ], - ], - [ - 'SELECT (SELECT "foo")', - [ - 'is_select' => true, - 'is_subquery' => true, - 'querytype' => 'SELECT', - ], - ], - [ - 'SELECT * FROM customer HAVING store_id = 2;', - [ - 'is_select' => true, - 'select_from' => true, - 'is_group' => true, - 'having' => true, - 'querytype' => 'SELECT', - ], - ], - [ - 'SELECT * FROM table1 INNER JOIN table2 ON table1.id=table2.id;', - [ - 'is_select' => true, - 'select_from' => true, - 'join' => true, - 'querytype' => 'SELECT', - ], - ], - [ - 'SHOW CREATE TABLE tbl', - [ - 'is_show' => true, - 'querytype' => 'SHOW', - ], - ], - [ - 'UPDATE tbl SET id = 1', - [ - 'is_affected' => true, - 'querytype' => 'UPDATE', - ], - ], - [ - 'ANALYZE TABLE tbl', - [ - 'is_maint' => true, - 'querytype' => 'ANALYZE', - ], - ], - [ - 'CHECKSUM TABLE tbl', - [ - 'is_maint' => true, - 'querytype' => 'CHECKSUM', - ], - ], - [ - 'OPTIMIZE TABLE tbl', - [ - 'is_maint' => true, - 'querytype' => 'OPTIMIZE', - ], - ], - [ - 'REPAIR TABLE tbl', - [ - 'is_maint' => true, - 'querytype' => 'REPAIR', - ], - ], - [ - '(SELECT a FROM t1 WHERE a=10 AND B=1 ORDER BY a LIMIT 10) ' . - 'UNION ' . - '(SELECT a FROM t2 WHERE a=11 AND B=2 ORDER BY a LIMIT 10);', - [ - 'is_select' => true, - 'select_from' => true, - 'limit' => true, - 'order' => true, - 'union' => true, - 'querytype' => 'SELECT', - ], - ], - [ - 'SELECT * FROM orders AS ord WHERE 1', - [ - 'querytype' => 'SELECT', - 'is_select' => true, - 'select_from' => true, - ], - ], - [ - 'SET NAMES \'latin\'', - ['querytype' => 'SET'], - ], - ]; - } - - public function testGetAll(): void - { - $this->assertEquals( - [ - 'distinct' => false, - 'drop_database' => false, - 'group' => false, - 'having' => false, - 'is_affected' => false, - 'is_analyse' => false, - 'is_count' => false, - 'is_delete' => false, - 'is_explain' => false, - 'is_export' => false, - 'is_func' => false, - 'is_group' => false, - 'is_insert' => false, - 'is_maint' => false, - 'is_procedure' => false, - 'is_replace' => false, - 'is_select' => false, - 'is_show' => false, - 'is_subquery' => false, - 'join' => false, - 'limit' => false, - 'offset' => false, - 'order' => false, - 'querytype' => false, - 'reload' => false, - 'select_from' => false, - 'union' => false, - ], - Query::getAll('') - ); - - $query = 'SELECT *, actor.actor_id, sakila2.film.* - FROM sakila2.city, sakila2.film, actor'; - $parser = new Parser($query); - $this->assertEquals( - array_merge( - Query::getFlags($parser->statements[0], true), - [ - 'parser' => $parser, - 'statement' => $parser->statements[0], - 'select_expr' => ['*'], - 'select_tables' => [ - [ - 'actor', - null, - ], - [ - 'film', - 'sakila2', - ], - ], - ] - ), - Query::getAll($query) - ); - - $query = 'SELECT * FROM sakila.actor, film'; - $parser = new Parser($query); - $this->assertEquals( - array_merge( - Query::getFlags($parser->statements[0], true), - [ - 'parser' => $parser, - 'statement' => $parser->statements[0], - 'select_expr' => ['*'], - 'select_tables' => [ - [ - 'actor', - 'sakila', - ], - [ - 'film', - null, - ], - ], - ] - ), - Query::getAll($query) - ); - - $query = 'SELECT a.actor_id FROM sakila.actor AS a, film'; - $parser = new Parser($query); - $this->assertEquals( - array_merge( - Query::getFlags($parser->statements[0], true), - [ - 'parser' => $parser, - 'statement' => $parser->statements[0], - 'select_expr' => [], - 'select_tables' => [ - [ - 'actor', - 'sakila', - ], - ], - ] - ), - Query::getAll($query) - ); - - $query = 'SELECT CASE WHEN 2 IS NULL THEN "this is true" ELSE "this is false" END'; - $parser = new Parser($query); - $this->assertEquals( - array_merge( - Query::getFlags($parser->statements[0], true), - [ - 'parser' => $parser, - 'statement' => $parser->statements[0], - 'select_expr' => ['CASE WHEN 2 IS NULL THEN "this is true" ELSE "this is false" END'], - 'select_tables' => [], - ] - ), - Query::getAll($query) - ); - } - - /** - * @param string[] $expected - * - * @dataProvider getTablesProvider - */ - public function testGetTables(string $query, array $expected): void - { - $parser = new Parser($query); - $this->assertEquals( - $expected, - Query::getTables($parser->statements[0]) - ); - } - - /** - * @return array> - * @psalm-return list - */ - public static function getTablesProvider(): array - { - return [ - [ - 'INSERT INTO tbl(`id`, `name`) VALUES (1, "Name")', - ['`tbl`'], - ], - [ - 'INSERT INTO 0tbl(`id`, `name`) VALUES (1, "Name")', - ['`0tbl`'], - ], - [ - 'UPDATE tbl SET id = 0', - ['`tbl`'], - ], - [ - 'UPDATE 0tbl SET id = 0', - ['`0tbl`'], - ], - [ - 'DELETE FROM tbl WHERE id < 10', - ['`tbl`'], - ], - [ - 'DELETE FROM 0tbl WHERE id < 10', - ['`0tbl`'], - ], - [ - 'TRUNCATE tbl', - ['`tbl`'], - ], - [ - 'DROP VIEW v', - [], - ], - [ - 'DROP TABLE tbl1, tbl2', - [ - '`tbl1`', - '`tbl2`', - ], - ], - [ - 'RENAME TABLE a TO b, c TO d', - [ - '`a`', - '`c`', - ], - ], - ]; - } - - public function testGetClause(): void - { - /* Assertion 1 */ - $parser = new Parser( - 'SELECT c.city_id, c.country_id ' . - 'FROM `city` ' . - 'WHERE city_id < 1 /* test */' . - 'ORDER BY city_id ASC ' . - 'LIMIT 0, 1 ' . - 'INTO OUTFILE "/dev/null"' - ); - $this->assertEquals( - '0, 1 INTO OUTFILE "/dev/null"', - Query::getClause( - $parser->statements[0], - $parser->list, - 'LIMIT', - 0 - ) - ); - // Assert it returns all clauses between FROM and LIMIT - $this->assertEquals( - 'WHERE city_id < 1 ORDER BY city_id ASC', - Query::getClause( - $parser->statements[0], - $parser->list, - 'FROM', - 'LIMIT' - ) - ); - // Assert it returns all clauses between SELECT and LIMIT - $this->assertEquals( - 'FROM `city` WHERE city_id < 1 ORDER BY city_id ASC', - Query::getClause( - $parser->statements[0], - $parser->list, - 'LIMIT', - 'SELECT' - ) - ); - - /* Assertion 2 */ - $parser = new Parser( - 'DELETE FROM `renewal` ' . - 'WHERE number = "1DB" AND actionDate <= CURRENT_DATE() ' . - 'ORDER BY id ASC ' . - 'LIMIT 1' - ); - $this->assertEquals( - 'number = "1DB" AND actionDate <= CURRENT_DATE()', - Query::getClause( - $parser->statements[0], - $parser->list, - 'WHERE' - ) - ); - $this->assertEquals( - '1', - Query::getClause( - $parser->statements[0], - $parser->list, - 'LIMIT' - ) - ); - $this->assertEquals( - 'id ASC', - Query::getClause( - $parser->statements[0], - $parser->list, - 'ORDER BY' - ) - ); - - /* Assertion 3 */ - $parser = new Parser( - 'UPDATE `renewal` SET `some_column` = 1 ' . - 'WHERE number = "1DB" AND actionDate <= CURRENT_DATE() ' . - 'ORDER BY id ASC ' . - 'LIMIT 1' - ); - $this->assertEquals( - 'number = "1DB" AND actionDate <= CURRENT_DATE()', - Query::getClause( - $parser->statements[0], - $parser->list, - 'WHERE' - ) - ); - $this->assertEquals( - '1', - Query::getClause( - $parser->statements[0], - $parser->list, - 'LIMIT' - ) - ); - $this->assertEquals( - 'id ASC', - Query::getClause( - $parser->statements[0], - $parser->list, - 'ORDER BY' - ) - ); - } - - public function testReplaceClause(): void - { - $parser = new Parser('SELECT *, (SELECT 1) FROM film LIMIT 0, 10;'); - $this->assertEquals( - 'SELECT *, (SELECT 1) FROM film WHERE film_id > 0 LIMIT 0, 10', - Query::replaceClause( - $parser->statements[0], - $parser->list, - 'WHERE film_id > 0' - ) - ); - - $parser = new Parser( - 'select supplier.city, supplier.id from supplier ' - . 'union select customer.city, customer.id from customer' - ); - $this->assertEquals( - 'select supplier.city, supplier.id from supplier ' - . 'union select customer.city, customer.id from customer' - . ' ORDER BY city ', - Query::replaceClause( - $parser->statements[0], - $parser->list, - 'ORDER BY city' - ) - ); - - $parser = new Parser('SELECT * FROM `t` FOR UPDATE'); - $this->assertEquals( - 'SELECT * FROM `t` LIMIT 0, 25 FOR UPDATE', - Query::replaceClause( - $parser->statements[0], - $parser->list, - 'LIMIT 0, 25' - ) - ); - } - - public function testReplaceClauseOnlyKeyword(): void - { - $parser = new Parser('SELECT *, (SELECT 1) FROM film LIMIT 0, 10'); - $this->assertEquals( - ' SELECT SQL_CALC_FOUND_ROWS *, (SELECT 1) FROM film LIMIT 0, 10', - Query::replaceClause( - $parser->statements[0], - $parser->list, - 'SELECT SQL_CALC_FOUND_ROWS', - null, - true - ) - ); - } - - public function testReplaceNonExistingPart(): void - { - $parser = new Parser('ALTER TABLE `sale_mast` OPTIMIZE PARTITION p3'); - $this->assertEquals( - ' ALTER TABLE `sale_mast` OPTIMIZE PARTITION p3', - Query::replaceClause( - $parser->statements[0], - $parser->list, - 'ORDER BY', - '' - ) - ); - } - - public function testReplaceClauses(): void - { - $parser = new Parser('SELECT *, (SELECT 1) FROM film LIMIT 0, 10;'); - $this->assertSame('', Query::replaceClauses($parser->statements[0], $parser->list, [])); - $this->assertEquals( - 'SELECT *, (SELECT 1) FROM film WHERE film_id > 0 LIMIT 0, 10', - Query::replaceClauses( - $parser->statements[0], - $parser->list, - [ - [ - 'WHERE', - 'WHERE film_id > 0', - ], - ] - ) - ); - - $parser = new Parser( - 'SELECT c.city_id, c.country_id ' . - 'INTO OUTFILE "/dev/null" ' . - 'FROM `city` ' . - 'WHERE city_id < 1 ' . - 'ORDER BY city_id ASC ' . - 'LIMIT 0, 1 ' - ); - $this->assertEquals( - 'SELECT c.city_id, c.country_id ' . - 'INTO OUTFILE "/dev/null" ' . - 'FROM city AS c ' . - 'ORDER BY city_id ASC ' . - 'LIMIT 0, 10 ', - Query::replaceClauses( - $parser->statements[0], - $parser->list, - [ - [ - 'FROM', - 'FROM city AS c', - ], - [ - 'WHERE', - '', - ], - [ - 'LIMIT', - 'LIMIT 0, 10', - ], - ] - ) - ); - } - - public function testGetFirstStatement(): void - { - $query = 'USE saki'; - $delimiter = null; - [$statement, $query, $delimiter] = Query::getFirstStatement($query, $delimiter); - $this->assertNull($statement); - $this->assertEquals('USE saki', $query); - - $query = 'USE sakila; ' . - '/*test comment*/' . - 'SELECT * FROM actor; ' . - 'DELIMITER $$ ' . - 'UPDATE actor SET last_name = "abc"$$' . - '/*!SELECT * FROM actor WHERE last_name = "abc"*/$$'; - $delimiter = null; - - [$statement, $query, $delimiter] = Query::getFirstStatement($query, $delimiter); - $this->assertEquals('USE sakila;', $statement); - - [$statement, $query, $delimiter] = Query::getFirstStatement($query, $delimiter); - $this->assertEquals('SELECT * FROM actor;', $statement); - - [$statement, $query, $delimiter] = Query::getFirstStatement($query, $delimiter); - $this->assertEquals('DELIMITER $$', $statement); - $this->assertEquals('$$', $delimiter); - - [$statement, $query, $delimiter] = Query::getFirstStatement($query, $delimiter); - $this->assertEquals('UPDATE actor SET last_name = "abc"$$', $statement); - - [$statement, $query, $delimiter] = Query::getFirstStatement($query, $delimiter); - $this->assertEquals('SELECT * FROM actor WHERE last_name = "abc"$$', $statement); - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/RoutineTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/RoutineTest.php deleted file mode 100644 index 2bdf11d6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/RoutineTest.php +++ /dev/null @@ -1,321 +0,0 @@ -assertEquals($expected, Routine::getReturnType($def)); - } - - /** - * @return array>> - * @psalm-return list - */ - public static function getReturnTypeProvider(): array - { - return [ - [ - '', - [ - '', - '', - '', - '', - '', - ], - ], - [ - 'TEXT', - [ - '', - '', - 'TEXT', - '', - '', - ], - ], - [ - 'INT(20)', - [ - '', - '', - 'INT', - '20', - '', - ], - ], - [ - 'INT UNSIGNED', - [ - '', - '', - 'INT', - '', - 'UNSIGNED', - ], - ], - [ - 'VARCHAR(1) CHARSET utf8', - [ - '', - '', - 'VARCHAR', - '1', - 'utf8', - ], - ], - [ - 'ENUM(\'a\', \'b\') CHARSET latin1', - [ - '', - '', - 'ENUM', - '\'a\',\'b\'', - 'latin1', - ], - ], - [ - 'DECIMAL(5,2) UNSIGNED ZEROFILL', - [ - '', - '', - 'DECIMAL', - '5,2', - 'UNSIGNED ZEROFILL', - ], - ], - [ - 'SET(\'test\'\'esc"\', \'more\\\'esc\')', - [ - '', - '', - 'SET', - '\'test\'\'esc"\',\'more\\\'esc\'', - '', - ], - ], - ]; - } - - /** - * @param string[] $expected - * - * @dataProvider getParameterProvider - */ - public function testGetParameter(string $def, array $expected): void - { - $this->assertEquals($expected, Routine::getParameter($def)); - } - - /** - * @return array>> - * @psalm-return list - */ - public static function getParameterProvider(): array - { - return [ - [ - '', - [ - '', - '', - '', - '', - '', - ], - ], - [ - '`foo` TEXT', - [ - '', - 'foo', - 'TEXT', - '', - '', - ], - ], - [ - '`foo` INT(20)', - [ - '', - 'foo', - 'INT', - '20', - '', - ], - ], - [ - 'IN `fo``fo` INT UNSIGNED', - [ - 'IN', - 'fo`fo', - 'INT', - '', - 'UNSIGNED', - ], - ], - [ - 'OUT bar VARCHAR(1) CHARSET utf8', - [ - 'OUT', - 'bar', - 'VARCHAR', - '1', - 'utf8', - ], - ], - [ - '`"baz\'\'` ENUM(\'a\', \'b\') CHARSET latin1', - [ - '', - '"baz\'\'', - 'ENUM', - '\'a\',\'b\'', - 'latin1', - ], - ], - [ - 'INOUT `foo` DECIMAL(5,2) UNSIGNED ZEROFILL', - [ - 'INOUT', - 'foo', - 'DECIMAL', - '5,2', - 'UNSIGNED ZEROFILL', - ], - ], - [ - '`foo``s func` SET(\'test\'\'esc"\', \'more\\\'esc\')', - [ - '', - 'foo`s func', - 'SET', - '\'test\'\'esc"\',\'more\\\'esc\'', - '', - ], - ], - ]; - } - - /** - * @param array $expected - * @psalm-param array{ - * num: int, - * dir: string[], - * name: string[], - * type: string[], - * length: string[], - * length_arr: string[][], - * opts: string[] - * } $expected - * - * @dataProvider getParametersProvider - */ - public function testGetParameters(string $query, array $expected): void - { - $parser = new Parser($query); - $this->assertEquals($expected, Routine::getParameters($parser->statements[0])); - } - - /** - * @return array>> - * @psalm-return list - */ - public static function getParametersProvider(): array - { - return [ - [ - 'CREATE PROCEDURE `foo`() SET @A=0', - [ - 'num' => 0, - 'dir' => [], - 'name' => [], - 'type' => [], - 'length' => [], - 'length_arr' => [], - 'opts' => [], - ], - ], - [ - 'CREATE DEFINER=`user\\`@`somehost``(` FUNCTION `foo```(`baz` INT) BEGIN SELECT NULL; END', - [ - 'num' => 1, - 'dir' => [0 => ''], - 'name' => [0 => 'baz'], - 'type' => [0 => 'INT'], - 'length' => [0 => ''], - 'length_arr' => [ - 0 => [], - ], - 'opts' => [0 => ''], - ], - ], - [ - 'CREATE PROCEDURE `foo`(IN `baz\\)` INT(25) zerofill unsigned) BEGIN SELECT NULL; END', - [ - 'num' => 1, - 'dir' => [0 => 'IN'], - 'name' => [0 => 'baz\\)'], - 'type' => [0 => 'INT'], - 'length' => [0 => '25'], - 'length_arr' => [ - 0 => ['25'], - ], - 'opts' => [0 => 'UNSIGNED ZEROFILL'], - ], - ], - [ - 'CREATE PROCEDURE `foo`(IN `baz\\` INT(001) zerofill, out bazz varchar(15) charset utf8) ' . - 'BEGIN SELECT NULL; END', - [ - 'num' => 2, - 'dir' => [ - 0 => 'IN', - 1 => 'OUT', - ], - 'name' => [ - 0 => 'baz\\', - 1 => 'bazz', - ], - 'type' => [ - 0 => 'INT', - 1 => 'VARCHAR', - ], - 'length' => [ - 0 => '1', - 1 => '15', - ], - 'length_arr' => [ - 0 => ['1'], - 1 => ['15'], - ], - 'opts' => [ - 0 => 'ZEROFILL', - 1 => 'utf8', - ], - ], - ], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/TableTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/TableTest.php deleted file mode 100644 index e0e7924e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/TableTest.php +++ /dev/null @@ -1,262 +0,0 @@ -[] $expected - * @psalm-param list $expected - * - * @dataProvider getForeignKeysProvider - */ - public function testGetForeignKeys(string $query, array $expected): void - { - $parser = new Parser($query); - $this->assertEquals($expected, Table::getForeignKeys($parser->statements[0])); - } - - /** - * @return array[]>> - * @psalm-return list}> - */ - public static function getForeignKeysProvider(): array - { - return [ - [ - 'CREATE USER test', - [], - ], - [ - 'CREATE TABLE `payment` ( - `payment_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT, - `customer_id` smallint(5) unsigned NOT NULL, - `staff_id` tinyint(3) unsigned NOT NULL, - `rental_id` int(11) DEFAULT NULL, - `amount` decimal(5,2) NOT NULL, - `payment_date` datetime NOT NULL, - `last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, - PRIMARY KEY (`payment_id`), - KEY `idx_fk_staff_id` (`staff_id`), - KEY `idx_fk_customer_id` (`customer_id`), - KEY `fk_payment_rental` (`rental_id`), - CONSTRAINT `fk_payment_customer` FOREIGN KEY (`customer_id`) - REFERENCES `customer` (`customer_id`) ON UPDATE CASCADE, - CONSTRAINT `fk_payment_rental` FOREIGN KEY (`rental_id`) - REFERENCES `rental` (`rental_id`) ON DELETE SET NULL ON UPDATE CASCADE, - CONSTRAINT `fk_payment_staff` FOREIGN KEY (`staff_id`) - REFERENCES `staff` (`staff_id`) ON UPDATE CASCADE - ) ENGINE=InnoDB AUTO_INCREMENT=16050 DEFAULT CHARSET=utf8', - [ - [ - 'constraint' => 'fk_payment_customer', - 'index_list' => ['customer_id'], - 'ref_db_name' => null, - 'ref_table_name' => 'customer', - 'ref_index_list' => ['customer_id'], - 'on_update' => 'CASCADE', - ], - [ - 'constraint' => 'fk_payment_rental', - 'index_list' => ['rental_id'], - 'ref_db_name' => null, - 'ref_table_name' => 'rental', - 'ref_index_list' => ['rental_id'], - 'on_delete' => 'SET_NULL', - 'on_update' => 'CASCADE', - ], - [ - 'constraint' => 'fk_payment_staff', - 'index_list' => ['staff_id'], - 'ref_db_name' => null, - 'ref_table_name' => 'staff', - 'ref_index_list' => ['staff_id'], - 'on_update' => 'CASCADE', - ], - ], - ], - [ - 'CREATE TABLE `actor` ( - `actor_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT, - `first_name` varchar(45) NOT NULL, - `last_name` varchar(45) NOT NULL, - `last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, - PRIMARY KEY (`actor_id`), - KEY `idx_actor_last_name` (`last_name`) - ) ENGINE=InnoDB AUTO_INCREMENT=201 DEFAULT CHARSET=utf8', - [], - ], - [ - 'CREATE TABLE `address` ( - `address_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT, - `address` varchar(50) NOT NULL, - `address2` varchar(50) DEFAULT NULL, - `district` varchar(20) NOT NULL, - `city_id` smallint(5) unsigned NOT NULL, - `postal_code` varchar(10) DEFAULT NULL, - `phone` varchar(20) NOT NULL, - `last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, - PRIMARY KEY (`address_id`), - KEY `idx_fk_city_id` (`city_id`), - CONSTRAINT `fk_address_city` FOREIGN KEY (`city_id`) REFERENCES `city` (`city_id`) ON UPDATE CASCADE - ) ENGINE=InnoDB AUTO_INCREMENT=606 DEFAULT CHARSET=utf8', - [ - [ - 'constraint' => 'fk_address_city', - 'index_list' => ['city_id'], - 'ref_db_name' => null, - 'ref_table_name' => 'city', - 'ref_index_list' => ['city_id'], - 'on_update' => 'CASCADE', - ], - ], - ], - ]; - } - - /** - * @param array> $expected - * @psalm-param array $expected - * - * @dataProvider getFieldsProvider - */ - public function testGetFields(string $query, array $expected): void - { - $parser = new Parser($query); - $this->assertEquals($expected, Table::getFields($parser->statements[0])); - } - - /** - * @return array>>> - * @psalm-return list}> - */ - public static function getFieldsProvider(): array - { - return [ - [ - 'CREATE USER test', - [], - ], - [ - 'CREATE TABLE `address` ( - `address_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT, - `address` varchar(50) NOT NULL, - `address2` varchar(50) DEFAULT NULL, - `district` varchar(20) NOT NULL, - `city_id` smallint(5) unsigned NOT NULL, - `postal_code` varchar(10) DEFAULT NULL, - `phone` varchar(20) NOT NULL, - `last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, - PRIMARY KEY (`address_id`), - KEY `idx_fk_city_id` (`city_id`), - CONSTRAINT `fk_address_city` FOREIGN KEY (`city_id`) REFERENCES `city` (`city_id`) ON UPDATE CASCADE - ) ENGINE=InnoDB AUTO_INCREMENT=606 DEFAULT CHARSET=utf8', - [ - 'address_id' => [ - 'type' => 'SMALLINT', - 'timestamp_not_null' => false, - ], - 'address' => [ - 'type' => 'VARCHAR', - 'timestamp_not_null' => false, - ], - 'address2' => [ - 'type' => 'VARCHAR', - 'timestamp_not_null' => false, - 'default_value' => 'NULL', - ], - 'district' => [ - 'type' => 'VARCHAR', - 'timestamp_not_null' => false, - ], - 'city_id' => [ - 'type' => 'SMALLINT', - 'timestamp_not_null' => false, - ], - 'postal_code' => [ - 'type' => 'VARCHAR', - 'timestamp_not_null' => false, - 'default_value' => 'NULL', - ], - 'phone' => [ - 'type' => 'VARCHAR', - 'timestamp_not_null' => false, - ], - 'last_update' => [ - 'type' => 'TIMESTAMP', - 'timestamp_not_null' => true, - 'default_value' => 'CURRENT_TIMESTAMP', - 'default_current_timestamp' => true, - 'on_update_current_timestamp' => true, - ], - ], - ], - [ - 'CREATE TABLE table1 ( - a INT NOT NULL, - b VARCHAR(32), - c INT AS (a mod 10) VIRTUAL, - d VARCHAR(5) AS (left(b,5)) PERSISTENT - )', - [ - 'a' => [ - 'type' => 'INT', - 'timestamp_not_null' => false, - ], - 'b' => [ - 'type' => 'VARCHAR', - 'timestamp_not_null' => false, - ], - 'c' => [ - 'type' => 'INT', - 'timestamp_not_null' => false, - 'generated' => true, - 'expr' => '(a mod 10)', - ], - 'd' => [ - 'type' => 'VARCHAR', - 'timestamp_not_null' => false, - 'generated' => true, - 'expr' => '(left(b,5))', - ], - ], - ], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/TokensTest.php b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/TokensTest.php deleted file mode 100644 index 3cf69055..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/Utils/TokensTest.php +++ /dev/null @@ -1,122 +0,0 @@ -[] $find - * @param Token[] $replace - * - * @dataProvider replaceTokensProvider - */ - public function testReplaceTokens(string $list, array $find, array $replace, string $expected): void - { - $this->assertEquals($expected, Tokens::replaceTokens($list, $find, $replace)); - } - - /** - * @return array[]|Token[]>> - * @psalm-return list>, Token[], string}> - */ - public static function replaceTokensProvider(): array - { - return [ - [ - 'SELECT * FROM /*x*/a/*c*/.b', - [ - ['value_str' => 'a'], - ['token' => '.'], - ], - [ - new Token('c'), - new Token('.'), - ], - 'SELECT * FROM /*x*/c.b', - ], - ]; - } - - /** - * @param array $pattern - * - * @dataProvider matchProvider - */ - public function testMatch(Token $token, array $pattern, bool $expected): void - { - $this->assertSame($expected, Tokens::match($token, $pattern)); - } - - /** - * @return array>> - * @psalm-return list, bool}> - */ - public static function matchProvider(): array - { - return [ - [ - new Token(''), - [], - true, - ], - - [ - new Token('"abc"', Token::TYPE_STRING, Token::FLAG_STRING_DOUBLE_QUOTES), - ['token' => '"abc"'], - true, - ], - [ - new Token('"abc"', Token::TYPE_STRING, Token::FLAG_STRING_DOUBLE_QUOTES), - ['value' => 'abc'], - true, - ], - [ - new Token('"abc"', Token::TYPE_STRING, Token::FLAG_STRING_DOUBLE_QUOTES), - ['value_str' => 'ABC'], - true, - ], - [ - new Token('"abc"', Token::TYPE_STRING, Token::FLAG_STRING_DOUBLE_QUOTES), - ['type' => Token::TYPE_STRING], - true, - ], - [ - new Token('"abc"', Token::TYPE_STRING, Token::FLAG_STRING_DOUBLE_QUOTES), - ['flags' => Token::FLAG_STRING_DOUBLE_QUOTES], - true, - ], - - [ - new Token('"abc"', Token::TYPE_STRING, Token::FLAG_STRING_DOUBLE_QUOTES), - ['token' => '"abcd"'], - false, - ], - [ - new Token('"abc"', Token::TYPE_STRING, Token::FLAG_STRING_DOUBLE_QUOTES), - ['value' => 'abcd'], - false, - ], - [ - new Token('"abc"', Token::TYPE_STRING, Token::FLAG_STRING_DOUBLE_QUOTES), - ['value_str' => 'ABCd'], - false, - ], - [ - new Token('"abc"', Token::TYPE_STRING, Token::FLAG_STRING_DOUBLE_QUOTES), - ['type' => Token::TYPE_NUMBER], - false, - ], - [ - new Token('"abc"', Token::TYPE_STRING, Token::FLAG_STRING_DOUBLE_QUOTES), - ['flags' => Token::FLAG_STRING_SINGLE_QUOTES], - false, - ], - ]; - } -} diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz1.in deleted file mode 100644 index 406cde8e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz1.in +++ /dev/null @@ -1 +0,0 @@ -ALTER..2 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz1.out deleted file mode 100644 index c7a03aba..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz1.out +++ /dev/null @@ -1,94 +0,0 @@ -{ - "query": "ALTER..2", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER..2", - "len": 8, - "last": 8, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".2", - "value": 0.2, - "keyword": null, - "type": 6, - "flags": 2, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 4, - "idx": 4 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": null, - "altered": [], - "options": null, - "first": 0, - "last": 0 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unrecognized alter operation.", - { - "@type": "@2" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@4" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz2.in deleted file mode 100644 index bda1ec62..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz2.in +++ /dev/null @@ -1 +0,0 @@ -WITH]( \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz2.out deleted file mode 100644 index 335ea320..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz2.out +++ /dev/null @@ -1,111 +0,0 @@ -{ - "query": "WITH](", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "WITH](", - "len": 6, - "last": 6, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "]", - "value": "]", - "keyword": null, - "type": 0, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 4, - "idx": 4 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\WithStatement", - "withers": [], - "cteStatementParser": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 0 - } - ], - "brackets": 1, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [ - [ - "Unexpected character.", - "]", - 4, - 0 - ] - ], - "parser": [ - [ - "The name of the CTE was expected.", - { - "@type": "@3" - }, - 0 - ], - [ - "Unexpected end of the WITH CTE.", - { - "@type": "@3" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@3" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz3.in deleted file mode 100644 index 48d31fa9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz3.in +++ /dev/null @@ -1 +0,0 @@ -WITH*/A( \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz3.out deleted file mode 100644 index 6b9ee990..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz3.out +++ /dev/null @@ -1,113 +0,0 @@ -{ - "query": "WITH*/A(", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "WITH*/A(", - "len": 8, - "last": 8, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*/", - "value": "*/", - "keyword": null, - "type": 4, - "flags": 2, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "A", - "value": "A", - "keyword": null, - "type": 0, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 5, - "idx": 5 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\WithStatement", - "withers": { - "A": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\WithKeyword", - "name": "A", - "columns": [], - "statement": null - } - }, - "cteStatementParser": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 3 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "A closing bracket was expected.", - { - "@type": "@6" - }, - 0 - ], - [ - "Unexpected end of the WITH CTE.", - { - "@type": "@6" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz4.in deleted file mode 100644 index c688c143..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz4.in +++ /dev/null @@ -1 +0,0 @@ -ALTeR=SET \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz4.out deleted file mode 100644 index 2801189a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz4.out +++ /dev/null @@ -1,98 +0,0 @@ -{ - "query": "ALTeR=SET", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTeR=SET", - "len": 9, - "last": 9, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTeR", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 4, - "idx": 4 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": null, - "altered": [], - "options": null, - "first": 0, - "last": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "end_options": null, - "set": [], - "first": 1, - "last": 2 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unrecognized alter operation.", - { - "@type": "@2" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz5.in deleted file mode 100644 index 61dd3988..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz5.in +++ /dev/null @@ -1 +0,0 @@ -+0xO \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz5.out deleted file mode 100644 index ee8ec15e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz5.out +++ /dev/null @@ -1,76 +0,0 @@ -{ - "query": "+0xO", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "+0xO", - "len": 4, - "last": 4, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+0x", - "value": 0, - "keyword": null, - "type": 6, - "flags": 1, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "O", - "value": "O", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 3, - "idx": 3 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected beginning of statement.", - { - "@type": "@2" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@3" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz6.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz6.in deleted file mode 100644 index f3afa770..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz6.in +++ /dev/null @@ -1 +0,0 @@ --+0x! \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz6.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz6.out deleted file mode 100644 index fce6bf5b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/fuzz6.out +++ /dev/null @@ -1,69 +0,0 @@ -{ - "query": "-+0x!", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "-+0x!", - "len": 5, - "last": 5, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-+0x", - "value": 0, - "keyword": null, - "type": 6, - "flags": 9, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "!", - "value": "!", - "keyword": null, - "type": 2, - "flags": 2, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 3, - "idx": 3 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected beginning of statement.", - { - "@type": "@2" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh14.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh14.in deleted file mode 100644 index 3a2c10b1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh14.in +++ /dev/null @@ -1,3 +0,0 @@ -ALTER TABLE - `actor` MODIFY `actor_id` SMALLINT(5) UNSIGNED NOT NULL AUTO_INCREMENT, - AUTO_INCREMENT = 201; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh14.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh14.out deleted file mode 100644 index 3ae7c884..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh14.out +++ /dev/null @@ -1,416 +0,0 @@ -{ - "query": "ALTER TABLE\n `actor` MODIFY `actor_id` SMALLINT(5) UNSIGNED NOT NULL AUTO_INCREMENT,\n AUTO_INCREMENT = 201;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE\n `actor` MODIFY `actor_id` SMALLINT(5) UNSIGNED NOT NULL AUTO_INCREMENT,\n AUTO_INCREMENT = 201;", - "len": 113, - "last": 113, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`actor`", - "value": "actor", - "keyword": null, - "type": 8, - "flags": 2, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MODIFY", - "value": "MODIFY", - "keyword": "MODIFY", - "type": 1, - "flags": 1, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`actor_id`", - "value": "actor_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SMALLINT", - "value": "SMALLINT", - "keyword": "SMALLINT", - "type": 1, - "flags": 11, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "5", - "value": 5, - "keyword": null, - "type": 6, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AUTO_INCREMENT", - "value": "AUTO_INCREMENT", - "keyword": "AUTO_INCREMENT", - "type": 1, - "flags": 1, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AUTO_INCREMENT", - "value": "AUTO_INCREMENT", - "keyword": "AUTO_INCREMENT", - "type": 1, - "flags": 1, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "201", - "value": 201, - "keyword": null, - "type": 6, - "flags": 0, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 29, - "idx": 29 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "actor", - "column": null, - "expr": "`actor`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "MODIFY" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "actor_id", - "expr": "`actor_id`", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - } - ] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "AUTO_INCREMENT", - "equals": true, - "expr": "201", - "value": "201" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 27 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh16.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh16.in deleted file mode 100644 index 7f6ea42f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh16.in +++ /dev/null @@ -1,11 +0,0 @@ -CREATE TABLE `jos_core_acl_aro` ( - `id` int(11) NOT NULL, - `section_value` varchar(240) NOT NULL DEFAULT '0', - `value` varchar(240) NOT NULL DEFAULT '', - `order_value` int(11) NOT NULL DEFAULT '0', - `name` varchar(255) NOT NULL DEFAULT '', - `hidden` int(11) NOT NULL DEFAULT '0', - PRIMARY KEY (`id`), - UNIQUE KEY `jos_section_value_value_aro` (`section_value`(100),`value`(15)) USING BTREE, - KEY `jos_gacl_hidden_aro` (`hidden`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh16.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh16.out deleted file mode 100644 index 20930c71..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh16.out +++ /dev/null @@ -1,1593 +0,0 @@ -{ - "query": "CREATE TABLE `jos_core_acl_aro` (\n `id` int(11) NOT NULL,\n `section_value` varchar(240) NOT NULL DEFAULT '0',\n `value` varchar(240) NOT NULL DEFAULT '',\n `order_value` int(11) NOT NULL DEFAULT '0',\n `name` varchar(255) NOT NULL DEFAULT '',\n `hidden` int(11) NOT NULL DEFAULT '0',\n PRIMARY KEY (`id`),\n UNIQUE KEY `jos_section_value_value_aro` (`section_value`(100),`value`(15)) USING BTREE,\n KEY `jos_gacl_hidden_aro` (`hidden`)\n) ENGINE=InnoDB DEFAULT CHARSET=latin1", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE `jos_core_acl_aro` (\n `id` int(11) NOT NULL,\n `section_value` varchar(240) NOT NULL DEFAULT '0',\n `value` varchar(240) NOT NULL DEFAULT '',\n `order_value` int(11) NOT NULL DEFAULT '0',\n `name` varchar(255) NOT NULL DEFAULT '',\n `hidden` int(11) NOT NULL DEFAULT '0',\n PRIMARY KEY (`id`),\n UNIQUE KEY `jos_section_value_value_aro` (`section_value`(100),`value`(15)) USING BTREE,\n KEY `jos_gacl_hidden_aro` (`hidden`)\n) ENGINE=InnoDB DEFAULT CHARSET=latin1", - "len": 476, - "last": 476, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`jos_core_acl_aro`", - "value": "jos_core_acl_aro", - "keyword": null, - "type": 8, - "flags": 2, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`id`", - "value": "id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "int", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "11", - "value": 11, - "keyword": null, - "type": 6, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`section_value`", - "value": "section_value", - "keyword": null, - "type": 8, - "flags": 2, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "varchar", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "240", - "value": 240, - "keyword": null, - "type": 6, - "flags": 0, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'0'", - "value": "0", - "keyword": null, - "type": 7, - "flags": 1, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`value`", - "value": "value", - "keyword": null, - "type": 8, - "flags": 2, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "varchar", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "240", - "value": 240, - "keyword": null, - "type": 6, - "flags": 0, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 134 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 144 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "''", - "value": "", - "keyword": null, - "type": 7, - "flags": 1, - "position": 152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 154 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`order_value`", - "value": "order_value", - "keyword": null, - "type": 8, - "flags": 2, - "position": 158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 171 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "int", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 172 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 175 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "11", - "value": 11, - "keyword": null, - "type": 6, - "flags": 0, - "position": 176 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 178 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 179 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 180 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 188 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 189 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 196 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'0'", - "value": "0", - "keyword": null, - "type": 7, - "flags": 1, - "position": 197 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 200 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 201 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`name`", - "value": "name", - "keyword": null, - "type": 8, - "flags": 2, - "position": 204 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 210 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "varchar", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 211 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 218 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "255", - "value": 255, - "keyword": null, - "type": 6, - "flags": 0, - "position": 219 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 222 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 223 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 224 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 232 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 233 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 240 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "''", - "value": "", - "keyword": null, - "type": 7, - "flags": 1, - "position": 241 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 243 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 244 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`hidden`", - "value": "hidden", - "keyword": null, - "type": 8, - "flags": 2, - "position": 247 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 255 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "int", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 256 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 259 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "11", - "value": 11, - "keyword": null, - "type": 6, - "flags": 0, - "position": 260 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 262 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 263 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 264 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 272 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 273 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 280 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'0'", - "value": "0", - "keyword": null, - "type": 7, - "flags": 1, - "position": 281 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 284 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 285 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PRIMARY KEY", - "value": "PRIMARY KEY", - "keyword": "PRIMARY KEY", - "type": 1, - "flags": 23, - "position": 288 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 299 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 300 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`id`", - "value": "id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 301 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 305 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 306 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 307 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNIQUE KEY", - "value": "UNIQUE KEY", - "keyword": "UNIQUE KEY", - "type": 1, - "flags": 23, - "position": 310 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 320 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`jos_section_value_value_aro`", - "value": "jos_section_value_value_aro", - "keyword": null, - "type": 8, - "flags": 2, - "position": 321 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 350 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 351 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`section_value`", - "value": "section_value", - "keyword": null, - "type": 8, - "flags": 2, - "position": 352 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 367 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "100", - "value": 100, - "keyword": null, - "type": 6, - "flags": 0, - "position": 368 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 371 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 372 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`value`", - "value": "value", - "keyword": null, - "type": 8, - "flags": 2, - "position": 373 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 380 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "15", - "value": 15, - "keyword": null, - "type": 6, - "flags": 0, - "position": 381 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 383 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 384 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 385 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 386 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 391 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BTREE", - "value": "BTREE", - "keyword": "BTREE", - "type": 1, - "flags": 1, - "position": 392 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 397 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 398 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KEY", - "value": "KEY", - "keyword": "KEY", - "type": 1, - "flags": 19, - "position": 401 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 404 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`jos_gacl_hidden_aro`", - "value": "jos_gacl_hidden_aro", - "keyword": null, - "type": 8, - "flags": 2, - "position": 405 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 426 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 427 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`hidden`", - "value": "hidden", - "keyword": null, - "type": 8, - "flags": 2, - "position": 428 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 436 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 437 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 438 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 439 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENGINE", - "value": "ENGINE", - "keyword": "ENGINE", - "type": 1, - "flags": 1, - "position": 440 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 446 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "InnoDB", - "value": "InnoDB", - "keyword": null, - "type": 0, - "flags": 0, - "position": 447 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 453 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT CHARSET", - "value": "DEFAULT CHARSET", - "keyword": "DEFAULT CHARSET", - "type": 1, - "flags": 7, - "position": 454 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 469 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "latin1", - "value": "latin1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 470 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 134, - "idx": 134 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "jos_core_acl_aro", - "column": null, - "expr": "`jos_core_acl_aro`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ENGINE", - "equals": true, - "expr": "InnoDB", - "value": "InnoDB" - }, - "4": { - "name": "DEFAULT CHARSET", - "equals": true, - "expr": "latin1", - "value": "latin1" - } - } - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "id", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [ - "11" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL" - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "section_value", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [ - "240" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "2": { - "name": "DEFAULT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "0", - "expr": "'0'", - "alias": null, - "function": null, - "subquery": null - }, - "value": "'0'" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "value", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [ - "240" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "2": { - "name": "DEFAULT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "", - "expr": "''", - "alias": null, - "function": null, - "subquery": null - }, - "value": "''" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "order_value", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [ - "11" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "2": { - "name": "DEFAULT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "0", - "expr": "'0'", - "alias": null, - "function": null, - "subquery": null - }, - "value": "'0'" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "name", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [ - "255" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "2": { - "name": "DEFAULT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "", - "expr": "''", - "alias": null, - "function": null, - "subquery": null - }, - "value": "''" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "hidden", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [ - "11" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "2": { - "name": "DEFAULT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "0", - "expr": "'0'", - "alias": null, - "function": null, - "subquery": null - }, - "value": "'0'" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": null, - "isConstraint": null, - "type": null, - "key": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", - "name": null, - "columns": [ - { - "name": "id" - } - ], - "type": "PRIMARY KEY", - "expr": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "references": null, - "options": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": null, - "isConstraint": null, - "type": null, - "key": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", - "name": "jos_section_value_value_aro", - "columns": [ - { - "name": "section_value", - "length": 100 - }, - { - "name": "value", - "length": 15 - } - ], - "type": "UNIQUE KEY", - "expr": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "USING", - "equals": false, - "expr": "BTREE", - "value": "BTREE" - } - } - } - }, - "references": null, - "options": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": null, - "isConstraint": null, - "type": null, - "key": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", - "name": "jos_gacl_hidden_aro", - "columns": [ - { - "name": "hidden" - } - ], - "type": "KEY", - "expr": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "references": null, - "options": null - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 133 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh202.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh202.in deleted file mode 100644 index 0a8e8606..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh202.in +++ /dev/null @@ -1 +0,0 @@ -update tbl_customer t set t.`description`=:yp where t.id=1; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh202.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh202.out deleted file mode 100644 index 94228078..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh202.out +++ /dev/null @@ -1,284 +0,0 @@ -{ - "query": "update tbl_customer t set t.`description`=:yp where t.id=1;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "update tbl_customer t set t.`description`=:yp where t.id=1;", - "len": 59, - "last": 59, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "update", - "value": "UPDATE", - "keyword": "UPDATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tbl_customer", - "value": "tbl_customer", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t", - "value": "t", - "keyword": null, - "type": 0, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "set", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t", - "value": "t", - "keyword": null, - "type": 0, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`description`", - "value": "description", - "keyword": null, - "type": 8, - "flags": 2, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ":yp", - "value": "yp", - "keyword": null, - "type": 8, - "flags": 16, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "where", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t", - "value": "t", - "keyword": null, - "type": 0, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 23, - "idx": 23 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\UpdateStatement", - "tables": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "tbl_customer", - "column": null, - "expr": "tbl_customer", - "alias": "t", - "function": null, - "subquery": null - } - ], - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "t.`description`", - "value": ":yp" - } - ], - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "t", - "id" - ], - "isOperator": false, - "expr": "t.id=1" - } - ], - "order": null, - "limit": null, - "join": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 20 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh234.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh234.in deleted file mode 100644 index ad83c690..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh234.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE `mail_template` CHANGE COLUMN `mtpl_group` `mtpl_group` ENUM('ORDER') NULL DEFAULT NULL ; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh234.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh234.out deleted file mode 100644 index d77f55a7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh234.out +++ /dev/null @@ -1,377 +0,0 @@ -{ - "query": "ALTER TABLE `mail_template` CHANGE COLUMN `mtpl_group` `mtpl_group` ENUM('ORDER') NULL DEFAULT NULL ;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE `mail_template` CHANGE COLUMN `mtpl_group` `mtpl_group` ENUM('ORDER') NULL DEFAULT NULL ;", - "len": 101, - "last": 101, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`mail_template`", - "value": "mail_template", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHANGE", - "value": "CHANGE", - "keyword": "CHANGE", - "type": 1, - "flags": 3, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLUMN", - "value": "COLUMN", - "keyword": "COLUMN", - "type": 1, - "flags": 3, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`mtpl_group`", - "value": "mtpl_group", - "keyword": null, - "type": 8, - "flags": 2, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`mtpl_group`", - "value": "mtpl_group", - "keyword": null, - "type": 8, - "flags": 2, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENUM", - "value": "ENUM", - "keyword": "ENUM", - "type": 1, - "flags": 9, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'ORDER'", - "value": "ORDER", - "keyword": null, - "type": 7, - "flags": 1, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 27, - "idx": 27 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "mail_template", - "column": null, - "expr": "`mail_template`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "CHANGE", - "2": "COLUMN" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "mtpl_group", - "expr": "`mtpl_group`", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 25 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh317.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh317.in deleted file mode 100644 index aef97adb..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh317.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE `demo` ADD KEY `IDX_REPAIR` (`REPAIR`); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh317.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh317.out deleted file mode 100644 index 2e68ce1d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh317.out +++ /dev/null @@ -1,253 +0,0 @@ -{ - "query": "ALTER TABLE `demo` ADD KEY `IDX_REPAIR` (`REPAIR`);", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE `demo` ADD KEY `IDX_REPAIR` (`REPAIR`);", - "len": 51, - "last": 51, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`demo`", - "value": "demo", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ADD", - "value": "ADD", - "keyword": "ADD", - "type": 1, - "flags": 3, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KEY", - "value": "KEY", - "keyword": "KEY", - "type": 1, - "flags": 19, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`IDX_REPAIR`", - "value": "IDX_REPAIR", - "keyword": null, - "type": 8, - "flags": 2, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`REPAIR`", - "value": "REPAIR", - "keyword": null, - "type": 8, - "flags": 2, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 17, - "idx": 17 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "demo", - "column": null, - "expr": "`demo`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ADD", - "2": { - "name": "KEY", - "equals": false, - "expr": "`IDX_REPAIR`", - "value": "IDX_REPAIR" - } - } - }, - "field": null, - "partitions": null, - "unknown": [ - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 15 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh412.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh412.in deleted file mode 100644 index 513a1dee..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh412.in +++ /dev/null @@ -1 +0,0 @@ -SELECT 1, 2, ?, 3 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh412.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh412.out deleted file mode 100644 index 9f47182c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh412.out +++ /dev/null @@ -1,217 +0,0 @@ -{ - "query": "SELECT 1, 2, ?, 3", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT 1, 2, ?, 3", - "len": 17, - "last": 17, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "?", - "value": "?", - "keyword": null, - "type": 8, - "flags": 16, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 13, - "idx": 13 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "2", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "?", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "3", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 11 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh478.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh478.in deleted file mode 100644 index 993f0299..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh478.in +++ /dev/null @@ -1,4 +0,0 @@ -ALTER TABLE `MY_TABLE` -MODIFY `FOO` INT(11) NULL, -MODIFY `MY_COLUMN` ENUM('INSERT','UPDATE','DELETE','REPLACE') NULL, -MODIFY `BAR` VARCHAR(255) NULL; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh478.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh478.out deleted file mode 100644 index a2e44ff8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh478.out +++ /dev/null @@ -1,679 +0,0 @@ -{ - "query": "ALTER TABLE `MY_TABLE`\nMODIFY `FOO` INT(11) NULL,\nMODIFY `MY_COLUMN` ENUM('INSERT','UPDATE','DELETE','REPLACE') NULL,\nMODIFY `BAR` VARCHAR(255) NULL;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE `MY_TABLE`\nMODIFY `FOO` INT(11) NULL,\nMODIFY `MY_COLUMN` ENUM('INSERT','UPDATE','DELETE','REPLACE') NULL,\nMODIFY `BAR` VARCHAR(255) NULL;\n", - "len": 150, - "last": 150, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`MY_TABLE`", - "value": "MY_TABLE", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MODIFY", - "value": "MODIFY", - "keyword": "MODIFY", - "type": 1, - "flags": 1, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`FOO`", - "value": "FOO", - "keyword": null, - "type": 8, - "flags": 2, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "11", - "value": 11, - "keyword": null, - "type": 6, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MODIFY", - "value": "MODIFY", - "keyword": "MODIFY", - "type": 1, - "flags": 1, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`MY_COLUMN`", - "value": "MY_COLUMN", - "keyword": null, - "type": 8, - "flags": 2, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENUM", - "value": "ENUM", - "keyword": "ENUM", - "type": 1, - "flags": 9, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'INSERT'", - "value": "INSERT", - "keyword": null, - "type": 7, - "flags": 1, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'UPDATE'", - "value": "UPDATE", - "keyword": null, - "type": 7, - "flags": 1, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'DELETE'", - "value": "DELETE", - "keyword": null, - "type": 7, - "flags": 1, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'REPLACE'", - "value": "REPLACE", - "keyword": null, - "type": 7, - "flags": 1, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MODIFY", - "value": "MODIFY", - "keyword": "MODIFY", - "type": 1, - "flags": 1, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`BAR`", - "value": "BAR", - "keyword": null, - "type": 8, - "flags": 2, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VARCHAR", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "255", - "value": 255, - "keyword": null, - "type": 6, - "flags": 0, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 144 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 49, - "idx": 49 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "MY_TABLE", - "column": null, - "expr": "`MY_TABLE`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "MODIFY" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "FOO", - "expr": "`FOO`", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - } - ] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "MODIFY" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "MY_COLUMN", - "expr": "`MY_COLUMN`", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - }, - { - "@type": "@27" - }, - { - "@type": "@28" - }, - { - "@type": "@29" - }, - { - "@type": "@30" - }, - { - "@type": "@31" - }, - { - "@type": "@32" - }, - { - "@type": "@33" - }, - { - "@type": "@34" - }, - { - "@type": "@35" - } - ] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "MODIFY" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "BAR", - "expr": "`BAR`", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@42" - }, - { - "@type": "@43" - }, - { - "@type": "@44" - }, - { - "@type": "@45" - }, - { - "@type": "@46" - }, - { - "@type": "@47" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 46 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh492.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh492.in deleted file mode 100644 index 33e39776..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh492.in +++ /dev/null @@ -1,3 +0,0 @@ -UPDATE order -SET price = ? -WHERE orderid = ? \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh492.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh492.out deleted file mode 100644 index 785585f4..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh492.out +++ /dev/null @@ -1,260 +0,0 @@ -{ - "query": "UPDATE order\nSET price = ?\nWHERE orderid = ?", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "UPDATE order\nSET price = ?\nWHERE orderid = ?", - "len": 51, - "last": 51, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UPDATE", - "value": "UPDATE", - "keyword": "UPDATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "order", - "value": "ORDER", - "keyword": "ORDER", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "price", - "value": "price", - "keyword": null, - "type": 0, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "?", - "value": "?", - "keyword": null, - "type": 8, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "orderid", - "value": "orderid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "?", - "value": "?", - "keyword": null, - "type": 8, - "flags": 16, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 20, - "idx": 20 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\UpdateStatement", - "tables": [], - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "price", - "value": "?" - } - ], - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "orderid" - ], - "isOperator": false, - "expr": "orderid = ?" - } - ], - "order": null, - "limit": null, - "join": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 18 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "An expression was expected.", - { - "@type": "@4" - }, - 0 - ], - [ - "Unrecognized keyword.", - { - "@type": "@4" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh496.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh496.in deleted file mode 100644 index 935f01e1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh496.in +++ /dev/null @@ -1,3 +0,0 @@ -SELECT COUNT(*) AS amount -FROM one i -JOIN two io ON io.id = i.id \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh496.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh496.out deleted file mode 100644 index 624a921f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh496.out +++ /dev/null @@ -1,424 +0,0 @@ -{ - "query": "SELECT COUNT(*) AS amount\nFROM one i\nJOIN two io ON io.id = i.id", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT COUNT(*) AS amount\nFROM one i\nJOIN two io ON io.id = i.id", - "len": 71, - "last": 71, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COUNT", - "value": "COUNT", - "keyword": "COUNT", - "type": 1, - "flags": 33, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "amount", - "value": "amount", - "keyword": null, - "type": 0, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "one", - "value": "one", - "keyword": "ONE", - "type": 1, - "flags": 1, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "i", - "value": "i", - "keyword": null, - "type": 0, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "JOIN", - "value": "JOIN", - "keyword": "JOIN", - "type": 1, - "flags": 3, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "two", - "value": "two", - "keyword": null, - "type": 0, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "io", - "value": "io", - "keyword": "IO", - "type": 1, - "flags": 1, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "io", - "value": "io", - "keyword": "IO", - "type": 1, - "flags": 1, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "i", - "value": "i", - "keyword": null, - "type": 0, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 35, - "idx": 35 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "COUNT(*)", - "alias": "amount", - "function": "COUNT", - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "one", - "column": null, - "expr": "one", - "alias": "i", - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "JOIN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "two", - "column": null, - "expr": "two", - "alias": "io", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "io", - "id", - "i" - ], - "isOperator": false, - "expr": "io.id = i.id" - } - ], - "using": null - } - ], - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 33 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh498.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh498.in deleted file mode 100644 index 8c3d72d9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh498.in +++ /dev/null @@ -1,4 +0,0 @@ -SELECT ? -FROM uno -JOIN dos ON dos.id = uno.id -LIMIT ? OFFSET ? \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh498.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh498.out deleted file mode 100644 index 1b4e5d53..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh498.out +++ /dev/null @@ -1,401 +0,0 @@ -{ - "query": "SELECT ?\nFROM uno\nJOIN dos ON dos.id = uno.id\nLIMIT ? OFFSET ?", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT ?\nFROM uno\nJOIN dos ON dos.id = uno.id\nLIMIT ? OFFSET ?", - "len": 63, - "last": 63, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "?", - "value": "?", - "keyword": null, - "type": 8, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "uno", - "value": "uno", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "JOIN", - "value": "JOIN", - "keyword": "JOIN", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "dos", - "value": "dos", - "keyword": null, - "type": 0, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "dos", - "value": "dos", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "uno", - "value": "uno", - "keyword": null, - "type": 0, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIMIT", - "value": "LIMIT", - "keyword": "LIMIT", - "type": 1, - "flags": 3, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "?", - "value": "?", - "keyword": null, - "type": 8, - "flags": 16, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OFFSET", - "value": "OFFSET", - "keyword": "OFFSET", - "type": 1, - "flags": 1, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "?", - "value": "?", - "keyword": null, - "type": 8, - "flags": 16, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 32, - "idx": 32 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "?", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "uno", - "column": null, - "expr": "uno", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Limit", - "offset": "?", - "rowCount": "?" - }, - "procedure": null, - "into": null, - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "JOIN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "dos", - "column": null, - "expr": "dos", - "alias": null, - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "dos", - "id", - "uno" - ], - "isOperator": false, - "expr": "dos.id = uno.id" - } - ], - "using": null - } - ], - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 30 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh499.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh499.in deleted file mode 100644 index ff1582c9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh499.in +++ /dev/null @@ -1,11 +0,0 @@ -UPDATE - users -SET - username = ?, - id=155; - -UPDATE - users -SET - username = :user_name, - id=155; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh499.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh499.out deleted file mode 100644 index b0b2715b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh499.out +++ /dev/null @@ -1,433 +0,0 @@ -{ - "query": "UPDATE\n users\nSET\n username = ?,\n id=155;\n\nUPDATE\n users\nSET\n username = :user_name,\n id=155;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "UPDATE\n users\nSET\n username = ?,\n id=155;\n\nUPDATE\n users\nSET\n username = :user_name,\n id=155;", - "len": 111, - "last": 111, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UPDATE", - "value": "UPDATE", - "keyword": "UPDATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "users", - "value": "users", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "?", - "value": "?", - "keyword": null, - "type": 8, - "flags": 16, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "155", - "value": 155, - "keyword": null, - "type": 6, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UPDATE", - "value": "UPDATE", - "keyword": "UPDATE", - "type": 1, - "flags": 3, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "users", - "value": "users", - "keyword": null, - "type": 0, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ":user_name", - "value": "user_name", - "keyword": null, - "type": 8, - "flags": 16, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "155", - "value": 155, - "keyword": null, - "type": 6, - "flags": 0, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 36, - "idx": 36 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\UpdateStatement", - "tables": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "users", - "column": null, - "expr": "users", - "alias": null, - "function": null, - "subquery": null - } - ], - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "username", - "value": "?" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "id", - "value": "155" - } - ], - "where": null, - "order": null, - "limit": null, - "join": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\UpdateStatement", - "tables": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "users", - "column": null, - "expr": "users", - "alias": null, - "function": null, - "subquery": null - } - ], - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "username", - "value": ":user_name" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "id", - "value": "155" - } - ], - "where": null, - "order": null, - "limit": null, - "join": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 16, - "last": 33 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh508.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh508.in deleted file mode 100644 index bef3a359..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh508.in +++ /dev/null @@ -1 +0,0 @@ -0X0F \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh508.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh508.out deleted file mode 100644 index 085f75e6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh508.out +++ /dev/null @@ -1,60 +0,0 @@ -{ - "query": "0X0F", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "0X0F", - "len": 4, - "last": 4, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0X0F", - "value": "0X0F", - "keyword": null, - "type": 0, - "flags": 0, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 2, - "idx": 2 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected beginning of statement.", - { - "@type": "@2" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh511.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh511.in deleted file mode 100644 index dd0c1412..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh511.in +++ /dev/null @@ -1,2 +0,0 @@ -ALTER TABLE users_type MODIFY limitations ENUM('tout', 'rien', 'bu', 'agence', 'agence_limite', 'n-1', 'agence_inactif'); -UPDATE users_type SET limitations = 'agence_inactif' WHERE id_users_type = 19; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh511.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh511.out deleted file mode 100644 index 3d8e2b64..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh511.out +++ /dev/null @@ -1,705 +0,0 @@ -{ - "query": "ALTER TABLE users_type MODIFY limitations ENUM('tout', 'rien', 'bu', 'agence', 'agence_limite', 'n-1', 'agence_inactif');\nUPDATE users_type SET limitations = 'agence_inactif' WHERE id_users_type = 19;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE users_type MODIFY limitations ENUM('tout', 'rien', 'bu', 'agence', 'agence_limite', 'n-1', 'agence_inactif');\nUPDATE users_type SET limitations = 'agence_inactif' WHERE id_users_type = 19;\n", - "len": 201, - "last": 201, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "users_type", - "value": "users_type", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MODIFY", - "value": "MODIFY", - "keyword": "MODIFY", - "type": 1, - "flags": 1, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "limitations", - "value": "limitations", - "keyword": null, - "type": 0, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENUM", - "value": "ENUM", - "keyword": "ENUM", - "type": 1, - "flags": 9, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'tout'", - "value": "tout", - "keyword": null, - "type": 7, - "flags": 1, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'rien'", - "value": "rien", - "keyword": null, - "type": 7, - "flags": 1, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'bu'", - "value": "bu", - "keyword": null, - "type": 7, - "flags": 1, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'agence'", - "value": "agence", - "keyword": null, - "type": 7, - "flags": 1, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'agence_limite'", - "value": "agence_limite", - "keyword": null, - "type": 7, - "flags": 1, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'n-1'", - "value": "n-1", - "keyword": null, - "type": 7, - "flags": 1, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'agence_inactif'", - "value": "agence_inactif", - "keyword": null, - "type": 7, - "flags": 1, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UPDATE", - "value": "UPDATE", - "keyword": "UPDATE", - "type": 1, - "flags": 3, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "users_type", - "value": "users_type", - "keyword": null, - "type": 0, - "flags": 0, - "position": 129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "limitations", - "value": "limitations", - "keyword": null, - "type": 0, - "flags": 0, - "position": 144 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'agence_inactif'", - "value": "agence_inactif", - "keyword": null, - "type": 7, - "flags": 1, - "position": 158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 175 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 180 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id_users_type", - "value": "id_users_type", - "keyword": null, - "type": 0, - "flags": 0, - "position": 181 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 194 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 195 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 196 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "19", - "value": 19, - "keyword": null, - "type": 6, - "flags": 0, - "position": 197 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 199 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 200 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 56, - "idx": 56 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "users_type", - "column": null, - "expr": "users_type", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "MODIFY" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "limitations", - "expr": "limitations", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - }, - { - "@type": "@27" - }, - { - "@type": "@28" - }, - { - "@type": "@29" - }, - { - "@type": "@30" - }, - { - "@type": "@31" - }, - { - "@type": "@32" - }, - { - "@type": "@33" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\UpdateStatement", - "tables": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "users_type", - "column": null, - "expr": "users_type", - "alias": null, - "function": null, - "subquery": null - } - ], - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "limitations", - "value": "'agence_inactif'" - } - ], - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "id_users_type" - ], - "isOperator": false, - "expr": "id_users_type = 19" - } - ], - "order": null, - "limit": null, - "join": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 33, - "last": 52 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh9.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh9.in deleted file mode 100644 index 61bce5cb..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh9.in +++ /dev/null @@ -1,12 +0,0 @@ -SELECT * FROM foo WHERE -SELECT * FROM foo WHERE - -START TRANSACTION; - -CREATE TABLE `tb` (`uid` INT UNSIGNED NOT NULL -`position` INT NOT NULL, -PRIMARY KEY ( `uid` ) , -INDEX ( `position` ) -) ENGINE = InnoDB; - -COMMIT; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh9.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh9.out deleted file mode 100644 index 08f0c41a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/gh9.out +++ /dev/null @@ -1,929 +0,0 @@ -{ - "query": "SELECT * FROM foo WHERE\nSELECT * FROM foo WHERE\n\nSTART TRANSACTION;\n\nCREATE TABLE `tb` (`uid` INT UNSIGNED NOT NULL\n`position` INT NOT NULL,\nPRIMARY KEY ( `uid` ) ,\nINDEX ( `position` )\n) ENGINE = InnoDB;\n\nCOMMIT;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM foo WHERE\nSELECT * FROM foo WHERE\n\nSTART TRANSACTION;\n\nCREATE TABLE `tb` (`uid` INT UNSIGNED NOT NULL\n`position` INT NOT NULL,\nPRIMARY KEY ( `uid` ) ,\nINDEX ( `position` )\n) ENGINE = InnoDB;\n\nCOMMIT;", - "len": 213, - "last": 213, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "START TRANSACTION", - "value": "START TRANSACTION", - "keyword": "START TRANSACTION", - "type": 1, - "flags": 7, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`tb`", - "value": "tb", - "keyword": null, - "type": 8, - "flags": 2, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`uid`", - "value": "uid", - "keyword": null, - "type": 8, - "flags": 2, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`position`", - "value": "position", - "keyword": null, - "type": 8, - "flags": 2, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PRIMARY KEY", - "value": "PRIMARY KEY", - "keyword": "PRIMARY KEY", - "type": 1, - "flags": 23, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 153 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 154 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`uid`", - "value": "uid", - "keyword": null, - "type": 8, - "flags": 2, - "position": 155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 160 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 162 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 163 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 164 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INDEX", - "value": "INDEX", - "keyword": "INDEX", - "type": 1, - "flags": 19, - "position": 165 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 170 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 171 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 172 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`position`", - "value": "position", - "keyword": null, - "type": 8, - "flags": 2, - "position": 173 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 183 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 184 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 185 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 186 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 187 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENGINE", - "value": "ENGINE", - "keyword": "ENGINE", - "type": 1, - "flags": 1, - "position": 188 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 194 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 195 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 196 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "InnoDB", - "value": "InnoDB", - "keyword": null, - "type": 0, - "flags": 0, - "position": 197 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 203 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 204 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMIT", - "value": "COMMIT", - "keyword": "COMMIT", - "type": 1, - "flags": 1, - "position": 206 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 212 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 75, - "idx": 75 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "foo", - "column": null, - "expr": "foo", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "foo", - "column": null, - "expr": "foo", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 10, - "last": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\TransactionStatement", - "type": 1, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "tb", - "column": null, - "expr": "`tb`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "uid", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": "UNSIGNED" - } - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL" - } - } - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 21, - "last": 47 - } - ], - "end": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\TransactionStatement", - "type": 2, - "statements": null, - "end": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "COMMIT" - } - }, - "first": 72, - "last": 72 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "START TRANSACTION" - } - }, - "first": 20, - "last": 20 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "This type of clause was previously parsed.", - { - "@type": "@12" - }, - 0 - ], - [ - "A new statement was found, but no delimiter between it and the previous one.", - { - "@type": "@22" - }, - 0 - ], - [ - "A comma or a closing bracket was expected.", - { - "@type": "@40" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@51" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@57" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/pma11800.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/pma11800.in deleted file mode 100644 index 75bda651..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/pma11800.in +++ /dev/null @@ -1 +0,0 @@ -SELECT 'a' REGEXP '^[a-d]'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/pma11800.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/pma11800.out deleted file mode 100644 index 5932800e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/pma11800.out +++ /dev/null @@ -1,151 +0,0 @@ -{ - "query": "SELECT 'a' REGEXP '^[a-d]';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT 'a' REGEXP '^[a-d]';", - "len": 27, - "last": 27, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'a'", - "value": "a", - "keyword": null, - "type": 7, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REGEXP", - "value": "REGEXP", - "keyword": "REGEXP", - "type": 1, - "flags": 3, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'^[a-d]'", - "value": "^[a-d]", - "keyword": null, - "type": 7, - "flags": 1, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 9, - "idx": 9 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "a", - "expr": "'a' REGEXP '^[a-d]'", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 6 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/pma11836.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/pma11836.in deleted file mode 100644 index ffb027d6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/pma11836.in +++ /dev/null @@ -1 +0,0 @@ -SELECT * FROM alumnos WHERE id = IF(id = 1, id, nombre) AND id not in (SELECT id FROM alumnos) \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/pma11836.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/pma11836.out deleted file mode 100644 index 27836e0a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/pma11836.out +++ /dev/null @@ -1,511 +0,0 @@ -{ - "query": "SELECT * FROM alumnos WHERE id = IF(id = 1, id, nombre) AND id not in (SELECT id FROM alumnos)", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM alumnos WHERE id = IF(id = 1, id, nombre) AND id not in (SELECT id FROM alumnos)", - "len": 94, - "last": 94, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "alumnos", - "value": "alumnos", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IF", - "value": "IF", - "keyword": "IF", - "type": 1, - "flags": 35, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "nombre", - "value": "nombre", - "keyword": null, - "type": 0, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "not in", - "value": "NOT IN", - "keyword": "NOT IN", - "type": 1, - "flags": 39, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "alumnos", - "value": "alumnos", - "keyword": null, - "type": 0, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 45, - "idx": 45 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "alumnos", - "column": null, - "expr": "alumnos", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "id", - "nombre" - ], - "isOperator": false, - "expr": "id = IF(id = 1, id, nombre)" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "id", - "alumnos" - ], - "isOperator": false, - "expr": "id not in (SELECT id FROM alumnos)" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 43 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/pma11843.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/pma11843.in deleted file mode 100644 index 98146a9a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/pma11843.in +++ /dev/null @@ -1,4 +0,0 @@ -CREATE TABLE `mytable` ( - `id` int(11) NOT NULL, - `created_at` timestamp(6) NOT NULL DEFAULT CURRENT_TIMESTAMP -); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/pma11843.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/pma11843.out deleted file mode 100644 index 49802400..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/pma11843.out +++ /dev/null @@ -1,443 +0,0 @@ -{ - "query": "CREATE TABLE `mytable` (\n `id` int(11) NOT NULL,\n `created_at` timestamp(6) NOT NULL DEFAULT CURRENT_TIMESTAMP\n);", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE `mytable` (\n `id` int(11) NOT NULL,\n `created_at` timestamp(6) NOT NULL DEFAULT CURRENT_TIMESTAMP\n);", - "len": 119, - "last": 119, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`mytable`", - "value": "mytable", - "keyword": null, - "type": 8, - "flags": 2, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`id`", - "value": "id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "int", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "11", - "value": 11, - "keyword": null, - "type": 6, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`created_at`", - "value": "created_at", - "keyword": null, - "type": 8, - "flags": 2, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "timestamp", - "value": "timestamp", - "keyword": "TIMESTAMP", - "type": 1, - "flags": 41, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "6", - "value": 6, - "keyword": null, - "type": 6, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CURRENT_TIMESTAMP", - "value": "CURRENT_TIMESTAMP", - "keyword": "CURRENT_TIMESTAMP", - "type": 1, - "flags": 35, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 34, - "idx": 34 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "mytable", - "column": null, - "expr": "`mytable`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "id", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [ - "11" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL" - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "created_at", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "TIMESTAMP", - "parameters": [ - "6" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "2": { - "name": "DEFAULT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "CURRENT_TIMESTAMP", - "alias": null, - "function": null, - "subquery": null - }, - "value": "CURRENT_TIMESTAMP" - } - } - } - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 32 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/pma11879.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/pma11879.in deleted file mode 100644 index d466cc55..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/pma11879.in +++ /dev/null @@ -1,4 +0,0 @@ -INSERT INTO - tbproject(`id`, `name`, `description`, `create_dt`, `dbtype`, `useclause`, `sync_comments`) -VALUES - (NULL, 'testdb', 'Descrizione test', NOW(), 'mySQL', '', 1); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/pma11879.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/pma11879.out deleted file mode 100644 index 7e6af88b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/bugs/pma11879.out +++ /dev/null @@ -1,584 +0,0 @@ -{ - "query": "INSERT INTO\n tbproject(`id`, `name`, `description`, `create_dt`, `dbtype`, `useclause`, `sync_comments`)\nVALUES\n (NULL, 'testdb', 'Descrizione test', NOW(), 'mySQL', '', 1);", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "INSERT INTO\n tbproject(`id`, `name`, `description`, `create_dt`, `dbtype`, `useclause`, `sync_comments`)\nVALUES\n (NULL, 'testdb', 'Descrizione test', NOW(), 'mySQL', '', 1);", - "len": 175, - "last": 175, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tbproject", - "value": "tbproject", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`id`", - "value": "id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`name`", - "value": "name", - "keyword": null, - "type": 8, - "flags": 2, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`description`", - "value": "description", - "keyword": null, - "type": 8, - "flags": 2, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`create_dt`", - "value": "create_dt", - "keyword": null, - "type": 8, - "flags": 2, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`dbtype`", - "value": "dbtype", - "keyword": null, - "type": 8, - "flags": 2, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`useclause`", - "value": "useclause", - "keyword": null, - "type": 8, - "flags": 2, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`sync_comments`", - "value": "sync_comments", - "keyword": null, - "type": 8, - "flags": 2, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'testdb'", - "value": "testdb", - "keyword": null, - "type": 7, - "flags": 1, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Descrizione test'", - "value": "Descrizione test", - "keyword": null, - "type": 7, - "flags": 1, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 150 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOW", - "value": "NOW", - "keyword": "NOW", - "type": 1, - "flags": 33, - "position": 152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'mySQL'", - "value": "mySQL", - "keyword": null, - "type": 7, - "flags": 1, - "position": 159 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 166 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "''", - "value": "", - "keyword": null, - "type": 7, - "flags": 1, - "position": 168 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 170 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 171 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 172 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 173 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 54, - "idx": 54 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "tbproject", - "column": null, - "expr": "tbproject", - "alias": null, - "function": null, - "subquery": null - }, - "columns": [ - "id", - "name", - "description", - "create_dt", - "dbtype", - "useclause", - "sync_comments" - ], - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "NULL", - "'testdb'", - "'Descrizione test'", - "NOW()", - "'mySQL'", - "''", - "1" - ], - "values": [ - "NULL", - "testdb", - "Descrizione test", - "NOW()", - "mySQL", - "", - "1" - ] - } - ], - "set": null, - "select": null, - "with": null, - "onDuplicateSet": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 51 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lex.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lex.in deleted file mode 100644 index 675e1932..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lex.in +++ /dev/null @@ -1 +0,0 @@ -SELECT \\ \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lex.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lex.out deleted file mode 100644 index 025387ac..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lex.out +++ /dev/null @@ -1,83 +0,0 @@ -{ - "query": "SELECT \\\\", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT \\\\", - "len": 9, - "last": 9, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\\", - "value": "\\", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\\", - "value": "\\", - "keyword": null, - "type": 0, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 5, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [ - [ - "Unexpected character.", - "\\", - 7, - 0 - ], - [ - "Unexpected character.", - "\\", - 8, - 0 - ] - ], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexBool.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexBool.in deleted file mode 100644 index 9cad5828..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexBool.in +++ /dev/null @@ -1 +0,0 @@ -SELECT true, FalSe \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexBool.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexBool.out deleted file mode 100644 index 88a0095f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexBool.out +++ /dev/null @@ -1,88 +0,0 @@ -{ - "query": "SELECT true, FalSe", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT true, FalSe", - "len": 18, - "last": 18, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "true", - "value": true, - "keyword": null, - "type": 5, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FalSe", - "value": false, - "keyword": null, - "type": 5, - "flags": 1, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 7, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexComment.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexComment.in deleted file mode 100644 index 86ed94f9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexComment.in +++ /dev/null @@ -1,4 +0,0 @@ -# comment -SELECT /*!50000 STRAIGHT_JOIN */ col1 FROM table1, table2 /* select query */ --- comment --- comment 2 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexComment.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexComment.out deleted file mode 100644 index 8af1028b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexComment.out +++ /dev/null @@ -1,250 +0,0 @@ -{ - "query": "# comment\nSELECT /*!50000 STRAIGHT_JOIN */ col1 FROM table1, table2 /* select query */\n-- comment\n-- comment 2", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "# comment\nSELECT /*!50000 STRAIGHT_JOIN */ col1 FROM table1, table2 /* select query */\n-- comment\n-- comment 2", - "len": 110, - "last": 111, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "# comment", - "value": "# comment", - "keyword": null, - "type": 4, - "flags": 1, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/*!50000", - "value": "/*!50000", - "keyword": null, - "type": 4, - "flags": 10, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "STRAIGHT_JOIN", - "value": "STRAIGHT_JOIN", - "keyword": "STRAIGHT_JOIN", - "type": 1, - "flags": 3, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*/", - "value": "*/", - "keyword": null, - "type": 4, - "flags": 2, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table2", - "value": "table2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* select query */", - "value": "/* select query */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- comment", - "value": "-- comment", - "keyword": null, - "type": 4, - "flags": 4, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- comment 2", - "value": "-- comment 2", - "keyword": null, - "type": 4, - "flags": 4, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 25, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexCommentEnd.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexCommentEnd.in deleted file mode 100644 index f600a6c6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexCommentEnd.in +++ /dev/null @@ -1,3 +0,0 @@ -SELECT 1 --- comment --- \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexCommentEnd.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexCommentEnd.out deleted file mode 100644 index 0ee4d695..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexCommentEnd.out +++ /dev/null @@ -1,97 +0,0 @@ -{ - "query": "SELECT 1\n-- comment\n--", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT 1\n-- comment\n--", - "len": 22, - "last": 23, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- comment", - "value": "-- comment", - "keyword": null, - "type": 4, - "flags": 4, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "--", - "value": "--", - "keyword": null, - "type": 4, - "flags": 4, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 8, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiter.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiter.in deleted file mode 100644 index b5c99edc..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiter.in +++ /dev/null @@ -1,3 +0,0 @@ -DELIMITER GO -SELECT a,b FROM foo GO -SELECT * FROM bar \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiter.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiter.out deleted file mode 100644 index 243fb7fb..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiter.out +++ /dev/null @@ -1,241 +0,0 @@ -{ - "query": "DELIMITER GO\nSELECT a,b FROM foo GO\nSELECT * FROM bar", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELIMITER GO\nSELECT a,b FROM foo GO\nSELECT * FROM bar", - "len": 53, - "last": 53, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELIMITER", - "value": "DELIMITER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "GO", - "value": "GO", - "keyword": null, - "type": 9, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "GO", - "value": "GO", - "keyword": null, - "type": 9, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "bar", - "value": "bar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 24, - "idx": 0 - }, - "delimiter": "GO", - "delimiterLen": 2, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiter2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiter2.in deleted file mode 100644 index 61d47367..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiter2.in +++ /dev/null @@ -1,3 +0,0 @@ -DELIMTER // -SELECT a,b FROM test // -SELECT * FROM bar // \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiter2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiter2.out deleted file mode 100644 index e6ebb62d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiter2.out +++ /dev/null @@ -1,286 +0,0 @@ -{ - "query": "DELIMTER //\nSELECT a,b FROM test //\nSELECT * FROM bar //", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELIMTER //\nSELECT a,b FROM test //\nSELECT * FROM bar //", - "len": 56, - "last": 56, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELIMTER", - "value": "DELIMTER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/", - "value": "/", - "keyword": null, - "type": 2, - "flags": 1, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/", - "value": "/", - "keyword": null, - "type": 2, - "flags": 1, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/", - "value": "/", - "keyword": null, - "type": 2, - "flags": 1, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/", - "value": "/", - "keyword": null, - "type": 2, - "flags": 1, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "bar", - "value": "bar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/", - "value": "/", - "keyword": null, - "type": 2, - "flags": 1, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/", - "value": "/", - "keyword": null, - "type": 2, - "flags": 1, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 29, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiterErr1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiterErr1.in deleted file mode 100644 index 17933c5c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiterErr1.in +++ /dev/null @@ -1 +0,0 @@ -DELIMITER \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiterErr1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiterErr1.out deleted file mode 100644 index 1cbd78dc..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiterErr1.out +++ /dev/null @@ -1,50 +0,0 @@ -{ - "query": "DELIMITER", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELIMITER", - "len": 9, - "last": 9, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELIMITER", - "value": "DELIMITER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 2, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [ - [ - "Expected whitespace(s) before delimiter.", - "", - 9, - 0 - ] - ], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiterErr2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiterErr2.in deleted file mode 100644 index 9288b4d5..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiterErr2.in +++ /dev/null @@ -1 +0,0 @@ -DELIMITER \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiterErr2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiterErr2.out deleted file mode 100644 index 222e9b1a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiterErr2.out +++ /dev/null @@ -1,59 +0,0 @@ -{ - "query": "DELIMITER \r", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELIMITER \r", - "len": 11, - "last": 11, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELIMITER", - "value": "DELIMITER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " \r", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 3, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [ - [ - "Expected delimiter.", - "", - 11, - 0 - ] - ], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiterErr3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiterErr3.in deleted file mode 100644 index 2bea6546..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiterErr3.in +++ /dev/null @@ -1 +0,0 @@ -DELIMITER; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiterErr3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiterErr3.out deleted file mode 100644 index 65362eb1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiterErr3.out +++ /dev/null @@ -1,68 +0,0 @@ -{ - "query": "DELIMITER;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELIMITER;\n", - "len": 11, - "last": 11, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELIMITER", - "value": "DELIMITER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 4, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [ - [ - "Expected delimiter.", - "", - 10, - 0 - ] - ], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiterLen.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiterLen.in deleted file mode 100644 index 117421f8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiterLen.in +++ /dev/null @@ -1,2 +0,0 @@ -DELIMITER abcdefghijklmnopqrstuvwxyz -SELECT 1 abcdefghijklmnopqrstuvwxyz diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiterLen.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiterLen.out deleted file mode 100644 index 060463c5..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexDelimiterLen.out +++ /dev/null @@ -1,142 +0,0 @@ -{ - "query": "DELIMITER abcdefghijklmnopqrstuvwxyz\nSELECT 1 abcdefghijklmnopqrstuvwxyz\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELIMITER abcdefghijklmnopqrstuvwxyz\nSELECT 1 abcdefghijklmnopqrstuvwxyz\n", - "len": 73, - "last": 73, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELIMITER", - "value": "DELIMITER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "abcdefghijklmno", - "value": "abcdefghijklmno", - "keyword": null, - "type": 9, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pqrstuvwxyz", - "value": "pqrstuvwxyz", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "abcdefghijklmno", - "value": "abcdefghijklmno", - "keyword": null, - "type": 9, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pqrstuvwxyz", - "value": "pqrstuvwxyz", - "keyword": null, - "type": 0, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 13, - "idx": 0 - }, - "delimiter": "abcdefghijklmno", - "delimiterLen": 15, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexEmptyCStyleComment.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexEmptyCStyleComment.in deleted file mode 100644 index b32191ce..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexEmptyCStyleComment.in +++ /dev/null @@ -1,5 +0,0 @@ -SELECT /**/ 1 -SELECT /*+*/ 1 -SELECT /***/ 1 -SELECT /** */ 1 -SELECT /* **/ 1 diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexEmptyCStyleComment.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexEmptyCStyleComment.out deleted file mode 100644 index 09a95d1f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexEmptyCStyleComment.out +++ /dev/null @@ -1,304 +0,0 @@ -{ - "query": "SELECT /**/ 1\nSELECT /*+*/ 1\nSELECT /***/ 1\nSELECT /** */ 1\nSELECT /* **/ 1\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT /**/ 1\nSELECT /*+*/ 1\nSELECT /***/ 1\nSELECT /** */ 1\nSELECT /* **/ 1\n", - "len": 76, - "last": 76, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/**/", - "value": "/**/", - "keyword": null, - "type": 4, - "flags": 2, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/*+*/", - "value": "/*+*/", - "keyword": null, - "type": 4, - "flags": 2, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/***/", - "value": "/***/", - "keyword": null, - "type": 4, - "flags": 2, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/** */", - "value": "/** */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* **/", - "value": "/* **/", - "keyword": null, - "type": 4, - "flags": 2, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 31, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexKeyword.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexKeyword.in deleted file mode 100644 index 7a8f142d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexKeyword.in +++ /dev/null @@ -1 +0,0 @@ -SELECT 1 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexKeyword.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexKeyword.out deleted file mode 100644 index ce2498c2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexKeyword.out +++ /dev/null @@ -1,61 +0,0 @@ -{ - "query": "SELECT 1", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT 1", - "len": 8, - "last": 8, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 4, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexKeyword2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexKeyword2.in deleted file mode 100644 index 6cad34e3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexKeyword2.in +++ /dev/null @@ -1 +0,0 @@ -SELECT tbl.TABLE FROM tbl \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexKeyword2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexKeyword2.out deleted file mode 100644 index eeabc3bb..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexKeyword2.out +++ /dev/null @@ -1,115 +0,0 @@ -{ - "query": "SELECT tbl.TABLE FROM tbl", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT tbl.TABLE FROM tbl", - "len": 25, - "last": 25, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tbl", - "value": "tbl", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 0, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tbl", - "value": "tbl", - "keyword": null, - "type": 0, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexLabel1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexLabel1.in deleted file mode 100644 index 41420e60..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexLabel1.in +++ /dev/null @@ -1,11 +0,0 @@ -CREATE PROCEDURE doiterate(p1 INT) -BEGIN - label1 : LOOP - SET p1 = p1 + 1; - IF p1 < 10 THEN - ITERATE label1; - END IF; - LEAVE label1; - END LOOP label1; - SET @x = p1; -END \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexLabel1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexLabel1.out deleted file mode 100644 index f157c489..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexLabel1.out +++ /dev/null @@ -1,682 +0,0 @@ -{ - "query": "CREATE PROCEDURE doiterate(p1 INT)\nBEGIN\n label1 : LOOP\n SET p1 = p1 + 1;\n IF p1 < 10 THEN\n ITERATE label1;\n END IF;\n LEAVE label1;\n END LOOP label1;\n SET @x = p1;\nEND", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE PROCEDURE doiterate(p1 INT)\nBEGIN\n label1 : LOOP\n SET p1 = p1 + 1;\n IF p1 < 10 THEN\n ITERATE label1;\n END IF;\n LEAVE label1;\n END LOOP label1;\n SET @x = p1;\nEND", - "len": 187, - "last": 187, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PROCEDURE", - "value": "PROCEDURE", - "keyword": "PROCEDURE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "doiterate", - "value": "doiterate", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p1", - "value": "p1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BEGIN", - "value": "BEGIN", - "keyword": "BEGIN", - "type": 1, - "flags": 1, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "label1 :", - "value": "label1 :", - "keyword": null, - "type": 10, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOOP", - "value": "LOOP", - "keyword": "LOOP", - "type": 1, - "flags": 3, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p1", - "value": "p1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p1", - "value": "p1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+", - "value": "+", - "keyword": null, - "type": 2, - "flags": 1, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IF", - "value": "IF", - "keyword": "IF", - "type": 1, - "flags": 35, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p1", - "value": "p1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "<", - "value": "<", - "keyword": null, - "type": 2, - "flags": 2, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "THEN", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ITERATE", - "value": "ITERATE", - "keyword": "ITERATE", - "type": 1, - "flags": 3, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "label1", - "value": "label1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "END", - "value": "END", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IF", - "value": "IF", - "keyword": "IF", - "type": 1, - "flags": 35, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEAVE", - "value": "LEAVE", - "keyword": "LEAVE", - "type": 1, - "flags": 3, - "position": 136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "label1", - "value": "label1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "END", - "value": "END", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOOP", - "value": "LOOP", - "keyword": "LOOP", - "type": 1, - "flags": 3, - "position": 156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 160 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "label1", - "value": "label1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 168 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 171 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@x", - "value": "x", - "keyword": null, - "type": 8, - "flags": 1, - "position": 175 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 178 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 179 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p1", - "value": "p1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 180 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 182 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 183 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "END", - "value": "END", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 184 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 73, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexLabel2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexLabel2.in deleted file mode 100644 index 3e98477d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexLabel2.in +++ /dev/null @@ -1,11 +0,0 @@ -CREATE PROCEDURE doiterate(p1 INT) -BEGIN - label1: LOOP - SET p1 = p1 + 1; - IF p1 < 10 THEN - ITERATE label1; - END IF; - LEAVE label1; - END LOOP label1; - SET @x = p1; -END \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexLabel2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexLabel2.out deleted file mode 100644 index df7929a1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexLabel2.out +++ /dev/null @@ -1,682 +0,0 @@ -{ - "query": "CREATE PROCEDURE doiterate(p1 INT)\nBEGIN\n label1: LOOP\n SET p1 = p1 + 1;\n IF p1 < 10 THEN\n ITERATE label1;\n END IF;\n LEAVE label1;\n END LOOP label1;\n SET @x = p1;\nEND", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE PROCEDURE doiterate(p1 INT)\nBEGIN\n label1: LOOP\n SET p1 = p1 + 1;\n IF p1 < 10 THEN\n ITERATE label1;\n END IF;\n LEAVE label1;\n END LOOP label1;\n SET @x = p1;\nEND", - "len": 186, - "last": 186, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PROCEDURE", - "value": "PROCEDURE", - "keyword": "PROCEDURE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "doiterate", - "value": "doiterate", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p1", - "value": "p1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BEGIN", - "value": "BEGIN", - "keyword": "BEGIN", - "type": 1, - "flags": 1, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "label1:", - "value": "label1:", - "keyword": null, - "type": 10, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOOP", - "value": "LOOP", - "keyword": "LOOP", - "type": 1, - "flags": 3, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p1", - "value": "p1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p1", - "value": "p1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+", - "value": "+", - "keyword": null, - "type": 2, - "flags": 1, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IF", - "value": "IF", - "keyword": "IF", - "type": 1, - "flags": 35, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p1", - "value": "p1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "<", - "value": "<", - "keyword": null, - "type": 2, - "flags": 2, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "THEN", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ITERATE", - "value": "ITERATE", - "keyword": "ITERATE", - "type": 1, - "flags": 3, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "label1", - "value": "label1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "END", - "value": "END", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IF", - "value": "IF", - "keyword": "IF", - "type": 1, - "flags": 35, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEAVE", - "value": "LEAVE", - "keyword": "LEAVE", - "type": 1, - "flags": 3, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "label1", - "value": "label1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 147 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "END", - "value": "END", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 154 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOOP", - "value": "LOOP", - "keyword": "LOOP", - "type": 1, - "flags": 3, - "position": 155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 159 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "label1", - "value": "label1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 160 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 166 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 170 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 173 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@x", - "value": "x", - "keyword": null, - "type": 8, - "flags": 1, - "position": 174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 176 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 178 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p1", - "value": "p1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 179 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 181 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 182 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "END", - "value": "END", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 183 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 73, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexNoLabel.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexNoLabel.in deleted file mode 100644 index 1fe9b482..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexNoLabel.in +++ /dev/null @@ -1 +0,0 @@ -SELECT wins FROM players WHERE auth = '[U1:123456789]' LIMIT 1 diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexNoLabel.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexNoLabel.out deleted file mode 100644 index 1b85bc6f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexNoLabel.out +++ /dev/null @@ -1,214 +0,0 @@ -{ - "query": "SELECT wins FROM players WHERE auth = '[U1:123456789]' LIMIT 1\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT wins FROM players WHERE auth = '[U1:123456789]' LIMIT 1\n", - "len": 63, - "last": 63, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "wins", - "value": "wins", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "players", - "value": "players", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "auth", - "value": "auth", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'[U1:123456789]'", - "value": "[U1:123456789]", - "keyword": null, - "type": 7, - "flags": 1, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIMIT", - "value": "LIMIT", - "keyword": "LIMIT", - "type": 1, - "flags": 3, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 21, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexNumber.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexNumber.in deleted file mode 100644 index 0f92bbb6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexNumber.in +++ /dev/null @@ -1,3 +0,0 @@ -SELECT 12, 34, 5.67, 0x89, -10, --11, +12, .15, 0xFFa, 0xfFA, +0xfFA, -0xFFa, -0xfFA, 1e-10, 1e10, .5e10, b'10'; --- invalid numbers -SELECT 12ex10, b'15', 0XFfA, -0XFfA, +0XFfA, .e4; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexNumber.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexNumber.out deleted file mode 100644 index 1b43ba95..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexNumber.out +++ /dev/null @@ -1,745 +0,0 @@ -{ - "query": "SELECT 12, 34, 5.67, 0x89, -10, --11, +12, .15, 0xFFa, 0xfFA, +0xfFA, -0xFFa, -0xfFA, 1e-10, 1e10, .5e10, b'10';\n-- invalid numbers\nSELECT 12ex10, b'15', 0XFfA, -0XFfA, +0XFfA, .e4;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT 12, 34, 5.67, 0x89, -10, --11, +12, .15, 0xFFa, 0xfFA, +0xfFA, -0xFFa, -0xfFA, 1e-10, 1e10, .5e10, b'10';\n-- invalid numbers\nSELECT 12ex10, b'15', 0XFfA, -0XFfA, +0XFfA, .e4;\n", - "len": 182, - "last": 182, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "12", - "value": 12, - "keyword": null, - "type": 6, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "34", - "value": 34, - "keyword": null, - "type": 6, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "5.67", - "value": 5.67, - "keyword": null, - "type": 6, - "flags": 2, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0x89", - "value": 137, - "keyword": null, - "type": 6, - "flags": 1, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-10", - "value": -10, - "keyword": null, - "type": 6, - "flags": 8, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "--11", - "value": 11, - "keyword": null, - "type": 6, - "flags": 8, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+12", - "value": 12, - "keyword": null, - "type": 6, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".15", - "value": 0.15, - "keyword": null, - "type": 6, - "flags": 2, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0xFFa", - "value": 4090, - "keyword": null, - "type": 6, - "flags": 1, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0xfFA", - "value": 4090, - "keyword": null, - "type": 6, - "flags": 1, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+0xfFA", - "value": 4090, - "keyword": null, - "type": 6, - "flags": 1, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-0xFFa", - "value": -4090, - "keyword": null, - "type": 6, - "flags": 9, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-0xfFA", - "value": -4090, - "keyword": null, - "type": 6, - "flags": 9, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1e-10", - "value": 1.0e-10, - "keyword": null, - "type": 6, - "flags": 4, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1e10", - "value": 10000000000.0, - "keyword": null, - "type": 6, - "flags": 4, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".5e10", - "value": 5000000000.0, - "keyword": null, - "type": 6, - "flags": 6, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b'10'", - "value": "b'10'", - "keyword": null, - "type": 6, - "flags": 16, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- invalid numbers", - "value": "-- invalid numbers", - "keyword": null, - "type": 4, - "flags": 4, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "12ex10", - "value": "12ex10", - "keyword": null, - "type": 0, - "flags": 0, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 147 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'15'", - "value": "15", - "keyword": null, - "type": 7, - "flags": 1, - "position": 148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 153 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0XFfA", - "value": "0XFfA", - "keyword": null, - "type": 0, - "flags": 0, - "position": 154 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 159 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 160 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-", - "value": "-", - "keyword": null, - "type": 2, - "flags": 1, - "position": 161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0XFfA", - "value": "0XFfA", - "keyword": null, - "type": 0, - "flags": 0, - "position": 162 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 168 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+", - "value": "+", - "keyword": null, - "type": 2, - "flags": 1, - "position": 169 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0XFfA", - "value": "0XFfA", - "keyword": null, - "type": 0, - "flags": 0, - "position": 170 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 175 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 176 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "e4", - "value": "e4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 178 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 180 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 181 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 80, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexOperator.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexOperator.in deleted file mode 100644 index ab544dd7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexOperator.in +++ /dev/null @@ -1 +0,0 @@ -SELECT 1 + 2 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexOperator.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexOperator.out deleted file mode 100644 index 50c554f9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexOperator.out +++ /dev/null @@ -1,97 +0,0 @@ -{ - "query": "SELECT 1 + 2", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT 1 + 2", - "len": 12, - "last": 12, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+", - "value": "+", - "keyword": null, - "type": 2, - "flags": 1, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 8, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexOperatorStarIsArithmetic.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexOperatorStarIsArithmetic.in deleted file mode 100644 index a978dde9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexOperatorStarIsArithmetic.in +++ /dev/null @@ -1,50 +0,0 @@ -SELECT 2*3 -SELECT 2 * 3 -SELECT field * 8 -SELECT 8 * field -SELECT foo * bar -SELECT `escaped_field` * 16 -SELECT 16 * `escaped_field` -SELECT `foo` * `bar` -SELECT `foo`*`bar` -SELECT 1 * (SELECT COUNT(1) FROM nb_rows) -SELECT (SELECT COUNT(1) FROM nb_rows) * 1 -SELECT (SELECT COUNT(1) FROM nb_rows) * (SELECT COUNT(1) FROM nb_rows) -SELECT (1 * 1) * (2 * 2) -SELECT 1 * (2 * (3 * (4 * 5))) -SELECT 2.71 * 3.14 -SELECT 2.71 * -3.14 -SELECT -2.71 * 3.14 -SELECT -2.71 * -3.14 -SELECT 0xABC * 0xCBA -SELECT 0xABC * -0xCBA -SELECT -0xABC * 0xCBA -SELECT -0xABC * -0xCBA - --- Now same but with comments inside (C style comments could conflicts with operator if lexer is failing) -SELECT 2 * /* comment */3 -SELECT 2/* comment */ * 3 -SELECT 2/* comment with * inside */ * 3 -SELECT /* comment */ field /* comment */ * /* comment */ 8 /* comment */ -SELECT /* comment */ 8 /* comment */ * /* comment */ field /* comment */ -SELECT /* comment */ foo /* comment */ * /* comment */ bar /* comment */ -SELECT /* comment */ `escaped_field` /* comment */ * /* comment */ 16 /* comment */ -SELECT /* comment */ 16 /* comment */ * /* comment */ `escaped_field` /* comment */ -SELECT /* comment */ `foo` /* comment */ * /* comment */ `bar` /* comment */ -SELECT /* `comment` */ `foo` /* `comment` */ * /* `comment` */ `bar` /* `comment` */ -SELECT /* comment */ 1 /* comment */ * /* comment */ (SELECT COUNT(/* comment */1/* comment */) /* comment */ FROM nb_rows) -SELECT /* comment */ (SELECT COUNT(1) /* comment */FROM/* comment */ nb_rows) /* comment */ * /* comment */ 1 -SELECT (SELECT /* comment */ COUNT(1) /* comment */ FROM /* comment */ nb_rows) /* comment */ * /* comment */ (SELECT COUNT(1) FROM nb_rows) -SELECT (1 * 1) /* comment */ * /* comment */ (2 * 2) -SELECT /* comment */ 1 /* comment */ * /* comment */ (2 /* comment */ * /* comment */ (3 /* comment */ * /* comment */ (4 /* comment */ * /* comment */ 5))) /* comment */ -SELECT 2.71 /* comment */ * /* comment */ 3.14 -SELECT 2.71 /* comment */ * /* comment */ -3.14 -SELECT -2.71 /* comment */ * /* comment */ 3.14 -SELECT -2.71 /* comment */ * /* comment */ -3.14 -SELECT 0xABC /* comment */ * /* comment */ 0xCBA -SELECT 0xABC /* comment */ * /* comment */ -0xCBA -SELECT -0xABC /* comment */ * /* comment */ 0xCBA -SELECT -0xABC /* comment */ * /* comment */ -0xCBA -SELECT 1 /* comment with FROM keyword */ * /* comment with USING keyword */1 -SELECT 1 /* comment with ) */ * /* comment with , keyword */1 - diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexOperatorStarIsArithmetic.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexOperatorStarIsArithmetic.out deleted file mode 100644 index 8e37f98f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexOperatorStarIsArithmetic.out +++ /dev/null @@ -1,6073 +0,0 @@ -{ - "query": "SELECT 2*3\nSELECT 2 * 3\nSELECT field * 8\nSELECT 8 * field\nSELECT foo * bar\nSELECT `escaped_field` * 16\nSELECT 16 * `escaped_field`\nSELECT `foo` * `bar`\nSELECT `foo`*`bar`\nSELECT 1 * (SELECT COUNT(1) FROM nb_rows)\nSELECT (SELECT COUNT(1) FROM nb_rows) * 1\nSELECT (SELECT COUNT(1) FROM nb_rows) * (SELECT COUNT(1) FROM nb_rows)\nSELECT (1 * 1) * (2 * 2)\nSELECT 1 * (2 * (3 * (4 * 5)))\nSELECT 2.71 * 3.14\nSELECT 2.71 * -3.14\nSELECT -2.71 * 3.14\nSELECT -2.71 * -3.14\nSELECT 0xABC * 0xCBA\nSELECT 0xABC * -0xCBA\nSELECT -0xABC * 0xCBA\nSELECT -0xABC * -0xCBA\n\n-- Now same but with comments inside (C style comments could conflicts with operator if lexer is failing)\nSELECT 2 * /* comment */3\nSELECT 2/* comment */ * 3\nSELECT 2/* comment with * inside */ * 3\nSELECT /* comment */ field /* comment */ * /* comment */ 8 /* comment */\nSELECT /* comment */ 8 /* comment */ * /* comment */ field /* comment */\nSELECT /* comment */ foo /* comment */ * /* comment */ bar /* comment */\nSELECT /* comment */ `escaped_field` /* comment */ * /* comment */ 16 /* comment */\nSELECT /* comment */ 16 /* comment */ * /* comment */ `escaped_field` /* comment */\nSELECT /* comment */ `foo` /* comment */ * /* comment */ `bar` /* comment */\nSELECT /* `comment` */ `foo` /* `comment` */ * /* `comment` */ `bar` /* `comment` */\nSELECT /* comment */ 1 /* comment */ * /* comment */ (SELECT COUNT(/* comment */1/* comment */) /* comment */ FROM nb_rows)\nSELECT /* comment */ (SELECT COUNT(1) /* comment */FROM/* comment */ nb_rows) /* comment */ * /* comment */ 1\nSELECT (SELECT /* comment */ COUNT(1) /* comment */ FROM /* comment */ nb_rows) /* comment */ * /* comment */ (SELECT COUNT(1) FROM nb_rows)\nSELECT (1 * 1) /* comment */ * /* comment */ (2 * 2)\nSELECT /* comment */ 1 /* comment */ * /* comment */ (2 /* comment */ * /* comment */ (3 /* comment */ * /* comment */ (4 /* comment */ * /* comment */ 5))) /* comment */\nSELECT 2.71 /* comment */ * /* comment */ 3.14\nSELECT 2.71 /* comment */ * /* comment */ -3.14\nSELECT -2.71 /* comment */ * /* comment */ 3.14\nSELECT -2.71 /* comment */ * /* comment */ -3.14\nSELECT 0xABC /* comment */ * /* comment */ 0xCBA\nSELECT 0xABC /* comment */ * /* comment */ -0xCBA\nSELECT -0xABC /* comment */ * /* comment */ 0xCBA\nSELECT -0xABC /* comment */ * /* comment */ -0xCBA\nSELECT 1 /* comment with FROM keyword */ * /* comment with USING keyword */1\nSELECT 1 /* comment with ) */ * /* comment with , keyword */1\n\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT 2*3\nSELECT 2 * 3\nSELECT field * 8\nSELECT 8 * field\nSELECT foo * bar\nSELECT `escaped_field` * 16\nSELECT 16 * `escaped_field`\nSELECT `foo` * `bar`\nSELECT `foo`*`bar`\nSELECT 1 * (SELECT COUNT(1) FROM nb_rows)\nSELECT (SELECT COUNT(1) FROM nb_rows) * 1\nSELECT (SELECT COUNT(1) FROM nb_rows) * (SELECT COUNT(1) FROM nb_rows)\nSELECT (1 * 1) * (2 * 2)\nSELECT 1 * (2 * (3 * (4 * 5)))\nSELECT 2.71 * 3.14\nSELECT 2.71 * -3.14\nSELECT -2.71 * 3.14\nSELECT -2.71 * -3.14\nSELECT 0xABC * 0xCBA\nSELECT 0xABC * -0xCBA\nSELECT -0xABC * 0xCBA\nSELECT -0xABC * -0xCBA\n\n-- Now same but with comments inside (C style comments could conflicts with operator if lexer is failing)\nSELECT 2 * /* comment */3\nSELECT 2/* comment */ * 3\nSELECT 2/* comment with * inside */ * 3\nSELECT /* comment */ field /* comment */ * /* comment */ 8 /* comment */\nSELECT /* comment */ 8 /* comment */ * /* comment */ field /* comment */\nSELECT /* comment */ foo /* comment */ * /* comment */ bar /* comment */\nSELECT /* comment */ `escaped_field` /* comment */ * /* comment */ 16 /* comment */\nSELECT /* comment */ 16 /* comment */ * /* comment */ `escaped_field` /* comment */\nSELECT /* comment */ `foo` /* comment */ * /* comment */ `bar` /* comment */\nSELECT /* `comment` */ `foo` /* `comment` */ * /* `comment` */ `bar` /* `comment` */\nSELECT /* comment */ 1 /* comment */ * /* comment */ (SELECT COUNT(/* comment */1/* comment */) /* comment */ FROM nb_rows)\nSELECT /* comment */ (SELECT COUNT(1) /* comment */FROM/* comment */ nb_rows) /* comment */ * /* comment */ 1\nSELECT (SELECT /* comment */ COUNT(1) /* comment */ FROM /* comment */ nb_rows) /* comment */ * /* comment */ (SELECT COUNT(1) FROM nb_rows)\nSELECT (1 * 1) /* comment */ * /* comment */ (2 * 2)\nSELECT /* comment */ 1 /* comment */ * /* comment */ (2 /* comment */ * /* comment */ (3 /* comment */ * /* comment */ (4 /* comment */ * /* comment */ 5))) /* comment */\nSELECT 2.71 /* comment */ * /* comment */ 3.14\nSELECT 2.71 /* comment */ * /* comment */ -3.14\nSELECT -2.71 /* comment */ * /* comment */ 3.14\nSELECT -2.71 /* comment */ * /* comment */ -3.14\nSELECT 0xABC /* comment */ * /* comment */ 0xCBA\nSELECT 0xABC /* comment */ * /* comment */ -0xCBA\nSELECT -0xABC /* comment */ * /* comment */ 0xCBA\nSELECT -0xABC /* comment */ * /* comment */ -0xCBA\nSELECT 1 /* comment with FROM keyword */ * /* comment with USING keyword */1\nSELECT 1 /* comment with ) */ * /* comment with , keyword */1\n\n", - "len": 2429, - "last": 2429, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "field", - "value": "field", - "keyword": "FIELD", - "type": 1, - "flags": 33, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "8", - "value": 8, - "keyword": null, - "type": 6, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "8", - "value": 8, - "keyword": null, - "type": 6, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "field", - "value": "field", - "keyword": "FIELD", - "type": 1, - "flags": 33, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "bar", - "value": "bar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`escaped_field`", - "value": "escaped_field", - "keyword": null, - "type": 8, - "flags": 2, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "16", - "value": 16, - "keyword": null, - "type": 6, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "16", - "value": 16, - "keyword": null, - "type": 6, - "flags": 0, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`escaped_field`", - "value": "escaped_field", - "keyword": null, - "type": 8, - "flags": 2, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 137 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`foo`", - "value": "foo", - "keyword": null, - "type": 8, - "flags": 2, - "position": 138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 144 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`bar`", - "value": "bar", - "keyword": null, - "type": 8, - "flags": 2, - "position": 146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`foo`", - "value": "foo", - "keyword": null, - "type": 8, - "flags": 2, - "position": 159 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 164 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`bar`", - "value": "bar", - "keyword": null, - "type": 8, - "flags": 2, - "position": 165 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 170 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 171 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 178 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 179 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 180 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 181 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 182 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 183 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 189 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COUNT", - "value": "COUNT", - "keyword": "COUNT", - "type": 1, - "flags": 33, - "position": 190 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 195 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 196 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 197 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 198 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 199 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 203 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "nb_rows", - "value": "nb_rows", - "keyword": null, - "type": 0, - "flags": 0, - "position": 204 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 211 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 212 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 213 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 219 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 220 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 221 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 227 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COUNT", - "value": "COUNT", - "keyword": "COUNT", - "type": 1, - "flags": 33, - "position": 228 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 233 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 234 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 235 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 236 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 237 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 241 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "nb_rows", - "value": "nb_rows", - "keyword": null, - "type": 0, - "flags": 0, - "position": 242 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 249 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 250 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 251 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 252 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 253 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 254 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 255 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 261 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 262 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 263 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 269 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COUNT", - "value": "COUNT", - "keyword": "COUNT", - "type": 1, - "flags": 33, - "position": 270 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 275 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 276 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 277 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 278 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 279 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 283 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "nb_rows", - "value": "nb_rows", - "keyword": null, - "type": 0, - "flags": 0, - "position": 284 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 291 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 292 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 293 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 294 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 295 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 296 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 302 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COUNT", - "value": "COUNT", - "keyword": "COUNT", - "type": 1, - "flags": 33, - "position": 303 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 308 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 309 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 310 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 311 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 312 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 316 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "nb_rows", - "value": "nb_rows", - "keyword": null, - "type": 0, - "flags": 0, - "position": 317 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 324 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 325 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 326 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 332 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 333 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 334 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 335 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 336 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 337 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 338 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 339 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 340 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 341 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 342 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 343 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 344 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 345 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 346 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 347 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 348 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 349 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 350 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 351 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 357 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 358 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 359 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 360 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 361 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 362 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 363 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 364 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 365 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 366 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 367 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 368 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 369 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 370 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 371 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 372 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "4", - "value": 4, - "keyword": null, - "type": 6, - "flags": 0, - "position": 373 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 374 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 375 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 376 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "5", - "value": 5, - "keyword": null, - "type": 6, - "flags": 0, - "position": 377 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 378 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 379 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 380 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 381 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 382 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 388 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2.71", - "value": 2.71, - "keyword": null, - "type": 6, - "flags": 2, - "position": 389 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 393 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 394 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 395 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3.14", - "value": 3.14, - "keyword": null, - "type": 6, - "flags": 2, - "position": 396 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 400 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 401 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 407 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2.71", - "value": 2.71, - "keyword": null, - "type": 6, - "flags": 2, - "position": 408 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 412 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 413 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 414 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-3.14", - "value": -3.14, - "keyword": null, - "type": 6, - "flags": 10, - "position": 415 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 420 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 421 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 427 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-2.71", - "value": -2.71, - "keyword": null, - "type": 6, - "flags": 10, - "position": 428 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 433 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 434 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 435 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3.14", - "value": 3.14, - "keyword": null, - "type": 6, - "flags": 2, - "position": 436 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 440 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 441 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 447 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-2.71", - "value": -2.71, - "keyword": null, - "type": 6, - "flags": 10, - "position": 448 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 453 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 454 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 455 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-3.14", - "value": -3.14, - "keyword": null, - "type": 6, - "flags": 10, - "position": 456 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 461 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 462 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 468 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0xABC", - "value": 2748, - "keyword": null, - "type": 6, - "flags": 1, - "position": 469 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 474 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 475 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 476 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0xCBA", - "value": 3258, - "keyword": null, - "type": 6, - "flags": 1, - "position": 477 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 482 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 483 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 489 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0xABC", - "value": 2748, - "keyword": null, - "type": 6, - "flags": 1, - "position": 490 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 495 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 496 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 497 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-0xCBA", - "value": -3258, - "keyword": null, - "type": 6, - "flags": 9, - "position": 498 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 504 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 505 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 511 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-0xABC", - "value": -2748, - "keyword": null, - "type": 6, - "flags": 9, - "position": 512 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 518 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 519 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 520 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0xCBA", - "value": 3258, - "keyword": null, - "type": 6, - "flags": 1, - "position": 521 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 526 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 527 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 533 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-0xABC", - "value": -2748, - "keyword": null, - "type": 6, - "flags": 9, - "position": 534 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 540 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 541 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 542 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-0xCBA", - "value": -3258, - "keyword": null, - "type": 6, - "flags": 9, - "position": 543 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 549 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- Now same but with comments inside (C style comments could conflicts with operator if lexer is failing)", - "value": "-- Now same but with comments inside (C style comments could conflicts with operator if lexer is failing)", - "keyword": null, - "type": 4, - "flags": 4, - "position": 551 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 656 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 657 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 663 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 664 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 665 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 666 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 667 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 668 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 681 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 682 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 683 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 689 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 690 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 691 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 704 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 705 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 706 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 707 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 708 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 709 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 715 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 716 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment with * inside */", - "value": "/* comment with * inside */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 717 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 744 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 745 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 746 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 747 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 748 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 749 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 755 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 756 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 769 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "field", - "value": "field", - "keyword": "FIELD", - "type": 1, - "flags": 33, - "position": 770 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 775 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 776 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 789 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 790 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 791 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 792 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 805 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "8", - "value": 8, - "keyword": null, - "type": 6, - "flags": 0, - "position": 806 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 807 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 808 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 821 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 822 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 828 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 829 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 842 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "8", - "value": 8, - "keyword": null, - "type": 6, - "flags": 0, - "position": 843 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 844 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 845 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 858 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 859 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 860 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 861 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 874 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "field", - "value": "field", - "keyword": "FIELD", - "type": 1, - "flags": 33, - "position": 875 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 880 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 881 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 894 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 895 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 901 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 902 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 915 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 916 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 919 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 920 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 933 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 934 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 935 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 936 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 949 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "bar", - "value": "bar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 950 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 953 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 954 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 967 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 968 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 974 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 975 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 988 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`escaped_field`", - "value": "escaped_field", - "keyword": null, - "type": 8, - "flags": 2, - "position": 989 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1004 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1005 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1018 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 1019 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1020 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1021 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1034 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "16", - "value": 16, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1035 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1037 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1038 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1051 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 1052 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1058 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1059 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1072 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "16", - "value": 16, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1073 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1075 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1076 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1089 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 1090 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1091 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1092 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`escaped_field`", - "value": "escaped_field", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 1136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`foo`", - "value": "foo", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1162 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1163 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1176 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 1177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1178 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1179 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1192 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`bar`", - "value": "bar", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1193 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1198 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1199 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1212 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 1213 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1219 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* `comment` */", - "value": "/* `comment` */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1220 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1235 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`foo`", - "value": "foo", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1236 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1241 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* `comment` */", - "value": "/* `comment` */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1242 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1257 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 1258 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1259 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* `comment` */", - "value": "/* `comment` */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1260 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1275 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`bar`", - "value": "bar", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1276 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1281 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* `comment` */", - "value": "/* `comment` */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1282 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1297 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 1298 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1304 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1305 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1318 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1319 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1320 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1321 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1334 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 1335 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1336 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1337 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1350 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1351 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 1352 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1358 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COUNT", - "value": "COUNT", - "keyword": "COUNT", - "type": 1, - "flags": 33, - "position": 1359 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1364 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1365 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1378 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1379 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1392 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1393 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1394 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1407 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 1408 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1412 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "nb_rows", - "value": "nb_rows", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1413 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1420 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1421 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 1422 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1428 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1429 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1442 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1443 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 1444 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1450 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COUNT", - "value": "COUNT", - "keyword": "COUNT", - "type": 1, - "flags": 33, - "position": 1451 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1456 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1457 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1458 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1459 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1460 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 1473 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1477 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1490 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "nb_rows", - "value": "nb_rows", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1491 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1498 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1499 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1500 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1513 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 1514 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1515 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1516 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1529 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1530 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1531 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 1532 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1538 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1539 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 1540 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1546 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1547 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1560 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COUNT", - "value": "COUNT", - "keyword": "COUNT", - "type": 1, - "flags": 33, - "position": 1561 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1566 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1567 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1568 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1569 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1570 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1583 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 1584 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1588 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1589 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1602 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "nb_rows", - "value": "nb_rows", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1603 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1610 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1611 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1612 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1625 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 1626 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1627 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1628 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1641 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1642 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 1643 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1649 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COUNT", - "value": "COUNT", - "keyword": "COUNT", - "type": 1, - "flags": 33, - "position": 1650 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1655 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1656 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1657 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1658 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 1659 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1663 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "nb_rows", - "value": "nb_rows", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1664 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1671 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1672 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 1673 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1679 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1680 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1681 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1682 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 1683 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1684 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1685 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1686 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1687 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1688 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1701 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 1702 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1703 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1704 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1717 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1718 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1719 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1720 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 1721 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1722 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1723 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1724 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1725 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 1726 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1732 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1733 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1746 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1747 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1748 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1749 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1762 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 1763 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1764 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1765 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1778 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1779 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1780 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1781 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1782 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1795 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 1796 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1797 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1798 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1811 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1812 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1813 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1814 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1815 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1828 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 1829 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1830 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1831 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1844 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1845 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "4", - "value": 4, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1846 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1847 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1848 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1861 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 1862 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1863 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1864 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1877 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "5", - "value": 5, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1878 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1879 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1880 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1881 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1882 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1883 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1896 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 1897 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1903 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2.71", - "value": 2.71, - "keyword": null, - "type": 6, - "flags": 2, - "position": 1904 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1908 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1909 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1922 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 1923 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1924 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1925 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1938 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3.14", - "value": 3.14, - "keyword": null, - "type": 6, - "flags": 2, - "position": 1939 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1943 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 1944 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1950 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2.71", - "value": 2.71, - "keyword": null, - "type": 6, - "flags": 2, - "position": 1951 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1955 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1956 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1969 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 1970 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1971 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1972 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1985 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-3.14", - "value": -3.14, - "keyword": null, - "type": 6, - "flags": 10, - "position": 1986 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1991 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 1992 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1998 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-2.71", - "value": -2.71, - "keyword": null, - "type": 6, - "flags": 10, - "position": 1999 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2004 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 2005 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2018 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 2019 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2020 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 2021 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2034 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3.14", - "value": 3.14, - "keyword": null, - "type": 6, - "flags": 2, - "position": 2035 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2039 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 2040 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2046 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-2.71", - "value": -2.71, - "keyword": null, - "type": 6, - "flags": 10, - "position": 2047 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2052 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 2053 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2066 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 2067 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2068 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 2069 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2082 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-3.14", - "value": -3.14, - "keyword": null, - "type": 6, - "flags": 10, - "position": 2083 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2088 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 2089 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2095 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0xABC", - "value": 2748, - "keyword": null, - "type": 6, - "flags": 1, - "position": 2096 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 2102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 2116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 2118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0xCBA", - "value": 3258, - "keyword": null, - "type": 6, - "flags": 1, - "position": 2132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2137 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 2138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2144 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0xABC", - "value": 2748, - "keyword": null, - "type": 6, - "flags": 1, - "position": 2145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2150 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 2151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2164 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 2165 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2166 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 2167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2180 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-0xCBA", - "value": -3258, - "keyword": null, - "type": 6, - "flags": 9, - "position": 2181 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2187 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 2188 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2194 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-0xABC", - "value": -2748, - "keyword": null, - "type": 6, - "flags": 9, - "position": 2195 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2201 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 2202 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2215 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 2216 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2217 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 2218 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2231 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0xCBA", - "value": 3258, - "keyword": null, - "type": 6, - "flags": 1, - "position": 2232 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2237 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 2238 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2244 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-0xABC", - "value": -2748, - "keyword": null, - "type": 6, - "flags": 9, - "position": 2245 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2251 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 2252 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2265 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 2266 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2267 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 2268 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2281 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-0xCBA", - "value": -3258, - "keyword": null, - "type": 6, - "flags": 9, - "position": 2282 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2288 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 2289 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2295 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 2296 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2297 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment with FROM keyword */", - "value": "/* comment with FROM keyword */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 2298 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2329 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 2330 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2331 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment with USING keyword */", - "value": "/* comment with USING keyword */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 2332 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 2364 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2365 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 2366 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2372 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 2373 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2374 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment with ) */", - "value": "/* comment with ) */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 2375 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2395 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 2396 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2397 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment with , keyword */", - "value": "/* comment with , keyword */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 2398 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 2426 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2427 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 672, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexOperatorStarIsWildcard.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexOperatorStarIsWildcard.in deleted file mode 100644 index c9270891..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexOperatorStarIsWildcard.in +++ /dev/null @@ -1,34 +0,0 @@ -SELECT * FROM -SELECT *FROM -SELECT a.* FROM -SELECT a.*,b.* FROM -SELECT a.*, b.* FROM -SELECT a.*, /* with a comment */ b.* FROM -SELECT a.*,/* with a comment */b.* FROM -SELECT a.* /* comment */ FROM -SELECT a.*/* comment */ FROM -SELECT DISTINCT * FROM -SELECT DISTINCT *FROM -SELECT DISTINCT a.* FROM -SELECT DISTINCT a.*,b.* FROM -SELECT DISTINCT a.*, b.* FROM -SELECT DISTINCT a.*, /* with a comment */ b.* FROM -SELECT DISTINCT a.*,/* with a comment */b.* FROM -SELECT DISTINCT a.* /* comment */ FROM -SELECT DISTINCT a.*/* comment */ FROM -SELECT `*` FROM table_name -SELECT `*`.* FROM table_name AS `*` -SELECT COUNT(*) FROM table_name -SELECT COUNT( * ) FROM table_name -SELECT COUNT( * /* comment with *,USING,FROM */) FROM table_name -SELECT COUNT(`*`) FROM table_name -SELECT 1 FROM table_name WHERE LABEL LIKE '%*%' -DELETE a.* USING -DELETE a.*, b.* USING -DELETE a.* ,b.* USING -DELETE a.* , b.* USING -DELETE a.* /* comment */ USING -DELETE a.* /* comment */, b.* /*comment*/ USING -DELETE a.* /* comment */ ,b.* /*comment*/ USING -DELETE a.* /* comment */ , b.* /*comment*/ USING - diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexOperatorStarIsWildcard.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexOperatorStarIsWildcard.out deleted file mode 100644 index 68bb6bfa..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexOperatorStarIsWildcard.out +++ /dev/null @@ -1,3607 +0,0 @@ -{ - "query": "SELECT * FROM\nSELECT *FROM\nSELECT a.* FROM\nSELECT a.*,b.* FROM\nSELECT a.*, b.* FROM\nSELECT a.*, /* with a comment */ b.* FROM\nSELECT a.*,/* with a comment */b.* FROM\nSELECT a.* /* comment */ FROM\nSELECT a.*/* comment */ FROM\nSELECT DISTINCT * FROM\nSELECT DISTINCT *FROM\nSELECT DISTINCT a.* FROM\nSELECT DISTINCT a.*,b.* FROM\nSELECT DISTINCT a.*, b.* FROM\nSELECT DISTINCT a.*, /* with a comment */ b.* FROM\nSELECT DISTINCT a.*,/* with a comment */b.* FROM\nSELECT DISTINCT a.* /* comment */ FROM\nSELECT DISTINCT a.*/* comment */ FROM\nSELECT `*` FROM table_name\nSELECT `*`.* FROM table_name AS `*`\nSELECT COUNT(*) FROM table_name\nSELECT COUNT( * ) FROM table_name\nSELECT COUNT( * /* comment with *,USING,FROM */) FROM table_name\nSELECT COUNT(`*`) FROM table_name\nSELECT 1 FROM table_name WHERE LABEL LIKE '%*%'\nDELETE a.* USING\nDELETE a.*, b.* USING\nDELETE a.* ,b.* USING\nDELETE a.* , b.* USING\nDELETE a.* /* comment */ USING\nDELETE a.* /* comment */, b.* /*comment*/ USING\nDELETE a.* /* comment */ ,b.* /*comment*/ USING\nDELETE a.* /* comment */ , b.* /*comment*/ USING\n\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM\nSELECT *FROM\nSELECT a.* FROM\nSELECT a.*,b.* FROM\nSELECT a.*, b.* FROM\nSELECT a.*, /* with a comment */ b.* FROM\nSELECT a.*,/* with a comment */b.* FROM\nSELECT a.* /* comment */ FROM\nSELECT a.*/* comment */ FROM\nSELECT DISTINCT * FROM\nSELECT DISTINCT *FROM\nSELECT DISTINCT a.* FROM\nSELECT DISTINCT a.*,b.* FROM\nSELECT DISTINCT a.*, b.* FROM\nSELECT DISTINCT a.*, /* with a comment */ b.* FROM\nSELECT DISTINCT a.*,/* with a comment */b.* FROM\nSELECT DISTINCT a.* /* comment */ FROM\nSELECT DISTINCT a.*/* comment */ FROM\nSELECT `*` FROM table_name\nSELECT `*`.* FROM table_name AS `*`\nSELECT COUNT(*) FROM table_name\nSELECT COUNT( * ) FROM table_name\nSELECT COUNT( * /* comment with *,USING,FROM */) FROM table_name\nSELECT COUNT(`*`) FROM table_name\nSELECT 1 FROM table_name WHERE LABEL LIKE '%*%'\nDELETE a.* USING\nDELETE a.*, b.* USING\nDELETE a.* ,b.* USING\nDELETE a.* , b.* USING\nDELETE a.* /* comment */ USING\nDELETE a.* /* comment */, b.* /*comment*/ USING\nDELETE a.* /* comment */ ,b.* /*comment*/ USING\nDELETE a.* /* comment */ , b.* /*comment*/ USING\n\n", - "len": 1068, - "last": 1068, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* with a comment */", - "value": "/* with a comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 134 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* with a comment */", - "value": "/* with a comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 137 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 159 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 160 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 165 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 166 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 172 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 173 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 175 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 176 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 190 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 191 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 195 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 196 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 202 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 203 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 204 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 205 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 206 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 219 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 220 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 224 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 225 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 231 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DISTINCT", - "value": "DISTINCT", - "keyword": "DISTINCT", - "type": 1, - "flags": 3, - "position": 232 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 240 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 241 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 242 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 243 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 247 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 248 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 254 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DISTINCT", - "value": "DISTINCT", - "keyword": "DISTINCT", - "type": 1, - "flags": 3, - "position": 255 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 263 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 264 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 265 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 269 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 270 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 276 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DISTINCT", - "value": "DISTINCT", - "keyword": "DISTINCT", - "type": 1, - "flags": 3, - "position": 277 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 285 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 286 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 287 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 288 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 289 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 290 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 294 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 295 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 301 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DISTINCT", - "value": "DISTINCT", - "keyword": "DISTINCT", - "type": 1, - "flags": 3, - "position": 302 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 310 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 311 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 312 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 313 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 314 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 315 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 316 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 317 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 318 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 319 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 323 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 324 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 330 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DISTINCT", - "value": "DISTINCT", - "keyword": "DISTINCT", - "type": 1, - "flags": 3, - "position": 331 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 339 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 340 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 341 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 342 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 343 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 344 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 345 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 346 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 347 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 348 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 349 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 353 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 354 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 360 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DISTINCT", - "value": "DISTINCT", - "keyword": "DISTINCT", - "type": 1, - "flags": 3, - "position": 361 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 369 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 370 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 371 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 372 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 373 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 374 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* with a comment */", - "value": "/* with a comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 375 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 395 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 396 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 397 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 398 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 399 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 400 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 404 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 405 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 411 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DISTINCT", - "value": "DISTINCT", - "keyword": "DISTINCT", - "type": 1, - "flags": 3, - "position": 412 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 420 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 421 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 422 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 423 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 424 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* with a comment */", - "value": "/* with a comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 425 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 445 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 446 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 447 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 448 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 449 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 453 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 454 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 460 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DISTINCT", - "value": "DISTINCT", - "keyword": "DISTINCT", - "type": 1, - "flags": 3, - "position": 461 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 469 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 470 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 471 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 472 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 473 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 474 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 487 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 488 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 492 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 493 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 499 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DISTINCT", - "value": "DISTINCT", - "keyword": "DISTINCT", - "type": 1, - "flags": 3, - "position": 500 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 508 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 509 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 510 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 511 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 512 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 525 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 526 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 530 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 531 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 537 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`*`", - "value": "*", - "keyword": null, - "type": 8, - "flags": 2, - "position": 538 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 541 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 542 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 546 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table_name", - "value": "table_name", - "keyword": "TABLE_NAME", - "type": 1, - "flags": 1, - "position": 547 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 557 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 558 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 564 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`*`", - "value": "*", - "keyword": null, - "type": 8, - "flags": 2, - "position": 565 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 568 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 569 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 570 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 571 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 575 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table_name", - "value": "table_name", - "keyword": "TABLE_NAME", - "type": 1, - "flags": 1, - "position": 576 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 586 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 587 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 589 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`*`", - "value": "*", - "keyword": null, - "type": 8, - "flags": 2, - "position": 590 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 593 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 594 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 600 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COUNT", - "value": "COUNT", - "keyword": "COUNT", - "type": 1, - "flags": 33, - "position": 601 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 606 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 607 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 608 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 609 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 610 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 614 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table_name", - "value": "table_name", - "keyword": "TABLE_NAME", - "type": 1, - "flags": 1, - "position": 615 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 625 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 626 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 632 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COUNT", - "value": "COUNT", - "keyword": "COUNT", - "type": 1, - "flags": 33, - "position": 633 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 638 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 639 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 640 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 641 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 642 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 643 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 644 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 648 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table_name", - "value": "table_name", - "keyword": "TABLE_NAME", - "type": 1, - "flags": 1, - "position": 649 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 659 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 660 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 666 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COUNT", - "value": "COUNT", - "keyword": "COUNT", - "type": 1, - "flags": 33, - "position": 667 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 672 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 673 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 674 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 675 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment with *,USING,FROM */", - "value": "/* comment with *,USING,FROM */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 676 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 707 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 708 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 709 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 713 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table_name", - "value": "table_name", - "keyword": "TABLE_NAME", - "type": 1, - "flags": 1, - "position": 714 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 724 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 725 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 731 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COUNT", - "value": "COUNT", - "keyword": "COUNT", - "type": 1, - "flags": 33, - "position": 732 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 737 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`*`", - "value": "*", - "keyword": null, - "type": 8, - "flags": 2, - "position": 738 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 741 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 742 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 743 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 747 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table_name", - "value": "table_name", - "keyword": "TABLE_NAME", - "type": 1, - "flags": 1, - "position": 748 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 758 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 759 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 765 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 766 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 767 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 768 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 772 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table_name", - "value": "table_name", - "keyword": "TABLE_NAME", - "type": 1, - "flags": 1, - "position": 773 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 783 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 784 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 789 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LABEL", - "value": "LABEL", - "keyword": null, - "type": 0, - "flags": 0, - "position": 790 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 795 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIKE", - "value": "LIKE", - "keyword": "LIKE", - "type": 1, - "flags": 3, - "position": 796 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 800 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'%*%'", - "value": "%*%", - "keyword": null, - "type": 7, - "flags": 1, - "position": 801 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 806 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 807 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 813 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 814 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 815 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 816 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 817 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 818 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 823 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 824 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 830 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 831 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 832 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 833 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 834 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 835 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 836 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 837 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 838 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 839 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 840 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 845 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 846 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 852 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 853 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 854 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 855 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 856 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 857 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 858 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 859 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 860 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 861 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 862 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 867 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 868 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 874 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 875 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 876 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 877 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 878 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 879 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 880 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 881 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 882 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 883 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 884 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 885 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 890 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 891 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 897 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 898 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 899 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 900 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 901 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 902 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 915 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 916 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 921 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 922 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 928 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 929 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 930 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 931 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 932 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 933 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 946 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 947 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 948 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 949 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 950 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 951 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/*comment*/", - "value": "/*comment*/", - "keyword": null, - "type": 4, - "flags": 2, - "position": 952 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 963 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 964 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 969 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 970 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 976 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 977 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 978 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 979 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 980 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 981 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 994 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 995 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 996 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 997 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 998 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 999 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/*comment*/", - "value": "/*comment*/", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1000 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1011 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 1012 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1017 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 1018 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1024 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1025 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1026 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1027 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1028 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1029 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1042 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1043 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1044 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1045 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1046 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1047 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1048 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/*comment*/", - "value": "/*comment*/", - "keyword": null, - "type": 4, - "flags": 2, - "position": 1049 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1060 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 1061 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1066 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 398, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexString.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexString.in deleted file mode 100644 index 1aa9f71a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexString.in +++ /dev/null @@ -1 +0,0 @@ -SELECT 'foo', "bar", "foo\\ bar" \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexString.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexString.out deleted file mode 100644 index 5b697f6c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexString.out +++ /dev/null @@ -1,115 +0,0 @@ -{ - "query": "SELECT 'foo', \"bar\", \"foo\\\\ bar\"", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT 'foo', \"bar\", \"foo\\\\ bar\"", - "len": 32, - "last": 32, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'foo'", - "value": "foo", - "keyword": null, - "type": 7, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"bar\"", - "value": "bar", - "keyword": null, - "type": 7, - "flags": 2, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"foo\\\\ bar\"", - "value": "foo\\ bar", - "keyword": null, - "type": 7, - "flags": 2, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexStringErr1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexStringErr1.in deleted file mode 100644 index 861a0b88..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexStringErr1.in +++ /dev/null @@ -1 +0,0 @@ -SELECT 'foo', "bar", "foo\\ bar \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexStringErr1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexStringErr1.out deleted file mode 100644 index e462fd01..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexStringErr1.out +++ /dev/null @@ -1,122 +0,0 @@ -{ - "query": "SELECT 'foo', \"bar\", \"foo\\\\ bar", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT 'foo', \"bar\", \"foo\\\\ bar", - "len": 31, - "last": 32, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'foo'", - "value": "foo", - "keyword": null, - "type": 7, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"bar\"", - "value": "bar", - "keyword": null, - "type": 7, - "flags": 2, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"foo\\\\ bar", - "value": "foo\\ ba", - "keyword": null, - "type": 7, - "flags": 2, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [ - [ - "Ending quote \" was expected.", - "", - 31, - 0 - ] - ], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbol.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbol.in deleted file mode 100644 index 21f0f54e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbol.in +++ /dev/null @@ -1,2 +0,0 @@ -SET @idx := 1; -SELECT @idx, @`idx`, @'idx', @@hostname \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbol.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbol.out deleted file mode 100644 index e2b04eb9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbol.out +++ /dev/null @@ -1,223 +0,0 @@ -{ - "query": "SET @idx := 1;\nSELECT @idx, @`idx`, @'idx', @@hostname", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SET @idx := 1;\nSELECT @idx, @`idx`, @'idx', @@hostname", - "len": 54, - "last": 54, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@idx", - "value": "idx", - "keyword": null, - "type": 8, - "flags": 1, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ":=", - "value": ":=", - "keyword": null, - "type": 2, - "flags": 8, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@idx", - "value": "idx", - "keyword": null, - "type": 8, - "flags": 1, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@`idx`", - "value": "idx", - "keyword": null, - "type": 8, - "flags": 1, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@'idx'", - "value": "idx", - "keyword": null, - "type": 8, - "flags": 1, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@@hostname", - "value": "hostname", - "keyword": null, - "type": 8, - "flags": 9, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 22, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolErr1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolErr1.in deleted file mode 100644 index f61f8ad7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolErr1.in +++ /dev/null @@ -1,2 +0,0 @@ -SET @idx := 1; -SELECT @idx, @`idx`, @'idx \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolErr1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolErr1.out deleted file mode 100644 index a7bb19aa..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolErr1.out +++ /dev/null @@ -1,203 +0,0 @@ -{ - "query": "SET @idx := 1;\nSELECT @idx, @`idx`, @'idx", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SET @idx := 1;\nSELECT @idx, @`idx`, @'idx", - "len": 41, - "last": 42, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@idx", - "value": "idx", - "keyword": null, - "type": 8, - "flags": 1, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ":=", - "value": ":=", - "keyword": null, - "type": 2, - "flags": 8, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@idx", - "value": "idx", - "keyword": null, - "type": 8, - "flags": 1, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@`idx`", - "value": "idx", - "keyword": null, - "type": 8, - "flags": 1, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@'idx", - "value": "id", - "keyword": null, - "type": 8, - "flags": 1, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 19, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [ - [ - "Ending quote ' was expected.", - "", - 41, - 0 - ] - ], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolErr2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolErr2.in deleted file mode 100644 index ceb51ab3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolErr2.in +++ /dev/null @@ -1,2 +0,0 @@ -SET @idx := 1; -SELECT @idx, @`idx`, @ \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolErr2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolErr2.out deleted file mode 100644 index 769a5b0a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolErr2.out +++ /dev/null @@ -1,203 +0,0 @@ -{ - "query": "SET @idx := 1;\nSELECT @idx, @`idx`, @ ", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SET @idx := 1;\nSELECT @idx, @`idx`, @ ", - "len": 38, - "last": 38, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@idx", - "value": "idx", - "keyword": null, - "type": 8, - "flags": 1, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ":=", - "value": ":=", - "keyword": null, - "type": 2, - "flags": 8, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@idx", - "value": "idx", - "keyword": null, - "type": 8, - "flags": 1, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@`idx`", - "value": "idx", - "keyword": null, - "type": 8, - "flags": 1, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@", - "value": "", - "keyword": null, - "type": 8, - "flags": 1, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 19, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [ - [ - "Variable name was expected.", - " ", - 37, - 0 - ] - ], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolErr3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolErr3.in deleted file mode 100644 index 20bddacb..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolErr3.in +++ /dev/null @@ -1 +0,0 @@ -SELECT `idx \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolErr3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolErr3.out deleted file mode 100644 index 92f59722..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolErr3.out +++ /dev/null @@ -1,68 +0,0 @@ -{ - "query": "SELECT `idx", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT `idx", - "len": 11, - "last": 12, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`idx", - "value": "id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 4, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [ - [ - "Ending quote ` was expected.", - "", - 11, - 0 - ] - ], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser1.in deleted file mode 100644 index a0be410f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser1.in +++ /dev/null @@ -1 +0,0 @@ -CREATE USER 'user'@'hostname' IDENTIFIED BY 'password'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser1.out deleted file mode 100644 index 7bf28fd1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser1.out +++ /dev/null @@ -1,142 +0,0 @@ -{ - "query": "CREATE USER 'user'@'hostname' IDENTIFIED BY 'password';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE USER 'user'@'hostname' IDENTIFIED BY 'password';", - "len": 55, - "last": 55, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USER", - "value": "USER", - "keyword": "USER", - "type": 1, - "flags": 33, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'user'@'hostname'", - "value": "user@hostname", - "keyword": null, - "type": 8, - "flags": 4, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IDENTIFIED", - "value": "IDENTIFIED", - "keyword": "IDENTIFIED", - "type": 1, - "flags": 1, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BY", - "value": "BY", - "keyword": "BY", - "type": 1, - "flags": 3, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'password'", - "value": "password", - "keyword": null, - "type": 7, - "flags": 1, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 13, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser2.in deleted file mode 100644 index 0a22e41a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser2.in +++ /dev/null @@ -1 +0,0 @@ -ALTER USER 'user'@'hostname' IDENTIFIED WITH mysql_native_password BY 'password'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser2.out deleted file mode 100644 index 9556fa7f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser2.out +++ /dev/null @@ -1,160 +0,0 @@ -{ - "query": "ALTER USER 'user'@'hostname' IDENTIFIED WITH mysql_native_password BY 'password';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER USER 'user'@'hostname' IDENTIFIED WITH mysql_native_password BY 'password';", - "len": 81, - "last": 81, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USER", - "value": "USER", - "keyword": "USER", - "type": 1, - "flags": 33, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'user'@'hostname'", - "value": "user@hostname", - "keyword": null, - "type": 8, - "flags": 4, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IDENTIFIED WITH", - "value": "IDENTIFIED WITH", - "keyword": "IDENTIFIED WITH", - "type": 1, - "flags": 23, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mysql_native_password", - "value": "mysql_native_password", - "keyword": null, - "type": 0, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BY", - "value": "BY", - "keyword": "BY", - "type": 1, - "flags": 3, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'password'", - "value": "password", - "keyword": null, - "type": 7, - "flags": 1, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 15, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser3.in deleted file mode 100644 index a411c91f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser3.in +++ /dev/null @@ -1 +0,0 @@ -ALTER USER 'user'@'hostname' WITH MAX_QUERIES_PER_HOUR 500 MAX_UPDATES_PER_HOUR 100; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser3.out deleted file mode 100644 index a56ada69..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser3.out +++ /dev/null @@ -1,178 +0,0 @@ -{ - "query": "ALTER USER 'user'@'hostname' WITH MAX_QUERIES_PER_HOUR 500 MAX_UPDATES_PER_HOUR 100;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER USER 'user'@'hostname' WITH MAX_QUERIES_PER_HOUR 500 MAX_UPDATES_PER_HOUR 100;", - "len": 84, - "last": 84, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USER", - "value": "USER", - "keyword": "USER", - "type": 1, - "flags": 33, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'user'@'hostname'", - "value": "user@hostname", - "keyword": null, - "type": 8, - "flags": 4, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MAX_QUERIES_PER_HOUR", - "value": "MAX_QUERIES_PER_HOUR", - "keyword": "MAX_QUERIES_PER_HOUR", - "type": 1, - "flags": 1, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "500", - "value": 500, - "keyword": null, - "type": 6, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MAX_UPDATES_PER_HOUR", - "value": "MAX_UPDATES_PER_HOUR", - "keyword": "MAX_UPDATES_PER_HOUR", - "type": 1, - "flags": 1, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "100", - "value": 100, - "keyword": null, - "type": 6, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 17, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser4_mariadb_100400.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser4_mariadb_100400.in deleted file mode 100644 index 4357161a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser4_mariadb_100400.in +++ /dev/null @@ -1 +0,0 @@ -ALTER USER 'user'@'hostname' IDENTIFIED VIA mysql_native_password BY 'password'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser4_mariadb_100400.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser4_mariadb_100400.out deleted file mode 100644 index 347f2eb1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser4_mariadb_100400.out +++ /dev/null @@ -1,160 +0,0 @@ -{ - "query": "ALTER USER 'user'@'hostname' IDENTIFIED VIA mysql_native_password BY 'password';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER USER 'user'@'hostname' IDENTIFIED VIA mysql_native_password BY 'password';", - "len": 80, - "last": 80, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USER", - "value": "USER", - "keyword": "USER", - "type": 1, - "flags": 33, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'user'@'hostname'", - "value": "user@hostname", - "keyword": null, - "type": 8, - "flags": 4, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IDENTIFIED VIA", - "value": "IDENTIFIED VIA", - "keyword": "IDENTIFIED VIA", - "type": 1, - "flags": 23, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mysql_native_password", - "value": "mysql_native_password", - "keyword": null, - "type": 0, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BY", - "value": "BY", - "keyword": "BY", - "type": 1, - "flags": 3, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'password'", - "value": "password", - "keyword": null, - "type": 7, - "flags": 1, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 15, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser5_mariadb_100400.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser5_mariadb_100400.in deleted file mode 100644 index 64dacdcd..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser5_mariadb_100400.in +++ /dev/null @@ -1 +0,0 @@ -CREATE USER 'user'@'hostname' IDENTIFIED VIA mysql_native_password BY 'password'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser5_mariadb_100400.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser5_mariadb_100400.out deleted file mode 100644 index 7cc7c32c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexSymbolUser5_mariadb_100400.out +++ /dev/null @@ -1,160 +0,0 @@ -{ - "query": "CREATE USER 'user'@'hostname' IDENTIFIED VIA mysql_native_password BY 'password';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE USER 'user'@'hostname' IDENTIFIED VIA mysql_native_password BY 'password';", - "len": 81, - "last": 81, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USER", - "value": "USER", - "keyword": "USER", - "type": 1, - "flags": 33, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'user'@'hostname'", - "value": "user@hostname", - "keyword": null, - "type": 8, - "flags": 4, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IDENTIFIED VIA", - "value": "IDENTIFIED VIA", - "keyword": "IDENTIFIED VIA", - "type": 1, - "flags": 23, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mysql_native_password", - "value": "mysql_native_password", - "keyword": null, - "type": 0, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BY", - "value": "BY", - "keyword": "BY", - "type": 1, - "flags": 3, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'password'", - "value": "password", - "keyword": null, - "type": 7, - "flags": 1, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 15, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexUtf8.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexUtf8.in deleted file mode 100644 index 9cf478e7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexUtf8.in +++ /dev/null @@ -1 +0,0 @@ -select * from école \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexUtf8.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexUtf8.out deleted file mode 100644 index e449ffe6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexUtf8.out +++ /dev/null @@ -1,104 +0,0 @@ -{ - "query": "select * from école", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": { - "@type": "PhpMyAdmin\\SqlParser\\UtfString", - "str": "select * from école", - "byteIdx": 19, - "charIdx": 18, - "byteLen": 20, - "charLen": 19 - }, - "len": 19, - "last": 19, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "from", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "école", - "value": "école", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 8, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexWhitespace.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexWhitespace.in deleted file mode 100644 index a66a8145..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexWhitespace.in +++ /dev/null @@ -1,10 +0,0 @@ - - - -SELECT - 'w h i t e s p a c e' - - - - - \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexWhitespace.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexWhitespace.out deleted file mode 100644 index c56eaeff..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexWhitespace.out +++ /dev/null @@ -1,79 +0,0 @@ -{ - "query": "\n\n\nSELECT \n\t\t'w h i t e\t\ts p a c e'\n\n\t\t\n\t\t\t\n \n ", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "\n\n\nSELECT \n\t\t'w h i t e\t\ts p a c e'\n\n\t\t\n\t\t\t\n \n ", - "len": 79, - "last": 79, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 3 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " \n\t\t", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'w h i t e\t\ts p a c e'", - "value": "w h i t e\t\ts p a c e", - "keyword": null, - "type": 7, - "flags": 1, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n\t\t\n\t\t\t\n \n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 6, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexWildcardThenComment.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexWildcardThenComment.in deleted file mode 100644 index 1f9e06b2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexWildcardThenComment.in +++ /dev/null @@ -1,33 +0,0 @@ -SELECT */* comment */ - -SELECT /* comment */* - -SELECT 2*/* comment */3 - -SELECT 2/* comment */*3 - -SELECT */* -comment -on -multiple -lines -*/FROM - -DELETE foo.*/* foo */ USING - -DELETE foo.*/* foo */,bar.*/*bar*/ USING - -SELECT `*`/*with comment*/ AS star_field - -SELECT `*`,*/*with comment*/ - -DELETE a.*/*multi -line /* with C open tag -comment inside */ USING - -SELECT 2*/* operator */3 + 3/* operator */*2,/* start wildcard */*/* end wildcard */ - -SELECT `*`/*a*/*/*b*/`*` - --- invalid queries -/* SELECT */* \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexWildcardThenComment.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexWildcardThenComment.out deleted file mode 100644 index 444df99a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/lexer/lexWildcardThenComment.out +++ /dev/null @@ -1,1006 +0,0 @@ -{ - "query": "SELECT */* comment */\n\nSELECT /* comment */*\n\nSELECT 2*/* comment */3\n\nSELECT 2/* comment */*3\n\nSELECT */*\ncomment\non\nmultiple\nlines\n*/FROM\n\nDELETE foo.*/* foo */ USING\n\nDELETE foo.*/* foo */,bar.*/*bar*/ USING\n\nSELECT `*`/*with comment*/ AS star_field\n\nSELECT `*`,*/*with comment*/\n\nDELETE a.*/*multi\nline /* with C open tag\ncomment inside */ USING\n\nSELECT 2*/* operator */3 + 3/* operator */*2,/* start wildcard */*/* end wildcard */\n\nSELECT `*`/*a*/*/*b*/`*`\n\n-- invalid queries\n/* SELECT */*", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT */* comment */\n\nSELECT /* comment */*\n\nSELECT 2*/* comment */3\n\nSELECT 2/* comment */*3\n\nSELECT */*\ncomment\non\nmultiple\nlines\n*/FROM\n\nDELETE foo.*/* foo */ USING\n\nDELETE foo.*/* foo */,bar.*/*bar*/ USING\n\nSELECT `*`/*with comment*/ AS star_field\n\nSELECT `*`,*/*with comment*/\n\nDELETE a.*/*multi\nline /* with C open tag\ncomment inside */ USING\n\nSELECT 2*/* operator */3 + 3/* operator */*2,/* start wildcard */*/* end wildcard */\n\nSELECT `*`/*a*/*/*b*/`*`\n\n-- invalid queries\n/* SELECT */*", - "len": 495, - "last": 495, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/*\ncomment\non\nmultiple\nlines\n*/", - "value": "/*\ncomment\non\nmultiple\nlines\n*/", - "keyword": null, - "type": 4, - "flags": 2, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 147 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* foo */", - "value": "/* foo */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 153 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 162 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 163 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 168 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 170 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 176 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 180 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 181 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* foo */", - "value": "/* foo */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 182 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 191 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "bar", - "value": "bar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 192 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 195 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 196 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/*bar*/", - "value": "/*bar*/", - "keyword": null, - "type": 4, - "flags": 2, - "position": 197 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 204 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 205 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 210 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 212 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 218 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`*`", - "value": "*", - "keyword": null, - "type": 8, - "flags": 2, - "position": 219 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/*with comment*/", - "value": "/*with comment*/", - "keyword": null, - "type": 4, - "flags": 2, - "position": 222 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 238 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 239 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 241 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "star_field", - "value": "star_field", - "keyword": null, - "type": 0, - "flags": 0, - "position": 242 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 252 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 254 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 260 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`*`", - "value": "*", - "keyword": null, - "type": 8, - "flags": 2, - "position": 261 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 264 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 265 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/*with comment*/", - "value": "/*with comment*/", - "keyword": null, - "type": 4, - "flags": 2, - "position": 266 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 282 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 284 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 290 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 291 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 292 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 293 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/*multi\nline /* with C open tag\ncomment inside */", - "value": "/*multi\nline /* with C open tag\ncomment inside */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 294 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 343 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 344 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 349 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 351 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 357 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 358 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 359 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* operator */", - "value": "/* operator */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 360 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 374 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 375 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+", - "value": "+", - "keyword": null, - "type": 2, - "flags": 1, - "position": 376 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 377 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 378 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* operator */", - "value": "/* operator */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 379 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 393 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 394 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 395 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* start wildcard */", - "value": "/* start wildcard */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 396 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 416 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* end wildcard */", - "value": "/* end wildcard */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 417 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 435 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 437 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 443 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`*`", - "value": "*", - "keyword": null, - "type": 8, - "flags": 2, - "position": 444 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/*a*/", - "value": "/*a*/", - "keyword": null, - "type": 4, - "flags": 2, - "position": 447 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 452 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/*b*/", - "value": "/*b*/", - "keyword": null, - "type": 4, - "flags": 2, - "position": 453 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`*`", - "value": "*", - "keyword": null, - "type": 8, - "flags": 2, - "position": 458 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 461 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- invalid queries", - "value": "-- invalid queries", - "keyword": null, - "type": 4, - "flags": 4, - "position": 463 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 481 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* SELECT */", - "value": "/* SELECT */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 482 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 494 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 109, - "idx": 0 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": null, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/misc/parseParameter.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/misc/parseParameter.in deleted file mode 100644 index 0a343822..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/misc/parseParameter.in +++ /dev/null @@ -1 +0,0 @@ -INSERT INTO `person` (`firstname`, `lastname`, `email`) VALUES (:firstname, :lastname, :email); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/misc/parseParameter.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/misc/parseParameter.out deleted file mode 100644 index 3c2ac070..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/misc/parseParameter.out +++ /dev/null @@ -1,347 +0,0 @@ -{ - "query": "INSERT INTO `person` (`firstname`, `lastname`, `email`) VALUES (:firstname, :lastname, :email);", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "INSERT INTO `person` (`firstname`, `lastname`, `email`) VALUES (:firstname, :lastname, :email);", - "len": 95, - "last": 95, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`person`", - "value": "person", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`firstname`", - "value": "firstname", - "keyword": null, - "type": 8, - "flags": 2, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`lastname`", - "value": "lastname", - "keyword": null, - "type": 8, - "flags": 2, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`email`", - "value": "email", - "keyword": null, - "type": 8, - "flags": 2, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ":firstname", - "value": "firstname", - "keyword": null, - "type": 8, - "flags": 16, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ":lastname", - "value": "lastname", - "keyword": null, - "type": 8, - "flags": 16, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ":email", - "value": "email", - "keyword": null, - "type": 8, - "flags": 16, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 29, - "idx": 29 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "person", - "column": null, - "expr": "`person`", - "alias": null, - "function": null, - "subquery": null - }, - "columns": [ - "firstname", - "lastname", - "email" - ], - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - ":firstname", - ":lastname", - ":email" - ], - "values": [ - "firstname", - "lastname", - "email" - ] - } - ], - "set": null, - "select": null, - "with": null, - "onDuplicateSet": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 26 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/misc/parseParameter2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/misc/parseParameter2.in deleted file mode 100644 index 09efa6b0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/misc/parseParameter2.in +++ /dev/null @@ -1 +0,0 @@ -INSERT INTO `person` (`firstname`, `lastname`, `email`) VALUES (?, ?, ?); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/misc/parseParameter2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/misc/parseParameter2.out deleted file mode 100644 index eaf30993..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/misc/parseParameter2.out +++ /dev/null @@ -1,347 +0,0 @@ -{ - "query": "INSERT INTO `person` (`firstname`, `lastname`, `email`) VALUES (?, ?, ?);", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "INSERT INTO `person` (`firstname`, `lastname`, `email`) VALUES (?, ?, ?);", - "len": 73, - "last": 73, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`person`", - "value": "person", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`firstname`", - "value": "firstname", - "keyword": null, - "type": 8, - "flags": 2, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`lastname`", - "value": "lastname", - "keyword": null, - "type": 8, - "flags": 2, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`email`", - "value": "email", - "keyword": null, - "type": 8, - "flags": 2, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "?", - "value": "?", - "keyword": null, - "type": 8, - "flags": 16, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "?", - "value": "?", - "keyword": null, - "type": 8, - "flags": 16, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "?", - "value": "?", - "keyword": null, - "type": 8, - "flags": 16, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 29, - "idx": 29 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "person", - "column": null, - "expr": "`person`", - "alias": null, - "function": null, - "subquery": null - }, - "columns": [ - "firstname", - "lastname", - "email" - ], - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "?", - "?", - "?" - ], - "values": [ - "?", - "?", - "?" - ] - } - ], - "set": null, - "select": null, - "with": null, - "onDuplicateSet": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 26 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parse.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parse.in deleted file mode 100644 index 027b7d63..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parse.in +++ /dev/null @@ -1 +0,0 @@ -SELECT 1; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parse.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parse.out deleted file mode 100644 index efc53b0e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parse.out +++ /dev/null @@ -1,115 +0,0 @@ -{ - "query": "SELECT 1;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT 1;", - "len": 9, - "last": 9, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 5, - "idx": 5 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 2 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parse2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parse2.in deleted file mode 100644 index bc7e42ec..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parse2.in +++ /dev/null @@ -1 +0,0 @@ -(SELECT 1);((SELECT 2)); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parse2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parse2.out deleted file mode 100644 index 7ea339be..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parse2.out +++ /dev/null @@ -1,240 +0,0 @@ -{ - "query": "(SELECT 1);((SELECT 2));", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "(SELECT 1);((SELECT 2));", - "len": 24, - "last": 24, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 1 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 15, - "idx": 15 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "2", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 5, - "last": 12 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter.in deleted file mode 100644 index 6e2afe88..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter.in +++ /dev/null @@ -1,3 +0,0 @@ -ALTER TABLE `actor` - ADD PRIMARY KEY (`actor_id`), - ADD KEY `idx_actor_last_name` (`last_name`); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter.out deleted file mode 100644 index eb62eb84..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter.out +++ /dev/null @@ -1,371 +0,0 @@ -{ - "query": "ALTER TABLE `actor`\n ADD PRIMARY KEY (`actor_id`),\n ADD KEY `idx_actor_last_name` (`last_name`);", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE `actor`\n ADD PRIMARY KEY (`actor_id`),\n ADD KEY `idx_actor_last_name` (`last_name`);", - "len": 102, - "last": 102, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`actor`", - "value": "actor", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ADD", - "value": "ADD", - "keyword": "ADD", - "type": 1, - "flags": 3, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PRIMARY KEY", - "value": "PRIMARY KEY", - "keyword": "PRIMARY KEY", - "type": 1, - "flags": 23, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`actor_id`", - "value": "actor_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ADD", - "value": "ADD", - "keyword": "ADD", - "type": 1, - "flags": 3, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KEY", - "value": "KEY", - "keyword": "KEY", - "type": 1, - "flags": 19, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`idx_actor_last_name`", - "value": "idx_actor_last_name", - "keyword": null, - "type": 8, - "flags": 2, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`last_name`", - "value": "last_name", - "keyword": null, - "type": 8, - "flags": 2, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 26, - "idx": 26 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "actor", - "column": null, - "expr": "`actor`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ADD", - "2": "PRIMARY KEY" - } - }, - "field": null, - "partitions": null, - "unknown": [ - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - } - ] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ADD", - "2": { - "name": "KEY", - "equals": false, - "expr": "`idx_actor_last_name`", - "value": "idx_actor_last_name" - } - } - }, - "field": null, - "partitions": null, - "unknown": [ - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 24 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter10.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter10.in deleted file mode 100644 index 69c2f607..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter10.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE `database`.`table` MODIFY `field` INT(11) AUTO_INCREMENT PRIMARY KEY; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter10.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter10.out deleted file mode 100644 index a86ec2c2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter10.out +++ /dev/null @@ -1,316 +0,0 @@ -{ - "query": "ALTER TABLE `database`.`table` MODIFY `field` INT(11) AUTO_INCREMENT PRIMARY KEY;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE `database`.`table` MODIFY `field` INT(11) AUTO_INCREMENT PRIMARY KEY;", - "len": 81, - "last": 81, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`database`", - "value": "database", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`table`", - "value": "table", - "keyword": null, - "type": 8, - "flags": 2, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MODIFY", - "value": "MODIFY", - "keyword": "MODIFY", - "type": 1, - "flags": 1, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`field`", - "value": "field", - "keyword": null, - "type": 8, - "flags": 2, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "11", - "value": 11, - "keyword": null, - "type": 6, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AUTO_INCREMENT", - "value": "AUTO_INCREMENT", - "keyword": "AUTO_INCREMENT", - "type": 1, - "flags": 1, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PRIMARY KEY", - "value": "PRIMARY KEY", - "keyword": "PRIMARY KEY", - "type": 1, - "flags": 23, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 22, - "idx": 22 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "database", - "table": "table", - "column": null, - "expr": "`database`.`table`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "MODIFY" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "field", - "expr": "`field`", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 20 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter11.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter11.in deleted file mode 100644 index 2af686e6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter11.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE `actor` ADD `last_update2` SET ('value1','value2','value3') NOT NULL AFTER last_update \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter11.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter11.out deleted file mode 100644 index 36006054..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter11.out +++ /dev/null @@ -1,346 +0,0 @@ -{ - "query": "ALTER TABLE `actor` ADD `last_update2` SET ('value1','value2','value3') NOT NULL AFTER last_update", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE `actor` ADD `last_update2` SET ('value1','value2','value3') NOT NULL AFTER last_update", - "len": 98, - "last": 98, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`actor`", - "value": "actor", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ADD", - "value": "ADD", - "keyword": "ADD", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`last_update2`", - "value": "last_update2", - "keyword": null, - "type": 8, - "flags": 2, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'value1'", - "value": "value1", - "keyword": null, - "type": 7, - "flags": 1, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'value2'", - "value": "value2", - "keyword": null, - "type": 7, - "flags": 1, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'value3'", - "value": "value3", - "keyword": null, - "type": 7, - "flags": 1, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AFTER", - "value": "AFTER", - "keyword": "AFTER", - "type": 1, - "flags": 1, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "last_update", - "value": "last_update", - "keyword": null, - "type": 0, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 26, - "idx": 26 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "actor", - "column": null, - "expr": "`actor`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ADD" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "last_update2", - "expr": "`last_update2`", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@12" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 25 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter12.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter12.in deleted file mode 100644 index 8e3adead..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter12.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE actor ALTER last_update2 SET DEFAULT 'value1'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter12.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter12.out deleted file mode 100644 index f7490ac9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter12.out +++ /dev/null @@ -1,250 +0,0 @@ -{ - "query": "ALTER TABLE actor ALTER last_update2 SET DEFAULT 'value1';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE actor ALTER last_update2 SET DEFAULT 'value1';", - "len": 58, - "last": 58, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "actor", - "value": "actor", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "last_update2", - "value": "last_update2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'value1'", - "value": "value1", - "keyword": null, - "type": 7, - "flags": 1, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 17, - "idx": 17 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "actor", - "column": null, - "expr": "actor", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ALTER" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "last_update2", - "expr": "last_update2", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@12" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 15 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter13.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter13.in deleted file mode 100644 index c995c736..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter13.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE `actor` ADD `last_update2` SET ('value1','value2','value3') \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter13.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter13.out deleted file mode 100644 index c61d2f9e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter13.out +++ /dev/null @@ -1,277 +0,0 @@ -{ - "query": "ALTER TABLE `actor` ADD `last_update2` SET ('value1','value2','value3')", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE `actor` ADD `last_update2` SET ('value1','value2','value3')", - "len": 71, - "last": 71, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`actor`", - "value": "actor", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ADD", - "value": "ADD", - "keyword": "ADD", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`last_update2`", - "value": "last_update2", - "keyword": null, - "type": 8, - "flags": 2, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'value1'", - "value": "value1", - "keyword": null, - "type": 7, - "flags": 1, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'value2'", - "value": "value2", - "keyword": null, - "type": 7, - "flags": 1, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'value3'", - "value": "value3", - "keyword": null, - "type": 7, - "flags": 1, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 20, - "idx": 21 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "actor", - "column": null, - "expr": "`actor`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ADD" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "last_update2", - "expr": "`last_update2`", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@12" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 20 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter14.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter14.in deleted file mode 100644 index 8351f81a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter14.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE `table` ADD UNIQUE KEY `functional_index` (`field1`,`field2`, (IFNULL(`field3`,0))); diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter14.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter14.out deleted file mode 100644 index a8eb1149..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter14.out +++ /dev/null @@ -1,412 +0,0 @@ -{ - "query": "ALTER TABLE `table` ADD UNIQUE KEY `functional_index` (`field1`,`field2`, (IFNULL(`field3`,0)));\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE `table` ADD UNIQUE KEY `functional_index` (`field1`,`field2`, (IFNULL(`field3`,0)));\n", - "len": 97, - "last": 97, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`table`", - "value": "table", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ADD", - "value": "ADD", - "keyword": "ADD", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNIQUE KEY", - "value": "UNIQUE KEY", - "keyword": "UNIQUE KEY", - "type": 1, - "flags": 23, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`functional_index`", - "value": "functional_index", - "keyword": null, - "type": 8, - "flags": 2, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`field1`", - "value": "field1", - "keyword": null, - "type": 8, - "flags": 2, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`field2`", - "value": "field2", - "keyword": null, - "type": 8, - "flags": 2, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IFNULL", - "value": "IFNULL", - "keyword": "IFNULL", - "type": 1, - "flags": 33, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`field3`", - "value": "field3", - "keyword": null, - "type": 8, - "flags": 2, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 30, - "idx": 30 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table", - "column": null, - "expr": "`table`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ADD" - } - }, - "field": null, - "partitions": null, - "unknown": [ - { - "@type": "@10" - }, - { - "@type": "@11" - }, - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - }, - { - "@type": "@27" - }, - { - "@type": "@28" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 27 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter2.in deleted file mode 100644 index cdfc9480..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter2.in +++ /dev/null @@ -1,2 +0,0 @@ -ALTER /* */ TABLE /* */ table -CONVERT /* */ TO /* */ CHARACTER /* */ SET /* */ utf8; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter2.out deleted file mode 100644 index c640d6b6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter2.out +++ /dev/null @@ -1,357 +0,0 @@ -{ - "query": "ALTER /* */ TABLE /* */ table\nCONVERT /* */ TO /* */ CHARACTER /* */ SET /* */ utf8;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER /* */ TABLE /* */ table\nCONVERT /* */ TO /* */ CHARACTER /* */ SET /* */ utf8;", - "len": 84, - "last": 84, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* */", - "value": "/* */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* */", - "value": "/* */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CONVERT", - "value": "CONVERT", - "keyword": "CONVERT", - "type": 1, - "flags": 35, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* */", - "value": "/* */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* */", - "value": "/* */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHARACTER", - "value": "CHARACTER", - "keyword": "CHARACTER", - "type": 1, - "flags": 11, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* */", - "value": "/* */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* */", - "value": "/* */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8", - "value": "utf8", - "keyword": null, - "type": 0, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 29, - "idx": 29 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": null, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": { - "name": "TO", - "equals": false, - "expr": "CHARACTER", - "value": "CHARACTER" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE", - "14": "TABLE" - } - }, - "first": 0, - "last": 27 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "This option conflicts with \"TABLE\".", - { - "@type": "@10" - }, - 0 - ], - [ - "A new statement was found, but no delimiter between it and the previous one.", - { - "@type": "@24" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter3.in deleted file mode 100644 index eebf6970..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter3.in +++ /dev/null @@ -1,3 +0,0 @@ -ALTER TABLE `tbl` CHANGE `uid` `uid` INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT - -ALTER TABLE `tbl` CHANGE `field_1` `field_2` INT( 10 ) UNSIGNED NOT NULL \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter3.out deleted file mode 100644 index e7bf7ed7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter3.out +++ /dev/null @@ -1,579 +0,0 @@ -{ - "query": "ALTER TABLE `tbl` CHANGE `uid` `uid` INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT\n\nALTER TABLE `tbl` CHANGE `field_1` `field_2` INT( 10 ) UNSIGNED NOT NULL", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE `tbl` CHANGE `uid` `uid` INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT\n\nALTER TABLE `tbl` CHANGE `field_1` `field_2` INT( 10 ) UNSIGNED NOT NULL", - "len": 153, - "last": 153, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`tbl`", - "value": "tbl", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHANGE", - "value": "CHANGE", - "keyword": "CHANGE", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`uid`", - "value": "uid", - "keyword": null, - "type": 8, - "flags": 2, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`uid`", - "value": "uid", - "keyword": null, - "type": 8, - "flags": 2, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AUTO_INCREMENT", - "value": "AUTO_INCREMENT", - "keyword": "AUTO_INCREMENT", - "type": 1, - "flags": 1, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`tbl`", - "value": "tbl", - "keyword": null, - "type": 8, - "flags": 2, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHANGE", - "value": "CHANGE", - "keyword": "CHANGE", - "type": 1, - "flags": 3, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`field_1`", - "value": "field_1", - "keyword": null, - "type": 8, - "flags": 2, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`field_2`", - "value": "field_2", - "keyword": null, - "type": 8, - "flags": 2, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 134 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 144 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 48, - "idx": 48 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "tbl", - "column": null, - "expr": "`tbl`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "CHANGE" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "uid", - "expr": "`uid`", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 47 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "A new statement was found, but no delimiter between it and the previous one.", - { - "@type": "@27" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter4.in deleted file mode 100644 index 47d67df7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter4.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE my_table COMMENT='Comment of table'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter4.out deleted file mode 100644 index 03d7b361..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter4.out +++ /dev/null @@ -1,188 +0,0 @@ -{ - "query": "ALTER TABLE my_table COMMENT='Comment of table';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE my_table COMMENT='Comment of table';", - "len": 48, - "last": 48, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_table", - "value": "my_table", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Comment of table'", - "value": "Comment of table", - "keyword": null, - "type": 7, - "flags": 1, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 11, - "idx": 11 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_table", - "column": null, - "expr": "my_table", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "COMMENT", - "equals": true, - "expr": "'Comment of table'", - "value": "Comment of table" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 9 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter5.in deleted file mode 100644 index 4205f972..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter5.in +++ /dev/null @@ -1 +0,0 @@ -ALTER DATABASE `abc` CHARACTER SET = 'utf8' \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter5.out deleted file mode 100644 index c72384a0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter5.out +++ /dev/null @@ -1,197 +0,0 @@ -{ - "query": "ALTER DATABASE `abc` CHARACTER SET = 'utf8'", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER DATABASE `abc` CHARACTER SET = 'utf8'", - "len": 43, - "last": 43, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DATABASE", - "value": "DATABASE", - "keyword": "DATABASE", - "type": 1, - "flags": 35, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`abc`", - "value": "abc", - "keyword": null, - "type": 8, - "flags": 2, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHARACTER SET", - "value": "CHARACTER SET", - "keyword": "CHARACTER SET", - "type": 1, - "flags": 7, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'utf8'", - "value": "utf8", - "keyword": null, - "type": 7, - "flags": 1, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 12, - "idx": 12 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "abc", - "column": null, - "expr": "`abc`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "CHARACTER SET", - "equals": true, - "expr": "'utf8'", - "value": "utf8" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "DATABASE" - } - }, - "first": 0, - "last": 11 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter6.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter6.in deleted file mode 100644 index aea7b9fe..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter6.in +++ /dev/null @@ -1 +0,0 @@ -ALTER VIEW `abc` AS SELECT `a` FROM `b` \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter6.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter6.out deleted file mode 100644 index 2be7476d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter6.out +++ /dev/null @@ -1,253 +0,0 @@ -{ - "query": "ALTER VIEW `abc` AS SELECT `a` FROM `b`", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER VIEW `abc` AS SELECT `a` FROM `b`", - "len": 39, - "last": 39, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VIEW", - "value": "VIEW", - "keyword": "VIEW", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`abc`", - "value": "abc", - "keyword": null, - "type": 8, - "flags": 2, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`a`", - "value": "a", - "keyword": null, - "type": 8, - "flags": 2, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`b`", - "value": "b", - "keyword": null, - "type": 8, - "flags": 2, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 16, - "idx": 16 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "abc", - "column": null, - "expr": "`abc`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "AS" - } - }, - "field": null, - "partitions": null, - "unknown": [ - { - "@type": "@9" - }, - { - "@type": "@10" - }, - { - "@type": "@11" - }, - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "VIEW" - } - }, - "first": 0, - "last": 15 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter7.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter7.in deleted file mode 100644 index 5921e763..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter7.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE `tbl` CHANGE `uid` `uid` INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT, CHANGE `field_1` `field_2` INT( 10 ) UNSIGNED NOT NULL \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter7.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter7.out deleted file mode 100644 index ad93c32c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter7.out +++ /dev/null @@ -1,595 +0,0 @@ -{ - "query": "ALTER TABLE `tbl` CHANGE `uid` `uid` INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT, CHANGE `field_1` `field_2` INT( 10 ) UNSIGNED NOT NULL", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE `tbl` CHANGE `uid` `uid` INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT, CHANGE `field_1` `field_2` INT( 10 ) UNSIGNED NOT NULL", - "len": 135, - "last": 135, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`tbl`", - "value": "tbl", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHANGE", - "value": "CHANGE", - "keyword": "CHANGE", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`uid`", - "value": "uid", - "keyword": null, - "type": 8, - "flags": 2, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`uid`", - "value": "uid", - "keyword": null, - "type": 8, - "flags": 2, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AUTO_INCREMENT", - "value": "AUTO_INCREMENT", - "keyword": "AUTO_INCREMENT", - "type": 1, - "flags": 1, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHANGE", - "value": "CHANGE", - "keyword": "CHANGE", - "type": 1, - "flags": 3, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`field_1`", - "value": "field_1", - "keyword": null, - "type": 8, - "flags": 2, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`field_2`", - "value": "field_2", - "keyword": null, - "type": 8, - "flags": 2, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 43, - "idx": 43 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "tbl", - "column": null, - "expr": "`tbl`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "CHANGE" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "uid", - "expr": "`uid`", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - } - ] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "CHANGE" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "field_1", - "expr": "`field_1`", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@32" - }, - { - "@type": "@33" - }, - { - "@type": "@34" - }, - { - "@type": "@35" - }, - { - "@type": "@36" - }, - { - "@type": "@37" - }, - { - "@type": "@38" - }, - { - "@type": "@39" - }, - { - "@type": "@40" - }, - { - "@type": "@41" - }, - { - "@type": "@42" - }, - { - "@type": "@43" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 42 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter8.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter8.in deleted file mode 100644 index 17b72cba..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter8.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE `api_tab_user` CHANGE `rank_id` `rank_id` INT(4) NOT NULL DEFAULT '4'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter8.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter8.out deleted file mode 100644 index fe1257aa..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter8.out +++ /dev/null @@ -1,346 +0,0 @@ -{ - "query": "ALTER TABLE `api_tab_user` CHANGE `rank_id` `rank_id` INT(4) NOT NULL DEFAULT '4';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE `api_tab_user` CHANGE `rank_id` `rank_id` INT(4) NOT NULL DEFAULT '4';", - "len": 82, - "last": 82, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`api_tab_user`", - "value": "api_tab_user", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHANGE", - "value": "CHANGE", - "keyword": "CHANGE", - "type": 1, - "flags": 3, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`rank_id`", - "value": "rank_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`rank_id`", - "value": "rank_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "4", - "value": 4, - "keyword": null, - "type": 6, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'4'", - "value": "4", - "keyword": null, - "type": 7, - "flags": 1, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 24, - "idx": 24 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "api_tab_user", - "column": null, - "expr": "`api_tab_user`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "CHANGE" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "rank_id", - "expr": "`rank_id`", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 22 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter9.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter9.in deleted file mode 100644 index 51e0cebc..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter9.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE place CHANGE COLUMN plc_location_type gplc_location_type ENUM('LOCATION') CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter9.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter9.out deleted file mode 100644 index 5dff87ae..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlter9.out +++ /dev/null @@ -1,413 +0,0 @@ -{ - "query": "ALTER TABLE place CHANGE COLUMN plc_location_type gplc_location_type ENUM('LOCATION') CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE place CHANGE COLUMN plc_location_type gplc_location_type ENUM('LOCATION') CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL;", - "len": 142, - "last": 142, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "place", - "value": "place", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHANGE", - "value": "CHANGE", - "keyword": "CHANGE", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLUMN", - "value": "COLUMN", - "keyword": "COLUMN", - "type": 1, - "flags": 3, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "plc_location_type", - "value": "plc_location_type", - "keyword": null, - "type": 0, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "gplc_location_type", - "value": "gplc_location_type", - "keyword": null, - "type": 0, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENUM", - "value": "ENUM", - "keyword": "ENUM", - "type": 1, - "flags": 9, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'LOCATION'", - "value": "LOCATION", - "keyword": null, - "type": 7, - "flags": 1, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHARACTER SET", - "value": "CHARACTER SET", - "keyword": "CHARACTER SET", - "type": 1, - "flags": 7, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'utf8'", - "value": "utf8", - "keyword": null, - "type": 7, - "flags": 1, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLLATE", - "value": "COLLATE", - "keyword": "COLLATE", - "type": 1, - "flags": 3, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'utf8_unicode_ci'", - "value": "utf8_unicode_ci", - "keyword": null, - "type": 7, - "flags": 1, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 30, - "idx": 30 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "place", - "column": null, - "expr": "place", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "CHANGE", - "2": "COLUMN" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "plc_location_type", - "expr": "plc_location_type", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - }, - { - "@type": "@27" - }, - { - "@type": "@28" - }, - { - "@type": "@29" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 28 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterErr.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterErr.in deleted file mode 100644 index 4652a170..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterErr.in +++ /dev/null @@ -1,2 +0,0 @@ --- missing comma between alter operations -ALTER TABLE `tbl` CHANGE `uid` `uid` INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT CHANGE `field_1` `field_2` INT( 10 ) UNSIGNED NOT NULL \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterErr.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterErr.out deleted file mode 100644 index c381a628..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterErr.out +++ /dev/null @@ -1,543 +0,0 @@ -{ - "query": "-- missing comma between alter operations\nALTER TABLE `tbl` CHANGE `uid` `uid` INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT CHANGE `field_1` `field_2` INT( 10 ) UNSIGNED NOT NULL", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "-- missing comma between alter operations\nALTER TABLE `tbl` CHANGE `uid` `uid` INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT CHANGE `field_1` `field_2` INT( 10 ) UNSIGNED NOT NULL", - "len": 176, - "last": 176, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- missing comma between alter operations", - "value": "-- missing comma between alter operations", - "keyword": null, - "type": 4, - "flags": 4, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`tbl`", - "value": "tbl", - "keyword": null, - "type": 8, - "flags": 2, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHANGE", - "value": "CHANGE", - "keyword": "CHANGE", - "type": 1, - "flags": 3, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`uid`", - "value": "uid", - "keyword": null, - "type": 8, - "flags": 2, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`uid`", - "value": "uid", - "keyword": null, - "type": 8, - "flags": 2, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AUTO_INCREMENT", - "value": "AUTO_INCREMENT", - "keyword": "AUTO_INCREMENT", - "type": 1, - "flags": 1, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHANGE", - "value": "CHANGE", - "keyword": "CHANGE", - "type": 1, - "flags": 3, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`field_1`", - "value": "field_1", - "keyword": null, - "type": 8, - "flags": 2, - "position": 129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`field_2`", - "value": "field_2", - "keyword": null, - "type": 8, - "flags": 2, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 153 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 154 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 159 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 168 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 44, - "idx": 44 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "tbl", - "column": null, - "expr": "`tbl`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "CHANGE" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "uid", - "expr": "`uid`", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - }, - { - "@type": "@27" - }, - { - "@type": "@28" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 43 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Missing comma before start of a new alter operation.", - { - "@type": "@29" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterErr2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterErr2.in deleted file mode 100644 index 5d5ab08f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterErr2.in +++ /dev/null @@ -1,2 +0,0 @@ --- missing comma between alter operations -ALTER TABLE tb_foo CHANGE inmsg inmsg date NULL AFTER outmsg2 CHANGE inmsg2 inmsg2 time NULL AFTER inmsg; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterErr2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterErr2.out deleted file mode 100644 index e2e6c0d1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterErr2.out +++ /dev/null @@ -1,474 +0,0 @@ -{ - "query": "-- missing comma between alter operations\nALTER TABLE tb_foo CHANGE inmsg inmsg date NULL AFTER outmsg2 CHANGE inmsg2 inmsg2 time NULL AFTER inmsg;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "-- missing comma between alter operations\nALTER TABLE tb_foo CHANGE inmsg inmsg date NULL AFTER outmsg2 CHANGE inmsg2 inmsg2 time NULL AFTER inmsg;\n", - "len": 148, - "last": 148, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- missing comma between alter operations", - "value": "-- missing comma between alter operations", - "keyword": null, - "type": 4, - "flags": 4, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tb_foo", - "value": "tb_foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHANGE", - "value": "CHANGE", - "keyword": "CHANGE", - "type": 1, - "flags": 3, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "inmsg", - "value": "inmsg", - "keyword": null, - "type": 0, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "inmsg", - "value": "inmsg", - "keyword": null, - "type": 0, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "date", - "value": "date", - "keyword": "DATE", - "type": 1, - "flags": 41, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AFTER", - "value": "AFTER", - "keyword": "AFTER", - "type": 1, - "flags": 1, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "outmsg2", - "value": "outmsg2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHANGE", - "value": "CHANGE", - "keyword": "CHANGE", - "type": 1, - "flags": 3, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "inmsg2", - "value": "inmsg2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "inmsg2", - "value": "inmsg2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "time", - "value": "time", - "keyword": "TIME", - "type": 1, - "flags": 41, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 134 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AFTER", - "value": "AFTER", - "keyword": "AFTER", - "type": 1, - "flags": 1, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "inmsg", - "value": "inmsg", - "keyword": null, - "type": 0, - "flags": 0, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 147 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 38, - "idx": 38 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "tb_foo", - "column": null, - "expr": "tb_foo", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "CHANGE" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "inmsg", - "expr": "inmsg", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 35 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Missing comma before start of a new alter operation.", - { - "@type": "@24" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterErr3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterErr3.in deleted file mode 100644 index 63ae92f0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterErr3.in +++ /dev/null @@ -1,2 +0,0 @@ --- missing comma between alter operations -ALTER TABLE `database`.`table` MODIFY `field` INT(11) AUTO_INCREMENT PRIMARY KEY; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterErr3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterErr3.out deleted file mode 100644 index 62b303c0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterErr3.out +++ /dev/null @@ -1,343 +0,0 @@ -{ - "query": "-- missing comma between alter operations\nALTER TABLE `database`.`table` MODIFY `field` INT(11) AUTO_INCREMENT PRIMARY KEY;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "-- missing comma between alter operations\nALTER TABLE `database`.`table` MODIFY `field` INT(11) AUTO_INCREMENT PRIMARY KEY;\n", - "len": 124, - "last": 124, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- missing comma between alter operations", - "value": "-- missing comma between alter operations", - "keyword": null, - "type": 4, - "flags": 4, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`database`", - "value": "database", - "keyword": null, - "type": 8, - "flags": 2, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`table`", - "value": "table", - "keyword": null, - "type": 8, - "flags": 2, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MODIFY", - "value": "MODIFY", - "keyword": "MODIFY", - "type": 1, - "flags": 1, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`field`", - "value": "field", - "keyword": null, - "type": 8, - "flags": 2, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "11", - "value": 11, - "keyword": null, - "type": 6, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AUTO_INCREMENT", - "value": "AUTO_INCREMENT", - "keyword": "AUTO_INCREMENT", - "type": 1, - "flags": 1, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PRIMARY KEY", - "value": "PRIMARY KEY", - "keyword": "PRIMARY KEY", - "type": 1, - "flags": 23, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 25, - "idx": 25 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "database", - "table": "table", - "column": null, - "expr": "`database`.`table`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "MODIFY" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "field", - "expr": "`field`", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 22 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterErr4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterErr4.in deleted file mode 100644 index 7d5229b5..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterErr4.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE actor ALTER last_update2 SET DEFAULT value1'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterErr4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterErr4.out deleted file mode 100644 index 0c27169e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterErr4.out +++ /dev/null @@ -1,260 +0,0 @@ -{ - "query": "ALTER TABLE actor ALTER last_update2 SET DEFAULT value1';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE actor ALTER last_update2 SET DEFAULT value1';", - "len": 57, - "last": 58, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "actor", - "value": "actor", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "last_update2", - "value": "last_update2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "value1", - "value": "value1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "';", - "value": "", - "keyword": null, - "type": 7, - "flags": 1, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 17, - "idx": 17 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "actor", - "column": null, - "expr": "actor", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ALTER" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "last_update2", - "expr": "last_update2", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@12" - }, - { - "@type": "@17" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 16 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [ - [ - "Ending quote ' was expected.", - "", - 57, - 0 - ] - ], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent.in deleted file mode 100644 index 1cec3874..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent.in +++ /dev/null @@ -1 +0,0 @@ -ALTER EVENT my_event ENABLE; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent.out deleted file mode 100644 index 81b5b0ca..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent.out +++ /dev/null @@ -1,174 +0,0 @@ -{ - "query": "ALTER EVENT my_event ENABLE;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER EVENT my_event ENABLE;\n", - "len": 29, - "last": 29, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_event", - "value": "my_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENABLE", - "value": "ENABLE", - "keyword": "ENABLE", - "type": 1, - "flags": 1, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 10 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_event", - "column": null, - "expr": "my_event", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "8": "ENABLE" - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "EVENT" - } - }, - "first": 0, - "last": 7 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent2.in deleted file mode 100644 index b9eebc08..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent2.in +++ /dev/null @@ -1 +0,0 @@ -ALTER EVENT my_event DISABLE; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent2.out deleted file mode 100644 index 9e65ef51..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent2.out +++ /dev/null @@ -1,174 +0,0 @@ -{ - "query": "ALTER EVENT my_event DISABLE;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER EVENT my_event DISABLE;\n", - "len": 30, - "last": 30, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_event", - "value": "my_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DISABLE", - "value": "DISABLE", - "keyword": "DISABLE", - "type": 1, - "flags": 1, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 10 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_event", - "column": null, - "expr": "my_event", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "8": "DISABLE" - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "EVENT" - } - }, - "first": 0, - "last": 7 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent3.in deleted file mode 100644 index 3b755dab..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent3.in +++ /dev/null @@ -1 +0,0 @@ -ALTER EVENT my_event DISABLE ON SLAVE; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent3.out deleted file mode 100644 index f24055ad..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent3.out +++ /dev/null @@ -1,174 +0,0 @@ -{ - "query": "ALTER EVENT my_event DISABLE ON SLAVE;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER EVENT my_event DISABLE ON SLAVE;\n", - "len": 39, - "last": 39, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_event", - "value": "my_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DISABLE ON SLAVE", - "value": "DISABLE ON SLAVE", - "keyword": "DISABLE ON SLAVE", - "type": 1, - "flags": 7, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 10 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_event", - "column": null, - "expr": "my_event", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "8": "DISABLE ON SLAVE" - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "EVENT" - } - }, - "first": 0, - "last": 7 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent4.in deleted file mode 100644 index e43b9cad..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent4.in +++ /dev/null @@ -1 +0,0 @@ -ALTER EVENT my_event ON COMPLETION PRESERVE; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent4.out deleted file mode 100644 index b25e9a52..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent4.out +++ /dev/null @@ -1,174 +0,0 @@ -{ - "query": "ALTER EVENT my_event ON COMPLETION PRESERVE;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER EVENT my_event ON COMPLETION PRESERVE;\n", - "len": 45, - "last": 45, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_event", - "value": "my_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON COMPLETION PRESERVE", - "value": "ON COMPLETION PRESERVE", - "keyword": "ON COMPLETION PRESERVE", - "type": 1, - "flags": 7, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 10 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_event", - "column": null, - "expr": "my_event", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "5": "ON COMPLETION PRESERVE" - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "EVENT" - } - }, - "first": 0, - "last": 7 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent5.in deleted file mode 100644 index 81fc7484..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent5.in +++ /dev/null @@ -1 +0,0 @@ -ALTER EVENT my_event ON COMPLETION NOT PRESERVE; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent5.out deleted file mode 100644 index d7e08d08..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent5.out +++ /dev/null @@ -1,174 +0,0 @@ -{ - "query": "ALTER EVENT my_event ON COMPLETION NOT PRESERVE;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER EVENT my_event ON COMPLETION NOT PRESERVE;\n", - "len": 49, - "last": 49, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_event", - "value": "my_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON COMPLETION NOT PRESERVE", - "value": "ON COMPLETION NOT PRESERVE", - "keyword": "ON COMPLETION NOT PRESERVE", - "type": 1, - "flags": 7, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 10 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_event", - "column": null, - "expr": "my_event", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "5": "ON COMPLETION NOT PRESERVE" - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "EVENT" - } - }, - "first": 0, - "last": 7 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent6.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent6.in deleted file mode 100644 index 63cf85f5..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent6.in +++ /dev/null @@ -1 +0,0 @@ -ALTER EVENT my_event RENAME TO my_new_event; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent6.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent6.out deleted file mode 100644 index 573e7c92..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent6.out +++ /dev/null @@ -1,225 +0,0 @@ -{ - "query": "ALTER EVENT my_event RENAME TO my_new_event;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER EVENT my_event RENAME TO my_new_event;\n", - "len": 45, - "last": 45, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_event", - "value": "my_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RENAME", - "value": "RENAME", - "keyword": "RENAME", - "type": 1, - "flags": 3, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_new_event", - "value": "my_new_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 14, - "idx": 14 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_event", - "column": null, - "expr": "my_event", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "RENAME", - "7": { - "name": "TO", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_new_event", - "column": null, - "expr": "my_new_event", - "alias": null, - "function": null, - "subquery": null - }, - "value": "my_new_event" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "EVENT" - } - }, - "first": 0, - "last": 11 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent7.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent7.in deleted file mode 100644 index bf03f1f6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent7.in +++ /dev/null @@ -1 +0,0 @@ -ALTER EVENT my_event COMMENT 'This is an event'; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent7.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent7.out deleted file mode 100644 index c62421b0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent7.out +++ /dev/null @@ -1,197 +0,0 @@ -{ - "query": "ALTER EVENT my_event COMMENT 'This is an event';\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER EVENT my_event COMMENT 'This is an event';\n", - "len": 49, - "last": 49, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_event", - "value": "my_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'This is an event'", - "value": "This is an event", - "keyword": null, - "type": 7, - "flags": 1, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 12, - "idx": 12 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_event", - "column": null, - "expr": "my_event", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "9": { - "name": "COMMENT", - "equals": false, - "expr": "'This is an event'", - "value": "This is an event" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "EVENT" - } - }, - "first": 0, - "last": 9 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent8.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent8.in deleted file mode 100644 index 021d5ffb..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent8.in +++ /dev/null @@ -1,2 +0,0 @@ -ALTER EVENT my_event DO - SELECT * FROM my_table; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent8.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent8.out deleted file mode 100644 index e0407e29..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent8.out +++ /dev/null @@ -1,271 +0,0 @@ -{ - "query": "ALTER EVENT my_event DO\n SELECT * FROM my_table;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER EVENT my_event DO\n SELECT * FROM my_table;\n", - "len": 50, - "last": 50, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_event", - "value": "my_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DO", - "value": "DO", - "keyword": "DO", - "type": 1, - "flags": 1, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_table", - "value": "my_table", - "keyword": null, - "type": 0, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 18, - "idx": 18 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_event", - "column": null, - "expr": "my_event", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "10": "DO" - } - }, - "field": null, - "partitions": null, - "unknown": [ - { - "@type": "@9" - }, - { - "@type": "@10" - }, - { - "@type": "@11" - }, - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "EVENT" - } - }, - "first": 0, - "last": 15 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent9.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent9.in deleted file mode 100644 index c3313a2d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent9.in +++ /dev/null @@ -1,2 +0,0 @@ -ALTER EVENT old_db.old_event RENAME TO new_db.new_event; -ALTER EVENT `old_db`.`old_event` RENAME TO `new_db`.`new_event`; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent9.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent9.out deleted file mode 100644 index 82d66cf4..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEvent9.out +++ /dev/null @@ -1,478 +0,0 @@ -{ - "query": "ALTER EVENT old_db.old_event RENAME TO new_db.new_event;\nALTER EVENT `old_db`.`old_event` RENAME TO `new_db`.`new_event`;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER EVENT old_db.old_event RENAME TO new_db.new_event;\nALTER EVENT `old_db`.`old_event` RENAME TO `new_db`.`new_event`;\n", - "len": 122, - "last": 122, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "old_db", - "value": "old_db", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "old_event", - "value": "old_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RENAME", - "value": "RENAME", - "keyword": "RENAME", - "type": 1, - "flags": 3, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "new_db", - "value": "new_db", - "keyword": null, - "type": 0, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "new_event", - "value": "new_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`old_db`", - "value": "old_db", - "keyword": null, - "type": 8, - "flags": 2, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`old_event`", - "value": "old_event", - "keyword": null, - "type": 8, - "flags": 2, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RENAME", - "value": "RENAME", - "keyword": "RENAME", - "type": 1, - "flags": 3, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`new_db`", - "value": "new_db", - "keyword": null, - "type": 8, - "flags": 2, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`new_event`", - "value": "new_event", - "keyword": null, - "type": 8, - "flags": 2, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 35, - "idx": 35 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "old_db", - "table": "old_event", - "column": null, - "expr": "old_db.old_event", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "RENAME", - "7": { - "name": "TO", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "new_db", - "table": "new_event", - "column": null, - "expr": "new_db.new_event", - "alias": null, - "function": null, - "subquery": null - }, - "value": "new_db.new_event" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "EVENT" - } - }, - "first": 0, - "last": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "old_db", - "table": "old_event", - "column": null, - "expr": "`old_db`.`old_event`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "RENAME", - "7": { - "name": "TO", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "new_db", - "table": "new_event", - "column": null, - "expr": "`new_db`.`new_event`", - "alias": null, - "function": null, - "subquery": null - }, - "value": "`new_db`.`new_event`" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "EVENT" - } - }, - "first": 16, - "last": 32 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventComplete.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventComplete.in deleted file mode 100644 index 447acc15..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventComplete.in +++ /dev/null @@ -1,11 +0,0 @@ -ALTER EVENT my_event - ON SCHEDULE - EVERY 2 WEEK - STARTS CURRENT_TIMESTAMP + INTERVAL 4 WEEK - ENDS '2099-12-30 23:12:01' + INTERVAL 1 DAY - ON COMPLETION NOT PRESERVE - RENAME TO my_complete_event - DISABLE - COMMENT 'String as a comment' - DO - SELECT * FROM my_table; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventComplete.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventComplete.out deleted file mode 100644 index d32c38f2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventComplete.out +++ /dev/null @@ -1,755 +0,0 @@ -{ - "query": "ALTER EVENT my_event\n ON SCHEDULE\n EVERY 2 WEEK\n STARTS CURRENT_TIMESTAMP + INTERVAL 4 WEEK\n ENDS '2099-12-30 23:12:01' + INTERVAL 1 DAY\n ON COMPLETION NOT PRESERVE\n RENAME TO my_complete_event\n DISABLE\n COMMENT 'String as a comment'\n DO\n SELECT * FROM my_table;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER EVENT my_event\n ON SCHEDULE\n EVERY 2 WEEK\n STARTS CURRENT_TIMESTAMP + INTERVAL 4 WEEK\n ENDS '2099-12-30 23:12:01' + INTERVAL 1 DAY\n ON COMPLETION NOT PRESERVE\n RENAME TO my_complete_event\n DISABLE\n COMMENT 'String as a comment'\n DO\n SELECT * FROM my_table;\n", - "len": 303, - "last": 303, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_event", - "value": "my_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON SCHEDULE", - "value": "ON SCHEDULE", - "keyword": "ON SCHEDULE", - "type": 1, - "flags": 7, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVERY", - "value": "EVERY", - "keyword": "EVERY", - "type": 1, - "flags": 1, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WEEK", - "value": "WEEK", - "keyword": "WEEK", - "type": 1, - "flags": 33, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "STARTS", - "value": "STARTS", - "keyword": "STARTS", - "type": 1, - "flags": 1, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CURRENT_TIMESTAMP", - "value": "CURRENT_TIMESTAMP", - "keyword": "CURRENT_TIMESTAMP", - "type": 1, - "flags": 35, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+", - "value": "+", - "keyword": null, - "type": 2, - "flags": 1, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTERVAL", - "value": "INTERVAL", - "keyword": "INTERVAL", - "type": 1, - "flags": 43, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "4", - "value": 4, - "keyword": null, - "type": 6, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WEEK", - "value": "WEEK", - "keyword": "WEEK", - "type": 1, - "flags": 33, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENDS", - "value": "ENDS", - "keyword": "ENDS", - "type": 1, - "flags": 1, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'2099-12-30 23:12:01'", - "value": "2099-12-30 23:12:01", - "keyword": null, - "type": 7, - "flags": 1, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 137 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+", - "value": "+", - "keyword": null, - "type": 2, - "flags": 1, - "position": 138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTERVAL", - "value": "INTERVAL", - "keyword": "INTERVAL", - "type": 1, - "flags": 43, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 150 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DAY", - "value": "DAY", - "keyword": "DAY", - "type": 1, - "flags": 33, - "position": 151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 154 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON COMPLETION NOT PRESERVE", - "value": "ON COMPLETION NOT PRESERVE", - "keyword": "ON COMPLETION NOT PRESERVE", - "type": 1, - "flags": 7, - "position": 159 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 185 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RENAME", - "value": "RENAME", - "keyword": "RENAME", - "type": 1, - "flags": 3, - "position": 190 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 196 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 197 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 199 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_complete_event", - "value": "my_complete_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 200 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 217 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DISABLE", - "value": "DISABLE", - "keyword": "DISABLE", - "type": 1, - "flags": 1, - "position": 222 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 229 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 234 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 241 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'String as a comment'", - "value": "String as a comment", - "keyword": null, - "type": 7, - "flags": 1, - "position": 242 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 263 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DO", - "value": "DO", - "keyword": "DO", - "type": 1, - "flags": 1, - "position": 268 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 270 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 279 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 285 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 286 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 287 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 288 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 292 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_table", - "value": "my_table", - "keyword": null, - "type": 0, - "flags": 0, - "position": 293 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 301 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 302 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 64, - "idx": 64 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_event", - "column": null, - "expr": "my_event", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ON SCHEDULE", - "2": { - "name": "EVERY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "2 WEEK", - "alias": null, - "function": null, - "subquery": null - }, - "value": "2 WEEK" - }, - "3": { - "name": "STARTS", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "CURRENT_TIMESTAMP + INTERVAL 4 WEEK", - "alias": null, - "function": null, - "subquery": null - }, - "value": "CURRENT_TIMESTAMP + INTERVAL 4 WEEK" - }, - "4": { - "name": "ENDS", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "2099-12-30 23:12:01", - "expr": "'2099-12-30 23:12:01'+ INTERVAL 1 DAY", - "alias": null, - "function": null, - "subquery": null - }, - "value": "'2099-12-30 23:12:01'+ INTERVAL 1 DAY" - }, - "5": "ON COMPLETION NOT PRESERVE", - "6": "RENAME", - "7": { - "name": "TO", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_complete_event", - "column": null, - "expr": "my_complete_event", - "alias": null, - "function": null, - "subquery": null - }, - "value": "my_complete_event" - }, - "8": "DISABLE", - "9": { - "name": "COMMENT", - "equals": false, - "expr": "'String as a comment'", - "value": "String as a comment" - }, - "10": "DO" - } - }, - "field": null, - "partitions": null, - "unknown": [ - { - "@type": "@55" - }, - { - "@type": "@56" - }, - { - "@type": "@57" - }, - { - "@type": "@58" - }, - { - "@type": "@59" - }, - { - "@type": "@60" - }, - { - "@type": "@61" - }, - { - "@type": "@62" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "EVENT" - } - }, - "first": 0, - "last": 61 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventErr.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventErr.in deleted file mode 100644 index 126d4f0f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventErr.in +++ /dev/null @@ -1,2 +0,0 @@ --- No option in ALTER EVENT. -ALTER EVENT my_event; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventErr.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventErr.out deleted file mode 100644 index 21730211..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventErr.out +++ /dev/null @@ -1,147 +0,0 @@ -{ - "query": "-- No option in ALTER EVENT.\nALTER EVENT my_event;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "-- No option in ALTER EVENT.\nALTER EVENT my_event;\n", - "len": 51, - "last": 51, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- No option in ALTER EVENT.", - "value": "-- No option in ALTER EVENT.", - "keyword": null, - "type": 4, - "flags": 4, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_event", - "value": "my_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 10 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_event", - "column": null, - "expr": "my_event", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "EVENT" - } - }, - "first": 0, - "last": 7 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleAt.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleAt.in deleted file mode 100644 index 752dec98..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleAt.in +++ /dev/null @@ -1,2 +0,0 @@ -ALTER EVENT my_event ON SCHEDULE - AT '2023-01-01 01:23:45'; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleAt.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleAt.out deleted file mode 100644 index 09d519a4..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleAt.out +++ /dev/null @@ -1,225 +0,0 @@ -{ - "query": "ALTER EVENT my_event ON SCHEDULE\n AT '2023-01-01 01:23:45';\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER EVENT my_event ON SCHEDULE\n AT '2023-01-01 01:23:45';\n", - "len": 61, - "last": 61, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_event", - "value": "my_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON SCHEDULE", - "value": "ON SCHEDULE", - "keyword": "ON SCHEDULE", - "type": 1, - "flags": 7, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AT", - "value": "AT", - "keyword": "AT", - "type": 1, - "flags": 1, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'2023-01-01 01:23:45'", - "value": "2023-01-01 01:23:45", - "keyword": null, - "type": 7, - "flags": 1, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 14, - "idx": 14 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_event", - "column": null, - "expr": "my_event", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ON SCHEDULE", - "2": { - "name": "AT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "2023-01-01 01:23:45", - "expr": "'2023-01-01 01:23:45'", - "alias": null, - "function": null, - "subquery": null - }, - "value": "'2023-01-01 01:23:45'" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "EVENT" - } - }, - "first": 0, - "last": 11 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleAt2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleAt2.in deleted file mode 100644 index a2cc06cb..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleAt2.in +++ /dev/null @@ -1,2 +0,0 @@ -ALTER EVENT my_event ON SCHEDULE - AT '2023-01-01 01:23:45' + INTERVAL 1 DAY; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleAt2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleAt2.out deleted file mode 100644 index a98a1f38..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleAt2.out +++ /dev/null @@ -1,297 +0,0 @@ -{ - "query": "ALTER EVENT my_event ON SCHEDULE\n AT '2023-01-01 01:23:45' + INTERVAL 1 DAY;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER EVENT my_event ON SCHEDULE\n AT '2023-01-01 01:23:45' + INTERVAL 1 DAY;\n", - "len": 78, - "last": 78, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_event", - "value": "my_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON SCHEDULE", - "value": "ON SCHEDULE", - "keyword": "ON SCHEDULE", - "type": 1, - "flags": 7, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AT", - "value": "AT", - "keyword": "AT", - "type": 1, - "flags": 1, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'2023-01-01 01:23:45'", - "value": "2023-01-01 01:23:45", - "keyword": null, - "type": 7, - "flags": 1, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+", - "value": "+", - "keyword": null, - "type": 2, - "flags": 1, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTERVAL", - "value": "INTERVAL", - "keyword": "INTERVAL", - "type": 1, - "flags": 43, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DAY", - "value": "DAY", - "keyword": "DAY", - "type": 1, - "flags": 33, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 22, - "idx": 22 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_event", - "column": null, - "expr": "my_event", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ON SCHEDULE", - "2": { - "name": "AT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "2023-01-01 01:23:45", - "expr": "'2023-01-01 01:23:45'+ INTERVAL 1 DAY", - "alias": null, - "function": null, - "subquery": null - }, - "value": "'2023-01-01 01:23:45'+ INTERVAL 1 DAY" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "EVENT" - } - }, - "first": 0, - "last": 19 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery.in deleted file mode 100644 index 8878ed99..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery.in +++ /dev/null @@ -1,2 +0,0 @@ -ALTER EVENT my_event ON SCHEDULE - EVERY 2 WEEK; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery.out deleted file mode 100644 index b9f8720a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery.out +++ /dev/null @@ -1,243 +0,0 @@ -{ - "query": "ALTER EVENT my_event ON SCHEDULE\n EVERY 2 WEEK;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER EVENT my_event ON SCHEDULE\n EVERY 2 WEEK;\n", - "len": 49, - "last": 49, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_event", - "value": "my_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON SCHEDULE", - "value": "ON SCHEDULE", - "keyword": "ON SCHEDULE", - "type": 1, - "flags": 7, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVERY", - "value": "EVERY", - "keyword": "EVERY", - "type": 1, - "flags": 1, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WEEK", - "value": "WEEK", - "keyword": "WEEK", - "type": 1, - "flags": 33, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 16, - "idx": 16 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_event", - "column": null, - "expr": "my_event", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ON SCHEDULE", - "2": { - "name": "EVERY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "2 WEEK", - "alias": null, - "function": null, - "subquery": null - }, - "value": "2 WEEK" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "EVENT" - } - }, - "first": 0, - "last": 13 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery2.in deleted file mode 100644 index ef515afe..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery2.in +++ /dev/null @@ -1,2 +0,0 @@ -ALTER EVENT my_event ON SCHEDULE - EVERY 2 WEEK + INTERVAL 4 HOUR; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery2.out deleted file mode 100644 index a329d317..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery2.out +++ /dev/null @@ -1,315 +0,0 @@ -{ - "query": "ALTER EVENT my_event ON SCHEDULE\n EVERY 2 WEEK + INTERVAL 4 HOUR;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER EVENT my_event ON SCHEDULE\n EVERY 2 WEEK + INTERVAL 4 HOUR;\n", - "len": 67, - "last": 67, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_event", - "value": "my_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON SCHEDULE", - "value": "ON SCHEDULE", - "keyword": "ON SCHEDULE", - "type": 1, - "flags": 7, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVERY", - "value": "EVERY", - "keyword": "EVERY", - "type": 1, - "flags": 1, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WEEK", - "value": "WEEK", - "keyword": "WEEK", - "type": 1, - "flags": 33, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+", - "value": "+", - "keyword": null, - "type": 2, - "flags": 1, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTERVAL", - "value": "INTERVAL", - "keyword": "INTERVAL", - "type": 1, - "flags": 43, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "4", - "value": 4, - "keyword": null, - "type": 6, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "HOUR", - "value": "HOUR", - "keyword": "HOUR", - "type": 1, - "flags": 33, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 24, - "idx": 24 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_event", - "column": null, - "expr": "my_event", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ON SCHEDULE", - "2": { - "name": "EVERY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "2 WEEK + INTERVAL 4 HOUR", - "alias": null, - "function": null, - "subquery": null - }, - "value": "2 WEEK + INTERVAL 4 HOUR" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "EVENT" - } - }, - "first": 0, - "last": 21 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery3.in deleted file mode 100644 index 3a34bcef..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery3.in +++ /dev/null @@ -1,3 +0,0 @@ -ALTER EVENT my_event ON SCHEDULE - EVERY 2 WEEK - STARTS CURRENT_TIMESTAMP; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery3.out deleted file mode 100644 index 9615edf0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery3.out +++ /dev/null @@ -1,294 +0,0 @@ -{ - "query": "ALTER EVENT my_event ON SCHEDULE\n EVERY 2 WEEK\n STARTS CURRENT_TIMESTAMP;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER EVENT my_event ON SCHEDULE\n EVERY 2 WEEK\n STARTS CURRENT_TIMESTAMP;\n", - "len": 76, - "last": 76, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_event", - "value": "my_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON SCHEDULE", - "value": "ON SCHEDULE", - "keyword": "ON SCHEDULE", - "type": 1, - "flags": 7, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVERY", - "value": "EVERY", - "keyword": "EVERY", - "type": 1, - "flags": 1, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WEEK", - "value": "WEEK", - "keyword": "WEEK", - "type": 1, - "flags": 33, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "STARTS", - "value": "STARTS", - "keyword": "STARTS", - "type": 1, - "flags": 1, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CURRENT_TIMESTAMP", - "value": "CURRENT_TIMESTAMP", - "keyword": "CURRENT_TIMESTAMP", - "type": 1, - "flags": 35, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 20, - "idx": 20 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_event", - "column": null, - "expr": "my_event", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ON SCHEDULE", - "2": { - "name": "EVERY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "2 WEEK", - "alias": null, - "function": null, - "subquery": null - }, - "value": "2 WEEK" - }, - "3": { - "name": "STARTS", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "CURRENT_TIMESTAMP", - "alias": null, - "function": null, - "subquery": null - }, - "value": "CURRENT_TIMESTAMP" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "EVENT" - } - }, - "first": 0, - "last": 17 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery4.in deleted file mode 100644 index 5ff8f27c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery4.in +++ /dev/null @@ -1,3 +0,0 @@ -ALTER EVENT my_event ON SCHEDULE - EVERY 2 WEEK - STARTS CURRENT_TIMESTAMP + INTERVAL 4 HOUR; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery4.out deleted file mode 100644 index 3b82a378..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery4.out +++ /dev/null @@ -1,366 +0,0 @@ -{ - "query": "ALTER EVENT my_event ON SCHEDULE\n EVERY 2 WEEK\n STARTS CURRENT_TIMESTAMP + INTERVAL 4 HOUR;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER EVENT my_event ON SCHEDULE\n EVERY 2 WEEK\n STARTS CURRENT_TIMESTAMP + INTERVAL 4 HOUR;\n", - "len": 94, - "last": 94, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_event", - "value": "my_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON SCHEDULE", - "value": "ON SCHEDULE", - "keyword": "ON SCHEDULE", - "type": 1, - "flags": 7, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVERY", - "value": "EVERY", - "keyword": "EVERY", - "type": 1, - "flags": 1, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WEEK", - "value": "WEEK", - "keyword": "WEEK", - "type": 1, - "flags": 33, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "STARTS", - "value": "STARTS", - "keyword": "STARTS", - "type": 1, - "flags": 1, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CURRENT_TIMESTAMP", - "value": "CURRENT_TIMESTAMP", - "keyword": "CURRENT_TIMESTAMP", - "type": 1, - "flags": 35, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+", - "value": "+", - "keyword": null, - "type": 2, - "flags": 1, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTERVAL", - "value": "INTERVAL", - "keyword": "INTERVAL", - "type": 1, - "flags": 43, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "4", - "value": 4, - "keyword": null, - "type": 6, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "HOUR", - "value": "HOUR", - "keyword": "HOUR", - "type": 1, - "flags": 33, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 28, - "idx": 28 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_event", - "column": null, - "expr": "my_event", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ON SCHEDULE", - "2": { - "name": "EVERY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "2 WEEK", - "alias": null, - "function": null, - "subquery": null - }, - "value": "2 WEEK" - }, - "3": { - "name": "STARTS", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "CURRENT_TIMESTAMP + INTERVAL 4 HOUR", - "alias": null, - "function": null, - "subquery": null - }, - "value": "CURRENT_TIMESTAMP + INTERVAL 4 HOUR" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "EVENT" - } - }, - "first": 0, - "last": 25 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery5.in deleted file mode 100644 index bbf65f7e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery5.in +++ /dev/null @@ -1,4 +0,0 @@ -ALTER EVENT my_event ON SCHEDULE - EVERY 2 WEEK - STARTS CURRENT_TIMESTAMP - ENDS '2099-12-30 23:12:01'; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery5.out deleted file mode 100644 index c6c1575a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery5.out +++ /dev/null @@ -1,345 +0,0 @@ -{ - "query": "ALTER EVENT my_event ON SCHEDULE\n EVERY 2 WEEK\n STARTS CURRENT_TIMESTAMP\n ENDS '2099-12-30 23:12:01';\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER EVENT my_event ON SCHEDULE\n EVERY 2 WEEK\n STARTS CURRENT_TIMESTAMP\n ENDS '2099-12-30 23:12:01';\n", - "len": 105, - "last": 105, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_event", - "value": "my_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON SCHEDULE", - "value": "ON SCHEDULE", - "keyword": "ON SCHEDULE", - "type": 1, - "flags": 7, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVERY", - "value": "EVERY", - "keyword": "EVERY", - "type": 1, - "flags": 1, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WEEK", - "value": "WEEK", - "keyword": "WEEK", - "type": 1, - "flags": 33, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "STARTS", - "value": "STARTS", - "keyword": "STARTS", - "type": 1, - "flags": 1, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CURRENT_TIMESTAMP", - "value": "CURRENT_TIMESTAMP", - "keyword": "CURRENT_TIMESTAMP", - "type": 1, - "flags": 35, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENDS", - "value": "ENDS", - "keyword": "ENDS", - "type": 1, - "flags": 1, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'2099-12-30 23:12:01'", - "value": "2099-12-30 23:12:01", - "keyword": null, - "type": 7, - "flags": 1, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 24, - "idx": 24 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_event", - "column": null, - "expr": "my_event", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ON SCHEDULE", - "2": { - "name": "EVERY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "2 WEEK", - "alias": null, - "function": null, - "subquery": null - }, - "value": "2 WEEK" - }, - "3": { - "name": "STARTS", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "CURRENT_TIMESTAMP", - "alias": null, - "function": null, - "subquery": null - }, - "value": "CURRENT_TIMESTAMP" - }, - "4": { - "name": "ENDS", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "2099-12-30 23:12:01", - "expr": "'2099-12-30 23:12:01'", - "alias": null, - "function": null, - "subquery": null - }, - "value": "'2099-12-30 23:12:01'" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "EVENT" - } - }, - "first": 0, - "last": 21 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery6.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery6.in deleted file mode 100644 index d3429a90..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery6.in +++ /dev/null @@ -1,4 +0,0 @@ -ALTER EVENT my_event ON SCHEDULE - EVERY 2 WEEK - STARTS CURRENT_TIMESTAMP - ENDS '2099-12-30 23:12:01' + INTERVAL 1 DAY; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery6.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery6.out deleted file mode 100644 index fdf2af7a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventOnScheduleEvery6.out +++ /dev/null @@ -1,417 +0,0 @@ -{ - "query": "ALTER EVENT my_event ON SCHEDULE\n EVERY 2 WEEK\n STARTS CURRENT_TIMESTAMP\n ENDS '2099-12-30 23:12:01' + INTERVAL 1 DAY;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER EVENT my_event ON SCHEDULE\n EVERY 2 WEEK\n STARTS CURRENT_TIMESTAMP\n ENDS '2099-12-30 23:12:01' + INTERVAL 1 DAY;\n", - "len": 122, - "last": 122, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_event", - "value": "my_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON SCHEDULE", - "value": "ON SCHEDULE", - "keyword": "ON SCHEDULE", - "type": 1, - "flags": 7, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVERY", - "value": "EVERY", - "keyword": "EVERY", - "type": 1, - "flags": 1, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WEEK", - "value": "WEEK", - "keyword": "WEEK", - "type": 1, - "flags": 33, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "STARTS", - "value": "STARTS", - "keyword": "STARTS", - "type": 1, - "flags": 1, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CURRENT_TIMESTAMP", - "value": "CURRENT_TIMESTAMP", - "keyword": "CURRENT_TIMESTAMP", - "type": 1, - "flags": 35, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENDS", - "value": "ENDS", - "keyword": "ENDS", - "type": 1, - "flags": 1, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'2099-12-30 23:12:01'", - "value": "2099-12-30 23:12:01", - "keyword": null, - "type": 7, - "flags": 1, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+", - "value": "+", - "keyword": null, - "type": 2, - "flags": 1, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTERVAL", - "value": "INTERVAL", - "keyword": "INTERVAL", - "type": 1, - "flags": 43, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DAY", - "value": "DAY", - "keyword": "DAY", - "type": 1, - "flags": 33, - "position": 117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 32, - "idx": 32 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_event", - "column": null, - "expr": "my_event", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ON SCHEDULE", - "2": { - "name": "EVERY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "2 WEEK", - "alias": null, - "function": null, - "subquery": null - }, - "value": "2 WEEK" - }, - "3": { - "name": "STARTS", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "CURRENT_TIMESTAMP", - "alias": null, - "function": null, - "subquery": null - }, - "value": "CURRENT_TIMESTAMP" - }, - "4": { - "name": "ENDS", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "2099-12-30 23:12:01", - "expr": "'2099-12-30 23:12:01'+ INTERVAL 1 DAY", - "alias": null, - "function": null, - "subquery": null - }, - "value": "'2099-12-30 23:12:01'+ INTERVAL 1 DAY" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "EVENT" - } - }, - "first": 0, - "last": 29 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventWithDefiner.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventWithDefiner.in deleted file mode 100644 index df95f5d9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventWithDefiner.in +++ /dev/null @@ -1 +0,0 @@ -ALTER DEFINER = user EVENT my_event ENABLE; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventWithDefiner.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventWithDefiner.out deleted file mode 100644 index 5045820c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventWithDefiner.out +++ /dev/null @@ -1,243 +0,0 @@ -{ - "query": "ALTER DEFINER = user EVENT my_event ENABLE;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER DEFINER = user EVENT my_event ENABLE;\n", - "len": 44, - "last": 44, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFINER", - "value": "DEFINER", - "keyword": "DEFINER", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "user", - "value": "user", - "keyword": "USER", - "type": 1, - "flags": 33, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_event", - "value": "my_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENABLE", - "value": "ENABLE", - "keyword": "ENABLE", - "type": 1, - "flags": 1, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 16, - "idx": 16 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_event", - "column": null, - "expr": "my_event", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "8": "ENABLE" - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "DEFINER", - "equals": true, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "user", - "alias": null, - "function": null, - "subquery": null - }, - "value": "user" - }, - "3": "EVENT" - } - }, - "first": 0, - "last": 13 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventWithOtherDefiners.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventWithOtherDefiners.in deleted file mode 100644 index 4c096b3d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventWithOtherDefiners.in +++ /dev/null @@ -1,5 +0,0 @@ -ALTER DEFINER = 'user' EVENT my_event ENABLE; -ALTER DEFINER = `user` EVENT my_event ENABLE; -ALTER DEFINER = user@host EVENT my_event ENABLE; -ALTER DEFINER = 'user'@'host' EVENT my_event ENABLE; -ALTER DEFINER = `user`@`host` EVENT my_event ENABLE; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventWithOtherDefiners.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventWithOtherDefiners.out deleted file mode 100644 index bfb52198..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterEventWithOtherDefiners.out +++ /dev/null @@ -1,1048 +0,0 @@ -{ - "query": "ALTER DEFINER = 'user' EVENT my_event ENABLE;\nALTER DEFINER = `user` EVENT my_event ENABLE;\nALTER DEFINER = user@host EVENT my_event ENABLE;\nALTER DEFINER = 'user'@'host' EVENT my_event ENABLE;\nALTER DEFINER = `user`@`host` EVENT my_event ENABLE;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER DEFINER = 'user' EVENT my_event ENABLE;\nALTER DEFINER = `user` EVENT my_event ENABLE;\nALTER DEFINER = user@host EVENT my_event ENABLE;\nALTER DEFINER = 'user'@'host' EVENT my_event ENABLE;\nALTER DEFINER = `user`@`host` EVENT my_event ENABLE;\n", - "len": 247, - "last": 247, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFINER", - "value": "DEFINER", - "keyword": "DEFINER", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'user'", - "value": "user", - "keyword": null, - "type": 7, - "flags": 1, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_event", - "value": "my_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENABLE", - "value": "ENABLE", - "keyword": "ENABLE", - "type": 1, - "flags": 1, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFINER", - "value": "DEFINER", - "keyword": "DEFINER", - "type": 1, - "flags": 1, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`user`", - "value": "user", - "keyword": null, - "type": 8, - "flags": 2, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_event", - "value": "my_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENABLE", - "value": "ENABLE", - "keyword": "ENABLE", - "type": 1, - "flags": 1, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFINER", - "value": "DEFINER", - "keyword": "DEFINER", - "type": 1, - "flags": 1, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "user", - "value": "user", - "keyword": "USER", - "type": 1, - "flags": 33, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@host", - "value": "host", - "keyword": null, - "type": 8, - "flags": 1, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_event", - "value": "my_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENABLE", - "value": "ENABLE", - "keyword": "ENABLE", - "type": 1, - "flags": 1, - "position": 133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFINER", - "value": "DEFINER", - "keyword": "DEFINER", - "type": 1, - "flags": 1, - "position": 147 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 154 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'user'@'host'", - "value": "user@host", - "keyword": null, - "type": 8, - "flags": 4, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 170 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 171 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 176 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_event", - "value": "my_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 185 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENABLE", - "value": "ENABLE", - "keyword": "ENABLE", - "type": 1, - "flags": 1, - "position": 186 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 192 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 193 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 194 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 199 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFINER", - "value": "DEFINER", - "keyword": "DEFINER", - "type": 1, - "flags": 1, - "position": 200 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 207 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 208 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 209 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`user`@`host`", - "value": "user@host", - "keyword": null, - "type": 8, - "flags": 4, - "position": 210 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 223 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EVENT", - "value": "EVENT", - "keyword": "EVENT", - "type": 1, - "flags": 1, - "position": 224 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 229 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_event", - "value": "my_event", - "keyword": null, - "type": 0, - "flags": 0, - "position": 230 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 238 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENABLE", - "value": "ENABLE", - "keyword": "ENABLE", - "type": 1, - "flags": 1, - "position": 239 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 245 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 246 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 77, - "idx": 77 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_event", - "column": null, - "expr": "my_event", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "8": "ENABLE" - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "DEFINER", - "equals": true, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "user", - "expr": "'user'", - "alias": null, - "function": null, - "subquery": null - }, - "value": "'user'" - }, - "3": "EVENT" - } - }, - "first": 0, - "last": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_event", - "column": null, - "expr": "my_event", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "8": "ENABLE" - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "DEFINER", - "equals": true, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "user", - "expr": "`user`", - "alias": null, - "function": null, - "subquery": null - }, - "value": "`user`" - }, - "3": "EVENT" - } - }, - "first": 14, - "last": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_event", - "column": null, - "expr": "my_event", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "8": "ENABLE" - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "DEFINER", - "equals": true, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "user@host", - "alias": null, - "function": null, - "subquery": null - }, - "value": "user@host" - }, - "3": "EVENT" - } - }, - "first": 29, - "last": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_event", - "column": null, - "expr": "my_event", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "8": "ENABLE" - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "DEFINER", - "equals": true, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "user@host", - "expr": "'user'@'host'", - "alias": null, - "function": null, - "subquery": null - }, - "value": "'user'@'host'" - }, - "3": "EVENT" - } - }, - "first": 45, - "last": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_event", - "column": null, - "expr": "my_event", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "8": "ENABLE" - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "DEFINER", - "equals": true, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "user@host", - "expr": "`user`@`host`", - "alias": null, - "function": null, - "subquery": null - }, - "value": "`user`@`host`" - }, - "3": "EVENT" - } - }, - "first": 60, - "last": 74 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction1.in deleted file mode 100644 index 22ca8978..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction1.in +++ /dev/null @@ -1 +0,0 @@ -ALTER FUNCTION func_name COMMENT "test"; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction1.out deleted file mode 100644 index 73b98858..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction1.out +++ /dev/null @@ -1,197 +0,0 @@ -{ - "query": "ALTER FUNCTION func_name COMMENT \"test\";\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER FUNCTION func_name COMMENT \"test\";\n", - "len": 41, - "last": 41, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FUNCTION", - "value": "FUNCTION", - "keyword": "FUNCTION", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "func_name", - "value": "func_name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"test\"", - "value": "test", - "keyword": null, - "type": 7, - "flags": 2, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 12, - "idx": 12 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "func_name", - "column": null, - "expr": "func_name", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "COMMENT", - "equals": false, - "expr": "\"test\"", - "value": "test" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "FUNCTION" - } - }, - "first": 0, - "last": 9 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction2.in deleted file mode 100644 index ae0231ed..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction2.in +++ /dev/null @@ -1 +0,0 @@ -ALTER FUNCTION func_name LANGUAGE SQL; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction2.out deleted file mode 100644 index ae8675e2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction2.out +++ /dev/null @@ -1,174 +0,0 @@ -{ - "query": "ALTER FUNCTION func_name LANGUAGE SQL;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER FUNCTION func_name LANGUAGE SQL;\n", - "len": 39, - "last": 39, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FUNCTION", - "value": "FUNCTION", - "keyword": "FUNCTION", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "func_name", - "value": "func_name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LANGUAGE SQL", - "value": "LANGUAGE SQL", - "keyword": "LANGUAGE SQL", - "type": 1, - "flags": 7, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 10 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "func_name", - "column": null, - "expr": "func_name", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "LANGUAGE SQL" - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "FUNCTION" - } - }, - "first": 0, - "last": 7 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction3.in deleted file mode 100644 index 9d1bbebc..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction3.in +++ /dev/null @@ -1 +0,0 @@ -ALTER FUNCTION func_name COMMENT "test" LANGUAGE SQL CONTAINS SQL SQL SECURITY DEFINER; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction3.out deleted file mode 100644 index e7b3c27c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction3.out +++ /dev/null @@ -1,273 +0,0 @@ -{ - "query": "ALTER FUNCTION func_name COMMENT \"test\" LANGUAGE SQL CONTAINS SQL SQL SECURITY DEFINER;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER FUNCTION func_name COMMENT \"test\" LANGUAGE SQL CONTAINS SQL SQL SECURITY DEFINER;\n", - "len": 88, - "last": 88, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FUNCTION", - "value": "FUNCTION", - "keyword": "FUNCTION", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "func_name", - "value": "func_name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"test\"", - "value": "test", - "keyword": null, - "type": 7, - "flags": 2, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LANGUAGE SQL", - "value": "LANGUAGE SQL", - "keyword": "LANGUAGE SQL", - "type": 1, - "flags": 7, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CONTAINS SQL", - "value": "CONTAINS SQL", - "keyword": "CONTAINS SQL", - "type": 1, - "flags": 7, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SQL SECURITY", - "value": "SQL SECURITY", - "keyword": "SQL SECURITY", - "type": 1, - "flags": 7, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFINER", - "value": "DEFINER", - "keyword": "DEFINER", - "type": 1, - "flags": 1, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 20, - "idx": 20 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "func_name", - "column": null, - "expr": "func_name", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "COMMENT", - "equals": false, - "expr": "\"test\"", - "value": "test" - }, - "2": "LANGUAGE SQL", - "3": "CONTAINS SQL", - "4": "SQL SECURITY", - "5": "DEFINER" - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "FUNCTION" - } - }, - "first": 0, - "last": 17 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction4.in deleted file mode 100644 index 5e40da74..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction4.in +++ /dev/null @@ -1 +0,0 @@ -ALTER FUNCTION func_name COMMENT "test" LANGUAGE SQL NO SQL SQL SECURITY INVOKER; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction4.out deleted file mode 100644 index e6debf31..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction4.out +++ /dev/null @@ -1,273 +0,0 @@ -{ - "query": "ALTER FUNCTION func_name COMMENT \"test\" LANGUAGE SQL NO SQL SQL SECURITY INVOKER;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER FUNCTION func_name COMMENT \"test\" LANGUAGE SQL NO SQL SQL SECURITY INVOKER;\n", - "len": 82, - "last": 82, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FUNCTION", - "value": "FUNCTION", - "keyword": "FUNCTION", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "func_name", - "value": "func_name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"test\"", - "value": "test", - "keyword": null, - "type": 7, - "flags": 2, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LANGUAGE SQL", - "value": "LANGUAGE SQL", - "keyword": "LANGUAGE SQL", - "type": 1, - "flags": 7, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NO SQL", - "value": "NO SQL", - "keyword": "NO SQL", - "type": 1, - "flags": 7, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SQL SECURITY", - "value": "SQL SECURITY", - "keyword": "SQL SECURITY", - "type": 1, - "flags": 7, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INVOKER", - "value": "INVOKER", - "keyword": "INVOKER", - "type": 1, - "flags": 1, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 20, - "idx": 20 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "func_name", - "column": null, - "expr": "func_name", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "COMMENT", - "equals": false, - "expr": "\"test\"", - "value": "test" - }, - "2": "LANGUAGE SQL", - "3": "NO SQL", - "4": "SQL SECURITY", - "5": "INVOKER" - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "FUNCTION" - } - }, - "first": 0, - "last": 17 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction5.in deleted file mode 100644 index 81824590..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction5.in +++ /dev/null @@ -1 +0,0 @@ -ALTER FUNCTION func_name COMMENT "test" LANGUAGE SQL READS SQL DATA; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction5.out deleted file mode 100644 index 4020c4f2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction5.out +++ /dev/null @@ -1,235 +0,0 @@ -{ - "query": "ALTER FUNCTION func_name COMMENT \"test\" LANGUAGE SQL READS SQL DATA;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER FUNCTION func_name COMMENT \"test\" LANGUAGE SQL READS SQL DATA;\n", - "len": 69, - "last": 69, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FUNCTION", - "value": "FUNCTION", - "keyword": "FUNCTION", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "func_name", - "value": "func_name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"test\"", - "value": "test", - "keyword": null, - "type": 7, - "flags": 2, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LANGUAGE SQL", - "value": "LANGUAGE SQL", - "keyword": "LANGUAGE SQL", - "type": 1, - "flags": 7, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "READS SQL DATA", - "value": "READS SQL DATA", - "keyword": "READS SQL DATA", - "type": 1, - "flags": 7, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 16, - "idx": 16 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "func_name", - "column": null, - "expr": "func_name", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "COMMENT", - "equals": false, - "expr": "\"test\"", - "value": "test" - }, - "2": "LANGUAGE SQL", - "3": "READS SQL DATA" - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "FUNCTION" - } - }, - "first": 0, - "last": 13 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction6.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction6.in deleted file mode 100644 index 8ccff1ad..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction6.in +++ /dev/null @@ -1 +0,0 @@ -ALTER FUNCTION func_name COMMENT "test" LANGUAGE SQL MODIFIES SQL DATA; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction6.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction6.out deleted file mode 100644 index c38b3d9c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterFunction6.out +++ /dev/null @@ -1,235 +0,0 @@ -{ - "query": "ALTER FUNCTION func_name COMMENT \"test\" LANGUAGE SQL MODIFIES SQL DATA;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER FUNCTION func_name COMMENT \"test\" LANGUAGE SQL MODIFIES SQL DATA;\n", - "len": 72, - "last": 72, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FUNCTION", - "value": "FUNCTION", - "keyword": "FUNCTION", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "func_name", - "value": "func_name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"test\"", - "value": "test", - "keyword": null, - "type": 7, - "flags": 2, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LANGUAGE SQL", - "value": "LANGUAGE SQL", - "keyword": "LANGUAGE SQL", - "type": 1, - "flags": 7, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MODIFIES SQL DATA", - "value": "MODIFIES SQL DATA", - "keyword": "MODIFIES SQL DATA", - "type": 1, - "flags": 7, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 16, - "idx": 16 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "func_name", - "column": null, - "expr": "func_name", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "COMMENT", - "equals": false, - "expr": "\"test\"", - "value": "test" - }, - "2": "LANGUAGE SQL", - "3": "MODIFIES SQL DATA" - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "FUNCTION" - } - }, - "first": 0, - "last": 13 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure1.in deleted file mode 100644 index f3d1bec3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure1.in +++ /dev/null @@ -1 +0,0 @@ -ALTER PROCEDURE proc_name COMMENT "test"; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure1.out deleted file mode 100644 index ecc35499..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure1.out +++ /dev/null @@ -1,197 +0,0 @@ -{ - "query": "ALTER PROCEDURE proc_name COMMENT \"test\";\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER PROCEDURE proc_name COMMENT \"test\";\n", - "len": 42, - "last": 42, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PROCEDURE", - "value": "PROCEDURE", - "keyword": "PROCEDURE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "proc_name", - "value": "proc_name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"test\"", - "value": "test", - "keyword": null, - "type": 7, - "flags": 2, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 12, - "idx": 12 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "proc_name", - "column": null, - "expr": "proc_name", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "COMMENT", - "equals": false, - "expr": "\"test\"", - "value": "test" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "PROCEDURE" - } - }, - "first": 0, - "last": 9 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure2.in deleted file mode 100644 index 21dc117b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure2.in +++ /dev/null @@ -1 +0,0 @@ -ALTER PROCEDURE proc_name LANGUAGE SQL; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure2.out deleted file mode 100644 index 388133af..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure2.out +++ /dev/null @@ -1,174 +0,0 @@ -{ - "query": "ALTER PROCEDURE proc_name LANGUAGE SQL;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER PROCEDURE proc_name LANGUAGE SQL;\n", - "len": 40, - "last": 40, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PROCEDURE", - "value": "PROCEDURE", - "keyword": "PROCEDURE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "proc_name", - "value": "proc_name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LANGUAGE SQL", - "value": "LANGUAGE SQL", - "keyword": "LANGUAGE SQL", - "type": 1, - "flags": 7, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 10 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "proc_name", - "column": null, - "expr": "proc_name", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "LANGUAGE SQL" - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "PROCEDURE" - } - }, - "first": 0, - "last": 7 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure3.in deleted file mode 100644 index 9e26dc1e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure3.in +++ /dev/null @@ -1 +0,0 @@ -ALTER PROCEDURE proc_name COMMENT "test" LANGUAGE SQL CONTAINS SQL SQL SECURITY DEFINER; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure3.out deleted file mode 100644 index 7d84f00a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure3.out +++ /dev/null @@ -1,273 +0,0 @@ -{ - "query": "ALTER PROCEDURE proc_name COMMENT \"test\" LANGUAGE SQL CONTAINS SQL SQL SECURITY DEFINER;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER PROCEDURE proc_name COMMENT \"test\" LANGUAGE SQL CONTAINS SQL SQL SECURITY DEFINER;\n", - "len": 89, - "last": 89, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PROCEDURE", - "value": "PROCEDURE", - "keyword": "PROCEDURE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "proc_name", - "value": "proc_name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"test\"", - "value": "test", - "keyword": null, - "type": 7, - "flags": 2, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LANGUAGE SQL", - "value": "LANGUAGE SQL", - "keyword": "LANGUAGE SQL", - "type": 1, - "flags": 7, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CONTAINS SQL", - "value": "CONTAINS SQL", - "keyword": "CONTAINS SQL", - "type": 1, - "flags": 7, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SQL SECURITY", - "value": "SQL SECURITY", - "keyword": "SQL SECURITY", - "type": 1, - "flags": 7, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFINER", - "value": "DEFINER", - "keyword": "DEFINER", - "type": 1, - "flags": 1, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 20, - "idx": 20 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "proc_name", - "column": null, - "expr": "proc_name", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "COMMENT", - "equals": false, - "expr": "\"test\"", - "value": "test" - }, - "2": "LANGUAGE SQL", - "3": "CONTAINS SQL", - "4": "SQL SECURITY", - "5": "DEFINER" - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "PROCEDURE" - } - }, - "first": 0, - "last": 17 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure4.in deleted file mode 100644 index 08d51a2d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure4.in +++ /dev/null @@ -1 +0,0 @@ -ALTER PROCEDURE proc_name COMMENT "test" LANGUAGE SQL NO SQL SQL SECURITY INVOKER; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure4.out deleted file mode 100644 index 4d735a51..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure4.out +++ /dev/null @@ -1,273 +0,0 @@ -{ - "query": "ALTER PROCEDURE proc_name COMMENT \"test\" LANGUAGE SQL NO SQL SQL SECURITY INVOKER;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER PROCEDURE proc_name COMMENT \"test\" LANGUAGE SQL NO SQL SQL SECURITY INVOKER;\n", - "len": 83, - "last": 83, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PROCEDURE", - "value": "PROCEDURE", - "keyword": "PROCEDURE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "proc_name", - "value": "proc_name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"test\"", - "value": "test", - "keyword": null, - "type": 7, - "flags": 2, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LANGUAGE SQL", - "value": "LANGUAGE SQL", - "keyword": "LANGUAGE SQL", - "type": 1, - "flags": 7, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NO SQL", - "value": "NO SQL", - "keyword": "NO SQL", - "type": 1, - "flags": 7, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SQL SECURITY", - "value": "SQL SECURITY", - "keyword": "SQL SECURITY", - "type": 1, - "flags": 7, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INVOKER", - "value": "INVOKER", - "keyword": "INVOKER", - "type": 1, - "flags": 1, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 20, - "idx": 20 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "proc_name", - "column": null, - "expr": "proc_name", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "COMMENT", - "equals": false, - "expr": "\"test\"", - "value": "test" - }, - "2": "LANGUAGE SQL", - "3": "NO SQL", - "4": "SQL SECURITY", - "5": "INVOKER" - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "PROCEDURE" - } - }, - "first": 0, - "last": 17 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure5.in deleted file mode 100644 index a792e05f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure5.in +++ /dev/null @@ -1 +0,0 @@ -ALTER PROCEDURE proc_name COMMENT "test" LANGUAGE SQL READS SQL DATA; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure5.out deleted file mode 100644 index d0aee9a4..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure5.out +++ /dev/null @@ -1,235 +0,0 @@ -{ - "query": "ALTER PROCEDURE proc_name COMMENT \"test\" LANGUAGE SQL READS SQL DATA;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER PROCEDURE proc_name COMMENT \"test\" LANGUAGE SQL READS SQL DATA;\n", - "len": 70, - "last": 70, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PROCEDURE", - "value": "PROCEDURE", - "keyword": "PROCEDURE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "proc_name", - "value": "proc_name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"test\"", - "value": "test", - "keyword": null, - "type": 7, - "flags": 2, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LANGUAGE SQL", - "value": "LANGUAGE SQL", - "keyword": "LANGUAGE SQL", - "type": 1, - "flags": 7, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "READS SQL DATA", - "value": "READS SQL DATA", - "keyword": "READS SQL DATA", - "type": 1, - "flags": 7, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 16, - "idx": 16 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "proc_name", - "column": null, - "expr": "proc_name", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "COMMENT", - "equals": false, - "expr": "\"test\"", - "value": "test" - }, - "2": "LANGUAGE SQL", - "3": "READS SQL DATA" - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "PROCEDURE" - } - }, - "first": 0, - "last": 13 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure6.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure6.in deleted file mode 100644 index 44e033d6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure6.in +++ /dev/null @@ -1 +0,0 @@ -ALTER PROCEDURE proc_name COMMENT "test" LANGUAGE SQL MODIFIES SQL DATA; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure6.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure6.out deleted file mode 100644 index 4fa177fb..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterProcedure6.out +++ /dev/null @@ -1,235 +0,0 @@ -{ - "query": "ALTER PROCEDURE proc_name COMMENT \"test\" LANGUAGE SQL MODIFIES SQL DATA;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER PROCEDURE proc_name COMMENT \"test\" LANGUAGE SQL MODIFIES SQL DATA;\n", - "len": 73, - "last": 73, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PROCEDURE", - "value": "PROCEDURE", - "keyword": "PROCEDURE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "proc_name", - "value": "proc_name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"test\"", - "value": "test", - "keyword": null, - "type": 7, - "flags": 2, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LANGUAGE SQL", - "value": "LANGUAGE SQL", - "keyword": "LANGUAGE SQL", - "type": 1, - "flags": 7, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MODIFIES SQL DATA", - "value": "MODIFIES SQL DATA", - "keyword": "MODIFIES SQL DATA", - "type": 1, - "flags": 7, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 16, - "idx": 16 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "proc_name", - "column": null, - "expr": "proc_name", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "COMMENT", - "equals": false, - "expr": "\"test\"", - "value": "test" - }, - "2": "LANGUAGE SQL", - "3": "MODIFIES SQL DATA" - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "PROCEDURE" - } - }, - "first": 0, - "last": 13 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterRenameColumn.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterRenameColumn.in deleted file mode 100644 index dd90c149..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterRenameColumn.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE myTable RENAME COLUMN foo TO bar; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterRenameColumn.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterRenameColumn.out deleted file mode 100644 index 2286807d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterRenameColumn.out +++ /dev/null @@ -1,262 +0,0 @@ -{ - "query": "ALTER TABLE myTable RENAME COLUMN foo TO bar;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE myTable RENAME COLUMN foo TO bar;\n", - "len": 46, - "last": 46, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "myTable", - "value": "myTable", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RENAME", - "value": "RENAME", - "keyword": "RENAME", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLUMN", - "value": "COLUMN", - "keyword": "COLUMN", - "type": 1, - "flags": 3, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "bar", - "value": "bar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 18, - "idx": 18 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "myTable", - "column": null, - "expr": "myTable", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [ - "RENAME", - "COLUMN", - { - "name": "TO", - "equals": false, - "expr": "bar", - "value": "bar" - } - ] - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "foo", - "expr": "foo", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 15 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterRenameColumns.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterRenameColumns.in deleted file mode 100644 index e2ca5300..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterRenameColumns.in +++ /dev/null @@ -1,4 +0,0 @@ -ALTER TABLE myTable RENAME COLUMN a TO b, - RENAME COLUMN b TO c, - RENAME COLUMN c TO d, - RENAME COLUMN d TO a; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterRenameColumns.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterRenameColumns.out deleted file mode 100644 index 7ad0662d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterRenameColumns.out +++ /dev/null @@ -1,685 +0,0 @@ -{ - "query": "ALTER TABLE myTable RENAME COLUMN a TO b,\n RENAME COLUMN b TO c,\n RENAME COLUMN c TO d,\n RENAME COLUMN d TO a;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE myTable RENAME COLUMN a TO b,\n RENAME COLUMN b TO c,\n RENAME COLUMN c TO d,\n RENAME COLUMN d TO a;\n", - "len": 168, - "last": 168, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "myTable", - "value": "myTable", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RENAME", - "value": "RENAME", - "keyword": "RENAME", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLUMN", - "value": "COLUMN", - "keyword": "COLUMN", - "type": 1, - "flags": 3, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RENAME", - "value": "RENAME", - "keyword": "RENAME", - "type": 1, - "flags": 3, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLUMN", - "value": "COLUMN", - "keyword": "COLUMN", - "type": 1, - "flags": 3, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RENAME", - "value": "RENAME", - "keyword": "RENAME", - "type": 1, - "flags": 3, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLUMN", - "value": "COLUMN", - "keyword": "COLUMN", - "type": 1, - "flags": 3, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "d", - "value": "d", - "keyword": null, - "type": 0, - "flags": 0, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RENAME", - "value": "RENAME", - "keyword": "RENAME", - "type": 1, - "flags": 3, - "position": 146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLUMN", - "value": "COLUMN", - "keyword": "COLUMN", - "type": 1, - "flags": 3, - "position": 153 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 159 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "d", - "value": "d", - "keyword": null, - "type": 0, - "flags": 0, - "position": 160 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 162 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 164 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 165 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 166 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 51, - "idx": 51 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "myTable", - "column": null, - "expr": "myTable", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [ - "RENAME", - "COLUMN", - { - "name": "TO", - "equals": false, - "expr": "b", - "value": "b" - } - ] - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "a", - "expr": "a", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [ - "RENAME", - "COLUMN", - { - "name": "TO", - "equals": false, - "expr": "c", - "value": "c" - } - ] - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "b", - "expr": "b", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [ - "RENAME", - "COLUMN", - { - "name": "TO", - "equals": false, - "expr": "d", - "value": "d" - } - ] - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "c", - "expr": "c", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [ - "RENAME", - "COLUMN", - { - "name": "TO", - "equals": false, - "expr": "a", - "value": "a" - } - ] - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "d", - "expr": "d", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 48 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableAddColumnWithCheck.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableAddColumnWithCheck.in deleted file mode 100644 index 8b566500..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableAddColumnWithCheck.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE `xx` ADD `json` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL CHECK (json_valid(`json`)); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableAddColumnWithCheck.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableAddColumnWithCheck.out deleted file mode 100644 index ea3f1061..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableAddColumnWithCheck.out +++ /dev/null @@ -1,442 +0,0 @@ -{ - "query": "ALTER TABLE `xx` ADD `json` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL CHECK (json_valid(`json`));", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE `xx` ADD `json` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL CHECK (json_valid(`json`));", - "len": 115, - "last": 115, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`xx`", - "value": "xx", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ADD", - "value": "ADD", - "keyword": "ADD", - "type": 1, - "flags": 3, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`json`", - "value": "json", - "keyword": null, - "type": 8, - "flags": 2, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "longtext", - "value": "LONGTEXT", - "keyword": "LONGTEXT", - "type": 1, - "flags": 11, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHARACTER SET", - "value": "CHARACTER SET", - "keyword": "CHARACTER SET", - "type": 1, - "flags": 7, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8mb4", - "value": "utf8mb4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLLATE", - "value": "COLLATE", - "keyword": "COLLATE", - "type": 1, - "flags": 3, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8mb4_bin", - "value": "utf8mb4_bin", - "keyword": null, - "type": 0, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHECK", - "value": "CHECK", - "keyword": "CHECK", - "type": 1, - "flags": 3, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "json_valid", - "value": "json_valid", - "keyword": "JSON_VALID", - "type": 1, - "flags": 33, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`json`", - "value": "json", - "keyword": null, - "type": 8, - "flags": 2, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 32, - "idx": 32 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "xx", - "column": null, - "expr": "`xx`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ADD" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "json", - "expr": "`json`", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - }, - { - "@type": "@27" - }, - { - "@type": "@28" - }, - { - "@type": "@29" - }, - { - "@type": "@30" - }, - { - "@type": "@31" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 30 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableAddSpatialIndex1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableAddSpatialIndex1.in deleted file mode 100644 index 0b338c06..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableAddSpatialIndex1.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE testtable ADD SPATIAL INDEX(`mypoint`), ALGORITHM=INPLACE, LOCK=SHARED; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableAddSpatialIndex1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableAddSpatialIndex1.out deleted file mode 100644 index f6d7c449..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableAddSpatialIndex1.out +++ /dev/null @@ -1,375 +0,0 @@ -{ - "query": "ALTER TABLE testtable ADD SPATIAL INDEX(`mypoint`), ALGORITHM=INPLACE, LOCK=SHARED;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE testtable ADD SPATIAL INDEX(`mypoint`), ALGORITHM=INPLACE, LOCK=SHARED;", - "len": 83, - "last": 83, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "testtable", - "value": "testtable", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ADD", - "value": "ADD", - "keyword": "ADD", - "type": 1, - "flags": 3, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SPATIAL INDEX", - "value": "SPATIAL INDEX", - "keyword": "SPATIAL INDEX", - "type": 1, - "flags": 23, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`mypoint`", - "value": "mypoint", - "keyword": null, - "type": 8, - "flags": 2, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALGORITHM", - "value": "ALGORITHM", - "keyword": "ALGORITHM", - "type": 1, - "flags": 1, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INPLACE", - "value": "INPLACE", - "keyword": null, - "type": 0, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCK", - "value": "LOCK", - "keyword": "LOCK", - "type": 1, - "flags": 3, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SHARED", - "value": "SHARED", - "keyword": null, - "type": 0, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 24, - "idx": 24 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "testtable", - "column": null, - "expr": "testtable", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ADD" - } - }, - "field": null, - "partitions": null, - "unknown": [ - { - "@type": "@10" - }, - { - "@type": "@11" - }, - { - "@type": "@12" - }, - { - "@type": "@13" - } - ] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ALGORITHM", - "equals": true, - "expr": "INPLACE", - "value": "INPLACE" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "LOCK", - "equals": true, - "expr": "SHARED", - "value": "SHARED" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 22 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet1.in deleted file mode 100644 index 5796c045..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet1.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE `d` DEFAULT CHARSET=hp8 COLLATE hp8_english_ci; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet1.out deleted file mode 100644 index 81fc2012..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet1.out +++ /dev/null @@ -1,247 +0,0 @@ -{ - "query": "ALTER TABLE `d` DEFAULT CHARSET=hp8 COLLATE hp8_english_ci;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE `d` DEFAULT CHARSET=hp8 COLLATE hp8_english_ci;\n", - "len": 60, - "last": 60, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`d`", - "value": "d", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT CHARSET", - "value": "DEFAULT CHARSET", - "keyword": "DEFAULT CHARSET", - "type": 1, - "flags": 7, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "hp8", - "value": "hp8", - "keyword": null, - "type": 0, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLLATE", - "value": "COLLATE", - "keyword": "COLLATE", - "type": 1, - "flags": 3, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "hp8_english_ci", - "value": "hp8_english_ci", - "keyword": null, - "type": 0, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 16, - "idx": 16 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "d", - "column": null, - "expr": "`d`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "DEFAULT CHARSET" - } - }, - "field": null, - "partitions": null, - "unknown": [ - { - "@type": "@9" - }, - { - "@type": "@10" - }, - { - "@type": "@11" - }, - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 13 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet2.in deleted file mode 100644 index 42854df9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet2.in +++ /dev/null @@ -1,2 +0,0 @@ -ALTER TABLE `d` CHARSET=hp8 - diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet2.out deleted file mode 100644 index 72202685..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet2.out +++ /dev/null @@ -1,193 +0,0 @@ -{ - "query": "ALTER TABLE `d` CHARSET=hp8\n\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE `d` CHARSET=hp8\n\n", - "len": 29, - "last": 29, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`d`", - "value": "d", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHARSET", - "value": "CHARSET", - "keyword": "CHARSET", - "type": 1, - "flags": 33, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "hp8", - "value": "hp8", - "keyword": null, - "type": 0, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 11, - "idx": 11 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "d", - "column": null, - "expr": "`d`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "CHARSET" - } - }, - "field": null, - "partitions": null, - "unknown": [ - { - "@type": "@9" - }, - { - "@type": "@10" - }, - { - "@type": "@11" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 10 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet3.in deleted file mode 100644 index 53527224..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet3.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE `d` CHARSET=hp8; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet3.out deleted file mode 100644 index ee4f6fe9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet3.out +++ /dev/null @@ -1,199 +0,0 @@ -{ - "query": "ALTER TABLE `d` CHARSET=hp8;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE `d` CHARSET=hp8;\n", - "len": 29, - "last": 29, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`d`", - "value": "d", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHARSET", - "value": "CHARSET", - "keyword": "CHARSET", - "type": 1, - "flags": 33, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "hp8", - "value": "hp8", - "keyword": null, - "type": 0, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 12, - "idx": 12 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "d", - "column": null, - "expr": "`d`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "CHARSET" - } - }, - "field": null, - "partitions": null, - "unknown": [ - { - "@type": "@9" - }, - { - "@type": "@10" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 9 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet4.in deleted file mode 100644 index 8285dc84..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet4.in +++ /dev/null @@ -1,2 +0,0 @@ -ALTER TABLE tbl_name CONVERT TO CHARACTER SET charset_name; - diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet4.out deleted file mode 100644 index d3f21c89..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet4.out +++ /dev/null @@ -1,243 +0,0 @@ -{ - "query": "ALTER TABLE tbl_name CONVERT TO CHARACTER SET charset_name;\n\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE tbl_name CONVERT TO CHARACTER SET charset_name;\n\n", - "len": 61, - "last": 61, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tbl_name", - "value": "tbl_name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CONVERT", - "value": "CONVERT", - "keyword": "CONVERT", - "type": 1, - "flags": 35, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHARACTER SET", - "value": "CHARACTER SET", - "keyword": "CHARACTER SET", - "type": 1, - "flags": 7, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "charset_name", - "value": "charset_name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 16, - "idx": 16 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "tbl_name", - "column": null, - "expr": "tbl_name", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "CONVERT", - "3": { - "name": "TO", - "equals": false, - "expr": "CHARACTER SET", - "value": "CHARACTER SET" - } - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "charset_name", - "expr": "charset_name", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 13 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet5.in deleted file mode 100644 index 1ebca870..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet5.in +++ /dev/null @@ -1,2 +0,0 @@ -ALTER TABLE `d` CHARACTER SET utf8; - diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet5.out deleted file mode 100644 index 78226491..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet5.out +++ /dev/null @@ -1,201 +0,0 @@ -{ - "query": "ALTER TABLE `d` CHARACTER SET utf8;\n\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE `d` CHARACTER SET utf8;\n\n", - "len": 37, - "last": 37, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`d`", - "value": "d", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHARACTER SET", - "value": "CHARACTER SET", - "keyword": "CHARACTER SET", - "type": 1, - "flags": 7, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8", - "value": "utf8", - "keyword": null, - "type": 0, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 12, - "idx": 12 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "d", - "column": null, - "expr": "`d`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "CHARACTER SET" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "utf8", - "expr": "utf8", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 9 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet6.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet6.in deleted file mode 100644 index cff88fd4..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet6.in +++ /dev/null @@ -1,2 +0,0 @@ -ALTER TABLE `d` CHARACTER SET utf8 COLLATE utf8_general_ci; - diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet6.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet6.out deleted file mode 100644 index 701b70a7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet6.out +++ /dev/null @@ -1,247 +0,0 @@ -{ - "query": "ALTER TABLE `d` CHARACTER SET utf8 COLLATE utf8_general_ci;\n\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE `d` CHARACTER SET utf8 COLLATE utf8_general_ci;\n\n", - "len": 61, - "last": 61, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`d`", - "value": "d", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHARACTER SET", - "value": "CHARACTER SET", - "keyword": "CHARACTER SET", - "type": 1, - "flags": 7, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8", - "value": "utf8", - "keyword": null, - "type": 0, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLLATE", - "value": "COLLATE", - "keyword": "COLLATE", - "type": 1, - "flags": 3, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8_general_ci", - "value": "utf8_general_ci", - "keyword": null, - "type": 0, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 16, - "idx": 16 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "d", - "column": null, - "expr": "`d`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "CHARACTER SET" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "utf8", - "expr": "utf8", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 13 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet7.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet7.in deleted file mode 100644 index 2e06d7c6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet7.in +++ /dev/null @@ -1,2 +0,0 @@ -ALTER TABLE `d` CHARACTER SET utf8 COLLATE utf8_general_ci; - diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet7.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet7.out deleted file mode 100644 index 5cf321f6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCharacterSet7.out +++ /dev/null @@ -1,247 +0,0 @@ -{ - "query": "ALTER TABLE `d` CHARACTER SET utf8 COLLATE utf8_general_ci;\n\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE `d` CHARACTER SET utf8 COLLATE utf8_general_ci;\n\n", - "len": 75, - "last": 75, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`d`", - "value": "d", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHARACTER SET", - "value": "CHARACTER SET", - "keyword": "CHARACTER SET", - "type": 1, - "flags": 7, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8", - "value": "utf8", - "keyword": null, - "type": 0, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLLATE", - "value": "COLLATE", - "keyword": "COLLATE", - "type": 1, - "flags": 3, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8_general_ci", - "value": "utf8_general_ci", - "keyword": null, - "type": 0, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 16, - "idx": 16 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "d", - "column": null, - "expr": "`d`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "CHARACTER SET" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "utf8", - "expr": "utf8", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 13 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCoalescePartition.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCoalescePartition.in deleted file mode 100644 index c39bf637..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCoalescePartition.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE `MY_TABLE` COALESCE PARTITION 2; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCoalescePartition.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCoalescePartition.out deleted file mode 100644 index 711f5627..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableCoalescePartition.out +++ /dev/null @@ -1,188 +0,0 @@ -{ - "query": "ALTER TABLE `MY_TABLE` COALESCE PARTITION 2;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE `MY_TABLE` COALESCE PARTITION 2;", - "len": 44, - "last": 44, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`MY_TABLE`", - "value": "MY_TABLE", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COALESCE PARTITION", - "value": "COALESCE PARTITION", - "keyword": "COALESCE PARTITION", - "type": 1, - "flags": 7, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 11, - "idx": 11 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "MY_TABLE", - "column": null, - "expr": "`MY_TABLE`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "COALESCE PARTITION", - "equals": false, - "expr": "2", - "value": "2" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 9 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableDropAddIndex1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableDropAddIndex1.in deleted file mode 100644 index 1b2a0b8b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableDropAddIndex1.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE testtable DROP INDEX my_index2, ADD INDEX my_index3(id, id3) USING BTREE, ALGORITHM=COPY; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableDropAddIndex1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableDropAddIndex1.out deleted file mode 100644 index 7d20103b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableDropAddIndex1.out +++ /dev/null @@ -1,508 +0,0 @@ -{ - "query": "ALTER TABLE testtable DROP INDEX my_index2, ADD INDEX my_index3(id, id3) USING BTREE, ALGORITHM=COPY;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE testtable DROP INDEX my_index2, ADD INDEX my_index3(id, id3) USING BTREE, ALGORITHM=COPY;\n", - "len": 102, - "last": 102, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "testtable", - "value": "testtable", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DROP", - "value": "DROP", - "keyword": "DROP", - "type": 1, - "flags": 3, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INDEX", - "value": "INDEX", - "keyword": "INDEX", - "type": 1, - "flags": 19, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_index2", - "value": "my_index2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ADD", - "value": "ADD", - "keyword": "ADD", - "type": 1, - "flags": 3, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INDEX", - "value": "INDEX", - "keyword": "INDEX", - "type": 1, - "flags": 19, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_index3", - "value": "my_index3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id3", - "value": "id3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BTREE", - "value": "BTREE", - "keyword": "BTREE", - "type": 1, - "flags": 1, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALGORITHM", - "value": "ALGORITHM", - "keyword": "ALGORITHM", - "type": 1, - "flags": 1, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COPY", - "value": "COPY", - "keyword": null, - "type": 0, - "flags": 0, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 36, - "idx": 36 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "testtable", - "column": null, - "expr": "testtable", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "DROP", - "2": { - "name": "INDEX", - "equals": false, - "expr": "my_index2", - "value": "my_index2" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ADD", - "2": { - "name": "INDEX", - "equals": false, - "expr": "my_index3", - "value": "my_index3" - } - } - }, - "field": null, - "partitions": null, - "unknown": [ - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - }, - { - "@type": "@27" - }, - { - "@type": "@28" - }, - { - "@type": "@29" - } - ] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ALGORITHM", - "equals": true, - "expr": "COPY", - "value": "COPY" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 33 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableDropColumn1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableDropColumn1.in deleted file mode 100644 index ed61e28b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableDropColumn1.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE `testtable` DROP COLUMN `id2`, ALGORITHM=INPLACE, LOCK=NONE; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableDropColumn1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableDropColumn1.out deleted file mode 100644 index 42905c9f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableDropColumn1.out +++ /dev/null @@ -1,363 +0,0 @@ -{ - "query": "ALTER TABLE `testtable` DROP COLUMN `id2`, ALGORITHM=INPLACE, LOCK=NONE;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE `testtable` DROP COLUMN `id2`, ALGORITHM=INPLACE, LOCK=NONE;", - "len": 72, - "last": 72, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`testtable`", - "value": "testtable", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DROP", - "value": "DROP", - "keyword": "DROP", - "type": 1, - "flags": 3, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLUMN", - "value": "COLUMN", - "keyword": "COLUMN", - "type": 1, - "flags": 3, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`id2`", - "value": "id2", - "keyword": null, - "type": 8, - "flags": 2, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALGORITHM", - "value": "ALGORITHM", - "keyword": "ALGORITHM", - "type": 1, - "flags": 1, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INPLACE", - "value": "INPLACE", - "keyword": null, - "type": 0, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCK", - "value": "LOCK", - "keyword": "LOCK", - "type": 1, - "flags": 3, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NONE", - "value": "NONE", - "keyword": "NONE", - "type": 1, - "flags": 1, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 23, - "idx": 23 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "testtable", - "column": null, - "expr": "`testtable`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "DROP", - "2": "COLUMN" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "id2", - "expr": "`id2`", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ALGORITHM", - "equals": true, - "expr": "INPLACE", - "value": "INPLACE" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "LOCK", - "equals": true, - "expr": "NONE", - "value": "NONE" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 21 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableModifyColumn.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableModifyColumn.in deleted file mode 100644 index 667cd526..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableModifyColumn.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE testtable MODIFY COLUMN id INT(11) FIRST, ALGORITHM=INPLACE, LOCK=SHARED; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableModifyColumn.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableModifyColumn.out deleted file mode 100644 index 6e60c20a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableModifyColumn.out +++ /dev/null @@ -1,445 +0,0 @@ -{ - "query": "ALTER TABLE testtable MODIFY COLUMN id INT(11) FIRST, ALGORITHM=INPLACE, LOCK=SHARED;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE testtable MODIFY COLUMN id INT(11) FIRST, ALGORITHM=INPLACE, LOCK=SHARED;", - "len": 85, - "last": 85, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "testtable", - "value": "testtable", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MODIFY", - "value": "MODIFY", - "keyword": "MODIFY", - "type": 1, - "flags": 1, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLUMN", - "value": "COLUMN", - "keyword": "COLUMN", - "type": 1, - "flags": 3, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "11", - "value": 11, - "keyword": null, - "type": 6, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FIRST", - "value": "FIRST", - "keyword": "FIRST", - "type": 1, - "flags": 1, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALGORITHM", - "value": "ALGORITHM", - "keyword": "ALGORITHM", - "type": 1, - "flags": 1, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INPLACE", - "value": "INPLACE", - "keyword": null, - "type": 0, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCK", - "value": "LOCK", - "keyword": "LOCK", - "type": 1, - "flags": 3, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SHARED", - "value": "SHARED", - "keyword": null, - "type": 0, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 30, - "idx": 30 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "testtable", - "column": null, - "expr": "testtable", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "MODIFY", - "2": "COLUMN" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "id", - "expr": "id", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - } - ] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ALGORITHM", - "equals": true, - "expr": "INPLACE", - "value": "INPLACE" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "LOCK", - "equals": true, - "expr": "SHARED", - "value": "SHARED" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 28 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableModifyColumnEnum1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableModifyColumnEnum1.in deleted file mode 100644 index 59e4cc8c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableModifyColumnEnum1.in +++ /dev/null @@ -1,2 +0,0 @@ --- ENUM with a string that is a database option. -ALTER TABLE `test_table` MODIFY `COL` ENUM("COLLATE") NULL; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableModifyColumnEnum1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableModifyColumnEnum1.out deleted file mode 100644 index c8063d32..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableModifyColumnEnum1.out +++ /dev/null @@ -1,301 +0,0 @@ -{ - "query": "-- ENUM with a string that is a database option.\nALTER TABLE `test_table` MODIFY `COL` ENUM(\"COLLATE\") NULL;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "-- ENUM with a string that is a database option.\nALTER TABLE `test_table` MODIFY `COL` ENUM(\"COLLATE\") NULL;\n", - "len": 109, - "last": 109, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- ENUM with a string that is a database option.", - "value": "-- ENUM with a string that is a database option.", - "keyword": null, - "type": 4, - "flags": 4, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`test_table`", - "value": "test_table", - "keyword": null, - "type": 8, - "flags": 2, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MODIFY", - "value": "MODIFY", - "keyword": "MODIFY", - "type": 1, - "flags": 1, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`COL`", - "value": "COL", - "keyword": null, - "type": 8, - "flags": 2, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENUM", - "value": "ENUM", - "keyword": "ENUM", - "type": 1, - "flags": 9, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"COLLATE\"", - "value": "COLLATE", - "keyword": null, - "type": 7, - "flags": 2, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 21, - "idx": 21 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test_table", - "column": null, - "expr": "`test_table`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "MODIFY" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "COL", - "expr": "`COL`", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 18 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableModifyColumnEnum2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableModifyColumnEnum2.in deleted file mode 100644 index af5b1fb3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableModifyColumnEnum2.in +++ /dev/null @@ -1,2 +0,0 @@ --- ENUM with a string that is a table option. -ALTER TABLE `test_table` MODIFY `COL` ENUM("LOCK") NULL; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableModifyColumnEnum2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableModifyColumnEnum2.out deleted file mode 100644 index df8fe096..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableModifyColumnEnum2.out +++ /dev/null @@ -1,301 +0,0 @@ -{ - "query": "-- ENUM with a string that is a table option.\nALTER TABLE `test_table` MODIFY `COL` ENUM(\"LOCK\") NULL;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "-- ENUM with a string that is a table option.\nALTER TABLE `test_table` MODIFY `COL` ENUM(\"LOCK\") NULL;\n", - "len": 103, - "last": 103, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- ENUM with a string that is a table option.", - "value": "-- ENUM with a string that is a table option.", - "keyword": null, - "type": 4, - "flags": 4, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`test_table`", - "value": "test_table", - "keyword": null, - "type": 8, - "flags": 2, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MODIFY", - "value": "MODIFY", - "keyword": "MODIFY", - "type": 1, - "flags": 1, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`COL`", - "value": "COL", - "keyword": null, - "type": 8, - "flags": 2, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENUM", - "value": "ENUM", - "keyword": "ENUM", - "type": 1, - "flags": 9, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"LOCK\"", - "value": "LOCK", - "keyword": null, - "type": 7, - "flags": 2, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 21, - "idx": 21 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test_table", - "column": null, - "expr": "`test_table`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "MODIFY" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "COL", - "expr": "`COL`", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 18 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableModifyColumnEnum3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableModifyColumnEnum3.in deleted file mode 100644 index f5e1ca1c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableModifyColumnEnum3.in +++ /dev/null @@ -1,2 +0,0 @@ --- ENUM with a string that is a statement. -ALTER TABLE `test_table` MODIFY `COL` ENUM("INSERT") NULL; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableModifyColumnEnum3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableModifyColumnEnum3.out deleted file mode 100644 index bfc42e1e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableModifyColumnEnum3.out +++ /dev/null @@ -1,301 +0,0 @@ -{ - "query": "-- ENUM with a string that is a statement.\nALTER TABLE `test_table` MODIFY `COL` ENUM(\"INSERT\") NULL;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "-- ENUM with a string that is a statement.\nALTER TABLE `test_table` MODIFY `COL` ENUM(\"INSERT\") NULL;\n", - "len": 102, - "last": 102, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- ENUM with a string that is a statement.", - "value": "-- ENUM with a string that is a statement.", - "keyword": null, - "type": 4, - "flags": 4, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`test_table`", - "value": "test_table", - "keyword": null, - "type": 8, - "flags": 2, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MODIFY", - "value": "MODIFY", - "keyword": "MODIFY", - "type": 1, - "flags": 1, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`COL`", - "value": "COL", - "keyword": null, - "type": 8, - "flags": 2, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENUM", - "value": "ENUM", - "keyword": "ENUM", - "type": 1, - "flags": 9, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"INSERT\"", - "value": "INSERT", - "keyword": null, - "type": 7, - "flags": 2, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 21, - "idx": 21 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test_table", - "column": null, - "expr": "`test_table`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "MODIFY" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "COL", - "expr": "`COL`", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 18 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTablePartitionByRange1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTablePartitionByRange1.in deleted file mode 100644 index ce941516..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTablePartitionByRange1.in +++ /dev/null @@ -1,16 +0,0 @@ -ALTER TABLE trips PARTITION BY RANGE (MONTH(trip_date)) -( - PARTITION p01 VALUES LESS THAN (02), - PARTITION p02 VALUES LESS THAN (03), - PARTITION p03 VALUES LESS THAN (04), - PARTITION p04 VALUES LESS THAN (05), - PARTITION p05 VALUES LESS THAN (06), - PARTITION p06 VALUES LESS THAN (07), - PARTITION p07 VALUES LESS THAN (08), - PARTITION p08 VALUES LESS THAN (09), - PARTITION p09 VALUES LESS THAN (10), - PARTITION p10 VALUES LESS THAN (11), - PARTITION p11 VALUES LESS THAN (12), - PARTITION p12 VALUES LESS THAN (13), - PARTITION pmaxval VALUES LESS THAN MAXVALUE -); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTablePartitionByRange1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTablePartitionByRange1.out deleted file mode 100644 index 25d676b1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTablePartitionByRange1.out +++ /dev/null @@ -1,2041 +0,0 @@ -{ - "query": "ALTER TABLE trips PARTITION BY RANGE (MONTH(trip_date))\n(\n PARTITION p01 VALUES LESS THAN (02),\n PARTITION p02 VALUES LESS THAN (03),\n PARTITION p03 VALUES LESS THAN (04),\n PARTITION p04 VALUES LESS THAN (05),\n PARTITION p05 VALUES LESS THAN (06),\n PARTITION p06 VALUES LESS THAN (07),\n PARTITION p07 VALUES LESS THAN (08),\n PARTITION p08 VALUES LESS THAN (09),\n PARTITION p09 VALUES LESS THAN (10),\n PARTITION p10 VALUES LESS THAN (11),\n PARTITION p11 VALUES LESS THAN (12),\n PARTITION p12 VALUES LESS THAN (13),\n PARTITION pmaxval VALUES LESS THAN MAXVALUE\n);", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE trips PARTITION BY RANGE (MONTH(trip_date))\n(\n PARTITION p01 VALUES LESS THAN (02),\n PARTITION p02 VALUES LESS THAN (03),\n PARTITION p03 VALUES LESS THAN (04),\n PARTITION p04 VALUES LESS THAN (05),\n PARTITION p05 VALUES LESS THAN (06),\n PARTITION p06 VALUES LESS THAN (07),\n PARTITION p07 VALUES LESS THAN (08),\n PARTITION p08 VALUES LESS THAN (09),\n PARTITION p09 VALUES LESS THAN (10),\n PARTITION p10 VALUES LESS THAN (11),\n PARTITION p11 VALUES LESS THAN (12),\n PARTITION p12 VALUES LESS THAN (13),\n PARTITION pmaxval VALUES LESS THAN MAXVALUE\n);", - "len": 600, - "last": 600, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "trips", - "value": "trips", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION BY", - "value": "PARTITION BY", - "keyword": "PARTITION BY", - "type": 1, - "flags": 7, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RANGE", - "value": "RANGE", - "keyword": "RANGE", - "type": 1, - "flags": 3, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MONTH", - "value": "MONTH", - "keyword": "MONTH", - "type": 1, - "flags": 33, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "trip_date", - "value": "trip_date", - "keyword": null, - "type": 0, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p01", - "value": "p01", - "keyword": null, - "type": 0, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "02", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p02", - "value": "p02", - "keyword": null, - "type": 0, - "flags": 0, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 134 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "03", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 137 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 144 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 153 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p03", - "value": "p03", - "keyword": null, - "type": 0, - "flags": 0, - "position": 154 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 164 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 165 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 175 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "04", - "value": 4, - "keyword": null, - "type": 6, - "flags": 0, - "position": 176 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 178 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 179 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 180 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 185 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 194 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p04", - "value": "p04", - "keyword": null, - "type": 0, - "flags": 0, - "position": 195 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 198 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 199 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 205 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 206 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 215 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 216 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "05", - "value": 5, - "keyword": null, - "type": 6, - "flags": 0, - "position": 217 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 219 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 220 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 221 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 226 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 235 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p05", - "value": "p05", - "keyword": null, - "type": 0, - "flags": 0, - "position": 236 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 239 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 240 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 246 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 247 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 256 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 257 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "06", - "value": 6, - "keyword": null, - "type": 6, - "flags": 0, - "position": 258 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 260 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 261 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 262 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 267 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 276 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p06", - "value": "p06", - "keyword": null, - "type": 0, - "flags": 0, - "position": 277 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 280 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 281 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 287 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 288 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 297 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 298 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "07", - "value": 7, - "keyword": null, - "type": 6, - "flags": 0, - "position": 299 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 301 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 302 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 303 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 308 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 317 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p07", - "value": "p07", - "keyword": null, - "type": 0, - "flags": 0, - "position": 318 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 321 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 322 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 328 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 329 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 338 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 339 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "08", - "value": 8, - "keyword": null, - "type": 6, - "flags": 0, - "position": 340 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 342 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 343 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 344 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 349 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 358 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p08", - "value": "p08", - "keyword": null, - "type": 0, - "flags": 0, - "position": 359 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 362 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 363 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 369 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 370 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 379 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 380 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "09", - "value": 9, - "keyword": null, - "type": 6, - "flags": 0, - "position": 381 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 383 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 384 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 385 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 390 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 399 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p09", - "value": "p09", - "keyword": null, - "type": 0, - "flags": 0, - "position": 400 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 403 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 404 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 410 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 411 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 420 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 421 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 422 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 424 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 425 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 426 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 431 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 440 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p10", - "value": "p10", - "keyword": null, - "type": 0, - "flags": 0, - "position": 441 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 444 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 445 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 451 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 452 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 461 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 462 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "11", - "value": 11, - "keyword": null, - "type": 6, - "flags": 0, - "position": 463 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 465 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 466 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 467 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 472 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 481 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p11", - "value": "p11", - "keyword": null, - "type": 0, - "flags": 0, - "position": 482 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 485 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 486 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 492 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 493 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 502 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 503 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "12", - "value": 12, - "keyword": null, - "type": 6, - "flags": 0, - "position": 504 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 506 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 507 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 508 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 513 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 522 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p12", - "value": "p12", - "keyword": null, - "type": 0, - "flags": 0, - "position": 523 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 526 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 527 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 533 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 534 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 543 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 544 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "13", - "value": 13, - "keyword": null, - "type": 6, - "flags": 0, - "position": 545 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 547 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 548 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 549 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 554 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 563 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pmaxval", - "value": "pmaxval", - "keyword": null, - "type": 0, - "flags": 0, - "position": 564 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 571 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 572 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 578 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 579 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 588 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MAXVALUE", - "value": "MAXVALUE", - "keyword": "MAXVALUE", - "type": 1, - "flags": 3, - "position": 589 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 597 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 598 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 599 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 188, - "idx": 188 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "trips", - "column": null, - "expr": "trips", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "PARTITION BY" - } - }, - "field": " RANGE (MONTH(trip_date)) ", - "partitions": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p01", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(02)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p02", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(03)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p03", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(04)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p04", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(05)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p05", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(06)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p06", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(07)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p07", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(08)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p08", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(09)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p09", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(10)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p10", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(11)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p11", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(12)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p12", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(13)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "pmaxval", - "type": "LESS THAN", - "expr": "MAXVALUE", - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 186 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTablePartitionByRange2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTablePartitionByRange2.in deleted file mode 100644 index 75879b96..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTablePartitionByRange2.in +++ /dev/null @@ -1,5 +0,0 @@ -ALTER TABLE d PARTITION BY RANGE (MONTH(departure_date)) -( -PARTITION p01 VALUES LESS THAN (02) , -PARTITION pmaxval VALUES LESS THAN MAXVALUE -); diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTablePartitionByRange2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTablePartitionByRange2.out deleted file mode 100644 index 858ecfd6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTablePartitionByRange2.out +++ /dev/null @@ -1,541 +0,0 @@ -{ - "query": "ALTER TABLE d PARTITION BY RANGE (MONTH(departure_date))\n(\nPARTITION p01 VALUES LESS THAN (02) ,\nPARTITION pmaxval VALUES LESS THAN MAXVALUE\n);\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE d PARTITION BY RANGE (MONTH(departure_date))\n(\nPARTITION p01 VALUES LESS THAN (02) ,\nPARTITION pmaxval VALUES LESS THAN MAXVALUE\n);\n", - "len": 144, - "last": 144, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "d", - "value": "d", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION BY", - "value": "PARTITION BY", - "keyword": "PARTITION BY", - "type": 1, - "flags": 7, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RANGE", - "value": "RANGE", - "keyword": "RANGE", - "type": 1, - "flags": 3, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MONTH", - "value": "MONTH", - "keyword": "MONTH", - "type": 1, - "flags": 33, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "departure_date", - "value": "departure_date", - "keyword": null, - "type": 0, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p01", - "value": "p01", - "keyword": null, - "type": 0, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "02", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pmaxval", - "value": "pmaxval", - "keyword": null, - "type": 0, - "flags": 0, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MAXVALUE", - "value": "MAXVALUE", - "keyword": "MAXVALUE", - "type": 1, - "flags": 3, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 47, - "idx": 47 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "d", - "column": null, - "expr": "d", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "PARTITION BY" - } - }, - "field": " RANGE (MONTH(departure_date)) ", - "partitions": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p01", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(02)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "pmaxval", - "type": "LESS THAN", - "expr": "MAXVALUE", - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 44 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableRenameIndex1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableRenameIndex1.in deleted file mode 100644 index 9cadfefb..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableRenameIndex1.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE `transactions` RENAME INDEX `fk_transactions_catalog_entries1_idx` TO `fk_transactions_catalog_entries2_idx` \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableRenameIndex1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableRenameIndex1.out deleted file mode 100644 index 5782ca89..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableRenameIndex1.out +++ /dev/null @@ -1,240 +0,0 @@ -{ - "query": "ALTER TABLE `transactions` RENAME INDEX `fk_transactions_catalog_entries1_idx` TO `fk_transactions_catalog_entries2_idx`", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE `transactions` RENAME INDEX `fk_transactions_catalog_entries1_idx` TO `fk_transactions_catalog_entries2_idx`", - "len": 120, - "last": 120, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`transactions`", - "value": "transactions", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RENAME", - "value": "RENAME", - "keyword": "RENAME", - "type": 1, - "flags": 3, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INDEX", - "value": "INDEX", - "keyword": "INDEX", - "type": 1, - "flags": 19, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`fk_transactions_catalog_entries1_idx`", - "value": "fk_transactions_catalog_entries1_idx", - "keyword": null, - "type": 8, - "flags": 2, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`fk_transactions_catalog_entries2_idx`", - "value": "fk_transactions_catalog_entries2_idx", - "keyword": null, - "type": 8, - "flags": 2, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 16, - "idx": 16 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "transactions", - "column": null, - "expr": "`transactions`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "RENAME", - "2": { - "name": "INDEX", - "equals": false, - "expr": "`fk_transactions_catalog_entries1_idx`", - "value": "fk_transactions_catalog_entries1_idx" - }, - "3": { - "name": "TO", - "equals": false, - "expr": "`fk_transactions_catalog_entries2_idx`", - "value": "fk_transactions_catalog_entries2_idx" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 15 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableRenameIndex2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableRenameIndex2.in deleted file mode 100644 index 66c3a6d7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableRenameIndex2.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE testtable RENAME INDEX my_index TO my_index2, ALGORITHM=INPLACE, LOCK=NONE; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableRenameIndex2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableRenameIndex2.out deleted file mode 100644 index ae2d9710..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableRenameIndex2.out +++ /dev/null @@ -1,401 +0,0 @@ -{ - "query": "ALTER TABLE testtable RENAME INDEX my_index TO my_index2, ALGORITHM=INPLACE, LOCK=NONE;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE testtable RENAME INDEX my_index TO my_index2, ALGORITHM=INPLACE, LOCK=NONE;", - "len": 87, - "last": 87, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "testtable", - "value": "testtable", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RENAME", - "value": "RENAME", - "keyword": "RENAME", - "type": 1, - "flags": 3, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INDEX", - "value": "INDEX", - "keyword": "INDEX", - "type": 1, - "flags": 19, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_index", - "value": "my_index", - "keyword": null, - "type": 0, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_index2", - "value": "my_index2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALGORITHM", - "value": "ALGORITHM", - "keyword": "ALGORITHM", - "type": 1, - "flags": 1, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INPLACE", - "value": "INPLACE", - "keyword": null, - "type": 0, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCK", - "value": "LOCK", - "keyword": "LOCK", - "type": 1, - "flags": 3, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NONE", - "value": "NONE", - "keyword": "NONE", - "type": 1, - "flags": 1, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 27, - "idx": 27 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "testtable", - "column": null, - "expr": "testtable", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "RENAME", - "2": { - "name": "INDEX", - "equals": false, - "expr": "my_index", - "value": "my_index" - }, - "3": { - "name": "TO", - "equals": false, - "expr": "my_index2", - "value": "my_index2" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ALGORITHM", - "equals": true, - "expr": "INPLACE", - "value": "INPLACE" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "LOCK", - "equals": true, - "expr": "NONE", - "value": "NONE" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 25 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableRenameKey1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableRenameKey1.in deleted file mode 100644 index 90e599a5..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableRenameKey1.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE `transactions` RENAME KEY `fk_transactions_catalog_entries1_idx` TO `fk_transactions_catalog_entries2_idx` diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableRenameKey1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableRenameKey1.out deleted file mode 100644 index c178bfcf..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableRenameKey1.out +++ /dev/null @@ -1,249 +0,0 @@ -{ - "query": "ALTER TABLE `transactions` RENAME KEY `fk_transactions_catalog_entries1_idx` TO `fk_transactions_catalog_entries2_idx`\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE `transactions` RENAME KEY `fk_transactions_catalog_entries1_idx` TO `fk_transactions_catalog_entries2_idx`\n", - "len": 119, - "last": 119, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`transactions`", - "value": "transactions", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RENAME", - "value": "RENAME", - "keyword": "RENAME", - "type": 1, - "flags": 3, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KEY", - "value": "KEY", - "keyword": "KEY", - "type": 1, - "flags": 19, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`fk_transactions_catalog_entries1_idx`", - "value": "fk_transactions_catalog_entries1_idx", - "keyword": null, - "type": 8, - "flags": 2, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`fk_transactions_catalog_entries2_idx`", - "value": "fk_transactions_catalog_entries2_idx", - "keyword": null, - "type": 8, - "flags": 2, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 17, - "idx": 17 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "transactions", - "column": null, - "expr": "`transactions`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "RENAME", - "2": { - "name": "KEY", - "equals": false, - "expr": "`fk_transactions_catalog_entries1_idx`", - "value": "fk_transactions_catalog_entries1_idx" - }, - "3": { - "name": "TO", - "equals": false, - "expr": "`fk_transactions_catalog_entries2_idx`", - "value": "fk_transactions_catalog_entries2_idx" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 16 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableRenameKey2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableRenameKey2.in deleted file mode 100644 index b59fc642..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableRenameKey2.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE testtable RENAME KEY my_index TO my_index2, ALGORITHM=INPLACE, LOCK=NONE; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableRenameKey2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableRenameKey2.out deleted file mode 100644 index 934d3913..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableRenameKey2.out +++ /dev/null @@ -1,410 +0,0 @@ -{ - "query": "ALTER TABLE testtable RENAME KEY my_index TO my_index2, ALGORITHM=INPLACE, LOCK=NONE;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE testtable RENAME KEY my_index TO my_index2, ALGORITHM=INPLACE, LOCK=NONE;\n", - "len": 86, - "last": 86, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "testtable", - "value": "testtable", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RENAME", - "value": "RENAME", - "keyword": "RENAME", - "type": 1, - "flags": 3, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KEY", - "value": "KEY", - "keyword": "KEY", - "type": 1, - "flags": 19, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_index", - "value": "my_index", - "keyword": null, - "type": 0, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_index2", - "value": "my_index2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALGORITHM", - "value": "ALGORITHM", - "keyword": "ALGORITHM", - "type": 1, - "flags": 1, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INPLACE", - "value": "INPLACE", - "keyword": null, - "type": 0, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCK", - "value": "LOCK", - "keyword": "LOCK", - "type": 1, - "flags": 3, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NONE", - "value": "NONE", - "keyword": "NONE", - "type": 1, - "flags": 1, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 28, - "idx": 28 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "testtable", - "column": null, - "expr": "testtable", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "RENAME", - "2": { - "name": "KEY", - "equals": false, - "expr": "my_index", - "value": "my_index" - }, - "3": { - "name": "TO", - "equals": false, - "expr": "my_index2", - "value": "my_index2" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ALGORITHM", - "equals": true, - "expr": "INPLACE", - "value": "INPLACE" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "LOCK", - "equals": true, - "expr": "NONE", - "value": "NONE" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 25 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableSetAutoIncrementError.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableSetAutoIncrementError.in deleted file mode 100644 index 2d7993c1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableSetAutoIncrementError.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE t1 AUTO_INCREMENT diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableSetAutoIncrementError.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableSetAutoIncrementError.out deleted file mode 100644 index b68ed3d4..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterTableSetAutoIncrementError.out +++ /dev/null @@ -1,178 +0,0 @@ -{ - "query": "ALTER TABLE t1 AUTO_INCREMENT\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE t1 AUTO_INCREMENT\n", - "len": 30, - "last": 30, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AUTO_INCREMENT", - "value": "AUTO_INCREMENT", - "keyword": "AUTO_INCREMENT", - "type": 1, - "flags": 1, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 9, - "idx": 9 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "t1", - "column": null, - "expr": "t1", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "AUTO_INCREMENT", - "equals": true, - "expr": "", - "value": "" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 8 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Value/Expression for the option AUTO_INCREMENT was expected.", - { - "@type": "@9" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser.in deleted file mode 100644 index db5975d9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser.in +++ /dev/null @@ -1,2 +0,0 @@ -ALTER USER 'jeffrey'@'localhost' - IDENTIFIED BY 'new_password' PASSWORD EXPIRE; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser.out deleted file mode 100644 index 8215f41b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser.out +++ /dev/null @@ -1,261 +0,0 @@ -{ - "query": "ALTER USER 'jeffrey'@'localhost'\n IDENTIFIED BY 'new_password' PASSWORD EXPIRE;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER USER 'jeffrey'@'localhost'\n IDENTIFIED BY 'new_password' PASSWORD EXPIRE;", - "len": 80, - "last": 80, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USER", - "value": "USER", - "keyword": "USER", - "type": 1, - "flags": 33, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'jeffrey'@'localhost'", - "value": "jeffrey@localhost", - "keyword": null, - "type": 8, - "flags": 4, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IDENTIFIED", - "value": "IDENTIFIED", - "keyword": "IDENTIFIED", - "type": 1, - "flags": 1, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BY", - "value": "BY", - "keyword": "BY", - "type": 1, - "flags": 3, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'new_password'", - "value": "new_password", - "keyword": null, - "type": 7, - "flags": 1, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PASSWORD", - "value": "PASSWORD", - "keyword": "PASSWORD", - "type": 1, - "flags": 33, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EXPIRE", - "value": "EXPIRE", - "keyword": "EXPIRE", - "type": 1, - "flags": 1, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 17, - "idx": 17 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "jeffrey@localhost", - "column": null, - "expr": "'jeffrey'@'localhost'", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "IDENTIFIED", - "4": { - "name": "BY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "new_password", - "expr": "'new_password' PASSWORD", - "alias": null, - "function": null, - "subquery": null - }, - "value": "'new_password' PASSWORD" - } - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "EXPIRE", - "expr": "EXPIRE", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "USER" - } - }, - "first": 0, - "last": 15 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser1.in deleted file mode 100644 index 629df955..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser1.in +++ /dev/null @@ -1 +0,0 @@ -ALTER USER trevor REQUIRE NONE; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser1.out deleted file mode 100644 index d92613d0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser1.out +++ /dev/null @@ -1,188 +0,0 @@ -{ - "query": "ALTER USER trevor REQUIRE NONE;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER USER trevor REQUIRE NONE;", - "len": 31, - "last": 31, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USER", - "value": "USER", - "keyword": "USER", - "type": 1, - "flags": 33, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "trevor", - "value": "trevor", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REQUIRE", - "value": "REQUIRE", - "keyword": "REQUIRE", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NONE", - "value": "NONE", - "keyword": "NONE", - "type": 1, - "flags": 1, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 11, - "idx": 11 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "trevor", - "column": null, - "expr": "trevor", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "REQUIRE", - "equals": false, - "expr": "NONE", - "value": "NONE" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "USER" - } - }, - "first": 0, - "last": 9 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser10.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser10.in deleted file mode 100644 index bc897503..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser10.in +++ /dev/null @@ -1,2 +0,0 @@ -ALTER USER 'bob'@'localhost' IDENTIFIED WITH mysql_native_password USING PASSWORD('vp8LAf4#wu2V&Wi*iJWC#3KPotsHzx3u'); - diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser10.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser10.out deleted file mode 100644 index 7f0d6791..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser10.out +++ /dev/null @@ -1,279 +0,0 @@ -{ - "query": "ALTER USER 'bob'@'localhost' IDENTIFIED WITH mysql_native_password USING PASSWORD('vp8LAf4#wu2V&Wi*iJWC#3KPotsHzx3u');\n\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER USER 'bob'@'localhost' IDENTIFIED WITH mysql_native_password USING PASSWORD('vp8LAf4#wu2V&Wi*iJWC#3KPotsHzx3u');\n\n", - "len": 120, - "last": 120, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USER", - "value": "USER", - "keyword": "USER", - "type": 1, - "flags": 33, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'bob'@'localhost'", - "value": "bob@localhost", - "keyword": null, - "type": 8, - "flags": 4, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IDENTIFIED WITH", - "value": "IDENTIFIED WITH", - "keyword": "IDENTIFIED WITH", - "type": 1, - "flags": 23, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mysql_native_password", - "value": "mysql_native_password", - "keyword": null, - "type": 0, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PASSWORD", - "value": "PASSWORD", - "keyword": "PASSWORD", - "type": 1, - "flags": 33, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'vp8LAf4#wu2V&Wi*iJWC#3KPotsHzx3u'", - "value": "vp8LAf4#wu2V&Wi*iJWC#3KPotsHzx3u", - "keyword": null, - "type": 7, - "flags": 1, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 19, - "idx": 19 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "bob@localhost", - "column": null, - "expr": "'bob'@'localhost'", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "IDENTIFIED WITH", - "equals": false, - "expr": "mysql_native_password", - "value": "mysql_native_password" - } - } - }, - "field": null, - "partitions": null, - "unknown": [ - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "USER" - } - }, - "first": 0, - "last": 16 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser2.in deleted file mode 100644 index 1642aa7c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser2.in +++ /dev/null @@ -1 +0,0 @@ -ALTER USER 'user'@'localhost' ACCOUNT LOCK; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser2.out deleted file mode 100644 index 60ffc29f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser2.out +++ /dev/null @@ -1,184 +0,0 @@ -{ - "query": "ALTER USER 'user'@'localhost' ACCOUNT LOCK;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER USER 'user'@'localhost' ACCOUNT LOCK;", - "len": 43, - "last": 43, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USER", - "value": "USER", - "keyword": "USER", - "type": 1, - "flags": 33, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'user'@'localhost'", - "value": "user@localhost", - "keyword": null, - "type": 8, - "flags": 4, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ACCOUNT", - "value": "ACCOUNT", - "keyword": "ACCOUNT", - "type": 1, - "flags": 1, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCK", - "value": "LOCK", - "keyword": "LOCK", - "type": 1, - "flags": 3, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 11, - "idx": 11 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "user@localhost", - "column": null, - "expr": "'user'@'localhost'", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ACCOUNT", - "2": "LOCK" - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "USER" - } - }, - "first": 0, - "last": 9 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser3.in deleted file mode 100644 index 5bae224b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser3.in +++ /dev/null @@ -1 +0,0 @@ -ALTER USER 'testosama' REQUIRE SSL WITH MAX_CONNECTIONS_PER_HOUR 20; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser3.out deleted file mode 100644 index a11488a8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser3.out +++ /dev/null @@ -1,252 +0,0 @@ -{ - "query": "ALTER USER 'testosama' REQUIRE SSL WITH MAX_CONNECTIONS_PER_HOUR 20;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER USER 'testosama' REQUIRE SSL WITH MAX_CONNECTIONS_PER_HOUR 20;", - "len": 68, - "last": 68, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USER", - "value": "USER", - "keyword": "USER", - "type": 1, - "flags": 33, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'testosama'", - "value": "testosama", - "keyword": null, - "type": 7, - "flags": 1, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REQUIRE", - "value": "REQUIRE", - "keyword": "REQUIRE", - "type": 1, - "flags": 3, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SSL", - "value": "SSL", - "keyword": "SSL", - "type": 1, - "flags": 3, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MAX_CONNECTIONS_PER_HOUR", - "value": "MAX_CONNECTIONS_PER_HOUR", - "keyword": "MAX_CONNECTIONS_PER_HOUR", - "type": 1, - "flags": 1, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "20", - "value": 20, - "keyword": null, - "type": 6, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 17, - "idx": 17 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "testosama", - "column": null, - "expr": "'testosama'", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "REQUIRE", - "equals": false, - "expr": "SSL", - "value": "SSL" - }, - "2": { - "name": "WITH", - "equals": false, - "expr": "MAX_CONNECTIONS_PER_HOUR", - "value": "MAX_CONNECTIONS_PER_HOUR" - } - } - }, - "field": null, - "partitions": null, - "unknown": [ - { - "@type": "@16" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "USER" - } - }, - "first": 0, - "last": 15 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser4.in deleted file mode 100644 index 4b1836f8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser4.in +++ /dev/null @@ -1,2 +0,0 @@ -ALTER USER 'user' - WITH MAX_QUERIES_PER_HOUR 500 MAX_UPDATES_PER_HOUR 100; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser4.out deleted file mode 100644 index 724f5778..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser4.out +++ /dev/null @@ -1,258 +0,0 @@ -{ - "query": "ALTER USER 'user'\n WITH MAX_QUERIES_PER_HOUR 500 MAX_UPDATES_PER_HOUR 100;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER USER 'user'\n WITH MAX_QUERIES_PER_HOUR 500 MAX_UPDATES_PER_HOUR 100;", - "len": 75, - "last": 75, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USER", - "value": "USER", - "keyword": "USER", - "type": 1, - "flags": 33, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'user'", - "value": "user", - "keyword": null, - "type": 7, - "flags": 1, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MAX_QUERIES_PER_HOUR", - "value": "MAX_QUERIES_PER_HOUR", - "keyword": "MAX_QUERIES_PER_HOUR", - "type": 1, - "flags": 1, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "500", - "value": 500, - "keyword": null, - "type": 6, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MAX_UPDATES_PER_HOUR", - "value": "MAX_UPDATES_PER_HOUR", - "keyword": "MAX_UPDATES_PER_HOUR", - "type": 1, - "flags": 1, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "100", - "value": 100, - "keyword": null, - "type": 6, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 17, - "idx": 17 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "user", - "column": null, - "expr": "'user'", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "WITH", - "equals": false, - "expr": "MAX_QUERIES_PER_HOUR", - "value": "MAX_QUERIES_PER_HOUR" - } - } - }, - "field": null, - "partitions": null, - "unknown": [ - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "USER" - } - }, - "first": 0, - "last": 15 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser5.in deleted file mode 100644 index 706e837c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser5.in +++ /dev/null @@ -1 +0,0 @@ -ALTER USER 'user' PASSWORD EXPIRE NEVER \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser5.out deleted file mode 100644 index d107d061..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser5.out +++ /dev/null @@ -1,206 +0,0 @@ -{ - "query": "ALTER USER 'user' PASSWORD EXPIRE NEVER", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER USER 'user' PASSWORD EXPIRE NEVER", - "len": 39, - "last": 39, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USER", - "value": "USER", - "keyword": "USER", - "type": 1, - "flags": 33, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'user'", - "value": "user", - "keyword": null, - "type": 7, - "flags": 1, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PASSWORD", - "value": "PASSWORD", - "keyword": "PASSWORD", - "type": 1, - "flags": 33, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EXPIRE", - "value": "EXPIRE", - "keyword": "EXPIRE", - "type": 1, - "flags": 1, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NEVER", - "value": "NEVER", - "keyword": "NEVER", - "type": 1, - "flags": 1, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 12, - "idx": 12 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "user", - "column": null, - "expr": "'user'", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "PASSWORD", - "equals": false, - "expr": "EXPIRE", - "value": "EXPIRE" - } - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "NEVER", - "expr": "NEVER", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "USER" - } - }, - "first": 0, - "last": 11 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser6.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser6.in deleted file mode 100644 index 1b1858e8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser6.in +++ /dev/null @@ -1 +0,0 @@ -ALTER USER 'user' ATTRIBUTE '{"baz": "faz", "foo": "moo"}'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser6.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser6.out deleted file mode 100644 index 8cb63970..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser6.out +++ /dev/null @@ -1,188 +0,0 @@ -{ - "query": "ALTER USER 'user' ATTRIBUTE '{\"baz\": \"faz\", \"foo\": \"moo\"}';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER USER 'user' ATTRIBUTE '{\"baz\": \"faz\", \"foo\": \"moo\"}';", - "len": 59, - "last": 59, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USER", - "value": "USER", - "keyword": "USER", - "type": 1, - "flags": 33, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'user'", - "value": "user", - "keyword": null, - "type": 7, - "flags": 1, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ATTRIBUTE", - "value": "ATTRIBUTE", - "keyword": null, - "type": 0, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'{\"baz\": \"faz\", \"foo\": \"moo\"}'", - "value": "{\"baz\": \"faz\", \"foo\": \"moo\"}", - "keyword": null, - "type": 7, - "flags": 1, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 11, - "idx": 11 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "user", - "column": null, - "expr": "'user'", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ATTRIBUTE", - "equals": false, - "expr": "'{\"baz\": \"faz\", \"foo\": \"moo\"}'", - "value": "{\"baz\": \"faz\", \"foo\": \"moo\"}" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "USER" - } - }, - "first": 0, - "last": 9 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser7.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser7.in deleted file mode 100644 index d969c06e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser7.in +++ /dev/null @@ -1 +0,0 @@ -ALTER USER 'user' PASSWORD EXPIRE INTERVAL 180 DAY; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser7.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser7.out deleted file mode 100644 index 7941a37d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser7.out +++ /dev/null @@ -1,258 +0,0 @@ -{ - "query": "ALTER USER 'user' PASSWORD EXPIRE INTERVAL 180 DAY;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER USER 'user' PASSWORD EXPIRE INTERVAL 180 DAY;", - "len": 51, - "last": 51, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USER", - "value": "USER", - "keyword": "USER", - "type": 1, - "flags": 33, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'user'", - "value": "user", - "keyword": null, - "type": 7, - "flags": 1, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PASSWORD", - "value": "PASSWORD", - "keyword": "PASSWORD", - "type": 1, - "flags": 33, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EXPIRE", - "value": "EXPIRE", - "keyword": "EXPIRE", - "type": 1, - "flags": 1, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTERVAL", - "value": "INTERVAL", - "keyword": "INTERVAL", - "type": 1, - "flags": 43, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "180", - "value": 180, - "keyword": null, - "type": 6, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DAY", - "value": "DAY", - "keyword": "DAY", - "type": 1, - "flags": 33, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 17, - "idx": 17 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "user", - "column": null, - "expr": "'user'", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "PASSWORD", - "equals": false, - "expr": "EXPIRE", - "value": "EXPIRE" - } - } - }, - "field": null, - "partitions": null, - "unknown": [ - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "USER" - } - }, - "first": 0, - "last": 15 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser8.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser8.in deleted file mode 100644 index e0ddefc9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser8.in +++ /dev/null @@ -1 +0,0 @@ -ALTER USER 'user' COMMENT '' \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser8.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser8.out deleted file mode 100644 index 5c4548e6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser8.out +++ /dev/null @@ -1,179 +0,0 @@ -{ - "query": "ALTER USER 'user' COMMENT ''", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER USER 'user' COMMENT ''", - "len": 28, - "last": 28, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USER", - "value": "USER", - "keyword": "USER", - "type": 1, - "flags": 33, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'user'", - "value": "user", - "keyword": null, - "type": 7, - "flags": 1, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "''", - "value": "", - "keyword": null, - "type": 7, - "flags": 1, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 10 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "user", - "column": null, - "expr": "'user'", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "COMMENT", - "equals": false, - "expr": "''", - "value": "" - } - } - }, - "field": null, - "partitions": null, - "unknown": [] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "USER" - } - }, - "first": 0, - "last": 9 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser9.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser9.in deleted file mode 100644 index dfe9afed..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser9.in +++ /dev/null @@ -1 +0,0 @@ -ALTER USER 'bob'@'localhost' IDENTIFIED VIA mysql_native_password USING PASSWORD('vp8LAf4#wu2V&Wi*iJWC#3KPotsHzx3u'); diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser9.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser9.out deleted file mode 100644 index beb8feaa..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterUser9.out +++ /dev/null @@ -1,307 +0,0 @@ -{ - "query": "ALTER USER 'bob'@'localhost' IDENTIFIED VIA mysql_native_password USING PASSWORD('vp8LAf4#wu2V&Wi*iJWC#3KPotsHzx3u');\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER USER 'bob'@'localhost' IDENTIFIED VIA mysql_native_password USING PASSWORD('vp8LAf4#wu2V&Wi*iJWC#3KPotsHzx3u');\n", - "len": 118, - "last": 118, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USER", - "value": "USER", - "keyword": "USER", - "type": 1, - "flags": 33, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'bob'@'localhost'", - "value": "bob@localhost", - "keyword": null, - "type": 8, - "flags": 4, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IDENTIFIED", - "value": "IDENTIFIED", - "keyword": "IDENTIFIED", - "type": 1, - "flags": 1, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VIA", - "value": "VIA", - "keyword": null, - "type": 0, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mysql_native_password", - "value": "mysql_native_password", - "keyword": null, - "type": 0, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PASSWORD", - "value": "PASSWORD", - "keyword": "PASSWORD", - "type": 1, - "flags": 33, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'vp8LAf4#wu2V&Wi*iJWC#3KPotsHzx3u'", - "value": "vp8LAf4#wu2V&Wi*iJWC#3KPotsHzx3u", - "keyword": null, - "type": 7, - "flags": 1, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 21, - "idx": 21 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "bob@localhost", - "column": null, - "expr": "'bob'@'localhost'", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "IDENTIFIED" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "VIA", - "expr": "VIA", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "USER" - } - }, - "first": 0, - "last": 18 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterWithInvisible.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterWithInvisible.in deleted file mode 100644 index fc92687e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterWithInvisible.in +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE t MODIFY x INT INVISIBLE, MODIFY y INT, MODIFY z INT NOT NULL DEFAULT 4; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterWithInvisible.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterWithInvisible.out deleted file mode 100644 index fe385a30..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAlterWithInvisible.out +++ /dev/null @@ -1,523 +0,0 @@ -{ - "query": "ALTER TABLE t MODIFY x INT INVISIBLE, MODIFY y INT, MODIFY z INT NOT NULL DEFAULT 4;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ALTER TABLE t MODIFY x INT INVISIBLE, MODIFY y INT, MODIFY z INT NOT NULL DEFAULT 4;\n", - "len": 85, - "last": 85, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t", - "value": "t", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MODIFY", - "value": "MODIFY", - "keyword": "MODIFY", - "type": 1, - "flags": 1, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "x", - "value": "x", - "keyword": "X", - "type": 1, - "flags": 33, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INVISIBLE", - "value": "INVISIBLE", - "keyword": null, - "type": 0, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MODIFY", - "value": "MODIFY", - "keyword": "MODIFY", - "type": 1, - "flags": 1, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "y", - "value": "y", - "keyword": "Y", - "type": 1, - "flags": 33, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MODIFY", - "value": "MODIFY", - "keyword": "MODIFY", - "type": 1, - "flags": 1, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "z", - "value": "z", - "keyword": null, - "type": 0, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "4", - "value": 4, - "keyword": null, - "type": 6, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 36, - "idx": 36 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "t", - "column": null, - "expr": "t", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "MODIFY" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "x", - "expr": "x", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - } - ] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "MODIFY" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "y", - "expr": "y", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@21" - } - ] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "MODIFY" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "z", - "expr": "z", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@28" - }, - { - "@type": "@29" - }, - { - "@type": "@30" - }, - { - "@type": "@31" - }, - { - "@type": "@32" - }, - { - "@type": "@33" - }, - { - "@type": "@34" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 0, - "last": 33 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAnalyzeErr1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAnalyzeErr1.in deleted file mode 100644 index f9f848bb..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAnalyzeErr1.in +++ /dev/null @@ -1 +0,0 @@ -ANALYZE NO_WRITE_TO_BINLOG \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAnalyzeErr1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAnalyzeErr1.out deleted file mode 100644 index e887467f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAnalyzeErr1.out +++ /dev/null @@ -1,94 +0,0 @@ -{ - "query": "ANALYZE NO_WRITE_TO_BINLOG", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ANALYZE NO_WRITE_TO_BINLOG", - "len": 26, - "last": 26, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ANALYZE", - "value": "ANALYZE", - "keyword": "ANALYZE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NO_WRITE_TO_BINLOG", - "value": "NO_WRITE_TO_BINLOG", - "keyword": "NO_WRITE_TO_BINLOG", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 4, - "idx": 4 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ExplainStatement", - "bodyParser": null, - "statementAlias": "ANALYZE", - "connectionId": null, - "explainedDatabase": null, - "explainedTable": null, - "explainedColumn": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 2 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected token.", - { - "@type": "@4" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAnalyzeErr2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAnalyzeErr2.in deleted file mode 100644 index b8f450db..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAnalyzeErr2.in +++ /dev/null @@ -1 +0,0 @@ -ANALYZE \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAnalyzeErr2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAnalyzeErr2.out deleted file mode 100644 index 2c56fd68..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAnalyzeErr2.out +++ /dev/null @@ -1,65 +0,0 @@ -{ - "query": "ANALYZE", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ANALYZE", - "len": 7, - "last": 7, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ANALYZE", - "value": "ANALYZE", - "keyword": "ANALYZE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 2, - "idx": 2 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ExplainStatement", - "bodyParser": null, - "statementAlias": "ANALYZE", - "connectionId": null, - "explainedDatabase": null, - "explainedTable": null, - "explainedColumn": null, - "options": null, - "first": 0, - "last": 0 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAnalyzeTable.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAnalyzeTable.in deleted file mode 100644 index abb41d8b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAnalyzeTable.in +++ /dev/null @@ -1 +0,0 @@ -ANALYZE TABLE tbl \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAnalyzeTable.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAnalyzeTable.out deleted file mode 100644 index cc59e1ae..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAnalyzeTable.out +++ /dev/null @@ -1,112 +0,0 @@ -{ - "query": "ANALYZE TABLE tbl", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ANALYZE TABLE tbl", - "len": 17, - "last": 17, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ANALYZE", - "value": "ANALYZE", - "keyword": "ANALYZE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tbl", - "value": "tbl", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 6, - "idx": 6 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AnalyzeStatement", - "tables": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "tbl", - "column": null, - "expr": "tbl", - "alias": null, - "function": null, - "subquery": null - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "TABLE" - } - }, - "first": 0, - "last": 4 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAnalyzeTable1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAnalyzeTable1.in deleted file mode 100644 index 7baab1cf..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAnalyzeTable1.in +++ /dev/null @@ -1 +0,0 @@ -ANALYZE NO_WRITE_TO_BINLOG TABLE tbl \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAnalyzeTable1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAnalyzeTable1.out deleted file mode 100644 index ad9b3d2f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseAnalyzeTable1.out +++ /dev/null @@ -1,131 +0,0 @@ -{ - "query": "ANALYZE NO_WRITE_TO_BINLOG TABLE tbl", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ANALYZE NO_WRITE_TO_BINLOG TABLE tbl", - "len": 36, - "last": 36, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ANALYZE", - "value": "ANALYZE", - "keyword": "ANALYZE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NO_WRITE_TO_BINLOG", - "value": "NO_WRITE_TO_BINLOG", - "keyword": "NO_WRITE_TO_BINLOG", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tbl", - "value": "tbl", - "keyword": null, - "type": 0, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 8, - "idx": 8 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AnalyzeStatement", - "tables": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "tbl", - "column": null, - "expr": "tbl", - "alias": null, - "function": null, - "subquery": null - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "TABLE", - "2": "NO_WRITE_TO_BINLOG" - } - }, - "first": 0, - "last": 6 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseArrayErr1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseArrayErr1.in deleted file mode 100644 index af9acdd3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseArrayErr1.in +++ /dev/null @@ -1 +0,0 @@ -SELECT * FROM foo PARTITION bar, baz); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseArrayErr1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseArrayErr1.out deleted file mode 100644 index ca43c84d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseArrayErr1.out +++ /dev/null @@ -1,267 +0,0 @@ -{ - "query": "SELECT * FROM foo PARTITION bar, baz);", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM foo PARTITION bar, baz);", - "len": 38, - "last": 38, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "bar", - "value": "bar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "baz", - "value": "baz", - "keyword": null, - "type": 0, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 17, - "idx": 17 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "foo", - "column": null, - "expr": "foo", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [], - "values": [] - }, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 14 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "An opening bracket was expected.", - { - "@type": "@12" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@13" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@15" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@16" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseArrayErr3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseArrayErr3.in deleted file mode 100644 index 128a77a7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseArrayErr3.in +++ /dev/null @@ -1 +0,0 @@ -SELECT * FROM foo PARTITION (bar, baz; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseArrayErr3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseArrayErr3.out deleted file mode 100644 index 81a1c292..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseArrayErr3.out +++ /dev/null @@ -1,252 +0,0 @@ -{ - "query": "SELECT * FROM foo PARTITION (bar, baz;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM foo PARTITION (bar, baz;", - "len": 38, - "last": 38, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "bar", - "value": "bar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "baz", - "value": "baz", - "keyword": null, - "type": 0, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 17, - "idx": 17 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "foo", - "column": null, - "expr": "foo", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "bar", - "baz" - ], - "values": [ - "bar", - "baz" - ] - }, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 15 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "A closing bracket was expected.", - { - "@type": "@17" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall.in deleted file mode 100644 index 871e666d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall.in +++ /dev/null @@ -1 +0,0 @@ -CALL foo(); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall.out deleted file mode 100644 index f7552612..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall.out +++ /dev/null @@ -1,113 +0,0 @@ -{ - "query": "CALL foo();", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CALL foo();", - "len": 11, - "last": 11, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CALL", - "value": "CALL", - "keyword": "CALL", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 7, - "idx": 7 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CallStatement", - "call": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\FunctionCall", - "name": "foo", - "parameters": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [], - "values": [] - } - }, - "options": null, - "first": 0, - "last": 4 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall2.in deleted file mode 100644 index 76fd802c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall2.in +++ /dev/null @@ -1 +0,0 @@ -CALL foo(@bar, @baz); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall2.out deleted file mode 100644 index 28bec447..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall2.out +++ /dev/null @@ -1,155 +0,0 @@ -{ - "query": "CALL foo(@bar, @baz);", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CALL foo(@bar, @baz);", - "len": 21, - "last": 21, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CALL", - "value": "CALL", - "keyword": "CALL", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@bar", - "value": "bar", - "keyword": null, - "type": 8, - "flags": 1, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@baz", - "value": "baz", - "keyword": null, - "type": 8, - "flags": 1, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 11, - "idx": 11 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CallStatement", - "call": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\FunctionCall", - "name": "foo", - "parameters": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "@bar", - "@baz" - ], - "values": [ - "bar", - "baz" - ] - } - }, - "options": null, - "first": 0, - "last": 8 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall3.in deleted file mode 100644 index c150f9a6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall3.in +++ /dev/null @@ -1 +0,0 @@ -CALL foo; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall3.out deleted file mode 100644 index 9d893de1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall3.out +++ /dev/null @@ -1,91 +0,0 @@ -{ - "query": "CALL foo;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CALL foo;", - "len": 9, - "last": 9, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CALL", - "value": "CALL", - "keyword": "CALL", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 5, - "idx": 5 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CallStatement", - "call": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\FunctionCall", - "name": "foo", - "parameters": null - }, - "options": null, - "first": 0, - "last": 2 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall4.in deleted file mode 100644 index 1fb2bf64..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall4.in +++ /dev/null @@ -1 +0,0 @@ -call e();call f \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall4.out deleted file mode 100644 index 299ed505..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall4.out +++ /dev/null @@ -1,151 +0,0 @@ -{ - "query": "call e();call f", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "call e();call f", - "len": 15, - "last": 15, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "call", - "value": "CALL", - "keyword": "CALL", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "e", - "value": "e", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "call", - "value": "CALL", - "keyword": "CALL", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "f", - "value": "f", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 10 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CallStatement", - "call": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\FunctionCall", - "name": "e", - "parameters": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [], - "values": [] - } - }, - "options": null, - "first": 0, - "last": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CallStatement", - "call": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\FunctionCall", - "name": "f", - "parameters": null - }, - "options": null, - "first": 5, - "last": 8 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall5.in deleted file mode 100644 index c59882c0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall5.in +++ /dev/null @@ -1 +0,0 @@ -call e;call f \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall5.out deleted file mode 100644 index f63f48db..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCall5.out +++ /dev/null @@ -1,129 +0,0 @@ -{ - "query": "call e;call f", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "call e;call f", - "len": 13, - "last": 13, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "call", - "value": "CALL", - "keyword": "CALL", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "e", - "value": "e", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "call", - "value": "CALL", - "keyword": "CALL", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "f", - "value": "f", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 8, - "idx": 8 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CallStatement", - "call": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\FunctionCall", - "name": "e", - "parameters": null - }, - "options": null, - "first": 0, - "last": 2 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CallStatement", - "call": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\FunctionCall", - "name": "f", - "parameters": null - }, - "options": null, - "first": 3, - "last": 6 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateDatabase.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateDatabase.in deleted file mode 100644 index a163bea1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateDatabase.in +++ /dev/null @@ -1 +0,0 @@ -CREATE DATABASE IF NOT EXISTS pma DEFAULT CHARSET 'utf8'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateDatabase.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateDatabase.out deleted file mode 100644 index c6ec6fb7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateDatabase.out +++ /dev/null @@ -1,198 +0,0 @@ -{ - "query": "CREATE DATABASE IF NOT EXISTS pma DEFAULT CHARSET 'utf8';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE DATABASE IF NOT EXISTS pma DEFAULT CHARSET 'utf8';", - "len": 57, - "last": 57, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DATABASE", - "value": "DATABASE", - "keyword": "DATABASE", - "type": 1, - "flags": 35, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IF NOT EXISTS", - "value": "IF NOT EXISTS", - "keyword": "IF NOT EXISTS", - "type": 1, - "flags": 7, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pma", - "value": "pma", - "keyword": null, - "type": 0, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT CHARSET", - "value": "DEFAULT CHARSET", - "keyword": "DEFAULT CHARSET", - "type": 1, - "flags": 7, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'utf8'", - "value": "utf8", - "keyword": null, - "type": 7, - "flags": 1, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 13, - "idx": 13 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "pma", - "table": null, - "column": null, - "expr": "pma", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "DEFAULT CHARSET", - "equals": true, - "expr": "'utf8'", - "value": "utf8" - } - } - }, - "fields": null, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "DATABASE", - "7": "IF NOT EXISTS" - } - }, - "first": 0, - "last": 10 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateDatabaseErr.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateDatabaseErr.in deleted file mode 100644 index 6e65e679..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateDatabaseErr.in +++ /dev/null @@ -1 +0,0 @@ -CREATE DATABASE IF NOT EXISTS pma ENGINE='InnoDB' DEFAULT CHARSET 'utf8' \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateDatabaseErr.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateDatabaseErr.out deleted file mode 100644 index f7b12c05..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateDatabaseErr.out +++ /dev/null @@ -1,226 +0,0 @@ -{ - "query": "CREATE DATABASE IF NOT EXISTS pma ENGINE='InnoDB' DEFAULT CHARSET 'utf8'", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE DATABASE IF NOT EXISTS pma ENGINE='InnoDB' DEFAULT CHARSET 'utf8'", - "len": 72, - "last": 72, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DATABASE", - "value": "DATABASE", - "keyword": "DATABASE", - "type": 1, - "flags": 35, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IF NOT EXISTS", - "value": "IF NOT EXISTS", - "keyword": "IF NOT EXISTS", - "type": 1, - "flags": 7, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pma", - "value": "pma", - "keyword": null, - "type": 0, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENGINE", - "value": "ENGINE", - "keyword": "ENGINE", - "type": 1, - "flags": 1, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'InnoDB'", - "value": "InnoDB", - "keyword": null, - "type": 7, - "flags": 1, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT CHARSET", - "value": "DEFAULT CHARSET", - "keyword": "DEFAULT CHARSET", - "type": 1, - "flags": 7, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'utf8'", - "value": "utf8", - "keyword": null, - "type": 7, - "flags": 1, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 16, - "idx": 17 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "pma", - "table": null, - "column": null, - "expr": "pma", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": null, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "DATABASE", - "7": "IF NOT EXISTS" - } - }, - "first": 0, - "last": 7 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unrecognized statement type.", - { - "@type": "@10" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateFunction.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateFunction.in deleted file mode 100644 index f85c125e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateFunction.in +++ /dev/null @@ -1,7 +0,0 @@ -DELIMITER $$ -CREATE FUNCTION F_TEST(uid INT) RETURNS VARCHAR -BEGIN - DECLARE username VARCHAR DEFAULT ""; - SELECT username INTO username FROM users WHERE ID = uid; - RETURN username; -END \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateFunction.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateFunction.out deleted file mode 100644 index aed2f612..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateFunction.out +++ /dev/null @@ -1,757 +0,0 @@ -{ - "query": "DELIMITER $$\nCREATE FUNCTION F_TEST(uid INT) RETURNS VARCHAR\nBEGIN\n DECLARE username VARCHAR DEFAULT \"\";\n SELECT username INTO username FROM users WHERE ID = uid;\n RETURN username;\nEND", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELIMITER $$\nCREATE FUNCTION F_TEST(uid INT) RETURNS VARCHAR\nBEGIN\n DECLARE username VARCHAR DEFAULT \"\";\n SELECT username INTO username FROM users WHERE ID = uid;\n RETURN username;\nEND", - "len": 193, - "last": 193, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELIMITER", - "value": "DELIMITER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "$$", - "value": "$$", - "keyword": null, - "type": 9, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FUNCTION", - "value": "FUNCTION", - "keyword": "FUNCTION", - "type": 1, - "flags": 1, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "F_TEST", - "value": "F_TEST", - "keyword": null, - "type": 0, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "uid", - "value": "uid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RETURNS", - "value": "RETURNS", - "keyword": "RETURNS", - "type": 1, - "flags": 1, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VARCHAR", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BEGIN", - "value": "BEGIN", - "keyword": "BEGIN", - "type": 1, - "flags": 1, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DECLARE", - "value": "DECLARE", - "keyword": "DECLARE", - "type": 1, - "flags": 3, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VARCHAR", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"\"", - "value": "", - "keyword": null, - "type": 7, - "flags": 2, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "users", - "value": "users", - "keyword": null, - "type": 0, - "flags": 0, - "position": 147 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 153 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ID", - "value": "ID", - "keyword": null, - "type": 0, - "flags": 0, - "position": 159 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 162 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 163 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "uid", - "value": "uid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 164 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 168 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RETURN", - "value": "RETURN", - "keyword": "RETURN", - "type": 1, - "flags": 3, - "position": 173 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 179 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 180 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 188 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 189 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "END", - "value": "END", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 190 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 60, - "idx": 60 - }, - "delimiter": "$$", - "delimiterLen": 2, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "F_TEST", - "column": null, - "expr": "F_TEST", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": null, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "parameters": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ParameterDefinition", - "name": "uid", - "inOut": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - } - ], - "body": [ - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - }, - { - "@type": "@27" - }, - { - "@type": "@28" - }, - { - "@type": "@29" - }, - { - "@type": "@30" - }, - { - "@type": "@31" - }, - { - "@type": "@32" - }, - { - "@type": "@33" - }, - { - "@type": "@34" - }, - { - "@type": "@35" - }, - { - "@type": "@36" - }, - { - "@type": "@37" - }, - { - "@type": "@38" - }, - { - "@type": "@39" - }, - { - "@type": "@40" - }, - { - "@type": "@41" - }, - { - "@type": "@42" - }, - { - "@type": "@43" - }, - { - "@type": "@44" - }, - { - "@type": "@45" - }, - { - "@type": "@46" - }, - { - "@type": "@47" - }, - { - "@type": "@48" - }, - { - "@type": "@49" - }, - { - "@type": "@50" - }, - { - "@type": "@51" - }, - { - "@type": "@52" - }, - { - "@type": "@53" - }, - { - "@type": "@54" - }, - { - "@type": "@55" - }, - { - "@type": "@56" - }, - { - "@type": "@57" - }, - { - "@type": "@58" - }, - { - "@type": "@59" - }, - { - "@type": "@60" - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "FUNCTION" - } - }, - "first": 4, - "last": 59 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateFunctionErr1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateFunctionErr1.in deleted file mode 100644 index efd4e1a1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateFunctionErr1.in +++ /dev/null @@ -1,7 +0,0 @@ -DELIMITER $$ -CREATE FUNCTION F_TEST(uid INT) -BEGIN - DECLARE username VARCHAR DEFAULT ""; - SELECT username INTO username FROM users WHERE ID = uid; - RETURN username; -END \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateFunctionErr1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateFunctionErr1.out deleted file mode 100644 index c2253cca..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateFunctionErr1.out +++ /dev/null @@ -1,715 +0,0 @@ -{ - "query": "DELIMITER $$\nCREATE FUNCTION F_TEST(uid INT)\nBEGIN\n DECLARE username VARCHAR DEFAULT \"\";\n SELECT username INTO username FROM users WHERE ID = uid;\n RETURN username;\nEND", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELIMITER $$\nCREATE FUNCTION F_TEST(uid INT)\nBEGIN\n DECLARE username VARCHAR DEFAULT \"\";\n SELECT username INTO username FROM users WHERE ID = uid;\n RETURN username;\nEND", - "len": 177, - "last": 177, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELIMITER", - "value": "DELIMITER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "$$", - "value": "$$", - "keyword": null, - "type": 9, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FUNCTION", - "value": "FUNCTION", - "keyword": "FUNCTION", - "type": 1, - "flags": 1, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "F_TEST", - "value": "F_TEST", - "keyword": null, - "type": 0, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "uid", - "value": "uid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BEGIN", - "value": "BEGIN", - "keyword": "BEGIN", - "type": 1, - "flags": 1, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DECLARE", - "value": "DECLARE", - "keyword": "DECLARE", - "type": 1, - "flags": 3, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VARCHAR", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"\"", - "value": "", - "keyword": null, - "type": 7, - "flags": 2, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "users", - "value": "users", - "keyword": null, - "type": 0, - "flags": 0, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 137 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ID", - "value": "ID", - "keyword": null, - "type": 0, - "flags": 0, - "position": 143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 147 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "uid", - "value": "uid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RETURN", - "value": "RETURN", - "keyword": "RETURN", - "type": 1, - "flags": 3, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 163 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 164 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 172 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 173 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "END", - "value": "END", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 56, - "idx": 56 - }, - "delimiter": "$$", - "delimiterLen": 2, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "F_TEST", - "column": null, - "expr": "F_TEST", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": null, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ParameterDefinition", - "name": "uid", - "inOut": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - } - ], - "body": [ - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - }, - { - "@type": "@27" - }, - { - "@type": "@28" - }, - { - "@type": "@29" - }, - { - "@type": "@30" - }, - { - "@type": "@31" - }, - { - "@type": "@32" - }, - { - "@type": "@33" - }, - { - "@type": "@34" - }, - { - "@type": "@35" - }, - { - "@type": "@36" - }, - { - "@type": "@37" - }, - { - "@type": "@38" - }, - { - "@type": "@39" - }, - { - "@type": "@40" - }, - { - "@type": "@41" - }, - { - "@type": "@42" - }, - { - "@type": "@43" - }, - { - "@type": "@44" - }, - { - "@type": "@45" - }, - { - "@type": "@46" - }, - { - "@type": "@47" - }, - { - "@type": "@48" - }, - { - "@type": "@49" - }, - { - "@type": "@50" - }, - { - "@type": "@51" - }, - { - "@type": "@52" - }, - { - "@type": "@53" - }, - { - "@type": "@54" - }, - { - "@type": "@55" - }, - { - "@type": "@56" - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "FUNCTION" - } - }, - "first": 4, - "last": 55 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "A \"RETURNS\" keyword was expected.", - { - "@type": "@17" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateFunctionErr2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateFunctionErr2.in deleted file mode 100644 index 1ff1af38..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateFunctionErr2.in +++ /dev/null @@ -1 +0,0 @@ -CREATE FUNCTION test() RETURNS \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateFunctionErr2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateFunctionErr2.out deleted file mode 100644 index 60b8177f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateFunctionErr2.out +++ /dev/null @@ -1,163 +0,0 @@ -{ - "query": "CREATE FUNCTION test() RETURNS", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE FUNCTION test() RETURNS", - "len": 30, - "last": 30, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FUNCTION", - "value": "FUNCTION", - "keyword": "FUNCTION", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RETURNS", - "value": "RETURNS", - "keyword": "RETURNS", - "type": 1, - "flags": 1, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 12 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test", - "column": null, - "expr": "test", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": null, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": [], - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "FUNCTION" - } - }, - "first": 0, - "last": 11 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateFunctionErr3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateFunctionErr3.in deleted file mode 100644 index 80172a5a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateFunctionErr3.in +++ /dev/null @@ -1,3 +0,0 @@ -DELIMITER $$ -CREATE FUNCTION coincide -END;$$ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateFunctionErr3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateFunctionErr3.out deleted file mode 100644 index b710592e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateFunctionErr3.out +++ /dev/null @@ -1,216 +0,0 @@ -{ - "query": "DELIMITER $$\nCREATE FUNCTION coincide\nEND;$$\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELIMITER $$\nCREATE FUNCTION coincide\nEND;$$\n", - "len": 45, - "last": 45, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELIMITER", - "value": "DELIMITER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "$$", - "value": "$$", - "keyword": null, - "type": 9, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FUNCTION", - "value": "FUNCTION", - "keyword": "FUNCTION", - "type": 1, - "flags": 1, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "coincide", - "value": "coincide", - "keyword": null, - "type": 0, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "END", - "value": "END", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "$$", - "value": "$$", - "keyword": null, - "type": 9, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 15, - "idx": 17 - }, - "delimiter": "$$", - "delimiterLen": 2, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "coincide", - "column": null, - "expr": "coincide", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": null, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": [], - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "FUNCTION" - } - }, - "first": 4, - "last": 16 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "A \"RETURNS\" keyword was expected.", - { - "@type": "@12" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateOrReplaceView1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateOrReplaceView1.in deleted file mode 100644 index 063b551a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateOrReplaceView1.in +++ /dev/null @@ -1 +0,0 @@ -CREATE OR REPLACE VIEW xviewmytable AS SELECT mytable.id AS id, mytable.personid AS personid FROM mytable WHERE (mytable.birth > '1990-01-19') GROUP BY mytable.personid ; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateOrReplaceView1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateOrReplaceView1.out deleted file mode 100644 index f906c1ac..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateOrReplaceView1.out +++ /dev/null @@ -1,629 +0,0 @@ -{ - "query": "CREATE OR REPLACE VIEW xviewmytable AS SELECT mytable.id AS id, mytable.personid AS personid FROM mytable WHERE (mytable.birth > '1990-01-19') GROUP BY mytable.personid ;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE OR REPLACE VIEW xviewmytable AS SELECT mytable.id AS id, mytable.personid AS personid FROM mytable WHERE (mytable.birth > '1990-01-19') GROUP BY mytable.personid ;", - "len": 172, - "last": 172, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OR REPLACE", - "value": "OR REPLACE", - "keyword": "OR REPLACE", - "type": 1, - "flags": 7, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VIEW", - "value": "VIEW", - "keyword": "VIEW", - "type": 1, - "flags": 1, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "xviewmytable", - "value": "xviewmytable", - "keyword": null, - "type": 0, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mytable", - "value": "mytable", - "keyword": null, - "type": 0, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mytable", - "value": "mytable", - "keyword": null, - "type": 0, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "personid", - "value": "personid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "personid", - "value": "personid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mytable", - "value": "mytable", - "keyword": null, - "type": 0, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mytable", - "value": "mytable", - "keyword": null, - "type": 0, - "flags": 0, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "birth", - "value": "birth", - "keyword": null, - "type": 0, - "flags": 0, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ">", - "value": ">", - "keyword": null, - "type": 2, - "flags": 2, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'1990-01-19'", - "value": "1990-01-19", - "keyword": null, - "type": 7, - "flags": 1, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "GROUP BY", - "value": "GROUP BY", - "keyword": "GROUP BY", - "type": 1, - "flags": 7, - "position": 144 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mytable", - "value": "mytable", - "keyword": null, - "type": 0, - "flags": 0, - "position": 153 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 160 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "personid", - "value": "personid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 169 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 171 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 53, - "idx": 53 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "xviewmytable", - "column": null, - "expr": "xviewmytable", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": null, - "with": null, - "select": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "mytable", - "column": "id", - "expr": "mytable.id", - "alias": "id", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "mytable", - "column": "personid", - "expr": "mytable.personid", - "alias": "personid", - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "mytable", - "column": null, - "expr": "mytable", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "mytable", - "birth", - "1990-01-19" - ], - "isOperator": false, - "expr": "(mytable.birth > '1990-01-19')" - } - ], - "group": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\GroupKeyword", - "type": null, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "mytable", - "column": "personid", - "expr": "mytable.personid", - "alias": null, - "function": null, - "subquery": null - } - } - ], - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 10, - "last": 50 - }, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "OR REPLACE", - "6": "VIEW" - } - }, - "first": 0, - "last": 51 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure.in deleted file mode 100644 index 019eeb1f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure.in +++ /dev/null @@ -1,5 +0,0 @@ -DELIMITER $$ -CREATE PROCEDURE P_TEST(uid INT) -BEGIN - SELECT username FROM users WHERE ID = uid; -END \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure.out deleted file mode 100644 index c9cdf49b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure.out +++ /dev/null @@ -1,473 +0,0 @@ -{ - "query": "DELIMITER $$\nCREATE PROCEDURE P_TEST(uid INT)\nBEGIN\n SELECT username FROM users WHERE ID = uid;\nEND", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELIMITER $$\nCREATE PROCEDURE P_TEST(uid INT)\nBEGIN\n SELECT username FROM users WHERE ID = uid;\nEND", - "len": 102, - "last": 102, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELIMITER", - "value": "DELIMITER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "$$", - "value": "$$", - "keyword": null, - "type": 9, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PROCEDURE", - "value": "PROCEDURE", - "keyword": "PROCEDURE", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "P_TEST", - "value": "P_TEST", - "keyword": null, - "type": 0, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "uid", - "value": "uid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BEGIN", - "value": "BEGIN", - "keyword": "BEGIN", - "type": 1, - "flags": 1, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "users", - "value": "users", - "keyword": null, - "type": 0, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ID", - "value": "ID", - "keyword": null, - "type": 0, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "uid", - "value": "uid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "END", - "value": "END", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 36, - "idx": 36 - }, - "delimiter": "$$", - "delimiterLen": 2, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "P_TEST", - "column": null, - "expr": "P_TEST", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": null, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ParameterDefinition", - "name": "uid", - "inOut": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - } - ], - "body": [ - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - }, - { - "@type": "@27" - }, - { - "@type": "@28" - }, - { - "@type": "@29" - }, - { - "@type": "@30" - }, - { - "@type": "@31" - }, - { - "@type": "@32" - }, - { - "@type": "@33" - }, - { - "@type": "@34" - }, - { - "@type": "@35" - }, - { - "@type": "@36" - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "PROCEDURE" - } - }, - "first": 4, - "last": 35 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure1.in deleted file mode 100644 index 17d67447..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure1.in +++ /dev/null @@ -1 +0,0 @@ -CREATE DEFINER=`root`@`%` PROCEDURE `test2`(IN `_var` INT) NOT DETERMINISTIC NO SQL SQL SECURITY INVOKER SELECT _var \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure1.out deleted file mode 100644 index 132a68c9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure1.out +++ /dev/null @@ -1,406 +0,0 @@ -{ - "query": "CREATE DEFINER=`root`@`%` PROCEDURE `test2`(IN `_var` INT) NOT DETERMINISTIC NO SQL SQL SECURITY INVOKER SELECT _var", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE DEFINER=`root`@`%` PROCEDURE `test2`(IN `_var` INT) NOT DETERMINISTIC NO SQL SQL SECURITY INVOKER SELECT _var", - "len": 116, - "last": 116, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFINER", - "value": "DEFINER", - "keyword": "DEFINER", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`root`@`%`", - "value": "root@%", - "keyword": null, - "type": 8, - "flags": 4, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PROCEDURE", - "value": "PROCEDURE", - "keyword": "PROCEDURE", - "type": 1, - "flags": 3, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`test2`", - "value": "test2", - "keyword": null, - "type": 8, - "flags": 2, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`_var`", - "value": "_var", - "keyword": null, - "type": 8, - "flags": 2, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT", - "value": "NOT", - "keyword": "NOT", - "type": 1, - "flags": 3, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DETERMINISTIC", - "value": "DETERMINISTIC", - "keyword": "DETERMINISTIC", - "type": 1, - "flags": 3, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NO SQL", - "value": "NO SQL", - "keyword": "NO SQL", - "type": 1, - "flags": 7, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SQL SECURITY", - "value": "SQL SECURITY", - "keyword": "SQL SECURITY", - "type": 1, - "flags": 7, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INVOKER", - "value": "INVOKER", - "keyword": "INVOKER", - "type": 1, - "flags": 1, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "_var", - "value": "_var", - "keyword": null, - "type": 0, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 31, - "idx": 31 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test2", - "column": null, - "expr": "`test2`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "NOT", - "equals": false, - "expr": "DETERMINISTIC", - "value": "DETERMINISTIC" - }, - "4": "NO SQL", - "6": { - "name": "SQL SECURITY", - "equals": false, - "expr": "INVOKER", - "value": "INVOKER" - } - } - }, - "fields": null, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ParameterDefinition", - "name": "_var", - "inOut": "IN", - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - } - ], - "body": [ - { - "@type": "@29" - }, - { - "@type": "@30" - }, - { - "@type": "@31" - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": { - "name": "DEFINER", - "equals": true, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "root@%", - "expr": "`root`@`%`", - "alias": null, - "function": null, - "subquery": null - }, - "value": "`root`@`%`" - }, - "6": "PROCEDURE" - } - }, - "first": 0, - "last": 30 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure2.in deleted file mode 100644 index 061aee35..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure2.in +++ /dev/null @@ -1,5 +0,0 @@ -DELIMITER $$ -CREATE PROCEDURE P_TEST(IN uid INT, IN unused VARCHAR) -BEGIN - SELECT username FROM users WHERE ID = uid; -END \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure2.out deleted file mode 100644 index 6f3f218f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure2.out +++ /dev/null @@ -1,568 +0,0 @@ -{ - "query": "DELIMITER $$\nCREATE PROCEDURE P_TEST(IN uid INT, IN unused VARCHAR)\nBEGIN\n SELECT username FROM users WHERE ID = uid;\nEND", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELIMITER $$\nCREATE PROCEDURE P_TEST(IN uid INT, IN unused VARCHAR)\nBEGIN\n SELECT username FROM users WHERE ID = uid;\nEND", - "len": 124, - "last": 124, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELIMITER", - "value": "DELIMITER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "$$", - "value": "$$", - "keyword": null, - "type": 9, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PROCEDURE", - "value": "PROCEDURE", - "keyword": "PROCEDURE", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "P_TEST", - "value": "P_TEST", - "keyword": null, - "type": 0, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "uid", - "value": "uid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "unused", - "value": "unused", - "keyword": null, - "type": 0, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VARCHAR", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BEGIN", - "value": "BEGIN", - "keyword": "BEGIN", - "type": 1, - "flags": 1, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "users", - "value": "users", - "keyword": null, - "type": 0, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ID", - "value": "ID", - "keyword": null, - "type": 0, - "flags": 0, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "uid", - "value": "uid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "END", - "value": "END", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 45, - "idx": 45 - }, - "delimiter": "$$", - "delimiterLen": 2, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "P_TEST", - "column": null, - "expr": "P_TEST", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": null, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ParameterDefinition", - "name": "uid", - "inOut": "IN", - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ParameterDefinition", - "name": "unused", - "inOut": "IN", - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - } - ], - "body": [ - { - "@type": "@26" - }, - { - "@type": "@27" - }, - { - "@type": "@28" - }, - { - "@type": "@29" - }, - { - "@type": "@30" - }, - { - "@type": "@31" - }, - { - "@type": "@32" - }, - { - "@type": "@33" - }, - { - "@type": "@34" - }, - { - "@type": "@35" - }, - { - "@type": "@36" - }, - { - "@type": "@37" - }, - { - "@type": "@38" - }, - { - "@type": "@39" - }, - { - "@type": "@40" - }, - { - "@type": "@41" - }, - { - "@type": "@42" - }, - { - "@type": "@43" - }, - { - "@type": "@44" - }, - { - "@type": "@45" - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "PROCEDURE" - } - }, - "first": 4, - "last": 44 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure3.in deleted file mode 100644 index 60b7559d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure3.in +++ /dev/null @@ -1,29 +0,0 @@ -DELIMITER $$ -CREATE DEFINER=`user`@`localhost` PROCEDURE `multiDBqueryRun_V1`(IN `query` TEXT, IN `table_name_var` VARCHAR(255), IN `columns_used_var` TEXT, IN `where_text_var` TEXT, IN `separator_value_var` VARCHAR(255)) COMMENT 'Query: SingleDB → MultiDB (All DBs) + run it' NOT DETERMINISTIC MODIFIES SQL DATA SQL SECURITY INVOKER BEGIN -SET @TABLE_NAME = table_name_var; -SET @WHERE_TEXT = where_text_var; -SET @COLUMNS_USED = columns_used_var; -SET @MULTIDB_QUERY = CONCAT('SELECT "$MULTIDB" FROM `$MULTIDB`.', @TABLE_NAME, @WHERE_TEXT); - --- EXECUTION -- -CREATE TEMPORARY TABLE `MULTIDB_TEMP_DB_TBL_COLS` AS -SELECT * FROM ( - SELECT TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME - FROM INFORMATION_SCHEMA.COLUMNS - WHERE - TABLE_SCHEMA NOT IN('mysql', 'test', 'tmp', 'information_schema', 'sys', 'performance_schema') AND - TABLE_NAME = @TABLE_NAME AND - FIND_IN_SET(COLUMN_NAME, @COLUMNS_USED) -) tbl -GROUP BY - TABLE_SCHEMA, - TABLE_NAME; - -SELECT GROUP_CONCAT(REPLACE(@MULTIDB_QUERY, '$MULTIDB', CONCAT('', TABLE_SCHEMA, '')) SEPARATOR "\nUNION ALL\n") -INTO @stmt_sql -FROM `MULTIDB_TEMP_DB_TBL_COLS`; - -PREPARE stmt FROM @stmt_sql; -EXECUTE stmt; -DEALLOCATE PREPARE stmt; -END \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure3.out deleted file mode 100644 index 05a4867a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure3.out +++ /dev/null @@ -1,3185 +0,0 @@ -{ - "query": "DELIMITER $$\nCREATE DEFINER=`user`@`localhost` PROCEDURE `multiDBqueryRun_V1`(IN `query` TEXT, IN `table_name_var` VARCHAR(255), IN `columns_used_var` TEXT, IN `where_text_var` TEXT, IN `separator_value_var` VARCHAR(255)) COMMENT 'Query: SingleDB → MultiDB (All DBs) + run it' NOT DETERMINISTIC MODIFIES SQL DATA SQL SECURITY INVOKER BEGIN\nSET @TABLE_NAME = table_name_var;\nSET @WHERE_TEXT = where_text_var;\nSET @COLUMNS_USED = columns_used_var;\nSET @MULTIDB_QUERY = CONCAT('SELECT \"$MULTIDB\" FROM `$MULTIDB`.', @TABLE_NAME, @WHERE_TEXT);\n\n-- EXECUTION --\nCREATE TEMPORARY TABLE `MULTIDB_TEMP_DB_TBL_COLS` AS\nSELECT * FROM (\n SELECT TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME\n FROM INFORMATION_SCHEMA.COLUMNS\n WHERE\n TABLE_SCHEMA NOT IN('mysql', 'test', 'tmp', 'information_schema', 'sys', 'performance_schema') AND\n TABLE_NAME = @TABLE_NAME AND\n FIND_IN_SET(COLUMN_NAME, @COLUMNS_USED)\n) tbl\nGROUP BY\n TABLE_SCHEMA,\n TABLE_NAME;\n\nSELECT GROUP_CONCAT(REPLACE(@MULTIDB_QUERY, '$MULTIDB', CONCAT('', TABLE_SCHEMA, '')) SEPARATOR \"\\nUNION ALL\\n\")\nINTO @stmt_sql\nFROM `MULTIDB_TEMP_DB_TBL_COLS`;\n\nPREPARE stmt FROM @stmt_sql;\nEXECUTE stmt;\nDEALLOCATE PREPARE stmt;\nEND", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": { - "@type": "PhpMyAdmin\\SqlParser\\UtfString", - "str": "DELIMITER $$\nCREATE DEFINER=`user`@`localhost` PROCEDURE `multiDBqueryRun_V1`(IN `query` TEXT, IN `table_name_var` VARCHAR(255), IN `columns_used_var` TEXT, IN `where_text_var` TEXT, IN `separator_value_var` VARCHAR(255)) COMMENT 'Query: SingleDB → MultiDB (All DBs) + run it' NOT DETERMINISTIC MODIFIES SQL DATA SQL SECURITY INVOKER BEGIN\nSET @TABLE_NAME = table_name_var;\nSET @WHERE_TEXT = where_text_var;\nSET @COLUMNS_USED = columns_used_var;\nSET @MULTIDB_QUERY = CONCAT('SELECT \"$MULTIDB\" FROM `$MULTIDB`.', @TABLE_NAME, @WHERE_TEXT);\n\n-- EXECUTION --\nCREATE TEMPORARY TABLE `MULTIDB_TEMP_DB_TBL_COLS` AS\nSELECT * FROM (\n SELECT TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME\n FROM INFORMATION_SCHEMA.COLUMNS\n WHERE\n TABLE_SCHEMA NOT IN('mysql', 'test', 'tmp', 'information_schema', 'sys', 'performance_schema') AND\n TABLE_NAME = @TABLE_NAME AND\n FIND_IN_SET(COLUMN_NAME, @COLUMNS_USED)\n) tbl\nGROUP BY\n TABLE_SCHEMA,\n TABLE_NAME;\n\nSELECT GROUP_CONCAT(REPLACE(@MULTIDB_QUERY, '$MULTIDB', CONCAT('', TABLE_SCHEMA, '')) SEPARATOR \"\\nUNION ALL\\n\")\nINTO @stmt_sql\nFROM `MULTIDB_TEMP_DB_TBL_COLS`;\n\nPREPARE stmt FROM @stmt_sql;\nEXECUTE stmt;\nDEALLOCATE PREPARE stmt;\nEND", - "byteIdx": 1174, - "charIdx": 1172, - "byteLen": 1175, - "charLen": 1173 - }, - "len": 1173, - "last": 1173, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELIMITER", - "value": "DELIMITER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "$$", - "value": "$$", - "keyword": null, - "type": 9, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFINER", - "value": "DEFINER", - "keyword": "DEFINER", - "type": 1, - "flags": 1, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`user`@`localhost`", - "value": "user@localhost", - "keyword": null, - "type": 8, - "flags": 4, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PROCEDURE", - "value": "PROCEDURE", - "keyword": "PROCEDURE", - "type": 1, - "flags": 3, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`multiDBqueryRun_V1`", - "value": "multiDBqueryRun_V1", - "keyword": null, - "type": 8, - "flags": 2, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`query`", - "value": "query", - "keyword": null, - "type": 8, - "flags": 2, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TEXT", - "value": "TEXT", - "keyword": "TEXT", - "type": 1, - "flags": 9, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`table_name_var`", - "value": "table_name_var", - "keyword": null, - "type": 8, - "flags": 2, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VARCHAR", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "255", - "value": 255, - "keyword": null, - "type": 6, - "flags": 0, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`columns_used_var`", - "value": "columns_used_var", - "keyword": null, - "type": 8, - "flags": 2, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 150 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TEXT", - "value": "TEXT", - "keyword": "TEXT", - "type": 1, - "flags": 9, - "position": 151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 159 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`where_text_var`", - "value": "where_text_var", - "keyword": null, - "type": 8, - "flags": 2, - "position": 160 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 176 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TEXT", - "value": "TEXT", - "keyword": "TEXT", - "type": 1, - "flags": 9, - "position": 177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 181 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 182 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 183 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 185 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`separator_value_var`", - "value": "separator_value_var", - "keyword": null, - "type": 8, - "flags": 2, - "position": 186 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 207 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VARCHAR", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 208 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 215 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "255", - "value": 255, - "keyword": null, - "type": 6, - "flags": 0, - "position": 216 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 219 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 220 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 221 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 222 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 229 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Query: SingleDB → MultiDB (All DBs) + run it'", - "value": "Query: SingleDB → MultiDB (All DBs) + run it", - "keyword": null, - "type": 7, - "flags": 1, - "position": 230 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 276 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT", - "value": "NOT", - "keyword": "NOT", - "type": 1, - "flags": 3, - "position": 277 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 280 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DETERMINISTIC", - "value": "DETERMINISTIC", - "keyword": "DETERMINISTIC", - "type": 1, - "flags": 3, - "position": 281 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 294 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MODIFIES SQL DATA", - "value": "MODIFIES SQL DATA", - "keyword": "MODIFIES SQL DATA", - "type": 1, - "flags": 7, - "position": 295 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 312 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SQL SECURITY", - "value": "SQL SECURITY", - "keyword": "SQL SECURITY", - "type": 1, - "flags": 7, - "position": 313 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 325 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INVOKER", - "value": "INVOKER", - "keyword": "INVOKER", - "type": 1, - "flags": 1, - "position": 326 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 333 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BEGIN", - "value": "BEGIN", - "keyword": "BEGIN", - "type": 1, - "flags": 1, - "position": 334 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 339 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 340 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 343 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@TABLE_NAME", - "value": "TABLE_NAME", - "keyword": null, - "type": 8, - "flags": 1, - "position": 344 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 355 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 356 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 357 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table_name_var", - "value": "table_name_var", - "keyword": null, - "type": 0, - "flags": 0, - "position": 358 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 372 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 373 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 374 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 377 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@WHERE_TEXT", - "value": "WHERE_TEXT", - "keyword": null, - "type": 8, - "flags": 1, - "position": 378 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 389 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 390 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 391 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "where_text_var", - "value": "where_text_var", - "keyword": null, - "type": 0, - "flags": 0, - "position": 392 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 406 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 407 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 408 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 411 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@COLUMNS_USED", - "value": "COLUMNS_USED", - "keyword": null, - "type": 8, - "flags": 1, - "position": 412 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 425 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 426 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 427 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "columns_used_var", - "value": "columns_used_var", - "keyword": null, - "type": 0, - "flags": 0, - "position": 428 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 444 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 445 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 446 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 449 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@MULTIDB_QUERY", - "value": "MULTIDB_QUERY", - "keyword": null, - "type": 8, - "flags": 1, - "position": 450 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 464 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 465 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 466 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CONCAT", - "value": "CONCAT", - "keyword": "CONCAT", - "type": 1, - "flags": 33, - "position": 467 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 473 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'SELECT \"$MULTIDB\" FROM `$MULTIDB`.'", - "value": "SELECT \"$MULTIDB\" FROM `$MULTIDB`.", - "keyword": null, - "type": 7, - "flags": 1, - "position": 474 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 510 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 511 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@TABLE_NAME", - "value": "TABLE_NAME", - "keyword": null, - "type": 8, - "flags": 1, - "position": 512 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 523 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 524 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@WHERE_TEXT", - "value": "WHERE_TEXT", - "keyword": null, - "type": 8, - "flags": 1, - "position": 525 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 536 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 537 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 538 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- EXECUTION --", - "value": "-- EXECUTION --", - "keyword": null, - "type": 4, - "flags": 4, - "position": 540 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 555 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 556 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 562 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TEMPORARY", - "value": "TEMPORARY", - "keyword": "TEMPORARY", - "type": 1, - "flags": 1, - "position": 563 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 572 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 573 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 578 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`MULTIDB_TEMP_DB_TBL_COLS`", - "value": "MULTIDB_TEMP_DB_TBL_COLS", - "keyword": null, - "type": 8, - "flags": 2, - "position": 579 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 605 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 606 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 608 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 609 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 615 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 616 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 617 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 618 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 622 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 623 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 624 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 627 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 633 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE_SCHEMA", - "value": "TABLE_SCHEMA", - "keyword": null, - "type": 0, - "flags": 0, - "position": 634 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 646 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 647 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE_NAME", - "value": "TABLE_NAME", - "keyword": "TABLE_NAME", - "type": 1, - "flags": 1, - "position": 648 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 658 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 659 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLUMN_NAME", - "value": "COLUMN_NAME", - "keyword": "COLUMN_NAME", - "type": 1, - "flags": 1, - "position": 660 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 671 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 674 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 678 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INFORMATION_SCHEMA", - "value": "INFORMATION_SCHEMA", - "keyword": null, - "type": 0, - "flags": 0, - "position": 679 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 697 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLUMNS", - "value": "COLUMNS", - "keyword": "COLUMNS", - "type": 0, - "flags": 0, - "position": 698 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 705 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 708 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 713 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE_SCHEMA", - "value": "TABLE_SCHEMA", - "keyword": null, - "type": 0, - "flags": 0, - "position": 718 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 730 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT IN", - "value": "NOT IN", - "keyword": "NOT IN", - "type": 1, - "flags": 39, - "position": 731 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 737 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'mysql'", - "value": "mysql", - "keyword": null, - "type": 7, - "flags": 1, - "position": 738 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 745 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 746 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'test'", - "value": "test", - "keyword": null, - "type": 7, - "flags": 1, - "position": 747 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 753 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 754 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'tmp'", - "value": "tmp", - "keyword": null, - "type": 7, - "flags": 1, - "position": 755 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 760 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 761 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'information_schema'", - "value": "information_schema", - "keyword": null, - "type": 7, - "flags": 1, - "position": 762 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 782 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 783 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'sys'", - "value": "sys", - "keyword": null, - "type": 7, - "flags": 1, - "position": 784 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 789 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 790 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'performance_schema'", - "value": "performance_schema", - "keyword": null, - "type": 7, - "flags": 1, - "position": 791 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 811 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 812 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 813 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 816 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE_NAME", - "value": "TABLE_NAME", - "keyword": "TABLE_NAME", - "type": 1, - "flags": 1, - "position": 821 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 831 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 832 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 833 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@TABLE_NAME", - "value": "TABLE_NAME", - "keyword": null, - "type": 8, - "flags": 1, - "position": 834 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 845 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 846 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 849 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FIND_IN_SET", - "value": "FIND_IN_SET", - "keyword": "FIND_IN_SET", - "type": 1, - "flags": 33, - "position": 854 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 865 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLUMN_NAME", - "value": "COLUMN_NAME", - "keyword": "COLUMN_NAME", - "type": 1, - "flags": 1, - "position": 866 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 877 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 878 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@COLUMNS_USED", - "value": "COLUMNS_USED", - "keyword": null, - "type": 8, - "flags": 1, - "position": 879 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 892 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 893 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 894 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 895 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tbl", - "value": "tbl", - "keyword": null, - "type": 0, - "flags": 0, - "position": 896 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 899 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "GROUP BY", - "value": "GROUP BY", - "keyword": "GROUP BY", - "type": 1, - "flags": 7, - "position": 900 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 908 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE_SCHEMA", - "value": "TABLE_SCHEMA", - "keyword": null, - "type": 0, - "flags": 0, - "position": 911 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 923 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 924 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE_NAME", - "value": "TABLE_NAME", - "keyword": "TABLE_NAME", - "type": 1, - "flags": 1, - "position": 927 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 937 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 938 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 940 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 946 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "GROUP_CONCAT", - "value": "GROUP_CONCAT", - "keyword": "GROUP_CONCAT", - "type": 1, - "flags": 33, - "position": 947 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 959 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REPLACE", - "value": "REPLACE", - "keyword": "REPLACE", - "type": 1, - "flags": 35, - "position": 960 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 967 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@MULTIDB_QUERY", - "value": "MULTIDB_QUERY", - "keyword": null, - "type": 8, - "flags": 1, - "position": 968 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 982 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 983 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'$MULTIDB'", - "value": "$MULTIDB", - "keyword": null, - "type": 7, - "flags": 1, - "position": 984 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 994 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 995 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CONCAT", - "value": "CONCAT", - "keyword": "CONCAT", - "type": 1, - "flags": 33, - "position": 996 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1002 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "''", - "value": "", - "keyword": null, - "type": 7, - "flags": 1, - "position": 1003 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1005 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1006 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE_SCHEMA", - "value": "TABLE_SCHEMA", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1007 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1019 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1020 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "''", - "value": "", - "keyword": null, - "type": 7, - "flags": 1, - "position": 1021 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1023 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1024 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1025 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SEPARATOR", - "value": "SEPARATOR", - "keyword": "SEPARATOR", - "type": 1, - "flags": 3, - "position": 1026 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1035 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"\\nUNION ALL\\n\"", - "value": "\nUNION ALL\n", - "keyword": null, - "type": 7, - "flags": 2, - "position": 1036 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1051 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1052 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 1053 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1057 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@stmt_sql", - "value": "stmt_sql", - "keyword": null, - "type": 8, - "flags": 1, - "position": 1058 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1067 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 1068 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1072 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`MULTIDB_TEMP_DB_TBL_COLS`", - "value": "MULTIDB_TEMP_DB_TBL_COLS", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1073 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1099 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PREPARE", - "value": "PREPARE", - "keyword": "PREPARE", - "type": 1, - "flags": 1, - "position": 1102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "stmt", - "value": "stmt", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 1115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@stmt_sql", - "value": "stmt_sql", - "keyword": null, - "type": 8, - "flags": 1, - "position": 1120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EXECUTE", - "value": "EXECUTE", - "keyword": "EXECUTE", - "type": 1, - "flags": 1, - "position": 1131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "stmt", - "value": "stmt", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1144 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEALLOCATE", - "value": "DEALLOCATE", - "keyword": "DEALLOCATE", - "type": 1, - "flags": 1, - "position": 1145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PREPARE", - "value": "PREPARE", - "keyword": "PREPARE", - "type": 1, - "flags": 1, - "position": 1156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1163 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "stmt", - "value": "stmt", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1164 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1168 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1169 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "END", - "value": "END", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 1170 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 267, - "idx": 267 - }, - "delimiter": "$$", - "delimiterLen": 2, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@2" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "multiDBqueryRun_V1", - "column": null, - "expr": "`multiDBqueryRun_V1`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "NOT", - "equals": false, - "expr": "DETERMINISTIC", - "value": "DETERMINISTIC" - }, - "4": "MODIFIES SQL DATA", - "6": { - "name": "SQL SECURITY", - "equals": false, - "expr": "INVOKER", - "value": "INVOKER" - }, - "8": { - "name": "COMMENT", - "equals": false, - "expr": "'Query: SingleDB → MultiDB (All DBs) + run it'", - "value": "Query: SingleDB → MultiDB (All DBs) + run it" - } - } - }, - "fields": null, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ParameterDefinition", - "name": "query", - "inOut": "IN", - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "TEXT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ParameterDefinition", - "name": "table_name_var", - "inOut": "IN", - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [ - "255" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ParameterDefinition", - "name": "columns_used_var", - "inOut": "IN", - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "TEXT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ParameterDefinition", - "name": "where_text_var", - "inOut": "IN", - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "TEXT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ParameterDefinition", - "name": "separator_value_var", - "inOut": "IN", - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [ - "255" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - } - ], - "body": [ - { - "@type": "@72" - }, - { - "@type": "@73" - }, - { - "@type": "@74" - }, - { - "@type": "@75" - }, - { - "@type": "@76" - }, - { - "@type": "@77" - }, - { - "@type": "@78" - }, - { - "@type": "@79" - }, - { - "@type": "@80" - }, - { - "@type": "@81" - }, - { - "@type": "@82" - }, - { - "@type": "@83" - }, - { - "@type": "@84" - }, - { - "@type": "@85" - }, - { - "@type": "@86" - }, - { - "@type": "@87" - }, - { - "@type": "@88" - }, - { - "@type": "@89" - }, - { - "@type": "@90" - }, - { - "@type": "@91" - }, - { - "@type": "@92" - }, - { - "@type": "@93" - }, - { - "@type": "@94" - }, - { - "@type": "@95" - }, - { - "@type": "@96" - }, - { - "@type": "@97" - }, - { - "@type": "@98" - }, - { - "@type": "@99" - }, - { - "@type": "@100" - }, - { - "@type": "@101" - }, - { - "@type": "@102" - }, - { - "@type": "@103" - }, - { - "@type": "@104" - }, - { - "@type": "@105" - }, - { - "@type": "@106" - }, - { - "@type": "@107" - }, - { - "@type": "@108" - }, - { - "@type": "@109" - }, - { - "@type": "@110" - }, - { - "@type": "@111" - }, - { - "@type": "@112" - }, - { - "@type": "@113" - }, - { - "@type": "@114" - }, - { - "@type": "@115" - }, - { - "@type": "@116" - }, - { - "@type": "@117" - }, - { - "@type": "@118" - }, - { - "@type": "@119" - }, - { - "@type": "@120" - }, - { - "@type": "@121" - }, - { - "@type": "@122" - }, - { - "@type": "@123" - }, - { - "@type": "@124" - }, - { - "@type": "@125" - }, - { - "@type": "@126" - }, - { - "@type": "@127" - }, - { - "@type": "@128" - }, - { - "@type": "@129" - }, - { - "@type": "@130" - }, - { - "@type": "@131" - }, - { - "@type": "@132" - }, - { - "@type": "@133" - }, - { - "@type": "@134" - }, - { - "@type": "@135" - }, - { - "@type": "@136" - }, - { - "@type": "@137" - }, - { - "@type": "@138" - }, - { - "@type": "@139" - }, - { - "@type": "@140" - }, - { - "@type": "@141" - }, - { - "@type": "@142" - }, - { - "@type": "@143" - }, - { - "@type": "@144" - }, - { - "@type": "@145" - }, - { - "@type": "@146" - }, - { - "@type": "@147" - }, - { - "@type": "@148" - }, - { - "@type": "@149" - }, - { - "@type": "@150" - }, - { - "@type": "@151" - }, - { - "@type": "@152" - }, - { - "@type": "@153" - }, - { - "@type": "@154" - }, - { - "@type": "@155" - }, - { - "@type": "@156" - }, - { - "@type": "@157" - }, - { - "@type": "@158" - }, - { - "@type": "@159" - }, - { - "@type": "@160" - }, - { - "@type": "@161" - }, - { - "@type": "@162" - }, - { - "@type": "@163" - }, - { - "@type": "@164" - }, - { - "@type": "@165" - }, - { - "@type": "@166" - }, - { - "@type": "@167" - }, - { - "@type": "@168" - }, - { - "@type": "@169" - }, - { - "@type": "@170" - }, - { - "@type": "@171" - }, - { - "@type": "@172" - }, - { - "@type": "@173" - }, - { - "@type": "@174" - }, - { - "@type": "@175" - }, - { - "@type": "@176" - }, - { - "@type": "@177" - }, - { - "@type": "@178" - }, - { - "@type": "@179" - }, - { - "@type": "@180" - }, - { - "@type": "@181" - }, - { - "@type": "@182" - }, - { - "@type": "@183" - }, - { - "@type": "@184" - }, - { - "@type": "@185" - }, - { - "@type": "@186" - }, - { - "@type": "@187" - }, - { - "@type": "@188" - }, - { - "@type": "@189" - }, - { - "@type": "@190" - }, - { - "@type": "@191" - }, - { - "@type": "@192" - }, - { - "@type": "@193" - }, - { - "@type": "@194" - }, - { - "@type": "@195" - }, - { - "@type": "@196" - }, - { - "@type": "@197" - }, - { - "@type": "@198" - }, - { - "@type": "@199" - }, - { - "@type": "@200" - }, - { - "@type": "@201" - }, - { - "@type": "@202" - }, - { - "@type": "@203" - }, - { - "@type": "@204" - }, - { - "@type": "@205" - }, - { - "@type": "@206" - }, - { - "@type": "@207" - }, - { - "@type": "@208" - }, - { - "@type": "@209" - }, - { - "@type": "@210" - }, - { - "@type": "@211" - }, - { - "@type": "@212" - }, - { - "@type": "@213" - }, - { - "@type": "@214" - }, - { - "@type": "@215" - }, - { - "@type": "@216" - }, - { - "@type": "@217" - }, - { - "@type": "@218" - }, - { - "@type": "@219" - }, - { - "@type": "@220" - }, - { - "@type": "@221" - }, - { - "@type": "@222" - }, - { - "@type": "@223" - }, - { - "@type": "@224" - }, - { - "@type": "@225" - }, - { - "@type": "@226" - }, - { - "@type": "@227" - }, - { - "@type": "@228" - }, - { - "@type": "@229" - }, - { - "@type": "@230" - }, - { - "@type": "@231" - }, - { - "@type": "@232" - }, - { - "@type": "@233" - }, - { - "@type": "@234" - }, - { - "@type": "@235" - }, - { - "@type": "@236" - }, - { - "@type": "@237" - }, - { - "@type": "@238" - }, - { - "@type": "@239" - }, - { - "@type": "@240" - }, - { - "@type": "@241" - }, - { - "@type": "@242" - }, - { - "@type": "@243" - }, - { - "@type": "@244" - }, - { - "@type": "@245" - }, - { - "@type": "@246" - }, - { - "@type": "@247" - }, - { - "@type": "@248" - }, - { - "@type": "@249" - }, - { - "@type": "@250" - }, - { - "@type": "@251" - }, - { - "@type": "@252" - }, - { - "@type": "@253" - }, - { - "@type": "@254" - }, - { - "@type": "@255" - }, - { - "@type": "@256" - }, - { - "@type": "@257" - }, - { - "@type": "@258" - }, - { - "@type": "@259" - }, - { - "@type": "@260" - }, - { - "@type": "@261" - }, - { - "@type": "@262" - }, - { - "@type": "@263" - }, - { - "@type": "@264" - }, - { - "@type": "@265" - }, - { - "@type": "@266" - }, - { - "@type": "@267" - }, - { - "@type": "@268" - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": { - "name": "DEFINER", - "equals": true, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "user@localhost", - "expr": "`user`@`localhost`", - "alias": null, - "function": null, - "subquery": null - }, - "value": "`user`@`localhost`" - }, - "6": "PROCEDURE" - } - }, - "first": 4, - "last": 266 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure4.in deleted file mode 100644 index 372574bf..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure4.in +++ /dev/null @@ -1,93 +0,0 @@ -DELIMITER $$ -CREATE DEFINER=`user`@`localhost` PROCEDURE `multiDBqueryRun_V12`(IN `query` TEXT, IN `table_name_var` VARCHAR(255), IN `columns_used_var` TEXT, IN `where_text_var` TEXT, IN `separator_value_var` VARCHAR(255)) COMMENT 'Query: SingleDB → MultiDB (All DBs) + run it' NOT DETERMINISTIC MODIFIES SQL DATA SQL SECURITY INVOKER BEGIN -SET @TABLE_NAME = table_name_var; -SET @WHERE_TEXT = where_text_var; -SET @COLUMNS_USED = columns_used_var; -SET @MULTIDB_QUERY = CONCAT('SELECT "$MULTIDB" FROM `$MULTIDB`.', @TABLE_NAME, @WHERE_TEXT); - --- EXECUTION -- -CREATE TEMPORARY TABLE `MULTIDB_TEMP_DB_TBL_COLS` AS -SELECT * FROM ( - SELECT TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME - FROM INFORMATION_SCHEMA.COLUMNS - WHERE - TABLE_SCHEMA NOT IN('mysql', 'test', 'tmp', 'information_schema', 'sys', 'performance_schema') AND - TABLE_NAME = @TABLE_NAME AND - FIND_IN_SET(COLUMN_NAME, @COLUMNS_USED) -) tbl -GROUP BY - TABLE_SCHEMA, - TABLE_NAME; - -SELECT GROUP_CONCAT(REPLACE(@MULTIDB_QUERY, '$MULTIDB', CONCAT('', TABLE_SCHEMA, '')) SEPARATOR "\nUNION ALL\n") -INTO @stmt_sql -FROM `MULTIDB_TEMP_DB_TBL_COLS`; - -PREPARE stmt FROM @stmt_sql; -EXECUTE stmt; -DEALLOCATE PREPARE stmt; -END$$ - --- --- Functions --- -DELIMITER $$ -CREATE DEFINER=`root`@`localhost` FUNCTION `attrParentShiftIds` (`parent_id` TEXT, `option_id_shift` INT, `option_value_id_shift` INT) RETURNS TEXT CHARSET utf8mb4 COLLATE utf8mb4_unicode_520_ci DETERMINISTIC READS SQL DATA SQL SECURITY INVOKER BEGIN - DECLARE i INT UNSIGNED DEFAULT 0; - DECLARE pair_count INT UNSIGNED; - DECLARE result TEXT DEFAULT ''; - - DECLARE pair VARCHAR(255) DEFAULT ''; - DECLARE oid INT DEFAULT ''; - DECLARE vid INT DEFAULT ''; - - SET pair_count = substrCount(parent_id, ',') + 1; - - WHILE i < pair_count DO - SET result = CONCAT(result, IF(i <= 0, '', ',')); - - SET pair = split(parent_id, ',', i + 1); - - SET oid = split(pair, '-', 1) + option_id_shift; - SET vid = split(pair, '-', 2) + option_value_id_shift; - - SET pair = CONCAT(oid, '-', vid); - SET result = CONCAT(result, pair); - - SET i = i + 1; - END WHILE; - - RETURN result; -END$$ - -DELIMITER $$ -CREATE DEFINER=`user`@`localhost` FUNCTION `split` (`string` TEXT, `delim` TEXT, `n` INT) RETURNS TEXT CHARSET utf8mb4 COLLATE utf8mb4_unicode_520_ci DETERMINISTIC SQL SECURITY INVOKER RETURN IF( - (LENGTH(string) - LENGTH(REPLACE(string, delim, ''))) / LENGTH(delim) < n - 1, - NULL, - SUBSTRING_INDEX(SUBSTRING_INDEX(string, delim, n), delim, -1) -)$$ - -DELIMITER $$ -CREATE DEFINER=`root`@`localhost` FUNCTION `substrCount` (`s` VARCHAR(255), `ss` VARCHAR(255)) RETURNS TINYINT(3) UNSIGNED DETERMINISTIC READS SQL DATA SQL SECURITY INVOKER BEGIN -DECLARE COUNT TINYINT(3) UNSIGNED; -DECLARE OFFSET_I TINYINT(3) UNSIGNED; -DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET s = NULL; - -SET COUNT = 0; -SET OFFSET_I = 1; - -REPEAT -IF NOT ISNULL(s) AND OFFSET_I > 0 THEN -SET OFFSET_I = LOCATE(ss, s, OFFSET_I); -IF OFFSET_I > 0 THEN -SET COUNT = COUNT + 1; -SET OFFSET_I = OFFSET_I + 1; -END IF; -END IF; -UNTIL ISNULL(s) OR OFFSET_I = 0 END REPEAT; - -RETURN COUNT; -END$$ - -DELIMITER ; - diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure4.out deleted file mode 100644 index 7819a1db..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateProcedure4.out +++ /dev/null @@ -1,10962 +0,0 @@ -{ - "query": "DELIMITER $$\nCREATE DEFINER=`user`@`localhost` PROCEDURE `multiDBqueryRun_V12`(IN `query` TEXT, IN `table_name_var` VARCHAR(255), IN `columns_used_var` TEXT, IN `where_text_var` TEXT, IN `separator_value_var` VARCHAR(255)) COMMENT 'Query: SingleDB → MultiDB (All DBs) + run it' NOT DETERMINISTIC MODIFIES SQL DATA SQL SECURITY INVOKER BEGIN\nSET @TABLE_NAME = table_name_var;\nSET @WHERE_TEXT = where_text_var;\nSET @COLUMNS_USED = columns_used_var;\nSET @MULTIDB_QUERY = CONCAT('SELECT \"$MULTIDB\" FROM `$MULTIDB`.', @TABLE_NAME, @WHERE_TEXT);\n\n-- EXECUTION --\nCREATE TEMPORARY TABLE `MULTIDB_TEMP_DB_TBL_COLS` AS\nSELECT * FROM (\n SELECT TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME\n FROM INFORMATION_SCHEMA.COLUMNS\n WHERE\n TABLE_SCHEMA NOT IN('mysql', 'test', 'tmp', 'information_schema', 'sys', 'performance_schema') AND\n TABLE_NAME = @TABLE_NAME AND\n FIND_IN_SET(COLUMN_NAME, @COLUMNS_USED)\n) tbl\nGROUP BY\n TABLE_SCHEMA,\n TABLE_NAME;\n\nSELECT GROUP_CONCAT(REPLACE(@MULTIDB_QUERY, '$MULTIDB', CONCAT('', TABLE_SCHEMA, '')) SEPARATOR \"\\nUNION ALL\\n\")\nINTO @stmt_sql\nFROM `MULTIDB_TEMP_DB_TBL_COLS`;\n\nPREPARE stmt FROM @stmt_sql;\nEXECUTE stmt;\nDEALLOCATE PREPARE stmt;\nEND$$\n\n--\n-- Functions\n--\nDELIMITER $$\nCREATE DEFINER=`root`@`localhost` FUNCTION `attrParentShiftIds` (`parent_id` TEXT, `option_id_shift` INT, `option_value_id_shift` INT) RETURNS TEXT CHARSET utf8mb4 COLLATE utf8mb4_unicode_520_ci DETERMINISTIC READS SQL DATA SQL SECURITY INVOKER BEGIN\n DECLARE i INT UNSIGNED DEFAULT 0;\n DECLARE pair_count INT UNSIGNED;\n DECLARE result TEXT DEFAULT '';\n\n DECLARE pair VARCHAR(255) DEFAULT '';\n DECLARE oid INT DEFAULT '';\n DECLARE vid INT DEFAULT '';\n\n SET pair_count = substrCount(parent_id, ',') + 1;\n\n WHILE i < pair_count DO\n SET result = CONCAT(result, IF(i <= 0, '', ','));\n\n SET pair = split(parent_id, ',', i + 1);\n\n SET oid = split(pair, '-', 1) + option_id_shift;\n SET vid = split(pair, '-', 2) + option_value_id_shift;\n\n SET pair = CONCAT(oid, '-', vid);\n SET result = CONCAT(result, pair);\n\n SET i = i + 1;\n END WHILE;\n\n RETURN result;\nEND$$\n\nDELIMITER $$\nCREATE DEFINER=`user`@`localhost` FUNCTION `split` (`string` TEXT, `delim` TEXT, `n` INT) RETURNS TEXT CHARSET utf8mb4 COLLATE utf8mb4_unicode_520_ci DETERMINISTIC SQL SECURITY INVOKER RETURN IF(\n (LENGTH(string) - LENGTH(REPLACE(string, delim, ''))) / LENGTH(delim) < n - 1,\n NULL,\n SUBSTRING_INDEX(SUBSTRING_INDEX(string, delim, n), delim, -1)\n)$$\n\nDELIMITER $$\nCREATE DEFINER=`root`@`localhost` FUNCTION `substrCount` (`s` VARCHAR(255), `ss` VARCHAR(255)) RETURNS TINYINT(3) UNSIGNED DETERMINISTIC READS SQL DATA SQL SECURITY INVOKER BEGIN\nDECLARE COUNT TINYINT(3) UNSIGNED;\nDECLARE OFFSET_I TINYINT(3) UNSIGNED;\nDECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET s = NULL;\n\nSET COUNT = 0;\nSET OFFSET_I = 1;\n\nREPEAT\nIF NOT ISNULL(s) AND OFFSET_I > 0 THEN\nSET OFFSET_I = LOCATE(ss, s, OFFSET_I);\nIF OFFSET_I > 0 THEN\nSET COUNT = COUNT + 1;\nSET OFFSET_I = OFFSET_I + 1;\nEND IF;\nEND IF;\nUNTIL ISNULL(s) OR OFFSET_I = 0 END REPEAT;\n\nRETURN COUNT;\nEND$$\n\nDELIMITER ;\n\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": { - "@type": "PhpMyAdmin\\SqlParser\\UtfString", - "str": "DELIMITER $$\nCREATE DEFINER=`user`@`localhost` PROCEDURE `multiDBqueryRun_V12`(IN `query` TEXT, IN `table_name_var` VARCHAR(255), IN `columns_used_var` TEXT, IN `where_text_var` TEXT, IN `separator_value_var` VARCHAR(255)) COMMENT 'Query: SingleDB → MultiDB (All DBs) + run it' NOT DETERMINISTIC MODIFIES SQL DATA SQL SECURITY INVOKER BEGIN\nSET @TABLE_NAME = table_name_var;\nSET @WHERE_TEXT = where_text_var;\nSET @COLUMNS_USED = columns_used_var;\nSET @MULTIDB_QUERY = CONCAT('SELECT \"$MULTIDB\" FROM `$MULTIDB`.', @TABLE_NAME, @WHERE_TEXT);\n\n-- EXECUTION --\nCREATE TEMPORARY TABLE `MULTIDB_TEMP_DB_TBL_COLS` AS\nSELECT * FROM (\n SELECT TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME\n FROM INFORMATION_SCHEMA.COLUMNS\n WHERE\n TABLE_SCHEMA NOT IN('mysql', 'test', 'tmp', 'information_schema', 'sys', 'performance_schema') AND\n TABLE_NAME = @TABLE_NAME AND\n FIND_IN_SET(COLUMN_NAME, @COLUMNS_USED)\n) tbl\nGROUP BY\n TABLE_SCHEMA,\n TABLE_NAME;\n\nSELECT GROUP_CONCAT(REPLACE(@MULTIDB_QUERY, '$MULTIDB', CONCAT('', TABLE_SCHEMA, '')) SEPARATOR \"\\nUNION ALL\\n\")\nINTO @stmt_sql\nFROM `MULTIDB_TEMP_DB_TBL_COLS`;\n\nPREPARE stmt FROM @stmt_sql;\nEXECUTE stmt;\nDEALLOCATE PREPARE stmt;\nEND$$\n\n--\n-- Functions\n--\nDELIMITER $$\nCREATE DEFINER=`root`@`localhost` FUNCTION `attrParentShiftIds` (`parent_id` TEXT, `option_id_shift` INT, `option_value_id_shift` INT) RETURNS TEXT CHARSET utf8mb4 COLLATE utf8mb4_unicode_520_ci DETERMINISTIC READS SQL DATA SQL SECURITY INVOKER BEGIN\n DECLARE i INT UNSIGNED DEFAULT 0;\n DECLARE pair_count INT UNSIGNED;\n DECLARE result TEXT DEFAULT '';\n\n DECLARE pair VARCHAR(255) DEFAULT '';\n DECLARE oid INT DEFAULT '';\n DECLARE vid INT DEFAULT '';\n\n SET pair_count = substrCount(parent_id, ',') + 1;\n\n WHILE i < pair_count DO\n SET result = CONCAT(result, IF(i <= 0, '', ','));\n\n SET pair = split(parent_id, ',', i + 1);\n\n SET oid = split(pair, '-', 1) + option_id_shift;\n SET vid = split(pair, '-', 2) + option_value_id_shift;\n\n SET pair = CONCAT(oid, '-', vid);\n SET result = CONCAT(result, pair);\n\n SET i = i + 1;\n END WHILE;\n\n RETURN result;\nEND$$\n\nDELIMITER $$\nCREATE DEFINER=`user`@`localhost` FUNCTION `split` (`string` TEXT, `delim` TEXT, `n` INT) RETURNS TEXT CHARSET utf8mb4 COLLATE utf8mb4_unicode_520_ci DETERMINISTIC SQL SECURITY INVOKER RETURN IF(\n (LENGTH(string) - LENGTH(REPLACE(string, delim, ''))) / LENGTH(delim) < n - 1,\n NULL,\n SUBSTRING_INDEX(SUBSTRING_INDEX(string, delim, n), delim, -1)\n)$$\n\nDELIMITER $$\nCREATE DEFINER=`root`@`localhost` FUNCTION `substrCount` (`s` VARCHAR(255), `ss` VARCHAR(255)) RETURNS TINYINT(3) UNSIGNED DETERMINISTIC READS SQL DATA SQL SECURITY INVOKER BEGIN\nDECLARE COUNT TINYINT(3) UNSIGNED;\nDECLARE OFFSET_I TINYINT(3) UNSIGNED;\nDECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET s = NULL;\n\nSET COUNT = 0;\nSET OFFSET_I = 1;\n\nREPEAT\nIF NOT ISNULL(s) AND OFFSET_I > 0 THEN\nSET OFFSET_I = LOCATE(ss, s, OFFSET_I);\nIF OFFSET_I > 0 THEN\nSET COUNT = COUNT + 1;\nSET OFFSET_I = OFFSET_I + 1;\nEND IF;\nEND IF;\nUNTIL ISNULL(s) OR OFFSET_I = 0 END REPEAT;\n\nRETURN COUNT;\nEND$$\n\nDELIMITER ;\n\n", - "byteIdx": 3084, - "charIdx": 3082, - "byteLen": 3085, - "charLen": 3083 - }, - "len": 3083, - "last": 3083, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELIMITER", - "value": "DELIMITER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "$$", - "value": "$$", - "keyword": null, - "type": 9, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFINER", - "value": "DEFINER", - "keyword": "DEFINER", - "type": 1, - "flags": 1, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`user`@`localhost`", - "value": "user@localhost", - "keyword": null, - "type": 8, - "flags": 4, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PROCEDURE", - "value": "PROCEDURE", - "keyword": "PROCEDURE", - "type": 1, - "flags": 3, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`multiDBqueryRun_V12`", - "value": "multiDBqueryRun_V12", - "keyword": null, - "type": 8, - "flags": 2, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`query`", - "value": "query", - "keyword": null, - "type": 8, - "flags": 2, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TEXT", - "value": "TEXT", - "keyword": "TEXT", - "type": 1, - "flags": 9, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`table_name_var`", - "value": "table_name_var", - "keyword": null, - "type": 8, - "flags": 2, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VARCHAR", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "255", - "value": 255, - "keyword": null, - "type": 6, - "flags": 0, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`columns_used_var`", - "value": "columns_used_var", - "keyword": null, - "type": 8, - "flags": 2, - "position": 133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TEXT", - "value": "TEXT", - "keyword": "TEXT", - "type": 1, - "flags": 9, - "position": 152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 160 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`where_text_var`", - "value": "where_text_var", - "keyword": null, - "type": 8, - "flags": 2, - "position": 161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TEXT", - "value": "TEXT", - "keyword": "TEXT", - "type": 1, - "flags": 9, - "position": 178 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 182 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 183 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 184 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 186 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`separator_value_var`", - "value": "separator_value_var", - "keyword": null, - "type": 8, - "flags": 2, - "position": 187 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 208 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VARCHAR", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 209 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 216 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "255", - "value": 255, - "keyword": null, - "type": 6, - "flags": 0, - "position": 217 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 220 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 221 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 222 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 223 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 230 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Query: SingleDB → MultiDB (All DBs) + run it'", - "value": "Query: SingleDB → MultiDB (All DBs) + run it", - "keyword": null, - "type": 7, - "flags": 1, - "position": 231 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 277 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT", - "value": "NOT", - "keyword": "NOT", - "type": 1, - "flags": 3, - "position": 278 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 281 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DETERMINISTIC", - "value": "DETERMINISTIC", - "keyword": "DETERMINISTIC", - "type": 1, - "flags": 3, - "position": 282 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 295 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MODIFIES SQL DATA", - "value": "MODIFIES SQL DATA", - "keyword": "MODIFIES SQL DATA", - "type": 1, - "flags": 7, - "position": 296 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 313 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SQL SECURITY", - "value": "SQL SECURITY", - "keyword": "SQL SECURITY", - "type": 1, - "flags": 7, - "position": 314 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 326 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INVOKER", - "value": "INVOKER", - "keyword": "INVOKER", - "type": 1, - "flags": 1, - "position": 327 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 334 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BEGIN", - "value": "BEGIN", - "keyword": "BEGIN", - "type": 1, - "flags": 1, - "position": 335 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 340 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 341 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 344 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@TABLE_NAME", - "value": "TABLE_NAME", - "keyword": null, - "type": 8, - "flags": 1, - "position": 345 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 356 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 357 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 358 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table_name_var", - "value": "table_name_var", - "keyword": null, - "type": 0, - "flags": 0, - "position": 359 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 373 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 374 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 375 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 378 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@WHERE_TEXT", - "value": "WHERE_TEXT", - "keyword": null, - "type": 8, - "flags": 1, - "position": 379 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 390 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 391 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 392 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "where_text_var", - "value": "where_text_var", - "keyword": null, - "type": 0, - "flags": 0, - "position": 393 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 407 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 408 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 409 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 412 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@COLUMNS_USED", - "value": "COLUMNS_USED", - "keyword": null, - "type": 8, - "flags": 1, - "position": 413 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 426 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 427 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 428 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "columns_used_var", - "value": "columns_used_var", - "keyword": null, - "type": 0, - "flags": 0, - "position": 429 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 445 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 446 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 447 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 450 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@MULTIDB_QUERY", - "value": "MULTIDB_QUERY", - "keyword": null, - "type": 8, - "flags": 1, - "position": 451 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 465 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 466 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 467 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CONCAT", - "value": "CONCAT", - "keyword": "CONCAT", - "type": 1, - "flags": 33, - "position": 468 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 474 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'SELECT \"$MULTIDB\" FROM `$MULTIDB`.'", - "value": "SELECT \"$MULTIDB\" FROM `$MULTIDB`.", - "keyword": null, - "type": 7, - "flags": 1, - "position": 475 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 511 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 512 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@TABLE_NAME", - "value": "TABLE_NAME", - "keyword": null, - "type": 8, - "flags": 1, - "position": 513 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 524 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 525 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@WHERE_TEXT", - "value": "WHERE_TEXT", - "keyword": null, - "type": 8, - "flags": 1, - "position": 526 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 537 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 538 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 539 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- EXECUTION --", - "value": "-- EXECUTION --", - "keyword": null, - "type": 4, - "flags": 4, - "position": 541 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 556 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 557 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 563 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TEMPORARY", - "value": "TEMPORARY", - "keyword": "TEMPORARY", - "type": 1, - "flags": 1, - "position": 564 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 573 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 574 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 579 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`MULTIDB_TEMP_DB_TBL_COLS`", - "value": "MULTIDB_TEMP_DB_TBL_COLS", - "keyword": null, - "type": 8, - "flags": 2, - "position": 580 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 606 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 607 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 609 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 610 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 616 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 617 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 618 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 619 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 623 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 624 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 625 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 628 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 634 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE_SCHEMA", - "value": "TABLE_SCHEMA", - "keyword": null, - "type": 0, - "flags": 0, - "position": 635 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 647 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 648 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE_NAME", - "value": "TABLE_NAME", - "keyword": "TABLE_NAME", - "type": 1, - "flags": 1, - "position": 649 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 659 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 660 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLUMN_NAME", - "value": "COLUMN_NAME", - "keyword": "COLUMN_NAME", - "type": 1, - "flags": 1, - "position": 661 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 672 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 675 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 679 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INFORMATION_SCHEMA", - "value": "INFORMATION_SCHEMA", - "keyword": null, - "type": 0, - "flags": 0, - "position": 680 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 698 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLUMNS", - "value": "COLUMNS", - "keyword": "COLUMNS", - "type": 0, - "flags": 0, - "position": 699 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 706 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 709 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 714 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE_SCHEMA", - "value": "TABLE_SCHEMA", - "keyword": null, - "type": 0, - "flags": 0, - "position": 719 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 731 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT IN", - "value": "NOT IN", - "keyword": "NOT IN", - "type": 1, - "flags": 39, - "position": 732 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 738 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'mysql'", - "value": "mysql", - "keyword": null, - "type": 7, - "flags": 1, - "position": 739 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 746 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 747 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'test'", - "value": "test", - "keyword": null, - "type": 7, - "flags": 1, - "position": 748 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 754 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 755 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'tmp'", - "value": "tmp", - "keyword": null, - "type": 7, - "flags": 1, - "position": 756 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 761 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 762 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'information_schema'", - "value": "information_schema", - "keyword": null, - "type": 7, - "flags": 1, - "position": 763 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 783 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 784 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'sys'", - "value": "sys", - "keyword": null, - "type": 7, - "flags": 1, - "position": 785 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 790 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 791 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'performance_schema'", - "value": "performance_schema", - "keyword": null, - "type": 7, - "flags": 1, - "position": 792 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 812 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 813 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 814 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 817 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE_NAME", - "value": "TABLE_NAME", - "keyword": "TABLE_NAME", - "type": 1, - "flags": 1, - "position": 822 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 832 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 833 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 834 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@TABLE_NAME", - "value": "TABLE_NAME", - "keyword": null, - "type": 8, - "flags": 1, - "position": 835 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 846 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 847 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 850 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FIND_IN_SET", - "value": "FIND_IN_SET", - "keyword": "FIND_IN_SET", - "type": 1, - "flags": 33, - "position": 855 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 866 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLUMN_NAME", - "value": "COLUMN_NAME", - "keyword": "COLUMN_NAME", - "type": 1, - "flags": 1, - "position": 867 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 878 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 879 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@COLUMNS_USED", - "value": "COLUMNS_USED", - "keyword": null, - "type": 8, - "flags": 1, - "position": 880 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 893 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 894 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 895 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 896 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tbl", - "value": "tbl", - "keyword": null, - "type": 0, - "flags": 0, - "position": 897 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 900 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "GROUP BY", - "value": "GROUP BY", - "keyword": "GROUP BY", - "type": 1, - "flags": 7, - "position": 901 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 909 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE_SCHEMA", - "value": "TABLE_SCHEMA", - "keyword": null, - "type": 0, - "flags": 0, - "position": 912 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 924 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 925 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE_NAME", - "value": "TABLE_NAME", - "keyword": "TABLE_NAME", - "type": 1, - "flags": 1, - "position": 928 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 938 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 939 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 941 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 947 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "GROUP_CONCAT", - "value": "GROUP_CONCAT", - "keyword": "GROUP_CONCAT", - "type": 1, - "flags": 33, - "position": 948 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 960 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REPLACE", - "value": "REPLACE", - "keyword": "REPLACE", - "type": 1, - "flags": 35, - "position": 961 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 968 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@MULTIDB_QUERY", - "value": "MULTIDB_QUERY", - "keyword": null, - "type": 8, - "flags": 1, - "position": 969 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 983 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 984 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'$MULTIDB'", - "value": "$MULTIDB", - "keyword": null, - "type": 7, - "flags": 1, - "position": 985 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 995 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 996 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CONCAT", - "value": "CONCAT", - "keyword": "CONCAT", - "type": 1, - "flags": 33, - "position": 997 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1003 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "''", - "value": "", - "keyword": null, - "type": 7, - "flags": 1, - "position": 1004 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1006 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1007 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE_SCHEMA", - "value": "TABLE_SCHEMA", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1008 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1020 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1021 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "''", - "value": "", - "keyword": null, - "type": 7, - "flags": 1, - "position": 1022 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1024 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1025 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1026 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SEPARATOR", - "value": "SEPARATOR", - "keyword": "SEPARATOR", - "type": 1, - "flags": 3, - "position": 1027 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1036 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"\\nUNION ALL\\n\"", - "value": "\nUNION ALL\n", - "keyword": null, - "type": 7, - "flags": 2, - "position": 1037 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1052 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1053 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 1054 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1058 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@stmt_sql", - "value": "stmt_sql", - "keyword": null, - "type": 8, - "flags": 1, - "position": 1059 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1068 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 1069 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1073 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`MULTIDB_TEMP_DB_TBL_COLS`", - "value": "MULTIDB_TEMP_DB_TBL_COLS", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1074 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PREPARE", - "value": "PREPARE", - "keyword": "PREPARE", - "type": 1, - "flags": 1, - "position": 1103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "stmt", - "value": "stmt", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 1116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@stmt_sql", - "value": "stmt_sql", - "keyword": null, - "type": 8, - "flags": 1, - "position": 1121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EXECUTE", - "value": "EXECUTE", - "keyword": "EXECUTE", - "type": 1, - "flags": 1, - "position": 1132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "stmt", - "value": "stmt", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1144 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEALLOCATE", - "value": "DEALLOCATE", - "keyword": "DEALLOCATE", - "type": 1, - "flags": 1, - "position": 1146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PREPARE", - "value": "PREPARE", - "keyword": "PREPARE", - "type": 1, - "flags": 1, - "position": 1157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1164 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "stmt", - "value": "stmt", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1165 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1169 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1170 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "END", - "value": "END", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1171 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "$$", - "value": "$$", - "keyword": null, - "type": 9, - "flags": 0, - "position": 1174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1176 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "--\n", - "value": "--\n", - "keyword": null, - "type": 4, - "flags": 4, - "position": 1178 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1180 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- Functions", - "value": "-- Functions", - "keyword": null, - "type": 4, - "flags": 4, - "position": 1181 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1193 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "--\n", - "value": "--\n", - "keyword": null, - "type": 4, - "flags": 4, - "position": 1194 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1196 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELIMITER", - "value": "DELIMITER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1197 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1206 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "$$", - "value": "$$", - "keyword": null, - "type": 9, - "flags": 0, - "position": 1207 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1209 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 1210 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1216 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFINER", - "value": "DEFINER", - "keyword": "DEFINER", - "type": 1, - "flags": 1, - "position": 1217 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 1224 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`root`@`localhost`", - "value": "root@localhost", - "keyword": null, - "type": 8, - "flags": 4, - "position": 1225 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1243 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FUNCTION", - "value": "FUNCTION", - "keyword": "FUNCTION", - "type": 1, - "flags": 1, - "position": 1244 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1252 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`attrParentShiftIds`", - "value": "attrParentShiftIds", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1253 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1273 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1274 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`parent_id`", - "value": "parent_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1275 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1286 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TEXT", - "value": "TEXT", - "keyword": "TEXT", - "type": 1, - "flags": 9, - "position": 1287 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1291 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1292 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`option_id_shift`", - "value": "option_id_shift", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1293 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1310 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 1311 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1314 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1315 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`option_value_id_shift`", - "value": "option_value_id_shift", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1316 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1339 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 1340 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1343 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1344 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RETURNS", - "value": "RETURNS", - "keyword": "RETURNS", - "type": 1, - "flags": 1, - "position": 1345 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1352 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TEXT", - "value": "TEXT", - "keyword": "TEXT", - "type": 1, - "flags": 9, - "position": 1353 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1357 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHARSET", - "value": "CHARSET", - "keyword": "CHARSET", - "type": 1, - "flags": 33, - "position": 1358 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1365 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8mb4", - "value": "utf8mb4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1366 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1373 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLLATE", - "value": "COLLATE", - "keyword": "COLLATE", - "type": 1, - "flags": 3, - "position": 1374 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1381 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8mb4_unicode_520_ci", - "value": "utf8mb4_unicode_520_ci", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1382 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1404 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DETERMINISTIC", - "value": "DETERMINISTIC", - "keyword": "DETERMINISTIC", - "type": 1, - "flags": 3, - "position": 1405 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1418 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "READS SQL DATA", - "value": "READS SQL DATA", - "keyword": "READS SQL DATA", - "type": 1, - "flags": 7, - "position": 1419 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1433 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SQL SECURITY", - "value": "SQL SECURITY", - "keyword": "SQL SECURITY", - "type": 1, - "flags": 7, - "position": 1434 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1446 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INVOKER", - "value": "INVOKER", - "keyword": "INVOKER", - "type": 1, - "flags": 1, - "position": 1447 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1454 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BEGIN", - "value": "BEGIN", - "keyword": "BEGIN", - "type": 1, - "flags": 1, - "position": 1455 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1460 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DECLARE", - "value": "DECLARE", - "keyword": "DECLARE", - "type": 1, - "flags": 3, - "position": 1463 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1470 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "i", - "value": "i", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1471 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1472 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 1473 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1476 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 1477 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1485 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 1486 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1493 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1494 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1495 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1496 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DECLARE", - "value": "DECLARE", - "keyword": "DECLARE", - "type": 1, - "flags": 3, - "position": 1499 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1506 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pair_count", - "value": "pair_count", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1507 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1517 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 1518 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1521 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 1522 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1530 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1531 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DECLARE", - "value": "DECLARE", - "keyword": "DECLARE", - "type": 1, - "flags": 3, - "position": 1534 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1541 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "result", - "value": "result", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1542 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1548 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TEXT", - "value": "TEXT", - "keyword": "TEXT", - "type": 1, - "flags": 9, - "position": 1549 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1553 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 1554 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1561 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "''", - "value": "", - "keyword": null, - "type": 7, - "flags": 1, - "position": 1562 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1564 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1565 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DECLARE", - "value": "DECLARE", - "keyword": "DECLARE", - "type": 1, - "flags": 3, - "position": 1569 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1576 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pair", - "value": "pair", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1577 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1581 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VARCHAR", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 1582 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1589 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "255", - "value": 255, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1590 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1593 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1594 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 1595 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1602 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "''", - "value": "", - "keyword": null, - "type": 7, - "flags": 1, - "position": 1603 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1605 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1606 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DECLARE", - "value": "DECLARE", - "keyword": "DECLARE", - "type": 1, - "flags": 3, - "position": 1609 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1616 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "oid", - "value": "oid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1617 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1620 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 1621 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1624 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 1625 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1632 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "''", - "value": "", - "keyword": null, - "type": 7, - "flags": 1, - "position": 1633 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1635 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1636 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DECLARE", - "value": "DECLARE", - "keyword": "DECLARE", - "type": 1, - "flags": 3, - "position": 1639 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1646 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "vid", - "value": "vid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1647 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1650 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 1651 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1654 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 1655 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1662 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "''", - "value": "", - "keyword": null, - "type": 7, - "flags": 1, - "position": 1663 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1665 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1666 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 1670 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1673 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pair_count", - "value": "pair_count", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1674 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1684 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 1685 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1686 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "substrCount", - "value": "substrCount", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1687 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1698 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "parent_id", - "value": "parent_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1699 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1708 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1709 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "','", - "value": ",", - "keyword": null, - "type": 7, - "flags": 1, - "position": 1710 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1713 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1714 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+", - "value": "+", - "keyword": null, - "type": 2, - "flags": 1, - "position": 1715 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1716 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1717 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1718 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1719 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHILE", - "value": "WHILE", - "keyword": "WHILE", - "type": 1, - "flags": 3, - "position": 1723 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1728 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "i", - "value": "i", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1729 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1730 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "<", - "value": "<", - "keyword": null, - "type": 2, - "flags": 2, - "position": 1731 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1732 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pair_count", - "value": "pair_count", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1733 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1743 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DO", - "value": "DO", - "keyword": "DO", - "type": 1, - "flags": 1, - "position": 1744 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1746 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 1751 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1754 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "result", - "value": "result", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1755 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1761 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 1762 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1763 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CONCAT", - "value": "CONCAT", - "keyword": "CONCAT", - "type": 1, - "flags": 33, - "position": 1764 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1770 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "result", - "value": "result", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1771 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1777 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1778 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IF", - "value": "IF", - "keyword": "IF", - "type": 1, - "flags": 35, - "position": 1779 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1781 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "i", - "value": "i", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1782 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1783 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "<=", - "value": "<=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 1784 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1786 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1787 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1788 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1789 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "''", - "value": "", - "keyword": null, - "type": 7, - "flags": 1, - "position": 1790 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1792 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1793 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "','", - "value": ",", - "keyword": null, - "type": 7, - "flags": 1, - "position": 1794 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1797 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1798 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1799 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1800 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 1806 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1809 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pair", - "value": "pair", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1810 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1814 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 1815 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1816 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "split", - "value": "split", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1817 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1822 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "parent_id", - "value": "parent_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1823 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1832 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1833 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "','", - "value": ",", - "keyword": null, - "type": 7, - "flags": 1, - "position": 1834 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1837 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1838 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "i", - "value": "i", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1839 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1840 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+", - "value": "+", - "keyword": null, - "type": 2, - "flags": 1, - "position": 1841 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1842 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1843 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1844 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1845 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1846 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 1852 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1855 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "oid", - "value": "oid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1856 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1859 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 1860 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1861 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "split", - "value": "split", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1862 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1867 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pair", - "value": "pair", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1868 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1872 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1873 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'-'", - "value": "-", - "keyword": null, - "type": 7, - "flags": 1, - "position": 1874 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1877 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1878 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1879 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1880 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1881 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+", - "value": "+", - "keyword": null, - "type": 2, - "flags": 1, - "position": 1882 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1883 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "option_id_shift", - "value": "option_id_shift", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1884 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1899 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1900 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 1905 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1908 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "vid", - "value": "vid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1909 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1912 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 1913 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1914 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "split", - "value": "split", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1915 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1920 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pair", - "value": "pair", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1921 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1925 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1926 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'-'", - "value": "-", - "keyword": null, - "type": 7, - "flags": 1, - "position": 1927 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1930 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1931 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1932 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1933 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1934 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+", - "value": "+", - "keyword": null, - "type": 2, - "flags": 1, - "position": 1935 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1936 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "option_value_id_shift", - "value": "option_value_id_shift", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1937 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1958 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1959 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 1965 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1968 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pair", - "value": "pair", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1969 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1973 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 1974 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1975 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CONCAT", - "value": "CONCAT", - "keyword": "CONCAT", - "type": 1, - "flags": 33, - "position": 1976 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1982 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "oid", - "value": "oid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1983 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1986 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1987 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'-'", - "value": "-", - "keyword": null, - "type": 7, - "flags": 1, - "position": 1988 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1991 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1992 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "vid", - "value": "vid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1993 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1996 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1997 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1998 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 2003 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2006 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "result", - "value": "result", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2007 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2013 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2014 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2015 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CONCAT", - "value": "CONCAT", - "keyword": "CONCAT", - "type": 1, - "flags": 33, - "position": 2016 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2022 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "result", - "value": "result", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2023 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2029 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2030 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pair", - "value": "pair", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2031 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2035 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2036 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2037 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 2043 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2046 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "i", - "value": "i", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2047 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2048 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2049 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2050 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "i", - "value": "i", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2051 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2052 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+", - "value": "+", - "keyword": null, - "type": 2, - "flags": 1, - "position": 2053 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2054 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 2055 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2056 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2057 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "END", - "value": "END", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 2060 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2063 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHILE", - "value": "WHILE", - "keyword": "WHILE", - "type": 1, - "flags": 3, - "position": 2064 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2069 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2070 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RETURN", - "value": "RETURN", - "keyword": "RETURN", - "type": 1, - "flags": 3, - "position": 2074 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2080 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "result", - "value": "result", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2081 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2087 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2088 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "END", - "value": "END", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2089 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "$$", - "value": "$$", - "keyword": null, - "type": 9, - "flags": 0, - "position": 2092 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2094 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELIMITER", - "value": "DELIMITER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2096 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "$$", - "value": "$$", - "keyword": null, - "type": 9, - "flags": 0, - "position": 2106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 2109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFINER", - "value": "DEFINER", - "keyword": "DEFINER", - "type": 1, - "flags": 1, - "position": 2116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`user`@`localhost`", - "value": "user@localhost", - "keyword": null, - "type": 8, - "flags": 4, - "position": 2124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FUNCTION", - "value": "FUNCTION", - "keyword": "FUNCTION", - "type": 1, - "flags": 1, - "position": 2143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`split`", - "value": "split", - "keyword": null, - "type": 8, - "flags": 2, - "position": 2152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2159 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2160 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`string`", - "value": "string", - "keyword": null, - "type": 8, - "flags": 2, - "position": 2161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2169 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TEXT", - "value": "TEXT", - "keyword": "TEXT", - "type": 1, - "flags": 9, - "position": 2170 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2175 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`delim`", - "value": "delim", - "keyword": null, - "type": 8, - "flags": 2, - "position": 2176 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2183 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TEXT", - "value": "TEXT", - "keyword": "TEXT", - "type": 1, - "flags": 9, - "position": 2184 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2188 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2189 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`n`", - "value": "n", - "keyword": null, - "type": 8, - "flags": 2, - "position": 2190 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2193 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 2194 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2197 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2198 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RETURNS", - "value": "RETURNS", - "keyword": "RETURNS", - "type": 1, - "flags": 1, - "position": 2199 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2206 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TEXT", - "value": "TEXT", - "keyword": "TEXT", - "type": 1, - "flags": 9, - "position": 2207 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2211 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHARSET", - "value": "CHARSET", - "keyword": "CHARSET", - "type": 1, - "flags": 33, - "position": 2212 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2219 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8mb4", - "value": "utf8mb4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2220 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2227 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLLATE", - "value": "COLLATE", - "keyword": "COLLATE", - "type": 1, - "flags": 3, - "position": 2228 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2235 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8mb4_unicode_520_ci", - "value": "utf8mb4_unicode_520_ci", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2236 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2258 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DETERMINISTIC", - "value": "DETERMINISTIC", - "keyword": "DETERMINISTIC", - "type": 1, - "flags": 3, - "position": 2259 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2272 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SQL SECURITY", - "value": "SQL SECURITY", - "keyword": "SQL SECURITY", - "type": 1, - "flags": 7, - "position": 2273 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2285 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INVOKER", - "value": "INVOKER", - "keyword": "INVOKER", - "type": 1, - "flags": 1, - "position": 2286 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2293 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RETURN", - "value": "RETURN", - "keyword": "RETURN", - "type": 1, - "flags": 3, - "position": 2294 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2300 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IF", - "value": "IF", - "keyword": "IF", - "type": 1, - "flags": 35, - "position": 2301 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2303 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2304 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2309 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LENGTH", - "value": "LENGTH", - "keyword": "LENGTH", - "type": 1, - "flags": 33, - "position": 2310 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2316 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "string", - "value": "string", - "keyword": "STRING", - "type": 1, - "flags": 1, - "position": 2317 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2323 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2324 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-", - "value": "-", - "keyword": null, - "type": 2, - "flags": 1, - "position": 2325 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2326 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LENGTH", - "value": "LENGTH", - "keyword": "LENGTH", - "type": 1, - "flags": 33, - "position": 2327 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2333 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REPLACE", - "value": "REPLACE", - "keyword": "REPLACE", - "type": 1, - "flags": 35, - "position": 2334 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2341 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "string", - "value": "string", - "keyword": "STRING", - "type": 1, - "flags": 1, - "position": 2342 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2348 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2349 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "delim", - "value": "delim", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2350 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2355 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2356 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "''", - "value": "", - "keyword": null, - "type": 7, - "flags": 1, - "position": 2357 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2359 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2360 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2361 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2362 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/", - "value": "/", - "keyword": null, - "type": 2, - "flags": 1, - "position": 2363 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2364 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LENGTH", - "value": "LENGTH", - "keyword": "LENGTH", - "type": 1, - "flags": 33, - "position": 2365 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2371 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "delim", - "value": "delim", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2372 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2377 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2378 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "<", - "value": "<", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2379 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2380 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "n", - "value": "n", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2381 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2382 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-", - "value": "-", - "keyword": null, - "type": 2, - "flags": 1, - "position": 2383 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2384 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 2385 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2386 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2387 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 2392 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2396 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2397 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBSTRING_INDEX", - "value": "SUBSTRING_INDEX", - "keyword": "SUBSTRING_INDEX", - "type": 1, - "flags": 33, - "position": 2402 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2417 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBSTRING_INDEX", - "value": "SUBSTRING_INDEX", - "keyword": "SUBSTRING_INDEX", - "type": 1, - "flags": 33, - "position": 2418 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2433 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "string", - "value": "string", - "keyword": "STRING", - "type": 1, - "flags": 1, - "position": 2434 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2440 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2441 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "delim", - "value": "delim", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2442 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2447 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2448 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "n", - "value": "n", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2449 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2450 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2451 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2452 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "delim", - "value": "delim", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2453 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2458 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2459 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-1", - "value": -1, - "keyword": null, - "type": 6, - "flags": 8, - "position": 2460 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2462 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2463 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2464 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "$$", - "value": "$$", - "keyword": null, - "type": 9, - "flags": 0, - "position": 2465 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2467 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELIMITER", - "value": "DELIMITER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2469 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2478 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "$$", - "value": "$$", - "keyword": null, - "type": 9, - "flags": 0, - "position": 2479 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2481 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 2482 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2488 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFINER", - "value": "DEFINER", - "keyword": "DEFINER", - "type": 1, - "flags": 1, - "position": 2489 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2496 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`root`@`localhost`", - "value": "root@localhost", - "keyword": null, - "type": 8, - "flags": 4, - "position": 2497 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2515 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FUNCTION", - "value": "FUNCTION", - "keyword": "FUNCTION", - "type": 1, - "flags": 1, - "position": 2516 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2524 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`substrCount`", - "value": "substrCount", - "keyword": null, - "type": 8, - "flags": 2, - "position": 2525 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2538 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2539 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`s`", - "value": "s", - "keyword": null, - "type": 8, - "flags": 2, - "position": 2540 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2543 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VARCHAR", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 2544 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2551 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "255", - "value": 255, - "keyword": null, - "type": 6, - "flags": 0, - "position": 2552 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2555 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2556 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2557 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`ss`", - "value": "ss", - "keyword": null, - "type": 8, - "flags": 2, - "position": 2558 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2562 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VARCHAR", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 2563 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2570 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "255", - "value": 255, - "keyword": null, - "type": 6, - "flags": 0, - "position": 2571 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2574 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2575 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2576 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RETURNS", - "value": "RETURNS", - "keyword": "RETURNS", - "type": 1, - "flags": 1, - "position": 2577 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2584 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TINYINT", - "value": "TINYINT", - "keyword": "TINYINT", - "type": 1, - "flags": 11, - "position": 2585 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2592 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 2593 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2594 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2595 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 2596 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2604 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DETERMINISTIC", - "value": "DETERMINISTIC", - "keyword": "DETERMINISTIC", - "type": 1, - "flags": 3, - "position": 2605 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2618 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "READS SQL DATA", - "value": "READS SQL DATA", - "keyword": "READS SQL DATA", - "type": 1, - "flags": 7, - "position": 2619 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2633 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SQL SECURITY", - "value": "SQL SECURITY", - "keyword": "SQL SECURITY", - "type": 1, - "flags": 7, - "position": 2634 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2646 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INVOKER", - "value": "INVOKER", - "keyword": "INVOKER", - "type": 1, - "flags": 1, - "position": 2647 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2654 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BEGIN", - "value": "BEGIN", - "keyword": "BEGIN", - "type": 1, - "flags": 1, - "position": 2655 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2660 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DECLARE", - "value": "DECLARE", - "keyword": "DECLARE", - "type": 1, - "flags": 3, - "position": 2661 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2668 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COUNT", - "value": "COUNT", - "keyword": "COUNT", - "type": 1, - "flags": 33, - "position": 2669 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2674 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TINYINT", - "value": "TINYINT", - "keyword": "TINYINT", - "type": 1, - "flags": 11, - "position": 2675 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2682 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 2683 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2684 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2685 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 2686 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2694 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2695 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DECLARE", - "value": "DECLARE", - "keyword": "DECLARE", - "type": 1, - "flags": 3, - "position": 2696 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2703 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OFFSET_I", - "value": "OFFSET_I", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2704 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2712 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TINYINT", - "value": "TINYINT", - "keyword": "TINYINT", - "type": 1, - "flags": 11, - "position": 2713 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2720 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 2721 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2722 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2723 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 2724 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2732 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2733 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DECLARE", - "value": "DECLARE", - "keyword": "DECLARE", - "type": 1, - "flags": 3, - "position": 2734 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2741 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CONTINUE", - "value": "CONTINUE", - "keyword": "CONTINUE", - "type": 1, - "flags": 3, - "position": 2742 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2750 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "HANDLER", - "value": "HANDLER", - "keyword": "HANDLER", - "type": 1, - "flags": 1, - "position": 2751 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2758 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FOR", - "value": "FOR", - "keyword": "FOR", - "type": 1, - "flags": 3, - "position": 2759 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2762 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SQLSTATE", - "value": "SQLSTATE", - "keyword": "SQLSTATE", - "type": 1, - "flags": 3, - "position": 2763 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2771 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'02000'", - "value": "02000", - "keyword": null, - "type": 7, - "flags": 1, - "position": 2772 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2779 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 2780 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2783 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "s", - "value": "s", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2784 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2785 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2786 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2787 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 2788 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2792 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2793 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 2795 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2798 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COUNT", - "value": "COUNT", - "keyword": "COUNT", - "type": 1, - "flags": 33, - "position": 2799 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2804 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2805 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2806 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 2807 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2808 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2809 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 2810 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2813 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OFFSET_I", - "value": "OFFSET_I", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2814 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2822 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2823 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2824 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 2825 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2826 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2827 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REPEAT", - "value": "REPEAT", - "keyword": "REPEAT", - "type": 1, - "flags": 35, - "position": 2829 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2835 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IF", - "value": "IF", - "keyword": "IF", - "type": 1, - "flags": 35, - "position": 2836 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2838 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT", - "value": "NOT", - "keyword": "NOT", - "type": 1, - "flags": 3, - "position": 2839 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2842 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ISNULL", - "value": "ISNULL", - "keyword": "ISNULL", - "type": 1, - "flags": 33, - "position": 2843 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2849 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "s", - "value": "s", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2850 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2851 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2852 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 2853 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2856 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OFFSET_I", - "value": "OFFSET_I", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2857 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2865 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ">", - "value": ">", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2866 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2867 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 2868 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2869 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "THEN", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 2870 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2874 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 2875 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2878 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OFFSET_I", - "value": "OFFSET_I", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2879 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2887 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2888 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2889 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCATE", - "value": "LOCATE", - "keyword": "LOCATE", - "type": 1, - "flags": 33, - "position": 2890 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2896 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ss", - "value": "ss", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2897 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2899 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2900 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "s", - "value": "s", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2901 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2902 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2903 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OFFSET_I", - "value": "OFFSET_I", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2904 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2912 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2913 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2914 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IF", - "value": "IF", - "keyword": "IF", - "type": 1, - "flags": 35, - "position": 2915 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2917 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OFFSET_I", - "value": "OFFSET_I", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2918 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2926 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ">", - "value": ">", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2927 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2928 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 2929 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2930 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "THEN", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 2931 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2935 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 2936 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2939 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COUNT", - "value": "COUNT", - "keyword": "COUNT", - "type": 1, - "flags": 33, - "position": 2940 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2945 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2946 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2947 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COUNT", - "value": "COUNT", - "keyword": "COUNT", - "type": 1, - "flags": 33, - "position": 2948 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2953 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+", - "value": "+", - "keyword": null, - "type": 2, - "flags": 1, - "position": 2954 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2955 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 2956 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2957 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2958 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 2959 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2962 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OFFSET_I", - "value": "OFFSET_I", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2963 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2971 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2972 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2973 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OFFSET_I", - "value": "OFFSET_I", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2974 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2982 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+", - "value": "+", - "keyword": null, - "type": 2, - "flags": 1, - "position": 2983 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2984 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 2985 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2986 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2987 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "END", - "value": "END", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 2988 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2991 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IF", - "value": "IF", - "keyword": "IF", - "type": 1, - "flags": 35, - "position": 2992 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2994 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2995 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "END", - "value": "END", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 2996 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2999 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IF", - "value": "IF", - "keyword": "IF", - "type": 1, - "flags": 35, - "position": 3000 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3002 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3003 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNTIL", - "value": "UNTIL", - "keyword": "UNTIL", - "type": 1, - "flags": 1, - "position": 3004 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3009 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ISNULL", - "value": "ISNULL", - "keyword": "ISNULL", - "type": 1, - "flags": 33, - "position": 3010 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3016 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "s", - "value": "s", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3017 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3018 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3019 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OR", - "value": "OR", - "keyword": "OR", - "type": 1, - "flags": 3, - "position": 3020 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3022 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OFFSET_I", - "value": "OFFSET_I", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3023 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3031 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 3032 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3033 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 3034 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3035 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "END", - "value": "END", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 3036 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3039 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REPEAT", - "value": "REPEAT", - "keyword": "REPEAT", - "type": 1, - "flags": 35, - "position": 3040 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3046 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3047 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RETURN", - "value": "RETURN", - "keyword": "RETURN", - "type": 1, - "flags": 3, - "position": 3049 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3055 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COUNT", - "value": "COUNT", - "keyword": "COUNT", - "type": 1, - "flags": 33, - "position": 3056 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3061 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3062 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "END", - "value": "END", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3063 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "$$", - "value": "$$", - "keyword": null, - "type": 9, - "flags": 0, - "position": 3066 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3068 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELIMITER", - "value": "DELIMITER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3070 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3079 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 3080 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3081 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 926, - "idx": 926 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@2" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "multiDBqueryRun_V12", - "column": null, - "expr": "`multiDBqueryRun_V12`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "NOT", - "equals": false, - "expr": "DETERMINISTIC", - "value": "DETERMINISTIC" - }, - "4": "MODIFIES SQL DATA", - "6": { - "name": "SQL SECURITY", - "equals": false, - "expr": "INVOKER", - "value": "INVOKER" - }, - "8": { - "name": "COMMENT", - "equals": false, - "expr": "'Query: SingleDB → MultiDB (All DBs) + run it'", - "value": "Query: SingleDB → MultiDB (All DBs) + run it" - } - } - }, - "fields": null, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ParameterDefinition", - "name": "query", - "inOut": "IN", - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "TEXT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ParameterDefinition", - "name": "table_name_var", - "inOut": "IN", - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [ - "255" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ParameterDefinition", - "name": "columns_used_var", - "inOut": "IN", - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "TEXT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ParameterDefinition", - "name": "where_text_var", - "inOut": "IN", - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "TEXT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ParameterDefinition", - "name": "separator_value_var", - "inOut": "IN", - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [ - "255" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - } - ], - "body": [ - { - "@type": "@72" - }, - { - "@type": "@73" - }, - { - "@type": "@74" - }, - { - "@type": "@75" - }, - { - "@type": "@76" - }, - { - "@type": "@77" - }, - { - "@type": "@78" - }, - { - "@type": "@79" - }, - { - "@type": "@80" - }, - { - "@type": "@81" - }, - { - "@type": "@82" - }, - { - "@type": "@83" - }, - { - "@type": "@84" - }, - { - "@type": "@85" - }, - { - "@type": "@86" - }, - { - "@type": "@87" - }, - { - "@type": "@88" - }, - { - "@type": "@89" - }, - { - "@type": "@90" - }, - { - "@type": "@91" - }, - { - "@type": "@92" - }, - { - "@type": "@93" - }, - { - "@type": "@94" - }, - { - "@type": "@95" - }, - { - "@type": "@96" - }, - { - "@type": "@97" - }, - { - "@type": "@98" - }, - { - "@type": "@99" - }, - { - "@type": "@100" - }, - { - "@type": "@101" - }, - { - "@type": "@102" - }, - { - "@type": "@103" - }, - { - "@type": "@104" - }, - { - "@type": "@105" - }, - { - "@type": "@106" - }, - { - "@type": "@107" - }, - { - "@type": "@108" - }, - { - "@type": "@109" - }, - { - "@type": "@110" - }, - { - "@type": "@111" - }, - { - "@type": "@112" - }, - { - "@type": "@113" - }, - { - "@type": "@114" - }, - { - "@type": "@115" - }, - { - "@type": "@116" - }, - { - "@type": "@117" - }, - { - "@type": "@118" - }, - { - "@type": "@119" - }, - { - "@type": "@120" - }, - { - "@type": "@121" - }, - { - "@type": "@122" - }, - { - "@type": "@123" - }, - { - "@type": "@124" - }, - { - "@type": "@125" - }, - { - "@type": "@126" - }, - { - "@type": "@127" - }, - { - "@type": "@128" - }, - { - "@type": "@129" - }, - { - "@type": "@130" - }, - { - "@type": "@131" - }, - { - "@type": "@132" - }, - { - "@type": "@133" - }, - { - "@type": "@134" - }, - { - "@type": "@135" - }, - { - "@type": "@136" - }, - { - "@type": "@137" - }, - { - "@type": "@138" - }, - { - "@type": "@139" - }, - { - "@type": "@140" - }, - { - "@type": "@141" - }, - { - "@type": "@142" - }, - { - "@type": "@143" - }, - { - "@type": "@144" - }, - { - "@type": "@145" - }, - { - "@type": "@146" - }, - { - "@type": "@147" - }, - { - "@type": "@148" - }, - { - "@type": "@149" - }, - { - "@type": "@150" - }, - { - "@type": "@151" - }, - { - "@type": "@152" - }, - { - "@type": "@153" - }, - { - "@type": "@154" - }, - { - "@type": "@155" - }, - { - "@type": "@156" - }, - { - "@type": "@157" - }, - { - "@type": "@158" - }, - { - "@type": "@159" - }, - { - "@type": "@160" - }, - { - "@type": "@161" - }, - { - "@type": "@162" - }, - { - "@type": "@163" - }, - { - "@type": "@164" - }, - { - "@type": "@165" - }, - { - "@type": "@166" - }, - { - "@type": "@167" - }, - { - "@type": "@168" - }, - { - "@type": "@169" - }, - { - "@type": "@170" - }, - { - "@type": "@171" - }, - { - "@type": "@172" - }, - { - "@type": "@173" - }, - { - "@type": "@174" - }, - { - "@type": "@175" - }, - { - "@type": "@176" - }, - { - "@type": "@177" - }, - { - "@type": "@178" - }, - { - "@type": "@179" - }, - { - "@type": "@180" - }, - { - "@type": "@181" - }, - { - "@type": "@182" - }, - { - "@type": "@183" - }, - { - "@type": "@184" - }, - { - "@type": "@185" - }, - { - "@type": "@186" - }, - { - "@type": "@187" - }, - { - "@type": "@188" - }, - { - "@type": "@189" - }, - { - "@type": "@190" - }, - { - "@type": "@191" - }, - { - "@type": "@192" - }, - { - "@type": "@193" - }, - { - "@type": "@194" - }, - { - "@type": "@195" - }, - { - "@type": "@196" - }, - { - "@type": "@197" - }, - { - "@type": "@198" - }, - { - "@type": "@199" - }, - { - "@type": "@200" - }, - { - "@type": "@201" - }, - { - "@type": "@202" - }, - { - "@type": "@203" - }, - { - "@type": "@204" - }, - { - "@type": "@205" - }, - { - "@type": "@206" - }, - { - "@type": "@207" - }, - { - "@type": "@208" - }, - { - "@type": "@209" - }, - { - "@type": "@210" - }, - { - "@type": "@211" - }, - { - "@type": "@212" - }, - { - "@type": "@213" - }, - { - "@type": "@214" - }, - { - "@type": "@215" - }, - { - "@type": "@216" - }, - { - "@type": "@217" - }, - { - "@type": "@218" - }, - { - "@type": "@219" - }, - { - "@type": "@220" - }, - { - "@type": "@221" - }, - { - "@type": "@222" - }, - { - "@type": "@223" - }, - { - "@type": "@224" - }, - { - "@type": "@225" - }, - { - "@type": "@226" - }, - { - "@type": "@227" - }, - { - "@type": "@228" - }, - { - "@type": "@229" - }, - { - "@type": "@230" - }, - { - "@type": "@231" - }, - { - "@type": "@232" - }, - { - "@type": "@233" - }, - { - "@type": "@234" - }, - { - "@type": "@235" - }, - { - "@type": "@236" - }, - { - "@type": "@237" - }, - { - "@type": "@238" - }, - { - "@type": "@239" - }, - { - "@type": "@240" - }, - { - "@type": "@241" - }, - { - "@type": "@242" - }, - { - "@type": "@243" - }, - { - "@type": "@244" - }, - { - "@type": "@245" - }, - { - "@type": "@246" - }, - { - "@type": "@247" - }, - { - "@type": "@248" - }, - { - "@type": "@249" - }, - { - "@type": "@250" - }, - { - "@type": "@251" - }, - { - "@type": "@252" - }, - { - "@type": "@253" - }, - { - "@type": "@254" - }, - { - "@type": "@255" - }, - { - "@type": "@256" - }, - { - "@type": "@257" - }, - { - "@type": "@258" - }, - { - "@type": "@259" - }, - { - "@type": "@260" - }, - { - "@type": "@261" - }, - { - "@type": "@262" - }, - { - "@type": "@263" - }, - { - "@type": "@264" - }, - { - "@type": "@265" - }, - { - "@type": "@266" - }, - { - "@type": "@267" - }, - { - "@type": "@268" - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": { - "name": "DEFINER", - "equals": true, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "user@localhost", - "expr": "`user`@`localhost`", - "alias": null, - "function": null, - "subquery": null - }, - "value": "`user`@`localhost`" - }, - "6": "PROCEDURE" - } - }, - "first": 4, - "last": 266 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "attrParentShiftIds", - "column": null, - "expr": "`attrParentShiftIds`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "DETERMINISTIC", - "4": "READS SQL DATA", - "6": { - "name": "SQL SECURITY", - "equals": false, - "expr": "INVOKER", - "value": "INVOKER" - } - } - }, - "fields": null, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "TEXT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "CHARSET", - "equals": false, - "expr": "utf8mb4", - "value": "utf8mb4" - }, - "3": { - "name": "COLLATE", - "equals": false, - "expr": "utf8mb4_unicode_520_ci", - "value": "utf8mb4_unicode_520_ci" - } - } - } - }, - "parameters": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ParameterDefinition", - "name": "parent_id", - "inOut": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "TEXT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ParameterDefinition", - "name": "option_id_shift", - "inOut": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ParameterDefinition", - "name": "option_value_id_shift", - "inOut": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - } - ], - "body": [ - { - "@type": "@327" - }, - { - "@type": "@328" - }, - { - "@type": "@329" - }, - { - "@type": "@330" - }, - { - "@type": "@331" - }, - { - "@type": "@332" - }, - { - "@type": "@333" - }, - { - "@type": "@334" - }, - { - "@type": "@335" - }, - { - "@type": "@336" - }, - { - "@type": "@337" - }, - { - "@type": "@338" - }, - { - "@type": "@339" - }, - { - "@type": "@340" - }, - { - "@type": "@341" - }, - { - "@type": "@342" - }, - { - "@type": "@343" - }, - { - "@type": "@344" - }, - { - "@type": "@345" - }, - { - "@type": "@346" - }, - { - "@type": "@347" - }, - { - "@type": "@348" - }, - { - "@type": "@349" - }, - { - "@type": "@350" - }, - { - "@type": "@351" - }, - { - "@type": "@352" - }, - { - "@type": "@353" - }, - { - "@type": "@354" - }, - { - "@type": "@355" - }, - { - "@type": "@356" - }, - { - "@type": "@357" - }, - { - "@type": "@358" - }, - { - "@type": "@359" - }, - { - "@type": "@360" - }, - { - "@type": "@361" - }, - { - "@type": "@362" - }, - { - "@type": "@363" - }, - { - "@type": "@364" - }, - { - "@type": "@365" - }, - { - "@type": "@366" - }, - { - "@type": "@367" - }, - { - "@type": "@368" - }, - { - "@type": "@369" - }, - { - "@type": "@370" - }, - { - "@type": "@371" - }, - { - "@type": "@372" - }, - { - "@type": "@373" - }, - { - "@type": "@374" - }, - { - "@type": "@375" - }, - { - "@type": "@376" - }, - { - "@type": "@377" - }, - { - "@type": "@378" - }, - { - "@type": "@379" - }, - { - "@type": "@380" - }, - { - "@type": "@381" - }, - { - "@type": "@382" - }, - { - "@type": "@383" - }, - { - "@type": "@384" - }, - { - "@type": "@385" - }, - { - "@type": "@386" - }, - { - "@type": "@387" - }, - { - "@type": "@388" - }, - { - "@type": "@389" - }, - { - "@type": "@390" - }, - { - "@type": "@391" - }, - { - "@type": "@392" - }, - { - "@type": "@393" - }, - { - "@type": "@394" - }, - { - "@type": "@395" - }, - { - "@type": "@396" - }, - { - "@type": "@397" - }, - { - "@type": "@398" - }, - { - "@type": "@399" - }, - { - "@type": "@400" - }, - { - "@type": "@401" - }, - { - "@type": "@402" - }, - { - "@type": "@403" - }, - { - "@type": "@404" - }, - { - "@type": "@405" - }, - { - "@type": "@406" - }, - { - "@type": "@407" - }, - { - "@type": "@408" - }, - { - "@type": "@409" - }, - { - "@type": "@410" - }, - { - "@type": "@411" - }, - { - "@type": "@412" - }, - { - "@type": "@413" - }, - { - "@type": "@414" - }, - { - "@type": "@415" - }, - { - "@type": "@416" - }, - { - "@type": "@417" - }, - { - "@type": "@418" - }, - { - "@type": "@419" - }, - { - "@type": "@420" - }, - { - "@type": "@421" - }, - { - "@type": "@422" - }, - { - "@type": "@423" - }, - { - "@type": "@424" - }, - { - "@type": "@425" - }, - { - "@type": "@426" - }, - { - "@type": "@427" - }, - { - "@type": "@428" - }, - { - "@type": "@429" - }, - { - "@type": "@430" - }, - { - "@type": "@431" - }, - { - "@type": "@432" - }, - { - "@type": "@433" - }, - { - "@type": "@434" - }, - { - "@type": "@435" - }, - { - "@type": "@436" - }, - { - "@type": "@437" - }, - { - "@type": "@438" - }, - { - "@type": "@439" - }, - { - "@type": "@440" - }, - { - "@type": "@441" - }, - { - "@type": "@442" - }, - { - "@type": "@443" - }, - { - "@type": "@444" - }, - { - "@type": "@445" - }, - { - "@type": "@446" - }, - { - "@type": "@447" - }, - { - "@type": "@448" - }, - { - "@type": "@449" - }, - { - "@type": "@450" - }, - { - "@type": "@451" - }, - { - "@type": "@452" - }, - { - "@type": "@453" - }, - { - "@type": "@454" - }, - { - "@type": "@455" - }, - { - "@type": "@456" - }, - { - "@type": "@457" - }, - { - "@type": "@458" - }, - { - "@type": "@459" - }, - { - "@type": "@460" - }, - { - "@type": "@461" - }, - { - "@type": "@462" - }, - { - "@type": "@463" - }, - { - "@type": "@464" - }, - { - "@type": "@465" - }, - { - "@type": "@466" - }, - { - "@type": "@467" - }, - { - "@type": "@468" - }, - { - "@type": "@469" - }, - { - "@type": "@470" - }, - { - "@type": "@471" - }, - { - "@type": "@472" - }, - { - "@type": "@473" - }, - { - "@type": "@474" - }, - { - "@type": "@475" - }, - { - "@type": "@476" - }, - { - "@type": "@477" - }, - { - "@type": "@478" - }, - { - "@type": "@479" - }, - { - "@type": "@480" - }, - { - "@type": "@481" - }, - { - "@type": "@482" - }, - { - "@type": "@483" - }, - { - "@type": "@484" - }, - { - "@type": "@485" - }, - { - "@type": "@486" - }, - { - "@type": "@487" - }, - { - "@type": "@488" - }, - { - "@type": "@489" - }, - { - "@type": "@490" - }, - { - "@type": "@491" - }, - { - "@type": "@492" - }, - { - "@type": "@493" - }, - { - "@type": "@494" - }, - { - "@type": "@495" - }, - { - "@type": "@496" - }, - { - "@type": "@497" - }, - { - "@type": "@498" - }, - { - "@type": "@499" - }, - { - "@type": "@500" - }, - { - "@type": "@501" - }, - { - "@type": "@502" - }, - { - "@type": "@503" - }, - { - "@type": "@504" - }, - { - "@type": "@505" - }, - { - "@type": "@506" - }, - { - "@type": "@507" - }, - { - "@type": "@508" - }, - { - "@type": "@509" - }, - { - "@type": "@510" - }, - { - "@type": "@511" - }, - { - "@type": "@512" - }, - { - "@type": "@513" - }, - { - "@type": "@514" - }, - { - "@type": "@515" - }, - { - "@type": "@516" - }, - { - "@type": "@517" - }, - { - "@type": "@518" - }, - { - "@type": "@519" - }, - { - "@type": "@520" - }, - { - "@type": "@521" - }, - { - "@type": "@522" - }, - { - "@type": "@523" - }, - { - "@type": "@524" - }, - { - "@type": "@525" - }, - { - "@type": "@526" - }, - { - "@type": "@527" - }, - { - "@type": "@528" - }, - { - "@type": "@529" - }, - { - "@type": "@530" - }, - { - "@type": "@531" - }, - { - "@type": "@532" - }, - { - "@type": "@533" - }, - { - "@type": "@534" - }, - { - "@type": "@535" - }, - { - "@type": "@536" - }, - { - "@type": "@537" - }, - { - "@type": "@538" - }, - { - "@type": "@539" - }, - { - "@type": "@540" - }, - { - "@type": "@541" - }, - { - "@type": "@542" - }, - { - "@type": "@543" - }, - { - "@type": "@544" - }, - { - "@type": "@545" - }, - { - "@type": "@546" - }, - { - "@type": "@547" - }, - { - "@type": "@548" - }, - { - "@type": "@549" - }, - { - "@type": "@550" - }, - { - "@type": "@551" - }, - { - "@type": "@552" - }, - { - "@type": "@553" - }, - { - "@type": "@554" - }, - { - "@type": "@555" - }, - { - "@type": "@556" - }, - { - "@type": "@557" - }, - { - "@type": "@558" - }, - { - "@type": "@559" - }, - { - "@type": "@560" - }, - { - "@type": "@561" - }, - { - "@type": "@562" - }, - { - "@type": "@563" - }, - { - "@type": "@564" - }, - { - "@type": "@565" - }, - { - "@type": "@566" - }, - { - "@type": "@567" - }, - { - "@type": "@568" - }, - { - "@type": "@569" - }, - { - "@type": "@570" - }, - { - "@type": "@571" - }, - { - "@type": "@572" - }, - { - "@type": "@573" - }, - { - "@type": "@574" - }, - { - "@type": "@575" - }, - { - "@type": "@576" - }, - { - "@type": "@577" - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": { - "name": "DEFINER", - "equals": true, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "root@localhost", - "expr": "`root`@`localhost`", - "alias": null, - "function": null, - "subquery": null - }, - "value": "`root`@`localhost`" - }, - "6": "FUNCTION" - } - }, - "first": 278, - "last": 575 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "split", - "column": null, - "expr": "`split`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "DETERMINISTIC", - "6": { - "name": "SQL SECURITY", - "equals": false, - "expr": "INVOKER", - "value": "INVOKER" - } - } - }, - "fields": null, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "TEXT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "CHARSET", - "equals": false, - "expr": "utf8mb4", - "value": "utf8mb4" - }, - "3": { - "name": "COLLATE", - "equals": false, - "expr": "utf8mb4_unicode_520_ci", - "value": "utf8mb4_unicode_520_ci" - } - } - } - }, - "parameters": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ParameterDefinition", - "name": "string", - "inOut": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "TEXT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ParameterDefinition", - "name": "delim", - "inOut": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "TEXT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ParameterDefinition", - "name": "n", - "inOut": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - } - ], - "body": [ - { - "@type": "@628" - }, - { - "@type": "@629" - }, - { - "@type": "@630" - }, - { - "@type": "@631" - }, - { - "@type": "@632" - }, - { - "@type": "@633" - }, - { - "@type": "@634" - }, - { - "@type": "@635" - }, - { - "@type": "@636" - }, - { - "@type": "@637" - }, - { - "@type": "@638" - }, - { - "@type": "@639" - }, - { - "@type": "@640" - }, - { - "@type": "@641" - }, - { - "@type": "@642" - }, - { - "@type": "@643" - }, - { - "@type": "@644" - }, - { - "@type": "@645" - }, - { - "@type": "@646" - }, - { - "@type": "@647" - }, - { - "@type": "@648" - }, - { - "@type": "@649" - }, - { - "@type": "@650" - }, - { - "@type": "@651" - }, - { - "@type": "@652" - }, - { - "@type": "@653" - }, - { - "@type": "@654" - }, - { - "@type": "@655" - }, - { - "@type": "@656" - }, - { - "@type": "@657" - }, - { - "@type": "@658" - }, - { - "@type": "@659" - }, - { - "@type": "@660" - }, - { - "@type": "@661" - }, - { - "@type": "@662" - }, - { - "@type": "@663" - }, - { - "@type": "@664" - }, - { - "@type": "@665" - }, - { - "@type": "@666" - }, - { - "@type": "@667" - }, - { - "@type": "@668" - }, - { - "@type": "@669" - }, - { - "@type": "@670" - }, - { - "@type": "@671" - }, - { - "@type": "@672" - }, - { - "@type": "@673" - }, - { - "@type": "@674" - }, - { - "@type": "@675" - }, - { - "@type": "@676" - }, - { - "@type": "@677" - }, - { - "@type": "@678" - }, - { - "@type": "@679" - }, - { - "@type": "@680" - }, - { - "@type": "@681" - }, - { - "@type": "@682" - }, - { - "@type": "@683" - }, - { - "@type": "@684" - }, - { - "@type": "@685" - }, - { - "@type": "@686" - }, - { - "@type": "@687" - }, - { - "@type": "@688" - }, - { - "@type": "@689" - }, - { - "@type": "@690" - }, - { - "@type": "@691" - }, - { - "@type": "@692" - }, - { - "@type": "@693" - }, - { - "@type": "@694" - }, - { - "@type": "@695" - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": { - "name": "DEFINER", - "equals": true, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "user@localhost", - "expr": "`user`@`localhost`", - "alias": null, - "function": null, - "subquery": null - }, - "value": "`user`@`localhost`" - }, - "6": "FUNCTION" - } - }, - "first": 581, - "last": 693 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "substrCount", - "column": null, - "expr": "`substrCount`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "DETERMINISTIC", - "4": "READS SQL DATA", - "6": { - "name": "SQL SECURITY", - "equals": false, - "expr": "INVOKER", - "value": "INVOKER" - } - } - }, - "fields": null, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "TINYINT", - "parameters": [ - "3" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": "UNSIGNED" - } - } - }, - "parameters": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ParameterDefinition", - "name": "s", - "inOut": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [ - "255" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ParameterDefinition", - "name": "ss", - "inOut": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [ - "255" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - } - ], - "body": [ - { - "@type": "@746" - }, - { - "@type": "@747" - }, - { - "@type": "@748" - }, - { - "@type": "@749" - }, - { - "@type": "@750" - }, - { - "@type": "@751" - }, - { - "@type": "@752" - }, - { - "@type": "@753" - }, - { - "@type": "@754" - }, - { - "@type": "@755" - }, - { - "@type": "@756" - }, - { - "@type": "@757" - }, - { - "@type": "@758" - }, - { - "@type": "@759" - }, - { - "@type": "@760" - }, - { - "@type": "@761" - }, - { - "@type": "@762" - }, - { - "@type": "@763" - }, - { - "@type": "@764" - }, - { - "@type": "@765" - }, - { - "@type": "@766" - }, - { - "@type": "@767" - }, - { - "@type": "@768" - }, - { - "@type": "@769" - }, - { - "@type": "@770" - }, - { - "@type": "@771" - }, - { - "@type": "@772" - }, - { - "@type": "@773" - }, - { - "@type": "@774" - }, - { - "@type": "@775" - }, - { - "@type": "@776" - }, - { - "@type": "@777" - }, - { - "@type": "@778" - }, - { - "@type": "@779" - }, - { - "@type": "@780" - }, - { - "@type": "@781" - }, - { - "@type": "@782" - }, - { - "@type": "@783" - }, - { - "@type": "@784" - }, - { - "@type": "@785" - }, - { - "@type": "@786" - }, - { - "@type": "@787" - }, - { - "@type": "@788" - }, - { - "@type": "@789" - }, - { - "@type": "@790" - }, - { - "@type": "@791" - }, - { - "@type": "@792" - }, - { - "@type": "@793" - }, - { - "@type": "@794" - }, - { - "@type": "@795" - }, - { - "@type": "@796" - }, - { - "@type": "@797" - }, - { - "@type": "@798" - }, - { - "@type": "@799" - }, - { - "@type": "@800" - }, - { - "@type": "@801" - }, - { - "@type": "@802" - }, - { - "@type": "@803" - }, - { - "@type": "@804" - }, - { - "@type": "@805" - }, - { - "@type": "@806" - }, - { - "@type": "@807" - }, - { - "@type": "@808" - }, - { - "@type": "@809" - }, - { - "@type": "@810" - }, - { - "@type": "@811" - }, - { - "@type": "@812" - }, - { - "@type": "@813" - }, - { - "@type": "@814" - }, - { - "@type": "@815" - }, - { - "@type": "@816" - }, - { - "@type": "@817" - }, - { - "@type": "@818" - }, - { - "@type": "@819" - }, - { - "@type": "@820" - }, - { - "@type": "@821" - }, - { - "@type": "@822" - }, - { - "@type": "@823" - }, - { - "@type": "@824" - }, - { - "@type": "@825" - }, - { - "@type": "@826" - }, - { - "@type": "@827" - }, - { - "@type": "@828" - }, - { - "@type": "@829" - }, - { - "@type": "@830" - }, - { - "@type": "@831" - }, - { - "@type": "@832" - }, - { - "@type": "@833" - }, - { - "@type": "@834" - }, - { - "@type": "@835" - }, - { - "@type": "@836" - }, - { - "@type": "@837" - }, - { - "@type": "@838" - }, - { - "@type": "@839" - }, - { - "@type": "@840" - }, - { - "@type": "@841" - }, - { - "@type": "@842" - }, - { - "@type": "@843" - }, - { - "@type": "@844" - }, - { - "@type": "@845" - }, - { - "@type": "@846" - }, - { - "@type": "@847" - }, - { - "@type": "@848" - }, - { - "@type": "@849" - }, - { - "@type": "@850" - }, - { - "@type": "@851" - }, - { - "@type": "@852" - }, - { - "@type": "@853" - }, - { - "@type": "@854" - }, - { - "@type": "@855" - }, - { - "@type": "@856" - }, - { - "@type": "@857" - }, - { - "@type": "@858" - }, - { - "@type": "@859" - }, - { - "@type": "@860" - }, - { - "@type": "@861" - }, - { - "@type": "@862" - }, - { - "@type": "@863" - }, - { - "@type": "@864" - }, - { - "@type": "@865" - }, - { - "@type": "@866" - }, - { - "@type": "@867" - }, - { - "@type": "@868" - }, - { - "@type": "@869" - }, - { - "@type": "@870" - }, - { - "@type": "@871" - }, - { - "@type": "@872" - }, - { - "@type": "@873" - }, - { - "@type": "@874" - }, - { - "@type": "@875" - }, - { - "@type": "@876" - }, - { - "@type": "@877" - }, - { - "@type": "@878" - }, - { - "@type": "@879" - }, - { - "@type": "@880" - }, - { - "@type": "@881" - }, - { - "@type": "@882" - }, - { - "@type": "@883" - }, - { - "@type": "@884" - }, - { - "@type": "@885" - }, - { - "@type": "@886" - }, - { - "@type": "@887" - }, - { - "@type": "@888" - }, - { - "@type": "@889" - }, - { - "@type": "@890" - }, - { - "@type": "@891" - }, - { - "@type": "@892" - }, - { - "@type": "@893" - }, - { - "@type": "@894" - }, - { - "@type": "@895" - }, - { - "@type": "@896" - }, - { - "@type": "@897" - }, - { - "@type": "@898" - }, - { - "@type": "@899" - }, - { - "@type": "@900" - }, - { - "@type": "@901" - }, - { - "@type": "@902" - }, - { - "@type": "@903" - }, - { - "@type": "@904" - }, - { - "@type": "@905" - }, - { - "@type": "@906" - }, - { - "@type": "@907" - }, - { - "@type": "@908" - }, - { - "@type": "@909" - }, - { - "@type": "@910" - }, - { - "@type": "@911" - }, - { - "@type": "@912" - }, - { - "@type": "@913" - }, - { - "@type": "@914" - }, - { - "@type": "@915" - }, - { - "@type": "@916" - }, - { - "@type": "@917" - }, - { - "@type": "@918" - }, - { - "@type": "@919" - }, - { - "@type": "@920" - }, - { - "@type": "@921" - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": { - "name": "DEFINER", - "equals": true, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "root@localhost", - "expr": "`root`@`localhost`", - "alias": null, - "function": null, - "subquery": null - }, - "value": "`root`@`localhost`" - }, - "6": "FUNCTION" - } - }, - "first": 699, - "last": 919 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateSchema.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateSchema.in deleted file mode 100644 index a163bea1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateSchema.in +++ /dev/null @@ -1 +0,0 @@ -CREATE DATABASE IF NOT EXISTS pma DEFAULT CHARSET 'utf8'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateSchema.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateSchema.out deleted file mode 100644 index c6ec6fb7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateSchema.out +++ /dev/null @@ -1,198 +0,0 @@ -{ - "query": "CREATE DATABASE IF NOT EXISTS pma DEFAULT CHARSET 'utf8';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE DATABASE IF NOT EXISTS pma DEFAULT CHARSET 'utf8';", - "len": 57, - "last": 57, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DATABASE", - "value": "DATABASE", - "keyword": "DATABASE", - "type": 1, - "flags": 35, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IF NOT EXISTS", - "value": "IF NOT EXISTS", - "keyword": "IF NOT EXISTS", - "type": 1, - "flags": 7, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pma", - "value": "pma", - "keyword": null, - "type": 0, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT CHARSET", - "value": "DEFAULT CHARSET", - "keyword": "DEFAULT CHARSET", - "type": 1, - "flags": 7, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'utf8'", - "value": "utf8", - "keyword": null, - "type": 7, - "flags": 1, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 13, - "idx": 13 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "pma", - "table": null, - "column": null, - "expr": "pma", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "DEFAULT CHARSET", - "equals": true, - "expr": "'utf8'", - "value": "utf8" - } - } - }, - "fields": null, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "DATABASE", - "7": "IF NOT EXISTS" - } - }, - "first": 0, - "last": 10 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateSchemaErr.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateSchemaErr.in deleted file mode 100644 index d6ff0415..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateSchemaErr.in +++ /dev/null @@ -1 +0,0 @@ -CREATE SCHEMA IF NOT EXISTS pma ENGINE='InnoDB' DEFAULT CHARSET 'utf8' \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateSchemaErr.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateSchemaErr.out deleted file mode 100644 index c6fd28e9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateSchemaErr.out +++ /dev/null @@ -1,226 +0,0 @@ -{ - "query": "CREATE SCHEMA IF NOT EXISTS pma ENGINE='InnoDB' DEFAULT CHARSET 'utf8'", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE SCHEMA IF NOT EXISTS pma ENGINE='InnoDB' DEFAULT CHARSET 'utf8'", - "len": 70, - "last": 70, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SCHEMA", - "value": "SCHEMA", - "keyword": "SCHEMA", - "type": 1, - "flags": 35, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IF NOT EXISTS", - "value": "IF NOT EXISTS", - "keyword": "IF NOT EXISTS", - "type": 1, - "flags": 7, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pma", - "value": "pma", - "keyword": null, - "type": 0, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENGINE", - "value": "ENGINE", - "keyword": "ENGINE", - "type": 1, - "flags": 1, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'InnoDB'", - "value": "InnoDB", - "keyword": null, - "type": 7, - "flags": 1, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT CHARSET", - "value": "DEFAULT CHARSET", - "keyword": "DEFAULT CHARSET", - "type": 1, - "flags": 7, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'utf8'", - "value": "utf8", - "keyword": null, - "type": 7, - "flags": 1, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 16, - "idx": 17 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "pma", - "table": null, - "column": null, - "expr": "pma", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": null, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "SCHEMA", - "7": "IF NOT EXISTS" - } - }, - "first": 0, - "last": 7 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unrecognized statement type.", - { - "@type": "@10" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable.in deleted file mode 100644 index e9f0911b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable.in +++ /dev/null @@ -1,7 +0,0 @@ -CREATE TABLE IF NOT EXISTS users ( - `id` INT NOT NULL AUTO_INCREMENT, - username VARCHAR(64) NULL, - `password` VARCHAR(256) DEFAULT '123456', - CONSTRAINT pk_id PRIMARY KEY (`id`), - UNIQUE (username) -) ENGINE=InnoDB; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable.out deleted file mode 100644 index 55fbd056..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable.out +++ /dev/null @@ -1,798 +0,0 @@ -{ - "query": "CREATE TABLE IF NOT EXISTS users (\n `id` INT NOT NULL AUTO_INCREMENT,\n username VARCHAR(64) NULL,\n `password` VARCHAR(256) DEFAULT '123456',\n CONSTRAINT pk_id PRIMARY KEY (`id`),\n UNIQUE (username)\n) ENGINE=InnoDB;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE IF NOT EXISTS users (\n `id` INT NOT NULL AUTO_INCREMENT,\n username VARCHAR(64) NULL,\n `password` VARCHAR(256) DEFAULT '123456',\n CONSTRAINT pk_id PRIMARY KEY (`id`),\n UNIQUE (username)\n) ENGINE=InnoDB;", - "len": 229, - "last": 229, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IF NOT EXISTS", - "value": "IF NOT EXISTS", - "keyword": "IF NOT EXISTS", - "type": 1, - "flags": 7, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "users", - "value": "users", - "keyword": null, - "type": 0, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`id`", - "value": "id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AUTO_INCREMENT", - "value": "AUTO_INCREMENT", - "keyword": "AUTO_INCREMENT", - "type": 1, - "flags": 1, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VARCHAR", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "64", - "value": 64, - "keyword": null, - "type": 6, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`password`", - "value": "password", - "keyword": null, - "type": 8, - "flags": 2, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VARCHAR", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "256", - "value": 256, - "keyword": null, - "type": 6, - "flags": 0, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'123456'", - "value": "123456", - "keyword": null, - "type": 7, - "flags": 1, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CONSTRAINT", - "value": "CONSTRAINT", - "keyword": "CONSTRAINT", - "type": 1, - "flags": 3, - "position": 154 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 164 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pk_id", - "value": "pk_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 165 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 170 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PRIMARY KEY", - "value": "PRIMARY KEY", - "keyword": "PRIMARY KEY", - "type": 1, - "flags": 23, - "position": 171 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 182 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 183 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`id`", - "value": "id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 184 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 188 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 189 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 190 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNIQUE", - "value": "UNIQUE", - "keyword": "UNIQUE", - "type": 1, - "flags": 19, - "position": 195 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 201 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 202 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 203 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 211 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 212 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 213 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 214 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENGINE", - "value": "ENGINE", - "keyword": "ENGINE", - "type": 1, - "flags": 1, - "position": 215 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 221 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "InnoDB", - "value": "InnoDB", - "keyword": null, - "type": 0, - "flags": 0, - "position": 222 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 228 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 65, - "idx": 65 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "users", - "column": null, - "expr": "users", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ENGINE", - "equals": true, - "expr": "InnoDB", - "value": "InnoDB" - } - } - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "id", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "3": "AUTO_INCREMENT" - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "username", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [ - "64" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NULL" - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "password", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [ - "256" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "DEFAULT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "123456", - "expr": "'123456'", - "alias": null, - "function": null, - "subquery": null - }, - "value": "'123456'" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "pk_id", - "isConstraint": true, - "type": null, - "key": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", - "name": null, - "columns": [ - { - "name": "id" - } - ], - "type": "PRIMARY KEY", - "expr": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "references": null, - "options": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": null, - "isConstraint": null, - "type": null, - "key": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", - "name": null, - "columns": [ - { - "name": "username" - } - ], - "type": "UNIQUE", - "expr": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "references": null, - "options": null - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE", - "7": "IF NOT EXISTS" - } - }, - "first": 0, - "last": 63 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable10.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable10.in deleted file mode 100644 index 354363c2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable10.in +++ /dev/null @@ -1,6 +0,0 @@ -CREATE TABLE `trips2` ( - `id` bigint(20) UNSIGNED NOT NULL PRIMARY KEY COMMENT 'Unique trip Id', - `trip_code` int(11) UNSIGNED NOT NULL COMMENT 'Trip code', - `trip_category` int(11) UNSIGNED NOT NULL COMMENT 'Trip category', - `trip_date` date NOT NULL COMMENT 'The trip date' -) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'The trips'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable10.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable10.out deleted file mode 100644 index d8bb4819..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable10.out +++ /dev/null @@ -1,1079 +0,0 @@ -{ - "query": "CREATE TABLE `trips2` (\n `id` bigint(20) UNSIGNED NOT NULL PRIMARY KEY COMMENT 'Unique trip Id',\n `trip_code` int(11) UNSIGNED NOT NULL COMMENT 'Trip code',\n `trip_category` int(11) UNSIGNED NOT NULL COMMENT 'Trip category',\n `trip_date` date NOT NULL COMMENT 'The trip date'\n) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'The trips';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE `trips2` (\n `id` bigint(20) UNSIGNED NOT NULL PRIMARY KEY COMMENT 'Unique trip Id',\n `trip_code` int(11) UNSIGNED NOT NULL COMMENT 'Trip code',\n `trip_category` int(11) UNSIGNED NOT NULL COMMENT 'Trip category',\n `trip_date` date NOT NULL COMMENT 'The trip date'\n) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'The trips';", - "len": 383, - "last": 383, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`trips2`", - "value": "trips2", - "keyword": null, - "type": 8, - "flags": 2, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`id`", - "value": "id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "bigint", - "value": "BIGINT", - "keyword": "BIGINT", - "type": 1, - "flags": 11, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "20", - "value": 20, - "keyword": null, - "type": 6, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PRIMARY KEY", - "value": "PRIMARY KEY", - "keyword": "PRIMARY KEY", - "type": 1, - "flags": 23, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Unique trip Id'", - "value": "Unique trip Id", - "keyword": null, - "type": 7, - "flags": 1, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`trip_code`", - "value": "trip_code", - "keyword": null, - "type": 8, - "flags": 2, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "int", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "11", - "value": 11, - "keyword": null, - "type": 6, - "flags": 0, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Trip code'", - "value": "Trip code", - "keyword": null, - "type": 7, - "flags": 1, - "position": 150 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 162 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`trip_category`", - "value": "trip_category", - "keyword": null, - "type": 8, - "flags": 2, - "position": 167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 182 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "int", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 183 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 186 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "11", - "value": 11, - "keyword": null, - "type": 6, - "flags": 0, - "position": 187 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 189 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 190 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 191 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 199 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 200 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 208 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 209 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 216 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Trip category'", - "value": "Trip category", - "keyword": null, - "type": 7, - "flags": 1, - "position": 217 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 232 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 233 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`trip_date`", - "value": "trip_date", - "keyword": null, - "type": 8, - "flags": 2, - "position": 238 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 249 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "date", - "value": "date", - "keyword": "DATE", - "type": 1, - "flags": 41, - "position": 250 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 254 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 255 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 263 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 264 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 271 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'The trip date'", - "value": "The trip date", - "keyword": null, - "type": 7, - "flags": 1, - "position": 272 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 287 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 288 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 289 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENGINE", - "value": "ENGINE", - "keyword": "ENGINE", - "type": 1, - "flags": 1, - "position": 290 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 296 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 297 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 298 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "InnoDB", - "value": "InnoDB", - "keyword": null, - "type": 0, - "flags": 0, - "position": 299 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 305 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT CHARSET", - "value": "DEFAULT CHARSET", - "keyword": "DEFAULT CHARSET", - "type": 1, - "flags": 7, - "position": 306 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 321 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 322 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 323 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8mb4", - "value": "utf8mb4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 324 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 331 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLLATE", - "value": "COLLATE", - "keyword": "COLLATE", - "type": 1, - "flags": 3, - "position": 332 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 339 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 340 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 341 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8mb4_unicode_ci", - "value": "utf8mb4_unicode_ci", - "keyword": null, - "type": 0, - "flags": 0, - "position": 342 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 360 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 361 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 368 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 369 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 370 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'The trips'", - "value": "The trips", - "keyword": null, - "type": 7, - "flags": 1, - "position": 371 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 382 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 95, - "idx": 95 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "trips2", - "column": null, - "expr": "`trips2`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ENGINE", - "equals": true, - "expr": "InnoDB", - "value": "InnoDB" - }, - "4": { - "name": "DEFAULT CHARSET", - "equals": true, - "expr": "utf8mb4", - "value": "utf8mb4" - }, - "6": { - "name": "COLLATE", - "equals": true, - "expr": "utf8mb4_unicode_ci", - "value": "utf8mb4_unicode_ci" - }, - "7": { - "name": "COMMENT", - "equals": true, - "expr": "'The trips'", - "value": "The trips" - } - } - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "id", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "BIGINT", - "parameters": [ - "20" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": "UNSIGNED" - } - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "4": "PRIMARY KEY", - "5": { - "name": "COMMENT", - "equals": false, - "expr": "'Unique trip Id'", - "value": "Unique trip Id" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "trip_code", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [ - "11" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": "UNSIGNED" - } - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "5": { - "name": "COMMENT", - "equals": false, - "expr": "'Trip code'", - "value": "Trip code" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "trip_category", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [ - "11" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": "UNSIGNED" - } - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "5": { - "name": "COMMENT", - "equals": false, - "expr": "'Trip category'", - "value": "Trip category" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "trip_date", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "DATE", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "5": { - "name": "COMMENT", - "equals": false, - "expr": "'The trip date'", - "value": "The trip date" - } - } - } - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 93 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable11.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable11.in deleted file mode 100644 index 92c6236c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable11.in +++ /dev/null @@ -1,440 +0,0 @@ -CREATE TABLE `trips` ( - `id` bigint(20) UNSIGNED NOT NULL COMMENT 'Unique trip Id', - `trip_category` int(11) UNSIGNED NOT NULL COMMENT 'Trip category', - `trip_month` int(11) UNSIGNED NOT NULL COMMENT 'Trip month', - `trip_date` date NOT NULL COMMENT 'The trip date' -) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'The trips' -PARTITION BY RANGE(trip_month) SUBPARTITION BY HASH(DAY(trip_date)) ( - PARTITION p_month_Jan - VALUES - LESS THAN (0) ( - SUBPARTITION p_month_Jan_day_0, - SUBPARTITION p_month_Jan_day_1, - SUBPARTITION p_month_Jan_day_2, - SUBPARTITION p_month_Jan_day_3, - SUBPARTITION p_month_Jan_day_4, - SUBPARTITION p_month_Jan_day_5, - SUBPARTITION p_month_Jan_day_6, - SUBPARTITION p_month_Jan_day_7, - SUBPARTITION p_month_Jan_day_8, - SUBPARTITION p_month_Jan_day_9, - SUBPARTITION p_month_Jan_day_10, - SUBPARTITION p_month_Jan_day_11, - SUBPARTITION p_month_Jan_day_12, - SUBPARTITION p_month_Jan_day_13, - SUBPARTITION p_month_Jan_day_14, - SUBPARTITION p_month_Jan_day_15, - SUBPARTITION p_month_Jan_day_16, - SUBPARTITION p_month_Jan_day_17, - SUBPARTITION p_month_Jan_day_18, - SUBPARTITION p_month_Jan_day_19, - SUBPARTITION p_month_Jan_day_20, - SUBPARTITION p_month_Jan_day_21, - SUBPARTITION p_month_Jan_day_22, - SUBPARTITION p_month_Jan_day_23, - SUBPARTITION p_month_Jan_day_24, - SUBPARTITION p_month_Jan_day_25, - SUBPARTITION p_month_Jan_day_26, - SUBPARTITION p_month_Jan_day_27, - SUBPARTITION p_month_Jan_day_28, - SUBPARTITION p_month_Jan_day_29, - SUBPARTITION p_month_Jan_day_30, - SUBPARTITION p_month_Jan_day_31 - ), - PARTITION p_month_Feb - VALUES - LESS THAN (1) ( - SUBPARTITION p_month_Feb_day_0, - SUBPARTITION p_month_Feb_day_1, - SUBPARTITION p_month_Feb_day_2, - SUBPARTITION p_month_Feb_day_3, - SUBPARTITION p_month_Feb_day_4, - SUBPARTITION p_month_Feb_day_5, - SUBPARTITION p_month_Feb_day_6, - SUBPARTITION p_month_Feb_day_7, - SUBPARTITION p_month_Feb_day_8, - SUBPARTITION p_month_Feb_day_9, - SUBPARTITION p_month_Feb_day_10, - SUBPARTITION p_month_Feb_day_11, - SUBPARTITION p_month_Feb_day_12, - SUBPARTITION p_month_Feb_day_13, - SUBPARTITION p_month_Feb_day_14, - SUBPARTITION p_month_Feb_day_15, - SUBPARTITION p_month_Feb_day_16, - SUBPARTITION p_month_Feb_day_17, - SUBPARTITION p_month_Feb_day_18, - SUBPARTITION p_month_Feb_day_19, - SUBPARTITION p_month_Feb_day_20, - SUBPARTITION p_month_Feb_day_21, - SUBPARTITION p_month_Feb_day_22, - SUBPARTITION p_month_Feb_day_23, - SUBPARTITION p_month_Feb_day_24, - SUBPARTITION p_month_Feb_day_25, - SUBPARTITION p_month_Feb_day_26, - SUBPARTITION p_month_Feb_day_27, - SUBPARTITION p_month_Feb_day_28, - SUBPARTITION p_month_Feb_day_29, - SUBPARTITION p_month_Feb_day_30, - SUBPARTITION p_month_Feb_day_31 - ), - PARTITION p_month_Mar - VALUES - LESS THAN (2) ( - SUBPARTITION p_month_Mar_day_0, - SUBPARTITION p_month_Mar_day_1, - SUBPARTITION p_month_Mar_day_2, - SUBPARTITION p_month_Mar_day_3, - SUBPARTITION p_month_Mar_day_4, - SUBPARTITION p_month_Mar_day_5, - SUBPARTITION p_month_Mar_day_6, - SUBPARTITION p_month_Mar_day_7, - SUBPARTITION p_month_Mar_day_8, - SUBPARTITION p_month_Mar_day_9, - SUBPARTITION p_month_Mar_day_10, - SUBPARTITION p_month_Mar_day_11, - SUBPARTITION p_month_Mar_day_12, - SUBPARTITION p_month_Mar_day_13, - SUBPARTITION p_month_Mar_day_14, - SUBPARTITION p_month_Mar_day_15, - SUBPARTITION p_month_Mar_day_16, - SUBPARTITION p_month_Mar_day_17, - SUBPARTITION p_month_Mar_day_18, - SUBPARTITION p_month_Mar_day_19, - SUBPARTITION p_month_Mar_day_20, - SUBPARTITION p_month_Mar_day_21, - SUBPARTITION p_month_Mar_day_22, - SUBPARTITION p_month_Mar_day_23, - SUBPARTITION p_month_Mar_day_24, - SUBPARTITION p_month_Mar_day_25, - SUBPARTITION p_month_Mar_day_26, - SUBPARTITION p_month_Mar_day_27, - SUBPARTITION p_month_Mar_day_28, - SUBPARTITION p_month_Mar_day_29, - SUBPARTITION p_month_Mar_day_30, - SUBPARTITION p_month_Mar_day_31 - ), - PARTITION p_month_Apr - VALUES - LESS THAN (3) ( - SUBPARTITION p_month_Apr_day_0, - SUBPARTITION p_month_Apr_day_1, - SUBPARTITION p_month_Apr_day_2, - SUBPARTITION p_month_Apr_day_3, - SUBPARTITION p_month_Apr_day_4, - SUBPARTITION p_month_Apr_day_5, - SUBPARTITION p_month_Apr_day_6, - SUBPARTITION p_month_Apr_day_7, - SUBPARTITION p_month_Apr_day_8, - SUBPARTITION p_month_Apr_day_9, - SUBPARTITION p_month_Apr_day_10, - SUBPARTITION p_month_Apr_day_11, - SUBPARTITION p_month_Apr_day_12, - SUBPARTITION p_month_Apr_day_13, - SUBPARTITION p_month_Apr_day_14, - SUBPARTITION p_month_Apr_day_15, - SUBPARTITION p_month_Apr_day_16, - SUBPARTITION p_month_Apr_day_17, - SUBPARTITION p_month_Apr_day_18, - SUBPARTITION p_month_Apr_day_19, - SUBPARTITION p_month_Apr_day_20, - SUBPARTITION p_month_Apr_day_21, - SUBPARTITION p_month_Apr_day_22, - SUBPARTITION p_month_Apr_day_23, - SUBPARTITION p_month_Apr_day_24, - SUBPARTITION p_month_Apr_day_25, - SUBPARTITION p_month_Apr_day_26, - SUBPARTITION p_month_Apr_day_27, - SUBPARTITION p_month_Apr_day_28, - SUBPARTITION p_month_Apr_day_29, - SUBPARTITION p_month_Apr_day_30, - SUBPARTITION p_month_Apr_day_31 - ), - PARTITION p_month_Mai - VALUES - LESS THAN (4) ( - SUBPARTITION p_month_Mai_day_0, - SUBPARTITION p_month_Mai_day_1, - SUBPARTITION p_month_Mai_day_2, - SUBPARTITION p_month_Mai_day_3, - SUBPARTITION p_month_Mai_day_4, - SUBPARTITION p_month_Mai_day_5, - SUBPARTITION p_month_Mai_day_6, - SUBPARTITION p_month_Mai_day_7, - SUBPARTITION p_month_Mai_day_8, - SUBPARTITION p_month_Mai_day_9, - SUBPARTITION p_month_Mai_day_10, - SUBPARTITION p_month_Mai_day_11, - SUBPARTITION p_month_Mai_day_12, - SUBPARTITION p_month_Mai_day_13, - SUBPARTITION p_month_Mai_day_14, - SUBPARTITION p_month_Mai_day_15, - SUBPARTITION p_month_Mai_day_16, - SUBPARTITION p_month_Mai_day_17, - SUBPARTITION p_month_Mai_day_18, - SUBPARTITION p_month_Mai_day_19, - SUBPARTITION p_month_Mai_day_20, - SUBPARTITION p_month_Mai_day_21, - SUBPARTITION p_month_Mai_day_22, - SUBPARTITION p_month_Mai_day_23, - SUBPARTITION p_month_Mai_day_24, - SUBPARTITION p_month_Mai_day_25, - SUBPARTITION p_month_Mai_day_26, - SUBPARTITION p_month_Mai_day_27, - SUBPARTITION p_month_Mai_day_28, - SUBPARTITION p_month_Mai_day_29, - SUBPARTITION p_month_Mai_day_30, - SUBPARTITION p_month_Mai_day_31 - ), - PARTITION p_month_Jun - VALUES - LESS THAN (5) ( - SUBPARTITION p_month_Jun_day_0, - SUBPARTITION p_month_Jun_day_1, - SUBPARTITION p_month_Jun_day_2, - SUBPARTITION p_month_Jun_day_3, - SUBPARTITION p_month_Jun_day_4, - SUBPARTITION p_month_Jun_day_5, - SUBPARTITION p_month_Jun_day_6, - SUBPARTITION p_month_Jun_day_7, - SUBPARTITION p_month_Jun_day_8, - SUBPARTITION p_month_Jun_day_9, - SUBPARTITION p_month_Jun_day_10, - SUBPARTITION p_month_Jun_day_11, - SUBPARTITION p_month_Jun_day_12, - SUBPARTITION p_month_Jun_day_13, - SUBPARTITION p_month_Jun_day_14, - SUBPARTITION p_month_Jun_day_15, - SUBPARTITION p_month_Jun_day_16, - SUBPARTITION p_month_Jun_day_17, - SUBPARTITION p_month_Jun_day_18, - SUBPARTITION p_month_Jun_day_19, - SUBPARTITION p_month_Jun_day_20, - SUBPARTITION p_month_Jun_day_21, - SUBPARTITION p_month_Jun_day_22, - SUBPARTITION p_month_Jun_day_23, - SUBPARTITION p_month_Jun_day_24, - SUBPARTITION p_month_Jun_day_25, - SUBPARTITION p_month_Jun_day_26, - SUBPARTITION p_month_Jun_day_27, - SUBPARTITION p_month_Jun_day_28, - SUBPARTITION p_month_Jun_day_29, - SUBPARTITION p_month_Jun_day_30, - SUBPARTITION p_month_Jun_day_31 - ), - PARTITION p_month_Jul - VALUES - LESS THAN (6) ( - SUBPARTITION p_month_Jul_day_0, - SUBPARTITION p_month_Jul_day_1, - SUBPARTITION p_month_Jul_day_2, - SUBPARTITION p_month_Jul_day_3, - SUBPARTITION p_month_Jul_day_4, - SUBPARTITION p_month_Jul_day_5, - SUBPARTITION p_month_Jul_day_6, - SUBPARTITION p_month_Jul_day_7, - SUBPARTITION p_month_Jul_day_8, - SUBPARTITION p_month_Jul_day_9, - SUBPARTITION p_month_Jul_day_10, - SUBPARTITION p_month_Jul_day_11, - SUBPARTITION p_month_Jul_day_12, - SUBPARTITION p_month_Jul_day_13, - SUBPARTITION p_month_Jul_day_14, - SUBPARTITION p_month_Jul_day_15, - SUBPARTITION p_month_Jul_day_16, - SUBPARTITION p_month_Jul_day_17, - SUBPARTITION p_month_Jul_day_18, - SUBPARTITION p_month_Jul_day_19, - SUBPARTITION p_month_Jul_day_20, - SUBPARTITION p_month_Jul_day_21, - SUBPARTITION p_month_Jul_day_22, - SUBPARTITION p_month_Jul_day_23, - SUBPARTITION p_month_Jul_day_24, - SUBPARTITION p_month_Jul_day_25, - SUBPARTITION p_month_Jul_day_26, - SUBPARTITION p_month_Jul_day_27, - SUBPARTITION p_month_Jul_day_28, - SUBPARTITION p_month_Jul_day_29, - SUBPARTITION p_month_Jul_day_30, - SUBPARTITION p_month_Jul_day_31 - ), - PARTITION p_month_Aug - VALUES - LESS THAN (7) ( - SUBPARTITION p_month_Aug_day_0, - SUBPARTITION p_month_Aug_day_1, - SUBPARTITION p_month_Aug_day_2, - SUBPARTITION p_month_Aug_day_3, - SUBPARTITION p_month_Aug_day_4, - SUBPARTITION p_month_Aug_day_5, - SUBPARTITION p_month_Aug_day_6, - SUBPARTITION p_month_Aug_day_7, - SUBPARTITION p_month_Aug_day_8, - SUBPARTITION p_month_Aug_day_9, - SUBPARTITION p_month_Aug_day_10, - SUBPARTITION p_month_Aug_day_11, - SUBPARTITION p_month_Aug_day_12, - SUBPARTITION p_month_Aug_day_13, - SUBPARTITION p_month_Aug_day_14, - SUBPARTITION p_month_Aug_day_15, - SUBPARTITION p_month_Aug_day_16, - SUBPARTITION p_month_Aug_day_17, - SUBPARTITION p_month_Aug_day_18, - SUBPARTITION p_month_Aug_day_19, - SUBPARTITION p_month_Aug_day_20, - SUBPARTITION p_month_Aug_day_21, - SUBPARTITION p_month_Aug_day_22, - SUBPARTITION p_month_Aug_day_23, - SUBPARTITION p_month_Aug_day_24, - SUBPARTITION p_month_Aug_day_25, - SUBPARTITION p_month_Aug_day_26, - SUBPARTITION p_month_Aug_day_27, - SUBPARTITION p_month_Aug_day_28, - SUBPARTITION p_month_Aug_day_29, - SUBPARTITION p_month_Aug_day_30, - SUBPARTITION p_month_Aug_day_31 - ), - PARTITION p_month_Sep - VALUES - LESS THAN (8) ( - SUBPARTITION p_month_Sep_day_0, - SUBPARTITION p_month_Sep_day_1, - SUBPARTITION p_month_Sep_day_2, - SUBPARTITION p_month_Sep_day_3, - SUBPARTITION p_month_Sep_day_4, - SUBPARTITION p_month_Sep_day_5, - SUBPARTITION p_month_Sep_day_6, - SUBPARTITION p_month_Sep_day_7, - SUBPARTITION p_month_Sep_day_8, - SUBPARTITION p_month_Sep_day_9, - SUBPARTITION p_month_Sep_day_10, - SUBPARTITION p_month_Sep_day_11, - SUBPARTITION p_month_Sep_day_12, - SUBPARTITION p_month_Sep_day_13, - SUBPARTITION p_month_Sep_day_14, - SUBPARTITION p_month_Sep_day_15, - SUBPARTITION p_month_Sep_day_16, - SUBPARTITION p_month_Sep_day_17, - SUBPARTITION p_month_Sep_day_18, - SUBPARTITION p_month_Sep_day_19, - SUBPARTITION p_month_Sep_day_20, - SUBPARTITION p_month_Sep_day_21, - SUBPARTITION p_month_Sep_day_22, - SUBPARTITION p_month_Sep_day_23, - SUBPARTITION p_month_Sep_day_24, - SUBPARTITION p_month_Sep_day_25, - SUBPARTITION p_month_Sep_day_26, - SUBPARTITION p_month_Sep_day_27, - SUBPARTITION p_month_Sep_day_28, - SUBPARTITION p_month_Sep_day_29, - SUBPARTITION p_month_Sep_day_30, - SUBPARTITION p_month_Sep_day_31 - ), - PARTITION p_month_Oct - VALUES - LESS THAN (9) ( - SUBPARTITION p_month_Oct_day_0, - SUBPARTITION p_month_Oct_day_1, - SUBPARTITION p_month_Oct_day_2, - SUBPARTITION p_month_Oct_day_3, - SUBPARTITION p_month_Oct_day_4, - SUBPARTITION p_month_Oct_day_5, - SUBPARTITION p_month_Oct_day_6, - SUBPARTITION p_month_Oct_day_7, - SUBPARTITION p_month_Oct_day_8, - SUBPARTITION p_month_Oct_day_9, - SUBPARTITION p_month_Oct_day_10, - SUBPARTITION p_month_Oct_day_11, - SUBPARTITION p_month_Oct_day_12, - SUBPARTITION p_month_Oct_day_13, - SUBPARTITION p_month_Oct_day_14, - SUBPARTITION p_month_Oct_day_15, - SUBPARTITION p_month_Oct_day_16, - SUBPARTITION p_month_Oct_day_17, - SUBPARTITION p_month_Oct_day_18, - SUBPARTITION p_month_Oct_day_19, - SUBPARTITION p_month_Oct_day_20, - SUBPARTITION p_month_Oct_day_21, - SUBPARTITION p_month_Oct_day_22, - SUBPARTITION p_month_Oct_day_23, - SUBPARTITION p_month_Oct_day_24, - SUBPARTITION p_month_Oct_day_25, - SUBPARTITION p_month_Oct_day_26, - SUBPARTITION p_month_Oct_day_27, - SUBPARTITION p_month_Oct_day_28, - SUBPARTITION p_month_Oct_day_29, - SUBPARTITION p_month_Oct_day_30, - SUBPARTITION p_month_Oct_day_31 - ), - PARTITION p_month_Nov - VALUES - LESS THAN (10) ( - SUBPARTITION p_month_Nov_day_0, - SUBPARTITION p_month_Nov_day_1, - SUBPARTITION p_month_Nov_day_2, - SUBPARTITION p_month_Nov_day_3, - SUBPARTITION p_month_Nov_day_4, - SUBPARTITION p_month_Nov_day_5, - SUBPARTITION p_month_Nov_day_6, - SUBPARTITION p_month_Nov_day_7, - SUBPARTITION p_month_Nov_day_8, - SUBPARTITION p_month_Nov_day_9, - SUBPARTITION p_month_Nov_day_10, - SUBPARTITION p_month_Nov_day_11, - SUBPARTITION p_month_Nov_day_12, - SUBPARTITION p_month_Nov_day_13, - SUBPARTITION p_month_Nov_day_14, - SUBPARTITION p_month_Nov_day_15, - SUBPARTITION p_month_Nov_day_16, - SUBPARTITION p_month_Nov_day_17, - SUBPARTITION p_month_Nov_day_18, - SUBPARTITION p_month_Nov_day_19, - SUBPARTITION p_month_Nov_day_20, - SUBPARTITION p_month_Nov_day_21, - SUBPARTITION p_month_Nov_day_22, - SUBPARTITION p_month_Nov_day_23, - SUBPARTITION p_month_Nov_day_24, - SUBPARTITION p_month_Nov_day_25, - SUBPARTITION p_month_Nov_day_26, - SUBPARTITION p_month_Nov_day_27, - SUBPARTITION p_month_Nov_day_28, - SUBPARTITION p_month_Nov_day_29, - SUBPARTITION p_month_Nov_day_30, - SUBPARTITION p_month_Nov_day_31 - ), - PARTITION p_month_Dec - VALUES - LESS THAN (11) ( - SUBPARTITION p_month_Dec_day_0, - SUBPARTITION p_month_Dec_day_1, - SUBPARTITION p_month_Dec_day_2, - SUBPARTITION p_month_Dec_day_3, - SUBPARTITION p_month_Dec_day_4, - SUBPARTITION p_month_Dec_day_5, - SUBPARTITION p_month_Dec_day_6, - SUBPARTITION p_month_Dec_day_7, - SUBPARTITION p_month_Dec_day_8, - SUBPARTITION p_month_Dec_day_9, - SUBPARTITION p_month_Dec_day_10, - SUBPARTITION p_month_Dec_day_11, - SUBPARTITION p_month_Dec_day_12, - SUBPARTITION p_month_Dec_day_13, - SUBPARTITION p_month_Dec_day_14, - SUBPARTITION p_month_Dec_day_15, - SUBPARTITION p_month_Dec_day_16, - SUBPARTITION p_month_Dec_day_17, - SUBPARTITION p_month_Dec_day_18, - SUBPARTITION p_month_Dec_day_19, - SUBPARTITION p_month_Dec_day_20, - SUBPARTITION p_month_Dec_day_21, - SUBPARTITION p_month_Dec_day_22, - SUBPARTITION p_month_Dec_day_23, - SUBPARTITION p_month_Dec_day_24, - SUBPARTITION p_month_Dec_day_25, - SUBPARTITION p_month_Dec_day_26, - SUBPARTITION p_month_Dec_day_27, - SUBPARTITION p_month_Dec_day_28, - SUBPARTITION p_month_Dec_day_29, - SUBPARTITION p_month_Dec_day_30, - SUBPARTITION p_month_Dec_day_31 - ) -) \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable11.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable11.out deleted file mode 100644 index 659bfe1a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable11.out +++ /dev/null @@ -1,25112 +0,0 @@ -{ - "query": "CREATE TABLE `trips` (\n `id` bigint(20) UNSIGNED NOT NULL COMMENT 'Unique trip Id',\n `trip_category` int(11) UNSIGNED NOT NULL COMMENT 'Trip category',\n `trip_month` int(11) UNSIGNED NOT NULL COMMENT 'Trip month',\n `trip_date` date NOT NULL COMMENT 'The trip date'\n) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'The trips'\nPARTITION BY RANGE(trip_month) SUBPARTITION BY HASH(DAY(trip_date)) (\n PARTITION p_month_Jan\n VALUES\n LESS THAN (0) (\n SUBPARTITION p_month_Jan_day_0,\n SUBPARTITION p_month_Jan_day_1,\n SUBPARTITION p_month_Jan_day_2,\n SUBPARTITION p_month_Jan_day_3,\n SUBPARTITION p_month_Jan_day_4,\n SUBPARTITION p_month_Jan_day_5,\n SUBPARTITION p_month_Jan_day_6,\n SUBPARTITION p_month_Jan_day_7,\n SUBPARTITION p_month_Jan_day_8,\n SUBPARTITION p_month_Jan_day_9,\n SUBPARTITION p_month_Jan_day_10,\n SUBPARTITION p_month_Jan_day_11,\n SUBPARTITION p_month_Jan_day_12,\n SUBPARTITION p_month_Jan_day_13,\n SUBPARTITION p_month_Jan_day_14,\n SUBPARTITION p_month_Jan_day_15,\n SUBPARTITION p_month_Jan_day_16,\n SUBPARTITION p_month_Jan_day_17,\n SUBPARTITION p_month_Jan_day_18,\n SUBPARTITION p_month_Jan_day_19,\n SUBPARTITION p_month_Jan_day_20,\n SUBPARTITION p_month_Jan_day_21,\n SUBPARTITION p_month_Jan_day_22,\n SUBPARTITION p_month_Jan_day_23,\n SUBPARTITION p_month_Jan_day_24,\n SUBPARTITION p_month_Jan_day_25,\n SUBPARTITION p_month_Jan_day_26,\n SUBPARTITION p_month_Jan_day_27,\n SUBPARTITION p_month_Jan_day_28,\n SUBPARTITION p_month_Jan_day_29,\n SUBPARTITION p_month_Jan_day_30,\n SUBPARTITION p_month_Jan_day_31\n ),\n PARTITION p_month_Feb\n VALUES\n LESS THAN (1) (\n SUBPARTITION p_month_Feb_day_0,\n SUBPARTITION p_month_Feb_day_1,\n SUBPARTITION p_month_Feb_day_2,\n SUBPARTITION p_month_Feb_day_3,\n SUBPARTITION p_month_Feb_day_4,\n SUBPARTITION p_month_Feb_day_5,\n SUBPARTITION p_month_Feb_day_6,\n SUBPARTITION p_month_Feb_day_7,\n SUBPARTITION p_month_Feb_day_8,\n SUBPARTITION p_month_Feb_day_9,\n SUBPARTITION p_month_Feb_day_10,\n SUBPARTITION p_month_Feb_day_11,\n SUBPARTITION p_month_Feb_day_12,\n SUBPARTITION p_month_Feb_day_13,\n SUBPARTITION p_month_Feb_day_14,\n SUBPARTITION p_month_Feb_day_15,\n SUBPARTITION p_month_Feb_day_16,\n SUBPARTITION p_month_Feb_day_17,\n SUBPARTITION p_month_Feb_day_18,\n SUBPARTITION p_month_Feb_day_19,\n SUBPARTITION p_month_Feb_day_20,\n SUBPARTITION p_month_Feb_day_21,\n SUBPARTITION p_month_Feb_day_22,\n SUBPARTITION p_month_Feb_day_23,\n SUBPARTITION p_month_Feb_day_24,\n SUBPARTITION p_month_Feb_day_25,\n SUBPARTITION p_month_Feb_day_26,\n SUBPARTITION p_month_Feb_day_27,\n SUBPARTITION p_month_Feb_day_28,\n SUBPARTITION p_month_Feb_day_29,\n SUBPARTITION p_month_Feb_day_30,\n SUBPARTITION p_month_Feb_day_31\n ),\n PARTITION p_month_Mar\n VALUES\n LESS THAN (2) (\n SUBPARTITION p_month_Mar_day_0,\n SUBPARTITION p_month_Mar_day_1,\n SUBPARTITION p_month_Mar_day_2,\n SUBPARTITION p_month_Mar_day_3,\n SUBPARTITION p_month_Mar_day_4,\n SUBPARTITION p_month_Mar_day_5,\n SUBPARTITION p_month_Mar_day_6,\n SUBPARTITION p_month_Mar_day_7,\n SUBPARTITION p_month_Mar_day_8,\n SUBPARTITION p_month_Mar_day_9,\n SUBPARTITION p_month_Mar_day_10,\n SUBPARTITION p_month_Mar_day_11,\n SUBPARTITION p_month_Mar_day_12,\n SUBPARTITION p_month_Mar_day_13,\n SUBPARTITION p_month_Mar_day_14,\n SUBPARTITION p_month_Mar_day_15,\n SUBPARTITION p_month_Mar_day_16,\n SUBPARTITION p_month_Mar_day_17,\n SUBPARTITION p_month_Mar_day_18,\n SUBPARTITION p_month_Mar_day_19,\n SUBPARTITION p_month_Mar_day_20,\n SUBPARTITION p_month_Mar_day_21,\n SUBPARTITION p_month_Mar_day_22,\n SUBPARTITION p_month_Mar_day_23,\n SUBPARTITION p_month_Mar_day_24,\n SUBPARTITION p_month_Mar_day_25,\n SUBPARTITION p_month_Mar_day_26,\n SUBPARTITION p_month_Mar_day_27,\n SUBPARTITION p_month_Mar_day_28,\n SUBPARTITION p_month_Mar_day_29,\n SUBPARTITION p_month_Mar_day_30,\n SUBPARTITION p_month_Mar_day_31\n ),\n PARTITION p_month_Apr\n VALUES\n LESS THAN (3) (\n SUBPARTITION p_month_Apr_day_0,\n SUBPARTITION p_month_Apr_day_1,\n SUBPARTITION p_month_Apr_day_2,\n SUBPARTITION p_month_Apr_day_3,\n SUBPARTITION p_month_Apr_day_4,\n SUBPARTITION p_month_Apr_day_5,\n SUBPARTITION p_month_Apr_day_6,\n SUBPARTITION p_month_Apr_day_7,\n SUBPARTITION p_month_Apr_day_8,\n SUBPARTITION p_month_Apr_day_9,\n SUBPARTITION p_month_Apr_day_10,\n SUBPARTITION p_month_Apr_day_11,\n SUBPARTITION p_month_Apr_day_12,\n SUBPARTITION p_month_Apr_day_13,\n SUBPARTITION p_month_Apr_day_14,\n SUBPARTITION p_month_Apr_day_15,\n SUBPARTITION p_month_Apr_day_16,\n SUBPARTITION p_month_Apr_day_17,\n SUBPARTITION p_month_Apr_day_18,\n SUBPARTITION p_month_Apr_day_19,\n SUBPARTITION p_month_Apr_day_20,\n SUBPARTITION p_month_Apr_day_21,\n SUBPARTITION p_month_Apr_day_22,\n SUBPARTITION p_month_Apr_day_23,\n SUBPARTITION p_month_Apr_day_24,\n SUBPARTITION p_month_Apr_day_25,\n SUBPARTITION p_month_Apr_day_26,\n SUBPARTITION p_month_Apr_day_27,\n SUBPARTITION p_month_Apr_day_28,\n SUBPARTITION p_month_Apr_day_29,\n SUBPARTITION p_month_Apr_day_30,\n SUBPARTITION p_month_Apr_day_31\n ),\n PARTITION p_month_Mai\n VALUES\n LESS THAN (4) (\n SUBPARTITION p_month_Mai_day_0,\n SUBPARTITION p_month_Mai_day_1,\n SUBPARTITION p_month_Mai_day_2,\n SUBPARTITION p_month_Mai_day_3,\n SUBPARTITION p_month_Mai_day_4,\n SUBPARTITION p_month_Mai_day_5,\n SUBPARTITION p_month_Mai_day_6,\n SUBPARTITION p_month_Mai_day_7,\n SUBPARTITION p_month_Mai_day_8,\n SUBPARTITION p_month_Mai_day_9,\n SUBPARTITION p_month_Mai_day_10,\n SUBPARTITION p_month_Mai_day_11,\n SUBPARTITION p_month_Mai_day_12,\n SUBPARTITION p_month_Mai_day_13,\n SUBPARTITION p_month_Mai_day_14,\n SUBPARTITION p_month_Mai_day_15,\n SUBPARTITION p_month_Mai_day_16,\n SUBPARTITION p_month_Mai_day_17,\n SUBPARTITION p_month_Mai_day_18,\n SUBPARTITION p_month_Mai_day_19,\n SUBPARTITION p_month_Mai_day_20,\n SUBPARTITION p_month_Mai_day_21,\n SUBPARTITION p_month_Mai_day_22,\n SUBPARTITION p_month_Mai_day_23,\n SUBPARTITION p_month_Mai_day_24,\n SUBPARTITION p_month_Mai_day_25,\n SUBPARTITION p_month_Mai_day_26,\n SUBPARTITION p_month_Mai_day_27,\n SUBPARTITION p_month_Mai_day_28,\n SUBPARTITION p_month_Mai_day_29,\n SUBPARTITION p_month_Mai_day_30,\n SUBPARTITION p_month_Mai_day_31\n ),\n PARTITION p_month_Jun\n VALUES\n LESS THAN (5) (\n SUBPARTITION p_month_Jun_day_0,\n SUBPARTITION p_month_Jun_day_1,\n SUBPARTITION p_month_Jun_day_2,\n SUBPARTITION p_month_Jun_day_3,\n SUBPARTITION p_month_Jun_day_4,\n SUBPARTITION p_month_Jun_day_5,\n SUBPARTITION p_month_Jun_day_6,\n SUBPARTITION p_month_Jun_day_7,\n SUBPARTITION p_month_Jun_day_8,\n SUBPARTITION p_month_Jun_day_9,\n SUBPARTITION p_month_Jun_day_10,\n SUBPARTITION p_month_Jun_day_11,\n SUBPARTITION p_month_Jun_day_12,\n SUBPARTITION p_month_Jun_day_13,\n SUBPARTITION p_month_Jun_day_14,\n SUBPARTITION p_month_Jun_day_15,\n SUBPARTITION p_month_Jun_day_16,\n SUBPARTITION p_month_Jun_day_17,\n SUBPARTITION p_month_Jun_day_18,\n SUBPARTITION p_month_Jun_day_19,\n SUBPARTITION p_month_Jun_day_20,\n SUBPARTITION p_month_Jun_day_21,\n SUBPARTITION p_month_Jun_day_22,\n SUBPARTITION p_month_Jun_day_23,\n SUBPARTITION p_month_Jun_day_24,\n SUBPARTITION p_month_Jun_day_25,\n SUBPARTITION p_month_Jun_day_26,\n SUBPARTITION p_month_Jun_day_27,\n SUBPARTITION p_month_Jun_day_28,\n SUBPARTITION p_month_Jun_day_29,\n SUBPARTITION p_month_Jun_day_30,\n SUBPARTITION p_month_Jun_day_31\n ),\n PARTITION p_month_Jul\n VALUES\n LESS THAN (6) (\n SUBPARTITION p_month_Jul_day_0,\n SUBPARTITION p_month_Jul_day_1,\n SUBPARTITION p_month_Jul_day_2,\n SUBPARTITION p_month_Jul_day_3,\n SUBPARTITION p_month_Jul_day_4,\n SUBPARTITION p_month_Jul_day_5,\n SUBPARTITION p_month_Jul_day_6,\n SUBPARTITION p_month_Jul_day_7,\n SUBPARTITION p_month_Jul_day_8,\n SUBPARTITION p_month_Jul_day_9,\n SUBPARTITION p_month_Jul_day_10,\n SUBPARTITION p_month_Jul_day_11,\n SUBPARTITION p_month_Jul_day_12,\n SUBPARTITION p_month_Jul_day_13,\n SUBPARTITION p_month_Jul_day_14,\n SUBPARTITION p_month_Jul_day_15,\n SUBPARTITION p_month_Jul_day_16,\n SUBPARTITION p_month_Jul_day_17,\n SUBPARTITION p_month_Jul_day_18,\n SUBPARTITION p_month_Jul_day_19,\n SUBPARTITION p_month_Jul_day_20,\n SUBPARTITION p_month_Jul_day_21,\n SUBPARTITION p_month_Jul_day_22,\n SUBPARTITION p_month_Jul_day_23,\n SUBPARTITION p_month_Jul_day_24,\n SUBPARTITION p_month_Jul_day_25,\n SUBPARTITION p_month_Jul_day_26,\n SUBPARTITION p_month_Jul_day_27,\n SUBPARTITION p_month_Jul_day_28,\n SUBPARTITION p_month_Jul_day_29,\n SUBPARTITION p_month_Jul_day_30,\n SUBPARTITION p_month_Jul_day_31\n ),\n PARTITION p_month_Aug\n VALUES\n LESS THAN (7) (\n SUBPARTITION p_month_Aug_day_0,\n SUBPARTITION p_month_Aug_day_1,\n SUBPARTITION p_month_Aug_day_2,\n SUBPARTITION p_month_Aug_day_3,\n SUBPARTITION p_month_Aug_day_4,\n SUBPARTITION p_month_Aug_day_5,\n SUBPARTITION p_month_Aug_day_6,\n SUBPARTITION p_month_Aug_day_7,\n SUBPARTITION p_month_Aug_day_8,\n SUBPARTITION p_month_Aug_day_9,\n SUBPARTITION p_month_Aug_day_10,\n SUBPARTITION p_month_Aug_day_11,\n SUBPARTITION p_month_Aug_day_12,\n SUBPARTITION p_month_Aug_day_13,\n SUBPARTITION p_month_Aug_day_14,\n SUBPARTITION p_month_Aug_day_15,\n SUBPARTITION p_month_Aug_day_16,\n SUBPARTITION p_month_Aug_day_17,\n SUBPARTITION p_month_Aug_day_18,\n SUBPARTITION p_month_Aug_day_19,\n SUBPARTITION p_month_Aug_day_20,\n SUBPARTITION p_month_Aug_day_21,\n SUBPARTITION p_month_Aug_day_22,\n SUBPARTITION p_month_Aug_day_23,\n SUBPARTITION p_month_Aug_day_24,\n SUBPARTITION p_month_Aug_day_25,\n SUBPARTITION p_month_Aug_day_26,\n SUBPARTITION p_month_Aug_day_27,\n SUBPARTITION p_month_Aug_day_28,\n SUBPARTITION p_month_Aug_day_29,\n SUBPARTITION p_month_Aug_day_30,\n SUBPARTITION p_month_Aug_day_31\n ),\n PARTITION p_month_Sep\n VALUES\n LESS THAN (8) (\n SUBPARTITION p_month_Sep_day_0,\n SUBPARTITION p_month_Sep_day_1,\n SUBPARTITION p_month_Sep_day_2,\n SUBPARTITION p_month_Sep_day_3,\n SUBPARTITION p_month_Sep_day_4,\n SUBPARTITION p_month_Sep_day_5,\n SUBPARTITION p_month_Sep_day_6,\n SUBPARTITION p_month_Sep_day_7,\n SUBPARTITION p_month_Sep_day_8,\n SUBPARTITION p_month_Sep_day_9,\n SUBPARTITION p_month_Sep_day_10,\n SUBPARTITION p_month_Sep_day_11,\n SUBPARTITION p_month_Sep_day_12,\n SUBPARTITION p_month_Sep_day_13,\n SUBPARTITION p_month_Sep_day_14,\n SUBPARTITION p_month_Sep_day_15,\n SUBPARTITION p_month_Sep_day_16,\n SUBPARTITION p_month_Sep_day_17,\n SUBPARTITION p_month_Sep_day_18,\n SUBPARTITION p_month_Sep_day_19,\n SUBPARTITION p_month_Sep_day_20,\n SUBPARTITION p_month_Sep_day_21,\n SUBPARTITION p_month_Sep_day_22,\n SUBPARTITION p_month_Sep_day_23,\n SUBPARTITION p_month_Sep_day_24,\n SUBPARTITION p_month_Sep_day_25,\n SUBPARTITION p_month_Sep_day_26,\n SUBPARTITION p_month_Sep_day_27,\n SUBPARTITION p_month_Sep_day_28,\n SUBPARTITION p_month_Sep_day_29,\n SUBPARTITION p_month_Sep_day_30,\n SUBPARTITION p_month_Sep_day_31\n ),\n PARTITION p_month_Oct\n VALUES\n LESS THAN (9) (\n SUBPARTITION p_month_Oct_day_0,\n SUBPARTITION p_month_Oct_day_1,\n SUBPARTITION p_month_Oct_day_2,\n SUBPARTITION p_month_Oct_day_3,\n SUBPARTITION p_month_Oct_day_4,\n SUBPARTITION p_month_Oct_day_5,\n SUBPARTITION p_month_Oct_day_6,\n SUBPARTITION p_month_Oct_day_7,\n SUBPARTITION p_month_Oct_day_8,\n SUBPARTITION p_month_Oct_day_9,\n SUBPARTITION p_month_Oct_day_10,\n SUBPARTITION p_month_Oct_day_11,\n SUBPARTITION p_month_Oct_day_12,\n SUBPARTITION p_month_Oct_day_13,\n SUBPARTITION p_month_Oct_day_14,\n SUBPARTITION p_month_Oct_day_15,\n SUBPARTITION p_month_Oct_day_16,\n SUBPARTITION p_month_Oct_day_17,\n SUBPARTITION p_month_Oct_day_18,\n SUBPARTITION p_month_Oct_day_19,\n SUBPARTITION p_month_Oct_day_20,\n SUBPARTITION p_month_Oct_day_21,\n SUBPARTITION p_month_Oct_day_22,\n SUBPARTITION p_month_Oct_day_23,\n SUBPARTITION p_month_Oct_day_24,\n SUBPARTITION p_month_Oct_day_25,\n SUBPARTITION p_month_Oct_day_26,\n SUBPARTITION p_month_Oct_day_27,\n SUBPARTITION p_month_Oct_day_28,\n SUBPARTITION p_month_Oct_day_29,\n SUBPARTITION p_month_Oct_day_30,\n SUBPARTITION p_month_Oct_day_31\n ),\n PARTITION p_month_Nov\n VALUES\n LESS THAN (10) (\n SUBPARTITION p_month_Nov_day_0,\n SUBPARTITION p_month_Nov_day_1,\n SUBPARTITION p_month_Nov_day_2,\n SUBPARTITION p_month_Nov_day_3,\n SUBPARTITION p_month_Nov_day_4,\n SUBPARTITION p_month_Nov_day_5,\n SUBPARTITION p_month_Nov_day_6,\n SUBPARTITION p_month_Nov_day_7,\n SUBPARTITION p_month_Nov_day_8,\n SUBPARTITION p_month_Nov_day_9,\n SUBPARTITION p_month_Nov_day_10,\n SUBPARTITION p_month_Nov_day_11,\n SUBPARTITION p_month_Nov_day_12,\n SUBPARTITION p_month_Nov_day_13,\n SUBPARTITION p_month_Nov_day_14,\n SUBPARTITION p_month_Nov_day_15,\n SUBPARTITION p_month_Nov_day_16,\n SUBPARTITION p_month_Nov_day_17,\n SUBPARTITION p_month_Nov_day_18,\n SUBPARTITION p_month_Nov_day_19,\n SUBPARTITION p_month_Nov_day_20,\n SUBPARTITION p_month_Nov_day_21,\n SUBPARTITION p_month_Nov_day_22,\n SUBPARTITION p_month_Nov_day_23,\n SUBPARTITION p_month_Nov_day_24,\n SUBPARTITION p_month_Nov_day_25,\n SUBPARTITION p_month_Nov_day_26,\n SUBPARTITION p_month_Nov_day_27,\n SUBPARTITION p_month_Nov_day_28,\n SUBPARTITION p_month_Nov_day_29,\n SUBPARTITION p_month_Nov_day_30,\n SUBPARTITION p_month_Nov_day_31\n ),\n PARTITION p_month_Dec\n VALUES\n LESS THAN (11) (\n SUBPARTITION p_month_Dec_day_0,\n SUBPARTITION p_month_Dec_day_1,\n SUBPARTITION p_month_Dec_day_2,\n SUBPARTITION p_month_Dec_day_3,\n SUBPARTITION p_month_Dec_day_4,\n SUBPARTITION p_month_Dec_day_5,\n SUBPARTITION p_month_Dec_day_6,\n SUBPARTITION p_month_Dec_day_7,\n SUBPARTITION p_month_Dec_day_8,\n SUBPARTITION p_month_Dec_day_9,\n SUBPARTITION p_month_Dec_day_10,\n SUBPARTITION p_month_Dec_day_11,\n SUBPARTITION p_month_Dec_day_12,\n SUBPARTITION p_month_Dec_day_13,\n SUBPARTITION p_month_Dec_day_14,\n SUBPARTITION p_month_Dec_day_15,\n SUBPARTITION p_month_Dec_day_16,\n SUBPARTITION p_month_Dec_day_17,\n SUBPARTITION p_month_Dec_day_18,\n SUBPARTITION p_month_Dec_day_19,\n SUBPARTITION p_month_Dec_day_20,\n SUBPARTITION p_month_Dec_day_21,\n SUBPARTITION p_month_Dec_day_22,\n SUBPARTITION p_month_Dec_day_23,\n SUBPARTITION p_month_Dec_day_24,\n SUBPARTITION p_month_Dec_day_25,\n SUBPARTITION p_month_Dec_day_26,\n SUBPARTITION p_month_Dec_day_27,\n SUBPARTITION p_month_Dec_day_28,\n SUBPARTITION p_month_Dec_day_29,\n SUBPARTITION p_month_Dec_day_30,\n SUBPARTITION p_month_Dec_day_31\n )\n)", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE `trips` (\n `id` bigint(20) UNSIGNED NOT NULL COMMENT 'Unique trip Id',\n `trip_category` int(11) UNSIGNED NOT NULL COMMENT 'Trip category',\n `trip_month` int(11) UNSIGNED NOT NULL COMMENT 'Trip month',\n `trip_date` date NOT NULL COMMENT 'The trip date'\n) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'The trips'\nPARTITION BY RANGE(trip_month) SUBPARTITION BY HASH(DAY(trip_date)) (\n PARTITION p_month_Jan\n VALUES\n LESS THAN (0) (\n SUBPARTITION p_month_Jan_day_0,\n SUBPARTITION p_month_Jan_day_1,\n SUBPARTITION p_month_Jan_day_2,\n SUBPARTITION p_month_Jan_day_3,\n SUBPARTITION p_month_Jan_day_4,\n SUBPARTITION p_month_Jan_day_5,\n SUBPARTITION p_month_Jan_day_6,\n SUBPARTITION p_month_Jan_day_7,\n SUBPARTITION p_month_Jan_day_8,\n SUBPARTITION p_month_Jan_day_9,\n SUBPARTITION p_month_Jan_day_10,\n SUBPARTITION p_month_Jan_day_11,\n SUBPARTITION p_month_Jan_day_12,\n SUBPARTITION p_month_Jan_day_13,\n SUBPARTITION p_month_Jan_day_14,\n SUBPARTITION p_month_Jan_day_15,\n SUBPARTITION p_month_Jan_day_16,\n SUBPARTITION p_month_Jan_day_17,\n SUBPARTITION p_month_Jan_day_18,\n SUBPARTITION p_month_Jan_day_19,\n SUBPARTITION p_month_Jan_day_20,\n SUBPARTITION p_month_Jan_day_21,\n SUBPARTITION p_month_Jan_day_22,\n SUBPARTITION p_month_Jan_day_23,\n SUBPARTITION p_month_Jan_day_24,\n SUBPARTITION p_month_Jan_day_25,\n SUBPARTITION p_month_Jan_day_26,\n SUBPARTITION p_month_Jan_day_27,\n SUBPARTITION p_month_Jan_day_28,\n SUBPARTITION p_month_Jan_day_29,\n SUBPARTITION p_month_Jan_day_30,\n SUBPARTITION p_month_Jan_day_31\n ),\n PARTITION p_month_Feb\n VALUES\n LESS THAN (1) (\n SUBPARTITION p_month_Feb_day_0,\n SUBPARTITION p_month_Feb_day_1,\n SUBPARTITION p_month_Feb_day_2,\n SUBPARTITION p_month_Feb_day_3,\n SUBPARTITION p_month_Feb_day_4,\n SUBPARTITION p_month_Feb_day_5,\n SUBPARTITION p_month_Feb_day_6,\n SUBPARTITION p_month_Feb_day_7,\n SUBPARTITION p_month_Feb_day_8,\n SUBPARTITION p_month_Feb_day_9,\n SUBPARTITION p_month_Feb_day_10,\n SUBPARTITION p_month_Feb_day_11,\n SUBPARTITION p_month_Feb_day_12,\n SUBPARTITION p_month_Feb_day_13,\n SUBPARTITION p_month_Feb_day_14,\n SUBPARTITION p_month_Feb_day_15,\n SUBPARTITION p_month_Feb_day_16,\n SUBPARTITION p_month_Feb_day_17,\n SUBPARTITION p_month_Feb_day_18,\n SUBPARTITION p_month_Feb_day_19,\n SUBPARTITION p_month_Feb_day_20,\n SUBPARTITION p_month_Feb_day_21,\n SUBPARTITION p_month_Feb_day_22,\n SUBPARTITION p_month_Feb_day_23,\n SUBPARTITION p_month_Feb_day_24,\n SUBPARTITION p_month_Feb_day_25,\n SUBPARTITION p_month_Feb_day_26,\n SUBPARTITION p_month_Feb_day_27,\n SUBPARTITION p_month_Feb_day_28,\n SUBPARTITION p_month_Feb_day_29,\n SUBPARTITION p_month_Feb_day_30,\n SUBPARTITION p_month_Feb_day_31\n ),\n PARTITION p_month_Mar\n VALUES\n LESS THAN (2) (\n SUBPARTITION p_month_Mar_day_0,\n SUBPARTITION p_month_Mar_day_1,\n SUBPARTITION p_month_Mar_day_2,\n SUBPARTITION p_month_Mar_day_3,\n SUBPARTITION p_month_Mar_day_4,\n SUBPARTITION p_month_Mar_day_5,\n SUBPARTITION p_month_Mar_day_6,\n SUBPARTITION p_month_Mar_day_7,\n SUBPARTITION p_month_Mar_day_8,\n SUBPARTITION p_month_Mar_day_9,\n SUBPARTITION p_month_Mar_day_10,\n SUBPARTITION p_month_Mar_day_11,\n SUBPARTITION p_month_Mar_day_12,\n SUBPARTITION p_month_Mar_day_13,\n SUBPARTITION p_month_Mar_day_14,\n SUBPARTITION p_month_Mar_day_15,\n SUBPARTITION p_month_Mar_day_16,\n SUBPARTITION p_month_Mar_day_17,\n SUBPARTITION p_month_Mar_day_18,\n SUBPARTITION p_month_Mar_day_19,\n SUBPARTITION p_month_Mar_day_20,\n SUBPARTITION p_month_Mar_day_21,\n SUBPARTITION p_month_Mar_day_22,\n SUBPARTITION p_month_Mar_day_23,\n SUBPARTITION p_month_Mar_day_24,\n SUBPARTITION p_month_Mar_day_25,\n SUBPARTITION p_month_Mar_day_26,\n SUBPARTITION p_month_Mar_day_27,\n SUBPARTITION p_month_Mar_day_28,\n SUBPARTITION p_month_Mar_day_29,\n SUBPARTITION p_month_Mar_day_30,\n SUBPARTITION p_month_Mar_day_31\n ),\n PARTITION p_month_Apr\n VALUES\n LESS THAN (3) (\n SUBPARTITION p_month_Apr_day_0,\n SUBPARTITION p_month_Apr_day_1,\n SUBPARTITION p_month_Apr_day_2,\n SUBPARTITION p_month_Apr_day_3,\n SUBPARTITION p_month_Apr_day_4,\n SUBPARTITION p_month_Apr_day_5,\n SUBPARTITION p_month_Apr_day_6,\n SUBPARTITION p_month_Apr_day_7,\n SUBPARTITION p_month_Apr_day_8,\n SUBPARTITION p_month_Apr_day_9,\n SUBPARTITION p_month_Apr_day_10,\n SUBPARTITION p_month_Apr_day_11,\n SUBPARTITION p_month_Apr_day_12,\n SUBPARTITION p_month_Apr_day_13,\n SUBPARTITION p_month_Apr_day_14,\n SUBPARTITION p_month_Apr_day_15,\n SUBPARTITION p_month_Apr_day_16,\n SUBPARTITION p_month_Apr_day_17,\n SUBPARTITION p_month_Apr_day_18,\n SUBPARTITION p_month_Apr_day_19,\n SUBPARTITION p_month_Apr_day_20,\n SUBPARTITION p_month_Apr_day_21,\n SUBPARTITION p_month_Apr_day_22,\n SUBPARTITION p_month_Apr_day_23,\n SUBPARTITION p_month_Apr_day_24,\n SUBPARTITION p_month_Apr_day_25,\n SUBPARTITION p_month_Apr_day_26,\n SUBPARTITION p_month_Apr_day_27,\n SUBPARTITION p_month_Apr_day_28,\n SUBPARTITION p_month_Apr_day_29,\n SUBPARTITION p_month_Apr_day_30,\n SUBPARTITION p_month_Apr_day_31\n ),\n PARTITION p_month_Mai\n VALUES\n LESS THAN (4) (\n SUBPARTITION p_month_Mai_day_0,\n SUBPARTITION p_month_Mai_day_1,\n SUBPARTITION p_month_Mai_day_2,\n SUBPARTITION p_month_Mai_day_3,\n SUBPARTITION p_month_Mai_day_4,\n SUBPARTITION p_month_Mai_day_5,\n SUBPARTITION p_month_Mai_day_6,\n SUBPARTITION p_month_Mai_day_7,\n SUBPARTITION p_month_Mai_day_8,\n SUBPARTITION p_month_Mai_day_9,\n SUBPARTITION p_month_Mai_day_10,\n SUBPARTITION p_month_Mai_day_11,\n SUBPARTITION p_month_Mai_day_12,\n SUBPARTITION p_month_Mai_day_13,\n SUBPARTITION p_month_Mai_day_14,\n SUBPARTITION p_month_Mai_day_15,\n SUBPARTITION p_month_Mai_day_16,\n SUBPARTITION p_month_Mai_day_17,\n SUBPARTITION p_month_Mai_day_18,\n SUBPARTITION p_month_Mai_day_19,\n SUBPARTITION p_month_Mai_day_20,\n SUBPARTITION p_month_Mai_day_21,\n SUBPARTITION p_month_Mai_day_22,\n SUBPARTITION p_month_Mai_day_23,\n SUBPARTITION p_month_Mai_day_24,\n SUBPARTITION p_month_Mai_day_25,\n SUBPARTITION p_month_Mai_day_26,\n SUBPARTITION p_month_Mai_day_27,\n SUBPARTITION p_month_Mai_day_28,\n SUBPARTITION p_month_Mai_day_29,\n SUBPARTITION p_month_Mai_day_30,\n SUBPARTITION p_month_Mai_day_31\n ),\n PARTITION p_month_Jun\n VALUES\n LESS THAN (5) (\n SUBPARTITION p_month_Jun_day_0,\n SUBPARTITION p_month_Jun_day_1,\n SUBPARTITION p_month_Jun_day_2,\n SUBPARTITION p_month_Jun_day_3,\n SUBPARTITION p_month_Jun_day_4,\n SUBPARTITION p_month_Jun_day_5,\n SUBPARTITION p_month_Jun_day_6,\n SUBPARTITION p_month_Jun_day_7,\n SUBPARTITION p_month_Jun_day_8,\n SUBPARTITION p_month_Jun_day_9,\n SUBPARTITION p_month_Jun_day_10,\n SUBPARTITION p_month_Jun_day_11,\n SUBPARTITION p_month_Jun_day_12,\n SUBPARTITION p_month_Jun_day_13,\n SUBPARTITION p_month_Jun_day_14,\n SUBPARTITION p_month_Jun_day_15,\n SUBPARTITION p_month_Jun_day_16,\n SUBPARTITION p_month_Jun_day_17,\n SUBPARTITION p_month_Jun_day_18,\n SUBPARTITION p_month_Jun_day_19,\n SUBPARTITION p_month_Jun_day_20,\n SUBPARTITION p_month_Jun_day_21,\n SUBPARTITION p_month_Jun_day_22,\n SUBPARTITION p_month_Jun_day_23,\n SUBPARTITION p_month_Jun_day_24,\n SUBPARTITION p_month_Jun_day_25,\n SUBPARTITION p_month_Jun_day_26,\n SUBPARTITION p_month_Jun_day_27,\n SUBPARTITION p_month_Jun_day_28,\n SUBPARTITION p_month_Jun_day_29,\n SUBPARTITION p_month_Jun_day_30,\n SUBPARTITION p_month_Jun_day_31\n ),\n PARTITION p_month_Jul\n VALUES\n LESS THAN (6) (\n SUBPARTITION p_month_Jul_day_0,\n SUBPARTITION p_month_Jul_day_1,\n SUBPARTITION p_month_Jul_day_2,\n SUBPARTITION p_month_Jul_day_3,\n SUBPARTITION p_month_Jul_day_4,\n SUBPARTITION p_month_Jul_day_5,\n SUBPARTITION p_month_Jul_day_6,\n SUBPARTITION p_month_Jul_day_7,\n SUBPARTITION p_month_Jul_day_8,\n SUBPARTITION p_month_Jul_day_9,\n SUBPARTITION p_month_Jul_day_10,\n SUBPARTITION p_month_Jul_day_11,\n SUBPARTITION p_month_Jul_day_12,\n SUBPARTITION p_month_Jul_day_13,\n SUBPARTITION p_month_Jul_day_14,\n SUBPARTITION p_month_Jul_day_15,\n SUBPARTITION p_month_Jul_day_16,\n SUBPARTITION p_month_Jul_day_17,\n SUBPARTITION p_month_Jul_day_18,\n SUBPARTITION p_month_Jul_day_19,\n SUBPARTITION p_month_Jul_day_20,\n SUBPARTITION p_month_Jul_day_21,\n SUBPARTITION p_month_Jul_day_22,\n SUBPARTITION p_month_Jul_day_23,\n SUBPARTITION p_month_Jul_day_24,\n SUBPARTITION p_month_Jul_day_25,\n SUBPARTITION p_month_Jul_day_26,\n SUBPARTITION p_month_Jul_day_27,\n SUBPARTITION p_month_Jul_day_28,\n SUBPARTITION p_month_Jul_day_29,\n SUBPARTITION p_month_Jul_day_30,\n SUBPARTITION p_month_Jul_day_31\n ),\n PARTITION p_month_Aug\n VALUES\n LESS THAN (7) (\n SUBPARTITION p_month_Aug_day_0,\n SUBPARTITION p_month_Aug_day_1,\n SUBPARTITION p_month_Aug_day_2,\n SUBPARTITION p_month_Aug_day_3,\n SUBPARTITION p_month_Aug_day_4,\n SUBPARTITION p_month_Aug_day_5,\n SUBPARTITION p_month_Aug_day_6,\n SUBPARTITION p_month_Aug_day_7,\n SUBPARTITION p_month_Aug_day_8,\n SUBPARTITION p_month_Aug_day_9,\n SUBPARTITION p_month_Aug_day_10,\n SUBPARTITION p_month_Aug_day_11,\n SUBPARTITION p_month_Aug_day_12,\n SUBPARTITION p_month_Aug_day_13,\n SUBPARTITION p_month_Aug_day_14,\n SUBPARTITION p_month_Aug_day_15,\n SUBPARTITION p_month_Aug_day_16,\n SUBPARTITION p_month_Aug_day_17,\n SUBPARTITION p_month_Aug_day_18,\n SUBPARTITION p_month_Aug_day_19,\n SUBPARTITION p_month_Aug_day_20,\n SUBPARTITION p_month_Aug_day_21,\n SUBPARTITION p_month_Aug_day_22,\n SUBPARTITION p_month_Aug_day_23,\n SUBPARTITION p_month_Aug_day_24,\n SUBPARTITION p_month_Aug_day_25,\n SUBPARTITION p_month_Aug_day_26,\n SUBPARTITION p_month_Aug_day_27,\n SUBPARTITION p_month_Aug_day_28,\n SUBPARTITION p_month_Aug_day_29,\n SUBPARTITION p_month_Aug_day_30,\n SUBPARTITION p_month_Aug_day_31\n ),\n PARTITION p_month_Sep\n VALUES\n LESS THAN (8) (\n SUBPARTITION p_month_Sep_day_0,\n SUBPARTITION p_month_Sep_day_1,\n SUBPARTITION p_month_Sep_day_2,\n SUBPARTITION p_month_Sep_day_3,\n SUBPARTITION p_month_Sep_day_4,\n SUBPARTITION p_month_Sep_day_5,\n SUBPARTITION p_month_Sep_day_6,\n SUBPARTITION p_month_Sep_day_7,\n SUBPARTITION p_month_Sep_day_8,\n SUBPARTITION p_month_Sep_day_9,\n SUBPARTITION p_month_Sep_day_10,\n SUBPARTITION p_month_Sep_day_11,\n SUBPARTITION p_month_Sep_day_12,\n SUBPARTITION p_month_Sep_day_13,\n SUBPARTITION p_month_Sep_day_14,\n SUBPARTITION p_month_Sep_day_15,\n SUBPARTITION p_month_Sep_day_16,\n SUBPARTITION p_month_Sep_day_17,\n SUBPARTITION p_month_Sep_day_18,\n SUBPARTITION p_month_Sep_day_19,\n SUBPARTITION p_month_Sep_day_20,\n SUBPARTITION p_month_Sep_day_21,\n SUBPARTITION p_month_Sep_day_22,\n SUBPARTITION p_month_Sep_day_23,\n SUBPARTITION p_month_Sep_day_24,\n SUBPARTITION p_month_Sep_day_25,\n SUBPARTITION p_month_Sep_day_26,\n SUBPARTITION p_month_Sep_day_27,\n SUBPARTITION p_month_Sep_day_28,\n SUBPARTITION p_month_Sep_day_29,\n SUBPARTITION p_month_Sep_day_30,\n SUBPARTITION p_month_Sep_day_31\n ),\n PARTITION p_month_Oct\n VALUES\n LESS THAN (9) (\n SUBPARTITION p_month_Oct_day_0,\n SUBPARTITION p_month_Oct_day_1,\n SUBPARTITION p_month_Oct_day_2,\n SUBPARTITION p_month_Oct_day_3,\n SUBPARTITION p_month_Oct_day_4,\n SUBPARTITION p_month_Oct_day_5,\n SUBPARTITION p_month_Oct_day_6,\n SUBPARTITION p_month_Oct_day_7,\n SUBPARTITION p_month_Oct_day_8,\n SUBPARTITION p_month_Oct_day_9,\n SUBPARTITION p_month_Oct_day_10,\n SUBPARTITION p_month_Oct_day_11,\n SUBPARTITION p_month_Oct_day_12,\n SUBPARTITION p_month_Oct_day_13,\n SUBPARTITION p_month_Oct_day_14,\n SUBPARTITION p_month_Oct_day_15,\n SUBPARTITION p_month_Oct_day_16,\n SUBPARTITION p_month_Oct_day_17,\n SUBPARTITION p_month_Oct_day_18,\n SUBPARTITION p_month_Oct_day_19,\n SUBPARTITION p_month_Oct_day_20,\n SUBPARTITION p_month_Oct_day_21,\n SUBPARTITION p_month_Oct_day_22,\n SUBPARTITION p_month_Oct_day_23,\n SUBPARTITION p_month_Oct_day_24,\n SUBPARTITION p_month_Oct_day_25,\n SUBPARTITION p_month_Oct_day_26,\n SUBPARTITION p_month_Oct_day_27,\n SUBPARTITION p_month_Oct_day_28,\n SUBPARTITION p_month_Oct_day_29,\n SUBPARTITION p_month_Oct_day_30,\n SUBPARTITION p_month_Oct_day_31\n ),\n PARTITION p_month_Nov\n VALUES\n LESS THAN (10) (\n SUBPARTITION p_month_Nov_day_0,\n SUBPARTITION p_month_Nov_day_1,\n SUBPARTITION p_month_Nov_day_2,\n SUBPARTITION p_month_Nov_day_3,\n SUBPARTITION p_month_Nov_day_4,\n SUBPARTITION p_month_Nov_day_5,\n SUBPARTITION p_month_Nov_day_6,\n SUBPARTITION p_month_Nov_day_7,\n SUBPARTITION p_month_Nov_day_8,\n SUBPARTITION p_month_Nov_day_9,\n SUBPARTITION p_month_Nov_day_10,\n SUBPARTITION p_month_Nov_day_11,\n SUBPARTITION p_month_Nov_day_12,\n SUBPARTITION p_month_Nov_day_13,\n SUBPARTITION p_month_Nov_day_14,\n SUBPARTITION p_month_Nov_day_15,\n SUBPARTITION p_month_Nov_day_16,\n SUBPARTITION p_month_Nov_day_17,\n SUBPARTITION p_month_Nov_day_18,\n SUBPARTITION p_month_Nov_day_19,\n SUBPARTITION p_month_Nov_day_20,\n SUBPARTITION p_month_Nov_day_21,\n SUBPARTITION p_month_Nov_day_22,\n SUBPARTITION p_month_Nov_day_23,\n SUBPARTITION p_month_Nov_day_24,\n SUBPARTITION p_month_Nov_day_25,\n SUBPARTITION p_month_Nov_day_26,\n SUBPARTITION p_month_Nov_day_27,\n SUBPARTITION p_month_Nov_day_28,\n SUBPARTITION p_month_Nov_day_29,\n SUBPARTITION p_month_Nov_day_30,\n SUBPARTITION p_month_Nov_day_31\n ),\n PARTITION p_month_Dec\n VALUES\n LESS THAN (11) (\n SUBPARTITION p_month_Dec_day_0,\n SUBPARTITION p_month_Dec_day_1,\n SUBPARTITION p_month_Dec_day_2,\n SUBPARTITION p_month_Dec_day_3,\n SUBPARTITION p_month_Dec_day_4,\n SUBPARTITION p_month_Dec_day_5,\n SUBPARTITION p_month_Dec_day_6,\n SUBPARTITION p_month_Dec_day_7,\n SUBPARTITION p_month_Dec_day_8,\n SUBPARTITION p_month_Dec_day_9,\n SUBPARTITION p_month_Dec_day_10,\n SUBPARTITION p_month_Dec_day_11,\n SUBPARTITION p_month_Dec_day_12,\n SUBPARTITION p_month_Dec_day_13,\n SUBPARTITION p_month_Dec_day_14,\n SUBPARTITION p_month_Dec_day_15,\n SUBPARTITION p_month_Dec_day_16,\n SUBPARTITION p_month_Dec_day_17,\n SUBPARTITION p_month_Dec_day_18,\n SUBPARTITION p_month_Dec_day_19,\n SUBPARTITION p_month_Dec_day_20,\n SUBPARTITION p_month_Dec_day_21,\n SUBPARTITION p_month_Dec_day_22,\n SUBPARTITION p_month_Dec_day_23,\n SUBPARTITION p_month_Dec_day_24,\n SUBPARTITION p_month_Dec_day_25,\n SUBPARTITION p_month_Dec_day_26,\n SUBPARTITION p_month_Dec_day_27,\n SUBPARTITION p_month_Dec_day_28,\n SUBPARTITION p_month_Dec_day_29,\n SUBPARTITION p_month_Dec_day_30,\n SUBPARTITION p_month_Dec_day_31\n )\n)", - "len": 18500, - "last": 18500, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`trips`", - "value": "trips", - "keyword": null, - "type": 8, - "flags": 2, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`id`", - "value": "id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "bigint", - "value": "BIGINT", - "keyword": "BIGINT", - "type": 1, - "flags": 11, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "20", - "value": 20, - "keyword": null, - "type": 6, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Unique trip Id'", - "value": "Unique trip Id", - "keyword": null, - "type": 7, - "flags": 1, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`trip_category`", - "value": "trip_category", - "keyword": null, - "type": 8, - "flags": 2, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "int", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "11", - "value": 11, - "keyword": null, - "type": 6, - "flags": 0, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Trip category'", - "value": "Trip category", - "keyword": null, - "type": 7, - "flags": 1, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`trip_month`", - "value": "trip_month", - "keyword": null, - "type": 8, - "flags": 2, - "position": 162 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "int", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 175 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 178 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "11", - "value": 11, - "keyword": null, - "type": 6, - "flags": 0, - "position": 179 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 181 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 182 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 183 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 191 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 192 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 200 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 201 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 208 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Trip month'", - "value": "Trip month", - "keyword": null, - "type": 7, - "flags": 1, - "position": 209 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 221 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 222 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`trip_date`", - "value": "trip_date", - "keyword": null, - "type": 8, - "flags": 2, - "position": 227 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 238 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "date", - "value": "date", - "keyword": "DATE", - "type": 1, - "flags": 41, - "position": 239 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 243 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 244 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 252 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 253 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 260 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'The trip date'", - "value": "The trip date", - "keyword": null, - "type": 7, - "flags": 1, - "position": 261 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 276 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 277 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 278 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENGINE", - "value": "ENGINE", - "keyword": "ENGINE", - "type": 1, - "flags": 1, - "position": 279 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 285 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 286 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 287 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "InnoDB", - "value": "InnoDB", - "keyword": null, - "type": 0, - "flags": 0, - "position": 288 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 294 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT CHARSET", - "value": "DEFAULT CHARSET", - "keyword": "DEFAULT CHARSET", - "type": 1, - "flags": 7, - "position": 295 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 310 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 311 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 312 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8mb4", - "value": "utf8mb4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 313 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 320 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLLATE", - "value": "COLLATE", - "keyword": "COLLATE", - "type": 1, - "flags": 3, - "position": 321 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 328 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 329 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 330 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8mb4_unicode_ci", - "value": "utf8mb4_unicode_ci", - "keyword": null, - "type": 0, - "flags": 0, - "position": 331 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 349 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 350 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 357 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 358 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 359 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'The trips'", - "value": "The trips", - "keyword": null, - "type": 7, - "flags": 1, - "position": 360 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 371 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION BY", - "value": "PARTITION BY", - "keyword": "PARTITION BY", - "type": 1, - "flags": 7, - "position": 372 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 384 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RANGE", - "value": "RANGE", - "keyword": "RANGE", - "type": 1, - "flags": 3, - "position": 385 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 390 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "trip_month", - "value": "trip_month", - "keyword": null, - "type": 0, - "flags": 0, - "position": 391 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 401 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 402 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION BY", - "value": "SUBPARTITION BY", - "keyword": "SUBPARTITION BY", - "type": 1, - "flags": 7, - "position": 403 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 418 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "HASH", - "value": "HASH", - "keyword": "HASH", - "type": 1, - "flags": 1, - "position": 419 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 423 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DAY", - "value": "DAY", - "keyword": "DAY", - "type": 1, - "flags": 33, - "position": 424 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 427 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "trip_date", - "value": "trip_date", - "keyword": null, - "type": 0, - "flags": 0, - "position": 428 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 437 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 438 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 439 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 440 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 441 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 446 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 455 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan", - "value": "p_month_Jan", - "keyword": null, - "type": 0, - "flags": 0, - "position": 456 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 467 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 472 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 478 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 487 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 496 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 497 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 498 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 499 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 500 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 501 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 502 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 515 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 527 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_0", - "value": "p_month_Jan_day_0", - "keyword": null, - "type": 0, - "flags": 0, - "position": 528 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 545 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 546 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 559 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 571 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_1", - "value": "p_month_Jan_day_1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 572 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 589 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 590 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 603 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 615 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_2", - "value": "p_month_Jan_day_2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 616 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 633 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 634 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 647 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 659 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_3", - "value": "p_month_Jan_day_3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 660 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 677 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 678 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 691 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 703 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_4", - "value": "p_month_Jan_day_4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 704 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 721 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 722 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 735 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 747 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_5", - "value": "p_month_Jan_day_5", - "keyword": null, - "type": 0, - "flags": 0, - "position": 748 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 765 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 766 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 779 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 791 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_6", - "value": "p_month_Jan_day_6", - "keyword": null, - "type": 0, - "flags": 0, - "position": 792 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 809 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 810 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 823 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 835 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_7", - "value": "p_month_Jan_day_7", - "keyword": null, - "type": 0, - "flags": 0, - "position": 836 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 853 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 854 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 867 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 879 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_8", - "value": "p_month_Jan_day_8", - "keyword": null, - "type": 0, - "flags": 0, - "position": 880 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 897 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 898 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 911 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 923 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_9", - "value": "p_month_Jan_day_9", - "keyword": null, - "type": 0, - "flags": 0, - "position": 924 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 941 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 942 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 955 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 967 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_10", - "value": "p_month_Jan_day_10", - "keyword": null, - "type": 0, - "flags": 0, - "position": 968 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 986 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 987 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 1000 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1012 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_11", - "value": "p_month_Jan_day_11", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1013 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1031 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1032 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 1045 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1057 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_12", - "value": "p_month_Jan_day_12", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1058 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1076 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1077 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 1090 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_13", - "value": "p_month_Jan_day_13", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 1135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1147 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_14", - "value": "p_month_Jan_day_14", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1166 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 1180 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1192 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_15", - "value": "p_month_Jan_day_15", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1193 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1211 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1212 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 1225 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1237 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_16", - "value": "p_month_Jan_day_16", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1238 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1256 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1257 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 1270 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1282 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_17", - "value": "p_month_Jan_day_17", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1283 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1301 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1302 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 1315 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1327 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_18", - "value": "p_month_Jan_day_18", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1328 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1346 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1347 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 1360 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1372 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_19", - "value": "p_month_Jan_day_19", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1373 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1391 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1392 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 1405 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1417 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_20", - "value": "p_month_Jan_day_20", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1418 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1436 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1437 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 1450 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1462 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_21", - "value": "p_month_Jan_day_21", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1463 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1481 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1482 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 1495 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1507 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_22", - "value": "p_month_Jan_day_22", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1508 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1526 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1527 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 1540 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1552 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_23", - "value": "p_month_Jan_day_23", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1553 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1571 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1572 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 1585 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1597 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_24", - "value": "p_month_Jan_day_24", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1598 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1616 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1617 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 1630 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1642 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_25", - "value": "p_month_Jan_day_25", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1643 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1661 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1662 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 1675 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1687 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_26", - "value": "p_month_Jan_day_26", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1688 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1706 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1707 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 1720 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1732 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_27", - "value": "p_month_Jan_day_27", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1733 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1751 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1752 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 1765 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1777 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_28", - "value": "p_month_Jan_day_28", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1778 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1796 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1797 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 1810 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1822 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_29", - "value": "p_month_Jan_day_29", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1823 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1841 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1842 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 1855 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1867 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_30", - "value": "p_month_Jan_day_30", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1868 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1886 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1887 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 1900 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1912 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jan_day_31", - "value": "p_month_Jan_day_31", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1913 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1931 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1940 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1941 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1942 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 1951 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1960 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb", - "value": "p_month_Feb", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1961 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1972 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 1977 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1983 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 1992 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2001 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2002 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 2003 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2004 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2005 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2006 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2007 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 2020 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2032 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_0", - "value": "p_month_Feb_day_0", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2033 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2050 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2051 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 2064 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2076 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_1", - "value": "p_month_Feb_day_1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2077 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2094 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2095 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 2108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_2", - "value": "p_month_Feb_day_2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 2152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2164 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_3", - "value": "p_month_Feb_day_3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2165 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2182 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2183 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 2196 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2208 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_4", - "value": "p_month_Feb_day_4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2209 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2226 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2227 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 2240 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2252 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_5", - "value": "p_month_Feb_day_5", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2253 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2270 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2271 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 2284 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2296 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_6", - "value": "p_month_Feb_day_6", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2297 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2314 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2315 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 2328 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2340 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_7", - "value": "p_month_Feb_day_7", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2341 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2358 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2359 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 2372 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2384 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_8", - "value": "p_month_Feb_day_8", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2385 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2402 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2403 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 2416 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2428 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_9", - "value": "p_month_Feb_day_9", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2429 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2446 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2447 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 2460 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2472 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_10", - "value": "p_month_Feb_day_10", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2473 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2491 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2492 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 2505 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2517 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_11", - "value": "p_month_Feb_day_11", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2518 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2536 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2537 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 2550 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2562 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_12", - "value": "p_month_Feb_day_12", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2563 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2581 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2582 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 2595 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2607 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_13", - "value": "p_month_Feb_day_13", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2608 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2626 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2627 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 2640 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2652 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_14", - "value": "p_month_Feb_day_14", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2653 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2671 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2672 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 2685 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2697 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_15", - "value": "p_month_Feb_day_15", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2698 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2716 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2717 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 2730 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2742 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_16", - "value": "p_month_Feb_day_16", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2743 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2761 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2762 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 2775 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2787 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_17", - "value": "p_month_Feb_day_17", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2788 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2806 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2807 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 2820 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2832 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_18", - "value": "p_month_Feb_day_18", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2833 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2851 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2852 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 2865 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2877 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_19", - "value": "p_month_Feb_day_19", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2878 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2896 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2897 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 2910 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2922 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_20", - "value": "p_month_Feb_day_20", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2923 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2941 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2942 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 2955 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2967 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_21", - "value": "p_month_Feb_day_21", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2968 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2986 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2987 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 3000 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3012 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_22", - "value": "p_month_Feb_day_22", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3013 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3031 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3032 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 3045 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3057 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_23", - "value": "p_month_Feb_day_23", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3058 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3076 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3077 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 3090 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_24", - "value": "p_month_Feb_day_24", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 3135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3147 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_25", - "value": "p_month_Feb_day_25", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3166 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 3180 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3192 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_26", - "value": "p_month_Feb_day_26", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3193 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3211 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3212 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 3225 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3237 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_27", - "value": "p_month_Feb_day_27", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3238 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3256 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3257 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 3270 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3282 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_28", - "value": "p_month_Feb_day_28", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3283 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3301 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3302 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 3315 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3327 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_29", - "value": "p_month_Feb_day_29", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3328 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3346 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3347 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 3360 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3372 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_30", - "value": "p_month_Feb_day_30", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3373 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3391 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3392 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 3405 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3417 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Feb_day_31", - "value": "p_month_Feb_day_31", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3418 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3436 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3445 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3446 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3447 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 3456 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3465 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar", - "value": "p_month_Mar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3466 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3477 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 3482 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3488 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 3497 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3506 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3507 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 3508 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3509 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3510 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3511 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3512 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 3525 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3537 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_0", - "value": "p_month_Mar_day_0", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3538 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3555 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3556 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 3569 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3581 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_1", - "value": "p_month_Mar_day_1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3582 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3599 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3600 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 3613 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3625 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_2", - "value": "p_month_Mar_day_2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3626 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3643 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3644 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 3657 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3669 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_3", - "value": "p_month_Mar_day_3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3670 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3687 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3688 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 3701 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3713 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_4", - "value": "p_month_Mar_day_4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3714 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3731 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3732 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 3745 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3757 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_5", - "value": "p_month_Mar_day_5", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3758 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3775 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3776 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 3789 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3801 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_6", - "value": "p_month_Mar_day_6", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3802 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3819 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3820 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 3833 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3845 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_7", - "value": "p_month_Mar_day_7", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3846 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3863 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3864 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 3877 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3889 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_8", - "value": "p_month_Mar_day_8", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3890 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3907 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3908 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 3921 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3933 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_9", - "value": "p_month_Mar_day_9", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3934 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3951 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3952 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 3965 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3977 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_10", - "value": "p_month_Mar_day_10", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3978 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3996 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3997 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 4010 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4022 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_11", - "value": "p_month_Mar_day_11", - "keyword": null, - "type": 0, - "flags": 0, - "position": 4023 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 4041 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4042 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 4055 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4067 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_12", - "value": "p_month_Mar_day_12", - "keyword": null, - "type": 0, - "flags": 0, - "position": 4068 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 4086 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4087 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 4100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_13", - "value": "p_month_Mar_day_13", - "keyword": null, - "type": 0, - "flags": 0, - "position": 4113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 4131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 4145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_14", - "value": "p_month_Mar_day_14", - "keyword": null, - "type": 0, - "flags": 0, - "position": 4158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 4176 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 4190 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4202 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_15", - "value": "p_month_Mar_day_15", - "keyword": null, - "type": 0, - "flags": 0, - "position": 4203 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 4221 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4222 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 4235 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4247 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_16", - "value": "p_month_Mar_day_16", - "keyword": null, - "type": 0, - "flags": 0, - "position": 4248 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 4266 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4267 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 4280 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4292 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_17", - "value": "p_month_Mar_day_17", - "keyword": null, - "type": 0, - "flags": 0, - "position": 4293 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 4311 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4312 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 4325 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4337 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_18", - "value": "p_month_Mar_day_18", - "keyword": null, - "type": 0, - "flags": 0, - "position": 4338 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 4356 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4357 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 4370 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4382 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_19", - "value": "p_month_Mar_day_19", - "keyword": null, - "type": 0, - "flags": 0, - "position": 4383 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 4401 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4402 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 4415 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4427 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_20", - "value": "p_month_Mar_day_20", - "keyword": null, - "type": 0, - "flags": 0, - "position": 4428 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 4446 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4447 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 4460 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4472 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_21", - "value": "p_month_Mar_day_21", - "keyword": null, - "type": 0, - "flags": 0, - "position": 4473 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 4491 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4492 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 4505 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4517 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_22", - "value": "p_month_Mar_day_22", - "keyword": null, - "type": 0, - "flags": 0, - "position": 4518 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 4536 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4537 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 4550 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4562 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_23", - "value": "p_month_Mar_day_23", - "keyword": null, - "type": 0, - "flags": 0, - "position": 4563 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 4581 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4582 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 4595 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4607 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_24", - "value": "p_month_Mar_day_24", - "keyword": null, - "type": 0, - "flags": 0, - "position": 4608 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 4626 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4627 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 4640 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4652 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_25", - "value": "p_month_Mar_day_25", - "keyword": null, - "type": 0, - "flags": 0, - "position": 4653 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 4671 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4672 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 4685 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4697 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_26", - "value": "p_month_Mar_day_26", - "keyword": null, - "type": 0, - "flags": 0, - "position": 4698 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 4716 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4717 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 4730 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4742 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_27", - "value": "p_month_Mar_day_27", - "keyword": null, - "type": 0, - "flags": 0, - "position": 4743 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 4761 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4762 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 4775 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4787 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_28", - "value": "p_month_Mar_day_28", - "keyword": null, - "type": 0, - "flags": 0, - "position": 4788 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 4806 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4807 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 4820 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4832 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_29", - "value": "p_month_Mar_day_29", - "keyword": null, - "type": 0, - "flags": 0, - "position": 4833 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 4851 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4852 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 4865 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4877 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_30", - "value": "p_month_Mar_day_30", - "keyword": null, - "type": 0, - "flags": 0, - "position": 4878 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 4896 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4897 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 4910 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4922 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mar_day_31", - "value": "p_month_Mar_day_31", - "keyword": null, - "type": 0, - "flags": 0, - "position": 4923 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4941 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 4950 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 4951 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4952 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 4961 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4970 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr", - "value": "p_month_Apr", - "keyword": null, - "type": 0, - "flags": 0, - "position": 4971 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4982 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 4987 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4993 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 5002 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5011 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5012 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 5013 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5014 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5015 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5016 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5017 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 5030 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5042 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_0", - "value": "p_month_Apr_day_0", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5043 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5060 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5061 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 5074 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5086 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_1", - "value": "p_month_Apr_day_1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5087 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 5118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_2", - "value": "p_month_Apr_day_2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 5162 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_3", - "value": "p_month_Apr_day_3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5175 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5192 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5193 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 5206 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5218 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_4", - "value": "p_month_Apr_day_4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5219 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5236 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5237 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 5250 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5262 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_5", - "value": "p_month_Apr_day_5", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5263 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5280 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5281 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 5294 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5306 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_6", - "value": "p_month_Apr_day_6", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5307 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5324 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5325 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 5338 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5350 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_7", - "value": "p_month_Apr_day_7", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5351 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5368 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5369 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 5382 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5394 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_8", - "value": "p_month_Apr_day_8", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5395 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5412 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5413 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 5426 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5438 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_9", - "value": "p_month_Apr_day_9", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5439 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5456 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5457 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 5470 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5482 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_10", - "value": "p_month_Apr_day_10", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5483 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5501 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5502 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 5515 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5527 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_11", - "value": "p_month_Apr_day_11", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5528 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5546 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5547 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 5560 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5572 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_12", - "value": "p_month_Apr_day_12", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5573 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5591 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5592 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 5605 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5617 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_13", - "value": "p_month_Apr_day_13", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5618 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5636 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5637 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 5650 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5662 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_14", - "value": "p_month_Apr_day_14", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5663 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5681 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5682 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 5695 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5707 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_15", - "value": "p_month_Apr_day_15", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5708 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5726 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5727 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 5740 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5752 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_16", - "value": "p_month_Apr_day_16", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5753 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5771 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5772 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 5785 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5797 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_17", - "value": "p_month_Apr_day_17", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5798 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5816 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5817 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 5830 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5842 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_18", - "value": "p_month_Apr_day_18", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5843 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5861 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5862 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 5875 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5887 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_19", - "value": "p_month_Apr_day_19", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5888 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5906 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5907 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 5920 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5932 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_20", - "value": "p_month_Apr_day_20", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5933 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5951 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5952 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 5965 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5977 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_21", - "value": "p_month_Apr_day_21", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5978 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5996 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5997 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 6010 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6022 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_22", - "value": "p_month_Apr_day_22", - "keyword": null, - "type": 0, - "flags": 0, - "position": 6023 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 6041 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6042 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 6055 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6067 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_23", - "value": "p_month_Apr_day_23", - "keyword": null, - "type": 0, - "flags": 0, - "position": 6068 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 6086 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6087 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 6100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_24", - "value": "p_month_Apr_day_24", - "keyword": null, - "type": 0, - "flags": 0, - "position": 6113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 6131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 6145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_25", - "value": "p_month_Apr_day_25", - "keyword": null, - "type": 0, - "flags": 0, - "position": 6158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 6176 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 6190 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6202 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_26", - "value": "p_month_Apr_day_26", - "keyword": null, - "type": 0, - "flags": 0, - "position": 6203 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 6221 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6222 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 6235 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6247 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_27", - "value": "p_month_Apr_day_27", - "keyword": null, - "type": 0, - "flags": 0, - "position": 6248 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 6266 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6267 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 6280 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6292 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_28", - "value": "p_month_Apr_day_28", - "keyword": null, - "type": 0, - "flags": 0, - "position": 6293 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 6311 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6312 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 6325 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6337 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_29", - "value": "p_month_Apr_day_29", - "keyword": null, - "type": 0, - "flags": 0, - "position": 6338 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 6356 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6357 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 6370 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6382 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_30", - "value": "p_month_Apr_day_30", - "keyword": null, - "type": 0, - "flags": 0, - "position": 6383 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 6401 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6402 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 6415 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6427 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Apr_day_31", - "value": "p_month_Apr_day_31", - "keyword": null, - "type": 0, - "flags": 0, - "position": 6428 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6446 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 6455 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 6456 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6457 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 6466 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6475 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai", - "value": "p_month_Mai", - "keyword": null, - "type": 0, - "flags": 0, - "position": 6476 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6487 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 6492 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6498 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 6507 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6516 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 6517 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "4", - "value": 4, - "keyword": null, - "type": 6, - "flags": 0, - "position": 6518 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 6519 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6520 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 6521 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6522 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 6535 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6547 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_0", - "value": "p_month_Mai_day_0", - "keyword": null, - "type": 0, - "flags": 0, - "position": 6548 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 6565 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6566 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 6579 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6591 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_1", - "value": "p_month_Mai_day_1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 6592 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 6609 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6610 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 6623 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6635 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_2", - "value": "p_month_Mai_day_2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 6636 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 6653 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6654 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 6667 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6679 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_3", - "value": "p_month_Mai_day_3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 6680 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 6697 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6698 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 6711 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6723 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_4", - "value": "p_month_Mai_day_4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 6724 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 6741 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6742 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 6755 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6767 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_5", - "value": "p_month_Mai_day_5", - "keyword": null, - "type": 0, - "flags": 0, - "position": 6768 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 6785 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6786 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 6799 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6811 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_6", - "value": "p_month_Mai_day_6", - "keyword": null, - "type": 0, - "flags": 0, - "position": 6812 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 6829 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6830 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 6843 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6855 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_7", - "value": "p_month_Mai_day_7", - "keyword": null, - "type": 0, - "flags": 0, - "position": 6856 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 6873 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6874 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 6887 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6899 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_8", - "value": "p_month_Mai_day_8", - "keyword": null, - "type": 0, - "flags": 0, - "position": 6900 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 6917 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6918 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 6931 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6943 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_9", - "value": "p_month_Mai_day_9", - "keyword": null, - "type": 0, - "flags": 0, - "position": 6944 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 6961 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6962 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 6975 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6987 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_10", - "value": "p_month_Mai_day_10", - "keyword": null, - "type": 0, - "flags": 0, - "position": 6988 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7006 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7007 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 7020 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7032 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_11", - "value": "p_month_Mai_day_11", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7033 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7051 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7052 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 7065 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7077 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_12", - "value": "p_month_Mai_day_12", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7078 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7096 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7097 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 7110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_13", - "value": "p_month_Mai_day_13", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 7155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_14", - "value": "p_month_Mai_day_14", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7168 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7186 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7187 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 7200 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7212 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_15", - "value": "p_month_Mai_day_15", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7213 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7231 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7232 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 7245 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7257 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_16", - "value": "p_month_Mai_day_16", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7258 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7276 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7277 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 7290 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7302 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_17", - "value": "p_month_Mai_day_17", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7303 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7321 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7322 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 7335 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7347 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_18", - "value": "p_month_Mai_day_18", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7348 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7366 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7367 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 7380 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7392 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_19", - "value": "p_month_Mai_day_19", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7393 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7411 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7412 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 7425 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7437 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_20", - "value": "p_month_Mai_day_20", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7438 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7456 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7457 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 7470 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7482 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_21", - "value": "p_month_Mai_day_21", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7483 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7501 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7502 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 7515 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7527 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_22", - "value": "p_month_Mai_day_22", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7528 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7546 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7547 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 7560 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7572 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_23", - "value": "p_month_Mai_day_23", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7573 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7591 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7592 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 7605 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7617 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_24", - "value": "p_month_Mai_day_24", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7618 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7636 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7637 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 7650 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7662 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_25", - "value": "p_month_Mai_day_25", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7663 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7681 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7682 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 7695 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7707 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_26", - "value": "p_month_Mai_day_26", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7708 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7726 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7727 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 7740 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7752 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_27", - "value": "p_month_Mai_day_27", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7753 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7771 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7772 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 7785 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7797 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_28", - "value": "p_month_Mai_day_28", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7798 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7816 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7817 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 7830 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7842 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_29", - "value": "p_month_Mai_day_29", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7843 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7861 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7862 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 7875 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7887 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_30", - "value": "p_month_Mai_day_30", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7888 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7906 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7907 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 7920 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7932 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Mai_day_31", - "value": "p_month_Mai_day_31", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7933 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7951 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7960 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7961 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7962 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 7971 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7980 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun", - "value": "p_month_Jun", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7981 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7992 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 7997 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8003 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 8012 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8021 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8022 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "5", - "value": 5, - "keyword": null, - "type": 6, - "flags": 0, - "position": 8023 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8024 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8025 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8026 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8027 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 8040 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8052 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_0", - "value": "p_month_Jun_day_0", - "keyword": null, - "type": 0, - "flags": 0, - "position": 8053 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8070 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8071 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 8084 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8096 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_1", - "value": "p_month_Jun_day_1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 8097 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 8128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_2", - "value": "p_month_Jun_day_2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 8141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8159 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 8172 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8184 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_3", - "value": "p_month_Jun_day_3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 8185 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8202 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8203 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 8216 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8228 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_4", - "value": "p_month_Jun_day_4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 8229 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8246 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8247 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 8260 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8272 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_5", - "value": "p_month_Jun_day_5", - "keyword": null, - "type": 0, - "flags": 0, - "position": 8273 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8290 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8291 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 8304 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8316 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_6", - "value": "p_month_Jun_day_6", - "keyword": null, - "type": 0, - "flags": 0, - "position": 8317 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8334 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8335 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 8348 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8360 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_7", - "value": "p_month_Jun_day_7", - "keyword": null, - "type": 0, - "flags": 0, - "position": 8361 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8378 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8379 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 8392 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8404 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_8", - "value": "p_month_Jun_day_8", - "keyword": null, - "type": 0, - "flags": 0, - "position": 8405 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8422 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8423 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 8436 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8448 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_9", - "value": "p_month_Jun_day_9", - "keyword": null, - "type": 0, - "flags": 0, - "position": 8449 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8466 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8467 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 8480 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8492 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_10", - "value": "p_month_Jun_day_10", - "keyword": null, - "type": 0, - "flags": 0, - "position": 8493 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8511 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8512 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 8525 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8537 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_11", - "value": "p_month_Jun_day_11", - "keyword": null, - "type": 0, - "flags": 0, - "position": 8538 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8556 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8557 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 8570 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8582 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_12", - "value": "p_month_Jun_day_12", - "keyword": null, - "type": 0, - "flags": 0, - "position": 8583 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8601 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8602 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 8615 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8627 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_13", - "value": "p_month_Jun_day_13", - "keyword": null, - "type": 0, - "flags": 0, - "position": 8628 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8646 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8647 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 8660 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8672 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_14", - "value": "p_month_Jun_day_14", - "keyword": null, - "type": 0, - "flags": 0, - "position": 8673 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8691 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8692 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 8705 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8717 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_15", - "value": "p_month_Jun_day_15", - "keyword": null, - "type": 0, - "flags": 0, - "position": 8718 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8736 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8737 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 8750 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8762 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_16", - "value": "p_month_Jun_day_16", - "keyword": null, - "type": 0, - "flags": 0, - "position": 8763 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8781 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8782 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 8795 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8807 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_17", - "value": "p_month_Jun_day_17", - "keyword": null, - "type": 0, - "flags": 0, - "position": 8808 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8826 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8827 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 8840 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8852 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_18", - "value": "p_month_Jun_day_18", - "keyword": null, - "type": 0, - "flags": 0, - "position": 8853 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8871 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8872 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 8885 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8897 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_19", - "value": "p_month_Jun_day_19", - "keyword": null, - "type": 0, - "flags": 0, - "position": 8898 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8916 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8917 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 8930 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8942 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_20", - "value": "p_month_Jun_day_20", - "keyword": null, - "type": 0, - "flags": 0, - "position": 8943 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8961 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8962 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 8975 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8987 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_21", - "value": "p_month_Jun_day_21", - "keyword": null, - "type": 0, - "flags": 0, - "position": 8988 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9006 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9007 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 9020 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9032 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_22", - "value": "p_month_Jun_day_22", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9033 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9051 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9052 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 9065 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9077 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_23", - "value": "p_month_Jun_day_23", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9078 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9096 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9097 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 9110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_24", - "value": "p_month_Jun_day_24", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 9155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_25", - "value": "p_month_Jun_day_25", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9168 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9186 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9187 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 9200 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9212 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_26", - "value": "p_month_Jun_day_26", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9213 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9231 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9232 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 9245 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9257 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_27", - "value": "p_month_Jun_day_27", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9258 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9276 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9277 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 9290 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9302 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_28", - "value": "p_month_Jun_day_28", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9303 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9321 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9322 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 9335 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9347 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_29", - "value": "p_month_Jun_day_29", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9348 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9366 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9367 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 9380 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9392 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_30", - "value": "p_month_Jun_day_30", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9393 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9411 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9412 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 9425 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9437 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jun_day_31", - "value": "p_month_Jun_day_31", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9438 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9456 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9465 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9466 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9467 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 9476 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9485 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul", - "value": "p_month_Jul", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9486 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9497 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 9502 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9508 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 9517 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9526 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9527 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "6", - "value": 6, - "keyword": null, - "type": 6, - "flags": 0, - "position": 9528 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9529 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9530 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9531 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9532 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 9545 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9557 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_0", - "value": "p_month_Jul_day_0", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9558 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9575 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9576 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 9589 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9601 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_1", - "value": "p_month_Jul_day_1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9602 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9619 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9620 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 9633 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9645 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_2", - "value": "p_month_Jul_day_2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9646 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9663 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9664 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 9677 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9689 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_3", - "value": "p_month_Jul_day_3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9690 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9707 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9708 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 9721 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9733 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_4", - "value": "p_month_Jul_day_4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9734 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9751 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9752 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 9765 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9777 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_5", - "value": "p_month_Jul_day_5", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9778 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9795 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9796 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 9809 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9821 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_6", - "value": "p_month_Jul_day_6", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9822 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9839 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9840 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 9853 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9865 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_7", - "value": "p_month_Jul_day_7", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9866 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9883 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9884 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 9897 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9909 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_8", - "value": "p_month_Jul_day_8", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9910 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9927 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9928 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 9941 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9953 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_9", - "value": "p_month_Jul_day_9", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9954 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9971 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9972 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 9985 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9997 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_10", - "value": "p_month_Jul_day_10", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9998 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10016 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10017 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 10030 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10042 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_11", - "value": "p_month_Jul_day_11", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10043 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10061 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10062 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 10075 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10087 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_12", - "value": "p_month_Jul_day_12", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10088 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 10120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_13", - "value": "p_month_Jul_day_13", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 10165 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_14", - "value": "p_month_Jul_day_14", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10178 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10196 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10197 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 10210 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10222 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_15", - "value": "p_month_Jul_day_15", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10223 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10241 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10242 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 10255 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10267 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_16", - "value": "p_month_Jul_day_16", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10268 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10286 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10287 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 10300 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10312 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_17", - "value": "p_month_Jul_day_17", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10313 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10331 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10332 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 10345 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10357 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_18", - "value": "p_month_Jul_day_18", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10358 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10376 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10377 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 10390 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10402 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_19", - "value": "p_month_Jul_day_19", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10403 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10421 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10422 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 10435 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10447 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_20", - "value": "p_month_Jul_day_20", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10448 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10466 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10467 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 10480 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10492 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_21", - "value": "p_month_Jul_day_21", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10493 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10511 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10512 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 10525 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10537 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_22", - "value": "p_month_Jul_day_22", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10538 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10556 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10557 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 10570 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10582 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_23", - "value": "p_month_Jul_day_23", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10583 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10601 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10602 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 10615 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10627 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_24", - "value": "p_month_Jul_day_24", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10628 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10646 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10647 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 10660 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10672 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_25", - "value": "p_month_Jul_day_25", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10673 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10691 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10692 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 10705 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10717 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_26", - "value": "p_month_Jul_day_26", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10718 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10736 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10737 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 10750 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10762 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_27", - "value": "p_month_Jul_day_27", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10763 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10781 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10782 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 10795 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10807 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_28", - "value": "p_month_Jul_day_28", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10808 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10826 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10827 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 10840 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10852 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_29", - "value": "p_month_Jul_day_29", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10853 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10871 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10872 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 10885 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10897 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_30", - "value": "p_month_Jul_day_30", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10898 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10916 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10917 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 10930 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10942 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Jul_day_31", - "value": "p_month_Jul_day_31", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10943 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10961 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10970 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10971 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10972 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 10981 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10990 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug", - "value": "p_month_Aug", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10991 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11002 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 11007 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11013 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 11022 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11031 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11032 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "7", - "value": 7, - "keyword": null, - "type": 6, - "flags": 0, - "position": 11033 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11034 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11035 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11036 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11037 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 11050 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11062 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_0", - "value": "p_month_Aug_day_0", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11063 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11080 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11081 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 11094 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_1", - "value": "p_month_Aug_day_1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 11138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11150 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_2", - "value": "p_month_Aug_day_2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11168 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11169 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 11182 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11194 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_3", - "value": "p_month_Aug_day_3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11195 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11212 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11213 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 11226 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11238 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_4", - "value": "p_month_Aug_day_4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11239 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11256 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11257 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 11270 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11282 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_5", - "value": "p_month_Aug_day_5", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11283 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11300 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11301 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 11314 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11326 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_6", - "value": "p_month_Aug_day_6", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11327 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11344 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11345 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 11358 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11370 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_7", - "value": "p_month_Aug_day_7", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11371 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11388 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11389 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 11402 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11414 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_8", - "value": "p_month_Aug_day_8", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11415 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11432 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11433 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 11446 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11458 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_9", - "value": "p_month_Aug_day_9", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11459 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11476 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11477 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 11490 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11502 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_10", - "value": "p_month_Aug_day_10", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11503 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11521 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11522 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 11535 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11547 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_11", - "value": "p_month_Aug_day_11", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11548 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11566 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11567 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 11580 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11592 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_12", - "value": "p_month_Aug_day_12", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11593 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11611 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11612 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 11625 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11637 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_13", - "value": "p_month_Aug_day_13", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11638 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11656 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11657 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 11670 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11682 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_14", - "value": "p_month_Aug_day_14", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11683 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11701 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11702 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 11715 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11727 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_15", - "value": "p_month_Aug_day_15", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11728 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11746 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11747 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 11760 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11772 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_16", - "value": "p_month_Aug_day_16", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11773 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11791 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11792 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 11805 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11817 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_17", - "value": "p_month_Aug_day_17", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11818 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11836 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11837 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 11850 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11862 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_18", - "value": "p_month_Aug_day_18", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11863 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11881 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11882 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 11895 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11907 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_19", - "value": "p_month_Aug_day_19", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11908 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11926 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11927 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 11940 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11952 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_20", - "value": "p_month_Aug_day_20", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11953 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11971 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11972 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 11985 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11997 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_21", - "value": "p_month_Aug_day_21", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11998 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12016 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12017 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 12030 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12042 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_22", - "value": "p_month_Aug_day_22", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12043 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12061 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12062 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 12075 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12087 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_23", - "value": "p_month_Aug_day_23", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12088 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 12120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_24", - "value": "p_month_Aug_day_24", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 12165 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_25", - "value": "p_month_Aug_day_25", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12178 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12196 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12197 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 12210 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12222 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_26", - "value": "p_month_Aug_day_26", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12223 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12241 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12242 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 12255 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12267 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_27", - "value": "p_month_Aug_day_27", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12268 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12286 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12287 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 12300 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12312 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_28", - "value": "p_month_Aug_day_28", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12313 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12331 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12332 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 12345 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12357 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_29", - "value": "p_month_Aug_day_29", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12358 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12376 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12377 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 12390 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12402 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_30", - "value": "p_month_Aug_day_30", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12403 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12421 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12422 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 12435 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12447 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Aug_day_31", - "value": "p_month_Aug_day_31", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12448 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12466 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12475 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12476 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12477 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 12486 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12495 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep", - "value": "p_month_Sep", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12496 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12507 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 12512 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12518 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 12527 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12536 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12537 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "8", - "value": 8, - "keyword": null, - "type": 6, - "flags": 0, - "position": 12538 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12539 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12540 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12541 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12542 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 12555 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12567 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_0", - "value": "p_month_Sep_day_0", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12568 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12585 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12586 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 12599 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12611 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_1", - "value": "p_month_Sep_day_1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12612 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12629 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12630 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 12643 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12655 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_2", - "value": "p_month_Sep_day_2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12656 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12673 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12674 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 12687 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12699 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_3", - "value": "p_month_Sep_day_3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12700 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12717 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12718 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 12731 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12743 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_4", - "value": "p_month_Sep_day_4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12744 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12761 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12762 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 12775 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12787 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_5", - "value": "p_month_Sep_day_5", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12788 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12805 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12806 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 12819 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12831 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_6", - "value": "p_month_Sep_day_6", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12832 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12849 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12850 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 12863 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12875 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_7", - "value": "p_month_Sep_day_7", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12876 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12893 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12894 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 12907 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12919 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_8", - "value": "p_month_Sep_day_8", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12920 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12937 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12938 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 12951 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12963 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_9", - "value": "p_month_Sep_day_9", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12964 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12981 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12982 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 12995 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13007 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_10", - "value": "p_month_Sep_day_10", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13008 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13026 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13027 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 13040 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13052 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_11", - "value": "p_month_Sep_day_11", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13053 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13071 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13072 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 13085 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13097 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_12", - "value": "p_month_Sep_day_12", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13098 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 13130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_13", - "value": "p_month_Sep_day_13", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13162 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 13175 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13187 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_14", - "value": "p_month_Sep_day_14", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13188 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13206 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13207 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 13220 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13232 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_15", - "value": "p_month_Sep_day_15", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13233 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13251 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13252 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 13265 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13277 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_16", - "value": "p_month_Sep_day_16", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13278 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13296 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13297 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 13310 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13322 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_17", - "value": "p_month_Sep_day_17", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13323 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13341 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13342 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 13355 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13367 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_18", - "value": "p_month_Sep_day_18", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13368 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13386 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13387 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 13400 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13412 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_19", - "value": "p_month_Sep_day_19", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13413 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13431 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13432 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 13445 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13457 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_20", - "value": "p_month_Sep_day_20", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13458 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13476 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13477 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 13490 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13502 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_21", - "value": "p_month_Sep_day_21", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13503 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13521 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13522 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 13535 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13547 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_22", - "value": "p_month_Sep_day_22", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13548 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13566 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13567 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 13580 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13592 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_23", - "value": "p_month_Sep_day_23", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13593 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13611 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13612 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 13625 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13637 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_24", - "value": "p_month_Sep_day_24", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13638 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13656 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13657 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 13670 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13682 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_25", - "value": "p_month_Sep_day_25", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13683 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13701 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13702 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 13715 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13727 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_26", - "value": "p_month_Sep_day_26", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13728 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13746 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13747 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 13760 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13772 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_27", - "value": "p_month_Sep_day_27", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13773 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13791 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13792 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 13805 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13817 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_28", - "value": "p_month_Sep_day_28", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13818 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13836 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13837 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 13850 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13862 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_29", - "value": "p_month_Sep_day_29", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13863 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13881 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13882 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 13895 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13907 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_30", - "value": "p_month_Sep_day_30", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13908 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13926 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13927 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 13940 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13952 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Sep_day_31", - "value": "p_month_Sep_day_31", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13953 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13971 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13980 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13981 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13982 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 13991 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14000 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct", - "value": "p_month_Oct", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14001 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14012 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 14017 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14023 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 14032 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14041 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14042 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "9", - "value": 9, - "keyword": null, - "type": 6, - "flags": 0, - "position": 14043 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14044 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14045 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14046 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14047 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 14060 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14072 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_0", - "value": "p_month_Oct_day_0", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14073 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14090 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14091 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 14104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_1", - "value": "p_month_Oct_day_1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14134 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 14148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14160 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_2", - "value": "p_month_Oct_day_2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14178 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14179 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 14192 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14204 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_3", - "value": "p_month_Oct_day_3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14205 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14222 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14223 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 14236 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14248 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_4", - "value": "p_month_Oct_day_4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14249 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14266 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14267 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 14280 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14292 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_5", - "value": "p_month_Oct_day_5", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14293 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14310 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14311 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 14324 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14336 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_6", - "value": "p_month_Oct_day_6", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14337 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14354 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14355 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 14368 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14380 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_7", - "value": "p_month_Oct_day_7", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14381 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14398 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14399 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 14412 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14424 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_8", - "value": "p_month_Oct_day_8", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14425 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14442 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14443 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 14456 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14468 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_9", - "value": "p_month_Oct_day_9", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14469 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14486 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14487 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 14500 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14512 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_10", - "value": "p_month_Oct_day_10", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14513 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14531 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14532 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 14545 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14557 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_11", - "value": "p_month_Oct_day_11", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14558 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14576 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14577 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 14590 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14602 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_12", - "value": "p_month_Oct_day_12", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14603 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14621 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14622 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 14635 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14647 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_13", - "value": "p_month_Oct_day_13", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14648 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14666 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14667 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 14680 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14692 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_14", - "value": "p_month_Oct_day_14", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14693 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14711 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14712 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 14725 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14737 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_15", - "value": "p_month_Oct_day_15", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14738 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14756 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14757 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 14770 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14782 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_16", - "value": "p_month_Oct_day_16", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14783 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14801 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14802 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 14815 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14827 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_17", - "value": "p_month_Oct_day_17", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14828 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14846 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14847 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 14860 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14872 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_18", - "value": "p_month_Oct_day_18", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14873 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14891 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14892 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 14905 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14917 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_19", - "value": "p_month_Oct_day_19", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14918 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14936 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14937 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 14950 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14962 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_20", - "value": "p_month_Oct_day_20", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14963 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14981 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14982 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 14995 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15007 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_21", - "value": "p_month_Oct_day_21", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15008 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15026 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15027 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 15040 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15052 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_22", - "value": "p_month_Oct_day_22", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15053 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15071 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15072 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 15085 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15097 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_23", - "value": "p_month_Oct_day_23", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15098 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 15130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_24", - "value": "p_month_Oct_day_24", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15162 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 15175 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15187 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_25", - "value": "p_month_Oct_day_25", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15188 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15206 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15207 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 15220 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15232 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_26", - "value": "p_month_Oct_day_26", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15233 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15251 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15252 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 15265 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15277 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_27", - "value": "p_month_Oct_day_27", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15278 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15296 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15297 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 15310 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15322 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_28", - "value": "p_month_Oct_day_28", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15323 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15341 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15342 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 15355 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15367 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_29", - "value": "p_month_Oct_day_29", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15368 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15386 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15387 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 15400 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15412 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_30", - "value": "p_month_Oct_day_30", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15413 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15431 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15432 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 15445 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15457 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Oct_day_31", - "value": "p_month_Oct_day_31", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15458 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15476 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15485 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15486 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15487 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 15496 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15505 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov", - "value": "p_month_Nov", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15506 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15517 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 15522 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15528 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 15537 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15546 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15547 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 15548 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15550 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15551 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15552 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15553 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 15566 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15578 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_0", - "value": "p_month_Nov_day_0", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15579 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15596 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15597 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 15610 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15622 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_1", - "value": "p_month_Nov_day_1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15623 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15640 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15641 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 15654 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15666 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_2", - "value": "p_month_Nov_day_2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15667 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15684 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15685 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 15698 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15710 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_3", - "value": "p_month_Nov_day_3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15711 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15728 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15729 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 15742 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15754 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_4", - "value": "p_month_Nov_day_4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15755 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15772 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15773 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 15786 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15798 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_5", - "value": "p_month_Nov_day_5", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15799 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15816 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15817 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 15830 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15842 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_6", - "value": "p_month_Nov_day_6", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15843 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15860 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15861 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 15874 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15886 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_7", - "value": "p_month_Nov_day_7", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15887 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15904 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15905 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 15918 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15930 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_8", - "value": "p_month_Nov_day_8", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15931 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15948 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15949 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 15962 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15974 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_9", - "value": "p_month_Nov_day_9", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15975 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15992 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15993 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 16006 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16018 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_10", - "value": "p_month_Nov_day_10", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16019 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16037 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16038 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 16051 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16063 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_11", - "value": "p_month_Nov_day_11", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16064 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16082 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16083 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 16096 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_12", - "value": "p_month_Nov_day_12", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 16141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16153 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_13", - "value": "p_month_Nov_day_13", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16154 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16172 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16173 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 16186 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16198 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_14", - "value": "p_month_Nov_day_14", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16199 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16217 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16218 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 16231 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16243 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_15", - "value": "p_month_Nov_day_15", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16244 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16262 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16263 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 16276 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16288 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_16", - "value": "p_month_Nov_day_16", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16289 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16307 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16308 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 16321 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16333 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_17", - "value": "p_month_Nov_day_17", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16334 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16352 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16353 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 16366 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16378 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_18", - "value": "p_month_Nov_day_18", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16379 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16397 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16398 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 16411 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16423 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_19", - "value": "p_month_Nov_day_19", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16424 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16442 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16443 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 16456 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16468 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_20", - "value": "p_month_Nov_day_20", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16469 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16487 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16488 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 16501 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16513 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_21", - "value": "p_month_Nov_day_21", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16514 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16532 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16533 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 16546 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16558 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_22", - "value": "p_month_Nov_day_22", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16559 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16577 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16578 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 16591 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16603 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_23", - "value": "p_month_Nov_day_23", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16604 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16622 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16623 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 16636 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16648 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_24", - "value": "p_month_Nov_day_24", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16649 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16667 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16668 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 16681 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16693 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_25", - "value": "p_month_Nov_day_25", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16694 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16712 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16713 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 16726 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16738 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_26", - "value": "p_month_Nov_day_26", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16739 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16757 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16758 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 16771 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16783 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_27", - "value": "p_month_Nov_day_27", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16784 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16802 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16803 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 16816 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16828 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_28", - "value": "p_month_Nov_day_28", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16829 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16847 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16848 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 16861 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16873 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_29", - "value": "p_month_Nov_day_29", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16874 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16892 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16893 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 16906 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16918 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_30", - "value": "p_month_Nov_day_30", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16919 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16937 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16938 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 16951 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16963 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Nov_day_31", - "value": "p_month_Nov_day_31", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16964 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16982 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16991 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16992 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16993 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 17002 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17011 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec", - "value": "p_month_Dec", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17012 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17023 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 17028 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17034 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 17043 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17052 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17053 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "11", - "value": 11, - "keyword": null, - "type": 6, - "flags": 0, - "position": 17054 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17056 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17057 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17058 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17059 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 17072 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17084 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_0", - "value": "p_month_Dec_day_0", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17085 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 17116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_1", - "value": "p_month_Dec_day_1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17147 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 17160 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17172 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_2", - "value": "p_month_Dec_day_2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17173 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17190 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17191 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 17204 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17216 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_3", - "value": "p_month_Dec_day_3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17217 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17234 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17235 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 17248 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17260 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_4", - "value": "p_month_Dec_day_4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17261 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17278 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17279 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 17292 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17304 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_5", - "value": "p_month_Dec_day_5", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17305 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17322 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17323 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 17336 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17348 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_6", - "value": "p_month_Dec_day_6", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17349 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17366 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17367 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 17380 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17392 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_7", - "value": "p_month_Dec_day_7", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17393 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17410 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17411 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 17424 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17436 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_8", - "value": "p_month_Dec_day_8", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17437 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17454 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17455 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 17468 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17480 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_9", - "value": "p_month_Dec_day_9", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17481 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17498 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17499 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 17512 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17524 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_10", - "value": "p_month_Dec_day_10", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17525 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17543 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17544 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 17557 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17569 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_11", - "value": "p_month_Dec_day_11", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17570 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17588 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17589 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 17602 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17614 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_12", - "value": "p_month_Dec_day_12", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17615 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17633 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17634 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 17647 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17659 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_13", - "value": "p_month_Dec_day_13", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17660 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17678 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17679 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 17692 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17704 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_14", - "value": "p_month_Dec_day_14", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17705 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17723 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17724 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 17737 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17749 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_15", - "value": "p_month_Dec_day_15", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17750 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17768 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17769 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 17782 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17794 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_16", - "value": "p_month_Dec_day_16", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17795 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17813 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17814 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 17827 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17839 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_17", - "value": "p_month_Dec_day_17", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17840 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17858 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17859 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 17872 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17884 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_18", - "value": "p_month_Dec_day_18", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17885 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17903 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17904 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 17917 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17929 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_19", - "value": "p_month_Dec_day_19", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17930 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17948 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17949 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 17962 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17974 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_20", - "value": "p_month_Dec_day_20", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17975 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17993 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17994 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 18007 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18019 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_21", - "value": "p_month_Dec_day_21", - "keyword": null, - "type": 0, - "flags": 0, - "position": 18020 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 18038 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18039 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 18052 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18064 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_22", - "value": "p_month_Dec_day_22", - "keyword": null, - "type": 0, - "flags": 0, - "position": 18065 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 18083 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18084 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 18097 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_23", - "value": "p_month_Dec_day_23", - "keyword": null, - "type": 0, - "flags": 0, - "position": 18110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 18128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 18142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18154 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_24", - "value": "p_month_Dec_day_24", - "keyword": null, - "type": 0, - "flags": 0, - "position": 18155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 18173 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 18187 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18199 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_25", - "value": "p_month_Dec_day_25", - "keyword": null, - "type": 0, - "flags": 0, - "position": 18200 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 18218 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18219 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 18232 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18244 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_26", - "value": "p_month_Dec_day_26", - "keyword": null, - "type": 0, - "flags": 0, - "position": 18245 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 18263 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18264 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 18277 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18289 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_27", - "value": "p_month_Dec_day_27", - "keyword": null, - "type": 0, - "flags": 0, - "position": 18290 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 18308 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18309 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 18322 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18334 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_28", - "value": "p_month_Dec_day_28", - "keyword": null, - "type": 0, - "flags": 0, - "position": 18335 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 18353 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18354 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 18367 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18379 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_29", - "value": "p_month_Dec_day_29", - "keyword": null, - "type": 0, - "flags": 0, - "position": 18380 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 18398 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18399 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 18412 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18424 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_30", - "value": "p_month_Dec_day_30", - "keyword": null, - "type": 0, - "flags": 0, - "position": 18425 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 18443 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18444 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 18457 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18469 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p_month_Dec_day_31", - "value": "p_month_Dec_day_31", - "keyword": null, - "type": 0, - "flags": 0, - "position": 18470 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18488 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 18497 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18498 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 18499 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 2224, - "idx": 2224 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "trips", - "column": null, - "expr": "`trips`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ENGINE", - "equals": true, - "expr": "InnoDB", - "value": "InnoDB" - }, - "4": { - "name": "DEFAULT CHARSET", - "equals": true, - "expr": "utf8mb4", - "value": "utf8mb4" - }, - "6": { - "name": "COLLATE", - "equals": true, - "expr": "utf8mb4_unicode_ci", - "value": "utf8mb4_unicode_ci" - }, - "7": { - "name": "COMMENT", - "equals": true, - "expr": "'The trips'", - "value": "The trips" - } - } - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "id", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "BIGINT", - "parameters": [ - "20" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": "UNSIGNED" - } - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "5": { - "name": "COMMENT", - "equals": false, - "expr": "'Unique trip Id'", - "value": "Unique trip Id" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "trip_category", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [ - "11" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": "UNSIGNED" - } - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "5": { - "name": "COMMENT", - "equals": false, - "expr": "'Trip category'", - "value": "Trip category" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "trip_month", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [ - "11" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": "UNSIGNED" - } - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "5": { - "name": "COMMENT", - "equals": false, - "expr": "'Trip month'", - "value": "Trip month" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "trip_date", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "DATE", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "5": { - "name": "COMMENT", - "equals": false, - "expr": "'The trip date'", - "value": "The trip date" - } - } - } - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": "RANGE(trip_month)", - "partitionsNum": null, - "subpartitionBy": "HASH(DAY(trip_date))", - "subpartitionsNum": null, - "partitions": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p_month_Jan", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(0)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_0", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_1", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_2", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_3", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_4", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_5", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_6", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_7", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_8", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_9", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_10", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_11", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_12", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_13", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_14", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_15", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_16", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_17", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_18", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_19", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_20", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_21", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_22", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_23", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_24", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_25", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_26", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_27", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_28", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_29", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_30", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jan_day_31", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p_month_Feb", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(1)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_0", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_1", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_2", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_3", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_4", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_5", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_6", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_7", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_8", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_9", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_10", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_11", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_12", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_13", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_14", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_15", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_16", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_17", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_18", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_19", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_20", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_21", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_22", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_23", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_24", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_25", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_26", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_27", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_28", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_29", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_30", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Feb_day_31", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p_month_Mar", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(2)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_0", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_1", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_2", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_3", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_4", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_5", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_6", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_7", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_8", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_9", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_10", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_11", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_12", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_13", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_14", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_15", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_16", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_17", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_18", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_19", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_20", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_21", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_22", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_23", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_24", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_25", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_26", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_27", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_28", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_29", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_30", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mar_day_31", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p_month_Apr", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(3)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_0", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_1", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_2", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_3", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_4", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_5", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_6", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_7", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_8", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_9", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_10", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_11", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_12", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_13", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_14", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_15", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_16", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_17", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_18", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_19", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_20", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_21", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_22", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_23", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_24", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_25", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_26", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_27", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_28", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_29", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_30", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Apr_day_31", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p_month_Mai", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(4)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_0", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_1", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_2", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_3", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_4", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_5", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_6", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_7", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_8", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_9", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_10", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_11", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_12", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_13", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_14", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_15", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_16", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_17", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_18", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_19", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_20", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_21", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_22", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_23", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_24", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_25", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_26", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_27", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_28", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_29", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_30", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Mai_day_31", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p_month_Jun", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(5)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_0", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_1", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_2", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_3", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_4", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_5", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_6", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_7", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_8", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_9", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_10", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_11", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_12", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_13", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_14", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_15", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_16", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_17", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_18", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_19", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_20", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_21", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_22", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_23", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_24", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_25", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_26", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_27", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_28", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_29", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_30", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jun_day_31", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p_month_Jul", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(6)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_0", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_1", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_2", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_3", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_4", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_5", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_6", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_7", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_8", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_9", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_10", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_11", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_12", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_13", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_14", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_15", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_16", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_17", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_18", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_19", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_20", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_21", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_22", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_23", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_24", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_25", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_26", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_27", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_28", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_29", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_30", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Jul_day_31", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p_month_Aug", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(7)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_0", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_1", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_2", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_3", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_4", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_5", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_6", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_7", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_8", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_9", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_10", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_11", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_12", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_13", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_14", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_15", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_16", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_17", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_18", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_19", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_20", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_21", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_22", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_23", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_24", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_25", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_26", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_27", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_28", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_29", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_30", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Aug_day_31", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p_month_Sep", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(8)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_0", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_1", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_2", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_3", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_4", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_5", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_6", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_7", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_8", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_9", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_10", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_11", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_12", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_13", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_14", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_15", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_16", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_17", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_18", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_19", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_20", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_21", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_22", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_23", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_24", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_25", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_26", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_27", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_28", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_29", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_30", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Sep_day_31", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p_month_Oct", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(9)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_0", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_1", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_2", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_3", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_4", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_5", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_6", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_7", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_8", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_9", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_10", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_11", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_12", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_13", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_14", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_15", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_16", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_17", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_18", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_19", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_20", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_21", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_22", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_23", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_24", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_25", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_26", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_27", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_28", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_29", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_30", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Oct_day_31", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p_month_Nov", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(10)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_0", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_1", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_2", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_3", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_4", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_5", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_6", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_7", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_8", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_9", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_10", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_11", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_12", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_13", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_14", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_15", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_16", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_17", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_18", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_19", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_20", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_21", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_22", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_23", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_24", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_25", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_26", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_27", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_28", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_29", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_30", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Nov_day_31", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p_month_Dec", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(11)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_0", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_1", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_2", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_3", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_4", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_5", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_6", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_7", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_8", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_9", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_10", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_11", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_12", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_13", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_14", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_15", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_16", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_17", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_18", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_19", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_20", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_21", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_22", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_23", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_24", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_25", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_26", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_27", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_28", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_29", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_30", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "p_month_Dec_day_31", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 2222 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable12.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable12.in deleted file mode 100644 index a03b4b61..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable12.in +++ /dev/null @@ -1,3 +0,0 @@ -CREATE OR REPLACE TABLE t1 (v1 INT) - PARTITION BY KEY (v1) - PARTITIONS 2; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable12.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable12.out deleted file mode 100644 index 43ce41ab..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable12.out +++ /dev/null @@ -1,338 +0,0 @@ -{ - "query": "CREATE OR REPLACE TABLE t1 (v1 INT)\n PARTITION BY KEY (v1)\n PARTITIONS 2;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE OR REPLACE TABLE t1 (v1 INT)\n PARTITION BY KEY (v1)\n PARTITIONS 2;", - "len": 75, - "last": 75, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OR REPLACE", - "value": "OR REPLACE", - "keyword": "OR REPLACE", - "type": 1, - "flags": 7, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "v1", - "value": "v1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION BY", - "value": "PARTITION BY", - "keyword": "PARTITION BY", - "type": 1, - "flags": 7, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KEY", - "value": "KEY", - "keyword": "KEY", - "type": 1, - "flags": 19, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "v1", - "value": "v1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITIONS", - "value": "PARTITIONS", - "keyword": "PARTITIONS", - "type": 1, - "flags": 1, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 27, - "idx": 27 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "t1", - "column": null, - "expr": "t1", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "v1", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": "KEY (v1)", - "partitionsNum": 2, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "OR REPLACE", - "6": "TABLE" - } - }, - "first": 0, - "last": 25 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable13.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable13.in deleted file mode 100644 index 21a2c796..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable13.in +++ /dev/null @@ -1,6 +0,0 @@ -CREATE TABLE autos ( - auto_id INT UNSIGNED NOT NULL AUTO_INCREMENT KEY, - make VARCHAR(128), - year INTEGER, - mileage INTEGER -); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable13.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable13.out deleted file mode 100644 index ea949de3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable13.out +++ /dev/null @@ -1,531 +0,0 @@ -{ - "query": "CREATE TABLE autos (\n auto_id INT UNSIGNED NOT NULL AUTO_INCREMENT KEY,\n make VARCHAR(128),\n year INTEGER,\n mileage INTEGER\n);", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE autos (\n auto_id INT UNSIGNED NOT NULL AUTO_INCREMENT KEY,\n make VARCHAR(128),\n year INTEGER,\n mileage INTEGER\n);", - "len": 138, - "last": 138, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "autos", - "value": "autos", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "auto_id", - "value": "auto_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AUTO_INCREMENT", - "value": "AUTO_INCREMENT", - "keyword": "AUTO_INCREMENT", - "type": 1, - "flags": 1, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KEY", - "value": "KEY", - "keyword": "KEY", - "type": 1, - "flags": 19, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "make", - "value": "make", - "keyword": null, - "type": 0, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VARCHAR", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "128", - "value": 128, - "keyword": null, - "type": 6, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "year", - "value": "year", - "keyword": "YEAR", - "type": 1, - "flags": 41, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTEGER", - "value": "INTEGER", - "keyword": "INTEGER", - "type": 1, - "flags": 11, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mileage", - "value": "mileage", - "keyword": null, - "type": 0, - "flags": 0, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTEGER", - "value": "INTEGER", - "keyword": "INTEGER", - "type": 1, - "flags": 11, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 137 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 41, - "idx": 41 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "autos", - "column": null, - "expr": "autos", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "auto_id", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": "UNSIGNED" - } - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "3": "AUTO_INCREMENT", - "4": "KEY" - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "make", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [ - "128" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "year", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INTEGER", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "mileage", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INTEGER", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 39 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable14.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable14.in deleted file mode 100644 index b1f81bd8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable14.in +++ /dev/null @@ -1,6 +0,0 @@ -CREATE TABLE autos ( - auto_id INT UNSIGNED NOT NULL KEY, - make VARCHAR(128), - year INTEGER, - mileage INTEGER -); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable14.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable14.out deleted file mode 100644 index 0a96bf97..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable14.out +++ /dev/null @@ -1,512 +0,0 @@ -{ - "query": "CREATE TABLE autos (\n auto_id INT UNSIGNED NOT NULL KEY,\n make VARCHAR(128),\n year INTEGER,\n mileage INTEGER\n);", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE autos (\n auto_id INT UNSIGNED NOT NULL KEY,\n make VARCHAR(128),\n year INTEGER,\n mileage INTEGER\n);", - "len": 123, - "last": 123, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "autos", - "value": "autos", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "auto_id", - "value": "auto_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KEY", - "value": "KEY", - "keyword": "KEY", - "type": 1, - "flags": 19, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "make", - "value": "make", - "keyword": null, - "type": 0, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VARCHAR", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "128", - "value": 128, - "keyword": null, - "type": 6, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "year", - "value": "year", - "keyword": "YEAR", - "type": 1, - "flags": 41, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTEGER", - "value": "INTEGER", - "keyword": "INTEGER", - "type": 1, - "flags": 11, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mileage", - "value": "mileage", - "keyword": null, - "type": 0, - "flags": 0, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTEGER", - "value": "INTEGER", - "keyword": "INTEGER", - "type": 1, - "flags": 11, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 39, - "idx": 39 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "autos", - "column": null, - "expr": "autos", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "auto_id", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": "UNSIGNED" - } - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "4": "KEY" - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "make", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [ - "128" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "year", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INTEGER", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "mileage", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INTEGER", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 37 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable15.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable15.in deleted file mode 100644 index 310716d3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable15.in +++ /dev/null @@ -1,6 +0,0 @@ -CREATE TABLE autos ( - auto_id INT UNSIGNED ZEROFILL NOT NULL KEY, - make VARCHAR(128), - year INTEGER, - mileage INTEGER -); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable15.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable15.out deleted file mode 100644 index 8d60f165..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable15.out +++ /dev/null @@ -1,531 +0,0 @@ -{ - "query": "CREATE TABLE autos (\n auto_id INT UNSIGNED ZEROFILL NOT NULL KEY,\n make VARCHAR(128),\n year INTEGER,\n mileage INTEGER\n);", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE autos (\n auto_id INT UNSIGNED ZEROFILL NOT NULL KEY,\n make VARCHAR(128),\n year INTEGER,\n mileage INTEGER\n);", - "len": 132, - "last": 132, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "autos", - "value": "autos", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "auto_id", - "value": "auto_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ZEROFILL", - "value": "ZEROFILL", - "keyword": "ZEROFILL", - "type": 1, - "flags": 3, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KEY", - "value": "KEY", - "keyword": "KEY", - "type": 1, - "flags": 19, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "make", - "value": "make", - "keyword": null, - "type": 0, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VARCHAR", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "128", - "value": 128, - "keyword": null, - "type": 6, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "year", - "value": "year", - "keyword": "YEAR", - "type": 1, - "flags": 41, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTEGER", - "value": "INTEGER", - "keyword": "INTEGER", - "type": 1, - "flags": 11, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mileage", - "value": "mileage", - "keyword": null, - "type": 0, - "flags": 0, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTEGER", - "value": "INTEGER", - "keyword": "INTEGER", - "type": 1, - "flags": 11, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 41, - "idx": 41 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "autos", - "column": null, - "expr": "autos", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "auto_id", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": "UNSIGNED", - "5": "ZEROFILL" - } - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "4": "KEY" - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "make", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [ - "128" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "year", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INTEGER", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "mileage", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INTEGER", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 39 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable16.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable16.in deleted file mode 100644 index ca8067fd..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable16.in +++ /dev/null @@ -1,4 +0,0 @@ -CREATE TABLE test ( - user_id INT, - INDEX `test` (user_id ASC) -) \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable16.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable16.out deleted file mode 100644 index 2bb8f761..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable16.out +++ /dev/null @@ -1,343 +0,0 @@ -{ - "query": "CREATE TABLE test (\n user_id INT,\n INDEX `test` (user_id ASC)\n)", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE test (\n user_id INT,\n INDEX `test` (user_id ASC)\n)", - "len": 65, - "last": 65, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "user_id", - "value": "user_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INDEX", - "value": "INDEX", - "keyword": "INDEX", - "type": 1, - "flags": 19, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`test`", - "value": "test", - "keyword": null, - "type": 8, - "flags": 2, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "user_id", - "value": "user_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ASC", - "value": "ASC", - "keyword": "ASC", - "type": 1, - "flags": 3, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 25, - "idx": 25 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test", - "column": null, - "expr": "test", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "user_id", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": null, - "isConstraint": null, - "type": null, - "key": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", - "name": "test", - "columns": [ - { - "name": "user_id", - "order": "ASC" - } - ], - "type": "INDEX", - "expr": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "references": null, - "options": null - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 24 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable17.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable17.in deleted file mode 100644 index 1e290e21..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable17.in +++ /dev/null @@ -1,8 +0,0 @@ -CREATE TABLE `autos8` ( - `auto_id` int(10) UNSIGNED NOT NULL UNIQUE KEY, - `make` varchar(128) DEFAULT NULL, - `year` int(11) DEFAULT NULL, - `mileage` int(11) DEFAULT NULL, - `city` point NOT NULL, - SPATIAL INDEX `city_index` (`city`) -) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_general_ci; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable17.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable17.out deleted file mode 100644 index 4d017723..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable17.out +++ /dev/null @@ -1,1125 +0,0 @@ -{ - "query": "CREATE TABLE `autos8` (\n `auto_id` int(10) UNSIGNED NOT NULL UNIQUE KEY,\n `make` varchar(128) DEFAULT NULL,\n `year` int(11) DEFAULT NULL,\n `mileage` int(11) DEFAULT NULL,\n `city` point NOT NULL,\n SPATIAL INDEX `city_index` (`city`)\n) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_general_ci;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE `autos8` (\n `auto_id` int(10) UNSIGNED NOT NULL UNIQUE KEY,\n `make` varchar(128) DEFAULT NULL,\n `year` int(11) DEFAULT NULL,\n `mileage` int(11) DEFAULT NULL,\n `city` point NOT NULL,\n SPATIAL INDEX `city_index` (`city`)\n) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_general_ci;", - "len": 323, - "last": 323, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`autos8`", - "value": "autos8", - "keyword": null, - "type": 8, - "flags": 2, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`auto_id`", - "value": "auto_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "int", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNIQUE KEY", - "value": "UNIQUE KEY", - "keyword": "UNIQUE KEY", - "type": 1, - "flags": 23, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`make`", - "value": "make", - "keyword": null, - "type": 8, - "flags": 2, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "varchar", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "128", - "value": 128, - "keyword": null, - "type": 6, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`year`", - "value": "year", - "keyword": null, - "type": 8, - "flags": 2, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "int", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "11", - "value": 11, - "keyword": null, - "type": 6, - "flags": 0, - "position": 129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`mileage`", - "value": "mileage", - "keyword": null, - "type": 8, - "flags": 2, - "position": 151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 160 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "int", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 164 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "11", - "value": 11, - "keyword": null, - "type": 6, - "flags": 0, - "position": 165 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 168 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 169 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 176 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 181 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 182 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`city`", - "value": "city", - "keyword": null, - "type": 8, - "flags": 2, - "position": 187 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 193 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "point", - "value": "point", - "keyword": "POINT", - "type": 1, - "flags": 41, - "position": 194 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 199 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 200 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 208 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 209 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SPATIAL INDEX", - "value": "SPATIAL INDEX", - "keyword": "SPATIAL INDEX", - "type": 1, - "flags": 23, - "position": 214 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 227 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`city_index`", - "value": "city_index", - "keyword": null, - "type": 8, - "flags": 2, - "position": 228 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 240 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 241 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`city`", - "value": "city", - "keyword": null, - "type": 8, - "flags": 2, - "position": 242 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 248 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 249 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 250 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 251 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENGINE", - "value": "ENGINE", - "keyword": "ENGINE", - "type": 1, - "flags": 1, - "position": 252 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 258 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 259 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 260 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "InnoDB", - "value": "InnoDB", - "keyword": null, - "type": 0, - "flags": 0, - "position": 261 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 267 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT CHARSET", - "value": "DEFAULT CHARSET", - "keyword": "DEFAULT CHARSET", - "type": 1, - "flags": 7, - "position": 268 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 283 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 284 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 285 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8mb4", - "value": "utf8mb4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 286 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 293 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLLATE", - "value": "COLLATE", - "keyword": "COLLATE", - "type": 1, - "flags": 3, - "position": 294 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 301 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 302 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 303 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8mb4_general_ci", - "value": "utf8mb4_general_ci", - "keyword": null, - "type": 0, - "flags": 0, - "position": 304 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 322 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 94, - "idx": 94 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "autos8", - "column": null, - "expr": "`autos8`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ENGINE", - "equals": true, - "expr": "InnoDB", - "value": "InnoDB" - }, - "4": { - "name": "DEFAULT CHARSET", - "equals": true, - "expr": "utf8mb4", - "value": "utf8mb4" - }, - "6": { - "name": "COLLATE", - "equals": true, - "expr": "utf8mb4_general_ci", - "value": "utf8mb4_general_ci" - } - } - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "auto_id", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [ - "10" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": "UNSIGNED" - } - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "4": "UNIQUE KEY" - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "make", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [ - "128" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "DEFAULT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "NULL", - "alias": null, - "function": null, - "subquery": null - }, - "value": "NULL" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "year", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [ - "11" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "DEFAULT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "NULL", - "alias": null, - "function": null, - "subquery": null - }, - "value": "NULL" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "mileage", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [ - "11" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "DEFAULT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "NULL", - "alias": null, - "function": null, - "subquery": null - }, - "value": "NULL" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "city", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "POINT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL" - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": null, - "isConstraint": null, - "type": null, - "key": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", - "name": "city_index", - "columns": [ - { - "name": "city" - } - ], - "type": "SPATIAL INDEX", - "expr": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "references": null, - "options": null - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 92 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable18.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable18.in deleted file mode 100644 index 1062bfb3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable18.in +++ /dev/null @@ -1,6 +0,0 @@ -CREATE TABLE test ( - id INT UNSIGNED NOT NULL AUTO_INCREMENT, - data VARCHAR(64) DEFAULT NULL, - ts TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, - PRIMARY KEY (id) -); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable18.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable18.out deleted file mode 100644 index 7ae808ed..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable18.out +++ /dev/null @@ -1,707 +0,0 @@ -{ - "query": "CREATE TABLE test (\n id INT UNSIGNED NOT NULL AUTO_INCREMENT,\n data VARCHAR(64) DEFAULT NULL,\n ts TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,\n PRIMARY KEY (id)\n);", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE test (\n id INT UNSIGNED NOT NULL AUTO_INCREMENT,\n data VARCHAR(64) DEFAULT NULL,\n ts TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,\n PRIMARY KEY (id)\n);", - "len": 196, - "last": 196, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AUTO_INCREMENT", - "value": "AUTO_INCREMENT", - "keyword": "AUTO_INCREMENT", - "type": 1, - "flags": 1, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "data", - "value": "data", - "keyword": "DATA", - "type": 1, - "flags": 1, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VARCHAR", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "64", - "value": 64, - "keyword": null, - "type": 6, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ts", - "value": "ts", - "keyword": null, - "type": 0, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TIMESTAMP", - "value": "TIMESTAMP", - "keyword": "TIMESTAMP", - "type": 1, - "flags": 41, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CURRENT_TIMESTAMP", - "value": "CURRENT_TIMESTAMP", - "keyword": "CURRENT_TIMESTAMP", - "type": 1, - "flags": 35, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON UPDATE", - "value": "ON UPDATE", - "keyword": "ON UPDATE", - "type": 1, - "flags": 7, - "position": 146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CURRENT_TIMESTAMP", - "value": "CURRENT_TIMESTAMP", - "keyword": "CURRENT_TIMESTAMP", - "type": 1, - "flags": 35, - "position": 156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 173 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PRIMARY KEY", - "value": "PRIMARY KEY", - "keyword": "PRIMARY KEY", - "type": 1, - "flags": 23, - "position": 177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 188 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 189 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 190 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 192 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 193 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 194 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 195 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 55, - "idx": 55 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test", - "column": null, - "expr": "test", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "id", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": "UNSIGNED" - } - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "3": "AUTO_INCREMENT" - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "data", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [ - "64" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "DEFAULT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "NULL", - "alias": null, - "function": null, - "subquery": null - }, - "value": "NULL" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "ts", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "TIMESTAMP", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "2": { - "name": "DEFAULT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "CURRENT_TIMESTAMP", - "alias": null, - "function": null, - "subquery": null - }, - "value": "CURRENT_TIMESTAMP" - }, - "7": { - "name": "ON UPDATE", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "CURRENT_TIMESTAMP", - "alias": null, - "function": null, - "subquery": null - }, - "value": "CURRENT_TIMESTAMP" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": null, - "isConstraint": null, - "type": null, - "key": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", - "name": null, - "columns": [ - { - "name": "id" - } - ], - "type": "PRIMARY KEY", - "expr": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "references": null, - "options": null - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 53 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable2.in deleted file mode 100644 index 828831aa..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable2.in +++ /dev/null @@ -1,16 +0,0 @@ -CREATE TABLE `payment` ( - `payment_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT, - `customer_id` smallint(5) unsigned NOT NULL, - `staff_id` tinyint(3) unsigned NOT NULL, - `rental_id` int(11) DEFAULT NULL, - `amount` decimal(5,2) NOT NULL, - `payment_date` datetime NOT NULL, - `last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, - PRIMARY KEY (`payment_id`), - KEY `idx_fk_staff_id` (`staff_id`), - KEY `idx_fk_customer_id` (`customer_id`), - KEY `fk_payment_rental` (`rental_id`), - CONSTRAINT `fk_payment_customer` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) ON UPDATE CASCADE, - CONSTRAINT `fk_payment_rental` FOREIGN KEY (`rental_id`) REFERENCES `rental` (`rental_id`) ON DELETE SET NULL ON UPDATE CASCADE, - CONSTRAINT `fk_payment_staff` FOREIGN KEY (`staff_id`) REFERENCES `staff` (`staff_id`) ON UPDATE CASCADE -) ENGINE=InnoDB AUTO_INCREMENT=16050 DEFAULT CHARSET=utf8 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable2.out deleted file mode 100644 index 0f8e6d37..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable2.out +++ /dev/null @@ -1,2462 +0,0 @@ -{ - "query": "CREATE TABLE `payment` (\n `payment_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,\n `customer_id` smallint(5) unsigned NOT NULL,\n `staff_id` tinyint(3) unsigned NOT NULL,\n `rental_id` int(11) DEFAULT NULL,\n `amount` decimal(5,2) NOT NULL,\n `payment_date` datetime NOT NULL,\n `last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,\n PRIMARY KEY (`payment_id`),\n KEY `idx_fk_staff_id` (`staff_id`),\n KEY `idx_fk_customer_id` (`customer_id`),\n KEY `fk_payment_rental` (`rental_id`),\n CONSTRAINT `fk_payment_customer` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) ON UPDATE CASCADE,\n CONSTRAINT `fk_payment_rental` FOREIGN KEY (`rental_id`) REFERENCES `rental` (`rental_id`) ON DELETE SET NULL ON UPDATE CASCADE,\n CONSTRAINT `fk_payment_staff` FOREIGN KEY (`staff_id`) REFERENCES `staff` (`staff_id`) ON UPDATE CASCADE\n) ENGINE=InnoDB AUTO_INCREMENT=16050 DEFAULT CHARSET=utf8", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE `payment` (\n `payment_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,\n `customer_id` smallint(5) unsigned NOT NULL,\n `staff_id` tinyint(3) unsigned NOT NULL,\n `rental_id` int(11) DEFAULT NULL,\n `amount` decimal(5,2) NOT NULL,\n `payment_date` datetime NOT NULL,\n `last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,\n PRIMARY KEY (`payment_id`),\n KEY `idx_fk_staff_id` (`staff_id`),\n KEY `idx_fk_customer_id` (`customer_id`),\n KEY `fk_payment_rental` (`rental_id`),\n CONSTRAINT `fk_payment_customer` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) ON UPDATE CASCADE,\n CONSTRAINT `fk_payment_rental` FOREIGN KEY (`rental_id`) REFERENCES `rental` (`rental_id`) ON DELETE SET NULL ON UPDATE CASCADE,\n CONSTRAINT `fk_payment_staff` FOREIGN KEY (`staff_id`) REFERENCES `staff` (`staff_id`) ON UPDATE CASCADE\n) ENGINE=InnoDB AUTO_INCREMENT=16050 DEFAULT CHARSET=utf8", - "len": 940, - "last": 940, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`payment`", - "value": "payment", - "keyword": null, - "type": 8, - "flags": 2, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`payment_id`", - "value": "payment_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "smallint", - "value": "SMALLINT", - "keyword": "SMALLINT", - "type": 1, - "flags": 11, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "5", - "value": 5, - "keyword": null, - "type": 6, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "unsigned", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AUTO_INCREMENT", - "value": "AUTO_INCREMENT", - "keyword": "AUTO_INCREMENT", - "type": 1, - "flags": 1, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`customer_id`", - "value": "customer_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "smallint", - "value": "SMALLINT", - "keyword": "SMALLINT", - "type": 1, - "flags": 11, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "5", - "value": 5, - "keyword": null, - "type": 6, - "flags": 0, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "unsigned", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`staff_id`", - "value": "staff_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tinyint", - "value": "TINYINT", - "keyword": "TINYINT", - "type": 1, - "flags": 11, - "position": 146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 153 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 154 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "unsigned", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 165 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 166 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 175 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`rental_id`", - "value": "rental_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 178 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 189 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "int", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 190 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 193 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "11", - "value": 11, - "keyword": null, - "type": 6, - "flags": 0, - "position": 194 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 196 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 197 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 198 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 205 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 206 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 210 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 211 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`amount`", - "value": "amount", - "keyword": null, - "type": 8, - "flags": 2, - "position": 214 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 222 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "decimal", - "value": "DECIMAL", - "keyword": "DECIMAL", - "type": 1, - "flags": 11, - "position": 223 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 230 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "5", - "value": 5, - "keyword": null, - "type": 6, - "flags": 0, - "position": 231 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 232 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 233 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 234 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 235 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 236 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 244 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 245 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`payment_date`", - "value": "payment_date", - "keyword": null, - "type": 8, - "flags": 2, - "position": 248 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 262 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "datetime", - "value": "datetime", - "keyword": "DATETIME", - "type": 1, - "flags": 9, - "position": 263 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 271 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 272 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 280 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 281 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`last_update`", - "value": "last_update", - "keyword": null, - "type": 8, - "flags": 2, - "position": 284 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 297 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "timestamp", - "value": "timestamp", - "keyword": "TIMESTAMP", - "type": 1, - "flags": 41, - "position": 298 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 307 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 308 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 316 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 317 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 324 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CURRENT_TIMESTAMP", - "value": "CURRENT_TIMESTAMP", - "keyword": "CURRENT_TIMESTAMP", - "type": 1, - "flags": 35, - "position": 325 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 342 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON UPDATE", - "value": "ON UPDATE", - "keyword": "ON UPDATE", - "type": 1, - "flags": 7, - "position": 343 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 352 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CURRENT_TIMESTAMP", - "value": "CURRENT_TIMESTAMP", - "keyword": "CURRENT_TIMESTAMP", - "type": 1, - "flags": 35, - "position": 353 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 370 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 371 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PRIMARY KEY", - "value": "PRIMARY KEY", - "keyword": "PRIMARY KEY", - "type": 1, - "flags": 23, - "position": 374 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 385 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 386 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`payment_id`", - "value": "payment_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 387 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 399 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 400 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 401 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KEY", - "value": "KEY", - "keyword": "KEY", - "type": 1, - "flags": 19, - "position": 404 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 407 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`idx_fk_staff_id`", - "value": "idx_fk_staff_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 408 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 425 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 426 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`staff_id`", - "value": "staff_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 427 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 437 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 438 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 439 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KEY", - "value": "KEY", - "keyword": "KEY", - "type": 1, - "flags": 19, - "position": 442 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 445 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`idx_fk_customer_id`", - "value": "idx_fk_customer_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 446 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 466 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 467 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`customer_id`", - "value": "customer_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 468 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 481 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 482 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 483 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KEY", - "value": "KEY", - "keyword": "KEY", - "type": 1, - "flags": 19, - "position": 486 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 489 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`fk_payment_rental`", - "value": "fk_payment_rental", - "keyword": null, - "type": 8, - "flags": 2, - "position": 490 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 509 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 510 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`rental_id`", - "value": "rental_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 511 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 522 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 523 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 524 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CONSTRAINT", - "value": "CONSTRAINT", - "keyword": "CONSTRAINT", - "type": 1, - "flags": 3, - "position": 527 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 537 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`fk_payment_customer`", - "value": "fk_payment_customer", - "keyword": null, - "type": 8, - "flags": 2, - "position": 538 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 559 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FOREIGN KEY", - "value": "FOREIGN KEY", - "keyword": "FOREIGN KEY", - "type": 1, - "flags": 23, - "position": 560 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 571 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 572 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`customer_id`", - "value": "customer_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 573 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 586 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 587 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REFERENCES", - "value": "REFERENCES", - "keyword": "REFERENCES", - "type": 1, - "flags": 3, - "position": 588 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 598 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`customer`", - "value": "customer", - "keyword": null, - "type": 8, - "flags": 2, - "position": 599 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 609 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 610 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`customer_id`", - "value": "customer_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 611 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 624 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 625 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON UPDATE", - "value": "ON UPDATE", - "keyword": "ON UPDATE", - "type": 1, - "flags": 7, - "position": 626 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 635 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CASCADE", - "value": "CASCADE", - "keyword": "CASCADE", - "type": 1, - "flags": 3, - "position": 636 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 643 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 644 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CONSTRAINT", - "value": "CONSTRAINT", - "keyword": "CONSTRAINT", - "type": 1, - "flags": 3, - "position": 647 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 657 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`fk_payment_rental`", - "value": "fk_payment_rental", - "keyword": null, - "type": 8, - "flags": 2, - "position": 658 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 677 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FOREIGN KEY", - "value": "FOREIGN KEY", - "keyword": "FOREIGN KEY", - "type": 1, - "flags": 23, - "position": 678 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 689 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 690 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`rental_id`", - "value": "rental_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 691 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 702 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 703 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REFERENCES", - "value": "REFERENCES", - "keyword": "REFERENCES", - "type": 1, - "flags": 3, - "position": 704 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 714 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`rental`", - "value": "rental", - "keyword": null, - "type": 8, - "flags": 2, - "position": 715 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 723 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 724 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`rental_id`", - "value": "rental_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 725 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 736 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 737 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON DELETE", - "value": "ON DELETE", - "keyword": "ON DELETE", - "type": 1, - "flags": 7, - "position": 738 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 747 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET NULL", - "value": "SET NULL", - "keyword": "SET NULL", - "type": 1, - "flags": 7, - "position": 748 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 756 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON UPDATE", - "value": "ON UPDATE", - "keyword": "ON UPDATE", - "type": 1, - "flags": 7, - "position": 757 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 766 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CASCADE", - "value": "CASCADE", - "keyword": "CASCADE", - "type": 1, - "flags": 3, - "position": 767 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 774 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 775 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CONSTRAINT", - "value": "CONSTRAINT", - "keyword": "CONSTRAINT", - "type": 1, - "flags": 3, - "position": 778 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 788 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`fk_payment_staff`", - "value": "fk_payment_staff", - "keyword": null, - "type": 8, - "flags": 2, - "position": 789 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 807 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FOREIGN KEY", - "value": "FOREIGN KEY", - "keyword": "FOREIGN KEY", - "type": 1, - "flags": 23, - "position": 808 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 819 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 820 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`staff_id`", - "value": "staff_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 821 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 831 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 832 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REFERENCES", - "value": "REFERENCES", - "keyword": "REFERENCES", - "type": 1, - "flags": 3, - "position": 833 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 843 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`staff`", - "value": "staff", - "keyword": null, - "type": 8, - "flags": 2, - "position": 844 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 851 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 852 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`staff_id`", - "value": "staff_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 853 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 863 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 864 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON UPDATE", - "value": "ON UPDATE", - "keyword": "ON UPDATE", - "type": 1, - "flags": 7, - "position": 865 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 874 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CASCADE", - "value": "CASCADE", - "keyword": "CASCADE", - "type": 1, - "flags": 3, - "position": 875 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 882 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 883 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 884 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENGINE", - "value": "ENGINE", - "keyword": "ENGINE", - "type": 1, - "flags": 1, - "position": 885 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 891 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "InnoDB", - "value": "InnoDB", - "keyword": null, - "type": 0, - "flags": 0, - "position": 892 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 898 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AUTO_INCREMENT", - "value": "AUTO_INCREMENT", - "keyword": "AUTO_INCREMENT", - "type": 1, - "flags": 1, - "position": 899 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 913 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "16050", - "value": 16050, - "keyword": null, - "type": 6, - "flags": 0, - "position": 914 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 919 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT CHARSET", - "value": "DEFAULT CHARSET", - "keyword": "DEFAULT CHARSET", - "type": 1, - "flags": 7, - "position": 920 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 935 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8", - "value": "utf8", - "keyword": null, - "type": 0, - "flags": 0, - "position": 936 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 212, - "idx": 212 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "payment", - "column": null, - "expr": "`payment`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ENGINE", - "equals": true, - "expr": "InnoDB", - "value": "InnoDB" - }, - "2": { - "name": "AUTO_INCREMENT", - "equals": true, - "expr": "16050", - "value": "16050" - }, - "4": { - "name": "DEFAULT CHARSET", - "equals": true, - "expr": "utf8", - "value": "utf8" - } - } - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "payment_id", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "SMALLINT", - "parameters": [ - "5" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": "UNSIGNED" - } - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "3": "AUTO_INCREMENT" - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "customer_id", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "SMALLINT", - "parameters": [ - "5" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": "UNSIGNED" - } - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL" - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "staff_id", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "TINYINT", - "parameters": [ - "3" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": "UNSIGNED" - } - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL" - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "rental_id", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [ - "11" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "DEFAULT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "NULL", - "alias": null, - "function": null, - "subquery": null - }, - "value": "NULL" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "amount", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "DECIMAL", - "parameters": [ - "5", - "2" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL" - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "payment_date", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "DATETIME", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL" - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "last_update", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "TIMESTAMP", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "2": { - "name": "DEFAULT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "CURRENT_TIMESTAMP", - "alias": null, - "function": null, - "subquery": null - }, - "value": "CURRENT_TIMESTAMP" - }, - "7": { - "name": "ON UPDATE", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "CURRENT_TIMESTAMP", - "alias": null, - "function": null, - "subquery": null - }, - "value": "CURRENT_TIMESTAMP" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": null, - "isConstraint": null, - "type": null, - "key": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", - "name": null, - "columns": [ - { - "name": "payment_id" - } - ], - "type": "PRIMARY KEY", - "expr": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "references": null, - "options": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": null, - "isConstraint": null, - "type": null, - "key": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", - "name": "idx_fk_staff_id", - "columns": [ - { - "name": "staff_id" - } - ], - "type": "KEY", - "expr": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "references": null, - "options": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": null, - "isConstraint": null, - "type": null, - "key": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", - "name": "idx_fk_customer_id", - "columns": [ - { - "name": "customer_id" - } - ], - "type": "KEY", - "expr": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "references": null, - "options": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": null, - "isConstraint": null, - "type": null, - "key": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", - "name": "fk_payment_rental", - "columns": [ - { - "name": "rental_id" - } - ], - "type": "KEY", - "expr": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "references": null, - "options": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "fk_payment_customer", - "isConstraint": true, - "type": null, - "key": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", - "name": null, - "columns": [ - { - "name": "customer_id" - } - ], - "type": "FOREIGN KEY", - "expr": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "references": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Reference", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "customer", - "column": null, - "expr": "`customer`", - "alias": null, - "function": null, - "subquery": null - }, - "columns": [ - "customer_id" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": { - "name": "ON UPDATE", - "equals": false, - "expr": "CASCADE", - "value": "CASCADE" - } - } - } - }, - "options": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "fk_payment_rental", - "isConstraint": true, - "type": null, - "key": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", - "name": null, - "columns": [ - { - "name": "rental_id" - } - ], - "type": "FOREIGN KEY", - "expr": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "references": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Reference", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "rental", - "column": null, - "expr": "`rental`", - "alias": null, - "function": null, - "subquery": null - }, - "columns": [ - "rental_id" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "ON DELETE", - "equals": false, - "expr": "SET NULL", - "value": "SET NULL" - }, - "3": { - "name": "ON UPDATE", - "equals": false, - "expr": "CASCADE", - "value": "CASCADE" - } - } - } - }, - "options": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "fk_payment_staff", - "isConstraint": true, - "type": null, - "key": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", - "name": null, - "columns": [ - { - "name": "staff_id" - } - ], - "type": "FOREIGN KEY", - "expr": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "references": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Reference", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "staff", - "column": null, - "expr": "`staff`", - "alias": null, - "function": null, - "subquery": null - }, - "columns": [ - "staff_id" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": { - "name": "ON UPDATE", - "equals": false, - "expr": "CASCADE", - "value": "CASCADE" - } - } - } - }, - "options": null - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 211 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable3.in deleted file mode 100644 index 05f2bc0d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable3.in +++ /dev/null @@ -1,6 +0,0 @@ -CREATE TABLE table1 ( - a INT NOT NULL, - b VARCHAR(32), - c INT AS (a mod 10) VIRTUAL, - d VARCHAR(5) AS (left(b,5)) PERSISTENT -); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable3.out deleted file mode 100644 index 54c5928e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable3.out +++ /dev/null @@ -1,761 +0,0 @@ -{ - "query": "CREATE TABLE table1 (\n a INT NOT NULL,\n b VARCHAR(32),\n c INT AS (a mod 10) VIRTUAL,\n d VARCHAR(5) AS (left(b,5)) PERSISTENT\n);", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE table1 (\n a INT NOT NULL,\n b VARCHAR(32),\n c INT AS (a mod 10) VIRTUAL,\n d VARCHAR(5) AS (left(b,5)) PERSISTENT\n);", - "len": 139, - "last": 139, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VARCHAR", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "32", - "value": 32, - "keyword": null, - "type": 6, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mod", - "value": "MOD", - "keyword": "MOD", - "type": 1, - "flags": 35, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VIRTUAL", - "value": "VIRTUAL", - "keyword": "VIRTUAL", - "type": 1, - "flags": 3, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "d", - "value": "d", - "keyword": null, - "type": 0, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VARCHAR", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "5", - "value": 5, - "keyword": null, - "type": 6, - "flags": 0, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "left", - "value": "LEFT", - "keyword": "LEFT", - "type": 1, - "flags": 35, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "5", - "value": 5, - "keyword": null, - "type": 6, - "flags": 0, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PERSISTENT", - "value": "PERSISTENT", - "keyword": "PERSISTENT", - "type": 1, - "flags": 1, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 137 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 63, - "idx": 63 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "a", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL" - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "b", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [ - "32" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "c", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "9": { - "name": "AS", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(a mod 10)", - "alias": null, - "function": null, - "subquery": null - }, - "value": "(a mod 10)" - }, - "10": "VIRTUAL" - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "d", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [ - "5" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "9": { - "name": "AS", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(left(b,5))", - "alias": null, - "function": "LEFT", - "subquery": null - }, - "value": "(left(b,5))" - }, - "11": "PERSISTENT" - } - } - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 61 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable4.in deleted file mode 100644 index 1e8552ce..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable4.in +++ /dev/null @@ -1,21 +0,0 @@ -CREATE TABLE ts(id INT, purchased DATE) -PARTITION BY /* comment */ RANGE(YEAR(purchased)) -PARTITIONS 3 -SUBPARTITION BY HASH(TO_DAYS(purchased)) -SUBPARTITIONS 2( -PARTITION p0 -VALUES LESS THAN(1990)( - SUBPARTITION s0, - SUBPARTITION s1 -), -PARTITION p1 -VALUES LESS THAN(2000)( - SUBPARTITION s2, - SUBPARTITION s3 -), -PARTITION p2 -VALUES LESS THAN MAXVALUE( - SUBPARTITION s4, - SUBPARTITION s5 -) -); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable4.out deleted file mode 100644 index 8a77bf36..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable4.out +++ /dev/null @@ -1,1324 +0,0 @@ -{ - "query": "CREATE TABLE ts(id INT, purchased DATE)\nPARTITION BY /* comment */ RANGE(YEAR(purchased))\nPARTITIONS 3\nSUBPARTITION BY HASH(TO_DAYS(purchased))\nSUBPARTITIONS 2(\nPARTITION p0\nVALUES LESS THAN(1990)(\n SUBPARTITION s0,\n SUBPARTITION s1\n),\nPARTITION p1\nVALUES LESS THAN(2000)(\n SUBPARTITION s2,\n SUBPARTITION s3\n),\nPARTITION p2\nVALUES LESS THAN MAXVALUE(\n SUBPARTITION s4,\n SUBPARTITION s5\n)\n);", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE ts(id INT, purchased DATE)\nPARTITION BY /* comment */ RANGE(YEAR(purchased))\nPARTITIONS 3\nSUBPARTITION BY HASH(TO_DAYS(purchased))\nSUBPARTITIONS 2(\nPARTITION p0\nVALUES LESS THAN(1990)(\n SUBPARTITION s0,\n SUBPARTITION s1\n),\nPARTITION p1\nVALUES LESS THAN(2000)(\n SUBPARTITION s2,\n SUBPARTITION s3\n),\nPARTITION p2\nVALUES LESS THAN MAXVALUE(\n SUBPARTITION s4,\n SUBPARTITION s5\n)\n);", - "len": 408, - "last": 408, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ts", - "value": "ts", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "purchased", - "value": "purchased", - "keyword": null, - "type": 0, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DATE", - "value": "DATE", - "keyword": "DATE", - "type": 1, - "flags": 41, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION BY", - "value": "PARTITION BY", - "keyword": "PARTITION BY", - "type": 1, - "flags": 7, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* comment */", - "value": "/* comment */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RANGE", - "value": "RANGE", - "keyword": "RANGE", - "type": 1, - "flags": 3, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "YEAR", - "value": "YEAR", - "keyword": "YEAR", - "type": 1, - "flags": 41, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "purchased", - "value": "purchased", - "keyword": null, - "type": 0, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITIONS", - "value": "PARTITIONS", - "keyword": "PARTITIONS", - "type": 1, - "flags": 1, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION BY", - "value": "SUBPARTITION BY", - "keyword": "SUBPARTITION BY", - "type": 1, - "flags": 7, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "HASH", - "value": "HASH", - "keyword": "HASH", - "type": 1, - "flags": 1, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO_DAYS", - "value": "TO_DAYS", - "keyword": "TO_DAYS", - "type": 1, - "flags": 33, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "purchased", - "value": "purchased", - "keyword": null, - "type": 0, - "flags": 0, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITIONS", - "value": "SUBPARTITIONS", - "keyword": "SUBPARTITIONS", - "type": 1, - "flags": 1, - "position": 144 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 159 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 160 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 170 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p0", - "value": "p0", - "keyword": null, - "type": 0, - "flags": 0, - "position": 171 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 173 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 180 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 181 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 190 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1990", - "value": 1990, - "keyword": null, - "type": 6, - "flags": 0, - "position": 191 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 195 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 196 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 197 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 202 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 214 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "s0", - "value": "s0", - "keyword": null, - "type": 0, - "flags": 0, - "position": 215 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 217 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 218 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 223 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 235 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "s1", - "value": "s1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 236 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 238 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 239 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 240 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 241 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 242 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 251 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p1", - "value": "p1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 252 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 254 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 255 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 261 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 262 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 271 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2000", - "value": 2000, - "keyword": null, - "type": 6, - "flags": 0, - "position": 272 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 276 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 277 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 278 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 283 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 295 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "s2", - "value": "s2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 296 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 298 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 299 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 304 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 316 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "s3", - "value": "s3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 317 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 319 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 320 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 321 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 322 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 323 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 332 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p2", - "value": "p2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 333 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 335 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 336 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 342 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 343 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 352 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MAXVALUE", - "value": "MAXVALUE", - "keyword": "MAXVALUE", - "type": 1, - "flags": 3, - "position": 353 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 361 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 362 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 367 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 379 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "s4", - "value": "s4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 380 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 382 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 383 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 388 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 400 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "s5", - "value": "s5", - "keyword": null, - "type": 0, - "flags": 0, - "position": 401 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 403 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 404 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 405 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 406 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 407 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 120, - "idx": 120 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "ts", - "column": null, - "expr": "ts", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "id", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "purchased", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "DATE", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": "RANGE(YEAR(purchased))", - "partitionsNum": 3, - "subpartitionBy": "HASH(TO_DAYS(purchased))", - "subpartitionsNum": 2, - "partitions": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p0", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(1990)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "s0", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "s1", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p1", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(2000)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "s2", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "s3", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p2", - "type": "LESS THAN", - "expr": "MAXVALUE", - "subpartitions": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "s4", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "s5", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 117 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable5.in deleted file mode 100644 index 5dfef1af..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable5.in +++ /dev/null @@ -1 +0,0 @@ -CREATE TABLE new_table (`INT` VARCHAR(50) DEFAULT NULL); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable5.out deleted file mode 100644 index c5afbb0e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable5.out +++ /dev/null @@ -1,292 +0,0 @@ -{ - "query": "CREATE TABLE new_table (`INT` VARCHAR(50) DEFAULT NULL);", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE new_table (`INT` VARCHAR(50) DEFAULT NULL);", - "len": 56, - "last": 56, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "new_table", - "value": "new_table", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`INT`", - "value": "INT", - "keyword": null, - "type": 8, - "flags": 2, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VARCHAR", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "50", - "value": 50, - "keyword": null, - "type": 6, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 20, - "idx": 20 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "new_table", - "column": null, - "expr": "new_table", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "INT", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [ - "50" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "DEFAULT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "NULL", - "alias": null, - "function": null, - "subquery": null - }, - "value": "NULL" - } - } - } - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 18 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable6.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable6.in deleted file mode 100644 index d87dec01..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable6.in +++ /dev/null @@ -1 +0,0 @@ -CREATE TABLE new_table (ACTION VARCHAR(50) DEFAULT NULL); diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable6.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable6.out deleted file mode 100644 index 6e8fb606..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable6.out +++ /dev/null @@ -1,301 +0,0 @@ -{ - "query": "CREATE TABLE new_table (ACTION VARCHAR(50) DEFAULT NULL);\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE new_table (ACTION VARCHAR(50) DEFAULT NULL);\n", - "len": 58, - "last": 58, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "new_table", - "value": "new_table", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ACTION", - "value": "ACTION", - "keyword": "ACTION", - "type": 1, - "flags": 1, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VARCHAR", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "50", - "value": 50, - "keyword": null, - "type": 6, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 21, - "idx": 21 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "new_table", - "column": null, - "expr": "new_table", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "ACTION", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [ - "50" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "DEFAULT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "NULL", - "alias": null, - "function": null, - "subquery": null - }, - "value": "NULL" - } - } - } - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 18 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable7.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable7.in deleted file mode 100644 index 2f80ff71..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable7.in +++ /dev/null @@ -1,20 +0,0 @@ -CREATE TABLE `ts` ( - `id` int(11) DEFAULT NULL, - `purchased` date DEFAULT NULL -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 -PARTITION BY RANGE (YEAR(purchased)) -SUBPARTITION BY HASH (TO_DAYS(purchased)) -( -PARTITION p0 VALUES LESS THAN (1990) ( -SUBPARTITION s0 ENGINE=InnoDB, -SUBPARTITION s1 ENGINE=InnoDB -), -PARTITION p1 VALUES LESS THAN (2000) ( -SUBPARTITION s2 ENGINE=InnoDB, -SUBPARTITION s3 ENGINE=InnoDB -), -PARTITION p2 VALUES LESS THAN MAXVALUE ( -SUBPARTITION s4 ENGINE=InnoDB, -SUBPARTITION s5 ENGINE=InnoDB -) -); diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable7.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable7.out deleted file mode 100644 index eedf4d72..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable7.out +++ /dev/null @@ -1,1818 +0,0 @@ -{ - "query": "CREATE TABLE `ts` (\n `id` int(11) DEFAULT NULL,\n `purchased` date DEFAULT NULL\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4\nPARTITION BY RANGE (YEAR(purchased))\nSUBPARTITION BY HASH (TO_DAYS(purchased))\n(\nPARTITION p0 VALUES LESS THAN (1990) (\nSUBPARTITION s0 ENGINE=InnoDB,\nSUBPARTITION s1 ENGINE=InnoDB\n),\nPARTITION p1 VALUES LESS THAN (2000) (\nSUBPARTITION s2 ENGINE=InnoDB,\nSUBPARTITION s3 ENGINE=InnoDB\n),\nPARTITION p2 VALUES LESS THAN MAXVALUE (\nSUBPARTITION s4 ENGINE=InnoDB,\nSUBPARTITION s5 ENGINE=InnoDB\n)\n);\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE `ts` (\n `id` int(11) DEFAULT NULL,\n `purchased` date DEFAULT NULL\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4\nPARTITION BY RANGE (YEAR(purchased))\nSUBPARTITION BY HASH (TO_DAYS(purchased))\n(\nPARTITION p0 VALUES LESS THAN (1990) (\nSUBPARTITION s0 ENGINE=InnoDB,\nSUBPARTITION s1 ENGINE=InnoDB\n),\nPARTITION p1 VALUES LESS THAN (2000) (\nSUBPARTITION s2 ENGINE=InnoDB,\nSUBPARTITION s3 ENGINE=InnoDB\n),\nPARTITION p2 VALUES LESS THAN MAXVALUE (\nSUBPARTITION s4 ENGINE=InnoDB,\nSUBPARTITION s5 ENGINE=InnoDB\n)\n);\n", - "len": 518, - "last": 518, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`ts`", - "value": "ts", - "keyword": null, - "type": 8, - "flags": 2, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`id`", - "value": "id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "int", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "11", - "value": 11, - "keyword": null, - "type": 6, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`purchased`", - "value": "purchased", - "keyword": null, - "type": 8, - "flags": 2, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "date", - "value": "date", - "keyword": "DATE", - "type": 1, - "flags": 41, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENGINE", - "value": "ENGINE", - "keyword": "ENGINE", - "type": 1, - "flags": 1, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "InnoDB", - "value": "InnoDB", - "keyword": null, - "type": 0, - "flags": 0, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT CHARSET", - "value": "DEFAULT CHARSET", - "keyword": "DEFAULT CHARSET", - "type": 1, - "flags": 7, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8mb4", - "value": "utf8mb4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION BY", - "value": "PARTITION BY", - "keyword": "PARTITION BY", - "type": 1, - "flags": 7, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RANGE", - "value": "RANGE", - "keyword": "RANGE", - "type": 1, - "flags": 3, - "position": 134 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "YEAR", - "value": "YEAR", - "keyword": "YEAR", - "type": 1, - "flags": 41, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "purchased", - "value": "purchased", - "keyword": null, - "type": 0, - "flags": 0, - "position": 146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION BY", - "value": "SUBPARTITION BY", - "keyword": "SUBPARTITION BY", - "type": 1, - "flags": 7, - "position": 158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 173 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "HASH", - "value": "HASH", - "keyword": "HASH", - "type": 1, - "flags": 1, - "position": 174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 178 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 179 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO_DAYS", - "value": "TO_DAYS", - "keyword": "TO_DAYS", - "type": 1, - "flags": 33, - "position": 180 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 187 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "purchased", - "value": "purchased", - "keyword": null, - "type": 0, - "flags": 0, - "position": 188 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 197 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 198 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 199 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 200 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 201 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 202 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 211 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p0", - "value": "p0", - "keyword": null, - "type": 0, - "flags": 0, - "position": 212 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 214 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 215 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 221 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 222 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 231 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 232 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1990", - "value": 1990, - "keyword": null, - "type": 6, - "flags": 0, - "position": 233 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 237 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 238 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 240 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 241 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 242 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 254 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "s0", - "value": "s0", - "keyword": null, - "type": 0, - "flags": 0, - "position": 255 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 257 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENGINE", - "value": "ENGINE", - "keyword": "ENGINE", - "type": 1, - "flags": 1, - "position": 258 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 264 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "InnoDB", - "value": "InnoDB", - "keyword": null, - "type": 0, - "flags": 0, - "position": 265 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 271 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 272 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 273 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 285 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "s1", - "value": "s1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 286 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 288 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENGINE", - "value": "ENGINE", - "keyword": "ENGINE", - "type": 1, - "flags": 1, - "position": 289 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 295 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "InnoDB", - "value": "InnoDB", - "keyword": null, - "type": 0, - "flags": 0, - "position": 296 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 302 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 303 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 304 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 305 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 306 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 315 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p1", - "value": "p1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 316 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 318 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 319 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 325 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 326 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 335 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 336 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2000", - "value": 2000, - "keyword": null, - "type": 6, - "flags": 0, - "position": 337 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 341 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 342 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 344 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 345 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 346 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 358 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "s2", - "value": "s2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 359 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 361 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENGINE", - "value": "ENGINE", - "keyword": "ENGINE", - "type": 1, - "flags": 1, - "position": 362 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 368 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "InnoDB", - "value": "InnoDB", - "keyword": null, - "type": 0, - "flags": 0, - "position": 369 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 375 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 376 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 377 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 389 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "s3", - "value": "s3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 390 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 392 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENGINE", - "value": "ENGINE", - "keyword": "ENGINE", - "type": 1, - "flags": 1, - "position": 393 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 399 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "InnoDB", - "value": "InnoDB", - "keyword": null, - "type": 0, - "flags": 0, - "position": 400 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 406 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 407 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 408 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 409 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 410 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 419 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p2", - "value": "p2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 420 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 422 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 423 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 429 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LESS THAN", - "value": "LESS THAN", - "keyword": "LESS THAN", - "type": 1, - "flags": 7, - "position": 430 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 439 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MAXVALUE", - "value": "MAXVALUE", - "keyword": "MAXVALUE", - "type": 1, - "flags": 3, - "position": 440 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 448 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 450 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 451 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 452 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 464 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "s4", - "value": "s4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 465 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 467 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENGINE", - "value": "ENGINE", - "keyword": "ENGINE", - "type": 1, - "flags": 1, - "position": 468 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 474 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "InnoDB", - "value": "InnoDB", - "keyword": null, - "type": 0, - "flags": 0, - "position": 475 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 481 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 482 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION", - "value": "SUBPARTITION", - "keyword": "SUBPARTITION", - "type": 1, - "flags": 1, - "position": 483 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 495 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "s5", - "value": "s5", - "keyword": null, - "type": 0, - "flags": 0, - "position": 496 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 498 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENGINE", - "value": "ENGINE", - "keyword": "ENGINE", - "type": 1, - "flags": 1, - "position": 499 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 505 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "InnoDB", - "value": "InnoDB", - "keyword": null, - "type": 0, - "flags": 0, - "position": 506 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 512 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 513 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 514 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 515 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 516 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 517 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 165, - "idx": 165 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "ts", - "column": null, - "expr": "`ts`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ENGINE", - "equals": true, - "expr": "InnoDB", - "value": "InnoDB" - }, - "4": { - "name": "DEFAULT CHARSET", - "equals": true, - "expr": "utf8mb4", - "value": "utf8mb4" - } - } - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "id", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [ - "11" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "DEFAULT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "NULL", - "alias": null, - "function": null, - "subquery": null - }, - "value": "NULL" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "purchased", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "DATE", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "DEFAULT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "NULL", - "alias": null, - "function": null, - "subquery": null - }, - "value": "NULL" - } - } - } - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": "RANGE (YEAR(purchased))", - "partitionsNum": null, - "subpartitionBy": "HASH (TO_DAYS(purchased))", - "subpartitionsNum": null, - "partitions": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p0", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(1990)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "s0", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ENGINE", - "equals": true, - "expr": "InnoDB", - "value": "InnoDB" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "s1", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ENGINE", - "equals": true, - "expr": "InnoDB", - "value": "InnoDB" - } - } - } - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p1", - "type": "LESS THAN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(2000)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "s2", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ENGINE", - "equals": true, - "expr": "InnoDB", - "value": "InnoDB" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "s3", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ENGINE", - "equals": true, - "expr": "InnoDB", - "value": "InnoDB" - } - } - } - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p2", - "type": "LESS THAN", - "expr": "MAXVALUE", - "subpartitions": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "s4", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ENGINE", - "equals": true, - "expr": "InnoDB", - "value": "InnoDB" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": true, - "name": "s5", - "type": null, - "expr": null, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ENGINE", - "equals": true, - "expr": "InnoDB", - "value": "InnoDB" - } - } - } - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 161 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable8.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable8.in deleted file mode 100644 index 318f73a9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable8.in +++ /dev/null @@ -1,4 +0,0 @@ -CREATE TABLE `test1` ( - `amultipoint` multipoint DEFAULT NULL, - `amultipolygon` multipolygon DEFAULT NULL -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable8.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable8.out deleted file mode 100644 index 15592f0d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable8.out +++ /dev/null @@ -1,474 +0,0 @@ -{ - "query": "CREATE TABLE `test1` (\n `amultipoint` multipoint DEFAULT NULL,\n `amultipolygon` multipolygon DEFAULT NULL\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE `test1` (\n `amultipoint` multipoint DEFAULT NULL,\n `amultipolygon` multipolygon DEFAULT NULL\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4", - "len": 145, - "last": 145, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`test1`", - "value": "test1", - "keyword": null, - "type": 8, - "flags": 2, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`amultipoint`", - "value": "amultipoint", - "keyword": null, - "type": 8, - "flags": 2, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "multipoint", - "value": "multipoint", - "keyword": "MULTIPOINT", - "type": 1, - "flags": 41, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`amultipolygon`", - "value": "amultipolygon", - "keyword": null, - "type": 8, - "flags": 2, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "multipolygon", - "value": "multipolygon", - "keyword": "MULTIPOLYGON", - "type": 1, - "flags": 41, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENGINE", - "value": "ENGINE", - "keyword": "ENGINE", - "type": 1, - "flags": 1, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "InnoDB", - "value": "InnoDB", - "keyword": null, - "type": 0, - "flags": 0, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT CHARSET", - "value": "DEFAULT CHARSET", - "keyword": "DEFAULT CHARSET", - "type": 1, - "flags": 7, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 137 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8mb4", - "value": "utf8mb4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 35, - "idx": 35 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test1", - "column": null, - "expr": "`test1`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ENGINE", - "equals": true, - "expr": "InnoDB", - "value": "InnoDB" - }, - "4": { - "name": "DEFAULT CHARSET", - "equals": true, - "expr": "utf8mb4", - "value": "utf8mb4" - } - } - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "amultipoint", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "MULTIPOINT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "DEFAULT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "NULL", - "alias": null, - "function": null, - "subquery": null - }, - "value": "NULL" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "amultipolygon", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "MULTIPOLYGON", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "DEFAULT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "NULL", - "alias": null, - "function": null, - "subquery": null - }, - "value": "NULL" - } - } - } - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 34 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable9.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable9.in deleted file mode 100644 index 0ac22c8c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable9.in +++ /dev/null @@ -1,100 +0,0 @@ -CREATE TABLE `trips` ( - `id` bigint(20) UNSIGNED NOT NULL COMMENT 'Unique trip Id', - `trip_code` int(11) UNSIGNED NOT NULL COMMENT 'Trip code', - `trip_category` int(11) UNSIGNED NOT NULL COMMENT 'Trip category', - `trip_date` date NOT NULL COMMENT 'The trip date' -) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'The trips' PARTITION BY LIST(trip_category) SUBPARTITION BY HASH(DAY(trip_date)) SUBPARTITIONS 31 ( - PARTITION p1 - VALUES - IN(1), - PARTITION p2 - VALUES - IN(2), - PARTITION p3 - VALUES - IN(3), - PARTITION p4 - VALUES - IN(4), - PARTITION p5 - VALUES - IN(5), - PARTITION p6 - VALUES - IN(6), - PARTITION p7 - VALUES - IN(7), - PARTITION p8 - VALUES - IN(8), - PARTITION p9 - VALUES - IN(9), - PARTITION p10 - VALUES - IN(10), - PARTITION p11 - VALUES - IN(11), - PARTITION p12 - VALUES - IN(12), - PARTITION p13 - VALUES - IN(13), - PARTITION p14 - VALUES - IN(14), - PARTITION p15 - VALUES - IN(15), - PARTITION p16 - VALUES - IN(16), - PARTITION p17 - VALUES - IN(17), - PARTITION p18 - VALUES - IN(18), - PARTITION p19 - VALUES - IN(19), - PARTITION p20 - VALUES - IN(20), - PARTITION p21 - VALUES - IN(21), - PARTITION p22 - VALUES - IN(22), - PARTITION p23 - VALUES - IN(23), - PARTITION p24 - VALUES - IN(24), - PARTITION p25 - VALUES - IN(25), - PARTITION p26 - VALUES - IN(26), - PARTITION p27 - VALUES - IN(27), - PARTITION p28 - VALUES - IN(28), - PARTITION p29 - VALUES - IN(29), - PARTITION p30 - VALUES - IN(30), - PARTITION p31 - VALUES - IN(31) -); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable9.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable9.out deleted file mode 100644 index 7a9f3a58..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTable9.out +++ /dev/null @@ -1,5276 +0,0 @@ -{ - "query": "CREATE TABLE `trips` (\n `id` bigint(20) UNSIGNED NOT NULL COMMENT 'Unique trip Id',\n `trip_code` int(11) UNSIGNED NOT NULL COMMENT 'Trip code',\n `trip_category` int(11) UNSIGNED NOT NULL COMMENT 'Trip category',\n `trip_date` date NOT NULL COMMENT 'The trip date'\n) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'The trips' PARTITION BY LIST(trip_category) SUBPARTITION BY HASH(DAY(trip_date)) SUBPARTITIONS 31 (\n PARTITION p1\n VALUES\n IN(1),\n PARTITION p2\n VALUES\n IN(2),\n PARTITION p3\n VALUES\n IN(3),\n PARTITION p4\n VALUES\n IN(4),\n PARTITION p5\n VALUES\n IN(5),\n PARTITION p6\n VALUES\n IN(6),\n PARTITION p7\n VALUES\n IN(7),\n PARTITION p8\n VALUES\n IN(8),\n PARTITION p9\n VALUES\n IN(9),\n PARTITION p10\n VALUES\n IN(10),\n PARTITION p11\n VALUES\n IN(11),\n PARTITION p12\n VALUES\n IN(12),\n PARTITION p13\n VALUES\n IN(13),\n PARTITION p14\n VALUES\n IN(14),\n PARTITION p15\n VALUES\n IN(15),\n PARTITION p16\n VALUES\n IN(16),\n PARTITION p17\n VALUES\n IN(17),\n PARTITION p18\n VALUES\n IN(18),\n PARTITION p19\n VALUES\n IN(19),\n PARTITION p20\n VALUES\n IN(20),\n PARTITION p21\n VALUES\n IN(21),\n PARTITION p22\n VALUES\n IN(22),\n PARTITION p23\n VALUES\n IN(23),\n PARTITION p24\n VALUES\n IN(24),\n PARTITION p25\n VALUES\n IN(25),\n PARTITION p26\n VALUES\n IN(26),\n PARTITION p27\n VALUES\n IN(27),\n PARTITION p28\n VALUES\n IN(28),\n PARTITION p29\n VALUES\n IN(29),\n PARTITION p30\n VALUES\n IN(30),\n PARTITION p31\n VALUES\n IN(31)\n);", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE `trips` (\n `id` bigint(20) UNSIGNED NOT NULL COMMENT 'Unique trip Id',\n `trip_code` int(11) UNSIGNED NOT NULL COMMENT 'Trip code',\n `trip_category` int(11) UNSIGNED NOT NULL COMMENT 'Trip category',\n `trip_date` date NOT NULL COMMENT 'The trip date'\n) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'The trips' PARTITION BY LIST(trip_category) SUBPARTITION BY HASH(DAY(trip_date)) SUBPARTITIONS 31 (\n PARTITION p1\n VALUES\n IN(1),\n PARTITION p2\n VALUES\n IN(2),\n PARTITION p3\n VALUES\n IN(3),\n PARTITION p4\n VALUES\n IN(4),\n PARTITION p5\n VALUES\n IN(5),\n PARTITION p6\n VALUES\n IN(6),\n PARTITION p7\n VALUES\n IN(7),\n PARTITION p8\n VALUES\n IN(8),\n PARTITION p9\n VALUES\n IN(9),\n PARTITION p10\n VALUES\n IN(10),\n PARTITION p11\n VALUES\n IN(11),\n PARTITION p12\n VALUES\n IN(12),\n PARTITION p13\n VALUES\n IN(13),\n PARTITION p14\n VALUES\n IN(14),\n PARTITION p15\n VALUES\n IN(15),\n PARTITION p16\n VALUES\n IN(16),\n PARTITION p17\n VALUES\n IN(17),\n PARTITION p18\n VALUES\n IN(18),\n PARTITION p19\n VALUES\n IN(19),\n PARTITION p20\n VALUES\n IN(20),\n PARTITION p21\n VALUES\n IN(21),\n PARTITION p22\n VALUES\n IN(22),\n PARTITION p23\n VALUES\n IN(23),\n PARTITION p24\n VALUES\n IN(24),\n PARTITION p25\n VALUES\n IN(25),\n PARTITION p26\n VALUES\n IN(26),\n PARTITION p27\n VALUES\n IN(27),\n PARTITION p28\n VALUES\n IN(28),\n PARTITION p29\n VALUES\n IN(29),\n PARTITION p30\n VALUES\n IN(30),\n PARTITION p31\n VALUES\n IN(31)\n);", - "len": 1957, - "last": 1957, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`trips`", - "value": "trips", - "keyword": null, - "type": 8, - "flags": 2, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`id`", - "value": "id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "bigint", - "value": "BIGINT", - "keyword": "BIGINT", - "type": 1, - "flags": 11, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "20", - "value": 20, - "keyword": null, - "type": 6, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Unique trip Id'", - "value": "Unique trip Id", - "keyword": null, - "type": 7, - "flags": 1, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`trip_code`", - "value": "trip_code", - "keyword": null, - "type": 8, - "flags": 2, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "int", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "11", - "value": 11, - "keyword": null, - "type": 6, - "flags": 0, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Trip code'", - "value": "Trip code", - "keyword": null, - "type": 7, - "flags": 1, - "position": 137 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`trip_category`", - "value": "trip_category", - "keyword": null, - "type": 8, - "flags": 2, - "position": 154 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 169 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "int", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 170 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 173 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "11", - "value": 11, - "keyword": null, - "type": 6, - "flags": 0, - "position": 174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 176 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 178 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 186 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 187 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 195 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 196 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 203 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Trip category'", - "value": "Trip category", - "keyword": null, - "type": 7, - "flags": 1, - "position": 204 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 219 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 220 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`trip_date`", - "value": "trip_date", - "keyword": null, - "type": 8, - "flags": 2, - "position": 225 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 236 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "date", - "value": "date", - "keyword": "DATE", - "type": 1, - "flags": 41, - "position": 237 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 241 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 242 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 250 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 251 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 258 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'The trip date'", - "value": "The trip date", - "keyword": null, - "type": 7, - "flags": 1, - "position": 259 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 274 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 275 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 276 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENGINE", - "value": "ENGINE", - "keyword": "ENGINE", - "type": 1, - "flags": 1, - "position": 277 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 283 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 284 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 285 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "InnoDB", - "value": "InnoDB", - "keyword": null, - "type": 0, - "flags": 0, - "position": 286 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 292 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT CHARSET", - "value": "DEFAULT CHARSET", - "keyword": "DEFAULT CHARSET", - "type": 1, - "flags": 7, - "position": 293 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 308 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 309 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 310 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8mb4", - "value": "utf8mb4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 311 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 318 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLLATE", - "value": "COLLATE", - "keyword": "COLLATE", - "type": 1, - "flags": 3, - "position": 319 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 326 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 327 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 328 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8mb4_unicode_ci", - "value": "utf8mb4_unicode_ci", - "keyword": null, - "type": 0, - "flags": 0, - "position": 329 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 347 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 348 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 355 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 356 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 357 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'The trips'", - "value": "The trips", - "keyword": null, - "type": 7, - "flags": 1, - "position": 358 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 369 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION BY", - "value": "PARTITION BY", - "keyword": "PARTITION BY", - "type": 1, - "flags": 7, - "position": 370 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 382 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIST", - "value": "LIST", - "keyword": "LIST", - "type": 1, - "flags": 1, - "position": 383 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 387 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "trip_category", - "value": "trip_category", - "keyword": null, - "type": 0, - "flags": 0, - "position": 388 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 401 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 402 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITION BY", - "value": "SUBPARTITION BY", - "keyword": "SUBPARTITION BY", - "type": 1, - "flags": 7, - "position": 403 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 418 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "HASH", - "value": "HASH", - "keyword": "HASH", - "type": 1, - "flags": 1, - "position": 419 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 423 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DAY", - "value": "DAY", - "keyword": "DAY", - "type": 1, - "flags": 33, - "position": 424 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 427 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "trip_date", - "value": "trip_date", - "keyword": null, - "type": 0, - "flags": 0, - "position": 428 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 437 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 438 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 439 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUBPARTITIONS", - "value": "SUBPARTITIONS", - "keyword": "SUBPARTITIONS", - "type": 1, - "flags": 1, - "position": 440 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 453 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "31", - "value": 31, - "keyword": null, - "type": 6, - "flags": 0, - "position": 454 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 456 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 457 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 458 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 463 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 472 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p1", - "value": "p1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 473 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 475 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 480 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 486 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 495 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 497 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 498 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 499 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 500 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 501 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 510 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 519 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p2", - "value": "p2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 520 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 522 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 527 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 533 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 542 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 544 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 545 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 546 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 547 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 548 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 557 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 566 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p3", - "value": "p3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 567 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 569 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 574 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 580 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 589 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 591 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 592 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 593 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 594 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 595 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 604 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 613 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p4", - "value": "p4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 614 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 616 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 621 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 627 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 636 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 638 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "4", - "value": 4, - "keyword": null, - "type": 6, - "flags": 0, - "position": 639 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 640 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 641 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 642 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 651 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 660 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p5", - "value": "p5", - "keyword": null, - "type": 0, - "flags": 0, - "position": 661 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 663 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 668 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 674 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 683 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 685 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "5", - "value": 5, - "keyword": null, - "type": 6, - "flags": 0, - "position": 686 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 687 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 688 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 689 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 698 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 707 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p6", - "value": "p6", - "keyword": null, - "type": 0, - "flags": 0, - "position": 708 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 710 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 715 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 721 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 730 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 732 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "6", - "value": 6, - "keyword": null, - "type": 6, - "flags": 0, - "position": 733 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 734 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 735 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 736 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 745 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 754 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p7", - "value": "p7", - "keyword": null, - "type": 0, - "flags": 0, - "position": 755 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 757 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 762 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 768 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 777 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 779 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "7", - "value": 7, - "keyword": null, - "type": 6, - "flags": 0, - "position": 780 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 781 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 782 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 783 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 792 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 801 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p8", - "value": "p8", - "keyword": null, - "type": 0, - "flags": 0, - "position": 802 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 804 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 809 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 815 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 824 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 826 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "8", - "value": 8, - "keyword": null, - "type": 6, - "flags": 0, - "position": 827 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 828 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 829 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 830 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 839 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 848 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p9", - "value": "p9", - "keyword": null, - "type": 0, - "flags": 0, - "position": 849 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 851 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 856 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 862 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 871 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 873 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "9", - "value": 9, - "keyword": null, - "type": 6, - "flags": 0, - "position": 874 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 875 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 876 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 877 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 886 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 895 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p10", - "value": "p10", - "keyword": null, - "type": 0, - "flags": 0, - "position": 896 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 899 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 904 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 910 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 919 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 921 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 922 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 924 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 925 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 926 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 935 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 944 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p11", - "value": "p11", - "keyword": null, - "type": 0, - "flags": 0, - "position": 945 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 948 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 953 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 959 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 968 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 970 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "11", - "value": 11, - "keyword": null, - "type": 6, - "flags": 0, - "position": 971 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 973 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 974 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 975 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 984 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 993 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p12", - "value": "p12", - "keyword": null, - "type": 0, - "flags": 0, - "position": 994 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 997 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 1002 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1008 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 1017 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1019 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "12", - "value": 12, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1020 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1022 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1023 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1024 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 1033 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1042 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p13", - "value": "p13", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1043 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1046 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 1051 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1057 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 1066 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1068 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "13", - "value": 13, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1069 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1071 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1072 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1073 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 1082 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1091 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p14", - "value": "p14", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1092 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1095 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 1100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 1115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "14", - "value": 14, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 1131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p15", - "value": "p15", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1144 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 1149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 1164 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1166 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "15", - "value": 15, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1169 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1170 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1171 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 1180 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1189 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p16", - "value": "p16", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1190 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1193 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 1198 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1204 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 1213 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1215 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "16", - "value": 16, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1216 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1218 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1219 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1220 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 1229 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1238 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p17", - "value": "p17", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1239 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1242 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 1247 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1253 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 1262 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1264 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "17", - "value": 17, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1265 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1267 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1268 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1269 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 1278 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1287 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p18", - "value": "p18", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1288 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1291 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 1296 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1302 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 1311 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1313 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "18", - "value": 18, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1314 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1316 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1317 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1318 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 1327 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1336 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p19", - "value": "p19", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1337 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1340 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 1345 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1351 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 1360 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1362 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "19", - "value": 19, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1363 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1365 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1366 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1367 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 1376 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1385 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p20", - "value": "p20", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1386 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1389 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 1394 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1400 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 1409 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1411 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "20", - "value": 20, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1412 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1414 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1415 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1416 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 1425 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1434 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p21", - "value": "p21", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1435 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1438 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 1443 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1449 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 1458 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1460 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "21", - "value": 21, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1461 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1463 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1464 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1465 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 1474 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1483 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p22", - "value": "p22", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1484 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1487 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 1492 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1498 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 1507 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1509 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "22", - "value": 22, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1510 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1512 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1513 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1514 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 1523 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1532 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p23", - "value": "p23", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1533 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1536 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 1541 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1547 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 1556 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1558 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "23", - "value": 23, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1559 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1561 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1562 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1563 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 1572 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1581 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p24", - "value": "p24", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1582 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1585 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 1590 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1596 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 1605 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1607 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "24", - "value": 24, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1608 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1610 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1611 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1612 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 1621 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1630 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p25", - "value": "p25", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1631 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1634 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 1639 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1645 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 1654 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1656 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "25", - "value": 25, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1657 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1659 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1660 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1661 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 1670 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1679 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p26", - "value": "p26", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1680 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1683 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 1688 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1694 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 1703 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1705 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "26", - "value": 26, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1706 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1708 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1709 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1710 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 1719 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1728 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p27", - "value": "p27", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1729 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1732 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 1737 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1743 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 1752 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1754 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "27", - "value": 27, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1755 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1757 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1758 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1759 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 1768 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1777 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p28", - "value": "p28", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1778 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1781 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 1786 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1792 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 1801 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1803 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "28", - "value": 28, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1804 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1806 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1807 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1808 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 1817 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1826 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p29", - "value": "p29", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1827 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1830 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 1835 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1841 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 1850 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1852 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "29", - "value": 29, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1853 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1855 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1856 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1857 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 1866 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1875 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p30", - "value": "p30", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1876 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1879 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 1884 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1890 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 1899 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1901 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "30", - "value": 30, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1902 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1904 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1905 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1906 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 1915 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1924 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p31", - "value": "p31", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1925 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1928 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 1933 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1939 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 1948 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1950 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "31", - "value": 31, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1951 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1953 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1954 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1955 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 1956 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 489, - "idx": 489 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "trips", - "column": null, - "expr": "`trips`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ENGINE", - "equals": true, - "expr": "InnoDB", - "value": "InnoDB" - }, - "4": { - "name": "DEFAULT CHARSET", - "equals": true, - "expr": "utf8mb4", - "value": "utf8mb4" - }, - "6": { - "name": "COLLATE", - "equals": true, - "expr": "utf8mb4_unicode_ci", - "value": "utf8mb4_unicode_ci" - }, - "7": { - "name": "COMMENT", - "equals": true, - "expr": "'The trips'", - "value": "The trips" - } - } - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "id", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "BIGINT", - "parameters": [ - "20" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": "UNSIGNED" - } - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "5": { - "name": "COMMENT", - "equals": false, - "expr": "'Unique trip Id'", - "value": "Unique trip Id" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "trip_code", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [ - "11" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": "UNSIGNED" - } - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "5": { - "name": "COMMENT", - "equals": false, - "expr": "'Trip code'", - "value": "Trip code" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "trip_category", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [ - "11" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": "UNSIGNED" - } - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "5": { - "name": "COMMENT", - "equals": false, - "expr": "'Trip category'", - "value": "Trip category" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "trip_date", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "DATE", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "5": { - "name": "COMMENT", - "equals": false, - "expr": "'The trip date'", - "value": "The trip date" - } - } - } - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": "LIST(trip_category)", - "partitionsNum": null, - "subpartitionBy": "HASH(DAY(trip_date))", - "subpartitionsNum": 31, - "partitions": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p1", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(1)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p2", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(2)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p3", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(3)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p4", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(4)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p5", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(5)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p6", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(6)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p7", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(7)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p8", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(8)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p9", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(9)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p10", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(10)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p11", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(11)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p12", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(12)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p13", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(13)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p14", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(14)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p15", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(15)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p16", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(16)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p17", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(17)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p18", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(18)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p19", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(19)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p20", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(20)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p21", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(21)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p22", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(22)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p23", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(23)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p24", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(24)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p25", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(25)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p26", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(26)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p27", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(27)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p28", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(28)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p29", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(29)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p30", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(30)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\PartitionDefinition", - "isSubpartition": false, - "name": "p31", - "type": "IN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(31)", - "alias": null, - "function": null, - "subquery": null - }, - "subpartitions": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 486 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableAsSelect.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableAsSelect.in deleted file mode 100644 index 405a5868..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableAsSelect.in +++ /dev/null @@ -1 +0,0 @@ -CREATE TABLE new_tbl AS SELECT * FROM orig_tbl diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableAsSelect.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableAsSelect.out deleted file mode 100644 index 85e410cf..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableAsSelect.out +++ /dev/null @@ -1,268 +0,0 @@ -{ - "query": "CREATE TABLE new_tbl AS SELECT * FROM orig_tbl\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE new_tbl AS SELECT * FROM orig_tbl\n", - "len": 47, - "last": 47, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "new_tbl", - "value": "new_tbl", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "orig_tbl", - "value": "orig_tbl", - "keyword": null, - "type": 0, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 17, - "idx": 17 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "new_tbl", - "column": null, - "expr": "new_tbl", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": null, - "with": null, - "select": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "orig_tbl", - "column": null, - "expr": "orig_tbl", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 8, - "last": 15 - }, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 15 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableEnforcedCheck.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableEnforcedCheck.in deleted file mode 100644 index de990757..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableEnforcedCheck.in +++ /dev/null @@ -1 +0,0 @@ -CREATE TABLE IF NOT EXISTS employees_check (FirstName varchar(30) CHECK (FirstName REGEXP '^T' AND FirstName REGEXP 'r$') ENFORCED); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableEnforcedCheck.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableEnforcedCheck.out deleted file mode 100644 index b0047b1e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableEnforcedCheck.out +++ /dev/null @@ -1,456 +0,0 @@ -{ - "query": "CREATE TABLE IF NOT EXISTS employees_check (FirstName varchar(30) CHECK (FirstName REGEXP '^T' AND FirstName REGEXP 'r$') ENFORCED);", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE IF NOT EXISTS employees_check (FirstName varchar(30) CHECK (FirstName REGEXP '^T' AND FirstName REGEXP 'r$') ENFORCED);", - "len": 132, - "last": 132, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IF NOT EXISTS", - "value": "IF NOT EXISTS", - "keyword": "IF NOT EXISTS", - "type": 1, - "flags": 7, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "employees_check", - "value": "employees_check", - "keyword": null, - "type": 0, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FirstName", - "value": "FirstName", - "keyword": null, - "type": 0, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "varchar", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "30", - "value": 30, - "keyword": null, - "type": 6, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHECK", - "value": "CHECK", - "keyword": "CHECK", - "type": 1, - "flags": 3, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FirstName", - "value": "FirstName", - "keyword": null, - "type": 0, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REGEXP", - "value": "REGEXP", - "keyword": "REGEXP", - "type": 1, - "flags": 3, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'^T'", - "value": "^T", - "keyword": null, - "type": 7, - "flags": 1, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FirstName", - "value": "FirstName", - "keyword": null, - "type": 0, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REGEXP", - "value": "REGEXP", - "keyword": "REGEXP", - "type": 1, - "flags": 3, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'r$'", - "value": "r$", - "keyword": null, - "type": 7, - "flags": 1, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENFORCED", - "value": "ENFORCED", - "keyword": null, - "type": 0, - "flags": 0, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 38, - "idx": 38 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "employees_check", - "column": null, - "expr": "employees_check", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "FirstName", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [ - "30" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "12": { - "name": "CHECK", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(FirstName REGEXP '^T' AND FirstName REGEXP 'r$')", - "alias": null, - "function": null, - "subquery": null - }, - "value": "(FirstName REGEXP '^T' AND FirstName REGEXP 'r$')" - }, - "14": "ENFORCED" - } - } - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE", - "7": "IF NOT EXISTS" - } - }, - "first": 0, - "last": 36 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr1.in deleted file mode 100644 index 454b6022..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr1.in +++ /dev/null @@ -1,3 +0,0 @@ -CREATE TABLE IF NOT EXISTS users ( - `id` UNKNOWN -) ENGINE=InnoDB; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr1.out deleted file mode 100644 index 153d1ffa..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr1.out +++ /dev/null @@ -1,299 +0,0 @@ -{ - "query": "CREATE TABLE IF NOT EXISTS users (\n `id` UNKNOWN\n) ENGINE=InnoDB;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE IF NOT EXISTS users (\n `id` UNKNOWN\n) ENGINE=InnoDB;", - "len": 68, - "last": 68, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IF NOT EXISTS", - "value": "IF NOT EXISTS", - "keyword": "IF NOT EXISTS", - "type": 1, - "flags": 7, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "users", - "value": "users", - "keyword": null, - "type": 0, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`id`", - "value": "id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNKNOWN", - "value": "UNKNOWN", - "keyword": "UNKNOWN", - "type": 1, - "flags": 1, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENGINE", - "value": "ENGINE", - "keyword": "ENGINE", - "type": 1, - "flags": 1, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "InnoDB", - "value": "InnoDB", - "keyword": null, - "type": 0, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 21, - "idx": 21 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "users", - "column": null, - "expr": "users", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ENGINE", - "equals": true, - "expr": "InnoDB", - "value": "InnoDB" - } - } - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "id", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "UNKNOWN", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE", - "7": "IF NOT EXISTS" - } - }, - "first": 0, - "last": 19 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unrecognized data type.", - { - "@type": "@14" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr2.in deleted file mode 100644 index b88b73ed..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr2.in +++ /dev/null @@ -1 +0,0 @@ -CREATE TABLE \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr2.out deleted file mode 100644 index b075936e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr2.out +++ /dev/null @@ -1,115 +0,0 @@ -{ - "query": "CREATE TABLE", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE", - "len": 12, - "last": 12, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 4, - "idx": 4 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": null, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": [], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 3 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "The name of the entity was expected.", - { - "@type": "@5" - }, - 0 - ], - [ - "At least one column definition was expected.", - { - "@type": "@4" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr3.in deleted file mode 100644 index 2596969d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr3.in +++ /dev/null @@ -1 +0,0 @@ -CREATE TABLE `table_copy` LIKE ; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr3.out deleted file mode 100644 index 5cdc9f9e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr3.out +++ /dev/null @@ -1,168 +0,0 @@ -{ - "query": "CREATE TABLE `table_copy` LIKE ;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE `table_copy` LIKE ;", - "len": 32, - "last": 32, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`table_copy`", - "value": "table_copy", - "keyword": null, - "type": 8, - "flags": 2, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIKE", - "value": "LIKE", - "keyword": "LIKE", - "type": 1, - "flags": 3, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 10 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table_copy", - "column": null, - "expr": "`table_copy`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": null, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 8 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "A table name was expected.", - { - "@type": "@10" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr4.in deleted file mode 100644 index 19bb0132..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr4.in +++ /dev/null @@ -1 +0,0 @@ -CREATE TABLE new_table (INT VARCHAR(50) DEFAULT NULL); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr4.out deleted file mode 100644 index ee48a52d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr4.out +++ /dev/null @@ -1,282 +0,0 @@ -{ - "query": "CREATE TABLE new_table (INT VARCHAR(50) DEFAULT NULL);", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE new_table (INT VARCHAR(50) DEFAULT NULL);", - "len": 54, - "last": 54, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "new_table", - "value": "new_table", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VARCHAR", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "50", - "value": 50, - "keyword": null, - "type": 6, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 20, - "idx": 20 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "new_table", - "column": null, - "expr": "new_table", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": [], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 10 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "A symbol name was expected! A reserved keyword can not be used as a column name without backquotes.", - { - "@type": "@9" - }, - 0 - ], - [ - "At least one column definition was expected.", - { - "@type": "@9" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@13" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@16" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr5.in deleted file mode 100644 index c6f2214f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr5.in +++ /dev/null @@ -1 +0,0 @@ -CREATE TABLE new_table (666 VARCHAR(50) DEFAULT NULL); diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr5.out deleted file mode 100644 index c67895ec..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableErr5.out +++ /dev/null @@ -1,291 +0,0 @@ -{ - "query": "CREATE TABLE new_table (666 VARCHAR(50) DEFAULT NULL);\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE new_table (666 VARCHAR(50) DEFAULT NULL);\n", - "len": 55, - "last": 55, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "new_table", - "value": "new_table", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "666", - "value": 666, - "keyword": null, - "type": 6, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VARCHAR", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "50", - "value": 50, - "keyword": null, - "type": 6, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 21, - "idx": 21 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "new_table", - "column": null, - "expr": "new_table", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": [], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 10 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "A symbol name was expected!", - { - "@type": "@9" - }, - 0 - ], - [ - "At least one column definition was expected.", - { - "@type": "@9" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@13" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@16" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableLike.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableLike.in deleted file mode 100644 index 07528edf..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableLike.in +++ /dev/null @@ -1 +0,0 @@ -CREATE TABLE `table_copy` LIKE `old_table`; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableLike.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableLike.out deleted file mode 100644 index 19af6182..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableLike.out +++ /dev/null @@ -1,178 +0,0 @@ -{ - "query": "CREATE TABLE `table_copy` LIKE `old_table`;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE `table_copy` LIKE `old_table`;", - "len": 43, - "last": 43, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`table_copy`", - "value": "table_copy", - "keyword": null, - "type": 8, - "flags": 2, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIKE", - "value": "LIKE", - "keyword": "LIKE", - "type": 1, - "flags": 3, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`old_table`", - "value": "old_table", - "keyword": null, - "type": 8, - "flags": 2, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 11, - "idx": 11 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table_copy", - "column": null, - "expr": "`table_copy`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": null, - "with": null, - "select": null, - "like": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "old_table", - "column": null, - "expr": "`old_table`", - "alias": null, - "function": null, - "subquery": null - }, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 8 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableNotEnforcedCheck.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableNotEnforcedCheck.in deleted file mode 100644 index 1eb24baf..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableNotEnforcedCheck.in +++ /dev/null @@ -1 +0,0 @@ -CREATE TABLE IF NOT EXISTS employees_check (FirstName varchar(30) CHECK (FirstName REGEXP '^T' AND FirstName REGEXP 'r$') NOT ENFORCED); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableNotEnforcedCheck.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableNotEnforcedCheck.out deleted file mode 100644 index f8e34ae5..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableNotEnforcedCheck.out +++ /dev/null @@ -1,475 +0,0 @@ -{ - "query": "CREATE TABLE IF NOT EXISTS employees_check (FirstName varchar(30) CHECK (FirstName REGEXP '^T' AND FirstName REGEXP 'r$') NOT ENFORCED);", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE IF NOT EXISTS employees_check (FirstName varchar(30) CHECK (FirstName REGEXP '^T' AND FirstName REGEXP 'r$') NOT ENFORCED);", - "len": 136, - "last": 136, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IF NOT EXISTS", - "value": "IF NOT EXISTS", - "keyword": "IF NOT EXISTS", - "type": 1, - "flags": 7, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "employees_check", - "value": "employees_check", - "keyword": null, - "type": 0, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FirstName", - "value": "FirstName", - "keyword": null, - "type": 0, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "varchar", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "30", - "value": 30, - "keyword": null, - "type": 6, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHECK", - "value": "CHECK", - "keyword": "CHECK", - "type": 1, - "flags": 3, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FirstName", - "value": "FirstName", - "keyword": null, - "type": 0, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REGEXP", - "value": "REGEXP", - "keyword": "REGEXP", - "type": 1, - "flags": 3, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'^T'", - "value": "^T", - "keyword": null, - "type": 7, - "flags": 1, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FirstName", - "value": "FirstName", - "keyword": null, - "type": 0, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REGEXP", - "value": "REGEXP", - "keyword": "REGEXP", - "type": 1, - "flags": 3, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'r$'", - "value": "r$", - "keyword": null, - "type": 7, - "flags": 1, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT", - "value": "NOT", - "keyword": "NOT", - "type": 1, - "flags": 3, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENFORCED", - "value": "ENFORCED", - "keyword": null, - "type": 0, - "flags": 0, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 134 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 40, - "idx": 40 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "employees_check", - "column": null, - "expr": "employees_check", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "FirstName", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [ - "30" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "12": { - "name": "CHECK", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(FirstName REGEXP '^T' AND FirstName REGEXP 'r$')", - "alias": null, - "function": null, - "subquery": null - }, - "value": "(FirstName REGEXP '^T' AND FirstName REGEXP 'r$')" - }, - "15": "NOT", - "14": "ENFORCED" - } - } - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE", - "7": "IF NOT EXISTS" - } - }, - "first": 0, - "last": 38 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableSRID.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableSRID.in deleted file mode 100644 index 1fbcbf9d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableSRID.in +++ /dev/null @@ -1,7 +0,0 @@ -CREATE TABLE IF NOT EXISTS `public_areas` ( - `id` INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, - `kind` enum('COUNTRY','REGION','DEPARTMENT','MUNICIPALITY') NOT NULL, - `area` geometry NOT NULL SRID 4326, - `properties` json NOT NULL, - `title` varchar(100) NOT NULL -); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableSRID.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableSRID.out deleted file mode 100644 index 4093100c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableSRID.out +++ /dev/null @@ -1,823 +0,0 @@ -{ - "query": "CREATE TABLE IF NOT EXISTS `public_areas` (\n `id` INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,\n `kind` enum('COUNTRY','REGION','DEPARTMENT','MUNICIPALITY') NOT NULL,\n `area` geometry NOT NULL SRID 4326,\n `properties` json NOT NULL,\n `title` varchar(100) NOT NULL\n);", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE IF NOT EXISTS `public_areas` (\n `id` INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,\n `kind` enum('COUNTRY','REGION','DEPARTMENT','MUNICIPALITY') NOT NULL,\n `area` geometry NOT NULL SRID 4326,\n `properties` json NOT NULL,\n `title` varchar(100) NOT NULL\n);", - "len": 275, - "last": 275, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IF NOT EXISTS", - "value": "IF NOT EXISTS", - "keyword": "IF NOT EXISTS", - "type": 1, - "flags": 7, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`public_areas`", - "value": "public_areas", - "keyword": null, - "type": 8, - "flags": 2, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`id`", - "value": "id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PRIMARY KEY", - "value": "PRIMARY KEY", - "keyword": "PRIMARY KEY", - "type": 1, - "flags": 23, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AUTO_INCREMENT", - "value": "AUTO_INCREMENT", - "keyword": "AUTO_INCREMENT", - "type": 1, - "flags": 1, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`kind`", - "value": "kind", - "keyword": null, - "type": 8, - "flags": 2, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "enum", - "value": "enum", - "keyword": "ENUM", - "type": 1, - "flags": 9, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'COUNTRY'", - "value": "COUNTRY", - "keyword": null, - "type": 7, - "flags": 1, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'REGION'", - "value": "REGION", - "keyword": null, - "type": 7, - "flags": 1, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'DEPARTMENT'", - "value": "DEPARTMENT", - "keyword": null, - "type": 7, - "flags": 1, - "position": 134 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'MUNICIPALITY'", - "value": "MUNICIPALITY", - "keyword": null, - "type": 7, - "flags": 1, - "position": 147 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 162 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 163 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 171 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 172 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`area`", - "value": "area", - "keyword": null, - "type": 8, - "flags": 2, - "position": 175 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 181 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "geometry", - "value": "geometry", - "keyword": "GEOMETRY", - "type": 1, - "flags": 9, - "position": 182 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 190 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 191 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 199 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SRID", - "value": "SRID", - "keyword": "SRID", - "type": 1, - "flags": 33, - "position": 200 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 204 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "4326", - "value": 4326, - "keyword": null, - "type": 6, - "flags": 0, - "position": 205 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 209 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 210 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`properties`", - "value": "properties", - "keyword": null, - "type": 8, - "flags": 2, - "position": 213 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 225 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "json", - "value": "json", - "keyword": "JSON", - "type": 1, - "flags": 9, - "position": 226 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 230 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 231 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 239 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 240 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`title`", - "value": "title", - "keyword": null, - "type": 8, - "flags": 2, - "position": 243 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 250 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "varchar", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 251 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 258 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "100", - "value": 100, - "keyword": null, - "type": 6, - "flags": 0, - "position": 259 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 262 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 263 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 264 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 272 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 273 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 274 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 69, - "idx": 69 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "public_areas", - "column": null, - "expr": "`public_areas`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "id", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": "UNSIGNED" - } - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "4": "PRIMARY KEY", - "3": "AUTO_INCREMENT" - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "kind", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "ENUM", - "parameters": [ - "'COUNTRY'", - "'REGION'", - "'DEPARTMENT'", - "'MUNICIPALITY'" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL" - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "area", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "GEOMETRY", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "17": { - "name": "SRID", - "equals": false, - "expr": "4326", - "value": "4326" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "properties", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "JSON", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL" - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "title", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [ - "100" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL" - } - } - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE", - "7": "IF NOT EXISTS" - } - }, - "first": 0, - "last": 67 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableSelect.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableSelect.in deleted file mode 100644 index 59ff219f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableSelect.in +++ /dev/null @@ -1 +0,0 @@ -CREATE TABLE new_tbl SELECT * FROM orig_tbl diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableSelect.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableSelect.out deleted file mode 100644 index c03f9af7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableSelect.out +++ /dev/null @@ -1,250 +0,0 @@ -{ - "query": "CREATE TABLE new_tbl SELECT * FROM orig_tbl\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE new_tbl SELECT * FROM orig_tbl\n", - "len": 44, - "last": 44, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "new_tbl", - "value": "new_tbl", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "orig_tbl", - "value": "orig_tbl", - "keyword": null, - "type": 0, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 15, - "idx": 15 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "new_tbl", - "column": null, - "expr": "new_tbl", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": null, - "with": null, - "select": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "orig_tbl", - "column": null, - "expr": "orig_tbl", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 6, - "last": 13 - }, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 13 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableSpatial.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableSpatial.in deleted file mode 100644 index ca76430b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableSpatial.in +++ /dev/null @@ -1 +0,0 @@ -CREATE TABLE `xss`.`gis` ( `x` POINT NOT NULL ) ENGINE = InnoDB; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableSpatial.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableSpatial.out deleted file mode 100644 index e2308366..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableSpatial.out +++ /dev/null @@ -1,328 +0,0 @@ -{ - "query": "CREATE TABLE `xss`.`gis` ( `x` POINT NOT NULL ) ENGINE = InnoDB;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE `xss`.`gis` ( `x` POINT NOT NULL ) ENGINE = InnoDB;", - "len": 64, - "last": 64, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`xss`", - "value": "xss", - "keyword": null, - "type": 8, - "flags": 2, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`gis`", - "value": "gis", - "keyword": null, - "type": 8, - "flags": 2, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`x`", - "value": "x", - "keyword": null, - "type": 8, - "flags": 2, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "POINT", - "value": "POINT", - "keyword": "POINT", - "type": 1, - "flags": 41, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENGINE", - "value": "ENGINE", - "keyword": "ENGINE", - "type": 1, - "flags": 1, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "InnoDB", - "value": "InnoDB", - "keyword": null, - "type": 0, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 25, - "idx": 25 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "xss", - "table": "gis", - "column": null, - "expr": "`xss`.`gis`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ENGINE", - "equals": true, - "expr": "InnoDB", - "value": "InnoDB" - } - } - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "x", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "POINT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL" - } - } - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 23 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableTimestampWithPrecision.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableTimestampWithPrecision.in deleted file mode 100644 index 11760a53..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableTimestampWithPrecision.in +++ /dev/null @@ -1,5 +0,0 @@ -CREATE TABLE `aa` ( - `id` int(11) NOT NULL, - `rTime` timestamp(3) NOT NULL DEFAULT '0000-00-00 00:00:00.000' ON UPDATE CURRENT_TIMESTAMP(3), - PRIMARY KEY (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableTimestampWithPrecision.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableTimestampWithPrecision.out deleted file mode 100644 index c0d606f5..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableTimestampWithPrecision.out +++ /dev/null @@ -1,692 +0,0 @@ -{ - "query": "CREATE TABLE `aa` (\n `id` int(11) NOT NULL,\n `rTime` timestamp(3) NOT NULL DEFAULT '0000-00-00 00:00:00.000' ON UPDATE CURRENT_TIMESTAMP(3),\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=latin1;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE `aa` (\n `id` int(11) NOT NULL,\n `rTime` timestamp(3) NOT NULL DEFAULT '0000-00-00 00:00:00.000' ON UPDATE CURRENT_TIMESTAMP(3),\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=latin1;", - "len": 203, - "last": 203, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`aa`", - "value": "aa", - "keyword": null, - "type": 8, - "flags": 2, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`id`", - "value": "id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "int", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "11", - "value": 11, - "keyword": null, - "type": 6, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`rTime`", - "value": "rTime", - "keyword": null, - "type": 8, - "flags": 2, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "timestamp", - "value": "timestamp", - "keyword": "TIMESTAMP", - "type": 1, - "flags": 41, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'0000-00-00 00:00:00.000'", - "value": "0000-00-00 00:00:00.000", - "keyword": null, - "type": 7, - "flags": 1, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON UPDATE", - "value": "ON UPDATE", - "keyword": "ON UPDATE", - "type": 1, - "flags": 7, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CURRENT_TIMESTAMP", - "value": "CURRENT_TIMESTAMP", - "keyword": "CURRENT_TIMESTAMP", - "type": 1, - "flags": 35, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PRIMARY KEY", - "value": "PRIMARY KEY", - "keyword": "PRIMARY KEY", - "type": 1, - "flags": 23, - "position": 145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`id`", - "value": "id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 162 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 163 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 164 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 165 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENGINE", - "value": "ENGINE", - "keyword": "ENGINE", - "type": 1, - "flags": 1, - "position": 166 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 172 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "InnoDB", - "value": "InnoDB", - "keyword": null, - "type": 0, - "flags": 0, - "position": 173 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 179 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT CHARSET", - "value": "DEFAULT CHARSET", - "keyword": "DEFAULT CHARSET", - "type": 1, - "flags": 7, - "position": 180 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 195 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "latin1", - "value": "latin1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 196 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 202 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 56, - "idx": 56 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "aa", - "column": null, - "expr": "`aa`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ENGINE", - "equals": true, - "expr": "InnoDB", - "value": "InnoDB" - }, - "4": { - "name": "DEFAULT CHARSET", - "equals": true, - "expr": "latin1", - "value": "latin1" - } - } - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "id", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [ - "11" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL" - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "rTime", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "TIMESTAMP", - "parameters": [ - "3" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "2": { - "name": "DEFAULT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "0000-00-00 00:00:00.000", - "expr": "'0000-00-00 00:00:00.000'", - "alias": null, - "function": null, - "subquery": null - }, - "value": "'0000-00-00 00:00:00.000'" - }, - "7": { - "name": "ON UPDATE", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "CURRENT_TIMESTAMP(3)", - "alias": null, - "function": "CURRENT_TIMESTAMP", - "subquery": null - }, - "value": "CURRENT_TIMESTAMP(3)" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": null, - "isConstraint": null, - "type": null, - "key": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", - "name": null, - "columns": [ - { - "name": "id" - } - ], - "type": "PRIMARY KEY", - "expr": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "references": null, - "options": null - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 54 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableWithInvisibleKey.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableWithInvisibleKey.in deleted file mode 100644 index da363fc2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableWithInvisibleKey.in +++ /dev/null @@ -1,12 +0,0 @@ -CREATE TABLE `animes_comments` ( - `anime_comment_id` bigint unsigned NOT NULL AUTO_INCREMENT, - `anime_id` bigint unsigned NOT NULL, - `user_id` bigint unsigned NOT NULL, - `comment_text` varchar(500) COLLATE utf8mb4_general_ci DEFAULT NULL, - `comment_at` datetime DEFAULT NULL, - PRIMARY KEY (`anime_comment_id`), - KEY `animes_comments_animes_fk` (`anime_id`) invisible, - KEY `animes_comments_users_fk` (`user_id`), - KEY `comment_at_idx` (`comment_at`) , - CONSTRAINT `animes_comments_animes_fk` FOREIGN KEY (`anime_id`) REFERENCES `animes` (`anime_id`) ON DELETE CASCADE ON UPDATE RESTRICT, - CONSTRAINT `animes_comments_users_fk` FOREIGN KEY (`user_id`) REFERENCES `users` (`user_id`) ON DELETE CASCADE ON UPDATE RESTRICT) \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableWithInvisibleKey.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableWithInvisibleKey.out deleted file mode 100644 index 95bf4609..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableWithInvisibleKey.out +++ /dev/null @@ -1,1809 +0,0 @@ -{ - "query": "CREATE TABLE `animes_comments` (\n `anime_comment_id` bigint unsigned NOT NULL AUTO_INCREMENT,\n `anime_id` bigint unsigned NOT NULL,\n `user_id` bigint unsigned NOT NULL,\n `comment_text` varchar(500) COLLATE utf8mb4_general_ci DEFAULT NULL,\n `comment_at` datetime DEFAULT NULL,\n PRIMARY KEY (`anime_comment_id`),\n KEY `animes_comments_animes_fk` (`anime_id`) invisible,\n KEY `animes_comments_users_fk` (`user_id`),\n KEY `comment_at_idx` (`comment_at`) ,\n CONSTRAINT `animes_comments_animes_fk` FOREIGN KEY (`anime_id`) REFERENCES `animes` (`anime_id`) ON DELETE CASCADE ON UPDATE RESTRICT,\n CONSTRAINT `animes_comments_users_fk` FOREIGN KEY (`user_id`) REFERENCES `users` (`user_id`) ON DELETE CASCADE ON UPDATE RESTRICT)", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE `animes_comments` (\n `anime_comment_id` bigint unsigned NOT NULL AUTO_INCREMENT,\n `anime_id` bigint unsigned NOT NULL,\n `user_id` bigint unsigned NOT NULL,\n `comment_text` varchar(500) COLLATE utf8mb4_general_ci DEFAULT NULL,\n `comment_at` datetime DEFAULT NULL,\n PRIMARY KEY (`anime_comment_id`),\n KEY `animes_comments_animes_fk` (`anime_id`) invisible,\n KEY `animes_comments_users_fk` (`user_id`),\n KEY `comment_at_idx` (`comment_at`) ,\n CONSTRAINT `animes_comments_animes_fk` FOREIGN KEY (`anime_id`) REFERENCES `animes` (`anime_id`) ON DELETE CASCADE ON UPDATE RESTRICT,\n CONSTRAINT `animes_comments_users_fk` FOREIGN KEY (`user_id`) REFERENCES `users` (`user_id`) ON DELETE CASCADE ON UPDATE RESTRICT)", - "len": 730, - "last": 730, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`animes_comments`", - "value": "animes_comments", - "keyword": null, - "type": 8, - "flags": 2, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`anime_comment_id`", - "value": "anime_comment_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "bigint", - "value": "BIGINT", - "keyword": "BIGINT", - "type": 1, - "flags": 11, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "unsigned", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AUTO_INCREMENT", - "value": "AUTO_INCREMENT", - "keyword": "AUTO_INCREMENT", - "type": 1, - "flags": 1, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`anime_id`", - "value": "anime_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "bigint", - "value": "BIGINT", - "keyword": "BIGINT", - "type": 1, - "flags": 11, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "unsigned", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`user_id`", - "value": "user_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "bigint", - "value": "BIGINT", - "keyword": "BIGINT", - "type": 1, - "flags": 11, - "position": 146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "unsigned", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 153 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 162 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 170 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 171 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`comment_text`", - "value": "comment_text", - "keyword": null, - "type": 8, - "flags": 2, - "position": 174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 188 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "varchar", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 189 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 196 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "500", - "value": 500, - "keyword": null, - "type": 6, - "flags": 0, - "position": 197 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 200 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 201 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLLATE", - "value": "COLLATE", - "keyword": "COLLATE", - "type": 1, - "flags": 3, - "position": 202 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 209 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8mb4_general_ci", - "value": "utf8mb4_general_ci", - "keyword": null, - "type": 0, - "flags": 0, - "position": 210 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 228 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 229 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 236 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 237 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 241 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 242 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`comment_at`", - "value": "comment_at", - "keyword": null, - "type": 8, - "flags": 2, - "position": 245 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 257 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "datetime", - "value": "datetime", - "keyword": "DATETIME", - "type": 1, - "flags": 9, - "position": 258 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 266 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 267 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 274 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 275 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 279 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 280 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PRIMARY KEY", - "value": "PRIMARY KEY", - "keyword": "PRIMARY KEY", - "type": 1, - "flags": 23, - "position": 283 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 294 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 295 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`anime_comment_id`", - "value": "anime_comment_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 296 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 314 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 315 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 316 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KEY", - "value": "KEY", - "keyword": "KEY", - "type": 1, - "flags": 19, - "position": 319 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 322 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`animes_comments_animes_fk`", - "value": "animes_comments_animes_fk", - "keyword": null, - "type": 8, - "flags": 2, - "position": 323 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 350 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 351 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`anime_id`", - "value": "anime_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 352 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 362 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 363 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "invisible", - "value": "invisible", - "keyword": null, - "type": 0, - "flags": 0, - "position": 364 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 373 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 374 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KEY", - "value": "KEY", - "keyword": "KEY", - "type": 1, - "flags": 19, - "position": 377 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 380 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`animes_comments_users_fk`", - "value": "animes_comments_users_fk", - "keyword": null, - "type": 8, - "flags": 2, - "position": 381 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 407 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 408 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`user_id`", - "value": "user_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 409 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 418 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 419 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 420 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KEY", - "value": "KEY", - "keyword": "KEY", - "type": 1, - "flags": 19, - "position": 423 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 426 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`comment_at_idx`", - "value": "comment_at_idx", - "keyword": null, - "type": 8, - "flags": 2, - "position": 427 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 443 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 444 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`comment_at`", - "value": "comment_at", - "keyword": null, - "type": 8, - "flags": 2, - "position": 445 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 457 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 458 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 459 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 460 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CONSTRAINT", - "value": "CONSTRAINT", - "keyword": "CONSTRAINT", - "type": 1, - "flags": 3, - "position": 463 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 473 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`animes_comments_animes_fk`", - "value": "animes_comments_animes_fk", - "keyword": null, - "type": 8, - "flags": 2, - "position": 474 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 501 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FOREIGN KEY", - "value": "FOREIGN KEY", - "keyword": "FOREIGN KEY", - "type": 1, - "flags": 23, - "position": 502 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 513 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 514 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`anime_id`", - "value": "anime_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 515 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 525 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 526 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REFERENCES", - "value": "REFERENCES", - "keyword": "REFERENCES", - "type": 1, - "flags": 3, - "position": 527 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 537 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`animes`", - "value": "animes", - "keyword": null, - "type": 8, - "flags": 2, - "position": 538 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 546 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 547 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`anime_id`", - "value": "anime_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 548 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 558 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 559 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON DELETE", - "value": "ON DELETE", - "keyword": "ON DELETE", - "type": 1, - "flags": 7, - "position": 560 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 569 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CASCADE", - "value": "CASCADE", - "keyword": "CASCADE", - "type": 1, - "flags": 3, - "position": 570 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 577 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON UPDATE", - "value": "ON UPDATE", - "keyword": "ON UPDATE", - "type": 1, - "flags": 7, - "position": 578 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 587 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RESTRICT", - "value": "RESTRICT", - "keyword": "RESTRICT", - "type": 1, - "flags": 3, - "position": 588 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 596 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 597 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CONSTRAINT", - "value": "CONSTRAINT", - "keyword": "CONSTRAINT", - "type": 1, - "flags": 3, - "position": 600 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 610 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`animes_comments_users_fk`", - "value": "animes_comments_users_fk", - "keyword": null, - "type": 8, - "flags": 2, - "position": 611 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 637 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FOREIGN KEY", - "value": "FOREIGN KEY", - "keyword": "FOREIGN KEY", - "type": 1, - "flags": 23, - "position": 638 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 649 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 650 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`user_id`", - "value": "user_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 651 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 660 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 661 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REFERENCES", - "value": "REFERENCES", - "keyword": "REFERENCES", - "type": 1, - "flags": 3, - "position": 662 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 672 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`users`", - "value": "users", - "keyword": null, - "type": 8, - "flags": 2, - "position": 673 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 680 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 681 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`user_id`", - "value": "user_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 682 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 691 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 692 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON DELETE", - "value": "ON DELETE", - "keyword": "ON DELETE", - "type": 1, - "flags": 7, - "position": 693 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 702 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CASCADE", - "value": "CASCADE", - "keyword": "CASCADE", - "type": 1, - "flags": 3, - "position": 703 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 710 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON UPDATE", - "value": "ON UPDATE", - "keyword": "ON UPDATE", - "type": 1, - "flags": 7, - "position": 711 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 720 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RESTRICT", - "value": "RESTRICT", - "keyword": "RESTRICT", - "type": 1, - "flags": 3, - "position": 721 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 729 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 153, - "idx": 153 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "animes_comments", - "column": null, - "expr": "`animes_comments`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "anime_comment_id", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "BIGINT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": "UNSIGNED" - } - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "3": "AUTO_INCREMENT" - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "anime_id", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "BIGINT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": "UNSIGNED" - } - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL" - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "user_id", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "BIGINT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": "UNSIGNED" - } - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL" - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "comment_text", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [ - "500" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": { - "name": "COLLATE", - "equals": false, - "expr": "utf8mb4_general_ci", - "value": "utf8mb4_general_ci" - } - } - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "DEFAULT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "NULL", - "alias": null, - "function": null, - "subquery": null - }, - "value": "NULL" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "comment_at", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "DATETIME", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "DEFAULT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "NULL", - "alias": null, - "function": null, - "subquery": null - }, - "value": "NULL" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": null, - "isConstraint": null, - "type": null, - "key": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", - "name": null, - "columns": [ - { - "name": "anime_comment_id" - } - ], - "type": "PRIMARY KEY", - "expr": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "references": null, - "options": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": null, - "isConstraint": null, - "type": null, - "key": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", - "name": "animes_comments_animes_fk", - "columns": [ - { - "name": "anime_id" - } - ], - "type": "KEY", - "expr": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "invisible" - } - } - }, - "references": null, - "options": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": null, - "isConstraint": null, - "type": null, - "key": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", - "name": "animes_comments_users_fk", - "columns": [ - { - "name": "user_id" - } - ], - "type": "KEY", - "expr": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "references": null, - "options": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": null, - "isConstraint": null, - "type": null, - "key": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", - "name": "comment_at_idx", - "columns": [ - { - "name": "comment_at" - } - ], - "type": "KEY", - "expr": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "references": null, - "options": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "animes_comments_animes_fk", - "isConstraint": true, - "type": null, - "key": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", - "name": null, - "columns": [ - { - "name": "anime_id" - } - ], - "type": "FOREIGN KEY", - "expr": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "references": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Reference", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "animes", - "column": null, - "expr": "`animes`", - "alias": null, - "function": null, - "subquery": null - }, - "columns": [ - "anime_id" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "ON DELETE", - "equals": false, - "expr": "CASCADE", - "value": "CASCADE" - }, - "3": { - "name": "ON UPDATE", - "equals": false, - "expr": "RESTRICT", - "value": "RESTRICT" - } - } - } - }, - "options": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "animes_comments_users_fk", - "isConstraint": true, - "type": null, - "key": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", - "name": null, - "columns": [ - { - "name": "user_id" - } - ], - "type": "FOREIGN KEY", - "expr": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "references": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Reference", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "users", - "column": null, - "expr": "`users`", - "alias": null, - "function": null, - "subquery": null - }, - "columns": [ - "user_id" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "ON DELETE", - "equals": false, - "expr": "CASCADE", - "value": "CASCADE" - }, - "3": { - "name": "ON UPDATE", - "equals": false, - "expr": "RESTRICT", - "value": "RESTRICT" - } - } - } - }, - "options": null - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 152 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableWithParser.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableWithParser.in deleted file mode 100644 index 90d27dd6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableWithParser.in +++ /dev/null @@ -1,5 +0,0 @@ -CREATE TABLE `mytable` ( - `column_one` VARCHAR(255) DEFAULT NULL, - FULLTEXT KEY `fulltext_index` (`column_one`) /*!50100 WITH PARSER `ngram` */, - CONSTRAINT `my_constraint_1` FOREIGN KEY (`column_one`) REFERENCES `other_table` (`column_two`) ON DELETE RESTRICT ON UPDATE RESTRICT -) diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableWithParser.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableWithParser.out deleted file mode 100644 index 160c7734..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTableWithParser.out +++ /dev/null @@ -1,791 +0,0 @@ -{ - "query": "CREATE TABLE `mytable` (\n `column_one` VARCHAR(255) DEFAULT NULL,\n FULLTEXT KEY `fulltext_index` (`column_one`) /*!50100 WITH PARSER `ngram` */,\n CONSTRAINT `my_constraint_1` FOREIGN KEY (`column_one`) REFERENCES `other_table` (`column_two`) ON DELETE RESTRICT ON UPDATE RESTRICT\n)\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE `mytable` (\n `column_one` VARCHAR(255) DEFAULT NULL,\n FULLTEXT KEY `fulltext_index` (`column_one`) /*!50100 WITH PARSER `ngram` */,\n CONSTRAINT `my_constraint_1` FOREIGN KEY (`column_one`) REFERENCES `other_table` (`column_two`) ON DELETE RESTRICT ON UPDATE RESTRICT\n)\n", - "len": 285, - "last": 285, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`mytable`", - "value": "mytable", - "keyword": null, - "type": 8, - "flags": 2, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`column_one`", - "value": "column_one", - "keyword": null, - "type": 8, - "flags": 2, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VARCHAR", - "value": "VARCHAR", - "keyword": "VARCHAR", - "type": 1, - "flags": 11, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "255", - "value": 255, - "keyword": null, - "type": 6, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FULLTEXT KEY", - "value": "FULLTEXT KEY", - "keyword": "FULLTEXT KEY", - "type": 1, - "flags": 23, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`fulltext_index`", - "value": "fulltext_index", - "keyword": null, - "type": 8, - "flags": 2, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`column_one`", - "value": "column_one", - "keyword": null, - "type": 8, - "flags": 2, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/*!50100", - "value": "/*!50100", - "keyword": null, - "type": 4, - "flags": 10, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH PARSER", - "value": "WITH PARSER", - "keyword": "WITH PARSER", - "type": 1, - "flags": 7, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 134 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`ngram`", - "value": "ngram", - "keyword": null, - "type": 8, - "flags": 2, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*/", - "value": "*/", - "keyword": null, - "type": 4, - "flags": 2, - "position": 143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CONSTRAINT", - "value": "CONSTRAINT", - "keyword": "CONSTRAINT", - "type": 1, - "flags": 3, - "position": 149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 159 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`my_constraint_1`", - "value": "my_constraint_1", - "keyword": null, - "type": 8, - "flags": 2, - "position": 160 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FOREIGN KEY", - "value": "FOREIGN KEY", - "keyword": "FOREIGN KEY", - "type": 1, - "flags": 23, - "position": 178 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 189 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 190 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`column_one`", - "value": "column_one", - "keyword": null, - "type": 8, - "flags": 2, - "position": 191 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 203 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 204 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REFERENCES", - "value": "REFERENCES", - "keyword": "REFERENCES", - "type": 1, - "flags": 3, - "position": 205 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 215 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`other_table`", - "value": "other_table", - "keyword": null, - "type": 8, - "flags": 2, - "position": 216 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 229 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 230 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`column_two`", - "value": "column_two", - "keyword": null, - "type": 8, - "flags": 2, - "position": 231 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 243 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 244 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON DELETE", - "value": "ON DELETE", - "keyword": "ON DELETE", - "type": 1, - "flags": 7, - "position": 245 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 254 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RESTRICT", - "value": "RESTRICT", - "keyword": "RESTRICT", - "type": 1, - "flags": 3, - "position": 255 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 263 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON UPDATE", - "value": "ON UPDATE", - "keyword": "ON UPDATE", - "type": 1, - "flags": 7, - "position": 264 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 273 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RESTRICT", - "value": "RESTRICT", - "keyword": "RESTRICT", - "type": 1, - "flags": 3, - "position": 274 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 282 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 283 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 284 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 66, - "idx": 66 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "mytable", - "column": null, - "expr": "`mytable`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "column_one", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "VARCHAR", - "parameters": [ - "255" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "DEFAULT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "NULL", - "alias": null, - "function": null, - "subquery": null - }, - "value": "NULL" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": null, - "isConstraint": null, - "type": null, - "key": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", - "name": "fulltext_index", - "columns": [ - { - "name": "column_one" - } - ], - "type": "FULLTEXT KEY", - "expr": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": { - "name": "WITH PARSER", - "equals": false, - "expr": "`ngram`", - "value": "ngram" - } - } - } - }, - "references": null, - "options": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "my_constraint_1", - "isConstraint": true, - "type": null, - "key": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", - "name": null, - "columns": [ - { - "name": "column_one" - } - ], - "type": "FOREIGN KEY", - "expr": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "references": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Reference", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "other_table", - "column": null, - "expr": "`other_table`", - "alias": null, - "function": null, - "subquery": null - }, - "columns": [ - "column_two" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "ON DELETE", - "equals": false, - "expr": "RESTRICT", - "value": "RESTRICT" - }, - "3": { - "name": "ON UPDATE", - "equals": false, - "expr": "RESTRICT", - "value": "RESTRICT" - } - } - } - }, - "options": null - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 65 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTrigger.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTrigger.in deleted file mode 100644 index 041a516c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTrigger.in +++ /dev/null @@ -1,2 +0,0 @@ -CREATE TRIGGER ins_sum BEFORE INSERT ON account -FOR EACH ROW BEGIN SET @sum = @sum + NEW.amount END \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTrigger.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTrigger.out deleted file mode 100644 index ea9feec4..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateTrigger.out +++ /dev/null @@ -1,443 +0,0 @@ -{ - "query": "CREATE TRIGGER ins_sum BEFORE INSERT ON account\nFOR EACH ROW BEGIN SET @sum = @sum + NEW.amount END", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TRIGGER ins_sum BEFORE INSERT ON account\nFOR EACH ROW BEGIN SET @sum = @sum + NEW.amount END", - "len": 99, - "last": 99, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TRIGGER", - "value": "TRIGGER", - "keyword": "TRIGGER", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ins_sum", - "value": "ins_sum", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BEFORE", - "value": "BEFORE", - "keyword": "BEFORE", - "type": 1, - "flags": 3, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "account", - "value": "account", - "keyword": "ACCOUNT", - "type": 1, - "flags": 1, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FOR EACH ROW", - "value": "FOR EACH ROW", - "keyword": "FOR EACH ROW", - "type": 1, - "flags": 7, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BEGIN", - "value": "BEGIN", - "keyword": "BEGIN", - "type": 1, - "flags": 1, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@sum", - "value": "sum", - "keyword": null, - "type": 8, - "flags": 1, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@sum", - "value": "sum", - "keyword": null, - "type": 8, - "flags": 1, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+", - "value": "+", - "keyword": null, - "type": 2, - "flags": 1, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NEW", - "value": "NEW", - "keyword": "NEW", - "type": 1, - "flags": 1, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "amount", - "value": "amount", - "keyword": null, - "type": 0, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "END", - "value": "END", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 34, - "idx": 34 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "ins_sum", - "column": null, - "expr": "ins_sum", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "BEFORE", - "2": "INSERT" - } - }, - "fields": null, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "account", - "column": null, - "expr": "account", - "alias": null, - "function": null, - "subquery": null - }, - "return": null, - "parameters": null, - "body": [ - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - }, - { - "@type": "@27" - }, - { - "@type": "@28" - }, - { - "@type": "@29" - }, - { - "@type": "@30" - }, - { - "@type": "@31" - }, - { - "@type": "@32" - }, - { - "@type": "@33" - }, - { - "@type": "@34" - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TRIGGER" - } - }, - "first": 0, - "last": 33 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateUser1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateUser1.in deleted file mode 100644 index 336646a8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateUser1.in +++ /dev/null @@ -1 +0,0 @@ -CREATE USER test \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateUser1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateUser1.out deleted file mode 100644 index 10ff9277..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateUser1.out +++ /dev/null @@ -1,124 +0,0 @@ -{ - "query": "CREATE USER test", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE USER test", - "len": 16, - "last": 16, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USER", - "value": "USER", - "keyword": "USER", - "type": 1, - "flags": 33, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 6, - "idx": 6 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test", - "column": null, - "expr": "test", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": null, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "USER" - } - }, - "first": 0, - "last": 5 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateUser2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateUser2.in deleted file mode 100644 index 07bfca5d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateUser2.in +++ /dev/null @@ -1,4 +0,0 @@ -CREATE USER 'bob'@'localhost' - IDENTIFIED VIA mysql_native_password USING PASSWORD('vp8LAf4#wu2V&Wi*iJWC#3KPotsHzx3u') - OR unix_socket; - diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateUser2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateUser2.out deleted file mode 100644 index 28ce5678..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateUser2.out +++ /dev/null @@ -1,344 +0,0 @@ -{ - "query": "CREATE USER 'bob'@'localhost' \n IDENTIFIED VIA mysql_native_password USING PASSWORD('vp8LAf4#wu2V&Wi*iJWC#3KPotsHzx3u') \n OR unix_socket;\n\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE USER 'bob'@'localhost' \n IDENTIFIED VIA mysql_native_password USING PASSWORD('vp8LAf4#wu2V&Wi*iJWC#3KPotsHzx3u') \n OR unix_socket;\n\n", - "len": 141, - "last": 141, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USER", - "value": "USER", - "keyword": "USER", - "type": 1, - "flags": 33, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'bob'@'localhost'", - "value": "bob@localhost", - "keyword": null, - "type": 8, - "flags": 4, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " \n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IDENTIFIED", - "value": "IDENTIFIED", - "keyword": "IDENTIFIED", - "type": 1, - "flags": 1, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VIA", - "value": "VIA", - "keyword": null, - "type": 0, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mysql_native_password", - "value": "mysql_native_password", - "keyword": null, - "type": 0, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PASSWORD", - "value": "PASSWORD", - "keyword": "PASSWORD", - "type": 1, - "flags": 33, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'vp8LAf4#wu2V&Wi*iJWC#3KPotsHzx3u'", - "value": "vp8LAf4#wu2V&Wi*iJWC#3KPotsHzx3u", - "keyword": null, - "type": 7, - "flags": 1, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " \n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OR", - "value": "OR", - "keyword": "OR", - "type": 1, - "flags": 3, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "unix_socket", - "value": "unix_socket", - "keyword": null, - "type": 0, - "flags": 0, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 25, - "idx": 25 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "bob@localhost", - "column": null, - "expr": "'bob'@'localhost'", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": null, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [ - { - "@type": "@8" - }, - { - "@type": "@9" - }, - { - "@type": "@10" - }, - { - "@type": "@11" - }, - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "USER" - } - }, - "first": 0, - "last": 22 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView.in deleted file mode 100644 index 1bd25ed8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView.in +++ /dev/null @@ -1 +0,0 @@ -CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY INVOKER VIEW `sakila`.`actor_info` AS select `a`.`actor_id` AS `actor_id`,`a`.`first_name` AS `first_name`,`a`.`last_name` AS `last_name`,group_concat(distinct concat(`c`.`name`,': ',(select group_concat(`f`.`title` order by `f`.`title` ASC separator ', ') from ((`sakila`.`film` `f` join `sakila`.`film_category` `fc` on((`f`.`film_id` = `fc`.`film_id`))) join `sakila`.`film_actor` `fa` on((`f`.`film_id` = `fa`.`film_id`))) where ((`fc`.`category_id` = `c`.`category_id`) and (`fa`.`actor_id` = `a`.`actor_id`)))) order by `c`.`name` ASC separator '; ') AS `film_info` from (((`sakila`.`actor` `a` left join `sakila`.`film_actor` `fa` on((`a`.`actor_id` = `fa`.`actor_id`))) left join `sakila`.`film_category` `fc` on((`fa`.`film_id` = `fc`.`film_id`))) left join `sakila`.`category` `c` on((`fc`.`category_id` = `c`.`category_id`))) group by `a`.`actor_id`,`a`.`first_name`,`a`.`last_name` \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView.out deleted file mode 100644 index 79a501a4..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView.out +++ /dev/null @@ -1,2789 +0,0 @@ -{ - "query": "CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY INVOKER VIEW `sakila`.`actor_info` AS select `a`.`actor_id` AS `actor_id`,`a`.`first_name` AS `first_name`,`a`.`last_name` AS `last_name`,group_concat(distinct concat(`c`.`name`,': ',(select group_concat(`f`.`title` order by `f`.`title` ASC separator ', ') from ((`sakila`.`film` `f` join `sakila`.`film_category` `fc` on((`f`.`film_id` = `fc`.`film_id`))) join `sakila`.`film_actor` `fa` on((`f`.`film_id` = `fa`.`film_id`))) where ((`fc`.`category_id` = `c`.`category_id`) and (`fa`.`actor_id` = `a`.`actor_id`)))) order by `c`.`name` ASC separator '; ') AS `film_info` from (((`sakila`.`actor` `a` left join `sakila`.`film_actor` `fa` on((`a`.`actor_id` = `fa`.`actor_id`))) left join `sakila`.`film_category` `fc` on((`fa`.`film_id` = `fc`.`film_id`))) left join `sakila`.`category` `c` on((`fc`.`category_id` = `c`.`category_id`))) group by `a`.`actor_id`,`a`.`first_name`,`a`.`last_name`", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY INVOKER VIEW `sakila`.`actor_info` AS select `a`.`actor_id` AS `actor_id`,`a`.`first_name` AS `first_name`,`a`.`last_name` AS `last_name`,group_concat(distinct concat(`c`.`name`,': ',(select group_concat(`f`.`title` order by `f`.`title` ASC separator ', ') from ((`sakila`.`film` `f` join `sakila`.`film_category` `fc` on((`f`.`film_id` = `fc`.`film_id`))) join `sakila`.`film_actor` `fa` on((`f`.`film_id` = `fa`.`film_id`))) where ((`fc`.`category_id` = `c`.`category_id`) and (`fa`.`actor_id` = `a`.`actor_id`)))) order by `c`.`name` ASC separator '; ') AS `film_info` from (((`sakila`.`actor` `a` left join `sakila`.`film_actor` `fa` on((`a`.`actor_id` = `fa`.`actor_id`))) left join `sakila`.`film_category` `fc` on((`fa`.`film_id` = `fc`.`film_id`))) left join `sakila`.`category` `c` on((`fc`.`category_id` = `c`.`category_id`))) group by `a`.`actor_id`,`a`.`first_name`,`a`.`last_name`", - "len": 960, - "last": 960, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALGORITHM", - "value": "ALGORITHM", - "keyword": "ALGORITHM", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNDEFINED", - "value": "UNDEFINED", - "keyword": "UNDEFINED", - "type": 1, - "flags": 1, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFINER", - "value": "DEFINER", - "keyword": "DEFINER", - "type": 1, - "flags": 1, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`root`@`localhost`", - "value": "root@localhost", - "keyword": null, - "type": 8, - "flags": 4, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SQL SECURITY", - "value": "SQL SECURITY", - "keyword": "SQL SECURITY", - "type": 1, - "flags": 7, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INVOKER", - "value": "INVOKER", - "keyword": "INVOKER", - "type": 1, - "flags": 1, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VIEW", - "value": "VIEW", - "keyword": "VIEW", - "type": 1, - "flags": 1, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`sakila`", - "value": "sakila", - "keyword": null, - "type": 8, - "flags": 2, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`actor_info`", - "value": "actor_info", - "keyword": null, - "type": 8, - "flags": 2, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`a`", - "value": "a", - "keyword": null, - "type": 8, - "flags": 2, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`actor_id`", - "value": "actor_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`actor_id`", - "value": "actor_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`a`", - "value": "a", - "keyword": null, - "type": 8, - "flags": 2, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 144 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`first_name`", - "value": "first_name", - "keyword": null, - "type": 8, - "flags": 2, - "position": 145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 160 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`first_name`", - "value": "first_name", - "keyword": null, - "type": 8, - "flags": 2, - "position": 161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 173 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`a`", - "value": "a", - "keyword": null, - "type": 8, - "flags": 2, - "position": 174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`last_name`", - "value": "last_name", - "keyword": null, - "type": 8, - "flags": 2, - "position": 178 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 189 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 190 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 192 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`last_name`", - "value": "last_name", - "keyword": null, - "type": 8, - "flags": 2, - "position": 193 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 204 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "group_concat", - "value": "group_concat", - "keyword": "GROUP_CONCAT", - "type": 1, - "flags": 33, - "position": 205 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 217 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "distinct", - "value": "DISTINCT", - "keyword": "DISTINCT", - "type": 1, - "flags": 3, - "position": 218 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 226 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "concat", - "value": "concat", - "keyword": "CONCAT", - "type": 1, - "flags": 33, - "position": 227 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 233 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`c`", - "value": "c", - "keyword": null, - "type": 8, - "flags": 2, - "position": 234 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 237 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`name`", - "value": "name", - "keyword": null, - "type": 8, - "flags": 2, - "position": 238 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 244 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "': '", - "value": ": ", - "keyword": null, - "type": 7, - "flags": 1, - "position": 245 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 249 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 250 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 251 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 257 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "group_concat", - "value": "group_concat", - "keyword": "GROUP_CONCAT", - "type": 1, - "flags": 33, - "position": 258 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 270 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`f`", - "value": "f", - "keyword": null, - "type": 8, - "flags": 2, - "position": 271 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 274 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`title`", - "value": "title", - "keyword": null, - "type": 8, - "flags": 2, - "position": 275 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 282 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "order by", - "value": "ORDER BY", - "keyword": "ORDER BY", - "type": 1, - "flags": 7, - "position": 283 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 291 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`f`", - "value": "f", - "keyword": null, - "type": 8, - "flags": 2, - "position": 292 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 295 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`title`", - "value": "title", - "keyword": null, - "type": 8, - "flags": 2, - "position": 296 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 303 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ASC", - "value": "ASC", - "keyword": "ASC", - "type": 1, - "flags": 3, - "position": 304 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 307 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "separator", - "value": "SEPARATOR", - "keyword": "SEPARATOR", - "type": 1, - "flags": 3, - "position": 308 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 317 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "', '", - "value": ", ", - "keyword": null, - "type": 7, - "flags": 1, - "position": 318 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 322 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 323 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "from", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 324 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 328 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 329 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 330 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`sakila`", - "value": "sakila", - "keyword": null, - "type": 8, - "flags": 2, - "position": 331 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 339 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`film`", - "value": "film", - "keyword": null, - "type": 8, - "flags": 2, - "position": 340 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 346 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`f`", - "value": "f", - "keyword": null, - "type": 8, - "flags": 2, - "position": 347 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 350 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "join", - "value": "JOIN", - "keyword": "JOIN", - "type": 1, - "flags": 3, - "position": 351 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 355 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`sakila`", - "value": "sakila", - "keyword": null, - "type": 8, - "flags": 2, - "position": 356 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 364 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`film_category`", - "value": "film_category", - "keyword": null, - "type": 8, - "flags": 2, - "position": 365 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 380 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`fc`", - "value": "fc", - "keyword": null, - "type": 8, - "flags": 2, - "position": 381 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 385 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "on", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 386 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 388 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 389 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`f`", - "value": "f", - "keyword": null, - "type": 8, - "flags": 2, - "position": 390 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 393 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`film_id`", - "value": "film_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 394 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 403 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 404 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 405 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`fc`", - "value": "fc", - "keyword": null, - "type": 8, - "flags": 2, - "position": 406 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 410 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`film_id`", - "value": "film_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 411 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 420 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 421 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 422 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 423 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "join", - "value": "JOIN", - "keyword": "JOIN", - "type": 1, - "flags": 3, - "position": 424 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 428 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`sakila`", - "value": "sakila", - "keyword": null, - "type": 8, - "flags": 2, - "position": 429 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 437 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`film_actor`", - "value": "film_actor", - "keyword": null, - "type": 8, - "flags": 2, - "position": 438 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 450 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`fa`", - "value": "fa", - "keyword": null, - "type": 8, - "flags": 2, - "position": 451 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 455 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "on", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 456 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 458 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 459 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`f`", - "value": "f", - "keyword": null, - "type": 8, - "flags": 2, - "position": 460 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 463 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`film_id`", - "value": "film_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 464 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 473 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 474 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 475 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`fa`", - "value": "fa", - "keyword": null, - "type": 8, - "flags": 2, - "position": 476 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 480 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`film_id`", - "value": "film_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 481 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 490 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 491 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 492 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 493 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "where", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 494 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 499 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 500 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 501 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`fc`", - "value": "fc", - "keyword": null, - "type": 8, - "flags": 2, - "position": 502 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 506 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`category_id`", - "value": "category_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 507 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 520 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 521 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 522 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`c`", - "value": "c", - "keyword": null, - "type": 8, - "flags": 2, - "position": 523 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 526 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`category_id`", - "value": "category_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 527 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 540 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 541 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "and", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 542 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 545 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 546 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`fa`", - "value": "fa", - "keyword": null, - "type": 8, - "flags": 2, - "position": 547 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 551 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`actor_id`", - "value": "actor_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 552 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 562 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 563 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 564 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`a`", - "value": "a", - "keyword": null, - "type": 8, - "flags": 2, - "position": 565 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 568 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`actor_id`", - "value": "actor_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 569 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 579 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 580 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 581 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 582 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 583 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "order by", - "value": "ORDER BY", - "keyword": "ORDER BY", - "type": 1, - "flags": 7, - "position": 584 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 592 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`c`", - "value": "c", - "keyword": null, - "type": 8, - "flags": 2, - "position": 593 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 596 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`name`", - "value": "name", - "keyword": null, - "type": 8, - "flags": 2, - "position": 597 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 603 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ASC", - "value": "ASC", - "keyword": "ASC", - "type": 1, - "flags": 3, - "position": 604 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 607 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "separator", - "value": "SEPARATOR", - "keyword": "SEPARATOR", - "type": 1, - "flags": 3, - "position": 608 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 617 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'; '", - "value": "; ", - "keyword": null, - "type": 7, - "flags": 1, - "position": 618 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 622 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 623 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 624 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 626 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`film_info`", - "value": "film_info", - "keyword": null, - "type": 8, - "flags": 2, - "position": 627 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 638 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "from", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 639 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 643 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 644 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 645 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 646 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`sakila`", - "value": "sakila", - "keyword": null, - "type": 8, - "flags": 2, - "position": 647 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 655 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`actor`", - "value": "actor", - "keyword": null, - "type": 8, - "flags": 2, - "position": 656 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 663 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`a`", - "value": "a", - "keyword": null, - "type": 8, - "flags": 2, - "position": 664 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 667 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "left join", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 668 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 677 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`sakila`", - "value": "sakila", - "keyword": null, - "type": 8, - "flags": 2, - "position": 678 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 686 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`film_actor`", - "value": "film_actor", - "keyword": null, - "type": 8, - "flags": 2, - "position": 687 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 699 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`fa`", - "value": "fa", - "keyword": null, - "type": 8, - "flags": 2, - "position": 700 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 704 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "on", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 705 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 707 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 708 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`a`", - "value": "a", - "keyword": null, - "type": 8, - "flags": 2, - "position": 709 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 712 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`actor_id`", - "value": "actor_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 713 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 723 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 724 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 725 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`fa`", - "value": "fa", - "keyword": null, - "type": 8, - "flags": 2, - "position": 726 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 730 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`actor_id`", - "value": "actor_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 731 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 741 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 742 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 743 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 744 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "left join", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 745 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 754 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`sakila`", - "value": "sakila", - "keyword": null, - "type": 8, - "flags": 2, - "position": 755 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 763 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`film_category`", - "value": "film_category", - "keyword": null, - "type": 8, - "flags": 2, - "position": 764 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 779 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`fc`", - "value": "fc", - "keyword": null, - "type": 8, - "flags": 2, - "position": 780 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 784 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "on", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 785 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 787 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 788 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`fa`", - "value": "fa", - "keyword": null, - "type": 8, - "flags": 2, - "position": 789 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 793 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`film_id`", - "value": "film_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 794 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 803 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 804 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 805 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`fc`", - "value": "fc", - "keyword": null, - "type": 8, - "flags": 2, - "position": 806 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 810 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`film_id`", - "value": "film_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 811 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 820 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 821 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 822 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 823 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "left join", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 824 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 833 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`sakila`", - "value": "sakila", - "keyword": null, - "type": 8, - "flags": 2, - "position": 834 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 842 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`category`", - "value": "category", - "keyword": null, - "type": 8, - "flags": 2, - "position": 843 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 853 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`c`", - "value": "c", - "keyword": null, - "type": 8, - "flags": 2, - "position": 854 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 857 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "on", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 858 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 860 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 861 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`fc`", - "value": "fc", - "keyword": null, - "type": 8, - "flags": 2, - "position": 862 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 866 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`category_id`", - "value": "category_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 867 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 880 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 881 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 882 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`c`", - "value": "c", - "keyword": null, - "type": 8, - "flags": 2, - "position": 883 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 886 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`category_id`", - "value": "category_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 887 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 900 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 901 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 902 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 903 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "group by", - "value": "GROUP BY", - "keyword": "GROUP BY", - "type": 1, - "flags": 7, - "position": 904 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 912 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`a`", - "value": "a", - "keyword": null, - "type": 8, - "flags": 2, - "position": 913 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 916 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`actor_id`", - "value": "actor_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 917 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 927 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`a`", - "value": "a", - "keyword": null, - "type": 8, - "flags": 2, - "position": 928 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 931 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`first_name`", - "value": "first_name", - "keyword": null, - "type": 8, - "flags": 2, - "position": 932 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 944 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`a`", - "value": "a", - "keyword": null, - "type": 8, - "flags": 2, - "position": 945 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 948 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`last_name`", - "value": "last_name", - "keyword": null, - "type": 8, - "flags": 2, - "position": 949 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 286, - "idx": 286 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "sakila", - "table": "actor_info", - "column": null, - "expr": "`sakila`.`actor_info`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": null, - "with": null, - "select": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": "actor_id", - "expr": "`a`.`actor_id`", - "alias": "actor_id", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": "first_name", - "expr": "`a`.`first_name`", - "alias": "first_name", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": "last_name", - "expr": "`a`.`last_name`", - "alias": "last_name", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "group_concat(distinct concat(`c`.`name`,': ',(select group_concat(`f`.`title` order by `f`.`title` ASC separator ', ') from ((`sakila`.`film` `f` join `sakila`.`film_category` `fc` on((`f`.`film_id` = `fc`.`film_id`))) join `sakila`.`film_actor` `fa` on((`f`.`film_id` = `fa`.`film_id`))) where ((`fc`.`category_id` = `c`.`category_id`) and (`fa`.`actor_id` = `a`.`actor_id`)))) order by `c`.`name` ASC separator '; ')", - "alias": "film_info", - "function": "group_concat", - "subquery": "SELECT" - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(((`sakila`.`actor` `a` left join `sakila`.`film_actor` `fa` on((`a`.`actor_id` = `fa`.`actor_id`))) left join `sakila`.`film_category` `fc` on((`fa`.`film_id` = `fc`.`film_id`))) left join `sakila`.`category` `c` on((`fc`.`category_id` = `c`.`category_id`)))", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\GroupKeyword", - "type": null, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": "actor_id", - "expr": "`a`.`actor_id`", - "alias": null, - "function": null, - "subquery": null - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\GroupKeyword", - "type": null, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": "first_name", - "expr": "`a`.`first_name`", - "alias": null, - "function": null, - "subquery": null - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\GroupKeyword", - "type": null, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": "last_name", - "expr": "`a`.`last_name`", - "alias": null, - "function": null, - "subquery": null - } - } - ], - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 22, - "last": 284 - }, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": { - "name": "ALGORITHM", - "equals": true, - "expr": "UNDEFINED", - "value": "UNDEFINED" - }, - "4": { - "name": "DEFINER", - "equals": true, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "root@localhost", - "expr": "`root`@`localhost`", - "alias": null, - "function": null, - "subquery": null - }, - "value": "`root`@`localhost`" - }, - "5": { - "name": "SQL SECURITY", - "equals": false, - "expr": "INVOKER", - "value": "INVOKER" - }, - "6": "VIEW" - } - }, - "first": 0, - "last": 285 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView2.in deleted file mode 100644 index 7e64abc3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView2.in +++ /dev/null @@ -1,2 +0,0 @@ -CREATE VIEW myView (vid, vfirstname) AS -SELECT id, first_name FROM employee WHERE id = 1; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView2.out deleted file mode 100644 index ac14dd2b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView2.out +++ /dev/null @@ -1,453 +0,0 @@ -{ - "query": "CREATE VIEW myView (vid, vfirstname) AS\nSELECT id, first_name FROM employee WHERE id = 1;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE VIEW myView (vid, vfirstname) AS\nSELECT id, first_name FROM employee WHERE id = 1;", - "len": 89, - "last": 89, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VIEW", - "value": "VIEW", - "keyword": "VIEW", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "myView", - "value": "myView", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "vid", - "value": "vid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "vfirstname", - "value": "vfirstname", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "first_name", - "value": "first_name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "employee", - "value": "employee", - "keyword": null, - "type": 0, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 35, - "idx": 35 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "myView", - "column": null, - "expr": "myView", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "vid", - "vfirstname" - ], - "values": [ - "vid", - "vfirstname" - ] - }, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [ - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - }, - { - "@type": "@27" - }, - { - "@type": "@28" - }, - { - "@type": "@29" - }, - { - "@type": "@30" - }, - { - "@type": "@31" - }, - { - "@type": "@32" - }, - { - "@type": "@33" - }, - { - "@type": "@34" - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "VIEW" - } - }, - "first": 0, - "last": 33 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView3.in deleted file mode 100644 index 5de3a133..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView3.in +++ /dev/null @@ -1,5 +0,0 @@ -CREATE VIEW GoodStudent AS - SELECT `one space`, `two spaces` - FROM `Une table espace` - WHERE `one space` > 3.0 - WITH CHECK OPTION diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView3.out deleted file mode 100644 index 4fa299ef..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView3.out +++ /dev/null @@ -1,467 +0,0 @@ -{ - "query": "CREATE VIEW GoodStudent AS\n SELECT `one space`, `two spaces`\n FROM `Une table espace`\n WHERE `one space` > 3.0\n WITH CHECK OPTION\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE VIEW GoodStudent AS\n SELECT `one space`, `two spaces`\n FROM `Une table espace`\n WHERE `one space` > 3.0\n WITH CHECK OPTION\n", - "len": 148, - "last": 148, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VIEW", - "value": "VIEW", - "keyword": "VIEW", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "GoodStudent", - "value": "GoodStudent", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`one space`", - "value": "one space", - "keyword": null, - "type": 8, - "flags": 2, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`two spaces`", - "value": "two spaces", - "keyword": null, - "type": 8, - "flags": 2, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`Une table espace`", - "value": "Une table espace", - "keyword": null, - "type": 8, - "flags": 2, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`one space`", - "value": "one space", - "keyword": null, - "type": 8, - "flags": 2, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ">", - "value": ">", - "keyword": null, - "type": 2, - "flags": 2, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3.0", - "value": 3.0, - "keyword": null, - "type": 6, - "flags": 2, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 134 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHECK", - "value": "CHECK", - "keyword": "CHECK", - "type": 1, - "flags": 3, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OPTION", - "value": "OPTION", - "keyword": "OPTION", - "type": 1, - "flags": 3, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 147 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 34, - "idx": 34 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "GoodStudent", - "column": null, - "expr": "GoodStudent", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": null, - "with": null, - "select": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "one space", - "expr": "`one space`", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "two spaces", - "expr": "`two spaces`", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "Une table espace", - "column": null, - "expr": "`Une table espace`", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "one space" - ], - "isOperator": false, - "expr": "`one space` > 3.0" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 8, - "last": 26 - }, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [ - { - "@type": "@29" - }, - { - "@type": "@30" - }, - { - "@type": "@31" - }, - { - "@type": "@32" - }, - { - "@type": "@33" - }, - { - "@type": "@34" - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "VIEW" - } - }, - "first": 0, - "last": 33 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "A new statement was found, but no delimiter between it and the previous one.", - { - "@type": "@29" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView4.in deleted file mode 100644 index dfa6fbfb..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView4.in +++ /dev/null @@ -1 +0,0 @@ -CREATE VIEW v (mycol) AS SELECT 'abc'; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView4.out deleted file mode 100644 index 3c32e77a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView4.out +++ /dev/null @@ -1,253 +0,0 @@ -{ - "query": "CREATE VIEW v (mycol) AS SELECT 'abc';\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE VIEW v (mycol) AS SELECT 'abc';\n", - "len": 39, - "last": 39, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VIEW", - "value": "VIEW", - "keyword": "VIEW", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "v", - "value": "v", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mycol", - "value": "mycol", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'abc'", - "value": "abc", - "keyword": null, - "type": 7, - "flags": 1, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 18, - "idx": 18 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "v", - "column": null, - "expr": "v", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "mycol" - ], - "values": [ - "mycol" - ] - }, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [ - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "VIEW" - } - }, - "first": 0, - "last": 15 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView5.in deleted file mode 100644 index 5aa2b1bb..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView5.in +++ /dev/null @@ -1 +0,0 @@ -CREATE VIEW `t3` as SELECT `t1` IS NOT NULL AS `is_not_null` FROM `test3`; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView5.out deleted file mode 100644 index 31fb8515..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateView5.out +++ /dev/null @@ -1,349 +0,0 @@ -{ - "query": "CREATE VIEW `t3` as SELECT `t1` IS NOT NULL AS `is_not_null` FROM `test3`;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE VIEW `t3` as SELECT `t1` IS NOT NULL AS `is_not_null` FROM `test3`;\n", - "len": 75, - "last": 75, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VIEW", - "value": "VIEW", - "keyword": "VIEW", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`t3`", - "value": "t3", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`t1`", - "value": "t1", - "keyword": null, - "type": 8, - "flags": 2, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IS", - "value": "IS", - "keyword": "IS", - "type": 1, - "flags": 3, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`is_not_null`", - "value": "is_not_null", - "keyword": null, - "type": 8, - "flags": 2, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`test3`", - "value": "test3", - "keyword": null, - "type": 8, - "flags": 2, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 26, - "idx": 26 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "t3", - "column": null, - "expr": "`t3`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": null, - "with": null, - "select": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "t1", - "expr": "`t1` IS NOT NULL", - "alias": "is_not_null", - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test3", - "column": null, - "expr": "`test3`", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 8, - "last": 22 - }, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "VIEW" - } - }, - "first": 0, - "last": 23 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewAsWithAs.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewAsWithAs.in deleted file mode 100644 index 9b983036..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewAsWithAs.in +++ /dev/null @@ -1,25 +0,0 @@ --- create first view -CREATE VIEW withclause AS - -WITH cte AS ( - SELECT p.name, p.shape - FROM gis_all as p -) - -SELECT cte.* -FROM cte -CROSS JOIN gis_all; --- create second view -CREATE VIEW withclause2 AS - -WITH cte AS ( - SELECT p.name, p.shape - FROM gis_all as p -), cte2 AS ( - SELECT p.name as n2, p.shape as sh2 - FROM gis_all as p -) - -SELECT cte.*,cte2.* -FROM cte,cte2 -CROSS JOIN gis_all; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewAsWithAs.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewAsWithAs.out deleted file mode 100644 index 15d7b520..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewAsWithAs.out +++ /dev/null @@ -1,2479 +0,0 @@ -{ - "query": "-- create first view\nCREATE VIEW withclause AS\n\nWITH cte AS (\n SELECT p.name, p.shape\n FROM gis_all as p\n)\n\nSELECT cte.*\nFROM cte\nCROSS JOIN gis_all;\n-- create second view\nCREATE VIEW withclause2 AS\n\nWITH cte AS (\n SELECT p.name, p.shape\n FROM gis_all as p\n), cte2 AS (\n SELECT p.name as n2, p.shape as sh2\n FROM gis_all as p\n)\n\nSELECT cte.*,cte2.*\nFROM cte,cte2\nCROSS JOIN gis_all;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "-- create first view\nCREATE VIEW withclause AS\n\nWITH cte AS (\n SELECT p.name, p.shape\n FROM gis_all as p\n)\n\nSELECT cte.*\nFROM cte\nCROSS JOIN gis_all;\n-- create second view\nCREATE VIEW withclause2 AS\n\nWITH cte AS (\n SELECT p.name, p.shape\n FROM gis_all as p\n), cte2 AS (\n SELECT p.name as n2, p.shape as sh2\n FROM gis_all as p\n)\n\nSELECT cte.*,cte2.*\nFROM cte,cte2\nCROSS JOIN gis_all;", - "len": 388, - "last": 388, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- create first view", - "value": "-- create first view", - "keyword": null, - "type": 4, - "flags": 4, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VIEW", - "value": "VIEW", - "keyword": "VIEW", - "type": 1, - "flags": 1, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "withclause", - "value": "withclause", - "keyword": null, - "type": 0, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p", - "value": "p", - "keyword": null, - "type": 0, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 0, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p", - "value": "p", - "keyword": null, - "type": 0, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "shape", - "value": "shape", - "keyword": null, - "type": 0, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "gis_all", - "value": "gis_all", - "keyword": null, - "type": 0, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p", - "value": "p", - "keyword": null, - "type": 0, - "flags": 0, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CROSS JOIN", - "value": "CROSS JOIN", - "keyword": "CROSS JOIN", - "type": 1, - "flags": 7, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "gis_all", - "value": "gis_all", - "keyword": null, - "type": 0, - "flags": 0, - "position": 143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 150 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- create second view", - "value": "-- create second view", - "keyword": null, - "type": 4, - "flags": 4, - "position": 152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 173 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 180 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VIEW", - "value": "VIEW", - "keyword": "VIEW", - "type": 1, - "flags": 1, - "position": 181 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 185 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "withclause2", - "value": "withclause2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 186 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 197 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 198 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 200 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 202 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 206 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 207 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 210 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 211 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 213 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 214 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 215 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 218 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 224 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p", - "value": "p", - "keyword": null, - "type": 0, - "flags": 0, - "position": 225 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 226 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 0, - "flags": 0, - "position": 227 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 231 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 232 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p", - "value": "p", - "keyword": null, - "type": 0, - "flags": 0, - "position": 233 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 234 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "shape", - "value": "shape", - "keyword": null, - "type": 0, - "flags": 0, - "position": 235 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 240 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 243 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 247 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "gis_all", - "value": "gis_all", - "keyword": null, - "type": 0, - "flags": 0, - "position": 248 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 255 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 256 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 258 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p", - "value": "p", - "keyword": null, - "type": 0, - "flags": 0, - "position": 259 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 260 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 261 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 262 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 263 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte2", - "value": "cte2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 264 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 268 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 269 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 271 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 272 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 273 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 276 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 282 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p", - "value": "p", - "keyword": null, - "type": 0, - "flags": 0, - "position": 283 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 284 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 0, - "flags": 0, - "position": 285 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 289 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 290 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 292 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "n2", - "value": "n2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 293 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 295 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 296 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p", - "value": "p", - "keyword": null, - "type": 0, - "flags": 0, - "position": 297 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 298 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "shape", - "value": "shape", - "keyword": null, - "type": 0, - "flags": 0, - "position": 299 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 304 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 305 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 307 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "sh2", - "value": "sh2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 308 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 311 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 314 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 318 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "gis_all", - "value": "gis_all", - "keyword": null, - "type": 0, - "flags": 0, - "position": 319 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 326 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 327 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 329 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p", - "value": "p", - "keyword": null, - "type": 0, - "flags": 0, - "position": 330 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 331 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 332 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 333 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 335 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 341 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 342 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 345 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 346 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 347 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte2", - "value": "cte2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 348 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 352 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 353 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 354 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 355 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 359 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 360 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 363 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte2", - "value": "cte2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 364 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 368 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CROSS JOIN", - "value": "CROSS JOIN", - "keyword": "CROSS JOIN", - "type": 1, - "flags": 7, - "position": 369 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 379 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "gis_all", - "value": "gis_all", - "keyword": null, - "type": 0, - "flags": 0, - "position": 380 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 387 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 150, - "idx": 150 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "withclause", - "column": null, - "expr": "withclause", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": null, - "with": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\WithStatement", - "withers": { - "cte": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\WithKeyword", - "name": "cte", - "columns": [], - "statement": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - }, - { - "@type": "@27" - }, - { - "@type": "@28" - }, - { - "@type": "@29" - }, - { - "@type": "@30" - }, - { - "@type": "@31" - }, - { - "@type": "@32" - }, - { - "@type": "@33" - }, - { - "@type": "@34" - }, - { - "@type": "@35" - }, - { - "@type": "@36" - }, - { - "@type": "@37" - }, - { - "@type": "@38" - } - ], - "count": 20, - "idx": 20 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "p", - "column": "name", - "expr": "p.name", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "p", - "column": "shape", - "expr": "p.shape", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "gis_all", - "column": null, - "expr": "gis_all", - "alias": "p", - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 19 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - } - } - }, - "cteStatementParser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@41" - }, - { - "@type": "@42" - }, - { - "@type": "@43" - }, - { - "@type": "@44" - }, - { - "@type": "@45" - }, - { - "@type": "@46" - }, - { - "@type": "@47" - }, - { - "@type": "@48" - }, - { - "@type": "@49" - }, - { - "@type": "@50" - }, - { - "@type": "@51" - }, - { - "@type": "@52" - }, - { - "@type": "@53" - }, - { - "@type": "@54" - }, - { - "@type": "@55" - }, - { - "@type": "@56" - }, - { - "@type": "@57" - }, - { - "@type": "@58" - }, - { - "@type": "@59" - }, - { - "@type": "@60" - }, - { - "@type": "@61" - }, - { - "@type": "@62" - }, - { - "@type": "@63" - }, - { - "@type": "@64" - }, - { - "@type": "@65" - }, - { - "@type": "@66" - }, - { - "@type": "@67" - }, - { - "@type": "@68" - }, - { - "@type": "@69" - }, - { - "@type": "@70" - }, - { - "@type": "@71" - }, - { - "@type": "@72" - }, - { - "@type": "@73" - }, - { - "@type": "@74" - }, - { - "@type": "@75" - }, - { - "@type": "@76" - }, - { - "@type": "@77" - }, - { - "@type": "@78" - }, - { - "@type": "@79" - }, - { - "@type": "@80" - }, - { - "@type": "@81" - }, - { - "@type": "@82" - }, - { - "@type": "@83" - }, - { - "@type": "@84" - }, - { - "@type": "@85" - }, - { - "@type": "@86" - }, - { - "@type": "@87" - }, - { - "@type": "@88" - }, - { - "@type": "@89" - }, - { - "@type": "@90" - }, - { - "@type": "@91" - }, - { - "@type": "@92" - }, - { - "@type": "@93" - }, - { - "@type": "@94" - }, - { - "@type": "@95" - }, - { - "@type": "@96" - }, - { - "@type": "@97" - }, - { - "@type": "@98" - }, - { - "@type": "@99" - }, - { - "@type": "@100" - }, - { - "@type": "@101" - }, - { - "@type": "@102" - }, - { - "@type": "@103" - }, - { - "@type": "@104" - }, - { - "@type": "@105" - }, - { - "@type": "@106" - }, - { - "@type": "@107" - }, - { - "@type": "@108" - }, - { - "@type": "@109" - }, - { - "@type": "@110" - }, - { - "@type": "@111" - }, - { - "@type": "@112" - }, - { - "@type": "@113" - }, - { - "@type": "@114" - }, - { - "@type": "@115" - }, - { - "@type": "@116" - }, - { - "@type": "@117" - }, - { - "@type": "@118" - }, - { - "@type": "@119" - }, - { - "@type": "@120" - }, - { - "@type": "@121" - }, - { - "@type": "@122" - }, - { - "@type": "@123" - }, - { - "@type": "@124" - }, - { - "@type": "@125" - }, - { - "@type": "@126" - }, - { - "@type": "@127" - }, - { - "@type": "@128" - }, - { - "@type": "@129" - }, - { - "@type": "@130" - }, - { - "@type": "@131" - }, - { - "@type": "@132" - }, - { - "@type": "@133" - }, - { - "@type": "@134" - }, - { - "@type": "@135" - }, - { - "@type": "@136" - }, - { - "@type": "@137" - }, - { - "@type": "@138" - }, - { - "@type": "@139" - }, - { - "@type": "@140" - }, - { - "@type": "@141" - }, - { - "@type": "@142" - }, - { - "@type": "@143" - }, - { - "@type": "@144" - }, - { - "@type": "@145" - }, - { - "@type": "@146" - }, - { - "@type": "@147" - }, - { - "@type": "@148" - }, - { - "@type": "@149" - }, - { - "@type": "@150" - }, - { - "@type": "@151" - } - ], - "count": 111, - "idx": 111 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "cte", - "column": null, - "expr": "cte.*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "cte", - "column": null, - "expr": "cte", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "CROSS", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "gis_all", - "column": null, - "expr": "gis_all", - "alias": null, - "function": null, - "subquery": null - }, - "on": null, - "using": null - } - ], - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "withclause2", - "column": null, - "expr": "withclause2", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": null, - "with": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\WithStatement", - "withers": { - "cte": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\WithKeyword", - "name": "cte", - "columns": [], - "statement": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@73" - }, - { - "@type": "@74" - }, - { - "@type": "@75" - }, - { - "@type": "@76" - }, - { - "@type": "@77" - }, - { - "@type": "@78" - }, - { - "@type": "@79" - }, - { - "@type": "@80" - }, - { - "@type": "@81" - }, - { - "@type": "@82" - }, - { - "@type": "@83" - }, - { - "@type": "@84" - }, - { - "@type": "@85" - }, - { - "@type": "@86" - }, - { - "@type": "@87" - }, - { - "@type": "@88" - }, - { - "@type": "@89" - }, - { - "@type": "@90" - }, - { - "@type": "@91" - }, - { - "@type": "@92" - } - ], - "count": 20, - "idx": 20 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "p", - "column": "name", - "expr": "p.name", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "p", - "column": "shape", - "expr": "p.shape", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "gis_all", - "column": null, - "expr": "gis_all", - "alias": "p", - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 19 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - } - }, - "cte2": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\WithKeyword", - "name": "cte2", - "columns": [], - "statement": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@101" - }, - { - "@type": "@102" - }, - { - "@type": "@103" - }, - { - "@type": "@104" - }, - { - "@type": "@105" - }, - { - "@type": "@106" - }, - { - "@type": "@107" - }, - { - "@type": "@108" - }, - { - "@type": "@109" - }, - { - "@type": "@110" - }, - { - "@type": "@111" - }, - { - "@type": "@112" - }, - { - "@type": "@113" - }, - { - "@type": "@114" - }, - { - "@type": "@115" - }, - { - "@type": "@116" - }, - { - "@type": "@117" - }, - { - "@type": "@118" - }, - { - "@type": "@119" - }, - { - "@type": "@120" - }, - { - "@type": "@121" - }, - { - "@type": "@122" - }, - { - "@type": "@123" - }, - { - "@type": "@124" - }, - { - "@type": "@125" - }, - { - "@type": "@126" - }, - { - "@type": "@127" - }, - { - "@type": "@128" - } - ], - "count": 28, - "idx": 28 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "p", - "column": "name", - "expr": "p.name", - "alias": "n2", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "p", - "column": "shape", - "expr": "p.shape", - "alias": "sh2", - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "gis_all", - "column": null, - "expr": "gis_all", - "alias": "p", - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 27 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - } - } - }, - "cteStatementParser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@131" - }, - { - "@type": "@132" - }, - { - "@type": "@133" - }, - { - "@type": "@134" - }, - { - "@type": "@135" - }, - { - "@type": "@136" - }, - { - "@type": "@137" - }, - { - "@type": "@138" - }, - { - "@type": "@139" - }, - { - "@type": "@140" - }, - { - "@type": "@141" - }, - { - "@type": "@142" - }, - { - "@type": "@143" - }, - { - "@type": "@144" - }, - { - "@type": "@145" - }, - { - "@type": "@146" - }, - { - "@type": "@147" - }, - { - "@type": "@148" - }, - { - "@type": "@149" - }, - { - "@type": "@150" - }, - { - "@type": "@151" - } - ], - "count": 21, - "idx": 21 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "cte", - "column": null, - "expr": "cte.*", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "cte2", - "column": null, - "expr": "cte2.*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "cte", - "column": null, - "expr": "cte", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "cte2", - "column": null, - "expr": "cte2", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "CROSS", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "gis_all", - "column": null, - "expr": "gis_all", - "alias": null, - "function": null, - "subquery": null - }, - "on": null, - "using": null - } - ], - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 18 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": null, - "last": null - }, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "VIEW" - } - }, - "first": 13, - "last": 109 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": null, - "last": null - }, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "VIEW" - } - }, - "first": 0, - "last": 148 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewMultiple.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewMultiple.in deleted file mode 100644 index 5531bf29..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewMultiple.in +++ /dev/null @@ -1,18 +0,0 @@ -CREATE TABLE T1 (COL1 CHAR(10)) - -CREATE VIEW V1 AS SELECT COL1 - FROM T1 WHERE COL1 LIKE 'A%' - -CREATE VIEW V2 AS SELECT COL1 - FROM V1 WHERE COL1 LIKE '%Z' - WITH LOCAL CHECK OPTION - -CREATE VIEW V3 AS SELECT COL1 - FROM V2 WHERE COL1 LIKE 'AB%' - -CREATE VIEW V4 AS SELECT COL1 - FROM V3 WHERE COL1 LIKE '%YZ' - WITH CASCADED CHECK OPTION - -CREATE VIEW V5 AS SELECT COL1 - FROM V4 WHERE COL1 LIKE 'ABC%' diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewMultiple.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewMultiple.out deleted file mode 100644 index bd9c6f6d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewMultiple.out +++ /dev/null @@ -1,1464 +0,0 @@ -{ - "query": "CREATE TABLE T1 (COL1 CHAR(10))\n\nCREATE VIEW V1 AS SELECT COL1\n FROM T1 WHERE COL1 LIKE 'A%'\n\nCREATE VIEW V2 AS SELECT COL1\n FROM V1 WHERE COL1 LIKE '%Z'\n WITH LOCAL CHECK OPTION\n\nCREATE VIEW V3 AS SELECT COL1\n FROM V2 WHERE COL1 LIKE 'AB%'\n\nCREATE VIEW V4 AS SELECT COL1\n FROM V3 WHERE COL1 LIKE '%YZ'\n WITH CASCADED CHECK OPTION\n\nCREATE VIEW V5 AS SELECT COL1\n FROM V4 WHERE COL1 LIKE 'ABC%'\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE TABLE T1 (COL1 CHAR(10))\n\nCREATE VIEW V1 AS SELECT COL1\n FROM T1 WHERE COL1 LIKE 'A%'\n\nCREATE VIEW V2 AS SELECT COL1\n FROM V1 WHERE COL1 LIKE '%Z'\n WITH LOCAL CHECK OPTION\n\nCREATE VIEW V3 AS SELECT COL1\n FROM V2 WHERE COL1 LIKE 'AB%'\n\nCREATE VIEW V4 AS SELECT COL1\n FROM V3 WHERE COL1 LIKE '%YZ'\n WITH CASCADED CHECK OPTION\n\nCREATE VIEW V5 AS SELECT COL1\n FROM V4 WHERE COL1 LIKE 'ABC%'\n", - "len": 464, - "last": 464, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "T1", - "value": "T1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COL1", - "value": "COL1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHAR", - "value": "CHAR", - "keyword": "CHAR", - "type": 1, - "flags": 43, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VIEW", - "value": "VIEW", - "keyword": "VIEW", - "type": 1, - "flags": 1, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "V1", - "value": "V1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COL1", - "value": "COL1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "T1", - "value": "T1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COL1", - "value": "COL1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIKE", - "value": "LIKE", - "keyword": "LIKE", - "type": 1, - "flags": 3, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'A%'", - "value": "A%", - "keyword": null, - "type": 7, - "flags": 1, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VIEW", - "value": "VIEW", - "keyword": "VIEW", - "type": 1, - "flags": 1, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "V2", - "value": "V2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COL1", - "value": "COL1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "V1", - "value": "V1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 137 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COL1", - "value": "COL1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 150 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIKE", - "value": "LIKE", - "keyword": "LIKE", - "type": 1, - "flags": 3, - "position": 151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'%Z'", - "value": "%Z", - "keyword": null, - "type": 7, - "flags": 1, - "position": 156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 160 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 189 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 193 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCAL", - "value": "LOCAL", - "keyword": "LOCAL", - "type": 1, - "flags": 1, - "position": 194 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 199 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHECK", - "value": "CHECK", - "keyword": "CHECK", - "type": 1, - "flags": 3, - "position": 200 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 205 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OPTION", - "value": "OPTION", - "keyword": "OPTION", - "type": 1, - "flags": 3, - "position": 206 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 212 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 214 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 220 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VIEW", - "value": "VIEW", - "keyword": "VIEW", - "type": 1, - "flags": 1, - "position": 221 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 225 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "V3", - "value": "V3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 226 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 228 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 229 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 231 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 232 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 238 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COL1", - "value": "COL1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 239 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 243 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 248 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 252 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "V2", - "value": "V2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 253 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 255 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 256 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 261 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COL1", - "value": "COL1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 262 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 266 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIKE", - "value": "LIKE", - "keyword": "LIKE", - "type": 1, - "flags": 3, - "position": 267 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 271 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'AB%'", - "value": "AB%", - "keyword": null, - "type": 7, - "flags": 1, - "position": 272 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 277 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 279 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 285 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VIEW", - "value": "VIEW", - "keyword": "VIEW", - "type": 1, - "flags": 1, - "position": 286 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 290 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "V4", - "value": "V4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 291 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 293 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 294 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 296 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 297 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 303 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COL1", - "value": "COL1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 304 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 308 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 313 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 317 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "V3", - "value": "V3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 318 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 320 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 321 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 326 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COL1", - "value": "COL1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 327 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 331 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIKE", - "value": "LIKE", - "keyword": "LIKE", - "type": 1, - "flags": 3, - "position": 332 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 336 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'%YZ'", - "value": "%YZ", - "keyword": null, - "type": 7, - "flags": 1, - "position": 337 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 342 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 371 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 375 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CASCADED", - "value": "CASCADED", - "keyword": "CASCADED", - "type": 1, - "flags": 1, - "position": 376 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 384 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHECK", - "value": "CHECK", - "keyword": "CHECK", - "type": 1, - "flags": 3, - "position": 385 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 390 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OPTION", - "value": "OPTION", - "keyword": "OPTION", - "type": 1, - "flags": 3, - "position": 391 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 397 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 399 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 405 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VIEW", - "value": "VIEW", - "keyword": "VIEW", - "type": 1, - "flags": 1, - "position": 406 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 410 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "V5", - "value": "V5", - "keyword": null, - "type": 0, - "flags": 0, - "position": 411 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 413 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 414 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 416 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 417 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 423 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COL1", - "value": "COL1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 424 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 428 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 433 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 437 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "V4", - "value": "V4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 438 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 440 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 441 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 446 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COL1", - "value": "COL1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 447 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 451 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIKE", - "value": "LIKE", - "keyword": "LIKE", - "type": 1, - "flags": 3, - "position": 452 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 456 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'ABC%'", - "value": "ABC%", - "keyword": null, - "type": 7, - "flags": 1, - "position": 457 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 463 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 152, - "idx": 152 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "T1", - "column": null, - "expr": "T1", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "COL1", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "CHAR", - "parameters": [ - "10" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 151 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewWithQuotes.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewWithQuotes.in deleted file mode 100644 index 2155a8d2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewWithQuotes.in +++ /dev/null @@ -1,4 +0,0 @@ -CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` -SQL SECURITY DEFINER VIEW `test_view` AS -select `email_content`.`content_id` AS `content_id`, -`email_content`.`brand_id` AS `brand_id` from `email_content`; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewWithQuotes.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewWithQuotes.out deleted file mode 100644 index 02b7bb97..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewWithQuotes.out +++ /dev/null @@ -1,548 +0,0 @@ -{ - "query": "CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost`\nSQL SECURITY DEFINER VIEW `test_view` AS\nselect `email_content`.`content_id` AS `content_id`,\n`email_content`.`brand_id` AS `brand_id` from `email_content`;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost`\nSQL SECURITY DEFINER VIEW `test_view` AS\nselect `email_content`.`content_id` AS `content_id`,\n`email_content`.`brand_id` AS `brand_id` from `email_content`;", - "len": 211, - "last": 211, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALGORITHM", - "value": "ALGORITHM", - "keyword": "ALGORITHM", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNDEFINED", - "value": "UNDEFINED", - "keyword": "UNDEFINED", - "type": 1, - "flags": 1, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFINER", - "value": "DEFINER", - "keyword": "DEFINER", - "type": 1, - "flags": 1, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`root`@`localhost`", - "value": "root@localhost", - "keyword": null, - "type": 8, - "flags": 4, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SQL SECURITY", - "value": "SQL SECURITY", - "keyword": "SQL SECURITY", - "type": 1, - "flags": 7, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFINER", - "value": "DEFINER", - "keyword": "DEFINER", - "type": 1, - "flags": 1, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VIEW", - "value": "VIEW", - "keyword": "VIEW", - "type": 1, - "flags": 1, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`test_view`", - "value": "test_view", - "keyword": null, - "type": 8, - "flags": 2, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`email_content`", - "value": "email_content", - "keyword": null, - "type": 8, - "flags": 2, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`content_id`", - "value": "content_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 134 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`content_id`", - "value": "content_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 147 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`email_content`", - "value": "email_content", - "keyword": null, - "type": 8, - "flags": 2, - "position": 149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 164 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`brand_id`", - "value": "brand_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 165 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 175 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 176 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 178 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`brand_id`", - "value": "brand_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 179 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 189 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "from", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 190 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 194 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`email_content`", - "value": "email_content", - "keyword": null, - "type": 8, - "flags": 2, - "position": 195 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 210 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 44, - "idx": 44 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test_view", - "column": null, - "expr": "`test_view`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": null, - "with": null, - "select": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "email_content", - "column": "content_id", - "expr": "`email_content`.`content_id`", - "alias": "content_id", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "email_content", - "column": "brand_id", - "expr": "`email_content`.`brand_id`", - "alias": "brand_id", - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "email_content", - "column": null, - "expr": "`email_content`", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 20, - "last": 41 - }, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": { - "name": "ALGORITHM", - "equals": true, - "expr": "UNDEFINED", - "value": "UNDEFINED" - }, - "4": { - "name": "DEFINER", - "equals": true, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "root@localhost", - "expr": "`root`@`localhost`", - "alias": null, - "function": null, - "subquery": null - }, - "value": "`root`@`localhost`" - }, - "5": { - "name": "SQL SECURITY", - "equals": false, - "expr": "DEFINER", - "value": "DEFINER" - }, - "6": "VIEW" - } - }, - "first": 0, - "last": 42 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewWithUnion.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewWithUnion.in deleted file mode 100644 index 4ea97414..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewWithUnion.in +++ /dev/null @@ -1,12 +0,0 @@ -CREATE VIEW `employees_view` AS -SELECT * -FROM - `employees` -WHERE - `employees`.`gender` = 'M' -UNION -SELECT * -FROM - `employees` -WHERE - `employees`.`gender` = 'F'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewWithUnion.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewWithUnion.out deleted file mode 100644 index 2122145a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewWithUnion.out +++ /dev/null @@ -1,607 +0,0 @@ -{ - "query": "CREATE VIEW `employees_view` AS\nSELECT *\nFROM\n `employees`\nWHERE\n `employees`.`gender` = 'M'\nUNION\nSELECT *\nFROM\n `employees`\nWHERE\n `employees`.`gender` = 'F';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE VIEW `employees_view` AS\nSELECT *\nFROM\n `employees`\nWHERE\n `employees`.`gender` = 'M'\nUNION\nSELECT *\nFROM\n `employees`\nWHERE\n `employees`.`gender` = 'F';", - "len": 173, - "last": 173, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VIEW", - "value": "VIEW", - "keyword": "VIEW", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`employees_view`", - "value": "employees_view", - "keyword": null, - "type": 8, - "flags": 2, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`employees`", - "value": "employees", - "keyword": null, - "type": 8, - "flags": 2, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`employees`", - "value": "employees", - "keyword": null, - "type": 8, - "flags": 2, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`gender`", - "value": "gender", - "keyword": null, - "type": 8, - "flags": 2, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'M'", - "value": "M", - "keyword": null, - "type": 7, - "flags": 1, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNION", - "value": "UNION", - "keyword": "UNION", - "type": 1, - "flags": 3, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`employees`", - "value": "employees", - "keyword": null, - "type": 8, - "flags": 2, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`employees`", - "value": "employees", - "keyword": null, - "type": 8, - "flags": 2, - "position": 146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`gender`", - "value": "gender", - "keyword": null, - "type": 8, - "flags": 2, - "position": 158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 166 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 168 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'F'", - "value": "F", - "keyword": null, - "type": 7, - "flags": 1, - "position": 169 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 172 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 47, - "idx": 47 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "employees_view", - "column": null, - "expr": "`employees_view`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": null, - "with": null, - "select": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "employees", - "column": null, - "expr": "`employees`", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "employees", - "gender", - "M" - ], - "isOperator": false, - "expr": "`employees`.`gender` = 'M'" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 8, - "last": 25 - }, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [ - { - "@type": "@28" - }, - { - "@type": "@29" - }, - { - "@type": "@30" - }, - { - "@type": "@31" - }, - { - "@type": "@32" - }, - { - "@type": "@33" - }, - { - "@type": "@34" - }, - { - "@type": "@35" - }, - { - "@type": "@36" - }, - { - "@type": "@37" - }, - { - "@type": "@38" - }, - { - "@type": "@39" - }, - { - "@type": "@40" - }, - { - "@type": "@41" - }, - { - "@type": "@42" - }, - { - "@type": "@43" - }, - { - "@type": "@44" - }, - { - "@type": "@45" - }, - { - "@type": "@46" - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "VIEW" - } - }, - "first": 0, - "last": 45 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewWithWrongSyntax.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewWithWrongSyntax.in deleted file mode 100644 index be327977..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewWithWrongSyntax.in +++ /dev/null @@ -1 +0,0 @@ -CREATE VIEW abc AS SELECT a, b, FROM a \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewWithWrongSyntax.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewWithWrongSyntax.out deleted file mode 100644 index e3fcb13c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewWithWrongSyntax.out +++ /dev/null @@ -1,313 +0,0 @@ -{ - "query": "CREATE VIEW abc AS SELECT a, b, FROM a", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE VIEW abc AS SELECT a, b, FROM a", - "len": 38, - "last": 38, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VIEW", - "value": "VIEW", - "keyword": "VIEW", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "abc", - "value": "abc", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 20, - "idx": 20 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "abc", - "column": null, - "expr": "abc", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": null, - "with": null, - "select": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "a", - "expr": "a", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "b", - "expr": "b", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "a", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 8, - "last": 18 - }, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "VIEW" - } - }, - "first": 0, - "last": 19 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "An expression was expected.", - { - "@type": "@18" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewWithoutQuotes.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewWithoutQuotes.in deleted file mode 100644 index 26276fb4..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewWithoutQuotes.in +++ /dev/null @@ -1,4 +0,0 @@ -CREATE ALGORITHM=UNDEFINED DEFINER=root@localhost -SQL SECURITY DEFINER VIEW `test_view` AS -select `email_content`.`content_id` AS `content_id`, -`email_content`.`brand_id` AS `brand_id` from `email_content`; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewWithoutQuotes.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewWithoutQuotes.out deleted file mode 100644 index c703207e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseCreateViewWithoutQuotes.out +++ /dev/null @@ -1,557 +0,0 @@ -{ - "query": "CREATE ALGORITHM=UNDEFINED DEFINER=root@localhost\nSQL SECURITY DEFINER VIEW `test_view` AS\nselect `email_content`.`content_id` AS `content_id`,\n`email_content`.`brand_id` AS `brand_id` from `email_content`;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE ALGORITHM=UNDEFINED DEFINER=root@localhost\nSQL SECURITY DEFINER VIEW `test_view` AS\nselect `email_content`.`content_id` AS `content_id`,\n`email_content`.`brand_id` AS `brand_id` from `email_content`;", - "len": 207, - "last": 207, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALGORITHM", - "value": "ALGORITHM", - "keyword": "ALGORITHM", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNDEFINED", - "value": "UNDEFINED", - "keyword": "UNDEFINED", - "type": 1, - "flags": 1, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFINER", - "value": "DEFINER", - "keyword": "DEFINER", - "type": 1, - "flags": 1, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "root", - "value": "root", - "keyword": null, - "type": 0, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@localhost", - "value": "localhost", - "keyword": null, - "type": 8, - "flags": 1, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SQL SECURITY", - "value": "SQL SECURITY", - "keyword": "SQL SECURITY", - "type": 1, - "flags": 7, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFINER", - "value": "DEFINER", - "keyword": "DEFINER", - "type": 1, - "flags": 1, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VIEW", - "value": "VIEW", - "keyword": "VIEW", - "type": 1, - "flags": 1, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`test_view`", - "value": "test_view", - "keyword": null, - "type": 8, - "flags": 2, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`email_content`", - "value": "email_content", - "keyword": null, - "type": 8, - "flags": 2, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`content_id`", - "value": "content_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`content_id`", - "value": "content_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 144 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`email_content`", - "value": "email_content", - "keyword": null, - "type": 8, - "flags": 2, - "position": 145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 160 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`brand_id`", - "value": "brand_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 171 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 172 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`brand_id`", - "value": "brand_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 175 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 185 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "from", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 186 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 190 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`email_content`", - "value": "email_content", - "keyword": null, - "type": 8, - "flags": 2, - "position": 191 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 206 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 45, - "idx": 45 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test_view", - "column": null, - "expr": "`test_view`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": null, - "with": null, - "select": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "email_content", - "column": "content_id", - "expr": "`email_content`.`content_id`", - "alias": "content_id", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "email_content", - "column": "brand_id", - "expr": "`email_content`.`brand_id`", - "alias": "brand_id", - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "email_content", - "column": null, - "expr": "`email_content`", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 21, - "last": 42 - }, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": { - "name": "ALGORITHM", - "equals": true, - "expr": "UNDEFINED", - "value": "UNDEFINED" - }, - "4": { - "name": "DEFINER", - "equals": true, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "root", - "expr": "root@localhost", - "alias": null, - "function": null, - "subquery": null - }, - "value": "root@localhost" - }, - "5": { - "name": "SQL SECURITY", - "equals": false, - "expr": "DEFINER", - "value": "DEFINER" - }, - "6": "VIEW" - } - }, - "first": 0, - "last": 43 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete.in deleted file mode 100644 index 40dbb86a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete.in +++ /dev/null @@ -1,9 +0,0 @@ -DELETE LOW_PRIORITY -/* */ -FROM - `test`.users -WHERE - `id`<3 AND (username="Dan" or username="Paul") -ORDER BY - id -; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete.out deleted file mode 100644 index 0cd5552d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete.out +++ /dev/null @@ -1,461 +0,0 @@ -{ - "query": "DELETE LOW_PRIORITY\n/* */\nFROM\n `test`.users\nWHERE\n `id`<3 AND (username=\"Dan\" or username=\"Paul\")\nORDER BY\n id\n;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE LOW_PRIORITY\n/* */\nFROM\n `test`.users\nWHERE\n `id`<3 AND (username=\"Dan\" or username=\"Paul\")\nORDER BY\n id\n;", - "len": 122, - "last": 122, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOW_PRIORITY", - "value": "LOW_PRIORITY", - "keyword": "LOW_PRIORITY", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* */", - "value": "/* */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`test`", - "value": "test", - "keyword": null, - "type": 8, - "flags": 2, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "users", - "value": "users", - "keyword": null, - "type": 0, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`id`", - "value": "id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "<", - "value": "<", - "keyword": null, - "type": 2, - "flags": 2, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Dan\"", - "value": "Dan", - "keyword": null, - "type": 7, - "flags": 2, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "or", - "value": "OR", - "keyword": "OR", - "type": 1, - "flags": 3, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Paul\"", - "value": "Paul", - "keyword": null, - "type": 7, - "flags": 2, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ORDER BY", - "value": "ORDER BY", - "keyword": "ORDER BY", - "type": 1, - "flags": 7, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 38, - "idx": 38 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "test", - "table": "users", - "column": null, - "expr": "`test`.users", - "alias": null, - "function": null, - "subquery": null - } - ], - "join": null, - "using": null, - "columns": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "id" - ], - "isOperator": false, - "expr": "`id`<3" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "username", - "Dan" - ], - "isOperator": false, - "expr": "(username=\"Dan\"" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "OR" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "username", - "Paul" - ], - "isOperator": false, - "expr": "username=\"Paul\")" - } - ], - "order": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OrderKeyword", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "id", - "expr": "id", - "alias": null, - "function": null, - "subquery": null - }, - "type": "ASC" - } - ], - "limit": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "LOW_PRIORITY" - } - }, - "first": 0, - "last": 35 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete10.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete10.in deleted file mode 100644 index 190c95d7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete10.in +++ /dev/null @@ -1 +0,0 @@ -DELETE QUICK table1, table2.* FROM table1 as t1, table2 as t2 WHERE 1=1 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete10.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete10.out deleted file mode 100644 index 834621c5..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete10.out +++ /dev/null @@ -1,391 +0,0 @@ -{ - "query": "DELETE QUICK table1, table2.* FROM table1 as t1, table2 as t2 WHERE 1=1", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE QUICK table1, table2.* FROM table1 as t1, table2 as t2 WHERE 1=1", - "len": 71, - "last": 71, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "QUICK", - "value": "QUICK", - "keyword": "QUICK", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table2", - "value": "table2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table2", - "value": "table2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t2", - "value": "t2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 32, - "idx": 32 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": "t1", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table2", - "column": null, - "expr": "table2", - "alias": "t2", - "function": null, - "subquery": null - } - ], - "join": null, - "using": null, - "columns": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "table1", - "expr": "table1", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table2", - "column": null, - "expr": "table2.*", - "alias": null, - "function": null, - "subquery": null - } - ], - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": false, - "expr": "1=1" - } - ], - "order": null, - "limit": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "QUICK" - } - }, - "first": 0, - "last": 30 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete11.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete11.in deleted file mode 100644 index 8c9ad7ab..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete11.in +++ /dev/null @@ -1 +0,0 @@ -DELETE QUICK FROM table1, table2.* USING table1 AS `t1`, table2 AS `t2` WHERE 1=1 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete11.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete11.out deleted file mode 100644 index 6e25779e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete11.out +++ /dev/null @@ -1,409 +0,0 @@ -{ - "query": "DELETE QUICK FROM table1, table2.* USING table1 AS `t1`, table2 AS `t2` WHERE 1=1", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE QUICK FROM table1, table2.* USING table1 AS `t1`, table2 AS `t2` WHERE 1=1", - "len": 81, - "last": 81, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "QUICK", - "value": "QUICK", - "keyword": "QUICK", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table2", - "value": "table2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`t1`", - "value": "t1", - "keyword": null, - "type": 8, - "flags": 2, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table2", - "value": "table2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`t2`", - "value": "t2", - "keyword": null, - "type": 8, - "flags": 2, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 34, - "idx": 34 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "table2", - "table": null, - "column": null, - "expr": "table2.*", - "alias": null, - "function": null, - "subquery": null - } - ], - "join": null, - "using": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "table1", - "expr": "table1", - "alias": "t1", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "table2", - "expr": "table2", - "alias": "t2", - "function": null, - "subquery": null - } - ], - "columns": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": false, - "expr": "1=1" - } - ], - "order": null, - "limit": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "QUICK" - } - }, - "first": 0, - "last": 32 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete12.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete12.in deleted file mode 100644 index d781113b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete12.in +++ /dev/null @@ -1 +0,0 @@ -DELETE QUICK FROM table1 WHERE 1=1 LIMIT 0, 25 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete12.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete12.out deleted file mode 100644 index b59069d9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete12.out +++ /dev/null @@ -1,265 +0,0 @@ -{ - "query": "DELETE QUICK FROM table1 WHERE 1=1 LIMIT 0, 25", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE QUICK FROM table1 WHERE 1=1 LIMIT 0, 25", - "len": 46, - "last": 46, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "QUICK", - "value": "QUICK", - "keyword": "QUICK", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIMIT", - "value": "LIMIT", - "keyword": "LIMIT", - "type": 1, - "flags": 3, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "25", - "value": 25, - "keyword": null, - "type": 6, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 21, - "idx": 21 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": null, - "function": null, - "subquery": null - } - ], - "join": null, - "using": null, - "columns": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": false, - "expr": "1=1" - } - ], - "order": null, - "limit": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Limit", - "offset": 0, - "rowCount": 25 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "QUICK" - } - }, - "first": 0, - "last": 19 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete13.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete13.in deleted file mode 100644 index 45451d38..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete13.in +++ /dev/null @@ -1 +0,0 @@ -DELETE FROM emp x WHERE x.salary = 20 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete13.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete13.out deleted file mode 100644 index 4c0537f9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete13.out +++ /dev/null @@ -1,235 +0,0 @@ -{ - "query": "DELETE FROM emp x WHERE x.salary = 20", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE FROM emp x WHERE x.salary = 20", - "len": 37, - "last": 37, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "emp", - "value": "emp", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "x", - "value": "x", - "keyword": "x", - "type": 0, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "x", - "value": "x", - "keyword": "x", - "type": 0, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "salary", - "value": "salary", - "keyword": null, - "type": 0, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "20", - "value": 20, - "keyword": null, - "type": 6, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 18, - "idx": 18 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "emp", - "column": null, - "expr": "emp", - "alias": "x", - "function": null, - "subquery": null - } - ], - "join": null, - "using": null, - "columns": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "x", - "salary" - ], - "isOperator": false, - "expr": "x.salary = 20" - } - ], - "order": null, - "limit": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 16 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete2.in deleted file mode 100644 index df7954af..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete2.in +++ /dev/null @@ -1 +0,0 @@ -DELETE IGNORE FROM t1 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete2.out deleted file mode 100644 index dd74b084..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete2.out +++ /dev/null @@ -1,137 +0,0 @@ -{ - "query": "DELETE IGNORE FROM t1", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE IGNORE FROM t1", - "len": 21, - "last": 21, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IGNORE", - "value": "IGNORE", - "keyword": "IGNORE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 8, - "idx": 8 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "t1", - "column": null, - "expr": "t1", - "alias": null, - "function": null, - "subquery": null - } - ], - "join": null, - "using": null, - "columns": null, - "partition": null, - "where": null, - "order": null, - "limit": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "IGNORE" - } - }, - "first": 0, - "last": 6 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete3.in deleted file mode 100644 index 3f0b94fe..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete3.in +++ /dev/null @@ -1 +0,0 @@ -DELETE IGNORE FROM t1 WHERE 1=1 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete3.out deleted file mode 100644 index 9a107480..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete3.out +++ /dev/null @@ -1,198 +0,0 @@ -{ - "query": "DELETE IGNORE FROM t1 WHERE 1=1", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE IGNORE FROM t1 WHERE 1=1", - "len": 31, - "last": 31, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IGNORE", - "value": "IGNORE", - "keyword": "IGNORE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 14, - "idx": 14 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "t1", - "column": null, - "expr": "t1", - "alias": null, - "function": null, - "subquery": null - } - ], - "join": null, - "using": null, - "columns": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": false, - "expr": "1=1" - } - ], - "order": null, - "limit": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "IGNORE" - } - }, - "first": 0, - "last": 12 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete4.in deleted file mode 100644 index 77eb49df..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete4.in +++ /dev/null @@ -1 +0,0 @@ -DELETE IGNORE FROM t1 WHERE 1=1 ORDER BY id \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete4.out deleted file mode 100644 index d051c218..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete4.out +++ /dev/null @@ -1,249 +0,0 @@ -{ - "query": "DELETE IGNORE FROM t1 WHERE 1=1 ORDER BY id", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE IGNORE FROM t1 WHERE 1=1 ORDER BY id", - "len": 43, - "last": 43, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IGNORE", - "value": "IGNORE", - "keyword": "IGNORE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ORDER BY", - "value": "ORDER BY", - "keyword": "ORDER BY", - "type": 1, - "flags": 7, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 18, - "idx": 18 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "t1", - "column": null, - "expr": "t1", - "alias": null, - "function": null, - "subquery": null - } - ], - "join": null, - "using": null, - "columns": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": false, - "expr": "1=1" - } - ], - "order": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OrderKeyword", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "id", - "expr": "id", - "alias": null, - "function": null, - "subquery": null - }, - "type": "ASC" - } - ], - "limit": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "IGNORE" - } - }, - "first": 0, - "last": 16 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete5.in deleted file mode 100644 index 1db7d3c9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete5.in +++ /dev/null @@ -1 +0,0 @@ -DELETE IGNORE FROM t1 WHERE 1=1 ORDER BY id LIMIT 0,25 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete5.out deleted file mode 100644 index 5f12932b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete5.out +++ /dev/null @@ -1,307 +0,0 @@ -{ - "query": "DELETE IGNORE FROM t1 WHERE 1=1 ORDER BY id LIMIT 0,25", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE IGNORE FROM t1 WHERE 1=1 ORDER BY id LIMIT 0,25", - "len": 54, - "last": 54, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IGNORE", - "value": "IGNORE", - "keyword": "IGNORE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ORDER BY", - "value": "ORDER BY", - "keyword": "ORDER BY", - "type": 1, - "flags": 7, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIMIT", - "value": "LIMIT", - "keyword": "LIMIT", - "type": 1, - "flags": 3, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "25", - "value": 25, - "keyword": null, - "type": 6, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 24, - "idx": 24 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "t1", - "column": null, - "expr": "t1", - "alias": null, - "function": null, - "subquery": null - } - ], - "join": null, - "using": null, - "columns": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": false, - "expr": "1=1" - } - ], - "order": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OrderKeyword", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "id", - "expr": "id", - "alias": null, - "function": null, - "subquery": null - }, - "type": "ASC" - } - ], - "limit": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Limit", - "offset": 0, - "rowCount": 25 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "IGNORE" - } - }, - "first": 0, - "last": 22 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete6.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete6.in deleted file mode 100644 index 0a018b7b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete6.in +++ /dev/null @@ -1 +0,0 @@ -DELETE IGNORE FROM t1 ORDER BY id \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete6.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete6.out deleted file mode 100644 index a7918940..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete6.out +++ /dev/null @@ -1,188 +0,0 @@ -{ - "query": "DELETE IGNORE FROM t1 ORDER BY id", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE IGNORE FROM t1 ORDER BY id", - "len": 33, - "last": 33, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IGNORE", - "value": "IGNORE", - "keyword": "IGNORE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ORDER BY", - "value": "ORDER BY", - "keyword": "ORDER BY", - "type": 1, - "flags": 7, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 12, - "idx": 12 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "t1", - "column": null, - "expr": "t1", - "alias": null, - "function": null, - "subquery": null - } - ], - "join": null, - "using": null, - "columns": null, - "partition": null, - "where": null, - "order": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OrderKeyword", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "id", - "expr": "id", - "alias": null, - "function": null, - "subquery": null - }, - "type": "ASC" - } - ], - "limit": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "IGNORE" - } - }, - "first": 0, - "last": 10 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete7.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete7.in deleted file mode 100644 index cea23bb4..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete7.in +++ /dev/null @@ -1 +0,0 @@ -DELETE IGNORE FROM t1 ORDER BY id LIMIT 0,25 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete7.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete7.out deleted file mode 100644 index 362d5f1e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete7.out +++ /dev/null @@ -1,246 +0,0 @@ -{ - "query": "DELETE IGNORE FROM t1 ORDER BY id LIMIT 0,25", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE IGNORE FROM t1 ORDER BY id LIMIT 0,25", - "len": 44, - "last": 44, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IGNORE", - "value": "IGNORE", - "keyword": "IGNORE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ORDER BY", - "value": "ORDER BY", - "keyword": "ORDER BY", - "type": 1, - "flags": 7, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIMIT", - "value": "LIMIT", - "keyword": "LIMIT", - "type": 1, - "flags": 3, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "25", - "value": 25, - "keyword": null, - "type": 6, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 18, - "idx": 18 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "t1", - "column": null, - "expr": "t1", - "alias": null, - "function": null, - "subquery": null - } - ], - "join": null, - "using": null, - "columns": null, - "partition": null, - "where": null, - "order": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OrderKeyword", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "id", - "expr": "id", - "alias": null, - "function": null, - "subquery": null - }, - "type": "ASC" - } - ], - "limit": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Limit", - "offset": 0, - "rowCount": 25 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "IGNORE" - } - }, - "first": 0, - "last": 16 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete8.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete8.in deleted file mode 100644 index 47542f68..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete8.in +++ /dev/null @@ -1 +0,0 @@ -DELETE IGNORE FROM t1 LIMIT 0, 25 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete8.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete8.out deleted file mode 100644 index b603598d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete8.out +++ /dev/null @@ -1,204 +0,0 @@ -{ - "query": "DELETE IGNORE FROM t1 LIMIT 0, 25", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE IGNORE FROM t1 LIMIT 0, 25", - "len": 33, - "last": 33, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IGNORE", - "value": "IGNORE", - "keyword": "IGNORE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIMIT", - "value": "LIMIT", - "keyword": "LIMIT", - "type": 1, - "flags": 3, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "25", - "value": 25, - "keyword": null, - "type": 6, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 15, - "idx": 15 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "t1", - "column": null, - "expr": "t1", - "alias": null, - "function": null, - "subquery": null - } - ], - "join": null, - "using": null, - "columns": null, - "partition": null, - "where": null, - "order": null, - "limit": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Limit", - "offset": 0, - "rowCount": 25 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "IGNORE" - } - }, - "first": 0, - "last": 13 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete9.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete9.in deleted file mode 100644 index 695847c9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete9.in +++ /dev/null @@ -1 +0,0 @@ -DELETE QUICK table1, table2.* FROM table1 as t1, table2 as t2 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete9.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete9.out deleted file mode 100644 index 75ee53ff..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelete9.out +++ /dev/null @@ -1,330 +0,0 @@ -{ - "query": "DELETE QUICK table1, table2.* FROM table1 as t1, table2 as t2", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE QUICK table1, table2.* FROM table1 as t1, table2 as t2", - "len": 61, - "last": 61, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "QUICK", - "value": "QUICK", - "keyword": "QUICK", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table2", - "value": "table2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table2", - "value": "table2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t2", - "value": "t2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 26, - "idx": 26 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": "t1", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table2", - "column": null, - "expr": "table2", - "alias": "t2", - "function": null, - "subquery": null - } - ], - "join": null, - "using": null, - "columns": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "table1", - "expr": "table1", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table2", - "column": null, - "expr": "table2.*", - "alias": null, - "function": null, - "subquery": null - } - ], - "partition": null, - "where": null, - "order": null, - "limit": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "QUICK" - } - }, - "first": 0, - "last": 24 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr1.in deleted file mode 100644 index c04c39af..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr1.in +++ /dev/null @@ -1 +0,0 @@ -DELETE QUICK USING table1, table2.* \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr1.out deleted file mode 100644 index 4ae85063..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr1.out +++ /dev/null @@ -1,186 +0,0 @@ -{ - "query": "DELETE QUICK USING table1, table2.*", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE QUICK USING table1, table2.*", - "len": 35, - "last": 35, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "QUICK", - "value": "QUICK", - "keyword": "QUICK", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table2", - "value": "table2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 13, - "idx": 14 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": null, - "join": null, - "using": null, - "columns": null, - "partition": null, - "where": null, - "order": null, - "limit": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "QUICK" - } - }, - "first": 0, - "last": 3 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected keyword.", - { - "@type": "@6" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@6" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr10.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr10.in deleted file mode 100644 index f1a090f8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr10.in +++ /dev/null @@ -1 +0,0 @@ -DELETE QUICK FROM table1, table2 USING t1 as t,t2 as tt ASC a =1; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr10.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr10.out deleted file mode 100644 index f966e854..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr10.out +++ /dev/null @@ -1,408 +0,0 @@ -{ - "query": "DELETE QUICK FROM table1, table2 USING t1 as t,t2 as tt ASC a =1;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE QUICK FROM table1, table2 USING t1 as t,t2 as tt ASC a =1;", - "len": 65, - "last": 65, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "QUICK", - "value": "QUICK", - "keyword": "QUICK", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table2", - "value": "table2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t", - "value": "t", - "keyword": null, - "type": 0, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t2", - "value": "t2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tt", - "value": "tt", - "keyword": null, - "type": 0, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ASC", - "value": "ASC", - "keyword": "ASC", - "type": 1, - "flags": 3, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 33, - "idx": 33 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table2", - "column": null, - "expr": "table2", - "alias": null, - "function": null, - "subquery": null - } - ], - "join": null, - "using": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "t1", - "expr": "t1", - "alias": "t", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "t2", - "expr": "t2", - "alias": "tt", - "function": null, - "subquery": null - } - ], - "columns": null, - "partition": null, - "where": null, - "order": null, - "limit": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "QUICK" - } - }, - "first": 0, - "last": 24 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected keyword.", - { - "@type": "@27" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@27" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr11.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr11.in deleted file mode 100644 index eef5682f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr11.in +++ /dev/null @@ -1 +0,0 @@ -DELETE QUICK FROM table1 WHERE a = 1 ASC \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr11.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr11.out deleted file mode 100644 index 048cc0b1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr11.out +++ /dev/null @@ -1,251 +0,0 @@ -{ - "query": "DELETE QUICK FROM table1 WHERE a = 1 ASC", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE QUICK FROM table1 WHERE a = 1 ASC", - "len": 40, - "last": 40, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "QUICK", - "value": "QUICK", - "keyword": "QUICK", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ASC", - "value": "ASC", - "keyword": "ASC", - "type": 1, - "flags": 3, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 18, - "idx": 19 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": null, - "function": null, - "subquery": null - } - ], - "join": null, - "using": null, - "columns": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "a" - ], - "isOperator": false, - "expr": "a = 1" - } - ], - "order": null, - "limit": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "QUICK" - } - }, - "first": 0, - "last": 15 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected keyword.", - { - "@type": "@18" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@18" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr12.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr12.in deleted file mode 100644 index f2fa227e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr12.in +++ /dev/null @@ -1 +0,0 @@ -DELETE QUICK FROM table1, table2 USING t1 as t,t2 as tt as ttt WHEE a =1; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr12.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr12.out deleted file mode 100644 index d84f719b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr12.out +++ /dev/null @@ -1,488 +0,0 @@ -{ - "query": "DELETE QUICK FROM table1, table2 USING t1 as t,t2 as tt as ttt WHEE a =1;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE QUICK FROM table1, table2 USING t1 as t,t2 as tt as ttt WHEE a =1;\n", - "len": 74, - "last": 74, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "QUICK", - "value": "QUICK", - "keyword": "QUICK", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table2", - "value": "table2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t", - "value": "t", - "keyword": null, - "type": 0, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t2", - "value": "t2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tt", - "value": "tt", - "keyword": null, - "type": 0, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ttt", - "value": "ttt", - "keyword": null, - "type": 0, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHEE", - "value": "WHEE", - "keyword": null, - "type": 0, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 38, - "idx": 38 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table2", - "column": null, - "expr": "table2", - "alias": null, - "function": null, - "subquery": null - } - ], - "join": null, - "using": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "t1", - "expr": "t1", - "alias": "t", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "t2", - "expr": "t2", - "alias": "tt", - "function": null, - "subquery": null - } - ], - "columns": null, - "partition": null, - "where": null, - "order": null, - "limit": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "QUICK" - } - }, - "first": 0, - "last": 26 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "An alias was previously found.", - { - "@type": "@29" - }, - 0 - ], - [ - "An alias was expected.", - { - "@type": "@28" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@29" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@29" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@31" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@33" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@36" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr2.in deleted file mode 100644 index 7df39014..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr2.in +++ /dev/null @@ -1 +0,0 @@ -DELETE QUICK table1, table2.* USING table1 AS `t1`, table2 AS `t2` WHERE 1=1 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr2.out deleted file mode 100644 index a9cdb695..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr2.out +++ /dev/null @@ -1,378 +0,0 @@ -{ - "query": "DELETE QUICK table1, table2.* USING table1 AS `t1`, table2 AS `t2` WHERE 1=1", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE QUICK table1, table2.* USING table1 AS `t1`, table2 AS `t2` WHERE 1=1", - "len": 76, - "last": 76, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "QUICK", - "value": "QUICK", - "keyword": "QUICK", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table2", - "value": "table2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`t1`", - "value": "t1", - "keyword": null, - "type": 8, - "flags": 2, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table2", - "value": "table2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`t2`", - "value": "t2", - "keyword": null, - "type": 8, - "flags": 2, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 32, - "idx": 33 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": null, - "join": null, - "using": null, - "columns": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "table1", - "expr": "table1", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table2", - "column": null, - "expr": "table2.*", - "alias": null, - "function": null, - "subquery": null - } - ], - "partition": null, - "where": null, - "order": null, - "limit": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "QUICK" - } - }, - "first": 0, - "last": 10 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected keyword.", - { - "@type": "@13" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@13" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr3.in deleted file mode 100644 index 1bbda428..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr3.in +++ /dev/null @@ -1 +0,0 @@ -DELETE QUICK table1, table2.* table1 AS `t1` table2 AS `t2` WHERE 1=1 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr3.out deleted file mode 100644 index 327a0c72..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr3.out +++ /dev/null @@ -1,365 +0,0 @@ -{ - "query": "DELETE QUICK table1, table2.* table1 AS `t1` table2 AS `t2` WHERE 1=1", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE QUICK table1, table2.* table1 AS `t1` table2 AS `t2` WHERE 1=1", - "len": 69, - "last": 69, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "QUICK", - "value": "QUICK", - "keyword": "QUICK", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table2", - "value": "table2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`t1`", - "value": "t1", - "keyword": null, - "type": 8, - "flags": 2, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table2", - "value": "table2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`t2`", - "value": "t2", - "keyword": null, - "type": 8, - "flags": 2, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 29, - "idx": 30 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": null, - "join": null, - "using": null, - "columns": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "table1", - "expr": "table1", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table2", - "column": null, - "expr": "table2.* table1", - "alias": "t1", - "function": null, - "subquery": null - } - ], - "partition": null, - "where": null, - "order": null, - "limit": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "QUICK" - } - }, - "first": 0, - "last": 16 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "An alias was previously found.", - { - "@type": "@19" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@19" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@19" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@21" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr4.in deleted file mode 100644 index 6d5f0d88..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr4.in +++ /dev/null @@ -1 +0,0 @@ -DELETE QUICK FROM table1, table2.* table1 AS `t1` USING table2 AS `t2` WHERE 1=1 ORDER BY id ASC \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr4.out deleted file mode 100644 index 77a49b03..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr4.out +++ /dev/null @@ -1,459 +0,0 @@ -{ - "query": "DELETE QUICK FROM table1, table2.* table1 AS `t1` USING table2 AS `t2` WHERE 1=1 ORDER BY id ASC", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE QUICK FROM table1, table2.* table1 AS `t1` USING table2 AS `t2` WHERE 1=1 ORDER BY id ASC", - "len": 96, - "last": 96, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "QUICK", - "value": "QUICK", - "keyword": "QUICK", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table2", - "value": "table2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`t1`", - "value": "t1", - "keyword": null, - "type": 8, - "flags": 2, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table2", - "value": "table2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`t2`", - "value": "t2", - "keyword": null, - "type": 8, - "flags": 2, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ORDER BY", - "value": "ORDER BY", - "keyword": "ORDER BY", - "type": 1, - "flags": 7, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ASC", - "value": "ASC", - "keyword": "ASC", - "type": 1, - "flags": 3, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 39, - "idx": 40 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "table2", - "table": null, - "column": null, - "expr": "table2.* table1", - "alias": "t1", - "function": null, - "subquery": null - } - ], - "join": null, - "using": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "table2", - "expr": "table2", - "alias": "t2", - "function": null, - "subquery": null - } - ], - "columns": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": false, - "expr": "1=1" - } - ], - "order": null, - "limit": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "QUICK" - } - }, - "first": 0, - "last": 32 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "This type of clause is not valid in Multi-table queries.", - { - "@type": "@35" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@35" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr5.in deleted file mode 100644 index 6fd84136..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr5.in +++ /dev/null @@ -1 +0,0 @@ -DELETE QUICK FROM table1 WHERE 1=1 ORDER BY id ASC WHERE 1=1 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr5.out deleted file mode 100644 index 9865e6f1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr5.out +++ /dev/null @@ -1,336 +0,0 @@ -{ - "query": "DELETE QUICK FROM table1 WHERE 1=1 ORDER BY id ASC WHERE 1=1", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE QUICK FROM table1 WHERE 1=1 ORDER BY id ASC WHERE 1=1", - "len": 60, - "last": 60, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "QUICK", - "value": "QUICK", - "keyword": "QUICK", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ORDER BY", - "value": "ORDER BY", - "keyword": "ORDER BY", - "type": 1, - "flags": 7, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ASC", - "value": "ASC", - "keyword": "ASC", - "type": 1, - "flags": 3, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 26, - "idx": 27 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": null, - "function": null, - "subquery": null - } - ], - "join": null, - "using": null, - "columns": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": false, - "expr": "1=1" - } - ], - "order": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OrderKeyword", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "id", - "expr": "id", - "alias": null, - "function": null, - "subquery": null - }, - "type": "ASC" - } - ], - "limit": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "QUICK" - } - }, - "first": 0, - "last": 19 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected keyword.", - { - "@type": "@22" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@22" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr6.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr6.in deleted file mode 100644 index da53badb..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr6.in +++ /dev/null @@ -1 +0,0 @@ -DELETE QUICK FROM table1, table2.* table1 AS `t1` USING table2 AS `t2` WHERE 1=1 LIMIT 0, 25 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr6.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr6.out deleted file mode 100644 index 6878d47d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr6.out +++ /dev/null @@ -1,468 +0,0 @@ -{ - "query": "DELETE QUICK FROM table1, table2.* table1 AS `t1` USING table2 AS `t2` WHERE 1=1 LIMIT 0, 25", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE QUICK FROM table1, table2.* table1 AS `t1` USING table2 AS `t2` WHERE 1=1 LIMIT 0, 25", - "len": 92, - "last": 92, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "QUICK", - "value": "QUICK", - "keyword": "QUICK", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table2", - "value": "table2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`t1`", - "value": "t1", - "keyword": null, - "type": 8, - "flags": 2, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table2", - "value": "table2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`t2`", - "value": "t2", - "keyword": null, - "type": 8, - "flags": 2, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIMIT", - "value": "LIMIT", - "keyword": "LIMIT", - "type": 1, - "flags": 3, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "25", - "value": 25, - "keyword": null, - "type": 6, - "flags": 0, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 40, - "idx": 41 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "table2", - "table": null, - "column": null, - "expr": "table2.* table1", - "alias": "t1", - "function": null, - "subquery": null - } - ], - "join": null, - "using": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "table2", - "expr": "table2", - "alias": "t2", - "function": null, - "subquery": null - } - ], - "columns": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": false, - "expr": "1=1" - } - ], - "order": null, - "limit": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "QUICK" - } - }, - "first": 0, - "last": 32 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "This type of clause is not valid in Multi-table queries.", - { - "@type": "@35" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@35" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr7.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr7.in deleted file mode 100644 index a2949b85..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr7.in +++ /dev/null @@ -1 +0,0 @@ -DELETE QUICK FROM table1 WHERE a = 1 ORDER BY id ASC WHERE \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr7.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr7.out deleted file mode 100644 index db28557b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr7.out +++ /dev/null @@ -1,320 +0,0 @@ -{ - "query": "DELETE QUICK FROM table1 WHERE a = 1 ORDER BY id ASC WHERE", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE QUICK FROM table1 WHERE a = 1 ORDER BY id ASC WHERE", - "len": 58, - "last": 58, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "QUICK", - "value": "QUICK", - "keyword": "QUICK", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ORDER BY", - "value": "ORDER BY", - "keyword": "ORDER BY", - "type": 1, - "flags": 7, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ASC", - "value": "ASC", - "keyword": "ASC", - "type": 1, - "flags": 3, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 24, - "idx": 25 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": null, - "function": null, - "subquery": null - } - ], - "join": null, - "using": null, - "columns": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "a" - ], - "isOperator": false, - "expr": "a = 1" - } - ], - "order": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OrderKeyword", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "id", - "expr": "id", - "alias": null, - "function": null, - "subquery": null - }, - "type": "ASC" - } - ], - "limit": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "QUICK" - } - }, - "first": 0, - "last": 21 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected keyword.", - { - "@type": "@24" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@24" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr8.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr8.in deleted file mode 100644 index c0805c32..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr8.in +++ /dev/null @@ -1 +0,0 @@ -DELETE QUICK FROM table1 ASC \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr8.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr8.out deleted file mode 100644 index c92ea789..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr8.out +++ /dev/null @@ -1,170 +0,0 @@ -{ - "query": "DELETE QUICK FROM table1 ASC", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE QUICK FROM table1 ASC", - "len": 28, - "last": 28, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "QUICK", - "value": "QUICK", - "keyword": "QUICK", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ASC", - "value": "ASC", - "keyword": "ASC", - "type": 1, - "flags": 3, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 11 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": null, - "function": null, - "subquery": null - } - ], - "join": null, - "using": null, - "columns": null, - "partition": null, - "where": null, - "order": null, - "limit": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "QUICK" - } - }, - "first": 0, - "last": 7 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected keyword.", - { - "@type": "@10" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@10" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr9.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr9.in deleted file mode 100644 index 92b02329..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr9.in +++ /dev/null @@ -1 +0,0 @@ -DELETE QUICK FROM table1, table2 USING t1 as t,t2 as tt WHEE a =1; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr9.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr9.out deleted file mode 100644 index f89f1970..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteErr9.out +++ /dev/null @@ -1,429 +0,0 @@ -{ - "query": "DELETE QUICK FROM table1, table2 USING t1 as t,t2 as tt WHEE a =1;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE QUICK FROM table1, table2 USING t1 as t,t2 as tt WHEE a =1;", - "len": 66, - "last": 66, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "QUICK", - "value": "QUICK", - "keyword": "QUICK", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table2", - "value": "table2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t", - "value": "t", - "keyword": null, - "type": 0, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t2", - "value": "t2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tt", - "value": "tt", - "keyword": null, - "type": 0, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHEE", - "value": "WHEE", - "keyword": null, - "type": 0, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 33, - "idx": 33 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table2", - "column": null, - "expr": "table2", - "alias": null, - "function": null, - "subquery": null - } - ], - "join": null, - "using": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "t1", - "expr": "t1", - "alias": "t", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "t2", - "expr": "t2", - "alias": "tt", - "function": null, - "subquery": null - } - ], - "columns": null, - "partition": null, - "where": null, - "order": null, - "limit": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "QUICK" - } - }, - "first": 0, - "last": 24 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "An alias was previously found.", - { - "@type": "@27" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@27" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@27" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@29" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@32" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteJoin.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteJoin.in deleted file mode 100644 index 0621d7be..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteJoin.in +++ /dev/null @@ -1 +0,0 @@ -DELETE t1, t2 FROM t1 INNER JOIN t2 INNER JOIN t3 WHERE t1.id=t2.id AND t2.id=t3.id \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteJoin.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteJoin.out deleted file mode 100644 index 4805706a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDeleteJoin.out +++ /dev/null @@ -1,495 +0,0 @@ -{ - "query": "DELETE t1, t2 FROM t1 INNER JOIN t2 INNER JOIN t3 WHERE t1.id=t2.id AND t2.id=t3.id", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE t1, t2 FROM t1 INNER JOIN t2 INNER JOIN t3 WHERE t1.id=t2.id AND t2.id=t3.id", - "len": 83, - "last": 83, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t2", - "value": "t2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INNER JOIN", - "value": "INNER JOIN", - "keyword": "INNER JOIN", - "type": 1, - "flags": 7, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t2", - "value": "t2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INNER JOIN", - "value": "INNER JOIN", - "keyword": "INNER JOIN", - "type": 1, - "flags": 7, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t3", - "value": "t3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t2", - "value": "t2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t2", - "value": "t2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t3", - "value": "t3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 39, - "idx": 39 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "t1", - "column": null, - "expr": "t1", - "alias": null, - "function": null, - "subquery": null - } - ], - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "INNER", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "t2", - "column": null, - "expr": "t2", - "alias": null, - "function": null, - "subquery": null - }, - "on": null, - "using": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "INNER", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "t3", - "column": null, - "expr": "t3", - "alias": null, - "function": null, - "subquery": null - }, - "on": null, - "using": null - } - ], - "using": null, - "columns": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "t1", - "expr": "t1", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "t2", - "expr": "t2", - "alias": null, - "function": null, - "subquery": null - } - ], - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "t1", - "id", - "t2" - ], - "isOperator": false, - "expr": "t1.id=t2.id" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "t2", - "id", - "t3" - ], - "isOperator": false, - "expr": "t2.id=t3.id" - } - ], - "order": null, - "limit": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 37 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelimiter.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelimiter.in deleted file mode 100644 index 2522c055..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelimiter.in +++ /dev/null @@ -1,5 +0,0 @@ -SELECT * FROM foo; -DELIMITER $$ -SELECT * FROM bar$$ -DELIMITER ; -SELECT * FROM baz; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelimiter.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelimiter.out deleted file mode 100644 index a983357c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDelimiter.out +++ /dev/null @@ -1,488 +0,0 @@ -{ - "query": "SELECT * FROM foo;\nDELIMITER $$\nSELECT * FROM bar$$\nDELIMITER ;\nSELECT * FROM baz;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM foo;\nDELIMITER $$\nSELECT * FROM bar$$\nDELIMITER ;\nSELECT * FROM baz;", - "len": 82, - "last": 82, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELIMITER", - "value": "DELIMITER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "$$", - "value": "$$", - "keyword": null, - "type": 9, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "bar", - "value": "bar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "$$", - "value": "$$", - "keyword": null, - "type": 9, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELIMITER", - "value": "DELIMITER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "baz", - "value": "baz", - "keyword": null, - "type": 0, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 35, - "idx": 35 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "foo", - "column": null, - "expr": "foo", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "bar", - "column": null, - "expr": "bar", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 13, - "last": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "baz", - "column": null, - "expr": "baz", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 26, - "last": 32 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDrop.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDrop.in deleted file mode 100644 index 4cda4b6f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDrop.in +++ /dev/null @@ -1 +0,0 @@ -DROP USER IF EXISTS 'testtest'@'%'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDrop.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDrop.out deleted file mode 100644 index 34ea9d73..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDrop.out +++ /dev/null @@ -1,141 +0,0 @@ -{ - "query": "DROP USER IF EXISTS 'testtest'@'%';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DROP USER IF EXISTS 'testtest'@'%';", - "len": 35, - "last": 35, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DROP", - "value": "DROP", - "keyword": "DROP", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USER", - "value": "USER", - "keyword": "USER", - "type": 1, - "flags": 33, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IF EXISTS", - "value": "IF EXISTS", - "keyword": "IF EXISTS", - "type": 1, - "flags": 7, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'testtest'@'%'", - "value": "testtest@%", - "keyword": null, - "type": 8, - "flags": 4, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 9, - "idx": 9 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DropStatement", - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "testtest@%", - "column": null, - "expr": "'testtest'@'%'", - "alias": null, - "function": null, - "subquery": null - } - ], - "table": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "USER", - "3": "IF EXISTS" - } - }, - "first": 0, - "last": 6 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDrop2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDrop2.in deleted file mode 100644 index 34b5dc01..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDrop2.in +++ /dev/null @@ -1 +0,0 @@ -DROP USER 'testtest'@'%'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDrop2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDrop2.out deleted file mode 100644 index 97a82e40..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseDrop2.out +++ /dev/null @@ -1,122 +0,0 @@ -{ - "query": "DROP USER 'testtest'@'%';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DROP USER 'testtest'@'%';", - "len": 25, - "last": 25, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DROP", - "value": "DROP", - "keyword": "DROP", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USER", - "value": "USER", - "keyword": "USER", - "type": 1, - "flags": 33, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'testtest'@'%'", - "value": "testtest@%", - "keyword": null, - "type": 8, - "flags": 4, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 7, - "idx": 7 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DropStatement", - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "testtest@%", - "column": null, - "expr": "'testtest'@'%'", - "alias": null, - "function": null, - "subquery": null - } - ], - "table": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "USER" - } - }, - "first": 0, - "last": 4 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain.in deleted file mode 100644 index bb599d64..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain.in +++ /dev/null @@ -1 +0,0 @@ -EXPLAIN SELECT * FROM test; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain.out deleted file mode 100644 index a9a9d192..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain.out +++ /dev/null @@ -1,236 +0,0 @@ -{ - "query": "EXPLAIN SELECT * FROM test;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "EXPLAIN SELECT * FROM test;", - "len": 27, - "last": 27, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EXPLAIN", - "value": "EXPLAIN", - "keyword": "EXPLAIN", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 11, - "idx": 11 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ExplainStatement", - "bodyParser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@4" - }, - { - "@type": "@5" - }, - { - "@type": "@6" - }, - { - "@type": "@7" - }, - { - "@type": "@8" - }, - { - "@type": "@9" - }, - { - "@type": "@10" - }, - { - "@type": "@11" - }, - { - "@type": "@12" - } - ], - "count": 9, - "idx": 9 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test", - "column": null, - "expr": "test", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 6 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "statementAlias": "EXPLAIN", - "connectionId": null, - "explainedDatabase": null, - "explainedTable": null, - "explainedColumn": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 10 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain1.in deleted file mode 100644 index 2582d7f1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain1.in +++ /dev/null @@ -1 +0,0 @@ -ANALYZE SELECT * FROM orders \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain1.out deleted file mode 100644 index fbb7549a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain1.out +++ /dev/null @@ -1,224 +0,0 @@ -{ - "query": "ANALYZE SELECT * FROM orders", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ANALYZE SELECT * FROM orders", - "len": 28, - "last": 28, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ANALYZE", - "value": "ANALYZE", - "keyword": "ANALYZE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "orders", - "value": "orders", - "keyword": null, - "type": 0, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 10 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ExplainStatement", - "bodyParser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@4" - }, - { - "@type": "@5" - }, - { - "@type": "@6" - }, - { - "@type": "@7" - }, - { - "@type": "@8" - }, - { - "@type": "@9" - }, - { - "@type": "@10" - }, - { - "@type": "@11" - } - ], - "count": 8, - "idx": 8 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "orders", - "column": null, - "expr": "orders", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 6 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "statementAlias": "ANALYZE", - "connectionId": null, - "explainedDatabase": null, - "explainedTable": null, - "explainedColumn": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 9 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain10.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain10.in deleted file mode 100644 index 80385eb2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain10.in +++ /dev/null @@ -1 +0,0 @@ -DESC REPLACE INTO test VALUES (1, 'Old', '2014-08-20 18:47:00'); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain10.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain10.out deleted file mode 100644 index 0ab27a76..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain10.out +++ /dev/null @@ -1,355 +0,0 @@ -{ - "query": "DESC REPLACE INTO test VALUES (1, 'Old', '2014-08-20 18:47:00');", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DESC REPLACE INTO test VALUES (1, 'Old', '2014-08-20 18:47:00');", - "len": 64, - "last": 64, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DESC", - "value": "DESC", - "keyword": "DESC", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REPLACE", - "value": "REPLACE", - "keyword": "REPLACE", - "type": 1, - "flags": 35, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Old'", - "value": "Old", - "keyword": null, - "type": 7, - "flags": 1, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'2014-08-20 18:47:00'", - "value": "2014-08-20 18:47:00", - "keyword": null, - "type": 7, - "flags": 1, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 21, - "idx": 21 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ExplainStatement", - "bodyParser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@4" - }, - { - "@type": "@5" - }, - { - "@type": "@6" - }, - { - "@type": "@7" - }, - { - "@type": "@8" - }, - { - "@type": "@9" - }, - { - "@type": "@10" - }, - { - "@type": "@11" - }, - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - } - ], - "count": 19, - "idx": 19 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ReplaceStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test", - "column": null, - "expr": "test", - "alias": null, - "function": null, - "subquery": null - }, - "columns": null, - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "1", - "'Old'", - "'2014-08-20 18:47:00'" - ], - "values": [ - "1", - "Old", - "2014-08-20 18:47:00" - ] - } - ], - "set": null, - "select": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 16 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "statementAlias": "DESC", - "connectionId": null, - "explainedDatabase": null, - "explainedTable": null, - "explainedColumn": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 20 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain11.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain11.in deleted file mode 100644 index de1309cc..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain11.in +++ /dev/null @@ -1 +0,0 @@ -ANALYSE REPLACE INTO test VALUES (1, 'Old', '2014-08-20 18:47:00'); diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain11.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain11.out deleted file mode 100644 index 626fb5a5..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain11.out +++ /dev/null @@ -1,240 +0,0 @@ -{ - "query": "ANALYSE REPLACE INTO test VALUES (1, 'Old', '2014-08-20 18:47:00');\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ANALYSE REPLACE INTO test VALUES (1, 'Old', '2014-08-20 18:47:00');\n", - "len": 68, - "last": 68, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ANALYSE", - "value": "ANALYSE", - "keyword": "ANALYSE", - "type": 1, - "flags": 1, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REPLACE", - "value": "REPLACE", - "keyword": "REPLACE", - "type": 1, - "flags": 35, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Old'", - "value": "Old", - "keyword": null, - "type": 7, - "flags": 1, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'2014-08-20 18:47:00'", - "value": "2014-08-20 18:47:00", - "keyword": null, - "type": 7, - "flags": 1, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 22, - "idx": 22 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unrecognized statement type.", - { - "@type": "@2" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain12.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain12.in deleted file mode 100644 index b04c5286..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain12.in +++ /dev/null @@ -1 +0,0 @@ -EXPLAIN FORMAT=json REPLACE INTO test VALUES (1, 'Old', '2014-08-20 18:47:00'); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain12.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain12.out deleted file mode 100644 index 9183600a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain12.out +++ /dev/null @@ -1,398 +0,0 @@ -{ - "query": "EXPLAIN FORMAT=json REPLACE INTO test VALUES (1, 'Old', '2014-08-20 18:47:00');", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "EXPLAIN FORMAT=json REPLACE INTO test VALUES (1, 'Old', '2014-08-20 18:47:00');", - "len": 79, - "last": 79, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EXPLAIN", - "value": "EXPLAIN", - "keyword": "EXPLAIN", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FORMAT", - "value": "FORMAT", - "keyword": "FORMAT", - "type": 1, - "flags": 33, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "json", - "value": "json", - "keyword": "JSON", - "type": 1, - "flags": 9, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REPLACE", - "value": "REPLACE", - "keyword": "REPLACE", - "type": 1, - "flags": 35, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Old'", - "value": "Old", - "keyword": null, - "type": 7, - "flags": 1, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'2014-08-20 18:47:00'", - "value": "2014-08-20 18:47:00", - "keyword": null, - "type": 7, - "flags": 1, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 25, - "idx": 25 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ExplainStatement", - "bodyParser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@8" - }, - { - "@type": "@9" - }, - { - "@type": "@10" - }, - { - "@type": "@11" - }, - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - } - ], - "count": 19, - "idx": 19 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ReplaceStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test", - "column": null, - "expr": "test", - "alias": null, - "function": null, - "subquery": null - }, - "columns": null, - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "1", - "'Old'", - "'2014-08-20 18:47:00'" - ], - "values": [ - "1", - "Old", - "2014-08-20 18:47:00" - ] - } - ], - "set": null, - "select": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 16 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "statementAlias": "EXPLAIN", - "connectionId": null, - "explainedDatabase": null, - "explainedTable": null, - "explainedColumn": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "FORMAT", - "equals": true, - "expr": "json", - "value": "json" - } - } - }, - "first": 0, - "last": 24 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain13.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain13.in deleted file mode 100644 index 788bc564..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain13.in +++ /dev/null @@ -1 +0,0 @@ -DESCRIBE FORMAT=json REPLACE INTO test VALUES (1, 'Old', '2014-08-20 18:47:00'); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain13.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain13.out deleted file mode 100644 index 7d51bc6b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain13.out +++ /dev/null @@ -1,398 +0,0 @@ -{ - "query": "DESCRIBE FORMAT=json REPLACE INTO test VALUES (1, 'Old', '2014-08-20 18:47:00');", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DESCRIBE FORMAT=json REPLACE INTO test VALUES (1, 'Old', '2014-08-20 18:47:00');", - "len": 80, - "last": 80, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DESCRIBE", - "value": "DESCRIBE", - "keyword": "DESCRIBE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FORMAT", - "value": "FORMAT", - "keyword": "FORMAT", - "type": 1, - "flags": 33, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "json", - "value": "json", - "keyword": "JSON", - "type": 1, - "flags": 9, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REPLACE", - "value": "REPLACE", - "keyword": "REPLACE", - "type": 1, - "flags": 35, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Old'", - "value": "Old", - "keyword": null, - "type": 7, - "flags": 1, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'2014-08-20 18:47:00'", - "value": "2014-08-20 18:47:00", - "keyword": null, - "type": 7, - "flags": 1, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 25, - "idx": 25 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ExplainStatement", - "bodyParser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@8" - }, - { - "@type": "@9" - }, - { - "@type": "@10" - }, - { - "@type": "@11" - }, - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - } - ], - "count": 19, - "idx": 19 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ReplaceStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test", - "column": null, - "expr": "test", - "alias": null, - "function": null, - "subquery": null - }, - "columns": null, - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "1", - "'Old'", - "'2014-08-20 18:47:00'" - ], - "values": [ - "1", - "Old", - "2014-08-20 18:47:00" - ] - } - ], - "set": null, - "select": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 16 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "statementAlias": "DESCRIBE", - "connectionId": null, - "explainedDatabase": null, - "explainedTable": null, - "explainedColumn": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "FORMAT", - "equals": true, - "expr": "json", - "value": "json" - } - } - }, - "first": 0, - "last": 24 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain14.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain14.in deleted file mode 100644 index 986d0f20..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain14.in +++ /dev/null @@ -1 +0,0 @@ -DESC TABLE `fo` ORDER BY `fo`.`uuid` ASC; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain14.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain14.out deleted file mode 100644 index 63fe473a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain14.out +++ /dev/null @@ -1,270 +0,0 @@ -{ - "query": "DESC TABLE `fo` ORDER BY `fo`.`uuid` ASC;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DESC TABLE `fo` ORDER BY `fo`.`uuid` ASC;", - "len": 41, - "last": 41, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DESC", - "value": "DESC", - "keyword": "DESC", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`fo`", - "value": "fo", - "keyword": null, - "type": 8, - "flags": 2, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ORDER BY", - "value": "ORDER BY", - "keyword": "ORDER BY", - "type": 1, - "flags": 7, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`fo`", - "value": "fo", - "keyword": null, - "type": 8, - "flags": 2, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`uuid`", - "value": "uuid", - "keyword": null, - "type": 8, - "flags": 2, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ASC", - "value": "ASC", - "keyword": "ASC", - "type": 1, - "flags": 3, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 15, - "idx": 15 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ExplainStatement", - "bodyParser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@4" - }, - { - "@type": "@5" - }, - { - "@type": "@6" - }, - { - "@type": "@7" - }, - { - "@type": "@8" - }, - { - "@type": "@9" - }, - { - "@type": "@10" - }, - { - "@type": "@11" - }, - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - } - ], - "count": 13, - "idx": 13 - }, - "statements": [], - "brackets": 0, - "strict": false, - "errors": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Exceptions\\ParserException", - "token": { - "@type": "@4" - }, - "message": "Unrecognized statement type.", - "code": 0, - "file": "/src/Parser.php", - "line": 628 - } - ] - }, - "statementAlias": "DESC", - "connectionId": null, - "explainedDatabase": null, - "explainedTable": null, - "explainedColumn": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 2 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unrecognized statement type.", - { - "@type": "@4" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@6" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@8" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain2.in deleted file mode 100644 index a9bb330b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain2.in +++ /dev/null @@ -1 +0,0 @@ -DESC tablename \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain2.out deleted file mode 100644 index 4c5417d0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain2.out +++ /dev/null @@ -1,83 +0,0 @@ -{ - "query": "DESC tablename", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DESC tablename", - "len": 14, - "last": 14, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DESC", - "value": "DESC", - "keyword": "DESC", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tablename", - "value": "tablename", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 4, - "idx": 4 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ExplainStatement", - "bodyParser": null, - "statementAlias": "DESC", - "connectionId": null, - "explainedDatabase": null, - "explainedTable": "tablename", - "explainedColumn": null, - "options": null, - "first": 0, - "last": 2 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain3.in deleted file mode 100644 index a91a0f9d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain3.in +++ /dev/null @@ -1 +0,0 @@ -EXPLAIN ANALYZE SELECT first_name, last_name, SUM(amount) AS total FROM staff INNER JOIN payment ON staff.staff_id = payment.staff_id AND payment_date LIKE '2005-08%' GROUP BY first_name, last_name; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain3.out deleted file mode 100644 index e807bbe2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain3.out +++ /dev/null @@ -1,874 +0,0 @@ -{ - "query": "EXPLAIN ANALYZE SELECT first_name, last_name, SUM(amount) AS total FROM staff INNER JOIN payment ON staff.staff_id = payment.staff_id AND payment_date LIKE '2005-08%' GROUP BY first_name, last_name;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "EXPLAIN ANALYZE SELECT first_name, last_name, SUM(amount) AS total FROM staff INNER JOIN payment ON staff.staff_id = payment.staff_id AND payment_date LIKE '2005-08%' GROUP BY first_name, last_name;", - "len": 198, - "last": 198, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EXPLAIN", - "value": "EXPLAIN", - "keyword": "EXPLAIN", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ANALYZE", - "value": "ANALYZE", - "keyword": "ANALYZE", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "first_name", - "value": "first_name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "last_name", - "value": "last_name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUM", - "value": "SUM", - "keyword": "SUM", - "type": 1, - "flags": 33, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "amount", - "value": "amount", - "keyword": null, - "type": 0, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "total", - "value": "total", - "keyword": null, - "type": 0, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "staff", - "value": "staff", - "keyword": null, - "type": 0, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INNER JOIN", - "value": "INNER JOIN", - "keyword": "INNER JOIN", - "type": 1, - "flags": 7, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "payment", - "value": "payment", - "keyword": null, - "type": 0, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "staff", - "value": "staff", - "keyword": null, - "type": 0, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "staff_id", - "value": "staff_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "payment", - "value": "payment", - "keyword": null, - "type": 0, - "flags": 0, - "position": 117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "staff_id", - "value": "staff_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 134 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 137 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "payment_date", - "value": "payment_date", - "keyword": null, - "type": 0, - "flags": 0, - "position": 138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 150 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIKE", - "value": "LIKE", - "keyword": "LIKE", - "type": 1, - "flags": 3, - "position": 151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'2005-08%'", - "value": "2005-08%", - "keyword": null, - "type": 7, - "flags": 1, - "position": 156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 166 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "GROUP BY", - "value": "GROUP BY", - "keyword": "GROUP BY", - "type": 1, - "flags": 7, - "position": 167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 175 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "first_name", - "value": "first_name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 176 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 186 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 187 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "last_name", - "value": "last_name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 188 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 197 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 57, - "idx": 57 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ExplainStatement", - "bodyParser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@6" - }, - { - "@type": "@7" - }, - { - "@type": "@8" - }, - { - "@type": "@9" - }, - { - "@type": "@10" - }, - { - "@type": "@11" - }, - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - }, - { - "@type": "@27" - }, - { - "@type": "@28" - }, - { - "@type": "@29" - }, - { - "@type": "@30" - }, - { - "@type": "@31" - }, - { - "@type": "@32" - }, - { - "@type": "@33" - }, - { - "@type": "@34" - }, - { - "@type": "@35" - }, - { - "@type": "@36" - }, - { - "@type": "@37" - }, - { - "@type": "@38" - }, - { - "@type": "@39" - }, - { - "@type": "@40" - }, - { - "@type": "@41" - }, - { - "@type": "@42" - }, - { - "@type": "@43" - }, - { - "@type": "@44" - }, - { - "@type": "@45" - }, - { - "@type": "@46" - }, - { - "@type": "@47" - }, - { - "@type": "@48" - }, - { - "@type": "@49" - }, - { - "@type": "@50" - }, - { - "@type": "@51" - }, - { - "@type": "@52" - }, - { - "@type": "@53" - }, - { - "@type": "@54" - }, - { - "@type": "@55" - }, - { - "@type": "@56" - }, - { - "@type": "@57" - }, - { - "@type": "@58" - } - ], - "count": 53, - "idx": 53 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "first_name", - "expr": "first_name", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "last_name", - "expr": "last_name", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "SUM(amount)", - "alias": "total", - "function": "SUM", - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "staff", - "column": null, - "expr": "staff", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\GroupKeyword", - "type": null, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "first_name", - "expr": "first_name", - "alias": null, - "function": null, - "subquery": null - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\GroupKeyword", - "type": null, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "last_name", - "expr": "last_name", - "alias": null, - "function": null, - "subquery": null - } - } - ], - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "INNER", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "payment", - "column": null, - "expr": "payment", - "alias": null, - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "staff", - "staff_id", - "payment" - ], - "isOperator": false, - "expr": "staff.staff_id = payment.staff_id" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "payment_date", - "2005-08%" - ], - "isOperator": false, - "expr": "payment_date LIKE '2005-08%'" - } - ], - "using": null - } - ], - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 50 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "statementAlias": "EXPLAIN ANALYZE", - "connectionId": null, - "explainedDatabase": null, - "explainedTable": null, - "explainedColumn": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 56 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain4.in deleted file mode 100644 index 86cd3338..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain4.in +++ /dev/null @@ -1 +0,0 @@ -EXPLAIN FORMAT=TREE SELECT * FROM db \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain4.out deleted file mode 100644 index e4ddbd9c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain4.out +++ /dev/null @@ -1,267 +0,0 @@ -{ - "query": "EXPLAIN FORMAT=TREE SELECT * FROM db", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "EXPLAIN FORMAT=TREE SELECT * FROM db", - "len": 36, - "last": 36, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EXPLAIN", - "value": "EXPLAIN", - "keyword": "EXPLAIN", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FORMAT", - "value": "FORMAT", - "keyword": "FORMAT", - "type": 1, - "flags": 33, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TREE", - "value": "TREE", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "db", - "value": "db", - "keyword": null, - "type": 0, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 14, - "idx": 14 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ExplainStatement", - "bodyParser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@8" - }, - { - "@type": "@9" - }, - { - "@type": "@10" - }, - { - "@type": "@11" - }, - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - } - ], - "count": 8, - "idx": 8 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "db", - "column": null, - "expr": "db", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 6 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "statementAlias": "EXPLAIN", - "connectionId": null, - "explainedDatabase": null, - "explainedTable": null, - "explainedColumn": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "FORMAT", - "equals": true, - "expr": "TREE", - "value": "TREE" - } - } - }, - "first": 0, - "last": 13 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain5.in deleted file mode 100644 index 9af50c83..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain5.in +++ /dev/null @@ -1 +0,0 @@ -DESC phpmyadmin.pma__users; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain5.out deleted file mode 100644 index fe9e75d6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain5.out +++ /dev/null @@ -1,110 +0,0 @@ -{ - "query": "DESC phpmyadmin.pma__users;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DESC phpmyadmin.pma__users;", - "len": 27, - "last": 27, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DESC", - "value": "DESC", - "keyword": "DESC", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "phpmyadmin", - "value": "phpmyadmin", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pma__users", - "value": "pma__users", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 7, - "idx": 7 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ExplainStatement", - "bodyParser": null, - "statementAlias": "DESC", - "connectionId": null, - "explainedDatabase": "phpmyadmin", - "explainedTable": "pma__users", - "explainedColumn": null, - "options": null, - "first": 0, - "last": 4 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain6.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain6.in deleted file mode 100644 index 7d41c247..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain6.in +++ /dev/null @@ -1 +0,0 @@ -DESCRIBE Shop 'N%'; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain6.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain6.out deleted file mode 100644 index ce17cfa5..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain6.out +++ /dev/null @@ -1,119 +0,0 @@ -{ - "query": "DESCRIBE Shop 'N%';\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DESCRIBE Shop 'N%';\n", - "len": 20, - "last": 20, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DESCRIBE", - "value": "DESCRIBE", - "keyword": "DESCRIBE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "Shop", - "value": "Shop", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'N%'", - "value": "N%", - "keyword": null, - "type": 7, - "flags": 1, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 8, - "idx": 8 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ExplainStatement", - "bodyParser": null, - "statementAlias": "DESCRIBE", - "connectionId": null, - "explainedDatabase": null, - "explainedTable": "Shop", - "explainedColumn": "N%", - "options": null, - "first": 0, - "last": 4 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain7.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain7.in deleted file mode 100644 index 67cc6085..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain7.in +++ /dev/null @@ -1 +0,0 @@ -DESCRIBE Shop 'Name'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain7.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain7.out deleted file mode 100644 index 4399ff68..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain7.out +++ /dev/null @@ -1,110 +0,0 @@ -{ - "query": "DESCRIBE Shop 'Name';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DESCRIBE Shop 'Name';", - "len": 21, - "last": 21, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DESCRIBE", - "value": "DESCRIBE", - "keyword": "DESCRIBE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "Shop", - "value": "Shop", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Name'", - "value": "Name", - "keyword": null, - "type": 7, - "flags": 1, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 7, - "idx": 7 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ExplainStatement", - "bodyParser": null, - "statementAlias": "DESCRIBE", - "connectionId": null, - "explainedDatabase": null, - "explainedTable": "Shop", - "explainedColumn": "Name", - "options": null, - "first": 0, - "last": 4 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain8.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain8.in deleted file mode 100644 index 268ac4b9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain8.in +++ /dev/null @@ -1 +0,0 @@ -DESCRIBE Shop N__e; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain8.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain8.out deleted file mode 100644 index e638ccdf..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain8.out +++ /dev/null @@ -1,110 +0,0 @@ -{ - "query": "DESCRIBE Shop N__e;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DESCRIBE Shop N__e;", - "len": 19, - "last": 19, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DESCRIBE", - "value": "DESCRIBE", - "keyword": "DESCRIBE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "Shop", - "value": "Shop", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "N__e", - "value": "N__e", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 7, - "idx": 7 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ExplainStatement", - "bodyParser": null, - "statementAlias": "DESCRIBE", - "connectionId": null, - "explainedDatabase": null, - "explainedTable": "Shop", - "explainedColumn": "N__e", - "options": null, - "first": 0, - "last": 4 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain9.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain9.in deleted file mode 100644 index a0a58e86..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain9.in +++ /dev/null @@ -1 +0,0 @@ -DESCRIBE tablename 581 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain9.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain9.out deleted file mode 100644 index df3ea15d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplain9.out +++ /dev/null @@ -1,101 +0,0 @@ -{ - "query": "DESCRIBE tablename 581", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DESCRIBE tablename 581", - "len": 22, - "last": 22, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DESCRIBE", - "value": "DESCRIBE", - "keyword": "DESCRIBE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tablename", - "value": "tablename", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "581", - "value": 581, - "keyword": null, - "type": 6, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 6, - "idx": 6 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ExplainStatement", - "bodyParser": null, - "statementAlias": "DESCRIBE", - "connectionId": null, - "explainedDatabase": null, - "explainedTable": "tablename", - "explainedColumn": 581, - "options": null, - "first": 0, - "last": 4 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplainErr.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplainErr.in deleted file mode 100644 index 4daa3884..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplainErr.in +++ /dev/null @@ -1 +0,0 @@ -EXPLAIN FOR SELECT * \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplainErr.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplainErr.out deleted file mode 100644 index 0fd14caa..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplainErr.out +++ /dev/null @@ -1,165 +0,0 @@ -{ - "query": "EXPLAIN FOR SELECT *", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "EXPLAIN FOR SELECT *", - "len": 20, - "last": 20, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EXPLAIN", - "value": "EXPLAIN", - "keyword": "EXPLAIN", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FOR", - "value": "FOR", - "keyword": "FOR", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 1, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 8, - "idx": 8 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ExplainStatement", - "bodyParser": null, - "statementAlias": "EXPLAIN", - "connectionId": null, - "explainedDatabase": null, - "explainedTable": null, - "explainedColumn": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 2 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 3, - "last": 6 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected token.", - { - "@type": "@4" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplainErr1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplainErr1.in deleted file mode 100644 index fc35a840..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplainErr1.in +++ /dev/null @@ -1 +0,0 @@ -ANALYZE SELECT FROM \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplainErr1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplainErr1.out deleted file mode 100644 index ef5cc35a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplainErr1.out +++ /dev/null @@ -1,197 +0,0 @@ -{ - "query": "ANALYZE SELECT FROM", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "ANALYZE SELECT FROM", - "len": 19, - "last": 19, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ANALYZE", - "value": "ANALYZE", - "keyword": "ANALYZE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 6, - "idx": 7 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ExplainStatement", - "bodyParser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@4" - }, - { - "@type": "@5" - }, - { - "@type": "@6" - }, - { - "@type": "@7" - } - ], - "count": 4, - "idx": 4 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 2 - } - ], - "brackets": 0, - "strict": false, - "errors": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Exceptions\\ParserException", - "token": { - "@type": "@6" - }, - "message": "An expression was expected.", - "code": 0, - "file": "/src/Parser.php", - "line": 628 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Exceptions\\ParserException", - "token": { - "@type": "@7" - }, - "message": "An expression was expected.", - "code": 0, - "file": "/src/Parser.php", - "line": 628 - } - ] - }, - "statementAlias": "ANALYZE", - "connectionId": null, - "explainedDatabase": null, - "explainedTable": null, - "explainedColumn": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 2 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "An expression was expected.", - { - "@type": "@6" - }, - 0 - ], - [ - "An expression was expected.", - { - "@type": "@7" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@6" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplainErr2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplainErr2.in deleted file mode 100644 index 9cddce5c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplainErr2.in +++ /dev/null @@ -1 +0,0 @@ -EXPLAIN ANALYZE FROM TABLE \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplainErr2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplainErr2.out deleted file mode 100644 index 3281bae6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplainErr2.out +++ /dev/null @@ -1,137 +0,0 @@ -{ - "query": "EXPLAIN ANALYZE FROM TABLE", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "EXPLAIN ANALYZE FROM TABLE", - "len": 26, - "last": 26, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EXPLAIN", - "value": "EXPLAIN", - "keyword": "EXPLAIN", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ANALYZE", - "value": "ANALYZE", - "keyword": "ANALYZE", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 8, - "idx": 9 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ExplainStatement", - "bodyParser": null, - "statementAlias": "EXPLAIN ANALYZE", - "connectionId": null, - "explainedDatabase": null, - "explainedTable": null, - "explainedColumn": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 4 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected token.", - { - "@type": "@6" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@8" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplainErr3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplainErr3.in deleted file mode 100644 index 53a50d5a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplainErr3.in +++ /dev/null @@ -1 +0,0 @@ -EXPLAIN \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplainErr3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplainErr3.out deleted file mode 100644 index 36781694..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseExplainErr3.out +++ /dev/null @@ -1,82 +0,0 @@ -{ - "query": "EXPLAIN ", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "EXPLAIN ", - "len": 8, - "last": 8, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EXPLAIN", - "value": "EXPLAIN", - "keyword": "EXPLAIN", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 3, - "idx": 3 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ExplainStatement", - "bodyParser": null, - "statementAlias": "EXPLAIN", - "connectionId": null, - "explainedDatabase": null, - "explainedTable": null, - "explainedColumn": null, - "options": null, - "first": 0, - "last": 1 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Expected a table name.", - { - "@type": "@3" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsert.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsert.in deleted file mode 100644 index 4f200e2c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsert.in +++ /dev/null @@ -1,6 +0,0 @@ -INSERT LOW_PRIORITY -INTO - users(`id`, `username`, `password`) -VALUES - (1, "Dan", "5d41402abc4b2a76b9719d911017c592"), - (2, "Paul", "7d793037a0760186574b0282f2f435e7"); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsert.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsert.out deleted file mode 100644 index 93555f3c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsert.out +++ /dev/null @@ -1,470 +0,0 @@ -{ - "query": "INSERT LOW_PRIORITY\nINTO\n users(`id`, `username`, `password`)\nVALUES\n (1, \"Dan\", \"5d41402abc4b2a76b9719d911017c592\"),\n (2, \"Paul\", \"7d793037a0760186574b0282f2f435e7\");", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "INSERT LOW_PRIORITY\nINTO\n users(`id`, `username`, `password`)\nVALUES\n (1, \"Dan\", \"5d41402abc4b2a76b9719d911017c592\"),\n (2, \"Paul\", \"7d793037a0760186574b0282f2f435e7\");", - "len": 176, - "last": 176, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOW_PRIORITY", - "value": "LOW_PRIORITY", - "keyword": "LOW_PRIORITY", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "users", - "value": "users", - "keyword": null, - "type": 0, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`id`", - "value": "id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`username`", - "value": "username", - "keyword": null, - "type": 8, - "flags": 2, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`password`", - "value": "password", - "keyword": null, - "type": 8, - "flags": 2, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Dan\"", - "value": "Dan", - "keyword": null, - "type": 7, - "flags": 2, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"5d41402abc4b2a76b9719d911017c592\"", - "value": "5d41402abc4b2a76b9719d911017c592", - "keyword": null, - "type": 7, - "flags": 2, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Paul\"", - "value": "Paul", - "keyword": null, - "type": 7, - "flags": 2, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"7d793037a0760186574b0282f2f435e7\"", - "value": "7d793037a0760186574b0282f2f435e7", - "keyword": null, - "type": 7, - "flags": 2, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 175 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 41, - "idx": 41 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "users", - "column": null, - "expr": "users", - "alias": null, - "function": null, - "subquery": null - }, - "columns": [ - "id", - "username", - "password" - ], - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "1", - "\"Dan\"", - "\"5d41402abc4b2a76b9719d911017c592\"" - ], - "values": [ - "1", - "Dan", - "5d41402abc4b2a76b9719d911017c592" - ] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "2", - "\"Paul\"", - "\"7d793037a0760186574b0282f2f435e7\"" - ], - "values": [ - "2", - "Paul", - "7d793037a0760186574b0282f2f435e7" - ] - } - ], - "set": null, - "select": null, - "with": null, - "onDuplicateSet": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "LOW_PRIORITY" - } - }, - "first": 0, - "last": 38 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertErr.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertErr.in deleted file mode 100644 index bd5c0b3d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertErr.in +++ /dev/null @@ -1 +0,0 @@ -INSERT SELECT diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertErr.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertErr.out deleted file mode 100644 index 67996315..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertErr.out +++ /dev/null @@ -1,134 +0,0 @@ -{ - "query": "INSERT SELECT\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "INSERT SELECT\n", - "len": 14, - "last": 14, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 5, - "idx": 5 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": null, - "values": null, - "set": null, - "select": null, - "with": null, - "onDuplicateSet": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 1 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 2, - "last": 3 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected keyword.", - { - "@type": "@4" - }, - 0 - ], - [ - "An expression was expected.", - { - "@type": "@6" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertErr2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertErr2.in deleted file mode 100644 index f4f70103..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertErr2.in +++ /dev/null @@ -1,2 +0,0 @@ -INSERT INTO x "string" - diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertErr2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertErr2.out deleted file mode 100644 index 465d7996..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertErr2.out +++ /dev/null @@ -1,164 +0,0 @@ -{ - "query": "INSERT INTO x \"string\"\n\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "INSERT INTO x \"string\"\n\n", - "len": 24, - "last": 24, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "x", - "value": "x", - "keyword": "X", - "type": 1, - "flags": 33, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"string\"", - "value": "string", - "keyword": null, - "type": 7, - "flags": 2, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 9, - "idx": 9 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "x", - "column": null, - "expr": "x", - "alias": null, - "function": null, - "subquery": null - }, - "columns": null, - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": null, - "set": null, - "select": null, - "with": null, - "onDuplicateSet": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 5 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected token.", - { - "@type": "@8" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@8" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertFunction.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertFunction.in deleted file mode 100644 index 5958daf0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertFunction.in +++ /dev/null @@ -1,2 +0,0 @@ -INSERT INTO labels(`label`) -VALUES (concat('A', ' ', 'label')); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertFunction.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertFunction.out deleted file mode 100644 index 9c941a84..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertFunction.out +++ /dev/null @@ -1,305 +0,0 @@ -{ - "query": "INSERT INTO labels(`label`)\nVALUES (concat('A', ' ', 'label'));", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "INSERT INTO labels(`label`)\nVALUES (concat('A', ' ', 'label'));", - "len": 63, - "last": 63, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "labels", - "value": "labels", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`label`", - "value": "label", - "keyword": null, - "type": 8, - "flags": 2, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "concat", - "value": "concat", - "keyword": "CONCAT", - "type": 1, - "flags": 33, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'A'", - "value": "A", - "keyword": null, - "type": 7, - "flags": 1, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "' '", - "value": " ", - "keyword": null, - "type": 7, - "flags": 1, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'label'", - "value": "label", - "keyword": null, - "type": 7, - "flags": 1, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 25, - "idx": 25 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "labels", - "column": null, - "expr": "labels", - "alias": null, - "function": null, - "subquery": null - }, - "columns": [ - "label" - ], - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "concat('A', ' ', 'label')" - ], - "values": [ - "concat(A, , label)" - ] - } - ], - "set": null, - "select": null, - "with": null, - "onDuplicateSet": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 22 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertIntoErr.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertIntoErr.in deleted file mode 100644 index 81ce7f9b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertIntoErr.in +++ /dev/null @@ -1,2 +0,0 @@ -INSERT INTO x INSERT - diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertIntoErr.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertIntoErr.out deleted file mode 100644 index 4719287f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertIntoErr.out +++ /dev/null @@ -1,172 +0,0 @@ -{ - "query": "INSERT INTO x INSERT\n\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "INSERT INTO x INSERT\n\n", - "len": 22, - "last": 22, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "x", - "value": "x", - "keyword": "X", - "type": 1, - "flags": 33, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 9, - "idx": 9 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "x", - "column": null, - "expr": "x", - "alias": null, - "function": null, - "subquery": null - }, - "columns": null, - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": null, - "set": null, - "select": null, - "with": null, - "onDuplicateSet": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": null, - "values": null, - "set": null, - "select": null, - "with": null, - "onDuplicateSet": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 6, - "last": 7 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected keyword.", - { - "@type": "@8" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertIntoSet.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertIntoSet.in deleted file mode 100644 index a9788ae6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertIntoSet.in +++ /dev/null @@ -1 +0,0 @@ -INSERT INTO aa SET = INET6_ATON('::ffff:8.8.8.8') \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertIntoSet.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertIntoSet.out deleted file mode 100644 index 78bfff92..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertIntoSet.out +++ /dev/null @@ -1,209 +0,0 @@ -{ - "query": "INSERT INTO aa SET = INET6_ATON('::ffff:8.8.8.8')", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "INSERT INTO aa SET = INET6_ATON('::ffff:8.8.8.8')", - "len": 50, - "last": 50, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "aa", - "value": "aa", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INET6_ATON", - "value": "INET6_ATON", - "keyword": "INET6_ATON", - "type": 1, - "flags": 33, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'::ffff:8.8.8.8'", - "value": "::ffff:8.8.8.8", - "keyword": null, - "type": 7, - "flags": 1, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 15, - "idx": 15 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "aa", - "column": null, - "expr": "aa", - "alias": null, - "function": null, - "subquery": null - }, - "columns": null, - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": null, - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "", - "value": "INET6_ATON('::ffff:8.8.8.8')" - } - ], - "select": null, - "with": null, - "onDuplicateSet": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 13 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertOnDuplicateKey.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertOnDuplicateKey.in deleted file mode 100644 index a72eae1d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertOnDuplicateKey.in +++ /dev/null @@ -1,2 +0,0 @@ -INSERT INTO `champs` (`id`,`val`) VALUES (412,'Thresh') -ON DUPLICATE KEY UPDATE `id`=412,`val`='Thresh' \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertOnDuplicateKey.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertOnDuplicateKey.out deleted file mode 100644 index 3922e526..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertOnDuplicateKey.out +++ /dev/null @@ -1,418 +0,0 @@ -{ - "query": "INSERT INTO `champs` (`id`,`val`) VALUES (412,'Thresh')\nON DUPLICATE KEY UPDATE `id`=412,`val`='Thresh'", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "INSERT INTO `champs` (`id`,`val`) VALUES (412,'Thresh')\nON DUPLICATE KEY UPDATE `id`=412,`val`='Thresh'", - "len": 103, - "last": 103, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`champs`", - "value": "champs", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`id`", - "value": "id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`val`", - "value": "val", - "keyword": null, - "type": 8, - "flags": 2, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "412", - "value": 412, - "keyword": null, - "type": 6, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Thresh'", - "value": "Thresh", - "keyword": null, - "type": 7, - "flags": 1, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DUPLICATE", - "value": "DUPLICATE", - "keyword": "DUPLICATE", - "type": 1, - "flags": 1, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KEY", - "value": "KEY", - "keyword": "KEY", - "type": 1, - "flags": 19, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UPDATE", - "value": "UPDATE", - "keyword": "UPDATE", - "type": 1, - "flags": 3, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`id`", - "value": "id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "412", - "value": 412, - "keyword": null, - "type": 6, - "flags": 0, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`val`", - "value": "val", - "keyword": null, - "type": 8, - "flags": 2, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Thresh'", - "value": "Thresh", - "keyword": null, - "type": 7, - "flags": 1, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 36, - "idx": 36 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "champs", - "column": null, - "expr": "`champs`", - "alias": null, - "function": null, - "subquery": null - }, - "columns": [ - "id", - "val" - ], - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "412", - "'Thresh'" - ], - "values": [ - "412", - "Thresh" - ] - } - ], - "set": null, - "select": null, - "with": null, - "onDuplicateSet": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "`id`", - "value": "412" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "`val`", - "value": "'Thresh'" - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 34 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertOnDuplicateKeyErr.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertOnDuplicateKeyErr.in deleted file mode 100644 index fa4c26c8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertOnDuplicateKeyErr.in +++ /dev/null @@ -1,2 +0,0 @@ -INSERT INTO `champs` (`id`,`val`) VALUES (412,'Thresh') -ON DUPLICATE KEY `id`=412,`val`='Thresh' \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertOnDuplicateKeyErr.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertOnDuplicateKeyErr.out deleted file mode 100644 index 4e3d484d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertOnDuplicateKeyErr.out +++ /dev/null @@ -1,425 +0,0 @@ -{ - "query": "INSERT INTO `champs` (`id`,`val`) VALUES (412,'Thresh')\nON DUPLICATE KEY `id`=412,`val`='Thresh'", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "INSERT INTO `champs` (`id`,`val`) VALUES (412,'Thresh')\nON DUPLICATE KEY `id`=412,`val`='Thresh'", - "len": 96, - "last": 96, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`champs`", - "value": "champs", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`id`", - "value": "id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`val`", - "value": "val", - "keyword": null, - "type": 8, - "flags": 2, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "412", - "value": 412, - "keyword": null, - "type": 6, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Thresh'", - "value": "Thresh", - "keyword": null, - "type": 7, - "flags": 1, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DUPLICATE", - "value": "DUPLICATE", - "keyword": "DUPLICATE", - "type": 1, - "flags": 1, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KEY", - "value": "KEY", - "keyword": "KEY", - "type": 1, - "flags": 19, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`id`", - "value": "id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "412", - "value": 412, - "keyword": null, - "type": 6, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`val`", - "value": "val", - "keyword": null, - "type": 8, - "flags": 2, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Thresh'", - "value": "Thresh", - "keyword": null, - "type": 7, - "flags": 1, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 34, - "idx": 34 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "champs", - "column": null, - "expr": "`champs`", - "alias": null, - "function": null, - "subquery": null - }, - "columns": [ - "id", - "val" - ], - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "412", - "'Thresh'" - ], - "values": [ - "412", - "Thresh" - ] - } - ], - "set": null, - "select": null, - "with": null, - "onDuplicateSet": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 25 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected token.", - { - "@type": "@28" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@28" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@30" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@32" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@34" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertSelect.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertSelect.in deleted file mode 100644 index 9686ae19..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertSelect.in +++ /dev/null @@ -1 +0,0 @@ -INSERT INTO `a` (`value`) SELECT `b`.`value` FROM `b` \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertSelect.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertSelect.out deleted file mode 100644 index ece7c150..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertSelect.out +++ /dev/null @@ -1,295 +0,0 @@ -{ - "query": "INSERT INTO `a` (`value`) SELECT `b`.`value` FROM `b`", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "INSERT INTO `a` (`value`) SELECT `b`.`value` FROM `b`", - "len": 53, - "last": 53, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`a`", - "value": "a", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`value`", - "value": "value", - "keyword": null, - "type": 8, - "flags": 2, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`b`", - "value": "b", - "keyword": null, - "type": 8, - "flags": 2, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`value`", - "value": "value", - "keyword": null, - "type": 8, - "flags": 2, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`b`", - "value": "b", - "keyword": null, - "type": 8, - "flags": 2, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 20, - "idx": 20 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "`a`", - "alias": null, - "function": null, - "subquery": null - }, - "columns": [ - "value" - ], - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": null, - "set": null, - "select": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "b", - "column": "value", - "expr": "`b`.`value`", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "b", - "column": null, - "expr": "`b`", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 10, - "last": 18 - }, - "with": null, - "onDuplicateSet": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 18 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertSelectOnDuplicateKey.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertSelectOnDuplicateKey.in deleted file mode 100644 index 4ccd72c9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertSelectOnDuplicateKey.in +++ /dev/null @@ -1 +0,0 @@ -INSERT INTO tbl SELECT * FROM bar ON DUPLICATE KEY UPDATE baz = 1 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertSelectOnDuplicateKey.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertSelectOnDuplicateKey.out deleted file mode 100644 index 79c204cd..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertSelectOnDuplicateKey.out +++ /dev/null @@ -1,371 +0,0 @@ -{ - "query": "INSERT INTO tbl SELECT * FROM bar ON DUPLICATE KEY UPDATE baz = 1", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "INSERT INTO tbl SELECT * FROM bar ON DUPLICATE KEY UPDATE baz = 1", - "len": 65, - "last": 65, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tbl", - "value": "tbl", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "bar", - "value": "bar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DUPLICATE", - "value": "DUPLICATE", - "keyword": "DUPLICATE", - "type": 1, - "flags": 1, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KEY", - "value": "KEY", - "keyword": "KEY", - "type": 1, - "flags": 19, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UPDATE", - "value": "UPDATE", - "keyword": "UPDATE", - "type": 1, - "flags": 3, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "baz", - "value": "baz", - "keyword": null, - "type": 0, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 28, - "idx": 28 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "tbl", - "column": null, - "expr": "tbl", - "alias": null, - "function": null, - "subquery": null - }, - "columns": null, - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": null, - "set": null, - "select": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "bar", - "column": null, - "expr": "bar", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 6, - "last": 13 - }, - "with": null, - "onDuplicateSet": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "baz", - "value": "1" - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 26 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertSet.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertSet.in deleted file mode 100644 index 9fdcbfec..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertSet.in +++ /dev/null @@ -1 +0,0 @@ -INSERT INTO `a` (`value`) SET `value` = '123' \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertSet.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertSet.out deleted file mode 100644 index 86d80ae8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertSet.out +++ /dev/null @@ -1,238 +0,0 @@ -{ - "query": "INSERT INTO `a` (`value`) SET `value` = '123'", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "INSERT INTO `a` (`value`) SET `value` = '123'", - "len": 45, - "last": 45, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`a`", - "value": "a", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`value`", - "value": "value", - "keyword": null, - "type": 8, - "flags": 2, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`value`", - "value": "value", - "keyword": null, - "type": 8, - "flags": 2, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'123'", - "value": "123", - "keyword": null, - "type": 7, - "flags": 1, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 18, - "idx": 18 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "`a`", - "alias": null, - "function": null, - "subquery": null - }, - "columns": [ - "value" - ], - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": null, - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "`value`", - "value": "'123'" - } - ], - "select": null, - "with": null, - "onDuplicateSet": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 16 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertSetOnDuplicateKey.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertSetOnDuplicateKey.in deleted file mode 100644 index 29d70799..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertSetOnDuplicateKey.in +++ /dev/null @@ -1 +0,0 @@ -INSERT INTO `a` (`value`) SET `value` = '123' ON DUPLICATE KEY UPDATE `value` = '1234' \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertSetOnDuplicateKey.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertSetOnDuplicateKey.out deleted file mode 100644 index f2b6ce7f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseInsertSetOnDuplicateKey.out +++ /dev/null @@ -1,370 +0,0 @@ -{ - "query": "INSERT INTO `a` (`value`) SET `value` = '123' ON DUPLICATE KEY UPDATE `value` = '1234'", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "INSERT INTO `a` (`value`) SET `value` = '123' ON DUPLICATE KEY UPDATE `value` = '1234'", - "len": 86, - "last": 86, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`a`", - "value": "a", - "keyword": null, - "type": 8, - "flags": 2, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`value`", - "value": "value", - "keyword": null, - "type": 8, - "flags": 2, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`value`", - "value": "value", - "keyword": null, - "type": 8, - "flags": 2, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'123'", - "value": "123", - "keyword": null, - "type": 7, - "flags": 1, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DUPLICATE", - "value": "DUPLICATE", - "keyword": "DUPLICATE", - "type": 1, - "flags": 1, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KEY", - "value": "KEY", - "keyword": "KEY", - "type": 1, - "flags": 19, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UPDATE", - "value": "UPDATE", - "keyword": "UPDATE", - "type": 1, - "flags": 3, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`value`", - "value": "value", - "keyword": null, - "type": 8, - "flags": 2, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'1234'", - "value": "1234", - "keyword": null, - "type": 7, - "flags": 1, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 32, - "idx": 32 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "`a`", - "alias": null, - "function": null, - "subquery": null - }, - "columns": [ - "value" - ], - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": null, - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "`value`", - "value": "'123'" - } - ], - "select": null, - "with": null, - "onDuplicateSet": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "`value`", - "value": "'1234'" - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 30 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKill.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKill.in deleted file mode 100644 index a19d01f1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKill.in +++ /dev/null @@ -1 +0,0 @@ -KILL 1 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKill.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKill.out deleted file mode 100644 index 77f8ceac..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKill.out +++ /dev/null @@ -1,83 +0,0 @@ -{ - "query": "KILL 1", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "KILL 1", - "len": 6, - "last": 6, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KILL", - "value": "KILL", - "keyword": "KILL", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 4, - "idx": 4 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\KillStatement", - "identifier": 1, - "idKeywordUsed": false, - "parenthesisUsed": false, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 3 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKill2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKill2.in deleted file mode 100644 index ff8653ef..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKill2.in +++ /dev/null @@ -1 +0,0 @@ -KILL (SELECT 3 + 4) \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKill2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKill2.out deleted file mode 100644 index 4dba157c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKill2.out +++ /dev/null @@ -1,189 +0,0 @@ -{ - "query": "KILL (SELECT 3 + 4)", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "KILL (SELECT 3 + 4)", - "len": 19, - "last": 19, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KILL", - "value": "KILL", - "keyword": "KILL", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+", - "value": "+", - "keyword": null, - "type": 2, - "flags": 1, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "4", - "value": 4, - "keyword": null, - "type": 6, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 12, - "idx": 12 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\KillStatement", - "identifier": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "3 + 4", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 8 - }, - "idKeywordUsed": false, - "parenthesisUsed": true, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 11 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKill3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKill3.in deleted file mode 100644 index dc834b14..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKill3.in +++ /dev/null @@ -1 +0,0 @@ -KILL QUERY ID 10 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKill3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKill3.out deleted file mode 100644 index 3887f586..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKill3.out +++ /dev/null @@ -1,121 +0,0 @@ -{ - "query": "KILL QUERY ID 10", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "KILL QUERY ID 10", - "len": 16, - "last": 16, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KILL", - "value": "KILL", - "keyword": "KILL", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "QUERY", - "value": "QUERY", - "keyword": "QUERY", - "type": 1, - "flags": 1, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ID", - "value": "ID", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 8, - "idx": 8 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\KillStatement", - "identifier": 10, - "idKeywordUsed": true, - "parenthesisUsed": false, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "QUERY" - } - }, - "first": 0, - "last": 7 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillConnection.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillConnection.in deleted file mode 100644 index cbe01e0f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillConnection.in +++ /dev/null @@ -1 +0,0 @@ -KILL CONNECTION 1 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillConnection.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillConnection.out deleted file mode 100644 index 027478c0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillConnection.out +++ /dev/null @@ -1,103 +0,0 @@ -{ - "query": "KILL CONNECTION 1", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "KILL CONNECTION 1", - "len": 17, - "last": 17, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KILL", - "value": "KILL", - "keyword": "KILL", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CONNECTION", - "value": "CONNECTION", - "keyword": "CONNECTION", - "type": 1, - "flags": 1, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 6, - "idx": 6 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\KillStatement", - "identifier": 1, - "idKeywordUsed": false, - "parenthesisUsed": false, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "CONNECTION" - } - }, - "first": 0, - "last": 5 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillErr1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillErr1.in deleted file mode 100644 index 79fae152..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillErr1.in +++ /dev/null @@ -1 +0,0 @@ -KILL CONNECTION QUERY 1 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillErr1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillErr1.out deleted file mode 100644 index bac19500..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillErr1.out +++ /dev/null @@ -1,130 +0,0 @@ -{ - "query": "KILL CONNECTION QUERY 1", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "KILL CONNECTION QUERY 1", - "len": 23, - "last": 23, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KILL", - "value": "KILL", - "keyword": "KILL", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CONNECTION", - "value": "CONNECTION", - "keyword": "CONNECTION", - "type": 1, - "flags": 1, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "QUERY", - "value": "QUERY", - "keyword": "QUERY", - "type": 1, - "flags": 1, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 8, - "idx": 8 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\KillStatement", - "identifier": 1, - "idKeywordUsed": false, - "parenthesisUsed": false, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "CONNECTION", - "6": "QUERY" - } - }, - "first": 0, - "last": 7 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "This option conflicts with \"CONNECTION\".", - { - "@type": "@6" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillErr2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillErr2.in deleted file mode 100644 index 4551c2f1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillErr2.in +++ /dev/null @@ -1 +0,0 @@ -KILL \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillErr2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillErr2.out deleted file mode 100644 index 721fd250..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillErr2.out +++ /dev/null @@ -1,80 +0,0 @@ -{ - "query": "KILL", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "KILL", - "len": 4, - "last": 4, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KILL", - "value": "KILL", - "keyword": "KILL", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 2, - "idx": 2 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\KillStatement", - "identifier": null, - "idKeywordUsed": false, - "parenthesisUsed": false, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 0 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected token.", - { - "@type": "@3" - }, - 0 - ], - [ - "Unexpected end of the KILL statement.", - { - "@type": "@3" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillErr3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillErr3.in deleted file mode 100644 index f2bdc0e2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillErr3.in +++ /dev/null @@ -1 +0,0 @@ -KILL (SELECT) \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillErr3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillErr3.out deleted file mode 100644 index 3b0a2395..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillErr3.out +++ /dev/null @@ -1,109 +0,0 @@ -{ - "query": "KILL (SELECT)", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "KILL (SELECT)", - "len": 13, - "last": 13, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KILL", - "value": "KILL", - "keyword": "KILL", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 6, - "idx": 6 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\KillStatement", - "identifier": null, - "idKeywordUsed": false, - "parenthesisUsed": true, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 5 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "An expression was expected.", - { - "@type": "@6" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillErr4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillErr4.in deleted file mode 100644 index 6ee8db58..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillErr4.in +++ /dev/null @@ -1 +0,0 @@ -KILL (INSERT) \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillErr4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillErr4.out deleted file mode 100644 index c5adb58e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillErr4.out +++ /dev/null @@ -1,140 +0,0 @@ -{ - "query": "KILL (INSERT)", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "KILL (INSERT)", - "len": 13, - "last": 13, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KILL", - "value": "KILL", - "keyword": "KILL", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 6, - "idx": 6 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\KillStatement", - "identifier": null, - "idKeywordUsed": false, - "parenthesisUsed": true, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 2 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": null, - "columns": null, - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": null, - "set": null, - "select": null, - "with": null, - "onDuplicateSet": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 3, - "last": 4 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected token.", - { - "@type": "@5" - }, - 0 - ], - [ - "Unexpected end of the KILL statement.", - { - "@type": "@5" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillQuery.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillQuery.in deleted file mode 100644 index 1bab1d42..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillQuery.in +++ /dev/null @@ -1 +0,0 @@ -KILL QUERY 1 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillQuery.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillQuery.out deleted file mode 100644 index 1d2f145c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseKillQuery.out +++ /dev/null @@ -1,103 +0,0 @@ -{ - "query": "KILL QUERY 1", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "KILL QUERY 1", - "len": 12, - "last": 12, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KILL", - "value": "KILL", - "keyword": "KILL", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "QUERY", - "value": "QUERY", - "keyword": "QUERY", - "type": 1, - "flags": 1, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 6, - "idx": 6 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\KillStatement", - "identifier": 1, - "idKeywordUsed": false, - "parenthesisUsed": false, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "QUERY" - } - }, - "first": 0, - "last": 5 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLimitErr1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLimitErr1.in deleted file mode 100644 index 401deb37..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLimitErr1.in +++ /dev/null @@ -1 +0,0 @@ -SELECT * FROM test LIMIT 1 OFFSET OFFSET 2; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLimitErr1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLimitErr1.out deleted file mode 100644 index 7b696fe4..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLimitErr1.out +++ /dev/null @@ -1,264 +0,0 @@ -{ - "query": "SELECT * FROM test LIMIT 1 OFFSET OFFSET 2;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM test LIMIT 1 OFFSET OFFSET 2;", - "len": 43, - "last": 43, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIMIT", - "value": "LIMIT", - "keyword": "LIMIT", - "type": 1, - "flags": 3, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OFFSET", - "value": "OFFSET", - "keyword": "OFFSET", - "type": 1, - "flags": 1, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OFFSET", - "value": "OFFSET", - "keyword": "OFFSET", - "type": 1, - "flags": 1, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 19, - "idx": 19 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test", - "column": null, - "expr": "test", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Limit", - "offset": 2, - "rowCount": 1 - }, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 16 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "An offset was expected.", - { - "@type": "@16" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLimitErr2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLimitErr2.in deleted file mode 100644 index 9d798515..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLimitErr2.in +++ /dev/null @@ -1 +0,0 @@ -SELECT * FROM test LIMIT 1 OFFSET \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLimitErr2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLimitErr2.out deleted file mode 100644 index 517b062b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLimitErr2.out +++ /dev/null @@ -1,219 +0,0 @@ -{ - "query": "SELECT * FROM test LIMIT 1 OFFSET", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM test LIMIT 1 OFFSET", - "len": 33, - "last": 33, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIMIT", - "value": "LIMIT", - "keyword": "LIMIT", - "type": 1, - "flags": 3, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OFFSET", - "value": "OFFSET", - "keyword": "OFFSET", - "type": 1, - "flags": 1, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 14, - "idx": 14 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test", - "column": null, - "expr": "test", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Limit", - "offset": 0, - "rowCount": 1 - }, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 12 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "An offset was expected.", - { - "@type": "@14" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad1.in deleted file mode 100644 index 26576306..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad1.in +++ /dev/null @@ -1 +0,0 @@ -LOAD DATA CONCURRENT INFILE 'employee1.txt' INTO TABLE employee; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad1.out deleted file mode 100644 index 9543d635..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad1.out +++ /dev/null @@ -1,212 +0,0 @@ -{ - "query": "LOAD DATA CONCURRENT INFILE 'employee1.txt' INTO TABLE employee;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "LOAD DATA CONCURRENT INFILE 'employee1.txt' INTO TABLE employee;", - "len": 64, - "last": 64, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOAD DATA", - "value": "LOAD DATA", - "keyword": "LOAD DATA", - "type": 1, - "flags": 7, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CONCURRENT", - "value": "CONCURRENT", - "keyword": "CONCURRENT", - "type": 1, - "flags": 1, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INFILE", - "value": "INFILE", - "keyword": "INFILE", - "type": 1, - "flags": 3, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'employee1.txt'", - "value": "employee1.txt", - "keyword": null, - "type": 7, - "flags": 1, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "employee", - "value": "employee", - "keyword": null, - "type": 0, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 15, - "idx": 15 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LoadStatement", - "file_name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "'employee1.txt'", - "alias": null, - "function": null, - "subquery": null, - "file": "employee1.txt" - }, - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "employee", - "column": null, - "expr": "employee", - "alias": null, - "function": null, - "subquery": null - }, - "partition": null, - "charset_name": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null, - "col_name_or_user_var": null, - "set": null, - "ignore_number": null, - "replace_ignore": null, - "lines_rows": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "CONCURRENT" - } - }, - "first": 0, - "last": 12 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad2.in deleted file mode 100644 index 7e6a8bac..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad2.in +++ /dev/null @@ -1 +0,0 @@ -LOAD DATA INFILE '/tmp/test.txt' INTO TABLE test FIELDS TERMINATED BY ',' IGNORE 1 LINES; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad2.out deleted file mode 100644 index dc977eb3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad2.out +++ /dev/null @@ -1,328 +0,0 @@ -{ - "query": "LOAD DATA INFILE '/tmp/test.txt' INTO TABLE test FIELDS TERMINATED BY ',' IGNORE 1 LINES;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "LOAD DATA INFILE '/tmp/test.txt' INTO TABLE test FIELDS TERMINATED BY ',' IGNORE 1 LINES;", - "len": 89, - "last": 89, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOAD DATA", - "value": "LOAD DATA", - "keyword": "LOAD DATA", - "type": 1, - "flags": 7, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INFILE", - "value": "INFILE", - "keyword": "INFILE", - "type": 1, - "flags": 3, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'/tmp/test.txt'", - "value": "/tmp/test.txt", - "keyword": null, - "type": 7, - "flags": 1, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FIELDS", - "value": "FIELDS", - "keyword": "FIELDS", - "type": 1, - "flags": 1, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TERMINATED BY", - "value": "TERMINATED BY", - "keyword": "TERMINATED BY", - "type": 1, - "flags": 7, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "','", - "value": ",", - "keyword": null, - "type": 7, - "flags": 1, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IGNORE", - "value": "IGNORE", - "keyword": "IGNORE", - "type": 1, - "flags": 3, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LINES", - "value": "LINES", - "keyword": "LINES", - "type": 1, - "flags": 3, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 25, - "idx": 25 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LoadStatement", - "file_name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "'/tmp/test.txt'", - "alias": null, - "function": null, - "subquery": null, - "file": "/tmp/test.txt" - }, - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test", - "column": null, - "expr": "test", - "alias": null, - "function": null, - "subquery": null - }, - "partition": null, - "charset_name": null, - "fields_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "TERMINATED BY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": ",", - "expr": "','", - "alias": null, - "function": null, - "subquery": null - }, - "value": "','" - } - } - }, - "fields_keyword": "FIELDS", - "lines_options": null, - "col_name_or_user_var": null, - "set": null, - "ignore_number": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - }, - "replace_ignore": null, - "lines_rows": "LINES", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 23 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad3.in deleted file mode 100644 index 1915b860..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad3.in +++ /dev/null @@ -1 +0,0 @@ -LOAD DATA INFILE 'employee3.txt' INTO TABLE employee FIELDS TERMINATED BY ',' ENCLOSED BY '"'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad3.out deleted file mode 100644 index bebbe86a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad3.out +++ /dev/null @@ -1,316 +0,0 @@ -{ - "query": "LOAD DATA INFILE 'employee3.txt' INTO TABLE employee FIELDS TERMINATED BY ',' ENCLOSED BY '\"';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "LOAD DATA INFILE 'employee3.txt' INTO TABLE employee FIELDS TERMINATED BY ',' ENCLOSED BY '\"';", - "len": 94, - "last": 94, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOAD DATA", - "value": "LOAD DATA", - "keyword": "LOAD DATA", - "type": 1, - "flags": 7, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INFILE", - "value": "INFILE", - "keyword": "INFILE", - "type": 1, - "flags": 3, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'employee3.txt'", - "value": "employee3.txt", - "keyword": null, - "type": 7, - "flags": 1, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "employee", - "value": "employee", - "keyword": null, - "type": 0, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FIELDS", - "value": "FIELDS", - "keyword": "FIELDS", - "type": 1, - "flags": 1, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TERMINATED BY", - "value": "TERMINATED BY", - "keyword": "TERMINATED BY", - "type": 1, - "flags": 7, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "','", - "value": ",", - "keyword": null, - "type": 7, - "flags": 1, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENCLOSED BY", - "value": "ENCLOSED BY", - "keyword": "ENCLOSED BY", - "type": 1, - "flags": 7, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'\"'", - "value": "\"", - "keyword": null, - "type": 7, - "flags": 1, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 23, - "idx": 23 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LoadStatement", - "file_name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "'employee3.txt'", - "alias": null, - "function": null, - "subquery": null, - "file": "employee3.txt" - }, - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "employee", - "column": null, - "expr": "employee", - "alias": null, - "function": null, - "subquery": null - }, - "partition": null, - "charset_name": null, - "fields_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "TERMINATED BY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": ",", - "expr": "','", - "alias": null, - "function": null, - "subquery": null - }, - "value": "','" - }, - "3": { - "name": "ENCLOSED BY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "\"", - "expr": "'\"'", - "alias": null, - "function": null, - "subquery": null - }, - "value": "'\"'" - } - } - }, - "fields_keyword": "FIELDS", - "lines_options": null, - "col_name_or_user_var": null, - "set": null, - "ignore_number": null, - "replace_ignore": null, - "lines_rows": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 20 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad4.in deleted file mode 100644 index 9c578396..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad4.in +++ /dev/null @@ -1,8 +0,0 @@ -LOAD DATA INFILE '/tmp/test.txt' IGNORE -INTO TABLE test -CHARACTER SET 'utf8' -COLUMNS TERMINATED BY ',' -LINES TERMINATED BY ';' -IGNORE 1 LINES -(col1, col2) -SET @a = 1; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad4.out deleted file mode 100644 index f1a9aa18..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad4.out +++ /dev/null @@ -1,616 +0,0 @@ -{ - "query": "LOAD DATA INFILE '/tmp/test.txt' IGNORE\nINTO TABLE test\nCHARACTER SET 'utf8'\nCOLUMNS TERMINATED BY ','\nLINES TERMINATED BY ';'\nIGNORE 1 LINES\n(col1, col2)\nSET @a = 1;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "LOAD DATA INFILE '/tmp/test.txt' IGNORE\nINTO TABLE test\nCHARACTER SET 'utf8'\nCOLUMNS TERMINATED BY ','\nLINES TERMINATED BY ';'\nIGNORE 1 LINES\n(col1, col2)\nSET @a = 1;", - "len": 166, - "last": 166, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOAD DATA", - "value": "LOAD DATA", - "keyword": "LOAD DATA", - "type": 1, - "flags": 7, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INFILE", - "value": "INFILE", - "keyword": "INFILE", - "type": 1, - "flags": 3, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'/tmp/test.txt'", - "value": "/tmp/test.txt", - "keyword": null, - "type": 7, - "flags": 1, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IGNORE", - "value": "IGNORE", - "keyword": "IGNORE", - "type": 1, - "flags": 3, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHARACTER SET", - "value": "CHARACTER SET", - "keyword": "CHARACTER SET", - "type": 1, - "flags": 7, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'utf8'", - "value": "utf8", - "keyword": null, - "type": 7, - "flags": 1, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLUMNS", - "value": "COLUMNS", - "keyword": "COLUMNS", - "type": 1, - "flags": 1, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TERMINATED BY", - "value": "TERMINATED BY", - "keyword": "TERMINATED BY", - "type": 1, - "flags": 7, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "','", - "value": ",", - "keyword": null, - "type": 7, - "flags": 1, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LINES", - "value": "LINES", - "keyword": "LINES", - "type": 1, - "flags": 3, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TERMINATED BY", - "value": "TERMINATED BY", - "keyword": "TERMINATED BY", - "type": 1, - "flags": 7, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "';'", - "value": ";", - "keyword": null, - "type": 7, - "flags": 1, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IGNORE", - "value": "IGNORE", - "keyword": "IGNORE", - "type": 1, - "flags": 3, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 134 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LINES", - "value": "LINES", - "keyword": "LINES", - "type": 1, - "flags": 3, - "position": 136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 147 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col2", - "value": "col2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 153 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 154 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@a", - "value": "a", - "keyword": null, - "type": 8, - "flags": 1, - "position": 159 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 162 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 163 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 164 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 165 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 52, - "idx": 52 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LoadStatement", - "file_name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "'/tmp/test.txt'", - "alias": null, - "function": null, - "subquery": null, - "file": "/tmp/test.txt" - }, - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test", - "column": null, - "expr": "test", - "alias": null, - "function": null, - "subquery": null - }, - "partition": null, - "charset_name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "utf8", - "expr": "'utf8'", - "alias": null, - "function": null, - "subquery": null - }, - "fields_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "TERMINATED BY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": ",", - "expr": "','", - "alias": null, - "function": null, - "subquery": null - }, - "value": "','" - } - } - }, - "fields_keyword": "COLUMNS", - "lines_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "TERMINATED BY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": ";", - "expr": "';'", - "alias": null, - "function": null, - "subquery": null - }, - "value": "';'" - } - } - }, - "col_name_or_user_var": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(col1, col2)", - "alias": null, - "function": null, - "subquery": null - } - ], - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "@a", - "value": "1" - } - ], - "ignore_number": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - }, - "replace_ignore": "IGNORE", - "lines_rows": "LINES", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 49 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad5.in deleted file mode 100644 index 6b28b216..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad5.in +++ /dev/null @@ -1 +0,0 @@ -LOAD DATA INFILE '/tmp/test.txt' REPLACE INTO TABLE test COLUMNS TERMINATED BY ',' IGNORE 1 ROWS; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad5.out deleted file mode 100644 index 8964ec7c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad5.out +++ /dev/null @@ -1,346 +0,0 @@ -{ - "query": "LOAD DATA INFILE '/tmp/test.txt' REPLACE INTO TABLE test COLUMNS TERMINATED BY ',' IGNORE 1 ROWS;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "LOAD DATA INFILE '/tmp/test.txt' REPLACE INTO TABLE test COLUMNS TERMINATED BY ',' IGNORE 1 ROWS;", - "len": 98, - "last": 98, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOAD DATA", - "value": "LOAD DATA", - "keyword": "LOAD DATA", - "type": 1, - "flags": 7, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INFILE", - "value": "INFILE", - "keyword": "INFILE", - "type": 1, - "flags": 3, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'/tmp/test.txt'", - "value": "/tmp/test.txt", - "keyword": null, - "type": 7, - "flags": 1, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REPLACE", - "value": "REPLACE", - "keyword": "REPLACE", - "type": 1, - "flags": 35, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLUMNS", - "value": "COLUMNS", - "keyword": "COLUMNS", - "type": 1, - "flags": 1, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TERMINATED BY", - "value": "TERMINATED BY", - "keyword": "TERMINATED BY", - "type": 1, - "flags": 7, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "','", - "value": ",", - "keyword": null, - "type": 7, - "flags": 1, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IGNORE", - "value": "IGNORE", - "keyword": "IGNORE", - "type": 1, - "flags": 3, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ROWS", - "value": "ROWS", - "keyword": "ROWS", - "type": 1, - "flags": 1, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 27, - "idx": 27 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LoadStatement", - "file_name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "'/tmp/test.txt'", - "alias": null, - "function": null, - "subquery": null, - "file": "/tmp/test.txt" - }, - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test", - "column": null, - "expr": "test", - "alias": null, - "function": null, - "subquery": null - }, - "partition": null, - "charset_name": null, - "fields_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "TERMINATED BY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": ",", - "expr": "','", - "alias": null, - "function": null, - "subquery": null - }, - "value": "','" - } - } - }, - "fields_keyword": "COLUMNS", - "lines_options": null, - "col_name_or_user_var": null, - "set": null, - "ignore_number": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - }, - "replace_ignore": "REPLACE", - "lines_rows": "ROWS", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 25 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad6.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad6.in deleted file mode 100644 index b3436fcc..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad6.in +++ /dev/null @@ -1,9 +0,0 @@ -LOAD DATA INFILE '/tmp/test.txt' IGNORE -INTO TABLE test -PARTITION (p0, p1, p2) -CHARACTER SET 'utf8' -COLUMNS TERMINATED BY ',' -LINES TERMINATED BY ';' -IGNORE 1 LINES -(col1, col2) -SET @a = 1; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad6.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad6.out deleted file mode 100644 index 21e118d9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad6.out +++ /dev/null @@ -1,736 +0,0 @@ -{ - "query": "LOAD DATA INFILE '/tmp/test.txt' IGNORE\nINTO TABLE test\nPARTITION (p0, p1, p2)\nCHARACTER SET 'utf8'\nCOLUMNS TERMINATED BY ','\nLINES TERMINATED BY ';'\nIGNORE 1 LINES\n(col1, col2)\nSET @a = 1;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "LOAD DATA INFILE '/tmp/test.txt' IGNORE\nINTO TABLE test\nPARTITION (p0, p1, p2)\nCHARACTER SET 'utf8'\nCOLUMNS TERMINATED BY ','\nLINES TERMINATED BY ';'\nIGNORE 1 LINES\n(col1, col2)\nSET @a = 1;", - "len": 189, - "last": 189, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOAD DATA", - "value": "LOAD DATA", - "keyword": "LOAD DATA", - "type": 1, - "flags": 7, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INFILE", - "value": "INFILE", - "keyword": "INFILE", - "type": 1, - "flags": 3, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'/tmp/test.txt'", - "value": "/tmp/test.txt", - "keyword": null, - "type": 7, - "flags": 1, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IGNORE", - "value": "IGNORE", - "keyword": "IGNORE", - "type": 1, - "flags": 3, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p0", - "value": "p0", - "keyword": null, - "type": 0, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p1", - "value": "p1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p2", - "value": "p2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHARACTER SET", - "value": "CHARACTER SET", - "keyword": "CHARACTER SET", - "type": 1, - "flags": 7, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'utf8'", - "value": "utf8", - "keyword": null, - "type": 7, - "flags": 1, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLUMNS", - "value": "COLUMNS", - "keyword": "COLUMNS", - "type": 1, - "flags": 1, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TERMINATED BY", - "value": "TERMINATED BY", - "keyword": "TERMINATED BY", - "type": 1, - "flags": 7, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "','", - "value": ",", - "keyword": null, - "type": 7, - "flags": 1, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LINES", - "value": "LINES", - "keyword": "LINES", - "type": 1, - "flags": 3, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TERMINATED BY", - "value": "TERMINATED BY", - "keyword": "TERMINATED BY", - "type": 1, - "flags": 7, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "';'", - "value": ";", - "keyword": null, - "type": 7, - "flags": 1, - "position": 146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IGNORE", - "value": "IGNORE", - "keyword": "IGNORE", - "type": 1, - "flags": 3, - "position": 150 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LINES", - "value": "LINES", - "keyword": "LINES", - "type": 1, - "flags": 3, - "position": 159 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 164 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 165 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 166 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 170 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 171 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col2", - "value": "col2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 172 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 176 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 178 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 181 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@a", - "value": "a", - "keyword": null, - "type": 8, - "flags": 1, - "position": 182 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 184 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 185 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 186 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 187 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 188 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 64, - "idx": 64 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LoadStatement", - "file_name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "'/tmp/test.txt'", - "alias": null, - "function": null, - "subquery": null, - "file": "/tmp/test.txt" - }, - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test", - "column": null, - "expr": "test", - "alias": null, - "function": null, - "subquery": null - }, - "partition": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "p0", - "p1", - "p2" - ], - "values": [ - "p0", - "p1", - "p2" - ] - }, - "charset_name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "utf8", - "expr": "'utf8'", - "alias": null, - "function": null, - "subquery": null - }, - "fields_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "TERMINATED BY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": ",", - "expr": "','", - "alias": null, - "function": null, - "subquery": null - }, - "value": "','" - } - } - }, - "fields_keyword": "COLUMNS", - "lines_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "TERMINATED BY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": ";", - "expr": "';'", - "alias": null, - "function": null, - "subquery": null - }, - "value": "';'" - } - } - }, - "col_name_or_user_var": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(col1, col2)", - "alias": null, - "function": null, - "subquery": null - } - ], - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "@a", - "value": "1" - } - ], - "ignore_number": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - }, - "replace_ignore": "IGNORE", - "lines_rows": "LINES", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 61 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad7.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad7.in deleted file mode 100644 index 204ee8e6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad7.in +++ /dev/null @@ -1,4 +0,0 @@ -SELECT a -into outfile '/tmp/temp.data' -fields terminated by ',' enclosed by '"' ESCAPED BY '$' -FROM sometable \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad7.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad7.out deleted file mode 100644 index f38e6b37..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad7.out +++ /dev/null @@ -1,391 +0,0 @@ -{ - "query": "SELECT a\ninto outfile '/tmp/temp.data'\nfields terminated by ',' enclosed by '\"' ESCAPED BY '$'\nFROM sometable", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT a\ninto outfile '/tmp/temp.data'\nfields terminated by ',' enclosed by '\"' ESCAPED BY '$'\nFROM sometable", - "len": 109, - "last": 109, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "into", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "outfile", - "value": "OUTFILE", - "keyword": "OUTFILE", - "type": 1, - "flags": 3, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'/tmp/temp.data'", - "value": "/tmp/temp.data", - "keyword": null, - "type": 7, - "flags": 1, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "fields", - "value": "fields", - "keyword": "FIELDS", - "type": 1, - "flags": 1, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "terminated by", - "value": "TERMINATED BY", - "keyword": "TERMINATED BY", - "type": 1, - "flags": 7, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "','", - "value": ",", - "keyword": null, - "type": 7, - "flags": 1, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "enclosed by", - "value": "ENCLOSED BY", - "keyword": "ENCLOSED BY", - "type": 1, - "flags": 7, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'\"'", - "value": "\"", - "keyword": null, - "type": 7, - "flags": 1, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ESCAPED BY", - "value": "ESCAPED BY", - "keyword": "ESCAPED BY", - "type": 1, - "flags": 7, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'$'", - "value": "$", - "keyword": null, - "type": 7, - "flags": 1, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "sometable", - "value": "sometable", - "keyword": null, - "type": 0, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 28, - "idx": 28 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "a", - "expr": "a", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "sometable", - "column": null, - "expr": "sometable", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": "OUTFILE", - "dest": "/tmp/temp.data", - "columns": null, - "values": null, - "fields_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "TERMINATED BY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": ",", - "expr": "','", - "alias": null, - "function": null, - "subquery": null - }, - "value": "','" - }, - "3": { - "name": "ENCLOSED BY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "\"", - "expr": "'\"'", - "alias": null, - "function": null, - "subquery": null - }, - "value": "'\"'" - }, - "4": { - "name": "ESCAPED BY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "$", - "expr": "'$'", - "alias": null, - "function": null, - "subquery": null - }, - "value": "'$'" - } - } - }, - "fields_keyword": true, - "lines_options": null - }, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 26 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad8.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad8.in deleted file mode 100644 index 46e6d2ac..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad8.in +++ /dev/null @@ -1,8 +0,0 @@ --- Query from https://github.com/phpmyadmin/sql-parser/issues/578 --- Issue was that Lexer detected ".e1" as number token. - -LOAD DATA LOCAL INFILE '/home/user/myloadfile.csv' -IGNORE INTO TABLE erp.e1_table -FIELDS TERMINATED BY '\t' -LINES TERMINATED BY '\n' -IGNORE 0 LINES; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad8.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad8.out deleted file mode 100644 index fca14e8d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoad8.out +++ /dev/null @@ -1,502 +0,0 @@ -{ - "query": "-- Query from https://github.com/phpmyadmin/sql-parser/issues/578\n-- Issue was that Lexer detected \".e1\" as number token.\n\nLOAD DATA LOCAL INFILE '/home/user/myloadfile.csv'\nIGNORE INTO TABLE erp.e1_table\nFIELDS TERMINATED BY '\\t'\nLINES TERMINATED BY '\\n'\nIGNORE 0 LINES;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "-- Query from https://github.com/phpmyadmin/sql-parser/issues/578\n-- Issue was that Lexer detected \".e1\" as number token.\n\nLOAD DATA LOCAL INFILE '/home/user/myloadfile.csv'\nIGNORE INTO TABLE erp.e1_table\nFIELDS TERMINATED BY '\\t'\nLINES TERMINATED BY '\\n'\nIGNORE 0 LINES;\n", - "len": 272, - "last": 272, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- Query from https://github.com/phpmyadmin/sql-parser/issues/578", - "value": "-- Query from https://github.com/phpmyadmin/sql-parser/issues/578", - "keyword": null, - "type": 4, - "flags": 4, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- Issue was that Lexer detected \".e1\" as number token.", - "value": "-- Issue was that Lexer detected \".e1\" as number token.", - "keyword": null, - "type": 4, - "flags": 4, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOAD DATA", - "value": "LOAD DATA", - "keyword": "LOAD DATA", - "type": 1, - "flags": 7, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCAL", - "value": "LOCAL", - "keyword": "LOCAL", - "type": 1, - "flags": 1, - "position": 133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INFILE", - "value": "INFILE", - "keyword": "INFILE", - "type": 1, - "flags": 3, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'/home/user/myloadfile.csv'", - "value": "/home/user/myloadfile.csv", - "keyword": null, - "type": 7, - "flags": 1, - "position": 146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 173 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IGNORE", - "value": "IGNORE", - "keyword": "IGNORE", - "type": 1, - "flags": 3, - "position": 174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 180 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 181 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 185 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 186 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 191 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "erp", - "value": "erp", - "keyword": null, - "type": 0, - "flags": 0, - "position": 192 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 195 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "e1_table", - "value": "e1_table", - "keyword": null, - "type": 0, - "flags": 0, - "position": 196 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 204 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FIELDS", - "value": "FIELDS", - "keyword": "FIELDS", - "type": 1, - "flags": 1, - "position": 205 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 211 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TERMINATED BY", - "value": "TERMINATED BY", - "keyword": "TERMINATED BY", - "type": 1, - "flags": 7, - "position": 212 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 225 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'\\t'", - "value": "\t", - "keyword": null, - "type": 7, - "flags": 1, - "position": 226 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 230 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LINES", - "value": "LINES", - "keyword": "LINES", - "type": 1, - "flags": 3, - "position": 231 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 236 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TERMINATED BY", - "value": "TERMINATED BY", - "keyword": "TERMINATED BY", - "type": 1, - "flags": 7, - "position": 237 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 250 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'\\n'", - "value": "\n", - "keyword": null, - "type": 7, - "flags": 1, - "position": 251 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 255 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IGNORE", - "value": "IGNORE", - "keyword": "IGNORE", - "type": 1, - "flags": 3, - "position": 256 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 262 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 263 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 264 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LINES", - "value": "LINES", - "keyword": "LINES", - "type": 1, - "flags": 3, - "position": 265 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 270 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 271 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 42, - "idx": 42 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LoadStatement", - "file_name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "'/home/user/myloadfile.csv'", - "alias": null, - "function": null, - "subquery": null, - "file": "/home/user/myloadfile.csv" - }, - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "erp", - "table": "e1_table", - "column": null, - "expr": "erp.e1_table", - "alias": null, - "function": null, - "subquery": null - }, - "partition": null, - "charset_name": null, - "fields_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "TERMINATED BY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "\t", - "expr": "'\\t'", - "alias": null, - "function": null, - "subquery": null - }, - "value": "'\\t'" - } - } - }, - "fields_keyword": "FIELDS", - "lines_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "TERMINATED BY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "\n", - "expr": "'\\n'", - "alias": null, - "function": null, - "subquery": null - }, - "value": "'\\n'" - } - } - }, - "col_name_or_user_var": null, - "set": null, - "ignore_number": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "0", - "alias": null, - "function": null, - "subquery": null - }, - "replace_ignore": "IGNORE", - "lines_rows": "LINES", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": "LOCAL" - } - }, - "first": 0, - "last": 40 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr1.in deleted file mode 100644 index f8a969a3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr1.in +++ /dev/null @@ -1 +0,0 @@ -LOAD DATA CONCURRENT FROM 'employee1.txt' INTO TABLE employee; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr1.out deleted file mode 100644 index 41c673a2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr1.out +++ /dev/null @@ -1,208 +0,0 @@ -{ - "query": "LOAD DATA CONCURRENT FROM 'employee1.txt' INTO TABLE employee;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "LOAD DATA CONCURRENT FROM 'employee1.txt' INTO TABLE employee;", - "len": 62, - "last": 62, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOAD DATA", - "value": "LOAD DATA", - "keyword": "LOAD DATA", - "type": 1, - "flags": 7, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CONCURRENT", - "value": "CONCURRENT", - "keyword": "CONCURRENT", - "type": 1, - "flags": 1, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'employee1.txt'", - "value": "employee1.txt", - "keyword": null, - "type": 7, - "flags": 1, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "employee", - "value": "employee", - "keyword": null, - "type": 0, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 15, - "idx": 15 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LoadStatement", - "file_name": null, - "table": null, - "partition": null, - "charset_name": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null, - "col_name_or_user_var": null, - "set": null, - "ignore_number": null, - "replace_ignore": null, - "lines_rows": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "CONCURRENT" - } - }, - "first": 0, - "last": 3 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected keyword.", - { - "@type": "@6" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@6" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr2.in deleted file mode 100644 index eeda0b4d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr2.in +++ /dev/null @@ -1 +0,0 @@ -LOAD DATA CONCURRENT ABC 'employee1.txt' INTO TABLE employee; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr2.out deleted file mode 100644 index f7499746..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr2.out +++ /dev/null @@ -1,222 +0,0 @@ -{ - "query": "LOAD DATA CONCURRENT ABC 'employee1.txt' INTO TABLE employee;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "LOAD DATA CONCURRENT ABC 'employee1.txt' INTO TABLE employee;", - "len": 61, - "last": 61, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOAD DATA", - "value": "LOAD DATA", - "keyword": "LOAD DATA", - "type": 1, - "flags": 7, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CONCURRENT", - "value": "CONCURRENT", - "keyword": "CONCURRENT", - "type": 1, - "flags": 1, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ABC", - "value": "ABC", - "keyword": null, - "type": 0, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'employee1.txt'", - "value": "employee1.txt", - "keyword": null, - "type": 7, - "flags": 1, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "employee", - "value": "employee", - "keyword": null, - "type": 0, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 15, - "idx": 15 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LoadStatement", - "file_name": null, - "table": null, - "partition": null, - "charset_name": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null, - "col_name_or_user_var": null, - "set": null, - "ignore_number": null, - "replace_ignore": null, - "lines_rows": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "CONCURRENT" - } - }, - "first": 0, - "last": 3 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected token.", - { - "@type": "@6" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@6" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@8" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@10" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr3.in deleted file mode 100644 index 9dea8ab0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr3.in +++ /dev/null @@ -1,3 +0,0 @@ -LOAD DATA INFILE '/tmp/test.txt' IGNORE -INTO TABLE test -DATA @a = 1; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr3.out deleted file mode 100644 index 7bc4d3e0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr3.out +++ /dev/null @@ -1,290 +0,0 @@ -{ - "query": "LOAD DATA INFILE '/tmp/test.txt' IGNORE\nINTO TABLE test\nDATA @a = 1;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "LOAD DATA INFILE '/tmp/test.txt' IGNORE\nINTO TABLE test\nDATA @a = 1;", - "len": 68, - "last": 68, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOAD DATA", - "value": "LOAD DATA", - "keyword": "LOAD DATA", - "type": 1, - "flags": 7, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INFILE", - "value": "INFILE", - "keyword": "INFILE", - "type": 1, - "flags": 3, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'/tmp/test.txt'", - "value": "/tmp/test.txt", - "keyword": null, - "type": 7, - "flags": 1, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IGNORE", - "value": "IGNORE", - "keyword": "IGNORE", - "type": 1, - "flags": 3, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DATA", - "value": "DATA", - "keyword": "DATA", - "type": 1, - "flags": 1, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@a", - "value": "a", - "keyword": null, - "type": 8, - "flags": 1, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 23, - "idx": 23 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LoadStatement", - "file_name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "'/tmp/test.txt'", - "alias": null, - "function": null, - "subquery": null, - "file": "/tmp/test.txt" - }, - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test", - "column": null, - "expr": "test", - "alias": null, - "function": null, - "subquery": null - }, - "partition": null, - "charset_name": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null, - "col_name_or_user_var": null, - "set": null, - "ignore_number": null, - "replace_ignore": "IGNORE", - "lines_rows": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 13 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unrecognized statement type.", - { - "@type": "@16" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr4.in deleted file mode 100644 index 44ca3fef..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr4.in +++ /dev/null @@ -1,3 +0,0 @@ -LOAD DATA INFILE '/tmp/test.txt' IGNORE -INTO test -DATA @a = 1; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr4.out deleted file mode 100644 index 54849eaf..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr4.out +++ /dev/null @@ -1,277 +0,0 @@ -{ - "query": "LOAD DATA INFILE '/tmp/test.txt' IGNORE\nINTO test\nDATA @a = 1;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "LOAD DATA INFILE '/tmp/test.txt' IGNORE\nINTO test\nDATA @a = 1;", - "len": 62, - "last": 62, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOAD DATA", - "value": "LOAD DATA", - "keyword": "LOAD DATA", - "type": 1, - "flags": 7, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INFILE", - "value": "INFILE", - "keyword": "INFILE", - "type": 1, - "flags": 3, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'/tmp/test.txt'", - "value": "/tmp/test.txt", - "keyword": null, - "type": 7, - "flags": 1, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IGNORE", - "value": "IGNORE", - "keyword": "IGNORE", - "type": 1, - "flags": 3, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DATA", - "value": "DATA", - "keyword": "DATA", - "type": 1, - "flags": 1, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@a", - "value": "a", - "keyword": null, - "type": 8, - "flags": 1, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 21, - "idx": 21 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LoadStatement", - "file_name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "'/tmp/test.txt'", - "alias": null, - "function": null, - "subquery": null, - "file": "/tmp/test.txt" - }, - "table": null, - "partition": null, - "charset_name": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null, - "col_name_or_user_var": null, - "set": null, - "ignore_number": null, - "replace_ignore": "IGNORE", - "lines_rows": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 9 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected token.", - { - "@type": "@12" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@12" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@14" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr5.in deleted file mode 100644 index 0a21a6b1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr5.in +++ /dev/null @@ -1,3 +0,0 @@ -LOAD DATA INFILE '/tmp/test.txt' IGNORE -INTO TABLE test -@a = 1; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr5.out deleted file mode 100644 index f46a9629..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr5.out +++ /dev/null @@ -1,286 +0,0 @@ -{ - "query": "LOAD DATA INFILE '/tmp/test.txt' IGNORE\nINTO TABLE test\n@a = 1;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "LOAD DATA INFILE '/tmp/test.txt' IGNORE\nINTO TABLE test\n@a = 1;", - "len": 63, - "last": 63, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOAD DATA", - "value": "LOAD DATA", - "keyword": "LOAD DATA", - "type": 1, - "flags": 7, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INFILE", - "value": "INFILE", - "keyword": "INFILE", - "type": 1, - "flags": 3, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'/tmp/test.txt'", - "value": "/tmp/test.txt", - "keyword": null, - "type": 7, - "flags": 1, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IGNORE", - "value": "IGNORE", - "keyword": "IGNORE", - "type": 1, - "flags": 3, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@a", - "value": "a", - "keyword": null, - "type": 8, - "flags": 1, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 21, - "idx": 21 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LoadStatement", - "file_name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "'/tmp/test.txt'", - "alias": null, - "function": null, - "subquery": null, - "file": "/tmp/test.txt" - }, - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test", - "column": null, - "expr": "test", - "alias": null, - "function": null, - "subquery": null - }, - "partition": null, - "charset_name": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null, - "col_name_or_user_var": null, - "set": null, - "ignore_number": null, - "replace_ignore": "IGNORE", - "lines_rows": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 13 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected token.", - { - "@type": "@16" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@16" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@20" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr6.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr6.in deleted file mode 100644 index 9dea8ab0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr6.in +++ /dev/null @@ -1,3 +0,0 @@ -LOAD DATA INFILE '/tmp/test.txt' IGNORE -INTO TABLE test -DATA @a = 1; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr6.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr6.out deleted file mode 100644 index 7bc4d3e0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLoadErr6.out +++ /dev/null @@ -1,290 +0,0 @@ -{ - "query": "LOAD DATA INFILE '/tmp/test.txt' IGNORE\nINTO TABLE test\nDATA @a = 1;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "LOAD DATA INFILE '/tmp/test.txt' IGNORE\nINTO TABLE test\nDATA @a = 1;", - "len": 68, - "last": 68, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOAD DATA", - "value": "LOAD DATA", - "keyword": "LOAD DATA", - "type": 1, - "flags": 7, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INFILE", - "value": "INFILE", - "keyword": "INFILE", - "type": 1, - "flags": 3, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'/tmp/test.txt'", - "value": "/tmp/test.txt", - "keyword": null, - "type": 7, - "flags": 1, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IGNORE", - "value": "IGNORE", - "keyword": "IGNORE", - "type": 1, - "flags": 3, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DATA", - "value": "DATA", - "keyword": "DATA", - "type": 1, - "flags": 1, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@a", - "value": "a", - "keyword": null, - "type": 8, - "flags": 1, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 23, - "idx": 23 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LoadStatement", - "file_name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "'/tmp/test.txt'", - "alias": null, - "function": null, - "subquery": null, - "file": "/tmp/test.txt" - }, - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test", - "column": null, - "expr": "test", - "alias": null, - "function": null, - "subquery": null - }, - "partition": null, - "charset_name": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null, - "col_name_or_user_var": null, - "set": null, - "ignore_number": null, - "replace_ignore": "IGNORE", - "lines_rows": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 13 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unrecognized statement type.", - { - "@type": "@16" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock1.in deleted file mode 100644 index cfed7a3a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock1.in +++ /dev/null @@ -1 +0,0 @@ -LOCK TABLES table1 AS `t1` READ LOCAL; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock1.out deleted file mode 100644 index c507d1f9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock1.out +++ /dev/null @@ -1,193 +0,0 @@ -{ - "query": "LOCK TABLES table1 AS `t1` READ LOCAL;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "LOCK TABLES table1 AS `t1` READ LOCAL;", - "len": 43, - "last": 43, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCK", - "value": "LOCK", - "keyword": "LOCK", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLES", - "value": "TABLES", - "keyword": "TABLES", - "type": 1, - "flags": 1, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`t1`", - "value": "t1", - "keyword": null, - "type": 8, - "flags": 2, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "READ", - "value": "READ", - "keyword": "READ", - "type": 1, - "flags": 3, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCAL", - "value": "LOCAL", - "keyword": "LOCAL", - "type": 1, - "flags": 1, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 15, - "idx": 15 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LockStatement", - "locked": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\LockExpression", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": "t1", - "function": null, - "subquery": null - }, - "type": "READ LOCAL" - } - ], - "isLock": true, - "options": null, - "first": 0, - "last": 13 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock2.in deleted file mode 100644 index 87407462..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock2.in +++ /dev/null @@ -1 +0,0 @@ -LOCK TABLES table1 AS `t1` READ; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock2.out deleted file mode 100644 index f943c357..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock2.out +++ /dev/null @@ -1,175 +0,0 @@ -{ - "query": "LOCK TABLES table1 AS `t1` READ;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "LOCK TABLES table1 AS `t1` READ;", - "len": 32, - "last": 32, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCK", - "value": "LOCK", - "keyword": "LOCK", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLES", - "value": "TABLES", - "keyword": "TABLES", - "type": 1, - "flags": 1, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`t1`", - "value": "t1", - "keyword": null, - "type": 8, - "flags": 2, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "READ", - "value": "READ", - "keyword": "READ", - "type": 1, - "flags": 3, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 13, - "idx": 13 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LockStatement", - "locked": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\LockExpression", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": "t1", - "function": null, - "subquery": null - }, - "type": "READ" - } - ], - "isLock": true, - "options": null, - "first": 0, - "last": 11 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock3.in deleted file mode 100644 index 4d57f17c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock3.in +++ /dev/null @@ -1 +0,0 @@ -LOCK TABLES table1 AS `t1` LOW_PRIORITY WRITE; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock3.out deleted file mode 100644 index 18ec9d00..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock3.out +++ /dev/null @@ -1,193 +0,0 @@ -{ - "query": "LOCK TABLES table1 AS `t1` LOW_PRIORITY WRITE;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "LOCK TABLES table1 AS `t1` LOW_PRIORITY WRITE;", - "len": 46, - "last": 46, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCK", - "value": "LOCK", - "keyword": "LOCK", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLES", - "value": "TABLES", - "keyword": "TABLES", - "type": 1, - "flags": 1, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`t1`", - "value": "t1", - "keyword": null, - "type": 8, - "flags": 2, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOW_PRIORITY", - "value": "LOW_PRIORITY", - "keyword": "LOW_PRIORITY", - "type": 1, - "flags": 3, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WRITE", - "value": "WRITE", - "keyword": "WRITE", - "type": 1, - "flags": 3, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 15, - "idx": 15 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LockStatement", - "locked": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\LockExpression", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": "t1", - "function": null, - "subquery": null - }, - "type": "LOW_PRIORITY WRITE" - } - ], - "isLock": true, - "options": null, - "first": 0, - "last": 13 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock4.in deleted file mode 100644 index dd99683e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock4.in +++ /dev/null @@ -1 +0,0 @@ -LOCK TABLES table1 AS `t1` WRITE; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock4.out deleted file mode 100644 index 11119080..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock4.out +++ /dev/null @@ -1,175 +0,0 @@ -{ - "query": "LOCK TABLES table1 AS `t1` WRITE;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "LOCK TABLES table1 AS `t1` WRITE;", - "len": 33, - "last": 33, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCK", - "value": "LOCK", - "keyword": "LOCK", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLES", - "value": "TABLES", - "keyword": "TABLES", - "type": 1, - "flags": 1, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`t1`", - "value": "t1", - "keyword": null, - "type": 8, - "flags": 2, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WRITE", - "value": "WRITE", - "keyword": "WRITE", - "type": 1, - "flags": 3, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 13, - "idx": 13 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LockStatement", - "locked": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\LockExpression", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": "t1", - "function": null, - "subquery": null - }, - "type": "WRITE" - } - ], - "isLock": true, - "options": null, - "first": 0, - "last": 11 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock5.in deleted file mode 100644 index bc872914..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock5.in +++ /dev/null @@ -1 +0,0 @@ -LOCK TABLES table1 AS `t1` READ LOCAL, table2 AS `t2` WRITE; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock5.out deleted file mode 100644 index cdd97dce..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock5.out +++ /dev/null @@ -1,288 +0,0 @@ -{ - "query": "LOCK TABLES table1 AS `t1` READ LOCAL, table2 AS `t2` WRITE;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "LOCK TABLES table1 AS `t1` READ LOCAL, table2 AS `t2` WRITE;", - "len": 60, - "last": 60, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCK", - "value": "LOCK", - "keyword": "LOCK", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLES", - "value": "TABLES", - "keyword": "TABLES", - "type": 1, - "flags": 1, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`t1`", - "value": "t1", - "keyword": null, - "type": 8, - "flags": 2, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "READ", - "value": "READ", - "keyword": "READ", - "type": 1, - "flags": 3, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCAL", - "value": "LOCAL", - "keyword": "LOCAL", - "type": 1, - "flags": 1, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table2", - "value": "table2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`t2`", - "value": "t2", - "keyword": null, - "type": 8, - "flags": 2, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WRITE", - "value": "WRITE", - "keyword": "WRITE", - "type": 1, - "flags": 3, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 24, - "idx": 24 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LockStatement", - "locked": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\LockExpression", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": "t1", - "function": null, - "subquery": null - }, - "type": "READ LOCAL" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\LockExpression", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table2", - "column": null, - "expr": "table2", - "alias": "t2", - "function": null, - "subquery": null - }, - "type": "WRITE" - } - ], - "isLock": true, - "options": null, - "first": 0, - "last": 22 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock6.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock6.in deleted file mode 100644 index 9f693465..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock6.in +++ /dev/null @@ -1 +0,0 @@ -LOCK TABLES table1 READ LOCAL, table2 AS `t2` WRITE; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock6.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock6.out deleted file mode 100644 index b3070a2a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLock6.out +++ /dev/null @@ -1,252 +0,0 @@ -{ - "query": "LOCK TABLES table1 READ LOCAL, table2 AS `t2` WRITE;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "LOCK TABLES table1 READ LOCAL, table2 AS `t2` WRITE;", - "len": 52, - "last": 52, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCK", - "value": "LOCK", - "keyword": "LOCK", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLES", - "value": "TABLES", - "keyword": "TABLES", - "type": 1, - "flags": 1, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "READ", - "value": "READ", - "keyword": "READ", - "type": 1, - "flags": 3, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCAL", - "value": "LOCAL", - "keyword": "LOCAL", - "type": 1, - "flags": 1, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table2", - "value": "table2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`t2`", - "value": "t2", - "keyword": null, - "type": 8, - "flags": 2, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WRITE", - "value": "WRITE", - "keyword": "WRITE", - "type": 1, - "flags": 3, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 20, - "idx": 20 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LockStatement", - "locked": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\LockExpression", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": null, - "function": null, - "subquery": null - }, - "type": "READ LOCAL" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\LockExpression", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table2", - "column": null, - "expr": "table2", - "alias": "t2", - "function": null, - "subquery": null - }, - "type": "WRITE" - } - ], - "isLock": true, - "options": null, - "first": 0, - "last": 18 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr1.in deleted file mode 100644 index 7eed140b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr1.in +++ /dev/null @@ -1 +0,0 @@ -LOCK TABLES table1 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr1.out deleted file mode 100644 index 3df2f32e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr1.out +++ /dev/null @@ -1,120 +0,0 @@ -{ - "query": "LOCK TABLES table1", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "LOCK TABLES table1", - "len": 18, - "last": 18, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCK", - "value": "LOCK", - "keyword": "LOCK", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLES", - "value": "TABLES", - "keyword": "TABLES", - "type": 1, - "flags": 1, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 6, - "idx": 6 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LockStatement", - "locked": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\LockExpression", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": null, - "function": null, - "subquery": null - }, - "type": null - } - ], - "isLock": true, - "options": null, - "first": 0, - "last": 5 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected end of LOCK expression.", - { - "@type": "@6" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr10.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr10.in deleted file mode 100644 index 5fbeff7c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr10.in +++ /dev/null @@ -1 +0,0 @@ -LOCK TABLES table1 AS table1 LOW_PRIORITY WRITE abc \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr10.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr10.out deleted file mode 100644 index 4ab01892..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr10.out +++ /dev/null @@ -1,210 +0,0 @@ -{ - "query": "LOCK TABLES table1 AS table1 LOW_PRIORITY WRITE abc", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "LOCK TABLES table1 AS table1 LOW_PRIORITY WRITE abc", - "len": 51, - "last": 51, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCK", - "value": "LOCK", - "keyword": "LOCK", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLES", - "value": "TABLES", - "keyword": "TABLES", - "type": 1, - "flags": 1, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOW_PRIORITY", - "value": "LOW_PRIORITY", - "keyword": "LOW_PRIORITY", - "type": 1, - "flags": 3, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WRITE", - "value": "WRITE", - "keyword": "WRITE", - "type": 1, - "flags": 3, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "abc", - "value": "abc", - "keyword": null, - "type": 0, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 16, - "idx": 16 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LockStatement", - "locked": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\LockExpression", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": "table1", - "function": null, - "subquery": null - }, - "type": "LOW_PRIORITY WRITE" - } - ], - "isLock": true, - "options": null, - "first": 0, - "last": 15 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected token.", - { - "@type": "@16" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr2.in deleted file mode 100644 index df0081f2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr2.in +++ /dev/null @@ -1 +0,0 @@ -LOCK TABLES table1 AS `t1` LOCAL \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr2.out deleted file mode 100644 index 1db477b2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr2.out +++ /dev/null @@ -1,186 +0,0 @@ -{ - "query": "LOCK TABLES table1 AS `t1` LOCAL", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "LOCK TABLES table1 AS `t1` LOCAL", - "len": 32, - "last": 32, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCK", - "value": "LOCK", - "keyword": "LOCK", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLES", - "value": "TABLES", - "keyword": "TABLES", - "type": 1, - "flags": 1, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`t1`", - "value": "t1", - "keyword": null, - "type": 8, - "flags": 2, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCAL", - "value": "LOCAL", - "keyword": "LOCAL", - "type": 1, - "flags": 1, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 12, - "idx": 12 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LockStatement", - "locked": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\LockExpression", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": "t1", - "function": null, - "subquery": null - }, - "type": "" - } - ], - "isLock": true, - "options": null, - "first": 0, - "last": 11 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "An alias was previously found.", - { - "@type": "@12" - }, - 0 - ], - [ - "Unexpected keyword.", - { - "@type": "@12" - }, - 0 - ], - [ - "Unexpected end of LOCK expression.", - null, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr3.in deleted file mode 100644 index b779b587..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr3.in +++ /dev/null @@ -1,2 +0,0 @@ --- TABLES misspelled -LOCK TABLE table1 AS t1 READ \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr3.out deleted file mode 100644 index 7ac84581..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr3.out +++ /dev/null @@ -1,191 +0,0 @@ -{ - "query": "-- TABLES misspelled\nLOCK TABLE table1 AS t1 READ", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "-- TABLES misspelled\nLOCK TABLE table1 AS t1 READ", - "len": 49, - "last": 49, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- TABLES misspelled", - "value": "-- TABLES misspelled", - "keyword": null, - "type": 4, - "flags": 4, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCK", - "value": "LOCK", - "keyword": "LOCK", - "type": 1, - "flags": 3, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "READ", - "value": "READ", - "keyword": "READ", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 14, - "idx": 15 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LockStatement", - "locked": [], - "isLock": true, - "options": null, - "first": 0, - "last": 4 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected keyword.", - { - "@type": "@6" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@8" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@10" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr4.in deleted file mode 100644 index 9fe5811a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr4.in +++ /dev/null @@ -1,2 +0,0 @@ --- missing TABLES keyword -LOCK table1 READ LOCAL \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr4.out deleted file mode 100644 index c6ae535a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr4.out +++ /dev/null @@ -1,148 +0,0 @@ -{ - "query": "-- missing TABLES keyword\nLOCK table1 READ LOCAL", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "-- missing TABLES keyword\nLOCK table1 READ LOCAL", - "len": 48, - "last": 48, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- missing TABLES keyword", - "value": "-- missing TABLES keyword", - "keyword": null, - "type": 4, - "flags": 4, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCK", - "value": "LOCK", - "keyword": "LOCK", - "type": 1, - "flags": 3, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "READ", - "value": "READ", - "keyword": "READ", - "type": 1, - "flags": 3, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCAL", - "value": "LOCAL", - "keyword": "LOCAL", - "type": 1, - "flags": 1, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 11 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LockStatement", - "locked": [], - "isLock": true, - "options": null, - "first": 0, - "last": 4 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected token.", - { - "@type": "@6" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@8" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr5.in deleted file mode 100644 index 37375403..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr5.in +++ /dev/null @@ -1,2 +0,0 @@ --- extraneous comma -LOCK TABLES table1 READ LOCAL, \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr5.out deleted file mode 100644 index de0cb8b1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr5.out +++ /dev/null @@ -1,183 +0,0 @@ -{ - "query": "-- extraneous comma\nLOCK TABLES table1 READ LOCAL,", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "-- extraneous comma\nLOCK TABLES table1 READ LOCAL,", - "len": 50, - "last": 50, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- extraneous comma", - "value": "-- extraneous comma", - "keyword": null, - "type": 4, - "flags": 4, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCK", - "value": "LOCK", - "keyword": "LOCK", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLES", - "value": "TABLES", - "keyword": "TABLES", - "type": 1, - "flags": 1, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "READ", - "value": "READ", - "keyword": "READ", - "type": 1, - "flags": 3, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCAL", - "value": "LOCAL", - "keyword": "LOCAL", - "type": 1, - "flags": 1, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 13, - "idx": 13 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LockStatement", - "locked": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\LockExpression", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": null, - "function": null, - "subquery": null - }, - "type": "READ LOCAL" - } - ], - "isLock": true, - "options": null, - "first": 0, - "last": 12 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected end of LOCK statement.", - { - "@type": "@13" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr6.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr6.in deleted file mode 100644 index 5223189e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr6.in +++ /dev/null @@ -1,2 +0,0 @@ --- missing lock type -LOCK TABLES table1 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr6.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr6.out deleted file mode 100644 index 274786d1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr6.out +++ /dev/null @@ -1,138 +0,0 @@ -{ - "query": "-- missing lock type\nLOCK TABLES table1", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "-- missing lock type\nLOCK TABLES table1", - "len": 39, - "last": 39, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- missing lock type", - "value": "-- missing lock type", - "keyword": null, - "type": 4, - "flags": 4, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCK", - "value": "LOCK", - "keyword": "LOCK", - "type": 1, - "flags": 3, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLES", - "value": "TABLES", - "keyword": "TABLES", - "type": 1, - "flags": 1, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 8, - "idx": 8 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LockStatement", - "locked": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\LockExpression", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": null, - "function": null, - "subquery": null - }, - "type": null - } - ], - "isLock": true, - "options": null, - "first": 0, - "last": 7 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected end of LOCK expression.", - { - "@type": "@8" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr7.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr7.in deleted file mode 100644 index 324343a8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr7.in +++ /dev/null @@ -1 +0,0 @@ -LOCK TABLES table1 AS table1 non_keyword \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr7.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr7.out deleted file mode 100644 index 4ba9c814..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr7.out +++ /dev/null @@ -1,186 +0,0 @@ -{ - "query": "LOCK TABLES table1 AS table1 non_keyword", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "LOCK TABLES table1 AS table1 non_keyword", - "len": 40, - "last": 40, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCK", - "value": "LOCK", - "keyword": "LOCK", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLES", - "value": "TABLES", - "keyword": "TABLES", - "type": 1, - "flags": 1, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "non_keyword", - "value": "non_keyword", - "keyword": null, - "type": 0, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 12, - "idx": 12 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LockStatement", - "locked": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\LockExpression", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": "table1", - "function": null, - "subquery": null - }, - "type": "" - } - ], - "isLock": true, - "options": null, - "first": 0, - "last": 11 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "An alias was previously found.", - { - "@type": "@12" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@12" - }, - 0 - ], - [ - "Unexpected end of LOCK expression.", - null, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr8.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr8.in deleted file mode 100644 index 052824d4..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr8.in +++ /dev/null @@ -1 +0,0 @@ -LOCK TABLES table1 AS table1 READ AUTO_INCREMENT \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr8.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr8.out deleted file mode 100644 index d2cfaf66..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr8.out +++ /dev/null @@ -1,192 +0,0 @@ -{ - "query": "LOCK TABLES table1 AS table1 READ AUTO_INCREMENT", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "LOCK TABLES table1 AS table1 READ AUTO_INCREMENT", - "len": 48, - "last": 48, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCK", - "value": "LOCK", - "keyword": "LOCK", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLES", - "value": "TABLES", - "keyword": "TABLES", - "type": 1, - "flags": 1, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "READ", - "value": "READ", - "keyword": "READ", - "type": 1, - "flags": 3, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AUTO_INCREMENT", - "value": "AUTO_INCREMENT", - "keyword": "AUTO_INCREMENT", - "type": 1, - "flags": 1, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 14, - "idx": 14 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LockStatement", - "locked": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\LockExpression", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": "table1", - "function": null, - "subquery": null - }, - "type": "READ" - } - ], - "isLock": true, - "options": null, - "first": 0, - "last": 13 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected keyword.", - { - "@type": "@14" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr9.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr9.in deleted file mode 100644 index e44d1dd2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr9.in +++ /dev/null @@ -1 +0,0 @@ -LOCK TABLES table1 AS table1 LOW_PRIORITY READ \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr9.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr9.out deleted file mode 100644 index 873b3b4c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseLockErr9.out +++ /dev/null @@ -1,199 +0,0 @@ -{ - "query": "LOCK TABLES table1 AS table1 LOW_PRIORITY READ", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "LOCK TABLES table1 AS table1 LOW_PRIORITY READ", - "len": 46, - "last": 46, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCK", - "value": "LOCK", - "keyword": "LOCK", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLES", - "value": "TABLES", - "keyword": "TABLES", - "type": 1, - "flags": 1, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOW_PRIORITY", - "value": "LOW_PRIORITY", - "keyword": "LOW_PRIORITY", - "type": 1, - "flags": 3, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "READ", - "value": "READ", - "keyword": "READ", - "type": 1, - "flags": 3, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 14, - "idx": 14 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LockStatement", - "locked": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\LockExpression", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": "table1", - "function": null, - "subquery": null - }, - "type": "LOW_PRIORITY" - } - ], - "isLock": true, - "options": null, - "first": 0, - "last": 13 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected keyword.", - { - "@type": "@14" - }, - 0 - ], - [ - "Unexpected end of LOCK expression.", - { - "@type": "@12" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurge.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurge.in deleted file mode 100644 index e1335229..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurge.in +++ /dev/null @@ -1 +0,0 @@ -PURGE BINARY LOGS TO 'mysql-bin.010'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurge.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurge.out deleted file mode 100644 index 6cb679aa..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurge.out +++ /dev/null @@ -1,152 +0,0 @@ -{ - "query": "PURGE BINARY LOGS TO 'mysql-bin.010';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "PURGE BINARY LOGS TO 'mysql-bin.010';", - "len": 37, - "last": 37, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PURGE", - "value": "PURGE", - "keyword": "PURGE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BINARY", - "value": "BINARY", - "keyword": "BINARY", - "type": 1, - "flags": 43, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOGS", - "value": "LOGS", - "keyword": "LOGS", - "type": 1, - "flags": 1, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'mysql-bin.010'", - "value": "mysql-bin.010", - "keyword": null, - "type": 7, - "flags": 1, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 11, - "idx": 11 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\PurgeStatement", - "log_type": "BINARY", - "end_option": "TO", - "end_expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "mysql-bin.010", - "expr": "'mysql-bin.010'", - "alias": null, - "function": null, - "subquery": null - }, - "options": null, - "first": 0, - "last": 9 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurge2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurge2.in deleted file mode 100644 index a09818a1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurge2.in +++ /dev/null @@ -1 +0,0 @@ -PURGE BINARY LOGS BEFORE '2008-04-02 22:46:26'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurge2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurge2.out deleted file mode 100644 index e9a48d49..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurge2.out +++ /dev/null @@ -1,152 +0,0 @@ -{ - "query": "PURGE BINARY LOGS BEFORE '2008-04-02 22:46:26';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "PURGE BINARY LOGS BEFORE '2008-04-02 22:46:26';", - "len": 47, - "last": 47, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PURGE", - "value": "PURGE", - "keyword": "PURGE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BINARY", - "value": "BINARY", - "keyword": "BINARY", - "type": 1, - "flags": 43, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOGS", - "value": "LOGS", - "keyword": "LOGS", - "type": 1, - "flags": 1, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BEFORE", - "value": "BEFORE", - "keyword": "BEFORE", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'2008-04-02 22:46:26'", - "value": "2008-04-02 22:46:26", - "keyword": null, - "type": 7, - "flags": 1, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 11, - "idx": 11 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\PurgeStatement", - "log_type": "BINARY", - "end_option": "BEFORE", - "end_expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "2008-04-02 22:46:26", - "expr": "'2008-04-02 22:46:26'", - "alias": null, - "function": null, - "subquery": null - }, - "options": null, - "first": 0, - "last": 9 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurge3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurge3.in deleted file mode 100644 index 755ff2b8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurge3.in +++ /dev/null @@ -1 +0,0 @@ -PURGE MASTER LOGS BEFORE '2008-04-02 22:46:26'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurge3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurge3.out deleted file mode 100644 index 800042d5..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurge3.out +++ /dev/null @@ -1,152 +0,0 @@ -{ - "query": "PURGE MASTER LOGS BEFORE '2008-04-02 22:46:26';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "PURGE MASTER LOGS BEFORE '2008-04-02 22:46:26';", - "len": 47, - "last": 47, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PURGE", - "value": "PURGE", - "keyword": "PURGE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MASTER", - "value": "MASTER", - "keyword": "MASTER", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOGS", - "value": "LOGS", - "keyword": "LOGS", - "type": 1, - "flags": 1, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BEFORE", - "value": "BEFORE", - "keyword": "BEFORE", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'2008-04-02 22:46:26'", - "value": "2008-04-02 22:46:26", - "keyword": null, - "type": 7, - "flags": 1, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 11, - "idx": 11 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\PurgeStatement", - "log_type": "MASTER", - "end_option": "BEFORE", - "end_expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "2008-04-02 22:46:26", - "expr": "'2008-04-02 22:46:26'", - "alias": null, - "function": null, - "subquery": null - }, - "options": null, - "first": 0, - "last": 9 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurge4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurge4.in deleted file mode 100644 index 537e269f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurge4.in +++ /dev/null @@ -1 +0,0 @@ -PURGE MASTER LOGS TO 'mysql-bin.010'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurge4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurge4.out deleted file mode 100644 index 04eca917..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurge4.out +++ /dev/null @@ -1,152 +0,0 @@ -{ - "query": "PURGE MASTER LOGS TO 'mysql-bin.010';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "PURGE MASTER LOGS TO 'mysql-bin.010';", - "len": 37, - "last": 37, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PURGE", - "value": "PURGE", - "keyword": "PURGE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MASTER", - "value": "MASTER", - "keyword": "MASTER", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOGS", - "value": "LOGS", - "keyword": "LOGS", - "type": 1, - "flags": 1, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'mysql-bin.010'", - "value": "mysql-bin.010", - "keyword": null, - "type": 7, - "flags": 1, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 11, - "idx": 11 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\PurgeStatement", - "log_type": "MASTER", - "end_option": "TO", - "end_expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "mysql-bin.010", - "expr": "'mysql-bin.010'", - "alias": null, - "function": null, - "subquery": null - }, - "options": null, - "first": 0, - "last": 9 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurgeErr.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurgeErr.in deleted file mode 100644 index 8302ca73..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurgeErr.in +++ /dev/null @@ -1 +0,0 @@ -PURGE LOGS TO 'mysql-bin.010'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurgeErr.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurgeErr.out deleted file mode 100644 index eefbc11e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurgeErr.out +++ /dev/null @@ -1,154 +0,0 @@ -{ - "query": "PURGE LOGS TO 'mysql-bin.010';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "PURGE LOGS TO 'mysql-bin.010';", - "len": 30, - "last": 30, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PURGE", - "value": "PURGE", - "keyword": "PURGE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOGS", - "value": "LOGS", - "keyword": "LOGS", - "type": 1, - "flags": 1, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'mysql-bin.010'", - "value": "mysql-bin.010", - "keyword": null, - "type": 7, - "flags": 1, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 9, - "idx": 9 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\PurgeStatement", - "log_type": null, - "end_option": null, - "end_expr": null, - "options": null, - "first": 0, - "last": 7 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected keyword", - { - "@type": "@4" - }, - 0 - ], - [ - "Unexpected keyword", - { - "@type": "@6" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@8" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@8" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurgeErr2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurgeErr2.in deleted file mode 100644 index 93c642b2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurgeErr2.in +++ /dev/null @@ -1 +0,0 @@ -PURGE BINARY LOGS INTO; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurgeErr2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurgeErr2.out deleted file mode 100644 index 977c2a0b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurgeErr2.out +++ /dev/null @@ -1,140 +0,0 @@ -{ - "query": "PURGE BINARY LOGS INTO;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "PURGE BINARY LOGS INTO;", - "len": 23, - "last": 23, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PURGE", - "value": "PURGE", - "keyword": "PURGE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BINARY", - "value": "BINARY", - "keyword": "BINARY", - "type": 1, - "flags": 43, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOGS", - "value": "LOGS", - "keyword": "LOGS", - "type": 1, - "flags": 1, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 9, - "idx": 9 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\PurgeStatement", - "log_type": "BINARY", - "end_option": null, - "end_expr": null, - "options": null, - "first": 0, - "last": 7 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected keyword", - { - "@type": "@8" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@8" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurgeErr3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurgeErr3.in deleted file mode 100644 index 9c58ff6e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurgeErr3.in +++ /dev/null @@ -1 +0,0 @@ -PURGE BINARY LOGS TO 'mysql.bin' INTO; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurgeErr3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurgeErr3.out deleted file mode 100644 index f9c04430..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsePurgeErr3.out +++ /dev/null @@ -1,185 +0,0 @@ -{ - "query": "PURGE BINARY LOGS TO 'mysql.bin' INTO;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "PURGE BINARY LOGS TO 'mysql.bin' INTO;", - "len": 38, - "last": 38, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PURGE", - "value": "PURGE", - "keyword": "PURGE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BINARY", - "value": "BINARY", - "keyword": "BINARY", - "type": 1, - "flags": 43, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOGS", - "value": "LOGS", - "keyword": "LOGS", - "type": 1, - "flags": 1, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'mysql.bin'", - "value": "mysql.bin", - "keyword": null, - "type": 7, - "flags": 1, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 13, - "idx": 13 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\PurgeStatement", - "log_type": "BINARY", - "end_option": "TO", - "end_expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "mysql.bin", - "expr": "'mysql.bin'", - "alias": null, - "function": null, - "subquery": null - }, - "options": null, - "first": 0, - "last": 11 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected token.", - { - "@type": "@12" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@12" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRename.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRename.in deleted file mode 100644 index 230bb980..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRename.in +++ /dev/null @@ -1 +0,0 @@ -RENAME TABLE foo TO bar \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRename.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRename.out deleted file mode 100644 index 2ace05c3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRename.out +++ /dev/null @@ -1,156 +0,0 @@ -{ - "query": "RENAME TABLE foo TO bar", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "RENAME TABLE foo TO bar", - "len": 23, - "last": 23, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RENAME", - "value": "RENAME", - "keyword": "RENAME", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "bar", - "value": "bar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 10 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\RenameStatement", - "renames": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\RenameOperation", - "old": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "foo", - "column": null, - "expr": "foo", - "alias": null, - "function": null, - "subquery": null - }, - "new": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "bar", - "column": null, - "expr": "bar", - "alias": null, - "function": null, - "subquery": null - } - } - ], - "options": null, - "first": 0, - "last": 8 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRename2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRename2.in deleted file mode 100644 index 7adb6410..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRename2.in +++ /dev/null @@ -1 +0,0 @@ -RENAME TABLE foo TO bar, baz TO qux; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRename2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRename2.out deleted file mode 100644 index 4bf0b715..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRename2.out +++ /dev/null @@ -1,251 +0,0 @@ -{ - "query": "RENAME TABLE foo TO bar, baz TO qux;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "RENAME TABLE foo TO bar, baz TO qux;", - "len": 36, - "last": 36, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RENAME", - "value": "RENAME", - "keyword": "RENAME", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "bar", - "value": "bar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "baz", - "value": "baz", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "qux", - "value": "qux", - "keyword": null, - "type": 0, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 18, - "idx": 18 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\RenameStatement", - "renames": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\RenameOperation", - "old": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "foo", - "column": null, - "expr": "foo", - "alias": null, - "function": null, - "subquery": null - }, - "new": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "bar", - "column": null, - "expr": "bar", - "alias": null, - "function": null, - "subquery": null - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\RenameOperation", - "old": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "baz", - "column": null, - "expr": "baz", - "alias": null, - "function": null, - "subquery": null - }, - "new": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "qux", - "column": null, - "expr": "qux", - "alias": null, - "function": null, - "subquery": null - } - } - ], - "options": null, - "first": 0, - "last": 15 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr1.in deleted file mode 100644 index 50b64590..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr1.in +++ /dev/null @@ -1 +0,0 @@ -RENAME TABLE a TO TO \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr1.out deleted file mode 100644 index e5aa1b90..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr1.out +++ /dev/null @@ -1,155 +0,0 @@ -{ - "query": "RENAME TABLE a TO TO", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "RENAME TABLE a TO TO", - "len": 20, - "last": 20, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RENAME", - "value": "RENAME", - "keyword": "RENAME", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 10 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\RenameStatement", - "renames": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\RenameOperation", - "old": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "a", - "alias": null, - "function": null, - "subquery": null - }, - "new": null - } - ], - "options": null, - "first": 0, - "last": 8 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "The new name of the table was expected.", - { - "@type": "@10" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr2.in deleted file mode 100644 index a72e7fbb..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr2.in +++ /dev/null @@ -1 +0,0 @@ -RENAME TABLE TABLE \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr2.out deleted file mode 100644 index cec2758b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr2.out +++ /dev/null @@ -1,111 +0,0 @@ -{ - "query": "RENAME TABLE TABLE", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "RENAME TABLE TABLE", - "len": 18, - "last": 18, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RENAME", - "value": "RENAME", - "keyword": "RENAME", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 6, - "idx": 6 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\RenameStatement", - "renames": [], - "options": null, - "first": 0, - "last": 4 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "The old name of the table was expected.", - { - "@type": "@6" - }, - 0 - ], - [ - "A rename operation was expected.", - { - "@type": "@6" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr3.in deleted file mode 100644 index 76865a42..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr3.in +++ /dev/null @@ -1 +0,0 @@ -RENAME TABLE a FROM \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr3.out deleted file mode 100644 index 01d446bc..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr3.out +++ /dev/null @@ -1,152 +0,0 @@ -{ - "query": "RENAME TABLE a FROM", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "RENAME TABLE a FROM", - "len": 19, - "last": 19, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RENAME", - "value": "RENAME", - "keyword": "RENAME", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 8, - "idx": 8 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\RenameStatement", - "renames": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\RenameOperation", - "old": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "a", - "alias": null, - "function": null, - "subquery": null - }, - "new": null - } - ], - "options": null, - "first": 0, - "last": 6, - "from": [] - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Keyword \"TO\" was expected.", - { - "@type": "@8" - }, - 0 - ], - [ - "A rename operation was expected.", - { - "@type": "@7" - }, - 0 - ], - [ - "An expression was expected.", - { - "@type": "@9" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr4.in deleted file mode 100644 index c9ec564b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr4.in +++ /dev/null @@ -1 +0,0 @@ -RENAME TABLE foo TO bar TO \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr4.out deleted file mode 100644 index 04325a75..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr4.out +++ /dev/null @@ -1,182 +0,0 @@ -{ - "query": "RENAME TABLE foo TO bar TO", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "RENAME TABLE foo TO bar TO", - "len": 26, - "last": 26, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RENAME", - "value": "RENAME", - "keyword": "RENAME", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "bar", - "value": "bar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 12, - "idx": 12 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\RenameStatement", - "renames": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\RenameOperation", - "old": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "foo", - "column": null, - "expr": "foo", - "alias": null, - "function": null, - "subquery": null - }, - "new": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "bar", - "column": null, - "expr": "bar", - "alias": null, - "function": null, - "subquery": null - } - } - ], - "options": null, - "first": 0, - "last": 10 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unrecognized keyword.", - { - "@type": "@12" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr5.in deleted file mode 100644 index 59d7081f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr5.in +++ /dev/null @@ -1 +0,0 @@ -RENAME diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr5.out deleted file mode 100644 index 2d827179..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRenameErr5.out +++ /dev/null @@ -1,77 +0,0 @@ -{ - "query": "RENAME\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "RENAME\n", - "len": 7, - "last": 7, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RENAME", - "value": "RENAME", - "keyword": "RENAME", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 3, - "idx": 4 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\RenameStatement", - "renames": null, - "options": null, - "first": 0, - "last": 3 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Keyword at end of statement.", - { - "@type": "@2" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplace.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplace.in deleted file mode 100644 index e2511b6d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplace.in +++ /dev/null @@ -1,3 +0,0 @@ -REPLACE LOW_PRIORITY -INTO users(id, username) -VALUES (1, 'Foo'), (2, 'Bar') \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplace.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplace.out deleted file mode 100644 index 649d56fb..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplace.out +++ /dev/null @@ -1,373 +0,0 @@ -{ - "query": "REPLACE LOW_PRIORITY\nINTO users(id, username)\nVALUES (1, 'Foo'), (2, 'Bar')", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "REPLACE LOW_PRIORITY\nINTO users(id, username)\nVALUES (1, 'Foo'), (2, 'Bar')", - "len": 75, - "last": 75, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REPLACE", - "value": "REPLACE", - "keyword": "REPLACE", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOW_PRIORITY", - "value": "LOW_PRIORITY", - "keyword": "LOW_PRIORITY", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "users", - "value": "users", - "keyword": null, - "type": 0, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Foo'", - "value": "Foo", - "keyword": null, - "type": 7, - "flags": 1, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Bar'", - "value": "Bar", - "keyword": null, - "type": 7, - "flags": 1, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 31, - "idx": 31 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ReplaceStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "users", - "column": null, - "expr": "users", - "alias": null, - "function": null, - "subquery": null - }, - "columns": [ - "id", - "username" - ], - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "1", - "'Foo'" - ], - "values": [ - "1", - "Foo" - ] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "2", - "'Bar'" - ], - "values": [ - "2", - "Bar" - ] - } - ], - "set": null, - "select": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "LOW_PRIORITY" - } - }, - "first": 0, - "last": 29 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplace2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplace2.in deleted file mode 100644 index 505c14fc..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplace2.in +++ /dev/null @@ -1,4 +0,0 @@ -REPLACE LOW_PRIORITY -INTO users -SET id = 1, - username = 'Bar'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplace2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplace2.out deleted file mode 100644 index 3b1daf81..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplace2.out +++ /dev/null @@ -1,295 +0,0 @@ -{ - "query": "REPLACE LOW_PRIORITY\nINTO users\nSET id = 1,\n username = 'Bar';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "REPLACE LOW_PRIORITY\nINTO users\nSET id = 1,\n username = 'Bar';", - "len": 65, - "last": 65, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REPLACE", - "value": "REPLACE", - "keyword": "REPLACE", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOW_PRIORITY", - "value": "LOW_PRIORITY", - "keyword": "LOW_PRIORITY", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "users", - "value": "users", - "keyword": null, - "type": 0, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Bar'", - "value": "Bar", - "keyword": null, - "type": 7, - "flags": 1, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 24, - "idx": 24 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ReplaceStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "users", - "column": null, - "expr": "users", - "alias": null, - "function": null, - "subquery": null - }, - "columns": null, - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": null, - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "id", - "value": "1" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "username", - "value": "'Bar'" - } - ], - "select": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "LOW_PRIORITY" - } - }, - "first": 0, - "last": 21 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceErr.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceErr.in deleted file mode 100644 index 02ddd048..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceErr.in +++ /dev/null @@ -1,3 +0,0 @@ -REPLACE LOW_PRIORITY -INTO users(id, username) -(1, 'Foo'), (2, 'Bar') \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceErr.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceErr.out deleted file mode 100644 index 4a818576..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceErr.out +++ /dev/null @@ -1,368 +0,0 @@ -{ - "query": "REPLACE LOW_PRIORITY\nINTO users(id, username)\n(1, 'Foo'), (2, 'Bar')", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "REPLACE LOW_PRIORITY\nINTO users(id, username)\n(1, 'Foo'), (2, 'Bar')", - "len": 68, - "last": 68, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REPLACE", - "value": "REPLACE", - "keyword": "REPLACE", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOW_PRIORITY", - "value": "LOW_PRIORITY", - "keyword": "LOW_PRIORITY", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "users", - "value": "users", - "keyword": null, - "type": 0, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Foo'", - "value": "Foo", - "keyword": null, - "type": 7, - "flags": 1, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Bar'", - "value": "Bar", - "keyword": null, - "type": 7, - "flags": 1, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 29, - "idx": 29 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ReplaceStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "users", - "column": null, - "expr": "users", - "alias": null, - "function": null, - "subquery": null - }, - "columns": [ - "id", - "username" - ], - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": null, - "set": null, - "select": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "LOW_PRIORITY" - } - }, - "first": 0, - "last": 13 - } - ], - "brackets": 2, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected token.", - { - "@type": "@16" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@17" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@20" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@25" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@28" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceErr2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceErr2.in deleted file mode 100644 index e245c4e1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceErr2.in +++ /dev/null @@ -1 +0,0 @@ -REPLACE SELECT diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceErr2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceErr2.out deleted file mode 100644 index 0eabb06e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceErr2.out +++ /dev/null @@ -1,132 +0,0 @@ -{ - "query": "REPLACE SELECT\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "REPLACE SELECT\n", - "len": 15, - "last": 15, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REPLACE", - "value": "REPLACE", - "keyword": "REPLACE", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 5, - "idx": 5 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ReplaceStatement", - "into": null, - "values": null, - "set": null, - "select": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 1 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 2, - "last": 3 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected keyword.", - { - "@type": "@4" - }, - 0 - ], - [ - "An expression was expected.", - { - "@type": "@6" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceErr3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceErr3.in deleted file mode 100644 index ed451cb8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceErr3.in +++ /dev/null @@ -1,2 +0,0 @@ -REPLACE INTO x "string" - diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceErr3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceErr3.out deleted file mode 100644 index f1777463..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceErr3.out +++ /dev/null @@ -1,162 +0,0 @@ -{ - "query": "REPLACE INTO x \"string\"\n\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "REPLACE INTO x \"string\"\n\n", - "len": 25, - "last": 25, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REPLACE", - "value": "REPLACE", - "keyword": "REPLACE", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "x", - "value": "x", - "keyword": "X", - "type": 1, - "flags": 33, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"string\"", - "value": "string", - "keyword": null, - "type": 7, - "flags": 2, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 9, - "idx": 9 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ReplaceStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "x", - "column": null, - "expr": "x", - "alias": null, - "function": null, - "subquery": null - }, - "columns": null, - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": null, - "set": null, - "select": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 5 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected token.", - { - "@type": "@8" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@8" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceIntoErr.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceIntoErr.in deleted file mode 100644 index c723f951..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceIntoErr.in +++ /dev/null @@ -1,2 +0,0 @@ -REPLACE INTO x INSERT - diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceIntoErr.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceIntoErr.out deleted file mode 100644 index 2499731b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceIntoErr.out +++ /dev/null @@ -1,170 +0,0 @@ -{ - "query": "REPLACE INTO x INSERT\n\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "REPLACE INTO x INSERT\n\n", - "len": 23, - "last": 23, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REPLACE", - "value": "REPLACE", - "keyword": "REPLACE", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "x", - "value": "x", - "keyword": "X", - "type": 1, - "flags": 33, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 9, - "idx": 9 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ReplaceStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "x", - "column": null, - "expr": "x", - "alias": null, - "function": null, - "subquery": null - }, - "columns": null, - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": null, - "set": null, - "select": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": null, - "values": null, - "set": null, - "select": null, - "with": null, - "onDuplicateSet": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 6, - "last": 7 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected keyword.", - { - "@type": "@8" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceSelect.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceSelect.in deleted file mode 100644 index ed6f4063..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceSelect.in +++ /dev/null @@ -1 +0,0 @@ -REPLACE INTO `a` (`value`) SELECT value from `b` \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceSelect.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceSelect.out deleted file mode 100644 index 6786e14a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceSelect.out +++ /dev/null @@ -1,275 +0,0 @@ -{ - "query": "REPLACE INTO `a` (`value`) SELECT value from `b`", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "REPLACE INTO `a` (`value`) SELECT value from `b`", - "len": 49, - "last": 49, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REPLACE", - "value": "REPLACE", - "keyword": "REPLACE", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`a`", - "value": "a", - "keyword": null, - "type": 8, - "flags": 2, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`value`", - "value": "value", - "keyword": null, - "type": 8, - "flags": 2, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "value", - "value": "value", - "keyword": "VALUE", - "type": 1, - "flags": 1, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "from", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`b`", - "value": "b", - "keyword": null, - "type": 8, - "flags": 2, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 18, - "idx": 18 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ReplaceStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "`a`", - "alias": null, - "function": null, - "subquery": null - }, - "columns": [ - "value" - ], - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": null, - "set": null, - "select": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "value", - "expr": "value", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "b", - "column": null, - "expr": "`b`", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 10, - "last": 16 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 16 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceSet.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceSet.in deleted file mode 100644 index d425fa2a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceSet.in +++ /dev/null @@ -1 +0,0 @@ -REPLACE INTO `a` (`value`) SET value = '123' \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceSet.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceSet.out deleted file mode 100644 index 2bf3b17a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceSet.out +++ /dev/null @@ -1,236 +0,0 @@ -{ - "query": "REPLACE INTO `a` (`value`) SET value = '123'", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "REPLACE INTO `a` (`value`) SET value = '123'", - "len": 44, - "last": 44, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REPLACE", - "value": "REPLACE", - "keyword": "REPLACE", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`a`", - "value": "a", - "keyword": null, - "type": 8, - "flags": 2, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`value`", - "value": "value", - "keyword": null, - "type": 8, - "flags": 2, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "value", - "value": "value", - "keyword": "VALUE", - "type": 1, - "flags": 1, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'123'", - "value": "123", - "keyword": null, - "type": 7, - "flags": 1, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 18, - "idx": 18 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ReplaceStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "`a`", - "alias": null, - "function": null, - "subquery": null - }, - "columns": [ - "value" - ], - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": null, - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "value", - "value": "'123'" - } - ], - "select": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 16 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceValues.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceValues.in deleted file mode 100644 index 24f6c7e5..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceValues.in +++ /dev/null @@ -1 +0,0 @@ -REPLACE INTO `a` (`value`) VALUES ('123'), ('123') \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceValues.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceValues.out deleted file mode 100644 index 8ecc2fc8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseReplaceValues.out +++ /dev/null @@ -1,276 +0,0 @@ -{ - "query": "REPLACE INTO `a` (`value`) VALUES ('123'), ('123')", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "REPLACE INTO `a` (`value`) VALUES ('123'), ('123')", - "len": 50, - "last": 50, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REPLACE", - "value": "REPLACE", - "keyword": "REPLACE", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`a`", - "value": "a", - "keyword": null, - "type": 8, - "flags": 2, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`value`", - "value": "value", - "keyword": null, - "type": 8, - "flags": 2, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'123'", - "value": "123", - "keyword": null, - "type": 7, - "flags": 1, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'123'", - "value": "123", - "keyword": null, - "type": 7, - "flags": 1, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 21, - "idx": 21 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\ReplaceStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "`a`", - "alias": null, - "function": null, - "subquery": null - }, - "columns": [ - "value" - ], - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "'123'" - ], - "values": [ - "123" - ] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "'123'" - ], - "values": [ - "123" - ] - } - ], - "set": null, - "select": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 19 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRestore.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRestore.in deleted file mode 100644 index 27f9844f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRestore.in +++ /dev/null @@ -1 +0,0 @@ -RESTORE TABLE my_table FROM "/path/to/backup/directory" \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRestore.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRestore.out deleted file mode 100644 index 36ef5f36..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseRestore.out +++ /dev/null @@ -1,154 +0,0 @@ -{ - "query": "RESTORE TABLE my_table FROM \"/path/to/backup/directory\"", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "RESTORE TABLE my_table FROM \"/path/to/backup/directory\"", - "len": 55, - "last": 55, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RESTORE", - "value": "RESTORE", - "keyword": "RESTORE", - "type": 1, - "flags": 1, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_table", - "value": "my_table", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"/path/to/backup/directory\"", - "value": "/path/to/backup/directory", - "keyword": null, - "type": 7, - "flags": 2, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 10 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\RestoreStatement", - "tables": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_table", - "column": null, - "expr": "my_table", - "alias": null, - "function": null, - "subquery": null - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [ - "TABLE", - { - "name": "FROM", - "equals": false, - "expr": "\"/path/to/backup/directory\"", - "value": "/path/to/backup/directory" - } - ] - }, - "first": 0, - "last": 8 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect.in deleted file mode 100644 index e4d786e9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect.in +++ /dev/null @@ -1,14 +0,0 @@ -SELECT ALL MAX_STATEMENT_TIME = 10 - 1 + 2 AS result, - @idx, - id, - test.`users`.username AS `name` -FROM - `test`.users, posts - PARTITION (p1, p2) -WHERE - id > 0 -ORDER BY - username DESC, - id -LIMIT 3 OFFSET 2; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect.out deleted file mode 100644 index bfa4822c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect.out +++ /dev/null @@ -1,910 +0,0 @@ -{ - "query": "SELECT ALL MAX_STATEMENT_TIME = 10\n 1 + 2 AS result,\n @idx,\n id,\n test.`users`.username AS `name`\nFROM\n `test`.users, posts\n PARTITION (p1, p2)\nWHERE\n id > 0\nORDER BY\n username DESC,\n id\nLIMIT 3 OFFSET 2;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT ALL MAX_STATEMENT_TIME = 10\n 1 + 2 AS result,\n @idx,\n id,\n test.`users`.username AS `name`\nFROM\n `test`.users, posts\n PARTITION (p1, p2)\nWHERE\n id > 0\nORDER BY\n username DESC,\n id\nLIMIT 3 OFFSET 2;", - "len": 231, - "last": 231, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALL", - "value": "ALL", - "keyword": "ALL", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MAX_STATEMENT_TIME", - "value": "MAX_STATEMENT_TIME", - "keyword": "MAX_STATEMENT_TIME", - "type": 1, - "flags": 1, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+", - "value": "+", - "keyword": null, - "type": 2, - "flags": 1, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "result", - "value": "result", - "keyword": null, - "type": 0, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@idx", - "value": "idx", - "keyword": null, - "type": 8, - "flags": 1, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`users`", - "value": "users", - "keyword": null, - "type": 8, - "flags": 2, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`name`", - "value": "name", - "keyword": null, - "type": 8, - "flags": 2, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`test`", - "value": "test", - "keyword": null, - "type": 8, - "flags": 2, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "users", - "value": "users", - "keyword": null, - "type": 0, - "flags": 0, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "posts", - "value": "posts", - "keyword": null, - "type": 0, - "flags": 0, - "position": 133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 153 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p1", - "value": "p1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 154 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p2", - "value": "p2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 160 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 162 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 172 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ">", - "value": ">", - "keyword": null, - "type": 2, - "flags": 2, - "position": 175 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 176 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 178 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ORDER BY", - "value": "ORDER BY", - "keyword": "ORDER BY", - "type": 1, - "flags": 7, - "position": 179 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 187 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 192 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 200 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DESC", - "value": "DESC", - "keyword": "DESC", - "type": 1, - "flags": 3, - "position": 201 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 205 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 206 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 211 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 213 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIMIT", - "value": "LIMIT", - "keyword": "LIMIT", - "type": 1, - "flags": 3, - "position": 214 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 219 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 220 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 221 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OFFSET", - "value": "OFFSET", - "keyword": "OFFSET", - "type": 1, - "flags": 1, - "position": 222 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 228 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 229 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 230 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 81, - "idx": 81 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1 + 2", - "alias": "result", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "@idx", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "id", - "expr": "id", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "test", - "table": "users", - "column": "username", - "expr": "test.`users`.username", - "alias": "name", - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "test", - "table": "users", - "column": null, - "expr": "`test`.users", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "posts", - "column": null, - "expr": "posts", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "p1", - "p2" - ], - "values": [ - "p1", - "p2" - ] - }, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "id" - ], - "isOperator": false, - "expr": "id > 0" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OrderKeyword", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "username", - "expr": "username", - "alias": null, - "function": null, - "subquery": null - }, - "type": "DESC" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OrderKeyword", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "id", - "expr": "id", - "alias": null, - "function": null, - "subquery": null - }, - "type": "ASC" - } - ], - "limit": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Limit", - "offset": 2, - "rowCount": 3 - }, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ALL", - "3": { - "name": "MAX_STATEMENT_TIME", - "equals": true, - "expr": "10", - "value": "10" - } - } - }, - "first": 0, - "last": 78 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect10.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect10.in deleted file mode 100644 index 61d86351..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect10.in +++ /dev/null @@ -1 +0,0 @@ -SELECT my_column FROM my_table WHERE BINARY(my_column) != BINARY(UPPER(my_column)) diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect10.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect10.out deleted file mode 100644 index 7b7623ee..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect10.out +++ /dev/null @@ -1,325 +0,0 @@ -{ - "query": "SELECT my_column FROM my_table WHERE BINARY(my_column) != BINARY(UPPER(my_column))\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT my_column FROM my_table WHERE BINARY(my_column) != BINARY(UPPER(my_column))\n", - "len": 83, - "last": 83, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_column", - "value": "my_column", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_table", - "value": "my_table", - "keyword": null, - "type": 0, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BINARY", - "value": "BINARY", - "keyword": "BINARY", - "type": 1, - "flags": 43, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_column", - "value": "my_column", - "keyword": null, - "type": 0, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "!=", - "value": "!=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BINARY", - "value": "BINARY", - "keyword": "BINARY", - "type": 1, - "flags": 43, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UPPER", - "value": "UPPER", - "keyword": "UPPER", - "type": 1, - "flags": 33, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_column", - "value": "my_column", - "keyword": null, - "type": 0, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 26, - "idx": 26 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "my_column", - "expr": "my_column", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_table", - "column": null, - "expr": "my_table", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "my_column", - "UPPER" - ], - "isOperator": false, - "expr": "BINARY(my_column) != BINARY(UPPER(my_column))" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 24 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect11.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect11.in deleted file mode 100644 index 99f01a8b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect11.in +++ /dev/null @@ -1 +0,0 @@ -SELECT 1 AND NOT 1 diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect11.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect11.out deleted file mode 100644 index f35c2491..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect11.out +++ /dev/null @@ -1,169 +0,0 @@ -{ - "query": "SELECT 1 AND NOT 1\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT 1 AND NOT 1\n", - "len": 19, - "last": 19, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT", - "value": "NOT", - "keyword": "NOT", - "type": 1, - "flags": 3, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 11, - "idx": 11 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1 AND NOT 1", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 9 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect12.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect12.in deleted file mode 100644 index 3a71172e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect12.in +++ /dev/null @@ -1 +0,0 @@ -SELECT NOT 1 AS test \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect12.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect12.out deleted file mode 100644 index 587a1e2a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect12.out +++ /dev/null @@ -1,160 +0,0 @@ -{ - "query": "SELECT NOT 1 AS test", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT NOT 1 AS test", - "len": 20, - "last": 20, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT", - "value": "NOT", - "keyword": "NOT", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 10 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "NOT 1", - "alias": "test", - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 8 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect13.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect13.in deleted file mode 100644 index e6f994c9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect13.in +++ /dev/null @@ -1 +0,0 @@ -SELECT post.*, post.username AS postusername, post.ipaddress AS ip, IF(post.visible = 2, 1, 0) AS isdeleted, user.*, userfield.*, usertextfield.*, icon.title as icontitle, icon.iconpath, avatar.avatarpath, NOT ISNULL(customavatar.userid) AS hascustomavatar, customavatar.dateline AS avatardateline,customavatar.width AS avwidth,customavatar.height AS avheight, spamlog.postid AS spamlog_postid, deletionlog.userid AS del_userid, deletionlog.username AS del_username, deletionlog.reason AS del_reason, editlog.userid AS edit_userid, editlog.username AS edit_username, editlog.dateline AS edit_dateline, editlog.reason AS edit_reason, editlog.hashistory, postparsed.pagetext_html, postparsed.hasimages, sigparsed.signatureparsed, sigparsed.hasimages AS sighasimages, sigpic.userid AS sigpic, sigpic.dateline AS sigpicdateline, sigpic.width AS sigpicwidth, sigpic.height AS sigpicheight, IF(displaygroupid=0, user.usergroupid, displaygroupid) AS displaygroupid, infractiongroupid , post_icon_list.icon_id_list, post_icon_list.is_auto AS icon_is_auto, approvedlog.modid AS approvedmodid, approvedlog.dateline AS approveddateline, approvedlog.status AS approvedstatus, approvedlog.info AS approvedinfo, movedlog.modid AS movedmodid, movedlog.dateline AS moveddateline, movedlog.status AS movedstatus, movedlog.info AS movedinfo, ( SELECT useragent FROM session WHERE userid=post.userid AND lastactivity > 1644859580 ORDER BY lastactivity DESC LIMIT 1 ) AS useragent, IF ( user.userid IS NOT NULL, (SELECT COUNT(usernoteid) FROM usernote AS usernote WHERE usernote.userid=user.userid AND usernote.priority>=0), 0 ) AS usernotecount , deletionlog.dateline AS del_dateline, scheduled_approval.defer_time AS vbpmal_approval_defer_time, additional_user_data.last_year_message_count, additional_user_data.last_year_reputation, additional_user_data.last_year_groan_count, paid_post_activation.activation_id AS paid_post_activation_id, alm_Model_UserData.credits FROM post AS post LEFT JOIN user AS user ON(user.userid = post.userid) LEFT JOIN userfield AS userfield ON(userfield.userid = user.userid) LEFT JOIN usertextfield AS usertextfield ON(usertextfield.userid = user.userid) LEFT JOIN icon AS icon ON(icon.iconid = post.iconid) LEFT JOIN avatar AS avatar ON(avatar.avatarid = user.avatarid) LEFT JOIN customavatar AS customavatar ON(customavatar.userid = user.userid) LEFT JOIN spamlog AS spamlog ON(spamlog.postid = post.postid) LEFT JOIN deletionlog AS deletionlog ON(post.postid = deletionlog.primaryid AND deletionlog.type = 'post') LEFT JOIN editlog AS editlog ON(editlog.postid = post.postid) LEFT JOIN postparsed AS postparsed ON(postparsed.postid = post.postid AND postparsed.styleid = 23 AND postparsed.languageid = 5) LEFT JOIN sigparsed AS sigparsed ON(sigparsed.userid = user.userid AND sigparsed.styleid = 23 AND sigparsed.languageid = 5) LEFT JOIN sigpic AS sigpic ON(sigpic.userid = post.userid) LEFT JOIN vbppim_post_icon_list AS post_icon_list ON post_icon_list.post_id=post.postid LEFT JOIN vbpmal_log AS approvedlog ON (approvedlog.itemid=post.postid AND approvedlog.action='postapprove') LEFT JOIN vbpmal_log AS movedlog ON (movedlog.itemid=post.postid AND movedlog.action='postmove') LEFT JOIN vbpmal_scheduled_post_approval AS scheduled_approval ON scheduled_approval.post_id = post.postid LEFT JOIN vbpsmt_additional_user_data AS additional_user_data ON additional_user_data.userid=post.userid LEFT JOIN market_pp_post_activation_mapping AS paid_post_activation ON paid_post_activation.post_id = post.postid LEFT JOIN alm_Model_UserData AS alm_Model_UserData ON alm_Model_UserData.user_id=user.userid WHERE post.postid IN (0,3254399,3254508,3254743,3254817,3254969,3255328,3255582,3257603,3257873,3258126,3258150,3258254,3258272,3258311,3260767,3260770,3260776,3261180,3261263,3261317,3261318) ORDER BY post.dateline \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect13.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect13.out deleted file mode 100644 index 3e913e3c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect13.out +++ /dev/null @@ -1,10560 +0,0 @@ -{ - "query": "SELECT post.*, post.username AS postusername, post.ipaddress AS ip, IF(post.visible = 2, 1, 0) AS isdeleted, user.*, userfield.*, usertextfield.*, icon.title as icontitle, icon.iconpath, avatar.avatarpath, NOT ISNULL(customavatar.userid) AS hascustomavatar, customavatar.dateline AS avatardateline,customavatar.width AS avwidth,customavatar.height AS avheight, spamlog.postid AS spamlog_postid, deletionlog.userid AS del_userid, deletionlog.username AS del_username, deletionlog.reason AS del_reason, editlog.userid AS edit_userid, editlog.username AS edit_username, editlog.dateline AS edit_dateline, editlog.reason AS edit_reason, editlog.hashistory, postparsed.pagetext_html, postparsed.hasimages, sigparsed.signatureparsed, sigparsed.hasimages AS sighasimages, sigpic.userid AS sigpic, sigpic.dateline AS sigpicdateline, sigpic.width AS sigpicwidth, sigpic.height AS sigpicheight, IF(displaygroupid=0, user.usergroupid, displaygroupid) AS displaygroupid, infractiongroupid , post_icon_list.icon_id_list, post_icon_list.is_auto AS icon_is_auto, approvedlog.modid AS approvedmodid, approvedlog.dateline AS approveddateline, approvedlog.status AS approvedstatus, approvedlog.info AS approvedinfo, movedlog.modid AS movedmodid, movedlog.dateline AS moveddateline, movedlog.status AS movedstatus, movedlog.info AS movedinfo, ( SELECT useragent FROM session WHERE userid=post.userid AND lastactivity > 1644859580 ORDER BY lastactivity DESC LIMIT 1 ) AS useragent, IF ( user.userid IS NOT NULL, (SELECT COUNT(usernoteid) FROM usernote AS usernote WHERE usernote.userid=user.userid AND usernote.priority>=0), 0 ) AS usernotecount , deletionlog.dateline AS del_dateline, scheduled_approval.defer_time AS vbpmal_approval_defer_time, additional_user_data.last_year_message_count, additional_user_data.last_year_reputation, additional_user_data.last_year_groan_count, paid_post_activation.activation_id AS paid_post_activation_id, alm_Model_UserData.credits FROM post AS post LEFT JOIN user AS user ON(user.userid = post.userid) LEFT JOIN userfield AS userfield ON(userfield.userid = user.userid) LEFT JOIN usertextfield AS usertextfield ON(usertextfield.userid = user.userid) LEFT JOIN icon AS icon ON(icon.iconid = post.iconid) LEFT JOIN avatar AS avatar ON(avatar.avatarid = user.avatarid) LEFT JOIN customavatar AS customavatar ON(customavatar.userid = user.userid) LEFT JOIN spamlog AS spamlog ON(spamlog.postid = post.postid) LEFT JOIN deletionlog AS deletionlog ON(post.postid = deletionlog.primaryid AND deletionlog.type = 'post') LEFT JOIN editlog AS editlog ON(editlog.postid = post.postid) LEFT JOIN postparsed AS postparsed ON(postparsed.postid = post.postid AND postparsed.styleid = 23 AND postparsed.languageid = 5) LEFT JOIN sigparsed AS sigparsed ON(sigparsed.userid = user.userid AND sigparsed.styleid = 23 AND sigparsed.languageid = 5) LEFT JOIN sigpic AS sigpic ON(sigpic.userid = post.userid) LEFT JOIN vbppim_post_icon_list AS post_icon_list ON post_icon_list.post_id=post.postid LEFT JOIN vbpmal_log AS approvedlog ON (approvedlog.itemid=post.postid AND approvedlog.action='postapprove') LEFT JOIN vbpmal_log AS movedlog ON (movedlog.itemid=post.postid AND movedlog.action='postmove') LEFT JOIN vbpmal_scheduled_post_approval AS scheduled_approval ON scheduled_approval.post_id = post.postid LEFT JOIN vbpsmt_additional_user_data AS additional_user_data ON additional_user_data.userid=post.userid LEFT JOIN market_pp_post_activation_mapping AS paid_post_activation ON paid_post_activation.post_id = post.postid LEFT JOIN alm_Model_UserData AS alm_Model_UserData ON alm_Model_UserData.user_id=user.userid WHERE post.postid IN (0,3254399,3254508,3254743,3254817,3254969,3255328,3255582,3257603,3257873,3258126,3258150,3258254,3258272,3258311,3260767,3260770,3260776,3261180,3261263,3261317,3261318) ORDER BY post.dateline", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT post.*, post.username AS postusername, post.ipaddress AS ip, IF(post.visible = 2, 1, 0) AS isdeleted, user.*, userfield.*, usertextfield.*, icon.title as icontitle, icon.iconpath, avatar.avatarpath, NOT ISNULL(customavatar.userid) AS hascustomavatar, customavatar.dateline AS avatardateline,customavatar.width AS avwidth,customavatar.height AS avheight, spamlog.postid AS spamlog_postid, deletionlog.userid AS del_userid, deletionlog.username AS del_username, deletionlog.reason AS del_reason, editlog.userid AS edit_userid, editlog.username AS edit_username, editlog.dateline AS edit_dateline, editlog.reason AS edit_reason, editlog.hashistory, postparsed.pagetext_html, postparsed.hasimages, sigparsed.signatureparsed, sigparsed.hasimages AS sighasimages, sigpic.userid AS sigpic, sigpic.dateline AS sigpicdateline, sigpic.width AS sigpicwidth, sigpic.height AS sigpicheight, IF(displaygroupid=0, user.usergroupid, displaygroupid) AS displaygroupid, infractiongroupid , post_icon_list.icon_id_list, post_icon_list.is_auto AS icon_is_auto, approvedlog.modid AS approvedmodid, approvedlog.dateline AS approveddateline, approvedlog.status AS approvedstatus, approvedlog.info AS approvedinfo, movedlog.modid AS movedmodid, movedlog.dateline AS moveddateline, movedlog.status AS movedstatus, movedlog.info AS movedinfo, ( SELECT useragent FROM session WHERE userid=post.userid AND lastactivity > 1644859580 ORDER BY lastactivity DESC LIMIT 1 ) AS useragent, IF ( user.userid IS NOT NULL, (SELECT COUNT(usernoteid) FROM usernote AS usernote WHERE usernote.userid=user.userid AND usernote.priority>=0), 0 ) AS usernotecount , deletionlog.dateline AS del_dateline, scheduled_approval.defer_time AS vbpmal_approval_defer_time, additional_user_data.last_year_message_count, additional_user_data.last_year_reputation, additional_user_data.last_year_groan_count, paid_post_activation.activation_id AS paid_post_activation_id, alm_Model_UserData.credits FROM post AS post LEFT JOIN user AS user ON(user.userid = post.userid) LEFT JOIN userfield AS userfield ON(userfield.userid = user.userid) LEFT JOIN usertextfield AS usertextfield ON(usertextfield.userid = user.userid) LEFT JOIN icon AS icon ON(icon.iconid = post.iconid) LEFT JOIN avatar AS avatar ON(avatar.avatarid = user.avatarid) LEFT JOIN customavatar AS customavatar ON(customavatar.userid = user.userid) LEFT JOIN spamlog AS spamlog ON(spamlog.postid = post.postid) LEFT JOIN deletionlog AS deletionlog ON(post.postid = deletionlog.primaryid AND deletionlog.type = 'post') LEFT JOIN editlog AS editlog ON(editlog.postid = post.postid) LEFT JOIN postparsed AS postparsed ON(postparsed.postid = post.postid AND postparsed.styleid = 23 AND postparsed.languageid = 5) LEFT JOIN sigparsed AS sigparsed ON(sigparsed.userid = user.userid AND sigparsed.styleid = 23 AND sigparsed.languageid = 5) LEFT JOIN sigpic AS sigpic ON(sigpic.userid = post.userid) LEFT JOIN vbppim_post_icon_list AS post_icon_list ON post_icon_list.post_id=post.postid LEFT JOIN vbpmal_log AS approvedlog ON (approvedlog.itemid=post.postid AND approvedlog.action='postapprove') LEFT JOIN vbpmal_log AS movedlog ON (movedlog.itemid=post.postid AND movedlog.action='postmove') LEFT JOIN vbpmal_scheduled_post_approval AS scheduled_approval ON scheduled_approval.post_id = post.postid LEFT JOIN vbpsmt_additional_user_data AS additional_user_data ON additional_user_data.userid=post.userid LEFT JOIN market_pp_post_activation_mapping AS paid_post_activation ON paid_post_activation.post_id = post.postid LEFT JOIN alm_Model_UserData AS alm_Model_UserData ON alm_Model_UserData.user_id=user.userid WHERE post.postid IN (0,3254399,3254508,3254743,3254817,3254969,3255328,3255582,3257603,3257873,3258126,3258150,3258254,3258272,3258311,3260767,3260770,3260776,3261180,3261263,3261317,3261318) ORDER BY post.dateline", - "len": 3834, - "last": 3834, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post", - "value": "post", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post", - "value": "post", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "postusername", - "value": "postusername", - "keyword": null, - "type": 0, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post", - "value": "post", - "keyword": null, - "type": 0, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ipaddress", - "value": "ipaddress", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ip", - "value": "ip", - "keyword": null, - "type": 0, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IF", - "value": "IF", - "keyword": "IF", - "type": 1, - "flags": 35, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post", - "value": "post", - "keyword": null, - "type": 0, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "visible", - "value": "visible", - "keyword": null, - "type": 0, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "isdeleted", - "value": "isdeleted", - "keyword": null, - "type": 0, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "user", - "value": "user", - "keyword": "user", - "type": 0, - "flags": 0, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userfield", - "value": "userfield", - "keyword": null, - "type": 0, - "flags": 0, - "position": 117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "usertextfield", - "value": "usertextfield", - "keyword": null, - "type": 0, - "flags": 0, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 144 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "icon", - "value": "icon", - "keyword": null, - "type": 0, - "flags": 0, - "position": 147 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "title", - "value": "title", - "keyword": null, - "type": 0, - "flags": 0, - "position": 152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 160 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "icontitle", - "value": "icontitle", - "keyword": null, - "type": 0, - "flags": 0, - "position": 161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 170 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 171 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "icon", - "value": "icon", - "keyword": null, - "type": 0, - "flags": 0, - "position": 172 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 176 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "iconpath", - "value": "iconpath", - "keyword": null, - "type": 0, - "flags": 0, - "position": 177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 185 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 186 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "avatar", - "value": "avatar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 187 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 193 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "avatarpath", - "value": "avatarpath", - "keyword": null, - "type": 0, - "flags": 0, - "position": 194 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 204 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 205 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT", - "value": "NOT", - "keyword": "NOT", - "type": 1, - "flags": 3, - "position": 206 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 209 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ISNULL", - "value": "ISNULL", - "keyword": "ISNULL", - "type": 1, - "flags": 33, - "position": 210 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 216 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "customavatar", - "value": "customavatar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 217 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 229 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userid", - "value": "userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 230 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 236 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 237 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 238 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 240 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "hascustomavatar", - "value": "hascustomavatar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 241 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 256 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 257 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "customavatar", - "value": "customavatar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 258 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 270 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "dateline", - "value": "dateline", - "keyword": null, - "type": 0, - "flags": 0, - "position": 271 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 279 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 280 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 282 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "avatardateline", - "value": "avatardateline", - "keyword": null, - "type": 0, - "flags": 0, - "position": 283 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 297 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "customavatar", - "value": "customavatar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 298 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 310 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "width", - "value": "width", - "keyword": null, - "type": 0, - "flags": 0, - "position": 311 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 316 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 317 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 319 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "avwidth", - "value": "avwidth", - "keyword": null, - "type": 0, - "flags": 0, - "position": 320 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 327 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "customavatar", - "value": "customavatar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 328 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 340 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "height", - "value": "height", - "keyword": null, - "type": 0, - "flags": 0, - "position": 341 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 347 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 348 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 350 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "avheight", - "value": "avheight", - "keyword": null, - "type": 0, - "flags": 0, - "position": 351 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 359 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 360 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "spamlog", - "value": "spamlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 361 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 368 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "postid", - "value": "postid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 369 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 375 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 376 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 378 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "spamlog_postid", - "value": "spamlog_postid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 379 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 393 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 394 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "deletionlog", - "value": "deletionlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 395 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 406 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userid", - "value": "userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 407 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 413 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 414 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 416 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "del_userid", - "value": "del_userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 417 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 427 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 428 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "deletionlog", - "value": "deletionlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 429 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 440 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 441 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 449 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 450 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 452 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "del_username", - "value": "del_username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 453 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 465 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 466 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "deletionlog", - "value": "deletionlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 467 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 478 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "reason", - "value": "reason", - "keyword": null, - "type": 0, - "flags": 0, - "position": 479 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 485 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 486 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 488 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "del_reason", - "value": "del_reason", - "keyword": null, - "type": 0, - "flags": 0, - "position": 489 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 499 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 500 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "editlog", - "value": "editlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 501 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 508 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userid", - "value": "userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 509 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 515 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 516 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 518 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "edit_userid", - "value": "edit_userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 519 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 530 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 531 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "editlog", - "value": "editlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 532 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 539 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 540 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 548 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 549 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 551 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "edit_username", - "value": "edit_username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 552 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 565 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 566 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "editlog", - "value": "editlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 567 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 574 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "dateline", - "value": "dateline", - "keyword": null, - "type": 0, - "flags": 0, - "position": 575 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 583 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 584 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 586 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "edit_dateline", - "value": "edit_dateline", - "keyword": null, - "type": 0, - "flags": 0, - "position": 587 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 600 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 601 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "editlog", - "value": "editlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 602 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 609 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "reason", - "value": "reason", - "keyword": null, - "type": 0, - "flags": 0, - "position": 610 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 616 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 617 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 619 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "edit_reason", - "value": "edit_reason", - "keyword": null, - "type": 0, - "flags": 0, - "position": 620 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 631 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 632 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "editlog", - "value": "editlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 633 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 640 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "hashistory", - "value": "hashistory", - "keyword": null, - "type": 0, - "flags": 0, - "position": 641 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 651 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 652 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "postparsed", - "value": "postparsed", - "keyword": null, - "type": 0, - "flags": 0, - "position": 653 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 663 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pagetext_html", - "value": "pagetext_html", - "keyword": null, - "type": 0, - "flags": 0, - "position": 664 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 677 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 678 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "postparsed", - "value": "postparsed", - "keyword": null, - "type": 0, - "flags": 0, - "position": 679 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 689 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "hasimages", - "value": "hasimages", - "keyword": null, - "type": 0, - "flags": 0, - "position": 690 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 699 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 700 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "sigparsed", - "value": "sigparsed", - "keyword": null, - "type": 0, - "flags": 0, - "position": 701 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 710 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "signatureparsed", - "value": "signatureparsed", - "keyword": null, - "type": 0, - "flags": 0, - "position": 711 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 726 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 727 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "sigparsed", - "value": "sigparsed", - "keyword": null, - "type": 0, - "flags": 0, - "position": 728 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 737 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "hasimages", - "value": "hasimages", - "keyword": null, - "type": 0, - "flags": 0, - "position": 738 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 747 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 748 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 750 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "sighasimages", - "value": "sighasimages", - "keyword": null, - "type": 0, - "flags": 0, - "position": 751 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 763 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 764 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "sigpic", - "value": "sigpic", - "keyword": null, - "type": 0, - "flags": 0, - "position": 765 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 771 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userid", - "value": "userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 772 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 778 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 779 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 781 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "sigpic", - "value": "sigpic", - "keyword": null, - "type": 0, - "flags": 0, - "position": 782 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 788 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 789 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "sigpic", - "value": "sigpic", - "keyword": null, - "type": 0, - "flags": 0, - "position": 790 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 796 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "dateline", - "value": "dateline", - "keyword": null, - "type": 0, - "flags": 0, - "position": 797 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 805 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 806 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 808 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "sigpicdateline", - "value": "sigpicdateline", - "keyword": null, - "type": 0, - "flags": 0, - "position": 809 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 823 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 824 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "sigpic", - "value": "sigpic", - "keyword": null, - "type": 0, - "flags": 0, - "position": 825 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 831 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "width", - "value": "width", - "keyword": null, - "type": 0, - "flags": 0, - "position": 832 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 837 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 838 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 840 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "sigpicwidth", - "value": "sigpicwidth", - "keyword": null, - "type": 0, - "flags": 0, - "position": 841 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 852 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 853 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "sigpic", - "value": "sigpic", - "keyword": null, - "type": 0, - "flags": 0, - "position": 854 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 860 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "height", - "value": "height", - "keyword": null, - "type": 0, - "flags": 0, - "position": 861 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 867 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 868 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 870 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "sigpicheight", - "value": "sigpicheight", - "keyword": null, - "type": 0, - "flags": 0, - "position": 871 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 883 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 884 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IF", - "value": "IF", - "keyword": "IF", - "type": 1, - "flags": 35, - "position": 885 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 887 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "displaygroupid", - "value": "displaygroupid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 888 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 902 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 903 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 904 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 905 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "user", - "value": "user", - "keyword": "user", - "type": 0, - "flags": 0, - "position": 906 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 910 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "usergroupid", - "value": "usergroupid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 911 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 922 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 923 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "displaygroupid", - "value": "displaygroupid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 924 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 938 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 939 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 940 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 942 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "displaygroupid", - "value": "displaygroupid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 943 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 957 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 958 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "infractiongroupid", - "value": "infractiongroupid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 959 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 976 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 977 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 978 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post_icon_list", - "value": "post_icon_list", - "keyword": null, - "type": 0, - "flags": 0, - "position": 979 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 993 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "icon_id_list", - "value": "icon_id_list", - "keyword": null, - "type": 0, - "flags": 0, - "position": 994 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1006 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1007 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post_icon_list", - "value": "post_icon_list", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1008 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1022 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "is_auto", - "value": "is_auto", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1023 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1030 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 1031 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1033 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "icon_is_auto", - "value": "icon_is_auto", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1034 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1046 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1047 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "approvedlog", - "value": "approvedlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1048 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1059 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "modid", - "value": "modid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1060 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1065 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 1066 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1068 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "approvedmodid", - "value": "approvedmodid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1069 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1082 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1083 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "approvedlog", - "value": "approvedlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1084 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1095 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "dateline", - "value": "dateline", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1096 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 1105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "approveddateline", - "value": "approveddateline", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "approvedlog", - "value": "approvedlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1137 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "status", - "value": "status", - "keyword": "STATUS", - "type": 0, - "flags": 0, - "position": 1138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1144 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 1145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1147 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "approvedstatus", - "value": "approvedstatus", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1162 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1163 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "approvedlog", - "value": "approvedlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1164 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1175 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "info", - "value": "info", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1176 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1180 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 1181 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1183 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "approvedinfo", - "value": "approvedinfo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1184 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1196 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1197 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "movedlog", - "value": "movedlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1198 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1206 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "modid", - "value": "modid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1207 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1212 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 1213 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1215 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "movedmodid", - "value": "movedmodid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1216 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1226 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1227 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "movedlog", - "value": "movedlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1228 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1236 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "dateline", - "value": "dateline", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1237 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1245 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 1246 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1248 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "moveddateline", - "value": "moveddateline", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1249 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1262 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1263 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "movedlog", - "value": "movedlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1264 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1272 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "status", - "value": "status", - "keyword": "STATUS", - "type": 0, - "flags": 0, - "position": 1273 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1279 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 1280 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1282 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "movedstatus", - "value": "movedstatus", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1283 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1294 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1295 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "movedlog", - "value": "movedlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1296 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1304 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "info", - "value": "info", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1305 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1309 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 1310 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1312 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "movedinfo", - "value": "movedinfo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1313 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1322 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1323 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1324 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1325 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 1326 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1332 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "useragent", - "value": "useragent", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1333 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1342 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 1343 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1347 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "session", - "value": "session", - "keyword": "SESSION", - "type": 1, - "flags": 1, - "position": 1348 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1355 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 1356 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1361 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userid", - "value": "userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1362 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 1368 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post", - "value": "post", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1369 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1373 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userid", - "value": "userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1374 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1380 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 1381 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1384 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "lastactivity", - "value": "lastactivity", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1385 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1397 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ">", - "value": ">", - "keyword": null, - "type": 2, - "flags": 2, - "position": 1398 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1399 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1644859580", - "value": 1644859580, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1400 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1410 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ORDER BY", - "value": "ORDER BY", - "keyword": "ORDER BY", - "type": 1, - "flags": 7, - "position": 1411 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1419 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "lastactivity", - "value": "lastactivity", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1420 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1432 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DESC", - "value": "DESC", - "keyword": "DESC", - "type": 1, - "flags": 3, - "position": 1433 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1437 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIMIT", - "value": "LIMIT", - "keyword": "LIMIT", - "type": 1, - "flags": 3, - "position": 1438 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1443 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1444 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1445 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1446 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1447 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 1448 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1450 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "useragent", - "value": "useragent", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1451 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1460 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1461 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IF", - "value": "IF", - "keyword": "IF", - "type": 1, - "flags": 35, - "position": 1462 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1464 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1465 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1466 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "user", - "value": "user", - "keyword": "user", - "type": 0, - "flags": 0, - "position": 1467 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1471 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userid", - "value": "userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1472 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1478 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IS", - "value": "IS", - "keyword": "IS", - "type": 1, - "flags": 3, - "position": 1479 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1481 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 1482 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1490 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1491 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1492 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 1493 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1499 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COUNT", - "value": "COUNT", - "keyword": "COUNT", - "type": 1, - "flags": 33, - "position": 1500 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1505 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "usernoteid", - "value": "usernoteid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1506 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1516 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1517 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 1518 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1522 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "usernote", - "value": "usernote", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1523 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1531 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 1532 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1534 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "usernote", - "value": "usernote", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1535 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1543 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 1544 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1549 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "usernote", - "value": "usernote", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1550 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1558 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userid", - "value": "userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1559 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 1565 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "user", - "value": "user", - "keyword": "user", - "type": 0, - "flags": 0, - "position": 1566 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1570 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userid", - "value": "userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1571 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1577 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 1578 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1581 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "usernote", - "value": "usernote", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1582 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1590 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "priority", - "value": "priority", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1591 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ">=", - "value": ">=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 1599 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1601 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1602 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1603 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1604 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 1605 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1606 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1607 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1608 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 1609 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1611 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "usernotecount", - "value": "usernotecount", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1612 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1625 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1626 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1627 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "deletionlog", - "value": "deletionlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1628 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1639 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "dateline", - "value": "dateline", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1640 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1648 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 1649 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1651 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "del_dateline", - "value": "del_dateline", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1652 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1664 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1665 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "scheduled_approval", - "value": "scheduled_approval", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1666 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1684 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "defer_time", - "value": "defer_time", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1685 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1695 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 1696 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1698 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "vbpmal_approval_defer_time", - "value": "vbpmal_approval_defer_time", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1699 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1725 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1726 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "additional_user_data", - "value": "additional_user_data", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1727 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1747 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "last_year_message_count", - "value": "last_year_message_count", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1748 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1771 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1772 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "additional_user_data", - "value": "additional_user_data", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1773 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1793 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "last_year_reputation", - "value": "last_year_reputation", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1794 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1814 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1815 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "additional_user_data", - "value": "additional_user_data", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1816 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1836 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "last_year_groan_count", - "value": "last_year_groan_count", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1837 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1858 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1859 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "paid_post_activation", - "value": "paid_post_activation", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1860 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1880 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "activation_id", - "value": "activation_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1881 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1894 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 1895 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1897 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "paid_post_activation_id", - "value": "paid_post_activation_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1898 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1921 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1922 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "alm_Model_UserData", - "value": "alm_Model_UserData", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1923 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1941 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "credits", - "value": "credits", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1942 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1949 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 1950 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1954 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post", - "value": "post", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1955 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1959 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 1960 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1962 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post", - "value": "post", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1963 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1967 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEFT JOIN", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 1968 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1977 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "user", - "value": "user", - "keyword": "USER", - "type": 1, - "flags": 33, - "position": 1978 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1982 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 1983 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1985 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "user", - "value": "user", - "keyword": "USER", - "type": 1, - "flags": 33, - "position": 1986 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1990 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 1991 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1993 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "user", - "value": "user", - "keyword": "user", - "type": 0, - "flags": 0, - "position": 1994 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1998 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userid", - "value": "userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1999 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2005 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2006 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2007 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post", - "value": "post", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2008 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2012 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userid", - "value": "userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2013 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2019 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2020 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEFT JOIN", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 2021 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2030 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userfield", - "value": "userfield", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2031 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2040 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 2041 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2043 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userfield", - "value": "userfield", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2044 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2053 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 2054 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2056 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userfield", - "value": "userfield", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2057 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2066 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userid", - "value": "userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2067 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2073 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2074 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2075 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "user", - "value": "user", - "keyword": "user", - "type": 0, - "flags": 0, - "position": 2076 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2080 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userid", - "value": "userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2081 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2087 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2088 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEFT JOIN", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 2089 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2098 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "usertextfield", - "value": "usertextfield", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2099 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 2113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "usertextfield", - "value": "usertextfield", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 2130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "usertextfield", - "value": "usertextfield", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userid", - "value": "userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2147 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2153 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2154 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "user", - "value": "user", - "keyword": "user", - "type": 0, - "flags": 0, - "position": 2156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2160 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userid", - "value": "userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2168 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEFT JOIN", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 2169 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2178 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "icon", - "value": "icon", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2179 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2183 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 2184 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2186 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "icon", - "value": "icon", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2187 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2191 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 2192 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2194 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "icon", - "value": "icon", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2195 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2199 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "iconid", - "value": "iconid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2200 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2206 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2207 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2208 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post", - "value": "post", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2209 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2213 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "iconid", - "value": "iconid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2214 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2220 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2221 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEFT JOIN", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 2222 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2231 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "avatar", - "value": "avatar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2232 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2238 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 2239 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2241 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "avatar", - "value": "avatar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2242 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2248 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 2250 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2252 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "avatar", - "value": "avatar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2253 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2259 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "avatarid", - "value": "avatarid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2260 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2268 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2269 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2270 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "user", - "value": "user", - "keyword": "user", - "type": 0, - "flags": 0, - "position": 2271 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2275 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "avatarid", - "value": "avatarid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2276 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2284 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2285 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEFT JOIN", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 2286 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2295 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "customavatar", - "value": "customavatar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2296 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2308 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 2309 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2311 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "customavatar", - "value": "customavatar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2312 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2324 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 2325 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2327 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "customavatar", - "value": "customavatar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2328 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2340 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userid", - "value": "userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2341 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2347 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2348 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2349 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "user", - "value": "user", - "keyword": "user", - "type": 0, - "flags": 0, - "position": 2350 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2354 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userid", - "value": "userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2355 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2361 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2362 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEFT JOIN", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 2363 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2372 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "spamlog", - "value": "spamlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2373 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2380 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 2381 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2383 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "spamlog", - "value": "spamlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2384 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2391 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 2392 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2394 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "spamlog", - "value": "spamlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2395 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2402 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "postid", - "value": "postid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2403 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2409 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2410 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2411 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post", - "value": "post", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2412 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2416 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "postid", - "value": "postid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2417 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2423 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2424 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEFT JOIN", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 2425 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2434 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "deletionlog", - "value": "deletionlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2435 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2446 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 2447 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2449 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "deletionlog", - "value": "deletionlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2450 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2461 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 2462 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2464 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post", - "value": "post", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2465 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2469 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "postid", - "value": "postid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2470 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2476 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2477 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2478 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "deletionlog", - "value": "deletionlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2479 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2490 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "primaryid", - "value": "primaryid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2491 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2500 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 2501 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2504 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "deletionlog", - "value": "deletionlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2505 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2516 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "type", - "value": "type", - "keyword": "TYPE", - "type": 0, - "flags": 0, - "position": 2517 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2521 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2522 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2523 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'post'", - "value": "post", - "keyword": null, - "type": 7, - "flags": 1, - "position": 2524 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2530 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2531 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEFT JOIN", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 2532 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2541 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "editlog", - "value": "editlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2542 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2549 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 2550 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2552 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "editlog", - "value": "editlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2553 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2560 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 2561 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2563 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "editlog", - "value": "editlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2564 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2571 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "postid", - "value": "postid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2572 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2578 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2579 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2580 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post", - "value": "post", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2581 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2585 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "postid", - "value": "postid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2586 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2592 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2593 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEFT JOIN", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 2594 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2603 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "postparsed", - "value": "postparsed", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2604 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2614 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 2615 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2617 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "postparsed", - "value": "postparsed", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2618 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2628 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 2629 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2631 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "postparsed", - "value": "postparsed", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2632 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2642 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "postid", - "value": "postid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2643 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2649 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2650 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2651 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post", - "value": "post", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2652 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2656 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "postid", - "value": "postid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2657 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2663 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 2664 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2667 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "postparsed", - "value": "postparsed", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2668 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2678 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "styleid", - "value": "styleid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2679 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2686 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2687 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2688 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "23", - "value": 23, - "keyword": null, - "type": 6, - "flags": 0, - "position": 2689 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2691 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 2692 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2695 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "postparsed", - "value": "postparsed", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2696 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2706 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "languageid", - "value": "languageid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2707 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2717 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2718 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2719 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "5", - "value": 5, - "keyword": null, - "type": 6, - "flags": 0, - "position": 2720 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2721 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2722 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEFT JOIN", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 2723 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2732 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "sigparsed", - "value": "sigparsed", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2733 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2742 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 2743 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2745 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "sigparsed", - "value": "sigparsed", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2746 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2755 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 2756 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2758 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "sigparsed", - "value": "sigparsed", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2759 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2768 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userid", - "value": "userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2769 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2775 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2776 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2777 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "user", - "value": "user", - "keyword": "user", - "type": 0, - "flags": 0, - "position": 2778 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2782 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userid", - "value": "userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2783 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2789 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 2790 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2793 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "sigparsed", - "value": "sigparsed", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2794 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2803 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "styleid", - "value": "styleid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2804 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2811 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2812 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2813 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "23", - "value": 23, - "keyword": null, - "type": 6, - "flags": 0, - "position": 2814 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2816 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 2817 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2820 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "sigparsed", - "value": "sigparsed", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2821 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2830 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "languageid", - "value": "languageid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2831 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2841 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2842 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2843 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "5", - "value": 5, - "keyword": null, - "type": 6, - "flags": 0, - "position": 2844 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2845 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2846 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEFT JOIN", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 2847 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2856 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "sigpic", - "value": "sigpic", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2857 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2863 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 2864 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2866 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "sigpic", - "value": "sigpic", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2867 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2873 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 2874 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2876 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "sigpic", - "value": "sigpic", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2877 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2883 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userid", - "value": "userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2884 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2890 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2891 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2892 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post", - "value": "post", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2893 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2897 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userid", - "value": "userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2898 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2904 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2905 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEFT JOIN", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 2906 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2915 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "vbppim_post_icon_list", - "value": "vbppim_post_icon_list", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2916 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2937 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 2938 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2940 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post_icon_list", - "value": "post_icon_list", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2941 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2955 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 2956 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2958 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post_icon_list", - "value": "post_icon_list", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2959 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2973 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post_id", - "value": "post_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2974 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2981 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post", - "value": "post", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2982 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2986 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "postid", - "value": "postid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2987 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2993 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEFT JOIN", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 2994 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3003 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "vbpmal_log", - "value": "vbpmal_log", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3004 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3014 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 3015 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3017 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "approvedlog", - "value": "approvedlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3018 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3029 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 3030 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3032 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3033 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "approvedlog", - "value": "approvedlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3034 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3045 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "itemid", - "value": "itemid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3046 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 3052 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post", - "value": "post", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3053 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3057 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "postid", - "value": "postid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3058 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3064 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 3065 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3068 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "approvedlog", - "value": "approvedlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3069 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3080 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "action", - "value": "action", - "keyword": "ACTION", - "type": 0, - "flags": 0, - "position": 3081 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 3087 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'postapprove'", - "value": "postapprove", - "keyword": null, - "type": 7, - "flags": 1, - "position": 3088 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEFT JOIN", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 3103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "vbpmal_log", - "value": "vbpmal_log", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 3124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "movedlog", - "value": "movedlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 3136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "movedlog", - "value": "movedlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "itemid", - "value": "itemid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 3155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post", - "value": "post", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3160 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "postid", - "value": "postid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 3168 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3171 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "movedlog", - "value": "movedlog", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3172 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3180 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "action", - "value": "action", - "keyword": "ACTION", - "type": 0, - "flags": 0, - "position": 3181 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 3187 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'postmove'", - "value": "postmove", - "keyword": null, - "type": 7, - "flags": 1, - "position": 3188 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3198 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3199 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEFT JOIN", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 3200 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3209 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "vbpmal_scheduled_post_approval", - "value": "vbpmal_scheduled_post_approval", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3210 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3240 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 3241 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3243 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "scheduled_approval", - "value": "scheduled_approval", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3244 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3262 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 3263 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3265 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "scheduled_approval", - "value": "scheduled_approval", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3266 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3284 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post_id", - "value": "post_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3285 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3292 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 3293 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3294 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post", - "value": "post", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3295 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3299 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "postid", - "value": "postid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3300 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3306 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEFT JOIN", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 3307 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3316 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "vbpsmt_additional_user_data", - "value": "vbpsmt_additional_user_data", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3317 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3344 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 3345 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3347 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "additional_user_data", - "value": "additional_user_data", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3348 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3368 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 3369 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3371 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "additional_user_data", - "value": "additional_user_data", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3372 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3392 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userid", - "value": "userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3393 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 3399 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post", - "value": "post", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3400 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3404 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userid", - "value": "userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3405 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3411 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEFT JOIN", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 3412 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3421 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "market_pp_post_activation_mapping", - "value": "market_pp_post_activation_mapping", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3422 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3455 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 3456 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3458 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "paid_post_activation", - "value": "paid_post_activation", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3459 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3479 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 3480 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3482 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "paid_post_activation", - "value": "paid_post_activation", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3483 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3503 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post_id", - "value": "post_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3504 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3511 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 3512 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3513 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post", - "value": "post", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3514 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3518 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "postid", - "value": "postid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3519 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3525 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEFT JOIN", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 3526 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3535 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "alm_Model_UserData", - "value": "alm_Model_UserData", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3536 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3554 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 3555 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3557 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "alm_Model_UserData", - "value": "alm_Model_UserData", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3558 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3576 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 3577 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3579 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "alm_Model_UserData", - "value": "alm_Model_UserData", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3580 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3598 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "user_id", - "value": "user_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3599 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 3606 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "user", - "value": "user", - "keyword": "user", - "type": 0, - "flags": 0, - "position": 3607 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3611 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "userid", - "value": "userid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3612 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3618 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 3619 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3624 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post", - "value": "post", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3625 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3629 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "postid", - "value": "postid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3630 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3636 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 3637 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3639 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3640 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 3641 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3642 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3254399", - "value": 3254399, - "keyword": null, - "type": 6, - "flags": 0, - "position": 3643 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3650 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3254508", - "value": 3254508, - "keyword": null, - "type": 6, - "flags": 0, - "position": 3651 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3658 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3254743", - "value": 3254743, - "keyword": null, - "type": 6, - "flags": 0, - "position": 3659 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3666 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3254817", - "value": 3254817, - "keyword": null, - "type": 6, - "flags": 0, - "position": 3667 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3674 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3254969", - "value": 3254969, - "keyword": null, - "type": 6, - "flags": 0, - "position": 3675 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3682 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3255328", - "value": 3255328, - "keyword": null, - "type": 6, - "flags": 0, - "position": 3683 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3690 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3255582", - "value": 3255582, - "keyword": null, - "type": 6, - "flags": 0, - "position": 3691 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3698 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3257603", - "value": 3257603, - "keyword": null, - "type": 6, - "flags": 0, - "position": 3699 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3706 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3257873", - "value": 3257873, - "keyword": null, - "type": 6, - "flags": 0, - "position": 3707 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3714 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3258126", - "value": 3258126, - "keyword": null, - "type": 6, - "flags": 0, - "position": 3715 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3722 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3258150", - "value": 3258150, - "keyword": null, - "type": 6, - "flags": 0, - "position": 3723 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3730 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3258254", - "value": 3258254, - "keyword": null, - "type": 6, - "flags": 0, - "position": 3731 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3738 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3258272", - "value": 3258272, - "keyword": null, - "type": 6, - "flags": 0, - "position": 3739 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3746 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3258311", - "value": 3258311, - "keyword": null, - "type": 6, - "flags": 0, - "position": 3747 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3754 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3260767", - "value": 3260767, - "keyword": null, - "type": 6, - "flags": 0, - "position": 3755 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3762 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3260770", - "value": 3260770, - "keyword": null, - "type": 6, - "flags": 0, - "position": 3763 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3770 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3260776", - "value": 3260776, - "keyword": null, - "type": 6, - "flags": 0, - "position": 3771 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3778 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3261180", - "value": 3261180, - "keyword": null, - "type": 6, - "flags": 0, - "position": 3779 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3786 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3261263", - "value": 3261263, - "keyword": null, - "type": 6, - "flags": 0, - "position": 3787 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3794 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3261317", - "value": 3261317, - "keyword": null, - "type": 6, - "flags": 0, - "position": 3795 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3802 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3261318", - "value": 3261318, - "keyword": null, - "type": 6, - "flags": 0, - "position": 3803 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3810 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3811 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ORDER BY", - "value": "ORDER BY", - "keyword": "ORDER BY", - "type": 1, - "flags": 7, - "position": 3812 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3820 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "post", - "value": "post", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3821 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 3825 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "dateline", - "value": "dateline", - "keyword": null, - "type": 0, - "flags": 0, - "position": 3826 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 1035, - "idx": 1035 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "post", - "column": null, - "expr": "post.*", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "post", - "column": "username", - "expr": "post.username", - "alias": "postusername", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "post", - "column": "ipaddress", - "expr": "post.ipaddress", - "alias": "ip", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "IF(post.visible = 2, 1, 0)", - "alias": "isdeleted", - "function": "IF", - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "user", - "column": null, - "expr": "user.*", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "userfield", - "column": null, - "expr": "userfield.*", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "usertextfield", - "column": null, - "expr": "usertextfield.*", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "icon", - "column": "title", - "expr": "icon.title", - "alias": "icontitle", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "icon", - "column": "iconpath", - "expr": "icon.iconpath", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "avatar", - "column": "avatarpath", - "expr": "avatar.avatarpath", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "NOT ISNULL(customavatar.userid)", - "alias": "hascustomavatar", - "function": "ISNULL", - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "customavatar", - "column": "dateline", - "expr": "customavatar.dateline", - "alias": "avatardateline", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "customavatar", - "column": "width", - "expr": "customavatar.width", - "alias": "avwidth", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "customavatar", - "column": "height", - "expr": "customavatar.height", - "alias": "avheight", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "spamlog", - "column": "postid", - "expr": "spamlog.postid", - "alias": "spamlog_postid", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "deletionlog", - "column": "userid", - "expr": "deletionlog.userid", - "alias": "del_userid", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "deletionlog", - "column": "username", - "expr": "deletionlog.username", - "alias": "del_username", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "deletionlog", - "column": "reason", - "expr": "deletionlog.reason", - "alias": "del_reason", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "editlog", - "column": "userid", - "expr": "editlog.userid", - "alias": "edit_userid", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "editlog", - "column": "username", - "expr": "editlog.username", - "alias": "edit_username", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "editlog", - "column": "dateline", - "expr": "editlog.dateline", - "alias": "edit_dateline", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "editlog", - "column": "reason", - "expr": "editlog.reason", - "alias": "edit_reason", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "editlog", - "column": "hashistory", - "expr": "editlog.hashistory", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "postparsed", - "column": "pagetext_html", - "expr": "postparsed.pagetext_html", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "postparsed", - "column": "hasimages", - "expr": "postparsed.hasimages", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "sigparsed", - "column": "signatureparsed", - "expr": "sigparsed.signatureparsed", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "sigparsed", - "column": "hasimages", - "expr": "sigparsed.hasimages", - "alias": "sighasimages", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "sigpic", - "column": "userid", - "expr": "sigpic.userid", - "alias": "sigpic", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "sigpic", - "column": "dateline", - "expr": "sigpic.dateline", - "alias": "sigpicdateline", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "sigpic", - "column": "width", - "expr": "sigpic.width", - "alias": "sigpicwidth", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "sigpic", - "column": "height", - "expr": "sigpic.height", - "alias": "sigpicheight", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "IF(displaygroupid=0, user.usergroupid, displaygroupid)", - "alias": "displaygroupid", - "function": "IF", - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "infractiongroupid", - "expr": "infractiongroupid", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "post_icon_list", - "column": "icon_id_list", - "expr": "post_icon_list.icon_id_list", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "post_icon_list", - "column": "is_auto", - "expr": "post_icon_list.is_auto", - "alias": "icon_is_auto", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "approvedlog", - "column": "modid", - "expr": "approvedlog.modid", - "alias": "approvedmodid", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "approvedlog", - "column": "dateline", - "expr": "approvedlog.dateline", - "alias": "approveddateline", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "approvedlog", - "column": "status", - "expr": "approvedlog.status", - "alias": "approvedstatus", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "approvedlog", - "column": "info", - "expr": "approvedlog.info", - "alias": "approvedinfo", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "movedlog", - "column": "modid", - "expr": "movedlog.modid", - "alias": "movedmodid", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "movedlog", - "column": "dateline", - "expr": "movedlog.dateline", - "alias": "moveddateline", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "movedlog", - "column": "status", - "expr": "movedlog.status", - "alias": "movedstatus", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "movedlog", - "column": "info", - "expr": "movedlog.info", - "alias": "movedinfo", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "( SELECT useragent FROM session WHERE userid=post.userid AND lastactivity > 1644859580 ORDER BY lastactivity DESC LIMIT 1 )", - "alias": "useragent", - "function": null, - "subquery": "SELECT" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "IF ( user.userid IS NOT NULL, (SELECT COUNT(usernoteid) FROM usernote AS usernote WHERE usernote.userid=user.userid AND usernote.priority>=0), 0 )", - "alias": "usernotecount", - "function": "IF", - "subquery": "SELECT" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "deletionlog", - "column": "dateline", - "expr": "deletionlog.dateline", - "alias": "del_dateline", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "scheduled_approval", - "column": "defer_time", - "expr": "scheduled_approval.defer_time", - "alias": "vbpmal_approval_defer_time", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "additional_user_data", - "column": "last_year_message_count", - "expr": "additional_user_data.last_year_message_count", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "additional_user_data", - "column": "last_year_reputation", - "expr": "additional_user_data.last_year_reputation", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "additional_user_data", - "column": "last_year_groan_count", - "expr": "additional_user_data.last_year_groan_count", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "paid_post_activation", - "column": "activation_id", - "expr": "paid_post_activation.activation_id", - "alias": "paid_post_activation_id", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "alm_Model_UserData", - "column": "credits", - "expr": "alm_Model_UserData.credits", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "post", - "column": null, - "expr": "post", - "alias": "post", - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "post", - "postid" - ], - "isOperator": false, - "expr": "post.postid IN (0,3254399,3254508,3254743,3254817,3254969,3255328,3255582,3257603,3257873,3258126,3258150,3258254,3258272,3258311,3260767,3260770,3260776,3261180,3261263,3261317,3261318)" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OrderKeyword", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "post", - "column": "dateline", - "expr": "post.dateline", - "alias": null, - "function": null, - "subquery": null - }, - "type": "ASC" - } - ], - "limit": null, - "procedure": null, - "into": null, - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "user", - "alias": "user", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "user", - "userid", - "post" - ], - "isOperator": false, - "expr": "(user.userid = post.userid)" - } - ], - "using": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "userfield", - "column": null, - "expr": "userfield", - "alias": "userfield", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "userfield", - "userid", - "user" - ], - "isOperator": false, - "expr": "(userfield.userid = user.userid)" - } - ], - "using": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "usertextfield", - "column": null, - "expr": "usertextfield", - "alias": "usertextfield", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "usertextfield", - "userid", - "user" - ], - "isOperator": false, - "expr": "(usertextfield.userid = user.userid)" - } - ], - "using": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "icon", - "column": null, - "expr": "icon", - "alias": "icon", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "icon", - "iconid", - "post" - ], - "isOperator": false, - "expr": "(icon.iconid = post.iconid)" - } - ], - "using": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "avatar", - "column": null, - "expr": "avatar", - "alias": "avatar", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "avatar", - "avatarid", - "user" - ], - "isOperator": false, - "expr": "(avatar.avatarid = user.avatarid)" - } - ], - "using": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "customavatar", - "column": null, - "expr": "customavatar", - "alias": "customavatar", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "customavatar", - "userid", - "user" - ], - "isOperator": false, - "expr": "(customavatar.userid = user.userid)" - } - ], - "using": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "spamlog", - "column": null, - "expr": "spamlog", - "alias": "spamlog", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "spamlog", - "postid", - "post" - ], - "isOperator": false, - "expr": "(spamlog.postid = post.postid)" - } - ], - "using": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "deletionlog", - "column": null, - "expr": "deletionlog", - "alias": "deletionlog", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "post", - "postid", - "deletionlog", - "primaryid" - ], - "isOperator": false, - "expr": "(post.postid = deletionlog.primaryid" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "deletionlog", - "type", - "post" - ], - "isOperator": false, - "expr": "deletionlog.type = 'post')" - } - ], - "using": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "editlog", - "column": null, - "expr": "editlog", - "alias": "editlog", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "editlog", - "postid", - "post" - ], - "isOperator": false, - "expr": "(editlog.postid = post.postid)" - } - ], - "using": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "postparsed", - "column": null, - "expr": "postparsed", - "alias": "postparsed", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "postparsed", - "postid", - "post" - ], - "isOperator": false, - "expr": "(postparsed.postid = post.postid" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "postparsed", - "styleid" - ], - "isOperator": false, - "expr": "postparsed.styleid = 23" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "postparsed", - "languageid" - ], - "isOperator": false, - "expr": "postparsed.languageid = 5)" - } - ], - "using": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "sigparsed", - "column": null, - "expr": "sigparsed", - "alias": "sigparsed", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "sigparsed", - "userid", - "user" - ], - "isOperator": false, - "expr": "(sigparsed.userid = user.userid" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "sigparsed", - "styleid" - ], - "isOperator": false, - "expr": "sigparsed.styleid = 23" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "sigparsed", - "languageid" - ], - "isOperator": false, - "expr": "sigparsed.languageid = 5)" - } - ], - "using": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "sigpic", - "column": null, - "expr": "sigpic", - "alias": "sigpic", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "sigpic", - "userid", - "post" - ], - "isOperator": false, - "expr": "(sigpic.userid = post.userid)" - } - ], - "using": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "vbppim_post_icon_list", - "column": null, - "expr": "vbppim_post_icon_list", - "alias": "post_icon_list", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "post_icon_list", - "post_id", - "post", - "postid" - ], - "isOperator": false, - "expr": "post_icon_list.post_id=post.postid" - } - ], - "using": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "vbpmal_log", - "column": null, - "expr": "vbpmal_log", - "alias": "approvedlog", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "approvedlog", - "itemid", - "post", - "postid" - ], - "isOperator": false, - "expr": "(approvedlog.itemid=post.postid" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "approvedlog", - "action", - "postapprove" - ], - "isOperator": false, - "expr": "approvedlog.action='postapprove')" - } - ], - "using": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "vbpmal_log", - "column": null, - "expr": "vbpmal_log", - "alias": "movedlog", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "movedlog", - "itemid", - "post", - "postid" - ], - "isOperator": false, - "expr": "(movedlog.itemid=post.postid" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "movedlog", - "action", - "postmove" - ], - "isOperator": false, - "expr": "movedlog.action='postmove')" - } - ], - "using": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "vbpmal_scheduled_post_approval", - "column": null, - "expr": "vbpmal_scheduled_post_approval", - "alias": "scheduled_approval", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "scheduled_approval", - "post_id", - "post", - "postid" - ], - "isOperator": false, - "expr": "scheduled_approval.post_id = post.postid" - } - ], - "using": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "vbpsmt_additional_user_data", - "column": null, - "expr": "vbpsmt_additional_user_data", - "alias": "additional_user_data", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "additional_user_data", - "userid", - "post" - ], - "isOperator": false, - "expr": "additional_user_data.userid=post.userid" - } - ], - "using": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "market_pp_post_activation_mapping", - "column": null, - "expr": "market_pp_post_activation_mapping", - "alias": "paid_post_activation", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "paid_post_activation", - "post_id", - "post", - "postid" - ], - "isOperator": false, - "expr": "paid_post_activation.post_id = post.postid" - } - ], - "using": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "alm_Model_UserData", - "column": null, - "expr": "alm_Model_UserData", - "alias": "alm_Model_UserData", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "alm_Model_UserData", - "user_id", - "user", - "userid" - ], - "isOperator": false, - "expr": "alm_Model_UserData.user_id=user.userid" - } - ], - "using": null - } - ], - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 1033 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect14.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect14.in deleted file mode 100644 index 60953ad1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect14.in +++ /dev/null @@ -1 +0,0 @@ -SELECT tbl.id, NOT tbl.id FROM tbl \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect14.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect14.out deleted file mode 100644 index bc054986..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect14.out +++ /dev/null @@ -1,244 +0,0 @@ -{ - "query": "SELECT tbl.id, NOT tbl.id FROM tbl", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT tbl.id, NOT tbl.id FROM tbl", - "len": 34, - "last": 34, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tbl", - "value": "tbl", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT", - "value": "NOT", - "keyword": "NOT", - "type": 1, - "flags": 3, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tbl", - "value": "tbl", - "keyword": null, - "type": 0, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tbl", - "value": "tbl", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 17, - "idx": 17 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "tbl", - "column": "id", - "expr": "tbl.id", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "NOT tbl.id", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "tbl", - "column": null, - "expr": "tbl", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 15 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect15.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect15.in deleted file mode 100644 index a9855578..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect15.in +++ /dev/null @@ -1 +0,0 @@ -SELECT `````` FROM ``````; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect15.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect15.out deleted file mode 100644 index e67ae65e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect15.out +++ /dev/null @@ -1,162 +0,0 @@ -{ - "query": "SELECT `````` FROM ``````;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT `````` FROM ``````;", - "len": 26, - "last": 26, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "``````", - "value": "``", - "keyword": null, - "type": 8, - "flags": 2, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "``````", - "value": "``", - "keyword": null, - "type": 8, - "flags": 2, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 9, - "idx": 9 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "``", - "expr": "``````", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "``", - "column": null, - "expr": "``````", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 6 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect16.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect16.in deleted file mode 100644 index 83f4356c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect16.in +++ /dev/null @@ -1,20 +0,0 @@ -SELECT -p.aa, -p.bb, -CASE -WHEN p.cc = 'Y' and dd = 'Found' then '99.99999' -WHEN p.cc = '' and dd = 'Found' then '00.00000' - ELSE '99.99999' END as RR, -CASE -WHEN dd = 'Found' then 'Y' - ELSE 'N' END as RRI, -CASE - WHEN (SELECT MAX(cd) from LSA act group by act.an having p.acn = act.an) > '2021-01-28' THEN '06/30/2020' - WHEN p.co < '2021-01-28' THEN '12/31/2019' - ELSE '06/30/2020' END as DAOD -FROM `LTKP` p -left join `LQA` qa -on qa.pi = p.ID -left join LSA act -on p.acn = act.an -where p.a =1 and p.mr = 1 and p.sc<> '23' and qa.qt = 'TEXT' and p.tl = "TEXT" and qa.a = 1 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect16.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect16.out deleted file mode 100644 index 22e6f8c2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect16.out +++ /dev/null @@ -1,2810 +0,0 @@ -{ - "query": "SELECT\np.aa,\np.bb,\nCASE\nWHEN p.cc = 'Y' and dd = 'Found' then '99.99999'\nWHEN p.cc = '' and dd = 'Found' then '00.00000'\n ELSE '99.99999' END as RR,\nCASE\nWHEN dd = 'Found' then 'Y'\n ELSE 'N' END as RRI,\nCASE\n\tWHEN (SELECT MAX(cd) from LSA act group by act.an having p.acn = act.an) > '2021-01-28' THEN '06/30/2020'\n WHEN p.co < '2021-01-28' THEN '12/31/2019'\n ELSE '06/30/2020' END as DAOD\nFROM `LTKP` p\nleft join `LQA` qa\non qa.pi = p.ID\nleft join LSA act\non p.acn = act.an\nwhere p.a =1 and p.mr = 1 and p.sc<> '23' and qa.qt = 'TEXT' and p.tl = \"TEXT\" and qa.a = 1", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT\np.aa,\np.bb,\nCASE\nWHEN p.cc = 'Y' and dd = 'Found' then '99.99999'\nWHEN p.cc = '' and dd = 'Found' then '00.00000'\n ELSE '99.99999' END as RR,\nCASE\nWHEN dd = 'Found' then 'Y'\n ELSE 'N' END as RRI,\nCASE\n\tWHEN (SELECT MAX(cd) from LSA act group by act.an having p.acn = act.an) > '2021-01-28' THEN '06/30/2020'\n WHEN p.co < '2021-01-28' THEN '12/31/2019'\n ELSE '06/30/2020' END as DAOD\nFROM `LTKP` p\nleft join `LQA` qa\non qa.pi = p.ID\nleft join LSA act\non p.acn = act.an\nwhere p.a =1 and p.mr = 1 and p.sc<> '23' and qa.qt = 'TEXT' and p.tl = \"TEXT\" and qa.a = 1", - "len": 579, - "last": 579, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p", - "value": "p", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "aa", - "value": "aa", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p", - "value": "p", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "bb", - "value": "bb", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CASE", - "value": "CASE", - "keyword": "CASE", - "type": 1, - "flags": 3, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHEN", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p", - "value": "p", - "keyword": null, - "type": 0, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cc", - "value": "cc", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Y'", - "value": "Y", - "keyword": null, - "type": 7, - "flags": 1, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "and", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "dd", - "value": "dd", - "keyword": null, - "type": 0, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Found'", - "value": "Found", - "keyword": null, - "type": 7, - "flags": 1, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'99.99999'", - "value": "99.99999", - "keyword": null, - "type": 7, - "flags": 1, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHEN", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p", - "value": "p", - "keyword": null, - "type": 0, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cc", - "value": "cc", - "keyword": null, - "type": 0, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "''", - "value": "", - "keyword": null, - "type": 7, - "flags": 1, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "and", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "dd", - "value": "dd", - "keyword": null, - "type": 0, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Found'", - "value": "Found", - "keyword": null, - "type": 7, - "flags": 1, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'00.00000'", - "value": "00.00000", - "keyword": null, - "type": 7, - "flags": 1, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ELSE", - "value": "ELSE", - "keyword": "ELSE", - "type": 1, - "flags": 3, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'99.99999'", - "value": "99.99999", - "keyword": null, - "type": 7, - "flags": 1, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "END", - "value": "END", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 144 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 147 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RR", - "value": "RR", - "keyword": null, - "type": 0, - "flags": 0, - "position": 148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 150 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CASE", - "value": "CASE", - "keyword": "CASE", - "type": 1, - "flags": 3, - "position": 152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHEN", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "dd", - "value": "dd", - "keyword": null, - "type": 0, - "flags": 0, - "position": 162 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 164 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 165 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 166 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Found'", - "value": "Found", - "keyword": null, - "type": 7, - "flags": 1, - "position": 167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 175 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 179 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Y'", - "value": "Y", - "keyword": null, - "type": 7, - "flags": 1, - "position": 180 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 183 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ELSE", - "value": "ELSE", - "keyword": "ELSE", - "type": 1, - "flags": 3, - "position": 188 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 192 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'N'", - "value": "N", - "keyword": null, - "type": 7, - "flags": 1, - "position": 193 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 196 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "END", - "value": "END", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 197 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 200 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 201 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 203 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RRI", - "value": "RRI", - "keyword": null, - "type": 0, - "flags": 0, - "position": 204 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 207 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 208 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CASE", - "value": "CASE", - "keyword": "CASE", - "type": 1, - "flags": 3, - "position": 209 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\t", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 213 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHEN", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 215 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 219 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 220 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 221 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 227 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MAX", - "value": "MAX", - "keyword": "MAX", - "type": 1, - "flags": 33, - "position": 228 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 231 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cd", - "value": "cd", - "keyword": null, - "type": 0, - "flags": 0, - "position": 232 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 234 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 235 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "from", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 236 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 240 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LSA", - "value": "LSA", - "keyword": null, - "type": 0, - "flags": 0, - "position": 241 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 244 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "act", - "value": "act", - "keyword": null, - "type": 0, - "flags": 0, - "position": 245 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 248 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "group by", - "value": "GROUP BY", - "keyword": "GROUP BY", - "type": 1, - "flags": 7, - "position": 249 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 257 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "act", - "value": "act", - "keyword": null, - "type": 0, - "flags": 0, - "position": 258 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 261 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "an", - "value": "an", - "keyword": null, - "type": 0, - "flags": 0, - "position": 262 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 264 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "having", - "value": "HAVING", - "keyword": "HAVING", - "type": 1, - "flags": 3, - "position": 265 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 271 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p", - "value": "p", - "keyword": null, - "type": 0, - "flags": 0, - "position": 272 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 273 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "acn", - "value": "acn", - "keyword": null, - "type": 0, - "flags": 0, - "position": 274 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 277 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 278 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 279 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "act", - "value": "act", - "keyword": null, - "type": 0, - "flags": 0, - "position": 280 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 283 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "an", - "value": "an", - "keyword": null, - "type": 0, - "flags": 0, - "position": 284 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 286 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 287 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ">", - "value": ">", - "keyword": null, - "type": 2, - "flags": 2, - "position": 288 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 289 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'2021-01-28'", - "value": "2021-01-28", - "keyword": null, - "type": 7, - "flags": 1, - "position": 290 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 302 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "THEN", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 303 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 307 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'06/30/2020'", - "value": "06/30/2020", - "keyword": null, - "type": 7, - "flags": 1, - "position": 308 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 320 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHEN", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 325 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 329 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p", - "value": "p", - "keyword": null, - "type": 0, - "flags": 0, - "position": 330 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 331 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "co", - "value": "co", - "keyword": null, - "type": 0, - "flags": 0, - "position": 332 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 334 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "<", - "value": "<", - "keyword": null, - "type": 2, - "flags": 2, - "position": 335 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 336 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'2021-01-28'", - "value": "2021-01-28", - "keyword": null, - "type": 7, - "flags": 1, - "position": 337 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 349 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "THEN", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 350 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 354 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'12/31/2019'", - "value": "12/31/2019", - "keyword": null, - "type": 7, - "flags": 1, - "position": 355 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 367 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ELSE", - "value": "ELSE", - "keyword": "ELSE", - "type": 1, - "flags": 3, - "position": 372 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 376 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'06/30/2020'", - "value": "06/30/2020", - "keyword": null, - "type": 7, - "flags": 1, - "position": 377 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 389 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "END", - "value": "END", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 390 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 393 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 394 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 396 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DAOD", - "value": "DAOD", - "keyword": null, - "type": 0, - "flags": 0, - "position": 397 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 401 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 402 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 406 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`LTKP`", - "value": "LTKP", - "keyword": null, - "type": 8, - "flags": 2, - "position": 407 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 413 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p", - "value": "p", - "keyword": null, - "type": 0, - "flags": 0, - "position": 414 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 415 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "left join", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 416 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 425 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`LQA`", - "value": "LQA", - "keyword": null, - "type": 8, - "flags": 2, - "position": 426 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 431 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "qa", - "value": "qa", - "keyword": null, - "type": 0, - "flags": 0, - "position": 432 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 434 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "on", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 435 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 437 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "qa", - "value": "qa", - "keyword": null, - "type": 0, - "flags": 0, - "position": 438 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 440 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pi", - "value": "pi", - "keyword": "PI", - "type": 0, - "flags": 0, - "position": 441 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 443 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 444 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 445 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p", - "value": "p", - "keyword": null, - "type": 0, - "flags": 0, - "position": 446 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 447 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ID", - "value": "ID", - "keyword": null, - "type": 0, - "flags": 0, - "position": 448 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 450 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "left join", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 451 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 460 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LSA", - "value": "LSA", - "keyword": null, - "type": 0, - "flags": 0, - "position": 461 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 464 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "act", - "value": "act", - "keyword": null, - "type": 0, - "flags": 0, - "position": 465 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 468 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "on", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 469 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 471 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p", - "value": "p", - "keyword": null, - "type": 0, - "flags": 0, - "position": 472 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 473 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "acn", - "value": "acn", - "keyword": null, - "type": 0, - "flags": 0, - "position": 474 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 477 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 478 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 479 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "act", - "value": "act", - "keyword": null, - "type": 0, - "flags": 0, - "position": 480 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 483 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "an", - "value": "an", - "keyword": null, - "type": 0, - "flags": 0, - "position": 484 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 486 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "where", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 487 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 492 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p", - "value": "p", - "keyword": null, - "type": 0, - "flags": 0, - "position": 494 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 495 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 496 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 497 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 498 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 499 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 500 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "and", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 501 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 504 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p", - "value": "p", - "keyword": null, - "type": 0, - "flags": 0, - "position": 505 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 506 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mr", - "value": "mr", - "keyword": null, - "type": 0, - "flags": 0, - "position": 507 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 509 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 510 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 511 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 512 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 513 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "and", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 514 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 517 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p", - "value": "p", - "keyword": null, - "type": 0, - "flags": 0, - "position": 518 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 519 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "sc", - "value": "sc", - "keyword": null, - "type": 0, - "flags": 0, - "position": 520 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "<>", - "value": "<>", - "keyword": null, - "type": 2, - "flags": 2, - "position": 522 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 524 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'23'", - "value": "23", - "keyword": null, - "type": 7, - "flags": 1, - "position": 525 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 529 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "and", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 530 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 533 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "qa", - "value": "qa", - "keyword": null, - "type": 0, - "flags": 0, - "position": 534 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 536 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "qt", - "value": "qt", - "keyword": null, - "type": 0, - "flags": 0, - "position": 537 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 539 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 540 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 541 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'TEXT'", - "value": "TEXT", - "keyword": null, - "type": 7, - "flags": 1, - "position": 542 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 548 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "and", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 549 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 552 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p", - "value": "p", - "keyword": null, - "type": 0, - "flags": 0, - "position": 553 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 554 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tl", - "value": "tl", - "keyword": null, - "type": 0, - "flags": 0, - "position": 555 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 557 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 558 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 559 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"TEXT\"", - "value": "TEXT", - "keyword": null, - "type": 7, - "flags": 2, - "position": 560 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 566 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "and", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 567 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 570 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "qa", - "value": "qa", - "keyword": null, - "type": 0, - "flags": 0, - "position": 571 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 573 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 574 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 575 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 576 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 577 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 578 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 263, - "idx": 263 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "p", - "column": "aa", - "expr": "p.aa", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "p", - "column": "bb", - "expr": "p.bb", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CaseExpression", - "value": null, - "conditions": [ - [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "p", - "cc", - "Y" - ], - "isOperator": false, - "expr": "p.cc = 'Y'" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "dd", - "Found" - ], - "isOperator": false, - "expr": "dd = 'Found'" - } - ], - [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "p", - "cc", - "" - ], - "isOperator": false, - "expr": "p.cc = ''" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "dd", - "Found" - ], - "isOperator": false, - "expr": "dd = 'Found'" - } - ] - ], - "results": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "99.99999", - "expr": "'99.99999'", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "00.00000", - "expr": "'00.00000'", - "alias": null, - "function": null, - "subquery": null - } - ], - "compare_values": [], - "else_result": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "99.99999", - "expr": "'99.99999'", - "alias": null, - "function": null, - "subquery": null - }, - "alias": "RR", - "expr": "CASE WHEN p.cc = 'Y' AND dd = 'Found' THEN '99.99999' WHEN p.cc = '' AND dd = 'Found' THEN '00.00000' ELSE '99.99999' END AS `RR`" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CaseExpression", - "value": null, - "conditions": [ - [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "dd", - "Found" - ], - "isOperator": false, - "expr": "dd = 'Found'" - } - ] - ], - "results": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Y", - "expr": "'Y'", - "alias": null, - "function": null, - "subquery": null - } - ], - "compare_values": [], - "else_result": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "N", - "expr": "'N'", - "alias": null, - "function": null, - "subquery": null - }, - "alias": "RRI", - "expr": "CASE WHEN dd = 'Found' THEN 'Y' ELSE 'N' END AS `RRI`" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CaseExpression", - "value": null, - "conditions": [ - [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "MAX", - "cd", - "LSA", - "act", - "an", - "p", - "acn", - "2021-01-28" - ], - "isOperator": false, - "expr": "(SELECT MAX(cd) from LSA act group by act.an having p.acn = act.an) > '2021-01-28'" - } - ], - [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "p", - "co", - "2021-01-28" - ], - "isOperator": false, - "expr": "p.co < '2021-01-28'" - } - ] - ], - "results": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "06/30/2020", - "expr": "'06/30/2020'", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "12/31/2019", - "expr": "'12/31/2019'", - "alias": null, - "function": null, - "subquery": null - } - ], - "compare_values": [], - "else_result": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "06/30/2020", - "expr": "'06/30/2020'", - "alias": null, - "function": null, - "subquery": null - }, - "alias": "DAOD", - "expr": "CASE WHEN (SELECT MAX(cd) from LSA act group by act.an having p.acn = act.an) > '2021-01-28' THEN '06/30/2020' WHEN p.co < '2021-01-28' THEN '12/31/2019' ELSE '06/30/2020' END AS `DAOD`" - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "LTKP", - "column": null, - "expr": "`LTKP`", - "alias": "p", - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "p", - "a" - ], - "isOperator": false, - "expr": "p.a =1" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "p", - "mr" - ], - "isOperator": false, - "expr": "p.mr = 1" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "p", - "sc", - "23" - ], - "isOperator": false, - "expr": "p.sc<> '23'" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "qa", - "qt", - "TEXT" - ], - "isOperator": false, - "expr": "qa.qt = 'TEXT'" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "p", - "tl", - "TEXT" - ], - "isOperator": false, - "expr": "p.tl = \"TEXT\"" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "qa", - "a" - ], - "isOperator": false, - "expr": "qa.a = 1" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "LQA", - "column": null, - "expr": "`LQA`", - "alias": "qa", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "qa", - "pi", - "p", - "ID" - ], - "isOperator": false, - "expr": "qa.pi = p.ID" - } - ], - "using": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "LSA", - "column": null, - "expr": "LSA", - "alias": "act", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "p", - "acn", - "act", - "an" - ], - "isOperator": false, - "expr": "p.acn = act.an" - } - ], - "using": null - } - ], - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 261 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect2.in deleted file mode 100644 index 338e33c0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect2.in +++ /dev/null @@ -1 +0,0 @@ -SELECT (SELECT 'foo') bar, (SELECT 'baz') AS qux, a as b FROM tabl; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect2.out deleted file mode 100644 index c7fd682a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect2.out +++ /dev/null @@ -1,398 +0,0 @@ -{ - "query": "SELECT (SELECT 'foo') bar, (SELECT 'baz') AS qux, a as b FROM tabl;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT (SELECT 'foo') bar, (SELECT 'baz') AS qux, a as b FROM tabl;", - "len": 67, - "last": 67, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'foo'", - "value": "foo", - "keyword": null, - "type": 7, - "flags": 1, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "bar", - "value": "bar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'baz'", - "value": "baz", - "keyword": null, - "type": 7, - "flags": 1, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "qux", - "value": "qux", - "keyword": null, - "type": 0, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tabl", - "value": "tabl", - "keyword": null, - "type": 0, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 33, - "idx": 33 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(SELECT 'foo')", - "alias": "bar", - "function": null, - "subquery": "SELECT" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(SELECT 'baz')", - "alias": "qux", - "function": null, - "subquery": "SELECT" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "a", - "expr": "a", - "alias": "b", - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "tabl", - "column": null, - "expr": "tabl", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 30 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect3.in deleted file mode 100644 index f090cc57..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect3.in +++ /dev/null @@ -1,3 +0,0 @@ -SELECT left_tbl.* -FROM left_tbl LEFT JOIN right_tbl ON left_tbl.id = right_tbl.id -WHERE right_tbl.id IS NULL; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect3.out deleted file mode 100644 index afa5c020..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect3.out +++ /dev/null @@ -1,452 +0,0 @@ -{ - "query": "SELECT left_tbl.*\nFROM left_tbl LEFT JOIN right_tbl ON left_tbl.id = right_tbl.id\nWHERE right_tbl.id IS NULL;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT left_tbl.*\nFROM left_tbl LEFT JOIN right_tbl ON left_tbl.id = right_tbl.id\nWHERE right_tbl.id IS NULL;", - "len": 109, - "last": 109, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "left_tbl", - "value": "left_tbl", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "left_tbl", - "value": "left_tbl", - "keyword": null, - "type": 0, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEFT JOIN", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "right_tbl", - "value": "right_tbl", - "keyword": null, - "type": 0, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "left_tbl", - "value": "left_tbl", - "keyword": null, - "type": 0, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "right_tbl", - "value": "right_tbl", - "keyword": null, - "type": 0, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "right_tbl", - "value": "right_tbl", - "keyword": null, - "type": 0, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IS", - "value": "IS", - "keyword": "IS", - "type": 1, - "flags": 3, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 37, - "idx": 37 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "left_tbl", - "column": null, - "expr": "left_tbl.*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "left_tbl", - "column": null, - "expr": "left_tbl", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "right_tbl", - "id" - ], - "isOperator": false, - "expr": "right_tbl.id IS NULL" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "right_tbl", - "column": null, - "expr": "right_tbl", - "alias": null, - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "left_tbl", - "id", - "right_tbl" - ], - "isOperator": false, - "expr": "left_tbl.id = right_tbl.id" - } - ], - "using": null - } - ], - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 34 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect4.in deleted file mode 100644 index a76e0539..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect4.in +++ /dev/null @@ -1,3 +0,0 @@ -SELECT * - FROM test - WHERE RIGHT(name, 2) = 'AB'; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect4.out deleted file mode 100644 index beba5130..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect4.out +++ /dev/null @@ -1,307 +0,0 @@ -{ - "query": "SELECT *\n FROM test\n WHERE RIGHT(name, 2) = 'AB';\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT *\n FROM test\n WHERE RIGHT(name, 2) = 'AB';\n", - "len": 54, - "last": 54, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RIGHT", - "value": "RIGHT", - "keyword": "RIGHT", - "type": 1, - "flags": 35, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'AB'", - "value": "AB", - "keyword": null, - "type": 7, - "flags": 1, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 24, - "idx": 24 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test", - "column": null, - "expr": "test", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "name", - "AB" - ], - "isOperator": false, - "expr": "RIGHT(name, 2) = 'AB'" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 20 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect5.in deleted file mode 100644 index 15fec1d3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect5.in +++ /dev/null @@ -1,4 +0,0 @@ -SELECT c1, c2, c3 - /* Subquery in FROM list */ - FROM (SELECT C1, c2, c3 FROM test2) t1 - WHERE RIGHT(name, 2) = 'AB'; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect5.out deleted file mode 100644 index f27abfe2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect5.out +++ /dev/null @@ -1,543 +0,0 @@ -{ - "query": "SELECT c1, c2, c3\n /* Subquery in FROM list */\n FROM (SELECT C1, c2, c3 FROM test2) t1\n WHERE RIGHT(name, 2) = 'AB';\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT c1, c2, c3\n /* Subquery in FROM list */\n FROM (SELECT C1, c2, c3 FROM test2) t1\n WHERE RIGHT(name, 2) = 'AB';\n", - "len": 123, - "last": 123, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c1", - "value": "c1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c2", - "value": "c2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c3", - "value": "c3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* Subquery in FROM list */", - "value": "/* Subquery in FROM list */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "C1", - "value": "C1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c2", - "value": "c2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c3", - "value": "c3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test2", - "value": "test2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RIGHT", - "value": "RIGHT", - "keyword": "RIGHT", - "type": 1, - "flags": 35, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'AB'", - "value": "AB", - "keyword": null, - "type": 7, - "flags": 1, - "position": 117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 48, - "idx": 48 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "c1", - "expr": "c1", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "c2", - "expr": "c2", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "c3", - "expr": "c3", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(SELECT C1, c2, c3 FROM test2)", - "alias": "t1", - "function": null, - "subquery": "SELECT" - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "name", - "AB" - ], - "isOperator": false, - "expr": "RIGHT(name, 2) = 'AB'" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 44 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect6.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect6.in deleted file mode 100644 index 4330fc67..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect6.in +++ /dev/null @@ -1,2 +0,0 @@ -SELECT * FROM t1 LEFT JOIN (t2, t3, t4) - ON (t2.a=t1.a AND t3.b=t1.b AND t4.c=t1.c) diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect6.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect6.out deleted file mode 100644 index e4f32ace..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect6.out +++ /dev/null @@ -1,618 +0,0 @@ -{ - "query": "SELECT * FROM t1 LEFT JOIN (t2, t3, t4)\n ON (t2.a=t1.a AND t3.b=t1.b AND t4.c=t1.c)\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM t1 LEFT JOIN (t2, t3, t4)\n ON (t2.a=t1.a AND t3.b=t1.b AND t4.c=t1.c)\n", - "len": 100, - "last": 100, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEFT JOIN", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t2", - "value": "t2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t3", - "value": "t3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t4", - "value": "t4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t2", - "value": "t2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t3", - "value": "t3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t4", - "value": "t4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 53, - "idx": 53 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "t1", - "column": null, - "expr": "t1", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(t2, t3, t4)", - "alias": null, - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "t2", - "a", - "t1" - ], - "isOperator": false, - "expr": "(t2.a=t1.a" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "t3", - "b", - "t1" - ], - "isOperator": false, - "expr": "t3.b=t1.b" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "t4", - "c", - "t1" - ], - "isOperator": false, - "expr": "t4.c=t1.c)" - } - ], - "using": null - } - ], - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 51 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect7.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect7.in deleted file mode 100644 index 3330515a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect7.in +++ /dev/null @@ -1,2 +0,0 @@ -SELECT * FROM t1 LEFT JOIN (t2 CROSS JOIN t3 CROSS JOIN t4) - ON (t2.a=t1.a AND t3.b=t1.b AND t4.c=t1.c) \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect7.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect7.out deleted file mode 100644 index 95dfcd88..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect7.out +++ /dev/null @@ -1,627 +0,0 @@ -{ - "query": "SELECT * FROM t1 LEFT JOIN (t2 CROSS JOIN t3 CROSS JOIN t4)\n ON (t2.a=t1.a AND t3.b=t1.b AND t4.c=t1.c)", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM t1 LEFT JOIN (t2 CROSS JOIN t3 CROSS JOIN t4)\n ON (t2.a=t1.a AND t3.b=t1.b AND t4.c=t1.c)", - "len": 119, - "last": 119, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEFT JOIN", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t2", - "value": "t2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CROSS JOIN", - "value": "CROSS JOIN", - "keyword": "CROSS JOIN", - "type": 1, - "flags": 7, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t3", - "value": "t3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CROSS JOIN", - "value": "CROSS JOIN", - "keyword": "CROSS JOIN", - "type": 1, - "flags": 7, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t4", - "value": "t4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t2", - "value": "t2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t3", - "value": "t3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t4", - "value": "t4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t1", - "value": "t1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 54, - "idx": 54 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "t1", - "column": null, - "expr": "t1", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(t2 CROSS JOIN t3 CROSS JOIN t4)", - "alias": null, - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "t2", - "a", - "t1" - ], - "isOperator": false, - "expr": "(t2.a=t1.a" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "t3", - "b", - "t1" - ], - "isOperator": false, - "expr": "t3.b=t1.b" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "t4", - "c", - "t1" - ], - "isOperator": false, - "expr": "t4.c=t1.c)" - } - ], - "using": null - } - ], - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 52 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect8.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect8.in deleted file mode 100644 index 88e9dcb1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect8.in +++ /dev/null @@ -1 +0,0 @@ -select * FROM (select Pop FROM MyTable) p join tadaa t where p.x=t.y \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect8.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect8.out deleted file mode 100644 index 03db5f39..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect8.out +++ /dev/null @@ -1,416 +0,0 @@ -{ - "query": "select * FROM (select Pop FROM MyTable) p join tadaa t where p.x=t.y", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "select * FROM (select Pop FROM MyTable) p join tadaa t where p.x=t.y", - "len": 68, - "last": 68, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "Pop", - "value": "Pop", - "keyword": null, - "type": 0, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MyTable", - "value": "MyTable", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p", - "value": "p", - "keyword": null, - "type": 0, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "join", - "value": "JOIN", - "keyword": "JOIN", - "type": 1, - "flags": 3, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tadaa", - "value": "tadaa", - "keyword": null, - "type": 0, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t", - "value": "t", - "keyword": null, - "type": 0, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "where", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p", - "value": "p", - "keyword": null, - "type": 0, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "x", - "value": "x", - "keyword": "X", - "type": 0, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t", - "value": "t", - "keyword": null, - "type": 0, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "y", - "value": "y", - "keyword": "Y", - "type": 0, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 34, - "idx": 34 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(select Pop FROM MyTable)", - "alias": "p", - "function": null, - "subquery": "SELECT" - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "p", - "x", - "t", - "y" - ], - "isOperator": false, - "expr": "p.x=t.y" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "JOIN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "tadaa", - "column": null, - "expr": "tadaa", - "alias": "t", - "function": null, - "subquery": null - }, - "on": null, - "using": null - } - ], - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 32 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect9.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect9.in deleted file mode 100644 index 5717fe4b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect9.in +++ /dev/null @@ -1,4 +0,0 @@ -SELECT casein_pipe, email_cp, name_first_cp, name_last_cp, purpose_pipe -FROM (tbl_comp_person INNER JOIN `tbl_pipelist` ON tbl_comp_person.IDp = tbl_pipelist.IDp) -WHERE casein_pipe > '2016-03-01' AND `campaign_id_pipe` = 24569 AND `weeksonlist_pipe` = 1 -ORDER BY `tbl_pipelist`.`casein_pipe` ASC \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect9.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect9.out deleted file mode 100644 index bcaba576..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelect9.out +++ /dev/null @@ -1,804 +0,0 @@ -{ - "query": "SELECT casein_pipe, email_cp, name_first_cp, name_last_cp, purpose_pipe\nFROM (tbl_comp_person INNER JOIN `tbl_pipelist` ON tbl_comp_person.IDp = tbl_pipelist.IDp)\nWHERE casein_pipe > '2016-03-01' AND `campaign_id_pipe` = 24569 AND `weeksonlist_pipe` = 1\nORDER BY `tbl_pipelist`.`casein_pipe` ASC", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT casein_pipe, email_cp, name_first_cp, name_last_cp, purpose_pipe\nFROM (tbl_comp_person INNER JOIN `tbl_pipelist` ON tbl_comp_person.IDp = tbl_pipelist.IDp)\nWHERE casein_pipe > '2016-03-01' AND `campaign_id_pipe` = 24569 AND `weeksonlist_pipe` = 1\nORDER BY `tbl_pipelist`.`casein_pipe` ASC", - "len": 296, - "last": 296, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "casein_pipe", - "value": "casein_pipe", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "email_cp", - "value": "email_cp", - "keyword": null, - "type": 0, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name_first_cp", - "value": "name_first_cp", - "keyword": null, - "type": 0, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name_last_cp", - "value": "name_last_cp", - "keyword": null, - "type": 0, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "purpose_pipe", - "value": "purpose_pipe", - "keyword": null, - "type": 0, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tbl_comp_person", - "value": "tbl_comp_person", - "keyword": null, - "type": 0, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INNER JOIN", - "value": "INNER JOIN", - "keyword": "INNER JOIN", - "type": 1, - "flags": 7, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`tbl_pipelist`", - "value": "tbl_pipelist", - "keyword": null, - "type": 8, - "flags": 2, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tbl_comp_person", - "value": "tbl_comp_person", - "keyword": null, - "type": 0, - "flags": 0, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IDp", - "value": "IDp", - "keyword": null, - "type": 0, - "flags": 0, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 144 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tbl_pipelist", - "value": "tbl_pipelist", - "keyword": null, - "type": 0, - "flags": 0, - "position": 145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IDp", - "value": "IDp", - "keyword": null, - "type": 0, - "flags": 0, - "position": 158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 162 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 163 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 168 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "casein_pipe", - "value": "casein_pipe", - "keyword": null, - "type": 0, - "flags": 0, - "position": 169 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 180 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ">", - "value": ">", - "keyword": null, - "type": 2, - "flags": 2, - "position": 181 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 182 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'2016-03-01'", - "value": "2016-03-01", - "keyword": null, - "type": 7, - "flags": 1, - "position": 183 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 195 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 196 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 199 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`campaign_id_pipe`", - "value": "campaign_id_pipe", - "keyword": null, - "type": 8, - "flags": 2, - "position": 201 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 219 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 220 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 221 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "24569", - "value": 24569, - "keyword": null, - "type": 6, - "flags": 0, - "position": 222 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 227 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 228 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 231 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`weeksonlist_pipe`", - "value": "weeksonlist_pipe", - "keyword": null, - "type": 8, - "flags": 2, - "position": 232 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 250 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 251 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 252 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 253 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 254 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ORDER BY", - "value": "ORDER BY", - "keyword": "ORDER BY", - "type": 1, - "flags": 7, - "position": 255 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 263 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`tbl_pipelist`", - "value": "tbl_pipelist", - "keyword": null, - "type": 8, - "flags": 2, - "position": 264 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 278 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`casein_pipe`", - "value": "casein_pipe", - "keyword": null, - "type": 8, - "flags": 2, - "position": 279 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 292 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ASC", - "value": "ASC", - "keyword": "ASC", - "type": 1, - "flags": 3, - "position": 293 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 70, - "idx": 70 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "casein_pipe", - "expr": "casein_pipe", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "email_cp", - "expr": "email_cp", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "name_first_cp", - "expr": "name_first_cp", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "name_last_cp", - "expr": "name_last_cp", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "purpose_pipe", - "expr": "purpose_pipe", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(tbl_comp_person INNER JOIN `tbl_pipelist` ON tbl_comp_person.IDp = tbl_pipelist.IDp)", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "casein_pipe", - "2016-03-01" - ], - "isOperator": false, - "expr": "casein_pipe > '2016-03-01'" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "campaign_id_pipe" - ], - "isOperator": false, - "expr": "`campaign_id_pipe` = 24569" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "weeksonlist_pipe" - ], - "isOperator": false, - "expr": "`weeksonlist_pipe` = 1" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OrderKeyword", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "tbl_pipelist", - "column": "casein_pipe", - "expr": "`tbl_pipelist`.`casein_pipe`", - "alias": null, - "function": null, - "subquery": null - }, - "type": "ASC" - } - ], - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 68 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectAggregateWithPartitionAndAlias.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectAggregateWithPartitionAndAlias.in deleted file mode 100644 index 56d4b523..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectAggregateWithPartitionAndAlias.in +++ /dev/null @@ -1 +0,0 @@ -SELECT *, COUNT(*) OVER(PARTITION BY `REGION`) AS "count(REGION)" FROM `world_borders` diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectAggregateWithPartitionAndAlias.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectAggregateWithPartitionAndAlias.out deleted file mode 100644 index 3fcc0454..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectAggregateWithPartitionAndAlias.out +++ /dev/null @@ -1,325 +0,0 @@ -{ - "query": "SELECT *, COUNT(*) OVER(PARTITION BY `REGION`) AS \"count(REGION)\" FROM `world_borders`\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT *, COUNT(*) OVER(PARTITION BY `REGION`) AS \"count(REGION)\" FROM `world_borders`\n", - "len": 87, - "last": 87, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COUNT", - "value": "COUNT", - "keyword": "COUNT", - "type": 1, - "flags": 33, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OVER", - "value": "OVER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION BY", - "value": "PARTITION BY", - "keyword": "PARTITION BY", - "type": 1, - "flags": 7, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`REGION`", - "value": "REGION", - "keyword": null, - "type": 8, - "flags": 2, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"count(REGION)\"", - "value": "count(REGION)", - "keyword": null, - "type": 7, - "flags": 2, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`world_borders`", - "value": "world_borders", - "keyword": null, - "type": 8, - "flags": 2, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 26, - "idx": 26 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "COUNT(*) OVER(PARTITION BY `REGION`)", - "alias": "count(REGION)", - "function": "COUNT", - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "world_borders", - "column": null, - "expr": "`world_borders`", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 24 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase1.in deleted file mode 100644 index 8a9fbf83..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase1.in +++ /dev/null @@ -1,2 +0,0 @@ -select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name, -case 1 when 1 then "Some" else "Other" end FROM a; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase1.out deleted file mode 100644 index 1bae286a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase1.out +++ /dev/null @@ -1,581 +0,0 @@ -{ - "query": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase 1 when 1 then \"Some\" else \"Other\" end FROM a;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase 1 when 1 then \"Some\" else \"Other\" end FROM a;", - "len": 132, - "last": 132, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mysql", - "value": "mysql", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category", - "value": "help_category", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category_id", - "value": "help_category_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "case", - "value": "CASE", - "keyword": "CASE", - "type": 1, - "flags": 3, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Some\"", - "value": "Some", - "keyword": null, - "type": 7, - "flags": 2, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "else", - "value": "ELSE", - "keyword": "ELSE", - "type": 1, - "flags": 3, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Other\"", - "value": "Other", - "keyword": null, - "type": 7, - "flags": 2, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "end", - "value": "end", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 50, - "idx": 50 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(SELECT name FROM mysql.help_category WHERE help_category_id = 1)", - "alias": "name", - "function": null, - "subquery": "SELECT" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CaseExpression", - "value": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - }, - "conditions": [], - "results": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Some", - "expr": "\"Some\"", - "alias": null, - "function": null, - "subquery": null - } - ], - "compare_values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - } - ], - "else_result": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Other", - "expr": "\"Other\"", - "alias": null, - "function": null, - "subquery": null - }, - "alias": null, - "expr": "CASE 1 WHEN 1 THEN \"Some\" ELSE \"Other\" END" - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "a", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 47 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase2.in deleted file mode 100644 index 39af441c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase2.in +++ /dev/null @@ -1,2 +0,0 @@ -select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name, -case /* */ when 1=1 then "Some" else "Other" end FROM a; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase2.out deleted file mode 100644 index 0e363d6e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase2.out +++ /dev/null @@ -1,588 +0,0 @@ -{ - "query": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase /* */ when 1=1 then \"Some\" else \"Other\" end FROM a;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase /* */ when 1=1 then \"Some\" else \"Other\" end FROM a;", - "len": 138, - "last": 138, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mysql", - "value": "mysql", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category", - "value": "help_category", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category_id", - "value": "help_category_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "case", - "value": "CASE", - "keyword": "CASE", - "type": 1, - "flags": 3, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* */", - "value": "/* */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Some\"", - "value": "Some", - "keyword": null, - "type": 7, - "flags": 2, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "else", - "value": "ELSE", - "keyword": "ELSE", - "type": 1, - "flags": 3, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Other\"", - "value": "Other", - "keyword": null, - "type": 7, - "flags": 2, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "end", - "value": "end", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 137 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 52, - "idx": 52 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(SELECT name FROM mysql.help_category WHERE help_category_id = 1)", - "alias": "name", - "function": null, - "subquery": "SELECT" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CaseExpression", - "value": null, - "conditions": [ - [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": false, - "expr": "1=1" - } - ] - ], - "results": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Some", - "expr": "\"Some\"", - "alias": null, - "function": null, - "subquery": null - } - ], - "compare_values": [], - "else_result": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Other", - "expr": "\"Other\"", - "alias": null, - "function": null, - "subquery": null - }, - "alias": null, - "expr": "CASE WHEN 1=1 THEN \"Some\" ELSE \"Other\" END" - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "a", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 49 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase3.in deleted file mode 100644 index 6e2c04b4..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase3.in +++ /dev/null @@ -1,2 +0,0 @@ -select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name, -case /* */ when 1=1 then "Some" when 2=1 then "Other" end FROM a; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase3.out deleted file mode 100644 index 4ccc79bf..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase3.out +++ /dev/null @@ -1,651 +0,0 @@ -{ - "query": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase /* */ when 1=1 then \"Some\" when 2=1 then \"Other\" end FROM a;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase /* */ when 1=1 then \"Some\" when 2=1 then \"Other\" end FROM a;", - "len": 147, - "last": 147, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mysql", - "value": "mysql", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category", - "value": "help_category", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category_id", - "value": "help_category_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "case", - "value": "CASE", - "keyword": "CASE", - "type": 1, - "flags": 3, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* */", - "value": "/* */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Some\"", - "value": "Some", - "keyword": null, - "type": 7, - "flags": 2, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Other\"", - "value": "Other", - "keyword": null, - "type": 7, - "flags": 2, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "end", - "value": "end", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 144 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 58, - "idx": 58 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(SELECT name FROM mysql.help_category WHERE help_category_id = 1)", - "alias": "name", - "function": null, - "subquery": "SELECT" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CaseExpression", - "value": null, - "conditions": [ - [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": false, - "expr": "1=1" - } - ], - [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": false, - "expr": "2=1" - } - ] - ], - "results": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Some", - "expr": "\"Some\"", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Other", - "expr": "\"Other\"", - "alias": null, - "function": null, - "subquery": null - } - ], - "compare_values": [], - "else_result": null, - "alias": null, - "expr": "CASE WHEN 1=1 THEN \"Some\" WHEN 2=1 THEN \"Other\" END" - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "a", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 55 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase4.in deleted file mode 100644 index 26fab190..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase4.in +++ /dev/null @@ -1,2 +0,0 @@ -select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name, -case 1 /* */ when 1 then "Some" when 2 then "Other" end FROM a; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase4.out deleted file mode 100644 index 0f5a15f0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase4.out +++ /dev/null @@ -1,646 +0,0 @@ -{ - "query": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase 1 /* */ when 1 then \"Some\" when 2 then \"Other\" end FROM a;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase 1 /* */ when 1 then \"Some\" when 2 then \"Other\" end FROM a;", - "len": 145, - "last": 145, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mysql", - "value": "mysql", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category", - "value": "help_category", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category_id", - "value": "help_category_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "case", - "value": "CASE", - "keyword": "CASE", - "type": 1, - "flags": 3, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* */", - "value": "/* */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Some\"", - "value": "Some", - "keyword": null, - "type": 7, - "flags": 2, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Other\"", - "value": "Other", - "keyword": null, - "type": 7, - "flags": 2, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "end", - "value": "end", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 134 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 137 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 144 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 56, - "idx": 56 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(SELECT name FROM mysql.help_category WHERE help_category_id = 1)", - "alias": "name", - "function": null, - "subquery": "SELECT" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CaseExpression", - "value": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1 /* */", - "alias": null, - "function": null, - "subquery": null - }, - "conditions": [], - "results": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Some", - "expr": "\"Some\"", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Other", - "expr": "\"Other\"", - "alias": null, - "function": null, - "subquery": null - } - ], - "compare_values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "2", - "alias": null, - "function": null, - "subquery": null - } - ], - "else_result": null, - "alias": null, - "expr": "CASE 1 /* */ WHEN 1 THEN \"Some\" WHEN 2 THEN \"Other\" END" - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "a", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 53 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase5.in deleted file mode 100644 index af3dbe02..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase5.in +++ /dev/null @@ -1,2 +0,0 @@ -select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name, -test=case 1 /* */ when 1 then "Some" when 2 then "Other" end FROM a; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase5.out deleted file mode 100644 index 3521358a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCase5.out +++ /dev/null @@ -1,613 +0,0 @@ -{ - "query": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ntest=case 1 /* */ when 1 then \"Some\" when 2 then \"Other\" end FROM a;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ntest=case 1 /* */ when 1 then \"Some\" when 2 then \"Other\" end FROM a;", - "len": 150, - "last": 150, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mysql", - "value": "mysql", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category", - "value": "help_category", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category_id", - "value": "help_category_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "case", - "value": "CASE", - "keyword": "CASE", - "type": 1, - "flags": 3, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* */", - "value": "/* */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Some\"", - "value": "Some", - "keyword": null, - "type": 7, - "flags": 2, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Other\"", - "value": "Other", - "keyword": null, - "type": 7, - "flags": 2, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "end", - "value": "end", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 147 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 58, - "idx": 58 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(SELECT name FROM mysql.help_category WHERE help_category_id = 1)", - "alias": "name", - "function": null, - "subquery": "SELECT" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "test", - "expr": "test=CASE 1 /* */ WHEN 1 THEN \"Some\" WHEN 2 THEN \"Other\" END", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "a", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 55 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias1.in deleted file mode 100644 index fe81f9d7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias1.in +++ /dev/null @@ -1,2 +0,0 @@ -select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name, -case /* */ when 1=1 then "Some" when 2=1 then "Other" end /* */ AS /* */ foo FROM a; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias1.out deleted file mode 100644 index 29eef698..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias1.out +++ /dev/null @@ -1,723 +0,0 @@ -{ - "query": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase /* */ when 1=1 then \"Some\" when 2=1 then \"Other\" end /* */ AS /* */ foo FROM a;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase /* */ when 1=1 then \"Some\" when 2=1 then \"Other\" end /* */ AS /* */ foo FROM a;", - "len": 166, - "last": 166, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mysql", - "value": "mysql", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category", - "value": "help_category", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category_id", - "value": "help_category_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "case", - "value": "CASE", - "keyword": "CASE", - "type": 1, - "flags": 3, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* */", - "value": "/* */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Some\"", - "value": "Some", - "keyword": null, - "type": 7, - "flags": 2, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Other\"", - "value": "Other", - "keyword": null, - "type": 7, - "flags": 2, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "end", - "value": "end", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* */", - "value": "/* */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* */", - "value": "/* */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 154 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 159 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 163 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 164 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 165 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 66, - "idx": 66 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(SELECT name FROM mysql.help_category WHERE help_category_id = 1)", - "alias": "name", - "function": null, - "subquery": "SELECT" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CaseExpression", - "value": null, - "conditions": [ - [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": false, - "expr": "1=1" - } - ], - [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": false, - "expr": "2=1" - } - ] - ], - "results": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Some", - "expr": "\"Some\"", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Other", - "expr": "\"Other\"", - "alias": null, - "function": null, - "subquery": null - } - ], - "compare_values": [], - "else_result": null, - "alias": "foo", - "expr": "CASE WHEN 1=1 THEN \"Some\" WHEN 2=1 THEN \"Other\" END AS `foo`" - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "a", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 63 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias2.in deleted file mode 100644 index 1288173e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias2.in +++ /dev/null @@ -1,2 +0,0 @@ -select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name, -case /* */ when 1=1 then "Some" when 2=1 then "Other" end /* */ foo FROM a; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias2.out deleted file mode 100644 index 5bb75f26..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias2.out +++ /dev/null @@ -1,687 +0,0 @@ -{ - "query": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase /* */ when 1=1 then \"Some\" when 2=1 then \"Other\" end /* */ foo FROM a;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase /* */ when 1=1 then \"Some\" when 2=1 then \"Other\" end /* */ foo FROM a;", - "len": 157, - "last": 157, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mysql", - "value": "mysql", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category", - "value": "help_category", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category_id", - "value": "help_category_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "case", - "value": "CASE", - "keyword": "CASE", - "type": 1, - "flags": 3, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* */", - "value": "/* */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Some\"", - "value": "Some", - "keyword": null, - "type": 7, - "flags": 2, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Other\"", - "value": "Other", - "keyword": null, - "type": 7, - "flags": 2, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "end", - "value": "end", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* */", - "value": "/* */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 150 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 154 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 62, - "idx": 62 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(SELECT name FROM mysql.help_category WHERE help_category_id = 1)", - "alias": "name", - "function": null, - "subquery": "SELECT" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CaseExpression", - "value": null, - "conditions": [ - [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": false, - "expr": "1=1" - } - ], - [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": false, - "expr": "2=1" - } - ] - ], - "results": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Some", - "expr": "\"Some\"", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Other", - "expr": "\"Other\"", - "alias": null, - "function": null, - "subquery": null - } - ], - "compare_values": [], - "else_result": null, - "alias": "foo", - "expr": "CASE WHEN 1=1 THEN \"Some\" WHEN 2=1 THEN \"Other\" END AS `foo`" - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "a", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 59 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias3.in deleted file mode 100644 index 2da0fe86..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias3.in +++ /dev/null @@ -1,2 +0,0 @@ -select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name, -test=case 1 /* */ when 1 then "Some" when 2 then "Other" end /* */ AS /* */ foo FROM a; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias3.out deleted file mode 100644 index de725d7d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias3.out +++ /dev/null @@ -1,685 +0,0 @@ -{ - "query": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ntest=case 1 /* */ when 1 then \"Some\" when 2 then \"Other\" end /* */ AS /* */ foo FROM a;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ntest=case 1 /* */ when 1 then \"Some\" when 2 then \"Other\" end /* */ AS /* */ foo FROM a;", - "len": 169, - "last": 169, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mysql", - "value": "mysql", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category", - "value": "help_category", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category_id", - "value": "help_category_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "case", - "value": "CASE", - "keyword": "CASE", - "type": 1, - "flags": 3, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* */", - "value": "/* */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Some\"", - "value": "Some", - "keyword": null, - "type": 7, - "flags": 2, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Other\"", - "value": "Other", - "keyword": null, - "type": 7, - "flags": 2, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "end", - "value": "end", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* */", - "value": "/* */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* */", - "value": "/* */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 162 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 166 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 168 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 66, - "idx": 66 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(SELECT name FROM mysql.help_category WHERE help_category_id = 1)", - "alias": "name", - "function": null, - "subquery": "SELECT" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "test", - "expr": "test=CASE 1 /* */ WHEN 1 THEN \"Some\" WHEN 2 THEN \"Other\" END AS `foo`", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "a", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 63 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias4.in deleted file mode 100644 index b4d56238..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias4.in +++ /dev/null @@ -1,2 +0,0 @@ -select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name, -test=case 1 /* */ when 1 then "Some" when 2 then "Other" end /* */ foo FROM a; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias4.out deleted file mode 100644 index 1608f16f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias4.out +++ /dev/null @@ -1,649 +0,0 @@ -{ - "query": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ntest=case 1 /* */ when 1 then \"Some\" when 2 then \"Other\" end /* */ foo FROM a;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ntest=case 1 /* */ when 1 then \"Some\" when 2 then \"Other\" end /* */ foo FROM a;", - "len": 160, - "last": 160, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mysql", - "value": "mysql", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category", - "value": "help_category", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category_id", - "value": "help_category_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "case", - "value": "CASE", - "keyword": "CASE", - "type": 1, - "flags": 3, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* */", - "value": "/* */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Some\"", - "value": "Some", - "keyword": null, - "type": 7, - "flags": 2, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Other\"", - "value": "Other", - "keyword": null, - "type": 7, - "flags": 2, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "end", - "value": "end", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* */", - "value": "/* */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 153 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 159 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 62, - "idx": 62 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(SELECT name FROM mysql.help_category WHERE help_category_id = 1)", - "alias": "name", - "function": null, - "subquery": "SELECT" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "test", - "expr": "test=CASE 1 /* */ WHEN 1 THEN \"Some\" WHEN 2 THEN \"Other\" END AS `foo`", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "a", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 59 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias5.in deleted file mode 100644 index ec99ffbf..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias5.in +++ /dev/null @@ -1,2 +0,0 @@ -select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name, -case 1 when 1 then "Some" else "Other" end AS "string value" FROM a; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias5.out deleted file mode 100644 index 6662e820..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias5.out +++ /dev/null @@ -1,617 +0,0 @@ -{ - "query": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase 1 when 1 then \"Some\" else \"Other\" end AS \"string value\" FROM a;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase 1 when 1 then \"Some\" else \"Other\" end AS \"string value\" FROM a;", - "len": 150, - "last": 150, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mysql", - "value": "mysql", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category", - "value": "help_category", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category_id", - "value": "help_category_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "case", - "value": "CASE", - "keyword": "CASE", - "type": 1, - "flags": 3, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Some\"", - "value": "Some", - "keyword": null, - "type": 7, - "flags": 2, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "else", - "value": "ELSE", - "keyword": "ELSE", - "type": 1, - "flags": 3, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Other\"", - "value": "Other", - "keyword": null, - "type": 7, - "flags": 2, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "end", - "value": "end", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"string value\"", - "value": "string value", - "keyword": null, - "type": 7, - "flags": 2, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 147 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 54, - "idx": 54 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(SELECT name FROM mysql.help_category WHERE help_category_id = 1)", - "alias": "name", - "function": null, - "subquery": "SELECT" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CaseExpression", - "value": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - }, - "conditions": [], - "results": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Some", - "expr": "\"Some\"", - "alias": null, - "function": null, - "subquery": null - } - ], - "compare_values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - } - ], - "else_result": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Other", - "expr": "\"Other\"", - "alias": null, - "function": null, - "subquery": null - }, - "alias": "string value", - "expr": "CASE 1 WHEN 1 THEN \"Some\" ELSE \"Other\" END AS `string value`" - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "a", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 51 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias6.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias6.in deleted file mode 100644 index e964f94c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias6.in +++ /dev/null @@ -1,2 +0,0 @@ -select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name, -case 1 when 1 then "Some" else "Other" end AS `symbol_value` FROM a; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias6.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias6.out deleted file mode 100644 index 23c40668..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAlias6.out +++ /dev/null @@ -1,617 +0,0 @@ -{ - "query": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase 1 when 1 then \"Some\" else \"Other\" end AS `symbol_value` FROM a;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase 1 when 1 then \"Some\" else \"Other\" end AS `symbol_value` FROM a;", - "len": 150, - "last": 150, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mysql", - "value": "mysql", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category", - "value": "help_category", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category_id", - "value": "help_category_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "case", - "value": "CASE", - "keyword": "CASE", - "type": 1, - "flags": 3, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Some\"", - "value": "Some", - "keyword": null, - "type": 7, - "flags": 2, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "else", - "value": "ELSE", - "keyword": "ELSE", - "type": 1, - "flags": 3, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Other\"", - "value": "Other", - "keyword": null, - "type": 7, - "flags": 2, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "end", - "value": "end", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`symbol_value`", - "value": "symbol_value", - "keyword": null, - "type": 8, - "flags": 2, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 147 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 54, - "idx": 54 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(SELECT name FROM mysql.help_category WHERE help_category_id = 1)", - "alias": "name", - "function": null, - "subquery": "SELECT" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CaseExpression", - "value": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - }, - "conditions": [], - "results": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Some", - "expr": "\"Some\"", - "alias": null, - "function": null, - "subquery": null - } - ], - "compare_values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - } - ], - "else_result": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Other", - "expr": "\"Other\"", - "alias": null, - "function": null, - "subquery": null - }, - "alias": "symbol_value", - "expr": "CASE 1 WHEN 1 THEN \"Some\" ELSE \"Other\" END AS `symbol_value`" - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "a", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 51 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAliasErr1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAliasErr1.in deleted file mode 100644 index b00b077d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAliasErr1.in +++ /dev/null @@ -1,2 +0,0 @@ -select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name, -case 1 when 1 then "Some" else "Other" end AS AS foo FROM a; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAliasErr1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAliasErr1.out deleted file mode 100644 index c5abcd9d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAliasErr1.out +++ /dev/null @@ -1,664 +0,0 @@ -{ - "query": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase 1 when 1 then \"Some\" else \"Other\" end AS AS foo FROM a;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase 1 when 1 then \"Some\" else \"Other\" end AS AS foo FROM a;", - "len": 142, - "last": 142, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mysql", - "value": "mysql", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category", - "value": "help_category", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category_id", - "value": "help_category_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "case", - "value": "CASE", - "keyword": "CASE", - "type": 1, - "flags": 3, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Some\"", - "value": "Some", - "keyword": null, - "type": 7, - "flags": 2, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "else", - "value": "ELSE", - "keyword": "ELSE", - "type": 1, - "flags": 3, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Other\"", - "value": "Other", - "keyword": null, - "type": 7, - "flags": 2, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "end", - "value": "end", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 134 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 56, - "idx": 56 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(SELECT name FROM mysql.help_category WHERE help_category_id = 1)", - "alias": "name", - "function": null, - "subquery": "SELECT" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CaseExpression", - "value": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - }, - "conditions": [], - "results": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Some", - "expr": "\"Some\"", - "alias": null, - "function": null, - "subquery": null - } - ], - "compare_values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - } - ], - "else_result": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Other", - "expr": "\"Other\"", - "alias": null, - "function": null, - "subquery": null - }, - "alias": null, - "expr": "CASE 1 WHEN 1 THEN \"Some\" ELSE \"Other\" END" - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "a", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 53 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Potential duplicate alias of CASE expression.", - { - "@type": "@49" - }, - 0 - ], - [ - "An alias was expected after AS.", - { - "@type": "@48" - }, - 0 - ], - [ - "Unrecognized keyword.", - { - "@type": "@49" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@51" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAliasErr2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAliasErr2.in deleted file mode 100644 index 86117131..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAliasErr2.in +++ /dev/null @@ -1,2 +0,0 @@ -select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name, -case 1 when 1 then "Some" else "Other" end AS FROM a; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAliasErr2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAliasErr2.out deleted file mode 100644 index 23e2297e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAliasErr2.out +++ /dev/null @@ -1,607 +0,0 @@ -{ - "query": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase 1 when 1 then \"Some\" else \"Other\" end AS FROM a;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase 1 when 1 then \"Some\" else \"Other\" end AS FROM a;", - "len": 135, - "last": 135, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mysql", - "value": "mysql", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category", - "value": "help_category", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category_id", - "value": "help_category_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "case", - "value": "CASE", - "keyword": "CASE", - "type": 1, - "flags": 3, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Some\"", - "value": "Some", - "keyword": null, - "type": 7, - "flags": 2, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "else", - "value": "ELSE", - "keyword": "ELSE", - "type": 1, - "flags": 3, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Other\"", - "value": "Other", - "keyword": null, - "type": 7, - "flags": 2, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "end", - "value": "end", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 134 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 52, - "idx": 52 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(SELECT name FROM mysql.help_category WHERE help_category_id = 1)", - "alias": "name", - "function": null, - "subquery": "SELECT" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CaseExpression", - "value": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - }, - "conditions": [], - "results": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Some", - "expr": "\"Some\"", - "alias": null, - "function": null, - "subquery": null - } - ], - "compare_values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - } - ], - "else_result": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Other", - "expr": "\"Other\"", - "alias": null, - "function": null, - "subquery": null - }, - "alias": null, - "expr": "CASE 1 WHEN 1 THEN \"Some\" ELSE \"Other\" END" - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "a", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 49 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "An alias expected after AS but got FROM", - { - "@type": "@49" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAliasErr3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAliasErr3.in deleted file mode 100644 index fde3e44c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAliasErr3.in +++ /dev/null @@ -1,2 +0,0 @@ -select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name, -case 1 when 1 then "Some" else "Other" end AS foo bar FROM a; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAliasErr3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAliasErr3.out deleted file mode 100644 index b11e703b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAliasErr3.out +++ /dev/null @@ -1,650 +0,0 @@ -{ - "query": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase 1 when 1 then \"Some\" else \"Other\" end AS foo bar FROM a;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase 1 when 1 then \"Some\" else \"Other\" end AS foo bar FROM a;", - "len": 143, - "last": 143, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mysql", - "value": "mysql", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category", - "value": "help_category", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category_id", - "value": "help_category_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "case", - "value": "CASE", - "keyword": "CASE", - "type": 1, - "flags": 3, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Some\"", - "value": "Some", - "keyword": null, - "type": 7, - "flags": 2, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "else", - "value": "ELSE", - "keyword": "ELSE", - "type": 1, - "flags": 3, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Other\"", - "value": "Other", - "keyword": null, - "type": 7, - "flags": 2, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "end", - "value": "end", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "bar", - "value": "bar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 56, - "idx": 56 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(SELECT name FROM mysql.help_category WHERE help_category_id = 1)", - "alias": "name", - "function": null, - "subquery": "SELECT" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CaseExpression", - "value": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - }, - "conditions": [], - "results": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Some", - "expr": "\"Some\"", - "alias": null, - "function": null, - "subquery": null - } - ], - "compare_values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - } - ], - "else_result": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Other", - "expr": "\"Other\"", - "alias": null, - "function": null, - "subquery": null - }, - "alias": "foo", - "expr": "CASE 1 WHEN 1 THEN \"Some\" ELSE \"Other\" END AS `foo`" - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "a", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 53 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "An alias was previously found.", - { - "@type": "@51" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@51" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAliasErr4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAliasErr4.in deleted file mode 100644 index 61c20141..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAliasErr4.in +++ /dev/null @@ -1 +0,0 @@ -SELECT CASE WHEN 2 IS NULL THEN "this is true" ELSE "this is false" END AS ; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAliasErr4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAliasErr4.out deleted file mode 100644 index 16656e81..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseAliasErr4.out +++ /dev/null @@ -1,341 +0,0 @@ -{ - "query": "SELECT CASE WHEN 2 IS NULL THEN \"this is true\" ELSE \"this is false\" END AS ;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT CASE WHEN 2 IS NULL THEN \"this is true\" ELSE \"this is false\" END AS ;", - "len": 76, - "last": 76, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CASE", - "value": "CASE", - "keyword": "CASE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHEN", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IS", - "value": "IS", - "keyword": "IS", - "type": 1, - "flags": 3, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "THEN", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"this is true\"", - "value": "this is true", - "keyword": null, - "type": 7, - "flags": 2, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ELSE", - "value": "ELSE", - "keyword": "ELSE", - "type": 1, - "flags": 3, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"this is false\"", - "value": "this is false", - "keyword": null, - "type": 7, - "flags": 2, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "END", - "value": "END", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 26, - "idx": 26 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CaseExpression", - "value": null, - "conditions": [ - [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": false, - "expr": "2 IS NULL" - } - ] - ], - "results": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "this is true", - "expr": "\"this is true\"", - "alias": null, - "function": null, - "subquery": null - } - ], - "compare_values": [], - "else_result": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "this is false", - "expr": "\"this is false\"", - "alias": null, - "function": null, - "subquery": null - }, - "alias": null, - "expr": "CASE WHEN 2 IS NULL THEN \"this is true\" ELSE \"this is false\" END" - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 23 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "An alias was expected after AS.", - { - "@type": "@25" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr1.in deleted file mode 100644 index d0fbf101..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr1.in +++ /dev/null @@ -1 +0,0 @@ -select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name, case 1 then 1 then "Some" else "Other" end FROM a; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr1.out deleted file mode 100644 index 25240b21..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr1.out +++ /dev/null @@ -1,614 +0,0 @@ -{ - "query": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name, case 1 then 1 then \"Some\" else \"Other\" end FROM a;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name, case 1 then 1 then \"Some\" else \"Other\" end FROM a;", - "len": 132, - "last": 132, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mysql", - "value": "mysql", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category", - "value": "help_category", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category_id", - "value": "help_category_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "case", - "value": "CASE", - "keyword": "CASE", - "type": 1, - "flags": 3, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Some\"", - "value": "Some", - "keyword": null, - "type": 7, - "flags": 2, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "else", - "value": "ELSE", - "keyword": "ELSE", - "type": 1, - "flags": 3, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Other\"", - "value": "Other", - "keyword": null, - "type": 7, - "flags": 2, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "end", - "value": "end", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 50, - "idx": 50 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(SELECT name FROM mysql.help_category WHERE help_category_id = 1)", - "alias": "name", - "function": null, - "subquery": "SELECT" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CaseExpression", - "value": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - }, - "conditions": [], - "results": [], - "compare_values": [], - "else_result": null, - "alias": null, - "expr": "" - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "a", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 47 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected keyword.", - { - "@type": "@33" - }, - 0 - ], - [ - "Unexpected end of CASE expression", - { - "@type": "@32" - }, - 0 - ], - [ - "Unrecognized keyword.", - { - "@type": "@33" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@35" - }, - 0 - ], - [ - "Unrecognized keyword.", - { - "@type": "@37" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@39" - }, - 0 - ], - [ - "Unrecognized keyword.", - { - "@type": "@41" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@43" - }, - 0 - ], - [ - "Unrecognized keyword.", - { - "@type": "@45" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr2.in deleted file mode 100644 index 90b7b9a5..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr2.in +++ /dev/null @@ -1,2 +0,0 @@ -select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name, -case then 1=1 then "Some" else "Other" end FROM a; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr2.out deleted file mode 100644 index cd69677b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr2.out +++ /dev/null @@ -1,619 +0,0 @@ -{ - "query": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase then 1=1 then \"Some\" else \"Other\" end FROM a;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase then 1=1 then \"Some\" else \"Other\" end FROM a;", - "len": 132, - "last": 132, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mysql", - "value": "mysql", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category", - "value": "help_category", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category_id", - "value": "help_category_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "case", - "value": "CASE", - "keyword": "CASE", - "type": 1, - "flags": 3, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Some\"", - "value": "Some", - "keyword": null, - "type": 7, - "flags": 2, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "else", - "value": "ELSE", - "keyword": "ELSE", - "type": 1, - "flags": 3, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Other\"", - "value": "Other", - "keyword": null, - "type": 7, - "flags": 2, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "end", - "value": "end", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 50, - "idx": 50 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(SELECT name FROM mysql.help_category WHERE help_category_id = 1)", - "alias": "name", - "function": null, - "subquery": "SELECT" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CaseExpression", - "value": null, - "conditions": [], - "results": [], - "compare_values": [], - "else_result": null, - "alias": null, - "expr": "" - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "a", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 47 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected keyword.", - { - "@type": "@31" - }, - 0 - ], - [ - "Unexpected end of CASE expression", - { - "@type": "@30" - }, - 0 - ], - [ - "Unrecognized keyword.", - { - "@type": "@31" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@33" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@34" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@35" - }, - 0 - ], - [ - "Unrecognized keyword.", - { - "@type": "@37" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@39" - }, - 0 - ], - [ - "Unrecognized keyword.", - { - "@type": "@41" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@43" - }, - 0 - ], - [ - "Unrecognized keyword.", - { - "@type": "@45" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr3.in deleted file mode 100644 index 9461c0ed..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr3.in +++ /dev/null @@ -1,2 +0,0 @@ -select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name, -case when 1=1 when "Some" else "Other" end FROM a; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr3.out deleted file mode 100644 index b5737709..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr3.out +++ /dev/null @@ -1,600 +0,0 @@ -{ - "query": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase when 1=1 when \"Some\" else \"Other\" end FROM a;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase when 1=1 when \"Some\" else \"Other\" end FROM a;", - "len": 132, - "last": 132, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mysql", - "value": "mysql", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category", - "value": "help_category", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category_id", - "value": "help_category_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "case", - "value": "CASE", - "keyword": "CASE", - "type": 1, - "flags": 3, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Some\"", - "value": "Some", - "keyword": null, - "type": 7, - "flags": 2, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "else", - "value": "ELSE", - "keyword": "ELSE", - "type": 1, - "flags": 3, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Other\"", - "value": "Other", - "keyword": null, - "type": 7, - "flags": 2, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "end", - "value": "end", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 50, - "idx": 50 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(SELECT name FROM mysql.help_category WHERE help_category_id = 1)", - "alias": "name", - "function": null, - "subquery": "SELECT" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CaseExpression", - "value": null, - "conditions": [ - [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": false, - "expr": "1=1" - } - ] - ], - "results": [], - "compare_values": [], - "else_result": null, - "alias": null, - "expr": "" - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "a", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 47 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected keyword.", - { - "@type": "@37" - }, - 0 - ], - [ - "Unexpected end of CASE expression", - { - "@type": "@36" - }, - 0 - ], - [ - "Unrecognized keyword.", - { - "@type": "@37" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@39" - }, - 0 - ], - [ - "Unrecognized keyword.", - { - "@type": "@41" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@43" - }, - 0 - ], - [ - "Unrecognized keyword.", - { - "@type": "@45" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr4.in deleted file mode 100644 index e2fa19f1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr4.in +++ /dev/null @@ -1,2 +0,0 @@ -select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name, -case 1 then 1 when "Some" else "Other" end FROM a; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr4.out deleted file mode 100644 index e7e97fd9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr4.out +++ /dev/null @@ -1,614 +0,0 @@ -{ - "query": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase 1 then 1 when \"Some\" else \"Other\" end FROM a;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase 1 then 1 when \"Some\" else \"Other\" end FROM a;", - "len": 132, - "last": 132, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mysql", - "value": "mysql", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category", - "value": "help_category", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category_id", - "value": "help_category_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "case", - "value": "CASE", - "keyword": "CASE", - "type": 1, - "flags": 3, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Some\"", - "value": "Some", - "keyword": null, - "type": 7, - "flags": 2, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "else", - "value": "ELSE", - "keyword": "ELSE", - "type": 1, - "flags": 3, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Other\"", - "value": "Other", - "keyword": null, - "type": 7, - "flags": 2, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "end", - "value": "end", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 50, - "idx": 50 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(SELECT name FROM mysql.help_category WHERE help_category_id = 1)", - "alias": "name", - "function": null, - "subquery": "SELECT" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CaseExpression", - "value": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - }, - "conditions": [], - "results": [], - "compare_values": [], - "else_result": null, - "alias": null, - "expr": "" - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "a", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 47 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected keyword.", - { - "@type": "@33" - }, - 0 - ], - [ - "Unexpected end of CASE expression", - { - "@type": "@32" - }, - 0 - ], - [ - "Unrecognized keyword.", - { - "@type": "@33" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@35" - }, - 0 - ], - [ - "Unrecognized keyword.", - { - "@type": "@37" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@39" - }, - 0 - ], - [ - "Unrecognized keyword.", - { - "@type": "@41" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@43" - }, - 0 - ], - [ - "Unrecognized keyword.", - { - "@type": "@45" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr5.in deleted file mode 100644 index 64873750..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr5.in +++ /dev/null @@ -1,2 +0,0 @@ -select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name, -case 1 when 1 then "Some" when 2 when "Other" end FROM a; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr5.out deleted file mode 100644 index c0948c61..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectCaseErr5.out +++ /dev/null @@ -1,654 +0,0 @@ -{ - "query": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase 1 when 1 then \"Some\" when 2 when \"Other\" end FROM a;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "select (SELECT name FROM mysql.help_category WHERE help_category_id = 1) as name,\ncase 1 when 1 then \"Some\" when 2 when \"Other\" end FROM a;", - "len": 139, - "last": 139, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "mysql", - "value": "mysql", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category", - "value": "help_category", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "help_category_id", - "value": "help_category_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "case", - "value": "CASE", - "keyword": "CASE", - "type": 1, - "flags": 3, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "then", - "value": "THEN", - "keyword": "THEN", - "type": 1, - "flags": 3, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Some\"", - "value": "Some", - "keyword": null, - "type": 7, - "flags": 2, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "when", - "value": "WHEN", - "keyword": "WHEN", - "type": 1, - "flags": 3, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Other\"", - "value": "Other", - "keyword": null, - "type": 7, - "flags": 2, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "end", - "value": "end", - "keyword": "END", - "type": 1, - "flags": 1, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 137 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 54, - "idx": 54 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(SELECT name FROM mysql.help_category WHERE help_category_id = 1)", - "alias": "name", - "function": null, - "subquery": "SELECT" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CaseExpression", - "value": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - }, - "conditions": [], - "results": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Some", - "expr": "\"Some\"", - "alias": null, - "function": null, - "subquery": null - } - ], - "compare_values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "2", - "alias": null, - "function": null, - "subquery": null - } - ], - "else_result": null, - "alias": null, - "expr": "" - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "a", - "column": null, - "expr": "a", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 51 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected keyword.", - { - "@type": "@45" - }, - 0 - ], - [ - "Unexpected end of CASE expression", - { - "@type": "@44" - }, - 0 - ], - [ - "Unrecognized keyword.", - { - "@type": "@45" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@47" - }, - 0 - ], - [ - "Unrecognized keyword.", - { - "@type": "@49" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectEndOptions1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectEndOptions1.in deleted file mode 100644 index cc11abb0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectEndOptions1.in +++ /dev/null @@ -1 +0,0 @@ -SELECT pid, name2 FROM tablename WHERE pid = 20 /* FOR UPDATE end_option */ FOR UPDATE \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectEndOptions1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectEndOptions1.out deleted file mode 100644 index 8d0f313e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectEndOptions1.out +++ /dev/null @@ -1,312 +0,0 @@ -{ - "query": "SELECT pid, name2 FROM tablename WHERE pid = 20 /* FOR UPDATE end_option */ FOR UPDATE", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT pid, name2 FROM tablename WHERE pid = 20 /* FOR UPDATE end_option */ FOR UPDATE", - "len": 86, - "last": 86, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pid", - "value": "pid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name2", - "value": "name2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tablename", - "value": "tablename", - "keyword": null, - "type": 0, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pid", - "value": "pid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "20", - "value": 20, - "keyword": null, - "type": 6, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* FOR UPDATE end_option */", - "value": "/* FOR UPDATE end_option */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FOR UPDATE", - "value": "FOR UPDATE", - "keyword": "FOR UPDATE", - "type": 1, - "flags": 7, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 23, - "idx": 23 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "pid", - "expr": "pid", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "name2", - "expr": "name2", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "tablename", - "column": null, - "expr": "tablename", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "pid" - ], - "isOperator": false, - "expr": "pid = 20" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "FOR UPDATE" - } - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 21 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectEndOptions2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectEndOptions2.in deleted file mode 100644 index 2e44c63c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectEndOptions2.in +++ /dev/null @@ -1,2 +0,0 @@ -SELECT pid, name2 FROM tablename WHERE pid = 20 -/* LOCK IN SHARE MODE end_option */ LOCK IN SHARE MODE \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectEndOptions2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectEndOptions2.out deleted file mode 100644 index 3dd07350..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectEndOptions2.out +++ /dev/null @@ -1,312 +0,0 @@ -{ - "query": "SELECT pid, name2 FROM tablename WHERE pid = 20\n/* LOCK IN SHARE MODE end_option */ LOCK IN SHARE MODE", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT pid, name2 FROM tablename WHERE pid = 20\n/* LOCK IN SHARE MODE end_option */ LOCK IN SHARE MODE", - "len": 102, - "last": 102, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pid", - "value": "pid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name2", - "value": "name2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tablename", - "value": "tablename", - "keyword": null, - "type": 0, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pid", - "value": "pid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "20", - "value": 20, - "keyword": null, - "type": 6, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* LOCK IN SHARE MODE end_option */", - "value": "/* LOCK IN SHARE MODE end_option */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCK IN SHARE MODE", - "value": "LOCK IN SHARE MODE", - "keyword": "LOCK IN SHARE MODE", - "type": 1, - "flags": 7, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 23, - "idx": 23 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "pid", - "expr": "pid", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "name2", - "expr": "name2", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "tablename", - "column": null, - "expr": "tablename", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "pid" - ], - "isOperator": false, - "expr": "pid = 20" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "LOCK IN SHARE MODE" - } - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 21 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectEndOptionsErr.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectEndOptionsErr.in deleted file mode 100644 index d6c6071e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectEndOptionsErr.in +++ /dev/null @@ -1,3 +0,0 @@ -SELECT pid, name2 FROM tablename WHERE pid = 20 -/* USE both end_option, gives error */ -FOR UPDATE LOCK IN SHARE MODE \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectEndOptionsErr.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectEndOptionsErr.out deleted file mode 100644 index 63c14053..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectEndOptionsErr.out +++ /dev/null @@ -1,339 +0,0 @@ -{ - "query": "SELECT pid, name2 FROM tablename WHERE pid = 20\n/* USE both end_option, gives error */\nFOR UPDATE LOCK IN SHARE MODE", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT pid, name2 FROM tablename WHERE pid = 20\n/* USE both end_option, gives error */\nFOR UPDATE LOCK IN SHARE MODE", - "len": 116, - "last": 116, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pid", - "value": "pid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name2", - "value": "name2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tablename", - "value": "tablename", - "keyword": null, - "type": 0, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pid", - "value": "pid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "20", - "value": 20, - "keyword": null, - "type": 6, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* USE both end_option, gives error */", - "value": "/* USE both end_option, gives error */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FOR UPDATE", - "value": "FOR UPDATE", - "keyword": "FOR UPDATE", - "type": 1, - "flags": 7, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LOCK IN SHARE MODE", - "value": "LOCK IN SHARE MODE", - "keyword": "LOCK IN SHARE MODE", - "type": 1, - "flags": 7, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 25, - "idx": 25 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "pid", - "expr": "pid", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "name2", - "expr": "name2", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "tablename", - "column": null, - "expr": "tablename", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "pid" - ], - "isOperator": false, - "expr": "pid = 20" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "FOR UPDATE", - "3": "LOCK IN SHARE MODE" - } - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 23 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "This option conflicts with \"FOR UPDATE\".", - { - "@type": "@25" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectErr1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectErr1.in deleted file mode 100644 index 37a1c456..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectErr1.in +++ /dev/null @@ -1,14 +0,0 @@ -SELECT ALL DISTINCT MAX_STATEMENT_TIME = 10 - 1 + 2 AS result, - @idx, - id, - test.`users`.username AS -FROM - `test`.users - PARTITION (p1, p2) -WHERE - id > 0 -ORDER BY - username DESC, - id -LIMIT 2, 3; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectErr1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectErr1.out deleted file mode 100644 index dd8017d7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectErr1.out +++ /dev/null @@ -1,880 +0,0 @@ -{ - "query": "SELECT ALL DISTINCT MAX_STATEMENT_TIME = 10\n 1 + 2 AS result,\n @idx,\n id,\n test.`users`.username AS\nFROM\n `test`.users\n PARTITION (p1, p2)\nWHERE\n id > 0\nORDER BY\n username DESC,\n id\nLIMIT 2, 3;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT ALL DISTINCT MAX_STATEMENT_TIME = 10\n 1 + 2 AS result,\n @idx,\n id,\n test.`users`.username AS\nFROM\n `test`.users\n PARTITION (p1, p2)\nWHERE\n id > 0\nORDER BY\n username DESC,\n id\nLIMIT 2, 3;", - "len": 220, - "last": 220, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALL", - "value": "ALL", - "keyword": "ALL", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DISTINCT", - "value": "DISTINCT", - "keyword": "DISTINCT", - "type": 1, - "flags": 3, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "MAX_STATEMENT_TIME", - "value": "MAX_STATEMENT_TIME", - "keyword": "MAX_STATEMENT_TIME", - "type": 1, - "flags": 1, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+", - "value": "+", - "keyword": null, - "type": 2, - "flags": 1, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "result", - "value": "result", - "keyword": null, - "type": 0, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@idx", - "value": "idx", - "keyword": null, - "type": 8, - "flags": 1, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`users`", - "value": "users", - "keyword": null, - "type": 8, - "flags": 2, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`test`", - "value": "test", - "keyword": null, - "type": 8, - "flags": 2, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "users", - "value": "users", - "keyword": null, - "type": 0, - "flags": 0, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "PARTITION", - "value": "PARTITION", - "keyword": "PARTITION", - "type": 1, - "flags": 3, - "position": 138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 147 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p1", - "value": "p1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "p2", - "value": "p2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 153 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 162 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 169 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ">", - "value": ">", - "keyword": null, - "type": 2, - "flags": 2, - "position": 170 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 171 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 172 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 173 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ORDER BY", - "value": "ORDER BY", - "keyword": "ORDER BY", - "type": 1, - "flags": 7, - "position": 174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 182 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 187 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 195 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DESC", - "value": "DESC", - "keyword": "DESC", - "type": 1, - "flags": 3, - "position": 196 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 200 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 201 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 206 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 208 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIMIT", - "value": "LIMIT", - "keyword": "LIMIT", - "type": 1, - "flags": 3, - "position": 209 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 214 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 215 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 216 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 217 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 218 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 219 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 77, - "idx": 77 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1 + 2", - "alias": "result", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "@idx", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "id", - "expr": "id", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "test", - "table": "users", - "column": "username", - "expr": "test.`users`.username", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "test", - "table": "users", - "column": null, - "expr": "`test`.users", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "p1", - "p2" - ], - "values": [ - "p1", - "p2" - ] - }, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "id" - ], - "isOperator": false, - "expr": "id > 0" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OrderKeyword", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "username", - "expr": "username", - "alias": null, - "function": null, - "subquery": null - }, - "type": "DESC" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OrderKeyword", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "id", - "expr": "id", - "alias": null, - "function": null, - "subquery": null - }, - "type": "ASC" - } - ], - "limit": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Limit", - "offset": 2, - "rowCount": 3 - }, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ALL", - "3": { - "name": "MAX_STATEMENT_TIME", - "equals": true, - "expr": "10", - "value": "10" - }, - "13": "DISTINCT" - } - }, - "first": 0, - "last": 74 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "This option conflicts with \"ALL\".", - { - "@type": "@6" - }, - 0 - ], - [ - "An alias was expected.", - { - "@type": "@38" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectErr2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectErr2.in deleted file mode 100644 index 494d5b7b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectErr2.in +++ /dev/null @@ -1 +0,0 @@ -select * from foobar where foo = @ diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectErr2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectErr2.out deleted file mode 100644 index d1672346..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectErr2.out +++ /dev/null @@ -1,242 +0,0 @@ -{ - "query": "select * from foobar where foo = @\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "select * from foobar where foo = @\n", - "len": 35, - "last": 35, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "from", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foobar", - "value": "foobar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "where", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@", - "value": "", - "keyword": null, - "type": 8, - "flags": 1, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 16, - "idx": 16 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "foobar", - "column": null, - "expr": "foobar", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "foo", - "" - ], - "isOperator": false, - "expr": "foo = @" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 14 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [ - [ - "Variable name was expected.", - "\n", - 34, - 0 - ] - ], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectExists.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectExists.in deleted file mode 100644 index 98d89d79..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectExists.in +++ /dev/null @@ -1 +0,0 @@ -SELECT EXISTS(SELECT 1) diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectExists.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectExists.out deleted file mode 100644 index 0c800639..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectExists.out +++ /dev/null @@ -1,160 +0,0 @@ -{ - "query": "SELECT EXISTS(SELECT 1)\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT EXISTS(SELECT 1)\n", - "len": 24, - "last": 24, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "EXISTS", - "value": "EXISTS", - "keyword": "EXISTS", - "type": 1, - "flags": 35, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 10 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "EXISTS(SELECT 1)", - "alias": null, - "function": "EXISTS", - "subquery": "SELECT" - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 8 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectGroupBy.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectGroupBy.in deleted file mode 100644 index 3685e21b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectGroupBy.in +++ /dev/null @@ -1,6 +0,0 @@ -SELECT * FROM movie GROUP BY title; -SELECT * FROM movie GROUP BY 1; -SELECT * FROM movie GROUP BY year, title; -SELECT * FROM movie GROUP BY year WITH ROLLUP; -SELECT * FROM movie GROUP BY year, title WITH ROLLUP; -SELECT * FROM movie GROUP BY year, title WITH ROLLUP ORDER BY year ASC LIMIT 0, 2; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectGroupBy.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectGroupBy.out deleted file mode 100644 index e78f1012..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectGroupBy.out +++ /dev/null @@ -1,1440 +0,0 @@ -{ - "query": "SELECT * FROM movie GROUP BY title;\nSELECT * FROM movie GROUP BY 1;\nSELECT * FROM movie GROUP BY year, title;\nSELECT * FROM movie GROUP BY year WITH ROLLUP;\nSELECT * FROM movie GROUP BY year, title WITH ROLLUP;\nSELECT * FROM movie GROUP BY year, title WITH ROLLUP ORDER BY year ASC LIMIT 0, 2;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM movie GROUP BY title;\nSELECT * FROM movie GROUP BY 1;\nSELECT * FROM movie GROUP BY year, title;\nSELECT * FROM movie GROUP BY year WITH ROLLUP;\nSELECT * FROM movie GROUP BY year, title WITH ROLLUP;\nSELECT * FROM movie GROUP BY year, title WITH ROLLUP ORDER BY year ASC LIMIT 0, 2;\n", - "len": 294, - "last": 294, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "movie", - "value": "movie", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "GROUP BY", - "value": "GROUP BY", - "keyword": "GROUP BY", - "type": 1, - "flags": 7, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "title", - "value": "title", - "keyword": null, - "type": 0, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "movie", - "value": "movie", - "keyword": null, - "type": 0, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "GROUP BY", - "value": "GROUP BY", - "keyword": "GROUP BY", - "type": 1, - "flags": 7, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "movie", - "value": "movie", - "keyword": null, - "type": 0, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "GROUP BY", - "value": "GROUP BY", - "keyword": "GROUP BY", - "type": 1, - "flags": 7, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "year", - "value": "year", - "keyword": "YEAR", - "type": 1, - "flags": 41, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "title", - "value": "title", - "keyword": null, - "type": 0, - "flags": 0, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "movie", - "value": "movie", - "keyword": null, - "type": 0, - "flags": 0, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "GROUP BY", - "value": "GROUP BY", - "keyword": "GROUP BY", - "type": 1, - "flags": 7, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "year", - "value": "year", - "keyword": "YEAR", - "type": 1, - "flags": 41, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH ROLLUP", - "value": "WITH ROLLUP", - "keyword": "WITH ROLLUP", - "type": 1, - "flags": 7, - "position": 144 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 163 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 164 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 165 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 166 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 170 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "movie", - "value": "movie", - "keyword": null, - "type": 0, - "flags": 0, - "position": 171 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 176 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "GROUP BY", - "value": "GROUP BY", - "keyword": "GROUP BY", - "type": 1, - "flags": 7, - "position": 177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 185 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "year", - "value": "year", - "keyword": "YEAR", - "type": 1, - "flags": 41, - "position": 186 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 190 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 191 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "title", - "value": "title", - "keyword": null, - "type": 0, - "flags": 0, - "position": 192 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 197 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH ROLLUP", - "value": "WITH ROLLUP", - "keyword": "WITH ROLLUP", - "type": 1, - "flags": 7, - "position": 198 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 209 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 210 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 211 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 217 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 218 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 219 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 220 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 224 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "movie", - "value": "movie", - "keyword": null, - "type": 0, - "flags": 0, - "position": 225 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 230 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "GROUP BY", - "value": "GROUP BY", - "keyword": "GROUP BY", - "type": 1, - "flags": 7, - "position": 231 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 239 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "year", - "value": "year", - "keyword": "YEAR", - "type": 1, - "flags": 41, - "position": 240 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 244 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 245 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "title", - "value": "title", - "keyword": null, - "type": 0, - "flags": 0, - "position": 246 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 251 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH ROLLUP", - "value": "WITH ROLLUP", - "keyword": "WITH ROLLUP", - "type": 1, - "flags": 7, - "position": 252 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 263 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ORDER BY", - "value": "ORDER BY", - "keyword": "ORDER BY", - "type": 1, - "flags": 7, - "position": 264 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 272 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "year", - "value": "year", - "keyword": "YEAR", - "type": 1, - "flags": 41, - "position": 273 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 277 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ASC", - "value": "ASC", - "keyword": "ASC", - "type": 1, - "flags": 3, - "position": 278 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 281 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIMIT", - "value": "LIMIT", - "keyword": "LIMIT", - "type": 1, - "flags": 3, - "position": 282 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 287 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 288 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 289 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 290 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 291 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 292 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 293 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 107, - "idx": 107 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "movie", - "column": null, - "expr": "movie", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\GroupKeyword", - "type": null, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "title", - "expr": "title", - "alias": null, - "function": null, - "subquery": null - } - } - ], - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "movie", - "column": null, - "expr": "movie", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\GroupKeyword", - "type": null, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - } - } - ], - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 11, - "last": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "movie", - "column": null, - "expr": "movie", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\GroupKeyword", - "type": null, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "year", - "alias": null, - "function": null, - "subquery": null - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\GroupKeyword", - "type": null, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "title", - "expr": "title", - "alias": null, - "function": null, - "subquery": null - } - } - ], - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 24, - "last": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "movie", - "column": null, - "expr": "movie", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\GroupKeyword", - "type": null, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "year", - "alias": null, - "function": null, - "subquery": null - } - } - ], - "group_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "WITH ROLLUP" - } - }, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 40, - "last": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "movie", - "column": null, - "expr": "movie", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\GroupKeyword", - "type": null, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "year", - "alias": null, - "function": null, - "subquery": null - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\GroupKeyword", - "type": null, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "title", - "expr": "title", - "alias": null, - "function": null, - "subquery": null - } - } - ], - "group_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "WITH ROLLUP" - } - }, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 55, - "last": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "movie", - "column": null, - "expr": "movie", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\GroupKeyword", - "type": null, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "year", - "alias": null, - "function": null, - "subquery": null - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\GroupKeyword", - "type": null, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "title", - "expr": "title", - "alias": null, - "function": null, - "subquery": null - } - } - ], - "group_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "WITH ROLLUP" - } - }, - "having": null, - "order": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OrderKeyword", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "year", - "alias": null, - "function": null, - "subquery": null - }, - "type": "ASC" - } - ], - "limit": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Limit", - "offset": 0, - "rowCount": 2 - }, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 73, - "last": 103 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectGroupByErr.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectGroupByErr.in deleted file mode 100644 index 5fe50c9b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectGroupByErr.in +++ /dev/null @@ -1 +0,0 @@ -SELECT * FROM movie GROUP BY title WITH ROLLUP, year WITH ROLLUP; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectGroupByErr.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectGroupByErr.out deleted file mode 100644 index d3de26c6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectGroupByErr.out +++ /dev/null @@ -1,305 +0,0 @@ -{ - "query": "SELECT * FROM movie GROUP BY title WITH ROLLUP, year WITH ROLLUP;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM movie GROUP BY title WITH ROLLUP, year WITH ROLLUP;\n", - "len": 66, - "last": 66, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "movie", - "value": "movie", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "GROUP BY", - "value": "GROUP BY", - "keyword": "GROUP BY", - "type": 1, - "flags": 7, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "title", - "value": "title", - "keyword": null, - "type": 0, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH ROLLUP", - "value": "WITH ROLLUP", - "keyword": "WITH ROLLUP", - "type": 1, - "flags": 7, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "year", - "value": "year", - "keyword": "YEAR", - "type": 1, - "flags": 41, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH ROLLUP", - "value": "WITH ROLLUP", - "keyword": "WITH ROLLUP", - "type": 1, - "flags": 7, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 21, - "idx": 21 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "movie", - "column": null, - "expr": "movie", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\GroupKeyword", - "type": null, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "title", - "expr": "title", - "alias": null, - "function": null, - "subquery": null - } - } - ], - "group_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "WITH ROLLUP" - } - }, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 17 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected token.", - { - "@type": "@15" - }, - 0 - ], - [ - "Unrecognized keyword.", - { - "@type": "@17" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectGroupByWithComments.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectGroupByWithComments.in deleted file mode 100644 index a90d18f3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectGroupByWithComments.in +++ /dev/null @@ -1 +0,0 @@ -SELECT id, title FROM movie GROUP BY movie.id, /* removed_field, */ title; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectGroupByWithComments.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectGroupByWithComments.out deleted file mode 100644 index a9702631..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectGroupByWithComments.out +++ /dev/null @@ -1,336 +0,0 @@ -{ - "query": "SELECT id, title FROM movie GROUP BY movie.id, /* removed_field, */ title;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT id, title FROM movie GROUP BY movie.id, /* removed_field, */ title;\n", - "len": 75, - "last": 75, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "title", - "value": "title", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "movie", - "value": "movie", - "keyword": null, - "type": 0, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "GROUP BY", - "value": "GROUP BY", - "keyword": "GROUP BY", - "type": 1, - "flags": 7, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "movie", - "value": "movie", - "keyword": null, - "type": 0, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* removed_field, */", - "value": "/* removed_field, */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "title", - "value": "title", - "keyword": null, - "type": 0, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 24, - "idx": 24 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "id", - "expr": "id", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "title", - "expr": "title", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "movie", - "column": null, - "expr": "movie", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\GroupKeyword", - "type": null, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "movie", - "column": "id", - "expr": "movie.id", - "alias": null, - "function": null, - "subquery": null - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\GroupKeyword", - "type": null, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "title", - "expr": "title", - "alias": null, - "function": null, - "subquery": null - } - } - ], - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 20 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHint1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHint1.in deleted file mode 100644 index a29005b0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHint1.in +++ /dev/null @@ -1 +0,0 @@ -SELECT * FROM address FORCE INDEX (idx_fk_city_id) IGNORE KEY FOR GROUP BY (a, b,c) WHERE city_id<0; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHint1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHint1.out deleted file mode 100644 index d1aa4588..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHint1.out +++ /dev/null @@ -1,487 +0,0 @@ -{ - "query": "SELECT * FROM address FORCE INDEX (idx_fk_city_id) IGNORE KEY FOR GROUP BY (a, b,c) WHERE city_id<0;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM address FORCE INDEX (idx_fk_city_id) IGNORE KEY FOR GROUP BY (a, b,c) WHERE city_id<0;", - "len": 101, - "last": 101, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "address", - "value": "address", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FORCE", - "value": "FORCE", - "keyword": "FORCE", - "type": 1, - "flags": 3, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INDEX", - "value": "INDEX", - "keyword": "INDEX", - "type": 1, - "flags": 19, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "idx_fk_city_id", - "value": "idx_fk_city_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IGNORE", - "value": "IGNORE", - "keyword": "IGNORE", - "type": 1, - "flags": 3, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KEY", - "value": "KEY", - "keyword": "KEY", - "type": 1, - "flags": 19, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FOR", - "value": "FOR", - "keyword": "FOR", - "type": 1, - "flags": 3, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "GROUP BY", - "value": "GROUP BY", - "keyword": "GROUP BY", - "type": 1, - "flags": 7, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "city_id", - "value": "city_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "<", - "value": "<", - "keyword": null, - "type": 2, - "flags": 2, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 40, - "idx": 40 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "address", - "column": null, - "expr": "address", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IndexHint", - "type": "FORCE", - "indexOrKey": "INDEX", - "for": null, - "indexes": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(idx_fk_city_id)", - "alias": null, - "function": null, - "subquery": null - } - ] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IndexHint", - "type": "IGNORE", - "indexOrKey": "KEY", - "for": "GROUP BY", - "indexes": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(a, b,c)", - "alias": null, - "function": null, - "subquery": null - } - ] - } - ], - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "city_id" - ], - "isOperator": false, - "expr": "city_id<0" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 37 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHint2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHint2.in deleted file mode 100644 index 2022a163..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHint2.in +++ /dev/null @@ -1 +0,0 @@ -SELECT * FROM address USE INDEX (idx_fk_city_id) FORCE KEY FOR GROUP BY (a, b,c) WHERE city_id<0 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHint2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHint2.out deleted file mode 100644 index 0dd57ee5..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHint2.out +++ /dev/null @@ -1,478 +0,0 @@ -{ - "query": "SELECT * FROM address USE INDEX (idx_fk_city_id) FORCE KEY FOR GROUP BY (a, b,c) WHERE city_id<0", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM address USE INDEX (idx_fk_city_id) FORCE KEY FOR GROUP BY (a, b,c) WHERE city_id<0", - "len": 97, - "last": 97, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "address", - "value": "address", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USE", - "value": "USE", - "keyword": "USE", - "type": 1, - "flags": 3, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INDEX", - "value": "INDEX", - "keyword": "INDEX", - "type": 1, - "flags": 19, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "idx_fk_city_id", - "value": "idx_fk_city_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FORCE", - "value": "FORCE", - "keyword": "FORCE", - "type": 1, - "flags": 3, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KEY", - "value": "KEY", - "keyword": "KEY", - "type": 1, - "flags": 19, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FOR", - "value": "FOR", - "keyword": "FOR", - "type": 1, - "flags": 3, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "GROUP BY", - "value": "GROUP BY", - "keyword": "GROUP BY", - "type": 1, - "flags": 7, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "city_id", - "value": "city_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "<", - "value": "<", - "keyword": null, - "type": 2, - "flags": 2, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 39, - "idx": 39 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "address", - "column": null, - "expr": "address", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IndexHint", - "type": "USE", - "indexOrKey": "INDEX", - "for": null, - "indexes": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(idx_fk_city_id)", - "alias": null, - "function": null, - "subquery": null - } - ] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IndexHint", - "type": "FORCE", - "indexOrKey": "KEY", - "for": "GROUP BY", - "indexes": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(a, b,c)", - "alias": null, - "function": null, - "subquery": null - } - ] - } - ], - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "city_id" - ], - "isOperator": false, - "expr": "city_id<0" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 37 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHintErr1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHintErr1.in deleted file mode 100644 index 160e22fd..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHintErr1.in +++ /dev/null @@ -1 +0,0 @@ -SELECT * FROM address FORCE INT (idx_fk_city_id); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHintErr1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHintErr1.out deleted file mode 100644 index dccc8c62..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHintErr1.out +++ /dev/null @@ -1,261 +0,0 @@ -{ - "query": "SELECT * FROM address FORCE INT (idx_fk_city_id);", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM address FORCE INT (idx_fk_city_id);", - "len": 49, - "last": 49, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "address", - "value": "address", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FORCE", - "value": "FORCE", - "keyword": "FORCE", - "type": 1, - "flags": 3, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "idx_fk_city_id", - "value": "idx_fk_city_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 17, - "idx": 17 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "address", - "column": null, - "expr": "address", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IndexHint", - "type": "FORCE", - "indexOrKey": null, - "for": null, - "indexes": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(idx_fk_city_id)", - "alias": null, - "function": null, - "subquery": null - } - ] - } - ], - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 14 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected keyword.", - { - "@type": "@12" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHintErr2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHintErr2.in deleted file mode 100644 index bb5a7a55..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHintErr2.in +++ /dev/null @@ -1 +0,0 @@ -SELECT * FROM address FORCE abc (idx_fk_city_id); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHintErr2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHintErr2.out deleted file mode 100644 index f367006d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHintErr2.out +++ /dev/null @@ -1,263 +0,0 @@ -{ - "query": "SELECT * FROM address FORCE abc (idx_fk_city_id);", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM address FORCE abc (idx_fk_city_id);", - "len": 49, - "last": 49, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "address", - "value": "address", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FORCE", - "value": "FORCE", - "keyword": "FORCE", - "type": 1, - "flags": 3, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "abc", - "value": "abc", - "keyword": null, - "type": 0, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "idx_fk_city_id", - "value": "idx_fk_city_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 17, - "idx": 17 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "address", - "column": null, - "expr": "address", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": [], - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 14 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected token.", - { - "@type": "@12" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@14" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@15" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@16" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHintErr3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHintErr3.in deleted file mode 100644 index c310c7e5..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHintErr3.in +++ /dev/null @@ -1 +0,0 @@ -SELECT * FROM address FORCE INDEX FOR abc (idx_fk_city_id); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHintErr3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHintErr3.out deleted file mode 100644 index a392211a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHintErr3.out +++ /dev/null @@ -1,299 +0,0 @@ -{ - "query": "SELECT * FROM address FORCE INDEX FOR abc (idx_fk_city_id);", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM address FORCE INDEX FOR abc (idx_fk_city_id);", - "len": 59, - "last": 59, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "address", - "value": "address", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FORCE", - "value": "FORCE", - "keyword": "FORCE", - "type": 1, - "flags": 3, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INDEX", - "value": "INDEX", - "keyword": "INDEX", - "type": 1, - "flags": 19, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FOR", - "value": "FOR", - "keyword": "FOR", - "type": 1, - "flags": 3, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "abc", - "value": "abc", - "keyword": null, - "type": 0, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "idx_fk_city_id", - "value": "idx_fk_city_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 21, - "idx": 21 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "address", - "column": null, - "expr": "address", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": [], - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 18 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected token.", - { - "@type": "@16" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@18" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@19" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@20" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHintErr4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHintErr4.in deleted file mode 100644 index b87acb90..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHintErr4.in +++ /dev/null @@ -1 +0,0 @@ -SELECT * FROM address FORCE INDEX FOR INT (idx_fk_city_id); \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHintErr4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHintErr4.out deleted file mode 100644 index 0daa84bf..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIndexHintErr4.out +++ /dev/null @@ -1,297 +0,0 @@ -{ - "query": "SELECT * FROM address FORCE INDEX FOR INT (idx_fk_city_id);", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM address FORCE INDEX FOR INT (idx_fk_city_id);", - "len": 59, - "last": 59, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "address", - "value": "address", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FORCE", - "value": "FORCE", - "keyword": "FORCE", - "type": 1, - "flags": 3, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INDEX", - "value": "INDEX", - "keyword": "INDEX", - "type": 1, - "flags": 19, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FOR", - "value": "FOR", - "keyword": "FOR", - "type": 1, - "flags": 3, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INT", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "idx_fk_city_id", - "value": "idx_fk_city_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 21, - "idx": 21 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "address", - "column": null, - "expr": "address", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IndexHint", - "type": "FORCE", - "indexOrKey": "INDEX", - "for": null, - "indexes": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(idx_fk_city_id)", - "alias": null, - "function": null, - "subquery": null - } - ] - } - ], - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 18 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected keyword.", - { - "@type": "@16" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIntoOptions1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIntoOptions1.in deleted file mode 100644 index bae8e59b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIntoOptions1.in +++ /dev/null @@ -1,4 +0,0 @@ -SELECT a,b,a+b INTO OUTFILE '/tmp/result.txt' - FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '\"' - LINES TERMINATED BY '\n' - FROM test_table; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIntoOptions1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIntoOptions1.out deleted file mode 100644 index b8a8165f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIntoOptions1.out +++ /dev/null @@ -1,515 +0,0 @@ -{ - "query": "SELECT a,b,a+b INTO OUTFILE '/tmp/result.txt'\n FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '\\\"'\n LINES TERMINATED BY '\\n'\n FROM test_table;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT a,b,a+b INTO OUTFILE '/tmp/result.txt'\n FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '\\\"'\n LINES TERMINATED BY '\\n'\n FROM test_table;", - "len": 152, - "last": 152, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+", - "value": "+", - "keyword": null, - "type": 2, - "flags": 1, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OUTFILE", - "value": "OUTFILE", - "keyword": "OUTFILE", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'/tmp/result.txt'", - "value": "/tmp/result.txt", - "keyword": null, - "type": 7, - "flags": 1, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FIELDS", - "value": "FIELDS", - "keyword": "FIELDS", - "type": 1, - "flags": 1, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TERMINATED BY", - "value": "TERMINATED BY", - "keyword": "TERMINATED BY", - "type": 1, - "flags": 7, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "','", - "value": ",", - "keyword": null, - "type": 7, - "flags": 1, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OPTIONALLY", - "value": "OPTIONALLY", - "keyword": "OPTIONALLY", - "type": 1, - "flags": 3, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENCLOSED BY", - "value": "ENCLOSED BY", - "keyword": "ENCLOSED BY", - "type": 1, - "flags": 7, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'\\\"'", - "value": "\"", - "keyword": null, - "type": 7, - "flags": 1, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LINES", - "value": "LINES", - "keyword": "LINES", - "type": 1, - "flags": 3, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TERMINATED BY", - "value": "TERMINATED BY", - "keyword": "TERMINATED BY", - "type": 1, - "flags": 7, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'\\n'", - "value": "\n", - "keyword": null, - "type": 7, - "flags": 1, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test_table", - "value": "test_table", - "keyword": null, - "type": 0, - "flags": 0, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 39, - "idx": 39 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "a", - "expr": "a", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "b", - "expr": "b", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "a", - "expr": "a+b", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test_table", - "column": null, - "expr": "test_table", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": "OUTFILE", - "dest": "/tmp/result.txt", - "columns": null, - "values": null, - "fields_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "TERMINATED BY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": ",", - "expr": "','", - "alias": null, - "function": null, - "subquery": null - }, - "value": "','" - }, - "2": "OPTIONALLY", - "3": { - "name": "ENCLOSED BY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "\"", - "expr": "'\\\"'", - "alias": null, - "function": null, - "subquery": null - }, - "value": "'\\\"'" - } - } - }, - "fields_keyword": true, - "lines_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "TERMINATED BY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "\n", - "expr": "'\\n'", - "alias": null, - "function": null, - "subquery": null - }, - "value": "'\\n'" - } - } - } - }, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 36 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIntoOptions2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIntoOptions2.in deleted file mode 100644 index 3ab31bd2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIntoOptions2.in +++ /dev/null @@ -1,4 +0,0 @@ -SELECT a,b,a+b INTO OUTFILE '/tmp/result.txt' - COLUMNS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '\"' - LINES TERMINATED BY '\n' - FROM test_table; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIntoOptions2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIntoOptions2.out deleted file mode 100644 index d637ff51..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIntoOptions2.out +++ /dev/null @@ -1,515 +0,0 @@ -{ - "query": "SELECT a,b,a+b INTO OUTFILE '/tmp/result.txt'\n COLUMNS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '\\\"'\n LINES TERMINATED BY '\\n'\n FROM test_table;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT a,b,a+b INTO OUTFILE '/tmp/result.txt'\n COLUMNS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '\\\"'\n LINES TERMINATED BY '\\n'\n FROM test_table;", - "len": 153, - "last": 153, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+", - "value": "+", - "keyword": null, - "type": 2, - "flags": 1, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OUTFILE", - "value": "OUTFILE", - "keyword": "OUTFILE", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'/tmp/result.txt'", - "value": "/tmp/result.txt", - "keyword": null, - "type": 7, - "flags": 1, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLUMNS", - "value": "COLUMNS", - "keyword": "COLUMNS", - "type": 1, - "flags": 1, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TERMINATED BY", - "value": "TERMINATED BY", - "keyword": "TERMINATED BY", - "type": 1, - "flags": 7, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "','", - "value": ",", - "keyword": null, - "type": 7, - "flags": 1, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OPTIONALLY", - "value": "OPTIONALLY", - "keyword": "OPTIONALLY", - "type": 1, - "flags": 3, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENCLOSED BY", - "value": "ENCLOSED BY", - "keyword": "ENCLOSED BY", - "type": 1, - "flags": 7, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'\\\"'", - "value": "\"", - "keyword": null, - "type": 7, - "flags": 1, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LINES", - "value": "LINES", - "keyword": "LINES", - "type": 1, - "flags": 3, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TERMINATED BY", - "value": "TERMINATED BY", - "keyword": "TERMINATED BY", - "type": 1, - "flags": 7, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'\\n'", - "value": "\n", - "keyword": null, - "type": 7, - "flags": 1, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 137 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test_table", - "value": "test_table", - "keyword": null, - "type": 0, - "flags": 0, - "position": 142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 39, - "idx": 39 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "a", - "expr": "a", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "b", - "expr": "b", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "a", - "expr": "a+b", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test_table", - "column": null, - "expr": "test_table", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": "OUTFILE", - "dest": "/tmp/result.txt", - "columns": null, - "values": null, - "fields_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "TERMINATED BY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": ",", - "expr": "','", - "alias": null, - "function": null, - "subquery": null - }, - "value": "','" - }, - "2": "OPTIONALLY", - "3": { - "name": "ENCLOSED BY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "\"", - "expr": "'\\\"'", - "alias": null, - "function": null, - "subquery": null - }, - "value": "'\\\"'" - } - } - }, - "fields_keyword": false, - "lines_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "2": { - "name": "TERMINATED BY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "\n", - "expr": "'\\n'", - "alias": null, - "function": null, - "subquery": null - }, - "value": "'\\n'" - } - } - } - }, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 36 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIntoOptions3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIntoOptions3.in deleted file mode 100644 index 45a7e974..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIntoOptions3.in +++ /dev/null @@ -1,3 +0,0 @@ -SELECT a,b,a+b INTO OUTFILE '/tmp/result.txt' - COLUMNS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '\"' - FROM test_table; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIntoOptions3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIntoOptions3.out deleted file mode 100644 index 88c1d82d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectIntoOptions3.out +++ /dev/null @@ -1,442 +0,0 @@ -{ - "query": "SELECT a,b,a+b INTO OUTFILE '/tmp/result.txt'\n COLUMNS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '\\\"'\n FROM test_table;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT a,b,a+b INTO OUTFILE '/tmp/result.txt'\n COLUMNS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '\\\"'\n FROM test_table;", - "len": 124, - "last": 124, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "+", - "value": "+", - "keyword": null, - "type": 2, - "flags": 1, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OUTFILE", - "value": "OUTFILE", - "keyword": "OUTFILE", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'/tmp/result.txt'", - "value": "/tmp/result.txt", - "keyword": null, - "type": 7, - "flags": 1, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLUMNS", - "value": "COLUMNS", - "keyword": "COLUMNS", - "type": 1, - "flags": 1, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TERMINATED BY", - "value": "TERMINATED BY", - "keyword": "TERMINATED BY", - "type": 1, - "flags": 7, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "','", - "value": ",", - "keyword": null, - "type": 7, - "flags": 1, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OPTIONALLY", - "value": "OPTIONALLY", - "keyword": "OPTIONALLY", - "type": 1, - "flags": 3, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENCLOSED BY", - "value": "ENCLOSED BY", - "keyword": "ENCLOSED BY", - "type": 1, - "flags": 7, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'\\\"'", - "value": "\"", - "keyword": null, - "type": 7, - "flags": 1, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test_table", - "value": "test_table", - "keyword": null, - "type": 0, - "flags": 0, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 33, - "idx": 33 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "a", - "expr": "a", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "b", - "expr": "b", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "a", - "expr": "a+b", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test_table", - "column": null, - "expr": "test_table", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": "OUTFILE", - "dest": "/tmp/result.txt", - "columns": null, - "values": null, - "fields_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "TERMINATED BY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": ",", - "expr": "','", - "alias": null, - "function": null, - "subquery": null - }, - "value": "','" - }, - "2": "OPTIONALLY", - "3": { - "name": "ENCLOSED BY", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "\"", - "expr": "'\\\"'", - "alias": null, - "function": null, - "subquery": null - }, - "value": "'\\\"'" - } - } - }, - "fields_keyword": false, - "lines_options": null - }, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 30 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinCross.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinCross.in deleted file mode 100644 index 31b4feb2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinCross.in +++ /dev/null @@ -1,4 +0,0 @@ -SELECT table112.id,table112.bval1,table112.bval2, -table111.id,table111.aval1 -FROM table112 -CROSS JOIN table111 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinCross.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinCross.out deleted file mode 100644 index 8df95725..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinCross.out +++ /dev/null @@ -1,417 +0,0 @@ -{ - "query": "SELECT table112.id,table112.bval1,table112.bval2,\ntable111.id,table111.aval1\nFROM table112\nCROSS JOIN table111", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT table112.id,table112.bval1,table112.bval2,\ntable111.id,table111.aval1\nFROM table112\nCROSS JOIN table111", - "len": 110, - "last": 110, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table112", - "value": "table112", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table112", - "value": "table112", - "keyword": null, - "type": 0, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "bval1", - "value": "bval1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table112", - "value": "table112", - "keyword": null, - "type": 0, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "bval2", - "value": "bval2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table111", - "value": "table111", - "keyword": null, - "type": 0, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table111", - "value": "table111", - "keyword": null, - "type": 0, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "aval1", - "value": "aval1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table112", - "value": "table112", - "keyword": null, - "type": 0, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CROSS JOIN", - "value": "CROSS JOIN", - "keyword": "CROSS JOIN", - "type": 1, - "flags": 7, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table111", - "value": "table111", - "keyword": null, - "type": 0, - "flags": 0, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 31, - "idx": 31 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table112", - "column": "id", - "expr": "table112.id", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table112", - "column": "bval1", - "expr": "table112.bval1", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table112", - "column": "bval2", - "expr": "table112.bval2", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table111", - "column": "id", - "expr": "table111.id", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table111", - "column": "aval1", - "expr": "table111.aval1", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table112", - "column": null, - "expr": "table112", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "CROSS", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table111", - "column": null, - "expr": "table111", - "alias": null, - "function": null, - "subquery": null - }, - "on": null, - "using": null - } - ], - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 29 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinMultiple.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinMultiple.in deleted file mode 100644 index 39af387d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinMultiple.in +++ /dev/null @@ -1,2 +0,0 @@ -SELECT * FROM Orders NATURAL JOIN Items_Orders NATURAL JOIN Items -WHERE customer= 'username' \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinMultiple.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinMultiple.out deleted file mode 100644 index f7d8e71f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinMultiple.out +++ /dev/null @@ -1,331 +0,0 @@ -{ - "query": "SELECT * FROM Orders NATURAL JOIN Items_Orders NATURAL JOIN Items\nWHERE customer= 'username'", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM Orders NATURAL JOIN Items_Orders NATURAL JOIN Items\nWHERE customer= 'username'", - "len": 92, - "last": 92, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "Orders", - "value": "Orders", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NATURAL JOIN", - "value": "NATURAL JOIN", - "keyword": "NATURAL JOIN", - "type": 1, - "flags": 7, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "Items_Orders", - "value": "Items_Orders", - "keyword": null, - "type": 0, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NATURAL JOIN", - "value": "NATURAL JOIN", - "keyword": "NATURAL JOIN", - "type": 1, - "flags": 7, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "Items", - "value": "Items", - "keyword": null, - "type": 0, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "customer", - "value": "customer", - "keyword": null, - "type": 0, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'username'", - "value": "username", - "keyword": null, - "type": 7, - "flags": 1, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 23, - "idx": 23 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "Orders", - "column": null, - "expr": "Orders", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "customer", - "username" - ], - "isOperator": false, - "expr": "customer= 'username'" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "NATURAL", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "Items_Orders", - "column": null, - "expr": "Items_Orders", - "alias": null, - "function": null, - "subquery": null - }, - "on": null, - "using": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "NATURAL", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "Items", - "column": null, - "expr": "Items", - "alias": null, - "function": null, - "subquery": null - }, - "on": null, - "using": null - } - ], - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 21 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinMultiple2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinMultiple2.in deleted file mode 100644 index e5fa659f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinMultiple2.in +++ /dev/null @@ -1,3 +0,0 @@ -SELECT * FROM orders -NATURAL JOIN Items_Orders LEFT JOIN items on orders.item_id = items.id -WHERE customer= 'username' \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinMultiple2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinMultiple2.out deleted file mode 100644 index 408e6998..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinMultiple2.out +++ /dev/null @@ -1,451 +0,0 @@ -{ - "query": "SELECT * FROM orders\nNATURAL JOIN Items_Orders LEFT JOIN items on orders.item_id = items.id\nWHERE customer= 'username'", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM orders\nNATURAL JOIN Items_Orders LEFT JOIN items on orders.item_id = items.id\nWHERE customer= 'username'", - "len": 118, - "last": 118, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "orders", - "value": "orders", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NATURAL JOIN", - "value": "NATURAL JOIN", - "keyword": "NATURAL JOIN", - "type": 1, - "flags": 7, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "Items_Orders", - "value": "Items_Orders", - "keyword": null, - "type": 0, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEFT JOIN", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "items", - "value": "items", - "keyword": null, - "type": 0, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "on", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "orders", - "value": "orders", - "keyword": null, - "type": 0, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "item_id", - "value": "item_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "items", - "value": "items", - "keyword": null, - "type": 0, - "flags": 0, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "customer", - "value": "customer", - "keyword": null, - "type": 0, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'username'", - "value": "username", - "keyword": null, - "type": 7, - "flags": 1, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 35, - "idx": 35 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "orders", - "column": null, - "expr": "orders", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "customer", - "username" - ], - "isOperator": false, - "expr": "customer= 'username'" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "NATURAL", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "Items_Orders", - "column": null, - "expr": "Items_Orders", - "alias": null, - "function": null, - "subquery": null - }, - "on": null, - "using": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "items", - "column": null, - "expr": "items", - "alias": null, - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "orders", - "item_id", - "items", - "id" - ], - "isOperator": false, - "expr": "orders.item_id = items.id" - } - ], - "using": null - } - ], - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 33 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNatural.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNatural.in deleted file mode 100644 index 606842d8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNatural.in +++ /dev/null @@ -1,3 +0,0 @@ -SELECT id,aval1,cval1 -FROM table111 -NATURAL JOIN table113 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNatural.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNatural.out deleted file mode 100644 index fa4138c2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNatural.out +++ /dev/null @@ -1,262 +0,0 @@ -{ - "query": "SELECT id,aval1,cval1\nFROM table111\nNATURAL JOIN table113", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT id,aval1,cval1\nFROM table111\nNATURAL JOIN table113", - "len": 57, - "last": 57, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "aval1", - "value": "aval1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cval1", - "value": "cval1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table111", - "value": "table111", - "keyword": null, - "type": 0, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NATURAL JOIN", - "value": "NATURAL JOIN", - "keyword": "NATURAL JOIN", - "type": 1, - "flags": 7, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table113", - "value": "table113", - "keyword": null, - "type": 0, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 16, - "idx": 16 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "id", - "expr": "id", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "aval1", - "expr": "aval1", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "cval1", - "expr": "cval1", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table111", - "column": null, - "expr": "table111", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "NATURAL", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table113", - "column": null, - "expr": "table113", - "alias": null, - "function": null, - "subquery": null - }, - "on": null, - "using": null - } - ], - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 14 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNaturalLeft.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNaturalLeft.in deleted file mode 100644 index bc99f6bb..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNaturalLeft.in +++ /dev/null @@ -1,3 +0,0 @@ -SELECT C.First_Name, C.Last_Name, O.title -FROM Employee as C -NATURAL LEFT JOIN JOb as O; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNaturalLeft.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNaturalLeft.out deleted file mode 100644 index 9134e707..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNaturalLeft.out +++ /dev/null @@ -1,415 +0,0 @@ -{ - "query": "SELECT C.First_Name, C.Last_Name, O.title\nFROM Employee as C\nNATURAL LEFT JOIN JOb as O;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT C.First_Name, C.Last_Name, O.title\nFROM Employee as C\nNATURAL LEFT JOIN JOb as O;", - "len": 88, - "last": 88, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "C", - "value": "C", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "First_Name", - "value": "First_Name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "C", - "value": "C", - "keyword": null, - "type": 0, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "Last_Name", - "value": "Last_Name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "O", - "value": "O", - "keyword": null, - "type": 0, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "title", - "value": "title", - "keyword": null, - "type": 0, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "Employee", - "value": "Employee", - "keyword": null, - "type": 0, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "C", - "value": "C", - "keyword": null, - "type": 0, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NATURAL LEFT JOIN", - "value": "NATURAL LEFT JOIN", - "keyword": "NATURAL LEFT JOIN", - "type": 1, - "flags": 7, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "JOb", - "value": "JOb", - "keyword": null, - "type": 0, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "O", - "value": "O", - "keyword": null, - "type": 0, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 33, - "idx": 33 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "C", - "column": "First_Name", - "expr": "C.First_Name", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "C", - "column": "Last_Name", - "expr": "C.Last_Name", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "O", - "column": "title", - "expr": "O.title", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "Employee", - "column": null, - "expr": "Employee", - "alias": "C", - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "NATURAL LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "JOb", - "column": null, - "expr": "JOb", - "alias": "O", - "function": null, - "subquery": null - }, - "on": null, - "using": null - } - ], - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 30 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNaturalLeftOuter.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNaturalLeftOuter.in deleted file mode 100644 index ab06720d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNaturalLeftOuter.in +++ /dev/null @@ -1 +0,0 @@ -SELECT * FROM actor NATURAL LEFT OUTER JOIN film_actor; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNaturalLeftOuter.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNaturalLeftOuter.out deleted file mode 100644 index d3503ddb..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNaturalLeftOuter.out +++ /dev/null @@ -1,215 +0,0 @@ -{ - "query": "SELECT * FROM actor NATURAL LEFT OUTER JOIN film_actor;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM actor NATURAL LEFT OUTER JOIN film_actor;", - "len": 55, - "last": 55, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "actor", - "value": "actor", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NATURAL LEFT OUTER JOIN", - "value": "NATURAL LEFT OUTER JOIN", - "keyword": "NATURAL LEFT OUTER JOIN", - "type": 1, - "flags": 7, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film_actor", - "value": "film_actor", - "keyword": null, - "type": 0, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 13, - "idx": 13 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "actor", - "column": null, - "expr": "actor", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "NATURAL LEFT OUTER", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "film_actor", - "column": null, - "expr": "film_actor", - "alias": null, - "function": null, - "subquery": null - }, - "on": null, - "using": null - } - ], - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 10 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNaturalRight.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNaturalRight.in deleted file mode 100644 index b5e2a9b3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNaturalRight.in +++ /dev/null @@ -1 +0,0 @@ -SELECT * FROM actor NATURAL RIGHT JOIN film_actor; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNaturalRight.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNaturalRight.out deleted file mode 100644 index b3d36cb9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNaturalRight.out +++ /dev/null @@ -1,224 +0,0 @@ -{ - "query": "SELECT * FROM actor NATURAL RIGHT JOIN film_actor;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM actor NATURAL RIGHT JOIN film_actor;\n", - "len": 51, - "last": 51, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "actor", - "value": "actor", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NATURAL RIGHT JOIN", - "value": "NATURAL RIGHT JOIN", - "keyword": "NATURAL RIGHT JOIN", - "type": 1, - "flags": 7, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film_actor", - "value": "film_actor", - "keyword": null, - "type": 0, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 14, - "idx": 14 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "actor", - "column": null, - "expr": "actor", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "NATURAL RIGHT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "film_actor", - "column": null, - "expr": "film_actor", - "alias": null, - "function": null, - "subquery": null - }, - "on": null, - "using": null - } - ], - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 10 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNaturalRightOuter.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNaturalRightOuter.in deleted file mode 100644 index 0ef197f5..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNaturalRightOuter.in +++ /dev/null @@ -1 +0,0 @@ -SELECT * FROM actor NATURAL RIGHT OUTER JOIN film_actor; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNaturalRightOuter.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNaturalRightOuter.out deleted file mode 100644 index 1621ab6e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinNaturalRightOuter.out +++ /dev/null @@ -1,215 +0,0 @@ -{ - "query": "SELECT * FROM actor NATURAL RIGHT OUTER JOIN film_actor;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM actor NATURAL RIGHT OUTER JOIN film_actor;", - "len": 56, - "last": 56, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "actor", - "value": "actor", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NATURAL RIGHT OUTER JOIN", - "value": "NATURAL RIGHT OUTER JOIN", - "keyword": "NATURAL RIGHT OUTER JOIN", - "type": 1, - "flags": 7, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film_actor", - "value": "film_actor", - "keyword": null, - "type": 0, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 13, - "idx": 13 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "actor", - "column": null, - "expr": "actor", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "NATURAL RIGHT OUTER", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "film_actor", - "column": null, - "expr": "film_actor", - "alias": null, - "function": null, - "subquery": null - }, - "on": null, - "using": null - } - ], - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 10 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinStraight.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinStraight.in deleted file mode 100644 index 2fd532ea..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinStraight.in +++ /dev/null @@ -1,3 +0,0 @@ -SELECT id,aval1,cval1 -FROM table111 -STRAIGHT_JOIN table113 on table111.a = table113.b \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinStraight.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinStraight.out deleted file mode 100644 index ca437f77..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectJoinStraight.out +++ /dev/null @@ -1,382 +0,0 @@ -{ - "query": "SELECT id,aval1,cval1\nFROM table111\nSTRAIGHT_JOIN table113 on table111.a = table113.b", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT id,aval1,cval1\nFROM table111\nSTRAIGHT_JOIN table113 on table111.a = table113.b", - "len": 85, - "last": 85, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "aval1", - "value": "aval1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cval1", - "value": "cval1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table111", - "value": "table111", - "keyword": null, - "type": 0, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "STRAIGHT_JOIN", - "value": "STRAIGHT_JOIN", - "keyword": "STRAIGHT_JOIN", - "type": 1, - "flags": 3, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table113", - "value": "table113", - "keyword": null, - "type": 0, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "on", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table111", - "value": "table111", - "keyword": null, - "type": 0, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table113", - "value": "table113", - "keyword": null, - "type": 0, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "b", - "value": "b", - "keyword": null, - "type": 0, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 28, - "idx": 28 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "id", - "expr": "id", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "aval1", - "expr": "aval1", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "cval1", - "expr": "cval1", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table111", - "column": null, - "expr": "table111", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "STRAIGHT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table113", - "column": null, - "expr": "table113", - "alias": null, - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "table111", - "a", - "table113", - "b" - ], - "isOperator": false, - "expr": "table111.a = table113.b" - } - ], - "using": null - } - ], - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 26 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectNested.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectNested.in deleted file mode 100644 index 92afa745..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectNested.in +++ /dev/null @@ -1 +0,0 @@ -SELECT (SELECT 'foo') as Bar, (SELECT 'baz') as fOo; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectNested.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectNested.out deleted file mode 100644 index 5507a66a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectNested.out +++ /dev/null @@ -1,296 +0,0 @@ -{ - "query": "SELECT (SELECT 'foo') as Bar, (SELECT 'baz') as fOo;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT (SELECT 'foo') as Bar, (SELECT 'baz') as fOo;", - "len": 52, - "last": 52, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'foo'", - "value": "foo", - "keyword": null, - "type": 7, - "flags": 1, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "Bar", - "value": "Bar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'baz'", - "value": "baz", - "keyword": null, - "type": 7, - "flags": 1, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "fOo", - "value": "fOo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 24, - "idx": 24 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(SELECT 'foo')", - "alias": "Bar", - "function": null, - "subquery": "SELECT" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "(SELECT 'baz')", - "alias": "fOo", - "function": null, - "subquery": "SELECT" - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 21 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectOrderByComment.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectOrderByComment.in deleted file mode 100644 index 84df8c3f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectOrderByComment.in +++ /dev/null @@ -1,3 +0,0 @@ -SELECT `one space` -- this is the SELECT - FROM `Une table espace` -- this is the FROM - ORDER BY `one space` ASC -- this is the order by \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectOrderByComment.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectOrderByComment.out deleted file mode 100644 index a2b3f7e9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectOrderByComment.out +++ /dev/null @@ -1,276 +0,0 @@ -{ - "query": "SELECT `one space` -- this is the SELECT\n FROM `Une table espace` -- this is the FROM\n ORDER BY `one space` ASC -- this is the order by", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT `one space` -- this is the SELECT\n FROM `Une table espace` -- this is the FROM\n ORDER BY `one space` ASC -- this is the order by", - "len": 143, - "last": 144, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`one space`", - "value": "one space", - "keyword": null, - "type": 8, - "flags": 2, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- this is the SELECT", - "value": "-- this is the SELECT", - "keyword": null, - "type": 4, - "flags": 4, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`Une table espace`", - "value": "Une table espace", - "keyword": null, - "type": 8, - "flags": 2, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- this is the FROM", - "value": "-- this is the FROM", - "keyword": null, - "type": 4, - "flags": 4, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ORDER BY", - "value": "ORDER BY", - "keyword": "ORDER BY", - "type": 1, - "flags": 7, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`one space`", - "value": "one space", - "keyword": null, - "type": 8, - "flags": 2, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ASC", - "value": "ASC", - "keyword": "ASC", - "type": 1, - "flags": 3, - "position": 116 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- this is the order by", - "value": "-- this is the order by", - "keyword": null, - "type": 4, - "flags": 4, - "position": 120 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 20, - "idx": 20 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "one space", - "expr": "`one space`", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "Une table espace", - "column": null, - "expr": "`Une table espace`", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OrderKeyword", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "one space", - "expr": "`one space`", - "alias": null, - "function": null, - "subquery": null - }, - "type": "ASC" - } - ], - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 18 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectOrderByIsNull.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectOrderByIsNull.in deleted file mode 100644 index 79f4a674..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectOrderByIsNull.in +++ /dev/null @@ -1 +0,0 @@ -SELECT * FROM some_table ORDER BY some_col IS NULL; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectOrderByIsNull.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectOrderByIsNull.out deleted file mode 100644 index feedcaea..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectOrderByIsNull.out +++ /dev/null @@ -1,249 +0,0 @@ -{ - "query": "SELECT * FROM some_table ORDER BY some_col IS NULL;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM some_table ORDER BY some_col IS NULL;", - "len": 51, - "last": 51, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "some_table", - "value": "some_table", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ORDER BY", - "value": "ORDER BY", - "keyword": "ORDER BY", - "type": 1, - "flags": 7, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "some_col", - "value": "some_col", - "keyword": null, - "type": 0, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IS", - "value": "IS", - "keyword": "IS", - "type": 1, - "flags": 3, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 17, - "idx": 17 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "some_table", - "column": null, - "expr": "some_table", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OrderKeyword", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "some_col", - "expr": "some_col IS NULL", - "alias": null, - "function": null, - "subquery": null - }, - "type": "ASC" - } - ], - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 14 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectOverAlias_mariadb_100600.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectOverAlias_mariadb_100600.in deleted file mode 100644 index 9950d139..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectOverAlias_mariadb_100600.in +++ /dev/null @@ -1 +0,0 @@ -select `products`.`pid` AS `pid`, `products`.`pname` as `name`, rank() over( partition by `products`.`pvalue` order by `products`.`pid` desc) AS `myrank` from `products` diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectOverAlias_mariadb_100600.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectOverAlias_mariadb_100600.out deleted file mode 100644 index dec3017f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectOverAlias_mariadb_100600.out +++ /dev/null @@ -1,560 +0,0 @@ -{ - "query": "select `products`.`pid` AS `pid`, `products`.`pname` as `name`, rank() over( partition by `products`.`pvalue` order by `products`.`pid` desc) AS `myrank` from `products` \n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "select `products`.`pid` AS `pid`, `products`.`pname` as `name`, rank() over( partition by `products`.`pvalue` order by `products`.`pid` desc) AS `myrank` from `products` \n", - "len": 171, - "last": 171, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "select", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`products`", - "value": "products", - "keyword": null, - "type": 8, - "flags": 2, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`pid`", - "value": "pid", - "keyword": null, - "type": 8, - "flags": 2, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`pid`", - "value": "pid", - "keyword": null, - "type": 8, - "flags": 2, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`products`", - "value": "products", - "keyword": null, - "type": 8, - "flags": 2, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`pname`", - "value": "pname", - "keyword": null, - "type": 8, - "flags": 2, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "as", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`name`", - "value": "name", - "keyword": null, - "type": 8, - "flags": 2, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "rank", - "value": "rank", - "keyword": "RANK", - "type": 1, - "flags": 33, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "over", - "value": "OVER", - "keyword": "OVER", - "type": 1, - "flags": 3, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "partition by", - "value": "PARTITION BY", - "keyword": "PARTITION BY", - "type": 1, - "flags": 7, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`products`", - "value": "products", - "keyword": null, - "type": 8, - "flags": 2, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`pvalue`", - "value": "pvalue", - "keyword": null, - "type": 8, - "flags": 2, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "order by", - "value": "ORDER BY", - "keyword": "ORDER BY", - "type": 1, - "flags": 7, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`products`", - "value": "products", - "keyword": null, - "type": 8, - "flags": 2, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`pid`", - "value": "pid", - "keyword": null, - "type": 8, - "flags": 2, - "position": 130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "desc", - "value": "DESC", - "keyword": "DESC", - "type": 1, - "flags": 3, - "position": 136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 144 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`myrank`", - "value": "myrank", - "keyword": null, - "type": 8, - "flags": 2, - "position": 145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 153 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "from", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 154 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`products`", - "value": "products", - "keyword": null, - "type": 8, - "flags": 2, - "position": 159 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " \n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 169 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 51, - "idx": 51 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "products", - "column": "pid", - "expr": "`products`.`pid`", - "alias": "pid", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "products", - "column": "pname", - "expr": "`products`.`pname`", - "alias": "name", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "rank() over( partition by `products`.`pvalue` order by `products`.`pid` desc)", - "alias": "myrank", - "function": "rank", - "subquery": "DESC" - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "products", - "column": null, - "expr": "`products`", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 49 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectUnion.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectUnion.in deleted file mode 100644 index 75e673b0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectUnion.in +++ /dev/null @@ -1 +0,0 @@ -(SELECT a FROM t WHERE a=1) UNION (SELECT a FROM t WHERE a=2) diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectUnion.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectUnion.out deleted file mode 100644 index 4c111450..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectUnion.out +++ /dev/null @@ -1,464 +0,0 @@ -{ - "query": "(SELECT a FROM t WHERE a=1) UNION (SELECT a FROM t WHERE a=2)\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "(SELECT a FROM t WHERE a=1) UNION (SELECT a FROM t WHERE a=2)\n", - "len": 62, - "last": 62, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 1 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t", - "value": "t", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNION", - "value": "UNION", - "keyword": "UNION", - "type": 1, - "flags": 3, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t", - "value": "t", - "keyword": null, - "type": 0, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 35, - "idx": 35 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "a", - "expr": "a", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "t", - "column": null, - "expr": "t", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "a" - ], - "isOperator": false, - "expr": "a=1" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [ - [ - "UNION", - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "a", - "expr": "a", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "t", - "column": null, - "expr": "t", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "a" - ], - "isOperator": false, - "expr": "a=2" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": [], - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 16, - "last": 33 - } - ] - ], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 33 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectUnion2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectUnion2.in deleted file mode 100644 index 27d83884..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectUnion2.in +++ /dev/null @@ -1 +0,0 @@ -(SELECT DISTINCT `User`, `Host` FROM `mysql`.`user` ) UNION (SELECT DISTINCT `User`, `Host` FROM `mysql`.`db` ) UNION (SELECT DISTINCT `User`, `Host` FROM `mysql`.`tables_priv` ) UNION (SELECT DISTINCT `User`, `Host` FROM `mysql`.`columns_priv` ) UNION (SELECT DISTINCT `User`, `Host` FROM `mysql`.`procs_priv` ) ORDER BY `User` ASC, `Host` ASC \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectUnion2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectUnion2.out deleted file mode 100644 index 68fcc4b9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectUnion2.out +++ /dev/null @@ -1,1348 +0,0 @@ -{ - "query": "(SELECT DISTINCT `User`, `Host` FROM `mysql`.`user` ) UNION (SELECT DISTINCT `User`, `Host` FROM `mysql`.`db` ) UNION (SELECT DISTINCT `User`, `Host` FROM `mysql`.`tables_priv` ) UNION (SELECT DISTINCT `User`, `Host` FROM `mysql`.`columns_priv` ) UNION (SELECT DISTINCT `User`, `Host` FROM `mysql`.`procs_priv` ) ORDER BY `User` ASC, `Host` ASC", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "(SELECT DISTINCT `User`, `Host` FROM `mysql`.`user` ) UNION (SELECT DISTINCT `User`, `Host` FROM `mysql`.`db` ) UNION (SELECT DISTINCT `User`, `Host` FROM `mysql`.`tables_priv` ) UNION (SELECT DISTINCT `User`, `Host` FROM `mysql`.`columns_priv` ) UNION (SELECT DISTINCT `User`, `Host` FROM `mysql`.`procs_priv` ) ORDER BY `User` ASC, `Host` ASC", - "len": 344, - "last": 344, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 1 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DISTINCT", - "value": "DISTINCT", - "keyword": "DISTINCT", - "type": 1, - "flags": 3, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`User`", - "value": "User", - "keyword": null, - "type": 8, - "flags": 2, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`Host`", - "value": "Host", - "keyword": null, - "type": 8, - "flags": 2, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`mysql`", - "value": "mysql", - "keyword": null, - "type": 8, - "flags": 2, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`user`", - "value": "user", - "keyword": null, - "type": 8, - "flags": 2, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNION", - "value": "UNION", - "keyword": "UNION", - "type": 1, - "flags": 3, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DISTINCT", - "value": "DISTINCT", - "keyword": "DISTINCT", - "type": 1, - "flags": 3, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`User`", - "value": "User", - "keyword": null, - "type": 8, - "flags": 2, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`Host`", - "value": "Host", - "keyword": null, - "type": 8, - "flags": 2, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`mysql`", - "value": "mysql", - "keyword": null, - "type": 8, - "flags": 2, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`db`", - "value": "db", - "keyword": null, - "type": 8, - "flags": 2, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNION", - "value": "UNION", - "keyword": "UNION", - "type": 1, - "flags": 3, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DISTINCT", - "value": "DISTINCT", - "keyword": "DISTINCT", - "type": 1, - "flags": 3, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 134 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`User`", - "value": "User", - "keyword": null, - "type": 8, - "flags": 2, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`Host`", - "value": "Host", - "keyword": null, - "type": 8, - "flags": 2, - "position": 143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 150 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 154 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`mysql`", - "value": "mysql", - "keyword": null, - "type": 8, - "flags": 2, - "position": 155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 162 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`tables_priv`", - "value": "tables_priv", - "keyword": null, - "type": 8, - "flags": 2, - "position": 163 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 176 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 178 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNION", - "value": "UNION", - "keyword": "UNION", - "type": 1, - "flags": 3, - "position": 179 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 184 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 185 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 186 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 192 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DISTINCT", - "value": "DISTINCT", - "keyword": "DISTINCT", - "type": 1, - "flags": 3, - "position": 193 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 201 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`User`", - "value": "User", - "keyword": null, - "type": 8, - "flags": 2, - "position": 202 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 208 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 209 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`Host`", - "value": "Host", - "keyword": null, - "type": 8, - "flags": 2, - "position": 210 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 216 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 217 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 221 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`mysql`", - "value": "mysql", - "keyword": null, - "type": 8, - "flags": 2, - "position": 222 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 229 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`columns_priv`", - "value": "columns_priv", - "keyword": null, - "type": 8, - "flags": 2, - "position": 230 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 244 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 245 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 246 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNION", - "value": "UNION", - "keyword": "UNION", - "type": 1, - "flags": 3, - "position": 247 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 252 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 253 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 254 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 260 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DISTINCT", - "value": "DISTINCT", - "keyword": "DISTINCT", - "type": 1, - "flags": 3, - "position": 261 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 269 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`User`", - "value": "User", - "keyword": null, - "type": 8, - "flags": 2, - "position": 270 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 276 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 277 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`Host`", - "value": "Host", - "keyword": null, - "type": 8, - "flags": 2, - "position": 278 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 284 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 285 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 289 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`mysql`", - "value": "mysql", - "keyword": null, - "type": 8, - "flags": 2, - "position": 290 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 297 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`procs_priv`", - "value": "procs_priv", - "keyword": null, - "type": 8, - "flags": 2, - "position": 298 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 310 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 311 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 312 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ORDER BY", - "value": "ORDER BY", - "keyword": "ORDER BY", - "type": 1, - "flags": 7, - "position": 313 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 321 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`User`", - "value": "User", - "keyword": null, - "type": 8, - "flags": 2, - "position": 322 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 328 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ASC", - "value": "ASC", - "keyword": "ASC", - "type": 1, - "flags": 3, - "position": 329 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 332 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 333 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`Host`", - "value": "Host", - "keyword": null, - "type": 8, - "flags": 2, - "position": 334 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 340 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ASC", - "value": "ASC", - "keyword": "ASC", - "type": 1, - "flags": 3, - "position": 341 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 109, - "idx": 109 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "User", - "expr": "`User`", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Host", - "expr": "`Host`", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "mysql", - "table": "user", - "column": null, - "expr": "`mysql`.`user`", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OrderKeyword", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "User", - "expr": "`User`", - "alias": null, - "function": null, - "subquery": null - }, - "type": "ASC" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OrderKeyword", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Host", - "expr": "`Host`", - "alias": null, - "function": null, - "subquery": null - }, - "type": "ASC" - } - ], - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [ - [ - "UNION", - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "User", - "expr": "`User`", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Host", - "expr": "`Host`", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "mysql", - "table": "db", - "column": null, - "expr": "`mysql`.`db`", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": [], - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "DISTINCT" - } - }, - "first": 18, - "last": 37 - } - ], - [ - "UNION", - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "User", - "expr": "`User`", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Host", - "expr": "`Host`", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "mysql", - "table": "tables_priv", - "column": null, - "expr": "`mysql`.`tables_priv`", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": [], - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "DISTINCT" - } - }, - "first": 38, - "last": 57 - } - ], - [ - "UNION", - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "User", - "expr": "`User`", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Host", - "expr": "`Host`", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "mysql", - "table": "columns_priv", - "column": null, - "expr": "`mysql`.`columns_priv`", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": [], - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "DISTINCT" - } - }, - "first": 58, - "last": 77 - } - ], - [ - "UNION", - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "User", - "expr": "`User`", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "Host", - "expr": "`Host`", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": "mysql", - "table": "procs_priv", - "column": null, - "expr": "`mysql`.`procs_priv`", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": [], - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "DISTINCT" - } - }, - "first": 78, - "last": 107 - } - ] - ], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "DISTINCT" - } - }, - "first": 0, - "last": 107 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWhere.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWhere.in deleted file mode 100644 index 6838048d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWhere.in +++ /dev/null @@ -1,15 +0,0 @@ -SELECT * FROM film WHERE film_id = 10 OR film_id >= 20; -SELECT * FROM film WHERE (film_id < 10) || (film_id > 20); -SELECT * FROM film WHERE `film_id` != 10 AND `film_id` <= 20; -SELECT * FROM film WHERE `film`.`film_id` <> 10 && `film`.`film_id` <= 20; -SELECT * FROM film WHERE film.film_id < 20 XOR film.rating = 'PG-13'; -SELECT * FROM film WHERE /* film_id = */ film_id = 10; -SELECT * FROM film WHERE NOT film_id > 10; -SELECT * FROM film WHERE ! (film_id > 10); -SELECT * FROM film WHERE description IS NULL; -SELECT * FROM film WHERE description IS NOT NULL; -SELECT * FROM film WHERE film_id BETWEEN 10 AND 20; -SELECT * FROM film WHERE film_id NOT BETWEEN 10 AND 20; -SELECT * FROM film WHERE film_id IN (3,5,7); -SELECT * FROM film WHERE rating = UPPER('pg'); -SELECT * FROM film WHERE rating SOUNDS LIKE 'PG'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWhere.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWhere.out deleted file mode 100644 index e31956ee..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWhere.out +++ /dev/null @@ -1,3963 +0,0 @@ -{ - "query": "SELECT * FROM film WHERE film_id = 10 OR film_id >= 20;\nSELECT * FROM film WHERE (film_id < 10) || (film_id > 20);\nSELECT * FROM film WHERE `film_id` != 10 AND `film_id` <= 20;\nSELECT * FROM film WHERE `film`.`film_id` <> 10 && `film`.`film_id` <= 20;\nSELECT * FROM film WHERE film.film_id < 20 XOR film.rating = 'PG-13';\nSELECT * FROM film WHERE /* film_id = */ film_id = 10;\nSELECT * FROM film WHERE NOT film_id > 10;\nSELECT * FROM film WHERE ! (film_id > 10);\nSELECT * FROM film WHERE description IS NULL;\nSELECT * FROM film WHERE description IS NOT NULL;\nSELECT * FROM film WHERE film_id BETWEEN 10 AND 20;\nSELECT * FROM film WHERE film_id NOT BETWEEN 10 AND 20;\nSELECT * FROM film WHERE film_id IN (3,5,7);\nSELECT * FROM film WHERE rating = UPPER('pg');\nSELECT * FROM film WHERE rating SOUNDS LIKE 'PG';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM film WHERE film_id = 10 OR film_id >= 20;\nSELECT * FROM film WHERE (film_id < 10) || (film_id > 20);\nSELECT * FROM film WHERE `film_id` != 10 AND `film_id` <= 20;\nSELECT * FROM film WHERE `film`.`film_id` <> 10 && `film`.`film_id` <= 20;\nSELECT * FROM film WHERE film.film_id < 20 XOR film.rating = 'PG-13';\nSELECT * FROM film WHERE /* film_id = */ film_id = 10;\nSELECT * FROM film WHERE NOT film_id > 10;\nSELECT * FROM film WHERE ! (film_id > 10);\nSELECT * FROM film WHERE description IS NULL;\nSELECT * FROM film WHERE description IS NOT NULL;\nSELECT * FROM film WHERE film_id BETWEEN 10 AND 20;\nSELECT * FROM film WHERE film_id NOT BETWEEN 10 AND 20;\nSELECT * FROM film WHERE film_id IN (3,5,7);\nSELECT * FROM film WHERE rating = UPPER('pg');\nSELECT * FROM film WHERE rating SOUNDS LIKE 'PG';", - "len": 808, - "last": 808, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film", - "value": "film", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film_id", - "value": "film_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OR", - "value": "OR", - "keyword": "OR", - "type": 1, - "flags": 3, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film_id", - "value": "film_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ">=", - "value": ">=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "20", - "value": 20, - "keyword": null, - "type": 6, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film", - "value": "film", - "keyword": null, - "type": 0, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film_id", - "value": "film_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "<", - "value": "<", - "keyword": null, - "type": 2, - "flags": 2, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "||", - "value": "||", - "keyword": null, - "type": 2, - "flags": 2, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film_id", - "value": "film_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ">", - "value": ">", - "keyword": null, - "type": 2, - "flags": 2, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "20", - "value": 20, - "keyword": null, - "type": 6, - "flags": 0, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 121 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film", - "value": "film", - "keyword": null, - "type": 0, - "flags": 0, - "position": 129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 134 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`film_id`", - "value": "film_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "!=", - "value": "!=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 150 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 153 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 156 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 159 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`film_id`", - "value": "film_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 160 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 169 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "<=", - "value": "<=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 170 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 172 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "20", - "value": 20, - "keyword": null, - "type": 6, - "flags": 0, - "position": 173 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 175 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 176 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 183 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 184 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 185 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 186 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 190 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film", - "value": "film", - "keyword": null, - "type": 0, - "flags": 0, - "position": 191 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 195 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 196 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 201 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`film`", - "value": "film", - "keyword": null, - "type": 8, - "flags": 2, - "position": 202 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 208 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`film_id`", - "value": "film_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 209 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 218 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "<>", - "value": "<>", - "keyword": null, - "type": 2, - "flags": 2, - "position": 219 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 221 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 222 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 224 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "&&", - "value": "&&", - "keyword": null, - "type": 2, - "flags": 2, - "position": 225 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 227 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`film`", - "value": "film", - "keyword": null, - "type": 8, - "flags": 2, - "position": 228 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 234 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`film_id`", - "value": "film_id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 235 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 244 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "<=", - "value": "<=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 245 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 247 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "20", - "value": 20, - "keyword": null, - "type": 6, - "flags": 0, - "position": 248 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 250 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 251 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 252 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 258 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 259 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 260 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 261 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 265 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film", - "value": "film", - "keyword": null, - "type": 0, - "flags": 0, - "position": 266 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 270 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 271 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 276 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film", - "value": "film", - "keyword": null, - "type": 0, - "flags": 0, - "position": 277 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 281 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film_id", - "value": "film_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 282 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 289 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "<", - "value": "<", - "keyword": null, - "type": 2, - "flags": 2, - "position": 290 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 291 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "20", - "value": 20, - "keyword": null, - "type": 6, - "flags": 0, - "position": 292 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 294 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "XOR", - "value": "XOR", - "keyword": "XOR", - "type": 1, - "flags": 3, - "position": 295 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 298 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film", - "value": "film", - "keyword": null, - "type": 0, - "flags": 0, - "position": 299 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 303 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "rating", - "value": "rating", - "keyword": null, - "type": 0, - "flags": 0, - "position": 304 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 310 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 311 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 312 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'PG-13'", - "value": "PG-13", - "keyword": null, - "type": 7, - "flags": 1, - "position": 313 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 320 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 321 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 322 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 328 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 329 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 330 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 331 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 335 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film", - "value": "film", - "keyword": null, - "type": 0, - "flags": 0, - "position": 336 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 340 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 341 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 346 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/* film_id = */", - "value": "/* film_id = */", - "keyword": null, - "type": 4, - "flags": 2, - "position": 347 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 362 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film_id", - "value": "film_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 363 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 370 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 371 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 372 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 373 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 375 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 376 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 377 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 383 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 384 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 385 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 386 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 390 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film", - "value": "film", - "keyword": null, - "type": 0, - "flags": 0, - "position": 391 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 395 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 396 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 401 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT", - "value": "NOT", - "keyword": "NOT", - "type": 1, - "flags": 3, - "position": 402 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 405 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film_id", - "value": "film_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 406 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 413 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ">", - "value": ">", - "keyword": null, - "type": 2, - "flags": 2, - "position": 414 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 415 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 416 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 418 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 419 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 420 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 426 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 427 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 428 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 429 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 433 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film", - "value": "film", - "keyword": null, - "type": 0, - "flags": 0, - "position": 434 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 438 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 439 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 444 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "!", - "value": "!", - "keyword": null, - "type": 2, - "flags": 2, - "position": 445 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 446 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 447 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film_id", - "value": "film_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 448 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 455 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ">", - "value": ">", - "keyword": null, - "type": 2, - "flags": 2, - "position": 456 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 457 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 458 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 460 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 461 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 462 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 463 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 469 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 470 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 471 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 472 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 476 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film", - "value": "film", - "keyword": null, - "type": 0, - "flags": 0, - "position": 477 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 481 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 482 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 487 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "description", - "value": "description", - "keyword": null, - "type": 0, - "flags": 0, - "position": 488 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 499 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IS", - "value": "IS", - "keyword": "IS", - "type": 1, - "flags": 3, - "position": 500 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 502 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NULL", - "value": "NULL", - "keyword": "NULL", - "type": 1, - "flags": 3, - "position": 503 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 507 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 508 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 509 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 515 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 516 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 517 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 518 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 522 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film", - "value": "film", - "keyword": null, - "type": 0, - "flags": 0, - "position": 523 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 527 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 528 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 533 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "description", - "value": "description", - "keyword": null, - "type": 0, - "flags": 0, - "position": 534 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 545 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IS", - "value": "IS", - "keyword": "IS", - "type": 1, - "flags": 3, - "position": 546 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 548 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 549 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 557 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 558 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 559 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 565 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 566 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 567 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 568 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 572 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film", - "value": "film", - "keyword": null, - "type": 0, - "flags": 0, - "position": 573 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 577 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 578 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 583 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film_id", - "value": "film_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 584 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 591 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BETWEEN", - "value": "BETWEEN", - "keyword": "BETWEEN", - "type": 1, - "flags": 3, - "position": 592 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 599 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 600 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 602 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 603 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 606 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "20", - "value": 20, - "keyword": null, - "type": 6, - "flags": 0, - "position": 607 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 609 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 610 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 611 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 617 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 618 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 619 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 620 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 624 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film", - "value": "film", - "keyword": null, - "type": 0, - "flags": 0, - "position": 625 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 629 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 630 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 635 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film_id", - "value": "film_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 636 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 643 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT", - "value": "NOT", - "keyword": "NOT", - "type": 1, - "flags": 3, - "position": 644 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 647 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BETWEEN", - "value": "BETWEEN", - "keyword": "BETWEEN", - "type": 1, - "flags": 3, - "position": 648 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 655 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 656 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 658 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 659 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 662 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "20", - "value": 20, - "keyword": null, - "type": 6, - "flags": 0, - "position": 663 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 665 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 666 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 667 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 673 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 674 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 675 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 676 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 680 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film", - "value": "film", - "keyword": null, - "type": 0, - "flags": 0, - "position": 681 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 685 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 686 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 691 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film_id", - "value": "film_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 692 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 699 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "IN", - "value": "IN", - "keyword": "IN", - "type": 1, - "flags": 35, - "position": 700 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 702 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 703 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 704 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 705 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "5", - "value": 5, - "keyword": null, - "type": 6, - "flags": 0, - "position": 706 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 707 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "7", - "value": 7, - "keyword": null, - "type": 6, - "flags": 0, - "position": 708 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 709 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 710 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 711 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 712 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 718 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 719 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 720 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 721 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 725 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film", - "value": "film", - "keyword": null, - "type": 0, - "flags": 0, - "position": 726 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 730 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 731 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 736 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "rating", - "value": "rating", - "keyword": null, - "type": 0, - "flags": 0, - "position": 737 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 743 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 744 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 745 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UPPER", - "value": "UPPER", - "keyword": "UPPER", - "type": 1, - "flags": 33, - "position": 746 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 751 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'pg'", - "value": "pg", - "keyword": null, - "type": 7, - "flags": 1, - "position": 752 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 756 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 757 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 758 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 759 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 765 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 766 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 767 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 768 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 772 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "film", - "value": "film", - "keyword": null, - "type": 0, - "flags": 0, - "position": 773 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 777 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 778 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 783 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "rating", - "value": "rating", - "keyword": null, - "type": 0, - "flags": 0, - "position": 784 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 790 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SOUNDS", - "value": "SOUNDS", - "keyword": "SOUNDS", - "type": 1, - "flags": 1, - "position": 791 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 797 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIKE", - "value": "LIKE", - "keyword": "LIKE", - "type": 1, - "flags": 3, - "position": 798 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 802 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'PG'", - "value": "PG", - "keyword": null, - "type": 7, - "flags": 1, - "position": 803 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 807 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 336, - "idx": 336 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "film", - "column": null, - "expr": "film", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "film_id" - ], - "isOperator": false, - "expr": "film_id = 10" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "OR" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "film_id" - ], - "isOperator": false, - "expr": "film_id >= 20" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "film", - "column": null, - "expr": "film", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "film_id" - ], - "isOperator": false, - "expr": "(film_id < 10)" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "||" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "film_id" - ], - "isOperator": false, - "expr": "(film_id > 20)" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 23, - "last": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "film", - "column": null, - "expr": "film", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "film_id" - ], - "isOperator": false, - "expr": "`film_id` != 10" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "film_id" - ], - "isOperator": false, - "expr": "`film_id` <= 20" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 52, - "last": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "film", - "column": null, - "expr": "film", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "film", - "film_id" - ], - "isOperator": false, - "expr": "`film`.`film_id` <> 10" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "&&" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "film", - "film_id" - ], - "isOperator": false, - "expr": "`film`.`film_id` <= 20" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 77, - "last": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "film", - "column": null, - "expr": "film", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "film", - "film_id" - ], - "isOperator": false, - "expr": "film.film_id < 20" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "XOR" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "film", - "rating", - "PG-13" - ], - "isOperator": false, - "expr": "film.rating = 'PG-13'" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 106, - "last": 134 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "film", - "column": null, - "expr": "film", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "film_id" - ], - "isOperator": false, - "expr": "film_id = 10" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 135, - "last": 153 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "film", - "column": null, - "expr": "film", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "film_id" - ], - "isOperator": false, - "expr": "NOT film_id > 10" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 154, - "last": 172 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "film", - "column": null, - "expr": "film", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "film_id" - ], - "isOperator": false, - "expr": "! (film_id > 10)" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 173, - "last": 193 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "film", - "column": null, - "expr": "film", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "description" - ], - "isOperator": false, - "expr": "description IS NULL" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 194, - "last": 210 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "film", - "column": null, - "expr": "film", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "description" - ], - "isOperator": false, - "expr": "description IS NOT NULL" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 211, - "last": 227 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "film", - "column": null, - "expr": "film", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "film_id" - ], - "isOperator": false, - "expr": "film_id BETWEEN 10 AND 20" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 228, - "last": 248 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "film", - "column": null, - "expr": "film", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "film_id" - ], - "isOperator": false, - "expr": "film_id NOT BETWEEN 10 AND 20" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 249, - "last": 271 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "film", - "column": null, - "expr": "film", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "film_id" - ], - "isOperator": false, - "expr": "film_id IN (3,5,7)" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 272, - "last": 294 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "film", - "column": null, - "expr": "film", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "rating", - "UPPER", - "pg" - ], - "isOperator": false, - "expr": "rating = UPPER('pg')" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 295, - "last": 314 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "film", - "column": null, - "expr": "film", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "rating", - "SOUNDS", - "PG" - ], - "isOperator": false, - "expr": "rating SOUNDS LIKE 'PG'" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 315, - "last": 333 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWhereCollate.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWhereCollate.in deleted file mode 100644 index a1c97b9a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWhereCollate.in +++ /dev/null @@ -1 +0,0 @@ -SELECT 1 FROM my_table WHERE first_col = 'foo' AND second_col COLLATE utf8_bin = 'bar'; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWhereCollate.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWhereCollate.out deleted file mode 100644 index 7e3fd10b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWhereCollate.out +++ /dev/null @@ -1,368 +0,0 @@ -{ - "query": "SELECT 1 FROM my_table WHERE first_col = 'foo' AND second_col COLLATE utf8_bin = 'bar';", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT 1 FROM my_table WHERE first_col = 'foo' AND second_col COLLATE utf8_bin = 'bar';", - "len": 96, - "last": 96, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_table", - "value": "my_table", - "keyword": null, - "type": 0, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "first_col", - "value": "first_col", - "keyword": null, - "type": 0, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'foo'", - "value": "foo", - "keyword": null, - "type": 7, - "flags": 1, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "second_col", - "value": "second_col", - "keyword": null, - "type": 0, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLLATE", - "value": "COLLATE", - "keyword": "COLLATE", - "type": 1, - "flags": 3, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8_bin", - "value": "utf8_bin", - "keyword": null, - "type": 0, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'bar'", - "value": "bar", - "keyword": null, - "type": 7, - "flags": 1, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 29, - "idx": 29 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "my_table", - "column": null, - "expr": "my_table", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "first_col", - "foo" - ], - "isOperator": false, - "expr": "first_col = 'foo'" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "second_col", - "utf8_bin", - "bar" - ], - "isOperator": false, - "expr": "second_col COLLATE utf8_bin = 'bar'" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 26 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWithParenthesis.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWithParenthesis.in deleted file mode 100644 index 3c47d72e..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWithParenthesis.in +++ /dev/null @@ -1 +0,0 @@ -(SELECT first_name FROM `actor` LIMIT 1, 2) \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWithParenthesis.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWithParenthesis.out deleted file mode 100644 index 7fe8f5da..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWithParenthesis.out +++ /dev/null @@ -1,238 +0,0 @@ -{ - "query": "(SELECT first_name FROM `actor` LIMIT 1, 2)", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "(SELECT first_name FROM `actor` LIMIT 1, 2)", - "len": 43, - "last": 43, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 1 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "first_name", - "value": "first_name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`actor`", - "value": "actor", - "keyword": null, - "type": 8, - "flags": 2, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIMIT", - "value": "LIMIT", - "keyword": "LIMIT", - "type": 1, - "flags": 3, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 17, - "idx": 17 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "first_name", - "expr": "first_name", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "actor", - "column": null, - "expr": "`actor`", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Limit", - "offset": 1, - "rowCount": 2 - }, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 15 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWrongOrder.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWrongOrder.in deleted file mode 100644 index 18d5dca8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWrongOrder.in +++ /dev/null @@ -1 +0,0 @@ -SELECT pid, name2 FROM tablename LIMIT 10 WHERE pid = 20 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWrongOrder.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWrongOrder.out deleted file mode 100644 index 1c2a9f90..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWrongOrder.out +++ /dev/null @@ -1,319 +0,0 @@ -{ - "query": "SELECT pid, name2 FROM tablename LIMIT 10 WHERE pid = 20", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT pid, name2 FROM tablename LIMIT 10 WHERE pid = 20", - "len": 56, - "last": 56, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pid", - "value": "pid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name2", - "value": "name2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tablename", - "value": "tablename", - "keyword": null, - "type": 0, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIMIT", - "value": "LIMIT", - "keyword": "LIMIT", - "type": 1, - "flags": 3, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "10", - "value": 10, - "keyword": null, - "type": 6, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "pid", - "value": "pid", - "keyword": null, - "type": 0, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "20", - "value": 20, - "keyword": null, - "type": 6, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 23, - "idx": 23 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "pid", - "expr": "pid", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "name2", - "expr": "name2", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "tablename", - "column": null, - "expr": "tablename", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "pid" - ], - "isOperator": false, - "expr": "pid = 20" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Limit", - "offset": 0, - "rowCount": 10 - }, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 21 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected ordering of clauses.", - { - "@type": "@13" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWrongOrder2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWrongOrder2.in deleted file mode 100644 index 3a000ec6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWrongOrder2.in +++ /dev/null @@ -1 +0,0 @@ -SELECT DISTINCT * FROM tbl1 INNER JOIN tbl2 ON id1 = id2 WHERE 1=1 LEFT OUTER JOIN l3; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWrongOrder2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWrongOrder2.out deleted file mode 100644 index cc02734f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSelectWrongOrder2.out +++ /dev/null @@ -1,412 +0,0 @@ -{ - "query": "SELECT DISTINCT * FROM tbl1 INNER JOIN tbl2 ON id1 = id2 WHERE 1=1 LEFT OUTER JOIN l3;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT DISTINCT * FROM tbl1 INNER JOIN tbl2 ON id1 = id2 WHERE 1=1 LEFT OUTER JOIN l3;", - "len": 86, - "last": 86, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DISTINCT", - "value": "DISTINCT", - "keyword": "DISTINCT", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tbl1", - "value": "tbl1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INNER JOIN", - "value": "INNER JOIN", - "keyword": "INNER JOIN", - "type": 1, - "flags": 7, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "tbl2", - "value": "tbl2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id1", - "value": "id1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id2", - "value": "id2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEFT OUTER JOIN", - "value": "LEFT OUTER JOIN", - "keyword": "LEFT OUTER JOIN", - "type": 1, - "flags": 7, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "l3", - "value": "l3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 33, - "idx": 33 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "tbl1", - "column": null, - "expr": "tbl1", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": false, - "expr": "1=1" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "l3", - "column": null, - "expr": "l3", - "alias": null, - "function": null, - "subquery": null - }, - "on": null, - "using": null - } - ], - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "DISTINCT" - } - }, - "first": 0, - "last": 30 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected ordering of clauses.", - { - "@type": "@24" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetCharacterSet.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetCharacterSet.in deleted file mode 100644 index 0653e044..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetCharacterSet.in +++ /dev/null @@ -1 +0,0 @@ -SET CHARACTER SET 'utf8' \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetCharacterSet.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetCharacterSet.out deleted file mode 100644 index 778c864a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetCharacterSet.out +++ /dev/null @@ -1,107 +0,0 @@ -{ - "query": "SET CHARACTER SET 'utf8'", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SET CHARACTER SET 'utf8'", - "len": 24, - "last": 24, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHARACTER SET", - "value": "CHARACTER SET", - "keyword": "CHARACTER SET", - "type": 1, - "flags": 7, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'utf8'", - "value": "utf8", - "keyword": null, - "type": 7, - "flags": 1, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 6, - "idx": 6 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": { - "name": "CHARACTER SET", - "equals": false, - "expr": "'utf8'", - "value": "utf8" - } - } - }, - "end_options": null, - "set": [], - "first": 0, - "last": 4 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetCharacterSetError.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetCharacterSetError.in deleted file mode 100644 index f44c24b6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetCharacterSetError.in +++ /dev/null @@ -1 +0,0 @@ -SET CHARACTER SET \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetCharacterSetError.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetCharacterSetError.out deleted file mode 100644 index 0fa2e004..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetCharacterSetError.out +++ /dev/null @@ -1,106 +0,0 @@ -{ - "query": "SET CHARACTER SET ", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SET CHARACTER SET ", - "len": 18, - "last": 18, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHARACTER SET", - "value": "CHARACTER SET", - "keyword": "CHARACTER SET", - "type": 1, - "flags": 7, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 5, - "idx": 5 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": { - "name": "CHARACTER SET", - "equals": false, - "expr": "", - "value": "" - } - } - }, - "end_options": null, - "set": [], - "first": 0, - "last": 3 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Value/Expression for the option CHARACTER SET was expected.", - { - "@type": "@5" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetCharset.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetCharset.in deleted file mode 100644 index 9c64472f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetCharset.in +++ /dev/null @@ -1 +0,0 @@ -SET CHARSET 'utf8' \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetCharset.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetCharset.out deleted file mode 100644 index afdce028..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetCharset.out +++ /dev/null @@ -1,107 +0,0 @@ -{ - "query": "SET CHARSET 'utf8'", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SET CHARSET 'utf8'", - "len": 18, - "last": 18, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHARSET", - "value": "CHARSET", - "keyword": "CHARSET", - "type": 1, - "flags": 33, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'utf8'", - "value": "utf8", - "keyword": null, - "type": 7, - "flags": 1, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 6, - "idx": 6 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": { - "name": "CHARSET", - "equals": false, - "expr": "'utf8'", - "value": "utf8" - } - } - }, - "end_options": null, - "set": [], - "first": 0, - "last": 4 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetCharsetError.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetCharsetError.in deleted file mode 100644 index f9de298c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetCharsetError.in +++ /dev/null @@ -1 +0,0 @@ -SET CHARSET \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetCharsetError.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetCharsetError.out deleted file mode 100644 index fda64ac6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetCharsetError.out +++ /dev/null @@ -1,106 +0,0 @@ -{ - "query": "SET CHARSET ", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SET CHARSET ", - "len": 12, - "last": 12, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHARSET", - "value": "CHARSET", - "keyword": "CHARSET", - "type": 0, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 5, - "idx": 5 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": { - "name": "CHARSET", - "equals": false, - "expr": "", - "value": "" - } - } - }, - "end_options": null, - "set": [], - "first": 0, - "last": 3 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Value/Expression for the option CHARSET was expected.", - { - "@type": "@5" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetError1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetError1.in deleted file mode 100644 index dca44f90..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetError1.in +++ /dev/null @@ -1 +0,0 @@ -SET CHARSET 'utf8' CHARACTER SET 'utf8' \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetError1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetError1.out deleted file mode 100644 index 28652929..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetError1.out +++ /dev/null @@ -1,157 +0,0 @@ -{ - "query": "SET CHARSET 'utf8' CHARACTER SET 'utf8'", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SET CHARSET 'utf8' CHARACTER SET 'utf8'", - "len": 39, - "last": 39, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHARSET", - "value": "CHARSET", - "keyword": "CHARSET", - "type": 1, - "flags": 33, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'utf8'", - "value": "utf8", - "keyword": null, - "type": 7, - "flags": 1, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHARACTER SET", - "value": "CHARACTER SET", - "keyword": "CHARACTER SET", - "type": 1, - "flags": 7, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'utf8'", - "value": "utf8", - "keyword": null, - "type": 7, - "flags": 1, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 10 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": { - "name": "CHARSET", - "equals": false, - "expr": "'utf8'", - "value": "utf8" - }, - "13": { - "name": "CHARACTER SET", - "equals": false, - "expr": "'utf8'", - "value": "utf8" - } - } - }, - "end_options": null, - "set": [], - "first": 0, - "last": 8 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "This option conflicts with \"CHARSET\".", - { - "@type": "@8" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetGlobalVariable.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetGlobalVariable.in deleted file mode 100644 index 6686a8c4..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetGlobalVariable.in +++ /dev/null @@ -1 +0,0 @@ -SET GLOBAL max_connections = 1 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetGlobalVariable.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetGlobalVariable.out deleted file mode 100644 index 31b2fa10..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetGlobalVariable.out +++ /dev/null @@ -1,144 +0,0 @@ -{ - "query": "SET GLOBAL max_connections = 1", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SET GLOBAL max_connections = 1", - "len": 30, - "last": 30, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "GLOBAL", - "value": "GLOBAL", - "keyword": "GLOBAL", - "type": 1, - "flags": 1, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "max_connections", - "value": "max_connections", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 10 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "GLOBAL" - } - }, - "end_options": null, - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "max_connections", - "value": "1" - } - ], - "first": 0, - "last": 8 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNames.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNames.in deleted file mode 100644 index 1b20c3f6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNames.in +++ /dev/null @@ -1 +0,0 @@ -SET NAMES 'utf8' \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNames.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNames.out deleted file mode 100644 index 3cc7bb90..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNames.out +++ /dev/null @@ -1,107 +0,0 @@ -{ - "query": "SET NAMES 'utf8'", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SET NAMES 'utf8'", - "len": 16, - "last": 16, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NAMES", - "value": "NAMES", - "keyword": "NAMES", - "type": 1, - "flags": 1, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'utf8'", - "value": "utf8", - "keyword": null, - "type": 7, - "flags": 1, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 6, - "idx": 6 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": { - "name": "NAMES", - "equals": false, - "expr": "'utf8'", - "value": "utf8" - } - } - }, - "end_options": null, - "set": [], - "first": 0, - "last": 4 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNames2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNames2.in deleted file mode 100644 index e39b644a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNames2.in +++ /dev/null @@ -1 +0,0 @@ -SET NAMES 'utf8' COLLATE 'utf8_general_ci' \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNames2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNames2.out deleted file mode 100644 index 1b64ed14..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNames2.out +++ /dev/null @@ -1,153 +0,0 @@ -{ - "query": "SET NAMES 'utf8' COLLATE 'utf8_general_ci'", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SET NAMES 'utf8' COLLATE 'utf8_general_ci'", - "len": 42, - "last": 42, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NAMES", - "value": "NAMES", - "keyword": "NAMES", - "type": 1, - "flags": 1, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'utf8'", - "value": "utf8", - "keyword": null, - "type": 7, - "flags": 1, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLLATE", - "value": "COLLATE", - "keyword": "COLLATE", - "type": 1, - "flags": 3, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'utf8_general_ci'", - "value": "utf8_general_ci", - "keyword": null, - "type": 7, - "flags": 1, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 10 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": { - "name": "NAMES", - "equals": false, - "expr": "'utf8'", - "value": "utf8" - } - } - }, - "end_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "COLLATE", - "equals": false, - "expr": "'utf8_general_ci'", - "value": "utf8_general_ci" - } - } - }, - "set": [], - "first": 0, - "last": 8 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNames3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNames3.in deleted file mode 100644 index 691dd086..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNames3.in +++ /dev/null @@ -1 +0,0 @@ -SET NAMES 'utf8' DEFAULT; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNames3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNames3.out deleted file mode 100644 index 6a08984f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNames3.out +++ /dev/null @@ -1,139 +0,0 @@ -{ - "query": "SET NAMES 'utf8' DEFAULT;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SET NAMES 'utf8' DEFAULT;", - "len": 25, - "last": 25, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NAMES", - "value": "NAMES", - "keyword": "NAMES", - "type": 1, - "flags": 1, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'utf8'", - "value": "utf8", - "keyword": null, - "type": 7, - "flags": 1, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 9, - "idx": 9 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": { - "name": "NAMES", - "equals": false, - "expr": "'utf8'", - "value": "utf8" - } - } - }, - "end_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "DEFAULT" - } - }, - "set": [], - "first": 0, - "last": 6 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNamesError.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNamesError.in deleted file mode 100644 index 3b6f833c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNamesError.in +++ /dev/null @@ -1 +0,0 @@ -SET NAMES \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNamesError.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNamesError.out deleted file mode 100644 index 647955a9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNamesError.out +++ /dev/null @@ -1,106 +0,0 @@ -{ - "query": "SET NAMES ", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SET NAMES ", - "len": 10, - "last": 10, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NAMES", - "value": "NAMES", - "keyword": "NAMES", - "type": 1, - "flags": 1, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 5, - "idx": 5 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": { - "name": "NAMES", - "equals": false, - "expr": "", - "value": "" - } - } - }, - "end_options": null, - "set": [], - "first": 0, - "last": 3 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Value/Expression for the option NAMES was expected.", - { - "@type": "@5" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNamesError2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNamesError2.in deleted file mode 100644 index 069c1a78..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNamesError2.in +++ /dev/null @@ -1 +0,0 @@ -SET NAMES 'utf8' DEFAULT 'utf8_general_ci' \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNamesError2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNamesError2.out deleted file mode 100644 index c26cbc25..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNamesError2.out +++ /dev/null @@ -1,156 +0,0 @@ -{ - "query": "SET NAMES 'utf8' DEFAULT 'utf8_general_ci'", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SET NAMES 'utf8' DEFAULT 'utf8_general_ci'", - "len": 42, - "last": 42, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NAMES", - "value": "NAMES", - "keyword": "NAMES", - "type": 1, - "flags": 1, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'utf8'", - "value": "utf8", - "keyword": null, - "type": 7, - "flags": 1, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'utf8_general_ci'", - "value": "utf8_general_ci", - "keyword": null, - "type": 7, - "flags": 1, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 10, - "idx": 10 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": { - "name": "NAMES", - "equals": false, - "expr": "'utf8'", - "value": "utf8" - } - } - }, - "end_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "DEFAULT" - } - }, - "set": [], - "first": 0, - "last": 8 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected token.", - { - "@type": "@10" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNamesError3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNamesError3.in deleted file mode 100644 index 1721acbc..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNamesError3.in +++ /dev/null @@ -1 +0,0 @@ -SET NAMES 'utf8' COLLATE \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNamesError3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNamesError3.out deleted file mode 100644 index a3e5474a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetNamesError3.out +++ /dev/null @@ -1,143 +0,0 @@ -{ - "query": "SET NAMES 'utf8' COLLATE", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SET NAMES 'utf8' COLLATE", - "len": 24, - "last": 24, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NAMES", - "value": "NAMES", - "keyword": "NAMES", - "type": 1, - "flags": 1, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'utf8'", - "value": "utf8", - "keyword": null, - "type": 7, - "flags": 1, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLLATE", - "value": "COLLATE", - "keyword": "COLLATE", - "type": 1, - "flags": 3, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 8, - "idx": 8 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": { - "name": "NAMES", - "equals": false, - "expr": "'utf8'", - "value": "utf8" - } - } - }, - "end_options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "COLLATE", - "equals": false, - "expr": "", - "value": "" - } - } - }, - "set": [], - "first": 0, - "last": 6 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Value/Expression for the option COLLATE was expected.", - { - "@type": "@8" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetVariable.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetVariable.in deleted file mode 100644 index 68b697d6..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetVariable.in +++ /dev/null @@ -1 +0,0 @@ -SET @foo = 1 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetVariable.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetVariable.out deleted file mode 100644 index 3406c4f0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetVariable.out +++ /dev/null @@ -1,124 +0,0 @@ -{ - "query": "SET @foo = 1", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SET @foo = 1", - "len": 12, - "last": 12, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@foo", - "value": "foo", - "keyword": null, - "type": 8, - "flags": 1, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 8, - "idx": 8 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "end_options": null, - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "@foo", - "value": "1" - } - ], - "first": 0, - "last": 6 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetVariable2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetVariable2.in deleted file mode 100644 index a1e851a2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetVariable2.in +++ /dev/null @@ -1 +0,0 @@ -SET @foo := 1 diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetVariable2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetVariable2.out deleted file mode 100644 index 73d10f04..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseSetVariable2.out +++ /dev/null @@ -1,133 +0,0 @@ -{ - "query": "SET @foo := 1\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SET @foo := 1\n", - "len": 14, - "last": 14, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 3 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@foo", - "value": "foo", - "keyword": null, - "type": 8, - "flags": 1, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ":=", - "value": ":=", - "keyword": null, - "type": 2, - "flags": 8, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 9, - "idx": 9 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "end_options": null, - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "@foo", - "value": "1" - } - ], - "first": 0, - "last": 7 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTable1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTable1.in deleted file mode 100644 index 6fbfa67a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTable1.in +++ /dev/null @@ -1 +0,0 @@ -TABLE `fo` ORDER BY `fo`.`uuid` ASC; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTable1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTable1.out deleted file mode 100644 index 0a15c565..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTable1.out +++ /dev/null @@ -1,159 +0,0 @@ -{ - "query": "TABLE `fo` ORDER BY `fo`.`uuid` ASC;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "TABLE `fo` ORDER BY `fo`.`uuid` ASC;", - "len": 36, - "last": 36, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`fo`", - "value": "fo", - "keyword": null, - "type": 8, - "flags": 2, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ORDER BY", - "value": "ORDER BY", - "keyword": "ORDER BY", - "type": 1, - "flags": 7, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`fo`", - "value": "fo", - "keyword": null, - "type": 8, - "flags": 2, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`uuid`", - "value": "uuid", - "keyword": null, - "type": 8, - "flags": 2, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ASC", - "value": "ASC", - "keyword": "ASC", - "type": 1, - "flags": 3, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 13, - "idx": 13 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unrecognized statement type.", - { - "@type": "@2" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction.in deleted file mode 100644 index 51c7e8ba..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction.in +++ /dev/null @@ -1,4 +0,0 @@ -START TRANSACTION; -SELECT @A:=SUM(salary) FROM table1 WHERE type=1; -UPDATE table2 SET summary=@A WHERE type=1; -COMMIT; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction.out deleted file mode 100644 index 52911da7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction.out +++ /dev/null @@ -1,546 +0,0 @@ -{ - "query": "START TRANSACTION;\nSELECT @A:=SUM(salary) FROM table1 WHERE type=1;\nUPDATE table2 SET summary=@A WHERE type=1;\nCOMMIT;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "START TRANSACTION;\nSELECT @A:=SUM(salary) FROM table1 WHERE type=1;\nUPDATE table2 SET summary=@A WHERE type=1;\nCOMMIT;", - "len": 118, - "last": 118, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "START TRANSACTION", - "value": "START TRANSACTION", - "keyword": "START TRANSACTION", - "type": 1, - "flags": 7, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@A", - "value": "A", - "keyword": null, - "type": 8, - "flags": 1, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ":=", - "value": ":=", - "keyword": null, - "type": 2, - "flags": 8, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUM", - "value": "SUM", - "keyword": "SUM", - "type": 1, - "flags": 33, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "salary", - "value": "salary", - "keyword": null, - "type": 0, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "type", - "value": "type", - "keyword": "TYPE", - "type": 1, - "flags": 1, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UPDATE", - "value": "UPDATE", - "keyword": "UPDATE", - "type": 1, - "flags": 3, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table2", - "value": "table2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "summary", - "value": "summary", - "keyword": null, - "type": 0, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@A", - "value": "A", - "keyword": null, - "type": 8, - "flags": 1, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "type", - "value": "type", - "keyword": "TYPE", - "type": 1, - "flags": 1, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMIT", - "value": "COMMIT", - "keyword": "COMMIT", - "type": 1, - "flags": 1, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 43, - "idx": 43 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\TransactionStatement", - "type": 1, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "@A:=SUM(salary)", - "alias": null, - "function": "SUM", - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "type" - ], - "isOperator": false, - "expr": "type=1" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 1, - "last": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\UpdateStatement", - "tables": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table2", - "column": null, - "expr": "table2", - "alias": null, - "function": null, - "subquery": null - } - ], - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "summary", - "value": "@A" - } - ], - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "type" - ], - "isOperator": false, - "expr": "type=1" - } - ], - "order": null, - "limit": null, - "join": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 21, - "last": 37 - } - ], - "end": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\TransactionStatement", - "type": 2, - "statements": null, - "end": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "COMMIT" - } - }, - "first": 38, - "last": 40 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "START TRANSACTION" - } - }, - "first": 0, - "last": 0 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction2.in deleted file mode 100644 index 672a626c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction2.in +++ /dev/null @@ -1,4 +0,0 @@ -START TRANSACTION; -SELECT @A:=SUM(salary) FROM table1 WHERE type=1; -UPDATE table2 SET summary=@A WHERE type=1; -ROLLBACK; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction2.out deleted file mode 100644 index 0624a8b3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction2.out +++ /dev/null @@ -1,546 +0,0 @@ -{ - "query": "START TRANSACTION;\nSELECT @A:=SUM(salary) FROM table1 WHERE type=1;\nUPDATE table2 SET summary=@A WHERE type=1;\nROLLBACK;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "START TRANSACTION;\nSELECT @A:=SUM(salary) FROM table1 WHERE type=1;\nUPDATE table2 SET summary=@A WHERE type=1;\nROLLBACK;", - "len": 120, - "last": 120, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "START TRANSACTION", - "value": "START TRANSACTION", - "keyword": "START TRANSACTION", - "type": 1, - "flags": 7, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@A", - "value": "A", - "keyword": null, - "type": 8, - "flags": 1, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ":=", - "value": ":=", - "keyword": null, - "type": 2, - "flags": 8, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SUM", - "value": "SUM", - "keyword": "SUM", - "type": 1, - "flags": 33, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "salary", - "value": "salary", - "keyword": null, - "type": 0, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table1", - "value": "table1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "type", - "value": "type", - "keyword": "TYPE", - "type": 1, - "flags": 1, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UPDATE", - "value": "UPDATE", - "keyword": "UPDATE", - "type": 1, - "flags": 3, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table2", - "value": "table2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "summary", - "value": "summary", - "keyword": null, - "type": 0, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@A", - "value": "A", - "keyword": null, - "type": 8, - "flags": 1, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "type", - "value": "type", - "keyword": "TYPE", - "type": 1, - "flags": 1, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ROLLBACK", - "value": "ROLLBACK", - "keyword": "ROLLBACK", - "type": 1, - "flags": 1, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 43, - "idx": 43 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\TransactionStatement", - "type": 1, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "@A:=SUM(salary)", - "alias": null, - "function": "SUM", - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table1", - "column": null, - "expr": "table1", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "type" - ], - "isOperator": false, - "expr": "type=1" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 1, - "last": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\UpdateStatement", - "tables": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table2", - "column": null, - "expr": "table2", - "alias": null, - "function": null, - "subquery": null - } - ], - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "summary", - "value": "@A" - } - ], - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "type" - ], - "isOperator": false, - "expr": "type=1" - } - ], - "order": null, - "limit": null, - "join": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 21, - "last": 37 - } - ], - "end": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\TransactionStatement", - "type": 2, - "statements": null, - "end": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ROLLBACK" - } - }, - "first": 38, - "last": 40 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "START TRANSACTION" - } - }, - "first": 0, - "last": 0 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction3.in deleted file mode 100644 index 5e7ed78b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction3.in +++ /dev/null @@ -1,3 +0,0 @@ -begin; -SELECT * FROM `tablename`; -commit; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction3.out deleted file mode 100644 index 50f4e5de..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction3.out +++ /dev/null @@ -1,225 +0,0 @@ -{ - "query": "begin;\nSELECT * FROM `tablename`;\ncommit;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "begin;\nSELECT * FROM `tablename`;\ncommit;\n", - "len": 42, - "last": 42, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "begin", - "value": "begin", - "keyword": "BEGIN", - "type": 1, - "flags": 1, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`tablename`", - "value": "tablename", - "keyword": null, - "type": 8, - "flags": 2, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "commit", - "value": "commit", - "keyword": "COMMIT", - "type": 1, - "flags": 1, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 16, - "idx": 16 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "tablename", - "column": null, - "expr": "`tablename`", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 1, - "last": 9 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction4.in deleted file mode 100644 index 5f2cab5c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction4.in +++ /dev/null @@ -1,3 +0,0 @@ - -START TRANSACTION; -SET time_zone = "+00:00"; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction4.out deleted file mode 100644 index f86308a7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction4.out +++ /dev/null @@ -1,193 +0,0 @@ -{ - "query": "\nSTART TRANSACTION;\nSET time_zone = \"+00:00\";\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "\nSTART TRANSACTION;\nSET time_zone = \"+00:00\";\n", - "len": 46, - "last": 46, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "START TRANSACTION", - "value": "START TRANSACTION", - "keyword": "START TRANSACTION", - "type": 1, - "flags": 7, - "position": 1 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "time_zone", - "value": "time_zone", - "keyword": null, - "type": 0, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"+00:00\"", - "value": "+00:00", - "keyword": null, - "type": 7, - "flags": 2, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 14, - "idx": 14 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\TransactionStatement", - "type": 1, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "end_options": null, - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "time_zone", - "value": "\"+00:00\"" - } - ], - "first": 2, - "last": 10 - } - ], - "end": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "START TRANSACTION" - } - }, - "first": 0, - "last": 1 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction5.in deleted file mode 100644 index 7efc52fd..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction5.in +++ /dev/null @@ -1,6 +0,0 @@ -BEGIN; - INSERT INTO t2 VALUES (3); - SAVEPOINT my_savepoint; - INSERT INTO t2 VALUES (4); - RELEASE SAVEPOINT my_savepoint; -COMMIT; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction5.out deleted file mode 100644 index a76e1dc0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction5.out +++ /dev/null @@ -1,560 +0,0 @@ -{ - "query": "BEGIN;\n INSERT INTO t2 VALUES (3);\n SAVEPOINT my_savepoint;\n INSERT INTO t2 VALUES (4);\n RELEASE SAVEPOINT my_savepoint;\nCOMMIT;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "BEGIN;\n INSERT INTO t2 VALUES (3);\n SAVEPOINT my_savepoint;\n INSERT INTO t2 VALUES (4);\n RELEASE SAVEPOINT my_savepoint;\nCOMMIT;", - "len": 140, - "last": 140, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BEGIN", - "value": "BEGIN", - "keyword": "BEGIN", - "type": 1, - "flags": 1, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t2", - "value": "t2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SAVEPOINT", - "value": "SAVEPOINT", - "keyword": "SAVEPOINT", - "type": 1, - "flags": 1, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_savepoint", - "value": "my_savepoint", - "keyword": null, - "type": 0, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t2", - "value": "t2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "4", - "value": 4, - "keyword": null, - "type": 6, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "RELEASE", - "value": "RELEASE", - "keyword": "RELEASE", - "type": 1, - "flags": 3, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SAVEPOINT", - "value": "SAVEPOINT", - "keyword": "SAVEPOINT", - "type": 1, - "flags": 1, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_savepoint", - "value": "my_savepoint", - "keyword": null, - "type": 0, - "flags": 0, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMIT", - "value": "COMMIT", - "keyword": "COMMIT", - "type": 1, - "flags": 1, - "position": 133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 44, - "idx": 44 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\TransactionStatement", - "type": 1, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "t2", - "column": null, - "expr": "t2", - "alias": null, - "function": null, - "subquery": null - }, - "columns": null, - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "3" - ], - "values": [ - "3" - ] - } - ], - "set": null, - "select": null, - "with": null, - "onDuplicateSet": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 1, - "last": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "t2", - "column": null, - "expr": "t2", - "alias": null, - "function": null, - "subquery": null - }, - "columns": null, - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "4" - ], - "values": [ - "4" - ] - } - ], - "set": null, - "select": null, - "with": null, - "onDuplicateSet": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 21, - "last": 31 - } - ], - "end": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\TransactionStatement", - "type": 2, - "statements": null, - "end": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "COMMIT" - } - }, - "first": 41, - "last": 41 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "BEGIN" - } - }, - "first": 0, - "last": 0 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unrecognized statement type.", - { - "@type": "@18" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@36" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction6.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction6.in deleted file mode 100644 index 9e9e9d5f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction6.in +++ /dev/null @@ -1,6 +0,0 @@ -BEGIN; - INSERT INTO t2 VALUES (3); - SAVEPOINT my_savepoint; - INSERT INTO t2 VALUES (4); - ROLLBACK WORK TO SAVEPOINT my_savepoint; -COMMIT; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction6.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction6.out deleted file mode 100644 index cb569839..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction6.out +++ /dev/null @@ -1,632 +0,0 @@ -{ - "query": "BEGIN;\n INSERT INTO t2 VALUES (3);\n SAVEPOINT my_savepoint;\n INSERT INTO t2 VALUES (4);\n ROLLBACK WORK TO SAVEPOINT my_savepoint;\nCOMMIT;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "BEGIN;\n INSERT INTO t2 VALUES (3);\n SAVEPOINT my_savepoint;\n INSERT INTO t2 VALUES (4);\n ROLLBACK WORK TO SAVEPOINT my_savepoint;\nCOMMIT;", - "len": 149, - "last": 149, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BEGIN", - "value": "BEGIN", - "keyword": "BEGIN", - "type": 1, - "flags": 1, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t2", - "value": "t2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SAVEPOINT", - "value": "SAVEPOINT", - "keyword": "SAVEPOINT", - "type": 1, - "flags": 1, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_savepoint", - "value": "my_savepoint", - "keyword": null, - "type": 0, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t2", - "value": "t2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "4", - "value": 4, - "keyword": null, - "type": 6, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ROLLBACK", - "value": "ROLLBACK", - "keyword": "ROLLBACK", - "type": 1, - "flags": 1, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WORK", - "value": "WORK", - "keyword": "WORK", - "type": 1, - "flags": 1, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SAVEPOINT", - "value": "SAVEPOINT", - "keyword": "SAVEPOINT", - "type": 1, - "flags": 1, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_savepoint", - "value": "my_savepoint", - "keyword": null, - "type": 0, - "flags": 0, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMIT", - "value": "COMMIT", - "keyword": "COMMIT", - "type": 1, - "flags": 1, - "position": 142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 48, - "idx": 48 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\TransactionStatement", - "type": 1, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "t2", - "column": null, - "expr": "t2", - "alias": null, - "function": null, - "subquery": null - }, - "columns": null, - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "3" - ], - "values": [ - "3" - ] - } - ], - "set": null, - "select": null, - "with": null, - "onDuplicateSet": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 1, - "last": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "t2", - "column": null, - "expr": "t2", - "alias": null, - "function": null, - "subquery": null - }, - "columns": null, - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "4" - ], - "values": [ - "4" - ] - } - ], - "set": null, - "select": null, - "with": null, - "onDuplicateSet": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 21, - "last": 31 - } - ], - "end": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\TransactionStatement", - "type": 2, - "statements": null, - "end": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ROLLBACK", - "2": "WORK" - } - }, - "first": 32, - "last": 42 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "BEGIN" - } - }, - "first": 0, - "last": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\TransactionStatement", - "type": 2, - "statements": null, - "end": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "COMMIT" - } - }, - "first": 43, - "last": 45 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unrecognized statement type.", - { - "@type": "@18" - }, - 0 - ], - [ - "Unrecognized keyword.", - { - "@type": "@40" - }, - 0 - ], - [ - "Unrecognized keyword.", - { - "@type": "@42" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@44" - }, - 0 - ], - [ - "No transaction was previously started.", - { - "@type": "@47" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction7.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction7.in deleted file mode 100644 index f5ed6a0f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction7.in +++ /dev/null @@ -1,6 +0,0 @@ -BEGIN; - INSERT INTO t2 VALUES (3); - SAVEPOINT my_savepoint; - INSERT INTO t2 VALUES (4); - ROLLBACK TO SAVEPOINT my_savepoint; -COMMIT; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction7.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction7.out deleted file mode 100644 index 61280fab..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransaction7.out +++ /dev/null @@ -1,613 +0,0 @@ -{ - "query": "BEGIN;\n INSERT INTO t2 VALUES (3);\n SAVEPOINT my_savepoint;\n INSERT INTO t2 VALUES (4);\n ROLLBACK TO SAVEPOINT my_savepoint;\nCOMMIT;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "BEGIN;\n INSERT INTO t2 VALUES (3);\n SAVEPOINT my_savepoint;\n INSERT INTO t2 VALUES (4);\n ROLLBACK TO SAVEPOINT my_savepoint;\nCOMMIT;", - "len": 144, - "last": 144, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BEGIN", - "value": "BEGIN", - "keyword": "BEGIN", - "type": 1, - "flags": 1, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t2", - "value": "t2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SAVEPOINT", - "value": "SAVEPOINT", - "keyword": "SAVEPOINT", - "type": 1, - "flags": 1, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_savepoint", - "value": "my_savepoint", - "keyword": null, - "type": 0, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t2", - "value": "t2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "4", - "value": 4, - "keyword": null, - "type": 6, - "flags": 0, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ROLLBACK", - "value": "ROLLBACK", - "keyword": "ROLLBACK", - "type": 1, - "flags": 1, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TO", - "value": "TO", - "keyword": "TO", - "type": 1, - "flags": 3, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SAVEPOINT", - "value": "SAVEPOINT", - "keyword": "SAVEPOINT", - "type": 1, - "flags": 1, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "my_savepoint", - "value": "my_savepoint", - "keyword": null, - "type": 0, - "flags": 0, - "position": 123 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMIT", - "value": "COMMIT", - "keyword": "COMMIT", - "type": 1, - "flags": 1, - "position": 137 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 46, - "idx": 46 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\TransactionStatement", - "type": 1, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "t2", - "column": null, - "expr": "t2", - "alias": null, - "function": null, - "subquery": null - }, - "columns": null, - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "3" - ], - "values": [ - "3" - ] - } - ], - "set": null, - "select": null, - "with": null, - "onDuplicateSet": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 1, - "last": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "t2", - "column": null, - "expr": "t2", - "alias": null, - "function": null, - "subquery": null - }, - "columns": null, - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "4" - ], - "values": [ - "4" - ] - } - ], - "set": null, - "select": null, - "with": null, - "onDuplicateSet": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 21, - "last": 31 - } - ], - "end": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\TransactionStatement", - "type": 2, - "statements": null, - "end": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ROLLBACK" - } - }, - "first": 32, - "last": 40 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "BEGIN" - } - }, - "first": 0, - "last": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\TransactionStatement", - "type": 2, - "statements": null, - "end": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "COMMIT" - } - }, - "first": 41, - "last": 43 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unrecognized statement type.", - { - "@type": "@18" - }, - 0 - ], - [ - "Unrecognized keyword.", - { - "@type": "@38" - }, - 0 - ], - [ - "Unrecognized keyword.", - { - "@type": "@40" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@42" - }, - 0 - ], - [ - "No transaction was previously started.", - { - "@type": "@45" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransactionErr1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransactionErr1.in deleted file mode 100644 index 3ed481da..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransactionErr1.in +++ /dev/null @@ -1 +0,0 @@ -COMMIT; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransactionErr1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransactionErr1.out deleted file mode 100644 index 775b77bb..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseTransactionErr1.out +++ /dev/null @@ -1,84 +0,0 @@ -{ - "query": "COMMIT;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "COMMIT;", - "len": 7, - "last": 7, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMIT", - "value": "COMMIT", - "keyword": "COMMIT", - "type": 1, - "flags": 1, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 3, - "idx": 3 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\TransactionStatement", - "type": 2, - "statements": null, - "end": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "COMMIT" - } - }, - "first": 0, - "last": 0 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "No transaction was previously started.", - { - "@type": "@2" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUnlock1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUnlock1.in deleted file mode 100644 index bff5b2a2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUnlock1.in +++ /dev/null @@ -1 +0,0 @@ -UNLOCK TABLES; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUnlock1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUnlock1.out deleted file mode 100644 index dbe98fc8..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUnlock1.out +++ /dev/null @@ -1,88 +0,0 @@ -{ - "query": "UNLOCK TABLES;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "UNLOCK TABLES;", - "len": 14, - "last": 14, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNLOCK", - "value": "UNLOCK", - "keyword": "UNLOCK", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLES", - "value": "TABLES", - "keyword": "TABLES", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 5, - "idx": 5 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LockStatement", - "locked": [], - "isLock": false, - "options": null, - "first": 0, - "last": 3 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUnlockErr1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUnlockErr1.in deleted file mode 100644 index 2c0afd46..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUnlockErr1.in +++ /dev/null @@ -1 +0,0 @@ -UNLOCK TABLES abc; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUnlockErr1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUnlockErr1.out deleted file mode 100644 index fbb85471..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUnlockErr1.out +++ /dev/null @@ -1,114 +0,0 @@ -{ - "query": "UNLOCK TABLES abc;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "UNLOCK TABLES abc;", - "len": 18, - "last": 18, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNLOCK", - "value": "UNLOCK", - "keyword": "UNLOCK", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLES", - "value": "TABLES", - "keyword": "TABLES", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "abc", - "value": "abc", - "keyword": null, - "type": 0, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 7, - "idx": 7 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\LockStatement", - "locked": [], - "isLock": false, - "options": null, - "first": 0, - "last": 4 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected token.", - { - "@type": "@6" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate1.in deleted file mode 100644 index b35dbeb1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate1.in +++ /dev/null @@ -1,5 +0,0 @@ -UPDATE - users -SET - username = "Dan", - id=155; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate1.out deleted file mode 100644 index f38d0861..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate1.out +++ /dev/null @@ -1,234 +0,0 @@ -{ - "query": "UPDATE\n users\nSET\n username = \"Dan\",\n id=155;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "UPDATE\n users\nSET\n username = \"Dan\",\n id=155;", - "len": 54, - "last": 54, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UPDATE", - "value": "UPDATE", - "keyword": "UPDATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "users", - "value": "users", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Dan\"", - "value": "Dan", - "keyword": null, - "type": 7, - "flags": 2, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "155", - "value": 155, - "keyword": null, - "type": 6, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 18, - "idx": 18 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\UpdateStatement", - "tables": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "users", - "column": null, - "expr": "users", - "alias": null, - "function": null, - "subquery": null - } - ], - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "username", - "value": "\"Dan\"" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "id", - "value": "155" - } - ], - "where": null, - "order": null, - "limit": null, - "join": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 15 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate2.in deleted file mode 100644 index 71621183..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate2.in +++ /dev/null @@ -1,8 +0,0 @@ -UPDATE - users -SET - username = "Dan", - id=155 -WHERE - username = "Paul" -LIMIT 1 OFFSET 2; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate2.out deleted file mode 100644 index 4ae66140..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate2.out +++ /dev/null @@ -1,392 +0,0 @@ -{ - "query": "UPDATE\n users\nSET\n username = \"Dan\",\n id=155\nWHERE\n username = \"Paul\"\nLIMIT 1 OFFSET 2;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "UPDATE\n users\nSET\n username = \"Dan\",\n id=155\nWHERE\n username = \"Paul\"\nLIMIT 1 OFFSET 2;", - "len": 99, - "last": 99, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UPDATE", - "value": "UPDATE", - "keyword": "UPDATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "users", - "value": "users", - "keyword": null, - "type": 0, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Dan\"", - "value": "Dan", - "keyword": null, - "type": 7, - "flags": 2, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "155", - "value": 155, - "keyword": null, - "type": 6, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Paul\"", - "value": "Paul", - "keyword": null, - "type": 7, - "flags": 2, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LIMIT", - "value": "LIMIT", - "keyword": "LIMIT", - "type": 1, - "flags": 3, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "OFFSET", - "value": "OFFSET", - "keyword": "OFFSET", - "type": 1, - "flags": 1, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 98 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 34, - "idx": 34 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\UpdateStatement", - "tables": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "users", - "column": null, - "expr": "users", - "alias": null, - "function": null, - "subquery": null - } - ], - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "username", - "value": "\"Dan\"" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "id", - "value": "155" - } - ], - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "username", - "Paul" - ], - "isOperator": false, - "expr": "username = \"Paul\"" - } - ], - "order": null, - "limit": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Limit", - "offset": 2, - "rowCount": 1 - }, - "join": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 31 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate3.in deleted file mode 100644 index ae511c92..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate3.in +++ /dev/null @@ -1 +0,0 @@ -UPDATE foo SET bar = WHERE baz = 0 diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate3.out deleted file mode 100644 index 75a41bff..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate3.out +++ /dev/null @@ -1,256 +0,0 @@ -{ - "query": "UPDATE foo SET bar = WHERE baz = 0\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "UPDATE foo SET bar = WHERE baz = 0\n", - "len": 36, - "last": 36, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UPDATE", - "value": "UPDATE", - "keyword": "UPDATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "bar", - "value": "bar", - "keyword": null, - "type": 0, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "baz", - "value": "baz", - "keyword": null, - "type": 0, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 19, - "idx": 19 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\UpdateStatement", - "tables": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "foo", - "column": null, - "expr": "foo", - "alias": null, - "function": null, - "subquery": null - } - ], - "set": [], - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "baz" - ], - "isOperator": false, - "expr": "baz = 0" - } - ], - "order": null, - "limit": null, - "join": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 17 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Missing expression.", - { - "@type": "@12" - }, - 0 - ], - [ - "Missing assignment in SET operation.", - { - "@type": "@11" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate4.in deleted file mode 100644 index 892f7278..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate4.in +++ /dev/null @@ -1 +0,0 @@ -UPDATE Country x, City y set x.Name=x.Name where x.Code=y.CountryCode; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate4.out deleted file mode 100644 index 1fb95bce..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate4.out +++ /dev/null @@ -1,377 +0,0 @@ -{ - "query": "UPDATE Country x, City y set x.Name=x.Name where x.Code=y.CountryCode;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "UPDATE Country x, City y set x.Name=x.Name where x.Code=y.CountryCode;", - "len": 70, - "last": 70, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UPDATE", - "value": "UPDATE", - "keyword": "UPDATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "Country", - "value": "Country", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "x", - "value": "x", - "keyword": "x", - "type": 0, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 17 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "City", - "value": "City", - "keyword": null, - "type": 0, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "y", - "value": "y", - "keyword": "y", - "type": 0, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "set", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "x", - "value": "x", - "keyword": "x", - "type": 0, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "Name", - "value": "Name", - "keyword": "NAME", - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "x", - "value": "x", - "keyword": "x", - "type": 0, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "Name", - "value": "Name", - "keyword": "NAME", - "type": 0, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "where", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "x", - "value": "x", - "keyword": "x", - "type": 0, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "Code", - "value": "Code", - "keyword": "CODE", - "type": 0, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "y", - "value": "y", - "keyword": "y", - "type": 0, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CountryCode", - "value": "CountryCode", - "keyword": null, - "type": 0, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 32, - "idx": 32 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\UpdateStatement", - "tables": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "Country", - "column": null, - "expr": "Country", - "alias": "x", - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "City", - "column": null, - "expr": "City", - "alias": "y", - "function": null, - "subquery": null - } - ], - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "x.Name", - "value": "x.Name" - } - ], - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "x", - "Code", - "y", - "CountryCode" - ], - "isOperator": false, - "expr": "x.Code=y.CountryCode" - } - ], - "order": null, - "limit": null, - "join": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 29 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate5.in deleted file mode 100644 index 182209f3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate5.in +++ /dev/null @@ -1 +0,0 @@ -update user u left join user_detail ud on u.id = ud.user_id set ud.ip ='33' where u.id = 1 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate5.out deleted file mode 100644 index e88120da..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate5.out +++ /dev/null @@ -1,493 +0,0 @@ -{ - "query": "update user u left join user_detail ud on u.id = ud.user_id set ud.ip ='33' where u.id = 1", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "update user u left join user_detail ud on u.id = ud.user_id set ud.ip ='33' where u.id = 1", - "len": 90, - "last": 90, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "update", - "value": "UPDATE", - "keyword": "UPDATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "user", - "value": "user", - "keyword": "USER", - "type": 1, - "flags": 33, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "u", - "value": "u", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "left join", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "user_detail", - "value": "user_detail", - "keyword": null, - "type": 0, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ud", - "value": "ud", - "keyword": null, - "type": 0, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "on", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "u", - "value": "u", - "keyword": null, - "type": 0, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ud", - "value": "ud", - "keyword": null, - "type": 0, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "user_id", - "value": "user_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "set", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ud", - "value": "ud", - "keyword": null, - "type": 0, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ip", - "value": "ip", - "keyword": null, - "type": 0, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'33'", - "value": "33", - "keyword": null, - "type": 7, - "flags": 1, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "where", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "u", - "value": "u", - "keyword": null, - "type": 0, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 43, - "idx": 43 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\UpdateStatement", - "tables": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "user", - "column": null, - "expr": "user", - "alias": "u", - "function": null, - "subquery": null - } - ], - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "ud.ip", - "value": "'33'" - } - ], - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "u", - "id" - ], - "isOperator": false, - "expr": "u.id = 1" - } - ], - "order": null, - "limit": null, - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "user_detail", - "column": null, - "expr": "user_detail", - "alias": "ud", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "u", - "id", - "ud", - "user_id" - ], - "isOperator": false, - "expr": "u.id = ud.user_id" - } - ], - "using": null - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 41 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate6.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate6.in deleted file mode 100644 index 5078bd49..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate6.in +++ /dev/null @@ -1,11 +0,0 @@ -UPDATE customer_table c - - JOIN - employee_table e - ON c.city_id = e.city_id - JOIN - anyother_table a - ON a.someID = e.someID - -SET c.active = "Yes" -WHERE c.city = "New york"; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate6.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate6.out deleted file mode 100644 index 0c7df451..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate6.out +++ /dev/null @@ -1,700 +0,0 @@ -{ - "query": "UPDATE customer_table c\n\n JOIN\n employee_table e\n ON c.city_id = e.city_id\n JOIN\n anyother_table a\n ON a.someID = e.someID\n\nSET c.active = \"Yes\"\nWHERE c.city = \"New york\";", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "UPDATE customer_table c\n\n JOIN\n employee_table e\n ON c.city_id = e.city_id\n JOIN\n anyother_table a\n ON a.someID = e.someID\n\nSET c.active = \"Yes\"\nWHERE c.city = \"New york\";", - "len": 193, - "last": 193, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UPDATE", - "value": "UPDATE", - "keyword": "UPDATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "customer_table", - "value": "customer_table", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "JOIN", - "value": "JOIN", - "keyword": "JOIN", - "type": 1, - "flags": 3, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "employee_table", - "value": "employee_table", - "keyword": null, - "type": 0, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "e", - "value": "e", - "keyword": null, - "type": 0, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "city_id", - "value": "city_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "e", - "value": "e", - "keyword": null, - "type": 0, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "city_id", - "value": "city_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "JOIN", - "value": "JOIN", - "keyword": "JOIN", - "type": 1, - "flags": 3, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "anyother_table", - "value": "anyother_table", - "keyword": null, - "type": 0, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 122 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "someID", - "value": "someID", - "keyword": null, - "type": 0, - "flags": 0, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 134 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "e", - "value": "e", - "keyword": null, - "type": 0, - "flags": 0, - "position": 136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 137 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "someID", - "value": "someID", - "keyword": null, - "type": 0, - "flags": 0, - "position": 138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 144 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 150 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "active", - "value": "active", - "keyword": null, - "type": 0, - "flags": 0, - "position": 152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 159 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 160 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Yes\"", - "value": "Yes", - "keyword": null, - "type": 7, - "flags": 2, - "position": 161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 166 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 172 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 173 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "city", - "value": "city", - "keyword": null, - "type": 0, - "flags": 0, - "position": 175 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 179 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 180 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 181 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"New york\"", - "value": "New york", - "keyword": null, - "type": 7, - "flags": 2, - "position": 182 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 192 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 63, - "idx": 63 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\UpdateStatement", - "tables": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "customer_table", - "column": null, - "expr": "customer_table", - "alias": "c", - "function": null, - "subquery": null - } - ], - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "c.active", - "value": "\"Yes\"" - } - ], - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "c", - "city", - "New york" - ], - "isOperator": false, - "expr": "c.city = \"New york\"" - } - ], - "order": null, - "limit": null, - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "JOIN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "employee_table", - "column": null, - "expr": "employee_table", - "alias": "e", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "c", - "city_id", - "e" - ], - "isOperator": false, - "expr": "c.city_id = e.city_id" - } - ], - "using": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "JOIN", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "anyother_table", - "column": null, - "expr": "anyother_table", - "alias": "a", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "a", - "someID", - "e" - ], - "isOperator": false, - "expr": "a.someID = e.someID" - } - ], - "using": null - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 60 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate7.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate7.in deleted file mode 100644 index d9fcbc83..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate7.in +++ /dev/null @@ -1,11 +0,0 @@ -UPDATE customer_table c - - INNER JOIN - employee_table e - ON c.city_id = e.city_id - LEFT JOIN - anyother_table a - ON a.someID = e.someID - -SET c.active = "Yes" -WHERE c.city = "New york"; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate7.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate7.out deleted file mode 100644 index 89d55abc..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdate7.out +++ /dev/null @@ -1,700 +0,0 @@ -{ - "query": "UPDATE customer_table c\n\n INNER JOIN\n employee_table e\n ON c.city_id = e.city_id\n LEFT JOIN\n anyother_table a\n ON a.someID = e.someID\n\nSET c.active = \"Yes\"\nWHERE c.city = \"New york\";", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "UPDATE customer_table c\n\n INNER JOIN\n employee_table e\n ON c.city_id = e.city_id\n LEFT JOIN\n anyother_table a\n ON a.someID = e.someID\n\nSET c.active = \"Yes\"\nWHERE c.city = \"New york\";", - "len": 204, - "last": 204, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UPDATE", - "value": "UPDATE", - "keyword": "UPDATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "customer_table", - "value": "customer_table", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INNER JOIN", - "value": "INNER JOIN", - "keyword": "INNER JOIN", - "type": 1, - "flags": 7, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "employee_table", - "value": "employee_table", - "keyword": null, - "type": 0, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "e", - "value": "e", - "keyword": null, - "type": 0, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "city_id", - "value": "city_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "e", - "value": "e", - "keyword": null, - "type": 0, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "city_id", - "value": "city_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "LEFT JOIN", - "value": "LEFT JOIN", - "keyword": "LEFT JOIN", - "type": 1, - "flags": 7, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "anyother_table", - "value": "anyother_table", - "keyword": null, - "type": 0, - "flags": 0, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 124 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 133 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "a", - "value": "a", - "keyword": null, - "type": 0, - "flags": 0, - "position": 136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 137 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "someID", - "value": "someID", - "keyword": null, - "type": 0, - "flags": 0, - "position": 138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 144 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "e", - "value": "e", - "keyword": null, - "type": 0, - "flags": 0, - "position": 147 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "someID", - "value": "someID", - "keyword": null, - "type": 0, - "flags": 0, - "position": 149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 155 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 157 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 160 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 162 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "active", - "value": "active", - "keyword": null, - "type": 0, - "flags": 0, - "position": 163 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 169 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 170 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 171 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Yes\"", - "value": "Yes", - "keyword": null, - "type": 7, - "flags": 2, - "position": 172 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 177 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 178 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 183 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 184 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 185 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "city", - "value": "city", - "keyword": null, - "type": 0, - "flags": 0, - "position": 186 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 190 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 191 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 192 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"New york\"", - "value": "New york", - "keyword": null, - "type": 7, - "flags": 2, - "position": 193 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 203 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 63, - "idx": 63 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\UpdateStatement", - "tables": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "customer_table", - "column": null, - "expr": "customer_table", - "alias": "c", - "function": null, - "subquery": null - } - ], - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "c.active", - "value": "\"Yes\"" - } - ], - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "c", - "city", - "New york" - ], - "isOperator": false, - "expr": "c.city = \"New york\"" - } - ], - "order": null, - "limit": null, - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "INNER", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "employee_table", - "column": null, - "expr": "employee_table", - "alias": "e", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "c", - "city_id", - "e" - ], - "isOperator": false, - "expr": "c.city_id = e.city_id" - } - ], - "using": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "LEFT", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "anyother_table", - "column": null, - "expr": "anyother_table", - "alias": "a", - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "a", - "someID", - "e" - ], - "isOperator": false, - "expr": "a.someID = e.someID" - } - ], - "using": null - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 60 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdateEmptySet.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdateEmptySet.in deleted file mode 100644 index 996d765b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdateEmptySet.in +++ /dev/null @@ -1 +0,0 @@ -UPDATE test SET WHERE 1; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdateEmptySet.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdateEmptySet.out deleted file mode 100644 index dbeff527..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdateEmptySet.out +++ /dev/null @@ -1,184 +0,0 @@ -{ - "query": "UPDATE test SET WHERE 1;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "UPDATE test SET WHERE 1;\n", - "len": 25, - "last": 25, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UPDATE", - "value": "UPDATE", - "keyword": "UPDATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 12, - "idx": 12 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\UpdateStatement", - "tables": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test", - "column": null, - "expr": "test", - "alias": null, - "function": null, - "subquery": null - } - ], - "set": [], - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": false, - "expr": "1" - } - ], - "order": null, - "limit": null, - "join": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 8 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Missing assignment in SET operation.", - { - "@type": "@7" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdateErr.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdateErr.in deleted file mode 100644 index d2caecb1..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdateErr.in +++ /dev/null @@ -1,7 +0,0 @@ --- extraneous comma -UPDATE - users -SET - username = "Dan", - id=155, -WHERE 1 = 1; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdateErr.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdateErr.out deleted file mode 100644 index ad8c5f4c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseUpdateErr.out +++ /dev/null @@ -1,348 +0,0 @@ -{ - "query": "-- extraneous comma\nUPDATE\n users\nSET\n username = \"Dan\",\n id=155,\nWHERE 1 = 1;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "-- extraneous comma\nUPDATE\n users\nSET\n username = \"Dan\",\n id=155,\nWHERE 1 = 1;", - "len": 87, - "last": 87, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- extraneous comma", - "value": "-- extraneous comma", - "keyword": null, - "type": 4, - "flags": 4, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UPDATE", - "value": "UPDATE", - "keyword": "UPDATE", - "type": 1, - "flags": 3, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "users", - "value": "users", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "username", - "value": "username", - "keyword": null, - "type": 0, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"Dan\"", - "value": "Dan", - "keyword": null, - "type": 7, - "flags": 2, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "id", - "value": "id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "155", - "value": 155, - "keyword": null, - "type": 6, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 29, - "idx": 29 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\UpdateStatement", - "tables": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "users", - "column": null, - "expr": "users", - "alias": null, - "function": null, - "subquery": null - } - ], - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "username", - "value": "\"Dan\"" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "id", - "value": "155" - } - ], - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": false, - "expr": "1 = 1" - } - ], - "order": null, - "limit": null, - "join": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 26 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected token.", - { - "@type": "@20" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWhere0.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWhere0.in deleted file mode 100644 index e089e23d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWhere0.in +++ /dev/null @@ -1 +0,0 @@ -DELETE FROM t where 0 AND 0 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWhere0.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWhere0.out deleted file mode 100644 index 0c851a6d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWhere0.out +++ /dev/null @@ -1,208 +0,0 @@ -{ - "query": "DELETE FROM t where 0 AND 0", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "DELETE FROM t where 0 AND 0", - "len": 27, - "last": 27, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "t", - "value": "t", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "where", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 14, - "idx": 14 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "t", - "column": null, - "expr": "t", - "alias": null, - "function": null, - "subquery": null - } - ], - "join": null, - "using": null, - "columns": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": false, - "expr": "0" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": true, - "expr": "AND" - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [], - "isOperator": false, - "expr": "0" - } - ], - "order": null, - "limit": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 12 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement.in deleted file mode 100644 index 9e1537b9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement.in +++ /dev/null @@ -1 +0,0 @@ -INSERT INTO table_name WITH cte (col1) AS ( SELECT 1 UNION ALL SELECT 2 ) SELECT col1 FROM cte \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement.out deleted file mode 100644 index 0e34d7eb..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement.out +++ /dev/null @@ -1,642 +0,0 @@ -{ - "query": "INSERT INTO table_name WITH cte (col1) AS ( SELECT 1 UNION ALL SELECT 2 ) SELECT col1 FROM cte", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "INSERT INTO table_name WITH cte (col1) AS ( SELECT 1 UNION ALL SELECT 2 ) SELECT col1 FROM cte", - "len": 94, - "last": 94, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table_name", - "value": "table_name", - "keyword": "TABLE_NAME", - "type": 1, - "flags": 1, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNION ALL", - "value": "UNION ALL", - "keyword": "UNION ALL", - "type": 1, - "flags": 7, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 38, - "idx": 38 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table_name", - "column": null, - "expr": "table_name", - "alias": null, - "function": null, - "subquery": null - }, - "columns": null, - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": null, - "set": null, - "select": null, - "with": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\WithStatement", - "withers": { - "cte": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\WithKeyword", - "name": "cte", - "columns": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "col1" - ], - "values": [ - "col1" - ] - } - ], - "statement": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - }, - { - "@type": "@27" - }, - { - "@type": "@28" - }, - { - "@type": "@29" - } - ], - "count": 11, - "idx": 11 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [ - [ - "UNION ALL", - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "2", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": [], - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 5, - "last": 10 - } - ] - ], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 10 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - } - } - }, - "cteStatementParser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@32" - }, - { - "@type": "@33" - }, - { - "@type": "@34" - }, - { - "@type": "@35" - }, - { - "@type": "@36" - }, - { - "@type": "@37" - }, - { - "@type": "@38" - }, - { - "@type": "@39" - } - ], - "count": 8, - "idx": 8 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "col1", - "expr": "col1", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "cte", - "column": null, - "expr": "cte", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 6 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": null, - "last": null - }, - "onDuplicateSet": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 36 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement1.in deleted file mode 100644 index 126dc666..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement1.in +++ /dev/null @@ -1 +0,0 @@ -CREATE table table_name WITH cte (col1) AS ( SELECT 1 UNION ALL SELECT 2 ) SELECT col1 FROM cte \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement1.out deleted file mode 100644 index 7a58340d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement1.out +++ /dev/null @@ -1,644 +0,0 @@ -{ - "query": "CREATE table table_name WITH cte (col1) AS ( SELECT 1 UNION ALL SELECT 2 ) SELECT col1 FROM cte", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE table table_name WITH cte (col1) AS ( SELECT 1 UNION ALL SELECT 2 ) SELECT col1 FROM cte", - "len": 95, - "last": 95, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table_name", - "value": "table_name", - "keyword": "TABLE_NAME", - "type": 1, - "flags": 1, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNION ALL", - "value": "UNION ALL", - "keyword": "UNION ALL", - "type": 1, - "flags": 7, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 38, - "idx": 38 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table_name", - "column": null, - "expr": "table_name", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": null, - "with": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\WithStatement", - "withers": { - "cte": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\WithKeyword", - "name": "cte", - "columns": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "col1" - ], - "values": [ - "col1" - ] - } - ], - "statement": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - }, - { - "@type": "@27" - }, - { - "@type": "@28" - }, - { - "@type": "@29" - } - ], - "count": 11, - "idx": 11 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [ - [ - "UNION ALL", - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "2", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": [], - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 5, - "last": 10 - } - ] - ], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 10 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - } - } - }, - "cteStatementParser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@32" - }, - { - "@type": "@33" - }, - { - "@type": "@34" - }, - { - "@type": "@35" - }, - { - "@type": "@36" - }, - { - "@type": "@37" - }, - { - "@type": "@38" - }, - { - "@type": "@39" - } - ], - "count": 8, - "idx": 8 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "col1", - "expr": "col1", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "cte", - "column": null, - "expr": "cte", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 6 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": null, - "last": null - }, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 36 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement2.in deleted file mode 100644 index 66792dec..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement2.in +++ /dev/null @@ -1 +0,0 @@ -INSERT INTO table_name WITH cte (col1) AS ( SELECT 1 ) SELECT col1 FROM cte ON DUPLICATE KEY UPDATE col_name = 3 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement2.out deleted file mode 100644 index 63953a5c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement2.out +++ /dev/null @@ -1,663 +0,0 @@ -{ - "query": "INSERT INTO table_name WITH cte (col1) AS ( SELECT 1 ) SELECT col1 FROM cte ON DUPLICATE KEY UPDATE col_name = 3", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "INSERT INTO table_name WITH cte (col1) AS ( SELECT 1 ) SELECT col1 FROM cte ON DUPLICATE KEY UPDATE col_name = 3", - "len": 112, - "last": 112, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table_name", - "value": "table_name", - "keyword": "TABLE_NAME", - "type": 1, - "flags": 1, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DUPLICATE", - "value": "DUPLICATE", - "keyword": "DUPLICATE", - "type": 1, - "flags": 1, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KEY", - "value": "KEY", - "keyword": "KEY", - "type": 1, - "flags": 19, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UPDATE", - "value": "UPDATE", - "keyword": "UPDATE", - "type": 1, - "flags": 3, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 99 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col_name", - "value": "col_name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 108 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 46, - "idx": 46 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table_name", - "column": null, - "expr": "table_name", - "alias": null, - "function": null, - "subquery": null - }, - "columns": null, - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": null, - "set": null, - "select": null, - "with": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\WithStatement", - "withers": { - "cte": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\WithKeyword", - "name": "cte", - "columns": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "col1" - ], - "values": [ - "col1" - ] - } - ], - "statement": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - } - ], - "count": 5, - "idx": 5 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 4 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - } - } - }, - "cteStatementParser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@26" - }, - { - "@type": "@27" - }, - { - "@type": "@28" - }, - { - "@type": "@29" - }, - { - "@type": "@30" - }, - { - "@type": "@31" - }, - { - "@type": "@32" - }, - { - "@type": "@33" - } - ], - "count": 8, - "idx": 8 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "col1", - "expr": "col1", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "cte", - "column": null, - "expr": "cte", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 7 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": null, - "last": null - }, - "onDuplicateSet": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "col_name", - "value": "3" - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 44 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement3.in deleted file mode 100644 index 1d74ea8c..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement3.in +++ /dev/null @@ -1 +0,0 @@ -WITH categories(identifier, name, parent_id) AS ( SELECT c.identifier, c.name, c.parent_id FROM category c WHERE c.identifier = 'a' UNION ALL SELECT c.identifier, c.name, c.parent_id FROM categories, category c WHERE c.identifier = categories.parent_id ), foo AS ( SELECT * FROM test ) SELECT * FROM categories \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement3.out deleted file mode 100644 index 20a3b8e7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement3.out +++ /dev/null @@ -1,1678 +0,0 @@ -{ - "query": "WITH categories(identifier, name, parent_id) AS ( SELECT c.identifier, c.name, c.parent_id FROM category c WHERE c.identifier = 'a' UNION ALL SELECT c.identifier, c.name, c.parent_id FROM categories, category c WHERE c.identifier = categories.parent_id ), foo AS ( SELECT * FROM test ) SELECT * FROM categories", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "WITH categories(identifier, name, parent_id) AS ( SELECT c.identifier, c.name, c.parent_id FROM category c WHERE c.identifier = 'a' UNION ALL SELECT c.identifier, c.name, c.parent_id FROM categories, category c WHERE c.identifier = categories.parent_id ), foo AS ( SELECT * FROM test ) SELECT * FROM categories", - "len": 310, - "last": 310, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "categories", - "value": "categories", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "identifier", - "value": "identifier", - "keyword": null, - "type": 0, - "flags": 0, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 1, - "flags": 1, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "parent_id", - "value": "parent_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "identifier", - "value": "identifier", - "keyword": null, - "type": 0, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 0, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "parent_id", - "value": "parent_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "category", - "value": "category", - "keyword": null, - "type": 0, - "flags": 0, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 104 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 107 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 112 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 113 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 114 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "identifier", - "value": "identifier", - "keyword": null, - "type": 0, - "flags": 0, - "position": 115 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'a'", - "value": "a", - "keyword": null, - "type": 7, - "flags": 1, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNION ALL", - "value": "UNION ALL", - "keyword": "UNION ALL", - "type": 1, - "flags": 7, - "position": 132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 142 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 150 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "identifier", - "value": "identifier", - "keyword": null, - "type": 0, - "flags": 0, - "position": 151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 161 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 162 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 163 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 164 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "name", - "value": "name", - "keyword": "NAME", - "type": 0, - "flags": 0, - "position": 165 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 169 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 170 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 171 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 172 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "parent_id", - "value": "parent_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 173 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 182 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 183 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 187 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "categories", - "value": "categories", - "keyword": null, - "type": 0, - "flags": 0, - "position": 188 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 198 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 199 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "category", - "value": "category", - "keyword": null, - "type": 0, - "flags": 0, - "position": 200 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 208 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 209 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 210 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 211 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 216 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "c", - "value": "c", - "keyword": null, - "type": 0, - "flags": 0, - "position": 217 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 218 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "identifier", - "value": "identifier", - "keyword": null, - "type": 0, - "flags": 0, - "position": 219 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 229 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 230 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 231 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "categories", - "value": "categories", - "keyword": null, - "type": 0, - "flags": 0, - "position": 232 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 242 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "parent_id", - "value": "parent_id", - "keyword": null, - "type": 0, - "flags": 0, - "position": 243 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 252 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 253 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 254 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 255 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "foo", - "value": "foo", - "keyword": null, - "type": 0, - "flags": 0, - "position": 256 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 259 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 260 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 262 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 263 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 264 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 265 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 271 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 272 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 273 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 274 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 278 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "test", - "value": "test", - "keyword": null, - "type": 0, - "flags": 0, - "position": 279 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 283 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 284 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 285 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 286 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 292 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 293 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 294 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 295 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 299 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "categories", - "value": "categories", - "keyword": null, - "type": 0, - "flags": 0, - "position": 300 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 115, - "idx": 115 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\WithStatement", - "withers": { - "categories": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\WithKeyword", - "name": "categories", - "columns": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "identifier", - "name", - "parent_id" - ], - "values": [ - "identifier", - "name", - "parent_id" - ] - } - ], - "statement": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - }, - { - "@type": "@27" - }, - { - "@type": "@28" - }, - { - "@type": "@29" - }, - { - "@type": "@30" - }, - { - "@type": "@31" - }, - { - "@type": "@32" - }, - { - "@type": "@33" - }, - { - "@type": "@34" - }, - { - "@type": "@35" - }, - { - "@type": "@36" - }, - { - "@type": "@37" - }, - { - "@type": "@38" - }, - { - "@type": "@39" - }, - { - "@type": "@40" - }, - { - "@type": "@41" - }, - { - "@type": "@42" - }, - { - "@type": "@43" - }, - { - "@type": "@44" - }, - { - "@type": "@45" - }, - { - "@type": "@46" - }, - { - "@type": "@47" - }, - { - "@type": "@48" - }, - { - "@type": "@49" - }, - { - "@type": "@50" - }, - { - "@type": "@51" - }, - { - "@type": "@52" - }, - { - "@type": "@53" - }, - { - "@type": "@54" - }, - { - "@type": "@55" - }, - { - "@type": "@56" - }, - { - "@type": "@57" - }, - { - "@type": "@58" - }, - { - "@type": "@59" - }, - { - "@type": "@60" - }, - { - "@type": "@61" - }, - { - "@type": "@62" - }, - { - "@type": "@63" - }, - { - "@type": "@64" - }, - { - "@type": "@65" - }, - { - "@type": "@66" - }, - { - "@type": "@67" - }, - { - "@type": "@68" - }, - { - "@type": "@69" - }, - { - "@type": "@70" - }, - { - "@type": "@71" - }, - { - "@type": "@72" - }, - { - "@type": "@73" - }, - { - "@type": "@74" - }, - { - "@type": "@75" - }, - { - "@type": "@76" - }, - { - "@type": "@77" - }, - { - "@type": "@78" - }, - { - "@type": "@79" - }, - { - "@type": "@80" - }, - { - "@type": "@81" - }, - { - "@type": "@82" - }, - { - "@type": "@83" - }, - { - "@type": "@84" - }, - { - "@type": "@85" - }, - { - "@type": "@86" - }, - { - "@type": "@87" - }, - { - "@type": "@88" - }, - { - "@type": "@89" - } - ], - "count": 72, - "idx": 72 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "c", - "column": "identifier", - "expr": "c.identifier", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "c", - "column": "name", - "expr": "c.name", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "c", - "column": "parent_id", - "expr": "c.parent_id", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "category", - "column": null, - "expr": "category", - "alias": "c", - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "c", - "identifier", - "a" - ], - "isOperator": false, - "expr": "c.identifier = 'a'" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [ - [ - "UNION ALL", - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "c", - "column": "identifier", - "expr": "c.identifier", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "c", - "column": "name", - "expr": "c.name", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "c", - "column": "parent_id", - "expr": "c.parent_id", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "categories", - "column": null, - "expr": "categories", - "alias": null, - "function": null, - "subquery": null - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "category", - "column": null, - "expr": "category", - "alias": "c", - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "c", - "identifier", - "categories", - "parent_id" - ], - "isOperator": false, - "expr": "c.identifier = categories.parent_id" - } - ], - "group": null, - "group_options": null, - "having": null, - "order": [], - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 33, - "last": 71 - } - ] - ], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 71 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - } - }, - "foo": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\WithKeyword", - "name": "foo", - "columns": [], - "statement": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@98" - }, - { - "@type": "@99" - }, - { - "@type": "@100" - }, - { - "@type": "@101" - }, - { - "@type": "@102" - }, - { - "@type": "@103" - }, - { - "@type": "@104" - }, - { - "@type": "@105" - }, - { - "@type": "@106" - } - ], - "count": 9, - "idx": 9 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "test", - "column": null, - "expr": "test", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 8 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - } - } - }, - "cteStatementParser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@109" - }, - { - "@type": "@110" - }, - { - "@type": "@111" - }, - { - "@type": "@112" - }, - { - "@type": "@113" - }, - { - "@type": "@114" - }, - { - "@type": "@115" - }, - { - "@type": "@116" - } - ], - "count": 8, - "idx": 8 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "categories", - "column": null, - "expr": "categories", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 6 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 113 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement4.in deleted file mode 100644 index 54311c8f..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement4.in +++ /dev/null @@ -1 +0,0 @@ -CREATE table table_name AS WITH cte (col1) AS ( SELECT 1 UNION ALL SELECT 2 ) NO \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement4.out deleted file mode 100644 index b5010f3b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement4.out +++ /dev/null @@ -1,546 +0,0 @@ -{ - "query": "CREATE table table_name AS WITH cte (col1) AS ( SELECT 1 UNION ALL SELECT 2 ) NO", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE table table_name AS WITH cte (col1) AS ( SELECT 1 UNION ALL SELECT 2 ) NO", - "len": 80, - "last": 80, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table_name", - "value": "table_name", - "keyword": "TABLE_NAME", - "type": 1, - "flags": 1, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNION ALL", - "value": "UNION ALL", - "keyword": "UNION ALL", - "type": 1, - "flags": 7, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NO", - "value": "NO", - "keyword": "NO", - "type": 1, - "flags": 1, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 34, - "idx": 35 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table_name", - "column": null, - "expr": "table_name", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": null, - "with": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\WithStatement", - "withers": { - "cte": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\WithKeyword", - "name": "cte", - "columns": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "col1" - ], - "values": [ - "col1" - ] - } - ], - "statement": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - }, - { - "@type": "@27" - }, - { - "@type": "@28" - }, - { - "@type": "@29" - }, - { - "@type": "@30" - }, - { - "@type": "@31" - } - ], - "count": 11, - "idx": 11 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [ - [ - "UNION ALL", - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "2", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": [], - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 5, - "last": 10 - } - ] - ], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 10 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - } - } - }, - "cteStatementParser": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": null, - "last": null - }, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 31 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "An expression was expected.", - { - "@type": "@34" - }, - 0 - ], - [ - "Unexpected end of the WITH CTE.", - { - "@type": "@34" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@34" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement5.in deleted file mode 100644 index 3ad59588..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement5.in +++ /dev/null @@ -1 +0,0 @@ -CREATE view view_name AS WITH aa(col1) AS ( SELECT 1 UNION ALL SELECT 2 ) SELECT col1 FROM cte \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement5.out deleted file mode 100644 index b3ef1144..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement5.out +++ /dev/null @@ -1,657 +0,0 @@ -{ - "query": "CREATE view view_name AS WITH aa(col1) AS ( SELECT 1 UNION ALL SELECT 2 ) SELECT col1 FROM cte", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE view view_name AS WITH aa(col1) AS ( SELECT 1 UNION ALL SELECT 2 ) SELECT col1 FROM cte", - "len": 95, - "last": 95, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "view", - "value": "view", - "keyword": "VIEW", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "view_name", - "value": "view_name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 25 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "aa", - "value": "aa", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNION ALL", - "value": "UNION ALL", - "keyword": "UNION ALL", - "type": 1, - "flags": 7, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 81 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 82 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 91 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 92 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 39, - "idx": 39 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "view_name", - "column": null, - "expr": "view_name", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": null, - "with": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\WithStatement", - "withers": { - "aa": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\WithKeyword", - "name": "aa", - "columns": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "col1" - ], - "values": [ - "col1" - ] - } - ], - "statement": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - }, - { - "@type": "@27" - }, - { - "@type": "@28" - }, - { - "@type": "@29" - }, - { - "@type": "@30" - } - ], - "count": 11, - "idx": 11 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [ - [ - "UNION ALL", - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "2", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": [], - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 5, - "last": 10 - } - ] - ], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 10 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - } - } - }, - "cteStatementParser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@33" - }, - { - "@type": "@34" - }, - { - "@type": "@35" - }, - { - "@type": "@36" - }, - { - "@type": "@37" - }, - { - "@type": "@38" - }, - { - "@type": "@39" - }, - { - "@type": "@40" - } - ], - "count": 8, - "idx": 8 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "col1", - "expr": "col1", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "cte", - "column": null, - "expr": "cte", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 6 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": null, - "last": null - }, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [ - { - "@type": "@39" - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "view" - } - }, - "first": 0, - "last": 38 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement6.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement6.in deleted file mode 100644 index 9bbc2d94..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement6.in +++ /dev/null @@ -1 +0,0 @@ -CREATE view view_name WITH aa(col1) AS ( SELECT 1 UNION ALL SELECT 2 ) SELECT col1 FROM cte \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement6.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement6.out deleted file mode 100644 index 776c1455..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement6.out +++ /dev/null @@ -1,491 +0,0 @@ -{ - "query": "CREATE view view_name WITH aa(col1) AS ( SELECT 1 UNION ALL SELECT 2 ) SELECT col1 FROM cte", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE view view_name WITH aa(col1) AS ( SELECT 1 UNION ALL SELECT 2 ) SELECT col1 FROM cte", - "len": 92, - "last": 92, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "view", - "value": "view", - "keyword": "VIEW", - "type": 1, - "flags": 1, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "view_name", - "value": "view_name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 26 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "aa", - "value": "aa", - "keyword": null, - "type": 0, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNION ALL", - "value": "UNION ALL", - "keyword": "UNION ALL", - "type": 1, - "flags": 7, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 37, - "idx": 37 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "view_name", - "column": null, - "expr": "view_name", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": null, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [ - { - "@type": "@9" - }, - { - "@type": "@10" - }, - { - "@type": "@11" - }, - { - "@type": "@12" - }, - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - }, - { - "@type": "@27" - }, - { - "@type": "@28" - }, - { - "@type": "@29" - }, - { - "@type": "@30" - }, - { - "@type": "@31" - }, - { - "@type": "@32" - }, - { - "@type": "@33" - }, - { - "@type": "@34" - }, - { - "@type": "@35" - }, - { - "@type": "@36" - }, - { - "@type": "@37" - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "view" - } - }, - "first": 0, - "last": 36 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement7.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement7.in deleted file mode 100644 index ed1eb316..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement7.in +++ /dev/null @@ -1 +0,0 @@ -WITH cte (col1) AS ( SELECT 1 UNION ALL SELECT 2 ) SELECT * FROM cte INNER JOIN table2 ON table2.col1=cte.col1; \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement7.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement7.out deleted file mode 100644 index b4865b43..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatement7.out +++ /dev/null @@ -1,764 +0,0 @@ -{ - "query": "WITH cte (col1) AS ( SELECT 1 UNION ALL SELECT 2 ) SELECT * FROM cte INNER JOIN table2 ON table2.col1=cte.col1;", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "WITH cte (col1) AS ( SELECT 1 UNION ALL SELECT 2 ) SELECT * FROM cte INNER JOIN table2 ON table2.col1=cte.col1;", - "len": 111, - "last": 111, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNION ALL", - "value": "UNION ALL", - "keyword": "UNION ALL", - "type": 1, - "flags": 7, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*", - "value": "*", - "keyword": null, - "type": 2, - "flags": 16, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INNER JOIN", - "value": "INNER JOIN", - "keyword": "INNER JOIN", - "type": 1, - "flags": 7, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table2", - "value": "table2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table2", - "value": "table2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 96 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 97 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 105 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 106 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 47, - "idx": 47 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\WithStatement", - "withers": { - "cte": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\WithKeyword", - "name": "cte", - "columns": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "col1" - ], - "values": [ - "col1" - ] - } - ], - "statement": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - } - ], - "count": 11, - "idx": 11 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [ - [ - "UNION ALL", - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "2", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": [], - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 5, - "last": 10 - } - ] - ], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 10 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - } - } - }, - "cteStatementParser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@26" - }, - { - "@type": "@27" - }, - { - "@type": "@28" - }, - { - "@type": "@29" - }, - { - "@type": "@30" - }, - { - "@type": "@31" - }, - { - "@type": "@32" - }, - { - "@type": "@33" - }, - { - "@type": "@34" - }, - { - "@type": "@35" - }, - { - "@type": "@36" - }, - { - "@type": "@37" - }, - { - "@type": "@38" - }, - { - "@type": "@39" - }, - { - "@type": "@40" - }, - { - "@type": "@41" - }, - { - "@type": "@42" - }, - { - "@type": "@43" - }, - { - "@type": "@44" - }, - { - "@type": "@45" - }, - { - "@type": "@46" - }, - { - "@type": "@47" - }, - { - "@type": "@48" - } - ], - "count": 23, - "idx": 23 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "*", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "cte", - "column": null, - "expr": "cte", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\JoinKeyword", - "type": "INNER", - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table2", - "column": null, - "expr": "table2", - "alias": null, - "function": null, - "subquery": null - }, - "on": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", - "identifiers": [ - "table2", - "col1", - "cte" - ], - "isOperator": false, - "expr": "table2.col1=cte.col1" - } - ], - "using": null - } - ], - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 20 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 45 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr.in deleted file mode 100644 index 2f320c50..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr.in +++ /dev/null @@ -1 +0,0 @@ -INSERT INTO table_name WITH cte col1) AS ( SELECT 1 UNION ALL SELECT 2 ) SELECT col1 FROM cte \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr.out deleted file mode 100644 index 6334a59b..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr.out +++ /dev/null @@ -1,454 +0,0 @@ -{ - "query": "INSERT INTO table_name WITH cte col1) AS ( SELECT 1 UNION ALL SELECT 2 ) SELECT col1 FROM cte", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "INSERT INTO table_name WITH cte col1) AS ( SELECT 1 UNION ALL SELECT 2 ) SELECT col1 FROM cte", - "len": 93, - "last": 93, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table_name", - "value": "table_name", - "keyword": "TABLE_NAME", - "type": 1, - "flags": 1, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNION ALL", - "value": "UNION ALL", - "keyword": "UNION ALL", - "type": 1, - "flags": 7, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 80 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 90 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 37, - "idx": 38 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table_name", - "column": null, - "expr": "table_name", - "alias": null, - "function": null, - "subquery": null - }, - "columns": null, - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": null, - "set": null, - "select": null, - "with": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\WithStatement", - "withers": { - "cte": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\WithKeyword", - "name": "cte", - "columns": [], - "statement": null - } - }, - "cteStatementParser": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": null, - "last": null - }, - "onDuplicateSet": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 9 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unexpected token.", - { - "@type": "@12" - }, - 0 - ], - [ - "Unexpected end of the WITH CTE.", - { - "@type": "@12" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@12" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@12" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@15" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr1.in deleted file mode 100644 index 37d69481..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr1.in +++ /dev/null @@ -1 +0,0 @@ -CREATE table table_name WITH cte (col1) ( SELECT 1 UNION ALL SELECT 2 ) SELECT col1 FROM cte \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr1.out deleted file mode 100644 index 958bebaf..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr1.out +++ /dev/null @@ -1,563 +0,0 @@ -{ - "query": "CREATE table table_name WITH cte (col1) ( SELECT 1 UNION ALL SELECT 2 ) SELECT col1 FROM cte", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE table table_name WITH cte (col1) ( SELECT 1 UNION ALL SELECT 2 ) SELECT col1 FROM cte", - "len": 92, - "last": 92, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table_name", - "value": "table_name", - "keyword": "TABLE_NAME", - "type": 1, - "flags": 1, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNION ALL", - "value": "UNION ALL", - "keyword": "UNION ALL", - "type": 1, - "flags": 7, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 79 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 83 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 88 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 89 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 36, - "idx": 36 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table_name", - "column": null, - "expr": "table_name", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": null, - "with": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\WithStatement", - "withers": { - "cte": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\WithKeyword", - "name": "cte", - "columns": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "col1" - ], - "values": [ - "col1" - ] - } - ], - "statement": null - } - }, - "cteStatementParser": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": null, - "last": null - }, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [ - [ - "UNION ALL", - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "2", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": [], - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 20, - "last": 27 - } - ] - ], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 14, - "last": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "col1", - "expr": "col1", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "cte", - "column": null, - "expr": "cte", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 28, - "last": 34 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "AS keyword was expected.", - { - "@type": "@16" - }, - 0 - ], - [ - "Unexpected end of the WITH CTE.", - { - "@type": "@16" - }, - 0 - ], - [ - "This type of clause was previously parsed.", - { - "@type": "@30" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr2.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr2.in deleted file mode 100644 index 3a41c5bf..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr2.in +++ /dev/null @@ -1 +0,0 @@ -WITH cte (col1) AS ( SELECT 1 UNION ALL SELECT 2 ) \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr2.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr2.out deleted file mode 100644 index 905f6150..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr2.out +++ /dev/null @@ -1,415 +0,0 @@ -{ - "query": "WITH cte (col1) AS ( SELECT 1 UNION ALL SELECT 2 )", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "WITH cte (col1) AS ( SELECT 1 UNION ALL SELECT 2 )", - "len": 50, - "last": 50, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNION ALL", - "value": "UNION ALL", - "keyword": "UNION ALL", - "type": 1, - "flags": 7, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 24, - "idx": 24 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\WithStatement", - "withers": { - "cte": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\WithKeyword", - "name": "cte", - "columns": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "col1" - ], - "values": [ - "col1" - ] - } - ], - "statement": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - } - ], - "count": 11, - "idx": 11 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [ - [ - "UNION ALL", - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "2", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": [], - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 5, - "last": 10 - } - ] - ], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 10 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - } - } - }, - "cteStatementParser": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 22 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "An expression was expected.", - { - "@type": "@25" - }, - 0 - ], - [ - "Unexpected end of the WITH CTE.", - { - "@type": "@25" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr3.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr3.in deleted file mode 100644 index ca9e0092..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr3.in +++ /dev/null @@ -1 +0,0 @@ -CREATE table table_name WITH cte (col1) AS ( SELECT 1 UNION ALL SELECT 2 ), \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr3.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr3.out deleted file mode 100644 index c390c13d..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr3.out +++ /dev/null @@ -1,512 +0,0 @@ -{ - "query": "CREATE table table_name WITH cte (col1) AS ( SELECT 1 UNION ALL SELECT 2 ),", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE table table_name WITH cte (col1) AS ( SELECT 1 UNION ALL SELECT 2 ),", - "len": 75, - "last": 75, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table_name", - "value": "table_name", - "keyword": "TABLE_NAME", - "type": 1, - "flags": 1, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNION ALL", - "value": "UNION ALL", - "keyword": "UNION ALL", - "type": 1, - "flags": 7, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 31, - "idx": 31 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table_name", - "column": null, - "expr": "table_name", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": null, - "with": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\WithStatement", - "withers": { - "cte": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\WithKeyword", - "name": "cte", - "columns": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "col1" - ], - "values": [ - "col1" - ] - } - ], - "statement": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - }, - { - "@type": "@27" - }, - { - "@type": "@28" - }, - { - "@type": "@29" - } - ], - "count": 11, - "idx": 11 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [ - [ - "UNION ALL", - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "2", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": [], - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 5, - "last": 10 - } - ] - ], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 10 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - } - } - }, - "cteStatementParser": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": null, - "last": null - }, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 29 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "The name of the CTE was expected.", - { - "@type": "@32" - }, - 0 - ], - [ - "Unexpected end of the WITH CTE.", - { - "@type": "@32" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr4.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr4.in deleted file mode 100644 index 582cfaf0..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr4.in +++ /dev/null @@ -1 +0,0 @@ -CREATE table table_name WITH cte (col1) AS ( SELECT 1 UNION ALL SELECT 2 ) NO \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr4.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr4.out deleted file mode 100644 index 1575e0bb..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr4.out +++ /dev/null @@ -1,528 +0,0 @@ -{ - "query": "CREATE table table_name WITH cte (col1) AS ( SELECT 1 UNION ALL SELECT 2 ) NO", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE table table_name WITH cte (col1) AS ( SELECT 1 UNION ALL SELECT 2 ) NO", - "len": 77, - "last": 77, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table_name", - "value": "table_name", - "keyword": "TABLE_NAME", - "type": 1, - "flags": 1, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 52 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 53 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNION ALL", - "value": "UNION ALL", - "keyword": "UNION ALL", - "type": 1, - "flags": 7, - "position": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 64 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 72 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 73 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NO", - "value": "NO", - "keyword": "NO", - "type": 1, - "flags": 1, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 32, - "idx": 33 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table_name", - "column": null, - "expr": "table_name", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": null, - "with": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\WithStatement", - "withers": { - "cte": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\WithKeyword", - "name": "cte", - "columns": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "col1" - ], - "values": [ - "col1" - ] - } - ], - "statement": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - }, - { - "@type": "@24" - }, - { - "@type": "@25" - }, - { - "@type": "@26" - }, - { - "@type": "@27" - }, - { - "@type": "@28" - }, - { - "@type": "@29" - } - ], - "count": 11, - "idx": 11 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [ - [ - "UNION ALL", - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "2", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": [], - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 5, - "last": 10 - } - ] - ], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 10 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - } - } - }, - "cteStatementParser": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": null, - "last": null - }, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 29 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "An expression was expected.", - { - "@type": "@32" - }, - 0 - ], - [ - "Unexpected end of the WITH CTE.", - { - "@type": "@32" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@32" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr5.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr5.in deleted file mode 100644 index a9bf5e9a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr5.in +++ /dev/null @@ -1 +0,0 @@ -CREATE table table_name WITH (col1) AS ( SELECT 1 UNION ALL SELECT 2 ) NO \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr5.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr5.out deleted file mode 100644 index f512aba9..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr5.out +++ /dev/null @@ -1,379 +0,0 @@ -{ - "query": "CREATE table table_name WITH (col1) AS ( SELECT 1 UNION ALL SELECT 2 ) NO", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "CREATE table table_name WITH (col1) AS ( SELECT 1 UNION ALL SELECT 2 ) NO", - "len": 73, - "last": 73, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table_name", - "value": "table_name", - "keyword": "TABLE_NAME", - "type": 1, - "flags": 1, - "position": 13 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 24 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 35 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 36 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNION ALL", - "value": "UNION ALL", - "keyword": "UNION ALL", - "type": 1, - "flags": 7, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 59 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 69 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 70 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NO", - "value": "NO", - "keyword": "NO", - "type": 1, - "flags": 1, - "position": 71 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 30, - "idx": 31 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table_name", - "column": null, - "expr": "table_name", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": null, - "fields": null, - "with": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\WithStatement", - "withers": [], - "cteStatementParser": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": null, - "last": null - }, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 0, - "last": 7 - } - ], - "brackets": 1, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "The name of the CTE was expected.", - { - "@type": "@10" - }, - 0 - ], - [ - "Unexpected end of the WITH CTE.", - { - "@type": "@10" - }, - 0 - ], - [ - "Unexpected beginning of statement.", - { - "@type": "@11" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@14" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr6.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr6.in deleted file mode 100644 index 68e92b13..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr6.in +++ /dev/null @@ -1 +0,0 @@ -INSERT INTO table_name WITH cte (col1) AS ( INSERT INTO table_name (column1, column2, column3) VALUES (value1, value2, value3) ) SELECT col1 FROM cte ON DUPLICATE KEY UPDATE col_name = 3 \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr6.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr6.out deleted file mode 100644 index cf6e6cf7..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr6.out +++ /dev/null @@ -1,858 +0,0 @@ -{ - "query": "INSERT INTO table_name WITH cte (col1) AS ( INSERT INTO table_name (column1, column2, column3) VALUES (value1, value2, value3) ) SELECT col1 FROM cte ON DUPLICATE KEY UPDATE col_name = 3", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "INSERT INTO table_name WITH cte (col1) AS ( INSERT INTO table_name (column1, column2, column3) VALUES (value1, value2, value3) ) SELECT col1 FROM cte ON DUPLICATE KEY UPDATE col_name = 3", - "len": 186, - "last": 186, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 6 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 7 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 11 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table_name", - "value": "table_name", - "keyword": "TABLE_NAME", - "type": 1, - "flags": 1, - "position": 12 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 32 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 41 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 42 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "table_name", - "value": "table_name", - "keyword": "TABLE_NAME", - "type": 1, - "flags": 1, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 67 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "column1", - "value": "column1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 68 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "column2", - "value": "column2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 84 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 85 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "column3", - "value": "column3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 86 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 93 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 94 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 95 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 101 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 102 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "value1", - "value": "value1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 103 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 109 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 110 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "value2", - "value": "value2", - "keyword": null, - "type": 0, - "flags": 0, - "position": 111 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "value3", - "value": "value3", - "keyword": null, - "type": 0, - "flags": 0, - "position": 119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 125 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 128 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 129 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 140 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 141 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 145 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 146 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 150 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DUPLICATE", - "value": "DUPLICATE", - "keyword": "DUPLICATE", - "type": 1, - "flags": 1, - "position": 153 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 162 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KEY", - "value": "KEY", - "keyword": "KEY", - "type": 1, - "flags": 19, - "position": 163 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 166 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UPDATE", - "value": "UPDATE", - "keyword": "UPDATE", - "type": 1, - "flags": 3, - "position": 167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 173 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col_name", - "value": "col_name", - "keyword": null, - "type": 0, - "flags": 0, - "position": 174 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 182 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 183 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 184 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "3", - "value": 3, - "keyword": null, - "type": 6, - "flags": 0, - "position": 185 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 70, - "idx": 71 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table_name", - "column": null, - "expr": "table_name", - "alias": null, - "function": null, - "subquery": null - }, - "columns": null, - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": null, - "set": null, - "select": null, - "with": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\WithStatement", - "withers": { - "cte": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\WithKeyword", - "name": "cte", - "columns": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "col1" - ], - "values": [ - "col1" - ] - } - ], - "statement": null - } - }, - "cteStatementParser": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": null, - "last": null - }, - "onDuplicateSet": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", - "into": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", - "type": null, - "dest": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "table_name", - "column": null, - "expr": "table_name", - "alias": null, - "function": null, - "subquery": null - }, - "columns": [ - "column1", - "column2", - "column3" - ], - "values": null, - "fields_options": null, - "fields_keyword": null, - "lines_options": null - }, - "values": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "value1", - "value2", - "value3" - ], - "values": [ - "value1", - "value2", - "value3" - ] - } - ], - "set": null, - "select": null, - "with": null, - "onDuplicateSet": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 16, - "last": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "col1", - "expr": "col1", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "cte", - "column": null, - "expr": "cte", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 46, - "last": 55 - } - ], - "brackets": 1, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Subquery of the CTE was expected.", - { - "@type": "@18" - }, - 0 - ], - [ - "Unexpected end of the WITH CTE.", - { - "@type": "@18" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@18" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@48" - }, - 0 - ], - [ - "Unrecognized statement type.", - { - "@type": "@58" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr7.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr7.in deleted file mode 100644 index 00ee71c2..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr7.in +++ /dev/null @@ -1 +0,0 @@ -WITH cte (col1) AS ( SELECT 1 UNN ALL SELECT 2 ) SELECT col1 FROM cte \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr7.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr7.out deleted file mode 100644 index dd3b5a11..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr7.out +++ /dev/null @@ -1,437 +0,0 @@ -{ - "query": "WITH cte (col1) AS ( SELECT 1 UNN ALL SELECT 2 ) SELECT col1 FROM cte", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "WITH cte (col1) AS ( SELECT 1 UNN ALL SELECT 2 ) SELECT col1 FROM cte", - "len": 69, - "last": 69, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNN", - "value": "UNN", - "keyword": null, - "type": 0, - "flags": 0, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 33 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALL", - "value": "ALL", - "keyword": "ALL", - "type": 1, - "flags": 3, - "position": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 37 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 38 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 45 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 55 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 56 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 60 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 61 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 34, - "idx": 34 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\WithStatement", - "withers": { - "cte": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\WithKeyword", - "name": "cte", - "columns": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "col1" - ], - "values": [ - "col1" - ] - } - ], - "statement": null - } - }, - "cteStatementParser": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "col1", - "expr": "col1", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "cte", - "column": null, - "expr": "cte", - "alias": null, - "function": null, - "subquery": null - } - ], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 24, - "last": 32 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "Unrecognized keyword.", - { - "@type": "@20" - }, - 0 - ], - [ - "This type of clause was previously parsed.", - { - "@type": "@22" - }, - 0 - ], - [ - "Unexpected end of the WITH CTE.", - { - "@type": "@26" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr8.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr8.in deleted file mode 100644 index fbc5b99a..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr8.in +++ /dev/null @@ -1 +0,0 @@ -WITH cte (col1) AS ( SELECT 1 UNION ALL SELECT 2 ) SELECT col1 FR cte \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr8.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr8.out deleted file mode 100644 index 594165b3..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parseWithStatementErr8.out +++ /dev/null @@ -1,536 +0,0 @@ -{ - "query": "WITH cte (col1) AS ( SELECT 1 UNION ALL SELECT 2 ) SELECT col1 FR cte", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "WITH cte (col1) AS ( SELECT 1 UNION ALL SELECT 2 ) SELECT col1 FR cte", - "len": 69, - "last": 69, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WITH", - "value": "WITH", - "keyword": "WITH", - "type": 1, - "flags": 3, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 4 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 5 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 8 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 9 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 10 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 14 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 15 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AS", - "value": "AS", - "keyword": "AS", - "type": 1, - "flags": 3, - "position": 16 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 18 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 19 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 20 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 21 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 27 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "1", - "value": 1, - "keyword": null, - "type": 6, - "flags": 0, - "position": 28 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 29 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNION ALL", - "value": "UNION ALL", - "keyword": "UNION ALL", - "type": 1, - "flags": 7, - "position": 30 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 39 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 40 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 46 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "2", - "value": 2, - "keyword": null, - "type": 6, - "flags": 0, - "position": 47 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 48 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 49 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 50 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SELECT", - "value": "SELECT", - "keyword": "SELECT", - "type": 1, - "flags": 3, - "position": 51 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 57 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "col1", - "value": "col1", - "keyword": null, - "type": 0, - "flags": 0, - "position": 58 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 62 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FR", - "value": "FR", - "keyword": null, - "type": 0, - "flags": 0, - "position": 63 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "cte", - "value": "cte", - "keyword": null, - "type": 0, - "flags": 0, - "position": 66 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 32, - "idx": 32 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@1" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\WithStatement", - "withers": { - "cte": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\WithKeyword", - "name": "cte", - "columns": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\ArrayObj", - "raw": [ - "col1" - ], - "values": [ - "col1" - ] - } - ], - "statement": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "@13" - }, - { - "@type": "@14" - }, - { - "@type": "@15" - }, - { - "@type": "@16" - }, - { - "@type": "@17" - }, - { - "@type": "@18" - }, - { - "@type": "@19" - }, - { - "@type": "@20" - }, - { - "@type": "@21" - }, - { - "@type": "@22" - }, - { - "@type": "@23" - } - ], - "count": 11, - "idx": 11 - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "1", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [ - [ - "UNION ALL", - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "2", - "alias": null, - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": [], - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 5, - "last": 10 - } - ] - ], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 10 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - } - } - }, - "cteStatementParser": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 0, - "last": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", - "expr": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "col1", - "expr": "col1", - "alias": "FR", - "function": null, - "subquery": null - } - ], - "from": [], - "index_hints": null, - "partition": null, - "where": null, - "group": null, - "group_options": null, - "having": null, - "order": null, - "limit": null, - "procedure": null, - "into": null, - "join": null, - "union": [], - "end_options": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "first": 24, - "last": 30 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [ - [ - "An alias was previously found.", - { - "@type": "@32" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@32" - }, - 0 - ], - [ - "An alias was previously found.", - { - "@type": "@32" - }, - 0 - ], - [ - "Unexpected token.", - { - "@type": "@32" - }, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsephpMyAdminExport1.in b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsephpMyAdminExport1.in deleted file mode 100644 index 61fd9e40..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsephpMyAdminExport1.in +++ /dev/null @@ -1,87 +0,0 @@ --- phpMyAdmin SQL Dump --- version 5.0.0-dev --- https://www.phpmyadmin.net/ --- --- Hôte : xxxx.xxxxx.eu-west-1.rds.amazonaws.com --- Généré le : mer. 05 sep. 2018 à 00:03 --- Version du serveur : 10.0.24-MariaDB --- Version de PHP : 7.2.8-1+ubuntu18.04.1+deb.sury.org+1 - -SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; -SET AUTOCOMMIT = 0; -START TRANSACTION; -SET time_zone = "+00:00"; - - -/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; -/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; -/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; -/*!40101 SET NAMES utf8mb4 */; - --- --- Base de données : `xxxxxdbnamexxxxx` --- - --- -------------------------------------------------------- - --- --- Structure de la table `monitoring__times` --- - -CREATE TABLE `monitoring__times` ( - `idServer` int(11) UNSIGNED NOT NULL COMMENT 'Id of server', - `time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'Time UTC', - `totalTime` float UNSIGNED NOT NULL COMMENT 'Total time in ms' -) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; - --- --- Déclencheurs `monitoring__times` --- -DELIMITER $$ -CREATE TRIGGER `copyTimes` AFTER INSERT ON `monitoring__times` FOR EACH ROW INSERT INTO monitoring__times_mirror -(`idServer`, `time`, `totalTime`) VALUES(new.idServer, new.time, new.totalTime) -$$ -DELIMITER ; -DELIMITER $$ -CREATE TRIGGER `deleteTimes` AFTER DELETE ON `monitoring__times` FOR EACH ROW DELETE FROM monitoring__times_mirror -WHERE `idServer`=old.idServer -AND `time`=old.time -AND `totalTime`=old.totalTime -$$ -DELIMITER ; -DELIMITER $$ -CREATE TRIGGER `updateTimes` AFTER UPDATE ON `monitoring__times` FOR EACH ROW UPDATE monitoring__times_mirror -SET `idServer`=new.idServer, -`time`=new.time, -`totalTime`=new.totalTime -WHERE `idServer`=old.idServer -AND `time`=old.time -AND `totalTime`=old.totalTime -$$ -DELIMITER ; - --- --- Index pour les tables déchargées --- - --- --- Index pour la table `monitoring__times` --- -ALTER TABLE `monitoring__times` - ADD UNIQUE KEY `idServer` (`idServer`,`time`) USING BTREE COMMENT 'Unique idServer/time', - ADD KEY `INDEX_totalTime` (`totalTime`) USING BTREE COMMENT 'Index for totalTime column'; - --- --- Contraintes pour les tables déchargées --- - --- --- Contraintes pour la table `monitoring__times` --- -ALTER TABLE `monitoring__times` - ADD CONSTRAINT `monitoring__times__idServer` FOREIGN KEY (`idServer`) REFERENCES `monitoring__servers` (`id`); -COMMIT; - -/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; -/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; -/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; diff --git a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsephpMyAdminExport1.out b/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsephpMyAdminExport1.out deleted file mode 100644 index b78796fd..00000000 --- a/docker/statistics/vendor/phpmyadmin/sql-parser/tests/data/parser/parsephpMyAdminExport1.out +++ /dev/null @@ -1,5722 +0,0 @@ -{ - "query": "-- phpMyAdmin SQL Dump\n-- version 5.0.0-dev\n-- https://www.phpmyadmin.net/\n--\n-- Hôte : xxxx.xxxxx.eu-west-1.rds.amazonaws.com\n-- Généré le : mer. 05 sep. 2018 à 00:03\n-- Version du serveur : 10.0.24-MariaDB\n-- Version de PHP : 7.2.8-1+ubuntu18.04.1+deb.sury.org+1\n\nSET SQL_MODE = \"NO_AUTO_VALUE_ON_ZERO\";\nSET AUTOCOMMIT = 0;\nSTART TRANSACTION;\nSET time_zone = \"+00:00\";\n\n\n/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;\n/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;\n/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;\n/*!40101 SET NAMES utf8mb4 */;\n\n--\n-- Base de données : `xxxxxdbnamexxxxx`\n--\n\n-- --------------------------------------------------------\n\n--\n-- Structure de la table `monitoring__times`\n--\n\nCREATE TABLE `monitoring__times` (\n `idServer` int(11) UNSIGNED NOT NULL COMMENT 'Id of server',\n `time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'Time UTC',\n `totalTime` float UNSIGNED NOT NULL COMMENT 'Total time in ms'\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;\n\n--\n-- Déclencheurs `monitoring__times`\n--\nDELIMITER $$\nCREATE TRIGGER `copyTimes` AFTER INSERT ON `monitoring__times` FOR EACH ROW INSERT INTO monitoring__times_mirror\n(`idServer`, `time`, `totalTime`) VALUES(new.idServer, new.time, new.totalTime)\n$$\nDELIMITER ;\nDELIMITER $$\nCREATE TRIGGER `deleteTimes` AFTER DELETE ON `monitoring__times` FOR EACH ROW DELETE FROM monitoring__times_mirror\nWHERE `idServer`=old.idServer\nAND `time`=old.time\nAND `totalTime`=old.totalTime\n$$\nDELIMITER ;\nDELIMITER $$\nCREATE TRIGGER `updateTimes` AFTER UPDATE ON `monitoring__times` FOR EACH ROW UPDATE monitoring__times_mirror\nSET `idServer`=new.idServer,\n`time`=new.time,\n`totalTime`=new.totalTime\nWHERE `idServer`=old.idServer\nAND `time`=old.time\nAND `totalTime`=old.totalTime\n$$\nDELIMITER ;\n\n--\n-- Index pour les tables déchargées\n--\n\n--\n-- Index pour la table `monitoring__times`\n--\nALTER TABLE `monitoring__times`\n ADD UNIQUE KEY `idServer` (`idServer`,`time`) USING BTREE COMMENT 'Unique idServer/time',\n ADD KEY `INDEX_totalTime` (`totalTime`) USING BTREE COMMENT 'Index for totalTime column';\n\n--\n-- Contraintes pour les tables déchargées\n--\n\n--\n-- Contraintes pour la table `monitoring__times`\n--\nALTER TABLE `monitoring__times`\n ADD CONSTRAINT `monitoring__times__idServer` FOREIGN KEY (`idServer`) REFERENCES `monitoring__servers` (`id`);\nCOMMIT;\n\n/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;\n/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;\n/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;\n", - "lexer": { - "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": { - "@type": "PhpMyAdmin\\SqlParser\\UtfString", - "str": "-- phpMyAdmin SQL Dump\n-- version 5.0.0-dev\n-- https://www.phpmyadmin.net/\n--\n-- Hôte : xxxx.xxxxx.eu-west-1.rds.amazonaws.com\n-- Généré le : mer. 05 sep. 2018 à 00:03\n-- Version du serveur : 10.0.24-MariaDB\n-- Version de PHP : 7.2.8-1+ubuntu18.04.1+deb.sury.org+1\n\nSET SQL_MODE = \"NO_AUTO_VALUE_ON_ZERO\";\nSET AUTOCOMMIT = 0;\nSTART TRANSACTION;\nSET time_zone = \"+00:00\";\n\n\n/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;\n/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;\n/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;\n/*!40101 SET NAMES utf8mb4 */;\n\n--\n-- Base de données : `xxxxxdbnamexxxxx`\n--\n\n-- --------------------------------------------------------\n\n--\n-- Structure de la table `monitoring__times`\n--\n\nCREATE TABLE `monitoring__times` (\n `idServer` int(11) UNSIGNED NOT NULL COMMENT 'Id of server',\n `time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'Time UTC',\n `totalTime` float UNSIGNED NOT NULL COMMENT 'Total time in ms'\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;\n\n--\n-- Déclencheurs `monitoring__times`\n--\nDELIMITER $$\nCREATE TRIGGER `copyTimes` AFTER INSERT ON `monitoring__times` FOR EACH ROW INSERT INTO monitoring__times_mirror\n(`idServer`, `time`, `totalTime`) VALUES(new.idServer, new.time, new.totalTime)\n$$\nDELIMITER ;\nDELIMITER $$\nCREATE TRIGGER `deleteTimes` AFTER DELETE ON `monitoring__times` FOR EACH ROW DELETE FROM monitoring__times_mirror\nWHERE `idServer`=old.idServer\nAND `time`=old.time\nAND `totalTime`=old.totalTime\n$$\nDELIMITER ;\nDELIMITER $$\nCREATE TRIGGER `updateTimes` AFTER UPDATE ON `monitoring__times` FOR EACH ROW UPDATE monitoring__times_mirror\nSET `idServer`=new.idServer,\n`time`=new.time,\n`totalTime`=new.totalTime\nWHERE `idServer`=old.idServer\nAND `time`=old.time\nAND `totalTime`=old.totalTime\n$$\nDELIMITER ;\n\n--\n-- Index pour les tables déchargées\n--\n\n--\n-- Index pour la table `monitoring__times`\n--\nALTER TABLE `monitoring__times`\n ADD UNIQUE KEY `idServer` (`idServer`,`time`) USING BTREE COMMENT 'Unique idServer/time',\n ADD KEY `INDEX_totalTime` (`totalTime`) USING BTREE COMMENT 'Index for totalTime column';\n\n--\n-- Contraintes pour les tables déchargées\n--\n\n--\n-- Contraintes pour la table `monitoring__times`\n--\nALTER TABLE `monitoring__times`\n ADD CONSTRAINT `monitoring__times__idServer` FOREIGN KEY (`idServer`) REFERENCES `monitoring__servers` (`id`);\nCOMMIT;\n\n/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;\n/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;\n/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;\n", - "byteIdx": 2645, - "charIdx": 2634, - "byteLen": 2646, - "charLen": 2635 - }, - "len": 2635, - "last": 2635, - "list": { - "@type": "PhpMyAdmin\\SqlParser\\TokensList", - "tokens": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- phpMyAdmin SQL Dump", - "value": "-- phpMyAdmin SQL Dump", - "keyword": null, - "type": 4, - "flags": 4, - "position": 0 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- version 5.0.0-dev", - "value": "-- version 5.0.0-dev", - "keyword": null, - "type": 4, - "flags": 4, - "position": 23 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- https://www.phpmyadmin.net/", - "value": "-- https://www.phpmyadmin.net/", - "keyword": null, - "type": 4, - "flags": 4, - "position": 44 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 74 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "--\n", - "value": "--\n", - "keyword": null, - "type": 4, - "flags": 4, - "position": 75 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 77 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- Hôte : xxxx.xxxxx.eu-west-1.rds.amazonaws.com", - "value": "-- Hôte : xxxx.xxxxx.eu-west-1.rds.amazonaws.com", - "keyword": null, - "type": 4, - "flags": 4, - "position": 78 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 126 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- Généré le : mer. 05 sep. 2018 à 00:03", - "value": "-- Généré le : mer. 05 sep. 2018 à 00:03", - "keyword": null, - "type": 4, - "flags": 4, - "position": 127 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 168 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- Version du serveur : 10.0.24-MariaDB", - "value": "-- Version du serveur : 10.0.24-MariaDB", - "keyword": null, - "type": 4, - "flags": 4, - "position": 169 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 209 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- Version de PHP : 7.2.8-1+ubuntu18.04.1+deb.sury.org+1", - "value": "-- Version de PHP : 7.2.8-1+ubuntu18.04.1+deb.sury.org+1", - "keyword": null, - "type": 4, - "flags": 4, - "position": 210 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 267 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 269 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 272 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SQL_MODE", - "value": "SQL_MODE", - "keyword": null, - "type": 0, - "flags": 0, - "position": 273 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 281 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 282 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 283 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"NO_AUTO_VALUE_ON_ZERO\"", - "value": "NO_AUTO_VALUE_ON_ZERO", - "keyword": null, - "type": 7, - "flags": 2, - "position": 284 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 307 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 308 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 309 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 312 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AUTOCOMMIT", - "value": "AUTOCOMMIT", - "keyword": null, - "type": 0, - "flags": 0, - "position": 313 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 323 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 324 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 325 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "0", - "value": 0, - "keyword": null, - "type": 6, - "flags": 0, - "position": 326 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 327 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 328 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "START TRANSACTION", - "value": "START TRANSACTION", - "keyword": "START TRANSACTION", - "type": 1, - "flags": 7, - "position": 329 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 346 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 347 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 348 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 351 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "time_zone", - "value": "time_zone", - "keyword": null, - "type": 0, - "flags": 0, - "position": 352 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 361 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 362 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 363 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\"+00:00\"", - "value": "+00:00", - "keyword": null, - "type": 7, - "flags": 2, - "position": 364 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 372 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 373 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/*!40101", - "value": "/*!40101", - "keyword": null, - "type": 4, - "flags": 10, - "position": 376 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 384 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 385 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 388 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@OLD_CHARACTER_SET_CLIENT", - "value": "OLD_CHARACTER_SET_CLIENT", - "keyword": null, - "type": 8, - "flags": 1, - "position": 389 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 414 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@@CHARACTER_SET_CLIENT", - "value": "CHARACTER_SET_CLIENT", - "keyword": null, - "type": 8, - "flags": 9, - "position": 415 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 437 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*/", - "value": "*/", - "keyword": null, - "type": 4, - "flags": 2, - "position": 438 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 440 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 441 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/*!40101", - "value": "/*!40101", - "keyword": null, - "type": 4, - "flags": 10, - "position": 442 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 450 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 451 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 454 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@OLD_CHARACTER_SET_RESULTS", - "value": "OLD_CHARACTER_SET_RESULTS", - "keyword": null, - "type": 8, - "flags": 1, - "position": 455 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 481 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@@CHARACTER_SET_RESULTS", - "value": "CHARACTER_SET_RESULTS", - "keyword": null, - "type": 8, - "flags": 9, - "position": 482 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 505 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*/", - "value": "*/", - "keyword": null, - "type": 4, - "flags": 2, - "position": 506 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 508 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 509 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/*!40101", - "value": "/*!40101", - "keyword": null, - "type": 4, - "flags": 10, - "position": 510 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 518 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 519 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 522 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@OLD_COLLATION_CONNECTION", - "value": "OLD_COLLATION_CONNECTION", - "keyword": null, - "type": 8, - "flags": 1, - "position": 523 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 548 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@@COLLATION_CONNECTION", - "value": "COLLATION_CONNECTION", - "keyword": null, - "type": 8, - "flags": 9, - "position": 549 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 571 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*/", - "value": "*/", - "keyword": null, - "type": 4, - "flags": 2, - "position": 572 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 574 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 575 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/*!40101", - "value": "/*!40101", - "keyword": null, - "type": 4, - "flags": 10, - "position": 576 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 584 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 585 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 588 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NAMES", - "value": "NAMES", - "keyword": "NAMES", - "type": 1, - "flags": 1, - "position": 589 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 594 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8mb4", - "value": "utf8mb4", - "keyword": null, - "type": 0, - "flags": 0, - "position": 595 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 602 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*/", - "value": "*/", - "keyword": null, - "type": 4, - "flags": 2, - "position": 603 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 605 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 606 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "--\n", - "value": "--\n", - "keyword": null, - "type": 4, - "flags": 4, - "position": 608 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 610 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- Base de données : `xxxxxdbnamexxxxx`", - "value": "-- Base de données : `xxxxxdbnamexxxxx`", - "keyword": null, - "type": 4, - "flags": 4, - "position": 611 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 651 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "--\n", - "value": "--\n", - "keyword": null, - "type": 4, - "flags": 4, - "position": 652 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 654 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- --------------------------------------------------------", - "value": "-- --------------------------------------------------------", - "keyword": null, - "type": 4, - "flags": 4, - "position": 656 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 715 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "--\n", - "value": "--\n", - "keyword": null, - "type": 4, - "flags": 4, - "position": 717 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 719 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- Structure de la table `monitoring__times`", - "value": "-- Structure de la table `monitoring__times`", - "keyword": null, - "type": 4, - "flags": 4, - "position": 720 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 764 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "--\n", - "value": "--\n", - "keyword": null, - "type": 4, - "flags": 4, - "position": 765 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 767 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 769 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 775 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 776 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 781 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`monitoring__times`", - "value": "monitoring__times", - "keyword": null, - "type": 8, - "flags": 2, - "position": 782 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 801 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 802 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 803 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`idServer`", - "value": "idServer", - "keyword": null, - "type": 8, - "flags": 2, - "position": 806 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 816 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "int", - "value": "INT", - "keyword": "INT", - "type": 1, - "flags": 11, - "position": 817 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 820 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "11", - "value": 11, - "keyword": null, - "type": 6, - "flags": 0, - "position": 821 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 823 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 824 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 825 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 833 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 834 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 842 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 843 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 850 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Id of server'", - "value": "Id of server", - "keyword": null, - "type": 7, - "flags": 1, - "position": 851 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 865 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 866 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`time`", - "value": "time", - "keyword": null, - "type": 8, - "flags": 2, - "position": 869 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 875 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "timestamp", - "value": "timestamp", - "keyword": "TIMESTAMP", - "type": 1, - "flags": 41, - "position": 876 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 885 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 886 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 894 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT", - "value": "DEFAULT", - "keyword": "DEFAULT", - "type": 1, - "flags": 35, - "position": 895 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 902 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CURRENT_TIMESTAMP", - "value": "CURRENT_TIMESTAMP", - "keyword": "CURRENT_TIMESTAMP", - "type": 1, - "flags": 35, - "position": 903 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 920 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON UPDATE", - "value": "ON UPDATE", - "keyword": "ON UPDATE", - "type": 1, - "flags": 7, - "position": 921 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 930 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CURRENT_TIMESTAMP", - "value": "CURRENT_TIMESTAMP", - "keyword": "CURRENT_TIMESTAMP", - "type": 1, - "flags": 35, - "position": 931 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 948 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 949 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 956 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Time UTC'", - "value": "Time UTC", - "keyword": null, - "type": 7, - "flags": 1, - "position": 957 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 967 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 968 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`totalTime`", - "value": "totalTime", - "keyword": null, - "type": 8, - "flags": 2, - "position": 971 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 982 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "float", - "value": "FLOAT", - "keyword": "FLOAT", - "type": 1, - "flags": 11, - "position": 983 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 988 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNSIGNED", - "value": "UNSIGNED", - "keyword": "UNSIGNED", - "type": 1, - "flags": 3, - "position": 989 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 997 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "NOT NULL", - "value": "NOT NULL", - "keyword": "NOT NULL", - "type": 1, - "flags": 7, - "position": 998 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1006 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 1007 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1014 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Total time in ms'", - "value": "Total time in ms", - "keyword": null, - "type": 7, - "flags": 1, - "position": 1015 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1033 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1034 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1035 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ENGINE", - "value": "ENGINE", - "keyword": "ENGINE", - "type": 1, - "flags": 1, - "position": 1036 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 1042 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "InnoDB", - "value": "InnoDB", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1043 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1049 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DEFAULT CHARSET", - "value": "DEFAULT CHARSET", - "keyword": "DEFAULT CHARSET", - "type": 1, - "flags": 7, - "position": 1050 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 1065 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8", - "value": "utf8", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1066 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1070 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLLATE", - "value": "COLLATE", - "keyword": "COLLATE", - "type": 1, - "flags": 3, - "position": 1071 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 1078 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "utf8_unicode_ci", - "value": "utf8_unicode_ci", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1079 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 1094 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1095 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "--\n", - "value": "--\n", - "keyword": null, - "type": 4, - "flags": 4, - "position": 1097 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1099 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- Déclencheurs `monitoring__times`", - "value": "-- Déclencheurs `monitoring__times`", - "keyword": null, - "type": 4, - "flags": 4, - "position": 1100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1135 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "--\n", - "value": "--\n", - "keyword": null, - "type": 4, - "flags": 4, - "position": 1136 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELIMITER", - "value": "DELIMITER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1139 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1148 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "$$", - "value": "$$", - "keyword": null, - "type": 9, - "flags": 0, - "position": 1149 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 1152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1158 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TRIGGER", - "value": "TRIGGER", - "keyword": "TRIGGER", - "type": 1, - "flags": 3, - "position": 1159 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1166 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`copyTimes`", - "value": "copyTimes", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1167 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1178 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AFTER", - "value": "AFTER", - "keyword": "AFTER", - "type": 1, - "flags": 1, - "position": 1179 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1184 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 1185 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1191 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 1192 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1194 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`monitoring__times`", - "value": "monitoring__times", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1195 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1214 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FOR EACH ROW", - "value": "FOR EACH ROW", - "keyword": "FOR EACH ROW", - "type": 1, - "flags": 7, - "position": 1215 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1227 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INSERT", - "value": "INSERT", - "keyword": "INSERT", - "type": 1, - "flags": 35, - "position": 1228 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1234 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "INTO", - "value": "INTO", - "keyword": "INTO", - "type": 1, - "flags": 3, - "position": 1235 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1239 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "monitoring__times_mirror", - "value": "monitoring__times_mirror", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1240 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1264 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1265 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`idServer`", - "value": "idServer", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1266 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1276 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1277 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`time`", - "value": "time", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1278 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1284 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1285 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`totalTime`", - "value": "totalTime", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1286 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1297 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1298 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "VALUES", - "value": "VALUES", - "keyword": "VALUES", - "type": 1, - "flags": 35, - "position": 1299 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1305 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "new", - "value": "new", - "keyword": "NEW", - "type": 1, - "flags": 1, - "position": 1306 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1309 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "idServer", - "value": "idServer", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1310 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1318 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1319 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "new", - "value": "new", - "keyword": "NEW", - "type": 1, - "flags": 1, - "position": 1320 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1323 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "time", - "value": "time", - "keyword": "TIME", - "type": 0, - "flags": 0, - "position": 1324 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1328 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1329 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "new", - "value": "new", - "keyword": "NEW", - "type": 1, - "flags": 1, - "position": 1330 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1333 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "totalTime", - "value": "totalTime", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1334 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1343 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1344 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "$$", - "value": "$$", - "keyword": null, - "type": 9, - "flags": 0, - "position": 1345 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1347 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELIMITER", - "value": "DELIMITER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1348 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1357 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 1358 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1359 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELIMITER", - "value": "DELIMITER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1360 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1369 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "$$", - "value": "$$", - "keyword": null, - "type": 9, - "flags": 0, - "position": 1370 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1372 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 1373 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1379 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TRIGGER", - "value": "TRIGGER", - "keyword": "TRIGGER", - "type": 1, - "flags": 3, - "position": 1380 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1387 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`deleteTimes`", - "value": "deleteTimes", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1388 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1401 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AFTER", - "value": "AFTER", - "keyword": "AFTER", - "type": 1, - "flags": 1, - "position": 1402 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1407 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 1408 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1414 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 1415 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1417 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`monitoring__times`", - "value": "monitoring__times", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1418 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1437 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FOR EACH ROW", - "value": "FOR EACH ROW", - "keyword": "FOR EACH ROW", - "type": 1, - "flags": 7, - "position": 1438 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1450 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELETE", - "value": "DELETE", - "keyword": "DELETE", - "type": 1, - "flags": 3, - "position": 1451 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1457 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FROM", - "value": "FROM", - "keyword": "FROM", - "type": 1, - "flags": 3, - "position": 1458 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1462 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "monitoring__times_mirror", - "value": "monitoring__times_mirror", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1463 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1487 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 1488 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1493 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`idServer`", - "value": "idServer", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1494 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 1504 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "old", - "value": "old", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1505 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1508 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "idServer", - "value": "idServer", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1509 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1517 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 1518 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1521 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`time`", - "value": "time", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1522 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 1528 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "old", - "value": "old", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1529 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1532 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "time", - "value": "time", - "keyword": "TIME", - "type": 0, - "flags": 0, - "position": 1533 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1537 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 1538 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1541 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`totalTime`", - "value": "totalTime", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1542 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 1553 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "old", - "value": "old", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1554 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1557 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "totalTime", - "value": "totalTime", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1558 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1567 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "$$", - "value": "$$", - "keyword": null, - "type": 9, - "flags": 0, - "position": 1568 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1570 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELIMITER", - "value": "DELIMITER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1571 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1580 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 1581 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1582 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELIMITER", - "value": "DELIMITER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1583 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1592 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "$$", - "value": "$$", - "keyword": null, - "type": 9, - "flags": 0, - "position": 1593 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1595 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CREATE", - "value": "CREATE", - "keyword": "CREATE", - "type": 1, - "flags": 3, - "position": 1596 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1602 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TRIGGER", - "value": "TRIGGER", - "keyword": "TRIGGER", - "type": 1, - "flags": 3, - "position": 1603 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1610 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`updateTimes`", - "value": "updateTimes", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1611 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1624 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AFTER", - "value": "AFTER", - "keyword": "AFTER", - "type": 1, - "flags": 1, - "position": 1625 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1630 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UPDATE", - "value": "UPDATE", - "keyword": "UPDATE", - "type": 1, - "flags": 3, - "position": 1631 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1637 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ON", - "value": "ON", - "keyword": "ON", - "type": 1, - "flags": 3, - "position": 1638 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1640 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`monitoring__times`", - "value": "monitoring__times", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1641 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1660 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FOR EACH ROW", - "value": "FOR EACH ROW", - "keyword": "FOR EACH ROW", - "type": 1, - "flags": 7, - "position": 1661 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1673 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UPDATE", - "value": "UPDATE", - "keyword": "UPDATE", - "type": 1, - "flags": 3, - "position": 1674 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1680 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "monitoring__times_mirror", - "value": "monitoring__times_mirror", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1681 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1705 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 1706 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1709 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`idServer`", - "value": "idServer", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1710 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 1720 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "new", - "value": "new", - "keyword": "NEW", - "type": 1, - "flags": 1, - "position": 1721 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1724 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "idServer", - "value": "idServer", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1725 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1733 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1734 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`time`", - "value": "time", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1735 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 1741 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "new", - "value": "new", - "keyword": "NEW", - "type": 1, - "flags": 1, - "position": 1742 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1745 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "time", - "value": "time", - "keyword": "TIME", - "type": 0, - "flags": 0, - "position": 1746 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1750 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1751 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`totalTime`", - "value": "totalTime", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1752 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 1763 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "new", - "value": "new", - "keyword": "NEW", - "type": 1, - "flags": 1, - "position": 1764 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1767 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "totalTime", - "value": "totalTime", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1768 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1777 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "WHERE", - "value": "WHERE", - "keyword": "WHERE", - "type": 1, - "flags": 3, - "position": 1778 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1783 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`idServer`", - "value": "idServer", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1784 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 1794 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "old", - "value": "old", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1795 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1798 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "idServer", - "value": "idServer", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1799 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1807 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 1808 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1811 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`time`", - "value": "time", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1812 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 1818 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "old", - "value": "old", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1819 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1822 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "time", - "value": "time", - "keyword": "TIME", - "type": 0, - "flags": 0, - "position": 1823 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1827 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "AND", - "value": "AND", - "keyword": "AND", - "type": 1, - "flags": 3, - "position": 1828 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1831 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`totalTime`", - "value": "totalTime", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1832 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 1843 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "old", - "value": "old", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1844 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ".", - "value": ".", - "keyword": null, - "type": 2, - "flags": 16, - "position": 1847 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "totalTime", - "value": "totalTime", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1848 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1857 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "$$", - "value": "$$", - "keyword": null, - "type": 9, - "flags": 0, - "position": 1858 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1860 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "DELIMITER", - "value": "DELIMITER", - "keyword": null, - "type": 0, - "flags": 0, - "position": 1861 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1870 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 1871 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1872 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "--\n", - "value": "--\n", - "keyword": null, - "type": 4, - "flags": 4, - "position": 1874 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1876 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- Index pour les tables déchargées", - "value": "-- Index pour les tables déchargées", - "keyword": null, - "type": 4, - "flags": 4, - "position": 1877 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1912 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "--\n", - "value": "--\n", - "keyword": null, - "type": 4, - "flags": 4, - "position": 1913 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1915 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "--\n", - "value": "--\n", - "keyword": null, - "type": 4, - "flags": 4, - "position": 1917 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1919 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- Index pour la table `monitoring__times`", - "value": "-- Index pour la table `monitoring__times`", - "keyword": null, - "type": 4, - "flags": 4, - "position": 1920 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1962 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "--\n", - "value": "--\n", - "keyword": null, - "type": 4, - "flags": 4, - "position": 1963 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1965 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 1966 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1971 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 1972 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1977 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`monitoring__times`", - "value": "monitoring__times", - "keyword": null, - "type": 8, - "flags": 2, - "position": 1978 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 1997 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ADD", - "value": "ADD", - "keyword": "ADD", - "type": 1, - "flags": 3, - "position": 2000 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2003 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "UNIQUE KEY", - "value": "UNIQUE KEY", - "keyword": "UNIQUE KEY", - "type": 1, - "flags": 23, - "position": 2004 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2014 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`idServer`", - "value": "idServer", - "keyword": null, - "type": 8, - "flags": 2, - "position": 2015 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2025 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2026 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`idServer`", - "value": "idServer", - "keyword": null, - "type": 8, - "flags": 2, - "position": 2027 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2037 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`time`", - "value": "time", - "keyword": null, - "type": 8, - "flags": 2, - "position": 2038 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2044 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2045 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 2046 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2051 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BTREE", - "value": "BTREE", - "keyword": "BTREE", - "type": 1, - "flags": 1, - "position": 2052 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2057 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 2058 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2065 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Unique idServer/time'", - "value": "Unique idServer/time", - "keyword": null, - "type": 7, - "flags": 1, - "position": 2066 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ",", - "value": ",", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2088 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2089 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ADD", - "value": "ADD", - "keyword": "ADD", - "type": 1, - "flags": 3, - "position": 2092 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2095 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "KEY", - "value": "KEY", - "keyword": "KEY", - "type": 1, - "flags": 19, - "position": 2096 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2099 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`INDEX_totalTime`", - "value": "INDEX_totalTime", - "keyword": null, - "type": 8, - "flags": 2, - "position": 2100 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2117 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2118 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`totalTime`", - "value": "totalTime", - "keyword": null, - "type": 8, - "flags": 2, - "position": 2119 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2130 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2131 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "USING", - "value": "USING", - "keyword": "USING", - "type": 1, - "flags": 3, - "position": 2132 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2137 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "BTREE", - "value": "BTREE", - "keyword": "BTREE", - "type": 1, - "flags": 1, - "position": 2138 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2143 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMENT", - "value": "COMMENT", - "keyword": "COMMENT", - "type": 1, - "flags": 1, - "position": 2144 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2151 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "'Index for totalTime column'", - "value": "Index for totalTime column", - "keyword": null, - "type": 7, - "flags": 1, - "position": 2152 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 2180 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2181 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "--\n", - "value": "--\n", - "keyword": null, - "type": 4, - "flags": 4, - "position": 2183 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2185 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- Contraintes pour les tables déchargées", - "value": "-- Contraintes pour les tables déchargées", - "keyword": null, - "type": 4, - "flags": 4, - "position": 2186 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2227 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "--\n", - "value": "--\n", - "keyword": null, - "type": 4, - "flags": 4, - "position": 2228 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2230 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "--\n", - "value": "--\n", - "keyword": null, - "type": 4, - "flags": 4, - "position": 2232 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2234 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- Contraintes pour la table `monitoring__times`", - "value": "-- Contraintes pour la table `monitoring__times`", - "keyword": null, - "type": 4, - "flags": 4, - "position": 2235 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2283 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "--\n", - "value": "--\n", - "keyword": null, - "type": 4, - "flags": 4, - "position": 2284 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2286 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ALTER", - "value": "ALTER", - "keyword": "ALTER", - "type": 1, - "flags": 3, - "position": 2287 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2292 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "TABLE", - "value": "TABLE", - "keyword": "TABLE", - "type": 1, - "flags": 3, - "position": 2293 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2298 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`monitoring__times`", - "value": "monitoring__times", - "keyword": null, - "type": 8, - "flags": 2, - "position": 2299 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2318 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "ADD", - "value": "ADD", - "keyword": "ADD", - "type": 1, - "flags": 3, - "position": 2321 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2324 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CONSTRAINT", - "value": "CONSTRAINT", - "keyword": "CONSTRAINT", - "type": 1, - "flags": 3, - "position": 2325 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2335 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`monitoring__times__idServer`", - "value": "monitoring__times__idServer", - "keyword": null, - "type": 8, - "flags": 2, - "position": 2336 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2365 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "FOREIGN KEY", - "value": "FOREIGN KEY", - "keyword": "FOREIGN KEY", - "type": 1, - "flags": 23, - "position": 2366 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2377 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2378 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`idServer`", - "value": "idServer", - "keyword": null, - "type": 8, - "flags": 2, - "position": 2379 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2389 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2390 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "REFERENCES", - "value": "REFERENCES", - "keyword": "REFERENCES", - "type": 1, - "flags": 3, - "position": 2391 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2401 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`monitoring__servers`", - "value": "monitoring__servers", - "keyword": null, - "type": 8, - "flags": 2, - "position": 2402 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2423 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "(", - "value": "(", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2424 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "`id`", - "value": "id", - "keyword": null, - "type": 8, - "flags": 2, - "position": 2425 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ")", - "value": ")", - "keyword": null, - "type": 2, - "flags": 16, - "position": 2429 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 2430 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2431 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COMMIT", - "value": "COMMIT", - "keyword": "COMMIT", - "type": 1, - "flags": 1, - "position": 2432 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 2438 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2439 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/*!40101", - "value": "/*!40101", - "keyword": null, - "type": 4, - "flags": 10, - "position": 2441 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2449 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 2450 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2453 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHARACTER_SET_CLIENT", - "value": "CHARACTER_SET_CLIENT", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2454 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2474 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@OLD_CHARACTER_SET_CLIENT", - "value": "OLD_CHARACTER_SET_CLIENT", - "keyword": null, - "type": 8, - "flags": 1, - "position": 2475 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2500 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*/", - "value": "*/", - "keyword": null, - "type": 4, - "flags": 2, - "position": 2501 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 2503 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2504 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/*!40101", - "value": "/*!40101", - "keyword": null, - "type": 4, - "flags": 10, - "position": 2505 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2513 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 2514 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2517 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "CHARACTER_SET_RESULTS", - "value": "CHARACTER_SET_RESULTS", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2518 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2539 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@OLD_CHARACTER_SET_RESULTS", - "value": "OLD_CHARACTER_SET_RESULTS", - "keyword": null, - "type": 8, - "flags": 1, - "position": 2540 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2566 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*/", - "value": "*/", - "keyword": null, - "type": 4, - "flags": 2, - "position": 2567 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 2569 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2570 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "/*!40101", - "value": "/*!40101", - "keyword": null, - "type": 4, - "flags": 10, - "position": 2571 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2579 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "SET", - "value": "SET", - "keyword": "SET", - "type": 1, - "flags": 11, - "position": 2580 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2583 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "COLLATION_CONNECTION", - "value": "COLLATION_CONNECTION", - "keyword": null, - "type": 0, - "flags": 0, - "position": 2584 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "=", - "value": "=", - "keyword": null, - "type": 2, - "flags": 2, - "position": 2604 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "@OLD_COLLATION_CONNECTION", - "value": "OLD_COLLATION_CONNECTION", - "keyword": null, - "type": 8, - "flags": 1, - "position": 2605 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": " ", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2630 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "*/", - "value": "*/", - "keyword": null, - "type": 4, - "flags": 2, - "position": 2631 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": ";", - "value": ";", - "keyword": null, - "type": 9, - "flags": 0, - "position": 2633 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "\n", - "value": " ", - "keyword": null, - "type": 3, - "flags": 0, - "position": 2634 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": null, - "value": null, - "keyword": null, - "type": 9, - "flags": 0, - "position": null - } - ], - "count": 505, - "idx": 505 - }, - "delimiter": ";", - "delimiterLen": 1, - "strict": false, - "errors": [] - }, - "parser": { - "@type": "PhpMyAdmin\\SqlParser\\Parser", - "list": { - "@type": "@2" - }, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "end_options": null, - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "SQL_MODE", - "value": "\"NO_AUTO_VALUE_ON_ZERO\"" - } - ], - "first": 0, - "last": 22 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "end_options": null, - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "AUTOCOMMIT", - "value": "0" - } - ], - "first": 23, - "last": 31 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\TransactionStatement", - "type": 1, - "statements": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "end_options": null, - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "time_zone", - "value": "\"+00:00\"" - } - ], - "first": 35, - "last": 43 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "end_options": null, - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "@OLD_CHARACTER_SET_CLIENT", - "value": "@@CHARACTER_SET_CLIENT" - } - ], - "first": 44, - "last": 54 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "end_options": null, - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "@OLD_CHARACTER_SET_RESULTS", - "value": "@@CHARACTER_SET_RESULTS" - } - ], - "first": 55, - "last": 65 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "end_options": null, - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "@OLD_COLLATION_CONNECTION", - "value": "@@COLLATION_CONNECTION" - } - ], - "first": 66, - "last": 76 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": { - "name": "NAMES", - "equals": false, - "expr": "utf8mb4", - "value": "utf8mb4" - } - } - }, - "end_options": null, - "set": [], - "first": 77, - "last": 87 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "monitoring__times", - "column": null, - "expr": "`monitoring__times`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": { - "name": "ENGINE", - "equals": true, - "expr": "InnoDB", - "value": "InnoDB" - }, - "4": { - "name": "DEFAULT CHARSET", - "equals": true, - "expr": "utf8", - "value": "utf8" - }, - "6": { - "name": "COLLATE", - "equals": true, - "expr": "utf8_unicode_ci", - "value": "utf8_unicode_ci" - } - } - }, - "fields": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "idServer", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "INT", - "parameters": [ - "11" - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": "UNSIGNED" - } - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "5": { - "name": "COMMENT", - "equals": false, - "expr": "'Id of server'", - "value": "Id of server" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "time", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "TIMESTAMP", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "2": { - "name": "DEFAULT", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "CURRENT_TIMESTAMP", - "alias": null, - "function": null, - "subquery": null - }, - "value": "CURRENT_TIMESTAMP" - }, - "7": { - "name": "ON UPDATE", - "equals": false, - "expr": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": null, - "expr": "CURRENT_TIMESTAMP", - "alias": null, - "function": null, - "subquery": null - }, - "value": "CURRENT_TIMESTAMP" - }, - "5": { - "name": "COMMENT", - "equals": false, - "expr": "'Time UTC'", - "value": "Time UTC" - } - } - } - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", - "name": "totalTime", - "isConstraint": null, - "type": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", - "name": "FLOAT", - "parameters": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "4": "UNSIGNED" - } - } - }, - "key": null, - "references": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "NOT NULL", - "5": { - "name": "COMMENT", - "equals": false, - "expr": "'Total time in ms'", - "value": "Total time in ms" - } - } - } - } - ], - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": null, - "return": null, - "parameters": null, - "body": [], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TABLE" - } - }, - "first": 88, - "last": 172 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "copyTimes", - "column": null, - "expr": "`copyTimes`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "AFTER", - "2": "INSERT" - } - }, - "fields": null, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "monitoring__times", - "column": null, - "expr": "`monitoring__times`", - "alias": null, - "function": null, - "subquery": null - }, - "return": null, - "parameters": null, - "body": [ - { - "@type": "@203" - }, - { - "@type": "@204" - }, - { - "@type": "@205" - }, - { - "@type": "@206" - }, - { - "@type": "@207" - }, - { - "@type": "@208" - }, - { - "@type": "@209" - }, - { - "@type": "@210" - }, - { - "@type": "@211" - }, - { - "@type": "@212" - }, - { - "@type": "@213" - }, - { - "@type": "@214" - }, - { - "@type": "@215" - }, - { - "@type": "@216" - }, - { - "@type": "@217" - }, - { - "@type": "@218" - }, - { - "@type": "@219" - }, - { - "@type": "@220" - }, - { - "@type": "@221" - }, - { - "@type": "@222" - }, - { - "@type": "@223" - }, - { - "@type": "@224" - }, - { - "@type": "@225" - }, - { - "@type": "@226" - }, - { - "@type": "@227" - }, - { - "@type": "@228" - }, - { - "@type": "@229" - }, - { - "@type": "@230" - }, - { - "@type": "@231" - }, - { - "@type": "@232" - }, - { - "@type": "@233" - }, - { - "@type": "@234" - }, - { - "@type": "@235" - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TRIGGER" - } - }, - "first": 184, - "last": 233 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "deleteTimes", - "column": null, - "expr": "`deleteTimes`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "AFTER", - "2": "DELETE" - } - }, - "fields": null, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "monitoring__times", - "column": null, - "expr": "`monitoring__times`", - "alias": null, - "function": null, - "subquery": null - }, - "return": null, - "parameters": null, - "body": [ - { - "@type": "@262" - }, - { - "@type": "@263" - }, - { - "@type": "@264" - }, - { - "@type": "@265" - }, - { - "@type": "@266" - }, - { - "@type": "@267" - }, - { - "@type": "@268" - }, - { - "@type": "@269" - }, - { - "@type": "@270" - }, - { - "@type": "@271" - }, - { - "@type": "@272" - }, - { - "@type": "@273" - }, - { - "@type": "@274" - }, - { - "@type": "@275" - }, - { - "@type": "@276" - }, - { - "@type": "@277" - }, - { - "@type": "@278" - }, - { - "@type": "@279" - }, - { - "@type": "@280" - }, - { - "@type": "@281" - }, - { - "@type": "@282" - }, - { - "@type": "@283" - }, - { - "@type": "@284" - }, - { - "@type": "@285" - }, - { - "@type": "@286" - }, - { - "@type": "@287" - }, - { - "@type": "@288" - }, - { - "@type": "@289" - }, - { - "@type": "@290" - }, - { - "@type": "@291" - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TRIGGER" - } - }, - "first": 243, - "last": 289 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", - "name": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "updateTimes", - "column": null, - "expr": "`updateTimes`", - "alias": null, - "function": null, - "subquery": null - }, - "entityOptions": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "AFTER", - "2": "UPDATE" - } - }, - "fields": null, - "with": null, - "select": null, - "like": null, - "partitionBy": null, - "partitionsNum": null, - "subpartitionBy": null, - "subpartitionsNum": null, - "partitions": null, - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "monitoring__times", - "column": null, - "expr": "`monitoring__times`", - "alias": null, - "function": null, - "subquery": null - }, - "return": null, - "parameters": null, - "body": [ - { - "@type": "@318" - }, - { - "@type": "@319" - }, - { - "@type": "@320" - }, - { - "@type": "@321" - }, - { - "@type": "@322" - }, - { - "@type": "@323" - }, - { - "@type": "@324" - }, - { - "@type": "@325" - }, - { - "@type": "@326" - }, - { - "@type": "@327" - }, - { - "@type": "@328" - }, - { - "@type": "@329" - }, - { - "@type": "@330" - }, - { - "@type": "@331" - }, - { - "@type": "@332" - }, - { - "@type": "@333" - }, - { - "@type": "@334" - }, - { - "@type": "@335" - }, - { - "@type": "@336" - }, - { - "@type": "@337" - }, - { - "@type": "@338" - }, - { - "@type": "@339" - }, - { - "@type": "@340" - }, - { - "@type": "@341" - }, - { - "@type": "@342" - }, - { - "@type": "@343" - }, - { - "@type": "@344" - }, - { - "@type": "@345" - }, - { - "@type": "@346" - }, - { - "@type": "@347" - }, - { - "@type": "@348" - }, - { - "@type": "@349" - }, - { - "@type": "@350" - }, - { - "@type": "@351" - }, - { - "@type": "@352" - }, - { - "@type": "@353" - }, - { - "@type": "@354" - }, - { - "@type": "@355" - }, - { - "@type": "@356" - }, - { - "@type": "@357" - }, - { - "@type": "@358" - }, - { - "@type": "@359" - }, - { - "@type": "@360" - }, - { - "@type": "@361" - }, - { - "@type": "@362" - }, - { - "@type": "@363" - }, - { - "@type": "@364" - }, - { - "@type": "@365" - }, - { - "@type": "@366" - }, - { - "@type": "@367" - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "6": "TRIGGER" - } - }, - "first": 299, - "last": 365 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "monitoring__times", - "column": null, - "expr": "`monitoring__times`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ADD" - } - }, - "field": null, - "partitions": null, - "unknown": [ - { - "@type": "@394" - }, - { - "@type": "@395" - }, - { - "@type": "@396" - }, - { - "@type": "@397" - }, - { - "@type": "@398" - }, - { - "@type": "@399" - }, - { - "@type": "@400" - }, - { - "@type": "@401" - }, - { - "@type": "@402" - }, - { - "@type": "@403" - }, - { - "@type": "@404" - }, - { - "@type": "@405" - }, - { - "@type": "@406" - }, - { - "@type": "@407" - }, - { - "@type": "@408" - }, - { - "@type": "@409" - }, - { - "@type": "@410" - } - ] - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ADD", - "2": { - "name": "KEY", - "equals": false, - "expr": "`INDEX_totalTime`", - "value": "INDEX_totalTime" - } - } - }, - "field": null, - "partitions": null, - "unknown": [ - { - "@type": "@419" - }, - { - "@type": "@420" - }, - { - "@type": "@421" - }, - { - "@type": "@422" - }, - { - "@type": "@423" - }, - { - "@type": "@424" - }, - { - "@type": "@425" - }, - { - "@type": "@426" - }, - { - "@type": "@427" - }, - { - "@type": "@428" - }, - { - "@type": "@429" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 371, - "last": 427 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", - "table": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": "monitoring__times", - "column": null, - "expr": "`monitoring__times`", - "alias": null, - "function": null, - "subquery": null - }, - "altered": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", - "ROUTINE_OPTIONS": { - "COMMENT": [ - 1, - "var" - ], - "LANGUAGE SQL": 2, - "CONTAINS SQL": 3, - "NO SQL": 3, - "READS SQL DATA": 3, - "MODIFIES SQL DATA": 3, - "SQL SECURITY": 4, - "DEFINER": 5, - "INVOKER": 5 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "ADD", - "2": "CONSTRAINT" - } - }, - "field": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", - "database": null, - "table": null, - "column": "monitoring__times__idServer", - "expr": "`monitoring__times__idServer`", - "alias": null, - "function": null, - "subquery": null - }, - "partitions": null, - "unknown": [ - { - "@type": "@456" - }, - { - "@type": "@457" - }, - { - "@type": "@458" - }, - { - "@type": "@459" - }, - { - "@type": "@460" - }, - { - "@type": "@461" - }, - { - "@type": "@462" - }, - { - "@type": "@463" - }, - { - "@type": "@464" - }, - { - "@type": "@465" - }, - { - "@type": "@466" - }, - { - "@type": "@467" - }, - { - "@type": "@468" - } - ] - } - ], - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "3": "TABLE" - } - }, - "first": 428, - "last": 466 - } - ], - "end": { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\TransactionStatement", - "type": 2, - "statements": null, - "end": null, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "COMMIT" - } - }, - "first": 467, - "last": 468 - }, - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": { - "1": "START TRANSACTION" - } - }, - "first": 32, - "last": 34 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "end_options": null, - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "CHARACTER_SET_CLIENT", - "value": "@OLD_CHARACTER_SET_CLIENT" - } - ], - "first": 469, - "last": 479 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "end_options": null, - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "CHARACTER_SET_RESULTS", - "value": "@OLD_CHARACTER_SET_RESULTS" - } - ], - "first": 480, - "last": 490 - }, - { - "@type": "PhpMyAdmin\\SqlParser\\Statements\\SetStatement", - "options": { - "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", - "options": [] - }, - "end_options": null, - "set": [ - { - "@type": "PhpMyAdmin\\SqlParser\\Components\\SetOperation", - "column": "COLLATION_CONNECTION", - "value": "@OLD_COLLATION_CONNECTION" - } - ], - "first": 491, - "last": 501 - } - ], - "brackets": 0, - "strict": false, - "errors": [] - }, - "errors": { - "lexer": [], - "parser": [] - } -} \ No newline at end of file diff --git a/docker/statistics/vendor/phpoption/phpoption/LICENSE b/docker/statistics/vendor/phpoption/phpoption/LICENSE new file mode 100644 index 00000000..f49a4e16 --- /dev/null +++ b/docker/statistics/vendor/phpoption/phpoption/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. \ No newline at end of file diff --git a/docker/statistics/vendor/phpoption/phpoption/composer.json b/docker/statistics/vendor/phpoption/phpoption/composer.json new file mode 100644 index 00000000..91dd6fb7 --- /dev/null +++ b/docker/statistics/vendor/phpoption/phpoption/composer.json @@ -0,0 +1,50 @@ +{ + "name": "phpoption/phpoption", + "description": "Option Type for PHP", + "keywords": ["php", "option", "language", "type"], + "license": "Apache-2.0", + "authors": [ + { + "name": "Johannes M. Schmitt", + "email": "schmittjoh@gmail.com", + "homepage": "https://github.com/schmittjoh" + }, + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + } + ], + "require": { + "php": "^7.2.5 || ^8.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.8.2", + "phpunit/phpunit": "^8.5.39 || ^9.6.20 || ^10.5.28" + }, + "autoload": { + "psr-4": { + "PhpOption\\": "src/PhpOption/" + } + }, + "autoload-dev": { + "psr-4": { + "PhpOption\\Tests\\": "tests/PhpOption/Tests/" + } + }, + "config": { + "allow-plugins": { + "bamarni/composer-bin-plugin": true + }, + "preferred-install": "dist" + }, + "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + }, + "branch-alias": { + "dev-master": "1.9-dev" + } + } +} diff --git a/docker/statistics/vendor/phpoption/phpoption/src/PhpOption/LazyOption.php b/docker/statistics/vendor/phpoption/phpoption/src/PhpOption/LazyOption.php new file mode 100644 index 00000000..9cb77c86 --- /dev/null +++ b/docker/statistics/vendor/phpoption/phpoption/src/PhpOption/LazyOption.php @@ -0,0 +1,175 @@ + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +namespace PhpOption; + +use Traversable; + +/** + * @template T + * + * @extends Option + */ +final class LazyOption extends Option +{ + /** @var callable(mixed...):(Option) */ + private $callback; + + /** @var array */ + private $arguments; + + /** @var Option|null */ + private $option; + + /** + * @template S + * @param callable(mixed...):(Option) $callback + * @param array $arguments + * + * @return LazyOption + */ + public static function create($callback, array $arguments = []): self + { + return new self($callback, $arguments); + } + + /** + * @param callable(mixed...):(Option) $callback + * @param array $arguments + */ + public function __construct($callback, array $arguments = []) + { + if (!is_callable($callback)) { + throw new \InvalidArgumentException('Invalid callback given'); + } + + $this->callback = $callback; + $this->arguments = $arguments; + } + + public function isDefined(): bool + { + return $this->option()->isDefined(); + } + + public function isEmpty(): bool + { + return $this->option()->isEmpty(); + } + + public function get() + { + return $this->option()->get(); + } + + public function getOrElse($default) + { + return $this->option()->getOrElse($default); + } + + public function getOrCall($callable) + { + return $this->option()->getOrCall($callable); + } + + public function getOrThrow(\Exception $ex) + { + return $this->option()->getOrThrow($ex); + } + + public function orElse(Option $else) + { + return $this->option()->orElse($else); + } + + public function ifDefined($callable) + { + $this->option()->forAll($callable); + } + + public function forAll($callable) + { + return $this->option()->forAll($callable); + } + + public function map($callable) + { + return $this->option()->map($callable); + } + + public function flatMap($callable) + { + return $this->option()->flatMap($callable); + } + + public function filter($callable) + { + return $this->option()->filter($callable); + } + + public function filterNot($callable) + { + return $this->option()->filterNot($callable); + } + + public function select($value) + { + return $this->option()->select($value); + } + + public function reject($value) + { + return $this->option()->reject($value); + } + + /** + * @return Traversable + */ + public function getIterator(): Traversable + { + return $this->option()->getIterator(); + } + + public function foldLeft($initialValue, $callable) + { + return $this->option()->foldLeft($initialValue, $callable); + } + + public function foldRight($initialValue, $callable) + { + return $this->option()->foldRight($initialValue, $callable); + } + + /** + * @return Option + */ + private function option(): Option + { + if (null === $this->option) { + /** @var mixed */ + $option = call_user_func_array($this->callback, $this->arguments); + if ($option instanceof Option) { + $this->option = $option; + } else { + throw new \RuntimeException(sprintf('Expected instance of %s', Option::class)); + } + } + + return $this->option; + } +} diff --git a/docker/statistics/vendor/phpoption/phpoption/src/PhpOption/None.php b/docker/statistics/vendor/phpoption/phpoption/src/PhpOption/None.php new file mode 100644 index 00000000..4b85d22d --- /dev/null +++ b/docker/statistics/vendor/phpoption/phpoption/src/PhpOption/None.php @@ -0,0 +1,136 @@ + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +namespace PhpOption; + +use EmptyIterator; + +/** + * @extends Option + */ +final class None extends Option +{ + /** @var None|null */ + private static $instance; + + /** + * @return None + */ + public static function create(): self + { + if (null === self::$instance) { + self::$instance = new self(); + } + + return self::$instance; + } + + public function get() + { + throw new \RuntimeException('None has no value.'); + } + + public function getOrCall($callable) + { + return $callable(); + } + + public function getOrElse($default) + { + return $default; + } + + public function getOrThrow(\Exception $ex) + { + throw $ex; + } + + public function isEmpty(): bool + { + return true; + } + + public function isDefined(): bool + { + return false; + } + + public function orElse(Option $else) + { + return $else; + } + + public function ifDefined($callable) + { + // Just do nothing in that case. + } + + public function forAll($callable) + { + return $this; + } + + public function map($callable) + { + return $this; + } + + public function flatMap($callable) + { + return $this; + } + + public function filter($callable) + { + return $this; + } + + public function filterNot($callable) + { + return $this; + } + + public function select($value) + { + return $this; + } + + public function reject($value) + { + return $this; + } + + public function getIterator(): EmptyIterator + { + return new EmptyIterator(); + } + + public function foldLeft($initialValue, $callable) + { + return $initialValue; + } + + public function foldRight($initialValue, $callable) + { + return $initialValue; + } + + private function __construct() + { + } +} diff --git a/docker/statistics/vendor/phpoption/phpoption/src/PhpOption/Option.php b/docker/statistics/vendor/phpoption/phpoption/src/PhpOption/Option.php new file mode 100644 index 00000000..91fab9ca --- /dev/null +++ b/docker/statistics/vendor/phpoption/phpoption/src/PhpOption/Option.php @@ -0,0 +1,434 @@ + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +namespace PhpOption; + +use ArrayAccess; +use IteratorAggregate; + +/** + * @template T + * + * @implements IteratorAggregate + */ +abstract class Option implements IteratorAggregate +{ + /** + * Creates an option given a return value. + * + * This is intended for consuming existing APIs and allows you to easily + * convert them to an option. By default, we treat ``null`` as the None + * case, and everything else as Some. + * + * @template S + * + * @param S $value The actual return value. + * @param S $noneValue The value which should be considered "None"; null by + * default. + * + * @return Option + */ + public static function fromValue($value, $noneValue = null) + { + if ($value === $noneValue) { + return None::create(); + } + + return new Some($value); + } + + /** + * Creates an option from an array's value. + * + * If the key does not exist in the array, the array is not actually an + * array, or the array's value at the given key is null, None is returned. + * Otherwise, Some is returned wrapping the value at the given key. + * + * @template S + * + * @param array|ArrayAccess|null $array A potential array or \ArrayAccess value. + * @param string|int|null $key The key to check. + * + * @return Option + */ + public static function fromArraysValue($array, $key) + { + if ($key === null || !(is_array($array) || $array instanceof ArrayAccess) || !isset($array[$key])) { + return None::create(); + } + + return new Some($array[$key]); + } + + /** + * Creates a lazy-option with the given callback. + * + * This is also a helper constructor for lazy-consuming existing APIs where + * the return value is not yet an option. By default, we treat ``null`` as + * None case, and everything else as Some. + * + * @template S + * + * @param callable $callback The callback to evaluate. + * @param array $arguments The arguments for the callback. + * @param S $noneValue The value which should be considered "None"; + * null by default. + * + * @return LazyOption + */ + public static function fromReturn($callback, array $arguments = [], $noneValue = null) + { + return new LazyOption(static function () use ($callback, $arguments, $noneValue) { + /** @var mixed */ + $return = call_user_func_array($callback, $arguments); + + if ($return === $noneValue) { + return None::create(); + } + + return new Some($return); + }); + } + + /** + * Option factory, which creates new option based on passed value. + * + * If value is already an option, it simply returns. If value is callable, + * LazyOption with passed callback created and returned. If Option + * returned from callback, it returns directly. On other case value passed + * to Option::fromValue() method. + * + * @template S + * + * @param Option|callable|S $value + * @param S $noneValue Used when $value is mixed or + * callable, for None-check. + * + * @return Option|LazyOption + */ + public static function ensure($value, $noneValue = null) + { + if ($value instanceof self) { + return $value; + } elseif (is_callable($value)) { + return new LazyOption(static function () use ($value, $noneValue) { + /** @var mixed */ + $return = $value(); + + if ($return instanceof self) { + return $return; + } else { + return self::fromValue($return, $noneValue); + } + }); + } else { + return self::fromValue($value, $noneValue); + } + } + + /** + * Lift a function so that it accepts Option as parameters. + * + * We return a new closure that wraps the original callback. If any of the + * parameters passed to the lifted function is empty, the function will + * return a value of None. Otherwise, we will pass all parameters to the + * original callback and return the value inside a new Option, unless an + * Option is returned from the function, in which case, we use that. + * + * @template S + * + * @param callable $callback + * @param mixed $noneValue + * + * @return callable + */ + public static function lift($callback, $noneValue = null) + { + return static function () use ($callback, $noneValue) { + /** @var array */ + $args = func_get_args(); + + $reduced_args = array_reduce( + $args, + /** @param bool $status */ + static function ($status, self $o) { + return $o->isEmpty() ? true : $status; + }, + false + ); + // if at least one parameter is empty, return None + if ($reduced_args) { + return None::create(); + } + + $args = array_map( + /** @return T */ + static function (self $o) { + // it is safe to do so because the fold above checked + // that all arguments are of type Some + /** @var T */ + return $o->get(); + }, + $args + ); + + return self::ensure(call_user_func_array($callback, $args), $noneValue); + }; + } + + /** + * Returns the value if available, or throws an exception otherwise. + * + * @throws \RuntimeException If value is not available. + * + * @return T + */ + abstract public function get(); + + /** + * Returns the value if available, or the default value if not. + * + * @template S + * + * @param S $default + * + * @return T|S + */ + abstract public function getOrElse($default); + + /** + * Returns the value if available, or the results of the callable. + * + * This is preferable over ``getOrElse`` if the computation of the default + * value is expensive. + * + * @template S + * + * @param callable():S $callable + * + * @return T|S + */ + abstract public function getOrCall($callable); + + /** + * Returns the value if available, or throws the passed exception. + * + * @param \Exception $ex + * + * @return T + */ + abstract public function getOrThrow(\Exception $ex); + + /** + * Returns true if no value is available, false otherwise. + * + * @return bool + */ + abstract public function isEmpty(); + + /** + * Returns true if a value is available, false otherwise. + * + * @return bool + */ + abstract public function isDefined(); + + /** + * Returns this option if non-empty, or the passed option otherwise. + * + * This can be used to try multiple alternatives, and is especially useful + * with lazy evaluating options: + * + * ```php + * $repo->findSomething() + * ->orElse(new LazyOption(array($repo, 'findSomethingElse'))) + * ->orElse(new LazyOption(array($repo, 'createSomething'))); + * ``` + * + * @param Option $else + * + * @return Option + */ + abstract public function orElse(self $else); + + /** + * This is similar to map() below except that the return value has no meaning; + * the passed callable is simply executed if the option is non-empty, and + * ignored if the option is empty. + * + * In all cases, the return value of the callable is discarded. + * + * ```php + * $comment->getMaybeFile()->ifDefined(function($file) { + * // Do something with $file here. + * }); + * ``` + * + * If you're looking for something like ``ifEmpty``, you can use ``getOrCall`` + * and ``getOrElse`` in these cases. + * + * @deprecated Use forAll() instead. + * + * @param callable(T):mixed $callable + * + * @return void + */ + abstract public function ifDefined($callable); + + /** + * This is similar to map() except that the return value of the callable has no meaning. + * + * The passed callable is simply executed if the option is non-empty, and ignored if the + * option is empty. This method is preferred for callables with side-effects, while map() + * is intended for callables without side-effects. + * + * @param callable(T):mixed $callable + * + * @return Option + */ + abstract public function forAll($callable); + + /** + * Applies the callable to the value of the option if it is non-empty, + * and returns the return value of the callable wrapped in Some(). + * + * If the option is empty, then the callable is not applied. + * + * ```php + * (new Some("foo"))->map('strtoupper')->get(); // "FOO" + * ``` + * + * @template S + * + * @param callable(T):S $callable + * + * @return Option + */ + abstract public function map($callable); + + /** + * Applies the callable to the value of the option if it is non-empty, and + * returns the return value of the callable directly. + * + * In contrast to ``map``, the return value of the callable is expected to + * be an Option itself; it is not automatically wrapped in Some(). + * + * @template S + * + * @param callable(T):Option $callable must return an Option + * + * @return Option + */ + abstract public function flatMap($callable); + + /** + * If the option is empty, it is returned immediately without applying the callable. + * + * If the option is non-empty, the callable is applied, and if it returns true, + * the option itself is returned; otherwise, None is returned. + * + * @param callable(T):bool $callable + * + * @return Option + */ + abstract public function filter($callable); + + /** + * If the option is empty, it is returned immediately without applying the callable. + * + * If the option is non-empty, the callable is applied, and if it returns false, + * the option itself is returned; otherwise, None is returned. + * + * @param callable(T):bool $callable + * + * @return Option + */ + abstract public function filterNot($callable); + + /** + * If the option is empty, it is returned immediately. + * + * If the option is non-empty, and its value does not equal the passed value + * (via a shallow comparison ===), then None is returned. Otherwise, the + * Option is returned. + * + * In other words, this will filter all but the passed value. + * + * @param T $value + * + * @return Option + */ + abstract public function select($value); + + /** + * If the option is empty, it is returned immediately. + * + * If the option is non-empty, and its value does equal the passed value (via + * a shallow comparison ===), then None is returned; otherwise, the Option is + * returned. + * + * In other words, this will let all values through except the passed value. + * + * @param T $value + * + * @return Option + */ + abstract public function reject($value); + + /** + * Binary operator for the initial value and the option's value. + * + * If empty, the initial value is returned. If non-empty, the callable + * receives the initial value and the option's value as arguments. + * + * ```php + * + * $some = new Some(5); + * $none = None::create(); + * $result = $some->foldLeft(1, function($a, $b) { return $a + $b; }); // int(6) + * $result = $none->foldLeft(1, function($a, $b) { return $a + $b; }); // int(1) + * + * // This can be used instead of something like the following: + * $option = Option::fromValue($integerOrNull); + * $result = 1; + * if ( ! $option->isEmpty()) { + * $result += $option->get(); + * } + * ``` + * + * @template S + * + * @param S $initialValue + * @param callable(S, T):S $callable + * + * @return S + */ + abstract public function foldLeft($initialValue, $callable); + + /** + * foldLeft() but with reversed arguments for the callable. + * + * @template S + * + * @param S $initialValue + * @param callable(T, S):S $callable + * + * @return S + */ + abstract public function foldRight($initialValue, $callable); +} diff --git a/docker/statistics/vendor/phpoption/phpoption/src/PhpOption/Some.php b/docker/statistics/vendor/phpoption/phpoption/src/PhpOption/Some.php new file mode 100644 index 00000000..032632ea --- /dev/null +++ b/docker/statistics/vendor/phpoption/phpoption/src/PhpOption/Some.php @@ -0,0 +1,169 @@ + + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +namespace PhpOption; + +use ArrayIterator; + +/** + * @template T + * + * @extends Option + */ +final class Some extends Option +{ + /** @var T */ + private $value; + + /** + * @param T $value + */ + public function __construct($value) + { + $this->value = $value; + } + + /** + * @template U + * + * @param U $value + * + * @return Some + */ + public static function create($value): self + { + return new self($value); + } + + public function isDefined(): bool + { + return true; + } + + public function isEmpty(): bool + { + return false; + } + + public function get() + { + return $this->value; + } + + public function getOrElse($default) + { + return $this->value; + } + + public function getOrCall($callable) + { + return $this->value; + } + + public function getOrThrow(\Exception $ex) + { + return $this->value; + } + + public function orElse(Option $else) + { + return $this; + } + + public function ifDefined($callable) + { + $this->forAll($callable); + } + + public function forAll($callable) + { + $callable($this->value); + + return $this; + } + + public function map($callable) + { + return new self($callable($this->value)); + } + + public function flatMap($callable) + { + /** @var mixed */ + $rs = $callable($this->value); + if (!$rs instanceof Option) { + throw new \RuntimeException('Callables passed to flatMap() must return an Option. Maybe you should use map() instead?'); + } + + return $rs; + } + + public function filter($callable) + { + if (true === $callable($this->value)) { + return $this; + } + + return None::create(); + } + + public function filterNot($callable) + { + if (false === $callable($this->value)) { + return $this; + } + + return None::create(); + } + + public function select($value) + { + if ($this->value === $value) { + return $this; + } + + return None::create(); + } + + public function reject($value) + { + if ($this->value === $value) { + return None::create(); + } + + return $this; + } + + /** + * @return ArrayIterator + */ + public function getIterator(): ArrayIterator + { + return new ArrayIterator([$this->value]); + } + + public function foldLeft($initialValue, $callable) + { + return $callable($initialValue, $this->value); + } + + public function foldRight($initialValue, $callable) + { + return $callable($this->value, $initialValue); + } +} diff --git a/docker/statistics/vendor/phpunit/phpunit/src/Framework/MockObject/Exception/NoMoreReturnValuesConfiguredException.php b/docker/statistics/vendor/phpunit/phpunit/src/Framework/MockObject/Exception/NoMoreReturnValuesConfiguredException.php deleted file mode 100644 index c4b18165..00000000 --- a/docker/statistics/vendor/phpunit/phpunit/src/Framework/MockObject/Exception/NoMoreReturnValuesConfiguredException.php +++ /dev/null @@ -1,32 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ -namespace PHPUnit\Framework\MockObject; - -use function sprintf; - -/** - * @no-named-arguments Parameter names are not covered by the backward compatibility promise for PHPUnit - * - * @internal This class is not covered by the backward compatibility promise for PHPUnit - */ -final class NoMoreReturnValuesConfiguredException extends \PHPUnit\Framework\Exception implements Exception -{ - public function __construct(Invocation $invocation, int $numberOfConfiguredReturnValues) - { - parent::__construct( - sprintf( - 'Only %d return values have been configured for %s::%s()', - $numberOfConfiguredReturnValues, - $invocation->className(), - $invocation->methodName(), - ), - ); - } -} diff --git a/docker/statistics/vendor/phpunit/phpunit/src/Framework/MockObject/Generator/Exception/CannotUseAddMethodsException.php b/docker/statistics/vendor/phpunit/phpunit/src/Framework/MockObject/Generator/Exception/CannotUseAddMethodsException.php deleted file mode 100644 index 9fc50788..00000000 --- a/docker/statistics/vendor/phpunit/phpunit/src/Framework/MockObject/Generator/Exception/CannotUseAddMethodsException.php +++ /dev/null @@ -1,31 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ -namespace PHPUnit\Framework\MockObject\Generator; - -use function sprintf; - -/** - * @no-named-arguments Parameter names are not covered by the backward compatibility promise for PHPUnit - * - * @internal This class is not covered by the backward compatibility promise for PHPUnit - */ -final class CannotUseAddMethodsException extends \PHPUnit\Framework\Exception implements Exception -{ - public function __construct(string $type, string $methodName) - { - parent::__construct( - sprintf( - 'Trying to configure method "%s" with addMethods(), but it exists in class "%s". Use onlyMethods() for methods that exist in the class', - $methodName, - $type, - ), - ); - } -} diff --git a/docker/statistics/vendor/phpunit/phpunit/src/Framework/MockObject/Generator/Exception/NameAlreadyInUseException.php b/docker/statistics/vendor/phpunit/phpunit/src/Framework/MockObject/Generator/Exception/NameAlreadyInUseException.php deleted file mode 100644 index c73e717a..00000000 --- a/docker/statistics/vendor/phpunit/phpunit/src/Framework/MockObject/Generator/Exception/NameAlreadyInUseException.php +++ /dev/null @@ -1,33 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ -namespace PHPUnit\Framework\MockObject\Generator; - -use function sprintf; - -/** - * @no-named-arguments Parameter names are not covered by the backward compatibility promise for PHPUnit - * - * @internal This class is not covered by the backward compatibility promise for PHPUnit - */ -final class NameAlreadyInUseException extends \PHPUnit\Framework\Exception implements Exception -{ - /** - * @psalm-param class-string|trait-string $name - */ - public function __construct(string $name) - { - parent::__construct( - sprintf( - 'The name "%s" is already in use', - $name, - ), - ); - } -} diff --git a/docker/statistics/vendor/phpunit/phpunit/src/Logging/TeamCity/Subscriber/TestSuiteBeforeFirstTestMethodErroredSubscriber.php b/docker/statistics/vendor/phpunit/phpunit/src/Logging/TeamCity/Subscriber/TestSuiteBeforeFirstTestMethodErroredSubscriber.php deleted file mode 100644 index 6961b40a..00000000 --- a/docker/statistics/vendor/phpunit/phpunit/src/Logging/TeamCity/Subscriber/TestSuiteBeforeFirstTestMethodErroredSubscriber.php +++ /dev/null @@ -1,30 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ -namespace PHPUnit\Logging\TeamCity; - -use PHPUnit\Event\InvalidArgumentException; -use PHPUnit\Event\Test\BeforeFirstTestMethodErrored; -use PHPUnit\Event\Test\BeforeFirstTestMethodErroredSubscriber; - -/** - * @no-named-arguments Parameter names are not covered by the backward compatibility promise for PHPUnit - * - * @internal This class is not covered by the backward compatibility promise for PHPUnit - */ -final class TestSuiteBeforeFirstTestMethodErroredSubscriber extends Subscriber implements BeforeFirstTestMethodErroredSubscriber -{ - /** - * @throws InvalidArgumentException - */ - public function notify(BeforeFirstTestMethodErrored $event): void - { - $this->logger()->beforeFirstTestMethodErrored($event); - } -} diff --git a/docker/statistics/vendor/phpunit/phpunit/src/Logging/TeamCity/Subscriber/TestSuiteSkippedSubscriber.php b/docker/statistics/vendor/phpunit/phpunit/src/Logging/TeamCity/Subscriber/TestSuiteSkippedSubscriber.php deleted file mode 100644 index 8f9e3cf7..00000000 --- a/docker/statistics/vendor/phpunit/phpunit/src/Logging/TeamCity/Subscriber/TestSuiteSkippedSubscriber.php +++ /dev/null @@ -1,30 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ -namespace PHPUnit\Logging\TeamCity; - -use PHPUnit\Event\InvalidArgumentException; -use PHPUnit\Event\TestSuite\Skipped; -use PHPUnit\Event\TestSuite\SkippedSubscriber; - -/** - * @no-named-arguments Parameter names are not covered by the backward compatibility promise for PHPUnit - * - * @internal This class is not covered by the backward compatibility promise for PHPUnit - */ -final class TestSuiteSkippedSubscriber extends Subscriber implements SkippedSubscriber -{ - /** - * @throws InvalidArgumentException - */ - public function notify(Skipped $event): void - { - $this->logger()->testSuiteSkipped($event); - } -} diff --git a/docker/statistics/vendor/phpunit/phpunit/src/Runner/Exception/DirectoryDoesNotExistException.php b/docker/statistics/vendor/phpunit/phpunit/src/Runner/Exception/DirectoryDoesNotExistException.php deleted file mode 100644 index 626c4225..00000000 --- a/docker/statistics/vendor/phpunit/phpunit/src/Runner/Exception/DirectoryDoesNotExistException.php +++ /dev/null @@ -1,31 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ -namespace PHPUnit\Runner; - -use function sprintf; -use RuntimeException; - -/** - * @no-named-arguments Parameter names are not covered by the backward compatibility promise for PHPUnit - * - * @internal This class is not covered by the backward compatibility promise for PHPUnit - */ -final class DirectoryDoesNotExistException extends RuntimeException implements Exception -{ - public function __construct(string $directory) - { - parent::__construct( - sprintf( - 'Directory "%s" does not exist and could not be created', - $directory, - ), - ); - } -} diff --git a/docker/statistics/vendor/phpunit/phpunit/src/TextUI/Exception/CannotOpenSocketException.php b/docker/statistics/vendor/phpunit/phpunit/src/TextUI/Exception/CannotOpenSocketException.php deleted file mode 100644 index 519d1378..00000000 --- a/docker/statistics/vendor/phpunit/phpunit/src/TextUI/Exception/CannotOpenSocketException.php +++ /dev/null @@ -1,32 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ -namespace PHPUnit\TextUI; - -use function sprintf; -use RuntimeException; - -/** - * @no-named-arguments Parameter names are not covered by the backward compatibility promise for PHPUnit - * - * @internal This class is not covered by the backward compatibility promise for PHPUnit - */ -final class CannotOpenSocketException extends RuntimeException implements Exception -{ - public function __construct(string $hostname, int $port) - { - parent::__construct( - sprintf( - 'Cannot open socket %s:%d', - $hostname, - $port, - ), - ); - } -} diff --git a/docker/statistics/vendor/phpunit/phpunit/src/Util/Http/Downloader.php b/docker/statistics/vendor/phpunit/phpunit/src/Util/Http/Downloader.php deleted file mode 100644 index a9af2e38..00000000 --- a/docker/statistics/vendor/phpunit/phpunit/src/Util/Http/Downloader.php +++ /dev/null @@ -1,23 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ -namespace PHPUnit\Util\Http; - -/** - * @no-named-arguments Parameter names are not covered by the backward compatibility promise for PHPUnit - * - * @internal This class is not covered by the backward compatibility promise for PHPUnit - */ -interface Downloader -{ - /** - * @param non-empty-string $url - */ - public function download(string $url): false|string; -} diff --git a/docker/statistics/vendor/phpunit/phpunit/src/Util/Http/PhpDownloader.php b/docker/statistics/vendor/phpunit/phpunit/src/Util/Http/PhpDownloader.php deleted file mode 100644 index 5969c042..00000000 --- a/docker/statistics/vendor/phpunit/phpunit/src/Util/Http/PhpDownloader.php +++ /dev/null @@ -1,30 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ -namespace PHPUnit\Util\Http; - -use function file_get_contents; - -/** - * @no-named-arguments Parameter names are not covered by the backward compatibility promise for PHPUnit - * - * @internal This class is not covered by the backward compatibility promise for PHPUnit - * - * @codeCoverageIgnore - */ -final class PhpDownloader implements Downloader -{ - /** - * @param non-empty-string $url - */ - public function download(string $url): false|string - { - return file_get_contents($url); - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/CHANGELOG.md b/docker/statistics/vendor/sabberworm/php-css-parser/CHANGELOG.md deleted file mode 100644 index c90927cc..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/CHANGELOG.md +++ /dev/null @@ -1,365 +0,0 @@ -# Changelog - -All notable changes to this project will be documented in this file. -This project adheres to [Semantic Versioning](https://semver.org/). - -## x.y.z - -### Added - -### Changed - -### Deprecated - -### Removed - -### Fixed - -## 8.7.0: Add support for PHP 8.4 - -### Added - -- Add support for PHP 8.4 (#675, #701, #746, #751) - -### Changed - -- Mark parsing-internal classes and methods as `@internal` (#711) -- Block installations on unsupported higher PHP versions (#691) - -### Deprecated - -- Deprecate the expansion of shorthand properties (#719) -- Deprecate `Parser::setCharset()` and `Parser::getCharset()` (#703) - -### Fixed - -- Fix type errors in PHP strict mode (#695) - -## 8.6.0 - -### Added - -- Support arithmetic operators in CSS function arguments (#607) -- Add support for inserting an item in a CSS list (#545) -- Add support for the `dvh`, `lvh` and `svh` length units (#415) - -### Changed - -- Improve performance of Value::parseValue with many delimiters by refactoring - to remove `array_search()` (#413) - -## 8.5.2 - -### Changed - -- Mark all class constants as `@internal` (#500) - -### Fixed - -- Fix undefined local variable in `CalcFunction::parse()` (#593) - -## 8.5.1 - -### Fixed - -- Fix PHP notice caused by parsing invalid color values having less than - 6 characters (#485) -- Fix (regression) failure to parse at-rules with strict parsing (#456) - -## 8.5.0 - -### Added - -- Add a method to get an import's media queries (#384) -- Add more unit tests (#381, #382) - -### Fixed - -- Retain CSSList and Rule comments when rendering CSS (#351) -- Replace invalid `turns` unit with `turn` (#350) -- Also allow string values for rules (#348) -- Fix invalid calc parsing (#169) -- Handle scientific notation when parsing sizes (#179) -- Fix PHP 8.1 compatibility in `ParserState::strsplit()` (#344) - -## 8.4.0 - -### Features - -* Support for PHP 8.x -* PHPDoc annotations -* Allow usage of CSS variables inside color functions (by parsing them as - regular functions) -* Use PSR-12 code style -* *No deprecations* - -### Bugfixes - -* Improved handling of whitespace in `calc()` -* Fix parsing units whose prefix is also a valid unit, like `vmin` -* Allow passing an object to `CSSList#replace` -* Fix PHP 7.3 warnings -* Correctly parse keyframes with `%` -* Don’t convert large numbers to scientific notation -* Allow a file to end after an `@import` -* Preserve case of CSS variables as specced -* Allow identifiers to use escapes the same way as strings -* No longer use `eval` for the comparison in `getSelectorsBySpecificity`, in - case it gets passed untrusted input (CVE-2020-13756). Also fixed in 8.3.1, - 8.2.1, 8.1.1, 8.0.1, 7.0.4, 6.0.2, 5.2.1, 5.1.3, 5.0.9, 4.0.1, 3.0.1, 2.0.1, - 1.0.1. -* Prevent an infinite loop when parsing invalid grid line names -* Remove invalid unit `vm` -* Retain rule order after expanding shorthands - -### Backwards-incompatible changes - -* PHP ≥ 5.6 is now required -* HHVM compatibility target dropped - -## 8.3.0 (2019-02-22) - -* Refactor parsing logic to mostly reside in the class files whose data - structure is to be parsed (this should eventually allow us to unit-test - specific parts of the parsing logic individually). -* Fix error in parsing `calc` expessions when the first operand is a negative - number, thanks to @raxbg. -* Support parsing CSS4 colors in hex notation with alpha values, thanks to - @raxbg. -* Swallow more errors in lenient mode, thanks to @raxbg. -* Allow specifying arbitrary strings to output before and after declaration - blocks, thanks to @westonruter. -* *No backwards-incompatible changes* -* *No deprecations* - -## 8.2.0 (2018-07-13) - -* Support parsing `calc()`, thanks to @raxbg. -* Support parsing grid-lines, again thanks to @raxbg. -* Support parsing legacy IE filters (`progid:`) in lenient mode, thanks to - @FMCorz -* Performance improvements parsing large files, again thanks to @FMCorz -* *No backwards-incompatible changes* -* *No deprecations* - -## 8.1.0 (2016-07-19) - -* Comments are no longer silently ignored but stored with the object with which - they appear (no render support, though). Thanks to @FMCorz. -* The IE hacks using `\0` and `\9` can now be parsed (and rendered) in lenient - mode. Thanks (again) to @FMCorz. -* Media queries with or without spaces before the query are parsed. Still no - *real* parsing support, though. Sorry… -* PHPUnit is now listed as a dev-dependency in composer.json. -* *No backwards-incompatible changes* -* *No deprecations* - -## 8.0.0 (2016-06-30) - -* Store source CSS line numbers in tokens and parsing exceptions. -* *No deprecations* - -### Backwards-incompatible changes - -* Unrecoverable parser errors throw an exception of type - `Sabberworm\CSS\Parsing\SourceException` instead of `\Exception`. - -## 7.0.3 (2016-04-27) - -* Fixed parsing empty CSS when multibyte is off -* *No backwards-incompatible changes* -* *No deprecations* - -## 7.0.2 (2016-02-11) - -* 150 time performance boost thanks - to @[ossinkine](https://github.com/ossinkine) -* *No backwards-incompatible changes* -* *No deprecations* - -## 7.0.1 (2015-12-25) - -* No more suppressed `E_NOTICE` -* *No backwards-incompatible changes* -* *No deprecations* - -## 7.0.0 (2015-08-24) - -* Compatibility with PHP 7. Well timed, eh? -* *No deprecations* - -### Backwards-incompatible changes - -* The `Sabberworm\CSS\Value\String` class has been renamed to - `Sabberworm\CSS\Value\CSSString`. - -## 6.0.1 (2015-08-24) - -* Remove some declarations in interfaces incompatible with PHP 5.3 (< 5.3.9) -* *No deprecations* - -## 6.0.0 (2014-07-03) - -* Format output using Sabberworm\CSS\OutputFormat -* *No backwards-incompatible changes* - -### Deprecations - -* The parse() method replaces __toString with an optional argument (instance of - the OutputFormat class) - -## 5.2.0 (2014-06-30) - -* Support removing a selector from a declaration block using - `$oBlock->removeSelector($mSelector)` -* Introduce a specialized exception (Sabberworm\CSS\Parsing\OuputException) for - exceptions during output rendering - -* *No deprecations* - -#### Backwards-incompatible changes - -* Outputting a declaration block that has no selectors throws an OuputException - instead of outputting an invalid ` {…}` into the CSS document. - -## 5.1.2 (2013-10-30) - -* Remove the use of consumeUntil in comment parsing. This makes it possible to - parse comments such as `/** Perfectly valid **/` -* Add fr relative size unit -* Fix some issues with HHVM -* *No backwards-incompatible changes* -* *No deprecations* - -## 5.1.1 (2013-10-28) - -* Updated CHANGELOG.md to reflect changes since 5.0.4 -* *No backwards-incompatible changes* -* *No deprecations* - -## 5.1.0 (2013-10-24) - -* Performance enhancements by Michael M Slusarz -* More rescue entry points for lenient parsing (unexpected tokens between - declaration blocks and unclosed comments) -* *No backwards-incompatible changes* -* *No deprecations* - -## 5.0.8 (2013-08-15) - -* Make default settings’ multibyte parsing option dependent on whether or not - the mbstring extension is actually installed. -* *No backwards-incompatible changes* -* *No deprecations* - -## 5.0.7 (2013-08-04) - -* Fix broken decimal point output optimization -* *No backwards-incompatible changes* -* *No deprecations* - -## 5.0.6 (2013-05-31) - -* Fix broken unit test -* *No backwards-incompatible changes* -* *No deprecations* - -## 5.0.5 (2013-04-17) - -* Initial support for lenient parsing (setting this parser option will catch - some exceptions internally and recover the parser’s state as neatly as - possible). -* *No backwards-incompatible changes* -* *No deprecations* - -## 5.0.4 (2013-03-21) - -* Don’t output floats with locale-aware separator chars -* *No backwards-incompatible changes* -* *No deprecations* - -## 5.0.3 (2013-03-21) - -* More size units recognized -* *No backwards-incompatible changes* -* *No deprecations* - -## 5.0.2 (2013-03-21) - -* CHANGELOG.md file added to distribution -* *No backwards-incompatible changes* -* *No deprecations* - -## 5.0.1 (2013-03-20) - -* Internal cleanup -* *No backwards-incompatible changes* -* *No deprecations* - -## 5.0.0 (2013-03-20) - -* Correctly parse all known CSS 3 units (including Hz and kHz). -* Output RGB colors in short (#aaa or #ababab) notation -* Be case-insensitive when parsing identifiers. -* *No deprecations* - -### Backwards-incompatible changes - -* `Sabberworm\CSS\Value\Color`’s `__toString` method overrides `CSSList`’s to - maybe return something other than `type(value, …)` (see above). - -## 4.0.0 (2013-03-19) - -* Support for more @-rules -* Generic interface `Sabberworm\CSS\Property\AtRule`, implemented by all @-rule - classes -* *No deprecations* - -### Backwards-incompatible changes - -* `Sabberworm\CSS\RuleSet\AtRule` renamed to `Sabberworm\CSS\RuleSet\AtRuleSet` -* `Sabberworm\CSS\CSSList\MediaQuery` renamed to - `Sabberworm\CSS\RuleSet\CSSList\AtRuleBlockList` with differing semantics and - API (which also works for other block-list-based @-rules like `@supports`). - -## 3.0.0 (2013-03-06) - -* Support for lenient parsing (on by default) -* *No deprecations* - -### Backwards-incompatible changes - -* All properties (like whether or not to use `mb_`-functions, which default - charset to use and – new – whether or not to be forgiving when parsing) are - now encapsulated in an instance of `Sabberworm\CSS\Settings` which can be - passed as the second argument to `Sabberworm\CSS\Parser->__construct()`. -* Specifying a charset as the second argument to - `Sabberworm\CSS\Parser->__construct()` is no longer supported. Use - `Sabberworm\CSS\Settings::create()->withDefaultCharset('some-charset')` - instead. -* Setting `Sabberworm\CSS\Parser->bUseMbFunctions` has no effect. Use - `Sabberworm\CSS\Settings::create()->withMultibyteSupport(true/false)` instead. -* `Sabberworm\CSS\Parser->parse()` may throw a - `Sabberworm\CSS\Parsing\UnexpectedTokenException` when in strict parsing mode. - -## 2.0.0 (2013-01-29) - -* Allow multiple rules of the same type per rule set - -### Backwards-incompatible changes - -* `Sabberworm\CSS\RuleSet->getRules()` returns an index-based array instead of - an associative array. Use `Sabberworm\CSS\RuleSet->getRulesAssoc()` (which - eliminates duplicate rules and lets the later rule of the same name win). -* `Sabberworm\CSS\RuleSet->removeRule()` works as it did before except when - passed an instance of `Sabberworm\CSS\Rule\Rule`, in which case it would only - remove the exact rule given instead of all the rules of the same type. To get - the old behaviour, use `Sabberworm\CSS\RuleSet->removeRule($oRule->getRule()`; - -## 1.0 - -Initial release of a stable public API. - -## 0.9 - -Last version not to use PSR-0 project organization semantics. diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/README.md b/docker/statistics/vendor/sabberworm/php-css-parser/README.md deleted file mode 100644 index 90428cbf..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/README.md +++ /dev/null @@ -1,637 +0,0 @@ -# PHP CSS Parser - -[![Build Status](https://github.com/sabberworm/PHP-CSS-Parser/workflows/CI/badge.svg?branch=master)](https://github.com/sabberworm/PHP-CSS-Parser/actions/) - -A Parser for CSS Files written in PHP. Allows extraction of CSS files into a data structure, manipulation of said structure and output as (optimized) CSS. - -## Usage - -### Installation using Composer - -```bash -composer require sabberworm/php-css-parser -``` - -### Extraction - -To use the CSS Parser, create a new instance. The constructor takes the following form: - -```php -new \Sabberworm\CSS\Parser($css); -``` - -To read a file, for example, you’d do the following: - -```php -$parser = new \Sabberworm\CSS\Parser(file_get_contents('somefile.css')); -$cssDocument = $parser->parse(); -``` - -The resulting CSS document structure can be manipulated prior to being output. - -### Options - -#### Charset - -The charset option will only be used if the CSS file does not contain an `@charset` declaration. UTF-8 is the default, so you won’t have to create a settings object at all if you don’t intend to change that. - -```php -$settings = \Sabberworm\CSS\Settings::create() - ->withDefaultCharset('windows-1252'); -$parser = new \Sabberworm\CSS\Parser($css, $settings); -``` - -#### Strict parsing - -To have the parser throw an exception when encountering invalid/unknown constructs (as opposed to trying to ignore them and carry on parsing), supply a thusly configured `\Sabberworm\CSS\Settings` object: - -```php -$parser = new \Sabberworm\CSS\Parser( - file_get_contents('somefile.css'), - \Sabberworm\CSS\Settings::create()->beStrict() -); -``` - -Note that this will also disable a workaround for parsing the unquoted variant of the legacy IE-specific `filter` rule. - -#### Disable multibyte functions - -To achieve faster parsing, you can choose to have PHP-CSS-Parser use regular string functions instead of `mb_*` functions. This should work fine in most cases, even for UTF-8 files, as all the multibyte characters are in string literals. Still it’s not recommended using this with input you have no control over as it’s not thoroughly covered by test cases. - -```php -$settings = \Sabberworm\CSS\Settings::create()->withMultibyteSupport(false); -$parser = new \Sabberworm\CSS\Parser($css, $settings); -``` - -### Manipulation - -The resulting data structure consists mainly of five basic types: `CSSList`, `RuleSet`, `Rule`, `Selector` and `Value`. There are two additional types used: `Import` and `Charset`, which you won’t use often. - -#### CSSList - -`CSSList` represents a generic CSS container, most likely containing declaration blocks (rule sets with a selector), but it may also contain at-rules, charset declarations, etc. - -To access the items stored in a `CSSList` – like the document you got back when calling `$parser->parse()` –, use `getContents()`, then iterate over that collection and use `instanceof` to check whether you’re dealing with another `CSSList`, a `RuleSet`, a `Import` or a `Charset`. - -To append a new item (selector, media query, etc.) to an existing `CSSList`, construct it using the constructor for this class and use the `append($oItem)` method. - -#### RuleSet - -`RuleSet` is a container for individual rules. The most common form of a rule set is one constrained by a selector. The following concrete subtypes exist: - -* `AtRuleSet` – for generic at-rules for generic at-rules which are not covered by specific classes, i.e., not `@import`, `@charset` or `@media`. A common example for this is `@font-face`. -* `DeclarationBlock` – a `RuleSet` constrained by a `Selector`; contains an array of selector objects (comma-separated in the CSS) as well as the rules to be applied to the matching elements. - -Note: A `CSSList` can contain other `CSSList`s (and `Import`s as well as a `Charset`), while a `RuleSet` can only contain `Rule`s. - -If you want to manipulate a `RuleSet`, use the methods `addRule(Rule $rule)`, `getRules()` and `removeRule($rule)` (which accepts either a `Rule` or a rule name; optionally suffixed by a dash to remove all related rules). - -#### Rule - -`Rule`s just have a string key (the rule) and a `Value`. - -#### Value - -`Value` is an abstract class that only defines the `render` method. The concrete subclasses for atomic value types are: - -* `Size` – consists of a numeric `size` value and a unit. -* `Color` – colors can be input in the form #rrggbb, #rgb or schema(val1, val2, …) but are always stored as an array of ('s' => val1, 'c' => val2, 'h' => val3, …) and output in the second form. -* `CSSString` – this is just a wrapper for quoted strings to distinguish them from keywords; always output with double quotes. -* `URL` – URLs in CSS; always output in `URL("")` notation. - -There is another abstract subclass of `Value`, `ValueList`: A `ValueList` represents a lists of `Value`s, separated by some separation character (mostly `,`, whitespace, or `/`). - -There are two types of `ValueList`s: - -* `RuleValueList` – The default type, used to represent all multivalued rules like `font: bold 12px/3 Helvetica, Verdana, sans-serif;` (where the value would be a whitespace-separated list of the primitive value `bold`, a slash-separated list and a comma-separated list). -* `CSSFunction` – A special kind of value that also contains a function name and where the values are the function’s arguments. Also handles equals-sign-separated argument lists like `filter: alpha(opacity=90);`. - -#### Convenience methods - -There are a few convenience methods on `Document` to ease finding, manipulating and deleting rules: - -* `getAllDeclarationBlocks()` – does what it says; no matter how deeply nested the selectors are. Aliased as `getAllSelectors()`. -* `getAllRuleSets()` – does what it says; no matter how deeply nested the rule sets are. -* `getAllValues()` – finds all `Value` objects inside `Rule`s. - -## To-Do - -* More convenience methods (like `selectorsWithElement($sId/Class/TagName)`, `attributesOfType($type)`, `removeAttributesOfType($type)`) -* Real multibyte support. Currently, only multibyte charsets whose first 255 code points take up only one byte and are identical with ASCII are supported (yes, UTF-8 fits this description). -* Named color support (using `Color` instead of an anonymous string literal) - -## Use cases - -### Use `Parser` to prepend an ID to all selectors - -```php -$myId = "#my_id"; -$parser = new \Sabberworm\CSS\Parser($css); -$cssDocument = $parser->parse(); -foreach ($cssDocument->getAllDeclarationBlocks() as $block) { - foreach ($block->getSelectors() as $selector) { - // Loop over all selector parts (the comma-separated strings in a - // selector) and prepend the ID. - $selector->setSelector($myId.' '.$selector->getSelector()); - } -} -``` - -### Shrink all absolute sizes to half - -```php -$parser = new \Sabberworm\CSS\Parser($css); -$cssDocument = $parser->parse(); -foreach ($cssDocument->getAllValues() as $value) { - if ($value instanceof CSSSize && !$value->isRelative()) { - $value->setSize($value->getSize() / 2); - } -} -``` - -### Remove unwanted rules - -```php -$parser = new \Sabberworm\CSS\Parser($css); -$cssDocument = $parser->parse(); -foreach($cssDocument->getAllRuleSets() as $oRuleSet) { - // Note that the added dash will make this remove all rules starting with - // `font-` (like `font-size`, `font-weight`, etc.) as well as a potential - // `font` rule. - $oRuleSet->removeRule('font-'); - $oRuleSet->removeRule('cursor'); -} -``` - -### Output - -To output the entire CSS document into a variable, just use `->render()`: - -```php -$parser = new \Sabberworm\CSS\Parser(file_get_contents('somefile.css')); -$cssDocument = $parser->parse(); -print $cssDocument->render(); -``` - -If you want to format the output, pass an instance of type `\Sabberworm\CSS\OutputFormat`: - -```php -$format = \Sabberworm\CSS\OutputFormat::create() - ->indentWithSpaces(4)->setSpaceBetweenRules("\n"); -print $cssDocument->render($format); -``` - -Or use one of the predefined formats: - -```php -print $cssDocument->render(Sabberworm\CSS\OutputFormat::createPretty()); -print $cssDocument->render(Sabberworm\CSS\OutputFormat::createCompact()); -``` - -To see what you can do with output formatting, look at the tests in `tests/OutputFormatTest.php`. - -## Examples - -### Example 1 (At-Rules) - -#### Input - -```css -@charset "utf-8"; - -@font-face { - font-family: "CrassRoots"; - src: url("../media/cr.ttf"); -} - -html, body { - font-size: 1.6em; -} - -@keyframes mymove { - from { top: 0px; } - to { top: 200px; } -} - -``` - -
    - Structure (var_dump()) - -```php -class Sabberworm\CSS\CSSList\Document#4 (2) { - protected $aContents => - array(4) { - [0] => - class Sabberworm\CSS\Property\Charset#6 (2) { - private $sCharset => - class Sabberworm\CSS\Value\CSSString#5 (2) { - private $sString => - string(5) "utf-8" - protected $iLineNo => - int(1) - } - protected $iLineNo => - int(1) - } - [1] => - class Sabberworm\CSS\RuleSet\AtRuleSet#7 (4) { - private $sType => - string(9) "font-face" - private $sArgs => - string(0) "" - private $aRules => - array(2) { - 'font-family' => - array(1) { - [0] => - class Sabberworm\CSS\Rule\Rule#8 (4) { - private $sRule => - string(11) "font-family" - private $mValue => - class Sabberworm\CSS\Value\CSSString#9 (2) { - private $sString => - string(10) "CrassRoots" - protected $iLineNo => - int(4) - } - private $bIsImportant => - bool(false) - protected $iLineNo => - int(4) - } - } - 'src' => - array(1) { - [0] => - class Sabberworm\CSS\Rule\Rule#10 (4) { - private $sRule => - string(3) "src" - private $mValue => - class Sabberworm\CSS\Value\URL#11 (2) { - private $oURL => - class Sabberworm\CSS\Value\CSSString#12 (2) { - private $sString => - string(15) "../media/cr.ttf" - protected $iLineNo => - int(5) - } - protected $iLineNo => - int(5) - } - private $bIsImportant => - bool(false) - protected $iLineNo => - int(5) - } - } - } - protected $iLineNo => - int(3) - } - [2] => - class Sabberworm\CSS\RuleSet\DeclarationBlock#13 (3) { - private $aSelectors => - array(2) { - [0] => - class Sabberworm\CSS\Property\Selector#14 (2) { - private $sSelector => - string(4) "html" - private $iSpecificity => - NULL - } - [1] => - class Sabberworm\CSS\Property\Selector#15 (2) { - private $sSelector => - string(4) "body" - private $iSpecificity => - NULL - } - } - private $aRules => - array(1) { - 'font-size' => - array(1) { - [0] => - class Sabberworm\CSS\Rule\Rule#16 (4) { - private $sRule => - string(9) "font-size" - private $mValue => - class Sabberworm\CSS\Value\Size#17 (4) { - private $fSize => - double(1.6) - private $sUnit => - string(2) "em" - private $bIsColorComponent => - bool(false) - protected $iLineNo => - int(9) - } - private $bIsImportant => - bool(false) - protected $iLineNo => - int(9) - } - } - } - protected $iLineNo => - int(8) - } - [3] => - class Sabberworm\CSS\CSSList\KeyFrame#18 (4) { - private $vendorKeyFrame => - string(9) "keyframes" - private $animationName => - string(6) "mymove" - protected $aContents => - array(2) { - [0] => - class Sabberworm\CSS\RuleSet\DeclarationBlock#19 (3) { - private $aSelectors => - array(1) { - [0] => - class Sabberworm\CSS\Property\Selector#20 (2) { - private $sSelector => - string(4) "from" - private $iSpecificity => - NULL - } - } - private $aRules => - array(1) { - 'top' => - array(1) { - [0] => - class Sabberworm\CSS\Rule\Rule#21 (4) { - private $sRule => - string(3) "top" - private $mValue => - class Sabberworm\CSS\Value\Size#22 (4) { - private $fSize => - double(0) - private $sUnit => - string(2) "px" - private $bIsColorComponent => - bool(false) - protected $iLineNo => - int(13) - } - private $bIsImportant => - bool(false) - protected $iLineNo => - int(13) - } - } - } - protected $iLineNo => - int(13) - } - [1] => - class Sabberworm\CSS\RuleSet\DeclarationBlock#23 (3) { - private $aSelectors => - array(1) { - [0] => - class Sabberworm\CSS\Property\Selector#24 (2) { - private $sSelector => - string(2) "to" - private $iSpecificity => - NULL - } - } - private $aRules => - array(1) { - 'top' => - array(1) { - [0] => - class Sabberworm\CSS\Rule\Rule#25 (4) { - private $sRule => - string(3) "top" - private $mValue => - class Sabberworm\CSS\Value\Size#26 (4) { - private $fSize => - double(200) - private $sUnit => - string(2) "px" - private $bIsColorComponent => - bool(false) - protected $iLineNo => - int(14) - } - private $bIsImportant => - bool(false) - protected $iLineNo => - int(14) - } - } - } - protected $iLineNo => - int(14) - } - } - protected $iLineNo => - int(12) - } - } - protected $iLineNo => - int(1) -} - -``` -
    - -#### Output (`render()`) - -```css -@charset "utf-8"; -@font-face {font-family: "CrassRoots";src: url("../media/cr.ttf");} -html, body {font-size: 1.6em;} -@keyframes mymove {from {top: 0px;} to {top: 200px;}} -``` - -### Example 2 (Values) - -#### Input - -```css -#header { - margin: 10px 2em 1cm 2%; - font-family: Verdana, Helvetica, "Gill Sans", sans-serif; - color: red !important; -} - -``` - -
    - Structure (var_dump()) - -```php -class Sabberworm\CSS\CSSList\Document#4 (2) { - protected $aContents => - array(1) { - [0] => - class Sabberworm\CSS\RuleSet\DeclarationBlock#5 (3) { - private $aSelectors => - array(1) { - [0] => - class Sabberworm\CSS\Property\Selector#6 (2) { - private $sSelector => - string(7) "#header" - private $iSpecificity => - NULL - } - } - private $aRules => - array(3) { - 'margin' => - array(1) { - [0] => - class Sabberworm\CSS\Rule\Rule#7 (4) { - private $sRule => - string(6) "margin" - private $mValue => - class Sabberworm\CSS\Value\RuleValueList#12 (3) { - protected $aComponents => - array(4) { - [0] => - class Sabberworm\CSS\Value\Size#8 (4) { - private $fSize => - double(10) - private $sUnit => - string(2) "px" - private $bIsColorComponent => - bool(false) - protected $iLineNo => - int(2) - } - [1] => - class Sabberworm\CSS\Value\Size#9 (4) { - private $fSize => - double(2) - private $sUnit => - string(2) "em" - private $bIsColorComponent => - bool(false) - protected $iLineNo => - int(2) - } - [2] => - class Sabberworm\CSS\Value\Size#10 (4) { - private $fSize => - double(1) - private $sUnit => - string(2) "cm" - private $bIsColorComponent => - bool(false) - protected $iLineNo => - int(2) - } - [3] => - class Sabberworm\CSS\Value\Size#11 (4) { - private $fSize => - double(2) - private $sUnit => - string(1) "%" - private $bIsColorComponent => - bool(false) - protected $iLineNo => - int(2) - } - } - protected $sSeparator => - string(1) " " - protected $iLineNo => - int(2) - } - private $bIsImportant => - bool(false) - protected $iLineNo => - int(2) - } - } - 'font-family' => - array(1) { - [0] => - class Sabberworm\CSS\Rule\Rule#13 (4) { - private $sRule => - string(11) "font-family" - private $mValue => - class Sabberworm\CSS\Value\RuleValueList#15 (3) { - protected $aComponents => - array(4) { - [0] => - string(7) "Verdana" - [1] => - string(9) "Helvetica" - [2] => - class Sabberworm\CSS\Value\CSSString#14 (2) { - private $sString => - string(9) "Gill Sans" - protected $iLineNo => - int(3) - } - [3] => - string(10) "sans-serif" - } - protected $sSeparator => - string(1) "," - protected $iLineNo => - int(3) - } - private $bIsImportant => - bool(false) - protected $iLineNo => - int(3) - } - } - 'color' => - array(1) { - [0] => - class Sabberworm\CSS\Rule\Rule#16 (4) { - private $sRule => - string(5) "color" - private $mValue => - string(3) "red" - private $bIsImportant => - bool(true) - protected $iLineNo => - int(4) - } - } - } - protected $iLineNo => - int(1) - } - } - protected $iLineNo => - int(1) -} - -``` -
    - -#### Output (`render()`) - -```css -#header {margin: 10px 2em 1cm 2%;font-family: Verdana,Helvetica,"Gill Sans",sans-serif;color: red !important;} -``` - -## Contributors/Thanks to - -* [oliverklee](https://github.com/oliverklee) for lots of refactorings, code modernizations and CI integrations -* [raxbg](https://github.com/raxbg) for contributions to parse `calc`, grid lines, and various bugfixes. -* [westonruter](https://github.com/westonruter) for bugfixes and improvements. -* [FMCorz](https://github.com/FMCorz) for many patches and suggestions, for being able to parse comments and IE hacks (in lenient mode). -* [Lullabot](https://github.com/Lullabot) for a patch that allows to know the line number for each parsed token. -* [ju1ius](https://github.com/ju1ius) for the specificity parsing code and the ability to expand/compact shorthand properties. -* [ossinkine](https://github.com/ossinkine) for a 150 time performance boost. -* [GaryJones](https://github.com/GaryJones) for lots of input and [https://css-specificity.info/](https://css-specificity.info/). -* [docteurklein](https://github.com/docteurklein) for output formatting and `CSSList->remove()` inspiration. -* [nicolopignatelli](https://github.com/nicolopignatelli) for PSR-0 compatibility. -* [diegoembarcadero](https://github.com/diegoembarcadero) for keyframe at-rule parsing. -* [goetas](https://github.com/goetas) for @namespace at-rule support. -* [View full list](https://github.com/sabberworm/PHP-CSS-Parser/contributors) - -## Misc - -* Legacy Support: The latest pre-PSR-0 version of this project can be checked with the `0.9.0` tag. -* Running Tests: To run all unit tests for this project, run `composer install` to install phpunit and use `./vendor/bin/phpunit`. diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/composer.json b/docker/statistics/vendor/sabberworm/php-css-parser/composer.json deleted file mode 100644 index 685db65e..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/composer.json +++ /dev/null @@ -1,81 +0,0 @@ -{ - "name": "sabberworm/php-css-parser", - "type": "library", - "description": "Parser for CSS Files written in PHP", - "keywords": [ - "parser", - "css", - "stylesheet" - ], - "homepage": "https://www.sabberworm.com/blog/2010/6/10/php-css-parser", - "license": "MIT", - "authors": [ - { - "name": "Raphael Schweikert" - }, - { - "name": "Oliver Klee", - "email": "github@oliverklee.de" - }, - { - "name": "Jake Hotson", - "email": "jake.github@qzdesign.co.uk" - } - ], - "require": { - "php": "^5.6.20 || ^7.0.0 || ~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0", - "ext-iconv": "*" - }, - "require-dev": { - "phpunit/phpunit": "5.7.27 || 6.5.14 || 7.5.20 || 8.5.40" - }, - "suggest": { - "ext-mbstring": "for parsing UTF-8 CSS" - }, - "autoload": { - "psr-4": { - "Sabberworm\\CSS\\": "src/" - } - }, - "autoload-dev": { - "psr-4": { - "Sabberworm\\CSS\\Tests\\": "tests/" - } - }, - "extra": { - "branch-alias": { - "dev-main": "9.0.x-dev" - } - }, - "scripts": { - "ci": [ - "@ci:static" - ], - "ci:php:fixer": "@php ./.phive/php-cs-fixer.phar --config=config/php-cs-fixer.php fix --dry-run -v --show-progress=dots bin src tests", - "ci:php:sniffer": "@php ./.phive/phpcs.phar --standard=config/phpcs.xml bin src tests", - "ci:php:stan": "@php ./.phive/phpstan.phar --configuration=config/phpstan.neon", - "ci:static": [ - "@ci:php:fixer", - "@ci:php:sniffer", - "@ci:php:stan" - ], - "fix:php": [ - "@fix:php:fixer", - "@fix:php:sniffer" - ], - "fix:php:fixer": "@php ./.phive/php-cs-fixer.phar --config=config/php-cs-fixer.php fix bin src tests", - "fix:php:sniffer": "@php ./.phive/phpcbf.phar --standard=config/phpcs.xml bin src tests", - "phpstan:baseline": "@php ./.phive/phpstan.phar --configuration=config/phpstan.neon --generate-baseline=config/phpstan-baseline.neon" - }, - "scripts-descriptions": { - "ci": "Runs all dynamic and static code checks (i.e. currently, only the static checks).", - "ci:php:fixer": "Checks the code style with PHP CS Fixer.", - "ci:php:sniffer": "Checks the code style with PHP_CodeSniffer.", - "ci:php:stan": "Checks the types with PHPStan.", - "ci:static": "Runs all static code analysis checks for the code.", - "fix:php": "Autofixes all autofixable issues in the PHP code.", - "fix:php:fixer": "Fixes autofixable issues found by PHP CS Fixer.", - "fix:php:sniffer": "Fixes autofixable issues found by PHP_CodeSniffer.", - "phpstand:baseline": "Updates the PHPStan baseline file to match the code." - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/CSSList/AtRuleBlockList.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/CSSList/AtRuleBlockList.php deleted file mode 100644 index 5930b932..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/CSSList/AtRuleBlockList.php +++ /dev/null @@ -1,86 +0,0 @@ -sType = $sType; - $this->sArgs = $sArgs; - } - - /** - * @return string - */ - public function atRuleName() - { - return $this->sType; - } - - /** - * @return string - */ - public function atRuleArgs() - { - return $this->sArgs; - } - - /** - * @return string - */ - public function __toString() - { - return $this->render(new OutputFormat()); - } - - /** - * @param OutputFormat|null $oOutputFormat - * - * @return string - */ - public function render($oOutputFormat) - { - $sResult = $oOutputFormat->comments($this); - $sResult .= $oOutputFormat->sBeforeAtRuleBlock; - $sArgs = $this->sArgs; - if ($sArgs) { - $sArgs = ' ' . $sArgs; - } - $sResult .= "@{$this->sType}$sArgs{$oOutputFormat->spaceBeforeOpeningBrace()}{"; - $sResult .= $this->renderListContents($oOutputFormat); - $sResult .= '}'; - $sResult .= $oOutputFormat->sAfterAtRuleBlock; - return $sResult; - } - - /** - * @return bool - */ - public function isRootList() - { - return false; - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/CSSList/CSSBlockList.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/CSSList/CSSBlockList.php deleted file mode 100644 index fce7913e..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/CSSList/CSSBlockList.php +++ /dev/null @@ -1,143 +0,0 @@ - $aResult - * - * @return void - */ - protected function allDeclarationBlocks(array &$aResult) - { - foreach ($this->aContents as $mContent) { - if ($mContent instanceof DeclarationBlock) { - $aResult[] = $mContent; - } elseif ($mContent instanceof CSSBlockList) { - $mContent->allDeclarationBlocks($aResult); - } - } - } - - /** - * @param array $aResult - * - * @return void - */ - protected function allRuleSets(array &$aResult) - { - foreach ($this->aContents as $mContent) { - if ($mContent instanceof RuleSet) { - $aResult[] = $mContent; - } elseif ($mContent instanceof CSSBlockList) { - $mContent->allRuleSets($aResult); - } - } - } - - /** - * @param CSSList|Rule|RuleSet|Value $oElement - * @param array $aResult - * @param string|null $sSearchString - * @param bool $bSearchInFunctionArguments - * - * @return void - */ - protected function allValues($oElement, array &$aResult, $sSearchString = null, $bSearchInFunctionArguments = false) - { - if ($oElement instanceof CSSBlockList) { - foreach ($oElement->getContents() as $oContent) { - $this->allValues($oContent, $aResult, $sSearchString, $bSearchInFunctionArguments); - } - } elseif ($oElement instanceof RuleSet) { - foreach ($oElement->getRules($sSearchString) as $oRule) { - $this->allValues($oRule, $aResult, $sSearchString, $bSearchInFunctionArguments); - } - } elseif ($oElement instanceof Rule) { - $this->allValues($oElement->getValue(), $aResult, $sSearchString, $bSearchInFunctionArguments); - } elseif ($oElement instanceof ValueList) { - if ($bSearchInFunctionArguments || !($oElement instanceof CSSFunction)) { - foreach ($oElement->getListComponents() as $mComponent) { - $this->allValues($mComponent, $aResult, $sSearchString, $bSearchInFunctionArguments); - } - } - } else { - // Non-List `Value` or `CSSString` (CSS identifier) - $aResult[] = $oElement; - } - } - - /** - * @param array $aResult - * @param string|null $sSpecificitySearch - * - * @return void - */ - protected function allSelectors(array &$aResult, $sSpecificitySearch = null) - { - /** @var array $aDeclarationBlocks */ - $aDeclarationBlocks = []; - $this->allDeclarationBlocks($aDeclarationBlocks); - foreach ($aDeclarationBlocks as $oBlock) { - foreach ($oBlock->getSelectors() as $oSelector) { - if ($sSpecificitySearch === null) { - $aResult[] = $oSelector; - } else { - $sComparator = '==='; - $aSpecificitySearch = explode(' ', $sSpecificitySearch); - $iTargetSpecificity = $aSpecificitySearch[0]; - if (count($aSpecificitySearch) > 1) { - $sComparator = $aSpecificitySearch[0]; - $iTargetSpecificity = $aSpecificitySearch[1]; - } - $iTargetSpecificity = (int)$iTargetSpecificity; - $iSelectorSpecificity = $oSelector->getSpecificity(); - $bMatches = false; - switch ($sComparator) { - case '<=': - $bMatches = $iSelectorSpecificity <= $iTargetSpecificity; - break; - case '<': - $bMatches = $iSelectorSpecificity < $iTargetSpecificity; - break; - case '>=': - $bMatches = $iSelectorSpecificity >= $iTargetSpecificity; - break; - case '>': - $bMatches = $iSelectorSpecificity > $iTargetSpecificity; - break; - default: - $bMatches = $iSelectorSpecificity === $iTargetSpecificity; - break; - } - if ($bMatches) { - $aResult[] = $oSelector; - } - } - } - } - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/CSSList/CSSList.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/CSSList/CSSList.php deleted file mode 100644 index 4bb37589..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/CSSList/CSSList.php +++ /dev/null @@ -1,496 +0,0 @@ - - */ - protected $aComments; - - /** - * @var array - */ - protected $aContents; - - /** - * @var int - */ - protected $iLineNo; - - /** - * @param int $iLineNo - */ - public function __construct($iLineNo = 0) - { - $this->aComments = []; - $this->aContents = []; - $this->iLineNo = $iLineNo; - } - - /** - * @return void - * - * @throws UnexpectedTokenException - * @throws SourceException - */ - public static function parseList(ParserState $oParserState, CSSList $oList) - { - $bIsRoot = $oList instanceof Document; - if (is_string($oParserState)) { - $oParserState = new ParserState($oParserState, Settings::create()); - } - $bLenientParsing = $oParserState->getSettings()->bLenientParsing; - $aComments = []; - while (!$oParserState->isEnd()) { - $aComments = array_merge($aComments, $oParserState->consumeWhiteSpace()); - $oListItem = null; - if ($bLenientParsing) { - try { - $oListItem = self::parseListItem($oParserState, $oList); - } catch (UnexpectedTokenException $e) { - $oListItem = false; - } - } else { - $oListItem = self::parseListItem($oParserState, $oList); - } - if ($oListItem === null) { - // List parsing finished - return; - } - if ($oListItem) { - $oListItem->addComments($aComments); - $oList->append($oListItem); - } - $aComments = $oParserState->consumeWhiteSpace(); - } - $oList->addComments($aComments); - if (!$bIsRoot && !$bLenientParsing) { - throw new SourceException("Unexpected end of document", $oParserState->currentLine()); - } - } - - /** - * @return AtRuleBlockList|KeyFrame|Charset|CSSNamespace|Import|AtRuleSet|DeclarationBlock|null|false - * - * @throws SourceException - * @throws UnexpectedEOFException - * @throws UnexpectedTokenException - */ - private static function parseListItem(ParserState $oParserState, CSSList $oList) - { - $bIsRoot = $oList instanceof Document; - if ($oParserState->comes('@')) { - $oAtRule = self::parseAtRule($oParserState); - if ($oAtRule instanceof Charset) { - if (!$bIsRoot) { - throw new UnexpectedTokenException( - '@charset may only occur in root document', - '', - 'custom', - $oParserState->currentLine() - ); - } - if (count($oList->getContents()) > 0) { - throw new UnexpectedTokenException( - '@charset must be the first parseable token in a document', - '', - 'custom', - $oParserState->currentLine() - ); - } - $oParserState->setCharset($oAtRule->getCharset()); - } - return $oAtRule; - } elseif ($oParserState->comes('}')) { - if ($bIsRoot) { - if ($oParserState->getSettings()->bLenientParsing) { - return DeclarationBlock::parse($oParserState); - } else { - throw new SourceException("Unopened {", $oParserState->currentLine()); - } - } else { - // End of list - return null; - } - } else { - return DeclarationBlock::parse($oParserState, $oList); - } - } - - /** - * @param ParserState $oParserState - * - * @return AtRuleBlockList|KeyFrame|Charset|CSSNamespace|Import|AtRuleSet|null - * - * @throws SourceException - * @throws UnexpectedTokenException - * @throws UnexpectedEOFException - */ - private static function parseAtRule(ParserState $oParserState) - { - $oParserState->consume('@'); - $sIdentifier = $oParserState->parseIdentifier(); - $iIdentifierLineNum = $oParserState->currentLine(); - $oParserState->consumeWhiteSpace(); - if ($sIdentifier === 'import') { - $oLocation = URL::parse($oParserState); - $oParserState->consumeWhiteSpace(); - $sMediaQuery = null; - if (!$oParserState->comes(';')) { - $sMediaQuery = trim($oParserState->consumeUntil([';', ParserState::EOF])); - } - $oParserState->consumeUntil([';', ParserState::EOF], true, true); - return new Import($oLocation, $sMediaQuery ?: null, $iIdentifierLineNum); - } elseif ($sIdentifier === 'charset') { - $oCharsetString = CSSString::parse($oParserState); - $oParserState->consumeWhiteSpace(); - $oParserState->consumeUntil([';', ParserState::EOF], true, true); - return new Charset($oCharsetString, $iIdentifierLineNum); - } elseif (self::identifierIs($sIdentifier, 'keyframes')) { - $oResult = new KeyFrame($iIdentifierLineNum); - $oResult->setVendorKeyFrame($sIdentifier); - $oResult->setAnimationName(trim($oParserState->consumeUntil('{', false, true))); - CSSList::parseList($oParserState, $oResult); - if ($oParserState->comes('}')) { - $oParserState->consume('}'); - } - return $oResult; - } elseif ($sIdentifier === 'namespace') { - $sPrefix = null; - $mUrl = Value::parsePrimitiveValue($oParserState); - if (!$oParserState->comes(';')) { - $sPrefix = $mUrl; - $mUrl = Value::parsePrimitiveValue($oParserState); - } - $oParserState->consumeUntil([';', ParserState::EOF], true, true); - if ($sPrefix !== null && !is_string($sPrefix)) { - throw new UnexpectedTokenException('Wrong namespace prefix', $sPrefix, 'custom', $iIdentifierLineNum); - } - if (!($mUrl instanceof CSSString || $mUrl instanceof URL)) { - throw new UnexpectedTokenException( - 'Wrong namespace url of invalid type', - $mUrl, - 'custom', - $iIdentifierLineNum - ); - } - return new CSSNamespace($mUrl, $sPrefix, $iIdentifierLineNum); - } else { - // Unknown other at rule (font-face or such) - $sArgs = trim($oParserState->consumeUntil('{', false, true)); - if (substr_count($sArgs, "(") != substr_count($sArgs, ")")) { - if ($oParserState->getSettings()->bLenientParsing) { - return null; - } else { - throw new SourceException("Unmatched brace count in media query", $oParserState->currentLine()); - } - } - $bUseRuleSet = true; - foreach (explode('/', AtRule::BLOCK_RULES) as $sBlockRuleName) { - if (self::identifierIs($sIdentifier, $sBlockRuleName)) { - $bUseRuleSet = false; - break; - } - } - if ($bUseRuleSet) { - $oAtRule = new AtRuleSet($sIdentifier, $sArgs, $iIdentifierLineNum); - RuleSet::parseRuleSet($oParserState, $oAtRule); - } else { - $oAtRule = new AtRuleBlockList($sIdentifier, $sArgs, $iIdentifierLineNum); - CSSList::parseList($oParserState, $oAtRule); - if ($oParserState->comes('}')) { - $oParserState->consume('}'); - } - } - return $oAtRule; - } - } - - /** - * Tests an identifier for a given value. Since identifiers are all keywords, they can be vendor-prefixed. - * We need to check for these versions too. - * - * @param string $sIdentifier - * @param string $sMatch - * - * @return bool - */ - private static function identifierIs($sIdentifier, $sMatch) - { - return (strcasecmp($sIdentifier, $sMatch) === 0) - ?: preg_match("/^(-\\w+-)?$sMatch$/i", $sIdentifier) === 1; - } - - /** - * @return int - */ - public function getLineNo() - { - return $this->iLineNo; - } - - /** - * Prepends an item to the list of contents. - * - * @param RuleSet|CSSList|Import|Charset $oItem - * - * @return void - */ - public function prepend($oItem) - { - array_unshift($this->aContents, $oItem); - } - - /** - * Appends an item to the list of contents. - * - * @param RuleSet|CSSList|Import|Charset $oItem - * - * @return void - */ - public function append($oItem) - { - $this->aContents[] = $oItem; - } - - /** - * Splices the list of contents. - * - * @param int $iOffset - * @param int $iLength - * @param array $mReplacement - * - * @return void - */ - public function splice($iOffset, $iLength = null, $mReplacement = null) - { - array_splice($this->aContents, $iOffset, $iLength, $mReplacement); - } - - /** - * Inserts an item in the CSS list before its sibling. If the desired sibling cannot be found, - * the item is appended at the end. - * - * @param RuleSet|CSSList|Import|Charset $item - * @param RuleSet|CSSList|Import|Charset $sibling - */ - public function insertBefore($item, $sibling) - { - if (in_array($sibling, $this->aContents, true)) { - $this->replace($sibling, [$item, $sibling]); - } else { - $this->append($item); - } - } - - /** - * Removes an item from the CSS list. - * - * @param RuleSet|Import|Charset|CSSList $oItemToRemove - * May be a RuleSet (most likely a DeclarationBlock), a Import, - * a Charset or another CSSList (most likely a MediaQuery) - * - * @return bool whether the item was removed - */ - public function remove($oItemToRemove) - { - $iKey = array_search($oItemToRemove, $this->aContents, true); - if ($iKey !== false) { - unset($this->aContents[$iKey]); - return true; - } - return false; - } - - /** - * Replaces an item from the CSS list. - * - * @param RuleSet|Import|Charset|CSSList $oOldItem - * May be a `RuleSet` (most likely a `DeclarationBlock`), an `Import`, a `Charset` - * or another `CSSList` (most likely a `MediaQuery`) - * - * @return bool - */ - public function replace($oOldItem, $mNewItem) - { - $iKey = array_search($oOldItem, $this->aContents, true); - if ($iKey !== false) { - if (is_array($mNewItem)) { - array_splice($this->aContents, $iKey, 1, $mNewItem); - } else { - array_splice($this->aContents, $iKey, 1, [$mNewItem]); - } - return true; - } - return false; - } - - /** - * @param array $aContents - */ - public function setContents(array $aContents) - { - $this->aContents = []; - foreach ($aContents as $content) { - $this->append($content); - } - } - - /** - * Removes a declaration block from the CSS list if it matches all given selectors. - * - * @param DeclarationBlock|array|string $mSelector the selectors to match - * @param bool $bRemoveAll whether to stop at the first declaration block found or remove all blocks - * - * @return void - */ - public function removeDeclarationBlockBySelector($mSelector, $bRemoveAll = false) - { - if ($mSelector instanceof DeclarationBlock) { - $mSelector = $mSelector->getSelectors(); - } - if (!is_array($mSelector)) { - $mSelector = explode(',', $mSelector); - } - foreach ($mSelector as $iKey => &$mSel) { - if (!($mSel instanceof Selector)) { - if (!Selector::isValid($mSel)) { - throw new UnexpectedTokenException( - "Selector did not match '" . Selector::SELECTOR_VALIDATION_RX . "'.", - $mSel, - "custom" - ); - } - $mSel = new Selector($mSel); - } - } - foreach ($this->aContents as $iKey => $mItem) { - if (!($mItem instanceof DeclarationBlock)) { - continue; - } - if ($mItem->getSelectors() == $mSelector) { - unset($this->aContents[$iKey]); - if (!$bRemoveAll) { - return; - } - } - } - } - - /** - * @return string - */ - public function __toString() - { - return $this->render(new OutputFormat()); - } - - /** - * @return string - */ - protected function renderListContents(OutputFormat $oOutputFormat) - { - $sResult = ''; - $bIsFirst = true; - $oNextLevel = $oOutputFormat; - if (!$this->isRootList()) { - $oNextLevel = $oOutputFormat->nextLevel(); - } - foreach ($this->aContents as $oContent) { - $sRendered = $oOutputFormat->safely(function () use ($oNextLevel, $oContent) { - return $oContent->render($oNextLevel); - }); - if ($sRendered === null) { - continue; - } - if ($bIsFirst) { - $bIsFirst = false; - $sResult .= $oNextLevel->spaceBeforeBlocks(); - } else { - $sResult .= $oNextLevel->spaceBetweenBlocks(); - } - $sResult .= $sRendered; - } - - if (!$bIsFirst) { - // Had some output - $sResult .= $oOutputFormat->spaceAfterBlocks(); - } - - return $sResult; - } - - /** - * Return true if the list can not be further outdented. Only important when rendering. - * - * @return bool - */ - abstract public function isRootList(); - - /** - * Returns the stored items. - * - * @return array - */ - public function getContents() - { - return $this->aContents; - } - - /** - * @param array $aComments - * - * @return void - */ - public function addComments(array $aComments) - { - $this->aComments = array_merge($this->aComments, $aComments); - } - - /** - * @return array - */ - public function getComments() - { - return $this->aComments; - } - - /** - * @param array $aComments - * - * @return void - */ - public function setComments(array $aComments) - { - $this->aComments = $aComments; - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/CSSList/Document.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/CSSList/Document.php deleted file mode 100644 index 7d9c6ec0..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/CSSList/Document.php +++ /dev/null @@ -1,177 +0,0 @@ -currentLine()); - CSSList::parseList($oParserState, $oDocument); - return $oDocument; - } - - /** - * Gets all `DeclarationBlock` objects recursively, no matter how deeply nested the selectors are. - * Aliased as `getAllSelectors()`. - * - * @return array - */ - public function getAllDeclarationBlocks() - { - /** @var array $aResult */ - $aResult = []; - $this->allDeclarationBlocks($aResult); - return $aResult; - } - - /** - * Gets all `DeclarationBlock` objects recursively. - * - * @return array - * - * @deprecated will be removed in version 9.0; use `getAllDeclarationBlocks()` instead - */ - public function getAllSelectors() - { - return $this->getAllDeclarationBlocks(); - } - - /** - * Returns all `RuleSet` objects recursively found in the tree, no matter how deeply nested the rule sets are. - * - * @return array - */ - public function getAllRuleSets() - { - /** @var array $aResult */ - $aResult = []; - $this->allRuleSets($aResult); - return $aResult; - } - - /** - * Returns all `Value` objects found recursively in `Rule`s in the tree. - * - * @param CSSList|RuleSet|string $mElement - * the `CSSList` or `RuleSet` to start the search from (defaults to the whole document). - * If a string is given, it is used as rule name filter. - * @param bool $bSearchInFunctionArguments whether to also return Value objects used as Function arguments. - * - * @return array - * - * @see RuleSet->getRules() - */ - public function getAllValues($mElement = null, $bSearchInFunctionArguments = false) - { - $sSearchString = null; - if ($mElement === null) { - $mElement = $this; - } elseif (is_string($mElement)) { - $sSearchString = $mElement; - $mElement = $this; - } - /** @var array $aResult */ - $aResult = []; - $this->allValues($mElement, $aResult, $sSearchString, $bSearchInFunctionArguments); - return $aResult; - } - - /** - * Returns all `Selector` objects with the requested specificity found recursively in the tree. - * - * Note that this does not yield the full `DeclarationBlock` that the selector belongs to - * (and, currently, there is no way to get to that). - * - * @param string|null $sSpecificitySearch - * An optional filter by specificity. - * May contain a comparison operator and a number or just a number (defaults to "=="). - * - * @return array - * @example `getSelectorsBySpecificity('>= 100')` - * - */ - public function getSelectorsBySpecificity($sSpecificitySearch = null) - { - /** @var array $aResult */ - $aResult = []; - $this->allSelectors($aResult, $sSpecificitySearch); - return $aResult; - } - - /** - * Expands all shorthand properties to their long value. - * - * @return void - * - * @deprecated since 8.7.0, will be removed without substitution in version 9.0 in #511 - */ - public function expandShorthands() - { - foreach ($this->getAllDeclarationBlocks() as $oDeclaration) { - $oDeclaration->expandShorthands(); - } - } - - /** - * Create shorthands properties whenever possible. - * - * @return void - * - * @deprecated since 8.7.0, will be removed without substitution in version 9.0 in #511 - */ - public function createShorthands() - { - foreach ($this->getAllDeclarationBlocks() as $oDeclaration) { - $oDeclaration->createShorthands(); - } - } - - /** - * Overrides `render()` to make format argument optional. - * - * @param OutputFormat|null $oOutputFormat - * - * @return string - */ - public function render($oOutputFormat = null) - { - if ($oOutputFormat === null) { - $oOutputFormat = new OutputFormat(); - } - return $oOutputFormat->comments($this) . $this->renderListContents($oOutputFormat); - } - - /** - * @return bool - */ - public function isRootList() - { - return true; - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/CSSList/KeyFrame.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/CSSList/KeyFrame.php deleted file mode 100644 index 69e2e4d9..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/CSSList/KeyFrame.php +++ /dev/null @@ -1,107 +0,0 @@ -vendorKeyFrame = null; - $this->animationName = null; - } - - /** - * @param string $vendorKeyFrame - */ - public function setVendorKeyFrame($vendorKeyFrame) - { - $this->vendorKeyFrame = $vendorKeyFrame; - } - - /** - * @return string|null - */ - public function getVendorKeyFrame() - { - return $this->vendorKeyFrame; - } - - /** - * @param string $animationName - */ - public function setAnimationName($animationName) - { - $this->animationName = $animationName; - } - - /** - * @return string|null - */ - public function getAnimationName() - { - return $this->animationName; - } - - /** - * @return string - */ - public function __toString() - { - return $this->render(new OutputFormat()); - } - - /** - * @param OutputFormat|null $oOutputFormat - * - * @return string - */ - public function render($oOutputFormat) - { - $sResult = $oOutputFormat->comments($this); - $sResult .= "@{$this->vendorKeyFrame} {$this->animationName}{$oOutputFormat->spaceBeforeOpeningBrace()}{"; - $sResult .= $this->renderListContents($oOutputFormat); - $sResult .= '}'; - return $sResult; - } - - /** - * @return bool - */ - public function isRootList() - { - return false; - } - - /** - * @return string|null - */ - public function atRuleName() - { - return $this->vendorKeyFrame; - } - - /** - * @return string|null - */ - public function atRuleArgs() - { - return $this->animationName; - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/Comment/Comment.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/Comment/Comment.php deleted file mode 100644 index e6ffaaf7..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/Comment/Comment.php +++ /dev/null @@ -1,73 +0,0 @@ -sComment = $sComment; - $this->iLineNo = $iLineNo; - } - - /** - * @return string - */ - public function getComment() - { - return $this->sComment; - } - - /** - * @return int - */ - public function getLineNo() - { - return $this->iLineNo; - } - - /** - * @param string $sComment - * - * @return void - */ - public function setComment($sComment) - { - $this->sComment = $sComment; - } - - /** - * @return string - */ - public function __toString() - { - return $this->render(new OutputFormat()); - } - - /** - * @param OutputFormat|null $oOutputFormat - * - * @return string - */ - public function render($oOutputFormat) - { - return '/*' . $this->sComment . '*/'; - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/Comment/Commentable.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/Comment/Commentable.php deleted file mode 100644 index 5e450bfb..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/Comment/Commentable.php +++ /dev/null @@ -1,25 +0,0 @@ - $aComments - * - * @return void - */ - public function addComments(array $aComments); - - /** - * @return array - */ - public function getComments(); - - /** - * @param array $aComments - * - * @return void - */ - public function setComments(array $aComments); -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/OutputFormat.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/OutputFormat.php deleted file mode 100644 index 96f26e14..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/OutputFormat.php +++ /dev/null @@ -1,348 +0,0 @@ -set('Space*Rules', "\n");`) - */ - public $sSpaceAfterRuleName = ' '; - - /** - * @var string - */ - public $sSpaceBeforeRules = ''; - - /** - * @var string - */ - public $sSpaceAfterRules = ''; - - /** - * @var string - */ - public $sSpaceBetweenRules = ''; - - /** - * @var string - */ - public $sSpaceBeforeBlocks = ''; - - /** - * @var string - */ - public $sSpaceAfterBlocks = ''; - - /** - * @var string - */ - public $sSpaceBetweenBlocks = "\n"; - - /** - * Content injected in and around at-rule blocks. - * - * @var string - */ - public $sBeforeAtRuleBlock = ''; - - /** - * @var string - */ - public $sAfterAtRuleBlock = ''; - - /** - * This is what’s printed before and after the comma if a declaration block contains multiple selectors. - * - * @var string - */ - public $sSpaceBeforeSelectorSeparator = ''; - - /** - * @var string - */ - public $sSpaceAfterSelectorSeparator = ' '; - - /** - * This is what’s printed after the comma of value lists - * - * @var string - */ - public $sSpaceBeforeListArgumentSeparator = ''; - - /** - * @var string - */ - public $sSpaceAfterListArgumentSeparator = ''; - - /** - * @var string - */ - public $sSpaceBeforeOpeningBrace = ' '; - - /** - * Content injected in and around declaration blocks. - * - * @var string - */ - public $sBeforeDeclarationBlock = ''; - - /** - * @var string - */ - public $sAfterDeclarationBlockSelectors = ''; - - /** - * @var string - */ - public $sAfterDeclarationBlock = ''; - - /** - * Indentation character(s) per level. Only applicable if newlines are used in any of the spacing settings. - * - * @var string - */ - public $sIndentation = "\t"; - - /** - * Output exceptions. - * - * @var bool - */ - public $bIgnoreExceptions = false; - - /** - * Render comments for lists and RuleSets - * - * @var bool - */ - public $bRenderComments = false; - - /** - * @var OutputFormatter|null - */ - private $oFormatter = null; - - /** - * @var OutputFormat|null - */ - private $oNextLevelFormat = null; - - /** - * @var int - */ - private $iIndentationLevel = 0; - - public function __construct() - { - } - - /** - * @param string $sName - * - * @return string|null - */ - public function get($sName) - { - $aVarPrefixes = ['a', 's', 'm', 'b', 'f', 'o', 'c', 'i']; - foreach ($aVarPrefixes as $sPrefix) { - $sFieldName = $sPrefix . ucfirst($sName); - if (isset($this->$sFieldName)) { - return $this->$sFieldName; - } - } - return null; - } - - /** - * @param array|string $aNames - * @param mixed $mValue - * - * @return self|false - */ - public function set($aNames, $mValue) - { - $aVarPrefixes = ['a', 's', 'm', 'b', 'f', 'o', 'c', 'i']; - if (is_string($aNames) && strpos($aNames, '*') !== false) { - $aNames = - [ - str_replace('*', 'Before', $aNames), - str_replace('*', 'Between', $aNames), - str_replace('*', 'After', $aNames), - ]; - } elseif (!is_array($aNames)) { - $aNames = [$aNames]; - } - foreach ($aVarPrefixes as $sPrefix) { - $bDidReplace = false; - foreach ($aNames as $sName) { - $sFieldName = $sPrefix . ucfirst($sName); - if (isset($this->$sFieldName)) { - $this->$sFieldName = $mValue; - $bDidReplace = true; - } - } - if ($bDidReplace) { - return $this; - } - } - // Break the chain so the user knows this option is invalid - return false; - } - - /** - * @param string $sMethodName - * @param array $aArguments - * - * @return mixed - * - * @throws \Exception - */ - public function __call($sMethodName, array $aArguments) - { - if (strpos($sMethodName, 'set') === 0) { - return $this->set(substr($sMethodName, 3), $aArguments[0]); - } elseif (strpos($sMethodName, 'get') === 0) { - return $this->get(substr($sMethodName, 3)); - } elseif (method_exists(OutputFormatter::class, $sMethodName)) { - return call_user_func_array([$this->getFormatter(), $sMethodName], $aArguments); - } else { - throw new \Exception('Unknown OutputFormat method called: ' . $sMethodName); - } - } - - /** - * @param int $iNumber - * - * @return self - */ - public function indentWithTabs($iNumber = 1) - { - return $this->setIndentation(str_repeat("\t", $iNumber)); - } - - /** - * @param int $iNumber - * - * @return self - */ - public function indentWithSpaces($iNumber = 2) - { - return $this->setIndentation(str_repeat(" ", $iNumber)); - } - - /** - * @return OutputFormat - */ - public function nextLevel() - { - if ($this->oNextLevelFormat === null) { - $this->oNextLevelFormat = clone $this; - $this->oNextLevelFormat->iIndentationLevel++; - $this->oNextLevelFormat->oFormatter = null; - } - return $this->oNextLevelFormat; - } - - /** - * @return void - */ - public function beLenient() - { - $this->bIgnoreExceptions = true; - } - - /** - * @return OutputFormatter - */ - public function getFormatter() - { - if ($this->oFormatter === null) { - $this->oFormatter = new OutputFormatter($this); - } - return $this->oFormatter; - } - - /** - * @return int - */ - public function level() - { - return $this->iIndentationLevel; - } - - /** - * Creates an instance of this class without any particular formatting settings. - * - * @return self - */ - public static function create() - { - return new OutputFormat(); - } - - /** - * Creates an instance of this class with a preset for compact formatting. - * - * @return self - */ - public static function createCompact() - { - $format = self::create(); - $format->set('Space*Rules', "") - ->set('Space*Blocks', "") - ->setSpaceAfterRuleName('') - ->setSpaceBeforeOpeningBrace('') - ->setSpaceAfterSelectorSeparator('') - ->setRenderComments(false); - return $format; - } - - /** - * Creates an instance of this class with a preset for pretty formatting. - * - * @return self - */ - public static function createPretty() - { - $format = self::create(); - $format->set('Space*Rules', "\n") - ->set('Space*Blocks', "\n") - ->setSpaceBetweenBlocks("\n\n") - ->set('SpaceAfterListArgumentSeparator', ['default' => '', ',' => ' ']) - ->setRenderComments(true); - return $format; - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/OutputFormatter.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/OutputFormatter.php deleted file mode 100644 index 501d15da..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/OutputFormatter.php +++ /dev/null @@ -1,255 +0,0 @@ -oFormat = $oFormat; - } - - /** - * @param string $sName - * @param string|null $sType - * - * @return string - */ - public function space($sName, $sType = null) - { - $sSpaceString = $this->oFormat->get("Space$sName"); - // If $sSpaceString is an array, we have multiple values configured - // depending on the type of object the space applies to - if (is_array($sSpaceString)) { - if ($sType !== null && isset($sSpaceString[$sType])) { - $sSpaceString = $sSpaceString[$sType]; - } else { - $sSpaceString = reset($sSpaceString); - } - } - return $this->prepareSpace($sSpaceString); - } - - /** - * @return string - */ - public function spaceAfterRuleName() - { - return $this->space('AfterRuleName'); - } - - /** - * @return string - */ - public function spaceBeforeRules() - { - return $this->space('BeforeRules'); - } - - /** - * @return string - */ - public function spaceAfterRules() - { - return $this->space('AfterRules'); - } - - /** - * @return string - */ - public function spaceBetweenRules() - { - return $this->space('BetweenRules'); - } - - /** - * @return string - */ - public function spaceBeforeBlocks() - { - return $this->space('BeforeBlocks'); - } - - /** - * @return string - */ - public function spaceAfterBlocks() - { - return $this->space('AfterBlocks'); - } - - /** - * @return string - */ - public function spaceBetweenBlocks() - { - return $this->space('BetweenBlocks'); - } - - /** - * @return string - */ - public function spaceBeforeSelectorSeparator() - { - return $this->space('BeforeSelectorSeparator'); - } - - /** - * @return string - */ - public function spaceAfterSelectorSeparator() - { - return $this->space('AfterSelectorSeparator'); - } - - /** - * @param string $sSeparator - * - * @return string - */ - public function spaceBeforeListArgumentSeparator($sSeparator) - { - return $this->space('BeforeListArgumentSeparator', $sSeparator); - } - - /** - * @param string $sSeparator - * - * @return string - */ - public function spaceAfterListArgumentSeparator($sSeparator) - { - return $this->space('AfterListArgumentSeparator', $sSeparator); - } - - /** - * @return string - */ - public function spaceBeforeOpeningBrace() - { - return $this->space('BeforeOpeningBrace'); - } - - /** - * Runs the given code, either swallowing or passing exceptions, depending on the `bIgnoreExceptions` setting. - * - * @param string $cCode the name of the function to call - * - * @return string|null - */ - public function safely($cCode) - { - if ($this->oFormat->get('IgnoreExceptions')) { - // If output exceptions are ignored, run the code with exception guards - try { - return $cCode(); - } catch (OutputException $e) { - return null; - } // Do nothing - } else { - // Run the code as-is - return $cCode(); - } - } - - /** - * Clone of the `implode` function, but calls `render` with the current output format instead of `__toString()`. - * - * @param string $sSeparator - * @param array $aValues - * @param bool $bIncreaseLevel - * - * @return string - */ - public function implode($sSeparator, array $aValues, $bIncreaseLevel = false) - { - $sResult = ''; - $oFormat = $this->oFormat; - if ($bIncreaseLevel) { - $oFormat = $oFormat->nextLevel(); - } - $bIsFirst = true; - foreach ($aValues as $mValue) { - if ($bIsFirst) { - $bIsFirst = false; - } else { - $sResult .= $sSeparator; - } - if ($mValue instanceof Renderable) { - $sResult .= $mValue->render($oFormat); - } else { - $sResult .= $mValue; - } - } - return $sResult; - } - - /** - * @param string $sString - * - * @return string - */ - public function removeLastSemicolon($sString) - { - if ($this->oFormat->get('SemicolonAfterLastRule')) { - return $sString; - } - $sString = explode(';', $sString); - if (count($sString) < 2) { - return $sString[0]; - } - $sLast = array_pop($sString); - $sNextToLast = array_pop($sString); - array_push($sString, $sNextToLast . $sLast); - return implode(';', $sString); - } - - /** - * - * @param array $aComments - * - * @return string - */ - public function comments(Commentable $oCommentable) - { - if (!$this->oFormat->bRenderComments) { - return ''; - } - - $sResult = ''; - $aComments = $oCommentable->getComments(); - $iLastCommentIndex = count($aComments) - 1; - - foreach ($aComments as $i => $oComment) { - $sResult .= $oComment->render($this->oFormat); - $sResult .= $i === $iLastCommentIndex ? $this->spaceAfterBlocks() : $this->spaceBetweenBlocks(); - } - return $sResult; - } - - /** - * @param string $sSpaceString - * - * @return string - */ - private function prepareSpace($sSpaceString) - { - return str_replace("\n", "\n" . $this->indent(), $sSpaceString); - } - - /** - * @return string - */ - private function indent() - { - return str_repeat($this->oFormat->sIndentation, $this->oFormat->level()); - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/Parser.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/Parser.php deleted file mode 100644 index f60fc086..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/Parser.php +++ /dev/null @@ -1,70 +0,0 @@ -oParserState = new ParserState($sText, $oParserSettings, $iLineNo); - } - - /** - * Sets the charset to be used if the CSS does not contain an `@charset` declaration. - * - * @param string $sCharset - * - * @return void - * - * @deprecated since 8.7.0, will be removed in version 9.0.0 with #687 - */ - public function setCharset($sCharset) - { - $this->oParserState->setCharset($sCharset); - } - - /** - * Returns the charset that is used if the CSS does not contain an `@charset` declaration. - * - * @return void - * - * @deprecated since 8.7.0, will be removed in version 9.0.0 with #687 - */ - public function getCharset() - { - // Note: The `return` statement is missing here. This is a bug that needs to be fixed. - $this->oParserState->getCharset(); - } - - /** - * Parses the CSS provided to the constructor and creates a `Document` from it. - * - * @return Document - * - * @throws SourceException - */ - public function parse() - { - return Document::parse($this->oParserState); - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/Parsing/Anchor.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/Parsing/Anchor.php deleted file mode 100644 index a42893da..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/Parsing/Anchor.php +++ /dev/null @@ -1,37 +0,0 @@ -iPosition = $iPosition; - $this->oParserState = $oParserState; - } - - /** - * @return void - */ - public function backtrack() - { - $this->oParserState->setPosition($this->iPosition); - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/Parsing/OutputException.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/Parsing/OutputException.php deleted file mode 100644 index 9bfbc75f..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/Parsing/OutputException.php +++ /dev/null @@ -1,18 +0,0 @@ - - */ - private $aText; - - /** - * @var int - */ - private $iCurrentPosition; - - /** - * will only be used if the CSS does not contain an `@charset` declaration - * - * @var string - */ - private $sCharset; - - /** - * @var int - */ - private $iLength; - - /** - * @var int - */ - private $iLineNo; - - /** - * @param string $sText the complete CSS as text (i.e., usually the contents of a CSS file) - * @param int $iLineNo - */ - public function __construct($sText, Settings $oParserSettings, $iLineNo = 1) - { - $this->oParserSettings = $oParserSettings; - $this->sText = $sText; - $this->iCurrentPosition = 0; - $this->iLineNo = $iLineNo; - $this->setCharset($this->oParserSettings->sDefaultCharset); - } - - /** - * Sets the charset to be used if the CSS does not contain an `@charset` declaration. - * - * @param string $sCharset - * - * @return void - */ - public function setCharset($sCharset) - { - $this->sCharset = $sCharset; - $this->aText = $this->strsplit($this->sText); - if (is_array($this->aText)) { - $this->iLength = count($this->aText); - } - } - - /** - * Returns the charset that is used if the CSS does not contain an `@charset` declaration. - * - * @return string - */ - public function getCharset() - { - return $this->sCharset; - } - - /** - * @return int - */ - public function currentLine() - { - return $this->iLineNo; - } - - /** - * @return int - */ - public function currentColumn() - { - return $this->iCurrentPosition; - } - - /** - * @return Settings - */ - public function getSettings() - { - return $this->oParserSettings; - } - - /** - * @return \Sabberworm\CSS\Parsing\Anchor - */ - public function anchor() - { - return new Anchor($this->iCurrentPosition, $this); - } - - /** - * @param int $iPosition - * - * @return void - */ - public function setPosition($iPosition) - { - $this->iCurrentPosition = $iPosition; - } - - /** - * @param bool $bIgnoreCase - * - * @return string - * - * @throws UnexpectedTokenException - */ - public function parseIdentifier($bIgnoreCase = true) - { - if ($this->isEnd()) { - throw new UnexpectedEOFException('', '', 'identifier', $this->iLineNo); - } - $sResult = $this->parseCharacter(true); - if ($sResult === null) { - throw new UnexpectedTokenException($sResult, $this->peek(5), 'identifier', $this->iLineNo); - } - $sCharacter = null; - while (!$this->isEnd() && ($sCharacter = $this->parseCharacter(true)) !== null) { - if (preg_match('/[a-zA-Z0-9\x{00A0}-\x{FFFF}_-]/Sux', $sCharacter)) { - $sResult .= $sCharacter; - } else { - $sResult .= '\\' . $sCharacter; - } - } - if ($bIgnoreCase) { - $sResult = $this->strtolower($sResult); - } - return $sResult; - } - - /** - * @param bool $bIsForIdentifier - * - * @return string|null - * - * @throws UnexpectedEOFException - * @throws UnexpectedTokenException - */ - public function parseCharacter($bIsForIdentifier) - { - if ($this->peek() === '\\') { - if ( - $bIsForIdentifier && $this->oParserSettings->bLenientParsing - && ($this->comes('\0') || $this->comes('\9')) - ) { - // Non-strings can contain \0 or \9 which is an IE hack supported in lenient parsing. - return null; - } - $this->consume('\\'); - if ($this->comes('\n') || $this->comes('\r')) { - return ''; - } - if (preg_match('/[0-9a-fA-F]/Su', $this->peek()) === 0) { - return $this->consume(1); - } - $sUnicode = $this->consumeExpression('/^[0-9a-fA-F]{1,6}/u', 6); - if ($this->strlen($sUnicode) < 6) { - // Consume whitespace after incomplete unicode escape - if (preg_match('/\\s/isSu', $this->peek())) { - if ($this->comes('\r\n')) { - $this->consume(2); - } else { - $this->consume(1); - } - } - } - $iUnicode = intval($sUnicode, 16); - $sUtf32 = ""; - for ($i = 0; $i < 4; ++$i) { - $sUtf32 .= chr($iUnicode & 0xff); - $iUnicode = $iUnicode >> 8; - } - return iconv('utf-32le', $this->sCharset, $sUtf32); - } - if ($bIsForIdentifier) { - $peek = ord($this->peek()); - // Ranges: a-z A-Z 0-9 - _ - if ( - ($peek >= 97 && $peek <= 122) - || ($peek >= 65 && $peek <= 90) - || ($peek >= 48 && $peek <= 57) - || ($peek === 45) - || ($peek === 95) - || ($peek > 0xa1) - ) { - return $this->consume(1); - } - } else { - return $this->consume(1); - } - return null; - } - - /** - * @return array|void - * - * @throws UnexpectedEOFException - * @throws UnexpectedTokenException - */ - public function consumeWhiteSpace() - { - $aComments = []; - do { - while (preg_match('/\\s/isSu', $this->peek()) === 1) { - $this->consume(1); - } - if ($this->oParserSettings->bLenientParsing) { - try { - $oComment = $this->consumeComment(); - } catch (UnexpectedEOFException $e) { - $this->iCurrentPosition = $this->iLength; - return $aComments; - } - } else { - $oComment = $this->consumeComment(); - } - if ($oComment !== false) { - $aComments[] = $oComment; - } - } while ($oComment !== false); - return $aComments; - } - - /** - * @param string $sString - * @param bool $bCaseInsensitive - * - * @return bool - */ - public function comes($sString, $bCaseInsensitive = false) - { - $sPeek = $this->peek(strlen($sString)); - return ($sPeek == '') - ? false - : $this->streql($sPeek, $sString, $bCaseInsensitive); - } - - /** - * @param int $iLength - * @param int $iOffset - * - * @return string - */ - public function peek($iLength = 1, $iOffset = 0) - { - $iOffset += $this->iCurrentPosition; - if ($iOffset >= $this->iLength) { - return ''; - } - return $this->substr($iOffset, $iLength); - } - - /** - * @param int $mValue - * - * @return string - * - * @throws UnexpectedEOFException - * @throws UnexpectedTokenException - */ - public function consume($mValue = 1) - { - if (is_string($mValue)) { - $iLineCount = substr_count($mValue, "\n"); - $iLength = $this->strlen($mValue); - if (!$this->streql($this->substr($this->iCurrentPosition, $iLength), $mValue)) { - throw new UnexpectedTokenException($mValue, $this->peek(max($iLength, 5)), $this->iLineNo); - } - $this->iLineNo += $iLineCount; - $this->iCurrentPosition += $this->strlen($mValue); - return $mValue; - } else { - if ($this->iCurrentPosition + $mValue > $this->iLength) { - throw new UnexpectedEOFException($mValue, $this->peek(5), 'count', $this->iLineNo); - } - $sResult = $this->substr($this->iCurrentPosition, $mValue); - $iLineCount = substr_count($sResult, "\n"); - $this->iLineNo += $iLineCount; - $this->iCurrentPosition += $mValue; - return $sResult; - } - } - - /** - * @param string $mExpression - * @param int|null $iMaxLength - * - * @return string - * - * @throws UnexpectedEOFException - * @throws UnexpectedTokenException - */ - public function consumeExpression($mExpression, $iMaxLength = null) - { - $aMatches = null; - $sInput = $iMaxLength !== null ? $this->peek($iMaxLength) : $this->inputLeft(); - if (preg_match($mExpression, $sInput, $aMatches, PREG_OFFSET_CAPTURE) === 1) { - return $this->consume($aMatches[0][0]); - } - throw new UnexpectedTokenException($mExpression, $this->peek(5), 'expression', $this->iLineNo); - } - - /** - * @return Comment|false - */ - public function consumeComment() - { - $mComment = false; - if ($this->comes('/*')) { - $iLineNo = $this->iLineNo; - $this->consume(1); - $mComment = ''; - while (($char = $this->consume(1)) !== '') { - $mComment .= $char; - if ($this->comes('*/')) { - $this->consume(2); - break; - } - } - } - - if ($mComment !== false) { - // We skip the * which was included in the comment. - return new Comment(substr($mComment, 1), $iLineNo); - } - - return $mComment; - } - - /** - * @return bool - */ - public function isEnd() - { - return $this->iCurrentPosition >= $this->iLength; - } - - /** - * @param array|string $aEnd - * @param string $bIncludeEnd - * @param string $consumeEnd - * @param array $comments - * - * @return string - * - * @throws UnexpectedEOFException - * @throws UnexpectedTokenException - */ - public function consumeUntil($aEnd, $bIncludeEnd = false, $consumeEnd = false, array &$comments = []) - { - $aEnd = is_array($aEnd) ? $aEnd : [$aEnd]; - $out = ''; - $start = $this->iCurrentPosition; - - while (!$this->isEnd()) { - $char = $this->consume(1); - if (in_array($char, $aEnd)) { - if ($bIncludeEnd) { - $out .= $char; - } elseif (!$consumeEnd) { - $this->iCurrentPosition -= $this->strlen($char); - } - return $out; - } - $out .= $char; - if ($comment = $this->consumeComment()) { - $comments[] = $comment; - } - } - - if (in_array(self::EOF, $aEnd)) { - return $out; - } - - $this->iCurrentPosition = $start; - throw new UnexpectedEOFException( - 'One of ("' . implode('","', $aEnd) . '")', - $this->peek(5), - 'search', - $this->iLineNo - ); - } - - /** - * @return string - */ - private function inputLeft() - { - return $this->substr($this->iCurrentPosition, -1); - } - - /** - * @param string $sString1 - * @param string $sString2 - * @param bool $bCaseInsensitive - * - * @return bool - */ - public function streql($sString1, $sString2, $bCaseInsensitive = true) - { - if ($bCaseInsensitive) { - return $this->strtolower($sString1) === $this->strtolower($sString2); - } else { - return $sString1 === $sString2; - } - } - - /** - * @param int $iAmount - * - * @return void - */ - public function backtrack($iAmount) - { - $this->iCurrentPosition -= $iAmount; - } - - /** - * @param string $sString - * - * @return int - */ - public function strlen($sString) - { - if ($this->oParserSettings->bMultibyteSupport) { - return mb_strlen($sString, $this->sCharset); - } else { - return strlen($sString); - } - } - - /** - * @param int $iStart - * @param int $iLength - * - * @return string - */ - private function substr($iStart, $iLength) - { - if ($iLength < 0) { - $iLength = $this->iLength - $iStart + $iLength; - } - if ($iStart + $iLength > $this->iLength) { - $iLength = $this->iLength - $iStart; - } - $sResult = ''; - while ($iLength > 0) { - $sResult .= $this->aText[$iStart]; - $iStart++; - $iLength--; - } - return $sResult; - } - - /** - * @param string $sString - * - * @return string - */ - private function strtolower($sString) - { - if ($this->oParserSettings->bMultibyteSupport) { - return mb_strtolower($sString, $this->sCharset); - } else { - return strtolower($sString); - } - } - - /** - * @param string $sString - * - * @return array - */ - private function strsplit($sString) - { - if ($this->oParserSettings->bMultibyteSupport) { - if ($this->streql($this->sCharset, 'utf-8')) { - return preg_split('//u', $sString, -1, PREG_SPLIT_NO_EMPTY); - } else { - $iLength = mb_strlen($sString, $this->sCharset); - $aResult = []; - for ($i = 0; $i < $iLength; ++$i) { - $aResult[] = mb_substr($sString, $i, 1, $this->sCharset); - } - return $aResult; - } - } else { - if ($sString === '') { - return []; - } else { - return str_split($sString); - } - } - } - - /** - * @param string $sString - * @param string $sNeedle - * @param int $iOffset - * - * @return int|false - */ - private function strpos($sString, $sNeedle, $iOffset) - { - if ($this->oParserSettings->bMultibyteSupport) { - return mb_strpos($sString, $sNeedle, $iOffset, $this->sCharset); - } else { - return strpos($sString, $sNeedle, $iOffset); - } - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/Parsing/SourceException.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/Parsing/SourceException.php deleted file mode 100644 index 1ca668a9..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/Parsing/SourceException.php +++ /dev/null @@ -1,32 +0,0 @@ -iLineNo = $iLineNo; - if (!empty($iLineNo)) { - $sMessage .= " [line no: $iLineNo]"; - } - parent::__construct($sMessage); - } - - /** - * @return int - */ - public function getLineNo() - { - return $this->iLineNo; - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/Parsing/UnexpectedEOFException.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/Parsing/UnexpectedEOFException.php deleted file mode 100644 index 368ec70c..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/Parsing/UnexpectedEOFException.php +++ /dev/null @@ -1,12 +0,0 @@ -sExpected = $sExpected; - $this->sFound = $sFound; - $this->sMatchType = $sMatchType; - $sMessage = "Token “{$sExpected}” ({$sMatchType}) not found. Got “{$sFound}”."; - if ($this->sMatchType === 'search') { - $sMessage = "Search for “{$sExpected}” returned no results. Context: “{$sFound}”."; - } elseif ($this->sMatchType === 'count') { - $sMessage = "Next token was expected to have {$sExpected} chars. Context: “{$sFound}”."; - } elseif ($this->sMatchType === 'identifier') { - $sMessage = "Identifier expected. Got “{$sFound}”"; - } elseif ($this->sMatchType === 'custom') { - $sMessage = trim("$sExpected $sFound"); - } - - parent::__construct($sMessage, $iLineNo); - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/Property/AtRule.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/Property/AtRule.php deleted file mode 100644 index d946a904..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/Property/AtRule.php +++ /dev/null @@ -1,38 +0,0 @@ - - */ - protected $aComments; - - /** - * @param string $mUrl - * @param string|null $sPrefix - * @param int $iLineNo - */ - public function __construct($mUrl, $sPrefix = null, $iLineNo = 0) - { - $this->mUrl = $mUrl; - $this->sPrefix = $sPrefix; - $this->iLineNo = $iLineNo; - $this->aComments = []; - } - - /** - * @return int - */ - public function getLineNo() - { - return $this->iLineNo; - } - - /** - * @return string - */ - public function __toString() - { - return $this->render(new OutputFormat()); - } - - /** - * @param OutputFormat|null $oOutputFormat - * - * @return string - */ - public function render($oOutputFormat) - { - return '@namespace ' . ($this->sPrefix === null ? '' : $this->sPrefix . ' ') - . $this->mUrl->render($oOutputFormat) . ';'; - } - - /** - * @return string - */ - public function getUrl() - { - return $this->mUrl; - } - - /** - * @return string|null - */ - public function getPrefix() - { - return $this->sPrefix; - } - - /** - * @param string $mUrl - * - * @return void - */ - public function setUrl($mUrl) - { - $this->mUrl = $mUrl; - } - - /** - * @param string $sPrefix - * - * @return void - */ - public function setPrefix($sPrefix) - { - $this->sPrefix = $sPrefix; - } - - /** - * @return string - */ - public function atRuleName() - { - return 'namespace'; - } - - /** - * @return array - */ - public function atRuleArgs() - { - $aResult = [$this->mUrl]; - if ($this->sPrefix) { - array_unshift($aResult, $this->sPrefix); - } - return $aResult; - } - - /** - * @param array $aComments - * - * @return void - */ - public function addComments(array $aComments) - { - $this->aComments = array_merge($this->aComments, $aComments); - } - - /** - * @return array - */ - public function getComments() - { - return $this->aComments; - } - - /** - * @param array $aComments - * - * @return void - */ - public function setComments(array $aComments) - { - $this->aComments = $aComments; - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/Property/Charset.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/Property/Charset.php deleted file mode 100644 index 870380e3..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/Property/Charset.php +++ /dev/null @@ -1,133 +0,0 @@ - - */ - protected $aComments; - - /** - * @param CSSString $oCharset - * @param int $iLineNo - */ - public function __construct(CSSString $oCharset, $iLineNo = 0) - { - $this->oCharset = $oCharset; - $this->iLineNo = $iLineNo; - $this->aComments = []; - } - - /** - * @return int - */ - public function getLineNo() - { - return $this->iLineNo; - } - - /** - * @param string|CSSString $oCharset - * - * @return void - */ - public function setCharset($sCharset) - { - $sCharset = $sCharset instanceof CSSString ? $sCharset : new CSSString($sCharset); - $this->oCharset = $sCharset; - } - - /** - * @return string - */ - public function getCharset() - { - return $this->oCharset->getString(); - } - - /** - * @return string - */ - public function __toString() - { - return $this->render(new OutputFormat()); - } - - /** - * @param OutputFormat|null $oOutputFormat - * - * @return string - */ - public function render($oOutputFormat) - { - return "{$oOutputFormat->comments($this)}@charset {$this->oCharset->render($oOutputFormat)};"; - } - - /** - * @return string - */ - public function atRuleName() - { - return 'charset'; - } - - /** - * @return string - */ - public function atRuleArgs() - { - return $this->oCharset; - } - - /** - * @param array $aComments - * - * @return void - */ - public function addComments(array $aComments) - { - $this->aComments = array_merge($this->aComments, $aComments); - } - - /** - * @return array - */ - public function getComments() - { - return $this->aComments; - } - - /** - * @param array $aComments - * - * @return void - */ - public function setComments(array $aComments) - { - $this->aComments = $aComments; - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/Property/Import.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/Property/Import.php deleted file mode 100644 index 2a7cad54..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/Property/Import.php +++ /dev/null @@ -1,147 +0,0 @@ - - */ - protected $aComments; - - /** - * @param URL $oLocation - * @param string $sMediaQuery - * @param int $iLineNo - */ - public function __construct(URL $oLocation, $sMediaQuery, $iLineNo = 0) - { - $this->oLocation = $oLocation; - $this->sMediaQuery = $sMediaQuery; - $this->iLineNo = $iLineNo; - $this->aComments = []; - } - - /** - * @return int - */ - public function getLineNo() - { - return $this->iLineNo; - } - - /** - * @param URL $oLocation - * - * @return void - */ - public function setLocation($oLocation) - { - $this->oLocation = $oLocation; - } - - /** - * @return URL - */ - public function getLocation() - { - return $this->oLocation; - } - - /** - * @return string - */ - public function __toString() - { - return $this->render(new OutputFormat()); - } - - /** - * @param OutputFormat|null $oOutputFormat - * - * @return string - */ - public function render($oOutputFormat) - { - return $oOutputFormat->comments($this) . "@import " . $this->oLocation->render($oOutputFormat) - . ($this->sMediaQuery === null ? '' : ' ' . $this->sMediaQuery) . ';'; - } - - /** - * @return string - */ - public function atRuleName() - { - return 'import'; - } - - /** - * @return array - */ - public function atRuleArgs() - { - $aResult = [$this->oLocation]; - if ($this->sMediaQuery) { - array_push($aResult, $this->sMediaQuery); - } - return $aResult; - } - - /** - * @param array $aComments - * - * @return void - */ - public function addComments(array $aComments) - { - $this->aComments = array_merge($this->aComments, $aComments); - } - - /** - * @return array - */ - public function getComments() - { - return $this->aComments; - } - - /** - * @param array $aComments - * - * @return void - */ - public function setComments(array $aComments) - { - $this->aComments = $aComments; - } - - /** - * @return string - */ - public function getMediaQuery() - { - return $this->sMediaQuery; - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/Property/KeyframeSelector.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/Property/KeyframeSelector.php deleted file mode 100644 index 2aff8d24..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/Property/KeyframeSelector.php +++ /dev/null @@ -1,25 +0,0 @@ -]* # any sequence of valid unescaped characters - (?:\\\\.)? # a single escaped character - (?:([\'"]).*?(?\~]+)[\w]+ # elements - | - \:{1,2}( # pseudo-elements - after|before|first-letter|first-line|selection - )) - /ix'; - - /** - * regexp for specificity calculations - * - * @var string - * - * @internal since 8.5.2 - */ - const SELECTOR_VALIDATION_RX = '/ - ^( - (?: - [a-zA-Z0-9\x{00A0}-\x{FFFF}_^$|*="\'~\[\]()\-\s\.:#+>]* # any sequence of valid unescaped characters - (?:\\\\.)? # a single escaped character - (?:([\'"]).*?(?setSelector($sSelector); - if ($bCalculateSpecificity) { - $this->getSpecificity(); - } - } - - /** - * @return string - */ - public function getSelector() - { - return $this->sSelector; - } - - /** - * @param string $sSelector - * - * @return void - */ - public function setSelector($sSelector) - { - $this->sSelector = trim($sSelector); - $this->iSpecificity = null; - } - - /** - * @return string - */ - public function __toString() - { - return $this->getSelector(); - } - - /** - * @return int - */ - public function getSpecificity() - { - if ($this->iSpecificity === null) { - $a = 0; - /// @todo should exclude \# as well as "#" - $aMatches = null; - $b = substr_count($this->sSelector, '#'); - $c = preg_match_all(self::NON_ID_ATTRIBUTES_AND_PSEUDO_CLASSES_RX, $this->sSelector, $aMatches); - $d = preg_match_all(self::ELEMENTS_AND_PSEUDO_ELEMENTS_RX, $this->sSelector, $aMatches); - $this->iSpecificity = ($a * 1000) + ($b * 100) + ($c * 10) + $d; - } - return $this->iSpecificity; - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/Renderable.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/Renderable.php deleted file mode 100644 index d7c6aba6..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/Renderable.php +++ /dev/null @@ -1,23 +0,0 @@ - - */ - private $aIeHack; - - /** - * @var int - */ - protected $iLineNo; - - /** - * @var int - */ - protected $iColNo; - - /** - * @var array - */ - protected $aComments; - - /** - * @param string $sRule - * @param int $iLineNo - * @param int $iColNo - */ - public function __construct($sRule, $iLineNo = 0, $iColNo = 0) - { - $this->sRule = $sRule; - $this->mValue = null; - $this->bIsImportant = false; - $this->aIeHack = []; - $this->iLineNo = $iLineNo; - $this->iColNo = $iColNo; - $this->aComments = []; - } - - /** - * @return Rule - * - * @throws UnexpectedEOFException - * @throws UnexpectedTokenException - */ - public static function parse(ParserState $oParserState) - { - $aComments = $oParserState->consumeWhiteSpace(); - $oRule = new Rule( - $oParserState->parseIdentifier(!$oParserState->comes("--")), - $oParserState->currentLine(), - $oParserState->currentColumn() - ); - $oRule->setComments($aComments); - $oRule->addComments($oParserState->consumeWhiteSpace()); - $oParserState->consume(':'); - $oValue = Value::parseValue($oParserState, self::listDelimiterForRule($oRule->getRule())); - $oRule->setValue($oValue); - if ($oParserState->getSettings()->bLenientParsing) { - while ($oParserState->comes('\\')) { - $oParserState->consume('\\'); - $oRule->addIeHack($oParserState->consume()); - $oParserState->consumeWhiteSpace(); - } - } - $oParserState->consumeWhiteSpace(); - if ($oParserState->comes('!')) { - $oParserState->consume('!'); - $oParserState->consumeWhiteSpace(); - $oParserState->consume('important'); - $oRule->setIsImportant(true); - } - $oParserState->consumeWhiteSpace(); - while ($oParserState->comes(';')) { - $oParserState->consume(';'); - } - - $oParserState->consumeWhiteSpace(); - - return $oRule; - } - - /** - * @param string $sRule - * - * @return array - */ - private static function listDelimiterForRule($sRule) - { - if (preg_match('/^font($|-)/', $sRule)) { - return [',', '/', ' ']; - } - return [',', ' ', '/']; - } - - /** - * @return int - */ - public function getLineNo() - { - return $this->iLineNo; - } - - /** - * @return int - */ - public function getColNo() - { - return $this->iColNo; - } - - /** - * @param int $iLine - * @param int $iColumn - * - * @return void - */ - public function setPosition($iLine, $iColumn) - { - $this->iColNo = $iColumn; - $this->iLineNo = $iLine; - } - - /** - * @param string $sRule - * - * @return void - */ - public function setRule($sRule) - { - $this->sRule = $sRule; - } - - /** - * @return string - */ - public function getRule() - { - return $this->sRule; - } - - /** - * @return RuleValueList|string|null - */ - public function getValue() - { - return $this->mValue; - } - - /** - * @param RuleValueList|string|null $mValue - * - * @return void - */ - public function setValue($mValue) - { - $this->mValue = $mValue; - } - - /** - * @param array> $aSpaceSeparatedValues - * - * @return RuleValueList - * - * @deprecated will be removed in version 9.0 - * Old-Style 2-dimensional array given. Retained for (some) backwards-compatibility. - * Use `setValue()` instead and wrap the value inside a RuleValueList if necessary. - */ - public function setValues(array $aSpaceSeparatedValues) - { - $oSpaceSeparatedList = null; - if (count($aSpaceSeparatedValues) > 1) { - $oSpaceSeparatedList = new RuleValueList(' ', $this->iLineNo); - } - foreach ($aSpaceSeparatedValues as $aCommaSeparatedValues) { - $oCommaSeparatedList = null; - if (count($aCommaSeparatedValues) > 1) { - $oCommaSeparatedList = new RuleValueList(',', $this->iLineNo); - } - foreach ($aCommaSeparatedValues as $mValue) { - if (!$oSpaceSeparatedList && !$oCommaSeparatedList) { - $this->mValue = $mValue; - return $mValue; - } - if ($oCommaSeparatedList) { - $oCommaSeparatedList->addListComponent($mValue); - } else { - $oSpaceSeparatedList->addListComponent($mValue); - } - } - if (!$oSpaceSeparatedList) { - $this->mValue = $oCommaSeparatedList; - return $oCommaSeparatedList; - } else { - $oSpaceSeparatedList->addListComponent($oCommaSeparatedList); - } - } - $this->mValue = $oSpaceSeparatedList; - return $oSpaceSeparatedList; - } - - /** - * @return array> - * - * @deprecated will be removed in version 9.0 - * Old-Style 2-dimensional array returned. Retained for (some) backwards-compatibility. - * Use `getValue()` instead and check for the existence of a (nested set of) ValueList object(s). - */ - public function getValues() - { - if (!$this->mValue instanceof RuleValueList) { - return [[$this->mValue]]; - } - if ($this->mValue->getListSeparator() === ',') { - return [$this->mValue->getListComponents()]; - } - $aResult = []; - foreach ($this->mValue->getListComponents() as $mValue) { - if (!$mValue instanceof RuleValueList || $mValue->getListSeparator() !== ',') { - $aResult[] = [$mValue]; - continue; - } - if ($this->mValue->getListSeparator() === ' ' || count($aResult) === 0) { - $aResult[] = []; - } - foreach ($mValue->getListComponents() as $mValue) { - $aResult[count($aResult) - 1][] = $mValue; - } - } - return $aResult; - } - - /** - * Adds a value to the existing value. Value will be appended if a `RuleValueList` exists of the given type. - * Otherwise, the existing value will be wrapped by one. - * - * @param RuleValueList|array $mValue - * @param string $sType - * - * @return void - */ - public function addValue($mValue, $sType = ' ') - { - if (!is_array($mValue)) { - $mValue = [$mValue]; - } - if (!$this->mValue instanceof RuleValueList || $this->mValue->getListSeparator() !== $sType) { - $mCurrentValue = $this->mValue; - $this->mValue = new RuleValueList($sType, $this->iLineNo); - if ($mCurrentValue) { - $this->mValue->addListComponent($mCurrentValue); - } - } - foreach ($mValue as $mValueItem) { - $this->mValue->addListComponent($mValueItem); - } - } - - /** - * @param int $iModifier - * - * @return void - */ - public function addIeHack($iModifier) - { - $this->aIeHack[] = $iModifier; - } - - /** - * @param array $aModifiers - * - * @return void - */ - public function setIeHack(array $aModifiers) - { - $this->aIeHack = $aModifiers; - } - - /** - * @return array - */ - public function getIeHack() - { - return $this->aIeHack; - } - - /** - * @param bool $bIsImportant - * - * @return void - */ - public function setIsImportant($bIsImportant) - { - $this->bIsImportant = $bIsImportant; - } - - /** - * @return bool - */ - public function getIsImportant() - { - return $this->bIsImportant; - } - - /** - * @return string - */ - public function __toString() - { - return $this->render(new OutputFormat()); - } - - /** - * @param OutputFormat|null $oOutputFormat - * - * @return string - */ - public function render($oOutputFormat) - { - $sResult = "{$oOutputFormat->comments($this)}{$this->sRule}:{$oOutputFormat->spaceAfterRuleName()}"; - if ($this->mValue instanceof Value) { // Can also be a ValueList - $sResult .= $this->mValue->render($oOutputFormat); - } else { - $sResult .= $this->mValue; - } - if (!empty($this->aIeHack)) { - $sResult .= ' \\' . implode('\\', $this->aIeHack); - } - if ($this->bIsImportant) { - $sResult .= ' !important'; - } - $sResult .= ';'; - return $sResult; - } - - /** - * @param array $aComments - * - * @return void - */ - public function addComments(array $aComments) - { - $this->aComments = array_merge($this->aComments, $aComments); - } - - /** - * @return array - */ - public function getComments() - { - return $this->aComments; - } - - /** - * @param array $aComments - * - * @return void - */ - public function setComments(array $aComments) - { - $this->aComments = $aComments; - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/RuleSet/AtRuleSet.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/RuleSet/AtRuleSet.php deleted file mode 100644 index 93fd07af..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/RuleSet/AtRuleSet.php +++ /dev/null @@ -1,79 +0,0 @@ -sType = $sType; - $this->sArgs = $sArgs; - } - - /** - * @return string - */ - public function atRuleName() - { - return $this->sType; - } - - /** - * @return string - */ - public function atRuleArgs() - { - return $this->sArgs; - } - - /** - * @return string - */ - public function __toString() - { - return $this->render(new OutputFormat()); - } - - /** - * @param OutputFormat|null $oOutputFormat - * - * @return string - */ - public function render($oOutputFormat) - { - $sResult = $oOutputFormat->comments($this); - $sArgs = $this->sArgs; - if ($sArgs) { - $sArgs = ' ' . $sArgs; - } - $sResult .= "@{$this->sType}$sArgs{$oOutputFormat->spaceBeforeOpeningBrace()}{"; - $sResult .= $this->renderRules($oOutputFormat); - $sResult .= '}'; - return $sResult; - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/RuleSet/DeclarationBlock.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/RuleSet/DeclarationBlock.php deleted file mode 100644 index 8a1da14e..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/RuleSet/DeclarationBlock.php +++ /dev/null @@ -1,864 +0,0 @@ - - */ - private $aSelectors; - - /** - * @param int $iLineNo - */ - public function __construct($iLineNo = 0) - { - parent::__construct($iLineNo); - $this->aSelectors = []; - } - - /** - * @param CSSList|null $oList - * - * @return DeclarationBlock|false - * - * @throws UnexpectedTokenException - * @throws UnexpectedEOFException - */ - public static function parse(ParserState $oParserState, $oList = null) - { - $aComments = []; - $oResult = new DeclarationBlock($oParserState->currentLine()); - try { - $aSelectorParts = []; - $sStringWrapperChar = false; - do { - $aSelectorParts[] = $oParserState->consume(1) - . $oParserState->consumeUntil(['{', '}', '\'', '"'], false, false, $aComments); - if (in_array($oParserState->peek(), ['\'', '"']) && substr(end($aSelectorParts), -1) != "\\") { - if ($sStringWrapperChar === false) { - $sStringWrapperChar = $oParserState->peek(); - } elseif ($sStringWrapperChar == $oParserState->peek()) { - $sStringWrapperChar = false; - } - } - } while (!in_array($oParserState->peek(), ['{', '}']) || $sStringWrapperChar !== false); - $oResult->setSelectors(implode('', $aSelectorParts), $oList); - if ($oParserState->comes('{')) { - $oParserState->consume(1); - } - } catch (UnexpectedTokenException $e) { - if ($oParserState->getSettings()->bLenientParsing) { - if (!$oParserState->comes('}')) { - $oParserState->consumeUntil('}', false, true); - } - return false; - } else { - throw $e; - } - } - $oResult->setComments($aComments); - RuleSet::parseRuleSet($oParserState, $oResult); - return $oResult; - } - - /** - * @param array|string $mSelector - * @param CSSList|null $oList - * - * @throws UnexpectedTokenException - */ - public function setSelectors($mSelector, $oList = null) - { - if (is_array($mSelector)) { - $this->aSelectors = $mSelector; - } else { - $this->aSelectors = explode(',', $mSelector); - } - foreach ($this->aSelectors as $iKey => $mSelector) { - if (!($mSelector instanceof Selector)) { - if ($oList === null || !($oList instanceof KeyFrame)) { - if (!Selector::isValid($mSelector)) { - throw new UnexpectedTokenException( - "Selector did not match '" . Selector::SELECTOR_VALIDATION_RX . "'.", - $mSelector, - "custom" - ); - } - $this->aSelectors[$iKey] = new Selector($mSelector); - } else { - if (!KeyframeSelector::isValid($mSelector)) { - throw new UnexpectedTokenException( - "Selector did not match '" . KeyframeSelector::SELECTOR_VALIDATION_RX . "'.", - $mSelector, - "custom" - ); - } - $this->aSelectors[$iKey] = new KeyframeSelector($mSelector); - } - } - } - } - - /** - * Remove one of the selectors of the block. - * - * @param Selector|string $mSelector - * - * @return bool - */ - public function removeSelector($mSelector) - { - if ($mSelector instanceof Selector) { - $mSelector = $mSelector->getSelector(); - } - foreach ($this->aSelectors as $iKey => $oSelector) { - if ($oSelector->getSelector() === $mSelector) { - unset($this->aSelectors[$iKey]); - return true; - } - } - return false; - } - - /** - * @return array - * - * @deprecated will be removed in version 9.0; use `getSelectors()` instead - */ - public function getSelector() - { - return $this->getSelectors(); - } - - /** - * @param Selector|string $mSelector - * @param CSSList|null $oList - * - * @return void - * - * @deprecated will be removed in version 9.0; use `setSelectors()` instead - */ - public function setSelector($mSelector, $oList = null) - { - $this->setSelectors($mSelector, $oList); - } - - /** - * @return array - */ - public function getSelectors() - { - return $this->aSelectors; - } - - /** - * Splits shorthand declarations (e.g. `margin` or `font`) into their constituent parts. - * - * @return void - * - * @deprecated since 8.7.0, will be removed without substitution in version 9.0 in #511 - */ - public function expandShorthands() - { - // border must be expanded before dimensions - $this->expandBorderShorthand(); - $this->expandDimensionsShorthand(); - $this->expandFontShorthand(); - $this->expandBackgroundShorthand(); - $this->expandListStyleShorthand(); - } - - /** - * Creates shorthand declarations (e.g. `margin` or `font`) whenever possible. - * - * @return void - * - * @deprecated since 8.7.0, will be removed without substitution in version 9.0 in #511 - */ - public function createShorthands() - { - $this->createBackgroundShorthand(); - $this->createDimensionsShorthand(); - // border must be shortened after dimensions - $this->createBorderShorthand(); - $this->createFontShorthand(); - $this->createListStyleShorthand(); - } - - /** - * Splits shorthand border declarations (e.g. `border: 1px red;`). - * - * Additional splitting happens in expandDimensionsShorthand. - * - * Multiple borders are not yet supported as of 3. - * - * @return void - * - * @deprecated since 8.7.0, will be removed without substitution in version 9.0 in #511 - */ - public function expandBorderShorthand() - { - $aBorderRules = [ - 'border', - 'border-left', - 'border-right', - 'border-top', - 'border-bottom', - ]; - $aBorderSizes = [ - 'thin', - 'medium', - 'thick', - ]; - $aRules = $this->getRulesAssoc(); - foreach ($aBorderRules as $sBorderRule) { - if (!isset($aRules[$sBorderRule])) { - continue; - } - $oRule = $aRules[$sBorderRule]; - $mRuleValue = $oRule->getValue(); - $aValues = []; - if (!$mRuleValue instanceof RuleValueList) { - $aValues[] = $mRuleValue; - } else { - $aValues = $mRuleValue->getListComponents(); - } - foreach ($aValues as $mValue) { - if ($mValue instanceof Value) { - $mNewValue = clone $mValue; - } else { - $mNewValue = $mValue; - } - if ($mValue instanceof Size) { - $sNewRuleName = $sBorderRule . "-width"; - } elseif ($mValue instanceof Color) { - $sNewRuleName = $sBorderRule . "-color"; - } else { - if (in_array($mValue, $aBorderSizes)) { - $sNewRuleName = $sBorderRule . "-width"; - } else { - $sNewRuleName = $sBorderRule . "-style"; - } - } - $oNewRule = new Rule($sNewRuleName, $oRule->getLineNo(), $oRule->getColNo()); - $oNewRule->setIsImportant($oRule->getIsImportant()); - $oNewRule->addValue([$mNewValue]); - $this->addRule($oNewRule); - } - $this->removeRule($sBorderRule); - } - } - - /** - * Splits shorthand dimensional declarations (e.g. `margin: 0px auto;`) - * into their constituent parts. - * - * Handles `margin`, `padding`, `border-color`, `border-style` and `border-width`. - * - * @return void - * - * @deprecated since 8.7.0, will be removed without substitution in version 9.0 in #511 - */ - public function expandDimensionsShorthand() - { - $aExpansions = [ - 'margin' => 'margin-%s', - 'padding' => 'padding-%s', - 'border-color' => 'border-%s-color', - 'border-style' => 'border-%s-style', - 'border-width' => 'border-%s-width', - ]; - $aRules = $this->getRulesAssoc(); - foreach ($aExpansions as $sProperty => $sExpanded) { - if (!isset($aRules[$sProperty])) { - continue; - } - $oRule = $aRules[$sProperty]; - $mRuleValue = $oRule->getValue(); - $aValues = []; - if (!$mRuleValue instanceof RuleValueList) { - $aValues[] = $mRuleValue; - } else { - $aValues = $mRuleValue->getListComponents(); - } - $top = $right = $bottom = $left = null; - switch (count($aValues)) { - case 1: - $top = $right = $bottom = $left = $aValues[0]; - break; - case 2: - $top = $bottom = $aValues[0]; - $left = $right = $aValues[1]; - break; - case 3: - $top = $aValues[0]; - $left = $right = $aValues[1]; - $bottom = $aValues[2]; - break; - case 4: - $top = $aValues[0]; - $right = $aValues[1]; - $bottom = $aValues[2]; - $left = $aValues[3]; - break; - } - foreach (['top', 'right', 'bottom', 'left'] as $sPosition) { - $oNewRule = new Rule(sprintf($sExpanded, $sPosition), $oRule->getLineNo(), $oRule->getColNo()); - $oNewRule->setIsImportant($oRule->getIsImportant()); - $oNewRule->addValue(${$sPosition}); - $this->addRule($oNewRule); - } - $this->removeRule($sProperty); - } - } - - /** - * Converts shorthand font declarations - * (e.g. `font: 300 italic 11px/14px verdana, helvetica, sans-serif;`) - * into their constituent parts. - * - * @return void - * - * @deprecated since 8.7.0, will be removed without substitution in version 9.0 in #511 - */ - public function expandFontShorthand() - { - $aRules = $this->getRulesAssoc(); - if (!isset($aRules['font'])) { - return; - } - $oRule = $aRules['font']; - // reset properties to 'normal' per http://www.w3.org/TR/21/fonts.html#font-shorthand - $aFontProperties = [ - 'font-style' => 'normal', - 'font-variant' => 'normal', - 'font-weight' => 'normal', - 'font-size' => 'normal', - 'line-height' => 'normal', - ]; - $mRuleValue = $oRule->getValue(); - $aValues = []; - if (!$mRuleValue instanceof RuleValueList) { - $aValues[] = $mRuleValue; - } else { - $aValues = $mRuleValue->getListComponents(); - } - foreach ($aValues as $mValue) { - if (!$mValue instanceof Value) { - $mValue = mb_strtolower($mValue); - } - if (in_array($mValue, ['normal', 'inherit'])) { - foreach (['font-style', 'font-weight', 'font-variant'] as $sProperty) { - if (!isset($aFontProperties[$sProperty])) { - $aFontProperties[$sProperty] = $mValue; - } - } - } elseif (in_array($mValue, ['italic', 'oblique'])) { - $aFontProperties['font-style'] = $mValue; - } elseif ($mValue == 'small-caps') { - $aFontProperties['font-variant'] = $mValue; - } elseif ( - in_array($mValue, ['bold', 'bolder', 'lighter']) - || ($mValue instanceof Size - && in_array($mValue->getSize(), range(100, 900, 100))) - ) { - $aFontProperties['font-weight'] = $mValue; - } elseif ($mValue instanceof RuleValueList && $mValue->getListSeparator() == '/') { - list($oSize, $oHeight) = $mValue->getListComponents(); - $aFontProperties['font-size'] = $oSize; - $aFontProperties['line-height'] = $oHeight; - } elseif ($mValue instanceof Size && $mValue->getUnit() !== null) { - $aFontProperties['font-size'] = $mValue; - } else { - $aFontProperties['font-family'] = $mValue; - } - } - foreach ($aFontProperties as $sProperty => $mValue) { - $oNewRule = new Rule($sProperty, $oRule->getLineNo(), $oRule->getColNo()); - $oNewRule->addValue($mValue); - $oNewRule->setIsImportant($oRule->getIsImportant()); - $this->addRule($oNewRule); - } - $this->removeRule('font'); - } - - /** - * Converts shorthand background declarations - * (e.g. `background: url("chess.png") gray 50% repeat fixed;`) - * into their constituent parts. - * - * @see http://www.w3.org/TR/21/colors.html#propdef-background - * - * @return void - * - * @deprecated since 8.7.0, will be removed without substitution in version 9.0 in #511 - */ - public function expandBackgroundShorthand() - { - $aRules = $this->getRulesAssoc(); - if (!isset($aRules['background'])) { - return; - } - $oRule = $aRules['background']; - $aBgProperties = [ - 'background-color' => ['transparent'], - 'background-image' => ['none'], - 'background-repeat' => ['repeat'], - 'background-attachment' => ['scroll'], - 'background-position' => [ - new Size(0, '%', null, false, $this->iLineNo), - new Size(0, '%', null, false, $this->iLineNo), - ], - ]; - $mRuleValue = $oRule->getValue(); - $aValues = []; - if (!$mRuleValue instanceof RuleValueList) { - $aValues[] = $mRuleValue; - } else { - $aValues = $mRuleValue->getListComponents(); - } - if (count($aValues) == 1 && $aValues[0] == 'inherit') { - foreach ($aBgProperties as $sProperty => $mValue) { - $oNewRule = new Rule($sProperty, $oRule->getLineNo(), $oRule->getColNo()); - $oNewRule->addValue('inherit'); - $oNewRule->setIsImportant($oRule->getIsImportant()); - $this->addRule($oNewRule); - } - $this->removeRule('background'); - return; - } - $iNumBgPos = 0; - foreach ($aValues as $mValue) { - if (!$mValue instanceof Value) { - $mValue = mb_strtolower($mValue); - } - if ($mValue instanceof URL) { - $aBgProperties['background-image'] = $mValue; - } elseif ($mValue instanceof Color) { - $aBgProperties['background-color'] = $mValue; - } elseif (in_array($mValue, ['scroll', 'fixed'])) { - $aBgProperties['background-attachment'] = $mValue; - } elseif (in_array($mValue, ['repeat', 'no-repeat', 'repeat-x', 'repeat-y'])) { - $aBgProperties['background-repeat'] = $mValue; - } elseif ( - in_array($mValue, ['left', 'center', 'right', 'top', 'bottom']) - || $mValue instanceof Size - ) { - if ($iNumBgPos == 0) { - $aBgProperties['background-position'][0] = $mValue; - $aBgProperties['background-position'][1] = 'center'; - } else { - $aBgProperties['background-position'][$iNumBgPos] = $mValue; - } - $iNumBgPos++; - } - } - foreach ($aBgProperties as $sProperty => $mValue) { - $oNewRule = new Rule($sProperty, $oRule->getLineNo(), $oRule->getColNo()); - $oNewRule->setIsImportant($oRule->getIsImportant()); - $oNewRule->addValue($mValue); - $this->addRule($oNewRule); - } - $this->removeRule('background'); - } - - /** - * @return void - * - * @deprecated since 8.7.0, will be removed without substitution in version 9.0 in #511 - */ - public function expandListStyleShorthand() - { - $aListProperties = [ - 'list-style-type' => 'disc', - 'list-style-position' => 'outside', - 'list-style-image' => 'none', - ]; - $aListStyleTypes = [ - 'none', - 'disc', - 'circle', - 'square', - 'decimal-leading-zero', - 'decimal', - 'lower-roman', - 'upper-roman', - 'lower-greek', - 'lower-alpha', - 'lower-latin', - 'upper-alpha', - 'upper-latin', - 'hebrew', - 'armenian', - 'georgian', - 'cjk-ideographic', - 'hiragana', - 'hira-gana-iroha', - 'katakana-iroha', - 'katakana', - ]; - $aListStylePositions = [ - 'inside', - 'outside', - ]; - $aRules = $this->getRulesAssoc(); - if (!isset($aRules['list-style'])) { - return; - } - $oRule = $aRules['list-style']; - $mRuleValue = $oRule->getValue(); - $aValues = []; - if (!$mRuleValue instanceof RuleValueList) { - $aValues[] = $mRuleValue; - } else { - $aValues = $mRuleValue->getListComponents(); - } - if (count($aValues) == 1 && $aValues[0] == 'inherit') { - foreach ($aListProperties as $sProperty => $mValue) { - $oNewRule = new Rule($sProperty, $oRule->getLineNo(), $oRule->getColNo()); - $oNewRule->addValue('inherit'); - $oNewRule->setIsImportant($oRule->getIsImportant()); - $this->addRule($oNewRule); - } - $this->removeRule('list-style'); - return; - } - foreach ($aValues as $mValue) { - if (!$mValue instanceof Value) { - $mValue = mb_strtolower($mValue); - } - if ($mValue instanceof Url) { - $aListProperties['list-style-image'] = $mValue; - } elseif (in_array($mValue, $aListStyleTypes)) { - $aListProperties['list-style-types'] = $mValue; - } elseif (in_array($mValue, $aListStylePositions)) { - $aListProperties['list-style-position'] = $mValue; - } - } - foreach ($aListProperties as $sProperty => $mValue) { - $oNewRule = new Rule($sProperty, $oRule->getLineNo(), $oRule->getColNo()); - $oNewRule->setIsImportant($oRule->getIsImportant()); - $oNewRule->addValue($mValue); - $this->addRule($oNewRule); - } - $this->removeRule('list-style'); - } - - /** - * @param array $aProperties - * @param string $sShorthand - * - * @return void - * - * @deprecated since 8.7.0, will be removed without substitution in version 9.0 in #511 - */ - public function createShorthandProperties(array $aProperties, $sShorthand) - { - $aRules = $this->getRulesAssoc(); - $oRule = null; - $aNewValues = []; - foreach ($aProperties as $sProperty) { - if (!isset($aRules[$sProperty])) { - continue; - } - $oRule = $aRules[$sProperty]; - if (!$oRule->getIsImportant()) { - $mRuleValue = $oRule->getValue(); - $aValues = []; - if (!$mRuleValue instanceof RuleValueList) { - $aValues[] = $mRuleValue; - } else { - $aValues = $mRuleValue->getListComponents(); - } - foreach ($aValues as $mValue) { - $aNewValues[] = $mValue; - } - $this->removeRule($sProperty); - } - } - if ($aNewValues !== [] && $oRule instanceof Rule) { - $oNewRule = new Rule($sShorthand, $oRule->getLineNo(), $oRule->getColNo()); - foreach ($aNewValues as $mValue) { - $oNewRule->addValue($mValue); - } - $this->addRule($oNewRule); - } - } - - /** - * @return void - * - * @deprecated since 8.7.0, will be removed without substitution in version 9.0 in #511 - */ - public function createBackgroundShorthand() - { - $aProperties = [ - 'background-color', - 'background-image', - 'background-repeat', - 'background-position', - 'background-attachment', - ]; - $this->createShorthandProperties($aProperties, 'background'); - } - - /** - * @return void - * - * @deprecated since 8.7.0, will be removed without substitution in version 9.0 in #511 - */ - public function createListStyleShorthand() - { - $aProperties = [ - 'list-style-type', - 'list-style-position', - 'list-style-image', - ]; - $this->createShorthandProperties($aProperties, 'list-style'); - } - - /** - * Combines `border-color`, `border-style` and `border-width` into `border`. - * - * Should be run after `create_dimensions_shorthand`! - * - * @return void - * - * @deprecated since 8.7.0, will be removed without substitution in version 9.0 in #511 - */ - public function createBorderShorthand() - { - $aProperties = [ - 'border-width', - 'border-style', - 'border-color', - ]; - $this->createShorthandProperties($aProperties, 'border'); - } - - /** - * Looks for long format CSS dimensional properties - * (margin, padding, border-color, border-style and border-width) - * and converts them into shorthand CSS properties. - * - * @return void - * - * @deprecated since 8.7.0, will be removed without substitution in version 9.0 in #511 - */ - public function createDimensionsShorthand() - { - $aPositions = ['top', 'right', 'bottom', 'left']; - $aExpansions = [ - 'margin' => 'margin-%s', - 'padding' => 'padding-%s', - 'border-color' => 'border-%s-color', - 'border-style' => 'border-%s-style', - 'border-width' => 'border-%s-width', - ]; - $aRules = $this->getRulesAssoc(); - foreach ($aExpansions as $sProperty => $sExpanded) { - $aFoldable = []; - foreach ($aRules as $sRuleName => $oRule) { - foreach ($aPositions as $sPosition) { - if ($sRuleName == sprintf($sExpanded, $sPosition)) { - $aFoldable[$sRuleName] = $oRule; - } - } - } - // All four dimensions must be present - if (count($aFoldable) == 4) { - $aValues = []; - foreach ($aPositions as $sPosition) { - $oRule = $aRules[sprintf($sExpanded, $sPosition)]; - $mRuleValue = $oRule->getValue(); - $aRuleValues = []; - if (!$mRuleValue instanceof RuleValueList) { - $aRuleValues[] = $mRuleValue; - } else { - $aRuleValues = $mRuleValue->getListComponents(); - } - $aValues[$sPosition] = $aRuleValues; - } - $oNewRule = new Rule($sProperty, $oRule->getLineNo(), $oRule->getColNo()); - if ((string)$aValues['left'][0] == (string)$aValues['right'][0]) { - if ((string)$aValues['top'][0] == (string)$aValues['bottom'][0]) { - if ((string)$aValues['top'][0] == (string)$aValues['left'][0]) { - // All 4 sides are equal - $oNewRule->addValue($aValues['top']); - } else { - // Top and bottom are equal, left and right are equal - $oNewRule->addValue($aValues['top']); - $oNewRule->addValue($aValues['left']); - } - } else { - // Only left and right are equal - $oNewRule->addValue($aValues['top']); - $oNewRule->addValue($aValues['left']); - $oNewRule->addValue($aValues['bottom']); - } - } else { - // No sides are equal - $oNewRule->addValue($aValues['top']); - $oNewRule->addValue($aValues['left']); - $oNewRule->addValue($aValues['bottom']); - $oNewRule->addValue($aValues['right']); - } - $this->addRule($oNewRule); - foreach ($aPositions as $sPosition) { - $this->removeRule(sprintf($sExpanded, $sPosition)); - } - } - } - } - - /** - * Looks for long format CSS font properties (e.g. `font-weight`) and - * tries to convert them into a shorthand CSS `font` property. - * - * At least `font-size` AND `font-family` must be present in order to create a shorthand declaration. - * - * @return void - * - * @deprecated since 8.7.0, will be removed without substitution in version 9.0 in #511 - */ - public function createFontShorthand() - { - $aFontProperties = [ - 'font-style', - 'font-variant', - 'font-weight', - 'font-size', - 'line-height', - 'font-family', - ]; - $aRules = $this->getRulesAssoc(); - if (!isset($aRules['font-size']) || !isset($aRules['font-family'])) { - return; - } - $oOldRule = isset($aRules['font-size']) ? $aRules['font-size'] : $aRules['font-family']; - $oNewRule = new Rule('font', $oOldRule->getLineNo(), $oOldRule->getColNo()); - unset($oOldRule); - foreach (['font-style', 'font-variant', 'font-weight'] as $sProperty) { - if (isset($aRules[$sProperty])) { - $oRule = $aRules[$sProperty]; - $mRuleValue = $oRule->getValue(); - $aValues = []; - if (!$mRuleValue instanceof RuleValueList) { - $aValues[] = $mRuleValue; - } else { - $aValues = $mRuleValue->getListComponents(); - } - if ($aValues[0] !== 'normal') { - $oNewRule->addValue($aValues[0]); - } - } - } - // Get the font-size value - $oRule = $aRules['font-size']; - $mRuleValue = $oRule->getValue(); - $aFSValues = []; - if (!$mRuleValue instanceof RuleValueList) { - $aFSValues[] = $mRuleValue; - } else { - $aFSValues = $mRuleValue->getListComponents(); - } - // But wait to know if we have line-height to add it - if (isset($aRules['line-height'])) { - $oRule = $aRules['line-height']; - $mRuleValue = $oRule->getValue(); - $aLHValues = []; - if (!$mRuleValue instanceof RuleValueList) { - $aLHValues[] = $mRuleValue; - } else { - $aLHValues = $mRuleValue->getListComponents(); - } - if ($aLHValues[0] !== 'normal') { - $val = new RuleValueList('/', $this->iLineNo); - $val->addListComponent($aFSValues[0]); - $val->addListComponent($aLHValues[0]); - $oNewRule->addValue($val); - } - } else { - $oNewRule->addValue($aFSValues[0]); - } - $oRule = $aRules['font-family']; - $mRuleValue = $oRule->getValue(); - $aFFValues = []; - if (!$mRuleValue instanceof RuleValueList) { - $aFFValues[] = $mRuleValue; - } else { - $aFFValues = $mRuleValue->getListComponents(); - } - $oFFValue = new RuleValueList(',', $this->iLineNo); - $oFFValue->setListComponents($aFFValues); - $oNewRule->addValue($oFFValue); - - $this->addRule($oNewRule); - foreach ($aFontProperties as $sProperty) { - $this->removeRule($sProperty); - } - } - - /** - * @return string - * - * @throws OutputException - */ - public function __toString() - { - return $this->render(new OutputFormat()); - } - - /** - * @param OutputFormat|null $oOutputFormat - * - * @return string - * - * @throws OutputException - */ - public function render($oOutputFormat) - { - $sResult = $oOutputFormat->comments($this); - if (count($this->aSelectors) === 0) { - // If all the selectors have been removed, this declaration block becomes invalid - throw new OutputException("Attempt to print declaration block with missing selector", $this->iLineNo); - } - $sResult .= $oOutputFormat->sBeforeDeclarationBlock; - $sResult .= $oOutputFormat->implode( - $oOutputFormat->spaceBeforeSelectorSeparator() . ',' . $oOutputFormat->spaceAfterSelectorSeparator(), - $this->aSelectors - ); - $sResult .= $oOutputFormat->sAfterDeclarationBlockSelectors; - $sResult .= $oOutputFormat->spaceBeforeOpeningBrace() . '{'; - $sResult .= $this->renderRules($oOutputFormat); - $sResult .= '}'; - $sResult .= $oOutputFormat->sAfterDeclarationBlock; - return $sResult; - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/RuleSet/RuleSet.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/RuleSet/RuleSet.php deleted file mode 100644 index 8cbbd34f..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/RuleSet/RuleSet.php +++ /dev/null @@ -1,332 +0,0 @@ - - */ - private $aRules; - - /** - * @var int - */ - protected $iLineNo; - - /** - * @var array - */ - protected $aComments; - - /** - * @param int $iLineNo - */ - public function __construct($iLineNo = 0) - { - $this->aRules = []; - $this->iLineNo = $iLineNo; - $this->aComments = []; - } - - /** - * @return void - * - * @throws UnexpectedTokenException - * @throws UnexpectedEOFException - */ - public static function parseRuleSet(ParserState $oParserState, RuleSet $oRuleSet) - { - while ($oParserState->comes(';')) { - $oParserState->consume(';'); - } - while (!$oParserState->comes('}')) { - $oRule = null; - if ($oParserState->getSettings()->bLenientParsing) { - try { - $oRule = Rule::parse($oParserState); - } catch (UnexpectedTokenException $e) { - try { - $sConsume = $oParserState->consumeUntil(["\n", ";", '}'], true); - // We need to “unfind” the matches to the end of the ruleSet as this will be matched later - if ($oParserState->streql(substr($sConsume, -1), '}')) { - $oParserState->backtrack(1); - } else { - while ($oParserState->comes(';')) { - $oParserState->consume(';'); - } - } - } catch (UnexpectedTokenException $e) { - // We’ve reached the end of the document. Just close the RuleSet. - return; - } - } - } else { - $oRule = Rule::parse($oParserState); - } - if ($oRule) { - $oRuleSet->addRule($oRule); - } - } - $oParserState->consume('}'); - } - - /** - * @return int - */ - public function getLineNo() - { - return $this->iLineNo; - } - - /** - * @param Rule|null $oSibling - * - * @return void - */ - public function addRule(Rule $oRule, $oSibling = null) - { - $sRule = $oRule->getRule(); - if (!isset($this->aRules[$sRule])) { - $this->aRules[$sRule] = []; - } - - $iPosition = count($this->aRules[$sRule]); - - if ($oSibling !== null) { - $iSiblingPos = array_search($oSibling, $this->aRules[$sRule], true); - if ($iSiblingPos !== false) { - $iPosition = $iSiblingPos; - $oRule->setPosition($oSibling->getLineNo(), $oSibling->getColNo() - 1); - } - } - if ($oRule->getLineNo() === 0 && $oRule->getColNo() === 0) { - //this node is added manually, give it the next best line - $rules = $this->getRules(); - $pos = count($rules); - if ($pos > 0) { - $last = $rules[$pos - 1]; - $oRule->setPosition($last->getLineNo() + 1, 0); - } - } - - array_splice($this->aRules[$sRule], $iPosition, 0, [$oRule]); - } - - /** - * Returns all rules matching the given rule name - * - * @example $oRuleSet->getRules('font') // returns array(0 => $oRule, …) or array(). - * - * @example $oRuleSet->getRules('font-') - * //returns an array of all rules either beginning with font- or matching font. - * - * @param Rule|string|null $mRule - * Pattern to search for. If null, returns all rules. - * If the pattern ends with a dash, all rules starting with the pattern are returned - * as well as one matching the pattern with the dash excluded. - * Passing a Rule behaves like calling `getRules($mRule->getRule())`. - * - * @return array - */ - public function getRules($mRule = null) - { - if ($mRule instanceof Rule) { - $mRule = $mRule->getRule(); - } - /** @var array $aResult */ - $aResult = []; - foreach ($this->aRules as $sName => $aRules) { - // Either no search rule is given or the search rule matches the found rule exactly - // or the search rule ends in “-” and the found rule starts with the search rule. - if ( - !$mRule || $sName === $mRule - || ( - strrpos($mRule, '-') === strlen($mRule) - strlen('-') - && (strpos($sName, $mRule) === 0 || $sName === substr($mRule, 0, -1)) - ) - ) { - $aResult = array_merge($aResult, $aRules); - } - } - usort($aResult, function (Rule $first, Rule $second) { - if ($first->getLineNo() === $second->getLineNo()) { - return $first->getColNo() - $second->getColNo(); - } - return $first->getLineNo() - $second->getLineNo(); - }); - return $aResult; - } - - /** - * Overrides all the rules of this set. - * - * @param array $aRules The rules to override with. - * - * @return void - */ - public function setRules(array $aRules) - { - $this->aRules = []; - foreach ($aRules as $rule) { - $this->addRule($rule); - } - } - - /** - * Returns all rules matching the given pattern and returns them in an associative array with the rule’s name - * as keys. This method exists mainly for backwards-compatibility and is really only partially useful. - * - * Note: This method loses some information: Calling this (with an argument of `background-`) on a declaration block - * like `{ background-color: green; background-color; rgba(0, 127, 0, 0.7); }` will only yield an associative array - * containing the rgba-valued rule while `getRules()` would yield an indexed array containing both. - * - * @param Rule|string|null $mRule $mRule - * Pattern to search for. If null, returns all rules. If the pattern ends with a dash, - * all rules starting with the pattern are returned as well as one matching the pattern with the dash - * excluded. Passing a Rule behaves like calling `getRules($mRule->getRule())`. - * - * @return array - */ - public function getRulesAssoc($mRule = null) - { - /** @var array $aResult */ - $aResult = []; - foreach ($this->getRules($mRule) as $oRule) { - $aResult[$oRule->getRule()] = $oRule; - } - return $aResult; - } - - /** - * Removes a rule from this RuleSet. This accepts all the possible values that `getRules()` accepts. - * - * If given a Rule, it will only remove this particular rule (by identity). - * If given a name, it will remove all rules by that name. - * - * Note: this is different from pre-v.2.0 behaviour of PHP-CSS-Parser, where passing a Rule instance would - * remove all rules with the same name. To get the old behaviour, use `removeRule($oRule->getRule())`. - * - * @param Rule|string|null $mRule - * pattern to remove. If $mRule is null, all rules are removed. If the pattern ends in a dash, - * all rules starting with the pattern are removed as well as one matching the pattern with the dash - * excluded. Passing a Rule behaves matches by identity. - * - * @return void - */ - public function removeRule($mRule) - { - if ($mRule instanceof Rule) { - $sRule = $mRule->getRule(); - if (!isset($this->aRules[$sRule])) { - return; - } - foreach ($this->aRules[$sRule] as $iKey => $oRule) { - if ($oRule === $mRule) { - unset($this->aRules[$sRule][$iKey]); - } - } - } else { - foreach ($this->aRules as $sName => $aRules) { - // Either no search rule is given or the search rule matches the found rule exactly - // or the search rule ends in “-” and the found rule starts with the search rule or equals it - // (without the trailing dash). - if ( - !$mRule || $sName === $mRule - || (strrpos($mRule, '-') === strlen($mRule) - strlen('-') - && (strpos($sName, $mRule) === 0 || $sName === substr($mRule, 0, -1))) - ) { - unset($this->aRules[$sName]); - } - } - } - } - - /** - * @return string - */ - public function __toString() - { - return $this->render(new OutputFormat()); - } - - /** - * @return string - */ - protected function renderRules(OutputFormat $oOutputFormat) - { - $sResult = ''; - $bIsFirst = true; - $oNextLevel = $oOutputFormat->nextLevel(); - foreach ($this->aRules as $aRules) { - foreach ($aRules as $oRule) { - $sRendered = $oNextLevel->safely(function () use ($oRule, $oNextLevel) { - return $oRule->render($oNextLevel); - }); - if ($sRendered === null) { - continue; - } - if ($bIsFirst) { - $bIsFirst = false; - $sResult .= $oNextLevel->spaceBeforeRules(); - } else { - $sResult .= $oNextLevel->spaceBetweenRules(); - } - $sResult .= $sRendered; - } - } - - if (!$bIsFirst) { - // Had some output - $sResult .= $oOutputFormat->spaceAfterRules(); - } - - return $oOutputFormat->removeLastSemicolon($sResult); - } - - /** - * @param array $aComments - * - * @return void - */ - public function addComments(array $aComments) - { - $this->aComments = array_merge($this->aComments, $aComments); - } - - /** - * @return array - */ - public function getComments() - { - return $this->aComments; - } - - /** - * @param array $aComments - * - * @return void - */ - public function setComments(array $aComments) - { - $this->aComments = $aComments; - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/Settings.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/Settings.php deleted file mode 100644 index 79d99803..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/Settings.php +++ /dev/null @@ -1,100 +0,0 @@ -bMultibyteSupport = extension_loaded('mbstring'); - } - - /** - * @return self new instance - */ - public static function create() - { - return new Settings(); - } - - /** - * Enables/disables multi-byte string support. - * - * If `true` (`mbstring` extension must be enabled), will use (slower) `mb_strlen`, `mb_convert_case`, `mb_substr` - * and `mb_strpos` functions. Otherwise, the normal (ASCII-Only) functions will be used. - * - * @param bool $bMultibyteSupport - * - * @return self fluent interface - */ - public function withMultibyteSupport($bMultibyteSupport = true) - { - $this->bMultibyteSupport = $bMultibyteSupport; - return $this; - } - - /** - * Sets the charset to be used if the CSS does not contain an `@charset` declaration. - * - * @param string $sDefaultCharset - * - * @return self fluent interface - */ - public function withDefaultCharset($sDefaultCharset) - { - $this->sDefaultCharset = $sDefaultCharset; - return $this; - } - - /** - * Configures whether the parser should silently ignore invalid rules. - * - * @param bool $bLenientParsing - * - * @return self fluent interface - */ - public function withLenientParsing($bLenientParsing = true) - { - $this->bLenientParsing = $bLenientParsing; - return $this; - } - - /** - * Configures the parser to choke on invalid rules. - * - * @return self fluent interface - */ - public function beStrict() - { - return $this->withLenientParsing(false); - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/CSSFunction.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/CSSFunction.php deleted file mode 100644 index 82ffc48c..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/CSSFunction.php +++ /dev/null @@ -1,100 +0,0 @@ - $aArguments - * @param string $sSeparator - * @param int $iLineNo - */ - public function __construct($sName, $aArguments, $sSeparator = ',', $iLineNo = 0) - { - if ($aArguments instanceof RuleValueList) { - $sSeparator = $aArguments->getListSeparator(); - $aArguments = $aArguments->getListComponents(); - } - $this->sName = $sName; - $this->iLineNo = $iLineNo; - parent::__construct($aArguments, $sSeparator, $iLineNo); - } - - /** - * @param ParserState $oParserState - * @param bool $bIgnoreCase - * - * @return CSSFunction - * - * @throws SourceException - * @throws UnexpectedEOFException - * @throws UnexpectedTokenException - */ - public static function parse(ParserState $oParserState, $bIgnoreCase = false) - { - $mResult = $oParserState->parseIdentifier($bIgnoreCase); - $oParserState->consume('('); - $aArguments = Value::parseValue($oParserState, ['=', ' ', ',']); - $mResult = new CSSFunction($mResult, $aArguments, ',', $oParserState->currentLine()); - $oParserState->consume(')'); - return $mResult; - } - - /** - * @return string - */ - public function getName() - { - return $this->sName; - } - - /** - * @param string $sName - * - * @return void - */ - public function setName($sName) - { - $this->sName = $sName; - } - - /** - * @return array - */ - public function getArguments() - { - return $this->aComponents; - } - - /** - * @return string - */ - public function __toString() - { - return $this->render(new OutputFormat()); - } - - /** - * @param OutputFormat|null $oOutputFormat - * - * @return string - */ - public function render($oOutputFormat) - { - $aArguments = parent::render($oOutputFormat); - return "{$this->sName}({$aArguments})"; - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/CSSString.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/CSSString.php deleted file mode 100644 index c19b238f..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/CSSString.php +++ /dev/null @@ -1,112 +0,0 @@ -sString = $sString; - parent::__construct($iLineNo); - } - - /** - * @return CSSString - * - * @throws SourceException - * @throws UnexpectedEOFException - * @throws UnexpectedTokenException - */ - public static function parse(ParserState $oParserState) - { - $sBegin = $oParserState->peek(); - $sQuote = null; - if ($sBegin === "'") { - $sQuote = "'"; - } elseif ($sBegin === '"') { - $sQuote = '"'; - } - if ($sQuote !== null) { - $oParserState->consume($sQuote); - } - $sResult = ""; - $sContent = null; - if ($sQuote === null) { - // Unquoted strings end in whitespace or with braces, brackets, parentheses - while (!preg_match('/[\\s{}()<>\\[\\]]/isu', $oParserState->peek())) { - $sResult .= $oParserState->parseCharacter(false); - } - } else { - while (!$oParserState->comes($sQuote)) { - $sContent = $oParserState->parseCharacter(false); - if ($sContent === null) { - throw new SourceException( - "Non-well-formed quoted string {$oParserState->peek(3)}", - $oParserState->currentLine() - ); - } - $sResult .= $sContent; - } - $oParserState->consume($sQuote); - } - return new CSSString($sResult, $oParserState->currentLine()); - } - - /** - * @param string $sString - * - * @return void - */ - public function setString($sString) - { - $this->sString = $sString; - } - - /** - * @return string - */ - public function getString() - { - return $this->sString; - } - - /** - * @return string - */ - public function __toString() - { - return $this->render(new OutputFormat()); - } - - /** - * @param OutputFormat|null $oOutputFormat - * - * @return string - */ - public function render($oOutputFormat) - { - $sString = addslashes($this->sString); - $sString = str_replace("\n", '\A', $sString); - return $oOutputFormat->getStringQuotingType() . $sString . $oOutputFormat->getStringQuotingType(); - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/CalcFunction.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/CalcFunction.php deleted file mode 100644 index a3db2710..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/CalcFunction.php +++ /dev/null @@ -1,110 +0,0 @@ -parseIdentifier(); - if ($oParserState->peek() != '(') { - // Found ; or end of line before an opening bracket - throw new UnexpectedTokenException('(', $oParserState->peek(), 'literal', $oParserState->currentLine()); - } elseif (!in_array($sFunction, ['calc', '-moz-calc', '-webkit-calc'])) { - // Found invalid calc definition. Example calc (... - throw new UnexpectedTokenException('calc', $sFunction, 'literal', $oParserState->currentLine()); - } - $oParserState->consume('('); - $oCalcList = new CalcRuleValueList($oParserState->currentLine()); - $oList = new RuleValueList(',', $oParserState->currentLine()); - $iNestingLevel = 0; - $iLastComponentType = null; - while (!$oParserState->comes(')') || $iNestingLevel > 0) { - if ($oParserState->isEnd() && $iNestingLevel === 0) { - break; - } - - $oParserState->consumeWhiteSpace(); - if ($oParserState->comes('(')) { - $iNestingLevel++; - $oCalcList->addListComponent($oParserState->consume(1)); - $oParserState->consumeWhiteSpace(); - continue; - } elseif ($oParserState->comes(')')) { - $iNestingLevel--; - $oCalcList->addListComponent($oParserState->consume(1)); - $oParserState->consumeWhiteSpace(); - continue; - } - if ($iLastComponentType != CalcFunction::T_OPERAND) { - $oVal = Value::parsePrimitiveValue($oParserState); - $oCalcList->addListComponent($oVal); - $iLastComponentType = CalcFunction::T_OPERAND; - } else { - if (in_array($oParserState->peek(), $aOperators)) { - if (($oParserState->comes('-') || $oParserState->comes('+'))) { - if ( - $oParserState->peek(1, -1) != ' ' - || !($oParserState->comes('- ') - || $oParserState->comes('+ ')) - ) { - throw new UnexpectedTokenException( - " {$oParserState->peek()} ", - $oParserState->peek(1, -1) . $oParserState->peek(2), - 'literal', - $oParserState->currentLine() - ); - } - } - $oCalcList->addListComponent($oParserState->consume(1)); - $iLastComponentType = CalcFunction::T_OPERATOR; - } else { - throw new UnexpectedTokenException( - sprintf( - 'Next token was expected to be an operand of type %s. Instead "%s" was found.', - implode(', ', $aOperators), - $oParserState->peek() - ), - '', - 'custom', - $oParserState->currentLine() - ); - } - } - $oParserState->consumeWhiteSpace(); - } - $oList->addListComponent($oCalcList); - if (!$oParserState->isEnd()) { - $oParserState->consume(')'); - } - return new CalcFunction($sFunction, $oList, ',', $oParserState->currentLine()); - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/CalcRuleValueList.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/CalcRuleValueList.php deleted file mode 100644 index 17fbe7cf..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/CalcRuleValueList.php +++ /dev/null @@ -1,26 +0,0 @@ -implode(' ', $this->aComponents); - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/Color.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/Color.php deleted file mode 100644 index a002760b..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/Color.php +++ /dev/null @@ -1,182 +0,0 @@ - val1, 'c' => val2, 'h' => val3, …) and output in the second form. - */ -class Color extends CSSFunction -{ - /** - * @param array $aColor - * @param int $iLineNo - */ - public function __construct(array $aColor, $iLineNo = 0) - { - parent::__construct(implode('', array_keys($aColor)), $aColor, ',', $iLineNo); - } - - /** - * @param ParserState $oParserState - * @param bool $bIgnoreCase - * - * @return Color|CSSFunction - * - * @throws UnexpectedEOFException - * @throws UnexpectedTokenException - */ - public static function parse(ParserState $oParserState, $bIgnoreCase = false) - { - $aColor = []; - if ($oParserState->comes('#')) { - $oParserState->consume('#'); - $sValue = $oParserState->parseIdentifier(false); - if ($oParserState->strlen($sValue) === 3) { - $sValue = $sValue[0] . $sValue[0] . $sValue[1] . $sValue[1] . $sValue[2] . $sValue[2]; - } elseif ($oParserState->strlen($sValue) === 4) { - $sValue = $sValue[0] . $sValue[0] . $sValue[1] . $sValue[1] . $sValue[2] . $sValue[2] . $sValue[3] - . $sValue[3]; - } - - if ($oParserState->strlen($sValue) === 8) { - $aColor = [ - 'r' => new Size(intval($sValue[0] . $sValue[1], 16), null, true, $oParserState->currentLine()), - 'g' => new Size(intval($sValue[2] . $sValue[3], 16), null, true, $oParserState->currentLine()), - 'b' => new Size(intval($sValue[4] . $sValue[5], 16), null, true, $oParserState->currentLine()), - 'a' => new Size( - round(self::mapRange(intval($sValue[6] . $sValue[7], 16), 0, 255, 0, 1), 2), - null, - true, - $oParserState->currentLine() - ), - ]; - } elseif ($oParserState->strlen($sValue) === 6) { - $aColor = [ - 'r' => new Size(intval($sValue[0] . $sValue[1], 16), null, true, $oParserState->currentLine()), - 'g' => new Size(intval($sValue[2] . $sValue[3], 16), null, true, $oParserState->currentLine()), - 'b' => new Size(intval($sValue[4] . $sValue[5], 16), null, true, $oParserState->currentLine()), - ]; - } else { - throw new UnexpectedTokenException( - 'Invalid hex color value', - $sValue, - 'custom', - $oParserState->currentLine() - ); - } - } else { - $sColorMode = $oParserState->parseIdentifier(true); - $oParserState->consumeWhiteSpace(); - $oParserState->consume('('); - - $bContainsVar = false; - $iLength = $oParserState->strlen($sColorMode); - for ($i = 0; $i < $iLength; ++$i) { - $oParserState->consumeWhiteSpace(); - if ($oParserState->comes('var')) { - $aColor[$sColorMode[$i]] = CSSFunction::parseIdentifierOrFunction($oParserState); - $bContainsVar = true; - } else { - $aColor[$sColorMode[$i]] = Size::parse($oParserState, true); - } - - if ($bContainsVar && $oParserState->comes(')')) { - // With a var argument the function can have fewer arguments - break; - } - - $oParserState->consumeWhiteSpace(); - if ($i < ($iLength - 1)) { - $oParserState->consume(','); - } - } - $oParserState->consume(')'); - - if ($bContainsVar) { - return new CSSFunction($sColorMode, array_values($aColor), ',', $oParserState->currentLine()); - } - } - return new Color($aColor, $oParserState->currentLine()); - } - - /** - * @param float $fVal - * @param float $fFromMin - * @param float $fFromMax - * @param float $fToMin - * @param float $fToMax - * - * @return float - */ - private static function mapRange($fVal, $fFromMin, $fFromMax, $fToMin, $fToMax) - { - $fFromRange = $fFromMax - $fFromMin; - $fToRange = $fToMax - $fToMin; - $fMultiplier = $fToRange / $fFromRange; - $fNewVal = $fVal - $fFromMin; - $fNewVal *= $fMultiplier; - return $fNewVal + $fToMin; - } - - /** - * @return array - */ - public function getColor() - { - return $this->aComponents; - } - - /** - * @param array $aColor - * - * @return void - */ - public function setColor(array $aColor) - { - $this->setName(implode('', array_keys($aColor))); - $this->aComponents = $aColor; - } - - /** - * @return string - */ - public function getColorDescription() - { - return $this->getName(); - } - - /** - * @return string - */ - public function __toString() - { - return $this->render(new OutputFormat()); - } - - /** - * @param OutputFormat|null $oOutputFormat - * - * @return string - */ - public function render($oOutputFormat) - { - // Shorthand RGB color values - if ($oOutputFormat->getRGBHashNotation() && implode('', array_keys($this->aComponents)) === 'rgb') { - $sResult = sprintf( - '%02x%02x%02x', - $this->aComponents['r']->getSize(), - $this->aComponents['g']->getSize(), - $this->aComponents['b']->getSize() - ); - return '#' . (($sResult[0] == $sResult[1]) && ($sResult[2] == $sResult[3]) && ($sResult[4] == $sResult[5]) - ? "$sResult[0]$sResult[2]$sResult[4]" : $sResult); - } - return parent::render($oOutputFormat); - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/LineName.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/LineName.php deleted file mode 100644 index 588cb4cb..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/LineName.php +++ /dev/null @@ -1,67 +0,0 @@ - $aComponents - * @param int $iLineNo - */ - public function __construct(array $aComponents = [], $iLineNo = 0) - { - parent::__construct($aComponents, ' ', $iLineNo); - } - - /** - * @return LineName - * - * @throws UnexpectedTokenException - * @throws UnexpectedEOFException - */ - public static function parse(ParserState $oParserState) - { - $oParserState->consume('['); - $oParserState->consumeWhiteSpace(); - $aNames = []; - do { - if ($oParserState->getSettings()->bLenientParsing) { - try { - $aNames[] = $oParserState->parseIdentifier(); - } catch (UnexpectedTokenException $e) { - if (!$oParserState->comes(']')) { - throw $e; - } - } - } else { - $aNames[] = $oParserState->parseIdentifier(); - } - $oParserState->consumeWhiteSpace(); - } while (!$oParserState->comes(']')); - $oParserState->consume(']'); - return new LineName($aNames, $oParserState->currentLine()); - } - - /** - * @return string - */ - public function __toString() - { - return $this->render(new OutputFormat()); - } - - /** - * @param OutputFormat|null $oOutputFormat - * - * @return string - */ - public function render($oOutputFormat) - { - return '[' . parent::render(OutputFormat::createCompact()) . ']'; - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/PrimitiveValue.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/PrimitiveValue.php deleted file mode 100644 index 055a4397..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/PrimitiveValue.php +++ /dev/null @@ -1,14 +0,0 @@ - - * - * @internal - */ - const ABSOLUTE_SIZE_UNITS = [ - 'px', 'pt', 'pc', - 'cm', 'mm', 'mozmm', 'in', - 'vh', 'dvh', 'svh', 'lvh', - 'vw', 'vmin', 'vmax', 'rem', - ]; - - /** - * @var array - * - * @internal - */ - const RELATIVE_SIZE_UNITS = ['%', 'em', 'ex', 'ch', 'fr']; - - /** - * @var array - * - * @internal - */ - const NON_SIZE_UNITS = ['deg', 'grad', 'rad', 's', 'ms', 'turn', 'Hz', 'kHz']; - - /** - * @var array>|null - */ - private static $SIZE_UNITS = null; - - /** - * @var float - */ - private $fSize; - - /** - * @var string|null - */ - private $sUnit; - - /** - * @var bool - */ - private $bIsColorComponent; - - /** - * @param float|int|string $fSize - * @param string|null $sUnit - * @param bool $bIsColorComponent - * @param int $iLineNo - */ - public function __construct($fSize, $sUnit = null, $bIsColorComponent = false, $iLineNo = 0) - { - parent::__construct($iLineNo); - $this->fSize = (float)$fSize; - $this->sUnit = $sUnit; - $this->bIsColorComponent = $bIsColorComponent; - } - - /** - * @param bool $bIsColorComponent - * - * @return Size - * - * @throws UnexpectedEOFException - * @throws UnexpectedTokenException - */ - public static function parse(ParserState $oParserState, $bIsColorComponent = false) - { - $sSize = ''; - if ($oParserState->comes('-')) { - $sSize .= $oParserState->consume('-'); - } - while (is_numeric($oParserState->peek()) || $oParserState->comes('.') || $oParserState->comes('e', true)) { - if ($oParserState->comes('.')) { - $sSize .= $oParserState->consume('.'); - } elseif ($oParserState->comes('e', true)) { - $sLookahead = $oParserState->peek(1, 1); - if (is_numeric($sLookahead) || $sLookahead === '+' || $sLookahead === '-') { - $sSize .= $oParserState->consume(2); - } else { - break; // Reached the unit part of the number like "em" or "ex" - } - } else { - $sSize .= $oParserState->consume(1); - } - } - - $sUnit = null; - $aSizeUnits = self::getSizeUnits(); - foreach ($aSizeUnits as $iLength => &$aValues) { - $sKey = strtolower($oParserState->peek($iLength)); - if (array_key_exists($sKey, $aValues)) { - if (($sUnit = $aValues[$sKey]) !== null) { - $oParserState->consume($iLength); - break; - } - } - } - return new Size((float)$sSize, $sUnit, $bIsColorComponent, $oParserState->currentLine()); - } - - /** - * @return array> - */ - private static function getSizeUnits() - { - if (!is_array(self::$SIZE_UNITS)) { - self::$SIZE_UNITS = []; - foreach (array_merge(self::ABSOLUTE_SIZE_UNITS, self::RELATIVE_SIZE_UNITS, self::NON_SIZE_UNITS) as $val) { - $iSize = strlen($val); - if (!isset(self::$SIZE_UNITS[$iSize])) { - self::$SIZE_UNITS[$iSize] = []; - } - self::$SIZE_UNITS[$iSize][strtolower($val)] = $val; - } - - krsort(self::$SIZE_UNITS, SORT_NUMERIC); - } - - return self::$SIZE_UNITS; - } - - /** - * @param string $sUnit - * - * @return void - */ - public function setUnit($sUnit) - { - $this->sUnit = $sUnit; - } - - /** - * @return string|null - */ - public function getUnit() - { - return $this->sUnit; - } - - /** - * @param float|int|string $fSize - */ - public function setSize($fSize) - { - $this->fSize = (float)$fSize; - } - - /** - * @return float - */ - public function getSize() - { - return $this->fSize; - } - - /** - * @return bool - */ - public function isColorComponent() - { - return $this->bIsColorComponent; - } - - /** - * Returns whether the number stored in this Size really represents a size (as in a length of something on screen). - * - * @return false if the unit an angle, a duration, a frequency or the number is a component in a Color object. - */ - public function isSize() - { - if (in_array($this->sUnit, self::NON_SIZE_UNITS, true)) { - return false; - } - return !$this->isColorComponent(); - } - - /** - * @return bool - */ - public function isRelative() - { - if (in_array($this->sUnit, self::RELATIVE_SIZE_UNITS, true)) { - return true; - } - if ($this->sUnit === null && $this->fSize != 0) { - return true; - } - return false; - } - - /** - * @return string - */ - public function __toString() - { - return $this->render(new OutputFormat()); - } - - /** - * @param OutputFormat|null $oOutputFormat - * - * @return string - */ - public function render($oOutputFormat) - { - $l = localeconv(); - $sPoint = preg_quote($l['decimal_point'], '/'); - $sSize = preg_match("/[\d\.]+e[+-]?\d+/i", (string)$this->fSize) - ? preg_replace("/$sPoint?0+$/", "", sprintf("%f", $this->fSize)) : (string)$this->fSize; - return preg_replace(["/$sPoint/", "/^(-?)0\./"], ['.', '$1.'], $sSize) - . ($this->sUnit === null ? '' : $this->sUnit); - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/URL.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/URL.php deleted file mode 100644 index 92da9726..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/URL.php +++ /dev/null @@ -1,97 +0,0 @@ -oURL = $oURL; - } - - /** - * @return URL - * - * @throws SourceException - * @throws UnexpectedEOFException - * @throws UnexpectedTokenException - */ - public static function parse(ParserState $oParserState) - { - $oAnchor = $oParserState->anchor(); - $sIdentifier = ''; - for ($i = 0; $i < 3; $i++) { - $sChar = $oParserState->parseCharacter(true); - if ($sChar === null) { - break; - } - $sIdentifier .= $sChar; - } - $bUseUrl = $oParserState->streql($sIdentifier, 'url'); - if ($bUseUrl) { - $oParserState->consumeWhiteSpace(); - $oParserState->consume('('); - } else { - $oAnchor->backtrack(); - } - $oParserState->consumeWhiteSpace(); - $oResult = new URL(CSSString::parse($oParserState), $oParserState->currentLine()); - if ($bUseUrl) { - $oParserState->consumeWhiteSpace(); - $oParserState->consume(')'); - } - return $oResult; - } - - /** - * @return void - */ - public function setURL(CSSString $oURL) - { - $this->oURL = $oURL; - } - - /** - * @return CSSString - */ - public function getURL() - { - return $this->oURL; - } - - /** - * @return string - */ - public function __toString() - { - return $this->render(new OutputFormat()); - } - - /** - * @param OutputFormat|null $oOutputFormat - * - * @return string - */ - public function render($oOutputFormat) - { - return "url({$this->oURL->render($oOutputFormat)})"; - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/Value.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/Value.php deleted file mode 100644 index 4b174db0..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/Value.php +++ /dev/null @@ -1,221 +0,0 @@ -iLineNo = $iLineNo; - } - - /** - * @param array $aListDelimiters - * - * @return RuleValueList|CSSFunction|CSSString|LineName|Size|URL|string - * - * @throws UnexpectedTokenException - * @throws UnexpectedEOFException - */ - public static function parseValue(ParserState $oParserState, array $aListDelimiters = []) - { - /** @var array $aStack */ - $aStack = []; - $oParserState->consumeWhiteSpace(); - //Build a list of delimiters and parsed values - while ( - !($oParserState->comes('}') || $oParserState->comes(';') || $oParserState->comes('!') - || $oParserState->comes(')') - || $oParserState->comes('\\') - || $oParserState->isEnd()) - ) { - if (count($aStack) > 0) { - $bFoundDelimiter = false; - foreach ($aListDelimiters as $sDelimiter) { - if ($oParserState->comes($sDelimiter)) { - array_push($aStack, $oParserState->consume($sDelimiter)); - $oParserState->consumeWhiteSpace(); - $bFoundDelimiter = true; - break; - } - } - if (!$bFoundDelimiter) { - //Whitespace was the list delimiter - array_push($aStack, ' '); - } - } - array_push($aStack, self::parsePrimitiveValue($oParserState)); - $oParserState->consumeWhiteSpace(); - } - // Convert the list to list objects - foreach ($aListDelimiters as $sDelimiter) { - $iStackLength = count($aStack); - if ($iStackLength === 1) { - return $aStack[0]; - } - $aNewStack = []; - for ($iStartPosition = 0; $iStartPosition < $iStackLength; ++$iStartPosition) { - if ($iStartPosition === ($iStackLength - 1) || $sDelimiter !== $aStack[$iStartPosition + 1]) { - $aNewStack[] = $aStack[$iStartPosition]; - continue; - } - $iLength = 2; //Number of elements to be joined - for ($i = $iStartPosition + 3; $i < $iStackLength; $i += 2, ++$iLength) { - if ($sDelimiter !== $aStack[$i]) { - break; - } - } - $oList = new RuleValueList($sDelimiter, $oParserState->currentLine()); - for ($i = $iStartPosition; $i - $iStartPosition < $iLength * 2; $i += 2) { - $oList->addListComponent($aStack[$i]); - } - $aNewStack[] = $oList; - $iStartPosition += $iLength * 2 - 2; - } - $aStack = $aNewStack; - } - if (!isset($aStack[0])) { - throw new UnexpectedTokenException( - " {$oParserState->peek()} ", - $oParserState->peek(1, -1) . $oParserState->peek(2), - 'literal', - $oParserState->currentLine() - ); - } - return $aStack[0]; - } - - /** - * @param bool $bIgnoreCase - * - * @return CSSFunction|string - * - * @throws UnexpectedEOFException - * @throws UnexpectedTokenException - */ - public static function parseIdentifierOrFunction(ParserState $oParserState, $bIgnoreCase = false) - { - $oAnchor = $oParserState->anchor(); - $mResult = $oParserState->parseIdentifier($bIgnoreCase); - - if ($oParserState->comes('(')) { - $oAnchor->backtrack(); - if ($oParserState->streql('url', $mResult)) { - $mResult = URL::parse($oParserState); - } elseif ( - $oParserState->streql('calc', $mResult) - || $oParserState->streql('-webkit-calc', $mResult) - || $oParserState->streql('-moz-calc', $mResult) - ) { - $mResult = CalcFunction::parse($oParserState); - } else { - $mResult = CSSFunction::parse($oParserState, $bIgnoreCase); - } - } - - return $mResult; - } - - /** - * @return CSSFunction|CSSString|LineName|Size|URL|string - * - * @throws UnexpectedEOFException - * @throws UnexpectedTokenException - * @throws SourceException - */ - public static function parsePrimitiveValue(ParserState $oParserState) - { - $oValue = null; - $oParserState->consumeWhiteSpace(); - if ( - is_numeric($oParserState->peek()) - || ($oParserState->comes('-.') - && is_numeric($oParserState->peek(1, 2))) - || (($oParserState->comes('-') || $oParserState->comes('.')) && is_numeric($oParserState->peek(1, 1))) - ) { - $oValue = Size::parse($oParserState); - } elseif ($oParserState->comes('#') || $oParserState->comes('rgb', true) || $oParserState->comes('hsl', true)) { - $oValue = Color::parse($oParserState); - } elseif ($oParserState->comes("'") || $oParserState->comes('"')) { - $oValue = CSSString::parse($oParserState); - } elseif ($oParserState->comes("progid:") && $oParserState->getSettings()->bLenientParsing) { - $oValue = self::parseMicrosoftFilter($oParserState); - } elseif ($oParserState->comes("[")) { - $oValue = LineName::parse($oParserState); - } elseif ($oParserState->comes("U+")) { - $oValue = self::parseUnicodeRangeValue($oParserState); - } else { - $sNextChar = $oParserState->peek(1); - try { - $oValue = self::parseIdentifierOrFunction($oParserState); - } catch (UnexpectedTokenException $e) { - if (\in_array($sNextChar, ['+', '-', '*', '/'], true)) { - $oValue = $oParserState->consume(1); - } else { - throw $e; - } - } - } - $oParserState->consumeWhiteSpace(); - return $oValue; - } - - /** - * @return CSSFunction - * - * @throws UnexpectedEOFException - * @throws UnexpectedTokenException - */ - private static function parseMicrosoftFilter(ParserState $oParserState) - { - $sFunction = $oParserState->consumeUntil('(', false, true); - $aArguments = Value::parseValue($oParserState, [',', '=']); - return new CSSFunction($sFunction, $aArguments, ',', $oParserState->currentLine()); - } - - /** - * @return string - * - * @throws UnexpectedEOFException - * @throws UnexpectedTokenException - */ - private static function parseUnicodeRangeValue(ParserState $oParserState) - { - $iCodepointMaxLength = 6; // Code points outside BMP can use up to six digits - $sRange = ""; - $oParserState->consume("U+"); - do { - if ($oParserState->comes('-')) { - $iCodepointMaxLength = 13; // Max length is 2 six digit code points + the dash(-) between them - } - $sRange .= $oParserState->consume(1); - } while (strlen($sRange) < $iCodepointMaxLength && preg_match("/[A-Fa-f0-9\?-]/", $oParserState->peek())); - return "U+{$sRange}"; - } - - /** - * @return int - */ - public function getLineNo() - { - return $this->iLineNo; - } -} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/ValueList.php b/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/ValueList.php deleted file mode 100644 index 80b26f97..00000000 --- a/docker/statistics/vendor/sabberworm/php-css-parser/src/Value/ValueList.php +++ /dev/null @@ -1,108 +0,0 @@ - - */ - protected $aComponents; - - /** - * @var string - */ - protected $sSeparator; - - /** - * phpcs:ignore Generic.Files.LineLength - * @param array|RuleValueList|CSSFunction|CSSString|LineName|Size|URL|string $aComponents - * @param string $sSeparator - * @param int $iLineNo - */ - public function __construct($aComponents = [], $sSeparator = ',', $iLineNo = 0) - { - parent::__construct($iLineNo); - if (!is_array($aComponents)) { - $aComponents = [$aComponents]; - } - $this->aComponents = $aComponents; - $this->sSeparator = $sSeparator; - } - - /** - * @param RuleValueList|CSSFunction|CSSString|LineName|Size|URL|string $mComponent - * - * @return void - */ - public function addListComponent($mComponent) - { - $this->aComponents[] = $mComponent; - } - - /** - * @return array - */ - public function getListComponents() - { - return $this->aComponents; - } - - /** - * @param array $aComponents - * - * @return void - */ - public function setListComponents(array $aComponents) - { - $this->aComponents = $aComponents; - } - - /** - * @return string - */ - public function getListSeparator() - { - return $this->sSeparator; - } - - /** - * @param string $sSeparator - * - * @return void - */ - public function setListSeparator($sSeparator) - { - $this->sSeparator = $sSeparator; - } - - /** - * @return string - */ - public function __toString() - { - return $this->render(new OutputFormat()); - } - - /** - * @param OutputFormat|null $oOutputFormat - * - * @return string - */ - public function render($oOutputFormat) - { - return $oOutputFormat->implode( - $oOutputFormat->spaceBeforeListArgumentSeparator($this->sSeparator) . $this->sSeparator - . $oOutputFormat->spaceAfterListArgumentSeparator($this->sSeparator), - $this->aComponents - ); - } -} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Docs/Arrays/ArrayIndentStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Docs/Arrays/ArrayIndentStandard.xml deleted file mode 100644 index 0312a70f..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Docs/Arrays/ArrayIndentStandard.xml +++ /dev/null @@ -1,107 +0,0 @@ - - - - - - - [ - 1, - 2, -]; - -if ($condition) { - $a = - [ - 1, - 2, - ]; -} - - ]]> - - - [ - 1, - 2, - ]; -} - ]]> - - - - - - - - 1, - 2, - 3, -); - ]]> - - - 1, - 2, - 3, -); - ]]> - - - - - - - - -]; - ]]> - - - ]; - ]]> - - - - - - - - ); - ]]> - - - ); - ]]> - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Docs/Commenting/DocCommentStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Docs/Commenting/DocCommentStandard.xml deleted file mode 100644 index bbeb4f69..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Docs/Commenting/DocCommentStandard.xml +++ /dev/null @@ -1,269 +0,0 @@ - - - - - - - - - - Some content. - */ - ]]> - - - - */ - ]]> - - - - - - - - /** - * Short description. - */ - ]]> - - - /** Short description. */ - ]]> - - - - - - - - Short description. - */ - ]]> - - - @return int - */ - -/** - * - * Short description. - */ - ]]> - - - - - - - - Short description. - * - * Long description. - */ - ]]> - - - short description. - * - * long description. - */ - ]]> - - - - - - - - * - * Long description. - * - * @param int $foo - */ - ]]> - - - * - * - - * Long description. - * @param int $foo - */ - ]]> - - - - - - - - * @param int $foo - * @param string $bar - */ - ]]> - - - * - * @param string $bar - */ - ]]> - - - - - - - - * @param int $foo - * - * @since 3.4.8 - * @deprecated 6.0.0 - */ - ]]> - - - * @param int $foo - * @since 3.4.8 - * @deprecated 6.0.0 - */ - ]]> - - - - - - - - 0.5.0 - * @deprecated 1.0.0 - */ - ]]> - - - 0.5.0 - * @deprecated 1.0.0 - */ - ]]> - - - - - - - - @param string $foo - * - * @return void - */ - ]]> - - - @param string $bar - */ - ]]> - - - - - - - - - */ - ]]> - - - * - */ - ]]> - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Docs/PHP/RequireStrictTypesStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Docs/PHP/RequireStrictTypesStandard.xml deleted file mode 100644 index dc724306..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Docs/PHP/RequireStrictTypesStandard.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - strict_types=1); - -declare(encoding='UTF-8', strict_types=0); - ]]> - - - ); - ]]> - - - - - - - - 1); - ]]> - - - 0); - ]]> - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Docs/Strings/UnnecessaryHeredocStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Docs/Strings/UnnecessaryHeredocStandard.xml deleted file mode 100644 index e0ca14f4..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Docs/Strings/UnnecessaryHeredocStandard.xml +++ /dev/null @@ -1,39 +0,0 @@ - - - - - - - <<<'EOD' -some text -EOD; - ]]> - - - << -some text -EOD; - ]]> - - - - - <<<"EOD" -some $text -EOD; - ]]> - - - <<<"EOD" -some text -EOD; - ]]> - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Docs/WhiteSpace/HereNowdocIdentifierSpacingStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Docs/WhiteSpace/HereNowdocIdentifierSpacingStandard.xml deleted file mode 100644 index 66759bf5..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Docs/WhiteSpace/HereNowdocIdentifierSpacingStandard.xml +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - << -some text -EOD; - ]]> - - - <<< END -some text -END; - ]]> - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Sniffs/Strings/UnnecessaryHeredocSniff.php b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Sniffs/Strings/UnnecessaryHeredocSniff.php deleted file mode 100644 index 7698b28c..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Sniffs/Strings/UnnecessaryHeredocSniff.php +++ /dev/null @@ -1,97 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Standards\Generic\Sniffs\Strings; - -use PHP_CodeSniffer\Files\File; -use PHP_CodeSniffer\Sniffs\Sniff; - -class UnnecessaryHeredocSniff implements Sniff -{ - - - /** - * Returns an array of tokens this test wants to listen for. - * - * @return array - */ - public function register() - { - return [T_START_HEREDOC]; - - }//end register() - - - /** - * Processes this test, when one of its tokens is encountered. - * - * @param \PHP_CodeSniffer\Files\File $phpcsFile The file being scanned. - * @param int $stackPtr The position of the current token in - * the stack passed in $tokens. - * - * @return void - */ - public function process(File $phpcsFile, $stackPtr) - { - $tokens = $phpcsFile->getTokens(); - - if (isset($tokens[$stackPtr]['scope_closer']) === false) { - // Just to be safe. Shouldn't be possible as in that case, the opener shouldn't be tokenized - // to T_START_HEREDOC by PHP. - return; // @codeCoverageIgnore - } - - $closer = $tokens[$stackPtr]['scope_closer']; - $body = ''; - - // Collect all the tokens within the heredoc body. - for ($i = ($stackPtr + 1); $i < $closer; $i++) { - $body .= $tokens[$i]['content']; - } - - $tokenizedBody = token_get_all(sprintf("", $body)); - foreach ($tokenizedBody as $ptr => $bodyToken) { - if (is_array($bodyToken) === false) { - continue; - } - - if ($bodyToken[0] === T_DOLLAR_OPEN_CURLY_BRACES - || $bodyToken[0] === T_VARIABLE - ) { - // Contains interpolation or expression. - $phpcsFile->recordMetric($stackPtr, 'Heredoc contains interpolation or expression', 'yes'); - return; - } - - if ($bodyToken[0] === T_CURLY_OPEN - && is_array($tokenizedBody[($ptr + 1)]) === false - && $tokenizedBody[($ptr + 1)] === '$' - ) { - // Contains interpolation or expression. - $phpcsFile->recordMetric($stackPtr, 'Heredoc contains interpolation or expression', 'yes'); - return; - } - }//end foreach - - $phpcsFile->recordMetric($stackPtr, 'Heredoc contains interpolation or expression', 'no'); - - $warning = 'Detected heredoc without interpolation or expressions. Use nowdoc syntax instead'; - - $fix = $phpcsFile->addFixableWarning($warning, $stackPtr, 'Found'); - if ($fix === true) { - $identifier = trim(ltrim($tokens[$stackPtr]['content'], '<')); - $replaceWith = "'".trim($identifier, '"')."'"; - $replacement = str_replace($identifier, $replaceWith, $tokens[$stackPtr]['content']); - $phpcsFile->fixer->replaceToken($stackPtr, $replacement); - } - - }//end process() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Sniffs/WhiteSpace/HereNowdocIdentifierSpacingSniff.php b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Sniffs/WhiteSpace/HereNowdocIdentifierSpacingSniff.php deleted file mode 100644 index c2939a71..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Sniffs/WhiteSpace/HereNowdocIdentifierSpacingSniff.php +++ /dev/null @@ -1,69 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Standards\Generic\Sniffs\WhiteSpace; - -use PHP_CodeSniffer\Files\File; -use PHP_CodeSniffer\Sniffs\Sniff; - -class HereNowdocIdentifierSpacingSniff implements Sniff -{ - - - /** - * Returns an array of tokens this test wants to listen for. - * - * @return array - */ - public function register() - { - return [ - T_START_HEREDOC, - T_START_NOWDOC, - ]; - - }//end register() - - - /** - * Processes this test, when one of its tokens is encountered. - * - * @param \PHP_CodeSniffer\Files\File $phpcsFile The file being scanned. - * @param int $stackPtr The position of the current token in - * the stack passed in $tokens. - * - * @return void - */ - public function process(File $phpcsFile, $stackPtr) - { - $tokens = $phpcsFile->getTokens(); - - if (strpos($tokens[$stackPtr]['content'], ' ') === false - && strpos($tokens[$stackPtr]['content'], "\t") === false - ) { - // Nothing to do. - $phpcsFile->recordMetric($stackPtr, 'Heredoc/nowdoc identifier', 'no space between <<< and ID'); - return; - } - - $phpcsFile->recordMetric($stackPtr, 'Heredoc/nowdoc identifier', 'space between <<< and ID'); - - $error = 'There should be no space between the <<< and the heredoc/nowdoc identifier string'; - $data = [$tokens[$stackPtr]['content']]; - - $fix = $phpcsFile->addFixableError($error, $stackPtr, 'SpaceFound', $data); - if ($fix === true) { - $replacement = str_replace([' ', "\t"], '', $tokens[$stackPtr]['content']); - $phpcsFile->fixer->replaceToken($stackPtr, $replacement); - } - - }//end process() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Arrays/DisallowLongArraySyntaxUnitTest.3.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Arrays/DisallowLongArraySyntaxUnitTest.3.inc deleted file mode 100644 index 68020bdc..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Arrays/DisallowLongArraySyntaxUnitTest.3.inc +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - - - -/* - * Test empty statement: no code between PHP open and close tag. - */ - - - - - - - - - - - - - - - - - - - true, -}; diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/CodeAnalysis/EmptyPHPStatementUnitTest.1.inc.fixed b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/CodeAnalysis/EmptyPHPStatementUnitTest.1.inc.fixed deleted file mode 100644 index 6bf8b212..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/CodeAnalysis/EmptyPHPStatementUnitTest.1.inc.fixed +++ /dev/null @@ -1,80 +0,0 @@ - - - - -/* - * Test empty statement: no code between PHP open and close tag. - */ - - - - - - - - - - - - - - - - - - true, -}; diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/CodeAnalysis/EmptyPHPStatementUnitTest.2.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/CodeAnalysis/EmptyPHPStatementUnitTest.2.inc deleted file mode 100644 index a9f895d7..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/CodeAnalysis/EmptyPHPStatementUnitTest.2.inc +++ /dev/null @@ -1,27 +0,0 @@ - - - - - -/* - * Test empty statement: no code between PHP open and close tag. - */ - - - - - - - - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/CodeAnalysis/EmptyPHPStatementUnitTest.2.inc.fixed b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/CodeAnalysis/EmptyPHPStatementUnitTest.2.inc.fixed deleted file mode 100644 index fd27d0a2..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/CodeAnalysis/EmptyPHPStatementUnitTest.2.inc.fixed +++ /dev/null @@ -1,23 +0,0 @@ - - - - - -/* - * Test empty statement: no code between PHP open and close tag. - */ - - - - - - - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/CodeAnalysis/JumbledIncrementerUnitTest.1.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/CodeAnalysis/JumbledIncrementerUnitTest.1.inc deleted file mode 100644 index 96681842..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/CodeAnalysis/JumbledIncrementerUnitTest.1.inc +++ /dev/null @@ -1,89 +0,0 @@ - 3; $same++) { - - } - } -} - -for ($i = 0; $i < 20; $i++) { - for ($j = 0; $j < 5; $j += 2) { - for ($k = 0; $k > 3; $k++) { - - } - } -} - -for ($i = 0; $i < 20; $i++) { - for ($same = 0; $same < 5; $same += 2) { - for ($k = 0; $k > 3; $same++) { - - } - } -} - -for (; $i < 10; $i++) { - for ($j = 0;; $j++) { - if ($j > 5) { - break; - } - for (;; $k++) { - if ($k > 5) { - break; - } - } - } -} - -for (; $same < 10; $same++) { - for ($j = 0;; $same++) { - if ($j > 5) { - break; - } - for (;; $same++) { - if ($k > 5) { - break; - } - } - } -} - -for ($i = 0; $i < 20; $i++) : - for ($j = 0; $j < 5; $j += 2) : - endfor; -endfor; - -for ($same = 0; $same < 20; $same++) : - for ($j = 0; $j < 5; $same += 2) : - endfor; -endfor; - -// Sniff bails early when there is no incrementor in the third expression of the outer for loop. -for ($same = 0; $same < 10;) { - ++$same; - for ($j = 0; $j < 5; $same++) {} -} - -for ($i = 1, $same = 0; $i <= 10; $i++, $same++) { - for ($same = 0, $k = 0; $k < 5; $same++, $k++) {} -} - -for ($i = 20; $i > 0; $i--) { - for ($j = 5; $j > 0; $j -= 2) { - for ($k = 3; $k > 0; $k--) {} - } -} - -for ($same = 20; $same > 0; $same--) { - for ($j = 5; $j > 0; $same -= 2) { - for ($k = 3; $k > 0; $same--) {} - } -} - -for ($i = 0; $i < 20; $i++); - -for ($same = 0; $same < 20; $same++) { - for ($j = 0; $j < 20; $same++); -} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/CodeAnalysis/JumbledIncrementerUnitTest.2.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/CodeAnalysis/JumbledIncrementerUnitTest.2.inc deleted file mode 100644 index 2324427b..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/CodeAnalysis/JumbledIncrementerUnitTest.2.inc +++ /dev/null @@ -1,8 +0,0 @@ -prop[$a], $this->{$b}); - } - - public function differentCase() { - return parent::DIFFERENTcase(); - } - - public function differentCaseSameNonAnsiiCharáctêrs() { - // This should be flagged, only ASCII chars have changed case. - return parent::DIFFERENTcaseSameNonAnsiiCharáctêrs(); - } - - public function differentCaseDifferentNonAnsiiCharáctêrs() { - // This should not be flagged as non-ASCII chars have changed case, making this a different method name. - return parent::DIFFERENTcaseDifferentNonAnsiiCharÁctÊrs(); - } - - public function nestedFunctionShouldBailEarly() { - function nestedFunctionShouldBailEarly() { - // Invalid code needed to ensure an error is NOT triggered and the sniff bails early when handling nested function. - parent::nestedFunctionShouldBailEarly(); - } - } -} - -abstract class AbstractFoo { - abstract public function sniffShouldBailEarly(); - - public function uselessMethodInAbstractClass() { - parent::uselessMethodInAbstractClass(); - } - - public function usefulMethodInAbstractClass() { - $a = 1; - parent::usefulMethodInAbstractClass($a); - } -} - -interface InterfaceFoo { - public function sniffShouldBailEarly(); -} - -trait TraitFoo { - abstract public function sniffShouldBailEarly(); - - public function usefulMethodInTrait() { - parent::usefulMethodInTrait(); - - return 1; - } - - public function uselessMethodInTrait() { - return parent::uselessMethodInTrait(); - } -} - -enum EnumFoo { - public function sniffShouldBailEarly() { - // Invalid code needed to ensure an error is NOT triggered and the sniff bails early when handling an enum method. - parent::sniffShouldBailEarly(); - } -} - -function shouldBailEarly() { - // Invalid code needed to ensure an error is NOT triggered and the sniff bails early when handling a regular function. - parent::shouldBailEarly(); -} - -$anon = new class extends ParentClass { - public function uselessOverridingMethod() { - parent::uselessOverridingMethod(); - } - - public function usefulOverridingMethod() { - $a = 10; - parent::usefulOverridingMethod($a); - } -}; - -function foo() { - $anon = new class extends ParentClass { - public function uselessOverridingMethod() { - parent::uselessOverridingMethod(); - } - }; -} - -class SniffShouldHandlePHPOpenCloseTagsCorrectly { - public function thisIsStillAUselessOverride($a, $b) { - return parent::thisIsStillAUselessOverride($a, $b) ?> - -
    HTML
    - 0; i--) print 'hello'; - -while (something) print 'hello'; - -do { - i--; -} while (something); - -do i++; while (i < 5); - -SomeClass.prototype.switch = function() { - // do something -}; - -if ($("#myid").rotationDegrees()=='90') - $('.modal').css({'transform': 'rotate(90deg)'}); - -if ($("#myid").rotationDegrees()=='90') - $foo = {'transform': 'rotate(90deg)'}; - -if (something) { - alert('hello'); -} else /* comment */ if (somethingElse) alert('hi'); diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/ControlStructures/InlineControlStructureUnitTest.1.js.fixed b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/ControlStructures/InlineControlStructureUnitTest.1.js.fixed deleted file mode 100644 index d410cfb1..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/ControlStructures/InlineControlStructureUnitTest.1.js.fixed +++ /dev/null @@ -1,44 +0,0 @@ - - -if (something) { print 'hello'; -} - -if (something) { - print 'hello'; -} else { print 'hi'; -} - -if (something) { - print 'hello'; -} else if (something) { print 'hi'; -} - -for (i; i > 0; i--) { print 'hello'; -} - -while (something) { print 'hello'; -} - -do { - i--; -} while (something); - -do { i++; -} while (i < 5); - -SomeClass.prototype.switch = function() { - // do something -}; - -if ($("#myid").rotationDegrees()=='90') { - $('.modal').css({'transform': 'rotate(90deg)'}); -} - -if ($("#myid").rotationDegrees()=='90') { - $foo = {'transform': 'rotate(90deg)'}; -} - -if (something) { - alert('hello'); -} else /* comment */ if (somethingElse) { alert('hi'); -} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/ControlStructures/InlineControlStructureUnitTest.2.js b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/ControlStructures/InlineControlStructureUnitTest.2.js deleted file mode 100644 index e26c3312..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/ControlStructures/InlineControlStructureUnitTest.2.js +++ /dev/null @@ -1,5 +0,0 @@ -// Intentional parse error (missing closing parenthesis). -// This should be the only test in this file. -// Testing that the sniff is *not* triggered. - -do i++; while (i < 5 diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/ControlStructures/InlineControlStructureUnitTest.3.js b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/ControlStructures/InlineControlStructureUnitTest.3.js deleted file mode 100644 index 9ccedcda..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/ControlStructures/InlineControlStructureUnitTest.3.js +++ /dev/null @@ -1,5 +0,0 @@ -// Intentional parse error (missing opening parenthesis). -// This should be the only test in this file. -// Testing that the sniff is *not* triggered. - -do i++; while diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Files/lowercased_filename_unit_test.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Files/lowercased_filename_unit_test.inc deleted file mode 100644 index b3d9bbc7..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Files/lowercased_filename_unit_test.inc +++ /dev/null @@ -1 +0,0 @@ -myfunc(&$myvar); -$this->myfunc($myvar); - -myclass::myfunc(&$myvar); -myclass::myfunc($myvar); - -while(testfunc($var1, &$var2, $var3, &$var4) === false) { -} - -sprintf("0%o", 0777 & $p); - -$foo(&$myvar); - -if (is_array($foo = &$this->bar())) { -} - -Hooks::run( 'SecondaryDataUpdates', [ $title, $old, $recursive, $parserOutput, &$updates ] ); - -$foo = Bar(&$fooBar); - -myfunc($myvar&$myvar); -myfunc($myvar[0]&$myvar); - -myfunc(myclass::MY_CONST&$myvar); -myfunc(MY_CONST&$myvar); - -efg( true == &$b ); -efg( true === &$b ); - -foo($a, bar(&$b)); -foo($a, array(&$b)); - -enum Foo {} -interface Foo {} -trait Foo {} - -$instance = new $var($a); -$instance = new MyClass($a); -$instance = new $var(&$a); -$instance = new MyClass(&$a); - -$anon = new class($a) {}; -$anon = new class(&$a) {}; - -class Foo extends Bar { - function myMethod() { - $a = new static($var); - $b = new self($var); - $c = new parent($var); - - $d = new static(&$var); - $e = new self(&$var); - $f = new parent(&$var); - } -} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Functions/CallTimePassByReferenceUnitTest.2.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Functions/CallTimePassByReferenceUnitTest.2.inc deleted file mode 100644 index 769c5d61..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Functions/CallTimePassByReferenceUnitTest.2.inc +++ /dev/null @@ -1,7 +0,0 @@ -getArray($one, $two,$three),$this->arrayMap); -$this->error($obj->getCode(),$obj->getMessage(),$obj->getFile(),$obj->getLine()); - -make_foo($string /*the string*/ , true /*test*/); -make_foo($string/*the string*/ , /*test*/ true); -make_foo($string /*the string*/, /*test*/ true); - -class MyClass { - function myFunction() { - blah($foo, "{{$config['host']}}", "{$config}", "hi there{}{}{{{}{}{}}"); - } -} - -// Function definition, not function call, so should be ignored -function &myFunction($arg1=1,$arg2=2) -{ -} - -return array_udiff( - $foo, - $bar, - function($a, $b) { - $foo='bar'; - return $foo; - } -); - -var_dump(<<{$var}($foo,$bar); - -(function ($a, $b) { - return function ($c, $d) use ($a, $b) { - echo $a, $b, $c, $d; - }; -})('a','b')('c','d'); - -my_function_call( - 'a' - /* Comment */ - ,'b' - , 'c' // Comment. - ,'d' - ,'e' // phpcs:ignore Standard.Category.Sniff -- for reasons. - , 'f' -); - -$foobar = php73_function_call_trailing_comma( - $foo, - $bar, -); - -$foobar = functionCallAnonClassParam( - new class() { - public $foo=1; - public function methodName($param='foo',$paramTwo='bar') { - $bar=false; - $foo = array(1,2,3); - } - }, - $args=array(), -); - -$result = myFunction(param1: $arg1, param2: $arg2); -$result = myFunction(param1: $arg1 , param2:$arg2); -$result = myFunction(param1: $arg1, param2:$arg2, param3: $arg3,param4:$arg4, param5:$arg5); - -class Testing extends Bar -{ - public static function baz($foo, $bar) - { - $a = new parent($foo, $bar); - $a = new parent($foo ,$bar); - } -} - -// Ignore spacing after PHP 7.3+ trailing comma in single-line function calls to prevent fixer conflicts. -// This is something which should be decided by a sniff dealing with the function call parentheses. -$foo = new MyClass($obj, 'getMethod',); -$foo = new MyClass($obj, 'getMethod', ); -$foo = new MyClass($obj, 'getMethod', ); -$foo = new MyClass( - $obj, - 'getMethod', -); - -#[AttributeName(1, 2)] -#[AttributeName(1,2)] - -$callable = myCallable(...); - -// Skip over PHP 7.4 arrow functions. -// While any commas belonging to the code within the arrow function would always need to be within parentheses -// or within a short array, so there aren't any false positives, the sniff also does not need to examine these, -// so will be more efficient skipping over arrow functions. -$foobar = functionCallFnParamA( - fn ($foo,$bar) => [1,2,3], - $args, -); - -$foobar = functionCallFnParamB(fn ($foo,$bar) => [1,2,3] ,$args); -$foobar = functionCallFnParamC($args, fn ($foo,$bar) => [1,2,3] , ); - -// Ignore spacing within PHP 8.0 match control structures, which may have their own rules. -$foobar = functionCallMatchParam( - match($foo) { - 1,2,3 => 'something',4,5,6 => 'else',default => 'works' - } , // But check the spacing again once the match expression has finished. - $args -); diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Functions/FunctionCallArgumentSpacingUnitTest.1.inc.fixed b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Functions/FunctionCallArgumentSpacingUnitTest.1.inc.fixed deleted file mode 100644 index a50f695e..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Functions/FunctionCallArgumentSpacingUnitTest.1.inc.fixed +++ /dev/null @@ -1,199 +0,0 @@ -getArray($one, $two, $three), $this->arrayMap); -$this->error($obj->getCode(), $obj->getMessage(), $obj->getFile(), $obj->getLine()); - -make_foo($string /*the string*/, true /*test*/); -make_foo($string/*the string*/, /*test*/ true); -make_foo($string /*the string*/, /*test*/ true); - -class MyClass { - function myFunction() { - blah($foo, "{{$config['host']}}", "{$config}", "hi there{}{}{{{}{}{}}"); - } -} - -// Function definition, not function call, so should be ignored -function &myFunction($arg1=1,$arg2=2) -{ -} - -return array_udiff( - $foo, - $bar, - function($a, $b) { - $foo='bar'; - return $foo; - } -); - -var_dump(<<{$var}($foo, $bar); - -(function ($a, $b) { - return function ($c, $d) use ($a, $b) { - echo $a, $b, $c, $d; - }; -})('a', 'b')('c', 'd'); - -my_function_call( - 'a', - /* Comment */ - 'b', - 'c', // Comment. - 'd', - 'e', // phpcs:ignore Standard.Category.Sniff -- for reasons. - 'f' -); - -$foobar = php73_function_call_trailing_comma( - $foo, - $bar, -); - -$foobar = functionCallAnonClassParam( - new class() { - public $foo=1; - public function methodName($param='foo',$paramTwo='bar') { - $bar=false; - $foo = array(1,2,3); - } - }, - $args=array(), -); - -$result = myFunction(param1: $arg1, param2: $arg2); -$result = myFunction(param1: $arg1, param2:$arg2); -$result = myFunction(param1: $arg1, param2:$arg2, param3: $arg3, param4:$arg4, param5:$arg5); - -class Testing extends Bar -{ - public static function baz($foo, $bar) - { - $a = new parent($foo, $bar); - $a = new parent($foo, $bar); - } -} - -// Ignore spacing after PHP 7.3+ trailing comma in single-line function calls to prevent fixer conflicts. -// This is something which should be decided by a sniff dealing with the function call parentheses. -$foo = new MyClass($obj, 'getMethod',); -$foo = new MyClass($obj, 'getMethod', ); -$foo = new MyClass($obj, 'getMethod', ); -$foo = new MyClass( - $obj, - 'getMethod', -); - -#[AttributeName(1, 2)] -#[AttributeName(1, 2)] - -$callable = myCallable(...); - -// Skip over PHP 7.4 arrow functions. -// While any commas belonging to the code within the arrow function would always need to be within parentheses -// or within a short array, so there aren't any false positives, the sniff also does not need to examine these, -// so will be more efficient skipping over arrow functions. -$foobar = functionCallFnParamA( - fn ($foo,$bar) => [1,2,3], - $args, -); - -$foobar = functionCallFnParamB(fn ($foo,$bar) => [1,2,3], $args); -$foobar = functionCallFnParamC($args, fn ($foo,$bar) => [1,2,3], ); - -// Ignore spacing within PHP 8.0 match control structures, which may have their own rules. -$foobar = functionCallMatchParam( - match($foo) { - 1,2,3 => 'something',4,5,6 => 'else',default => 'works' - }, // But check the spacing again once the match expression has finished. - $args -); diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Functions/FunctionCallArgumentSpacingUnitTest.2.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Functions/FunctionCallArgumentSpacingUnitTest.2.inc deleted file mode 100644 index f0ff633e..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Functions/FunctionCallArgumentSpacingUnitTest.2.inc +++ /dev/null @@ -1,7 +0,0 @@ - -
    - -
    - -
    - -
    - 30, - 'jan', 'mar', 'may', 'jul', 'aug', 'oct', 'dec' => 31, - 'feb' => is_leap_year($year) ? 29 : 28, - default => throw new InvalidArgumentException("Invalid month"), - } -} - - -function complexityFourteenWithMatch() -{ - return match(strtolower(substr($monthName, 0, 3))) { - 'jan' => 31, - 'feb' => is_leap_year($year) ? 29 : 28, - 'mar' => 31, - 'apr' => 30, - 'may' => 31, - 'jun' => 30, - 'jul' => 31, - 'aug' => 31, - 'sep' => 30, - 'oct' => 31, - 'nov' => 30, - 'dec' => 31, - default => throw new InvalidArgumentException("Invalid month"), - }; -} - - -function complexitySevenWithNullSafeOperator() -{ - $foo = $object1->getX()?->getY()?->getZ(); - $bar = $object2->getX()?->getY()?->getZ(); - $baz = $object3->getX()?->getY()?->getZ(); -} - - -function complexityElevenWithNullSafeOperator() -{ - $foo = $object1->getX()?->getY()?->getZ(); - $bar = $object2->getX()?->getY()?->getZ(); - $baz = $object3->getX()?->getY()?->getZ(); - $bacon = $object4->getX()?->getY()?->getZ(); - $bits = $object5->getX()?->getY()?->getZ(); -} - -abstract class AbstractClass { - abstract public function sniffShouldIgnoreAbstractMethods(); -} - -interface MyInterface { - public function sniffShouldIgnoreInterfaceMethods(); -} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Metrics/CyclomaticComplexityUnitTest.2.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Metrics/CyclomaticComplexityUnitTest.2.inc deleted file mode 100644 index 9658af30..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Metrics/CyclomaticComplexityUnitTest.2.inc +++ /dev/null @@ -1,7 +0,0 @@ - 5); - } - break; - } - } -} - -function nestingTen() -{ - if ($condition) { - echo 'hi'; - switch ($condition) - { - case '1': - if ($condition === '1') { - if ($cond) { - switch ($cond) { - case '1': - if ($cond === '1') { - foreach ($conds as $cond) { - if ($cond === 'hi') { - echo 'hi'; - } - } - } - break; - } - } - } - break; - } - } -} - -function nestingEleven() -{ - if ($condition) { - echo 'hi'; - switch ($condition) - { - case '1': - if ($condition === '1') { - if ($cond) { - try { - if ( $cond === '1' ) { - for ( $i = 0; $i < 10; $i ++ ) { - while ($i < 5) { - if ( $cond === 'hi' ) { - match ( $cond ) { - 'hi' => 'something', - }; - } - } - } - } - } catch (Exception $e) {} - } - } - break; - } - } -} - -abstract class AbstractClass { - abstract public function sniffShouldIgnoreAbstractMethods(); -} - -interface MyInterface { - public function sniffShouldIgnoreInterfaceMethods(); -} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Metrics/NestingLevelUnitTest.2.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Metrics/NestingLevelUnitTest.2.inc deleted file mode 100644 index 9658af30..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Metrics/NestingLevelUnitTest.2.inc +++ /dev/null @@ -1,7 +0,0 @@ -define('bar'); -$foo->getBar()->define('foo'); -Foo::define('bar'); - -class ClassConstBowOutTest { - const /* comment */ abc = 1; - const // phpcs:ignore Standard.Category.Sniff - some_constant = 2; -} - -$foo->getBar()?->define('foo'); - -// PHP 8.3 introduces typed constants. -class TypedConstants { - - const MyClass MYCONST = new MyClass; - const int VALID_NAME = 0; - final public const INT invalid_name = 0; - const FALSE false = false; // Yes, false can be used as a constant name, don't ask. - final protected const array ARRAY = array(); // Same goes for array. -} - -define /* comment */ ( /* comment */ 'CommentsInUnconventionalPlaces', 'value' ); - -define -// comment -( - // phpcs:ignore Stnd.Cat.SniffName -- for reasons. - 'CommentsInUnconventionalPlaces', - 'value' -); - -$foo-> /* comment */ define('bar'); -$foo?-> -// phpcs:ignore Stnd.Cat.SniffName -- for reasons. -define('bar'); - -const DEFINE = 'value'; - -#[Define('some param')] -class MyClass {} - -#[ - AttributeA, - define('some param') -] -class MyClass {} - -const MixedCase = 1; - -define('lower_case_name', 'value'); -define($var, 'sniff should bow out'); -define(constantName(), 'sniff should bow out'); -define($obj->constantName(), 'sniff should bow out'); -define(MyClass::constantName(), 'sniff should bow out'); -define(condition() ? 'name1' : 'name2', 'sniff should bow out'); - -$callable = define(...); - -// Valid if outside the global namespace. Sniff should bow out. -function define($param) {} - -class MyClass { - public function define($param) {} -} - -$a = ($cond) ? DEFINE : SOMETHING_ELSE; - -$object = new Define('value'); diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/NamingConventions/UpperCaseConstantNameUnitTest.2.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/NamingConventions/UpperCaseConstantNameUnitTest.2.inc deleted file mode 100644 index 4136912d..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/NamingConventions/UpperCaseConstantNameUnitTest.2.inc +++ /dev/null @@ -1,7 +0,0 @@ -NULL = 7; - -use Zend\Log\Writer\NULL as NullWriter; -new \Zend\Log\Writer\NULL(); - -namespace False; - -class True extends Null implements False {} - -use True\Something; -use Something\True; -class MyClass -{ - public function myFunction() - { - $var = array('foo' => new True()); - } -} - -$x = $f?FALSE:true; -$x = $f? FALSE:true; - -class MyClass -{ - // Spice things up a little. - const TRUE = false; -} - -var_dump(MyClass::TRUE); - -function tRUE() {} - -$input->getFilterChain()->attachByName('Null', ['type' => Null::TYPE_STRING]); - -// Issue #3332 - ignore type declarations, but not default values. -class TypedThings { - const MYCONST = FALSE; - - public int|FALSE $int = FALSE; - public Type|NULL $int = new MyObj(NULL); - - private function typed(int|FALSE $param = NULL, Type|NULL $obj = new MyObj(FALSE)) : string|FALSE|NULL - { - if (TRUE === FALSE) { - return NULL; - } - } -} - -$cl = function (int|FALSE $param = NULL, Type|NULL $obj = new MyObj(FALSE)) : string|FALSE|NULL {}; - -// Adding some extra tests to safeguard that function declarations which don't create scope are handled correctly. -interface InterfaceMethodsWithReturnTypeNoScopeOpener { - private function typed($param = TRUE) : string|FALSE|NULL; -} - -abstract class ClassMethodsWithReturnTypeNoScopeOpener { - abstract public function typed($param = FALSE) : TRUE; -} - -// Additional tests to safeguard improved property type skip logic. -readonly class Properties { - use SomeTrait { - sayHello as private myPrivateHello; - } - - public Type|FALSE|NULL $propertyA = array( - 'itemA' => TRUE, - 'itemB' => FALSE, - 'itemC' => NULL, - ), $propertyB = FALSE; - - protected \FullyQualified&Partially\Qualified&namespace\Relative $propertyC; - var ?TRUE $propertyD; - static array|callable|FALSE|self|parent $propertyE = TRUE; - private - // phpcs:ignore Stnd.Cat.Sniff -- for reasons. - TRUE /*comment*/ - $propertyF = TRUE; - - public function __construct( - public FALSE|NULL $promotedPropA, - readonly callable|TRUE $promotedPropB, - ) { - static $var; - echo static::class; - static::foo(); - $var = $var instanceof static; - $obj = new static(); - } - - public static function foo(): static|self|FALSE { - $callable = static function() {}; - } -} - -// PHP 8.3 introduces typed constants. -class TypedConstants { - const MyClass|NULL|TRUE|FALSE MYCONST = FALSE; -} - -// Global constants can not be typed. -const MYCONST = TRUE; diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/PHP/LowerCaseConstantUnitTest.1.inc.fixed b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/PHP/LowerCaseConstantUnitTest.1.inc.fixed deleted file mode 100644 index 96b1c78d..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/PHP/LowerCaseConstantUnitTest.1.inc.fixed +++ /dev/null @@ -1,153 +0,0 @@ -NULL = 7; - -use Zend\Log\Writer\NULL as NullWriter; -new \Zend\Log\Writer\NULL(); - -namespace False; - -class True extends Null implements False {} - -use True\Something; -use Something\True; -class MyClass -{ - public function myFunction() - { - $var = array('foo' => new True()); - } -} - -$x = $f?false:true; -$x = $f? false:true; - -class MyClass -{ - // Spice things up a little. - const TRUE = false; -} - -var_dump(MyClass::TRUE); - -function tRUE() {} - -$input->getFilterChain()->attachByName('Null', ['type' => Null::TYPE_STRING]); - -// Issue #3332 - ignore type declarations, but not default values. -class TypedThings { - const MYCONST = false; - - public int|FALSE $int = false; - public Type|NULL $int = new MyObj(null); - - private function typed(int|FALSE $param = null, Type|NULL $obj = new MyObj(false)) : string|FALSE|NULL - { - if (true === false) { - return null; - } - } -} - -$cl = function (int|FALSE $param = null, Type|NULL $obj = new MyObj(false)) : string|FALSE|NULL {}; - -// Adding some extra tests to safeguard that function declarations which don't create scope are handled correctly. -interface InterfaceMethodsWithReturnTypeNoScopeOpener { - private function typed($param = true) : string|FALSE|NULL; -} - -abstract class ClassMethodsWithReturnTypeNoScopeOpener { - abstract public function typed($param = false) : TRUE; -} - -// Additional tests to safeguard improved property type skip logic. -readonly class Properties { - use SomeTrait { - sayHello as private myPrivateHello; - } - - public Type|FALSE|NULL $propertyA = array( - 'itemA' => true, - 'itemB' => false, - 'itemC' => null, - ), $propertyB = false; - - protected \FullyQualified&Partially\Qualified&namespace\Relative $propertyC; - var ?TRUE $propertyD; - static array|callable|FALSE|self|parent $propertyE = true; - private - // phpcs:ignore Stnd.Cat.Sniff -- for reasons. - TRUE /*comment*/ - $propertyF = true; - - public function __construct( - public FALSE|NULL $promotedPropA, - readonly callable|TRUE $promotedPropB, - ) { - static $var; - echo static::class; - static::foo(); - $var = $var instanceof static; - $obj = new static(); - } - - public static function foo(): static|self|FALSE { - $callable = static function() {}; - } -} - -// PHP 8.3 introduces typed constants. -class TypedConstants { - const MyClass|NULL|TRUE|FALSE MYCONST = false; -} - -// Global constants can not be typed. -const MYCONST = true; diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/PHP/LowerCaseConstantUnitTest.2.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/PHP/LowerCaseConstantUnitTest.2.inc deleted file mode 100644 index c61a0a50..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/PHP/LowerCaseConstantUnitTest.2.inc +++ /dev/null @@ -1,4 +0,0 @@ -bar} -END; - -$heredoc = <<< "END" -some ${beers::softdrink} -END; - -$heredoc = <<< END -{${$object->getName()}} text -END; - -$heredoc = <<<"END" -some {${getName()}} -END; - -$heredoc = <<baz()()} -END; - -$heredoc = <<values[3]->name} text -END; - -$heredoc = <<<"END" -some ${$bar} -END; - -$heredoc = <<bar} text -END; - -$heredoc = <<<"END" -${foo["${bar}"]} text -END; - -$heredoc = <<{${'a'}}} text -END; - -$heredoc = <<{$baz[1]}} -END; - -$heredoc = <<john's wife greeted $people->robert. -END; - -$heredoc = <<bar} -END; - -$heredoc = <<< "END" -some ${beers::softdrink} -END; - -$heredoc = <<< END -{${$object->getName()}} text -END; - -$heredoc = <<<"END" -some {${getName()}} -END; - -$heredoc = <<baz()()} -END; - -$heredoc = <<values[3]->name} text -END; - -$heredoc = <<<"END" -some ${$bar} -END; - -$heredoc = <<bar} text -END; - -$heredoc = <<<"END" -${foo["${bar}"]} text -END; - -$heredoc = <<{${'a'}}} text -END; - -$heredoc = <<{$baz[1]}} -END; - -$heredoc = <<john's wife greeted $people->robert. -END; - -$heredoc = <<bar} - END; - -$heredoc = <<< "END" - some ${beers::softdrink} - END; - -$heredoc = <<< END - {${$object->getName()}} text - END; - -$heredoc = <<<"END" - some {${getName()}} - END; - -$heredoc = <<baz()()} - END; - -$heredoc = <<values[3]->name} text - END; - -$heredoc = <<<"END" - some ${$bar} - END; - -$heredoc = <<bar} text - END; - -$heredoc = <<<"END" - ${foo["${bar}"]} text - END; - -$heredoc = <<{${'a'}}} text - END; - -$heredoc = <<{$baz[1]}} - END; - -$heredoc = <<john's wife greeted $people->robert. - END; - -$heredoc = <<bar} - END; - -$heredoc = <<< "END" - some ${beers::softdrink} - END; - -$heredoc = <<< END - {${$object->getName()}} text - END; - -$heredoc = <<<"END" - some {${getName()}} - END; - -$heredoc = <<baz()()} - END; - -$heredoc = <<values[3]->name} text - END; - -$heredoc = <<<"END" - some ${$bar} - END; - -$heredoc = <<bar} text - END; - -$heredoc = <<<"END" - ${foo["${bar}"]} text - END; - -$heredoc = <<{${'a'}}} text - END; - -$heredoc = <<{$baz[1]}} - END; - -$heredoc = <<john's wife greeted $people->robert. - END; - -$heredoc = << - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Standards\Generic\Tests\Strings; - -use PHP_CodeSniffer\Tests\Standards\AbstractSniffUnitTest; - -/** - * Unit test class for the UnnecessaryHeredoc sniff. - * - * @covers \PHP_CodeSniffer\Standards\Generic\Sniffs\Strings\UnnecessaryHeredocSniff - */ -final class UnnecessaryHeredocUnitTest extends AbstractSniffUnitTest -{ - - - /** - * Returns the lines where errors should occur. - * - * The key of the array should represent the line number and the value - * should represent the number of errors that should occur on that line. - * - * @return array - */ - public function getErrorList() - { - return []; - - }//end getErrorList() - - - /** - * Returns the lines where warnings should occur. - * - * The key of the array should represent the line number and the value - * should represent the number of warnings that should occur on that line. - * - * @param string $testFile The name of the file being tested. - * - * @return array - */ - public function getWarningList($testFile='') - { - $warnings = [ - 100 => 1, - 104 => 1, - ]; - - switch ($testFile) { - case 'UnnecessaryHeredocUnitTest.1.inc': - return $warnings; - - case 'UnnecessaryHeredocUnitTest.2.inc': - if (PHP_VERSION_ID >= 70300) { - return $warnings; - } - - // PHP 7.2 or lower: PHP version which doesn't support flexible heredocs/nowdocs yet. - return []; - - default: - return []; - } - - }//end getWarningList() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Strings/UnnecessaryStringConcatUnitTest.1.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Strings/UnnecessaryStringConcatUnitTest.1.inc deleted file mode 100644 index d2ac790d..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Strings/UnnecessaryStringConcatUnitTest.1.inc +++ /dev/null @@ -1,34 +0,0 @@ -'; -$code = '<'.'?php '; - -$string = 'This is a really long string. ' - . 'It is being used for errors. ' - . 'The message is not translated.'; - -$shouldBail = 1 + 1; - -$shouldNotTrigger = 'My' . /* comment */ 'string'; -$shouldNotTrigger = 'My' /* comment */ . 'string'; - -// phpcs:set Generic.Strings.UnnecessaryStringConcat allowMultiline true -$string = 'Multiline strings are allowed ' - . 'when setting is enabled.'; -// phpcs:set Generic.Strings.UnnecessaryStringConcat allowMultiline false - -// phpcs:set Generic.Strings.UnnecessaryStringConcat error false -$throwWarning = 'My' . 'string'; -// phpcs:set Generic.Strings.UnnecessaryStringConcat error true diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Strings/UnnecessaryStringConcatUnitTest.2.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Strings/UnnecessaryStringConcatUnitTest.2.inc deleted file mode 100644 index 6a5fcba9..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/Strings/UnnecessaryStringConcatUnitTest.2.inc +++ /dev/null @@ -1,7 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Standards\Generic\Tests\WhiteSpace; - -use PHP_CodeSniffer\Tests\Standards\AbstractSniffUnitTest; - -/** - * Unit test class for the HereNowdocIdentifierSpacing sniff. - * - * @covers \PHP_CodeSniffer\Standards\Generic\Sniffs\WhiteSpace\HereNowdocIdentifierSpacingSniff - */ -final class HereNowdocIdentifierSpacingUnitTest extends AbstractSniffUnitTest -{ - - - /** - * Returns the lines where errors should occur. - * - * The key of the array should represent the line number and the value - * should represent the number of errors that should occur on that line. - * - * @return array - */ - public function getErrorList() - { - return [ - 11 => 1, - 15 => 1, - 19 => 1, - 23 => 1, - ]; - - }//end getErrorList() - - - /** - * Returns the lines where warnings should occur. - * - * The key of the array should represent the line number and the value - * should represent the number of warnings that should occur on that line. - * - * @return array - */ - public function getWarningList() - { - return []; - - }//end getWarningList() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/WhiteSpace/SpreadOperatorSpacingAfterUnitTest.1.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/WhiteSpace/SpreadOperatorSpacingAfterUnitTest.1.inc deleted file mode 100644 index 6c86ac0b..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Tests/WhiteSpace/SpreadOperatorSpacingAfterUnitTest.1.inc +++ /dev/null @@ -1,78 +0,0 @@ - $a[] = $b; - -class OnlyConstructorPropertyPromotion { - public function __construct( - public string $name = '', - protected $bar - ) {} -} - -class ConstructorPropertyPromotionMixedWithNormalParams { - public function __construct( - public string $name = '', - ?int $optionalParam = 0, - mixed $requiredParam, - ) {} -} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/PEAR/Tests/Functions/ValidDefaultValueUnitTest.2.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/PEAR/Tests/Functions/ValidDefaultValueUnitTest.2.inc deleted file mode 100644 index 3cfece7a..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/PEAR/Tests/Functions/ValidDefaultValueUnitTest.2.inc +++ /dev/null @@ -1,7 +0,0 @@ -hello(); // error here - } - - function hello() // error here - { // no error here as brackets can be put anywhere in the pear standard - echo 'hello'; - } - - function hello2() - { - if (TRUE) { // error here - echo 'hello'; // no error here as its more than 4 spaces. - } else { - echo 'bye'; // error here - } - - while (TRUE) { - echo 'hello'; // error here - } - - do { // error here - echo 'hello'; // error here - } while (TRUE); - } - - function hello3() - { - switch ($hello) { - case 'hello': - break; - } - } - -} - -?> -
    -
    -
    -validate()) {
    -    $safe = $form->getSubmitValues();
    -}
    -?>
    -
    -open(); // error here - } - - public function open() - { - // Some inline stuff that shouldn't error - if (TRUE) echo 'hello'; - foreach ($tokens as $token) echo $token; - } - - /** - * This is a comment 1. - * This is a comment 2. - * This is a comment 3. - * This is a comment 4. - */ - public function close() - { - // All ok. - if (TRUE) { - if (TRUE) { - } else if (FALSE) { - foreach ($tokens as $token) { - switch ($token) { - case '1': - case '2': - if (true) { - if (false) { - if (false) { - if (false) { - echo 'hello'; - } - } - } - } - break; - case '5': - break; - } - do { - while (true) { - foreach ($tokens as $token) { - for ($i = 0; $i < $token; $i++) { - echo 'hello'; - } - } - } - } while (true); - } - } - } - } - - /* - This is another c style comment 1. - This is another c style comment 2. - This is another c style comment 3. - This is another c style comment 4. - This is another c style comment 5. - */ - - /* - * - * - * - */ - - /** - */ - - /* - This comment has a newline in it. - - */ - - public function read() - { - echo 'hello'; - - // no errors below. - $array = array( - 'this', - 'that' => array( - 'hello', - 'hello again' => array( - 'hello', - ), - ), - ); - } -} - -abstract class Test3 -{ - public function parse() - { - - foreach ($t as $ndx => $token) { - if (is_array($token)) { - echo 'here'; - } else { - $ts[] = array("token" => $token, "value" => ''); - - $last = count($ts) - 1; - - switch ($token) { - case '(': - - if ($last >= 3 && - $ts[0]['token'] != T_CLASS && - $ts[$last - 2]['token'] == T_OBJECT_OPERATOR && - $ts[$last - 3]['token'] == T_VARIABLE ) { - - - if (true) { - echo 'hello'; - } - } - array_push($braces, $token); - break; - } - } - } - } -} - -function test() -{ - $o = << $b) { - $variable =$foo ? 'foo' :'bar'; - $variable.='text'.'text'; -} - -$foo+= $a&$b; -$foo = $a|$b; -$foo =$a^$b; -$foo = ~$a; -$foo *=$a<<$b; -$foo = $a>>$b; - -function foo(&$a,& $b) {} - -$foo = $a and$b; -$foo = $a or $b; -$foo = $a xor$b; -$foo = !$a; -$foo = $a&&$b; -$foo = $a||$b; - -$foo = $a instanceof Foo; -$foo = $a instanceof$b; - -$foo .= 'hi' - .= 'there'; - -$foo .= 'hi' -.= 'there'; - -$foo .= 'hi' // comment -.= 'there'; - -$foo/*comment*/=/*comment*/$a/*comment*/and/*comment*/$b; - -$foo .=//comment -'string' .=/*comment*/ -'string'; - -$foo = $foo ?: 'bar'; -$foo = $foo?:'bar'; - -try { -} catch (ExceptionType1|ExceptionType2 $e) { -} - -if (strpos($tokenContent, 'b"') === 0 && substr($tokenContent, -1) === '"') {} - -$oldConstructorPos = +1; -return -$content; - -function name($a = -1) {} - -$a =& $ref; -$a = [ 'a' => &$something ]; - -$fn = fn(array &$one) => 1; -$fn = fn(array & $one) => 1; - -$fn = static fn(DateTime $a, DateTime $b): int => -($a->getTimestamp() <=> $b->getTimestamp()); - -function issue3267(string|int ...$values) {} - -function setDefault(#[ImportValue( - constraints: [ - [ - Assert\Type::class, - ['type' => 'bool'], - ], - ] - )] ?bool $value = null): void - { - // Do something - } - -declare(strict_types=1); diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/PSR12/Tests/Operators/OperatorSpacingUnitTest.1.inc.fixed b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/PSR12/Tests/Operators/OperatorSpacingUnitTest.1.inc.fixed deleted file mode 100644 index 0f52f1cf..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/PSR12/Tests/Operators/OperatorSpacingUnitTest.1.inc.fixed +++ /dev/null @@ -1,79 +0,0 @@ - $b) { - $variable = $foo ? 'foo' : 'bar'; - $variable .= 'text' . 'text'; -} - -$foo += $a & $b; -$foo = $a | $b; -$foo = $a ^ $b; -$foo = ~$a; -$foo *= $a << $b; -$foo = $a >> $b; - -function foo(&$a,& $b) {} - -$foo = $a and $b; -$foo = $a or $b; -$foo = $a xor $b; -$foo = !$a; -$foo = $a && $b; -$foo = $a || $b; - -$foo = $a instanceof Foo; -$foo = $a instanceof $b; - -$foo .= 'hi' - .= 'there'; - -$foo .= 'hi' -.= 'there'; - -$foo .= 'hi' // comment -.= 'there'; - -$foo/*comment*/ = /*comment*/$a/*comment*/ and /*comment*/$b; - -$foo .= //comment -'string' .= /*comment*/ -'string'; - -$foo = $foo ?: 'bar'; -$foo = $foo ?: 'bar'; - -try { -} catch (ExceptionType1 | ExceptionType2 $e) { -} - -if (strpos($tokenContent, 'b"') === 0 && substr($tokenContent, -1) === '"') {} - -$oldConstructorPos = +1; -return -$content; - -function name($a = -1) {} - -$a =& $ref; -$a = [ 'a' => &$something ]; - -$fn = fn(array &$one) => 1; -$fn = fn(array & $one) => 1; - -$fn = static fn(DateTime $a, DateTime $b): int => -($a->getTimestamp() <=> $b->getTimestamp()); - -function issue3267(string|int ...$values) {} - -function setDefault(#[ImportValue( - constraints: [ - [ - Assert\Type::class, - ['type' => 'bool'], - ], - ] - )] ?bool $value = null): void - { - // Do something - } - -declare(strict_types=1); diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/PSR12/Tests/Operators/OperatorSpacingUnitTest.2.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/PSR12/Tests/Operators/OperatorSpacingUnitTest.2.inc deleted file mode 100644 index 3a0dbac3..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/PSR12/Tests/Operators/OperatorSpacingUnitTest.2.inc +++ /dev/null @@ -1,3 +0,0 @@ - - - - - - - -some text - - - - <<; - -echo <<<'EOD' -some text -EOD; - ]]> - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Docs/WhiteSpace/FunctionClosingBraceSpaceStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Docs/WhiteSpace/FunctionClosingBraceSpaceStandard.xml deleted file mode 100644 index ccbdfa21..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Docs/WhiteSpace/FunctionClosingBraceSpaceStandard.xml +++ /dev/null @@ -1,73 +0,0 @@ - - - - - - - { - -} -]]> - - - {} -]]> - - - - - - - - - { - } - -} -]]> - - - {} - -} -]]> - - - - - - - - - { - } - -} -]]> - - - { - - } - -} -]]> - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Docs/WhiteSpace/MemberVarSpacingStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Docs/WhiteSpace/MemberVarSpacingStandard.xml deleted file mode 100644 index a551af8a..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Docs/WhiteSpace/MemberVarSpacingStandard.xml +++ /dev/null @@ -1,91 +0,0 @@ - - - - - - - - - protected $var1 = 'value'; -} - ]]> - - - - protected $var1 = 'value'; -} - ]]> - - - - - - - - - - public $var2 = 'value2'; - - public $var3 = 'value3'; -} - ]]> - - - - - - public $var2 = 'value2'; - public $var3 = 'value3'; -} - ]]> - - - - - - - - - public $actions = array(); -}; - ]]> - - - - - public $actions = array(); -}; - ]]> - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Docs/WhiteSpace/ScopeClosingBraceStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Docs/WhiteSpace/ScopeClosingBraceStandard.xml deleted file mode 100644 index 3284df97..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Docs/WhiteSpace/ScopeClosingBraceStandard.xml +++ /dev/null @@ -1,59 +0,0 @@ - - - - - - - } - -if (!class_exists('Foo')) { - class Foo { - } -} - - - some output - ?> - ]]> - - - } - -if (!class_exists('Foo')) { - class Foo { -} - } - - - some output - ?> - ]]> - - - - - - - - } - ]]> - - - } - ]]> - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Docs/WhiteSpace/SuperfluousWhitespaceStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Docs/WhiteSpace/SuperfluousWhitespaceStandard.xml deleted file mode 100644 index b4ad03d0..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Docs/WhiteSpace/SuperfluousWhitespaceStandard.xml +++ /dev/null @@ -1,98 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - ]]> - - - - - - - - - - - - - echo 'code here'; -} - ]]> - - - - - - - - - - ]]> - - - - - - ]]> - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/Arrays/ArrayDeclarationUnitTest.3.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/Arrays/ArrayDeclarationUnitTest.3.inc deleted file mode 100644 index beb5ae1a..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/Arrays/ArrayDeclarationUnitTest.3.inc +++ /dev/null @@ -1,7 +0,0 @@ - $a; - -trait TestTrait { -}//end trait - -trait TestTrait { -} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/Commenting/ClosingDeclarationCommentUnitTest.1.inc.fixed b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/Commenting/ClosingDeclarationCommentUnitTest.1.inc.fixed deleted file mode 100644 index 8c690145..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/Commenting/ClosingDeclarationCommentUnitTest.1.inc.fixed +++ /dev/null @@ -1,117 +0,0 @@ - $a; - -trait TestTrait { -}//end trait - -trait TestTrait { -}//end trait diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/Commenting/ClosingDeclarationCommentUnitTest.2.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/Commenting/ClosingDeclarationCommentUnitTest.2.inc deleted file mode 100644 index 25913dd8..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/Commenting/ClosingDeclarationCommentUnitTest.2.inc +++ /dev/null @@ -1,7 +0,0 @@ - 0); - -do -{ - echo $i; -} while ($i > 0); - -do -{ - echo $i; -} -while ($i > 0); - -do { echo $i; } while ($i > 0); - -do{ - echo $i; -}while($i > 0); - -while ($i < 1) { - echo $i; -} - -while($i < 1){ - echo $i; -} - -while ($i < 1) { echo $i; } - -for ($i = 1; $i < 1; $i++) { - echo $i; -} - -for($i = 1; $i < 1; $i++){ - echo $i; -} - -for ($i = 1; $i < 1; $i++) { echo $i; } - -if ($i == 0) { - $i = 1; -} - -if($i == 0){ - $i = 1; -} - -if ($i == 0) { $i = 1; } - -if ($i == 0) { - $i = 1; -} else { - $i = 0; -} - -if ($i == 0) { - $i = 1; -}else{ - $i = 0; -} - -if ($i == 0) { $i = 1; } else { $i = 0; } - -if ($i == 0) { - $i = 1; -} else if ($i == 2) { - $i = 0; -} - -if ($i == 0) { - $i = 1; -}else if($i == 2){ - $i = 0; -} - -if ($i == 0) { $i = 1; } else if ($i == 2) { $i = 0; } - -if ($i == 0) { // comments are allowed - $i = 1; -} - -if ($i == 0) {// comments are allowed - $i = 1; -} - -if ($i == 0) { /* comments are allowed*/ - $i = 1; -} - -if ($i == 0) -{ // this is ok - $i = 1; -} - -if ($i == 0) /* this is ok */ { -} - -try { - $code = 'this'; -} catch (Exception $e) { - // Caught! -} - -try { $code = 'this'; } catch (Exception $e) { - // Caught! -} - -do { echo $i; -} while ($i > 0); - -if ($i === 0) { - - $i = 1 -} - -if ($a) { - -} -elseif ($b) { -} - -foreach ($items as $item) { - echo $item; -} - -foreach($items as $item){ - echo $item; -} - -if ($a && $b) // && $c) -{ -} - -if ($a == 5) : - echo "a equals 5"; - echo "..."; -elseif ($a == 6) : - echo "a equals 6"; - echo "!!!"; -else : - echo "a is neither 5 nor 6"; -endif; - -try { - // try body -} -catch (FirstExceptionType $e) { - // catch body -} -catch (OtherExceptionType $e) { - // catch body -} - -switch($foo) { - - case 'bar': - break; - -} - -if ($foo) : -endif; - -?> - -getRow()): ?> -

    - - - -
    - -
    - - - - - - - hello - - - - hello - - - - -getRow()) : ?> -

    - - - - - - - - hello - - - - hello - - 1, -}; - -$r = match($x){1 => 1}; - -// phpcs:set Squiz.ControlStructures.ControlSignature requiredSpacesBeforeColon 2 -if ($a == 5): - echo "a equals 5"; - echo "..."; -elseif ($a == 6) : - echo "a equals 6"; - echo "!!!"; -else : - echo "a is neither 5 nor 6"; -endif; - -// Reset property. -// phpcs:set Squiz.ControlStructures.ControlSignature requiredSpacesBeforeColon 1 diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/ControlStructures/ControlSignatureUnitTest.1.inc.fixed b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/ControlStructures/ControlSignatureUnitTest.1.inc.fixed deleted file mode 100644 index 03e6bf2c..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/ControlStructures/ControlSignatureUnitTest.1.inc.fixed +++ /dev/null @@ -1,324 +0,0 @@ - 0); - -do { - echo $i; -} while ($i > 0); - -do { - echo $i; -} while ($i > 0); - -do { -echo $i; } while ($i > 0); - -do { - echo $i; -} while ($i > 0); - -while ($i < 1) { - echo $i; -} - -while ($i < 1) { - echo $i; -} - -while ($i < 1) { -echo $i; } - -for ($i = 1; $i < 1; $i++) { - echo $i; -} - -for ($i = 1; $i < 1; $i++) { - echo $i; -} - -for ($i = 1; $i < 1; $i++) { -echo $i; } - -if ($i == 0) { - $i = 1; -} - -if ($i == 0) { - $i = 1; -} - -if ($i == 0) { -$i = 1; } - -if ($i == 0) { - $i = 1; -} else { - $i = 0; -} - -if ($i == 0) { - $i = 1; -} else { - $i = 0; -} - -if ($i == 0) { -$i = 1; } else { -$i = 0; } - -if ($i == 0) { - $i = 1; -} else if ($i == 2) { - $i = 0; -} - -if ($i == 0) { - $i = 1; -} else if ($i == 2) { - $i = 0; -} - -if ($i == 0) { -$i = 1; } else if ($i == 2) { -$i = 0; } - -if ($i == 0) { // comments are allowed - $i = 1; -} - -if ($i == 0) {// comments are allowed - $i = 1; -} - -if ($i == 0) { /* comments are allowed*/ - $i = 1; -} - -if ($i == 0) { // this is ok - $i = 1; -} - -if ($i == 0) { /* this is ok */ -} - -try { - $code = 'this'; -} catch (Exception $e) { - // Caught! -} - -try { -$code = 'this'; } catch (Exception $e) { - // Caught! -} - -do { -echo $i; -} while ($i > 0); - -if ($i === 0) { - - $i = 1 -} - -if ($a) { - -} elseif ($b) { -} - -foreach ($items as $item) { - echo $item; -} - -foreach ($items as $item) { - echo $item; -} - -if ($a && $b) { // && $c) -} - -if ($a == 5) : - echo "a equals 5"; - echo "..."; -elseif ($a == 6) : - echo "a equals 6"; - echo "!!!"; -else : - echo "a is neither 5 nor 6"; -endif; - -try { - // try body -} catch (FirstExceptionType $e) { - // catch body -} catch (OtherExceptionType $e) { - // catch body -} - -switch ($foo) { - - case 'bar': - break; - -} - -if ($foo) : -endif; - -?> - -getRow()) : ?> -

    - - - -
    - -
    - - - - - - - hello - - - - hello - - - - -getRow()): ?> -

    - - - - - - - - hello - - - - hello - - 1, -}; - -$r = match ($x) { -1 => 1}; - -// phpcs:set Squiz.ControlStructures.ControlSignature requiredSpacesBeforeColon 2 -if ($a == 5) : - echo "a equals 5"; - echo "..."; -elseif ($a == 6) : - echo "a equals 6"; - echo "!!!"; -else : - echo "a is neither 5 nor 6"; -endif; - -// Reset property. -// phpcs:set Squiz.ControlStructures.ControlSignature requiredSpacesBeforeColon 1 diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/ControlStructures/ControlSignatureUnitTest.2.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/ControlStructures/ControlSignatureUnitTest.2.inc deleted file mode 100644 index ef99b1a2..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/ControlStructures/ControlSignatureUnitTest.2.inc +++ /dev/null @@ -1,5 +0,0 @@ -i ; }; $i < function() { return $this->max; }; $i++) {} -for ($i = function() { return $this->i; }; $i < function() { return $this->max; } ; $i++) {} - -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration ignoreNewlines true -for ( - $i = 0; - $i < 5; - $i++ -) { - // body here -} -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration ignoreNewlines false diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/ControlStructures/ForLoopDeclarationUnitTest.1.inc.fixed b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/ControlStructures/ForLoopDeclarationUnitTest.1.inc.fixed deleted file mode 100644 index 85214c03..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/ControlStructures/ForLoopDeclarationUnitTest.1.inc.fixed +++ /dev/null @@ -1,92 +0,0 @@ -i ; }; $i < function() { return $this->max; }; $i++) {} -for ($i = function() { return $this->i; }; $i < function() { return $this->max; }; $i++) {} - -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration ignoreNewlines true -for ( - $i = 0; - $i < 5; - $i++ -) { - // body here -} -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration ignoreNewlines false diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/ControlStructures/ForLoopDeclarationUnitTest.1.js b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/ControlStructures/ForLoopDeclarationUnitTest.1.js deleted file mode 100644 index 94e1f748..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/ControlStructures/ForLoopDeclarationUnitTest.1.js +++ /dev/null @@ -1,122 +0,0 @@ -// Valid. -for (var i = 0; i < 10; i++) { -} - -// Invalid. -for ( i = 0; i < 10; i++ ) { -} - -for (i = 0; i < 10; i++) { -} - -for (var i = 0 ; i < 10 ; i++) { -} - -for (i = 0;i < 10;i++) { -} - -// The works. -for ( var i = 0 ; i < 10 ; i++ ) { -} - -this.formats = {}; -dfx.inherits('ContentFormat', 'Widget'); - -for (var widgetid in this.loadedContents) { - if (dfx.isset(widget) === true) { - widget.loadAutoSaveCWidgetStore.setData('activeScreen', null);widget.getContents(this.loadedContents[widgetid], function() {self.widgetLoaded(widget.id);}); - } -} - -for (var i = 0; i < 10;) { -} -for (var i = 0; i < 10; ) { -} - -for (var i = 0; ; i++) { -} -for (var i = 0;; i++) { -} - -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration requiredSpacesAfterOpen 1 -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration requiredSpacesBeforeClose 1 -for (var i = 0; i < 10; i++) {} -for ( var i = 0; i < 10; i++ ) {} -for ( var i = 0; i < 10; i++ ) {} -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration requiredSpacesAfterOpen 0 -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration requiredSpacesBeforeClose 0 - -for ( ; i < 10; i++) {} -for (; i < 10; i++) {} - -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration requiredSpacesAfterOpen 1 -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration requiredSpacesBeforeClose 1 -for ( ; i < 10; i++ ) {} -for ( ; i < 10; i++ ) {} -for (; i < 10; i++ ) {} - -for ( i = 0; i < 10; ) {} -for ( i = 0; i < 10;) {} -for ( i = 0; i < 10; ) {} -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration requiredSpacesAfterOpen 0 -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration requiredSpacesBeforeClose 0 - -// Test handling of comments and inline annotations. -for ( /*phpcs:enable*/ i = 0 /*start*/ ; /*end*/i < 10/*comment*/; i++ /*comment*/ ) {} - -// Test multi-line FOR control structure. -for ( - i = 0; - i < 10; - i++ -) {} - -// Test multi-line FOR control structure with comments and annotations. -for ( - i = 0; /* Start */ - i < 10; /* phpcs:ignore Standard.Category.SniffName -- for reasons. */ - i++ // comment - -) {} - -// Test fixing each error in one go. Note: lines 84 + 88 contain trailing whitespace on purpose. -for ( - - - i = 0 - - ; - - i < 10 - - ; - - i++ - - -) {} - -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration requiredSpacesAfterOpen 1 -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration requiredSpacesBeforeClose 1 -for ( - - - - i = 0 - - ; - - i < 10 - - ; - - i++ - - -) {} -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration requiredSpacesAfterOpen 0 -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration requiredSpacesBeforeClose 0 - -// Test with semicolon not belonging to for. -for (i = function() {self.widgetLoaded(widget.id) ; }; i < function() {self.widgetLoaded(widget.id);}; i++) {} -for (i = function() {self.widgetLoaded(widget.id);}; i < function() {self.widgetLoaded(widget.id);} ; i++) {} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/ControlStructures/ForLoopDeclarationUnitTest.1.js.fixed b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/ControlStructures/ForLoopDeclarationUnitTest.1.js.fixed deleted file mode 100644 index fbf9b609..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/ControlStructures/ForLoopDeclarationUnitTest.1.js.fixed +++ /dev/null @@ -1,88 +0,0 @@ -// Valid. -for (var i = 0; i < 10; i++) { -} - -// Invalid. -for (i = 0; i < 10; i++) { -} - -for (i = 0; i < 10; i++) { -} - -for (var i = 0; i < 10; i++) { -} - -for (i = 0; i < 10; i++) { -} - -// The works. -for (var i = 0; i < 10; i++) { -} - -this.formats = {}; -dfx.inherits('ContentFormat', 'Widget'); - -for (var widgetid in this.loadedContents) { - if (dfx.isset(widget) === true) { - widget.loadAutoSaveCWidgetStore.setData('activeScreen', null);widget.getContents(this.loadedContents[widgetid], function() {self.widgetLoaded(widget.id);}); - } -} - -for (var i = 0; i < 10;) { -} -for (var i = 0; i < 10;) { -} - -for (var i = 0;; i++) { -} -for (var i = 0;; i++) { -} - -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration requiredSpacesAfterOpen 1 -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration requiredSpacesBeforeClose 1 -for ( var i = 0; i < 10; i++ ) {} -for ( var i = 0; i < 10; i++ ) {} -for ( var i = 0; i < 10; i++ ) {} -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration requiredSpacesAfterOpen 0 -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration requiredSpacesBeforeClose 0 - -for (; i < 10; i++) {} -for (; i < 10; i++) {} - -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration requiredSpacesAfterOpen 1 -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration requiredSpacesBeforeClose 1 -for ( ; i < 10; i++ ) {} -for ( ; i < 10; i++ ) {} -for ( ; i < 10; i++ ) {} - -for ( i = 0; i < 10; ) {} -for ( i = 0; i < 10; ) {} -for ( i = 0; i < 10; ) {} -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration requiredSpacesAfterOpen 0 -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration requiredSpacesBeforeClose 0 - -// Test handling of comments and inline annotations. -for (/*phpcs:enable*/ i = 0 /*start*/; /*end*/i < 10/*comment*/; i++ /*comment*/) {} - -// Test multi-line FOR control structure. -for (i = 0; i < 10; i++) {} - -// Test multi-line FOR control structure with comments and annotations. -for (i = 0; /* Start */ - i < 10; /* phpcs:ignore Standard.Category.SniffName -- for reasons. */ - i++ // comment - -) {} - -// Test fixing each error in one go. Note: lines 84 + 88 contain trailing whitespace on purpose. -for (i = 0; i < 10; i++) {} - -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration requiredSpacesAfterOpen 1 -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration requiredSpacesBeforeClose 1 -for ( i = 0; i < 10; i++ ) {} -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration requiredSpacesAfterOpen 0 -// phpcs:set Squiz.ControlStructures.ForLoopDeclaration requiredSpacesBeforeClose 0 - -// Test with semicolon not belonging to for. -for (i = function() {self.widgetLoaded(widget.id) ; }; i < function() {self.widgetLoaded(widget.id);}; i++) {} -for (i = function() {self.widgetLoaded(widget.id);}; i < function() {self.widgetLoaded(widget.id);}; i++) {} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/ControlStructures/ForLoopDeclarationUnitTest.2.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/ControlStructures/ForLoopDeclarationUnitTest.2.inc deleted file mode 100644 index a327cced..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/ControlStructures/ForLoopDeclarationUnitTest.2.inc +++ /dev/null @@ -1,6 +0,0 @@ -words[$wordPos-1]) || $this->words[$wordPos-1] !== ' ') { -} else if ($this->tokens[$pos + 1] === "\n") { -} - -if ($pos === count($this->tokens) - 1) { - $file = '...'.substr($file, (($padding * -1) + 3)); -} - -if (substr($basename, -5) !== 'Sniff') { - $i = ($this->_tokens[$i]['parenthesis_closer'] + 1); -} - -$pos = $this->_getShortCommentEndPos(); -if ($pos === -1) { - $stackPtr = ($tokens[$next][$to] - 1); - $stackPtr = ($tokens[$next][$pattern[$i]['to']] + 1); - $var = (($var1 + $var2) + $var3 + $var4) -} - -$commentStart = ($phpcsFile->findPrevious(T_DOC_COMMENT, ($commentEnd - 1), null, true) + 1); -$commentEnd = ($this->_phpcsFile->findNext(T_DOC_COMMENT, ($commentStart + 1), null, true) - 1); -$expected .= '...'.substr($tokens[($stackPtr - 2)]['content'], -5).$tokens[$stackPtr]['content']; - -if (($tokens[$nextToken - 1]['code']) !== T_WHITESPACE) { - $errorPos = ($params[(count($params) - 1)]->getLine() + $commentStart); -} - -while (($nextSpace = $phpcsFile->findNext(T_WHITESPACE, $nextSpace + 1, $nextBreak)) !== false) { -} - -foreach ($attributes as $id => &$attribute) { -} - -class MyClass -{ - - - public function &myFunction(array &$one, array &$two) - { - - }//end myFunction() - - -}//end class - -if ($index < -1) $index = 0; -if ($index < - 1) $index = 0; - -$three = ceil($one / $two); -$three = ceil(($one / $two) / $four); -$three = ceil($one / ($two / $four)); - -$four = -0.25; - -$three = ceil($one[1] / $two); - -switch ($number % 10) { - case -1: - $suffix = 'st'; - break; -} - -$expectedPermission = array( - 'granted' => 4, - 'denied' => 1, - 'cascade' => TRUE, - 'blockergranted' => 2, - 'blockerdenied' => - 3, - 'effective' => TRUE, - ); - -$value = (int) isset($blah) + 2; -$value = (int) isset($blah) + (int) isset($foo) + (int) isset($bar); - -doSomething(getValue($var, 2)) - $y; - -$codeFiles = array($global => $codeFiles[$global]) + $codeFiles; - -$var = array(-1); -$var = [-1]; -$var = [0, -1, -2]; - -$cntPages = ceil(count($items) / self::ON_PAGE); - -error_reporting(E_ALL & ~E_NOTICE & ~E_WARNING); -error_reporting(E_ALL & ~E_NOTICE | ~E_WARNING); -$results = $stmt->fetchAll(\PDO::FETCH_ASSOC | \PDO::FETCH_GROUP | \PDO::FETCH_UNIQUE); -$di = new \RecursiveDirectoryIterator($path, \RecursiveDirectoryIterator::SKIP_DOTS | \FilesystemIterator::FOLLOW_SYMLINKS); -foo(1 + 2 + 3); - -if (empty($foo[-1]) === true) { - $foo[-1] = 'foo'; -} - -try { -} catch (AException | BException $e) { -} - -$var = $foo['blah'] + []; - -$a = 2 * ${x} - ${minus}; - -$foo = $bar ?? $baz ?? ''; - -$foo = $myString{-1}; - -$value = (binary) $blah + b"binary $foo"; - -$test = (1 * static::TEST); -$test = myfunc(1 * static::TEST); - -$errorPos = $params[$x]?->getLine() + $commentStart; - -$foo = $this->gmail ?? $this->gmail = new Google_Service_Gmail($this->google); - -exit -1; - -$expr = match ($number - 10) { - -1 => 0, -}; - -$expr = match ($number % 10) { - 1 => 2 * $num, -}; - -$expr = match (true) { - $num * 100 > 500 => 'expression in key', -}; - -// PHP 8.0 named parameters. -if ($pos === count(value: $this->tokens) - 1) { - $file = '...'.substr(string: $file, offset: $padding * -1 + 3); -} - -match ($a) { - 'a' => -1, - 'b', 'c', 'd' => -2, - default => -3, -}; - -$cntPages = ceil(count($items) / parent::ON_PAGE); diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/Formatting/OperatorBracketUnitTest.1.inc.fixed b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/Formatting/OperatorBracketUnitTest.1.inc.fixed deleted file mode 100644 index 9fa0216c..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/Formatting/OperatorBracketUnitTest.1.inc.fixed +++ /dev/null @@ -1,203 +0,0 @@ -words[($wordPos-1)]) || $this->words[($wordPos-1)] !== ' ') { -} else if ($this->tokens[($pos + 1)] === "\n") { -} - -if ($pos === (count($this->tokens) - 1)) { - $file = '...'.substr($file, (($padding * -1) + 3)); -} - -if (substr($basename, -5) !== 'Sniff') { - $i = ($this->_tokens[$i]['parenthesis_closer'] + 1); -} - -$pos = $this->_getShortCommentEndPos(); -if ($pos === -1) { - $stackPtr = ($tokens[$next][$to] - 1); - $stackPtr = ($tokens[$next][$pattern[$i]['to']] + 1); - $var = (($var1 + $var2) + $var3 + $var4) -} - -$commentStart = ($phpcsFile->findPrevious(T_DOC_COMMENT, ($commentEnd - 1), null, true) + 1); -$commentEnd = ($this->_phpcsFile->findNext(T_DOC_COMMENT, ($commentStart + 1), null, true) - 1); -$expected .= '...'.substr($tokens[($stackPtr - 2)]['content'], -5).$tokens[$stackPtr]['content']; - -if (($tokens[($nextToken - 1)]['code']) !== T_WHITESPACE) { - $errorPos = ($params[(count($params) - 1)]->getLine() + $commentStart); -} - -while (($nextSpace = $phpcsFile->findNext(T_WHITESPACE, ($nextSpace + 1), $nextBreak)) !== false) { -} - -foreach ($attributes as $id => &$attribute) { -} - -class MyClass -{ - - - public function &myFunction(array &$one, array &$two) - { - - }//end myFunction() - - -}//end class - -if ($index < -1) $index = 0; -if ($index < - 1) $index = 0; - -$three = ceil($one / $two); -$three = ceil(($one / $two) / $four); -$three = ceil($one / ($two / $four)); - -$four = -0.25; - -$three = ceil($one[1] / $two); - -switch ($number % 10) { - case -1: - $suffix = 'st'; - break; -} - -$expectedPermission = array( - 'granted' => 4, - 'denied' => 1, - 'cascade' => TRUE, - 'blockergranted' => 2, - 'blockerdenied' => - 3, - 'effective' => TRUE, - ); - -$value = ((int) isset($blah) + 2); -$value = ((int) isset($blah) + (int) isset($foo) + (int) isset($bar)); - -(doSomething(getValue($var, 2)) - $y); - -$codeFiles = (array($global => $codeFiles[$global]) + $codeFiles); - -$var = array(-1); -$var = [-1]; -$var = [0, -1, -2]; - -$cntPages = ceil(count($items) / self::ON_PAGE); - -error_reporting(E_ALL & ~E_NOTICE & ~E_WARNING); -error_reporting(E_ALL & ~E_NOTICE | ~E_WARNING); -$results = $stmt->fetchAll(\PDO::FETCH_ASSOC | \PDO::FETCH_GROUP | \PDO::FETCH_UNIQUE); -$di = new \RecursiveDirectoryIterator($path, (\RecursiveDirectoryIterator::SKIP_DOTS | \FilesystemIterator::FOLLOW_SYMLINKS)); -foo(1 + 2 + 3); - -if (empty($foo[-1]) === true) { - $foo[-1] = 'foo'; -} - -try { -} catch (AException | BException $e) { -} - -$var = ($foo['blah'] + []); - -$a = 2 * ${x} - ${minus}; - -$foo = ($bar ?? $baz ?? ''); - -$foo = $myString{-1}; - -$value = ((binary) $blah + b"binary $foo"); - -$test = (1 * static::TEST); -$test = myfunc(1 * static::TEST); - -$errorPos = ($params[$x]?->getLine() + $commentStart); - -$foo = ($this->gmail ?? $this->gmail = new Google_Service_Gmail($this->google)); - -exit -1; - -$expr = match ($number - 10) { - -1 => 0, -}; - -$expr = match ($number % 10) { - 1 => (2 * $num), -}; - -$expr = match (true) { - ($num * 100) > 500 => 'expression in key', -}; - -// PHP 8.0 named parameters. -if ($pos === (count(value: $this->tokens) - 1)) { - $file = '...'.substr(string: $file, offset: ($padding * -1 + 3)); -} - -match ($a) { - 'a' => -1, - 'b', 'c', 'd' => -2, - default => -3, -}; - -$cntPages = ceil(count($items) / parent::ON_PAGE); diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/Formatting/OperatorBracketUnitTest.2.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/Formatting/OperatorBracketUnitTest.2.inc deleted file mode 100644 index 1284f121..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/Formatting/OperatorBracketUnitTest.2.inc +++ /dev/null @@ -1,7 +0,0 @@ -fetch(PDO::FETCH_NUM)) { - $result[$row[0]] = array(); - $result[$row[0]][] = $current; - - self::$_inTransaction = TRUE; - parent::$_inTransaction = TRUE; - static::$_inTransaction = TRUE; - $$varName = $varValue; - } - -}//end getVar() - -class myClass -{ - private static $_dbh = NULL; - public $dbh = NULL; - protected $dbh = NULL; - var $dbh = NULL; // Old PHP4 compatible code. -} - -A::$a = 'b'; -\A::$a = 'c'; -\A\B\C::$d = 'd'; -B\C::$d = 'e'; - -@$a = 1; - -$a = []; -foreach ($a as $b) - $c = 'd'; - -$var = $var2; -list ($a, $b) = explode(',', $c); -$var1 ? $var2 = 0 : $var2 = 1; - -$obj->$classVar = $prefix.'-'.$type; - -$closureWithDefaultParamter = function(array $testArray=array()) {}; -?> - - - 10, - false => 0 - }, -]; - -$arrow_function = fn ($a = null) => $a; - -function ($html) { - $regEx = '/regexp/'; - - return preg_replace_callback($regEx, function ($matches) { - [$all] = $matches; - return $all; - }, $html); -}; - - -function () { - $a = false; - - some_label: - - $b = getB(); -}; - -?> - - -// Issue PHPCSStandards/PHP_CodeSniffer#537. - - - - - - - - - - - - -field = $result; -$filtered_results->$field = $result; -$filtered_results->$row->field = $result; -$filtered_results->$row->$field = $result; - -$filtered_results[ $i ]->field = $result; -$filtered_results[ $i ]->$field = $result; -$filtered_results[ $i ]->$row->field = $result; -$filtered_results[ $i ]->$row->$field = $result; -$filtered_results[ $i ]->$row[0]->field = $result; -$filtered_results[ $i ]->$row[$j]->$field = $result; diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/PHP/DisallowMultipleAssignmentsUnitTest.2.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/PHP/DisallowMultipleAssignmentsUnitTest.2.inc deleted file mode 100644 index 3befd507..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/PHP/DisallowMultipleAssignmentsUnitTest.2.inc +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - - - - - - - - - - - - - $j && $k< $l && $m>= $n && $o<= $p && $q<> $r; - -$a ==$b && $c !=$d && $e ===$f && $g !==$h; -$i >$j && $k <$l && $m >=$n && $o <=$p && $q <>$r; - -function myFunction($variable=0, $var2='string') {} - -if (index > -1) { -} - -array_walk_recursive($array, function(&$item) use (&$something) { -}); - -$var = saveFile(&$model, &$foo); - -// This is all valid. -$boo = -$foo; -function foo($boo = -1) {} -$foo = array('boo' => -1); -$x = $test ? -1 : 1; -$y = $test ? 1 : -1; -$z = $test ?: false; - -$closureWithDefaultParameter = function (array $testArray=array()) {}; - -switch ($foo) { - case -1: - break; -} - -$y = 1 * -1; -$y = -1 * 1; -$y = -1 * $var; -$y = 10 / -2; -$y = -10 / 2; -$y = (-10 / 2); -$y = (-10 / $var); -$y = 10 + -2; -$y = -10 + 2; - -$a = $x?$y:$z; -$a = $x ? $y : $z; - -$y = 1 - + 2 - - 3; - -$y = 1 + - 2 - - 3; - -$y = 1 -+ 2 -- 3; - -// phpcs:set Squiz.WhiteSpace.OperatorSpacing ignoreNewlines true -$y = 1 - + 2 - - 3; - -$y = 1 + - 2 - - 3; - -$y = 1 -+ 2 -- 3; -// phpcs:set Squiz.WhiteSpace.OperatorSpacing ignoreNewlines false - -if (true || -1 == $b) { -} - -$var = array(-1); -$var = [-1]; -$var = [0, -1, -2]; - -$y = array(&$x); -$y = [&$x]; -$y = array(&$a, &$b, &$c); -$y = [&$a, &$b, &$c]; -$y = array(&$a => 1, 2 => &$b, &$c); -$y = [&$a => 1, 2 => &$b, &$c]; - -if ($a <=> $b) { -} - -if ($a <=>$b) { -} - -$a |= $b; -$a **= $b; -$a ??= $b; - -$a = +1; - -function bar($boo = +1) {} - -$username = $_GET['user']??'nobody'; - -function foo(string $bar, array $baz, ?MyClass $object) : MyClass {} - -declare(strict_types=1); - -function foo($c = ((BAR)?10:100)) {} - -$res = $a ?: $b; -$res = $a ?: $b; -$res = $a ?: $b; -$res = $a ?: $b; - -$res = $a ? : $b; -$res = $a ? : $b; -$res = $a ? : $b; -$res = $a ? : $b; - -function foo(string $a = '', ?string $b = ''): ?string {} - -// Issue #1605. -$text = preg_replace_callback( - self::CHAR_REFS_REGEX, - [ 'Sanitizer', 'decodeCharReferencesCallback' ], - $text, /* limit */ -1, $count ); - -if (true || /* test */ -1 == $b) {} -$y = 10 + /* test */ -2; - -// Issue #1604. -Hooks::run( 'ParserOptionsRegister', [ - &self::$defaults, - &self::$inCacheKey, - &self::$lazyOptions, -] ); - -$x = $foo ? function (): int { - return 1; -} : $bar; - -$x = $foo ? function ($foo) - // comment - : int { - return 1; -} : $bar; - -$x = $foo ? function ($foo) use /* comment */ ($bar): int { - return 1; -} : $bar; - -$x = !$foo ? $bar : function (): int { - return 1; -}; - -$a = - // Comment. - [ - 'a', - 'b', - ]; - -$a = -// phpcs:ignore Standard.Category.Sniff -- for reasons. -[ - 'a', - 'b', -]; - -$foo = is_array($bar) ? array_map( - function () {}, - $bar - ) : $bar; - -function bar(): array {} - -if ($line{-1} === ':') { - $line = substr($line, 0, -1); -} - -$a = $a instanceof $b; -$a = $a instanceof $b; -$a = ($a)instanceof$b; - -fn&($x) => $x; - -// phpcs:set Squiz.WhiteSpace.OperatorSpacing ignoreSpacingBeforeAssignments false -$a = 3; -// phpcs:set Squiz.WhiteSpace.OperatorSpacing ignoreSpacingBeforeAssignments true -yield -1; -echo -1; -$a = -1; -func(-1); -$a = [-1]; -return -1; -print -1; -$a &= -1; -switch ($a) { - case -1: -} -$a = $a ?? -1; -$a .= -1; -$a /= -1; -$a = [1 => -1]; -$a = $a == -1; -$a = $a >= -1; -$a = $a === -1; -$a = $a != -1; -$a = $a !== -1; -$a = $a <= -1; -$a = $a <=> -1; -$a = $a and -1; -$a = $a or -1; -$a = $a xor -1; -$a -= -1; -$a %= -1; -$a *= -1; -$a |= -1; -$a += -1; -$a = $a ** -1; -$a **= -1; -$a = $a << -1; -$a <<= -1; -$a = $a >> -1; -$a >>= -1; -$a = (string) -1; -$a = (array) -1; -$a = (bool) -1; -$a = (object) -1; -$a = (unset) -1; -$a = (float) -1; -$a = (int) -1; -$a ^= -1; -$a = [$a, -1]; -$a = $a[-1]; -$a = $a ? -1 : -1; - -yield - 1; -echo - 1; -$a = - 1; -func(- 1); -$a = [- 1]; -return - 1; -print - 1; -$a &= - 1; -switch ($a) { - case - 1: -} -$a = $a ?? - 1; -$a .= - 1; -$a /= - 1; -$a = [1 => - 1]; -$a = $a == - 1; -$a = $a >= - 1; -$a = $a === - 1; -$a = $a != - 1; -$a = $a !== - 1; -$a = $a <= - 1; -$a = $a <=> - 1; -$a = $a and - 1; -$a = $a or - 1; -$a = $a xor - 1; -$a -= - 1; -$a %= - 1; -$a *= - 1; -$a |= - 1; -$a += - 1; -$a = $a ** - 1; -$a **= - 1; -$a = $a << - 1; -$a <<= - 1; -$a = $a >> - 1; -$a >>= - 1; -$a = (string) - 1; -$a = (array) - 1; -$a = (bool) - 1; -$a = (object) - 1; -$a = (unset) - 1; -$a = (float) - 1; -$a = (int) - 1; -$a ^= - 1; -$a = [$a, - 1]; -$a = $a[- 1]; -$a = $a ? - 1 : - 1; - - -yield -$b; -echo -$b; -$a = -$b; -func(-$b); -$a = [-$b]; -return -$b; -print -$b; -$a &= -$b; -switch ($a) { - case -$b: -} -$a = $a ?? -$b; -$a .= -$b; -$a /= -$b; -$a = [1 => -$b]; -$a = $a == -$b; -$a = $a >= -$b; -$a = $a === -$b; -$a = $a != -$b; -$a = $a !== -$b; -$a = $a <= -$b; -$a = $a <=> -$b; -$a = $a and -$b; -$a = $a or -$b; -$a = $a xor -$b; -$a -= -$b; -$a %= -$b; -$a *= -$b; -$a |= -$b; -$a += -$b; -$a = $a ** -$b; -$a **= -$b; -$a = $a << -$b; -$a <<= -$b; -$a = $a >> -$b; -$a >>= -$b; -$a = (string) -$b; -$a = (array) -$b; -$a = (bool) -$b; -$a = (object) -$b; -$a = (unset) -$b; -$a = (float) -$b; -$a = (int) -$b; -$a ^= -$b; -$a = [$a, -$b]; -$a = $a[-$b]; -$a = $a ? -$b : -$b; - -yield - $b; -echo - $b; -$a = - $b; -func(- $b); -$a = [- $b]; -return - $b; -print - $b; -$a &= - $b; -switch ($a) { - case - $b: -} -$a = $a ?? - $b; -$a .= - $b; -$a /= - $b; -$a = [1 => - $b]; -$a = $a == - $b; -$a = $a >= - $b; -$a = $a === - $b; -$a = $a != - $b; -$a = $a !== - $b; -$a = $a <= - $b; -$a = $a <=> - $b; -$a = $a and - $b; -$a = $a or - $b; -$a = $a xor - $b; -$a -= - $b; -$a %= - $b; -$a *= - $b; -$a |= - $b; -$a += - $b; -$a = $a ** - $b; -$a **= - $b; -$a = $a << - $b; -$a <<= - $b; -$a = $a >> - $b; -$a >>= - $b; -$a = (string) - $b; -$a = (array) - $b; -$a = (bool) - $b; -$a = (object) - $b; -$a = (unset) - $b; -$a = (float) - $b; -$a = (int) - $b; -$a ^= - $b; -$a = [$a, - $b]; -$a = $a[- $b]; -$a = $a ? - $b : - $b; - -exit -1; - -$cl = function ($boo =-1) {}; -$cl = function ($boo =+1) {}; -$fn = fn ($boo =-1) => $boo; -$fn = fn ($boo =+1) => $boo; - -$fn = static fn(DateTime $a, DateTime $b): int => -($a->getTimestamp() <=> $b->getTimestamp()); - -$a = 'a '.-MY_CONSTANT; -$a = 'a '.-$b; -$a = 'a '.- MY_CONSTANT; -$a = 'a '.- $b; - -match ($a) { - 'a' => -1, - 'b', 'c', 'd' => -2, - default => -3, -}; - -$foo = $var - ? 10 - : true; - -// Safeguard that a non-fixable error is thrown when there is a new line before the operator, -// but the last non-whitespace token before the operator is a comment token. -$foo = $var // Comment - ? false /* Comment */ - : true; - -$foo = $var // phpcs: ignore Stnd.Cat.Sniff -- for reasons. - - - ? $something /** - * Don't ask, but someone might have a docblock between the lines. It's valid PHP after all. - */ - - - : true; - -// phpcs:set Squiz.WhiteSpace.OperatorSpacing ignoreNewlines true -$foo = $var // Comment - ? false // Comment - : true; -// phpcs:set Squiz.WhiteSpace.OperatorSpacing ignoreNewlines false diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/WhiteSpace/OperatorSpacingUnitTest.1.inc.fixed b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/WhiteSpace/OperatorSpacingUnitTest.1.inc.fixed deleted file mode 100644 index 5c94e365..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/WhiteSpace/OperatorSpacingUnitTest.1.inc.fixed +++ /dev/null @@ -1,502 +0,0 @@ - $j && $k < $l && $m >= $n && $o <= $p && $q <> $r; - -$a == $b && $c != $d && $e === $f && $g !== $h; -$i > $j && $k < $l && $m >= $n && $o <= $p && $q <> $r; - -function myFunction($variable=0, $var2='string') {} - -if (index > -1) { -} - -array_walk_recursive($array, function(&$item) use (&$something) { -}); - -$var = saveFile(&$model, &$foo); - -// This is all valid. -$boo = -$foo; -function foo($boo = -1) {} -$foo = array('boo' => -1); -$x = $test ? -1 : 1; -$y = $test ? 1 : -1; -$z = $test ?: false; - -$closureWithDefaultParameter = function (array $testArray=array()) {}; - -switch ($foo) { - case -1: - break; -} - -$y = 1 * -1; -$y = -1 * 1; -$y = -1 * $var; -$y = 10 / -2; -$y = -10 / 2; -$y = (-10 / 2); -$y = (-10 / $var); -$y = 10 + -2; -$y = -10 + 2; - -$a = $x ? $y : $z; -$a = $x ? $y : $z; - -$y = 1 + 2 - 3; - -$y = 1 + 2 - 3; - -$y = 1 + 2 - 3; - -// phpcs:set Squiz.WhiteSpace.OperatorSpacing ignoreNewlines true -$y = 1 - + 2 - - 3; - -$y = 1 + - 2 - - 3; - -$y = 1 -+ 2 -- 3; -// phpcs:set Squiz.WhiteSpace.OperatorSpacing ignoreNewlines false - -if (true || -1 == $b) { -} - -$var = array(-1); -$var = [-1]; -$var = [0, -1, -2]; - -$y = array(&$x); -$y = [&$x]; -$y = array(&$a, &$b, &$c); -$y = [&$a, &$b, &$c]; -$y = array(&$a => 1, 2 => &$b, &$c); -$y = [&$a => 1, 2 => &$b, &$c]; - -if ($a <=> $b) { -} - -if ($a <=> $b) { -} - -$a |= $b; -$a **= $b; -$a ??= $b; - -$a = +1; - -function bar($boo = +1) {} - -$username = $_GET['user'] ?? 'nobody'; - -function foo(string $bar, array $baz, ?MyClass $object) : MyClass {} - -declare(strict_types=1); - -function foo($c = ((BAR) ? 10 : 100)) {} - -$res = $a ?: $b; -$res = $a ?: $b; -$res = $a ?: $b; -$res = $a ?: $b; - -$res = $a ? : $b; -$res = $a ? : $b; -$res = $a ? : $b; -$res = $a ? : $b; - -function foo(string $a = '', ?string $b = ''): ?string {} - -// Issue #1605. -$text = preg_replace_callback( - self::CHAR_REFS_REGEX, - [ 'Sanitizer', 'decodeCharReferencesCallback' ], - $text, /* limit */ -1, $count ); - -if (true || /* test */ -1 == $b) {} -$y = 10 + /* test */ -2; - -// Issue #1604. -Hooks::run( 'ParserOptionsRegister', [ - &self::$defaults, - &self::$inCacheKey, - &self::$lazyOptions, -] ); - -$x = $foo ? function (): int { - return 1; -} : $bar; - -$x = $foo ? function ($foo) - // comment - : int { - return 1; -} : $bar; - -$x = $foo ? function ($foo) use /* comment */ ($bar): int { - return 1; -} : $bar; - -$x = !$foo ? $bar : function (): int { - return 1; -}; - -$a = - // Comment. - [ - 'a', - 'b', - ]; - -$a = -// phpcs:ignore Standard.Category.Sniff -- for reasons. -[ - 'a', - 'b', -]; - -$foo = is_array($bar) ? array_map( - function () {}, - $bar - ) : $bar; - -function bar(): array {} - -if ($line{-1} === ':') { - $line = substr($line, 0, -1); -} - -$a = $a instanceof $b; -$a = $a instanceof $b; -$a = ($a) instanceof $b; - -fn&($x) => $x; - -// phpcs:set Squiz.WhiteSpace.OperatorSpacing ignoreSpacingBeforeAssignments false -$a = 3; -// phpcs:set Squiz.WhiteSpace.OperatorSpacing ignoreSpacingBeforeAssignments true -yield -1; -echo -1; -$a = -1; -func(-1); -$a = [-1]; -return -1; -print -1; -$a &= -1; -switch ($a) { - case -1: -} -$a = $a ?? -1; -$a .= -1; -$a /= -1; -$a = [1 => -1]; -$a = $a == -1; -$a = $a >= -1; -$a = $a === -1; -$a = $a != -1; -$a = $a !== -1; -$a = $a <= -1; -$a = $a <=> -1; -$a = $a and -1; -$a = $a or -1; -$a = $a xor -1; -$a -= -1; -$a %= -1; -$a *= -1; -$a |= -1; -$a += -1; -$a = $a ** -1; -$a **= -1; -$a = $a << -1; -$a <<= -1; -$a = $a >> -1; -$a >>= -1; -$a = (string) -1; -$a = (array) -1; -$a = (bool) -1; -$a = (object) -1; -$a = (unset) -1; -$a = (float) -1; -$a = (int) -1; -$a ^= -1; -$a = [$a, -1]; -$a = $a[-1]; -$a = $a ? -1 : -1; - -yield - 1; -echo - 1; -$a = - 1; -func(- 1); -$a = [- 1]; -return - 1; -print - 1; -$a &= - 1; -switch ($a) { - case - 1: -} -$a = $a ?? - 1; -$a .= - 1; -$a /= - 1; -$a = [1 => - 1]; -$a = $a == - 1; -$a = $a >= - 1; -$a = $a === - 1; -$a = $a != - 1; -$a = $a !== - 1; -$a = $a <= - 1; -$a = $a <=> - 1; -$a = $a and - 1; -$a = $a or - 1; -$a = $a xor - 1; -$a -= - 1; -$a %= - 1; -$a *= - 1; -$a |= - 1; -$a += - 1; -$a = $a ** - 1; -$a **= - 1; -$a = $a << - 1; -$a <<= - 1; -$a = $a >> - 1; -$a >>= - 1; -$a = (string) - 1; -$a = (array) - 1; -$a = (bool) - 1; -$a = (object) - 1; -$a = (unset) - 1; -$a = (float) - 1; -$a = (int) - 1; -$a ^= - 1; -$a = [$a, - 1]; -$a = $a[- 1]; -$a = $a ? - 1 : - 1; - - -yield -$b; -echo -$b; -$a = -$b; -func(-$b); -$a = [-$b]; -return -$b; -print -$b; -$a &= -$b; -switch ($a) { - case -$b: -} -$a = $a ?? -$b; -$a .= -$b; -$a /= -$b; -$a = [1 => -$b]; -$a = $a == -$b; -$a = $a >= -$b; -$a = $a === -$b; -$a = $a != -$b; -$a = $a !== -$b; -$a = $a <= -$b; -$a = $a <=> -$b; -$a = $a and -$b; -$a = $a or -$b; -$a = $a xor -$b; -$a -= -$b; -$a %= -$b; -$a *= -$b; -$a |= -$b; -$a += -$b; -$a = $a ** -$b; -$a **= -$b; -$a = $a << -$b; -$a <<= -$b; -$a = $a >> -$b; -$a >>= -$b; -$a = (string) -$b; -$a = (array) -$b; -$a = (bool) -$b; -$a = (object) -$b; -$a = (unset) -$b; -$a = (float) -$b; -$a = (int) -$b; -$a ^= -$b; -$a = [$a, -$b]; -$a = $a[-$b]; -$a = $a ? -$b : -$b; - -yield - $b; -echo - $b; -$a = - $b; -func(- $b); -$a = [- $b]; -return - $b; -print - $b; -$a &= - $b; -switch ($a) { - case - $b: -} -$a = $a ?? - $b; -$a .= - $b; -$a /= - $b; -$a = [1 => - $b]; -$a = $a == - $b; -$a = $a >= - $b; -$a = $a === - $b; -$a = $a != - $b; -$a = $a !== - $b; -$a = $a <= - $b; -$a = $a <=> - $b; -$a = $a and - $b; -$a = $a or - $b; -$a = $a xor - $b; -$a -= - $b; -$a %= - $b; -$a *= - $b; -$a |= - $b; -$a += - $b; -$a = $a ** - $b; -$a **= - $b; -$a = $a << - $b; -$a <<= - $b; -$a = $a >> - $b; -$a >>= - $b; -$a = (string) - $b; -$a = (array) - $b; -$a = (bool) - $b; -$a = (object) - $b; -$a = (unset) - $b; -$a = (float) - $b; -$a = (int) - $b; -$a ^= - $b; -$a = [$a, - $b]; -$a = $a[- $b]; -$a = $a ? - $b : - $b; - -exit -1; - -$cl = function ($boo =-1) {}; -$cl = function ($boo =+1) {}; -$fn = fn ($boo =-1) => $boo; -$fn = fn ($boo =+1) => $boo; - -$fn = static fn(DateTime $a, DateTime $b): int => -($a->getTimestamp() <=> $b->getTimestamp()); - -$a = 'a '.-MY_CONSTANT; -$a = 'a '.-$b; -$a = 'a '.- MY_CONSTANT; -$a = 'a '.- $b; - -match ($a) { - 'a' => -1, - 'b', 'c', 'd' => -2, - default => -3, -}; - -$foo = $var ? 10 : true; - -// Safeguard that a non-fixable error is thrown when there is a new line before the operator, -// but the last non-whitespace token before the operator is a comment token. -$foo = $var // Comment - ? false /* Comment */ - : true; - -$foo = $var // phpcs: ignore Stnd.Cat.Sniff -- for reasons. - - - ? $something /** - * Don't ask, but someone might have a docblock between the lines. It's valid PHP after all. - */ - - - : true; - -// phpcs:set Squiz.WhiteSpace.OperatorSpacing ignoreNewlines true -$foo = $var // Comment - ? false // Comment - : true; -// phpcs:set Squiz.WhiteSpace.OperatorSpacing ignoreNewlines false diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/WhiteSpace/OperatorSpacingUnitTest.2.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/WhiteSpace/OperatorSpacingUnitTest.2.inc deleted file mode 100644 index 3a0dbac3..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Tests/WhiteSpace/OperatorSpacingUnitTest.2.inc +++ /dev/null @@ -1,3 +0,0 @@ - - * @copyright 2024 Juliette Reinders Folmer. All rights reserved. - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Util; - -use InvalidArgumentException; -use PHP_CodeSniffer\Config; -use PHP_CodeSniffer\Util\Common; - -final class Help -{ - - - /** - * Short options which are available for both the `phpcs` as well as the `phpcbf` command. - * - * @var string - */ - const DEFAULT_SHORT_OPTIONS = '-hilnpqvw'; - - /** - * Long options which are available for both the `phpcs` as well as the `phpcbf` command. - * - * {@internal This should be a constant array, but those aren't supported until PHP 5.6.} - * - * @var string Comma-separated list of the option names. - */ - const DEFAULT_LONG_OPTIONS = 'basepath,bootstrap,colors,encoding,error-severity,exclude,extensions,file,file-list,filter,ignore,ignore-annotations,no-colors,parallel,php-ini,report-width,runtime-set,severity,sniffs,standard,stdin-path,tab-width,version,vv,vvv,warning-severity'; - - /** - * Minimum screen width. - * - * The help info needs room to display, so this is the minimum acceptable width. - * - * @var integer - */ - const MIN_WIDTH = 60; - - /** - * Indent option lines. - * - * @var string - */ - const INDENT = ' '; - - /** - * Gutter spacing for between the option argument info and the option description. - * - * @var string - */ - const GUTTER = ' '; - - /** - * The current PHPCS Configuration. - * - * @var \PHP_CodeSniffer\Config - */ - private $config; - - /** - * The options which should be shown for this help screen. - * - * @var array - */ - private $requestedOptions = []; - - /** - * Active options per category (after filtering). - * - * @var array>> - */ - private $activeOptions = []; - - /** - * Width of the indent for option lines. - * - * @var integer - */ - private $indentWidth = 0; - - /** - * Width of the gutter spacing. - * - * @var integer - */ - private $gutterWidth = 0; - - /** - * Width of longest option argument info entry. - * - * @var integer - */ - private $maxOptionNameLength = 0; - - - /** - * Constructor. - * - * @param \PHP_CodeSniffer\Config $config Configuration object. - * @param array $longOptions The long options which should be shown. - * @param string $shortOptions The short options which should be shown. - * - * @throws \InvalidArgumentException When $shortOptions is not a string. - */ - public function __construct(Config $config, array $longOptions, $shortOptions='') - { - if (is_string($shortOptions) === false) { - throw new InvalidArgumentException('The $shortOptions parameter must be a string'); - } - - $this->config = $config; - $this->requestedOptions = array_merge($longOptions, str_split($shortOptions)); - - $this->filterOptions(); - - $this->indentWidth = strlen(self::INDENT); - $this->gutterWidth = strlen(self::GUTTER); - - $this->setMaxOptionNameLength(); - - }//end __construct() - - - /** - * Display the help info. - * - * @return void - */ - public function display() - { - $this->printUsage(); - $this->printCategories(); - - }//end display() - - - /** - * Filter the available options based on the requested options. - * - * @return void - */ - private function filterOptions() - { - $filteredOptions = $this->getAllOptions(); - - foreach ($filteredOptions as $category => $options) { - // Initial state set to "true" to prevent a spacer at the start of an array. - $lastWasSpacer = true; - $spacerCount = 0; - - foreach ($options as $name => $option) { - if ($lastWasSpacer !== true && strpos($name, 'blank-line') === 0) { - ++$spacerCount; - $lastWasSpacer = true; - continue; - } - - if (in_array($name, $this->requestedOptions, true) === false) { - unset($filteredOptions[$category][$name]); - continue; - } - - $lastWasSpacer = false; - } - - // Make sure the final array doesn't contain a spacer at the end. - if (empty($filteredOptions[$category]) === false) { - end($filteredOptions[$category]); - $key = key($filteredOptions[$category]); - if (strpos($key, 'blank-line') === 0) { - unset($filteredOptions[$category][$key]); - --$spacerCount; - } - } - - // Remove categories now left empty. - if (empty($filteredOptions[$category]) === true || count($filteredOptions[$category]) === $spacerCount) { - unset($filteredOptions[$category]); - } - }//end foreach - - $this->activeOptions = $filteredOptions; - - }//end filterOptions() - - - /** - * Determine the length of the longest option argument and store it. - * - * @return void - */ - private function setMaxOptionNameLength() - { - $lengths = []; - foreach ($this->activeOptions as $category => $options) { - foreach ($options as $option) { - if (isset($option['argument']) === false) { - continue; - } - - $lengths[] = strlen($option['argument']); - } - } - - if (empty($lengths) === false) { - $this->maxOptionNameLength = max($lengths); - } - - }//end setMaxOptionNameLength() - - - /** - * Get the maximum width which can be used to display the help info. - * - * Independently of user preference/auto-determined width of the current screen, - * a minimum width is needed to display information, so don't allow this to get too low. - * - * @return int - */ - private function getMaxWidth() - { - return max(self::MIN_WIDTH, $this->config->reportWidth); - - }//end getMaxWidth() - - - /** - * Get the maximum width for the text in the option description column. - * - * @return int - */ - private function getDescriptionColumnWidth() - { - return ($this->getMaxWidth() - $this->maxOptionNameLength - $this->indentWidth - $this->gutterWidth); - - }//end getDescriptionColumnWidth() - - - /** - * Get the length of the indentation needed for follow up lines when the description does not fit on one line. - * - * @return int - */ - private function getDescriptionFollowupLineIndentLength() - { - return ($this->maxOptionNameLength + $this->indentWidth + $this->gutterWidth); - - }//end getDescriptionFollowupLineIndentLength() - - - /** - * Print basic usage information to the screen. - * - * @return void - */ - private function printUsage() - { - $command = 'phpcs'; - if (defined('PHP_CODESNIFFER_CBF') === true && PHP_CODESNIFFER_CBF === true) { - $command = 'phpcbf'; - } - - $this->printCategoryHeader('Usage'); - - echo self::INDENT.$command.' [options] '.PHP_EOL; - - }//end printUsage() - - - /** - * Print details of all the requested options to the screen, sorted by category. - * - * @return void - */ - private function printCategories() - { - foreach ($this->activeOptions as $category => $options) { - $this->printCategoryHeader($category); - $this->printCategoryOptions($options); - } - - }//end printCategories() - - - /** - * Print a category header. - * - * @param string $header The header text. - * - * @return void - */ - private function printCategoryHeader($header) - { - $header .= ':'; - if ($this->config->colors === true) { - $header = "\033[33m{$header}\033[0m"; - } - - echo PHP_EOL.$header.PHP_EOL; - - }//end printCategoryHeader() - - - /** - * Print the options for a category. - * - * @param array> $options The options to display. - * - * @return void - */ - private function printCategoryOptions(array $options) - { - $maxDescriptionWidth = $this->getDescriptionColumnWidth(); - $maxTextWidth = ($this->getMaxWidth() - $this->indentWidth); - $secondLineIndent = str_repeat(' ', $this->getDescriptionFollowupLineIndentLength()); - - $output = ''; - foreach ($options as $option) { - if (isset($option['spacer']) === true) { - $output .= PHP_EOL; - } - - if (isset($option['text']) === true) { - $text = wordwrap($option['text'], $maxTextWidth, "\n"); - $output .= self::INDENT.implode(PHP_EOL.self::INDENT, explode("\n", $text)).PHP_EOL; - } - - if (isset($option['argument'], $option['description']) === true) { - $argument = str_pad($option['argument'], $this->maxOptionNameLength); - $argument = $this->colorizeVariableInput($argument); - $output .= self::INDENT."\033[32m{$argument}\033[0m"; - $output .= self::GUTTER; - - $description = wordwrap($option['description'], $maxDescriptionWidth, "\n"); - $output .= implode(PHP_EOL.$secondLineIndent, explode("\n", $description)).PHP_EOL; - } - } - - if ($this->config->colors === false) { - $output = Common::stripColors($output); - } - - echo $output; - - }//end printCategoryOptions() - - - /** - * Colorize "variable" input in the option argument info. - * - * For the purposes of this method, "variable" input is text between <> brackets. - * The regex allows for multiple tags and nested tags. - * - * @param string $text The text to process. - * - * @return string - */ - private function colorizeVariableInput($text) - { - return preg_replace('`(<(?:(?>[^<>]+)|(?R))*>)`', "\033[36m".'$1'."\033[32m", $text); - - }//end colorizeVariableInput() - - - /** - * Retrieve the help details for all supported CLI arguments per category. - * - * @return array>> - */ - private function getAllOptions() - { - $options = []; - - // phpcs:disable Squiz.Strings.ConcatenationSpacing.PaddingFound -- Readability is more important. - $options['Scan targets'] = [ - 'file' => [ - 'argument' => '', - 'description' => 'One or more files and/or directories to check, space separated.', - ], - '-' => [ - 'argument' => '-', - 'description' => 'Check STDIN instead of local files and directories.', - ], - 'stdin-path' => [ - 'argument' => '--stdin-path=', - 'description' => 'If processing STDIN, the file path that STDIN will be processed as.', - ], - 'file-list' => [ - 'argument' => '--file-list=', - 'description' => 'Check the files and/or directories which are defined in the file to which the path is provided (one per line).', - ], - 'filter' => [ - 'argument' => '--filter=', - 'description' => 'Check based on a predefined file filter. Use either the "GitModified" or "GitStaged" filter, or specify the path to a custom filter class.', - ], - 'ignore' => [ - 'argument' => '--ignore=', - 'description' => 'Ignore files based on a comma-separated list of patterns matching files and/or directories.', - ], - 'extensions' => [ - 'argument' => '--extensions=', - 'description' => 'Check files with the specified file extensions (comma-separated list). Defaults to php,inc/php,js,css.'."\n" - .'The type of the file can be specified using: ext/type; e.g. module/php,es/js.', - ], - 'l' => [ - 'argument' => '-l', - 'description' => 'Check local directory only, no recursion.', - ], - ]; - - $options['Rule Selection Options'] = [ - 'standard' => [ - 'argument' => '--standard=', - 'description' => 'The name of, or the path to, the coding standard to use. Can be a comma-separated list specifying multiple standards. If no standard is specified, PHP_CodeSniffer will look for a [.]phpcs.xml[.dist] custom ruleset file in the current directory and those above it.', - ], - 'sniffs' => [ - 'argument' => '--sniffs=', - 'description' => 'A comma-separated list of sniff codes to limit the scan to. All sniffs must be part of the standard in use.', - ], - 'exclude' => [ - 'argument' => '--exclude=', - 'description' => 'A comma-separated list of sniff codes to exclude from the scan. All sniffs must be part of the standard in use.', - ], - 'blank-line' => ['spacer' => ''], - - 'i' => [ - 'argument' => '-i', - 'description' => 'Show a list of installed coding standards.', - ], - 'e' => [ - 'argument' => '-e', - 'description' => 'Explain a standard by showing the names of all the sniffs it includes.', - ], - 'generator' => [ - 'argument' => '--generator=', - 'description' => 'Show documentation for a standard. Use either the "HTML", "Markdown" or "Text" generator.', - ], - ]; - - $options['Run Options'] = [ - 'a' => [ - 'argument' => '-a', - 'description' => 'Run in interactive mode, pausing after each file.', - ], - 'bootstrap' => [ - 'argument' => '--bootstrap=', - 'description' => 'Run the specified file(s) before processing begins. A list of files can be provided, separated by commas.', - ], - 'cache' => [ - 'argument' => '--cache[=]', - 'description' => 'Cache results between runs. Optionally, can be provided to use a specific file for caching. Otherwise, a temporary file is used.', - ], - 'no-cache' => [ - 'argument' => '--no-cache', - 'description' => 'Do not cache results between runs (default).', - ], - 'parallel' => [ - 'argument' => '--parallel=', - 'description' => 'The number of files to be checked simultaneously. Defaults to 1 (no parallel processing).'."\n" - .'If enabled, this option only takes effect if the PHP PCNTL (Process Control) extension is available.', - ], - 'suffix' => [ - 'argument' => '--suffix=', - 'description' => 'Write modified files to a filename using this suffix ("diff" and "patch" are not used in this mode).', - ], - 'blank-line' => ['spacer' => ''], - - 'php-ini' => [ - 'argument' => '-d ', - 'description' => 'Set the [key] php.ini value to [value] or set to [true] if value is omitted.'."\n" - .'Note: only php.ini settings which can be changed at runtime are supported.', - ], - ]; - - $options['Reporting Options'] = [ - 'report' => [ - 'argument' => '--report=', - 'description' => 'Print either the "full", "xml", "checkstyle", "csv", "json", "junit", "emacs", "source", "summary", "diff", "svnblame", "gitblame", "hgblame", "notifysend" or "performance" report or specify the path to a custom report class. By default, the "full" report is displayed.', - ], - 'report-file' => [ - 'argument' => '--report-file=', - 'description' => 'Write the report to the specified file path.', - ], - 'report-report' => [ - 'argument' => '--report-=', - 'description' => 'Write the report specified in to the specified file path.', - ], - 'report-width' => [ - 'argument' => '--report-width=', - 'description' => 'How many columns wide screen reports should be. Set to "auto" to use current screen width, where supported.', - ], - 'basepath' => [ - 'argument' => '--basepath=', - 'description' => 'Strip a path from the front of file paths inside reports.', - ], - 'blank-line-1' => ['spacer' => ''], - - 'w' => [ - 'argument' => '-w', - 'description' => 'Include both warnings and errors (default).', - ], - 'n' => [ - 'argument' => '-n', - 'description' => 'Do not include warnings. Shortcut for "--warning-severity=0".', - ], - 'severity' => [ - 'argument' => '--severity=', - 'description' => 'The minimum severity required to display an error or warning. Defaults to 5.', - ], - 'error-severity' => [ - 'argument' => '--error-severity=', - 'description' => 'The minimum severity required to display an error. Defaults to 5.', - ], - 'warning-severity' => [ - 'argument' => '--warning-severity=', - 'description' => 'The minimum severity required to display a warning. Defaults to 5.', - ], - 'blank-line-2' => ['spacer' => ''], - - 's' => [ - 'argument' => '-s', - 'description' => 'Show sniff error codes in all reports.', - ], - 'ignore-annotations' => [ - 'argument' => '--ignore-annotations', - 'description' => 'Ignore all "phpcs:..." annotations in code comments.', - ], - 'colors' => [ - 'argument' => '--colors', - 'description' => 'Use colors in screen output.', - ], - 'no-colors' => [ - 'argument' => '--no-colors', - 'description' => 'Do not use colors in screen output (default).', - ], - 'p' => [ - 'argument' => '-p', - 'description' => 'Show progress of the run.', - ], - 'q' => [ - 'argument' => '-q', - 'description' => 'Quiet mode; disables progress and verbose output.', - ], - 'm' => [ - 'argument' => '-m', - 'description' => 'Stop error messages from being recorded. This saves a lot of memory but stops many reports from being used.', - ], - ]; - - $options['Configuration Options'] = [ - 'encoding' => [ - 'argument' => '--encoding=', - 'description' => 'The encoding of the files being checked. Defaults to "utf-8".', - ], - 'tab-width' => [ - 'argument' => '--tab-width=', - 'description' => 'The number of spaces each tab represents.', - ], - 'blank-line' => ['spacer' => ''], - - 'config-explain' => [ - 'text' => 'Default values for a selection of options can be stored in a user-specific CodeSniffer.conf configuration file.'."\n" - .'This applies to the following options: "default_standard", "report_format", "tab_width", "encoding", "severity", "error_severity", "warning_severity", "show_warnings", "report_width", "show_progress", "quiet", "colors", "cache", "parallel".', - ], - 'config-show' => [ - 'argument' => '--config-show', - 'description' => 'Show the configuration options which are currently stored in the applicable CodeSniffer.conf file.', - ], - 'config-set' => [ - 'argument' => '--config-set ', - 'description' => 'Save a configuration option to the CodeSniffer.conf file.', - ], - 'config-delete' => [ - 'argument' => '--config-delete ', - 'description' => 'Delete a configuration option from the CodeSniffer.conf file.', - ], - 'runtime-set' => [ - 'argument' => '--runtime-set ', - 'description' => 'Set a configuration option to be applied to the current scan run only.', - ], - ]; - - $options['Miscellaneous Options'] = [ - 'h' => [ - 'argument' => '-h, -?, --help', - 'description' => 'Print this help message.', - ], - 'version' => [ - 'argument' => '--version', - 'description' => 'Print version information.', - ], - 'v' => [ - 'argument' => '-v', - 'description' => 'Verbose output: Print processed files.', - ], - 'vv' => [ - 'argument' => '-vv', - 'description' => 'Verbose output: Print ruleset and token output.', - ], - 'vvv' => [ - 'argument' => '-vvv', - 'description' => 'Verbose output: Print sniff processing information.', - ], - ]; - // phpcs:enable - - return $options; - - }//end getAllOptions() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Config/SniffsExcludeArgsTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Config/SniffsExcludeArgsTest.php deleted file mode 100644 index 4eedb624..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Config/SniffsExcludeArgsTest.php +++ /dev/null @@ -1,200 +0,0 @@ - - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Config; - -use PHP_CodeSniffer\Tests\ConfigDouble; -use PHPUnit\Framework\TestCase; - -/** - * Tests for the \PHP_CodeSniffer\Config --sniffs and --exclude arguments. - * - * @covers \PHP_CodeSniffer\Config::processLongArgument - */ -final class SniffsExcludeArgsTest extends TestCase -{ - - - /** - * Ensure that the expected error message is returned for invalid arguments. - * - * @param string $argument 'sniffs' or 'exclude'. - * @param string $value List of sniffs to include / exclude. - * @param string $message Expected error message text. - * - * @return void - * @dataProvider dataInvalidSniffs - */ - public function testInvalid($argument, $value, $message) - { - $exception = 'PHP_CodeSniffer\Exceptions\DeepExitException'; - - if (method_exists($this, 'expectException') === true) { - // PHPUnit 5+. - $this->expectException($exception); - $this->expectExceptionMessage($message); - } else { - // PHPUnit 4. - $this->setExpectedException($exception, $message); - } - - new ConfigDouble(["--$argument=$value"]); - - }//end testInvalid() - - - /** - * Data provider for testInvalid(). - * - * @see self::testInvalid() - * @return array> - */ - public static function dataInvalidSniffs() - { - $arguments = [ - 'sniffs', - 'exclude', - ]; - $data = []; - - $messageTemplate = 'ERROR: The specified sniff code "%s" is invalid'.PHP_EOL.PHP_EOL; - - foreach ($arguments as $argument) { - // An empty string is not a valid sniff. - $data[$argument.'; empty string'] = [ - 'argument' => $argument, - 'value' => '', - 'message' => sprintf($messageTemplate, ''), - ]; - - // A standard is not a valid sniff. - $data[$argument.'; standard'] = [ - 'argument' => $argument, - 'value' => 'Standard', - 'message' => sprintf($messageTemplate, 'Standard'), - ]; - - // A category is not a valid sniff. - $data[$argument.'; category'] = [ - 'argument' => $argument, - 'value' => 'Standard.Category', - 'message' => sprintf($messageTemplate, 'Standard.Category'), - ]; - - // An error-code is not a valid sniff. - $data[$argument.'; error-code'] = [ - 'argument' => $argument, - 'value' => 'Standard.Category', - 'message' => sprintf($messageTemplate, 'Standard.Category'), - ]; - - // Only the first error is reported. - $data[$argument.'; two errors'] = [ - 'argument' => $argument, - 'value' => 'StandardOne,StandardTwo', - 'message' => sprintf($messageTemplate, 'StandardOne'), - ]; - $data[$argument.'; valid followed by invalid'] = [ - 'argument' => $argument, - 'value' => 'StandardOne.Category.Sniff,StandardTwo.Category', - 'message' => sprintf($messageTemplate, 'StandardTwo.Category'), - ]; - }//end foreach - - return $data; - - }//end dataInvalidSniffs() - - - /** - * Ensure that the valid data does not throw an exception, and the value is stored. - * - * @param string $argument 'sniffs' or 'exclude'. - * @param string $value List of sniffs to include or exclude. - * - * @return void - * @dataProvider dataValidSniffs - */ - public function testValid($argument, $value) - { - $config = new ConfigDouble(["--$argument=$value"]); - - $this->assertSame(explode(',', $value), $config->$argument); - - }//end testValid() - - - /** - * Data provider for testValid(). - * - * @see self::testValid() - * @return array> - */ - public static function dataValidSniffs() - { - $arguments = [ - 'sniffs', - 'exclude', - ]; - $data = []; - - foreach ($arguments as $argument) { - $data[$argument.'; one valid sniff'] = [ - 'argument' => $argument, - 'value' => 'Standard.Category.Sniff', - ]; - $data[$argument.'; two valid sniffs'] = [ - 'argument' => $argument, - 'value' => 'StandardOne.Category.Sniff,StandardTwo.Category.Sniff', - ]; - } - - return $data; - - }//end dataValidSniffs() - - - /** - * Ensure that only the first argument is processed and others are ignored. - * - * @param string $argument 'sniffs' or 'exclude'. - * - * @return void - * @dataProvider dataOnlySetOnce - */ - public function testOnlySetOnce($argument) - { - $config = new ConfigDouble( - [ - "--$argument=StandardOne.Category.Sniff", - "--$argument=StandardTwo.Category.Sniff", - "--$argument=Standard.AnotherCategory.Sniff", - ] - ); - - $this->assertSame(['StandardOne.Category.Sniff'], $config->$argument); - - }//end testOnlySetOnce() - - - /** - * Data provider for testOnlySetOnce(). - * - * @return array> - */ - public static function dataOnlySetOnce() - { - return [ - 'sniffs' => ['sniffs'], - 'exclude' => ['exclude'], - ]; - - }//end dataOnlySetOnce() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Fixer/Fixtures/GenerateDiffTest-BlankLinesAtEnd.diff b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Fixer/Fixtures/GenerateDiffTest-BlankLinesAtEnd.diff deleted file mode 100644 index b9a217ed..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Fixer/Fixtures/GenerateDiffTest-BlankLinesAtEnd.diff +++ /dev/null @@ -1,10 +0,0 @@ ---- tests/Core/Fixer/Fixtures/GenerateDiffTest-BlankLinesAtEnd.inc -+++ PHP_CodeSniffer -@@ -5,7 +5,3 @@ - if ($var) { - echo 'This line is tab indented'; - } -- -- -- -- diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Fixer/Fixtures/GenerateDiffTest-BlankLinesAtEnd.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Fixer/Fixtures/GenerateDiffTest-BlankLinesAtEnd.inc deleted file mode 100644 index 2e65b2b5..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Fixer/Fixtures/GenerateDiffTest-BlankLinesAtEnd.inc +++ /dev/null @@ -1,11 +0,0 @@ - - * @copyright 2024 Juliette Reinders Folmer. All rights reserved. - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Fixer; - -use PHP_CodeSniffer\Files\LocalFile; -use PHP_CodeSniffer\Ruleset; -use PHP_CodeSniffer\Tests\ConfigDouble; -use PHPUnit\Framework\TestCase; - -/** - * Tests for diff generation. - * - * Note: these tests are specifically about the Fixer::generateDiff() method and do not - * test running the fixer itself, nor generating a diff based on a fixer run. - * - * @covers PHP_CodeSniffer\Fixer::generateDiff - * @group Windows - */ -final class GenerateDiffTest extends TestCase -{ - - /** - * A \PHP_CodeSniffer\Files\File object to compare the files against. - * - * @var \PHP_CodeSniffer\Files\LocalFile - */ - private static $phpcsFile; - - - /** - * Initialize an \PHP_CodeSniffer\Files\File object with code. - * - * Things to take note of in the code snippet used for these tests: - * - Line endings are \n. - * - Tab indent. - * - Trailing whitespace. - * - * Also note that the Config object is deliberately created without a `tabWidth` setting to - * prevent doing tab replacement when parsing the file. This is to allow for testing a - * diff with tabs vs spaces (which wouldn't yield a diff if tabs had already been replaced). - * - * @beforeClass - * - * @return void - */ - public static function initializeFile() - { - $config = new ConfigDouble(); - $ruleset = new Ruleset($config); - - self::$phpcsFile = new LocalFile(__DIR__.'/Fixtures/GenerateDiffTest.inc', $ruleset, $config); - self::$phpcsFile->parse(); - self::$phpcsFile->fixer->startFile(self::$phpcsFile); - - }//end initializeFile() - - - /** - * Test generating a diff on the file object itself. - * - * @return void - */ - public function testGenerateDiffNoFile() - { - $diff = self::$phpcsFile->fixer->generateDiff(null, false); - - $this->assertSame('', $diff); - - }//end testGenerateDiffNoFile() - - - /** - * Test generating a diff between a PHPCS File object and a file on disk. - * - * @param string $filePath The path to the file to compare the File object against. - * - * @dataProvider dataGenerateDiff - * - * @return void - */ - public function testGenerateDiff($filePath) - { - $diff = self::$phpcsFile->fixer->generateDiff($filePath, false); - - // Allow for the tests to pass on Windows too. - $diff = str_replace('--- tests\Core\Fixer/', '--- tests/Core/Fixer/', $diff); - - $expectedDiffFile = str_replace('.inc', '.diff', $filePath); - - $this->assertStringEqualsFile($expectedDiffFile, $diff); - - }//end testGenerateDiff() - - - /** - * Data provider. - * - * @see testGenerateDiff() - * - * @return array> - */ - public static function dataGenerateDiff() - { - return [ - 'no difference' => [ - 'filePath' => __DIR__.'/Fixtures/GenerateDiffTest-NoDiff.inc', - ], - 'line removed' => [ - 'filePath' => __DIR__.'/Fixtures/GenerateDiffTest-LineRemoved.inc', - ], - 'line added' => [ - 'filePath' => __DIR__.'/Fixtures/GenerateDiffTest-LineAdded.inc', - ], - 'var name changed' => [ - 'filePath' => __DIR__.'/Fixtures/GenerateDiffTest-VarNameChanged.inc', - ], - 'trailing whitespace removed' => [ - 'filePath' => __DIR__.'/Fixtures/GenerateDiffTest-NoTrailingWhitespace.inc', - ], - 'tab replaced with spaces' => [ - 'filePath' => __DIR__.'/Fixtures/GenerateDiffTest-TabsToSpaces.inc', - ], - 'blank lines at start of file' => [ - 'filePath' => __DIR__.'/Fixtures/GenerateDiffTest-BlankLinesAtStart.inc', - ], - 'whitespace diff at start of file' => [ - 'filePath' => __DIR__.'/Fixtures/GenerateDiffTest-WhiteSpaceAtStart.inc', - ], - 'blank lines at end of file' => [ - 'filePath' => __DIR__.'/Fixtures/GenerateDiffTest-BlankLinesAtEnd.inc', - ], - 'whitespace diff at end of file' => [ - 'filePath' => __DIR__.'/Fixtures/GenerateDiffTest-WhiteSpaceAtEnd.inc', - ], - ]; - - }//end dataGenerateDiff() - - - /** - * Test generating a diff between a PHPCS File object and a file on disk and colourizing the output. - * - * @return void - */ - public function testGenerateDiffColoured() - { - $expected = "\033[31m--- tests/Core/Fixer/Fixtures/GenerateDiffTest-VarNameChanged.inc\033[0m".PHP_EOL; - $expected .= "\033[32m+++ PHP_CodeSniffer\033[0m".PHP_EOL; - $expected .= '@@ -1,7 +1,7 @@'.PHP_EOL; - $expected .= ' fixer->generateDiff($filePath); - - // Allow for the tests to pass on Windows too. - $diff = str_replace('--- tests\Core\Fixer/', '--- tests/Core/Fixer/', $diff); - - $this->assertSame($expected, $diff); - - }//end testGenerateDiffColoured() - - - /** - * Test generating a diff between a PHPCS File object using *nix line endings and a file on disk - * using Windows line endings. - * - * The point of this test is to verify that all lines are marked as having a difference. - * The actual lines endings used in the diff shown to the end-user are not relevant for this - * test. - * As the "diff" command is finicky with what type of line endings are used when the only - * difference on a line is the line ending, the test normalizes the line endings of the - * received diff before testing it. - * - * @return void - */ - public function testGenerateDiffDifferentLineEndings() - { - // By the looks of it, if the only diff between two files is line endings, the - // diff generated by the *nix "diff" command will always contain *nix line endings. - $expected = '--- tests/Core/Fixer/Fixtures/GenerateDiffTest-WindowsLineEndings.inc'."\n"; - $expected .= '+++ PHP_CodeSniffer'."\n"; - $expected .= '@@ -1,7 +1,7 @@'."\n"; - $expected .= '-fixer->generateDiff($filePath, false); - - // Allow for the tests to pass on Windows too. - $diff = str_replace('--- tests\Core\Fixer/', '--- tests/Core/Fixer/', $diff); - - // Normalize line endings of the diff. - $diff = preg_replace('`\R`', "\n", $diff); - - $this->assertSame($expected, $diff); - - }//end testGenerateDiffDifferentLineEndings() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/AllValidDocsTest.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/AllValidDocsTest.xml deleted file mode 100644 index 71a0c7f7..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/AllValidDocsTest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonBlankLines.html b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonBlankLines.html deleted file mode 100644 index 788ef612..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonBlankLines.html +++ /dev/null @@ -1,88 +0,0 @@ - - - GeneratorTest Coding Standards - - - -

    GeneratorTest Coding Standards

    - -

    Code Comparison, blank lines

    -

    This is a standard block.

    - - - - - - - - - -
    Valid: Checking handling of blank lines.Invalid: Checking handling of blank lines.
    // First line of the code sample is
    // deliberately empty.

    // We also have a blank line in the middle.

    // And a blank line at the end.
    // First line of the code sample is
    // deliberately empty.

    // We also have a blank line in the middle.

    // And a blank line at the end.
    -
    - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonBlankLines.md b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonBlankLines.md deleted file mode 100644 index ef25f893..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonBlankLines.md +++ /dev/null @@ -1,35 +0,0 @@ -# GeneratorTest Coding Standard - -## Code Comparison, blank lines - -This is a standard block. - - - - - - - - - -
    Valid: Checking handling of blank lines.Invalid: Checking handling of blank lines.
    - - // First line of the code sample is - // deliberately empty. - - // We also have a blank line in the middle. - - // And a blank line at the end. - - - - // First line of the code sample is - // deliberately empty. - - // We also have a blank line in the middle. - - // And a blank line at the end. - -
    - -Documentation generated on *REDACTED* by [PHP_CodeSniffer *VERSION*](https://github.com/PHPCSStandards/PHP_CodeSniffer) diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonBlankLines.txt b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonBlankLines.txt deleted file mode 100644 index a7fd41d9..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonBlankLines.txt +++ /dev/null @@ -1,18 +0,0 @@ - ---------------------------------------------------------------- -| GENERATORTEST CODING STANDARD: CODE COMPARISON, BLANK LINES | ---------------------------------------------------------------- - -This is a standard block. - ------------------------------------------ CODE COMPARISON ------------------------------------------ -| Valid: Checking handling of blank lines. | Invalid: Checking handling of blank lines. | ----------------------------------------------------------------------------------------------------- -| // First line of the code sample is | // First line of the code sample is | -| // deliberately empty. | // deliberately empty. | -| | | -| // We also have a blank line in the middle. | // We also have a blank line in the middle. | -| | | -| // And a blank line at the end. | // And a blank line at the end. | ----------------------------------------------------------------------------------------------------- - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonBlockLength.html b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonBlockLength.html deleted file mode 100644 index a8bfc97f..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonBlockLength.html +++ /dev/null @@ -1,98 +0,0 @@ - - - GeneratorTest Coding Standards - - - -

    GeneratorTest Coding Standards

    - -

    Code Comparison, block length

    -

    This is a standard block.

    - - - - - - - - - -
    Valid: code sample A has more lines than B.Invalid: shorter.
    // This code sample has more lines
    // than the "invalid" one.
    $one = 10;
    $a = 10;
    - - - - - - - - - -
    Valid: shorter.Invalid: code sample B has more lines than A.
    echo $foo;// This code sample has more lines
    // than the "valid" one.
    print $foo;
    -
    - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonBlockLength.md b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonBlockLength.md deleted file mode 100644 index 526f110b..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonBlockLength.md +++ /dev/null @@ -1,47 +0,0 @@ -# GeneratorTest Coding Standard - -## Code Comparison, block length - -This is a standard block. - - - - - - - - - -
    Valid: code sample A has more lines than B.Invalid: shorter.
    - - // This code sample has more lines - // than the "invalid" one. - $one = 10; - - - - $a = 10; - -
    - - - - - - - - - -
    Valid: shorter.Invalid: code sample B has more lines than A.
    - - echo $foo; - - - - // This code sample has more lines - // than the "valid" one. - print $foo; - -
    - -Documentation generated on *REDACTED* by [PHP_CodeSniffer *VERSION*](https://github.com/PHPCSStandards/PHP_CodeSniffer) diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonBlockLength.txt b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonBlockLength.txt deleted file mode 100644 index c2fb737f..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonBlockLength.txt +++ /dev/null @@ -1,23 +0,0 @@ - ----------------------------------------------------------------- -| GENERATORTEST CODING STANDARD: CODE COMPARISON, BLOCK LENGTH | ----------------------------------------------------------------- - -This is a standard block. - ------------------------------------------ CODE COMPARISON ------------------------------------------ -| Valid: code sample A has more lines than B. | Invalid: shorter. | ----------------------------------------------------------------------------------------------------- -| // This code sample has more lines | $a = 10; | -| // than the "invalid" one. | | -| $one = 10; | | ----------------------------------------------------------------------------------------------------- - ------------------------------------------ CODE COMPARISON ------------------------------------------ -| Valid: shorter. | Invalid: code sample B has more lines than A. | ----------------------------------------------------------------------------------------------------- -| echo $foo; | // This code sample has more lines | -| | // than the "valid" one. | -| | print $foo; | ----------------------------------------------------------------------------------------------------- - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonEncoding.html b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonEncoding.html deleted file mode 100644 index ff9f6df1..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonEncoding.html +++ /dev/null @@ -1,88 +0,0 @@ - - - GeneratorTest Coding Standards - - - -

    GeneratorTest Coding Standards

    - -

    Code Comparison, char encoding

    -

    This is a standard block.

    - - - - - - - - - -
    Valid: Vestibulum et orci condimentum.Invalid: Donec in nisl ut tortor convallis interdum.
    <?php

    // The above PHP tag is specifically testing
    // handling of that in generated HTML doc.

    // Now let's also check the handling of
    // comparison operators in code samples...
    $a = $b < $c;
    $d = $e > $f;
    $g = $h <= $i;
    $j = $k >= $l;
    $m = $n <=> $o;
    <?php

    // The above PHP tag is specifically testing
    // handling of that in generated HTML doc.

    // Now let's also check the handling of
    // comparison operators in code samples
    // in combination with "em" tags.
    $a = $b < $c;
    $d = $e > $f;
    $g = $h <= $i;
    $j = $k >= $l;
    $m = $n <=> $o;
    -
    - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonEncoding.md b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonEncoding.md deleted file mode 100644 index 052d3cb3..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonEncoding.md +++ /dev/null @@ -1,48 +0,0 @@ -# GeneratorTest Coding Standard - -## Code Comparison, char encoding - -This is a standard block. - - - - - - - - - -
    Valid: Vestibulum et orci condimentum.Invalid: Donec in nisl ut tortor convallis interdum.
    - - $f; - $g = $h <= $i; - $j = $k >= $l; - $m = $n <=> $o; - - - - $f; - $g = $h <= $i; - $j = $k >= $l; - $m = $n <=> $o; - -
    - -Documentation generated on *REDACTED* by [PHP_CodeSniffer *VERSION*](https://github.com/PHPCSStandards/PHP_CodeSniffer) diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonEncoding.txt b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonEncoding.txt deleted file mode 100644 index 7ffcf4df..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonEncoding.txt +++ /dev/null @@ -1,26 +0,0 @@ - ------------------------------------------------------------------ -| GENERATORTEST CODING STANDARD: CODE COMPARISON, CHAR ENCODING | ------------------------------------------------------------------ - -This is a standard block. - ------------------------------------------ CODE COMPARISON ------------------------------------------ -| Valid: Vestibulum et orci condimentum. | Invalid: Donec in nisl ut tortor convallis | -| | interdum. | ----------------------------------------------------------------------------------------------------- -| $f; | $a = $b < $c; | -| $g = $h <= $i; | $d = $e > $f; | -| $j = $k >= $l; | $g = $h <= $i; | -| $m = $n <=> $o; | $j = $k >= $l; | -| | $m = $n <=> $o; | ----------------------------------------------------------------------------------------------------- - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonLineLength.html b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonLineLength.html deleted file mode 100644 index b876e6b1..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonLineLength.html +++ /dev/null @@ -1,89 +0,0 @@ - - - GeneratorTest Coding Standards - - - -

    GeneratorTest Coding Standards

    - -

    Code Comparison, line length

    -

    Ensure there is no PHP "Warning: str_repeat(): Second argument has to be greater than or equal to 0".
    -Ref: squizlabs/PHP_CodeSniffer#2522

    - - - - - - - - - -
    Valid: contains line which is too long.Invalid: contains line which is too long.
    class Foo extends Bar implements Countable, Serializable
    {
    }
    class Foo extends Bar
    {
        public static function foobar($param1, $param2) {}
    }
    -
    - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonLineLength.md b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonLineLength.md deleted file mode 100644 index 8dbf5642..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonLineLength.md +++ /dev/null @@ -1,31 +0,0 @@ -# GeneratorTest Coding Standard - -## Code Comparison, line length - -Ensure there is no PHP "Warning: str_repeat(): Second argument has to be greater than or equal to 0". -Ref: squizlabs/PHP_CodeSniffer#2522 - - - - - - - - - -
    Valid: contains line which is too long.Invalid: contains line which is too long.
    - - class Foo extends Bar implements Countable, Serializable - { - } - - - - class Foo extends Bar - { - public static function foobar($param1, $param2) {} - } - -
    - -Documentation generated on *REDACTED* by [PHP_CodeSniffer *VERSION*](https://github.com/PHPCSStandards/PHP_CodeSniffer) diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonLineLength.txt b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonLineLength.txt deleted file mode 100644 index e8a665cd..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeComparisonLineLength.txt +++ /dev/null @@ -1,18 +0,0 @@ - ---------------------------------------------------------------- -| GENERATORTEST CODING STANDARD: CODE COMPARISON, LINE LENGTH | ---------------------------------------------------------------- - -Ensure there is no PHP "Warning: str_repeat(): Second argument has to be greater than or equal to -0". -Ref: squizlabs/PHP_CodeSniffer#2522 - ------------------------------------------ CODE COMPARISON ------------------------------------------ -| Valid: contains line which is too long. | Invalid: contains line which is too long. | ----------------------------------------------------------------------------------------------------- -| class Foo extends Bar implements Countable, Serializable| class Foo extends Bar | -| { | { | -| } | public static function foobar($param1, $param2) {}| -| | } | ----------------------------------------------------------------------------------------------------- - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeTitleLineWrapping.html b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeTitleLineWrapping.html deleted file mode 100644 index fc35fdf0..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeTitleLineWrapping.html +++ /dev/null @@ -1,118 +0,0 @@ - - - GeneratorTest Coding Standards - - - -

    GeneratorTest Coding Standards

    - -

    Code Title, line wrapping

    -

    This is a standard block.

    - - - - - - - - - -
    Valid: exactly 45 character long description.Invalid: exactly 45 char long description---.
    // Dummy.// Dummy.
    - - - - - - - - - -
    Valid: exactly 46 character long description-.Invalid: exactly 46 character long description
    // Dummy.// Dummy.
    - - - - - - - - - -
    Valid: exactly 47 character long description--.Invalid: exactly 47 character long description.
    // Dummy.// Dummy.
    - - - - - - - - - -
    Valid: this description is longer than 46 characters and will wrap.Invalid: this description is longer than 46 characters and will wrap.
    // Dummy.// Dummy.
    -
    - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeTitleLineWrapping.md b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeTitleLineWrapping.md deleted file mode 100644 index a0d6a8e6..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeTitleLineWrapping.md +++ /dev/null @@ -1,79 +0,0 @@ -# GeneratorTest Coding Standard - -## Code Title, line wrapping - -This is a standard block. - - - - - - - - - -
    Valid: exactly 45 character long description.Invalid: exactly 45 char long description---.
    - - // Dummy. - - - - // Dummy. - -
    - - - - - - - - - -
    Valid: exactly 46 character long description-.Invalid: exactly 46 character long description
    - - // Dummy. - - - - // Dummy. - -
    - - - - - - - - - -
    Valid: exactly 47 character long description--.Invalid: exactly 47 character long description.
    - - // Dummy. - - - - // Dummy. - -
    - - - - - - - - - -
    Valid: this description is longer than 46 characters and will wrap.Invalid: this description is longer than 46 characters and will wrap.
    - - // Dummy. - - - - // Dummy. - -
    - -Documentation generated on *REDACTED* by [PHP_CodeSniffer *VERSION*](https://github.com/PHPCSStandards/PHP_CodeSniffer) diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeTitleLineWrapping.txt b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeTitleLineWrapping.txt deleted file mode 100644 index 11925c4c..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeTitleLineWrapping.txt +++ /dev/null @@ -1,33 +0,0 @@ - ------------------------------------------------------------- -| GENERATORTEST CODING STANDARD: CODE TITLE, LINE WRAPPING | ------------------------------------------------------------- - -This is a standard block. - ------------------------------------------ CODE COMPARISON ------------------------------------------ -| Valid: exactly 45 character long description. | Invalid: exactly 45 char long description---. | ----------------------------------------------------------------------------------------------------- -| // Dummy. | // Dummy. | ----------------------------------------------------------------------------------------------------- - ------------------------------------------ CODE COMPARISON ------------------------------------------ -| Valid: exactly 46 character long description-. | Invalid: exactly 46 character long description | ----------------------------------------------------------------------------------------------------- -| // Dummy. | // Dummy. | ----------------------------------------------------------------------------------------------------- - ------------------------------------------ CODE COMPARISON ------------------------------------------ -| Valid: exactly 47 character long | Invalid: exactly 47 character long | -| description--. | description. | ----------------------------------------------------------------------------------------------------- -| // Dummy. | // Dummy. | ----------------------------------------------------------------------------------------------------- - ------------------------------------------ CODE COMPARISON ------------------------------------------ -| Valid: this description is longer than 46 | Invalid: this description is longer than 46 | -| characters and will wrap. | characters and will wrap. | ----------------------------------------------------------------------------------------------------- -| // Dummy. | // Dummy. | ----------------------------------------------------------------------------------------------------- - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeTitleWhitespace.html b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeTitleWhitespace.html deleted file mode 100644 index fe1c15bb..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeTitleWhitespace.html +++ /dev/null @@ -1,98 +0,0 @@ - - - GeneratorTest Coding Standards - - - -

    GeneratorTest Coding Standards

    - -

    Code Title, whitespace handling

    -

    This is a standard block.

    - - - - - - - - - -
    Valid: spaces at start of description.Invalid: spaces at end making line > 46 chars.
    // Dummy.// Dummy.
    - - - - - - - - - -
    Valid: spaces at start + end of description.Invalid: spaces '     ' in description.
    // Note: description above without the
    // trailing whitespace fits in 46 chars.
    // Dummy.
    -
    - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeTitleWhitespace.md b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeTitleWhitespace.md deleted file mode 100644 index e623ba98..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeTitleWhitespace.md +++ /dev/null @@ -1,44 +0,0 @@ -# GeneratorTest Coding Standard - -## Code Title, whitespace handling - -This is a standard block. - - - - - - - - - -
    Valid: spaces at start of description.Invalid: spaces at end making line > 46 chars.
    - - // Dummy. - - - - // Dummy. - -
    - - - - - - - - - -
    Valid: spaces at start + end of description.Invalid: spaces '     ' in description.
    - - // Note: description above without the - // trailing whitespace fits in 46 chars. - - - - // Dummy. - -
    - -Documentation generated on *REDACTED* by [PHP_CodeSniffer *VERSION*](https://github.com/PHPCSStandards/PHP_CodeSniffer) diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeTitleWhitespace.txt b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeTitleWhitespace.txt deleted file mode 100644 index 0db5a7df..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputCodeTitleWhitespace.txt +++ /dev/null @@ -1,20 +0,0 @@ - ------------------------------------------------------------------- -| GENERATORTEST CODING STANDARD: CODE TITLE, WHITESPACE HANDLING | ------------------------------------------------------------------- - -This is a standard block. - ------------------------------------------ CODE COMPARISON ------------------------------------------ -| Valid: spaces at start of description. | Invalid: spaces at end making line > 46 chars. | ----------------------------------------------------------------------------------------------------- -| // Dummy. | // Dummy. | ----------------------------------------------------------------------------------------------------- - ------------------------------------------ CODE COMPARISON ------------------------------------------ -| Valid: spaces at start + end of description. | Invalid: spaces ' ' in description. | ----------------------------------------------------------------------------------------------------- -| // Note: description above without the | // Dummy. | -| // trailing whitespace fits in 46 chars. | | ----------------------------------------------------------------------------------------------------- - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputDocumentationTitleCase.html b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputDocumentationTitleCase.html deleted file mode 100644 index 98184e1e..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputDocumentationTitleCase.html +++ /dev/null @@ -1,78 +0,0 @@ - - - GeneratorTest Coding Standards - - - -

    GeneratorTest Coding Standards

    - -

    lowercase title

    -

    This is a standard block.

    -
    - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputDocumentationTitleCase.md b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputDocumentationTitleCase.md deleted file mode 100644 index 0d63b04a..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputDocumentationTitleCase.md +++ /dev/null @@ -1,7 +0,0 @@ -# GeneratorTest Coding Standard - -## lowercase title - -This is a standard block. - -Documentation generated on *REDACTED* by [PHP_CodeSniffer *VERSION*](https://github.com/PHPCSStandards/PHP_CodeSniffer) diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputDocumentationTitleCase.txt b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputDocumentationTitleCase.txt deleted file mode 100644 index c762a01d..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputDocumentationTitleCase.txt +++ /dev/null @@ -1,7 +0,0 @@ - --------------------------------------------------- -| GENERATORTEST CODING STANDARD: LOWERCASE TITLE | --------------------------------------------------- - -This is a standard block. - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputDocumentationTitleLength.html b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputDocumentationTitleLength.html deleted file mode 100644 index e94beac1..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputDocumentationTitleLength.html +++ /dev/null @@ -1,78 +0,0 @@ - - - GeneratorTest Coding Standards - - - -

    GeneratorTest Coding Standards

    - -

    This is a very very very very very very very very very very very long title

    -

    This is a standard block.

    -
    - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputDocumentationTitleLength.md b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputDocumentationTitleLength.md deleted file mode 100644 index 252f5fca..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputDocumentationTitleLength.md +++ /dev/null @@ -1,7 +0,0 @@ -# GeneratorTest Coding Standard - -## This is a very very very very very very very very very very very long title - -This is a standard block. - -Documentation generated on *REDACTED* by [PHP_CodeSniffer *VERSION*](https://github.com/PHPCSStandards/PHP_CodeSniffer) diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputDocumentationTitleLength.txt b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputDocumentationTitleLength.txt deleted file mode 100644 index 2787b8cd..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputDocumentationTitleLength.txt +++ /dev/null @@ -1,7 +0,0 @@ - --------------------------------------------------------------------------------------------------------------- -| GENERATORTEST CODING STANDARD: THIS IS A VERY VERY VERY VERY VERY VERY VERY VERY VERY VERY VERY LONG TITLE | --------------------------------------------------------------------------------------------------------------- - -This is a standard block. - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputEmpty.txt b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputEmpty.txt deleted file mode 100644 index e69de29b..00000000 diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputOneDoc.html b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputOneDoc.html deleted file mode 100644 index 2100809e..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputOneDoc.html +++ /dev/null @@ -1,78 +0,0 @@ - - - GeneratorTest Coding Standards - - - -

    GeneratorTest Coding Standards

    - -

    One Standard Block, No Code

    -

    Documentation contains one standard block and no code comparison.

    -
    - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputOneDoc.md b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputOneDoc.md deleted file mode 100644 index f6130736..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputOneDoc.md +++ /dev/null @@ -1,7 +0,0 @@ -# GeneratorTest Coding Standard - -## One Standard Block, No Code - -Documentation contains one standard block and no code comparison. - -Documentation generated on *REDACTED* by [PHP_CodeSniffer *VERSION*](https://github.com/PHPCSStandards/PHP_CodeSniffer) diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputOneDoc.txt b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputOneDoc.txt deleted file mode 100644 index 75bbdcb0..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputOneDoc.txt +++ /dev/null @@ -1,7 +0,0 @@ - --------------------------------------------------------------- -| GENERATORTEST CODING STANDARD: ONE STANDARD BLOCK, NO CODE | --------------------------------------------------------------- - -Documentation contains one standard block and no code comparison. - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardBlankLines.html b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardBlankLines.html deleted file mode 100644 index 4c45757b..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardBlankLines.html +++ /dev/null @@ -1,80 +0,0 @@ - - - GeneratorTest Coding Standards - - - -

    GeneratorTest Coding Standards

    - -

    Standard Element, blank line handling

    -

    There is a blank line at the start of this standard.

    -

    And the above blank line is also deliberate to test part of the logic.

    -

    Let's also end on a blank line to test that too.

    -
    - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardBlankLines.md b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardBlankLines.md deleted file mode 100644 index f8663f14..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardBlankLines.md +++ /dev/null @@ -1,11 +0,0 @@ -# GeneratorTest Coding Standard - -## Standard Element, blank line handling - -There is a blank line at the start of this standard. - -And the above blank line is also deliberate to test part of the logic. - -Let's also end on a blank line to test that too. - -Documentation generated on *REDACTED* by [PHP_CodeSniffer *VERSION*](https://github.com/PHPCSStandards/PHP_CodeSniffer) diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardBlankLines.txt b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardBlankLines.txt deleted file mode 100644 index 1cdad0b1..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardBlankLines.txt +++ /dev/null @@ -1,11 +0,0 @@ - ------------------------------------------------------------------------- -| GENERATORTEST CODING STANDARD: STANDARD ELEMENT, BLANK LINE HANDLING | ------------------------------------------------------------------------- - -There is a blank line at the start of this standard. - -And the above blank line is also deliberate to test part of the logic. - -Let's also end on a blank line to test that too. - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardEncoding.html b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardEncoding.html deleted file mode 100644 index 106e835a..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardEncoding.html +++ /dev/null @@ -1,79 +0,0 @@ - - - GeneratorTest Coding Standards - - - -

    GeneratorTest Coding Standards

    - -

    Standard Element, handling of HTML tags

    -

    The use of tags in standard descriptions is allowed and their handling should be safeguarded.
    -Other tags, like <a href="example.com">link</a>, <b>bold</bold>, <script></script> are not allowed and will be encoded for display when the HTML or Markdown report is used.

    -
    - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardEncoding.md b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardEncoding.md deleted file mode 100644 index 6183dc00..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardEncoding.md +++ /dev/null @@ -1,8 +0,0 @@ -# GeneratorTest Coding Standard - -## Standard Element, handling of HTML tags - -The use of *tags* in standard descriptions is allowed and their handling should be *safeguarded*. -Other tags, like <a href="example.com">link</a>, <b>bold</bold>, <script></script> are not allowed and will be encoded for display when the HTML or Markdown report is used. - -Documentation generated on *REDACTED* by [PHP_CodeSniffer *VERSION*](https://github.com/PHPCSStandards/PHP_CodeSniffer) diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardEncoding.txt b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardEncoding.txt deleted file mode 100644 index a464b86e..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardEncoding.txt +++ /dev/null @@ -1,9 +0,0 @@ - --------------------------------------------------------------------------- -| GENERATORTEST CODING STANDARD: STANDARD ELEMENT, HANDLING OF HTML TAGS | --------------------------------------------------------------------------- - -The use of *tags* in standard descriptions is allowed and their handling should be *safeguarded*. -Other tags, like link, bold, are not allowed -and will be encoded for display when the HTML or Markdown report is used. - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardIndent.html b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardIndent.html deleted file mode 100644 index b3aad7f4..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardIndent.html +++ /dev/null @@ -1,81 +0,0 @@ - - - GeneratorTest Coding Standards - - - -

    GeneratorTest Coding Standards

    - -

    Standard Element, indentation should be ignored

    -

    This line has no indentation.
    -This line has 4 spaces indentation.
    -This line has 8 spaces indentation.
    -This line has 4 spaces indentation.

    -
    - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardIndent.md b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardIndent.md deleted file mode 100644 index 46bea4c3..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardIndent.md +++ /dev/null @@ -1,10 +0,0 @@ -# GeneratorTest Coding Standard - -## Standard Element, indentation should be ignored - -This line has no indentation. -This line has 4 spaces indentation. -This line has 8 spaces indentation. -This line has 4 spaces indentation. - -Documentation generated on *REDACTED* by [PHP_CodeSniffer *VERSION*](https://github.com/PHPCSStandards/PHP_CodeSniffer) diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardIndent.txt b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardIndent.txt deleted file mode 100644 index fef00b9d..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardIndent.txt +++ /dev/null @@ -1,10 +0,0 @@ - ----------------------------------------------------------------------------------- -| GENERATORTEST CODING STANDARD: STANDARD ELEMENT, INDENTATION SHOULD BE IGNORED | ----------------------------------------------------------------------------------- - -This line has no indentation. -This line has 4 spaces indentation. -This line has 8 spaces indentation. -This line has 4 spaces indentation. - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardLineWrapping.html b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardLineWrapping.html deleted file mode 100644 index d54d94c3..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardLineWrapping.html +++ /dev/null @@ -1,80 +0,0 @@ - - - GeneratorTest Coding Standards - - - -

    GeneratorTest Coding Standards

    - -

    Standard Element, line wrapping handling

    -

    This line has to be exactly 99 chars to test part of the logic.------------------------------------
    -And this line has to be exactly 100 chars.----------------------------------------------------------
    -And here we have a line which should start wrapping as it is longer than 100 chars. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean pellentesque iaculis enim quis hendrerit. Morbi ultrices in odio pharetra commodo.

    -
    - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardLineWrapping.md b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardLineWrapping.md deleted file mode 100644 index c94bed46..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardLineWrapping.md +++ /dev/null @@ -1,9 +0,0 @@ -# GeneratorTest Coding Standard - -## Standard Element, line wrapping handling - -This line has to be exactly 99 chars to test part of the logic.------------------------------------ -And this line has to be exactly 100 chars.---------------------------------------------------------- -And here we have a line which should start wrapping as it is longer than 100 chars. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean pellentesque iaculis enim quis hendrerit. Morbi ultrices in odio pharetra commodo. - -Documentation generated on *REDACTED* by [PHP_CodeSniffer *VERSION*](https://github.com/PHPCSStandards/PHP_CodeSniffer) diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardLineWrapping.txt b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardLineWrapping.txt deleted file mode 100644 index 6f09fbe3..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStandardLineWrapping.txt +++ /dev/null @@ -1,11 +0,0 @@ - ---------------------------------------------------------------------------- -| GENERATORTEST CODING STANDARD: STANDARD ELEMENT, LINE WRAPPING HANDLING | ---------------------------------------------------------------------------- - -This line has to be exactly 99 chars to test part of the logic.------------------------------------ -And this line has to be exactly 100 chars.---------------------------------------------------------- -And here we have a line which should start wrapping as it is longer than 100 chars. Lorem ipsum -dolor sit amet, consectetur adipiscing elit. Aenean pellentesque iaculis enim quis hendrerit. Morbi -ultrices in odio pharetra commodo. - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStructureDocs.html b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStructureDocs.html deleted file mode 100644 index db1f3a9a..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStructureDocs.html +++ /dev/null @@ -1,191 +0,0 @@ - - - GeneratorTest Coding Standards - - - -

    GeneratorTest Coding Standards

    -

    Table of Contents

    - - -

    No Content

    -
    -

    Code Comparison Only, Missing Standard Block

    - - - - - - - - - -
    Valid: Lorem ipsum dolor sit amet.Invalid: Maecenas non rutrum dolor.
    class Code {}class Comparison {}
    -
    -

    One Standard Block, Code Comparison

    -

    Documentation contains one standard block and one code comparison.

    - - - - - - - - - -
    Valid: Lorem ipsum dolor sit amet.Invalid: Maecenas non rutrum dolor.
    class Code {}class Comparison {}
    -
    -

    One Standard Block, No Code

    -

    Documentation contains one standard block and no code comparison.

    -
    -

    One Standard Block, Two Code Comparisons

    -

    Documentation contains one standard block and two code comparisons.

    - - - - - - - - - -
    Valid: Etiam commodo magna at vestibulum blandit.Invalid: Vivamus lacinia ante velit.
    class Code {}class Comparison {}
    - - - - - - - - - -
    Valid: Pellentesque nisi neque.Invalid: Mauris dictum metus quis maximus pharetra.
    $one = 10;$a = 10;
    -
    -

    Two Standard Blocks, No Code

    -

    This is standard block one.

    -

    This is standard block two.

    -
    -

    Two Standard Blocks, One Code Comparison

    -

    This is standard block one.

    - - - - - - - - - -
    Valid: Vestibulum et orci condimentum.Invalid: Donec in nisl ut tortor convallis interdum.
    class Code {}class Comparison {}
    -

    This is standard block two.

    -
    -

    Two Standard Blocks, Three Code Comparisons

    -

    This is standard block one.

    - - - - - - - - - -
    Valid: Vestibulum et orci condimentum.Invalid: Donec in nisl ut tortor convallis interdum.
    class Code {}class Comparison {}
    -

    This is standard block two.

    - - - - - - - - - -
    Valid: Pellentesque nisi neque.Invalid: Mauris dictum metus quis maximus pharetra.
    $one = 10;$a = 10;
    - - - - - - - - - -
    Valid: Quisque sagittis nisi vitae.Invalid: Morbi ac libero vitae lorem.
    echo $foo;print $foo;
    -
    - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStructureDocs.md b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStructureDocs.md deleted file mode 100644 index fec89894..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStructureDocs.md +++ /dev/null @@ -1,180 +0,0 @@ -# GeneratorTest Coding Standard - -## No Content - - -## Code Comparison Only, Missing Standard Block - - - - - - - - - - -
    Valid: Lorem ipsum dolor sit amet.Invalid: Maecenas non rutrum dolor.
    - - class Code {} - - - - class Comparison {} - -
    - -## One Standard Block, Code Comparison - -Documentation contains one standard block and one code comparison. - - - - - - - - - -
    Valid: Lorem ipsum dolor sit amet.Invalid: Maecenas non rutrum dolor.
    - - class Code {} - - - - class Comparison {} - -
    - -## One Standard Block, No Code - -Documentation contains one standard block and no code comparison. - -## One Standard Block, Two Code Comparisons - -Documentation contains one standard block and two code comparisons. - - - - - - - - - -
    Valid: Etiam commodo magna at vestibulum blandit.Invalid: Vivamus lacinia ante velit.
    - - class Code {} - - - - class Comparison {} - -
    - - - - - - - - - -
    Valid: Pellentesque nisi neque.Invalid: Mauris dictum metus quis maximus pharetra.
    - - $one = 10; - - - - $a = 10; - -
    - -## Two Standard Blocks, No Code - -This is standard block one. -This is standard block two. - -## Two Standard Blocks, One Code Comparison - -This is standard block one. - - - - - - - - - -
    Valid: Vestibulum et orci condimentum.Invalid: Donec in nisl ut tortor convallis interdum.
    - - class Code {} - - - - class Comparison {} - -
    -This is standard block two. - -## Two Standard Blocks, Three Code Comparisons - -This is standard block one. - - - - - - - - - -
    Valid: Vestibulum et orci condimentum.Invalid: Donec in nisl ut tortor convallis interdum.
    - - class Code {} - - - - class Comparison {} - -
    -This is standard block two. - - - - - - - - - -
    Valid: Pellentesque nisi neque.Invalid: Mauris dictum metus quis maximus pharetra.
    - - $one = 10; - - - - $a = 10; - -
    - - - - - - - - - -
    Valid: Quisque sagittis nisi vitae.Invalid: Morbi ac libero vitae lorem.
    - - echo $foo; - - - - print $foo; - -
    - -Documentation generated on *REDACTED* by [PHP_CodeSniffer *VERSION*](https://github.com/PHPCSStandards/PHP_CodeSniffer) diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStructureDocs.txt b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStructureDocs.txt deleted file mode 100644 index dcb404ee..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputStructureDocs.txt +++ /dev/null @@ -1,111 +0,0 @@ - ---------------------------------------------- -| GENERATORTEST CODING STANDARD: NO CONTENT | ---------------------------------------------- - - -------------------------------------------------------------------------------- -| GENERATORTEST CODING STANDARD: CODE COMPARISON ONLY, MISSING STANDARD BLOCK | -------------------------------------------------------------------------------- - ------------------------------------------ CODE COMPARISON ------------------------------------------ -| Valid: Lorem ipsum dolor sit amet. | Invalid: Maecenas non rutrum dolor. | ----------------------------------------------------------------------------------------------------- -| class Code {} | class Comparison {} | ----------------------------------------------------------------------------------------------------- - - ----------------------------------------------------------------------- -| GENERATORTEST CODING STANDARD: ONE STANDARD BLOCK, CODE COMPARISON | ----------------------------------------------------------------------- - -Documentation contains one standard block and one code comparison. - ------------------------------------------ CODE COMPARISON ------------------------------------------ -| Valid: Lorem ipsum dolor sit amet. | Invalid: Maecenas non rutrum dolor. | ----------------------------------------------------------------------------------------------------- -| class Code {} | class Comparison {} | ----------------------------------------------------------------------------------------------------- - - --------------------------------------------------------------- -| GENERATORTEST CODING STANDARD: ONE STANDARD BLOCK, NO CODE | --------------------------------------------------------------- - -Documentation contains one standard block and no code comparison. - - ---------------------------------------------------------------------------- -| GENERATORTEST CODING STANDARD: ONE STANDARD BLOCK, TWO CODE COMPARISONS | ---------------------------------------------------------------------------- - -Documentation contains one standard block and two code comparisons. - ------------------------------------------ CODE COMPARISON ------------------------------------------ -| Valid: Etiam commodo magna at vestibulum | Invalid: Vivamus lacinia ante velit. | -| blandit. | | ----------------------------------------------------------------------------------------------------- -| class Code {} | class Comparison {} | ----------------------------------------------------------------------------------------------------- - ------------------------------------------ CODE COMPARISON ------------------------------------------ -| Valid: Pellentesque nisi neque. | Invalid: Mauris dictum metus quis maximus | -| | pharetra. | ----------------------------------------------------------------------------------------------------- -| $one = 10; | $a = 10; | ----------------------------------------------------------------------------------------------------- - - ---------------------------------------------------------------- -| GENERATORTEST CODING STANDARD: TWO STANDARD BLOCKS, NO CODE | ---------------------------------------------------------------- - -This is standard block one. - -This is standard block two. - - ---------------------------------------------------------------------------- -| GENERATORTEST CODING STANDARD: TWO STANDARD BLOCKS, ONE CODE COMPARISON | ---------------------------------------------------------------------------- - -This is standard block one. - ------------------------------------------ CODE COMPARISON ------------------------------------------ -| Valid: Vestibulum et orci condimentum. | Invalid: Donec in nisl ut tortor convallis | -| | interdum. | ----------------------------------------------------------------------------------------------------- -| class Code {} | class Comparison {} | ----------------------------------------------------------------------------------------------------- - -This is standard block two. - - ------------------------------------------------------------------------------- -| GENERATORTEST CODING STANDARD: TWO STANDARD BLOCKS, THREE CODE COMPARISONS | ------------------------------------------------------------------------------- - -This is standard block one. - ------------------------------------------ CODE COMPARISON ------------------------------------------ -| Valid: Vestibulum et orci condimentum. | Invalid: Donec in nisl ut tortor convallis | -| | interdum. | ----------------------------------------------------------------------------------------------------- -| class Code {} | class Comparison {} | ----------------------------------------------------------------------------------------------------- - -This is standard block two. - ------------------------------------------ CODE COMPARISON ------------------------------------------ -| Valid: Pellentesque nisi neque. | Invalid: Mauris dictum metus quis maximus | -| | pharetra. | ----------------------------------------------------------------------------------------------------- -| $one = 10; | $a = 10; | ----------------------------------------------------------------------------------------------------- - ------------------------------------------ CODE COMPARISON ------------------------------------------ -| Valid: Quisque sagittis nisi vitae. | Invalid: Morbi ac libero vitae lorem. | ----------------------------------------------------------------------------------------------------- -| echo $foo; | print $foo; | ----------------------------------------------------------------------------------------------------- - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedElementAtWrongLevel.html b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedElementAtWrongLevel.html deleted file mode 100644 index dfa5670f..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedElementAtWrongLevel.html +++ /dev/null @@ -1,77 +0,0 @@ - - - GeneratorTest Coding Standards - - - -

    GeneratorTest Coding Standards

    - -

    Code element at wrong level

    -
    - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedElementAtWrongLevel.md b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedElementAtWrongLevel.md deleted file mode 100644 index 048f028d..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedElementAtWrongLevel.md +++ /dev/null @@ -1,6 +0,0 @@ -# GeneratorTest Coding Standard - -## Code element at wrong level - - -Documentation generated on *REDACTED* by [PHP_CodeSniffer *VERSION*](https://github.com/PHPCSStandards/PHP_CodeSniffer) diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedElementAtWrongLevel.txt b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedElementAtWrongLevel.txt deleted file mode 100644 index 940832ce..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedElementAtWrongLevel.txt +++ /dev/null @@ -1,5 +0,0 @@ - --------------------------------------------------------------- -| GENERATORTEST CODING STANDARD: CODE ELEMENT AT WRONG LEVEL | --------------------------------------------------------------- - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedOneElmAtWrongLevel.html b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedOneElmAtWrongLevel.html deleted file mode 100644 index dc86a6c4..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedOneElmAtWrongLevel.html +++ /dev/null @@ -1,78 +0,0 @@ - - - GeneratorTest Coding Standards - - - -

    GeneratorTest Coding Standards

    - -

    One element correct, one element wrong level

    -

    This is a standard block at the correct level.

    -
    - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedOneElmAtWrongLevel.md b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedOneElmAtWrongLevel.md deleted file mode 100644 index aa9cc472..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedOneElmAtWrongLevel.md +++ /dev/null @@ -1,7 +0,0 @@ -# GeneratorTest Coding Standard - -## One element correct, one element wrong level - -This is a standard block at the correct level. - -Documentation generated on *REDACTED* by [PHP_CodeSniffer *VERSION*](https://github.com/PHPCSStandards/PHP_CodeSniffer) diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedOneElmAtWrongLevel.txt b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedOneElmAtWrongLevel.txt deleted file mode 100644 index 4d1aaeaa..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedOneElmAtWrongLevel.txt +++ /dev/null @@ -1,7 +0,0 @@ - -------------------------------------------------------------------------------- -| GENERATORTEST CODING STANDARD: ONE ELEMENT CORRECT, ONE ELEMENT WRONG LEVEL | -------------------------------------------------------------------------------- - -This is a standard block at the correct level. - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedSuperfluousCodeElement.html b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedSuperfluousCodeElement.html deleted file mode 100644 index 967381e3..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedSuperfluousCodeElement.html +++ /dev/null @@ -1,88 +0,0 @@ - - - GeneratorTest Coding Standards - - - -

    GeneratorTest Coding Standards

    - -

    Superfluous code element

    -

    This is a standard block.

    - - - - - - - - - -
    Valid: Checking handling of blank lines.Invalid: Checking handling of blank lines.
    $valid = true;$invalid = true;
    -
    - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedSuperfluousCodeElement.md b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedSuperfluousCodeElement.md deleted file mode 100644 index f6cdad94..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedSuperfluousCodeElement.md +++ /dev/null @@ -1,25 +0,0 @@ -# GeneratorTest Coding Standard - -## Superfluous code element - -This is a standard block. - - - - - - - - - -
    Valid: Checking handling of blank lines.Invalid: Checking handling of blank lines.
    - - $valid = true; - - - - $invalid = true; - -
    - -Documentation generated on *REDACTED* by [PHP_CodeSniffer *VERSION*](https://github.com/PHPCSStandards/PHP_CodeSniffer) diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedSuperfluousCodeElement.txt b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedSuperfluousCodeElement.txt deleted file mode 100644 index 1307eebf..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedSuperfluousCodeElement.txt +++ /dev/null @@ -1,13 +0,0 @@ - ------------------------------------------------------------ -| GENERATORTEST CODING STANDARD: SUPERFLUOUS CODE ELEMENT | ------------------------------------------------------------ - -This is a standard block. - ------------------------------------------ CODE COMPARISON ------------------------------------------ -| Valid: Checking handling of blank lines. | Invalid: Checking handling of blank lines. | ----------------------------------------------------------------------------------------------------- -| $valid = true; | $invalid = true; | ----------------------------------------------------------------------------------------------------- - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedUnknownElement.html b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedUnknownElement.html deleted file mode 100644 index 770d08bb..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedUnknownElement.html +++ /dev/null @@ -1,77 +0,0 @@ - - - GeneratorTest Coding Standards - - - -

    GeneratorTest Coding Standards

    - -

    Unknown element

    -
    - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedUnknownElement.md b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedUnknownElement.md deleted file mode 100644 index 21141522..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedUnknownElement.md +++ /dev/null @@ -1,6 +0,0 @@ -# GeneratorTest Coding Standard - -## Unknown element - - -Documentation generated on *REDACTED* by [PHP_CodeSniffer *VERSION*](https://github.com/PHPCSStandards/PHP_CodeSniffer) diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedUnknownElement.txt b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedUnknownElement.txt deleted file mode 100644 index 3e2f5647..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Expectations/ExpectedOutputUnsupportedUnknownElement.txt +++ /dev/null @@ -1,5 +0,0 @@ - --------------------------------------------------- -| GENERATORTEST CODING STANDARD: UNKNOWN ELEMENT | --------------------------------------------------- - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/HTMLDouble.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/HTMLDouble.php deleted file mode 100644 index 92037240..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/HTMLDouble.php +++ /dev/null @@ -1,40 +0,0 @@ -'; - echo 'Documentation generated on #REDACTED#'; - echo ' by PHP_CodeSniffer #VERSION#'; - echo '
    '.PHP_EOL; - echo ' '.PHP_EOL; - echo ''.PHP_EOL; - } - - /** - * Print the _real_ footer of the HTML page. - * - * @return void - */ - public function printRealFooter() - { - parent::printFooter(); - } -} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/MarkdownDouble.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/MarkdownDouble.php deleted file mode 100644 index ed2a5d8f..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/MarkdownDouble.php +++ /dev/null @@ -1,36 +0,0 @@ -getTitle($doc), PHP_EOL; - } -} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/CodeComparisonBlankLinesStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/CodeComparisonBlankLinesStandard.xml deleted file mode 100644 index bcaf82bb..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/CodeComparisonBlankLinesStandard.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/CodeComparisonBlockLengthStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/CodeComparisonBlockLengthStandard.xml deleted file mode 100644 index c479a7fd..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/CodeComparisonBlockLengthStandard.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - $one = 10; - ]]> - - - $a = 10; - ]]> - - - - - echo $foo; - ]]> - - - print $foo; - ]]> - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/CodeComparisonEncodingStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/CodeComparisonEncodingStandard.xml deleted file mode 100644 index c366553f..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/CodeComparisonEncodingStandard.xml +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - $f; -$g = $h <= $i; -$j = $k >= $l; -$m = $n <=> $o; - ]]> - - - - -// The above PHP tag is specifically testing -// handling of that in generated HTML doc. - -// Now let's also check the handling of -// comparison operators in code samples -// in combination with "em" tags. -$a = $b < $c; -$d = $e > $f; -$g = $h <= $i; -$j = $k >= $l; -$m = $n <=> $o; - ]]> - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/CodeComparisonLineLengthStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/CodeComparisonLineLengthStandard.xml deleted file mode 100644 index b4431ea8..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/CodeComparisonLineLengthStandard.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - Countable, Serializable -{ -} - ]]> - - - foobar($param1, $param2) {} -} - ]]> - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/CodeTitleLineWrappingStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/CodeTitleLineWrappingStandard.xml deleted file mode 100644 index b773f7a8..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/CodeTitleLineWrappingStandard.xml +++ /dev/null @@ -1,55 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/CodeTitleWhitespaceStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/CodeTitleWhitespaceStandard.xml deleted file mode 100644 index 28297202..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/CodeTitleWhitespaceStandard.xml +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/DocumentationTitleCaseStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/DocumentationTitleCaseStandard.xml deleted file mode 100644 index a4078e3d..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/DocumentationTitleCaseStandard.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/DocumentationTitleLengthStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/DocumentationTitleLengthStandard.xml deleted file mode 100644 index 24489276..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/DocumentationTitleLengthStandard.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/StandardBlankLinesStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/StandardBlankLinesStandard.xml deleted file mode 100644 index 10c47bf4..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/StandardBlankLinesStandard.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/StandardEncodingStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/StandardEncodingStandard.xml deleted file mode 100644 index 3e34c3f9..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/StandardEncodingStandard.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - tags in standard descriptions is allowed and their handling should be safeguarded. - Other tags, like link, bold, are not allowed and will be encoded for display when the HTML or Markdown report is used. - ]]> - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/StandardIndentStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/StandardIndentStandard.xml deleted file mode 100644 index b2ec6c5e..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/StandardIndentStandard.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/StandardLineWrappingStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/StandardLineWrappingStandard.xml deleted file mode 100644 index 66bbb962..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Content/StandardLineWrappingStandard.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/NoContentStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/NoContentStandard.xml deleted file mode 100644 index 83afee8e..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/NoContentStandard.xml +++ /dev/null @@ -1,2 +0,0 @@ - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/NoDocumentationElementStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/NoDocumentationElementStandard.xml deleted file mode 100644 index ca8290f1..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/NoDocumentationElementStandard.xml +++ /dev/null @@ -1,2 +0,0 @@ - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/OneCodeComparisonNoStandardStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/OneCodeComparisonNoStandardStandard.xml deleted file mode 100644 index c2af9098..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/OneCodeComparisonNoStandardStandard.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - class Code {} - ]]> - - - class Comparison {} - ]]> - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/OneStandardBlockCodeComparisonStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/OneStandardBlockCodeComparisonStandard.xml deleted file mode 100644 index c3ce35cd..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/OneStandardBlockCodeComparisonStandard.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - class Code {} - ]]> - - - class Comparison {} - ]]> - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/OneStandardBlockNoCodeStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/OneStandardBlockNoCodeStandard.xml deleted file mode 100644 index fc014949..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/OneStandardBlockNoCodeStandard.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/OneStandardBlockTwoCodeComparisonsStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/OneStandardBlockTwoCodeComparisonsStandard.xml deleted file mode 100644 index 19559e67..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/OneStandardBlockTwoCodeComparisonsStandard.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - class Code {} - ]]> - - - class Comparison {} - ]]> - - - - - $one = 10; - ]]> - - - $a = 10; - ]]> - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/TwoStandardBlocksNoCodeStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/TwoStandardBlocksNoCodeStandard.xml deleted file mode 100644 index f5f621ec..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/TwoStandardBlocksNoCodeStandard.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/TwoStandardBlocksOneCodeComparisonStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/TwoStandardBlocksOneCodeComparisonStandard.xml deleted file mode 100644 index a5b3a321..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/TwoStandardBlocksOneCodeComparisonStandard.xml +++ /dev/null @@ -1,24 +0,0 @@ - - - - - - - Code {} - ]]> - - - Comparison {} - ]]> - - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/TwoStandardBlocksThreeCodeComparisonsStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/TwoStandardBlocksThreeCodeComparisonsStandard.xml deleted file mode 100644 index 540ac7ea..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Structure/TwoStandardBlocksThreeCodeComparisonsStandard.xml +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - class Code {} - ]]> - - - class Comparison {} - ]]> - - - - - - - - $one = 10; - ]]> - - - $a = 10; - ]]> - - - - - echo $foo; - ]]> - - - print $foo; - ]]> - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Unsupported/ElementAtWrongLevelStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Unsupported/ElementAtWrongLevelStandard.xml deleted file mode 100644 index 68519dd2..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Unsupported/ElementAtWrongLevelStandard.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Unsupported/OneElmAtWrongLevelStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Unsupported/OneElmAtWrongLevelStandard.xml deleted file mode 100644 index 6c1dd164..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Unsupported/OneElmAtWrongLevelStandard.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Unsupported/SuperfluousCodeElementStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Unsupported/SuperfluousCodeElementStandard.xml deleted file mode 100644 index 333786a3..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Unsupported/SuperfluousCodeElementStandard.xml +++ /dev/null @@ -1,24 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Unsupported/UnknownElementStandard.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Unsupported/UnknownElementStandard.xml deleted file mode 100644 index c9ec3227..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Docs/Unsupported/UnknownElementStandard.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Sniffs/Content/CodeComparisonBlankLinesSniff.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Sniffs/Content/CodeComparisonBlankLinesSniff.php deleted file mode 100644 index 1e56bf9c..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/Fixtures/StandardWithDocs/Sniffs/Content/CodeComparisonBlankLinesSniff.php +++ /dev/null @@ -1,12 +0,0 @@ - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/GeneratorTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/GeneratorTest.php deleted file mode 100644 index 441c4998..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/GeneratorTest.php +++ /dev/null @@ -1,245 +0,0 @@ - $expected The expected list of found docs. - * - * @dataProvider dataConstructor - * - * @return void - */ - public function testConstructor($standard, array $expected) - { - // Set up the ruleset. - $config = new ConfigDouble(["--standard=$standard"]); - $ruleset = new Ruleset($config); - - $generator = new MockGenerator($ruleset); - $this->assertSame($expected, $generator->docFiles); - - }//end testConstructor() - - - /** - * Data provider. - * - * @return array>> - */ - public static function dataConstructor() - { - $pathToDocsInFixture = __DIR__.DIRECTORY_SEPARATOR.'Fixtures'; - $pathToDocsInFixture .= DIRECTORY_SEPARATOR.'StandardWithDocs'; - $pathToDocsInFixture .= DIRECTORY_SEPARATOR.'Docs'.DIRECTORY_SEPARATOR; - - return [ - 'Standard without docs' => [ - 'standard' => __DIR__.'/NoDocsTest.xml', - 'expected' => [], - ], - 'Standard with an invalid doc file' => [ - 'standard' => __DIR__.'/NoValidDocsTest.xml', - 'expected' => [ - $pathToDocsInFixture.'Structure'.DIRECTORY_SEPARATOR.'NoDocumentationElementStandard.xml', - ], - ], - 'Standard with one doc file' => [ - 'standard' => __DIR__.'/OneDocTest.xml', - 'expected' => [ - $pathToDocsInFixture.'Structure'.DIRECTORY_SEPARATOR.'OneStandardBlockNoCodeStandard.xml', - ], - ], - 'Standard with multiple doc files' => [ - 'standard' => __DIR__.'/StructureDocsTest.xml', - 'expected' => [ - $pathToDocsInFixture.'Structure'.DIRECTORY_SEPARATOR.'NoContentStandard.xml', - $pathToDocsInFixture.'Structure'.DIRECTORY_SEPARATOR.'OneCodeComparisonNoStandardStandard.xml', - $pathToDocsInFixture.'Structure'.DIRECTORY_SEPARATOR.'OneStandardBlockCodeComparisonStandard.xml', - $pathToDocsInFixture.'Structure'.DIRECTORY_SEPARATOR.'OneStandardBlockNoCodeStandard.xml', - $pathToDocsInFixture.'Structure'.DIRECTORY_SEPARATOR.'OneStandardBlockTwoCodeComparisonsStandard.xml', - $pathToDocsInFixture.'Structure'.DIRECTORY_SEPARATOR.'TwoStandardBlocksNoCodeStandard.xml', - $pathToDocsInFixture.'Structure'.DIRECTORY_SEPARATOR.'TwoStandardBlocksOneCodeComparisonStandard.xml', - $pathToDocsInFixture.'Structure'.DIRECTORY_SEPARATOR.'TwoStandardBlocksThreeCodeComparisonsStandard.xml', - ], - ], - ]; - - }//end dataConstructor() - - - /** - * Verify that an XML doc which isn't valid documentation yields an Exception to warn devs. - * - * This should not be hidden via defensive coding! - * - * @return void - */ - public function testGeneratingInvalidDocsResultsInException() - { - // Set up the ruleset. - $standard = __DIR__.'/NoValidDocsTest.xml'; - $config = new ConfigDouble(["--standard=$standard"]); - $ruleset = new Ruleset($config); - - if (PHP_VERSION_ID >= 80000) { - $exception = 'TypeError'; - $message = 'processSniff(): Argument #1 ($doc) must be of type DOMNode, null given'; - } else if (PHP_VERSION_ID >= 70000) { - $exception = 'TypeError'; - $message = 'processSniff() must be an instance of DOMNode, null given'; - } else { - $exception = 'PHPUnit_Framework_Error'; - $message = 'processSniff() must be an instance of DOMNode, null given'; - } - - if (method_exists($this, 'expectExceptionMessage') === true) { - // PHPUnit 5.2.0+. - $this->expectException($exception); - $this->expectExceptionMessage($message); - } else { - // Ancient PHPUnit. - $this->setExpectedException($exception, $message); - } - - $generator = new MockGenerator($ruleset); - $generator->generate(); - - }//end testGeneratingInvalidDocsResultsInException() - - - /** - * Verify the wiring for the generate() function. - * - * @param string $standard The standard to use for the test. - * @param string $expected The expected function output. - * - * @dataProvider dataGeneratingDocs - * - * @return void - */ - public function testGeneratingDocs($standard, $expected) - { - // Set up the ruleset. - $config = new ConfigDouble(["--standard=$standard"]); - $ruleset = new Ruleset($config); - - $this->expectOutputString($expected); - - $generator = new MockGenerator($ruleset); - $generator->generate(); - - }//end testGeneratingDocs() - - - /** - * Data provider. - * - * @return array> - */ - public static function dataGeneratingDocs() - { - $multidocExpected = []; - $multidocExpected[] = 'No Content'; - $multidocExpected[] = 'Code Comparison Only, Missing Standard Block'; - $multidocExpected[] = 'One Standard Block, Code Comparison'; - $multidocExpected[] = 'One Standard Block, No Code'; - $multidocExpected[] = 'One Standard Block, Two Code Comparisons'; - $multidocExpected[] = 'Two Standard Blocks, No Code'; - $multidocExpected[] = 'Two Standard Blocks, One Code Comparison'; - $multidocExpected[] = 'Two Standard Blocks, Three Code Comparisons'; - $multidocExpected = implode(PHP_EOL, $multidocExpected).PHP_EOL; - - return [ - 'Standard without docs' => [ - 'standard' => __DIR__.'/NoDocsTest.xml', - 'expected' => '', - ], - 'Standard with one doc file' => [ - 'standard' => __DIR__.'/OneDocTest.xml', - 'expected' => 'One Standard Block, No Code'.PHP_EOL, - ], - 'Standard with multiple doc files' => [ - 'standard' => __DIR__.'/StructureDocsTest.xml', - 'expected' => $multidocExpected, - ], - ]; - - }//end dataGeneratingDocs() - - - /** - * Test that the documentation for each standard passed on the command-line is shown separately. - * - * @covers \PHP_CodeSniffer\Runner::runPHPCS - * - * @return void - */ - public function testGeneratorWillShowEachStandardSeparately() - { - if (PHP_CODESNIFFER_CBF === true) { - $this->markTestSkipped('This test needs CS mode to run'); - } - - $standard = __DIR__.'/OneDocTest.xml'; - $_SERVER['argv'] = [ - 'phpcs', - '--generator=Text', - "--standard=$standard,PSR1", - '--report-width=80', - ]; - - $regex = '`^ - \R* # Optional blank line at the start. - (?: - (?P-+\R) # Line with dashes. - \|[ ]GENERATORTEST[ ]CODING[ ]STANDARD:[ ][^\|]+\|\R # Doc title line with prefix expected for first standard. - (?P>delimiter) # Line with dashes. - .+?\R{2} # Standard description. - ) # Only expect this group once. - (?: - (?P>delimiter) # Line with dashes. - \|[ ]PSR1[ ]CODING[ ]STANDARD:[ ][^\|]+\|\R # Doc title line with prefix expected for second standard. - (?P>delimiter) # Line with dashes. - .+?\R+ # Standard description. - (?: - -+[ ]CODE[ ]COMPARISON[ ]-+\R # Code Comparison starter line with dashes. - (?:.+?(?P>delimiter)\R){2} # Arbitrary text followed by a delimiter line. - )* # Code comparison is optional and can exist multiple times. - \R+ - ){3,} # This complete group should occur at least three times. - `sx'; - - $this->expectOutputRegex($regex); - - $runner = new Runner(); - $runner->runPHPCS(); - - }//end testGeneratorWillShowEachStandardSeparately() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/HTMLTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/HTMLTest.php deleted file mode 100644 index 9cec58e7..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/HTMLTest.php +++ /dev/null @@ -1,292 +0,0 @@ -assertNotFalse($expected, 'Output expectation file could not be found'); - - // Make the test OS independent. - $expected = str_replace("\n", PHP_EOL, $expected); - $this->expectOutputString($expected); - - $generator = new HTMLDouble($ruleset); - $generator->generate(); - - }//end testDocs() - - - /** - * Data provider. - * - * @return array> - */ - public static function dataDocs() - { - return [ - 'Standard without docs' => [ - 'standard' => __DIR__.'/NoDocsTest.xml', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputEmpty.txt', - ], - 'Standard with one doc file' => [ - 'standard' => __DIR__.'/OneDocTest.xml', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputOneDoc.html', - ], - 'Standard with multiple doc files' => [ - 'standard' => __DIR__.'/StructureDocsTest.xml', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputStructureDocs.html', - ], - ]; - - }//end dataDocs() - - - /** - * Test the generated docs for the handling of specific parts of the documentation. - * - * @param string $sniffs The specific fixture sniffs to verify the docs for. - * @param string $pathToExpected Path to a file containing the expected function output. - * - * @dataProvider dataDocSpecifics - * - * @return void - */ - public function testDocSpecifics($sniffs, $pathToExpected) - { - // Set up the ruleset. - $standard = __DIR__.'/AllValidDocsTest.xml'; - $config = new ConfigDouble(["--standard=$standard", "--sniffs=$sniffs"]); - $ruleset = new Ruleset($config); - - // In tests, the `--sniffs` setting doesn't work out of the box. - $sniffParts = explode('.', $sniffs); - $sniffFile = __DIR__.DIRECTORY_SEPARATOR.'Fixtures'.DIRECTORY_SEPARATOR.$sniffParts[0].DIRECTORY_SEPARATOR; - $sniffFile .= 'Sniffs'.DIRECTORY_SEPARATOR.$sniffParts[1].DIRECTORY_SEPARATOR.$sniffParts[2].'Sniff.php'; - - $sniffParts = array_map('strtolower', $sniffParts); - $sniffName = $sniffParts[0].'\sniffs\\'.$sniffParts[1].'\\'.$sniffParts[2].'sniff'; - $restrictions = [$sniffName => true]; - $ruleset->registerSniffs([$sniffFile], $restrictions, []); - - $expected = file_get_contents($pathToExpected); - $this->assertNotFalse($expected, 'Output expectation file could not be found'); - - // Make the test OS independent. - $expected = str_replace("\n", PHP_EOL, $expected); - $this->expectOutputString($expected); - - $generator = new HTMLDouble($ruleset); - $generator->generate(); - - }//end testDocSpecifics() - - - /** - * Data provider. - * - * @return array> - */ - public static function dataDocSpecifics() - { - return [ - 'Documentation title: case' => [ - 'sniffs' => 'StandardWithDocs.Content.DocumentationTitleCase', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputDocumentationTitleCase.html', - ], - 'Documentation title: length' => [ - 'sniffs' => 'StandardWithDocs.Content.DocumentationTitleLength', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputDocumentationTitleLength.html', - ], - 'Standard Element: blank line handling' => [ - 'sniffs' => 'StandardWithDocs.Content.StandardBlankLines', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputStandardBlankLines.html', - ], - 'Standard Element: encoding of special characters' => [ - 'sniffs' => 'StandardWithDocs.Content.StandardEncoding', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputStandardEncoding.html', - ], - 'Standard Element: indent handling' => [ - 'sniffs' => 'StandardWithDocs.Content.StandardIndent', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputStandardIndent.html', - ], - 'Standard Element: line wrapping' => [ - 'sniffs' => 'StandardWithDocs.Content.StandardLineWrapping', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputStandardLineWrapping.html', - ], - 'Code Title: line wrapping' => [ - 'sniffs' => 'StandardWithDocs.Content.CodeTitleLineWrapping', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputCodeTitleLineWrapping.html', - ], - 'Code Title: whitespace handling' => [ - 'sniffs' => 'StandardWithDocs.Content.CodeTitleWhitespace', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputCodeTitleWhitespace.html', - ], - 'Code Comparison: blank line handling' => [ - 'sniffs' => 'StandardWithDocs.Content.CodeComparisonBlankLines', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputCodeComparisonBlankLines.html', - ], - 'Code Comparison: different block lengths' => [ - 'sniffs' => 'StandardWithDocs.Content.CodeComparisonBlockLength', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputCodeComparisonBlockLength.html', - ], - 'Code Comparison: encoding of special characters' => [ - 'sniffs' => 'StandardWithDocs.Content.CodeComparisonEncoding', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputCodeComparisonEncoding.html', - ], - 'Code Comparison: line length handling' => [ - 'sniffs' => 'StandardWithDocs.Content.CodeComparisonLineLength', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputCodeComparisonLineLength.html', - ], - 'Unsupported: element at the wrong level' => [ - 'sniffs' => 'StandardWithDocs.Unsupported.ElementAtWrongLevel', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputUnsupportedElementAtWrongLevel.html', - ], - 'Unsupported: one correct elm, one at wrong level' => [ - 'sniffs' => 'StandardWithDocs.Unsupported.OneElmAtWrongLevel', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputUnsupportedOneElmAtWrongLevel.html', - ], - 'Unsupported: superfluous code element' => [ - 'sniffs' => 'StandardWithDocs.Unsupported.SuperfluousCodeElement', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputUnsupportedSuperfluousCodeElement.html', - ], - 'Unsupported: unknown element' => [ - 'sniffs' => 'StandardWithDocs.Unsupported.UnknownElement', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputUnsupportedUnknownElement.html', - ], - ]; - - }//end dataDocSpecifics() - - - /** - * Test the generated footer. - * - * @return void - */ - public function testFooter() - { - // Set up the ruleset. - $standard = __DIR__.'/OneDocTest.xml'; - $config = new ConfigDouble(["--standard=$standard"]); - $ruleset = new Ruleset($config); - - $regex = '`^
    '; - $regex .= 'Documentation generated on [A-Z][a-z]{2}, [0-9]{2} [A-Z][a-z]{2} 20[0-9]{2} [0-2][0-9](?::[0-5][0-9]){2} [+-][0-9]{4}'; - $regex .= ' by PHP_CodeSniffer [3-9]\.[0-9]+.[0-9]+'; - $regex .= '
    \R \R\R$`'; - $this->expectOutputRegex($regex); - - $generator = new HTMLDouble($ruleset); - $generator->printRealFooter(); - - }//end testFooter() - - - /** - * Safeguard that the footer logic doesn't permanently change the error level. - * - * @runInSeparateProcess - * @preserveGlobalState disabled - * - * @return void - */ - public function testFooterResetsErrorReportingToOriginalSetting() - { - $expected = error_reporting(); - - // Set up the ruleset. - $standard = __DIR__.'/OneDocTest.xml'; - $config = new ConfigDouble(["--standard=$standard"]); - $ruleset = new Ruleset($config); - - // We know there will be output, but we're not interested in the output for this test. - ob_start(); - $generator = new HTMLDouble($ruleset); - $generator->printRealFooter(); - ob_end_clean(); - - $this->assertSame($expected, error_reporting()); - - }//end testFooterResetsErrorReportingToOriginalSetting() - - - /** - * Safeguard that users won't see a PHP warning about the timezone not being set when calling date(). - * - * The warning we don't want to see is: - * "date(): It is not safe to rely on the system's timezone settings. You are *required* to use - * the date.timezone setting or the date_default_timezone_set() function. In case you used any of - * those methods and you are still getting this warning, you most likely misspelled the timezone - * identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select - * your timezone." - * - * JRF: Based on my tests, the warning only occurs on PHP < 7.0, but never a bad thing to safeguard this - * on a wider range of PHP versions. - * - * Note: as of PHP 8.2, PHP no longer accepts an empty string as timezone and will use `UTC` instead, - * so the warning on calling date() in the code itself would not display anyway. - * - * @requires PHP < 8.2 - * - * @doesNotPerformAssertions - * - * @return void - */ - public function testFooterDoesntThrowWarningOnMissingTimezone() - { - $originalIni = @ini_set('date.timezone', ''); - - // Set up the ruleset. - $standard = __DIR__.'/OneDocTest.xml'; - $config = new ConfigDouble(["--standard=$standard"]); - $ruleset = new Ruleset($config); - - // We know there will be output, but we're not interested in the output for this test. - ob_start(); - $generator = new HTMLDouble($ruleset); - $generator->printRealFooter(); - ob_end_clean(); - - // Reset the timezone to its original state. - ini_set('date.timezone', $originalIni); - - }//end testFooterDoesntThrowWarningOnMissingTimezone() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/MarkdownTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/MarkdownTest.php deleted file mode 100644 index 54f60d07..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/MarkdownTest.php +++ /dev/null @@ -1,290 +0,0 @@ -assertNotFalse($expected, 'Output expectation file could not be found'); - - // Make the test OS independent. - $expected = str_replace("\n", PHP_EOL, $expected); - $this->expectOutputString($expected); - - $generator = new MarkdownDouble($ruleset); - $generator->generate(); - - }//end testDocs() - - - /** - * Data provider. - * - * @return array> - */ - public static function dataDocs() - { - return [ - 'Standard without docs' => [ - 'standard' => __DIR__.'/NoDocsTest.xml', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputEmpty.txt', - ], - 'Standard with one doc file' => [ - 'standard' => __DIR__.'/OneDocTest.xml', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputOneDoc.md', - ], - 'Standard with multiple doc files' => [ - 'standard' => __DIR__.'/StructureDocsTest.xml', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputStructureDocs.md', - ], - ]; - - }//end dataDocs() - - - /** - * Test the generated docs for the handling of specific parts of the documentation. - * - * @param string $sniffs The specific fixture sniffs to verify the docs for. - * @param string $pathToExpected Path to a file containing the expected function output. - * - * @dataProvider dataDocSpecifics - * - * @return void - */ - public function testDocSpecifics($sniffs, $pathToExpected) - { - // Set up the ruleset. - $standard = __DIR__.'/AllValidDocsTest.xml'; - $config = new ConfigDouble(["--standard=$standard", "--sniffs=$sniffs"]); - $ruleset = new Ruleset($config); - - // In tests, the `--sniffs` setting doesn't work out of the box. - $sniffParts = explode('.', $sniffs); - $sniffFile = __DIR__.DIRECTORY_SEPARATOR.'Fixtures'.DIRECTORY_SEPARATOR.$sniffParts[0].DIRECTORY_SEPARATOR; - $sniffFile .= 'Sniffs'.DIRECTORY_SEPARATOR.$sniffParts[1].DIRECTORY_SEPARATOR.$sniffParts[2].'Sniff.php'; - - $sniffParts = array_map('strtolower', $sniffParts); - $sniffName = $sniffParts[0].'\sniffs\\'.$sniffParts[1].'\\'.$sniffParts[2].'sniff'; - $restrictions = [$sniffName => true]; - $ruleset->registerSniffs([$sniffFile], $restrictions, []); - - $expected = file_get_contents($pathToExpected); - $this->assertNotFalse($expected, 'Output expectation file could not be found'); - - // Make the test OS independent. - $expected = str_replace("\n", PHP_EOL, $expected); - $this->expectOutputString($expected); - - $generator = new MarkdownDouble($ruleset); - $generator->generate(); - - }//end testDocSpecifics() - - - /** - * Data provider. - * - * @return array> - */ - public static function dataDocSpecifics() - { - return [ - 'Documentation title: case' => [ - 'sniffs' => 'StandardWithDocs.Content.DocumentationTitleCase', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputDocumentationTitleCase.md', - ], - 'Documentation title: length' => [ - 'sniffs' => 'StandardWithDocs.Content.DocumentationTitleLength', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputDocumentationTitleLength.md', - ], - 'Standard Element: blank line handling' => [ - 'sniffs' => 'StandardWithDocs.Content.StandardBlankLines', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputStandardBlankLines.md', - ], - 'Standard Element: encoding of special characters' => [ - 'sniffs' => 'StandardWithDocs.Content.StandardEncoding', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputStandardEncoding.md', - ], - 'Standard Element: indent handling' => [ - 'sniffs' => 'StandardWithDocs.Content.StandardIndent', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputStandardIndent.md', - ], - 'Standard Element: line wrapping' => [ - 'sniffs' => 'StandardWithDocs.Content.StandardLineWrapping', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputStandardLineWrapping.md', - ], - 'Code Title: line wrapping' => [ - 'sniffs' => 'StandardWithDocs.Content.CodeTitleLineWrapping', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputCodeTitleLineWrapping.md', - ], - 'Code Title: whitespace handling' => [ - 'sniffs' => 'StandardWithDocs.Content.CodeTitleWhitespace', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputCodeTitleWhitespace.md', - ], - 'Code Comparison: blank line handling' => [ - 'sniffs' => 'StandardWithDocs.Content.CodeComparisonBlankLines', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputCodeComparisonBlankLines.md', - ], - 'Code Comparison: different block lengths' => [ - 'sniffs' => 'StandardWithDocs.Content.CodeComparisonBlockLength', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputCodeComparisonBlockLength.md', - ], - 'Code Comparison: encoding of special characters' => [ - 'sniffs' => 'StandardWithDocs.Content.CodeComparisonEncoding', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputCodeComparisonEncoding.md', - ], - 'Code Comparison: line length handling' => [ - 'sniffs' => 'StandardWithDocs.Content.CodeComparisonLineLength', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputCodeComparisonLineLength.md', - ], - 'Unsupported: element at the wrong level' => [ - 'sniffs' => 'StandardWithDocs.Unsupported.ElementAtWrongLevel', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputUnsupportedElementAtWrongLevel.md', - ], - 'Unsupported: one correct elm, one at wrong level' => [ - 'sniffs' => 'StandardWithDocs.Unsupported.OneElmAtWrongLevel', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputUnsupportedOneElmAtWrongLevel.md', - ], - 'Unsupported: superfluous code element' => [ - 'sniffs' => 'StandardWithDocs.Unsupported.SuperfluousCodeElement', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputUnsupportedSuperfluousCodeElement.md', - ], - 'Unsupported: unknown element' => [ - 'sniffs' => 'StandardWithDocs.Unsupported.UnknownElement', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputUnsupportedUnknownElement.md', - ], - ]; - - }//end dataDocSpecifics() - - - /** - * Test the generated footer. - * - * @return void - */ - public function testFooter() - { - // Set up the ruleset. - $standard = __DIR__.'/OneDocTest.xml'; - $config = new ConfigDouble(["--standard=$standard"]); - $ruleset = new Ruleset($config); - - $regex = '`^\RDocumentation generated on [A-Z][a-z]{2}, [0-9]{2} [A-Z][a-z]{2} 20[0-9]{2} [0-2][0-9](?::[0-5][0-9]){2} [+-][0-9]{4}'; - $regex .= ' by \[PHP_CodeSniffer [3-9]\.[0-9]+.[0-9]+\]\(https://github\.com/PHPCSStandards/PHP_CodeSniffer\)\R$`'; - $this->expectOutputRegex($regex); - - $generator = new MarkdownDouble($ruleset); - $generator->printRealFooter(); - - }//end testFooter() - - - /** - * Safeguard that the footer logic doesn't permanently change the error level. - * - * @runInSeparateProcess - * @preserveGlobalState disabled - * - * @return void - */ - public function testFooterResetsErrorReportingToOriginalSetting() - { - $expected = error_reporting(); - - // Set up the ruleset. - $standard = __DIR__.'/OneDocTest.xml'; - $config = new ConfigDouble(["--standard=$standard"]); - $ruleset = new Ruleset($config); - - // We know there will be output, but we're not interested in the output for this test. - ob_start(); - $generator = new MarkdownDouble($ruleset); - $generator->printRealFooter(); - ob_end_clean(); - - $this->assertSame($expected, error_reporting()); - - }//end testFooterResetsErrorReportingToOriginalSetting() - - - /** - * Safeguard that users won't see a PHP warning about the timezone not being set when calling date(). - * - * The warning we don't want to see is: - * "date(): It is not safe to rely on the system's timezone settings. You are *required* to use - * the date.timezone setting or the date_default_timezone_set() function. In case you used any of - * those methods and you are still getting this warning, you most likely misspelled the timezone - * identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select - * your timezone." - * - * JRF: Based on my tests, the warning only occurs on PHP < 7.0, but never a bad thing to safeguard this - * on a wider range of PHP versions. - * - * Note: as of PHP 8.2, PHP no longer accepts an empty string as timezone and will use `UTC` instead, - * so the warning on calling date() in the code itself would not display anyway. - * - * @requires PHP < 8.2 - * - * @doesNotPerformAssertions - * - * @return void - */ - public function testFooterDoesntThrowWarningOnMissingTimezone() - { - $originalIni = @ini_set('date.timezone', ''); - - // Set up the ruleset. - $standard = __DIR__.'/OneDocTest.xml'; - $config = new ConfigDouble(["--standard=$standard"]); - $ruleset = new Ruleset($config); - - // We know there will be output, but we're not interested in the output for this test. - ob_start(); - $generator = new MarkdownDouble($ruleset); - $generator->printRealFooter(); - ob_end_clean(); - - // Reset the timezone to its original state. - ini_set('date.timezone', $originalIni); - - }//end testFooterDoesntThrowWarningOnMissingTimezone() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/NoDocsTest.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/NoDocsTest.xml deleted file mode 100644 index 51df8395..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/NoDocsTest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/NoValidDocsTest.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/NoValidDocsTest.xml deleted file mode 100644 index 94dda4e7..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/NoValidDocsTest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/OneDocTest.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/OneDocTest.xml deleted file mode 100644 index 83ca4384..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/OneDocTest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/StructureDocsTest.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/StructureDocsTest.xml deleted file mode 100644 index 45811bee..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/StructureDocsTest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/TextTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/TextTest.php deleted file mode 100644 index b0c5f280..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Generators/TextTest.php +++ /dev/null @@ -1,197 +0,0 @@ -assertNotFalse($expected, 'Output expectation file could not be found'); - - // Make the test OS independent. - $expected = str_replace("\n", PHP_EOL, $expected); - $this->expectOutputString($expected); - - $generator = new Text($ruleset); - $generator->generate(); - - }//end testDocs() - - - /** - * Data provider. - * - * @return array> - */ - public static function dataDocs() - { - return [ - 'Standard without docs' => [ - 'standard' => __DIR__.'/NoDocsTest.xml', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputEmpty.txt', - ], - 'Standard with one doc file' => [ - 'standard' => __DIR__.'/OneDocTest.xml', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputOneDoc.txt', - ], - 'Standard with multiple doc files' => [ - 'standard' => __DIR__.'/StructureDocsTest.xml', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputStructureDocs.txt', - ], - ]; - - }//end dataDocs() - - - /** - * Test the generated docs for the handling of specific parts of the documentation. - * - * @param string $sniffs The specific fixture sniffs to verify the docs for. - * @param string $pathToExpected Path to a file containing the expected function output. - * - * @dataProvider dataDocSpecifics - * - * @return void - */ - public function testDocSpecifics($sniffs, $pathToExpected) - { - // Set up the ruleset. - $standard = __DIR__.'/AllValidDocsTest.xml'; - $config = new ConfigDouble(["--standard=$standard", "--sniffs=$sniffs"]); - $ruleset = new Ruleset($config); - - // In tests, the `--sniffs` setting doesn't work out of the box. - $sniffParts = explode('.', $sniffs); - $sniffFile = __DIR__.DIRECTORY_SEPARATOR.'Fixtures'.DIRECTORY_SEPARATOR.$sniffParts[0].DIRECTORY_SEPARATOR; - $sniffFile .= 'Sniffs'.DIRECTORY_SEPARATOR.$sniffParts[1].DIRECTORY_SEPARATOR.$sniffParts[2].'Sniff.php'; - - $sniffParts = array_map('strtolower', $sniffParts); - $sniffName = $sniffParts[0].'\sniffs\\'.$sniffParts[1].'\\'.$sniffParts[2].'sniff'; - $restrictions = [$sniffName => true]; - $ruleset->registerSniffs([$sniffFile], $restrictions, []); - - $expected = file_get_contents($pathToExpected); - $this->assertNotFalse($expected, 'Output expectation file could not be found'); - - // Make the test OS independent. - $expected = str_replace("\n", PHP_EOL, $expected); - $this->expectOutputString($expected); - - $generator = new Text($ruleset); - $generator->generate(); - - }//end testDocSpecifics() - - - /** - * Data provider. - * - * @return array> - */ - public static function dataDocSpecifics() - { - return [ - 'Documentation title: case' => [ - 'sniffs' => 'StandardWithDocs.Content.DocumentationTitleCase', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputDocumentationTitleCase.txt', - ], - 'Documentation title: length' => [ - 'sniffs' => 'StandardWithDocs.Content.DocumentationTitleLength', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputDocumentationTitleLength.txt', - ], - 'Standard Element: blank line handling' => [ - 'sniffs' => 'StandardWithDocs.Content.StandardBlankLines', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputStandardBlankLines.txt', - ], - 'Standard Element: encoding of special characters' => [ - 'sniffs' => 'StandardWithDocs.Content.StandardEncoding', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputStandardEncoding.txt', - ], - 'Standard Element: indent handling' => [ - 'sniffs' => 'StandardWithDocs.Content.StandardIndent', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputStandardIndent.txt', - ], - 'Standard Element: line wrapping' => [ - 'sniffs' => 'StandardWithDocs.Content.StandardLineWrapping', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputStandardLineWrapping.txt', - ], - 'Code Title: line wrapping' => [ - 'sniffs' => 'StandardWithDocs.Content.CodeTitleLineWrapping', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputCodeTitleLineWrapping.txt', - ], - 'Code Title: whitespace handling' => [ - 'sniffs' => 'StandardWithDocs.Content.CodeTitleWhitespace', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputCodeTitleWhitespace.txt', - ], - 'Code Comparison: blank line handling' => [ - 'sniffs' => 'StandardWithDocs.Content.CodeComparisonBlankLines', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputCodeComparisonBlankLines.txt', - ], - 'Code Comparison: different block lengths' => [ - 'sniffs' => 'StandardWithDocs.Content.CodeComparisonBlockLength', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputCodeComparisonBlockLength.txt', - ], - 'Code Comparison: encoding of special characters' => [ - 'sniffs' => 'StandardWithDocs.Content.CodeComparisonEncoding', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputCodeComparisonEncoding.txt', - ], - 'Code Comparison: line length handling' => [ - 'sniffs' => 'StandardWithDocs.Content.CodeComparisonLineLength', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputCodeComparisonLineLength.txt', - ], - 'Unsupported: element at the wrong level' => [ - 'sniffs' => 'StandardWithDocs.Unsupported.ElementAtWrongLevel', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputUnsupportedElementAtWrongLevel.txt', - ], - 'Unsupported: one correct elm, one at wrong level' => [ - 'sniffs' => 'StandardWithDocs.Unsupported.OneElmAtWrongLevel', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputUnsupportedOneElmAtWrongLevel.txt', - ], - 'Unsupported: superfluous code element' => [ - 'sniffs' => 'StandardWithDocs.Unsupported.SuperfluousCodeElement', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputUnsupportedSuperfluousCodeElement.txt', - ], - 'Unsupported: unknown element' => [ - 'sniffs' => 'StandardWithDocs.Unsupported.UnknownElement', - 'pathToExpected' => __DIR__.'/Expectations/ExpectedOutputUnsupportedUnknownElement.txt', - ], - ]; - - }//end dataDocSpecifics() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/AbstractRulesetTestCase.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/AbstractRulesetTestCase.php deleted file mode 100644 index 41c63944..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/AbstractRulesetTestCase.php +++ /dev/null @@ -1,115 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Ruleset; - -use PHPUnit\Framework\TestCase; - -abstract class AbstractRulesetTestCase extends TestCase -{ - - /** - * The fully qualified name of the PHPCS runtime exception class. - * - * @var string - */ - const RUNTIME_EXCEPTION = 'PHP_CodeSniffer\Exceptions\RuntimeException'; - - - /** - * Asserts that an object has a specified property in a PHPUnit cross-version compatible manner. - * - * @param string $propertyName The name of the property. - * @param object $object The object on which to check whether the property exists. - * @param string $message Optional failure message to display. - * - * @return void - */ - protected function assertXObjectHasProperty($propertyName, $object, $message='') - { - if (method_exists($this, 'assertObjectHasProperty') === true) { - $this->assertObjectHasProperty($propertyName, $object, $message); - } else { - // PHPUnit < 9.6.11. - $this->assertObjectHasAttribute($propertyName, $object, $message); - } - - }//end assertXObjectHasProperty() - - - /** - * Asserts that an object does not have a specified property - * in a PHPUnit cross-version compatible manner. - * - * @param string $propertyName The name of the property. - * @param object $object The object on which to check whether the property exists. - * @param string $message Optional failure message to display. - * - * @return void - */ - protected function assertXObjectNotHasProperty($propertyName, $object, $message='') - { - if (method_exists($this, 'assertObjectNotHasProperty') === true) { - $this->assertObjectNotHasProperty($propertyName, $object, $message); - } else { - // PHPUnit < 9.6.11. - $this->assertObjectNotHasAttribute($propertyName, $object, $message); - } - - }//end assertXObjectNotHasProperty() - - - /** - * Helper method to tell PHPUnit to expect a PHPCS RuntimeException with a certain message - * in a PHPUnit cross-version compatible manner. - * - * @param string $message The expected exception message. - * - * @return void - */ - protected function expectRuntimeExceptionMessage($message) - { - if (method_exists($this, 'expectException') === true) { - // PHPUnit 5+. - $this->expectException(self::RUNTIME_EXCEPTION); - $this->expectExceptionMessage($message); - } else { - // PHPUnit 4. - $this->setExpectedException(self::RUNTIME_EXCEPTION, $message); - } - - }//end expectRuntimeExceptionMessage() - - - /** - * Helper method to tell PHPUnit to expect a PHPCS RuntimeException which matches a regex patten - * in a PHPUnit cross-version compatible manner. - * - * @param string $regex The regex which should match. - * - * @return void - */ - protected function expectRuntimeExceptionRegex($regex) - { - if (method_exists($this, 'expectExceptionMessageMatches') === true) { - $this->expectException(self::RUNTIME_EXCEPTION); - $this->expectExceptionMessageMatches($regex); - } else if (method_exists($this, 'expectExceptionMessageRegExp') === true) { - // PHPUnit < 8.4.0. - $this->expectException(self::RUNTIME_EXCEPTION); - $this->expectExceptionMessageRegExp($regex); - } else { - // PHPUnit < 5.2.0. - $this->setExpectedExceptionRegExp(self::RUNTIME_EXCEPTION, $regex); - } - - }//end expectRuntimeExceptionRegex() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ExpandSniffDirectoryTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ExpandSniffDirectoryTest.php deleted file mode 100644 index 8f7f4f93..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ExpandSniffDirectoryTest.php +++ /dev/null @@ -1,78 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Ruleset; - -use PHP_CodeSniffer\Ruleset; -use PHP_CodeSniffer\Tests\ConfigDouble; -use PHPUnit\Framework\TestCase; - -/** - * Test the Ruleset::expandSniffDirectory() method. - * - * @covers \PHP_CodeSniffer\Ruleset::expandSniffDirectory - */ -final class ExpandSniffDirectoryTest extends TestCase -{ - - - /** - * Test finding sniff files based on a given directory. - * - * This test verifies that: - * - Hidden (sub)directories are ignored, but the given directory is allowed to be within a hidden directory. - * - Hidden files are ignored. - * - Files without a "php" extension are ignored. - * - Files without a "Sniff" suffix in the file name are ignored. - * - * Note: the "[Another]AbstractSniff" files will be found and included in the return value - * from `Ruleset::expandSniffDirectory()`. - * Those are filtered out later in the `Ruleset::registerSniffs()` method. - * - * @return void - */ - public function testExpandSniffDirectory() - { - // Set up the ruleset. - $standard = __DIR__.'/ExpandSniffDirectoryTest.xml'; - $config = new ConfigDouble(["--standard=$standard"]); - $ruleset = new Ruleset($config); - - $expectedPathToRuleset = __DIR__.'/Fixtures/DirectoryExpansion/.hiddenAbove/src/MyStandard/ruleset.xml'; - $expectedPathToRuleset = realpath($expectedPathToRuleset); - $this->assertNotFalse($expectedPathToRuleset, 'Ruleset file could not be found'); - $this->assertContains($expectedPathToRuleset, $ruleset->paths, 'Ruleset file not included in the "seen ruleset paths"'); - - /* - * Take note: the expectation includes some "undesirables" related to the convoluted directory structure - * in the "standard" used as a test fixture. - * - * That is okay as (for now) non-standard directory layouts are supported. - * - * This test is not about the standard directory layout. - */ - - $expectedSniffCodes = [ - '.Sniffs.IncorrectLevelShouldStillBeFound' => 'MyStandard\\Sniffs\\IncorrectLevelShouldStillBeFoundSniff', - 'MyStandard.CategoryA.FindMe' => 'MyStandard\\Sniffs\\CategoryA\\FindMeSniff', - 'MyStandard.CategoryB.FindMe' => 'MyStandard\\Sniffs\\CategoryB\\FindMeSniff', - 'Sniffs.SubDir.IncorrectLevelShouldStillBeFound' => 'MyStandard\\Sniffs\\CategoryA\\SubDir\\IncorrectLevelShouldStillBeFoundSniff', - ]; - - // Sort the value to make the tests stable as different OSes will read directories - // in a different order and the order is not relevant for these tests. Just the values. - $actual = $ruleset->sniffCodes; - ksort($actual); - - $this->assertSame($expectedSniffCodes, $actual, 'Registered sniffs do not match expectation'); - - }//end testExpandSniffDirectory() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ExpandSniffDirectoryTest.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ExpandSniffDirectoryTest.xml deleted file mode 100644 index f2646da0..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ExpandSniffDirectoryTest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/Fixtures/DirectoryExpansion/.hiddenAbove/src/MyStandard/.hidden/HiddenDirShouldBeIgnoredSniff.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/Fixtures/DirectoryExpansion/.hiddenAbove/src/MyStandard/.hidden/HiddenDirShouldBeIgnoredSniff.php deleted file mode 100644 index 3ee64dbb..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/Fixtures/DirectoryExpansion/.hiddenAbove/src/MyStandard/.hidden/HiddenDirShouldBeIgnoredSniff.php +++ /dev/null @@ -1,15 +0,0 @@ - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/Fixtures/InvalidNoSniffsDir/Sniffs b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/Fixtures/InvalidNoSniffsDir/Sniffs deleted file mode 100644 index e69de29b..00000000 diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/Fixtures/InvalidNoSniffsDir/ruleset.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/Fixtures/InvalidNoSniffsDir/ruleset.xml deleted file mode 100644 index b85e7486..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/Fixtures/InvalidNoSniffsDir/ruleset.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/Fixtures/ProcessRulesetAutoloadLoadAlways.1.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/Fixtures/ProcessRulesetAutoloadLoadAlways.1.php deleted file mode 100644 index 2b1fadaf..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/Fixtures/ProcessRulesetAutoloadLoadAlways.1.php +++ /dev/null @@ -1,8 +0,0 @@ -string,10=>10,float=>1.5,null=>null,true=>true,false=>false - -// phpcs:set TestStandard.SetProperty.PropertyTypeHandling expectsOldSchoolArrayWithOnlyValues[] string, 10, 1.5, null, true, false -// phpcs:set TestStandard.SetProperty.PropertyTypeHandling expectsOldSchoolArrayWithKeysAndValues[] string=>string,10=>10,float=>1.5,null=>null,true=>true,false=>false - -echo 'hello!'; diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/Fixtures/TestStandard/Sniffs/Deprecated/WithLongReplacementSniff.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/Fixtures/TestStandard/Sniffs/Deprecated/WithLongReplacementSniff.php deleted file mode 100644 index 659d89ee..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/Fixtures/TestStandard/Sniffs/Deprecated/WithLongReplacementSniff.php +++ /dev/null @@ -1,41 +0,0 @@ -magic[$name] = $value; - } - - public function __get($name) - { - if (isset($this->magic[$name])) { - return $this->magic[$name]; - } - - return null; - } - - public function register() - { - return [T_WHITESPACE]; - } - - public function process(File $phpcsFile, $stackPtr) - { - // Do something. - } -} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/Fixtures/TestStandard/Sniffs/SetProperty/AllowedViaStdClassSniff.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/Fixtures/TestStandard/Sniffs/SetProperty/AllowedViaStdClassSniff.php deleted file mode 100644 index 0f58b2e0..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/Fixtures/TestStandard/Sniffs/SetProperty/AllowedViaStdClassSniff.php +++ /dev/null @@ -1,26 +0,0 @@ - - */ - public $expectsArrayWithOnlyValues; - - /** - * Used to verify that array properties with keys get parsed to a proper array. - * - * @var array - */ - public $expectsArrayWithKeysAndValues; - - /** - * Used to verify that array properties passed as a string get parsed to a proper array. - * - * @var array - */ - public $expectsOldSchoolArrayWithOnlyValues; - - /** - * Used to verify that array properties passed as a string with keys get parsed to a proper array. - * - * @var array - */ - public $expectsOldSchoolArrayWithKeysAndValues; - - public function register() - { - return [T_ECHO]; - } - - public function process(File $phpcsFile, $stackPtr) - { - // Do something. - } -} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/Fixtures/TestStandard/ruleset.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/Fixtures/TestStandard/ruleset.xml deleted file mode 100644 index 345c4837..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/Fixtures/TestStandard/ruleset.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/GetIgnorePatternsTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/GetIgnorePatternsTest.php deleted file mode 100644 index ae6b8bea..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/GetIgnorePatternsTest.php +++ /dev/null @@ -1,111 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Ruleset; - -use PHP_CodeSniffer\Ruleset; -use PHP_CodeSniffer\Tests\ConfigDouble; -use PHPUnit\Framework\TestCase; - -/** - * Test the Ruleset::getIgnorePatterns() method. - * - * @covers \PHP_CodeSniffer\Ruleset::getIgnorePatterns - */ -final class GetIgnorePatternsTest extends TestCase -{ - - /** - * The Ruleset object. - * - * @var \PHP_CodeSniffer\Ruleset - */ - private static $ruleset; - - - /** - * Initialize the config and ruleset objects for this test. - * - * @beforeClass - * - * @return void - */ - public static function initializeConfigAndRuleset() - { - // Set up the ruleset. - $standard = __DIR__."/GetIgnorePatternsTest.xml"; - $config = new ConfigDouble(["--standard=$standard"]); - self::$ruleset = new Ruleset($config); - - }//end initializeConfigAndRuleset() - - - /** - * Test retrieving ignore patterns. - * - * @param string|null $listener The listener to get patterns for or null for all patterns. - * @param array> $expected The expected function output. - * - * @dataProvider dataGetIgnorePatterns - * - * @return void - */ - public function testGetIgnorePatterns($listener, $expected) - { - $this->assertSame($expected, self::$ruleset->getIgnorePatterns($listener)); - - }//end testGetIgnorePatterns() - - - /** - * Data provider. - * - * @see self::testGetIgnorePatterns() - * - * @return array>|null>> - */ - public static function dataGetIgnorePatterns() - { - return [ - 'All ignore patterns' => [ - 'listener' => null, - 'expected' => [ - 'PSR1.Classes.ClassDeclaration' => [ - './src/*/file.php' => 'absolute', - './bin/' => 'relative', - ], - 'Generic.Formatting.SpaceAfterCast' => [ - './src/*/test\\.php$' => 'absolute', - ], - './tests/' => 'absolute', - './vendor/*' => 'absolute', - '*/node-modules/*' => 'relative', - ], - ], - 'Ignore patterns for PSR1.Classes.ClassDeclaration' => [ - 'listener' => 'PSR1.Classes.ClassDeclaration', - 'expected' => [ - './src/*/file.php' => 'absolute', - './bin/' => 'relative', - ], - ], - 'Ignore patterns for Generic.Formatting.SpaceAfterCast' => [ - 'listener' => 'Generic.Formatting.SpaceAfterCast', - 'expected' => ['./src/*/test\\.php$' => 'absolute'], - ], - 'Ignore patterns for sniff without ignore patterns' => [ - 'listener' => 'PSR1.Files.SideEffects', - 'expected' => [], - ], - ]; - - }//end dataGetIgnorePatterns() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/GetIgnorePatternsTest.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/GetIgnorePatternsTest.xml deleted file mode 100644 index 7fcfdc23..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/GetIgnorePatternsTest.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - ./tests/ - ./vendor/* - */node-modules/* - - - - - ./src/*/file.php - ./bin/ - - - - ./src/*/test\.php$ - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/GetIncludePatternsTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/GetIncludePatternsTest.php deleted file mode 100644 index a38401b6..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/GetIncludePatternsTest.php +++ /dev/null @@ -1,108 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Ruleset; - -use PHP_CodeSniffer\Ruleset; -use PHP_CodeSniffer\Tests\ConfigDouble; -use PHPUnit\Framework\TestCase; - -/** - * Test the Ruleset::getIncludePatterns() method. - * - * @covers \PHP_CodeSniffer\Ruleset::getIncludePatterns - */ -final class GetIncludePatternsTest extends TestCase -{ - - /** - * The Ruleset object. - * - * @var \PHP_CodeSniffer\Ruleset - */ - private static $ruleset; - - - /** - * Initialize the config and ruleset objects for this test. - * - * @beforeClass - * - * @return void - */ - public static function initializeConfigAndRuleset() - { - // Set up the ruleset. - $standard = __DIR__."/GetIncludePatternsTest.xml"; - $config = new ConfigDouble(["--standard=$standard"]); - self::$ruleset = new Ruleset($config); - - }//end initializeConfigAndRuleset() - - - /** - * Test retrieving include patterns. - * - * @param string|null $listener The listener to get patterns for or null for all patterns. - * @param array> $expected The expected function output. - * - * @dataProvider dataGetIncludePatterns - * - * @return void - */ - public function testGetIncludePatterns($listener, $expected) - { - $this->assertSame($expected, self::$ruleset->getIncludePatterns($listener)); - - }//end testGetIncludePatterns() - - - /** - * Data provider. - * - * @see self::testGetIncludePatterns() - * - * @return array>|null>> - */ - public static function dataGetIncludePatterns() - { - return [ - 'All include patterns' => [ - 'listener' => null, - 'expected' => [ - 'PSR1.Classes.ClassDeclaration' => [ - './src/*/file.php' => 'absolute', - './bin/' => 'relative', - ], - 'Generic.Formatting.SpaceAfterCast' => [ - './src/*/test\\.php$' => 'absolute', - ], - ], - ], - 'Include patterns for PSR1.Classes.ClassDeclaration' => [ - 'listener' => 'PSR1.Classes.ClassDeclaration', - 'expected' => [ - './src/*/file.php' => 'absolute', - './bin/' => 'relative', - ], - ], - 'Include patterns for Generic.Formatting.SpaceAfterCast' => [ - 'listener' => 'Generic.Formatting.SpaceAfterCast', - 'expected' => ['./src/*/test\\.php$' => 'absolute'], - ], - 'Include patterns for sniff without include patterns' => [ - 'listener' => 'PSR1.Files.SideEffects', - 'expected' => [], - ], - ]; - - }//end dataGetIncludePatterns() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/GetIncludePatternsTest.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/GetIncludePatternsTest.xml deleted file mode 100644 index c24f93f5..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/GetIncludePatternsTest.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - ./src/*/file.php - ./bin/ - - - - ./src/*/test\.php$ - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRuleInvalidTypeTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRuleInvalidTypeTest.php deleted file mode 100644 index 08a2e6b8..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRuleInvalidTypeTest.php +++ /dev/null @@ -1,43 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Ruleset; - -use PHP_CodeSniffer\Ruleset; -use PHP_CodeSniffer\Tests\ConfigDouble; -use PHP_CodeSniffer\Tests\Core\Ruleset\AbstractRulesetTestCase; - -/** - * Test handling of invalid type elements. - * - * @covers \PHP_CodeSniffer\Ruleset::processRule - */ -final class ProcessRuleInvalidTypeTest extends AbstractRulesetTestCase -{ - - - /** - * Test displaying an informative error message when an invalid type is given. - * - * @return void - */ - public function testInvalidTypeHandling() - { - $standard = __DIR__.'/ProcessRuleInvalidTypeTest.xml'; - $config = new ConfigDouble(["--standard=$standard"]); - - $message = 'Message type "notice" is invalid; must be "error" or "warning"'; - $this->expectRuntimeExceptionMessage($message); - - new Ruleset($config); - - }//end testInvalidTypeHandling() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRuleInvalidTypeTest.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRuleInvalidTypeTest.xml deleted file mode 100644 index 63c2aaf3..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRuleInvalidTypeTest.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - notice - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRuleShouldProcessElementTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRuleShouldProcessElementTest.php deleted file mode 100644 index 7de34c12..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRuleShouldProcessElementTest.php +++ /dev/null @@ -1,660 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Ruleset; - -use PHP_CodeSniffer\Ruleset; -use PHP_CodeSniffer\Tests\ConfigDouble; -use PHP_CodeSniffer\Tests\Core\Ruleset\AbstractRulesetTestCase; - -/** - * Test handling of `phpc(cs|cbf)-only` instructions at rule level. - * - * @covers \PHP_CodeSniffer\Ruleset::processRule - * @covers \PHP_CodeSniffer\Ruleset::shouldProcessElement - */ -final class ProcessRuleShouldProcessElementTest extends AbstractRulesetTestCase -{ - - /** - * The Ruleset object. - * - * @var \PHP_CodeSniffer\Ruleset - */ - private static $ruleset; - - - /** - * Initialize the config and ruleset objects for this test. - * - * @before - * - * @return void - */ - protected function initializeConfigAndRuleset() - { - if (isset(self::$ruleset) === false) { - // Set up the ruleset. - $standard = __DIR__.'/ProcessRuleShouldProcessElementTest.xml'; - $config = new ConfigDouble(["--standard=$standard"]); - self::$ruleset = new Ruleset($config); - } - - }//end initializeConfigAndRuleset() - - - /** - * Verify that in CS mode, phpcs-only directives are set and phpcbf-only - * directives are ignored. - * - * @return void - */ - public function testShouldProcessSeverityCsonly() - { - if (PHP_CODESNIFFER_CBF === true) { - $this->markTestSkipped('This test needs CS mode to run'); - } - - $key = 'severity'; - - // Verify that the non-selective severity directive IS applied. - $sniffCode = 'PSR1.Files.SideEffects'; - $this->assertRulesetPropertySame(3, $sniffCode, $key); - - // Verify that the CS-only severity directive IS applied. - $sniffCode = 'Generic.Metrics.CyclomaticComplexity'; - $this->assertRulesetPropertySame(2, $sniffCode, $key); - - // Verify that the CBF-only severity directive is NOT applied. - $sniffCode = 'PSR2.Namespaces.NamespaceDeclaration'; - $this->assertNotHasRulesetDirective($sniffCode, $key); - - }//end testShouldProcessSeverityCsonly() - - - /** - * Verify that in CBF mode, phpcbf-only directives are set and phpcs-only - * directives are ignored. - * - * @group CBF - * - * @return void - */ - public function testShouldProcessSeverityCbfonly() - { - if (PHP_CODESNIFFER_CBF === false) { - $this->markTestSkipped('This test needs CBF mode to run'); - } - - $key = 'severity'; - - // Verify that the non-selective severity directive IS applied. - $sniffCode = 'PSR1.Files.SideEffects'; - $this->assertRulesetPropertySame(3, $sniffCode, $key); - - // Verify that the CS-only severity directive is NOT applied. - $sniffCode = 'Generic.Metrics.CyclomaticComplexity'; - $this->assertNotHasRulesetDirective($sniffCode, $key); - - // Verify that the CBF-only severity directive IS applied. - $sniffCode = 'PSR2.Namespaces.NamespaceDeclaration'; - $this->assertRulesetPropertySame(4, $sniffCode, $key); - - }//end testShouldProcessSeverityCbfonly() - - - /** - * Verify that in CS mode, phpcs-only directives are set and phpcbf-only - * directives are ignored. - * - * @return void - */ - public function testShouldProcessTypeCsonly() - { - if (PHP_CODESNIFFER_CBF === true) { - $this->markTestSkipped('This test needs CS mode to run'); - } - - $key = 'type'; - - // Verify that the non-selective type directive IS applied. - $sniffCode = 'PSR1.Files.SideEffects'; - $this->assertRulesetPropertySame('warning', $sniffCode, $key); - - // Verify that the CS-only type directive IS applied. - $sniffCode = 'Generic.Metrics.CyclomaticComplexity'; - $this->assertRulesetPropertySame('warning', $sniffCode, $key); - - // Verify that the CBF-only type directive is NOT applied. - $sniffCode = 'PSR2.Namespaces.NamespaceDeclaration'; - $this->assertNotHasRulesetDirective($sniffCode, $key); - - }//end testShouldProcessTypeCsonly() - - - /** - * Verify that in CBF mode, phpcbf-only directives are set and phpcs-only - * directives are ignored. - * - * @group CBF - * - * @return void - */ - public function testShouldProcessTypeCbfonly() - { - if (PHP_CODESNIFFER_CBF === false) { - $this->markTestSkipped('This test needs CBF mode to run'); - } - - $key = 'type'; - - // Verify that the non-selective type directive IS applied. - $sniffCode = 'PSR1.Files.SideEffects'; - $this->assertRulesetPropertySame('warning', $sniffCode, $key); - - // Verify that the CS-only type directive is NOT applied. - $sniffCode = 'Generic.Metrics.CyclomaticComplexity'; - $this->assertNotHasRulesetDirective($sniffCode, $key); - - // Verify that the CBF-only type directive IS applied. - $sniffCode = 'PSR2.Namespaces.NamespaceDeclaration'; - $this->assertRulesetPropertySame('error', $sniffCode, $key); - - }//end testShouldProcessTypeCbfonly() - - - /** - * Verify that in CS mode, phpcs-only directives are set and phpcbf-only - * directives are ignored. - * - * @return void - */ - public function testShouldProcessMessageCsonly() - { - if (PHP_CODESNIFFER_CBF === true) { - $this->markTestSkipped('This test needs CS mode to run'); - } - - $key = 'message'; - - // Verify that the non-selective message directive IS applied. - $sniffCode = 'PSR1.Files.SideEffects'; - $this->assertRulesetPropertySame('A different warning message', $sniffCode, $key); - - // Verify that the CS-only message directive IS applied. - $sniffCode = 'Generic.Metrics.CyclomaticComplexity'; - $this->assertRulesetPropertySame('A different warning but only for phpcs', $sniffCode, $key); - - // Verify that the CBF-only message directive is NOT applied. - $sniffCode = 'PSR2.Namespaces.NamespaceDeclaration'; - $this->assertNotHasRulesetDirective($sniffCode, $key); - - }//end testShouldProcessMessageCsonly() - - - /** - * Verify that in CBF mode, phpcbf-only directives are set and phpcs-only - * directives are ignored. - * - * @group CBF - * - * @return void - */ - public function testShouldProcessMessageCbfonly() - { - if (PHP_CODESNIFFER_CBF === false) { - $this->markTestSkipped('This test needs CBF mode to run'); - } - - $key = 'message'; - - // Verify that the non-selective message directive IS applied. - $sniffCode = 'PSR1.Files.SideEffects'; - $this->assertRulesetPropertySame('A different warning message', $sniffCode, $key); - - // Verify that the CS-only message directive is NOT applied. - $sniffCode = 'Generic.Metrics.CyclomaticComplexity'; - $this->assertNotHasRulesetDirective($sniffCode, $key); - - // Verify that the CBF-only message directive IS applied. - $sniffCode = 'PSR2.Namespaces.NamespaceDeclaration'; - $this->assertRulesetPropertySame('A different warning but only for phpcbf', $sniffCode, $key); - - }//end testShouldProcessMessageCbfonly() - - - /** - * Verify that in CS mode, phpcs-only directives are set and phpcbf-only - * directives are ignored. - * - * @return void - */ - public function testShouldProcessIncludePatternCsonly() - { - if (PHP_CODESNIFFER_CBF === true) { - $this->markTestSkipped('This test needs CS mode to run'); - } - - $includedKey = './vendor/'; - - // Verify that the non-selective include-pattern directive IS applied. - $sniffCode = 'PSR1.Methods.CamelCapsMethodName'; - $this->assertArrayHasKey($sniffCode, self::$ruleset->includePatterns, "Sniff $sniffCode not registered"); - $this->assertArrayHasKey($includedKey, self::$ruleset->includePatterns[$sniffCode], "Include pattern for sniff $sniffCode not registered"); - - // Verify that the CS-only include-pattern directive IS applied. - $sniffCode = 'Generic.Files.LineLength'; - $this->assertArrayHasKey($sniffCode, self::$ruleset->includePatterns, "Sniff $sniffCode not registered"); - $this->assertArrayHasKey($includedKey, self::$ruleset->includePatterns[$sniffCode], "Include pattern for sniff $sniffCode not registered"); - - // Verify that the CBF-only include-pattern directive is NOT applied. - $sniffCode = 'PSR2.Files.ClosingTag'; - $this->assertArrayNotHasKey($sniffCode, self::$ruleset->includePatterns, "Sniff $sniffCode was registered"); - - }//end testShouldProcessIncludePatternCsonly() - - - /** - * Verify that in CS mode, phpcbf-only directives are set and phpcs-only - * directives are ignored. - * - * @group CBF - * - * @return void - */ - public function testShouldProcessIncludePatternCbfonly() - { - if (PHP_CODESNIFFER_CBF === false) { - $this->markTestSkipped('This test needs CBF mode to run'); - } - - $includedKey = './vendor/'; - - // Verify that the non-selective include-pattern directive IS applied. - $sniffCode = 'PSR1.Methods.CamelCapsMethodName'; - $this->assertArrayHasKey($sniffCode, self::$ruleset->includePatterns, "Sniff $sniffCode not registered"); - $this->assertArrayHasKey($includedKey, self::$ruleset->includePatterns[$sniffCode], "Include pattern for sniff $sniffCode not registered"); - - // Verify that the CS-only include-pattern directive is NOT applied. - $sniffCode = 'Generic.Files.LineLength'; - $this->assertArrayNotHasKey($sniffCode, self::$ruleset->includePatterns, "Sniff $sniffCode was registered"); - - // Verify that the CBF-only include-pattern directive is IS applied. - $sniffCode = 'PSR2.Files.ClosingTag'; - $this->assertArrayHasKey($sniffCode, self::$ruleset->includePatterns, "Sniff $sniffCode not registered"); - $this->assertArrayHasKey($includedKey, self::$ruleset->includePatterns[$sniffCode], "Include pattern for sniff $sniffCode not registered"); - - }//end testShouldProcessIncludePatternCbfonly() - - - /** - * Verify that in CS mode, phpcs-only directives are set and phpcbf-only - * directives are ignored. - * - * @return void - */ - public function testShouldProcessExcludePatternCsonly() - { - if (PHP_CODESNIFFER_CBF === true) { - $this->markTestSkipped('This test needs CS mode to run'); - } - - $excludedKey = './tests/'; - - // Verify that the non-selective exclude-pattern directive IS applied. - $sniffCode = 'PSR1.Classes.ClassDeclaration'; - $this->assertArrayHasKey($sniffCode, self::$ruleset->ignorePatterns, "Sniff $sniffCode not registered"); - $this->assertArrayHasKey($excludedKey, self::$ruleset->ignorePatterns[$sniffCode], "Ignore pattern for sniff $sniffCode not registered"); - - // Verify that the CS-only exclude-pattern directive IS applied. - $sniffCode = 'Generic.Formatting.SpaceAfterCast'; - $this->assertArrayHasKey($sniffCode, self::$ruleset->ignorePatterns, "Sniff $sniffCode not registered"); - $this->assertArrayHasKey($excludedKey, self::$ruleset->ignorePatterns[$sniffCode], "Ignore pattern for sniff $sniffCode not registered"); - - // Verify that the CBF-only exclude-pattern directive is NOT applied. - $sniffCode = 'PSR2.Methods.FunctionClosingBrace'; - $this->assertArrayNotHasKey($sniffCode, self::$ruleset->ignorePatterns, "Sniff $sniffCode was registered"); - - }//end testShouldProcessExcludePatternCsonly() - - - /** - * Verify that in CS mode, phpcbf-only directives are set and phpcs-only - * directives are ignored. - * - * @group CBF - * - * @return void - */ - public function testShouldProcessExcludePatternCbfonly() - { - if (PHP_CODESNIFFER_CBF === false) { - $this->markTestSkipped('This test needs CBF mode to run'); - } - - $excludedKey = './tests/'; - - // Verify that the non-selective exclude-pattern directive IS applied. - $sniffCode = 'PSR1.Classes.ClassDeclaration'; - $this->assertArrayHasKey($sniffCode, self::$ruleset->ignorePatterns, "Sniff $sniffCode not registered"); - $this->assertArrayHasKey($excludedKey, self::$ruleset->ignorePatterns[$sniffCode], "Ignore pattern for sniff $sniffCode not registered"); - - // Verify that the CS-only exclude-pattern directive is NOT applied. - $sniffCode = 'Generic.Formatting.SpaceAfterCast'; - $this->assertArrayNotHasKey($sniffCode, self::$ruleset->ignorePatterns, "Sniff $sniffCode was registered"); - - // Verify that the CBF-only exclude-pattern directive is IS applied. - $sniffCode = 'PSR2.Methods.FunctionClosingBrace'; - $this->assertArrayHasKey($sniffCode, self::$ruleset->ignorePatterns, "Sniff $sniffCode not registered"); - $this->assertArrayHasKey($excludedKey, self::$ruleset->ignorePatterns[$sniffCode], "Ignore pattern for sniff $sniffCode not registered"); - - }//end testShouldProcessExcludePatternCbfonly() - - - /** - * Verify that in CS mode, phpcs-only directives are set and phpcbf-only - * directives are ignored. - * - * @return void - */ - public function testShouldProcessPropertiesCsonly() - { - if (PHP_CODESNIFFER_CBF === true) { - $this->markTestSkipped('This test needs CS mode to run'); - } - - $csSniffClass = 'PHP_CodeSniffer\Standards\Generic\Sniffs\Arrays\ArrayIndentSniff'; - $cbfSniffClass = 'PHP_CodeSniffer\Standards\PSR2\Sniffs\Classes\ClassDeclarationSniff'; - - $propertyName = 'indent'; - $propertyDefault = 4; - $propertyChanged = '2'; - - // Verify that the CS-only property directive IS applied. - $this->assertArrayHasKey($csSniffClass, self::$ruleset->sniffs, "Sniff $csSniffClass not registered"); - $this->assertXObjectHasProperty($propertyName, self::$ruleset->sniffs[$csSniffClass]); - - $actualValue = self::$ruleset->sniffs[$csSniffClass]->$propertyName; - $this->assertSame($propertyChanged, $actualValue, 'cs-only property change directive not applied'); - - // Verify that the CBF-only property directive is NOT applied. - $this->assertArrayHasKey($cbfSniffClass, self::$ruleset->sniffs, "Sniff $cbfSniffClass not registered"); - $this->assertXObjectHasProperty($propertyName, self::$ruleset->sniffs[$cbfSniffClass]); - - $actualValue = self::$ruleset->sniffs[$cbfSniffClass]->$propertyName; - $this->assertSame($propertyDefault, $actualValue, 'cbf-only property change directive was applied'); - - }//end testShouldProcessPropertiesCsonly() - - - /** - * Verify that in CBF mode, phpcbf-only directives are set and phpcs-only - * directives are ignored. - * - * @group CBF - * - * @return void - */ - public function testShouldProcessPropertiesCbfonly() - { - if (PHP_CODESNIFFER_CBF === false) { - $this->markTestSkipped('This test needs CBF mode to run'); - } - - $csSniffClass = 'PHP_CodeSniffer\Standards\Generic\Sniffs\Arrays\ArrayIndentSniff'; - $cbfSniffClass = 'PHP_CodeSniffer\Standards\PSR2\Sniffs\Classes\ClassDeclarationSniff'; - - $propertyName = 'indent'; - $propertyDefault = 4; - $propertyChanged = '2'; - - // Verify that the CS-only property directive is NOT applied. - $this->assertArrayHasKey($csSniffClass, self::$ruleset->sniffs, "Sniff $csSniffClass not registered"); - $this->assertXObjectHasProperty($propertyName, self::$ruleset->sniffs[$csSniffClass]); - - $actualValue = self::$ruleset->sniffs[$csSniffClass]->$propertyName; - $this->assertSame($propertyDefault, $actualValue, 'cs-only property change directive was applied'); - - // Verify that the CBF-only property directive IS applied. - $this->assertArrayHasKey($cbfSniffClass, self::$ruleset->sniffs, "Sniff $cbfSniffClass not registered"); - $this->assertXObjectHasProperty($propertyName, self::$ruleset->sniffs[$cbfSniffClass]); - - $actualValue = self::$ruleset->sniffs[$cbfSniffClass]->$propertyName; - $this->assertSame($propertyChanged, $actualValue, 'cbf-only property change directive not applied'); - - }//end testShouldProcessPropertiesCbfonly() - - - /** - * Verify that in CS mode, phpcs-only directives are set and phpcbf-only - * directives are ignored. - * - * @return void - */ - public function testShouldProcessPropertyCsonly() - { - if (PHP_CODESNIFFER_CBF === true) { - $this->markTestSkipped('This test needs CS mode to run'); - } - - // Verify the sniff is registed. - $sniffClass = 'PHP_CodeSniffer\Standards\Generic\Sniffs\WhiteSpace\ScopeIndentSniff'; - $this->assertArrayHasKey($sniffClass, self::$ruleset->sniffs, "Sniff $sniffClass not registered"); - - $sniffObject = self::$ruleset->sniffs[$sniffClass]; - - // Verify that the non-selective property directive IS applied. - $propertyName = 'exact'; - $expected = true; - - $this->assertXObjectHasProperty($propertyName, $sniffObject); - $this->assertSame($expected, $sniffObject->$propertyName, 'Non-selective property change directive not applied'); - - // Verify that the CS-only property directive IS applied. - $propertyName = 'indent'; - $expected = '2'; - - $this->assertXObjectHasProperty($propertyName, $sniffObject); - $this->assertSame($expected, $sniffObject->$propertyName, 'cs-only property change directive not applied'); - - // Verify that the CBF-only property directive is NOT applied. - $propertyName = 'tabIndent'; - $expectedDefault = false; - - $this->assertXObjectHasProperty($propertyName, $sniffObject); - $this->assertSame($expectedDefault, $sniffObject->$propertyName, 'cbf-only property change directive was applied'); - - }//end testShouldProcessPropertyCsonly() - - - /** - * Verify that in CBF mode, phpcbf-only directives are set and phpcs-only - * directives are ignored. - * - * @group CBF - * - * @return void - */ - public function testShouldProcessPropertyCbfonly() - { - if (PHP_CODESNIFFER_CBF === false) { - $this->markTestSkipped('This test needs CBF mode to run'); - } - - // Verify the sniff is registed. - $sniffClass = 'PHP_CodeSniffer\Standards\Generic\Sniffs\WhiteSpace\ScopeIndentSniff'; - $this->assertArrayHasKey($sniffClass, self::$ruleset->sniffs, "Sniff $sniffClass not registered"); - - $sniffObject = self::$ruleset->sniffs[$sniffClass]; - - // Verify that the non-selective property directive IS applied. - $propertyName = 'exact'; - $expected = true; - - $this->assertXObjectHasProperty($propertyName, $sniffObject); - $this->assertSame($expected, $sniffObject->$propertyName, 'Non-selective property change directive not applied'); - - // Verify that the CS-only property directive is NOT applied. - $propertyName = 'indent'; - $expectedDefault = 4; - - $this->assertXObjectHasProperty($propertyName, $sniffObject); - $this->assertSame($expectedDefault, $sniffObject->$propertyName, 'cs-only property change directive was applied'); - - // Verify that the CBF-only property directive IS applied. - $propertyName = 'tabIndent'; - $expected = true; - - $this->assertXObjectHasProperty($propertyName, $sniffObject); - $this->assertSame($expected, $sniffObject->$propertyName, 'cbf-only property change directive not applied'); - - }//end testShouldProcessPropertyCbfonly() - - - /** - * Verify that in CS mode, phpcs-only directives are set and phpcbf-only - * directives are ignored. - * - * @return void - */ - public function testShouldProcessElementCsonly() - { - if (PHP_CODESNIFFER_CBF === true) { - $this->markTestSkipped('This test needs CS mode to run'); - } - - $expected = [ - // Non-selective element directive. - 'T_COMMENT', - // Phpcs-only element directive. - 'T_CLASS', - // Non-selective element directive via `extend`. - 'T_BACKTICK', - // Phpcs-only element directive via `extend`. - 'T_INTERFACE', - ]; - - $this->verifyShouldProcessElement($expected); - - }//end testShouldProcessElementCsonly() - - - /** - * Verify that in CBF mode, phpcbf-only directives are set and phpcs-only - * directives are ignored. - * - * @group CBF - * - * @return void - */ - public function testShouldProcessElementCbfonly() - { - if (PHP_CODESNIFFER_CBF === false) { - $this->markTestSkipped('This test needs CBF mode to run'); - } - - $expected = [ - // Non-selective element directive. - 'T_COMMENT', - // Phpcbf-only element directive. - 'T_ENUM', - // Non-selective element directive via `extend`. - 'T_BACKTICK', - // Phpcbf-only element directive via `extend`. - 'T_TRAIT', - ]; - - $this->verifyShouldProcessElement($expected); - - }//end testShouldProcessElementCbfonly() - - - /** - * Verify that directives are set correctly. - * - * @param array $expected Expected sniff property value. - * - * @return void - */ - private function verifyShouldProcessElement($expected) - { - // Verify the sniff is registed. - $sniffClass = 'PHP_CodeSniffer\Standards\Generic\Sniffs\WhiteSpace\ScopeIndentSniff'; - $this->assertArrayHasKey($sniffClass, self::$ruleset->sniffs, "Sniff $sniffClass not registered"); - - // Verify the target property exists. - $sniffObject = self::$ruleset->sniffs[$sniffClass]; - $propertyName = 'ignoreIndentationTokens'; - - $this->assertXObjectHasProperty($propertyName, $sniffObject); - - // Verify the value. - $actualValue = $sniffObject->$propertyName; - $this->assertSame($expected, $actualValue, 'Selective element directives not applied correctly'); - - }//end verifyShouldProcessElement() - - - /** - * Custom assertion to verify that a Ruleset `$ruleset` property has a certain directive set for a certain sniff code. - * - * @param string $sniffCode Sniff code. - * @param string $key Array key. - * - * @return void - */ - private function assertHasRulesetDirective($sniffCode, $key) - { - $this->assertArrayHasKey($sniffCode, self::$ruleset->ruleset, "Sniff $sniffCode not registered"); - $this->assertTrue(is_array(self::$ruleset->ruleset[$sniffCode]), "Sniff $sniffCode is not an array"); - $this->assertArrayHasKey($key, self::$ruleset->ruleset[$sniffCode], "Directive $key not registered for sniff $sniffCode"); - - }//end assertHasRulesetDirective() - - - /** - * Custom assertion to verify that a Ruleset `$ruleset` property does NOT have a certain directive set for a certain sniff code. - * - * @param string $sniffCode Sniff code. - * @param string $key Array key. - * - * @return void - */ - private function assertNotHasRulesetDirective($sniffCode, $key) - { - if (isset(self::$ruleset->ruleset[$sniffCode]) === true - && is_array(self::$ruleset->ruleset[$sniffCode]) === true - && isset(self::$ruleset->ruleset[$sniffCode][$key]) === true - ) { - $this->fail("Directive $key is registered for sniff $sniffCode"); - } - - }//end assertNotHasRulesetDirective() - - - /** - * Custom assertion to verify that the value of a certain directive for a certain sniff code on the ruleset is correct. - * - * @param mixed $expected Expected value. - * @param string $sniffCode Sniff code. - * @param string $key Array key. - * - * @return void - */ - private function assertRulesetPropertySame($expected, $sniffCode, $key) - { - $this->assertHasRulesetDirective($sniffCode, $key); - - $actual = self::$ruleset->ruleset[$sniffCode][$key]; - $this->assertSame($expected, $actual, "Value for $key on sniff $sniffCode does not meet expectations"); - - }//end assertRulesetPropertySame() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRuleShouldProcessElementTest.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRuleShouldProcessElementTest.xml deleted file mode 100644 index 73a81161..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRuleShouldProcessElementTest.xml +++ /dev/null @@ -1,100 +0,0 @@ - - - - - - 3 - warning - A different warning message - - - - ./vendor/ - - - - ./tests/ - - - - - - - 2 - warning - A different warning but only for phpcs - - - - ./vendor/ - - - - ./tests/ - - - - - - - - - - - 4 - error - A different warning but only for phpcbf - - - - ./vendor/ - - - - ./tests/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetAutoExpandSniffsDirectoryTest.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetAutoExpandSniffsDirectoryTest.xml deleted file mode 100644 index 69688086..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetAutoExpandSniffsDirectoryTest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetAutoloadFileNotFoundTest.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetAutoloadFileNotFoundTest.xml deleted file mode 100644 index 196baa6c..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetAutoloadFileNotFoundTest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - ./tests/Core/Ruleset/Fixtures/ThisFileDoesNotExist.php - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetAutoloadTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetAutoloadTest.php deleted file mode 100644 index a6a0dd4a..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetAutoloadTest.php +++ /dev/null @@ -1,164 +0,0 @@ - instructions. - * - * @author Juliette Reinders Folmer - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Ruleset; - -use PHP_CodeSniffer\Ruleset; -use PHP_CodeSniffer\Tests\ConfigDouble; -use PHP_CodeSniffer\Tests\Core\Ruleset\AbstractRulesetTestCase; - -/** - * Test handling of instructions. - * - * Note: these tests need to run in separate processes as otherwise we cannot - * reliably determine whether or not the correct files were loaded as the - * underlying code uses `include_once`. - * - * @runTestsInSeparateProcesses - * @preserveGlobalState disabled - * - * @covers \PHP_CodeSniffer\Ruleset::processRuleset - */ -final class ProcessRulesetAutoloadTest extends AbstractRulesetTestCase -{ - - - /** - * Verify that in CS mode, phpcs-only directives are respected and phpcbf-only - * directives are ignored. - * - * @return void - */ - public function testShouldProcessAutoloadCsonly() - { - if (PHP_CODESNIFFER_CBF === true) { - $this->markTestSkipped('This test needs CS mode to run'); - } - - $originallyIncludes = get_included_files(); - - // Set up the ruleset. - $standard = __DIR__.'/ProcessRulesetAutoloadTest.xml'; - $config = new ConfigDouble(["--standard=$standard"]); - new Ruleset($config); - - $finalIncludes = get_included_files(); - $diff = array_diff($finalIncludes, $originallyIncludes); - - $this->assertContains( - __DIR__.str_replace('/', DIRECTORY_SEPARATOR, '/Fixtures/ProcessRulesetAutoloadLoadAlways.1.php'), - $diff, - 'ProcessRulesetAutoloadLoadAlways.1.php autoload file was not loaded' - ); - $this->assertContains( - __DIR__.str_replace('/', DIRECTORY_SEPARATOR, '/Fixtures/ProcessRulesetAutoloadLoadAlways.2.php'), - $diff, - 'ProcessRulesetAutoloadLoadAlways.2.php autoload file was not loaded' - ); - $this->assertContains( - __DIR__.str_replace('/', DIRECTORY_SEPARATOR, '/Fixtures/ProcessRulesetAutoloadLoadAlways.3.php'), - $diff, - 'ProcessRulesetAutoloadLoadAlways.3.php autoload file was not loaded' - ); - $this->assertContains( - __DIR__.str_replace('/', DIRECTORY_SEPARATOR, '/Fixtures/ProcessRulesetAutoloadLoadAlways.4.php'), - $diff, - 'ProcessRulesetAutoloadLoadAlways.4.php autoload file was not loaded' - ); - $this->assertContains( - __DIR__.str_replace('/', DIRECTORY_SEPARATOR, '/Fixtures/ProcessRulesetAutoloadLoadPhpcsOnly.php'), - $diff, - 'ProcessRulesetAutoloadLoadPhpcsOnly.php autoload file was not loaded' - ); - $this->assertNotContains( - __DIR__.str_replace('/', DIRECTORY_SEPARATOR, '/Fixtures/ProcessRulesetAutoloadLoadPhpcbfOnly.php'), - $diff, - 'ProcessRulesetAutoloadLoadPhpcbfOnly.php autoload file was loaded, while it shouldn\'t have been' - ); - - }//end testShouldProcessAutoloadCsonly() - - - /** - * Verify that in CBF mode, phpcbf-only directives are respected and phpcs-only - * directives are ignored. - * - * @group CBF - * - * @return void - */ - public function testShouldProcessAutoloadCbfonly() - { - if (PHP_CODESNIFFER_CBF === false) { - $this->markTestSkipped('This test needs CBF mode to run'); - } - - $originallyIncludes = get_included_files(); - - // Set up the ruleset. - $standard = __DIR__.'/ProcessRulesetAutoloadTest.xml'; - $config = new ConfigDouble(["--standard=$standard"]); - new Ruleset($config); - - $finalIncludes = get_included_files(); - $diff = array_diff($finalIncludes, $originallyIncludes); - - $this->assertContains( - __DIR__.str_replace('/', DIRECTORY_SEPARATOR, '/Fixtures/ProcessRulesetAutoloadLoadAlways.1.php'), - $diff, - 'ProcessRulesetAutoloadLoadAlways.1.php autoload file was not loaded' - ); - $this->assertContains( - __DIR__.str_replace('/', DIRECTORY_SEPARATOR, '/Fixtures/ProcessRulesetAutoloadLoadAlways.2.php'), - $diff, - 'ProcessRulesetAutoloadLoadAlways.2.php autoload file was not loaded' - ); - $this->assertContains( - __DIR__.str_replace('/', DIRECTORY_SEPARATOR, '/Fixtures/ProcessRulesetAutoloadLoadAlways.3.php'), - $diff, - 'ProcessRulesetAutoloadLoadAlways.3.php autoload file was not loaded' - ); - $this->assertContains( - __DIR__.str_replace('/', DIRECTORY_SEPARATOR, '/Fixtures/ProcessRulesetAutoloadLoadAlways.4.php'), - $diff, - 'ProcessRulesetAutoloadLoadAlways.4.php autoload file was not loaded' - ); - $this->assertNotContains( - __DIR__.str_replace('/', DIRECTORY_SEPARATOR, '/Fixtures/ProcessRulesetAutoloadLoadPhpcsOnly.php'), - $diff, - 'ProcessRulesetAutoloadLoadPhpcsOnly.php autoload file was loaded, while it shouldn\'t have been' - ); - $this->assertContains( - __DIR__.str_replace('/', DIRECTORY_SEPARATOR, '/Fixtures/ProcessRulesetAutoloadLoadPhpcbfOnly.php'), - $diff, - 'ProcessRulesetAutoloadLoadPhpcbfOnly.php autoload file was not loaded' - ); - - }//end testShouldProcessAutoloadCbfonly() - - - /** - * Test an exception is thrown when the directive points to a file which doesn't exist. - * - * @return void - */ - public function testFileNotFoundException() - { - $exceptionMsg = 'The specified autoload file "./tests/Core/Ruleset/Fixtures/ThisFileDoesNotExist.php" does not exist'; - $this->expectRuntimeExceptionMessage($exceptionMsg); - - // Set up the ruleset. - $standard = __DIR__.'/ProcessRulesetAutoloadFileNotFoundTest.xml'; - $config = new ConfigDouble(["--standard=$standard"]); - new Ruleset($config); - - }//end testFileNotFoundException() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetAutoloadTest.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetAutoloadTest.xml deleted file mode 100644 index 450de650..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetAutoloadTest.xml +++ /dev/null @@ -1,37 +0,0 @@ - - - - . - - - - ./Fixtures/ProcessRulesetAutoloadLoadAlways.1.php - Fixtures/ProcessRulesetAutoloadLoadAlways.2.php - - - ./tests/Core/Ruleset/Fixtures/ProcessRulesetAutoloadLoadAlways.3.php - tests/Core/Ruleset/Fixtures/ProcessRulesetAutoloadLoadAlways.4.php - - - ./tests/Core/Ruleset/Fixtures/ProcessRulesetAutoloadLoadPhpcsOnly.php - - - ./tests/Core/Ruleset/Fixtures/ProcessRulesetAutoloadLoadPhpcbfOnly.php - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetBrokenRulesetEmptyFileTest.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetBrokenRulesetEmptyFileTest.xml deleted file mode 100644 index e69de29b..00000000 diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetBrokenRulesetMultiErrorTest.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetBrokenRulesetMultiErrorTest.xml deleted file mode 100644 index 64294b9b..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetBrokenRulesetMultiErrorTest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetBrokenRulesetSingleErrorTest.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetBrokenRulesetSingleErrorTest.xml deleted file mode 100644 index e9c5bd7e..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetBrokenRulesetSingleErrorTest.xml +++ /dev/null @@ -1,2 +0,0 @@ - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetBrokenRulesetTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetBrokenRulesetTest.php deleted file mode 100644 index 95f67c21..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetBrokenRulesetTest.php +++ /dev/null @@ -1,92 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Ruleset; - -use PHP_CodeSniffer\Ruleset; -use PHP_CodeSniffer\Tests\ConfigDouble; -use PHP_CodeSniffer\Tests\Core\Ruleset\AbstractRulesetTestCase; - -/** - * Test handling of broken ruleset files. - * - * Note: these tests need to run in separate processes as otherwise they run into - * some weirdness with the libxml_get_errors()/libxml_clear_errors() functions - * (duplicate error messages). - * - * @runTestsInSeparateProcesses - * @preserveGlobalState disabled - * - * @covers \PHP_CodeSniffer\Ruleset::processRuleset - */ -final class ProcessRulesetBrokenRulesetTest extends AbstractRulesetTestCase -{ - - - /** - * Test displaying an informative error message when an empty XML ruleset file is encountered. - * - * @return void - */ - public function testBrokenRulesetEmptyFile() - { - $standard = __DIR__.'/ProcessRulesetBrokenRulesetEmptyFileTest.xml'; - $config = new ConfigDouble(["--standard=$standard"]); - - $regex = '`^Ruleset \S+ProcessRulesetBrokenRulesetEmptyFileTest\.xml is not valid\R$`'; - $this->expectRuntimeExceptionRegex($regex); - - new Ruleset($config); - - }//end testBrokenRulesetEmptyFile() - - - /** - * Test displaying an informative error message for a broken XML ruleset with a single XML error. - * - * @return void - */ - public function testBrokenRulesetSingleError() - { - $standard = __DIR__.'/ProcessRulesetBrokenRulesetSingleErrorTest.xml'; - $config = new ConfigDouble(["--standard=$standard"]); - - $regex = '`^Ruleset \S+ProcessRulesetBrokenRulesetSingleErrorTest\.xml is not valid\R'; - $regex .= '- On line 3, column 1: Premature end of data in tag ruleset line 2\R$`'; - - $this->expectRuntimeExceptionRegex($regex); - - new Ruleset($config); - - }//end testBrokenRulesetSingleError() - - - /** - * Test displaying an informative error message for a broken XML ruleset with multiple XML errors. - * - * @return void - */ - public function testBrokenRulesetMultiError() - { - $standard = __DIR__.'/ProcessRulesetBrokenRulesetMultiErrorTest.xml'; - $config = new ConfigDouble(["--standard=$standard"]); - - $regex = '`^Ruleset \S+ProcessRulesetBrokenRulesetMultiErrorTest\.xml is not valid\R'; - $regex .= '- On line 8, column 12: Opening and ending tag mismatch: property line 7 and rule\R'; - $regex .= '- On line 10, column 11: Opening and ending tag mismatch: properties line 5 and ruleset\R'; - $regex .= '- On line 11, column 1: Premature end of data in tag rule line 4\R$`'; - - $this->expectRuntimeExceptionRegex($regex); - - new Ruleset($config); - - }//end testBrokenRulesetMultiError() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetExcludeSniffGroupTest.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetExcludeSniffGroupTest.xml deleted file mode 100644 index a83347ce..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetExcludeSniffGroupTest.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetInvalidNoSniffsDirTest.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetInvalidNoSniffsDirTest.xml deleted file mode 100644 index daa07f2e..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetInvalidNoSniffsDirTest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetMiscTest.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetMiscTest.xml deleted file mode 100644 index 56bf6898..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetMiscTest.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetShouldProcessElementTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetShouldProcessElementTest.php deleted file mode 100644 index cd04ae78..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetShouldProcessElementTest.php +++ /dev/null @@ -1,388 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Ruleset; - -use PHP_CodeSniffer\Config; -use PHP_CodeSniffer\Ruleset; -use PHP_CodeSniffer\Tests\ConfigDouble; -use PHPUnit\Framework\TestCase; - -/** - * Test handling of `phpc(cs|cbf)-only` instructions at ruleset level. - * - * @covers \PHP_CodeSniffer\Ruleset::processRuleset - * @covers \PHP_CodeSniffer\Ruleset::shouldProcessElement - */ -final class ProcessRulesetShouldProcessElementTest extends TestCase -{ - - /** - * Cache to store the original ini values for ini settings being changed in these tests. - * - * @var array - */ - private static $originalIniValues = [ - 'bcmath.scale' => null, - 'docref_root' => null, - 'user_agent' => null, - ]; - - /** - * The Config object. - * - * @var \PHP_CodeSniffer\Tests\ConfigDouble - */ - private static $config; - - /** - * The Ruleset object. - * - * @var \PHP_CodeSniffer\Ruleset - */ - private static $ruleset; - - - /** - * Store the original ini values to allow for restoring them after the tests. - * - * @beforeClass - * - * @return void - */ - public static function saveOriginalIniValues() - { - foreach (self::$originalIniValues as $name => $null) { - $value = ini_get($name); - if ($value !== false) { - self::$originalIniValues[$name] = $value; - } - } - - }//end saveOriginalIniValues() - - - /** - * Initialize the config and ruleset objects for this test only once (but do allow recording code coverage). - * - * @before - * - * @return void - */ - protected function initializeConfigAndRuleset() - { - if (isset(self::$ruleset) === false) { - // Set up the ruleset. - $standard = __DIR__.'/ProcessRulesetShouldProcessElementTest.xml'; - self::$config = new ConfigDouble(["--standard=$standard"]); - self::$ruleset = new Ruleset(self::$config); - } - - }//end initializeConfigAndRuleset() - - - /** - * Destroy the Config object and restor the ini values after the tests. - * - * @afterClass - * - * @return void - */ - public static function restoreOriginalValues() - { - // Explicitly trigger __destruct() on the ConfigDouble to reset the Config statics. - // The explicit method call prevents potential stray test-local references to the $config object - // preventing the destructor from running the clean up (which without stray references would be - // automagically triggered when this object is destroyed, but we can't definitively rely on that). - if (isset(self::$config) === true) { - self::$config->__destruct(); - } - - foreach (self::$originalIniValues as $name => $value) { - if ($value === null) { - continue; - } - - ini_set($name, $value); - } - - }//end restoreOriginalValues() - - - /** - * Verify that in CS mode, phpcs-only directives are respected and phpcbf-only - * directives are ignored. - * - * @return void - */ - public function testShouldProcessConfigCsonly() - { - if (PHP_CODESNIFFER_CBF === true) { - $this->markTestSkipped('This test needs CS mode to run'); - } - - $this->assertSame('true', Config::getConfigData('neither'), 'Non-selective config directive was not applied.'); - $this->assertSame('true', Config::getConfigData('csOnly'), 'CS-only config directive was not applied.'); - $this->assertSame(null, Config::getConfigData('cbfOnly'), 'CBF-only config directive was applied, while it shouldn\'t have been.'); - - }//end testShouldProcessConfigCsonly() - - - /** - * Verify that in CBF mode, phpcbf-only directives are respected and phpcs-only - * directives are ignored. - * - * @group CBF - * - * @return void - */ - public function testShouldProcessConfigCbfonly() - { - if (PHP_CODESNIFFER_CBF === false) { - $this->markTestSkipped('This test needs CBF mode to run'); - } - - $this->assertSame('true', Config::getConfigData('neither'), 'Non-selective config directive was not applied.'); - $this->assertSame(null, Config::getConfigData('csOnly'), 'CS-only config directive was applied, while it shouldn\'t have been.'); - $this->assertSame('true', Config::getConfigData('cbfOnly'), 'CBF-only config directive was not applied.'); - - }//end testShouldProcessConfigCbfonly() - - - /** - * Verify that in CS mode, phpcs-only directives are respected and phpcbf-only - * directives are ignored. - * - * @return void - */ - public function testShouldProcessArgCsonly() - { - if (PHP_CODESNIFFER_CBF === true) { - $this->markTestSkipped('This test needs CS mode to run'); - } - - $expectedExtensions = [ - 'php' => 'PHP', - 'phpt' => 'PHP', - ]; - $expectedReports = ['full' => null]; - - $this->assertSame($expectedExtensions, self::$config->extensions, 'Non-selective arg directive was not applied.'); - $this->assertTrue(self::$config->showProgress, 'Non-selective short arg directive was not applied [1].'); - $this->assertTrue(self::$config->showSources, 'Non-selective short arg directive was not applied [2].'); - $this->assertTrue(self::$config->colors, 'CS-only arg directive was not applied.'); - $this->assertSame($expectedReports, self::$config->reports, 'CBF-only arg directive was applied, while it shouldn\'t have been.'); - - }//end testShouldProcessArgCsonly() - - - /** - * Verify that in CBF mode, phpcbf-only directives are respected and phpcs-only - * directives are ignored. - * - * @group CBF - * - * @return void - */ - public function testShouldProcessArgCbfonly() - { - if (PHP_CODESNIFFER_CBF === false) { - $this->markTestSkipped('This test needs CBF mode to run'); - } - - $expectedExtensions = [ - 'php' => 'PHP', - 'phpt' => 'PHP', - ]; - $expectedReports = ['summary' => null]; - - $this->assertSame($expectedExtensions, self::$config->extensions, 'Non-selective arg directive was not applied.'); - $this->assertTrue(self::$config->showProgress, 'Non-selective short arg directive was not applied [1].'); - $this->assertTrue(self::$config->showSources, 'Non-selective short arg directive was not applied [2].'); - $this->assertFalse(self::$config->colors, 'CS-only arg directive was applied, while it shouldn\'t have been.'); - $this->assertSame($expectedReports, self::$config->reports, 'CBF-only arg directive was not applied.'); - - }//end testShouldProcessArgCbfonly() - - - /** - * Verify that in CS mode, phpcs-only directives are respected and phpcbf-only - * directives are ignored. - * - * @return void - */ - public function testShouldProcessIniCsonly() - { - if (PHP_CODESNIFFER_CBF === true) { - $this->markTestSkipped('This test needs CS mode to run'); - } - - $this->assertSame('2', ini_get('bcmath.scale'), 'Non-selective ini directive was not applied.'); - $this->assertSame('path/to/docs/', ini_get('docref_root'), 'CS-only ini directive was not applied.'); - $this->assertSame('', ini_get('user_agent'), 'CBF-only ini directive was applied, while it shouldn\'t have been.'); - - }//end testShouldProcessIniCsonly() - - - /** - * Verify that in CBF mode, phpcbf-only directives are respected and phpcs-only - * directives are ignored. - * - * @group CBF - * - * @return void - */ - public function testShouldProcessIniCbfonly() - { - if (PHP_CODESNIFFER_CBF === false) { - $this->markTestSkipped('This test needs CBF mode to run'); - } - - $this->assertSame('2', ini_get('bcmath.scale'), 'Non-selective ini directive was not applied.'); - $this->assertSame('', ini_get('docref_root'), 'CS-only ini directive was applied, while it shouldn\'t have been..'); - $this->assertSame('Never mind', ini_get('user_agent'), 'CBF-only ini directive was not applied.'); - - }//end testShouldProcessIniCbfonly() - - - /** - * Verify that in CS mode, phpcs-only directives are respected and phpcbf-only - * directives are ignored. - * - * @return void - */ - public function testShouldProcessExcludePatternCsonly() - { - if (PHP_CODESNIFFER_CBF === true) { - $this->markTestSkipped('This test needs CS mode to run'); - } - - $expected = [ - './tests/' => 'absolute', - './vendor/' => 'absolute', - ]; - - $this->assertSame($expected, self::$ruleset->ignorePatterns); - - }//end testShouldProcessExcludePatternCsonly() - - - /** - * Verify that in CBF mode, phpcbf-only directives are respected and phpcs-only - * directives are ignored. - * - * @group CBF - * - * @return void - */ - public function testShouldProcessExcludePatternCbfonly() - { - if (PHP_CODESNIFFER_CBF === false) { - $this->markTestSkipped('This test needs CBF mode to run'); - } - - $expected = [ - './tests/' => 'absolute', - './node-modules/' => 'absolute', - ]; - - $this->assertSame($expected, self::$ruleset->ignorePatterns); - - }//end testShouldProcessExcludePatternCbfonly() - - - /** - * Verify that in CS mode, phpcs-only directives are respected and phpcbf-only - * directives are ignored. - * - * @return void - */ - public function testShouldProcessRuleCsonly() - { - if (PHP_CODESNIFFER_CBF === true) { - $this->markTestSkipped('This test needs CS mode to run'); - } - - $this->assertArrayHasKey('PEAR.Formatting.MultiLineAssignment', self::$ruleset->sniffCodes); - $this->assertArrayHasKey('Generic.Arrays.ArrayIndent', self::$ruleset->sniffCodes); - $this->assertArrayNotHasKey('PSR2.Classes.ClassDeclaration', self::$ruleset->sniffCodes); - - }//end testShouldProcessRuleCsonly() - - - /** - * Verify that in CBF mode, phpcbf-only directives are respected and phpcs-only - * directives are ignored. - * - * @group CBF - * - * @return void - */ - public function testShouldProcessRuleCbfonly() - { - if (PHP_CODESNIFFER_CBF === false) { - $this->markTestSkipped('This test needs CBF mode to run'); - } - - $this->assertArrayHasKey('PEAR.Formatting.MultiLineAssignment', self::$ruleset->sniffCodes); - $this->assertArrayNotHasKey('Generic.Arrays.ArrayIndent', self::$ruleset->sniffCodes); - $this->assertArrayHasKey('PSR2.Classes.ClassDeclaration', self::$ruleset->sniffCodes); - - }//end testShouldProcessRuleCbfonly() - - - /** - * Verify that in CS mode, phpcs-only in directives are respected and phpcbf-only in - * directives are ignored. - * - * @return void - */ - public function testShouldProcessRuleExcludeCsonly() - { - if (PHP_CODESNIFFER_CBF === true) { - $this->markTestSkipped('This test needs CS mode to run'); - } - - $expected = [ - 'PEAR.Formatting.MultiLineAssignment.Indent' => [ - 'severity' => 0, - ], - ]; - - $this->assertSame($expected, self::$ruleset->ruleset); - - }//end testShouldProcessRuleExcludeCsonly() - - - /** - * Verify that in CBF mode, phpcbf-only in directives are respected and phpcs-only in - * directives are ignored. - * - * @group CBF - * - * @return void - */ - public function testShouldProcessRuleExcludeCbfonly() - { - if (PHP_CODESNIFFER_CBF === false) { - $this->markTestSkipped('This test needs CBF mode to run'); - } - - $expected = [ - 'PEAR.Formatting.MultiLineAssignment.EqualSignLine' => [ - 'severity' => 0, - ], - ]; - - $this->assertSame($expected, self::$ruleset->ruleset); - - }//end testShouldProcessRuleExcludeCbfonly() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetShouldProcessElementTest.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetShouldProcessElementTest.xml deleted file mode 100644 index 62ea0e62..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetShouldProcessElementTest.xml +++ /dev/null @@ -1,54 +0,0 @@ - - - - . - - - - - - - - ./tests/ - - - - - - - - - ./vendor/ - - - - - - - - - - - - - ./node-modules/ - - - - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetTest.php deleted file mode 100644 index d53889a8..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/ProcessRulesetTest.php +++ /dev/null @@ -1,263 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Ruleset; - -use PHP_CodeSniffer\Ruleset; -use PHP_CodeSniffer\Tests\ConfigDouble; -use PHPUnit\Framework\TestCase; - -/** - * Test various aspects of the Ruleset::processRuleset() method not covered via other tests. - * - * @covers \PHP_CodeSniffer\Ruleset::processRuleset - */ -final class ProcessRulesetTest extends TestCase -{ - - - /** - * Verify that a registered standard which doesn't have a "Sniffs" directory, but does have a file - * called "Sniffs" doesn't result in any errors being thrown. - * - * @return void - */ - public function testSniffsFileNotDirectory() - { - // Set up the ruleset. - $standard = __DIR__.'/ProcessRulesetInvalidNoSniffsDirTest.xml'; - $config = new ConfigDouble(["--standard=$standard"]); - $ruleset = new Ruleset($config); - - $expected = ['Generic.PHP.BacktickOperator' => 'PHP_CodeSniffer\Standards\Generic\Sniffs\PHP\BacktickOperatorSniff']; - - $this->assertSame($expected, $ruleset->sniffCodes); - - }//end testSniffsFileNotDirectory() - - - /** - * Verify that all sniffs in a registered standard included in a ruleset automatically get added. - * - * @return void - */ - public function testAutoExpandSniffsDirectory() - { - // Set up the ruleset. - $standard = __DIR__.'/ProcessRulesetAutoExpandSniffsDirectoryTest.xml'; - $config = new ConfigDouble(["--standard=$standard"]); - $ruleset = new Ruleset($config); - - $std = 'TestStandard'; - $sniffDir = 'Fixtures\TestStandard\Sniffs'; - $expected = [ - "$std.Deprecated.WithLongReplacement" => "$sniffDir\Deprecated\WithLongReplacementSniff", - "$std.Deprecated.WithReplacement" => "$sniffDir\Deprecated\WithReplacementSniff", - "$std.Deprecated.WithReplacementContainingLinuxNewlines" => "$sniffDir\Deprecated\WithReplacementContainingLinuxNewlinesSniff", - "$std.Deprecated.WithReplacementContainingNewlines" => "$sniffDir\Deprecated\WithReplacementContainingNewlinesSniff", - "$std.Deprecated.WithoutReplacement" => "$sniffDir\Deprecated\WithoutReplacementSniff", - "$std.DeprecatedInvalid.EmptyDeprecationVersion" => "$sniffDir\DeprecatedInvalid\EmptyDeprecationVersionSniff", - "$std.DeprecatedInvalid.EmptyRemovalVersion" => "$sniffDir\DeprecatedInvalid\EmptyRemovalVersionSniff", - "$std.DeprecatedInvalid.InvalidDeprecationMessage" => "$sniffDir\DeprecatedInvalid\InvalidDeprecationMessageSniff", - "$std.DeprecatedInvalid.InvalidDeprecationVersion" => "$sniffDir\DeprecatedInvalid\InvalidDeprecationVersionSniff", - "$std.DeprecatedInvalid.InvalidRemovalVersion" => "$sniffDir\DeprecatedInvalid\InvalidRemovalVersionSniff", - "$std.SetProperty.AllowedAsDeclared" => "$sniffDir\SetProperty\AllowedAsDeclaredSniff", - "$std.SetProperty.AllowedViaMagicMethod" => "$sniffDir\SetProperty\AllowedViaMagicMethodSniff", - "$std.SetProperty.AllowedViaStdClass" => "$sniffDir\SetProperty\AllowedViaStdClassSniff", - "$std.SetProperty.NotAllowedViaAttribute" => "$sniffDir\SetProperty\NotAllowedViaAttributeSniff", - "$std.SetProperty.PropertyTypeHandling" => "$sniffDir\SetProperty\PropertyTypeHandlingSniff", - ]; - - // Sort the value to make the tests stable as different OSes will read directories - // in a different order and the order is not relevant for these tests. Just the values. - $actual = $ruleset->sniffCodes; - ksort($actual); - - $this->assertSame($expected, $actual); - - }//end testAutoExpandSniffsDirectory() - - - /** - * Verify handling of exclusions of groups of sniffs after inclusion via an even larger "group". - * - * @return void - */ - public function testExcludeSniffGroup() - { - // Set up the ruleset. - $standard = __DIR__.'/ProcessRulesetExcludeSniffGroupTest.xml'; - $config = new ConfigDouble(["--standard=$standard"]); - $ruleset = new Ruleset($config); - - $expected = [ - 'PSR1.Classes.ClassDeclaration' => 'PHP_CodeSniffer\Standards\PSR1\Sniffs\Classes\ClassDeclarationSniff', - 'PSR1.Methods.CamelCapsMethodName' => 'PHP_CodeSniffer\Standards\PSR1\Sniffs\Methods\CamelCapsMethodNameSniff', - ]; - - // Sort the value to make the tests stable as different OSes will read directories - // in a different order and the order is not relevant for these tests. Just the values. - $actual = $ruleset->sniffCodes; - ksort($actual); - - $this->assertSame($expected, $actual); - - }//end testExcludeSniffGroup() - - - /* - * No test for without "name" as there is nothing we can assert to verify it's being ignored. - */ - - - /** - * Test that an `` directive without a "value" attribute will be set to the ini equivalent of `true`. - * - * @return void - */ - public function testIniWithoutValue() - { - $originalValue = ini_get('user_agent'); - - // Set up the ruleset. - $this->getMiscRuleset(); - - $actualValue = ini_get('user_agent'); - // Reset the ini to its original value before the assertion to ensure it's never left in an incorrect state. - if ($originalValue !== false) { - ini_set('user_agent', $originalValue); - } - - $this->assertSame('1', $actualValue); - - }//end testIniWithoutValue() - - - /** - * Verify that inclusion of a single error code: - * - Includes the sniff, but sets "severity" for the sniff to 0; - * - Sets "severity" for the specific error code included to 5.; - * - * @return void - */ - public function testIncludeSingleErrorCode() - { - // Set up the ruleset. - $ruleset = $this->getMiscRuleset(); - - $key = 'severity'; - - $sniffCode = 'Generic.PHP.RequireStrictTypes'; - $this->assertArrayHasKey($sniffCode, $ruleset->ruleset, "Sniff $sniffCode not registered"); - $this->assertTrue(is_array($ruleset->ruleset[$sniffCode]), "Sniff $sniffCode is not an array"); - $this->assertArrayHasKey($key, $ruleset->ruleset[$sniffCode], "Directive $key not registered for sniff $sniffCode"); - $this->assertSame(0, $ruleset->ruleset[$sniffCode][$key], "$key has unexpected value for sniff $sniffCode"); - - $sniffCode = 'Generic.PHP.RequireStrictTypes.MissingDeclaration'; - $this->assertArrayHasKey($sniffCode, $ruleset->ruleset, "Sniff $sniffCode not registered"); - $this->assertTrue(is_array($ruleset->ruleset[$sniffCode]), "Sniff $sniffCode is not an array"); - $this->assertArrayHasKey($key, $ruleset->ruleset[$sniffCode], "Directive $key not registered for sniff $sniffCode"); - $this->assertSame(5, $ruleset->ruleset[$sniffCode][$key], "$key has unexpected value for sniff $sniffCode"); - - }//end testIncludeSingleErrorCode() - - - /** - * Verify that if all error codes, save one, from a sniff were previously excluded, an include for an additional - * error code from that same sniff will be respected. - * - * @return void - */ - public function testErrorCodeIncludeAfterExclude() - { - // Set up the ruleset. - $ruleset = $this->getMiscRuleset(); - - $key = 'severity'; - - $sniffCode = 'PEAR.Files.IncludingFile'; - $this->assertArrayHasKey($sniffCode, $ruleset->ruleset, "Sniff $sniffCode not registered"); - $this->assertTrue(is_array($ruleset->ruleset[$sniffCode]), "Sniff $sniffCode is not an array"); - $this->assertArrayHasKey($key, $ruleset->ruleset[$sniffCode], "Directive $key not registered for sniff $sniffCode"); - $this->assertSame(0, $ruleset->ruleset[$sniffCode][$key], "$key has unexpected value for sniff $sniffCode"); - - $sniffCode = 'PEAR.Files.IncludingFile.BracketsNotRequired'; - $this->assertArrayHasKey($sniffCode, $ruleset->ruleset, "Sniff $sniffCode not registered"); - $this->assertTrue(is_array($ruleset->ruleset[$sniffCode]), "Sniff $sniffCode is not an array"); - $this->assertArrayHasKey($key, $ruleset->ruleset[$sniffCode], "Directive $key not registered for sniff $sniffCode"); - $this->assertSame(5, $ruleset->ruleset[$sniffCode][$key], "$key has unexpected value for sniff $sniffCode"); - - $sniffCode = 'PEAR.Files.IncludingFile.UseRequire'; - $this->assertArrayHasKey($sniffCode, $ruleset->ruleset, "Sniff $sniffCode not registered"); - $this->assertTrue(is_array($ruleset->ruleset[$sniffCode]), "Sniff $sniffCode is not an array"); - $this->assertArrayHasKey($key, $ruleset->ruleset[$sniffCode], "Directive $key not registered for sniff $sniffCode"); - $this->assertSame(5, $ruleset->ruleset[$sniffCode][$key], "$key has unexpected value for sniff $sniffCode"); - - }//end testErrorCodeIncludeAfterExclude() - - - /** - * Verify that a element without a "ref" is completely ignored. - * - * @return void - */ - public function testRuleWithoutRefIsIgnored() - { - // Set up the ruleset. - $ruleset = $this->getMiscRuleset(); - - $sniffCode = 'Generic.Metrics.CyclomaticComplexity'; - $this->assertArrayNotHasKey($sniffCode, $ruleset->sniffCodes, "Sniff $sniffCode registered"); - $this->assertArrayNotHasKey($sniffCode, $ruleset->ruleset, "Sniff $sniffCode adjusted"); - - }//end testRuleWithoutRefIsIgnored() - - - /** - * Verify that no "ruleset adjustments" are registered via an `` without a "name". - * - * @return void - */ - public function testRuleExcludeWithoutNameIsIgnored() - { - // Set up the ruleset. - $ruleset = $this->getMiscRuleset(); - - $sniffCode = 'Generic.PHP.BacktickOperator'; - $this->assertArrayHasKey($sniffCode, $ruleset->sniffCodes, "Sniff $sniffCode not registered"); - $this->assertArrayNotHasKey($sniffCode, $ruleset->ruleset, "Sniff $sniffCode adjusted"); - - $sniffCode = 'Generic.PHP.BacktickOperator.Found'; - $this->assertArrayNotHasKey($sniffCode, $ruleset->ruleset, "Sniff $sniffCode adjusted"); - - }//end testRuleExcludeWithoutNameIsIgnored() - - - /** - * Test Helper. - * - * @return \PHP_CodeSniffer\Sniffs\Sniff - */ - private function getMiscRuleset() - { - static $ruleset; - - if (isset($ruleset) === false) { - // Set up the ruleset. - $standard = __DIR__.'/ProcessRulesetMiscTest.xml'; - $config = new ConfigDouble(["--standard=$standard"]); - $ruleset = new Ruleset($config); - } - - return $ruleset; - - }//end getMiscRuleset() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/PropertyTypeHandlingInlineTest.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/PropertyTypeHandlingInlineTest.xml deleted file mode 100644 index 0bdadc7d..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/PropertyTypeHandlingInlineTest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/PropertyTypeHandlingTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/PropertyTypeHandlingTest.php deleted file mode 100644 index 4c5cd516..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/PropertyTypeHandlingTest.php +++ /dev/null @@ -1,234 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Ruleset; - -use PHP_CodeSniffer\Files\LocalFile; -use PHP_CodeSniffer\Ruleset; -use PHP_CodeSniffer\Tests\ConfigDouble; -use PHPUnit\Framework\TestCase; - -/** - * Test the handling of property value types for properties set via the ruleset and inline. - * - * @covers \PHP_CodeSniffer\Ruleset::processRule - * @covers \PHP_CodeSniffer\Ruleset::setSniffProperty - */ -final class PropertyTypeHandlingTest extends TestCase -{ - - /** - * Sniff code for the sniff used in these tests. - * - * @var string - */ - const SNIFF_CODE = 'TestStandard.SetProperty.PropertyTypeHandling'; - - /** - * Class name of the sniff used in these tests. - * - * @var string - */ - const SNIFF_CLASS = 'Fixtures\\TestStandard\\Sniffs\\SetProperty\\PropertyTypeHandlingSniff'; - - - /** - * Test the value type handling for properties set via a ruleset. - * - * @param string $propertyName Property name. - * @param mixed $expected Expected property value. - * - * @dataProvider dataTypeHandling - * - * @return void - */ - public function testTypeHandlingWhenSetViaRuleset($propertyName, $expected) - { - $sniffObject = $this->getSniffObjectForRuleset(); - - $this->assertSame($expected, $sniffObject->$propertyName); - - }//end testTypeHandlingWhenSetViaRuleset() - - - /** - * Test the value type handling for properties set inline in a test case file. - * - * @param string $propertyName Property name. - * @param mixed $expected Expected property value. - * - * @dataProvider dataTypeHandling - * - * @return void - */ - public function testTypeHandlingWhenSetInline($propertyName, $expected) - { - $sniffObject = $this->getSniffObjectAfterProcessingFile(); - - $this->assertSame($expected, $sniffObject->$propertyName); - - }//end testTypeHandlingWhenSetInline() - - - /** - * Data provider. - * - * @see self::testTypeHandlingWhenSetViaRuleset() - * - * @return array> - */ - public static function dataTypeHandling() - { - $expectedArrayOnlyValues = [ - 'string', - '10', - '1.5', - 'null', - 'true', - 'false', - ]; - $expectedArrayKeysAndValues = [ - 'string' => 'string', - 10 => '10', - 'float' => '1.5', - 'null' => 'null', - 'true' => 'true', - 'false' => 'false', - ]; - - return [ - 'String value (default)' => [ - 'propertyName' => 'expectsString', - 'expected' => 'arbitraryvalue', - ], - 'String with whitespace only value becomes null' => [ - 'propertyName' => 'emptyStringBecomesNull', - 'expected' => null, - ], - 'Integer value gets set as string' => [ - 'propertyName' => 'expectsIntButAcceptsString', - 'expected' => '12345', - ], - 'Float value gets set as string' => [ - 'propertyName' => 'expectsFloatButAcceptsString', - 'expected' => '12.345', - ], - 'Null value gets set as string' => [ - 'propertyName' => 'expectsNull', - 'expected' => 'null', - ], - 'Null (uppercase) value gets set as string' => [ - 'propertyName' => 'expectsNullCase', - 'expected' => 'NULL', - ], - 'True value gets set as boolean' => [ - 'propertyName' => 'expectsBooleanTrue', - 'expected' => true, - ], - 'True (mixed case) value gets set as string' => [ - 'propertyName' => 'expectsBooleanTrueCase', - 'expected' => 'True', - ], - 'False value gets set as boolean' => [ - 'propertyName' => 'expectsBooleanFalse', - 'expected' => false, - ], - 'False (mixed case) value gets set as string' => [ - 'propertyName' => 'expectsBooleanFalseCase', - 'expected' => 'fALSe', - ], - 'Array with only values (new style)' => [ - 'propertyName' => 'expectsArrayWithOnlyValues', - 'expected' => $expectedArrayOnlyValues, - ], - 'Array with keys and values (new style)' => [ - 'propertyName' => 'expectsArrayWithKeysAndValues', - 'expected' => $expectedArrayKeysAndValues, - ], - 'Array with only values (old style)' => [ - 'propertyName' => 'expectsOldSchoolArrayWithOnlyValues', - 'expected' => $expectedArrayOnlyValues, - ], - 'Array with keys and values (old style)' => [ - 'propertyName' => 'expectsOldSchoolArrayWithKeysAndValues', - 'expected' => $expectedArrayKeysAndValues, - ], - ]; - - }//end dataTypeHandling() - - - /** - * Test Helper. - * - * @see self::testTypeHandlingWhenSetViaRuleset() - * - * @return \PHP_CodeSniffer\Sniffs\Sniff - */ - private function getSniffObjectForRuleset() - { - static $sniffObject; - - if (isset($sniffObject) === false) { - // Set up the ruleset. - $standard = __DIR__."/PropertyTypeHandlingTest.xml"; - $config = new ConfigDouble(["--standard=$standard"]); - $ruleset = new Ruleset($config); - - // Verify that our target sniff has been registered. - $this->assertArrayHasKey(self::SNIFF_CODE, $ruleset->sniffCodes, 'Target sniff not registered'); - $this->assertSame(self::SNIFF_CLASS, $ruleset->sniffCodes[self::SNIFF_CODE], 'Target sniff not registered with the correct class'); - $this->assertArrayHasKey(self::SNIFF_CLASS, $ruleset->sniffs, 'Sniff class not listed in registered sniffs'); - - $sniffObject = $ruleset->sniffs[self::SNIFF_CLASS]; - } - - return $sniffObject; - - }//end getSniffObjectForRuleset() - - - /** - * Test Helper - * - * @see self::testTypeHandlingWhenSetInline() - * - * @return \PHP_CodeSniffer\Sniffs\Sniff - */ - private function getSniffObjectAfterProcessingFile() - { - static $sniffObject; - - if (isset($sniffObject) === false) { - // Set up the ruleset. - $standard = __DIR__."/PropertyTypeHandlingInlineTest.xml"; - $config = new ConfigDouble(["--standard=$standard"]); - $ruleset = new Ruleset($config); - - // Verify that our target sniff has been registered. - $this->assertArrayHasKey(self::SNIFF_CODE, $ruleset->sniffCodes, 'Target sniff not registered'); - $this->assertSame(self::SNIFF_CLASS, $ruleset->sniffCodes[self::SNIFF_CODE], 'Target sniff not registered with the correct class'); - $this->assertArrayHasKey(self::SNIFF_CLASS, $ruleset->sniffs, 'Sniff class not listed in registered sniffs'); - - $sniffObject = $ruleset->sniffs[self::SNIFF_CLASS]; - - // Process the file with inline phpcs:set annotations. - $testFile = realpath(__DIR__.'/Fixtures/PropertyTypeHandlingInline.inc'); - $this->assertNotFalse($testFile); - - $phpcsFile = new LocalFile($testFile, $ruleset, $config); - $phpcsFile->process(); - } - - return $sniffObject; - - }//end getSniffObjectAfterProcessingFile() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/PropertyTypeHandlingTest.xml b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/PropertyTypeHandlingTest.xml deleted file mode 100644 index 76817837..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Ruleset/PropertyTypeHandlingTest.xml +++ /dev/null @@ -1,44 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/AbstractTokenizerTestCase.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/AbstractTokenizerTestCase.php deleted file mode 100644 index a7c1a6b0..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/AbstractTokenizerTestCase.php +++ /dev/null @@ -1,126 +0,0 @@ - - * @copyright 2018-2019 Juliette Reinders Folmer. All rights reserved. - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers; - -use PHP_CodeSniffer\Files\DummyFile; -use PHP_CodeSniffer\Ruleset; -use PHP_CodeSniffer\Tests\ConfigDouble; -use PHP_CodeSniffer\Tests\Core\AbstractMethodUnitTest; -use PHPUnit\Framework\TestCase; -use ReflectionProperty; - -abstract class AbstractTokenizerTestCase extends TestCase -{ - - /** - * The file extension of the test case file (without leading dot). - * - * This allows child classes to overrule the default `inc` with, for instance, - * `js` or `css` when applicable. - * - * @var string - */ - protected $fileExtension = 'inc'; - - /** - * The tab width setting to use when tokenizing the file. - * - * This allows for test case files to use a different tab width than the default. - * - * @var integer - */ - protected $tabWidth = 4; - - /** - * The \PHP_CodeSniffer\Files\File object containing the parsed contents of the test case file. - * - * @var \PHP_CodeSniffer\Files\File - */ - protected $phpcsFile; - - - /** - * Initialize & tokenize \PHP_CodeSniffer\Files\File with code from the test case file. - * - * The test case file for a unit test class has to be in the same directory - * directory and use the same file name as the test class, using the .inc extension. - * - * @before - * - * @return void - */ - protected function initializeFile() - { - if (isset($this->phpcsFile) === false) { - $_SERVER['argv'] = []; - $config = new ConfigDouble(); - - // Also set a tab-width to enable testing tab-replaced vs `orig_content`. - $config->tabWidth = $this->tabWidth; - - $ruleset = new Ruleset($config); - - // Default to a file with the same name as the test class. Extension is property based. - $relativeCN = str_replace(__NAMESPACE__, '', get_called_class()); - $relativePath = str_replace('\\', DIRECTORY_SEPARATOR, $relativeCN); - $pathToTestFile = realpath(__DIR__).$relativePath.'.'.$this->fileExtension; - - // Make sure the file gets parsed correctly based on the file type. - $contents = 'phpcs_input_file: '.$pathToTestFile.PHP_EOL; - $contents .= file_get_contents($pathToTestFile); - - $this->phpcsFile = new DummyFile($contents, $ruleset, $config); - $this->phpcsFile->parse(); - }//end if - - }//end initializeFile() - - - /** - * Get the token pointer for a target token based on a specific comment found on the line before. - * - * Note: the test delimiter comment MUST start with "/* test" to allow this function to - * distinguish between comments used *in* a test and test delimiters. - * - * @param string $commentString The delimiter comment to look for. - * @param int|string|array $tokenType The type of token(s) to look for. - * @param string $tokenContent Optional. The token content for the target token. - * - * @return int - */ - protected function getTargetToken($commentString, $tokenType, $tokenContent=null) - { - return AbstractMethodUnitTest::getTargetTokenFromFile($this->phpcsFile, $commentString, $tokenType, $tokenContent); - - }//end getTargetToken() - - - /** - * Clear the static "resolved tokens" cache property on the Tokenizer\PHP class. - * - * This method should be used selectively by tests to ensure the code under test is actually hit - * by the test testing the code. - * - * @return void - */ - public static function clearResolvedTokensCache() - { - $property = new ReflectionProperty('PHP_CodeSniffer\Tokenizers\PHP', 'resolveTokenCache'); - $property->setAccessible(true); - $property->setValue(null, []); - $property->setAccessible(false); - - }//end clearResolvedTokensCache() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Comment/CommentTestCase.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Comment/CommentTestCase.php deleted file mode 100644 index 625029db..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Comment/CommentTestCase.php +++ /dev/null @@ -1,117 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\Comment; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; -use PHP_CodeSniffer\Util\Tokens; - -/** - * Base class for testing DocBlock comment tokenization. - * - * @covers PHP_CodeSniffer\Tokenizers\Comment - */ -abstract class CommentTestCase extends AbstractTokenizerTestCase -{ - - - /** - * Test whether the docblock opener and closer have the expected extra keys. - * - * @param string $marker The comment prefacing the target token. - * @param int $closerOffset The offset of the closer from the opener. - * @param array $expectedTags The expected tags offsets array. - * - * @dataProvider dataDocblockOpenerCloser - * - * @return void - */ - public function testDocblockOpenerCloser($marker, $closerOffset, $expectedTags) - { - $tokens = $this->phpcsFile->getTokens(); - $target = $this->getTargetToken($marker, [T_DOC_COMMENT_OPEN_TAG]); - - $opener = $tokens[$target]; - - $this->assertArrayHasKey('comment_closer', $opener, 'Comment opener: comment_closer index is not set'); - $this->assertArrayHasKey('comment_tags', $opener, 'Comment opener: comment_tags index is not set'); - - $expectedCloser = ($target + $closerOffset); - $this->assertSame($expectedCloser, $opener['comment_closer'], 'Comment opener: comment_closer not set to the expected stack pointer'); - - // Update the tags expectations. - foreach ($expectedTags as $i => $ptr) { - $expectedTags[$i] += $target; - } - - $this->assertSame($expectedTags, $opener['comment_tags'], 'Comment opener: recorded tags do not match expected tags'); - - $closer = $tokens[$opener['comment_closer']]; - - $this->assertArrayHasKey('comment_opener', $closer, 'Comment closer: comment_opener index is not set'); - $this->assertSame($target, $closer['comment_opener'], 'Comment closer: comment_opener not set to the expected stack pointer'); - - }//end testDocblockOpenerCloser() - - - /** - * Data provider. - * - * @see testDocblockOpenerCloser() - * - * @return array>> - */ - abstract public static function dataDocblockOpenerCloser(); - - - /** - * Test helper. Check a token sequence complies with an expected token sequence. - * - * @param int $startPtr The position in the file to start checking from. - * @param array> $expectedSequence The consecutive token constants and their contents to expect. - * - * @return void - */ - protected function checkTokenSequence($startPtr, array $expectedSequence) - { - $tokens = $this->phpcsFile->getTokens(); - - $sequenceKey = 0; - $sequenceCount = count($expectedSequence); - - for ($i = $startPtr; $sequenceKey < $sequenceCount; $i++, $sequenceKey++) { - $currentItem = $expectedSequence[$sequenceKey]; - $expectedCode = key($currentItem); - $expectedType = Tokens::tokenName($expectedCode); - $expectedContent = current($currentItem); - $errorMsgSuffix = PHP_EOL.'(StackPtr: '.$i.' | Position in sequence: '.$sequenceKey.' | Expected: '.$expectedType.')'; - - $this->assertSame( - $expectedCode, - $tokens[$i]['code'], - 'Token tokenized as '.Tokens::tokenName($tokens[$i]['code']).', not '.$expectedType.' (code)'.$errorMsgSuffix - ); - - $this->assertSame( - $expectedType, - $tokens[$i]['type'], - 'Token tokenized as '.$tokens[$i]['type'].', not '.$expectedType.' (type)'.$errorMsgSuffix - ); - - $this->assertSame( - $expectedContent, - $tokens[$i]['content'], - 'Token content did not match expectations'.$errorMsgSuffix - ); - }//end for - - }//end checkTokenSequence() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Comment/LiveCoding1Test.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Comment/LiveCoding1Test.inc deleted file mode 100644 index a43c7d9b..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Comment/LiveCoding1Test.inc +++ /dev/null @@ -1,6 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\Comment; - -/** - * Tests that unclosed docblocks during live coding are handled correctly. - * - * @covers PHP_CodeSniffer\Tokenizers\Comment - */ -final class LiveCoding1Test extends CommentTestCase -{ - - - /** - * Data provider. - * - * @see testDocblockOpenerCloser() - * - * @return array>> - */ - public static function dataDocblockOpenerCloser() - { - return [ - 'live coding: unclosed docblock, no blank line at end of file' => [ - 'marker' => '/* testLiveCoding */', - 'closerOffset' => 8, - 'expectedTags' => [], - ], - ]; - - }//end dataDocblockOpenerCloser() - - - /** - * Verify tokenization of the DocBlock. - * - * @phpcs:disable Squiz.Arrays.ArrayDeclaration.SpaceBeforeDoubleArrow -- Readability is better with alignment. - * - * @return void - */ - public function testLiveCoding() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'Unclosed docblock, live coding.... with no blank line at end of file.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_CLOSE_TAG => '*'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testLiveCoding() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Comment/LiveCoding2Test.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Comment/LiveCoding2Test.inc deleted file mode 100644 index b113645b..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Comment/LiveCoding2Test.inc +++ /dev/null @@ -1,5 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\Comment; - -/** - * Tests that unclosed docblocks during live coding are handled correctly. - * - * @covers PHP_CodeSniffer\Tokenizers\Comment - */ -final class LiveCoding2Test extends CommentTestCase -{ - - - /** - * Data provider. - * - * @see testDocblockOpenerCloser() - * - * @return array>> - */ - public static function dataDocblockOpenerCloser() - { - return [ - 'live coding: unclosed docblock with blank line at end of file' => [ - 'marker' => '/* testLiveCoding */', - 'closerOffset' => 7, - 'expectedTags' => [], - ], - ]; - - }//end dataDocblockOpenerCloser() - - - /** - * Verify tokenization of the DocBlock. - * - * @phpcs:disable Squiz.Arrays.ArrayDeclaration.SpaceBeforeDoubleArrow -- Readability is better with alignment. - * - * @return void - */ - public function testLiveCoding() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'Unclosed docblock, live coding.... with a blank line at end of file.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_CLOSE_TAG => ''], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testLiveCoding() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Comment/LiveCoding3Test.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Comment/LiveCoding3Test.inc deleted file mode 100644 index 9b81a434..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Comment/LiveCoding3Test.inc +++ /dev/null @@ -1,4 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\Comment; - -/** - * Tests that unclosed docblocks during live coding are handled correctly. - * - * @covers PHP_CodeSniffer\Tokenizers\Comment - */ -final class LiveCoding3Test extends CommentTestCase -{ - - - /** - * Data provider. - * - * @see testDocblockOpenerCloser() - * - * @return array>> - */ - public static function dataDocblockOpenerCloser() - { - return [ - 'live coding: unclosed docblock, no contents, no blank line at end of file' => [ - 'marker' => '/* testLiveCoding */', - 'closerOffset' => 1, - 'expectedTags' => [], - ], - ]; - - }//end dataDocblockOpenerCloser() - - - /** - * Verify tokenization of the DocBlock. - * - * @phpcs:disable Squiz.Arrays.ArrayDeclaration.SpaceBeforeDoubleArrow -- Readability is better with alignment. - * - * @return void - */ - public function testLiveCoding() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_CLOSE_TAG => ''], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testLiveCoding() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Comment/LiveCoding4Test.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Comment/LiveCoding4Test.inc deleted file mode 100644 index 1561e715..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Comment/LiveCoding4Test.inc +++ /dev/null @@ -1,7 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\Comment; - -/** - * Tests that unclosed docblocks during live coding are handled correctly. - * - * @covers PHP_CodeSniffer\Tokenizers\Comment - */ -final class LiveCoding4Test extends CommentTestCase -{ - - - /** - * Data provider. - * - * @see testDocblockOpenerCloser() - * - * @return array>> - */ - public static function dataDocblockOpenerCloser() - { - return [ - 'live coding: unclosed docblock, trailing whitespace on last line, no blank line at end of file' => [ - 'marker' => '/* testLiveCoding */', - 'closerOffset' => 15, - 'expectedTags' => [], - ], - ]; - - }//end dataDocblockOpenerCloser() - - - /** - * Verify tokenization of the DocBlock. - * - * @phpcs:disable Squiz.Arrays.ArrayDeclaration.SpaceBeforeDoubleArrow -- Readability is better with alignment. - * - * @return void - */ - public function testLiveCoding() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'The last line of this test must have trailing whitespace.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'So, be careful when saving this file!'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_CLOSE_TAG => ''], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testLiveCoding() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Comment/MultiLineDocBlockTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Comment/MultiLineDocBlockTest.inc deleted file mode 100644 index f33afcd6..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Comment/MultiLineDocBlockTest.inc +++ /dev/null @@ -1,81 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\Comment; - -/** - * Tests that multiline docblocks are tokenized correctly. - * - * @covers PHP_CodeSniffer\Tokenizers\Comment - */ -final class MultiLineDocBlockTest extends CommentTestCase -{ - - - /** - * Data provider. - * - * @see testDocblockOpenerCloser() - * - * @return array>> - */ - public static function dataDocblockOpenerCloser() - { - return [ - 'Multi line docblock: no contents' => [ - 'marker' => '/* testEmptyDocblock */', - 'closerOffset' => 3, - 'expectedTags' => [], - ], - 'Multi line docblock: variety of text and tags' => [ - 'marker' => '/* testMultilineDocblock */', - 'closerOffset' => 95, - // phpcs:ignore Squiz.Arrays.ArrayDeclaration.SingleLineNotAllowed - 'expectedTags' => [21, 29, 36, 46, 56, 63, 73, 80, 90], - ], - 'Multi line docblock: no leading stars' => [ - 'marker' => '/* testMultilineDocblockNoStars */', - 'closerOffset' => 32, - // phpcs:ignore Squiz.Arrays.ArrayDeclaration.SingleLineNotAllowed - 'expectedTags' => [10, 16, 21, 27], - ], - 'Multi line docblock: indented' => [ - 'marker' => '/* testMultilineDocblockIndented */', - 'closerOffset' => 60, - // phpcs:ignore Squiz.Arrays.ArrayDeclaration.SingleLineNotAllowed - 'expectedTags' => [21, 28, 38, 45, 55], - ], - 'Multi line docblock: opener not on own line' => [ - 'marker' => '/* testMultilineDocblockOpenerNotOnOwnLine */', - 'closerOffset' => 10, - 'expectedTags' => [], - ], - 'Multi line docblock: closer not on own line' => [ - 'marker' => '/* testMultilineDocblockCloserNotOnOwnLine */', - 'closerOffset' => 11, - 'expectedTags' => [], - ], - 'Multi line docblock: stars not aligned' => [ - 'marker' => '/* testMultilineDocblockStarsNotAligned */', - 'closerOffset' => 26, - 'expectedTags' => [], - ], - ]; - - }//end dataDocblockOpenerCloser() - - - /** - * Verify tokenization of an empty, multi-line DocBlock. - * - * @phpcs:disable Squiz.Arrays.ArrayDeclaration.SpaceBeforeDoubleArrow -- Readability is better with alignment. - * - * @return void - */ - public function testEmptyDocblock() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testEmptyDocblock() - - - /** - * Verify tokenization of a multi-line DocBlock containing all possible tokens. - * - * @return void - */ - public function testMultilineDocblock() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'This is a multi-line docblock.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'With blank lines, stars, tags, and tag descriptions.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@tagWithoutDescription'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@since'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => '10.3'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@deprecated'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => '11.5'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@requires'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'PHP 7.1 -- PHPUnit tag.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@tag-with-dashes-is-suppported'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'Description.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@tag_with_underscores'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'Description.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@param'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'string $p1 Description 1.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@param'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'int|false $p2 Description 2.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@return'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'void'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testMultilineDocblock() - - - /** - * Verify tokenization of a multi-line DocBlock with extra starts for the opener/closer and no stars on the lines between. - * - * @return void - */ - public function testMultilineDocblockNoStars() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/****'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'This is a multi-line docblock, but the lines are not marked with stars.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'Then again, the opener and closer have an abundance of stars.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@since'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => '10.3'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@param'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'string $p1 Description 1.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@param'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'int|false $p2 Description 2.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@return'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'void'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_CLOSE_TAG => '**/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testMultilineDocblockNoStars() - - - /** - * Verify tokenization of a multi-line, indented DocBlock. - * - * @return void - */ - public function testMultilineDocblockIndented() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'This is a multi-line indented docblock.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'With blank lines, stars, tags, and tag descriptions.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@since'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => '10.3'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@deprecated'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => '11.5'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@param'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'string $p1 Description 1.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@param'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'int|false $p2 Description 2.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@return'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'void'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testMultilineDocblockIndented() - - - /** - * Verify tokenization of a multi-line DocBlock, where the opener is not on its own line. - * - * @return void - */ - public function testMultilineDocblockOpenerNotOnOwnLine() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'Start of description'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'description continued.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testMultilineDocblockOpenerNotOnOwnLine() - - - /** - * Verify tokenization of a multi-line DocBlock, where the closer is not on its own line. - * - * @return void - */ - public function testMultilineDocblockCloserNotOnOwnLine() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'Start of description'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'description continued. '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testMultilineDocblockCloserNotOnOwnLine() - - - /** - * Verify tokenization of a multi-line DocBlock with inconsistent indentation. - * - * @return void - */ - public function testMultilineDocblockStarsNotAligned() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'Start of description.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'Line below this is missing a star.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'Text'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'Star indented.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'Closer indented.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testMultilineDocblockStarsNotAligned() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Comment/PhpcsAnnotationsInDocBlockTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Comment/PhpcsAnnotationsInDocBlockTest.inc deleted file mode 100644 index d74f68d2..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Comment/PhpcsAnnotationsInDocBlockTest.inc +++ /dev/null @@ -1,116 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\Comment; - -/** - * Tests that PHPCS native annotations in docblocks are tokenized correctly. - * - * @covers PHP_CodeSniffer\Tokenizers\Comment - */ -final class PhpcsAnnotationsInDocBlockTest extends CommentTestCase -{ - - - /** - * Data provider. - * - * @see testDocblockOpenerCloser() - * - * @return array>> - */ - public static function dataDocblockOpenerCloser() - { - return [ - 'Single-line: @phpcs:ignoreFile annotation' => [ - 'marker' => '/* testSingleLineDocIgnoreFileAnnotation */', - 'closerOffset' => 3, - 'expectedTags' => [], - ], - 'Single-line: @phpcs:ignore annotation' => [ - 'marker' => '/* testSingleLineDocIgnoreAnnotation */', - 'closerOffset' => 3, - 'expectedTags' => [], - ], - 'Single-line: @phpcs:disable annotation' => [ - 'marker' => '/* testSingleLineDocDisableAnnotation */', - 'closerOffset' => 3, - 'expectedTags' => [], - ], - 'Single-line: @phpcs:enable annotation; no whitespace' => [ - 'marker' => '/* testSingleLineDocEnableAnnotationNoWhitespace */', - 'closerOffset' => 2, - 'expectedTags' => [], - ], - - 'Multi-line: @phpcs:ignoreFile at the start' => [ - 'marker' => '/* testMultiLineDocIgnoreFileAnnotationAtStart */', - 'closerOffset' => 13, - 'expectedTags' => [], - ], - 'Multi-line: @phpcs:ignore at the start' => [ - 'marker' => '/* testMultiLineDocIgnoreAnnotationAtStart */', - 'closerOffset' => 13, - 'expectedTags' => [10], - ], - 'Multi-line: @phpcs:disable at the start' => [ - 'marker' => '/* testMultiLineDocDisableAnnotationAtStart */', - 'closerOffset' => 13, - 'expectedTags' => [], - ], - 'Multi-line: @phpcs:enable at the start' => [ - 'marker' => '/* testMultiLineDocEnableAnnotationAtStart */', - 'closerOffset' => 18, - 'expectedTags' => [13], - ], - - 'Multi-line: @phpcs:ignoreFile in the middle' => [ - 'marker' => '/* testMultiLineDocIgnoreFileAnnotationInMiddle */', - 'closerOffset' => 21, - 'expectedTags' => [], - ], - 'Multi-line: @phpcs:ignore in the middle' => [ - 'marker' => '/* testMultiLineDocIgnoreAnnotationInMiddle */', - 'closerOffset' => 23, - 'expectedTags' => [5], - ], - 'Multi-line: @phpcs:disable in the middle' => [ - 'marker' => '/* testMultiLineDocDisableAnnotationInMiddle */', - 'closerOffset' => 26, - 'expectedTags' => [21], - ], - 'Multi-line: @phpcs:enable in the middle' => [ - 'marker' => '/* testMultiLineDocEnableAnnotationInMiddle */', - 'closerOffset' => 24, - 'expectedTags' => [21], - ], - - 'Multi-line: @phpcs:ignoreFile at the end' => [ - 'marker' => '/* testMultiLineDocIgnoreFileAnnotationAtEnd */', - 'closerOffset' => 16, - 'expectedTags' => [5], - ], - 'Multi-line: @phpcs:ignore at the end' => [ - 'marker' => '/* testMultiLineDocIgnoreAnnotationAtEnd */', - 'closerOffset' => 16, - 'expectedTags' => [], - ], - 'Multi-line: @phpcs:disable at the end' => [ - 'marker' => '/* testMultiLineDocDisableAnnotationAtEnd */', - 'closerOffset' => 18, - 'expectedTags' => [5], - ], - 'Multi-line: @phpcs:enable at the end' => [ - 'marker' => '/* testMultiLineDocEnableAnnotationAtEnd */', - 'closerOffset' => 16, - 'expectedTags' => [], - ], - ]; - - }//end dataDocblockOpenerCloser() - - - /** - * Verify tokenization of a single line DocBlock containing a PHPCS ignoreFile annotation. - * - * @phpcs:disable Squiz.Arrays.ArrayDeclaration.SpaceBeforeDoubleArrow -- Readability is better with alignment. - * - * @return void - */ - public function testSingleLineDocIgnoreFileAnnotation() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_PHPCS_IGNORE_FILE => '@phpcs:ignoreFile '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testSingleLineDocIgnoreFileAnnotation() - - - /** - * Verify tokenization of a single line DocBlock containing a PHPCS ignore annotation. - * - * @return void - */ - public function testSingleLineDocIgnoreAnnotation() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_PHPCS_IGNORE => '@phpcs:ignore Stnd.Cat.SniffName -- With reason '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testSingleLineDocIgnoreAnnotation() - - - /** - * Verify tokenization of a single line DocBlock containing a PHPCS disable annotation. - * - * @return void - */ - public function testSingleLineDocDisableAnnotation() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_PHPCS_DISABLE => '@phpcs:disable Stnd.Cat.SniffName,Stnd.Other '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testSingleLineDocDisableAnnotation() - - - /** - * Verify tokenization of a single line DocBlock containing a PHPCS enable annotation. - * - * @return void - */ - public function testSingleLineDocEnableAnnotationNoWhitespace() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_PHPCS_ENABLE => '@phpcs:enable Stnd.Cat.SniffName'], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testSingleLineDocEnableAnnotationNoWhitespace() - - - /** - * Verify tokenization of a single line DocBlock containing a PHPCS ignoreFile annotation at the start. - * - * @return void - */ - public function testMultiLineDocIgnoreFileAnnotationAtStart() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_PHPCS_IGNORE_FILE => '@phpcs:ignoreFile'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'Something.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testMultiLineDocIgnoreFileAnnotationAtStart() - - - /** - * Verify tokenization of a single line DocBlock containing a PHPCS ignore annotation at the start. - * - * @return void - */ - public function testMultiLineDocIgnoreAnnotationAtStart() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_PHPCS_IGNORE => '@phpcs:ignore Stnd.Cat.SniffName'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@tag'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testMultiLineDocIgnoreAnnotationAtStart() - - - /** - * Verify tokenization of a single line DocBlock containing a PHPCS disable annotation at the start. - * - * @return void - */ - public function testMultiLineDocDisableAnnotationAtStart() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_PHPCS_DISABLE => '@phpcs:disable Stnd.Cat.SniffName -- Ensure PHPCS annotations are also retokenized correctly.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'Something.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testMultiLineDocDisableAnnotationAtStart() - - - /** - * Verify tokenization of a single line DocBlock containing a PHPCS enable annotation at the start. - * - * @return void - */ - public function testMultiLineDocEnableAnnotationAtStart() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_PHPCS_ENABLE => '@phpcs:enable Stnd.Cat,Stnd.Other'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@tag'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'With description.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testMultiLineDocEnableAnnotationAtStart() - - - /** - * Verify tokenization of a single line DocBlock containing a PHPCS ignoreFile annotation in the middle. - * - * @return void - */ - public function testMultiLineDocIgnoreFileAnnotationInMiddle() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'Check tokenization of PHPCS annotations within docblocks.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_PHPCS_IGNORE_FILE => '@phpcs:ignoreFile'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'Something.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testMultiLineDocIgnoreFileAnnotationInMiddle() - - - /** - * Verify tokenization of a single line DocBlock containing a PHPCS ignore annotation in the middle. - * - * @return void - */ - public function testMultiLineDocIgnoreAnnotationInMiddle() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@tagBefore'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'With Description'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_PHPCS_IGNORE => '@phpcs:ignore Stnd.Cat.SniffName'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'Something.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testMultiLineDocIgnoreAnnotationInMiddle() - - - /** - * Verify tokenization of a single line DocBlock containing a PHPCS disable annotation in the middle. - * - * @return void - */ - public function testMultiLineDocDisableAnnotationInMiddle() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'Check tokenization of PHPCS annotations within docblocks.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_PHPCS_DISABLE => '@phpcs:disable Stnd.Cat.SniffName -- Ensure PHPCS annotations are also retokenized correctly.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@tagAfter'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'With Description'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testMultiLineDocDisableAnnotationInMiddle() - - - /** - * Verify tokenization of a single line DocBlock containing a PHPCS enable annotation in the middle. - * - * @return void - */ - public function testMultiLineDocEnableAnnotationInMiddle() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'Check tokenization of PHPCS annotations within docblocks.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_PHPCS_ENABLE => '@phpcs:enable Stnd.Cat,Stnd.Other'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@tagAfter'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testMultiLineDocEnableAnnotationInMiddle() - - - /** - * Verify tokenization of a single line DocBlock containing a PHPCS ignoreFile annotation at the end. - * - * @return void - */ - public function testMultiLineDocIgnoreFileAnnotationAtEnd() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@tagBefore'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_PHPCS_IGNORE_FILE => '@phpcs:ignoreFile'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testMultiLineDocIgnoreFileAnnotationAtEnd() - - - /** - * Verify tokenization of a single line DocBlock containing a PHPCS ignore annotation at the end. - * - * @return void - */ - public function testMultiLineDocIgnoreAnnotationAtEnd() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'Check tokenization of PHPCS annotations within docblocks.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_PHPCS_IGNORE => '@phpcs:ignore Stnd.Cat.SniffName'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testMultiLineDocIgnoreAnnotationAtEnd() - - - /** - * Verify tokenization of a single line DocBlock containing a PHPCS disable annotation at the end. - * - * @return void - */ - public function testMultiLineDocDisableAnnotationAtEnd() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@tagBefore'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'With Description.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_PHPCS_DISABLE => '@phpcs:disable Stnd.Cat.SniffName -- Ensure PHPCS annotations are also retokenized correctly.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testMultiLineDocDisableAnnotationAtEnd() - - - /** - * Verify tokenization of a single line DocBlock containing a PHPCS enable annotation at the end. - * - * @return void - */ - public function testMultiLineDocEnableAnnotationAtEnd() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'Check tokenization of PHPCS annotations within docblocks.'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STAR => '*'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_PHPCS_ENABLE => '@phpcs:enable Stnd.Cat,Stnd.Other'], - [T_DOC_COMMENT_WHITESPACE => "\n"], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testMultiLineDocEnableAnnotationAtEnd() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Comment/SingleLineDocBlockTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Comment/SingleLineDocBlockTest.inc deleted file mode 100644 index 88b05ea4..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Comment/SingleLineDocBlockTest.inc +++ /dev/null @@ -1,26 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\Comment; - -/** - * Tests that single line docblocks are tokenized correctly. - * - * @covers PHP_CodeSniffer\Tokenizers\Comment - */ -final class SingleLineDocBlockTest extends CommentTestCase -{ - - - /** - * Data provider. - * - * @see testDocblockOpenerCloser() - * - * @return array>> - */ - public static function dataDocblockOpenerCloser() - { - return [ - 'Single line docblock: empty, no whitespace' => [ - 'marker' => '/* testEmptyDocblockNoWhiteSpace */', - 'closerOffset' => 1, - 'expectedTags' => [], - ], - 'Single line docblock: only whitespace' => [ - 'marker' => '/* testEmptyDocblockWithWhiteSpace */', - 'closerOffset' => 2, - 'expectedTags' => [], - ], - 'Single line docblock: just text' => [ - 'marker' => '/* testSingleLineDocblockNoTag */', - 'closerOffset' => 3, - 'expectedTags' => [], - ], - 'Single line docblock: @var type before name' => [ - 'marker' => '/* testSingleLineDocblockWithTag1 */', - 'closerOffset' => 5, - 'expectedTags' => [2], - ], - 'Single line docblock: @var name before type' => [ - 'marker' => '/* testSingleLineDocblockWithTag2 */', - 'closerOffset' => 5, - 'expectedTags' => [2], - ], - 'Single line docblock: @see with description' => [ - 'marker' => '/* testSingleLineDocblockWithTag3 */', - 'closerOffset' => 5, - 'expectedTags' => [2], - ], - ]; - - }//end dataDocblockOpenerCloser() - - - /** - * Verify an empty block comment is tokenized as T_COMMENT, not as a docblock. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testEmptyBlockCommentNoWhiteSpace() - { - $expectedSequence = [ - [T_COMMENT => '/**/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', [T_COMMENT, T_DOC_COMMENT_OPEN_TAG]); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testEmptyBlockCommentNoWhiteSpace() - - - /** - * Verify tokenization of an empty, single line DocBlock without whitespace between the opener and closer. - * - * @phpcs:disable Squiz.Arrays.ArrayDeclaration.SpaceBeforeDoubleArrow -- Readability is better with alignment. - * - * @return void - */ - public function testEmptyDocblockNoWhiteSpace() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testEmptyDocblockNoWhiteSpace() - - - /** - * Verify tokenization of an empty, single line DocBlock. - * - * @return void - */ - public function testEmptyDocblockWithWhiteSpace() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testEmptyDocblockWithWhiteSpace() - - - /** - * Verify tokenization of a single line DocBlock. - * - * @return void - */ - public function testSingleLineDocblockNoTag() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'Just some text '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testSingleLineDocblockNoTag() - - - /** - * Verify tokenization of a single line DocBlock with a tag. - * - * @return void - */ - public function testSingleLineDocblockWithTag1() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@var'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => '\SomeClass[] $var '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testSingleLineDocblockWithTag1() - - - /** - * Verify tokenization of a single line DocBlock with a tag. - * - * @return void - */ - public function testSingleLineDocblockWithTag2() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@var'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => '$var \SomeClass[] '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testSingleLineDocblockWithTag2() - - - /** - * Verify tokenization of a single line DocBlock with a tag. - * - * @return void - */ - public function testSingleLineDocblockWithTag3() - { - $expectedSequence = [ - [T_DOC_COMMENT_OPEN_TAG => '/**'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_TAG => '@see'], - [T_DOC_COMMENT_WHITESPACE => ' '], - [T_DOC_COMMENT_STRING => 'Something::Else '], - [T_DOC_COMMENT_CLOSE_TAG => '*/'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_DOC_COMMENT_OPEN_TAG); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testSingleLineDocblockWithTag3() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/AnonClassParenthesisOwnerTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/AnonClassParenthesisOwnerTest.inc deleted file mode 100644 index 3ee1afd0..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/AnonClassParenthesisOwnerTest.inc +++ /dev/null @@ -1,29 +0,0 @@ - - * @copyright 2019 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -final class AnonClassParenthesisOwnerTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that anonymous class tokens without parenthesis do not get assigned a parenthesis owner. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * - * @dataProvider dataAnonClassNoParentheses - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testAnonClassNoParentheses($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - - $anonClass = $this->getTargetToken($testMarker, T_ANON_CLASS); - $this->assertFalse(array_key_exists('parenthesis_owner', $tokens[$anonClass])); - $this->assertFalse(array_key_exists('parenthesis_opener', $tokens[$anonClass])); - $this->assertFalse(array_key_exists('parenthesis_closer', $tokens[$anonClass])); - - }//end testAnonClassNoParentheses() - - - /** - * Test that the next open/close parenthesis after an anonymous class without parenthesis - * do not get assigned the anonymous class as a parenthesis owner. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * - * @dataProvider dataAnonClassNoParentheses - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testAnonClassNoParenthesesNextOpenClose($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - $function = $this->getTargetToken($testMarker, T_FUNCTION); - - $opener = $this->getTargetToken($testMarker, T_OPEN_PARENTHESIS); - $this->assertTrue(array_key_exists('parenthesis_owner', $tokens[$opener])); - $this->assertSame($function, $tokens[$opener]['parenthesis_owner']); - - $closer = $this->getTargetToken($testMarker, T_CLOSE_PARENTHESIS); - $this->assertTrue(array_key_exists('parenthesis_owner', $tokens[$closer])); - $this->assertSame($function, $tokens[$closer]['parenthesis_owner']); - - }//end testAnonClassNoParenthesesNextOpenClose() - - - /** - * Data provider. - * - * @see testAnonClassNoParentheses() - * @see testAnonClassNoParenthesesNextOpenClose() - * - * @return array> - */ - public static function dataAnonClassNoParentheses() - { - return [ - 'plain' => [ - 'testMarker' => '/* testNoParentheses */', - ], - 'readonly' => [ - 'testMarker' => '/* testReadonlyNoParentheses */', - ], - 'declaration contains comments and extra whitespace' => [ - 'testMarker' => '/* testNoParenthesesAndEmptyTokens */', - ], - ]; - - }//end dataAnonClassNoParentheses() - - - /** - * Test that anonymous class tokens with parenthesis get assigned a parenthesis owner, - * opener and closer; and that the opener/closer get the anonymous class assigned as owner. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * - * @dataProvider dataAnonClassWithParentheses - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testAnonClassWithParentheses($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - $anonClass = $this->getTargetToken($testMarker, T_ANON_CLASS); - $opener = $this->getTargetToken($testMarker, T_OPEN_PARENTHESIS); - $closer = $this->getTargetToken($testMarker, T_CLOSE_PARENTHESIS); - - $this->assertTrue(array_key_exists('parenthesis_owner', $tokens[$anonClass])); - $this->assertTrue(array_key_exists('parenthesis_opener', $tokens[$anonClass])); - $this->assertTrue(array_key_exists('parenthesis_closer', $tokens[$anonClass])); - $this->assertSame($anonClass, $tokens[$anonClass]['parenthesis_owner']); - $this->assertSame($opener, $tokens[$anonClass]['parenthesis_opener']); - $this->assertSame($closer, $tokens[$anonClass]['parenthesis_closer']); - - $this->assertTrue(array_key_exists('parenthesis_owner', $tokens[$opener])); - $this->assertTrue(array_key_exists('parenthesis_opener', $tokens[$opener])); - $this->assertTrue(array_key_exists('parenthesis_closer', $tokens[$opener])); - $this->assertSame($anonClass, $tokens[$opener]['parenthesis_owner']); - $this->assertSame($opener, $tokens[$opener]['parenthesis_opener']); - $this->assertSame($closer, $tokens[$opener]['parenthesis_closer']); - - $this->assertTrue(array_key_exists('parenthesis_owner', $tokens[$closer])); - $this->assertTrue(array_key_exists('parenthesis_opener', $tokens[$closer])); - $this->assertTrue(array_key_exists('parenthesis_closer', $tokens[$closer])); - $this->assertSame($anonClass, $tokens[$closer]['parenthesis_owner']); - $this->assertSame($opener, $tokens[$closer]['parenthesis_opener']); - $this->assertSame($closer, $tokens[$closer]['parenthesis_closer']); - - }//end testAnonClassWithParentheses() - - - /** - * Data provider. - * - * @see testAnonClassWithParentheses() - * - * @return array> - */ - public static function dataAnonClassWithParentheses() - { - return [ - 'plain' => [ - 'testMarker' => '/* testWithParentheses */', - ], - 'readonly' => [ - 'testMarker' => '/* testReadonlyWithParentheses */', - ], - 'declaration contains comments and extra whitespace' => [ - 'testMarker' => '/* testWithParenthesesAndEmptyTokens */', - ], - ]; - - }//end dataAnonClassWithParentheses() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/ArrayKeywordTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/ArrayKeywordTest.inc deleted file mode 100644 index 6d8adfcb..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/ArrayKeywordTest.inc +++ /dev/null @@ -1,58 +0,0 @@ - 10); - -/* testArrayWithComment */ -$var = Array /*comment*/ (1 => 10); - -/* testNestingArray */ -$var = array( - /* testNestedArray */ - array( - 'key' => 'value', - - /* testClosureReturnType */ - 'closure' => function($a) use($global) : Array {}, - ), -); - -/* testFunctionDeclarationParamType */ -function typedParam(array $a) {} - -/* testFunctionDeclarationReturnType */ -function returnType($a) : int|array|null {} - -class Bar { - /* testClassConst */ - const ARRAY = []; - - /* testClassMethod */ - public function array() {} - - /* testOOConstType */ - const array /* testTypedOOConstName */ ARRAY = /* testOOConstDefault */ array(); - - /* testOOPropertyType */ - protected array $property; -} - -class DNFTypes { - /* testOOConstDNFType */ - const (A&B)|array|(C&D) NAME = []; - - /* testOOPropertyDNFType */ - protected (A&B)|ARRAY|null $property; - - /* testFunctionDeclarationParamDNFType */ - public function name(null|array|(A&B) $param) { - /* testClosureDeclarationParamDNFType */ - $cl = function ( array|(A&B) $param) {}; - - /* testArrowDeclarationReturnDNFType */ - $arrow = fn($a): (A&B)|Array => new $a; - } -} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/ArrayKeywordTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/ArrayKeywordTest.php deleted file mode 100644 index e19c2ffb..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/ArrayKeywordTest.php +++ /dev/null @@ -1,200 +0,0 @@ - - * @copyright 2021 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -final class ArrayKeywordTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that the array keyword is correctly tokenized as `T_ARRAY`. - * - * @param string $testMarker The comment prefacing the target token. - * @param string $testContent Optional. The token content to look for. - * - * @dataProvider dataArrayKeyword - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testArrayKeyword($testMarker, $testContent='array') - { - $tokens = $this->phpcsFile->getTokens(); - - $token = $this->getTargetToken($testMarker, [T_ARRAY, T_STRING], $testContent); - $tokenArray = $tokens[$token]; - - $this->assertSame(T_ARRAY, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_ARRAY (code)'); - $this->assertSame('T_ARRAY', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_ARRAY (type)'); - - }//end testArrayKeyword() - - - /** - * Data provider. - * - * @see testArrayKeyword() - * - * @return array> - */ - public static function dataArrayKeyword() - { - return [ - 'empty array' => [ - 'testMarker' => '/* testEmptyArray */', - ], - 'array with space before parenthesis' => [ - 'testMarker' => '/* testArrayWithSpace */', - ], - 'array with comment before parenthesis' => [ - 'testMarker' => '/* testArrayWithComment */', - 'testContent' => 'Array', - ], - 'nested: outer array' => [ - 'testMarker' => '/* testNestingArray */', - ], - 'nested: inner array' => [ - 'testMarker' => '/* testNestedArray */', - ], - 'OO constant default value' => [ - 'testMarker' => '/* testOOConstDefault */', - ], - ]; - - }//end dataArrayKeyword() - - - /** - * Test that the array keyword when used in a type declaration is correctly tokenized as `T_STRING`. - * - * @param string $testMarker The comment prefacing the target token. - * @param string $testContent Optional. The token content to look for. - * - * @dataProvider dataArrayType - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testArrayType($testMarker, $testContent='array') - { - $tokens = $this->phpcsFile->getTokens(); - - $token = $this->getTargetToken($testMarker, [T_ARRAY, T_STRING], $testContent); - $tokenArray = $tokens[$token]; - - $this->assertSame(T_STRING, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (code)'); - $this->assertSame('T_STRING', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (type)'); - - }//end testArrayType() - - - /** - * Data provider. - * - * @see testArrayType() - * - * @return array> - */ - public static function dataArrayType() - { - return [ - 'closure return type' => [ - 'testMarker' => '/* testClosureReturnType */', - 'testContent' => 'Array', - ], - 'function param type' => [ - 'testMarker' => '/* testFunctionDeclarationParamType */', - ], - 'function union return type' => [ - 'testMarker' => '/* testFunctionDeclarationReturnType */', - ], - 'OO constant type' => [ - 'testMarker' => '/* testOOConstType */', - ], - 'OO property type' => [ - 'testMarker' => '/* testOOPropertyType */', - ], - - 'OO constant DNF type' => [ - 'testMarker' => '/* testOOConstDNFType */', - ], - 'OO property DNF type' => [ - 'testMarker' => '/* testOOPropertyDNFType */', - 'testContent' => 'ARRAY', - ], - 'function param DNF type' => [ - 'testMarker' => '/* testFunctionDeclarationParamDNFType */', - ], - 'closure param DNF type' => [ - 'testMarker' => '/* testClosureDeclarationParamDNFType */', - ], - 'arrow return DNF type' => [ - 'testMarker' => '/* testArrowDeclarationReturnDNFType */', - 'testContent' => 'Array', - ], - ]; - - }//end dataArrayType() - - - /** - * Verify that the retokenization of `T_ARRAY` tokens to `T_STRING` is handled correctly - * for tokens with the contents 'array' which aren't in actual fact the array keyword. - * - * @param string $testMarker The comment prefacing the target token. - * @param string $testContent The token content to look for. - * - * @dataProvider dataNotArrayKeyword - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testNotArrayKeyword($testMarker, $testContent='array') - { - $tokens = $this->phpcsFile->getTokens(); - - $token = $this->getTargetToken($testMarker, [T_ARRAY, T_STRING], $testContent); - $tokenArray = $tokens[$token]; - - $this->assertSame(T_STRING, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (code)'); - $this->assertSame('T_STRING', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (type)'); - - }//end testNotArrayKeyword() - - - /** - * Data provider. - * - * @see testNotArrayKeyword() - * - * @return array> - */ - public static function dataNotArrayKeyword() - { - return [ - 'class-constant-name' => [ - 'testMarker' => '/* testClassConst */', - 'testContent' => 'ARRAY', - ], - 'class-method-name' => [ - 'testMarker' => '/* testClassMethod */', - ], - 'class-constant-name-after-type' => [ - 'testMarker' => '/* testTypedOOConstName */', - 'testContent' => 'ARRAY', - ], - ]; - - }//end dataNotArrayKeyword() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/AttributesTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/AttributesTest.inc deleted file mode 100644 index e539adf8..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/AttributesTest.inc +++ /dev/null @@ -1,90 +0,0 @@ - 'foobar'])] -function attribute_with_params_on_function_test() {} - -/* testAttributeWithShortClosureParameter */ -#[AttributeWithParams(static fn ($value) => ! $value)] -function attribute_with_short_closure_param_test() {} - -/* testTwoAttributeOnTheSameLine */ -#[CustomAttribute] #[AttributeWithParams('foo')] -function two_attribute_on_same_line_test() {} - -/* testAttributeAndCommentOnTheSameLine */ -#[CustomAttribute] // This is a comment -function attribute_and_line_comment_on_same_line_test() {} - -/* testAttributeGrouping */ -#[CustomAttribute, AttributeWithParams('foo'), AttributeWithParams('foo', bar: ['bar' => 'foobar'])] -function attribute_grouping_test() {} - -/* testAttributeMultiline */ -#[ - CustomAttribute, - AttributeWithParams('foo'), - AttributeWithParams('foo', bar: ['bar' => 'foobar']) -] -function attribute_multiline_test() {} - -/* testAttributeMultilineWithComment */ -#[ - CustomAttribute, // comment - AttributeWithParams(/* another comment */ 'foo'), - AttributeWithParams('foo', bar: ['bar' => 'foobar']) -] -function attribute_multiline_with_comment_test() {} - -/* testSingleAttributeOnParameter */ -function single_attribute_on_parameter_test(#[ParamAttribute] int $param) {} - -/* testMultipleAttributesOnParameter */ -function multiple_attributes_on_parameter_test(#[ParamAttribute, AttributeWithParams(/* another comment */ 'foo')] int $param) {} - -/* testFqcnAttribute */ -#[Boo\QualifiedName, \Foo\FullyQualifiedName('foo')] -function fqcn_attrebute_test() {} - -/* testNestedAttributes */ -#[Boo\QualifiedName(fn (#[AttributeOne('boo')] $value) => (string) $value)] -function nested_attributes_test() {} - -/* testMultilineAttributesOnParameter */ -function multiline_attributes_on_parameter_test(#[ - AttributeWithParams( - 'foo' - ) - ] int $param) {} - -/* testAttributeContainingTextLookingLikeCloseTag */ -#[DeprecationReason('reason: ')] -function attribute_containing_text_looking_like_close_tag() {} - -/* testAttributeContainingMultilineTextLookingLikeCloseTag */ -#[DeprecationReason( - 'reason: ' -)] -function attribute_containing_mulitline_text_looking_like_close_tag() {} - -/* testInvalidAttribute */ -#[ThisIsNotAnAttribute -function invalid_attribute_test() {} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/AttributesTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/AttributesTest.php deleted file mode 100644 index 43952b62..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/AttributesTest.php +++ /dev/null @@ -1,704 +0,0 @@ - - * @copyright 2019 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -final class AttributesTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that attributes are parsed correctly. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * @param int $length The number of tokens between opener and closer. - * @param array $tokenCodes The codes of tokens inside the attributes. - * - * @dataProvider dataAttribute - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * @covers PHP_CodeSniffer\Tokenizers\PHP::findCloser - * @covers PHP_CodeSniffer\Tokenizers\PHP::parsePhpAttribute - * - * @return void - */ - public function testAttribute($testMarker, $length, $tokenCodes) - { - $tokens = $this->phpcsFile->getTokens(); - - $attribute = $this->getTargetToken($testMarker, T_ATTRIBUTE); - $this->assertArrayHasKey('attribute_closer', $tokens[$attribute]); - - $closer = $tokens[$attribute]['attribute_closer']; - $this->assertSame(($attribute + $length), $closer); - - $this->assertSame(T_ATTRIBUTE_END, $tokens[$closer]['code']); - - $this->assertSame($tokens[$attribute]['attribute_opener'], $tokens[$closer]['attribute_opener']); - $this->assertSame($tokens[$attribute]['attribute_closer'], $tokens[$closer]['attribute_closer']); - - $map = array_map( - function ($token) use ($attribute, $length) { - $this->assertArrayHasKey('attribute_closer', $token); - $this->assertSame(($attribute + $length), $token['attribute_closer']); - - return $token['code']; - }, - array_slice($tokens, ($attribute + 1), ($length - 1)) - ); - - $this->assertSame($tokenCodes, $map); - - }//end testAttribute() - - - /** - * Data provider. - * - * @see testAttribute() - * - * @return array>> - */ - public static function dataAttribute() - { - return [ - 'class attribute' => [ - 'testMarker' => '/* testAttribute */', - 'length' => 2, - 'tokenCodes' => [ - T_STRING - ], - ], - 'class attribute with param' => [ - 'testMarker' => '/* testAttributeWithParams */', - 'length' => 7, - 'tokenCodes' => [ - T_STRING, - T_OPEN_PARENTHESIS, - T_STRING, - T_DOUBLE_COLON, - T_STRING, - T_CLOSE_PARENTHESIS, - ], - ], - 'class attribute with named param' => [ - 'testMarker' => '/* testAttributeWithNamedParam */', - 'length' => 10, - 'tokenCodes' => [ - T_STRING, - T_OPEN_PARENTHESIS, - T_PARAM_NAME, - T_COLON, - T_WHITESPACE, - T_STRING, - T_DOUBLE_COLON, - T_STRING, - T_CLOSE_PARENTHESIS, - ], - ], - 'function attribute' => [ - 'testMarker' => '/* testAttributeOnFunction */', - 'length' => 2, - 'tokenCodes' => [ - T_STRING - ], - ], - 'function attribute with params' => [ - 'testMarker' => '/* testAttributeOnFunctionWithParams */', - 'length' => 17, - 'tokenCodes' => [ - T_STRING, - T_OPEN_PARENTHESIS, - T_CONSTANT_ENCAPSED_STRING, - T_COMMA, - T_WHITESPACE, - T_PARAM_NAME, - T_COLON, - T_WHITESPACE, - T_OPEN_SHORT_ARRAY, - T_CONSTANT_ENCAPSED_STRING, - T_WHITESPACE, - T_DOUBLE_ARROW, - T_WHITESPACE, - T_CONSTANT_ENCAPSED_STRING, - T_CLOSE_SHORT_ARRAY, - T_CLOSE_PARENTHESIS, - ], - ], - 'function attribute with arrow function as param' => [ - 'testMarker' => '/* testAttributeWithShortClosureParameter */', - 'length' => 17, - 'tokenCodes' => [ - T_STRING, - T_OPEN_PARENTHESIS, - T_STATIC, - T_WHITESPACE, - T_FN, - T_WHITESPACE, - T_OPEN_PARENTHESIS, - T_VARIABLE, - T_CLOSE_PARENTHESIS, - T_WHITESPACE, - T_FN_ARROW, - T_WHITESPACE, - T_BOOLEAN_NOT, - T_WHITESPACE, - T_VARIABLE, - T_CLOSE_PARENTHESIS, - ], - ], - 'function attribute; multiple comma separated classes' => [ - 'testMarker' => '/* testAttributeGrouping */', - 'length' => 26, - 'tokenCodes' => [ - T_STRING, - T_COMMA, - T_WHITESPACE, - T_STRING, - T_OPEN_PARENTHESIS, - T_CONSTANT_ENCAPSED_STRING, - T_CLOSE_PARENTHESIS, - T_COMMA, - T_WHITESPACE, - T_STRING, - T_OPEN_PARENTHESIS, - T_CONSTANT_ENCAPSED_STRING, - T_COMMA, - T_WHITESPACE, - T_PARAM_NAME, - T_COLON, - T_WHITESPACE, - T_OPEN_SHORT_ARRAY, - T_CONSTANT_ENCAPSED_STRING, - T_WHITESPACE, - T_DOUBLE_ARROW, - T_WHITESPACE, - T_CONSTANT_ENCAPSED_STRING, - T_CLOSE_SHORT_ARRAY, - T_CLOSE_PARENTHESIS, - ], - ], - 'function attribute; multiple comma separated classes, one per line' => [ - 'testMarker' => '/* testAttributeMultiline */', - 'length' => 31, - 'tokenCodes' => [ - T_WHITESPACE, - T_WHITESPACE, - T_STRING, - T_COMMA, - T_WHITESPACE, - T_WHITESPACE, - T_STRING, - T_OPEN_PARENTHESIS, - T_CONSTANT_ENCAPSED_STRING, - T_CLOSE_PARENTHESIS, - T_COMMA, - T_WHITESPACE, - T_WHITESPACE, - T_STRING, - T_OPEN_PARENTHESIS, - T_CONSTANT_ENCAPSED_STRING, - T_COMMA, - T_WHITESPACE, - T_PARAM_NAME, - T_COLON, - T_WHITESPACE, - T_OPEN_SHORT_ARRAY, - T_CONSTANT_ENCAPSED_STRING, - T_WHITESPACE, - T_DOUBLE_ARROW, - T_WHITESPACE, - T_CONSTANT_ENCAPSED_STRING, - T_CLOSE_SHORT_ARRAY, - T_CLOSE_PARENTHESIS, - T_WHITESPACE, - ], - ], - 'function attribute; multiple comma separated classes, one per line, with comments' => [ - 'testMarker' => '/* testAttributeMultilineWithComment */', - 'length' => 34, - 'tokenCodes' => [ - T_WHITESPACE, - T_WHITESPACE, - T_STRING, - T_COMMA, - T_WHITESPACE, - T_COMMENT, - T_WHITESPACE, - T_STRING, - T_OPEN_PARENTHESIS, - T_COMMENT, - T_WHITESPACE, - T_CONSTANT_ENCAPSED_STRING, - T_CLOSE_PARENTHESIS, - T_COMMA, - T_WHITESPACE, - T_WHITESPACE, - T_STRING, - T_OPEN_PARENTHESIS, - T_CONSTANT_ENCAPSED_STRING, - T_COMMA, - T_WHITESPACE, - T_PARAM_NAME, - T_COLON, - T_WHITESPACE, - T_OPEN_SHORT_ARRAY, - T_CONSTANT_ENCAPSED_STRING, - T_WHITESPACE, - T_DOUBLE_ARROW, - T_WHITESPACE, - T_CONSTANT_ENCAPSED_STRING, - T_CLOSE_SHORT_ARRAY, - T_CLOSE_PARENTHESIS, - T_WHITESPACE, - ], - ], - 'function attribute; using partially qualified and fully qualified class names' => [ - 'testMarker' => '/* testFqcnAttribute */', - 'length' => 13, - 'tokenCodes' => [ - T_STRING, - T_NS_SEPARATOR, - T_STRING, - T_COMMA, - T_WHITESPACE, - T_NS_SEPARATOR, - T_STRING, - T_NS_SEPARATOR, - T_STRING, - T_OPEN_PARENTHESIS, - T_CONSTANT_ENCAPSED_STRING, - T_CLOSE_PARENTHESIS, - ], - ], - ]; - - }//end dataAttribute() - - - /** - * Test that multiple attributes on the same line are parsed correctly. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * @covers PHP_CodeSniffer\Tokenizers\PHP::findCloser - * @covers PHP_CodeSniffer\Tokenizers\PHP::parsePhpAttribute - * - * @return void - */ - public function testTwoAttributesOnTheSameLine() - { - $tokens = $this->phpcsFile->getTokens(); - - $attribute = $this->getTargetToken('/* testTwoAttributeOnTheSameLine */', T_ATTRIBUTE); - $this->assertArrayHasKey('attribute_closer', $tokens[$attribute]); - - $closer = $tokens[$attribute]['attribute_closer']; - $this->assertSame(T_WHITESPACE, $tokens[($closer + 1)]['code']); - $this->assertSame(T_ATTRIBUTE, $tokens[($closer + 2)]['code']); - $this->assertArrayHasKey('attribute_closer', $tokens[($closer + 2)]); - - }//end testTwoAttributesOnTheSameLine() - - - /** - * Test that attribute followed by a line comment is parsed correctly. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * @covers PHP_CodeSniffer\Tokenizers\PHP::findCloser - * @covers PHP_CodeSniffer\Tokenizers\PHP::parsePhpAttribute - * - * @return void - */ - public function testAttributeAndLineComment() - { - $tokens = $this->phpcsFile->getTokens(); - - $attribute = $this->getTargetToken('/* testAttributeAndCommentOnTheSameLine */', T_ATTRIBUTE); - $this->assertArrayHasKey('attribute_closer', $tokens[$attribute]); - - $closer = $tokens[$attribute]['attribute_closer']; - $this->assertSame(T_WHITESPACE, $tokens[($closer + 1)]['code']); - $this->assertSame(T_COMMENT, $tokens[($closer + 2)]['code']); - - }//end testAttributeAndLineComment() - - - /** - * Test that attributes on function declaration parameters are parsed correctly. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * @param int $position The token position (starting from T_FUNCTION) of T_ATTRIBUTE token. - * @param int $length The number of tokens between opener and closer. - * @param array $tokenCodes The codes of tokens inside the attributes. - * - * @dataProvider dataAttributeOnParameters - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * @covers PHP_CodeSniffer\Tokenizers\PHP::findCloser - * @covers PHP_CodeSniffer\Tokenizers\PHP::parsePhpAttribute - * - * @return void - */ - public function testAttributeOnParameters($testMarker, $position, $length, array $tokenCodes) - { - $tokens = $this->phpcsFile->getTokens(); - - $function = $this->getTargetToken($testMarker, T_FUNCTION); - $attribute = ($function + $position); - - $this->assertSame(T_ATTRIBUTE, $tokens[$attribute]['code']); - $this->assertArrayHasKey('attribute_closer', $tokens[$attribute]); - - $this->assertSame(($attribute + $length), $tokens[$attribute]['attribute_closer']); - - $closer = $tokens[$attribute]['attribute_closer']; - $this->assertSame(T_WHITESPACE, $tokens[($closer + 1)]['code']); - $this->assertSame(T_STRING, $tokens[($closer + 2)]['code']); - $this->assertSame('int', $tokens[($closer + 2)]['content']); - - $this->assertSame(T_VARIABLE, $tokens[($closer + 4)]['code']); - $this->assertSame('$param', $tokens[($closer + 4)]['content']); - - $map = array_map( - function ($token) use ($attribute, $length) { - $this->assertArrayHasKey('attribute_closer', $token); - $this->assertSame(($attribute + $length), $token['attribute_closer']); - - return $token['code']; - }, - array_slice($tokens, ($attribute + 1), ($length - 1)) - ); - - $this->assertSame($tokenCodes, $map); - - }//end testAttributeOnParameters() - - - /** - * Data provider. - * - * @see testAttributeOnParameters() - * - * @return array>> - */ - public static function dataAttributeOnParameters() - { - return [ - 'parameter attribute; single, inline' => [ - 'testMarker' => '/* testSingleAttributeOnParameter */', - 'position' => 4, - 'length' => 2, - 'tokenCodes' => [ - T_STRING - ], - ], - 'parameter attribute; multiple comma separated, inline' => [ - 'testMarker' => '/* testMultipleAttributesOnParameter */', - 'position' => 4, - 'length' => 10, - 'tokenCodes' => [ - T_STRING, - T_COMMA, - T_WHITESPACE, - T_STRING, - T_OPEN_PARENTHESIS, - T_COMMENT, - T_WHITESPACE, - T_CONSTANT_ENCAPSED_STRING, - T_CLOSE_PARENTHESIS, - ], - ], - 'parameter attribute; single, multiline' => [ - 'testMarker' => '/* testMultilineAttributesOnParameter */', - 'position' => 4, - 'length' => 13, - 'tokenCodes' => [ - T_WHITESPACE, - T_WHITESPACE, - T_STRING, - T_OPEN_PARENTHESIS, - T_WHITESPACE, - T_WHITESPACE, - T_CONSTANT_ENCAPSED_STRING, - T_WHITESPACE, - T_WHITESPACE, - T_CLOSE_PARENTHESIS, - T_WHITESPACE, - T_WHITESPACE, - ], - ], - ]; - - }//end dataAttributeOnParameters() - - - /** - * Test that an attribute containing text which looks like a PHP close tag is tokenized correctly. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * @param int $length The number of tokens between opener and closer. - * @param array> $expectedTokensAttribute The codes of tokens inside the attributes. - * @param array $expectedTokensAfter The codes of tokens after the attributes. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::parsePhpAttribute - * - * @dataProvider dataAttributeOnTextLookingLikeCloseTag - * - * @return void - */ - public function testAttributeContainingTextLookingLikeCloseTag($testMarker, $length, array $expectedTokensAttribute, array $expectedTokensAfter) - { - $tokens = $this->phpcsFile->getTokens(); - - $attribute = $this->getTargetToken($testMarker, T_ATTRIBUTE); - - $this->assertSame('T_ATTRIBUTE', $tokens[$attribute]['type']); - $this->assertArrayHasKey('attribute_closer', $tokens[$attribute]); - - $closer = $tokens[$attribute]['attribute_closer']; - $this->assertSame(($attribute + $length), $closer); - $this->assertSame(T_ATTRIBUTE_END, $tokens[$closer]['code']); - $this->assertSame('T_ATTRIBUTE_END', $tokens[$closer]['type']); - - $this->assertSame($tokens[$attribute]['attribute_opener'], $tokens[$closer]['attribute_opener']); - $this->assertSame($tokens[$attribute]['attribute_closer'], $tokens[$closer]['attribute_closer']); - - $i = ($attribute + 1); - foreach ($expectedTokensAttribute as $item) { - list($expectedType, $expectedContents) = $item; - $this->assertSame($expectedType, $tokens[$i]['type']); - $this->assertSame($expectedContents, $tokens[$i]['content']); - $this->assertArrayHasKey('attribute_opener', $tokens[$i]); - $this->assertArrayHasKey('attribute_closer', $tokens[$i]); - ++$i; - } - - $i = ($closer + 1); - foreach ($expectedTokensAfter as $expectedCode) { - $this->assertSame($expectedCode, $tokens[$i]['code']); - ++$i; - } - - }//end testAttributeContainingTextLookingLikeCloseTag() - - - /** - * Data provider. - * - * @see dataAttributeOnTextLookingLikeCloseTag() - * - * @return array>|array>> - */ - public static function dataAttributeOnTextLookingLikeCloseTag() - { - return [ - 'function attribute; string param with "?>"' => [ - 'testMarker' => '/* testAttributeContainingTextLookingLikeCloseTag */', - 'length' => 5, - 'expectedTokensAttribute' => [ - [ - 'T_STRING', - 'DeprecationReason', - ], - [ - 'T_OPEN_PARENTHESIS', - '(', - ], - [ - 'T_CONSTANT_ENCAPSED_STRING', - "'reason: '", - ], - [ - 'T_CLOSE_PARENTHESIS', - ')', - ], - [ - 'T_ATTRIBUTE_END', - ']', - ], - ], - 'expectedTokensAfter' => [ - T_WHITESPACE, - T_FUNCTION, - T_WHITESPACE, - T_STRING, - T_OPEN_PARENTHESIS, - T_CLOSE_PARENTHESIS, - T_WHITESPACE, - T_OPEN_CURLY_BRACKET, - T_CLOSE_CURLY_BRACKET, - ], - ], - 'function attribute; string param with "?>"; multiline' => [ - 'testMarker' => '/* testAttributeContainingMultilineTextLookingLikeCloseTag */', - 'length' => 8, - 'expectedTokensAttribute' => [ - [ - 'T_STRING', - 'DeprecationReason', - ], - [ - 'T_OPEN_PARENTHESIS', - '(', - ], - [ - 'T_WHITESPACE', - "\n", - ], - [ - 'T_WHITESPACE', - " ", - ], - [ - 'T_CONSTANT_ENCAPSED_STRING', - "'reason: '", - ], - [ - 'T_WHITESPACE', - "\n", - ], - [ - 'T_CLOSE_PARENTHESIS', - ')', - ], - [ - 'T_ATTRIBUTE_END', - ']', - ], - ], - 'expectedTokensAfter' => [ - T_WHITESPACE, - T_FUNCTION, - T_WHITESPACE, - T_STRING, - T_OPEN_PARENTHESIS, - T_CLOSE_PARENTHESIS, - T_WHITESPACE, - T_OPEN_CURLY_BRACKET, - T_CLOSE_CURLY_BRACKET, - ], - ], - ]; - - }//end dataAttributeOnTextLookingLikeCloseTag() - - - /** - * Test that invalid attribute (or comment starting with #[ and without ]) are parsed correctly. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * @covers PHP_CodeSniffer\Tokenizers\PHP::findCloser - * @covers PHP_CodeSniffer\Tokenizers\PHP::parsePhpAttribute - * - * @return void - */ - public function testInvalidAttribute() - { - $tokens = $this->phpcsFile->getTokens(); - - $attribute = $this->getTargetToken('/* testInvalidAttribute */', T_ATTRIBUTE); - - $this->assertArrayHasKey('attribute_closer', $tokens[$attribute]); - $this->assertNull($tokens[$attribute]['attribute_closer']); - - }//end testInvalidAttribute() - - - /** - * Test that nested attributes are parsed correctly. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * @covers PHP_CodeSniffer\Tokenizers\PHP::findCloser - * @covers PHP_CodeSniffer\Tokenizers\PHP::parsePhpAttribute - * @covers PHP_CodeSniffer\Tokenizers\PHP::createAttributesNestingMap - * - * @return void - */ - public function testNestedAttributes() - { - $tokens = $this->phpcsFile->getTokens(); - $tokenCodes = [ - T_STRING, - T_NS_SEPARATOR, - T_STRING, - T_OPEN_PARENTHESIS, - T_FN, - T_WHITESPACE, - T_OPEN_PARENTHESIS, - T_ATTRIBUTE, - T_STRING, - T_OPEN_PARENTHESIS, - T_CONSTANT_ENCAPSED_STRING, - T_CLOSE_PARENTHESIS, - T_ATTRIBUTE_END, - T_WHITESPACE, - T_VARIABLE, - T_CLOSE_PARENTHESIS, - T_WHITESPACE, - T_FN_ARROW, - T_WHITESPACE, - T_STRING_CAST, - T_WHITESPACE, - T_VARIABLE, - T_CLOSE_PARENTHESIS, - ]; - - $attribute = $this->getTargetToken('/* testNestedAttributes */', T_ATTRIBUTE); - $this->assertArrayHasKey('attribute_closer', $tokens[$attribute]); - - $closer = $tokens[$attribute]['attribute_closer']; - $this->assertSame(($attribute + 24), $closer); - - $this->assertSame(T_ATTRIBUTE_END, $tokens[$closer]['code']); - - $this->assertSame($tokens[$attribute]['attribute_opener'], $tokens[$closer]['attribute_opener']); - $this->assertSame($tokens[$attribute]['attribute_closer'], $tokens[$closer]['attribute_closer']); - - $this->assertArrayNotHasKey('nested_attributes', $tokens[$attribute]); - $this->assertArrayHasKey('nested_attributes', $tokens[($attribute + 8)]); - $this->assertSame([$attribute => ($attribute + 24)], $tokens[($attribute + 8)]['nested_attributes']); - - $test = function (array $tokens, $length, $nestedMap) use ($attribute) { - foreach ($tokens as $token) { - $this->assertArrayHasKey('attribute_closer', $token); - $this->assertSame(($attribute + $length), $token['attribute_closer']); - $this->assertSame($nestedMap, $token['nested_attributes']); - } - }; - - $test(array_slice($tokens, ($attribute + 1), 7), 24, [$attribute => $attribute + 24]); - $test(array_slice($tokens, ($attribute + 8), 1), 8 + 5, [$attribute => $attribute + 24]); - - // Length here is 8 (nested attribute offset) + 5 (real length). - $test( - array_slice($tokens, ($attribute + 9), 4), - 8 + 5, - [ - $attribute => $attribute + 24, - $attribute + 8 => $attribute + 13, - ] - ); - - $test(array_slice($tokens, ($attribute + 13), 1), 8 + 5, [$attribute => $attribute + 24]); - $test(array_slice($tokens, ($attribute + 14), 10), 24, [$attribute => $attribute + 24]); - - $map = array_map( - static function ($token) { - return $token['code']; - }, - array_slice($tokens, ($attribute + 1), 23) - ); - - $this->assertSame($tokenCodes, $map); - - }//end testNestedAttributes() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillEnumTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillEnumTest.inc deleted file mode 100644 index 16624ecc..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillEnumTest.inc +++ /dev/null @@ -1,91 +0,0 @@ -enum = 'foo'; - } -} - -/* testEnumUsedAsFunctionName */ -function enum() -{ -} - -/* testDeclarationContainingComment */ -enum /* comment */ Name -{ - case SOME_CASE; -} - -/* testEnumUsedAsNamespaceName */ -namespace Enum; -/* testEnumUsedAsPartOfNamespaceName */ -namespace My\Enum\Collection; -/* testEnumUsedInObjectInitialization */ -$obj = new Enum; -/* testEnumAsFunctionCall */ -$var = enum($a, $b); -/* testEnumAsFunctionCallWithNamespace */ -var = namespace\enum(); -/* testClassConstantFetchWithEnumAsClassName */ -echo Enum::CONSTANT; -/* testClassConstantFetchWithEnumAsConstantName */ -echo ClassName::ENUM; - -/* testParseErrorMissingName */ -enum { - case SOME_CASE; -} - -/* testParseErrorLiveCoding */ -// This must be the last test in the file. -enum diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillEnumTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillEnumTest.php deleted file mode 100644 index 9b313ca6..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillEnumTest.php +++ /dev/null @@ -1,226 +0,0 @@ - - * @copyright 2021 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -final class BackfillEnumTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that the "enum" keyword is tokenized as such. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * @param string $testContent The token content to look for. - * @param int $openerOffset Offset to find expected scope opener. - * @param int $closerOffset Offset to find expected scope closer. - * - * @dataProvider dataEnums - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testEnums($testMarker, $testContent, $openerOffset, $closerOffset) - { - $tokens = $this->phpcsFile->getTokens(); - $enum = $this->getTargetToken($testMarker, [T_ENUM, T_STRING], $testContent); - $tokenArray = $tokens[$enum]; - - $this->assertSame(T_ENUM, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_ENUM (code)'); - $this->assertSame('T_ENUM', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_ENUM (type)'); - - $this->assertArrayHasKey('scope_condition', $tokenArray); - $this->assertArrayHasKey('scope_opener', $tokenArray); - $this->assertArrayHasKey('scope_closer', $tokenArray); - - $this->assertSame($enum, $tokenArray['scope_condition']); - - $scopeOpener = $tokenArray['scope_opener']; - $scopeCloser = $tokenArray['scope_closer']; - - $expectedScopeOpener = ($enum + $openerOffset); - $expectedScopeCloser = ($enum + $closerOffset); - - $this->assertSame($expectedScopeOpener, $scopeOpener); - $this->assertArrayHasKey('scope_condition', $tokens[$scopeOpener]); - $this->assertArrayHasKey('scope_opener', $tokens[$scopeOpener]); - $this->assertArrayHasKey('scope_closer', $tokens[$scopeOpener]); - $this->assertSame($enum, $tokens[$scopeOpener]['scope_condition']); - $this->assertSame($scopeOpener, $tokens[$scopeOpener]['scope_opener']); - $this->assertSame($scopeCloser, $tokens[$scopeOpener]['scope_closer']); - - $this->assertSame($expectedScopeCloser, $scopeCloser); - $this->assertArrayHasKey('scope_condition', $tokens[$scopeCloser]); - $this->assertArrayHasKey('scope_opener', $tokens[$scopeCloser]); - $this->assertArrayHasKey('scope_closer', $tokens[$scopeCloser]); - $this->assertSame($enum, $tokens[$scopeCloser]['scope_condition']); - $this->assertSame($scopeOpener, $tokens[$scopeCloser]['scope_opener']); - $this->assertSame($scopeCloser, $tokens[$scopeCloser]['scope_closer']); - - }//end testEnums() - - - /** - * Data provider. - * - * @see testEnums() - * - * @return array> - */ - public static function dataEnums() - { - return [ - 'enum - pure' => [ - 'testMarker' => '/* testPureEnum */', - 'testContent' => 'enum', - 'openerOffset' => 4, - 'closerOffset' => 12, - ], - 'enum - backed int' => [ - 'testMarker' => '/* testBackedIntEnum */', - 'testContent' => 'enum', - 'openerOffset' => 7, - 'closerOffset' => 29, - ], - 'enum - backed string' => [ - 'testMarker' => '/* testBackedStringEnum */', - 'testContent' => 'enum', - 'openerOffset' => 8, - 'closerOffset' => 30, - ], - 'enum - backed int + implements' => [ - 'testMarker' => '/* testComplexEnum */', - 'testContent' => 'enum', - 'openerOffset' => 11, - 'closerOffset' => 72, - ], - 'enum keyword when "enum" is the name for the construct (yes, this is allowed)' => [ - 'testMarker' => '/* testEnumWithEnumAsClassName */', - 'testContent' => 'enum', - 'openerOffset' => 6, - 'closerOffset' => 7, - ], - 'enum - keyword is case insensitive' => [ - 'testMarker' => '/* testEnumIsCaseInsensitive */', - 'testContent' => 'EnUm', - 'openerOffset' => 4, - 'closerOffset' => 5, - ], - 'enum - declaration containing comment' => [ - 'testMarker' => '/* testDeclarationContainingComment */', - 'testContent' => 'enum', - 'openerOffset' => 6, - 'closerOffset' => 14, - ], - ]; - - }//end dataEnums() - - - /** - * Test that "enum" when not used as the keyword is still tokenized as `T_STRING`. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * @param string $testContent The token content to look for. - * - * @dataProvider dataNotEnums - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testNotEnums($testMarker, $testContent) - { - $tokens = $this->phpcsFile->getTokens(); - $target = $this->getTargetToken($testMarker, [T_ENUM, T_STRING], $testContent); - $tokenArray = $tokens[$target]; - - $this->assertSame(T_STRING, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (code)'); - $this->assertSame('T_STRING', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (type)'); - - }//end testNotEnums() - - - /** - * Data provider. - * - * @see testNotEnums() - * - * @return array> - */ - public static function dataNotEnums() - { - return [ - 'not enum - construct named enum' => [ - 'testMarker' => '/* testEnumAsClassNameAfterEnumKeyword */', - 'testContent' => 'Enum', - ], - 'not enum - class named enum' => [ - 'testMarker' => '/* testEnumUsedAsClassName */', - 'testContent' => 'Enum', - ], - 'not enum - class constant named enum' => [ - 'testMarker' => '/* testEnumUsedAsClassConstantName */', - 'testContent' => 'ENUM', - ], - 'not enum - method named enum' => [ - 'testMarker' => '/* testEnumUsedAsMethodName */', - 'testContent' => 'enum', - ], - 'not enum - class property named enum' => [ - 'testMarker' => '/* testEnumUsedAsPropertyName */', - 'testContent' => 'enum', - ], - 'not enum - global function named enum' => [ - 'testMarker' => '/* testEnumUsedAsFunctionName */', - 'testContent' => 'enum', - ], - 'not enum - namespace named enum' => [ - 'testMarker' => '/* testEnumUsedAsNamespaceName */', - 'testContent' => 'Enum', - ], - 'not enum - part of namespace named enum' => [ - 'testMarker' => '/* testEnumUsedAsPartOfNamespaceName */', - 'testContent' => 'Enum', - ], - 'not enum - class instantiation for class enum' => [ - 'testMarker' => '/* testEnumUsedInObjectInitialization */', - 'testContent' => 'Enum', - ], - 'not enum - function call' => [ - 'testMarker' => '/* testEnumAsFunctionCall */', - 'testContent' => 'enum', - ], - 'not enum - namespace relative function call' => [ - 'testMarker' => '/* testEnumAsFunctionCallWithNamespace */', - 'testContent' => 'enum', - ], - 'not enum - class constant fetch with enum as class name' => [ - 'testMarker' => '/* testClassConstantFetchWithEnumAsClassName */', - 'testContent' => 'Enum', - ], - 'not enum - class constant fetch with enum as constant name' => [ - 'testMarker' => '/* testClassConstantFetchWithEnumAsConstantName */', - 'testContent' => 'ENUM', - ], - 'parse error, not enum - enum declaration without name' => [ - 'testMarker' => '/* testParseErrorMissingName */', - 'testContent' => 'enum', - ], - 'parse error, not enum - enum declaration with curlies' => [ - 'testMarker' => '/* testParseErrorLiveCoding */', - 'testContent' => 'enum', - ], - ]; - - }//end dataNotEnums() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillExplicitOctalNotationTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillExplicitOctalNotationTest.inc deleted file mode 100644 index eb907ed3..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillExplicitOctalNotationTest.inc +++ /dev/null @@ -1,31 +0,0 @@ - - * @copyright 2019 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -final class BackfillExplicitOctalNotationTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that explicitly-defined octal values are tokenized as a single number and not as a number and a string. - * - * @param string $marker The comment which prefaces the target token in the test file. - * @param string $value The expected content of the token. - * @param int|string $nextToken The expected next token. - * @param string $nextContent The expected content of the next token. - * - * @dataProvider dataExplicitOctalNotation - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testExplicitOctalNotation($marker, $value, $nextToken, $nextContent) - { - $tokens = $this->phpcsFile->getTokens(); - - $number = $this->getTargetToken($marker, [T_LNUMBER]); - - $this->assertSame($value, $tokens[$number]['content'], 'Content of integer token does not match expectation'); - - $this->assertSame($nextToken, $tokens[($number + 1)]['code'], 'Next token is not the expected type, but '.$tokens[($number + 1)]['type']); - $this->assertSame($nextContent, $tokens[($number + 1)]['content'], 'Next token did not have the expected contents'); - - }//end testExplicitOctalNotation() - - - /** - * Data provider. - * - * @see testExplicitOctalNotation() - * - * @return array> - */ - public static function dataExplicitOctalNotation() - { - return [ - 'Explicit octal' => [ - 'marker' => '/* testExplicitOctal */', - 'value' => '0o137041', - 'nextToken' => T_SEMICOLON, - 'nextContent' => ';', - ], - 'Explicit octal - capitalized O' => [ - 'marker' => '/* testExplicitOctalCapitalised */', - 'value' => '0O137041', - 'nextToken' => T_SEMICOLON, - 'nextContent' => ';', - ], - 'Explicit octal - with numeric literal separator' => [ - 'marker' => '/* testExplicitOctalWithNumericSeparator */', - 'value' => '0o137_041', - 'nextToken' => T_SEMICOLON, - 'nextContent' => ';', - ], - 'Invalid explicit octal - numeric literal separator directly after "0o"' => [ - 'marker' => '/* testInvalid1 */', - 'value' => '0', - 'nextToken' => T_STRING, - 'nextContent' => 'o_137', - ], - 'Invalid explicit octal - numeric literal separator directly after "0O" (capitalized O)' => [ - 'marker' => '/* testInvalid2 */', - 'value' => '0', - 'nextToken' => T_STRING, - 'nextContent' => 'O_41', - ], - 'Invalid explicit octal - number out of octal range' => [ - 'marker' => '/* testInvalid3 */', - 'value' => '0', - 'nextToken' => T_STRING, - 'nextContent' => 'o91', - ], - 'Invalid explicit octal - part of the number out of octal range' => [ - 'marker' => '/* testInvalid4 */', - 'value' => '0O2', - 'nextToken' => T_LNUMBER, - 'nextContent' => '82', - ], - 'Invalid explicit octal - part of the number out of octal range with numeric literal separator after' => [ - 'marker' => '/* testInvalid5 */', - 'value' => '0o2', - 'nextToken' => T_LNUMBER, - 'nextContent' => '8_2', - ], - 'Invalid explicit octal - part of the number out of octal range with numeric literal separator before' => [ - 'marker' => '/* testInvalid6 */', - 'value' => '0o2', - 'nextToken' => T_STRING, - 'nextContent' => '_82', - ], - 'Invalid explicit octal - explicit notation without number' => [ - 'marker' => '/* testInvalid7 */', - 'value' => '0', - 'nextToken' => T_STRING, - 'nextContent' => 'o', - ], - ]; - - }//end dataExplicitOctalNotation() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillFnTokenTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillFnTokenTest.inc deleted file mode 100644 index cbb7b63b..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillFnTokenTest.inc +++ /dev/null @@ -1,228 +0,0 @@ - $x + $y; - -/* testMixedCase */ -$fn1 = Fn($x) => $x + $y; - -/* testWhitespace */ -$fn1 = fn ($x) => $x + $y; - -/* testComment */ -$fn1 = fn /* comment here */ ($x) => $x + $y; - -/* testHeredoc */ -$fn1 = fn() => << /* testNestedInner */ fn($y) => $x * $y + $z; - -/* testNestedSharedCloserOuter */ -$foo = foo(fn() => /* testNestedSharedCloserInner */ fn() => bar() === true); - -/* testFunctionCall */ -$extended = fn($c) => $callable($factory($c), $c); - -/* testChainedFunctionCall */ -$result = Collection::from([1, 2]) - ->map(fn($v) => $v * 2) - ->reduce(/* testFunctionArgument */ fn($tmp, $v) => $tmp + $v, 0); - -/* testClosure */ -$extended = fn($c) => $callable(function() { - for ($x = 1; $x < 10; $x++) { - echo $x; - } - - echo 'done'; -}, $c); - -/* testArrayIndex */ -$found = in_array_cb($needle, $haystack, fn($array, $needle) => $array[2] === $needle); - -$result = array_map( - /* testReturnType */ - static fn(int $number) : int => $number + 1, - $numbers -); - -/* testReference */ -fn&($x) => $x; - -/* testGrouped */ -(fn($x) => $x) + $y; - -/* testArrayValue */ -$a = [ - 'a' => fn() => return 1, -]; - -/* testArrayValueNoTrailingComma */ -$a = [ - 'a' => fn() => foo() -]; - -/* testYield */ -$a = fn($x) => yield 'k' => $x; - -/* testNullableNamespace */ -$a = fn(?\DateTime $x) : ?\DateTime => $x; - -/* testNamespaceOperatorInTypes */ -$fn = fn(namespace\Foo $a) : ?namespace\Foo => $a; - -/* testSelfReturnType */ -fn(self $a) : self => $a; - -/* testParentReturnType */ -fn(parent $a) : parent => $a; - -/* testCallableReturnType */ -fn(callable $a) : callable => $a; - -/* testArrayReturnType */ -fn(array $a) : array => $a; - -/* testStaticReturnType */ -fn(array $a) : static => $a; - -/* testFalseReturnType */ -fn(array $a) : false => $a; - -/* testTrueReturnType */ -fn(array $a) : True => $a; - -/* testNullReturnType */ -fn(array $a) : null => $a; - -/* testUnionParamType */ -$arrowWithUnionParam = fn(int|float $param) : SomeClass => new SomeClass($param); - -/* testUnionReturnType */ -$arrowWithUnionReturn = fn($param) : int|float => $param | 10; - -/* testUnionReturnTypeWithTrue */ -$arrowWithUnionReturn = fn($param) : int|true => $param | 10; - -/* testUnionReturnTypeWithFalse */ -$arrowWithUnionReturn = fn($param) : string|FALSE => $param | 10; - -/* testIntersectionParamType */ -$arrowWithUnionParam = fn(Traversable&Countable $param) : int => (new SomeClass($param))->getValue(); - -/* testIntersectionReturnType */ -$arrowWithUnionReturn = fn($param) : \MyFoo&SomeInterface => new SomeClass($param); - -/* testDNFParamType */ -$arrowWithUnionParam = fn((Traversable&Countable)|null $param) : SomeClass => new SomeClass($param) ?? null; - -/* testDNFReturnType */ -$arrowWithUnionReturn = fn($param) : false|(\MyFoo&SomeInterface) => new \MyFoo($param) ?? false; - -/* testDNFParamTypeWithReturnByRef */ -$arrowWithParamReturnByRef = fn &((A&B)|null $param) => $param * 10; - -/* testTernary */ -$fn = fn($a) => $a ? /* testTernaryThen */ fn() : string => 'a' : /* testTernaryElse */ fn() : string => 'b'; - -/* testTernaryWithTypes */ -$fn = fn(int|null $a) : array|null => $a ? null : []; - -function matchInArrow($x) { - /* testWithMatchValue */ - $fn = fn($x) => match(true) { - 1, 2, 3, 4, 5 => 'foo', - default => 'bar', - }; -} - -function matchInArrowAndMore($x) { - /* testWithMatchValueAndMore */ - $fn = fn($x) => match(true) { - 1, 2, 3, 4, 5 => 'foo', - default => 'bar', - } . 'suffix'; -} - -function arrowFunctionInMatchWithTrailingComma($x) { - return match ($x) { - /* testInMatchNotLastValue */ - 1 => fn($y) => callMe($y), - /* testInMatchLastValueWithTrailingComma */ - default => fn($y) => callThem($y), - }; -} - -function arrowFunctionInMatchNoTrailingComma1($x) { - return match ($x) { - 1 => fn($y) => callMe($y), - /* testInMatchLastValueNoTrailingComma1 */ - default => fn($y) => callThem($y) - }; -} - -function arrowFunctionInMatchNoTrailingComma2($x) { - return match ($x) { - /* testInMatchLastValueNoTrailingComma2 */ - default => fn($y) => 5 * $y - }; -} - -/* testConstantDeclaration */ -const FN = 'a'; - -/* testConstantDeclarationLower */ -const fn = 'a'; - -class Foo { - /* testStaticMethodName */ - public static function fn($param) { - /* testNestedInMethod */ - $fn = fn($c) => $callable($factory($c), $c); - } - - public function foo() { - /* testPropertyAssignment */ - $this->fn = 'a'; - } -} - -$anon = new class() { - /* testAnonClassMethodName */ - protected function fN($param) { - } -} - -/* testNonArrowStaticMethodCall */ -$a = Foo::fn($param); - -/* testNonArrowConstantAccess */ -$a = MyClass::FN; - -/* testNonArrowConstantAccessMixed */ -$a = MyClass::Fn; - -/* testNonArrowObjectMethodCall */ -$a = $obj->fn($param); - -/* testNonArrowObjectMethodCallUpper */ -$a = $obj->FN($param); - -/* testNonArrowNamespacedFunctionCall */ -$a = MyNS\Sub\Fn($param); - -/* testNonArrowNamespaceOperatorFunctionCall */ -$a = namespace\fn($param); - -/* testNonArrowFunctionNameWithUnionTypes */ -function fn(int|float $param) : string|null {} - -/* testLiveCoding */ -// Intentional parse error. This has to be the last test in the file. -$fn = fn diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillFnTokenTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillFnTokenTest.php deleted file mode 100644 index f4ef2f20..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillFnTokenTest.php +++ /dev/null @@ -1,967 +0,0 @@ - - * @copyright 2019 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -final class BackfillFnTokenTest extends AbstractTokenizerTestCase -{ - - - /** - * Test simple arrow functions. - * - * @param string $testMarker The comment prefacing the target token. - * - * @dataProvider dataSimple - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testSimple($testMarker) - { - $token = $this->getTargetToken($testMarker, T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 5, 12); - - }//end testSimple() - - - /** - * Data provider. - * - * @see testSimple() - * - * @return array> - */ - public static function dataSimple() - { - return [ - 'standard' => [ - 'testMarker' => '/* testStandard */', - ], - 'mixed case' => [ - 'testMarker' => '/* testMixedCase */', - ], - ]; - - }//end dataSimple() - - - /** - * Test whitespace inside arrow function definitions. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testWhitespace() - { - $token = $this->getTargetToken('/* testWhitespace */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 6, 13); - - }//end testWhitespace() - - - /** - * Test comments inside arrow function definitions. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testComment() - { - $token = $this->getTargetToken('/* testComment */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 8, 15); - - }//end testComment() - - - /** - * Test heredocs inside arrow function definitions. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testHeredoc() - { - $token = $this->getTargetToken('/* testHeredoc */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 4, 9); - - }//end testHeredoc() - - - /** - * Test nested arrow functions. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testNestedOuter() - { - $token = $this->getTargetToken('/* testNestedOuter */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 5, 25); - - }//end testNestedOuter() - - - /** - * Test nested arrow functions. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testNestedInner() - { - $tokens = $this->phpcsFile->getTokens(); - - $token = $this->getTargetToken('/* testNestedInner */', T_FN); - $this->backfillHelper($token, true); - - $expectedScopeOpener = ($token + 5); - $expectedScopeCloser = ($token + 16); - - $this->assertSame($expectedScopeOpener, $tokens[$token]['scope_opener'], 'Scope opener is not the arrow token'); - $this->assertSame($expectedScopeCloser, $tokens[$token]['scope_closer'], 'Scope closer is not the semicolon token'); - - $opener = $tokens[$token]['scope_opener']; - $this->assertSame($expectedScopeOpener, $tokens[$opener]['scope_opener'], 'Opener scope opener is not the arrow token'); - $this->assertSame($expectedScopeCloser, $tokens[$opener]['scope_closer'], 'Opener scope closer is not the semicolon token'); - - $closer = $tokens[$token]['scope_closer']; - $this->assertSame(($token - 4), $tokens[$closer]['scope_opener'], 'Closer scope opener is not the arrow token of the "outer" arrow function (shared scope closer)'); - $this->assertSame($expectedScopeCloser, $tokens[$closer]['scope_closer'], 'Closer scope closer is not the semicolon token'); - - }//end testNestedInner() - - - /** - * Test nested arrow functions with a shared closer. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testNestedSharedCloser() - { - $tokens = $this->phpcsFile->getTokens(); - - $token = $this->getTargetToken('/* testNestedSharedCloserOuter */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 4, 20); - - $token = $this->getTargetToken('/* testNestedSharedCloserInner */', T_FN); - $this->backfillHelper($token, true); - - $expectedScopeOpener = ($token + 4); - $expectedScopeCloser = ($token + 12); - - $this->assertSame($expectedScopeOpener, $tokens[$token]['scope_opener'], 'Scope opener for "inner" arrow function is not the arrow token'); - $this->assertSame($expectedScopeCloser, $tokens[$token]['scope_closer'], 'Scope closer for "inner" arrow function is not the TRUE token'); - - $opener = $tokens[$token]['scope_opener']; - $this->assertSame($expectedScopeOpener, $tokens[$opener]['scope_opener'], 'Opener scope opener for "inner" arrow function is not the arrow token'); - $this->assertSame($expectedScopeCloser, $tokens[$opener]['scope_closer'], 'Opener scope closer for "inner" arrow function is not the semicolon token'); - - $closer = $tokens[$token]['scope_closer']; - $this->assertSame(($token - 4), $tokens[$closer]['scope_opener'], 'Closer scope opener for "inner" arrow function is not the arrow token of the "outer" arrow function (shared scope closer)'); - $this->assertSame($expectedScopeCloser, $tokens[$closer]['scope_closer'], 'Closer scope closer for "inner" arrow function is not the TRUE token'); - - }//end testNestedSharedCloser() - - - /** - * Test arrow functions that call functions. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testFunctionCall() - { - $token = $this->getTargetToken('/* testFunctionCall */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 5, 17); - - }//end testFunctionCall() - - - /** - * Test arrow functions that are included in chained calls. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testChainedFunctionCall() - { - $token = $this->getTargetToken('/* testChainedFunctionCall */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 5, 12, 'bracket'); - - }//end testChainedFunctionCall() - - - /** - * Test arrow functions that are used as function arguments. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testFunctionArgument() - { - $token = $this->getTargetToken('/* testFunctionArgument */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 8, 15, 'comma'); - - }//end testFunctionArgument() - - - /** - * Test arrow functions that use closures. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testClosure() - { - $token = $this->getTargetToken('/* testClosure */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 5, 60, 'comma'); - - }//end testClosure() - - - /** - * Test arrow functions using an array index. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testArrayIndex() - { - $token = $this->getTargetToken('/* testArrayIndex */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 8, 17, 'comma'); - - }//end testArrayIndex() - - - /** - * Test arrow functions with a return type. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testReturnType() - { - $token = $this->getTargetToken('/* testReturnType */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 11, 18, 'comma'); - - }//end testReturnType() - - - /** - * Test arrow functions that return a reference. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testReference() - { - $token = $this->getTargetToken('/* testReference */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 6, 9); - - }//end testReference() - - - /** - * Test arrow functions that are grouped by parenthesis. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testGrouped() - { - $token = $this->getTargetToken('/* testGrouped */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 5, 8); - - }//end testGrouped() - - - /** - * Test arrow functions that are used as array values. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testArrayValue() - { - $token = $this->getTargetToken('/* testArrayValue */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 4, 9, 'comma'); - - }//end testArrayValue() - - - /** - * Test arrow functions that are used as array values with no trailing comma. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testArrayValueNoTrailingComma() - { - $token = $this->getTargetToken('/* testArrayValueNoTrailingComma */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 4, 8, 'closing parenthesis'); - - }//end testArrayValueNoTrailingComma() - - - /** - * Test arrow functions that use the yield keyword. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testYield() - { - $token = $this->getTargetToken('/* testYield */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 5, 14); - - }//end testYield() - - - /** - * Test arrow functions that use nullable namespace types. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testNullableNamespace() - { - $token = $this->getTargetToken('/* testNullableNamespace */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 15, 18); - - }//end testNullableNamespace() - - - /** - * Test arrow functions that use the namespace operator in the return type. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testNamespaceOperatorInTypes() - { - $token = $this->getTargetToken('/* testNamespaceOperatorInTypes */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 16, 19); - - }//end testNamespaceOperatorInTypes() - - - /** - * Test arrow functions that use keyword return types. - * - * @param string $testMarker The comment prefacing the target token. - * - * @dataProvider dataKeywordReturnTypes - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testKeywordReturnTypes($testMarker) - { - $token = $this->getTargetToken($testMarker, T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 11, 14); - - }//end testKeywordReturnTypes() - - - /** - * Data provider. - * - * @see testKeywordReturnTypes() - * - * @return array> - */ - public static function dataKeywordReturnTypes() - { - return [ - 'self' => [ - 'testMarker' => '/* testSelfReturnType */', - ], - 'parent' => [ - 'testMarker' => '/* testParentReturnType */', - ], - 'callable' => [ - 'testMarker' => '/* testCallableReturnType */', - ], - 'array' => [ - 'testMarker' => '/* testArrayReturnType */', - ], - 'static' => [ - 'testMarker' => '/* testStaticReturnType */', - ], - 'false' => [ - 'testMarker' => '/* testFalseReturnType */', - ], - 'true' => [ - 'testMarker' => '/* testTrueReturnType */', - ], - 'null' => [ - 'testMarker' => '/* testNullReturnType */', - ], - ]; - - }//end dataKeywordReturnTypes() - - - /** - * Test arrow function with a union parameter type. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testUnionParamType() - { - $token = $this->getTargetToken('/* testUnionParamType */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 13, 21); - - }//end testUnionParamType() - - - /** - * Test arrow function with a union return type. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testUnionReturnType() - { - $token = $this->getTargetToken('/* testUnionReturnType */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 11, 18); - - }//end testUnionReturnType() - - - /** - * Test arrow function with a union return type. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testUnionReturnTypeWithTrue() - { - $token = $this->getTargetToken('/* testUnionReturnTypeWithTrue */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 11, 18); - - }//end testUnionReturnTypeWithTrue() - - - /** - * Test arrow function with a union return type. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testUnionReturnTypeWithFalse() - { - $token = $this->getTargetToken('/* testUnionReturnTypeWithFalse */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 11, 18); - - }//end testUnionReturnTypeWithFalse() - - - /** - * Test arrow function with an intersection parameter type. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testIntersectionParamType() - { - $token = $this->getTargetToken('/* testIntersectionParamType */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 13, 27); - - }//end testIntersectionParamType() - - - /** - * Test arrow function with an intersection return type. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testIntersectionReturnType() - { - $token = $this->getTargetToken('/* testIntersectionReturnType */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 12, 20); - - }//end testIntersectionReturnType() - - - /** - * Test arrow function with a DNF parameter type. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testDNFParamType() - { - $token = $this->getTargetToken('/* testDNFParamType */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 17, 29); - - }//end testDNFParamType() - - - /** - * Test arrow function with a DNF return type. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testDNFReturnType() - { - $token = $this->getTargetToken('/* testDNFReturnType */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 16, 29); - - }//end testDNFReturnType() - - - /** - * Test arrow function which returns by reference with a DNF parameter type. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testDNFParamTypeWithReturnByRef() - { - $token = $this->getTargetToken('/* testDNFParamTypeWithReturnByRef */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 15, 22); - - }//end testDNFParamTypeWithReturnByRef() - - - /** - * Test arrow functions used in ternary operators. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testTernary() - { - $tokens = $this->phpcsFile->getTokens(); - - $token = $this->getTargetToken('/* testTernary */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 5, 40); - - $token = $this->getTargetToken('/* testTernaryThen */', T_FN); - $this->backfillHelper($token); - - $expectedScopeOpener = ($token + 8); - $expectedScopeCloser = ($token + 12); - - $this->assertSame($expectedScopeOpener, $tokens[$token]['scope_opener'], 'Scope opener for THEN is not the arrow token'); - $this->assertSame($expectedScopeCloser, $tokens[$token]['scope_closer'], 'Scope closer for THEN is not the semicolon token'); - - $opener = $tokens[$token]['scope_opener']; - $this->assertSame($expectedScopeOpener, $tokens[$opener]['scope_opener'], 'Opener scope opener for THEN is not the arrow token'); - $this->assertSame($expectedScopeCloser, $tokens[$opener]['scope_closer'], 'Opener scope closer for THEN is not the semicolon token'); - - $closer = $tokens[$token]['scope_closer']; - $this->assertSame($expectedScopeOpener, $tokens[$closer]['scope_opener'], 'Closer scope opener for THEN is not the arrow token'); - $this->assertSame($expectedScopeCloser, $tokens[$closer]['scope_closer'], 'Closer scope closer for THEN is not the semicolon token'); - - $token = $this->getTargetToken('/* testTernaryElse */', T_FN); - $this->backfillHelper($token, true); - - $expectedScopeOpener = ($token + 8); - $expectedScopeCloser = ($token + 11); - - $this->assertSame($expectedScopeOpener, $tokens[$token]['scope_opener'], 'Scope opener for ELSE is not the arrow token'); - $this->assertSame($expectedScopeCloser, $tokens[$token]['scope_closer'], 'Scope closer for ELSE is not the semicolon token'); - - $opener = $tokens[$token]['scope_opener']; - $this->assertSame($expectedScopeOpener, $tokens[$opener]['scope_opener'], 'Opener scope opener for ELSE is not the arrow token'); - $this->assertSame($expectedScopeCloser, $tokens[$opener]['scope_closer'], 'Opener scope closer for ELSE is not the semicolon token'); - - $closer = $tokens[$token]['scope_closer']; - $this->assertSame(($token - 24), $tokens[$closer]['scope_opener'], 'Closer scope opener for ELSE is not the arrow token of the "outer" arrow function (shared scope closer)'); - $this->assertSame($expectedScopeCloser, $tokens[$closer]['scope_closer'], 'Closer scope closer for ELSE is not the semicolon token'); - - }//end testTernary() - - - /** - * Test typed arrow functions used in ternary operators. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testTernaryWithTypes() - { - $token = $this->getTargetToken('/* testTernaryWithTypes */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 15, 27); - - }//end testTernaryWithTypes() - - - /** - * Test arrow function returning a match control structure. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testWithMatchValue() - { - $token = $this->getTargetToken('/* testWithMatchValue */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 5, 44); - - }//end testWithMatchValue() - - - /** - * Test arrow function returning a match control structure with something behind it. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testWithMatchValueAndMore() - { - $token = $this->getTargetToken('/* testWithMatchValueAndMore */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 5, 48); - - }//end testWithMatchValueAndMore() - - - /** - * Test match control structure returning arrow functions. - * - * @param string $testMarker The comment prefacing the target token. - * @param int $openerOffset The expected offset of the scope opener in relation to the testMarker. - * @param int $closerOffset The expected offset of the scope closer in relation to the testMarker. - * @param string $expectedCloserType The type of token expected for the scope closer. - * @param string $expectedCloserFriendlyName A friendly name for the type of token expected for the scope closer - * to be used in the error message for failing tests. - * - * @dataProvider dataInMatchValue - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testInMatchValue($testMarker, $openerOffset, $closerOffset, $expectedCloserType, $expectedCloserFriendlyName) - { - $tokens = $this->phpcsFile->getTokens(); - - $token = $this->getTargetToken($testMarker, T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, $openerOffset, $closerOffset, $expectedCloserFriendlyName); - - $this->assertSame($expectedCloserType, $tokens[($token + $closerOffset)]['type'], 'Mismatched scope closer type'); - - }//end testInMatchValue() - - - /** - * Data provider. - * - * @see testInMatchValue() - * - * @return array> - */ - public static function dataInMatchValue() - { - return [ - 'not_last_value' => [ - 'testMarker' => '/* testInMatchNotLastValue */', - 'openerOffset' => 5, - 'closerOffset' => 11, - 'expectedCloserType' => 'T_COMMA', - 'expectedCloserFriendlyName' => 'comma', - ], - 'last_value_with_trailing_comma' => [ - 'testMarker' => '/* testInMatchLastValueWithTrailingComma */', - 'openerOffset' => 5, - 'closerOffset' => 11, - 'expectedCloserType' => 'T_COMMA', - 'expectedCloserFriendlyName' => 'comma', - ], - 'last_value_without_trailing_comma_1' => [ - 'testMarker' => '/* testInMatchLastValueNoTrailingComma1 */', - 'openerOffset' => 5, - 'closerOffset' => 10, - 'expectedCloserType' => 'T_CLOSE_PARENTHESIS', - 'expectedCloserFriendlyName' => 'close parenthesis', - ], - 'last_value_without_trailing_comma_2' => [ - 'testMarker' => '/* testInMatchLastValueNoTrailingComma2 */', - 'openerOffset' => 5, - 'closerOffset' => 11, - 'expectedCloserType' => 'T_VARIABLE', - 'expectedCloserFriendlyName' => '$y variable', - ], - ]; - - }//end dataInMatchValue() - - - /** - * Test arrow function nested within a method declaration. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testNestedInMethod() - { - $token = $this->getTargetToken('/* testNestedInMethod */', T_FN); - $this->backfillHelper($token); - $this->scopePositionTestHelper($token, 5, 17); - - }//end testNestedInMethod() - - - /** - * Verify that "fn" keywords which are not arrow functions get tokenized as T_STRING and don't - * have the extra token array indexes. - * - * @param string $testMarker The comment prefacing the target token. - * @param string $testContent The token content to look for. - * - * @dataProvider dataNotAnArrowFunction - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testNotAnArrowFunction($testMarker, $testContent='fn') - { - $tokens = $this->phpcsFile->getTokens(); - - $token = $this->getTargetToken($testMarker, [T_STRING, T_FN], $testContent); - $tokenArray = $tokens[$token]; - - $this->assertSame('T_STRING', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING'); - - $this->assertArrayNotHasKey('scope_condition', $tokenArray, 'Scope condition is set'); - $this->assertArrayNotHasKey('scope_opener', $tokenArray, 'Scope opener is set'); - $this->assertArrayNotHasKey('scope_closer', $tokenArray, 'Scope closer is set'); - $this->assertArrayNotHasKey('parenthesis_owner', $tokenArray, 'Parenthesis owner is set'); - $this->assertArrayNotHasKey('parenthesis_opener', $tokenArray, 'Parenthesis opener is set'); - $this->assertArrayNotHasKey('parenthesis_closer', $tokenArray, 'Parenthesis closer is set'); - - }//end testNotAnArrowFunction() - - - /** - * Data provider. - * - * @see testNotAnArrowFunction() - * - * @return array> - */ - public static function dataNotAnArrowFunction() - { - return [ - 'name of a function, context: declaration' => [ - 'testMarker' => '/* testFunctionName */', - ], - 'name of a constant, context: declaration using "const" keyword - uppercase' => [ - 'testMarker' => '/* testConstantDeclaration */', - 'testContent' => 'FN', - ], - 'name of a constant, context: declaration using "const" keyword - lowercase' => [ - 'testMarker' => '/* testConstantDeclarationLower */', - 'testContent' => 'fn', - ], - 'name of a (static) method, context: declaration' => [ - 'testMarker' => '/* testStaticMethodName */', - ], - 'name of a property, context: property access' => [ - 'testMarker' => '/* testPropertyAssignment */', - ], - 'name of a method, context: declaration in an anon class - mixed case' => [ - 'testMarker' => '/* testAnonClassMethodName */', - 'testContent' => 'fN', - ], - 'name of a method, context: static method call' => [ - 'testMarker' => '/* testNonArrowStaticMethodCall */', - ], - 'name of a constant, context: constant access - uppercase' => [ - 'testMarker' => '/* testNonArrowConstantAccess */', - 'testContent' => 'FN', - ], - 'name of a constant, context: constant access - mixed case' => [ - 'testMarker' => '/* testNonArrowConstantAccessMixed */', - 'testContent' => 'Fn', - ], - 'name of a method, context: method call on object - lowercase' => [ - 'testMarker' => '/* testNonArrowObjectMethodCall */', - ], - 'name of a method, context: method call on object - uppercase' => [ - 'testMarker' => '/* testNonArrowObjectMethodCallUpper */', - 'testContent' => 'FN', - ], - 'name of a (namespaced) function, context: partially qualified function call' => [ - 'testMarker' => '/* testNonArrowNamespacedFunctionCall */', - 'testContent' => 'Fn', - ], - 'name of a (namespaced) function, context: namespace relative function call' => [ - 'testMarker' => '/* testNonArrowNamespaceOperatorFunctionCall */', - ], - 'name of a function, context: declaration with union types for param and return' => [ - 'testMarker' => '/* testNonArrowFunctionNameWithUnionTypes */', - ], - 'unknown - live coding/parse error' => [ - 'testMarker' => '/* testLiveCoding */', - ], - ]; - - }//end dataNotAnArrowFunction() - - - /** - * Helper function to check that all token keys are correctly set for T_FN tokens. - * - * @param int $token The T_FN token to check. - * @param bool $skipScopeCloserCheck Whether to skip the scope closer check. - * This should be set to "true" when testing nested arrow functions, - * where the "inner" arrow function shares a scope closer with the - * "outer" arrow function, as the 'scope_condition' for the scope closer - * of the "inner" arrow function will point to the "outer" arrow function. - * - * @return void - */ - private function backfillHelper($token, $skipScopeCloserCheck=false) - { - $tokens = $this->phpcsFile->getTokens(); - - $this->assertTrue(array_key_exists('scope_condition', $tokens[$token]), 'Scope condition is not set'); - $this->assertTrue(array_key_exists('scope_opener', $tokens[$token]), 'Scope opener is not set'); - $this->assertTrue(array_key_exists('scope_closer', $tokens[$token]), 'Scope closer is not set'); - $this->assertSame($tokens[$token]['scope_condition'], $token, 'Scope condition is not the T_FN token'); - $this->assertTrue(array_key_exists('parenthesis_owner', $tokens[$token]), 'Parenthesis owner is not set'); - $this->assertTrue(array_key_exists('parenthesis_opener', $tokens[$token]), 'Parenthesis opener is not set'); - $this->assertTrue(array_key_exists('parenthesis_closer', $tokens[$token]), 'Parenthesis closer is not set'); - $this->assertSame($tokens[$token]['parenthesis_owner'], $token, 'Parenthesis owner is not the T_FN token'); - - $opener = $tokens[$token]['scope_opener']; - $this->assertTrue(array_key_exists('scope_condition', $tokens[$opener]), 'Opener scope condition is not set'); - $this->assertTrue(array_key_exists('scope_opener', $tokens[$opener]), 'Opener scope opener is not set'); - $this->assertTrue(array_key_exists('scope_closer', $tokens[$opener]), 'Opener scope closer is not set'); - $this->assertSame($tokens[$opener]['scope_condition'], $token, 'Opener scope condition is not the T_FN token'); - $this->assertSame(T_FN_ARROW, $tokens[$opener]['code'], 'Arrow scope opener not tokenized as T_FN_ARROW (code)'); - $this->assertSame('T_FN_ARROW', $tokens[$opener]['type'], 'Arrow scope opener not tokenized as T_FN_ARROW (type)'); - - $closer = $tokens[$token]['scope_closer']; - $this->assertTrue(array_key_exists('scope_condition', $tokens[$closer]), 'Closer scope condition is not set'); - $this->assertTrue(array_key_exists('scope_opener', $tokens[$closer]), 'Closer scope opener is not set'); - $this->assertTrue(array_key_exists('scope_closer', $tokens[$closer]), 'Closer scope closer is not set'); - if ($skipScopeCloserCheck === false) { - $this->assertSame($tokens[$closer]['scope_condition'], $token, 'Closer scope condition is not the T_FN token'); - } - - $opener = $tokens[$token]['parenthesis_opener']; - $this->assertTrue(array_key_exists('parenthesis_owner', $tokens[$opener]), 'Opening parenthesis owner is not set'); - $this->assertSame($tokens[$opener]['parenthesis_owner'], $token, 'Opening parenthesis owner is not the T_FN token'); - - $closer = $tokens[$token]['parenthesis_closer']; - $this->assertTrue(array_key_exists('parenthesis_owner', $tokens[$closer]), 'Closing parenthesis owner is not set'); - $this->assertSame($tokens[$closer]['parenthesis_owner'], $token, 'Closing parenthesis owner is not the T_FN token'); - - }//end backfillHelper() - - - /** - * Helper function to check that the scope opener/closer positions are correctly set for T_FN tokens. - * - * @param int $token The T_FN token to check. - * @param int $openerOffset The expected offset of the scope opener in relation to - * the fn keyword. - * @param int $closerOffset The expected offset of the scope closer in relation to - * the fn keyword. - * @param string $expectedCloserType Optional. The type of token expected for the scope closer. - * - * @return void - */ - private function scopePositionTestHelper($token, $openerOffset, $closerOffset, $expectedCloserType='semicolon') - { - $tokens = $this->phpcsFile->getTokens(); - $expectedScopeOpener = ($token + $openerOffset); - $expectedScopeCloser = ($token + $closerOffset); - - $this->assertSame($expectedScopeOpener, $tokens[$token]['scope_opener'], 'Scope opener is not the arrow token'); - $this->assertSame($expectedScopeCloser, $tokens[$token]['scope_closer'], 'Scope closer is not the '.$expectedCloserType.' token'); - - $opener = $tokens[$token]['scope_opener']; - $this->assertSame($expectedScopeOpener, $tokens[$opener]['scope_opener'], 'Opener scope opener is not the arrow token'); - $this->assertSame($expectedScopeCloser, $tokens[$opener]['scope_closer'], 'Opener scope closer is not the '.$expectedCloserType.' token'); - - $closer = $tokens[$token]['scope_closer']; - $this->assertSame($expectedScopeOpener, $tokens[$closer]['scope_opener'], 'Closer scope opener is not the arrow token'); - $this->assertSame($expectedScopeCloser, $tokens[$closer]['scope_closer'], 'Closer scope closer is not the '.$expectedCloserType.' token'); - - }//end scopePositionTestHelper() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillMatchTokenTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillMatchTokenTest.inc deleted file mode 100644 index 095a4d7d..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillMatchTokenTest.inc +++ /dev/null @@ -1,319 +0,0 @@ - 'Zero', - 1 => 'One', - 2 => 'Two', - }; -} - -function matchNoTrailingComma($bool) { - /* testMatchNoTrailingComma */ - echo match ($bool) { - true => "true\n", - false => "false\n" - }; -} - -function matchWithDefault($i) { - /* testMatchWithDefault */ - return match ($i) { - 1 => 1, - 2 => 2, - default => 'default', - }; -} - -function matchExpressionInCondition($i) { - /* testMatchExpressionInCondition */ - return match (true) { - $i >= 50 => '50+', - $i >= 40 => '40-50', - $i >= 30 => '30-40', - $i >= 20 => '20-30', - $i >= 10 => '10-20', - default => '0-10', - }; -} - -function matchMultiCase($day) { - /* testMatchMultiCase */ - return match ($day) { - 1, 7 => false, - 2, 3, 4, 5, 6 => true, - }; -} - -function matchMultiCaseTrailingCommaInCase($bool) { - /* testMatchMultiCaseTrailingCommaInCase */ - echo match ($bool) { - false, - 0, - => "false\n", - true, - 1, - => "true\n", - default, - => "not bool\n", - }; -} - -assert((function () { - /* testMatchInClosureNotLowercase */ - Match ('foo') { - 'foo', 'bar' => false, - 'baz' => 'a', - default => 'b', - }; -})()); - -function matchInArrowFunction($x) { - /* testMatchInArrowFunction */ - $fn = fn($x) => match(true) { - 1, 2, 3, 4, 5 => 'foo', - default => 'bar', - }; -} - -function arrowFunctionInMatchNoTrailingComma($x) { - /* testArrowFunctionInMatchNoTrailingComma */ - return match ($x) { - 1 => fn($y) => callMe($y), - default => fn($y) => callThem($y) - }; -} - -/* testMatchInFunctionCallParamNotLowercase */ -var_dump(MATCH ( 'foo' ) { - 'foo' => dump_and_return('foo'), - 'bar' => dump_and_return('bar'), -}); - -/* testMatchInMethodCallParam */ -Test::usesValue(match(true) { true => $i }); - -/* testMatchDiscardResult */ -match (1) { - 1 => print "Executed\n", -}; - -/* testMatchWithDuplicateConditionsWithComments */ -echo match /*comment*/ ( $value /*comment*/ ) { - // Comment. - 2, 1 => '2, 1', - 1 => 1, - 3 => 3, - 4 => 4, - 5 => 5, -}; - -/* testNestedMatchOuter */ -$x = match ($y) { - /* testNestedMatchInner */ - default => match ($z) { 1 => 1 }, -}; - -/* testMatchInTernaryCondition */ -$x = match ($test) { 1 => 'a', 2 => 'b' } ? - /* testMatchInTernaryThen */ match ($test) { 1 => 'a', 2 => 'b' } : - /* testMatchInTernaryElse */ match ($notTest) { 3 => 'a', 4 => 'b' }; - -/* testMatchInArrayValue */ -$array = array( - match ($test) { 1 => 'a', 2 => 'b' }, -); - -/* testMatchInArrayKey */ -$array = [ - match ($test) { 1 => 'a', 2 => 'b' } => 'dynamic keys, woho!', -]; - -/* testMatchreturningArray */ -$matcher = match ($x) { - 0 => array( 0 => 1, 'a' => 2, 'b' => 3 ), - 1 => [1, 2, 3], - 2 => array( 1, [1, 2, 3], 2, 3), - 3 => [ 0 => 1, 'a' => array(1, 2, 3), 'b' => 2, 3], -}; - -/* testSwitchContainingMatch */ -switch ($something) { - /* testMatchWithDefaultNestedInSwitchCase1 */ - case 'foo': - $var = [1, 2, 3]; - $var = match ($i) { - 1 => 1, - default => 'default', - }; - continue 2; - - /* testMatchWithDefaultNestedInSwitchCase2 */ - case 'bar' ; - $i = callMe($a, $b); - return match ($i) { - 1 => 1, - default => 'default', - }; - - /* testMatchWithDefaultNestedInSwitchDefault */ - default: - echo 'something', match ($i) { - 1 => 1, - default => 'default', - }; - break; -} - -/* testMatchContainingSwitch */ -$x = match ($y) { - 5, 8 => function($z) { - /* testSwitchNestedInMatch1 */ - switch($z) { - case 'a': - $var = [1, 2, 3]; - return 'a'; - /* testSwitchDefaultNestedInMatchCase */ - default: - $i = callMe($a, $b); - return 'default1'; - } - }, - default => function($z) { - /* testSwitchNestedInMatch2 */ - switch($z) { - case 'a'; - $i = callMe($a, $b); - return 'b'; - /* testSwitchDefaultNestedInMatchDefault */ - default; - $var = [1, 2, 3]; - return 'default2'; - } - } -}; - -/* testMatchNoCases */ -// Intentional fatal error. -$x = match (true) {}; - -/* testMatchMultiDefault */ -// Intentional fatal error. -echo match (1) { - default => 'foo', - 1 => 'bar', - 2 => 'baz', - default => 'qux', -}; - -/* testNoMatchStaticMethodCall */ -$a = Foo::match($param); - -/* testNoMatchClassConstantAccess */ -$a = MyClass::MATCH; - -/* testNoMatchClassConstantArrayAccessMixedCase */ -$a = MyClass::Match[$a]; - -/* testNoMatchMethodCall */ -$a = $obj->match($param); - -/* testNoMatchMethodCallUpper */ -$a = $obj??->MATCH()->chain($param); - -/* testNoMatchPropertyAccess */ -$a = $obj->match; - -/* testNoMatchNamespacedFunctionCall */ -// Intentional fatal error. -$a = MyNS\Sub\match($param); - -/* testNoMatchNamespaceOperatorFunctionCall */ -// Intentional fatal error. -$a = namespace\match($param); - -interface MatchInterface { - /* testNoMatchInterfaceMethodDeclaration */ - public static function match($param); -} - -class MatchClass { - /* testNoMatchClassConstantDeclarationLower */ - const match = 'a'; - - /* testNoMatchClassMethodDeclaration */ - public static function match($param) { - /* testNoMatchPropertyAssignment */ - $this->match = 'a'; - } -} - -/* testNoMatchClassInstantiation */ -$obj = new Match(); - -$anon = new class() { - /* testNoMatchAnonClassMethodDeclaration */ - protected function maTCH($param) { - } -}; - -/* testNoMatchClassDeclaration */ -// Intentional fatal error. Match is now a reserved keyword. -class Match {} - -/* testNoMatchInterfaceDeclaration */ -// Intentional fatal error. Match is now a reserved keyword. -interface Match {} - -/* testNoMatchTraitDeclaration */ -// Intentional fatal error. Match is now a reserved keyword. -trait Match {} - -/* testNoMatchConstantDeclaration */ -// Intentional fatal error. Match is now a reserved keyword. -const MATCH = '1'; - -/* testNoMatchFunctionDeclaration */ -// Intentional fatal error. Match is now a reserved keyword. -function match() {} - -/* testNoMatchNamespaceDeclaration */ -// Intentional fatal error. Match is now a reserved keyword. -namespace Match {} - -/* testNoMatchExtendedClassDeclaration */ -// Intentional fatal error. Match is now a reserved keyword. -class Foo extends Match {} - -/* testNoMatchImplementedClassDeclaration */ -// Intentional fatal error. Match is now a reserved keyword. -class Bar implements Match {} - -/* testNoMatchInUseStatement */ -// Intentional fatal error in PHP < 8. Match is now a reserved keyword. -use Match\me; - -function brokenMatchNoCurlies($x) { - /* testNoMatchMissingCurlies */ - // Intentional fatal error. New control structure is not supported without curly braces. - return match ($x) - 0 => 'Zero', - 1 => 'One', - 2 => 'Two', - ; -} - -function brokenMatchAlternativeSyntax($x) { - /* testNoMatchAlternativeSyntax */ - // Intentional fatal error. Alternative syntax is not supported. - return match ($x) : - 0 => 'Zero', - 1 => 'One', - 2 => 'Two', - endmatch; -} - -/* testLiveCoding */ -// Intentional parse error. This has to be the last test in the file. -echo match diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillMatchTokenTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillMatchTokenTest.php deleted file mode 100644 index ca6d27b3..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillMatchTokenTest.php +++ /dev/null @@ -1,555 +0,0 @@ - - * @copyright 2020-2021 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; -use PHP_CodeSniffer\Util\Tokens; - -final class BackfillMatchTokenTest extends AbstractTokenizerTestCase -{ - - - /** - * Test tokenization of match expressions. - * - * @param string $testMarker The comment prefacing the target token. - * @param int $openerOffset The expected offset of the scope opener in relation to the testMarker. - * @param int $closerOffset The expected offset of the scope closer in relation to the testMarker. - * @param string $testContent The token content to look for. - * - * @dataProvider dataMatchExpression - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testMatchExpression($testMarker, $openerOffset, $closerOffset, $testContent='match') - { - $tokens = $this->phpcsFile->getTokens(); - - $token = $this->getTargetToken($testMarker, [T_STRING, T_MATCH], $testContent); - $tokenArray = $tokens[$token]; - - $this->assertSame(T_MATCH, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_MATCH (code)'); - $this->assertSame('T_MATCH', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_MATCH (type)'); - - $this->scopeTestHelper($token, $openerOffset, $closerOffset); - $this->parenthesisTestHelper($token); - - }//end testMatchExpression() - - - /** - * Data provider. - * - * @see testMatchExpression() - * - * @return array> - */ - public static function dataMatchExpression() - { - return [ - 'simple_match' => [ - 'testMarker' => '/* testMatchSimple */', - 'openerOffset' => 6, - 'closerOffset' => 33, - ], - 'no_trailing_comma' => [ - 'testMarker' => '/* testMatchNoTrailingComma */', - 'openerOffset' => 6, - 'closerOffset' => 24, - ], - 'with_default_case' => [ - 'testMarker' => '/* testMatchWithDefault */', - 'openerOffset' => 6, - 'closerOffset' => 33, - ], - 'expression_in_condition' => [ - 'testMarker' => '/* testMatchExpressionInCondition */', - 'openerOffset' => 6, - 'closerOffset' => 77, - ], - 'multicase' => [ - 'testMarker' => '/* testMatchMultiCase */', - 'openerOffset' => 6, - 'closerOffset' => 40, - ], - 'multicase_trailing_comma_in_case' => [ - 'testMarker' => '/* testMatchMultiCaseTrailingCommaInCase */', - 'openerOffset' => 6, - 'closerOffset' => 47, - ], - 'in_closure_not_lowercase' => [ - 'testMarker' => '/* testMatchInClosureNotLowercase */', - 'openerOffset' => 6, - 'closerOffset' => 36, - 'testContent' => 'Match', - ], - 'in_arrow_function' => [ - 'testMarker' => '/* testMatchInArrowFunction */', - 'openerOffset' => 5, - 'closerOffset' => 36, - ], - 'arrow_function_in_match_no_trailing_comma' => [ - 'testMarker' => '/* testArrowFunctionInMatchNoTrailingComma */', - 'openerOffset' => 6, - 'closerOffset' => 44, - ], - 'in_function_call_param_not_lowercase' => [ - 'testMarker' => '/* testMatchInFunctionCallParamNotLowercase */', - 'openerOffset' => 8, - 'closerOffset' => 32, - 'testContent' => 'MATCH', - ], - 'in_method_call_param' => [ - 'testMarker' => '/* testMatchInMethodCallParam */', - 'openerOffset' => 5, - 'closerOffset' => 13, - ], - 'discard_result' => [ - 'testMarker' => '/* testMatchDiscardResult */', - 'openerOffset' => 6, - 'closerOffset' => 18, - ], - 'duplicate_conditions_and_comments' => [ - 'testMarker' => '/* testMatchWithDuplicateConditionsWithComments */', - 'openerOffset' => 12, - 'closerOffset' => 59, - ], - 'nested_match_outer' => [ - 'testMarker' => '/* testNestedMatchOuter */', - 'openerOffset' => 6, - 'closerOffset' => 33, - ], - 'nested_match_inner' => [ - 'testMarker' => '/* testNestedMatchInner */', - 'openerOffset' => 6, - 'closerOffset' => 14, - ], - 'ternary_condition' => [ - 'testMarker' => '/* testMatchInTernaryCondition */', - 'openerOffset' => 6, - 'closerOffset' => 21, - ], - 'ternary_then' => [ - 'testMarker' => '/* testMatchInTernaryThen */', - 'openerOffset' => 6, - 'closerOffset' => 21, - ], - 'ternary_else' => [ - 'testMarker' => '/* testMatchInTernaryElse */', - 'openerOffset' => 6, - 'closerOffset' => 21, - ], - 'array_value' => [ - 'testMarker' => '/* testMatchInArrayValue */', - 'openerOffset' => 6, - 'closerOffset' => 21, - ], - 'array_key' => [ - 'testMarker' => '/* testMatchInArrayKey */', - 'openerOffset' => 6, - 'closerOffset' => 21, - ], - 'returning_array' => [ - 'testMarker' => '/* testMatchreturningArray */', - 'openerOffset' => 6, - 'closerOffset' => 125, - ], - 'nested_in_switch_case_1' => [ - 'testMarker' => '/* testMatchWithDefaultNestedInSwitchCase1 */', - 'openerOffset' => 6, - 'closerOffset' => 25, - ], - 'nested_in_switch_case_2' => [ - 'testMarker' => '/* testMatchWithDefaultNestedInSwitchCase2 */', - 'openerOffset' => 6, - 'closerOffset' => 25, - ], - 'nested_in_switch_default' => [ - 'testMarker' => '/* testMatchWithDefaultNestedInSwitchDefault */', - 'openerOffset' => 6, - 'closerOffset' => 25, - ], - 'match_with_nested_switch' => [ - 'testMarker' => '/* testMatchContainingSwitch */', - 'openerOffset' => 6, - 'closerOffset' => 180, - ], - 'no_cases' => [ - 'testMarker' => '/* testMatchNoCases */', - 'openerOffset' => 6, - 'closerOffset' => 7, - ], - 'multi_default' => [ - 'testMarker' => '/* testMatchMultiDefault */', - 'openerOffset' => 6, - 'closerOffset' => 40, - ], - ]; - - }//end dataMatchExpression() - - - /** - * Verify that "match" keywords which are not match control structures get tokenized as T_STRING - * and don't have the extra token array indexes. - * - * @param string $testMarker The comment prefacing the target token. - * @param string $testContent The token content to look for. - * - * @dataProvider dataNotAMatchStructure - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testNotAMatchStructure($testMarker, $testContent='match') - { - $tokens = $this->phpcsFile->getTokens(); - - $token = $this->getTargetToken($testMarker, [T_STRING, T_MATCH], $testContent); - $tokenArray = $tokens[$token]; - - $this->assertSame(T_STRING, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (code)'); - $this->assertSame('T_STRING', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (type)'); - - $this->assertArrayNotHasKey('scope_condition', $tokenArray, 'Scope condition is set'); - $this->assertArrayNotHasKey('scope_opener', $tokenArray, 'Scope opener is set'); - $this->assertArrayNotHasKey('scope_closer', $tokenArray, 'Scope closer is set'); - $this->assertArrayNotHasKey('parenthesis_owner', $tokenArray, 'Parenthesis owner is set'); - $this->assertArrayNotHasKey('parenthesis_opener', $tokenArray, 'Parenthesis opener is set'); - $this->assertArrayNotHasKey('parenthesis_closer', $tokenArray, 'Parenthesis closer is set'); - - $next = $this->phpcsFile->findNext(Tokens::$emptyTokens, ($token + 1), null, true); - if ($next !== false && $tokens[$next]['code'] === T_OPEN_PARENTHESIS) { - $this->assertArrayNotHasKey('parenthesis_owner', $tokenArray, 'Parenthesis owner is set for opener after'); - } - - }//end testNotAMatchStructure() - - - /** - * Data provider. - * - * @see testNotAMatchStructure() - * - * @return array> - */ - public static function dataNotAMatchStructure() - { - return [ - 'static_method_call' => [ - 'testMarker' => '/* testNoMatchStaticMethodCall */', - ], - 'class_constant_access' => [ - 'testMarker' => '/* testNoMatchClassConstantAccess */', - 'testContent' => 'MATCH', - ], - 'class_constant_array_access' => [ - 'testMarker' => '/* testNoMatchClassConstantArrayAccessMixedCase */', - 'testContent' => 'Match', - ], - 'method_call' => [ - 'testMarker' => '/* testNoMatchMethodCall */', - ], - 'method_call_uppercase' => [ - 'testMarker' => '/* testNoMatchMethodCallUpper */', - 'testContent' => 'MATCH', - ], - 'property_access' => [ - 'testMarker' => '/* testNoMatchPropertyAccess */', - ], - 'namespaced_function_call' => [ - 'testMarker' => '/* testNoMatchNamespacedFunctionCall */', - ], - 'namespace_operator_function_call' => [ - 'testMarker' => '/* testNoMatchNamespaceOperatorFunctionCall */', - ], - 'interface_method_declaration' => [ - 'testMarker' => '/* testNoMatchInterfaceMethodDeclaration */', - ], - 'class_constant_declaration' => [ - 'testMarker' => '/* testNoMatchClassConstantDeclarationLower */', - ], - 'class_method_declaration' => [ - 'testMarker' => '/* testNoMatchClassMethodDeclaration */', - ], - 'property_assigment' => [ - 'testMarker' => '/* testNoMatchPropertyAssignment */', - ], - 'class_instantiation' => [ - 'testMarker' => '/* testNoMatchClassInstantiation */', - 'testContent' => 'Match', - ], - 'anon_class_method_declaration' => [ - 'testMarker' => '/* testNoMatchAnonClassMethodDeclaration */', - 'testContent' => 'maTCH', - ], - 'class_declaration' => [ - 'testMarker' => '/* testNoMatchClassDeclaration */', - 'testContent' => 'Match', - ], - 'interface_declaration' => [ - 'testMarker' => '/* testNoMatchInterfaceDeclaration */', - 'testContent' => 'Match', - ], - 'trait_declaration' => [ - 'testMarker' => '/* testNoMatchTraitDeclaration */', - 'testContent' => 'Match', - ], - 'constant_declaration' => [ - 'testMarker' => '/* testNoMatchConstantDeclaration */', - 'testContent' => 'MATCH', - ], - 'function_declaration' => [ - 'testMarker' => '/* testNoMatchFunctionDeclaration */', - ], - 'namespace_declaration' => [ - 'testMarker' => '/* testNoMatchNamespaceDeclaration */', - 'testContent' => 'Match', - ], - 'class_extends_declaration' => [ - 'testMarker' => '/* testNoMatchExtendedClassDeclaration */', - 'testContent' => 'Match', - ], - 'class_implements_declaration' => [ - 'testMarker' => '/* testNoMatchImplementedClassDeclaration */', - 'testContent' => 'Match', - ], - 'use_statement' => [ - 'testMarker' => '/* testNoMatchInUseStatement */', - 'testContent' => 'Match', - ], - 'unsupported_inline_control_structure' => [ - 'testMarker' => '/* testNoMatchMissingCurlies */', - ], - 'unsupported_alternative_syntax' => [ - 'testMarker' => '/* testNoMatchAlternativeSyntax */', - ], - 'live_coding' => [ - 'testMarker' => '/* testLiveCoding */', - ], - ]; - - }//end dataNotAMatchStructure() - - - /** - * Verify that the tokenization of switch structures is not affected by the backfill. - * - * @param string $testMarker The comment prefacing the target token. - * @param int $openerOffset The expected offset of the scope opener in relation to the testMarker. - * @param int $closerOffset The expected offset of the scope closer in relation to the testMarker. - * - * @dataProvider dataSwitchExpression - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testSwitchExpression($testMarker, $openerOffset, $closerOffset) - { - $token = $this->getTargetToken($testMarker, T_SWITCH); - - $this->scopeTestHelper($token, $openerOffset, $closerOffset); - $this->parenthesisTestHelper($token); - - }//end testSwitchExpression() - - - /** - * Data provider. - * - * @see testSwitchExpression() - * - * @return array> - */ - public static function dataSwitchExpression() - { - return [ - 'switch_containing_match' => [ - 'testMarker' => '/* testSwitchContainingMatch */', - 'openerOffset' => 6, - 'closerOffset' => 174, - ], - 'match_containing_switch_1' => [ - 'testMarker' => '/* testSwitchNestedInMatch1 */', - 'openerOffset' => 5, - 'closerOffset' => 63, - ], - 'match_containing_switch_2' => [ - 'testMarker' => '/* testSwitchNestedInMatch2 */', - 'openerOffset' => 5, - 'closerOffset' => 63, - ], - ]; - - }//end dataSwitchExpression() - - - /** - * Verify that the tokenization of a switch case/default structure containing a match structure - * or contained *in* a match structure is not affected by the backfill. - * - * @param string $testMarker The comment prefacing the target token. - * @param int $openerOffset The expected offset of the scope opener in relation to the testMarker. - * @param int $closerOffset The expected offset of the scope closer in relation to the testMarker. - * - * @dataProvider dataSwitchCaseVersusMatch - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testSwitchCaseVersusMatch($testMarker, $openerOffset, $closerOffset) - { - $token = $this->getTargetToken($testMarker, [T_CASE, T_DEFAULT]); - - $this->scopeTestHelper($token, $openerOffset, $closerOffset); - - }//end testSwitchCaseVersusMatch() - - - /** - * Data provider. - * - * @see testSwitchCaseVersusMatch() - * - * @return array> - */ - public static function dataSwitchCaseVersusMatch() - { - return [ - 'switch_with_nested_match_case_1' => [ - 'testMarker' => '/* testMatchWithDefaultNestedInSwitchCase1 */', - 'openerOffset' => 3, - 'closerOffset' => 55, - ], - 'switch_with_nested_match_case_2' => [ - 'testMarker' => '/* testMatchWithDefaultNestedInSwitchCase2 */', - 'openerOffset' => 4, - 'closerOffset' => 21, - ], - 'switch_with_nested_match_default_case' => [ - 'testMarker' => '/* testMatchWithDefaultNestedInSwitchDefault */', - 'openerOffset' => 1, - 'closerOffset' => 38, - ], - 'match_with_nested_switch_case' => [ - 'testMarker' => '/* testSwitchDefaultNestedInMatchCase */', - 'openerOffset' => 1, - 'closerOffset' => 18, - ], - 'match_with_nested_switch_default_case' => [ - 'testMarker' => '/* testSwitchDefaultNestedInMatchDefault */', - 'openerOffset' => 1, - 'closerOffset' => 20, - ], - ]; - - }//end dataSwitchCaseVersusMatch() - - - /** - * Helper function to verify that all scope related array indexes for a control structure - * are set correctly. - * - * @param string $token The control structure token to check. - * @param int $openerOffset The expected offset of the scope opener in relation to - * the control structure token. - * @param int $closerOffset The expected offset of the scope closer in relation to - * the control structure token. - * @param bool $skipScopeCloserCheck Whether to skip the scope closer check. - * This should be set to "true" when testing nested arrow functions, - * where the "inner" arrow function shares a scope closer with the - * "outer" arrow function, as the 'scope_condition' for the scope closer - * of the "inner" arrow function will point to the "outer" arrow function. - * - * @return void - */ - private function scopeTestHelper($token, $openerOffset, $closerOffset, $skipScopeCloserCheck=false) - { - $tokens = $this->phpcsFile->getTokens(); - $tokenArray = $tokens[$token]; - $tokenType = $tokenArray['type']; - $expectedScopeOpener = ($token + $openerOffset); - $expectedScopeCloser = ($token + $closerOffset); - - $this->assertArrayHasKey('scope_condition', $tokenArray, 'Scope condition is not set'); - $this->assertArrayHasKey('scope_opener', $tokenArray, 'Scope opener is not set'); - $this->assertArrayHasKey('scope_closer', $tokenArray, 'Scope closer is not set'); - $this->assertSame($token, $tokenArray['scope_condition'], 'Scope condition is not the '.$tokenType.' token'); - $this->assertSame($expectedScopeOpener, $tokenArray['scope_opener'], 'Scope opener of the '.$tokenType.' token incorrect'); - $this->assertSame($expectedScopeCloser, $tokenArray['scope_closer'], 'Scope closer of the '.$tokenType.' token incorrect'); - - $opener = $tokenArray['scope_opener']; - $this->assertArrayHasKey('scope_condition', $tokens[$opener], 'Opener scope condition is not set'); - $this->assertArrayHasKey('scope_opener', $tokens[$opener], 'Opener scope opener is not set'); - $this->assertArrayHasKey('scope_closer', $tokens[$opener], 'Opener scope closer is not set'); - $this->assertSame($token, $tokens[$opener]['scope_condition'], 'Opener scope condition is not the '.$tokenType.' token'); - $this->assertSame($expectedScopeOpener, $tokens[$opener]['scope_opener'], $tokenType.' opener scope opener token incorrect'); - $this->assertSame($expectedScopeCloser, $tokens[$opener]['scope_closer'], $tokenType.' opener scope closer token incorrect'); - - $closer = $tokenArray['scope_closer']; - $this->assertArrayHasKey('scope_condition', $tokens[$closer], 'Closer scope condition is not set'); - $this->assertArrayHasKey('scope_opener', $tokens[$closer], 'Closer scope opener is not set'); - $this->assertArrayHasKey('scope_closer', $tokens[$closer], 'Closer scope closer is not set'); - if ($skipScopeCloserCheck === false) { - $this->assertSame($token, $tokens[$closer]['scope_condition'], 'Closer scope condition is not the '.$tokenType.' token'); - } - - $this->assertSame($expectedScopeOpener, $tokens[$closer]['scope_opener'], $tokenType.' closer scope opener token incorrect'); - $this->assertSame($expectedScopeCloser, $tokens[$closer]['scope_closer'], $tokenType.' closer scope closer token incorrect'); - - if (($opener + 1) !== $closer) { - for ($i = ($opener + 1); $i < $closer; $i++) { - $this->assertArrayHasKey( - $token, - $tokens[$i]['conditions'], - $tokenType.' condition not added for token belonging to the '.$tokenType.' structure' - ); - } - } - - }//end scopeTestHelper() - - - /** - * Helper function to verify that all parenthesis related array indexes for a control structure - * token are set correctly. - * - * @param int $token The position of the control structure token. - * - * @return void - */ - private function parenthesisTestHelper($token) - { - $tokens = $this->phpcsFile->getTokens(); - $tokenArray = $tokens[$token]; - $tokenType = $tokenArray['type']; - - $this->assertArrayHasKey('parenthesis_owner', $tokenArray, 'Parenthesis owner is not set'); - $this->assertArrayHasKey('parenthesis_opener', $tokenArray, 'Parenthesis opener is not set'); - $this->assertArrayHasKey('parenthesis_closer', $tokenArray, 'Parenthesis closer is not set'); - $this->assertSame($token, $tokenArray['parenthesis_owner'], 'Parenthesis owner is not the '.$tokenType.' token'); - - $opener = $tokenArray['parenthesis_opener']; - $this->assertArrayHasKey('parenthesis_owner', $tokens[$opener], 'Opening parenthesis owner is not set'); - $this->assertSame($token, $tokens[$opener]['parenthesis_owner'], 'Opening parenthesis owner is not the '.$tokenType.' token'); - - $closer = $tokenArray['parenthesis_closer']; - $this->assertArrayHasKey('parenthesis_owner', $tokens[$closer], 'Closing parenthesis owner is not set'); - $this->assertSame($token, $tokens[$closer]['parenthesis_owner'], 'Closing parenthesis owner is not the '.$tokenType.' token'); - - }//end parenthesisTestHelper() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillNumericSeparatorTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillNumericSeparatorTest.inc deleted file mode 100644 index d8559705..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillNumericSeparatorTest.inc +++ /dev/null @@ -1,94 +0,0 @@ - - * @copyright 2019 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; -use PHP_CodeSniffer\Util\Tokens; - -final class BackfillNumericSeparatorTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that numbers using numeric separators are tokenized correctly. - * - * @param string $marker The comment which prefaces the target token in the test file. - * @param string $type The expected token type. - * @param string $value The expected token content. - * - * @dataProvider dataTestBackfill - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testBackfill($marker, $type, $value) - { - $tokens = $this->phpcsFile->getTokens(); - $number = $this->getTargetToken($marker, [T_LNUMBER, T_DNUMBER]); - $tokenArray = $tokens[$number]; - - $this->assertSame(constant($type), $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not '.$type.' (code)'); - $this->assertSame($type, $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not '.$type.' (type)'); - $this->assertSame($value, $tokenArray['content']); - - }//end testBackfill() - - - /** - * Data provider. - * - * @see testBackfill() - * - * @return array> - */ - public static function dataTestBackfill() - { - $testHexType = 'T_LNUMBER'; - if (PHP_INT_MAX < 0xCAFEF00D) { - $testHexType = 'T_DNUMBER'; - } - - $testHexMultipleType = 'T_LNUMBER'; - if (PHP_INT_MAX < 0x42726F776E) { - $testHexMultipleType = 'T_DNUMBER'; - } - - $testIntMoreThanMaxType = 'T_LNUMBER'; - if (PHP_INT_MAX < 10223372036854775807) { - $testIntMoreThanMaxType = 'T_DNUMBER'; - } - - return [ - 'decimal integer' => [ - 'marker' => '/* testSimpleLNumber */', - 'type' => 'T_LNUMBER', - 'value' => '1_000_000_000', - ], - 'float' => [ - 'marker' => '/* testSimpleDNumber */', - 'type' => 'T_DNUMBER', - 'value' => '107_925_284.88', - ], - 'float, scientific notation, negative exponent with sigh' => [ - 'marker' => '/* testFloat */', - 'type' => 'T_DNUMBER', - 'value' => '6.674_083e-11', - ], - 'float, scientific notation, positive exponent with sign' => [ - 'marker' => '/* testFloat2 */', - 'type' => 'T_DNUMBER', - 'value' => '6.674_083e+11', - ], - 'float, scientific notation, positive exponent without sign' => [ - 'marker' => '/* testFloat3 */', - 'type' => 'T_DNUMBER', - 'value' => '1_2.3_4e1_23', - ], - 'hexidecimal integer/float' => [ - 'marker' => '/* testHex */', - 'type' => $testHexType, - 'value' => '0xCAFE_F00D', - ], - 'hexidecimal integer/float with multiple underscores' => [ - 'marker' => '/* testHexMultiple */', - 'type' => $testHexMultipleType, - 'value' => '0x42_72_6F_77_6E', - ], - 'hexidecimal integer' => [ - 'marker' => '/* testHexInt */', - 'type' => 'T_LNUMBER', - 'value' => '0x42_72_6F', - ], - 'binary integer' => [ - 'marker' => '/* testBinary */', - 'type' => 'T_LNUMBER', - 'value' => '0b0101_1111', - ], - 'octal integer' => [ - 'marker' => '/* testOctal */', - 'type' => 'T_LNUMBER', - 'value' => '0137_041', - ], - 'octal integer using explicit octal notation' => [ - 'marker' => '/* testExplicitOctal */', - 'type' => 'T_LNUMBER', - 'value' => '0o137_041', - ], - 'octal integer using explicit octal notation with capital O' => [ - 'marker' => '/* testExplicitOctalCapitalised */', - 'type' => 'T_LNUMBER', - 'value' => '0O137_041', - ], - 'integer more than PHP_INT_MAX becomes a float' => [ - 'marker' => '/* testIntMoreThanMax */', - 'type' => $testIntMoreThanMaxType, - 'value' => '10_223_372_036_854_775_807', - ], - ]; - - }//end dataTestBackfill() - - - /** - * Test that numbers using numeric separators which are considered parse errors and/or - * which aren't relevant to the backfill, do not incorrectly trigger the backfill anyway. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * @param array> $expectedTokens The token type and content of the expected token sequence. - * - * @dataProvider dataNoBackfill - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testNoBackfill($testMarker, $expectedTokens) - { - $tokens = $this->phpcsFile->getTokens(); - $number = $this->getTargetToken($testMarker, [T_LNUMBER, T_DNUMBER]); - - foreach ($expectedTokens as $key => $expectedToken) { - $i = ($number + $key); - $this->assertSame( - $expectedToken['code'], - $tokens[$i]['code'], - 'Token tokenized as '.Tokens::tokenName($tokens[$i]['code']).', not '.Tokens::tokenName($expectedToken['code']) - ); - $this->assertSame($expectedToken['content'], $tokens[$i]['content']); - } - - }//end testNoBackfill() - - - /** - * Data provider. - * - * @see testBackfill() - * - * @return array>>> - */ - public static function dataNoBackfill() - { - return [ - 'invalid: trailing underscore' => [ - 'testMarker' => '/* testInvalid1 */', - 'expectedTokens' => [ - [ - 'code' => T_LNUMBER, - 'content' => '100', - ], - [ - 'code' => T_STRING, - 'content' => '_', - ], - ], - ], - 'invalid: two consecutive underscores' => [ - 'testMarker' => '/* testInvalid2 */', - 'expectedTokens' => [ - [ - 'code' => T_LNUMBER, - 'content' => '1', - ], - [ - 'code' => T_STRING, - 'content' => '__1', - ], - ], - ], - 'invalid: underscore directly before decimal point' => [ - 'testMarker' => '/* testInvalid3 */', - 'expectedTokens' => [ - [ - 'code' => T_LNUMBER, - 'content' => '1', - ], - [ - 'code' => T_STRING, - 'content' => '_', - ], - [ - 'code' => T_DNUMBER, - 'content' => '.0', - ], - ], - ], - 'invalid: underscore directly after decimal point' => [ - 'testMarker' => '/* testInvalid4 */', - 'expectedTokens' => [ - [ - 'code' => T_DNUMBER, - 'content' => '1.', - ], - [ - 'code' => T_STRING, - 'content' => '_0', - ], - ], - ], - 'invalid: hex int - underscore directly after x' => [ - 'testMarker' => '/* testInvalid5 */', - 'expectedTokens' => [ - [ - 'code' => T_LNUMBER, - 'content' => '0', - ], - [ - 'code' => T_STRING, - 'content' => 'x_123', - ], - ], - ], - 'invalid: binary int - underscore directly after b' => [ - 'testMarker' => '/* testInvalid6 */', - 'expectedTokens' => [ - [ - 'code' => T_LNUMBER, - 'content' => '0', - ], - [ - 'code' => T_STRING, - 'content' => 'b_101', - ], - ], - ], - 'invalid: scientific float - underscore directly before e' => [ - 'testMarker' => '/* testInvalid7 */', - 'expectedTokens' => [ - [ - 'code' => T_LNUMBER, - 'content' => '1', - ], - [ - 'code' => T_STRING, - 'content' => '_e2', - ], - ], - ], - 'invalid: scientific float - underscore directly after e' => [ - 'testMarker' => '/* testInvalid8 */', - 'expectedTokens' => [ - [ - 'code' => T_LNUMBER, - 'content' => '1', - ], - [ - 'code' => T_STRING, - 'content' => 'e_2', - ], - ], - ], - 'invalid: space between parts of the number' => [ - 'testMarker' => '/* testInvalid9 */', - 'expectedTokens' => [ - [ - 'code' => T_LNUMBER, - 'content' => '107_925_284', - ], - [ - 'code' => T_WHITESPACE, - 'content' => ' ', - ], - [ - 'code' => T_DNUMBER, - 'content' => '.88', - ], - ], - ], - 'invalid: comment within the number' => [ - 'testMarker' => '/* testInvalid10 */', - 'expectedTokens' => [ - [ - 'code' => T_LNUMBER, - 'content' => '107_925_284', - ], - [ - 'code' => T_COMMENT, - 'content' => '/*comment*/', - ], - [ - 'code' => T_DNUMBER, - 'content' => '.88', - ], - ], - ], - 'invalid: explicit octal int - underscore directly after o' => [ - 'testMarker' => '/* testInvalid11 */', - 'expectedTokens' => [ - [ - 'code' => T_LNUMBER, - 'content' => '0', - ], - [ - 'code' => T_STRING, - 'content' => 'o_137', - ], - ], - ], - 'invalid: explicit octal int - underscore directly after capital O' => [ - 'testMarker' => '/* testInvalid12 */', - 'expectedTokens' => [ - [ - 'code' => T_LNUMBER, - 'content' => '0', - ], - [ - 'code' => T_STRING, - 'content' => 'O_41', - ], - ], - ], - 'calculations should be untouched - int - int' => [ - 'testMarker' => '/* testCalc1 */', - 'expectedTokens' => [ - [ - 'code' => T_LNUMBER, - 'content' => '667_083', - ], - [ - 'code' => T_WHITESPACE, - 'content' => ' ', - ], - [ - 'code' => T_MINUS, - 'content' => '-', - ], - [ - 'code' => T_WHITESPACE, - 'content' => ' ', - ], - [ - 'code' => T_LNUMBER, - 'content' => '11', - ], - ], - ], - 'calculations should be untouched - scientific float + int' => [ - 'testMarker' => '/* test Calc2 */', - 'expectedTokens' => [ - [ - 'code' => T_DNUMBER, - 'content' => '6.674_08e3', - ], - [ - 'code' => T_WHITESPACE, - 'content' => ' ', - ], - [ - 'code' => T_PLUS, - 'content' => '+', - ], - [ - 'code' => T_WHITESPACE, - 'content' => ' ', - ], - [ - 'code' => T_LNUMBER, - 'content' => '11', - ], - ], - ], - ]; - - }//end dataNoBackfill() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillReadonlyTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillReadonlyTest.inc deleted file mode 100644 index eb36e387..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillReadonlyTest.inc +++ /dev/null @@ -1,156 +0,0 @@ -readonly = 'foo'; - - /* testReadonlyPropertyInTernaryOperator */ - $isReadonly = $this->readonly ? true : false; - } -} - -/* testReadonlyUsedAsFunctionName */ -function readonly() {} - -/* testReadonlyUsedAsFunctionNameWithReturnByRef */ -function &readonly() {} - -/* testReadonlyUsedAsNamespaceName */ -namespace Readonly; -/* testReadonlyUsedAsPartOfNamespaceName */ -namespace My\Readonly\Collection; -/* testReadonlyAsFunctionCall */ -$var = readonly($a, $b); -/* testReadonlyAsNamespacedFunctionCall */ -$var = My\NS\readonly($a, $b); -/* testReadonlyAsNamespaceRelativeFunctionCall */ -$var = namespace\ReadOnly($a, $b); -/* testReadonlyAsMethodCall */ -$var = $obj->readonly($a, $b); -/* testReadonlyAsNullsafeMethodCall */ -$var = $obj?->readOnly($a, $b); -/* testReadonlyAsStaticMethodCallWithSpace */ -$var = ClassName::readonly ($a, $b); -/* testClassConstantFetchWithReadonlyAsConstantName */ -echo ClassName::READONLY; - -/* testReadonlyUsedAsFunctionCallWithSpaceBetweenKeywordAndParens */ -$var = readonly /* comment */ (); - -// These test cases are inspired by -// https://github.com/php/php-src/commit/08b75395838b4b42a41e3c70684fa6c6b113eee0 -class ReadonlyWithDisjunctiveNormalForm -{ - /* testReadonlyPropertyDNFTypeUnqualified */ - readonly (B&C)|A $h; - - /* testReadonlyPropertyDNFTypeFullyQualified */ - public readonly (\Fully\Qualified\B&\Full\C)|\Foo\Bar $j; - - /* testReadonlyPropertyDNFTypePartiallyQualified */ - protected readonly (Partially\Qualified&C)|A $l; - - /* testReadonlyPropertyDNFTypeRelativeName */ - private readonly (namespace\Relative&C)|A $n; - - /* testReadonlyPropertyDNFTypeMultipleSets */ - private readonly (A&C)|(B&C)|(C&D) $m; - - /* testReadonlyPropertyDNFTypeWithArray */ - private readonly (B & C)|array $o; - - /* testReadonlyPropertyDNFTypeWithSpacesAndComments */ - private readonly ( B & C /*something*/) | A $q; - - public function __construct( - /* testReadonlyConstructorPropertyPromotionWithDNF */ - private readonly (B&C)|A $b1, - /* testReadonlyConstructorPropertyPromotionWithDNFAndReference */ - readonly (B&C)|A &$b2, - ) {} - - /* testReadonlyUsedAsMethodNameWithDNFParam */ - public function readonly (A&B $param): void {} -} - -/* testReadonlyAnonClassWithParens */ -$anon = new readonly class() {}; - -/* testReadonlyAnonClassWithoutParens */ -$anon = new Readonly class {}; - -/* testReadonlyAnonClassWithCommentsAndWhitespace */ -$anon = new -// comment -READONLY -// phpcs:ignore Stnd.Cat.Sniff -class {}; - -/* testParseErrorLiveCoding */ -// This must be the last test in the file. -readonly diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillReadonlyTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillReadonlyTest.php deleted file mode 100644 index 89dc3e19..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BackfillReadonlyTest.php +++ /dev/null @@ -1,271 +0,0 @@ - - * @copyright 2021 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -final class BackfillReadonlyTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that the "readonly" keyword is tokenized as such. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * @param string $testContent Optional. The token content to look for. - * Defaults to lowercase "readonly". - * - * @dataProvider dataReadonly - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testReadonly($testMarker, $testContent='readonly') - { - $tokens = $this->phpcsFile->getTokens(); - $target = $this->getTargetToken($testMarker, [T_READONLY, T_STRING], $testContent); - $tokenArray = $tokens[$target]; - - $this->assertSame(T_READONLY, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_READONLY (code)'); - $this->assertSame('T_READONLY', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_READONLY (type)'); - - }//end testReadonly() - - - /** - * Data provider. - * - * @see testReadonly() - * - * @return array> - */ - public static function dataReadonly() - { - return [ - 'property declaration, no visibility' => [ - 'testMarker' => '/* testReadonlyProperty */', - ], - 'property declaration, var keyword before' => [ - 'testMarker' => '/* testVarReadonlyProperty */', - ], - 'property declaration, var keyword after' => [ - 'testMarker' => '/* testReadonlyVarProperty */', - ], - 'property declaration, static before' => [ - 'testMarker' => '/* testStaticReadonlyProperty */', - ], - 'property declaration, static after' => [ - 'testMarker' => '/* testReadonlyStaticProperty */', - ], - 'constant declaration, with visibility' => [ - 'testMarker' => '/* testConstReadonlyProperty */', - ], - 'property declaration, missing type' => [ - 'testMarker' => '/* testReadonlyPropertyWithoutType */', - ], - 'property declaration, public before' => [ - 'testMarker' => '/* testPublicReadonlyProperty */', - ], - 'property declaration, protected before' => [ - 'testMarker' => '/* testProtectedReadonlyProperty */', - ], - 'property declaration, private before' => [ - 'testMarker' => '/* testPrivateReadonlyProperty */', - ], - 'property declaration, public after' => [ - 'testMarker' => '/* testPublicReadonlyPropertyWithReadonlyFirst */', - ], - 'property declaration, protected after' => [ - 'testMarker' => '/* testProtectedReadonlyPropertyWithReadonlyFirst */', - ], - 'property declaration, private after' => [ - 'testMarker' => '/* testPrivateReadonlyPropertyWithReadonlyFirst */', - ], - 'property declaration, private before, comments in declaration' => [ - 'testMarker' => '/* testReadonlyWithCommentsInDeclaration */', - ], - 'property declaration, private before, nullable type' => [ - 'testMarker' => '/* testReadonlyWithNullableProperty */', - ], - 'property declaration, private before, union type, null first' => [ - 'testMarker' => '/* testReadonlyNullablePropertyWithUnionTypeHintAndNullFirst */', - ], - 'property declaration, private before, union type, null last' => [ - 'testMarker' => '/* testReadonlyNullablePropertyWithUnionTypeHintAndNullLast */', - ], - 'property declaration, private before, array type' => [ - 'testMarker' => '/* testReadonlyPropertyWithArrayTypeHint */', - ], - 'property declaration, private before, self type' => [ - 'testMarker' => '/* testReadonlyPropertyWithSelfTypeHint */', - ], - 'property declaration, private before, parent type' => [ - 'testMarker' => '/* testReadonlyPropertyWithParentTypeHint */', - ], - 'property declaration, private before, FQN type' => [ - 'testMarker' => '/* testReadonlyPropertyWithFullyQualifiedTypeHint */', - ], - 'property declaration, public before, mixed case' => [ - 'testMarker' => '/* testReadonlyIsCaseInsensitive */', - 'testContent' => 'ReAdOnLy', - ], - 'property declaration, constructor property promotion' => [ - 'testMarker' => '/* testReadonlyConstructorPropertyPromotion */', - ], - 'property declaration, constructor property promotion with reference, mixed case' => [ - 'testMarker' => '/* testReadonlyConstructorPropertyPromotionWithReference */', - 'testContent' => 'ReadOnly', - ], - 'property declaration, in anonymous class' => [ - 'testMarker' => '/* testReadonlyPropertyInAnonymousClass */', - ], - 'property declaration, no visibility, DNF type, unqualified' => [ - 'testMarker' => '/* testReadonlyPropertyDNFTypeUnqualified */', - ], - 'property declaration, public before, DNF type, fully qualified' => [ - 'testMarker' => '/* testReadonlyPropertyDNFTypeFullyQualified */', - ], - 'property declaration, protected before, DNF type, partially qualified' => [ - 'testMarker' => '/* testReadonlyPropertyDNFTypePartiallyQualified */', - ], - 'property declaration, private before, DNF type, namespace relative name' => [ - 'testMarker' => '/* testReadonlyPropertyDNFTypeRelativeName */', - ], - 'property declaration, private before, DNF type, multiple sets' => [ - 'testMarker' => '/* testReadonlyPropertyDNFTypeMultipleSets */', - ], - 'property declaration, private before, DNF type, union with array' => [ - 'testMarker' => '/* testReadonlyPropertyDNFTypeWithArray */', - ], - 'property declaration, private before, DNF type, with spaces and comment' => [ - 'testMarker' => '/* testReadonlyPropertyDNFTypeWithSpacesAndComments */', - ], - 'property declaration, constructor property promotion, DNF type' => [ - 'testMarker' => '/* testReadonlyConstructorPropertyPromotionWithDNF */', - ], - 'property declaration, constructor property promotion, DNF type and reference' => [ - 'testMarker' => '/* testReadonlyConstructorPropertyPromotionWithDNFAndReference */', - ], - 'anon class declaration, with parentheses' => [ - 'testMarker' => '/* testReadonlyAnonClassWithParens */', - ], - 'anon class declaration, without parentheses' => [ - 'testMarker' => '/* testReadonlyAnonClassWithoutParens */', - 'testContent' => 'Readonly', - ], - 'anon class declaration, with comments and whitespace' => [ - 'testMarker' => '/* testReadonlyAnonClassWithCommentsAndWhitespace */', - 'testContent' => 'READONLY', - ], - 'live coding / parse error' => [ - 'testMarker' => '/* testParseErrorLiveCoding */', - ], - ]; - - }//end dataReadonly() - - - /** - * Test that "readonly" when not used as the keyword is still tokenized as `T_STRING`. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * @param string $testContent Optional. The token content to look for. - * Defaults to lowercase "readonly". - * - * @dataProvider dataNotReadonly - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testNotReadonly($testMarker, $testContent='readonly') - { - $tokens = $this->phpcsFile->getTokens(); - $target = $this->getTargetToken($testMarker, [T_READONLY, T_STRING], $testContent); - $tokenArray = $tokens[$target]; - - $this->assertSame(T_STRING, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (code)'); - $this->assertSame('T_STRING', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (type)'); - - }//end testNotReadonly() - - - /** - * Data provider. - * - * @see testNotReadonly() - * - * @return array> - */ - public static function dataNotReadonly() - { - return [ - 'name of a constant, context: declaration using "const" keyword, uppercase' => [ - 'testMarker' => '/* testReadonlyUsedAsClassConstantName */', - 'testContent' => 'READONLY', - ], - 'name of a method, context: declaration' => [ - 'testMarker' => '/* testReadonlyUsedAsMethodName */', - ], - 'name of a property, context: property access' => [ - 'testMarker' => '/* testReadonlyUsedAsPropertyName */', - ], - 'name of a property, context: property access in ternary' => [ - 'testMarker' => '/* testReadonlyPropertyInTernaryOperator */', - ], - 'name of a function, context: declaration' => [ - 'testMarker' => '/* testReadonlyUsedAsFunctionName */', - ], - 'name of a function, context: declaration with return by ref' => [ - 'testMarker' => '/* testReadonlyUsedAsFunctionNameWithReturnByRef */', - ], - 'name of namespace, context: declaration, mixed case' => [ - 'testMarker' => '/* testReadonlyUsedAsNamespaceName */', - 'testContent' => 'Readonly', - ], - 'partial name of namespace, context: declaration, mixed case' => [ - 'testMarker' => '/* testReadonlyUsedAsPartOfNamespaceName */', - 'testContent' => 'Readonly', - ], - 'name of a function, context: call' => [ - 'testMarker' => '/* testReadonlyAsFunctionCall */', - ], - 'name of a namespaced function, context: partially qualified call' => [ - 'testMarker' => '/* testReadonlyAsNamespacedFunctionCall */', - ], - 'name of a function, context: namespace relative call, mixed case' => [ - 'testMarker' => '/* testReadonlyAsNamespaceRelativeFunctionCall */', - 'testContent' => 'ReadOnly', - ], - 'name of a method, context: method call on object' => [ - 'testMarker' => '/* testReadonlyAsMethodCall */', - ], - 'name of a method, context: nullsafe method call on object' => [ - 'testMarker' => '/* testReadonlyAsNullsafeMethodCall */', - 'testContent' => 'readOnly', - ], - 'name of a method, context: static method call with space after' => [ - 'testMarker' => '/* testReadonlyAsStaticMethodCallWithSpace */', - ], - 'name of a constant, context: constant access - uppercase' => [ - 'testMarker' => '/* testClassConstantFetchWithReadonlyAsConstantName */', - 'testContent' => 'READONLY', - ], - 'name of a function, context: call with space and comment between keyword and parens' => [ - 'testMarker' => '/* testReadonlyUsedAsFunctionCallWithSpaceBetweenKeywordAndParens */', - ], - 'name of a method, context: declaration with DNF parameter' => [ - 'testMarker' => '/* testReadonlyUsedAsMethodNameWithDNFParam */', - ], - ]; - - }//end dataNotReadonly() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BitwiseOrTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BitwiseOrTest.inc deleted file mode 100644 index 54ff5082..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BitwiseOrTest.inc +++ /dev/null @@ -1,183 +0,0 @@ - $param | $int; - -/* testTypeUnionArrowReturnType */ -$arrowWithReturnType = fn ($param) : int|null => $param * 10; - -/* testBitwiseOrInArrayKey */ -$array = array( - A | B => /* testBitwiseOrInArrayValue */ B | C -); - -/* testBitwiseOrInShortArrayKey */ -$array = [ - A | B => /* testBitwiseOrInShortArrayValue */ B | C -]; - -/* testBitwiseOrTryCatch */ -try { -} catch ( ExceptionA | ExceptionB $e ) { -} - -/* testBitwiseOrNonArrowFnFunctionCall */ -$obj->fn($something | $else); - -/* testTypeUnionNonArrowFunctionDeclaration */ -function &fn(int|false $something) {} - -/* testTypeUnionPHP82TrueFirst */ -function trueTypeParam(true|null $param) {} - -/* testTypeUnionPHP82TrueMiddle */ -function trueTypeReturn($param): array|true|null {} - -/* testTypeUnionPHP82TrueLast */ -$closure = function ($param): array|true {} - -/* testLiveCoding */ -// Intentional parse error. This has to be the last test in the file. -return function( type| diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BitwiseOrTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BitwiseOrTest.php deleted file mode 100644 index 3c9fa50a..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/BitwiseOrTest.php +++ /dev/null @@ -1,160 +0,0 @@ - - * @copyright 2020 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -final class BitwiseOrTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that non-union type bitwise or tokens are still tokenized as bitwise or. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * - * @dataProvider dataBitwiseOr - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testBitwiseOr($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - $target = $this->getTargetToken($testMarker, [T_BITWISE_OR, T_TYPE_UNION]); - $tokenArray = $tokens[$target]; - - $this->assertSame(T_BITWISE_OR, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_BITWISE_OR (code)'); - $this->assertSame('T_BITWISE_OR', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_BITWISE_OR (type)'); - - }//end testBitwiseOr() - - - /** - * Data provider. - * - * @see testBitwiseOr() - * - * @return array> - */ - public static function dataBitwiseOr() - { - return [ - 'in simple assignment 1' => ['/* testBitwiseOr1 */'], - 'in simple assignment 2' => ['/* testBitwiseOr2 */'], - 'in OO constant default value' => ['/* testBitwiseOrOOConstDefaultValue */'], - 'in property default value' => ['/* testBitwiseOrPropertyDefaultValue */'], - 'in method parameter default value' => ['/* testBitwiseOrParamDefaultValue */'], - 'in return statement' => ['/* testBitwiseOr3 */'], - 'in closure parameter default value' => ['/* testBitwiseOrClosureParamDefault */'], - 'in OO constant default value DNF-like' => ['/* testBitwiseOrOOConstDefaultValueDNF */'], - 'in property default value DNF-like' => ['/* testBitwiseOrPropertyDefaultValueDNF */'], - 'in method parameter default value DNF-like' => ['/* testBitwiseOrParamDefaultValueDNF */'], - 'in arrow function parameter default value' => ['/* testBitwiseOrArrowParamDefault */'], - 'in arrow function return expression' => ['/* testBitwiseOrArrowExpression */'], - 'in long array key' => ['/* testBitwiseOrInArrayKey */'], - 'in long array value' => ['/* testBitwiseOrInArrayValue */'], - 'in short array key' => ['/* testBitwiseOrInShortArrayKey */'], - 'in short array value' => ['/* testBitwiseOrInShortArrayValue */'], - 'in catch condition' => ['/* testBitwiseOrTryCatch */'], - 'in parameter in function call' => ['/* testBitwiseOrNonArrowFnFunctionCall */'], - 'live coding / undetermined' => ['/* testLiveCoding */'], - ]; - - }//end dataBitwiseOr() - - - /** - * Test that bitwise or tokens when used as part of a union type are tokenized as `T_TYPE_UNION`. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * - * @dataProvider dataTypeUnion - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testTypeUnion($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - $target = $this->getTargetToken($testMarker, [T_BITWISE_OR, T_TYPE_UNION]); - $tokenArray = $tokens[$target]; - - $this->assertSame(T_TYPE_UNION, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_TYPE_UNION (code)'); - $this->assertSame('T_TYPE_UNION', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_TYPE_UNION (type)'); - - }//end testTypeUnion() - - - /** - * Data provider. - * - * @see testTypeUnion() - * - * @return array> - */ - public static function dataTypeUnion() - { - return [ - 'type for OO constant' => ['/* testTypeUnionOOConstSimple */'], - 'type for OO constant, reversed modifier order' => ['/* testTypeUnionOOConstReverseModifierOrder */'], - 'type for OO constant, first of multi-union' => ['/* testTypeUnionOOConstMulti1 */'], - 'type for OO constant, middle of multi-union + comments' => ['/* testTypeUnionOOConstMulti2 */'], - 'type for OO constant, last of multi-union' => ['/* testTypeUnionOOConstMulti3 */'], - 'type for OO constant, using namespace relative names' => ['/* testTypeUnionOOConstNamespaceRelative */'], - 'type for OO constant, using partially qualified names' => ['/* testTypeUnionOOConstPartiallyQualified */'], - 'type for OO constant, using fully qualified names' => ['/* testTypeUnionOOConstFullyQualified */'], - 'type for static property' => ['/* testTypeUnionPropertySimple */'], - 'type for static property, reversed modifier order' => ['/* testTypeUnionPropertyReverseModifierOrder */'], - 'type for property, first of multi-union' => ['/* testTypeUnionPropertyMulti1 */'], - 'type for property, middle of multi-union, also comments' => ['/* testTypeUnionPropertyMulti2 */'], - 'type for property, last of multi-union' => ['/* testTypeUnionPropertyMulti3 */'], - 'type for property using namespace relative names' => ['/* testTypeUnionPropertyNamespaceRelative */'], - 'type for property using partially qualified names' => ['/* testTypeUnionPropertyPartiallyQualified */'], - 'type for property using fully qualified names' => ['/* testTypeUnionPropertyFullyQualified */'], - 'type for readonly property' => ['/* testTypeUnionPropertyWithReadOnlyKeyword */'], - 'type for static readonly property' => ['/* testTypeUnionPropertyWithStaticAndReadOnlyKeywords */'], - 'type for readonly property using var keyword' => ['/* testTypeUnionPropertyWithVarAndReadOnlyKeywords */'], - 'type for readonly property, reversed modifier order' => ['/* testTypeUnionPropertyWithReadOnlyKeywordFirst */'], - 'type for readonly property, no visibility' => ['/* testTypeUnionPropertyWithOnlyReadOnlyKeyword */'], - 'type for static property, no visibility' => ['/* testTypeUnionPropertyWithOnlyStaticKeyword */'], - 'type for method parameter' => ['/* testTypeUnionParam1 */'], - 'type for method parameter, first in multi-union' => ['/* testTypeUnionParam2 */'], - 'type for method parameter, last in multi-union' => ['/* testTypeUnionParam3 */'], - 'type for method parameter with namespace relative names' => ['/* testTypeUnionParamNamespaceRelative */'], - 'type for method parameter with partially qualified names' => ['/* testTypeUnionParamPartiallyQualified */'], - 'type for method parameter with fully qualified names' => ['/* testTypeUnionParamFullyQualified */'], - 'type for property in constructor property promotion' => ['/* testTypeUnionConstructorPropertyPromotion */'], - 'return type for method' => ['/* testTypeUnionReturnType */'], - 'return type for method, first of multi-union' => ['/* testTypeUnionAbstractMethodReturnType1 */'], - 'return type for method, last of multi-union' => ['/* testTypeUnionAbstractMethodReturnType2 */'], - 'return type for method with namespace relative names' => ['/* testTypeUnionReturnTypeNamespaceRelative */'], - 'return type for method with partially qualified names' => ['/* testTypeUnionReturnPartiallyQualified */'], - 'return type for method with fully qualified names' => ['/* testTypeUnionReturnFullyQualified */'], - 'type for function parameter with reference' => ['/* testTypeUnionWithReference */'], - 'type for function parameter with spread operator' => ['/* testTypeUnionWithSpreadOperator */'], - 'DNF type for OO constant, union before DNF' => ['/* testTypeUnionConstantTypeUnionBeforeDNF */'], - 'DNF type for property, union after DNF' => ['/* testTypeUnionPropertyTypeUnionAfterDNF */'], - 'DNF type for function param, union before and after DNF' => ['/* testTypeUnionParamUnionBeforeAndAfterDNF */'], - 'DNF type for function return, union after DNF with null' => ['/* testTypeUnionReturnTypeUnionAfterDNF */'], - 'type for closure parameter with illegal nullable' => ['/* testTypeUnionClosureParamIllegalNullable */'], - 'return type for closure' => ['/* testTypeUnionClosureReturn */'], - 'type for arrow function parameter' => ['/* testTypeUnionArrowParam */'], - 'return type for arrow function' => ['/* testTypeUnionArrowReturnType */'], - 'type for function parameter, return by ref' => ['/* testTypeUnionNonArrowFunctionDeclaration */'], - 'type for function param with true type first' => ['/* testTypeUnionPHP82TrueFirst */'], - 'type for function param with true type middle' => ['/* testTypeUnionPHP82TrueMiddle */'], - 'type for function param with true type last' => ['/* testTypeUnionPHP82TrueLast */'], - ]; - - }//end dataTypeUnion() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/ContextSensitiveKeywordsTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/ContextSensitiveKeywordsTest.inc deleted file mode 100644 index 2825f26e..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/ContextSensitiveKeywordsTest.inc +++ /dev/null @@ -1,244 +0,0 @@ - 'a', - 2 => 'b', - /* testMatchDefaultIsKeyword */ default => 'default', -}; - -$closure = /* testFnIsKeyword */ fn () => 'string'; - -function () { - /* testYieldIsKeyword */ yield $f; - /* testYieldFromIsKeyword */ yield from someFunction(); -}; - -/* testDeclareIsKeyword */ declare(ticks=1): -/* testEndDeclareIsKeyword */ enddeclare; - -if (true /* testAndIsKeyword */ and false /* testOrIsKeyword */ or null /* testXorIsKeyword */ xor 0) { - -} - -$anonymousClass = new /* testAnonymousClassIsKeyword */ class {}; -$anonymousClass2 = new class /* testExtendsInAnonymousClassIsKeyword */ extends SomeParent {}; -$anonymousClass3 = new class /* testImplementsInAnonymousClassIsKeyword */ implements SomeInterface {}; - -$instantiated = new /* testClassInstantiationStaticIsKeyword */ static($param); - -class Foo extends /* testNamespaceInNameIsKeyword */ namespace\Exception -{} - -function /* testKeywordAfterFunctionShouldBeString */ eval() {} -function /* testKeywordAfterFunctionByRefShouldBeString */ &switch() {} - -function /* testKeywordStaticAfterFunctionByRefShouldBeString */ &static() {} - -/* testKeywordAsFunctionCallNameShouldBeStringStatic */ static(); -$obj-> /* testKeywordAsMethodCallNameShouldBeStringStatic */ static(); - -$function = /* testStaticIsKeywordBeforeClosure */ static function(/* testStaticIsKeywordWhenParamType */ static $param) {}; -$arrow = /* testStaticIsKeywordBeforeArrow */ static fn(): /* testStaticIsKeywordWhenReturnType */ static => 10; - -/* testKeywordAsFunctionCallNameShouldBeStringStaticDNFLookaLike */ -$obj->static((CONST_A&CONST_B)|CONST_C | $var); - -class DNF { - public /* testStaticIsKeywordPropertyModifierBeforeDNF */ static (DN&F)|null $dnfProp; -} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/ContextSensitiveKeywordsTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/ContextSensitiveKeywordsTest.php deleted file mode 100644 index 103e5ec9..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/ContextSensitiveKeywordsTest.php +++ /dev/null @@ -1,548 +0,0 @@ - - * @copyright 2020 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; -use PHP_CodeSniffer\Util\Tokens; - -final class ContextSensitiveKeywordsTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that context sensitive keyword is tokenized as string when it should be string. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * - * @dataProvider dataStrings - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testStrings($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - $target = $this->getTargetToken($testMarker, (Tokens::$contextSensitiveKeywords + [T_STRING])); - $tokenArray = $tokens[$target]; - - $this->assertSame(T_STRING, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (code)'); - $this->assertSame('T_STRING', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (type)'); - - }//end testStrings() - - - /** - * Data provider. - * - * @see testStrings() - * - * @return array> - */ - public static function dataStrings() - { - return [ - 'constant declaration: abstract' => ['/* testAbstract */'], - 'constant declaration: array' => ['/* testArray */'], - 'constant declaration: as' => ['/* testAs */'], - 'constant declaration: break' => ['/* testBreak */'], - 'constant declaration: callable' => ['/* testCallable */'], - 'constant declaration: case' => ['/* testCase */'], - 'constant declaration: catch' => ['/* testCatch */'], - 'constant declaration: class' => ['/* testClass */'], - 'constant declaration: clone' => ['/* testClone */'], - 'constant declaration: const' => ['/* testConst */'], - 'constant declaration: continue' => ['/* testContinue */'], - 'constant declaration: declare' => ['/* testDeclare */'], - 'constant declaration: default' => ['/* testDefault */'], - 'constant declaration: do' => ['/* testDo */'], - 'constant declaration: echo' => ['/* testEcho */'], - 'constant declaration: else' => ['/* testElse */'], - 'constant declaration: elseif' => ['/* testElseIf */'], - 'constant declaration: empty' => ['/* testEmpty */'], - 'constant declaration: enddeclare' => ['/* testEndDeclare */'], - 'constant declaration: endfor' => ['/* testEndFor */'], - 'constant declaration: endforeach' => ['/* testEndForeach */'], - 'constant declaration: endif' => ['/* testEndIf */'], - 'constant declaration: endswitch' => ['/* testEndSwitch */'], - 'constant declaration: endwhile' => ['/* testEndWhile */'], - 'constant declaration: enum' => ['/* testEnum */'], - 'constant declaration: eval' => ['/* testEval */'], - 'constant declaration: exit' => ['/* testExit */'], - 'constant declaration: extends' => ['/* testExtends */'], - 'constant declaration: final' => ['/* testFinal */'], - 'constant declaration: finally' => ['/* testFinally */'], - 'constant declaration: fn' => ['/* testFn */'], - 'constant declaration: for' => ['/* testFor */'], - 'constant declaration: foreach' => ['/* testForeach */'], - 'constant declaration: function' => ['/* testFunction */'], - 'constant declaration: global' => ['/* testGlobal */'], - 'constant declaration: goto' => ['/* testGoto */'], - 'constant declaration: if' => ['/* testIf */'], - 'constant declaration: implements' => ['/* testImplements */'], - 'constant declaration: include' => ['/* testInclude */'], - 'constant declaration: include_once' => ['/* testIncludeOnce */'], - 'constant declaration: instanceof' => ['/* testInstanceOf */'], - 'constant declaration: insteadof' => ['/* testInsteadOf */'], - 'constant declaration: interface' => ['/* testInterface */'], - 'constant declaration: isset' => ['/* testIsset */'], - 'constant declaration: list' => ['/* testList */'], - 'constant declaration: match' => ['/* testMatch */'], - 'constant declaration: namespace' => ['/* testNamespace */'], - 'constant declaration: new' => ['/* testNew */'], - 'constant declaration: print' => ['/* testPrint */'], - 'constant declaration: private' => ['/* testPrivate */'], - 'constant declaration: protected' => ['/* testProtected */'], - 'constant declaration: public' => ['/* testPublic */'], - 'constant declaration: readonly' => ['/* testReadonly */'], - 'constant declaration: require' => ['/* testRequire */'], - 'constant declaration: require_once' => ['/* testRequireOnce */'], - 'constant declaration: return' => ['/* testReturn */'], - 'constant declaration: static' => ['/* testStatic */'], - 'constant declaration: switch' => ['/* testSwitch */'], - 'constant declaration: throws' => ['/* testThrows */'], - 'constant declaration: trait' => ['/* testTrait */'], - 'constant declaration: try' => ['/* testTry */'], - 'constant declaration: unset' => ['/* testUnset */'], - 'constant declaration: use' => ['/* testUse */'], - 'constant declaration: var' => ['/* testVar */'], - 'constant declaration: while' => ['/* testWhile */'], - 'constant declaration: yield' => ['/* testYield */'], - 'constant declaration: yield_from' => ['/* testYieldFrom */'], - 'constant declaration: and' => ['/* testAnd */'], - 'constant declaration: or' => ['/* testOr */'], - 'constant declaration: xor' => ['/* testXor */'], - - 'constant declaration: array in type' => ['/* testArrayIsTstringInConstType */'], - 'constant declaration: array, name after type' => ['/* testArrayNameForTypedConstant */'], - 'constant declaration: static, name after type' => ['/* testStaticIsNameForTypedConstant */'], - 'constant declaration: private, name after type' => ['/* testPrivateNameForUnionTypedConstant */'], - 'constant declaration: final, name after type' => ['/* testFinalNameForIntersectionTypedConstant */'], - - 'namespace declaration: class' => ['/* testKeywordAfterNamespaceShouldBeString */'], - 'namespace declaration (partial): my' => ['/* testNamespaceNameIsString1 */'], - 'namespace declaration (partial): class' => ['/* testNamespaceNameIsString2 */'], - 'namespace declaration (partial): foreach' => ['/* testNamespaceNameIsString3 */'], - - 'function declaration: eval' => ['/* testKeywordAfterFunctionShouldBeString */'], - 'function declaration with return by ref: switch' => ['/* testKeywordAfterFunctionByRefShouldBeString */'], - 'function declaration with return by ref: static' => ['/* testKeywordStaticAfterFunctionByRefShouldBeString */'], - - 'function call: static' => ['/* testKeywordAsFunctionCallNameShouldBeStringStatic */'], - 'method call: static' => ['/* testKeywordAsMethodCallNameShouldBeStringStatic */'], - 'method call: static with dnf look a like param' => ['/* testKeywordAsFunctionCallNameShouldBeStringStaticDNFLookaLike */'], - ]; - - }//end dataStrings() - - - /** - * Test that context sensitive keyword is tokenized as keyword when it should be keyword. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * @param string $expectedTokenType The expected token type. - * - * @dataProvider dataKeywords - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testKeywords($testMarker, $expectedTokenType) - { - $tokens = $this->phpcsFile->getTokens(); - $target = $this->getTargetToken($testMarker, (Tokens::$contextSensitiveKeywords + [T_ANON_CLASS, T_MATCH_DEFAULT, T_STRING])); - $tokenArray = $tokens[$target]; - - $this->assertSame( - constant($expectedTokenType), - $tokenArray['code'], - 'Token tokenized as '.$tokenArray['type'].', not '.$expectedTokenType.' (code)' - ); - $this->assertSame( - $expectedTokenType, - $tokenArray['type'], - 'Token tokenized as '.$tokenArray['type'].', not '.$expectedTokenType.' (type)' - ); - - }//end testKeywords() - - - /** - * Data provider. - * - * @see testKeywords() - * - * @return array - */ - public static function dataKeywords() - { - return [ - 'namespace: declaration' => [ - 'testMarker' => '/* testNamespaceIsKeyword */', - 'expectedTokenType' => 'T_NAMESPACE', - ], - 'array: default value in const decl' => [ - 'testMarker' => '/* testArrayIsKeywordInConstDefault */', - 'expectedTokenType' => 'T_ARRAY', - ], - 'static: type in constant declaration' => [ - 'testMarker' => '/* testStaticIsKeywordAsConstType */', - 'expectedTokenType' => 'T_STATIC', - ], - 'static: value in constant declaration' => [ - 'testMarker' => '/* testStaticIsKeywordAsConstDefault */', - 'expectedTokenType' => 'T_STATIC', - ], - - 'abstract: class declaration' => [ - 'testMarker' => '/* testAbstractIsKeyword */', - 'expectedTokenType' => 'T_ABSTRACT', - ], - 'class: declaration' => [ - 'testMarker' => '/* testClassIsKeyword */', - 'expectedTokenType' => 'T_CLASS', - ], - 'extends: in class declaration' => [ - 'testMarker' => '/* testExtendsIsKeyword */', - 'expectedTokenType' => 'T_EXTENDS', - ], - 'implements: in class declaration' => [ - 'testMarker' => '/* testImplementsIsKeyword */', - 'expectedTokenType' => 'T_IMPLEMENTS', - ], - 'use: in trait import' => [ - 'testMarker' => '/* testUseIsKeyword */', - 'expectedTokenType' => 'T_USE', - ], - 'insteadof: in trait import' => [ - 'testMarker' => '/* testInsteadOfIsKeyword */', - 'expectedTokenType' => 'T_INSTEADOF', - ], - 'as: in trait import' => [ - 'testMarker' => '/* testAsIsKeyword */', - 'expectedTokenType' => 'T_AS', - ], - 'const: declaration' => [ - 'testMarker' => '/* testConstIsKeyword */', - 'expectedTokenType' => 'T_CONST', - ], - 'private: property declaration' => [ - 'testMarker' => '/* testPrivateIsKeyword */', - 'expectedTokenType' => 'T_PRIVATE', - ], - 'protected: property declaration' => [ - 'testMarker' => '/* testProtectedIsKeyword */', - 'expectedTokenType' => 'T_PROTECTED', - ], - 'public: property declaration' => [ - 'testMarker' => '/* testPublicIsKeyword */', - 'expectedTokenType' => 'T_PUBLIC', - ], - 'var: property declaration' => [ - 'testMarker' => '/* testVarIsKeyword */', - 'expectedTokenType' => 'T_VAR', - ], - 'static: property declaration' => [ - 'testMarker' => '/* testStaticIsKeyword */', - 'expectedTokenType' => 'T_STATIC', - ], - 'readonly: property declaration' => [ - 'testMarker' => '/* testReadonlyIsKeywordForProperty */', - 'expectedTokenType' => 'T_READONLY', - ], - 'final: function declaration' => [ - 'testMarker' => '/* testFinalIsKeyword */', - 'expectedTokenType' => 'T_FINAL', - ], - 'function: declaration' => [ - 'testMarker' => '/* testFunctionIsKeyword */', - 'expectedTokenType' => 'T_FUNCTION', - ], - 'callable: param type declaration' => [ - 'testMarker' => '/* testCallableIsKeyword */', - 'expectedTokenType' => 'T_CALLABLE', - ], - 'readonly: anon class declaration' => [ - 'testMarker' => '/* testReadonlyIsKeywordForAnonClass */', - 'expectedTokenType' => 'T_READONLY', - ], - 'return: statement' => [ - 'testMarker' => '/* testReturnIsKeyword */', - 'expectedTokenType' => 'T_RETURN', - ], - - 'interface: declaration' => [ - 'testMarker' => '/* testInterfaceIsKeyword */', - 'expectedTokenType' => 'T_INTERFACE', - ], - 'trait: declaration' => [ - 'testMarker' => '/* testTraitIsKeyword */', - 'expectedTokenType' => 'T_TRAIT', - ], - 'enum: declaration' => [ - 'testMarker' => '/* testEnumIsKeyword */', - 'expectedTokenType' => 'T_ENUM', - ], - - 'new: named instantiation' => [ - 'testMarker' => '/* testNewIsKeyword */', - 'expectedTokenType' => 'T_NEW', - ], - 'instanceof: comparison' => [ - 'testMarker' => '/* testInstanceOfIsKeyword */', - 'expectedTokenType' => 'T_INSTANCEOF', - ], - 'clone' => [ - 'testMarker' => '/* testCloneIsKeyword */', - 'expectedTokenType' => 'T_CLONE', - ], - - 'if' => [ - 'testMarker' => '/* testIfIsKeyword */', - 'expectedTokenType' => 'T_IF', - ], - 'empty' => [ - 'testMarker' => '/* testEmptyIsKeyword */', - 'expectedTokenType' => 'T_EMPTY', - ], - 'elseif' => [ - 'testMarker' => '/* testElseIfIsKeyword */', - 'expectedTokenType' => 'T_ELSEIF', - ], - 'else' => [ - 'testMarker' => '/* testElseIsKeyword */', - 'expectedTokenType' => 'T_ELSE', - ], - 'endif' => [ - 'testMarker' => '/* testEndIfIsKeyword */', - 'expectedTokenType' => 'T_ENDIF', - ], - - 'for' => [ - 'testMarker' => '/* testForIsKeyword */', - 'expectedTokenType' => 'T_FOR', - ], - 'endfor' => [ - 'testMarker' => '/* testEndForIsKeyword */', - 'expectedTokenType' => 'T_ENDFOR', - ], - - 'foreach' => [ - 'testMarker' => '/* testForeachIsKeyword */', - 'expectedTokenType' => 'T_FOREACH', - ], - 'endforeach' => [ - 'testMarker' => '/* testEndForeachIsKeyword */', - 'expectedTokenType' => 'T_ENDFOREACH', - ], - - 'switch' => [ - 'testMarker' => '/* testSwitchIsKeyword */', - 'expectedTokenType' => 'T_SWITCH', - ], - 'case: in switch' => [ - 'testMarker' => '/* testCaseIsKeyword */', - 'expectedTokenType' => 'T_CASE', - ], - 'default: in switch' => [ - 'testMarker' => '/* testDefaultIsKeyword */', - 'expectedTokenType' => 'T_DEFAULT', - ], - 'endswitch' => [ - 'testMarker' => '/* testEndSwitchIsKeyword */', - 'expectedTokenType' => 'T_ENDSWITCH', - ], - 'break: in switch' => [ - 'testMarker' => '/* testBreakIsKeyword */', - 'expectedTokenType' => 'T_BREAK', - ], - 'continue: in switch' => [ - 'testMarker' => '/* testContinueIsKeyword */', - 'expectedTokenType' => 'T_CONTINUE', - ], - - 'do' => [ - 'testMarker' => '/* testDoIsKeyword */', - 'expectedTokenType' => 'T_DO', - ], - 'while' => [ - 'testMarker' => '/* testWhileIsKeyword */', - 'expectedTokenType' => 'T_WHILE', - ], - 'endwhile' => [ - 'testMarker' => '/* testEndWhileIsKeyword */', - 'expectedTokenType' => 'T_ENDWHILE', - ], - - 'try' => [ - 'testMarker' => '/* testTryIsKeyword */', - 'expectedTokenType' => 'T_TRY', - ], - 'throw: statement' => [ - 'testMarker' => '/* testThrowIsKeyword */', - 'expectedTokenType' => 'T_THROW', - ], - 'catch' => [ - 'testMarker' => '/* testCatchIsKeyword */', - 'expectedTokenType' => 'T_CATCH', - ], - 'finally' => [ - 'testMarker' => '/* testFinallyIsKeyword */', - 'expectedTokenType' => 'T_FINALLY', - ], - - 'global' => [ - 'testMarker' => '/* testGlobalIsKeyword */', - 'expectedTokenType' => 'T_GLOBAL', - ], - 'echo' => [ - 'testMarker' => '/* testEchoIsKeyword */', - 'expectedTokenType' => 'T_ECHO', - ], - 'print: statement' => [ - 'testMarker' => '/* testPrintIsKeyword */', - 'expectedTokenType' => 'T_PRINT', - ], - 'die: statement' => [ - 'testMarker' => '/* testDieIsKeyword */', - 'expectedTokenType' => 'T_EXIT', - ], - 'eval' => [ - 'testMarker' => '/* testEvalIsKeyword */', - 'expectedTokenType' => 'T_EVAL', - ], - 'exit: statement' => [ - 'testMarker' => '/* testExitIsKeyword */', - 'expectedTokenType' => 'T_EXIT', - ], - 'isset' => [ - 'testMarker' => '/* testIssetIsKeyword */', - 'expectedTokenType' => 'T_ISSET', - ], - 'unset' => [ - 'testMarker' => '/* testUnsetIsKeyword */', - 'expectedTokenType' => 'T_UNSET', - ], - - 'include' => [ - 'testMarker' => '/* testIncludeIsKeyword */', - 'expectedTokenType' => 'T_INCLUDE', - ], - 'include_once' => [ - 'testMarker' => '/* testIncludeOnceIsKeyword */', - 'expectedTokenType' => 'T_INCLUDE_ONCE', - ], - 'require' => [ - 'testMarker' => '/* testRequireIsKeyword */', - 'expectedTokenType' => 'T_REQUIRE', - ], - 'require_once' => [ - 'testMarker' => '/* testRequireOnceIsKeyword */', - 'expectedTokenType' => 'T_REQUIRE_ONCE', - ], - - 'list' => [ - 'testMarker' => '/* testListIsKeyword */', - 'expectedTokenType' => 'T_LIST', - ], - 'goto' => [ - 'testMarker' => '/* testGotoIsKeyword */', - 'expectedTokenType' => 'T_GOTO', - ], - 'match' => [ - 'testMarker' => '/* testMatchIsKeyword */', - 'expectedTokenType' => 'T_MATCH', - ], - 'default: in match expression' => [ - 'testMarker' => '/* testMatchDefaultIsKeyword */', - 'expectedTokenType' => 'T_MATCH_DEFAULT', - ], - 'fn' => [ - 'testMarker' => '/* testFnIsKeyword */', - 'expectedTokenType' => 'T_FN', - ], - - 'yield' => [ - 'testMarker' => '/* testYieldIsKeyword */', - 'expectedTokenType' => 'T_YIELD', - ], - 'yield from' => [ - 'testMarker' => '/* testYieldFromIsKeyword */', - 'expectedTokenType' => 'T_YIELD_FROM', - ], - - 'declare' => [ - 'testMarker' => '/* testDeclareIsKeyword */', - 'expectedTokenType' => 'T_DECLARE', - ], - 'enddeclare' => [ - 'testMarker' => '/* testEndDeclareIsKeyword */', - 'expectedTokenType' => 'T_ENDDECLARE', - ], - - 'and: in if' => [ - 'testMarker' => '/* testAndIsKeyword */', - 'expectedTokenType' => 'T_LOGICAL_AND', - ], - 'or: in if' => [ - 'testMarker' => '/* testOrIsKeyword */', - 'expectedTokenType' => 'T_LOGICAL_OR', - ], - 'xor: in if' => [ - 'testMarker' => '/* testXorIsKeyword */', - 'expectedTokenType' => 'T_LOGICAL_XOR', - ], - - 'class: anon class declaration' => [ - 'testMarker' => '/* testAnonymousClassIsKeyword */', - 'expectedTokenType' => 'T_ANON_CLASS', - ], - 'extends: anon class declaration' => [ - 'testMarker' => '/* testExtendsInAnonymousClassIsKeyword */', - 'expectedTokenType' => 'T_EXTENDS', - ], - 'implements: anon class declaration' => [ - 'testMarker' => '/* testImplementsInAnonymousClassIsKeyword */', - 'expectedTokenType' => 'T_IMPLEMENTS', - ], - 'static: class instantiation' => [ - 'testMarker' => '/* testClassInstantiationStaticIsKeyword */', - 'expectedTokenType' => 'T_STATIC', - ], - 'namespace: operator' => [ - 'testMarker' => '/* testNamespaceInNameIsKeyword */', - 'expectedTokenType' => 'T_NAMESPACE', - ], - - 'static: closure declaration' => [ - 'testMarker' => '/* testStaticIsKeywordBeforeClosure */', - 'expectedTokenType' => 'T_STATIC', - ], - 'static: parameter type (illegal)' => [ - 'testMarker' => '/* testStaticIsKeywordWhenParamType */', - 'expectedTokenType' => 'T_STATIC', - ], - 'static: arrow function declaration' => [ - 'testMarker' => '/* testStaticIsKeywordBeforeArrow */', - 'expectedTokenType' => 'T_STATIC', - ], - 'static: return type for arrow function' => [ - 'testMarker' => '/* testStaticIsKeywordWhenReturnType */', - 'expectedTokenType' => 'T_STATIC', - ], - 'static: property modifier before DNF' => [ - 'testMarker' => '/* testStaticIsKeywordPropertyModifierBeforeDNF */', - 'expectedTokenType' => 'T_STATIC', - ], - ]; - - }//end dataKeywords() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DNFTypesParseError1Test.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DNFTypesParseError1Test.inc deleted file mode 100644 index a6cf511c..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DNFTypesParseError1Test.inc +++ /dev/null @@ -1,17 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -final class DNFTypesParseError1Test extends AbstractTokenizerTestCase -{ - - - /** - * Document handling for a DNF type / parse error where the last significant type specific token is an open parenthesis. - * - * @param string $testMarker The comment prefacing the target token. - * - * @dataProvider dataBrokenDNFTypeCantEndOnOpenParenthesis - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testBrokenDNFTypeCantEndOnOpenParenthesis($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - - $openPtr = $this->getTargetToken($testMarker, [T_OPEN_PARENTHESIS, T_TYPE_OPEN_PARENTHESIS], '('); - $token = $tokens[$openPtr]; - - // Verify that the open parenthesis is tokenized as a normal parenthesis. - $this->assertSame(T_OPEN_PARENTHESIS, $token['code'], 'Token tokenized as '.$token['type'].', not T_OPEN_PARENTHESIS (code)'); - $this->assertSame('T_OPEN_PARENTHESIS', $token['type'], 'Token tokenized as '.$token['type'].', not T_OPEN_PARENTHESIS (type)'); - - // Verify that the type union is still tokenized as T_BITWISE_OR as the type declaration - // is not recognized as a valid type declaration. - $unionPtr = $this->getTargetToken($testMarker, [T_BITWISE_OR, T_TYPE_UNION], '|'); - $token = $tokens[$unionPtr]; - - $this->assertSame(T_BITWISE_OR, $token['code'], 'Token tokenized as '.$token['type'].', not T_BITWISE_OR (code)'); - $this->assertSame('T_BITWISE_OR', $token['type'], 'Token tokenized as '.$token['type'].', not T_BITWISE_OR (type)'); - - }//end testBrokenDNFTypeCantEndOnOpenParenthesis() - - - /** - * Data provider. - * - * @see testBrokenDNFTypeCantEndOnOpenParenthesis() - * - * @return array> - */ - public static function dataBrokenDNFTypeCantEndOnOpenParenthesis() - { - return [ - 'OO const type' => ['/* testBrokenConstDNFTypeEndOnOpenParenthesis */'], - 'OO property type' => ['/* testBrokenPropertyDNFTypeEndOnOpenParenthesis */'], - 'Parameter type' => ['/* testBrokenParamDNFTypeEndOnOpenParenthesis */'], - 'Return type' => ['/* testBrokenReturnDNFTypeEndOnOpenParenthesis */'], - ]; - - }//end dataBrokenDNFTypeCantEndOnOpenParenthesis() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DNFTypesParseError2Test.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DNFTypesParseError2Test.inc deleted file mode 100644 index 79297582..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DNFTypesParseError2Test.inc +++ /dev/null @@ -1,48 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; -use PHP_CodeSniffer\Util\Tokens; - -final class DNFTypesParseError2Test extends AbstractTokenizerTestCase -{ - - - /** - * Document handling for a DNF type / parse error where the type declaration contains an unmatched parenthesis. - * - * @param string $testMarker The comment prefacing the target token. - * - * @dataProvider dataBrokenDNFTypeParensShouldAlwaysBeAPairMissingCloseParens - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testBrokenDNFTypeParensShouldAlwaysBeAPairMissingCloseParens($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - - // Verify that the type union is still tokenized as T_BITWISE_OR as the type declaration - // is not recognized as a valid type declaration. - $unionPtr = $this->getTargetToken($testMarker, [T_BITWISE_OR, T_TYPE_UNION], '|'); - $token = $tokens[$unionPtr]; - - $this->assertSame(T_BITWISE_OR, $token['code'], 'Token tokenized as '.$token['type'].', not T_BITWISE_OR (code)'); - $this->assertSame('T_BITWISE_OR', $token['type'], 'Token tokenized as '.$token['type'].', not T_BITWISE_OR (type)'); - - // Verify that the unmatched open parenthesis is tokenized as a normal parenthesis. - $openPtr = $this->getTargetToken($testMarker, [T_OPEN_PARENTHESIS, T_TYPE_OPEN_PARENTHESIS], '('); - $token = $tokens[$openPtr]; - - $this->assertSame(T_OPEN_PARENTHESIS, $token['code'], 'Token tokenized as '.$token['type'].', not T_OPEN_PARENTHESIS (code)'); - $this->assertSame('T_OPEN_PARENTHESIS', $token['type'], 'Token tokenized as '.$token['type'].', not T_OPEN_PARENTHESIS (type)'); - - // Verify that the type intersection is still tokenized as T_BITWISE_AND as the type declaration - // is not recognized as a valid type declaration. - $intersectPtr = $this->getTargetToken($testMarker, [T_BITWISE_AND, T_TYPE_INTERSECTION], '&'); - $token = $tokens[$intersectPtr]; - - $this->assertSame(T_BITWISE_AND, $token['code'], 'Token tokenized as '.$token['type'].', not T_BITWISE_AND (code)'); - $this->assertSame('T_BITWISE_AND', $token['type'], 'Token tokenized as '.$token['type'].', not T_BITWISE_AND (type)'); - - }//end testBrokenDNFTypeParensShouldAlwaysBeAPairMissingCloseParens() - - - /** - * Data provider. - * - * @see testBrokenDNFTypeParensShouldAlwaysBeAPairMissingCloseParens() - * - * @return array> - */ - public static function dataBrokenDNFTypeParensShouldAlwaysBeAPairMissingCloseParens() - { - return [ - 'OO const type' => ['/* testBrokenConstDNFTypeParensMissingClose */'], - 'OO property type' => ['/* testBrokenPropertyDNFTypeParensMissingClose */'], - 'Parameter type' => ['/* testBrokenParamDNFTypeParensMissingClose */'], - 'Return type' => ['/* testBrokenReturnDNFTypeParensMissingClose */'], - ]; - - }//end dataBrokenDNFTypeParensShouldAlwaysBeAPairMissingCloseParens() - - - /** - * Document handling for a DNF type / parse error where the type declaration contains an unmatched parenthesis. - * - * @param string $testMarker The comment prefacing the target token. - * - * @dataProvider dataBrokenDNFTypeParensShouldAlwaysBeAPairMissingOpenParens - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testBrokenDNFTypeParensShouldAlwaysBeAPairMissingOpenParens($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - - // Verify that the type union is still tokenized as T_BITWISE_OR as the type declaration - // is not recognized as a valid type declaration. - $unionPtr = $this->getTargetToken($testMarker, [T_BITWISE_OR, T_TYPE_UNION], '|'); - $token = $tokens[$unionPtr]; - - $this->assertSame(T_BITWISE_OR, $token['code'], 'Token tokenized as '.$token['type'].', not T_BITWISE_OR (code)'); - $this->assertSame('T_BITWISE_OR', $token['type'], 'Token tokenized as '.$token['type'].', not T_BITWISE_OR (type)'); - - // Verify that the unmatched open parenthesis is tokenized as a normal parenthesis. - $closePtr = $this->getTargetToken($testMarker, [T_CLOSE_PARENTHESIS, T_TYPE_CLOSE_PARENTHESIS], ')'); - $token = $tokens[$closePtr]; - - $this->assertSame(T_CLOSE_PARENTHESIS, $token['code'], 'Token tokenized as '.$token['type'].', not T_CLOSE_PARENTHESIS (code)'); - $this->assertSame('T_CLOSE_PARENTHESIS', $token['type'], 'Token tokenized as '.$token['type'].', not T_CLOSE_PARENTHESIS (type)'); - - // Verify that the type intersection is still tokenized as T_BITWISE_AND as the type declaration - // is not recognized as a valid type declaration. - $intersectPtr = $this->getTargetToken($testMarker, [T_BITWISE_AND, T_TYPE_INTERSECTION], '&'); - $token = $tokens[$intersectPtr]; - - $this->assertSame(T_BITWISE_AND, $token['code'], 'Token tokenized as '.$token['type'].', not T_BITWISE_AND (code)'); - $this->assertSame('T_BITWISE_AND', $token['type'], 'Token tokenized as '.$token['type'].', not T_BITWISE_AND (type)'); - - }//end testBrokenDNFTypeParensShouldAlwaysBeAPairMissingOpenParens() - - - /** - * Data provider. - * - * @see testBrokenDNFTypeParensShouldAlwaysBeAPairMissingOpenParens() - * - * @return array> - */ - public static function dataBrokenDNFTypeParensShouldAlwaysBeAPairMissingOpenParens() - { - return [ - 'OO const type' => ['/* testBrokenConstDNFTypeParensMissingOpen */'], - 'OO property type' => ['/* testBrokenPropertyDNFTypeParensMissingOpen */'], - 'Parameter type' => ['/* testBrokenParamDNFTypeParensMissingOpen */'], - 'Return type' => ['/* testBrokenReturnDNFTypeParensMissingOpen */'], - ]; - - }//end dataBrokenDNFTypeParensShouldAlwaysBeAPairMissingOpenParens() - - - /** - * Document handling for a DNF type / parse error where the type declaration contains an unmatched parenthesis, - * but also contains a set of matched parentheses. - * - * @param string $testMarker The comment prefacing the target token. - * - * @dataProvider dataBrokenDNFTypeParensShouldAlwaysBeAPairMatchedAndUnmatched - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testBrokenDNFTypeParensShouldAlwaysBeAPairMatchedAndUnmatched($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - $startPtr = $this->getTargetToken($testMarker, [T_OPEN_PARENTHESIS, T_TYPE_OPEN_PARENTHESIS], '('); - - for ($i = $startPtr; $i < $this->phpcsFile->numTokens; $i++) { - if (isset(Tokens::$emptyTokens[$tokens[$i]['code']]) === true) { - continue; - } - - if ($tokens[$i]['code'] === T_EQUAL - || $tokens[$i]['code'] === T_VARIABLE - || $tokens[$i]['code'] === T_OPEN_CURLY_BRACKET - ) { - // Reached the end of the type. - break; - } - - $errorPrefix = 'Token tokenized as '.$tokens[$i]['type']; - - // Verify that type tokens have not been retokenized to `T_TYPE_*` tokens for broken type declarations. - switch ($tokens[$i]['content']) { - case '|': - $this->assertSame(T_BITWISE_OR, $tokens[$i]['code'], $errorPrefix.', not T_BITWISE_OR (code)'); - $this->assertSame('T_BITWISE_OR', $tokens[$i]['type'], $errorPrefix.', not T_BITWISE_OR (type)'); - break; - - case '&': - $this->assertSame(T_BITWISE_AND, $tokens[$i]['code'], $errorPrefix.', not T_BITWISE_AND (code)'); - $this->assertSame('T_BITWISE_AND', $tokens[$i]['type'], $errorPrefix.', not T_BITWISE_AND (type)'); - break; - - case '(': - // Verify that the open parenthesis is tokenized as a normal parenthesis. - $this->assertSame(T_OPEN_PARENTHESIS, $tokens[$i]['code'], $errorPrefix.', not T_OPEN_PARENTHESIS (code)'); - $this->assertSame('T_OPEN_PARENTHESIS', $tokens[$i]['type'], $errorPrefix.', not T_OPEN_PARENTHESIS (type)'); - break; - - case ')': - $this->assertSame(T_CLOSE_PARENTHESIS, $tokens[$i]['code'], $errorPrefix.', not T_CLOSE_PARENTHESIS (code)'); - $this->assertSame('T_CLOSE_PARENTHESIS', $tokens[$i]['type'], $errorPrefix.', not T_CLOSE_PARENTHESIS (type)'); - break; - - default: - break; - }//end switch - }//end for - - }//end testBrokenDNFTypeParensShouldAlwaysBeAPairMatchedAndUnmatched() - - - /** - * Data provider. - * - * @see testBrokenDNFTypeParensShouldAlwaysBeAPairMatchedAndUnmatched() - * - * @return array> - */ - public static function dataBrokenDNFTypeParensShouldAlwaysBeAPairMatchedAndUnmatched() - { - return [ - 'OO const type - missing one close parenthesis' => ['/* testBrokenConstDNFTypeParensMissingOneClose */'], - 'OO property type - missing one open parenthesis' => ['/* testBrokenPropertyDNFTypeParensMissingOneOpen */'], - 'Parameter type - missing one close parenthesis' => ['/* testBrokenParamDNFTypeParensMissingOneClose */'], - 'Return type - missing one open parenthesis' => ['/* testBrokenReturnDNFTypeParensMissingOneOpen */'], - ]; - - }//end dataBrokenDNFTypeParensShouldAlwaysBeAPairMatchedAndUnmatched() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DNFTypesTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DNFTypesTest.inc deleted file mode 100644 index 5043ab7d..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DNFTypesTest.inc +++ /dev/null @@ -1,224 +0,0 @@ - 10 ) {} - -/* testParensOwnerFor */ -for ($i =0; $i < /* testParensNoOwnerInForCondition */ ( CONST_A & CONST_B ); $i++ ); - -/* testParensOwnerMatch */ -$match = match(CONST_A & CONST_B) { - default => $a, -}; - -/* testParensOwnerArray */ -$array = array ( - 'text', - \CONST_A & \Fully\Qualified\CONST_B, - /* testParensNoOwnerFunctionCallWithAmpersandInCallable */ - do_something($a, /* testParensOwnerArrowFn */ fn($b) => $a & $b, $c), -); - -/* testParensOwnerListWithRefVars */ -list(&$a, &$b) = $array; - -/* testParensNoOwnerFunctionCallwithDNFLookALikeParam */ -$obj->static((CONST_A&CONST_B)|CONST_C | $var); - -/* testParensNoOwnerFunctionCallWithDNFLookALikeNamedParamPlain */ -callMe(label: false); - -/* testParensNoOwnerFunctionCallWithDNFLookALikeNamedParamUnion */ -callMe(label: CONST_A | CONST_B); - -/* testParensNoOwnerFunctionCallWithDNFLookALikeNamedParamIntersect */ -callMe(label: CONST_A & CONST_B); - -/* testSwitchControlStructureCondition */ -switch (CONST_A | CONST_B) { - /* testFunctionCallInSwitchCaseCondition */ - case get_bool(): - /* testFunctionCallInSwitchCaseBody */ - \Name\functionInSwitch(); - break; - - default: - /* testFunctionCallInSwitchDefaultBody */ - functionInSwitch(); - break; -} - -/* testIfAlternativeSyntaxCondition */ -if (true): - /* testFunctionCallInIfBody */ - \B\call(); -/* testElseIfAlternativeSyntaxCondition */ -elseif (10): - /* testFunctionCallInElseIfBody */ - C\call(); -endif; - -gotolabel: - /* testFunctionCallInGotoBody */ - \doSomething(); - - -/* - * DNF parentheses. - */ - -abstract class DNFTypes { - /* testDNFTypeOOConstUnqualifiedClasses */ - public const (A&B)|D UNQUALIFIED = new Foo; - - /* testDNFTypeOOConstReverseModifierOrder */ - protected final const int|(Foo&Bar)|float MODIFIERS_REVERSED /* testParensNoOwnerOOConstDefaultValue */ = (E_WARNING & E_NOTICE) | E_DEPRECATED; - - const - /* testDNFTypeOOConstMulti1 */ - (A&B) | - /* testDNFTypeOOConstMulti2 */ - (C&D) | // phpcs:ignore Stnd.Cat.Sniff - /* testDNFTypeOOConstMulti3 */ - (Y&D) - | null MULTI_DNF = null; - - /* testDNFTypeOOConstNamespaceRelative */ - final protected const (namespace\Sub\NameA&namespace\Sub\NameB)|namespace\Sub\NameC NAMESPACE_RELATIVE = new namespace\Sub\NameB; - - /* testDNFTypeOOConstPartiallyQualified */ - const Partially\Qualified\NameC|(Partially\Qualified\NameA&Partially\Qualified\NameB) PARTIALLY_QUALIFIED = new Partially\Qualified\NameA; - - /* testDNFTypeOOConstFullyQualified */ - const (\Fully\Qualified\NameA&\Fully\Qualified\NameB)|\Fully\Qualified\NameC FULLY_QUALIFIED = new \Fully\Qualified\NameB(); - - /* testDNFTypePropertyUnqualifiedClasses */ - public static (Foo&Bar)|array $obj; - - /* testDNFTypePropertyReverseModifierOrder */ - static protected string|(A&B)|int $dnf /* testParensNoOwnerPropertyDefaultValue1 */ = ( E_WARNING & E_NOTICE ) | /* testParensNoOwnerPropertyDefaultValue2 */ (E_ALL & E_DEPRECATED); - - private - /* testDNFTypePropertyMultiNamespaceRelative */ - (namespace\Sub\NameA&namespace\Sub\NameB) | - /* testDNFTypePropertyMultiPartiallyQualified */ - (Partially\Qualified\NameA&Partially\Qualified\NameB) | // phpcs:ignore Stnd.Cat.Sniff - false - /* testDNFTypePropertyMultiFullyQualified */ - | (\Fully\Qualified\NameA&\Fully\Qualified\NameB) $multiDnf; - - /* testDNFTypePropertyWithReadOnlyKeyword1 */ - protected readonly (A&B) | /* testDNFTypePropertyWithReadOnlyKeyword2 */ (C&D) $readonly; - - /* testDNFTypePropertyWithStaticAndReadOnlyKeywords */ - static readonly (A&B&C)|array $staticReadonly; - - /* testDNFTypePropertyWithOnlyStaticKeyword */ - static (A&B&C)|true $onlyStaticModified; - - public function paramTypes( - /* testDNFTypeParam1WithAttribute */ - #[MyAttribute] - (\Foo&Bar)|int|float $paramA /* testParensNoOwnerParamDefaultValue */ = SOMETHING | (CONSTANT_A & CONSTANT_B), - - /* testDNFTypeParam2 */ - (Foo&\Bar) /* testDNFTypeParam3 */ |(Baz&Fop) &...$paramB, - ) { - /* testParensNoOwnerInReturnValue1 */ - return ( - /* testParensNoOwnerInReturnValue2 */ - ($a1 & $b1) | - /* testParensNoOwnerInReturnValue3 */ - ($a2 & $b2) - ) + $c; - } - - public function identifierNames( - /* testDNFTypeParamNamespaceRelative */ - (namespace\Sub\NameA&namespace\Sub\NameB)|false $paramA, - /* testDNFTypeParamPartiallyQualified */ - Partially\Qualified\NameC|(Partially\Qualified\NameA&Partially\Qualified\NameB) $paramB, - /* testDNFTypeParamFullyQualified */ - name|(\Fully\Qualified\NameA&\Fully\Qualified\NameB) $paramC, - ) {} - - public function __construct( - /* testDNFTypeConstructorPropertyPromotion1 */ - public (A&B)| /* testDNFTypeConstructorPropertyPromotion2 */ (A&D) $property - ) {} - - public function returnType()/* testDNFTypeReturnType1 */ : A|(B&D)|/* testDNFTypeReturnType2 */(B&W)|null {} - - abstract public function abstractMethod(): /* testDNFTypeAbstractMethodReturnType1 */ (X&Y) /* testDNFTypeAbstractMethodReturnType2 */ |(W&Z); - - public function identifierNamesReturnRelative( - ) : /* testDNFTypeReturnTypeNamespaceRelative */ (namespace\Sub\NameA&namespace\Sub\NameB)|namespace\Sub\NameC {} - - public function identifierNamesReturnPQ( - ) : /* testDNFTypeReturnPartiallyQualified */Partially\Qualified\NameA|(Partially\Qualified\NameB&Partially\Qualified\NameC) {} - - // Illegal type: segments which are strict subsets of others are disallowed, but that's not the concern of the tokenizer. - public function identifierNamesReturnFQ( - ) /* testDNFTypeReturnFullyQualified */ : (\Fully\Qualified\NameA&\Fully\Qualified\NameB)|\Fully\Qualified\NameB {} -} - -function globalFunctionWithSpreadAndReference( - /* testDNFTypeWithReference */ - float|(B&A) &$paramA, - /* testDNFTypeWithSpreadOperator */ - string|(B&D) ...$paramB -) {} - - -$closureWithParamType = function ( /* testDNFTypeClosureParamIllegalNullable */ ?(A&B)|bool $string) {}; - -/* testParensOwnerClosureAmpersandInDefaultValue */ -$closureWithReturnType = function ($string = NONSENSE & FAKE) /* testDNFTypeClosureReturn */ : (\Package\MyA&PackageB)|null {}; - -$closureWithUseAndReturnType = function ($foo) use ($a) /* testDNFTypeClosureWithUseReturn */ : null|(Foo&\Bar)|false {}; - -/* testParensOwnerArrowDNFUsedWithin */ -$arrowWithParamType = fn ( - /* testDNFTypeArrowParam */ - int|(A&B&C)|array $param, - /* testParensNoOwnerAmpersandInDefaultValue */ ?int $int = (CONSTA & CONSTB )| CONST_C -) - /* testParensNoOwnerInArrowReturnExpression */ - => ($param & $foo ) | $int; - -$arrowWithReturnType = fn ($param) : /* testDNFTypeArrowReturnType */ int|(A&B) => $param * 10; - -$arrowWithParamReturnByRef = fn &( - /* testDNFTypeArrowParamWithReturnByRef */ - (A&B)|null $param -) => $param * 10; - -function InvalidSyntaxes( - /* testDNFTypeParamIllegalUnnecessaryParens */ - (A&B) $parensNotNeeded, - - /* testDNFTypeParamIllegalIntersectUnionReversed */ - A&(B|D) $onlyIntersectAllowedWithinParensAndUnionOutside, - - /* testDNFTypeParamIllegalNestedParens */ - A|(B&(D|W)|null) $nestedParensNotAllowed, -) {} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DNFTypesTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DNFTypesTest.php deleted file mode 100644 index 75e1b1db..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DNFTypesTest.php +++ /dev/null @@ -1,481 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; -use PHP_CodeSniffer\Util\Tokens; - -final class DNFTypesTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that parentheses when **not** used in a type declaration are correctly tokenized. - * - * @param string $testMarker The comment prefacing the target token. - * @param bool $skipCheckInside Optional. Skip checking correct token type inside the parentheses. - * Use judiciously for combined normal + DNF tests only. - * - * @dataProvider dataNormalParentheses - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testNormalParentheses($testMarker, $skipCheckInside=false) - { - $tokens = $this->phpcsFile->getTokens(); - - $openPtr = $this->getTargetToken($testMarker, [T_OPEN_PARENTHESIS, T_TYPE_OPEN_PARENTHESIS]); - $opener = $tokens[$openPtr]; - - $this->assertSame('(', $opener['content'], 'Content of type open parenthesis is not "("'); - $this->assertSame(T_OPEN_PARENTHESIS, $opener['code'], 'Token tokenized as '.$opener['type'].', not T_OPEN_PARENTHESIS (code)'); - $this->assertSame('T_OPEN_PARENTHESIS', $opener['type'], 'Token tokenized as '.$opener['type'].', not T_OPEN_PARENTHESIS (type)'); - - $closePtr = $opener['parenthesis_closer']; - $closer = $tokens[$closePtr]; - - $this->assertSame(')', $closer['content'], 'Content of type close parenthesis is not ")"'); - $this->assertSame(T_CLOSE_PARENTHESIS, $closer['code'], 'Token tokenized as '.$closer['type'].', not T_CLOSE_PARENTHESIS (code)'); - $this->assertSame('T_CLOSE_PARENTHESIS', $closer['type'], 'Token tokenized as '.$closer['type'].', not T_CLOSE_PARENTHESIS (type)'); - - if ($skipCheckInside === false) { - for ($i = ($openPtr + 1); $i < $closePtr; $i++) { - // If there are ampersands, make sure these are tokenized as bitwise and. - if ($tokens[$i]['content'] === '&') { - $this->assertSame(T_BITWISE_AND, $tokens[$i]['code'], 'Token tokenized as '.$tokens[$i]['type'].', not T_BITWISE_AND (code)'); - $this->assertSame('T_BITWISE_AND', $tokens[$i]['type'], 'Token tokenized as '.$tokens[$i]['type'].', not T_BITWISE_AND (type)'); - } - - // If there are pipes, make sure these are tokenized as bitwise or. - if ($tokens[$i]['content'] === '|') { - $this->assertSame(T_BITWISE_OR, $tokens[$i]['code'], 'Token tokenized as '.$tokens[$i]['type'].', not T_BITWISE_OR (code)'); - $this->assertSame('T_BITWISE_OR', $tokens[$i]['type'], 'Token tokenized as '.$tokens[$i]['type'].', not T_BITWISE_OR (type)'); - } - } - } - - $before = $this->phpcsFile->findPrevious(Tokens::$emptyTokens, ($openPtr - 1), null, true); - if ($before !== false && $tokens[$before]['content'] === '|') { - $this->assertSame( - T_BITWISE_OR, - $tokens[$before]['code'], - 'Token before tokenized as '.$tokens[$before]['type'].', not T_BITWISE_OR (code)' - ); - $this->assertSame( - 'T_BITWISE_OR', - $tokens[$before]['type'], - 'Token before tokenized as '.$tokens[$before]['type'].', not T_BITWISE_OR (type)' - ); - } - - $after = $this->phpcsFile->findNext(Tokens::$emptyTokens, ($closePtr + 1), null, true); - if ($after !== false && $tokens[$after]['content'] === '|') { - $this->assertSame( - T_BITWISE_OR, - $tokens[$after]['code'], - 'Token after tokenized as '.$tokens[$after]['type'].', not T_BITWISE_OR (code)' - ); - $this->assertSame( - 'T_BITWISE_OR', - $tokens[$after]['type'], - 'Token after tokenized as '.$tokens[$after]['type'].', not T_BITWISE_OR (type)' - ); - } - - }//end testNormalParentheses() - - - /** - * Data provider. - * - * @see testNormalParentheses() - * - * @return array> - */ - public static function dataNormalParentheses() - { - // "Owner" offsets are relative to the open parenthesis. - return [ - 'parens without owner' => [ - 'testMarker' => '/* testParensNoOwner */', - ], - 'parens without owner in ternary then' => [ - 'testMarker' => '/* testParensNoOwnerInTernary */', - ], - 'parens without owner in short ternary' => [ - 'testMarker' => '/* testParensNoOwnerInShortTernary */', - ], - 'parens with owner: function; & in default value' => [ - 'testMarker' => '/* testParensOwnerFunctionAmpersandInDefaultValue */', - ], - 'parens with owner: closure; param declared by & ref' => [ - 'testMarker' => '/* testParensOwnerClosureAmpersandParamRef */', - ], - 'parens with owner: if' => [ - 'testMarker' => '/* testParensOwnerIf */', - ], - 'parens without owner in if condition' => [ - 'testMarker' => '/* testParensNoOwnerInIfCondition */', - ], - 'parens with owner: for' => [ - 'testMarker' => '/* testParensOwnerFor */', - ], - 'parens without owner in for condition' => [ - 'testMarker' => '/* testParensNoOwnerInForCondition */', - ], - 'parens with owner: match' => [ - 'testMarker' => '/* testParensOwnerMatch */', - ], - 'parens with owner: array' => [ - 'testMarker' => '/* testParensOwnerArray */', - ], - 'parens without owner in array; function call with & in callable' => [ - 'testMarker' => '/* testParensNoOwnerFunctionCallWithAmpersandInCallable */', - ], - 'parens with owner: fn; & in return value' => [ - 'testMarker' => '/* testParensOwnerArrowFn */', - ], - 'parens with owner: list with reference vars' => [ - 'testMarker' => '/* testParensOwnerListWithRefVars */', - ], - 'parens without owner, function call with DNF look-a-like param' => [ - 'testMarker' => '/* testParensNoOwnerFunctionCallwithDNFLookALikeParam */', - ], - 'parens without owner, function call, named param' => [ - 'testMarker' => '/* testParensNoOwnerFunctionCallWithDNFLookALikeNamedParamPlain */', - ], - 'parens without owner, function call, named param + bitwise or' => [ - 'testMarker' => '/* testParensNoOwnerFunctionCallWithDNFLookALikeNamedParamUnion */', - ], - 'parens without owner, function call, named param + bitwise and' => [ - 'testMarker' => '/* testParensNoOwnerFunctionCallWithDNFLookALikeNamedParamIntersect */', - ], - - 'parens without owner in OO const default value' => [ - 'testMarker' => '/* testParensNoOwnerOOConstDefaultValue */', - ], - 'parens without owner in property default 1' => [ - 'testMarker' => '/* testParensNoOwnerPropertyDefaultValue1 */', - ], - 'parens without owner in property default 2' => [ - 'testMarker' => '/* testParensNoOwnerPropertyDefaultValue2 */', - ], - 'parens without owner in param default value' => [ - 'testMarker' => '/* testParensNoOwnerParamDefaultValue */', - ], - 'parens without owner in return statement 1' => [ - 'testMarker' => '/* testParensNoOwnerInReturnValue1 */', - ], - 'parens without owner in return statement 2' => [ - 'testMarker' => '/* testParensNoOwnerInReturnValue2 */', - ], - 'parens without owner in return statement 3' => [ - 'testMarker' => '/* testParensNoOwnerInReturnValue3 */', - ], - 'parens with owner: closure; & in default value' => [ - 'testMarker' => '/* testParensOwnerClosureAmpersandInDefaultValue */', - ], - 'parens with owner: fn; dnf used within' => [ - 'testMarker' => '/* testParensOwnerArrowDNFUsedWithin */', - 'skipCheckInside' => true, - ], - 'parens without owner: default value for param in arrow function' => [ - 'testMarker' => '/* testParensNoOwnerAmpersandInDefaultValue */', - ], - 'parens without owner in arrow function return expression' => [ - 'testMarker' => '/* testParensNoOwnerInArrowReturnExpression */', - ], - 'parens with owner: switch condition' => [ - 'testMarker' => '/* testSwitchControlStructureCondition */', - ], - 'parens without owner in switch-case condition' => [ - 'testMarker' => '/* testFunctionCallInSwitchCaseCondition */', - ], - 'parens without owner in switch-case body' => [ - 'testMarker' => '/* testFunctionCallInSwitchCaseBody */', - ], - 'parens without owner in switch-default body' => [ - 'testMarker' => '/* testFunctionCallInSwitchDefaultBody */', - ], - 'parens with owner: if condition, alternative syntax' => [ - 'testMarker' => '/* testIfAlternativeSyntaxCondition */', - ], - 'parens without owner in if body, alternative syntax' => [ - 'testMarker' => '/* testFunctionCallInIfBody */', - ], - 'parens with owner: elseif condition, alternative syntax' => [ - 'testMarker' => '/* testElseIfAlternativeSyntaxCondition */', - ], - 'parens without owner in elseif body, alternative syntax' => [ - 'testMarker' => '/* testFunctionCallInElseIfBody */', - ], - 'parens without owner in goto body' => [ - 'testMarker' => '/* testFunctionCallInGotoBody */', - ], - ]; - - }//end dataNormalParentheses() - - - /** - * Test that parentheses when used in a DNF type declaration are correctly tokenized. - * - * Includes verifying that: - * - the tokens between the parentheses all have a "nested_parenthesis" key. - * - all ampersands between the parentheses are tokenized as T_TYPE_INTERSECTION. - * - * @param string $testMarker The comment prefacing the target token. - * - * @dataProvider dataDNFTypeParentheses - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testDNFTypeParentheses($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - - $openPtr = $this->getTargetToken($testMarker, [T_OPEN_PARENTHESIS, T_TYPE_OPEN_PARENTHESIS]); - $opener = $tokens[$openPtr]; - - $this->assertSame('(', $opener['content'], 'Content of type open parenthesis is not "("'); - $this->assertSame(T_TYPE_OPEN_PARENTHESIS, $opener['code'], 'Token tokenized as '.$opener['type'].', not T_TYPE_OPEN_PARENTHESIS (code)'); - $this->assertSame('T_TYPE_OPEN_PARENTHESIS', $opener['type'], 'Token tokenized as '.$opener['type'].', not T_TYPE_OPEN_PARENTHESIS (type)'); - - $closePtr = $opener['parenthesis_closer']; - $closer = $tokens[$closePtr]; - - $this->assertSame(')', $closer['content'], 'Content of type close parenthesis is not ")"'); - $this->assertSame(T_TYPE_CLOSE_PARENTHESIS, $closer['code'], 'Token tokenized as '.$closer['type'].', not T_TYPE_CLOSE_PARENTHESIS (code)'); - $this->assertSame('T_TYPE_CLOSE_PARENTHESIS', $closer['type'], 'Token tokenized as '.$closer['type'].', not T_TYPE_CLOSE_PARENTHESIS (type)'); - - $intersectionCount = 0; - for ($i = ($openPtr + 1); $i < $closePtr; $i++) { - if ($tokens[$i]['content'] === '&') { - $this->assertSame( - T_TYPE_INTERSECTION, - $tokens[$i]['code'], - 'Token tokenized as '.$tokens[$i]['type'].', not T_TYPE_INTERSECTION (code)' - ); - $this->assertSame( - 'T_TYPE_INTERSECTION', - $tokens[$i]['type'], - 'Token tokenized as '.$tokens[$i]['type'].', not T_TYPE_INTERSECTION (type)' - ); - ++$intersectionCount; - } - - // Not valid, but that's irrelevant for the tokenization. - if ($tokens[$i]['content'] === '|') { - $this->assertSame(T_TYPE_UNION, $tokens[$i]['code'], 'Token tokenized as '.$tokens[$i]['type'].', not T_TYPE_UNION (code)'); - $this->assertSame('T_TYPE_UNION', $tokens[$i]['type'], 'Token tokenized as '.$tokens[$i]['type'].', not T_TYPE_UNION (type)'); - - // For the purposes of this test, presume it was intended as an intersection. - ++$intersectionCount; - } - }//end for - - $this->assertGreaterThanOrEqual(1, $intersectionCount, 'Did not find an intersection "&" between the DNF type parentheses'); - - $before = $this->phpcsFile->findPrevious(Tokens::$emptyTokens, ($openPtr - 1), null, true); - if ($before !== false && $tokens[$before]['content'] === '|') { - $this->assertSame( - T_TYPE_UNION, - $tokens[$before]['code'], - 'Token before tokenized as '.$tokens[$before]['type'].', not T_TYPE_UNION (code)' - ); - $this->assertSame( - 'T_TYPE_UNION', - $tokens[$before]['type'], - 'Token before tokenized as '.$tokens[$before]['type'].', not T_TYPE_UNION (type)' - ); - } - - // Invalid, but that's not relevant for the tokenization. - if ($before !== false && $tokens[$before]['content'] === '?') { - $this->assertSame( - T_NULLABLE, - $tokens[$before]['code'], - 'Token before tokenized as '.$tokens[$before]['type'].', not T_NULLABLE (code)' - ); - $this->assertSame( - 'T_NULLABLE', - $tokens[$before]['type'], - 'Token before tokenized as '.$tokens[$before]['type'].', not T_NULLABLE (type)' - ); - } - - $after = $this->phpcsFile->findNext(Tokens::$emptyTokens, ($closePtr + 1), null, true); - if ($after !== false && $tokens[$after]['content'] === '|') { - $this->assertSame( - T_TYPE_UNION, - $tokens[$after]['code'], - 'Token after tokenized as '.$tokens[$after]['type'].', not T_TYPE_UNION (code)' - ); - $this->assertSame( - 'T_TYPE_UNION', - $tokens[$after]['type'], - 'Token after tokenized as '.$tokens[$after]['type'].', not T_TYPE_UNION (type)' - ); - } - - }//end testDNFTypeParentheses() - - - /** - * Data provider. - * - * @see testDNFTypeParentheses() - * - * @return array> - */ - public static function dataDNFTypeParentheses() - { - return [ - 'OO const type: unqualified classes' => [ - 'testMarker' => '/* testDNFTypeOOConstUnqualifiedClasses */', - ], - 'OO const type: modifiers in reverse order' => [ - 'testMarker' => '/* testDNFTypeOOConstReverseModifierOrder */', - ], - 'OO const type: multi-dnf part 1' => [ - 'testMarker' => '/* testDNFTypeOOConstMulti1 */', - ], - 'OO const type: multi-dnf part 2' => [ - 'testMarker' => '/* testDNFTypeOOConstMulti2 */', - ], - 'OO const type: multi-dnf part 3' => [ - 'testMarker' => '/* testDNFTypeOOConstMulti3 */', - ], - 'OO const type: namespace relative classes' => [ - 'testMarker' => '/* testDNFTypeOOConstNamespaceRelative */', - ], - 'OO const type: partially qualified classes' => [ - 'testMarker' => '/* testDNFTypeOOConstPartiallyQualified */', - ], - 'OO const type: fully qualified classes' => [ - 'testMarker' => '/* testDNFTypeOOConstFullyQualified */', - ], - - 'OO property type: unqualified classes' => [ - 'testMarker' => '/* testDNFTypePropertyUnqualifiedClasses */', - ], - 'OO property type: modifiers in reverse order' => [ - 'testMarker' => '/* testDNFTypePropertyReverseModifierOrder */', - ], - 'OO property type: multi-dnf namespace relative classes' => [ - 'testMarker' => '/* testDNFTypePropertyMultiNamespaceRelative */', - ], - 'OO property type: multi-dnf partially qualified classes' => [ - 'testMarker' => '/* testDNFTypePropertyMultiPartiallyQualified */', - ], - 'OO property type: multi-dnf fully qualified classes' => [ - 'testMarker' => '/* testDNFTypePropertyMultiFullyQualified */', - ], - - 'OO property type: multi-dnf with readonly keyword 1' => [ - 'testMarker' => '/* testDNFTypePropertyWithReadOnlyKeyword1 */', - ], - 'OO property type: multi-dnf with readonly keyword 2' => [ - 'testMarker' => '/* testDNFTypePropertyWithReadOnlyKeyword2 */', - ], - 'OO property type: with static and readonly keywords' => [ - 'testMarker' => '/* testDNFTypePropertyWithStaticAndReadOnlyKeywords */', - ], - 'OO property type: with only static keyword' => [ - 'testMarker' => '/* testDNFTypePropertyWithOnlyStaticKeyword */', - ], - 'OO method param type: first param' => [ - 'testMarker' => '/* testDNFTypeParam1WithAttribute */', - ], - 'OO method param type: second param, first DNF' => [ - 'testMarker' => '/* testDNFTypeParam2 */', - ], - 'OO method param type: second param, second DNF' => [ - 'testMarker' => '/* testDNFTypeParam3 */', - ], - 'OO method param type: namespace relative classes' => [ - 'testMarker' => '/* testDNFTypeParamNamespaceRelative */', - ], - 'OO method param type: partially qualified classes' => [ - 'testMarker' => '/* testDNFTypeParamPartiallyQualified */', - ], - 'OO method param type: fully qualified classes' => [ - 'testMarker' => '/* testDNFTypeParamFullyQualified */', - ], - 'Constructor property promotion with multi DNF 1' => [ - 'testMarker' => '/* testDNFTypeConstructorPropertyPromotion1 */', - ], - 'Constructor property promotion with multi DNF 2' => [ - 'testMarker' => '/* testDNFTypeConstructorPropertyPromotion2 */', - ], - 'OO method return type: multi DNF 1' => [ - 'testMarker' => '/* testDNFTypeReturnType1 */', - ], - 'OO method return type: multi DNF 2' => [ - 'testMarker' => '/* testDNFTypeReturnType2 */', - ], - 'OO abstract method return type: multi DNF 1' => [ - 'testMarker' => '/* testDNFTypeAbstractMethodReturnType1 */', - ], - 'OO abstract method return type: multi DNF 2' => [ - 'testMarker' => '/* testDNFTypeAbstractMethodReturnType2 */', - ], - 'OO method return type: namespace relative classes' => [ - 'testMarker' => '/* testDNFTypeReturnTypeNamespaceRelative */', - ], - 'OO method return type: partially qualified classes' => [ - 'testMarker' => '/* testDNFTypeReturnPartiallyQualified */', - ], - 'OO method return type: fully qualified classes' => [ - 'testMarker' => '/* testDNFTypeReturnFullyQualified */', - ], - 'function param type: with reference' => [ - 'testMarker' => '/* testDNFTypeWithReference */', - ], - 'function param type: with spread' => [ - 'testMarker' => '/* testDNFTypeWithSpreadOperator */', - ], - 'closure param type: with illegal nullable' => [ - 'testMarker' => '/* testDNFTypeClosureParamIllegalNullable */', - ], - 'closure return type' => [ - 'testMarker' => '/* testDNFTypeClosureReturn */', - ], - 'closure with use return type' => [ - 'testMarker' => '/* testDNFTypeClosureWithUseReturn */', - ], - - 'arrow function param type' => [ - 'testMarker' => '/* testDNFTypeArrowParam */', - ], - 'arrow function return type' => [ - 'testMarker' => '/* testDNFTypeArrowReturnType */', - ], - 'arrow function param type with return by ref' => [ - 'testMarker' => '/* testDNFTypeArrowParamWithReturnByRef */', - ], - - 'illegal syntax: unnecessary parentheses (no union)' => [ - 'testMarker' => '/* testDNFTypeParamIllegalUnnecessaryParens */', - ], - 'illegal syntax: union within parentheses, intersect outside' => [ - 'testMarker' => '/* testDNFTypeParamIllegalIntersectUnionReversed */', - ], - 'illegal syntax: nested parentheses' => [ - 'testMarker' => '/* testDNFTypeParamIllegalNestedParens */', - ], - ]; - - }//end dataDNFTypeParentheses() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DefaultKeywordTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DefaultKeywordTest.inc deleted file mode 100644 index 648149d2..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DefaultKeywordTest.inc +++ /dev/null @@ -1,203 +0,0 @@ - 1, - 2 => 2, - /* testSimpleMatchDefault */ - default => 'default', - }; -} - -function switchWithDefault($i) { - switch ($i) { - case 1: - return 1; - case 2: - return 2; - /* testSimpleSwitchDefault */ - default: - return 'default'; - } -} - -function switchWithDefaultAndCurlies($i) { - switch ($i) { - case 1: - return 1; - case 2: - return 2; - /* testSimpleSwitchDefaultWithCurlies */ - default: { - return 'default'; - } - } -} - -function matchWithDefaultInSwitch() { - switch ($something) { - case 'foo': - $var = [1, 2, 3]; - $var = match ($i) { - 1 => 1, - /* testMatchDefaultNestedInSwitchCase1 */ - default => 'default', - }; - continue; - - case 'bar' : - $i = callMe($a, $b); - return match ($i) { - 1 => 1, - /* testMatchDefaultNestedInSwitchCase2 */ - default => 'default', - }; - - /* testSwitchDefault */ - default; - echo 'something', match ($i) { - 1, => 1, - /* testMatchDefaultNestedInSwitchDefault */ - default, => 'default', - }; - break; - } -} - -function switchWithDefaultInMatch() { - $x = match ($y) { - 5, 8 => function($z) { - switch($z) { - case 'a'; - $var = [1, 2, 3]; - return 'a'; - /* testSwitchDefaultNestedInMatchCase */ - default: - $var = [1, 2, 3]; - return 'default1'; - } - }, - /* testMatchDefault */ - default => function($z) { - switch($z) { - case 'a': - $i = callMe($a, $b); - return 'b'; - /* testSwitchDefaultNestedInMatchDefault */ - default: - $i = callMe($a, $b); - return 'default2'; - } - } - }; -} - -function shortArrayWithConstantKey() { - $arr = [ - /* testClassConstantAsShortArrayKey */ - SomeClass::DEFAULT => 1, - /* testClassPropertyAsShortArrayKey */ - SomeClass->DEFAULT => 1, - /* testNamespacedConstantAsShortArrayKey */ - // Intentional parse error PHP < 8.0. Reserved keyword used as namespaced constant. - SomeNamespace\DEFAULT => 1, - /* testFQNGlobalConstantAsShortArrayKey */ - // Intentional parse error in PHP < 8.0. Reserved keyword used as global constant. - \DEFAULT => 1, - ]; -} - -function longArrayWithConstantKey() { - $arr = array( - /* testClassConstantAsLongArrayKey */ - SomeClass::DEFAULT => 1, - ); -} - -function yieldWithConstantKey() { - /* testClassConstantAsYieldKey */ - yield SomeClass::DEFAULT => 1; -} - -function longArrayWithConstantKeyNestedInMatch() { - return match($x) { - /* testMatchDefaultWithNestedLongArrayWithClassConstantKey */ - DEFAULT => array( - /* testClassConstantAsLongArrayKeyNestedInMatch */ - SomeClass::DEFAULT => match($x) { - /* testMatchDefaultWithNestedLongArrayWithClassConstantKeyLevelDown */ - DEFAULT => array( - /* testClassConstantAsLongArrayKeyNestedInMatchLevelDown */ - SomeClass::DEFAULT => 1, - ), - }, - ), - }; -} - -function shortArrayWithConstantKeyNestedInMatch() { - return match($x) { - /* testMatchDefaultWithNestedShortArrayWithClassConstantKey */ - DEFAULT => [ - /* testClassConstantAsShortArrayKeyNestedInMatch */ - SomeClass::DEFAULT => match($x) { - /* testMatchDefaultWithNestedShortArrayWithClassConstantKeyLevelDown */ - DEFAULT => [ - /* testClassConstantAsShortArrayKeyNestedInMatchLevelDown */ - SomeClass::DEFAULT => 1, - ], - }, - ], - }; -} - - -function longArrayWithConstantKeyWithNestedMatch() { - return array( - /* testClassConstantAsLongArrayKeyWithNestedMatch */ - SomeClass::DEFAULT => match($x) { - /* testMatchDefaultNestedInLongArray */ - DEFAULT => 'foo' - }, - ); -} - -function shortArrayWithConstantKeyWithNestedMatch() { - return [ - /* testClassConstantAsShortArrayKeyWithNestedMatch */ - SomeClass::DEFAULT => match($x) { - /* testMatchDefaultNestedInShortArray */ - DEFAULT => 'foo' - }, - ]; -} - -function switchWithConstantNonDefault($i) { - switch ($i) { - /* testClassConstantInSwitchCase */ - case SomeClass::DEFAULT: - return 1; - - /* testClassPropertyInSwitchCase */ - case SomeClass->DEFAULT: - return 2; - - /* testNamespacedConstantInSwitchCase */ - // Intentional parse error PHP < 8.0. Reserved keyword used as constant. - case SomeNamespace\DEFAULT: - return 2; - - /* testNamespaceRelativeConstantInSwitchCase */ - // Intentional parse error PHP < 8.0. Reserved keyword used as global constant. - case namespace\DEFAULT: - return 2; - } -} - -class Foo { - /* testClassConstant */ - const DEFAULT = 'foo'; - - /* testMethodDeclaration */ - public function default() {} -} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DefaultKeywordTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DefaultKeywordTest.php deleted file mode 100644 index c398aa6c..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DefaultKeywordTest.php +++ /dev/null @@ -1,255 +0,0 @@ - - * @copyright 2020-2021 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -final class DefaultKeywordTest extends AbstractTokenizerTestCase -{ - - - /** - * Test the retokenization of the `default` keyword for match structure to `T_MATCH_DEFAULT`. - * - * Note: Cases and default structures within a match structure do *NOT* get case/default scope - * conditions, in contrast to case and default structures in switch control structures. - * - * @param string $testMarker The comment prefacing the target token. - * @param string $testContent The token content to look for. - * - * @dataProvider dataMatchDefault - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testMatchDefault($testMarker, $testContent='default') - { - $tokens = $this->phpcsFile->getTokens(); - - $token = $this->getTargetToken($testMarker, [T_MATCH_DEFAULT, T_DEFAULT, T_STRING], $testContent); - $tokenArray = $tokens[$token]; - - $this->assertSame(T_MATCH_DEFAULT, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_MATCH_DEFAULT (code)'); - $this->assertSame('T_MATCH_DEFAULT', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_MATCH_DEFAULT (type)'); - - }//end testMatchDefault() - - - /** - * Data provider. - * - * @see testMatchDefault() - * - * @return array> - */ - public static function dataMatchDefault() - { - return [ - 'simple_match_default' => [ - 'testMarker' => '/* testSimpleMatchDefault */', - ], - 'match_default_in_switch_case_1' => [ - 'testMarker' => '/* testMatchDefaultNestedInSwitchCase1 */', - ], - 'match_default_in_switch_case_2' => [ - 'testMarker' => '/* testMatchDefaultNestedInSwitchCase2 */', - ], - 'match_default_in_switch_default' => [ - 'testMarker' => '/* testMatchDefaultNestedInSwitchDefault */', - ], - 'match_default_containing_switch' => [ - 'testMarker' => '/* testMatchDefault */', - ], - - 'match_default_with_nested_long_array_and_default_key' => [ - 'testMarker' => '/* testMatchDefaultWithNestedLongArrayWithClassConstantKey */', - 'testContent' => 'DEFAULT', - ], - 'match_default_with_nested_long_array_and_default_key_2' => [ - 'testMarker' => '/* testMatchDefaultWithNestedLongArrayWithClassConstantKeyLevelDown */', - 'testContent' => 'DEFAULT', - ], - 'match_default_with_nested_short_array_and_default_key' => [ - 'testMarker' => '/* testMatchDefaultWithNestedShortArrayWithClassConstantKey */', - 'testContent' => 'DEFAULT', - ], - 'match_default_with_nested_short_array_and_default_key_2' => [ - 'testMarker' => '/* testMatchDefaultWithNestedShortArrayWithClassConstantKeyLevelDown */', - 'testContent' => 'DEFAULT', - ], - 'match_default_in_long_array' => [ - 'testMarker' => '/* testMatchDefaultNestedInLongArray */', - 'testContent' => 'DEFAULT', - ], - 'match_default_in_short_array' => [ - 'testMarker' => '/* testMatchDefaultNestedInShortArray */', - 'testContent' => 'DEFAULT', - ], - ]; - - }//end dataMatchDefault() - - - /** - * Verify that the retokenization of `T_DEFAULT` tokens in match constructs, doesn't negatively - * impact the tokenization of `T_DEFAULT` tokens in switch control structures. - * - * @param string $testMarker The comment prefacing the target token. - * @param string $testContent The token content to look for. - * - * @dataProvider dataSwitchDefault - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testSwitchDefault($testMarker, $testContent='default') - { - $tokens = $this->phpcsFile->getTokens(); - - $token = $this->getTargetToken($testMarker, [T_MATCH_DEFAULT, T_DEFAULT, T_STRING], $testContent); - $tokenArray = $tokens[$token]; - - $this->assertSame(T_DEFAULT, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_DEFAULT (code)'); - $this->assertSame('T_DEFAULT', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_DEFAULT (type)'); - - }//end testSwitchDefault() - - - /** - * Data provider. - * - * @see testSwitchDefault() - * - * @return array> - */ - public static function dataSwitchDefault() - { - return [ - 'simple_switch_default' => [ - 'testMarker' => '/* testSimpleSwitchDefault */', - ], - 'simple_switch_default_with_curlies' => [ - 'testMarker' => '/* testSimpleSwitchDefaultWithCurlies */', - ], - 'switch_default_toplevel' => [ - 'testMarker' => '/* testSwitchDefault */', - ], - 'switch_default_nested_in_match_case' => [ - 'testMarker' => '/* testSwitchDefaultNestedInMatchCase */', - ], - 'switch_default_nested_in_match_default' => [ - 'testMarker' => '/* testSwitchDefaultNestedInMatchDefault */', - ], - ]; - - }//end dataSwitchDefault() - - - /** - * Verify that the retokenization of `T_DEFAULT` tokens in match constructs, doesn't negatively - * impact the tokenization of `T_STRING` tokens with the contents 'default' which aren't in - * actual fact the default keyword. - * - * @param string $testMarker The comment prefacing the target token. - * @param string $testContent The token content to look for. - * - * @dataProvider dataNotDefaultKeyword - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testNotDefaultKeyword($testMarker, $testContent='DEFAULT') - { - $tokens = $this->phpcsFile->getTokens(); - - $token = $this->getTargetToken($testMarker, [T_MATCH_DEFAULT, T_DEFAULT, T_STRING], $testContent); - $tokenArray = $tokens[$token]; - - $this->assertSame(T_STRING, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (code)'); - $this->assertSame('T_STRING', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (type)'); - - }//end testNotDefaultKeyword() - - - /** - * Data provider. - * - * @see testNotDefaultKeyword() - * - * @return array> - */ - public static function dataNotDefaultKeyword() - { - return [ - 'class-constant-as-short-array-key' => [ - 'testMarker' => '/* testClassConstantAsShortArrayKey */', - ], - 'class-property-as-short-array-key' => [ - 'testMarker' => '/* testClassPropertyAsShortArrayKey */', - ], - 'namespaced-constant-as-short-array-key' => [ - 'testMarker' => '/* testNamespacedConstantAsShortArrayKey */', - ], - 'fqn-global-constant-as-short-array-key' => [ - 'testMarker' => '/* testFQNGlobalConstantAsShortArrayKey */', - ], - 'class-constant-as-long-array-key' => [ - 'testMarker' => '/* testClassConstantAsLongArrayKey */', - ], - 'class-constant-as-yield-key' => [ - 'testMarker' => '/* testClassConstantAsYieldKey */', - ], - - 'class-constant-as-long-array-key-nested-in-match' => [ - 'testMarker' => '/* testClassConstantAsLongArrayKeyNestedInMatch */', - ], - 'class-constant-as-long-array-key-nested-in-match-2' => [ - 'testMarker' => '/* testClassConstantAsLongArrayKeyNestedInMatchLevelDown */', - ], - 'class-constant-as-short-array-key-nested-in-match' => [ - 'testMarker' => '/* testClassConstantAsShortArrayKeyNestedInMatch */', - ], - 'class-constant-as-short-array-key-nested-in-match-2' => [ - 'testMarker' => '/* testClassConstantAsShortArrayKeyNestedInMatchLevelDown */', - ], - 'class-constant-as-long-array-key-with-nested-match' => [ - 'testMarker' => '/* testClassConstantAsLongArrayKeyWithNestedMatch */', - ], - 'class-constant-as-short-array-key-with-nested-match' => [ - 'testMarker' => '/* testClassConstantAsShortArrayKeyWithNestedMatch */', - ], - - 'class-constant-in-switch-case' => [ - 'testMarker' => '/* testClassConstantInSwitchCase */', - ], - 'class-property-in-switch-case' => [ - 'testMarker' => '/* testClassPropertyInSwitchCase */', - ], - 'namespaced-constant-in-switch-case' => [ - 'testMarker' => '/* testNamespacedConstantInSwitchCase */', - ], - 'namespace-relative-constant-in-switch-case' => [ - 'testMarker' => '/* testNamespaceRelativeConstantInSwitchCase */', - ], - - 'class-constant-declaration' => [ - 'testMarker' => '/* testClassConstant */', - ], - 'class-method-declaration' => [ - 'testMarker' => '/* testMethodDeclaration */', - 'testContent' => 'default', - ], - ]; - - }//end dataNotDefaultKeyword() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DoubleArrowTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DoubleArrowTest.inc deleted file mode 100644 index b67b0660..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DoubleArrowTest.inc +++ /dev/null @@ -1,281 +0,0 @@ - 'Zero', - ); -} - -function simpleShortArray($x) { - return [ - /* testShortArrayArrowSimple */ - 0 => 'Zero', - ]; -} - -function simpleLongList($x) { - list( - /* testLongListArrowSimple */ - 0 => $a, - ) = $x; -} - -function simpleShortList($x) { - [ - /* testShortListArrowSimple */ - 0 => $a, - ] = $x; -} - -function simpleYield($x) { - $i = 0; - foreach (explode("\n", $x) as $line) { - /* testYieldArrowSimple */ - yield ++$i => $line; - } -} - -function simpleForeach($x) { - /* testForeachArrowSimple */ - foreach ($x as $k => $value) {} -} - -function simpleMatch($x) { - return match ($x) { - /* testMatchArrowSimpleSingleCase */ - 0 => 'Zero', - /* testMatchArrowSimpleMultiCase */ - 2, 4, 6 => 'Zero', - /* testMatchArrowSimpleSingleCaseWithTrailingComma */ - 1, => 'Zero', - /* testMatchArrowSimpleMultiCaseWithTrailingComma */ - 3, 5, => 'Zero', - }; -} - -function simpleArrowFunction($y) { - /* testFnArrowSimple */ - return fn ($y) => callMe($y); -} - -function matchNestedInMatch() { - $x = match ($y) { - /* testMatchArrowNestedMatchOuter */ - default, => match ($z) { - /* testMatchArrowNestedMatchInner */ - 1 => 1 - }, - }; -} - -function matchNestedInLongArrayValue() { - $array = array( - /* testLongArrayArrowWithNestedMatchValue1 */ - 'a' => match ($test) { - /* testMatchArrowInLongArrayValue1 */ - 1 => 'a', - /* testMatchArrowInLongArrayValue2 */ - 2 => 'b' - }, - /* testLongArrayArrowWithNestedMatchValue2 */ - $i => match ($test) { - /* testMatchArrowInLongArrayValue3 */ - 1 => 'a', - }, - ); -} - -function matchNestedInShortArrayValue() { - $array = [ - /* testShortArrayArrowWithNestedMatchValue1 */ - 'a' => match ($test) { - /* testMatchArrowInShortArrayValue1 */ - 1 => 'a', - /* testMatchArrowInShortArrayValue2 */ - 2 => 'b' - }, - /* testShortArrayArrowWithNestedMatchValue2 */ - $i => match ($test) { - /* testMatchArrowInShortArrayValue3 */ - 1 => 'a', - }, - ]; -} - -function matchNestedInLongArrayKey() { - $array = array( - match ($test) { /* testMatchArrowInLongArrayKey1 */ 1 => 'a', /* testMatchArrowInLongArrayKey2 */ 2 => 'b' } - /* testLongArrayArrowWithMatchKey */ - => 'dynamic keys, woho!', - ); -} - -function matchNestedInShortArrayKey() { - $array = [ - match ($test) { /* testMatchArrowInShortArrayKey1 */ 1 => 'a', /* testMatchArrowInShortArrayKey2 */ 2 => 'b' } - /* testShortArrayArrowWithMatchKey */ - => 'dynamic keys, woho!', - ]; -} - -function arraysNestedInMatch() { - $matcher = match ($x) { - /* testMatchArrowWithLongArrayBodyWithKeys */ - 0 => array( - /* testLongArrayArrowInMatchBody1 */ - 0 => 1, - /* testLongArrayArrowInMatchBody2 */ - 'a' => 2, - /* testLongArrayArrowInMatchBody3 */ - 'b' => 3 - ), - /* testMatchArrowWithShortArrayBodyWithoutKeys */ - 1 => [1, 2, 3], - /* testMatchArrowWithLongArrayBodyWithoutKeys */ - 2 => array( 1, [1, 2, 3], 2, 3), - /* testMatchArrowWithShortArrayBodyWithKeys */ - 3 => [ - /* testShortArrayArrowInMatchBody1 */ - 0 => 1, - /* testShortArrayArrowInMatchBody2 */ - 'a' => array(1, 2, 3), - /* testShortArrayArrowInMatchBody3 */ - 'b' => 2, - 3 - ], - /* testShortArrayArrowinMatchCase1 */ - [4 => 'a', /* testShortArrayArrowinMatchCase2 */ 5 => 6] - /* testMatchArrowWithShortArrayWithKeysAsCase */ - => 'match with array as case value', - /* testShortArrayArrowinMatchCase3 */ - [4 => 'a'], /* testLongArrayArrowinMatchCase4 */ array(5 => 6), - /* testMatchArrowWithMultipleArraysWithKeysAsCase */ - => 'match with multiple arrays as case value', - }; -} - -function matchNestedInArrowFunction($x) { - /* testFnArrowWithMatchInValue */ - $fn = fn($x) => match(true) { - /* testMatchArrowInFnBody1 */ - 1, 2, 3, 4, 5 => 'foo', - /* testMatchArrowInFnBody2 */ - default => 'bar', - }; -} - -function arrowFunctionsNestedInMatch($x) { - return match ($x) { - /* testMatchArrowWithFnBody1 */ - 1 => /* testFnArrowInMatchBody1 */ fn($y) => callMe($y), - /* testMatchArrowWithFnBody2 */ - default => /* testFnArrowInMatchBody2 */ fn($y) => callThem($y) - }; -} - -function matchShortArrayMismash() { - $array = [ - match ($test) { - /* testMatchArrowInComplexShortArrayKey1 */ - 1 => [ /* testShortArrayArrowInComplexMatchValueinShortArrayKey */ 1 => 'a'], - /* testMatchArrowInComplexShortArrayKey2 */ - 2 => 'b' - /* testShortArrayArrowInComplexMatchArrayMismash */ - } => match ($test) { - /* testMatchArrowInComplexShortArrayValue1 */ - 1 => [ /* testShortArrayArrowInComplexMatchValueinShortArrayValue */ 1 => 'a'], - /* testMatchArrowInComplexShortArrayValue2 */ - 2 => /* testFnArrowInComplexMatchValueInShortArrayValue */ fn($y) => callMe($y) - }, - ]; -} - - -function longListInMatch($x, $y) { - return match($x) { - /* testMatchArrowWithLongListBody */ - 1 => list('a' => $a, /* testLongListArrowInMatchBody */ 'b' => $b, 'c' => list('d' => $c)) = $y, - /* testLongListArrowInMatchCase */ - list('a' => $a, 'b' => $b) = $y /* testMatchArrowWithLongListInCase */ => 'something' - }; -} - -function shortListInMatch($x, $y) { - return match($x) { - /* testMatchArrowWithShortListBody */ - 1 => ['a' => $a, 'b' => $b, 'c' => /* testShortListArrowInMatchBody */ ['d' => $c]] = $y, - /* testShortListArrowInMatchCase */ - ['a' => $a, 'b' => $b] = $y /* testMatchArrowWithShortListInCase */ => 'something' - }; -} - -function matchInLongList() { - /* testMatchArrowInLongListKey */ - list(match($x) {1 => 1, 2 => 2} /* testLongListArrowWithMatchInKey */ => $a) = $array; -} - -function matchInShortList() { - /* testMatchArrowInShortListKey */ - [match($x) {1 => 1, 2 => 2} /* testShortListArrowWithMatchInKey */ => $a] = $array; -} - -function longArrayWithConstantKey() { - $arr = array( - /* testLongArrayArrowWithClassConstantKey */ - SomeClass::DEFAULT => 1, - ); -} - -function shortArrayWithConstantKey() { - $arr = [ - /* testShortArrayArrowWithClassConstantKey */ - SomeClass::DEFAULT => 1, - ]; -} - -function yieldWithConstantKey() { - /* testYieldArrowWithClassConstantKey */ - yield SomeClass::DEFAULT => 1; -} - -function longArrayWithConstantKeyNestedInMatch() { - return match($x) { - /* testMatchArrowWithNestedLongArrayWithClassConstantKey */ - default => array( - /* testLongArrayArrowWithClassConstantKeyNestedInMatch */ - SomeClass::DEFAULT => 1, - ), - }; -} - -function shortArrayWithConstantKeyNestedInMatch() { - return match($x) { - /* testMatchArrowWithNestedShortArrayWithClassConstantKey */ - default => [ - /* testShortArrayArrowWithClassConstantKeyNestedInMatch */ - SomeClass::DEFAULT => 1, - ], - }; -} - - -function longArrayWithConstantKeyWithNestedMatch() { - return array( - /* testLongArrayArrowWithClassConstantKeyWithNestedMatch */ - SomeClass::DEFAULT => match($x) { - /* testMatchArrowNestedInLongArrayWithClassConstantKey */ - default => 'foo' - }, - ); -} - -function shortArrayWithConstantKeyWithNestedMatch() { - return [ - /* testShortArrayArrowWithClassConstantKeyWithNestedMatch */ - SomeClass::DEFAULT => match($x) { - /* testMatchArrowNestedInShortArrayWithClassConstantKey */ - default => 'foo' - }, - ]; -} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DoubleArrowTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DoubleArrowTest.php deleted file mode 100644 index 5258d9c1..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DoubleArrowTest.php +++ /dev/null @@ -1,237 +0,0 @@ - - * @copyright 2020-2021 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -final class DoubleArrowTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that "normal" double arrows are correctly tokenized as `T_DOUBLE_ARROW`. - * - * @param string $testMarker The comment prefacing the target token. - * - * @dataProvider dataDoubleArrow - * @coversNothing - * - * @return void - */ - public function testDoubleArrow($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - - $token = $this->getTargetToken($testMarker, [T_DOUBLE_ARROW, T_MATCH_ARROW, T_FN_ARROW]); - $tokenArray = $tokens[$token]; - - $this->assertSame(T_DOUBLE_ARROW, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_DOUBLE_ARROW (code)'); - $this->assertSame('T_DOUBLE_ARROW', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_DOUBLE_ARROW (type)'); - - }//end testDoubleArrow() - - - /** - * Data provider. - * - * @see testDoubleArrow() - * - * @return array> - */ - public static function dataDoubleArrow() - { - return [ - 'simple_long_array' => ['/* testLongArrayArrowSimple */'], - 'simple_short_array' => ['/* testShortArrayArrowSimple */'], - 'simple_long_list' => ['/* testLongListArrowSimple */'], - 'simple_short_list' => ['/* testShortListArrowSimple */'], - 'simple_yield' => ['/* testYieldArrowSimple */'], - 'simple_foreach' => ['/* testForeachArrowSimple */'], - - 'long_array_with_match_value_1' => ['/* testLongArrayArrowWithNestedMatchValue1 */'], - 'long_array_with_match_value_2' => ['/* testLongArrayArrowWithNestedMatchValue2 */'], - 'short_array_with_match_value_1' => ['/* testShortArrayArrowWithNestedMatchValue1 */'], - 'short_array_with_match_value_2' => ['/* testShortArrayArrowWithNestedMatchValue2 */'], - - 'long_array_with_match_key' => ['/* testLongArrayArrowWithMatchKey */'], - 'short_array_with_match_key' => ['/* testShortArrayArrowWithMatchKey */'], - - 'long_array_in_match_body_1' => ['/* testLongArrayArrowInMatchBody1 */'], - 'long_array_in_match_body_2' => ['/* testLongArrayArrowInMatchBody2 */'], - 'long_array_in_match_body_3' => ['/* testLongArrayArrowInMatchBody3 */'], - 'short_array_in_match_body_1' => ['/* testShortArrayArrowInMatchBody1 */'], - 'short_array_in_match_body_2' => ['/* testShortArrayArrowInMatchBody2 */'], - 'short_array_in_match_body_3' => ['/* testShortArrayArrowInMatchBody3 */'], - - 'short_array_in_match_case_1' => ['/* testShortArrayArrowinMatchCase1 */'], - 'short_array_in_match_case_2' => ['/* testShortArrayArrowinMatchCase2 */'], - 'short_array_in_match_case_3' => ['/* testShortArrayArrowinMatchCase3 */'], - 'long_array_in_match_case_4' => ['/* testLongArrayArrowinMatchCase4 */'], - - 'in_complex_short_array_key_match_value' => ['/* testShortArrayArrowInComplexMatchValueinShortArrayKey */'], - 'in_complex_short_array_toplevel' => ['/* testShortArrayArrowInComplexMatchArrayMismash */'], - 'in_complex_short_array_value_match_value' => ['/* testShortArrayArrowInComplexMatchValueinShortArrayValue */'], - - 'long_list_in_match_body' => ['/* testLongListArrowInMatchBody */'], - 'long_list_in_match_case' => ['/* testLongListArrowInMatchCase */'], - 'short_list_in_match_body' => ['/* testShortListArrowInMatchBody */'], - 'short_list_in_match_case' => ['/* testShortListArrowInMatchCase */'], - 'long_list_with_match_in_key' => ['/* testLongListArrowWithMatchInKey */'], - 'short_list_with_match_in_key' => ['/* testShortListArrowWithMatchInKey */'], - - 'long_array_with_constant_default_in_key' => ['/* testLongArrayArrowWithClassConstantKey */'], - 'short_array_with_constant_default_in_key' => ['/* testShortArrayArrowWithClassConstantKey */'], - 'yield_with_constant_default_in_key' => ['/* testYieldArrowWithClassConstantKey */'], - - 'long_array_with_default_in_key_in_match' => ['/* testLongArrayArrowWithClassConstantKeyNestedInMatch */'], - 'short_array_with_default_in_key_in_match' => ['/* testShortArrayArrowWithClassConstantKeyNestedInMatch */'], - 'long_array_with_default_in_key_with_match' => ['/* testLongArrayArrowWithClassConstantKeyWithNestedMatch */'], - 'short_array_with_default_in_key_with_match' => ['/* testShortArrayArrowWithClassConstantKeyWithNestedMatch */'], - ]; - - }//end dataDoubleArrow() - - - /** - * Test that double arrows in match expressions which are the demarkation between a case and the return value - * are correctly tokenized as `T_MATCH_ARROW`. - * - * @param string $testMarker The comment prefacing the target token. - * - * @dataProvider dataMatchArrow - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testMatchArrow($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - - $token = $this->getTargetToken($testMarker, [T_DOUBLE_ARROW, T_MATCH_ARROW, T_FN_ARROW]); - $tokenArray = $tokens[$token]; - - $this->assertSame(T_MATCH_ARROW, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_MATCH_ARROW (code)'); - $this->assertSame('T_MATCH_ARROW', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_MATCH_ARROW (type)'); - - }//end testMatchArrow() - - - /** - * Data provider. - * - * @see testMatchArrow() - * - * @return array> - */ - public static function dataMatchArrow() - { - return [ - 'single_case' => ['/* testMatchArrowSimpleSingleCase */'], - 'multi_case' => ['/* testMatchArrowSimpleMultiCase */'], - 'single_case_with_trailing_comma' => ['/* testMatchArrowSimpleSingleCaseWithTrailingComma */'], - 'multi_case_with_trailing_comma' => ['/* testMatchArrowSimpleMultiCaseWithTrailingComma */'], - 'match_nested_outer' => ['/* testMatchArrowNestedMatchOuter */'], - 'match_nested_inner' => ['/* testMatchArrowNestedMatchInner */'], - - 'in_long_array_value_1' => ['/* testMatchArrowInLongArrayValue1 */'], - 'in_long_array_value_2' => ['/* testMatchArrowInLongArrayValue2 */'], - 'in_long_array_value_3' => ['/* testMatchArrowInLongArrayValue3 */'], - 'in_short_array_value_1' => ['/* testMatchArrowInShortArrayValue1 */'], - 'in_short_array_value_2' => ['/* testMatchArrowInShortArrayValue2 */'], - 'in_short_array_value_3' => ['/* testMatchArrowInShortArrayValue3 */'], - - 'in_long_array_key_1' => ['/* testMatchArrowInLongArrayKey1 */'], - 'in_long_array_key_2' => ['/* testMatchArrowInLongArrayKey2 */'], - 'in_short_array_key_1' => ['/* testMatchArrowInShortArrayKey1 */'], - 'in_short_array_key_2' => ['/* testMatchArrowInShortArrayKey2 */'], - - 'with_long_array_value_with_keys' => ['/* testMatchArrowWithLongArrayBodyWithKeys */'], - 'with_short_array_value_without_keys' => ['/* testMatchArrowWithShortArrayBodyWithoutKeys */'], - 'with_long_array_value_without_keys' => ['/* testMatchArrowWithLongArrayBodyWithoutKeys */'], - 'with_short_array_value_with_keys' => ['/* testMatchArrowWithShortArrayBodyWithKeys */'], - - 'with_short_array_with_keys_as_case' => ['/* testMatchArrowWithShortArrayWithKeysAsCase */'], - 'with_multiple_arrays_with_keys_as_case' => ['/* testMatchArrowWithMultipleArraysWithKeysAsCase */'], - - 'in_fn_body_case' => ['/* testMatchArrowInFnBody1 */'], - 'in_fn_body_default' => ['/* testMatchArrowInFnBody2 */'], - 'with_fn_body_case' => ['/* testMatchArrowWithFnBody1 */'], - 'with_fn_body_default' => ['/* testMatchArrowWithFnBody2 */'], - - 'in_complex_short_array_key_1' => ['/* testMatchArrowInComplexShortArrayKey1 */'], - 'in_complex_short_array_key_2' => ['/* testMatchArrowInComplexShortArrayKey2 */'], - 'in_complex_short_array_value_1' => ['/* testMatchArrowInComplexShortArrayValue1 */'], - 'in_complex_short_array_value_2' => ['/* testMatchArrowInComplexShortArrayValue2 */'], - - 'with_long_list_in_body' => ['/* testMatchArrowWithLongListBody */'], - 'with_long_list_in_case' => ['/* testMatchArrowWithLongListInCase */'], - 'with_short_list_in_body' => ['/* testMatchArrowWithShortListBody */'], - 'with_short_list_in_case' => ['/* testMatchArrowWithShortListInCase */'], - 'in_long_list_key' => ['/* testMatchArrowInLongListKey */'], - 'in_short_list_key' => ['/* testMatchArrowInShortListKey */'], - - 'with_long_array_value_with_default_key' => ['/* testMatchArrowWithNestedLongArrayWithClassConstantKey */'], - 'with_short_array_value_with_default_key' => ['/* testMatchArrowWithNestedShortArrayWithClassConstantKey */'], - 'in_long_array_value_with_default_key' => ['/* testMatchArrowNestedInLongArrayWithClassConstantKey */'], - 'in_short_array_value_with_default_key' => ['/* testMatchArrowNestedInShortArrayWithClassConstantKey */'], - ]; - - }//end dataMatchArrow() - - - /** - * Test that double arrows used as the scope opener for an arrow function - * are correctly tokenized as `T_FN_ARROW`. - * - * @param string $testMarker The comment prefacing the target token. - * - * @dataProvider dataFnArrow - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testFnArrow($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - - $token = $this->getTargetToken($testMarker, [T_DOUBLE_ARROW, T_MATCH_ARROW, T_FN_ARROW]); - $tokenArray = $tokens[$token]; - - $this->assertSame(T_FN_ARROW, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_FN_ARROW (code)'); - $this->assertSame('T_FN_ARROW', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_FN_ARROW (type)'); - - }//end testFnArrow() - - - /** - * Data provider. - * - * @see testFnArrow() - * - * @return array> - */ - public static function dataFnArrow() - { - return [ - 'simple_fn' => ['/* testFnArrowSimple */'], - - 'with_match_as_value' => ['/* testFnArrowWithMatchInValue */'], - 'in_match_value_case' => ['/* testFnArrowInMatchBody1 */'], - 'in_match_value_default' => ['/* testFnArrowInMatchBody2 */'], - - 'in_complex_match_value_in_short_array' => ['/* testFnArrowInComplexMatchValueInShortArrayValue */'], - ]; - - }//end dataFnArrow() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DoubleQuotedStringTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DoubleQuotedStringTest.inc deleted file mode 100644 index 62535b1e..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DoubleQuotedStringTest.inc +++ /dev/null @@ -1,52 +0,0 @@ -bar"; -/* testProperty2 */ -"{$foo->bar}"; - -/* testMethod1 */ -"{$foo->bar()}"; - -/* testClosure1 */ -"{$foo()}"; - -/* testChain1 */ -"{$foo['bar']->baz()()}"; - -/* testVariableVar1 */ -"${$bar}"; -/* testVariableVar2 */ -"${(foo)}"; -/* testVariableVar3 */ -"${foo->bar}"; - -/* testNested1 */ -"${foo["${bar}"]}"; -/* testNested2 */ -"${foo["${bar['baz']}"]}"; -/* testNested3 */ -"${foo->{$baz}}"; -/* testNested4 */ -"${foo->{${'a'}}}"; -/* testNested5 */ -"${foo->{"${'a'}"}}"; - -/* testParseError */ -"${foo["${bar diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DoubleQuotedStringTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DoubleQuotedStringTest.php deleted file mode 100644 index aa0817a4..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/DoubleQuotedStringTest.php +++ /dev/null @@ -1,144 +0,0 @@ - - * @copyright 2022 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -final class DoubleQuotedStringTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that double quoted strings contain the complete string. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * @param string $expectedContent The expected content of the double quoted string. - * - * @dataProvider dataDoubleQuotedString - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testDoubleQuotedString($testMarker, $expectedContent) - { - $tokens = $this->phpcsFile->getTokens(); - - $target = $this->getTargetToken($testMarker, T_DOUBLE_QUOTED_STRING); - $this->assertSame($expectedContent, $tokens[$target]['content']); - - }//end testDoubleQuotedString() - - - /** - * Data provider. - * - * Type reference: - * 1. Directly embedded variables. - * 2. Braces outside the variable. - * 3. Braces after the dollar sign. - * 4. Variable variables and expressions. - * - * @link https://wiki.php.net/rfc/deprecate_dollar_brace_string_interpolation - * - * @see testDoubleQuotedString() - * - * @return array> - */ - public static function dataDoubleQuotedString() - { - return [ - 'Type 1: simple variable' => [ - 'testMarker' => '/* testSimple1 */', - 'expectedContent' => '"$foo"', - ], - 'Type 2: simple variable' => [ - 'testMarker' => '/* testSimple2 */', - 'expectedContent' => '"{$foo}"', - ], - 'Type 3: simple variable' => [ - 'testMarker' => '/* testSimple3 */', - 'expectedContent' => '"${foo}"', - ], - 'Type 1: array offset' => [ - 'testMarker' => '/* testDIM1 */', - 'expectedContent' => '"$foo[bar]"', - ], - 'Type 2: array offset' => [ - 'testMarker' => '/* testDIM2 */', - 'expectedContent' => '"{$foo[\'bar\']}"', - ], - 'Type 3: array offset' => [ - 'testMarker' => '/* testDIM3 */', - 'expectedContent' => '"${foo[\'bar\']}"', - ], - 'Type 1: object property' => [ - 'testMarker' => '/* testProperty1 */', - 'expectedContent' => '"$foo->bar"', - ], - 'Type 2: object property' => [ - 'testMarker' => '/* testProperty2 */', - 'expectedContent' => '"{$foo->bar}"', - ], - 'Type 2: object method call' => [ - 'testMarker' => '/* testMethod1 */', - 'expectedContent' => '"{$foo->bar()}"', - ], - 'Type 2: closure function call' => [ - 'testMarker' => '/* testClosure1 */', - 'expectedContent' => '"{$foo()}"', - ], - 'Type 2: chaining various syntaxes' => [ - 'testMarker' => '/* testChain1 */', - 'expectedContent' => '"{$foo[\'bar\']->baz()()}"', - ], - 'Type 4: variable variables' => [ - 'testMarker' => '/* testVariableVar1 */', - 'expectedContent' => '"${$bar}"', - ], - 'Type 4: variable constants' => [ - 'testMarker' => '/* testVariableVar2 */', - 'expectedContent' => '"${(foo)}"', - ], - 'Type 4: object property' => [ - 'testMarker' => '/* testVariableVar3 */', - 'expectedContent' => '"${foo->bar}"', - ], - 'Type 4: variable variable nested in array offset' => [ - 'testMarker' => '/* testNested1 */', - 'expectedContent' => '"${foo["${bar}"]}"', - ], - 'Type 4: variable array offset nested in array offset' => [ - 'testMarker' => '/* testNested2 */', - 'expectedContent' => '"${foo["${bar[\'baz\']}"]}"', - ], - 'Type 4: variable object property' => [ - 'testMarker' => '/* testNested3 */', - 'expectedContent' => '"${foo->{$baz}}"', - ], - 'Type 4: variable object property - complex with single quotes' => [ - 'testMarker' => '/* testNested4 */', - 'expectedContent' => '"${foo->{${\'a\'}}}"', - ], - 'Type 4: variable object property - complex with single and double quotes' => [ - 'testMarker' => '/* testNested5 */', - 'expectedContent' => '"${foo->{"${\'a\'}"}}"', - ], - 'Type 4: live coding/parse error' => [ - 'testMarker' => '/* testParseError */', - 'expectedContent' => '"${foo["${bar -', - ], - ]; - - }//end dataDoubleQuotedString() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/EnumCaseTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/EnumCaseTest.inc deleted file mode 100644 index 13b87242..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/EnumCaseTest.inc +++ /dev/null @@ -1,95 +0,0 @@ - - * @copyright 2021 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -final class EnumCaseTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that the enum "case" is converted to T_ENUM_CASE. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * - * @dataProvider dataEnumCases - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testEnumCases($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - $enumCase = $this->getTargetToken($testMarker, [T_ENUM_CASE, T_CASE]); - $tokenArray = $tokens[$enumCase]; - - $this->assertSame(T_ENUM_CASE, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_ENUM_CASE (code)'); - $this->assertSame('T_ENUM_CASE', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_ENUM_CASE (type)'); - - }//end testEnumCases() - - - /** - * Data provider. - * - * @see testEnumCases() - * - * @return array> - */ - public static function dataEnumCases() - { - return [ - 'enum case, no value' => ['/* testPureEnumCase */'], - 'enum case, integer value' => ['/* testBackingIntegerEnumCase */'], - 'enum case, string value' => ['/* testBackingStringEnumCase */'], - 'enum case, integer value in more complex enum' => ['/* testEnumCaseInComplexEnum */'], - 'enum case, keyword in mixed case' => ['/* testEnumCaseIsCaseInsensitive */'], - 'enum case, after switch statement' => ['/* testEnumCaseAfterSwitch */'], - 'enum case, after switch statement using alternative syntax' => ['/* testEnumCaseAfterSwitchWithEndSwitch */'], - ]; - - }//end dataEnumCases() - - - /** - * Test that "case" that is not enum case is still tokenized as `T_CASE`. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * - * @dataProvider dataNotEnumCases - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testNotEnumCases($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - $case = $this->getTargetToken($testMarker, [T_ENUM_CASE, T_CASE]); - $tokenArray = $tokens[$case]; - - $this->assertSame(T_CASE, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_CASE (code)'); - $this->assertSame('T_CASE', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_CASE (type)'); - - }//end testNotEnumCases() - - - /** - * Data provider. - * - * @see testNotEnumCases() - * - * @return array> - */ - public static function dataNotEnumCases() - { - return [ - 'switch case with constant, semicolon condition end' => ['/* testCaseWithSemicolonIsNotEnumCase */'], - 'switch case with constant, colon condition end' => ['/* testCaseWithConstantIsNotEnumCase */'], - 'switch case with constant, comparison' => ['/* testCaseWithConstantAndIdenticalIsNotEnumCase */'], - 'switch case with constant, assignment' => ['/* testCaseWithAssigmentToConstantIsNotEnumCase */'], - 'switch case with constant, keyword in mixed case' => ['/* testIsNotEnumCaseIsCaseInsensitive */'], - 'switch case, body in curlies declares enum' => ['/* testCaseInSwitchWhenCreatingEnumInSwitch1 */'], - 'switch case, body after semicolon declares enum' => ['/* testCaseInSwitchWhenCreatingEnumInSwitch2 */'], - ]; - - }//end dataNotEnumCases() - - - /** - * Test that "case" that is not enum case is still tokenized as `T_CASE`. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * - * @dataProvider dataKeywordAsEnumCaseNameShouldBeString - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testKeywordAsEnumCaseNameShouldBeString($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - $enumCaseName = $this->getTargetToken($testMarker, [T_STRING, T_INTERFACE, T_TRAIT, T_ENUM, T_FUNCTION, T_FALSE, T_DEFAULT, T_ARRAY]); - $tokenArray = $tokens[$enumCaseName]; - - $this->assertSame(T_STRING, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (code)'); - $this->assertSame('T_STRING', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (type)'); - - }//end testKeywordAsEnumCaseNameShouldBeString() - - - /** - * Data provider. - * - * @see testKeywordAsEnumCaseNameShouldBeString() - * - * @return array> - */ - public static function dataKeywordAsEnumCaseNameShouldBeString() - { - return [ - '"interface" as case name' => ['/* testKeywordAsEnumCaseNameShouldBeString1 */'], - '"trait" as case name' => ['/* testKeywordAsEnumCaseNameShouldBeString2 */'], - '"enum" as case name' => ['/* testKeywordAsEnumCaseNameShouldBeString3 */'], - '"function" as case name' => ['/* testKeywordAsEnumCaseNameShouldBeString4 */'], - '"false" as case name' => ['/* testKeywordAsEnumCaseNameShouldBeString5 */'], - '"default" as case name' => ['/* testKeywordAsEnumCaseNameShouldBeString6 */'], - '"array" as case name' => ['/* testKeywordAsEnumCaseNameShouldBeString7 */'], - ]; - - }//end dataKeywordAsEnumCaseNameShouldBeString() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/FinallyTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/FinallyTest.inc deleted file mode 100644 index e65600b6..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/FinallyTest.inc +++ /dev/null @@ -1,40 +0,0 @@ -finally = 'foo'; - } -} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/FinallyTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/FinallyTest.php deleted file mode 100644 index e73dde12..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/FinallyTest.php +++ /dev/null @@ -1,98 +0,0 @@ - - * @copyright 2021 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -final class FinallyTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that the finally keyword is tokenized as such. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * - * @dataProvider dataFinallyKeyword - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testFinallyKeyword($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - $target = $this->getTargetToken($testMarker, [T_FINALLY, T_STRING]); - $tokenArray = $tokens[$target]; - - $this->assertSame(T_FINALLY, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_FINALLY (code)'); - $this->assertSame('T_FINALLY', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_FINALLY (type)'); - - }//end testFinallyKeyword() - - - /** - * Data provider. - * - * @see testFinallyKeyword() - * - * @return array> - */ - public static function dataFinallyKeyword() - { - return [ - 'finally after try and catch' => ['/* testTryCatchFinally */'], - 'finally between try and catch' => ['/* testTryFinallyCatch */'], - 'finally after try, no catch' => ['/* testTryFinally */'], - ]; - - }//end dataFinallyKeyword() - - - /** - * Test that 'finally' when not used as the reserved keyword is tokenized as `T_STRING`. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * - * @dataProvider dataFinallyNonKeyword - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testFinallyNonKeyword($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - $target = $this->getTargetToken($testMarker, [T_FINALLY, T_STRING]); - $tokenArray = $tokens[$target]; - - $this->assertSame(T_STRING, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (code)'); - $this->assertSame('T_STRING', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (type)'); - - }//end testFinallyNonKeyword() - - - /** - * Data provider. - * - * @see testFinallyNonKeyword() - * - * @return array> - */ - public static function dataFinallyNonKeyword() - { - return [ - 'finally used as class constant name' => ['/* testFinallyUsedAsClassConstantName */'], - 'finally used as method name' => ['/* testFinallyUsedAsMethodName */'], - 'finally used as property name' => ['/* testFinallyUsedAsPropertyName */'], - ]; - - }//end dataFinallyNonKeyword() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/GotoLabelTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/GotoLabelTest.inc deleted file mode 100644 index 12df5d29..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/GotoLabelTest.inc +++ /dev/null @@ -1,56 +0,0 @@ - -
    - -property: - // Do something. - break; -} - -switch (true) { - /* testNotGotoDeclarationGlobalConstantInTernary */ - case $x === ($cond) ? CONST_A : CONST_B: - // Do something. - break; -} - -/* testNotGotoDeclarationEnumWithType */ -enum Suit: string implements Colorful, CardGame {} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/GotoLabelTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/GotoLabelTest.php deleted file mode 100644 index 1b742201..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/GotoLabelTest.php +++ /dev/null @@ -1,176 +0,0 @@ - - * @copyright 2020 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -final class GotoLabelTest extends AbstractTokenizerTestCase -{ - - - /** - * Verify that the label in a goto statement is tokenized as T_STRING. - * - * @param string $testMarker The comment prefacing the target token. - * @param string $testContent The token content to expect. - * - * @dataProvider dataGotoStatement - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testGotoStatement($testMarker, $testContent) - { - $tokens = $this->phpcsFile->getTokens(); - - $label = $this->getTargetToken($testMarker, T_STRING); - - $this->assertTrue(is_int($label)); - $this->assertSame($testContent, $tokens[$label]['content']); - - }//end testGotoStatement() - - - /** - * Data provider. - * - * @see testGotoStatement() - * - * @return array> - */ - public static function dataGotoStatement() - { - return [ - 'label for goto statement' => [ - 'testMarker' => '/* testGotoStatement */', - 'testContent' => 'marker', - ], - 'label for goto statement in loop, keyword capitalized' => [ - 'testMarker' => '/* testGotoStatementInLoop */', - 'testContent' => 'end', - ], - ]; - - }//end dataGotoStatement() - - - /** - * Verify that the label in a goto declaration is tokenized as T_GOTO_LABEL. - * - * @param string $testMarker The comment prefacing the target token. - * @param string $testContent The token content to expect. - * - * @dataProvider dataGotoDeclaration - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testGotoDeclaration($testMarker, $testContent) - { - $tokens = $this->phpcsFile->getTokens(); - - $label = $this->getTargetToken($testMarker, T_GOTO_LABEL); - - $this->assertTrue(is_int($label)); - $this->assertSame($testContent, $tokens[$label]['content']); - - }//end testGotoDeclaration() - - - /** - * Data provider. - * - * @see testGotoDeclaration() - * - * @return array> - */ - public static function dataGotoDeclaration() - { - return [ - 'label in goto declaration - marker' => [ - 'testMarker' => '/* testGotoDeclaration */', - 'testContent' => 'marker:', - ], - 'label in goto declaration - end' => [ - 'testMarker' => '/* testGotoDeclarationOutsideLoop */', - 'testContent' => 'end:', - ], - ]; - - }//end dataGotoDeclaration() - - - /** - * Verify that the constant used in a switch - case statement is not confused with a goto label. - * - * @param string $testMarker The comment prefacing the target token. - * @param string $testContent The token content to expect. - * - * @dataProvider dataNotAGotoDeclaration - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testNotAGotoDeclaration($testMarker, $testContent) - { - $tokens = $this->phpcsFile->getTokens(); - $target = $this->getTargetToken($testMarker, [T_GOTO_LABEL, T_STRING], $testContent); - $tokenArray = $tokens[$target]; - - $this->assertSame(T_STRING, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (code)'); - $this->assertSame('T_STRING', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (type)'); - - }//end testNotAGotoDeclaration() - - - /** - * Data provider. - * - * @see testNotAGotoDeclaration() - * - * @return array> - */ - public static function dataNotAGotoDeclaration() - { - return [ - 'not goto label - global constant followed by switch-case colon' => [ - 'testMarker' => '/* testNotGotoDeclarationGlobalConstant */', - 'testContent' => 'CONSTANT', - ], - 'not goto label - namespaced constant followed by switch-case colon' => [ - 'testMarker' => '/* testNotGotoDeclarationNamespacedConstant */', - 'testContent' => 'CONSTANT', - ], - 'not goto label - class constant followed by switch-case colon' => [ - 'testMarker' => '/* testNotGotoDeclarationClassConstant */', - 'testContent' => 'CONSTANT', - ], - 'not goto label - class property use followed by switch-case colon' => [ - 'testMarker' => '/* testNotGotoDeclarationClassProperty */', - 'testContent' => 'property', - ], - 'not goto label - global constant followed by ternary else' => [ - 'testMarker' => '/* testNotGotoDeclarationGlobalConstantInTernary */', - 'testContent' => 'CONST_A', - ], - 'not goto label - global constant after ternary else' => [ - 'testMarker' => '/* testNotGotoDeclarationGlobalConstantInTernary */', - 'testContent' => 'CONST_B', - ], - 'not goto label - name of backed enum' => [ - 'testMarker' => '/* testNotGotoDeclarationEnumWithType */', - 'testContent' => 'Suit', - ], - ]; - - }//end dataNotAGotoDeclaration() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/HeredocNowdocTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/HeredocNowdocTest.inc deleted file mode 100644 index 5041dda1..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/HeredocNowdocTest.inc +++ /dev/null @@ -1,39 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; -use PHP_CodeSniffer\Util\Tokens; - -/** - * Tests the tokenization for heredoc/nowdoc constructs. - * - * Verifies that: - * - Nowdoc opener/closers are retokenized from `T_[START_|END_]HEREDOC` to `T_[START_|END_]NOWDOC`. - * - The contents of the heredoc/nowdoc is tokenized as `T_HEREDOC`/`T_NOWDOC`. - * - Each line of the contents has its own token, which includes the new line char. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - */ -final class HeredocNowdocTest extends AbstractTokenizerTestCase -{ - - - /** - * Verify tokenization a heredoc construct. - * - * @phpcs:disable Squiz.Arrays.ArrayDeclaration.SpaceBeforeDoubleArrow -- Readability is better with alignment. - * - * @return void - */ - public function testHeredocSingleLine() - { - $expectedSequence = [ - [T_START_HEREDOC => '<< 'Some $var text'."\n"], - [T_END_HEREDOC => 'EOD'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_START_HEREDOC); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testHeredocSingleLine() - - - /** - * Verify tokenization a nowdoc construct. - * - * @phpcs:disable Squiz.Arrays.ArrayDeclaration.SpaceBeforeDoubleArrow -- Readability is better with alignment. - * - * @return void - */ - public function testNowdocSingleLine() - { - $expectedSequence = [ - [T_START_NOWDOC => "<<<'MARKER'\n"], - [T_NOWDOC => 'Some text'."\n"], - [T_END_NOWDOC => 'MARKER'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_START_NOWDOC); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testNowdocSingleLine() - - - /** - * Verify tokenization a multiline heredoc construct. - * - * @phpcs:disable Squiz.Arrays.ArrayDeclaration.SpaceBeforeDoubleArrow -- Readability is better with alignment. - * - * @return void - */ - public function testHeredocMultiLine() - { - $expectedSequence = [ - [T_START_HEREDOC => '<<<"😬"'."\n"], - [T_HEREDOC => 'Lorum ipsum'."\n"], - [T_HEREDOC => 'Some $var text'."\n"], - [T_HEREDOC => 'dolor sit amet'."\n"], - [T_END_HEREDOC => '😬'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_START_HEREDOC); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testHeredocMultiLine() - - - /** - * Verify tokenization a multiline testNowdocSingleLine construct. - * - * @phpcs:disable Squiz.Arrays.ArrayDeclaration.SpaceBeforeDoubleArrow -- Readability is better with alignment. - * - * @return void - */ - public function testNowdocMultiLine() - { - $expectedSequence = [ - [T_START_NOWDOC => "<<<'multi_line'\n"], - [T_NOWDOC => 'Lorum ipsum'."\n"], - [T_NOWDOC => 'Some text'."\n"], - [T_NOWDOC => 'dolor sit amet'."\n"], - [T_END_NOWDOC => 'multi_line'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_START_NOWDOC); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testNowdocMultiLine() - - - /** - * Verify tokenization a multiline heredoc construct. - * - * @phpcs:disable Squiz.Arrays.ArrayDeclaration.SpaceBeforeDoubleArrow -- Readability is better with alignment. - * - * @return void - */ - public function testHeredocEndsOnBlankLine() - { - $expectedSequence = [ - [T_START_HEREDOC => '<< 'Lorum ipsum'."\n"], - [T_HEREDOC => 'dolor sit amet'."\n"], - [T_HEREDOC => "\n"], - [T_END_HEREDOC => 'EOD'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_START_HEREDOC); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testHeredocEndsOnBlankLine() - - - /** - * Verify tokenization a multiline testNowdocSingleLine construct. - * - * @phpcs:disable Squiz.Arrays.ArrayDeclaration.SpaceBeforeDoubleArrow -- Readability is better with alignment. - * - * @return void - */ - public function testNowdocEndsOnBlankLine() - { - $expectedSequence = [ - [T_START_NOWDOC => "<<<'EOD'\n"], - [T_NOWDOC => 'Lorum ipsum'."\n"], - [T_NOWDOC => 'dolor sit amet'."\n"], - [T_NOWDOC => "\n"], - [T_END_NOWDOC => 'EOD'], - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_START_NOWDOC); - - $this->checkTokenSequence($target, $expectedSequence); - - }//end testNowdocEndsOnBlankLine() - - - /** - * Test helper. Check a token sequence complies with an expected token sequence. - * - * @param int $startPtr The position in the file to start checking from. - * @param array> $expectedSequence The consecutive token constants and their contents to expect. - * - * @return void - */ - private function checkTokenSequence($startPtr, array $expectedSequence) - { - $tokens = $this->phpcsFile->getTokens(); - - $sequenceKey = 0; - $sequenceCount = count($expectedSequence); - - for ($i = $startPtr; $sequenceKey < $sequenceCount; $i++, $sequenceKey++) { - $currentItem = $expectedSequence[$sequenceKey]; - $expectedCode = key($currentItem); - $expectedType = Tokens::tokenName($expectedCode); - $expectedContent = current($currentItem); - $errorMsgSuffix = PHP_EOL.'(StackPtr: '.$i.' | Position in sequence: '.$sequenceKey.' | Expected: '.$expectedType.')'; - - $this->assertSame( - $expectedCode, - $tokens[$i]['code'], - 'Token tokenized as '.Tokens::tokenName($tokens[$i]['code']).', not '.$expectedType.' (code)'.$errorMsgSuffix - ); - - $this->assertSame( - $expectedType, - $tokens[$i]['type'], - 'Token tokenized as '.$tokens[$i]['type'].', not '.$expectedType.' (type)'.$errorMsgSuffix - ); - - $this->assertSame( - $expectedContent, - $tokens[$i]['content'], - 'Token content did not match expectations'.$errorMsgSuffix - ); - }//end for - - }//end checkTokenSequence() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/HeredocParseErrorTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/HeredocParseErrorTest.inc deleted file mode 100644 index d552b128..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/HeredocParseErrorTest.inc +++ /dev/null @@ -1,11 +0,0 @@ ->>>>>> master diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/HeredocParseErrorTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/HeredocParseErrorTest.php deleted file mode 100644 index 877706fb..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/HeredocParseErrorTest.php +++ /dev/null @@ -1,41 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -/** - * Tests the tokenization for an unclosed heredoc construct. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - */ -final class HeredocParseErrorTest extends AbstractTokenizerTestCase -{ - - - /** - * Verify that a heredoc (and nowdoc) start token is retokenized to T_STRING if no closer is found. - * - * @return void - */ - public function testMergeConflict() - { - $tokens = $this->phpcsFile->getTokens(); - - $token = $this->getTargetToken('/* testUnclosedHeredoc */', [T_START_HEREDOC, T_STRING], '<<< HEAD'."\n"); - $tokenArray = $tokens[$token]; - - $this->assertSame(T_STRING, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_START_HEREDOC (code)'); - $this->assertSame('T_STRING', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_START_HEREDOC (type)'); - - }//end testMergeConflict() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/HeredocStringTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/HeredocStringTest.inc deleted file mode 100644 index ae43e24a..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/HeredocStringTest.inc +++ /dev/null @@ -1,193 +0,0 @@ -bar -EOD; - -/* testProperty2 */ -$heredoc = <<<"EOD" -{$foo->bar} -EOD; - -/* testMethod1 */ -$heredoc = <<bar()} -EOD; - -/* testClosure1 */ -$heredoc = <<<"EOD" -{$foo()} -EOD; - -/* testChain1 */ -$heredoc = <<baz()()} -EOD; - -/* testVariableVar1 */ -$heredoc = <<<"EOD" -${$bar} -EOD; - -/* testVariableVar2 */ -$heredoc = <<bar} -EOD; - -/* testNested1 */ -$heredoc = <<{$baz}} -EOD; - -/* testNested4 */ -$heredoc = <<<"EOD" -${foo->{${'a'}}} -EOD; - -/* testNested5 */ -$heredoc = <<{"${'a'}"}} -EOD; - -/* testSimple1Wrapped */ -$heredoc = <<bar Something -EOD; - -/* testProperty2Wrapped */ -$heredoc = <<<"EOD" -Do {$foo->bar} Something -EOD; - -/* testMethod1Wrapped */ -$heredoc = <<bar()} Something -EOD; - -/* testClosure1Wrapped */ -$heredoc = <<<"EOD" -Do {$foo()} Something -EOD; - -/* testChain1Wrapped */ -$heredoc = <<baz()()} Something -EOD; - -/* testVariableVar1Wrapped */ -$heredoc = <<<"EOD" -Do ${$bar} Something -EOD; - -/* testVariableVar2Wrapped */ -$heredoc = <<bar} Something -EOD; - -/* testNested1Wrapped */ -$heredoc = <<{$baz}} Something -EOD; - -/* testNested4Wrapped */ -$heredoc = <<<"EOD" -Do ${foo->{${'a'}}} Something -EOD; - -/* testNested5Wrapped */ -$heredoc = <<{"${'a'}"}} Something -EOD; diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/HeredocStringTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/HeredocStringTest.php deleted file mode 100644 index c31c1753..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/HeredocStringTest.php +++ /dev/null @@ -1,161 +0,0 @@ - - * @copyright 2022 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -final class HeredocStringTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that heredoc strings contain the complete interpolated string. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * @param string $expectedContent The expected content of the heredoc string. - * - * @dataProvider dataHeredocString - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testHeredocString($testMarker, $expectedContent) - { - $tokens = $this->phpcsFile->getTokens(); - - $target = $this->getTargetToken($testMarker, T_HEREDOC); - $this->assertSame($expectedContent."\n", $tokens[$target]['content']); - - }//end testHeredocString() - - - /** - * Test that heredoc strings contain the complete interpolated string when combined with other texts. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * @param string $expectedContent The expected content of the heredoc string. - * - * @dataProvider dataHeredocString - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testHeredocStringWrapped($testMarker, $expectedContent) - { - $tokens = $this->phpcsFile->getTokens(); - - $testMarker = substr($testMarker, 0, -3).'Wrapped */'; - $target = $this->getTargetToken($testMarker, T_HEREDOC); - $this->assertSame('Do '.$expectedContent." Something\n", $tokens[$target]['content']); - - }//end testHeredocStringWrapped() - - - /** - * Data provider. - * - * Type reference: - * 1. Directly embedded variables. - * 2. Braces outside the variable. - * 3. Braces after the dollar sign. - * 4. Variable variables and expressions. - * - * @link https://wiki.php.net/rfc/deprecate_dollar_brace_string_interpolation - * - * @see testHeredocString() - * - * @return array> - */ - public static function dataHeredocString() - { - return [ - 'Type 1: simple variable' => [ - 'testMarker' => '/* testSimple1 */', - 'expectedContent' => '$foo', - ], - 'Type 2: simple variable' => [ - 'testMarker' => '/* testSimple2 */', - 'expectedContent' => '{$foo}', - ], - 'Type 3: simple variable' => [ - 'testMarker' => '/* testSimple3 */', - 'expectedContent' => '${foo}', - ], - 'Type 1: array offset' => [ - 'testMarker' => '/* testDIM1 */', - 'expectedContent' => '$foo[bar]', - ], - 'Type 2: array offset' => [ - 'testMarker' => '/* testDIM2 */', - 'expectedContent' => '{$foo[\'bar\']}', - ], - 'Type 3: array offset' => [ - 'testMarker' => '/* testDIM3 */', - 'expectedContent' => '${foo[\'bar\']}', - ], - 'Type 1: object property' => [ - 'testMarker' => '/* testProperty1 */', - 'expectedContent' => '$foo->bar', - ], - 'Type 2: object property' => [ - 'testMarker' => '/* testProperty2 */', - 'expectedContent' => '{$foo->bar}', - ], - 'Type 2: object method call' => [ - 'testMarker' => '/* testMethod1 */', - 'expectedContent' => '{$foo->bar()}', - ], - 'Type 2: closure function call' => [ - 'testMarker' => '/* testClosure1 */', - 'expectedContent' => '{$foo()}', - ], - 'Type 2: chaining various syntaxes' => [ - 'testMarker' => '/* testChain1 */', - 'expectedContent' => '{$foo[\'bar\']->baz()()}', - ], - 'Type 4: variable variables' => [ - 'testMarker' => '/* testVariableVar1 */', - 'expectedContent' => '${$bar}', - ], - 'Type 4: variable constants' => [ - 'testMarker' => '/* testVariableVar2 */', - 'expectedContent' => '${(foo)}', - ], - 'Type 4: object property' => [ - 'testMarker' => '/* testVariableVar3 */', - 'expectedContent' => '${foo->bar}', - ], - 'Type 4: variable variable nested in array offset' => [ - 'testMarker' => '/* testNested1 */', - 'expectedContent' => '${foo["${bar}"]}', - ], - 'Type 4: variable array offset nested in array offset' => [ - 'testMarker' => '/* testNested2 */', - 'expectedContent' => '${foo["${bar[\'baz\']}"]}', - ], - 'Type 4: variable object property' => [ - 'testMarker' => '/* testNested3 */', - 'expectedContent' => '${foo->{$baz}}', - ], - 'Type 4: variable object property - complex with single quotes' => [ - 'testMarker' => '/* testNested4 */', - 'expectedContent' => '${foo->{${\'a\'}}}', - ], - 'Type 4: variable object property - complex with single and double quotes' => [ - 'testMarker' => '/* testNested5 */', - 'expectedContent' => '${foo->{"${\'a\'}"}}', - ], - ]; - - }//end dataHeredocString() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/NamedFunctionCallArgumentsTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/NamedFunctionCallArgumentsTest.inc deleted file mode 100644 index 2f1d20bf..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/NamedFunctionCallArgumentsTest.inc +++ /dev/null @@ -1,407 +0,0 @@ -getPos(skip: false), - count: count(array_or_countable: $array), - value: 50 -); - -array_fill( - start_index: /* testNestedFunctionCallInner1 */ $obj->getPos(skip: false), - count: /* testNestedFunctionCallInner2 */ count(array_or_countable: $array), - value: 50 -); - -/* testNamespaceRelativeFunction */ -namespace\function_name(label:$string, more: false); - -/* testPartiallyQualifiedFunction */ -Partially\Qualified\function_name(label:$string, more: false); - -/* testFullyQualifiedFunction */ -\Fully\Qualified\function_name(label: $string, more:false); - -/* testVariableFunction */ -$fn(label: $string, more:false); - -/* testVariableVariableFunction */ -${$fn}(label: $string, more:false); - -/* testMethodCall */ -$obj->methodName(label: $foo, more: $bar); - -/* testVariableMethodCall */ -$obj->{$var}(label: $foo, more: $bar); - -/* testClassInstantiation */ -$obj = new MyClass(label: $string, more:false); - -/* testClassInstantiationSelf */ -$obj = new self(label: $string, more:true); - -/* testClassInstantiationStatic */ -$obj = new static(label: $string, more:false); - -/* testAnonClass */ -$anon = new class(label: $string, more: false) { - public function __construct($label, $more) {} -}; - -function myfoo( $💩💩💩, $Пасха, $_valid) {} -/* testNonAsciiNames */ -foo(💩💩💩: [], Пасха: 'text', _valid: 123); - -/* testMixedPositionalAndNamedArgsWithTernary */ -foo( $cond ? true : false, name: $value2 ); - -/* testNamedArgWithTernary */ -foo( label: $cond ? true : false, more: $cond ? CONSTANT_A : CONSTANT_B ); - -/* testTernaryWithFunctionCallsInThenElse */ -echo $cond ? foo( label: $something ) : foo( more: $something_else ); - -/* testTernaryWithConstantsInThenElse */ -echo $cond ? CONSTANT_NAME : OTHER_CONSTANT; - -switch ($s) { - /* testSwitchCaseWithConstant */ - case MY_CONSTANT: - // Do something. - break; - - /* testSwitchCaseWithClassProperty */ - case $obj->property: - // Do something. - break; - - /* testSwitchDefault */ - default: - // Do something. - break; -} - -/* testTernaryWithClosuresAndReturnTypes */ -$closure = $cond ? function() : bool {return true;} : function() : int {return 123;}; - -/* testTernaryWithArrowFunctionsAndReturnTypes */ -$fn = $cond ? fn() : bool => true : fn() : int => 123; - - -/* testCompileErrorNamedBeforePositional */ -// Not the concern of PHPCS. Should still be handled. -test(param: $bar, $foo); - -/* testDuplicateName1 */ -// Error Exception, but not the concern of PHPCS. Should still be handled. -test(param: 1, /* testDuplicateName2 */ param: 2); - -/* testIncorrectOrderWithVariadic */ -// Error Exception, but not the concern of PHPCS. Should still be handled. -array_fill(start_index: 0, ...[100, 50]); - -/* testCompileErrorIncorrectOrderWithVariadic */ -// Not the concern of PHPCS. Should still be handled. -test(...$values, param: $value); // Compile-time error - -/* testParseErrorNoValue */ -// Not the concern of PHPCS. Should still be handled. -test(param1:, param2:); - -/* testParseErrorDynamicName */ -// Parse error. Ignore. -function_name($variableStoringParamName: $value); - -/* testParseErrorExit */ -// Exit is a language construct, not a function. Named params not supported, handle it anyway. -exit(status: $value); - -/* testParseErrorEmpty */ -// Empty is a language construct, not a function. Named params not supported, handle it anyway. -empty(variable: $value); - -/* testParseErrorEval */ -// Eval is a language construct, not a function. Named params not supported, handle it anyway. -eval(code: $value); - -/* testParseErrorArbitraryParentheses */ -// Parse error. Not named param, handle it anyway. -$calc = (something: $value / $other); - - -/* testReservedKeywordAbstract1 */ -foobar(abstract: $value, /* testReservedKeywordAbstract2 */ abstract: $value); - -/* testReservedKeywordAnd1 */ -foobar(and: $value, /* testReservedKeywordAnd2 */ and: $value); - -/* testReservedKeywordArray1 */ -foobar(array: $value, /* testReservedKeywordArray2 */ array: $value); - -/* testReservedKeywordAs1 */ -foobar(as: $value, /* testReservedKeywordAs2 */ as: $value); - -/* testReservedKeywordBreak1 */ -foobar(break: $value, /* testReservedKeywordBreak2 */ break: $value); - -/* testReservedKeywordCallable1 */ -foobar(callable: $value, /* testReservedKeywordCallable2 */ callable: $value); - -/* testReservedKeywordCase1 */ -foobar(case: $value, /* testReservedKeywordCase2 */ case: $value); - -/* testReservedKeywordCatch1 */ -foobar(catch: $value, /* testReservedKeywordCatch2 */ catch: $value); - -/* testReservedKeywordClass1 */ -foobar(class: $value, /* testReservedKeywordClass2 */ class: $value); - -/* testReservedKeywordClone1 */ -foobar(clone: $value, /* testReservedKeywordClone2 */ clone: $value); - -/* testReservedKeywordConst1 */ -foobar(const: $value, /* testReservedKeywordConst2 */ const: $value); - -/* testReservedKeywordContinue1 */ -foobar(continue: $value, /* testReservedKeywordContinue2 */ continue: $value); - -/* testReservedKeywordDeclare1 */ -foobar(declare: $value, /* testReservedKeywordDeclare2 */ declare: $value); - -/* testReservedKeywordDefault1 */ -foobar(default: $value, /* testReservedKeywordDefault2 */ default: $value); - -/* testReservedKeywordDie1 */ -foobar(die: $value, /* testReservedKeywordDie2 */ die: $value); - -/* testReservedKeywordDo1 */ -foobar(do: $value, /* testReservedKeywordDo2 */ do: $value); - -/* testReservedKeywordEcho1 */ -foobar(echo: $value, /* testReservedKeywordEcho2 */ echo: $value); - -/* testReservedKeywordElse1 */ -foobar(else: $value, /* testReservedKeywordElse2 */ else: $value); - -/* testReservedKeywordElseif1 */ -foobar(elseif: $value, /* testReservedKeywordElseif2 */ elseif: $value); - -/* testReservedKeywordEmpty1 */ -foobar(empty: $value, /* testReservedKeywordEmpty2 */ empty: $value); - -/* testReservedKeywordEnum1 */ -foobar(enum: $value, /* testReservedKeywordEnum2 */ enum: $value); - -/* testReservedKeywordEnddeclare1 */ -foobar(enddeclare: $value, /* testReservedKeywordEnddeclare2 */ enddeclare: $value); - -/* testReservedKeywordEndfor1 */ -foobar(endfor: $value, /* testReservedKeywordEndfor2 */ endfor: $value); - -/* testReservedKeywordEndforeach1 */ -foobar(endforeach: $value, /* testReservedKeywordEndforeach2 */ endforeach: $value); - -/* testReservedKeywordEndif1 */ -foobar(endif: $value, /* testReservedKeywordEndif2 */ endif: $value); - -/* testReservedKeywordEndswitch1 */ -foobar(endswitch: $value, /* testReservedKeywordEndswitch2 */ endswitch: $value); - -/* testReservedKeywordEndwhile1 */ -foobar(endwhile: $value, /* testReservedKeywordEndwhile2 */ endwhile: $value); - -/* testReservedKeywordEval1 */ -foobar(eval: $value, /* testReservedKeywordEval2 */ eval: $value); - -/* testReservedKeywordExit1 */ -foobar(exit: $value, /* testReservedKeywordExit2 */ exit: $value); - -/* testReservedKeywordExtends1 */ -foobar(extends: $value, /* testReservedKeywordExtends2 */ extends: $value); - -/* testReservedKeywordFinal1 */ -foobar(final: $value, /* testReservedKeywordFinal2 */ final: $value); - -/* testReservedKeywordFinally1 */ -foobar(finally: $value, /* testReservedKeywordFinally2 */ finally: $value); - -/* testReservedKeywordFn1 */ -foobar(fn: $value, /* testReservedKeywordFn2 */ fn: $value); - -/* testReservedKeywordFor1 */ -foobar(for: $value, /* testReservedKeywordFor2 */ for: $value); - -/* testReservedKeywordForeach1 */ -foobar(foreach: $value, /* testReservedKeywordForeach2 */ foreach: $value); - -/* testReservedKeywordFunction1 */ -foobar(function: $value, /* testReservedKeywordFunction2 */ function: $value); - -/* testReservedKeywordGlobal1 */ -foobar(global: $value, /* testReservedKeywordGlobal2 */ global: $value); - -/* testReservedKeywordGoto1 */ -foobar(goto: $value, /* testReservedKeywordGoto2 */ goto: $value); - -/* testReservedKeywordIf1 */ -foobar(if: $value, /* testReservedKeywordIf2 */ if: $value); - -/* testReservedKeywordImplements1 */ -foobar(implements: $value, /* testReservedKeywordImplements2 */ implements: $value); - -/* testReservedKeywordInclude1 */ -foobar(include: $value, /* testReservedKeywordInclude2 */ include: $value); - -/* testReservedKeywordInclude_once1 */ -foobar(include_once: $value, /* testReservedKeywordInclude_once2 */ include_once: $value); - -/* testReservedKeywordInstanceof1 */ -foobar(instanceof: $value, /* testReservedKeywordInstanceof2 */ instanceof: $value); - -/* testReservedKeywordInsteadof1 */ -foobar(insteadof: $value, /* testReservedKeywordInsteadof2 */ insteadof: $value); - -/* testReservedKeywordInterface1 */ -foobar(interface: $value, /* testReservedKeywordInterface2 */ interface: $value); - -/* testReservedKeywordIsset1 */ -foobar(isset: $value, /* testReservedKeywordIsset2 */ isset: $value); - -/* testReservedKeywordList1 */ -foobar(list: $value, /* testReservedKeywordList2 */ list: $value); - -/* testReservedKeywordMatch1 */ -foobar(match: $value, /* testReservedKeywordMatch2 */ match: $value); - -/* testReservedKeywordNamespace1 */ -foobar(namespace: $value, /* testReservedKeywordNamespace2 */ namespace: $value); - -/* testReservedKeywordNew1 */ -foobar(new: $value, /* testReservedKeywordNew2 */ new: $value); - -/* testReservedKeywordOr1 */ -foobar(or: $value, /* testReservedKeywordOr2 */ or: $value); - -/* testReservedKeywordPrint1 */ -foobar(print: $value, /* testReservedKeywordPrint2 */ print: $value); - -/* testReservedKeywordPrivate1 */ -foobar(private: $value, /* testReservedKeywordPrivate2 */ private: $value); - -/* testReservedKeywordProtected1 */ -foobar(protected: $value, /* testReservedKeywordProtected2 */ protected: $value); - -/* testReservedKeywordPublic1 */ -foobar(public: $value, /* testReservedKeywordPublic2 */ public: $value); - -/* testReservedKeywordReadonly1 */ -foobar(readonly: $value, /* testReservedKeywordReadonly2 */ readonly: $value); - -/* testReservedKeywordRequire1 */ -foobar(require: $value, /* testReservedKeywordRequire2 */ require: $value); - -/* testReservedKeywordRequire_once1 */ -foobar(require_once: $value, /* testReservedKeywordRequire_once2 */ require_once: $value); - -/* testReservedKeywordReturn1 */ -foobar(return: $value, /* testReservedKeywordReturn2 */ return: $value); - -/* testReservedKeywordStatic1 */ -foobar(static: $value, /* testReservedKeywordStatic2 */ static: $value); - -/* testReservedKeywordSwitch1 */ -foobar(switch: $value, /* testReservedKeywordSwitch2 */ switch: $value); - -/* testReservedKeywordThrow1 */ -foobar(throw: $value, /* testReservedKeywordThrow2 */ throw: $value); - -/* testReservedKeywordTrait1 */ -foobar(trait: $value, /* testReservedKeywordTrait2 */ trait: $value); - -/* testReservedKeywordTry1 */ -foobar(try: $value, /* testReservedKeywordTry2 */ try: $value); - -/* testReservedKeywordUnset1 */ -foobar(unset: $value, /* testReservedKeywordUnset2 */ unset: $value); - -/* testReservedKeywordUse1 */ -foobar(use: $value, /* testReservedKeywordUse2 */ use: $value); - -/* testReservedKeywordVar1 */ -foobar(var: $value, /* testReservedKeywordVar2 */ var: $value); - -/* testReservedKeywordWhile1 */ -foobar(while: $value, /* testReservedKeywordWhile2 */ while: $value); - -/* testReservedKeywordXor1 */ -foobar(xor: $value, /* testReservedKeywordXor2 */ xor: $value); - -/* testReservedKeywordYield1 */ -foobar(yield: $value, /* testReservedKeywordYield2 */ yield: $value); - -/* testReservedKeywordInt1 */ -foobar(int: $value, /* testReservedKeywordInt2 */ int: $value); - -/* testReservedKeywordFloat1 */ -foobar(float: $value, /* testReservedKeywordFloat2 */ float: $value); - -/* testReservedKeywordBool1 */ -foobar(bool: $value, /* testReservedKeywordBool2 */ bool: $value); - -/* testReservedKeywordString1 */ -foobar(string: $value, /* testReservedKeywordString2 */ string: $value); - -/* testReservedKeywordTrue1 */ -foobar(true: $value, /* testReservedKeywordTrue2 */ true: $value); - -/* testReservedKeywordFalse1 */ -foobar(false: $value, /* testReservedKeywordFalse2 */ false: $value); - -/* testReservedKeywordNull1 */ -foobar(null: $value, /* testReservedKeywordNull2 */ null: $value); - -/* testReservedKeywordVoid1 */ -foobar(void: $value, /* testReservedKeywordVoid2 */ void: $value); - -/* testReservedKeywordIterable1 */ -foobar(iterable: $value, /* testReservedKeywordIterable2 */ iterable: $value); - -/* testReservedKeywordObject1 */ -foobar(object: $value, /* testReservedKeywordObject2 */ object: $value); - -/* testReservedKeywordResource1 */ -foobar(resource: $value, /* testReservedKeywordResource2 */ resource: $value); - -/* testReservedKeywordMixed1 */ -foobar(mixed: $value, /* testReservedKeywordMixed2 */ mixed: $value); - -/* testReservedKeywordNumeric1 */ -foobar(numeric: $value, /* testReservedKeywordNumeric2 */ numeric: $value); - -/* testReservedKeywordParent1 */ -foobar(parent: $value, /* testReservedKeywordParent2 */ parent: $value); - -/* testReservedKeywordSelf1 */ -foobar(self: $value, /* testReservedKeywordSelf2 */ self: $value); - -/* testReservedKeywordNever1 */ -foobar(never: $value, /* testReservedKeywordNever2 */ never: $value); diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/NamedFunctionCallArgumentsTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/NamedFunctionCallArgumentsTest.php deleted file mode 100644 index df124e91..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/NamedFunctionCallArgumentsTest.php +++ /dev/null @@ -1,974 +0,0 @@ - - * @copyright 2020 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; -use PHP_CodeSniffer\Util\Tokens; - -final class NamedFunctionCallArgumentsTest extends AbstractTokenizerTestCase -{ - - - /** - * Verify that parameter labels are tokenized as T_PARAM_NAME and that - * the colon after it is tokenized as a T_COLON. - * - * @param string $testMarker The comment prefacing the target token. - * @param array $parameters The token content for each parameter label to look for. - * - * @dataProvider dataNamedFunctionCallArguments - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testNamedFunctionCallArguments($testMarker, $parameters) - { - $tokens = $this->phpcsFile->getTokens(); - - foreach ($parameters as $content) { - $label = $this->getTargetToken($testMarker, [T_STRING, T_PARAM_NAME], $content); - - $this->assertSame( - T_PARAM_NAME, - $tokens[$label]['code'], - 'Token tokenized as '.$tokens[$label]['type'].', not T_PARAM_NAME (code)' - ); - $this->assertSame( - 'T_PARAM_NAME', - $tokens[$label]['type'], - 'Token tokenized as '.$tokens[$label]['type'].', not T_PARAM_NAME (type)' - ); - - // Get the next non-empty token. - $colon = $this->phpcsFile->findNext(Tokens::$emptyTokens, ($label + 1), null, true); - - $this->assertSame( - ':', - $tokens[$colon]['content'], - 'Next token after parameter name is not a colon. Found: '.$tokens[$colon]['content'] - ); - $this->assertSame( - T_COLON, - $tokens[$colon]['code'], - 'Token tokenized as '.$tokens[$colon]['type'].', not T_COLON (code)' - ); - $this->assertSame( - 'T_COLON', - $tokens[$colon]['type'], - 'Token tokenized as '.$tokens[$colon]['type'].', not T_COLON (type)' - ); - }//end foreach - - }//end testNamedFunctionCallArguments() - - - /** - * Data provider. - * - * @see testNamedFunctionCallArguments() - * - * @return array>> - */ - public static function dataNamedFunctionCallArguments() - { - return [ - 'function call, single line, all named args' => [ - 'testMarker' => '/* testNamedArgs */', - 'parameters' => [ - 'start_index', - 'count', - 'value', - ], - ], - 'function call, multi-line, all named args' => [ - 'testMarker' => '/* testNamedArgsMultiline */', - 'parameters' => [ - 'start_index', - 'count', - 'value', - ], - ], - 'function call, single line, all named args; comments and whitespace' => [ - 'testMarker' => '/* testNamedArgsWithWhitespaceAndComments */', - 'parameters' => [ - 'start_index', - 'count', - 'value', - ], - ], - 'function call, single line, mixed positional and named args' => [ - 'testMarker' => '/* testMixedPositionalAndNamedArgs */', - 'parameters' => [ - 'double_encode', - ], - ], - 'function call containing nested function call values' => [ - 'testMarker' => '/* testNestedFunctionCallOuter */', - 'parameters' => [ - 'start_index', - 'count', - 'value', - ], - ], - 'function call nested in named arg [1]' => [ - 'testMarker' => '/* testNestedFunctionCallInner1 */', - 'parameters' => [ - 'skip', - ], - ], - 'function call nested in named arg [2]' => [ - 'testMarker' => '/* testNestedFunctionCallInner2 */', - 'parameters' => [ - 'array_or_countable', - ], - ], - 'namespace relative function call' => [ - 'testMarker' => '/* testNamespaceRelativeFunction */', - 'parameters' => [ - 'label', - 'more', - ], - ], - 'partially qualified function call' => [ - 'testMarker' => '/* testPartiallyQualifiedFunction */', - 'parameters' => [ - 'label', - 'more', - ], - ], - 'fully qualified function call' => [ - 'testMarker' => '/* testFullyQualifiedFunction */', - 'parameters' => [ - 'label', - 'more', - ], - ], - 'variable function call' => [ - 'testMarker' => '/* testVariableFunction */', - 'parameters' => [ - 'label', - 'more', - ], - ], - 'variable variable function call' => [ - 'testMarker' => '/* testVariableVariableFunction */', - 'parameters' => [ - 'label', - 'more', - ], - ], - 'method call' => [ - 'testMarker' => '/* testMethodCall */', - 'parameters' => [ - 'label', - 'more', - ], - ], - 'variable method call' => [ - 'testMarker' => '/* testVariableMethodCall */', - 'parameters' => [ - 'label', - 'more', - ], - ], - 'class instantiation' => [ - 'testMarker' => '/* testClassInstantiation */', - 'parameters' => [ - 'label', - 'more', - ], - ], - 'class instantiation with "self"' => [ - 'testMarker' => '/* testClassInstantiationSelf */', - 'parameters' => [ - 'label', - 'more', - ], - ], - 'class instantiation with "static"' => [ - 'testMarker' => '/* testClassInstantiationStatic */', - 'parameters' => [ - 'label', - 'more', - ], - ], - 'anonymous class instantiation' => [ - 'testMarker' => '/* testAnonClass */', - 'parameters' => [ - 'label', - 'more', - ], - ], - 'function call with non-ascii characters in the variable name labels' => [ - 'testMarker' => '/* testNonAsciiNames */', - 'parameters' => [ - '💩💩💩', - 'Пасха', - '_valid', - ], - ], - - // Coding errors which should still be handled. - 'invalid: named arg before positional (compile error)' => [ - 'testMarker' => '/* testCompileErrorNamedBeforePositional */', - 'parameters' => [ - 'param', - ], - ], - 'invalid: duplicate parameter name [1]' => [ - 'testMarker' => '/* testDuplicateName1 */', - 'parameters' => [ - 'param', - ], - ], - 'invalid: duplicate parameter name [2]' => [ - 'testMarker' => '/* testDuplicateName2 */', - 'parameters' => [ - 'param', - ], - ], - 'invalid: named arg before variadic (error exception)' => [ - 'testMarker' => '/* testIncorrectOrderWithVariadic */', - 'parameters' => [ - 'start_index', - ], - ], - 'invalid: named arg after variadic (compile error)' => [ - 'testMarker' => '/* testCompileErrorIncorrectOrderWithVariadic */', - 'parameters' => [ - 'param', - ], - ], - 'invalid: named arg without value (parse error)' => [ - 'testMarker' => '/* testParseErrorNoValue */', - 'parameters' => [ - 'param1', - 'param2', - ], - ], - 'invalid: named arg in exit() (parse error)' => [ - 'testMarker' => '/* testParseErrorExit */', - 'parameters' => [ - 'status', - ], - ], - 'invalid: named arg in empty() (parse error)' => [ - 'testMarker' => '/* testParseErrorEmpty */', - 'parameters' => [ - 'variable', - ], - ], - 'invalid: named arg in eval() (parse error)' => [ - 'testMarker' => '/* testParseErrorEval */', - 'parameters' => [ - 'code', - ], - ], - 'invalid: named arg in arbitrary parentheses (parse error)' => [ - 'testMarker' => '/* testParseErrorArbitraryParentheses */', - 'parameters' => [ - 'something', - ], - ], - ]; - - }//end dataNamedFunctionCallArguments() - - - /** - * Verify that other T_STRING tokens within a function call are still tokenized as T_STRING. - * - * @param string $testMarker The comment prefacing the target token. - * @param string $content The token content to look for. - * - * @dataProvider dataOtherTstringInFunctionCall - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testOtherTstringInFunctionCall($testMarker, $content) - { - $tokens = $this->phpcsFile->getTokens(); - - $label = $this->getTargetToken($testMarker, [T_STRING, T_PARAM_NAME], $content); - - $this->assertSame( - T_STRING, - $tokens[$label]['code'], - 'Token tokenized as '.$tokens[$label]['type'].', not T_STRING (code)' - ); - $this->assertSame( - 'T_STRING', - $tokens[$label]['type'], - 'Token tokenized as '.$tokens[$label]['type'].', not T_STRING (type)' - ); - - }//end testOtherTstringInFunctionCall() - - - /** - * Data provider. - * - * @see testOtherTstringInFunctionCall() - * - * @return array> - */ - public static function dataOtherTstringInFunctionCall() - { - return [ - 'not arg name - global constant' => [ - 'testMarker' => '/* testPositionalArgs */', - 'content' => 'START_INDEX', - ], - 'not arg name - fully qualified constant' => [ - 'testMarker' => '/* testPositionalArgs */', - 'content' => 'COUNT', - ], - 'not arg name - namespace relative constant' => [ - 'testMarker' => '/* testPositionalArgs */', - 'content' => 'VALUE', - ], - 'not arg name - unqualified function call' => [ - 'testMarker' => '/* testNestedFunctionCallInner2 */', - 'content' => 'count', - ], - ]; - - }//end dataOtherTstringInFunctionCall() - - - /** - * Verify whether the colons are tokenized correctly when a ternary is used in a mixed - * positional and named arguments function call. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testMixedPositionalAndNamedArgsWithTernary() - { - $tokens = $this->phpcsFile->getTokens(); - - $true = $this->getTargetToken('/* testMixedPositionalAndNamedArgsWithTernary */', T_TRUE); - - // Get the next non-empty token. - $colon = $this->phpcsFile->findNext(Tokens::$emptyTokens, ($true + 1), null, true); - - $this->assertSame( - T_INLINE_ELSE, - $tokens[$colon]['code'], - 'Token tokenized as '.$tokens[$colon]['type'].', not T_INLINE_ELSE (code)' - ); - $this->assertSame( - 'T_INLINE_ELSE', - $tokens[$colon]['type'], - 'Token tokenized as '.$tokens[$colon]['type'].', not T_INLINE_ELSE (type)' - ); - - $label = $this->getTargetToken('/* testMixedPositionalAndNamedArgsWithTernary */', T_PARAM_NAME, 'name'); - - // Get the next non-empty token. - $colon = $this->phpcsFile->findNext(Tokens::$emptyTokens, ($label + 1), null, true); - - $this->assertSame( - ':', - $tokens[$colon]['content'], - 'Next token after parameter name is not a colon. Found: '.$tokens[$colon]['content'] - ); - $this->assertSame( - T_COLON, - $tokens[$colon]['code'], - 'Token tokenized as '.$tokens[$colon]['type'].', not T_COLON (code)' - ); - $this->assertSame( - 'T_COLON', - $tokens[$colon]['type'], - 'Token tokenized as '.$tokens[$colon]['type'].', not T_COLON (type)' - ); - - }//end testMixedPositionalAndNamedArgsWithTernary() - - - /** - * Verify whether the colons are tokenized correctly when a ternary is used - * in a named arguments function call. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testNamedArgWithTernary() - { - $tokens = $this->phpcsFile->getTokens(); - - /* - * First argument. - */ - - $label = $this->getTargetToken('/* testNamedArgWithTernary */', T_PARAM_NAME, 'label'); - - // Get the next non-empty token. - $colon = $this->phpcsFile->findNext(Tokens::$emptyTokens, ($label + 1), null, true); - - $this->assertSame( - ':', - $tokens[$colon]['content'], - 'First arg: Next token after parameter name is not a colon. Found: '.$tokens[$colon]['content'] - ); - $this->assertSame( - T_COLON, - $tokens[$colon]['code'], - 'First arg: Token tokenized as '.$tokens[$colon]['type'].', not T_COLON (code)' - ); - $this->assertSame( - 'T_COLON', - $tokens[$colon]['type'], - 'First arg: Token tokenized as '.$tokens[$colon]['type'].', not T_COLON (type)' - ); - - $true = $this->getTargetToken('/* testNamedArgWithTernary */', T_TRUE); - - // Get the next non-empty token. - $colon = $this->phpcsFile->findNext(Tokens::$emptyTokens, ($true + 1), null, true); - - $this->assertSame( - T_INLINE_ELSE, - $tokens[$colon]['code'], - 'First arg ternary: Token tokenized as '.$tokens[$colon]['type'].', not T_INLINE_ELSE (code)' - ); - $this->assertSame( - 'T_INLINE_ELSE', - $tokens[$colon]['type'], - 'First arg ternary: Token tokenized as '.$tokens[$colon]['type'].', not T_INLINE_ELSE (type)' - ); - - /* - * Second argument. - */ - - $label = $this->getTargetToken('/* testNamedArgWithTernary */', T_PARAM_NAME, 'more'); - - // Get the next non-empty token. - $colon = $this->phpcsFile->findNext(Tokens::$emptyTokens, ($label + 1), null, true); - - $this->assertSame( - ':', - $tokens[$colon]['content'], - 'Second arg: Next token after parameter name is not a colon. Found: '.$tokens[$colon]['content'] - ); - $this->assertSame( - T_COLON, - $tokens[$colon]['code'], - 'Second arg: Token tokenized as '.$tokens[$colon]['type'].', not T_COLON (code)' - ); - $this->assertSame( - 'T_COLON', - $tokens[$colon]['type'], - 'Second arg: Token tokenized as '.$tokens[$colon]['type'].', not T_COLON (type)' - ); - - $true = $this->getTargetToken('/* testNamedArgWithTernary */', T_STRING, 'CONSTANT_A'); - - // Get the next non-empty token. - $colon = $this->phpcsFile->findNext(Tokens::$emptyTokens, ($true + 1), null, true); - - $this->assertSame( - T_INLINE_ELSE, - $tokens[$colon]['code'], - 'Second arg ternary: Token tokenized as '.$tokens[$colon]['type'].', not T_INLINE_ELSE (code)' - ); - $this->assertSame( - 'T_INLINE_ELSE', - $tokens[$colon]['type'], - 'Second arg ternary: Token tokenized as '.$tokens[$colon]['type'].', not T_INLINE_ELSE (type)' - ); - - }//end testNamedArgWithTernary() - - - /** - * Verify whether the colons are tokenized correctly when named arguments - * function calls are used in a ternary. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testTernaryWithFunctionCallsInThenElse() - { - $tokens = $this->phpcsFile->getTokens(); - - /* - * Then. - */ - - $label = $this->getTargetToken('/* testTernaryWithFunctionCallsInThenElse */', T_PARAM_NAME, 'label'); - - // Get the next non-empty token. - $colon = $this->phpcsFile->findNext(Tokens::$emptyTokens, ($label + 1), null, true); - - $this->assertSame( - ':', - $tokens[$colon]['content'], - 'Function in then: Next token after parameter name is not a colon. Found: '.$tokens[$colon]['content'] - ); - $this->assertSame( - T_COLON, - $tokens[$colon]['code'], - 'Function in then: Token tokenized as '.$tokens[$colon]['type'].', not T_COLON (code)' - ); - $this->assertSame( - 'T_COLON', - $tokens[$colon]['type'], - 'Function in then: Token tokenized as '.$tokens[$colon]['type'].', not T_COLON (type)' - ); - - $closeParens = $this->getTargetToken('/* testTernaryWithFunctionCallsInThenElse */', T_CLOSE_PARENTHESIS); - - // Get the next non-empty token. - $colon = $this->phpcsFile->findNext(Tokens::$emptyTokens, ($closeParens + 1), null, true); - - $this->assertSame( - T_INLINE_ELSE, - $tokens[$colon]['code'], - 'Token tokenized as '.$tokens[$colon]['type'].', not T_INLINE_ELSE (code)' - ); - $this->assertSame( - 'T_INLINE_ELSE', - $tokens[$colon]['type'], - 'Token tokenized as '.$tokens[$colon]['type'].', not T_INLINE_ELSE (type)' - ); - - /* - * Else. - */ - - $label = $this->getTargetToken('/* testTernaryWithFunctionCallsInThenElse */', T_PARAM_NAME, 'more'); - - // Get the next non-empty token. - $colon = $this->phpcsFile->findNext(Tokens::$emptyTokens, ($label + 1), null, true); - - $this->assertSame( - ':', - $tokens[$colon]['content'], - 'Function in else: Next token after parameter name is not a colon. Found: '.$tokens[$colon]['content'] - ); - $this->assertSame( - T_COLON, - $tokens[$colon]['code'], - 'Function in else: Token tokenized as '.$tokens[$colon]['type'].', not T_COLON (code)' - ); - $this->assertSame( - 'T_COLON', - $tokens[$colon]['type'], - 'Function in else: Token tokenized as '.$tokens[$colon]['type'].', not T_COLON (type)' - ); - - }//end testTernaryWithFunctionCallsInThenElse() - - - /** - * Verify whether the colons are tokenized correctly when constants are used in a ternary. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testTernaryWithConstantsInThenElse() - { - $tokens = $this->phpcsFile->getTokens(); - - $constant = $this->getTargetToken('/* testTernaryWithConstantsInThenElse */', T_STRING, 'CONSTANT_NAME'); - - // Get the next non-empty token. - $colon = $this->phpcsFile->findNext(Tokens::$emptyTokens, ($constant + 1), null, true); - - $this->assertSame( - T_INLINE_ELSE, - $tokens[$colon]['code'], - 'Token tokenized as '.$tokens[$colon]['type'].', not T_INLINE_ELSE (code)' - ); - $this->assertSame( - 'T_INLINE_ELSE', - $tokens[$colon]['type'], - 'Token tokenized as '.$tokens[$colon]['type'].', not T_INLINE_ELSE (type)' - ); - - }//end testTernaryWithConstantsInThenElse() - - - /** - * Verify whether the colons are tokenized correctly in a switch statement. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testSwitchStatement() - { - $tokens = $this->phpcsFile->getTokens(); - - $label = $this->getTargetToken('/* testSwitchCaseWithConstant */', T_STRING, 'MY_CONSTANT'); - - // Get the next non-empty token. - $colon = $this->phpcsFile->findNext(Tokens::$emptyTokens, ($label + 1), null, true); - - $this->assertSame( - T_COLON, - $tokens[$colon]['code'], - 'First case: Token tokenized as '.$tokens[$colon]['type'].', not T_COLON (code)' - ); - $this->assertSame( - 'T_COLON', - $tokens[$colon]['type'], - 'First case: Token tokenized as '.$tokens[$colon]['type'].', not T_COLON (type)' - ); - - $label = $this->getTargetToken('/* testSwitchCaseWithClassProperty */', T_STRING, 'property'); - - // Get the next non-empty token. - $colon = $this->phpcsFile->findNext(Tokens::$emptyTokens, ($label + 1), null, true); - - $this->assertSame( - T_COLON, - $tokens[$colon]['code'], - 'Second case: Token tokenized as '.$tokens[$colon]['type'].', not T_COLON (code)' - ); - $this->assertSame( - 'T_COLON', - $tokens[$colon]['type'], - 'Second case: Token tokenized as '.$tokens[$colon]['type'].', not T_COLON (type)' - ); - - $default = $this->getTargetToken('/* testSwitchDefault */', T_DEFAULT); - - // Get the next non-empty token. - $colon = $this->phpcsFile->findNext(Tokens::$emptyTokens, ($default + 1), null, true); - - $this->assertSame( - T_COLON, - $tokens[$colon]['code'], - 'Default case: Token tokenized as '.$tokens[$colon]['type'].', not T_COLON (code)' - ); - $this->assertSame( - 'T_COLON', - $tokens[$colon]['type'], - 'Default case: Token tokenized as '.$tokens[$colon]['type'].', not T_COLON (type)' - ); - - }//end testSwitchStatement() - - - /** - * Verify that a variable parameter label (parse error) is still tokenized as T_VARIABLE. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testParseErrorVariableLabel() - { - $tokens = $this->phpcsFile->getTokens(); - - $label = $this->getTargetToken('/* testParseErrorDynamicName */', [T_VARIABLE, T_PARAM_NAME], '$variableStoringParamName'); - - $this->assertSame( - T_VARIABLE, - $tokens[$label]['code'], - 'Token tokenized as '.$tokens[$label]['type'].', not T_VARIABLE (code)' - ); - $this->assertSame( - 'T_VARIABLE', - $tokens[$label]['type'], - 'Token tokenized as '.$tokens[$label]['type'].', not T_VARIABLE (type)' - ); - - // Get the next non-empty token. - $colon = $this->phpcsFile->findNext(Tokens::$emptyTokens, ($label + 1), null, true); - - $this->assertSame( - ':', - $tokens[$colon]['content'], - 'Next token after parameter name is not a colon. Found: '.$tokens[$colon]['content'] - ); - $this->assertSame( - T_COLON, - $tokens[$colon]['code'], - 'Token tokenized as '.$tokens[$colon]['type'].', not T_COLON (code)' - ); - $this->assertSame( - 'T_COLON', - $tokens[$colon]['type'], - 'Token tokenized as '.$tokens[$colon]['type'].', not T_COLON (type)' - ); - - }//end testParseErrorVariableLabel() - - - /** - * Verify whether the colons are tokenized correctly when a return type is used for an inline - * closure/arrow function declaration in a ternary. - * - * @param string $testMarker The comment prefacing the target token. - * - * @dataProvider dataOtherColonsInTernary - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testOtherColonsInTernary($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - - $startOfStatement = $this->getTargetToken($testMarker, T_VARIABLE); - - // Walk the statement and check the tokenization. - // There should be no T_PARAM_NAME tokens. - // First colon should be T_COLON for the return type. - // Second colon should be T_INLINE_ELSE for the ternary. - // Third colon should be T_COLON for the return type. - $colonCount = 0; - for ($i = ($startOfStatement + 1); $tokens[$i]['line'] === $tokens[$startOfStatement]['line']; $i++) { - $this->assertNotEquals(T_PARAM_NAME, $tokens[$i]['code'], "Token $i is tokenized as parameter label"); - - if ($tokens[$i]['content'] === ':') { - ++$colonCount; - - if ($colonCount === 1) { - $this->assertSame(T_COLON, $tokens[$i]['code'], 'First colon is not tokenized as T_COLON'); - } else if ($colonCount === 2) { - $this->assertSame(T_INLINE_ELSE, $tokens[$i]['code'], 'Second colon is not tokenized as T_INLINE_ELSE'); - } else if ($colonCount === 3) { - $this->assertSame(T_COLON, $tokens[$i]['code'], 'Third colon is not tokenized as T_COLON'); - } else { - $this->fail('Unexpected colon encountered in statement'); - } - } - } - - }//end testOtherColonsInTernary() - - - /** - * Data provider. - * - * @see testOtherColonsInTernary() - * - * @return array> - */ - public static function dataOtherColonsInTernary() - { - return [ - 'closures with return types in ternary' => [ - 'testMarker' => '/* testTernaryWithClosuresAndReturnTypes */', - ], - 'arrow functions with return types in ternary' => [ - 'testMarker' => '/* testTernaryWithArrowFunctionsAndReturnTypes */', - ], - ]; - - }//end dataOtherColonsInTernary() - - - /** - * Verify that reserved keywords used as a parameter label are tokenized as T_PARAM_NAME - * and that the colon after it is tokenized as a T_COLON. - * - * @param string $testMarker The comment prefacing the target token. - * @param array $tokenTypes The token codes to look for. - * @param string $tokenContent The token content to look for. - * - * @dataProvider dataReservedKeywordsAsName - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testReservedKeywordsAsName($testMarker, $tokenTypes, $tokenContent) - { - $tokens = $this->phpcsFile->getTokens(); - $label = $this->getTargetToken($testMarker, $tokenTypes, $tokenContent); - - $this->assertSame( - T_PARAM_NAME, - $tokens[$label]['code'], - 'Token tokenized as '.$tokens[$label]['type'].', not T_PARAM_NAME (code)' - ); - $this->assertSame( - 'T_PARAM_NAME', - $tokens[$label]['type'], - 'Token tokenized as '.$tokens[$label]['type'].', not T_PARAM_NAME (type)' - ); - - // Get the next non-empty token. - $colon = $this->phpcsFile->findNext(Tokens::$emptyTokens, ($label + 1), null, true); - - $this->assertSame( - ':', - $tokens[$colon]['content'], - 'Next token after parameter name is not a colon. Found: '.$tokens[$colon]['content'] - ); - $this->assertSame( - T_COLON, - $tokens[$colon]['code'], - 'Token tokenized as '.$tokens[$colon]['type'].', not T_COLON (code)' - ); - $this->assertSame( - 'T_COLON', - $tokens[$colon]['type'], - 'Token tokenized as '.$tokens[$colon]['type'].', not T_COLON (type)' - ); - - }//end testReservedKeywordsAsName() - - - /** - * Data provider. - * - * @see testReservedKeywordsAsName() - * - * @return array>> - */ - public static function dataReservedKeywordsAsName() - { - $reservedKeywords = [ - // '__halt_compiler', NOT TESTABLE - 'abstract', - 'and', - 'array', - 'as', - 'break', - 'callable', - 'case', - 'catch', - 'class', - 'clone', - 'const', - 'continue', - 'declare', - 'default', - 'die', - 'do', - 'echo', - 'else', - 'elseif', - 'empty', - 'enddeclare', - 'endfor', - 'endforeach', - 'endif', - 'endswitch', - 'endwhile', - 'enum', - 'eval', - 'exit', - 'extends', - 'final', - 'finally', - 'fn', - 'for', - 'foreach', - 'function', - 'global', - 'goto', - 'if', - 'implements', - 'include', - 'include_once', - 'instanceof', - 'insteadof', - 'interface', - 'isset', - 'list', - 'match', - 'namespace', - 'new', - 'or', - 'print', - 'private', - 'protected', - 'public', - 'readonly', - 'require', - 'require_once', - 'return', - 'static', - 'switch', - 'throw', - 'trait', - 'try', - 'unset', - 'use', - 'var', - 'while', - 'xor', - 'yield', - 'int', - 'float', - 'bool', - 'string', - 'true', - 'false', - 'null', - 'void', - 'iterable', - 'object', - 'resource', - 'mixed', - 'numeric', - 'never', - - // Not reserved keyword, but do have their own token in PHPCS. - 'parent', - 'self', - ]; - - $data = []; - - foreach ($reservedKeywords as $keyword) { - $tokensTypes = [ - T_PARAM_NAME, - T_STRING, - T_GOTO_LABEL, - ]; - $tokenName = 'T_'.strtoupper($keyword); - - if ($keyword === 'and') { - $tokensTypes[] = T_LOGICAL_AND; - } else if ($keyword === 'die') { - $tokensTypes[] = T_EXIT; - } else if ($keyword === 'or') { - $tokensTypes[] = T_LOGICAL_OR; - } else if ($keyword === 'xor') { - $tokensTypes[] = T_LOGICAL_XOR; - } else if ($keyword === '__halt_compiler') { - $tokensTypes[] = T_HALT_COMPILER; - } else if (defined($tokenName) === true) { - $tokensTypes[] = constant($tokenName); - } - - $data[$keyword.'FirstParam'] = [ - '/* testReservedKeyword'.ucfirst($keyword).'1 */', - $tokensTypes, - $keyword, - ]; - - $data[$keyword.'SecondParam'] = [ - '/* testReservedKeyword'.ucfirst($keyword).'2 */', - $tokensTypes, - $keyword, - ]; - }//end foreach - - return $data; - - }//end dataReservedKeywordsAsName() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/NullsafeObjectOperatorTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/NullsafeObjectOperatorTest.inc deleted file mode 100644 index 982841ea..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/NullsafeObjectOperatorTest.inc +++ /dev/null @@ -1,29 +0,0 @@ -foo; - -/* testNullsafeObjectOperator */ -echo $obj?->foo; - -/* testNullsafeObjectOperatorWriteContext */ -// Intentional parse error, but not the concern of the tokenizer. -$foo?->bar->baz = 'baz'; - -/* testTernaryThen */ -echo $obj ? $obj->prop : $other->prop; - -/* testParseErrorWhitespaceNotAllowed */ -echo $obj ? - -> foo; - -/* testParseErrorCommentNotAllowed */ -echo $obj ?/*comment*/-> foo; - -/* testLiveCoding */ -// Intentional parse error. This has to be the last test in the file. -echo $obj? diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/NullsafeObjectOperatorTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/NullsafeObjectOperatorTest.php deleted file mode 100644 index 368fee4d..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/NullsafeObjectOperatorTest.php +++ /dev/null @@ -1,144 +0,0 @@ -= 8.0 nullsafe object operator. - * - * @author Juliette Reinders Folmer - * @copyright 2020 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; -use PHP_CodeSniffer\Util\Tokens; - -final class NullsafeObjectOperatorTest extends AbstractTokenizerTestCase -{ - - /** - * Tokens to search for. - * - * @var array - */ - protected $find = [ - T_NULLSAFE_OBJECT_OPERATOR, - T_OBJECT_OPERATOR, - T_INLINE_THEN, - ]; - - - /** - * Test that a normal object operator is still tokenized as such. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testObjectOperator() - { - $tokens = $this->phpcsFile->getTokens(); - - $operator = $this->getTargetToken('/* testObjectOperator */', $this->find); - $this->assertSame(T_OBJECT_OPERATOR, $tokens[$operator]['code'], 'Failed asserting code is object operator'); - $this->assertSame('T_OBJECT_OPERATOR', $tokens[$operator]['type'], 'Failed asserting type is object operator'); - - }//end testObjectOperator() - - - /** - * Test that a nullsafe object operator is tokenized as such. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * - * @dataProvider dataNullsafeObjectOperator - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testNullsafeObjectOperator($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - - $operator = $this->getTargetToken($testMarker, $this->find); - $this->assertSame(T_NULLSAFE_OBJECT_OPERATOR, $tokens[$operator]['code'], 'Failed asserting code is nullsafe object operator'); - $this->assertSame('T_NULLSAFE_OBJECT_OPERATOR', $tokens[$operator]['type'], 'Failed asserting type is nullsafe object operator'); - - }//end testNullsafeObjectOperator() - - - /** - * Data provider. - * - * @see testNullsafeObjectOperator() - * - * @return array> - */ - public static function dataNullsafeObjectOperator() - { - return [ - 'nullsafe operator' => ['/* testNullsafeObjectOperator */'], - 'illegal nullsafe operator (write context)' => ['/* testNullsafeObjectOperatorWriteContext */'], - ]; - - }//end dataNullsafeObjectOperator() - - - /** - * Test that a question mark not followed by an object operator is tokenized as T_TERNARY_THEN. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * @param bool $testObjectOperator Whether to test for the next non-empty token being tokenized - * as an object operator. - * - * @dataProvider dataTernaryThen - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testTernaryThen($testMarker, $testObjectOperator=false) - { - $tokens = $this->phpcsFile->getTokens(); - - $operator = $this->getTargetToken($testMarker, $this->find); - $this->assertSame(T_INLINE_THEN, $tokens[$operator]['code'], 'Failed asserting code is inline then'); - $this->assertSame('T_INLINE_THEN', $tokens[$operator]['type'], 'Failed asserting type is inline then'); - - if ($testObjectOperator === true) { - $next = $this->phpcsFile->findNext(Tokens::$emptyTokens, ($operator + 1), null, true); - $this->assertSame(T_OBJECT_OPERATOR, $tokens[$next]['code'], 'Failed asserting code is object operator'); - $this->assertSame('T_OBJECT_OPERATOR', $tokens[$next]['type'], 'Failed asserting type is object operator'); - } - - }//end testTernaryThen() - - - /** - * Data provider. - * - * @see testTernaryThen() - * - * @return array> - */ - public static function dataTernaryThen() - { - return [ - 'ternary then' => [ - 'testMarker' => '/* testTernaryThen */', - ], - 'whitespace between question mark and object operator' => [ - 'testMarker' => '/* testParseErrorWhitespaceNotAllowed */', - 'testObjectOperator' => true, - ], - 'comment between question mark and object operator' => [ - 'testMarker' => '/* testParseErrorCommentNotAllowed */', - 'testObjectOperator' => true, - ], - 'parse error/live coding' => [ - 'testMarker' => '/* testLiveCoding */', - ], - ]; - - }//end dataTernaryThen() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/OtherContextSensitiveKeywordsTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/OtherContextSensitiveKeywordsTest.inc deleted file mode 100644 index ef89caae..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/OtherContextSensitiveKeywordsTest.inc +++ /dev/null @@ -1,247 +0,0 @@ - $param->get(); - } -} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/OtherContextSensitiveKeywordsTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/OtherContextSensitiveKeywordsTest.php deleted file mode 100644 index 872fab0d..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/OtherContextSensitiveKeywordsTest.php +++ /dev/null @@ -1,721 +0,0 @@ - - * @copyright 2020 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -/** - * Tests the conversion of PHPCS native context sensitive keyword tokens to T_STRING. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * @covers PHP_CodeSniffer\Tokenizers\PHP::standardiseToken - */ -final class OtherContextSensitiveKeywordsTest extends AbstractTokenizerTestCase -{ - - - /** - * Clear the "resolved tokens" cache before running this test as otherwise the code - * under test may not be run during the test. - * - * @beforeClass - * - * @return void - */ - public static function clearTokenCache() - { - parent::clearResolvedTokensCache(); - - }//end clearTokenCache() - - - /** - * Test that context sensitive keyword is tokenized as string when it should be string. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * - * @dataProvider dataStrings - * - * @return void - */ - public function testStrings($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - $target = $this->getTargetToken($testMarker, [T_STRING, T_NULL, T_FALSE, T_TRUE, T_PARENT, T_SELF]); - $tokenArray = $tokens[$target]; - - $this->assertSame(T_STRING, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (code)'); - $this->assertSame('T_STRING', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (type)'); - - }//end testStrings() - - - /** - * Data provider. - * - * @see testStrings() - * - * @return array> - */ - public static function dataStrings() - { - return [ - 'constant declaration: parent' => ['/* testParent */'], - 'constant declaration: self' => ['/* testSelf */'], - 'constant declaration: false' => ['/* testFalse */'], - 'constant declaration: true' => ['/* testTrue */'], - 'constant declaration: null' => ['/* testNull */'], - - 'function declaration with return by ref: self' => ['/* testKeywordSelfAfterFunctionByRefShouldBeString */'], - 'function declaration with return by ref: parent' => ['/* testKeywordParentAfterFunctionByRefShouldBeString */'], - 'function declaration with return by ref: false' => ['/* testKeywordFalseAfterFunctionByRefShouldBeString */'], - 'function declaration with return by ref: true' => ['/* testKeywordTrueAfterFunctionByRefShouldBeString */'], - 'function declaration with return by ref: null' => ['/* testKeywordNullAfterFunctionByRefShouldBeString */'], - - 'function call: self' => ['/* testKeywordAsFunctionCallNameShouldBeStringSelf */'], - 'function call: parent' => ['/* testKeywordAsFunctionCallNameShouldBeStringParent */'], - 'function call: false' => ['/* testKeywordAsFunctionCallNameShouldBeStringFalse */'], - 'function call: true' => ['/* testKeywordAsFunctionCallNameShouldBeStringTrue */'], - 'function call: null; with comment between keyword and parentheses' => ['/* testKeywordAsFunctionCallNameShouldBeStringNull */'], - - 'class instantiation: false' => ['/* testClassInstantiationFalseIsString */'], - 'class instantiation: true' => ['/* testClassInstantiationTrueIsString */'], - 'class instantiation: null' => ['/* testClassInstantiationNullIsString */'], - - 'constant declaration: false as name after type' => ['/* testFalseIsNameForTypedConstant */'], - 'constant declaration: true as name after type' => ['/* testTrueIsNameForTypedConstant */'], - 'constant declaration: null as name after type' => ['/* testNullIsNameForTypedConstant */'], - 'constant declaration: self as name after type' => ['/* testSelfIsNameForTypedConstant */'], - 'constant declaration: parent as name after type' => ['/* testParentIsNameForTypedConstant */'], - ]; - - }//end dataStrings() - - - /** - * Test that context sensitive keyword is tokenized as keyword when it should be keyword. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * @param string $expectedTokenType The expected token type. - * - * @dataProvider dataKeywords - * - * @return void - */ - public function testKeywords($testMarker, $expectedTokenType) - { - $tokens = $this->phpcsFile->getTokens(); - $target = $this->getTargetToken($testMarker, [T_STRING, T_NULL, T_FALSE, T_TRUE, T_PARENT, T_SELF]); - $tokenArray = $tokens[$target]; - - $this->assertSame( - constant($expectedTokenType), - $tokenArray['code'], - 'Token tokenized as '.$tokenArray['type'].', not '.$expectedTokenType.' (code)' - ); - $this->assertSame( - $expectedTokenType, - $tokenArray['type'], - 'Token tokenized as '.$tokenArray['type'].', not '.$expectedTokenType.' (type)' - ); - - }//end testKeywords() - - - /** - * Data provider. - * - * @see testKeywords() - * - * @return array - */ - public static function dataKeywords() - { - return [ - 'self: param type declaration' => [ - 'testMarker' => '/* testSelfIsKeyword */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: param type declaration' => [ - 'testMarker' => '/* testParentIsKeyword */', - 'expectedTokenType' => 'T_PARENT', - ], - - 'parent: class instantiation' => [ - 'testMarker' => '/* testClassInstantiationParentIsKeyword */', - 'expectedTokenType' => 'T_PARENT', - ], - 'self: class instantiation' => [ - 'testMarker' => '/* testClassInstantiationSelfIsKeyword */', - 'expectedTokenType' => 'T_SELF', - ], - - 'false: param type declaration' => [ - 'testMarker' => '/* testFalseIsKeywordAsParamType */', - 'expectedTokenType' => 'T_FALSE', - ], - 'true: param type declaration' => [ - 'testMarker' => '/* testTrueIsKeywordAsParamType */', - 'expectedTokenType' => 'T_TRUE', - ], - 'null: param type declaration' => [ - 'testMarker' => '/* testNullIsKeywordAsParamType */', - 'expectedTokenType' => 'T_NULL', - ], - 'false: return type declaration in union' => [ - 'testMarker' => '/* testFalseIsKeywordAsReturnType */', - 'expectedTokenType' => 'T_FALSE', - ], - 'true: return type declaration in union' => [ - 'testMarker' => '/* testTrueIsKeywordAsReturnType */', - 'expectedTokenType' => 'T_TRUE', - ], - 'null: return type declaration in union' => [ - 'testMarker' => '/* testNullIsKeywordAsReturnType */', - 'expectedTokenType' => 'T_NULL', - ], - 'false: in comparison' => [ - 'testMarker' => '/* testFalseIsKeywordInComparison */', - 'expectedTokenType' => 'T_FALSE', - ], - 'true: in comparison' => [ - 'testMarker' => '/* testTrueIsKeywordInComparison */', - 'expectedTokenType' => 'T_TRUE', - ], - 'null: in comparison' => [ - 'testMarker' => '/* testNullIsKeywordInComparison */', - 'expectedTokenType' => 'T_NULL', - ], - - 'false: type in OO constant declaration' => [ - 'testMarker' => '/* testFalseIsKeywordAsConstType */', - 'expectedTokenType' => 'T_FALSE', - ], - 'true: type in OO constant declaration' => [ - 'testMarker' => '/* testTrueIsKeywordAsConstType */', - 'expectedTokenType' => 'T_TRUE', - ], - 'null: type in OO constant declaration' => [ - 'testMarker' => '/* testNullIsKeywordAsConstType */', - 'expectedTokenType' => 'T_NULL', - ], - 'self: type in OO constant declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsConstType */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: type in OO constant declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsConstType */', - 'expectedTokenType' => 'T_PARENT', - ], - - 'false: value in constant declaration' => [ - 'testMarker' => '/* testFalseIsKeywordAsConstDefault */', - 'expectedTokenType' => 'T_FALSE', - ], - 'true: value in constant declaration' => [ - 'testMarker' => '/* testTrueIsKeywordAsConstDefault */', - 'expectedTokenType' => 'T_TRUE', - ], - 'null: value in constant declaration' => [ - 'testMarker' => '/* testNullIsKeywordAsConstDefault */', - 'expectedTokenType' => 'T_NULL', - ], - 'self: value in constant declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsConstDefault */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: value in constant declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsConstDefault */', - 'expectedTokenType' => 'T_PARENT', - ], - - 'false: type in property declaration' => [ - 'testMarker' => '/* testFalseIsKeywordAsPropertyType */', - 'expectedTokenType' => 'T_FALSE', - ], - 'true: type in property declaration' => [ - 'testMarker' => '/* testTrueIsKeywordAsPropertyType */', - 'expectedTokenType' => 'T_TRUE', - ], - 'null: type in property declaration' => [ - 'testMarker' => '/* testNullIsKeywordAsPropertyType */', - 'expectedTokenType' => 'T_NULL', - ], - 'self: type in property declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsPropertyType */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: type in property declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsPropertyType */', - 'expectedTokenType' => 'T_PARENT', - ], - - 'false: value in property declaration' => [ - 'testMarker' => '/* testFalseIsKeywordAsPropertyDefault */', - 'expectedTokenType' => 'T_FALSE', - ], - 'true: value in property declaration' => [ - 'testMarker' => '/* testTrueIsKeywordAsPropertyDefault */', - 'expectedTokenType' => 'T_TRUE', - ], - 'null: value in property declaration' => [ - 'testMarker' => '/* testNullIsKeywordAsPropertyDefault */', - 'expectedTokenType' => 'T_NULL', - ], - 'self: value in property declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsPropertyDefault */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: value in property declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsPropertyDefault */', - 'expectedTokenType' => 'T_PARENT', - ], - - 'false: first in union type for OO constant declaration' => [ - 'testMarker' => '/* testFalseIsKeywordAsConstUnionTypeFirst */', - 'expectedTokenType' => 'T_FALSE', - ], - 'true: first in union type for OO constant declaration' => [ - 'testMarker' => '/* testTrueIsKeywordAsConstUnionTypeFirst */', - 'expectedTokenType' => 'T_TRUE', - ], - 'null: first in union type for OO constant declaration' => [ - 'testMarker' => '/* testNullIsKeywordAsConstUnionTypeFirst */', - 'expectedTokenType' => 'T_NULL', - ], - 'self: first in union type for OO constant declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsConstUnionTypeFirst */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: first in union type for OO constant declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsConstUnionTypeFirst */', - 'expectedTokenType' => 'T_PARENT', - ], - - 'false: middle in union type for OO constant declaration' => [ - 'testMarker' => '/* testFalseIsKeywordAsConstUnionTypeMiddle */', - 'expectedTokenType' => 'T_FALSE', - ], - 'true: middle in union type for OO constant declaration' => [ - 'testMarker' => '/* testTrueIsKeywordAsConstUnionTypeMiddle */', - 'expectedTokenType' => 'T_TRUE', - ], - 'null: middle in union type for OO constant declaration' => [ - 'testMarker' => '/* testNullIsKeywordAsConstUnionTypeMiddle */', - 'expectedTokenType' => 'T_NULL', - ], - 'self: middle in union type for OO constant declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsConstUnionTypeMiddle */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: middle in union type for OO constant declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsConstUnionTypeMiddle */', - 'expectedTokenType' => 'T_PARENT', - ], - - 'false: last in union type for OO constant declaration' => [ - 'testMarker' => '/* testFalseIsKeywordAsConstUnionTypeLast */', - 'expectedTokenType' => 'T_FALSE', - ], - 'true: last in union type for OO constant declaration' => [ - 'testMarker' => '/* testTrueIsKeywordAsConstUnionTypeLast */', - 'expectedTokenType' => 'T_TRUE', - ], - 'null: last in union type for OO constant declaration' => [ - 'testMarker' => '/* testNullIsKeywordAsConstUnionTypeLast */', - 'expectedTokenType' => 'T_NULL', - ], - 'self: last in union type for OO constant declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsConstUnionTypeLast */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: last in union type for OO constant declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsConstUnionTypeLast */', - 'expectedTokenType' => 'T_PARENT', - ], - - 'false: first in union type for property declaration' => [ - 'testMarker' => '/* testFalseIsKeywordAsPropertyUnionTypeFirst */', - 'expectedTokenType' => 'T_FALSE', - ], - 'true: first in union type for property declaration' => [ - 'testMarker' => '/* testTrueIsKeywordAsPropertyUnionTypeFirst */', - 'expectedTokenType' => 'T_TRUE', - ], - 'null: first in union type for property declaration' => [ - 'testMarker' => '/* testNullIsKeywordAsPropertyUnionTypeFirst */', - 'expectedTokenType' => 'T_NULL', - ], - 'self: first in union type for property declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsPropertyUnionTypeFirst */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: first in union type for property declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsPropertyUnionTypeFirst */', - 'expectedTokenType' => 'T_PARENT', - ], - - 'false: middle in union type for property declaration' => [ - 'testMarker' => '/* testFalseIsKeywordAsPropertyUnionTypeMiddle */', - 'expectedTokenType' => 'T_FALSE', - ], - 'true: middle in union type for property declaration' => [ - 'testMarker' => '/* testTrueIsKeywordAsPropertyUnionTypeMiddle */', - 'expectedTokenType' => 'T_TRUE', - ], - 'null: middle in union type for property declaration' => [ - 'testMarker' => '/* testNullIsKeywordAsPropertyUnionTypeMiddle */', - 'expectedTokenType' => 'T_NULL', - ], - 'self: middle in union type for property declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsPropertyUnionTypeMiddle */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: middle in union type for property declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsPropertyUnionTypeMiddle */', - 'expectedTokenType' => 'T_PARENT', - ], - - 'false: last in union type for property declaration' => [ - 'testMarker' => '/* testFalseIsKeywordAsPropertyUnionTypeLast */', - 'expectedTokenType' => 'T_FALSE', - ], - 'true: last in union type for property declaration' => [ - 'testMarker' => '/* testTrueIsKeywordAsPropertyUnionTypeLast */', - 'expectedTokenType' => 'T_TRUE', - ], - 'null: last in union type for property declaration' => [ - 'testMarker' => '/* testNullIsKeywordAsPropertyUnionTypeLast */', - 'expectedTokenType' => 'T_NULL', - ], - 'self: last in union type for property declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsPropertyUnionTypeLast */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: last in union type for property declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsPropertyUnionTypeLast */', - 'expectedTokenType' => 'T_PARENT', - ], - - 'false: first in union type for param declaration' => [ - 'testMarker' => '/* testFalseIsKeywordAsParamUnionTypeFirst */', - 'expectedTokenType' => 'T_FALSE', - ], - 'true: first in union type for param declaration' => [ - 'testMarker' => '/* testTrueIsKeywordAsParamUnionTypeFirst */', - 'expectedTokenType' => 'T_TRUE', - ], - 'null: first in union type for param declaration' => [ - 'testMarker' => '/* testNullIsKeywordAsParamUnionTypeFirst */', - 'expectedTokenType' => 'T_NULL', - ], - 'self: first in union type for param declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsParamUnionTypeFirst */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: first in union type for param declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsParamUnionTypeFirst */', - 'expectedTokenType' => 'T_PARENT', - ], - - 'false: middle in union type for param declaration' => [ - 'testMarker' => '/* testFalseIsKeywordAsParamUnionTypeMiddle */', - 'expectedTokenType' => 'T_FALSE', - ], - 'true: middle in union type for param declaration' => [ - 'testMarker' => '/* testTrueIsKeywordAsParamUnionTypeMiddle */', - 'expectedTokenType' => 'T_TRUE', - ], - 'null: middle in union type for param declaration' => [ - 'testMarker' => '/* testNullIsKeywordAsParamUnionTypeMiddle */', - 'expectedTokenType' => 'T_NULL', - ], - 'self: middle in union type for param declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsParamUnionTypeMiddle */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: middle in union type for param declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsParamUnionTypeMiddle */', - 'expectedTokenType' => 'T_PARENT', - ], - - 'false: last in union type for param declaration' => [ - 'testMarker' => '/* testFalseIsKeywordAsParamUnionTypeLast */', - 'expectedTokenType' => 'T_FALSE', - ], - 'true: last in union type for param declaration' => [ - 'testMarker' => '/* testTrueIsKeywordAsParamUnionTypeLast */', - 'expectedTokenType' => 'T_TRUE', - ], - 'null: last in union type for param declaration' => [ - 'testMarker' => '/* testNullIsKeywordAsParamUnionTypeLast */', - 'expectedTokenType' => 'T_NULL', - ], - 'self: last in union type for param declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsParamUnionTypeLast */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: last in union type for param declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsParamUnionTypeLast */', - 'expectedTokenType' => 'T_PARENT', - ], - - 'false: first in union type for return declaration' => [ - 'testMarker' => '/* testFalseIsKeywordAsReturnUnionTypeFirst */', - 'expectedTokenType' => 'T_FALSE', - ], - 'true: first in union type for return declaration' => [ - 'testMarker' => '/* testTrueIsKeywordAsReturnUnionTypeFirst */', - 'expectedTokenType' => 'T_TRUE', - ], - 'null: first in union type for return declaration' => [ - 'testMarker' => '/* testNullIsKeywordAsReturnUnionTypeFirst */', - 'expectedTokenType' => 'T_NULL', - ], - 'self: first in union type for return declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsReturnUnionTypeFirst */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: first in union type for return declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsReturnUnionTypeFirst */', - 'expectedTokenType' => 'T_PARENT', - ], - - 'false: middle in union type for return declaration' => [ - 'testMarker' => '/* testFalseIsKeywordAsReturnUnionTypeMiddle */', - 'expectedTokenType' => 'T_FALSE', - ], - 'true: middle in union type for return declaration' => [ - 'testMarker' => '/* testTrueIsKeywordAsReturnUnionTypeMiddle */', - 'expectedTokenType' => 'T_TRUE', - ], - 'null: middle in union type for return declaration' => [ - 'testMarker' => '/* testNullIsKeywordAsReturnUnionTypeMiddle */', - 'expectedTokenType' => 'T_NULL', - ], - 'self: middle in union type for return declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsReturnUnionTypeMiddle */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: middle in union type for return declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsReturnUnionTypeMiddle */', - 'expectedTokenType' => 'T_PARENT', - ], - - 'false: last in union type for return declaration' => [ - 'testMarker' => '/* testFalseIsKeywordAsReturnUnionTypeLast */', - 'expectedTokenType' => 'T_FALSE', - ], - 'true: last in union type for return declaration' => [ - 'testMarker' => '/* testTrueIsKeywordAsReturnUnionTypeLast */', - 'expectedTokenType' => 'T_TRUE', - ], - 'null: last in union type for return declaration' => [ - 'testMarker' => '/* testNullIsKeywordAsReturnUnionTypeLast */', - 'expectedTokenType' => 'T_NULL', - ], - 'self: last in union type for return declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsReturnUnionTypeLast */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: last in union type for return declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsReturnUnionTypeLast */', - 'expectedTokenType' => 'T_PARENT', - ], - - 'self: first in intersection type for OO constant declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsConstIntersectionTypeFirst */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: first in intersection type for OO constant declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsConstIntersectionTypeFirst */', - 'expectedTokenType' => 'T_PARENT', - ], - 'self: middle in intersection type for OO constant declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsConstIntersectionTypeMiddle */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: middle in intersection type for OO constant declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsConstIntersectionTypeMiddle */', - 'expectedTokenType' => 'T_PARENT', - ], - 'self: last in intersection type for OO constant declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsConstIntersectionTypeLast */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: last in intersection type for OO constant declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsConstIntersectionTypeLast */', - 'expectedTokenType' => 'T_PARENT', - ], - - 'self: first in intersection type for property declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsPropertyIntersectionTypeFirst */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: first in intersection type for property declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsPropertyIntersectionTypeFirst */', - 'expectedTokenType' => 'T_PARENT', - ], - 'self: middle in intersection type for property declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsPropertyIntersectionTypeMiddle */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: middle in intersection type for property declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsPropertyIntersectionTypeMiddle */', - 'expectedTokenType' => 'T_PARENT', - ], - 'self: last in intersection type for property declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsPropertyIntersectionTypeLast */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: last in intersection type for property declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsPropertyIntersectionTypeLast */', - 'expectedTokenType' => 'T_PARENT', - ], - - 'self: first in intersection type for param declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsParamIntersectionTypeFirst */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: first in intersection type for param declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsParamIntersectionTypeFirst */', - 'expectedTokenType' => 'T_PARENT', - ], - 'self: middle in intersection type for param declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsParamIntersectionTypeMiddle */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: middle in intersection type for param declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsParamIntersectionTypeMiddle */', - 'expectedTokenType' => 'T_PARENT', - ], - 'self: last in intersection type for param declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsParamIntersectionTypeLast */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: last in intersection type for param declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsParamIntersectionTypeLast */', - 'expectedTokenType' => 'T_PARENT', - ], - - 'self: first in intersection type for return declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsReturnIntersectionTypeFirst */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: first in intersection type for return declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsReturnIntersectionTypeFirst */', - 'expectedTokenType' => 'T_PARENT', - ], - 'self: middle in intersection type for return declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsReturnIntersectionTypeMiddle */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: middle in intersection type for return declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsReturnIntersectionTypeMiddle */', - 'expectedTokenType' => 'T_PARENT', - ], - 'self: last in intersection type for return declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsReturnIntersectionTypeLast */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: last in intersection type for return declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsReturnIntersectionTypeLast */', - 'expectedTokenType' => 'T_PARENT', - ], - - 'false: DNF type in OO constant declaration' => [ - 'testMarker' => '/* testFalseIsKeywordAsConstDNFType */', - 'expectedTokenType' => 'T_FALSE', - ], - 'true: DNF type in OO constant declaration' => [ - 'testMarker' => '/* testTrueIsKeywordAsConstDNFType */', - 'expectedTokenType' => 'T_TRUE', - ], - 'null: DNF type in OO constant declaration' => [ - 'testMarker' => '/* testNullIsKeywordAsConstDNFType */', - 'expectedTokenType' => 'T_NULL', - ], - 'self: DNF type in OO constant declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsConstDNFType */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: DNF type in OO constant declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsConstDNFType */', - 'expectedTokenType' => 'T_PARENT', - ], - - 'false: DNF type in property declaration' => [ - 'testMarker' => '/* testFalseIsKeywordAsConstDNFType */', - 'expectedTokenType' => 'T_FALSE', - ], - 'true: DNF type in property declaration' => [ - 'testMarker' => '/* testTrueIsKeywordAsConstDNFType */', - 'expectedTokenType' => 'T_TRUE', - ], - 'null: DNF type in property declaration' => [ - 'testMarker' => '/* testNullIsKeywordAsConstDNFType */', - 'expectedTokenType' => 'T_NULL', - ], - 'self: DNF type in property declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsConstDNFType */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: DNF type in property declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsConstDNFType */', - 'expectedTokenType' => 'T_PARENT', - ], - - 'false: DNF type in function param declaration' => [ - 'testMarker' => '/* testFalseIsKeywordAsParamDNFType */', - 'expectedTokenType' => 'T_FALSE', - ], - 'false: DNF type in function return declaration' => [ - 'testMarker' => '/* testFalseIsKeywordAsReturnDNFType */', - 'expectedTokenType' => 'T_FALSE', - ], - 'true: DNF type in function param declaration' => [ - 'testMarker' => '/* testTrueIsKeywordAsParamDNFType */', - 'expectedTokenType' => 'T_TRUE', - ], - 'true: DNF type in function return declaration' => [ - 'testMarker' => '/* testTrueIsKeywordAsReturnDNFType */', - 'expectedTokenType' => 'T_TRUE', - ], - 'null: DNF type in function param declaration' => [ - 'testMarker' => '/* testNullIsKeywordAsParamDNFType */', - 'expectedTokenType' => 'T_NULL', - ], - 'null: DNF type in function return declaration' => [ - 'testMarker' => '/* testNullIsKeywordAsReturnDNFType */', - 'expectedTokenType' => 'T_NULL', - ], - 'self: DNF type in function param declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsParamDNFType */', - 'expectedTokenType' => 'T_SELF', - ], - 'self: DNF type in function return declaration' => [ - 'testMarker' => '/* testSelfIsKeywordAsReturnDNFType */', - 'expectedTokenType' => 'T_SELF', - ], - 'parent: DNF type in function param declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsParamDNFType */', - 'expectedTokenType' => 'T_PARENT', - ], - 'parent: DNF type in function return declaration' => [ - 'testMarker' => '/* testParentIsKeywordAsReturnDNFType */', - 'expectedTokenType' => 'T_PARENT', - ], - - ]; - - }//end dataKeywords() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/ResolveSimpleTokenTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/ResolveSimpleTokenTest.inc deleted file mode 100644 index d7383d8e..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/ResolveSimpleTokenTest.inc +++ /dev/null @@ -1,51 +0,0 @@ - $var; - -/* testBooleanNot */ -$a = ! $var; - -/* testComma */ -echo $a, $b, $c; - -/* testAsperand */ -$a = @callMe(); - -/* testDollarAndCurlies */ -echo ${$var}; - -/* testBacktick */ -$a = `ls -e`; diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/ResolveSimpleTokenTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/ResolveSimpleTokenTest.php deleted file mode 100644 index 06a130c2..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/ResolveSimpleTokenTest.php +++ /dev/null @@ -1,433 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; -use PHP_CodeSniffer\Util\Tokens; - -/** - * Tests that simple tokens are assigned the correct token type and code. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::resolveSimpleToken - */ -final class ResolveSimpleTokenTest extends AbstractTokenizerTestCase -{ - - - /** - * Clear the "resolved tokens" cache before running this test as otherwise the code - * under test may not be run during the test. - * - * @beforeClass - * - * @return void - */ - public static function clearTokenCache() - { - parent::clearResolvedTokensCache(); - - }//end clearTokenCache() - - - /** - * Verify tokenization of parentheses, square brackets, curly brackets and a switch colon. - * - * @return void - */ - public function testBracesAndColon() - { - $expectedSequence = [ - T_OPEN_PARENTHESIS, - T_VARIABLE, - T_OPEN_SQUARE_BRACKET, - T_LNUMBER, - T_CLOSE_SQUARE_BRACKET, - T_CLOSE_PARENTHESIS, - T_OPEN_CURLY_BRACKET, - T_CASE, - T_STRING, - T_COLON, - T_BREAK, - T_SEMICOLON, - T_CLOSE_CURLY_BRACKET, - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_SWITCH); - - $this->checkTokenSequence(($target + 1), $expectedSequence); - - }//end testBracesAndColon() - - - /** - * Verify tokenization of colon after named parameter. - * - * @return void - */ - public function testNamedParamColon() - { - $expectedSequence = [ - T_OPEN_PARENTHESIS, - T_PARAM_NAME, - T_COLON, - T_VARIABLE, - T_CLOSE_PARENTHESIS, - T_SEMICOLON, - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_STRING); - - $this->checkTokenSequence(($target + 1), $expectedSequence); - - }//end testNamedParamColon() - - - /** - * Verify tokenization of colon for a return type. - * - * @return void - */ - public function testReturnTypeColon() - { - $expectedSequence = [ - T_EQUAL, - T_CLOSURE, - T_OPEN_PARENTHESIS, - T_CLOSE_PARENTHESIS, - T_COLON, - T_STRING, - T_OPEN_CURLY_BRACKET, - T_CLOSE_CURLY_BRACKET, - T_SEMICOLON, - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_VARIABLE); - - $this->checkTokenSequence(($target + 1), $expectedSequence); - - }//end testReturnTypeColon() - - - /** - * Verify tokenization of a concatenation operator. - * - * @return void - */ - public function testConcat() - { - $expectedSequence = [ - T_STRING_CONCAT, - T_VARIABLE, - T_SEMICOLON, - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_CONSTANT_ENCAPSED_STRING); - - $this->checkTokenSequence(($target + 1), $expectedSequence); - - }//end testConcat() - - - /** - * Verify tokenization of simple math operators. - * - * @return void - */ - public function testSimpleMathTokens() - { - $expectedSequence = [ - T_EQUAL, - T_LNUMBER, - T_MULTIPLY, - T_LNUMBER, - T_DIVIDE, - T_LNUMBER, - T_PLUS, - T_LNUMBER, - T_MINUS, - T_LNUMBER, - T_MODULUS, - T_LNUMBER, - T_SEMICOLON, - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_VARIABLE); - - $this->checkTokenSequence(($target + 1), $expectedSequence); - - }//end testSimpleMathTokens() - - - /** - * Verify tokenization of unary plus/minus operators. - * - * @return void - */ - public function testUnaryPlusMinus() - { - $expectedSequence = [ - T_EQUAL, - T_PLUS, - T_LNUMBER, - T_DIVIDE, - T_MINUS, - T_LNUMBER, - T_SEMICOLON, - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_VARIABLE); - - $this->checkTokenSequence(($target + 1), $expectedSequence); - - }//end testUnaryPlusMinus() - - - /** - * Verify tokenization of bitwise operator tokens. - * - * @return void - */ - public function testBitwiseTokens() - { - $expectedSequence = [ - T_EQUAL, - T_STRING, - T_BITWISE_XOR, - T_STRING, - T_BITWISE_AND, - T_STRING, - T_BITWISE_OR, - T_STRING, - T_BITWISE_NOT, - T_STRING, - T_SEMICOLON, - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_VARIABLE); - - $this->checkTokenSequence(($target + 1), $expectedSequence); - - }//end testBitwiseTokens() - - - /** - * Verify tokenization of bitwise operator tokens. - * - * @return void - */ - public function testBitwiseOrInCatch() - { - $expectedSequence = [ - T_OPEN_PARENTHESIS, - T_STRING, - T_BITWISE_OR, - T_STRING, - T_VARIABLE, - T_CLOSE_PARENTHESIS, - T_OPEN_CURLY_BRACKET, - T_CLOSE_CURLY_BRACKET, - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_CATCH); - - $this->checkTokenSequence(($target + 1), $expectedSequence); - - }//end testBitwiseOrInCatch() - - - /** - * Verify tokenization of a less than operator. - * - * @return void - */ - public function testLessThan() - { - $expectedSequence = [ - T_LESS_THAN, - T_VARIABLE, - T_SEMICOLON, - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_LNUMBER); - - $this->checkTokenSequence(($target + 1), $expectedSequence); - - }//end testLessThan() - - - /** - * Verify tokenization of a greater than operator. - * - * @return void - */ - public function testGreaterThan() - { - $expectedSequence = [ - T_GREATER_THAN, - T_VARIABLE, - T_SEMICOLON, - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_LNUMBER); - - $this->checkTokenSequence(($target + 1), $expectedSequence); - - }//end testGreaterThan() - - - /** - * Verify tokenization of a boolean not operator. - * - * @return void - */ - public function testBooleanNot() - { - $expectedSequence = [ - T_BOOLEAN_NOT, - T_VARIABLE, - T_SEMICOLON, - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_EQUAL); - - $this->checkTokenSequence(($target + 1), $expectedSequence); - - }//end testBooleanNot() - - - /** - * Verify tokenization of commas. - * - * @return void - */ - public function testComma() - { - $expectedSequence = [ - T_COMMA, - T_VARIABLE, - T_COMMA, - T_VARIABLE, - T_SEMICOLON, - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_VARIABLE); - - $this->checkTokenSequence(($target + 1), $expectedSequence); - - }//end testComma() - - - /** - * Verify tokenization of the silence operator. - * - * @return void - */ - public function testAsperand() - { - $expectedSequence = [ - T_ASPERAND, - T_STRING, - T_OPEN_PARENTHESIS, - T_CLOSE_PARENTHESIS, - T_SEMICOLON, - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_EQUAL); - - $this->checkTokenSequence(($target + 1), $expectedSequence); - - }//end testAsperand() - - - /** - * Verify tokenization of the dollar token and curlies for a variable variable. - * - * @return void - */ - public function testDollarAndCurlies() - { - $expectedSequence = [ - T_DOLLAR, - T_OPEN_CURLY_BRACKET, - T_VARIABLE, - T_CLOSE_CURLY_BRACKET, - T_SEMICOLON, - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_ECHO); - - $this->checkTokenSequence(($target + 1), $expectedSequence); - - }//end testDollarAndCurlies() - - - /** - * Verify tokenization of the backtick operator. - * - * @return void - */ - public function testBacktick() - { - $expectedSequence = [ - T_BACKTICK, - T_ENCAPSED_AND_WHITESPACE, - T_BACKTICK, - T_SEMICOLON, - ]; - - $target = $this->getTargetToken('/* '.__FUNCTION__.' */', T_EQUAL); - - $this->checkTokenSequence(($target + 1), $expectedSequence); - - }//end testBacktick() - - - /** - * Test helper. Check a token sequence complies with an expected token sequence. - * - * @param int $startPtr The position in the file to start checking from. - * @param array $expectedSequence The consecutive token constants to expect. - * - * @return void - */ - private function checkTokenSequence($startPtr, array $expectedSequence) - { - $tokens = $this->phpcsFile->getTokens(); - - $sequenceKey = 0; - $sequenceCount = count($expectedSequence); - - for ($i = $startPtr; $sequenceKey < $sequenceCount; $i++) { - if (isset(Tokens::$emptyTokens[$tokens[$i]['code']]) === true) { - // Ignore whitespace and comments, not interested in the tokenization of those for these tests. - continue; - } - - $expectedTokenName = Tokens::tokenName($expectedSequence[$sequenceKey]); - - $this->assertSame( - $expectedSequence[$sequenceKey], - $tokens[$i]['code'], - 'Token tokenized as '.Tokens::tokenName($tokens[$i]['code']).', not '.$expectedTokenName.' (code)' - ); - - $this->assertSame( - $expectedTokenName, - $tokens[$i]['type'], - 'Token tokenized as '.$tokens[$i]['type'].', not '.$expectedTokenName.' (type)' - ); - - ++$sequenceKey; - }//end for - - }//end checkTokenSequence() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/ShortArrayTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/ShortArrayTest.inc deleted file mode 100644 index 60b23a51..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/ShortArrayTest.inc +++ /dev/null @@ -1,111 +0,0 @@ -function_call()[$x]; - -/* testStaticMethodCallDereferencing */ -$var = ClassName::function_call()[$x]; - -/* testPropertyDereferencing */ -$var = $obj->property[2]; - -/* testPropertyDereferencingWithInaccessibleName */ -$var = $ref->{'ref-type'}[1]; - -/* testStaticPropertyDereferencing */ -$var ClassName::$property[2]; - -/* testStringDereferencing */ -$var = 'PHP'[1]; - -/* testStringDereferencingDoubleQuoted */ -$var = "PHP"[$y]; - -/* testConstantDereferencing */ -$var = MY_CONSTANT[1]; - -/* testClassConstantDereferencing */ -$var ClassName::CONSTANT_NAME[2]; - -/* testMagicConstantDereferencing */ -$var = __FILE__[0]; - -/* testArrayAccessCurlyBraces */ -$var = $array{'key'}['key']; - -/* testArrayLiteralDereferencing */ -echo array(1, 2, 3)[0]; - -echo [1, 2, 3]/* testShortArrayLiteralDereferencing */[0]; - -/* testClassMemberDereferencingOnInstantiation1 */ -(new foo)[0]; - -/* testClassMemberDereferencingOnInstantiation2 */ -$a = (new Foo( array(1, array(4, 5), 3) ))[1][0]; - -/* testClassMemberDereferencingOnClone */ -echo (clone $iterable)[20]; - -/* testNullsafeMethodCallDereferencing */ -$var = $obj?->function_call()[$x]; - -/* testInterpolatedStringDereferencing */ -$var = "PHP{$rocks}"[1]; - -/* - * Short array brackets. - */ - -/* testShortArrayDeclarationEmpty */ -$array = []; - -/* testShortArrayDeclarationWithOneValue */ -$array = [1]; - -/* testShortArrayDeclarationWithMultipleValues */ -$array = [1, 2, 3]; - -/* testShortArrayDeclarationWithDereferencing */ -echo [1, 2, 3][0]; - -/* testShortListDeclaration */ -[ $a, $b ] = $array; - -[ $a, $b, /* testNestedListDeclaration */, [$c, $d]] = $array; - -/* testArrayWithinFunctionCall */ -$var = functionCall([$x, $y]); - -if ( true ) { - /* testShortListDeclarationAfterBracedControlStructure */ - [ $a ] = [ 'hi' ]; -} - -if ( true ) - /* testShortListDeclarationAfterNonBracedControlStructure */ - [ $a ] = [ 'hi' ]; - -if ( true ) : - /* testShortListDeclarationAfterAlternativeControlStructure */ - [ $a ] = [ 'hi' ]; -endif; - -/* testLiveCoding */ -// Intentional parse error. This has to be the last test in the file. -$array = [ diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/ShortArrayTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/ShortArrayTest.php deleted file mode 100644 index da9c7c10..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/ShortArrayTest.php +++ /dev/null @@ -1,141 +0,0 @@ - - * @copyright 2020 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -final class ShortArrayTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that real square brackets are still tokenized as square brackets. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * - * @dataProvider dataSquareBrackets - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testSquareBrackets($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - $opener = $this->getTargetToken($testMarker, [T_OPEN_SQUARE_BRACKET, T_OPEN_SHORT_ARRAY]); - $tokenArray = $tokens[$opener]; - - $this->assertSame(T_OPEN_SQUARE_BRACKET, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_OPEN_SQUARE_BRACKET (code)'); - $this->assertSame('T_OPEN_SQUARE_BRACKET', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_OPEN_SQUARE_BRACKET (type)'); - - if (isset($tokens[$opener]['bracket_closer']) === true) { - $closer = $tokens[$opener]['bracket_closer']; - $tokenArray = $tokens[$closer]; - - $this->assertSame(T_CLOSE_SQUARE_BRACKET, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_CLOSE_SQUARE_BRACKET (code)'); - $this->assertSame('T_CLOSE_SQUARE_BRACKET', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_CLOSE_SQUARE_BRACKET (type)'); - } - - }//end testSquareBrackets() - - - /** - * Data provider. - * - * @see testSquareBrackets() - * - * @return array> - */ - public static function dataSquareBrackets() - { - return [ - 'array access 1' => ['/* testArrayAccess1 */'], - 'array access 2' => ['/* testArrayAccess2 */'], - 'array assignment' => ['/* testArrayAssignment */'], - 'function call dereferencing' => ['/* testFunctionCallDereferencing */'], - 'method call dereferencing' => ['/* testMethodCallDereferencing */'], - 'static method call dereferencing' => ['/* testStaticMethodCallDereferencing */'], - 'property dereferencing' => ['/* testPropertyDereferencing */'], - 'property dereferencing with inaccessable name' => ['/* testPropertyDereferencingWithInaccessibleName */'], - 'static property dereferencing' => ['/* testStaticPropertyDereferencing */'], - 'string dereferencing single quotes' => ['/* testStringDereferencing */'], - 'string dereferencing double quotes' => ['/* testStringDereferencingDoubleQuoted */'], - 'global constant dereferencing' => ['/* testConstantDereferencing */'], - 'class constant dereferencing' => ['/* testClassConstantDereferencing */'], - 'magic constant dereferencing' => ['/* testMagicConstantDereferencing */'], - 'array access with curly braces' => ['/* testArrayAccessCurlyBraces */'], - 'array literal dereferencing' => ['/* testArrayLiteralDereferencing */'], - 'short array literal dereferencing' => ['/* testShortArrayLiteralDereferencing */'], - 'class member dereferencing on instantiation 1' => ['/* testClassMemberDereferencingOnInstantiation1 */'], - 'class member dereferencing on instantiation 2' => ['/* testClassMemberDereferencingOnInstantiation2 */'], - 'class member dereferencing on clone' => ['/* testClassMemberDereferencingOnClone */'], - 'nullsafe method call dereferencing' => ['/* testNullsafeMethodCallDereferencing */'], - 'interpolated string dereferencing' => ['/* testInterpolatedStringDereferencing */'], - 'live coding' => ['/* testLiveCoding */'], - ]; - - }//end dataSquareBrackets() - - - /** - * Test that short arrays and short lists are still tokenized as short arrays. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * - * @dataProvider dataShortArrays - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testShortArrays($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - $opener = $this->getTargetToken($testMarker, [T_OPEN_SQUARE_BRACKET, T_OPEN_SHORT_ARRAY]); - $tokenArray = $tokens[$opener]; - - $this->assertSame(T_OPEN_SHORT_ARRAY, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_OPEN_SHORT_ARRAY (code)'); - $this->assertSame('T_OPEN_SHORT_ARRAY', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_OPEN_SHORT_ARRAY (type)'); - - if (isset($tokens[$opener]['bracket_closer']) === true) { - $closer = $tokens[$opener]['bracket_closer']; - $tokenArray = $tokens[$closer]; - - $this->assertSame(T_CLOSE_SHORT_ARRAY, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_CLOSE_SHORT_ARRAY (code)'); - $this->assertSame('T_CLOSE_SHORT_ARRAY', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_CLOSE_SHORT_ARRAY (type)'); - } - - }//end testShortArrays() - - - /** - * Data provider. - * - * @see testShortArrays() - * - * @return array> - */ - public static function dataShortArrays() - { - return [ - 'short array empty' => ['/* testShortArrayDeclarationEmpty */'], - 'short array with value' => ['/* testShortArrayDeclarationWithOneValue */'], - 'short array with values' => ['/* testShortArrayDeclarationWithMultipleValues */'], - 'short array with dereferencing' => ['/* testShortArrayDeclarationWithDereferencing */'], - 'short list' => ['/* testShortListDeclaration */'], - 'short list nested' => ['/* testNestedListDeclaration */'], - 'short array within function call' => ['/* testArrayWithinFunctionCall */'], - 'short list after braced control structure' => ['/* testShortListDeclarationAfterBracedControlStructure */'], - 'short list after non-braced control structure' => ['/* testShortListDeclarationAfterNonBracedControlStructure */'], - 'short list after alternative control structure' => ['/* testShortListDeclarationAfterAlternativeControlStructure */'], - ]; - - }//end dataShortArrays() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/StableCommentWhitespaceTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/StableCommentWhitespaceTest.inc deleted file mode 100644 index 3bf013c6..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/StableCommentWhitespaceTest.inc +++ /dev/null @@ -1,139 +0,0 @@ - - - - * @copyright 2020 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; -use PHP_CodeSniffer\Util\Tokens; - -final class StableCommentWhitespaceTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that comment tokenization with new lines at the end of the comment is stable. - * - * @param string $testMarker The comment prefacing the test. - * @param array> $expectedTokens The tokenization expected. - * - * @dataProvider dataCommentTokenization - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testCommentTokenization($testMarker, $expectedTokens) - { - $tokens = $this->phpcsFile->getTokens(); - $comment = $this->getTargetToken($testMarker, Tokens::$commentTokens); - - foreach ($expectedTokens as $tokenInfo) { - $this->assertSame( - constant($tokenInfo['type']), - $tokens[$comment]['code'], - 'Token tokenized as '.Tokens::tokenName($tokens[$comment]['code']).', not '.$tokenInfo['type'].' (code)' - ); - $this->assertSame( - $tokenInfo['type'], - $tokens[$comment]['type'], - 'Token tokenized as '.$tokens[$comment]['type'].', not '.$tokenInfo['type'].' (type)' - ); - $this->assertSame($tokenInfo['content'], $tokens[$comment]['content']); - - ++$comment; - } - - }//end testCommentTokenization() - - - /** - * Data provider. - * - * @see testCommentTokenization() - * - * @return array>>> - */ - public static function dataCommentTokenization() - { - return [ - 'slash comment, single line' => [ - 'testMarker' => '/* testSingleLineSlashComment */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'slash comment, single line, trailing' => [ - 'testMarker' => '/* testSingleLineSlashCommentTrailing */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'slash ignore annotation, single line' => [ - 'testMarker' => '/* testSingleLineSlashAnnotation */', - 'expectedTokens' => [ - [ - 'type' => 'T_PHPCS_DISABLE', - 'content' => '// phpcs:disable Stnd.Cat -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'slash comment, multi-line' => [ - 'testMarker' => '/* testMultiLineSlashComment */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment1 -', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment2 -', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment3 -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'slash comment, multi-line, indented' => [ - 'testMarker' => '/* testMultiLineSlashCommentWithIndent */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment1 -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment2 -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment3 -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'slash comment, multi-line, ignore annotation as first line' => [ - 'testMarker' => '/* testMultiLineSlashCommentWithAnnotationStart */', - 'expectedTokens' => [ - [ - 'type' => 'T_PHPCS_IGNORE', - 'content' => '// phpcs:ignore Stnd.Cat -', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment2 -', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment3 -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'slash comment, multi-line, ignore annotation as middle line' => [ - 'testMarker' => '/* testMultiLineSlashCommentWithAnnotationMiddle */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment1 -', - ], - [ - 'type' => 'T_PHPCS_IGNORE', - 'content' => '// @phpcs:ignore Stnd.Cat -', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment3 -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'slash comment, multi-line, ignore annotation as last line' => [ - 'testMarker' => '/* testMultiLineSlashCommentWithAnnotationEnd */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment1 -', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment2 -', - ], - [ - 'type' => 'T_PHPCS_IGNORE', - 'content' => '// phpcs:ignore Stnd.Cat -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'star comment, single line' => [ - 'testMarker' => '/* testSingleLineStarComment */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '/* Single line star comment */', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'star comment, single line, trailing' => [ - 'testMarker' => '/* testSingleLineStarCommentTrailing */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '/* Comment */', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'star ignore annotation, single line' => [ - 'testMarker' => '/* testSingleLineStarAnnotation */', - 'expectedTokens' => [ - [ - 'type' => 'T_PHPCS_IGNORE', - 'content' => '/* phpcs:ignore Stnd.Cat */', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'star comment, multi-line' => [ - 'testMarker' => '/* testMultiLineStarComment */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '/* Comment1 -', - ], - [ - 'type' => 'T_COMMENT', - 'content' => ' * Comment2 -', - ], - [ - 'type' => 'T_COMMENT', - 'content' => ' * Comment3 */', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'star comment, multi-line, indented' => [ - 'testMarker' => '/* testMultiLineStarCommentWithIndent */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '/* Comment1 -', - ], - [ - 'type' => 'T_COMMENT', - 'content' => ' * Comment2 -', - ], - [ - 'type' => 'T_COMMENT', - 'content' => ' * Comment3 */', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'star comment, multi-line, ignore annotation as first line' => [ - 'testMarker' => '/* testMultiLineStarCommentWithAnnotationStart */', - 'expectedTokens' => [ - [ - 'type' => 'T_PHPCS_IGNORE', - 'content' => '/* @phpcs:ignore Stnd.Cat -', - ], - [ - 'type' => 'T_COMMENT', - 'content' => ' * Comment2 -', - ], - [ - 'type' => 'T_COMMENT', - 'content' => ' * Comment3 */', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'star comment, multi-line, ignore annotation as middle line' => [ - 'testMarker' => '/* testMultiLineStarCommentWithAnnotationMiddle */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '/* Comment1 -', - ], - [ - 'type' => 'T_PHPCS_IGNORE', - 'content' => ' * phpcs:ignore Stnd.Cat -', - ], - [ - 'type' => 'T_COMMENT', - 'content' => ' * Comment3 */', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'star comment, multi-line, ignore annotation as last line' => [ - 'testMarker' => '/* testMultiLineStarCommentWithAnnotationEnd */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '/* Comment1 -', - ], - [ - 'type' => 'T_COMMENT', - 'content' => ' * Comment2 -', - ], - [ - 'type' => 'T_PHPCS_IGNORE', - 'content' => ' * phpcs:ignore Stnd.Cat */', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - - 'docblock comment, single line' => [ - 'testMarker' => '/* testSingleLineDocblockComment */', - 'expectedTokens' => [ - [ - 'type' => 'T_DOC_COMMENT_OPEN_TAG', - 'content' => '/**', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STRING', - 'content' => 'Comment ', - ], - [ - 'type' => 'T_DOC_COMMENT_CLOSE_TAG', - 'content' => '*/', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'docblock comment, single line, trailing' => [ - 'testMarker' => '/* testSingleLineDocblockCommentTrailing */', - 'expectedTokens' => [ - [ - 'type' => 'T_DOC_COMMENT_OPEN_TAG', - 'content' => '/**', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STRING', - 'content' => 'Comment ', - ], - [ - 'type' => 'T_DOC_COMMENT_CLOSE_TAG', - 'content' => '*/', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'docblock ignore annotation, single line' => [ - 'testMarker' => '/* testSingleLineDocblockAnnotation */', - 'expectedTokens' => [ - [ - 'type' => 'T_DOC_COMMENT_OPEN_TAG', - 'content' => '/**', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_PHPCS_IGNORE', - 'content' => 'phpcs:ignore Stnd.Cat.Sniff ', - ], - [ - 'type' => 'T_DOC_COMMENT_CLOSE_TAG', - 'content' => '*/', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - - 'docblock comment, multi-line' => [ - 'testMarker' => '/* testMultiLineDocblockComment */', - 'expectedTokens' => [ - [ - 'type' => 'T_DOC_COMMENT_OPEN_TAG', - 'content' => '/**', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STAR', - 'content' => '*', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STRING', - 'content' => 'Comment1', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STAR', - 'content' => '*', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STRING', - 'content' => 'Comment2', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STAR', - 'content' => '*', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STAR', - 'content' => '*', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_TAG', - 'content' => '@tag', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STRING', - 'content' => 'Comment', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_CLOSE_TAG', - 'content' => '*/', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'docblock comment, multi-line, indented' => [ - 'testMarker' => '/* testMultiLineDocblockCommentWithIndent */', - 'expectedTokens' => [ - [ - 'type' => 'T_DOC_COMMENT_OPEN_TAG', - 'content' => '/**', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STAR', - 'content' => '*', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STRING', - 'content' => 'Comment1', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STAR', - 'content' => '*', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STRING', - 'content' => 'Comment2', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STAR', - 'content' => '*', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STAR', - 'content' => '*', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_TAG', - 'content' => '@tag', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STRING', - 'content' => 'Comment', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_CLOSE_TAG', - 'content' => '*/', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'docblock comment, multi-line, ignore annotation' => [ - 'testMarker' => '/* testMultiLineDocblockCommentWithAnnotation */', - 'expectedTokens' => [ - [ - 'type' => 'T_DOC_COMMENT_OPEN_TAG', - 'content' => '/**', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STAR', - 'content' => '*', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STRING', - 'content' => 'Comment', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STAR', - 'content' => '*', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STAR', - 'content' => '*', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_PHPCS_IGNORE', - 'content' => 'phpcs:ignore Stnd.Cat', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STAR', - 'content' => '*', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_TAG', - 'content' => '@tag', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STRING', - 'content' => 'Comment', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_CLOSE_TAG', - 'content' => '*/', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'docblock comment, multi-line, ignore annotation as tag' => [ - 'testMarker' => '/* testMultiLineDocblockCommentWithTagAnnotation */', - 'expectedTokens' => [ - [ - 'type' => 'T_DOC_COMMENT_OPEN_TAG', - 'content' => '/**', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STAR', - 'content' => '*', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STRING', - 'content' => 'Comment', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STAR', - 'content' => '*', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STAR', - 'content' => '*', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_PHPCS_IGNORE', - 'content' => '@phpcs:ignore Stnd.Cat', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STAR', - 'content' => '*', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_TAG', - 'content' => '@tag', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_STRING', - 'content' => 'Comment', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_DOC_COMMENT_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_DOC_COMMENT_CLOSE_TAG', - 'content' => '*/', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'hash comment, single line' => [ - 'testMarker' => '/* testSingleLineHashComment */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '# Comment -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'hash comment, single line, trailing' => [ - 'testMarker' => '/* testSingleLineHashCommentTrailing */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '# Comment -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'hash comment, multi-line' => [ - 'testMarker' => '/* testMultiLineHashComment */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '# Comment1 -', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '# Comment2 -', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '# Comment3 -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'hash comment, multi-line, indented' => [ - 'testMarker' => '/* testMultiLineHashCommentWithIndent */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '# Comment1 -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '# Comment2 -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '# Comment3 -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'slash comment, single line, without new line at end' => [ - 'testMarker' => '/* testSingleLineSlashCommentNoNewLineAtEnd */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '// Slash ', - ], - [ - 'type' => 'T_CLOSE_TAG', - 'content' => '?> -', - ], - ], - ], - 'hash comment, single line, without new line at end' => [ - 'testMarker' => '/* testSingleLineHashCommentNoNewLineAtEnd */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '# Hash ', - ], - [ - 'type' => 'T_CLOSE_TAG', - 'content' => '?> -', - ], - ], - ], - 'unclosed star comment at end of file' => [ - 'testMarker' => '/* testCommentAtEndOfFile */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '/* Comment', - ], - ], - ], - ]; - - }//end dataCommentTokenization() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/StableCommentWhitespaceWinTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/StableCommentWhitespaceWinTest.inc deleted file mode 100644 index 6ca7026d..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/StableCommentWhitespaceWinTest.inc +++ /dev/null @@ -1,63 +0,0 @@ - - - - * @copyright 2020 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; -use PHP_CodeSniffer\Util\Tokens; - -final class StableCommentWhitespaceWinTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that comment tokenization with new lines at the end of the comment is stable. - * - * @param string $testMarker The comment prefacing the test. - * @param array> $expectedTokens The tokenization expected. - * - * @dataProvider dataCommentTokenization - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testCommentTokenization($testMarker, $expectedTokens) - { - $tokens = $this->phpcsFile->getTokens(); - $comment = $this->getTargetToken($testMarker, Tokens::$commentTokens); - - foreach ($expectedTokens as $tokenInfo) { - $this->assertSame( - constant($tokenInfo['type']), - $tokens[$comment]['code'], - 'Token tokenized as '.Tokens::tokenName($tokens[$comment]['code']).', not '.$tokenInfo['type'].' (code)' - ); - $this->assertSame( - $tokenInfo['type'], - $tokens[$comment]['type'], - 'Token tokenized as '.$tokens[$comment]['type'].', not '.$tokenInfo['type'].' (type)' - ); - $this->assertSame($tokenInfo['content'], $tokens[$comment]['content']); - - ++$comment; - } - - }//end testCommentTokenization() - - - /** - * Data provider. - * - * @see testCommentTokenization() - * - * @return array>>> - */ - public static function dataCommentTokenization() - { - return [ - 'slash comment, single line' => [ - 'testMarker' => '/* testSingleLineSlashComment */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'slash comment, single line, trailing' => [ - 'testMarker' => '/* testSingleLineSlashCommentTrailing */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'slash ignore annotation, single line' => [ - 'testMarker' => '/* testSingleLineSlashAnnotation */', - 'expectedTokens' => [ - [ - 'type' => 'T_PHPCS_DISABLE', - 'content' => '// phpcs:disable Stnd.Cat -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'slash comment, multi-line' => [ - 'testMarker' => '/* testMultiLineSlashComment */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment1 -', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment2 -', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment3 -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'slash comment, multi-line, indented' => [ - 'testMarker' => '/* testMultiLineSlashCommentWithIndent */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment1 -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment2 -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment3 -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'slash comment, multi-line, ignore annotation as first line' => [ - 'testMarker' => '/* testMultiLineSlashCommentWithAnnotationStart */', - 'expectedTokens' => [ - [ - 'type' => 'T_PHPCS_IGNORE', - 'content' => '// phpcs:ignore Stnd.Cat -', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment2 -', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment3 -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'slash comment, multi-line, ignore annotation as middle line' => [ - 'testMarker' => '/* testMultiLineSlashCommentWithAnnotationMiddle */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment1 -', - ], - [ - 'type' => 'T_PHPCS_IGNORE', - 'content' => '// @phpcs:ignore Stnd.Cat -', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment3 -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'slash comment, multi-line, ignore annotation as last line' => [ - 'testMarker' => '/* testMultiLineSlashCommentWithAnnotationEnd */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment1 -', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '// Comment2 -', - ], - [ - 'type' => 'T_PHPCS_IGNORE', - 'content' => '// phpcs:ignore Stnd.Cat -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'slash comment, single line, without new line at end' => [ - 'testMarker' => '/* testSingleLineSlashCommentNoNewLineAtEnd */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '// Slash ', - ], - [ - 'type' => 'T_CLOSE_TAG', - 'content' => '?> -', - ], - ], - ], - 'hash comment, single line' => [ - 'testMarker' => '/* testSingleLineHashComment */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '# Comment -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'hash comment, single line, trailing' => [ - 'testMarker' => '/* testSingleLineHashCommentTrailing */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '# Comment -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'hash comment, multi-line' => [ - 'testMarker' => '/* testMultiLineHashComment */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '# Comment1 -', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '# Comment2 -', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '# Comment3 -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'hash comment, multi-line, indented' => [ - 'testMarker' => '/* testMultiLineHashCommentWithIndent */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '# Comment1 -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '# Comment2 -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '# Comment3 -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'hash comment, single line, without new line at end' => [ - 'testMarker' => '/* testSingleLineHashCommentNoNewLineAtEnd */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '# Hash ', - ], - [ - 'type' => 'T_CLOSE_TAG', - 'content' => '?> -', - ], - ], - ], - 'unclosed star comment at end of file' => [ - 'testMarker' => '/* testCommentAtEndOfFile */', - 'expectedTokens' => [ - [ - 'type' => 'T_COMMENT', - 'content' => '/* Comment', - ], - ], - ], - ]; - - }//end dataCommentTokenization() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/TypeIntersectionTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/TypeIntersectionTest.inc deleted file mode 100644 index 53177a53..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/TypeIntersectionTest.inc +++ /dev/null @@ -1,161 +0,0 @@ - $param & $int; - -/* testTypeIntersectionArrowReturnType */ -$arrowWithReturnType = fn ($param) : Foo&Bar => $param * 10; - -/* testBitwiseAndInArrayKey */ -$array = array( - A & B => /* testBitwiseAndInArrayValue */ B & C -); - -/* testBitwiseAndInShortArrayKey */ -$array = [ - A & B => /* testBitwiseAndInShortArrayValue */ B & C -]; - -/* testBitwiseAndNonArrowFnFunctionCall */ -$obj->fn($something & $else); - -/* testBitwiseAnd6 */ -function &fn(/* testTypeIntersectionNonArrowFunctionDeclaration */ Foo&Bar $something) {} - -/* testTypeIntersectionWithInvalidTypes */ -function (int&string $var) {}; - -/* testLiveCoding */ -// Intentional parse error. This has to be the last test in the file. -return function( Foo& diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/TypeIntersectionTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/TypeIntersectionTest.php deleted file mode 100644 index 8ed951de..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/TypeIntersectionTest.php +++ /dev/null @@ -1,157 +0,0 @@ - - * @author Jaroslav Hanslík - * @copyright 2020 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -final class TypeIntersectionTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that non-intersection type bitwise and tokens are still tokenized as bitwise and. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * - * @dataProvider dataBitwiseAnd - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testBitwiseAnd($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - $target = $this->getTargetToken($testMarker, [T_BITWISE_AND, T_TYPE_INTERSECTION]); - $tokenArray = $tokens[$target]; - - $this->assertSame(T_BITWISE_AND, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_BITWISE_AND (code)'); - $this->assertSame('T_BITWISE_AND', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_BITWISE_AND (type)'); - - }//end testBitwiseAnd() - - - /** - * Data provider. - * - * @see testBitwiseAnd() - * - * @return array> - */ - public static function dataBitwiseAnd() - { - return [ - 'in simple assignment 1' => ['/* testBitwiseAnd1 */'], - 'in simple assignment 2' => ['/* testBitwiseAnd2 */'], - 'in OO constant default value' => ['/* testBitwiseAndOOConstDefaultValue */'], - 'in property default value' => ['/* testBitwiseAndPropertyDefaultValue */'], - 'in method parameter default value' => ['/* testBitwiseAndParamDefaultValue */'], - 'reference for method parameter' => ['/* testBitwiseAnd3 */'], - 'in return statement' => ['/* testBitwiseAnd4 */'], - 'reference for function parameter' => ['/* testBitwiseAnd5 */'], - 'in OO constant default value DNF-like' => ['/* testBitwiseAndOOConstDefaultValueDNF */'], - 'in property default value DNF-like' => ['/* testBitwiseAndPropertyDefaultValueDNF */'], - 'in method parameter default value DNF-like' => ['/* testBitwiseAndParamDefaultValueDNF */'], - 'in closure parameter default value' => ['/* testBitwiseAndClosureParamDefault */'], - 'in arrow function parameter default value' => ['/* testBitwiseAndArrowParamDefault */'], - 'in arrow function return expression' => ['/* testBitwiseAndArrowExpression */'], - 'in long array key' => ['/* testBitwiseAndInArrayKey */'], - 'in long array value' => ['/* testBitwiseAndInArrayValue */'], - 'in short array key' => ['/* testBitwiseAndInShortArrayKey */'], - 'in short array value' => ['/* testBitwiseAndInShortArrayValue */'], - 'in parameter in function call' => ['/* testBitwiseAndNonArrowFnFunctionCall */'], - 'function return by reference' => ['/* testBitwiseAnd6 */'], - 'live coding / undetermined' => ['/* testLiveCoding */'], - ]; - - }//end dataBitwiseAnd() - - - /** - * Test that bitwise and tokens when used as part of a intersection type are tokenized as `T_TYPE_INTERSECTION`. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * - * @dataProvider dataTypeIntersection - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testTypeIntersection($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - $target = $this->getTargetToken($testMarker, [T_BITWISE_AND, T_TYPE_INTERSECTION]); - $tokenArray = $tokens[$target]; - - $this->assertSame(T_TYPE_INTERSECTION, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_TYPE_INTERSECTION (code)'); - $this->assertSame('T_TYPE_INTERSECTION', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_TYPE_INTERSECTION (type)'); - - }//end testTypeIntersection() - - - /** - * Data provider. - * - * @see testTypeIntersection() - * - * @return array> - */ - public static function dataTypeIntersection() - { - return [ - 'type for OO constant' => ['/* testTypeIntersectionOOConstSimple */'], - 'type for OO constant, reversed modifier order' => ['/* testTypeIntersectionOOConstReverseModifierOrder */'], - 'type for OO constant, first of multi-intersect' => ['/* testTypeIntersectionOOConstMulti1 */'], - 'type for OO constant, middle of multi-intersect + comments' => ['/* testTypeIntersectionOOConstMulti2 */'], - 'type for OO constant, last of multi-intersect' => ['/* testTypeIntersectionOOConstMulti3 */'], - 'type for OO constant, using namespace relative names' => ['/* testTypeIntersectionOOConstNamespaceRelative */'], - 'type for OO constant, using partially qualified names' => ['/* testTypeIntersectionOOConstPartiallyQualified */'], - 'type for OO constant, using fully qualified names' => ['/* testTypeIntersectionOOConstFullyQualified */'], - 'type for static property' => ['/* testTypeIntersectionPropertySimple */'], - 'type for static property, reversed modifier order' => ['/* testTypeIntersectionPropertyReverseModifierOrder */'], - 'type for property, first of multi-intersect' => ['/* testTypeIntersectionPropertyMulti1 */'], - 'type for property, middle of multi-intersect, also comments' => ['/* testTypeIntersectionPropertyMulti2 */'], - 'type for property, last of multi-intersect' => ['/* testTypeIntersectionPropertyMulti3 */'], - 'type for property using namespace relative names' => ['/* testTypeIntersectionPropertyNamespaceRelative */'], - 'type for property using partially qualified names' => ['/* testTypeIntersectionPropertyPartiallyQualified */'], - 'type for property using fully qualified names' => ['/* testTypeIntersectionPropertyFullyQualified */'], - 'type for readonly property' => ['/* testTypeIntersectionPropertyWithReadOnlyKeyword */'], - 'type for static readonly property' => ['/* testTypeIntersectionPropertyWithStaticKeyword */'], - 'type for method parameter' => ['/* testTypeIntersectionParam1 */'], - 'type for method parameter, first in multi-intersect' => ['/* testTypeIntersectionParam2 */'], - 'type for method parameter, last in multi-intersect' => ['/* testTypeIntersectionParam3 */'], - 'type for method parameter with namespace relative names' => ['/* testTypeIntersectionParamNamespaceRelative */'], - 'type for method parameter with partially qualified names' => ['/* testTypeIntersectionParamPartiallyQualified */'], - 'type for method parameter with fully qualified names' => ['/* testTypeIntersectionParamFullyQualified */'], - 'type for property in constructor property promotion' => ['/* testTypeIntersectionConstructorPropertyPromotion */'], - 'return type for method' => ['/* testTypeIntersectionReturnType */'], - 'return type for method, first of multi-intersect' => ['/* testTypeIntersectionAbstractMethodReturnType1 */'], - 'return type for method, last of multi-intersect' => ['/* testTypeIntersectionAbstractMethodReturnType2 */'], - 'return type for method with namespace relative names' => ['/* testTypeIntersectionReturnTypeNamespaceRelative */'], - 'return type for method with partially qualified names' => ['/* testTypeIntersectionReturnPartiallyQualified */'], - 'return type for method with fully qualified names' => ['/* testTypeIntersectionReturnFullyQualified */'], - 'type for function parameter with reference' => ['/* testTypeIntersectionWithReference */'], - 'type for function parameter with spread operator' => ['/* testTypeIntersectionWithSpreadOperator */'], - 'DNF type for OO constant, union before DNF' => ['/* testTypeIntersectionConstantTypeUnionBeforeDNF */'], - 'DNF type for property, union after DNF' => ['/* testTypeIntersectionPropertyTypeUnionAfterDNF */'], - 'DNF type for function param, union before and after DNF' => ['/* testTypeIntersectionParamUnionBeforeAndAfterDNF */'], - 'DNF type for function return, union after DNF with null' => ['/* testTypeIntersectionReturnTypeUnionAfterDNF */'], - 'type for closure parameter with illegal nullable' => ['/* testTypeIntersectionClosureParamIllegalNullable */'], - 'return type for closure' => ['/* testTypeIntersectionClosureReturn */'], - 'type for arrow function parameter' => ['/* testTypeIntersectionArrowParam */'], - 'return type for arrow function' => ['/* testTypeIntersectionArrowReturnType */'], - 'type for function parameter, return by ref' => ['/* testTypeIntersectionNonArrowFunctionDeclaration */'], - 'type for function parameter with invalid types' => ['/* testTypeIntersectionWithInvalidTypes */'], - ]; - - }//end dataTypeIntersection() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/TypedConstantsTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/TypedConstantsTest.inc deleted file mode 100644 index 4c6212b7..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/TypedConstantsTest.inc +++ /dev/null @@ -1,156 +0,0 @@ -const ? 0 : 1; - -/* testGlobalConstantCannotBeTyped */ -const GLOBAL_UNTYPED = true; - -/* testGlobalConstantTypedShouldStillBeHandled */ -const ?int GLOBAL_TYPED = true; - -class ClassWithPlainTypedConstants { - /* testClassConstFinalUntyped */ - final const FINAL_UNTYPED = true; - - /* testClassConstVisibilityUntyped */ - public const /*comment*/VISIBLE_UNTYPED = true; - - /* testClassConstTypedTrue */ - const true TYPED_TRUE = true; - /* testClassConstTypedFalse */ - final const false TYPED_FALSE = false; - /* testClassConstTypedNull */ - public const null TYPED_NULL = null; - /* testClassConstTypedBool */ - final protected const/*comment*/bool TYPED_BOOL = false; - /* testClassConstTypedInt */ - private const int TYPED_INT = 0; - /* testClassConstTypedFloat */ - const float TYPED_FLOAT = 0.5; - /* testClassConstTypedString */ - public final const string/*comment*/TYPED_STRING = 'string'; - /* testClassConstTypedArray */ - private final const array TYPED_ARRAY = []; - /* testClassConstTypedObject */ - const - object - TYPED_OBJECT = MyClass::getInstance(); - /* testClassConstTypedIterable */ - const iterable typed_iterable = []; - /* testClassConstTypedMixed */ - const mixed TYPED_MIXED = 'string'; - - /* testClassConstTypedClassUnqualified */ - const MyClass TYPED_UNQUALIFIED_CLASSNAME = MyClass::getInstance(); - /* testClassConstTypedClassFullyQualified */ - public const \MyClass TYPED_FULLY_QUALIFIED_CLASSNAME = MyClass::getInstance(); - /* testClassConstTypedClassNamespaceRelative */ - protected const namespace\MyClass TYPED_NAMESPACE_RELATIVE_CLASSNAME = MyClass::getInstance(); - /* testClassConstTypedClassPartiallyQualified */ - private const Partial\MyClass TYPED_PARTIALLY_QUALIFIED_CLASSNAME = MyClass::getInstance(); - /* testClassConstTypedParent */ - const parent TYPED_PARENT = parent::getInstance(); - - // Illegal types - the fact that these are not allowed in PHP is not the concern of the PHPCS tokenizer. - /* testClassConstTypedCallable */ - protected const callable TYPED_CALLABLE = 'function_name'; - /* testClassConstTypedVoid */ - protected const void TYPED_VOID = null; - /* testClassConstTypedNever */ - protected const NEVER TYPED_NEVER = null; -} - -trait TraitWithNullableTypedConstants { - /* testTraitConstTypedNullableTrue */ - const ?true TYPED_TRUE = true; - /* testTraitConstTypedNullableFalse */ - final const ?false TYPED_FALSE = false; - /* testTraitConstTypedNullableNull */ - public const ?null TYPED_NULL = null; - /* testTraitConstTypedNullableBool */ - final protected const ?bool TYPED_BOOL = false; - /* testTraitConstTypedNullableInt */ - private const ?int TYPED_INT = 0; - /* testTraitConstTypedNullableFloat */ - const ? /*comment*/ float TYPED_FLOAT = 0.5; - /* testTraitConstTypedNullableString */ - public final const ?string TYPED_STRING = 'string'; - /* testTraitConstTypedNullableArray */ - private final const ? array TYPED_ARRAY = []; - /* testTraitConstTypedNullableObject */ - const ?object TYPED_OBJECT = MyClass::getInstance(); - /* testTraitConstTypedNullableIterable */ - const ?iterable TYPED_ITERABLE = []; - /* testTraitConstTypedNullableMixed */ - const ?mixed TYPED_MIXED = 'string'; - - /* testTraitConstTypedNullableClassUnqualified */ - const ?MyClass TYPED_UNQUALIFIED_CLASSNAME = MyClass::getInstance(); - /* testTraitConstTypedNullableClassFullyQualified */ - public const ?\MyClass TYPED_FULLY_QUALIFIED_CLASSNAME = MyClass::getInstance(); - /* testTraitConstTypedNullableClassNamespaceRelative */ - protected const ?namespace\MyClass TYPED_NAMESPACE_RELATIVE_CLASSNAME = MyClass::getInstance(); - /* testTraitConstTypedNullableClassPartiallyQualified */ - private const ?Partial\MyClass TYPED_PARTIALLY_QUALIFIED_CLASSNAME = MyClass::getInstance(); - /* testTraitConstTypedNullableParent */ - const ?parent TYPED_PARENT = parent::getInstance(); -} - -interface InterfaceWithUnionTypedConstants { - /* testInterfaceConstTypedUnionTrueNull */ - const true|null /*comment*/ UNION_TRUE_NULL = true; - /* testInterfaceConstTypedUnionArrayObject */ - const array|object UNION_ARRAY_OBJECT = []; - /* testInterfaceConstTypedUnionStringArrayInt */ - const string | array | int UNION_STRING_ARRAY_INT = 'array middle'; - /* testInterfaceConstTypedUnionFloatBoolArray */ - const float /*comment*/| bool|array UNION_FLOAT_BOOL_ARRAY = false; - /* testInterfaceConstTypedUnionIterableFalse */ - const iterable|false UNION_ITERABLE_FALSE = false; - /* testInterfaceConstTypedUnionUnqualifiedNamespaceRelative */ - const Unqualified|namespace\Relative UNION_UNQUALIFIED_NSRELATIVE = new Unqualified(); - /* testInterfaceConstTypedUnionFullyQualifiedPartiallyQualified */ - const \Fully\Qualified|Partially\Qualified UNION_FQN_PARTIAL = new Partial\Qualified; -} - -enum EnumWithIntersectionTypedConstants { - // Illegal types in a class, but legal in an enum. - /* testEnumConstTypedSelf */ - final const self TYPED_SELF = self::getInstance(); - /* testEnumConstTypedStatic */ - const static TYPED_STATIC = static::getInstance(); - /* testEnumConstTypedNullableSelf */ - public const ?self TYPED_SELF = self::getInstance(); - /* testEnumConstTypedNullableStatic */ - const ?static TYPED_STATIC = static::getInstance(); - - /* testEnumConstTypedIntersectUnqualifiedNamespaceRelative */ - const Unqualified&namespace\Relative UNION_UNQUALIFIED_NSRELATIVE = new Unqualified(); - /* testEnumConstTypedIntersectFullyQualifiedPartiallyQualified */ - const \Fully\Qualified&Partially\Qualified UNION_FQN_PARTIAL = new Partial\Qualified; -} - -$anonClassWithDNFTypes = new class() extends Something { - /* testAnonClassConstDNFTypeNullAfter */ - const (A&B)|null DNF_OR_NULL_1 = null; - /* testAnonClassConstDNFTypeNullBefore */ - public final const NULL|(A&B) DNF_OR_NULL_2 = null; - /* testAnonClassConstDNFTypeFalseBefore */ - final const false|(C&D) DNF_OR_FALSE = false; - /* testAnonClassConstDNFTypeTrueAfter */ - private final const ( F & G ) | true DNF_OR_ARRAY = true; - /* testAnonClassConstDNFTypeTrueBeforeFalseAfter */ - public const TRUE|(SplBool&Stringable)|FALSE DNF_OR_BOOL = true; - /* testAnonClassConstDNFTypeArrayAfter */ - final protected const (Traversable&Countable)|array DNF_OR_ARRAY_1 = []; - /* testAnonClassConstDNFTypeArrayBefore */ - private const array /*comment*/ | ( Traversable /*comment*/ & Countable ) DNF_OR_ARRAY_2 = new MyClass; - /* testAnonClassConstDNFTypeInvalidNullable */ - const ? (Invalid&Fatal)|NullableNotAllowed DNF = null; - - /* testAnonClassConstDNFTypeFQNRelativePartiallyQualified */ - const (\FQN&namespace\Relative)|Partially\Qualified DNF_CLASSNAME = MyClass::getInstance(); - /* testAnonClassConstDNFTypeParentSelfStatic */ - const (parent&self)|static DNF_PARENT = parent::getInstance(); -}; diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/TypedConstantsTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/TypedConstantsTest.php deleted file mode 100644 index 29a1fc7a..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/TypedConstantsTest.php +++ /dev/null @@ -1,668 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; -use PHP_CodeSniffer\Util\Tokens; - -final class TypedConstantsTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that a ? after a "const" which is not the constant keyword is tokenized as ternary then, not as the nullable operator. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testTernaryIsInlineThen() - { - $tokens = $this->phpcsFile->getTokens(); - $target = $this->getTargetToken('/* testTernaryIsTernaryAfterConst */', [T_NULLABLE, T_INLINE_THEN]); - - $this->assertSame( - T_INLINE_THEN, - $tokens[$target]['code'], - 'Token tokenized as '.Tokens::tokenName($tokens[$target]['code']).', not T_INLINE_THEN (code)' - ); - $this->assertSame( - 'T_INLINE_THEN', - $tokens[$target]['type'], - 'Token tokenized as '.$tokens[$target]['type'].', not T_INLINE_THEN (type)' - ); - - }//end testTernaryIsInlineThen() - - - /** - * Test the token name for an untyped constant is tokenized as T_STRING. - * - * @param string $testMarker The comment prefacing the target token. - * - * @dataProvider dataUntypedConstant - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testUntypedConstant($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - $target = $this->getTargetToken($testMarker, T_CONST); - - for ($i = ($target + 1); $tokens[$i]['code'] !== T_EQUAL; $i++) { - if (isset(Tokens::$emptyTokens[$tokens[$i]['code']]) === true) { - // Ignore whitespace and comments, not interested in the tokenization of those. - continue; - } - - $this->assertSame( - T_STRING, - $tokens[$i]['code'], - 'Token tokenized as '.Tokens::tokenName($tokens[$i]['code']).', not T_STRING (code)' - ); - $this->assertSame( - 'T_STRING', - $tokens[$i]['type'], - 'Token tokenized as '.$tokens[$i]['type'].', not T_STRING (type)' - ); - } - - }//end testUntypedConstant() - - - /** - * Data provider. - * - * @see testUntypedConstant() - * - * @return array> - */ - public static function dataUntypedConstant() - { - return [ - 'non OO constant (untyped)' => [ - 'testMarker' => '/* testGlobalConstantCannotBeTyped */', - ], - 'OO constant, final, untyped' => [ - 'testMarker' => '/* testClassConstFinalUntyped */', - ], - 'OO constant, public, untyped, with comment' => [ - 'testMarker' => '/* testClassConstVisibilityUntyped */', - ], - ]; - - }//end dataUntypedConstant() - - - /** - * Test the tokens in the type of a typed constant as well as the constant name are tokenized correctly. - * - * @param string $testMarker The comment prefacing the target token. - * @param array $sequence The expected token sequence. - * - * @dataProvider dataTypedConstant - * @dataProvider dataNullableTypedConstant - * @dataProvider dataUnionTypedConstant - * @dataProvider dataIntersectionTypedConstant - * @dataProvider dataDNFTypedConstant - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * @covers PHP_CodeSniffer\Tokenizers\PHP::processAdditional - * - * @return void - */ - public function testTypedConstant($testMarker, array $sequence) - { - $tokens = $this->phpcsFile->getTokens(); - $target = $this->getTargetToken($testMarker, T_CONST); - - $current = 0; - for ($i = ($target + 1); $tokens[$i]['code'] !== T_EQUAL; $i++) { - if (isset(Tokens::$emptyTokens[$tokens[$i]['code']]) === true) { - // Ignore whitespace and comments, not interested in the tokenization of those. - continue; - } - - $this->assertSame( - $sequence[$current], - $tokens[$i]['code'], - 'Token tokenized as '.Tokens::tokenName($tokens[$i]['code']).', not '.Tokens::tokenName($sequence[$current]).' (code)' - ); - - ++$current; - } - - }//end testTypedConstant() - - - /** - * Data provider. - * - * @see testTypedConstant() - * - * @return array>> - */ - public static function dataTypedConstant() - { - $data = [ - 'simple type: true' => [ - 'testMarker' => '/* testClassConstTypedTrue */', - 'sequence' => [T_TRUE], - ], - 'simple type: false' => [ - 'testMarker' => '/* testClassConstTypedFalse */', - 'sequence' => [T_FALSE], - ], - 'simple type: null' => [ - 'testMarker' => '/* testClassConstTypedNull */', - 'sequence' => [T_NULL], - ], - 'simple type: bool' => [ - 'testMarker' => '/* testClassConstTypedBool */', - 'sequence' => [T_STRING], - ], - 'simple type: int' => [ - 'testMarker' => '/* testClassConstTypedInt */', - 'sequence' => [T_STRING], - ], - 'simple type: float' => [ - 'testMarker' => '/* testClassConstTypedFloat */', - 'sequence' => [T_STRING], - ], - 'simple type: string' => [ - 'testMarker' => '/* testClassConstTypedString */', - 'sequence' => [T_STRING], - ], - 'simple type: array' => [ - 'testMarker' => '/* testClassConstTypedArray */', - 'sequence' => [T_STRING], - ], - 'simple type: object' => [ - 'testMarker' => '/* testClassConstTypedObject */', - 'sequence' => [T_STRING], - ], - 'simple type: iterable' => [ - 'testMarker' => '/* testClassConstTypedIterable */', - 'sequence' => [T_STRING], - ], - 'simple type: mixed' => [ - 'testMarker' => '/* testClassConstTypedMixed */', - 'sequence' => [T_STRING], - ], - 'simple type: unqualified name' => [ - 'testMarker' => '/* testClassConstTypedClassUnqualified */', - 'sequence' => [T_STRING], - ], - 'simple type: fully qualified name' => [ - 'testMarker' => '/* testClassConstTypedClassFullyQualified */', - 'sequence' => [ - T_NS_SEPARATOR, - T_STRING, - ], - ], - 'simple type: namespace relative name' => [ - 'testMarker' => '/* testClassConstTypedClassNamespaceRelative */', - 'sequence' => [ - T_NAMESPACE, - T_NS_SEPARATOR, - T_STRING, - ], - ], - 'simple type: partially qualified name' => [ - 'testMarker' => '/* testClassConstTypedClassPartiallyQualified */', - 'sequence' => [ - T_STRING, - T_NS_SEPARATOR, - T_STRING, - ], - ], - 'simple type: parent' => [ - 'testMarker' => '/* testClassConstTypedParent */', - 'sequence' => [T_PARENT], - ], - - 'simple type: callable (invalid)' => [ - 'testMarker' => '/* testClassConstTypedCallable */', - 'sequence' => [T_CALLABLE], - ], - 'simple type: void (invalid)' => [ - 'testMarker' => '/* testClassConstTypedVoid */', - 'sequence' => [T_STRING], - ], - 'simple type: NEVER (invalid)' => [ - 'testMarker' => '/* testClassConstTypedNever */', - 'sequence' => [T_STRING], - ], - - 'simple type: self (only valid in enum)' => [ - 'testMarker' => '/* testEnumConstTypedSelf */', - 'sequence' => [T_SELF], - ], - 'simple type: static (only valid in enum)' => [ - 'testMarker' => '/* testEnumConstTypedStatic */', - 'sequence' => [T_STATIC], - ], - ]; - - // The constant name, as the last token in the sequence, is always T_STRING. - foreach ($data as $key => $value) { - $data[$key]['sequence'][] = T_STRING; - } - - return $data; - - }//end dataTypedConstant() - - - /** - * Data provider. - * - * @see testTypedConstant() - * - * @return array> - */ - public static function dataNullableTypedConstant() - { - $data = [ - // Global constants cannot be typed in PHP, but that's not our concern. - 'global typed constant, invalid, ?int' => [ - 'testMarker' => '/* testGlobalConstantTypedShouldStillBeHandled */', - 'sequence' => [T_STRING], - ], - - // OO constants. - 'nullable type: true' => [ - 'testMarker' => '/* testTraitConstTypedNullableTrue */', - 'sequence' => [T_TRUE], - ], - 'nullable type: false' => [ - 'testMarker' => '/* testTraitConstTypedNullableFalse */', - 'sequence' => [T_FALSE], - ], - 'nullable type: null' => [ - 'testMarker' => '/* testTraitConstTypedNullableNull */', - 'sequence' => [T_NULL], - ], - 'nullable type: bool' => [ - 'testMarker' => '/* testTraitConstTypedNullableBool */', - 'sequence' => [T_STRING], - ], - 'nullable type: int' => [ - 'testMarker' => '/* testTraitConstTypedNullableInt */', - 'sequence' => [T_STRING], - ], - 'nullable type: float' => [ - 'testMarker' => '/* testTraitConstTypedNullableFloat */', - 'sequence' => [T_STRING], - ], - 'nullable type: string' => [ - 'testMarker' => '/* testTraitConstTypedNullableString */', - 'sequence' => [T_STRING], - ], - 'nullable type: array' => [ - 'testMarker' => '/* testTraitConstTypedNullableArray */', - 'sequence' => [T_STRING], - ], - 'nullable type: object' => [ - 'testMarker' => '/* testTraitConstTypedNullableObject */', - 'sequence' => [T_STRING], - ], - 'nullable type: iterable' => [ - 'testMarker' => '/* testTraitConstTypedNullableIterable */', - 'sequence' => [T_STRING], - ], - 'nullable type: mixed' => [ - 'testMarker' => '/* testTraitConstTypedNullableMixed */', - 'sequence' => [T_STRING], - ], - 'nullable type: unqualified name' => [ - 'testMarker' => '/* testTraitConstTypedNullableClassUnqualified */', - 'sequence' => [T_STRING], - ], - 'nullable type: fully qualified name' => [ - 'testMarker' => '/* testTraitConstTypedNullableClassFullyQualified */', - 'sequence' => [ - T_NS_SEPARATOR, - T_STRING, - ], - ], - 'nullable type: namespace relative name' => [ - 'testMarker' => '/* testTraitConstTypedNullableClassNamespaceRelative */', - 'sequence' => [ - T_NAMESPACE, - T_NS_SEPARATOR, - T_STRING, - ], - ], - 'nullable type: partially qualified name' => [ - 'testMarker' => '/* testTraitConstTypedNullableClassPartiallyQualified */', - 'sequence' => [ - T_STRING, - T_NS_SEPARATOR, - T_STRING, - ], - ], - 'nullable type: parent' => [ - 'testMarker' => '/* testTraitConstTypedNullableParent */', - 'sequence' => [T_PARENT], - ], - - 'nullable type: self (only valid in enum)' => [ - 'testMarker' => '/* testEnumConstTypedNullableSelf */', - 'sequence' => [T_SELF], - ], - 'nullable type: static (only valid in enum)' => [ - 'testMarker' => '/* testEnumConstTypedNullableStatic */', - 'sequence' => [T_STATIC], - ], - ]; - - // The nullable operator, as the first token in the sequence, is always T_NULLABLE. - // The constant name, as the last token in the sequence, is always T_STRING. - foreach ($data as $key => $value) { - array_unshift($data[$key]['sequence'], T_NULLABLE); - $data[$key]['sequence'][] = T_STRING; - } - - return $data; - - }//end dataNullableTypedConstant() - - - /** - * Data provider. - * - * @see testTypedConstant() - * - * @return array> - */ - public static function dataUnionTypedConstant() - { - $data = [ - 'union type: true|null' => [ - 'testMarker' => '/* testInterfaceConstTypedUnionTrueNull */', - 'sequence' => [ - T_TRUE, - T_TYPE_UNION, - T_NULL, - ], - ], - 'union type: array|object' => [ - 'testMarker' => '/* testInterfaceConstTypedUnionArrayObject */', - 'sequence' => [ - T_STRING, - T_TYPE_UNION, - T_STRING, - ], - ], - 'union type: string|array|int' => [ - 'testMarker' => '/* testInterfaceConstTypedUnionStringArrayInt */', - 'sequence' => [ - T_STRING, - T_TYPE_UNION, - T_STRING, - T_TYPE_UNION, - T_STRING, - ], - ], - 'union type: float|bool|array' => [ - 'testMarker' => '/* testInterfaceConstTypedUnionFloatBoolArray */', - 'sequence' => [ - T_STRING, - T_TYPE_UNION, - T_STRING, - T_TYPE_UNION, - T_STRING, - ], - ], - 'union type: iterable|false' => [ - 'testMarker' => '/* testInterfaceConstTypedUnionIterableFalse */', - 'sequence' => [ - T_STRING, - T_TYPE_UNION, - T_FALSE, - ], - ], - 'union type: Unqualified|Namespace\Relative' => [ - 'testMarker' => '/* testInterfaceConstTypedUnionUnqualifiedNamespaceRelative */', - 'sequence' => [ - T_STRING, - T_TYPE_UNION, - T_NAMESPACE, - T_NS_SEPARATOR, - T_STRING, - ], - ], - 'union type: FQN|Partial' => [ - 'testMarker' => '/* testInterfaceConstTypedUnionFullyQualifiedPartiallyQualified */', - 'sequence' => [ - T_NS_SEPARATOR, - T_STRING, - T_NS_SEPARATOR, - T_STRING, - T_TYPE_UNION, - T_STRING, - T_NS_SEPARATOR, - T_STRING, - ], - ], - ]; - - // The constant name, as the last token in the sequence, is always T_STRING. - foreach ($data as $key => $value) { - $data[$key]['sequence'][] = T_STRING; - } - - return $data; - - }//end dataUnionTypedConstant() - - - /** - * Data provider. - * - * @see testTypedConstant() - * - * @return array> - */ - public static function dataIntersectionTypedConstant() - { - $data = [ - 'intersection type: Unqualified&Namespace\Relative' => [ - 'testMarker' => '/* testEnumConstTypedIntersectUnqualifiedNamespaceRelative */', - 'sequence' => [ - T_STRING, - T_TYPE_INTERSECTION, - T_NAMESPACE, - T_NS_SEPARATOR, - T_STRING, - ], - ], - 'intersection type: FQN&Partial' => [ - 'testMarker' => '/* testEnumConstTypedIntersectFullyQualifiedPartiallyQualified */', - 'sequence' => [ - T_NS_SEPARATOR, - T_STRING, - T_NS_SEPARATOR, - T_STRING, - T_TYPE_INTERSECTION, - T_STRING, - T_NS_SEPARATOR, - T_STRING, - ], - ], - ]; - - // The constant name, as the last token in the sequence, is always T_STRING. - foreach ($data as $key => $value) { - $data[$key]['sequence'][] = T_STRING; - } - - return $data; - - }//end dataIntersectionTypedConstant() - - - /** - * Data provider. - * - * @see testTypedConstant() - * - * @return array> - */ - public static function dataDNFTypedConstant() - { - $data = [ - 'DNF type: null after' => [ - 'testMarker' => '/* testAnonClassConstDNFTypeNullAfter */', - 'sequence' => [ - T_TYPE_OPEN_PARENTHESIS, - T_STRING, - T_TYPE_INTERSECTION, - T_STRING, - T_TYPE_CLOSE_PARENTHESIS, - T_TYPE_UNION, - T_NULL, - ], - ], - 'DNF type: null before' => [ - 'testMarker' => '/* testAnonClassConstDNFTypeNullBefore */', - 'sequence' => [ - T_NULL, - T_TYPE_UNION, - T_TYPE_OPEN_PARENTHESIS, - T_STRING, - T_TYPE_INTERSECTION, - T_STRING, - T_TYPE_CLOSE_PARENTHESIS, - ], - ], - 'DNF type: false before' => [ - 'testMarker' => '/* testAnonClassConstDNFTypeFalseBefore */', - 'sequence' => [ - T_FALSE, - T_TYPE_UNION, - T_TYPE_OPEN_PARENTHESIS, - T_STRING, - T_TYPE_INTERSECTION, - T_STRING, - T_TYPE_CLOSE_PARENTHESIS, - ], - ], - 'DNF type: true after' => [ - 'testMarker' => '/* testAnonClassConstDNFTypeTrueAfter */', - 'sequence' => [ - T_TYPE_OPEN_PARENTHESIS, - T_STRING, - T_TYPE_INTERSECTION, - T_STRING, - T_TYPE_CLOSE_PARENTHESIS, - T_TYPE_UNION, - T_TRUE, - ], - ], - 'DNF type: true before, false after' => [ - 'testMarker' => '/* testAnonClassConstDNFTypeTrueBeforeFalseAfter */', - 'sequence' => [ - T_TRUE, - T_TYPE_UNION, - T_TYPE_OPEN_PARENTHESIS, - T_STRING, - T_TYPE_INTERSECTION, - T_STRING, - T_TYPE_CLOSE_PARENTHESIS, - T_TYPE_UNION, - T_FALSE, - ], - ], - 'DNF type: array after' => [ - 'testMarker' => '/* testAnonClassConstDNFTypeArrayAfter */', - 'sequence' => [ - T_TYPE_OPEN_PARENTHESIS, - T_STRING, - T_TYPE_INTERSECTION, - T_STRING, - T_TYPE_CLOSE_PARENTHESIS, - T_TYPE_UNION, - T_STRING, - ], - ], - 'DNF type: array before' => [ - 'testMarker' => '/* testAnonClassConstDNFTypeArrayBefore */', - 'sequence' => [ - T_STRING, - T_TYPE_UNION, - T_TYPE_OPEN_PARENTHESIS, - T_STRING, - T_TYPE_INTERSECTION, - T_STRING, - T_TYPE_CLOSE_PARENTHESIS, - ], - ], - 'DNF type: invalid nullable DNF' => [ - 'testMarker' => '/* testAnonClassConstDNFTypeInvalidNullable */', - 'sequence' => [ - T_NULLABLE, - T_TYPE_OPEN_PARENTHESIS, - T_STRING, - T_TYPE_INTERSECTION, - T_STRING, - T_TYPE_CLOSE_PARENTHESIS, - T_TYPE_UNION, - T_STRING, - ], - ], - 'DNF type: FQN/namespace relative/partially qualified names' => [ - 'testMarker' => '/* testAnonClassConstDNFTypeFQNRelativePartiallyQualified */', - 'sequence' => [ - T_TYPE_OPEN_PARENTHESIS, - T_NS_SEPARATOR, - T_STRING, - T_TYPE_INTERSECTION, - T_NAMESPACE, - T_NS_SEPARATOR, - T_STRING, - T_TYPE_CLOSE_PARENTHESIS, - T_TYPE_UNION, - T_STRING, - T_NS_SEPARATOR, - T_STRING, - ], - ], - 'DNF type: invalid self/parent/static' => [ - 'testMarker' => '/* testAnonClassConstDNFTypeParentSelfStatic */', - 'sequence' => [ - T_TYPE_OPEN_PARENTHESIS, - T_PARENT, - T_TYPE_INTERSECTION, - T_SELF, - T_TYPE_CLOSE_PARENTHESIS, - T_TYPE_UNION, - T_STATIC, - ], - ], - ]; - - // The constant name, as the last token in the sequence, is always T_STRING. - foreach ($data as $key => $value) { - $data[$key]['sequence'][] = T_STRING; - } - - return $data; - - }//end dataDNFTypedConstant() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/UndoNamespacedNameSingleTokenTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/UndoNamespacedNameSingleTokenTest.inc deleted file mode 100644 index 65c551a8..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/UndoNamespacedNameSingleTokenTest.inc +++ /dev/null @@ -1,147 +0,0 @@ - - * @copyright 2020 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; -use PHP_CodeSniffer\Util\Tokens; - -final class UndoNamespacedNameSingleTokenTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that identifier names are tokenized the same across PHP versions, based on the PHP 5/7 tokenization. - * - * @param string $testMarker The comment prefacing the test. - * @param array> $expectedTokens The tokenization expected. - * - * @dataProvider dataIdentifierTokenization - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - * - * @return void - */ - public function testIdentifierTokenization($testMarker, $expectedTokens) - { - $tokens = $this->phpcsFile->getTokens(); - $identifier = $this->getTargetToken($testMarker, constant($expectedTokens[0]['type'])); - - foreach ($expectedTokens as $tokenInfo) { - $this->assertSame( - constant($tokenInfo['type']), - $tokens[$identifier]['code'], - 'Token tokenized as '.Tokens::tokenName($tokens[$identifier]['code']).', not '.$tokenInfo['type'].' (code)' - ); - $this->assertSame( - $tokenInfo['type'], - $tokens[$identifier]['type'], - 'Token tokenized as '.$tokens[$identifier]['type'].', not '.$tokenInfo['type'].' (type)' - ); - $this->assertSame($tokenInfo['content'], $tokens[$identifier]['content']); - - ++$identifier; - } - - }//end testIdentifierTokenization() - - - /** - * Data provider. - * - * @see testIdentifierTokenization() - * - * @return array>>> - */ - public static function dataIdentifierTokenization() - { - return [ - 'namespace declaration' => [ - 'testMarker' => '/* testNamespaceDeclaration */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'Package', - ], - [ - 'type' => 'T_SEMICOLON', - 'content' => ';', - ], - ], - ], - 'namespace declaration, multi-level' => [ - 'testMarker' => '/* testNamespaceDeclarationWithLevels */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'Vendor', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'SubLevel', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Domain', - ], - [ - 'type' => 'T_SEMICOLON', - 'content' => ';', - ], - ], - ], - 'import use statement, class' => [ - 'testMarker' => '/* testUseStatement */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'ClassName', - ], - [ - 'type' => 'T_SEMICOLON', - 'content' => ';', - ], - ], - ], - 'import use statement, class, multi-level' => [ - 'testMarker' => '/* testUseStatementWithLevels */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'Vendor', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Level', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Domain', - ], - [ - 'type' => 'T_SEMICOLON', - 'content' => ';', - ], - ], - ], - 'import use statement, function' => [ - 'testMarker' => '/* testFunctionUseStatement */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'function', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_STRING', - 'content' => 'function_name', - ], - [ - 'type' => 'T_SEMICOLON', - 'content' => ';', - ], - ], - ], - 'import use statement, function, multi-level' => [ - 'testMarker' => '/* testFunctionUseStatementWithLevels */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'function', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Vendor', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Level', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'function_in_ns', - ], - [ - 'type' => 'T_SEMICOLON', - 'content' => ';', - ], - ], - ], - 'import use statement, constant' => [ - 'testMarker' => '/* testConstantUseStatement */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'const', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_STRING', - 'content' => 'CONSTANT_NAME', - ], - [ - 'type' => 'T_SEMICOLON', - 'content' => ';', - ], - ], - ], - 'import use statement, constant, multi-level' => [ - 'testMarker' => '/* testConstantUseStatementWithLevels */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'const', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Vendor', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Level', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'OTHER_CONSTANT', - ], - [ - 'type' => 'T_SEMICOLON', - 'content' => ';', - ], - ], - ], - 'import use statement, multi-statement, unqualified class' => [ - 'testMarker' => '/* testMultiUseUnqualified */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'UnqualifiedClassName', - ], - [ - 'type' => 'T_COMMA', - 'content' => ',', - ], - ], - ], - 'import use statement, multi-statement, partially qualified class' => [ - 'testMarker' => '/* testMultiUsePartiallyQualified */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'Sublevel', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'PartiallyClassName', - ], - [ - 'type' => 'T_SEMICOLON', - 'content' => ';', - ], - ], - ], - 'group use statement, multi-level prefix, mix inside group' => [ - 'testMarker' => '/* testGroupUseStatement */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'Vendor', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Level', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_OPEN_USE_GROUP', - 'content' => '{', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_STRING', - 'content' => 'AnotherDomain', - ], - [ - 'type' => 'T_COMMA', - 'content' => ',', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_STRING', - 'content' => 'function', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_STRING', - 'content' => 'function_grouped', - ], - [ - 'type' => 'T_COMMA', - 'content' => ',', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_STRING', - 'content' => 'const', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_STRING', - 'content' => 'CONSTANT_GROUPED', - ], - [ - 'type' => 'T_COMMA', - 'content' => ',', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Sub', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'YetAnotherDomain', - ], - [ - 'type' => 'T_COMMA', - 'content' => ',', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_STRING', - 'content' => 'function', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_STRING', - 'content' => 'SubLevelA', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'function_grouped_too', - ], - [ - 'type' => 'T_COMMA', - 'content' => ',', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_STRING', - 'content' => 'const', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_STRING', - 'content' => 'SubLevelB', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'CONSTANT_GROUPED_TOO', - ], - [ - 'type' => 'T_COMMA', - 'content' => ',', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_CLOSE_USE_GROUP', - 'content' => '}', - ], - [ - 'type' => 'T_SEMICOLON', - 'content' => ';', - ], - ], - ], - 'class declaration' => [ - 'testMarker' => '/* testClassName */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'MyClass', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'class declaration, extends fully qualified name' => [ - 'testMarker' => '/* testExtendedFQN */', - 'expectedTokens' => [ - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Vendor', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Level', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'FQN', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'class declaration, implements namespace relative name' => [ - 'testMarker' => '/* testImplementsRelative */', - 'expectedTokens' => [ - [ - 'type' => 'T_NAMESPACE', - 'content' => 'namespace', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Name', - ], - [ - 'type' => 'T_COMMA', - 'content' => ',', - ], - ], - ], - 'class declaration, implements fully qualified name' => [ - 'testMarker' => '/* testImplementsFQN */', - 'expectedTokens' => [ - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Fully', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Qualified', - ], - [ - 'type' => 'T_COMMA', - 'content' => ',', - ], - ], - ], - 'class declaration, implements unqualified name' => [ - 'testMarker' => '/* testImplementsUnqualified */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'Unqualified', - ], - [ - 'type' => 'T_COMMA', - 'content' => ',', - ], - ], - ], - 'class declaration, implements partially qualified name' => [ - 'testMarker' => '/* testImplementsPartiallyQualified */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'Sub', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Level', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Name', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'method declaration' => [ - 'testMarker' => '/* testFunctionName */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'function_name', - ], - [ - 'type' => 'T_OPEN_PARENTHESIS', - 'content' => '(', - ], - ], - ], - 'param type declaration, namespace relative name' => [ - 'testMarker' => '/* testTypeDeclarationRelative */', - 'expectedTokens' => [ - [ - 'type' => 'T_NAMESPACE', - 'content' => 'namespace', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Name', - ], - [ - 'type' => 'T_TYPE_UNION', - 'content' => '|', - ], - [ - 'type' => 'T_STRING', - 'content' => 'object', - ], - ], - ], - 'param type declaration, fully qualified name' => [ - 'testMarker' => '/* testTypeDeclarationFQN */', - 'expectedTokens' => [ - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Fully', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Qualified', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Name', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - ], - ], - 'param type declaration, unqualified name' => [ - 'testMarker' => '/* testTypeDeclarationUnqualified */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'Unqualified', - ], - [ - 'type' => 'T_TYPE_UNION', - 'content' => '|', - ], - [ - 'type' => 'T_FALSE', - 'content' => 'false', - ], - ], - ], - 'param type declaration, partially qualified name' => [ - 'testMarker' => '/* testTypeDeclarationPartiallyQualified */', - 'expectedTokens' => [ - [ - 'type' => 'T_NULLABLE', - 'content' => '?', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Sublevel', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Name', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - ], - ], - 'return type declaration, fully qualified name' => [ - 'testMarker' => '/* testReturnTypeFQN */', - 'expectedTokens' => [ - [ - 'type' => 'T_NULLABLE', - 'content' => '?', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Name', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - ], - ], - 'function call, namespace relative name' => [ - 'testMarker' => '/* testFunctionCallRelative */', - 'expectedTokens' => [ - [ - 'type' => 'T_NAMESPACE', - 'content' => 'NameSpace', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'function_name', - ], - [ - 'type' => 'T_OPEN_PARENTHESIS', - 'content' => '(', - ], - ], - ], - 'function call, fully qualified name' => [ - 'testMarker' => '/* testFunctionCallFQN */', - 'expectedTokens' => [ - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Vendor', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Package', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'function_name', - ], - [ - 'type' => 'T_OPEN_PARENTHESIS', - 'content' => '(', - ], - ], - ], - 'function call, unqualified name' => [ - 'testMarker' => '/* testFunctionCallUnqualified */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'function_name', - ], - [ - 'type' => 'T_OPEN_PARENTHESIS', - 'content' => '(', - ], - ], - ], - 'function call, partially qualified name' => [ - 'testMarker' => '/* testFunctionCallPartiallyQualified */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'Level', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'function_name', - ], - [ - 'type' => 'T_OPEN_PARENTHESIS', - 'content' => '(', - ], - ], - ], - 'catch, namespace relative name' => [ - 'testMarker' => '/* testCatchRelative */', - 'expectedTokens' => [ - [ - 'type' => 'T_NAMESPACE', - 'content' => 'namespace', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'SubLevel', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Exception', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - ], - ], - 'catch, fully qualified name' => [ - 'testMarker' => '/* testCatchFQN */', - 'expectedTokens' => [ - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Exception', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - ], - ], - 'catch, unqualified name' => [ - 'testMarker' => '/* testCatchUnqualified */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'Exception', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - ], - ], - 'catch, partially qualified name' => [ - 'testMarker' => '/* testCatchPartiallyQualified */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'Level', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Exception', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - ], - ], - 'class instantiation, namespace relative name' => [ - 'testMarker' => '/* testNewRelative */', - 'expectedTokens' => [ - [ - 'type' => 'T_NAMESPACE', - 'content' => 'namespace', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'ClassName', - ], - [ - 'type' => 'T_OPEN_PARENTHESIS', - 'content' => '(', - ], - ], - ], - 'class instantiation, fully qualified name' => [ - 'testMarker' => '/* testNewFQN */', - 'expectedTokens' => [ - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Vendor', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'ClassName', - ], - [ - 'type' => 'T_OPEN_PARENTHESIS', - 'content' => '(', - ], - ], - ], - 'class instantiation, unqualified name' => [ - 'testMarker' => '/* testNewUnqualified */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'ClassName', - ], - [ - 'type' => 'T_SEMICOLON', - 'content' => ';', - ], - ], - ], - 'class instantiation, partially qualified name' => [ - 'testMarker' => '/* testNewPartiallyQualified */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'Level', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'ClassName', - ], - [ - 'type' => 'T_SEMICOLON', - 'content' => ';', - ], - ], - ], - 'double colon class access, namespace relative name' => [ - 'testMarker' => '/* testDoubleColonRelative */', - 'expectedTokens' => [ - [ - 'type' => 'T_NAMESPACE', - 'content' => 'namespace', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'ClassName', - ], - [ - 'type' => 'T_DOUBLE_COLON', - 'content' => '::', - ], - ], - ], - 'double colon class access, fully qualified name' => [ - 'testMarker' => '/* testDoubleColonFQN */', - 'expectedTokens' => [ - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'ClassName', - ], - [ - 'type' => 'T_DOUBLE_COLON', - 'content' => '::', - ], - ], - ], - 'double colon class access, unqualified name' => [ - 'testMarker' => '/* testDoubleColonUnqualified */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'ClassName', - ], - [ - 'type' => 'T_DOUBLE_COLON', - 'content' => '::', - ], - ], - ], - 'double colon class access, partially qualified name' => [ - 'testMarker' => '/* testDoubleColonPartiallyQualified */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'Level', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'ClassName', - ], - [ - 'type' => 'T_DOUBLE_COLON', - 'content' => '::', - ], - ], - ], - 'instanceof, namespace relative name' => [ - 'testMarker' => '/* testInstanceOfRelative */', - 'expectedTokens' => [ - [ - 'type' => 'T_NAMESPACE', - 'content' => 'namespace', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'ClassName', - ], - [ - 'type' => 'T_SEMICOLON', - 'content' => ';', - ], - ], - ], - 'instanceof, fully qualified name' => [ - 'testMarker' => '/* testInstanceOfFQN */', - 'expectedTokens' => [ - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Full', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'ClassName', - ], - [ - 'type' => 'T_CLOSE_PARENTHESIS', - 'content' => ')', - ], - ], - ], - 'instanceof, unqualified name' => [ - 'testMarker' => '/* testInstanceOfUnqualified */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'ClassName', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - ], - ], - 'instanceof, partially qualified name' => [ - 'testMarker' => '/* testInstanceOfPartiallyQualified */', - 'expectedTokens' => [ - [ - 'type' => 'T_STRING', - 'content' => 'Partially', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'ClassName', - ], - [ - 'type' => 'T_SEMICOLON', - 'content' => ';', - ], - ], - ], - 'function call, namespace relative, with whitespace (invalid in PHP 8)' => [ - 'testMarker' => '/* testInvalidInPHP8Whitespace */', - 'expectedTokens' => [ - [ - 'type' => 'T_NAMESPACE', - 'content' => 'namespace', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Sublevel', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_STRING', - 'content' => 'function_name', - ], - [ - 'type' => 'T_OPEN_PARENTHESIS', - 'content' => '(', - ], - ], - ], - 'double colon class access, fully qualified, with whitespace and comments (invalid in PHP 8)' => [ - 'testMarker' => '/* testInvalidInPHP8Comments */', - 'expectedTokens' => [ - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Fully', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_PHPCS_IGNORE', - 'content' => '// phpcs:ignore Stnd.Cat.Sniff -- for reasons -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Qualified', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '/* comment */', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_NS_SEPARATOR', - 'content' => '\\', - ], - [ - 'type' => 'T_STRING', - 'content' => 'Name', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - ]; - - }//end dataIdentifierTokenization() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/YieldTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/YieldTest.inc deleted file mode 100644 index 3130b846..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/YieldTest.inc +++ /dev/null @@ -1,77 +0,0 @@ -yield; - - /* testYieldUsedAsPropertyName2 */ - echo $obj?->yield(); - - /* testYieldUsedForClassConstantAccess1 */ - echo MyClass::YIELD; - /* testFromUsedForClassConstantAccess1 */ - echo MyClass::FROM; - } - - /* testYieldUsedAsMethodNameReturnByRef */ - public function &yield() {} -} - -function myGen() { - /* testYieldLiveCoding */ - yield diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/YieldTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/YieldTest.php deleted file mode 100644 index efb12096..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/PHP/YieldTest.php +++ /dev/null @@ -1,448 +0,0 @@ - - * @copyright 2021 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\PHP; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; -use PHP_CodeSniffer\Util\Tokens; - -/** - * Tests the tokenization of the `yield` and `yield from` keywords. - * - * @covers PHP_CodeSniffer\Tokenizers\PHP::tokenize - */ -final class YieldTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that the yield keyword is tokenized as such. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * @param string $expectedContent Expected token content. - * - * @dataProvider dataYieldKeyword - * - * @return void - */ - public function testYieldKeyword($testMarker, $expectedContent) - { - $tokens = $this->phpcsFile->getTokens(); - $target = $this->getTargetToken($testMarker, [T_YIELD, T_YIELD_FROM, T_STRING]); - $tokenArray = $tokens[$target]; - - $this->assertSame(T_YIELD, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_YIELD (code)'); - - // This assertion would fail on PHP 5.4 with PHPUnit 4 as PHPUnit polyfills the `T_YIELD` token too, but - // with a different value, which causes the token 'type' to be set to `UNKNOWN`. - // This issue _only_ occurs when running the tests, not when running PHPCS outside of a test situation. - // The PHPUnit polyfilled token is declared in the PHP_CodeCoverage_Report_HTML_Renderer_File class - // in vendor/phpunit/php-code-coverage/src/CodeCoverage/Report/HTML/Renderer/File.php. - if (PHP_VERSION_ID >= 50500) { - $this->assertSame('T_YIELD', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_YIELD (type)'); - } - - $this->assertSame($expectedContent, $tokenArray['content'], 'Token content does not match expectation'); - - }//end testYieldKeyword() - - - /** - * Data provider. - * - * @see testYieldKeyword() - * - * @return array> - */ - public static function dataYieldKeyword() - { - return [ - 'yield' => [ - 'testMarker' => '/* testYield */', - 'expectedContent' => 'yield', - ], - 'yield followed by comment' => [ - 'testMarker' => '/* testYieldFollowedByComment */', - 'expectedContent' => 'YIELD', - ], - 'yield at end of file, live coding' => [ - 'testMarker' => '/* testYieldLiveCoding */', - 'expectedContent' => 'yield', - ], - ]; - - }//end dataYieldKeyword() - - - /** - * Test that the yield from keyword is tokenized as a single token when it in on a single line - * and only has whitespace between the words. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * @param string $expectedContent Expected token content. - * - * @dataProvider dataYieldFromKeywordSingleToken - * - * @return void - */ - public function testYieldFromKeywordSingleToken($testMarker, $expectedContent) - { - $tokens = $this->phpcsFile->getTokens(); - $target = $this->getTargetToken($testMarker, [T_YIELD, T_YIELD_FROM, T_STRING]); - $tokenArray = $tokens[$target]; - - $this->assertSame(T_YIELD_FROM, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_YIELD_FROM (code)'); - $this->assertSame('T_YIELD_FROM', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_YIELD_FROM (type)'); - - if (isset($tokenArray['orig_content']) === true) { - $this->assertSame($expectedContent, $tokenArray['orig_content'], 'Token (orig) content does not match expectation'); - } else { - $this->assertSame($expectedContent, $tokenArray['content'], 'Token content does not match expectation'); - } - - }//end testYieldFromKeywordSingleToken() - - - /** - * Data provider. - * - * @see testYieldFromKeywordSingleToken() - * - * @return array> - */ - public static function dataYieldFromKeywordSingleToken() - { - return [ - 'yield from' => [ - 'testMarker' => '/* testYieldFrom */', - 'expectedContent' => 'yield from', - ], - 'yield from with extra space between' => [ - 'testMarker' => '/* testYieldFromWithExtraSpacesBetween */', - 'expectedContent' => 'Yield From', - ], - 'yield from with tab between' => [ - 'testMarker' => '/* testYieldFromWithTabBetween */', - 'expectedContent' => 'yield from', - ], - ]; - - }//end dataYieldFromKeywordSingleToken() - - - /** - * Test that the yield from keyword is tokenized as a single token when it in on a single line - * and only has whitespace between the words. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * @param array> $expectedTokens The tokenization expected. - * - * @dataProvider dataYieldFromKeywordMultiToken - * - * @return void - */ - public function testYieldFromKeywordMultiToken($testMarker, $expectedTokens) - { - $tokens = $this->phpcsFile->getTokens(); - $target = $this->getTargetToken($testMarker, [T_YIELD, T_YIELD_FROM, T_STRING]); - - foreach ($expectedTokens as $nr => $tokenInfo) { - $this->assertSame( - constant($tokenInfo['type']), - $tokens[$target]['code'], - 'Token tokenized as '.Tokens::tokenName($tokens[$target]['code']).', not '.$tokenInfo['type'].' (code)' - ); - $this->assertSame( - $tokenInfo['type'], - $tokens[$target]['type'], - 'Token tokenized as '.$tokens[$target]['type'].', not '.$tokenInfo['type'].' (type)' - ); - $this->assertSame( - $tokenInfo['content'], - $tokens[$target]['content'], - 'Content of token '.($nr + 1).' ('.$tokens[$target]['type'].') does not match expectations' - ); - - ++$target; - } - - }//end testYieldFromKeywordMultiToken() - - - /** - * Data provider. - * - * @see testYieldFromKeywordMultiToken() - * - * @return array>>> - */ - public static function dataYieldFromKeywordMultiToken() - { - return [ - 'yield from with new line' => [ - 'testMarker' => '/* testYieldFromSplitByNewLines */', - 'expectedTokens' => [ - [ - 'type' => 'T_YIELD_FROM', - 'content' => 'yield', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_YIELD_FROM', - 'content' => 'FROM', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'yield from with comment' => [ - 'testMarker' => '/* testYieldFromSplitByComment */', - 'expectedTokens' => [ - [ - 'type' => 'T_YIELD_FROM', - 'content' => 'yield', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '/* comment */', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_YIELD_FROM', - 'content' => 'from', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - ], - ], - 'yield from with trailing comment' => [ - 'testMarker' => '/* testYieldFromWithTrailingComment */', - 'expectedTokens' => [ - [ - 'type' => 'T_YIELD_FROM', - 'content' => 'yield', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '// comment -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_YIELD_FROM', - 'content' => 'from', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - ], - ], - 'yield from with trailing annotation' => [ - 'testMarker' => '/* testYieldFromWithTrailingAnnotation */', - 'expectedTokens' => [ - [ - 'type' => 'T_YIELD_FROM', - 'content' => 'yield', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_PHPCS_IGNORE', - 'content' => '// phpcs:ignore Stnd.Cat.Sniff -- for reasons. -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_YIELD_FROM', - 'content' => 'from', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - ], - ], - 'yield from with new line and comment' => [ - 'testMarker' => '/* testYieldFromSplitByNewLineAndComments */', - 'expectedTokens' => [ - [ - 'type' => 'T_YIELD_FROM', - 'content' => 'yield', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '/* comment line 1 -', - ], - [ - 'type' => 'T_COMMENT', - 'content' => ' line 2 */', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_COMMENT', - 'content' => '// another comment -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_YIELD_FROM', - 'content' => 'from', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - 'yield from with new line and annotation' => [ - 'testMarker' => '/* testYieldFromSplitByNewLineAndAnnotation */', - 'expectedTokens' => [ - [ - 'type' => 'T_YIELD_FROM', - 'content' => 'YIELD', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_PHPCS_DISABLE', - 'content' => '// @phpcs:disable Stnd.Cat.Sniff -- for reasons. -', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' ', - ], - [ - 'type' => 'T_YIELD_FROM', - 'content' => 'From', - ], - [ - 'type' => 'T_WHITESPACE', - 'content' => ' -', - ], - ], - ], - ]; - - }//end dataYieldFromKeywordMultiToken() - - - /** - * Test that 'yield' or 'from' when not used as the reserved keyword are tokenized as `T_STRING`. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * - * @dataProvider dataYieldNonKeyword - * - * @return void - */ - public function testYieldNonKeyword($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - $target = $this->getTargetToken($testMarker, [T_YIELD, T_YIELD_FROM, T_STRING]); - $tokenArray = $tokens[$target]; - - $this->assertSame(T_STRING, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (code)'); - $this->assertSame('T_STRING', $tokenArray['type'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (type)'); - - }//end testYieldNonKeyword() - - - /** - * Data provider. - * - * @see testYieldNonKeyword() - * - * @return array> - */ - public static function dataYieldNonKeyword() - { - return [ - 'yield used as class name' => ['/* testYieldUsedAsClassName */'], - 'yield used as class constant name' => ['/* testYieldUsedAsClassConstantName */'], - 'yield used as method name' => ['/* testYieldUsedAsMethodName */'], - 'yield used as property access 1' => ['/* testYieldUsedAsPropertyName1 */'], - 'yield used as property access 2' => ['/* testYieldUsedAsPropertyName2 */'], - 'yield used as class constant access' => ['/* testYieldUsedForClassConstantAccess1 */'], - 'from used as class constant access' => ['/* testFromUsedForClassConstantAccess1 */'], - 'yield used as method name with ref' => ['/* testYieldUsedAsMethodNameReturnByRef */'], - ]; - - }//end dataYieldNonKeyword() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/CreateParenthesisNestingMapDNFTypesTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/CreateParenthesisNestingMapDNFTypesTest.inc deleted file mode 100644 index 89031bd1..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/CreateParenthesisNestingMapDNFTypesTest.inc +++ /dev/null @@ -1,185 +0,0 @@ - 10 ) {} - -/* testParensOwnerFor */ -for ($i =0; $i < /* testParensNoOwnerInForCondition */ ( CONST_A & CONST_B ); $i++ ); - -/* testParensOwnerMatch */ -$match = match(CONST_A & CONST_B) { - default => $a, -}; - -/* testParensOwnerArray */ -$array = array ( - 'text', - \CONST_A & \Fully\Qualified\CONST_B, - /* testParensNoOwnerFunctionCallWithAmpersandInCallable */ - do_something($a, /* testParensOwnerArrowFn */ fn($b) => $a & $b, $c), -); - -/* testParensOwnerListWithRefVars */ -list(&$a, &$b) = $array; - -/* testParensNoOwnerFunctionCallwithDNFLookALikeParam */ -$obj->static((CONST_A&CONST_B)|CONST_C | $var); - - -/* - * DNF parentheses. - */ - -abstract class DNFTypes { - /* testDNFTypeOOConstUnqualifiedClasses */ - public const (A&B)|D UNQUALIFIED = new Foo; - - /* testDNFTypeOOConstReverseModifierOrder */ - protected final const int|(Foo&Bar)|float MODIFIERS_REVERSED /* testParensNoOwnerOOConstDefaultValue */ = (E_WARNING & E_NOTICE) | E_DEPRECATED; - - const - /* testDNFTypeOOConstMulti1 */ - (A&B) | - /* testDNFTypeOOConstMulti2 */ - (C&D) | // phpcs:ignore Stnd.Cat.Sniff - /* testDNFTypeOOConstMulti3 */ - (Y&D) - | null MULTI_DNF = null; - - /* testDNFTypeOOConstNamespaceRelative */ - final protected const (namespace\Sub\NameA&namespace\Sub\NameB)|namespace\Sub\NameC NAMESPACE_RELATIVE = new namespace\Sub\NameB; - - /* testDNFTypeOOConstPartiallyQualified */ - const Partially\Qualified\NameC|(Partially\Qualified\NameA&Partially\Qualified\NameB) PARTIALLY_QUALIFIED = new Partially\Qualified\NameA; - - /* testDNFTypeOOConstFullyQualified */ - const (\Fully\Qualified\NameA&\Fully\Qualified\NameB)|\Fully\Qualified\NameC FULLY_QUALIFIED = new \Fully\Qualified\NameB(); - - /* testDNFTypePropertyUnqualifiedClasses */ - public static (Foo&Bar)|array $obj; - - /* testDNFTypePropertyReverseModifierOrder */ - static protected string|(A&B)|int $dnf /* testParensNoOwnerPropertyDefaultValue1 */ = ( E_WARNING & E_NOTICE ) | /* testParensNoOwnerPropertyDefaultValue2 */ (E_ALL & E_DEPRECATED); - - private - /* testDNFTypePropertyMultiNamespaceRelative */ - (namespace\Sub\NameA&namespace\Sub\NameB) | - /* testDNFTypePropertyMultiPartiallyQualified */ - (Partially\Qualified\NameA&Partially\Qualified\NameB) | // phpcs:ignore Stnd.Cat.Sniff - false - /* testDNFTypePropertyMultiFullyQualified */ - | (\Fully\Qualified\NameA&\Fully\Qualified\NameB) $multiDnf; - - /* testDNFTypePropertyWithReadOnlyKeyword1 */ - protected readonly (A&B) | /* testDNFTypePropertyWithReadOnlyKeyword2 */ (C&D) $readonly; - - /* testDNFTypePropertyWithStaticAndReadOnlyKeywords */ - static readonly (A&B&C)|array $staticReadonly; - - /* testDNFTypePropertyWithOnlyStaticKeyword */ - static (A&B&C)|true $onlyStaticModified; - - public function paramTypes( - /* testDNFTypeParam1WithAttribute */ - #[MyAttribute] - (\Foo&Bar)|int|float $paramA /* testParensNoOwnerParamDefaultValue */ = SOMETHING | (CONSTANT_A & CONSTANT_B), - - /* testDNFTypeParam2 */ - (Foo&\Bar) /* testDNFTypeParam3 */ |(Baz&Fop) &...$paramB, - ) { - /* testParensNoOwnerInReturnValue1 */ - return ( - /* testParensNoOwnerInReturnValue2 */ - ($a1 & $b1) | - /* testParensNoOwnerInReturnValue3 */ - ($a2 & $b2) - ) + $c; - } - - public function identifierNames( - /* testDNFTypeParamNamespaceRelative */ - (namespace\Sub\NameA&namespace\Sub\NameB)|false $paramA, - /* testDNFTypeParamPartiallyQualified */ - Partially\Qualified\NameC|(Partially\Qualified\NameA&Partially\Qualified\NameB) $paramB, - /* testDNFTypeParamFullyQualified */ - name|(\Fully\Qualified\NameA&\Fully\Qualified\NameB) $paramC, - ) {} - - public function __construct( - /* testDNFTypeConstructorPropertyPromotion1 */ - public (A&B)| /* testDNFTypeConstructorPropertyPromotion2 */ (A&D) $property - ) {} - - public function returnType()/* testDNFTypeReturnType1 */ : A|(B&D)|/* testDNFTypeReturnType2 */(B&W)|null {} - - abstract public function abstractMethod(): /* testDNFTypeAbstractMethodReturnType1 */ (X&Y) /* testDNFTypeAbstractMethodReturnType2 */ |(W&Z); - - public function identifierNamesReturnRelative( - ) : /* testDNFTypeReturnTypeNamespaceRelative */ (namespace\Sub\NameA&namespace\Sub\NameB)|namespace\Sub\NameC {} - - public function identifierNamesReturnPQ( - ) : /* testDNFTypeReturnPartiallyQualified */Partially\Qualified\NameA|(Partially\Qualified\NameB&Partially\Qualified\NameC) {} - - // Illegal type: segments which are strict subsets of others are disallowed, but that's not the concern of the tokenizer. - public function identifierNamesReturnFQ( - ) /* testDNFTypeReturnFullyQualified */ : (\Fully\Qualified\NameA&\Fully\Qualified\NameB)|\Fully\Qualified\NameB {} -} - -function globalFunctionWithSpreadAndReference( - /* testDNFTypeWithReference */ - float|(B&A) &$paramA, - /* testDNFTypeWithSpreadOperator */ - string|(B&D) ...$paramB -) {} - - -$closureWithParamType = function ( /* testDNFTypeClosureParamIllegalNullable */ ?(A&B)|bool $string) {}; - -/* testParensOwnerClosureAmpersandInDefaultValue */ -$closureWithReturnType = function ($string = NONSENSE & FAKE) /* testDNFTypeClosureReturn */ : (\Package\MyA&PackageB)|null {}; - -/* testParensOwnerArrowDNFUsedWithin */ -$arrowWithParamType = fn ( - /* testDNFTypeArrowParam */ - int|(A&B&C)|array $param, - /* testParensNoOwnerAmpersandInDefaultValue */ ?int $int = (CONSTA & CONSTB )| CONST_C -) - /* testParensNoOwnerInArrowReturnExpression */ - => ($param & $foo ) | $int; - -$arrowWithReturnType = fn ($param) : /* testDNFTypeArrowReturnType */ int|(A&B) => $param * 10; - -$arrowWithParamReturnByRef = fn &( - /* testDNFTypeArrowParamWithReturnByRef */ - (A&B)|null $param -) => $param * 10; - -function InvalidSyntaxes( - /* testDNFTypeParamIllegalUnnecessaryParens */ - (A&B) $parensNotNeeded, - - /* testDNFTypeParamIllegalIntersectUnionReversed */ - A&(B|D) $onlyIntersectAllowedWithinParensAndUnionOutside, - - /* testDNFTypeParamIllegalNestedParens */ - A|(B&(D|W)|null) $nestedParensNotAllowed, -) {} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/CreateParenthesisNestingMapDNFTypesTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/CreateParenthesisNestingMapDNFTypesTest.php deleted file mode 100644 index 91d10ac3..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/CreateParenthesisNestingMapDNFTypesTest.php +++ /dev/null @@ -1,374 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\Tokenizer; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -final class CreateParenthesisNestingMapDNFTypesTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that parentheses when **not** used in a type declaration are correctly tokenized. - * - * @param string $testMarker The comment prefacing the target token. - * @param int|false $owner Optional. The parentheses owner or false when no parentheses owner is expected. - * - * @dataProvider dataNormalParentheses - * @covers PHP_CodeSniffer\Tokenizers\Tokenizer::createParenthesisNestingMap - * - * @return void - */ - public function testNormalParentheses($testMarker, $owner=false) - { - $tokens = $this->phpcsFile->getTokens(); - - $openPtr = $this->getTargetToken($testMarker, [T_OPEN_PARENTHESIS, T_TYPE_OPEN_PARENTHESIS]); - $opener = $tokens[$openPtr]; - - // Make sure we're looking at the right token. - $this->assertSame(T_OPEN_PARENTHESIS, $opener['code'], 'Token tokenized as '.$opener['type'].', not T_OPEN_PARENTHESIS (code)'); - - if ($owner !== false) { - $this->assertArrayHasKey('parenthesis_owner', $opener, 'Parenthesis owner is not set'); - $this->assertSame(($openPtr + $owner), $opener['parenthesis_owner'], 'Opener parenthesis owner is not the expected token'); - } else { - $this->assertArrayNotHasKey('parenthesis_owner', $opener, 'Parenthesis owner is set'); - } - - $this->assertArrayHasKey('parenthesis_opener', $opener, 'Parenthesis opener is not set'); - $this->assertArrayHasKey('parenthesis_closer', $opener, 'Parenthesis closer is not set'); - $this->assertSame($openPtr, $opener['parenthesis_opener'], 'Parenthesis opener is not the expected token'); - - $closePtr = $opener['parenthesis_closer']; - $closer = $tokens[$closePtr]; - - // Make sure we're looking at the right token. - $this->assertSame(T_CLOSE_PARENTHESIS, $closer['code'], 'Token tokenized as '.$closer['type'].', not T_CLOSE_PARENTHESIS (code)'); - - if ($owner !== false) { - $this->assertArrayHasKey('parenthesis_owner', $closer, 'Parenthesis owner is not set'); - $this->assertSame(($openPtr + $owner), $closer['parenthesis_owner'], 'Closer parenthesis owner is not the expected token'); - } else { - $this->assertArrayNotHasKey('parenthesis_owner', $closer, 'Parenthesis owner is set'); - } - - $this->assertArrayHasKey('parenthesis_opener', $closer, 'Parenthesis opener is not set'); - $this->assertArrayHasKey('parenthesis_closer', $closer, 'Parenthesis closer is not set'); - $this->assertSame($closePtr, $closer['parenthesis_closer'], 'Parenthesis closer is not the expected token'); - - for ($i = ($openPtr + 1); $i < $closePtr; $i++) { - $this->assertArrayHasKey('nested_parenthesis', $tokens[$i], "Nested parenthesis key not set on token $i ({$tokens[$i]['type']})"); - $this->assertArrayHasKey($openPtr, $tokens[$i]['nested_parenthesis'], 'Nested parenthesis is missing target parentheses set'); - $this->assertSame($closePtr, $tokens[$i]['nested_parenthesis'][$openPtr], 'Nested parenthesis closer not set correctly'); - } - - }//end testNormalParentheses() - - - /** - * Data provider. - * - * @see testNormalParentheses() - * - * @return array> - */ - public static function dataNormalParentheses() - { - // "Owner" offsets are relative to the open parenthesis. - return [ - 'parens without owner' => [ - 'testMarker' => '/* testParensNoOwner */', - ], - 'parens without owner in ternary then' => [ - 'testMarker' => '/* testParensNoOwnerInTernary */', - ], - 'parens without owner in short ternary' => [ - 'testMarker' => '/* testParensNoOwnerInShortTernary */', - ], - 'parens with owner: function; & in default value' => [ - 'testMarker' => '/* testParensOwnerFunctionAmpersandInDefaultValue */', - 'owner' => -3, - ], - 'parens with owner: closure; param declared by & ref' => [ - 'testMarker' => '/* testParensOwnerClosureAmpersandParamRef */', - 'owner' => -1, - ], - 'parens with owner: if' => [ - 'testMarker' => '/* testParensOwnerIf */', - 'owner' => -2, - ], - 'parens without owner in if condition' => [ - 'testMarker' => '/* testParensNoOwnerInIfCondition */', - ], - 'parens with owner: for' => [ - 'testMarker' => '/* testParensOwnerFor */', - 'owner' => -2, - ], - 'parens without owner in for condition' => [ - 'testMarker' => '/* testParensNoOwnerInForCondition */', - ], - 'parens with owner: match' => [ - 'testMarker' => '/* testParensOwnerMatch */', - 'owner' => -1, - ], - 'parens with owner: array' => [ - 'testMarker' => '/* testParensOwnerArray */', - 'owner' => -2, - ], - 'parens without owner in array; function call with & in callable' => [ - 'testMarker' => '/* testParensNoOwnerFunctionCallWithAmpersandInCallable */', - ], - 'parens with owner: fn; & in return value' => [ - 'testMarker' => '/* testParensOwnerArrowFn */', - 'owner' => -1, - ], - 'parens with owner: list with reference vars' => [ - 'testMarker' => '/* testParensOwnerListWithRefVars */', - 'owner' => -1, - ], - 'parens without owner, function call with DNF look-a-like param' => [ - 'testMarker' => '/* testParensNoOwnerFunctionCallwithDNFLookALikeParam */', - ], - - 'parens without owner in OO const default value' => [ - 'testMarker' => '/* testParensNoOwnerOOConstDefaultValue */', - ], - 'parens without owner in property default 1' => [ - 'testMarker' => '/* testParensNoOwnerPropertyDefaultValue1 */', - ], - 'parens without owner in property default 2' => [ - 'testMarker' => '/* testParensNoOwnerPropertyDefaultValue2 */', - ], - 'parens without owner in param default value' => [ - 'testMarker' => '/* testParensNoOwnerParamDefaultValue */', - ], - 'parens without owner in return statement 1' => [ - 'testMarker' => '/* testParensNoOwnerInReturnValue1 */', - ], - 'parens without owner in return statement 2' => [ - 'testMarker' => '/* testParensNoOwnerInReturnValue2 */', - ], - 'parens without owner in return statement 3' => [ - 'testMarker' => '/* testParensNoOwnerInReturnValue3 */', - ], - 'parens with owner: closure; & in default value' => [ - 'testMarker' => '/* testParensOwnerClosureAmpersandInDefaultValue */', - 'owner' => -2, - ], - 'parens with owner: fn; dnf used within' => [ - 'testMarker' => '/* testParensOwnerArrowDNFUsedWithin */', - 'owner' => -2, - ], - 'parens without owner: default value for param in arrow function' => [ - 'testMarker' => '/* testParensNoOwnerAmpersandInDefaultValue */', - ], - 'parens without owner in arrow function return expression' => [ - 'testMarker' => '/* testParensNoOwnerInArrowReturnExpression */', - ], - ]; - - }//end dataNormalParentheses() - - - /** - * Test that parentheses when used in a DNF type declaration are correctly tokenized. - * - * Includes verifying that: - * - the tokens between the parentheses all have a "nested_parenthesis" key. - * - all ampersands between the parentheses are tokenized as T_TYPE_INTERSECTION. - * - * @param string $testMarker The comment prefacing the target token. - * - * @dataProvider dataDNFTypeParentheses - * @covers PHP_CodeSniffer\Tokenizers\Tokenizer::createParenthesisNestingMap - * - * @return void - */ - public function testDNFTypeParentheses($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - - $openPtr = $this->getTargetToken($testMarker, [T_OPEN_PARENTHESIS, T_TYPE_OPEN_PARENTHESIS]); - $opener = $tokens[$openPtr]; - - // Make sure we're looking at the right token. - $this->assertSame(T_TYPE_OPEN_PARENTHESIS, $opener['code'], 'Token tokenized as '.$opener['type'].', not T_TYPE_OPEN_PARENTHESIS (code)'); - - $this->assertArrayNotHasKey('parenthesis_owner', $opener, 'Parenthesis owner is set'); - $this->assertArrayHasKey('parenthesis_opener', $opener, 'Parenthesis opener is not set'); - $this->assertArrayHasKey('parenthesis_closer', $opener, 'Parenthesis closer is not set'); - $this->assertSame($openPtr, $opener['parenthesis_opener'], 'Parenthesis opener is not the expected token'); - - $closePtr = $opener['parenthesis_closer']; - $closer = $tokens[$closePtr]; - - // Make sure we're looking at the right token. - $this->assertSame(T_TYPE_CLOSE_PARENTHESIS, $closer['code'], 'Token tokenized as '.$closer['type'].', not T_TYPE_CLOSE_PARENTHESIS (code)'); - - $this->assertArrayNotHasKey('parenthesis_owner', $closer, 'Parenthesis owner is set'); - $this->assertArrayHasKey('parenthesis_opener', $closer, 'Parenthesis opener is not set'); - $this->assertArrayHasKey('parenthesis_closer', $closer, 'Parenthesis closer is not set'); - $this->assertSame($closePtr, $closer['parenthesis_closer'], 'Parenthesis closer is not the expected token'); - - for ($i = ($openPtr + 1); $i < $closePtr; $i++) { - $this->assertArrayHasKey('nested_parenthesis', $tokens[$i], "Nested parenthesis key not set on token $i ({$tokens[$i]['type']})"); - $this->assertArrayHasKey($openPtr, $tokens[$i]['nested_parenthesis'], 'Nested parenthesis is missing target parentheses set'); - $this->assertSame($closePtr, $tokens[$i]['nested_parenthesis'][$openPtr], 'Nested parenthesis closer not set correctly'); - }//end for - - }//end testDNFTypeParentheses() - - - /** - * Data provider. - * - * @see testDNFTypeParentheses() - * - * @return array> - */ - public static function dataDNFTypeParentheses() - { - return [ - 'OO const type: unqualified classes' => [ - 'testMarker' => '/* testDNFTypeOOConstUnqualifiedClasses */', - ], - 'OO const type: modifiers in reverse order' => [ - 'testMarker' => '/* testDNFTypeOOConstReverseModifierOrder */', - ], - 'OO const type: multi-dnf part 1' => [ - 'testMarker' => '/* testDNFTypeOOConstMulti1 */', - ], - 'OO const type: multi-dnf part 2' => [ - 'testMarker' => '/* testDNFTypeOOConstMulti2 */', - ], - 'OO const type: multi-dnf part 3' => [ - 'testMarker' => '/* testDNFTypeOOConstMulti3 */', - ], - 'OO const type: namespace relative classes' => [ - 'testMarker' => '/* testDNFTypeOOConstNamespaceRelative */', - ], - 'OO const type: partially qualified classes' => [ - 'testMarker' => '/* testDNFTypeOOConstPartiallyQualified */', - ], - 'OO const type: fully qualified classes' => [ - 'testMarker' => '/* testDNFTypeOOConstFullyQualified */', - ], - - 'OO property type: unqualified classes' => [ - 'testMarker' => '/* testDNFTypePropertyUnqualifiedClasses */', - ], - 'OO property type: modifiers in reverse order' => [ - 'testMarker' => '/* testDNFTypePropertyReverseModifierOrder */', - ], - 'OO property type: multi-dnf namespace relative classes' => [ - 'testMarker' => '/* testDNFTypePropertyMultiNamespaceRelative */', - ], - 'OO property type: multi-dnf partially qualified classes' => [ - 'testMarker' => '/* testDNFTypePropertyMultiPartiallyQualified */', - ], - 'OO property type: multi-dnf fully qualified classes' => [ - 'testMarker' => '/* testDNFTypePropertyMultiFullyQualified */', - ], - - 'OO property type: multi-dnf with readonly keyword 1' => [ - 'testMarker' => '/* testDNFTypePropertyWithReadOnlyKeyword1 */', - ], - 'OO property type: multi-dnf with readonly keyword 2' => [ - 'testMarker' => '/* testDNFTypePropertyWithReadOnlyKeyword2 */', - ], - 'OO property type: with static and readonly keywords' => [ - 'testMarker' => '/* testDNFTypePropertyWithStaticAndReadOnlyKeywords */', - ], - 'OO property type: with only static keyword' => [ - 'testMarker' => '/* testDNFTypePropertyWithOnlyStaticKeyword */', - ], - 'OO method param type: first param' => [ - 'testMarker' => '/* testDNFTypeParam1WithAttribute */', - ], - 'OO method param type: second param, first DNF' => [ - 'testMarker' => '/* testDNFTypeParam2 */', - ], - 'OO method param type: second param, second DNF' => [ - 'testMarker' => '/* testDNFTypeParam3 */', - ], - 'OO method param type: namespace relative classes' => [ - 'testMarker' => '/* testDNFTypeParamNamespaceRelative */', - ], - 'OO method param type: partially qualified classes' => [ - 'testMarker' => '/* testDNFTypeParamPartiallyQualified */', - ], - 'OO method param type: fully qualified classes' => [ - 'testMarker' => '/* testDNFTypeParamFullyQualified */', - ], - 'Constructor property promotion with multi DNF 1' => [ - 'testMarker' => '/* testDNFTypeConstructorPropertyPromotion1 */', - ], - 'Constructor property promotion with multi DNF 2' => [ - 'testMarker' => '/* testDNFTypeConstructorPropertyPromotion2 */', - ], - 'OO method return type: multi DNF 1' => [ - 'testMarker' => '/* testDNFTypeReturnType1 */', - ], - 'OO method return type: multi DNF 2' => [ - 'testMarker' => '/* testDNFTypeReturnType2 */', - ], - 'OO abstract method return type: multi DNF 1' => [ - 'testMarker' => '/* testDNFTypeAbstractMethodReturnType1 */', - ], - 'OO abstract method return type: multi DNF 2' => [ - 'testMarker' => '/* testDNFTypeAbstractMethodReturnType2 */', - ], - 'OO method return type: namespace relative classes' => [ - 'testMarker' => '/* testDNFTypeReturnTypeNamespaceRelative */', - ], - 'OO method return type: partially qualified classes' => [ - 'testMarker' => '/* testDNFTypeReturnPartiallyQualified */', - ], - 'OO method return type: fully qualified classes' => [ - 'testMarker' => '/* testDNFTypeReturnFullyQualified */', - ], - 'function param type: with reference' => [ - 'testMarker' => '/* testDNFTypeWithReference */', - ], - 'function param type: with spread' => [ - 'testMarker' => '/* testDNFTypeWithSpreadOperator */', - ], - 'closure param type: with illegal nullable' => [ - 'testMarker' => '/* testDNFTypeClosureParamIllegalNullable */', - ], - 'closure return type' => [ - 'testMarker' => '/* testDNFTypeClosureReturn */', - ], - 'arrow function param type' => [ - 'testMarker' => '/* testDNFTypeArrowParam */', - ], - 'arrow function return type' => [ - 'testMarker' => '/* testDNFTypeArrowReturnType */', - ], - 'arrow function param type with return by ref' => [ - 'testMarker' => '/* testDNFTypeArrowParamWithReturnByRef */', - ], - - 'illegal syntax: unnecessary parentheses (no union)' => [ - 'testMarker' => '/* testDNFTypeParamIllegalUnnecessaryParens */', - ], - 'illegal syntax: union within parentheses, intersect outside' => [ - 'testMarker' => '/* testDNFTypeParamIllegalIntersectUnionReversed */', - ], - 'illegal syntax: nested parentheses' => [ - 'testMarker' => '/* testDNFTypeParamIllegalNestedParens */', - ], - ]; - - }//end dataDNFTypeParentheses() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/CreatePositionMapHeredocNowdocCloserTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/CreatePositionMapHeredocNowdocCloserTest.inc deleted file mode 100644 index a800980b..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/CreatePositionMapHeredocNowdocCloserTest.inc +++ /dev/null @@ -1,43 +0,0 @@ - - * @copyright 2020 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\Tokenizer; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -/** - * Heredoc/nowdoc closer token test. - * - * @requires PHP 7.3 - * - * @covers PHP_CodeSniffer\Tokenizers\Tokenizer::createPositionMap - */ -final class CreatePositionMapHeredocNowdocCloserTest extends AbstractTokenizerTestCase -{ - - - /** - * Verify that leading (indent) whitespace in a heredoc/nowdoc closer token get the tab replacement treatment. - * - * @param string $testMarker The comment prefacing the target token. - * @param array $expected Expectations for the token array. - * - * @dataProvider dataHeredocNowdocCloserTabReplacement - * - * @return void - */ - public function testHeredocNowdocCloserTabReplacement($testMarker, $expected) - { - $tokens = $this->phpcsFile->getTokens(); - - $closer = $this->getTargetToken($testMarker, [T_END_HEREDOC, T_END_NOWDOC]); - - foreach ($expected as $key => $value) { - if ($key === 'orig_content' && $value === null) { - $this->assertArrayNotHasKey($key, $tokens[$closer], "Unexpected 'orig_content' key found in the token array."); - continue; - } - - $this->assertArrayHasKey($key, $tokens[$closer], "Key $key not found in the token array."); - $this->assertSame($value, $tokens[$closer][$key], "Value for key $key does not match expectation."); - } - - }//end testHeredocNowdocCloserTabReplacement() - - - /** - * Data provider. - * - * @see testHeredocNowdocCloserTabReplacement() - * - * @return array>> - */ - public static function dataHeredocNowdocCloserTabReplacement() - { - return [ - 'Heredoc closer without indent' => [ - 'testMarker' => '/* testHeredocCloserNoIndent */', - 'expected' => [ - 'length' => 3, - 'content' => 'EOD', - 'orig_content' => null, - ], - ], - 'Nowdoc closer without indent' => [ - 'testMarker' => '/* testNowdocCloserNoIndent */', - 'expected' => [ - 'length' => 3, - 'content' => 'EOD', - 'orig_content' => null, - ], - ], - 'Heredoc closer with indent, spaces' => [ - 'testMarker' => '/* testHeredocCloserSpaceIndent */', - 'expected' => [ - 'length' => 7, - 'content' => ' END', - 'orig_content' => null, - ], - ], - 'Nowdoc closer with indent, spaces' => [ - 'testMarker' => '/* testNowdocCloserSpaceIndent */', - 'expected' => [ - 'length' => 8, - 'content' => ' END', - 'orig_content' => null, - ], - ], - 'Heredoc closer with indent, tabs' => [ - 'testMarker' => '/* testHeredocCloserTabIndent */', - 'expected' => [ - 'length' => 8, - 'content' => ' END', - 'orig_content' => ' END', - ], - ], - 'Nowdoc closer with indent, tabs' => [ - 'testMarker' => '/* testNowdocCloserTabIndent */', - 'expected' => [ - 'length' => 7, - 'content' => ' END', - 'orig_content' => ' END', - ], - ], - ]; - - }//end dataHeredocNowdocCloserTabReplacement() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/CreatePositionMapHeredocNowdocOpenerTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/CreatePositionMapHeredocNowdocOpenerTest.inc deleted file mode 100644 index dc2b2f2d..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/CreatePositionMapHeredocNowdocOpenerTest.inc +++ /dev/null @@ -1,31 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\Tokenizer; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -/** - * Heredoc/nowdoc opener token test. - * - * @covers PHP_CodeSniffer\Tokenizers\Tokenizer::createPositionMap - */ -final class CreatePositionMapHeredocNowdocOpenerTest extends AbstractTokenizerTestCase -{ - - - /** - * Verify that spaces/tabs in a heredoc/nowdoc opener token get the tab replacement treatment. - * - * @param string $testMarker The comment prefacing the target token. - * @param array $expected Expectations for the token array. - * - * @dataProvider dataHeredocNowdocOpenerTabReplacement - * - * @return void - */ - public function testHeredocNowdocOpenerTabReplacement($testMarker, $expected) - { - $tokens = $this->phpcsFile->getTokens(); - $opener = $this->getTargetToken($testMarker, [T_START_HEREDOC, T_START_NOWDOC]); - - foreach ($expected as $key => $value) { - if ($key === 'orig_content' && $value === null) { - $this->assertArrayNotHasKey($key, $tokens[$opener], "Unexpected 'orig_content' key found in the token array."); - continue; - } - - $this->assertArrayHasKey($key, $tokens[$opener], "Key $key not found in the token array."); - $this->assertSame($value, $tokens[$opener][$key], "Value for key $key does not match expectation."); - } - - }//end testHeredocNowdocOpenerTabReplacement() - - - /** - * Data provider. - * - * @see testHeredocNowdocOpenerTabReplacement() - * - * @return array>> - */ - public static function dataHeredocNowdocOpenerTabReplacement() - { - return [ - 'Heredoc opener without space' => [ - 'testMarker' => '/* testHeredocOpenerNoSpace */', - 'expected' => [ - 'length' => 6, - 'content' => '<< null, - ], - ], - 'Nowdoc opener without space' => [ - 'testMarker' => '/* testNowdocOpenerNoSpace */', - 'expected' => [ - 'length' => 8, - 'content' => "<<<'EOD' -", - 'orig_content' => null, - ], - ], - 'Heredoc opener with space(s)' => [ - 'testMarker' => '/* testHeredocOpenerHasSpace */', - 'expected' => [ - 'length' => 7, - 'content' => '<<< END -', - 'orig_content' => null, - ], - ], - 'Nowdoc opener with space(s)' => [ - 'testMarker' => '/* testNowdocOpenerHasSpace */', - 'expected' => [ - 'length' => 21, - 'content' => "<<< 'END' -", - 'orig_content' => null, - ], - ], - 'Heredoc opener with tab(s)' => [ - 'testMarker' => '/* testHeredocOpenerHasTab */', - 'expected' => [ - 'length' => 18, - 'content' => '<<< "END" -', - 'orig_content' => '<<< "END" -', - ], - ], - 'Nowdoc opener with tab(s)' => [ - 'testMarker' => '/* testNowdocOpenerHasTab */', - 'expected' => [ - 'length' => 11, - 'content' => "<<< 'END' -", - 'orig_content' => "<<< 'END' -", - ], - ], - ]; - - }//end dataHeredocNowdocOpenerTabReplacement() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/CreatePositionMapTabWidth0Test.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/CreatePositionMapTabWidth0Test.php deleted file mode 100644 index fd47bf7d..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/CreatePositionMapTabWidth0Test.php +++ /dev/null @@ -1,107 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\Tokenizer; - -/** - * Tab replacement test using tab width 0, means no tab replacement will take place. - * - * @covers PHP_CodeSniffer\Tokenizers\Tokenizer::createPositionMap - */ -final class CreatePositionMapTabWidth0Test extends ReplaceTabsInTokenTestCase -{ - - /** - * The tab width setting to use when tokenizing the file. - * - * @var integer - */ - protected $tabWidth = 0; - - - /** - * Data provider helper. - * - * @see ReplaceTabsInTokenTestCase::dataTabReplacement() - * - * @return array> - */ - public static function getTabReplacementExpected() - { - return [ - 'Tab indentation' => [ - 'length' => 2, - 'content' => ' ', - 'orig_content' => null, - ], - 'Mixed tab/space indentation' => [ - 'length' => 3, - 'content' => ' ', - 'orig_content' => null, - ], - 'Inline: single tab in text string' => [ - 'length' => 15, - 'content' => "'tab separated'", - 'orig_content' => null, - ], - 'Inline: single tab between each word in text string' => [ - 'length' => 24, - 'content' => '"tab $between each word"', - 'orig_content' => null, - ], - 'Inline: multiple tabs in heredoc' => [ - 'length' => 15, - 'content' => 'tab separated -', - 'orig_content' => null, - ], - 'Inline: multiple tabs between each word in nowdoc' => [ - 'length' => 27, - 'content' => 'tab between each word -', - 'orig_content' => null, - ], - 'Inline: mixed spaces/tabs in text string' => [ - 'length' => 20, - 'content' => "'tab separated'", - 'orig_content' => null, - ], - 'Inline: mixed spaces/tabs between each word in text string' => [ - 'length' => 31, - 'content' => '"tab $between each word"', - 'orig_content' => null, - ], - 'Inline: tab becomes single space in comment (with tabwidth 4)' => [ - 'length' => 50, - 'content' => '// -123 With tabwidth 4, the tab size should be 1. -', - 'orig_content' => null, - ], - 'Inline: tab becomes 2 spaces in comment (with tabwidth 4)' => [ - 'length' => 52, - 'content' => '/* -12 With tabwidth 4, the tab size should be 2. */', - 'orig_content' => null, - ], - 'Inline: tab becomes 3 spaces in doc comment string (with tabwidth 4)' => [ - 'length' => 45, - 'content' => '-1 With tabwidth 4, the tab size should be 3.', - 'orig_content' => null, - ], - 'Inline: tab becomes 4 spaces in comment (with tabwidth 4)' => [ - 'length' => 47, - 'content' => '// - With tabwidth 4, the tab size should be 4. -', - 'orig_content' => null, - ], - ]; - - }//end getTabReplacementExpected() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/CreatePositionMapYieldFromTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/CreatePositionMapYieldFromTest.inc deleted file mode 100644 index 59365dd5..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/CreatePositionMapYieldFromTest.inc +++ /dev/null @@ -1,15 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\Tokenizer; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -/** - * Yield from token test. - * - * @covers PHP_CodeSniffer\Tokenizers\Tokenizer::createPositionMap - */ -final class CreatePositionMapYieldFromTest extends AbstractTokenizerTestCase -{ - - - /** - * Verify that spaces/tabs in "yield from" tokens get the tab replacement treatment. - * - * @param string $testMarker The comment prefacing the target token. - * @param array $expected Expectations for the token array. - * @param string $content Optional. The test token content to search for. - * Defaults to null. - * - * @dataProvider dataYieldFromTabReplacement - * - * @return void - */ - public function testYieldFromTabReplacement($testMarker, $expected, $content=null) - { - $tokens = $this->phpcsFile->getTokens(); - $target = $this->getTargetToken($testMarker, [T_YIELD_FROM], $content); - - foreach ($expected as $key => $value) { - if ($key === 'orig_content' && $value === null) { - $this->assertArrayNotHasKey($key, $tokens[$target], "Unexpected 'orig_content' key found in the token array."); - continue; - } - - $this->assertArrayHasKey($key, $tokens[$target], "Key $key not found in the token array."); - $this->assertSame($value, $tokens[$target][$key], "Value for key $key does not match expectation."); - } - - }//end testYieldFromTabReplacement() - - - /** - * Data provider. - * - * @see testYieldFromTabReplacement() - * - * @return array>> - */ - public static function dataYieldFromTabReplacement() - { - return [ - 'Yield from, single line, single space' => [ - 'testMarker' => '/* testYieldFromHasSingleSpace */', - 'expected' => [ - 'length' => 10, - 'content' => 'yield from', - 'orig_content' => null, - ], - ], - 'Yield from, single line, multiple spaces' => [ - 'testMarker' => '/* testYieldFromHasMultiSpace */', - 'expected' => [ - 'length' => 14, - 'content' => 'yield from', - 'orig_content' => null, - ], - ], - 'Yield from, single line, has tabs' => [ - 'testMarker' => '/* testYieldFromHasTabs */', - 'expected' => [ - 'length' => 16, - 'content' => 'yield from', - 'orig_content' => 'yield from', - ], - ], - 'Yield from, single line, mix of tabs and spaces' => [ - 'testMarker' => '/* testYieldFromMixedTabsSpaces */', - 'expected' => [ - 'length' => 20, - 'content' => 'Yield From', - 'orig_content' => 'Yield From', - ], - ], - ]; - - }//end dataYieldFromTabReplacement() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/CreateTokenMapArrayParenthesesTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/CreateTokenMapArrayParenthesesTest.inc deleted file mode 100644 index 6d8adfcb..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/CreateTokenMapArrayParenthesesTest.inc +++ /dev/null @@ -1,58 +0,0 @@ - 10); - -/* testArrayWithComment */ -$var = Array /*comment*/ (1 => 10); - -/* testNestingArray */ -$var = array( - /* testNestedArray */ - array( - 'key' => 'value', - - /* testClosureReturnType */ - 'closure' => function($a) use($global) : Array {}, - ), -); - -/* testFunctionDeclarationParamType */ -function typedParam(array $a) {} - -/* testFunctionDeclarationReturnType */ -function returnType($a) : int|array|null {} - -class Bar { - /* testClassConst */ - const ARRAY = []; - - /* testClassMethod */ - public function array() {} - - /* testOOConstType */ - const array /* testTypedOOConstName */ ARRAY = /* testOOConstDefault */ array(); - - /* testOOPropertyType */ - protected array $property; -} - -class DNFTypes { - /* testOOConstDNFType */ - const (A&B)|array|(C&D) NAME = []; - - /* testOOPropertyDNFType */ - protected (A&B)|ARRAY|null $property; - - /* testFunctionDeclarationParamDNFType */ - public function name(null|array|(A&B) $param) { - /* testClosureDeclarationParamDNFType */ - $cl = function ( array|(A&B) $param) {}; - - /* testArrowDeclarationReturnDNFType */ - $arrow = fn($a): (A&B)|Array => new $a; - } -} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/CreateTokenMapArrayParenthesesTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/CreateTokenMapArrayParenthesesTest.php deleted file mode 100644 index 4b7ac382..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/CreateTokenMapArrayParenthesesTest.php +++ /dev/null @@ -1,212 +0,0 @@ - - * @copyright 2021 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\Tokenizer; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -final class CreateTokenMapArrayParenthesesTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that the array keyword is correctly tokenized as `T_ARRAY`. - * - * @param string $testMarker The comment prefacing the target token. - * @param string $testContent Optional. The token content to look for. - * - * @dataProvider dataArrayKeyword - * @covers PHP_CodeSniffer\Tokenizers\Tokenizer::createTokenMap - * - * @return void - */ - public function testArrayKeyword($testMarker, $testContent='array') - { - $tokens = $this->phpcsFile->getTokens(); - - $token = $this->getTargetToken($testMarker, [T_ARRAY, T_STRING], $testContent); - $tokenArray = $tokens[$token]; - - // Make sure we're looking at the right token. - $this->assertSame(T_ARRAY, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_ARRAY (code)'); - - $this->assertArrayHasKey('parenthesis_owner', $tokenArray, 'Parenthesis owner is not set'); - $this->assertArrayHasKey('parenthesis_opener', $tokenArray, 'Parenthesis opener is not set'); - $this->assertArrayHasKey('parenthesis_closer', $tokenArray, 'Parenthesis closer is not set'); - - }//end testArrayKeyword() - - - /** - * Data provider. - * - * @see testArrayKeyword() - * - * @return array> - */ - public static function dataArrayKeyword() - { - return [ - 'empty array' => [ - 'testMarker' => '/* testEmptyArray */', - ], - 'array with space before parenthesis' => [ - 'testMarker' => '/* testArrayWithSpace */', - ], - 'array with comment before parenthesis' => [ - 'testMarker' => '/* testArrayWithComment */', - 'testContent' => 'Array', - ], - 'nested: outer array' => [ - 'testMarker' => '/* testNestingArray */', - ], - 'nested: inner array' => [ - 'testMarker' => '/* testNestedArray */', - ], - 'OO constant default value' => [ - 'testMarker' => '/* testOOConstDefault */', - ], - ]; - - }//end dataArrayKeyword() - - - /** - * Test that the array keyword when used in a type declaration is correctly tokenized as `T_STRING`. - * - * @param string $testMarker The comment prefacing the target token. - * @param string $testContent Optional. The token content to look for. - * - * @dataProvider dataArrayType - * @covers PHP_CodeSniffer\Tokenizers\Tokenizer::createTokenMap - * - * @return void - */ - public function testArrayType($testMarker, $testContent='array') - { - $tokens = $this->phpcsFile->getTokens(); - - $token = $this->getTargetToken($testMarker, [T_ARRAY, T_STRING], $testContent); - $tokenArray = $tokens[$token]; - - // Make sure we're looking at the right token. - $this->assertSame(T_STRING, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (code)'); - - $this->assertArrayNotHasKey('parenthesis_owner', $tokenArray, 'Parenthesis owner is set'); - $this->assertArrayNotHasKey('parenthesis_opener', $tokenArray, 'Parenthesis opener is set'); - $this->assertArrayNotHasKey('parenthesis_closer', $tokenArray, 'Parenthesis closer is set'); - - }//end testArrayType() - - - /** - * Data provider. - * - * @see testArrayType() - * - * @return array> - */ - public static function dataArrayType() - { - return [ - 'closure return type' => [ - 'testMarker' => '/* testClosureReturnType */', - 'testContent' => 'Array', - ], - 'function param type' => [ - 'testMarker' => '/* testFunctionDeclarationParamType */', - ], - 'function union return type' => [ - 'testMarker' => '/* testFunctionDeclarationReturnType */', - ], - 'OO constant type' => [ - 'testMarker' => '/* testOOConstType */', - ], - 'OO property type' => [ - 'testMarker' => '/* testOOPropertyType */', - ], - - 'OO constant DNF type' => [ - 'testMarker' => '/* testOOConstDNFType */', - ], - 'OO property DNF type' => [ - 'testMarker' => '/* testOOPropertyDNFType */', - 'testContent' => 'ARRAY', - ], - 'function param DNF type' => [ - 'testMarker' => '/* testFunctionDeclarationParamDNFType */', - ], - 'closure param DNF type' => [ - 'testMarker' => '/* testClosureDeclarationParamDNFType */', - ], - 'arrow return DNF type' => [ - 'testMarker' => '/* testArrowDeclarationReturnDNFType */', - 'testContent' => 'Array', - ], - ]; - - }//end dataArrayType() - - - /** - * Verify that the retokenization of `T_ARRAY` tokens to `T_STRING` is handled correctly - * for tokens with the contents 'array' which aren't in actual fact the array keyword. - * - * @param string $testMarker The comment prefacing the target token. - * @param string $testContent The token content to look for. - * - * @dataProvider dataNotArrayKeyword - * @covers PHP_CodeSniffer\Tokenizers\Tokenizer::createTokenMap - * - * @return void - */ - public function testNotArrayKeyword($testMarker, $testContent='array') - { - $tokens = $this->phpcsFile->getTokens(); - - $token = $this->getTargetToken($testMarker, [T_ARRAY, T_STRING], $testContent); - $tokenArray = $tokens[$token]; - - // Make sure we're looking at the right token. - $this->assertSame(T_STRING, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (code)'); - - $this->assertArrayNotHasKey('parenthesis_owner', $tokenArray, 'Parenthesis owner is set'); - $this->assertArrayNotHasKey('parenthesis_opener', $tokenArray, 'Parenthesis opener is set'); - $this->assertArrayNotHasKey('parenthesis_closer', $tokenArray, 'Parenthesis closer is set'); - - }//end testNotArrayKeyword() - - - /** - * Data provider. - * - * @see testNotArrayKeyword() - * - * @return array> - */ - public static function dataNotArrayKeyword() - { - return [ - 'class-constant-name' => [ - 'testMarker' => '/* testClassConst */', - 'testContent' => 'ARRAY', - ], - 'class-method-name' => [ - 'testMarker' => '/* testClassMethod */', - ], - 'class-constant-name-after-type' => [ - 'testMarker' => '/* testTypedOOConstName */', - 'testContent' => 'ARRAY', - ], - ]; - - }//end dataNotArrayKeyword() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/RecurseScopeMapCaseKeywordConditionsTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/RecurseScopeMapCaseKeywordConditionsTest.inc deleted file mode 100644 index 13b87242..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/RecurseScopeMapCaseKeywordConditionsTest.inc +++ /dev/null @@ -1,95 +0,0 @@ - - * @copyright 2021 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\Tokenizer; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -final class RecurseScopeMapCaseKeywordConditionsTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that the enum "case" is converted to T_ENUM_CASE. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * - * @dataProvider dataEnumCases - * @covers PHP_CodeSniffer\Tokenizers\Tokenizer::recurseScopeMap - * - * @return void - */ - public function testEnumCases($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - $enumCase = $this->getTargetToken($testMarker, [T_ENUM_CASE, T_CASE]); - $tokenArray = $tokens[$enumCase]; - - // Make sure we're looking at the right token. - $this->assertSame(T_ENUM_CASE, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_ENUM_CASE (code)'); - - $this->assertArrayNotHasKey('scope_condition', $tokenArray, 'Scope condition is set'); - $this->assertArrayNotHasKey('scope_opener', $tokenArray, 'Scope opener is set'); - $this->assertArrayNotHasKey('scope_closer', $tokenArray, 'Scope closer is set'); - - }//end testEnumCases() - - - /** - * Data provider. - * - * @see testEnumCases() - * - * @return array> - */ - public static function dataEnumCases() - { - return [ - 'enum case, no value' => ['/* testPureEnumCase */'], - 'enum case, integer value' => ['/* testBackingIntegerEnumCase */'], - 'enum case, string value' => ['/* testBackingStringEnumCase */'], - 'enum case, integer value in more complex enum' => ['/* testEnumCaseInComplexEnum */'], - 'enum case, keyword in mixed case' => ['/* testEnumCaseIsCaseInsensitive */'], - 'enum case, after switch statement' => ['/* testEnumCaseAfterSwitch */'], - 'enum case, after switch statement using alternative syntax' => ['/* testEnumCaseAfterSwitchWithEndSwitch */'], - ]; - - }//end dataEnumCases() - - - /** - * Test that "case" that is not enum case is still tokenized as `T_CASE`. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * - * @dataProvider dataNotEnumCases - * @covers PHP_CodeSniffer\Tokenizers\Tokenizer::recurseScopeMap - * - * @return void - */ - public function testNotEnumCases($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - $case = $this->getTargetToken($testMarker, [T_ENUM_CASE, T_CASE]); - $tokenArray = $tokens[$case]; - - // Make sure we're looking at the right token. - $this->assertSame(T_CASE, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_CASE (code)'); - - $this->assertArrayHasKey('scope_condition', $tokenArray, 'Scope condition is not set'); - $this->assertArrayHasKey('scope_opener', $tokenArray, 'Scope opener is not set'); - $this->assertArrayHasKey('scope_closer', $tokenArray, 'Scope closer is not set'); - - }//end testNotEnumCases() - - - /** - * Data provider. - * - * @see testNotEnumCases() - * - * @return array> - */ - public static function dataNotEnumCases() - { - return [ - 'switch case with constant, semicolon condition end' => ['/* testCaseWithSemicolonIsNotEnumCase */'], - 'switch case with constant, colon condition end' => ['/* testCaseWithConstantIsNotEnumCase */'], - 'switch case with constant, comparison' => ['/* testCaseWithConstantAndIdenticalIsNotEnumCase */'], - 'switch case with constant, assignment' => ['/* testCaseWithAssigmentToConstantIsNotEnumCase */'], - 'switch case with constant, keyword in mixed case' => ['/* testIsNotEnumCaseIsCaseInsensitive */'], - 'switch case, body in curlies declares enum' => ['/* testCaseInSwitchWhenCreatingEnumInSwitch1 */'], - 'switch case, body after semicolon declares enum' => ['/* testCaseInSwitchWhenCreatingEnumInSwitch2 */'], - ]; - - }//end dataNotEnumCases() - - - /** - * Test that "case" that is not enum case is still tokenized as `T_CASE`. - * - * @param string $testMarker The comment which prefaces the target token in the test file. - * - * @dataProvider dataKeywordAsEnumCaseNameShouldBeString - * @covers PHP_CodeSniffer\Tokenizers\Tokenizer::recurseScopeMap - * - * @return void - */ - public function testKeywordAsEnumCaseNameShouldBeString($testMarker) - { - $tokens = $this->phpcsFile->getTokens(); - $enumCaseName = $this->getTargetToken($testMarker, [T_STRING, T_INTERFACE, T_TRAIT, T_ENUM, T_FUNCTION, T_FALSE, T_DEFAULT, T_ARRAY]); - $tokenArray = $tokens[$enumCaseName]; - - // Make sure we're looking at the right token. - $this->assertSame(T_STRING, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (code)'); - - $this->assertArrayNotHasKey('scope_condition', $tokenArray, 'Scope condition is set'); - $this->assertArrayNotHasKey('scope_opener', $tokenArray, 'Scope opener is set'); - $this->assertArrayNotHasKey('scope_closer', $tokenArray, 'Scope closer is set'); - - }//end testKeywordAsEnumCaseNameShouldBeString() - - - /** - * Data provider. - * - * @see testKeywordAsEnumCaseNameShouldBeString() - * - * @return array> - */ - public static function dataKeywordAsEnumCaseNameShouldBeString() - { - return [ - '"interface" as case name' => ['/* testKeywordAsEnumCaseNameShouldBeString1 */'], - '"trait" as case name' => ['/* testKeywordAsEnumCaseNameShouldBeString2 */'], - '"enum" as case name' => ['/* testKeywordAsEnumCaseNameShouldBeString3 */'], - '"function" as case name' => ['/* testKeywordAsEnumCaseNameShouldBeString4 */'], - '"false" as case name' => ['/* testKeywordAsEnumCaseNameShouldBeString5 */'], - '"default" as case name' => ['/* testKeywordAsEnumCaseNameShouldBeString6 */'], - '"array" as case name' => ['/* testKeywordAsEnumCaseNameShouldBeString7 */'], - ]; - - }//end dataKeywordAsEnumCaseNameShouldBeString() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/RecurseScopeMapDefaultKeywordConditionsTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/RecurseScopeMapDefaultKeywordConditionsTest.inc deleted file mode 100644 index 648149d2..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/RecurseScopeMapDefaultKeywordConditionsTest.inc +++ /dev/null @@ -1,203 +0,0 @@ - 1, - 2 => 2, - /* testSimpleMatchDefault */ - default => 'default', - }; -} - -function switchWithDefault($i) { - switch ($i) { - case 1: - return 1; - case 2: - return 2; - /* testSimpleSwitchDefault */ - default: - return 'default'; - } -} - -function switchWithDefaultAndCurlies($i) { - switch ($i) { - case 1: - return 1; - case 2: - return 2; - /* testSimpleSwitchDefaultWithCurlies */ - default: { - return 'default'; - } - } -} - -function matchWithDefaultInSwitch() { - switch ($something) { - case 'foo': - $var = [1, 2, 3]; - $var = match ($i) { - 1 => 1, - /* testMatchDefaultNestedInSwitchCase1 */ - default => 'default', - }; - continue; - - case 'bar' : - $i = callMe($a, $b); - return match ($i) { - 1 => 1, - /* testMatchDefaultNestedInSwitchCase2 */ - default => 'default', - }; - - /* testSwitchDefault */ - default; - echo 'something', match ($i) { - 1, => 1, - /* testMatchDefaultNestedInSwitchDefault */ - default, => 'default', - }; - break; - } -} - -function switchWithDefaultInMatch() { - $x = match ($y) { - 5, 8 => function($z) { - switch($z) { - case 'a'; - $var = [1, 2, 3]; - return 'a'; - /* testSwitchDefaultNestedInMatchCase */ - default: - $var = [1, 2, 3]; - return 'default1'; - } - }, - /* testMatchDefault */ - default => function($z) { - switch($z) { - case 'a': - $i = callMe($a, $b); - return 'b'; - /* testSwitchDefaultNestedInMatchDefault */ - default: - $i = callMe($a, $b); - return 'default2'; - } - } - }; -} - -function shortArrayWithConstantKey() { - $arr = [ - /* testClassConstantAsShortArrayKey */ - SomeClass::DEFAULT => 1, - /* testClassPropertyAsShortArrayKey */ - SomeClass->DEFAULT => 1, - /* testNamespacedConstantAsShortArrayKey */ - // Intentional parse error PHP < 8.0. Reserved keyword used as namespaced constant. - SomeNamespace\DEFAULT => 1, - /* testFQNGlobalConstantAsShortArrayKey */ - // Intentional parse error in PHP < 8.0. Reserved keyword used as global constant. - \DEFAULT => 1, - ]; -} - -function longArrayWithConstantKey() { - $arr = array( - /* testClassConstantAsLongArrayKey */ - SomeClass::DEFAULT => 1, - ); -} - -function yieldWithConstantKey() { - /* testClassConstantAsYieldKey */ - yield SomeClass::DEFAULT => 1; -} - -function longArrayWithConstantKeyNestedInMatch() { - return match($x) { - /* testMatchDefaultWithNestedLongArrayWithClassConstantKey */ - DEFAULT => array( - /* testClassConstantAsLongArrayKeyNestedInMatch */ - SomeClass::DEFAULT => match($x) { - /* testMatchDefaultWithNestedLongArrayWithClassConstantKeyLevelDown */ - DEFAULT => array( - /* testClassConstantAsLongArrayKeyNestedInMatchLevelDown */ - SomeClass::DEFAULT => 1, - ), - }, - ), - }; -} - -function shortArrayWithConstantKeyNestedInMatch() { - return match($x) { - /* testMatchDefaultWithNestedShortArrayWithClassConstantKey */ - DEFAULT => [ - /* testClassConstantAsShortArrayKeyNestedInMatch */ - SomeClass::DEFAULT => match($x) { - /* testMatchDefaultWithNestedShortArrayWithClassConstantKeyLevelDown */ - DEFAULT => [ - /* testClassConstantAsShortArrayKeyNestedInMatchLevelDown */ - SomeClass::DEFAULT => 1, - ], - }, - ], - }; -} - - -function longArrayWithConstantKeyWithNestedMatch() { - return array( - /* testClassConstantAsLongArrayKeyWithNestedMatch */ - SomeClass::DEFAULT => match($x) { - /* testMatchDefaultNestedInLongArray */ - DEFAULT => 'foo' - }, - ); -} - -function shortArrayWithConstantKeyWithNestedMatch() { - return [ - /* testClassConstantAsShortArrayKeyWithNestedMatch */ - SomeClass::DEFAULT => match($x) { - /* testMatchDefaultNestedInShortArray */ - DEFAULT => 'foo' - }, - ]; -} - -function switchWithConstantNonDefault($i) { - switch ($i) { - /* testClassConstantInSwitchCase */ - case SomeClass::DEFAULT: - return 1; - - /* testClassPropertyInSwitchCase */ - case SomeClass->DEFAULT: - return 2; - - /* testNamespacedConstantInSwitchCase */ - // Intentional parse error PHP < 8.0. Reserved keyword used as constant. - case SomeNamespace\DEFAULT: - return 2; - - /* testNamespaceRelativeConstantInSwitchCase */ - // Intentional parse error PHP < 8.0. Reserved keyword used as global constant. - case namespace\DEFAULT: - return 2; - } -} - -class Foo { - /* testClassConstant */ - const DEFAULT = 'foo'; - - /* testMethodDeclaration */ - public function default() {} -} diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/RecurseScopeMapDefaultKeywordConditionsTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/RecurseScopeMapDefaultKeywordConditionsTest.php deleted file mode 100644 index 064ce8f4..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/RecurseScopeMapDefaultKeywordConditionsTest.php +++ /dev/null @@ -1,347 +0,0 @@ - - * @copyright 2020-2021 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\Tokenizer; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -final class RecurseScopeMapDefaultKeywordConditionsTest extends AbstractTokenizerTestCase -{ - - - /** - * Test the retokenization of the `default` keyword for match structure to `T_MATCH_DEFAULT`. - * - * Note: Cases and default structures within a match structure do *NOT* get case/default scope - * conditions, in contrast to case and default structures in switch control structures. - * - * @param string $testMarker The comment prefacing the target token. - * @param string $testContent The token content to look for. - * - * @dataProvider dataMatchDefault - * @covers PHP_CodeSniffer\Tokenizers\Tokenizer::recurseScopeMap - * - * @return void - */ - public function testMatchDefault($testMarker, $testContent='default') - { - $tokens = $this->phpcsFile->getTokens(); - - $token = $this->getTargetToken($testMarker, [T_MATCH_DEFAULT, T_DEFAULT, T_STRING], $testContent); - $tokenArray = $tokens[$token]; - - // Make sure we're looking at the right token. - $this->assertSame(T_MATCH_DEFAULT, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_MATCH_DEFAULT (code)'); - - $this->assertArrayNotHasKey('scope_condition', $tokenArray, 'Scope condition is set'); - $this->assertArrayNotHasKey('scope_opener', $tokenArray, 'Scope opener is set'); - $this->assertArrayNotHasKey('scope_closer', $tokenArray, 'Scope closer is set'); - - }//end testMatchDefault() - - - /** - * Data provider. - * - * @see testMatchDefault() - * - * @return array> - */ - public static function dataMatchDefault() - { - return [ - 'simple_match_default' => [ - 'testMarker' => '/* testSimpleMatchDefault */', - ], - 'match_default_in_switch_case_1' => [ - 'testMarker' => '/* testMatchDefaultNestedInSwitchCase1 */', - ], - 'match_default_in_switch_case_2' => [ - 'testMarker' => '/* testMatchDefaultNestedInSwitchCase2 */', - ], - 'match_default_in_switch_default' => [ - 'testMarker' => '/* testMatchDefaultNestedInSwitchDefault */', - ], - 'match_default_containing_switch' => [ - 'testMarker' => '/* testMatchDefault */', - ], - - 'match_default_with_nested_long_array_and_default_key' => [ - 'testMarker' => '/* testMatchDefaultWithNestedLongArrayWithClassConstantKey */', - 'testContent' => 'DEFAULT', - ], - 'match_default_with_nested_long_array_and_default_key_2' => [ - 'testMarker' => '/* testMatchDefaultWithNestedLongArrayWithClassConstantKeyLevelDown */', - 'testContent' => 'DEFAULT', - ], - 'match_default_with_nested_short_array_and_default_key' => [ - 'testMarker' => '/* testMatchDefaultWithNestedShortArrayWithClassConstantKey */', - 'testContent' => 'DEFAULT', - ], - 'match_default_with_nested_short_array_and_default_key_2' => [ - 'testMarker' => '/* testMatchDefaultWithNestedShortArrayWithClassConstantKeyLevelDown */', - 'testContent' => 'DEFAULT', - ], - 'match_default_in_long_array' => [ - 'testMarker' => '/* testMatchDefaultNestedInLongArray */', - 'testContent' => 'DEFAULT', - ], - 'match_default_in_short_array' => [ - 'testMarker' => '/* testMatchDefaultNestedInShortArray */', - 'testContent' => 'DEFAULT', - ], - ]; - - }//end dataMatchDefault() - - - /** - * Verify that the retokenization of `T_DEFAULT` tokens in match constructs, doesn't negatively - * impact the tokenization of `T_DEFAULT` tokens in switch control structures. - * - * Note: Cases and default structures within a switch control structure *do* get case/default scope - * conditions. - * - * @param string $testMarker The comment prefacing the target token. - * @param int $openerOffset The expected offset of the scope opener in relation to the testMarker. - * @param int $closerOffset The expected offset of the scope closer in relation to the testMarker. - * @param int|null $conditionStop The expected offset at which tokens stop having T_DEFAULT as a scope condition. - * @param string $testContent The token content to look for. - * - * @dataProvider dataSwitchDefault - * @covers PHP_CodeSniffer\Tokenizers\Tokenizer::recurseScopeMap - * - * @return void - */ - public function testSwitchDefault($testMarker, $openerOffset, $closerOffset, $conditionStop=null, $testContent='default') - { - $tokens = $this->phpcsFile->getTokens(); - - $token = $this->getTargetToken($testMarker, [T_MATCH_DEFAULT, T_DEFAULT, T_STRING], $testContent); - $tokenArray = $tokens[$token]; - $expectedScopeOpener = ($token + $openerOffset); - $expectedScopeCloser = ($token + $closerOffset); - - // Make sure we're looking at the right token. - $this->assertSame(T_DEFAULT, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_DEFAULT (code)'); - - $this->assertArrayHasKey('scope_condition', $tokenArray, 'Scope condition is not set'); - $this->assertArrayHasKey('scope_opener', $tokenArray, 'Scope opener is not set'); - $this->assertArrayHasKey('scope_closer', $tokenArray, 'Scope closer is not set'); - $this->assertSame($token, $tokenArray['scope_condition'], 'Scope condition is not the T_DEFAULT token'); - $this->assertSame($expectedScopeOpener, $tokenArray['scope_opener'], 'Scope opener of the T_DEFAULT token incorrect'); - $this->assertSame($expectedScopeCloser, $tokenArray['scope_closer'], 'Scope closer of the T_DEFAULT token incorrect'); - - $opener = $tokenArray['scope_opener']; - $this->assertArrayHasKey('scope_condition', $tokens[$opener], 'Opener scope condition is not set'); - $this->assertArrayHasKey('scope_opener', $tokens[$opener], 'Opener scope opener is not set'); - $this->assertArrayHasKey('scope_closer', $tokens[$opener], 'Opener scope closer is not set'); - $this->assertSame($token, $tokens[$opener]['scope_condition'], 'Opener scope condition is not the T_DEFAULT token'); - $this->assertSame($expectedScopeOpener, $tokens[$opener]['scope_opener'], 'T_DEFAULT opener scope opener token incorrect'); - $this->assertSame($expectedScopeCloser, $tokens[$opener]['scope_closer'], 'T_DEFAULT opener scope closer token incorrect'); - - $closer = $tokenArray['scope_closer']; - $this->assertArrayHasKey('scope_condition', $tokens[$closer], 'Closer scope condition is not set'); - $this->assertArrayHasKey('scope_opener', $tokens[$closer], 'Closer scope opener is not set'); - $this->assertArrayHasKey('scope_closer', $tokens[$closer], 'Closer scope closer is not set'); - $this->assertSame($token, $tokens[$closer]['scope_condition'], 'Closer scope condition is not the T_DEFAULT token'); - $this->assertSame($expectedScopeOpener, $tokens[$closer]['scope_opener'], 'T_DEFAULT closer scope opener token incorrect'); - $this->assertSame($expectedScopeCloser, $tokens[$closer]['scope_closer'], 'T_DEFAULT closer scope closer token incorrect'); - - if (($opener + 1) !== $closer) { - $end = $closer; - if (isset($conditionStop) === true) { - $end = $conditionStop; - } - - for ($i = ($opener + 1); $i < $end; $i++) { - $this->assertArrayHasKey( - $token, - $tokens[$i]['conditions'], - 'T_DEFAULT condition not added for token belonging to the T_DEFAULT structure' - ); - } - } - - }//end testSwitchDefault() - - - /** - * Data provider. - * - * @see testSwitchDefault() - * - * @return array> - */ - public static function dataSwitchDefault() - { - return [ - 'simple_switch_default' => [ - 'testMarker' => '/* testSimpleSwitchDefault */', - 'openerOffset' => 1, - 'closerOffset' => 4, - ], - 'simple_switch_default_with_curlies' => [ - // For a default structure with curly braces, the scope opener - // will be the open curly and the closer the close curly. - // However, scope conditions will not be set for open to close, - // but only for the open token up to the "break/return/continue" etc. - 'testMarker' => '/* testSimpleSwitchDefaultWithCurlies */', - 'openerOffset' => 3, - 'closerOffset' => 12, - 'conditionStop' => 6, - ], - 'switch_default_toplevel' => [ - 'testMarker' => '/* testSwitchDefault */', - 'openerOffset' => 1, - 'closerOffset' => 43, - ], - 'switch_default_nested_in_match_case' => [ - 'testMarker' => '/* testSwitchDefaultNestedInMatchCase */', - 'openerOffset' => 1, - 'closerOffset' => 20, - ], - 'switch_default_nested_in_match_default' => [ - 'testMarker' => '/* testSwitchDefaultNestedInMatchDefault */', - 'openerOffset' => 1, - 'closerOffset' => 18, - ], - ]; - - }//end dataSwitchDefault() - - - /** - * Verify that the retokenization of `T_DEFAULT` tokens in match constructs, doesn't negatively - * impact the tokenization of `T_STRING` tokens with the contents 'default' which aren't in - * actual fact the default keyword. - * - * @param string $testMarker The comment prefacing the target token. - * @param string $testContent The token content to look for. - * - * @dataProvider dataNotDefaultKeyword - * @covers PHP_CodeSniffer\Tokenizers\Tokenizer::recurseScopeMap - * - * @return void - */ - public function testNotDefaultKeyword($testMarker, $testContent='DEFAULT') - { - $tokens = $this->phpcsFile->getTokens(); - - $token = $this->getTargetToken($testMarker, [T_MATCH_DEFAULT, T_DEFAULT, T_STRING], $testContent); - $tokenArray = $tokens[$token]; - - // Make sure we're looking at the right token. - $this->assertSame(T_STRING, $tokenArray['code'], 'Token tokenized as '.$tokenArray['type'].', not T_STRING (code)'); - - $this->assertArrayNotHasKey('scope_condition', $tokenArray, 'Scope condition is set'); - $this->assertArrayNotHasKey('scope_opener', $tokenArray, 'Scope opener is set'); - $this->assertArrayNotHasKey('scope_closer', $tokenArray, 'Scope closer is set'); - - }//end testNotDefaultKeyword() - - - /** - * Data provider. - * - * @see testNotDefaultKeyword() - * - * @return array> - */ - public static function dataNotDefaultKeyword() - { - return [ - 'class-constant-as-short-array-key' => [ - 'testMarker' => '/* testClassConstantAsShortArrayKey */', - ], - 'class-property-as-short-array-key' => [ - 'testMarker' => '/* testClassPropertyAsShortArrayKey */', - ], - 'namespaced-constant-as-short-array-key' => [ - 'testMarker' => '/* testNamespacedConstantAsShortArrayKey */', - ], - 'fqn-global-constant-as-short-array-key' => [ - 'testMarker' => '/* testFQNGlobalConstantAsShortArrayKey */', - ], - 'class-constant-as-long-array-key' => [ - 'testMarker' => '/* testClassConstantAsLongArrayKey */', - ], - 'class-constant-as-yield-key' => [ - 'testMarker' => '/* testClassConstantAsYieldKey */', - ], - - 'class-constant-as-long-array-key-nested-in-match' => [ - 'testMarker' => '/* testClassConstantAsLongArrayKeyNestedInMatch */', - ], - 'class-constant-as-long-array-key-nested-in-match-2' => [ - 'testMarker' => '/* testClassConstantAsLongArrayKeyNestedInMatchLevelDown */', - ], - 'class-constant-as-short-array-key-nested-in-match' => [ - 'testMarker' => '/* testClassConstantAsShortArrayKeyNestedInMatch */', - ], - 'class-constant-as-short-array-key-nested-in-match-2' => [ - 'testMarker' => '/* testClassConstantAsShortArrayKeyNestedInMatchLevelDown */', - ], - 'class-constant-as-long-array-key-with-nested-match' => [ - 'testMarker' => '/* testClassConstantAsLongArrayKeyWithNestedMatch */', - ], - 'class-constant-as-short-array-key-with-nested-match' => [ - 'testMarker' => '/* testClassConstantAsShortArrayKeyWithNestedMatch */', - ], - - 'class-constant-in-switch-case' => [ - 'testMarker' => '/* testClassConstantInSwitchCase */', - ], - 'class-property-in-switch-case' => [ - 'testMarker' => '/* testClassPropertyInSwitchCase */', - ], - 'namespaced-constant-in-switch-case' => [ - 'testMarker' => '/* testNamespacedConstantInSwitchCase */', - ], - 'namespace-relative-constant-in-switch-case' => [ - 'testMarker' => '/* testNamespaceRelativeConstantInSwitchCase */', - ], - - 'class-constant-declaration' => [ - 'testMarker' => '/* testClassConstant */', - ], - 'class-method-declaration' => [ - 'testMarker' => '/* testMethodDeclaration */', - 'testContent' => 'default', - ], - ]; - - }//end dataNotDefaultKeyword() - - - /** - * Test a specific edge case where a scope opener would be incorrectly set. - * - * @link https://github.com/squizlabs/PHP_CodeSniffer/issues/3326 - * - * @covers PHP_CodeSniffer\Tokenizers\Tokenizer::recurseScopeMap - * - * @return void - */ - public function testIssue3326() - { - $tokens = $this->phpcsFile->getTokens(); - - $token = $this->getTargetToken('/* testClassConstant */', [T_SEMICOLON]); - $tokenArray = $tokens[$token]; - - $this->assertArrayNotHasKey('scope_condition', $tokenArray, 'Scope condition is set'); - $this->assertArrayNotHasKey('scope_opener', $tokenArray, 'Scope opener is set'); - $this->assertArrayNotHasKey('scope_closer', $tokenArray, 'Scope closer is set'); - - }//end testIssue3326() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/RecurseScopeMapWithNamespaceOperatorTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/RecurseScopeMapWithNamespaceOperatorTest.inc deleted file mode 100644 index 38e5a47d..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/RecurseScopeMapWithNamespaceOperatorTest.inc +++ /dev/null @@ -1,19 +0,0 @@ - new namespace\Baz; diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/RecurseScopeMapWithNamespaceOperatorTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/RecurseScopeMapWithNamespaceOperatorTest.php deleted file mode 100644 index 8ed593bf..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/RecurseScopeMapWithNamespaceOperatorTest.php +++ /dev/null @@ -1,98 +0,0 @@ - - * @copyright 2020 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\Tokenizer; - -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -final class RecurseScopeMapWithNamespaceOperatorTest extends AbstractTokenizerTestCase -{ - - - /** - * Test that the scope opener/closers are set correctly when the namespace keyword is encountered as an operator. - * - * @param string $testMarker The comment which prefaces the target tokens in the test file. - * @param array $tokenTypes The token type to search for. - * @param array $open Optional. The token type for the scope opener. - * @param array $close Optional. The token type for the scope closer. - * - * @dataProvider dataScopeSetting - * @covers PHP_CodeSniffer\Tokenizers\Tokenizer::recurseScopeMap - * - * @return void - */ - public function testScopeSetting($testMarker, $tokenTypes, $open=T_OPEN_CURLY_BRACKET, $close=T_CLOSE_CURLY_BRACKET) - { - $tokens = $this->phpcsFile->getTokens(); - - $target = $this->getTargetToken($testMarker, $tokenTypes); - $opener = $this->getTargetToken($testMarker, $open); - $closer = $this->getTargetToken($testMarker, $close); - - $this->assertArrayHasKey('scope_opener', $tokens[$target], 'Scope opener missing'); - $this->assertArrayHasKey('scope_closer', $tokens[$target], 'Scope closer missing'); - $this->assertSame($opener, $tokens[$target]['scope_opener'], 'Scope opener not same'); - $this->assertSame($closer, $tokens[$target]['scope_closer'], 'Scope closer not same'); - - $this->assertArrayHasKey('scope_opener', $tokens[$opener], 'Scope opener missing for open curly'); - $this->assertArrayHasKey('scope_closer', $tokens[$opener], 'Scope closer missing for open curly'); - $this->assertSame($opener, $tokens[$opener]['scope_opener'], 'Scope opener not same for open curly'); - $this->assertSame($closer, $tokens[$opener]['scope_closer'], 'Scope closer not same for open curly'); - - $this->assertArrayHasKey('scope_opener', $tokens[$closer], 'Scope opener missing for close curly'); - $this->assertArrayHasKey('scope_closer', $tokens[$closer], 'Scope closer missing for close curly'); - $this->assertSame($opener, $tokens[$closer]['scope_opener'], 'Scope opener not same for close curly'); - $this->assertSame($closer, $tokens[$closer]['scope_closer'], 'Scope closer not same for close curly'); - - }//end testScopeSetting() - - - /** - * Data provider. - * - * @see testScopeSetting() - * - * @return array>> - */ - public static function dataScopeSetting() - { - return [ - 'class which extends namespace relative name' => [ - 'testMarker' => '/* testClassExtends */', - 'tokenTypes' => [T_CLASS], - ], - 'class which implements namespace relative name' => [ - 'testMarker' => '/* testClassImplements */', - 'tokenTypes' => [T_ANON_CLASS], - ], - 'interface which extend namespace relative name' => [ - 'testMarker' => '/* testInterfaceExtends */', - 'tokenTypes' => [T_INTERFACE], - ], - 'namespace relative name in function return type' => [ - 'testMarker' => '/* testFunctionReturnType */', - 'tokenTypes' => [T_FUNCTION], - ], - 'namespace relative name in closure return type' => [ - 'testMarker' => '/* testClosureReturnType */', - 'tokenTypes' => [T_CLOSURE], - ], - 'namespace relative name in arrow function return type' => [ - 'testMarker' => '/* testArrowFunctionReturnType */', - 'tokenTypes' => [T_FN], - 'open' => [T_FN_ARROW], - 'close' => [T_SEMICOLON], - ], - ]; - - }//end dataScopeSetting() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/ReplaceTabsInTokenMiscTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/ReplaceTabsInTokenMiscTest.php deleted file mode 100644 index f4bd711a..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/ReplaceTabsInTokenMiscTest.php +++ /dev/null @@ -1,124 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\Tokenizer; - -use PHP_CodeSniffer\Files\DummyFile; -use PHP_CodeSniffer\Ruleset; -use PHP_CodeSniffer\Tests\ConfigDouble; -use PHPUnit\Framework\TestCase; - -/** - * Miscellaneous tests for tab replacement. - * - * @covers PHP_CodeSniffer\Tokenizers\Tokenizer::replaceTabsInToken - */ -final class ReplaceTabsInTokenMiscTest extends TestCase -{ - - - /** - * Test that when no tab width is set or passed, the tab width will be set to 1. - * - * @return void - */ - public function testTabWidthNotSet() - { - $config = new ConfigDouble(); - $ruleset = new Ruleset($config); - - $content = <<parse(); - - $tokens = $phpcsFile->getTokens(); - $target = $phpcsFile->findNext(T_WHITESPACE, 0); - - // Verify initial state. - $this->assertTrue(is_int($target), 'Target token was not found'); - $this->assertSame(' ', $tokens[$target]['content'], 'Content after initial parsing does not contain tabs'); - $this->assertSame(2, $tokens[$target]['length'], 'Length after initial parsing is not as expected'); - $this->assertArrayNotHasKey('orig_content', $tokens[$target], "Key 'orig_content' found in the initial token array."); - - $phpcsFile->tokenizer->replaceTabsInToken($tokens[$target]); - - // Verify tab replacement. - $this->assertSame(' ', $tokens[$target]['content'], 'Content after tab replacement is not as expected'); - $this->assertSame(2, $tokens[$target]['length'], 'Length after tab replacement is not as expected'); - $this->assertArrayHasKey('orig_content', $tokens[$target], "Key 'orig_content' not found in the token array."); - - }//end testTabWidthNotSet() - - - /** - * Test that the length calculation handles text in non-ascii encodings correctly. - * - * @requires extension iconv - * - * @return void - */ - public function testLengthSettingRespectsEncoding() - { - $config = new ConfigDouble(); - $config->tabWidth = 4; - $ruleset = new Ruleset($config); - - $content = <<parse(); - - $tokens = $phpcsFile->getTokens(); - $target = $phpcsFile->findNext(T_CONSTANT_ENCAPSED_STRING, 0); - - $this->assertTrue(is_int($target), 'Target token was not found'); - $this->assertSame("'пасха пасха'", $tokens[$target]['content'], 'Content is not as expected'); - $this->assertSame(17, $tokens[$target]['length'], 'Length is not as expected'); - $this->assertArrayHasKey('orig_content', $tokens[$target], "Key 'orig_content' not found in the token array."); - $this->assertSame("'пасха пасха'", $tokens[$target]['orig_content'], 'Orig_content is not as expected'); - - }//end testLengthSettingRespectsEncoding() - - - /** - * Test that the length calculation falls back to byte length if iconv detects an illegal character. - * - * @requires extension iconv - * - * @return void - */ - public function testLengthSettingFallsBackToBytesWhenTextContainsIllegalChars() - { - $config = new ConfigDouble(); - $config->tabWidth = 4; - $ruleset = new Ruleset($config); - - $content = <<parse(); - - $tokens = $phpcsFile->getTokens(); - $target = $phpcsFile->findNext(T_CONSTANT_ENCAPSED_STRING, 0); - - $this->assertTrue(is_int($target), 'Target token was not found'); - $this->assertSame(11, $tokens[$target]['length'], 'Length is not as expected'); - $this->assertArrayHasKey('orig_content', $tokens[$target], "Key 'orig_content' not found in the token array."); - - }//end testLengthSettingFallsBackToBytesWhenTextContainsIllegalChars() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/ReplaceTabsInTokenTabWidth1Test.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/ReplaceTabsInTokenTabWidth1Test.php deleted file mode 100644 index 29621534..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/ReplaceTabsInTokenTabWidth1Test.php +++ /dev/null @@ -1,111 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\Tokenizer; - -/** - * Tab replacement test using tab width 1. - * - * @covers PHP_CodeSniffer\Tokenizers\Tokenizer::replaceTabsInToken - */ -final class ReplaceTabsInTokenTabWidth1Test extends ReplaceTabsInTokenTestCase -{ - - /** - * The tab width setting to use when tokenizing the file. - * - * @var integer - */ - protected $tabWidth = 1; - - - /** - * Data provider helper. - * - * @see ReplaceTabsInTokenTestCase::dataTabReplacement() - * - * @return array> - */ - public static function getTabReplacementExpected() - { - return [ - 'Tab indentation' => [ - 'length' => 2, - 'content' => ' ', - 'orig_content' => ' ', - ], - 'Mixed tab/space indentation' => [ - 'length' => 3, - 'content' => ' ', - 'orig_content' => ' ', - ], - 'Inline: single tab in text string' => [ - 'length' => 15, - 'content' => "'tab separated'", - 'orig_content' => "'tab separated'", - ], - 'Inline: single tab between each word in text string' => [ - 'length' => 24, - 'content' => '"tab $between each word"', - 'orig_content' => '"tab $between each word"', - ], - 'Inline: multiple tabs in heredoc' => [ - 'length' => 15, - 'content' => 'tab separated -', - 'orig_content' => 'tab separated -', - ], - 'Inline: multiple tabs between each word in nowdoc' => [ - 'length' => 27, - 'content' => 'tab between each word -', - 'orig_content' => 'tab between each word -', - ], - 'Inline: mixed spaces/tabs in text string' => [ - 'length' => 20, - 'content' => "'tab separated'", - 'orig_content' => "'tab separated'", - ], - 'Inline: mixed spaces/tabs between each word in text string' => [ - 'length' => 31, - 'content' => '"tab $between each word"', - 'orig_content' => '"tab $between each word"', - ], - 'Inline: tab becomes single space in comment (with tabwidth 4)' => [ - 'length' => 50, - 'content' => '// -123 With tabwidth 4, the tab size should be 1. -', - 'orig_content' => '// -123 With tabwidth 4, the tab size should be 1. -', - ], - 'Inline: tab becomes 2 spaces in comment (with tabwidth 4)' => [ - 'length' => 52, - 'content' => '/* -12 With tabwidth 4, the tab size should be 2. */', - 'orig_content' => '/* -12 With tabwidth 4, the tab size should be 2. */', - ], - 'Inline: tab becomes 3 spaces in doc comment string (with tabwidth 4)' => [ - 'length' => 45, - 'content' => '-1 With tabwidth 4, the tab size should be 3.', - 'orig_content' => '-1 With tabwidth 4, the tab size should be 3.', - ], - 'Inline: tab becomes 4 spaces in comment (with tabwidth 4)' => [ - 'length' => 47, - 'content' => '// - With tabwidth 4, the tab size should be 4. -', - 'orig_content' => '// - With tabwidth 4, the tab size should be 4. -', - ], - ]; - - }//end getTabReplacementExpected() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/ReplaceTabsInTokenTabWidth2Test.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/ReplaceTabsInTokenTabWidth2Test.php deleted file mode 100644 index 92de221d..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/ReplaceTabsInTokenTabWidth2Test.php +++ /dev/null @@ -1,111 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\Tokenizer; - -/** - * Tab replacement test using tab width 2. - * - * @covers PHP_CodeSniffer\Tokenizers\Tokenizer::replaceTabsInToken - */ -final class ReplaceTabsInTokenTabWidth2Test extends ReplaceTabsInTokenTestCase -{ - - /** - * The tab width setting to use when tokenizing the file. - * - * @var integer - */ - protected $tabWidth = 2; - - - /** - * Data provider helper. - * - * @see ReplaceTabsInTokenTestCase::dataTabReplacement() - * - * @return array> - */ - public static function getTabReplacementExpected() - { - return [ - 'Tab indentation' => [ - 'length' => 4, - 'content' => ' ', - 'orig_content' => ' ', - ], - 'Mixed tab/space indentation' => [ - 'length' => 4, - 'content' => ' ', - 'orig_content' => ' ', - ], - 'Inline: single tab in text string' => [ - 'length' => 15, - 'content' => "'tab separated'", - 'orig_content' => "'tab separated'", - ], - 'Inline: single tab between each word in text string' => [ - 'length' => 26, - 'content' => '"tab $between each word"', - 'orig_content' => '"tab $between each word"', - ], - 'Inline: multiple tabs in heredoc' => [ - 'length' => 17, - 'content' => 'tab separated -', - 'orig_content' => 'tab separated -', - ], - 'Inline: multiple tabs between each word in nowdoc' => [ - 'length' => 34, - 'content' => 'tab between each word -', - 'orig_content' => 'tab between each word -', - ], - 'Inline: mixed spaces/tabs in text string' => [ - 'length' => 23, - 'content' => "'tab separated'", - 'orig_content' => "'tab separated'", - ], - 'Inline: mixed spaces/tabs between each word in text string' => [ - 'length' => 32, - 'content' => '"tab $between each word"', - 'orig_content' => '"tab $between each word"', - ], - 'Inline: tab becomes single space in comment (with tabwidth 4)' => [ - 'length' => 50, - 'content' => '// -123 With tabwidth 4, the tab size should be 1. -', - 'orig_content' => '// -123 With tabwidth 4, the tab size should be 1. -', - ], - 'Inline: tab becomes 2 spaces in comment (with tabwidth 4)' => [ - 'length' => 53, - 'content' => '/* -12 With tabwidth 4, the tab size should be 2. */', - 'orig_content' => '/* -12 With tabwidth 4, the tab size should be 2. */', - ], - 'Inline: tab becomes 3 spaces in doc comment string (with tabwidth 4)' => [ - 'length' => 45, - 'content' => '-1 With tabwidth 4, the tab size should be 3.', - 'orig_content' => '-1 With tabwidth 4, the tab size should be 3.', - ], - 'Inline: tab becomes 4 spaces in comment (with tabwidth 4)' => [ - 'length' => 48, - 'content' => '// - With tabwidth 4, the tab size should be 4. -', - 'orig_content' => '// - With tabwidth 4, the tab size should be 4. -', - ], - ]; - - }//end getTabReplacementExpected() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/ReplaceTabsInTokenTabWidth4Test.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/ReplaceTabsInTokenTabWidth4Test.php deleted file mode 100644 index 5f741879..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/ReplaceTabsInTokenTabWidth4Test.php +++ /dev/null @@ -1,111 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\Tokenizer; - -/** - * Tab replacement test using tab width 4. - * - * @covers PHP_CodeSniffer\Tokenizers\Tokenizer::replaceTabsInToken - */ -final class ReplaceTabsInTokenTabWidth4Test extends ReplaceTabsInTokenTestCase -{ - - /** - * The tab width setting to use when tokenizing the file. - * - * @var integer - */ - protected $tabWidth = 4; - - - /** - * Data provider helper. - * - * @see ReplaceTabsInTokenTestCase::dataTabReplacement() - * - * @return array> - */ - public static function getTabReplacementExpected() - { - return [ - 'Tab indentation' => [ - 'length' => 8, - 'content' => ' ', - 'orig_content' => ' ', - ], - 'Mixed tab/space indentation' => [ - 'length' => 6, - 'content' => ' ', - 'orig_content' => ' ', - ], - 'Inline: single tab in text string' => [ - 'length' => 17, - 'content' => "'tab separated'", - 'orig_content' => "'tab separated'", - ], - 'Inline: single tab between each word in text string' => [ - 'length' => 32, - 'content' => '"tab $between each word"', - 'orig_content' => '"tab $between each word"', - ], - 'Inline: multiple tabs in heredoc' => [ - 'length' => 21, - 'content' => 'tab separated -', - 'orig_content' => 'tab separated -', - ], - 'Inline: multiple tabs between each word in nowdoc' => [ - 'length' => 48, - 'content' => 'tab between each word -', - 'orig_content' => 'tab between each word -', - ], - 'Inline: mixed spaces/tabs in text string' => [ - 'length' => 25, - 'content' => "'tab separated'", - 'orig_content' => "'tab separated'", - ], - 'Inline: mixed spaces/tabs between each word in text string' => [ - 'length' => 36, - 'content' => '"tab $between each word"', - 'orig_content' => '"tab $between each word"', - ], - 'Inline: tab becomes single space in comment (with tabwidth 4)' => [ - 'length' => 50, - 'content' => '// -123 With tabwidth 4, the tab size should be 1. -', - 'orig_content' => '// -123 With tabwidth 4, the tab size should be 1. -', - ], - 'Inline: tab becomes 2 spaces in comment (with tabwidth 4)' => [ - 'length' => 53, - 'content' => '/* -12 With tabwidth 4, the tab size should be 2. */', - 'orig_content' => '/* -12 With tabwidth 4, the tab size should be 2. */', - ], - 'Inline: tab becomes 3 spaces in doc comment string (with tabwidth 4)' => [ - 'length' => 47, - 'content' => '-1 With tabwidth 4, the tab size should be 3.', - 'orig_content' => '-1 With tabwidth 4, the tab size should be 3.', - ], - 'Inline: tab becomes 4 spaces in comment (with tabwidth 4)' => [ - 'length' => 50, - 'content' => '// - With tabwidth 4, the tab size should be 4. -', - 'orig_content' => '// - With tabwidth 4, the tab size should be 4. -', - ], - ]; - - }//end getTabReplacementExpected() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/ReplaceTabsInTokenTabWidth5Test.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/ReplaceTabsInTokenTabWidth5Test.php deleted file mode 100644 index 361894fb..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/ReplaceTabsInTokenTabWidth5Test.php +++ /dev/null @@ -1,111 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\Tokenizer; - -/** - * Tab replacement test using tab width 5. - * - * @covers PHP_CodeSniffer\Tokenizers\Tokenizer::replaceTabsInToken - */ -final class ReplaceTabsInTokenTabWidth5Test extends ReplaceTabsInTokenTestCase -{ - - /** - * The tab width setting to use when tokenizing the file. - * - * @var integer - */ - protected $tabWidth = 5; - - - /** - * Data provider helper. - * - * @see ReplaceTabsInTokenTestCase::dataTabReplacement() - * - * @return array> - */ - public static function getTabReplacementExpected() - { - return [ - 'Tab indentation' => [ - 'length' => 10, - 'content' => ' ', - 'orig_content' => ' ', - ], - 'Mixed tab/space indentation' => [ - 'length' => 7, - 'content' => ' ', - 'orig_content' => ' ', - ], - 'Inline: single tab in text string' => [ - 'length' => 15, - 'content' => "'tab separated'", - 'orig_content' => "'tab separated'", - ], - 'Inline: single tab between each word in text string' => [ - 'length' => 25, - 'content' => '"tab $between each word"', - 'orig_content' => '"tab $between each word"', - ], - 'Inline: multiple tabs in heredoc' => [ - 'length' => 24, - 'content' => 'tab separated -', - 'orig_content' => 'tab separated -', - ], - 'Inline: multiple tabs between each word in nowdoc' => [ - 'length' => 54, - 'content' => 'tab between each word -', - 'orig_content' => 'tab between each word -', - ], - 'Inline: mixed spaces/tabs in text string' => [ - 'length' => 30, - 'content' => "'tab separated'", - 'orig_content' => "'tab separated'", - ], - 'Inline: mixed spaces/tabs between each word in text string' => [ - 'length' => 35, - 'content' => '"tab $between each word"', - 'orig_content' => '"tab $between each word"', - ], - 'Inline: tab becomes single space in comment (with tabwidth 4)' => [ - 'length' => 52, - 'content' => '// -123 With tabwidth 4, the tab size should be 1. -', - 'orig_content' => '// -123 With tabwidth 4, the tab size should be 1. -', - ], - 'Inline: tab becomes 2 spaces in comment (with tabwidth 4)' => [ - 'length' => 55, - 'content' => '/* -12 With tabwidth 4, the tab size should be 2. */', - 'orig_content' => '/* -12 With tabwidth 4, the tab size should be 2. */', - ], - 'Inline: tab becomes 3 spaces in doc comment string (with tabwidth 4)' => [ - 'length' => 49, - 'content' => '-1 With tabwidth 4, the tab size should be 3.', - 'orig_content' => '-1 With tabwidth 4, the tab size should be 3.', - ], - 'Inline: tab becomes 4 spaces in comment (with tabwidth 4)' => [ - 'length' => 47, - 'content' => '// - With tabwidth 4, the tab size should be 4. -', - 'orig_content' => '// - With tabwidth 4, the tab size should be 4. -', - ], - ]; - - }//end getTabReplacementExpected() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/ReplaceTabsInTokenTest.inc b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/ReplaceTabsInTokenTest.inc deleted file mode 100644 index e6046500..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Tokenizers/Tokenizer/ReplaceTabsInTokenTest.inc +++ /dev/null @@ -1,46 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Tokenizers\Tokenizer; - -use Exception; -use PHP_CodeSniffer\Tests\Core\Tokenizers\AbstractTokenizerTestCase; - -/** - * Tab replacement test case. - * - * @covers PHP_CodeSniffer\Tokenizers\Tokenizer::replaceTabsInToken - */ -abstract class ReplaceTabsInTokenTestCase extends AbstractTokenizerTestCase -{ - - /** - * The name of the test case file used by this test. - * - * @var string - */ - private static $caseFileName; - - - /** - * Make a copy the test case file we want to use for this test (as the file will be used by multiple tests). - * - * @beforeClass - * - * @return void - * - * @throws \Exception In case the base test case file would not be available. - */ - public static function copyCaseFile() - { - $relativeCN = str_replace(__NAMESPACE__.'\\', '', get_called_class()); - self::$caseFileName = __DIR__.DIRECTORY_SEPARATOR.$relativeCN.'.inc'; - - $baseFileName = realpath(__DIR__.'/ReplaceTabsInTokenTest.inc'); - if (is_string($baseFileName) === false) { - throw new Exception('Base test case file "ReplaceTabsInTokenTest.inc" not found'); - } - - if (copy($baseFileName, self::$caseFileName) === false) { - throw new Exception(sprintf('Failed to copy test case file "ReplaceTabsInTokenTest.inc" to %s', self::$caseFileName)); - } - - }//end copyCaseFile() - - - /** - * Delete the copied test case file after use. - * - * @afterClass - * - * @return void - */ - public static function deleteCaseFile() - { - @unlink(self::$caseFileName); - - }//end deleteCaseFile() - - - /** - * Verify that if a token not containing tabs would be passed to the replaceTabsInToken() method, - * yes, the `orig_content` key is added, but no changes are made to the token `content` or `length` values. - * - * @param string $testMarker The comment prefacing the target token. - * @param int|string $testTarget Token code to look for. - * @param array $expected Expectations for the token array. - * @param int $offset Optional. Offset from the target token to get to the _real_ target. - * This is specifically needed to target indentation whitespace. - * - * @dataProvider dataNoReplacementsAreMadeWhenNoTabsAreFound - * - * @return void - */ - public function testNoReplacementsAreMadeWhenNoTabsAreFound($testMarker, $testTarget, $expected, $offset=0) - { - $tokens = $this->phpcsFile->getTokens(); - $target = $this->getTargetToken($testMarker, $testTarget); - $target += $offset; - - foreach ($expected as $key => $value) { - if ($key === 'orig_content' && $value === null) { - $this->assertArrayNotHasKey($key, $tokens[$target], "Unexpected 'orig_content' key found in the token array."); - continue; - } - - $this->assertArrayHasKey($key, $tokens[$target], "Key $key not found in the token array."); - $this->assertSame($value, $tokens[$target][$key], "Value for key $key does not match expectation."); - } - - }//end testNoReplacementsAreMadeWhenNoTabsAreFound() - - - /** - * Data provider. - * - * @see testNoReplacementsAreMadeWhenNoTabsAreFound() - * - * @return array>> - */ - public static function dataNoReplacementsAreMadeWhenNoTabsAreFound() - { - return [ - 'Indentation whitespace, only spaces' => [ - 'testMarker' => '/* testNoReplacementNeeded */', - 'testTarget' => T_WHITESPACE, - 'expected' => [ - 'length' => 4, - 'content' => ' ', - 'orig_content' => null, - ], - 'offset' => 1, - ], - 'Trailing comment not containing any tabs' => [ - 'testMarker' => '/* testNoReplacementNeeded */', - 'testTarget' => T_COMMENT, - 'expected' => [ - 'length' => 35, - 'content' => '// Comment not containing any tabs. -', - 'orig_content' => null, - ], - ], - ]; - - }//end dataNoReplacementsAreMadeWhenNoTabsAreFound() - - - /** - * Test tab replacement in tokens. - * - * @param string $testMarker The comment prefacing the target token. - * @param int|string $testTarget Token code to look for. - * @param array $expected Expectations for the token array. - * @param int $offset Optional. Offset from the target token to get to the _real_ target. - * This is specifically needed to target indentation whitespace. - * - * @dataProvider dataTabReplacement - * - * @return void - */ - public function testTabReplacement($testMarker, $testTarget, $expected, $offset=0) - { - $tokens = $this->phpcsFile->getTokens(); - $target = $this->getTargetToken($testMarker, $testTarget); - $target += $offset; - - foreach ($expected as $key => $value) { - if ($key === 'orig_content' && $value === null) { - $this->assertArrayNotHasKey($key, $tokens[$target], "Unexpected 'orig_content' key found in the token array."); - continue; - } - - $this->assertArrayHasKey($key, $tokens[$target], "Key $key not found in the token array."); - $this->assertSame($value, $tokens[$target][$key], "Value for key $key does not match expectation."); - } - - }//end testTabReplacement() - - - /** - * Data provider. - * - * @see testTabReplacement() - * - * @return array>> - * - * @throws \Exception When the getTabReplacementExpected() method doesn't provide data in the correct format. - */ - public static function dataTabReplacement() - { - $data = [ - 'Tab indentation' => [ - 'testMarker' => '/* testTabIndentation */', - 'testTarget' => T_WHITESPACE, - ], - 'Mixed tab/space indentation' => [ - 'testMarker' => '/* testMixedIndentation */', - 'testTarget' => T_WHITESPACE, - ], - 'Inline: single tab in text string' => [ - 'testMarker' => '/* testInlineSingleTab */', - 'testTarget' => T_CONSTANT_ENCAPSED_STRING, - ], - 'Inline: single tab between each word in text string' => [ - 'testMarker' => '/* testInlineSingleTabBetweenEachWord */', - 'testTarget' => T_DOUBLE_QUOTED_STRING, - ], - 'Inline: multiple tabs in heredoc' => [ - 'testMarker' => '/* testInlineMultiTab */', - 'testTarget' => T_HEREDOC, - ], - 'Inline: multiple tabs between each word in nowdoc' => [ - 'testMarker' => '/* testInlineMultipleTabsBetweenEachWord */', - 'testTarget' => T_NOWDOC, - ], - 'Inline: mixed spaces/tabs in text string' => [ - 'testMarker' => '/* testInlineMixedSpacesTabs */', - 'testTarget' => T_CONSTANT_ENCAPSED_STRING, - ], - 'Inline: mixed spaces/tabs between each word in text string' => [ - 'testMarker' => '/* testInlineMixedSpacesTabsBetweenEachWord */', - 'testTarget' => T_DOUBLE_QUOTED_STRING, - ], - 'Inline: tab becomes single space in comment (with tabwidth 4)' => [ - 'testMarker' => '/* testInlineSize1 */', - 'testTarget' => T_COMMENT, - ], - 'Inline: tab becomes 2 spaces in comment (with tabwidth 4)' => [ - 'testMarker' => '/* testInlineSize2 */', - 'testTarget' => T_COMMENT, - ], - 'Inline: tab becomes 3 spaces in doc comment string (with tabwidth 4)' => [ - 'testMarker' => '/* testInlineSize3 */', - 'testTarget' => T_DOC_COMMENT_STRING, - ], - 'Inline: tab becomes 4 spaces in comment (with tabwidth 4)' => [ - 'testMarker' => '/* testInlineSize4 */', - 'testTarget' => T_COMMENT, - ], - ]; - - $expectations = static::getTabReplacementExpected(); - - foreach ($data as $key => $value) { - if (isset($expectations[$key]) === false || is_array($expectations[$key]) === false) { - throw new Exception( - sprintf('Invalid getTabReplacementExpected() method. Missing expectation array for the "%s" test case', $key) - ); - } - - if (isset($expectations[$key]['length'], $expectations[$key]['content']) === false - || array_key_exists('orig_content', $expectations[$key]) === false - ) { - throw new Exception( - sprintf('Invalid expectation array for the "%s" test case. The array must contain the "length", "content" and "orig_content" keys', $key) - ); - } - - $data[$key]['expected'] = $expectations[$key]; - } - - // Set offset for test cases targetting whitespace. - $data['Tab indentation']['offset'] = 1; - $data['Mixed tab/space indentation']['offset'] = 1; - - return $data; - - }//end dataTabReplacement() - - - /** - * Data provider helper. - * - * Should be declared in child classes to set the expectations for the token array. - * - * @see dataTabReplacement() - * - * @return array> - */ - abstract public static function getTabReplacementExpected(); - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Common/EscapeshellcmdTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Common/EscapeshellcmdTest.php deleted file mode 100644 index d5b35b0a..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Common/EscapeshellcmdTest.php +++ /dev/null @@ -1,91 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Util\Common; - -use PHP_CodeSniffer\Util\Common; -use PHPUnit\Framework\TestCase; - -/** - * Tests for the \PHP_CodeSniffer\Util\Common::escapeshellcmd() method. - * - * @covers \PHP_CodeSniffer\Util\Common::escapeshellcmd - * @group Windows - */ -final class EscapeshellcmdTest extends TestCase -{ - - - /** - * Test escaping shell commands. - * - * @param string $command The command provided. - * @param string $expected Expected function output. - * @param string $expectedWin Optional. Expected function output on Windows. - * Only needs to be passed if the output on Windows would be different. - * - * @dataProvider dataEscapeshellcmd - * - * @return void - */ - public function testEscapeshellcmd($command, $expected, $expectedWin=null) - { - if (stripos(PHP_OS, 'WIN') === 0 && empty($expectedWin) === false) { - $expected = $expectedWin; - } - - $this->assertSame($expected, Common::escapeshellcmd($command)); - - }//end testEscapeshellcmd() - - - /** - * Data provider. - * - * Note: we're only testing the PHPCS functionality, not the PHP native `escapeshellcmd()` - * function (as that's not our responsibility). - * - * @see testEscapeshellcmd() - * - * @return array> - */ - public static function dataEscapeshellcmd() - { - return [ - 'Command is empty string' => [ - 'text' => '', - 'expected' => '', - ], - 'Command is simple string' => [ - 'text' => 'csslint', - 'expected' => 'csslint', - ], - 'Command containing characters which PHP escapes' => [ - 'text' => '&#;`|*?~<>^()[]{}$\,%!', - 'expected' => '\&\#\;\`\|\*\?\~\<\>\^\(\)\[\]\{\}\$\\\\,%!', - 'expectedWin' => '^&^#^;^`^|^*^?^~^<^>^^^(^)^[^]^{^}^$^\,^%^!', - ], - // @link https://github.com/squizlabs/PHP_CodeSniffer/pull/3214 - 'Command containing spaces, which can cause problems on Windows' => [ - 'text' => 'C:\Program Files\nodejs\csslint.cmd', - 'expected' => 'C:\\\\Program Files\\\\nodejs\\\\csslint.cmd', - 'expectedWin' => 'C:^\Program^ Files^\nodejs^\csslint.cmd', - ], - // @link https://github.com/php/doc-en/pull/511 - 'Command containing spaces with additional arguments' => [ - 'text' => 'php -f ./~home/path to/file.php', - 'expected' => 'php -f ./\~home/path to/file.php', - 'expectedWin' => 'php^ -f^ ./^~home/path^ to/file.php', - ], - ]; - - }//end dataEscapeshellcmd() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Common/GetSniffCodeTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Common/GetSniffCodeTest.php deleted file mode 100644 index 48161f1c..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Common/GetSniffCodeTest.php +++ /dev/null @@ -1,200 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Util\Common; - -use PHP_CodeSniffer\Util\Common; -use PHPUnit\Framework\TestCase; - -/** - * Tests for the \PHP_CodeSniffer\Util\Common::getSniffCode() method. - * - * @covers \PHP_CodeSniffer\Util\Common::getSniffCode - */ -final class GetSniffCodeTest extends TestCase -{ - - - /** - * Test receiving an expected exception when the $sniffClass parameter is not passed a string value or is passed an empty string. - * - * @param string $input NOT a fully qualified sniff class name. - * - * @dataProvider dataGetSniffCodeThrowsExceptionOnInvalidInput - * - * @return void - */ - public function testGetSniffCodeThrowsExceptionOnInvalidInput($input) - { - $exception = 'InvalidArgumentException'; - $message = 'The $sniffClass parameter must be a non-empty string'; - - if (method_exists($this, 'expectException') === true) { - // PHPUnit 5+. - $this->expectException($exception); - $this->expectExceptionMessage($message); - } else { - // PHPUnit 4. - $this->setExpectedException($exception, $message); - } - - Common::getSniffCode($input); - - }//end testGetSniffCodeThrowsExceptionOnInvalidInput() - - - /** - * Data provider. - * - * @see testGetSniffCodeThrowsExceptionOnInvalidInput() - * - * @return array> - */ - public static function dataGetSniffCodeThrowsExceptionOnInvalidInput() - { - return [ - 'Class name is not a string' => [true], - 'Class name is empty' => [''], - ]; - - }//end dataGetSniffCodeThrowsExceptionOnInvalidInput() - - - /** - * Test receiving an expected exception when the $sniffClass parameter is not passed a value which - * could be a fully qualified sniff(test) class name. - * - * @param string $input String input which can not be a fully qualified sniff(test) class name. - * - * @dataProvider dataGetSniffCodeThrowsExceptionOnInputWhichIsNotASniffTestClass - * - * @return void - */ - public function testGetSniffCodeThrowsExceptionOnInputWhichIsNotASniffTestClass($input) - { - $exception = 'InvalidArgumentException'; - $message = 'The $sniffClass parameter was not passed a fully qualified sniff(test) class name. Received:'; - - if (method_exists($this, 'expectException') === true) { - // PHPUnit 5+. - $this->expectException($exception); - $this->expectExceptionMessage($message); - } else { - // PHPUnit 4. - $this->setExpectedException($exception, $message); - } - - Common::getSniffCode($input); - - }//end testGetSniffCodeThrowsExceptionOnInputWhichIsNotASniffTestClass() - - - /** - * Data provider. - * - * @see testGetSniffCodeThrowsExceptionOnInputWhichIsNotASniffTestClass() - * - * @return array> - */ - public static function dataGetSniffCodeThrowsExceptionOnInputWhichIsNotASniffTestClass() - { - return [ - 'Unqualified class name' => ['ClassName'], - 'Fully qualified class name, not enough parts' => ['Fully\\Qualified\\ClassName'], - 'Fully qualified class name, doesn\'t end on Sniff or UnitTest' => ['Fully\\Sniffs\\Qualified\\ClassName'], - ]; - - }//end dataGetSniffCodeThrowsExceptionOnInputWhichIsNotASniffTestClass() - - - /** - * Test transforming a sniff class name to a sniff code. - * - * @param string $fqnClass A fully qualified sniff class name. - * @param string $expected Expected function output. - * - * @dataProvider dataGetSniffCode - * - * @return void - */ - public function testGetSniffCode($fqnClass, $expected) - { - $this->assertSame($expected, Common::getSniffCode($fqnClass)); - - }//end testGetSniffCode() - - - /** - * Data provider. - * - * @see testGetSniffCode() - * - * @return array> - */ - public static function dataGetSniffCode() - { - return [ - 'PHPCS native sniff' => [ - 'fqnClass' => 'PHP_CodeSniffer\\Standards\\Generic\\Sniffs\\Arrays\\ArrayIndentSniff', - 'expected' => 'Generic.Arrays.ArrayIndent', - ], - 'Class is a PHPCS native test class' => [ - 'fqnClass' => 'PHP_CodeSniffer\\Standards\\Generic\\Tests\\Arrays\\ArrayIndentUnitTest', - 'expected' => 'Generic.Arrays.ArrayIndent', - ], - 'Sniff in external standard without namespace prefix' => [ - 'fqnClass' => 'MyStandard\\Sniffs\\PHP\\MyNameSniff', - 'expected' => 'MyStandard.PHP.MyName', - ], - 'Test in external standard without namespace prefix' => [ - 'fqnClass' => 'MyStandard\\Tests\\PHP\\MyNameSniff', - 'expected' => 'MyStandard.PHP.MyName', - ], - 'Sniff in external standard with namespace prefix' => [ - 'fqnClass' => 'Vendor\\Package\\MyStandard\\Sniffs\\Category\\AnalyzeMeSniff', - 'expected' => 'MyStandard.Category.AnalyzeMe', - ], - 'Test in external standard with namespace prefix' => [ - 'fqnClass' => 'Vendor\\Package\\MyStandard\\Tests\\Category\\AnalyzeMeUnitTest', - 'expected' => 'MyStandard.Category.AnalyzeMe', - ], - - /* - * These are not valid sniff codes and is an undesirable result, but can't be helped - * as changing this would be a BC-break. - * Supporting these to allow for tags directly including sniff files. - * See: https://github.com/PHPCSStandards/PHP_CodeSniffer/issues/675 - */ - - 'Fully qualified class name, ends on Sniff, but isn\'t' => [ - 'fqnClass' => 'Fully\\Sniffs\\AbstractSomethingSniff', - 'expected' => '.Sniffs.AbstractSomething', - ], - 'Sniff provided via file include and doesn\'t comply with naming conventions [1]' => [ - 'fqnClass' => 'CheckMeSniff', - 'expected' => '..CheckMe', - ], - 'Sniff provided via file include and doesn\'t comply with naming conventions [2]' => [ - 'fqnClass' => 'CompanyName\\CheckMeSniff', - 'expected' => '.CompanyName.CheckMe', - ], - 'Sniff provided via file include and doesn\'t comply with naming conventions [3]' => [ - 'fqnClass' => 'CompanyName\\Sniffs\\CheckMeSniff', - 'expected' => '.Sniffs.CheckMe', - ], - 'Sniff provided via file include and doesn\'t comply with naming conventions [4]' => [ - 'fqnClass' => 'CompanyName\\CustomSniffs\\Whatever\\CheckMeSniff', - 'expected' => 'CompanyName.Whatever.CheckMe', - ], - ]; - - }//end dataGetSniffCode() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Common/IsCamelCapsTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Common/IsCamelCapsTest.php deleted file mode 100644 index 951d7618..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Common/IsCamelCapsTest.php +++ /dev/null @@ -1,140 +0,0 @@ - - * @copyright 2006-2015 Squiz Pty Ltd (ABN 77 084 670 600) - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Util\Common; - -use PHP_CodeSniffer\Util\Common; -use PHPUnit\Framework\TestCase; - -/** - * Tests for the \PHP_CodeSniffer\Util\Common::isCamelCaps method. - * - * @covers \PHP_CodeSniffer\Util\Common::isCamelCaps - */ -final class IsCamelCapsTest extends TestCase -{ - - - /** - * Test valid public function/method names. - * - * @return void - */ - public function testValidNotClassFormatPublic() - { - $this->assertTrue(Common::isCamelCaps('thisIsCamelCaps', false, true, true)); - $this->assertTrue(Common::isCamelCaps('thisISCamelCaps', false, true, false)); - - }//end testValidNotClassFormatPublic() - - - /** - * Test invalid public function/method names. - * - * @return void - */ - public function testInvalidNotClassFormatPublic() - { - $this->assertFalse(Common::isCamelCaps('_thisIsCamelCaps', false, true, true)); - $this->assertFalse(Common::isCamelCaps('thisISCamelCaps', false, true, true)); - $this->assertFalse(Common::isCamelCaps('ThisIsCamelCaps', false, true, true)); - - $this->assertFalse(Common::isCamelCaps('3thisIsCamelCaps', false, true, true)); - $this->assertFalse(Common::isCamelCaps('*thisIsCamelCaps', false, true, true)); - $this->assertFalse(Common::isCamelCaps('-thisIsCamelCaps', false, true, true)); - - $this->assertFalse(Common::isCamelCaps('this*IsCamelCaps', false, true, true)); - $this->assertFalse(Common::isCamelCaps('this-IsCamelCaps', false, true, true)); - $this->assertFalse(Common::isCamelCaps('this_IsCamelCaps', false, true, true)); - $this->assertFalse(Common::isCamelCaps('this_is_camel_caps', false, true, true)); - - }//end testInvalidNotClassFormatPublic() - - - /** - * Test valid private method names. - * - * @return void - */ - public function testValidNotClassFormatPrivate() - { - $this->assertTrue(Common::isCamelCaps('_thisIsCamelCaps', false, false, true)); - $this->assertTrue(Common::isCamelCaps('_thisISCamelCaps', false, false, false)); - $this->assertTrue(Common::isCamelCaps('_i18N', false, false, true)); - $this->assertTrue(Common::isCamelCaps('_i18n', false, false, true)); - - }//end testValidNotClassFormatPrivate() - - - /** - * Test invalid private method names. - * - * @return void - */ - public function testInvalidNotClassFormatPrivate() - { - $this->assertFalse(Common::isCamelCaps('thisIsCamelCaps', false, false, true)); - $this->assertFalse(Common::isCamelCaps('_thisISCamelCaps', false, false, true)); - $this->assertFalse(Common::isCamelCaps('_ThisIsCamelCaps', false, false, true)); - $this->assertFalse(Common::isCamelCaps('__thisIsCamelCaps', false, false, true)); - $this->assertFalse(Common::isCamelCaps('__thisISCamelCaps', false, false, false)); - - $this->assertFalse(Common::isCamelCaps('3thisIsCamelCaps', false, false, true)); - $this->assertFalse(Common::isCamelCaps('*thisIsCamelCaps', false, false, true)); - $this->assertFalse(Common::isCamelCaps('-thisIsCamelCaps', false, false, true)); - $this->assertFalse(Common::isCamelCaps('_this_is_camel_caps', false, false, true)); - - }//end testInvalidNotClassFormatPrivate() - - - /** - * Test valid class names. - * - * @return void - */ - public function testValidClassFormatPublic() - { - $this->assertTrue(Common::isCamelCaps('ThisIsCamelCaps', true, true, true)); - $this->assertTrue(Common::isCamelCaps('ThisISCamelCaps', true, true, false)); - $this->assertTrue(Common::isCamelCaps('This3IsCamelCaps', true, true, false)); - - }//end testValidClassFormatPublic() - - - /** - * Test invalid class names. - * - * @return void - */ - public function testInvalidClassFormat() - { - $this->assertFalse(Common::isCamelCaps('thisIsCamelCaps', true)); - $this->assertFalse(Common::isCamelCaps('This-IsCamelCaps', true)); - $this->assertFalse(Common::isCamelCaps('This_Is_Camel_Caps', true)); - - }//end testInvalidClassFormat() - - - /** - * Test invalid class names with the private flag set. - * - * Note that the private flag is ignored if the class format - * flag is set, so these names are all invalid. - * - * @return void - */ - public function testInvalidClassFormatPrivate() - { - $this->assertFalse(Common::isCamelCaps('_ThisIsCamelCaps', true, true)); - $this->assertFalse(Common::isCamelCaps('_ThisIsCamelCaps', true, false)); - - }//end testInvalidClassFormatPrivate() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Common/PrepareForOutputTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Common/PrepareForOutputTest.php deleted file mode 100644 index 8eb2fc22..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Common/PrepareForOutputTest.php +++ /dev/null @@ -1,113 +0,0 @@ -assertSame($expected, Common::prepareForOutput($content, $exclude)); - - }//end testPrepareForOutput() - - - /** - * Test formatting whitespace characters, on Windows. - * - * @param string $content The content to prepare. - * @param string[] $exclude A list of characters to leave invisible. - * @param string $expected Expected function output (unused in this test). - * @param string $expectedWin Expected function output on Windows. - * - * @requires OS ^WIN.*. - * @dataProvider dataPrepareForOutput - * - * @return void - */ - public function testPrepareForOutputWindows($content, $exclude, $expected, $expectedWin) - { - $this->assertSame($expectedWin, Common::prepareForOutput($content, $exclude)); - - }//end testPrepareForOutputWindows() - - - /** - * Data provider. - * - * @see testPrepareForOutput() - * @see testPrepareForOutputWindows() - * - * @return array> - */ - public static function dataPrepareForOutput() - { - return [ - 'Special characters are replaced with their escapes' => [ - 'content' => "\r\n\t", - 'exclude' => [], - 'expected' => "\033[30;1m\\r\033[0m\033[30;1m\\n\033[0m\033[30;1m\\t\033[0m", - 'expectedWin' => "\\r\\n\\t", - ], - 'Spaces are replaced with a unique mark' => [ - 'content' => " ", - 'exclude' => [], - 'expected' => "\033[30;1m·\033[0m\033[30;1m·\033[0m\033[30;1m·\033[0m\033[30;1m·\033[0m", - 'expectedWin' => " ", - ], - 'Other characters are unaffected' => [ - 'content' => "{echo 1;}", - 'exclude' => [], - 'expected' => "{echo\033[30;1m·\033[0m1;}", - 'expectedWin' => "{echo 1;}", - ], - 'No replacements' => [ - 'content' => 'nothing-should-be-replaced', - 'exclude' => [], - 'expected' => 'nothing-should-be-replaced', - 'expectedWin' => 'nothing-should-be-replaced', - ], - 'Excluded whitespace characters are unaffected' => [ - 'content' => "\r\n\t ", - 'exclude' => [ - "\r", - "\n", - ], - 'expected' => "\r\n\033[30;1m\\t\033[0m\033[30;1m·\033[0m", - 'expectedWin' => "\r\n\\t ", - ], - ]; - - }//end dataPrepareForOutput() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Common/StripColorsTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Common/StripColorsTest.php deleted file mode 100644 index ff253b8b..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Common/StripColorsTest.php +++ /dev/null @@ -1,96 +0,0 @@ - - * @copyright 2024 Juliette Reinders Folmer. All rights reserved. - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Util\Common; - -use PHP_CodeSniffer\Util\Common; -use PHPUnit\Framework\TestCase; - -/** - * Tests for the \PHP_CodeSniffer\Util\Common::stripColors() method. - * - * @covers \PHP_CodeSniffer\Util\Common::stripColors - */ -final class StripColorsTest extends TestCase -{ - - - /** - * Test stripping color codes from a text. - * - * @param string $text The text provided. - * @param string $expected Expected function output. - * - * @dataProvider dataStripColors - * - * @return void - */ - public function testStripColors($text, $expected) - { - $this->assertSame($expected, Common::stripColors($text)); - - }//end testStripColors() - - - /** - * Data provider. - * - * @see testStripColors() - * - * @return array> - */ - public static function dataStripColors() - { - return [ - 'Text is empty' => [ - 'text' => '', - 'expected' => '', - ], - 'Text enclosed in color code' => [ - 'text' => "\033[36mSome text\033[0m", - 'expected' => 'Some text', - ], - 'Text containing color code' => [ - 'text' => "Some text \033[33mSome other text", - 'expected' => 'Some text Some other text', - ], - 'Text enclosed in color code, bold' => [ - 'text' => "\033[1;32mSome text\033[0m", - 'expected' => 'Some text', - ], - 'Text enclosed in color code, with escaped text' => [ - 'text' => "\033[30;1m\\n\033[0m", - 'expected' => '\n', - ], - 'Text enclosed in color code, bold, dark, italic' => [ - 'text' => "\033[1;2;3mtext\033[0m", - 'expected' => 'text', - ], - 'Text enclosed in color code, foreground color' => [ - 'text' => "\033[38;5;255mtext\033[0m", - 'expected' => 'text', - ], - 'Text enclosed in color code, foreground color and background color' => [ - 'text' => "\033[38;5;200;48;5;255mtext\033[0m", - 'expected' => 'text', - ], - 'Multiline text containing multiple color codes' => [ - 'text' => "First \033[36mSecond\033[0m -Third \033[1;2;3mFourth -Next line\033[0m Last", - 'expected' => 'First Second -Third Fourth -Next line Last', - ], - ]; - - }//end dataStripColors() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Common/SuggestTypeTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Common/SuggestTypeTest.php deleted file mode 100644 index 48bb6df1..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Common/SuggestTypeTest.php +++ /dev/null @@ -1,224 +0,0 @@ - - * @copyright 2019 Juliette Reinders Folmer. All rights reserved. - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Util\Common; - -use PHP_CodeSniffer\Util\Common; -use PHPUnit\Framework\TestCase; - -/** - * Tests for the \PHP_CodeSniffer\Util\Common::suggestType() method. - * - * @covers \PHP_CodeSniffer\Util\Common::suggestType - */ -final class SuggestTypeTest extends TestCase -{ - - - /** - * Test passing an empty type to the suggestType() method. - * - * @return void - */ - public function testSuggestTypeEmpty() - { - $this->assertSame('', Common::suggestType('')); - - }//end testSuggestTypeEmpty() - - - /** - * Test passing one of the allowed types to the suggestType() method. - * - * @param string $varType The type. - * - * @dataProvider dataSuggestTypeAllowedType - * - * @return void - */ - public function testSuggestTypeAllowedType($varType) - { - $result = Common::suggestType($varType); - $this->assertSame($varType, $result); - - }//end testSuggestTypeAllowedType() - - - /** - * Data provider. - * - * @see testSuggestTypeAllowedType() - * - * @return array> - */ - public static function dataSuggestTypeAllowedType() - { - $data = []; - foreach (Common::$allowedTypes as $type) { - $data['Type: '.$type] = [$type]; - } - - return $data; - - }//end dataSuggestTypeAllowedType() - - - /** - * Test passing one of the allowed types in the wrong case to the suggestType() method. - * - * @param string $varType The type found. - * @param string $expected Expected suggested type. - * - * @dataProvider dataSuggestTypeAllowedTypeWrongCase - * - * @return void - */ - public function testSuggestTypeAllowedTypeWrongCase($varType, $expected) - { - $result = Common::suggestType($varType); - $this->assertSame($expected, $result); - - }//end testSuggestTypeAllowedTypeWrongCase() - - - /** - * Data provider. - * - * @see testSuggestTypeAllowedTypeWrongCase() - * - * @return array> - */ - public static function dataSuggestTypeAllowedTypeWrongCase() - { - $data = []; - foreach (Common::$allowedTypes as $type) { - $data['Mixed case: '.$type] = [ - 'varType' => ucfirst($type), - 'expected' => $type, - ]; - $data['Uppercase: '.$type] = [ - 'varType' => strtoupper($type), - 'expected' => $type, - ]; - } - - return $data; - - }//end dataSuggestTypeAllowedTypeWrongCase() - - - /** - * Test the suggestType() method for all other cases. - * - * @param string $varType The type found. - * @param string $expected Expected suggested type. - * - * @dataProvider dataSuggestTypeOther - * - * @return void - */ - public function testSuggestTypeOther($varType, $expected) - { - $result = Common::suggestType($varType); - $this->assertSame($expected, $result); - - }//end testSuggestTypeOther() - - - /** - * Data provider. - * - * @see testSuggestTypeOther() - * - * @return array> - */ - public static function dataSuggestTypeOther() - { - return [ - // Short forms. - 'Short form type: bool, lowercase' => [ - 'varType' => 'bool', - 'expected' => 'boolean', - ], - 'Short form type: bool, uppercase' => [ - 'varType' => 'BOOL', - 'expected' => 'boolean', - ], - 'Short form type: double, lowercase' => [ - 'varType' => 'double', - 'expected' => 'float', - ], - 'Short form type: real, mixed case' => [ - 'varType' => 'Real', - 'expected' => 'float', - ], - 'Short form type: double, mixed case' => [ - 'varType' => 'DoUbLe', - 'expected' => 'float', - ], - 'Short form type: int, lowercase' => [ - 'varType' => 'int', - 'expected' => 'integer', - ], - 'Short form type: int, uppercase' => [ - 'varType' => 'INT', - 'expected' => 'integer', - ], - - // Array types. - 'Array type: mixed case keyword, empty parentheses' => [ - 'varType' => 'Array()', - 'expected' => 'array', - ], - 'Array type: short form type as value within the parentheses' => [ - 'varType' => 'array(real)', - 'expected' => 'array(float)', - ], - 'Array type: short form type as key within the parentheses' => [ - 'varType' => 'array(int => object)', - 'expected' => 'array(integer => object)', - ], - 'Array type: valid specification' => [ - 'varType' => 'array(integer => array(string => resource))', - 'expected' => 'array(integer => array(string => resource))', - ], - 'Array type: short form + uppercase types within the parentheses' => [ - 'varType' => 'ARRAY(BOOL => DOUBLE)', - 'expected' => 'array(boolean => float)', - ], - 'Array type: no space around the arrow within the parentheses' => [ - 'varType' => 'array(string=>resource)', - 'expected' => 'array(string => resource)', - ], - - // Incomplete array type. - 'Array type: incomplete specification' => [ - 'varType' => 'array(int =>', - 'expected' => 'array', - ], - - // Custom types are returned unchanged. - 'Unknown type: " => "' => [ - 'varType' => ' => ', - 'expected' => ' => ', - ], - 'Unknown type: "string[]"' => [ - 'varType' => 'string[]', - 'expected' => 'string[]', - ], - 'Unknown type: "\DateTime"' => [ - 'varType' => '\DateTime', - 'expected' => '\DateTime', - ], - ]; - - }//end dataSuggestTypeOther() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Help/HelpTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Help/HelpTest.php deleted file mode 100644 index b3d51a5c..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Help/HelpTest.php +++ /dev/null @@ -1,769 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Util\Help; - -use PHP_CodeSniffer\Tests\ConfigDouble; -use PHP_CodeSniffer\Util\Help; -use PHPUnit\Framework\TestCase; -use ReflectionMethod; -use ReflectionProperty; - -/** - * Test the Help class. - * - * @covers \PHP_CodeSniffer\Util\Help - */ -final class HelpTest extends TestCase -{ - - - /** - * QA check: verify that the category names are at most the minimum screen width - * and that option argument names are always at most half the length of the minimum screen width. - * - * If this test would start failing, either wrapping of argument info would need to be implemented - * or the minimum screen width needs to be upped. - * - * @coversNothing - * - * @return void - */ - public function testQaArgumentNamesAreWithinAcceptableBounds() - { - $help = new Help(new ConfigDouble(), []); - - $reflMethod = new ReflectionMethod($help, 'getAllOptions'); - $reflMethod->setAccessible(true); - $allOptions = $reflMethod->invoke($help); - $reflMethod->setAccessible(false); - - $this->assertGreaterThan(0, count($allOptions), 'No categories found'); - - $minScreenWidth = Help::MIN_WIDTH; - $maxArgWidth = ($minScreenWidth / 2); - - foreach ($allOptions as $category => $options) { - $this->assertLessThanOrEqual( - Help::MIN_WIDTH, - strlen($category), - "Category name $category is longer than the minimum screen width of $minScreenWidth" - ); - - foreach ($options as $option) { - if (isset($option['argument']) === false) { - continue; - } - - $this->assertLessThanOrEqual( - $maxArgWidth, - strlen($option['argument']), - "Option name {$option['argument']} is longer than the half the minimum screen width of $minScreenWidth" - ); - } - } - - }//end testQaArgumentNamesAreWithinAcceptableBounds() - - - /** - * QA check: verify that each option only contains a spacer, text or argument + description combo. - * - * @coversNothing - * - * @return void - */ - public function testQaValidCategoryOptionDefinitions() - { - $help = new Help(new ConfigDouble(), []); - - $reflMethod = new ReflectionMethod($help, 'getAllOptions'); - $reflMethod->setAccessible(true); - $allOptions = $reflMethod->invoke($help); - $reflMethod->setAccessible(false); - - $this->assertGreaterThan(0, count($allOptions), 'No categories found'); - - foreach ($allOptions as $category => $options) { - $this->assertGreaterThan(0, count($options), "No options found in category $category"); - - foreach ($options as $name => $option) { - if (isset($option['spacer']) === true) { - $this->assertStringStartsWith('blank-line', $name, 'The name for spacer items should start with "blank-line"'); - } - - $this->assertFalse( - isset($option['spacer'], $option['text']), - "Option $name: spacer and text should not be combined in one option" - ); - $this->assertFalse( - isset($option['spacer'], $option['argument']), - "Option $name: spacer and argument should not be combined in one option" - ); - $this->assertFalse( - isset($option['spacer'], $option['description']), - "Option $name: spacer and description should not be combined in one option" - ); - $this->assertFalse( - isset($option['text'], $option['argument']), - "Option $name: text and argument should not be combined in one option" - ); - $this->assertFalse( - isset($option['text'], $option['description']), - "Option $name: text and description should not be combined in one option" - ); - - if (isset($option['argument']) === true) { - $this->assertArrayHasKey( - 'description', - $option, - "Option $name: an argument should always be accompanied by a description" - ); - } - - if (isset($option['description']) === true) { - $this->assertArrayHasKey( - 'argument', - $option, - "Option $name: a description should always be accompanied by an argument" - ); - } - }//end foreach - }//end foreach - - }//end testQaValidCategoryOptionDefinitions() - - - /** - * Test receiving an expected exception when the shortOptions parameter is not passed a string value. - * - * @return void - */ - public function testConstructorInvalidArgumentException() - { - $exception = 'InvalidArgumentException'; - $message = 'The $shortOptions parameter must be a string'; - - if (method_exists($this, 'expectException') === true) { - // PHPUnit 5+. - $this->expectException($exception); - $this->expectExceptionMessage($message); - } else { - // PHPUnit 4. - $this->setExpectedException($exception, $message); - } - - new Help(new ConfigDouble(), [], []); - - }//end testConstructorInvalidArgumentException() - - - /** - * Test filtering of the options by requested options. - * - * Tests that: - * - Options not explicitly requested are removed. - * - Short options passed via the longOptions array are still respected. - * - A category gets removed if all options are removed, even if the category still has spacers. - * - * @param array $longOptions The long options which should be displayed. - * @param string $shortOptions The short options which should be displayed. - * @param array $expected The categories expected after filtering with the number - * of expected help items per category. - * - * @dataProvider dataOptionFiltering - * - * @return void - */ - public function testOptionFiltering($longOptions, $shortOptions, $expected) - { - $help = new Help(new ConfigDouble(), $longOptions, $shortOptions); - - $reflProperty = new ReflectionProperty($help, 'activeOptions'); - $reflProperty->setAccessible(true); - $activeOptions = $reflProperty->getValue($help); - $reflProperty->setAccessible(false); - - // Simplify the value to make it comparible. - foreach ($activeOptions as $category => $options) { - $activeOptions[$category] = count($options); - } - - $this->assertSame($expected, $activeOptions, 'Option count per category does not match'); - - }//end testOptionFiltering() - - - /** - * Data provider. - * - * @return array|array>> - */ - public static function dataOptionFiltering() - { - $allLongOptions = explode(',', Help::DEFAULT_LONG_OPTIONS); - $allLongOptions[] = 'cache'; - $allLongOptions[] = 'no-cache'; - $allLongOptions[] = 'report'; - $allLongOptions[] = 'report-file'; - $allLongOptions[] = 'report-report'; - $allLongOptions[] = 'runtime-set'; - $allLongOptions[] = 'config-explain'; - $allLongOptions[] = 'config-set'; - $allLongOptions[] = 'config-delete'; - $allLongOptions[] = 'config-show'; - $allLongOptions[] = 'generator'; - $allLongOptions[] = 'suffix'; - - $allShortOptions = Help::DEFAULT_SHORT_OPTIONS.'saem'; - - return [ - 'No options' => [ - 'longOptions' => [], - 'shortOptions' => '', - 'expected' => [], - ], - 'Invalid options have no influence' => [ - 'longOptions' => [ - 'doesnotexist', - 'invalid', - ], - 'shortOptions' => 'bjrz', - 'expected' => [], - ], - 'Short options passed as long options works fine' => [ - 'longOptions' => [ - 's', - 'suffix', - 'a', - 'e', - 'colors', - ], - 'shortOptions' => '', - 'expected' => [ - 'Rule Selection Options' => 1, - 'Run Options' => 2, - 'Reporting Options' => 2, - ], - ], - 'All options' => [ - 'longOptions' => $allLongOptions, - 'shortOptions' => $allShortOptions, - 'expected' => [ - 'Scan targets' => 8, - 'Rule Selection Options' => 7, - 'Run Options' => 8, - 'Reporting Options' => 19, - 'Configuration Options' => 8, - 'Miscellaneous Options' => 5, - ], - ], - 'Default options only' => [ - 'longOptions' => explode(',', Help::DEFAULT_LONG_OPTIONS), - 'shortOptions' => Help::DEFAULT_SHORT_OPTIONS, - 'expected' => [ - 'Scan targets' => 8, - 'Rule Selection Options' => 5, - 'Run Options' => 4, - 'Reporting Options' => 14, - 'Configuration Options' => 4, - 'Miscellaneous Options' => 5, - ], - ], - 'Only one category' => [ - 'longOptions' => [ - 'file', - 'stdin-path', - 'file-list', - 'filter', - 'ignore', - 'extensions', - ], - 'shortOptions' => '-l', - 'expected' => [ - 'Scan targets' => 8, - ], - ], - 'All except one category' => [ - 'longOptions' => array_diff($allLongOptions, ['version', 'vv', 'vvv']), - 'shortOptions' => str_replace(['h', 'v'], '', $allShortOptions), - 'expected' => [ - 'Scan targets' => 8, - 'Rule Selection Options' => 7, - 'Run Options' => 8, - 'Reporting Options' => 19, - 'Configuration Options' => 8, - ], - ], - ]; - - }//end dataOptionFiltering() - - - /** - * Test filtering of the options by requested options does not leave stray spacers at the start - * or end of a category and that a category does not contain two consecutive spacers. - * - * {@internal Careful! This test may need updates to still test what it is supposed to test - * if/when the defined options in Help::getAllOptions() change.} - * - * @param array $longOptions The long options which should be displayed. - * @param string $shortOptions The short options which should be displayed. - * - * @dataProvider dataOptionFilteringSpacerHandling - * - * @return void - */ - public function testOptionFilteringSpacerHandling($longOptions, $shortOptions) - { - $help = new Help(new ConfigDouble(), $longOptions, $shortOptions); - - $reflProperty = new ReflectionProperty($help, 'activeOptions'); - $reflProperty->setAccessible(true); - $activeOptions = $reflProperty->getValue($help); - $reflProperty->setAccessible(false); - - $this->assertNotEmpty($activeOptions, 'Active options is empty, test is invalid'); - - foreach ($activeOptions as $options) { - $first = reset($options); - $this->assertArrayNotHasKey('spacer', $first, 'Found spacer at start of category'); - - $last = end($options); - $this->assertArrayNotHasKey('spacer', $last, 'Found spacer at end of category'); - - $previousWasSpacer = false; - foreach ($options as $option) { - $this->assertFalse((isset($option['spacer']) && $previousWasSpacer === true), 'Consecutive spacers found'); - $previousWasSpacer = isset($option['spacer']); - } - } - - }//end testOptionFilteringSpacerHandling() - - - /** - * Data provider. - * - * @return array>> - */ - public static function dataOptionFilteringSpacerHandling() - { - return [ - 'No spacer at start of category' => [ - 'longOptions' => ['generator'], - 'shortOptions' => 'ie', - ], - 'No spacer at end of category' => [ - 'longOptions' => [ - 'encoding', - 'tab-width', - ], - 'shortOptions' => '', - ], - 'No consecutive spacers within category' => [ - 'longOptions' => [ - 'report', - 'report-file', - 'report-report', - 'report-width', - 'basepath', - 'ignore-annotations', - 'colors', - 'no-colors', - ], - 'shortOptions' => 'spqm', - ], - ]; - - }//end dataOptionFilteringSpacerHandling() - - - /** - * Test that if no short/long options are passed, only usage information is displayed (CS mode). - * - * @param array $cliArgs Command line arguments. - * @param string $expectedRegex Regex to validate expected output. - * - * @dataProvider dataDisplayUsage - * - * @return void - */ - public function testDisplayUsageCS($cliArgs, $expectedRegex) - { - if (PHP_CODESNIFFER_CBF === true) { - $this->markTestSkipped('This test needs CS mode to run'); - } - - $expectedRegex = str_replace('phpc(bf|s)', 'phpcs', $expectedRegex); - $this->verifyDisplayUsage($cliArgs, $expectedRegex); - - }//end testDisplayUsageCS() - - - /** - * Test that if no short/long options are passed, only usage information is displayed (CBF mode). - * - * @param array $cliArgs Command line arguments. - * @param string $expectedRegex Regex to validate expected output. - * - * @dataProvider dataDisplayUsage - * @group CBF - * - * @return void - */ - public function testDisplayUsageCBF($cliArgs, $expectedRegex) - { - if (PHP_CODESNIFFER_CBF === false) { - $this->markTestSkipped('This test needs CBF mode to run'); - } - - $expectedRegex = str_replace('phpc(bf|s)', 'phpcbf', $expectedRegex); - $this->verifyDisplayUsage($cliArgs, $expectedRegex); - - }//end testDisplayUsageCBF() - - - /** - * Helper method to test that if no short/long options are passed, only usage information is displayed - * (and displayed correctly). - * - * @param array $cliArgs Command line arguments. - * @param string $expectedRegex Regex to validate expected output. - * - * @return void - */ - private function verifyDisplayUsage($cliArgs, $expectedRegex) - { - $help = new Help(new ConfigDouble($cliArgs), []); - - $this->expectOutputRegex($expectedRegex); - - $help->display(); - - }//end verifyDisplayUsage() - - - /** - * Data provider. - * - * @return array>> - */ - public static function dataDisplayUsage() - { - return [ - 'Usage without colors' => [ - 'cliArgs' => ['--no-colors'], - 'expectedRegex' => '`^\s*Usage:\s+phpc(bf|s) \[options\] \\s+$`', - ], - 'Usage with colors' => [ - 'cliArgs' => ['--colors'], - 'expectedRegex' => '`^\s*\\033\[33mUsage:\\033\[0m\s+phpc(bf|s) \[options\] \\s+$`', - ], - ]; - - }//end dataDisplayUsage() - - - /** - * Test the column width calculations. - * - * This tests the following aspects: - * 1. That the report width is never less than Help::MIN_WIDTH, even when a smaller width is passed. - * 2. That the first column width is calculated correctly and is based on the longest argument. - * 3. That the word wrapping of the description respects the maximum report width. - * 4. That if the description is being wrapped, the indent for the second line is calculated correctly. - * - * @param int $reportWidth Report width for the test. - * @param array $longOptions The long options which should be displayed. - * @param string $expectedOutput Expected output. - * - * @dataProvider dataReportWidthCalculations - * - * @return void - */ - public function testReportWidthCalculations($reportWidth, $longOptions, $expectedOutput) - { - $config = new ConfigDouble(["--report-width=$reportWidth", '--no-colors']); - $help = new Help($config, $longOptions); - - $reflMethod = new ReflectionMethod($help, 'printCategories'); - $reflMethod->setAccessible(true); - $reflMethod->invoke($help); - $reflMethod->setAccessible(false); - - $this->expectOutputString($expectedOutput); - - }//end testReportWidthCalculations() - - - /** - * Data provider. - * - * @return array>> - */ - public static function dataReportWidthCalculations() - { - $longOptions = [ - 'e', - 'generator', - ]; - - // phpcs:disable Squiz.Strings.ConcatenationSpacing.PaddingFound -- Test readability is more important. - return [ - 'Report width small: 40; forces report width to minimum width of 60' => [ - 'reportWidth' => 40, - 'longOptions' => $longOptions, - 'expectedOutput' => PHP_EOL.'Rule Selection Options:'.PHP_EOL - .' -e Explain a standard by showing the'.PHP_EOL - .' names of all the sniffs it'.PHP_EOL - .' includes.'.PHP_EOL - .' --generator= Show documentation for a standard.'.PHP_EOL - .' Use either the "HTML", "Markdown"'.PHP_EOL - .' or "Text" generator.'.PHP_EOL, - ], - 'Report width is minimum: 60 (= self::MIN_WIDTH)' => [ - 'reportWidth' => Help::MIN_WIDTH, - 'longOptions' => $longOptions, - 'expectedOutput' => PHP_EOL.'Rule Selection Options:'.PHP_EOL - .' -e Explain a standard by showing the'.PHP_EOL - .' names of all the sniffs it'.PHP_EOL - .' includes.'.PHP_EOL - .' --generator= Show documentation for a standard.'.PHP_EOL - .' Use either the "HTML", "Markdown"'.PHP_EOL - .' or "Text" generator.'.PHP_EOL, - ], - 'Report width matches length for one line, not the other: 96; only one should wrap' => [ - 'reportWidth' => 96, - 'longOptions' => $longOptions, - 'expectedOutput' => PHP_EOL.'Rule Selection Options:'.PHP_EOL - .' -e Explain a standard by showing the names of all the sniffs it includes.'.PHP_EOL - .' --generator= Show documentation for a standard. Use either the "HTML", "Markdown"'.PHP_EOL - .' or "Text" generator.'.PHP_EOL, - ], - 'Report width matches longest line: 119; the messages should not wrap and there should be no stray new line at the end' => [ - 'reportWidth' => 119, - 'longOptions' => $longOptions, - 'expectedOutput' => PHP_EOL.'Rule Selection Options:'.PHP_EOL - .' -e Explain a standard by showing the names of all the sniffs it includes.'.PHP_EOL - .' --generator= Show documentation for a standard. Use either the "HTML", "Markdown" or "Text" generator.'.PHP_EOL, - ], - ]; - // phpcs:enable - - }//end dataReportWidthCalculations() - - - /** - * Verify that variable elements in an argument specification get colorized correctly. - * - * @param string $input String to colorize. - * @param string $expected Expected function output. - * - * @dataProvider dataColorizeVariableInput - * - * @return void - */ - public function testColorizeVariableInput($input, $expected) - { - $help = new Help(new ConfigDouble(), []); - - $reflMethod = new ReflectionMethod($help, 'colorizeVariableInput'); - $reflMethod->setAccessible(true); - $result = $reflMethod->invoke($help, $input); - $reflMethod->setAccessible(false); - - $this->assertSame($expected, $result); - - }//end testColorizeVariableInput() - - - /** - * Data provider. - * - * @return array>> - */ - public static function dataColorizeVariableInput() - { - return [ - 'Empty string' => [ - 'input' => '', - 'expected' => '', - ], - 'String without variable element(s)' => [ - 'input' => 'This is text', - 'expected' => 'This is text', - ], - 'String with variable element' => [ - 'input' => 'This text', - 'expected' => "This \033[36m\033[32m text", - ], - 'String with multiple variable elements' => [ - 'input' => ' is ', - 'expected' => "\033[36m\033[32m is \033[36m\033[32m", - ], - 'String with unclosed variable element' => [ - 'input' => 'This 'This [ - 'input' => ' text>', - 'expected' => "\033[36m text>\033[32m", - ], - 'String with nested elements and surrounding text' => [ - 'input' => 'Start text> end', - 'expected' => "Start \033[36m text>\033[32m end", - ], - ]; - - }//end dataColorizeVariableInput() - - - /** - * Test the various option types within a category get displayed correctly. - * - * @param array> $input The options to print. - * @param array $expectedRegex Regexes to validate expected output. - * - * @dataProvider dataPrintCategoryOptions - * - * @return void - */ - public function testPrintCategoryOptionsNoColor($input, $expectedRegex) - { - $config = new ConfigDouble(['--no-colors']); - $help = new Help($config, []); - - $reflProperty = new ReflectionProperty($help, 'activeOptions'); - $reflProperty->setAccessible(true); - $reflProperty->setValue($help, ['cat' => $input]); - $reflProperty->setAccessible(false); - - $reflMethod = new ReflectionMethod($help, 'setMaxOptionNameLength'); - $reflMethod->setAccessible(true); - $reflMethod->invoke($help); - $reflMethod->setAccessible(false); - - $reflMethod = new ReflectionMethod($help, 'printCategoryOptions'); - $reflMethod->setAccessible(true); - $reflMethod->invoke($help, $input); - $reflMethod->setAccessible(false); - - $this->expectOutputRegex($expectedRegex['no-color']); - - }//end testPrintCategoryOptionsNoColor() - - - /** - * Test the various option types within a category get displayed correctly. - * - * @param array> $input The options to print. - * @param array $expectedRegex Regexes to validate expected output. - * - * @dataProvider dataPrintCategoryOptions - * - * @return void - */ - public function testPrintCategoryOptionsColor($input, $expectedRegex) - { - $config = new ConfigDouble(['--colors']); - $help = new Help($config, []); - - $reflProperty = new ReflectionProperty($help, 'activeOptions'); - $reflProperty->setAccessible(true); - $reflProperty->setValue($help, ['cat' => $input]); - $reflProperty->setAccessible(false); - - $reflMethod = new ReflectionMethod($help, 'setMaxOptionNameLength'); - $reflMethod->setAccessible(true); - $reflMethod->invoke($help); - $reflMethod->setAccessible(false); - - $reflMethod = new ReflectionMethod($help, 'printCategoryOptions'); - $reflMethod->setAccessible(true); - $reflMethod->invoke($help, $input); - $reflMethod->setAccessible(false); - - $this->expectOutputRegex($expectedRegex['color']); - - }//end testPrintCategoryOptionsColor() - - - /** - * Data provider. - * - * @return array>|array>> - */ - public static function dataPrintCategoryOptions() - { - $indentLength = strlen(Help::INDENT); - $gutterLength = strlen(Help::GUTTER); - - // phpcs:disable Squiz.Strings.ConcatenationSpacing.PaddingFound -- Test readability is more important. - // phpcs:disable Generic.Strings.UnnecessaryStringConcat.Found -- Test readability is more important. - return [ - 'Input: arg, spacer, arg; new lines in description get preserved' => [ - 'input' => [ - 'short-option' => [ - 'argument' => '-a', - 'description' => 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.', - ], - 'blank-line' => [ - 'spacer' => '', - ], - 'long-option-multi-line-description' => [ - 'argument' => '--something=', - 'description' => 'Proin sit amet malesuada libero, finibus bibendum tortor. Nulla vitae quam nec orci finibus pharetra.' - ."\n".'Nam eget blandit dui.', - ], - ], - 'expectedRegex' => [ - 'no-color' => '`^ {'.$indentLength.'}-a {15} {'.$gutterLength.'}Lorem ipsum dolor sit amet, consectetur adipiscing elit\.\R' - .'\R' - .' {'.$indentLength.'}--something= {'.$gutterLength.'}Proin sit amet malesuada libero, finibus bibendum tortor\.\R' - .' {'.($indentLength + 17).'} {'.$gutterLength.'}Nulla vitae quam nec orci finibus pharetra\.\R' - .' {'.($indentLength + 17).'} {'.$gutterLength.'}Nam eget blandit dui\.\R$`', - 'color' => '`^ {'.$indentLength.'}\\033\[32m-a {15}\\033\[0m {'.$gutterLength.'}Lorem ipsum dolor sit amet, consectetur adipiscing elit\.\R' - .'\R' - .' {'.$indentLength.'}\\033\[32m--something=\\033\[36m\\033\[32m\\033\[0m {'.$gutterLength.'}Proin sit amet malesuada libero, finibus bibendum tortor\.\R' - .' {'.($indentLength + 17).'} {'.$gutterLength.'}Nulla vitae quam nec orci finibus pharetra\.\R' - .' {'.($indentLength + 17).'} {'.$gutterLength.'}Nam eget blandit dui\.\R$`', - ], - ], - 'Input: text, arg, text; multi-line text gets wrapped' => [ - 'input' => [ - 'single-line-text' => [ - 'text' => 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.', - ], - 'argument-description' => [ - 'argument' => '--something', - 'description' => 'Fusce dapibus sodales est eu sodales.', - ], - 'multi-line-text-gets-wrapped' => [ - 'text' => 'Maecenas vulputate ligula vel feugiat finibus. Mauris sem dui, pretium in turpis auctor, consectetur ultrices lorem.', - ], - ], - 'expectedRegex' => [ - 'no-color' => '`^ {'.$indentLength.'}Lorem ipsum dolor sit amet, consectetur adipiscing elit\.\R' - .' {'.$indentLength.'}--something {'.$gutterLength.'}Fusce dapibus sodales est eu sodales\.\R' - .' {'.$indentLength.'}Maecenas vulputate ligula vel feugiat finibus. Mauris sem dui, pretium in\R' - .' {'.$indentLength.'}turpis auctor, consectetur ultrices lorem\.\R$`', - 'color' => '`^ {'.$indentLength.'}Lorem ipsum dolor sit amet, consectetur adipiscing elit\.\R' - .' {'.$indentLength.'}\\033\[32m--something\\033\[0m {'.$gutterLength.'}Fusce dapibus sodales est eu sodales\.\R' - .' {'.$indentLength.'}Maecenas vulputate ligula vel feugiat finibus. Mauris sem dui, pretium in\R' - .' {'.$indentLength.'}turpis auctor, consectetur ultrices lorem\.\R$`', - ], - ], - ]; - // phpcs:enable - - }//end dataPrintCategoryOptions() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Timing/GetHumanReadableDurationTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Timing/GetHumanReadableDurationTest.php deleted file mode 100644 index 93b3d05e..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Timing/GetHumanReadableDurationTest.php +++ /dev/null @@ -1,114 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Util\Timing; - -use PHP_CodeSniffer\Util\Timing; -use PHPUnit\Framework\TestCase; - -/** - * Tests for the \PHP_CodeSniffer\Util\Timing::getHumanReadableDuration() method. - * - * @covers \PHP_CodeSniffer\Util\Timing::getHumanReadableDuration - */ -final class GetHumanReadableDurationTest extends TestCase -{ - - - /** - * Test the method. - * - * @param int|float $duration A duration in milliseconds. - * @param string $expected The expected human readable string. - * - * @dataProvider dataGetHumanReadableDuration - * - * @return void - */ - public function testGetHumanReadableDuration($duration, $expected) - { - $this->assertSame($expected, Timing::getHumanReadableDuration($duration)); - - }//end testGetHumanReadableDuration() - - - /** - * Data provider. - * - * @return array> - */ - public static function dataGetHumanReadableDuration() - { - return [ - 'Duration: 0' => [ - 'duration' => 0, - 'expected' => '0ms', - ], - 'Duration: 13 milliseconds' => [ - 'duration' => 13.232101565, - 'expected' => '13ms', - ], - 'Duration: 14 milliseconds' => [ - 'duration' => 13.916015625, - 'expected' => '14ms', - ], - 'Duration: 999 milliseconds' => [ - 'duration' => 999.2236, - 'expected' => '999ms', - ], - 'Duration: 999+ milliseconds' => [ - 'duration' => 999.89236, - 'expected' => '1000ms', - ], - 'Duration: 1 second' => [ - 'duration' => 1000, - 'expected' => '1 secs', - ], - 'Duration: slightly more than 1 second' => [ - 'duration' => 1001.178215, - 'expected' => '1 secs', - ], - 'Duration: just under a 1 minute' => [ - 'duration' => 59999.3851, - 'expected' => '60 secs', - ], - 'Duration: exactly 1 minute' => [ - 'duration' => 60000, - 'expected' => '1 mins', - ], - 'Duration: slightly more than 1 minute' => [ - 'duration' => 60001.7581235, - 'expected' => '1 mins', - ], - 'Duration: 1 minute, just under half a second' => [ - 'duration' => 60499.83639, - 'expected' => '1 mins, 0.5 secs', - ], - 'Duration: 1 minute, just over half a second' => [ - 'duration' => 60501.961238, - 'expected' => '1 mins, 0.5 secs', - ], - 'Duration: 1 minute, 1 second' => [ - 'duration' => 61000, - 'expected' => '1 mins, 1 secs', - ], - 'Duration: exactly 1 hour' => [ - 'duration' => 3600000, - 'expected' => '60 mins', - ], - 'Duration: 89.4 mins' => [ - 'duration' => 5364000, - 'expected' => '89 mins, 24 secs', - ], - ]; - - }//end dataGetHumanReadableDuration() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Timing/TimingTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Timing/TimingTest.php deleted file mode 100644 index 79952c8c..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Timing/TimingTest.php +++ /dev/null @@ -1,123 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Util\Timing; - -use PHP_CodeSniffer\Util\Timing; -use PHPUnit\Framework\TestCase; - -/** - * Tests for the \PHP_CodeSniffer\Util\Timing class. - * - * {@internal These tests need to run in separate processes as the Timing class uses static properties - * to keep track of the start time and whether or not the runtime has been printed and these - * can't be unset/reset once set.} - * - * @covers \PHP_CodeSniffer\Util\Timing - * - * @runTestsInSeparateProcesses - * @preserveGlobalState disabled - */ -final class TimingTest extends TestCase -{ - - - /** - * Verify that getDuration() returns 0 when the timer wasn't started. - * - * @return void - */ - public function testGetDurationWithoutStartReturnsZero() - { - $this->assertSame(0, Timing::getDuration()); - - }//end testGetDurationWithoutStartReturnsZero() - - - /** - * Verify that getDuration() returns 0 when the timer wasn't started. - * - * @return void - */ - public function testGetDurationWithStartReturnsMilliseconds() - { - Timing::startTiming(); - usleep(1500); - $duration = Timing::getDuration(); - - $this->assertTrue(is_float($duration)); - $this->assertGreaterThan(1, $duration); - $this->assertLessThan(15, $duration); - - }//end testGetDurationWithStartReturnsMilliseconds() - - - /** - * Verify that printRunTime() doesn't print anything if the timer wasn't started. - * - * @return void - */ - public function testTimeIsNotPrintedIfTimerWasNeverStarted() - { - $this->expectOutputString(''); - Timing::printRunTime(); - - }//end testTimeIsNotPrintedIfTimerWasNeverStarted() - - - /** - * Verify that printRunTime() doesn't print anything if the timer wasn't started. - * - * @return void - */ - public function testTimeIsNotPrintedIfTimerWasNeverStartedEvenWhenForced() - { - $this->expectOutputString(''); - Timing::printRunTime(true); - - }//end testTimeIsNotPrintedIfTimerWasNeverStartedEvenWhenForced() - - - /** - * Verify that printRunTime() when called multiple times only prints the runtime information once. - * - * @return void - */ - public function testTimeIsPrintedOnlyOnce() - { - $this->expectOutputRegex('`^Time: [0-9]+ms; Memory: [0-9\.]+MB'.PHP_EOL.PHP_EOL.'$`'); - - Timing::startTiming(); - usleep(2000); - Timing::printRunTime(); - Timing::printRunTime(); - Timing::printRunTime(); - - }//end testTimeIsPrintedOnlyOnce() - - - /** - * Verify that printRunTime() when called multiple times prints the runtime information multiple times if forced. - * - * @return void - */ - public function testTimeIsPrintedMultipleTimesOnlyIfForced() - { - $this->expectOutputRegex('`^(Time: [0-9]+ms; Memory: [0-9\.]+MB'.PHP_EOL.PHP_EOL.'){3}$`'); - - Timing::startTiming(); - usleep(2000); - Timing::printRunTime(true); - Timing::printRunTime(true); - Timing::printRunTime(true); - - }//end testTimeIsPrintedMultipleTimesOnlyIfForced() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Tokens/GetHighestWeightedTokenTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Tokens/GetHighestWeightedTokenTest.php deleted file mode 100644 index f03d20a3..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Tokens/GetHighestWeightedTokenTest.php +++ /dev/null @@ -1,162 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Util\Tokens; - -use PHP_CodeSniffer\Util\Tokens; -use PHPUnit\Framework\TestCase; - -/** - * Tests for the \PHP_CodeSniffer\Util\Tokens::getHighestWeightedToken() method. - * - * @covers \PHP_CodeSniffer\Util\Tokens::getHighestWeightedToken - */ -final class GetHighestWeightedTokenTest extends TestCase -{ - - - /** - * Test the method. - * - * @param array $tokens The tokens to find the heighest weighted one. - * @param int|false $expected The expected function return value. - * - * @dataProvider dataGetHighestWeightedToken - * - * @return void - */ - public function testGetHighestWeightedToken($tokens, $expected) - { - $this->assertSame($expected, Tokens::getHighestWeightedToken($tokens)); - - }//end testGetHighestWeightedToken() - - - /** - * Data provider. - * - * @return array> - */ - public static function dataGetHighestWeightedToken() - { - $data = [ - 'Array of non-tokens passed, returns first' => [ - 'tokens' => [ - PHP_SAPI, - PHP_MAJOR_VERSION, - PHP_OS, - ], - 'expected' => PHP_SAPI, - ], - 'No weightings available for any of the selected tokens, first one wins' => [ - 'tokens' => [ - T_VARIABLE, - T_STRING, - T_EXTENDS, - T_IMPLEMENTS, - ], - 'expected' => T_VARIABLE, - ], - 'single token always returns that token' => [ - 'tokens' => [T_VARIABLE], - 'expected' => T_VARIABLE, - ], - 'Unknown and known token, known token wins' => [ - 'tokens' => [ - T_VARIABLE, - T_SELF, - ], - 'expected' => T_SELF, - ], - 'Known and unknown token, known token wins' => [ - 'tokens' => [ - T_CLOSURE, - T_STRING, - ], - 'expected' => T_CLOSURE, - ], - 'Two tokens with equal weights passed, first one wins' => [ - 'tokens' => [ - T_CLOSURE, - T_FUNCTION, - ], - 'expected' => T_CLOSURE, - ], - 'Five tokens with equal weights passed, first one wins' => [ - 'tokens' => [ - T_NAMESPACE, - T_TRAIT, - T_ENUM, - T_CLASS, - T_INTERFACE, - ], - 'expected' => T_NAMESPACE, - ], - 'Tokens with different weights passed, heightest (25) wins' => [ - 'tokens' => [ - T_BITWISE_OR, - T_SELF, - T_MUL_EQUAL, - ], - 'expected' => T_SELF, - ], - 'Tokens with different weights passed, heightest (50) wins' => [ - 'tokens' => [ - T_BITWISE_XOR, - T_CATCH, - T_SPACESHIP, - T_PARENT, - ], - 'expected' => T_CATCH, - ], - ]; - - $high100 = [ - T_MULTIPLY, - T_BITWISE_AND, - T_SELF, - T_FOREACH, - T_CLOSURE, - ]; - $data['Tokens with different weights passed, ordered low-high, heightest (100) wins'] = [ - 'tokens' => $high100, - 'expected' => T_CLOSURE, - ]; - - shuffle($high100); - $data['Tokens with different weights passed, order random, heightest (100) wins'] = [ - 'tokens' => $high100, - 'expected' => T_CLOSURE, - ]; - - $high1000 = [ - T_ENUM, - T_FUNCTION, - T_ELSEIF, - T_PARENT, - T_BITWISE_OR, - T_MODULUS, - ]; - $data['Tokens with different weights passed, ordered low-high, heightest (1000) wins'] = [ - 'tokens' => $high1000, - 'expected' => T_ENUM, - ]; - - shuffle($high1000); - $data['Tokens with different weights passed, order random, heightest (1000) wins'] = [ - 'tokens' => $high1000, - 'expected' => T_ENUM, - ]; - - return $data; - - }//end dataGetHighestWeightedToken() - - -}//end class diff --git a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Tokens/TokenNameTest.php b/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Tokens/TokenNameTest.php deleted file mode 100644 index 435df071..00000000 --- a/docker/statistics/vendor/squizlabs/php_codesniffer/tests/Core/Util/Tokens/TokenNameTest.php +++ /dev/null @@ -1,81 +0,0 @@ - - * @copyright 2024 PHPCSStandards and contributors - * @license https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/licence.txt BSD Licence - */ - -namespace PHP_CodeSniffer\Tests\Core\Util\Tokens; - -use PHP_CodeSniffer\Util\Tokens; -use PHPUnit\Framework\TestCase; - -/** - * Tests for the \PHP_CodeSniffer\Util\Tokens::tokenName() method. - * - * @covers \PHP_CodeSniffer\Util\Tokens::tokenName - */ -final class TokenNameTest extends TestCase -{ - - - /** - * Test the method. - * - * @param int|string $tokenCode The PHP/PHPCS token code to get the name for. - * @param string $expected The expected token name. - * - * @dataProvider dataTokenName - * - * @return void - */ - public function testTokenName($tokenCode, $expected) - { - $this->assertSame($expected, Tokens::tokenName($tokenCode)); - - }//end testTokenName() - - - /** - * Data provider. - * - * @return array> - */ - public static function dataTokenName() - { - return [ - 'PHP native token: T_ECHO' => [ - 'tokenCode' => T_ECHO, - 'expected' => 'T_ECHO', - ], - 'PHP native token: T_FUNCTION' => [ - 'tokenCode' => T_FUNCTION, - 'expected' => 'T_FUNCTION', - ], - 'PHPCS native token: T_CLOSURE' => [ - 'tokenCode' => T_CLOSURE, - 'expected' => 'T_CLOSURE', - ], - 'PHPCS native token: T_STRING_CONCAT' => [ - 'tokenCode' => T_STRING_CONCAT, - 'expected' => 'T_STRING_CONCAT', - ], - - // Document the current behaviour for invalid input. - // This behaviour is subject to change. - 'Non-token integer passed' => [ - 'tokenCode' => 100000, - 'expected' => 'UNKNOWN', - ], - 'Non-token string passed' => [ - 'tokenCode' => 'something', - 'expected' => 'ing', - ], - ]; - - }//end dataTokenName() - - -}//end class diff --git a/docker/statistics/vendor/symfony/css-selector/Node/MatchingNode.php b/docker/statistics/vendor/symfony/css-selector/Node/MatchingNode.php deleted file mode 100644 index 9b595035..00000000 --- a/docker/statistics/vendor/symfony/css-selector/Node/MatchingNode.php +++ /dev/null @@ -1,55 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\CssSelector\Node; - -/** - * Represents a ":is()" node. - * - * This component is a port of the Python cssselect library, - * which is copyright Ian Bicking, @see https://github.com/SimonSapin/cssselect. - * - * @author Hubert Lenoir - * - * @internal - */ -class MatchingNode extends AbstractNode -{ - /** - * @param array $arguments - */ - public function __construct( - public readonly NodeInterface $selector, - public readonly array $arguments = [], - ) { - } - - public function getSpecificity(): Specificity - { - $argumentsSpecificity = array_reduce( - $this->arguments, - fn ($c, $n) => 1 === $n->getSpecificity()->compareTo($c) ? $n->getSpecificity() : $c, - new Specificity(0, 0, 0), - ); - - return $this->selector->getSpecificity()->plus($argumentsSpecificity); - } - - public function __toString(): string - { - $selectorArguments = array_map( - fn ($n): string => ltrim((string) $n, '*'), - $this->arguments, - ); - - return \sprintf('%s[%s:is(%s)]', $this->getNodeName(), $this->selector, implode(', ', $selectorArguments)); - } -} diff --git a/docker/statistics/vendor/symfony/css-selector/Node/SpecificityAdjustmentNode.php b/docker/statistics/vendor/symfony/css-selector/Node/SpecificityAdjustmentNode.php deleted file mode 100644 index 58659cca..00000000 --- a/docker/statistics/vendor/symfony/css-selector/Node/SpecificityAdjustmentNode.php +++ /dev/null @@ -1,49 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\CssSelector\Node; - -/** - * Represents a ":where()" node. - * - * This component is a port of the Python cssselect library, - * which is copyright Ian Bicking, @see https://github.com/SimonSapin/cssselect. - * - * @author Hubert Lenoir - * - * @internal - */ -class SpecificityAdjustmentNode extends AbstractNode -{ - /** - * @param array $arguments - */ - public function __construct( - public readonly NodeInterface $selector, - public readonly array $arguments = [], - ) { - } - - public function getSpecificity(): Specificity - { - return $this->selector->getSpecificity(); - } - - public function __toString(): string - { - $selectorArguments = array_map( - fn ($n) => ltrim((string) $n, '*'), - $this->arguments, - ); - - return \sprintf('%s[%s:where(%s)]', $this->getNodeName(), $this->selector, implode(', ', $selectorArguments)); - } -} diff --git a/docker/statistics/vendor/symfony/polyfill-ctype/Ctype.php b/docker/statistics/vendor/symfony/polyfill-ctype/Ctype.php new file mode 100644 index 00000000..ba75a2c9 --- /dev/null +++ b/docker/statistics/vendor/symfony/polyfill-ctype/Ctype.php @@ -0,0 +1,232 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Symfony\Polyfill\Ctype; + +/** + * Ctype implementation through regex. + * + * @internal + * + * @author Gert de Pagter + */ +final class Ctype +{ + /** + * Returns TRUE if every character in text is either a letter or a digit, FALSE otherwise. + * + * @see https://php.net/ctype-alnum + * + * @param mixed $text + * + * @return bool + */ + public static function ctype_alnum($text) + { + $text = self::convert_int_to_char_for_ctype($text, __FUNCTION__); + + return \is_string($text) && '' !== $text && !preg_match('/[^A-Za-z0-9]/', $text); + } + + /** + * Returns TRUE if every character in text is a letter, FALSE otherwise. + * + * @see https://php.net/ctype-alpha + * + * @param mixed $text + * + * @return bool + */ + public static function ctype_alpha($text) + { + $text = self::convert_int_to_char_for_ctype($text, __FUNCTION__); + + return \is_string($text) && '' !== $text && !preg_match('/[^A-Za-z]/', $text); + } + + /** + * Returns TRUE if every character in text is a control character from the current locale, FALSE otherwise. + * + * @see https://php.net/ctype-cntrl + * + * @param mixed $text + * + * @return bool + */ + public static function ctype_cntrl($text) + { + $text = self::convert_int_to_char_for_ctype($text, __FUNCTION__); + + return \is_string($text) && '' !== $text && !preg_match('/[^\x00-\x1f\x7f]/', $text); + } + + /** + * Returns TRUE if every character in the string text is a decimal digit, FALSE otherwise. + * + * @see https://php.net/ctype-digit + * + * @param mixed $text + * + * @return bool + */ + public static function ctype_digit($text) + { + $text = self::convert_int_to_char_for_ctype($text, __FUNCTION__); + + return \is_string($text) && '' !== $text && !preg_match('/[^0-9]/', $text); + } + + /** + * Returns TRUE if every character in text is printable and actually creates visible output (no white space), FALSE otherwise. + * + * @see https://php.net/ctype-graph + * + * @param mixed $text + * + * @return bool + */ + public static function ctype_graph($text) + { + $text = self::convert_int_to_char_for_ctype($text, __FUNCTION__); + + return \is_string($text) && '' !== $text && !preg_match('/[^!-~]/', $text); + } + + /** + * Returns TRUE if every character in text is a lowercase letter. + * + * @see https://php.net/ctype-lower + * + * @param mixed $text + * + * @return bool + */ + public static function ctype_lower($text) + { + $text = self::convert_int_to_char_for_ctype($text, __FUNCTION__); + + return \is_string($text) && '' !== $text && !preg_match('/[^a-z]/', $text); + } + + /** + * Returns TRUE if every character in text will actually create output (including blanks). Returns FALSE if text contains control characters or characters that do not have any output or control function at all. + * + * @see https://php.net/ctype-print + * + * @param mixed $text + * + * @return bool + */ + public static function ctype_print($text) + { + $text = self::convert_int_to_char_for_ctype($text, __FUNCTION__); + + return \is_string($text) && '' !== $text && !preg_match('/[^ -~]/', $text); + } + + /** + * Returns TRUE if every character in text is printable, but neither letter, digit or blank, FALSE otherwise. + * + * @see https://php.net/ctype-punct + * + * @param mixed $text + * + * @return bool + */ + public static function ctype_punct($text) + { + $text = self::convert_int_to_char_for_ctype($text, __FUNCTION__); + + return \is_string($text) && '' !== $text && !preg_match('/[^!-\/\:-@\[-`\{-~]/', $text); + } + + /** + * Returns TRUE if every character in text creates some sort of white space, FALSE otherwise. Besides the blank character this also includes tab, vertical tab, line feed, carriage return and form feed characters. + * + * @see https://php.net/ctype-space + * + * @param mixed $text + * + * @return bool + */ + public static function ctype_space($text) + { + $text = self::convert_int_to_char_for_ctype($text, __FUNCTION__); + + return \is_string($text) && '' !== $text && !preg_match('/[^\s]/', $text); + } + + /** + * Returns TRUE if every character in text is an uppercase letter. + * + * @see https://php.net/ctype-upper + * + * @param mixed $text + * + * @return bool + */ + public static function ctype_upper($text) + { + $text = self::convert_int_to_char_for_ctype($text, __FUNCTION__); + + return \is_string($text) && '' !== $text && !preg_match('/[^A-Z]/', $text); + } + + /** + * Returns TRUE if every character in text is a hexadecimal 'digit', that is a decimal digit or a character from [A-Fa-f] , FALSE otherwise. + * + * @see https://php.net/ctype-xdigit + * + * @param mixed $text + * + * @return bool + */ + public static function ctype_xdigit($text) + { + $text = self::convert_int_to_char_for_ctype($text, __FUNCTION__); + + return \is_string($text) && '' !== $text && !preg_match('/[^A-Fa-f0-9]/', $text); + } + + /** + * Converts integers to their char versions according to normal ctype behaviour, if needed. + * + * If an integer between -128 and 255 inclusive is provided, + * it is interpreted as the ASCII value of a single character + * (negative values have 256 added in order to allow characters in the Extended ASCII range). + * Any other integer is interpreted as a string containing the decimal digits of the integer. + * + * @param mixed $int + * @param string $function + * + * @return mixed + */ + private static function convert_int_to_char_for_ctype($int, $function) + { + if (!\is_int($int)) { + return $int; + } + + if ($int < -128 || $int > 255) { + return (string) $int; + } + + if (\PHP_VERSION_ID >= 80100) { + @trigger_error($function.'(): Argument of type int will be interpreted as string in the future', \E_USER_DEPRECATED); + } + + if ($int < 0) { + $int += 256; + } + + return \chr($int); + } +} diff --git a/docker/statistics/vendor/barryvdh/laravel-dompdf/LICENSE b/docker/statistics/vendor/symfony/polyfill-ctype/LICENSE similarity index 87% rename from docker/statistics/vendor/barryvdh/laravel-dompdf/LICENSE rename to docker/statistics/vendor/symfony/polyfill-ctype/LICENSE index f8f49e97..7536caea 100644 --- a/docker/statistics/vendor/barryvdh/laravel-dompdf/LICENSE +++ b/docker/statistics/vendor/symfony/polyfill-ctype/LICENSE @@ -1,13 +1,11 @@ -MIT License - -Copyright (c) 2021 barryvdh +Copyright (c) 2018-present Fabien Potencier Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +copies of the Software, and to permit persons to whom the Software is furnished +to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. @@ -17,5 +15,5 @@ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/docker/statistics/vendor/symfony/polyfill-ctype/README.md b/docker/statistics/vendor/symfony/polyfill-ctype/README.md new file mode 100644 index 00000000..b144d03c --- /dev/null +++ b/docker/statistics/vendor/symfony/polyfill-ctype/README.md @@ -0,0 +1,12 @@ +Symfony Polyfill / Ctype +======================== + +This component provides `ctype_*` functions to users who run php versions without the ctype extension. + +More information can be found in the +[main Polyfill README](https://github.com/symfony/polyfill/blob/main/README.md). + +License +======= + +This library is released under the [MIT license](LICENSE). diff --git a/docker/statistics/vendor/symfony/polyfill-ctype/bootstrap.php b/docker/statistics/vendor/symfony/polyfill-ctype/bootstrap.php new file mode 100644 index 00000000..d54524b3 --- /dev/null +++ b/docker/statistics/vendor/symfony/polyfill-ctype/bootstrap.php @@ -0,0 +1,50 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +use Symfony\Polyfill\Ctype as p; + +if (\PHP_VERSION_ID >= 80000) { + return require __DIR__.'/bootstrap80.php'; +} + +if (!function_exists('ctype_alnum')) { + function ctype_alnum($text) { return p\Ctype::ctype_alnum($text); } +} +if (!function_exists('ctype_alpha')) { + function ctype_alpha($text) { return p\Ctype::ctype_alpha($text); } +} +if (!function_exists('ctype_cntrl')) { + function ctype_cntrl($text) { return p\Ctype::ctype_cntrl($text); } +} +if (!function_exists('ctype_digit')) { + function ctype_digit($text) { return p\Ctype::ctype_digit($text); } +} +if (!function_exists('ctype_graph')) { + function ctype_graph($text) { return p\Ctype::ctype_graph($text); } +} +if (!function_exists('ctype_lower')) { + function ctype_lower($text) { return p\Ctype::ctype_lower($text); } +} +if (!function_exists('ctype_print')) { + function ctype_print($text) { return p\Ctype::ctype_print($text); } +} +if (!function_exists('ctype_punct')) { + function ctype_punct($text) { return p\Ctype::ctype_punct($text); } +} +if (!function_exists('ctype_space')) { + function ctype_space($text) { return p\Ctype::ctype_space($text); } +} +if (!function_exists('ctype_upper')) { + function ctype_upper($text) { return p\Ctype::ctype_upper($text); } +} +if (!function_exists('ctype_xdigit')) { + function ctype_xdigit($text) { return p\Ctype::ctype_xdigit($text); } +} diff --git a/docker/statistics/vendor/symfony/polyfill-ctype/bootstrap80.php b/docker/statistics/vendor/symfony/polyfill-ctype/bootstrap80.php new file mode 100644 index 00000000..ab2f8611 --- /dev/null +++ b/docker/statistics/vendor/symfony/polyfill-ctype/bootstrap80.php @@ -0,0 +1,46 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +use Symfony\Polyfill\Ctype as p; + +if (!function_exists('ctype_alnum')) { + function ctype_alnum(mixed $text): bool { return p\Ctype::ctype_alnum($text); } +} +if (!function_exists('ctype_alpha')) { + function ctype_alpha(mixed $text): bool { return p\Ctype::ctype_alpha($text); } +} +if (!function_exists('ctype_cntrl')) { + function ctype_cntrl(mixed $text): bool { return p\Ctype::ctype_cntrl($text); } +} +if (!function_exists('ctype_digit')) { + function ctype_digit(mixed $text): bool { return p\Ctype::ctype_digit($text); } +} +if (!function_exists('ctype_graph')) { + function ctype_graph(mixed $text): bool { return p\Ctype::ctype_graph($text); } +} +if (!function_exists('ctype_lower')) { + function ctype_lower(mixed $text): bool { return p\Ctype::ctype_lower($text); } +} +if (!function_exists('ctype_print')) { + function ctype_print(mixed $text): bool { return p\Ctype::ctype_print($text); } +} +if (!function_exists('ctype_punct')) { + function ctype_punct(mixed $text): bool { return p\Ctype::ctype_punct($text); } +} +if (!function_exists('ctype_space')) { + function ctype_space(mixed $text): bool { return p\Ctype::ctype_space($text); } +} +if (!function_exists('ctype_upper')) { + function ctype_upper(mixed $text): bool { return p\Ctype::ctype_upper($text); } +} +if (!function_exists('ctype_xdigit')) { + function ctype_xdigit(mixed $text): bool { return p\Ctype::ctype_xdigit($text); } +} diff --git a/docker/statistics/vendor/symfony/polyfill-ctype/composer.json b/docker/statistics/vendor/symfony/polyfill-ctype/composer.json new file mode 100644 index 00000000..131ca7ad --- /dev/null +++ b/docker/statistics/vendor/symfony/polyfill-ctype/composer.json @@ -0,0 +1,38 @@ +{ + "name": "symfony/polyfill-ctype", + "type": "library", + "description": "Symfony polyfill for ctype functions", + "keywords": ["polyfill", "compatibility", "portable", "ctype"], + "homepage": "https://symfony.com", + "license": "MIT", + "authors": [ + { + "name": "Gert de Pagter", + "email": "BackEndTea@gmail.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "require": { + "php": ">=7.2" + }, + "provide": { + "ext-ctype": "*" + }, + "autoload": { + "psr-4": { "Symfony\\Polyfill\\Ctype\\": "" }, + "files": [ "bootstrap.php" ] + }, + "suggest": { + "ext-ctype": "For best performance" + }, + "minimum-stability": "dev", + "extra": { + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + } +} diff --git a/docker/statistics/vendor/sabberworm/php-css-parser/LICENSE b/docker/statistics/vendor/symfony/polyfill-mbstring/LICENSE similarity index 84% rename from docker/statistics/vendor/sabberworm/php-css-parser/LICENSE rename to docker/statistics/vendor/symfony/polyfill-mbstring/LICENSE index 686a4e31..6e3afce6 100644 --- a/docker/statistics/vendor/sabberworm/php-css-parser/LICENSE +++ b/docker/statistics/vendor/symfony/polyfill-mbstring/LICENSE @@ -1,13 +1,11 @@ -MIT License - -Copyright (c) 2011 Raphael Schweikert, https://www.sabberworm.com/ +Copyright (c) 2015-present Fabien Potencier Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +copies of the Software, and to permit persons to whom the Software is furnished +to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. @@ -17,5 +15,5 @@ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/docker/statistics/vendor/symfony/polyfill-mbstring/Mbstring.php b/docker/statistics/vendor/symfony/polyfill-mbstring/Mbstring.php new file mode 100644 index 00000000..3d45c9d9 --- /dev/null +++ b/docker/statistics/vendor/symfony/polyfill-mbstring/Mbstring.php @@ -0,0 +1,1045 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Symfony\Polyfill\Mbstring; + +/** + * Partial mbstring implementation in PHP, iconv based, UTF-8 centric. + * + * Implemented: + * - mb_chr - Returns a specific character from its Unicode code point + * - mb_convert_encoding - Convert character encoding + * - mb_convert_variables - Convert character code in variable(s) + * - mb_decode_mimeheader - Decode string in MIME header field + * - mb_encode_mimeheader - Encode string for MIME header XXX NATIVE IMPLEMENTATION IS REALLY BUGGED + * - mb_decode_numericentity - Decode HTML numeric string reference to character + * - mb_encode_numericentity - Encode character to HTML numeric string reference + * - mb_convert_case - Perform case folding on a string + * - mb_detect_encoding - Detect character encoding + * - mb_get_info - Get internal settings of mbstring + * - mb_http_input - Detect HTTP input character encoding + * - mb_http_output - Set/Get HTTP output character encoding + * - mb_internal_encoding - Set/Get internal character encoding + * - mb_list_encodings - Returns an array of all supported encodings + * - mb_ord - Returns the Unicode code point of a character + * - mb_output_handler - Callback function converts character encoding in output buffer + * - mb_scrub - Replaces ill-formed byte sequences with substitute characters + * - mb_strlen - Get string length + * - mb_strpos - Find position of first occurrence of string in a string + * - mb_strrpos - Find position of last occurrence of a string in a string + * - mb_str_split - Convert a string to an array + * - mb_strtolower - Make a string lowercase + * - mb_strtoupper - Make a string uppercase + * - mb_substitute_character - Set/Get substitution character + * - mb_substr - Get part of string + * - mb_stripos - Finds position of first occurrence of a string within another, case insensitive + * - mb_stristr - Finds first occurrence of a string within another, case insensitive + * - mb_strrchr - Finds the last occurrence of a character in a string within another + * - mb_strrichr - Finds the last occurrence of a character in a string within another, case insensitive + * - mb_strripos - Finds position of last occurrence of a string within another, case insensitive + * - mb_strstr - Finds first occurrence of a string within another + * - mb_strwidth - Return width of string + * - mb_substr_count - Count the number of substring occurrences + * - mb_ucfirst - Make a string's first character uppercase + * - mb_lcfirst - Make a string's first character lowercase + * - mb_trim - Strip whitespace (or other characters) from the beginning and end of a string + * - mb_ltrim - Strip whitespace (or other characters) from the beginning of a string + * - mb_rtrim - Strip whitespace (or other characters) from the end of a string + * + * Not implemented: + * - mb_convert_kana - Convert "kana" one from another ("zen-kaku", "han-kaku" and more) + * - mb_ereg_* - Regular expression with multibyte support + * - mb_parse_str - Parse GET/POST/COOKIE data and set global variable + * - mb_preferred_mime_name - Get MIME charset string + * - mb_regex_encoding - Returns current encoding for multibyte regex as string + * - mb_regex_set_options - Set/Get the default options for mbregex functions + * - mb_send_mail - Send encoded mail + * - mb_split - Split multibyte string using regular expression + * - mb_strcut - Get part of string + * - mb_strimwidth - Get truncated string with specified width + * + * @author Nicolas Grekas + * + * @internal + */ +final class Mbstring +{ + public const MB_CASE_FOLD = \PHP_INT_MAX; + + private const SIMPLE_CASE_FOLD = [ + ['µ', 'ſ', "\xCD\x85", 'ς', "\xCF\x90", "\xCF\x91", "\xCF\x95", "\xCF\x96", "\xCF\xB0", "\xCF\xB1", "\xCF\xB5", "\xE1\xBA\x9B", "\xE1\xBE\xBE"], + ['μ', 's', 'ι', 'σ', 'β', 'θ', 'φ', 'π', 'κ', 'ρ', 'ε', "\xE1\xB9\xA1", 'ι'], + ]; + + private static $encodingList = ['ASCII', 'UTF-8']; + private static $language = 'neutral'; + private static $internalEncoding = 'UTF-8'; + + public static function mb_convert_encoding($s, $toEncoding, $fromEncoding = null) + { + if (\is_array($s)) { + $r = []; + foreach ($s as $str) { + $r[] = self::mb_convert_encoding($str, $toEncoding, $fromEncoding); + } + + return $r; + } + + if (\is_array($fromEncoding) || (null !== $fromEncoding && false !== strpos($fromEncoding, ','))) { + $fromEncoding = self::mb_detect_encoding($s, $fromEncoding); + } else { + $fromEncoding = self::getEncoding($fromEncoding); + } + + $toEncoding = self::getEncoding($toEncoding); + + if ('BASE64' === $fromEncoding) { + $s = base64_decode($s); + $fromEncoding = $toEncoding; + } + + if ('BASE64' === $toEncoding) { + return base64_encode($s); + } + + if ('HTML-ENTITIES' === $toEncoding || 'HTML' === $toEncoding) { + if ('HTML-ENTITIES' === $fromEncoding || 'HTML' === $fromEncoding) { + $fromEncoding = 'Windows-1252'; + } + if ('UTF-8' !== $fromEncoding) { + $s = iconv($fromEncoding, 'UTF-8//IGNORE', $s); + } + + return preg_replace_callback('/[\x80-\xFF]+/', [__CLASS__, 'html_encoding_callback'], $s); + } + + if ('HTML-ENTITIES' === $fromEncoding) { + $s = html_entity_decode($s, \ENT_COMPAT, 'UTF-8'); + $fromEncoding = 'UTF-8'; + } + + return iconv($fromEncoding, $toEncoding.'//IGNORE', $s); + } + + public static function mb_convert_variables($toEncoding, $fromEncoding, &...$vars) + { + $ok = true; + array_walk_recursive($vars, function (&$v) use (&$ok, $toEncoding, $fromEncoding) { + if (false === $v = self::mb_convert_encoding($v, $toEncoding, $fromEncoding)) { + $ok = false; + } + }); + + return $ok ? $fromEncoding : false; + } + + public static function mb_decode_mimeheader($s) + { + return iconv_mime_decode($s, 2, self::$internalEncoding); + } + + public static function mb_encode_mimeheader($s, $charset = null, $transferEncoding = null, $linefeed = null, $indent = null) + { + trigger_error('mb_encode_mimeheader() is bugged. Please use iconv_mime_encode() instead', \E_USER_WARNING); + } + + public static function mb_decode_numericentity($s, $convmap, $encoding = null) + { + if (null !== $s && !\is_scalar($s) && !(\is_object($s) && method_exists($s, '__toString'))) { + trigger_error('mb_decode_numericentity() expects parameter 1 to be string, '.\gettype($s).' given', \E_USER_WARNING); + + return null; + } + + if (!\is_array($convmap) || (80000 > \PHP_VERSION_ID && !$convmap)) { + return false; + } + + if (null !== $encoding && !\is_scalar($encoding)) { + trigger_error('mb_decode_numericentity() expects parameter 3 to be string, '.\gettype($s).' given', \E_USER_WARNING); + + return ''; // Instead of null (cf. mb_encode_numericentity). + } + + $s = (string) $s; + if ('' === $s) { + return ''; + } + + $encoding = self::getEncoding($encoding); + + if ('UTF-8' === $encoding) { + $encoding = null; + if (!preg_match('//u', $s)) { + $s = @iconv('UTF-8', 'UTF-8//IGNORE', $s); + } + } else { + $s = iconv($encoding, 'UTF-8//IGNORE', $s); + } + + $cnt = floor(\count($convmap) / 4) * 4; + + for ($i = 0; $i < $cnt; $i += 4) { + // collector_decode_htmlnumericentity ignores $convmap[$i + 3] + $convmap[$i] += $convmap[$i + 2]; + $convmap[$i + 1] += $convmap[$i + 2]; + } + + $s = preg_replace_callback('/&#(?:0*([0-9]+)|x0*([0-9a-fA-F]+))(?!&);?/', function (array $m) use ($cnt, $convmap) { + $c = isset($m[2]) ? (int) hexdec($m[2]) : $m[1]; + for ($i = 0; $i < $cnt; $i += 4) { + if ($c >= $convmap[$i] && $c <= $convmap[$i + 1]) { + return self::mb_chr($c - $convmap[$i + 2]); + } + } + + return $m[0]; + }, $s); + + if (null === $encoding) { + return $s; + } + + return iconv('UTF-8', $encoding.'//IGNORE', $s); + } + + public static function mb_encode_numericentity($s, $convmap, $encoding = null, $is_hex = false) + { + if (null !== $s && !\is_scalar($s) && !(\is_object($s) && method_exists($s, '__toString'))) { + trigger_error('mb_encode_numericentity() expects parameter 1 to be string, '.\gettype($s).' given', \E_USER_WARNING); + + return null; + } + + if (!\is_array($convmap) || (80000 > \PHP_VERSION_ID && !$convmap)) { + return false; + } + + if (null !== $encoding && !\is_scalar($encoding)) { + trigger_error('mb_encode_numericentity() expects parameter 3 to be string, '.\gettype($s).' given', \E_USER_WARNING); + + return null; // Instead of '' (cf. mb_decode_numericentity). + } + + if (null !== $is_hex && !\is_scalar($is_hex)) { + trigger_error('mb_encode_numericentity() expects parameter 4 to be boolean, '.\gettype($s).' given', \E_USER_WARNING); + + return null; + } + + $s = (string) $s; + if ('' === $s) { + return ''; + } + + $encoding = self::getEncoding($encoding); + + if ('UTF-8' === $encoding) { + $encoding = null; + if (!preg_match('//u', $s)) { + $s = @iconv('UTF-8', 'UTF-8//IGNORE', $s); + } + } else { + $s = iconv($encoding, 'UTF-8//IGNORE', $s); + } + + static $ulenMask = ["\xC0" => 2, "\xD0" => 2, "\xE0" => 3, "\xF0" => 4]; + + $cnt = floor(\count($convmap) / 4) * 4; + $i = 0; + $len = \strlen($s); + $result = ''; + + while ($i < $len) { + $ulen = $s[$i] < "\x80" ? 1 : $ulenMask[$s[$i] & "\xF0"]; + $uchr = substr($s, $i, $ulen); + $i += $ulen; + $c = self::mb_ord($uchr); + + for ($j = 0; $j < $cnt; $j += 4) { + if ($c >= $convmap[$j] && $c <= $convmap[$j + 1]) { + $cOffset = ($c + $convmap[$j + 2]) & $convmap[$j + 3]; + $result .= $is_hex ? sprintf('&#x%X;', $cOffset) : '&#'.$cOffset.';'; + continue 2; + } + } + $result .= $uchr; + } + + if (null === $encoding) { + return $result; + } + + return iconv('UTF-8', $encoding.'//IGNORE', $result); + } + + public static function mb_convert_case($s, $mode, $encoding = null) + { + $s = (string) $s; + if ('' === $s) { + return ''; + } + + $encoding = self::getEncoding($encoding); + + if ('UTF-8' === $encoding) { + $encoding = null; + if (!preg_match('//u', $s)) { + $s = @iconv('UTF-8', 'UTF-8//IGNORE', $s); + } + } else { + $s = iconv($encoding, 'UTF-8//IGNORE', $s); + } + + if (\MB_CASE_TITLE == $mode) { + static $titleRegexp = null; + if (null === $titleRegexp) { + $titleRegexp = self::getData('titleCaseRegexp'); + } + $s = preg_replace_callback($titleRegexp, [__CLASS__, 'title_case'], $s); + } else { + if (\MB_CASE_UPPER == $mode) { + static $upper = null; + if (null === $upper) { + $upper = self::getData('upperCase'); + } + $map = $upper; + } else { + if (self::MB_CASE_FOLD === $mode) { + static $caseFolding = null; + if (null === $caseFolding) { + $caseFolding = self::getData('caseFolding'); + } + $s = strtr($s, $caseFolding); + } + + static $lower = null; + if (null === $lower) { + $lower = self::getData('lowerCase'); + } + $map = $lower; + } + + static $ulenMask = ["\xC0" => 2, "\xD0" => 2, "\xE0" => 3, "\xF0" => 4]; + + $i = 0; + $len = \strlen($s); + + while ($i < $len) { + $ulen = $s[$i] < "\x80" ? 1 : $ulenMask[$s[$i] & "\xF0"]; + $uchr = substr($s, $i, $ulen); + $i += $ulen; + + if (isset($map[$uchr])) { + $uchr = $map[$uchr]; + $nlen = \strlen($uchr); + + if ($nlen == $ulen) { + $nlen = $i; + do { + $s[--$nlen] = $uchr[--$ulen]; + } while ($ulen); + } else { + $s = substr_replace($s, $uchr, $i - $ulen, $ulen); + $len += $nlen - $ulen; + $i += $nlen - $ulen; + } + } + } + } + + if (null === $encoding) { + return $s; + } + + return iconv('UTF-8', $encoding.'//IGNORE', $s); + } + + public static function mb_internal_encoding($encoding = null) + { + if (null === $encoding) { + return self::$internalEncoding; + } + + $normalizedEncoding = self::getEncoding($encoding); + + if ('UTF-8' === $normalizedEncoding || false !== @iconv($normalizedEncoding, $normalizedEncoding, ' ')) { + self::$internalEncoding = $normalizedEncoding; + + return true; + } + + if (80000 > \PHP_VERSION_ID) { + return false; + } + + throw new \ValueError(sprintf('Argument #1 ($encoding) must be a valid encoding, "%s" given', $encoding)); + } + + public static function mb_language($lang = null) + { + if (null === $lang) { + return self::$language; + } + + switch ($normalizedLang = strtolower($lang)) { + case 'uni': + case 'neutral': + self::$language = $normalizedLang; + + return true; + } + + if (80000 > \PHP_VERSION_ID) { + return false; + } + + throw new \ValueError(sprintf('Argument #1 ($language) must be a valid language, "%s" given', $lang)); + } + + public static function mb_list_encodings() + { + return ['UTF-8']; + } + + public static function mb_encoding_aliases($encoding) + { + switch (strtoupper($encoding)) { + case 'UTF8': + case 'UTF-8': + return ['utf8']; + } + + return false; + } + + public static function mb_check_encoding($var = null, $encoding = null) + { + if (null === $encoding) { + if (null === $var) { + return false; + } + $encoding = self::$internalEncoding; + } + + if (!\is_array($var)) { + return self::mb_detect_encoding($var, [$encoding]) || false !== @iconv($encoding, $encoding, $var); + } + + foreach ($var as $key => $value) { + if (!self::mb_check_encoding($key, $encoding)) { + return false; + } + if (!self::mb_check_encoding($value, $encoding)) { + return false; + } + } + + return true; + } + + public static function mb_detect_encoding($str, $encodingList = null, $strict = false) + { + if (null === $encodingList) { + $encodingList = self::$encodingList; + } else { + if (!\is_array($encodingList)) { + $encodingList = array_map('trim', explode(',', $encodingList)); + } + $encodingList = array_map('strtoupper', $encodingList); + } + + foreach ($encodingList as $enc) { + switch ($enc) { + case 'ASCII': + if (!preg_match('/[\x80-\xFF]/', $str)) { + return $enc; + } + break; + + case 'UTF8': + case 'UTF-8': + if (preg_match('//u', $str)) { + return 'UTF-8'; + } + break; + + default: + if (0 === strncmp($enc, 'ISO-8859-', 9)) { + return $enc; + } + } + } + + return false; + } + + public static function mb_detect_order($encodingList = null) + { + if (null === $encodingList) { + return self::$encodingList; + } + + if (!\is_array($encodingList)) { + $encodingList = array_map('trim', explode(',', $encodingList)); + } + $encodingList = array_map('strtoupper', $encodingList); + + foreach ($encodingList as $enc) { + switch ($enc) { + default: + if (strncmp($enc, 'ISO-8859-', 9)) { + return false; + } + // no break + case 'ASCII': + case 'UTF8': + case 'UTF-8': + } + } + + self::$encodingList = $encodingList; + + return true; + } + + public static function mb_strlen($s, $encoding = null) + { + $encoding = self::getEncoding($encoding); + if ('CP850' === $encoding || 'ASCII' === $encoding) { + return \strlen($s); + } + + return @iconv_strlen($s, $encoding); + } + + public static function mb_strpos($haystack, $needle, $offset = 0, $encoding = null) + { + $encoding = self::getEncoding($encoding); + if ('CP850' === $encoding || 'ASCII' === $encoding) { + return strpos($haystack, $needle, $offset); + } + + $needle = (string) $needle; + if ('' === $needle) { + if (80000 > \PHP_VERSION_ID) { + trigger_error(__METHOD__.': Empty delimiter', \E_USER_WARNING); + + return false; + } + + return 0; + } + + return iconv_strpos($haystack, $needle, $offset, $encoding); + } + + public static function mb_strrpos($haystack, $needle, $offset = 0, $encoding = null) + { + $encoding = self::getEncoding($encoding); + if ('CP850' === $encoding || 'ASCII' === $encoding) { + return strrpos($haystack, $needle, $offset); + } + + if ($offset != (int) $offset) { + $offset = 0; + } elseif ($offset = (int) $offset) { + if ($offset < 0) { + if (0 > $offset += self::mb_strlen($needle)) { + $haystack = self::mb_substr($haystack, 0, $offset, $encoding); + } + $offset = 0; + } else { + $haystack = self::mb_substr($haystack, $offset, 2147483647, $encoding); + } + } + + $pos = '' !== $needle || 80000 > \PHP_VERSION_ID + ? iconv_strrpos($haystack, $needle, $encoding) + : self::mb_strlen($haystack, $encoding); + + return false !== $pos ? $offset + $pos : false; + } + + public static function mb_str_split($string, $split_length = 1, $encoding = null) + { + if (null !== $string && !\is_scalar($string) && !(\is_object($string) && method_exists($string, '__toString'))) { + trigger_error('mb_str_split() expects parameter 1 to be string, '.\gettype($string).' given', \E_USER_WARNING); + + return null; + } + + if (1 > $split_length = (int) $split_length) { + if (80000 > \PHP_VERSION_ID) { + trigger_error('The length of each segment must be greater than zero', \E_USER_WARNING); + + return false; + } + + throw new \ValueError('Argument #2 ($length) must be greater than 0'); + } + + if (null === $encoding) { + $encoding = mb_internal_encoding(); + } + + if ('UTF-8' === $encoding = self::getEncoding($encoding)) { + $rx = '/('; + while (65535 < $split_length) { + $rx .= '.{65535}'; + $split_length -= 65535; + } + $rx .= '.{'.$split_length.'})/us'; + + return preg_split($rx, $string, -1, \PREG_SPLIT_DELIM_CAPTURE | \PREG_SPLIT_NO_EMPTY); + } + + $result = []; + $length = mb_strlen($string, $encoding); + + for ($i = 0; $i < $length; $i += $split_length) { + $result[] = mb_substr($string, $i, $split_length, $encoding); + } + + return $result; + } + + public static function mb_strtolower($s, $encoding = null) + { + return self::mb_convert_case($s, \MB_CASE_LOWER, $encoding); + } + + public static function mb_strtoupper($s, $encoding = null) + { + return self::mb_convert_case($s, \MB_CASE_UPPER, $encoding); + } + + public static function mb_substitute_character($c = null) + { + if (null === $c) { + return 'none'; + } + if (0 === strcasecmp($c, 'none')) { + return true; + } + if (80000 > \PHP_VERSION_ID) { + return false; + } + if (\is_int($c) || 'long' === $c || 'entity' === $c) { + return false; + } + + throw new \ValueError('Argument #1 ($substitute_character) must be "none", "long", "entity" or a valid codepoint'); + } + + public static function mb_substr($s, $start, $length = null, $encoding = null) + { + $encoding = self::getEncoding($encoding); + if ('CP850' === $encoding || 'ASCII' === $encoding) { + return (string) substr($s, $start, null === $length ? 2147483647 : $length); + } + + if ($start < 0) { + $start = iconv_strlen($s, $encoding) + $start; + if ($start < 0) { + $start = 0; + } + } + + if (null === $length) { + $length = 2147483647; + } elseif ($length < 0) { + $length = iconv_strlen($s, $encoding) + $length - $start; + if ($length < 0) { + return ''; + } + } + + return (string) iconv_substr($s, $start, $length, $encoding); + } + + public static function mb_stripos($haystack, $needle, $offset = 0, $encoding = null) + { + [$haystack, $needle] = str_replace(self::SIMPLE_CASE_FOLD[0], self::SIMPLE_CASE_FOLD[1], [ + self::mb_convert_case($haystack, \MB_CASE_LOWER, $encoding), + self::mb_convert_case($needle, \MB_CASE_LOWER, $encoding), + ]); + + return self::mb_strpos($haystack, $needle, $offset, $encoding); + } + + public static function mb_stristr($haystack, $needle, $part = false, $encoding = null) + { + $pos = self::mb_stripos($haystack, $needle, 0, $encoding); + + return self::getSubpart($pos, $part, $haystack, $encoding); + } + + public static function mb_strrchr($haystack, $needle, $part = false, $encoding = null) + { + $encoding = self::getEncoding($encoding); + if ('CP850' === $encoding || 'ASCII' === $encoding) { + $pos = strrpos($haystack, $needle); + } else { + $needle = self::mb_substr($needle, 0, 1, $encoding); + $pos = iconv_strrpos($haystack, $needle, $encoding); + } + + return self::getSubpart($pos, $part, $haystack, $encoding); + } + + public static function mb_strrichr($haystack, $needle, $part = false, $encoding = null) + { + $needle = self::mb_substr($needle, 0, 1, $encoding); + $pos = self::mb_strripos($haystack, $needle, $encoding); + + return self::getSubpart($pos, $part, $haystack, $encoding); + } + + public static function mb_strripos($haystack, $needle, $offset = 0, $encoding = null) + { + $haystack = self::mb_convert_case($haystack, \MB_CASE_LOWER, $encoding); + $needle = self::mb_convert_case($needle, \MB_CASE_LOWER, $encoding); + + $haystack = str_replace(self::SIMPLE_CASE_FOLD[0], self::SIMPLE_CASE_FOLD[1], $haystack); + $needle = str_replace(self::SIMPLE_CASE_FOLD[0], self::SIMPLE_CASE_FOLD[1], $needle); + + return self::mb_strrpos($haystack, $needle, $offset, $encoding); + } + + public static function mb_strstr($haystack, $needle, $part = false, $encoding = null) + { + $pos = strpos($haystack, $needle); + if (false === $pos) { + return false; + } + if ($part) { + return substr($haystack, 0, $pos); + } + + return substr($haystack, $pos); + } + + public static function mb_get_info($type = 'all') + { + $info = [ + 'internal_encoding' => self::$internalEncoding, + 'http_output' => 'pass', + 'http_output_conv_mimetypes' => '^(text/|application/xhtml\+xml)', + 'func_overload' => 0, + 'func_overload_list' => 'no overload', + 'mail_charset' => 'UTF-8', + 'mail_header_encoding' => 'BASE64', + 'mail_body_encoding' => 'BASE64', + 'illegal_chars' => 0, + 'encoding_translation' => 'Off', + 'language' => self::$language, + 'detect_order' => self::$encodingList, + 'substitute_character' => 'none', + 'strict_detection' => 'Off', + ]; + + if ('all' === $type) { + return $info; + } + if (isset($info[$type])) { + return $info[$type]; + } + + return false; + } + + public static function mb_http_input($type = '') + { + return false; + } + + public static function mb_http_output($encoding = null) + { + return null !== $encoding ? 'pass' === $encoding : 'pass'; + } + + public static function mb_strwidth($s, $encoding = null) + { + $encoding = self::getEncoding($encoding); + + if ('UTF-8' !== $encoding) { + $s = iconv($encoding, 'UTF-8//IGNORE', $s); + } + + $s = preg_replace('/[\x{1100}-\x{115F}\x{2329}\x{232A}\x{2E80}-\x{303E}\x{3040}-\x{A4CF}\x{AC00}-\x{D7A3}\x{F900}-\x{FAFF}\x{FE10}-\x{FE19}\x{FE30}-\x{FE6F}\x{FF00}-\x{FF60}\x{FFE0}-\x{FFE6}\x{20000}-\x{2FFFD}\x{30000}-\x{3FFFD}]/u', '', $s, -1, $wide); + + return ($wide << 1) + iconv_strlen($s, 'UTF-8'); + } + + public static function mb_substr_count($haystack, $needle, $encoding = null) + { + return substr_count($haystack, $needle); + } + + public static function mb_output_handler($contents, $status) + { + return $contents; + } + + public static function mb_chr($code, $encoding = null) + { + if (0x80 > $code %= 0x200000) { + $s = \chr($code); + } elseif (0x800 > $code) { + $s = \chr(0xC0 | $code >> 6).\chr(0x80 | $code & 0x3F); + } elseif (0x10000 > $code) { + $s = \chr(0xE0 | $code >> 12).\chr(0x80 | $code >> 6 & 0x3F).\chr(0x80 | $code & 0x3F); + } else { + $s = \chr(0xF0 | $code >> 18).\chr(0x80 | $code >> 12 & 0x3F).\chr(0x80 | $code >> 6 & 0x3F).\chr(0x80 | $code & 0x3F); + } + + if ('UTF-8' !== $encoding = self::getEncoding($encoding)) { + $s = mb_convert_encoding($s, $encoding, 'UTF-8'); + } + + return $s; + } + + public static function mb_ord($s, $encoding = null) + { + if ('UTF-8' !== $encoding = self::getEncoding($encoding)) { + $s = mb_convert_encoding($s, 'UTF-8', $encoding); + } + + if (1 === \strlen($s)) { + return \ord($s); + } + + $code = ($s = unpack('C*', substr($s, 0, 4))) ? $s[1] : 0; + if (0xF0 <= $code) { + return (($code - 0xF0) << 18) + (($s[2] - 0x80) << 12) + (($s[3] - 0x80) << 6) + $s[4] - 0x80; + } + if (0xE0 <= $code) { + return (($code - 0xE0) << 12) + (($s[2] - 0x80) << 6) + $s[3] - 0x80; + } + if (0xC0 <= $code) { + return (($code - 0xC0) << 6) + $s[2] - 0x80; + } + + return $code; + } + + public static function mb_str_pad(string $string, int $length, string $pad_string = ' ', int $pad_type = \STR_PAD_RIGHT, ?string $encoding = null): string + { + if (!\in_array($pad_type, [\STR_PAD_RIGHT, \STR_PAD_LEFT, \STR_PAD_BOTH], true)) { + throw new \ValueError('mb_str_pad(): Argument #4 ($pad_type) must be STR_PAD_LEFT, STR_PAD_RIGHT, or STR_PAD_BOTH'); + } + + if (null === $encoding) { + $encoding = self::mb_internal_encoding(); + } else { + self::assertEncoding($encoding, 'mb_str_pad(): Argument #5 ($encoding) must be a valid encoding, "%s" given'); + } + + if (self::mb_strlen($pad_string, $encoding) <= 0) { + throw new \ValueError('mb_str_pad(): Argument #3 ($pad_string) must be a non-empty string'); + } + + $paddingRequired = $length - self::mb_strlen($string, $encoding); + + if ($paddingRequired < 1) { + return $string; + } + + switch ($pad_type) { + case \STR_PAD_LEFT: + return self::mb_substr(str_repeat($pad_string, $paddingRequired), 0, $paddingRequired, $encoding).$string; + case \STR_PAD_RIGHT: + return $string.self::mb_substr(str_repeat($pad_string, $paddingRequired), 0, $paddingRequired, $encoding); + default: + $leftPaddingLength = floor($paddingRequired / 2); + $rightPaddingLength = $paddingRequired - $leftPaddingLength; + + return self::mb_substr(str_repeat($pad_string, $leftPaddingLength), 0, $leftPaddingLength, $encoding).$string.self::mb_substr(str_repeat($pad_string, $rightPaddingLength), 0, $rightPaddingLength, $encoding); + } + } + + public static function mb_ucfirst(string $string, ?string $encoding = null): string + { + if (null === $encoding) { + $encoding = self::mb_internal_encoding(); + } else { + self::assertEncoding($encoding, 'mb_ucfirst(): Argument #2 ($encoding) must be a valid encoding, "%s" given'); + } + + $firstChar = mb_substr($string, 0, 1, $encoding); + $firstChar = mb_convert_case($firstChar, \MB_CASE_TITLE, $encoding); + + return $firstChar.mb_substr($string, 1, null, $encoding); + } + + public static function mb_lcfirst(string $string, ?string $encoding = null): string + { + if (null === $encoding) { + $encoding = self::mb_internal_encoding(); + } else { + self::assertEncoding($encoding, 'mb_lcfirst(): Argument #2 ($encoding) must be a valid encoding, "%s" given'); + } + + $firstChar = mb_substr($string, 0, 1, $encoding); + $firstChar = mb_convert_case($firstChar, \MB_CASE_LOWER, $encoding); + + return $firstChar.mb_substr($string, 1, null, $encoding); + } + + private static function getSubpart($pos, $part, $haystack, $encoding) + { + if (false === $pos) { + return false; + } + if ($part) { + return self::mb_substr($haystack, 0, $pos, $encoding); + } + + return self::mb_substr($haystack, $pos, null, $encoding); + } + + private static function html_encoding_callback(array $m) + { + $i = 1; + $entities = ''; + $m = unpack('C*', htmlentities($m[0], \ENT_COMPAT, 'UTF-8')); + + while (isset($m[$i])) { + if (0x80 > $m[$i]) { + $entities .= \chr($m[$i++]); + continue; + } + if (0xF0 <= $m[$i]) { + $c = (($m[$i++] - 0xF0) << 18) + (($m[$i++] - 0x80) << 12) + (($m[$i++] - 0x80) << 6) + $m[$i++] - 0x80; + } elseif (0xE0 <= $m[$i]) { + $c = (($m[$i++] - 0xE0) << 12) + (($m[$i++] - 0x80) << 6) + $m[$i++] - 0x80; + } else { + $c = (($m[$i++] - 0xC0) << 6) + $m[$i++] - 0x80; + } + + $entities .= '&#'.$c.';'; + } + + return $entities; + } + + private static function title_case(array $s) + { + return self::mb_convert_case($s[1], \MB_CASE_UPPER, 'UTF-8').self::mb_convert_case($s[2], \MB_CASE_LOWER, 'UTF-8'); + } + + private static function getData($file) + { + if (file_exists($file = __DIR__.'/Resources/unidata/'.$file.'.php')) { + return require $file; + } + + return false; + } + + private static function getEncoding($encoding) + { + if (null === $encoding) { + return self::$internalEncoding; + } + + if ('UTF-8' === $encoding) { + return 'UTF-8'; + } + + $encoding = strtoupper($encoding); + + if ('8BIT' === $encoding || 'BINARY' === $encoding) { + return 'CP850'; + } + + if ('UTF8' === $encoding) { + return 'UTF-8'; + } + + return $encoding; + } + + public static function mb_trim(string $string, ?string $characters = null, ?string $encoding = null): string + { + return self::mb_internal_trim('{^[%s]+|[%1$s]+$}Du', $string, $characters, $encoding, __FUNCTION__); + } + + public static function mb_ltrim(string $string, ?string $characters = null, ?string $encoding = null): string + { + return self::mb_internal_trim('{^[%s]+}Du', $string, $characters, $encoding, __FUNCTION__); + } + + public static function mb_rtrim(string $string, ?string $characters = null, ?string $encoding = null): string + { + return self::mb_internal_trim('{[%s]+$}D', $string, $characters, $encoding, __FUNCTION__); + } + + private static function mb_internal_trim(string $regex, string $string, ?string $characters, ?string $encoding, string $function): string + { + if (null === $encoding) { + $encoding = self::mb_internal_encoding(); + } else { + self::assertEncoding($encoding, $function.'(): Argument #3 ($encoding) must be a valid encoding, "%s" given'); + } + + if ('' === $characters) { + return null === $encoding ? $string : self::mb_convert_encoding($string, $encoding); + } + + if ('UTF-8' === $encoding) { + $encoding = null; + if (!preg_match('//u', $string)) { + $string = @iconv('UTF-8', 'UTF-8//IGNORE', $string); + } + if (null !== $characters && !preg_match('//u', $characters)) { + $characters = @iconv('UTF-8', 'UTF-8//IGNORE', $characters); + } + } else { + $string = iconv($encoding, 'UTF-8//IGNORE', $string); + + if (null !== $characters) { + $characters = iconv($encoding, 'UTF-8//IGNORE', $characters); + } + } + + if (null === $characters) { + $characters = "\\0 \f\n\r\t\v\u{00A0}\u{1680}\u{2000}\u{2001}\u{2002}\u{2003}\u{2004}\u{2005}\u{2006}\u{2007}\u{2008}\u{2009}\u{200A}\u{2028}\u{2029}\u{202F}\u{205F}\u{3000}\u{0085}\u{180E}"; + } else { + $characters = preg_quote($characters); + } + + $string = preg_replace(sprintf($regex, $characters), '', $string); + + if (null === $encoding) { + return $string; + } + + return iconv('UTF-8', $encoding.'//IGNORE', $string); + } + + private static function assertEncoding(string $encoding, string $errorFormat): void + { + try { + $validEncoding = @self::mb_check_encoding('', $encoding); + } catch (\ValueError $e) { + throw new \ValueError(sprintf($errorFormat, $encoding)); + } + + // BC for PHP 7.3 and lower + if (!$validEncoding) { + throw new \ValueError(sprintf($errorFormat, $encoding)); + } + } +} diff --git a/docker/statistics/vendor/symfony/polyfill-mbstring/README.md b/docker/statistics/vendor/symfony/polyfill-mbstring/README.md new file mode 100644 index 00000000..478b40da --- /dev/null +++ b/docker/statistics/vendor/symfony/polyfill-mbstring/README.md @@ -0,0 +1,13 @@ +Symfony Polyfill / Mbstring +=========================== + +This component provides a partial, native PHP implementation for the +[Mbstring](https://php.net/mbstring) extension. + +More information can be found in the +[main Polyfill README](https://github.com/symfony/polyfill/blob/main/README.md). + +License +======= + +This library is released under the [MIT license](LICENSE). diff --git a/docker/statistics/vendor/symfony/polyfill-mbstring/Resources/unidata/caseFolding.php b/docker/statistics/vendor/symfony/polyfill-mbstring/Resources/unidata/caseFolding.php new file mode 100644 index 00000000..512bba0b --- /dev/null +++ b/docker/statistics/vendor/symfony/polyfill-mbstring/Resources/unidata/caseFolding.php @@ -0,0 +1,119 @@ + 'i̇', + 'µ' => 'μ', + 'ſ' => 's', + 'ͅ' => 'ι', + 'ς' => 'σ', + 'ϐ' => 'β', + 'ϑ' => 'θ', + 'ϕ' => 'φ', + 'ϖ' => 'π', + 'ϰ' => 'κ', + 'ϱ' => 'ρ', + 'ϵ' => 'ε', + 'ẛ' => 'ṡ', + 'ι' => 'ι', + 'ß' => 'ss', + 'ʼn' => 'ʼn', + 'ǰ' => 'ǰ', + 'ΐ' => 'ΐ', + 'ΰ' => 'ΰ', + 'և' => 'եւ', + 'ẖ' => 'ẖ', + 'ẗ' => 'ẗ', + 'ẘ' => 'ẘ', + 'ẙ' => 'ẙ', + 'ẚ' => 'aʾ', + 'ẞ' => 'ss', + 'ὐ' => 'ὐ', + 'ὒ' => 'ὒ', + 'ὔ' => 'ὔ', + 'ὖ' => 'ὖ', + 'ᾀ' => 'ἀι', + 'ᾁ' => 'ἁι', + 'ᾂ' => 'ἂι', + 'ᾃ' => 'ἃι', + 'ᾄ' => 'ἄι', + 'ᾅ' => 'ἅι', + 'ᾆ' => 'ἆι', + 'ᾇ' => 'ἇι', + 'ᾈ' => 'ἀι', + 'ᾉ' => 'ἁι', + 'ᾊ' => 'ἂι', + 'ᾋ' => 'ἃι', + 'ᾌ' => 'ἄι', + 'ᾍ' => 'ἅι', + 'ᾎ' => 'ἆι', + 'ᾏ' => 'ἇι', + 'ᾐ' => 'ἠι', + 'ᾑ' => 'ἡι', + 'ᾒ' => 'ἢι', + 'ᾓ' => 'ἣι', + 'ᾔ' => 'ἤι', + 'ᾕ' => 'ἥι', + 'ᾖ' => 'ἦι', + 'ᾗ' => 'ἧι', + 'ᾘ' => 'ἠι', + 'ᾙ' => 'ἡι', + 'ᾚ' => 'ἢι', + 'ᾛ' => 'ἣι', + 'ᾜ' => 'ἤι', + 'ᾝ' => 'ἥι', + 'ᾞ' => 'ἦι', + 'ᾟ' => 'ἧι', + 'ᾠ' => 'ὠι', + 'ᾡ' => 'ὡι', + 'ᾢ' => 'ὢι', + 'ᾣ' => 'ὣι', + 'ᾤ' => 'ὤι', + 'ᾥ' => 'ὥι', + 'ᾦ' => 'ὦι', + 'ᾧ' => 'ὧι', + 'ᾨ' => 'ὠι', + 'ᾩ' => 'ὡι', + 'ᾪ' => 'ὢι', + 'ᾫ' => 'ὣι', + 'ᾬ' => 'ὤι', + 'ᾭ' => 'ὥι', + 'ᾮ' => 'ὦι', + 'ᾯ' => 'ὧι', + 'ᾲ' => 'ὰι', + 'ᾳ' => 'αι', + 'ᾴ' => 'άι', + 'ᾶ' => 'ᾶ', + 'ᾷ' => 'ᾶι', + 'ᾼ' => 'αι', + 'ῂ' => 'ὴι', + 'ῃ' => 'ηι', + 'ῄ' => 'ήι', + 'ῆ' => 'ῆ', + 'ῇ' => 'ῆι', + 'ῌ' => 'ηι', + 'ῒ' => 'ῒ', + 'ῖ' => 'ῖ', + 'ῗ' => 'ῗ', + 'ῢ' => 'ῢ', + 'ῤ' => 'ῤ', + 'ῦ' => 'ῦ', + 'ῧ' => 'ῧ', + 'ῲ' => 'ὼι', + 'ῳ' => 'ωι', + 'ῴ' => 'ώι', + 'ῶ' => 'ῶ', + 'ῷ' => 'ῶι', + 'ῼ' => 'ωι', + 'ff' => 'ff', + 'fi' => 'fi', + 'fl' => 'fl', + 'ffi' => 'ffi', + 'ffl' => 'ffl', + 'ſt' => 'st', + 'st' => 'st', + 'ﬓ' => 'մն', + 'ﬔ' => 'մե', + 'ﬕ' => 'մի', + 'ﬖ' => 'վն', + 'ﬗ' => 'մխ', +]; diff --git a/docker/statistics/vendor/symfony/polyfill-mbstring/Resources/unidata/lowerCase.php b/docker/statistics/vendor/symfony/polyfill-mbstring/Resources/unidata/lowerCase.php new file mode 100644 index 00000000..fac60b08 --- /dev/null +++ b/docker/statistics/vendor/symfony/polyfill-mbstring/Resources/unidata/lowerCase.php @@ -0,0 +1,1397 @@ + 'a', + 'B' => 'b', + 'C' => 'c', + 'D' => 'd', + 'E' => 'e', + 'F' => 'f', + 'G' => 'g', + 'H' => 'h', + 'I' => 'i', + 'J' => 'j', + 'K' => 'k', + 'L' => 'l', + 'M' => 'm', + 'N' => 'n', + 'O' => 'o', + 'P' => 'p', + 'Q' => 'q', + 'R' => 'r', + 'S' => 's', + 'T' => 't', + 'U' => 'u', + 'V' => 'v', + 'W' => 'w', + 'X' => 'x', + 'Y' => 'y', + 'Z' => 'z', + 'À' => 'à', + 'Á' => 'á', + 'Â' => 'â', + 'Ã' => 'ã', + 'Ä' => 'ä', + 'Å' => 'å', + 'Æ' => 'æ', + 'Ç' => 'ç', + 'È' => 'è', + 'É' => 'é', + 'Ê' => 'ê', + 'Ë' => 'ë', + 'Ì' => 'ì', + 'Í' => 'í', + 'Î' => 'î', + 'Ï' => 'ï', + 'Ð' => 'ð', + 'Ñ' => 'ñ', + 'Ò' => 'ò', + 'Ó' => 'ó', + 'Ô' => 'ô', + 'Õ' => 'õ', + 'Ö' => 'ö', + 'Ø' => 'ø', + 'Ù' => 'ù', + 'Ú' => 'ú', + 'Û' => 'û', + 'Ü' => 'ü', + 'Ý' => 'ý', + 'Þ' => 'þ', + 'Ā' => 'ā', + 'Ă' => 'ă', + 'Ą' => 'ą', + 'Ć' => 'ć', + 'Ĉ' => 'ĉ', + 'Ċ' => 'ċ', + 'Č' => 'č', + 'Ď' => 'ď', + 'Đ' => 'đ', + 'Ē' => 'ē', + 'Ĕ' => 'ĕ', + 'Ė' => 'ė', + 'Ę' => 'ę', + 'Ě' => 'ě', + 'Ĝ' => 'ĝ', + 'Ğ' => 'ğ', + 'Ġ' => 'ġ', + 'Ģ' => 'ģ', + 'Ĥ' => 'ĥ', + 'Ħ' => 'ħ', + 'Ĩ' => 'ĩ', + 'Ī' => 'ī', + 'Ĭ' => 'ĭ', + 'Į' => 'į', + 'İ' => 'i̇', + 'IJ' => 'ij', + 'Ĵ' => 'ĵ', + 'Ķ' => 'ķ', + 'Ĺ' => 'ĺ', + 'Ļ' => 'ļ', + 'Ľ' => 'ľ', + 'Ŀ' => 'ŀ', + 'Ł' => 'ł', + 'Ń' => 'ń', + 'Ņ' => 'ņ', + 'Ň' => 'ň', + 'Ŋ' => 'ŋ', + 'Ō' => 'ō', + 'Ŏ' => 'ŏ', + 'Ő' => 'ő', + 'Œ' => 'œ', + 'Ŕ' => 'ŕ', + 'Ŗ' => 'ŗ', + 'Ř' => 'ř', + 'Ś' => 'ś', + 'Ŝ' => 'ŝ', + 'Ş' => 'ş', + 'Š' => 'š', + 'Ţ' => 'ţ', + 'Ť' => 'ť', + 'Ŧ' => 'ŧ', + 'Ũ' => 'ũ', + 'Ū' => 'ū', + 'Ŭ' => 'ŭ', + 'Ů' => 'ů', + 'Ű' => 'ű', + 'Ų' => 'ų', + 'Ŵ' => 'ŵ', + 'Ŷ' => 'ŷ', + 'Ÿ' => 'ÿ', + 'Ź' => 'ź', + 'Ż' => 'ż', + 'Ž' => 'ž', + 'Ɓ' => 'ɓ', + 'Ƃ' => 'ƃ', + 'Ƅ' => 'ƅ', + 'Ɔ' => 'ɔ', + 'Ƈ' => 'ƈ', + 'Ɖ' => 'ɖ', + 'Ɗ' => 'ɗ', + 'Ƌ' => 'ƌ', + 'Ǝ' => 'ǝ', + 'Ə' => 'ə', + 'Ɛ' => 'ɛ', + 'Ƒ' => 'ƒ', + 'Ɠ' => 'ɠ', + 'Ɣ' => 'ɣ', + 'Ɩ' => 'ɩ', + 'Ɨ' => 'ɨ', + 'Ƙ' => 'ƙ', + 'Ɯ' => 'ɯ', + 'Ɲ' => 'ɲ', + 'Ɵ' => 'ɵ', + 'Ơ' => 'ơ', + 'Ƣ' => 'ƣ', + 'Ƥ' => 'ƥ', + 'Ʀ' => 'ʀ', + 'Ƨ' => 'ƨ', + 'Ʃ' => 'ʃ', + 'Ƭ' => 'ƭ', + 'Ʈ' => 'ʈ', + 'Ư' => 'ư', + 'Ʊ' => 'ʊ', + 'Ʋ' => 'ʋ', + 'Ƴ' => 'ƴ', + 'Ƶ' => 'ƶ', + 'Ʒ' => 'ʒ', + 'Ƹ' => 'ƹ', + 'Ƽ' => 'ƽ', + 'DŽ' => 'dž', + 'Dž' => 'dž', + 'LJ' => 'lj', + 'Lj' => 'lj', + 'NJ' => 'nj', + 'Nj' => 'nj', + 'Ǎ' => 'ǎ', + 'Ǐ' => 'ǐ', + 'Ǒ' => 'ǒ', + 'Ǔ' => 'ǔ', + 'Ǖ' => 'ǖ', + 'Ǘ' => 'ǘ', + 'Ǚ' => 'ǚ', + 'Ǜ' => 'ǜ', + 'Ǟ' => 'ǟ', + 'Ǡ' => 'ǡ', + 'Ǣ' => 'ǣ', + 'Ǥ' => 'ǥ', + 'Ǧ' => 'ǧ', + 'Ǩ' => 'ǩ', + 'Ǫ' => 'ǫ', + 'Ǭ' => 'ǭ', + 'Ǯ' => 'ǯ', + 'DZ' => 'dz', + 'Dz' => 'dz', + 'Ǵ' => 'ǵ', + 'Ƕ' => 'ƕ', + 'Ƿ' => 'ƿ', + 'Ǹ' => 'ǹ', + 'Ǻ' => 'ǻ', + 'Ǽ' => 'ǽ', + 'Ǿ' => 'ǿ', + 'Ȁ' => 'ȁ', + 'Ȃ' => 'ȃ', + 'Ȅ' => 'ȅ', + 'Ȇ' => 'ȇ', + 'Ȉ' => 'ȉ', + 'Ȋ' => 'ȋ', + 'Ȍ' => 'ȍ', + 'Ȏ' => 'ȏ', + 'Ȑ' => 'ȑ', + 'Ȓ' => 'ȓ', + 'Ȕ' => 'ȕ', + 'Ȗ' => 'ȗ', + 'Ș' => 'ș', + 'Ț' => 'ț', + 'Ȝ' => 'ȝ', + 'Ȟ' => 'ȟ', + 'Ƞ' => 'ƞ', + 'Ȣ' => 'ȣ', + 'Ȥ' => 'ȥ', + 'Ȧ' => 'ȧ', + 'Ȩ' => 'ȩ', + 'Ȫ' => 'ȫ', + 'Ȭ' => 'ȭ', + 'Ȯ' => 'ȯ', + 'Ȱ' => 'ȱ', + 'Ȳ' => 'ȳ', + 'Ⱥ' => 'ⱥ', + 'Ȼ' => 'ȼ', + 'Ƚ' => 'ƚ', + 'Ⱦ' => 'ⱦ', + 'Ɂ' => 'ɂ', + 'Ƀ' => 'ƀ', + 'Ʉ' => 'ʉ', + 'Ʌ' => 'ʌ', + 'Ɇ' => 'ɇ', + 'Ɉ' => 'ɉ', + 'Ɋ' => 'ɋ', + 'Ɍ' => 'ɍ', + 'Ɏ' => 'ɏ', + 'Ͱ' => 'ͱ', + 'Ͳ' => 'ͳ', + 'Ͷ' => 'ͷ', + 'Ϳ' => 'ϳ', + 'Ά' => 'ά', + 'Έ' => 'έ', + 'Ή' => 'ή', + 'Ί' => 'ί', + 'Ό' => 'ό', + 'Ύ' => 'ύ', + 'Ώ' => 'ώ', + 'Α' => 'α', + 'Β' => 'β', + 'Γ' => 'γ', + 'Δ' => 'δ', + 'Ε' => 'ε', + 'Ζ' => 'ζ', + 'Η' => 'η', + 'Θ' => 'θ', + 'Ι' => 'ι', + 'Κ' => 'κ', + 'Λ' => 'λ', + 'Μ' => 'μ', + 'Ν' => 'ν', + 'Ξ' => 'ξ', + 'Ο' => 'ο', + 'Π' => 'π', + 'Ρ' => 'ρ', + 'Σ' => 'σ', + 'Τ' => 'τ', + 'Υ' => 'υ', + 'Φ' => 'φ', + 'Χ' => 'χ', + 'Ψ' => 'ψ', + 'Ω' => 'ω', + 'Ϊ' => 'ϊ', + 'Ϋ' => 'ϋ', + 'Ϗ' => 'ϗ', + 'Ϙ' => 'ϙ', + 'Ϛ' => 'ϛ', + 'Ϝ' => 'ϝ', + 'Ϟ' => 'ϟ', + 'Ϡ' => 'ϡ', + 'Ϣ' => 'ϣ', + 'Ϥ' => 'ϥ', + 'Ϧ' => 'ϧ', + 'Ϩ' => 'ϩ', + 'Ϫ' => 'ϫ', + 'Ϭ' => 'ϭ', + 'Ϯ' => 'ϯ', + 'ϴ' => 'θ', + 'Ϸ' => 'ϸ', + 'Ϲ' => 'ϲ', + 'Ϻ' => 'ϻ', + 'Ͻ' => 'ͻ', + 'Ͼ' => 'ͼ', + 'Ͽ' => 'ͽ', + 'Ѐ' => 'ѐ', + 'Ё' => 'ё', + 'Ђ' => 'ђ', + 'Ѓ' => 'ѓ', + 'Є' => 'є', + 'Ѕ' => 'ѕ', + 'І' => 'і', + 'Ї' => 'ї', + 'Ј' => 'ј', + 'Љ' => 'љ', + 'Њ' => 'њ', + 'Ћ' => 'ћ', + 'Ќ' => 'ќ', + 'Ѝ' => 'ѝ', + 'Ў' => 'ў', + 'Џ' => 'џ', + 'А' => 'а', + 'Б' => 'б', + 'В' => 'в', + 'Г' => 'г', + 'Д' => 'д', + 'Е' => 'е', + 'Ж' => 'ж', + 'З' => 'з', + 'И' => 'и', + 'Й' => 'й', + 'К' => 'к', + 'Л' => 'л', + 'М' => 'м', + 'Н' => 'н', + 'О' => 'о', + 'П' => 'п', + 'Р' => 'р', + 'С' => 'с', + 'Т' => 'т', + 'У' => 'у', + 'Ф' => 'ф', + 'Х' => 'х', + 'Ц' => 'ц', + 'Ч' => 'ч', + 'Ш' => 'ш', + 'Щ' => 'щ', + 'Ъ' => 'ъ', + 'Ы' => 'ы', + 'Ь' => 'ь', + 'Э' => 'э', + 'Ю' => 'ю', + 'Я' => 'я', + 'Ѡ' => 'ѡ', + 'Ѣ' => 'ѣ', + 'Ѥ' => 'ѥ', + 'Ѧ' => 'ѧ', + 'Ѩ' => 'ѩ', + 'Ѫ' => 'ѫ', + 'Ѭ' => 'ѭ', + 'Ѯ' => 'ѯ', + 'Ѱ' => 'ѱ', + 'Ѳ' => 'ѳ', + 'Ѵ' => 'ѵ', + 'Ѷ' => 'ѷ', + 'Ѹ' => 'ѹ', + 'Ѻ' => 'ѻ', + 'Ѽ' => 'ѽ', + 'Ѿ' => 'ѿ', + 'Ҁ' => 'ҁ', + 'Ҋ' => 'ҋ', + 'Ҍ' => 'ҍ', + 'Ҏ' => 'ҏ', + 'Ґ' => 'ґ', + 'Ғ' => 'ғ', + 'Ҕ' => 'ҕ', + 'Җ' => 'җ', + 'Ҙ' => 'ҙ', + 'Қ' => 'қ', + 'Ҝ' => 'ҝ', + 'Ҟ' => 'ҟ', + 'Ҡ' => 'ҡ', + 'Ң' => 'ң', + 'Ҥ' => 'ҥ', + 'Ҧ' => 'ҧ', + 'Ҩ' => 'ҩ', + 'Ҫ' => 'ҫ', + 'Ҭ' => 'ҭ', + 'Ү' => 'ү', + 'Ұ' => 'ұ', + 'Ҳ' => 'ҳ', + 'Ҵ' => 'ҵ', + 'Ҷ' => 'ҷ', + 'Ҹ' => 'ҹ', + 'Һ' => 'һ', + 'Ҽ' => 'ҽ', + 'Ҿ' => 'ҿ', + 'Ӏ' => 'ӏ', + 'Ӂ' => 'ӂ', + 'Ӄ' => 'ӄ', + 'Ӆ' => 'ӆ', + 'Ӈ' => 'ӈ', + 'Ӊ' => 'ӊ', + 'Ӌ' => 'ӌ', + 'Ӎ' => 'ӎ', + 'Ӑ' => 'ӑ', + 'Ӓ' => 'ӓ', + 'Ӕ' => 'ӕ', + 'Ӗ' => 'ӗ', + 'Ә' => 'ә', + 'Ӛ' => 'ӛ', + 'Ӝ' => 'ӝ', + 'Ӟ' => 'ӟ', + 'Ӡ' => 'ӡ', + 'Ӣ' => 'ӣ', + 'Ӥ' => 'ӥ', + 'Ӧ' => 'ӧ', + 'Ө' => 'ө', + 'Ӫ' => 'ӫ', + 'Ӭ' => 'ӭ', + 'Ӯ' => 'ӯ', + 'Ӱ' => 'ӱ', + 'Ӳ' => 'ӳ', + 'Ӵ' => 'ӵ', + 'Ӷ' => 'ӷ', + 'Ӹ' => 'ӹ', + 'Ӻ' => 'ӻ', + 'Ӽ' => 'ӽ', + 'Ӿ' => 'ӿ', + 'Ԁ' => 'ԁ', + 'Ԃ' => 'ԃ', + 'Ԅ' => 'ԅ', + 'Ԇ' => 'ԇ', + 'Ԉ' => 'ԉ', + 'Ԋ' => 'ԋ', + 'Ԍ' => 'ԍ', + 'Ԏ' => 'ԏ', + 'Ԑ' => 'ԑ', + 'Ԓ' => 'ԓ', + 'Ԕ' => 'ԕ', + 'Ԗ' => 'ԗ', + 'Ԙ' => 'ԙ', + 'Ԛ' => 'ԛ', + 'Ԝ' => 'ԝ', + 'Ԟ' => 'ԟ', + 'Ԡ' => 'ԡ', + 'Ԣ' => 'ԣ', + 'Ԥ' => 'ԥ', + 'Ԧ' => 'ԧ', + 'Ԩ' => 'ԩ', + 'Ԫ' => 'ԫ', + 'Ԭ' => 'ԭ', + 'Ԯ' => 'ԯ', + 'Ա' => 'ա', + 'Բ' => 'բ', + 'Գ' => 'գ', + 'Դ' => 'դ', + 'Ե' => 'ե', + 'Զ' => 'զ', + 'Է' => 'է', + 'Ը' => 'ը', + 'Թ' => 'թ', + 'Ժ' => 'ժ', + 'Ի' => 'ի', + 'Լ' => 'լ', + 'Խ' => 'խ', + 'Ծ' => 'ծ', + 'Կ' => 'կ', + 'Հ' => 'հ', + 'Ձ' => 'ձ', + 'Ղ' => 'ղ', + 'Ճ' => 'ճ', + 'Մ' => 'մ', + 'Յ' => 'յ', + 'Ն' => 'ն', + 'Շ' => 'շ', + 'Ո' => 'ո', + 'Չ' => 'չ', + 'Պ' => 'պ', + 'Ջ' => 'ջ', + 'Ռ' => 'ռ', + 'Ս' => 'ս', + 'Վ' => 'վ', + 'Տ' => 'տ', + 'Ր' => 'ր', + 'Ց' => 'ց', + 'Ւ' => 'ւ', + 'Փ' => 'փ', + 'Ք' => 'ք', + 'Օ' => 'օ', + 'Ֆ' => 'ֆ', + 'Ⴀ' => 'ⴀ', + 'Ⴁ' => 'ⴁ', + 'Ⴂ' => 'ⴂ', + 'Ⴃ' => 'ⴃ', + 'Ⴄ' => 'ⴄ', + 'Ⴅ' => 'ⴅ', + 'Ⴆ' => 'ⴆ', + 'Ⴇ' => 'ⴇ', + 'Ⴈ' => 'ⴈ', + 'Ⴉ' => 'ⴉ', + 'Ⴊ' => 'ⴊ', + 'Ⴋ' => 'ⴋ', + 'Ⴌ' => 'ⴌ', + 'Ⴍ' => 'ⴍ', + 'Ⴎ' => 'ⴎ', + 'Ⴏ' => 'ⴏ', + 'Ⴐ' => 'ⴐ', + 'Ⴑ' => 'ⴑ', + 'Ⴒ' => 'ⴒ', + 'Ⴓ' => 'ⴓ', + 'Ⴔ' => 'ⴔ', + 'Ⴕ' => 'ⴕ', + 'Ⴖ' => 'ⴖ', + 'Ⴗ' => 'ⴗ', + 'Ⴘ' => 'ⴘ', + 'Ⴙ' => 'ⴙ', + 'Ⴚ' => 'ⴚ', + 'Ⴛ' => 'ⴛ', + 'Ⴜ' => 'ⴜ', + 'Ⴝ' => 'ⴝ', + 'Ⴞ' => 'ⴞ', + 'Ⴟ' => 'ⴟ', + 'Ⴠ' => 'ⴠ', + 'Ⴡ' => 'ⴡ', + 'Ⴢ' => 'ⴢ', + 'Ⴣ' => 'ⴣ', + 'Ⴤ' => 'ⴤ', + 'Ⴥ' => 'ⴥ', + 'Ⴧ' => 'ⴧ', + 'Ⴭ' => 'ⴭ', + 'Ꭰ' => 'ꭰ', + 'Ꭱ' => 'ꭱ', + 'Ꭲ' => 'ꭲ', + 'Ꭳ' => 'ꭳ', + 'Ꭴ' => 'ꭴ', + 'Ꭵ' => 'ꭵ', + 'Ꭶ' => 'ꭶ', + 'Ꭷ' => 'ꭷ', + 'Ꭸ' => 'ꭸ', + 'Ꭹ' => 'ꭹ', + 'Ꭺ' => 'ꭺ', + 'Ꭻ' => 'ꭻ', + 'Ꭼ' => 'ꭼ', + 'Ꭽ' => 'ꭽ', + 'Ꭾ' => 'ꭾ', + 'Ꭿ' => 'ꭿ', + 'Ꮀ' => 'ꮀ', + 'Ꮁ' => 'ꮁ', + 'Ꮂ' => 'ꮂ', + 'Ꮃ' => 'ꮃ', + 'Ꮄ' => 'ꮄ', + 'Ꮅ' => 'ꮅ', + 'Ꮆ' => 'ꮆ', + 'Ꮇ' => 'ꮇ', + 'Ꮈ' => 'ꮈ', + 'Ꮉ' => 'ꮉ', + 'Ꮊ' => 'ꮊ', + 'Ꮋ' => 'ꮋ', + 'Ꮌ' => 'ꮌ', + 'Ꮍ' => 'ꮍ', + 'Ꮎ' => 'ꮎ', + 'Ꮏ' => 'ꮏ', + 'Ꮐ' => 'ꮐ', + 'Ꮑ' => 'ꮑ', + 'Ꮒ' => 'ꮒ', + 'Ꮓ' => 'ꮓ', + 'Ꮔ' => 'ꮔ', + 'Ꮕ' => 'ꮕ', + 'Ꮖ' => 'ꮖ', + 'Ꮗ' => 'ꮗ', + 'Ꮘ' => 'ꮘ', + 'Ꮙ' => 'ꮙ', + 'Ꮚ' => 'ꮚ', + 'Ꮛ' => 'ꮛ', + 'Ꮜ' => 'ꮜ', + 'Ꮝ' => 'ꮝ', + 'Ꮞ' => 'ꮞ', + 'Ꮟ' => 'ꮟ', + 'Ꮠ' => 'ꮠ', + 'Ꮡ' => 'ꮡ', + 'Ꮢ' => 'ꮢ', + 'Ꮣ' => 'ꮣ', + 'Ꮤ' => 'ꮤ', + 'Ꮥ' => 'ꮥ', + 'Ꮦ' => 'ꮦ', + 'Ꮧ' => 'ꮧ', + 'Ꮨ' => 'ꮨ', + 'Ꮩ' => 'ꮩ', + 'Ꮪ' => 'ꮪ', + 'Ꮫ' => 'ꮫ', + 'Ꮬ' => 'ꮬ', + 'Ꮭ' => 'ꮭ', + 'Ꮮ' => 'ꮮ', + 'Ꮯ' => 'ꮯ', + 'Ꮰ' => 'ꮰ', + 'Ꮱ' => 'ꮱ', + 'Ꮲ' => 'ꮲ', + 'Ꮳ' => 'ꮳ', + 'Ꮴ' => 'ꮴ', + 'Ꮵ' => 'ꮵ', + 'Ꮶ' => 'ꮶ', + 'Ꮷ' => 'ꮷ', + 'Ꮸ' => 'ꮸ', + 'Ꮹ' => 'ꮹ', + 'Ꮺ' => 'ꮺ', + 'Ꮻ' => 'ꮻ', + 'Ꮼ' => 'ꮼ', + 'Ꮽ' => 'ꮽ', + 'Ꮾ' => 'ꮾ', + 'Ꮿ' => 'ꮿ', + 'Ᏸ' => 'ᏸ', + 'Ᏹ' => 'ᏹ', + 'Ᏺ' => 'ᏺ', + 'Ᏻ' => 'ᏻ', + 'Ᏼ' => 'ᏼ', + 'Ᏽ' => 'ᏽ', + 'Ა' => 'ა', + 'Ბ' => 'ბ', + 'Გ' => 'გ', + 'Დ' => 'დ', + 'Ე' => 'ე', + 'Ვ' => 'ვ', + 'Ზ' => 'ზ', + 'Თ' => 'თ', + 'Ი' => 'ი', + 'Კ' => 'კ', + 'Ლ' => 'ლ', + 'Მ' => 'მ', + 'Ნ' => 'ნ', + 'Ო' => 'ო', + 'Პ' => 'პ', + 'Ჟ' => 'ჟ', + 'Რ' => 'რ', + 'Ს' => 'ს', + 'Ტ' => 'ტ', + 'Უ' => 'უ', + 'Ფ' => 'ფ', + 'Ქ' => 'ქ', + 'Ღ' => 'ღ', + 'Ყ' => 'ყ', + 'Შ' => 'შ', + 'Ჩ' => 'ჩ', + 'Ც' => 'ც', + 'Ძ' => 'ძ', + 'Წ' => 'წ', + 'Ჭ' => 'ჭ', + 'Ხ' => 'ხ', + 'Ჯ' => 'ჯ', + 'Ჰ' => 'ჰ', + 'Ჱ' => 'ჱ', + 'Ჲ' => 'ჲ', + 'Ჳ' => 'ჳ', + 'Ჴ' => 'ჴ', + 'Ჵ' => 'ჵ', + 'Ჶ' => 'ჶ', + 'Ჷ' => 'ჷ', + 'Ჸ' => 'ჸ', + 'Ჹ' => 'ჹ', + 'Ჺ' => 'ჺ', + 'Ჽ' => 'ჽ', + 'Ჾ' => 'ჾ', + 'Ჿ' => 'ჿ', + 'Ḁ' => 'ḁ', + 'Ḃ' => 'ḃ', + 'Ḅ' => 'ḅ', + 'Ḇ' => 'ḇ', + 'Ḉ' => 'ḉ', + 'Ḋ' => 'ḋ', + 'Ḍ' => 'ḍ', + 'Ḏ' => 'ḏ', + 'Ḑ' => 'ḑ', + 'Ḓ' => 'ḓ', + 'Ḕ' => 'ḕ', + 'Ḗ' => 'ḗ', + 'Ḙ' => 'ḙ', + 'Ḛ' => 'ḛ', + 'Ḝ' => 'ḝ', + 'Ḟ' => 'ḟ', + 'Ḡ' => 'ḡ', + 'Ḣ' => 'ḣ', + 'Ḥ' => 'ḥ', + 'Ḧ' => 'ḧ', + 'Ḩ' => 'ḩ', + 'Ḫ' => 'ḫ', + 'Ḭ' => 'ḭ', + 'Ḯ' => 'ḯ', + 'Ḱ' => 'ḱ', + 'Ḳ' => 'ḳ', + 'Ḵ' => 'ḵ', + 'Ḷ' => 'ḷ', + 'Ḹ' => 'ḹ', + 'Ḻ' => 'ḻ', + 'Ḽ' => 'ḽ', + 'Ḿ' => 'ḿ', + 'Ṁ' => 'ṁ', + 'Ṃ' => 'ṃ', + 'Ṅ' => 'ṅ', + 'Ṇ' => 'ṇ', + 'Ṉ' => 'ṉ', + 'Ṋ' => 'ṋ', + 'Ṍ' => 'ṍ', + 'Ṏ' => 'ṏ', + 'Ṑ' => 'ṑ', + 'Ṓ' => 'ṓ', + 'Ṕ' => 'ṕ', + 'Ṗ' => 'ṗ', + 'Ṙ' => 'ṙ', + 'Ṛ' => 'ṛ', + 'Ṝ' => 'ṝ', + 'Ṟ' => 'ṟ', + 'Ṡ' => 'ṡ', + 'Ṣ' => 'ṣ', + 'Ṥ' => 'ṥ', + 'Ṧ' => 'ṧ', + 'Ṩ' => 'ṩ', + 'Ṫ' => 'ṫ', + 'Ṭ' => 'ṭ', + 'Ṯ' => 'ṯ', + 'Ṱ' => 'ṱ', + 'Ṳ' => 'ṳ', + 'Ṵ' => 'ṵ', + 'Ṷ' => 'ṷ', + 'Ṹ' => 'ṹ', + 'Ṻ' => 'ṻ', + 'Ṽ' => 'ṽ', + 'Ṿ' => 'ṿ', + 'Ẁ' => 'ẁ', + 'Ẃ' => 'ẃ', + 'Ẅ' => 'ẅ', + 'Ẇ' => 'ẇ', + 'Ẉ' => 'ẉ', + 'Ẋ' => 'ẋ', + 'Ẍ' => 'ẍ', + 'Ẏ' => 'ẏ', + 'Ẑ' => 'ẑ', + 'Ẓ' => 'ẓ', + 'Ẕ' => 'ẕ', + 'ẞ' => 'ß', + 'Ạ' => 'ạ', + 'Ả' => 'ả', + 'Ấ' => 'ấ', + 'Ầ' => 'ầ', + 'Ẩ' => 'ẩ', + 'Ẫ' => 'ẫ', + 'Ậ' => 'ậ', + 'Ắ' => 'ắ', + 'Ằ' => 'ằ', + 'Ẳ' => 'ẳ', + 'Ẵ' => 'ẵ', + 'Ặ' => 'ặ', + 'Ẹ' => 'ẹ', + 'Ẻ' => 'ẻ', + 'Ẽ' => 'ẽ', + 'Ế' => 'ế', + 'Ề' => 'ề', + 'Ể' => 'ể', + 'Ễ' => 'ễ', + 'Ệ' => 'ệ', + 'Ỉ' => 'ỉ', + 'Ị' => 'ị', + 'Ọ' => 'ọ', + 'Ỏ' => 'ỏ', + 'Ố' => 'ố', + 'Ồ' => 'ồ', + 'Ổ' => 'ổ', + 'Ỗ' => 'ỗ', + 'Ộ' => 'ộ', + 'Ớ' => 'ớ', + 'Ờ' => 'ờ', + 'Ở' => 'ở', + 'Ỡ' => 'ỡ', + 'Ợ' => 'ợ', + 'Ụ' => 'ụ', + 'Ủ' => 'ủ', + 'Ứ' => 'ứ', + 'Ừ' => 'ừ', + 'Ử' => 'ử', + 'Ữ' => 'ữ', + 'Ự' => 'ự', + 'Ỳ' => 'ỳ', + 'Ỵ' => 'ỵ', + 'Ỷ' => 'ỷ', + 'Ỹ' => 'ỹ', + 'Ỻ' => 'ỻ', + 'Ỽ' => 'ỽ', + 'Ỿ' => 'ỿ', + 'Ἀ' => 'ἀ', + 'Ἁ' => 'ἁ', + 'Ἂ' => 'ἂ', + 'Ἃ' => 'ἃ', + 'Ἄ' => 'ἄ', + 'Ἅ' => 'ἅ', + 'Ἆ' => 'ἆ', + 'Ἇ' => 'ἇ', + 'Ἐ' => 'ἐ', + 'Ἑ' => 'ἑ', + 'Ἒ' => 'ἒ', + 'Ἓ' => 'ἓ', + 'Ἔ' => 'ἔ', + 'Ἕ' => 'ἕ', + 'Ἠ' => 'ἠ', + 'Ἡ' => 'ἡ', + 'Ἢ' => 'ἢ', + 'Ἣ' => 'ἣ', + 'Ἤ' => 'ἤ', + 'Ἥ' => 'ἥ', + 'Ἦ' => 'ἦ', + 'Ἧ' => 'ἧ', + 'Ἰ' => 'ἰ', + 'Ἱ' => 'ἱ', + 'Ἲ' => 'ἲ', + 'Ἳ' => 'ἳ', + 'Ἴ' => 'ἴ', + 'Ἵ' => 'ἵ', + 'Ἶ' => 'ἶ', + 'Ἷ' => 'ἷ', + 'Ὀ' => 'ὀ', + 'Ὁ' => 'ὁ', + 'Ὂ' => 'ὂ', + 'Ὃ' => 'ὃ', + 'Ὄ' => 'ὄ', + 'Ὅ' => 'ὅ', + 'Ὑ' => 'ὑ', + 'Ὓ' => 'ὓ', + 'Ὕ' => 'ὕ', + 'Ὗ' => 'ὗ', + 'Ὠ' => 'ὠ', + 'Ὡ' => 'ὡ', + 'Ὢ' => 'ὢ', + 'Ὣ' => 'ὣ', + 'Ὤ' => 'ὤ', + 'Ὥ' => 'ὥ', + 'Ὦ' => 'ὦ', + 'Ὧ' => 'ὧ', + 'ᾈ' => 'ᾀ', + 'ᾉ' => 'ᾁ', + 'ᾊ' => 'ᾂ', + 'ᾋ' => 'ᾃ', + 'ᾌ' => 'ᾄ', + 'ᾍ' => 'ᾅ', + 'ᾎ' => 'ᾆ', + 'ᾏ' => 'ᾇ', + 'ᾘ' => 'ᾐ', + 'ᾙ' => 'ᾑ', + 'ᾚ' => 'ᾒ', + 'ᾛ' => 'ᾓ', + 'ᾜ' => 'ᾔ', + 'ᾝ' => 'ᾕ', + 'ᾞ' => 'ᾖ', + 'ᾟ' => 'ᾗ', + 'ᾨ' => 'ᾠ', + 'ᾩ' => 'ᾡ', + 'ᾪ' => 'ᾢ', + 'ᾫ' => 'ᾣ', + 'ᾬ' => 'ᾤ', + 'ᾭ' => 'ᾥ', + 'ᾮ' => 'ᾦ', + 'ᾯ' => 'ᾧ', + 'Ᾰ' => 'ᾰ', + 'Ᾱ' => 'ᾱ', + 'Ὰ' => 'ὰ', + 'Ά' => 'ά', + 'ᾼ' => 'ᾳ', + 'Ὲ' => 'ὲ', + 'Έ' => 'έ', + 'Ὴ' => 'ὴ', + 'Ή' => 'ή', + 'ῌ' => 'ῃ', + 'Ῐ' => 'ῐ', + 'Ῑ' => 'ῑ', + 'Ὶ' => 'ὶ', + 'Ί' => 'ί', + 'Ῠ' => 'ῠ', + 'Ῡ' => 'ῡ', + 'Ὺ' => 'ὺ', + 'Ύ' => 'ύ', + 'Ῥ' => 'ῥ', + 'Ὸ' => 'ὸ', + 'Ό' => 'ό', + 'Ὼ' => 'ὼ', + 'Ώ' => 'ώ', + 'ῼ' => 'ῳ', + 'Ω' => 'ω', + 'K' => 'k', + 'Å' => 'å', + 'Ⅎ' => 'ⅎ', + 'Ⅰ' => 'ⅰ', + 'Ⅱ' => 'ⅱ', + 'Ⅲ' => 'ⅲ', + 'Ⅳ' => 'ⅳ', + 'Ⅴ' => 'ⅴ', + 'Ⅵ' => 'ⅵ', + 'Ⅶ' => 'ⅶ', + 'Ⅷ' => 'ⅷ', + 'Ⅸ' => 'ⅸ', + 'Ⅹ' => 'ⅹ', + 'Ⅺ' => 'ⅺ', + 'Ⅻ' => 'ⅻ', + 'Ⅼ' => 'ⅼ', + 'Ⅽ' => 'ⅽ', + 'Ⅾ' => 'ⅾ', + 'Ⅿ' => 'ⅿ', + 'Ↄ' => 'ↄ', + 'Ⓐ' => 'ⓐ', + 'Ⓑ' => 'ⓑ', + 'Ⓒ' => 'ⓒ', + 'Ⓓ' => 'ⓓ', + 'Ⓔ' => 'ⓔ', + 'Ⓕ' => 'ⓕ', + 'Ⓖ' => 'ⓖ', + 'Ⓗ' => 'ⓗ', + 'Ⓘ' => 'ⓘ', + 'Ⓙ' => 'ⓙ', + 'Ⓚ' => 'ⓚ', + 'Ⓛ' => 'ⓛ', + 'Ⓜ' => 'ⓜ', + 'Ⓝ' => 'ⓝ', + 'Ⓞ' => 'ⓞ', + 'Ⓟ' => 'ⓟ', + 'Ⓠ' => 'ⓠ', + 'Ⓡ' => 'ⓡ', + 'Ⓢ' => 'ⓢ', + 'Ⓣ' => 'ⓣ', + 'Ⓤ' => 'ⓤ', + 'Ⓥ' => 'ⓥ', + 'Ⓦ' => 'ⓦ', + 'Ⓧ' => 'ⓧ', + 'Ⓨ' => 'ⓨ', + 'Ⓩ' => 'ⓩ', + 'Ⰰ' => 'ⰰ', + 'Ⰱ' => 'ⰱ', + 'Ⰲ' => 'ⰲ', + 'Ⰳ' => 'ⰳ', + 'Ⰴ' => 'ⰴ', + 'Ⰵ' => 'ⰵ', + 'Ⰶ' => 'ⰶ', + 'Ⰷ' => 'ⰷ', + 'Ⰸ' => 'ⰸ', + 'Ⰹ' => 'ⰹ', + 'Ⰺ' => 'ⰺ', + 'Ⰻ' => 'ⰻ', + 'Ⰼ' => 'ⰼ', + 'Ⰽ' => 'ⰽ', + 'Ⰾ' => 'ⰾ', + 'Ⰿ' => 'ⰿ', + 'Ⱀ' => 'ⱀ', + 'Ⱁ' => 'ⱁ', + 'Ⱂ' => 'ⱂ', + 'Ⱃ' => 'ⱃ', + 'Ⱄ' => 'ⱄ', + 'Ⱅ' => 'ⱅ', + 'Ⱆ' => 'ⱆ', + 'Ⱇ' => 'ⱇ', + 'Ⱈ' => 'ⱈ', + 'Ⱉ' => 'ⱉ', + 'Ⱊ' => 'ⱊ', + 'Ⱋ' => 'ⱋ', + 'Ⱌ' => 'ⱌ', + 'Ⱍ' => 'ⱍ', + 'Ⱎ' => 'ⱎ', + 'Ⱏ' => 'ⱏ', + 'Ⱐ' => 'ⱐ', + 'Ⱑ' => 'ⱑ', + 'Ⱒ' => 'ⱒ', + 'Ⱓ' => 'ⱓ', + 'Ⱔ' => 'ⱔ', + 'Ⱕ' => 'ⱕ', + 'Ⱖ' => 'ⱖ', + 'Ⱗ' => 'ⱗ', + 'Ⱘ' => 'ⱘ', + 'Ⱙ' => 'ⱙ', + 'Ⱚ' => 'ⱚ', + 'Ⱛ' => 'ⱛ', + 'Ⱜ' => 'ⱜ', + 'Ⱝ' => 'ⱝ', + 'Ⱞ' => 'ⱞ', + 'Ⱡ' => 'ⱡ', + 'Ɫ' => 'ɫ', + 'Ᵽ' => 'ᵽ', + 'Ɽ' => 'ɽ', + 'Ⱨ' => 'ⱨ', + 'Ⱪ' => 'ⱪ', + 'Ⱬ' => 'ⱬ', + 'Ɑ' => 'ɑ', + 'Ɱ' => 'ɱ', + 'Ɐ' => 'ɐ', + 'Ɒ' => 'ɒ', + 'Ⱳ' => 'ⱳ', + 'Ⱶ' => 'ⱶ', + 'Ȿ' => 'ȿ', + 'Ɀ' => 'ɀ', + 'Ⲁ' => 'ⲁ', + 'Ⲃ' => 'ⲃ', + 'Ⲅ' => 'ⲅ', + 'Ⲇ' => 'ⲇ', + 'Ⲉ' => 'ⲉ', + 'Ⲋ' => 'ⲋ', + 'Ⲍ' => 'ⲍ', + 'Ⲏ' => 'ⲏ', + 'Ⲑ' => 'ⲑ', + 'Ⲓ' => 'ⲓ', + 'Ⲕ' => 'ⲕ', + 'Ⲗ' => 'ⲗ', + 'Ⲙ' => 'ⲙ', + 'Ⲛ' => 'ⲛ', + 'Ⲝ' => 'ⲝ', + 'Ⲟ' => 'ⲟ', + 'Ⲡ' => 'ⲡ', + 'Ⲣ' => 'ⲣ', + 'Ⲥ' => 'ⲥ', + 'Ⲧ' => 'ⲧ', + 'Ⲩ' => 'ⲩ', + 'Ⲫ' => 'ⲫ', + 'Ⲭ' => 'ⲭ', + 'Ⲯ' => 'ⲯ', + 'Ⲱ' => 'ⲱ', + 'Ⲳ' => 'ⲳ', + 'Ⲵ' => 'ⲵ', + 'Ⲷ' => 'ⲷ', + 'Ⲹ' => 'ⲹ', + 'Ⲻ' => 'ⲻ', + 'Ⲽ' => 'ⲽ', + 'Ⲿ' => 'ⲿ', + 'Ⳁ' => 'ⳁ', + 'Ⳃ' => 'ⳃ', + 'Ⳅ' => 'ⳅ', + 'Ⳇ' => 'ⳇ', + 'Ⳉ' => 'ⳉ', + 'Ⳋ' => 'ⳋ', + 'Ⳍ' => 'ⳍ', + 'Ⳏ' => 'ⳏ', + 'Ⳑ' => 'ⳑ', + 'Ⳓ' => 'ⳓ', + 'Ⳕ' => 'ⳕ', + 'Ⳗ' => 'ⳗ', + 'Ⳙ' => 'ⳙ', + 'Ⳛ' => 'ⳛ', + 'Ⳝ' => 'ⳝ', + 'Ⳟ' => 'ⳟ', + 'Ⳡ' => 'ⳡ', + 'Ⳣ' => 'ⳣ', + 'Ⳬ' => 'ⳬ', + 'Ⳮ' => 'ⳮ', + 'Ⳳ' => 'ⳳ', + 'Ꙁ' => 'ꙁ', + 'Ꙃ' => 'ꙃ', + 'Ꙅ' => 'ꙅ', + 'Ꙇ' => 'ꙇ', + 'Ꙉ' => 'ꙉ', + 'Ꙋ' => 'ꙋ', + 'Ꙍ' => 'ꙍ', + 'Ꙏ' => 'ꙏ', + 'Ꙑ' => 'ꙑ', + 'Ꙓ' => 'ꙓ', + 'Ꙕ' => 'ꙕ', + 'Ꙗ' => 'ꙗ', + 'Ꙙ' => 'ꙙ', + 'Ꙛ' => 'ꙛ', + 'Ꙝ' => 'ꙝ', + 'Ꙟ' => 'ꙟ', + 'Ꙡ' => 'ꙡ', + 'Ꙣ' => 'ꙣ', + 'Ꙥ' => 'ꙥ', + 'Ꙧ' => 'ꙧ', + 'Ꙩ' => 'ꙩ', + 'Ꙫ' => 'ꙫ', + 'Ꙭ' => 'ꙭ', + 'Ꚁ' => 'ꚁ', + 'Ꚃ' => 'ꚃ', + 'Ꚅ' => 'ꚅ', + 'Ꚇ' => 'ꚇ', + 'Ꚉ' => 'ꚉ', + 'Ꚋ' => 'ꚋ', + 'Ꚍ' => 'ꚍ', + 'Ꚏ' => 'ꚏ', + 'Ꚑ' => 'ꚑ', + 'Ꚓ' => 'ꚓ', + 'Ꚕ' => 'ꚕ', + 'Ꚗ' => 'ꚗ', + 'Ꚙ' => 'ꚙ', + 'Ꚛ' => 'ꚛ', + 'Ꜣ' => 'ꜣ', + 'Ꜥ' => 'ꜥ', + 'Ꜧ' => 'ꜧ', + 'Ꜩ' => 'ꜩ', + 'Ꜫ' => 'ꜫ', + 'Ꜭ' => 'ꜭ', + 'Ꜯ' => 'ꜯ', + 'Ꜳ' => 'ꜳ', + 'Ꜵ' => 'ꜵ', + 'Ꜷ' => 'ꜷ', + 'Ꜹ' => 'ꜹ', + 'Ꜻ' => 'ꜻ', + 'Ꜽ' => 'ꜽ', + 'Ꜿ' => 'ꜿ', + 'Ꝁ' => 'ꝁ', + 'Ꝃ' => 'ꝃ', + 'Ꝅ' => 'ꝅ', + 'Ꝇ' => 'ꝇ', + 'Ꝉ' => 'ꝉ', + 'Ꝋ' => 'ꝋ', + 'Ꝍ' => 'ꝍ', + 'Ꝏ' => 'ꝏ', + 'Ꝑ' => 'ꝑ', + 'Ꝓ' => 'ꝓ', + 'Ꝕ' => 'ꝕ', + 'Ꝗ' => 'ꝗ', + 'Ꝙ' => 'ꝙ', + 'Ꝛ' => 'ꝛ', + 'Ꝝ' => 'ꝝ', + 'Ꝟ' => 'ꝟ', + 'Ꝡ' => 'ꝡ', + 'Ꝣ' => 'ꝣ', + 'Ꝥ' => 'ꝥ', + 'Ꝧ' => 'ꝧ', + 'Ꝩ' => 'ꝩ', + 'Ꝫ' => 'ꝫ', + 'Ꝭ' => 'ꝭ', + 'Ꝯ' => 'ꝯ', + 'Ꝺ' => 'ꝺ', + 'Ꝼ' => 'ꝼ', + 'Ᵹ' => 'ᵹ', + 'Ꝿ' => 'ꝿ', + 'Ꞁ' => 'ꞁ', + 'Ꞃ' => 'ꞃ', + 'Ꞅ' => 'ꞅ', + 'Ꞇ' => 'ꞇ', + 'Ꞌ' => 'ꞌ', + 'Ɥ' => 'ɥ', + 'Ꞑ' => 'ꞑ', + 'Ꞓ' => 'ꞓ', + 'Ꞗ' => 'ꞗ', + 'Ꞙ' => 'ꞙ', + 'Ꞛ' => 'ꞛ', + 'Ꞝ' => 'ꞝ', + 'Ꞟ' => 'ꞟ', + 'Ꞡ' => 'ꞡ', + 'Ꞣ' => 'ꞣ', + 'Ꞥ' => 'ꞥ', + 'Ꞧ' => 'ꞧ', + 'Ꞩ' => 'ꞩ', + 'Ɦ' => 'ɦ', + 'Ɜ' => 'ɜ', + 'Ɡ' => 'ɡ', + 'Ɬ' => 'ɬ', + 'Ɪ' => 'ɪ', + 'Ʞ' => 'ʞ', + 'Ʇ' => 'ʇ', + 'Ʝ' => 'ʝ', + 'Ꭓ' => 'ꭓ', + 'Ꞵ' => 'ꞵ', + 'Ꞷ' => 'ꞷ', + 'Ꞹ' => 'ꞹ', + 'Ꞻ' => 'ꞻ', + 'Ꞽ' => 'ꞽ', + 'Ꞿ' => 'ꞿ', + 'Ꟃ' => 'ꟃ', + 'Ꞔ' => 'ꞔ', + 'Ʂ' => 'ʂ', + 'Ᶎ' => 'ᶎ', + 'Ꟈ' => 'ꟈ', + 'Ꟊ' => 'ꟊ', + 'Ꟶ' => 'ꟶ', + 'A' => 'a', + 'B' => 'b', + 'C' => 'c', + 'D' => 'd', + 'E' => 'e', + 'F' => 'f', + 'G' => 'g', + 'H' => 'h', + 'I' => 'i', + 'J' => 'j', + 'K' => 'k', + 'L' => 'l', + 'M' => 'm', + 'N' => 'n', + 'O' => 'o', + 'P' => 'p', + 'Q' => 'q', + 'R' => 'r', + 'S' => 's', + 'T' => 't', + 'U' => 'u', + 'V' => 'v', + 'W' => 'w', + 'X' => 'x', + 'Y' => 'y', + 'Z' => 'z', + '𐐀' => '𐐨', + '𐐁' => '𐐩', + '𐐂' => '𐐪', + '𐐃' => '𐐫', + '𐐄' => '𐐬', + '𐐅' => '𐐭', + '𐐆' => '𐐮', + '𐐇' => '𐐯', + '𐐈' => '𐐰', + '𐐉' => '𐐱', + '𐐊' => '𐐲', + '𐐋' => '𐐳', + '𐐌' => '𐐴', + '𐐍' => '𐐵', + '𐐎' => '𐐶', + '𐐏' => '𐐷', + '𐐐' => '𐐸', + '𐐑' => '𐐹', + '𐐒' => '𐐺', + '𐐓' => '𐐻', + '𐐔' => '𐐼', + '𐐕' => '𐐽', + '𐐖' => '𐐾', + '𐐗' => '𐐿', + '𐐘' => '𐑀', + '𐐙' => '𐑁', + '𐐚' => '𐑂', + '𐐛' => '𐑃', + '𐐜' => '𐑄', + '𐐝' => '𐑅', + '𐐞' => '𐑆', + '𐐟' => '𐑇', + '𐐠' => '𐑈', + '𐐡' => '𐑉', + '𐐢' => '𐑊', + '𐐣' => '𐑋', + '𐐤' => '𐑌', + '𐐥' => '𐑍', + '𐐦' => '𐑎', + '𐐧' => '𐑏', + '𐒰' => '𐓘', + '𐒱' => '𐓙', + '𐒲' => '𐓚', + '𐒳' => '𐓛', + '𐒴' => '𐓜', + '𐒵' => '𐓝', + '𐒶' => '𐓞', + '𐒷' => '𐓟', + '𐒸' => '𐓠', + '𐒹' => '𐓡', + '𐒺' => '𐓢', + '𐒻' => '𐓣', + '𐒼' => '𐓤', + '𐒽' => '𐓥', + '𐒾' => '𐓦', + '𐒿' => '𐓧', + '𐓀' => '𐓨', + '𐓁' => '𐓩', + '𐓂' => '𐓪', + '𐓃' => '𐓫', + '𐓄' => '𐓬', + '𐓅' => '𐓭', + '𐓆' => '𐓮', + '𐓇' => '𐓯', + '𐓈' => '𐓰', + '𐓉' => '𐓱', + '𐓊' => '𐓲', + '𐓋' => '𐓳', + '𐓌' => '𐓴', + '𐓍' => '𐓵', + '𐓎' => '𐓶', + '𐓏' => '𐓷', + '𐓐' => '𐓸', + '𐓑' => '𐓹', + '𐓒' => '𐓺', + '𐓓' => '𐓻', + '𐲀' => '𐳀', + '𐲁' => '𐳁', + '𐲂' => '𐳂', + '𐲃' => '𐳃', + '𐲄' => '𐳄', + '𐲅' => '𐳅', + '𐲆' => '𐳆', + '𐲇' => '𐳇', + '𐲈' => '𐳈', + '𐲉' => '𐳉', + '𐲊' => '𐳊', + '𐲋' => '𐳋', + '𐲌' => '𐳌', + '𐲍' => '𐳍', + '𐲎' => '𐳎', + '𐲏' => '𐳏', + '𐲐' => '𐳐', + '𐲑' => '𐳑', + '𐲒' => '𐳒', + '𐲓' => '𐳓', + '𐲔' => '𐳔', + '𐲕' => '𐳕', + '𐲖' => '𐳖', + '𐲗' => '𐳗', + '𐲘' => '𐳘', + '𐲙' => '𐳙', + '𐲚' => '𐳚', + '𐲛' => '𐳛', + '𐲜' => '𐳜', + '𐲝' => '𐳝', + '𐲞' => '𐳞', + '𐲟' => '𐳟', + '𐲠' => '𐳠', + '𐲡' => '𐳡', + '𐲢' => '𐳢', + '𐲣' => '𐳣', + '𐲤' => '𐳤', + '𐲥' => '𐳥', + '𐲦' => '𐳦', + '𐲧' => '𐳧', + '𐲨' => '𐳨', + '𐲩' => '𐳩', + '𐲪' => '𐳪', + '𐲫' => '𐳫', + '𐲬' => '𐳬', + '𐲭' => '𐳭', + '𐲮' => '𐳮', + '𐲯' => '𐳯', + '𐲰' => '𐳰', + '𐲱' => '𐳱', + '𐲲' => '𐳲', + '𑢠' => '𑣀', + '𑢡' => '𑣁', + '𑢢' => '𑣂', + '𑢣' => '𑣃', + '𑢤' => '𑣄', + '𑢥' => '𑣅', + '𑢦' => '𑣆', + '𑢧' => '𑣇', + '𑢨' => '𑣈', + '𑢩' => '𑣉', + '𑢪' => '𑣊', + '𑢫' => '𑣋', + '𑢬' => '𑣌', + '𑢭' => '𑣍', + '𑢮' => '𑣎', + '𑢯' => '𑣏', + '𑢰' => '𑣐', + '𑢱' => '𑣑', + '𑢲' => '𑣒', + '𑢳' => '𑣓', + '𑢴' => '𑣔', + '𑢵' => '𑣕', + '𑢶' => '𑣖', + '𑢷' => '𑣗', + '𑢸' => '𑣘', + '𑢹' => '𑣙', + '𑢺' => '𑣚', + '𑢻' => '𑣛', + '𑢼' => '𑣜', + '𑢽' => '𑣝', + '𑢾' => '𑣞', + '𑢿' => '𑣟', + '𖹀' => '𖹠', + '𖹁' => '𖹡', + '𖹂' => '𖹢', + '𖹃' => '𖹣', + '𖹄' => '𖹤', + '𖹅' => '𖹥', + '𖹆' => '𖹦', + '𖹇' => '𖹧', + '𖹈' => '𖹨', + '𖹉' => '𖹩', + '𖹊' => '𖹪', + '𖹋' => '𖹫', + '𖹌' => '𖹬', + '𖹍' => '𖹭', + '𖹎' => '𖹮', + '𖹏' => '𖹯', + '𖹐' => '𖹰', + '𖹑' => '𖹱', + '𖹒' => '𖹲', + '𖹓' => '𖹳', + '𖹔' => '𖹴', + '𖹕' => '𖹵', + '𖹖' => '𖹶', + '𖹗' => '𖹷', + '𖹘' => '𖹸', + '𖹙' => '𖹹', + '𖹚' => '𖹺', + '𖹛' => '𖹻', + '𖹜' => '𖹼', + '𖹝' => '𖹽', + '𖹞' => '𖹾', + '𖹟' => '𖹿', + '𞤀' => '𞤢', + '𞤁' => '𞤣', + '𞤂' => '𞤤', + '𞤃' => '𞤥', + '𞤄' => '𞤦', + '𞤅' => '𞤧', + '𞤆' => '𞤨', + '𞤇' => '𞤩', + '𞤈' => '𞤪', + '𞤉' => '𞤫', + '𞤊' => '𞤬', + '𞤋' => '𞤭', + '𞤌' => '𞤮', + '𞤍' => '𞤯', + '𞤎' => '𞤰', + '𞤏' => '𞤱', + '𞤐' => '𞤲', + '𞤑' => '𞤳', + '𞤒' => '𞤴', + '𞤓' => '𞤵', + '𞤔' => '𞤶', + '𞤕' => '𞤷', + '𞤖' => '𞤸', + '𞤗' => '𞤹', + '𞤘' => '𞤺', + '𞤙' => '𞤻', + '𞤚' => '𞤼', + '𞤛' => '𞤽', + '𞤜' => '𞤾', + '𞤝' => '𞤿', + '𞤞' => '𞥀', + '𞤟' => '𞥁', + '𞤠' => '𞥂', + '𞤡' => '𞥃', +); diff --git a/docker/statistics/vendor/symfony/polyfill-mbstring/Resources/unidata/titleCaseRegexp.php b/docker/statistics/vendor/symfony/polyfill-mbstring/Resources/unidata/titleCaseRegexp.php new file mode 100644 index 00000000..2a8f6e73 --- /dev/null +++ b/docker/statistics/vendor/symfony/polyfill-mbstring/Resources/unidata/titleCaseRegexp.php @@ -0,0 +1,5 @@ + 'A', + 'b' => 'B', + 'c' => 'C', + 'd' => 'D', + 'e' => 'E', + 'f' => 'F', + 'g' => 'G', + 'h' => 'H', + 'i' => 'I', + 'j' => 'J', + 'k' => 'K', + 'l' => 'L', + 'm' => 'M', + 'n' => 'N', + 'o' => 'O', + 'p' => 'P', + 'q' => 'Q', + 'r' => 'R', + 's' => 'S', + 't' => 'T', + 'u' => 'U', + 'v' => 'V', + 'w' => 'W', + 'x' => 'X', + 'y' => 'Y', + 'z' => 'Z', + 'µ' => 'Μ', + 'à' => 'À', + 'á' => 'Á', + 'â' => 'Â', + 'ã' => 'Ã', + 'ä' => 'Ä', + 'å' => 'Å', + 'æ' => 'Æ', + 'ç' => 'Ç', + 'è' => 'È', + 'é' => 'É', + 'ê' => 'Ê', + 'ë' => 'Ë', + 'ì' => 'Ì', + 'í' => 'Í', + 'î' => 'Î', + 'ï' => 'Ï', + 'ð' => 'Ð', + 'ñ' => 'Ñ', + 'ò' => 'Ò', + 'ó' => 'Ó', + 'ô' => 'Ô', + 'õ' => 'Õ', + 'ö' => 'Ö', + 'ø' => 'Ø', + 'ù' => 'Ù', + 'ú' => 'Ú', + 'û' => 'Û', + 'ü' => 'Ü', + 'ý' => 'Ý', + 'þ' => 'Þ', + 'ÿ' => 'Ÿ', + 'ā' => 'Ā', + 'ă' => 'Ă', + 'ą' => 'Ą', + 'ć' => 'Ć', + 'ĉ' => 'Ĉ', + 'ċ' => 'Ċ', + 'č' => 'Č', + 'ď' => 'Ď', + 'đ' => 'Đ', + 'ē' => 'Ē', + 'ĕ' => 'Ĕ', + 'ė' => 'Ė', + 'ę' => 'Ę', + 'ě' => 'Ě', + 'ĝ' => 'Ĝ', + 'ğ' => 'Ğ', + 'ġ' => 'Ġ', + 'ģ' => 'Ģ', + 'ĥ' => 'Ĥ', + 'ħ' => 'Ħ', + 'ĩ' => 'Ĩ', + 'ī' => 'Ī', + 'ĭ' => 'Ĭ', + 'į' => 'Į', + 'ı' => 'I', + 'ij' => 'IJ', + 'ĵ' => 'Ĵ', + 'ķ' => 'Ķ', + 'ĺ' => 'Ĺ', + 'ļ' => 'Ļ', + 'ľ' => 'Ľ', + 'ŀ' => 'Ŀ', + 'ł' => 'Ł', + 'ń' => 'Ń', + 'ņ' => 'Ņ', + 'ň' => 'Ň', + 'ŋ' => 'Ŋ', + 'ō' => 'Ō', + 'ŏ' => 'Ŏ', + 'ő' => 'Ő', + 'œ' => 'Œ', + 'ŕ' => 'Ŕ', + 'ŗ' => 'Ŗ', + 'ř' => 'Ř', + 'ś' => 'Ś', + 'ŝ' => 'Ŝ', + 'ş' => 'Ş', + 'š' => 'Š', + 'ţ' => 'Ţ', + 'ť' => 'Ť', + 'ŧ' => 'Ŧ', + 'ũ' => 'Ũ', + 'ū' => 'Ū', + 'ŭ' => 'Ŭ', + 'ů' => 'Ů', + 'ű' => 'Ű', + 'ų' => 'Ų', + 'ŵ' => 'Ŵ', + 'ŷ' => 'Ŷ', + 'ź' => 'Ź', + 'ż' => 'Ż', + 'ž' => 'Ž', + 'ſ' => 'S', + 'ƀ' => 'Ƀ', + 'ƃ' => 'Ƃ', + 'ƅ' => 'Ƅ', + 'ƈ' => 'Ƈ', + 'ƌ' => 'Ƌ', + 'ƒ' => 'Ƒ', + 'ƕ' => 'Ƕ', + 'ƙ' => 'Ƙ', + 'ƚ' => 'Ƚ', + 'ƞ' => 'Ƞ', + 'ơ' => 'Ơ', + 'ƣ' => 'Ƣ', + 'ƥ' => 'Ƥ', + 'ƨ' => 'Ƨ', + 'ƭ' => 'Ƭ', + 'ư' => 'Ư', + 'ƴ' => 'Ƴ', + 'ƶ' => 'Ƶ', + 'ƹ' => 'Ƹ', + 'ƽ' => 'Ƽ', + 'ƿ' => 'Ƿ', + 'Dž' => 'DŽ', + 'dž' => 'DŽ', + 'Lj' => 'LJ', + 'lj' => 'LJ', + 'Nj' => 'NJ', + 'nj' => 'NJ', + 'ǎ' => 'Ǎ', + 'ǐ' => 'Ǐ', + 'ǒ' => 'Ǒ', + 'ǔ' => 'Ǔ', + 'ǖ' => 'Ǖ', + 'ǘ' => 'Ǘ', + 'ǚ' => 'Ǚ', + 'ǜ' => 'Ǜ', + 'ǝ' => 'Ǝ', + 'ǟ' => 'Ǟ', + 'ǡ' => 'Ǡ', + 'ǣ' => 'Ǣ', + 'ǥ' => 'Ǥ', + 'ǧ' => 'Ǧ', + 'ǩ' => 'Ǩ', + 'ǫ' => 'Ǫ', + 'ǭ' => 'Ǭ', + 'ǯ' => 'Ǯ', + 'Dz' => 'DZ', + 'dz' => 'DZ', + 'ǵ' => 'Ǵ', + 'ǹ' => 'Ǹ', + 'ǻ' => 'Ǻ', + 'ǽ' => 'Ǽ', + 'ǿ' => 'Ǿ', + 'ȁ' => 'Ȁ', + 'ȃ' => 'Ȃ', + 'ȅ' => 'Ȅ', + 'ȇ' => 'Ȇ', + 'ȉ' => 'Ȉ', + 'ȋ' => 'Ȋ', + 'ȍ' => 'Ȍ', + 'ȏ' => 'Ȏ', + 'ȑ' => 'Ȑ', + 'ȓ' => 'Ȓ', + 'ȕ' => 'Ȕ', + 'ȗ' => 'Ȗ', + 'ș' => 'Ș', + 'ț' => 'Ț', + 'ȝ' => 'Ȝ', + 'ȟ' => 'Ȟ', + 'ȣ' => 'Ȣ', + 'ȥ' => 'Ȥ', + 'ȧ' => 'Ȧ', + 'ȩ' => 'Ȩ', + 'ȫ' => 'Ȫ', + 'ȭ' => 'Ȭ', + 'ȯ' => 'Ȯ', + 'ȱ' => 'Ȱ', + 'ȳ' => 'Ȳ', + 'ȼ' => 'Ȼ', + 'ȿ' => 'Ȿ', + 'ɀ' => 'Ɀ', + 'ɂ' => 'Ɂ', + 'ɇ' => 'Ɇ', + 'ɉ' => 'Ɉ', + 'ɋ' => 'Ɋ', + 'ɍ' => 'Ɍ', + 'ɏ' => 'Ɏ', + 'ɐ' => 'Ɐ', + 'ɑ' => 'Ɑ', + 'ɒ' => 'Ɒ', + 'ɓ' => 'Ɓ', + 'ɔ' => 'Ɔ', + 'ɖ' => 'Ɖ', + 'ɗ' => 'Ɗ', + 'ə' => 'Ə', + 'ɛ' => 'Ɛ', + 'ɜ' => 'Ɜ', + 'ɠ' => 'Ɠ', + 'ɡ' => 'Ɡ', + 'ɣ' => 'Ɣ', + 'ɥ' => 'Ɥ', + 'ɦ' => 'Ɦ', + 'ɨ' => 'Ɨ', + 'ɩ' => 'Ɩ', + 'ɪ' => 'Ɪ', + 'ɫ' => 'Ɫ', + 'ɬ' => 'Ɬ', + 'ɯ' => 'Ɯ', + 'ɱ' => 'Ɱ', + 'ɲ' => 'Ɲ', + 'ɵ' => 'Ɵ', + 'ɽ' => 'Ɽ', + 'ʀ' => 'Ʀ', + 'ʂ' => 'Ʂ', + 'ʃ' => 'Ʃ', + 'ʇ' => 'Ʇ', + 'ʈ' => 'Ʈ', + 'ʉ' => 'Ʉ', + 'ʊ' => 'Ʊ', + 'ʋ' => 'Ʋ', + 'ʌ' => 'Ʌ', + 'ʒ' => 'Ʒ', + 'ʝ' => 'Ʝ', + 'ʞ' => 'Ʞ', + 'ͅ' => 'Ι', + 'ͱ' => 'Ͱ', + 'ͳ' => 'Ͳ', + 'ͷ' => 'Ͷ', + 'ͻ' => 'Ͻ', + 'ͼ' => 'Ͼ', + 'ͽ' => 'Ͽ', + 'ά' => 'Ά', + 'έ' => 'Έ', + 'ή' => 'Ή', + 'ί' => 'Ί', + 'α' => 'Α', + 'β' => 'Β', + 'γ' => 'Γ', + 'δ' => 'Δ', + 'ε' => 'Ε', + 'ζ' => 'Ζ', + 'η' => 'Η', + 'θ' => 'Θ', + 'ι' => 'Ι', + 'κ' => 'Κ', + 'λ' => 'Λ', + 'μ' => 'Μ', + 'ν' => 'Ν', + 'ξ' => 'Ξ', + 'ο' => 'Ο', + 'π' => 'Π', + 'ρ' => 'Ρ', + 'ς' => 'Σ', + 'σ' => 'Σ', + 'τ' => 'Τ', + 'υ' => 'Υ', + 'φ' => 'Φ', + 'χ' => 'Χ', + 'ψ' => 'Ψ', + 'ω' => 'Ω', + 'ϊ' => 'Ϊ', + 'ϋ' => 'Ϋ', + 'ό' => 'Ό', + 'ύ' => 'Ύ', + 'ώ' => 'Ώ', + 'ϐ' => 'Β', + 'ϑ' => 'Θ', + 'ϕ' => 'Φ', + 'ϖ' => 'Π', + 'ϗ' => 'Ϗ', + 'ϙ' => 'Ϙ', + 'ϛ' => 'Ϛ', + 'ϝ' => 'Ϝ', + 'ϟ' => 'Ϟ', + 'ϡ' => 'Ϡ', + 'ϣ' => 'Ϣ', + 'ϥ' => 'Ϥ', + 'ϧ' => 'Ϧ', + 'ϩ' => 'Ϩ', + 'ϫ' => 'Ϫ', + 'ϭ' => 'Ϭ', + 'ϯ' => 'Ϯ', + 'ϰ' => 'Κ', + 'ϱ' => 'Ρ', + 'ϲ' => 'Ϲ', + 'ϳ' => 'Ϳ', + 'ϵ' => 'Ε', + 'ϸ' => 'Ϸ', + 'ϻ' => 'Ϻ', + 'а' => 'А', + 'б' => 'Б', + 'в' => 'В', + 'г' => 'Г', + 'д' => 'Д', + 'е' => 'Е', + 'ж' => 'Ж', + 'з' => 'З', + 'и' => 'И', + 'й' => 'Й', + 'к' => 'К', + 'л' => 'Л', + 'м' => 'М', + 'н' => 'Н', + 'о' => 'О', + 'п' => 'П', + 'р' => 'Р', + 'с' => 'С', + 'т' => 'Т', + 'у' => 'У', + 'ф' => 'Ф', + 'х' => 'Х', + 'ц' => 'Ц', + 'ч' => 'Ч', + 'ш' => 'Ш', + 'щ' => 'Щ', + 'ъ' => 'Ъ', + 'ы' => 'Ы', + 'ь' => 'Ь', + 'э' => 'Э', + 'ю' => 'Ю', + 'я' => 'Я', + 'ѐ' => 'Ѐ', + 'ё' => 'Ё', + 'ђ' => 'Ђ', + 'ѓ' => 'Ѓ', + 'є' => 'Є', + 'ѕ' => 'Ѕ', + 'і' => 'І', + 'ї' => 'Ї', + 'ј' => 'Ј', + 'љ' => 'Љ', + 'њ' => 'Њ', + 'ћ' => 'Ћ', + 'ќ' => 'Ќ', + 'ѝ' => 'Ѝ', + 'ў' => 'Ў', + 'џ' => 'Џ', + 'ѡ' => 'Ѡ', + 'ѣ' => 'Ѣ', + 'ѥ' => 'Ѥ', + 'ѧ' => 'Ѧ', + 'ѩ' => 'Ѩ', + 'ѫ' => 'Ѫ', + 'ѭ' => 'Ѭ', + 'ѯ' => 'Ѯ', + 'ѱ' => 'Ѱ', + 'ѳ' => 'Ѳ', + 'ѵ' => 'Ѵ', + 'ѷ' => 'Ѷ', + 'ѹ' => 'Ѹ', + 'ѻ' => 'Ѻ', + 'ѽ' => 'Ѽ', + 'ѿ' => 'Ѿ', + 'ҁ' => 'Ҁ', + 'ҋ' => 'Ҋ', + 'ҍ' => 'Ҍ', + 'ҏ' => 'Ҏ', + 'ґ' => 'Ґ', + 'ғ' => 'Ғ', + 'ҕ' => 'Ҕ', + 'җ' => 'Җ', + 'ҙ' => 'Ҙ', + 'қ' => 'Қ', + 'ҝ' => 'Ҝ', + 'ҟ' => 'Ҟ', + 'ҡ' => 'Ҡ', + 'ң' => 'Ң', + 'ҥ' => 'Ҥ', + 'ҧ' => 'Ҧ', + 'ҩ' => 'Ҩ', + 'ҫ' => 'Ҫ', + 'ҭ' => 'Ҭ', + 'ү' => 'Ү', + 'ұ' => 'Ұ', + 'ҳ' => 'Ҳ', + 'ҵ' => 'Ҵ', + 'ҷ' => 'Ҷ', + 'ҹ' => 'Ҹ', + 'һ' => 'Һ', + 'ҽ' => 'Ҽ', + 'ҿ' => 'Ҿ', + 'ӂ' => 'Ӂ', + 'ӄ' => 'Ӄ', + 'ӆ' => 'Ӆ', + 'ӈ' => 'Ӈ', + 'ӊ' => 'Ӊ', + 'ӌ' => 'Ӌ', + 'ӎ' => 'Ӎ', + 'ӏ' => 'Ӏ', + 'ӑ' => 'Ӑ', + 'ӓ' => 'Ӓ', + 'ӕ' => 'Ӕ', + 'ӗ' => 'Ӗ', + 'ә' => 'Ә', + 'ӛ' => 'Ӛ', + 'ӝ' => 'Ӝ', + 'ӟ' => 'Ӟ', + 'ӡ' => 'Ӡ', + 'ӣ' => 'Ӣ', + 'ӥ' => 'Ӥ', + 'ӧ' => 'Ӧ', + 'ө' => 'Ө', + 'ӫ' => 'Ӫ', + 'ӭ' => 'Ӭ', + 'ӯ' => 'Ӯ', + 'ӱ' => 'Ӱ', + 'ӳ' => 'Ӳ', + 'ӵ' => 'Ӵ', + 'ӷ' => 'Ӷ', + 'ӹ' => 'Ӹ', + 'ӻ' => 'Ӻ', + 'ӽ' => 'Ӽ', + 'ӿ' => 'Ӿ', + 'ԁ' => 'Ԁ', + 'ԃ' => 'Ԃ', + 'ԅ' => 'Ԅ', + 'ԇ' => 'Ԇ', + 'ԉ' => 'Ԉ', + 'ԋ' => 'Ԋ', + 'ԍ' => 'Ԍ', + 'ԏ' => 'Ԏ', + 'ԑ' => 'Ԑ', + 'ԓ' => 'Ԓ', + 'ԕ' => 'Ԕ', + 'ԗ' => 'Ԗ', + 'ԙ' => 'Ԙ', + 'ԛ' => 'Ԛ', + 'ԝ' => 'Ԝ', + 'ԟ' => 'Ԟ', + 'ԡ' => 'Ԡ', + 'ԣ' => 'Ԣ', + 'ԥ' => 'Ԥ', + 'ԧ' => 'Ԧ', + 'ԩ' => 'Ԩ', + 'ԫ' => 'Ԫ', + 'ԭ' => 'Ԭ', + 'ԯ' => 'Ԯ', + 'ա' => 'Ա', + 'բ' => 'Բ', + 'գ' => 'Գ', + 'դ' => 'Դ', + 'ե' => 'Ե', + 'զ' => 'Զ', + 'է' => 'Է', + 'ը' => 'Ը', + 'թ' => 'Թ', + 'ժ' => 'Ժ', + 'ի' => 'Ի', + 'լ' => 'Լ', + 'խ' => 'Խ', + 'ծ' => 'Ծ', + 'կ' => 'Կ', + 'հ' => 'Հ', + 'ձ' => 'Ձ', + 'ղ' => 'Ղ', + 'ճ' => 'Ճ', + 'մ' => 'Մ', + 'յ' => 'Յ', + 'ն' => 'Ն', + 'շ' => 'Շ', + 'ո' => 'Ո', + 'չ' => 'Չ', + 'պ' => 'Պ', + 'ջ' => 'Ջ', + 'ռ' => 'Ռ', + 'ս' => 'Ս', + 'վ' => 'Վ', + 'տ' => 'Տ', + 'ր' => 'Ր', + 'ց' => 'Ց', + 'ւ' => 'Ւ', + 'փ' => 'Փ', + 'ք' => 'Ք', + 'օ' => 'Օ', + 'ֆ' => 'Ֆ', + 'ა' => 'Ა', + 'ბ' => 'Ბ', + 'გ' => 'Გ', + 'დ' => 'Დ', + 'ე' => 'Ე', + 'ვ' => 'Ვ', + 'ზ' => 'Ზ', + 'თ' => 'Თ', + 'ი' => 'Ი', + 'კ' => 'Კ', + 'ლ' => 'Ლ', + 'მ' => 'Მ', + 'ნ' => 'Ნ', + 'ო' => 'Ო', + 'პ' => 'Პ', + 'ჟ' => 'Ჟ', + 'რ' => 'Რ', + 'ს' => 'Ს', + 'ტ' => 'Ტ', + 'უ' => 'Უ', + 'ფ' => 'Ფ', + 'ქ' => 'Ქ', + 'ღ' => 'Ღ', + 'ყ' => 'Ყ', + 'შ' => 'Შ', + 'ჩ' => 'Ჩ', + 'ც' => 'Ც', + 'ძ' => 'Ძ', + 'წ' => 'Წ', + 'ჭ' => 'Ჭ', + 'ხ' => 'Ხ', + 'ჯ' => 'Ჯ', + 'ჰ' => 'Ჰ', + 'ჱ' => 'Ჱ', + 'ჲ' => 'Ჲ', + 'ჳ' => 'Ჳ', + 'ჴ' => 'Ჴ', + 'ჵ' => 'Ჵ', + 'ჶ' => 'Ჶ', + 'ჷ' => 'Ჷ', + 'ჸ' => 'Ჸ', + 'ჹ' => 'Ჹ', + 'ჺ' => 'Ჺ', + 'ჽ' => 'Ჽ', + 'ჾ' => 'Ჾ', + 'ჿ' => 'Ჿ', + 'ᏸ' => 'Ᏸ', + 'ᏹ' => 'Ᏹ', + 'ᏺ' => 'Ᏺ', + 'ᏻ' => 'Ᏻ', + 'ᏼ' => 'Ᏼ', + 'ᏽ' => 'Ᏽ', + 'ᲀ' => 'В', + 'ᲁ' => 'Д', + 'ᲂ' => 'О', + 'ᲃ' => 'С', + 'ᲄ' => 'Т', + 'ᲅ' => 'Т', + 'ᲆ' => 'Ъ', + 'ᲇ' => 'Ѣ', + 'ᲈ' => 'Ꙋ', + 'ᵹ' => 'Ᵹ', + 'ᵽ' => 'Ᵽ', + 'ᶎ' => 'Ᶎ', + 'ḁ' => 'Ḁ', + 'ḃ' => 'Ḃ', + 'ḅ' => 'Ḅ', + 'ḇ' => 'Ḇ', + 'ḉ' => 'Ḉ', + 'ḋ' => 'Ḋ', + 'ḍ' => 'Ḍ', + 'ḏ' => 'Ḏ', + 'ḑ' => 'Ḑ', + 'ḓ' => 'Ḓ', + 'ḕ' => 'Ḕ', + 'ḗ' => 'Ḗ', + 'ḙ' => 'Ḙ', + 'ḛ' => 'Ḛ', + 'ḝ' => 'Ḝ', + 'ḟ' => 'Ḟ', + 'ḡ' => 'Ḡ', + 'ḣ' => 'Ḣ', + 'ḥ' => 'Ḥ', + 'ḧ' => 'Ḧ', + 'ḩ' => 'Ḩ', + 'ḫ' => 'Ḫ', + 'ḭ' => 'Ḭ', + 'ḯ' => 'Ḯ', + 'ḱ' => 'Ḱ', + 'ḳ' => 'Ḳ', + 'ḵ' => 'Ḵ', + 'ḷ' => 'Ḷ', + 'ḹ' => 'Ḹ', + 'ḻ' => 'Ḻ', + 'ḽ' => 'Ḽ', + 'ḿ' => 'Ḿ', + 'ṁ' => 'Ṁ', + 'ṃ' => 'Ṃ', + 'ṅ' => 'Ṅ', + 'ṇ' => 'Ṇ', + 'ṉ' => 'Ṉ', + 'ṋ' => 'Ṋ', + 'ṍ' => 'Ṍ', + 'ṏ' => 'Ṏ', + 'ṑ' => 'Ṑ', + 'ṓ' => 'Ṓ', + 'ṕ' => 'Ṕ', + 'ṗ' => 'Ṗ', + 'ṙ' => 'Ṙ', + 'ṛ' => 'Ṛ', + 'ṝ' => 'Ṝ', + 'ṟ' => 'Ṟ', + 'ṡ' => 'Ṡ', + 'ṣ' => 'Ṣ', + 'ṥ' => 'Ṥ', + 'ṧ' => 'Ṧ', + 'ṩ' => 'Ṩ', + 'ṫ' => 'Ṫ', + 'ṭ' => 'Ṭ', + 'ṯ' => 'Ṯ', + 'ṱ' => 'Ṱ', + 'ṳ' => 'Ṳ', + 'ṵ' => 'Ṵ', + 'ṷ' => 'Ṷ', + 'ṹ' => 'Ṹ', + 'ṻ' => 'Ṻ', + 'ṽ' => 'Ṽ', + 'ṿ' => 'Ṿ', + 'ẁ' => 'Ẁ', + 'ẃ' => 'Ẃ', + 'ẅ' => 'Ẅ', + 'ẇ' => 'Ẇ', + 'ẉ' => 'Ẉ', + 'ẋ' => 'Ẋ', + 'ẍ' => 'Ẍ', + 'ẏ' => 'Ẏ', + 'ẑ' => 'Ẑ', + 'ẓ' => 'Ẓ', + 'ẕ' => 'Ẕ', + 'ẛ' => 'Ṡ', + 'ạ' => 'Ạ', + 'ả' => 'Ả', + 'ấ' => 'Ấ', + 'ầ' => 'Ầ', + 'ẩ' => 'Ẩ', + 'ẫ' => 'Ẫ', + 'ậ' => 'Ậ', + 'ắ' => 'Ắ', + 'ằ' => 'Ằ', + 'ẳ' => 'Ẳ', + 'ẵ' => 'Ẵ', + 'ặ' => 'Ặ', + 'ẹ' => 'Ẹ', + 'ẻ' => 'Ẻ', + 'ẽ' => 'Ẽ', + 'ế' => 'Ế', + 'ề' => 'Ề', + 'ể' => 'Ể', + 'ễ' => 'Ễ', + 'ệ' => 'Ệ', + 'ỉ' => 'Ỉ', + 'ị' => 'Ị', + 'ọ' => 'Ọ', + 'ỏ' => 'Ỏ', + 'ố' => 'Ố', + 'ồ' => 'Ồ', + 'ổ' => 'Ổ', + 'ỗ' => 'Ỗ', + 'ộ' => 'Ộ', + 'ớ' => 'Ớ', + 'ờ' => 'Ờ', + 'ở' => 'Ở', + 'ỡ' => 'Ỡ', + 'ợ' => 'Ợ', + 'ụ' => 'Ụ', + 'ủ' => 'Ủ', + 'ứ' => 'Ứ', + 'ừ' => 'Ừ', + 'ử' => 'Ử', + 'ữ' => 'Ữ', + 'ự' => 'Ự', + 'ỳ' => 'Ỳ', + 'ỵ' => 'Ỵ', + 'ỷ' => 'Ỷ', + 'ỹ' => 'Ỹ', + 'ỻ' => 'Ỻ', + 'ỽ' => 'Ỽ', + 'ỿ' => 'Ỿ', + 'ἀ' => 'Ἀ', + 'ἁ' => 'Ἁ', + 'ἂ' => 'Ἂ', + 'ἃ' => 'Ἃ', + 'ἄ' => 'Ἄ', + 'ἅ' => 'Ἅ', + 'ἆ' => 'Ἆ', + 'ἇ' => 'Ἇ', + 'ἐ' => 'Ἐ', + 'ἑ' => 'Ἑ', + 'ἒ' => 'Ἒ', + 'ἓ' => 'Ἓ', + 'ἔ' => 'Ἔ', + 'ἕ' => 'Ἕ', + 'ἠ' => 'Ἠ', + 'ἡ' => 'Ἡ', + 'ἢ' => 'Ἢ', + 'ἣ' => 'Ἣ', + 'ἤ' => 'Ἤ', + 'ἥ' => 'Ἥ', + 'ἦ' => 'Ἦ', + 'ἧ' => 'Ἧ', + 'ἰ' => 'Ἰ', + 'ἱ' => 'Ἱ', + 'ἲ' => 'Ἲ', + 'ἳ' => 'Ἳ', + 'ἴ' => 'Ἴ', + 'ἵ' => 'Ἵ', + 'ἶ' => 'Ἶ', + 'ἷ' => 'Ἷ', + 'ὀ' => 'Ὀ', + 'ὁ' => 'Ὁ', + 'ὂ' => 'Ὂ', + 'ὃ' => 'Ὃ', + 'ὄ' => 'Ὄ', + 'ὅ' => 'Ὅ', + 'ὑ' => 'Ὑ', + 'ὓ' => 'Ὓ', + 'ὕ' => 'Ὕ', + 'ὗ' => 'Ὗ', + 'ὠ' => 'Ὠ', + 'ὡ' => 'Ὡ', + 'ὢ' => 'Ὢ', + 'ὣ' => 'Ὣ', + 'ὤ' => 'Ὤ', + 'ὥ' => 'Ὥ', + 'ὦ' => 'Ὦ', + 'ὧ' => 'Ὧ', + 'ὰ' => 'Ὰ', + 'ά' => 'Ά', + 'ὲ' => 'Ὲ', + 'έ' => 'Έ', + 'ὴ' => 'Ὴ', + 'ή' => 'Ή', + 'ὶ' => 'Ὶ', + 'ί' => 'Ί', + 'ὸ' => 'Ὸ', + 'ό' => 'Ό', + 'ὺ' => 'Ὺ', + 'ύ' => 'Ύ', + 'ὼ' => 'Ὼ', + 'ώ' => 'Ώ', + 'ᾀ' => 'ἈΙ', + 'ᾁ' => 'ἉΙ', + 'ᾂ' => 'ἊΙ', + 'ᾃ' => 'ἋΙ', + 'ᾄ' => 'ἌΙ', + 'ᾅ' => 'ἍΙ', + 'ᾆ' => 'ἎΙ', + 'ᾇ' => 'ἏΙ', + 'ᾐ' => 'ἨΙ', + 'ᾑ' => 'ἩΙ', + 'ᾒ' => 'ἪΙ', + 'ᾓ' => 'ἫΙ', + 'ᾔ' => 'ἬΙ', + 'ᾕ' => 'ἭΙ', + 'ᾖ' => 'ἮΙ', + 'ᾗ' => 'ἯΙ', + 'ᾠ' => 'ὨΙ', + 'ᾡ' => 'ὩΙ', + 'ᾢ' => 'ὪΙ', + 'ᾣ' => 'ὫΙ', + 'ᾤ' => 'ὬΙ', + 'ᾥ' => 'ὭΙ', + 'ᾦ' => 'ὮΙ', + 'ᾧ' => 'ὯΙ', + 'ᾰ' => 'Ᾰ', + 'ᾱ' => 'Ᾱ', + 'ᾳ' => 'ΑΙ', + 'ι' => 'Ι', + 'ῃ' => 'ΗΙ', + 'ῐ' => 'Ῐ', + 'ῑ' => 'Ῑ', + 'ῠ' => 'Ῠ', + 'ῡ' => 'Ῡ', + 'ῥ' => 'Ῥ', + 'ῳ' => 'ΩΙ', + 'ⅎ' => 'Ⅎ', + 'ⅰ' => 'Ⅰ', + 'ⅱ' => 'Ⅱ', + 'ⅲ' => 'Ⅲ', + 'ⅳ' => 'Ⅳ', + 'ⅴ' => 'Ⅴ', + 'ⅵ' => 'Ⅵ', + 'ⅶ' => 'Ⅶ', + 'ⅷ' => 'Ⅷ', + 'ⅸ' => 'Ⅸ', + 'ⅹ' => 'Ⅹ', + 'ⅺ' => 'Ⅺ', + 'ⅻ' => 'Ⅻ', + 'ⅼ' => 'Ⅼ', + 'ⅽ' => 'Ⅽ', + 'ⅾ' => 'Ⅾ', + 'ⅿ' => 'Ⅿ', + 'ↄ' => 'Ↄ', + 'ⓐ' => 'Ⓐ', + 'ⓑ' => 'Ⓑ', + 'ⓒ' => 'Ⓒ', + 'ⓓ' => 'Ⓓ', + 'ⓔ' => 'Ⓔ', + 'ⓕ' => 'Ⓕ', + 'ⓖ' => 'Ⓖ', + 'ⓗ' => 'Ⓗ', + 'ⓘ' => 'Ⓘ', + 'ⓙ' => 'Ⓙ', + 'ⓚ' => 'Ⓚ', + 'ⓛ' => 'Ⓛ', + 'ⓜ' => 'Ⓜ', + 'ⓝ' => 'Ⓝ', + 'ⓞ' => 'Ⓞ', + 'ⓟ' => 'Ⓟ', + 'ⓠ' => 'Ⓠ', + 'ⓡ' => 'Ⓡ', + 'ⓢ' => 'Ⓢ', + 'ⓣ' => 'Ⓣ', + 'ⓤ' => 'Ⓤ', + 'ⓥ' => 'Ⓥ', + 'ⓦ' => 'Ⓦ', + 'ⓧ' => 'Ⓧ', + 'ⓨ' => 'Ⓨ', + 'ⓩ' => 'Ⓩ', + 'ⰰ' => 'Ⰰ', + 'ⰱ' => 'Ⰱ', + 'ⰲ' => 'Ⰲ', + 'ⰳ' => 'Ⰳ', + 'ⰴ' => 'Ⰴ', + 'ⰵ' => 'Ⰵ', + 'ⰶ' => 'Ⰶ', + 'ⰷ' => 'Ⰷ', + 'ⰸ' => 'Ⰸ', + 'ⰹ' => 'Ⰹ', + 'ⰺ' => 'Ⰺ', + 'ⰻ' => 'Ⰻ', + 'ⰼ' => 'Ⰼ', + 'ⰽ' => 'Ⰽ', + 'ⰾ' => 'Ⰾ', + 'ⰿ' => 'Ⰿ', + 'ⱀ' => 'Ⱀ', + 'ⱁ' => 'Ⱁ', + 'ⱂ' => 'Ⱂ', + 'ⱃ' => 'Ⱃ', + 'ⱄ' => 'Ⱄ', + 'ⱅ' => 'Ⱅ', + 'ⱆ' => 'Ⱆ', + 'ⱇ' => 'Ⱇ', + 'ⱈ' => 'Ⱈ', + 'ⱉ' => 'Ⱉ', + 'ⱊ' => 'Ⱊ', + 'ⱋ' => 'Ⱋ', + 'ⱌ' => 'Ⱌ', + 'ⱍ' => 'Ⱍ', + 'ⱎ' => 'Ⱎ', + 'ⱏ' => 'Ⱏ', + 'ⱐ' => 'Ⱐ', + 'ⱑ' => 'Ⱑ', + 'ⱒ' => 'Ⱒ', + 'ⱓ' => 'Ⱓ', + 'ⱔ' => 'Ⱔ', + 'ⱕ' => 'Ⱕ', + 'ⱖ' => 'Ⱖ', + 'ⱗ' => 'Ⱗ', + 'ⱘ' => 'Ⱘ', + 'ⱙ' => 'Ⱙ', + 'ⱚ' => 'Ⱚ', + 'ⱛ' => 'Ⱛ', + 'ⱜ' => 'Ⱜ', + 'ⱝ' => 'Ⱝ', + 'ⱞ' => 'Ⱞ', + 'ⱡ' => 'Ⱡ', + 'ⱥ' => 'Ⱥ', + 'ⱦ' => 'Ⱦ', + 'ⱨ' => 'Ⱨ', + 'ⱪ' => 'Ⱪ', + 'ⱬ' => 'Ⱬ', + 'ⱳ' => 'Ⱳ', + 'ⱶ' => 'Ⱶ', + 'ⲁ' => 'Ⲁ', + 'ⲃ' => 'Ⲃ', + 'ⲅ' => 'Ⲅ', + 'ⲇ' => 'Ⲇ', + 'ⲉ' => 'Ⲉ', + 'ⲋ' => 'Ⲋ', + 'ⲍ' => 'Ⲍ', + 'ⲏ' => 'Ⲏ', + 'ⲑ' => 'Ⲑ', + 'ⲓ' => 'Ⲓ', + 'ⲕ' => 'Ⲕ', + 'ⲗ' => 'Ⲗ', + 'ⲙ' => 'Ⲙ', + 'ⲛ' => 'Ⲛ', + 'ⲝ' => 'Ⲝ', + 'ⲟ' => 'Ⲟ', + 'ⲡ' => 'Ⲡ', + 'ⲣ' => 'Ⲣ', + 'ⲥ' => 'Ⲥ', + 'ⲧ' => 'Ⲧ', + 'ⲩ' => 'Ⲩ', + 'ⲫ' => 'Ⲫ', + 'ⲭ' => 'Ⲭ', + 'ⲯ' => 'Ⲯ', + 'ⲱ' => 'Ⲱ', + 'ⲳ' => 'Ⲳ', + 'ⲵ' => 'Ⲵ', + 'ⲷ' => 'Ⲷ', + 'ⲹ' => 'Ⲹ', + 'ⲻ' => 'Ⲻ', + 'ⲽ' => 'Ⲽ', + 'ⲿ' => 'Ⲿ', + 'ⳁ' => 'Ⳁ', + 'ⳃ' => 'Ⳃ', + 'ⳅ' => 'Ⳅ', + 'ⳇ' => 'Ⳇ', + 'ⳉ' => 'Ⳉ', + 'ⳋ' => 'Ⳋ', + 'ⳍ' => 'Ⳍ', + 'ⳏ' => 'Ⳏ', + 'ⳑ' => 'Ⳑ', + 'ⳓ' => 'Ⳓ', + 'ⳕ' => 'Ⳕ', + 'ⳗ' => 'Ⳗ', + 'ⳙ' => 'Ⳙ', + 'ⳛ' => 'Ⳛ', + 'ⳝ' => 'Ⳝ', + 'ⳟ' => 'Ⳟ', + 'ⳡ' => 'Ⳡ', + 'ⳣ' => 'Ⳣ', + 'ⳬ' => 'Ⳬ', + 'ⳮ' => 'Ⳮ', + 'ⳳ' => 'Ⳳ', + 'ⴀ' => 'Ⴀ', + 'ⴁ' => 'Ⴁ', + 'ⴂ' => 'Ⴂ', + 'ⴃ' => 'Ⴃ', + 'ⴄ' => 'Ⴄ', + 'ⴅ' => 'Ⴅ', + 'ⴆ' => 'Ⴆ', + 'ⴇ' => 'Ⴇ', + 'ⴈ' => 'Ⴈ', + 'ⴉ' => 'Ⴉ', + 'ⴊ' => 'Ⴊ', + 'ⴋ' => 'Ⴋ', + 'ⴌ' => 'Ⴌ', + 'ⴍ' => 'Ⴍ', + 'ⴎ' => 'Ⴎ', + 'ⴏ' => 'Ⴏ', + 'ⴐ' => 'Ⴐ', + 'ⴑ' => 'Ⴑ', + 'ⴒ' => 'Ⴒ', + 'ⴓ' => 'Ⴓ', + 'ⴔ' => 'Ⴔ', + 'ⴕ' => 'Ⴕ', + 'ⴖ' => 'Ⴖ', + 'ⴗ' => 'Ⴗ', + 'ⴘ' => 'Ⴘ', + 'ⴙ' => 'Ⴙ', + 'ⴚ' => 'Ⴚ', + 'ⴛ' => 'Ⴛ', + 'ⴜ' => 'Ⴜ', + 'ⴝ' => 'Ⴝ', + 'ⴞ' => 'Ⴞ', + 'ⴟ' => 'Ⴟ', + 'ⴠ' => 'Ⴠ', + 'ⴡ' => 'Ⴡ', + 'ⴢ' => 'Ⴢ', + 'ⴣ' => 'Ⴣ', + 'ⴤ' => 'Ⴤ', + 'ⴥ' => 'Ⴥ', + 'ⴧ' => 'Ⴧ', + 'ⴭ' => 'Ⴭ', + 'ꙁ' => 'Ꙁ', + 'ꙃ' => 'Ꙃ', + 'ꙅ' => 'Ꙅ', + 'ꙇ' => 'Ꙇ', + 'ꙉ' => 'Ꙉ', + 'ꙋ' => 'Ꙋ', + 'ꙍ' => 'Ꙍ', + 'ꙏ' => 'Ꙏ', + 'ꙑ' => 'Ꙑ', + 'ꙓ' => 'Ꙓ', + 'ꙕ' => 'Ꙕ', + 'ꙗ' => 'Ꙗ', + 'ꙙ' => 'Ꙙ', + 'ꙛ' => 'Ꙛ', + 'ꙝ' => 'Ꙝ', + 'ꙟ' => 'Ꙟ', + 'ꙡ' => 'Ꙡ', + 'ꙣ' => 'Ꙣ', + 'ꙥ' => 'Ꙥ', + 'ꙧ' => 'Ꙧ', + 'ꙩ' => 'Ꙩ', + 'ꙫ' => 'Ꙫ', + 'ꙭ' => 'Ꙭ', + 'ꚁ' => 'Ꚁ', + 'ꚃ' => 'Ꚃ', + 'ꚅ' => 'Ꚅ', + 'ꚇ' => 'Ꚇ', + 'ꚉ' => 'Ꚉ', + 'ꚋ' => 'Ꚋ', + 'ꚍ' => 'Ꚍ', + 'ꚏ' => 'Ꚏ', + 'ꚑ' => 'Ꚑ', + 'ꚓ' => 'Ꚓ', + 'ꚕ' => 'Ꚕ', + 'ꚗ' => 'Ꚗ', + 'ꚙ' => 'Ꚙ', + 'ꚛ' => 'Ꚛ', + 'ꜣ' => 'Ꜣ', + 'ꜥ' => 'Ꜥ', + 'ꜧ' => 'Ꜧ', + 'ꜩ' => 'Ꜩ', + 'ꜫ' => 'Ꜫ', + 'ꜭ' => 'Ꜭ', + 'ꜯ' => 'Ꜯ', + 'ꜳ' => 'Ꜳ', + 'ꜵ' => 'Ꜵ', + 'ꜷ' => 'Ꜷ', + 'ꜹ' => 'Ꜹ', + 'ꜻ' => 'Ꜻ', + 'ꜽ' => 'Ꜽ', + 'ꜿ' => 'Ꜿ', + 'ꝁ' => 'Ꝁ', + 'ꝃ' => 'Ꝃ', + 'ꝅ' => 'Ꝅ', + 'ꝇ' => 'Ꝇ', + 'ꝉ' => 'Ꝉ', + 'ꝋ' => 'Ꝋ', + 'ꝍ' => 'Ꝍ', + 'ꝏ' => 'Ꝏ', + 'ꝑ' => 'Ꝑ', + 'ꝓ' => 'Ꝓ', + 'ꝕ' => 'Ꝕ', + 'ꝗ' => 'Ꝗ', + 'ꝙ' => 'Ꝙ', + 'ꝛ' => 'Ꝛ', + 'ꝝ' => 'Ꝝ', + 'ꝟ' => 'Ꝟ', + 'ꝡ' => 'Ꝡ', + 'ꝣ' => 'Ꝣ', + 'ꝥ' => 'Ꝥ', + 'ꝧ' => 'Ꝧ', + 'ꝩ' => 'Ꝩ', + 'ꝫ' => 'Ꝫ', + 'ꝭ' => 'Ꝭ', + 'ꝯ' => 'Ꝯ', + 'ꝺ' => 'Ꝺ', + 'ꝼ' => 'Ꝼ', + 'ꝿ' => 'Ꝿ', + 'ꞁ' => 'Ꞁ', + 'ꞃ' => 'Ꞃ', + 'ꞅ' => 'Ꞅ', + 'ꞇ' => 'Ꞇ', + 'ꞌ' => 'Ꞌ', + 'ꞑ' => 'Ꞑ', + 'ꞓ' => 'Ꞓ', + 'ꞔ' => 'Ꞔ', + 'ꞗ' => 'Ꞗ', + 'ꞙ' => 'Ꞙ', + 'ꞛ' => 'Ꞛ', + 'ꞝ' => 'Ꞝ', + 'ꞟ' => 'Ꞟ', + 'ꞡ' => 'Ꞡ', + 'ꞣ' => 'Ꞣ', + 'ꞥ' => 'Ꞥ', + 'ꞧ' => 'Ꞧ', + 'ꞩ' => 'Ꞩ', + 'ꞵ' => 'Ꞵ', + 'ꞷ' => 'Ꞷ', + 'ꞹ' => 'Ꞹ', + 'ꞻ' => 'Ꞻ', + 'ꞽ' => 'Ꞽ', + 'ꞿ' => 'Ꞿ', + 'ꟃ' => 'Ꟃ', + 'ꟈ' => 'Ꟈ', + 'ꟊ' => 'Ꟊ', + 'ꟶ' => 'Ꟶ', + 'ꭓ' => 'Ꭓ', + 'ꭰ' => 'Ꭰ', + 'ꭱ' => 'Ꭱ', + 'ꭲ' => 'Ꭲ', + 'ꭳ' => 'Ꭳ', + 'ꭴ' => 'Ꭴ', + 'ꭵ' => 'Ꭵ', + 'ꭶ' => 'Ꭶ', + 'ꭷ' => 'Ꭷ', + 'ꭸ' => 'Ꭸ', + 'ꭹ' => 'Ꭹ', + 'ꭺ' => 'Ꭺ', + 'ꭻ' => 'Ꭻ', + 'ꭼ' => 'Ꭼ', + 'ꭽ' => 'Ꭽ', + 'ꭾ' => 'Ꭾ', + 'ꭿ' => 'Ꭿ', + 'ꮀ' => 'Ꮀ', + 'ꮁ' => 'Ꮁ', + 'ꮂ' => 'Ꮂ', + 'ꮃ' => 'Ꮃ', + 'ꮄ' => 'Ꮄ', + 'ꮅ' => 'Ꮅ', + 'ꮆ' => 'Ꮆ', + 'ꮇ' => 'Ꮇ', + 'ꮈ' => 'Ꮈ', + 'ꮉ' => 'Ꮉ', + 'ꮊ' => 'Ꮊ', + 'ꮋ' => 'Ꮋ', + 'ꮌ' => 'Ꮌ', + 'ꮍ' => 'Ꮍ', + 'ꮎ' => 'Ꮎ', + 'ꮏ' => 'Ꮏ', + 'ꮐ' => 'Ꮐ', + 'ꮑ' => 'Ꮑ', + 'ꮒ' => 'Ꮒ', + 'ꮓ' => 'Ꮓ', + 'ꮔ' => 'Ꮔ', + 'ꮕ' => 'Ꮕ', + 'ꮖ' => 'Ꮖ', + 'ꮗ' => 'Ꮗ', + 'ꮘ' => 'Ꮘ', + 'ꮙ' => 'Ꮙ', + 'ꮚ' => 'Ꮚ', + 'ꮛ' => 'Ꮛ', + 'ꮜ' => 'Ꮜ', + 'ꮝ' => 'Ꮝ', + 'ꮞ' => 'Ꮞ', + 'ꮟ' => 'Ꮟ', + 'ꮠ' => 'Ꮠ', + 'ꮡ' => 'Ꮡ', + 'ꮢ' => 'Ꮢ', + 'ꮣ' => 'Ꮣ', + 'ꮤ' => 'Ꮤ', + 'ꮥ' => 'Ꮥ', + 'ꮦ' => 'Ꮦ', + 'ꮧ' => 'Ꮧ', + 'ꮨ' => 'Ꮨ', + 'ꮩ' => 'Ꮩ', + 'ꮪ' => 'Ꮪ', + 'ꮫ' => 'Ꮫ', + 'ꮬ' => 'Ꮬ', + 'ꮭ' => 'Ꮭ', + 'ꮮ' => 'Ꮮ', + 'ꮯ' => 'Ꮯ', + 'ꮰ' => 'Ꮰ', + 'ꮱ' => 'Ꮱ', + 'ꮲ' => 'Ꮲ', + 'ꮳ' => 'Ꮳ', + 'ꮴ' => 'Ꮴ', + 'ꮵ' => 'Ꮵ', + 'ꮶ' => 'Ꮶ', + 'ꮷ' => 'Ꮷ', + 'ꮸ' => 'Ꮸ', + 'ꮹ' => 'Ꮹ', + 'ꮺ' => 'Ꮺ', + 'ꮻ' => 'Ꮻ', + 'ꮼ' => 'Ꮼ', + 'ꮽ' => 'Ꮽ', + 'ꮾ' => 'Ꮾ', + 'ꮿ' => 'Ꮿ', + 'a' => 'A', + 'b' => 'B', + 'c' => 'C', + 'd' => 'D', + 'e' => 'E', + 'f' => 'F', + 'g' => 'G', + 'h' => 'H', + 'i' => 'I', + 'j' => 'J', + 'k' => 'K', + 'l' => 'L', + 'm' => 'M', + 'n' => 'N', + 'o' => 'O', + 'p' => 'P', + 'q' => 'Q', + 'r' => 'R', + 's' => 'S', + 't' => 'T', + 'u' => 'U', + 'v' => 'V', + 'w' => 'W', + 'x' => 'X', + 'y' => 'Y', + 'z' => 'Z', + '𐐨' => '𐐀', + '𐐩' => '𐐁', + '𐐪' => '𐐂', + '𐐫' => '𐐃', + '𐐬' => '𐐄', + '𐐭' => '𐐅', + '𐐮' => '𐐆', + '𐐯' => '𐐇', + '𐐰' => '𐐈', + '𐐱' => '𐐉', + '𐐲' => '𐐊', + '𐐳' => '𐐋', + '𐐴' => '𐐌', + '𐐵' => '𐐍', + '𐐶' => '𐐎', + '𐐷' => '𐐏', + '𐐸' => '𐐐', + '𐐹' => '𐐑', + '𐐺' => '𐐒', + '𐐻' => '𐐓', + '𐐼' => '𐐔', + '𐐽' => '𐐕', + '𐐾' => '𐐖', + '𐐿' => '𐐗', + '𐑀' => '𐐘', + '𐑁' => '𐐙', + '𐑂' => '𐐚', + '𐑃' => '𐐛', + '𐑄' => '𐐜', + '𐑅' => '𐐝', + '𐑆' => '𐐞', + '𐑇' => '𐐟', + '𐑈' => '𐐠', + '𐑉' => '𐐡', + '𐑊' => '𐐢', + '𐑋' => '𐐣', + '𐑌' => '𐐤', + '𐑍' => '𐐥', + '𐑎' => '𐐦', + '𐑏' => '𐐧', + '𐓘' => '𐒰', + '𐓙' => '𐒱', + '𐓚' => '𐒲', + '𐓛' => '𐒳', + '𐓜' => '𐒴', + '𐓝' => '𐒵', + '𐓞' => '𐒶', + '𐓟' => '𐒷', + '𐓠' => '𐒸', + '𐓡' => '𐒹', + '𐓢' => '𐒺', + '𐓣' => '𐒻', + '𐓤' => '𐒼', + '𐓥' => '𐒽', + '𐓦' => '𐒾', + '𐓧' => '𐒿', + '𐓨' => '𐓀', + '𐓩' => '𐓁', + '𐓪' => '𐓂', + '𐓫' => '𐓃', + '𐓬' => '𐓄', + '𐓭' => '𐓅', + '𐓮' => '𐓆', + '𐓯' => '𐓇', + '𐓰' => '𐓈', + '𐓱' => '𐓉', + '𐓲' => '𐓊', + '𐓳' => '𐓋', + '𐓴' => '𐓌', + '𐓵' => '𐓍', + '𐓶' => '𐓎', + '𐓷' => '𐓏', + '𐓸' => '𐓐', + '𐓹' => '𐓑', + '𐓺' => '𐓒', + '𐓻' => '𐓓', + '𐳀' => '𐲀', + '𐳁' => '𐲁', + '𐳂' => '𐲂', + '𐳃' => '𐲃', + '𐳄' => '𐲄', + '𐳅' => '𐲅', + '𐳆' => '𐲆', + '𐳇' => '𐲇', + '𐳈' => '𐲈', + '𐳉' => '𐲉', + '𐳊' => '𐲊', + '𐳋' => '𐲋', + '𐳌' => '𐲌', + '𐳍' => '𐲍', + '𐳎' => '𐲎', + '𐳏' => '𐲏', + '𐳐' => '𐲐', + '𐳑' => '𐲑', + '𐳒' => '𐲒', + '𐳓' => '𐲓', + '𐳔' => '𐲔', + '𐳕' => '𐲕', + '𐳖' => '𐲖', + '𐳗' => '𐲗', + '𐳘' => '𐲘', + '𐳙' => '𐲙', + '𐳚' => '𐲚', + '𐳛' => '𐲛', + '𐳜' => '𐲜', + '𐳝' => '𐲝', + '𐳞' => '𐲞', + '𐳟' => '𐲟', + '𐳠' => '𐲠', + '𐳡' => '𐲡', + '𐳢' => '𐲢', + '𐳣' => '𐲣', + '𐳤' => '𐲤', + '𐳥' => '𐲥', + '𐳦' => '𐲦', + '𐳧' => '𐲧', + '𐳨' => '𐲨', + '𐳩' => '𐲩', + '𐳪' => '𐲪', + '𐳫' => '𐲫', + '𐳬' => '𐲬', + '𐳭' => '𐲭', + '𐳮' => '𐲮', + '𐳯' => '𐲯', + '𐳰' => '𐲰', + '𐳱' => '𐲱', + '𐳲' => '𐲲', + '𑣀' => '𑢠', + '𑣁' => '𑢡', + '𑣂' => '𑢢', + '𑣃' => '𑢣', + '𑣄' => '𑢤', + '𑣅' => '𑢥', + '𑣆' => '𑢦', + '𑣇' => '𑢧', + '𑣈' => '𑢨', + '𑣉' => '𑢩', + '𑣊' => '𑢪', + '𑣋' => '𑢫', + '𑣌' => '𑢬', + '𑣍' => '𑢭', + '𑣎' => '𑢮', + '𑣏' => '𑢯', + '𑣐' => '𑢰', + '𑣑' => '𑢱', + '𑣒' => '𑢲', + '𑣓' => '𑢳', + '𑣔' => '𑢴', + '𑣕' => '𑢵', + '𑣖' => '𑢶', + '𑣗' => '𑢷', + '𑣘' => '𑢸', + '𑣙' => '𑢹', + '𑣚' => '𑢺', + '𑣛' => '𑢻', + '𑣜' => '𑢼', + '𑣝' => '𑢽', + '𑣞' => '𑢾', + '𑣟' => '𑢿', + '𖹠' => '𖹀', + '𖹡' => '𖹁', + '𖹢' => '𖹂', + '𖹣' => '𖹃', + '𖹤' => '𖹄', + '𖹥' => '𖹅', + '𖹦' => '𖹆', + '𖹧' => '𖹇', + '𖹨' => '𖹈', + '𖹩' => '𖹉', + '𖹪' => '𖹊', + '𖹫' => '𖹋', + '𖹬' => '𖹌', + '𖹭' => '𖹍', + '𖹮' => '𖹎', + '𖹯' => '𖹏', + '𖹰' => '𖹐', + '𖹱' => '𖹑', + '𖹲' => '𖹒', + '𖹳' => '𖹓', + '𖹴' => '𖹔', + '𖹵' => '𖹕', + '𖹶' => '𖹖', + '𖹷' => '𖹗', + '𖹸' => '𖹘', + '𖹹' => '𖹙', + '𖹺' => '𖹚', + '𖹻' => '𖹛', + '𖹼' => '𖹜', + '𖹽' => '𖹝', + '𖹾' => '𖹞', + '𖹿' => '𖹟', + '𞤢' => '𞤀', + '𞤣' => '𞤁', + '𞤤' => '𞤂', + '𞤥' => '𞤃', + '𞤦' => '𞤄', + '𞤧' => '𞤅', + '𞤨' => '𞤆', + '𞤩' => '𞤇', + '𞤪' => '𞤈', + '𞤫' => '𞤉', + '𞤬' => '𞤊', + '𞤭' => '𞤋', + '𞤮' => '𞤌', + '𞤯' => '𞤍', + '𞤰' => '𞤎', + '𞤱' => '𞤏', + '𞤲' => '𞤐', + '𞤳' => '𞤑', + '𞤴' => '𞤒', + '𞤵' => '𞤓', + '𞤶' => '𞤔', + '𞤷' => '𞤕', + '𞤸' => '𞤖', + '𞤹' => '𞤗', + '𞤺' => '𞤘', + '𞤻' => '𞤙', + '𞤼' => '𞤚', + '𞤽' => '𞤛', + '𞤾' => '𞤜', + '𞤿' => '𞤝', + '𞥀' => '𞤞', + '𞥁' => '𞤟', + '𞥂' => '𞤠', + '𞥃' => '𞤡', + 'ß' => 'SS', + 'ff' => 'FF', + 'fi' => 'FI', + 'fl' => 'FL', + 'ffi' => 'FFI', + 'ffl' => 'FFL', + 'ſt' => 'ST', + 'st' => 'ST', + 'և' => 'ԵՒ', + 'ﬓ' => 'ՄՆ', + 'ﬔ' => 'ՄԵ', + 'ﬕ' => 'ՄԻ', + 'ﬖ' => 'ՎՆ', + 'ﬗ' => 'ՄԽ', + 'ʼn' => 'ʼN', + 'ΐ' => 'Ϊ́', + 'ΰ' => 'Ϋ́', + 'ǰ' => 'J̌', + 'ẖ' => 'H̱', + 'ẗ' => 'T̈', + 'ẘ' => 'W̊', + 'ẙ' => 'Y̊', + 'ẚ' => 'Aʾ', + 'ὐ' => 'Υ̓', + 'ὒ' => 'Υ̓̀', + 'ὔ' => 'Υ̓́', + 'ὖ' => 'Υ̓͂', + 'ᾶ' => 'Α͂', + 'ῆ' => 'Η͂', + 'ῒ' => 'Ϊ̀', + 'ΐ' => 'Ϊ́', + 'ῖ' => 'Ι͂', + 'ῗ' => 'Ϊ͂', + 'ῢ' => 'Ϋ̀', + 'ΰ' => 'Ϋ́', + 'ῤ' => 'Ρ̓', + 'ῦ' => 'Υ͂', + 'ῧ' => 'Ϋ͂', + 'ῶ' => 'Ω͂', + 'ᾈ' => 'ἈΙ', + 'ᾉ' => 'ἉΙ', + 'ᾊ' => 'ἊΙ', + 'ᾋ' => 'ἋΙ', + 'ᾌ' => 'ἌΙ', + 'ᾍ' => 'ἍΙ', + 'ᾎ' => 'ἎΙ', + 'ᾏ' => 'ἏΙ', + 'ᾘ' => 'ἨΙ', + 'ᾙ' => 'ἩΙ', + 'ᾚ' => 'ἪΙ', + 'ᾛ' => 'ἫΙ', + 'ᾜ' => 'ἬΙ', + 'ᾝ' => 'ἭΙ', + 'ᾞ' => 'ἮΙ', + 'ᾟ' => 'ἯΙ', + 'ᾨ' => 'ὨΙ', + 'ᾩ' => 'ὩΙ', + 'ᾪ' => 'ὪΙ', + 'ᾫ' => 'ὫΙ', + 'ᾬ' => 'ὬΙ', + 'ᾭ' => 'ὭΙ', + 'ᾮ' => 'ὮΙ', + 'ᾯ' => 'ὯΙ', + 'ᾼ' => 'ΑΙ', + 'ῌ' => 'ΗΙ', + 'ῼ' => 'ΩΙ', + 'ᾲ' => 'ᾺΙ', + 'ᾴ' => 'ΆΙ', + 'ῂ' => 'ῊΙ', + 'ῄ' => 'ΉΙ', + 'ῲ' => 'ῺΙ', + 'ῴ' => 'ΏΙ', + 'ᾷ' => 'Α͂Ι', + 'ῇ' => 'Η͂Ι', + 'ῷ' => 'Ω͂Ι', +); diff --git a/docker/statistics/vendor/symfony/polyfill-mbstring/bootstrap.php b/docker/statistics/vendor/symfony/polyfill-mbstring/bootstrap.php new file mode 100644 index 00000000..ff51ae07 --- /dev/null +++ b/docker/statistics/vendor/symfony/polyfill-mbstring/bootstrap.php @@ -0,0 +1,172 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +use Symfony\Polyfill\Mbstring as p; + +if (\PHP_VERSION_ID >= 80000) { + return require __DIR__.'/bootstrap80.php'; +} + +if (!function_exists('mb_convert_encoding')) { + function mb_convert_encoding($string, $to_encoding, $from_encoding = null) { return p\Mbstring::mb_convert_encoding($string, $to_encoding, $from_encoding); } +} +if (!function_exists('mb_decode_mimeheader')) { + function mb_decode_mimeheader($string) { return p\Mbstring::mb_decode_mimeheader($string); } +} +if (!function_exists('mb_encode_mimeheader')) { + function mb_encode_mimeheader($string, $charset = null, $transfer_encoding = null, $newline = "\r\n", $indent = 0) { return p\Mbstring::mb_encode_mimeheader($string, $charset, $transfer_encoding, $newline, $indent); } +} +if (!function_exists('mb_decode_numericentity')) { + function mb_decode_numericentity($string, $map, $encoding = null) { return p\Mbstring::mb_decode_numericentity($string, $map, $encoding); } +} +if (!function_exists('mb_encode_numericentity')) { + function mb_encode_numericentity($string, $map, $encoding = null, $hex = false) { return p\Mbstring::mb_encode_numericentity($string, $map, $encoding, $hex); } +} +if (!function_exists('mb_convert_case')) { + function mb_convert_case($string, $mode, $encoding = null) { return p\Mbstring::mb_convert_case($string, $mode, $encoding); } +} +if (!function_exists('mb_internal_encoding')) { + function mb_internal_encoding($encoding = null) { return p\Mbstring::mb_internal_encoding($encoding); } +} +if (!function_exists('mb_language')) { + function mb_language($language = null) { return p\Mbstring::mb_language($language); } +} +if (!function_exists('mb_list_encodings')) { + function mb_list_encodings() { return p\Mbstring::mb_list_encodings(); } +} +if (!function_exists('mb_encoding_aliases')) { + function mb_encoding_aliases($encoding) { return p\Mbstring::mb_encoding_aliases($encoding); } +} +if (!function_exists('mb_check_encoding')) { + function mb_check_encoding($value = null, $encoding = null) { return p\Mbstring::mb_check_encoding($value, $encoding); } +} +if (!function_exists('mb_detect_encoding')) { + function mb_detect_encoding($string, $encodings = null, $strict = false) { return p\Mbstring::mb_detect_encoding($string, $encodings, $strict); } +} +if (!function_exists('mb_detect_order')) { + function mb_detect_order($encoding = null) { return p\Mbstring::mb_detect_order($encoding); } +} +if (!function_exists('mb_parse_str')) { + function mb_parse_str($string, &$result = []) { parse_str($string, $result); return (bool) $result; } +} +if (!function_exists('mb_strlen')) { + function mb_strlen($string, $encoding = null) { return p\Mbstring::mb_strlen($string, $encoding); } +} +if (!function_exists('mb_strpos')) { + function mb_strpos($haystack, $needle, $offset = 0, $encoding = null) { return p\Mbstring::mb_strpos($haystack, $needle, $offset, $encoding); } +} +if (!function_exists('mb_strtolower')) { + function mb_strtolower($string, $encoding = null) { return p\Mbstring::mb_strtolower($string, $encoding); } +} +if (!function_exists('mb_strtoupper')) { + function mb_strtoupper($string, $encoding = null) { return p\Mbstring::mb_strtoupper($string, $encoding); } +} +if (!function_exists('mb_substitute_character')) { + function mb_substitute_character($substitute_character = null) { return p\Mbstring::mb_substitute_character($substitute_character); } +} +if (!function_exists('mb_substr')) { + function mb_substr($string, $start, $length = 2147483647, $encoding = null) { return p\Mbstring::mb_substr($string, $start, $length, $encoding); } +} +if (!function_exists('mb_stripos')) { + function mb_stripos($haystack, $needle, $offset = 0, $encoding = null) { return p\Mbstring::mb_stripos($haystack, $needle, $offset, $encoding); } +} +if (!function_exists('mb_stristr')) { + function mb_stristr($haystack, $needle, $before_needle = false, $encoding = null) { return p\Mbstring::mb_stristr($haystack, $needle, $before_needle, $encoding); } +} +if (!function_exists('mb_strrchr')) { + function mb_strrchr($haystack, $needle, $before_needle = false, $encoding = null) { return p\Mbstring::mb_strrchr($haystack, $needle, $before_needle, $encoding); } +} +if (!function_exists('mb_strrichr')) { + function mb_strrichr($haystack, $needle, $before_needle = false, $encoding = null) { return p\Mbstring::mb_strrichr($haystack, $needle, $before_needle, $encoding); } +} +if (!function_exists('mb_strripos')) { + function mb_strripos($haystack, $needle, $offset = 0, $encoding = null) { return p\Mbstring::mb_strripos($haystack, $needle, $offset, $encoding); } +} +if (!function_exists('mb_strrpos')) { + function mb_strrpos($haystack, $needle, $offset = 0, $encoding = null) { return p\Mbstring::mb_strrpos($haystack, $needle, $offset, $encoding); } +} +if (!function_exists('mb_strstr')) { + function mb_strstr($haystack, $needle, $before_needle = false, $encoding = null) { return p\Mbstring::mb_strstr($haystack, $needle, $before_needle, $encoding); } +} +if (!function_exists('mb_get_info')) { + function mb_get_info($type = 'all') { return p\Mbstring::mb_get_info($type); } +} +if (!function_exists('mb_http_output')) { + function mb_http_output($encoding = null) { return p\Mbstring::mb_http_output($encoding); } +} +if (!function_exists('mb_strwidth')) { + function mb_strwidth($string, $encoding = null) { return p\Mbstring::mb_strwidth($string, $encoding); } +} +if (!function_exists('mb_substr_count')) { + function mb_substr_count($haystack, $needle, $encoding = null) { return p\Mbstring::mb_substr_count($haystack, $needle, $encoding); } +} +if (!function_exists('mb_output_handler')) { + function mb_output_handler($string, $status) { return p\Mbstring::mb_output_handler($string, $status); } +} +if (!function_exists('mb_http_input')) { + function mb_http_input($type = null) { return p\Mbstring::mb_http_input($type); } +} + +if (!function_exists('mb_convert_variables')) { + function mb_convert_variables($to_encoding, $from_encoding, &...$vars) { return p\Mbstring::mb_convert_variables($to_encoding, $from_encoding, ...$vars); } +} + +if (!function_exists('mb_ord')) { + function mb_ord($string, $encoding = null) { return p\Mbstring::mb_ord($string, $encoding); } +} +if (!function_exists('mb_chr')) { + function mb_chr($codepoint, $encoding = null) { return p\Mbstring::mb_chr($codepoint, $encoding); } +} +if (!function_exists('mb_scrub')) { + function mb_scrub($string, $encoding = null) { $encoding = null === $encoding ? mb_internal_encoding() : $encoding; return mb_convert_encoding($string, $encoding, $encoding); } +} +if (!function_exists('mb_str_split')) { + function mb_str_split($string, $length = 1, $encoding = null) { return p\Mbstring::mb_str_split($string, $length, $encoding); } +} + +if (!function_exists('mb_str_pad')) { + function mb_str_pad(string $string, int $length, string $pad_string = ' ', int $pad_type = STR_PAD_RIGHT, ?string $encoding = null): string { return p\Mbstring::mb_str_pad($string, $length, $pad_string, $pad_type, $encoding); } +} + +if (!function_exists('mb_ucfirst')) { + function mb_ucfirst(string $string, ?string $encoding = null): string { return p\Mbstring::mb_ucfirst($string, $encoding); } +} + +if (!function_exists('mb_lcfirst')) { + function mb_lcfirst(string $string, ?string $encoding = null): string { return p\Mbstring::mb_lcfirst($string, $encoding); } +} + +if (!function_exists('mb_trim')) { + function mb_trim(string $string, ?string $characters = null, ?string $encoding = null): string { return p\Mbstring::mb_trim($string, $characters, $encoding); } +} + +if (!function_exists('mb_ltrim')) { + function mb_ltrim(string $string, ?string $characters = null, ?string $encoding = null): string { return p\Mbstring::mb_ltrim($string, $characters, $encoding); } +} + +if (!function_exists('mb_rtrim')) { + function mb_rtrim(string $string, ?string $characters = null, ?string $encoding = null): string { return p\Mbstring::mb_rtrim($string, $characters, $encoding); } +} + + +if (extension_loaded('mbstring')) { + return; +} + +if (!defined('MB_CASE_UPPER')) { + define('MB_CASE_UPPER', 0); +} +if (!defined('MB_CASE_LOWER')) { + define('MB_CASE_LOWER', 1); +} +if (!defined('MB_CASE_TITLE')) { + define('MB_CASE_TITLE', 2); +} diff --git a/docker/statistics/vendor/symfony/polyfill-mbstring/bootstrap80.php b/docker/statistics/vendor/symfony/polyfill-mbstring/bootstrap80.php new file mode 100644 index 00000000..5be7d201 --- /dev/null +++ b/docker/statistics/vendor/symfony/polyfill-mbstring/bootstrap80.php @@ -0,0 +1,167 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +use Symfony\Polyfill\Mbstring as p; + +if (!function_exists('mb_convert_encoding')) { + function mb_convert_encoding(array|string|null $string, ?string $to_encoding, array|string|null $from_encoding = null): array|string|false { return p\Mbstring::mb_convert_encoding($string ?? '', (string) $to_encoding, $from_encoding); } +} +if (!function_exists('mb_decode_mimeheader')) { + function mb_decode_mimeheader(?string $string): string { return p\Mbstring::mb_decode_mimeheader((string) $string); } +} +if (!function_exists('mb_encode_mimeheader')) { + function mb_encode_mimeheader(?string $string, ?string $charset = null, ?string $transfer_encoding = null, ?string $newline = "\r\n", ?int $indent = 0): string { return p\Mbstring::mb_encode_mimeheader((string) $string, $charset, $transfer_encoding, (string) $newline, (int) $indent); } +} +if (!function_exists('mb_decode_numericentity')) { + function mb_decode_numericentity(?string $string, array $map, ?string $encoding = null): string { return p\Mbstring::mb_decode_numericentity((string) $string, $map, $encoding); } +} +if (!function_exists('mb_encode_numericentity')) { + function mb_encode_numericentity(?string $string, array $map, ?string $encoding = null, ?bool $hex = false): string { return p\Mbstring::mb_encode_numericentity((string) $string, $map, $encoding, (bool) $hex); } +} +if (!function_exists('mb_convert_case')) { + function mb_convert_case(?string $string, ?int $mode, ?string $encoding = null): string { return p\Mbstring::mb_convert_case((string) $string, (int) $mode, $encoding); } +} +if (!function_exists('mb_internal_encoding')) { + function mb_internal_encoding(?string $encoding = null): string|bool { return p\Mbstring::mb_internal_encoding($encoding); } +} +if (!function_exists('mb_language')) { + function mb_language(?string $language = null): string|bool { return p\Mbstring::mb_language($language); } +} +if (!function_exists('mb_list_encodings')) { + function mb_list_encodings(): array { return p\Mbstring::mb_list_encodings(); } +} +if (!function_exists('mb_encoding_aliases')) { + function mb_encoding_aliases(?string $encoding): array { return p\Mbstring::mb_encoding_aliases((string) $encoding); } +} +if (!function_exists('mb_check_encoding')) { + function mb_check_encoding(array|string|null $value = null, ?string $encoding = null): bool { return p\Mbstring::mb_check_encoding($value, $encoding); } +} +if (!function_exists('mb_detect_encoding')) { + function mb_detect_encoding(?string $string, array|string|null $encodings = null, ?bool $strict = false): string|false { return p\Mbstring::mb_detect_encoding((string) $string, $encodings, (bool) $strict); } +} +if (!function_exists('mb_detect_order')) { + function mb_detect_order(array|string|null $encoding = null): array|bool { return p\Mbstring::mb_detect_order($encoding); } +} +if (!function_exists('mb_parse_str')) { + function mb_parse_str(?string $string, &$result = []): bool { parse_str((string) $string, $result); return (bool) $result; } +} +if (!function_exists('mb_strlen')) { + function mb_strlen(?string $string, ?string $encoding = null): int { return p\Mbstring::mb_strlen((string) $string, $encoding); } +} +if (!function_exists('mb_strpos')) { + function mb_strpos(?string $haystack, ?string $needle, ?int $offset = 0, ?string $encoding = null): int|false { return p\Mbstring::mb_strpos((string) $haystack, (string) $needle, (int) $offset, $encoding); } +} +if (!function_exists('mb_strtolower')) { + function mb_strtolower(?string $string, ?string $encoding = null): string { return p\Mbstring::mb_strtolower((string) $string, $encoding); } +} +if (!function_exists('mb_strtoupper')) { + function mb_strtoupper(?string $string, ?string $encoding = null): string { return p\Mbstring::mb_strtoupper((string) $string, $encoding); } +} +if (!function_exists('mb_substitute_character')) { + function mb_substitute_character(string|int|null $substitute_character = null): string|int|bool { return p\Mbstring::mb_substitute_character($substitute_character); } +} +if (!function_exists('mb_substr')) { + function mb_substr(?string $string, ?int $start, ?int $length = null, ?string $encoding = null): string { return p\Mbstring::mb_substr((string) $string, (int) $start, $length, $encoding); } +} +if (!function_exists('mb_stripos')) { + function mb_stripos(?string $haystack, ?string $needle, ?int $offset = 0, ?string $encoding = null): int|false { return p\Mbstring::mb_stripos((string) $haystack, (string) $needle, (int) $offset, $encoding); } +} +if (!function_exists('mb_stristr')) { + function mb_stristr(?string $haystack, ?string $needle, ?bool $before_needle = false, ?string $encoding = null): string|false { return p\Mbstring::mb_stristr((string) $haystack, (string) $needle, (bool) $before_needle, $encoding); } +} +if (!function_exists('mb_strrchr')) { + function mb_strrchr(?string $haystack, ?string $needle, ?bool $before_needle = false, ?string $encoding = null): string|false { return p\Mbstring::mb_strrchr((string) $haystack, (string) $needle, (bool) $before_needle, $encoding); } +} +if (!function_exists('mb_strrichr')) { + function mb_strrichr(?string $haystack, ?string $needle, ?bool $before_needle = false, ?string $encoding = null): string|false { return p\Mbstring::mb_strrichr((string) $haystack, (string) $needle, (bool) $before_needle, $encoding); } +} +if (!function_exists('mb_strripos')) { + function mb_strripos(?string $haystack, ?string $needle, ?int $offset = 0, ?string $encoding = null): int|false { return p\Mbstring::mb_strripos((string) $haystack, (string) $needle, (int) $offset, $encoding); } +} +if (!function_exists('mb_strrpos')) { + function mb_strrpos(?string $haystack, ?string $needle, ?int $offset = 0, ?string $encoding = null): int|false { return p\Mbstring::mb_strrpos((string) $haystack, (string) $needle, (int) $offset, $encoding); } +} +if (!function_exists('mb_strstr')) { + function mb_strstr(?string $haystack, ?string $needle, ?bool $before_needle = false, ?string $encoding = null): string|false { return p\Mbstring::mb_strstr((string) $haystack, (string) $needle, (bool) $before_needle, $encoding); } +} +if (!function_exists('mb_get_info')) { + function mb_get_info(?string $type = 'all'): array|string|int|false|null { return p\Mbstring::mb_get_info((string) $type); } +} +if (!function_exists('mb_http_output')) { + function mb_http_output(?string $encoding = null): string|bool { return p\Mbstring::mb_http_output($encoding); } +} +if (!function_exists('mb_strwidth')) { + function mb_strwidth(?string $string, ?string $encoding = null): int { return p\Mbstring::mb_strwidth((string) $string, $encoding); } +} +if (!function_exists('mb_substr_count')) { + function mb_substr_count(?string $haystack, ?string $needle, ?string $encoding = null): int { return p\Mbstring::mb_substr_count((string) $haystack, (string) $needle, $encoding); } +} +if (!function_exists('mb_output_handler')) { + function mb_output_handler(?string $string, ?int $status): string { return p\Mbstring::mb_output_handler((string) $string, (int) $status); } +} +if (!function_exists('mb_http_input')) { + function mb_http_input(?string $type = null): array|string|false { return p\Mbstring::mb_http_input($type); } +} + +if (!function_exists('mb_convert_variables')) { + function mb_convert_variables(?string $to_encoding, array|string|null $from_encoding, mixed &$var, mixed &...$vars): string|false { return p\Mbstring::mb_convert_variables((string) $to_encoding, $from_encoding ?? '', $var, ...$vars); } +} + +if (!function_exists('mb_ord')) { + function mb_ord(?string $string, ?string $encoding = null): int|false { return p\Mbstring::mb_ord((string) $string, $encoding); } +} +if (!function_exists('mb_chr')) { + function mb_chr(?int $codepoint, ?string $encoding = null): string|false { return p\Mbstring::mb_chr((int) $codepoint, $encoding); } +} +if (!function_exists('mb_scrub')) { + function mb_scrub(?string $string, ?string $encoding = null): string { $encoding ??= mb_internal_encoding(); return mb_convert_encoding((string) $string, $encoding, $encoding); } +} +if (!function_exists('mb_str_split')) { + function mb_str_split(?string $string, ?int $length = 1, ?string $encoding = null): array { return p\Mbstring::mb_str_split((string) $string, (int) $length, $encoding); } +} + +if (!function_exists('mb_str_pad')) { + function mb_str_pad(string $string, int $length, string $pad_string = ' ', int $pad_type = STR_PAD_RIGHT, ?string $encoding = null): string { return p\Mbstring::mb_str_pad($string, $length, $pad_string, $pad_type, $encoding); } +} + +if (!function_exists('mb_ucfirst')) { + function mb_ucfirst($string, ?string $encoding = null): string { return p\Mbstring::mb_ucfirst($string, $encoding); } +} + +if (!function_exists('mb_lcfirst')) { + function mb_lcfirst($string, ?string $encoding = null): string { return p\Mbstring::mb_lcfirst($string, $encoding); } +} + +if (!function_exists('mb_trim')) { + function mb_trim(string $string, ?string $characters = null, ?string $encoding = null): string { return p\Mbstring::mb_trim($string, $characters, $encoding); } +} + +if (!function_exists('mb_ltrim')) { + function mb_ltrim(string $string, ?string $characters = null, ?string $encoding = null): string { return p\Mbstring::mb_ltrim($string, $characters, $encoding); } +} + +if (!function_exists('mb_rtrim')) { + function mb_rtrim(string $string, ?string $characters = null, ?string $encoding = null): string { return p\Mbstring::mb_rtrim($string, $characters, $encoding); } +} + +if (extension_loaded('mbstring')) { + return; +} + +if (!defined('MB_CASE_UPPER')) { + define('MB_CASE_UPPER', 0); +} +if (!defined('MB_CASE_LOWER')) { + define('MB_CASE_LOWER', 1); +} +if (!defined('MB_CASE_TITLE')) { + define('MB_CASE_TITLE', 2); +} diff --git a/docker/statistics/vendor/symfony/polyfill-mbstring/composer.json b/docker/statistics/vendor/symfony/polyfill-mbstring/composer.json new file mode 100644 index 00000000..4ed241a3 --- /dev/null +++ b/docker/statistics/vendor/symfony/polyfill-mbstring/composer.json @@ -0,0 +1,38 @@ +{ + "name": "symfony/polyfill-mbstring", + "type": "library", + "description": "Symfony polyfill for the Mbstring extension", + "keywords": ["polyfill", "shim", "compatibility", "portable", "mbstring"], + "homepage": "https://symfony.com", + "license": "MIT", + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "require": { + "php": ">=7.2" + }, + "provide": { + "ext-mbstring": "*" + }, + "autoload": { + "psr-4": { "Symfony\\Polyfill\\Mbstring\\": "" }, + "files": [ "bootstrap.php" ] + }, + "suggest": { + "ext-mbstring": "For best performance" + }, + "minimum-stability": "dev", + "extra": { + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + } +} diff --git a/docker/statistics/vendor/symfony/polyfill-php80/LICENSE b/docker/statistics/vendor/symfony/polyfill-php80/LICENSE new file mode 100644 index 00000000..0ed3a246 --- /dev/null +++ b/docker/statistics/vendor/symfony/polyfill-php80/LICENSE @@ -0,0 +1,19 @@ +Copyright (c) 2020-present Fabien Potencier + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is furnished +to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/docker/statistics/vendor/symfony/polyfill-php80/Php80.php b/docker/statistics/vendor/symfony/polyfill-php80/Php80.php new file mode 100644 index 00000000..362dd1a9 --- /dev/null +++ b/docker/statistics/vendor/symfony/polyfill-php80/Php80.php @@ -0,0 +1,115 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Symfony\Polyfill\Php80; + +/** + * @author Ion Bazan + * @author Nico Oelgart + * @author Nicolas Grekas + * + * @internal + */ +final class Php80 +{ + public static function fdiv(float $dividend, float $divisor): float + { + return @($dividend / $divisor); + } + + public static function get_debug_type($value): string + { + switch (true) { + case null === $value: return 'null'; + case \is_bool($value): return 'bool'; + case \is_string($value): return 'string'; + case \is_array($value): return 'array'; + case \is_int($value): return 'int'; + case \is_float($value): return 'float'; + case \is_object($value): break; + case $value instanceof \__PHP_Incomplete_Class: return '__PHP_Incomplete_Class'; + default: + if (null === $type = @get_resource_type($value)) { + return 'unknown'; + } + + if ('Unknown' === $type) { + $type = 'closed'; + } + + return "resource ($type)"; + } + + $class = \get_class($value); + + if (false === strpos($class, '@')) { + return $class; + } + + return (get_parent_class($class) ?: key(class_implements($class)) ?: 'class').'@anonymous'; + } + + public static function get_resource_id($res): int + { + if (!\is_resource($res) && null === @get_resource_type($res)) { + throw new \TypeError(sprintf('Argument 1 passed to get_resource_id() must be of the type resource, %s given', get_debug_type($res))); + } + + return (int) $res; + } + + public static function preg_last_error_msg(): string + { + switch (preg_last_error()) { + case \PREG_INTERNAL_ERROR: + return 'Internal error'; + case \PREG_BAD_UTF8_ERROR: + return 'Malformed UTF-8 characters, possibly incorrectly encoded'; + case \PREG_BAD_UTF8_OFFSET_ERROR: + return 'The offset did not correspond to the beginning of a valid UTF-8 code point'; + case \PREG_BACKTRACK_LIMIT_ERROR: + return 'Backtrack limit exhausted'; + case \PREG_RECURSION_LIMIT_ERROR: + return 'Recursion limit exhausted'; + case \PREG_JIT_STACKLIMIT_ERROR: + return 'JIT stack limit exhausted'; + case \PREG_NO_ERROR: + return 'No error'; + default: + return 'Unknown error'; + } + } + + public static function str_contains(string $haystack, string $needle): bool + { + return '' === $needle || false !== strpos($haystack, $needle); + } + + public static function str_starts_with(string $haystack, string $needle): bool + { + return 0 === strncmp($haystack, $needle, \strlen($needle)); + } + + public static function str_ends_with(string $haystack, string $needle): bool + { + if ('' === $needle || $needle === $haystack) { + return true; + } + + if ('' === $haystack) { + return false; + } + + $needleLength = \strlen($needle); + + return $needleLength <= \strlen($haystack) && 0 === substr_compare($haystack, $needle, -$needleLength); + } +} diff --git a/docker/statistics/vendor/symfony/polyfill-php80/PhpToken.php b/docker/statistics/vendor/symfony/polyfill-php80/PhpToken.php new file mode 100644 index 00000000..fe6e6910 --- /dev/null +++ b/docker/statistics/vendor/symfony/polyfill-php80/PhpToken.php @@ -0,0 +1,103 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Symfony\Polyfill\Php80; + +/** + * @author Fedonyuk Anton + * + * @internal + */ +class PhpToken implements \Stringable +{ + /** + * @var int + */ + public $id; + + /** + * @var string + */ + public $text; + + /** + * @var int + */ + public $line; + + /** + * @var int + */ + public $pos; + + public function __construct(int $id, string $text, int $line = -1, int $position = -1) + { + $this->id = $id; + $this->text = $text; + $this->line = $line; + $this->pos = $position; + } + + public function getTokenName(): ?string + { + if ('UNKNOWN' === $name = token_name($this->id)) { + $name = \strlen($this->text) > 1 || \ord($this->text) < 32 ? null : $this->text; + } + + return $name; + } + + /** + * @param int|string|array $kind + */ + public function is($kind): bool + { + foreach ((array) $kind as $value) { + if (\in_array($value, [$this->id, $this->text], true)) { + return true; + } + } + + return false; + } + + public function isIgnorable(): bool + { + return \in_array($this->id, [\T_WHITESPACE, \T_COMMENT, \T_DOC_COMMENT, \T_OPEN_TAG], true); + } + + public function __toString(): string + { + return (string) $this->text; + } + + /** + * @return static[] + */ + public static function tokenize(string $code, int $flags = 0): array + { + $line = 1; + $position = 0; + $tokens = token_get_all($code, $flags); + foreach ($tokens as $index => $token) { + if (\is_string($token)) { + $id = \ord($token); + $text = $token; + } else { + [$id, $text, $line] = $token; + } + $tokens[$index] = new static($id, $text, $line, $position); + $position += \strlen($text); + } + + return $tokens; + } +} diff --git a/docker/statistics/vendor/symfony/polyfill-php80/README.md b/docker/statistics/vendor/symfony/polyfill-php80/README.md new file mode 100644 index 00000000..3816c559 --- /dev/null +++ b/docker/statistics/vendor/symfony/polyfill-php80/README.md @@ -0,0 +1,25 @@ +Symfony Polyfill / Php80 +======================== + +This component provides features added to PHP 8.0 core: + +- [`Stringable`](https://php.net/stringable) interface +- [`fdiv`](https://php.net/fdiv) +- [`ValueError`](https://php.net/valueerror) class +- [`UnhandledMatchError`](https://php.net/unhandledmatcherror) class +- `FILTER_VALIDATE_BOOL` constant +- [`get_debug_type`](https://php.net/get_debug_type) +- [`PhpToken`](https://php.net/phptoken) class +- [`preg_last_error_msg`](https://php.net/preg_last_error_msg) +- [`str_contains`](https://php.net/str_contains) +- [`str_starts_with`](https://php.net/str_starts_with) +- [`str_ends_with`](https://php.net/str_ends_with) +- [`get_resource_id`](https://php.net/get_resource_id) + +More information can be found in the +[main Polyfill README](https://github.com/symfony/polyfill/blob/main/README.md). + +License +======= + +This library is released under the [MIT license](LICENSE). diff --git a/docker/statistics/vendor/symfony/polyfill-php80/Resources/stubs/Attribute.php b/docker/statistics/vendor/symfony/polyfill-php80/Resources/stubs/Attribute.php new file mode 100644 index 00000000..2b955423 --- /dev/null +++ b/docker/statistics/vendor/symfony/polyfill-php80/Resources/stubs/Attribute.php @@ -0,0 +1,31 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +#[Attribute(Attribute::TARGET_CLASS)] +final class Attribute +{ + public const TARGET_CLASS = 1; + public const TARGET_FUNCTION = 2; + public const TARGET_METHOD = 4; + public const TARGET_PROPERTY = 8; + public const TARGET_CLASS_CONSTANT = 16; + public const TARGET_PARAMETER = 32; + public const TARGET_ALL = 63; + public const IS_REPEATABLE = 64; + + /** @var int */ + public $flags; + + public function __construct(int $flags = self::TARGET_ALL) + { + $this->flags = $flags; + } +} diff --git a/docker/statistics/vendor/symfony/polyfill-php80/Resources/stubs/PhpToken.php b/docker/statistics/vendor/symfony/polyfill-php80/Resources/stubs/PhpToken.php new file mode 100644 index 00000000..bd1212f6 --- /dev/null +++ b/docker/statistics/vendor/symfony/polyfill-php80/Resources/stubs/PhpToken.php @@ -0,0 +1,16 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +if (\PHP_VERSION_ID < 80000 && extension_loaded('tokenizer')) { + class PhpToken extends Symfony\Polyfill\Php80\PhpToken + { + } +} diff --git a/docker/statistics/vendor/symfony/polyfill-php80/Resources/stubs/Stringable.php b/docker/statistics/vendor/symfony/polyfill-php80/Resources/stubs/Stringable.php new file mode 100644 index 00000000..7c62d750 --- /dev/null +++ b/docker/statistics/vendor/symfony/polyfill-php80/Resources/stubs/Stringable.php @@ -0,0 +1,20 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +if (\PHP_VERSION_ID < 80000) { + interface Stringable + { + /** + * @return string + */ + public function __toString(); + } +} diff --git a/docker/statistics/vendor/symfony/polyfill-php80/Resources/stubs/UnhandledMatchError.php b/docker/statistics/vendor/symfony/polyfill-php80/Resources/stubs/UnhandledMatchError.php new file mode 100644 index 00000000..01c6c6c8 --- /dev/null +++ b/docker/statistics/vendor/symfony/polyfill-php80/Resources/stubs/UnhandledMatchError.php @@ -0,0 +1,16 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +if (\PHP_VERSION_ID < 80000) { + class UnhandledMatchError extends Error + { + } +} diff --git a/docker/statistics/vendor/symfony/polyfill-php80/Resources/stubs/ValueError.php b/docker/statistics/vendor/symfony/polyfill-php80/Resources/stubs/ValueError.php new file mode 100644 index 00000000..783dbc28 --- /dev/null +++ b/docker/statistics/vendor/symfony/polyfill-php80/Resources/stubs/ValueError.php @@ -0,0 +1,16 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +if (\PHP_VERSION_ID < 80000) { + class ValueError extends Error + { + } +} diff --git a/docker/statistics/vendor/symfony/polyfill-php80/bootstrap.php b/docker/statistics/vendor/symfony/polyfill-php80/bootstrap.php new file mode 100644 index 00000000..e5f7dbc1 --- /dev/null +++ b/docker/statistics/vendor/symfony/polyfill-php80/bootstrap.php @@ -0,0 +1,42 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +use Symfony\Polyfill\Php80 as p; + +if (\PHP_VERSION_ID >= 80000) { + return; +} + +if (!defined('FILTER_VALIDATE_BOOL') && defined('FILTER_VALIDATE_BOOLEAN')) { + define('FILTER_VALIDATE_BOOL', \FILTER_VALIDATE_BOOLEAN); +} + +if (!function_exists('fdiv')) { + function fdiv(float $num1, float $num2): float { return p\Php80::fdiv($num1, $num2); } +} +if (!function_exists('preg_last_error_msg')) { + function preg_last_error_msg(): string { return p\Php80::preg_last_error_msg(); } +} +if (!function_exists('str_contains')) { + function str_contains(?string $haystack, ?string $needle): bool { return p\Php80::str_contains($haystack ?? '', $needle ?? ''); } +} +if (!function_exists('str_starts_with')) { + function str_starts_with(?string $haystack, ?string $needle): bool { return p\Php80::str_starts_with($haystack ?? '', $needle ?? ''); } +} +if (!function_exists('str_ends_with')) { + function str_ends_with(?string $haystack, ?string $needle): bool { return p\Php80::str_ends_with($haystack ?? '', $needle ?? ''); } +} +if (!function_exists('get_debug_type')) { + function get_debug_type($value): string { return p\Php80::get_debug_type($value); } +} +if (!function_exists('get_resource_id')) { + function get_resource_id($resource): int { return p\Php80::get_resource_id($resource); } +} diff --git a/docker/statistics/vendor/symfony/polyfill-php80/composer.json b/docker/statistics/vendor/symfony/polyfill-php80/composer.json new file mode 100644 index 00000000..a503b039 --- /dev/null +++ b/docker/statistics/vendor/symfony/polyfill-php80/composer.json @@ -0,0 +1,37 @@ +{ + "name": "symfony/polyfill-php80", + "type": "library", + "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", + "keywords": ["polyfill", "shim", "compatibility", "portable"], + "homepage": "https://symfony.com", + "license": "MIT", + "authors": [ + { + "name": "Ion Bazan", + "email": "ion.bazan@gmail.com" + }, + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "require": { + "php": ">=7.2" + }, + "autoload": { + "psr-4": { "Symfony\\Polyfill\\Php80\\": "" }, + "files": [ "bootstrap.php" ], + "classmap": [ "Resources/stubs" ] + }, + "minimum-stability": "dev", + "extra": { + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + } +} diff --git a/docker/statistics/vendor/symfony/service-contracts/ServiceCollectionInterface.php b/docker/statistics/vendor/symfony/service-contracts/ServiceCollectionInterface.php deleted file mode 100644 index 2333139c..00000000 --- a/docker/statistics/vendor/symfony/service-contracts/ServiceCollectionInterface.php +++ /dev/null @@ -1,26 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Contracts\Service; - -/** - * A ServiceProviderInterface that is also countable and iterable. - * - * @author Kevin Bond - * - * @template-covariant T of mixed - * - * @extends ServiceProviderInterface - * @extends \IteratorAggregate - */ -interface ServiceCollectionInterface extends ServiceProviderInterface, \Countable, \IteratorAggregate -{ -} diff --git a/docker/statistics/vendor/symfony/service-contracts/ServiceMethodsSubscriberTrait.php b/docker/statistics/vendor/symfony/service-contracts/ServiceMethodsSubscriberTrait.php deleted file mode 100644 index 0d89d9f2..00000000 --- a/docker/statistics/vendor/symfony/service-contracts/ServiceMethodsSubscriberTrait.php +++ /dev/null @@ -1,80 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Contracts\Service; - -use Psr\Container\ContainerInterface; -use Symfony\Contracts\Service\Attribute\Required; -use Symfony\Contracts\Service\Attribute\SubscribedService; - -/** - * Implementation of ServiceSubscriberInterface that determines subscribed services - * from methods that have the #[SubscribedService] attribute. - * - * Service ids are available as "ClassName::methodName" so that the implementation - * of subscriber methods can be just `return $this->container->get(__METHOD__);`. - * - * @author Kevin Bond - */ -trait ServiceMethodsSubscriberTrait -{ - protected ContainerInterface $container; - - public static function getSubscribedServices(): array - { - $services = method_exists(get_parent_class(self::class) ?: '', __FUNCTION__) ? parent::getSubscribedServices() : []; - - foreach ((new \ReflectionClass(self::class))->getMethods() as $method) { - if (self::class !== $method->getDeclaringClass()->name) { - continue; - } - - if (!$attribute = $method->getAttributes(SubscribedService::class)[0] ?? null) { - continue; - } - - if ($method->isStatic() || $method->isAbstract() || $method->isGenerator() || $method->isInternal() || $method->getNumberOfRequiredParameters()) { - throw new \LogicException(sprintf('Cannot use "%s" on method "%s::%s()" (can only be used on non-static, non-abstract methods with no parameters).', SubscribedService::class, self::class, $method->name)); - } - - if (!$returnType = $method->getReturnType()) { - throw new \LogicException(sprintf('Cannot use "%s" on methods without a return type in "%s::%s()".', SubscribedService::class, $method->name, self::class)); - } - - /* @var SubscribedService $attribute */ - $attribute = $attribute->newInstance(); - $attribute->key ??= self::class.'::'.$method->name; - $attribute->type ??= $returnType instanceof \ReflectionNamedType ? $returnType->getName() : (string) $returnType; - $attribute->nullable = $returnType->allowsNull(); - - if ($attribute->attributes) { - $services[] = $attribute; - } else { - $services[$attribute->key] = ($attribute->nullable ? '?' : '').$attribute->type; - } - } - - return $services; - } - - #[Required] - public function setContainer(ContainerInterface $container): ?ContainerInterface - { - $ret = null; - if (method_exists(get_parent_class(self::class) ?: '', __FUNCTION__)) { - $ret = parent::setContainer($container); - } - - $this->container = $container; - - return $ret; - } -} diff --git a/docker/statistics/vendor/symfony/string/Inflector/SpanishInflector.php b/docker/statistics/vendor/symfony/string/Inflector/SpanishInflector.php deleted file mode 100644 index 4b98cb62..00000000 --- a/docker/statistics/vendor/symfony/string/Inflector/SpanishInflector.php +++ /dev/null @@ -1,126 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\String\Inflector; - -final class SpanishInflector implements InflectorInterface -{ - /** - * A list of all rules for pluralise. - * - * @see https://www.spanishdict.com/guide/spanish-plural-noun-forms - * @see https://www.rae.es/gram%C3%A1tica/morfolog%C3%ADa/la-formaci%C3%B3n-del-plural-plurales-en-s-y-plurales-en-es-reglas-generales - */ - // First entry: regex - // Second entry: replacement - private const PLURALIZE_REGEXP = [ - // Specials sí, no - ['/(sí|no)$/i', '\1es'], - - // Words ending with vowel must use -s (RAE 3.2a, 3.2c) - ['/(a|e|i|o|u|á|é|í|ó|ú)$/i', '\1s'], - - // Word ending in s or x and the previous letter is accented (RAE 3.2n) - ['/ás$/i', 'ases'], - ['/és$/i', 'eses'], - ['/ís$/i', 'ises'], - ['/ós$/i', 'oses'], - ['/ús$/i', 'uses'], - - // Words ending in -ión must changed to -iones - ['/ión$/i', '\1iones'], - - // Words ending in some consonants must use -es (RAE 3.2k) - ['/(l|r|n|d|j|s|x|ch|y)$/i', '\1es'], - - // Word ending in z, must changed to ces - ['/(z)$/i', 'ces'], - ]; - - /** - * A list of all rules for singularize. - */ - private const SINGULARIZE_REGEXP = [ - // Specials sí, no - ['/(sí|no)es$/i', '\1'], - - // Words ending in -ión must changed to -iones - ['/iones$/i', '\1ión'], - - // Word ending in z, must changed to ces - ['/ces$/i', 'z'], - - // Word ending in s or x and the previous letter is accented (RAE 3.2n) - ['/(\w)ases$/i', '\1ás'], - ['/eses$/i', 'és'], - ['/ises$/i', 'ís'], - ['/(\w{2,})oses$/i', '\1ós'], - ['/(\w)uses$/i', '\1ús'], - - // Words ending in some consonants and -es, must be the consonants - ['/(l|r|n|d|j|s|x|ch|y)e?s$/i', '\1'], - - // Words ended with vowel and s, must be vowel - ['/(a|e|i|o|u|á|é|ó|í|ú)s$/i', '\1'], - ]; - - private const UNINFLECTED_RULES = [ - // Words ending with pies (RAE 3.2n) - '/.*(piés)$/i', - ]; - - private const UNINFLECTED = '/^(lunes|martes|miércoles|jueves|viernes|análisis|torax|yo|pies)$/i'; - - public function singularize(string $plural): array - { - if ($this->isInflectedWord($plural)) { - return [$plural]; - } - - foreach (self::SINGULARIZE_REGEXP as $rule) { - [$regexp, $replace] = $rule; - - if (1 === preg_match($regexp, $plural)) { - return [preg_replace($regexp, $replace, $plural)]; - } - } - - return [$plural]; - } - - public function pluralize(string $singular): array - { - if ($this->isInflectedWord($singular)) { - return [$singular]; - } - - foreach (self::PLURALIZE_REGEXP as $rule) { - [$regexp, $replace] = $rule; - - if (1 === preg_match($regexp, $singular)) { - return [preg_replace($regexp, $replace, $singular)]; - } - } - - return [$singular.'s']; - } - - private function isInflectedWord(string $word): bool - { - foreach (self::UNINFLECTED_RULES as $rule) { - if (1 === preg_match($rule, $word)) { - return true; - } - } - - return 1 === preg_match(self::UNINFLECTED, $word); - } -} diff --git a/docker/statistics/vendor/symfony/string/TruncateMode.php b/docker/statistics/vendor/symfony/string/TruncateMode.php deleted file mode 100644 index 12568cd5..00000000 --- a/docker/statistics/vendor/symfony/string/TruncateMode.php +++ /dev/null @@ -1,42 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\String; - -enum TruncateMode -{ - /** - * Will cut exactly at given length. - * - * Length: 14 - * Source: Lorem ipsum dolor sit amet - * Output: Lorem ipsum do - */ - case Char; - - /** - * Returns the string up to the last complete word containing the specified length. - * - * Length: 14 - * Source: Lorem ipsum dolor sit amet - * Output: Lorem ipsum - */ - case WordBefore; - - /** - * Returns the string up to the complete word after or at the given length. - * - * Length: 14 - * Source: Lorem ipsum dolor sit amet - * Output: Lorem ipsum dolor - */ - case WordAfter; -} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/LICENSE b/docker/statistics/vendor/vlucas/phpdotenv/LICENSE new file mode 100644 index 00000000..922c5522 --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/LICENSE @@ -0,0 +1,30 @@ +BSD 3-Clause License + +Copyright (c) 2014, Graham Campbell. +Copyright (c) 2013, Vance Lucas. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/docker/statistics/vendor/vlucas/phpdotenv/composer.json b/docker/statistics/vendor/vlucas/phpdotenv/composer.json new file mode 100644 index 00000000..3636317f --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/composer.json @@ -0,0 +1,60 @@ +{ + "name": "vlucas/phpdotenv", + "description": "Loads environment variables from `.env` to `getenv()`, `$_ENV` and `$_SERVER` automagically.", + "keywords": ["env", "dotenv", "environment"], + "license": "BSD-3-Clause", + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Vance Lucas", + "email": "vance@vancelucas.com", + "homepage": "https://github.com/vlucas" + } + ], + "require": { + "php": "^7.2.5 || ^8.0", + "ext-pcre": "*", + "graham-campbell/result-type": "^1.1.3", + "phpoption/phpoption": "^1.9.3", + "symfony/polyfill-ctype": "^1.24", + "symfony/polyfill-mbstring": "^1.24", + "symfony/polyfill-php80": "^1.24" + }, + "require-dev": { + "ext-filter": "*", + "bamarni/composer-bin-plugin": "^1.8.2", + "phpunit/phpunit":"^8.5.34 || ^9.6.13 || ^10.4.2" + }, + "autoload": { + "psr-4": { + "Dotenv\\": "src/" + } + }, + "autoload-dev": { + "psr-4": { + "Dotenv\\Tests\\": "tests/Dotenv/" + } + }, + "suggest": { + "ext-filter": "Required to use the boolean validator." + }, + "config": { + "allow-plugins": { + "bamarni/composer-bin-plugin": true + }, + "preferred-install": "dist" + }, + "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + }, + "branch-alias": { + "dev-master": "5.6-dev" + } + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Dotenv.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Dotenv.php new file mode 100644 index 00000000..6821c7d9 --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Dotenv.php @@ -0,0 +1,267 @@ +store = $store; + $this->parser = $parser; + $this->loader = $loader; + $this->repository = $repository; + } + + /** + * Create a new dotenv instance. + * + * @param \Dotenv\Repository\RepositoryInterface $repository + * @param string|string[] $paths + * @param string|string[]|null $names + * @param bool $shortCircuit + * @param string|null $fileEncoding + * + * @return \Dotenv\Dotenv + */ + public static function create(RepositoryInterface $repository, $paths, $names = null, bool $shortCircuit = true, ?string $fileEncoding = null) + { + $builder = $names === null ? StoreBuilder::createWithDefaultName() : StoreBuilder::createWithNoNames(); + + foreach ((array) $paths as $path) { + $builder = $builder->addPath($path); + } + + foreach ((array) $names as $name) { + $builder = $builder->addName($name); + } + + if ($shortCircuit) { + $builder = $builder->shortCircuit(); + } + + return new self($builder->fileEncoding($fileEncoding)->make(), new Parser(), new Loader(), $repository); + } + + /** + * Create a new mutable dotenv instance with default repository. + * + * @param string|string[] $paths + * @param string|string[]|null $names + * @param bool $shortCircuit + * @param string|null $fileEncoding + * + * @return \Dotenv\Dotenv + */ + public static function createMutable($paths, $names = null, bool $shortCircuit = true, ?string $fileEncoding = null) + { + $repository = RepositoryBuilder::createWithDefaultAdapters()->make(); + + return self::create($repository, $paths, $names, $shortCircuit, $fileEncoding); + } + + /** + * Create a new mutable dotenv instance with default repository with the putenv adapter. + * + * @param string|string[] $paths + * @param string|string[]|null $names + * @param bool $shortCircuit + * @param string|null $fileEncoding + * + * @return \Dotenv\Dotenv + */ + public static function createUnsafeMutable($paths, $names = null, bool $shortCircuit = true, ?string $fileEncoding = null) + { + $repository = RepositoryBuilder::createWithDefaultAdapters() + ->addAdapter(PutenvAdapter::class) + ->make(); + + return self::create($repository, $paths, $names, $shortCircuit, $fileEncoding); + } + + /** + * Create a new immutable dotenv instance with default repository. + * + * @param string|string[] $paths + * @param string|string[]|null $names + * @param bool $shortCircuit + * @param string|null $fileEncoding + * + * @return \Dotenv\Dotenv + */ + public static function createImmutable($paths, $names = null, bool $shortCircuit = true, ?string $fileEncoding = null) + { + $repository = RepositoryBuilder::createWithDefaultAdapters()->immutable()->make(); + + return self::create($repository, $paths, $names, $shortCircuit, $fileEncoding); + } + + /** + * Create a new immutable dotenv instance with default repository with the putenv adapter. + * + * @param string|string[] $paths + * @param string|string[]|null $names + * @param bool $shortCircuit + * @param string|null $fileEncoding + * + * @return \Dotenv\Dotenv + */ + public static function createUnsafeImmutable($paths, $names = null, bool $shortCircuit = true, ?string $fileEncoding = null) + { + $repository = RepositoryBuilder::createWithDefaultAdapters() + ->addAdapter(PutenvAdapter::class) + ->immutable() + ->make(); + + return self::create($repository, $paths, $names, $shortCircuit, $fileEncoding); + } + + /** + * Create a new dotenv instance with an array backed repository. + * + * @param string|string[] $paths + * @param string|string[]|null $names + * @param bool $shortCircuit + * @param string|null $fileEncoding + * + * @return \Dotenv\Dotenv + */ + public static function createArrayBacked($paths, $names = null, bool $shortCircuit = true, ?string $fileEncoding = null) + { + $repository = RepositoryBuilder::createWithNoAdapters()->addAdapter(ArrayAdapter::class)->make(); + + return self::create($repository, $paths, $names, $shortCircuit, $fileEncoding); + } + + /** + * Parse the given content and resolve nested variables. + * + * This method behaves just like load(), only without mutating your actual + * environment. We do this by using an array backed repository. + * + * @param string $content + * + * @throws \Dotenv\Exception\InvalidFileException + * + * @return array + */ + public static function parse(string $content) + { + $repository = RepositoryBuilder::createWithNoAdapters()->addAdapter(ArrayAdapter::class)->make(); + + $phpdotenv = new self(new StringStore($content), new Parser(), new Loader(), $repository); + + return $phpdotenv->load(); + } + + /** + * Read and load environment file(s). + * + * @throws \Dotenv\Exception\InvalidPathException|\Dotenv\Exception\InvalidEncodingException|\Dotenv\Exception\InvalidFileException + * + * @return array + */ + public function load() + { + $entries = $this->parser->parse($this->store->read()); + + return $this->loader->load($this->repository, $entries); + } + + /** + * Read and load environment file(s), silently failing if no files can be read. + * + * @throws \Dotenv\Exception\InvalidEncodingException|\Dotenv\Exception\InvalidFileException + * + * @return array + */ + public function safeLoad() + { + try { + return $this->load(); + } catch (InvalidPathException $e) { + // suppressing exception + return []; + } + } + + /** + * Required ensures that the specified variables exist, and returns a new validator object. + * + * @param string|string[] $variables + * + * @return \Dotenv\Validator + */ + public function required($variables) + { + return (new Validator($this->repository, (array) $variables))->required(); + } + + /** + * Returns a new validator object that won't check if the specified variables exist. + * + * @param string|string[] $variables + * + * @return \Dotenv\Validator + */ + public function ifPresent($variables) + { + return new Validator($this->repository, (array) $variables); + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Exception/ExceptionInterface.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Exception/ExceptionInterface.php new file mode 100644 index 00000000..1e80f531 --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Exception/ExceptionInterface.php @@ -0,0 +1,12 @@ + + */ + public function load(RepositoryInterface $repository, array $entries) + { + return \array_reduce($entries, static function (array $vars, Entry $entry) use ($repository) { + $name = $entry->getName(); + + $value = $entry->getValue()->map(static function (Value $value) use ($repository) { + return Resolver::resolve($repository, $value); + }); + + if ($value->isDefined()) { + $inner = $value->get(); + if ($repository->set($name, $inner)) { + return \array_merge($vars, [$name => $inner]); + } + } else { + if ($repository->clear($name)) { + return \array_merge($vars, [$name => null]); + } + } + + return $vars; + }, []); + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Loader/LoaderInterface.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Loader/LoaderInterface.php new file mode 100644 index 00000000..275d98e8 --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Loader/LoaderInterface.php @@ -0,0 +1,20 @@ + + */ + public function load(RepositoryInterface $repository, array $entries); +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Loader/Resolver.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Loader/Resolver.php new file mode 100644 index 00000000..36d7a4b9 --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Loader/Resolver.php @@ -0,0 +1,65 @@ +getVars(), static function (string $s, int $i) use ($repository) { + return Str::substr($s, 0, $i).self::resolveVariable($repository, Str::substr($s, $i)); + }, $value->getChars()); + } + + /** + * Resolve a single nested variable. + * + * @param \Dotenv\Repository\RepositoryInterface $repository + * @param string $str + * + * @return string + */ + private static function resolveVariable(RepositoryInterface $repository, string $str) + { + return Regex::replaceCallback( + '/\A\${([a-zA-Z0-9_.]+)}/', + static function (array $matches) use ($repository) { + return Option::fromValue($repository->get($matches[1])) + ->getOrElse($matches[0]); + }, + $str, + 1 + )->success()->getOrElse($str); + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Parser/Entry.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Parser/Entry.php new file mode 100644 index 00000000..716f422e --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Parser/Entry.php @@ -0,0 +1,59 @@ +name = $name; + $this->value = $value; + } + + /** + * Get the entry name. + * + * @return string + */ + public function getName() + { + return $this->name; + } + + /** + * Get the entry value. + * + * @return \PhpOption\Option<\Dotenv\Parser\Value> + */ + public function getValue() + { + /** @var \PhpOption\Option<\Dotenv\Parser\Value> */ + return Option::fromValue($this->value); + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Parser/EntryParser.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Parser/EntryParser.php new file mode 100644 index 00000000..e286840a --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Parser/EntryParser.php @@ -0,0 +1,300 @@ + + */ + public static function parse(string $entry) + { + return self::splitStringIntoParts($entry)->flatMap(static function (array $parts) { + [$name, $value] = $parts; + + return self::parseName($name)->flatMap(static function (string $name) use ($value) { + /** @var Result */ + $parsedValue = $value === null ? Success::create(null) : self::parseValue($value); + + return $parsedValue->map(static function (?Value $value) use ($name) { + return new Entry($name, $value); + }); + }); + }); + } + + /** + * Split the compound string into parts. + * + * @param string $line + * + * @return \GrahamCampbell\ResultType\Result + */ + private static function splitStringIntoParts(string $line) + { + /** @var array{string,string|null} */ + $result = Str::pos($line, '=')->map(static function () use ($line) { + return \array_map('trim', \explode('=', $line, 2)); + })->getOrElse([$line, null]); + + if ($result[0] === '') { + /** @var \GrahamCampbell\ResultType\Result */ + return Error::create(self::getErrorMessage('an unexpected equals', $line)); + } + + /** @var \GrahamCampbell\ResultType\Result */ + return Success::create($result); + } + + /** + * Parse the given variable name. + * + * That is, strip the optional quotes and leading "export" from the + * variable name. We wrap the answer in a result type. + * + * @param string $name + * + * @return \GrahamCampbell\ResultType\Result + */ + private static function parseName(string $name) + { + if (Str::len($name) > 8 && Str::substr($name, 0, 6) === 'export' && \ctype_space(Str::substr($name, 6, 1))) { + $name = \ltrim(Str::substr($name, 6)); + } + + if (self::isQuotedName($name)) { + $name = Str::substr($name, 1, -1); + } + + if (!self::isValidName($name)) { + /** @var \GrahamCampbell\ResultType\Result */ + return Error::create(self::getErrorMessage('an invalid name', $name)); + } + + /** @var \GrahamCampbell\ResultType\Result */ + return Success::create($name); + } + + /** + * Is the given variable name quoted? + * + * @param string $name + * + * @return bool + */ + private static function isQuotedName(string $name) + { + if (Str::len($name) < 3) { + return false; + } + + $first = Str::substr($name, 0, 1); + $last = Str::substr($name, -1, 1); + + return ($first === '"' && $last === '"') || ($first === '\'' && $last === '\''); + } + + /** + * Is the given variable name valid? + * + * @param string $name + * + * @return bool + */ + private static function isValidName(string $name) + { + return Regex::matches('~(*UTF8)\A[\p{Ll}\p{Lu}\p{M}\p{N}_.]+\z~', $name)->success()->getOrElse(false); + } + + /** + * Parse the given variable value. + * + * This has the effect of stripping quotes and comments, dealing with + * special characters, and locating nested variables, but not resolving + * them. Formally, we run a finite state automaton with an output tape: a + * transducer. We wrap the answer in a result type. + * + * @param string $value + * + * @return \GrahamCampbell\ResultType\Result<\Dotenv\Parser\Value,string> + */ + private static function parseValue(string $value) + { + if (\trim($value) === '') { + /** @var \GrahamCampbell\ResultType\Result<\Dotenv\Parser\Value,string> */ + return Success::create(Value::blank()); + } + + return \array_reduce(\iterator_to_array(Lexer::lex($value)), static function (Result $data, string $token) { + return $data->flatMap(static function (array $data) use ($token) { + return self::processToken($data[1], $token)->map(static function (array $val) use ($data) { + return [$data[0]->append($val[0], $val[1]), $val[2]]; + }); + }); + }, Success::create([Value::blank(), self::INITIAL_STATE]))->flatMap(static function (array $result) { + /** @psalm-suppress DocblockTypeContradiction */ + if (in_array($result[1], self::REJECT_STATES, true)) { + /** @var \GrahamCampbell\ResultType\Result<\Dotenv\Parser\Value,string> */ + return Error::create('a missing closing quote'); + } + + /** @var \GrahamCampbell\ResultType\Result<\Dotenv\Parser\Value,string> */ + return Success::create($result[0]); + })->mapError(static function (string $err) use ($value) { + return self::getErrorMessage($err, $value); + }); + } + + /** + * Process the given token. + * + * @param int $state + * @param string $token + * + * @return \GrahamCampbell\ResultType\Result + */ + private static function processToken(int $state, string $token) + { + switch ($state) { + case self::INITIAL_STATE: + if ($token === '\'') { + /** @var \GrahamCampbell\ResultType\Result */ + return Success::create(['', false, self::SINGLE_QUOTED_STATE]); + } elseif ($token === '"') { + /** @var \GrahamCampbell\ResultType\Result */ + return Success::create(['', false, self::DOUBLE_QUOTED_STATE]); + } elseif ($token === '#') { + /** @var \GrahamCampbell\ResultType\Result */ + return Success::create(['', false, self::COMMENT_STATE]); + } elseif ($token === '$') { + /** @var \GrahamCampbell\ResultType\Result */ + return Success::create([$token, true, self::UNQUOTED_STATE]); + } else { + /** @var \GrahamCampbell\ResultType\Result */ + return Success::create([$token, false, self::UNQUOTED_STATE]); + } + case self::UNQUOTED_STATE: + if ($token === '#') { + /** @var \GrahamCampbell\ResultType\Result */ + return Success::create(['', false, self::COMMENT_STATE]); + } elseif (\ctype_space($token)) { + /** @var \GrahamCampbell\ResultType\Result */ + return Success::create(['', false, self::WHITESPACE_STATE]); + } elseif ($token === '$') { + /** @var \GrahamCampbell\ResultType\Result */ + return Success::create([$token, true, self::UNQUOTED_STATE]); + } else { + /** @var \GrahamCampbell\ResultType\Result */ + return Success::create([$token, false, self::UNQUOTED_STATE]); + } + case self::SINGLE_QUOTED_STATE: + if ($token === '\'') { + /** @var \GrahamCampbell\ResultType\Result */ + return Success::create(['', false, self::WHITESPACE_STATE]); + } else { + /** @var \GrahamCampbell\ResultType\Result */ + return Success::create([$token, false, self::SINGLE_QUOTED_STATE]); + } + case self::DOUBLE_QUOTED_STATE: + if ($token === '"') { + /** @var \GrahamCampbell\ResultType\Result */ + return Success::create(['', false, self::WHITESPACE_STATE]); + } elseif ($token === '\\') { + /** @var \GrahamCampbell\ResultType\Result */ + return Success::create(['', false, self::ESCAPE_SEQUENCE_STATE]); + } elseif ($token === '$') { + /** @var \GrahamCampbell\ResultType\Result */ + return Success::create([$token, true, self::DOUBLE_QUOTED_STATE]); + } else { + /** @var \GrahamCampbell\ResultType\Result */ + return Success::create([$token, false, self::DOUBLE_QUOTED_STATE]); + } + case self::ESCAPE_SEQUENCE_STATE: + if ($token === '"' || $token === '\\') { + /** @var \GrahamCampbell\ResultType\Result */ + return Success::create([$token, false, self::DOUBLE_QUOTED_STATE]); + } elseif ($token === '$') { + /** @var \GrahamCampbell\ResultType\Result */ + return Success::create([$token, false, self::DOUBLE_QUOTED_STATE]); + } else { + $first = Str::substr($token, 0, 1); + if (\in_array($first, ['f', 'n', 'r', 't', 'v'], true)) { + /** @var \GrahamCampbell\ResultType\Result */ + return Success::create([\stripcslashes('\\'.$first).Str::substr($token, 1), false, self::DOUBLE_QUOTED_STATE]); + } else { + /** @var \GrahamCampbell\ResultType\Result */ + return Error::create('an unexpected escape sequence'); + } + } + case self::WHITESPACE_STATE: + if ($token === '#') { + /** @var \GrahamCampbell\ResultType\Result */ + return Success::create(['', false, self::COMMENT_STATE]); + } elseif (!\ctype_space($token)) { + /** @var \GrahamCampbell\ResultType\Result */ + return Error::create('unexpected whitespace'); + } else { + /** @var \GrahamCampbell\ResultType\Result */ + return Success::create(['', false, self::WHITESPACE_STATE]); + } + case self::COMMENT_STATE: + /** @var \GrahamCampbell\ResultType\Result */ + return Success::create(['', false, self::COMMENT_STATE]); + default: + throw new \Error('Parser entered invalid state.'); + } + } + + /** + * Generate a friendly error message. + * + * @param string $cause + * @param string $subject + * + * @return string + */ + private static function getErrorMessage(string $cause, string $subject) + { + return \sprintf( + 'Encountered %s at [%s].', + $cause, + \strtok($subject, "\n") + ); + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Parser/Lexer.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Parser/Lexer.php new file mode 100644 index 00000000..981af24f --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Parser/Lexer.php @@ -0,0 +1,58 @@ + + */ + public static function lex(string $content) + { + static $regex; + + if ($regex === null) { + $regex = '(('.\implode(')|(', self::PATTERNS).'))A'; + } + + $offset = 0; + + while (isset($content[$offset])) { + if (!\preg_match($regex, $content, $matches, 0, $offset)) { + throw new \Error(\sprintf('Lexer encountered unexpected character [%s].', $content[$offset])); + } + + $offset += \strlen($matches[0]); + + yield $matches[0]; + } + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Parser/Lines.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Parser/Lines.php new file mode 100644 index 00000000..64979932 --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Parser/Lines.php @@ -0,0 +1,127 @@ +map(static function () use ($line) { + return self::looksLikeMultilineStop($line, true) === false; + })->getOrElse(false); + } + + /** + * Determine if the given line can be the start of a multiline variable. + * + * @param string $line + * @param bool $started + * + * @return bool + */ + private static function looksLikeMultilineStop(string $line, bool $started) + { + if ($line === '"') { + return true; + } + + return Regex::occurrences('/(?=([^\\\\]"))/', \str_replace('\\\\', '', $line))->map(static function (int $count) use ($started) { + return $started ? $count > 1 : $count >= 1; + })->success()->getOrElse(false); + } + + /** + * Determine if the line in the file is a comment or whitespace. + * + * @param string $line + * + * @return bool + */ + private static function isCommentOrWhitespace(string $line) + { + $line = \trim($line); + + return $line === '' || (isset($line[0]) && $line[0] === '#'); + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Parser/Parser.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Parser/Parser.php new file mode 100644 index 00000000..2d30dfd6 --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Parser/Parser.php @@ -0,0 +1,53 @@ +mapError(static function () { + return 'Could not split into separate lines.'; + })->flatMap(static function (array $lines) { + return self::process(Lines::process($lines)); + })->mapError(static function (string $error) { + throw new InvalidFileException(\sprintf('Failed to parse dotenv file. %s', $error)); + })->success()->get(); + } + + /** + * Convert the raw entries into proper entries. + * + * @param string[] $entries + * + * @return \GrahamCampbell\ResultType\Result<\Dotenv\Parser\Entry[],string> + */ + private static function process(array $entries) + { + /** @var \GrahamCampbell\ResultType\Result<\Dotenv\Parser\Entry[],string> */ + return \array_reduce($entries, static function (Result $result, string $raw) { + return $result->flatMap(static function (array $entries) use ($raw) { + return EntryParser::parse($raw)->map(static function (Entry $entry) use ($entries) { + /** @var \Dotenv\Parser\Entry[] */ + return \array_merge($entries, [$entry]); + }); + }); + }, Success::create([])); + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Parser/ParserInterface.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Parser/ParserInterface.php new file mode 100644 index 00000000..17cc42ad --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Parser/ParserInterface.php @@ -0,0 +1,19 @@ +chars = $chars; + $this->vars = $vars; + } + + /** + * Create an empty value instance. + * + * @return \Dotenv\Parser\Value + */ + public static function blank() + { + return new self('', []); + } + + /** + * Create a new value instance, appending the characters. + * + * @param string $chars + * @param bool $var + * + * @return \Dotenv\Parser\Value + */ + public function append(string $chars, bool $var) + { + return new self( + $this->chars.$chars, + $var ? \array_merge($this->vars, [Str::len($this->chars)]) : $this->vars + ); + } + + /** + * Get the string representation of the parsed value. + * + * @return string + */ + public function getChars() + { + return $this->chars; + } + + /** + * Get the locations of the variables in the value. + * + * @return int[] + */ + public function getVars() + { + $vars = $this->vars; + + \rsort($vars); + + return $vars; + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/AdapterInterface.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/AdapterInterface.php new file mode 100644 index 00000000..5604398a --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/AdapterInterface.php @@ -0,0 +1,15 @@ + + */ + public static function create(); +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/ApacheAdapter.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/ApacheAdapter.php new file mode 100644 index 00000000..af0aae11 --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/ApacheAdapter.php @@ -0,0 +1,89 @@ + + */ + public static function create() + { + if (self::isSupported()) { + /** @var \PhpOption\Option */ + return Some::create(new self()); + } + + return None::create(); + } + + /** + * Determines if the adapter is supported. + * + * This happens if PHP is running as an Apache module. + * + * @return bool + */ + private static function isSupported() + { + return \function_exists('apache_getenv') && \function_exists('apache_setenv'); + } + + /** + * Read an environment variable, if it exists. + * + * @param non-empty-string $name + * + * @return \PhpOption\Option + */ + public function read(string $name) + { + /** @var \PhpOption\Option */ + return Option::fromValue(apache_getenv($name))->filter(static function ($value) { + return \is_string($value) && $value !== ''; + }); + } + + /** + * Write to an environment variable, if possible. + * + * @param non-empty-string $name + * @param string $value + * + * @return bool + */ + public function write(string $name, string $value) + { + return apache_setenv($name, $value); + } + + /** + * Delete an environment variable, if possible. + * + * @param non-empty-string $name + * + * @return bool + */ + public function delete(string $name) + { + return apache_setenv($name, ''); + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/ArrayAdapter.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/ArrayAdapter.php new file mode 100644 index 00000000..df64cf6d --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/ArrayAdapter.php @@ -0,0 +1,80 @@ + + */ + private $variables; + + /** + * Create a new array adapter instance. + * + * @return void + */ + private function __construct() + { + $this->variables = []; + } + + /** + * Create a new instance of the adapter, if it is available. + * + * @return \PhpOption\Option<\Dotenv\Repository\Adapter\AdapterInterface> + */ + public static function create() + { + /** @var \PhpOption\Option */ + return Some::create(new self()); + } + + /** + * Read an environment variable, if it exists. + * + * @param non-empty-string $name + * + * @return \PhpOption\Option + */ + public function read(string $name) + { + return Option::fromArraysValue($this->variables, $name); + } + + /** + * Write to an environment variable, if possible. + * + * @param non-empty-string $name + * @param string $value + * + * @return bool + */ + public function write(string $name, string $value) + { + $this->variables[$name] = $value; + + return true; + } + + /** + * Delete an environment variable, if possible. + * + * @param non-empty-string $name + * + * @return bool + */ + public function delete(string $name) + { + unset($this->variables[$name]); + + return true; + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/EnvConstAdapter.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/EnvConstAdapter.php new file mode 100644 index 00000000..9eb19477 --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/EnvConstAdapter.php @@ -0,0 +1,89 @@ + + */ + public static function create() + { + /** @var \PhpOption\Option */ + return Some::create(new self()); + } + + /** + * Read an environment variable, if it exists. + * + * @param non-empty-string $name + * + * @return \PhpOption\Option + */ + public function read(string $name) + { + /** @var \PhpOption\Option */ + return Option::fromArraysValue($_ENV, $name) + ->filter(static function ($value) { + return \is_scalar($value); + }) + ->map(static function ($value) { + if ($value === false) { + return 'false'; + } + + if ($value === true) { + return 'true'; + } + + /** @psalm-suppress PossiblyInvalidCast */ + return (string) $value; + }); + } + + /** + * Write to an environment variable, if possible. + * + * @param non-empty-string $name + * @param string $value + * + * @return bool + */ + public function write(string $name, string $value) + { + $_ENV[$name] = $value; + + return true; + } + + /** + * Delete an environment variable, if possible. + * + * @param non-empty-string $name + * + * @return bool + */ + public function delete(string $name) + { + unset($_ENV[$name]); + + return true; + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/GuardedWriter.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/GuardedWriter.php new file mode 100644 index 00000000..fed8b9ba --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/GuardedWriter.php @@ -0,0 +1,85 @@ +writer = $writer; + $this->allowList = $allowList; + } + + /** + * Write to an environment variable, if possible. + * + * @param non-empty-string $name + * @param string $value + * + * @return bool + */ + public function write(string $name, string $value) + { + // Don't set non-allowed variables + if (!$this->isAllowed($name)) { + return false; + } + + // Set the value on the inner writer + return $this->writer->write($name, $value); + } + + /** + * Delete an environment variable, if possible. + * + * @param non-empty-string $name + * + * @return bool + */ + public function delete(string $name) + { + // Don't clear non-allowed variables + if (!$this->isAllowed($name)) { + return false; + } + + // Set the value on the inner writer + return $this->writer->delete($name); + } + + /** + * Determine if the given variable is allowed. + * + * @param non-empty-string $name + * + * @return bool + */ + private function isAllowed(string $name) + { + return \in_array($name, $this->allowList, true); + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/ImmutableWriter.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/ImmutableWriter.php new file mode 100644 index 00000000..399e6f9b --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/ImmutableWriter.php @@ -0,0 +1,110 @@ + + */ + private $loaded; + + /** + * Create a new immutable writer instance. + * + * @param \Dotenv\Repository\Adapter\WriterInterface $writer + * @param \Dotenv\Repository\Adapter\ReaderInterface $reader + * + * @return void + */ + public function __construct(WriterInterface $writer, ReaderInterface $reader) + { + $this->writer = $writer; + $this->reader = $reader; + $this->loaded = []; + } + + /** + * Write to an environment variable, if possible. + * + * @param non-empty-string $name + * @param string $value + * + * @return bool + */ + public function write(string $name, string $value) + { + // Don't overwrite existing environment variables + // Ruby's dotenv does this with `ENV[key] ||= value` + if ($this->isExternallyDefined($name)) { + return false; + } + + // Set the value on the inner writer + if (!$this->writer->write($name, $value)) { + return false; + } + + // Record that we have loaded the variable + $this->loaded[$name] = ''; + + return true; + } + + /** + * Delete an environment variable, if possible. + * + * @param non-empty-string $name + * + * @return bool + */ + public function delete(string $name) + { + // Don't clear existing environment variables + if ($this->isExternallyDefined($name)) { + return false; + } + + // Clear the value on the inner writer + if (!$this->writer->delete($name)) { + return false; + } + + // Leave the variable as fair game + unset($this->loaded[$name]); + + return true; + } + + /** + * Determine if the given variable is externally defined. + * + * That is, is it an "existing" variable. + * + * @param non-empty-string $name + * + * @return bool + */ + private function isExternallyDefined(string $name) + { + return $this->reader->read($name)->isDefined() && !isset($this->loaded[$name]); + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/MultiReader.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/MultiReader.php new file mode 100644 index 00000000..0cfda6f6 --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/MultiReader.php @@ -0,0 +1,48 @@ +readers = $readers; + } + + /** + * Read an environment variable, if it exists. + * + * @param non-empty-string $name + * + * @return \PhpOption\Option + */ + public function read(string $name) + { + foreach ($this->readers as $reader) { + $result = $reader->read($name); + if ($result->isDefined()) { + return $result; + } + } + + return None::create(); + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/MultiWriter.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/MultiWriter.php new file mode 100644 index 00000000..15a9d8fd --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/MultiWriter.php @@ -0,0 +1,64 @@ +writers = $writers; + } + + /** + * Write to an environment variable, if possible. + * + * @param non-empty-string $name + * @param string $value + * + * @return bool + */ + public function write(string $name, string $value) + { + foreach ($this->writers as $writers) { + if (!$writers->write($name, $value)) { + return false; + } + } + + return true; + } + + /** + * Delete an environment variable, if possible. + * + * @param non-empty-string $name + * + * @return bool + */ + public function delete(string $name) + { + foreach ($this->writers as $writers) { + if (!$writers->delete($name)) { + return false; + } + } + + return true; + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/PutenvAdapter.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/PutenvAdapter.php new file mode 100644 index 00000000..6d017cdb --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/PutenvAdapter.php @@ -0,0 +1,91 @@ + + */ + public static function create() + { + if (self::isSupported()) { + /** @var \PhpOption\Option */ + return Some::create(new self()); + } + + return None::create(); + } + + /** + * Determines if the adapter is supported. + * + * @return bool + */ + private static function isSupported() + { + return \function_exists('getenv') && \function_exists('putenv'); + } + + /** + * Read an environment variable, if it exists. + * + * @param non-empty-string $name + * + * @return \PhpOption\Option + */ + public function read(string $name) + { + /** @var \PhpOption\Option */ + return Option::fromValue(\getenv($name), false)->filter(static function ($value) { + return \is_string($value); + }); + } + + /** + * Write to an environment variable, if possible. + * + * @param non-empty-string $name + * @param string $value + * + * @return bool + */ + public function write(string $name, string $value) + { + \putenv("$name=$value"); + + return true; + } + + /** + * Delete an environment variable, if possible. + * + * @param non-empty-string $name + * + * @return bool + */ + public function delete(string $name) + { + \putenv($name); + + return true; + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/ReaderInterface.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/ReaderInterface.php new file mode 100644 index 00000000..306a63fc --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/ReaderInterface.php @@ -0,0 +1,17 @@ + + */ + public function read(string $name); +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/ReplacingWriter.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/ReplacingWriter.php new file mode 100644 index 00000000..98c0f041 --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/ReplacingWriter.php @@ -0,0 +1,104 @@ + + */ + private $seen; + + /** + * Create a new replacement writer instance. + * + * @param \Dotenv\Repository\Adapter\WriterInterface $writer + * @param \Dotenv\Repository\Adapter\ReaderInterface $reader + * + * @return void + */ + public function __construct(WriterInterface $writer, ReaderInterface $reader) + { + $this->writer = $writer; + $this->reader = $reader; + $this->seen = []; + } + + /** + * Write to an environment variable, if possible. + * + * @param non-empty-string $name + * @param string $value + * + * @return bool + */ + public function write(string $name, string $value) + { + if ($this->exists($name)) { + return $this->writer->write($name, $value); + } + + // succeed if nothing to do + return true; + } + + /** + * Delete an environment variable, if possible. + * + * @param non-empty-string $name + * + * @return bool + */ + public function delete(string $name) + { + if ($this->exists($name)) { + return $this->writer->delete($name); + } + + // succeed if nothing to do + return true; + } + + /** + * Does the given environment variable exist. + * + * Returns true if it currently exists, or existed at any point in the past + * that we are aware of. + * + * @param non-empty-string $name + * + * @return bool + */ + private function exists(string $name) + { + if (isset($this->seen[$name])) { + return true; + } + + if ($this->reader->read($name)->isDefined()) { + $this->seen[$name] = ''; + + return true; + } + + return false; + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/ServerConstAdapter.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/ServerConstAdapter.php new file mode 100644 index 00000000..f93b6e5e --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/ServerConstAdapter.php @@ -0,0 +1,89 @@ + + */ + public static function create() + { + /** @var \PhpOption\Option */ + return Some::create(new self()); + } + + /** + * Read an environment variable, if it exists. + * + * @param non-empty-string $name + * + * @return \PhpOption\Option + */ + public function read(string $name) + { + /** @var \PhpOption\Option */ + return Option::fromArraysValue($_SERVER, $name) + ->filter(static function ($value) { + return \is_scalar($value); + }) + ->map(static function ($value) { + if ($value === false) { + return 'false'; + } + + if ($value === true) { + return 'true'; + } + + /** @psalm-suppress PossiblyInvalidCast */ + return (string) $value; + }); + } + + /** + * Write to an environment variable, if possible. + * + * @param non-empty-string $name + * @param string $value + * + * @return bool + */ + public function write(string $name, string $value) + { + $_SERVER[$name] = $value; + + return true; + } + + /** + * Delete an environment variable, if possible. + * + * @param non-empty-string $name + * + * @return bool + */ + public function delete(string $name) + { + unset($_SERVER[$name]); + + return true; + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/WriterInterface.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/WriterInterface.php new file mode 100644 index 00000000..4cb3d61f --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/Adapter/WriterInterface.php @@ -0,0 +1,27 @@ +reader = $reader; + $this->writer = $writer; + } + + /** + * Determine if the given environment variable is defined. + * + * @param string $name + * + * @return bool + */ + public function has(string $name) + { + return '' !== $name && $this->reader->read($name)->isDefined(); + } + + /** + * Get an environment variable. + * + * @param string $name + * + * @throws \InvalidArgumentException + * + * @return string|null + */ + public function get(string $name) + { + if ('' === $name) { + throw new InvalidArgumentException('Expected name to be a non-empty string.'); + } + + return $this->reader->read($name)->getOrElse(null); + } + + /** + * Set an environment variable. + * + * @param string $name + * @param string $value + * + * @throws \InvalidArgumentException + * + * @return bool + */ + public function set(string $name, string $value) + { + if ('' === $name) { + throw new InvalidArgumentException('Expected name to be a non-empty string.'); + } + + return $this->writer->write($name, $value); + } + + /** + * Clear an environment variable. + * + * @param string $name + * + * @throws \InvalidArgumentException + * + * @return bool + */ + public function clear(string $name) + { + if ('' === $name) { + throw new InvalidArgumentException('Expected name to be a non-empty string.'); + } + + return $this->writer->delete($name); + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/RepositoryBuilder.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/RepositoryBuilder.php new file mode 100644 index 00000000..76079244 --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/RepositoryBuilder.php @@ -0,0 +1,272 @@ +readers = $readers; + $this->writers = $writers; + $this->immutable = $immutable; + $this->allowList = $allowList; + } + + /** + * Create a new repository builder instance with no adapters added. + * + * @return \Dotenv\Repository\RepositoryBuilder + */ + public static function createWithNoAdapters() + { + return new self(); + } + + /** + * Create a new repository builder instance with the default adapters added. + * + * @return \Dotenv\Repository\RepositoryBuilder + */ + public static function createWithDefaultAdapters() + { + $adapters = \iterator_to_array(self::defaultAdapters()); + + return new self($adapters, $adapters); + } + + /** + * Return the array of default adapters. + * + * @return \Generator<\Dotenv\Repository\Adapter\AdapterInterface> + */ + private static function defaultAdapters() + { + foreach (self::DEFAULT_ADAPTERS as $adapter) { + $instance = $adapter::create(); + if ($instance->isDefined()) { + yield $instance->get(); + } + } + } + + /** + * Determine if the given name if of an adapterclass. + * + * @param string $name + * + * @return bool + */ + private static function isAnAdapterClass(string $name) + { + if (!\class_exists($name)) { + return false; + } + + return (new ReflectionClass($name))->implementsInterface(AdapterInterface::class); + } + + /** + * Creates a repository builder with the given reader added. + * + * Accepts either a reader instance, or a class-string for an adapter. If + * the adapter is not supported, then we silently skip adding it. + * + * @param \Dotenv\Repository\Adapter\ReaderInterface|string $reader + * + * @throws \InvalidArgumentException + * + * @return \Dotenv\Repository\RepositoryBuilder + */ + public function addReader($reader) + { + if (!(\is_string($reader) && self::isAnAdapterClass($reader)) && !($reader instanceof ReaderInterface)) { + throw new InvalidArgumentException( + \sprintf( + 'Expected either an instance of %s or a class-string implementing %s', + ReaderInterface::class, + AdapterInterface::class + ) + ); + } + + $optional = Some::create($reader)->flatMap(static function ($reader) { + return \is_string($reader) ? $reader::create() : Some::create($reader); + }); + + $readers = \array_merge($this->readers, \iterator_to_array($optional)); + + return new self($readers, $this->writers, $this->immutable, $this->allowList); + } + + /** + * Creates a repository builder with the given writer added. + * + * Accepts either a writer instance, or a class-string for an adapter. If + * the adapter is not supported, then we silently skip adding it. + * + * @param \Dotenv\Repository\Adapter\WriterInterface|string $writer + * + * @throws \InvalidArgumentException + * + * @return \Dotenv\Repository\RepositoryBuilder + */ + public function addWriter($writer) + { + if (!(\is_string($writer) && self::isAnAdapterClass($writer)) && !($writer instanceof WriterInterface)) { + throw new InvalidArgumentException( + \sprintf( + 'Expected either an instance of %s or a class-string implementing %s', + WriterInterface::class, + AdapterInterface::class + ) + ); + } + + $optional = Some::create($writer)->flatMap(static function ($writer) { + return \is_string($writer) ? $writer::create() : Some::create($writer); + }); + + $writers = \array_merge($this->writers, \iterator_to_array($optional)); + + return new self($this->readers, $writers, $this->immutable, $this->allowList); + } + + /** + * Creates a repository builder with the given adapter added. + * + * Accepts either an adapter instance, or a class-string for an adapter. If + * the adapter is not supported, then we silently skip adding it. We will + * add the adapter as both a reader and a writer. + * + * @param \Dotenv\Repository\Adapter\WriterInterface|string $adapter + * + * @throws \InvalidArgumentException + * + * @return \Dotenv\Repository\RepositoryBuilder + */ + public function addAdapter($adapter) + { + if (!(\is_string($adapter) && self::isAnAdapterClass($adapter)) && !($adapter instanceof AdapterInterface)) { + throw new InvalidArgumentException( + \sprintf( + 'Expected either an instance of %s or a class-string implementing %s', + WriterInterface::class, + AdapterInterface::class + ) + ); + } + + $optional = Some::create($adapter)->flatMap(static function ($adapter) { + return \is_string($adapter) ? $adapter::create() : Some::create($adapter); + }); + + $readers = \array_merge($this->readers, \iterator_to_array($optional)); + $writers = \array_merge($this->writers, \iterator_to_array($optional)); + + return new self($readers, $writers, $this->immutable, $this->allowList); + } + + /** + * Creates a repository builder with mutability enabled. + * + * @return \Dotenv\Repository\RepositoryBuilder + */ + public function immutable() + { + return new self($this->readers, $this->writers, true, $this->allowList); + } + + /** + * Creates a repository builder with the given allow list. + * + * @param string[]|null $allowList + * + * @return \Dotenv\Repository\RepositoryBuilder + */ + public function allowList(?array $allowList = null) + { + return new self($this->readers, $this->writers, $this->immutable, $allowList); + } + + /** + * Creates a new repository instance. + * + * @return \Dotenv\Repository\RepositoryInterface + */ + public function make() + { + $reader = new MultiReader($this->readers); + $writer = new MultiWriter($this->writers); + + if ($this->immutable) { + $writer = new ImmutableWriter($writer, $reader); + } + + if ($this->allowList !== null) { + $writer = new GuardedWriter($writer, $this->allowList); + } + + return new AdapterRepository($reader, $writer); + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/RepositoryInterface.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/RepositoryInterface.php new file mode 100644 index 00000000..d9b18a40 --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Repository/RepositoryInterface.php @@ -0,0 +1,51 @@ + + */ + public static function read(array $filePaths, bool $shortCircuit = true, ?string $fileEncoding = null) + { + $output = []; + + foreach ($filePaths as $filePath) { + $content = self::readFromFile($filePath, $fileEncoding); + if ($content->isDefined()) { + $output[$filePath] = $content->get(); + if ($shortCircuit) { + break; + } + } + } + + return $output; + } + + /** + * Read the given file. + * + * @param string $path + * @param string|null $encoding + * + * @throws \Dotenv\Exception\InvalidEncodingException + * + * @return \PhpOption\Option + */ + private static function readFromFile(string $path, ?string $encoding = null) + { + /** @var Option */ + $content = Option::fromValue(@\file_get_contents($path), false); + + return $content->flatMap(static function (string $content) use ($encoding) { + return Str::utf8($content, $encoding)->mapError(static function (string $error) { + throw new InvalidEncodingException($error); + })->success(); + }); + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Store/FileStore.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Store/FileStore.php new file mode 100644 index 00000000..e7a4d3f1 --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Store/FileStore.php @@ -0,0 +1,72 @@ +filePaths = $filePaths; + $this->shortCircuit = $shortCircuit; + $this->fileEncoding = $fileEncoding; + } + + /** + * Read the content of the environment file(s). + * + * @throws \Dotenv\Exception\InvalidEncodingException|\Dotenv\Exception\InvalidPathException + * + * @return string + */ + public function read() + { + if ($this->filePaths === []) { + throw new InvalidPathException('At least one environment file path must be provided.'); + } + + $contents = Reader::read($this->filePaths, $this->shortCircuit, $this->fileEncoding); + + if (\count($contents) > 0) { + return \implode("\n", $contents); + } + + throw new InvalidPathException( + \sprintf('Unable to read any of the environment file(s) at [%s].', \implode(', ', $this->filePaths)) + ); + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Store/StoreBuilder.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Store/StoreBuilder.php new file mode 100644 index 00000000..2ce08515 --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Store/StoreBuilder.php @@ -0,0 +1,141 @@ +paths = $paths; + $this->names = $names; + $this->shortCircuit = $shortCircuit; + $this->fileEncoding = $fileEncoding; + } + + /** + * Create a new store builder instance with no names. + * + * @return \Dotenv\Store\StoreBuilder + */ + public static function createWithNoNames() + { + return new self(); + } + + /** + * Create a new store builder instance with the default name. + * + * @return \Dotenv\Store\StoreBuilder + */ + public static function createWithDefaultName() + { + return new self([], [self::DEFAULT_NAME]); + } + + /** + * Creates a store builder with the given path added. + * + * @param string $path + * + * @return \Dotenv\Store\StoreBuilder + */ + public function addPath(string $path) + { + return new self(\array_merge($this->paths, [$path]), $this->names, $this->shortCircuit, $this->fileEncoding); + } + + /** + * Creates a store builder with the given name added. + * + * @param string $name + * + * @return \Dotenv\Store\StoreBuilder + */ + public function addName(string $name) + { + return new self($this->paths, \array_merge($this->names, [$name]), $this->shortCircuit, $this->fileEncoding); + } + + /** + * Creates a store builder with short circuit mode enabled. + * + * @return \Dotenv\Store\StoreBuilder + */ + public function shortCircuit() + { + return new self($this->paths, $this->names, true, $this->fileEncoding); + } + + /** + * Creates a store builder with the specified file encoding. + * + * @param string|null $fileEncoding + * + * @return \Dotenv\Store\StoreBuilder + */ + public function fileEncoding(?string $fileEncoding = null) + { + return new self($this->paths, $this->names, $this->shortCircuit, $fileEncoding); + } + + /** + * Creates a new store instance. + * + * @return \Dotenv\Store\StoreInterface + */ + public function make() + { + return new FileStore( + Paths::filePaths($this->paths, $this->names), + $this->shortCircuit, + $this->fileEncoding + ); + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Store/StoreInterface.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Store/StoreInterface.php new file mode 100644 index 00000000..6f5b9862 --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Store/StoreInterface.php @@ -0,0 +1,17 @@ +content = $content; + } + + /** + * Read the content of the environment file(s). + * + * @return string + */ + public function read() + { + return $this->content; + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Util/Regex.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Util/Regex.php new file mode 100644 index 00000000..b17355c6 --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Util/Regex.php @@ -0,0 +1,112 @@ + + */ + public static function matches(string $pattern, string $subject) + { + return self::pregAndWrap(static function (string $subject) use ($pattern) { + return @\preg_match($pattern, $subject) === 1; + }, $subject); + } + + /** + * Perform a preg match all, wrapping up the result. + * + * @param string $pattern + * @param string $subject + * + * @return \GrahamCampbell\ResultType\Result + */ + public static function occurrences(string $pattern, string $subject) + { + return self::pregAndWrap(static function (string $subject) use ($pattern) { + return (int) @\preg_match_all($pattern, $subject); + }, $subject); + } + + /** + * Perform a preg replace callback, wrapping up the result. + * + * @param string $pattern + * @param callable $callback + * @param string $subject + * @param int|null $limit + * + * @return \GrahamCampbell\ResultType\Result + */ + public static function replaceCallback(string $pattern, callable $callback, string $subject, ?int $limit = null) + { + return self::pregAndWrap(static function (string $subject) use ($pattern, $callback, $limit) { + return (string) @\preg_replace_callback($pattern, $callback, $subject, $limit ?? -1); + }, $subject); + } + + /** + * Perform a preg split, wrapping up the result. + * + * @param string $pattern + * @param string $subject + * + * @return \GrahamCampbell\ResultType\Result + */ + public static function split(string $pattern, string $subject) + { + return self::pregAndWrap(static function (string $subject) use ($pattern) { + /** @var string[] */ + return (array) @\preg_split($pattern, $subject); + }, $subject); + } + + /** + * Perform a preg operation, wrapping up the result. + * + * @template V + * + * @param callable(string):V $operation + * @param string $subject + * + * @return \GrahamCampbell\ResultType\Result + */ + private static function pregAndWrap(callable $operation, string $subject) + { + $result = $operation($subject); + + if (\preg_last_error() !== \PREG_NO_ERROR) { + /** @var \GrahamCampbell\ResultType\Result */ + return Error::create(\preg_last_error_msg()); + } + + /** @var \GrahamCampbell\ResultType\Result */ + return Success::create($result); + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Util/Str.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Util/Str.php new file mode 100644 index 00000000..15257bdf --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Util/Str.php @@ -0,0 +1,98 @@ + + */ + public static function utf8(string $input, ?string $encoding = null) + { + if ($encoding !== null && !\in_array($encoding, \mb_list_encodings(), true)) { + /** @var \GrahamCampbell\ResultType\Result */ + return Error::create( + \sprintf('Illegal character encoding [%s] specified.', $encoding) + ); + } + $converted = $encoding === null ? + @\mb_convert_encoding($input, 'UTF-8') : + @\mb_convert_encoding($input, 'UTF-8', $encoding); + /** + * this is for support UTF-8 with BOM encoding + * @see https://en.wikipedia.org/wiki/Byte_order_mark + * @see https://github.com/vlucas/phpdotenv/issues/500 + */ + if (\substr($converted, 0, 3) == "\xEF\xBB\xBF") { + $converted = \substr($converted, 3); + } + /** @var \GrahamCampbell\ResultType\Result */ + return Success::create($converted); + } + + /** + * Search for a given substring of the input. + * + * @param string $haystack + * @param string $needle + * + * @return \PhpOption\Option + */ + public static function pos(string $haystack, string $needle) + { + /** @var \PhpOption\Option */ + return Option::fromValue(\mb_strpos($haystack, $needle, 0, 'UTF-8'), false); + } + + /** + * Grab the specified substring of the input. + * + * @param string $input + * @param int $start + * @param int|null $length + * + * @return string + */ + public static function substr(string $input, int $start, ?int $length = null) + { + return \mb_substr($input, $start, $length, 'UTF-8'); + } + + /** + * Compute the length of the given string. + * + * @param string $input + * + * @return int + */ + public static function len(string $input) + { + return \mb_strlen($input, 'UTF-8'); + } +} diff --git a/docker/statistics/vendor/vlucas/phpdotenv/src/Validator.php b/docker/statistics/vendor/vlucas/phpdotenv/src/Validator.php new file mode 100644 index 00000000..0c04ab62 --- /dev/null +++ b/docker/statistics/vendor/vlucas/phpdotenv/src/Validator.php @@ -0,0 +1,209 @@ +repository = $repository; + $this->variables = $variables; + } + + /** + * Assert that each variable is present. + * + * @throws \Dotenv\Exception\ValidationException + * + * @return \Dotenv\Validator + */ + public function required() + { + return $this->assert( + static function (?string $value) { + return $value !== null; + }, + 'is missing' + ); + } + + /** + * Assert that each variable is not empty. + * + * @throws \Dotenv\Exception\ValidationException + * + * @return \Dotenv\Validator + */ + public function notEmpty() + { + return $this->assertNullable( + static function (string $value) { + return Str::len(\trim($value)) > 0; + }, + 'is empty' + ); + } + + /** + * Assert that each specified variable is an integer. + * + * @throws \Dotenv\Exception\ValidationException + * + * @return \Dotenv\Validator + */ + public function isInteger() + { + return $this->assertNullable( + static function (string $value) { + return \ctype_digit($value); + }, + 'is not an integer' + ); + } + + /** + * Assert that each specified variable is a boolean. + * + * @throws \Dotenv\Exception\ValidationException + * + * @return \Dotenv\Validator + */ + public function isBoolean() + { + return $this->assertNullable( + static function (string $value) { + if ($value === '') { + return false; + } + + return \filter_var($value, \FILTER_VALIDATE_BOOLEAN, \FILTER_NULL_ON_FAILURE) !== null; + }, + 'is not a boolean' + ); + } + + /** + * Assert that each variable is amongst the given choices. + * + * @param string[] $choices + * + * @throws \Dotenv\Exception\ValidationException + * + * @return \Dotenv\Validator + */ + public function allowedValues(array $choices) + { + return $this->assertNullable( + static function (string $value) use ($choices) { + return \in_array($value, $choices, true); + }, + \sprintf('is not one of [%s]', \implode(', ', $choices)) + ); + } + + /** + * Assert that each variable matches the given regular expression. + * + * @param string $regex + * + * @throws \Dotenv\Exception\ValidationException + * + * @return \Dotenv\Validator + */ + public function allowedRegexValues(string $regex) + { + return $this->assertNullable( + static function (string $value) use ($regex) { + return Regex::matches($regex, $value)->success()->getOrElse(false); + }, + \sprintf('does not match "%s"', $regex) + ); + } + + /** + * Assert that the callback returns true for each variable. + * + * @param callable(?string):bool $callback + * @param string $message + * + * @throws \Dotenv\Exception\ValidationException + * + * @return \Dotenv\Validator + */ + public function assert(callable $callback, string $message) + { + $failing = []; + + foreach ($this->variables as $variable) { + if ($callback($this->repository->get($variable)) === false) { + $failing[] = \sprintf('%s %s', $variable, $message); + } + } + + if (\count($failing) > 0) { + throw new ValidationException(\sprintf( + 'One or more environment variables failed assertions: %s.', + \implode(', ', $failing) + )); + } + + return $this; + } + + /** + * Assert that the callback returns true for each variable. + * + * Skip checking null variable values. + * + * @param callable(string):bool $callback + * @param string $message + * + * @throws \Dotenv\Exception\ValidationException + * + * @return \Dotenv\Validator + */ + public function assertNullable(callable $callback, string $message) + { + return $this->assert( + static function (?string $value) use ($callback) { + if ($value === null) { + return true; + } + + return $callback($value); + }, + $message + ); + } +} diff --git a/docker/statistics/vendor/voku/portable-ascii/.deepsource.toml b/docker/statistics/vendor/voku/portable-ascii/.deepsource.toml deleted file mode 100644 index 3f8f43ce..00000000 --- a/docker/statistics/vendor/voku/portable-ascii/.deepsource.toml +++ /dev/null @@ -1,4 +0,0 @@ -version = 1 - -[[analyzers]] -name = "php" \ No newline at end of file diff --git a/src/resources/statistics.env b/src/resources/statistics.env index 2218bb86..e8de2830 100644 --- a/src/resources/statistics.env +++ b/src/resources/statistics.env @@ -1,7 +1,7 @@ # server endpoint -SERVER="https://impactdashboard.streamlinehealth.tech/" -SERVER_ENDPOINT="/signalytic/receive_data" -SERVER_STATUS_URL="/status" +SERVER=https://impactdashboard.streamlinehealth.tech/ +SERVER_ENDPOINT=/signalytic/receive_data +SERVER_STATUS_URL=/signalytic/status # Database variables DB_HOST=streamline-emr